[2026-06-27 00:00:00,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:00:00,753.753 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-27 00:00:03,181.181 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:00:03,188.188 INFO    ] Checking for system updates...
[2026-06-27 00:00:03,280.280 INFO    ] 200
[2026-06-27 00:00:03,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:00:03,437.437 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:00:03,454.454 INFO    ] No update needed
[2026-06-27 00:00:03,459.459 INFO    ] Checking for camera pi updates...
[2026-06-27 00:00:03,566.566 INFO    ] 200
[2026-06-27 00:00:03,568.568 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:00:03,737.737 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:00:03,924.924 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:00:03,926.926 INFO    ] No camera update needed
[2026-06-27 00:00:03,928.928 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:00:03,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:00:03,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:00:03,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:00:05,980.980 INFO    ] ================================================
[2026-06-27 00:00:06,996.996 INFO    ] Launching Daemon at Sat Jun 27 00:00:05 IST 2026
[2026-06-27 00:00:06,008.008 INFO    ] ================================================
[2026-06-27 00:00:06,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:00:06
[2026-06-27 00:00:06,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:00:06,773.773 INFO    ] Initializing speech engine...
[2026-06-27 00:00:06,777.777 INFO    ] 2026-06-27 00:00:06
[2026-06-27 00:00:06,977.977 INFO    ] 2026-06-27 00:00:06
[2026-06-27 00:00:07,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:00:07,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:00:07,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:00:07,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:00:07,416.416 INFO    ] time= 27/06/2026 00:00:07
[2026-06-27 00:00:07,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:00:07,518.518 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:00:07,626.626 INFO    ] No existing commands found in stream
[2026-06-27 00:00:12,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:00:12,637.637 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-27 00:00:15,551.551 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 00:00:15,554.554 INFO    ] Checking for system updates...
[2026-06-27 00:00:15,594.594 INFO    ] 200
[2026-06-27 00:00:15,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:00:15,882.882 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:00:15,885.885 INFO    ] No update needed
[2026-06-27 00:00:15,887.887 INFO    ] Checking for camera pi updates...
[2026-06-27 00:00:15,925.925 INFO    ] 200
[2026-06-27 00:00:15,927.927 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:00:15,965.965 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:00:16,007.007 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:00:16,008.008 INFO    ] No camera update needed
[2026-06-27 00:00:16,009.009 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:00:16,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:00:16,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:00:16,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:00:18,057.057 INFO    ] ================================================
[2026-06-27 00:00:18,075.075 INFO    ] Launching Daemon at Sat Jun 27 00:00:18 IST 2026
[2026-06-27 00:00:18,086.086 INFO    ] ================================================
[2026-06-27 00:00:18,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:00:18
[2026-06-27 00:00:18,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:00:18,911.911 INFO    ] Initializing speech engine...
[2026-06-27 00:00:18,922.922 INFO    ] 2026-06-27 00:00:18
[2026-06-27 00:00:19,133.133 INFO    ] 2026-06-27 00:00:19
[2026-06-27 00:00:19,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:00:19,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:00:19,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:00:19,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:00:19,552.552 INFO    ] time= 27/06/2026 00:00:19
[2026-06-27 00:00:19,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:00:19,582.582 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:00:19,648.648 INFO    ] No existing commands found in stream
[2026-06-27 00:00:24,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:00:24,660.660 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-27 00:00:27,638.638 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:00:27,640.640 INFO    ] Checking for system updates...
[2026-06-27 00:00:27,662.662 INFO    ] 200
[2026-06-27 00:00:27,664.664 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:00:27,695.695 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:00:27,696.696 INFO    ] No update needed
[2026-06-27 00:00:27,698.698 INFO    ] Checking for camera pi updates...
[2026-06-27 00:00:27,719.719 INFO    ] 200
[2026-06-27 00:00:27,720.720 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:00:27,747.747 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:00:27,775.775 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:00:27,776.776 INFO    ] No camera update needed
[2026-06-27 00:00:27,778.778 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:00:27,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:00:27,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:00:27,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:00:29,825.825 INFO    ] ================================================
[2026-06-27 00:00:29,841.841 INFO    ] Launching Daemon at Sat Jun 27 00:00:29 IST 2026
[2026-06-27 00:00:29,854.854 INFO    ] ================================================
[2026-06-27 00:00:30,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:00:30
[2026-06-27 00:00:30,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:00:30,680.680 INFO    ] Initializing speech engine...
[2026-06-27 00:00:30,685.685 INFO    ] 2026-06-27 00:00:30
[2026-06-27 00:00:30,890.890 INFO    ] 2026-06-27 00:00:30
[2026-06-27 00:00:30,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:00:31,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:00:31,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:00:31,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:00:31,309.309 INFO    ] time= 27/06/2026 00:00:31
[2026-06-27 00:00:31,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:00:31,336.336 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:00:31,403.403 INFO    ] No existing commands found in stream
[2026-06-27 00:00:36,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:00:36,415.415 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-27 00:00:38,540.540 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 00:00:38,541.541 INFO    ] Checking for system updates...
[2026-06-27 00:00:38,564.564 INFO    ] 200
[2026-06-27 00:00:38,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:00:38,596.596 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:00:38,597.597 INFO    ] No update needed
[2026-06-27 00:00:38,598.598 INFO    ] Checking for camera pi updates...
[2026-06-27 00:00:38,619.619 INFO    ] 200
[2026-06-27 00:00:38,620.620 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:00:38,644.644 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:00:38,690.690 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:00:38,692.692 INFO    ] No camera update needed
[2026-06-27 00:00:38,693.693 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:00:38,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:00:38,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:00:38,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:00:40,739.739 INFO    ] ================================================
[2026-06-27 00:00:40,755.755 INFO    ] Launching Daemon at Sat Jun 27 00:00:40 IST 2026
[2026-06-27 00:00:40,766.766 INFO    ] ================================================
[2026-06-27 00:00:41,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:00:41
[2026-06-27 00:00:41,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:00:41,564.564 INFO    ] Initializing speech engine...
[2026-06-27 00:00:41,568.568 INFO    ] 2026-06-27 00:00:41
[2026-06-27 00:00:41,788.788 INFO    ] 2026-06-27 00:00:41
[2026-06-27 00:00:41,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:00:42,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:00:42,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:00:42,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:00:42,239.239 INFO    ] time= 27/06/2026 00:00:42
[2026-06-27 00:00:42,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:00:42,246.246 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:00:42,316.316 INFO    ] No existing commands found in stream
[2026-06-27 00:00:47,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:00:47,332.332 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-27 00:00:50,362.362 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 00:00:50,363.363 INFO    ] Checking for system updates...
[2026-06-27 00:00:50,384.384 INFO    ] 200
[2026-06-27 00:00:50,386.386 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:00:50,419.419 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:00:50,420.420 INFO    ] No update needed
[2026-06-27 00:00:50,421.421 INFO    ] Checking for camera pi updates...
[2026-06-27 00:00:50,441.441 INFO    ] 200
[2026-06-27 00:00:50,442.442 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:00:50,468.468 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:00:50,508.508 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:00:50,509.509 INFO    ] No camera update needed
[2026-06-27 00:00:50,511.511 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:00:50,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:00:50,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:00:50,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:00:52,549.549 INFO    ] ================================================
[2026-06-27 00:00:52,565.565 INFO    ] Launching Daemon at Sat Jun 27 00:00:52 IST 2026
[2026-06-27 00:00:52,575.575 INFO    ] ================================================
[2026-06-27 00:00:52,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:00:52
[2026-06-27 00:00:53,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:00:53,357.357 INFO    ] Initializing speech engine...
[2026-06-27 00:00:53,369.369 INFO    ] 2026-06-27 00:00:53
[2026-06-27 00:00:53,577.577 INFO    ] 2026-06-27 00:00:53
[2026-06-27 00:00:53,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:00:55,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:00:55,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:00:56,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:00:56,094.094 INFO    ] time= 27/06/2026 00:00:56
[2026-06-27 00:00:56,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:00:56,099.099 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:00:56,156.156 INFO    ] No existing commands found in stream
[2026-06-27 00:01:01,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:01:01,169.169 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-27 00:01:03,978.978 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 00:01:03,979.979 INFO    ] Checking for system updates...
[2026-06-27 00:01:04,001.001 INFO    ] 200
[2026-06-27 00:01:04,002.002 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:01:04,033.033 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:01:04,034.034 INFO    ] No update needed
[2026-06-27 00:01:04,036.036 INFO    ] Checking for camera pi updates...
[2026-06-27 00:01:04,056.056 INFO    ] 200
[2026-06-27 00:01:04,057.057 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:01:04,081.081 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:01:04,135.135 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:01:04,137.137 INFO    ] No camera update needed
[2026-06-27 00:01:04,138.138 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:01:04,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:01:04,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:01:04,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:01:06,185.185 INFO    ] ================================================
[2026-06-27 00:01:06,202.202 INFO    ] Launching Daemon at Sat Jun 27 00:01:06 IST 2026
[2026-06-27 00:01:06,209.209 INFO    ] ================================================
[2026-06-27 00:01:06,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:01:06
[2026-06-27 00:01:06,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:01:06,969.969 INFO    ] Initializing speech engine...
[2026-06-27 00:01:06,977.977 INFO    ] 2026-06-27 00:01:06
[2026-06-27 00:01:07,193.193 INFO    ] 2026-06-27 00:01:07
[2026-06-27 00:01:07,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:01:07,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:01:07,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:01:07,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:01:07,622.622 INFO    ] time= 27/06/2026 00:01:07
[2026-06-27 00:01:07,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:01:07,652.652 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:01:07,720.720 INFO    ] No existing commands found in stream
[2026-06-27 00:01:12,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:01:12,732.732 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-27 00:01:16,710.710 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 00:01:16,712.712 INFO    ] Checking for system updates...
[2026-06-27 00:01:16,733.733 INFO    ] 200
[2026-06-27 00:01:16,734.734 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:01:16,765.765 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:01:16,770.770 INFO    ] No update needed
[2026-06-27 00:01:16,771.771 INFO    ] Checking for camera pi updates...
[2026-06-27 00:01:16,792.792 INFO    ] 200
[2026-06-27 00:01:16,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:01:16,821.821 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:01:16,866.866 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:01:16,867.867 INFO    ] No camera update needed
[2026-06-27 00:01:16,868.868 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:01:16,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:01:16,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:01:16,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:01:18,908.908 INFO    ] ================================================
[2026-06-27 00:01:18,923.923 INFO    ] Launching Daemon at Sat Jun 27 00:01:18 IST 2026
[2026-06-27 00:01:18,934.934 INFO    ] ================================================
[2026-06-27 00:01:19,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:01:19
[2026-06-27 00:01:19,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:01:19,751.751 INFO    ] Initializing speech engine...
[2026-06-27 00:01:19,756.756 INFO    ] 2026-06-27 00:01:19
[2026-06-27 00:01:19,960.960 INFO    ] 2026-06-27 00:01:19
[2026-06-27 00:01:19,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:01:20,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:01:20,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:01:20,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:01:20,380.380 INFO    ] time= 27/06/2026 00:01:20
[2026-06-27 00:01:20,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:01:20,409.409 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:01:20,476.476 INFO    ] No existing commands found in stream
[2026-06-27 00:01:25,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:01:25,492.492 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-27 00:01:26,310.310 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 00:01:26,311.311 INFO    ] Checking for system updates...
[2026-06-27 00:01:26,333.333 INFO    ] 200
[2026-06-27 00:01:26,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:01:26,365.365 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:01:26,366.366 INFO    ] No update needed
[2026-06-27 00:01:26,367.367 INFO    ] Checking for camera pi updates...
[2026-06-27 00:01:26,388.388 INFO    ] 200
[2026-06-27 00:01:26,389.389 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:01:26,413.413 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:01:26,454.454 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:01:26,455.455 INFO    ] No camera update needed
[2026-06-27 00:01:26,456.456 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:01:26,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:01:26,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:01:26,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:01:28,502.502 INFO    ] ================================================
[2026-06-27 00:01:28,518.518 INFO    ] Launching Daemon at Sat Jun 27 00:01:28 IST 2026
[2026-06-27 00:01:28,529.529 INFO    ] ================================================
[2026-06-27 00:01:28,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:01:28
[2026-06-27 00:01:29,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:01:29,376.376 INFO    ] Initializing speech engine...
[2026-06-27 00:01:29,382.382 INFO    ] 2026-06-27 00:01:29
[2026-06-27 00:01:29,586.586 INFO    ] 2026-06-27 00:01:29
[2026-06-27 00:01:29,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:01:29,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:01:29,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:01:29,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:01:29,984.984 INFO    ] time= 27/06/2026 00:01:29
[2026-06-27 00:01:30,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:01:30,038.038 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:01:30,105.105 INFO    ] No existing commands found in stream
[2026-06-27 00:01:35,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:01:35,122.122 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-27 00:01:39,063.063 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:01:39,064.064 INFO    ] Checking for system updates...
[2026-06-27 00:01:39,085.085 INFO    ] 200
[2026-06-27 00:01:39,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:01:39,118.118 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:01:39,120.120 INFO    ] No update needed
[2026-06-27 00:01:39,121.121 INFO    ] Checking for camera pi updates...
[2026-06-27 00:01:39,140.140 INFO    ] 200
[2026-06-27 00:01:39,142.142 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:01:39,166.166 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:01:39,209.209 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:01:39,211.211 INFO    ] No camera update needed
[2026-06-27 00:01:39,212.212 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:01:39,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:01:39,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:01:39,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:01:41,252.252 INFO    ] ================================================
[2026-06-27 00:01:41,268.268 INFO    ] Launching Daemon at Sat Jun 27 00:01:41 IST 2026
[2026-06-27 00:01:41,279.279 INFO    ] ================================================
[2026-06-27 00:01:41,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:01:41
[2026-06-27 00:01:41,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:01:42,086.086 INFO    ] Initializing speech engine...
[2026-06-27 00:01:42,094.094 INFO    ] 2026-06-27 00:01:42
[2026-06-27 00:01:42,313.313 INFO    ] 2026-06-27 00:01:42
[2026-06-27 00:01:42,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:01:42,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:01:42,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:01:42,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:01:42,906.906 INFO    ] time= 27/06/2026 00:01:42
[2026-06-27 00:01:42,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:01:42,911.911 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:01:42,986.986 INFO    ] No existing commands found in stream
[2026-06-27 00:01:47,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:01:47,999.999 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-27 00:01:49,883.883 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 00:01:49,885.885 INFO    ] Checking for system updates...
[2026-06-27 00:01:49,906.906 INFO    ] 200
[2026-06-27 00:01:49,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:01:49,940.940 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:01:49,942.942 INFO    ] No update needed
[2026-06-27 00:01:49,943.943 INFO    ] Checking for camera pi updates...
[2026-06-27 00:01:49,962.962 INFO    ] 200
[2026-06-27 00:01:49,964.964 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:01:49,989.989 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:01:50,031.031 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:01:50,033.033 INFO    ] No camera update needed
[2026-06-27 00:01:50,034.034 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:01:50,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:01:50,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:01:50,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:01:52,079.079 INFO    ] ================================================
[2026-06-27 00:01:52,095.095 INFO    ] Launching Daemon at Sat Jun 27 00:01:52 IST 2026
[2026-06-27 00:01:52,106.106 INFO    ] ================================================
[2026-06-27 00:01:52,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:01:52
[2026-06-27 00:01:52,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:01:52,942.942 INFO    ] Initializing speech engine...
[2026-06-27 00:01:52,947.947 INFO    ] 2026-06-27 00:01:52
[2026-06-27 00:01:53,154.154 INFO    ] 2026-06-27 00:01:53
[2026-06-27 00:01:53,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:01:53,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:01:53,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:01:53,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:01:53,570.570 INFO    ] time= 27/06/2026 00:01:53
[2026-06-27 00:01:53,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:01:53,603.603 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:01:53,670.670 INFO    ] No existing commands found in stream
[2026-06-27 00:01:58,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:01:58,679.679 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-27 00:02:00,813.813 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:02:00,815.815 INFO    ] Checking for system updates...
[2026-06-27 00:02:00,836.836 INFO    ] 200
[2026-06-27 00:02:00,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:02:00,869.869 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:02:00,871.871 INFO    ] No update needed
[2026-06-27 00:02:00,872.872 INFO    ] Checking for camera pi updates...
[2026-06-27 00:02:00,895.895 INFO    ] 200
[2026-06-27 00:02:00,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:02:00,921.921 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:02:00,958.958 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:02:00,960.960 INFO    ] No camera update needed
[2026-06-27 00:02:00,961.961 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:02:00,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:02:00,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:02:00,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:02:02,994.994 INFO    ] ================================================
[2026-06-27 00:02:03,002.002 INFO    ] Launching Daemon at Sat Jun 27 00:02:02 IST 2026
[2026-06-27 00:02:03,009.009 INFO    ] ================================================
[2026-06-27 00:02:03,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:02:03
[2026-06-27 00:02:03,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:02:03,853.853 INFO    ] Initializing speech engine...
[2026-06-27 00:02:03,865.865 INFO    ] 2026-06-27 00:02:03
[2026-06-27 00:02:04,079.079 INFO    ] 2026-06-27 00:02:04
[2026-06-27 00:02:04,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:02:04,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:02:04,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:02:04,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:02:04,504.504 INFO    ] time= 27/06/2026 00:02:04
[2026-06-27 00:02:04,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:02:04,535.535 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:02:04,602.602 INFO    ] No existing commands found in stream
[2026-06-27 00:02:09,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:02:09,619.619 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-27 00:02:13,828.828 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 00:02:13,829.829 INFO    ] Checking for system updates...
[2026-06-27 00:02:13,851.851 INFO    ] 200
[2026-06-27 00:02:13,852.852 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:02:13,883.883 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:02:13,885.885 INFO    ] No update needed
[2026-06-27 00:02:13,886.886 INFO    ] Checking for camera pi updates...
[2026-06-27 00:02:13,906.906 INFO    ] 200
[2026-06-27 00:02:13,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:02:13,933.933 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:02:13,980.980 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:02:13,981.981 INFO    ] No camera update needed
[2026-06-27 00:02:13,983.983 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:02:13,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:02:13,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:02:13,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:02:16,028.028 INFO    ] ================================================
[2026-06-27 00:02:16,044.044 INFO    ] Launching Daemon at Sat Jun 27 00:02:16 IST 2026
[2026-06-27 00:02:16,054.054 INFO    ] ================================================
[2026-06-27 00:02:16,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:02:16
[2026-06-27 00:02:16,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:02:16,844.844 INFO    ] Initializing speech engine...
[2026-06-27 00:02:16,850.850 INFO    ] 2026-06-27 00:02:16
[2026-06-27 00:02:17,067.067 INFO    ] 2026-06-27 00:02:17
[2026-06-27 00:02:17,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:02:17,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:02:17,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:02:17,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:02:17,494.494 INFO    ] time= 27/06/2026 00:02:17
[2026-06-27 00:02:17,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:02:17,524.524 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:02:17,590.590 INFO    ] No existing commands found in stream
[2026-06-27 00:02:22,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:02:22,607.607 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-27 00:02:23,107.107 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:02:23,109.109 INFO    ] Checking for system updates...
[2026-06-27 00:02:23,129.129 INFO    ] 200
[2026-06-27 00:02:23,131.131 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:02:23,166.166 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:02:23,168.168 INFO    ] No update needed
[2026-06-27 00:02:23,169.169 INFO    ] Checking for camera pi updates...
[2026-06-27 00:02:23,188.188 INFO    ] 200
[2026-06-27 00:02:23,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:02:23,214.214 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:02:23,267.267 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:02:23,268.268 INFO    ] No camera update needed
[2026-06-27 00:02:23,269.269 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:02:23,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:02:23,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:02:23,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:02:25,315.315 INFO    ] ================================================
[2026-06-27 00:02:25,330.330 INFO    ] Launching Daemon at Sat Jun 27 00:02:25 IST 2026
[2026-06-27 00:02:25,348.348 INFO    ] ================================================
[2026-06-27 00:02:25,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:02:25
[2026-06-27 00:02:25,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:02:26,128.128 INFO    ] Initializing speech engine...
[2026-06-27 00:02:26,137.137 INFO    ] 2026-06-27 00:02:26
[2026-06-27 00:02:26,365.365 INFO    ] 2026-06-27 00:02:26
[2026-06-27 00:02:26,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:02:26,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:02:26,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:02:26,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:02:26,748.748 INFO    ] time= 27/06/2026 00:02:26
[2026-06-27 00:02:26,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:02:26,836.836 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:02:26,934.934 INFO    ] No existing commands found in stream
[2026-06-27 00:02:31,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:02:31,948.948 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-27 00:02:33,387.387 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 00:02:33,389.389 INFO    ] Checking for system updates...
[2026-06-27 00:02:33,418.418 INFO    ] 200
[2026-06-27 00:02:33,419.419 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:02:33,451.451 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:02:33,453.453 INFO    ] No update needed
[2026-06-27 00:02:33,454.454 INFO    ] Checking for camera pi updates...
[2026-06-27 00:02:33,475.475 INFO    ] 200
[2026-06-27 00:02:33,477.477 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:02:33,503.503 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:02:33,549.549 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:02:33,551.551 INFO    ] No camera update needed
[2026-06-27 00:02:33,552.552 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:02:33,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:02:33,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:02:33,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:02:35,599.599 INFO    ] ================================================
[2026-06-27 00:02:35,615.615 INFO    ] Launching Daemon at Sat Jun 27 00:02:35 IST 2026
[2026-06-27 00:02:35,627.627 INFO    ] ================================================
[2026-06-27 00:02:35,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:02:35
[2026-06-27 00:02:36,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:02:36,483.483 INFO    ] Initializing speech engine...
[2026-06-27 00:02:36,489.489 INFO    ] 2026-06-27 00:02:36
[2026-06-27 00:02:36,697.697 INFO    ] 2026-06-27 00:02:36
[2026-06-27 00:02:36,725.725 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:02:36,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:02:36,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:02:37,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:02:37,095.095 INFO    ] time= 27/06/2026 00:02:37
[2026-06-27 00:02:37,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:02:37,142.142 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:02:37,265.265 INFO    ] No existing commands found in stream
[2026-06-27 00:02:42,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:02:42,284.284 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-27 00:02:46,460.460 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 00:02:46,462.462 INFO    ] Checking for system updates...
[2026-06-27 00:02:46,484.484 INFO    ] 200
[2026-06-27 00:02:46,485.485 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:02:46,515.515 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:02:46,516.516 INFO    ] No update needed
[2026-06-27 00:02:46,518.518 INFO    ] Checking for camera pi updates...
[2026-06-27 00:02:46,538.538 INFO    ] 200
[2026-06-27 00:02:46,540.540 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:02:46,563.563 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:02:46,606.606 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:02:46,608.608 INFO    ] No camera update needed
[2026-06-27 00:02:46,609.609 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:02:46,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:02:46,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:02:46,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:02:48,647.647 INFO    ] ================================================
[2026-06-27 00:02:48,656.656 INFO    ] Launching Daemon at Sat Jun 27 00:02:48 IST 2026
[2026-06-27 00:02:48,662.662 INFO    ] ================================================
[2026-06-27 00:02:48,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:02:48
[2026-06-27 00:02:49,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:02:49,430.430 INFO    ] Initializing speech engine...
[2026-06-27 00:02:49,440.440 INFO    ] 2026-06-27 00:02:49
[2026-06-27 00:02:49,647.647 INFO    ] 2026-06-27 00:02:49
[2026-06-27 00:02:49,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:02:49,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:02:49,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:02:49,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:02:50,052.052 INFO    ] time= 27/06/2026 00:02:49
[2026-06-27 00:02:50,090.090 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:02:50,096.096 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:02:50,188.188 INFO    ] No existing commands found in stream
[2026-06-27 00:02:55,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:02:55,205.205 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-27 00:02:56,391.391 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 00:02:56,392.392 INFO    ] Checking for system updates...
[2026-06-27 00:02:56,415.415 INFO    ] 200
[2026-06-27 00:02:56,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:02:56,446.446 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:02:56,448.448 INFO    ] No update needed
[2026-06-27 00:02:56,449.449 INFO    ] Checking for camera pi updates...
[2026-06-27 00:02:56,472.472 INFO    ] 200
[2026-06-27 00:02:56,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:02:56,496.496 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:02:56,548.548 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:02:56,549.549 INFO    ] No camera update needed
[2026-06-27 00:02:56,550.550 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:02:56,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:02:56,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:02:56,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:02:58,596.596 INFO    ] ================================================
[2026-06-27 00:02:58,611.611 INFO    ] Launching Daemon at Sat Jun 27 00:02:58 IST 2026
[2026-06-27 00:02:58,622.622 INFO    ] ================================================
[2026-06-27 00:02:58,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:02:58
[2026-06-27 00:02:59,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:02:59,446.446 INFO    ] Initializing speech engine...
[2026-06-27 00:02:59,451.451 INFO    ] 2026-06-27 00:02:59
[2026-06-27 00:02:59,668.668 INFO    ] 2026-06-27 00:02:59
[2026-06-27 00:02:59,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:02:59,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:02:59,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:03:00,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:03:00,102.102 INFO    ] time= 27/06/2026 00:03:00
[2026-06-27 00:03:00,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:03:00,137.137 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:03:00,205.205 INFO    ] No existing commands found in stream
[2026-06-27 00:03:05,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:03:05,218.218 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-27 00:03:07,457.457 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 00:03:07,459.459 INFO    ] Checking for system updates...
[2026-06-27 00:03:07,480.480 INFO    ] 200
[2026-06-27 00:03:07,481.481 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:03:07,514.514 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:03:07,516.516 INFO    ] No update needed
[2026-06-27 00:03:07,518.518 INFO    ] Checking for camera pi updates...
[2026-06-27 00:03:07,543.543 INFO    ] 200
[2026-06-27 00:03:07,545.545 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:03:07,571.571 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:03:07,711.711 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:03:07,713.713 INFO    ] No camera update needed
[2026-06-27 00:03:07,714.714 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:03:07,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:03:07,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:03:07,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:03:09,760.760 INFO    ] ================================================
[2026-06-27 00:03:09,776.776 INFO    ] Launching Daemon at Sat Jun 27 00:03:09 IST 2026
[2026-06-27 00:03:09,787.787 INFO    ] ================================================
[2026-06-27 00:03:10,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:03:10
[2026-06-27 00:03:10,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:03:10,564.564 INFO    ] Initializing speech engine...
[2026-06-27 00:03:10,568.568 INFO    ] 2026-06-27 00:03:10
[2026-06-27 00:03:10,795.795 INFO    ] 2026-06-27 00:03:10
[2026-06-27 00:03:10,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:03:11,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:03:11,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:03:11,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:03:11,233.233 INFO    ] time= 27/06/2026 00:03:11
[2026-06-27 00:03:11,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:03:11,265.265 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:03:11,332.332 INFO    ] No existing commands found in stream
[2026-06-27 00:03:16,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:03:16,350.350 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-27 00:03:18,753.753 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 00:03:18,755.755 INFO    ] Checking for system updates...
[2026-06-27 00:03:18,777.777 INFO    ] 200
[2026-06-27 00:03:18,778.778 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:03:18,812.812 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:03:18,813.813 INFO    ] No update needed
[2026-06-27 00:03:18,815.815 INFO    ] Checking for camera pi updates...
[2026-06-27 00:03:18,835.835 INFO    ] 200
[2026-06-27 00:03:18,836.836 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:03:18,860.860 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:03:18,903.903 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:03:18,905.905 INFO    ] No camera update needed
[2026-06-27 00:03:18,906.906 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:03:18,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:03:18,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:03:18,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:03:20,955.955 INFO    ] ================================================
[2026-06-27 00:03:20,970.970 INFO    ] Launching Daemon at Sat Jun 27 00:03:20 IST 2026
[2026-06-27 00:03:20,981.981 INFO    ] ================================================
[2026-06-27 00:03:21,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:03:21
[2026-06-27 00:03:21,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:03:21,792.792 INFO    ] Initializing speech engine...
[2026-06-27 00:03:21,798.798 INFO    ] 2026-06-27 00:03:21
[2026-06-27 00:03:22,008.008 INFO    ] 2026-06-27 00:03:21
[2026-06-27 00:03:22,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:03:22,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:03:22,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:03:22,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:03:22,445.445 INFO    ] time= 27/06/2026 00:03:22
[2026-06-27 00:03:22,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:03:22,480.480 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:03:22,549.549 INFO    ] No existing commands found in stream
[2026-06-27 00:03:27,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:03:27,561.561 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-27 00:03:30,571.571 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 00:03:30,572.572 INFO    ] Checking for system updates...
[2026-06-27 00:03:30,593.593 INFO    ] 200
[2026-06-27 00:03:30,595.595 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:03:30,627.627 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:03:30,628.628 INFO    ] No update needed
[2026-06-27 00:03:30,630.630 INFO    ] Checking for camera pi updates...
[2026-06-27 00:03:30,650.650 INFO    ] 200
[2026-06-27 00:03:30,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:03:30,675.675 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:03:30,726.726 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:03:30,728.728 INFO    ] No camera update needed
[2026-06-27 00:03:30,729.729 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:03:30,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:03:30,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:03:30,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:03:32,767.767 INFO    ] ================================================
[2026-06-27 00:03:32,775.775 INFO    ] Launching Daemon at Sat Jun 27 00:03:32 IST 2026
[2026-06-27 00:03:32,784.784 INFO    ] ================================================
[2026-06-27 00:03:33,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:03:33
[2026-06-27 00:03:33,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:03:33,683.683 INFO    ] Initializing speech engine...
[2026-06-27 00:03:33,689.689 INFO    ] 2026-06-27 00:03:33
[2026-06-27 00:03:33,899.899 INFO    ] 2026-06-27 00:03:33
[2026-06-27 00:03:33,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:03:34,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:03:34,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:03:34,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:03:34,321.321 INFO    ] time= 27/06/2026 00:03:34
[2026-06-27 00:03:34,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:03:34,351.351 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:03:34,418.418 INFO    ] No existing commands found in stream
[2026-06-27 00:03:39,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:03:39,436.436 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-27 00:03:42,777.777 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:03:42,779.779 INFO    ] Checking for system updates...
[2026-06-27 00:03:42,800.800 INFO    ] 200
[2026-06-27 00:03:42,801.801 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:03:42,832.832 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:03:42,834.834 INFO    ] No update needed
[2026-06-27 00:03:42,835.835 INFO    ] Checking for camera pi updates...
[2026-06-27 00:03:42,856.856 INFO    ] 200
[2026-06-27 00:03:42,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:03:42,882.882 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:03:42,926.926 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:03:42,928.928 INFO    ] No camera update needed
[2026-06-27 00:03:42,929.929 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:03:42,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:03:42,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:03:42,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:03:44,981.981 INFO    ] ================================================
[2026-06-27 00:03:45,997.997 INFO    ] Launching Daemon at Sat Jun 27 00:03:44 IST 2026
[2026-06-27 00:03:45,008.008 INFO    ] ================================================
[2026-06-27 00:03:45,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:03:45
[2026-06-27 00:03:45,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:03:45,888.888 INFO    ] Initializing speech engine...
[2026-06-27 00:03:45,896.896 INFO    ] 2026-06-27 00:03:45
[2026-06-27 00:03:46,110.110 INFO    ] 2026-06-27 00:03:46
[2026-06-27 00:03:46,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:03:46,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:03:46,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:03:46,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:03:46,530.530 INFO    ] time= 27/06/2026 00:03:46
[2026-06-27 00:03:46,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:03:46,560.560 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:03:46,626.626 INFO    ] No existing commands found in stream
[2026-06-27 00:03:51,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:03:51,638.638 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-27 00:03:52,634.634 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 00:03:52,636.636 INFO    ] Checking for system updates...
[2026-06-27 00:03:52,667.667 INFO    ] 200
[2026-06-27 00:03:52,669.669 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:03:52,699.699 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:03:52,700.700 INFO    ] No update needed
[2026-06-27 00:03:52,701.701 INFO    ] Checking for camera pi updates...
[2026-06-27 00:03:52,721.721 INFO    ] 200
[2026-06-27 00:03:52,722.722 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:03:52,746.746 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:03:52,785.785 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:03:52,787.787 INFO    ] No camera update needed
[2026-06-27 00:03:52,788.788 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:03:52,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:03:52,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:03:52,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:03:54,836.836 INFO    ] ================================================
[2026-06-27 00:03:54,851.851 INFO    ] Launching Daemon at Sat Jun 27 00:03:54 IST 2026
[2026-06-27 00:03:54,862.862 INFO    ] ================================================
[2026-06-27 00:03:55,194.194 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:03:55
[2026-06-27 00:03:55,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:03:55,651.651 INFO    ] Initializing speech engine...
[2026-06-27 00:03:55,656.656 INFO    ] 2026-06-27 00:03:55
[2026-06-27 00:03:55,863.863 INFO    ] 2026-06-27 00:03:55
[2026-06-27 00:03:55,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:03:56,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:03:56,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:03:56,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:03:56,321.321 INFO    ] time= 27/06/2026 00:03:56
[2026-06-27 00:03:56,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:03:56,340.340 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:03:56,419.419 INFO    ] No existing commands found in stream
[2026-06-27 00:04:01,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:04:01,428.428 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-27 00:04:03,230.230 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 00:04:03,232.232 INFO    ] Checking for system updates...
[2026-06-27 00:04:03,252.252 INFO    ] 200
[2026-06-27 00:04:03,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:04:03,285.285 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:04:03,286.286 INFO    ] No update needed
[2026-06-27 00:04:03,287.287 INFO    ] Checking for camera pi updates...
[2026-06-27 00:04:03,307.307 INFO    ] 200
[2026-06-27 00:04:03,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:04:03,331.331 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:04:03,386.386 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:04:03,387.387 INFO    ] No camera update needed
[2026-06-27 00:04:03,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:04:03,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:04:03,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:04:03,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:04:05,434.434 INFO    ] ================================================
[2026-06-27 00:04:05,450.450 INFO    ] Launching Daemon at Sat Jun 27 00:04:05 IST 2026
[2026-06-27 00:04:05,461.461 INFO    ] ================================================
[2026-06-27 00:04:05,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:04:05
[2026-06-27 00:04:06,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:04:06,256.256 INFO    ] Initializing speech engine...
[2026-06-27 00:04:06,269.269 INFO    ] 2026-06-27 00:04:06
[2026-06-27 00:04:06,491.491 INFO    ] 2026-06-27 00:04:06
[2026-06-27 00:04:06,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:04:06,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:04:06,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:04:06,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:04:06,916.916 INFO    ] time= 27/06/2026 00:04:06
[2026-06-27 00:04:06,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:04:06,974.974 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:04:07,050.050 INFO    ] No existing commands found in stream
[2026-06-27 00:04:12,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:04:12,062.062 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-27 00:04:13,447.447 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:04:13,449.449 INFO    ] Checking for system updates...
[2026-06-27 00:04:13,472.472 INFO    ] 200
[2026-06-27 00:04:13,474.474 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:04:13,512.512 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:04:13,514.514 INFO    ] No update needed
[2026-06-27 00:04:13,515.515 INFO    ] Checking for camera pi updates...
[2026-06-27 00:04:13,537.537 INFO    ] 200
[2026-06-27 00:04:13,539.539 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:04:13,569.569 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:04:13,608.608 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:04:13,611.611 INFO    ] No camera update needed
[2026-06-27 00:04:13,612.612 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:04:13,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:04:13,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:04:13,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:04:15,661.661 INFO    ] ================================================
[2026-06-27 00:04:15,676.676 INFO    ] Launching Daemon at Sat Jun 27 00:04:15 IST 2026
[2026-06-27 00:04:15,688.688 INFO    ] ================================================
[2026-06-27 00:04:16,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:04:16
[2026-06-27 00:04:16,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:04:16,529.529 INFO    ] Initializing speech engine...
[2026-06-27 00:04:16,537.537 INFO    ] 2026-06-27 00:04:16
[2026-06-27 00:04:16,767.767 INFO    ] 2026-06-27 00:04:16
[2026-06-27 00:04:16,798.798 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:04:16,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:04:17,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:04:17,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:04:17,196.196 INFO    ] time= 27/06/2026 00:04:17
[2026-06-27 00:04:17,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:04:17,250.250 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:04:17,327.327 INFO    ] No existing commands found in stream
[2026-06-27 00:04:22,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:04:22,339.339 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-27 00:04:26,161.161 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 00:04:26,163.163 INFO    ] Checking for system updates...
[2026-06-27 00:04:26,184.184 INFO    ] 200
[2026-06-27 00:04:26,185.185 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:04:26,216.216 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:04:26,217.217 INFO    ] No update needed
[2026-06-27 00:04:26,218.218 INFO    ] Checking for camera pi updates...
[2026-06-27 00:04:26,238.238 INFO    ] 200
[2026-06-27 00:04:26,239.239 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:04:26,262.262 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:04:26,304.304 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:04:26,306.306 INFO    ] No camera update needed
[2026-06-27 00:04:26,307.307 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:04:26,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:04:26,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:04:26,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:04:28,354.354 INFO    ] ================================================
[2026-06-27 00:04:28,369.369 INFO    ] Launching Daemon at Sat Jun 27 00:04:28 IST 2026
[2026-06-27 00:04:28,380.380 INFO    ] ================================================
[2026-06-27 00:04:28,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:04:28
[2026-06-27 00:04:29,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:04:29,199.199 INFO    ] Initializing speech engine...
[2026-06-27 00:04:29,208.208 INFO    ] 2026-06-27 00:04:29
[2026-06-27 00:04:29,424.424 INFO    ] 2026-06-27 00:04:29
[2026-06-27 00:04:29,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:04:29,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:04:29,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:04:29,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:04:29,863.863 INFO    ] time= 27/06/2026 00:04:29
[2026-06-27 00:04:29,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:04:29,899.899 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:04:29,965.965 INFO    ] No existing commands found in stream
[2026-06-27 00:04:34,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:04:34,978.978 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-27 00:04:37,204.204 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:04:37,206.206 INFO    ] Checking for system updates...
[2026-06-27 00:04:37,227.227 INFO    ] 200
[2026-06-27 00:04:37,228.228 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:04:37,261.261 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:04:37,262.262 INFO    ] No update needed
[2026-06-27 00:04:37,264.264 INFO    ] Checking for camera pi updates...
[2026-06-27 00:04:37,284.284 INFO    ] 200
[2026-06-27 00:04:37,285.285 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:04:37,310.310 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:04:37,356.356 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:04:37,357.357 INFO    ] No camera update needed
[2026-06-27 00:04:37,359.359 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:04:37,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:04:37,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:04:37,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:04:39,407.407 INFO    ] ================================================
[2026-06-27 00:04:39,422.422 INFO    ] Launching Daemon at Sat Jun 27 00:04:39 IST 2026
[2026-06-27 00:04:39,433.433 INFO    ] ================================================
[2026-06-27 00:04:39,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:04:39
[2026-06-27 00:04:40,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:04:40,289.289 INFO    ] Initializing speech engine...
[2026-06-27 00:04:40,295.295 INFO    ] 2026-06-27 00:04:40
[2026-06-27 00:04:40,505.505 INFO    ] 2026-06-27 00:04:40
[2026-06-27 00:04:40,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:04:40,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:04:40,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:04:40,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:04:40,938.938 INFO    ] time= 27/06/2026 00:04:40
[2026-06-27 00:04:40,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:04:40,968.968 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:04:41,035.035 INFO    ] No existing commands found in stream
[2026-06-27 00:04:46,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:04:46,047.047 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-27 00:04:47,827.827 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 00:04:47,829.829 INFO    ] Checking for system updates...
[2026-06-27 00:04:47,856.856 INFO    ] 200
[2026-06-27 00:04:47,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:04:47,896.896 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:04:47,898.898 INFO    ] No update needed
[2026-06-27 00:04:47,899.899 INFO    ] Checking for camera pi updates...
[2026-06-27 00:04:47,918.918 INFO    ] 200
[2026-06-27 00:04:47,920.920 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:04:47,943.943 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:04:47,988.988 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:04:47,989.989 INFO    ] No camera update needed
[2026-06-27 00:04:47,990.990 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:04:47,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:04:47,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:04:47,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:04:50,038.038 INFO    ] ================================================
[2026-06-27 00:04:50,053.053 INFO    ] Launching Daemon at Sat Jun 27 00:04:50 IST 2026
[2026-06-27 00:04:50,064.064 INFO    ] ================================================
[2026-06-27 00:04:50,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:04:50
[2026-06-27 00:04:50,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:04:50,860.860 INFO    ] Initializing speech engine...
[2026-06-27 00:04:50,865.865 INFO    ] 2026-06-27 00:04:50
[2026-06-27 00:04:51,068.068 INFO    ] 2026-06-27 00:04:51
[2026-06-27 00:04:51,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:04:51,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:04:51,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:04:51,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:04:51,862.862 INFO    ] time= 27/06/2026 00:04:51
[2026-06-27 00:04:51,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:04:51,888.888 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:04:51,991.991 INFO    ] No existing commands found in stream
[2026-06-27 00:04:57,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:04:57,003.003 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-27 00:05:01,238.238 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 00:05:01,239.239 INFO    ] Checking for system updates...
[2026-06-27 00:05:01,260.260 INFO    ] 200
[2026-06-27 00:05:01,261.261 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:05:01,292.292 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:05:01,293.293 INFO    ] No update needed
[2026-06-27 00:05:01,295.295 INFO    ] Checking for camera pi updates...
[2026-06-27 00:05:01,315.315 INFO    ] 200
[2026-06-27 00:05:01,316.316 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:05:01,342.342 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:05:01,388.388 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:05:01,391.391 INFO    ] No camera update needed
[2026-06-27 00:05:01,395.395 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:05:01,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:05:01,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:05:01,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:05:03,443.443 INFO    ] ================================================
[2026-06-27 00:05:03,452.452 INFO    ] Launching Daemon at Sat Jun 27 00:05:03 IST 2026
[2026-06-27 00:05:03,459.459 INFO    ] ================================================
[2026-06-27 00:05:03,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:05:03
[2026-06-27 00:05:04,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:05:04,284.284 INFO    ] Initializing speech engine...
[2026-06-27 00:05:04,289.289 INFO    ] 2026-06-27 00:05:04
[2026-06-27 00:05:04,499.499 INFO    ] 2026-06-27 00:05:04
[2026-06-27 00:05:04,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:05:04,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:05:04,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:05:04,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:05:04,922.922 INFO    ] time= 27/06/2026 00:05:04
[2026-06-27 00:05:04,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:05:04,953.953 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:05:05,020.020 INFO    ] No existing commands found in stream
[2026-06-27 00:05:10,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:05:10,033.033 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-27 00:05:14,375.375 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 00:05:14,377.377 INFO    ] Checking for system updates...
[2026-06-27 00:05:14,399.399 INFO    ] 200
[2026-06-27 00:05:14,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:05:14,435.435 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:05:14,436.436 INFO    ] No update needed
[2026-06-27 00:05:14,438.438 INFO    ] Checking for camera pi updates...
[2026-06-27 00:05:14,457.457 INFO    ] 200
[2026-06-27 00:05:14,459.459 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:05:14,483.483 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:05:14,626.626 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:05:14,629.629 INFO    ] No camera update needed
[2026-06-27 00:05:14,632.632 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:05:14,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:05:14,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:05:14,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:05:16,689.689 INFO    ] ================================================
[2026-06-27 00:05:16,705.705 INFO    ] Launching Daemon at Sat Jun 27 00:05:16 IST 2026
[2026-06-27 00:05:16,715.715 INFO    ] ================================================
[2026-06-27 00:05:17,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:05:17
[2026-06-27 00:05:17,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:05:17,495.495 INFO    ] Initializing speech engine...
[2026-06-27 00:05:17,498.498 INFO    ] 2026-06-27 00:05:17
[2026-06-27 00:05:17,692.692 INFO    ] 2026-06-27 00:05:17
[2026-06-27 00:05:17,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:05:17,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:05:17,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:05:18,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:05:18,163.163 INFO    ] time= 27/06/2026 00:05:18
[2026-06-27 00:05:18,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:05:18,220.220 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:05:18,297.297 INFO    ] No existing commands found in stream
[2026-06-27 00:05:23,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:05:23,314.314 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-27 00:05:26,185.185 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 00:05:26,189.189 INFO    ] Checking for system updates...
[2026-06-27 00:05:26,212.212 INFO    ] 200
[2026-06-27 00:05:26,214.214 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:05:26,252.252 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:05:26,254.254 INFO    ] No update needed
[2026-06-27 00:05:26,256.256 INFO    ] Checking for camera pi updates...
[2026-06-27 00:05:26,278.278 INFO    ] 200
[2026-06-27 00:05:26,280.280 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:05:26,304.304 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:05:26,357.357 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:05:26,359.359 INFO    ] No camera update needed
[2026-06-27 00:05:26,360.360 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:05:26,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:05:26,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:05:26,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:05:28,405.405 INFO    ] ================================================
[2026-06-27 00:05:28,421.421 INFO    ] Launching Daemon at Sat Jun 27 00:05:28 IST 2026
[2026-06-27 00:05:28,431.431 INFO    ] ================================================
[2026-06-27 00:05:28,754.754 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:05:28
[2026-06-27 00:05:29,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:05:29,197.197 INFO    ] Initializing speech engine...
[2026-06-27 00:05:29,200.200 INFO    ] 2026-06-27 00:05:29
[2026-06-27 00:05:29,420.420 INFO    ] 2026-06-27 00:05:29
[2026-06-27 00:05:29,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:05:29,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:05:29,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:05:29,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:05:29,834.834 INFO    ] time= 27/06/2026 00:05:29
[2026-06-27 00:05:29,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:05:29,874.874 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:05:29,940.940 INFO    ] No existing commands found in stream
[2026-06-27 00:05:34,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:05:34,953.953 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-27 00:05:36,610.610 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:05:36,612.612 INFO    ] Checking for system updates...
[2026-06-27 00:05:36,639.639 INFO    ] 200
[2026-06-27 00:05:36,640.640 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:05:36,670.670 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:05:36,671.671 INFO    ] No update needed
[2026-06-27 00:05:36,672.672 INFO    ] Checking for camera pi updates...
[2026-06-27 00:05:36,692.692 INFO    ] 200
[2026-06-27 00:05:36,694.694 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:05:36,719.719 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:05:36,760.760 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:05:36,762.762 INFO    ] No camera update needed
[2026-06-27 00:05:36,763.763 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:05:36,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:05:36,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:05:36,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:05:38,802.802 INFO    ] ================================================
[2026-06-27 00:05:38,811.811 INFO    ] Launching Daemon at Sat Jun 27 00:05:38 IST 2026
[2026-06-27 00:05:38,818.818 INFO    ] ================================================
[2026-06-27 00:05:39,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:05:39
[2026-06-27 00:05:39,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:05:39,606.606 INFO    ] Initializing speech engine...
[2026-06-27 00:05:39,615.615 INFO    ] 2026-06-27 00:05:39
[2026-06-27 00:05:39,833.833 INFO    ] 2026-06-27 00:05:39
[2026-06-27 00:05:39,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:05:40,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:05:40,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:05:40,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:05:40,251.251 INFO    ] time= 27/06/2026 00:05:40
[2026-06-27 00:05:40,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:05:40,293.293 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:05:40,365.365 INFO    ] No existing commands found in stream
[2026-06-27 00:05:45,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:05:45,378.378 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-27 00:05:47,663.663 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 00:05:47,664.664 INFO    ] Checking for system updates...
[2026-06-27 00:05:47,685.685 INFO    ] 200
[2026-06-27 00:05:47,687.687 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:05:47,717.717 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:05:47,718.718 INFO    ] No update needed
[2026-06-27 00:05:47,719.719 INFO    ] Checking for camera pi updates...
[2026-06-27 00:05:47,738.738 INFO    ] 200
[2026-06-27 00:05:47,740.740 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:05:47,763.763 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:05:47,789.789 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:05:47,790.790 INFO    ] No camera update needed
[2026-06-27 00:05:47,791.791 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:05:47,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:05:47,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:05:47,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:05:49,831.831 INFO    ] ================================================
[2026-06-27 00:05:49,847.847 INFO    ] Launching Daemon at Sat Jun 27 00:05:49 IST 2026
[2026-06-27 00:05:49,859.859 INFO    ] ================================================
[2026-06-27 00:05:50,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:05:50
[2026-06-27 00:05:50,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:05:50,699.699 INFO    ] Initializing speech engine...
[2026-06-27 00:05:50,705.705 INFO    ] 2026-06-27 00:05:50
[2026-06-27 00:05:50,909.909 INFO    ] 2026-06-27 00:05:50
[2026-06-27 00:05:50,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:05:51,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:05:51,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:05:51,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:05:51,325.325 INFO    ] time= 27/06/2026 00:05:51
[2026-06-27 00:05:51,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:05:51,359.359 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:05:51,426.426 INFO    ] No existing commands found in stream
[2026-06-27 00:05:56,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:05:56,442.442 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-27 00:05:59,131.131 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:05:59,132.132 INFO    ] Checking for system updates...
[2026-06-27 00:05:59,154.154 INFO    ] 200
[2026-06-27 00:05:59,156.156 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:05:59,186.186 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:05:59,187.187 INFO    ] No update needed
[2026-06-27 00:05:59,189.189 INFO    ] Checking for camera pi updates...
[2026-06-27 00:05:59,215.215 INFO    ] 200
[2026-06-27 00:05:59,216.216 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:05:59,242.242 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:05:59,275.275 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:05:59,277.277 INFO    ] No camera update needed
[2026-06-27 00:05:59,278.278 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:05:59,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:05:59,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:05:59,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:06:01,316.316 INFO    ] ================================================
[2026-06-27 00:06:01,331.331 INFO    ] Launching Daemon at Sat Jun 27 00:06:01 IST 2026
[2026-06-27 00:06:01,341.341 INFO    ] ================================================
[2026-06-27 00:06:01,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:06:01
[2026-06-27 00:06:02,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:06:02,331.331 INFO    ] Initializing speech engine...
[2026-06-27 00:06:02,338.338 INFO    ] 2026-06-27 00:06:02
[2026-06-27 00:06:02,596.596 INFO    ] 2026-06-27 00:06:02
[2026-06-27 00:06:02,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:06:02,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:06:02,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:06:02,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:06:03,040.040 INFO    ] time= 27/06/2026 00:06:02
[2026-06-27 00:06:03,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:06:03,071.071 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:06:03,142.142 INFO    ] No existing commands found in stream
[2026-06-27 00:06:08,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:06:08,153.153 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-27 00:06:09,103.103 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 00:06:09,104.104 INFO    ] Checking for system updates...
[2026-06-27 00:06:09,125.125 INFO    ] 200
[2026-06-27 00:06:09,126.126 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:06:09,156.156 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:06:09,158.158 INFO    ] No update needed
[2026-06-27 00:06:09,159.159 INFO    ] Checking for camera pi updates...
[2026-06-27 00:06:09,178.178 INFO    ] 200
[2026-06-27 00:06:09,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:06:09,203.203 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:06:09,251.251 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:06:09,252.252 INFO    ] No camera update needed
[2026-06-27 00:06:09,253.253 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:06:09,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:06:09,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:06:09,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:06:11,298.298 INFO    ] ================================================
[2026-06-27 00:06:11,314.314 INFO    ] Launching Daemon at Sat Jun 27 00:06:11 IST 2026
[2026-06-27 00:06:11,325.325 INFO    ] ================================================
[2026-06-27 00:06:11,664.664 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:06:11
[2026-06-27 00:06:11,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:06:12,111.111 INFO    ] Initializing speech engine...
[2026-06-27 00:06:12,117.117 INFO    ] 2026-06-27 00:06:12
[2026-06-27 00:06:12,347.347 INFO    ] 2026-06-27 00:06:12
[2026-06-27 00:06:12,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:06:12,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:06:12,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:06:12,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:06:12,774.774 INFO    ] time= 27/06/2026 00:06:12
[2026-06-27 00:06:12,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:06:12,825.825 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:06:12,927.927 INFO    ] No existing commands found in stream
[2026-06-27 00:06:17,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:06:17,939.939 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-27 00:06:19,083.083 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 00:06:19,085.085 INFO    ] Checking for system updates...
[2026-06-27 00:06:19,107.107 INFO    ] 200
[2026-06-27 00:06:19,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:06:19,142.142 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:06:19,144.144 INFO    ] No update needed
[2026-06-27 00:06:19,145.145 INFO    ] Checking for camera pi updates...
[2026-06-27 00:06:19,166.166 INFO    ] 200
[2026-06-27 00:06:19,167.167 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:06:19,191.191 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:06:19,237.237 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:06:19,239.239 INFO    ] No camera update needed
[2026-06-27 00:06:19,240.240 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:06:19,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:06:19,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:06:19,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:06:21,288.288 INFO    ] ================================================
[2026-06-27 00:06:21,304.304 INFO    ] Launching Daemon at Sat Jun 27 00:06:21 IST 2026
[2026-06-27 00:06:21,315.315 INFO    ] ================================================
[2026-06-27 00:06:21,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:06:21
[2026-06-27 00:06:22,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:06:22,183.183 INFO    ] Initializing speech engine...
[2026-06-27 00:06:22,186.186 INFO    ] 2026-06-27 00:06:22
[2026-06-27 00:06:22,396.396 INFO    ] 2026-06-27 00:06:22
[2026-06-27 00:06:22,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:06:22,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:06:22,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:06:22,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:06:22,821.821 INFO    ] time= 27/06/2026 00:06:22
[2026-06-27 00:06:22,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:06:22,849.849 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:06:22,916.916 INFO    ] No existing commands found in stream
[2026-06-27 00:06:27,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:06:27,934.934 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-27 00:06:31,320.320 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 00:06:31,322.322 INFO    ] Checking for system updates...
[2026-06-27 00:06:31,344.344 INFO    ] 200
[2026-06-27 00:06:31,346.346 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:06:31,381.381 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:06:31,383.383 INFO    ] No update needed
[2026-06-27 00:06:31,385.385 INFO    ] Checking for camera pi updates...
[2026-06-27 00:06:31,405.405 INFO    ] 200
[2026-06-27 00:06:31,406.406 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:06:31,430.430 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:06:31,477.477 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:06:31,478.478 INFO    ] No camera update needed
[2026-06-27 00:06:31,480.480 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:06:31,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:06:31,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:06:31,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:06:33,520.520 INFO    ] ================================================
[2026-06-27 00:06:33,536.536 INFO    ] Launching Daemon at Sat Jun 27 00:06:33 IST 2026
[2026-06-27 00:06:33,547.547 INFO    ] ================================================
[2026-06-27 00:06:33,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:06:33
[2026-06-27 00:06:34,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:06:34,434.434 INFO    ] Initializing speech engine...
[2026-06-27 00:06:34,439.439 INFO    ] 2026-06-27 00:06:34
[2026-06-27 00:06:34,644.644 INFO    ] 2026-06-27 00:06:34
[2026-06-27 00:06:34,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:06:34,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:06:34,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:06:34,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:06:35,066.066 INFO    ] time= 27/06/2026 00:06:35
[2026-06-27 00:06:35,090.090 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:06:35,096.096 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:06:35,161.161 INFO    ] No existing commands found in stream
[2026-06-27 00:06:40,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:06:40,175.175 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-27 00:06:43,900.900 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 00:06:43,902.902 INFO    ] Checking for system updates...
[2026-06-27 00:06:43,923.923 INFO    ] 200
[2026-06-27 00:06:43,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:06:43,957.957 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:06:43,958.958 INFO    ] No update needed
[2026-06-27 00:06:43,959.959 INFO    ] Checking for camera pi updates...
[2026-06-27 00:06:43,981.981 INFO    ] 200
[2026-06-27 00:06:43,982.982 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:06:44,006.006 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:06:44,058.058 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:06:44,059.059 INFO    ] No camera update needed
[2026-06-27 00:06:44,060.060 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:06:44,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:06:44,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:06:44,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:06:46,109.109 INFO    ] ================================================
[2026-06-27 00:06:46,125.125 INFO    ] Launching Daemon at Sat Jun 27 00:06:46 IST 2026
[2026-06-27 00:06:46,136.136 INFO    ] ================================================
[2026-06-27 00:06:46,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:06:46
[2026-06-27 00:06:46,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:06:46,947.947 INFO    ] Initializing speech engine...
[2026-06-27 00:06:46,953.953 INFO    ] 2026-06-27 00:06:46
[2026-06-27 00:06:47,157.157 INFO    ] 2026-06-27 00:06:47
[2026-06-27 00:06:47,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:06:47,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:06:47,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:06:47,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:06:47,576.576 INFO    ] time= 27/06/2026 00:06:47
[2026-06-27 00:06:47,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:06:47,606.606 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:06:47,671.671 INFO    ] No existing commands found in stream
[2026-06-27 00:06:52,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:06:52,685.685 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-27 00:06:56,260.260 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 00:06:56,262.262 INFO    ] Checking for system updates...
[2026-06-27 00:06:56,282.282 INFO    ] 200
[2026-06-27 00:06:56,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:06:56,319.319 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:06:56,321.321 INFO    ] No update needed
[2026-06-27 00:06:56,322.322 INFO    ] Checking for camera pi updates...
[2026-06-27 00:06:56,344.344 INFO    ] 200
[2026-06-27 00:06:56,346.346 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:06:56,369.369 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:06:56,415.415 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:06:56,417.417 INFO    ] No camera update needed
[2026-06-27 00:06:56,418.418 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:06:56,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:06:56,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:06:56,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:06:58,467.467 INFO    ] ================================================
[2026-06-27 00:06:58,482.482 INFO    ] Launching Daemon at Sat Jun 27 00:06:58 IST 2026
[2026-06-27 00:06:58,493.493 INFO    ] ================================================
[2026-06-27 00:06:58,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:06:58
[2026-06-27 00:06:59,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:06:59,328.328 INFO    ] Initializing speech engine...
[2026-06-27 00:06:59,331.331 INFO    ] 2026-06-27 00:06:59
[2026-06-27 00:06:59,538.538 INFO    ] 2026-06-27 00:06:59
[2026-06-27 00:06:59,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:06:59,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:06:59,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:06:59,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:06:59,961.961 INFO    ] time= 27/06/2026 00:06:59
[2026-06-27 00:06:59,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:06:59,992.992 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:07:00,062.062 INFO    ] No existing commands found in stream
[2026-06-27 00:07:05,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:07:05,075.075 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-27 00:07:07,937.937 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 00:07:07,938.938 INFO    ] Checking for system updates...
[2026-06-27 00:07:07,959.959 INFO    ] 200
[2026-06-27 00:07:07,961.961 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:07:07,994.994 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:07:07,996.996 INFO    ] No update needed
[2026-06-27 00:07:07,997.997 INFO    ] Checking for camera pi updates...
[2026-06-27 00:07:08,017.017 INFO    ] 200
[2026-06-27 00:07:08,018.018 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:07:08,046.046 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:07:08,088.088 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:07:08,090.090 INFO    ] No camera update needed
[2026-06-27 00:07:08,091.091 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:07:08,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:07:08,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:07:08,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:07:10,139.139 INFO    ] ================================================
[2026-06-27 00:07:10,154.154 INFO    ] Launching Daemon at Sat Jun 27 00:07:10 IST 2026
[2026-06-27 00:07:10,165.165 INFO    ] ================================================
[2026-06-27 00:07:10,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:07:10
[2026-06-27 00:07:10,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:07:11,011.011 INFO    ] Initializing speech engine...
[2026-06-27 00:07:11,022.022 INFO    ] 2026-06-27 00:07:11
[2026-06-27 00:07:11,232.232 INFO    ] 2026-06-27 00:07:11
[2026-06-27 00:07:11,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:07:11,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:07:11,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:07:11,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:07:11,650.650 INFO    ] time= 27/06/2026 00:07:11
[2026-06-27 00:07:11,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:07:11,690.690 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:07:11,758.758 INFO    ] No existing commands found in stream
[2026-06-27 00:07:16,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:07:16,771.771 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-27 00:07:20,901.901 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 00:07:20,903.903 INFO    ] Checking for system updates...
[2026-06-27 00:07:20,924.924 INFO    ] 200
[2026-06-27 00:07:20,925.925 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:07:20,959.959 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:07:20,960.960 INFO    ] No update needed
[2026-06-27 00:07:20,961.961 INFO    ] Checking for camera pi updates...
[2026-06-27 00:07:20,984.984 INFO    ] 200
[2026-06-27 00:07:20,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:07:21,011.011 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:07:21,153.153 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:07:21,155.155 INFO    ] No camera update needed
[2026-06-27 00:07:21,156.156 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:07:21,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:07:21,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:07:21,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:07:23,204.204 INFO    ] ================================================
[2026-06-27 00:07:23,220.220 INFO    ] Launching Daemon at Sat Jun 27 00:07:23 IST 2026
[2026-06-27 00:07:23,231.231 INFO    ] ================================================
[2026-06-27 00:07:23,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:07:23
[2026-06-27 00:07:23,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:07:24,046.046 INFO    ] Initializing speech engine...
[2026-06-27 00:07:24,051.051 INFO    ] 2026-06-27 00:07:24
[2026-06-27 00:07:24,256.256 INFO    ] 2026-06-27 00:07:24
[2026-06-27 00:07:24,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:07:25,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:07:25,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:07:25,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:07:25,825.825 INFO    ] time= 27/06/2026 00:07:25
[2026-06-27 00:07:25,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:07:25,828.828 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:07:25,865.865 INFO    ] No existing commands found in stream
[2026-06-27 00:07:30,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:07:30,877.877 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-27 00:07:33,231.231 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 00:07:33,233.233 INFO    ] Checking for system updates...
[2026-06-27 00:07:33,255.255 INFO    ] 200
[2026-06-27 00:07:33,257.257 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:07:33,290.290 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:07:33,292.292 INFO    ] No update needed
[2026-06-27 00:07:33,293.293 INFO    ] Checking for camera pi updates...
[2026-06-27 00:07:33,314.314 INFO    ] 200
[2026-06-27 00:07:33,315.315 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:07:33,339.339 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:07:33,384.384 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:07:33,385.385 INFO    ] No camera update needed
[2026-06-27 00:07:33,387.387 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:07:33,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:07:33,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:07:33,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:07:35,433.433 INFO    ] ================================================
[2026-06-27 00:07:35,448.448 INFO    ] Launching Daemon at Sat Jun 27 00:07:35 IST 2026
[2026-06-27 00:07:35,459.459 INFO    ] ================================================
[2026-06-27 00:07:35,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:07:35
[2026-06-27 00:07:36,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:07:36,274.274 INFO    ] Initializing speech engine...
[2026-06-27 00:07:36,284.284 INFO    ] 2026-06-27 00:07:36
[2026-06-27 00:07:36,491.491 INFO    ] 2026-06-27 00:07:36
[2026-06-27 00:07:36,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:07:36,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:07:36,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:07:36,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:07:36,912.912 INFO    ] time= 27/06/2026 00:07:36
[2026-06-27 00:07:36,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:07:36,945.945 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:07:37,011.011 INFO    ] No existing commands found in stream
[2026-06-27 00:07:42,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:07:42,023.023 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-27 00:07:43,510.510 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:07:43,512.512 INFO    ] Checking for system updates...
[2026-06-27 00:07:43,536.536 INFO    ] 200
[2026-06-27 00:07:43,537.537 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:07:43,570.570 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:07:43,571.571 INFO    ] No update needed
[2026-06-27 00:07:43,573.573 INFO    ] Checking for camera pi updates...
[2026-06-27 00:07:43,592.592 INFO    ] 200
[2026-06-27 00:07:43,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:07:43,619.619 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:07:43,670.670 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:07:43,672.672 INFO    ] No camera update needed
[2026-06-27 00:07:43,673.673 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:07:43,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:07:43,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:07:43,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:07:45,713.713 INFO    ] ================================================
[2026-06-27 00:07:45,734.734 INFO    ] Launching Daemon at Sat Jun 27 00:07:45 IST 2026
[2026-06-27 00:07:45,747.747 INFO    ] ================================================
[2026-06-27 00:07:46,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:07:46
[2026-06-27 00:07:46,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:07:46,612.612 INFO    ] Initializing speech engine...
[2026-06-27 00:07:46,618.618 INFO    ] 2026-06-27 00:07:46
[2026-06-27 00:07:46,843.843 INFO    ] 2026-06-27 00:07:46
[2026-06-27 00:07:46,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:07:47,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:07:47,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:07:47,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:07:47,263.263 INFO    ] time= 27/06/2026 00:07:47
[2026-06-27 00:07:47,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:07:47,297.297 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:07:47,368.368 INFO    ] No existing commands found in stream
[2026-06-27 00:07:52,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:07:52,379.379 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-27 00:07:55,934.934 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 00:07:55,936.936 INFO    ] Checking for system updates...
[2026-06-27 00:07:55,958.958 INFO    ] 200
[2026-06-27 00:07:55,959.959 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:07:55,992.992 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:07:55,994.994 INFO    ] No update needed
[2026-06-27 00:07:55,995.995 INFO    ] Checking for camera pi updates...
[2026-06-27 00:07:56,015.015 INFO    ] 200
[2026-06-27 00:07:56,016.016 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:07:56,042.042 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:07:56,078.078 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:07:56,079.079 INFO    ] No camera update needed
[2026-06-27 00:07:56,080.080 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:07:56,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:07:56,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:07:56,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:07:58,121.121 INFO    ] ================================================
[2026-06-27 00:07:58,129.129 INFO    ] Launching Daemon at Sat Jun 27 00:07:58 IST 2026
[2026-06-27 00:07:58,136.136 INFO    ] ================================================
[2026-06-27 00:07:58,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:07:58
[2026-06-27 00:07:58,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:07:58,987.987 INFO    ] Initializing speech engine...
[2026-06-27 00:07:58,991.991 INFO    ] 2026-06-27 00:07:58
[2026-06-27 00:07:59,198.198 INFO    ] 2026-06-27 00:07:59
[2026-06-27 00:07:59,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:07:59,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:07:59,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:07:59,550.550 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:07:59,616.616 INFO    ] time= 27/06/2026 00:07:59
[2026-06-27 00:07:59,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:07:59,650.650 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:07:59,717.717 INFO    ] No existing commands found in stream
[2026-06-27 00:08:04,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:08:04,736.736 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-27 00:08:07,854.854 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:08:07,855.855 INFO    ] Checking for system updates...
[2026-06-27 00:08:07,878.878 INFO    ] 200
[2026-06-27 00:08:07,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:08:07,910.910 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:08:07,912.912 INFO    ] No update needed
[2026-06-27 00:08:07,914.914 INFO    ] Checking for camera pi updates...
[2026-06-27 00:08:07,934.934 INFO    ] 200
[2026-06-27 00:08:07,935.935 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:08:07,961.961 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:08:08,011.011 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:08:08,012.012 INFO    ] No camera update needed
[2026-06-27 00:08:08,014.014 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:08:08,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:08:08,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:08:08,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:08:10,062.062 INFO    ] ================================================
[2026-06-27 00:08:10,077.077 INFO    ] Launching Daemon at Sat Jun 27 00:08:10 IST 2026
[2026-06-27 00:08:10,089.089 INFO    ] ================================================
[2026-06-27 00:08:10,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:08:10
[2026-06-27 00:08:10,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:08:10,876.876 INFO    ] Initializing speech engine...
[2026-06-27 00:08:10,886.886 INFO    ] 2026-06-27 00:08:10
[2026-06-27 00:08:11,094.094 INFO    ] 2026-06-27 00:08:11
[2026-06-27 00:08:11,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:08:11,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:08:11,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:08:11,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:08:11,517.517 INFO    ] time= 27/06/2026 00:08:11
[2026-06-27 00:08:11,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:08:11,545.545 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:08:11,637.637 INFO    ] No existing commands found in stream
[2026-06-27 00:08:16,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:08:16,654.654 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-27 00:08:19,890.890 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 00:08:19,891.891 INFO    ] Checking for system updates...
[2026-06-27 00:08:19,914.914 INFO    ] 200
[2026-06-27 00:08:19,915.915 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:08:19,946.946 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:08:19,947.947 INFO    ] No update needed
[2026-06-27 00:08:19,948.948 INFO    ] Checking for camera pi updates...
[2026-06-27 00:08:19,969.969 INFO    ] 200
[2026-06-27 00:08:19,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:08:19,996.996 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:08:20,041.041 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:08:20,042.042 INFO    ] No camera update needed
[2026-06-27 00:08:20,043.043 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:08:20,045.045 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:08:20,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:08:20,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:08:22,089.089 INFO    ] ================================================
[2026-06-27 00:08:22,105.105 INFO    ] Launching Daemon at Sat Jun 27 00:08:22 IST 2026
[2026-06-27 00:08:22,116.116 INFO    ] ================================================
[2026-06-27 00:08:22,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:08:22
[2026-06-27 00:08:22,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:08:22,927.927 INFO    ] Initializing speech engine...
[2026-06-27 00:08:22,932.932 INFO    ] 2026-06-27 00:08:22
[2026-06-27 00:08:23,165.165 INFO    ] 2026-06-27 00:08:23
[2026-06-27 00:08:23,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:08:23,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:08:23,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:08:23,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:08:23,590.590 INFO    ] time= 27/06/2026 00:08:23
[2026-06-27 00:08:23,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:08:23,653.653 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:08:23,733.733 INFO    ] No existing commands found in stream
[2026-06-27 00:08:28,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:08:28,749.749 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-27 00:08:30,647.647 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 00:08:30,648.648 INFO    ] Checking for system updates...
[2026-06-27 00:08:30,670.670 INFO    ] 200
[2026-06-27 00:08:30,672.672 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:08:30,703.703 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:08:30,704.704 INFO    ] No update needed
[2026-06-27 00:08:30,706.706 INFO    ] Checking for camera pi updates...
[2026-06-27 00:08:30,727.727 INFO    ] 200
[2026-06-27 00:08:30,728.728 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:08:30,754.754 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:08:30,802.802 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:08:30,804.804 INFO    ] No camera update needed
[2026-06-27 00:08:30,805.805 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:08:30,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:08:30,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:08:30,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:08:32,844.844 INFO    ] ================================================
[2026-06-27 00:08:32,860.860 INFO    ] Launching Daemon at Sat Jun 27 00:08:32 IST 2026
[2026-06-27 00:08:32,871.871 INFO    ] ================================================
[2026-06-27 00:08:33,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:08:33
[2026-06-27 00:08:33,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:08:33,664.664 INFO    ] Initializing speech engine...
[2026-06-27 00:08:33,669.669 INFO    ] 2026-06-27 00:08:33
[2026-06-27 00:08:33,877.877 INFO    ] 2026-06-27 00:08:33
[2026-06-27 00:08:33,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:08:34,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:08:34,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:08:34,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:08:34,299.299 INFO    ] time= 27/06/2026 00:08:34
[2026-06-27 00:08:34,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:08:34,327.327 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:08:34,394.394 INFO    ] No existing commands found in stream
[2026-06-27 00:08:39,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:08:39,407.407 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-27 00:08:40,395.395 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 00:08:40,397.397 INFO    ] Checking for system updates...
[2026-06-27 00:08:40,418.418 INFO    ] 200
[2026-06-27 00:08:40,419.419 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:08:40,450.450 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:08:40,452.452 INFO    ] No update needed
[2026-06-27 00:08:40,453.453 INFO    ] Checking for camera pi updates...
[2026-06-27 00:08:40,473.473 INFO    ] 200
[2026-06-27 00:08:40,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:08:40,499.499 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:08:40,537.537 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:08:40,539.539 INFO    ] No camera update needed
[2026-06-27 00:08:40,540.540 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:08:40,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:08:40,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:08:40,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:08:42,589.589 INFO    ] ================================================
[2026-06-27 00:08:42,606.606 INFO    ] Launching Daemon at Sat Jun 27 00:08:42 IST 2026
[2026-06-27 00:08:42,616.616 INFO    ] ================================================
[2026-06-27 00:08:43,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:08:43
[2026-06-27 00:08:43,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:08:43,505.505 INFO    ] Initializing speech engine...
[2026-06-27 00:08:43,510.510 INFO    ] 2026-06-27 00:08:43
[2026-06-27 00:08:43,719.719 INFO    ] 2026-06-27 00:08:43
[2026-06-27 00:08:43,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:08:43,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:08:43,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:08:44,074.074 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:08:44,122.122 INFO    ] time= 27/06/2026 00:08:44
[2026-06-27 00:08:44,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:08:44,167.167 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:08:44,239.239 INFO    ] No existing commands found in stream
[2026-06-27 00:08:49,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:08:49,254.254 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-27 00:08:52,744.744 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 00:08:52,746.746 INFO    ] Checking for system updates...
[2026-06-27 00:08:52,767.767 INFO    ] 200
[2026-06-27 00:08:52,768.768 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:08:52,802.802 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:08:52,803.803 INFO    ] No update needed
[2026-06-27 00:08:52,805.805 INFO    ] Checking for camera pi updates...
[2026-06-27 00:08:52,826.826 INFO    ] 200
[2026-06-27 00:08:52,827.827 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:08:52,850.850 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:08:52,894.894 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:08:52,896.896 INFO    ] No camera update needed
[2026-06-27 00:08:52,897.897 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:08:52,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:08:52,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:08:52,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:08:54,942.942 INFO    ] ================================================
[2026-06-27 00:08:54,957.957 INFO    ] Launching Daemon at Sat Jun 27 00:08:54 IST 2026
[2026-06-27 00:08:54,968.968 INFO    ] ================================================
[2026-06-27 00:08:55,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:08:55
[2026-06-27 00:08:55,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:08:55,743.743 INFO    ] Initializing speech engine...
[2026-06-27 00:08:55,753.753 INFO    ] 2026-06-27 00:08:55
[2026-06-27 00:08:55,957.957 INFO    ] 2026-06-27 00:08:55
[2026-06-27 00:08:55,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:08:56,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:08:56,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:08:56,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:08:56,367.367 INFO    ] time= 27/06/2026 00:08:56
[2026-06-27 00:08:56,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:08:56,402.402 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:08:56,472.472 INFO    ] No existing commands found in stream
[2026-06-27 00:09:01,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:09:01,486.486 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-27 00:09:03,233.233 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 00:09:03,235.235 INFO    ] Checking for system updates...
[2026-06-27 00:09:03,257.257 INFO    ] 200
[2026-06-27 00:09:03,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:09:03,290.290 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:09:03,291.291 INFO    ] No update needed
[2026-06-27 00:09:03,292.292 INFO    ] Checking for camera pi updates...
[2026-06-27 00:09:03,315.315 INFO    ] 200
[2026-06-27 00:09:03,316.316 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:09:03,339.339 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:09:03,384.384 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:09:03,385.385 INFO    ] No camera update needed
[2026-06-27 00:09:03,386.386 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:09:03,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:09:03,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:09:03,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:09:05,435.435 INFO    ] ================================================
[2026-06-27 00:09:05,452.452 INFO    ] Launching Daemon at Sat Jun 27 00:09:05 IST 2026
[2026-06-27 00:09:05,463.463 INFO    ] ================================================
[2026-06-27 00:09:05,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:09:05
[2026-06-27 00:09:06,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:09:06,287.287 INFO    ] Initializing speech engine...
[2026-06-27 00:09:06,293.293 INFO    ] 2026-06-27 00:09:06
[2026-06-27 00:09:06,496.496 INFO    ] 2026-06-27 00:09:06
[2026-06-27 00:09:06,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:09:06,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:09:06,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:09:06,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:09:06,909.909 INFO    ] time= 27/06/2026 00:09:06
[2026-06-27 00:09:06,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:09:06,941.941 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:09:07,008.008 INFO    ] No existing commands found in stream
[2026-06-27 00:09:12,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:09:12,017.017 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-27 00:09:13,216.216 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 00:09:13,217.217 INFO    ] Checking for system updates...
[2026-06-27 00:09:13,238.238 INFO    ] 200
[2026-06-27 00:09:13,239.239 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:09:13,272.272 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:09:13,274.274 INFO    ] No update needed
[2026-06-27 00:09:13,275.275 INFO    ] Checking for camera pi updates...
[2026-06-27 00:09:13,295.295 INFO    ] 200
[2026-06-27 00:09:13,296.296 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:09:13,321.321 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:09:13,347.347 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:09:13,348.348 INFO    ] No camera update needed
[2026-06-27 00:09:13,349.349 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:09:13,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:09:13,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:09:13,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:09:15,396.396 INFO    ] ================================================
[2026-06-27 00:09:15,413.413 INFO    ] Launching Daemon at Sat Jun 27 00:09:15 IST 2026
[2026-06-27 00:09:15,425.425 INFO    ] ================================================
[2026-06-27 00:09:15,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:09:15
[2026-06-27 00:09:16,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:09:16,242.242 INFO    ] Initializing speech engine...
[2026-06-27 00:09:16,252.252 INFO    ] 2026-06-27 00:09:16
[2026-06-27 00:09:16,456.456 INFO    ] 2026-06-27 00:09:16
[2026-06-27 00:09:16,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:09:16,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:09:16,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:09:16,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:09:16,866.866 INFO    ] time= 27/06/2026 00:09:16
[2026-06-27 00:09:16,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:09:16,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:09:16,970.970 INFO    ] No existing commands found in stream
[2026-06-27 00:09:21,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:09:21,983.983 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-27 00:09:26,479.479 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 00:09:26,480.480 INFO    ] Checking for system updates...
[2026-06-27 00:09:26,501.501 INFO    ] 200
[2026-06-27 00:09:26,503.503 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:09:26,537.537 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:09:26,538.538 INFO    ] No update needed
[2026-06-27 00:09:26,540.540 INFO    ] Checking for camera pi updates...
[2026-06-27 00:09:26,560.560 INFO    ] 200
[2026-06-27 00:09:26,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:09:26,587.587 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:09:26,725.725 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:09:26,727.727 INFO    ] No camera update needed
[2026-06-27 00:09:26,728.728 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:09:26,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:09:26,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:09:26,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:09:28,766.766 INFO    ] ================================================
[2026-06-27 00:09:28,775.775 INFO    ] Launching Daemon at Sat Jun 27 00:09:28 IST 2026
[2026-06-27 00:09:28,782.782 INFO    ] ================================================
[2026-06-27 00:09:29,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:09:29
[2026-06-27 00:09:29,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:09:29,561.561 INFO    ] Initializing speech engine...
[2026-06-27 00:09:29,566.566 INFO    ] 2026-06-27 00:09:29
[2026-06-27 00:09:29,770.770 INFO    ] 2026-06-27 00:09:29
[2026-06-27 00:09:29,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:09:29,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:09:29,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:09:30,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:09:30,190.190 INFO    ] time= 27/06/2026 00:09:30
[2026-06-27 00:09:30,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:09:30,220.220 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:09:30,288.288 INFO    ] No existing commands found in stream
[2026-06-27 00:09:35,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:09:35,305.305 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-27 00:09:36,412.412 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 00:09:36,413.413 INFO    ] Checking for system updates...
[2026-06-27 00:09:36,434.434 INFO    ] 200
[2026-06-27 00:09:36,436.436 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:09:36,470.470 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:09:36,472.472 INFO    ] No update needed
[2026-06-27 00:09:36,473.473 INFO    ] Checking for camera pi updates...
[2026-06-27 00:09:36,493.493 INFO    ] 200
[2026-06-27 00:09:36,495.495 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:09:36,521.521 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:09:36,564.564 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:09:36,565.565 INFO    ] No camera update needed
[2026-06-27 00:09:36,567.567 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:09:36,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:09:36,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:09:36,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:09:38,614.614 INFO    ] ================================================
[2026-06-27 00:09:38,630.630 INFO    ] Launching Daemon at Sat Jun 27 00:09:38 IST 2026
[2026-06-27 00:09:38,642.642 INFO    ] ================================================
[2026-06-27 00:09:39,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:09:39
[2026-06-27 00:09:39,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:09:39,457.457 INFO    ] Initializing speech engine...
[2026-06-27 00:09:39,461.461 INFO    ] 2026-06-27 00:09:39
[2026-06-27 00:09:39,682.682 INFO    ] 2026-06-27 00:09:39
[2026-06-27 00:09:39,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:09:39,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:09:39,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:09:40,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:09:40,107.107 INFO    ] time= 27/06/2026 00:09:40
[2026-06-27 00:09:40,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:09:40,136.136 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:09:40,201.201 INFO    ] No existing commands found in stream
[2026-06-27 00:09:45,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:09:45,215.215 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-27 00:09:46,445.445 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 00:09:46,446.446 INFO    ] Checking for system updates...
[2026-06-27 00:09:46,470.470 INFO    ] 200
[2026-06-27 00:09:46,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:09:46,506.506 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:09:46,507.507 INFO    ] No update needed
[2026-06-27 00:09:46,509.509 INFO    ] Checking for camera pi updates...
[2026-06-27 00:09:46,528.528 INFO    ] 200
[2026-06-27 00:09:46,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:09:46,555.555 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:09:46,605.605 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:09:46,607.607 INFO    ] No camera update needed
[2026-06-27 00:09:46,608.608 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:09:46,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:09:46,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:09:46,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:09:48,654.654 INFO    ] ================================================
[2026-06-27 00:09:48,670.670 INFO    ] Launching Daemon at Sat Jun 27 00:09:48 IST 2026
[2026-06-27 00:09:48,682.682 INFO    ] ================================================
[2026-06-27 00:09:49,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:09:49
[2026-06-27 00:09:49,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:09:49,598.598 INFO    ] Initializing speech engine...
[2026-06-27 00:09:49,605.605 INFO    ] 2026-06-27 00:09:49
[2026-06-27 00:09:49,811.811 INFO    ] 2026-06-27 00:09:49
[2026-06-27 00:09:49,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:09:50,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:09:50,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:09:50,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:09:50,236.236 INFO    ] time= 27/06/2026 00:09:50
[2026-06-27 00:09:50,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:09:50,264.264 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:09:50,331.331 INFO    ] No existing commands found in stream
[2026-06-27 00:09:55,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:09:55,349.349 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-27 00:09:57,372.372 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 00:09:57,373.373 INFO    ] Checking for system updates...
[2026-06-27 00:09:57,395.395 INFO    ] 200
[2026-06-27 00:09:57,396.396 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:09:57,457.457 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:09:57,459.459 INFO    ] No update needed
[2026-06-27 00:09:57,461.461 INFO    ] Checking for camera pi updates...
[2026-06-27 00:09:57,495.495 INFO    ] 200
[2026-06-27 00:09:57,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:09:57,540.540 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:09:57,585.585 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:09:57,587.587 INFO    ] No camera update needed
[2026-06-27 00:09:57,590.590 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:09:57,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:09:57,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:09:57,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:09:59,645.645 INFO    ] ================================================
[2026-06-27 00:09:59,661.661 INFO    ] Launching Daemon at Sat Jun 27 00:09:59 IST 2026
[2026-06-27 00:09:59,673.673 INFO    ] ================================================
[2026-06-27 00:10:00,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:10:00
[2026-06-27 00:10:00,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:10:00,501.501 INFO    ] Initializing speech engine...
[2026-06-27 00:10:00,506.506 INFO    ] 2026-06-27 00:10:00
[2026-06-27 00:10:00,712.712 INFO    ] 2026-06-27 00:10:00
[2026-06-27 00:10:00,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:10:00,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:10:00,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:10:01,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:10:01,138.138 INFO    ] time= 27/06/2026 00:10:01
[2026-06-27 00:10:01,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:10:01,169.169 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:10:01,237.237 INFO    ] No existing commands found in stream
[2026-06-27 00:10:06,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:10:06,254.254 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-27 00:10:09,503.503 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 00:10:09,505.505 INFO    ] Checking for system updates...
[2026-06-27 00:10:09,528.528 INFO    ] 200
[2026-06-27 00:10:09,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:10:09,566.566 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:10:09,568.568 INFO    ] No update needed
[2026-06-27 00:10:09,569.569 INFO    ] Checking for camera pi updates...
[2026-06-27 00:10:09,592.592 INFO    ] 200
[2026-06-27 00:10:09,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:10:09,617.617 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:10:09,667.667 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:10:09,669.669 INFO    ] No camera update needed
[2026-06-27 00:10:09,670.670 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:10:09,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:10:09,675.675 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:10:09,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:10:11,719.719 INFO    ] ================================================
[2026-06-27 00:10:11,736.736 INFO    ] Launching Daemon at Sat Jun 27 00:10:11 IST 2026
[2026-06-27 00:10:11,748.748 INFO    ] ================================================
[2026-06-27 00:10:12,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:10:12
[2026-06-27 00:10:12,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:10:12,519.519 INFO    ] Initializing speech engine...
[2026-06-27 00:10:12,523.523 INFO    ] 2026-06-27 00:10:12
[2026-06-27 00:10:12,741.741 INFO    ] 2026-06-27 00:10:12
[2026-06-27 00:10:12,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:10:12,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:10:12,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:10:13,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:10:13,169.169 INFO    ] time= 27/06/2026 00:10:13
[2026-06-27 00:10:13,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:10:13,198.198 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:10:13,266.266 INFO    ] No existing commands found in stream
[2026-06-27 00:10:18,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:10:18,283.283 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-27 00:10:22,577.577 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 00:10:22,579.579 INFO    ] Checking for system updates...
[2026-06-27 00:10:22,601.601 INFO    ] 200
[2026-06-27 00:10:22,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:10:22,637.637 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:10:22,639.639 INFO    ] No update needed
[2026-06-27 00:10:22,640.640 INFO    ] Checking for camera pi updates...
[2026-06-27 00:10:22,664.664 INFO    ] 200
[2026-06-27 00:10:22,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:10:22,690.690 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:10:22,732.732 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:10:22,735.735 INFO    ] No camera update needed
[2026-06-27 00:10:22,737.737 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:10:22,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:10:22,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:10:22,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:10:24,783.783 INFO    ] ================================================
[2026-06-27 00:10:24,799.799 INFO    ] Launching Daemon at Sat Jun 27 00:10:24 IST 2026
[2026-06-27 00:10:24,811.811 INFO    ] ================================================
[2026-06-27 00:10:25,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:10:25
[2026-06-27 00:10:25,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:10:25,602.602 INFO    ] Initializing speech engine...
[2026-06-27 00:10:25,612.612 INFO    ] 2026-06-27 00:10:25
[2026-06-27 00:10:25,818.818 INFO    ] 2026-06-27 00:10:25
[2026-06-27 00:10:25,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:10:26,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:10:26,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:10:26,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:10:26,233.233 INFO    ] time= 27/06/2026 00:10:26
[2026-06-27 00:10:26,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:10:26,262.262 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:10:26,357.357 INFO    ] No existing commands found in stream
[2026-06-27 00:10:31,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:10:31,379.379 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-27 00:10:33,108.108 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 00:10:33,110.110 INFO    ] Checking for system updates...
[2026-06-27 00:10:33,131.131 INFO    ] 200
[2026-06-27 00:10:33,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:10:33,162.162 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:10:33,164.164 INFO    ] No update needed
[2026-06-27 00:10:33,165.165 INFO    ] Checking for camera pi updates...
[2026-06-27 00:10:33,185.185 INFO    ] 200
[2026-06-27 00:10:33,186.186 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:10:33,210.210 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:10:33,252.252 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:10:33,254.254 INFO    ] No camera update needed
[2026-06-27 00:10:33,255.255 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:10:33,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:10:33,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:10:33,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:10:35,300.300 INFO    ] ================================================
[2026-06-27 00:10:35,316.316 INFO    ] Launching Daemon at Sat Jun 27 00:10:35 IST 2026
[2026-06-27 00:10:35,327.327 INFO    ] ================================================
[2026-06-27 00:10:35,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:10:35
[2026-06-27 00:10:35,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:10:36,108.108 INFO    ] Initializing speech engine...
[2026-06-27 00:10:36,113.113 INFO    ] 2026-06-27 00:10:36
[2026-06-27 00:10:36,332.332 INFO    ] 2026-06-27 00:10:36
[2026-06-27 00:10:36,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:10:36,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:10:36,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:10:36,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:10:36,743.743 INFO    ] time= 27/06/2026 00:10:36
[2026-06-27 00:10:36,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:10:36,785.785 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:10:36,857.857 INFO    ] No existing commands found in stream
[2026-06-27 00:10:41,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:10:41,866.866 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-27 00:10:43,114.114 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 00:10:43,115.115 INFO    ] Checking for system updates...
[2026-06-27 00:10:43,138.138 INFO    ] 200
[2026-06-27 00:10:43,139.139 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:10:43,169.169 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:10:43,171.171 INFO    ] No update needed
[2026-06-27 00:10:43,172.172 INFO    ] Checking for camera pi updates...
[2026-06-27 00:10:43,191.191 INFO    ] 200
[2026-06-27 00:10:43,193.193 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:10:43,217.217 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:10:43,243.243 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:10:43,245.245 INFO    ] No camera update needed
[2026-06-27 00:10:43,246.246 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:10:43,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:10:43,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:10:43,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:10:45,291.291 INFO    ] ================================================
[2026-06-27 00:10:45,306.306 INFO    ] Launching Daemon at Sat Jun 27 00:10:45 IST 2026
[2026-06-27 00:10:45,317.317 INFO    ] ================================================
[2026-06-27 00:10:45,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:10:45
[2026-06-27 00:10:46,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:10:46,224.224 INFO    ] Initializing speech engine...
[2026-06-27 00:10:46,230.230 INFO    ] 2026-06-27 00:10:46
[2026-06-27 00:10:46,445.445 INFO    ] 2026-06-27 00:10:46
[2026-06-27 00:10:46,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:10:46,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:10:46,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:10:46,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:10:46,875.875 INFO    ] time= 27/06/2026 00:10:46
[2026-06-27 00:10:46,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:10:46,903.903 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:10:46,972.972 INFO    ] No existing commands found in stream
[2026-06-27 00:10:51,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:10:51,986.986 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-27 00:10:53,411.411 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 00:10:53,414.414 INFO    ] Checking for system updates...
[2026-06-27 00:10:53,456.456 INFO    ] 200
[2026-06-27 00:10:53,457.457 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:10:53,487.487 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:10:53,489.489 INFO    ] No update needed
[2026-06-27 00:10:53,490.490 INFO    ] Checking for camera pi updates...
[2026-06-27 00:10:53,510.510 INFO    ] 200
[2026-06-27 00:10:53,511.511 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:10:53,534.534 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:10:53,563.563 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:10:53,564.564 INFO    ] No camera update needed
[2026-06-27 00:10:53,566.566 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:10:53,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:10:53,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:10:53,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:10:55,611.611 INFO    ] ================================================
[2026-06-27 00:10:55,626.626 INFO    ] Launching Daemon at Sat Jun 27 00:10:55 IST 2026
[2026-06-27 00:10:55,637.637 INFO    ] ================================================
[2026-06-27 00:10:56,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:10:56
[2026-06-27 00:10:56,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:10:56,509.509 INFO    ] Initializing speech engine...
[2026-06-27 00:10:56,515.515 INFO    ] 2026-06-27 00:10:56
[2026-06-27 00:10:56,727.727 INFO    ] 2026-06-27 00:10:56
[2026-06-27 00:10:56,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:10:56,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:10:56,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:10:57,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:10:57,155.155 INFO    ] time= 27/06/2026 00:10:57
[2026-06-27 00:10:57,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:10:57,186.186 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:10:57,278.278 INFO    ] No existing commands found in stream
[2026-06-27 00:11:02,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:11:02,287.287 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-27 00:11:05,279.279 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:11:05,280.280 INFO    ] Checking for system updates...
[2026-06-27 00:11:05,301.301 INFO    ] 200
[2026-06-27 00:11:05,302.302 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:11:05,336.336 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:11:05,337.337 INFO    ] No update needed
[2026-06-27 00:11:05,339.339 INFO    ] Checking for camera pi updates...
[2026-06-27 00:11:05,360.360 INFO    ] 200
[2026-06-27 00:11:05,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:11:05,391.391 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:11:05,436.436 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:11:05,437.437 INFO    ] No camera update needed
[2026-06-27 00:11:05,438.438 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:11:05,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:11:05,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:11:05,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:11:07,484.484 INFO    ] ================================================
[2026-06-27 00:11:07,499.499 INFO    ] Launching Daemon at Sat Jun 27 00:11:07 IST 2026
[2026-06-27 00:11:07,510.510 INFO    ] ================================================
[2026-06-27 00:11:07,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:11:07
[2026-06-27 00:11:08,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:11:08,379.379 INFO    ] Initializing speech engine...
[2026-06-27 00:11:08,384.384 INFO    ] 2026-06-27 00:11:08
[2026-06-27 00:11:08,596.596 INFO    ] 2026-06-27 00:11:08
[2026-06-27 00:11:08,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:11:08,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:11:08,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:11:08,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:11:09,017.017 INFO    ] time= 27/06/2026 00:11:08
[2026-06-27 00:11:09,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:11:09,047.047 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:11:09,114.114 INFO    ] No existing commands found in stream
[2026-06-27 00:11:14,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:11:14,132.132 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-27 00:11:15,712.712 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 00:11:15,715.715 INFO    ] Checking for system updates...
[2026-06-27 00:11:15,757.757 INFO    ] 200
[2026-06-27 00:11:15,760.760 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:11:15,803.803 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:11:15,805.805 INFO    ] No update needed
[2026-06-27 00:11:15,806.806 INFO    ] Checking for camera pi updates...
[2026-06-27 00:11:15,828.828 INFO    ] 200
[2026-06-27 00:11:15,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:11:15,853.853 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:11:15,898.898 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:11:15,900.900 INFO    ] No camera update needed
[2026-06-27 00:11:15,901.901 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:11:15,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:11:15,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:11:15,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:11:17,946.946 INFO    ] ================================================
[2026-06-27 00:11:17,961.961 INFO    ] Launching Daemon at Sat Jun 27 00:11:17 IST 2026
[2026-06-27 00:11:17,972.972 INFO    ] ================================================
[2026-06-27 00:11:18,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:11:18
[2026-06-27 00:11:18,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:11:18,784.784 INFO    ] Initializing speech engine...
[2026-06-27 00:11:18,789.789 INFO    ] 2026-06-27 00:11:18
[2026-06-27 00:11:18,992.992 INFO    ] 2026-06-27 00:11:18
[2026-06-27 00:11:19,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:11:19,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:11:19,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:11:19,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:11:19,411.411 INFO    ] time= 27/06/2026 00:11:19
[2026-06-27 00:11:19,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:11:19,447.447 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:11:19,513.513 INFO    ] No existing commands found in stream
[2026-06-27 00:11:24,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:11:24,526.526 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-27 00:11:26,341.341 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 00:11:26,342.342 INFO    ] Checking for system updates...
[2026-06-27 00:11:26,367.367 INFO    ] 200
[2026-06-27 00:11:26,369.369 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:11:26,406.406 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:11:26,408.408 INFO    ] No update needed
[2026-06-27 00:11:26,410.410 INFO    ] Checking for camera pi updates...
[2026-06-27 00:11:26,432.432 INFO    ] 200
[2026-06-27 00:11:26,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:11:26,457.457 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:11:26,509.509 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:11:26,510.510 INFO    ] No camera update needed
[2026-06-27 00:11:26,511.511 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:11:26,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:11:26,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:11:26,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:11:28,558.558 INFO    ] ================================================
[2026-06-27 00:11:28,573.573 INFO    ] Launching Daemon at Sat Jun 27 00:11:28 IST 2026
[2026-06-27 00:11:28,584.584 INFO    ] ================================================
[2026-06-27 00:11:28,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:11:28
[2026-06-27 00:11:29,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:11:29,371.371 INFO    ] Initializing speech engine...
[2026-06-27 00:11:29,384.384 INFO    ] 2026-06-27 00:11:29
[2026-06-27 00:11:29,593.593 INFO    ] 2026-06-27 00:11:29
[2026-06-27 00:11:29,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:11:29,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:11:29,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:11:29,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:11:30,030.030 INFO    ] time= 27/06/2026 00:11:30
[2026-06-27 00:11:30,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:11:30,038.038 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:11:30,104.104 INFO    ] No existing commands found in stream
[2026-06-27 00:11:35,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:11:35,118.118 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-27 00:11:37,439.439 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 00:11:37,441.441 INFO    ] Checking for system updates...
[2026-06-27 00:11:37,464.464 INFO    ] 200
[2026-06-27 00:11:37,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:11:37,500.500 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:11:37,501.501 INFO    ] No update needed
[2026-06-27 00:11:37,502.502 INFO    ] Checking for camera pi updates...
[2026-06-27 00:11:37,526.526 INFO    ] 200
[2026-06-27 00:11:37,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:11:37,557.557 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:11:37,601.601 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:11:37,602.602 INFO    ] No camera update needed
[2026-06-27 00:11:37,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:11:37,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:11:37,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:11:37,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:11:39,650.650 INFO    ] ================================================
[2026-06-27 00:11:39,666.666 INFO    ] Launching Daemon at Sat Jun 27 00:11:39 IST 2026
[2026-06-27 00:11:39,677.677 INFO    ] ================================================
[2026-06-27 00:11:40,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:11:40
[2026-06-27 00:11:40,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:11:40,477.477 INFO    ] Initializing speech engine...
[2026-06-27 00:11:40,481.481 INFO    ] 2026-06-27 00:11:40
[2026-06-27 00:11:40,701.701 INFO    ] 2026-06-27 00:11:40
[2026-06-27 00:11:40,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:11:40,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:11:40,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:11:41,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:11:41,127.127 INFO    ] time= 27/06/2026 00:11:41
[2026-06-27 00:11:41,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:11:41,157.157 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:11:41,224.224 INFO    ] No existing commands found in stream
[2026-06-27 00:11:46,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:11:46,236.236 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-27 00:11:46,794.794 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 00:11:46,796.796 INFO    ] Checking for system updates...
[2026-06-27 00:11:46,816.816 INFO    ] 200
[2026-06-27 00:11:46,818.818 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:11:46,851.851 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:11:46,852.852 INFO    ] No update needed
[2026-06-27 00:11:46,853.853 INFO    ] Checking for camera pi updates...
[2026-06-27 00:11:46,873.873 INFO    ] 200
[2026-06-27 00:11:46,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:11:46,898.898 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:11:46,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:11:46,941.941 INFO    ] No camera update needed
[2026-06-27 00:11:46,942.942 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:11:46,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:11:46,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:11:46,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:11:48,980.980 INFO    ] ================================================
[2026-06-27 00:11:48,989.989 INFO    ] Launching Daemon at Sat Jun 27 00:11:48 IST 2026
[2026-06-27 00:11:48,995.995 INFO    ] ================================================
[2026-06-27 00:11:49,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:11:49
[2026-06-27 00:11:49,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:11:49,808.808 INFO    ] Initializing speech engine...
[2026-06-27 00:11:49,812.812 INFO    ] 2026-06-27 00:11:49
[2026-06-27 00:11:50,025.025 INFO    ] 2026-06-27 00:11:50
[2026-06-27 00:11:50,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:11:50,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:11:50,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:11:50,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:11:50,433.433 INFO    ] time= 27/06/2026 00:11:50
[2026-06-27 00:11:50,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:11:50,520.520 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:11:50,619.619 INFO    ] No existing commands found in stream
[2026-06-27 00:11:55,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:11:55,631.631 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-27 00:11:58,495.495 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 00:11:58,497.497 INFO    ] Checking for system updates...
[2026-06-27 00:11:58,517.517 INFO    ] 200
[2026-06-27 00:11:58,518.518 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:11:58,554.554 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:11:58,555.555 INFO    ] No update needed
[2026-06-27 00:11:58,556.556 INFO    ] Checking for camera pi updates...
[2026-06-27 00:11:58,576.576 INFO    ] 200
[2026-06-27 00:11:58,577.577 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:11:58,601.601 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:11:58,655.655 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:11:58,656.656 INFO    ] No camera update needed
[2026-06-27 00:11:58,658.658 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:11:58,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:11:58,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:11:58,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:12:00,705.705 INFO    ] ================================================
[2026-06-27 00:12:00,720.720 INFO    ] Launching Daemon at Sat Jun 27 00:12:00 IST 2026
[2026-06-27 00:12:00,732.732 INFO    ] ================================================
[2026-06-27 00:12:01,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:12:01
[2026-06-27 00:12:01,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:12:01,714.714 INFO    ] Initializing speech engine...
[2026-06-27 00:12:01,718.718 INFO    ] 2026-06-27 00:12:01
[2026-06-27 00:12:02,026.026 INFO    ] 2026-06-27 00:12:02
[2026-06-27 00:12:02,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:12:02,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:12:02,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:12:02,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:12:02,401.401 INFO    ] time= 27/06/2026 00:12:02
[2026-06-27 00:12:02,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:12:02,485.485 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:12:02,564.564 INFO    ] No existing commands found in stream
[2026-06-27 00:12:07,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:12:07,577.577 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-27 00:12:11,150.150 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 00:12:11,152.152 INFO    ] Checking for system updates...
[2026-06-27 00:12:11,180.180 INFO    ] 200
[2026-06-27 00:12:11,181.181 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:12:11,221.221 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:12:11,223.223 INFO    ] No update needed
[2026-06-27 00:12:11,225.225 INFO    ] Checking for camera pi updates...
[2026-06-27 00:12:11,246.246 INFO    ] 200
[2026-06-27 00:12:11,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:12:11,272.272 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:12:11,316.316 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:12:11,317.317 INFO    ] No camera update needed
[2026-06-27 00:12:11,319.319 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:12:11,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:12:11,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:12:11,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:12:13,364.364 INFO    ] ================================================
[2026-06-27 00:12:13,380.380 INFO    ] Launching Daemon at Sat Jun 27 00:12:13 IST 2026
[2026-06-27 00:12:13,390.390 INFO    ] ================================================
[2026-06-27 00:12:13,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:12:13
[2026-06-27 00:12:14,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:12:14,194.194 INFO    ] Initializing speech engine...
[2026-06-27 00:12:14,200.200 INFO    ] 2026-06-27 00:12:14
[2026-06-27 00:12:14,403.403 INFO    ] 2026-06-27 00:12:14
[2026-06-27 00:12:14,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:12:14,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:12:14,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:12:14,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:12:14,821.821 INFO    ] time= 27/06/2026 00:12:14
[2026-06-27 00:12:14,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:12:14,851.851 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:12:14,919.919 INFO    ] No existing commands found in stream
[2026-06-27 00:12:19,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:12:19,929.929 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-27 00:12:22,697.697 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 00:12:22,698.698 INFO    ] Checking for system updates...
[2026-06-27 00:12:22,719.719 INFO    ] 200
[2026-06-27 00:12:22,721.721 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:12:22,751.751 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:12:22,752.752 INFO    ] No update needed
[2026-06-27 00:12:22,754.754 INFO    ] Checking for camera pi updates...
[2026-06-27 00:12:22,775.775 INFO    ] 200
[2026-06-27 00:12:22,776.776 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:12:22,801.801 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:12:22,847.847 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:12:22,848.848 INFO    ] No camera update needed
[2026-06-27 00:12:22,850.850 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:12:22,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:12:22,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:12:22,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:12:24,895.895 INFO    ] ================================================
[2026-06-27 00:12:24,911.911 INFO    ] Launching Daemon at Sat Jun 27 00:12:24 IST 2026
[2026-06-27 00:12:24,922.922 INFO    ] ================================================
[2026-06-27 00:12:25,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:12:25
[2026-06-27 00:12:25,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:12:25,701.701 INFO    ] Initializing speech engine...
[2026-06-27 00:12:25,711.711 INFO    ] 2026-06-27 00:12:25
[2026-06-27 00:12:25,916.916 INFO    ] 2026-06-27 00:12:25
[2026-06-27 00:12:25,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:12:26,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:12:26,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:12:26,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:12:26,324.324 INFO    ] time= 27/06/2026 00:12:26
[2026-06-27 00:12:26,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:12:26,362.362 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:12:26,429.429 INFO    ] No existing commands found in stream
[2026-06-27 00:12:31,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:12:31,441.441 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-27 00:12:34,617.617 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 00:12:34,619.619 INFO    ] Checking for system updates...
[2026-06-27 00:12:34,639.639 INFO    ] 200
[2026-06-27 00:12:34,641.641 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:12:34,674.674 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:12:34,675.675 INFO    ] No update needed
[2026-06-27 00:12:34,677.677 INFO    ] Checking for camera pi updates...
[2026-06-27 00:12:34,696.696 INFO    ] 200
[2026-06-27 00:12:34,697.697 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:12:34,720.720 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:12:34,766.766 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:12:34,768.768 INFO    ] No camera update needed
[2026-06-27 00:12:34,769.769 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:12:34,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:12:34,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:12:34,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:12:36,816.816 INFO    ] ================================================
[2026-06-27 00:12:36,832.832 INFO    ] Launching Daemon at Sat Jun 27 00:12:36 IST 2026
[2026-06-27 00:12:36,843.843 INFO    ] ================================================
[2026-06-27 00:12:37,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:12:37
[2026-06-27 00:12:37,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:12:37,643.643 INFO    ] Initializing speech engine...
[2026-06-27 00:12:37,648.648 INFO    ] 2026-06-27 00:12:37
[2026-06-27 00:12:37,853.853 INFO    ] 2026-06-27 00:12:37
[2026-06-27 00:12:37,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:12:38,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:12:38,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:12:38,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:12:38,271.271 INFO    ] time= 27/06/2026 00:12:38
[2026-06-27 00:12:38,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:12:38,305.305 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:12:38,377.377 INFO    ] No existing commands found in stream
[2026-06-27 00:12:43,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:12:43,386.386 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-27 00:12:46,357.357 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 00:12:46,358.358 INFO    ] Checking for system updates...
[2026-06-27 00:12:46,379.379 INFO    ] 200
[2026-06-27 00:12:46,381.381 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:12:46,416.416 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:12:46,417.417 INFO    ] No update needed
[2026-06-27 00:12:46,419.419 INFO    ] Checking for camera pi updates...
[2026-06-27 00:12:46,440.440 INFO    ] 200
[2026-06-27 00:12:46,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:12:46,466.466 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:12:46,520.520 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:12:46,522.522 INFO    ] No camera update needed
[2026-06-27 00:12:46,523.523 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:12:46,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:12:46,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:12:46,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:12:48,569.569 INFO    ] ================================================
[2026-06-27 00:12:48,586.586 INFO    ] Launching Daemon at Sat Jun 27 00:12:48 IST 2026
[2026-06-27 00:12:48,597.597 INFO    ] ================================================
[2026-06-27 00:12:48,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:12:48
[2026-06-27 00:12:49,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:12:49,466.466 INFO    ] Initializing speech engine...
[2026-06-27 00:12:49,472.472 INFO    ] 2026-06-27 00:12:49
[2026-06-27 00:12:49,684.684 INFO    ] 2026-06-27 00:12:49
[2026-06-27 00:12:49,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:12:49,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:12:49,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:12:50,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:12:50,118.118 INFO    ] time= 27/06/2026 00:12:50
[2026-06-27 00:12:50,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:12:50,149.149 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:12:50,217.217 INFO    ] No existing commands found in stream
[2026-06-27 00:12:55,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:12:55,235.235 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-27 00:12:58,352.352 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 00:12:58,354.354 INFO    ] Checking for system updates...
[2026-06-27 00:12:58,375.375 INFO    ] 200
[2026-06-27 00:12:58,377.377 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:12:58,410.410 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:12:58,412.412 INFO    ] No update needed
[2026-06-27 00:12:58,413.413 INFO    ] Checking for camera pi updates...
[2026-06-27 00:12:58,434.434 INFO    ] 200
[2026-06-27 00:12:58,435.435 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:12:58,459.459 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:12:58,505.505 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:12:58,506.506 INFO    ] No camera update needed
[2026-06-27 00:12:58,508.508 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:12:58,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:12:58,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:12:58,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:13:00,555.555 INFO    ] ================================================
[2026-06-27 00:13:00,571.571 INFO    ] Launching Daemon at Sat Jun 27 00:13:00 IST 2026
[2026-06-27 00:13:00,582.582 INFO    ] ================================================
[2026-06-27 00:13:00,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:13:00
[2026-06-27 00:13:01,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:13:01,438.438 INFO    ] Initializing speech engine...
[2026-06-27 00:13:01,449.449 INFO    ] 2026-06-27 00:13:01
[2026-06-27 00:13:01,658.658 INFO    ] 2026-06-27 00:13:01
[2026-06-27 00:13:01,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:13:01,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:13:01,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:13:01,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:13:01,970.970 INFO    ] time= 27/06/2026 00:13:01
[2026-06-27 00:13:01,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:13:01,975.975 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:13:02,029.029 INFO    ] No existing commands found in stream
[2026-06-27 00:13:07,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:13:07,037.037 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-27 00:13:10,094.094 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 00:13:10,096.096 INFO    ] Checking for system updates...
[2026-06-27 00:13:10,117.117 INFO    ] 200
[2026-06-27 00:13:10,119.119 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:13:10,149.149 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:13:10,150.150 INFO    ] No update needed
[2026-06-27 00:13:10,152.152 INFO    ] Checking for camera pi updates...
[2026-06-27 00:13:10,172.172 INFO    ] 200
[2026-06-27 00:13:10,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:13:10,198.198 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:13:10,248.248 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:13:10,250.250 INFO    ] No camera update needed
[2026-06-27 00:13:10,251.251 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:13:10,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:13:10,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:13:10,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:13:12,297.297 INFO    ] ================================================
[2026-06-27 00:13:12,313.313 INFO    ] Launching Daemon at Sat Jun 27 00:13:12 IST 2026
[2026-06-27 00:13:12,325.325 INFO    ] ================================================
[2026-06-27 00:13:12,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:13:12
[2026-06-27 00:13:13,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:13:13,170.170 INFO    ] Initializing speech engine...
[2026-06-27 00:13:13,175.175 INFO    ] 2026-06-27 00:13:13
[2026-06-27 00:13:13,384.384 INFO    ] 2026-06-27 00:13:13
[2026-06-27 00:13:13,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:13:13,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:13:13,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:13:13,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:13:13,809.809 INFO    ] time= 27/06/2026 00:13:13
[2026-06-27 00:13:13,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:13:13,840.840 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:13:13,908.908 INFO    ] No existing commands found in stream
[2026-06-27 00:13:18,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:13:18,923.923 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-27 00:13:21,106.106 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 00:13:21,108.108 INFO    ] Checking for system updates...
[2026-06-27 00:13:21,130.130 INFO    ] 200
[2026-06-27 00:13:21,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:13:21,165.165 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:13:21,166.166 INFO    ] No update needed
[2026-06-27 00:13:21,168.168 INFO    ] Checking for camera pi updates...
[2026-06-27 00:13:21,188.188 INFO    ] 200
[2026-06-27 00:13:21,190.190 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:13:21,214.214 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:13:21,262.262 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:13:21,263.263 INFO    ] No camera update needed
[2026-06-27 00:13:21,265.265 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:13:21,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:13:21,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:13:21,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:13:23,312.312 INFO    ] ================================================
[2026-06-27 00:13:23,329.329 INFO    ] Launching Daemon at Sat Jun 27 00:13:23 IST 2026
[2026-06-27 00:13:23,340.340 INFO    ] ================================================
[2026-06-27 00:13:23,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:13:23
[2026-06-27 00:13:24,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:13:24,134.134 INFO    ] Initializing speech engine...
[2026-06-27 00:13:24,138.138 INFO    ] 2026-06-27 00:13:24
[2026-06-27 00:13:24,353.353 INFO    ] 2026-06-27 00:13:24
[2026-06-27 00:13:24,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:13:25,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:13:25,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:13:25,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:13:25,864.864 INFO    ] time= 27/06/2026 00:13:25
[2026-06-27 00:13:25,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:13:25,867.867 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:13:25,914.914 INFO    ] No existing commands found in stream
[2026-06-27 00:13:30,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:13:30,926.926 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-27 00:13:34,627.627 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 00:13:34,629.629 INFO    ] Checking for system updates...
[2026-06-27 00:13:34,649.649 INFO    ] 200
[2026-06-27 00:13:34,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:13:34,683.683 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:13:34,685.685 INFO    ] No update needed
[2026-06-27 00:13:34,686.686 INFO    ] Checking for camera pi updates...
[2026-06-27 00:13:34,705.705 INFO    ] 200
[2026-06-27 00:13:34,707.707 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:13:34,730.730 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:13:34,873.873 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:13:34,874.874 INFO    ] No camera update needed
[2026-06-27 00:13:34,876.876 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:13:34,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:13:34,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:13:34,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:13:36,923.923 INFO    ] ================================================
[2026-06-27 00:13:36,939.939 INFO    ] Launching Daemon at Sat Jun 27 00:13:36 IST 2026
[2026-06-27 00:13:36,950.950 INFO    ] ================================================
[2026-06-27 00:13:37,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:13:37
[2026-06-27 00:13:37,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:13:37,751.751 INFO    ] Initializing speech engine...
[2026-06-27 00:13:37,756.756 INFO    ] 2026-06-27 00:13:37
[2026-06-27 00:13:37,959.959 INFO    ] 2026-06-27 00:13:37
[2026-06-27 00:13:37,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:13:38,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:13:38,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:13:38,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:13:38,361.361 INFO    ] time= 27/06/2026 00:13:38
[2026-06-27 00:13:38,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:13:38,406.406 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:13:38,477.477 INFO    ] No existing commands found in stream
[2026-06-27 00:13:43,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:13:43,489.489 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-27 00:13:46,742.742 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 00:13:46,744.744 INFO    ] Checking for system updates...
[2026-06-27 00:13:46,765.765 INFO    ] 200
[2026-06-27 00:13:46,766.766 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:13:46,798.798 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:13:46,799.799 INFO    ] No update needed
[2026-06-27 00:13:46,801.801 INFO    ] Checking for camera pi updates...
[2026-06-27 00:13:46,822.822 INFO    ] 200
[2026-06-27 00:13:46,824.824 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:13:46,849.849 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:13:46,895.895 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:13:46,896.896 INFO    ] No camera update needed
[2026-06-27 00:13:46,898.898 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:13:46,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:13:46,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:13:46,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:13:48,946.946 INFO    ] ================================================
[2026-06-27 00:13:48,962.962 INFO    ] Launching Daemon at Sat Jun 27 00:13:48 IST 2026
[2026-06-27 00:13:48,973.973 INFO    ] ================================================
[2026-06-27 00:13:49,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:13:49
[2026-06-27 00:13:49,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:13:49,763.763 INFO    ] Initializing speech engine...
[2026-06-27 00:13:49,768.768 INFO    ] 2026-06-27 00:13:49
[2026-06-27 00:13:49,966.966 INFO    ] 2026-06-27 00:13:49
[2026-06-27 00:13:49,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:13:50,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:13:50,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:13:51,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:13:51,450.450 INFO    ] time= 27/06/2026 00:13:51
[2026-06-27 00:13:51,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:13:51,465.465 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:13:51,525.525 INFO    ] No existing commands found in stream
[2026-06-27 00:13:56,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:13:56,535.535 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-27 00:13:56,993.993 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 00:13:56,995.995 INFO    ] Checking for system updates...
[2026-06-27 00:13:57,016.016 INFO    ] 200
[2026-06-27 00:13:57,018.018 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:13:57,048.048 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:13:57,050.050 INFO    ] No update needed
[2026-06-27 00:13:57,051.051 INFO    ] Checking for camera pi updates...
[2026-06-27 00:13:57,070.070 INFO    ] 200
[2026-06-27 00:13:57,071.071 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:13:57,097.097 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:13:57,139.139 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:13:57,140.140 INFO    ] No camera update needed
[2026-06-27 00:13:57,141.141 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:13:57,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:13:57,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:13:57,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:13:59,189.189 INFO    ] ================================================
[2026-06-27 00:13:59,205.205 INFO    ] Launching Daemon at Sat Jun 27 00:13:59 IST 2026
[2026-06-27 00:13:59,217.217 INFO    ] ================================================
[2026-06-27 00:13:59,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:13:59
[2026-06-27 00:13:59,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:14:00,019.019 INFO    ] Initializing speech engine...
[2026-06-27 00:14:00,029.029 INFO    ] 2026-06-27 00:14:00
[2026-06-27 00:14:00,233.233 INFO    ] 2026-06-27 00:14:00
[2026-06-27 00:14:00,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:14:00,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:14:00,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:14:00,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:14:00,647.647 INFO    ] time= 27/06/2026 00:14:00
[2026-06-27 00:14:00,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:14:00,680.680 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:14:00,747.747 INFO    ] No existing commands found in stream
[2026-06-27 00:14:05,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:14:05,764.764 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-27 00:14:09,791.791 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 00:14:09,793.793 INFO    ] Checking for system updates...
[2026-06-27 00:14:09,814.814 INFO    ] 200
[2026-06-27 00:14:09,815.815 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:14:09,848.848 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:14:09,849.849 INFO    ] No update needed
[2026-06-27 00:14:09,851.851 INFO    ] Checking for camera pi updates...
[2026-06-27 00:14:09,871.871 INFO    ] 200
[2026-06-27 00:14:09,872.872 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:14:09,896.896 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:14:09,942.942 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:14:09,943.943 INFO    ] No camera update needed
[2026-06-27 00:14:09,945.945 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:14:09,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:14:09,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:14:09,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:14:12,994.994 INFO    ] ================================================
[2026-06-27 00:14:12,010.010 INFO    ] Launching Daemon at Sat Jun 27 00:14:12 IST 2026
[2026-06-27 00:14:12,022.022 INFO    ] ================================================
[2026-06-27 00:14:12,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:14:12
[2026-06-27 00:14:12,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:14:12,812.812 INFO    ] Initializing speech engine...
[2026-06-27 00:14:12,817.817 INFO    ] 2026-06-27 00:14:12
[2026-06-27 00:14:13,021.021 INFO    ] 2026-06-27 00:14:13
[2026-06-27 00:14:13,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:14:13,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:14:13,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:14:13,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:14:13,428.428 INFO    ] time= 27/06/2026 00:14:13
[2026-06-27 00:14:13,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:14:13,468.468 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:14:13,564.564 INFO    ] No existing commands found in stream
[2026-06-27 00:14:18,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:14:18,576.576 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-27 00:14:22,913.913 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 00:14:22,915.915 INFO    ] Checking for system updates...
[2026-06-27 00:14:22,936.936 INFO    ] 200
[2026-06-27 00:14:22,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:14:22,970.970 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:14:22,971.971 INFO    ] No update needed
[2026-06-27 00:14:22,973.973 INFO    ] Checking for camera pi updates...
[2026-06-27 00:14:22,993.993 INFO    ] 200
[2026-06-27 00:14:22,995.995 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:14:23,018.018 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:14:23,043.043 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:14:23,045.045 INFO    ] No camera update needed
[2026-06-27 00:14:23,046.046 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:14:23,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:14:23,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:14:23,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:14:25,101.101 INFO    ] ================================================
[2026-06-27 00:14:25,116.116 INFO    ] Launching Daemon at Sat Jun 27 00:14:25 IST 2026
[2026-06-27 00:14:25,128.128 INFO    ] ================================================
[2026-06-27 00:14:25,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:14:25
[2026-06-27 00:14:25,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:14:25,919.919 INFO    ] Initializing speech engine...
[2026-06-27 00:14:25,931.931 INFO    ] 2026-06-27 00:14:25
[2026-06-27 00:14:26,140.140 INFO    ] 2026-06-27 00:14:26
[2026-06-27 00:14:26,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:14:26,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:14:26,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:14:26,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:14:26,554.554 INFO    ] time= 27/06/2026 00:14:26
[2026-06-27 00:14:26,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:14:26,593.593 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:14:26,661.661 INFO    ] No existing commands found in stream
[2026-06-27 00:14:31,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:14:31,667.667 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-27 00:14:32,974.974 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 00:14:32,976.976 INFO    ] Checking for system updates...
[2026-06-27 00:14:32,997.997 INFO    ] 200
[2026-06-27 00:14:32,998.998 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:14:33,029.029 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:14:33,030.030 INFO    ] No update needed
[2026-06-27 00:14:33,032.032 INFO    ] Checking for camera pi updates...
[2026-06-27 00:14:33,052.052 INFO    ] 200
[2026-06-27 00:14:33,054.054 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:14:33,080.080 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:14:33,110.110 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:14:33,112.112 INFO    ] No camera update needed
[2026-06-27 00:14:33,114.114 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:14:33,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:14:33,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:14:33,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:14:35,163.163 INFO    ] ================================================
[2026-06-27 00:14:35,179.179 INFO    ] Launching Daemon at Sat Jun 27 00:14:35 IST 2026
[2026-06-27 00:14:35,190.190 INFO    ] ================================================
[2026-06-27 00:14:35,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:14:35
[2026-06-27 00:14:35,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:14:35,984.984 INFO    ] Initializing speech engine...
[2026-06-27 00:14:35,997.997 INFO    ] 2026-06-27 00:14:35
[2026-06-27 00:14:36,204.204 INFO    ] 2026-06-27 00:14:36
[2026-06-27 00:14:36,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:14:36,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:14:36,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:14:36,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:14:36,608.608 INFO    ] time= 27/06/2026 00:14:36
[2026-06-27 00:14:36,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:14:36,654.654 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:14:36,726.726 INFO    ] No existing commands found in stream
[2026-06-27 00:14:41,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:14:41,738.738 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-27 00:14:45,727.727 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 00:14:45,729.729 INFO    ] Checking for system updates...
[2026-06-27 00:14:45,750.750 INFO    ] 200
[2026-06-27 00:14:45,752.752 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:14:45,782.782 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:14:45,784.784 INFO    ] No update needed
[2026-06-27 00:14:45,785.785 INFO    ] Checking for camera pi updates...
[2026-06-27 00:14:45,806.806 INFO    ] 200
[2026-06-27 00:14:45,807.807 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:14:45,830.830 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:14:45,859.859 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:14:45,861.861 INFO    ] No camera update needed
[2026-06-27 00:14:45,862.862 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:14:45,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:14:45,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:14:45,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:14:47,909.909 INFO    ] ================================================
[2026-06-27 00:14:47,925.925 INFO    ] Launching Daemon at Sat Jun 27 00:14:47 IST 2026
[2026-06-27 00:14:47,936.936 INFO    ] ================================================
[2026-06-27 00:14:48,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:14:48
[2026-06-27 00:14:48,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:14:48,757.757 INFO    ] Initializing speech engine...
[2026-06-27 00:14:48,762.762 INFO    ] 2026-06-27 00:14:48
[2026-06-27 00:14:48,966.966 INFO    ] 2026-06-27 00:14:48
[2026-06-27 00:14:48,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:14:49,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:14:49,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:14:49,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:14:49,381.381 INFO    ] time= 27/06/2026 00:14:49
[2026-06-27 00:14:49,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:14:49,413.413 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:14:49,480.480 INFO    ] No existing commands found in stream
[2026-06-27 00:14:54,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:14:54,492.492 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-27 00:14:57,134.134 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 00:14:57,135.135 INFO    ] Checking for system updates...
[2026-06-27 00:14:57,157.157 INFO    ] 200
[2026-06-27 00:14:57,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:14:57,193.193 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:14:57,194.194 INFO    ] No update needed
[2026-06-27 00:14:57,195.195 INFO    ] Checking for camera pi updates...
[2026-06-27 00:14:57,215.215 INFO    ] 200
[2026-06-27 00:14:57,216.216 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:14:57,240.240 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:14:57,266.266 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:14:57,267.267 INFO    ] No camera update needed
[2026-06-27 00:14:57,269.269 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:14:57,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:14:57,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:14:57,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:14:59,315.315 INFO    ] ================================================
[2026-06-27 00:14:59,330.330 INFO    ] Launching Daemon at Sat Jun 27 00:14:59 IST 2026
[2026-06-27 00:14:59,341.341 INFO    ] ================================================
[2026-06-27 00:14:59,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:14:59
[2026-06-27 00:15:00,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:15:00,177.177 INFO    ] Initializing speech engine...
[2026-06-27 00:15:00,181.181 INFO    ] 2026-06-27 00:15:00
[2026-06-27 00:15:00,390.390 INFO    ] 2026-06-27 00:15:00
[2026-06-27 00:15:00,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:15:00,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:15:00,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:15:00,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:15:00,812.812 INFO    ] time= 27/06/2026 00:15:00
[2026-06-27 00:15:00,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:15:00,841.841 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:15:00,908.908 INFO    ] No existing commands found in stream
[2026-06-27 00:15:05,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:15:05,928.928 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-27 00:15:06,674.674 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:15:06,675.675 INFO    ] Checking for system updates...
[2026-06-27 00:15:06,698.698 INFO    ] 200
[2026-06-27 00:15:06,699.699 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:15:06,735.735 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:15:06,737.737 INFO    ] No update needed
[2026-06-27 00:15:06,738.738 INFO    ] Checking for camera pi updates...
[2026-06-27 00:15:06,761.761 INFO    ] 200
[2026-06-27 00:15:06,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:15:06,787.787 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:15:06,826.826 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:15:06,827.827 INFO    ] No camera update needed
[2026-06-27 00:15:06,829.829 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:15:06,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:15:06,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:15:06,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:15:08,877.877 INFO    ] ================================================
[2026-06-27 00:15:08,893.893 INFO    ] Launching Daemon at Sat Jun 27 00:15:08 IST 2026
[2026-06-27 00:15:08,905.905 INFO    ] ================================================
[2026-06-27 00:15:09,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:15:09
[2026-06-27 00:15:09,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:15:09,716.716 INFO    ] Initializing speech engine...
[2026-06-27 00:15:09,721.721 INFO    ] 2026-06-27 00:15:09
[2026-06-27 00:15:09,928.928 INFO    ] 2026-06-27 00:15:09
[2026-06-27 00:15:09,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:15:10,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:15:10,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:15:10,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:15:10,349.349 INFO    ] time= 27/06/2026 00:15:10
[2026-06-27 00:15:10,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:15:10,377.377 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:15:10,450.450 INFO    ] No existing commands found in stream
[2026-06-27 00:15:15,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:15:15,463.463 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-27 00:15:16,109.109 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 00:15:16,110.110 INFO    ] Checking for system updates...
[2026-06-27 00:15:16,133.133 INFO    ] 200
[2026-06-27 00:15:16,135.135 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:15:16,171.171 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:15:16,172.172 INFO    ] No update needed
[2026-06-27 00:15:16,174.174 INFO    ] Checking for camera pi updates...
[2026-06-27 00:15:16,198.198 INFO    ] 200
[2026-06-27 00:15:16,199.199 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:15:16,226.226 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:15:16,276.276 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:15:16,278.278 INFO    ] No camera update needed
[2026-06-27 00:15:16,279.279 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:15:16,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:15:16,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:15:16,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:15:18,328.328 INFO    ] ================================================
[2026-06-27 00:15:18,344.344 INFO    ] Launching Daemon at Sat Jun 27 00:15:18 IST 2026
[2026-06-27 00:15:18,355.355 INFO    ] ================================================
[2026-06-27 00:15:18,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:15:18
[2026-06-27 00:15:19,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:15:19,201.201 INFO    ] Initializing speech engine...
[2026-06-27 00:15:19,206.206 INFO    ] 2026-06-27 00:15:19
[2026-06-27 00:15:19,402.402 INFO    ] 2026-06-27 00:15:19
[2026-06-27 00:15:19,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:15:19,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:15:19,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:15:19,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:15:19,824.824 INFO    ] time= 27/06/2026 00:15:19
[2026-06-27 00:15:19,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:15:19,926.926 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:15:20,008.008 INFO    ] No existing commands found in stream
[2026-06-27 00:15:25,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:15:25,021.021 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-27 00:15:26,105.105 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 00:15:26,108.108 INFO    ] Checking for system updates...
[2026-06-27 00:15:26,145.145 INFO    ] 200
[2026-06-27 00:15:26,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:15:26,209.209 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:15:26,212.212 INFO    ] No update needed
[2026-06-27 00:15:26,214.214 INFO    ] Checking for camera pi updates...
[2026-06-27 00:15:26,238.238 INFO    ] 200
[2026-06-27 00:15:26,240.240 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:15:26,264.264 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:15:26,302.302 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:15:26,303.303 INFO    ] No camera update needed
[2026-06-27 00:15:26,305.305 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:15:26,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:15:26,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:15:26,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:15:28,351.351 INFO    ] ================================================
[2026-06-27 00:15:28,367.367 INFO    ] Launching Daemon at Sat Jun 27 00:15:28 IST 2026
[2026-06-27 00:15:28,378.378 INFO    ] ================================================
[2026-06-27 00:15:28,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:15:28
[2026-06-27 00:15:29,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:15:29,177.177 INFO    ] Initializing speech engine...
[2026-06-27 00:15:29,183.183 INFO    ] 2026-06-27 00:15:29
[2026-06-27 00:15:29,386.386 INFO    ] 2026-06-27 00:15:29
[2026-06-27 00:15:29,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:15:29,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:15:29,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:15:29,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:15:29,806.806 INFO    ] time= 27/06/2026 00:15:29
[2026-06-27 00:15:29,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:15:29,834.834 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:15:29,901.901 INFO    ] No existing commands found in stream
[2026-06-27 00:15:34,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:15:34,913.913 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-27 00:15:37,614.614 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 00:15:37,616.616 INFO    ] Checking for system updates...
[2026-06-27 00:15:37,658.658 INFO    ] 200
[2026-06-27 00:15:37,660.660 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:15:37,715.715 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:15:37,717.717 INFO    ] No update needed
[2026-06-27 00:15:37,720.720 INFO    ] Checking for camera pi updates...
[2026-06-27 00:15:37,755.755 INFO    ] 200
[2026-06-27 00:15:37,757.757 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:15:37,786.786 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:15:37,925.925 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:15:37,927.927 INFO    ] No camera update needed
[2026-06-27 00:15:37,928.928 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:15:37,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:15:37,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:15:37,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:15:39,975.975 INFO    ] ================================================
[2026-06-27 00:15:39,991.991 INFO    ] Launching Daemon at Sat Jun 27 00:15:39 IST 2026
[2026-06-27 00:15:40,002.002 INFO    ] ================================================
[2026-06-27 00:15:40,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:15:40
[2026-06-27 00:15:40,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:15:40,813.813 INFO    ] Initializing speech engine...
[2026-06-27 00:15:40,821.821 INFO    ] 2026-06-27 00:15:40
[2026-06-27 00:15:41,035.035 INFO    ] 2026-06-27 00:15:41
[2026-06-27 00:15:41,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:15:41,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:15:41,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:15:41,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:15:41,434.434 INFO    ] time= 27/06/2026 00:15:41
[2026-06-27 00:15:41,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:15:41,479.479 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:15:41,573.573 INFO    ] No existing commands found in stream
[2026-06-27 00:15:46,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:15:46,585.585 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-27 00:15:49,397.397 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 00:15:49,400.400 INFO    ] Checking for system updates...
[2026-06-27 00:15:49,436.436 INFO    ] 200
[2026-06-27 00:15:49,439.439 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:15:49,491.491 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:15:49,494.494 INFO    ] No update needed
[2026-06-27 00:15:49,496.496 INFO    ] Checking for camera pi updates...
[2026-06-27 00:15:49,535.535 INFO    ] 200
[2026-06-27 00:15:49,536.536 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:15:49,561.561 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:15:49,609.609 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:15:49,611.611 INFO    ] No camera update needed
[2026-06-27 00:15:49,612.612 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:15:49,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:15:49,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:15:49,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:15:51,658.658 INFO    ] ================================================
[2026-06-27 00:15:51,674.674 INFO    ] Launching Daemon at Sat Jun 27 00:15:51 IST 2026
[2026-06-27 00:15:51,686.686 INFO    ] ================================================
[2026-06-27 00:15:52,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:15:52
[2026-06-27 00:15:52,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:15:52,574.574 INFO    ] Initializing speech engine...
[2026-06-27 00:15:52,579.579 INFO    ] 2026-06-27 00:15:52
[2026-06-27 00:15:52,789.789 INFO    ] 2026-06-27 00:15:52
[2026-06-27 00:15:52,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:15:53,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:15:53,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:15:53,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:15:53,214.214 INFO    ] time= 27/06/2026 00:15:53
[2026-06-27 00:15:53,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:15:53,281.281 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:15:53,371.371 INFO    ] No existing commands found in stream
[2026-06-27 00:15:58,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:15:58,384.384 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-27 00:16:00,516.516 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 00:16:00,518.518 INFO    ] Checking for system updates...
[2026-06-27 00:16:00,540.540 INFO    ] 200
[2026-06-27 00:16:00,542.542 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:16:00,575.575 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:16:00,576.576 INFO    ] No update needed
[2026-06-27 00:16:00,578.578 INFO    ] Checking for camera pi updates...
[2026-06-27 00:16:00,597.597 INFO    ] 200
[2026-06-27 00:16:00,599.599 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:16:00,624.624 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:16:00,671.671 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:16:00,673.673 INFO    ] No camera update needed
[2026-06-27 00:16:00,674.674 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:16:00,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:16:00,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:16:00,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:16:02,714.714 INFO    ] ================================================
[2026-06-27 00:16:02,730.730 INFO    ] Launching Daemon at Sat Jun 27 00:16:02 IST 2026
[2026-06-27 00:16:02,741.741 INFO    ] ================================================
[2026-06-27 00:16:03,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:16:03
[2026-06-27 00:16:03,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:16:03,523.523 INFO    ] Initializing speech engine...
[2026-06-27 00:16:03,535.535 INFO    ] 2026-06-27 00:16:03
[2026-06-27 00:16:03,746.746 INFO    ] 2026-06-27 00:16:03
[2026-06-27 00:16:03,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:16:03,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:16:03,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:16:04,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:16:04,154.154 INFO    ] time= 27/06/2026 00:16:04
[2026-06-27 00:16:04,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:16:04,201.201 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:16:04,271.271 INFO    ] No existing commands found in stream
[2026-06-27 00:16:09,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:16:09,285.285 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-27 00:16:11,322.322 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 00:16:11,325.325 INFO    ] Checking for system updates...
[2026-06-27 00:16:11,381.381 INFO    ] 200
[2026-06-27 00:16:11,384.384 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:16:11,445.445 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:16:11,447.447 INFO    ] No update needed
[2026-06-27 00:16:11,450.450 INFO    ] Checking for camera pi updates...
[2026-06-27 00:16:11,475.475 INFO    ] 200
[2026-06-27 00:16:11,476.476 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:16:11,501.501 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:16:11,546.546 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:16:11,547.547 INFO    ] No camera update needed
[2026-06-27 00:16:11,549.549 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:16:11,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:16:11,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:16:11,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:16:13,597.597 INFO    ] ================================================
[2026-06-27 00:16:13,613.613 INFO    ] Launching Daemon at Sat Jun 27 00:16:13 IST 2026
[2026-06-27 00:16:13,624.624 INFO    ] ================================================
[2026-06-27 00:16:13,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:16:13
[2026-06-27 00:16:14,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:16:14,480.480 INFO    ] Initializing speech engine...
[2026-06-27 00:16:14,485.485 INFO    ] 2026-06-27 00:16:14
[2026-06-27 00:16:14,698.698 INFO    ] 2026-06-27 00:16:14
[2026-06-27 00:16:14,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:16:14,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:16:14,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:16:16,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:16:16,106.106 INFO    ] time= 27/06/2026 00:16:16
[2026-06-27 00:16:16,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:16:16,108.108 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:16:16,162.162 INFO    ] No existing commands found in stream
[2026-06-27 00:16:21,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:16:21,174.174 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-27 00:16:26,029.029 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 00:16:26,030.030 INFO    ] Checking for system updates...
[2026-06-27 00:16:26,053.053 INFO    ] 200
[2026-06-27 00:16:26,054.054 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:16:26,088.088 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:16:26,089.089 INFO    ] No update needed
[2026-06-27 00:16:26,091.091 INFO    ] Checking for camera pi updates...
[2026-06-27 00:16:26,111.111 INFO    ] 200
[2026-06-27 00:16:26,112.112 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:16:26,138.138 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:16:26,195.195 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:16:26,197.197 INFO    ] No camera update needed
[2026-06-27 00:16:26,198.198 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:16:26,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:16:26,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:16:26,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:16:28,246.246 INFO    ] ================================================
[2026-06-27 00:16:28,262.262 INFO    ] Launching Daemon at Sat Jun 27 00:16:28 IST 2026
[2026-06-27 00:16:28,272.272 INFO    ] ================================================
[2026-06-27 00:16:28,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:16:28
[2026-06-27 00:16:28,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:16:29,085.085 INFO    ] Initializing speech engine...
[2026-06-27 00:16:29,093.093 INFO    ] 2026-06-27 00:16:29
[2026-06-27 00:16:29,299.299 INFO    ] 2026-06-27 00:16:29
[2026-06-27 00:16:29,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:16:29,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:16:29,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:16:29,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:16:29,713.713 INFO    ] time= 27/06/2026 00:16:29
[2026-06-27 00:16:29,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:16:29,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:16:29,812.812 INFO    ] No existing commands found in stream
[2026-06-27 00:16:34,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:16:34,824.824 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-27 00:16:37,051.051 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:16:37,052.052 INFO    ] Checking for system updates...
[2026-06-27 00:16:37,073.073 INFO    ] 200
[2026-06-27 00:16:37,074.074 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:16:37,109.109 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:16:37,111.111 INFO    ] No update needed
[2026-06-27 00:16:37,112.112 INFO    ] Checking for camera pi updates...
[2026-06-27 00:16:37,133.133 INFO    ] 200
[2026-06-27 00:16:37,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:16:37,159.159 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:16:37,206.206 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:16:37,207.207 INFO    ] No camera update needed
[2026-06-27 00:16:37,208.208 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:16:37,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:16:37,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:16:37,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:16:39,256.256 INFO    ] ================================================
[2026-06-27 00:16:39,272.272 INFO    ] Launching Daemon at Sat Jun 27 00:16:39 IST 2026
[2026-06-27 00:16:39,283.283 INFO    ] ================================================
[2026-06-27 00:16:39,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:16:39
[2026-06-27 00:16:39,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:16:40,121.121 INFO    ] Initializing speech engine...
[2026-06-27 00:16:40,135.135 INFO    ] 2026-06-27 00:16:40
[2026-06-27 00:16:40,341.341 INFO    ] 2026-06-27 00:16:40
[2026-06-27 00:16:40,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:16:40,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:16:40,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:16:40,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:16:40,767.767 INFO    ] time= 27/06/2026 00:16:40
[2026-06-27 00:16:40,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:16:40,800.800 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:16:40,869.869 INFO    ] No existing commands found in stream
[2026-06-27 00:16:45,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:16:45,881.881 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-27 00:16:48,592.592 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 00:16:48,593.593 INFO    ] Checking for system updates...
[2026-06-27 00:16:48,615.615 INFO    ] 200
[2026-06-27 00:16:48,616.616 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:16:48,650.650 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:16:48,651.651 INFO    ] No update needed
[2026-06-27 00:16:48,653.653 INFO    ] Checking for camera pi updates...
[2026-06-27 00:16:48,677.677 INFO    ] 200
[2026-06-27 00:16:48,678.678 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:16:48,705.705 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:16:48,755.755 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:16:48,757.757 INFO    ] No camera update needed
[2026-06-27 00:16:48,758.758 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:16:48,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:16:48,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:16:48,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:16:50,806.806 INFO    ] ================================================
[2026-06-27 00:16:50,822.822 INFO    ] Launching Daemon at Sat Jun 27 00:16:50 IST 2026
[2026-06-27 00:16:50,832.832 INFO    ] ================================================
[2026-06-27 00:16:51,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:16:51
[2026-06-27 00:16:51,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:16:51,623.623 INFO    ] Initializing speech engine...
[2026-06-27 00:16:51,627.627 INFO    ] 2026-06-27 00:16:51
[2026-06-27 00:16:51,845.845 INFO    ] 2026-06-27 00:16:51
[2026-06-27 00:16:51,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:16:52,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:16:52,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:16:52,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:16:52,247.247 INFO    ] time= 27/06/2026 00:16:52
[2026-06-27 00:16:52,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:16:52,302.302 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:16:52,369.369 INFO    ] No existing commands found in stream
[2026-06-27 00:16:57,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:16:57,382.382 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-27 00:16:59,637.637 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:16:59,639.639 INFO    ] Checking for system updates...
[2026-06-27 00:16:59,660.660 INFO    ] 200
[2026-06-27 00:16:59,662.662 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:16:59,695.695 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:16:59,696.696 INFO    ] No update needed
[2026-06-27 00:16:59,697.697 INFO    ] Checking for camera pi updates...
[2026-06-27 00:16:59,716.716 INFO    ] 200
[2026-06-27 00:16:59,718.718 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:16:59,745.745 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:16:59,791.791 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:16:59,793.793 INFO    ] No camera update needed
[2026-06-27 00:16:59,794.794 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:16:59,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:16:59,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:16:59,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:17:01,835.835 INFO    ] ================================================
[2026-06-27 00:17:01,847.847 INFO    ] Launching Daemon at Sat Jun 27 00:17:01 IST 2026
[2026-06-27 00:17:01,857.857 INFO    ] ================================================
[2026-06-27 00:17:02,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:17:02
[2026-06-27 00:17:02,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:17:02,707.707 INFO    ] Initializing speech engine...
[2026-06-27 00:17:02,712.712 INFO    ] 2026-06-27 00:17:02
[2026-06-27 00:17:02,916.916 INFO    ] 2026-06-27 00:17:02
[2026-06-27 00:17:02,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:17:03,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:17:03,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:17:03,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:17:03,336.336 INFO    ] time= 27/06/2026 00:17:03
[2026-06-27 00:17:03,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:17:03,365.365 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:17:03,430.430 INFO    ] No existing commands found in stream
[2026-06-27 00:17:08,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:17:08,443.443 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-27 00:17:09,301.301 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 00:17:09,303.303 INFO    ] Checking for system updates...
[2026-06-27 00:17:09,323.323 INFO    ] 200
[2026-06-27 00:17:09,325.325 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:17:09,358.358 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:17:09,359.359 INFO    ] No update needed
[2026-06-27 00:17:09,360.360 INFO    ] Checking for camera pi updates...
[2026-06-27 00:17:09,381.381 INFO    ] 200
[2026-06-27 00:17:09,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:17:09,406.406 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:17:09,438.438 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:17:09,439.439 INFO    ] No camera update needed
[2026-06-27 00:17:09,440.440 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:17:09,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:17:09,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:17:09,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:17:11,478.478 INFO    ] ================================================
[2026-06-27 00:17:11,487.487 INFO    ] Launching Daemon at Sat Jun 27 00:17:11 IST 2026
[2026-06-27 00:17:11,493.493 INFO    ] ================================================
[2026-06-27 00:17:11,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:17:11
[2026-06-27 00:17:12,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:17:12,302.302 INFO    ] Initializing speech engine...
[2026-06-27 00:17:12,310.310 INFO    ] 2026-06-27 00:17:12
[2026-06-27 00:17:12,534.534 INFO    ] 2026-06-27 00:17:12
[2026-06-27 00:17:12,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:17:12,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:17:12,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:17:12,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:17:12,968.968 INFO    ] time= 27/06/2026 00:17:12
[2026-06-27 00:17:13,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:17:13,013.013 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:17:13,117.117 INFO    ] No existing commands found in stream
[2026-06-27 00:17:18,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:17:18,129.129 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-27 00:17:21,474.474 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 00:17:21,475.475 INFO    ] Checking for system updates...
[2026-06-27 00:17:21,497.497 INFO    ] 200
[2026-06-27 00:17:21,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:17:21,535.535 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:17:21,536.536 INFO    ] No update needed
[2026-06-27 00:17:21,538.538 INFO    ] Checking for camera pi updates...
[2026-06-27 00:17:21,557.557 INFO    ] 200
[2026-06-27 00:17:21,559.559 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:17:21,584.584 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:17:21,626.626 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:17:21,627.627 INFO    ] No camera update needed
[2026-06-27 00:17:21,628.628 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:17:21,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:17:21,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:17:21,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:17:23,674.674 INFO    ] ================================================
[2026-06-27 00:17:23,690.690 INFO    ] Launching Daemon at Sat Jun 27 00:17:23 IST 2026
[2026-06-27 00:17:23,700.700 INFO    ] ================================================
[2026-06-27 00:17:24,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:17:24
[2026-06-27 00:17:24,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:17:24,536.536 INFO    ] Initializing speech engine...
[2026-06-27 00:17:24,548.548 INFO    ] 2026-06-27 00:17:24
[2026-06-27 00:17:24,758.758 INFO    ] 2026-06-27 00:17:24
[2026-06-27 00:17:24,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:17:25,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:17:25,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:17:25,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:17:25,808.808 INFO    ] time= 27/06/2026 00:17:25
[2026-06-27 00:17:25,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:17:25,823.823 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:17:25,874.874 INFO    ] No existing commands found in stream
[2026-06-27 00:17:30,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:17:30,888.888 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-27 00:17:34,014.014 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 00:17:34,016.016 INFO    ] Checking for system updates...
[2026-06-27 00:17:34,038.038 INFO    ] 200
[2026-06-27 00:17:34,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:17:34,072.072 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:17:34,074.074 INFO    ] No update needed
[2026-06-27 00:17:34,076.076 INFO    ] Checking for camera pi updates...
[2026-06-27 00:17:34,095.095 INFO    ] 200
[2026-06-27 00:17:34,097.097 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:17:34,123.123 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:17:34,165.165 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:17:34,166.166 INFO    ] No camera update needed
[2026-06-27 00:17:34,168.168 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:17:34,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:17:34,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:17:34,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:17:36,215.215 INFO    ] ================================================
[2026-06-27 00:17:36,230.230 INFO    ] Launching Daemon at Sat Jun 27 00:17:36 IST 2026
[2026-06-27 00:17:36,241.241 INFO    ] ================================================
[2026-06-27 00:17:36,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:17:36
[2026-06-27 00:17:36,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:17:37,059.059 INFO    ] Initializing speech engine...
[2026-06-27 00:17:37,074.074 INFO    ] 2026-06-27 00:17:37
[2026-06-27 00:17:37,280.280 INFO    ] 2026-06-27 00:17:37
[2026-06-27 00:17:37,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:17:37,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:17:37,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:17:37,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:17:37,703.703 INFO    ] time= 27/06/2026 00:17:37
[2026-06-27 00:17:37,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:17:37,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:17:37,796.796 INFO    ] No existing commands found in stream
[2026-06-27 00:17:42,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:17:42,808.808 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-27 00:17:45,226.226 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 00:17:45,227.227 INFO    ] Checking for system updates...
[2026-06-27 00:17:45,248.248 INFO    ] 200
[2026-06-27 00:17:45,250.250 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:17:45,283.283 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:17:45,284.284 INFO    ] No update needed
[2026-06-27 00:17:45,286.286 INFO    ] Checking for camera pi updates...
[2026-06-27 00:17:45,307.307 INFO    ] 200
[2026-06-27 00:17:45,309.309 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:17:45,334.334 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:17:45,482.482 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:17:45,484.484 INFO    ] No camera update needed
[2026-06-27 00:17:45,485.485 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:17:45,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:17:45,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:17:45,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:17:47,531.531 INFO    ] ================================================
[2026-06-27 00:17:47,547.547 INFO    ] Launching Daemon at Sat Jun 27 00:17:47 IST 2026
[2026-06-27 00:17:47,558.558 INFO    ] ================================================
[2026-06-27 00:17:47,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:17:47
[2026-06-27 00:17:48,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:17:48,353.353 INFO    ] Initializing speech engine...
[2026-06-27 00:17:48,363.363 INFO    ] 2026-06-27 00:17:48
[2026-06-27 00:17:48,569.569 INFO    ] 2026-06-27 00:17:48
[2026-06-27 00:17:48,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:17:48,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:17:48,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:17:48,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:17:48,977.977 INFO    ] time= 27/06/2026 00:17:48
[2026-06-27 00:17:49,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:17:49,015.015 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:17:49,080.080 INFO    ] No existing commands found in stream
[2026-06-27 00:17:54,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:17:54,094.094 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-27 00:17:57,515.515 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 00:17:57,516.516 INFO    ] Checking for system updates...
[2026-06-27 00:17:57,539.539 INFO    ] 200
[2026-06-27 00:17:57,540.540 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:17:57,571.571 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:17:57,572.572 INFO    ] No update needed
[2026-06-27 00:17:57,574.574 INFO    ] Checking for camera pi updates...
[2026-06-27 00:17:57,594.594 INFO    ] 200
[2026-06-27 00:17:57,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:17:57,620.620 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:17:57,675.675 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:17:57,677.677 INFO    ] No camera update needed
[2026-06-27 00:17:57,678.678 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:17:57,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:17:57,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:17:57,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:17:59,725.725 INFO    ] ================================================
[2026-06-27 00:17:59,741.741 INFO    ] Launching Daemon at Sat Jun 27 00:17:59 IST 2026
[2026-06-27 00:17:59,752.752 INFO    ] ================================================
[2026-06-27 00:18:00,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:18:00
[2026-06-27 00:18:00,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:18:00,538.538 INFO    ] Initializing speech engine...
[2026-06-27 00:18:00,542.542 INFO    ] 2026-06-27 00:18:00
[2026-06-27 00:18:00,761.761 INFO    ] 2026-06-27 00:18:00
[2026-06-27 00:18:00,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:18:00,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:18:00,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:18:05,987.987 INFO    ] MachineMessageSender.__init__: Redis error: Timeout connecting to server
[2026-06-27 00:18:06,024.024 INFO    ] Exiting as MachineMessageSender redis not connected!!!
[2026-06-27 00:18:06,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:18:06,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:18:06,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:18:08,093.093 INFO    ] ================================================
[2026-06-27 00:18:08,109.109 INFO    ] Launching Daemon at Sat Jun 27 00:18:08 IST 2026
[2026-06-27 00:18:08,120.120 INFO    ] ================================================
[2026-06-27 00:18:08,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:18:08
[2026-06-27 00:18:08,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:18:08,949.949 INFO    ] Initializing speech engine...
[2026-06-27 00:18:08,954.954 INFO    ] 2026-06-27 00:18:08
[2026-06-27 00:18:09,170.170 INFO    ] 2026-06-27 00:18:09
[2026-06-27 00:18:09,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:18:09,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:18:09,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:18:09,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:18:09,587.587 INFO    ] time= 27/06/2026 00:18:09
[2026-06-27 00:18:09,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:18:09,620.620 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:18:09,687.687 INFO    ] No existing commands found in stream
[2026-06-27 00:18:14,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:18:14,702.702 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-27 00:18:18,254.254 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 00:18:18,256.256 INFO    ] Checking for system updates...
[2026-06-27 00:18:18,278.278 INFO    ] 200
[2026-06-27 00:18:18,280.280 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:18:18,312.312 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:18:18,314.314 INFO    ] No update needed
[2026-06-27 00:18:18,315.315 INFO    ] Checking for camera pi updates...
[2026-06-27 00:18:18,335.335 INFO    ] 200
[2026-06-27 00:18:18,336.336 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:18:18,360.360 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:18:18,411.411 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:18:18,413.413 INFO    ] No camera update needed
[2026-06-27 00:18:18,414.414 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:18:18,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:18:18,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:18:18,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:18:20,461.461 INFO    ] ================================================
[2026-06-27 00:18:20,478.478 INFO    ] Launching Daemon at Sat Jun 27 00:18:20 IST 2026
[2026-06-27 00:18:20,489.489 INFO    ] ================================================
[2026-06-27 00:18:20,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:18:20
[2026-06-27 00:18:21,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:18:21,291.291 INFO    ] Initializing speech engine...
[2026-06-27 00:18:21,301.301 INFO    ] 2026-06-27 00:18:21
[2026-06-27 00:18:21,508.508 INFO    ] 2026-06-27 00:18:21
[2026-06-27 00:18:21,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:18:21,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:18:21,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:18:21,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:18:21,932.932 INFO    ] time= 27/06/2026 00:18:21
[2026-06-27 00:18:21,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:18:21,960.960 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:18:22,026.026 INFO    ] No existing commands found in stream
[2026-06-27 00:18:27,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:18:27,043.043 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-27 00:18:28,130.130 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 00:18:28,132.132 INFO    ] Checking for system updates...
[2026-06-27 00:18:28,154.154 INFO    ] 200
[2026-06-27 00:18:28,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:18:28,186.186 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:18:28,187.187 INFO    ] No update needed
[2026-06-27 00:18:28,188.188 INFO    ] Checking for camera pi updates...
[2026-06-27 00:18:28,209.209 INFO    ] 200
[2026-06-27 00:18:28,210.210 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:18:28,233.233 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:18:28,280.280 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:18:28,281.281 INFO    ] No camera update needed
[2026-06-27 00:18:28,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:18:28,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:18:28,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:18:28,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:18:30,322.322 INFO    ] ================================================
[2026-06-27 00:18:30,339.339 INFO    ] Launching Daemon at Sat Jun 27 00:18:30 IST 2026
[2026-06-27 00:18:30,350.350 INFO    ] ================================================
[2026-06-27 00:18:30,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:18:30
[2026-06-27 00:18:31,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:18:31,190.190 INFO    ] Initializing speech engine...
[2026-06-27 00:18:31,194.194 INFO    ] 2026-06-27 00:18:31
[2026-06-27 00:18:31,419.419 INFO    ] 2026-06-27 00:18:31
[2026-06-27 00:18:31,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:18:31,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:18:31,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:18:31,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:18:31,872.872 INFO    ] time= 27/06/2026 00:18:31
[2026-06-27 00:18:31,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:18:31,926.926 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:18:32,000.000 INFO    ] No existing commands found in stream
[2026-06-27 00:18:37,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:18:37,012.012 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-27 00:18:39,094.094 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:18:39,096.096 INFO    ] Checking for system updates...
[2026-06-27 00:18:39,118.118 INFO    ] 200
[2026-06-27 00:18:39,119.119 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:18:39,153.153 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:18:39,154.154 INFO    ] No update needed
[2026-06-27 00:18:39,155.155 INFO    ] Checking for camera pi updates...
[2026-06-27 00:18:39,176.176 INFO    ] 200
[2026-06-27 00:18:39,177.177 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:18:39,201.201 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:18:39,228.228 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:18:39,230.230 INFO    ] No camera update needed
[2026-06-27 00:18:39,231.231 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:18:39,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:18:39,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:18:39,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:18:41,277.277 INFO    ] ================================================
[2026-06-27 00:18:41,294.294 INFO    ] Launching Daemon at Sat Jun 27 00:18:41 IST 2026
[2026-06-27 00:18:41,305.305 INFO    ] ================================================
[2026-06-27 00:18:41,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:18:41
[2026-06-27 00:18:41,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:18:42,118.118 INFO    ] Initializing speech engine...
[2026-06-27 00:18:42,131.131 INFO    ] 2026-06-27 00:18:42
[2026-06-27 00:18:42,350.350 INFO    ] 2026-06-27 00:18:42
[2026-06-27 00:18:42,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:18:42,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:18:42,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:18:42,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:18:42,899.899 INFO    ] time= 27/06/2026 00:18:42
[2026-06-27 00:18:42,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:18:42,927.927 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:18:43,031.031 INFO    ] No existing commands found in stream
[2026-06-27 00:18:48,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:18:48,040.040 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-27 00:18:53,602.602 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:18:53,603.603 INFO    ] Checking for system updates...
[2026-06-27 00:18:53,626.626 INFO    ] 200
[2026-06-27 00:18:53,627.627 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:18:53,659.659 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:18:53,661.661 INFO    ] No update needed
[2026-06-27 00:18:53,662.662 INFO    ] Checking for camera pi updates...
[2026-06-27 00:18:53,682.682 INFO    ] 200
[2026-06-27 00:18:53,684.684 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:18:53,707.707 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:18:53,736.736 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:18:53,737.737 INFO    ] No camera update needed
[2026-06-27 00:18:53,738.738 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:18:53,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:18:53,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:18:53,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:18:55,786.786 INFO    ] ================================================
[2026-06-27 00:18:55,802.802 INFO    ] Launching Daemon at Sat Jun 27 00:18:55 IST 2026
[2026-06-27 00:18:55,814.814 INFO    ] ================================================
[2026-06-27 00:18:56,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:18:56
[2026-06-27 00:18:56,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:18:56,613.613 INFO    ] Initializing speech engine...
[2026-06-27 00:18:56,626.626 INFO    ] 2026-06-27 00:18:56
[2026-06-27 00:18:56,837.837 INFO    ] 2026-06-27 00:18:56
[2026-06-27 00:18:56,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:18:56,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:18:57,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:18:57,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:18:57,240.240 INFO    ] time= 27/06/2026 00:18:57
[2026-06-27 00:18:57,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:18:57,296.296 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:18:57,368.368 INFO    ] No existing commands found in stream
[2026-06-27 00:19:02,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:19:02,379.379 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-27 00:19:06,150.150 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 00:19:06,152.152 INFO    ] Checking for system updates...
[2026-06-27 00:19:06,172.172 INFO    ] 200
[2026-06-27 00:19:06,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:19:06,205.205 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:19:06,207.207 INFO    ] No update needed
[2026-06-27 00:19:06,208.208 INFO    ] Checking for camera pi updates...
[2026-06-27 00:19:06,228.228 INFO    ] 200
[2026-06-27 00:19:06,230.230 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:19:06,254.254 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:19:06,292.292 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:19:06,294.294 INFO    ] No camera update needed
[2026-06-27 00:19:06,295.295 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:19:06,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:19:06,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:19:06,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:19:08,347.347 INFO    ] ================================================
[2026-06-27 00:19:08,363.363 INFO    ] Launching Daemon at Sat Jun 27 00:19:08 IST 2026
[2026-06-27 00:19:08,374.374 INFO    ] ================================================
[2026-06-27 00:19:08,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:19:08
[2026-06-27 00:19:09,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:19:09,184.184 INFO    ] Initializing speech engine...
[2026-06-27 00:19:09,190.190 INFO    ] 2026-06-27 00:19:09
[2026-06-27 00:19:09,394.394 INFO    ] 2026-06-27 00:19:09
[2026-06-27 00:19:09,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:19:09,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:19:09,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:19:09,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:19:09,814.814 INFO    ] time= 27/06/2026 00:19:09
[2026-06-27 00:19:09,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:19:09,843.843 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:19:09,911.911 INFO    ] No existing commands found in stream
[2026-06-27 00:19:14,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:19:14,928.928 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-27 00:19:17,828.828 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 00:19:17,830.830 INFO    ] Checking for system updates...
[2026-06-27 00:19:17,850.850 INFO    ] 200
[2026-06-27 00:19:17,852.852 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:19:17,882.882 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:19:17,883.883 INFO    ] No update needed
[2026-06-27 00:19:17,885.885 INFO    ] Checking for camera pi updates...
[2026-06-27 00:19:17,906.906 INFO    ] 200
[2026-06-27 00:19:17,907.907 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:19:17,932.932 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:19:17,980.980 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:19:17,981.981 INFO    ] No camera update needed
[2026-06-27 00:19:17,982.982 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:19:17,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:19:17,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:19:17,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:19:20,028.028 INFO    ] ================================================
[2026-06-27 00:19:20,044.044 INFO    ] Launching Daemon at Sat Jun 27 00:19:20 IST 2026
[2026-06-27 00:19:20,055.055 INFO    ] ================================================
[2026-06-27 00:19:20,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:19:20
[2026-06-27 00:19:20,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:19:20,831.831 INFO    ] Initializing speech engine...
[2026-06-27 00:19:20,835.835 INFO    ] 2026-06-27 00:19:20
[2026-06-27 00:19:21,054.054 INFO    ] 2026-06-27 00:19:21
[2026-06-27 00:19:21,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:19:21,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:19:21,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:19:21,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:19:21,481.481 INFO    ] time= 27/06/2026 00:19:21
[2026-06-27 00:19:21,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:19:21,510.510 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:19:21,575.575 INFO    ] No existing commands found in stream
[2026-06-27 00:19:26,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:19:26,589.589 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-27 00:19:28,210.210 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 00:19:28,211.211 INFO    ] Checking for system updates...
[2026-06-27 00:19:28,232.232 INFO    ] 200
[2026-06-27 00:19:28,234.234 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:19:28,268.268 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:19:28,270.270 INFO    ] No update needed
[2026-06-27 00:19:28,271.271 INFO    ] Checking for camera pi updates...
[2026-06-27 00:19:28,290.290 INFO    ] 200
[2026-06-27 00:19:28,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:19:28,316.316 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:19:28,372.372 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:19:28,373.373 INFO    ] No camera update needed
[2026-06-27 00:19:28,375.375 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:19:28,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:19:28,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:19:28,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:19:30,422.422 INFO    ] ================================================
[2026-06-27 00:19:30,438.438 INFO    ] Launching Daemon at Sat Jun 27 00:19:30 IST 2026
[2026-06-27 00:19:30,450.450 INFO    ] ================================================
[2026-06-27 00:19:30,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:19:30
[2026-06-27 00:19:31,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:19:31,211.211 INFO    ] Initializing speech engine...
[2026-06-27 00:19:31,216.216 INFO    ] 2026-06-27 00:19:31
[2026-06-27 00:19:31,435.435 INFO    ] 2026-06-27 00:19:31
[2026-06-27 00:19:31,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:19:31,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:19:31,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:19:31,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:19:31,861.861 INFO    ] time= 27/06/2026 00:19:31
[2026-06-27 00:19:31,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:19:31,900.900 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:19:31,978.978 INFO    ] No existing commands found in stream
[2026-06-27 00:19:36,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:19:36,989.989 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-27 00:19:41,125.125 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 00:19:41,127.127 INFO    ] Checking for system updates...
[2026-06-27 00:19:41,147.147 INFO    ] 200
[2026-06-27 00:19:41,149.149 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:19:41,181.181 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:19:41,182.182 INFO    ] No update needed
[2026-06-27 00:19:41,183.183 INFO    ] Checking for camera pi updates...
[2026-06-27 00:19:41,204.204 INFO    ] 200
[2026-06-27 00:19:41,206.206 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:19:41,230.230 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:19:41,272.272 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:19:41,273.273 INFO    ] No camera update needed
[2026-06-27 00:19:41,275.275 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:19:41,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:19:41,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:19:41,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:19:43,321.321 INFO    ] ================================================
[2026-06-27 00:19:43,337.337 INFO    ] Launching Daemon at Sat Jun 27 00:19:43 IST 2026
[2026-06-27 00:19:43,348.348 INFO    ] ================================================
[2026-06-27 00:19:43,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:19:43
[2026-06-27 00:19:44,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:19:44,147.147 INFO    ] Initializing speech engine...
[2026-06-27 00:19:44,151.151 INFO    ] 2026-06-27 00:19:44
[2026-06-27 00:19:44,342.342 INFO    ] 2026-06-27 00:19:44
[2026-06-27 00:19:44,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:19:44,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:19:44,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:19:44,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:19:44,798.798 INFO    ] time= 27/06/2026 00:19:44
[2026-06-27 00:19:44,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:19:44,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:19:44,898.898 INFO    ] No existing commands found in stream
[2026-06-27 00:19:49,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:19:49,909.909 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-27 00:19:53,857.857 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:19:53,858.858 INFO    ] Checking for system updates...
[2026-06-27 00:19:53,880.880 INFO    ] 200
[2026-06-27 00:19:53,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:19:53,914.914 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:19:53,915.915 INFO    ] No update needed
[2026-06-27 00:19:53,917.917 INFO    ] Checking for camera pi updates...
[2026-06-27 00:19:53,936.936 INFO    ] 200
[2026-06-27 00:19:53,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:19:53,964.964 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:19:54,091.091 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:19:54,092.092 INFO    ] No camera update needed
[2026-06-27 00:19:54,093.093 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:19:54,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:19:54,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:19:54,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:19:56,132.132 INFO    ] ================================================
[2026-06-27 00:19:56,141.141 INFO    ] Launching Daemon at Sat Jun 27 00:19:56 IST 2026
[2026-06-27 00:19:56,148.148 INFO    ] ================================================
[2026-06-27 00:19:56,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:19:56
[2026-06-27 00:19:56,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:19:56,897.897 INFO    ] Initializing speech engine...
[2026-06-27 00:19:56,905.905 INFO    ] 2026-06-27 00:19:56
[2026-06-27 00:19:57,116.116 INFO    ] 2026-06-27 00:19:57
[2026-06-27 00:19:57,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:19:57,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:19:57,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:19:57,473.473 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:19:57,526.526 INFO    ] time= 27/06/2026 00:19:57
[2026-06-27 00:19:57,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:19:57,564.564 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:19:57,631.631 INFO    ] No existing commands found in stream
[2026-06-27 00:20:02,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:20:02,645.645 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-27 00:20:08,830.830 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:20:08,832.832 INFO    ] Checking for system updates...
[2026-06-27 00:20:08,854.854 INFO    ] 200
[2026-06-27 00:20:08,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:20:08,889.889 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:20:08,891.891 INFO    ] No update needed
[2026-06-27 00:20:08,892.892 INFO    ] Checking for camera pi updates...
[2026-06-27 00:20:08,912.912 INFO    ] 200
[2026-06-27 00:20:08,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:20:08,941.941 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:20:08,972.972 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:20:08,974.974 INFO    ] No camera update needed
[2026-06-27 00:20:08,976.976 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:20:08,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:20:08,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:20:08,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:20:11,025.025 INFO    ] ================================================
[2026-06-27 00:20:11,042.042 INFO    ] Launching Daemon at Sat Jun 27 00:20:11 IST 2026
[2026-06-27 00:20:11,053.053 INFO    ] ================================================
[2026-06-27 00:20:11,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:20:11
[2026-06-27 00:20:11,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:20:11,934.934 INFO    ] Initializing speech engine...
[2026-06-27 00:20:11,939.939 INFO    ] 2026-06-27 00:20:11
[2026-06-27 00:20:12,149.149 INFO    ] 2026-06-27 00:20:12
[2026-06-27 00:20:12,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:20:12,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:20:12,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:20:12,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:20:12,554.554 INFO    ] time= 27/06/2026 00:20:12
[2026-06-27 00:20:12,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:20:12,597.597 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:20:12,664.664 INFO    ] No existing commands found in stream
[2026-06-27 00:20:17,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:20:17,682.682 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-27 00:20:20,644.644 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 00:20:20,647.647 INFO    ] Checking for system updates...
[2026-06-27 00:20:20,690.690 INFO    ] 200
[2026-06-27 00:20:20,692.692 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:20:20,755.755 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:20:20,759.759 INFO    ] No update needed
[2026-06-27 00:20:20,762.762 INFO    ] Checking for camera pi updates...
[2026-06-27 00:20:20,788.788 INFO    ] 200
[2026-06-27 00:20:20,790.790 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:20:20,816.816 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:20:20,860.860 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:20:20,861.861 INFO    ] No camera update needed
[2026-06-27 00:20:20,862.862 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:20:20,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:20:20,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:20:20,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:20:22,910.910 INFO    ] ================================================
[2026-06-27 00:20:22,926.926 INFO    ] Launching Daemon at Sat Jun 27 00:20:22 IST 2026
[2026-06-27 00:20:22,938.938 INFO    ] ================================================
[2026-06-27 00:20:23,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:20:23
[2026-06-27 00:20:23,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:20:23,743.743 INFO    ] Initializing speech engine...
[2026-06-27 00:20:23,749.749 INFO    ] 2026-06-27 00:20:23
[2026-06-27 00:20:23,954.954 INFO    ] 2026-06-27 00:20:23
[2026-06-27 00:20:23,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:20:25,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:20:25,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:20:25,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:20:26,000.000 INFO    ] time= 27/06/2026 00:20:25
[2026-06-27 00:20:26,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:20:26,004.004 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:20:26,060.060 INFO    ] No existing commands found in stream
[2026-06-27 00:20:31,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:20:31,072.072 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-27 00:20:35,346.346 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 00:20:35,347.347 INFO    ] Checking for system updates...
[2026-06-27 00:20:35,368.368 INFO    ] 200
[2026-06-27 00:20:35,369.369 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:20:35,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:20:35,402.402 INFO    ] No update needed
[2026-06-27 00:20:35,403.403 INFO    ] Checking for camera pi updates...
[2026-06-27 00:20:35,423.423 INFO    ] 200
[2026-06-27 00:20:35,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:20:35,449.449 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:20:35,507.507 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:20:35,509.509 INFO    ] No camera update needed
[2026-06-27 00:20:35,510.510 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:20:35,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:20:35,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:20:35,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:20:37,560.560 INFO    ] ================================================
[2026-06-27 00:20:37,576.576 INFO    ] Launching Daemon at Sat Jun 27 00:20:37 IST 2026
[2026-06-27 00:20:37,588.588 INFO    ] ================================================
[2026-06-27 00:20:37,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:20:37
[2026-06-27 00:20:38,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:20:38,377.377 INFO    ] Initializing speech engine...
[2026-06-27 00:20:38,385.385 INFO    ] 2026-06-27 00:20:38
[2026-06-27 00:20:38,596.596 INFO    ] 2026-06-27 00:20:38
[2026-06-27 00:20:38,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:20:38,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:20:38,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:20:38,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:20:38,996.996 INFO    ] time= 27/06/2026 00:20:38
[2026-06-27 00:20:39,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:20:39,040.040 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:20:39,111.111 INFO    ] No existing commands found in stream
[2026-06-27 00:20:44,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:20:44,123.123 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-27 00:20:47,521.521 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:20:47,523.523 INFO    ] Checking for system updates...
[2026-06-27 00:20:47,546.546 INFO    ] 200
[2026-06-27 00:20:47,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:20:47,578.578 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:20:47,579.579 INFO    ] No update needed
[2026-06-27 00:20:47,581.581 INFO    ] Checking for camera pi updates...
[2026-06-27 00:20:47,600.600 INFO    ] 200
[2026-06-27 00:20:47,601.601 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:20:47,628.628 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:20:47,673.673 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:20:47,674.674 INFO    ] No camera update needed
[2026-06-27 00:20:47,676.676 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:20:47,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:20:47,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:20:47,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:20:49,721.721 INFO    ] ================================================
[2026-06-27 00:20:49,737.737 INFO    ] Launching Daemon at Sat Jun 27 00:20:49 IST 2026
[2026-06-27 00:20:49,748.748 INFO    ] ================================================
[2026-06-27 00:20:50,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:20:50
[2026-06-27 00:20:50,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:20:50,542.542 INFO    ] Initializing speech engine...
[2026-06-27 00:20:50,547.547 INFO    ] 2026-06-27 00:20:50
[2026-06-27 00:20:50,750.750 INFO    ] 2026-06-27 00:20:50
[2026-06-27 00:20:50,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:20:50,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:20:50,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:20:52,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:20:52,185.185 INFO    ] time= 27/06/2026 00:20:52
[2026-06-27 00:20:52,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:20:52,188.188 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:20:52,244.244 INFO    ] No existing commands found in stream
[2026-06-27 00:20:57,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:20:57,256.256 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-27 00:20:58,312.312 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 00:20:58,314.314 INFO    ] Checking for system updates...
[2026-06-27 00:20:58,335.335 INFO    ] 200
[2026-06-27 00:20:58,336.336 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:20:58,367.367 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:20:58,368.368 INFO    ] No update needed
[2026-06-27 00:20:58,369.369 INFO    ] Checking for camera pi updates...
[2026-06-27 00:20:58,390.390 INFO    ] 200
[2026-06-27 00:20:58,392.392 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:20:58,415.415 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:20:58,465.465 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:20:58,466.466 INFO    ] No camera update needed
[2026-06-27 00:20:58,468.468 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:20:58,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:20:58,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:20:58,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:21:00,514.514 INFO    ] ================================================
[2026-06-27 00:21:00,531.531 INFO    ] Launching Daemon at Sat Jun 27 00:21:00 IST 2026
[2026-06-27 00:21:00,543.543 INFO    ] ================================================
[2026-06-27 00:21:00,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:21:00
[2026-06-27 00:21:01,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:21:01,417.417 INFO    ] Initializing speech engine...
[2026-06-27 00:21:01,420.420 INFO    ] 2026-06-27 00:21:01
[2026-06-27 00:21:01,628.628 INFO    ] 2026-06-27 00:21:01
[2026-06-27 00:21:01,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:21:01,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:21:01,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:21:01,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:21:01,976.976 INFO    ] time= 27/06/2026 00:21:01
[2026-06-27 00:21:01,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:21:01,980.980 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:21:02,042.042 INFO    ] No existing commands found in stream
[2026-06-27 00:21:07,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:21:07,059.059 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-27 00:21:08,559.559 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 00:21:08,560.560 INFO    ] Checking for system updates...
[2026-06-27 00:21:08,582.582 INFO    ] 200
[2026-06-27 00:21:08,584.584 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:21:08,617.617 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:21:08,618.618 INFO    ] No update needed
[2026-06-27 00:21:08,619.619 INFO    ] Checking for camera pi updates...
[2026-06-27 00:21:08,641.641 INFO    ] 200
[2026-06-27 00:21:08,642.642 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:21:08,666.666 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:21:08,699.699 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:21:08,700.700 INFO    ] No camera update needed
[2026-06-27 00:21:08,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:21:08,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:21:08,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:21:08,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:21:10,747.747 INFO    ] ================================================
[2026-06-27 00:21:10,763.763 INFO    ] Launching Daemon at Sat Jun 27 00:21:10 IST 2026
[2026-06-27 00:21:10,775.775 INFO    ] ================================================
[2026-06-27 00:21:11,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:21:11
[2026-06-27 00:21:11,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:21:11,581.581 INFO    ] Initializing speech engine...
[2026-06-27 00:21:11,585.585 INFO    ] 2026-06-27 00:21:11
[2026-06-27 00:21:11,787.787 INFO    ] 2026-06-27 00:21:11
[2026-06-27 00:21:11,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:21:11,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:21:12,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:21:12,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:21:12,202.202 INFO    ] time= 27/06/2026 00:21:12
[2026-06-27 00:21:12,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:21:12,287.287 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:21:12,383.383 INFO    ] No existing commands found in stream
[2026-06-27 00:21:17,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:21:17,396.396 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-27 00:21:17,947.947 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 00:21:17,949.949 INFO    ] Checking for system updates...
[2026-06-27 00:21:17,977.977 INFO    ] 200
[2026-06-27 00:21:17,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:21:18,013.013 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:21:18,015.015 INFO    ] No update needed
[2026-06-27 00:21:18,016.016 INFO    ] Checking for camera pi updates...
[2026-06-27 00:21:18,036.036 INFO    ] 200
[2026-06-27 00:21:18,037.037 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:21:18,060.060 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:21:18,111.111 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:21:18,112.112 INFO    ] No camera update needed
[2026-06-27 00:21:18,113.113 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:21:18,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:21:18,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:21:18,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:21:20,159.159 INFO    ] ================================================
[2026-06-27 00:21:20,175.175 INFO    ] Launching Daemon at Sat Jun 27 00:21:20 IST 2026
[2026-06-27 00:21:20,187.187 INFO    ] ================================================
[2026-06-27 00:21:20,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:21:20
[2026-06-27 00:21:20,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:21:20,995.995 INFO    ] Initializing speech engine...
[2026-06-27 00:21:21,001.001 INFO    ] 2026-06-27 00:21:20
[2026-06-27 00:21:21,207.207 INFO    ] 2026-06-27 00:21:21
[2026-06-27 00:21:21,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:21:21,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:21:21,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:21:21,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:21:21,624.624 INFO    ] time= 27/06/2026 00:21:21
[2026-06-27 00:21:21,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:21:21,657.657 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:21:21,725.725 INFO    ] No existing commands found in stream
[2026-06-27 00:21:26,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:21:26,737.737 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-27 00:21:29,275.275 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 00:21:29,278.278 INFO    ] Checking for system updates...
[2026-06-27 00:21:29,326.326 INFO    ] 200
[2026-06-27 00:21:29,328.328 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:21:29,381.381 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:21:29,384.384 INFO    ] No update needed
[2026-06-27 00:21:29,387.387 INFO    ] Checking for camera pi updates...
[2026-06-27 00:21:29,424.424 INFO    ] 200
[2026-06-27 00:21:29,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:21:29,460.460 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:21:29,506.506 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:21:29,507.507 INFO    ] No camera update needed
[2026-06-27 00:21:29,509.509 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:21:29,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:21:29,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:21:29,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:21:31,554.554 INFO    ] ================================================
[2026-06-27 00:21:31,570.570 INFO    ] Launching Daemon at Sat Jun 27 00:21:31 IST 2026
[2026-06-27 00:21:31,581.581 INFO    ] ================================================
[2026-06-27 00:21:31,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:21:31
[2026-06-27 00:21:32,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:21:32,436.436 INFO    ] Initializing speech engine...
[2026-06-27 00:21:32,449.449 INFO    ] 2026-06-27 00:21:32
[2026-06-27 00:21:32,672.672 INFO    ] 2026-06-27 00:21:32
[2026-06-27 00:21:32,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:21:32,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:21:32,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:21:33,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:21:33,089.089 INFO    ] time= 27/06/2026 00:21:33
[2026-06-27 00:21:33,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:21:33,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:21:33,199.199 INFO    ] No existing commands found in stream
[2026-06-27 00:21:38,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:21:38,212.212 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-27 00:21:41,591.591 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:21:41,592.592 INFO    ] Checking for system updates...
[2026-06-27 00:21:41,613.613 INFO    ] 200
[2026-06-27 00:21:41,615.615 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:21:41,645.645 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:21:41,646.646 INFO    ] No update needed
[2026-06-27 00:21:41,647.647 INFO    ] Checking for camera pi updates...
[2026-06-27 00:21:41,669.669 INFO    ] 200
[2026-06-27 00:21:41,670.670 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:21:41,694.694 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:21:41,742.742 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:21:41,743.743 INFO    ] No camera update needed
[2026-06-27 00:21:41,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:21:41,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:21:41,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:21:41,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:21:43,793.793 INFO    ] ================================================
[2026-06-27 00:21:43,809.809 INFO    ] Launching Daemon at Sat Jun 27 00:21:43 IST 2026
[2026-06-27 00:21:43,820.820 INFO    ] ================================================
[2026-06-27 00:21:44,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:21:44
[2026-06-27 00:21:44,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:21:44,647.647 INFO    ] Initializing speech engine...
[2026-06-27 00:21:44,656.656 INFO    ] 2026-06-27 00:21:44
[2026-06-27 00:21:44,862.862 INFO    ] 2026-06-27 00:21:44
[2026-06-27 00:21:44,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:21:45,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:21:45,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:21:45,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:21:45,279.279 INFO    ] time= 27/06/2026 00:21:45
[2026-06-27 00:21:45,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:21:45,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:21:45,378.378 INFO    ] No existing commands found in stream
[2026-06-27 00:21:50,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:21:50,391.391 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-27 00:21:50,967.967 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:21:50,968.968 INFO    ] Checking for system updates...
[2026-06-27 00:21:50,990.990 INFO    ] 200
[2026-06-27 00:21:50,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:21:51,024.024 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:21:51,026.026 INFO    ] No update needed
[2026-06-27 00:21:51,027.027 INFO    ] Checking for camera pi updates...
[2026-06-27 00:21:51,050.050 INFO    ] 200
[2026-06-27 00:21:51,051.051 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:21:51,075.075 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:21:51,127.127 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:21:51,128.128 INFO    ] No camera update needed
[2026-06-27 00:21:51,129.129 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:21:51,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:21:51,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:21:51,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:21:53,177.177 INFO    ] ================================================
[2026-06-27 00:21:53,194.194 INFO    ] Launching Daemon at Sat Jun 27 00:21:53 IST 2026
[2026-06-27 00:21:53,206.206 INFO    ] ================================================
[2026-06-27 00:21:53,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:21:53
[2026-06-27 00:21:53,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:21:54,019.019 INFO    ] Initializing speech engine...
[2026-06-27 00:21:54,030.030 INFO    ] 2026-06-27 00:21:54
[2026-06-27 00:21:54,236.236 INFO    ] 2026-06-27 00:21:54
[2026-06-27 00:21:54,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:21:55,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:21:55,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:21:56,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:21:56,004.004 INFO    ] time= 27/06/2026 00:21:56
[2026-06-27 00:21:56,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:21:56,006.006 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:21:56,051.051 INFO    ] No existing commands found in stream
[2026-06-27 00:22:01,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:22:01,063.063 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-27 00:22:01,870.870 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:22:01,872.872 INFO    ] Checking for system updates...
[2026-06-27 00:22:01,903.903 INFO    ] 200
[2026-06-27 00:22:01,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:22:01,945.945 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:22:01,947.947 INFO    ] No update needed
[2026-06-27 00:22:01,949.949 INFO    ] Checking for camera pi updates...
[2026-06-27 00:22:01,976.976 INFO    ] 200
[2026-06-27 00:22:01,981.981 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:22:02,038.038 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:22:02,177.177 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:22:02,179.179 INFO    ] No camera update needed
[2026-06-27 00:22:02,181.181 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:22:02,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:22:02,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:22:02,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:22:04,238.238 INFO    ] ================================================
[2026-06-27 00:22:04,254.254 INFO    ] Launching Daemon at Sat Jun 27 00:22:04 IST 2026
[2026-06-27 00:22:04,265.265 INFO    ] ================================================
[2026-06-27 00:22:04,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:22:04
[2026-06-27 00:22:04,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:22:05,082.082 INFO    ] Initializing speech engine...
[2026-06-27 00:22:05,087.087 INFO    ] 2026-06-27 00:22:05
[2026-06-27 00:22:05,303.303 INFO    ] 2026-06-27 00:22:05
[2026-06-27 00:22:05,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:22:05,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:22:05,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:22:05,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:22:05,741.741 INFO    ] time= 27/06/2026 00:22:05
[2026-06-27 00:22:05,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:22:05,792.792 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:22:05,866.866 INFO    ] No existing commands found in stream
[2026-06-27 00:22:10,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:22:10,879.879 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-27 00:22:11,713.713 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 00:22:11,715.715 INFO    ] Checking for system updates...
[2026-06-27 00:22:11,736.736 INFO    ] 200
[2026-06-27 00:22:11,737.737 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:22:11,767.767 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:22:11,768.768 INFO    ] No update needed
[2026-06-27 00:22:11,770.770 INFO    ] Checking for camera pi updates...
[2026-06-27 00:22:11,789.789 INFO    ] 200
[2026-06-27 00:22:11,790.790 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:22:11,816.816 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:22:11,856.856 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:22:11,857.857 INFO    ] No camera update needed
[2026-06-27 00:22:11,859.859 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:22:11,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:22:11,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:22:11,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:22:13,906.906 INFO    ] ================================================
[2026-06-27 00:22:13,923.923 INFO    ] Launching Daemon at Sat Jun 27 00:22:13 IST 2026
[2026-06-27 00:22:13,934.934 INFO    ] ================================================
[2026-06-27 00:22:14,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:22:14
[2026-06-27 00:22:14,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:22:14,717.717 INFO    ] Initializing speech engine...
[2026-06-27 00:22:14,730.730 INFO    ] 2026-06-27 00:22:14
[2026-06-27 00:22:14,937.937 INFO    ] 2026-06-27 00:22:14
[2026-06-27 00:22:14,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:22:15,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:22:15,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:22:15,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:22:15,329.329 INFO    ] time= 27/06/2026 00:22:15
[2026-06-27 00:22:15,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:22:15,383.383 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:22:15,455.455 INFO    ] No existing commands found in stream
[2026-06-27 00:22:20,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:22:20,467.467 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-27 00:22:22,361.361 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 00:22:22,363.363 INFO    ] Checking for system updates...
[2026-06-27 00:22:22,384.384 INFO    ] 200
[2026-06-27 00:22:22,385.385 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:22:22,417.417 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:22:22,419.419 INFO    ] No update needed
[2026-06-27 00:22:22,420.420 INFO    ] Checking for camera pi updates...
[2026-06-27 00:22:22,440.440 INFO    ] 200
[2026-06-27 00:22:22,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:22:22,466.466 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:22:22,506.506 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:22:22,508.508 INFO    ] No camera update needed
[2026-06-27 00:22:22,509.509 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:22:22,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:22:22,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:22:22,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:22:24,554.554 INFO    ] ================================================
[2026-06-27 00:22:24,570.570 INFO    ] Launching Daemon at Sat Jun 27 00:22:24 IST 2026
[2026-06-27 00:22:24,581.581 INFO    ] ================================================
[2026-06-27 00:22:24,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:22:24
[2026-06-27 00:22:25,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:22:25,383.383 INFO    ] Initializing speech engine...
[2026-06-27 00:22:25,389.389 INFO    ] 2026-06-27 00:22:25
[2026-06-27 00:22:25,591.591 INFO    ] 2026-06-27 00:22:25
[2026-06-27 00:22:25,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:22:25,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:22:25,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:22:26,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:22:26,147.147 INFO    ] time= 27/06/2026 00:22:26
[2026-06-27 00:22:26,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:22:26,153.153 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:22:26,223.223 INFO    ] No existing commands found in stream
[2026-06-27 00:22:31,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:22:31,236.236 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-27 00:22:32,993.993 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:22:32,995.995 INFO    ] Checking for system updates...
[2026-06-27 00:22:33,016.016 INFO    ] 200
[2026-06-27 00:22:33,017.017 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:22:33,050.050 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:22:33,051.051 INFO    ] No update needed
[2026-06-27 00:22:33,053.053 INFO    ] Checking for camera pi updates...
[2026-06-27 00:22:33,072.072 INFO    ] 200
[2026-06-27 00:22:33,073.073 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:22:33,097.097 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:22:33,139.139 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:22:33,140.140 INFO    ] No camera update needed
[2026-06-27 00:22:33,142.142 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:22:33,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:22:33,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:22:33,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:22:35,187.187 INFO    ] ================================================
[2026-06-27 00:22:35,202.202 INFO    ] Launching Daemon at Sat Jun 27 00:22:35 IST 2026
[2026-06-27 00:22:35,213.213 INFO    ] ================================================
[2026-06-27 00:22:35,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:22:35
[2026-06-27 00:22:35,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:22:36,027.027 INFO    ] Initializing speech engine...
[2026-06-27 00:22:36,032.032 INFO    ] 2026-06-27 00:22:36
[2026-06-27 00:22:36,248.248 INFO    ] 2026-06-27 00:22:36
[2026-06-27 00:22:36,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:22:36,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:22:36,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:22:36,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:22:36,657.657 INFO    ] time= 27/06/2026 00:22:36
[2026-06-27 00:22:36,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:22:36,695.695 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:22:36,760.760 INFO    ] No existing commands found in stream
[2026-06-27 00:22:41,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:22:41,772.772 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-27 00:22:43,816.816 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 00:22:43,817.817 INFO    ] Checking for system updates...
[2026-06-27 00:22:43,839.839 INFO    ] 200
[2026-06-27 00:22:43,840.840 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:22:43,871.871 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:22:43,872.872 INFO    ] No update needed
[2026-06-27 00:22:43,873.873 INFO    ] Checking for camera pi updates...
[2026-06-27 00:22:43,893.893 INFO    ] 200
[2026-06-27 00:22:43,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:22:43,922.922 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:22:43,963.963 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:22:43,964.964 INFO    ] No camera update needed
[2026-06-27 00:22:43,966.966 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:22:43,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:22:43,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:22:43,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:22:46,013.013 INFO    ] ================================================
[2026-06-27 00:22:46,029.029 INFO    ] Launching Daemon at Sat Jun 27 00:22:46 IST 2026
[2026-06-27 00:22:46,041.041 INFO    ] ================================================
[2026-06-27 00:22:46,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:22:46
[2026-06-27 00:22:46,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:22:46,830.830 INFO    ] Initializing speech engine...
[2026-06-27 00:22:46,838.838 INFO    ] 2026-06-27 00:22:46
[2026-06-27 00:22:47,058.058 INFO    ] 2026-06-27 00:22:47
[2026-06-27 00:22:47,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:22:47,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:22:47,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:22:47,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:22:47,499.499 INFO    ] time= 27/06/2026 00:22:47
[2026-06-27 00:22:47,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:22:47,541.541 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:22:47,618.618 INFO    ] No existing commands found in stream
[2026-06-27 00:22:52,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:22:52,635.635 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-27 00:22:53,277.277 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 00:22:53,278.278 INFO    ] Checking for system updates...
[2026-06-27 00:22:53,300.300 INFO    ] 200
[2026-06-27 00:22:53,302.302 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:22:53,332.332 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:22:53,333.333 INFO    ] No update needed
[2026-06-27 00:22:53,335.335 INFO    ] Checking for camera pi updates...
[2026-06-27 00:22:53,356.356 INFO    ] 200
[2026-06-27 00:22:53,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:22:53,381.381 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:22:53,411.411 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:22:53,412.412 INFO    ] No camera update needed
[2026-06-27 00:22:53,414.414 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:22:53,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:22:53,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:22:53,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:22:55,458.458 INFO    ] ================================================
[2026-06-27 00:22:55,474.474 INFO    ] Launching Daemon at Sat Jun 27 00:22:55 IST 2026
[2026-06-27 00:22:55,485.485 INFO    ] ================================================
[2026-06-27 00:22:55,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:22:55
[2026-06-27 00:22:56,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:22:56,364.364 INFO    ] Initializing speech engine...
[2026-06-27 00:22:56,368.368 INFO    ] 2026-06-27 00:22:56
[2026-06-27 00:22:56,575.575 INFO    ] 2026-06-27 00:22:56
[2026-06-27 00:22:56,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:22:56,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:22:56,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:22:56,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:22:56,987.987 INFO    ] time= 27/06/2026 00:22:56
[2026-06-27 00:22:57,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:22:57,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:22:57,093.093 INFO    ] No existing commands found in stream
[2026-06-27 00:23:02,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:23:02,104.104 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-27 00:23:05,999.999 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:23:06,000.000 INFO    ] Checking for system updates...
[2026-06-27 00:23:06,021.021 INFO    ] 200
[2026-06-27 00:23:06,023.023 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:23:06,053.053 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:23:06,055.055 INFO    ] No update needed
[2026-06-27 00:23:06,056.056 INFO    ] Checking for camera pi updates...
[2026-06-27 00:23:06,077.077 INFO    ] 200
[2026-06-27 00:23:06,079.079 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:23:06,104.104 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:23:06,146.146 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:23:06,148.148 INFO    ] No camera update needed
[2026-06-27 00:23:06,149.149 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:23:06,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:23:06,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:23:06,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:23:08,183.183 INFO    ] ================================================
[2026-06-27 00:23:08,193.193 INFO    ] Launching Daemon at Sat Jun 27 00:23:08 IST 2026
[2026-06-27 00:23:08,200.200 INFO    ] ================================================
[2026-06-27 00:23:08,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:23:08
[2026-06-27 00:23:08,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:23:08,986.986 INFO    ] Initializing speech engine...
[2026-06-27 00:23:08,999.999 INFO    ] 2026-06-27 00:23:08
[2026-06-27 00:23:09,223.223 INFO    ] 2026-06-27 00:23:09
[2026-06-27 00:23:09,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:23:09,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:23:09,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:23:09,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:23:09,655.655 INFO    ] time= 27/06/2026 00:23:09
[2026-06-27 00:23:09,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:23:09,695.695 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:23:09,763.763 INFO    ] No existing commands found in stream
[2026-06-27 00:23:14,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:23:14,775.775 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-27 00:23:18,542.542 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:23:18,543.543 INFO    ] Checking for system updates...
[2026-06-27 00:23:18,566.566 INFO    ] 200
[2026-06-27 00:23:18,571.571 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:23:18,605.605 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:23:18,606.606 INFO    ] No update needed
[2026-06-27 00:23:18,607.607 INFO    ] Checking for camera pi updates...
[2026-06-27 00:23:18,628.628 INFO    ] 200
[2026-06-27 00:23:18,630.630 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:23:18,653.653 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:23:18,699.699 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:23:18,701.701 INFO    ] No camera update needed
[2026-06-27 00:23:18,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:23:18,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:23:18,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:23:18,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:23:20,750.750 INFO    ] ================================================
[2026-06-27 00:23:20,766.766 INFO    ] Launching Daemon at Sat Jun 27 00:23:20 IST 2026
[2026-06-27 00:23:20,778.778 INFO    ] ================================================
[2026-06-27 00:23:21,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:23:21
[2026-06-27 00:23:21,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:23:21,561.561 INFO    ] Initializing speech engine...
[2026-06-27 00:23:21,566.566 INFO    ] 2026-06-27 00:23:21
[2026-06-27 00:23:21,759.759 INFO    ] 2026-06-27 00:23:21
[2026-06-27 00:23:21,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:23:21,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:23:22,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:23:22,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:23:22,184.184 INFO    ] time= 27/06/2026 00:23:22
[2026-06-27 00:23:22,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:23:22,268.268 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:23:22,370.370 INFO    ] No existing commands found in stream
[2026-06-27 00:23:27,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:23:27,383.383 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-27 00:23:31,254.254 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 00:23:31,256.256 INFO    ] Checking for system updates...
[2026-06-27 00:23:31,278.278 INFO    ] 200
[2026-06-27 00:23:31,279.279 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:23:31,309.309 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:23:31,311.311 INFO    ] No update needed
[2026-06-27 00:23:31,312.312 INFO    ] Checking for camera pi updates...
[2026-06-27 00:23:31,332.332 INFO    ] 200
[2026-06-27 00:23:31,333.333 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:23:31,357.357 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:23:31,407.407 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:23:31,408.408 INFO    ] No camera update needed
[2026-06-27 00:23:31,409.409 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:23:31,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:23:31,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:23:31,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:23:33,448.448 INFO    ] ================================================
[2026-06-27 00:23:33,464.464 INFO    ] Launching Daemon at Sat Jun 27 00:23:33 IST 2026
[2026-06-27 00:23:33,475.475 INFO    ] ================================================
[2026-06-27 00:23:33,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:23:33
[2026-06-27 00:23:34,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:23:34,279.279 INFO    ] Initializing speech engine...
[2026-06-27 00:23:34,284.284 INFO    ] 2026-06-27 00:23:34
[2026-06-27 00:23:34,489.489 INFO    ] 2026-06-27 00:23:34
[2026-06-27 00:23:34,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:23:34,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:23:34,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:23:34,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:23:34,903.903 INFO    ] time= 27/06/2026 00:23:34
[2026-06-27 00:23:34,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:23:34,936.936 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:23:35,003.003 INFO    ] No existing commands found in stream
[2026-06-27 00:23:40,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:23:40,020.020 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-27 00:23:42,042.042 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 00:23:42,044.044 INFO    ] Checking for system updates...
[2026-06-27 00:23:42,064.064 INFO    ] 200
[2026-06-27 00:23:42,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:23:42,096.096 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:23:42,097.097 INFO    ] No update needed
[2026-06-27 00:23:42,099.099 INFO    ] Checking for camera pi updates...
[2026-06-27 00:23:42,118.118 INFO    ] 200
[2026-06-27 00:23:42,120.120 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:23:42,143.143 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:23:42,194.194 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:23:42,195.195 INFO    ] No camera update needed
[2026-06-27 00:23:42,197.197 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:23:42,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:23:42,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:23:42,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:23:44,244.244 INFO    ] ================================================
[2026-06-27 00:23:44,260.260 INFO    ] Launching Daemon at Sat Jun 27 00:23:44 IST 2026
[2026-06-27 00:23:44,271.271 INFO    ] ================================================
[2026-06-27 00:23:44,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:23:44
[2026-06-27 00:23:44,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:23:45,067.067 INFO    ] Initializing speech engine...
[2026-06-27 00:23:45,078.078 INFO    ] 2026-06-27 00:23:45
[2026-06-27 00:23:45,280.280 INFO    ] 2026-06-27 00:23:45
[2026-06-27 00:23:45,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:23:45,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:23:45,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:23:45,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:23:45,698.698 INFO    ] time= 27/06/2026 00:23:45
[2026-06-27 00:23:45,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:23:45,728.728 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:23:45,794.794 INFO    ] No existing commands found in stream
[2026-06-27 00:23:50,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:23:50,807.807 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-27 00:23:56,052.052 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 00:23:56,054.054 INFO    ] Checking for system updates...
[2026-06-27 00:23:56,080.080 INFO    ] 200
[2026-06-27 00:23:56,082.082 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:23:56,121.121 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:23:56,122.122 INFO    ] No update needed
[2026-06-27 00:23:56,124.124 INFO    ] Checking for camera pi updates...
[2026-06-27 00:23:56,150.150 INFO    ] 200
[2026-06-27 00:23:56,151.151 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:23:56,178.178 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:23:56,247.247 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:23:56,249.249 INFO    ] No camera update needed
[2026-06-27 00:23:56,252.252 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:23:56,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:23:56,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:23:56,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:23:58,305.305 INFO    ] ================================================
[2026-06-27 00:23:58,321.321 INFO    ] Launching Daemon at Sat Jun 27 00:23:58 IST 2026
[2026-06-27 00:23:58,332.332 INFO    ] ================================================
[2026-06-27 00:23:58,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:23:58
[2026-06-27 00:23:58,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:23:59,127.127 INFO    ] Initializing speech engine...
[2026-06-27 00:23:59,136.136 INFO    ] 2026-06-27 00:23:59
[2026-06-27 00:23:59,340.340 INFO    ] 2026-06-27 00:23:59
[2026-06-27 00:23:59,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:23:59,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:23:59,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:23:59,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:23:59,793.793 INFO    ] time= 27/06/2026 00:23:59
[2026-06-27 00:23:59,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:23:59,823.823 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:23:59,933.933 INFO    ] No existing commands found in stream
[2026-06-27 00:24:04,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:24:04,946.946 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-27 00:24:07,522.522 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 00:24:07,524.524 INFO    ] Checking for system updates...
[2026-06-27 00:24:07,546.546 INFO    ] 200
[2026-06-27 00:24:07,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:24:07,581.581 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:24:07,582.582 INFO    ] No update needed
[2026-06-27 00:24:07,584.584 INFO    ] Checking for camera pi updates...
[2026-06-27 00:24:07,605.605 INFO    ] 200
[2026-06-27 00:24:07,606.606 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:24:07,630.630 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:24:07,774.774 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:24:07,775.775 INFO    ] No camera update needed
[2026-06-27 00:24:07,776.776 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:24:07,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:24:07,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:24:07,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:24:09,823.823 INFO    ] ================================================
[2026-06-27 00:24:09,839.839 INFO    ] Launching Daemon at Sat Jun 27 00:24:09 IST 2026
[2026-06-27 00:24:09,851.851 INFO    ] ================================================
[2026-06-27 00:24:10,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:24:10
[2026-06-27 00:24:10,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:24:10,764.764 INFO    ] Initializing speech engine...
[2026-06-27 00:24:10,770.770 INFO    ] 2026-06-27 00:24:10
[2026-06-27 00:24:10,982.982 INFO    ] 2026-06-27 00:24:10
[2026-06-27 00:24:11,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:24:11,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:24:11,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:24:11,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:24:11,405.405 INFO    ] time= 27/06/2026 00:24:11
[2026-06-27 00:24:11,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:24:11,440.440 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:24:11,508.508 INFO    ] No existing commands found in stream
[2026-06-27 00:24:16,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:24:16,520.520 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-27 00:24:18,420.420 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 00:24:18,422.422 INFO    ] Checking for system updates...
[2026-06-27 00:24:18,444.444 INFO    ] 200
[2026-06-27 00:24:18,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:24:18,477.477 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:24:18,478.478 INFO    ] No update needed
[2026-06-27 00:24:18,480.480 INFO    ] Checking for camera pi updates...
[2026-06-27 00:24:18,501.501 INFO    ] 200
[2026-06-27 00:24:18,503.503 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:24:18,531.531 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:24:18,577.577 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:24:18,578.578 INFO    ] No camera update needed
[2026-06-27 00:24:18,580.580 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:24:18,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:24:18,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:24:18,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:24:20,628.628 INFO    ] ================================================
[2026-06-27 00:24:20,643.643 INFO    ] Launching Daemon at Sat Jun 27 00:24:20 IST 2026
[2026-06-27 00:24:20,654.654 INFO    ] ================================================
[2026-06-27 00:24:21,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:24:21
[2026-06-27 00:24:21,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:24:21,460.460 INFO    ] Initializing speech engine...
[2026-06-27 00:24:21,463.463 INFO    ] 2026-06-27 00:24:21
[2026-06-27 00:24:21,658.658 INFO    ] 2026-06-27 00:24:21
[2026-06-27 00:24:21,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:24:21,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:24:21,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:24:22,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:24:22,152.152 INFO    ] time= 27/06/2026 00:24:22
[2026-06-27 00:24:22,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:24:22,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:24:22,296.296 INFO    ] No existing commands found in stream
[2026-06-27 00:24:27,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:24:27,308.308 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-27 00:24:30,907.907 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:24:30,908.908 INFO    ] Checking for system updates...
[2026-06-27 00:24:30,929.929 INFO    ] 200
[2026-06-27 00:24:30,931.931 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:24:30,977.977 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:24:30,979.979 INFO    ] No update needed
[2026-06-27 00:24:30,980.980 INFO    ] Checking for camera pi updates...
[2026-06-27 00:24:31,019.019 INFO    ] 200
[2026-06-27 00:24:31,020.020 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:24:31,046.046 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:24:31,086.086 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:24:31,088.088 INFO    ] No camera update needed
[2026-06-27 00:24:31,089.089 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:24:31,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:24:31,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:24:31,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:24:33,130.130 INFO    ] ================================================
[2026-06-27 00:24:33,145.145 INFO    ] Launching Daemon at Sat Jun 27 00:24:33 IST 2026
[2026-06-27 00:24:33,157.157 INFO    ] ================================================
[2026-06-27 00:24:33,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:24:33
[2026-06-27 00:24:33,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:24:33,982.982 INFO    ] Initializing speech engine...
[2026-06-27 00:24:33,987.987 INFO    ] 2026-06-27 00:24:33
[2026-06-27 00:24:34,191.191 INFO    ] 2026-06-27 00:24:34
[2026-06-27 00:24:34,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:24:34,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:24:34,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:24:34,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:24:34,609.609 INFO    ] time= 27/06/2026 00:24:34
[2026-06-27 00:24:34,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:24:34,642.642 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:24:34,710.710 INFO    ] No existing commands found in stream
[2026-06-27 00:24:39,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:24:39,722.722 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-27 00:24:43,532.532 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 00:24:43,534.534 INFO    ] Checking for system updates...
[2026-06-27 00:24:43,556.556 INFO    ] 200
[2026-06-27 00:24:43,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:24:43,591.591 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:24:43,593.593 INFO    ] No update needed
[2026-06-27 00:24:43,594.594 INFO    ] Checking for camera pi updates...
[2026-06-27 00:24:43,617.617 INFO    ] 200
[2026-06-27 00:24:43,618.618 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:24:43,643.643 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:24:43,694.694 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:24:43,695.695 INFO    ] No camera update needed
[2026-06-27 00:24:43,697.697 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:24:43,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:24:43,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:24:43,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:24:45,745.745 INFO    ] ================================================
[2026-06-27 00:24:45,760.760 INFO    ] Launching Daemon at Sat Jun 27 00:24:45 IST 2026
[2026-06-27 00:24:45,771.771 INFO    ] ================================================
[2026-06-27 00:24:46,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:24:46
[2026-06-27 00:24:46,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:24:46,669.669 INFO    ] Initializing speech engine...
[2026-06-27 00:24:46,674.674 INFO    ] 2026-06-27 00:24:46
[2026-06-27 00:24:46,885.885 INFO    ] 2026-06-27 00:24:46
[2026-06-27 00:24:46,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:24:47,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:24:47,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:24:47,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:24:47,311.311 INFO    ] time= 27/06/2026 00:24:47
[2026-06-27 00:24:47,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:24:47,345.345 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:24:47,413.413 INFO    ] No existing commands found in stream
[2026-06-27 00:24:52,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:24:52,431.431 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-27 00:24:56,127.127 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 00:24:56,129.129 INFO    ] Checking for system updates...
[2026-06-27 00:24:56,151.151 INFO    ] 200
[2026-06-27 00:24:56,152.152 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:24:56,183.183 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:24:56,185.185 INFO    ] No update needed
[2026-06-27 00:24:56,186.186 INFO    ] Checking for camera pi updates...
[2026-06-27 00:24:56,206.206 INFO    ] 200
[2026-06-27 00:24:56,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:24:56,235.235 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:24:56,290.290 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:24:56,291.291 INFO    ] No camera update needed
[2026-06-27 00:24:56,292.292 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:24:56,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:24:56,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:24:56,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:24:58,339.339 INFO    ] ================================================
[2026-06-27 00:24:58,355.355 INFO    ] Launching Daemon at Sat Jun 27 00:24:58 IST 2026
[2026-06-27 00:24:58,366.366 INFO    ] ================================================
[2026-06-27 00:24:58,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:24:58
[2026-06-27 00:24:59,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:24:59,252.252 INFO    ] Initializing speech engine...
[2026-06-27 00:24:59,259.259 INFO    ] 2026-06-27 00:24:59
[2026-06-27 00:24:59,468.468 INFO    ] 2026-06-27 00:24:59
[2026-06-27 00:24:59,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:24:59,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:24:59,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:24:59,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:24:59,912.912 INFO    ] time= 27/06/2026 00:24:59
[2026-06-27 00:24:59,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:24:59,921.921 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:24:59,987.987 INFO    ] No existing commands found in stream
[2026-06-27 00:25:05,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:25:05,006.006 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-27 00:25:06,015.015 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 00:25:06,017.017 INFO    ] Checking for system updates...
[2026-06-27 00:25:06,038.038 INFO    ] 200
[2026-06-27 00:25:06,040.040 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:25:06,076.076 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:25:06,077.077 INFO    ] No update needed
[2026-06-27 00:25:06,078.078 INFO    ] Checking for camera pi updates...
[2026-06-27 00:25:06,098.098 INFO    ] 200
[2026-06-27 00:25:06,099.099 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:25:06,124.124 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:25:06,177.177 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:25:06,178.178 INFO    ] No camera update needed
[2026-06-27 00:25:06,180.180 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:25:06,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:25:06,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:25:06,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:25:08,226.226 INFO    ] ================================================
[2026-06-27 00:25:08,242.242 INFO    ] Launching Daemon at Sat Jun 27 00:25:08 IST 2026
[2026-06-27 00:25:08,253.253 INFO    ] ================================================
[2026-06-27 00:25:08,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:25:08
[2026-06-27 00:25:08,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:25:09,049.049 INFO    ] Initializing speech engine...
[2026-06-27 00:25:09,054.054 INFO    ] 2026-06-27 00:25:09
[2026-06-27 00:25:09,257.257 INFO    ] 2026-06-27 00:25:09
[2026-06-27 00:25:09,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:25:09,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:25:09,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:25:09,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:25:09,671.671 INFO    ] time= 27/06/2026 00:25:09
[2026-06-27 00:25:09,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:25:09,705.705 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:25:09,776.776 INFO    ] No existing commands found in stream
[2026-06-27 00:25:14,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:25:14,793.793 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-27 00:25:18,059.059 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:25:18,061.061 INFO    ] Checking for system updates...
[2026-06-27 00:25:18,082.082 INFO    ] 200
[2026-06-27 00:25:18,083.083 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:25:18,114.114 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:25:18,116.116 INFO    ] No update needed
[2026-06-27 00:25:18,117.117 INFO    ] Checking for camera pi updates...
[2026-06-27 00:25:18,137.137 INFO    ] 200
[2026-06-27 00:25:18,138.138 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:25:18,162.162 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:25:18,206.206 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:25:18,207.207 INFO    ] No camera update needed
[2026-06-27 00:25:18,209.209 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:25:18,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:25:18,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:25:18,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:25:20,257.257 INFO    ] ================================================
[2026-06-27 00:25:20,274.274 INFO    ] Launching Daemon at Sat Jun 27 00:25:20 IST 2026
[2026-06-27 00:25:20,286.286 INFO    ] ================================================
[2026-06-27 00:25:20,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:25:20
[2026-06-27 00:25:20,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:25:21,088.088 INFO    ] Initializing speech engine...
[2026-06-27 00:25:21,096.096 INFO    ] 2026-06-27 00:25:21
[2026-06-27 00:25:21,289.289 INFO    ] 2026-06-27 00:25:21
[2026-06-27 00:25:21,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:25:21,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:25:21,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:25:21,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:25:21,753.753 INFO    ] time= 27/06/2026 00:25:21
[2026-06-27 00:25:21,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:25:21,817.817 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:25:21,894.894 INFO    ] No existing commands found in stream
[2026-06-27 00:25:26,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:25:26,908.908 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-27 00:25:30,951.951 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 00:25:30,953.953 INFO    ] Checking for system updates...
[2026-06-27 00:25:30,976.976 INFO    ] 200
[2026-06-27 00:25:30,977.977 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:25:31,011.011 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:25:31,012.012 INFO    ] No update needed
[2026-06-27 00:25:31,014.014 INFO    ] Checking for camera pi updates...
[2026-06-27 00:25:31,036.036 INFO    ] 200
[2026-06-27 00:25:31,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:25:31,064.064 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:25:31,106.106 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:25:31,108.108 INFO    ] No camera update needed
[2026-06-27 00:25:31,110.110 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:25:31,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:25:31,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:25:31,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:25:33,159.159 INFO    ] ================================================
[2026-06-27 00:25:33,175.175 INFO    ] Launching Daemon at Sat Jun 27 00:25:33 IST 2026
[2026-06-27 00:25:33,186.186 INFO    ] ================================================
[2026-06-27 00:25:33,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:25:33
[2026-06-27 00:25:33,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:25:34,030.030 INFO    ] Initializing speech engine...
[2026-06-27 00:25:34,035.035 INFO    ] 2026-06-27 00:25:34
[2026-06-27 00:25:34,227.227 INFO    ] 2026-06-27 00:25:34
[2026-06-27 00:25:34,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:25:34,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:25:34,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:25:34,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:25:34,706.706 INFO    ] time= 27/06/2026 00:25:34
[2026-06-27 00:25:34,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:25:34,754.754 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:25:34,830.830 INFO    ] No existing commands found in stream
[2026-06-27 00:25:39,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:25:39,843.843 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-27 00:25:42,369.369 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 00:25:42,371.371 INFO    ] Checking for system updates...
[2026-06-27 00:25:42,393.393 INFO    ] 200
[2026-06-27 00:25:42,394.394 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:25:42,425.425 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:25:42,426.426 INFO    ] No update needed
[2026-06-27 00:25:42,427.427 INFO    ] Checking for camera pi updates...
[2026-06-27 00:25:42,448.448 INFO    ] 200
[2026-06-27 00:25:42,449.449 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:25:42,476.476 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:25:42,524.524 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:25:42,526.526 INFO    ] No camera update needed
[2026-06-27 00:25:42,527.527 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:25:42,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:25:42,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:25:42,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:25:44,574.574 INFO    ] ================================================
[2026-06-27 00:25:44,590.590 INFO    ] Launching Daemon at Sat Jun 27 00:25:44 IST 2026
[2026-06-27 00:25:44,601.601 INFO    ] ================================================
[2026-06-27 00:25:44,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:25:44
[2026-06-27 00:25:45,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:25:45,393.393 INFO    ] Initializing speech engine...
[2026-06-27 00:25:45,398.398 INFO    ] 2026-06-27 00:25:45
[2026-06-27 00:25:45,602.602 INFO    ] 2026-06-27 00:25:45
[2026-06-27 00:25:45,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:25:45,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:25:45,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:25:45,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:25:46,019.019 INFO    ] time= 27/06/2026 00:25:45
[2026-06-27 00:25:46,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:25:46,049.049 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:25:46,115.115 INFO    ] No existing commands found in stream
[2026-06-27 00:25:51,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:25:51,132.132 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-27 00:25:53,860.860 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 00:25:53,861.861 INFO    ] Checking for system updates...
[2026-06-27 00:25:53,882.882 INFO    ] 200
[2026-06-27 00:25:53,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:25:53,915.915 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:25:53,917.917 INFO    ] No update needed
[2026-06-27 00:25:53,918.918 INFO    ] Checking for camera pi updates...
[2026-06-27 00:25:53,938.938 INFO    ] 200
[2026-06-27 00:25:53,939.939 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:25:53,967.967 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:25:53,996.996 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:25:53,997.997 INFO    ] No camera update needed
[2026-06-27 00:25:53,999.999 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:25:54,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:25:54,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:25:54,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:25:56,045.045 INFO    ] ================================================
[2026-06-27 00:25:56,061.061 INFO    ] Launching Daemon at Sat Jun 27 00:25:56 IST 2026
[2026-06-27 00:25:56,072.072 INFO    ] ================================================
[2026-06-27 00:25:56,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:25:56
[2026-06-27 00:25:56,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:25:56,886.886 INFO    ] Initializing speech engine...
[2026-06-27 00:25:56,890.890 INFO    ] 2026-06-27 00:25:56
[2026-06-27 00:25:57,108.108 INFO    ] 2026-06-27 00:25:57
[2026-06-27 00:25:57,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:25:57,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:25:57,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:25:57,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:25:57,529.529 INFO    ] time= 27/06/2026 00:25:57
[2026-06-27 00:25:57,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:25:57,568.568 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:25:57,659.659 INFO    ] No existing commands found in stream
[2026-06-27 00:26:02,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:26:02,668.668 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-27 00:26:06,782.782 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:26:06,783.783 INFO    ] Checking for system updates...
[2026-06-27 00:26:06,806.806 INFO    ] 200
[2026-06-27 00:26:06,807.807 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:26:06,838.838 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:26:06,839.839 INFO    ] No update needed
[2026-06-27 00:26:06,840.840 INFO    ] Checking for camera pi updates...
[2026-06-27 00:26:06,861.861 INFO    ] 200
[2026-06-27 00:26:06,863.863 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:26:06,889.889 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:26:06,944.944 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:26:06,945.945 INFO    ] No camera update needed
[2026-06-27 00:26:06,946.946 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:26:06,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:26:06,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:26:06,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:26:08,994.994 INFO    ] ================================================
[2026-06-27 00:26:09,009.009 INFO    ] Launching Daemon at Sat Jun 27 00:26:09 IST 2026
[2026-06-27 00:26:09,020.020 INFO    ] ================================================
[2026-06-27 00:26:09,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:26:09
[2026-06-27 00:26:09,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:26:09,855.855 INFO    ] Initializing speech engine...
[2026-06-27 00:26:09,860.860 INFO    ] 2026-06-27 00:26:09
[2026-06-27 00:26:10,069.069 INFO    ] 2026-06-27 00:26:10
[2026-06-27 00:26:10,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:26:10,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:26:10,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:26:10,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:26:10,491.491 INFO    ] time= 27/06/2026 00:26:10
[2026-06-27 00:26:10,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:26:10,520.520 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:26:10,586.586 INFO    ] No existing commands found in stream
[2026-06-27 00:26:15,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:26:15,600.600 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-27 00:26:16,718.718 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 00:26:16,720.720 INFO    ] Checking for system updates...
[2026-06-27 00:26:16,742.742 INFO    ] 200
[2026-06-27 00:26:16,743.743 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:26:16,774.774 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:26:16,775.775 INFO    ] No update needed
[2026-06-27 00:26:16,776.776 INFO    ] Checking for camera pi updates...
[2026-06-27 00:26:16,798.798 INFO    ] 200
[2026-06-27 00:26:16,799.799 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:26:16,823.823 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:26:16,975.975 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:26:16,977.977 INFO    ] No camera update needed
[2026-06-27 00:26:16,978.978 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:26:16,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:26:16,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:26:16,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:26:19,024.024 INFO    ] ================================================
[2026-06-27 00:26:19,039.039 INFO    ] Launching Daemon at Sat Jun 27 00:26:19 IST 2026
[2026-06-27 00:26:19,050.050 INFO    ] ================================================
[2026-06-27 00:26:19,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:26:19
[2026-06-27 00:26:19,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:26:19,874.874 INFO    ] Initializing speech engine...
[2026-06-27 00:26:19,879.879 INFO    ] 2026-06-27 00:26:19
[2026-06-27 00:26:20,083.083 INFO    ] 2026-06-27 00:26:20
[2026-06-27 00:26:20,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:26:20,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:26:20,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:26:20,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:26:20,496.496 INFO    ] time= 27/06/2026 00:26:20
[2026-06-27 00:26:20,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:26:20,529.529 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:26:20,593.593 INFO    ] No existing commands found in stream
[2026-06-27 00:26:25,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:26:25,607.607 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-27 00:26:28,212.212 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 00:26:28,214.214 INFO    ] Checking for system updates...
[2026-06-27 00:26:28,235.235 INFO    ] 200
[2026-06-27 00:26:28,237.237 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:26:28,267.267 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:26:28,268.268 INFO    ] No update needed
[2026-06-27 00:26:28,270.270 INFO    ] Checking for camera pi updates...
[2026-06-27 00:26:28,289.289 INFO    ] 200
[2026-06-27 00:26:28,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:26:28,316.316 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:26:28,358.358 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:26:28,359.359 INFO    ] No camera update needed
[2026-06-27 00:26:28,361.361 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:26:28,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:26:28,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:26:28,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:26:30,411.411 INFO    ] ================================================
[2026-06-27 00:26:30,431.431 INFO    ] Launching Daemon at Sat Jun 27 00:26:30 IST 2026
[2026-06-27 00:26:30,442.442 INFO    ] ================================================
[2026-06-27 00:26:30,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:26:30
[2026-06-27 00:26:31,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:26:31,213.213 INFO    ] Initializing speech engine...
[2026-06-27 00:26:31,218.218 INFO    ] 2026-06-27 00:26:31
[2026-06-27 00:26:31,406.406 INFO    ] 2026-06-27 00:26:31
[2026-06-27 00:26:31,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:26:31,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:26:31,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:26:31,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:26:31,886.886 INFO    ] time= 27/06/2026 00:26:31
[2026-06-27 00:26:31,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:26:31,936.936 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:26:32,005.005 INFO    ] No existing commands found in stream
[2026-06-27 00:26:37,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:26:37,017.017 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-27 00:26:37,502.502 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 00:26:37,504.504 INFO    ] Checking for system updates...
[2026-06-27 00:26:37,525.525 INFO    ] 200
[2026-06-27 00:26:37,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:26:37,560.560 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:26:37,561.561 INFO    ] No update needed
[2026-06-27 00:26:37,562.562 INFO    ] Checking for camera pi updates...
[2026-06-27 00:26:37,583.583 INFO    ] 200
[2026-06-27 00:26:37,585.585 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:26:37,609.609 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:26:37,648.648 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:26:37,650.650 INFO    ] No camera update needed
[2026-06-27 00:26:37,651.651 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:26:37,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:26:37,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:26:37,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:26:39,700.700 INFO    ] ================================================
[2026-06-27 00:26:39,715.715 INFO    ] Launching Daemon at Sat Jun 27 00:26:39 IST 2026
[2026-06-27 00:26:39,726.726 INFO    ] ================================================
[2026-06-27 00:26:40,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:26:40
[2026-06-27 00:26:40,383.383 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:26:40,525.525 INFO    ] Initializing speech engine...
[2026-06-27 00:26:40,530.530 INFO    ] 2026-06-27 00:26:40
[2026-06-27 00:26:40,733.733 INFO    ] 2026-06-27 00:26:40
[2026-06-27 00:26:40,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:26:40,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:26:40,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:26:41,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:26:41,154.154 INFO    ] time= 27/06/2026 00:26:41
[2026-06-27 00:26:41,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:26:41,182.182 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:26:41,249.249 INFO    ] No existing commands found in stream
[2026-06-27 00:26:46,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:26:46,265.265 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-27 00:26:49,467.467 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 00:26:49,469.469 INFO    ] Checking for system updates...
[2026-06-27 00:26:49,489.489 INFO    ] 200
[2026-06-27 00:26:49,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:26:49,521.521 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:26:49,523.523 INFO    ] No update needed
[2026-06-27 00:26:49,524.524 INFO    ] Checking for camera pi updates...
[2026-06-27 00:26:49,544.544 INFO    ] 200
[2026-06-27 00:26:49,545.545 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:26:49,568.568 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:26:49,607.607 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:26:49,609.609 INFO    ] No camera update needed
[2026-06-27 00:26:49,610.610 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:26:49,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:26:49,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:26:49,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:26:51,655.655 INFO    ] ================================================
[2026-06-27 00:26:51,671.671 INFO    ] Launching Daemon at Sat Jun 27 00:26:51 IST 2026
[2026-06-27 00:26:51,683.683 INFO    ] ================================================
[2026-06-27 00:26:52,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:26:52
[2026-06-27 00:26:52,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:26:52,580.580 INFO    ] Initializing speech engine...
[2026-06-27 00:26:52,583.583 INFO    ] 2026-06-27 00:26:52
[2026-06-27 00:26:52,795.795 INFO    ] 2026-06-27 00:26:52
[2026-06-27 00:26:52,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:26:53,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:26:53,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:26:53,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:26:53,211.211 INFO    ] time= 27/06/2026 00:26:53
[2026-06-27 00:26:53,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:26:53,270.270 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:26:53,350.350 INFO    ] No existing commands found in stream
[2026-06-27 00:26:58,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:26:58,363.363 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-27 00:27:01,057.057 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:27:01,059.059 INFO    ] Checking for system updates...
[2026-06-27 00:27:01,081.081 INFO    ] 200
[2026-06-27 00:27:01,082.082 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:27:01,116.116 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:27:01,117.117 INFO    ] No update needed
[2026-06-27 00:27:01,119.119 INFO    ] Checking for camera pi updates...
[2026-06-27 00:27:01,140.140 INFO    ] 200
[2026-06-27 00:27:01,141.141 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:27:01,167.167 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:27:01,208.208 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:27:01,209.209 INFO    ] No camera update needed
[2026-06-27 00:27:01,210.210 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:27:01,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:27:01,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:27:01,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:27:03,250.250 INFO    ] ================================================
[2026-06-27 00:27:03,266.266 INFO    ] Launching Daemon at Sat Jun 27 00:27:03 IST 2026
[2026-06-27 00:27:03,276.276 INFO    ] ================================================
[2026-06-27 00:27:03,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:27:03
[2026-06-27 00:27:03,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:27:04,071.071 INFO    ] Initializing speech engine...
[2026-06-27 00:27:04,075.075 INFO    ] 2026-06-27 00:27:04
[2026-06-27 00:27:04,308.308 INFO    ] 2026-06-27 00:27:04
[2026-06-27 00:27:04,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:27:04,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:27:04,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:27:04,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:27:04,756.756 INFO    ] time= 27/06/2026 00:27:04
[2026-06-27 00:27:04,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:27:04,791.791 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:27:04,861.861 INFO    ] No existing commands found in stream
[2026-06-27 00:27:09,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:27:09,874.874 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-27 00:27:11,309.309 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 00:27:11,310.310 INFO    ] Checking for system updates...
[2026-06-27 00:27:11,331.331 INFO    ] 200
[2026-06-27 00:27:11,333.333 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:27:11,367.367 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:27:11,368.368 INFO    ] No update needed
[2026-06-27 00:27:11,369.369 INFO    ] Checking for camera pi updates...
[2026-06-27 00:27:11,390.390 INFO    ] 200
[2026-06-27 00:27:11,392.392 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:27:11,416.416 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:27:11,459.459 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:27:11,460.460 INFO    ] No camera update needed
[2026-06-27 00:27:11,461.461 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:27:11,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:27:11,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:27:11,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:27:13,507.507 INFO    ] ================================================
[2026-06-27 00:27:13,522.522 INFO    ] Launching Daemon at Sat Jun 27 00:27:13 IST 2026
[2026-06-27 00:27:13,532.532 INFO    ] ================================================
[2026-06-27 00:27:13,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:27:13
[2026-06-27 00:27:14,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:27:14,354.354 INFO    ] Initializing speech engine...
[2026-06-27 00:27:14,359.359 INFO    ] 2026-06-27 00:27:14
[2026-06-27 00:27:14,563.563 INFO    ] 2026-06-27 00:27:14
[2026-06-27 00:27:14,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:27:14,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:27:14,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:27:14,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:27:14,983.983 INFO    ] time= 27/06/2026 00:27:14
[2026-06-27 00:27:15,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:27:15,011.011 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:27:15,077.077 INFO    ] No existing commands found in stream
[2026-06-27 00:27:20,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:27:20,089.089 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-27 00:27:21,212.212 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 00:27:21,214.214 INFO    ] Checking for system updates...
[2026-06-27 00:27:21,235.235 INFO    ] 200
[2026-06-27 00:27:21,237.237 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:27:21,267.267 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:27:21,269.269 INFO    ] No update needed
[2026-06-27 00:27:21,270.270 INFO    ] Checking for camera pi updates...
[2026-06-27 00:27:21,290.290 INFO    ] 200
[2026-06-27 00:27:21,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:27:21,316.316 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:27:21,377.377 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:27:21,378.378 INFO    ] No camera update needed
[2026-06-27 00:27:21,380.380 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:27:21,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:27:21,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:27:21,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:27:23,427.427 INFO    ] ================================================
[2026-06-27 00:27:23,441.441 INFO    ] Launching Daemon at Sat Jun 27 00:27:23 IST 2026
[2026-06-27 00:27:23,452.452 INFO    ] ================================================
[2026-06-27 00:27:23,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:27:23
[2026-06-27 00:27:24,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:27:24,237.237 INFO    ] Initializing speech engine...
[2026-06-27 00:27:24,242.242 INFO    ] 2026-06-27 00:27:24
[2026-06-27 00:27:24,457.457 INFO    ] 2026-06-27 00:27:24
[2026-06-27 00:27:24,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:27:25,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:27:25,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:27:25,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:27:25,821.821 INFO    ] time= 27/06/2026 00:27:25
[2026-06-27 00:27:25,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:27:25,839.839 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:27:25,904.904 INFO    ] No existing commands found in stream
[2026-06-27 00:27:30,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:27:30,916.916 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-27 00:27:31,396.396 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:27:31,397.397 INFO    ] Checking for system updates...
[2026-06-27 00:27:31,419.419 INFO    ] 200
[2026-06-27 00:27:31,421.421 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:27:31,454.454 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:27:31,456.456 INFO    ] No update needed
[2026-06-27 00:27:31,457.457 INFO    ] Checking for camera pi updates...
[2026-06-27 00:27:31,478.478 INFO    ] 200
[2026-06-27 00:27:31,480.480 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:27:31,505.505 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:27:31,553.553 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:27:31,555.555 INFO    ] No camera update needed
[2026-06-27 00:27:31,556.556 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:27:31,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:27:31,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:27:31,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:27:33,596.596 INFO    ] ================================================
[2026-06-27 00:27:33,611.611 INFO    ] Launching Daemon at Sat Jun 27 00:27:33 IST 2026
[2026-06-27 00:27:33,622.622 INFO    ] ================================================
[2026-06-27 00:27:33,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:27:33
[2026-06-27 00:27:34,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:27:34,474.474 INFO    ] Initializing speech engine...
[2026-06-27 00:27:34,478.478 INFO    ] 2026-06-27 00:27:34
[2026-06-27 00:27:34,685.685 INFO    ] 2026-06-27 00:27:34
[2026-06-27 00:27:34,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:27:34,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:27:34,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:27:35,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:27:35,105.105 INFO    ] time= 27/06/2026 00:27:35
[2026-06-27 00:27:35,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:27:35,134.134 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:27:35,202.202 INFO    ] No existing commands found in stream
[2026-06-27 00:27:40,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:27:40,238.238 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-27 00:27:43,818.818 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 00:27:43,820.820 INFO    ] Checking for system updates...
[2026-06-27 00:27:43,842.842 INFO    ] 200
[2026-06-27 00:27:43,844.844 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:27:43,879.879 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:27:43,881.881 INFO    ] No update needed
[2026-06-27 00:27:43,882.882 INFO    ] Checking for camera pi updates...
[2026-06-27 00:27:43,906.906 INFO    ] 200
[2026-06-27 00:27:43,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:27:43,931.931 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:27:43,977.977 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:27:43,979.979 INFO    ] No camera update needed
[2026-06-27 00:27:43,980.980 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:27:43,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:27:43,985.985 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:27:43,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:27:46,027.027 INFO    ] ================================================
[2026-06-27 00:27:46,042.042 INFO    ] Launching Daemon at Sat Jun 27 00:27:46 IST 2026
[2026-06-27 00:27:46,052.052 INFO    ] ================================================
[2026-06-27 00:27:46,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:27:46
[2026-06-27 00:27:46,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:27:46,903.903 INFO    ] Initializing speech engine...
[2026-06-27 00:27:46,913.913 INFO    ] 2026-06-27 00:27:46
[2026-06-27 00:27:47,130.130 INFO    ] 2026-06-27 00:27:47
[2026-06-27 00:27:47,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:27:47,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:27:47,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:27:47,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:27:47,553.553 INFO    ] time= 27/06/2026 00:27:47
[2026-06-27 00:27:47,577.577 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:27:47,583.583 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:27:47,650.650 INFO    ] No existing commands found in stream
[2026-06-27 00:27:52,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:27:52,668.668 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-27 00:27:53,787.787 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:27:53,788.788 INFO    ] Checking for system updates...
[2026-06-27 00:27:53,809.809 INFO    ] 200
[2026-06-27 00:27:53,811.811 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:27:53,843.843 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:27:53,845.845 INFO    ] No update needed
[2026-06-27 00:27:53,846.846 INFO    ] Checking for camera pi updates...
[2026-06-27 00:27:53,870.870 INFO    ] 200
[2026-06-27 00:27:53,871.871 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:27:53,899.899 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:27:53,937.937 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:27:53,938.938 INFO    ] No camera update needed
[2026-06-27 00:27:53,939.939 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:27:53,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:27:53,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:27:53,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:27:55,986.986 INFO    ] ================================================
[2026-06-27 00:27:56,001.001 INFO    ] Launching Daemon at Sat Jun 27 00:27:55 IST 2026
[2026-06-27 00:27:56,012.012 INFO    ] ================================================
[2026-06-27 00:27:56,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:27:56
[2026-06-27 00:27:56,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:27:56,858.858 INFO    ] Initializing speech engine...
[2026-06-27 00:27:56,864.864 INFO    ] 2026-06-27 00:27:56
[2026-06-27 00:27:57,072.072 INFO    ] 2026-06-27 00:27:57
[2026-06-27 00:27:57,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:27:57,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:27:57,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:27:57,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:27:57,478.478 INFO    ] time= 27/06/2026 00:27:57
[2026-06-27 00:27:57,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:27:57,518.518 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:27:57,589.589 INFO    ] No existing commands found in stream
[2026-06-27 00:28:02,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:28:02,605.605 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-27 00:28:03,218.218 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 00:28:03,221.221 INFO    ] Checking for system updates...
[2026-06-27 00:28:03,257.257 INFO    ] 200
[2026-06-27 00:28:03,260.260 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:28:03,313.313 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:28:03,315.315 INFO    ] No update needed
[2026-06-27 00:28:03,318.318 INFO    ] Checking for camera pi updates...
[2026-06-27 00:28:03,355.355 INFO    ] 200
[2026-06-27 00:28:03,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:28:03,402.402 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:28:03,432.432 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:28:03,433.433 INFO    ] No camera update needed
[2026-06-27 00:28:03,438.438 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:28:03,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:28:03,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:28:03,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:28:05,487.487 INFO    ] ================================================
[2026-06-27 00:28:05,502.502 INFO    ] Launching Daemon at Sat Jun 27 00:28:05 IST 2026
[2026-06-27 00:28:05,512.512 INFO    ] ================================================
[2026-06-27 00:28:05,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:28:05
[2026-06-27 00:28:06,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:28:06,319.319 INFO    ] Initializing speech engine...
[2026-06-27 00:28:06,324.324 INFO    ] 2026-06-27 00:28:06
[2026-06-27 00:28:06,530.530 INFO    ] 2026-06-27 00:28:06
[2026-06-27 00:28:06,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:28:06,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:28:06,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:28:06,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:28:06,940.940 INFO    ] time= 27/06/2026 00:28:06
[2026-06-27 00:28:06,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:28:06,979.979 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:28:07,045.045 INFO    ] No existing commands found in stream
[2026-06-27 00:28:12,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:28:12,057.057 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-27 00:28:16,322.322 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 00:28:16,323.323 INFO    ] Checking for system updates...
[2026-06-27 00:28:16,344.344 INFO    ] 200
[2026-06-27 00:28:16,346.346 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:28:16,376.376 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:28:16,378.378 INFO    ] No update needed
[2026-06-27 00:28:16,379.379 INFO    ] Checking for camera pi updates...
[2026-06-27 00:28:16,399.399 INFO    ] 200
[2026-06-27 00:28:16,400.400 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:28:16,428.428 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:28:16,454.454 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:28:16,456.456 INFO    ] No camera update needed
[2026-06-27 00:28:16,457.457 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:28:16,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:28:16,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:28:16,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:28:18,504.504 INFO    ] ================================================
[2026-06-27 00:28:18,523.523 INFO    ] Launching Daemon at Sat Jun 27 00:28:18 IST 2026
[2026-06-27 00:28:18,534.534 INFO    ] ================================================
[2026-06-27 00:28:18,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:28:18
[2026-06-27 00:28:19,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:28:19,352.352 INFO    ] Initializing speech engine...
[2026-06-27 00:28:19,365.365 INFO    ] 2026-06-27 00:28:19
[2026-06-27 00:28:19,578.578 INFO    ] 2026-06-27 00:28:19
[2026-06-27 00:28:19,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:28:19,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:28:19,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:28:19,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:28:19,998.998 INFO    ] time= 27/06/2026 00:28:19
[2026-06-27 00:28:20,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:28:20,028.028 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:28:20,119.119 INFO    ] No existing commands found in stream
[2026-06-27 00:28:25,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:28:25,146.146 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-27 00:28:28,533.533 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 00:28:28,542.542 INFO    ] Checking for system updates...
[2026-06-27 00:28:28,566.566 INFO    ] 200
[2026-06-27 00:28:28,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:28:28,600.600 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:28:28,601.601 INFO    ] No update needed
[2026-06-27 00:28:28,603.603 INFO    ] Checking for camera pi updates...
[2026-06-27 00:28:28,625.625 INFO    ] 200
[2026-06-27 00:28:28,627.627 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:28:28,650.650 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:28:28,789.789 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:28:28,791.791 INFO    ] No camera update needed
[2026-06-27 00:28:28,792.792 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:28:28,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:28:28,797.797 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:28:28,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:28:30,837.837 INFO    ] ================================================
[2026-06-27 00:28:30,853.853 INFO    ] Launching Daemon at Sat Jun 27 00:28:30 IST 2026
[2026-06-27 00:28:30,864.864 INFO    ] ================================================
[2026-06-27 00:28:31,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:28:31
[2026-06-27 00:28:31,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:28:31,632.632 INFO    ] Initializing speech engine...
[2026-06-27 00:28:31,637.637 INFO    ] 2026-06-27 00:28:31
[2026-06-27 00:28:31,840.840 INFO    ] 2026-06-27 00:28:31
[2026-06-27 00:28:31,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:28:32,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:28:32,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:28:32,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:28:32,264.264 INFO    ] time= 27/06/2026 00:28:32
[2026-06-27 00:28:32,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:28:32,348.348 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:28:32,448.448 INFO    ] No existing commands found in stream
[2026-06-27 00:28:37,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:28:37,462.462 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-27 00:28:39,306.306 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 00:28:39,307.307 INFO    ] Checking for system updates...
[2026-06-27 00:28:39,329.329 INFO    ] 200
[2026-06-27 00:28:39,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:28:39,360.360 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:28:39,361.361 INFO    ] No update needed
[2026-06-27 00:28:39,363.363 INFO    ] Checking for camera pi updates...
[2026-06-27 00:28:39,383.383 INFO    ] 200
[2026-06-27 00:28:39,384.384 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:28:39,408.408 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:28:39,434.434 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:28:39,435.435 INFO    ] No camera update needed
[2026-06-27 00:28:39,437.437 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:28:39,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:28:39,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:28:39,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:28:41,483.483 INFO    ] ================================================
[2026-06-27 00:28:41,498.498 INFO    ] Launching Daemon at Sat Jun 27 00:28:41 IST 2026
[2026-06-27 00:28:41,509.509 INFO    ] ================================================
[2026-06-27 00:28:41,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:28:41
[2026-06-27 00:28:42,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:28:42,298.298 INFO    ] Initializing speech engine...
[2026-06-27 00:28:42,305.305 INFO    ] 2026-06-27 00:28:42
[2026-06-27 00:28:42,519.519 INFO    ] 2026-06-27 00:28:42
[2026-06-27 00:28:42,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:28:42,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:28:42,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:28:42,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:28:42,944.944 INFO    ] time= 27/06/2026 00:28:42
[2026-06-27 00:28:42,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:28:42,974.974 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:28:43,066.066 INFO    ] No existing commands found in stream
[2026-06-27 00:28:48,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:28:48,078.078 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-27 00:28:50,003.003 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 00:28:50,005.005 INFO    ] Checking for system updates...
[2026-06-27 00:28:50,027.027 INFO    ] 200
[2026-06-27 00:28:50,028.028 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:28:50,064.064 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:28:50,065.065 INFO    ] No update needed
[2026-06-27 00:28:50,066.066 INFO    ] Checking for camera pi updates...
[2026-06-27 00:28:50,088.088 INFO    ] 200
[2026-06-27 00:28:50,090.090 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:28:50,113.113 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:28:50,145.145 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:28:50,146.146 INFO    ] No camera update needed
[2026-06-27 00:28:50,148.148 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:28:50,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:28:50,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:28:50,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:28:52,194.194 INFO    ] ================================================
[2026-06-27 00:28:52,209.209 INFO    ] Launching Daemon at Sat Jun 27 00:28:52 IST 2026
[2026-06-27 00:28:52,219.219 INFO    ] ================================================
[2026-06-27 00:28:52,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:28:52
[2026-06-27 00:28:52,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:28:53,036.036 INFO    ] Initializing speech engine...
[2026-06-27 00:28:53,047.047 INFO    ] 2026-06-27 00:28:53
[2026-06-27 00:28:53,249.249 INFO    ] 2026-06-27 00:28:53
[2026-06-27 00:28:53,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:28:53,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:28:53,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:28:53,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:28:53,670.670 INFO    ] time= 27/06/2026 00:28:53
[2026-06-27 00:28:53,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:28:53,696.696 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:28:53,767.767 INFO    ] No existing commands found in stream
[2026-06-27 00:28:58,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:28:58,778.778 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-27 00:28:59,693.693 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 00:28:59,695.695 INFO    ] Checking for system updates...
[2026-06-27 00:28:59,717.717 INFO    ] 200
[2026-06-27 00:28:59,718.718 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:28:59,752.752 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:28:59,753.753 INFO    ] No update needed
[2026-06-27 00:28:59,755.755 INFO    ] Checking for camera pi updates...
[2026-06-27 00:28:59,775.775 INFO    ] 200
[2026-06-27 00:28:59,776.776 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:28:59,801.801 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:28:59,856.856 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:28:59,857.857 INFO    ] No camera update needed
[2026-06-27 00:28:59,858.858 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:28:59,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:28:59,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:28:59,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:29:01,912.912 INFO    ] ================================================
[2026-06-27 00:29:01,934.934 INFO    ] Launching Daemon at Sat Jun 27 00:29:01 IST 2026
[2026-06-27 00:29:01,951.951 INFO    ] ================================================
[2026-06-27 00:29:02,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:29:02
[2026-06-27 00:29:02,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:29:02,939.939 INFO    ] Initializing speech engine...
[2026-06-27 00:29:02,947.947 INFO    ] 2026-06-27 00:29:02
[2026-06-27 00:29:03,154.154 INFO    ] 2026-06-27 00:29:03
[2026-06-27 00:29:03,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:29:03,305.305 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:29:03,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:29:03,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:29:03,574.574 INFO    ] time= 27/06/2026 00:29:03
[2026-06-27 00:29:03,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:29:03,604.604 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:29:03,671.671 INFO    ] No existing commands found in stream
[2026-06-27 00:29:08,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:29:08,706.706 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-27 00:29:09,951.951 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 00:29:09,953.953 INFO    ] Checking for system updates...
[2026-06-27 00:29:09,974.974 INFO    ] 200
[2026-06-27 00:29:09,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:29:10,005.005 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:29:10,007.007 INFO    ] No update needed
[2026-06-27 00:29:10,008.008 INFO    ] Checking for camera pi updates...
[2026-06-27 00:29:10,031.031 INFO    ] 200
[2026-06-27 00:29:10,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:29:10,057.057 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:29:10,102.102 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:29:10,104.104 INFO    ] No camera update needed
[2026-06-27 00:29:10,105.105 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:29:10,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:29:10,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:29:10,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:29:12,151.151 INFO    ] ================================================
[2026-06-27 00:29:12,167.167 INFO    ] Launching Daemon at Sat Jun 27 00:29:12 IST 2026
[2026-06-27 00:29:12,177.177 INFO    ] ================================================
[2026-06-27 00:29:12,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:29:12
[2026-06-27 00:29:12,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:29:13,029.029 INFO    ] Initializing speech engine...
[2026-06-27 00:29:13,037.037 INFO    ] 2026-06-27 00:29:13
[2026-06-27 00:29:13,246.246 INFO    ] 2026-06-27 00:29:13
[2026-06-27 00:29:13,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:29:13,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:29:13,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:29:13,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:29:13,667.667 INFO    ] time= 27/06/2026 00:29:13
[2026-06-27 00:29:13,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:29:13,704.704 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:29:13,775.775 INFO    ] No existing commands found in stream
[2026-06-27 00:29:18,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:29:18,788.788 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-27 00:29:21,414.414 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 00:29:21,416.416 INFO    ] Checking for system updates...
[2026-06-27 00:29:21,436.436 INFO    ] 200
[2026-06-27 00:29:21,438.438 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:29:21,468.468 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:29:21,469.469 INFO    ] No update needed
[2026-06-27 00:29:21,470.470 INFO    ] Checking for camera pi updates...
[2026-06-27 00:29:21,493.493 INFO    ] 200
[2026-06-27 00:29:21,495.495 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:29:21,518.518 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:29:21,563.563 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:29:21,565.565 INFO    ] No camera update needed
[2026-06-27 00:29:21,566.566 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:29:21,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:29:21,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:29:21,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:29:23,612.612 INFO    ] ================================================
[2026-06-27 00:29:23,627.627 INFO    ] Launching Daemon at Sat Jun 27 00:29:23 IST 2026
[2026-06-27 00:29:23,637.637 INFO    ] ================================================
[2026-06-27 00:29:23,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:29:23
[2026-06-27 00:29:24,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:29:24,408.408 INFO    ] Initializing speech engine...
[2026-06-27 00:29:24,412.412 INFO    ] 2026-06-27 00:29:24
[2026-06-27 00:29:24,632.632 INFO    ] 2026-06-27 00:29:24
[2026-06-27 00:29:24,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:29:25,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:29:25,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:29:25,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:29:25,877.877 INFO    ] time= 27/06/2026 00:29:25
[2026-06-27 00:29:25,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:29:25,887.887 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:29:25,949.949 INFO    ] No existing commands found in stream
[2026-06-27 00:29:30,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:29:30,966.966 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-27 00:29:33,831.831 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 00:29:33,833.833 INFO    ] Checking for system updates...
[2026-06-27 00:29:33,855.855 INFO    ] 200
[2026-06-27 00:29:33,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:29:33,889.889 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:29:33,890.890 INFO    ] No update needed
[2026-06-27 00:29:33,891.891 INFO    ] Checking for camera pi updates...
[2026-06-27 00:29:33,911.911 INFO    ] 200
[2026-06-27 00:29:33,912.912 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:29:33,937.937 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:29:33,985.985 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:29:33,986.986 INFO    ] No camera update needed
[2026-06-27 00:29:33,987.987 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:29:33,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:29:33,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:29:33,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:29:36,034.034 INFO    ] ================================================
[2026-06-27 00:29:36,050.050 INFO    ] Launching Daemon at Sat Jun 27 00:29:36 IST 2026
[2026-06-27 00:29:36,061.061 INFO    ] ================================================
[2026-06-27 00:29:36,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:29:36
[2026-06-27 00:29:36,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:29:36,885.885 INFO    ] Initializing speech engine...
[2026-06-27 00:29:36,890.890 INFO    ] 2026-06-27 00:29:36
[2026-06-27 00:29:37,095.095 INFO    ] 2026-06-27 00:29:37
[2026-06-27 00:29:37,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:29:37,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:29:37,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:29:37,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:29:37,512.512 INFO    ] time= 27/06/2026 00:29:37
[2026-06-27 00:29:37,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:29:37,541.541 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:29:37,632.632 INFO    ] No existing commands found in stream
[2026-06-27 00:29:42,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:29:42,644.644 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-27 00:29:43,109.109 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 00:29:43,110.110 INFO    ] Checking for system updates...
[2026-06-27 00:29:43,132.132 INFO    ] 200
[2026-06-27 00:29:43,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:29:43,166.166 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:29:43,168.168 INFO    ] No update needed
[2026-06-27 00:29:43,169.169 INFO    ] Checking for camera pi updates...
[2026-06-27 00:29:43,190.190 INFO    ] 200
[2026-06-27 00:29:43,191.191 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:29:43,214.214 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:29:43,255.255 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:29:43,256.256 INFO    ] No camera update needed
[2026-06-27 00:29:43,258.258 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:29:43,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:29:43,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:29:43,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:29:45,304.304 INFO    ] ================================================
[2026-06-27 00:29:45,322.322 INFO    ] Launching Daemon at Sat Jun 27 00:29:45 IST 2026
[2026-06-27 00:29:45,334.334 INFO    ] ================================================
[2026-06-27 00:29:45,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:29:45
[2026-06-27 00:29:45,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:29:46,115.115 INFO    ] Initializing speech engine...
[2026-06-27 00:29:46,126.126 INFO    ] 2026-06-27 00:29:46
[2026-06-27 00:29:46,330.330 INFO    ] 2026-06-27 00:29:46
[2026-06-27 00:29:46,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:29:46,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:29:46,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:29:46,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:29:46,749.749 INFO    ] time= 27/06/2026 00:29:46
[2026-06-27 00:29:46,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:29:46,776.776 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:29:46,842.842 INFO    ] No existing commands found in stream
[2026-06-27 00:29:51,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:29:51,854.854 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-27 00:29:54,206.206 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:29:54,207.207 INFO    ] Checking for system updates...
[2026-06-27 00:29:54,228.228 INFO    ] 200
[2026-06-27 00:29:54,229.229 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:29:54,264.264 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:29:54,265.265 INFO    ] No update needed
[2026-06-27 00:29:54,267.267 INFO    ] Checking for camera pi updates...
[2026-06-27 00:29:54,286.286 INFO    ] 200
[2026-06-27 00:29:54,287.287 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:29:54,310.310 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:29:54,338.338 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:29:54,340.340 INFO    ] No camera update needed
[2026-06-27 00:29:54,341.341 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:29:54,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:29:54,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:29:54,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:29:56,387.387 INFO    ] ================================================
[2026-06-27 00:29:56,403.403 INFO    ] Launching Daemon at Sat Jun 27 00:29:56 IST 2026
[2026-06-27 00:29:56,415.415 INFO    ] ================================================
[2026-06-27 00:29:56,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:29:56
[2026-06-27 00:29:57,095.095 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:29:57,226.226 INFO    ] Initializing speech engine...
[2026-06-27 00:29:57,229.229 INFO    ] 2026-06-27 00:29:57
[2026-06-27 00:29:57,448.448 INFO    ] 2026-06-27 00:29:57
[2026-06-27 00:29:57,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:29:57,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:29:57,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:29:57,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:29:57,858.858 INFO    ] time= 27/06/2026 00:29:57
[2026-06-27 00:29:57,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:29:57,899.899 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:29:57,994.994 INFO    ] No existing commands found in stream
[2026-06-27 00:30:03,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:30:03,004.004 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-27 00:30:08,798.798 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 00:30:08,799.799 INFO    ] Checking for system updates...
[2026-06-27 00:30:08,821.821 INFO    ] 200
[2026-06-27 00:30:08,822.822 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:30:08,855.855 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:30:08,856.856 INFO    ] No update needed
[2026-06-27 00:30:08,857.857 INFO    ] Checking for camera pi updates...
[2026-06-27 00:30:08,878.878 INFO    ] 200
[2026-06-27 00:30:08,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:30:08,909.909 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:30:08,947.947 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:30:08,948.948 INFO    ] No camera update needed
[2026-06-27 00:30:08,950.950 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:30:08,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:30:08,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:30:08,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:30:10,989.989 INFO    ] ================================================
[2026-06-27 00:30:11,999.999 INFO    ] Launching Daemon at Sat Jun 27 00:30:10 IST 2026
[2026-06-27 00:30:11,007.007 INFO    ] ================================================
[2026-06-27 00:30:11,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:30:11
[2026-06-27 00:30:11,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:30:11,804.804 INFO    ] Initializing speech engine...
[2026-06-27 00:30:11,809.809 INFO    ] 2026-06-27 00:30:11
[2026-06-27 00:30:12,013.013 INFO    ] 2026-06-27 00:30:11
[2026-06-27 00:30:12,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:30:12,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:30:12,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:30:12,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:30:12,434.434 INFO    ] time= 27/06/2026 00:30:12
[2026-06-27 00:30:12,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:30:12,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:30:12,529.529 INFO    ] No existing commands found in stream
[2026-06-27 00:30:17,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:30:17,546.546 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-27 00:30:21,546.546 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 00:30:21,547.547 INFO    ] Checking for system updates...
[2026-06-27 00:30:21,569.569 INFO    ] 200
[2026-06-27 00:30:21,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:30:21,600.600 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:30:21,602.602 INFO    ] No update needed
[2026-06-27 00:30:21,603.603 INFO    ] Checking for camera pi updates...
[2026-06-27 00:30:21,624.624 INFO    ] 200
[2026-06-27 00:30:21,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:30:21,650.650 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:30:21,696.696 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:30:21,698.698 INFO    ] No camera update needed
[2026-06-27 00:30:21,699.699 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:30:21,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:30:21,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:30:21,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:30:23,745.745 INFO    ] ================================================
[2026-06-27 00:30:23,761.761 INFO    ] Launching Daemon at Sat Jun 27 00:30:23 IST 2026
[2026-06-27 00:30:23,772.772 INFO    ] ================================================
[2026-06-27 00:30:24,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:30:24
[2026-06-27 00:30:24,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:30:24,596.596 INFO    ] Initializing speech engine...
[2026-06-27 00:30:24,600.600 INFO    ] 2026-06-27 00:30:24
[2026-06-27 00:30:24,811.811 INFO    ] 2026-06-27 00:30:24
[2026-06-27 00:30:24,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:30:25,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:30:25,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:30:25,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:30:25,988.988 INFO    ] time= 27/06/2026 00:30:25
[2026-06-27 00:30:25,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:30:26,004.004 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:30:26,081.081 INFO    ] No existing commands found in stream
[2026-06-27 00:30:31,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:30:31,094.094 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-27 00:30:34,924.924 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 00:30:34,925.925 INFO    ] Checking for system updates...
[2026-06-27 00:30:34,947.947 INFO    ] 200
[2026-06-27 00:30:34,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:30:34,981.981 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:30:34,982.982 INFO    ] No update needed
[2026-06-27 00:30:34,984.984 INFO    ] Checking for camera pi updates...
[2026-06-27 00:30:35,005.005 INFO    ] 200
[2026-06-27 00:30:35,006.006 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:30:35,029.029 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:30:35,072.072 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:30:35,073.073 INFO    ] No camera update needed
[2026-06-27 00:30:35,075.075 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:30:35,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:30:35,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:30:35,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:30:37,120.120 INFO    ] ================================================
[2026-06-27 00:30:37,136.136 INFO    ] Launching Daemon at Sat Jun 27 00:30:37 IST 2026
[2026-06-27 00:30:37,147.147 INFO    ] ================================================
[2026-06-27 00:30:37,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:30:37
[2026-06-27 00:30:37,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:30:37,927.927 INFO    ] Initializing speech engine...
[2026-06-27 00:30:37,932.932 INFO    ] 2026-06-27 00:30:37
[2026-06-27 00:30:38,150.150 INFO    ] 2026-06-27 00:30:38
[2026-06-27 00:30:38,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:30:38,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:30:38,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:30:38,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:30:38,591.591 INFO    ] time= 27/06/2026 00:30:38
[2026-06-27 00:30:38,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:30:38,607.607 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:30:38,676.676 INFO    ] No existing commands found in stream
[2026-06-27 00:30:43,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:30:43,692.692 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-27 00:30:45,548.548 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 00:30:45,549.549 INFO    ] Checking for system updates...
[2026-06-27 00:30:45,571.571 INFO    ] 200
[2026-06-27 00:30:45,572.572 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:30:45,605.605 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:30:45,607.607 INFO    ] No update needed
[2026-06-27 00:30:45,608.608 INFO    ] Checking for camera pi updates...
[2026-06-27 00:30:45,629.629 INFO    ] 200
[2026-06-27 00:30:45,630.630 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:30:45,654.654 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:30:45,706.706 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:30:45,709.709 INFO    ] No camera update needed
[2026-06-27 00:30:45,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:30:45,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:30:45,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:30:45,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:30:47,766.766 INFO    ] ================================================
[2026-06-27 00:30:47,781.781 INFO    ] Launching Daemon at Sat Jun 27 00:30:47 IST 2026
[2026-06-27 00:30:47,792.792 INFO    ] ================================================
[2026-06-27 00:30:48,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:30:48
[2026-06-27 00:30:48,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:30:48,584.584 INFO    ] Initializing speech engine...
[2026-06-27 00:30:48,597.597 INFO    ] 2026-06-27 00:30:48
[2026-06-27 00:30:48,805.805 INFO    ] 2026-06-27 00:30:48
[2026-06-27 00:30:48,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:30:49,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:30:49,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:30:49,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:30:49,211.211 INFO    ] time= 27/06/2026 00:30:49
[2026-06-27 00:30:49,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:30:49,268.268 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:30:49,343.343 INFO    ] No existing commands found in stream
[2026-06-27 00:30:54,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:30:54,357.357 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-27 00:30:58,226.226 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:30:58,228.228 INFO    ] Checking for system updates...
[2026-06-27 00:30:58,249.249 INFO    ] 200
[2026-06-27 00:30:58,250.250 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:30:58,283.283 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:30:58,285.285 INFO    ] No update needed
[2026-06-27 00:30:58,288.288 INFO    ] Checking for camera pi updates...
[2026-06-27 00:30:58,309.309 INFO    ] 200
[2026-06-27 00:30:58,310.310 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:30:58,337.337 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:30:58,381.381 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:30:58,382.382 INFO    ] No camera update needed
[2026-06-27 00:30:58,384.384 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:30:58,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:30:58,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:30:58,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:31:00,431.431 INFO    ] ================================================
[2026-06-27 00:31:00,447.447 INFO    ] Launching Daemon at Sat Jun 27 00:31:00 IST 2026
[2026-06-27 00:31:00,458.458 INFO    ] ================================================
[2026-06-27 00:31:00,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:31:00
[2026-06-27 00:31:01,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:31:01,259.259 INFO    ] Initializing speech engine...
[2026-06-27 00:31:01,264.264 INFO    ] 2026-06-27 00:31:01
[2026-06-27 00:31:01,468.468 INFO    ] 2026-06-27 00:31:01
[2026-06-27 00:31:01,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:31:01,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:31:01,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:31:01,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:31:01,879.879 INFO    ] time= 27/06/2026 00:31:01
[2026-06-27 00:31:01,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:31:01,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:31:01,968.968 INFO    ] No existing commands found in stream
[2026-06-27 00:31:06,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:31:06,980.980 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-27 00:31:08,816.816 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 00:31:08,817.817 INFO    ] Checking for system updates...
[2026-06-27 00:31:08,838.838 INFO    ] 200
[2026-06-27 00:31:08,839.839 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:31:08,871.871 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:31:08,873.873 INFO    ] No update needed
[2026-06-27 00:31:08,874.874 INFO    ] Checking for camera pi updates...
[2026-06-27 00:31:08,894.894 INFO    ] 200
[2026-06-27 00:31:08,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:31:08,920.920 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:31:08,950.950 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:31:08,952.952 INFO    ] No camera update needed
[2026-06-27 00:31:08,953.953 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:31:08,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:31:08,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:31:08,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:31:11,999.999 INFO    ] ================================================
[2026-06-27 00:31:11,015.015 INFO    ] Launching Daemon at Sat Jun 27 00:31:11 IST 2026
[2026-06-27 00:31:11,026.026 INFO    ] ================================================
[2026-06-27 00:31:11,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:31:11
[2026-06-27 00:31:11,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:31:11,858.858 INFO    ] Initializing speech engine...
[2026-06-27 00:31:11,863.863 INFO    ] 2026-06-27 00:31:11
[2026-06-27 00:31:12,085.085 INFO    ] 2026-06-27 00:31:12
[2026-06-27 00:31:12,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:31:12,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:31:12,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:31:12,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:31:12,512.512 INFO    ] time= 27/06/2026 00:31:12
[2026-06-27 00:31:12,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:31:12,541.541 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:31:12,608.608 INFO    ] No existing commands found in stream
[2026-06-27 00:31:17,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:31:17,626.626 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-27 00:31:21,388.388 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 00:31:21,390.390 INFO    ] Checking for system updates...
[2026-06-27 00:31:21,411.411 INFO    ] 200
[2026-06-27 00:31:21,413.413 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:31:21,446.446 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:31:21,448.448 INFO    ] No update needed
[2026-06-27 00:31:21,449.449 INFO    ] Checking for camera pi updates...
[2026-06-27 00:31:21,471.471 INFO    ] 200
[2026-06-27 00:31:21,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:31:21,497.497 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:31:21,551.551 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:31:21,553.553 INFO    ] No camera update needed
[2026-06-27 00:31:21,554.554 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:31:21,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:31:21,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:31:21,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:31:23,600.600 INFO    ] ================================================
[2026-06-27 00:31:23,616.616 INFO    ] Launching Daemon at Sat Jun 27 00:31:23 IST 2026
[2026-06-27 00:31:23,627.627 INFO    ] ================================================
[2026-06-27 00:31:23,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:31:23
[2026-06-27 00:31:24,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:31:24,459.459 INFO    ] Initializing speech engine...
[2026-06-27 00:31:24,464.464 INFO    ] 2026-06-27 00:31:24
[2026-06-27 00:31:24,668.668 INFO    ] 2026-06-27 00:31:24
[2026-06-27 00:31:24,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:31:24,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:31:24,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:31:25,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:31:25,072.072 INFO    ] time= 27/06/2026 00:31:25
[2026-06-27 00:31:25,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:31:25,112.112 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:31:25,185.185 INFO    ] No existing commands found in stream
[2026-06-27 00:31:30,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:31:30,196.196 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-27 00:31:31,998.998 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 00:31:32,000.000 INFO    ] Checking for system updates...
[2026-06-27 00:31:32,023.023 INFO    ] 200
[2026-06-27 00:31:32,025.025 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:31:32,061.061 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:31:32,063.063 INFO    ] No update needed
[2026-06-27 00:31:32,065.065 INFO    ] Checking for camera pi updates...
[2026-06-27 00:31:32,088.088 INFO    ] 200
[2026-06-27 00:31:32,089.089 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:31:32,118.118 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:31:32,156.156 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:31:32,158.158 INFO    ] No camera update needed
[2026-06-27 00:31:32,159.159 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:31:32,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:31:32,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:31:32,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:31:34,200.200 INFO    ] ================================================
[2026-06-27 00:31:34,224.224 INFO    ] Launching Daemon at Sat Jun 27 00:31:34 IST 2026
[2026-06-27 00:31:34,235.235 INFO    ] ================================================
[2026-06-27 00:31:34,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:31:34
[2026-06-27 00:31:34,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:31:35,045.045 INFO    ] Initializing speech engine...
[2026-06-27 00:31:35,053.053 INFO    ] 2026-06-27 00:31:35
[2026-06-27 00:31:35,271.271 INFO    ] 2026-06-27 00:31:35
[2026-06-27 00:31:35,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:31:35,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:31:35,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:31:35,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:31:35,695.695 INFO    ] time= 27/06/2026 00:31:35
[2026-06-27 00:31:35,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:31:35,729.729 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:31:35,822.822 INFO    ] No existing commands found in stream
[2026-06-27 00:31:40,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:31:40,849.849 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-27 00:31:41,974.974 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 00:31:41,976.976 INFO    ] Checking for system updates...
[2026-06-27 00:31:41,999.999 INFO    ] 200
[2026-06-27 00:31:42,001.001 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:31:42,034.034 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:31:42,035.035 INFO    ] No update needed
[2026-06-27 00:31:42,037.037 INFO    ] Checking for camera pi updates...
[2026-06-27 00:31:42,059.059 INFO    ] 200
[2026-06-27 00:31:42,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:31:42,085.085 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:31:42,123.123 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:31:42,125.125 INFO    ] No camera update needed
[2026-06-27 00:31:42,126.126 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:31:42,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:31:42,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:31:42,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:31:44,173.173 INFO    ] ================================================
[2026-06-27 00:31:44,188.188 INFO    ] Launching Daemon at Sat Jun 27 00:31:44 IST 2026
[2026-06-27 00:31:44,199.199 INFO    ] ================================================
[2026-06-27 00:31:44,566.566 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:31:44
[2026-06-27 00:31:44,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:31:45,009.009 INFO    ] Initializing speech engine...
[2026-06-27 00:31:45,014.014 INFO    ] 2026-06-27 00:31:45
[2026-06-27 00:31:45,239.239 INFO    ] 2026-06-27 00:31:45
[2026-06-27 00:31:45,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:31:45,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:31:45,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:31:45,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:31:45,684.684 INFO    ] time= 27/06/2026 00:31:45
[2026-06-27 00:31:45,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:31:45,716.716 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:31:45,786.786 INFO    ] No existing commands found in stream
[2026-06-27 00:31:50,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:31:50,803.803 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-27 00:31:53,983.983 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 00:31:53,984.984 INFO    ] Checking for system updates...
[2026-06-27 00:31:54,006.006 INFO    ] 200
[2026-06-27 00:31:54,008.008 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:31:54,041.041 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:31:54,043.043 INFO    ] No update needed
[2026-06-27 00:31:54,044.044 INFO    ] Checking for camera pi updates...
[2026-06-27 00:31:54,066.066 INFO    ] 200
[2026-06-27 00:31:54,068.068 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:31:54,093.093 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:31:54,127.127 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:31:54,129.129 INFO    ] No camera update needed
[2026-06-27 00:31:54,130.130 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:31:54,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:31:54,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:31:54,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:31:56,177.177 INFO    ] ================================================
[2026-06-27 00:31:56,193.193 INFO    ] Launching Daemon at Sat Jun 27 00:31:56 IST 2026
[2026-06-27 00:31:56,203.203 INFO    ] ================================================
[2026-06-27 00:31:56,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:31:56
[2026-06-27 00:31:56,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:31:56,988.988 INFO    ] Initializing speech engine...
[2026-06-27 00:31:56,992.992 INFO    ] 2026-06-27 00:31:56
[2026-06-27 00:31:57,199.199 INFO    ] 2026-06-27 00:31:57
[2026-06-27 00:31:57,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:31:58,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:31:58,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:31:58,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:31:58,280.280 INFO    ] time= 27/06/2026 00:31:58
[2026-06-27 00:31:58,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:31:58,292.292 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:31:58,348.348 INFO    ] No existing commands found in stream
[2026-06-27 00:32:03,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:32:03,364.364 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-27 00:32:06,234.234 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 00:32:06,235.235 INFO    ] Checking for system updates...
[2026-06-27 00:32:06,257.257 INFO    ] 200
[2026-06-27 00:32:06,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:32:06,291.291 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:32:06,292.292 INFO    ] No update needed
[2026-06-27 00:32:06,293.293 INFO    ] Checking for camera pi updates...
[2026-06-27 00:32:06,314.314 INFO    ] 200
[2026-06-27 00:32:06,315.315 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:32:06,342.342 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:32:06,391.391 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:32:06,392.392 INFO    ] No camera update needed
[2026-06-27 00:32:06,394.394 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:32:06,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:32:06,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:32:06,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:32:08,439.439 INFO    ] ================================================
[2026-06-27 00:32:08,457.457 INFO    ] Launching Daemon at Sat Jun 27 00:32:08 IST 2026
[2026-06-27 00:32:08,469.469 INFO    ] ================================================
[2026-06-27 00:32:08,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:32:08
[2026-06-27 00:32:09,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:32:09,255.255 INFO    ] Initializing speech engine...
[2026-06-27 00:32:09,260.260 INFO    ] 2026-06-27 00:32:09
[2026-06-27 00:32:09,475.475 INFO    ] 2026-06-27 00:32:09
[2026-06-27 00:32:09,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:32:09,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:32:09,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:32:09,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:32:09,890.890 INFO    ] time= 27/06/2026 00:32:09
[2026-06-27 00:32:09,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:32:09,929.929 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:32:09,996.996 INFO    ] No existing commands found in stream
[2026-06-27 00:32:15,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:32:15,009.009 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-27 00:32:17,241.241 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 00:32:17,242.242 INFO    ] Checking for system updates...
[2026-06-27 00:32:17,263.263 INFO    ] 200
[2026-06-27 00:32:17,265.265 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:32:17,297.297 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:32:17,299.299 INFO    ] No update needed
[2026-06-27 00:32:17,300.300 INFO    ] Checking for camera pi updates...
[2026-06-27 00:32:17,319.319 INFO    ] 200
[2026-06-27 00:32:17,321.321 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:32:17,346.346 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:32:17,378.378 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:32:17,380.380 INFO    ] No camera update needed
[2026-06-27 00:32:17,381.381 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:32:17,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:32:17,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:32:17,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:32:19,429.429 INFO    ] ================================================
[2026-06-27 00:32:19,444.444 INFO    ] Launching Daemon at Sat Jun 27 00:32:19 IST 2026
[2026-06-27 00:32:19,456.456 INFO    ] ================================================
[2026-06-27 00:32:19,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:32:19
[2026-06-27 00:32:20,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:32:20,246.246 INFO    ] Initializing speech engine...
[2026-06-27 00:32:20,251.251 INFO    ] 2026-06-27 00:32:20
[2026-06-27 00:32:20,482.482 INFO    ] 2026-06-27 00:32:20
[2026-06-27 00:32:20,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:32:20,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:32:20,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:32:20,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:32:20,900.900 INFO    ] time= 27/06/2026 00:32:20
[2026-06-27 00:32:20,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:32:20,961.961 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:32:21,038.038 INFO    ] No existing commands found in stream
[2026-06-27 00:32:26,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:32:26,055.055 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-27 00:32:26,570.570 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 00:32:26,572.572 INFO    ] Checking for system updates...
[2026-06-27 00:32:26,594.594 INFO    ] 200
[2026-06-27 00:32:26,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:32:26,627.627 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:32:26,629.629 INFO    ] No update needed
[2026-06-27 00:32:26,630.630 INFO    ] Checking for camera pi updates...
[2026-06-27 00:32:26,651.651 INFO    ] 200
[2026-06-27 00:32:26,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:32:26,679.679 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:32:26,721.721 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:32:26,723.723 INFO    ] No camera update needed
[2026-06-27 00:32:26,724.724 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:32:26,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:32:26,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:32:26,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:32:28,770.770 INFO    ] ================================================
[2026-06-27 00:32:28,786.786 INFO    ] Launching Daemon at Sat Jun 27 00:32:28 IST 2026
[2026-06-27 00:32:28,797.797 INFO    ] ================================================
[2026-06-27 00:32:29,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:32:29
[2026-06-27 00:32:29,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:32:29,581.581 INFO    ] Initializing speech engine...
[2026-06-27 00:32:29,584.584 INFO    ] 2026-06-27 00:32:29
[2026-06-27 00:32:29,816.816 INFO    ] 2026-06-27 00:32:29
[2026-06-27 00:32:29,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:32:30,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:32:30,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:32:30,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:32:30,233.233 INFO    ] time= 27/06/2026 00:32:30
[2026-06-27 00:32:30,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:32:30,300.300 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:32:30,379.379 INFO    ] No existing commands found in stream
[2026-06-27 00:32:35,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:32:35,390.390 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-27 00:32:37,626.626 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 00:32:37,627.627 INFO    ] Checking for system updates...
[2026-06-27 00:32:37,650.650 INFO    ] 200
[2026-06-27 00:32:37,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:32:37,682.682 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:32:37,683.683 INFO    ] No update needed
[2026-06-27 00:32:37,685.685 INFO    ] Checking for camera pi updates...
[2026-06-27 00:32:37,706.706 INFO    ] 200
[2026-06-27 00:32:37,707.707 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:32:37,730.730 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:32:37,873.873 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:32:37,874.874 INFO    ] No camera update needed
[2026-06-27 00:32:37,876.876 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:32:37,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:32:37,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:32:37,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:32:39,921.921 INFO    ] ================================================
[2026-06-27 00:32:39,937.937 INFO    ] Launching Daemon at Sat Jun 27 00:32:39 IST 2026
[2026-06-27 00:32:39,948.948 INFO    ] ================================================
[2026-06-27 00:32:40,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:32:40
[2026-06-27 00:32:40,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:32:40,774.774 INFO    ] Initializing speech engine...
[2026-06-27 00:32:40,779.779 INFO    ] 2026-06-27 00:32:40
[2026-06-27 00:32:40,984.984 INFO    ] 2026-06-27 00:32:40
[2026-06-27 00:32:41,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:32:41,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:32:41,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:32:41,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:32:41,402.402 INFO    ] time= 27/06/2026 00:32:41
[2026-06-27 00:32:41,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:32:41,432.432 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:32:41,500.500 INFO    ] No existing commands found in stream
[2026-06-27 00:32:46,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:32:46,512.512 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-27 00:32:48,234.234 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 00:32:48,235.235 INFO    ] Checking for system updates...
[2026-06-27 00:32:48,258.258 INFO    ] 200
[2026-06-27 00:32:48,259.259 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:32:48,293.293 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:32:48,294.294 INFO    ] No update needed
[2026-06-27 00:32:48,296.296 INFO    ] Checking for camera pi updates...
[2026-06-27 00:32:48,317.317 INFO    ] 200
[2026-06-27 00:32:48,318.318 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:32:48,345.345 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:32:48,403.403 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:32:48,405.405 INFO    ] No camera update needed
[2026-06-27 00:32:48,406.406 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:32:48,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:32:48,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:32:48,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:32:50,454.454 INFO    ] ================================================
[2026-06-27 00:32:50,470.470 INFO    ] Launching Daemon at Sat Jun 27 00:32:50 IST 2026
[2026-06-27 00:32:50,481.481 INFO    ] ================================================
[2026-06-27 00:32:50,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:32:50
[2026-06-27 00:32:51,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:32:51,440.440 INFO    ] Initializing speech engine...
[2026-06-27 00:32:51,446.446 INFO    ] 2026-06-27 00:32:51
[2026-06-27 00:32:51,656.656 INFO    ] 2026-06-27 00:32:51
[2026-06-27 00:32:51,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:32:51,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:32:51,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:32:52,044.044 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:32:52,077.077 INFO    ] time= 27/06/2026 00:32:52
[2026-06-27 00:32:52,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:32:52,154.154 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:32:52,231.231 INFO    ] No existing commands found in stream
[2026-06-27 00:32:57,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:32:57,242.242 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-27 00:32:58,470.470 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 00:32:58,471.471 INFO    ] Checking for system updates...
[2026-06-27 00:32:58,498.498 INFO    ] 200
[2026-06-27 00:32:58,500.500 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-27 00:32:58,501.501 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-27 00:32:58,503.503 INFO    ] Checking for camera pi updates...
[2026-06-27 00:32:58,528.528 INFO    ] 200
[2026-06-27 00:32:58,529.529 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-27 00:32:58,531.531 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-27 00:32:58,533.533 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:32:58,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:32:58,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:32:58,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:33:00,572.572 INFO    ] ================================================
[2026-06-27 00:33:00,588.588 INFO    ] Launching Daemon at Sat Jun 27 00:33:00 IST 2026
[2026-06-27 00:33:00,600.600 INFO    ] ================================================
[2026-06-27 00:33:00,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:33:00
[2026-06-27 00:33:01,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:33:01,406.406 INFO    ] Initializing speech engine...
[2026-06-27 00:33:01,410.410 INFO    ] 2026-06-27 00:33:01
[2026-06-27 00:33:01,720.720 INFO    ] 2026-06-27 00:33:01
[2026-06-27 00:33:01,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:33:01,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:33:01,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:33:02,156.156 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:33:02,224.224 INFO    ] time= 27/06/2026 00:33:02
[2026-06-27 00:33:02,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:33:02,293.293 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:33:02,404.404 INFO    ] No existing commands found in stream
[2026-06-27 00:33:07,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:33:07,416.416 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-27 00:33:11,207.207 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:33:11,208.208 INFO    ] Checking for system updates...
[2026-06-27 00:33:11,230.230 INFO    ] 200
[2026-06-27 00:33:11,231.231 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:33:11,262.262 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:33:11,263.263 INFO    ] No update needed
[2026-06-27 00:33:11,265.265 INFO    ] Checking for camera pi updates...
[2026-06-27 00:33:11,284.284 INFO    ] 200
[2026-06-27 00:33:11,286.286 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:33:11,309.309 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:33:11,366.366 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:33:11,367.367 INFO    ] No camera update needed
[2026-06-27 00:33:11,368.368 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:33:11,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:33:11,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:33:11,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:33:13,415.415 INFO    ] ================================================
[2026-06-27 00:33:13,431.431 INFO    ] Launching Daemon at Sat Jun 27 00:33:13 IST 2026
[2026-06-27 00:33:13,442.442 INFO    ] ================================================
[2026-06-27 00:33:13,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:33:13
[2026-06-27 00:33:14,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:33:14,312.312 INFO    ] Initializing speech engine...
[2026-06-27 00:33:14,318.318 INFO    ] 2026-06-27 00:33:14
[2026-06-27 00:33:14,527.527 INFO    ] 2026-06-27 00:33:14
[2026-06-27 00:33:14,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:33:14,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:33:14,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:33:14,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:33:14,950.950 INFO    ] time= 27/06/2026 00:33:14
[2026-06-27 00:33:14,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:33:14,980.980 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:33:15,047.047 INFO    ] No existing commands found in stream
[2026-06-27 00:33:20,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:33:20,065.065 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-27 00:33:22,949.949 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 00:33:22,951.951 INFO    ] Checking for system updates...
[2026-06-27 00:33:22,974.974 INFO    ] 200
[2026-06-27 00:33:22,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:33:23,009.009 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:33:23,010.010 INFO    ] No update needed
[2026-06-27 00:33:23,014.014 INFO    ] Checking for camera pi updates...
[2026-06-27 00:33:23,036.036 INFO    ] 200
[2026-06-27 00:33:23,037.037 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:33:23,062.062 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:33:23,113.113 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:33:23,114.114 INFO    ] No camera update needed
[2026-06-27 00:33:23,115.115 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:33:23,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:33:23,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:33:23,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:33:25,160.160 INFO    ] ================================================
[2026-06-27 00:33:25,176.176 INFO    ] Launching Daemon at Sat Jun 27 00:33:25 IST 2026
[2026-06-27 00:33:25,187.187 INFO    ] ================================================
[2026-06-27 00:33:25,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:33:25
[2026-06-27 00:33:25,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:33:25,998.998 INFO    ] Initializing speech engine...
[2026-06-27 00:33:26,001.001 INFO    ] 2026-06-27 00:33:25
[2026-06-27 00:33:26,218.218 INFO    ] 2026-06-27 00:33:26
[2026-06-27 00:33:26,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:33:26,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:33:26,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:33:27,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:33:27,055.055 INFO    ] time= 27/06/2026 00:33:27
[2026-06-27 00:33:27,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:33:27,060.060 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:33:27,128.128 INFO    ] No existing commands found in stream
[2026-06-27 00:33:32,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:33:32,136.136 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-27 00:33:33,350.350 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 00:33:33,351.351 INFO    ] Checking for system updates...
[2026-06-27 00:33:33,374.374 INFO    ] 200
[2026-06-27 00:33:33,375.375 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:33:33,409.409 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:33:33,411.411 INFO    ] No update needed
[2026-06-27 00:33:33,413.413 INFO    ] Checking for camera pi updates...
[2026-06-27 00:33:33,435.435 INFO    ] 200
[2026-06-27 00:33:33,436.436 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:33:33,466.466 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:33:33,510.510 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:33:33,512.512 INFO    ] No camera update needed
[2026-06-27 00:33:33,513.513 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:33:33,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:33:33,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:33:33,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:33:35,562.562 INFO    ] ================================================
[2026-06-27 00:33:35,577.577 INFO    ] Launching Daemon at Sat Jun 27 00:33:35 IST 2026
[2026-06-27 00:33:35,588.588 INFO    ] ================================================
[2026-06-27 00:33:35,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:33:35
[2026-06-27 00:33:36,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:33:36,372.372 INFO    ] Initializing speech engine...
[2026-06-27 00:33:36,377.377 INFO    ] 2026-06-27 00:33:36
[2026-06-27 00:33:36,584.584 INFO    ] 2026-06-27 00:33:36
[2026-06-27 00:33:36,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:33:36,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:33:36,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:33:36,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:33:37,007.007 INFO    ] time= 27/06/2026 00:33:36
[2026-06-27 00:33:37,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:33:37,037.037 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:33:37,105.105 INFO    ] No existing commands found in stream
[2026-06-27 00:33:42,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:33:42,117.117 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-27 00:33:43,169.169 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 00:33:43,170.170 INFO    ] Checking for system updates...
[2026-06-27 00:33:43,191.191 INFO    ] 200
[2026-06-27 00:33:43,192.192 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:33:43,222.222 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:33:43,224.224 INFO    ] No update needed
[2026-06-27 00:33:43,225.225 INFO    ] Checking for camera pi updates...
[2026-06-27 00:33:43,245.245 INFO    ] 200
[2026-06-27 00:33:43,246.246 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:33:43,272.272 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:33:43,313.313 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:33:43,315.315 INFO    ] No camera update needed
[2026-06-27 00:33:43,316.316 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:33:43,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:33:43,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:33:43,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:33:45,362.362 INFO    ] ================================================
[2026-06-27 00:33:45,379.379 INFO    ] Launching Daemon at Sat Jun 27 00:33:45 IST 2026
[2026-06-27 00:33:45,390.390 INFO    ] ================================================
[2026-06-27 00:33:45,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:33:45
[2026-06-27 00:33:46,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:33:46,194.194 INFO    ] Initializing speech engine...
[2026-06-27 00:33:46,199.199 INFO    ] 2026-06-27 00:33:46
[2026-06-27 00:33:46,402.402 INFO    ] 2026-06-27 00:33:46
[2026-06-27 00:33:46,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:33:46,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:33:46,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:33:46,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:33:46,823.823 INFO    ] time= 27/06/2026 00:33:46
[2026-06-27 00:33:46,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:33:46,853.853 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:33:46,945.945 INFO    ] No existing commands found in stream
[2026-06-27 00:33:51,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:33:51,961.961 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-27 00:33:56,078.078 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 00:33:56,080.080 INFO    ] Checking for system updates...
[2026-06-27 00:33:56,103.103 INFO    ] 200
[2026-06-27 00:33:56,104.104 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:33:56,135.135 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:33:56,137.137 INFO    ] No update needed
[2026-06-27 00:33:56,138.138 INFO    ] Checking for camera pi updates...
[2026-06-27 00:33:56,158.158 INFO    ] 200
[2026-06-27 00:33:56,160.160 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:33:56,184.184 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:33:56,209.209 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:33:56,211.211 INFO    ] No camera update needed
[2026-06-27 00:33:56,212.212 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:33:56,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:33:56,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:33:56,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:33:58,259.259 INFO    ] ================================================
[2026-06-27 00:33:58,276.276 INFO    ] Launching Daemon at Sat Jun 27 00:33:58 IST 2026
[2026-06-27 00:33:58,287.287 INFO    ] ================================================
[2026-06-27 00:33:58,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:33:58
[2026-06-27 00:33:58,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:33:59,106.106 INFO    ] Initializing speech engine...
[2026-06-27 00:33:59,111.111 INFO    ] 2026-06-27 00:33:59
[2026-06-27 00:33:59,317.317 INFO    ] 2026-06-27 00:33:59
[2026-06-27 00:33:59,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:33:59,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:33:59,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:33:59,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:33:59,734.734 INFO    ] time= 27/06/2026 00:33:59
[2026-06-27 00:33:59,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:33:59,768.768 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:33:59,835.835 INFO    ] No existing commands found in stream
[2026-06-27 00:34:04,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:34:04,848.848 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-27 00:34:07,062.062 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 00:34:07,064.064 INFO    ] Checking for system updates...
[2026-06-27 00:34:07,084.084 INFO    ] 200
[2026-06-27 00:34:07,086.086 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:34:07,116.116 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:34:07,117.117 INFO    ] No update needed
[2026-06-27 00:34:07,119.119 INFO    ] Checking for camera pi updates...
[2026-06-27 00:34:07,139.139 INFO    ] 200
[2026-06-27 00:34:07,140.140 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:34:07,168.168 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:34:07,208.208 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:34:07,209.209 INFO    ] No camera update needed
[2026-06-27 00:34:07,211.211 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:34:07,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:34:07,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:34:07,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:34:09,257.257 INFO    ] ================================================
[2026-06-27 00:34:09,272.272 INFO    ] Launching Daemon at Sat Jun 27 00:34:09 IST 2026
[2026-06-27 00:34:09,284.284 INFO    ] ================================================
[2026-06-27 00:34:09,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:34:09
[2026-06-27 00:34:09,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:34:10,142.142 INFO    ] Initializing speech engine...
[2026-06-27 00:34:10,152.152 INFO    ] 2026-06-27 00:34:10
[2026-06-27 00:34:10,360.360 INFO    ] 2026-06-27 00:34:10
[2026-06-27 00:34:10,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:34:10,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:34:10,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:34:10,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:34:10,783.783 INFO    ] time= 27/06/2026 00:34:10
[2026-06-27 00:34:10,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:34:10,811.811 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:34:10,878.878 INFO    ] No existing commands found in stream
[2026-06-27 00:34:15,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:34:15,895.895 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-27 00:34:18,298.298 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 00:34:18,299.299 INFO    ] Checking for system updates...
[2026-06-27 00:34:18,321.321 INFO    ] 200
[2026-06-27 00:34:18,322.322 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:34:18,366.366 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:34:18,368.368 INFO    ] No update needed
[2026-06-27 00:34:18,370.370 INFO    ] Checking for camera pi updates...
[2026-06-27 00:34:18,404.404 INFO    ] 200
[2026-06-27 00:34:18,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:34:18,445.445 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:34:18,490.490 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:34:18,492.492 INFO    ] No camera update needed
[2026-06-27 00:34:18,493.493 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:34:18,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:34:18,497.497 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:34:18,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:34:20,539.539 INFO    ] ================================================
[2026-06-27 00:34:20,556.556 INFO    ] Launching Daemon at Sat Jun 27 00:34:20 IST 2026
[2026-06-27 00:34:20,567.567 INFO    ] ================================================
[2026-06-27 00:34:20,923.923 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:34:20
[2026-06-27 00:34:21,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:34:21,379.379 INFO    ] Initializing speech engine...
[2026-06-27 00:34:21,384.384 INFO    ] 2026-06-27 00:34:21
[2026-06-27 00:34:21,589.589 INFO    ] 2026-06-27 00:34:21
[2026-06-27 00:34:21,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:34:21,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:34:21,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:34:21,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:34:22,003.003 INFO    ] time= 27/06/2026 00:34:21
[2026-06-27 00:34:22,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:34:22,036.036 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:34:22,103.103 INFO    ] No existing commands found in stream
[2026-06-27 00:34:27,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:34:27,120.120 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-27 00:34:28,749.749 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 00:34:28,750.750 INFO    ] Checking for system updates...
[2026-06-27 00:34:28,771.771 INFO    ] 200
[2026-06-27 00:34:28,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:34:28,809.809 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:34:28,810.810 INFO    ] No update needed
[2026-06-27 00:34:28,811.811 INFO    ] Checking for camera pi updates...
[2026-06-27 00:34:28,831.831 INFO    ] 200
[2026-06-27 00:34:28,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:34:28,857.857 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:34:28,923.923 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:34:28,925.925 INFO    ] No camera update needed
[2026-06-27 00:34:28,926.926 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:34:28,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:34:28,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:34:28,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:34:30,975.975 INFO    ] ================================================
[2026-06-27 00:34:30,991.991 INFO    ] Launching Daemon at Sat Jun 27 00:34:30 IST 2026
[2026-06-27 00:34:31,002.002 INFO    ] ================================================
[2026-06-27 00:34:31,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:34:31
[2026-06-27 00:34:31,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:34:31,785.785 INFO    ] Initializing speech engine...
[2026-06-27 00:34:31,794.794 INFO    ] 2026-06-27 00:34:31
[2026-06-27 00:34:31,998.998 INFO    ] 2026-06-27 00:34:31
[2026-06-27 00:34:32,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:34:32,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:34:32,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:34:32,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:34:32,336.336 INFO    ] time= 27/06/2026 00:34:32
[2026-06-27 00:34:32,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:34:32,433.433 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:34:32,563.563 INFO    ] No existing commands found in stream
[2026-06-27 00:34:37,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:34:37,578.578 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-27 00:34:38,293.293 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:34:38,295.295 INFO    ] Checking for system updates...
[2026-06-27 00:34:38,317.317 INFO    ] 200
[2026-06-27 00:34:38,318.318 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:34:38,349.349 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:34:38,350.350 INFO    ] No update needed
[2026-06-27 00:34:38,351.351 INFO    ] Checking for camera pi updates...
[2026-06-27 00:34:38,373.373 INFO    ] 200
[2026-06-27 00:34:38,374.374 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:34:38,397.397 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:34:38,440.440 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:34:38,441.441 INFO    ] No camera update needed
[2026-06-27 00:34:38,443.443 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:34:38,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:34:38,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:34:38,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:34:40,488.488 INFO    ] ================================================
[2026-06-27 00:34:40,503.503 INFO    ] Launching Daemon at Sat Jun 27 00:34:40 IST 2026
[2026-06-27 00:34:40,515.515 INFO    ] ================================================
[2026-06-27 00:34:40,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:34:40
[2026-06-27 00:34:41,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:34:41,290.290 INFO    ] Initializing speech engine...
[2026-06-27 00:34:41,293.293 INFO    ] 2026-06-27 00:34:41
[2026-06-27 00:34:41,497.497 INFO    ] 2026-06-27 00:34:41
[2026-06-27 00:34:41,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:34:41,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:34:41,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:34:41,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:34:41,899.899 INFO    ] time= 27/06/2026 00:34:41
[2026-06-27 00:34:41,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:34:41,989.989 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:34:42,084.084 INFO    ] No existing commands found in stream
[2026-06-27 00:34:47,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:34:47,098.098 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-27 00:34:47,487.487 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:34:47,489.489 INFO    ] Checking for system updates...
[2026-06-27 00:34:47,509.509 INFO    ] 200
[2026-06-27 00:34:47,511.511 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:34:47,543.543 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:34:47,544.544 INFO    ] No update needed
[2026-06-27 00:34:47,546.546 INFO    ] Checking for camera pi updates...
[2026-06-27 00:34:47,566.566 INFO    ] 200
[2026-06-27 00:34:47,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:34:47,592.592 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:34:47,730.730 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:34:47,731.731 INFO    ] No camera update needed
[2026-06-27 00:34:47,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:34:47,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:34:47,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:34:47,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:34:49,779.779 INFO    ] ================================================
[2026-06-27 00:34:49,794.794 INFO    ] Launching Daemon at Sat Jun 27 00:34:49 IST 2026
[2026-06-27 00:34:49,804.804 INFO    ] ================================================
[2026-06-27 00:34:50,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:34:50
[2026-06-27 00:34:50,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:34:50,618.618 INFO    ] Initializing speech engine...
[2026-06-27 00:34:50,623.623 INFO    ] 2026-06-27 00:34:50
[2026-06-27 00:34:50,826.826 INFO    ] 2026-06-27 00:34:50
[2026-06-27 00:34:50,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:34:51,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:34:51,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:34:51,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:34:51,777.777 INFO    ] time= 27/06/2026 00:34:51
[2026-06-27 00:34:51,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:34:51,784.784 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:34:51,839.839 INFO    ] No existing commands found in stream
[2026-06-27 00:34:56,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:34:56,852.852 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-27 00:34:58,732.732 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 00:34:58,734.734 INFO    ] Checking for system updates...
[2026-06-27 00:34:58,757.757 INFO    ] 200
[2026-06-27 00:34:58,758.758 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:34:58,789.789 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:34:58,790.790 INFO    ] No update needed
[2026-06-27 00:34:58,791.791 INFO    ] Checking for camera pi updates...
[2026-06-27 00:34:58,812.812 INFO    ] 200
[2026-06-27 00:34:58,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:34:58,837.837 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:34:58,879.879 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:34:58,880.880 INFO    ] No camera update needed
[2026-06-27 00:34:58,882.882 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:34:58,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:34:58,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:34:58,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:35:00,926.926 INFO    ] ================================================
[2026-06-27 00:35:00,942.942 INFO    ] Launching Daemon at Sat Jun 27 00:35:00 IST 2026
[2026-06-27 00:35:00,952.952 INFO    ] ================================================
[2026-06-27 00:35:01,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:35:01
[2026-06-27 00:35:01,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:35:01,744.744 INFO    ] Initializing speech engine...
[2026-06-27 00:35:01,748.748 INFO    ] 2026-06-27 00:35:01
[2026-06-27 00:35:01,966.966 INFO    ] 2026-06-27 00:35:01
[2026-06-27 00:35:01,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:35:02,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:35:02,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:35:02,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:35:02,293.293 INFO    ] time= 27/06/2026 00:35:02
[2026-06-27 00:35:02,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:35:02,300.300 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:35:02,350.350 INFO    ] No existing commands found in stream
[2026-06-27 00:35:07,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:35:07,362.362 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-27 00:35:11,039.039 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 00:35:11,040.040 INFO    ] Checking for system updates...
[2026-06-27 00:35:11,063.063 INFO    ] 200
[2026-06-27 00:35:11,064.064 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:35:11,097.097 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:35:11,098.098 INFO    ] No update needed
[2026-06-27 00:35:11,099.099 INFO    ] Checking for camera pi updates...
[2026-06-27 00:35:11,119.119 INFO    ] 200
[2026-06-27 00:35:11,120.120 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:35:11,145.145 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:35:11,205.205 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:35:11,206.206 INFO    ] No camera update needed
[2026-06-27 00:35:11,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:35:11,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:35:11,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:35:11,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:35:13,253.253 INFO    ] ================================================
[2026-06-27 00:35:13,268.268 INFO    ] Launching Daemon at Sat Jun 27 00:35:13 IST 2026
[2026-06-27 00:35:13,278.278 INFO    ] ================================================
[2026-06-27 00:35:13,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:35:13
[2026-06-27 00:35:13,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:35:14,075.075 INFO    ] Initializing speech engine...
[2026-06-27 00:35:14,088.088 INFO    ] 2026-06-27 00:35:14
[2026-06-27 00:35:14,299.299 INFO    ] 2026-06-27 00:35:14
[2026-06-27 00:35:14,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:35:14,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:35:14,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:35:14,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:35:14,709.709 INFO    ] time= 27/06/2026 00:35:14
[2026-06-27 00:35:14,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:35:14,751.751 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:35:14,847.847 INFO    ] No existing commands found in stream
[2026-06-27 00:35:19,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:35:19,859.859 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-27 00:35:21,712.712 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 00:35:21,713.713 INFO    ] Checking for system updates...
[2026-06-27 00:35:21,739.739 INFO    ] 200
[2026-06-27 00:35:21,740.740 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:35:21,771.771 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:35:21,772.772 INFO    ] No update needed
[2026-06-27 00:35:21,774.774 INFO    ] Checking for camera pi updates...
[2026-06-27 00:35:21,795.795 INFO    ] 200
[2026-06-27 00:35:21,796.796 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:35:21,820.820 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:35:21,868.868 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:35:21,870.870 INFO    ] No camera update needed
[2026-06-27 00:35:21,871.871 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:35:21,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:35:21,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:35:21,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:35:23,919.919 INFO    ] ================================================
[2026-06-27 00:35:23,934.934 INFO    ] Launching Daemon at Sat Jun 27 00:35:23 IST 2026
[2026-06-27 00:35:23,945.945 INFO    ] ================================================
[2026-06-27 00:35:24,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:35:24
[2026-06-27 00:35:24,618.618 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:35:24,750.750 INFO    ] Initializing speech engine...
[2026-06-27 00:35:24,754.754 INFO    ] 2026-06-27 00:35:24
[2026-06-27 00:35:24,972.972 INFO    ] 2026-06-27 00:35:24
[2026-06-27 00:35:25,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:35:25,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:35:25,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:35:25,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:35:25,332.332 INFO    ] time= 27/06/2026 00:35:25
[2026-06-27 00:35:25,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:35:25,397.397 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:35:25,525.525 INFO    ] No existing commands found in stream
[2026-06-27 00:35:30,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:35:30,553.553 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-27 00:35:33,099.099 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:35:33,102.102 INFO    ] Checking for system updates...
[2026-06-27 00:35:33,139.139 INFO    ] 200
[2026-06-27 00:35:33,141.141 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:35:33,197.197 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:35:33,199.199 INFO    ] No update needed
[2026-06-27 00:35:33,202.202 INFO    ] Checking for camera pi updates...
[2026-06-27 00:35:33,239.239 INFO    ] 200
[2026-06-27 00:35:33,242.242 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:35:33,288.288 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:35:33,324.324 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:35:33,326.326 INFO    ] No camera update needed
[2026-06-27 00:35:33,327.327 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:35:33,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:35:33,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:35:33,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:35:35,375.375 INFO    ] ================================================
[2026-06-27 00:35:35,390.390 INFO    ] Launching Daemon at Sat Jun 27 00:35:35 IST 2026
[2026-06-27 00:35:35,401.401 INFO    ] ================================================
[2026-06-27 00:35:35,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:35:35
[2026-06-27 00:35:36,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:35:36,177.177 INFO    ] Initializing speech engine...
[2026-06-27 00:35:36,180.180 INFO    ] 2026-06-27 00:35:36
[2026-06-27 00:35:36,398.398 INFO    ] 2026-06-27 00:35:36
[2026-06-27 00:35:36,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:35:36,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:35:36,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:35:36,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:35:36,818.818 INFO    ] time= 27/06/2026 00:35:36
[2026-06-27 00:35:36,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:35:36,852.852 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:35:36,920.920 INFO    ] No existing commands found in stream
[2026-06-27 00:35:41,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:35:41,929.929 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-27 00:35:43,093.093 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 00:35:43,094.094 INFO    ] Checking for system updates...
[2026-06-27 00:35:43,117.117 INFO    ] 200
[2026-06-27 00:35:43,118.118 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:35:43,153.153 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:35:43,155.155 INFO    ] No update needed
[2026-06-27 00:35:43,157.157 INFO    ] Checking for camera pi updates...
[2026-06-27 00:35:43,177.177 INFO    ] 200
[2026-06-27 00:35:43,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:35:43,205.205 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:35:43,257.257 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:35:43,258.258 INFO    ] No camera update needed
[2026-06-27 00:35:43,260.260 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:35:43,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:35:43,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:35:43,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:35:45,306.306 INFO    ] ================================================
[2026-06-27 00:35:45,321.321 INFO    ] Launching Daemon at Sat Jun 27 00:35:45 IST 2026
[2026-06-27 00:35:45,332.332 INFO    ] ================================================
[2026-06-27 00:35:45,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:35:45
[2026-06-27 00:35:46,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:35:46,144.144 INFO    ] Initializing speech engine...
[2026-06-27 00:35:46,149.149 INFO    ] 2026-06-27 00:35:46
[2026-06-27 00:35:46,353.353 INFO    ] 2026-06-27 00:35:46
[2026-06-27 00:35:46,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:35:46,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:35:46,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:35:46,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:35:46,772.772 INFO    ] time= 27/06/2026 00:35:46
[2026-06-27 00:35:46,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:35:46,802.802 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:35:46,868.868 INFO    ] No existing commands found in stream
[2026-06-27 00:35:51,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:35:51,880.880 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-27 00:35:52,543.543 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 00:35:52,545.545 INFO    ] Checking for system updates...
[2026-06-27 00:35:52,566.566 INFO    ] 200
[2026-06-27 00:35:52,568.568 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:35:52,600.600 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:35:52,602.602 INFO    ] No update needed
[2026-06-27 00:35:52,603.603 INFO    ] Checking for camera pi updates...
[2026-06-27 00:35:52,623.623 INFO    ] 200
[2026-06-27 00:35:52,624.624 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:35:52,649.649 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:35:52,688.688 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:35:52,689.689 INFO    ] No camera update needed
[2026-06-27 00:35:52,690.690 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:35:52,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:35:52,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:35:52,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:35:54,737.737 INFO    ] ================================================
[2026-06-27 00:35:54,752.752 INFO    ] Launching Daemon at Sat Jun 27 00:35:54 IST 2026
[2026-06-27 00:35:54,762.762 INFO    ] ================================================
[2026-06-27 00:35:55,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:35:55
[2026-06-27 00:35:55,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:35:55,581.581 INFO    ] Initializing speech engine...
[2026-06-27 00:35:55,583.583 INFO    ] 2026-06-27 00:35:55
[2026-06-27 00:35:55,819.819 INFO    ] 2026-06-27 00:35:55
[2026-06-27 00:35:55,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:35:56,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:35:56,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:35:56,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:35:56,307.307 INFO    ] time= 27/06/2026 00:35:56
[2026-06-27 00:35:56,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:35:56,315.315 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:35:56,406.406 INFO    ] No existing commands found in stream
[2026-06-27 00:36:01,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:36:01,429.429 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-27 00:36:04,437.437 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 00:36:04,439.439 INFO    ] Checking for system updates...
[2026-06-27 00:36:04,459.459 INFO    ] 200
[2026-06-27 00:36:04,461.461 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:36:04,491.491 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:36:04,492.492 INFO    ] No update needed
[2026-06-27 00:36:04,494.494 INFO    ] Checking for camera pi updates...
[2026-06-27 00:36:04,514.514 INFO    ] 200
[2026-06-27 00:36:04,516.516 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:36:04,539.539 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:36:04,579.579 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:36:04,581.581 INFO    ] No camera update needed
[2026-06-27 00:36:04,582.582 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:36:04,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:36:04,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:36:04,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:36:06,632.632 INFO    ] ================================================
[2026-06-27 00:36:06,647.647 INFO    ] Launching Daemon at Sat Jun 27 00:36:06 IST 2026
[2026-06-27 00:36:06,658.658 INFO    ] ================================================
[2026-06-27 00:36:07,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:36:07
[2026-06-27 00:36:07,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:36:07,457.457 INFO    ] Initializing speech engine...
[2026-06-27 00:36:07,465.465 INFO    ] 2026-06-27 00:36:07
[2026-06-27 00:36:07,690.690 INFO    ] 2026-06-27 00:36:07
[2026-06-27 00:36:07,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:36:07,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:36:07,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:36:08,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:36:08,101.101 INFO    ] time= 27/06/2026 00:36:08
[2026-06-27 00:36:08,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:36:08,167.167 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:36:08,242.242 INFO    ] No existing commands found in stream
[2026-06-27 00:36:13,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:36:13,255.255 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-27 00:36:16,870.870 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:36:16,872.872 INFO    ] Checking for system updates...
[2026-06-27 00:36:16,893.893 INFO    ] 200
[2026-06-27 00:36:16,895.895 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:36:16,928.928 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:36:16,930.930 INFO    ] No update needed
[2026-06-27 00:36:16,931.931 INFO    ] Checking for camera pi updates...
[2026-06-27 00:36:16,954.954 INFO    ] 200
[2026-06-27 00:36:16,956.956 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:36:16,983.983 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:36:17,028.028 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:36:17,029.029 INFO    ] No camera update needed
[2026-06-27 00:36:17,031.031 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:36:17,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:36:17,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:36:17,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:36:19,078.078 INFO    ] ================================================
[2026-06-27 00:36:19,093.093 INFO    ] Launching Daemon at Sat Jun 27 00:36:19 IST 2026
[2026-06-27 00:36:19,104.104 INFO    ] ================================================
[2026-06-27 00:36:19,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:36:19
[2026-06-27 00:36:19,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:36:19,913.913 INFO    ] Initializing speech engine...
[2026-06-27 00:36:19,918.918 INFO    ] 2026-06-27 00:36:19
[2026-06-27 00:36:20,191.191 INFO    ] 2026-06-27 00:36:20
[2026-06-27 00:36:20,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:36:20,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:36:20,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:36:20,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:36:20,636.636 INFO    ] time= 27/06/2026 00:36:20
[2026-06-27 00:36:20,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:36:20,643.643 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:36:20,711.711 INFO    ] No existing commands found in stream
[2026-06-27 00:36:25,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:36:25,729.729 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-27 00:36:28,449.449 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 00:36:28,451.451 INFO    ] Checking for system updates...
[2026-06-27 00:36:28,473.473 INFO    ] 200
[2026-06-27 00:36:28,474.474 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:36:28,505.505 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:36:28,506.506 INFO    ] No update needed
[2026-06-27 00:36:28,508.508 INFO    ] Checking for camera pi updates...
[2026-06-27 00:36:28,527.527 INFO    ] 200
[2026-06-27 00:36:28,529.529 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:36:28,552.552 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:36:28,599.599 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:36:28,600.600 INFO    ] No camera update needed
[2026-06-27 00:36:28,601.601 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:36:28,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:36:28,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:36:28,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:36:30,641.641 INFO    ] ================================================
[2026-06-27 00:36:30,656.656 INFO    ] Launching Daemon at Sat Jun 27 00:36:30 IST 2026
[2026-06-27 00:36:30,667.667 INFO    ] ================================================
[2026-06-27 00:36:31,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:36:31
[2026-06-27 00:36:31,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:36:31,467.467 INFO    ] Initializing speech engine...
[2026-06-27 00:36:31,475.475 INFO    ] 2026-06-27 00:36:31
[2026-06-27 00:36:31,702.702 INFO    ] 2026-06-27 00:36:31
[2026-06-27 00:36:31,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:36:31,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:36:31,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:36:32,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:36:32,145.145 INFO    ] time= 27/06/2026 00:36:32
[2026-06-27 00:36:32,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:36:32,185.185 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:36:32,250.250 INFO    ] No existing commands found in stream
[2026-06-27 00:36:37,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:36:37,264.264 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-27 00:36:40,809.809 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:36:40,810.810 INFO    ] Checking for system updates...
[2026-06-27 00:36:40,831.831 INFO    ] 200
[2026-06-27 00:36:40,833.833 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:36:40,865.865 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:36:40,866.866 INFO    ] No update needed
[2026-06-27 00:36:40,868.868 INFO    ] Checking for camera pi updates...
[2026-06-27 00:36:40,887.887 INFO    ] 200
[2026-06-27 00:36:40,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:36:40,913.913 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:36:40,952.952 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:36:40,953.953 INFO    ] No camera update needed
[2026-06-27 00:36:40,955.955 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:36:40,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:36:40,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:36:40,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:36:43,000.000 INFO    ] ================================================
[2026-06-27 00:36:43,015.015 INFO    ] Launching Daemon at Sat Jun 27 00:36:43 IST 2026
[2026-06-27 00:36:43,025.025 INFO    ] ================================================
[2026-06-27 00:36:43,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:36:43
[2026-06-27 00:36:43,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:36:43,861.861 INFO    ] Initializing speech engine...
[2026-06-27 00:36:43,867.867 INFO    ] 2026-06-27 00:36:43
[2026-06-27 00:36:44,076.076 INFO    ] 2026-06-27 00:36:44
[2026-06-27 00:36:44,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:36:44,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:36:44,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:36:44,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:36:44,503.503 INFO    ] time= 27/06/2026 00:36:44
[2026-06-27 00:36:44,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:36:44,531.531 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:36:44,599.599 INFO    ] No existing commands found in stream
[2026-06-27 00:36:49,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:36:49,611.611 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-27 00:36:49,977.977 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 00:36:49,979.979 INFO    ] Checking for system updates...
[2026-06-27 00:36:50,000.000 INFO    ] 200
[2026-06-27 00:36:50,001.001 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:36:50,032.032 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:36:50,034.034 INFO    ] No update needed
[2026-06-27 00:36:50,036.036 INFO    ] Checking for camera pi updates...
[2026-06-27 00:36:50,056.056 INFO    ] 200
[2026-06-27 00:36:50,057.057 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:36:50,081.081 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:36:50,232.232 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:36:50,233.233 INFO    ] No camera update needed
[2026-06-27 00:36:50,235.235 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:36:50,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:36:50,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:36:50,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:36:52,280.280 INFO    ] ================================================
[2026-06-27 00:36:52,295.295 INFO    ] Launching Daemon at Sat Jun 27 00:36:52 IST 2026
[2026-06-27 00:36:52,306.306 INFO    ] ================================================
[2026-06-27 00:36:52,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:36:52
[2026-06-27 00:36:52,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:36:53,092.092 INFO    ] Initializing speech engine...
[2026-06-27 00:36:53,101.101 INFO    ] 2026-06-27 00:36:53
[2026-06-27 00:36:53,299.299 INFO    ] 2026-06-27 00:36:53
[2026-06-27 00:36:53,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:36:53,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:36:53,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:36:53,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:36:53,690.690 INFO    ] time= 27/06/2026 00:36:53
[2026-06-27 00:36:53,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:36:53,785.785 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:36:53,859.859 INFO    ] No existing commands found in stream
[2026-06-27 00:36:58,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:36:58,871.871 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-27 00:37:02,182.182 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 00:37:02,184.184 INFO    ] Checking for system updates...
[2026-06-27 00:37:02,209.209 INFO    ] 200
[2026-06-27 00:37:02,211.211 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:37:02,255.255 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:37:02,257.257 INFO    ] No update needed
[2026-06-27 00:37:02,259.259 INFO    ] Checking for camera pi updates...
[2026-06-27 00:37:02,286.286 INFO    ] 200
[2026-06-27 00:37:02,288.288 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:37:02,319.319 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:37:02,348.348 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:37:02,350.350 INFO    ] No camera update needed
[2026-06-27 00:37:02,352.352 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:37:02,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:37:02,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:37:02,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:37:04,400.400 INFO    ] ================================================
[2026-06-27 00:37:04,416.416 INFO    ] Launching Daemon at Sat Jun 27 00:37:04 IST 2026
[2026-06-27 00:37:04,427.427 INFO    ] ================================================
[2026-06-27 00:37:04,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:37:04
[2026-06-27 00:37:05,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:37:05,258.258 INFO    ] Initializing speech engine...
[2026-06-27 00:37:05,263.263 INFO    ] 2026-06-27 00:37:05
[2026-06-27 00:37:05,468.468 INFO    ] 2026-06-27 00:37:05
[2026-06-27 00:37:05,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:37:05,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:37:05,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:37:05,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:37:05,871.871 INFO    ] time= 27/06/2026 00:37:05
[2026-06-27 00:37:05,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:37:05,907.907 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:37:05,997.997 INFO    ] No existing commands found in stream
[2026-06-27 00:37:11,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:37:11,010.010 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-27 00:37:13,316.316 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 00:37:13,318.318 INFO    ] Checking for system updates...
[2026-06-27 00:37:13,339.339 INFO    ] 200
[2026-06-27 00:37:13,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:37:13,373.373 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:37:13,375.375 INFO    ] No update needed
[2026-06-27 00:37:13,376.376 INFO    ] Checking for camera pi updates...
[2026-06-27 00:37:13,395.395 INFO    ] 200
[2026-06-27 00:37:13,396.396 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:37:13,420.420 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:37:13,464.464 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:37:13,465.465 INFO    ] No camera update needed
[2026-06-27 00:37:13,466.466 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:37:13,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:37:13,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:37:13,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:37:15,513.513 INFO    ] ================================================
[2026-06-27 00:37:15,529.529 INFO    ] Launching Daemon at Sat Jun 27 00:37:15 IST 2026
[2026-06-27 00:37:15,540.540 INFO    ] ================================================
[2026-06-27 00:37:15,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:37:15
[2026-06-27 00:37:16,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:37:16,358.358 INFO    ] Initializing speech engine...
[2026-06-27 00:37:16,370.370 INFO    ] 2026-06-27 00:37:16
[2026-06-27 00:37:16,636.636 INFO    ] 2026-06-27 00:37:16
[2026-06-27 00:37:16,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:37:16,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:37:16,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:37:17,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:37:17,086.086 INFO    ] time= 27/06/2026 00:37:17
[2026-06-27 00:37:17,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:37:17,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:37:17,188.188 INFO    ] No existing commands found in stream
[2026-06-27 00:37:22,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:37:22,201.201 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-27 00:37:24,878.878 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 00:37:24,880.880 INFO    ] Checking for system updates...
[2026-06-27 00:37:24,900.900 INFO    ] 200
[2026-06-27 00:37:24,902.902 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:37:24,932.932 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:37:24,933.933 INFO    ] No update needed
[2026-06-27 00:37:24,935.935 INFO    ] Checking for camera pi updates...
[2026-06-27 00:37:24,954.954 INFO    ] 200
[2026-06-27 00:37:24,956.956 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:37:24,979.979 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:37:25,007.007 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:37:25,008.008 INFO    ] No camera update needed
[2026-06-27 00:37:25,009.009 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:37:25,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:37:25,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:37:25,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:37:27,057.057 INFO    ] ================================================
[2026-06-27 00:37:27,072.072 INFO    ] Launching Daemon at Sat Jun 27 00:37:27 IST 2026
[2026-06-27 00:37:27,083.083 INFO    ] ================================================
[2026-06-27 00:37:27,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:37:27
[2026-06-27 00:37:27,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:37:27,894.894 INFO    ] Initializing speech engine...
[2026-06-27 00:37:27,906.906 INFO    ] 2026-06-27 00:37:27
[2026-06-27 00:37:28,124.124 INFO    ] 2026-06-27 00:37:28
[2026-06-27 00:37:28,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:37:28,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:37:28,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:37:28,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:37:28,545.545 INFO    ] time= 27/06/2026 00:37:28
[2026-06-27 00:37:28,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:37:28,601.601 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:37:28,703.703 INFO    ] No existing commands found in stream
[2026-06-27 00:37:33,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:37:33,715.715 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-27 00:37:35,577.577 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 00:37:35,578.578 INFO    ] Checking for system updates...
[2026-06-27 00:37:35,600.600 INFO    ] 200
[2026-06-27 00:37:35,601.601 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:37:35,646.646 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:37:35,648.648 INFO    ] No update needed
[2026-06-27 00:37:35,650.650 INFO    ] Checking for camera pi updates...
[2026-06-27 00:37:35,669.669 INFO    ] 200
[2026-06-27 00:37:35,670.670 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:37:35,694.694 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:37:35,747.747 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:37:35,749.749 INFO    ] No camera update needed
[2026-06-27 00:37:35,750.750 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:37:35,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:37:35,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:37:35,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:37:37,795.795 INFO    ] ================================================
[2026-06-27 00:37:37,810.810 INFO    ] Launching Daemon at Sat Jun 27 00:37:37 IST 2026
[2026-06-27 00:37:37,820.820 INFO    ] ================================================
[2026-06-27 00:37:38,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:37:38
[2026-06-27 00:37:38,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:37:38,608.608 INFO    ] Initializing speech engine...
[2026-06-27 00:37:38,622.622 INFO    ] 2026-06-27 00:37:38
[2026-06-27 00:37:38,830.830 INFO    ] 2026-06-27 00:37:38
[2026-06-27 00:37:38,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:37:39,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:37:39,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:37:39,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:37:39,246.246 INFO    ] time= 27/06/2026 00:37:39
[2026-06-27 00:37:39,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:37:39,281.281 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:37:39,347.347 INFO    ] No existing commands found in stream
[2026-06-27 00:37:44,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:37:44,358.358 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-27 00:37:48,544.544 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 00:37:48,545.545 INFO    ] Checking for system updates...
[2026-06-27 00:37:48,567.567 INFO    ] 200
[2026-06-27 00:37:48,569.569 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:37:48,600.600 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:37:48,601.601 INFO    ] No update needed
[2026-06-27 00:37:48,602.602 INFO    ] Checking for camera pi updates...
[2026-06-27 00:37:48,623.623 INFO    ] 200
[2026-06-27 00:37:48,625.625 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:37:48,648.648 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:37:48,688.688 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:37:48,689.689 INFO    ] No camera update needed
[2026-06-27 00:37:48,691.691 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:37:48,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:37:48,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:37:48,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:37:50,735.735 INFO    ] ================================================
[2026-06-27 00:37:50,754.754 INFO    ] Launching Daemon at Sat Jun 27 00:37:50 IST 2026
[2026-06-27 00:37:50,766.766 INFO    ] ================================================
[2026-06-27 00:37:51,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:37:51
[2026-06-27 00:37:51,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:37:51,555.555 INFO    ] Initializing speech engine...
[2026-06-27 00:37:51,568.568 INFO    ] 2026-06-27 00:37:51
[2026-06-27 00:37:51,776.776 INFO    ] 2026-06-27 00:37:51
[2026-06-27 00:37:51,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:37:51,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:37:51,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:37:52,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:37:52,201.201 INFO    ] time= 27/06/2026 00:37:52
[2026-06-27 00:37:52,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:37:52,231.231 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:37:52,296.296 INFO    ] No existing commands found in stream
[2026-06-27 00:37:57,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:37:57,309.309 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-27 00:37:58,676.676 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 00:37:58,678.678 INFO    ] Checking for system updates...
[2026-06-27 00:37:58,699.699 INFO    ] 200
[2026-06-27 00:37:58,700.700 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:37:58,731.731 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:37:58,732.732 INFO    ] No update needed
[2026-06-27 00:37:58,733.733 INFO    ] Checking for camera pi updates...
[2026-06-27 00:37:58,753.753 INFO    ] 200
[2026-06-27 00:37:58,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:37:58,780.780 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:37:58,836.836 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:37:58,837.837 INFO    ] No camera update needed
[2026-06-27 00:37:58,839.839 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:37:58,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:37:58,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:37:58,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:38:00,885.885 INFO    ] ================================================
[2026-06-27 00:38:00,900.900 INFO    ] Launching Daemon at Sat Jun 27 00:38:00 IST 2026
[2026-06-27 00:38:00,917.917 INFO    ] ================================================
[2026-06-27 00:38:01,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:38:01
[2026-06-27 00:38:01,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:38:01,704.704 INFO    ] Initializing speech engine...
[2026-06-27 00:38:01,706.706 INFO    ] 2026-06-27 00:38:01
[2026-06-27 00:38:01,895.895 INFO    ] 2026-06-27 00:38:01
[2026-06-27 00:38:01,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:38:02,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:38:02,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:38:02,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:38:02,190.190 INFO    ] time= 27/06/2026 00:38:02
[2026-06-27 00:38:02,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:38:02,264.264 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:38:02,413.413 INFO    ] No existing commands found in stream
[2026-06-27 00:38:07,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:38:07,452.452 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-27 00:38:10,144.144 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 00:38:10,145.145 INFO    ] Checking for system updates...
[2026-06-27 00:38:10,166.166 INFO    ] 200
[2026-06-27 00:38:10,167.167 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:38:10,200.200 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:38:10,202.202 INFO    ] No update needed
[2026-06-27 00:38:10,203.203 INFO    ] Checking for camera pi updates...
[2026-06-27 00:38:10,223.223 INFO    ] 200
[2026-06-27 00:38:10,225.225 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:38:10,248.248 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:38:10,297.297 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:38:10,299.299 INFO    ] No camera update needed
[2026-06-27 00:38:10,300.300 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:38:10,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:38:10,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:38:10,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:38:12,346.346 INFO    ] ================================================
[2026-06-27 00:38:12,361.361 INFO    ] Launching Daemon at Sat Jun 27 00:38:12 IST 2026
[2026-06-27 00:38:12,372.372 INFO    ] ================================================
[2026-06-27 00:38:12,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:38:12
[2026-06-27 00:38:13,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:38:13,247.247 INFO    ] Initializing speech engine...
[2026-06-27 00:38:13,253.253 INFO    ] 2026-06-27 00:38:13
[2026-06-27 00:38:13,461.461 INFO    ] 2026-06-27 00:38:13
[2026-06-27 00:38:13,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:38:13,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:38:13,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:38:13,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:38:13,885.885 INFO    ] time= 27/06/2026 00:38:13
[2026-06-27 00:38:13,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:38:13,914.914 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:38:13,981.981 INFO    ] No existing commands found in stream
[2026-06-27 00:38:18,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:38:18,999.999 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-27 00:38:19,956.956 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 00:38:19,958.958 INFO    ] Checking for system updates...
[2026-06-27 00:38:19,979.979 INFO    ] 200
[2026-06-27 00:38:19,980.980 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:38:20,011.011 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:38:20,012.012 INFO    ] No update needed
[2026-06-27 00:38:20,013.013 INFO    ] Checking for camera pi updates...
[2026-06-27 00:38:20,033.033 INFO    ] 200
[2026-06-27 00:38:20,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:38:20,058.058 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:38:20,110.110 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:38:20,111.111 INFO    ] No camera update needed
[2026-06-27 00:38:20,112.112 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:38:20,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:38:20,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:38:20,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:38:22,159.159 INFO    ] ================================================
[2026-06-27 00:38:22,174.174 INFO    ] Launching Daemon at Sat Jun 27 00:38:22 IST 2026
[2026-06-27 00:38:22,185.185 INFO    ] ================================================
[2026-06-27 00:38:22,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:38:22
[2026-06-27 00:38:22,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:38:22,988.988 INFO    ] Initializing speech engine...
[2026-06-27 00:38:22,993.993 INFO    ] 2026-06-27 00:38:22
[2026-06-27 00:38:23,197.197 INFO    ] 2026-06-27 00:38:23
[2026-06-27 00:38:23,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:38:23,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:38:23,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:38:23,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:38:23,594.594 INFO    ] time= 27/06/2026 00:38:23
[2026-06-27 00:38:23,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:38:23,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:38:23,709.709 INFO    ] No existing commands found in stream
[2026-06-27 00:38:28,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:38:28,726.726 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-27 00:38:30,693.693 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 00:38:30,694.694 INFO    ] Checking for system updates...
[2026-06-27 00:38:30,715.715 INFO    ] 200
[2026-06-27 00:38:30,716.716 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:38:30,749.749 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:38:30,750.750 INFO    ] No update needed
[2026-06-27 00:38:30,752.752 INFO    ] Checking for camera pi updates...
[2026-06-27 00:38:30,771.771 INFO    ] 200
[2026-06-27 00:38:30,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:38:30,797.797 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:38:30,845.845 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:38:30,846.846 INFO    ] No camera update needed
[2026-06-27 00:38:30,848.848 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:38:30,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:38:30,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:38:30,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:38:32,895.895 INFO    ] ================================================
[2026-06-27 00:38:32,910.910 INFO    ] Launching Daemon at Sat Jun 27 00:38:32 IST 2026
[2026-06-27 00:38:32,921.921 INFO    ] ================================================
[2026-06-27 00:38:33,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:38:33
[2026-06-27 00:38:33,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:38:33,704.704 INFO    ] Initializing speech engine...
[2026-06-27 00:38:33,709.709 INFO    ] 2026-06-27 00:38:33
[2026-06-27 00:38:33,913.913 INFO    ] 2026-06-27 00:38:33
[2026-06-27 00:38:33,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:38:34,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:38:34,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:38:34,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:38:34,330.330 INFO    ] time= 27/06/2026 00:38:34
[2026-06-27 00:38:34,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:38:34,360.360 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:38:34,427.427 INFO    ] No existing commands found in stream
[2026-06-27 00:38:39,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:38:39,444.444 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-27 00:38:40,543.543 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 00:38:40,544.544 INFO    ] Checking for system updates...
[2026-06-27 00:38:40,566.566 INFO    ] 200
[2026-06-27 00:38:40,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:38:40,601.601 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:38:40,602.602 INFO    ] No update needed
[2026-06-27 00:38:40,603.603 INFO    ] Checking for camera pi updates...
[2026-06-27 00:38:40,623.623 INFO    ] 200
[2026-06-27 00:38:40,624.624 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:38:40,649.649 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:38:40,699.699 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:38:40,700.700 INFO    ] No camera update needed
[2026-06-27 00:38:40,701.701 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:38:40,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:38:40,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:38:40,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:38:42,748.748 INFO    ] ================================================
[2026-06-27 00:38:42,764.764 INFO    ] Launching Daemon at Sat Jun 27 00:38:42 IST 2026
[2026-06-27 00:38:42,775.775 INFO    ] ================================================
[2026-06-27 00:38:43,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:38:43
[2026-06-27 00:38:43,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:38:43,623.623 INFO    ] Initializing speech engine...
[2026-06-27 00:38:43,627.627 INFO    ] 2026-06-27 00:38:43
[2026-06-27 00:38:43,833.833 INFO    ] 2026-06-27 00:38:43
[2026-06-27 00:38:43,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:38:44,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:38:44,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:38:44,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:38:44,249.249 INFO    ] time= 27/06/2026 00:38:44
[2026-06-27 00:38:44,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:38:44,281.281 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:38:44,372.372 INFO    ] No existing commands found in stream
[2026-06-27 00:38:49,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:38:49,385.385 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-27 00:38:53,504.504 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:38:53,506.506 INFO    ] Checking for system updates...
[2026-06-27 00:38:53,527.527 INFO    ] 200
[2026-06-27 00:38:53,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:38:53,560.560 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:38:53,561.561 INFO    ] No update needed
[2026-06-27 00:38:53,562.562 INFO    ] Checking for camera pi updates...
[2026-06-27 00:38:53,583.583 INFO    ] 200
[2026-06-27 00:38:53,584.584 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:38:53,608.608 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:38:53,740.740 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:38:53,741.741 INFO    ] No camera update needed
[2026-06-27 00:38:53,743.743 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:38:53,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:38:53,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:38:53,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:38:55,790.790 INFO    ] ================================================
[2026-06-27 00:38:55,805.805 INFO    ] Launching Daemon at Sat Jun 27 00:38:55 IST 2026
[2026-06-27 00:38:55,816.816 INFO    ] ================================================
[2026-06-27 00:38:56,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:38:56
[2026-06-27 00:38:56,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:38:56,632.632 INFO    ] Initializing speech engine...
[2026-06-27 00:38:56,642.642 INFO    ] 2026-06-27 00:38:56
[2026-06-27 00:38:56,847.847 INFO    ] 2026-06-27 00:38:56
[2026-06-27 00:38:56,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:38:58,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:38:58,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:38:58,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:38:58,334.334 INFO    ] time= 27/06/2026 00:38:58
[2026-06-27 00:38:58,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:38:58,337.337 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:38:58,392.392 INFO    ] No existing commands found in stream
[2026-06-27 00:39:03,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:39:03,404.404 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-27 00:39:07,493.493 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:39:07,495.495 INFO    ] Checking for system updates...
[2026-06-27 00:39:07,517.517 INFO    ] 200
[2026-06-27 00:39:07,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:39:07,553.553 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:39:07,554.554 INFO    ] No update needed
[2026-06-27 00:39:07,556.556 INFO    ] Checking for camera pi updates...
[2026-06-27 00:39:07,577.577 INFO    ] 200
[2026-06-27 00:39:07,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:39:07,604.604 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:39:07,657.657 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:39:07,658.658 INFO    ] No camera update needed
[2026-06-27 00:39:07,660.660 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:39:07,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:39:07,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:39:07,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:39:09,708.708 INFO    ] ================================================
[2026-06-27 00:39:09,723.723 INFO    ] Launching Daemon at Sat Jun 27 00:39:09 IST 2026
[2026-06-27 00:39:09,734.734 INFO    ] ================================================
[2026-06-27 00:39:10,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:39:10
[2026-06-27 00:39:10,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:39:10,536.536 INFO    ] Initializing speech engine...
[2026-06-27 00:39:10,541.541 INFO    ] 2026-06-27 00:39:10
[2026-06-27 00:39:10,746.746 INFO    ] 2026-06-27 00:39:10
[2026-06-27 00:39:10,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:39:10,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:39:10,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:39:11,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:39:11,162.162 INFO    ] time= 27/06/2026 00:39:11
[2026-06-27 00:39:11,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:39:11,195.195 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:39:11,262.262 INFO    ] No existing commands found in stream
[2026-06-27 00:39:16,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:39:16,275.275 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-27 00:39:19,724.724 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 00:39:19,725.725 INFO    ] Checking for system updates...
[2026-06-27 00:39:19,748.748 INFO    ] 200
[2026-06-27 00:39:19,749.749 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:39:19,783.783 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:39:19,784.784 INFO    ] No update needed
[2026-06-27 00:39:19,786.786 INFO    ] Checking for camera pi updates...
[2026-06-27 00:39:19,806.806 INFO    ] 200
[2026-06-27 00:39:19,807.807 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:39:19,831.831 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:39:19,880.880 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:39:19,881.881 INFO    ] No camera update needed
[2026-06-27 00:39:19,883.883 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:39:19,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:39:19,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:39:19,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:39:21,935.935 INFO    ] ================================================
[2026-06-27 00:39:21,950.950 INFO    ] Launching Daemon at Sat Jun 27 00:39:21 IST 2026
[2026-06-27 00:39:21,961.961 INFO    ] ================================================
[2026-06-27 00:39:22,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:39:22
[2026-06-27 00:39:22,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:39:22,765.765 INFO    ] Initializing speech engine...
[2026-06-27 00:39:22,774.774 INFO    ] 2026-06-27 00:39:22
[2026-06-27 00:39:22,981.981 INFO    ] 2026-06-27 00:39:22
[2026-06-27 00:39:23,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:39:23,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:39:23,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:39:23,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:39:23,399.399 INFO    ] time= 27/06/2026 00:39:23
[2026-06-27 00:39:23,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:39:23,429.429 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:39:23,494.494 INFO    ] No existing commands found in stream
[2026-06-27 00:39:28,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:39:28,508.508 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-27 00:39:29,241.241 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 00:39:29,244.244 INFO    ] Checking for system updates...
[2026-06-27 00:39:29,280.280 INFO    ] 200
[2026-06-27 00:39:29,283.283 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:39:29,327.327 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:39:29,329.329 INFO    ] No update needed
[2026-06-27 00:39:29,330.330 INFO    ] Checking for camera pi updates...
[2026-06-27 00:39:29,351.351 INFO    ] 200
[2026-06-27 00:39:29,352.352 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:39:29,376.376 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:39:29,417.417 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:39:29,419.419 INFO    ] No camera update needed
[2026-06-27 00:39:29,420.420 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:39:29,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:39:29,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:39:29,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:39:31,461.461 INFO    ] ================================================
[2026-06-27 00:39:31,470.470 INFO    ] Launching Daemon at Sat Jun 27 00:39:31 IST 2026
[2026-06-27 00:39:31,477.477 INFO    ] ================================================
[2026-06-27 00:39:31,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:39:31
[2026-06-27 00:39:32,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:39:32,353.353 INFO    ] Initializing speech engine...
[2026-06-27 00:39:32,358.358 INFO    ] 2026-06-27 00:39:32
[2026-06-27 00:39:32,569.569 INFO    ] 2026-06-27 00:39:32
[2026-06-27 00:39:32,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:39:32,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:39:32,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:39:32,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:39:32,996.996 INFO    ] time= 27/06/2026 00:39:32
[2026-06-27 00:39:33,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:39:33,026.026 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:39:33,093.093 INFO    ] No existing commands found in stream
[2026-06-27 00:39:38,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:39:38,106.106 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-27 00:39:40,144.144 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:39:40,146.146 INFO    ] Checking for system updates...
[2026-06-27 00:39:40,167.167 INFO    ] 200
[2026-06-27 00:39:40,169.169 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:39:40,199.199 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:39:40,201.201 INFO    ] No update needed
[2026-06-27 00:39:40,202.202 INFO    ] Checking for camera pi updates...
[2026-06-27 00:39:40,223.223 INFO    ] 200
[2026-06-27 00:39:40,225.225 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:39:40,251.251 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:39:40,292.292 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:39:40,294.294 INFO    ] No camera update needed
[2026-06-27 00:39:40,296.296 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:39:40,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:39:40,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:39:40,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:39:42,342.342 INFO    ] ================================================
[2026-06-27 00:39:42,357.357 INFO    ] Launching Daemon at Sat Jun 27 00:39:42 IST 2026
[2026-06-27 00:39:42,368.368 INFO    ] ================================================
[2026-06-27 00:39:42,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:39:42
[2026-06-27 00:39:43,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:39:43,196.196 INFO    ] Initializing speech engine...
[2026-06-27 00:39:43,204.204 INFO    ] 2026-06-27 00:39:43
[2026-06-27 00:39:43,412.412 INFO    ] 2026-06-27 00:39:43
[2026-06-27 00:39:43,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:39:43,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:39:43,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:39:43,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:39:43,828.828 INFO    ] time= 27/06/2026 00:39:43
[2026-06-27 00:39:43,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:39:43,862.862 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:39:43,952.952 INFO    ] No existing commands found in stream
[2026-06-27 00:39:48,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:39:48,969.969 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-27 00:39:50,577.577 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 00:39:50,578.578 INFO    ] Checking for system updates...
[2026-06-27 00:39:50,600.600 INFO    ] 200
[2026-06-27 00:39:50,601.601 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:39:50,636.636 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:39:50,638.638 INFO    ] No update needed
[2026-06-27 00:39:50,639.639 INFO    ] Checking for camera pi updates...
[2026-06-27 00:39:50,658.658 INFO    ] 200
[2026-06-27 00:39:50,659.659 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:39:50,683.683 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:39:50,730.730 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:39:50,731.731 INFO    ] No camera update needed
[2026-06-27 00:39:50,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:39:50,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:39:50,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:39:50,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:39:52,779.779 INFO    ] ================================================
[2026-06-27 00:39:52,794.794 INFO    ] Launching Daemon at Sat Jun 27 00:39:52 IST 2026
[2026-06-27 00:39:52,805.805 INFO    ] ================================================
[2026-06-27 00:39:53,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:39:53
[2026-06-27 00:39:53,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:39:53,619.619 INFO    ] Initializing speech engine...
[2026-06-27 00:39:53,624.624 INFO    ] 2026-06-27 00:39:53
[2026-06-27 00:39:53,830.830 INFO    ] 2026-06-27 00:39:53
[2026-06-27 00:39:53,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:39:54,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:39:54,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:39:54,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:39:54,239.239 INFO    ] time= 27/06/2026 00:39:54
[2026-06-27 00:39:54,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:39:54,278.278 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:39:54,368.368 INFO    ] No existing commands found in stream
[2026-06-27 00:39:59,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:39:59,385.385 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-27 00:40:00,393.393 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 00:40:00,395.395 INFO    ] Checking for system updates...
[2026-06-27 00:40:00,416.416 INFO    ] 200
[2026-06-27 00:40:00,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:40:00,450.450 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:40:00,452.452 INFO    ] No update needed
[2026-06-27 00:40:00,453.453 INFO    ] Checking for camera pi updates...
[2026-06-27 00:40:00,473.473 INFO    ] 200
[2026-06-27 00:40:00,474.474 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:40:00,500.500 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:40:00,552.552 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:40:00,553.553 INFO    ] No camera update needed
[2026-06-27 00:40:00,554.554 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:40:00,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:40:00,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:40:00,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:40:02,611.611 INFO    ] ================================================
[2026-06-27 00:40:02,619.619 INFO    ] Launching Daemon at Sat Jun 27 00:40:02 IST 2026
[2026-06-27 00:40:02,625.625 INFO    ] ================================================
[2026-06-27 00:40:02,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:40:02
[2026-06-27 00:40:03,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:40:03,432.432 INFO    ] Initializing speech engine...
[2026-06-27 00:40:03,435.435 INFO    ] 2026-06-27 00:40:03
[2026-06-27 00:40:03,636.636 INFO    ] 2026-06-27 00:40:03
[2026-06-27 00:40:03,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:40:03,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:40:03,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:40:04,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:40:04,101.101 INFO    ] time= 27/06/2026 00:40:04
[2026-06-27 00:40:04,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:40:04,141.141 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:40:04,215.215 INFO    ] No existing commands found in stream
[2026-06-27 00:40:09,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:40:09,229.229 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-27 00:40:12,066.066 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 00:40:12,067.067 INFO    ] Checking for system updates...
[2026-06-27 00:40:12,088.088 INFO    ] 200
[2026-06-27 00:40:12,089.089 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:40:12,121.121 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:40:12,122.122 INFO    ] No update needed
[2026-06-27 00:40:12,124.124 INFO    ] Checking for camera pi updates...
[2026-06-27 00:40:12,143.143 INFO    ] 200
[2026-06-27 00:40:12,145.145 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:40:12,172.172 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:40:12,199.199 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:40:12,201.201 INFO    ] No camera update needed
[2026-06-27 00:40:12,202.202 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:40:12,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:40:12,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:40:12,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:40:14,252.252 INFO    ] ================================================
[2026-06-27 00:40:14,267.267 INFO    ] Launching Daemon at Sat Jun 27 00:40:14 IST 2026
[2026-06-27 00:40:14,278.278 INFO    ] ================================================
[2026-06-27 00:40:14,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:40:14
[2026-06-27 00:40:14,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:40:15,134.134 INFO    ] Initializing speech engine...
[2026-06-27 00:40:15,140.140 INFO    ] 2026-06-27 00:40:15
[2026-06-27 00:40:15,349.349 INFO    ] 2026-06-27 00:40:15
[2026-06-27 00:40:15,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:40:15,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:40:15,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:40:15,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:40:15,754.754 INFO    ] time= 27/06/2026 00:40:15
[2026-06-27 00:40:15,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:40:15,803.803 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:40:15,871.871 INFO    ] No existing commands found in stream
[2026-06-27 00:40:20,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:40:20,899.899 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-27 00:40:21,876.876 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 00:40:21,878.878 INFO    ] Checking for system updates...
[2026-06-27 00:40:21,900.900 INFO    ] 200
[2026-06-27 00:40:21,901.901 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:40:21,937.937 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:40:21,938.938 INFO    ] No update needed
[2026-06-27 00:40:21,939.939 INFO    ] Checking for camera pi updates...
[2026-06-27 00:40:21,959.959 INFO    ] 200
[2026-06-27 00:40:21,960.960 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:40:21,985.985 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:40:22,037.037 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:40:22,038.038 INFO    ] No camera update needed
[2026-06-27 00:40:22,039.039 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:40:22,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:40:22,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:40:22,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:40:24,085.085 INFO    ] ================================================
[2026-06-27 00:40:24,101.101 INFO    ] Launching Daemon at Sat Jun 27 00:40:24 IST 2026
[2026-06-27 00:40:24,111.111 INFO    ] ================================================
[2026-06-27 00:40:24,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:40:24
[2026-06-27 00:40:24,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:40:24,943.943 INFO    ] Initializing speech engine...
[2026-06-27 00:40:24,952.952 INFO    ] 2026-06-27 00:40:24
[2026-06-27 00:40:25,159.159 INFO    ] 2026-06-27 00:40:25
[2026-06-27 00:40:25,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:40:25,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:40:25,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:40:25,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:40:25,583.583 INFO    ] time= 27/06/2026 00:40:25
[2026-06-27 00:40:25,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:40:25,614.614 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:40:25,682.682 INFO    ] No existing commands found in stream
[2026-06-27 00:40:30,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:40:30,695.695 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-27 00:40:34,450.450 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 00:40:34,452.452 INFO    ] Checking for system updates...
[2026-06-27 00:40:34,473.473 INFO    ] 200
[2026-06-27 00:40:34,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:40:34,507.507 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:40:34,509.509 INFO    ] No update needed
[2026-06-27 00:40:34,510.510 INFO    ] Checking for camera pi updates...
[2026-06-27 00:40:34,530.530 INFO    ] 200
[2026-06-27 00:40:34,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:40:34,555.555 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:40:34,586.586 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:40:34,588.588 INFO    ] No camera update needed
[2026-06-27 00:40:34,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:40:34,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:40:34,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:40:34,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:40:36,636.636 INFO    ] ================================================
[2026-06-27 00:40:36,651.651 INFO    ] Launching Daemon at Sat Jun 27 00:40:36 IST 2026
[2026-06-27 00:40:36,662.662 INFO    ] ================================================
[2026-06-27 00:40:37,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:40:37
[2026-06-27 00:40:37,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:40:37,481.481 INFO    ] Initializing speech engine...
[2026-06-27 00:40:37,485.485 INFO    ] 2026-06-27 00:40:37
[2026-06-27 00:40:37,715.715 INFO    ] 2026-06-27 00:40:37
[2026-06-27 00:40:37,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:40:37,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:40:37,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:40:38,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:40:38,104.104 INFO    ] time= 27/06/2026 00:40:38
[2026-06-27 00:40:38,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:40:38,196.196 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:40:38,271.271 INFO    ] No existing commands found in stream
[2026-06-27 00:40:43,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:40:43,285.285 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-27 00:40:46,162.162 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 00:40:46,163.163 INFO    ] Checking for system updates...
[2026-06-27 00:40:46,185.185 INFO    ] 200
[2026-06-27 00:40:46,187.187 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:40:46,217.217 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:40:46,219.219 INFO    ] No update needed
[2026-06-27 00:40:46,220.220 INFO    ] Checking for camera pi updates...
[2026-06-27 00:40:46,243.243 INFO    ] 200
[2026-06-27 00:40:46,245.245 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:40:46,270.270 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:40:46,307.307 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:40:46,308.308 INFO    ] No camera update needed
[2026-06-27 00:40:46,310.310 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:40:46,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:40:46,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:40:46,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:40:48,356.356 INFO    ] ================================================
[2026-06-27 00:40:48,371.371 INFO    ] Launching Daemon at Sat Jun 27 00:40:48 IST 2026
[2026-06-27 00:40:48,382.382 INFO    ] ================================================
[2026-06-27 00:40:48,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:40:48
[2026-06-27 00:40:49,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:40:49,174.174 INFO    ] Initializing speech engine...
[2026-06-27 00:40:49,184.184 INFO    ] 2026-06-27 00:40:49
[2026-06-27 00:40:49,389.389 INFO    ] 2026-06-27 00:40:49
[2026-06-27 00:40:49,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:40:49,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:40:49,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:40:49,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:40:49,788.788 INFO    ] time= 27/06/2026 00:40:49
[2026-06-27 00:40:49,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:40:49,832.832 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:40:49,904.904 INFO    ] No existing commands found in stream
[2026-06-27 00:40:54,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:40:54,916.916 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-27 00:40:58,348.348 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 00:40:58,350.350 INFO    ] Checking for system updates...
[2026-06-27 00:40:58,371.371 INFO    ] 200
[2026-06-27 00:40:58,373.373 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:40:58,403.403 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:40:58,405.405 INFO    ] No update needed
[2026-06-27 00:40:58,406.406 INFO    ] Checking for camera pi updates...
[2026-06-27 00:40:58,425.425 INFO    ] 200
[2026-06-27 00:40:58,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:40:58,450.450 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:40:58,577.577 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:40:58,579.579 INFO    ] No camera update needed
[2026-06-27 00:40:58,580.580 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:40:58,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:40:58,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:40:58,587.587 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:41:00,626.626 INFO    ] ================================================
[2026-06-27 00:41:00,642.642 INFO    ] Launching Daemon at Sat Jun 27 00:41:00 IST 2026
[2026-06-27 00:41:00,652.652 INFO    ] ================================================
[2026-06-27 00:41:01,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:41:01
[2026-06-27 00:41:01,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:41:01,492.492 INFO    ] Initializing speech engine...
[2026-06-27 00:41:01,498.498 INFO    ] 2026-06-27 00:41:01
[2026-06-27 00:41:01,705.705 INFO    ] 2026-06-27 00:41:01
[2026-06-27 00:41:01,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:41:01,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:41:01,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:41:02,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:41:02,414.414 INFO    ] time= 27/06/2026 00:41:02
[2026-06-27 00:41:02,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:41:02,446.446 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:41:02,505.505 INFO    ] No existing commands found in stream
[2026-06-27 00:41:07,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:41:07,519.519 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-27 00:41:09,311.311 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:41:09,312.312 INFO    ] Checking for system updates...
[2026-06-27 00:41:09,334.334 INFO    ] 200
[2026-06-27 00:41:09,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:41:09,367.367 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:41:09,368.368 INFO    ] No update needed
[2026-06-27 00:41:09,369.369 INFO    ] Checking for camera pi updates...
[2026-06-27 00:41:09,390.390 INFO    ] 200
[2026-06-27 00:41:09,391.391 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:41:09,417.417 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:41:09,472.472 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:41:09,473.473 INFO    ] No camera update needed
[2026-06-27 00:41:09,475.475 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:41:09,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:41:09,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:41:09,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:41:11,523.523 INFO    ] ================================================
[2026-06-27 00:41:11,538.538 INFO    ] Launching Daemon at Sat Jun 27 00:41:11 IST 2026
[2026-06-27 00:41:11,549.549 INFO    ] ================================================
[2026-06-27 00:41:11,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:41:11
[2026-06-27 00:41:12,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:41:12,367.367 INFO    ] Initializing speech engine...
[2026-06-27 00:41:12,372.372 INFO    ] 2026-06-27 00:41:12
[2026-06-27 00:41:12,575.575 INFO    ] 2026-06-27 00:41:12
[2026-06-27 00:41:12,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:41:12,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:41:12,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:41:12,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:41:12,997.997 INFO    ] time= 27/06/2026 00:41:12
[2026-06-27 00:41:13,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:41:13,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:41:13,092.092 INFO    ] No existing commands found in stream
[2026-06-27 00:41:18,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:41:18,104.104 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-27 00:41:21,373.373 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:41:21,375.375 INFO    ] Checking for system updates...
[2026-06-27 00:41:21,398.398 INFO    ] 200
[2026-06-27 00:41:21,399.399 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:41:21,430.430 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:41:21,431.431 INFO    ] No update needed
[2026-06-27 00:41:21,433.433 INFO    ] Checking for camera pi updates...
[2026-06-27 00:41:21,455.455 INFO    ] 200
[2026-06-27 00:41:21,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:41:21,480.480 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:41:21,515.515 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:41:21,517.517 INFO    ] No camera update needed
[2026-06-27 00:41:21,518.518 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:41:21,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:41:21,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:41:21,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:41:23,564.564 INFO    ] ================================================
[2026-06-27 00:41:23,579.579 INFO    ] Launching Daemon at Sat Jun 27 00:41:23 IST 2026
[2026-06-27 00:41:23,591.591 INFO    ] ================================================
[2026-06-27 00:41:23,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:41:23
[2026-06-27 00:41:24,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:41:24,395.395 INFO    ] Initializing speech engine...
[2026-06-27 00:41:24,404.404 INFO    ] 2026-06-27 00:41:24
[2026-06-27 00:41:24,619.619 INFO    ] 2026-06-27 00:41:24
[2026-06-27 00:41:24,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:41:24,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:41:24,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:41:24,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:41:25,036.036 INFO    ] time= 27/06/2026 00:41:24
[2026-06-27 00:41:25,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:41:25,076.076 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:41:25,142.142 INFO    ] No existing commands found in stream
[2026-06-27 00:41:30,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:41:30,156.156 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-27 00:41:32,205.205 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:41:32,207.207 INFO    ] Checking for system updates...
[2026-06-27 00:41:32,230.230 INFO    ] 200
[2026-06-27 00:41:32,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:41:32,266.266 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:41:32,268.268 INFO    ] No update needed
[2026-06-27 00:41:32,270.270 INFO    ] Checking for camera pi updates...
[2026-06-27 00:41:32,291.291 INFO    ] 200
[2026-06-27 00:41:32,293.293 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:41:32,322.322 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:41:32,356.356 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:41:32,358.358 INFO    ] No camera update needed
[2026-06-27 00:41:32,360.360 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:41:32,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:41:32,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:41:32,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:41:34,408.408 INFO    ] ================================================
[2026-06-27 00:41:34,423.423 INFO    ] Launching Daemon at Sat Jun 27 00:41:34 IST 2026
[2026-06-27 00:41:34,434.434 INFO    ] ================================================
[2026-06-27 00:41:34,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:41:34
[2026-06-27 00:41:35,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:41:35,234.234 INFO    ] Initializing speech engine...
[2026-06-27 00:41:35,238.238 INFO    ] 2026-06-27 00:41:35
[2026-06-27 00:41:35,429.429 INFO    ] 2026-06-27 00:41:35
[2026-06-27 00:41:35,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:41:35,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:41:35,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:41:35,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:41:35,893.893 INFO    ] time= 27/06/2026 00:41:35
[2026-06-27 00:41:35,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:41:35,950.950 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:41:36,027.027 INFO    ] No existing commands found in stream
[2026-06-27 00:41:41,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:41:41,063.063 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-27 00:41:42,156.156 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 00:41:42,158.158 INFO    ] Checking for system updates...
[2026-06-27 00:41:42,178.178 INFO    ] 200
[2026-06-27 00:41:42,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:41:42,213.213 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:41:42,214.214 INFO    ] No update needed
[2026-06-27 00:41:42,216.216 INFO    ] Checking for camera pi updates...
[2026-06-27 00:41:42,238.238 INFO    ] 200
[2026-06-27 00:41:42,240.240 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:41:42,268.268 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:41:42,321.321 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:41:42,322.322 INFO    ] No camera update needed
[2026-06-27 00:41:42,324.324 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:41:42,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:41:42,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:41:42,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:41:44,370.370 INFO    ] ================================================
[2026-06-27 00:41:44,385.385 INFO    ] Launching Daemon at Sat Jun 27 00:41:44 IST 2026
[2026-06-27 00:41:44,396.396 INFO    ] ================================================
[2026-06-27 00:41:44,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:41:44
[2026-06-27 00:41:45,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:41:45,207.207 INFO    ] Initializing speech engine...
[2026-06-27 00:41:45,214.214 INFO    ] 2026-06-27 00:41:45
[2026-06-27 00:41:45,429.429 INFO    ] 2026-06-27 00:41:45
[2026-06-27 00:41:45,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:41:45,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:41:45,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:41:45,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:41:45,846.846 INFO    ] time= 27/06/2026 00:41:45
[2026-06-27 00:41:45,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:41:45,882.882 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:41:45,953.953 INFO    ] No existing commands found in stream
[2026-06-27 00:41:50,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:41:50,967.967 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-27 00:41:51,978.978 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 00:41:51,980.980 INFO    ] Checking for system updates...
[2026-06-27 00:41:52,000.000 INFO    ] 200
[2026-06-27 00:41:52,001.001 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:41:52,035.035 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:41:52,036.036 INFO    ] No update needed
[2026-06-27 00:41:52,037.037 INFO    ] Checking for camera pi updates...
[2026-06-27 00:41:52,057.057 INFO    ] 200
[2026-06-27 00:41:52,058.058 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:41:52,081.081 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:41:52,122.122 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:41:52,124.124 INFO    ] No camera update needed
[2026-06-27 00:41:52,125.125 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:41:52,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:41:52,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:41:52,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:41:54,173.173 INFO    ] ================================================
[2026-06-27 00:41:54,188.188 INFO    ] Launching Daemon at Sat Jun 27 00:41:54 IST 2026
[2026-06-27 00:41:54,199.199 INFO    ] ================================================
[2026-06-27 00:41:54,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:41:54
[2026-06-27 00:41:54,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:41:54,977.977 INFO    ] Initializing speech engine...
[2026-06-27 00:41:54,988.988 INFO    ] 2026-06-27 00:41:54
[2026-06-27 00:41:55,206.206 INFO    ] 2026-06-27 00:41:55
[2026-06-27 00:41:55,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:41:55,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:41:55,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:41:55,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:41:55,642.642 INFO    ] time= 27/06/2026 00:41:55
[2026-06-27 00:41:55,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:41:55,689.689 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:41:55,765.765 INFO    ] No existing commands found in stream
[2026-06-27 00:42:00,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:42:00,778.778 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-27 00:42:05,071.071 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 00:42:05,072.072 INFO    ] Checking for system updates...
[2026-06-27 00:42:05,095.095 INFO    ] 200
[2026-06-27 00:42:05,097.097 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:42:05,129.129 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:42:05,131.131 INFO    ] No update needed
[2026-06-27 00:42:05,132.132 INFO    ] Checking for camera pi updates...
[2026-06-27 00:42:05,155.155 INFO    ] 200
[2026-06-27 00:42:05,156.156 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:42:05,180.180 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:42:05,222.222 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:42:05,224.224 INFO    ] No camera update needed
[2026-06-27 00:42:05,225.225 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:42:05,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:42:05,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:42:05,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:42:07,275.275 INFO    ] ================================================
[2026-06-27 00:42:07,290.290 INFO    ] Launching Daemon at Sat Jun 27 00:42:07 IST 2026
[2026-06-27 00:42:07,301.301 INFO    ] ================================================
[2026-06-27 00:42:07,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:42:07
[2026-06-27 00:42:07,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:42:08,129.129 INFO    ] Initializing speech engine...
[2026-06-27 00:42:08,134.134 INFO    ] 2026-06-27 00:42:08
[2026-06-27 00:42:08,341.341 INFO    ] 2026-06-27 00:42:08
[2026-06-27 00:42:08,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:42:08,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:42:08,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:42:08,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:42:08,760.760 INFO    ] time= 27/06/2026 00:42:08
[2026-06-27 00:42:08,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:42:08,789.789 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:42:08,855.855 INFO    ] No existing commands found in stream
[2026-06-27 00:42:13,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:42:13,867.867 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-27 00:42:14,918.918 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:42:14,920.920 INFO    ] Checking for system updates...
[2026-06-27 00:42:14,942.942 INFO    ] 200
[2026-06-27 00:42:14,944.944 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:42:14,976.976 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:42:14,978.978 INFO    ] No update needed
[2026-06-27 00:42:14,979.979 INFO    ] Checking for camera pi updates...
[2026-06-27 00:42:14,999.999 INFO    ] 200
[2026-06-27 00:42:15,000.000 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:42:15,025.025 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:42:15,065.065 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:42:15,066.066 INFO    ] No camera update needed
[2026-06-27 00:42:15,068.068 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:42:15,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:42:15,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:42:15,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:42:17,115.115 INFO    ] ================================================
[2026-06-27 00:42:17,131.131 INFO    ] Launching Daemon at Sat Jun 27 00:42:17 IST 2026
[2026-06-27 00:42:17,142.142 INFO    ] ================================================
[2026-06-27 00:42:17,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:42:17
[2026-06-27 00:42:17,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:42:18,009.009 INFO    ] Initializing speech engine...
[2026-06-27 00:42:18,013.013 INFO    ] 2026-06-27 00:42:18
[2026-06-27 00:42:18,220.220 INFO    ] 2026-06-27 00:42:18
[2026-06-27 00:42:18,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:42:18,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:42:18,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:42:18,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:42:18,651.651 INFO    ] time= 27/06/2026 00:42:18
[2026-06-27 00:42:18,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:42:18,682.682 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:42:18,772.772 INFO    ] No existing commands found in stream
[2026-06-27 00:42:23,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:42:23,790.790 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-27 00:42:24,868.868 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:42:24,869.869 INFO    ] Checking for system updates...
[2026-06-27 00:42:24,890.890 INFO    ] 200
[2026-06-27 00:42:24,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:42:24,923.923 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:42:24,924.924 INFO    ] No update needed
[2026-06-27 00:42:24,926.926 INFO    ] Checking for camera pi updates...
[2026-06-27 00:42:24,946.946 INFO    ] 200
[2026-06-27 00:42:24,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:42:24,971.971 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:42:25,012.012 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:42:25,014.014 INFO    ] No camera update needed
[2026-06-27 00:42:25,015.015 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:42:25,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:42:25,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:42:25,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:42:27,064.064 INFO    ] ================================================
[2026-06-27 00:42:27,079.079 INFO    ] Launching Daemon at Sat Jun 27 00:42:27 IST 2026
[2026-06-27 00:42:27,091.091 INFO    ] ================================================
[2026-06-27 00:42:27,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:42:27
[2026-06-27 00:42:27,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:42:27,897.897 INFO    ] Initializing speech engine...
[2026-06-27 00:42:27,906.906 INFO    ] 2026-06-27 00:42:27
[2026-06-27 00:42:28,118.118 INFO    ] 2026-06-27 00:42:28
[2026-06-27 00:42:28,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:42:28,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:42:28,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:42:28,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:42:28,539.539 INFO    ] time= 27/06/2026 00:42:28
[2026-06-27 00:42:28,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:42:28,568.568 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:42:28,636.636 INFO    ] No existing commands found in stream
[2026-06-27 00:42:33,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:42:33,648.648 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-27 00:42:37,724.724 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 00:42:37,725.725 INFO    ] Checking for system updates...
[2026-06-27 00:42:37,746.746 INFO    ] 200
[2026-06-27 00:42:37,747.747 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:42:37,782.782 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:42:37,783.783 INFO    ] No update needed
[2026-06-27 00:42:37,784.784 INFO    ] Checking for camera pi updates...
[2026-06-27 00:42:37,805.805 INFO    ] 200
[2026-06-27 00:42:37,807.807 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:42:37,832.832 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:42:37,883.883 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:42:37,884.884 INFO    ] No camera update needed
[2026-06-27 00:42:37,885.885 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:42:37,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:42:37,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:42:37,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:42:39,932.932 INFO    ] ================================================
[2026-06-27 00:42:39,947.947 INFO    ] Launching Daemon at Sat Jun 27 00:42:39 IST 2026
[2026-06-27 00:42:39,958.958 INFO    ] ================================================
[2026-06-27 00:42:40,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:42:40
[2026-06-27 00:42:40,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:42:40,759.759 INFO    ] Initializing speech engine...
[2026-06-27 00:42:40,764.764 INFO    ] 2026-06-27 00:42:40
[2026-06-27 00:42:40,981.981 INFO    ] 2026-06-27 00:42:40
[2026-06-27 00:42:41,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:42:41,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:42:41,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:42:41,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:42:41,446.446 INFO    ] time= 27/06/2026 00:42:41
[2026-06-27 00:42:41,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:42:41,487.487 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:42:41,586.586 INFO    ] No existing commands found in stream
[2026-06-27 00:42:46,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:42:46,598.598 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-27 00:42:50,264.264 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 00:42:50,265.265 INFO    ] Checking for system updates...
[2026-06-27 00:42:50,287.287 INFO    ] 200
[2026-06-27 00:42:50,288.288 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:42:50,319.319 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:42:50,320.320 INFO    ] No update needed
[2026-06-27 00:42:50,322.322 INFO    ] Checking for camera pi updates...
[2026-06-27 00:42:50,341.341 INFO    ] 200
[2026-06-27 00:42:50,342.342 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:42:50,368.368 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:42:50,419.419 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:42:50,421.421 INFO    ] No camera update needed
[2026-06-27 00:42:50,422.422 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:42:50,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:42:50,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:42:50,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:42:52,468.468 INFO    ] ================================================
[2026-06-27 00:42:52,484.484 INFO    ] Launching Daemon at Sat Jun 27 00:42:52 IST 2026
[2026-06-27 00:42:52,494.494 INFO    ] ================================================
[2026-06-27 00:42:52,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:42:52
[2026-06-27 00:42:53,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:42:53,313.313 INFO    ] Initializing speech engine...
[2026-06-27 00:42:53,317.317 INFO    ] 2026-06-27 00:42:53
[2026-06-27 00:42:53,521.521 INFO    ] 2026-06-27 00:42:53
[2026-06-27 00:42:53,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:42:53,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:42:53,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:42:53,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:42:53,961.961 INFO    ] time= 27/06/2026 00:42:53
[2026-06-27 00:42:53,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:42:53,968.968 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:42:54,034.034 INFO    ] No existing commands found in stream
[2026-06-27 00:42:59,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:42:59,048.048 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-27 00:43:01,728.728 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 00:43:01,731.731 INFO    ] Checking for system updates...
[2026-06-27 00:43:01,765.765 INFO    ] 200
[2026-06-27 00:43:01,768.768 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:43:01,810.810 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:43:01,812.812 INFO    ] No update needed
[2026-06-27 00:43:01,814.814 INFO    ] Checking for camera pi updates...
[2026-06-27 00:43:01,840.840 INFO    ] 200
[2026-06-27 00:43:01,842.842 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:43:01,875.875 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:43:02,011.011 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:43:02,013.013 INFO    ] No camera update needed
[2026-06-27 00:43:02,015.015 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:43:02,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:43:02,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:43:02,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:43:04,065.065 INFO    ] ================================================
[2026-06-27 00:43:04,082.082 INFO    ] Launching Daemon at Sat Jun 27 00:43:04 IST 2026
[2026-06-27 00:43:04,092.092 INFO    ] ================================================
[2026-06-27 00:43:04,441.441 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:43:04
[2026-06-27 00:43:04,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:43:04,904.904 INFO    ] Initializing speech engine...
[2026-06-27 00:43:04,909.909 INFO    ] 2026-06-27 00:43:04
[2026-06-27 00:43:05,113.113 INFO    ] 2026-06-27 00:43:05
[2026-06-27 00:43:05,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:43:05,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:43:05,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:43:05,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:43:05,544.544 INFO    ] time= 27/06/2026 00:43:05
[2026-06-27 00:43:05,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:43:05,571.571 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:43:05,665.665 INFO    ] No existing commands found in stream
[2026-06-27 00:43:10,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:43:10,682.682 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-27 00:43:13,420.420 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 00:43:13,421.421 INFO    ] Checking for system updates...
[2026-06-27 00:43:13,445.445 INFO    ] 200
[2026-06-27 00:43:13,447.447 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:43:13,477.477 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:43:13,478.478 INFO    ] No update needed
[2026-06-27 00:43:13,480.480 INFO    ] Checking for camera pi updates...
[2026-06-27 00:43:13,501.501 INFO    ] 200
[2026-06-27 00:43:13,502.502 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:43:13,525.525 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:43:13,569.569 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:43:13,570.570 INFO    ] No camera update needed
[2026-06-27 00:43:13,571.571 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:43:13,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:43:13,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:43:13,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:43:15,618.618 INFO    ] ================================================
[2026-06-27 00:43:15,635.635 INFO    ] Launching Daemon at Sat Jun 27 00:43:15 IST 2026
[2026-06-27 00:43:15,646.646 INFO    ] ================================================
[2026-06-27 00:43:16,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:43:16
[2026-06-27 00:43:16,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:43:16,474.474 INFO    ] Initializing speech engine...
[2026-06-27 00:43:16,480.480 INFO    ] 2026-06-27 00:43:16
[2026-06-27 00:43:16,683.683 INFO    ] 2026-06-27 00:43:16
[2026-06-27 00:43:16,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:43:16,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:43:16,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:43:17,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:43:17,101.101 INFO    ] time= 27/06/2026 00:43:17
[2026-06-27 00:43:17,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:43:17,132.132 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:43:17,200.200 INFO    ] No existing commands found in stream
[2026-06-27 00:43:22,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:43:22,209.209 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-27 00:43:24,749.749 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 00:43:24,751.751 INFO    ] Checking for system updates...
[2026-06-27 00:43:24,772.772 INFO    ] 200
[2026-06-27 00:43:24,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:43:24,805.805 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:43:24,806.806 INFO    ] No update needed
[2026-06-27 00:43:24,808.808 INFO    ] Checking for camera pi updates...
[2026-06-27 00:43:24,827.827 INFO    ] 200
[2026-06-27 00:43:24,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:43:24,853.853 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:43:24,919.919 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:43:24,921.921 INFO    ] No camera update needed
[2026-06-27 00:43:24,922.922 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:43:24,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:43:24,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:43:24,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:43:26,972.972 INFO    ] ================================================
[2026-06-27 00:43:26,987.987 INFO    ] Launching Daemon at Sat Jun 27 00:43:26 IST 2026
[2026-06-27 00:43:27,998.998 INFO    ] ================================================
[2026-06-27 00:43:27,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:43:27
[2026-06-27 00:43:27,677.677 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:43:27,812.812 INFO    ] Initializing speech engine...
[2026-06-27 00:43:27,817.817 INFO    ] 2026-06-27 00:43:27
[2026-06-27 00:43:28,051.051 INFO    ] 2026-06-27 00:43:28
[2026-06-27 00:43:28,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:43:28,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:43:28,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:43:28,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:43:28,484.484 INFO    ] time= 27/06/2026 00:43:28
[2026-06-27 00:43:28,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:43:28,536.536 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:43:28,640.640 INFO    ] No existing commands found in stream
[2026-06-27 00:43:33,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:43:33,652.652 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-27 00:43:36,782.782 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 00:43:36,783.783 INFO    ] Checking for system updates...
[2026-06-27 00:43:36,804.804 INFO    ] 200
[2026-06-27 00:43:36,806.806 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:43:36,836.836 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:43:36,838.838 INFO    ] No update needed
[2026-06-27 00:43:36,839.839 INFO    ] Checking for camera pi updates...
[2026-06-27 00:43:36,860.860 INFO    ] 200
[2026-06-27 00:43:36,861.861 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:43:36,886.886 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:43:36,928.928 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:43:36,929.929 INFO    ] No camera update needed
[2026-06-27 00:43:36,930.930 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:43:36,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:43:36,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:43:36,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:43:38,976.976 INFO    ] ================================================
[2026-06-27 00:43:38,990.990 INFO    ] Launching Daemon at Sat Jun 27 00:43:38 IST 2026
[2026-06-27 00:43:39,001.001 INFO    ] ================================================
[2026-06-27 00:43:39,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:43:39
[2026-06-27 00:43:39,674.674 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:43:39,810.810 INFO    ] Initializing speech engine...
[2026-06-27 00:43:39,814.814 INFO    ] 2026-06-27 00:43:39
[2026-06-27 00:43:40,005.005 INFO    ] 2026-06-27 00:43:40
[2026-06-27 00:43:40,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:43:40,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:43:40,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:43:40,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:43:40,487.487 INFO    ] time= 27/06/2026 00:43:40
[2026-06-27 00:43:40,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:43:40,528.528 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:43:40,606.606 INFO    ] No existing commands found in stream
[2026-06-27 00:43:45,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:43:45,618.618 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-27 00:43:49,379.379 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 00:43:49,381.381 INFO    ] Checking for system updates...
[2026-06-27 00:43:49,403.403 INFO    ] 200
[2026-06-27 00:43:49,405.405 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:43:49,439.439 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:43:49,440.440 INFO    ] No update needed
[2026-06-27 00:43:49,441.441 INFO    ] Checking for camera pi updates...
[2026-06-27 00:43:49,464.464 INFO    ] 200
[2026-06-27 00:43:49,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:43:49,489.489 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:43:49,531.531 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:43:49,532.532 INFO    ] No camera update needed
[2026-06-27 00:43:49,534.534 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:43:49,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:43:49,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:43:49,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:43:51,585.585 INFO    ] ================================================
[2026-06-27 00:43:51,600.600 INFO    ] Launching Daemon at Sat Jun 27 00:43:51 IST 2026
[2026-06-27 00:43:51,612.612 INFO    ] ================================================
[2026-06-27 00:43:51,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:43:51
[2026-06-27 00:43:52,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:43:52,476.476 INFO    ] Initializing speech engine...
[2026-06-27 00:43:52,480.480 INFO    ] 2026-06-27 00:43:52
[2026-06-27 00:43:52,689.689 INFO    ] 2026-06-27 00:43:52
[2026-06-27 00:43:52,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:43:52,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:43:52,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:43:53,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:43:53,117.117 INFO    ] time= 27/06/2026 00:43:53
[2026-06-27 00:43:53,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:43:53,147.147 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:43:53,214.214 INFO    ] No existing commands found in stream
[2026-06-27 00:43:58,225.225 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:43:58,228.228 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-27 00:44:02,575.575 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:44:02,576.576 INFO    ] Checking for system updates...
[2026-06-27 00:44:02,598.598 INFO    ] 200
[2026-06-27 00:44:02,599.599 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:44:02,629.629 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:44:02,631.631 INFO    ] No update needed
[2026-06-27 00:44:02,632.632 INFO    ] Checking for camera pi updates...
[2026-06-27 00:44:02,656.656 INFO    ] 200
[2026-06-27 00:44:02,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:44:02,684.684 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:44:02,729.729 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:44:02,731.731 INFO    ] No camera update needed
[2026-06-27 00:44:02,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:44:02,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:44:02,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:44:02,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:44:04,783.783 INFO    ] ================================================
[2026-06-27 00:44:04,799.799 INFO    ] Launching Daemon at Sat Jun 27 00:44:04 IST 2026
[2026-06-27 00:44:04,809.809 INFO    ] ================================================
[2026-06-27 00:44:05,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:44:05
[2026-06-27 00:44:05,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:44:05,605.605 INFO    ] Initializing speech engine...
[2026-06-27 00:44:05,609.609 INFO    ] 2026-06-27 00:44:05
[2026-06-27 00:44:05,813.813 INFO    ] 2026-06-27 00:44:05
[2026-06-27 00:44:05,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:44:05,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:44:06,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:44:06,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:44:06,250.250 INFO    ] time= 27/06/2026 00:44:06
[2026-06-27 00:44:06,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:44:06,296.296 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:44:06,404.404 INFO    ] No existing commands found in stream
[2026-06-27 00:44:11,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:44:11,417.417 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-27 00:44:13,459.459 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 00:44:13,461.461 INFO    ] Checking for system updates...
[2026-06-27 00:44:13,483.483 INFO    ] 200
[2026-06-27 00:44:13,485.485 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:44:13,518.518 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:44:13,520.520 INFO    ] No update needed
[2026-06-27 00:44:13,521.521 INFO    ] Checking for camera pi updates...
[2026-06-27 00:44:13,543.543 INFO    ] 200
[2026-06-27 00:44:13,545.545 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:44:13,570.570 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:44:13,612.612 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:44:13,613.613 INFO    ] No camera update needed
[2026-06-27 00:44:13,615.615 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:44:13,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:44:13,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:44:13,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:44:15,665.665 INFO    ] ================================================
[2026-06-27 00:44:15,681.681 INFO    ] Launching Daemon at Sat Jun 27 00:44:15 IST 2026
[2026-06-27 00:44:15,692.692 INFO    ] ================================================
[2026-06-27 00:44:16,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:44:16
[2026-06-27 00:44:16,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:44:16,541.541 INFO    ] Initializing speech engine...
[2026-06-27 00:44:16,546.546 INFO    ] 2026-06-27 00:44:16
[2026-06-27 00:44:16,757.757 INFO    ] 2026-06-27 00:44:16
[2026-06-27 00:44:16,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:44:16,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:44:16,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:44:17,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:44:17,189.189 INFO    ] time= 27/06/2026 00:44:17
[2026-06-27 00:44:17,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:44:17,220.220 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:44:17,289.289 INFO    ] No existing commands found in stream
[2026-06-27 00:44:22,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:44:22,302.302 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-27 00:44:24,151.151 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 00:44:24,152.152 INFO    ] Checking for system updates...
[2026-06-27 00:44:24,174.174 INFO    ] 200
[2026-06-27 00:44:24,175.175 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:44:24,210.210 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:44:24,212.212 INFO    ] No update needed
[2026-06-27 00:44:24,213.213 INFO    ] Checking for camera pi updates...
[2026-06-27 00:44:24,236.236 INFO    ] 200
[2026-06-27 00:44:24,237.237 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:44:24,260.260 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:44:24,315.315 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:44:24,317.317 INFO    ] No camera update needed
[2026-06-27 00:44:24,318.318 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:44:24,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:44:24,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:44:24,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:44:26,365.365 INFO    ] ================================================
[2026-06-27 00:44:26,381.381 INFO    ] Launching Daemon at Sat Jun 27 00:44:26 IST 2026
[2026-06-27 00:44:26,392.392 INFO    ] ================================================
[2026-06-27 00:44:26,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:44:26
[2026-06-27 00:44:27,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:44:27,268.268 INFO    ] Initializing speech engine...
[2026-06-27 00:44:27,272.272 INFO    ] 2026-06-27 00:44:27
[2026-06-27 00:44:27,465.465 INFO    ] 2026-06-27 00:44:27
[2026-06-27 00:44:27,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:44:28,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:44:28,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:44:28,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:44:28,310.310 INFO    ] time= 27/06/2026 00:44:28
[2026-06-27 00:44:28,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:44:28,338.338 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:44:28,408.408 INFO    ] No existing commands found in stream
[2026-06-27 00:44:33,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:44:33,423.423 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-27 00:44:36,026.026 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:44:36,028.028 INFO    ] Checking for system updates...
[2026-06-27 00:44:36,049.049 INFO    ] 200
[2026-06-27 00:44:36,051.051 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:44:36,081.081 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:44:36,083.083 INFO    ] No update needed
[2026-06-27 00:44:36,084.084 INFO    ] Checking for camera pi updates...
[2026-06-27 00:44:36,104.104 INFO    ] 200
[2026-06-27 00:44:36,106.106 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:44:36,132.132 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:44:36,176.176 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:44:36,178.178 INFO    ] No camera update needed
[2026-06-27 00:44:36,179.179 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:44:36,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:44:36,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:44:36,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:44:38,227.227 INFO    ] ================================================
[2026-06-27 00:44:38,244.244 INFO    ] Launching Daemon at Sat Jun 27 00:44:38 IST 2026
[2026-06-27 00:44:38,255.255 INFO    ] ================================================
[2026-06-27 00:44:38,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:44:38
[2026-06-27 00:44:38,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:44:39,124.124 INFO    ] Initializing speech engine...
[2026-06-27 00:44:39,128.128 INFO    ] 2026-06-27 00:44:39
[2026-06-27 00:44:39,338.338 INFO    ] 2026-06-27 00:44:39
[2026-06-27 00:44:39,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:44:39,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:44:39,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:44:39,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:44:39,767.767 INFO    ] time= 27/06/2026 00:44:39
[2026-06-27 00:44:39,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:44:39,796.796 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:44:39,863.863 INFO    ] No existing commands found in stream
[2026-06-27 00:44:44,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:44:44,877.877 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-27 00:44:47,971.971 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 00:44:47,973.973 INFO    ] Checking for system updates...
[2026-06-27 00:44:47,995.995 INFO    ] 200
[2026-06-27 00:44:47,997.997 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:44:48,027.027 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:44:48,029.029 INFO    ] No update needed
[2026-06-27 00:44:48,030.030 INFO    ] Checking for camera pi updates...
[2026-06-27 00:44:48,051.051 INFO    ] 200
[2026-06-27 00:44:48,053.053 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:44:48,079.079 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:44:48,121.121 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:44:48,122.122 INFO    ] No camera update needed
[2026-06-27 00:44:48,124.124 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:44:48,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:44:48,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:44:48,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:44:50,171.171 INFO    ] ================================================
[2026-06-27 00:44:50,186.186 INFO    ] Launching Daemon at Sat Jun 27 00:44:50 IST 2026
[2026-06-27 00:44:50,197.197 INFO    ] ================================================
[2026-06-27 00:44:50,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:44:50
[2026-06-27 00:44:50,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:44:50,993.993 INFO    ] Initializing speech engine...
[2026-06-27 00:44:50,999.999 INFO    ] 2026-06-27 00:44:50
[2026-06-27 00:44:51,203.203 INFO    ] 2026-06-27 00:44:51
[2026-06-27 00:44:51,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:44:51,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:44:51,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:44:51,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:44:51,634.634 INFO    ] time= 27/06/2026 00:44:51
[2026-06-27 00:44:51,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:44:51,651.651 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:44:51,717.717 INFO    ] No existing commands found in stream
[2026-06-27 00:44:56,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:44:56,729.729 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-27 00:44:58,874.874 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 00:44:58,876.876 INFO    ] Checking for system updates...
[2026-06-27 00:44:58,899.899 INFO    ] 200
[2026-06-27 00:44:58,900.900 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:44:58,935.935 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:44:58,936.936 INFO    ] No update needed
[2026-06-27 00:44:58,938.938 INFO    ] Checking for camera pi updates...
[2026-06-27 00:44:58,957.957 INFO    ] 200
[2026-06-27 00:44:58,959.959 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:44:58,983.983 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:44:59,035.035 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:44:59,036.036 INFO    ] No camera update needed
[2026-06-27 00:44:59,038.038 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:44:59,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:44:59,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:44:59,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:45:01,086.086 INFO    ] ================================================
[2026-06-27 00:45:01,102.102 INFO    ] Launching Daemon at Sat Jun 27 00:45:01 IST 2026
[2026-06-27 00:45:01,113.113 INFO    ] ================================================
[2026-06-27 00:45:01,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:45:01
[2026-06-27 00:45:01,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:45:02,296.296 INFO    ] Initializing speech engine...
[2026-06-27 00:45:02,298.298 INFO    ] 2026-06-27 00:45:02
[2026-06-27 00:45:02,568.568 INFO    ] 2026-06-27 00:45:02
[2026-06-27 00:45:02,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:45:02,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:45:02,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:45:02,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:45:02,965.965 INFO    ] time= 27/06/2026 00:45:02
[2026-06-27 00:45:02,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:45:02,969.969 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:45:03,073.073 INFO    ] No existing commands found in stream
[2026-06-27 00:45:08,094.094 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:45:08,097.097 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-27 00:45:08,961.961 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 00:45:08,963.963 INFO    ] Checking for system updates...
[2026-06-27 00:45:08,984.984 INFO    ] 200
[2026-06-27 00:45:08,985.985 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:45:09,016.016 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:45:09,017.017 INFO    ] No update needed
[2026-06-27 00:45:09,018.018 INFO    ] Checking for camera pi updates...
[2026-06-27 00:45:09,038.038 INFO    ] 200
[2026-06-27 00:45:09,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:45:09,065.065 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:45:09,217.217 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:45:09,218.218 INFO    ] No camera update needed
[2026-06-27 00:45:09,219.219 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:45:09,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:45:09,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:45:09,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:45:11,265.265 INFO    ] ================================================
[2026-06-27 00:45:11,281.281 INFO    ] Launching Daemon at Sat Jun 27 00:45:11 IST 2026
[2026-06-27 00:45:11,292.292 INFO    ] ================================================
[2026-06-27 00:45:11,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:45:11
[2026-06-27 00:45:11,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:45:12,099.099 INFO    ] Initializing speech engine...
[2026-06-27 00:45:12,103.103 INFO    ] 2026-06-27 00:45:12
[2026-06-27 00:45:12,320.320 INFO    ] 2026-06-27 00:45:12
[2026-06-27 00:45:12,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:45:12,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:45:12,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:45:12,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:45:12,742.742 INFO    ] time= 27/06/2026 00:45:12
[2026-06-27 00:45:12,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:45:12,772.772 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:45:12,838.838 INFO    ] No existing commands found in stream
[2026-06-27 00:45:17,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:45:17,851.851 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-27 00:45:18,509.509 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 00:45:18,511.511 INFO    ] Checking for system updates...
[2026-06-27 00:45:18,533.533 INFO    ] 200
[2026-06-27 00:45:18,535.535 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:45:18,565.565 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:45:18,567.567 INFO    ] No update needed
[2026-06-27 00:45:18,568.568 INFO    ] Checking for camera pi updates...
[2026-06-27 00:45:18,590.590 INFO    ] 200
[2026-06-27 00:45:18,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:45:18,615.615 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:45:18,654.654 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:45:18,655.655 INFO    ] No camera update needed
[2026-06-27 00:45:18,656.656 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:45:18,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:45:18,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:45:18,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:45:20,702.702 INFO    ] ================================================
[2026-06-27 00:45:20,717.717 INFO    ] Launching Daemon at Sat Jun 27 00:45:20 IST 2026
[2026-06-27 00:45:20,728.728 INFO    ] ================================================
[2026-06-27 00:45:21,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:45:21
[2026-06-27 00:45:21,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:45:21,606.606 INFO    ] Initializing speech engine...
[2026-06-27 00:45:21,610.610 INFO    ] 2026-06-27 00:45:21
[2026-06-27 00:45:21,818.818 INFO    ] 2026-06-27 00:45:21
[2026-06-27 00:45:21,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:45:21,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:45:21,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:45:22,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:45:22,181.181 INFO    ] time= 27/06/2026 00:45:22
[2026-06-27 00:45:22,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:45:22,273.273 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:45:22,348.348 INFO    ] No existing commands found in stream
[2026-06-27 00:45:27,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:45:27,366.366 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-27 00:45:29,991.991 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 00:45:29,992.992 INFO    ] Checking for system updates...
[2026-06-27 00:45:30,015.015 INFO    ] 200
[2026-06-27 00:45:30,016.016 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:45:30,047.047 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:45:30,048.048 INFO    ] No update needed
[2026-06-27 00:45:30,049.049 INFO    ] Checking for camera pi updates...
[2026-06-27 00:45:30,071.071 INFO    ] 200
[2026-06-27 00:45:30,072.072 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:45:30,096.096 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:45:30,138.138 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:45:30,139.139 INFO    ] No camera update needed
[2026-06-27 00:45:30,140.140 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:45:30,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:45:30,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:45:30,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:45:32,190.190 INFO    ] ================================================
[2026-06-27 00:45:32,206.206 INFO    ] Launching Daemon at Sat Jun 27 00:45:32 IST 2026
[2026-06-27 00:45:32,218.218 INFO    ] ================================================
[2026-06-27 00:45:32,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:45:32
[2026-06-27 00:45:32,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:45:33,079.079 INFO    ] Initializing speech engine...
[2026-06-27 00:45:33,084.084 INFO    ] 2026-06-27 00:45:33
[2026-06-27 00:45:33,314.314 INFO    ] 2026-06-27 00:45:33
[2026-06-27 00:45:33,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:45:33,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:45:33,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:45:33,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:45:33,744.744 INFO    ] time= 27/06/2026 00:45:33
[2026-06-27 00:45:33,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:45:33,800.800 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:45:33,896.896 INFO    ] No existing commands found in stream
[2026-06-27 00:45:38,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:45:38,908.908 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-27 00:45:41,115.115 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 00:45:41,116.116 INFO    ] Checking for system updates...
[2026-06-27 00:45:41,137.137 INFO    ] 200
[2026-06-27 00:45:41,138.138 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:45:41,171.171 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:45:41,172.172 INFO    ] No update needed
[2026-06-27 00:45:41,174.174 INFO    ] Checking for camera pi updates...
[2026-06-27 00:45:41,194.194 INFO    ] 200
[2026-06-27 00:45:41,195.195 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:45:41,219.219 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:45:41,257.257 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:45:41,259.259 INFO    ] No camera update needed
[2026-06-27 00:45:41,260.260 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:45:41,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:45:41,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:45:41,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:45:43,306.306 INFO    ] ================================================
[2026-06-27 00:45:43,323.323 INFO    ] Launching Daemon at Sat Jun 27 00:45:43 IST 2026
[2026-06-27 00:45:43,333.333 INFO    ] ================================================
[2026-06-27 00:45:43,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:45:43
[2026-06-27 00:45:44,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:45:44,159.159 INFO    ] Initializing speech engine...
[2026-06-27 00:45:44,170.170 INFO    ] 2026-06-27 00:45:44
[2026-06-27 00:45:44,381.381 INFO    ] 2026-06-27 00:45:44
[2026-06-27 00:45:44,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:45:44,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:45:44,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:45:44,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:45:44,810.810 INFO    ] time= 27/06/2026 00:45:44
[2026-06-27 00:45:44,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:45:44,837.837 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:45:44,930.930 INFO    ] No existing commands found in stream
[2026-06-27 00:45:49,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:45:49,948.948 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-27 00:45:51,012.012 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 00:45:51,014.014 INFO    ] Checking for system updates...
[2026-06-27 00:45:51,039.039 INFO    ] 200
[2026-06-27 00:45:51,042.042 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:45:51,096.096 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:45:51,098.098 INFO    ] No update needed
[2026-06-27 00:45:51,101.101 INFO    ] Checking for camera pi updates...
[2026-06-27 00:45:51,137.137 INFO    ] 200
[2026-06-27 00:45:51,138.138 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:45:51,162.162 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:45:51,219.219 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:45:51,220.220 INFO    ] No camera update needed
[2026-06-27 00:45:51,222.222 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:45:51,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:45:51,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:45:51,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:45:53,267.267 INFO    ] ================================================
[2026-06-27 00:45:53,283.283 INFO    ] Launching Daemon at Sat Jun 27 00:45:53 IST 2026
[2026-06-27 00:45:53,294.294 INFO    ] ================================================
[2026-06-27 00:45:53,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:45:53
[2026-06-27 00:45:53,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:45:54,084.084 INFO    ] Initializing speech engine...
[2026-06-27 00:45:54,096.096 INFO    ] 2026-06-27 00:45:54
[2026-06-27 00:45:54,304.304 INFO    ] 2026-06-27 00:45:54
[2026-06-27 00:45:54,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:45:54,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:45:54,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:45:54,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:45:54,732.732 INFO    ] time= 27/06/2026 00:45:54
[2026-06-27 00:45:54,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:45:54,761.761 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:45:54,828.828 INFO    ] No existing commands found in stream
[2026-06-27 00:45:59,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:45:59,840.840 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-27 00:46:01,461.461 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 00:46:01,465.465 INFO    ] Checking for system updates...
[2026-06-27 00:46:01,505.505 INFO    ] 200
[2026-06-27 00:46:01,507.507 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:46:01,587.587 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:46:01,589.589 INFO    ] No update needed
[2026-06-27 00:46:01,591.591 INFO    ] Checking for camera pi updates...
[2026-06-27 00:46:01,619.619 INFO    ] 200
[2026-06-27 00:46:01,621.621 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:46:01,678.678 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:46:01,718.718 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:46:01,720.720 INFO    ] No camera update needed
[2026-06-27 00:46:01,722.722 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:46:01,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:46:01,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:46:01,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:46:03,772.772 INFO    ] ================================================
[2026-06-27 00:46:03,788.788 INFO    ] Launching Daemon at Sat Jun 27 00:46:03 IST 2026
[2026-06-27 00:46:03,800.800 INFO    ] ================================================
[2026-06-27 00:46:04,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:46:04
[2026-06-27 00:46:04,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:46:04,662.662 INFO    ] Initializing speech engine...
[2026-06-27 00:46:04,667.667 INFO    ] 2026-06-27 00:46:04
[2026-06-27 00:46:04,876.876 INFO    ] 2026-06-27 00:46:04
[2026-06-27 00:46:04,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:46:05,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:46:05,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:46:05,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:46:05,313.313 INFO    ] time= 27/06/2026 00:46:05
[2026-06-27 00:46:05,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:46:05,329.329 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:46:05,396.396 INFO    ] No existing commands found in stream
[2026-06-27 00:46:10,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:46:10,408.408 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-27 00:46:11,419.419 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 00:46:11,420.420 INFO    ] Checking for system updates...
[2026-06-27 00:46:11,441.441 INFO    ] 200
[2026-06-27 00:46:11,442.442 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:46:11,477.477 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:46:11,478.478 INFO    ] No update needed
[2026-06-27 00:46:11,480.480 INFO    ] Checking for camera pi updates...
[2026-06-27 00:46:11,499.499 INFO    ] 200
[2026-06-27 00:46:11,500.500 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:46:11,526.526 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:46:11,568.568 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:46:11,570.570 INFO    ] No camera update needed
[2026-06-27 00:46:11,571.571 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:46:11,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:46:11,575.575 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:46:11,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:46:13,616.616 INFO    ] ================================================
[2026-06-27 00:46:13,632.632 INFO    ] Launching Daemon at Sat Jun 27 00:46:13 IST 2026
[2026-06-27 00:46:13,645.645 INFO    ] ================================================
[2026-06-27 00:46:14,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:46:13
[2026-06-27 00:46:14,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:46:14,451.451 INFO    ] Initializing speech engine...
[2026-06-27 00:46:14,463.463 INFO    ] 2026-06-27 00:46:14
[2026-06-27 00:46:14,672.672 INFO    ] 2026-06-27 00:46:14
[2026-06-27 00:46:14,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:46:14,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:46:14,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:46:15,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:46:15,092.092 INFO    ] time= 27/06/2026 00:46:15
[2026-06-27 00:46:15,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:46:15,127.127 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:46:15,194.194 INFO    ] No existing commands found in stream
[2026-06-27 00:46:20,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:46:20,206.206 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-27 00:46:20,965.965 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 00:46:20,967.967 INFO    ] Checking for system updates...
[2026-06-27 00:46:20,988.988 INFO    ] 200
[2026-06-27 00:46:20,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:46:21,021.021 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:46:21,022.022 INFO    ] No update needed
[2026-06-27 00:46:21,024.024 INFO    ] Checking for camera pi updates...
[2026-06-27 00:46:21,043.043 INFO    ] 200
[2026-06-27 00:46:21,045.045 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:46:21,070.070 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:46:21,123.123 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:46:21,125.125 INFO    ] No camera update needed
[2026-06-27 00:46:21,126.126 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:46:21,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:46:21,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:46:21,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:46:23,173.173 INFO    ] ================================================
[2026-06-27 00:46:23,189.189 INFO    ] Launching Daemon at Sat Jun 27 00:46:23 IST 2026
[2026-06-27 00:46:23,200.200 INFO    ] ================================================
[2026-06-27 00:46:23,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:46:23
[2026-06-27 00:46:23,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:46:24,009.009 INFO    ] Initializing speech engine...
[2026-06-27 00:46:24,020.020 INFO    ] 2026-06-27 00:46:24
[2026-06-27 00:46:24,226.226 INFO    ] 2026-06-27 00:46:24
[2026-06-27 00:46:24,254.254 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:46:24,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:46:24,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:46:24,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:46:24,629.629 INFO    ] time= 27/06/2026 00:46:24
[2026-06-27 00:46:24,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:46:24,675.675 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:46:24,745.745 INFO    ] No existing commands found in stream
[2026-06-27 00:46:29,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:46:29,758.758 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-27 00:46:33,841.841 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:46:33,843.843 INFO    ] Checking for system updates...
[2026-06-27 00:46:33,864.864 INFO    ] 200
[2026-06-27 00:46:33,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:46:33,900.900 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:46:33,901.901 INFO    ] No update needed
[2026-06-27 00:46:33,903.903 INFO    ] Checking for camera pi updates...
[2026-06-27 00:46:33,923.923 INFO    ] 200
[2026-06-27 00:46:33,925.925 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:46:33,950.950 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:46:34,001.001 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:46:34,003.003 INFO    ] No camera update needed
[2026-06-27 00:46:34,004.004 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:46:34,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:46:34,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:46:34,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:46:36,053.053 INFO    ] ================================================
[2026-06-27 00:46:36,069.069 INFO    ] Launching Daemon at Sat Jun 27 00:46:36 IST 2026
[2026-06-27 00:46:36,080.080 INFO    ] ================================================
[2026-06-27 00:46:36,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:46:36
[2026-06-27 00:46:36,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:46:36,898.898 INFO    ] Initializing speech engine...
[2026-06-27 00:46:36,901.901 INFO    ] 2026-06-27 00:46:36
[2026-06-27 00:46:37,125.125 INFO    ] 2026-06-27 00:46:37
[2026-06-27 00:46:37,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:46:37,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:46:37,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:46:37,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:46:37,526.526 INFO    ] time= 27/06/2026 00:46:37
[2026-06-27 00:46:37,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:46:37,577.577 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:46:37,650.650 INFO    ] No existing commands found in stream
[2026-06-27 00:46:42,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:46:42,662.662 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-27 00:46:44,211.211 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 00:46:44,213.213 INFO    ] Checking for system updates...
[2026-06-27 00:46:44,234.234 INFO    ] 200
[2026-06-27 00:46:44,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:46:44,267.267 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:46:44,268.268 INFO    ] No update needed
[2026-06-27 00:46:44,270.270 INFO    ] Checking for camera pi updates...
[2026-06-27 00:46:44,290.290 INFO    ] 200
[2026-06-27 00:46:44,291.291 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:46:44,316.316 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:46:44,357.357 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:46:44,358.358 INFO    ] No camera update needed
[2026-06-27 00:46:44,360.360 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:46:44,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:46:44,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:46:44,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:46:46,408.408 INFO    ] ================================================
[2026-06-27 00:46:46,423.423 INFO    ] Launching Daemon at Sat Jun 27 00:46:46 IST 2026
[2026-06-27 00:46:46,436.436 INFO    ] ================================================
[2026-06-27 00:46:46,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:46:46
[2026-06-27 00:46:47,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:46:47,258.258 INFO    ] Initializing speech engine...
[2026-06-27 00:46:47,268.268 INFO    ] 2026-06-27 00:46:47
[2026-06-27 00:46:47,472.472 INFO    ] 2026-06-27 00:46:47
[2026-06-27 00:46:47,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:46:47,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:46:47,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:46:47,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:46:47,890.890 INFO    ] time= 27/06/2026 00:46:47
[2026-06-27 00:46:47,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:46:47,920.920 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:46:47,989.989 INFO    ] No existing commands found in stream
[2026-06-27 00:46:53,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:46:53,006.006 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-27 00:46:56,551.551 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 00:46:56,552.552 INFO    ] Checking for system updates...
[2026-06-27 00:46:56,574.574 INFO    ] 200
[2026-06-27 00:46:56,575.575 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:46:56,606.606 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:46:56,607.607 INFO    ] No update needed
[2026-06-27 00:46:56,609.609 INFO    ] Checking for camera pi updates...
[2026-06-27 00:46:56,629.629 INFO    ] 200
[2026-06-27 00:46:56,630.630 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:46:56,656.656 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:46:56,716.716 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:46:56,718.718 INFO    ] No camera update needed
[2026-06-27 00:46:56,719.719 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:46:56,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:46:56,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:46:56,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:46:58,766.766 INFO    ] ================================================
[2026-06-27 00:46:58,781.781 INFO    ] Launching Daemon at Sat Jun 27 00:46:58 IST 2026
[2026-06-27 00:46:58,793.793 INFO    ] ================================================
[2026-06-27 00:46:59,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:46:59
[2026-06-27 00:46:59,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:46:59,655.655 INFO    ] Initializing speech engine...
[2026-06-27 00:46:59,661.661 INFO    ] 2026-06-27 00:46:59
[2026-06-27 00:46:59,870.870 INFO    ] 2026-06-27 00:46:59
[2026-06-27 00:46:59,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:47:00,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:47:00,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:47:00,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:47:00,294.294 INFO    ] time= 27/06/2026 00:47:00
[2026-06-27 00:47:00,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:47:00,322.322 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:47:00,390.390 INFO    ] No existing commands found in stream
[2026-06-27 00:47:05,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:47:05,397.397 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-27 00:47:07,576.576 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 00:47:07,578.578 INFO    ] Checking for system updates...
[2026-06-27 00:47:07,599.599 INFO    ] 200
[2026-06-27 00:47:07,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:47:07,631.631 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:47:07,633.633 INFO    ] No update needed
[2026-06-27 00:47:07,634.634 INFO    ] Checking for camera pi updates...
[2026-06-27 00:47:07,655.655 INFO    ] 200
[2026-06-27 00:47:07,656.656 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:47:07,680.680 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:47:07,728.728 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:47:07,729.729 INFO    ] No camera update needed
[2026-06-27 00:47:07,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:47:07,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:47:07,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:47:07,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:47:09,777.777 INFO    ] ================================================
[2026-06-27 00:47:09,793.793 INFO    ] Launching Daemon at Sat Jun 27 00:47:09 IST 2026
[2026-06-27 00:47:09,804.804 INFO    ] ================================================
[2026-06-27 00:47:10,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:47:10
[2026-06-27 00:47:10,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:47:10,645.645 INFO    ] Initializing speech engine...
[2026-06-27 00:47:10,649.649 INFO    ] 2026-06-27 00:47:10
[2026-06-27 00:47:10,853.853 INFO    ] 2026-06-27 00:47:10
[2026-06-27 00:47:10,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:47:11,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:47:11,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:47:11,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:47:11,263.263 INFO    ] time= 27/06/2026 00:47:11
[2026-06-27 00:47:11,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:47:11,301.301 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:47:11,367.367 INFO    ] No existing commands found in stream
[2026-06-27 00:47:16,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:47:16,379.379 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-27 00:47:18,596.596 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 00:47:18,598.598 INFO    ] Checking for system updates...
[2026-06-27 00:47:18,620.620 INFO    ] 200
[2026-06-27 00:47:18,621.621 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:47:18,652.652 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:47:18,654.654 INFO    ] No update needed
[2026-06-27 00:47:18,655.655 INFO    ] Checking for camera pi updates...
[2026-06-27 00:47:18,675.675 INFO    ] 200
[2026-06-27 00:47:18,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:47:18,701.701 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:47:18,841.841 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:47:18,843.843 INFO    ] No camera update needed
[2026-06-27 00:47:18,845.845 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:47:18,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:47:18,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:47:18,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:47:20,892.892 INFO    ] ================================================
[2026-06-27 00:47:20,907.907 INFO    ] Launching Daemon at Sat Jun 27 00:47:20 IST 2026
[2026-06-27 00:47:20,918.918 INFO    ] ================================================
[2026-06-27 00:47:21,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:47:21
[2026-06-27 00:47:21,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:47:21,727.727 INFO    ] Initializing speech engine...
[2026-06-27 00:47:21,732.732 INFO    ] 2026-06-27 00:47:21
[2026-06-27 00:47:21,937.937 INFO    ] 2026-06-27 00:47:21
[2026-06-27 00:47:21,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:47:22,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:47:22,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:47:22,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:47:22,355.355 INFO    ] time= 27/06/2026 00:47:22
[2026-06-27 00:47:22,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:47:22,385.385 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:47:22,475.475 INFO    ] No existing commands found in stream
[2026-06-27 00:47:27,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:47:27,487.487 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-27 00:47:31,338.338 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 00:47:31,339.339 INFO    ] Checking for system updates...
[2026-06-27 00:47:31,360.360 INFO    ] 200
[2026-06-27 00:47:31,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:47:31,394.394 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:47:31,396.396 INFO    ] No update needed
[2026-06-27 00:47:31,397.397 INFO    ] Checking for camera pi updates...
[2026-06-27 00:47:31,417.417 INFO    ] 200
[2026-06-27 00:47:31,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:47:31,441.441 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:47:31,495.495 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:47:31,496.496 INFO    ] No camera update needed
[2026-06-27 00:47:31,497.497 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:47:31,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:47:31,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:47:31,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:47:33,536.536 INFO    ] ================================================
[2026-06-27 00:47:33,551.551 INFO    ] Launching Daemon at Sat Jun 27 00:47:33 IST 2026
[2026-06-27 00:47:33,562.562 INFO    ] ================================================
[2026-06-27 00:47:33,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:47:33
[2026-06-27 00:47:34,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:47:34,359.359 INFO    ] Initializing speech engine...
[2026-06-27 00:47:34,369.369 INFO    ] 2026-06-27 00:47:34
[2026-06-27 00:47:34,571.571 INFO    ] 2026-06-27 00:47:34
[2026-06-27 00:47:34,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:47:34,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:47:34,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:47:34,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:47:34,982.982 INFO    ] time= 27/06/2026 00:47:34
[2026-06-27 00:47:35,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:47:35,021.021 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:47:35,087.087 INFO    ] No existing commands found in stream
[2026-06-27 00:47:40,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:47:40,098.098 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-27 00:47:41,800.800 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:47:41,802.802 INFO    ] Checking for system updates...
[2026-06-27 00:47:41,822.822 INFO    ] 200
[2026-06-27 00:47:41,824.824 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:47:41,854.854 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:47:41,855.855 INFO    ] No update needed
[2026-06-27 00:47:41,857.857 INFO    ] Checking for camera pi updates...
[2026-06-27 00:47:41,877.877 INFO    ] 200
[2026-06-27 00:47:41,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:47:41,902.902 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:47:41,934.934 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:47:41,936.936 INFO    ] No camera update needed
[2026-06-27 00:47:41,937.937 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:47:41,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:47:41,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:47:41,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:47:43,982.982 INFO    ] ================================================
[2026-06-27 00:47:44,998.998 INFO    ] Launching Daemon at Sat Jun 27 00:47:43 IST 2026
[2026-06-27 00:47:44,009.009 INFO    ] ================================================
[2026-06-27 00:47:44,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:47:44
[2026-06-27 00:47:44,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:47:44,830.830 INFO    ] Initializing speech engine...
[2026-06-27 00:47:44,835.835 INFO    ] 2026-06-27 00:47:44
[2026-06-27 00:47:45,040.040 INFO    ] 2026-06-27 00:47:45
[2026-06-27 00:47:45,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:47:45,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:47:45,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:47:45,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:47:45,459.459 INFO    ] time= 27/06/2026 00:47:45
[2026-06-27 00:47:45,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:47:45,489.489 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:47:45,605.605 INFO    ] No existing commands found in stream
[2026-06-27 00:47:50,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:47:50,617.617 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-27 00:47:51,776.776 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 00:47:51,778.778 INFO    ] Checking for system updates...
[2026-06-27 00:47:51,798.798 INFO    ] 200
[2026-06-27 00:47:51,800.800 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:47:51,833.833 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:47:51,834.834 INFO    ] No update needed
[2026-06-27 00:47:51,836.836 INFO    ] Checking for camera pi updates...
[2026-06-27 00:47:51,855.855 INFO    ] 200
[2026-06-27 00:47:51,857.857 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:47:51,880.880 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:47:51,908.908 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:47:51,910.910 INFO    ] No camera update needed
[2026-06-27 00:47:51,911.911 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:47:51,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:47:51,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:47:51,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:47:53,956.956 INFO    ] ================================================
[2026-06-27 00:47:53,972.972 INFO    ] Launching Daemon at Sat Jun 27 00:47:53 IST 2026
[2026-06-27 00:47:53,984.984 INFO    ] ================================================
[2026-06-27 00:47:54,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:47:54
[2026-06-27 00:47:54,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:47:54,860.860 INFO    ] Initializing speech engine...
[2026-06-27 00:47:54,863.863 INFO    ] 2026-06-27 00:47:54
[2026-06-27 00:47:55,070.070 INFO    ] 2026-06-27 00:47:55
[2026-06-27 00:47:55,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:47:55,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:47:55,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:47:55,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:47:55,476.476 INFO    ] time= 27/06/2026 00:47:55
[2026-06-27 00:47:55,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:47:55,519.519 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:47:55,609.609 INFO    ] No existing commands found in stream
[2026-06-27 00:48:00,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:48:00,627.627 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-27 00:48:02,789.789 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 00:48:02,790.790 INFO    ] Checking for system updates...
[2026-06-27 00:48:02,816.816 INFO    ] 200
[2026-06-27 00:48:02,818.818 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:48:02,850.850 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:48:02,852.852 INFO    ] No update needed
[2026-06-27 00:48:02,853.853 INFO    ] Checking for camera pi updates...
[2026-06-27 00:48:02,878.878 INFO    ] 200
[2026-06-27 00:48:02,880.880 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:48:02,903.903 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:48:02,932.932 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:48:02,934.934 INFO    ] No camera update needed
[2026-06-27 00:48:02,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:48:02,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:48:02,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:48:02,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:48:04,981.981 INFO    ] ================================================
[2026-06-27 00:48:05,997.997 INFO    ] Launching Daemon at Sat Jun 27 00:48:04 IST 2026
[2026-06-27 00:48:05,009.009 INFO    ] ================================================
[2026-06-27 00:48:05,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:48:05
[2026-06-27 00:48:05,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:48:05,824.824 INFO    ] Initializing speech engine...
[2026-06-27 00:48:05,829.829 INFO    ] 2026-06-27 00:48:05
[2026-06-27 00:48:06,038.038 INFO    ] 2026-06-27 00:48:06
[2026-06-27 00:48:06,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:48:06,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:48:06,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:48:06,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:48:06,454.454 INFO    ] time= 27/06/2026 00:48:06
[2026-06-27 00:48:06,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:48:06,487.487 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:48:06,553.553 INFO    ] No existing commands found in stream
[2026-06-27 00:48:11,562.562 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:48:11,566.566 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-27 00:48:13,868.868 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 00:48:13,870.870 INFO    ] Checking for system updates...
[2026-06-27 00:48:13,891.891 INFO    ] 200
[2026-06-27 00:48:13,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:48:13,923.923 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:48:13,924.924 INFO    ] No update needed
[2026-06-27 00:48:13,926.926 INFO    ] Checking for camera pi updates...
[2026-06-27 00:48:13,945.945 INFO    ] 200
[2026-06-27 00:48:13,947.947 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:48:13,972.972 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:48:14,005.005 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:48:14,006.006 INFO    ] No camera update needed
[2026-06-27 00:48:14,007.007 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:48:14,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:48:14,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:48:14,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:48:16,054.054 INFO    ] ================================================
[2026-06-27 00:48:16,070.070 INFO    ] Launching Daemon at Sat Jun 27 00:48:16 IST 2026
[2026-06-27 00:48:16,081.081 INFO    ] ================================================
[2026-06-27 00:48:16,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:48:16
[2026-06-27 00:48:16,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:48:16,912.912 INFO    ] Initializing speech engine...
[2026-06-27 00:48:16,922.922 INFO    ] 2026-06-27 00:48:16
[2026-06-27 00:48:17,127.127 INFO    ] 2026-06-27 00:48:17
[2026-06-27 00:48:17,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:48:17,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:48:17,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:48:17,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:48:17,565.565 INFO    ] time= 27/06/2026 00:48:17
[2026-06-27 00:48:17,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:48:17,573.573 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:48:17,640.640 INFO    ] No existing commands found in stream
[2026-06-27 00:48:22,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:48:22,652.652 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-27 00:48:25,777.777 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 00:48:25,779.779 INFO    ] Checking for system updates...
[2026-06-27 00:48:25,801.801 INFO    ] 200
[2026-06-27 00:48:25,803.803 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:48:25,836.836 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:48:25,837.837 INFO    ] No update needed
[2026-06-27 00:48:25,839.839 INFO    ] Checking for camera pi updates...
[2026-06-27 00:48:25,860.860 INFO    ] 200
[2026-06-27 00:48:25,862.862 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:48:25,888.888 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:48:25,934.934 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:48:25,935.935 INFO    ] No camera update needed
[2026-06-27 00:48:25,936.936 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:48:25,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:48:25,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:48:25,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:48:27,982.982 INFO    ] ================================================
[2026-06-27 00:48:28,998.998 INFO    ] Launching Daemon at Sat Jun 27 00:48:27 IST 2026
[2026-06-27 00:48:28,009.009 INFO    ] ================================================
[2026-06-27 00:48:28,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:48:28
[2026-06-27 00:48:28,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:48:28,818.818 INFO    ] Initializing speech engine...
[2026-06-27 00:48:28,822.822 INFO    ] 2026-06-27 00:48:28
[2026-06-27 00:48:29,021.021 INFO    ] 2026-06-27 00:48:29
[2026-06-27 00:48:29,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:48:29,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:48:29,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:48:29,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:48:29,474.474 INFO    ] time= 27/06/2026 00:48:29
[2026-06-27 00:48:29,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:48:29,519.519 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:48:29,592.592 INFO    ] No existing commands found in stream
[2026-06-27 00:48:34,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:48:34,619.619 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-27 00:48:35,697.697 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 00:48:35,698.698 INFO    ] Checking for system updates...
[2026-06-27 00:48:35,719.719 INFO    ] 200
[2026-06-27 00:48:35,720.720 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:48:35,752.752 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:48:35,753.753 INFO    ] No update needed
[2026-06-27 00:48:35,754.754 INFO    ] Checking for camera pi updates...
[2026-06-27 00:48:35,775.775 INFO    ] 200
[2026-06-27 00:48:35,776.776 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:48:35,800.800 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:48:35,844.844 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:48:35,846.846 INFO    ] No camera update needed
[2026-06-27 00:48:35,847.847 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:48:35,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:48:35,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:48:35,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:48:37,896.896 INFO    ] ================================================
[2026-06-27 00:48:37,912.912 INFO    ] Launching Daemon at Sat Jun 27 00:48:37 IST 2026
[2026-06-27 00:48:37,922.922 INFO    ] ================================================
[2026-06-27 00:48:38,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:48:38
[2026-06-27 00:48:38,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:48:38,695.695 INFO    ] Initializing speech engine...
[2026-06-27 00:48:38,703.703 INFO    ] 2026-06-27 00:48:38
[2026-06-27 00:48:38,917.917 INFO    ] 2026-06-27 00:48:38
[2026-06-27 00:48:38,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:48:39,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:48:39,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:48:39,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:48:39,328.328 INFO    ] time= 27/06/2026 00:48:39
[2026-06-27 00:48:39,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:48:39,369.369 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:48:39,441.441 INFO    ] No existing commands found in stream
[2026-06-27 00:48:44,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:48:44,458.458 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-27 00:48:48,684.684 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 00:48:48,686.686 INFO    ] Checking for system updates...
[2026-06-27 00:48:48,708.708 INFO    ] 200
[2026-06-27 00:48:48,710.710 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:48:48,744.744 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:48:48,745.745 INFO    ] No update needed
[2026-06-27 00:48:48,747.747 INFO    ] Checking for camera pi updates...
[2026-06-27 00:48:48,767.767 INFO    ] 200
[2026-06-27 00:48:48,769.769 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:48:48,796.796 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:48:48,846.846 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:48:48,847.847 INFO    ] No camera update needed
[2026-06-27 00:48:48,849.849 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:48:48,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:48:48,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:48:48,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:48:50,896.896 INFO    ] ================================================
[2026-06-27 00:48:50,911.911 INFO    ] Launching Daemon at Sat Jun 27 00:48:50 IST 2026
[2026-06-27 00:48:50,922.922 INFO    ] ================================================
[2026-06-27 00:48:51,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:48:51
[2026-06-27 00:48:51,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:48:51,721.721 INFO    ] Initializing speech engine...
[2026-06-27 00:48:51,725.725 INFO    ] 2026-06-27 00:48:51
[2026-06-27 00:48:51,946.946 INFO    ] 2026-06-27 00:48:51
[2026-06-27 00:48:51,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:48:52,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:48:52,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:48:52,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:48:52,369.369 INFO    ] time= 27/06/2026 00:48:52
[2026-06-27 00:48:52,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:48:52,399.399 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:48:52,467.467 INFO    ] No existing commands found in stream
[2026-06-27 00:48:57,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:48:57,484.484 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-27 00:48:59,521.521 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 00:48:59,523.523 INFO    ] Checking for system updates...
[2026-06-27 00:48:59,544.544 INFO    ] 200
[2026-06-27 00:48:59,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:48:59,577.577 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:48:59,579.579 INFO    ] No update needed
[2026-06-27 00:48:59,580.580 INFO    ] Checking for camera pi updates...
[2026-06-27 00:48:59,600.600 INFO    ] 200
[2026-06-27 00:48:59,602.602 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:48:59,625.625 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:48:59,669.669 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:48:59,671.671 INFO    ] No camera update needed
[2026-06-27 00:48:59,672.672 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:48:59,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:48:59,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:48:59,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:49:01,716.716 INFO    ] ================================================
[2026-06-27 00:49:01,728.728 INFO    ] Launching Daemon at Sat Jun 27 00:49:01 IST 2026
[2026-06-27 00:49:01,738.738 INFO    ] ================================================
[2026-06-27 00:49:02,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:49:02
[2026-06-27 00:49:02,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:49:02,542.542 INFO    ] Initializing speech engine...
[2026-06-27 00:49:02,547.547 INFO    ] 2026-06-27 00:49:02
[2026-06-27 00:49:02,763.763 INFO    ] 2026-06-27 00:49:02
[2026-06-27 00:49:02,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:49:02,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:49:02,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:49:03,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:49:03,172.172 INFO    ] time= 27/06/2026 00:49:03
[2026-06-27 00:49:03,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:49:03,213.213 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:49:03,285.285 INFO    ] No existing commands found in stream
[2026-06-27 00:49:08,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:49:08,319.319 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-27 00:49:09,296.296 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:49:09,297.297 INFO    ] Checking for system updates...
[2026-06-27 00:49:09,333.333 INFO    ] 200
[2026-06-27 00:49:09,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-27 00:49:09,336.336 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-27 00:49:09,337.337 INFO    ] Checking for camera pi updates...
[2026-06-27 00:49:09,362.362 INFO    ] 200
[2026-06-27 00:49:09,364.364 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-27 00:49:09,366.366 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-27 00:49:09,367.367 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:49:09,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:49:09,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:49:09,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:49:11,407.407 INFO    ] ================================================
[2026-06-27 00:49:11,422.422 INFO    ] Launching Daemon at Sat Jun 27 00:49:11 IST 2026
[2026-06-27 00:49:11,433.433 INFO    ] ================================================
[2026-06-27 00:49:11,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:49:11
[2026-06-27 00:49:12,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:49:12,257.257 INFO    ] Initializing speech engine...
[2026-06-27 00:49:12,262.262 INFO    ] 2026-06-27 00:49:12
[2026-06-27 00:49:12,466.466 INFO    ] 2026-06-27 00:49:12
[2026-06-27 00:49:12,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:49:12,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:49:12,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:49:12,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:49:12,885.885 INFO    ] time= 27/06/2026 00:49:12
[2026-06-27 00:49:12,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:49:12,913.913 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:49:12,979.979 INFO    ] No existing commands found in stream
[2026-06-27 00:49:17,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:49:17,991.991 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-27 00:49:19,189.189 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 00:49:19,190.190 INFO    ] Checking for system updates...
[2026-06-27 00:49:19,211.211 INFO    ] 200
[2026-06-27 00:49:19,212.212 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:49:19,247.247 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:49:19,248.248 INFO    ] No update needed
[2026-06-27 00:49:19,249.249 INFO    ] Checking for camera pi updates...
[2026-06-27 00:49:19,269.269 INFO    ] 200
[2026-06-27 00:49:19,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:49:19,294.294 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:49:19,335.335 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:49:19,337.337 INFO    ] No camera update needed
[2026-06-27 00:49:19,338.338 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:49:19,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:49:19,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:49:19,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:49:21,386.386 INFO    ] ================================================
[2026-06-27 00:49:21,401.401 INFO    ] Launching Daemon at Sat Jun 27 00:49:21 IST 2026
[2026-06-27 00:49:21,412.412 INFO    ] ================================================
[2026-06-27 00:49:21,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:49:21
[2026-06-27 00:49:22,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:49:22,223.223 INFO    ] Initializing speech engine...
[2026-06-27 00:49:22,227.227 INFO    ] 2026-06-27 00:49:22
[2026-06-27 00:49:22,434.434 INFO    ] 2026-06-27 00:49:22
[2026-06-27 00:49:22,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:49:22,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:49:22,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:49:22,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:49:22,864.864 INFO    ] time= 27/06/2026 00:49:22
[2026-06-27 00:49:22,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:49:22,890.890 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:49:22,962.962 INFO    ] No existing commands found in stream
[2026-06-27 00:49:27,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:49:27,974.974 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-27 00:49:31,698.698 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 00:49:31,700.700 INFO    ] Checking for system updates...
[2026-06-27 00:49:31,723.723 INFO    ] 200
[2026-06-27 00:49:31,725.725 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:49:31,763.763 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:49:31,765.765 INFO    ] No update needed
[2026-06-27 00:49:31,767.767 INFO    ] Checking for camera pi updates...
[2026-06-27 00:49:31,794.794 INFO    ] 200
[2026-06-27 00:49:31,795.795 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:49:31,834.834 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:49:31,969.969 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:49:31,970.970 INFO    ] No camera update needed
[2026-06-27 00:49:31,972.972 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:49:31,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:49:31,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:49:31,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:49:34,019.019 INFO    ] ================================================
[2026-06-27 00:49:34,035.035 INFO    ] Launching Daemon at Sat Jun 27 00:49:34 IST 2026
[2026-06-27 00:49:34,046.046 INFO    ] ================================================
[2026-06-27 00:49:34,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:49:34
[2026-06-27 00:49:34,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:49:34,842.842 INFO    ] Initializing speech engine...
[2026-06-27 00:49:34,847.847 INFO    ] 2026-06-27 00:49:34
[2026-06-27 00:49:35,054.054 INFO    ] 2026-06-27 00:49:35
[2026-06-27 00:49:35,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:49:35,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:49:35,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:49:35,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:49:35,483.483 INFO    ] time= 27/06/2026 00:49:35
[2026-06-27 00:49:35,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:49:35,514.514 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:49:35,582.582 INFO    ] No existing commands found in stream
[2026-06-27 00:49:40,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:49:40,594.594 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-27 00:49:43,012.012 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 00:49:43,014.014 INFO    ] Checking for system updates...
[2026-06-27 00:49:43,037.037 INFO    ] 200
[2026-06-27 00:49:43,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:49:43,069.069 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:49:43,070.070 INFO    ] No update needed
[2026-06-27 00:49:43,072.072 INFO    ] Checking for camera pi updates...
[2026-06-27 00:49:43,091.091 INFO    ] 200
[2026-06-27 00:49:43,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:49:43,120.120 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:49:43,161.161 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:49:43,162.162 INFO    ] No camera update needed
[2026-06-27 00:49:43,164.164 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:49:43,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:49:43,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:49:43,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:49:45,210.210 INFO    ] ================================================
[2026-06-27 00:49:45,225.225 INFO    ] Launching Daemon at Sat Jun 27 00:49:45 IST 2026
[2026-06-27 00:49:45,236.236 INFO    ] ================================================
[2026-06-27 00:49:45,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:49:45
[2026-06-27 00:49:45,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:49:46,042.042 INFO    ] Initializing speech engine...
[2026-06-27 00:49:46,047.047 INFO    ] 2026-06-27 00:49:46
[2026-06-27 00:49:46,252.252 INFO    ] 2026-06-27 00:49:46
[2026-06-27 00:49:46,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:49:46,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:49:46,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:49:46,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:49:46,655.655 INFO    ] time= 27/06/2026 00:49:46
[2026-06-27 00:49:46,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:49:46,706.706 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:49:46,777.777 INFO    ] No existing commands found in stream
[2026-06-27 00:49:51,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:49:51,791.791 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-27 00:49:55,248.248 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 00:49:55,249.249 INFO    ] Checking for system updates...
[2026-06-27 00:49:55,271.271 INFO    ] 200
[2026-06-27 00:49:55,272.272 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:49:55,303.303 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:49:55,304.304 INFO    ] No update needed
[2026-06-27 00:49:55,305.305 INFO    ] Checking for camera pi updates...
[2026-06-27 00:49:55,325.325 INFO    ] 200
[2026-06-27 00:49:55,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:49:55,350.350 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:49:55,396.396 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:49:55,397.397 INFO    ] No camera update needed
[2026-06-27 00:49:55,398.398 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:49:55,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:49:55,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:49:55,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:49:57,445.445 INFO    ] ================================================
[2026-06-27 00:49:57,460.460 INFO    ] Launching Daemon at Sat Jun 27 00:49:57 IST 2026
[2026-06-27 00:49:57,471.471 INFO    ] ================================================
[2026-06-27 00:49:57,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:49:57
[2026-06-27 00:49:58,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:49:58,373.373 INFO    ] Initializing speech engine...
[2026-06-27 00:49:58,378.378 INFO    ] 2026-06-27 00:49:58
[2026-06-27 00:49:58,587.587 INFO    ] 2026-06-27 00:49:58
[2026-06-27 00:49:58,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:49:58,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:49:58,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:49:58,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:49:59,020.020 INFO    ] time= 27/06/2026 00:49:58
[2026-06-27 00:49:59,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:49:59,049.049 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:49:59,117.117 INFO    ] No existing commands found in stream
[2026-06-27 00:50:04,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:50:04,145.145 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-27 00:50:08,494.494 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 00:50:08,496.496 INFO    ] Checking for system updates...
[2026-06-27 00:50:08,518.518 INFO    ] 200
[2026-06-27 00:50:08,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:50:08,554.554 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:50:08,556.556 INFO    ] No update needed
[2026-06-27 00:50:08,557.557 INFO    ] Checking for camera pi updates...
[2026-06-27 00:50:08,577.577 INFO    ] 200
[2026-06-27 00:50:08,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:50:08,606.606 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:50:08,638.638 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:50:08,639.639 INFO    ] No camera update needed
[2026-06-27 00:50:08,640.640 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:50:08,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:50:08,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:50:08,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:50:10,686.686 INFO    ] ================================================
[2026-06-27 00:50:10,701.701 INFO    ] Launching Daemon at Sat Jun 27 00:50:10 IST 2026
[2026-06-27 00:50:10,712.712 INFO    ] ================================================
[2026-06-27 00:50:11,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:50:11
[2026-06-27 00:50:11,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:50:11,515.515 INFO    ] Initializing speech engine...
[2026-06-27 00:50:11,520.520 INFO    ] 2026-06-27 00:50:11
[2026-06-27 00:50:11,723.723 INFO    ] 2026-06-27 00:50:11
[2026-06-27 00:50:11,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:50:11,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:50:11,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:50:12,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:50:12,126.126 INFO    ] time= 27/06/2026 00:50:12
[2026-06-27 00:50:12,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:50:12,164.164 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:50:12,236.236 INFO    ] No existing commands found in stream
[2026-06-27 00:50:17,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:50:17,248.248 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-27 00:50:18,771.771 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:50:18,773.773 INFO    ] Checking for system updates...
[2026-06-27 00:50:18,794.794 INFO    ] 200
[2026-06-27 00:50:18,795.795 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:50:18,829.829 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:50:18,830.830 INFO    ] No update needed
[2026-06-27 00:50:18,832.832 INFO    ] Checking for camera pi updates...
[2026-06-27 00:50:18,854.854 INFO    ] 200
[2026-06-27 00:50:18,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:50:18,880.880 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:50:18,929.929 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:50:18,930.930 INFO    ] No camera update needed
[2026-06-27 00:50:18,931.931 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:50:18,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:50:18,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:50:18,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:50:20,983.983 INFO    ] ================================================
[2026-06-27 00:50:21,999.999 INFO    ] Launching Daemon at Sat Jun 27 00:50:20 IST 2026
[2026-06-27 00:50:21,011.011 INFO    ] ================================================
[2026-06-27 00:50:21,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:50:21
[2026-06-27 00:50:21,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:50:21,811.811 INFO    ] Initializing speech engine...
[2026-06-27 00:50:21,817.817 INFO    ] 2026-06-27 00:50:21
[2026-06-27 00:50:22,022.022 INFO    ] 2026-06-27 00:50:22
[2026-06-27 00:50:22,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:50:22,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:50:22,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:50:22,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:50:22,442.442 INFO    ] time= 27/06/2026 00:50:22
[2026-06-27 00:50:22,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:50:22,470.470 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:50:22,536.536 INFO    ] No existing commands found in stream
[2026-06-27 00:50:27,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:50:27,553.553 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-27 00:50:28,737.737 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:50:28,739.739 INFO    ] Checking for system updates...
[2026-06-27 00:50:28,759.759 INFO    ] 200
[2026-06-27 00:50:28,764.764 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:50:28,801.801 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:50:28,803.803 INFO    ] No update needed
[2026-06-27 00:50:28,805.805 INFO    ] Checking for camera pi updates...
[2026-06-27 00:50:28,826.826 INFO    ] 200
[2026-06-27 00:50:28,828.828 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:50:28,852.852 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:50:28,896.896 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:50:28,897.897 INFO    ] No camera update needed
[2026-06-27 00:50:28,899.899 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:50:28,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:50:28,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:50:28,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:50:30,946.946 INFO    ] ================================================
[2026-06-27 00:50:30,962.962 INFO    ] Launching Daemon at Sat Jun 27 00:50:30 IST 2026
[2026-06-27 00:50:30,973.973 INFO    ] ================================================
[2026-06-27 00:50:31,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:50:31
[2026-06-27 00:50:31,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:50:31,854.854 INFO    ] Initializing speech engine...
[2026-06-27 00:50:31,860.860 INFO    ] 2026-06-27 00:50:31
[2026-06-27 00:50:32,082.082 INFO    ] 2026-06-27 00:50:32
[2026-06-27 00:50:32,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:50:32,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:50:32,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:50:32,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:50:32,523.523 INFO    ] time= 27/06/2026 00:50:32
[2026-06-27 00:50:32,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:50:32,580.580 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:50:32,656.656 INFO    ] No existing commands found in stream
[2026-06-27 00:50:37,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:50:37,670.670 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-27 00:50:38,323.323 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:50:38,325.325 INFO    ] Checking for system updates...
[2026-06-27 00:50:38,348.348 INFO    ] 200
[2026-06-27 00:50:38,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:50:38,383.383 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:50:38,384.384 INFO    ] No update needed
[2026-06-27 00:50:38,386.386 INFO    ] Checking for camera pi updates...
[2026-06-27 00:50:38,407.407 INFO    ] 200
[2026-06-27 00:50:38,409.409 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:50:38,437.437 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:50:38,480.480 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:50:38,481.481 INFO    ] No camera update needed
[2026-06-27 00:50:38,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:50:38,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:50:38,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:50:38,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:50:40,538.538 INFO    ] ================================================
[2026-06-27 00:50:40,554.554 INFO    ] Launching Daemon at Sat Jun 27 00:50:40 IST 2026
[2026-06-27 00:50:40,565.565 INFO    ] ================================================
[2026-06-27 00:50:40,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:50:40
[2026-06-27 00:50:41,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:50:41,464.464 INFO    ] Initializing speech engine...
[2026-06-27 00:50:41,471.471 INFO    ] 2026-06-27 00:50:41
[2026-06-27 00:50:41,675.675 INFO    ] 2026-06-27 00:50:41
[2026-06-27 00:50:41,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:50:41,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:50:41,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:50:42,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:50:42,099.099 INFO    ] time= 27/06/2026 00:50:42
[2026-06-27 00:50:42,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:50:42,133.133 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:50:42,225.225 INFO    ] No existing commands found in stream
[2026-06-27 00:50:47,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:50:47,248.248 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-27 00:50:48,187.187 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 00:50:48,189.189 INFO    ] Checking for system updates...
[2026-06-27 00:50:48,211.211 INFO    ] 200
[2026-06-27 00:50:48,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:50:48,244.244 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:50:48,246.246 INFO    ] No update needed
[2026-06-27 00:50:48,247.247 INFO    ] Checking for camera pi updates...
[2026-06-27 00:50:48,267.267 INFO    ] 200
[2026-06-27 00:50:48,268.268 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:50:48,292.292 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:50:48,346.346 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:50:48,347.347 INFO    ] No camera update needed
[2026-06-27 00:50:48,348.348 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:50:48,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:50:48,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:50:48,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:50:50,394.394 INFO    ] ================================================
[2026-06-27 00:50:50,411.411 INFO    ] Launching Daemon at Sat Jun 27 00:50:50 IST 2026
[2026-06-27 00:50:50,422.422 INFO    ] ================================================
[2026-06-27 00:50:50,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:50:50
[2026-06-27 00:50:51,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:50:51,305.305 INFO    ] Initializing speech engine...
[2026-06-27 00:50:51,311.311 INFO    ] 2026-06-27 00:50:51
[2026-06-27 00:50:51,522.522 INFO    ] 2026-06-27 00:50:51
[2026-06-27 00:50:51,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:50:51,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:50:51,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:50:51,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:50:51,946.946 INFO    ] time= 27/06/2026 00:50:51
[2026-06-27 00:50:51,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:50:51,979.979 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:50:52,071.071 INFO    ] No existing commands found in stream
[2026-06-27 00:50:57,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:50:57,089.089 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-27 00:50:59,688.688 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 00:50:59,690.690 INFO    ] Checking for system updates...
[2026-06-27 00:50:59,711.711 INFO    ] 200
[2026-06-27 00:50:59,713.713 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:50:59,744.744 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:50:59,746.746 INFO    ] No update needed
[2026-06-27 00:50:59,747.747 INFO    ] Checking for camera pi updates...
[2026-06-27 00:50:59,767.767 INFO    ] 200
[2026-06-27 00:50:59,769.769 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:50:59,793.793 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:50:59,838.838 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:50:59,840.840 INFO    ] No camera update needed
[2026-06-27 00:50:59,841.841 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:50:59,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:50:59,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:50:59,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:51:01,894.894 INFO    ] ================================================
[2026-06-27 00:51:01,916.916 INFO    ] Launching Daemon at Sat Jun 27 00:51:01 IST 2026
[2026-06-27 00:51:01,929.929 INFO    ] ================================================
[2026-06-27 00:51:02,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:51:02
[2026-06-27 00:51:02,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:51:02,893.893 INFO    ] Initializing speech engine...
[2026-06-27 00:51:02,899.899 INFO    ] 2026-06-27 00:51:02
[2026-06-27 00:51:03,108.108 INFO    ] 2026-06-27 00:51:03
[2026-06-27 00:51:03,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:51:03,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:51:03,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:51:03,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:51:03,552.552 INFO    ] time= 27/06/2026 00:51:03
[2026-06-27 00:51:03,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:51:03,561.561 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:51:03,628.628 INFO    ] No existing commands found in stream
[2026-06-27 00:51:08,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:51:08,646.646 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-27 00:51:11,722.722 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 00:51:11,724.724 INFO    ] Checking for system updates...
[2026-06-27 00:51:11,746.746 INFO    ] 200
[2026-06-27 00:51:11,747.747 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:51:11,778.778 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:51:11,779.779 INFO    ] No update needed
[2026-06-27 00:51:11,780.780 INFO    ] Checking for camera pi updates...
[2026-06-27 00:51:11,801.801 INFO    ] 200
[2026-06-27 00:51:11,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:51:11,826.826 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:51:11,874.874 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:51:11,876.876 INFO    ] No camera update needed
[2026-06-27 00:51:11,877.877 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:51:11,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:51:11,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:51:11,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:51:13,922.922 INFO    ] ================================================
[2026-06-27 00:51:13,939.939 INFO    ] Launching Daemon at Sat Jun 27 00:51:13 IST 2026
[2026-06-27 00:51:13,950.950 INFO    ] ================================================
[2026-06-27 00:51:14,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:51:14
[2026-06-27 00:51:14,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:51:14,747.747 INFO    ] Initializing speech engine...
[2026-06-27 00:51:14,753.753 INFO    ] 2026-06-27 00:51:14
[2026-06-27 00:51:14,958.958 INFO    ] 2026-06-27 00:51:14
[2026-06-27 00:51:14,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:51:15,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:51:15,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:51:15,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:51:15,366.366 INFO    ] time= 27/06/2026 00:51:15
[2026-06-27 00:51:15,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:51:15,404.404 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:51:15,495.495 INFO    ] No existing commands found in stream
[2026-06-27 00:51:20,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:51:20,507.507 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-27 00:51:23,870.870 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 00:51:23,871.871 INFO    ] Checking for system updates...
[2026-06-27 00:51:23,892.892 INFO    ] 200
[2026-06-27 00:51:23,893.893 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:51:23,924.924 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:51:23,926.926 INFO    ] No update needed
[2026-06-27 00:51:23,927.927 INFO    ] Checking for camera pi updates...
[2026-06-27 00:51:23,947.947 INFO    ] 200
[2026-06-27 00:51:23,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:51:23,981.981 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:51:24,031.031 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:51:24,032.032 INFO    ] No camera update needed
[2026-06-27 00:51:24,034.034 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:51:24,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:51:24,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:51:24,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:51:26,078.078 INFO    ] ================================================
[2026-06-27 00:51:26,094.094 INFO    ] Launching Daemon at Sat Jun 27 00:51:26 IST 2026
[2026-06-27 00:51:26,105.105 INFO    ] ================================================
[2026-06-27 00:51:26,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:51:26
[2026-06-27 00:51:26,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:51:26,878.878 INFO    ] Initializing speech engine...
[2026-06-27 00:51:26,883.883 INFO    ] 2026-06-27 00:51:26
[2026-06-27 00:51:27,084.084 INFO    ] 2026-06-27 00:51:27
[2026-06-27 00:51:27,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:51:28,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:51:28,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:51:28,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:51:28,539.539 INFO    ] time= 27/06/2026 00:51:28
[2026-06-27 00:51:28,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:51:28,553.553 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:51:28,606.606 INFO    ] No existing commands found in stream
[2026-06-27 00:51:33,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:51:33,618.618 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-27 00:51:36,245.245 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 00:51:36,247.247 INFO    ] Checking for system updates...
[2026-06-27 00:51:36,267.267 INFO    ] 200
[2026-06-27 00:51:36,268.268 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:51:36,301.301 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:51:36,302.302 INFO    ] No update needed
[2026-06-27 00:51:36,304.304 INFO    ] Checking for camera pi updates...
[2026-06-27 00:51:36,323.323 INFO    ] 200
[2026-06-27 00:51:36,325.325 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:51:36,350.350 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:51:36,392.392 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:51:36,393.393 INFO    ] No camera update needed
[2026-06-27 00:51:36,395.395 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:51:36,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:51:36,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:51:36,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:51:38,440.440 INFO    ] ================================================
[2026-06-27 00:51:38,456.456 INFO    ] Launching Daemon at Sat Jun 27 00:51:38 IST 2026
[2026-06-27 00:51:38,467.467 INFO    ] ================================================
[2026-06-27 00:51:38,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:51:38
[2026-06-27 00:51:39,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:51:39,298.298 INFO    ] Initializing speech engine...
[2026-06-27 00:51:39,303.303 INFO    ] 2026-06-27 00:51:39
[2026-06-27 00:51:39,509.509 INFO    ] 2026-06-27 00:51:39
[2026-06-27 00:51:39,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:51:39,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:51:39,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:51:39,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:51:39,931.931 INFO    ] time= 27/06/2026 00:51:39
[2026-06-27 00:51:39,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:51:39,960.960 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:51:40,029.029 INFO    ] No existing commands found in stream
[2026-06-27 00:51:45,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:51:45,046.046 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-27 00:51:48,888.888 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 00:51:48,889.889 INFO    ] Checking for system updates...
[2026-06-27 00:51:48,910.910 INFO    ] 200
[2026-06-27 00:51:48,911.911 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:51:48,944.944 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:51:48,946.946 INFO    ] No update needed
[2026-06-27 00:51:48,947.947 INFO    ] Checking for camera pi updates...
[2026-06-27 00:51:48,967.967 INFO    ] 200
[2026-06-27 00:51:48,968.968 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:51:48,992.992 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:51:49,045.045 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:51:49,051.051 INFO    ] No camera update needed
[2026-06-27 00:51:49,053.053 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:51:49,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:51:49,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:51:49,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:51:51,101.101 INFO    ] ================================================
[2026-06-27 00:51:51,117.117 INFO    ] Launching Daemon at Sat Jun 27 00:51:51 IST 2026
[2026-06-27 00:51:51,128.128 INFO    ] ================================================
[2026-06-27 00:51:51,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:51:51
[2026-06-27 00:51:51,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:51:51,943.943 INFO    ] Initializing speech engine...
[2026-06-27 00:51:51,949.949 INFO    ] 2026-06-27 00:51:51
[2026-06-27 00:51:52,156.156 INFO    ] 2026-06-27 00:51:52
[2026-06-27 00:51:52,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:51:52,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:51:52,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:51:52,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:51:52,583.583 INFO    ] time= 27/06/2026 00:51:52
[2026-06-27 00:51:52,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:51:52,612.612 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:51:52,678.678 INFO    ] No existing commands found in stream
[2026-06-27 00:51:57,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:51:57,691.691 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-27 00:51:59,978.978 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 00:51:59,979.979 INFO    ] Checking for system updates...
[2026-06-27 00:52:00,001.001 INFO    ] 200
[2026-06-27 00:52:00,002.002 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:52:00,035.035 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:52:00,037.037 INFO    ] No update needed
[2026-06-27 00:52:00,038.038 INFO    ] Checking for camera pi updates...
[2026-06-27 00:52:00,057.057 INFO    ] 200
[2026-06-27 00:52:00,059.059 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:52:00,082.082 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:52:00,138.138 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:52:00,140.140 INFO    ] No camera update needed
[2026-06-27 00:52:00,141.141 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:52:00,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:52:00,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:52:00,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:52:02,182.182 INFO    ] ================================================
[2026-06-27 00:52:02,196.196 INFO    ] Launching Daemon at Sat Jun 27 00:52:02 IST 2026
[2026-06-27 00:52:02,208.208 INFO    ] ================================================
[2026-06-27 00:52:02,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:52:02
[2026-06-27 00:52:03,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:52:03,157.157 INFO    ] Initializing speech engine...
[2026-06-27 00:52:03,170.170 INFO    ] 2026-06-27 00:52:03
[2026-06-27 00:52:03,378.378 INFO    ] 2026-06-27 00:52:03
[2026-06-27 00:52:03,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:52:03,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:52:03,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:52:03,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:52:03,797.797 INFO    ] time= 27/06/2026 00:52:03
[2026-06-27 00:52:03,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:52:03,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:52:03,923.923 INFO    ] No existing commands found in stream
[2026-06-27 00:52:08,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:52:08,935.935 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-27 00:52:11,408.408 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 00:52:11,409.409 INFO    ] Checking for system updates...
[2026-06-27 00:52:11,431.431 INFO    ] 200
[2026-06-27 00:52:11,432.432 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:52:11,465.465 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:52:11,466.466 INFO    ] No update needed
[2026-06-27 00:52:11,467.467 INFO    ] Checking for camera pi updates...
[2026-06-27 00:52:11,487.487 INFO    ] 200
[2026-06-27 00:52:11,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:52:11,514.514 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:52:11,561.561 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:52:11,562.562 INFO    ] No camera update needed
[2026-06-27 00:52:11,564.564 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:52:11,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:52:11,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:52:11,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:52:13,605.605 INFO    ] ================================================
[2026-06-27 00:52:13,613.613 INFO    ] Launching Daemon at Sat Jun 27 00:52:13 IST 2026
[2026-06-27 00:52:13,620.620 INFO    ] ================================================
[2026-06-27 00:52:13,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:52:13
[2026-06-27 00:52:14,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:52:14,433.433 INFO    ] Initializing speech engine...
[2026-06-27 00:52:14,438.438 INFO    ] 2026-06-27 00:52:14
[2026-06-27 00:52:14,650.650 INFO    ] 2026-06-27 00:52:14
[2026-06-27 00:52:14,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:52:14,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:52:14,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:52:15,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:52:15,075.075 INFO    ] time= 27/06/2026 00:52:15
[2026-06-27 00:52:15,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:52:15,106.106 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:52:15,174.174 INFO    ] No existing commands found in stream
[2026-06-27 00:52:20,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:52:20,192.192 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-27 00:52:21,574.574 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 00:52:21,575.575 INFO    ] Checking for system updates...
[2026-06-27 00:52:21,597.597 INFO    ] 200
[2026-06-27 00:52:21,599.599 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:52:21,631.631 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:52:21,633.633 INFO    ] No update needed
[2026-06-27 00:52:21,634.634 INFO    ] Checking for camera pi updates...
[2026-06-27 00:52:21,654.654 INFO    ] 200
[2026-06-27 00:52:21,655.655 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:52:21,679.679 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:52:21,725.725 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:52:21,727.727 INFO    ] No camera update needed
[2026-06-27 00:52:21,728.728 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:52:21,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:52:21,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:52:21,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:52:23,774.774 INFO    ] ================================================
[2026-06-27 00:52:23,789.789 INFO    ] Launching Daemon at Sat Jun 27 00:52:23 IST 2026
[2026-06-27 00:52:23,801.801 INFO    ] ================================================
[2026-06-27 00:52:24,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:52:24
[2026-06-27 00:52:24,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:52:24,650.650 INFO    ] Initializing speech engine...
[2026-06-27 00:52:24,664.664 INFO    ] 2026-06-27 00:52:24
[2026-06-27 00:52:24,893.893 INFO    ] 2026-06-27 00:52:24
[2026-06-27 00:52:24,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:52:25,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:52:25,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:52:25,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:52:25,295.295 INFO    ] time= 27/06/2026 00:52:25
[2026-06-27 00:52:25,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:52:25,347.347 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:52:25,420.420 INFO    ] No existing commands found in stream
[2026-06-27 00:52:30,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:52:30,428.428 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-27 00:52:34,158.158 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 00:52:34,160.160 INFO    ] Checking for system updates...
[2026-06-27 00:52:34,186.186 INFO    ] 200
[2026-06-27 00:52:34,187.187 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:52:34,221.221 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:52:34,223.223 INFO    ] No update needed
[2026-06-27 00:52:34,225.225 INFO    ] Checking for camera pi updates...
[2026-06-27 00:52:34,252.252 INFO    ] 200
[2026-06-27 00:52:34,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:52:34,278.278 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:52:34,334.334 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:52:34,336.336 INFO    ] No camera update needed
[2026-06-27 00:52:34,337.337 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:52:34,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:52:34,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:52:34,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:52:36,387.387 INFO    ] ================================================
[2026-06-27 00:52:36,402.402 INFO    ] Launching Daemon at Sat Jun 27 00:52:36 IST 2026
[2026-06-27 00:52:36,412.412 INFO    ] ================================================
[2026-06-27 00:52:36,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:52:36
[2026-06-27 00:52:37,072.072 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:52:37,210.210 INFO    ] Initializing speech engine...
[2026-06-27 00:52:37,220.220 INFO    ] 2026-06-27 00:52:37
[2026-06-27 00:52:37,423.423 INFO    ] 2026-06-27 00:52:37
[2026-06-27 00:52:37,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:52:37,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:52:37,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:52:37,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:52:37,844.844 INFO    ] time= 27/06/2026 00:52:37
[2026-06-27 00:52:37,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:52:37,872.872 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:52:37,937.937 INFO    ] No existing commands found in stream
[2026-06-27 00:52:42,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:52:42,951.951 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-27 00:52:45,703.703 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 00:52:45,705.705 INFO    ] Checking for system updates...
[2026-06-27 00:52:45,726.726 INFO    ] 200
[2026-06-27 00:52:45,727.727 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:52:45,758.758 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:52:45,759.759 INFO    ] No update needed
[2026-06-27 00:52:45,761.761 INFO    ] Checking for camera pi updates...
[2026-06-27 00:52:45,781.781 INFO    ] 200
[2026-06-27 00:52:45,783.783 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:52:45,814.814 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:52:45,859.859 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:52:45,861.861 INFO    ] No camera update needed
[2026-06-27 00:52:45,862.862 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:52:45,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:52:45,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:52:45,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:52:47,909.909 INFO    ] ================================================
[2026-06-27 00:52:47,924.924 INFO    ] Launching Daemon at Sat Jun 27 00:52:47 IST 2026
[2026-06-27 00:52:47,935.935 INFO    ] ================================================
[2026-06-27 00:52:48,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:52:48
[2026-06-27 00:52:48,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:52:48,738.738 INFO    ] Initializing speech engine...
[2026-06-27 00:52:48,747.747 INFO    ] 2026-06-27 00:52:48
[2026-06-27 00:52:48,953.953 INFO    ] 2026-06-27 00:52:48
[2026-06-27 00:52:48,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:52:49,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:52:49,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:52:49,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:52:49,358.358 INFO    ] time= 27/06/2026 00:52:49
[2026-06-27 00:52:49,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:52:49,403.403 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:52:49,474.474 INFO    ] No existing commands found in stream
[2026-06-27 00:52:54,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:52:54,488.488 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-27 00:52:56,443.443 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:52:56,445.445 INFO    ] Checking for system updates...
[2026-06-27 00:52:56,466.466 INFO    ] 200
[2026-06-27 00:52:56,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:52:56,499.499 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:52:56,500.500 INFO    ] No update needed
[2026-06-27 00:52:56,502.502 INFO    ] Checking for camera pi updates...
[2026-06-27 00:52:56,522.522 INFO    ] 200
[2026-06-27 00:52:56,524.524 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:52:56,550.550 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:52:56,591.591 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:52:56,592.592 INFO    ] No camera update needed
[2026-06-27 00:52:56,594.594 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:52:56,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:52:56,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:52:56,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:52:58,633.633 INFO    ] ================================================
[2026-06-27 00:52:58,642.642 INFO    ] Launching Daemon at Sat Jun 27 00:52:58 IST 2026
[2026-06-27 00:52:58,648.648 INFO    ] ================================================
[2026-06-27 00:52:59,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:52:59
[2026-06-27 00:52:59,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:52:59,503.503 INFO    ] Initializing speech engine...
[2026-06-27 00:52:59,508.508 INFO    ] 2026-06-27 00:52:59
[2026-06-27 00:52:59,713.713 INFO    ] 2026-06-27 00:52:59
[2026-06-27 00:52:59,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:52:59,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:52:59,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:53:00,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:53:00,188.188 INFO    ] time= 27/06/2026 00:53:00
[2026-06-27 00:53:00,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:53:00,246.246 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:53:00,312.312 INFO    ] No existing commands found in stream
[2026-06-27 00:53:05,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:53:05,319.319 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-27 00:53:08,309.309 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:53:08,311.311 INFO    ] Checking for system updates...
[2026-06-27 00:53:08,332.332 INFO    ] 200
[2026-06-27 00:53:08,333.333 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:53:08,365.365 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:53:08,366.366 INFO    ] No update needed
[2026-06-27 00:53:08,367.367 INFO    ] Checking for camera pi updates...
[2026-06-27 00:53:08,389.389 INFO    ] 200
[2026-06-27 00:53:08,391.391 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:53:08,416.416 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:53:08,460.460 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:53:08,461.461 INFO    ] No camera update needed
[2026-06-27 00:53:08,463.463 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:53:08,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:53:08,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:53:08,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:53:10,509.509 INFO    ] ================================================
[2026-06-27 00:53:10,525.525 INFO    ] Launching Daemon at Sat Jun 27 00:53:10 IST 2026
[2026-06-27 00:53:10,537.537 INFO    ] ================================================
[2026-06-27 00:53:10,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:53:10
[2026-06-27 00:53:11,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:53:11,371.371 INFO    ] Initializing speech engine...
[2026-06-27 00:53:11,383.383 INFO    ] 2026-06-27 00:53:11
[2026-06-27 00:53:11,593.593 INFO    ] 2026-06-27 00:53:11
[2026-06-27 00:53:11,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:53:11,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:53:11,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:53:11,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:53:12,008.008 INFO    ] time= 27/06/2026 00:53:11
[2026-06-27 00:53:12,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:53:12,038.038 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:53:12,106.106 INFO    ] No existing commands found in stream
[2026-06-27 00:53:17,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:53:17,119.119 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-27 00:53:22,784.784 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:53:22,785.785 INFO    ] Checking for system updates...
[2026-06-27 00:53:22,806.806 INFO    ] 200
[2026-06-27 00:53:22,808.808 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:53:22,838.838 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:53:22,839.839 INFO    ] No update needed
[2026-06-27 00:53:22,840.840 INFO    ] Checking for camera pi updates...
[2026-06-27 00:53:22,864.864 INFO    ] 200
[2026-06-27 00:53:22,865.865 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:53:22,888.888 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:53:22,930.930 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:53:22,931.931 INFO    ] No camera update needed
[2026-06-27 00:53:22,933.933 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:53:22,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:53:22,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:53:22,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:53:24,979.979 INFO    ] ================================================
[2026-06-27 00:53:25,995.995 INFO    ] Launching Daemon at Sat Jun 27 00:53:24 IST 2026
[2026-06-27 00:53:25,007.007 INFO    ] ================================================
[2026-06-27 00:53:25,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:53:25
[2026-06-27 00:53:25,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:53:25,864.864 INFO    ] Initializing speech engine...
[2026-06-27 00:53:25,869.869 INFO    ] 2026-06-27 00:53:25
[2026-06-27 00:53:26,083.083 INFO    ] 2026-06-27 00:53:26
[2026-06-27 00:53:26,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:53:26,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:53:26,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:53:26,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:53:26,489.489 INFO    ] time= 27/06/2026 00:53:26
[2026-06-27 00:53:26,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:53:26,528.528 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:53:26,599.599 INFO    ] No existing commands found in stream
[2026-06-27 00:53:31,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:53:31,615.615 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-27 00:53:34,721.721 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 00:53:34,723.723 INFO    ] Checking for system updates...
[2026-06-27 00:53:34,744.744 INFO    ] 200
[2026-06-27 00:53:34,746.746 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:53:34,777.777 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:53:34,778.778 INFO    ] No update needed
[2026-06-27 00:53:34,780.780 INFO    ] Checking for camera pi updates...
[2026-06-27 00:53:34,799.799 INFO    ] 200
[2026-06-27 00:53:34,801.801 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:53:34,824.824 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:53:34,964.964 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:53:34,966.966 INFO    ] No camera update needed
[2026-06-27 00:53:34,967.967 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:53:34,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:53:34,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:53:34,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:53:37,014.014 INFO    ] ================================================
[2026-06-27 00:53:37,030.030 INFO    ] Launching Daemon at Sat Jun 27 00:53:37 IST 2026
[2026-06-27 00:53:37,042.042 INFO    ] ================================================
[2026-06-27 00:53:37,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:53:37
[2026-06-27 00:53:37,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:53:37,894.894 INFO    ] Initializing speech engine...
[2026-06-27 00:53:37,902.902 INFO    ] 2026-06-27 00:53:37
[2026-06-27 00:53:38,109.109 INFO    ] 2026-06-27 00:53:38
[2026-06-27 00:53:38,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:53:38,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:53:38,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:53:38,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:53:38,520.520 INFO    ] time= 27/06/2026 00:53:38
[2026-06-27 00:53:38,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:53:38,558.558 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:53:38,626.626 INFO    ] No existing commands found in stream
[2026-06-27 00:53:43,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:53:43,638.638 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-27 00:53:45,994.994 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 00:53:45,996.996 INFO    ] Checking for system updates...
[2026-06-27 00:53:46,017.017 INFO    ] 200
[2026-06-27 00:53:46,018.018 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:53:46,051.051 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:53:46,053.053 INFO    ] No update needed
[2026-06-27 00:53:46,054.054 INFO    ] Checking for camera pi updates...
[2026-06-27 00:53:46,075.075 INFO    ] 200
[2026-06-27 00:53:46,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:53:46,100.100 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:53:46,144.144 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:53:46,146.146 INFO    ] No camera update needed
[2026-06-27 00:53:46,147.147 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:53:46,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:53:46,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:53:46,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:53:48,194.194 INFO    ] ================================================
[2026-06-27 00:53:48,210.210 INFO    ] Launching Daemon at Sat Jun 27 00:53:48 IST 2026
[2026-06-27 00:53:48,220.220 INFO    ] ================================================
[2026-06-27 00:53:48,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:53:48
[2026-06-27 00:53:48,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:53:49,010.010 INFO    ] Initializing speech engine...
[2026-06-27 00:53:49,016.016 INFO    ] 2026-06-27 00:53:49
[2026-06-27 00:53:49,219.219 INFO    ] 2026-06-27 00:53:49
[2026-06-27 00:53:49,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:53:49,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:53:49,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:53:49,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:53:49,627.627 INFO    ] time= 27/06/2026 00:53:49
[2026-06-27 00:53:49,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:53:49,666.666 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:53:49,732.732 INFO    ] No existing commands found in stream
[2026-06-27 00:53:54,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:53:54,749.749 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-27 00:53:56,393.393 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 00:53:56,395.395 INFO    ] Checking for system updates...
[2026-06-27 00:53:56,415.415 INFO    ] 200
[2026-06-27 00:53:56,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:53:56,449.449 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:53:56,451.451 INFO    ] No update needed
[2026-06-27 00:53:56,452.452 INFO    ] Checking for camera pi updates...
[2026-06-27 00:53:56,471.471 INFO    ] 200
[2026-06-27 00:53:56,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:53:56,496.496 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:53:56,549.549 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:53:56,550.550 INFO    ] No camera update needed
[2026-06-27 00:53:56,552.552 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:53:56,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:53:56,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:53:56,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:53:58,598.598 INFO    ] ================================================
[2026-06-27 00:53:58,614.614 INFO    ] Launching Daemon at Sat Jun 27 00:53:58 IST 2026
[2026-06-27 00:53:58,624.624 INFO    ] ================================================
[2026-06-27 00:53:58,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:53:58
[2026-06-27 00:53:59,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:53:59,415.415 INFO    ] Initializing speech engine...
[2026-06-27 00:53:59,424.424 INFO    ] 2026-06-27 00:53:59
[2026-06-27 00:53:59,639.639 INFO    ] 2026-06-27 00:53:59
[2026-06-27 00:53:59,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:53:59,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:53:59,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:53:59,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:54:00,057.057 INFO    ] time= 27/06/2026 00:54:00
[2026-06-27 00:54:00,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:54:00,097.097 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:54:00,166.166 INFO    ] No existing commands found in stream
[2026-06-27 00:54:05,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:54:05,179.179 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-27 00:54:07,984.984 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:54:07,985.985 INFO    ] Checking for system updates...
[2026-06-27 00:54:08,006.006 INFO    ] 200
[2026-06-27 00:54:08,007.007 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:54:08,042.042 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:54:08,044.044 INFO    ] No update needed
[2026-06-27 00:54:08,046.046 INFO    ] Checking for camera pi updates...
[2026-06-27 00:54:08,065.065 INFO    ] 200
[2026-06-27 00:54:08,067.067 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:54:08,092.092 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:54:08,143.143 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:54:08,144.144 INFO    ] No camera update needed
[2026-06-27 00:54:08,146.146 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:54:08,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:54:08,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:54:08,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:54:10,191.191 INFO    ] ================================================
[2026-06-27 00:54:10,207.207 INFO    ] Launching Daemon at Sat Jun 27 00:54:10 IST 2026
[2026-06-27 00:54:10,218.218 INFO    ] ================================================
[2026-06-27 00:54:10,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:54:10
[2026-06-27 00:54:10,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:54:11,019.019 INFO    ] Initializing speech engine...
[2026-06-27 00:54:11,027.027 INFO    ] 2026-06-27 00:54:11
[2026-06-27 00:54:11,240.240 INFO    ] 2026-06-27 00:54:11
[2026-06-27 00:54:11,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:54:11,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:54:11,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:54:11,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:54:11,662.662 INFO    ] time= 27/06/2026 00:54:11
[2026-06-27 00:54:11,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:54:11,697.697 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:54:11,765.765 INFO    ] No existing commands found in stream
[2026-06-27 00:54:16,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:54:16,782.782 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-27 00:54:17,428.428 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 00:54:17,430.430 INFO    ] Checking for system updates...
[2026-06-27 00:54:17,451.451 INFO    ] 200
[2026-06-27 00:54:17,452.452 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:54:17,483.483 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:54:17,484.484 INFO    ] No update needed
[2026-06-27 00:54:17,486.486 INFO    ] Checking for camera pi updates...
[2026-06-27 00:54:17,506.506 INFO    ] 200
[2026-06-27 00:54:17,507.507 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:54:17,531.531 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:54:17,578.578 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:54:17,579.579 INFO    ] No camera update needed
[2026-06-27 00:54:17,580.580 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:54:17,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:54:17,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:54:17,587.587 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:54:19,626.626 INFO    ] ================================================
[2026-06-27 00:54:19,641.641 INFO    ] Launching Daemon at Sat Jun 27 00:54:19 IST 2026
[2026-06-27 00:54:19,653.653 INFO    ] ================================================
[2026-06-27 00:54:20,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:54:20
[2026-06-27 00:54:20,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:54:20,502.502 INFO    ] Initializing speech engine...
[2026-06-27 00:54:20,515.515 INFO    ] 2026-06-27 00:54:20
[2026-06-27 00:54:20,729.729 INFO    ] 2026-06-27 00:54:20
[2026-06-27 00:54:20,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:54:20,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:54:20,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:54:21,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:54:21,156.156 INFO    ] time= 27/06/2026 00:54:21
[2026-06-27 00:54:21,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:54:21,187.187 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:54:21,255.255 INFO    ] No existing commands found in stream
[2026-06-27 00:54:26,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:54:26,267.267 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-27 00:54:28,444.444 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 00:54:28,446.446 INFO    ] Checking for system updates...
[2026-06-27 00:54:28,467.467 INFO    ] 200
[2026-06-27 00:54:28,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:54:28,502.502 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:54:28,504.504 INFO    ] No update needed
[2026-06-27 00:54:28,505.505 INFO    ] Checking for camera pi updates...
[2026-06-27 00:54:28,527.527 INFO    ] 200
[2026-06-27 00:54:28,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:54:28,554.554 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:54:28,598.598 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:54:28,599.599 INFO    ] No camera update needed
[2026-06-27 00:54:28,600.600 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:54:28,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:54:28,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:54:28,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:54:30,645.645 INFO    ] ================================================
[2026-06-27 00:54:30,661.661 INFO    ] Launching Daemon at Sat Jun 27 00:54:30 IST 2026
[2026-06-27 00:54:30,672.672 INFO    ] ================================================
[2026-06-27 00:54:30,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:54:30
[2026-06-27 00:54:31,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:54:31,469.469 INFO    ] Initializing speech engine...
[2026-06-27 00:54:31,481.481 INFO    ] 2026-06-27 00:54:31
[2026-06-27 00:54:31,679.679 INFO    ] 2026-06-27 00:54:31
[2026-06-27 00:54:31,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:54:31,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:54:31,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:54:32,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:54:32,167.167 INFO    ] time= 27/06/2026 00:54:32
[2026-06-27 00:54:32,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:54:32,250.250 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:54:32,320.320 INFO    ] No existing commands found in stream
[2026-06-27 00:54:37,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:54:37,334.334 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-27 00:54:41,110.110 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 00:54:41,112.112 INFO    ] Checking for system updates...
[2026-06-27 00:54:41,134.134 INFO    ] 200
[2026-06-27 00:54:41,136.136 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:54:41,166.166 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:54:41,168.168 INFO    ] No update needed
[2026-06-27 00:54:41,169.169 INFO    ] Checking for camera pi updates...
[2026-06-27 00:54:41,188.188 INFO    ] 200
[2026-06-27 00:54:41,190.190 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:54:41,215.215 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:54:41,258.258 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:54:41,259.259 INFO    ] No camera update needed
[2026-06-27 00:54:41,260.260 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:54:41,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:54:41,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:54:41,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:54:43,308.308 INFO    ] ================================================
[2026-06-27 00:54:43,323.323 INFO    ] Launching Daemon at Sat Jun 27 00:54:43 IST 2026
[2026-06-27 00:54:43,335.335 INFO    ] ================================================
[2026-06-27 00:54:43,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:54:43
[2026-06-27 00:54:44,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:54:44,174.174 INFO    ] Initializing speech engine...
[2026-06-27 00:54:44,180.180 INFO    ] 2026-06-27 00:54:44
[2026-06-27 00:54:44,388.388 INFO    ] 2026-06-27 00:54:44
[2026-06-27 00:54:44,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:54:44,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:54:44,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:54:44,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:54:44,789.789 INFO    ] time= 27/06/2026 00:54:44
[2026-06-27 00:54:44,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:54:44,835.835 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:54:44,906.906 INFO    ] No existing commands found in stream
[2026-06-27 00:54:49,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:54:49,919.919 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-27 00:54:51,831.831 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 00:54:51,833.833 INFO    ] Checking for system updates...
[2026-06-27 00:54:51,854.854 INFO    ] 200
[2026-06-27 00:54:51,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:54:51,888.888 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:54:51,889.889 INFO    ] No update needed
[2026-06-27 00:54:51,891.891 INFO    ] Checking for camera pi updates...
[2026-06-27 00:54:51,911.911 INFO    ] 200
[2026-06-27 00:54:51,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:54:51,938.938 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:54:51,982.982 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:54:51,983.983 INFO    ] No camera update needed
[2026-06-27 00:54:51,985.985 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:54:51,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:54:51,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:54:51,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:54:54,031.031 INFO    ] ================================================
[2026-06-27 00:54:54,046.046 INFO    ] Launching Daemon at Sat Jun 27 00:54:54 IST 2026
[2026-06-27 00:54:54,057.057 INFO    ] ================================================
[2026-06-27 00:54:54,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:54:54
[2026-06-27 00:54:54,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:54:54,855.855 INFO    ] Initializing speech engine...
[2026-06-27 00:54:54,861.861 INFO    ] 2026-06-27 00:54:54
[2026-06-27 00:54:55,066.066 INFO    ] 2026-06-27 00:54:55
[2026-06-27 00:54:55,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:54:55,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:54:55,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:54:55,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:54:55,486.486 INFO    ] time= 27/06/2026 00:54:55
[2026-06-27 00:54:55,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:54:55,514.514 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:54:55,580.580 INFO    ] No existing commands found in stream
[2026-06-27 00:55:00,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:55:00,589.589 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-27 00:55:01,582.582 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 00:55:01,584.584 INFO    ] Checking for system updates...
[2026-06-27 00:55:01,641.641 INFO    ] 200
[2026-06-27 00:55:01,650.650 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:55:01,768.768 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:55:01,771.771 INFO    ] No update needed
[2026-06-27 00:55:01,794.794 INFO    ] Checking for camera pi updates...
[2026-06-27 00:55:01,885.885 INFO    ] 200
[2026-06-27 00:55:01,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:55:02,021.021 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:55:02,066.066 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:55:02,068.068 INFO    ] No camera update needed
[2026-06-27 00:55:02,070.070 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:55:02,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:55:02,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:55:02,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:55:04,111.111 INFO    ] ================================================
[2026-06-27 00:55:04,127.127 INFO    ] Launching Daemon at Sat Jun 27 00:55:04 IST 2026
[2026-06-27 00:55:04,138.138 INFO    ] ================================================
[2026-06-27 00:55:04,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:55:04
[2026-06-27 00:55:04,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:55:04,938.938 INFO    ] Initializing speech engine...
[2026-06-27 00:55:04,943.943 INFO    ] 2026-06-27 00:55:04
[2026-06-27 00:55:05,149.149 INFO    ] 2026-06-27 00:55:05
[2026-06-27 00:55:05,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:55:05,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:55:05,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:55:05,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:55:05,476.476 INFO    ] time= 27/06/2026 00:55:05
[2026-06-27 00:55:05,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:55:05,479.479 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:55:05,538.538 INFO    ] No existing commands found in stream
[2026-06-27 00:55:10,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:55:10,549.549 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-27 00:55:12,028.028 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:55:12,030.030 INFO    ] Checking for system updates...
[2026-06-27 00:55:12,051.051 INFO    ] 200
[2026-06-27 00:55:12,052.052 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:55:12,085.085 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:55:12,087.087 INFO    ] No update needed
[2026-06-27 00:55:12,088.088 INFO    ] Checking for camera pi updates...
[2026-06-27 00:55:12,109.109 INFO    ] 200
[2026-06-27 00:55:12,110.110 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:55:12,135.135 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:55:12,187.187 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:55:12,188.188 INFO    ] No camera update needed
[2026-06-27 00:55:12,189.189 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:55:12,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:55:12,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:55:12,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:55:14,235.235 INFO    ] ================================================
[2026-06-27 00:55:14,250.250 INFO    ] Launching Daemon at Sat Jun 27 00:55:14 IST 2026
[2026-06-27 00:55:14,261.261 INFO    ] ================================================
[2026-06-27 00:55:14,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:55:14
[2026-06-27 00:55:14,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:55:15,049.049 INFO    ] Initializing speech engine...
[2026-06-27 00:55:15,057.057 INFO    ] 2026-06-27 00:55:15
[2026-06-27 00:55:15,262.262 INFO    ] 2026-06-27 00:55:15
[2026-06-27 00:55:15,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:55:15,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:55:15,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:55:15,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:55:15,684.684 INFO    ] time= 27/06/2026 00:55:15
[2026-06-27 00:55:15,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:55:15,711.711 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:55:15,778.778 INFO    ] No existing commands found in stream
[2026-06-27 00:55:20,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:55:20,795.795 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-27 00:55:24,334.334 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 00:55:24,335.335 INFO    ] Checking for system updates...
[2026-06-27 00:55:24,356.356 INFO    ] 200
[2026-06-27 00:55:24,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:55:24,388.388 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:55:24,389.389 INFO    ] No update needed
[2026-06-27 00:55:24,391.391 INFO    ] Checking for camera pi updates...
[2026-06-27 00:55:24,410.410 INFO    ] 200
[2026-06-27 00:55:24,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:55:24,436.436 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:55:24,489.489 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:55:24,490.490 INFO    ] No camera update needed
[2026-06-27 00:55:24,492.492 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:55:24,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:55:24,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:55:24,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:55:26,538.538 INFO    ] ================================================
[2026-06-27 00:55:26,553.553 INFO    ] Launching Daemon at Sat Jun 27 00:55:26 IST 2026
[2026-06-27 00:55:26,564.564 INFO    ] ================================================
[2026-06-27 00:55:26,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:55:26
[2026-06-27 00:55:27,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:55:27,341.341 INFO    ] Initializing speech engine...
[2026-06-27 00:55:27,353.353 INFO    ] 2026-06-27 00:55:27
[2026-06-27 00:55:27,560.560 INFO    ] 2026-06-27 00:55:27
[2026-06-27 00:55:27,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:55:28,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:55:28,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:55:28,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:55:28,484.484 INFO    ] time= 27/06/2026 00:55:28
[2026-06-27 00:55:28,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:55:28,490.490 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:55:28,571.571 INFO    ] No existing commands found in stream
[2026-06-27 00:55:33,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:55:33,579.579 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-27 00:55:36,604.604 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 00:55:36,606.606 INFO    ] Checking for system updates...
[2026-06-27 00:55:36,627.627 INFO    ] 200
[2026-06-27 00:55:36,629.629 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:55:36,662.662 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:55:36,663.663 INFO    ] No update needed
[2026-06-27 00:55:36,665.665 INFO    ] Checking for camera pi updates...
[2026-06-27 00:55:36,686.686 INFO    ] 200
[2026-06-27 00:55:36,687.687 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:55:36,710.710 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:55:36,853.853 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:55:36,854.854 INFO    ] No camera update needed
[2026-06-27 00:55:36,856.856 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:55:36,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:55:36,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:55:36,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:55:38,901.901 INFO    ] ================================================
[2026-06-27 00:55:38,917.917 INFO    ] Launching Daemon at Sat Jun 27 00:55:38 IST 2026
[2026-06-27 00:55:38,928.928 INFO    ] ================================================
[2026-06-27 00:55:39,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:55:39
[2026-06-27 00:55:39,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:55:39,750.750 INFO    ] Initializing speech engine...
[2026-06-27 00:55:39,756.756 INFO    ] 2026-06-27 00:55:39
[2026-06-27 00:55:39,960.960 INFO    ] 2026-06-27 00:55:39
[2026-06-27 00:55:39,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:55:40,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:55:40,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:55:40,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:55:40,379.379 INFO    ] time= 27/06/2026 00:55:40
[2026-06-27 00:55:40,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:55:40,412.412 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:55:40,478.478 INFO    ] No existing commands found in stream
[2026-06-27 00:55:45,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:55:45,491.491 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-27 00:55:49,464.464 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 00:55:49,465.465 INFO    ] Checking for system updates...
[2026-06-27 00:55:49,487.487 INFO    ] 200
[2026-06-27 00:55:49,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:55:49,521.521 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:55:49,523.523 INFO    ] No update needed
[2026-06-27 00:55:49,524.524 INFO    ] Checking for camera pi updates...
[2026-06-27 00:55:49,545.545 INFO    ] 200
[2026-06-27 00:55:49,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:55:49,570.570 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:55:49,610.610 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:55:49,612.612 INFO    ] No camera update needed
[2026-06-27 00:55:49,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:55:49,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:55:49,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:55:49,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:55:51,659.659 INFO    ] ================================================
[2026-06-27 00:55:51,676.676 INFO    ] Launching Daemon at Sat Jun 27 00:55:51 IST 2026
[2026-06-27 00:55:51,687.687 INFO    ] ================================================
[2026-06-27 00:55:52,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:55:52
[2026-06-27 00:55:52,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:55:52,509.509 INFO    ] Initializing speech engine...
[2026-06-27 00:55:52,522.522 INFO    ] 2026-06-27 00:55:52
[2026-06-27 00:55:52,730.730 INFO    ] 2026-06-27 00:55:52
[2026-06-27 00:55:52,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:55:52,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:55:52,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:55:53,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:55:53,146.146 INFO    ] time= 27/06/2026 00:55:53
[2026-06-27 00:55:53,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:55:53,175.175 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:55:53,246.246 INFO    ] No existing commands found in stream
[2026-06-27 00:55:58,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:55:58,258.258 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-27 00:56:00,174.174 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 00:56:00,176.176 INFO    ] Checking for system updates...
[2026-06-27 00:56:00,202.202 INFO    ] 200
[2026-06-27 00:56:00,204.204 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:56:00,239.239 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:56:00,241.241 INFO    ] No update needed
[2026-06-27 00:56:00,242.242 INFO    ] Checking for camera pi updates...
[2026-06-27 00:56:00,261.261 INFO    ] 200
[2026-06-27 00:56:00,263.263 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:56:00,287.287 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:56:00,329.329 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:56:00,331.331 INFO    ] No camera update needed
[2026-06-27 00:56:00,332.332 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:56:00,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:56:00,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:56:00,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:56:02,373.373 INFO    ] ================================================
[2026-06-27 00:56:02,388.388 INFO    ] Launching Daemon at Sat Jun 27 00:56:02 IST 2026
[2026-06-27 00:56:02,396.396 INFO    ] ================================================
[2026-06-27 00:56:02,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:56:02
[2026-06-27 00:56:03,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:56:03,311.311 INFO    ] Initializing speech engine...
[2026-06-27 00:56:03,321.321 INFO    ] 2026-06-27 00:56:03
[2026-06-27 00:56:03,534.534 INFO    ] 2026-06-27 00:56:03
[2026-06-27 00:56:03,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:56:03,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:56:03,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:56:03,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:56:03,966.966 INFO    ] time= 27/06/2026 00:56:03
[2026-06-27 00:56:03,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:56:03,996.996 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:56:04,064.064 INFO    ] No existing commands found in stream
[2026-06-27 00:56:09,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:56:09,082.082 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-27 00:56:09,740.740 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 00:56:09,742.742 INFO    ] Checking for system updates...
[2026-06-27 00:56:09,763.763 INFO    ] 200
[2026-06-27 00:56:09,765.765 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:56:09,795.795 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:56:09,797.797 INFO    ] No update needed
[2026-06-27 00:56:09,798.798 INFO    ] Checking for camera pi updates...
[2026-06-27 00:56:09,819.819 INFO    ] 200
[2026-06-27 00:56:09,820.820 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:56:09,845.845 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:56:09,896.896 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:56:09,898.898 INFO    ] No camera update needed
[2026-06-27 00:56:09,899.899 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:56:09,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:56:09,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:56:09,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:56:11,946.946 INFO    ] ================================================
[2026-06-27 00:56:11,962.962 INFO    ] Launching Daemon at Sat Jun 27 00:56:11 IST 2026
[2026-06-27 00:56:11,973.973 INFO    ] ================================================
[2026-06-27 00:56:12,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:56:12
[2026-06-27 00:56:12,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:56:12,828.828 INFO    ] Initializing speech engine...
[2026-06-27 00:56:12,833.833 INFO    ] 2026-06-27 00:56:12
[2026-06-27 00:56:13,036.036 INFO    ] 2026-06-27 00:56:13
[2026-06-27 00:56:13,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:56:13,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:56:13,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:56:13,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:56:13,447.447 INFO    ] time= 27/06/2026 00:56:13
[2026-06-27 00:56:13,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:56:13,486.486 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:56:13,552.552 INFO    ] No existing commands found in stream
[2026-06-27 00:56:18,562.562 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:56:18,565.565 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-27 00:56:19,864.864 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:56:19,865.865 INFO    ] Checking for system updates...
[2026-06-27 00:56:19,886.886 INFO    ] 200
[2026-06-27 00:56:19,888.888 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:56:19,918.918 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:56:19,920.920 INFO    ] No update needed
[2026-06-27 00:56:19,921.921 INFO    ] Checking for camera pi updates...
[2026-06-27 00:56:19,946.946 INFO    ] 200
[2026-06-27 00:56:19,947.947 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:56:19,972.972 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:56:20,013.013 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:56:20,015.015 INFO    ] No camera update needed
[2026-06-27 00:56:20,016.016 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:56:20,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:56:20,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:56:20,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:56:22,063.063 INFO    ] ================================================
[2026-06-27 00:56:22,078.078 INFO    ] Launching Daemon at Sat Jun 27 00:56:22 IST 2026
[2026-06-27 00:56:22,089.089 INFO    ] ================================================
[2026-06-27 00:56:22,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:56:22
[2026-06-27 00:56:22,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:56:22,914.914 INFO    ] Initializing speech engine...
[2026-06-27 00:56:22,924.924 INFO    ] 2026-06-27 00:56:22
[2026-06-27 00:56:23,144.144 INFO    ] 2026-06-27 00:56:23
[2026-06-27 00:56:23,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:56:23,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:56:23,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:56:23,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:56:23,579.579 INFO    ] time= 27/06/2026 00:56:23
[2026-06-27 00:56:23,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:56:23,636.636 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:56:23,709.709 INFO    ] No existing commands found in stream
[2026-06-27 00:56:28,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:56:28,721.721 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-27 00:56:31,691.691 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 00:56:31,693.693 INFO    ] Checking for system updates...
[2026-06-27 00:56:31,713.713 INFO    ] 200
[2026-06-27 00:56:31,715.715 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:56:31,747.747 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:56:31,748.748 INFO    ] No update needed
[2026-06-27 00:56:31,749.749 INFO    ] Checking for camera pi updates...
[2026-06-27 00:56:31,771.771 INFO    ] 200
[2026-06-27 00:56:31,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:56:31,797.797 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:56:31,826.826 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:56:31,827.827 INFO    ] No camera update needed
[2026-06-27 00:56:31,829.829 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:56:31,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:56:31,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:56:31,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:56:33,867.867 INFO    ] ================================================
[2026-06-27 00:56:33,882.882 INFO    ] Launching Daemon at Sat Jun 27 00:56:33 IST 2026
[2026-06-27 00:56:33,893.893 INFO    ] ================================================
[2026-06-27 00:56:34,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:56:34
[2026-06-27 00:56:34,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:56:34,780.780 INFO    ] Initializing speech engine...
[2026-06-27 00:56:34,787.787 INFO    ] 2026-06-27 00:56:34
[2026-06-27 00:56:35,000.000 INFO    ] 2026-06-27 00:56:34
[2026-06-27 00:56:35,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:56:35,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:56:35,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:56:35,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:56:35,426.426 INFO    ] time= 27/06/2026 00:56:35
[2026-06-27 00:56:35,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:56:35,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:56:35,531.531 INFO    ] No existing commands found in stream
[2026-06-27 00:56:40,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:56:40,549.549 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-27 00:56:41,164.164 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 00:56:41,166.166 INFO    ] Checking for system updates...
[2026-06-27 00:56:41,187.187 INFO    ] 200
[2026-06-27 00:56:41,188.188 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:56:41,221.221 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:56:41,223.223 INFO    ] No update needed
[2026-06-27 00:56:41,224.224 INFO    ] Checking for camera pi updates...
[2026-06-27 00:56:41,246.246 INFO    ] 200
[2026-06-27 00:56:41,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:56:41,272.272 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:56:41,313.313 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:56:41,315.315 INFO    ] No camera update needed
[2026-06-27 00:56:41,316.316 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:56:41,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:56:41,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:56:41,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:56:43,361.361 INFO    ] ================================================
[2026-06-27 00:56:43,376.376 INFO    ] Launching Daemon at Sat Jun 27 00:56:43 IST 2026
[2026-06-27 00:56:43,387.387 INFO    ] ================================================
[2026-06-27 00:56:43,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:56:43
[2026-06-27 00:56:44,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:56:44,165.165 INFO    ] Initializing speech engine...
[2026-06-27 00:56:44,169.169 INFO    ] 2026-06-27 00:56:44
[2026-06-27 00:56:44,367.367 INFO    ] 2026-06-27 00:56:44
[2026-06-27 00:56:44,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:56:44,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:56:44,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:56:44,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:56:44,850.850 INFO    ] time= 27/06/2026 00:56:44
[2026-06-27 00:56:44,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:56:44,891.891 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:56:44,963.963 INFO    ] No existing commands found in stream
[2026-06-27 00:56:49,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:56:49,977.977 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-27 00:56:53,636.636 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 00:56:53,638.638 INFO    ] Checking for system updates...
[2026-06-27 00:56:53,658.658 INFO    ] 200
[2026-06-27 00:56:53,660.660 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:56:53,694.694 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:56:53,695.695 INFO    ] No update needed
[2026-06-27 00:56:53,697.697 INFO    ] Checking for camera pi updates...
[2026-06-27 00:56:53,717.717 INFO    ] 200
[2026-06-27 00:56:53,719.719 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:56:53,742.742 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:56:53,781.781 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:56:53,782.782 INFO    ] No camera update needed
[2026-06-27 00:56:53,784.784 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:56:53,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:56:53,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:56:53,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:56:55,830.830 INFO    ] ================================================
[2026-06-27 00:56:55,845.845 INFO    ] Launching Daemon at Sat Jun 27 00:56:55 IST 2026
[2026-06-27 00:56:55,856.856 INFO    ] ================================================
[2026-06-27 00:56:56,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:56:56
[2026-06-27 00:56:56,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:56:56,755.755 INFO    ] Initializing speech engine...
[2026-06-27 00:56:56,761.761 INFO    ] 2026-06-27 00:56:56
[2026-06-27 00:56:56,970.970 INFO    ] 2026-06-27 00:56:56
[2026-06-27 00:56:56,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:56:58,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:56:58,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:56:58,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:56:58,331.331 INFO    ] time= 27/06/2026 00:56:58
[2026-06-27 00:56:58,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:56:58,343.343 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:56:58,397.397 INFO    ] No existing commands found in stream
[2026-06-27 00:57:03,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:57:03,409.409 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-27 00:57:06,391.391 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:57:06,392.392 INFO    ] Checking for system updates...
[2026-06-27 00:57:06,415.415 INFO    ] 200
[2026-06-27 00:57:06,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:57:06,450.450 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:57:06,452.452 INFO    ] No update needed
[2026-06-27 00:57:06,453.453 INFO    ] Checking for camera pi updates...
[2026-06-27 00:57:06,473.473 INFO    ] 200
[2026-06-27 00:57:06,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:57:06,501.501 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:57:06,527.527 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:57:06,529.529 INFO    ] No camera update needed
[2026-06-27 00:57:06,530.530 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:57:06,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:57:06,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:57:06,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:57:08,575.575 INFO    ] ================================================
[2026-06-27 00:57:08,591.591 INFO    ] Launching Daemon at Sat Jun 27 00:57:08 IST 2026
[2026-06-27 00:57:08,601.601 INFO    ] ================================================
[2026-06-27 00:57:08,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:57:08
[2026-06-27 00:57:09,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:57:09,420.420 INFO    ] Initializing speech engine...
[2026-06-27 00:57:09,431.431 INFO    ] 2026-06-27 00:57:09
[2026-06-27 00:57:09,634.634 INFO    ] 2026-06-27 00:57:09
[2026-06-27 00:57:09,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:57:09,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:57:09,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:57:09,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:57:10,050.050 INFO    ] time= 27/06/2026 00:57:09
[2026-06-27 00:57:10,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:57:10,083.083 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:57:10,150.150 INFO    ] No existing commands found in stream
[2026-06-27 00:57:15,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:57:15,162.162 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-27 00:57:18,183.183 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 00:57:18,184.184 INFO    ] Checking for system updates...
[2026-06-27 00:57:18,206.206 INFO    ] 200
[2026-06-27 00:57:18,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:57:18,241.241 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:57:18,242.242 INFO    ] No update needed
[2026-06-27 00:57:18,244.244 INFO    ] Checking for camera pi updates...
[2026-06-27 00:57:18,265.265 INFO    ] 200
[2026-06-27 00:57:18,266.266 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:57:18,291.291 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:57:18,332.332 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:57:18,333.333 INFO    ] No camera update needed
[2026-06-27 00:57:18,335.335 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:57:18,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:57:18,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:57:18,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:57:20,382.382 INFO    ] ================================================
[2026-06-27 00:57:20,397.397 INFO    ] Launching Daemon at Sat Jun 27 00:57:20 IST 2026
[2026-06-27 00:57:20,408.408 INFO    ] ================================================
[2026-06-27 00:57:20,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:57:20
[2026-06-27 00:57:21,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:57:21,230.230 INFO    ] Initializing speech engine...
[2026-06-27 00:57:21,235.235 INFO    ] 2026-06-27 00:57:21
[2026-06-27 00:57:21,440.440 INFO    ] 2026-06-27 00:57:21
[2026-06-27 00:57:21,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:57:21,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:57:21,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:57:21,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:57:21,845.845 INFO    ] time= 27/06/2026 00:57:21
[2026-06-27 00:57:21,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:57:21,884.884 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:57:21,980.980 INFO    ] No existing commands found in stream
[2026-06-27 00:57:26,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:57:26,997.997 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-27 00:57:28,274.274 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 00:57:28,276.276 INFO    ] Checking for system updates...
[2026-06-27 00:57:28,299.299 INFO    ] 200
[2026-06-27 00:57:28,300.300 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:57:28,333.333 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:57:28,334.334 INFO    ] No update needed
[2026-06-27 00:57:28,335.335 INFO    ] Checking for camera pi updates...
[2026-06-27 00:57:28,355.355 INFO    ] 200
[2026-06-27 00:57:28,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:57:28,380.380 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:57:28,413.413 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:57:28,414.414 INFO    ] No camera update needed
[2026-06-27 00:57:28,416.416 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:57:28,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:57:28,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:57:28,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:57:30,465.465 INFO    ] ================================================
[2026-06-27 00:57:30,481.481 INFO    ] Launching Daemon at Sat Jun 27 00:57:30 IST 2026
[2026-06-27 00:57:30,492.492 INFO    ] ================================================
[2026-06-27 00:57:30,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:57:30
[2026-06-27 00:57:31,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:57:31,369.369 INFO    ] Initializing speech engine...
[2026-06-27 00:57:31,378.378 INFO    ] 2026-06-27 00:57:31
[2026-06-27 00:57:31,601.601 INFO    ] 2026-06-27 00:57:31
[2026-06-27 00:57:31,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:57:31,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:57:31,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:57:31,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:57:32,034.034 INFO    ] time= 27/06/2026 00:57:31
[2026-06-27 00:57:32,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:57:32,050.050 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:57:32,105.105 INFO    ] No existing commands found in stream
[2026-06-27 00:57:37,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:57:37,147.147 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-27 00:57:38,839.839 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 00:57:38,841.841 INFO    ] Checking for system updates...
[2026-06-27 00:57:38,863.863 INFO    ] 200
[2026-06-27 00:57:38,865.865 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:57:38,898.898 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:57:38,899.899 INFO    ] No update needed
[2026-06-27 00:57:38,901.901 INFO    ] Checking for camera pi updates...
[2026-06-27 00:57:38,921.921 INFO    ] 200
[2026-06-27 00:57:38,923.923 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:57:38,948.948 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:57:39,091.091 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:57:39,093.093 INFO    ] No camera update needed
[2026-06-27 00:57:39,094.094 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:57:39,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:57:39,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:57:39,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:57:41,140.140 INFO    ] ================================================
[2026-06-27 00:57:41,155.155 INFO    ] Launching Daemon at Sat Jun 27 00:57:41 IST 2026
[2026-06-27 00:57:41,166.166 INFO    ] ================================================
[2026-06-27 00:57:41,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:57:41
[2026-06-27 00:57:41,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:57:41,971.971 INFO    ] Initializing speech engine...
[2026-06-27 00:57:41,985.985 INFO    ] 2026-06-27 00:57:41
[2026-06-27 00:57:42,189.189 INFO    ] 2026-06-27 00:57:42
[2026-06-27 00:57:42,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:57:42,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:57:42,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:57:42,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:57:42,859.859 INFO    ] time= 27/06/2026 00:57:42
[2026-06-27 00:57:42,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:57:42,865.865 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:57:42,927.927 INFO    ] No existing commands found in stream
[2026-06-27 00:57:47,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:57:47,939.939 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-27 00:57:49,706.706 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:57:49,708.708 INFO    ] Checking for system updates...
[2026-06-27 00:57:49,731.731 INFO    ] 200
[2026-06-27 00:57:49,732.732 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:57:49,766.766 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:57:49,767.767 INFO    ] No update needed
[2026-06-27 00:57:49,768.768 INFO    ] Checking for camera pi updates...
[2026-06-27 00:57:49,789.789 INFO    ] 200
[2026-06-27 00:57:49,791.791 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:57:49,816.816 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:57:49,856.856 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:57:49,857.857 INFO    ] No camera update needed
[2026-06-27 00:57:49,858.858 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:57:49,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:57:49,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:57:49,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:57:51,906.906 INFO    ] ================================================
[2026-06-27 00:57:51,921.921 INFO    ] Launching Daemon at Sat Jun 27 00:57:51 IST 2026
[2026-06-27 00:57:51,932.932 INFO    ] ================================================
[2026-06-27 00:57:52,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:57:52
[2026-06-27 00:57:52,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:57:52,750.750 INFO    ] Initializing speech engine...
[2026-06-27 00:57:52,756.756 INFO    ] 2026-06-27 00:57:52
[2026-06-27 00:57:52,963.963 INFO    ] 2026-06-27 00:57:52
[2026-06-27 00:57:52,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:57:53,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:57:53,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:57:53,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:57:53,381.381 INFO    ] time= 27/06/2026 00:57:53
[2026-06-27 00:57:53,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:57:53,407.407 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:57:53,501.501 INFO    ] No existing commands found in stream
[2026-06-27 00:57:58,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:57:58,518.518 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-27 00:58:02,811.811 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 00:58:02,813.813 INFO    ] Checking for system updates...
[2026-06-27 00:58:02,833.833 INFO    ] 200
[2026-06-27 00:58:02,835.835 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:58:02,869.869 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:58:02,870.870 INFO    ] No update needed
[2026-06-27 00:58:02,871.871 INFO    ] Checking for camera pi updates...
[2026-06-27 00:58:02,892.892 INFO    ] 200
[2026-06-27 00:58:02,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:58:02,920.920 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:58:02,948.948 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:58:02,950.950 INFO    ] No camera update needed
[2026-06-27 00:58:02,953.953 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:58:02,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:58:02,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:58:02,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:58:05,007.007 INFO    ] ================================================
[2026-06-27 00:58:05,024.024 INFO    ] Launching Daemon at Sat Jun 27 00:58:05 IST 2026
[2026-06-27 00:58:05,035.035 INFO    ] ================================================
[2026-06-27 00:58:05,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:58:05
[2026-06-27 00:58:05,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:58:05,928.928 INFO    ] Initializing speech engine...
[2026-06-27 00:58:05,933.933 INFO    ] 2026-06-27 00:58:05
[2026-06-27 00:58:06,141.141 INFO    ] 2026-06-27 00:58:06
[2026-06-27 00:58:06,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:58:06,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:58:06,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:58:06,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:58:06,561.561 INFO    ] time= 27/06/2026 00:58:06
[2026-06-27 00:58:06,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:58:06,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:58:06,682.682 INFO    ] No existing commands found in stream
[2026-06-27 00:58:11,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:58:11,695.695 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-27 00:58:12,536.536 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 00:58:12,538.538 INFO    ] Checking for system updates...
[2026-06-27 00:58:12,561.561 INFO    ] 200
[2026-06-27 00:58:12,562.562 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:58:12,596.596 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:58:12,598.598 INFO    ] No update needed
[2026-06-27 00:58:12,599.599 INFO    ] Checking for camera pi updates...
[2026-06-27 00:58:12,621.621 INFO    ] 200
[2026-06-27 00:58:12,623.623 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:58:12,649.649 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:58:12,690.690 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:58:12,691.691 INFO    ] No camera update needed
[2026-06-27 00:58:12,693.693 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:58:12,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:58:12,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:58:12,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:58:14,741.741 INFO    ] ================================================
[2026-06-27 00:58:14,757.757 INFO    ] Launching Daemon at Sat Jun 27 00:58:14 IST 2026
[2026-06-27 00:58:14,769.769 INFO    ] ================================================
[2026-06-27 00:58:15,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:58:15
[2026-06-27 00:58:15,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:58:15,585.585 INFO    ] Initializing speech engine...
[2026-06-27 00:58:15,590.590 INFO    ] 2026-06-27 00:58:15
[2026-06-27 00:58:15,802.802 INFO    ] 2026-06-27 00:58:15
[2026-06-27 00:58:15,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:58:16,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:58:16,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:58:16,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:58:16,208.208 INFO    ] time= 27/06/2026 00:58:16
[2026-06-27 00:58:16,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:58:16,253.253 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:58:16,325.325 INFO    ] No existing commands found in stream
[2026-06-27 00:58:21,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:58:21,337.337 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-27 00:58:22,699.699 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 00:58:22,700.700 INFO    ] Checking for system updates...
[2026-06-27 00:58:22,723.723 INFO    ] 200
[2026-06-27 00:58:22,724.724 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:58:22,756.756 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:58:22,757.757 INFO    ] No update needed
[2026-06-27 00:58:22,758.758 INFO    ] Checking for camera pi updates...
[2026-06-27 00:58:22,779.779 INFO    ] 200
[2026-06-27 00:58:22,781.781 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:58:22,805.805 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:58:22,845.845 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:58:22,846.846 INFO    ] No camera update needed
[2026-06-27 00:58:22,848.848 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:58:22,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:58:22,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:58:22,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:58:24,893.893 INFO    ] ================================================
[2026-06-27 00:58:24,908.908 INFO    ] Launching Daemon at Sat Jun 27 00:58:24 IST 2026
[2026-06-27 00:58:24,920.920 INFO    ] ================================================
[2026-06-27 00:58:25,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:58:25
[2026-06-27 00:58:25,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:58:25,707.707 INFO    ] Initializing speech engine...
[2026-06-27 00:58:25,720.720 INFO    ] 2026-06-27 00:58:25
[2026-06-27 00:58:25,945.945 INFO    ] 2026-06-27 00:58:25
[2026-06-27 00:58:25,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:58:26,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:58:26,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:58:26,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:58:26,398.398 INFO    ] time= 27/06/2026 00:58:26
[2026-06-27 00:58:26,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:58:26,435.435 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:58:26,539.539 INFO    ] No existing commands found in stream
[2026-06-27 00:58:31,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:58:31,549.549 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-27 00:58:33,365.365 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:58:33,367.367 INFO    ] Checking for system updates...
[2026-06-27 00:58:33,390.390 INFO    ] 200
[2026-06-27 00:58:33,391.391 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:58:33,422.422 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:58:33,423.423 INFO    ] No update needed
[2026-06-27 00:58:33,425.425 INFO    ] Checking for camera pi updates...
[2026-06-27 00:58:33,447.447 INFO    ] 200
[2026-06-27 00:58:33,448.448 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:58:33,473.473 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:58:33,519.519 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:58:33,521.521 INFO    ] No camera update needed
[2026-06-27 00:58:33,522.522 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:58:33,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:58:33,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:58:33,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:58:35,570.570 INFO    ] ================================================
[2026-06-27 00:58:35,586.586 INFO    ] Launching Daemon at Sat Jun 27 00:58:35 IST 2026
[2026-06-27 00:58:35,597.597 INFO    ] ================================================
[2026-06-27 00:58:35,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:58:35
[2026-06-27 00:58:36,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:58:36,496.496 INFO    ] Initializing speech engine...
[2026-06-27 00:58:36,499.499 INFO    ] 2026-06-27 00:58:36
[2026-06-27 00:58:36,710.710 INFO    ] 2026-06-27 00:58:36
[2026-06-27 00:58:36,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:58:36,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:58:36,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:58:37,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:58:37,122.122 INFO    ] time= 27/06/2026 00:58:37
[2026-06-27 00:58:37,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:58:37,167.167 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:58:37,236.236 INFO    ] No existing commands found in stream
[2026-06-27 00:58:42,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:58:42,254.254 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-27 00:58:42,830.830 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 00:58:42,831.831 INFO    ] Checking for system updates...
[2026-06-27 00:58:42,853.853 INFO    ] 200
[2026-06-27 00:58:42,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:58:42,886.886 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:58:42,887.887 INFO    ] No update needed
[2026-06-27 00:58:42,889.889 INFO    ] Checking for camera pi updates...
[2026-06-27 00:58:42,910.910 INFO    ] 200
[2026-06-27 00:58:42,911.911 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:58:42,937.937 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:58:42,990.990 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:58:42,992.992 INFO    ] No camera update needed
[2026-06-27 00:58:42,993.993 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:58:42,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:58:42,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:58:43,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:58:45,039.039 INFO    ] ================================================
[2026-06-27 00:58:45,055.055 INFO    ] Launching Daemon at Sat Jun 27 00:58:45 IST 2026
[2026-06-27 00:58:45,065.065 INFO    ] ================================================
[2026-06-27 00:58:45,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:58:45
[2026-06-27 00:58:45,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:58:45,960.960 INFO    ] Initializing speech engine...
[2026-06-27 00:58:45,966.966 INFO    ] 2026-06-27 00:58:45
[2026-06-27 00:58:46,180.180 INFO    ] 2026-06-27 00:58:46
[2026-06-27 00:58:46,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:58:46,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:58:46,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:58:46,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:58:46,607.607 INFO    ] time= 27/06/2026 00:58:46
[2026-06-27 00:58:46,631.631 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:58:46,636.636 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:58:46,705.705 INFO    ] No existing commands found in stream
[2026-06-27 00:58:51,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:58:51,718.718 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-27 00:58:55,601.601 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 00:58:55,603.603 INFO    ] Checking for system updates...
[2026-06-27 00:58:55,627.627 INFO    ] 200
[2026-06-27 00:58:55,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:58:55,665.665 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:58:55,667.667 INFO    ] No update needed
[2026-06-27 00:58:55,669.669 INFO    ] Checking for camera pi updates...
[2026-06-27 00:58:55,689.689 INFO    ] 200
[2026-06-27 00:58:55,690.690 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:58:55,715.715 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:58:55,764.764 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:58:55,766.766 INFO    ] No camera update needed
[2026-06-27 00:58:55,767.767 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:58:55,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:58:55,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:58:55,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:58:57,815.815 INFO    ] ================================================
[2026-06-27 00:58:57,831.831 INFO    ] Launching Daemon at Sat Jun 27 00:58:57 IST 2026
[2026-06-27 00:58:57,842.842 INFO    ] ================================================
[2026-06-27 00:58:58,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:58:58
[2026-06-27 00:58:58,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:58:58,694.694 INFO    ] Initializing speech engine...
[2026-06-27 00:58:58,705.705 INFO    ] 2026-06-27 00:58:58
[2026-06-27 00:58:58,909.909 INFO    ] 2026-06-27 00:58:58
[2026-06-27 00:58:58,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:58:59,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:58:59,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:58:59,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:58:59,310.310 INFO    ] time= 27/06/2026 00:58:59
[2026-06-27 00:58:59,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:58:59,355.355 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:58:59,424.424 INFO    ] No existing commands found in stream
[2026-06-27 00:59:04,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:59:04,437.437 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-27 00:59:04,976.976 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 00:59:04,978.978 INFO    ] Checking for system updates...
[2026-06-27 00:59:05,001.001 INFO    ] 200
[2026-06-27 00:59:05,002.002 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:59:05,034.034 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:59:05,035.035 INFO    ] No update needed
[2026-06-27 00:59:05,036.036 INFO    ] Checking for camera pi updates...
[2026-06-27 00:59:05,056.056 INFO    ] 200
[2026-06-27 00:59:05,057.057 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:59:05,081.081 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:59:05,119.119 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:59:05,121.121 INFO    ] No camera update needed
[2026-06-27 00:59:05,122.122 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:59:05,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:59:05,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:59:05,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:59:07,168.168 INFO    ] ================================================
[2026-06-27 00:59:07,183.183 INFO    ] Launching Daemon at Sat Jun 27 00:59:07 IST 2026
[2026-06-27 00:59:07,194.194 INFO    ] ================================================
[2026-06-27 00:59:07,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:59:07
[2026-06-27 00:59:07,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:59:07,984.984 INFO    ] Initializing speech engine...
[2026-06-27 00:59:07,992.992 INFO    ] 2026-06-27 00:59:07
[2026-06-27 00:59:08,198.198 INFO    ] 2026-06-27 00:59:08
[2026-06-27 00:59:08,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:59:08,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:59:08,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:59:08,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:59:08,607.607 INFO    ] time= 27/06/2026 00:59:08
[2026-06-27 00:59:08,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:59:08,644.644 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:59:08,711.711 INFO    ] No existing commands found in stream
[2026-06-27 00:59:13,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:59:13,728.728 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-27 00:59:14,550.550 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 00:59:14,551.551 INFO    ] Checking for system updates...
[2026-06-27 00:59:14,573.573 INFO    ] 200
[2026-06-27 00:59:14,575.575 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:59:14,608.608 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:59:14,610.610 INFO    ] No update needed
[2026-06-27 00:59:14,611.611 INFO    ] Checking for camera pi updates...
[2026-06-27 00:59:14,631.631 INFO    ] 200
[2026-06-27 00:59:14,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:59:14,655.655 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:59:14,702.702 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:59:14,703.703 INFO    ] No camera update needed
[2026-06-27 00:59:14,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:59:14,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:59:14,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:59:14,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:59:16,752.752 INFO    ] ================================================
[2026-06-27 00:59:16,768.768 INFO    ] Launching Daemon at Sat Jun 27 00:59:16 IST 2026
[2026-06-27 00:59:16,779.779 INFO    ] ================================================
[2026-06-27 00:59:17,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:59:17
[2026-06-27 00:59:17,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:59:17,557.557 INFO    ] Initializing speech engine...
[2026-06-27 00:59:17,567.567 INFO    ] 2026-06-27 00:59:17
[2026-06-27 00:59:17,774.774 INFO    ] 2026-06-27 00:59:17
[2026-06-27 00:59:17,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:59:17,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:59:18,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:59:18,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:59:18,203.203 INFO    ] time= 27/06/2026 00:59:18
[2026-06-27 00:59:18,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:59:18,233.233 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:59:18,302.302 INFO    ] No existing commands found in stream
[2026-06-27 00:59:23,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:59:23,314.314 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-27 00:59:23,731.731 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 00:59:23,732.732 INFO    ] Checking for system updates...
[2026-06-27 00:59:23,754.754 INFO    ] 200
[2026-06-27 00:59:23,755.755 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:59:23,789.789 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:59:23,790.790 INFO    ] No update needed
[2026-06-27 00:59:23,792.792 INFO    ] Checking for camera pi updates...
[2026-06-27 00:59:23,816.816 INFO    ] 200
[2026-06-27 00:59:23,818.818 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:59:23,844.844 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:59:23,887.887 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:59:23,888.888 INFO    ] No camera update needed
[2026-06-27 00:59:23,890.890 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:59:23,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:59:23,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:59:23,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:59:25,938.938 INFO    ] ================================================
[2026-06-27 00:59:25,954.954 INFO    ] Launching Daemon at Sat Jun 27 00:59:25 IST 2026
[2026-06-27 00:59:25,966.966 INFO    ] ================================================
[2026-06-27 00:59:26,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:59:26
[2026-06-27 00:59:26,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:59:26,856.856 INFO    ] Initializing speech engine...
[2026-06-27 00:59:26,861.861 INFO    ] 2026-06-27 00:59:26
[2026-06-27 00:59:27,069.069 INFO    ] 2026-06-27 00:59:27
[2026-06-27 00:59:27,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:59:27,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:59:28,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:59:28,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:59:28,127.127 INFO    ] time= 27/06/2026 00:59:28
[2026-06-27 00:59:28,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:59:28,147.147 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:59:28,207.207 INFO    ] No existing commands found in stream
[2026-06-27 00:59:33,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:59:33,221.221 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-27 00:59:34,706.706 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 00:59:34,708.708 INFO    ] Checking for system updates...
[2026-06-27 00:59:34,729.729 INFO    ] 200
[2026-06-27 00:59:34,731.731 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:59:34,761.761 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:59:34,763.763 INFO    ] No update needed
[2026-06-27 00:59:34,765.765 INFO    ] Checking for camera pi updates...
[2026-06-27 00:59:34,785.785 INFO    ] 200
[2026-06-27 00:59:34,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:59:34,812.812 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:59:34,858.858 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 00:59:34,860.860 INFO    ] No camera update needed
[2026-06-27 00:59:34,861.861 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:59:34,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:59:34,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:59:34,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:59:36,908.908 INFO    ] ================================================
[2026-06-27 00:59:36,923.923 INFO    ] Launching Daemon at Sat Jun 27 00:59:36 IST 2026
[2026-06-27 00:59:36,934.934 INFO    ] ================================================
[2026-06-27 00:59:37,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:59:37
[2026-06-27 00:59:37,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:59:37,825.825 INFO    ] Initializing speech engine...
[2026-06-27 00:59:37,831.831 INFO    ] 2026-06-27 00:59:37
[2026-06-27 00:59:38,043.043 INFO    ] 2026-06-27 00:59:38
[2026-06-27 00:59:38,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:59:38,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:59:38,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:59:38,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:59:38,464.464 INFO    ] time= 27/06/2026 00:59:38
[2026-06-27 00:59:38,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:59:38,504.504 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:59:38,573.573 INFO    ] No existing commands found in stream
[2026-06-27 00:59:43,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:59:43,586.586 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-27 00:59:44,246.246 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 00:59:44,248.248 INFO    ] Checking for system updates...
[2026-06-27 00:59:44,271.271 INFO    ] 200
[2026-06-27 00:59:44,272.272 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:59:44,305.305 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:59:44,307.307 INFO    ] No update needed
[2026-06-27 00:59:44,308.308 INFO    ] Checking for camera pi updates...
[2026-06-27 00:59:44,328.328 INFO    ] 200
[2026-06-27 00:59:44,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:59:44,353.353 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:59:44,484.484 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:59:44,485.485 INFO    ] No camera update needed
[2026-06-27 00:59:44,487.487 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:59:44,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:59:44,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:59:44,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:59:46,533.533 INFO    ] ================================================
[2026-06-27 00:59:46,549.549 INFO    ] Launching Daemon at Sat Jun 27 00:59:46 IST 2026
[2026-06-27 00:59:46,560.560 INFO    ] ================================================
[2026-06-27 00:59:46,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:59:46
[2026-06-27 00:59:47,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:59:47,383.383 INFO    ] Initializing speech engine...
[2026-06-27 00:59:47,389.389 INFO    ] 2026-06-27 00:59:47
[2026-06-27 00:59:47,594.594 INFO    ] 2026-06-27 00:59:47
[2026-06-27 00:59:47,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 00:59:47,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 00:59:47,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 00:59:47,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 00:59:48,020.020 INFO    ] time= 27/06/2026 00:59:47
[2026-06-27 00:59:48,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 00:59:48,051.051 INFO    ] Checking for existing commands in stream...
[2026-06-27 00:59:48,119.119 INFO    ] No existing commands found in stream
[2026-06-27 00:59:53,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 00:59:53,131.131 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-27 00:59:56,802.802 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 00:59:56,804.804 INFO    ] Checking for system updates...
[2026-06-27 00:59:56,827.827 INFO    ] 200
[2026-06-27 00:59:56,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:59:56,859.859 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:59:56,860.860 INFO    ] No update needed
[2026-06-27 00:59:56,862.862 INFO    ] Checking for camera pi updates...
[2026-06-27 00:59:56,881.881 INFO    ] 200
[2026-06-27 00:59:56,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 00:59:56,908.908 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 00:59:56,960.960 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 00:59:56,961.961 INFO    ] No camera update needed
[2026-06-27 00:59:56,962.962 INFO    ] Script finished. Safe exiting...
[2026-06-27 00:59:56,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 00:59:56,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 00:59:56,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 00:59:59,009.009 INFO    ] ================================================
[2026-06-27 00:59:59,025.025 INFO    ] Launching Daemon at Sat Jun 27 00:59:59 IST 2026
[2026-06-27 00:59:59,036.036 INFO    ] ================================================
[2026-06-27 00:59:59,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 00:59:59
[2026-06-27 00:59:59,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 00:59:59,852.852 INFO    ] Initializing speech engine...
[2026-06-27 00:59:59,858.858 INFO    ] 2026-06-27 00:59:59
[2026-06-27 01:00:00,062.062 INFO    ] 2026-06-27 01:00:00
[2026-06-27 01:00:00,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:00:00,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:00:00,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:00:00,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:00:00,482.482 INFO    ] time= 27/06/2026 01:00:00
[2026-06-27 01:00:00,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:00:00,511.511 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:00:00,577.577 INFO    ] No existing commands found in stream
[2026-06-27 01:00:05,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:00:05,587.587 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-27 01:00:10,087.087 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 01:00:10,088.088 INFO    ] Checking for system updates...
[2026-06-27 01:00:10,109.109 INFO    ] 200
[2026-06-27 01:00:10,110.110 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:00:10,141.141 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:00:10,142.142 INFO    ] No update needed
[2026-06-27 01:00:10,143.143 INFO    ] Checking for camera pi updates...
[2026-06-27 01:00:10,163.163 INFO    ] 200
[2026-06-27 01:00:10,165.165 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:00:10,188.188 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:00:10,215.215 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:00:10,216.216 INFO    ] No camera update needed
[2026-06-27 01:00:10,218.218 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:00:10,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:00:10,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:00:10,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:00:12,263.263 INFO    ] ================================================
[2026-06-27 01:00:12,278.278 INFO    ] Launching Daemon at Sat Jun 27 01:00:12 IST 2026
[2026-06-27 01:00:12,290.290 INFO    ] ================================================
[2026-06-27 01:00:12,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:00:12
[2026-06-27 01:00:12,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:00:13,072.072 INFO    ] Initializing speech engine...
[2026-06-27 01:00:13,080.080 INFO    ] 2026-06-27 01:00:13
[2026-06-27 01:00:13,289.289 INFO    ] 2026-06-27 01:00:13
[2026-06-27 01:00:13,319.319 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:00:13,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:00:13,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:00:13,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:00:13,709.709 INFO    ] time= 27/06/2026 01:00:13
[2026-06-27 01:00:13,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:00:13,738.738 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:00:13,803.803 INFO    ] No existing commands found in stream
[2026-06-27 01:00:18,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:00:18,817.817 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-27 01:00:19,320.320 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:00:19,321.321 INFO    ] Checking for system updates...
[2026-06-27 01:00:19,343.343 INFO    ] 200
[2026-06-27 01:00:19,345.345 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:00:19,375.375 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:00:19,377.377 INFO    ] No update needed
[2026-06-27 01:00:19,378.378 INFO    ] Checking for camera pi updates...
[2026-06-27 01:00:19,397.397 INFO    ] 200
[2026-06-27 01:00:19,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:00:19,424.424 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:00:19,450.450 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:00:19,451.451 INFO    ] No camera update needed
[2026-06-27 01:00:19,453.453 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:00:19,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:00:19,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:00:19,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:00:21,500.500 INFO    ] ================================================
[2026-06-27 01:00:21,516.516 INFO    ] Launching Daemon at Sat Jun 27 01:00:21 IST 2026
[2026-06-27 01:00:21,526.526 INFO    ] ================================================
[2026-06-27 01:00:21,856.856 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:00:21
[2026-06-27 01:00:22,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:00:22,302.302 INFO    ] Initializing speech engine...
[2026-06-27 01:00:22,314.314 INFO    ] 2026-06-27 01:00:22
[2026-06-27 01:00:22,523.523 INFO    ] 2026-06-27 01:00:22
[2026-06-27 01:00:22,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:00:22,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:00:22,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:00:22,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:00:22,933.933 INFO    ] time= 27/06/2026 01:00:22
[2026-06-27 01:00:22,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:00:22,973.973 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:00:23,046.046 INFO    ] No existing commands found in stream
[2026-06-27 01:00:28,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:00:28,058.058 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-27 01:00:32,022.022 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 01:00:32,024.024 INFO    ] Checking for system updates...
[2026-06-27 01:00:32,045.045 INFO    ] 200
[2026-06-27 01:00:32,047.047 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:00:32,078.078 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:00:32,080.080 INFO    ] No update needed
[2026-06-27 01:00:32,081.081 INFO    ] Checking for camera pi updates...
[2026-06-27 01:00:32,101.101 INFO    ] 200
[2026-06-27 01:00:32,103.103 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:00:32,128.128 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:00:32,190.190 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:00:32,191.191 INFO    ] No camera update needed
[2026-06-27 01:00:32,193.193 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:00:32,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:00:32,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:00:32,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:00:34,234.234 INFO    ] ================================================
[2026-06-27 01:00:34,249.249 INFO    ] Launching Daemon at Sat Jun 27 01:00:34 IST 2026
[2026-06-27 01:00:34,260.260 INFO    ] ================================================
[2026-06-27 01:00:34,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:00:34
[2026-06-27 01:00:34,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:00:35,117.117 INFO    ] Initializing speech engine...
[2026-06-27 01:00:35,123.123 INFO    ] 2026-06-27 01:00:35
[2026-06-27 01:00:35,332.332 INFO    ] 2026-06-27 01:00:35
[2026-06-27 01:00:35,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:00:35,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:00:35,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:00:35,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:00:35,761.761 INFO    ] time= 27/06/2026 01:00:35
[2026-06-27 01:00:35,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:00:35,792.792 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:00:35,861.861 INFO    ] No existing commands found in stream
[2026-06-27 01:00:40,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:00:40,879.879 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-27 01:00:44,410.410 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:00:44,412.412 INFO    ] Checking for system updates...
[2026-06-27 01:00:44,433.433 INFO    ] 200
[2026-06-27 01:00:44,435.435 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:00:44,465.465 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:00:44,467.467 INFO    ] No update needed
[2026-06-27 01:00:44,468.468 INFO    ] Checking for camera pi updates...
[2026-06-27 01:00:44,488.488 INFO    ] 200
[2026-06-27 01:00:44,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:00:44,512.512 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:00:44,542.542 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:00:44,543.543 INFO    ] No camera update needed
[2026-06-27 01:00:44,545.545 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:00:44,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:00:44,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:00:44,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:00:46,591.591 INFO    ] ================================================
[2026-06-27 01:00:46,606.606 INFO    ] Launching Daemon at Sat Jun 27 01:00:46 IST 2026
[2026-06-27 01:00:46,617.617 INFO    ] ================================================
[2026-06-27 01:00:47,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:00:47
[2026-06-27 01:00:47,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:00:47,505.505 INFO    ] Initializing speech engine...
[2026-06-27 01:00:47,511.511 INFO    ] 2026-06-27 01:00:47
[2026-06-27 01:00:47,722.722 INFO    ] 2026-06-27 01:00:47
[2026-06-27 01:00:47,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:00:47,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:00:47,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:00:48,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:00:48,139.139 INFO    ] time= 27/06/2026 01:00:48
[2026-06-27 01:00:48,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:00:48,180.180 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:00:48,247.247 INFO    ] No existing commands found in stream
[2026-06-27 01:00:53,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:00:53,266.266 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-27 01:00:58,505.505 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 01:00:58,507.507 INFO    ] Checking for system updates...
[2026-06-27 01:00:58,530.530 INFO    ] 200
[2026-06-27 01:00:58,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:00:58,562.562 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:00:58,563.563 INFO    ] No update needed
[2026-06-27 01:00:58,565.565 INFO    ] Checking for camera pi updates...
[2026-06-27 01:00:58,584.584 INFO    ] 200
[2026-06-27 01:00:58,586.586 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:00:58,609.609 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:00:58,654.654 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:00:58,656.656 INFO    ] No camera update needed
[2026-06-27 01:00:58,657.657 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:00:58,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:00:58,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:00:58,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:01:00,702.702 INFO    ] ================================================
[2026-06-27 01:01:00,719.719 INFO    ] Launching Daemon at Sat Jun 27 01:01:00 IST 2026
[2026-06-27 01:01:00,729.729 INFO    ] ================================================
[2026-06-27 01:01:01,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:01:01
[2026-06-27 01:01:01,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:01:01,529.529 INFO    ] Initializing speech engine...
[2026-06-27 01:01:01,542.542 INFO    ] 2026-06-27 01:01:01
[2026-06-27 01:01:01,752.752 INFO    ] 2026-06-27 01:01:01
[2026-06-27 01:01:01,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:01:02,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:01:02,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:01:02,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:01:02,257.257 INFO    ] time= 27/06/2026 01:01:02
[2026-06-27 01:01:02,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:01:02,325.325 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:01:02,401.401 INFO    ] No existing commands found in stream
[2026-06-27 01:01:07,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:01:07,413.413 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-27 01:01:11,564.564 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 01:01:11,566.566 INFO    ] Checking for system updates...
[2026-06-27 01:01:11,586.586 INFO    ] 200
[2026-06-27 01:01:11,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:01:11,618.618 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:01:11,619.619 INFO    ] No update needed
[2026-06-27 01:01:11,620.620 INFO    ] Checking for camera pi updates...
[2026-06-27 01:01:11,640.640 INFO    ] 200
[2026-06-27 01:01:11,641.641 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:01:11,664.664 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:01:11,715.715 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:01:11,716.716 INFO    ] No camera update needed
[2026-06-27 01:01:11,718.718 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:01:11,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:01:11,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:01:11,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:01:13,762.762 INFO    ] ================================================
[2026-06-27 01:01:13,778.778 INFO    ] Launching Daemon at Sat Jun 27 01:01:13 IST 2026
[2026-06-27 01:01:13,789.789 INFO    ] ================================================
[2026-06-27 01:01:14,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:01:14
[2026-06-27 01:01:14,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:01:14,592.592 INFO    ] Initializing speech engine...
[2026-06-27 01:01:14,602.602 INFO    ] 2026-06-27 01:01:14
[2026-06-27 01:01:14,808.808 INFO    ] 2026-06-27 01:01:14
[2026-06-27 01:01:14,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:01:15,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:01:15,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:01:15,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:01:15,223.223 INFO    ] time= 27/06/2026 01:01:15
[2026-06-27 01:01:15,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:01:15,253.253 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:01:15,320.320 INFO    ] No existing commands found in stream
[2026-06-27 01:01:20,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:01:20,332.332 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-27 01:01:24,440.440 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:01:24,441.441 INFO    ] Checking for system updates...
[2026-06-27 01:01:24,462.462 INFO    ] 200
[2026-06-27 01:01:24,463.463 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:01:24,494.494 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:01:24,496.496 INFO    ] No update needed
[2026-06-27 01:01:24,497.497 INFO    ] Checking for camera pi updates...
[2026-06-27 01:01:24,518.518 INFO    ] 200
[2026-06-27 01:01:24,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:01:24,544.544 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:01:24,595.595 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:01:24,597.597 INFO    ] No camera update needed
[2026-06-27 01:01:24,598.598 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:01:24,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:01:24,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:01:24,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:01:26,643.643 INFO    ] ================================================
[2026-06-27 01:01:26,659.659 INFO    ] Launching Daemon at Sat Jun 27 01:01:26 IST 2026
[2026-06-27 01:01:26,670.670 INFO    ] ================================================
[2026-06-27 01:01:27,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:01:27
[2026-06-27 01:01:27,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:01:27,476.476 INFO    ] Initializing speech engine...
[2026-06-27 01:01:27,481.481 INFO    ] 2026-06-27 01:01:27
[2026-06-27 01:01:27,689.689 INFO    ] 2026-06-27 01:01:27
[2026-06-27 01:01:27,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:01:28,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:01:28,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:01:28,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:01:28,441.441 INFO    ] time= 27/06/2026 01:01:28
[2026-06-27 01:01:28,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:01:28,445.445 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:01:28,507.507 INFO    ] No existing commands found in stream
[2026-06-27 01:01:33,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:01:33,524.524 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-27 01:01:34,338.338 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 01:01:34,340.340 INFO    ] Checking for system updates...
[2026-06-27 01:01:34,360.360 INFO    ] 200
[2026-06-27 01:01:34,362.362 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:01:34,392.392 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:01:34,394.394 INFO    ] No update needed
[2026-06-27 01:01:34,395.395 INFO    ] Checking for camera pi updates...
[2026-06-27 01:01:34,415.415 INFO    ] 200
[2026-06-27 01:01:34,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:01:34,440.440 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:01:34,537.537 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:01:34,539.539 INFO    ] No camera update needed
[2026-06-27 01:01:34,540.540 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:01:34,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:01:34,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:01:34,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:01:36,589.589 INFO    ] ================================================
[2026-06-27 01:01:36,604.604 INFO    ] Launching Daemon at Sat Jun 27 01:01:36 IST 2026
[2026-06-27 01:01:36,615.615 INFO    ] ================================================
[2026-06-27 01:01:36,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:01:36
[2026-06-27 01:01:37,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:01:37,421.421 INFO    ] Initializing speech engine...
[2026-06-27 01:01:37,426.426 INFO    ] 2026-06-27 01:01:37
[2026-06-27 01:01:37,645.645 INFO    ] 2026-06-27 01:01:37
[2026-06-27 01:01:37,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:01:37,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:01:37,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:01:38,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:01:38,062.062 INFO    ] time= 27/06/2026 01:01:38
[2026-06-27 01:01:38,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:01:38,102.102 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:01:38,170.170 INFO    ] No existing commands found in stream
[2026-06-27 01:01:43,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:01:43,179.179 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-27 01:01:43,978.978 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:01:43,979.979 INFO    ] Checking for system updates...
[2026-06-27 01:01:44,000.000 INFO    ] 200
[2026-06-27 01:01:44,001.001 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:01:44,035.035 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:01:44,036.036 INFO    ] No update needed
[2026-06-27 01:01:44,037.037 INFO    ] Checking for camera pi updates...
[2026-06-27 01:01:44,057.057 INFO    ] 200
[2026-06-27 01:01:44,058.058 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:01:44,082.082 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:01:44,126.126 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:01:44,128.128 INFO    ] No camera update needed
[2026-06-27 01:01:44,129.129 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:01:44,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:01:44,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:01:44,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:01:46,175.175 INFO    ] ================================================
[2026-06-27 01:01:46,190.190 INFO    ] Launching Daemon at Sat Jun 27 01:01:46 IST 2026
[2026-06-27 01:01:46,201.201 INFO    ] ================================================
[2026-06-27 01:01:46,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:01:46
[2026-06-27 01:01:46,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:01:47,015.015 INFO    ] Initializing speech engine...
[2026-06-27 01:01:47,028.028 INFO    ] 2026-06-27 01:01:47
[2026-06-27 01:01:47,251.251 INFO    ] 2026-06-27 01:01:47
[2026-06-27 01:01:47,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:01:47,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:01:47,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:01:47,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:01:47,677.677 INFO    ] time= 27/06/2026 01:01:47
[2026-06-27 01:01:47,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:01:47,740.740 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:01:47,819.819 INFO    ] No existing commands found in stream
[2026-06-27 01:01:52,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:01:52,836.836 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-27 01:01:53,850.850 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 01:01:53,852.852 INFO    ] Checking for system updates...
[2026-06-27 01:01:53,873.873 INFO    ] 200
[2026-06-27 01:01:53,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:01:53,907.907 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:01:53,909.909 INFO    ] No update needed
[2026-06-27 01:01:53,910.910 INFO    ] Checking for camera pi updates...
[2026-06-27 01:01:53,931.931 INFO    ] 200
[2026-06-27 01:01:53,932.932 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:01:53,956.956 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:01:54,084.084 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:01:54,086.086 INFO    ] No camera update needed
[2026-06-27 01:01:54,087.087 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:01:54,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:01:54,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:01:54,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:01:56,133.133 INFO    ] ================================================
[2026-06-27 01:01:56,148.148 INFO    ] Launching Daemon at Sat Jun 27 01:01:56 IST 2026
[2026-06-27 01:01:56,159.159 INFO    ] ================================================
[2026-06-27 01:01:56,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:01:56
[2026-06-27 01:01:56,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:01:56,977.977 INFO    ] Initializing speech engine...
[2026-06-27 01:01:56,984.984 INFO    ] 2026-06-27 01:01:56
[2026-06-27 01:01:57,199.199 INFO    ] 2026-06-27 01:01:57
[2026-06-27 01:01:57,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:01:58,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:01:58,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:01:58,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:01:58,231.231 INFO    ] time= 27/06/2026 01:01:58
[2026-06-27 01:01:58,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:01:58,238.238 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:01:58,306.306 INFO    ] No existing commands found in stream
[2026-06-27 01:02:03,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:02:03,318.318 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-27 01:02:05,439.439 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 01:02:05,440.440 INFO    ] Checking for system updates...
[2026-06-27 01:02:05,463.463 INFO    ] 200
[2026-06-27 01:02:05,464.464 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:02:05,495.495 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:02:05,496.496 INFO    ] No update needed
[2026-06-27 01:02:05,498.498 INFO    ] Checking for camera pi updates...
[2026-06-27 01:02:05,518.518 INFO    ] 200
[2026-06-27 01:02:05,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:02:05,546.546 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:02:05,591.591 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:02:05,593.593 INFO    ] No camera update needed
[2026-06-27 01:02:05,594.594 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:02:05,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:02:05,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:02:05,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:02:07,642.642 INFO    ] ================================================
[2026-06-27 01:02:07,657.657 INFO    ] Launching Daemon at Sat Jun 27 01:02:07 IST 2026
[2026-06-27 01:02:07,668.668 INFO    ] ================================================
[2026-06-27 01:02:08,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:02:08
[2026-06-27 01:02:08,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:02:08,469.469 INFO    ] Initializing speech engine...
[2026-06-27 01:02:08,479.479 INFO    ] 2026-06-27 01:02:08
[2026-06-27 01:02:08,684.684 INFO    ] 2026-06-27 01:02:08
[2026-06-27 01:02:08,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:02:08,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:02:08,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:02:09,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:02:09,084.084 INFO    ] time= 27/06/2026 01:02:09
[2026-06-27 01:02:09,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:02:09,128.128 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:02:09,199.199 INFO    ] No existing commands found in stream
[2026-06-27 01:02:14,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:02:14,211.211 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-27 01:02:16,335.335 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:02:16,336.336 INFO    ] Checking for system updates...
[2026-06-27 01:02:16,358.358 INFO    ] 200
[2026-06-27 01:02:16,360.360 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:02:16,397.397 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:02:16,398.398 INFO    ] No update needed
[2026-06-27 01:02:16,399.399 INFO    ] Checking for camera pi updates...
[2026-06-27 01:02:16,419.419 INFO    ] 200
[2026-06-27 01:02:16,421.421 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:02:16,446.446 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:02:16,494.494 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:02:16,495.495 INFO    ] No camera update needed
[2026-06-27 01:02:16,496.496 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:02:16,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:02:16,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:02:16,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:02:18,545.545 INFO    ] ================================================
[2026-06-27 01:02:18,561.561 INFO    ] Launching Daemon at Sat Jun 27 01:02:18 IST 2026
[2026-06-27 01:02:18,571.571 INFO    ] ================================================
[2026-06-27 01:02:18,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:02:18
[2026-06-27 01:02:19,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:02:19,363.363 INFO    ] Initializing speech engine...
[2026-06-27 01:02:19,367.367 INFO    ] 2026-06-27 01:02:19
[2026-06-27 01:02:19,565.565 INFO    ] 2026-06-27 01:02:19
[2026-06-27 01:02:19,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:02:19,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:02:19,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:02:19,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:02:20,016.016 INFO    ] time= 27/06/2026 01:02:19
[2026-06-27 01:02:20,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:02:20,060.060 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:02:20,128.128 INFO    ] No existing commands found in stream
[2026-06-27 01:02:25,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:02:25,145.145 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-27 01:02:29,174.174 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 01:02:29,176.176 INFO    ] Checking for system updates...
[2026-06-27 01:02:29,197.197 INFO    ] 200
[2026-06-27 01:02:29,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:02:29,230.230 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:02:29,231.231 INFO    ] No update needed
[2026-06-27 01:02:29,233.233 INFO    ] Checking for camera pi updates...
[2026-06-27 01:02:29,253.253 INFO    ] 200
[2026-06-27 01:02:29,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:02:29,280.280 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:02:29,330.330 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:02:29,331.331 INFO    ] No camera update needed
[2026-06-27 01:02:29,332.332 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:02:29,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:02:29,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:02:29,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:02:31,379.379 INFO    ] ================================================
[2026-06-27 01:02:31,397.397 INFO    ] Launching Daemon at Sat Jun 27 01:02:31 IST 2026
[2026-06-27 01:02:31,409.409 INFO    ] ================================================
[2026-06-27 01:02:31,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:02:31
[2026-06-27 01:02:32,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:02:32,271.271 INFO    ] Initializing speech engine...
[2026-06-27 01:02:32,277.277 INFO    ] 2026-06-27 01:02:32
[2026-06-27 01:02:32,482.482 INFO    ] 2026-06-27 01:02:32
[2026-06-27 01:02:32,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:02:32,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:02:32,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:02:32,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:02:32,897.897 INFO    ] time= 27/06/2026 01:02:32
[2026-06-27 01:02:32,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:02:32,930.930 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:02:32,998.998 INFO    ] No existing commands found in stream
[2026-06-27 01:02:38,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:02:38,009.009 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-27 01:02:39,728.728 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 01:02:39,729.729 INFO    ] Checking for system updates...
[2026-06-27 01:02:39,750.750 INFO    ] 200
[2026-06-27 01:02:39,752.752 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:02:39,786.786 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:02:39,788.788 INFO    ] No update needed
[2026-06-27 01:02:39,789.789 INFO    ] Checking for camera pi updates...
[2026-06-27 01:02:39,810.810 INFO    ] 200
[2026-06-27 01:02:39,812.812 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:02:39,836.836 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:02:39,887.887 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:02:39,888.888 INFO    ] No camera update needed
[2026-06-27 01:02:39,890.890 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:02:39,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:02:39,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:02:39,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:02:41,939.939 INFO    ] ================================================
[2026-06-27 01:02:41,954.954 INFO    ] Launching Daemon at Sat Jun 27 01:02:41 IST 2026
[2026-06-27 01:02:41,965.965 INFO    ] ================================================
[2026-06-27 01:02:42,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:02:42
[2026-06-27 01:02:42,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:02:42,784.784 INFO    ] Initializing speech engine...
[2026-06-27 01:02:42,788.788 INFO    ] 2026-06-27 01:02:42
[2026-06-27 01:02:42,996.996 INFO    ] 2026-06-27 01:02:42
[2026-06-27 01:02:43,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:02:43,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:02:43,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:02:43,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:02:43,411.411 INFO    ] time= 27/06/2026 01:02:43
[2026-06-27 01:02:43,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:02:43,446.446 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:02:43,517.517 INFO    ] No existing commands found in stream
[2026-06-27 01:02:48,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:02:48,529.529 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-27 01:02:50,173.173 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 01:02:50,175.175 INFO    ] Checking for system updates...
[2026-06-27 01:02:50,197.197 INFO    ] 200
[2026-06-27 01:02:50,199.199 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:02:50,232.232 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:02:50,234.234 INFO    ] No update needed
[2026-06-27 01:02:50,236.236 INFO    ] Checking for camera pi updates...
[2026-06-27 01:02:50,257.257 INFO    ] 200
[2026-06-27 01:02:50,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:02:50,287.287 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:02:50,338.338 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:02:50,340.340 INFO    ] No camera update needed
[2026-06-27 01:02:50,341.341 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:02:50,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:02:50,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:02:50,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:02:52,390.390 INFO    ] ================================================
[2026-06-27 01:02:52,406.406 INFO    ] Launching Daemon at Sat Jun 27 01:02:52 IST 2026
[2026-06-27 01:02:52,416.416 INFO    ] ================================================
[2026-06-27 01:02:52,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:02:52
[2026-06-27 01:02:53,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:02:53,248.248 INFO    ] Initializing speech engine...
[2026-06-27 01:02:53,253.253 INFO    ] 2026-06-27 01:02:53
[2026-06-27 01:02:53,459.459 INFO    ] 2026-06-27 01:02:53
[2026-06-27 01:02:53,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:02:53,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:02:53,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:02:53,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:02:53,882.882 INFO    ] time= 27/06/2026 01:02:53
[2026-06-27 01:02:53,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:02:53,912.912 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:02:54,003.003 INFO    ] No existing commands found in stream
[2026-06-27 01:02:59,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:02:59,020.020 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-27 01:03:00,311.311 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:03:00,312.312 INFO    ] Checking for system updates...
[2026-06-27 01:03:00,333.333 INFO    ] 200
[2026-06-27 01:03:00,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:03:00,366.366 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:03:00,367.367 INFO    ] No update needed
[2026-06-27 01:03:00,368.368 INFO    ] Checking for camera pi updates...
[2026-06-27 01:03:00,389.389 INFO    ] 200
[2026-06-27 01:03:00,391.391 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:03:00,416.416 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:03:00,467.467 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:03:00,469.469 INFO    ] No camera update needed
[2026-06-27 01:03:00,470.470 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:03:00,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:03:00,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:03:00,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:03:02,506.506 INFO    ] ================================================
[2026-06-27 01:03:02,514.514 INFO    ] Launching Daemon at Sat Jun 27 01:03:02 IST 2026
[2026-06-27 01:03:02,520.520 INFO    ] ================================================
[2026-06-27 01:03:02,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:03:02
[2026-06-27 01:03:03,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:03:03,284.284 INFO    ] Initializing speech engine...
[2026-06-27 01:03:03,289.289 INFO    ] 2026-06-27 01:03:03
[2026-06-27 01:03:03,496.496 INFO    ] 2026-06-27 01:03:03
[2026-06-27 01:03:03,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:03:03,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:03:03,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:03:03,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:03:03,920.920 INFO    ] time= 27/06/2026 01:03:03
[2026-06-27 01:03:03,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:03:03,950.950 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:03:04,015.015 INFO    ] No existing commands found in stream
[2026-06-27 01:03:09,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:03:09,028.028 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-27 01:03:12,485.485 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:03:12,487.487 INFO    ] Checking for system updates...
[2026-06-27 01:03:12,511.511 INFO    ] 200
[2026-06-27 01:03:12,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:03:12,550.550 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:03:12,551.551 INFO    ] No update needed
[2026-06-27 01:03:12,552.552 INFO    ] Checking for camera pi updates...
[2026-06-27 01:03:12,573.573 INFO    ] 200
[2026-06-27 01:03:12,575.575 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:03:12,598.598 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:03:12,640.640 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:03:12,641.641 INFO    ] No camera update needed
[2026-06-27 01:03:12,643.643 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:03:12,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:03:12,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:03:12,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:03:14,689.689 INFO    ] ================================================
[2026-06-27 01:03:14,705.705 INFO    ] Launching Daemon at Sat Jun 27 01:03:14 IST 2026
[2026-06-27 01:03:14,716.716 INFO    ] ================================================
[2026-06-27 01:03:15,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:03:15
[2026-06-27 01:03:15,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:03:15,532.532 INFO    ] Initializing speech engine...
[2026-06-27 01:03:15,537.537 INFO    ] 2026-06-27 01:03:15
[2026-06-27 01:03:15,741.741 INFO    ] 2026-06-27 01:03:15
[2026-06-27 01:03:15,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:03:15,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:03:15,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:03:16,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:03:16,161.161 INFO    ] time= 27/06/2026 01:03:16
[2026-06-27 01:03:16,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:03:16,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:03:16,258.258 INFO    ] No existing commands found in stream
[2026-06-27 01:03:21,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:03:21,275.275 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-27 01:03:25,557.557 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 01:03:25,558.558 INFO    ] Checking for system updates...
[2026-06-27 01:03:25,579.579 INFO    ] 200
[2026-06-27 01:03:25,580.580 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:03:25,611.611 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:03:25,612.612 INFO    ] No update needed
[2026-06-27 01:03:25,613.613 INFO    ] Checking for camera pi updates...
[2026-06-27 01:03:25,634.634 INFO    ] 200
[2026-06-27 01:03:25,636.636 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:03:25,661.661 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:03:25,702.702 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:03:25,703.703 INFO    ] No camera update needed
[2026-06-27 01:03:25,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:03:25,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:03:25,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:03:25,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:03:27,751.751 INFO    ] ================================================
[2026-06-27 01:03:27,767.767 INFO    ] Launching Daemon at Sat Jun 27 01:03:27 IST 2026
[2026-06-27 01:03:27,778.778 INFO    ] ================================================
[2026-06-27 01:03:28,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:03:28
[2026-06-27 01:03:28,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:03:28,599.599 INFO    ] Initializing speech engine...
[2026-06-27 01:03:28,604.604 INFO    ] 2026-06-27 01:03:28
[2026-06-27 01:03:28,808.808 INFO    ] 2026-06-27 01:03:28
[2026-06-27 01:03:28,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:03:29,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:03:29,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:03:29,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:03:29,239.239 INFO    ] time= 27/06/2026 01:03:29
[2026-06-27 01:03:29,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:03:29,268.268 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:03:29,335.335 INFO    ] No existing commands found in stream
[2026-06-27 01:03:34,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:03:34,347.347 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-27 01:03:36,010.010 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 01:03:36,012.012 INFO    ] Checking for system updates...
[2026-06-27 01:03:36,033.033 INFO    ] 200
[2026-06-27 01:03:36,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:03:36,068.068 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:03:36,070.070 INFO    ] No update needed
[2026-06-27 01:03:36,072.072 INFO    ] Checking for camera pi updates...
[2026-06-27 01:03:36,093.093 INFO    ] 200
[2026-06-27 01:03:36,095.095 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:03:36,119.119 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:03:36,170.170 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:03:36,171.171 INFO    ] No camera update needed
[2026-06-27 01:03:36,173.173 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:03:36,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:03:36,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:03:36,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:03:38,223.223 INFO    ] ================================================
[2026-06-27 01:03:38,239.239 INFO    ] Launching Daemon at Sat Jun 27 01:03:38 IST 2026
[2026-06-27 01:03:38,249.249 INFO    ] ================================================
[2026-06-27 01:03:38,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:03:38
[2026-06-27 01:03:38,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:03:39,130.130 INFO    ] Initializing speech engine...
[2026-06-27 01:03:39,134.134 INFO    ] 2026-06-27 01:03:39
[2026-06-27 01:03:39,343.343 INFO    ] 2026-06-27 01:03:39
[2026-06-27 01:03:39,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:03:39,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:03:39,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:03:39,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:03:39,768.768 INFO    ] time= 27/06/2026 01:03:39
[2026-06-27 01:03:39,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:03:39,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:03:39,865.865 INFO    ] No existing commands found in stream
[2026-06-27 01:03:44,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:03:44,893.893 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-27 01:03:46,529.529 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 01:03:46,530.530 INFO    ] Checking for system updates...
[2026-06-27 01:03:46,551.551 INFO    ] 200
[2026-06-27 01:03:46,553.553 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:03:46,584.584 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:03:46,585.585 INFO    ] No update needed
[2026-06-27 01:03:46,587.587 INFO    ] Checking for camera pi updates...
[2026-06-27 01:03:46,612.612 INFO    ] 200
[2026-06-27 01:03:46,614.614 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:03:46,642.642 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:03:46,691.691 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:03:46,693.693 INFO    ] No camera update needed
[2026-06-27 01:03:46,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:03:46,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:03:46,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:03:46,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:03:48,743.743 INFO    ] ================================================
[2026-06-27 01:03:48,758.758 INFO    ] Launching Daemon at Sat Jun 27 01:03:48 IST 2026
[2026-06-27 01:03:48,769.769 INFO    ] ================================================
[2026-06-27 01:03:49,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:03:49
[2026-06-27 01:03:49,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:03:49,561.561 INFO    ] Initializing speech engine...
[2026-06-27 01:03:49,566.566 INFO    ] 2026-06-27 01:03:49
[2026-06-27 01:03:49,771.771 INFO    ] 2026-06-27 01:03:49
[2026-06-27 01:03:49,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:03:49,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:03:49,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:03:50,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:03:50,180.180 INFO    ] time= 27/06/2026 01:03:50
[2026-06-27 01:03:50,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:03:50,219.219 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:03:50,286.286 INFO    ] No existing commands found in stream
[2026-06-27 01:03:55,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:03:55,318.318 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-27 01:03:58,373.373 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 01:03:58,375.375 INFO    ] Checking for system updates...
[2026-06-27 01:03:58,397.397 INFO    ] 200
[2026-06-27 01:03:58,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:03:58,429.429 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:03:58,430.430 INFO    ] No update needed
[2026-06-27 01:03:58,431.431 INFO    ] Checking for camera pi updates...
[2026-06-27 01:03:58,451.451 INFO    ] 200
[2026-06-27 01:03:58,452.452 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:03:58,475.475 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:03:58,625.625 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:03:58,626.626 INFO    ] No camera update needed
[2026-06-27 01:03:58,627.627 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:03:58,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:03:58,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:03:58,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:04:00,674.674 INFO    ] ================================================
[2026-06-27 01:04:00,689.689 INFO    ] Launching Daemon at Sat Jun 27 01:04:00 IST 2026
[2026-06-27 01:04:00,700.700 INFO    ] ================================================
[2026-06-27 01:04:01,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:04:01
[2026-06-27 01:04:01,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:04:01,510.510 INFO    ] Initializing speech engine...
[2026-06-27 01:04:01,520.520 INFO    ] 2026-06-27 01:04:01
[2026-06-27 01:04:01,712.712 INFO    ] 2026-06-27 01:04:01
[2026-06-27 01:04:01,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:04:01,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:04:01,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:04:02,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:04:02,081.081 INFO    ] time= 27/06/2026 01:04:02
[2026-06-27 01:04:02,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:04:02,124.124 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:04:02,188.188 INFO    ] No existing commands found in stream
[2026-06-27 01:04:07,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:04:07,200.200 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-27 01:04:10,371.371 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 01:04:10,372.372 INFO    ] Checking for system updates...
[2026-06-27 01:04:10,393.393 INFO    ] 200
[2026-06-27 01:04:10,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:04:10,425.425 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:04:10,427.427 INFO    ] No update needed
[2026-06-27 01:04:10,428.428 INFO    ] Checking for camera pi updates...
[2026-06-27 01:04:10,449.449 INFO    ] 200
[2026-06-27 01:04:10,451.451 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:04:10,474.474 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:04:10,524.524 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:04:10,526.526 INFO    ] No camera update needed
[2026-06-27 01:04:10,527.527 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:04:10,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:04:10,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:04:10,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:04:12,573.573 INFO    ] ================================================
[2026-06-27 01:04:12,589.589 INFO    ] Launching Daemon at Sat Jun 27 01:04:12 IST 2026
[2026-06-27 01:04:12,599.599 INFO    ] ================================================
[2026-06-27 01:04:12,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:04:12
[2026-06-27 01:04:13,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:04:13,384.384 INFO    ] Initializing speech engine...
[2026-06-27 01:04:13,388.388 INFO    ] 2026-06-27 01:04:13
[2026-06-27 01:04:13,596.596 INFO    ] 2026-06-27 01:04:13
[2026-06-27 01:04:13,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:04:13,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:04:13,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:04:13,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:04:14,005.005 INFO    ] time= 27/06/2026 01:04:13
[2026-06-27 01:04:14,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:04:14,050.050 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:04:14,122.122 INFO    ] No existing commands found in stream
[2026-06-27 01:04:19,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:04:19,134.134 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-27 01:04:20,699.699 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 01:04:20,700.700 INFO    ] Checking for system updates...
[2026-06-27 01:04:20,721.721 INFO    ] 200
[2026-06-27 01:04:20,723.723 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:04:20,753.753 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:04:20,755.755 INFO    ] No update needed
[2026-06-27 01:04:20,756.756 INFO    ] Checking for camera pi updates...
[2026-06-27 01:04:20,779.779 INFO    ] 200
[2026-06-27 01:04:20,781.781 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:04:20,804.804 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:04:20,845.845 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:04:20,846.846 INFO    ] No camera update needed
[2026-06-27 01:04:20,847.847 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:04:20,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:04:20,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:04:20,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:04:22,892.892 INFO    ] ================================================
[2026-06-27 01:04:22,907.907 INFO    ] Launching Daemon at Sat Jun 27 01:04:22 IST 2026
[2026-06-27 01:04:22,918.918 INFO    ] ================================================
[2026-06-27 01:04:23,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:04:23
[2026-06-27 01:04:23,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:04:23,739.739 INFO    ] Initializing speech engine...
[2026-06-27 01:04:23,744.744 INFO    ] 2026-06-27 01:04:23
[2026-06-27 01:04:23,948.948 INFO    ] 2026-06-27 01:04:23
[2026-06-27 01:04:23,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:04:24,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:04:24,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:04:24,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:04:24,369.369 INFO    ] time= 27/06/2026 01:04:24
[2026-06-27 01:04:24,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:04:24,396.396 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:04:24,463.463 INFO    ] No existing commands found in stream
[2026-06-27 01:04:29,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:04:29,480.480 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-27 01:04:31,866.866 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 01:04:31,868.868 INFO    ] Checking for system updates...
[2026-06-27 01:04:31,893.893 INFO    ] 200
[2026-06-27 01:04:31,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:04:31,936.936 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:04:31,937.937 INFO    ] No update needed
[2026-06-27 01:04:31,939.939 INFO    ] Checking for camera pi updates...
[2026-06-27 01:04:31,960.960 INFO    ] 200
[2026-06-27 01:04:31,962.962 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:04:31,998.998 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:04:32,039.039 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:04:32,040.040 INFO    ] No camera update needed
[2026-06-27 01:04:32,043.043 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:04:32,045.045 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:04:32,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:04:32,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:04:34,092.092 INFO    ] ================================================
[2026-06-27 01:04:34,107.107 INFO    ] Launching Daemon at Sat Jun 27 01:04:34 IST 2026
[2026-06-27 01:04:34,118.118 INFO    ] ================================================
[2026-06-27 01:04:34,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:04:34
[2026-06-27 01:04:34,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:04:34,901.901 INFO    ] Initializing speech engine...
[2026-06-27 01:04:34,905.905 INFO    ] 2026-06-27 01:04:34
[2026-06-27 01:04:35,109.109 INFO    ] 2026-06-27 01:04:35
[2026-06-27 01:04:35,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:04:35,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:04:35,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:04:35,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:04:35,518.518 INFO    ] time= 27/06/2026 01:04:35
[2026-06-27 01:04:35,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:04:35,558.558 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:04:35,649.649 INFO    ] No existing commands found in stream
[2026-06-27 01:04:40,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:04:40,659.659 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-27 01:04:44,190.190 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:04:44,192.192 INFO    ] Checking for system updates...
[2026-06-27 01:04:44,214.214 INFO    ] 200
[2026-06-27 01:04:44,216.216 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:04:44,246.246 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:04:44,247.247 INFO    ] No update needed
[2026-06-27 01:04:44,249.249 INFO    ] Checking for camera pi updates...
[2026-06-27 01:04:44,268.268 INFO    ] 200
[2026-06-27 01:04:44,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:04:44,294.294 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:04:44,339.339 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:04:44,340.340 INFO    ] No camera update needed
[2026-06-27 01:04:44,341.341 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:04:44,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:04:44,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:04:44,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:04:46,387.387 INFO    ] ================================================
[2026-06-27 01:04:46,402.402 INFO    ] Launching Daemon at Sat Jun 27 01:04:46 IST 2026
[2026-06-27 01:04:46,413.413 INFO    ] ================================================
[2026-06-27 01:04:46,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:04:46
[2026-06-27 01:04:47,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:04:47,257.257 INFO    ] Initializing speech engine...
[2026-06-27 01:04:47,261.261 INFO    ] 2026-06-27 01:04:47
[2026-06-27 01:04:47,472.472 INFO    ] 2026-06-27 01:04:47
[2026-06-27 01:04:47,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:04:47,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:04:47,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:04:47,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:04:47,891.891 INFO    ] time= 27/06/2026 01:04:47
[2026-06-27 01:04:47,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:04:47,921.921 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:04:48,012.012 INFO    ] No existing commands found in stream
[2026-06-27 01:04:53,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:04:53,035.035 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-27 01:04:55,537.537 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 01:04:55,538.538 INFO    ] Checking for system updates...
[2026-06-27 01:04:55,559.559 INFO    ] 200
[2026-06-27 01:04:55,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:04:55,594.594 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:04:55,595.595 INFO    ] No update needed
[2026-06-27 01:04:55,596.596 INFO    ] Checking for camera pi updates...
[2026-06-27 01:04:55,616.616 INFO    ] 200
[2026-06-27 01:04:55,617.617 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:04:55,641.641 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:04:55,686.686 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:04:55,688.688 INFO    ] No camera update needed
[2026-06-27 01:04:55,689.689 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:04:55,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:04:55,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:04:55,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:04:57,734.734 INFO    ] ================================================
[2026-06-27 01:04:57,749.749 INFO    ] Launching Daemon at Sat Jun 27 01:04:57 IST 2026
[2026-06-27 01:04:57,760.760 INFO    ] ================================================
[2026-06-27 01:04:58,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:04:58
[2026-06-27 01:04:58,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:04:58,553.553 INFO    ] Initializing speech engine...
[2026-06-27 01:04:58,559.559 INFO    ] 2026-06-27 01:04:58
[2026-06-27 01:04:58,760.760 INFO    ] 2026-06-27 01:04:58
[2026-06-27 01:04:58,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:04:59,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:04:59,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:04:59,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:04:59,700.700 INFO    ] time= 27/06/2026 01:04:59
[2026-06-27 01:04:59,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:04:59,706.706 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:04:59,770.770 INFO    ] No existing commands found in stream
[2026-06-27 01:05:04,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:05:04,783.783 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-27 01:05:06,536.536 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 01:05:06,537.537 INFO    ] Checking for system updates...
[2026-06-27 01:05:06,559.559 INFO    ] 200
[2026-06-27 01:05:06,560.560 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:05:06,591.591 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:05:06,592.592 INFO    ] No update needed
[2026-06-27 01:05:06,593.593 INFO    ] Checking for camera pi updates...
[2026-06-27 01:05:06,615.615 INFO    ] 200
[2026-06-27 01:05:06,617.617 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:05:06,644.644 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:05:06,696.696 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:05:06,697.697 INFO    ] No camera update needed
[2026-06-27 01:05:06,699.699 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:05:06,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:05:06,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:05:06,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:05:08,744.744 INFO    ] ================================================
[2026-06-27 01:05:08,759.759 INFO    ] Launching Daemon at Sat Jun 27 01:05:08 IST 2026
[2026-06-27 01:05:08,770.770 INFO    ] ================================================
[2026-06-27 01:05:09,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:05:09
[2026-06-27 01:05:09,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:05:09,569.569 INFO    ] Initializing speech engine...
[2026-06-27 01:05:09,579.579 INFO    ] 2026-06-27 01:05:09
[2026-06-27 01:05:09,784.784 INFO    ] 2026-06-27 01:05:09
[2026-06-27 01:05:09,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:05:10,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:05:10,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:05:10,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:05:10,199.199 INFO    ] time= 27/06/2026 01:05:10
[2026-06-27 01:05:10,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:05:10,238.238 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:05:10,306.306 INFO    ] No existing commands found in stream
[2026-06-27 01:05:15,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:05:15,320.320 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-27 01:05:16,713.713 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 01:05:16,715.715 INFO    ] Checking for system updates...
[2026-06-27 01:05:16,735.735 INFO    ] 200
[2026-06-27 01:05:16,737.737 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:05:16,769.769 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:05:16,770.770 INFO    ] No update needed
[2026-06-27 01:05:16,771.771 INFO    ] Checking for camera pi updates...
[2026-06-27 01:05:16,791.791 INFO    ] 200
[2026-06-27 01:05:16,792.792 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:05:16,817.817 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:05:16,857.857 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:05:16,858.858 INFO    ] No camera update needed
[2026-06-27 01:05:16,859.859 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:05:16,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:05:16,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:05:16,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:05:18,898.898 INFO    ] ================================================
[2026-06-27 01:05:18,914.914 INFO    ] Launching Daemon at Sat Jun 27 01:05:18 IST 2026
[2026-06-27 01:05:18,924.924 INFO    ] ================================================
[2026-06-27 01:05:19,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:05:19
[2026-06-27 01:05:19,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:05:19,721.721 INFO    ] Initializing speech engine...
[2026-06-27 01:05:19,726.726 INFO    ] 2026-06-27 01:05:19
[2026-06-27 01:05:19,931.931 INFO    ] 2026-06-27 01:05:19
[2026-06-27 01:05:19,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:05:20,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:05:20,153.153 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:05:20,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:05:20,336.336 INFO    ] time= 27/06/2026 01:05:20
[2026-06-27 01:05:20,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:05:20,379.379 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:05:20,452.452 INFO    ] No existing commands found in stream
[2026-06-27 01:05:25,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:05:25,482.482 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-27 01:05:28,242.242 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 01:05:28,244.244 INFO    ] Checking for system updates...
[2026-06-27 01:05:28,266.266 INFO    ] 200
[2026-06-27 01:05:28,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:05:28,300.300 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:05:28,302.302 INFO    ] No update needed
[2026-06-27 01:05:28,303.303 INFO    ] Checking for camera pi updates...
[2026-06-27 01:05:28,324.324 INFO    ] 200
[2026-06-27 01:05:28,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:05:28,350.350 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:05:28,400.400 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:05:28,401.401 INFO    ] No camera update needed
[2026-06-27 01:05:28,402.402 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:05:28,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:05:28,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:05:28,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:05:30,450.450 INFO    ] ================================================
[2026-06-27 01:05:30,465.465 INFO    ] Launching Daemon at Sat Jun 27 01:05:30 IST 2026
[2026-06-27 01:05:30,476.476 INFO    ] ================================================
[2026-06-27 01:05:30,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:05:30
[2026-06-27 01:05:31,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:05:31,299.299 INFO    ] Initializing speech engine...
[2026-06-27 01:05:31,304.304 INFO    ] 2026-06-27 01:05:31
[2026-06-27 01:05:31,508.508 INFO    ] 2026-06-27 01:05:31
[2026-06-27 01:05:31,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:05:31,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:05:31,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:05:31,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:05:31,912.912 INFO    ] time= 27/06/2026 01:05:31
[2026-06-27 01:05:31,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:05:31,951.951 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:05:32,022.022 INFO    ] No existing commands found in stream
[2026-06-27 01:05:37,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:05:37,034.034 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-27 01:05:38,670.670 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 01:05:38,671.671 INFO    ] Checking for system updates...
[2026-06-27 01:05:38,693.693 INFO    ] 200
[2026-06-27 01:05:38,695.695 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:05:38,728.728 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:05:38,730.730 INFO    ] No update needed
[2026-06-27 01:05:38,731.731 INFO    ] Checking for camera pi updates...
[2026-06-27 01:05:38,751.751 INFO    ] 200
[2026-06-27 01:05:38,752.752 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:05:38,779.779 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:05:38,828.828 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:05:38,829.829 INFO    ] No camera update needed
[2026-06-27 01:05:38,830.830 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:05:38,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:05:38,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:05:38,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:05:40,876.876 INFO    ] ================================================
[2026-06-27 01:05:40,890.890 INFO    ] Launching Daemon at Sat Jun 27 01:05:40 IST 2026
[2026-06-27 01:05:40,908.908 INFO    ] ================================================
[2026-06-27 01:05:41,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:05:41
[2026-06-27 01:05:41,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:05:41,724.724 INFO    ] Initializing speech engine...
[2026-06-27 01:05:41,730.730 INFO    ] 2026-06-27 01:05:41
[2026-06-27 01:05:41,932.932 INFO    ] 2026-06-27 01:05:41
[2026-06-27 01:05:41,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:05:42,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:05:42,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:05:42,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:05:42,435.435 INFO    ] time= 27/06/2026 01:05:42
[2026-06-27 01:05:42,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:05:42,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:05:42,558.558 INFO    ] No existing commands found in stream
[2026-06-27 01:05:47,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:05:47,571.571 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-27 01:05:51,406.406 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 01:05:51,408.408 INFO    ] Checking for system updates...
[2026-06-27 01:05:51,430.430 INFO    ] 200
[2026-06-27 01:05:51,431.431 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:05:51,461.461 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:05:51,463.463 INFO    ] No update needed
[2026-06-27 01:05:51,464.464 INFO    ] Checking for camera pi updates...
[2026-06-27 01:05:51,483.483 INFO    ] 200
[2026-06-27 01:05:51,485.485 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:05:51,512.512 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:05:51,555.555 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:05:51,557.557 INFO    ] No camera update needed
[2026-06-27 01:05:51,558.558 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:05:51,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:05:51,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:05:51,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:05:53,607.607 INFO    ] ================================================
[2026-06-27 01:05:53,622.622 INFO    ] Launching Daemon at Sat Jun 27 01:05:53 IST 2026
[2026-06-27 01:05:53,633.633 INFO    ] ================================================
[2026-06-27 01:05:53,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:05:53
[2026-06-27 01:05:54,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:05:54,412.412 INFO    ] Initializing speech engine...
[2026-06-27 01:05:54,417.417 INFO    ] 2026-06-27 01:05:54
[2026-06-27 01:05:54,619.619 INFO    ] 2026-06-27 01:05:54
[2026-06-27 01:05:54,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:05:54,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:05:54,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:05:54,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:05:55,012.012 INFO    ] time= 27/06/2026 01:05:54
[2026-06-27 01:05:55,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:05:55,061.061 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:05:55,132.132 INFO    ] No existing commands found in stream
[2026-06-27 01:06:00,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:06:00,145.145 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-27 01:06:03,873.873 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 01:06:03,875.875 INFO    ] Checking for system updates...
[2026-06-27 01:06:03,898.898 INFO    ] 200
[2026-06-27 01:06:03,899.899 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-27 01:06:03,901.901 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-27 01:06:03,903.903 INFO    ] Checking for camera pi updates...
[2026-06-27 01:06:03,937.937 INFO    ] 200
[2026-06-27 01:06:03,939.939 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-27 01:06:03,940.940 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-27 01:06:03,941.941 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:06:03,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:06:03,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:06:03,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:06:05,980.980 INFO    ] ================================================
[2026-06-27 01:06:06,996.996 INFO    ] Launching Daemon at Sat Jun 27 01:06:05 IST 2026
[2026-06-27 01:06:06,006.006 INFO    ] ================================================
[2026-06-27 01:06:06,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:06:06
[2026-06-27 01:06:06,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:06:06,833.833 INFO    ] Initializing speech engine...
[2026-06-27 01:06:06,838.838 INFO    ] 2026-06-27 01:06:06
[2026-06-27 01:06:07,043.043 INFO    ] 2026-06-27 01:06:07
[2026-06-27 01:06:07,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:06:07,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:06:07,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:06:07,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:06:07,464.464 INFO    ] time= 27/06/2026 01:06:07
[2026-06-27 01:06:07,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:06:07,493.493 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:06:07,584.584 INFO    ] No existing commands found in stream
[2026-06-27 01:06:12,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:06:12,601.601 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-27 01:06:16,082.082 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:06:16,084.084 INFO    ] Checking for system updates...
[2026-06-27 01:06:16,108.108 INFO    ] 200
[2026-06-27 01:06:16,109.109 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:06:16,140.140 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:06:16,141.141 INFO    ] No update needed
[2026-06-27 01:06:16,143.143 INFO    ] Checking for camera pi updates...
[2026-06-27 01:06:16,164.164 INFO    ] 200
[2026-06-27 01:06:16,165.165 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:06:16,191.191 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:06:16,235.235 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:06:16,236.236 INFO    ] No camera update needed
[2026-06-27 01:06:16,237.237 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:06:16,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:06:16,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:06:16,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:06:18,282.282 INFO    ] ================================================
[2026-06-27 01:06:18,298.298 INFO    ] Launching Daemon at Sat Jun 27 01:06:18 IST 2026
[2026-06-27 01:06:18,309.309 INFO    ] ================================================
[2026-06-27 01:06:18,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:06:18
[2026-06-27 01:06:19,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:06:19,148.148 INFO    ] Initializing speech engine...
[2026-06-27 01:06:19,156.156 INFO    ] 2026-06-27 01:06:19
[2026-06-27 01:06:19,370.370 INFO    ] 2026-06-27 01:06:19
[2026-06-27 01:06:19,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:06:19,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:06:19,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:06:19,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:06:19,786.786 INFO    ] time= 27/06/2026 01:06:19
[2026-06-27 01:06:19,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:06:19,819.819 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:06:19,910.910 INFO    ] No existing commands found in stream
[2026-06-27 01:06:24,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:06:24,921.921 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-27 01:06:28,535.535 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:06:28,536.536 INFO    ] Checking for system updates...
[2026-06-27 01:06:28,558.558 INFO    ] 200
[2026-06-27 01:06:28,560.560 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:06:28,593.593 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:06:28,594.594 INFO    ] No update needed
[2026-06-27 01:06:28,596.596 INFO    ] Checking for camera pi updates...
[2026-06-27 01:06:28,619.619 INFO    ] 200
[2026-06-27 01:06:28,620.620 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:06:28,644.644 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:06:28,698.698 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:06:28,699.699 INFO    ] No camera update needed
[2026-06-27 01:06:28,700.700 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:06:28,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:06:28,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:06:28,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:06:30,732.732 INFO    ] ================================================
[2026-06-27 01:06:30,741.741 INFO    ] Launching Daemon at Sat Jun 27 01:06:30 IST 2026
[2026-06-27 01:06:30,747.747 INFO    ] ================================================
[2026-06-27 01:06:31,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:06:31
[2026-06-27 01:06:31,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:06:31,579.579 INFO    ] Initializing speech engine...
[2026-06-27 01:06:31,589.589 INFO    ] 2026-06-27 01:06:31
[2026-06-27 01:06:31,803.803 INFO    ] 2026-06-27 01:06:31
[2026-06-27 01:06:31,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:06:32,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:06:32,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:06:32,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:06:32,267.267 INFO    ] time= 27/06/2026 01:06:32
[2026-06-27 01:06:32,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:06:32,297.297 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:06:32,365.365 INFO    ] No existing commands found in stream
[2026-06-27 01:06:37,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:06:37,377.377 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-27 01:06:38,503.503 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 01:06:38,505.505 INFO    ] Checking for system updates...
[2026-06-27 01:06:38,527.527 INFO    ] 200
[2026-06-27 01:06:38,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:06:38,558.558 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:06:38,560.560 INFO    ] No update needed
[2026-06-27 01:06:38,561.561 INFO    ] Checking for camera pi updates...
[2026-06-27 01:06:38,582.582 INFO    ] 200
[2026-06-27 01:06:38,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:06:38,607.607 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:06:38,653.653 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:06:38,655.655 INFO    ] No camera update needed
[2026-06-27 01:06:38,656.656 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:06:38,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:06:38,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:06:38,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:06:40,701.701 INFO    ] ================================================
[2026-06-27 01:06:40,718.718 INFO    ] Launching Daemon at Sat Jun 27 01:06:40 IST 2026
[2026-06-27 01:06:40,729.729 INFO    ] ================================================
[2026-06-27 01:06:41,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:06:41
[2026-06-27 01:06:41,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:06:41,501.501 INFO    ] Initializing speech engine...
[2026-06-27 01:06:41,511.511 INFO    ] 2026-06-27 01:06:41
[2026-06-27 01:06:41,715.715 INFO    ] 2026-06-27 01:06:41
[2026-06-27 01:06:41,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:06:41,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:06:41,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:06:42,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:06:42,134.134 INFO    ] time= 27/06/2026 01:06:42
[2026-06-27 01:06:42,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:06:42,163.163 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:06:42,228.228 INFO    ] No existing commands found in stream
[2026-06-27 01:06:47,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:06:47,242.242 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-27 01:06:48,490.490 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 01:06:48,492.492 INFO    ] Checking for system updates...
[2026-06-27 01:06:48,514.514 INFO    ] 200
[2026-06-27 01:06:48,515.515 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:06:48,548.548 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:06:48,549.549 INFO    ] No update needed
[2026-06-27 01:06:48,551.551 INFO    ] Checking for camera pi updates...
[2026-06-27 01:06:48,572.572 INFO    ] 200
[2026-06-27 01:06:48,573.573 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:06:48,596.596 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:06:48,646.646 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:06:48,647.647 INFO    ] No camera update needed
[2026-06-27 01:06:48,648.648 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:06:48,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:06:48,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:06:48,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:06:50,693.693 INFO    ] ================================================
[2026-06-27 01:06:50,709.709 INFO    ] Launching Daemon at Sat Jun 27 01:06:50 IST 2026
[2026-06-27 01:06:50,721.721 INFO    ] ================================================
[2026-06-27 01:06:51,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:06:51
[2026-06-27 01:06:51,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:06:51,526.526 INFO    ] Initializing speech engine...
[2026-06-27 01:06:51,531.531 INFO    ] 2026-06-27 01:06:51
[2026-06-27 01:06:51,746.746 INFO    ] 2026-06-27 01:06:51
[2026-06-27 01:06:51,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:06:51,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:06:51,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:06:52,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:06:52,157.157 INFO    ] time= 27/06/2026 01:06:52
[2026-06-27 01:06:52,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:06:52,196.196 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:06:52,262.262 INFO    ] No existing commands found in stream
[2026-06-27 01:06:57,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:06:57,274.274 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-27 01:06:59,800.800 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 01:06:59,802.802 INFO    ] Checking for system updates...
[2026-06-27 01:06:59,824.824 INFO    ] 200
[2026-06-27 01:06:59,825.825 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:06:59,858.858 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:06:59,860.860 INFO    ] No update needed
[2026-06-27 01:06:59,861.861 INFO    ] Checking for camera pi updates...
[2026-06-27 01:06:59,881.881 INFO    ] 200
[2026-06-27 01:06:59,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:06:59,909.909 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:06:59,950.950 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:06:59,951.951 INFO    ] No camera update needed
[2026-06-27 01:06:59,953.953 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:06:59,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:06:59,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:06:59,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:07:01,993.993 INFO    ] ================================================
[2026-06-27 01:07:02,004.004 INFO    ] Launching Daemon at Sat Jun 27 01:07:02 IST 2026
[2026-06-27 01:07:02,012.012 INFO    ] ================================================
[2026-06-27 01:07:02,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:07:02
[2026-06-27 01:07:02,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:07:02,895.895 INFO    ] Initializing speech engine...
[2026-06-27 01:07:02,899.899 INFO    ] 2026-06-27 01:07:02
[2026-06-27 01:07:03,102.102 INFO    ] 2026-06-27 01:07:03
[2026-06-27 01:07:03,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:07:03,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:07:03,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:07:03,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:07:03,505.505 INFO    ] time= 27/06/2026 01:07:03
[2026-06-27 01:07:03,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:07:03,525.525 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:07:03,614.614 INFO    ] No existing commands found in stream
[2026-06-27 01:07:08,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:07:08,626.626 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-27 01:07:10,555.555 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 01:07:10,556.556 INFO    ] Checking for system updates...
[2026-06-27 01:07:10,577.577 INFO    ] 200
[2026-06-27 01:07:10,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:07:10,611.611 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:07:10,613.613 INFO    ] No update needed
[2026-06-27 01:07:10,614.614 INFO    ] Checking for camera pi updates...
[2026-06-27 01:07:10,636.636 INFO    ] 200
[2026-06-27 01:07:10,638.638 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:07:10,662.662 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:07:10,713.713 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:07:10,714.714 INFO    ] No camera update needed
[2026-06-27 01:07:10,715.715 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:07:10,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:07:10,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:07:10,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:07:12,762.762 INFO    ] ================================================
[2026-06-27 01:07:12,777.777 INFO    ] Launching Daemon at Sat Jun 27 01:07:12 IST 2026
[2026-06-27 01:07:12,788.788 INFO    ] ================================================
[2026-06-27 01:07:13,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:07:13
[2026-06-27 01:07:13,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:07:13,590.590 INFO    ] Initializing speech engine...
[2026-06-27 01:07:13,600.600 INFO    ] 2026-06-27 01:07:13
[2026-06-27 01:07:13,804.804 INFO    ] 2026-06-27 01:07:13
[2026-06-27 01:07:13,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:07:14,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:07:14,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:07:14,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:07:14,222.222 INFO    ] time= 27/06/2026 01:07:14
[2026-06-27 01:07:14,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:07:14,252.252 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:07:14,318.318 INFO    ] No existing commands found in stream
[2026-06-27 01:07:19,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:07:19,336.336 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-27 01:07:20,756.756 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 01:07:20,759.759 INFO    ] Checking for system updates...
[2026-06-27 01:07:20,780.780 INFO    ] 200
[2026-06-27 01:07:20,781.781 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:07:20,814.814 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:07:20,816.816 INFO    ] No update needed
[2026-06-27 01:07:20,817.817 INFO    ] Checking for camera pi updates...
[2026-06-27 01:07:20,839.839 INFO    ] 200
[2026-06-27 01:07:20,841.841 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:07:20,867.867 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:07:20,913.913 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:07:20,914.914 INFO    ] No camera update needed
[2026-06-27 01:07:20,915.915 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:07:20,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:07:20,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:07:20,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:07:22,961.961 INFO    ] ================================================
[2026-06-27 01:07:22,977.977 INFO    ] Launching Daemon at Sat Jun 27 01:07:22 IST 2026
[2026-06-27 01:07:22,988.988 INFO    ] ================================================
[2026-06-27 01:07:23,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:07:23
[2026-06-27 01:07:23,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:07:23,751.751 INFO    ] Initializing speech engine...
[2026-06-27 01:07:23,764.764 INFO    ] 2026-06-27 01:07:23
[2026-06-27 01:07:23,970.970 INFO    ] 2026-06-27 01:07:23
[2026-06-27 01:07:23,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:07:24,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:07:24,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:07:24,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:07:24,374.374 INFO    ] time= 27/06/2026 01:07:24
[2026-06-27 01:07:24,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:07:24,416.416 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:07:24,483.483 INFO    ] No existing commands found in stream
[2026-06-27 01:07:29,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:07:29,500.500 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-27 01:07:30,881.881 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 01:07:30,882.882 INFO    ] Checking for system updates...
[2026-06-27 01:07:30,903.903 INFO    ] 200
[2026-06-27 01:07:30,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:07:30,937.937 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:07:30,939.939 INFO    ] No update needed
[2026-06-27 01:07:30,940.940 INFO    ] Checking for camera pi updates...
[2026-06-27 01:07:30,961.961 INFO    ] 200
[2026-06-27 01:07:30,962.962 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:07:30,987.987 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:07:31,039.039 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:07:31,041.041 INFO    ] No camera update needed
[2026-06-27 01:07:31,042.042 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:07:31,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:07:31,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:07:31,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:07:33,082.082 INFO    ] ================================================
[2026-06-27 01:07:33,098.098 INFO    ] Launching Daemon at Sat Jun 27 01:07:33 IST 2026
[2026-06-27 01:07:33,110.110 INFO    ] ================================================
[2026-06-27 01:07:33,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:07:33
[2026-06-27 01:07:33,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:07:33,889.889 INFO    ] Initializing speech engine...
[2026-06-27 01:07:33,898.898 INFO    ] 2026-06-27 01:07:33
[2026-06-27 01:07:34,107.107 INFO    ] 2026-06-27 01:07:34
[2026-06-27 01:07:34,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:07:34,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:07:34,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:07:34,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:07:34,532.532 INFO    ] time= 27/06/2026 01:07:34
[2026-06-27 01:07:34,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:07:34,563.563 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:07:34,632.632 INFO    ] No existing commands found in stream
[2026-06-27 01:07:39,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:07:39,644.644 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-27 01:07:42,320.320 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 01:07:42,322.322 INFO    ] Checking for system updates...
[2026-06-27 01:07:42,345.345 INFO    ] 200
[2026-06-27 01:07:42,346.346 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:07:42,383.383 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:07:42,384.384 INFO    ] No update needed
[2026-06-27 01:07:42,386.386 INFO    ] Checking for camera pi updates...
[2026-06-27 01:07:42,410.410 INFO    ] 200
[2026-06-27 01:07:42,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:07:42,437.437 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:07:42,479.479 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:07:42,480.480 INFO    ] No camera update needed
[2026-06-27 01:07:42,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:07:42,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:07:42,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:07:42,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:07:44,530.530 INFO    ] ================================================
[2026-06-27 01:07:44,546.546 INFO    ] Launching Daemon at Sat Jun 27 01:07:44 IST 2026
[2026-06-27 01:07:44,557.557 INFO    ] ================================================
[2026-06-27 01:07:44,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:07:44
[2026-06-27 01:07:45,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:07:45,410.410 INFO    ] Initializing speech engine...
[2026-06-27 01:07:45,414.414 INFO    ] 2026-06-27 01:07:45
[2026-06-27 01:07:45,615.615 INFO    ] 2026-06-27 01:07:45
[2026-06-27 01:07:45,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:07:45,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:07:45,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:07:45,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:07:46,066.066 INFO    ] time= 27/06/2026 01:07:46
[2026-06-27 01:07:46,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:07:46,100.100 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:07:46,167.167 INFO    ] No existing commands found in stream
[2026-06-27 01:07:51,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:07:51,184.184 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-27 01:07:52,708.708 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 01:07:52,709.709 INFO    ] Checking for system updates...
[2026-06-27 01:07:52,730.730 INFO    ] 200
[2026-06-27 01:07:52,731.731 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:07:52,762.762 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:07:52,763.763 INFO    ] No update needed
[2026-06-27 01:07:52,765.765 INFO    ] Checking for camera pi updates...
[2026-06-27 01:07:52,786.786 INFO    ] 200
[2026-06-27 01:07:52,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:07:52,812.812 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:07:52,856.856 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:07:52,857.857 INFO    ] No camera update needed
[2026-06-27 01:07:52,859.859 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:07:52,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:07:52,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:07:52,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:07:54,906.906 INFO    ] ================================================
[2026-06-27 01:07:54,922.922 INFO    ] Launching Daemon at Sat Jun 27 01:07:54 IST 2026
[2026-06-27 01:07:54,933.933 INFO    ] ================================================
[2026-06-27 01:07:55,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:07:55
[2026-06-27 01:07:55,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:07:55,738.738 INFO    ] Initializing speech engine...
[2026-06-27 01:07:55,750.750 INFO    ] 2026-06-27 01:07:55
[2026-06-27 01:07:55,957.957 INFO    ] 2026-06-27 01:07:55
[2026-06-27 01:07:55,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:07:56,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:07:56,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:07:56,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:07:56,372.372 INFO    ] time= 27/06/2026 01:07:56
[2026-06-27 01:07:56,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:07:56,405.405 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:07:56,471.471 INFO    ] No existing commands found in stream
[2026-06-27 01:08:01,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:08:01,484.484 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-27 01:08:03,038.038 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 01:08:03,039.039 INFO    ] Checking for system updates...
[2026-06-27 01:08:03,061.061 INFO    ] 200
[2026-06-27 01:08:03,063.063 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:08:03,094.094 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:08:03,095.095 INFO    ] No update needed
[2026-06-27 01:08:03,096.096 INFO    ] Checking for camera pi updates...
[2026-06-27 01:08:03,118.118 INFO    ] 200
[2026-06-27 01:08:03,119.119 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:08:03,142.142 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:08:03,196.196 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:08:03,198.198 INFO    ] No camera update needed
[2026-06-27 01:08:03,199.199 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:08:03,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:08:03,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:08:03,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:08:05,245.245 INFO    ] ================================================
[2026-06-27 01:08:05,261.261 INFO    ] Launching Daemon at Sat Jun 27 01:08:05 IST 2026
[2026-06-27 01:08:05,273.273 INFO    ] ================================================
[2026-06-27 01:08:05,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:08:05
[2026-06-27 01:08:05,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:08:06,086.086 INFO    ] Initializing speech engine...
[2026-06-27 01:08:06,090.090 INFO    ] 2026-06-27 01:08:06
[2026-06-27 01:08:06,307.307 INFO    ] 2026-06-27 01:08:06
[2026-06-27 01:08:06,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:08:06,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:08:06,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:08:06,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:08:06,729.729 INFO    ] time= 27/06/2026 01:08:06
[2026-06-27 01:08:06,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:08:06,757.757 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:08:06,824.824 INFO    ] No existing commands found in stream
[2026-06-27 01:08:11,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:08:11,836.836 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-27 01:08:13,667.667 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:08:13,669.669 INFO    ] Checking for system updates...
[2026-06-27 01:08:13,695.695 INFO    ] 200
[2026-06-27 01:08:13,697.697 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:08:13,727.727 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:08:13,728.728 INFO    ] No update needed
[2026-06-27 01:08:13,730.730 INFO    ] Checking for camera pi updates...
[2026-06-27 01:08:13,749.749 INFO    ] 200
[2026-06-27 01:08:13,751.751 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:08:13,774.774 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:08:13,918.918 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:08:13,919.919 INFO    ] No camera update needed
[2026-06-27 01:08:13,920.920 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:08:13,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:08:13,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:08:13,928.928 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:08:15,966.966 INFO    ] ================================================
[2026-06-27 01:08:15,982.982 INFO    ] Launching Daemon at Sat Jun 27 01:08:15 IST 2026
[2026-06-27 01:08:15,993.993 INFO    ] ================================================
[2026-06-27 01:08:16,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:08:16
[2026-06-27 01:08:16,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:08:16,833.833 INFO    ] Initializing speech engine...
[2026-06-27 01:08:16,838.838 INFO    ] 2026-06-27 01:08:16
[2026-06-27 01:08:17,044.044 INFO    ] 2026-06-27 01:08:17
[2026-06-27 01:08:17,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:08:17,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:08:17,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:08:17,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:08:17,455.455 INFO    ] time= 27/06/2026 01:08:17
[2026-06-27 01:08:17,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:08:17,489.489 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:08:17,584.584 INFO    ] No existing commands found in stream
[2026-06-27 01:08:22,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:08:22,596.596 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-27 01:08:23,893.893 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:08:23,894.894 INFO    ] Checking for system updates...
[2026-06-27 01:08:23,916.916 INFO    ] 200
[2026-06-27 01:08:23,918.918 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:08:23,951.951 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:08:23,953.953 INFO    ] No update needed
[2026-06-27 01:08:23,954.954 INFO    ] Checking for camera pi updates...
[2026-06-27 01:08:23,978.978 INFO    ] 200
[2026-06-27 01:08:23,980.980 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:08:24,006.006 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:08:24,034.034 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:08:24,035.035 INFO    ] No camera update needed
[2026-06-27 01:08:24,037.037 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:08:24,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:08:24,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:08:24,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:08:26,084.084 INFO    ] ================================================
[2026-06-27 01:08:26,101.101 INFO    ] Launching Daemon at Sat Jun 27 01:08:26 IST 2026
[2026-06-27 01:08:26,112.112 INFO    ] ================================================
[2026-06-27 01:08:26,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:08:26
[2026-06-27 01:08:26,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:08:26,971.971 INFO    ] Initializing speech engine...
[2026-06-27 01:08:26,974.974 INFO    ] 2026-06-27 01:08:26
[2026-06-27 01:08:27,168.168 INFO    ] 2026-06-27 01:08:27
[2026-06-27 01:08:27,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:08:28,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:08:28,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:08:28,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:08:28,264.264 INFO    ] time= 27/06/2026 01:08:28
[2026-06-27 01:08:28,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:08:28,281.281 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:08:28,346.346 INFO    ] No existing commands found in stream
[2026-06-27 01:08:33,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:08:33,359.359 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-27 01:08:35,194.194 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 01:08:35,195.195 INFO    ] Checking for system updates...
[2026-06-27 01:08:35,216.216 INFO    ] 200
[2026-06-27 01:08:35,217.217 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:08:35,247.247 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:08:35,249.249 INFO    ] No update needed
[2026-06-27 01:08:35,250.250 INFO    ] Checking for camera pi updates...
[2026-06-27 01:08:35,271.271 INFO    ] 200
[2026-06-27 01:08:35,272.272 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:08:35,296.296 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:08:35,338.338 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:08:35,340.340 INFO    ] No camera update needed
[2026-06-27 01:08:35,341.341 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:08:35,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:08:35,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:08:35,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:08:37,387.387 INFO    ] ================================================
[2026-06-27 01:08:37,404.404 INFO    ] Launching Daemon at Sat Jun 27 01:08:37 IST 2026
[2026-06-27 01:08:37,417.417 INFO    ] ================================================
[2026-06-27 01:08:37,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:08:37
[2026-06-27 01:08:38,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:08:38,225.225 INFO    ] Initializing speech engine...
[2026-06-27 01:08:38,229.229 INFO    ] 2026-06-27 01:08:38
[2026-06-27 01:08:38,424.424 INFO    ] 2026-06-27 01:08:38
[2026-06-27 01:08:38,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:08:38,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:08:38,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:08:38,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:08:38,870.870 INFO    ] time= 27/06/2026 01:08:38
[2026-06-27 01:08:38,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:08:38,951.951 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:08:39,073.073 INFO    ] No existing commands found in stream
[2026-06-27 01:08:44,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:08:44,087.087 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-27 01:08:48,177.177 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 01:08:48,179.179 INFO    ] Checking for system updates...
[2026-06-27 01:08:48,207.207 INFO    ] 200
[2026-06-27 01:08:48,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:08:48,242.242 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:08:48,243.243 INFO    ] No update needed
[2026-06-27 01:08:48,245.245 INFO    ] Checking for camera pi updates...
[2026-06-27 01:08:48,265.265 INFO    ] 200
[2026-06-27 01:08:48,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:08:48,290.290 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:08:48,332.332 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:08:48,333.333 INFO    ] No camera update needed
[2026-06-27 01:08:48,335.335 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:08:48,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:08:48,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:08:48,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:08:50,381.381 INFO    ] ================================================
[2026-06-27 01:08:50,397.397 INFO    ] Launching Daemon at Sat Jun 27 01:08:50 IST 2026
[2026-06-27 01:08:50,408.408 INFO    ] ================================================
[2026-06-27 01:08:50,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:08:50
[2026-06-27 01:08:51,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:08:51,240.240 INFO    ] Initializing speech engine...
[2026-06-27 01:08:51,245.245 INFO    ] 2026-06-27 01:08:51
[2026-06-27 01:08:51,449.449 INFO    ] 2026-06-27 01:08:51
[2026-06-27 01:08:51,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:08:51,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:08:51,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:08:51,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:08:51,860.860 INFO    ] time= 27/06/2026 01:08:51
[2026-06-27 01:08:51,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:08:51,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:08:51,966.966 INFO    ] No existing commands found in stream
[2026-06-27 01:08:56,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:08:56,983.983 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-27 01:08:58,281.281 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:08:58,283.283 INFO    ] Checking for system updates...
[2026-06-27 01:08:58,304.304 INFO    ] 200
[2026-06-27 01:08:58,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:08:58,338.338 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:08:58,340.340 INFO    ] No update needed
[2026-06-27 01:08:58,341.341 INFO    ] Checking for camera pi updates...
[2026-06-27 01:08:58,361.361 INFO    ] 200
[2026-06-27 01:08:58,362.362 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:08:58,386.386 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:08:58,434.434 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:08:58,435.435 INFO    ] No camera update needed
[2026-06-27 01:08:58,437.437 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:08:58,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:08:58,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:08:58,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:09:00,475.475 INFO    ] ================================================
[2026-06-27 01:09:00,491.491 INFO    ] Launching Daemon at Sat Jun 27 01:09:00 IST 2026
[2026-06-27 01:09:00,502.502 INFO    ] ================================================
[2026-06-27 01:09:00,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:09:00
[2026-06-27 01:09:01,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:09:01,507.507 INFO    ] Initializing speech engine...
[2026-06-27 01:09:01,514.514 INFO    ] 2026-06-27 01:09:01
[2026-06-27 01:09:01,775.775 INFO    ] 2026-06-27 01:09:01
[2026-06-27 01:09:01,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:09:02,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:09:02,033.033 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:09:02,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:09:02,213.213 INFO    ] time= 27/06/2026 01:09:02
[2026-06-27 01:09:02,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:09:02,276.276 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:09:02,352.352 INFO    ] No existing commands found in stream
[2026-06-27 01:09:07,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:09:07,366.366 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-27 01:09:10,912.912 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 01:09:10,913.913 INFO    ] Checking for system updates...
[2026-06-27 01:09:10,934.934 INFO    ] 200
[2026-06-27 01:09:10,936.936 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:09:10,967.967 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:09:10,968.968 INFO    ] No update needed
[2026-06-27 01:09:10,969.969 INFO    ] Checking for camera pi updates...
[2026-06-27 01:09:10,990.990 INFO    ] 200
[2026-06-27 01:09:10,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:09:11,019.019 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:09:11,070.070 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:09:11,072.072 INFO    ] No camera update needed
[2026-06-27 01:09:11,075.075 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:09:11,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:09:11,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:09:11,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:09:13,130.130 INFO    ] ================================================
[2026-06-27 01:09:13,145.145 INFO    ] Launching Daemon at Sat Jun 27 01:09:13 IST 2026
[2026-06-27 01:09:13,156.156 INFO    ] ================================================
[2026-06-27 01:09:13,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:09:13
[2026-06-27 01:09:13,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:09:13,963.963 INFO    ] Initializing speech engine...
[2026-06-27 01:09:13,968.968 INFO    ] 2026-06-27 01:09:13
[2026-06-27 01:09:14,187.187 INFO    ] 2026-06-27 01:09:14
[2026-06-27 01:09:14,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:09:14,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:09:14,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:09:14,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:09:14,610.610 INFO    ] time= 27/06/2026 01:09:14
[2026-06-27 01:09:14,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:09:14,641.641 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:09:14,707.707 INFO    ] No existing commands found in stream
[2026-06-27 01:09:19,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:09:19,720.720 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-27 01:09:23,246.246 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 01:09:23,247.247 INFO    ] Checking for system updates...
[2026-06-27 01:09:23,268.268 INFO    ] 200
[2026-06-27 01:09:23,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:09:23,300.300 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:09:23,301.301 INFO    ] No update needed
[2026-06-27 01:09:23,303.303 INFO    ] Checking for camera pi updates...
[2026-06-27 01:09:23,324.324 INFO    ] 200
[2026-06-27 01:09:23,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:09:23,353.353 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:09:23,395.395 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:09:23,396.396 INFO    ] No camera update needed
[2026-06-27 01:09:23,398.398 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:09:23,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:09:23,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:09:23,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:09:25,443.443 INFO    ] ================================================
[2026-06-27 01:09:25,459.459 INFO    ] Launching Daemon at Sat Jun 27 01:09:25 IST 2026
[2026-06-27 01:09:25,470.470 INFO    ] ================================================
[2026-06-27 01:09:25,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:09:25
[2026-06-27 01:09:26,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:09:26,257.257 INFO    ] Initializing speech engine...
[2026-06-27 01:09:26,264.264 INFO    ] 2026-06-27 01:09:26
[2026-06-27 01:09:26,476.476 INFO    ] 2026-06-27 01:09:26
[2026-06-27 01:09:26,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:09:27,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:09:27,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:09:28,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:09:28,317.317 INFO    ] time= 27/06/2026 01:09:28
[2026-06-27 01:09:28,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:09:28,324.324 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:09:28,371.371 INFO    ] No existing commands found in stream
[2026-06-27 01:09:33,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:09:33,379.379 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-27 01:09:33,999.999 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 01:09:34,000.000 INFO    ] Checking for system updates...
[2026-06-27 01:09:34,021.021 INFO    ] 200
[2026-06-27 01:09:34,022.022 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:09:34,056.056 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:09:34,057.057 INFO    ] No update needed
[2026-06-27 01:09:34,058.058 INFO    ] Checking for camera pi updates...
[2026-06-27 01:09:34,079.079 INFO    ] 200
[2026-06-27 01:09:34,081.081 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:09:34,104.104 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:09:34,147.147 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:09:34,149.149 INFO    ] No camera update needed
[2026-06-27 01:09:34,150.150 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:09:34,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:09:34,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:09:34,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:09:36,195.195 INFO    ] ================================================
[2026-06-27 01:09:36,210.210 INFO    ] Launching Daemon at Sat Jun 27 01:09:36 IST 2026
[2026-06-27 01:09:36,221.221 INFO    ] ================================================
[2026-06-27 01:09:36,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:09:36
[2026-06-27 01:09:36,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:09:37,038.038 INFO    ] Initializing speech engine...
[2026-06-27 01:09:37,047.047 INFO    ] 2026-06-27 01:09:37
[2026-06-27 01:09:37,253.253 INFO    ] 2026-06-27 01:09:37
[2026-06-27 01:09:37,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:09:37,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:09:37,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:09:37,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:09:37,673.673 INFO    ] time= 27/06/2026 01:09:37
[2026-06-27 01:09:37,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:09:37,702.702 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:09:37,769.769 INFO    ] No existing commands found in stream
[2026-06-27 01:09:42,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:09:42,781.781 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-27 01:09:45,491.491 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 01:09:45,492.492 INFO    ] Checking for system updates...
[2026-06-27 01:09:45,515.515 INFO    ] 200
[2026-06-27 01:09:45,517.517 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:09:45,549.549 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:09:45,551.551 INFO    ] No update needed
[2026-06-27 01:09:45,552.552 INFO    ] Checking for camera pi updates...
[2026-06-27 01:09:45,571.571 INFO    ] 200
[2026-06-27 01:09:45,572.572 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:09:45,596.596 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:09:45,640.640 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:09:45,641.641 INFO    ] No camera update needed
[2026-06-27 01:09:45,642.642 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:09:45,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:09:45,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:09:45,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:09:47,688.688 INFO    ] ================================================
[2026-06-27 01:09:47,703.703 INFO    ] Launching Daemon at Sat Jun 27 01:09:47 IST 2026
[2026-06-27 01:09:47,713.713 INFO    ] ================================================
[2026-06-27 01:09:48,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:09:48
[2026-06-27 01:09:48,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:09:48,550.550 INFO    ] Initializing speech engine...
[2026-06-27 01:09:48,559.559 INFO    ] 2026-06-27 01:09:48
[2026-06-27 01:09:48,764.764 INFO    ] 2026-06-27 01:09:48
[2026-06-27 01:09:48,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:09:48,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:09:48,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:09:49,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:09:49,179.179 INFO    ] time= 27/06/2026 01:09:49
[2026-06-27 01:09:49,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:09:49,211.211 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:09:49,277.277 INFO    ] No existing commands found in stream
[2026-06-27 01:09:54,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:09:54,290.290 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-27 01:09:56,488.488 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 01:09:56,490.490 INFO    ] Checking for system updates...
[2026-06-27 01:09:56,510.510 INFO    ] 200
[2026-06-27 01:09:56,512.512 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:09:56,544.544 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:09:56,546.546 INFO    ] No update needed
[2026-06-27 01:09:56,547.547 INFO    ] Checking for camera pi updates...
[2026-06-27 01:09:56,569.569 INFO    ] 200
[2026-06-27 01:09:56,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:09:56,595.595 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:09:56,639.639 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:09:56,640.640 INFO    ] No camera update needed
[2026-06-27 01:09:56,641.641 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:09:56,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:09:56,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:09:56,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:09:58,681.681 INFO    ] ================================================
[2026-06-27 01:09:58,696.696 INFO    ] Launching Daemon at Sat Jun 27 01:09:58 IST 2026
[2026-06-27 01:09:58,707.707 INFO    ] ================================================
[2026-06-27 01:09:59,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:09:59
[2026-06-27 01:09:59,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:09:59,598.598 INFO    ] Initializing speech engine...
[2026-06-27 01:09:59,608.608 INFO    ] 2026-06-27 01:09:59
[2026-06-27 01:09:59,823.823 INFO    ] 2026-06-27 01:09:59
[2026-06-27 01:09:59,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:09:59,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:10:00,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:10:00,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:10:00,244.244 INFO    ] time= 27/06/2026 01:10:00
[2026-06-27 01:10:00,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:10:00,311.311 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:10:00,388.388 INFO    ] No existing commands found in stream
[2026-06-27 01:10:05,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:10:05,401.401 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-27 01:10:08,924.924 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 01:10:08,926.926 INFO    ] Checking for system updates...
[2026-06-27 01:10:08,947.947 INFO    ] 200
[2026-06-27 01:10:08,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:10:08,981.981 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:10:08,982.982 INFO    ] No update needed
[2026-06-27 01:10:08,984.984 INFO    ] Checking for camera pi updates...
[2026-06-27 01:10:09,003.003 INFO    ] 200
[2026-06-27 01:10:09,005.005 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:10:09,028.028 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:10:09,072.072 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:10:09,073.073 INFO    ] No camera update needed
[2026-06-27 01:10:09,075.075 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:10:09,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:10:09,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:10:09,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:10:11,121.121 INFO    ] ================================================
[2026-06-27 01:10:11,136.136 INFO    ] Launching Daemon at Sat Jun 27 01:10:11 IST 2026
[2026-06-27 01:10:11,147.147 INFO    ] ================================================
[2026-06-27 01:10:11,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:10:11
[2026-06-27 01:10:11,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:10:11,960.960 INFO    ] Initializing speech engine...
[2026-06-27 01:10:11,965.965 INFO    ] 2026-06-27 01:10:11
[2026-06-27 01:10:12,181.181 INFO    ] 2026-06-27 01:10:12
[2026-06-27 01:10:12,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:10:12,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:10:12,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:10:12,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:10:12,596.596 INFO    ] time= 27/06/2026 01:10:12
[2026-06-27 01:10:12,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:10:12,662.662 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:10:12,739.739 INFO    ] No existing commands found in stream
[2026-06-27 01:10:17,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:10:17,751.751 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-27 01:10:19,426.426 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 01:10:19,427.427 INFO    ] Checking for system updates...
[2026-06-27 01:10:19,448.448 INFO    ] 200
[2026-06-27 01:10:19,449.449 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:10:19,479.479 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:10:19,481.481 INFO    ] No update needed
[2026-06-27 01:10:19,482.482 INFO    ] Checking for camera pi updates...
[2026-06-27 01:10:19,502.502 INFO    ] 200
[2026-06-27 01:10:19,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:10:19,530.530 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:10:19,668.668 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:10:19,670.670 INFO    ] No camera update needed
[2026-06-27 01:10:19,671.671 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:10:19,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:10:19,675.675 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:10:19,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:10:21,718.718 INFO    ] ================================================
[2026-06-27 01:10:21,733.733 INFO    ] Launching Daemon at Sat Jun 27 01:10:21 IST 2026
[2026-06-27 01:10:21,744.744 INFO    ] ================================================
[2026-06-27 01:10:22,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:10:22
[2026-06-27 01:10:22,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:10:22,530.530 INFO    ] Initializing speech engine...
[2026-06-27 01:10:22,540.540 INFO    ] 2026-06-27 01:10:22
[2026-06-27 01:10:22,746.746 INFO    ] 2026-06-27 01:10:22
[2026-06-27 01:10:22,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:10:22,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:10:22,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:10:23,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:10:23,146.146 INFO    ] time= 27/06/2026 01:10:23
[2026-06-27 01:10:23,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:10:23,197.197 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:10:23,269.269 INFO    ] No existing commands found in stream
[2026-06-27 01:10:28,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:10:28,281.281 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-27 01:10:30,268.268 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 01:10:30,269.269 INFO    ] Checking for system updates...
[2026-06-27 01:10:30,290.290 INFO    ] 200
[2026-06-27 01:10:30,291.291 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:10:30,327.327 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:10:30,328.328 INFO    ] No update needed
[2026-06-27 01:10:30,329.329 INFO    ] Checking for camera pi updates...
[2026-06-27 01:10:30,349.349 INFO    ] 200
[2026-06-27 01:10:30,350.350 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:10:30,373.373 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:10:30,418.418 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:10:30,420.420 INFO    ] No camera update needed
[2026-06-27 01:10:30,421.421 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:10:30,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:10:30,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:10:30,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:10:32,474.474 INFO    ] ================================================
[2026-06-27 01:10:32,490.490 INFO    ] Launching Daemon at Sat Jun 27 01:10:32 IST 2026
[2026-06-27 01:10:32,501.501 INFO    ] ================================================
[2026-06-27 01:10:32,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:10:32
[2026-06-27 01:10:33,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:10:33,289.289 INFO    ] Initializing speech engine...
[2026-06-27 01:10:33,297.297 INFO    ] 2026-06-27 01:10:33
[2026-06-27 01:10:33,510.510 INFO    ] 2026-06-27 01:10:33
[2026-06-27 01:10:33,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:10:33,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:10:33,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:10:33,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:10:33,933.933 INFO    ] time= 27/06/2026 01:10:33
[2026-06-27 01:10:33,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:10:33,963.963 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:10:34,028.028 INFO    ] No existing commands found in stream
[2026-06-27 01:10:39,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:10:39,041.041 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-27 01:10:40,118.118 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 01:10:40,119.119 INFO    ] Checking for system updates...
[2026-06-27 01:10:40,141.141 INFO    ] 200
[2026-06-27 01:10:40,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:10:40,173.173 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:10:40,174.174 INFO    ] No update needed
[2026-06-27 01:10:40,176.176 INFO    ] Checking for camera pi updates...
[2026-06-27 01:10:40,195.195 INFO    ] 200
[2026-06-27 01:10:40,197.197 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:10:40,222.222 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:10:40,260.260 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:10:40,261.261 INFO    ] No camera update needed
[2026-06-27 01:10:40,263.263 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:10:40,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:10:40,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:10:40,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:10:42,309.309 INFO    ] ================================================
[2026-06-27 01:10:42,324.324 INFO    ] Launching Daemon at Sat Jun 27 01:10:42 IST 2026
[2026-06-27 01:10:42,335.335 INFO    ] ================================================
[2026-06-27 01:10:42,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:10:42
[2026-06-27 01:10:42,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:10:43,127.127 INFO    ] Initializing speech engine...
[2026-06-27 01:10:43,132.132 INFO    ] 2026-06-27 01:10:43
[2026-06-27 01:10:43,339.339 INFO    ] 2026-06-27 01:10:43
[2026-06-27 01:10:43,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:10:43,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:10:43,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:10:43,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:10:43,767.767 INFO    ] time= 27/06/2026 01:10:43
[2026-06-27 01:10:43,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:10:43,796.796 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:10:43,863.863 INFO    ] No existing commands found in stream
[2026-06-27 01:10:48,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:10:48,876.876 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-27 01:10:53,155.155 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 01:10:53,157.157 INFO    ] Checking for system updates...
[2026-06-27 01:10:53,177.177 INFO    ] 200
[2026-06-27 01:10:53,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:10:53,214.214 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:10:53,215.215 INFO    ] No update needed
[2026-06-27 01:10:53,217.217 INFO    ] Checking for camera pi updates...
[2026-06-27 01:10:53,237.237 INFO    ] 200
[2026-06-27 01:10:53,239.239 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:10:53,264.264 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:10:53,361.361 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:10:53,363.363 INFO    ] No camera update needed
[2026-06-27 01:10:53,364.364 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:10:53,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:10:53,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:10:53,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:10:55,410.410 INFO    ] ================================================
[2026-06-27 01:10:55,425.425 INFO    ] Launching Daemon at Sat Jun 27 01:10:55 IST 2026
[2026-06-27 01:10:55,436.436 INFO    ] ================================================
[2026-06-27 01:10:55,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:10:55
[2026-06-27 01:10:56,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:10:56,244.244 INFO    ] Initializing speech engine...
[2026-06-27 01:10:56,249.249 INFO    ] 2026-06-27 01:10:56
[2026-06-27 01:10:56,455.455 INFO    ] 2026-06-27 01:10:56
[2026-06-27 01:10:56,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:10:57,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:10:57,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:10:58,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:10:58,230.230 INFO    ] time= 27/06/2026 01:10:58
[2026-06-27 01:10:58,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:10:58,232.232 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:10:58,279.279 INFO    ] No existing commands found in stream
[2026-06-27 01:11:03,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:11:03,290.290 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-27 01:11:06,761.761 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 01:11:06,763.763 INFO    ] Checking for system updates...
[2026-06-27 01:11:06,785.785 INFO    ] 200
[2026-06-27 01:11:06,786.786 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:11:06,817.817 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:11:06,818.818 INFO    ] No update needed
[2026-06-27 01:11:06,819.819 INFO    ] Checking for camera pi updates...
[2026-06-27 01:11:06,839.839 INFO    ] 200
[2026-06-27 01:11:06,840.840 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:11:06,865.865 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:11:06,904.904 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:11:06,906.906 INFO    ] No camera update needed
[2026-06-27 01:11:06,907.907 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:11:06,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:11:06,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:11:06,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:11:08,956.956 INFO    ] ================================================
[2026-06-27 01:11:08,973.973 INFO    ] Launching Daemon at Sat Jun 27 01:11:08 IST 2026
[2026-06-27 01:11:08,984.984 INFO    ] ================================================
[2026-06-27 01:11:09,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:11:09
[2026-06-27 01:11:09,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:11:09,805.805 INFO    ] Initializing speech engine...
[2026-06-27 01:11:09,809.809 INFO    ] 2026-06-27 01:11:09
[2026-06-27 01:11:10,014.014 INFO    ] 2026-06-27 01:11:09
[2026-06-27 01:11:10,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:11:10,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:11:10,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:11:10,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:11:10,432.432 INFO    ] time= 27/06/2026 01:11:10
[2026-06-27 01:11:10,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:11:10,461.461 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:11:10,526.526 INFO    ] No existing commands found in stream
[2026-06-27 01:11:15,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:11:15,540.540 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-27 01:11:16,018.018 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 01:11:16,019.019 INFO    ] Checking for system updates...
[2026-06-27 01:11:16,040.040 INFO    ] 200
[2026-06-27 01:11:16,041.041 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:11:16,075.075 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:11:16,076.076 INFO    ] No update needed
[2026-06-27 01:11:16,077.077 INFO    ] Checking for camera pi updates...
[2026-06-27 01:11:16,098.098 INFO    ] 200
[2026-06-27 01:11:16,099.099 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:11:16,124.124 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:11:16,170.170 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:11:16,171.171 INFO    ] No camera update needed
[2026-06-27 01:11:16,172.172 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:11:16,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:11:16,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:11:16,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:11:18,217.217 INFO    ] ================================================
[2026-06-27 01:11:18,232.232 INFO    ] Launching Daemon at Sat Jun 27 01:11:18 IST 2026
[2026-06-27 01:11:18,243.243 INFO    ] ================================================
[2026-06-27 01:11:18,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:11:18
[2026-06-27 01:11:18,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:11:19,113.113 INFO    ] Initializing speech engine...
[2026-06-27 01:11:19,117.117 INFO    ] 2026-06-27 01:11:19
[2026-06-27 01:11:19,323.323 INFO    ] 2026-06-27 01:11:19
[2026-06-27 01:11:19,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:11:19,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:11:19,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:11:19,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:11:19,749.749 INFO    ] time= 27/06/2026 01:11:19
[2026-06-27 01:11:19,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:11:19,777.777 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:11:19,844.844 INFO    ] No existing commands found in stream
[2026-06-27 01:11:24,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:11:24,856.856 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-27 01:11:25,831.831 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 01:11:25,832.832 INFO    ] Checking for system updates...
[2026-06-27 01:11:25,855.855 INFO    ] 200
[2026-06-27 01:11:25,857.857 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:11:25,888.888 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:11:25,889.889 INFO    ] No update needed
[2026-06-27 01:11:25,891.891 INFO    ] Checking for camera pi updates...
[2026-06-27 01:11:25,911.911 INFO    ] 200
[2026-06-27 01:11:25,912.912 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:11:25,937.937 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:11:25,976.976 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:11:25,978.978 INFO    ] No camera update needed
[2026-06-27 01:11:25,979.979 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:11:25,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:11:25,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:11:25,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:11:28,026.026 INFO    ] ================================================
[2026-06-27 01:11:28,041.041 INFO    ] Launching Daemon at Sat Jun 27 01:11:28 IST 2026
[2026-06-27 01:11:28,052.052 INFO    ] ================================================
[2026-06-27 01:11:28,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:11:28
[2026-06-27 01:11:28,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:11:28,878.878 INFO    ] Initializing speech engine...
[2026-06-27 01:11:28,886.886 INFO    ] 2026-06-27 01:11:28
[2026-06-27 01:11:29,095.095 INFO    ] 2026-06-27 01:11:29
[2026-06-27 01:11:29,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:11:29,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:11:29,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:11:29,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:11:29,507.507 INFO    ] time= 27/06/2026 01:11:29
[2026-06-27 01:11:29,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:11:29,548.548 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:11:29,619.619 INFO    ] No existing commands found in stream
[2026-06-27 01:11:34,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:11:34,632.632 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-27 01:11:35,978.978 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 01:11:35,979.979 INFO    ] Checking for system updates...
[2026-06-27 01:11:36,000.000 INFO    ] 200
[2026-06-27 01:11:36,002.002 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:11:36,032.032 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:11:36,033.033 INFO    ] No update needed
[2026-06-27 01:11:36,035.035 INFO    ] Checking for camera pi updates...
[2026-06-27 01:11:36,055.055 INFO    ] 200
[2026-06-27 01:11:36,057.057 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:11:36,080.080 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:11:36,121.121 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:11:36,123.123 INFO    ] No camera update needed
[2026-06-27 01:11:36,124.124 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:11:36,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:11:36,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:11:36,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:11:38,170.170 INFO    ] ================================================
[2026-06-27 01:11:38,185.185 INFO    ] Launching Daemon at Sat Jun 27 01:11:38 IST 2026
[2026-06-27 01:11:38,196.196 INFO    ] ================================================
[2026-06-27 01:11:38,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:11:38
[2026-06-27 01:11:38,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:11:39,023.023 INFO    ] Initializing speech engine...
[2026-06-27 01:11:39,028.028 INFO    ] 2026-06-27 01:11:39
[2026-06-27 01:11:39,234.234 INFO    ] 2026-06-27 01:11:39
[2026-06-27 01:11:39,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:11:39,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:11:39,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:11:39,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:11:39,646.646 INFO    ] time= 27/06/2026 01:11:39
[2026-06-27 01:11:39,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:11:39,687.687 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:11:39,760.760 INFO    ] No existing commands found in stream
[2026-06-27 01:11:44,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:11:44,772.772 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-27 01:11:49,121.121 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:11:49,122.122 INFO    ] Checking for system updates...
[2026-06-27 01:11:49,144.144 INFO    ] 200
[2026-06-27 01:11:49,146.146 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:11:49,179.179 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:11:49,180.180 INFO    ] No update needed
[2026-06-27 01:11:49,181.181 INFO    ] Checking for camera pi updates...
[2026-06-27 01:11:49,201.201 INFO    ] 200
[2026-06-27 01:11:49,203.203 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:11:49,226.226 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:11:49,268.268 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:11:49,269.269 INFO    ] No camera update needed
[2026-06-27 01:11:49,270.270 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:11:49,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:11:49,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:11:49,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:11:51,316.316 INFO    ] ================================================
[2026-06-27 01:11:51,332.332 INFO    ] Launching Daemon at Sat Jun 27 01:11:51 IST 2026
[2026-06-27 01:11:51,342.342 INFO    ] ================================================
[2026-06-27 01:11:51,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:11:51
[2026-06-27 01:11:51,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:11:52,135.135 INFO    ] Initializing speech engine...
[2026-06-27 01:11:52,140.140 INFO    ] 2026-06-27 01:11:52
[2026-06-27 01:11:52,344.344 INFO    ] 2026-06-27 01:11:52
[2026-06-27 01:11:52,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:11:52,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:11:52,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:11:52,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:11:52,759.759 INFO    ] time= 27/06/2026 01:11:52
[2026-06-27 01:11:52,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:11:52,792.792 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:11:52,884.884 INFO    ] No existing commands found in stream
[2026-06-27 01:11:57,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:11:57,901.901 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-27 01:11:58,691.691 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:11:58,692.692 INFO    ] Checking for system updates...
[2026-06-27 01:11:58,713.713 INFO    ] 200
[2026-06-27 01:11:58,715.715 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:11:58,745.745 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:11:58,747.747 INFO    ] No update needed
[2026-06-27 01:11:58,748.748 INFO    ] Checking for camera pi updates...
[2026-06-27 01:11:58,769.769 INFO    ] 200
[2026-06-27 01:11:58,770.770 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:11:58,797.797 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:11:58,841.841 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:11:58,843.843 INFO    ] No camera update needed
[2026-06-27 01:11:58,844.844 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:11:58,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:11:58,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:11:58,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:12:00,890.890 INFO    ] ================================================
[2026-06-27 01:12:00,905.905 INFO    ] Launching Daemon at Sat Jun 27 01:12:00 IST 2026
[2026-06-27 01:12:00,916.916 INFO    ] ================================================
[2026-06-27 01:12:01,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:12:01
[2026-06-27 01:12:01,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:12:01,885.885 INFO    ] Initializing speech engine...
[2026-06-27 01:12:01,890.890 INFO    ] 2026-06-27 01:12:01
[2026-06-27 01:12:02,101.101 INFO    ] 2026-06-27 01:12:02
[2026-06-27 01:12:02,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:12:02,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:12:02,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:12:02,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:12:02,571.571 INFO    ] time= 27/06/2026 01:12:02
[2026-06-27 01:12:02,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:12:02,603.603 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:12:02,669.669 INFO    ] No existing commands found in stream
[2026-06-27 01:12:07,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:12:07,679.679 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-27 01:12:08,193.193 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 01:12:08,194.194 INFO    ] Checking for system updates...
[2026-06-27 01:12:08,215.215 INFO    ] 200
[2026-06-27 01:12:08,216.216 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:12:08,246.246 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:12:08,247.247 INFO    ] No update needed
[2026-06-27 01:12:08,249.249 INFO    ] Checking for camera pi updates...
[2026-06-27 01:12:08,270.270 INFO    ] 200
[2026-06-27 01:12:08,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:12:08,296.296 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:12:08,338.338 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:12:08,339.339 INFO    ] No camera update needed
[2026-06-27 01:12:08,340.340 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:12:08,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:12:08,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:12:08,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:12:10,386.386 INFO    ] ================================================
[2026-06-27 01:12:10,401.401 INFO    ] Launching Daemon at Sat Jun 27 01:12:10 IST 2026
[2026-06-27 01:12:10,412.412 INFO    ] ================================================
[2026-06-27 01:12:10,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:12:10
[2026-06-27 01:12:11,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:12:11,190.190 INFO    ] Initializing speech engine...
[2026-06-27 01:12:11,195.195 INFO    ] 2026-06-27 01:12:11
[2026-06-27 01:12:11,398.398 INFO    ] 2026-06-27 01:12:11
[2026-06-27 01:12:11,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:12:11,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:12:11,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:12:11,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:12:11,806.806 INFO    ] time= 27/06/2026 01:12:11
[2026-06-27 01:12:11,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:12:11,840.840 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:12:11,909.909 INFO    ] No existing commands found in stream
[2026-06-27 01:12:16,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:12:16,922.922 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-27 01:12:18,531.531 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 01:12:18,532.532 INFO    ] Checking for system updates...
[2026-06-27 01:12:18,553.553 INFO    ] 200
[2026-06-27 01:12:18,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:12:18,585.585 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:12:18,586.586 INFO    ] No update needed
[2026-06-27 01:12:18,588.588 INFO    ] Checking for camera pi updates...
[2026-06-27 01:12:18,607.607 INFO    ] 200
[2026-06-27 01:12:18,608.608 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:12:18,634.634 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:12:18,678.678 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:12:18,680.680 INFO    ] No camera update needed
[2026-06-27 01:12:18,681.681 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:12:18,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:12:18,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:12:18,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:12:20,727.727 INFO    ] ================================================
[2026-06-27 01:12:20,743.743 INFO    ] Launching Daemon at Sat Jun 27 01:12:20 IST 2026
[2026-06-27 01:12:20,753.753 INFO    ] ================================================
[2026-06-27 01:12:21,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:12:21
[2026-06-27 01:12:21,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:12:21,552.552 INFO    ] Initializing speech engine...
[2026-06-27 01:12:21,565.565 INFO    ] 2026-06-27 01:12:21
[2026-06-27 01:12:21,773.773 INFO    ] 2026-06-27 01:12:21
[2026-06-27 01:12:21,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:12:21,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:12:21,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:12:22,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:12:22,192.192 INFO    ] time= 27/06/2026 01:12:22
[2026-06-27 01:12:22,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:12:22,227.227 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:12:22,292.292 INFO    ] No existing commands found in stream
[2026-06-27 01:12:27,304.304 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:12:27,306.306 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-27 01:12:29,906.906 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 01:12:29,907.907 INFO    ] Checking for system updates...
[2026-06-27 01:12:29,946.946 INFO    ] 200
[2026-06-27 01:12:29,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:12:29,996.996 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:12:29,997.997 INFO    ] No update needed
[2026-06-27 01:12:29,999.999 INFO    ] Checking for camera pi updates...
[2026-06-27 01:12:30,022.022 INFO    ] 200
[2026-06-27 01:12:30,024.024 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:12:30,048.048 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:12:30,189.189 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:12:30,190.190 INFO    ] No camera update needed
[2026-06-27 01:12:30,191.191 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:12:30,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:12:30,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:12:30,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:12:32,237.237 INFO    ] ================================================
[2026-06-27 01:12:32,252.252 INFO    ] Launching Daemon at Sat Jun 27 01:12:32 IST 2026
[2026-06-27 01:12:32,262.262 INFO    ] ================================================
[2026-06-27 01:12:32,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:12:32
[2026-06-27 01:12:32,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:12:33,062.062 INFO    ] Initializing speech engine...
[2026-06-27 01:12:33,068.068 INFO    ] 2026-06-27 01:12:33
[2026-06-27 01:12:33,272.272 INFO    ] 2026-06-27 01:12:33
[2026-06-27 01:12:33,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:12:33,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:12:33,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:12:33,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:12:33,689.689 INFO    ] time= 27/06/2026 01:12:33
[2026-06-27 01:12:33,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:12:33,719.719 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:12:33,809.809 INFO    ] No existing commands found in stream
[2026-06-27 01:12:38,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:12:38,826.826 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-27 01:12:42,826.826 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:12:42,828.828 INFO    ] Checking for system updates...
[2026-06-27 01:12:42,849.849 INFO    ] 200
[2026-06-27 01:12:42,850.850 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:12:42,882.882 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:12:42,884.884 INFO    ] No update needed
[2026-06-27 01:12:42,885.885 INFO    ] Checking for camera pi updates...
[2026-06-27 01:12:42,906.906 INFO    ] 200
[2026-06-27 01:12:42,907.907 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:12:42,932.932 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:12:42,978.978 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:12:42,979.979 INFO    ] No camera update needed
[2026-06-27 01:12:42,981.981 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:12:42,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:12:42,985.985 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:12:42,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:12:45,027.027 INFO    ] ================================================
[2026-06-27 01:12:45,043.043 INFO    ] Launching Daemon at Sat Jun 27 01:12:45 IST 2026
[2026-06-27 01:12:45,053.053 INFO    ] ================================================
[2026-06-27 01:12:45,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:12:45
[2026-06-27 01:12:45,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:12:45,845.845 INFO    ] Initializing speech engine...
[2026-06-27 01:12:45,856.856 INFO    ] 2026-06-27 01:12:45
[2026-06-27 01:12:46,059.059 INFO    ] 2026-06-27 01:12:46
[2026-06-27 01:12:46,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:12:46,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:12:46,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:12:46,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:12:46,481.481 INFO    ] time= 27/06/2026 01:12:46
[2026-06-27 01:12:46,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:12:46,509.509 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:12:46,577.577 INFO    ] No existing commands found in stream
[2026-06-27 01:12:51,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:12:51,589.589 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-27 01:12:55,243.243 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:12:55,244.244 INFO    ] Checking for system updates...
[2026-06-27 01:12:55,266.266 INFO    ] 200
[2026-06-27 01:12:55,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:12:55,297.297 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:12:55,299.299 INFO    ] No update needed
[2026-06-27 01:12:55,300.300 INFO    ] Checking for camera pi updates...
[2026-06-27 01:12:55,321.321 INFO    ] 200
[2026-06-27 01:12:55,322.322 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:12:55,349.349 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:12:55,377.377 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:12:55,379.379 INFO    ] No camera update needed
[2026-06-27 01:12:55,380.380 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:12:55,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:12:55,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:12:55,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:12:57,425.425 INFO    ] ================================================
[2026-06-27 01:12:57,440.440 INFO    ] Launching Daemon at Sat Jun 27 01:12:57 IST 2026
[2026-06-27 01:12:57,451.451 INFO    ] ================================================
[2026-06-27 01:12:57,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:12:57
[2026-06-27 01:12:58,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:12:58,218.218 INFO    ] Initializing speech engine...
[2026-06-27 01:12:58,226.226 INFO    ] 2026-06-27 01:12:58
[2026-06-27 01:12:58,436.436 INFO    ] 2026-06-27 01:12:58
[2026-06-27 01:12:58,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:12:58,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:12:58,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:12:58,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:12:58,832.832 INFO    ] time= 27/06/2026 01:12:58
[2026-06-27 01:12:58,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:12:58,881.881 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:12:58,951.951 INFO    ] No existing commands found in stream
[2026-06-27 01:13:03,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:13:03,964.964 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-27 01:13:06,644.644 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 01:13:06,645.645 INFO    ] Checking for system updates...
[2026-06-27 01:13:06,667.667 INFO    ] 200
[2026-06-27 01:13:06,669.669 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:13:06,699.699 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:13:06,700.700 INFO    ] No update needed
[2026-06-27 01:13:06,701.701 INFO    ] Checking for camera pi updates...
[2026-06-27 01:13:06,722.722 INFO    ] 200
[2026-06-27 01:13:06,723.723 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:13:06,748.748 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:13:06,793.793 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:13:06,794.794 INFO    ] No camera update needed
[2026-06-27 01:13:06,795.795 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:13:06,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:13:06,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:13:06,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:13:08,841.841 INFO    ] ================================================
[2026-06-27 01:13:08,856.856 INFO    ] Launching Daemon at Sat Jun 27 01:13:08 IST 2026
[2026-06-27 01:13:08,867.867 INFO    ] ================================================
[2026-06-27 01:13:09,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:13:09
[2026-06-27 01:13:09,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:13:09,668.668 INFO    ] Initializing speech engine...
[2026-06-27 01:13:09,672.672 INFO    ] 2026-06-27 01:13:09
[2026-06-27 01:13:09,877.877 INFO    ] 2026-06-27 01:13:09
[2026-06-27 01:13:09,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:13:10,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:13:10,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:13:10,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:13:10,287.287 INFO    ] time= 27/06/2026 01:13:10
[2026-06-27 01:13:10,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:13:10,325.325 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:13:10,391.391 INFO    ] No existing commands found in stream
[2026-06-27 01:13:15,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:13:15,403.403 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-27 01:13:18,328.328 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 01:13:18,330.330 INFO    ] Checking for system updates...
[2026-06-27 01:13:18,352.352 INFO    ] 200
[2026-06-27 01:13:18,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:13:18,386.386 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:13:18,388.388 INFO    ] No update needed
[2026-06-27 01:13:18,389.389 INFO    ] Checking for camera pi updates...
[2026-06-27 01:13:18,409.409 INFO    ] 200
[2026-06-27 01:13:18,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:13:18,435.435 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:13:18,480.480 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:13:18,481.481 INFO    ] No camera update needed
[2026-06-27 01:13:18,483.483 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:13:18,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:13:18,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:13:18,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:13:20,530.530 INFO    ] ================================================
[2026-06-27 01:13:20,546.546 INFO    ] Launching Daemon at Sat Jun 27 01:13:20 IST 2026
[2026-06-27 01:13:20,557.557 INFO    ] ================================================
[2026-06-27 01:13:20,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:13:20
[2026-06-27 01:13:21,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:13:21,327.327 INFO    ] Initializing speech engine...
[2026-06-27 01:13:21,335.335 INFO    ] 2026-06-27 01:13:21
[2026-06-27 01:13:21,548.548 INFO    ] 2026-06-27 01:13:21
[2026-06-27 01:13:21,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:13:21,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:13:21,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:13:21,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:13:21,971.971 INFO    ] time= 27/06/2026 01:13:21
[2026-06-27 01:13:21,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:13:22,001.001 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:13:22,093.093 INFO    ] No existing commands found in stream
[2026-06-27 01:13:27,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:13:27,105.105 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-27 01:13:30,436.436 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:13:30,437.437 INFO    ] Checking for system updates...
[2026-06-27 01:13:30,459.459 INFO    ] 200
[2026-06-27 01:13:30,460.460 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:13:30,490.490 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:13:30,491.491 INFO    ] No update needed
[2026-06-27 01:13:30,492.492 INFO    ] Checking for camera pi updates...
[2026-06-27 01:13:30,514.514 INFO    ] 200
[2026-06-27 01:13:30,515.515 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:13:30,539.539 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:13:30,581.581 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:13:30,582.582 INFO    ] No camera update needed
[2026-06-27 01:13:30,583.583 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:13:30,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:13:30,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:13:30,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:13:32,627.627 INFO    ] ================================================
[2026-06-27 01:13:32,642.642 INFO    ] Launching Daemon at Sat Jun 27 01:13:32 IST 2026
[2026-06-27 01:13:32,652.652 INFO    ] ================================================
[2026-06-27 01:13:32,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:13:32
[2026-06-27 01:13:33,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:13:33,446.446 INFO    ] Initializing speech engine...
[2026-06-27 01:13:33,452.452 INFO    ] 2026-06-27 01:13:33
[2026-06-27 01:13:33,653.653 INFO    ] 2026-06-27 01:13:33
[2026-06-27 01:13:33,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:13:33,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:13:33,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:13:33,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:13:34,057.057 INFO    ] time= 27/06/2026 01:13:34
[2026-06-27 01:13:34,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:13:34,096.096 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:13:34,166.166 INFO    ] No existing commands found in stream
[2026-06-27 01:13:39,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:13:39,179.179 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-27 01:13:40,366.366 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 01:13:40,367.367 INFO    ] Checking for system updates...
[2026-06-27 01:13:40,389.389 INFO    ] 200
[2026-06-27 01:13:40,390.390 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:13:40,422.422 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:13:40,423.423 INFO    ] No update needed
[2026-06-27 01:13:40,425.425 INFO    ] Checking for camera pi updates...
[2026-06-27 01:13:40,445.445 INFO    ] 200
[2026-06-27 01:13:40,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:13:40,471.471 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:13:40,511.511 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:13:40,513.513 INFO    ] No camera update needed
[2026-06-27 01:13:40,514.514 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:13:40,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:13:40,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:13:40,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:13:42,559.559 INFO    ] ================================================
[2026-06-27 01:13:42,575.575 INFO    ] Launching Daemon at Sat Jun 27 01:13:42 IST 2026
[2026-06-27 01:13:42,585.585 INFO    ] ================================================
[2026-06-27 01:13:42,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:13:42
[2026-06-27 01:13:43,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:13:43,425.425 INFO    ] Initializing speech engine...
[2026-06-27 01:13:43,430.430 INFO    ] 2026-06-27 01:13:43
[2026-06-27 01:13:43,633.633 INFO    ] 2026-06-27 01:13:43
[2026-06-27 01:13:43,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:13:43,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:13:43,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:13:44,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:13:44,054.054 INFO    ] time= 27/06/2026 01:13:44
[2026-06-27 01:13:44,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:13:44,082.082 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:13:44,151.151 INFO    ] No existing commands found in stream
[2026-06-27 01:13:49,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:13:49,178.178 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-27 01:13:51,607.607 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 01:13:51,609.609 INFO    ] Checking for system updates...
[2026-06-27 01:13:51,630.630 INFO    ] 200
[2026-06-27 01:13:51,631.631 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:13:51,662.662 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:13:51,664.664 INFO    ] No update needed
[2026-06-27 01:13:51,666.666 INFO    ] Checking for camera pi updates...
[2026-06-27 01:13:51,687.687 INFO    ] 200
[2026-06-27 01:13:51,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:13:51,713.713 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:13:51,761.761 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:13:51,762.762 INFO    ] No camera update needed
[2026-06-27 01:13:51,763.763 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:13:51,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:13:51,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:13:51,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:13:53,809.809 INFO    ] ================================================
[2026-06-27 01:13:53,825.825 INFO    ] Launching Daemon at Sat Jun 27 01:13:53 IST 2026
[2026-06-27 01:13:53,836.836 INFO    ] ================================================
[2026-06-27 01:13:54,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:13:54
[2026-06-27 01:13:54,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:13:54,657.657 INFO    ] Initializing speech engine...
[2026-06-27 01:13:54,662.662 INFO    ] 2026-06-27 01:13:54
[2026-06-27 01:13:54,866.866 INFO    ] 2026-06-27 01:13:54
[2026-06-27 01:13:54,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:13:55,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:13:55,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:13:55,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:13:55,281.281 INFO    ] time= 27/06/2026 01:13:55
[2026-06-27 01:13:55,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:13:55,310.310 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:13:55,378.378 INFO    ] No existing commands found in stream
[2026-06-27 01:14:00,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:14:00,389.389 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-27 01:14:02,813.813 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:14:02,815.815 INFO    ] Checking for system updates...
[2026-06-27 01:14:02,836.836 INFO    ] 200
[2026-06-27 01:14:02,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:14:02,869.869 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:14:02,871.871 INFO    ] No update needed
[2026-06-27 01:14:02,872.872 INFO    ] Checking for camera pi updates...
[2026-06-27 01:14:02,892.892 INFO    ] 200
[2026-06-27 01:14:02,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:14:02,918.918 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:14:02,963.963 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:14:02,965.965 INFO    ] No camera update needed
[2026-06-27 01:14:02,966.966 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:14:02,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:14:02,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:14:02,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:14:05,010.010 INFO    ] ================================================
[2026-06-27 01:14:05,026.026 INFO    ] Launching Daemon at Sat Jun 27 01:14:05 IST 2026
[2026-06-27 01:14:05,036.036 INFO    ] ================================================
[2026-06-27 01:14:05,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:14:05
[2026-06-27 01:14:05,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:14:05,833.833 INFO    ] Initializing speech engine...
[2026-06-27 01:14:05,846.846 INFO    ] 2026-06-27 01:14:05
[2026-06-27 01:14:06,068.068 INFO    ] 2026-06-27 01:14:06
[2026-06-27 01:14:06,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:14:06,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:14:06,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:14:06,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:14:06,509.509 INFO    ] time= 27/06/2026 01:14:06
[2026-06-27 01:14:06,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:14:06,546.546 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:14:06,617.617 INFO    ] No existing commands found in stream
[2026-06-27 01:14:11,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:14:11,628.628 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-27 01:14:13,191.191 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 01:14:13,192.192 INFO    ] Checking for system updates...
[2026-06-27 01:14:13,216.216 INFO    ] 200
[2026-06-27 01:14:13,218.218 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:14:13,250.250 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:14:13,251.251 INFO    ] No update needed
[2026-06-27 01:14:13,253.253 INFO    ] Checking for camera pi updates...
[2026-06-27 01:14:13,274.274 INFO    ] 200
[2026-06-27 01:14:13,275.275 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:14:13,300.300 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:14:13,341.341 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:14:13,342.342 INFO    ] No camera update needed
[2026-06-27 01:14:13,344.344 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:14:13,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:14:13,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:14:13,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:14:15,396.396 INFO    ] ================================================
[2026-06-27 01:14:15,411.411 INFO    ] Launching Daemon at Sat Jun 27 01:14:15 IST 2026
[2026-06-27 01:14:15,422.422 INFO    ] ================================================
[2026-06-27 01:14:15,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:14:15
[2026-06-27 01:14:16,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:14:16,219.219 INFO    ] Initializing speech engine...
[2026-06-27 01:14:16,223.223 INFO    ] 2026-06-27 01:14:16
[2026-06-27 01:14:16,449.449 INFO    ] 2026-06-27 01:14:16
[2026-06-27 01:14:16,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:14:16,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:14:16,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:14:16,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:14:16,874.874 INFO    ] time= 27/06/2026 01:14:16
[2026-06-27 01:14:16,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:14:16,908.908 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:14:17,017.017 INFO    ] No existing commands found in stream
[2026-06-27 01:14:22,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:14:22,034.034 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-27 01:14:26,404.404 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:14:26,406.406 INFO    ] Checking for system updates...
[2026-06-27 01:14:26,426.426 INFO    ] 200
[2026-06-27 01:14:26,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:14:26,460.460 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:14:26,461.461 INFO    ] No update needed
[2026-06-27 01:14:26,463.463 INFO    ] Checking for camera pi updates...
[2026-06-27 01:14:26,483.483 INFO    ] 200
[2026-06-27 01:14:26,485.485 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:14:26,508.508 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:14:26,560.560 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:14:26,561.561 INFO    ] No camera update needed
[2026-06-27 01:14:26,562.562 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:14:26,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:14:26,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:14:26,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:14:28,608.608 INFO    ] ================================================
[2026-06-27 01:14:28,623.623 INFO    ] Launching Daemon at Sat Jun 27 01:14:28 IST 2026
[2026-06-27 01:14:28,639.639 INFO    ] ================================================
[2026-06-27 01:14:29,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:14:29
[2026-06-27 01:14:29,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:14:29,449.449 INFO    ] Initializing speech engine...
[2026-06-27 01:14:29,454.454 INFO    ] 2026-06-27 01:14:29
[2026-06-27 01:14:29,647.647 INFO    ] 2026-06-27 01:14:29
[2026-06-27 01:14:29,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:14:29,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:14:29,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:14:30,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:14:30,101.101 INFO    ] time= 27/06/2026 01:14:30
[2026-06-27 01:14:30,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:14:30,131.131 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:14:30,198.198 INFO    ] No existing commands found in stream
[2026-06-27 01:14:35,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:14:35,215.215 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-27 01:14:36,279.279 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:14:36,280.280 INFO    ] Checking for system updates...
[2026-06-27 01:14:36,302.302 INFO    ] 200
[2026-06-27 01:14:36,304.304 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:14:36,336.336 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:14:36,338.338 INFO    ] No update needed
[2026-06-27 01:14:36,339.339 INFO    ] Checking for camera pi updates...
[2026-06-27 01:14:36,359.359 INFO    ] 200
[2026-06-27 01:14:36,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:14:36,385.385 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:14:36,427.427 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:14:36,428.428 INFO    ] No camera update needed
[2026-06-27 01:14:36,430.430 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:14:36,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:14:36,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:14:36,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:14:38,475.475 INFO    ] ================================================
[2026-06-27 01:14:38,491.491 INFO    ] Launching Daemon at Sat Jun 27 01:14:38 IST 2026
[2026-06-27 01:14:38,502.502 INFO    ] ================================================
[2026-06-27 01:14:38,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:14:38
[2026-06-27 01:14:39,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:14:39,374.374 INFO    ] Initializing speech engine...
[2026-06-27 01:14:39,380.380 INFO    ] 2026-06-27 01:14:39
[2026-06-27 01:14:39,606.606 INFO    ] 2026-06-27 01:14:39
[2026-06-27 01:14:39,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:14:39,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:14:39,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:14:39,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:14:40,020.020 INFO    ] time= 27/06/2026 01:14:39
[2026-06-27 01:14:40,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:14:40,049.049 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:14:40,117.117 INFO    ] No existing commands found in stream
[2026-06-27 01:14:45,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:14:45,130.130 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-27 01:14:45,506.506 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 01:14:45,508.508 INFO    ] Checking for system updates...
[2026-06-27 01:14:45,528.528 INFO    ] 200
[2026-06-27 01:14:45,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:14:45,561.561 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:14:45,562.562 INFO    ] No update needed
[2026-06-27 01:14:45,564.564 INFO    ] Checking for camera pi updates...
[2026-06-27 01:14:45,584.584 INFO    ] 200
[2026-06-27 01:14:45,585.585 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:14:45,610.610 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:14:45,657.657 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:14:45,659.659 INFO    ] No camera update needed
[2026-06-27 01:14:45,660.660 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:14:45,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:14:45,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:14:45,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:14:47,706.706 INFO    ] ================================================
[2026-06-27 01:14:47,721.721 INFO    ] Launching Daemon at Sat Jun 27 01:14:47 IST 2026
[2026-06-27 01:14:47,732.732 INFO    ] ================================================
[2026-06-27 01:14:48,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:14:48
[2026-06-27 01:14:48,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:14:48,587.587 INFO    ] Initializing speech engine...
[2026-06-27 01:14:48,593.593 INFO    ] 2026-06-27 01:14:48
[2026-06-27 01:14:48,799.799 INFO    ] 2026-06-27 01:14:48
[2026-06-27 01:14:48,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:14:49,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:14:49,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:14:49,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:14:49,221.221 INFO    ] time= 27/06/2026 01:14:49
[2026-06-27 01:14:49,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:14:49,249.249 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:14:49,316.316 INFO    ] No existing commands found in stream
[2026-06-27 01:14:54,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:14:54,333.333 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-27 01:14:58,552.552 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 01:14:58,553.553 INFO    ] Checking for system updates...
[2026-06-27 01:14:58,577.577 INFO    ] 200
[2026-06-27 01:14:58,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:14:58,611.611 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:14:58,612.612 INFO    ] No update needed
[2026-06-27 01:14:58,614.614 INFO    ] Checking for camera pi updates...
[2026-06-27 01:14:58,633.633 INFO    ] 200
[2026-06-27 01:14:58,635.635 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:14:58,658.658 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:14:58,699.699 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:14:58,700.700 INFO    ] No camera update needed
[2026-06-27 01:14:58,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:14:58,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:14:58,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:14:58,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:15:00,747.747 INFO    ] ================================================
[2026-06-27 01:15:00,762.762 INFO    ] Launching Daemon at Sat Jun 27 01:15:00 IST 2026
[2026-06-27 01:15:00,773.773 INFO    ] ================================================
[2026-06-27 01:15:01,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:15:01
[2026-06-27 01:15:01,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:15:01,575.575 INFO    ] Initializing speech engine...
[2026-06-27 01:15:01,585.585 INFO    ] 2026-06-27 01:15:01
[2026-06-27 01:15:01,790.790 INFO    ] 2026-06-27 01:15:01
[2026-06-27 01:15:01,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:15:02,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:15:02,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:15:02,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:15:02,269.269 INFO    ] time= 27/06/2026 01:15:02
[2026-06-27 01:15:02,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:15:02,272.272 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:15:02,339.339 INFO    ] No existing commands found in stream
[2026-06-27 01:15:07,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:15:07,349.349 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-27 01:15:09,661.661 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 01:15:09,663.663 INFO    ] Checking for system updates...
[2026-06-27 01:15:09,685.685 INFO    ] 200
[2026-06-27 01:15:09,687.687 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:15:09,721.721 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:15:09,722.722 INFO    ] No update needed
[2026-06-27 01:15:09,724.724 INFO    ] Checking for camera pi updates...
[2026-06-27 01:15:09,750.750 INFO    ] 200
[2026-06-27 01:15:09,751.751 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:15:09,778.778 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:15:09,820.820 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:15:09,821.821 INFO    ] No camera update needed
[2026-06-27 01:15:09,823.823 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:15:09,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:15:09,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:15:09,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:15:11,870.870 INFO    ] ================================================
[2026-06-27 01:15:11,886.886 INFO    ] Launching Daemon at Sat Jun 27 01:15:11 IST 2026
[2026-06-27 01:15:11,896.896 INFO    ] ================================================
[2026-06-27 01:15:12,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:15:12
[2026-06-27 01:15:12,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:15:12,699.699 INFO    ] Initializing speech engine...
[2026-06-27 01:15:12,707.707 INFO    ] 2026-06-27 01:15:12
[2026-06-27 01:15:12,918.918 INFO    ] 2026-06-27 01:15:12
[2026-06-27 01:15:12,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:15:13,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:15:13,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:15:13,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:15:13,330.330 INFO    ] time= 27/06/2026 01:15:13
[2026-06-27 01:15:13,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:15:13,368.368 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:15:13,435.435 INFO    ] No existing commands found in stream
[2026-06-27 01:15:18,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:15:18,452.452 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-27 01:15:19,556.556 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 01:15:19,558.558 INFO    ] Checking for system updates...
[2026-06-27 01:15:19,580.580 INFO    ] 200
[2026-06-27 01:15:19,581.581 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:15:19,614.614 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:15:19,615.615 INFO    ] No update needed
[2026-06-27 01:15:19,616.616 INFO    ] Checking for camera pi updates...
[2026-06-27 01:15:19,636.636 INFO    ] 200
[2026-06-27 01:15:19,637.637 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:15:19,663.663 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:15:19,707.707 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:15:19,709.709 INFO    ] No camera update needed
[2026-06-27 01:15:19,710.710 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:15:19,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:15:19,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:15:19,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:15:21,756.756 INFO    ] ================================================
[2026-06-27 01:15:21,772.772 INFO    ] Launching Daemon at Sat Jun 27 01:15:21 IST 2026
[2026-06-27 01:15:21,783.783 INFO    ] ================================================
[2026-06-27 01:15:22,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:15:22
[2026-06-27 01:15:22,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:15:22,588.588 INFO    ] Initializing speech engine...
[2026-06-27 01:15:22,591.591 INFO    ] 2026-06-27 01:15:22
[2026-06-27 01:15:22,815.815 INFO    ] 2026-06-27 01:15:22
[2026-06-27 01:15:22,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:15:23,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:15:23,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:15:23,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:15:23,253.253 INFO    ] time= 27/06/2026 01:15:23
[2026-06-27 01:15:23,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:15:23,284.284 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:15:23,395.395 INFO    ] No existing commands found in stream
[2026-06-27 01:15:28,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:15:28,409.409 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-27 01:15:28,956.956 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 01:15:28,958.958 INFO    ] Checking for system updates...
[2026-06-27 01:15:28,979.979 INFO    ] 200
[2026-06-27 01:15:28,980.980 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:15:29,013.013 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:15:29,014.014 INFO    ] No update needed
[2026-06-27 01:15:29,016.016 INFO    ] Checking for camera pi updates...
[2026-06-27 01:15:29,038.038 INFO    ] 200
[2026-06-27 01:15:29,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:15:29,063.063 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:15:29,115.115 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:15:29,116.116 INFO    ] No camera update needed
[2026-06-27 01:15:29,118.118 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:15:29,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:15:29,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:15:29,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:15:31,165.165 INFO    ] ================================================
[2026-06-27 01:15:31,187.187 INFO    ] Launching Daemon at Sat Jun 27 01:15:31 IST 2026
[2026-06-27 01:15:31,199.199 INFO    ] ================================================
[2026-06-27 01:15:32,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:15:31
[2026-06-27 01:15:33,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:15:33,375.375 INFO    ] Initializing speech engine...
[2026-06-27 01:15:33,379.379 INFO    ] 2026-06-27 01:15:33
[2026-06-27 01:15:33,590.590 INFO    ] 2026-06-27 01:15:33
[2026-06-27 01:15:33,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:15:33,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:15:33,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:15:33,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:15:34,039.039 INFO    ] time= 27/06/2026 01:15:33
[2026-06-27 01:15:34,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:15:34,072.072 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:15:34,141.141 INFO    ] No existing commands found in stream
[2026-06-27 01:15:39,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:15:39,153.153 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-27 01:15:42,368.368 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 01:15:42,369.369 INFO    ] Checking for system updates...
[2026-06-27 01:15:42,394.394 INFO    ] 200
[2026-06-27 01:15:42,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:15:43,415.415 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:15:43,418.418 INFO    ] No update needed
[2026-06-27 01:15:43,421.421 INFO    ] Checking for camera pi updates...
[2026-06-27 01:15:43,458.458 INFO    ] 200
[2026-06-27 01:15:43,461.461 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:15:43,509.509 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:15:43,559.559 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:15:43,561.561 INFO    ] No camera update needed
[2026-06-27 01:15:43,562.562 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:15:43,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:15:43,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:15:43,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:15:45,608.608 INFO    ] ================================================
[2026-06-27 01:15:45,624.624 INFO    ] Launching Daemon at Sat Jun 27 01:15:45 IST 2026
[2026-06-27 01:15:45,636.636 INFO    ] ================================================
[2026-06-27 01:15:45,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:15:45
[2026-06-27 01:15:46,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:15:46,407.407 INFO    ] Initializing speech engine...
[2026-06-27 01:15:46,410.410 INFO    ] 2026-06-27 01:15:46
[2026-06-27 01:15:46,627.627 INFO    ] 2026-06-27 01:15:46
[2026-06-27 01:15:46,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:15:46,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:15:46,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:15:46,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:15:47,032.032 INFO    ] time= 27/06/2026 01:15:46
[2026-06-27 01:15:47,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:15:47,077.077 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:15:47,149.149 INFO    ] No existing commands found in stream
[2026-06-27 01:15:52,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:15:52,161.161 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-27 01:15:53,301.301 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:15:53,303.303 INFO    ] Checking for system updates...
[2026-06-27 01:15:53,327.327 INFO    ] 200
[2026-06-27 01:15:53,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:15:53,361.361 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:15:53,362.362 INFO    ] No update needed
[2026-06-27 01:15:53,364.364 INFO    ] Checking for camera pi updates...
[2026-06-27 01:15:53,384.384 INFO    ] 200
[2026-06-27 01:15:53,385.385 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:15:53,410.410 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:15:53,437.437 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:15:53,438.438 INFO    ] No camera update needed
[2026-06-27 01:15:53,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:15:53,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:15:53,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:15:53,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:15:55,485.485 INFO    ] ================================================
[2026-06-27 01:15:55,501.501 INFO    ] Launching Daemon at Sat Jun 27 01:15:55 IST 2026
[2026-06-27 01:15:55,512.512 INFO    ] ================================================
[2026-06-27 01:15:55,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:15:55
[2026-06-27 01:15:56,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:15:56,315.315 INFO    ] Initializing speech engine...
[2026-06-27 01:15:56,323.323 INFO    ] 2026-06-27 01:15:56
[2026-06-27 01:15:56,535.535 INFO    ] 2026-06-27 01:15:56
[2026-06-27 01:15:56,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:15:58,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:15:58,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:15:58,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:15:58,168.168 INFO    ] time= 27/06/2026 01:15:58
[2026-06-27 01:15:58,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:15:58,170.170 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:15:58,228.228 INFO    ] No existing commands found in stream
[2026-06-27 01:16:03,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:16:03,240.240 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-27 01:16:05,741.741 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:16:05,742.742 INFO    ] Checking for system updates...
[2026-06-27 01:16:05,764.764 INFO    ] 200
[2026-06-27 01:16:05,765.765 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:16:05,796.796 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:16:05,797.797 INFO    ] No update needed
[2026-06-27 01:16:05,799.799 INFO    ] Checking for camera pi updates...
[2026-06-27 01:16:05,819.819 INFO    ] 200
[2026-06-27 01:16:05,821.821 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:16:05,847.847 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:16:05,897.897 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:16:05,899.899 INFO    ] No camera update needed
[2026-06-27 01:16:05,900.900 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:16:05,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:16:05,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:16:05,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:16:07,947.947 INFO    ] ================================================
[2026-06-27 01:16:07,963.963 INFO    ] Launching Daemon at Sat Jun 27 01:16:07 IST 2026
[2026-06-27 01:16:07,976.976 INFO    ] ================================================
[2026-06-27 01:16:08,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:16:08
[2026-06-27 01:16:08,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:16:08,830.830 INFO    ] Initializing speech engine...
[2026-06-27 01:16:08,835.835 INFO    ] 2026-06-27 01:16:08
[2026-06-27 01:16:09,046.046 INFO    ] 2026-06-27 01:16:09
[2026-06-27 01:16:09,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:16:09,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:16:09,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:16:09,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:16:09,467.467 INFO    ] time= 27/06/2026 01:16:09
[2026-06-27 01:16:09,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:16:09,502.502 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:16:09,620.620 INFO    ] No existing commands found in stream
[2026-06-27 01:16:14,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:16:14,630.630 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-27 01:16:16,124.124 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 01:16:16,125.125 INFO    ] Checking for system updates...
[2026-06-27 01:16:16,147.147 INFO    ] 200
[2026-06-27 01:16:16,149.149 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:16:16,184.184 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:16:16,185.185 INFO    ] No update needed
[2026-06-27 01:16:16,187.187 INFO    ] Checking for camera pi updates...
[2026-06-27 01:16:16,209.209 INFO    ] 200
[2026-06-27 01:16:16,210.210 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:16:16,235.235 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:16:16,281.281 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:16:16,282.282 INFO    ] No camera update needed
[2026-06-27 01:16:16,284.284 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:16:16,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:16:16,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:16:16,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:16:18,330.330 INFO    ] ================================================
[2026-06-27 01:16:18,346.346 INFO    ] Launching Daemon at Sat Jun 27 01:16:18 IST 2026
[2026-06-27 01:16:18,357.357 INFO    ] ================================================
[2026-06-27 01:16:18,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:16:18
[2026-06-27 01:16:19,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:16:19,174.174 INFO    ] Initializing speech engine...
[2026-06-27 01:16:19,179.179 INFO    ] 2026-06-27 01:16:19
[2026-06-27 01:16:19,399.399 INFO    ] 2026-06-27 01:16:19
[2026-06-27 01:16:19,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:16:19,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:16:19,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:16:19,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:16:19,817.817 INFO    ] time= 27/06/2026 01:16:19
[2026-06-27 01:16:19,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:16:19,857.857 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:16:19,923.923 INFO    ] No existing commands found in stream
[2026-06-27 01:16:24,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:16:24,937.937 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-27 01:16:26,690.690 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 01:16:26,692.692 INFO    ] Checking for system updates...
[2026-06-27 01:16:26,714.714 INFO    ] 200
[2026-06-27 01:16:26,715.715 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:16:26,748.748 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:16:26,749.749 INFO    ] No update needed
[2026-06-27 01:16:26,751.751 INFO    ] Checking for camera pi updates...
[2026-06-27 01:16:26,773.773 INFO    ] 200
[2026-06-27 01:16:26,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:16:26,798.798 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:16:26,846.846 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:16:26,847.847 INFO    ] No camera update needed
[2026-06-27 01:16:26,849.849 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:16:26,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:16:26,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:16:26,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:16:28,896.896 INFO    ] ================================================
[2026-06-27 01:16:28,912.912 INFO    ] Launching Daemon at Sat Jun 27 01:16:28 IST 2026
[2026-06-27 01:16:28,924.924 INFO    ] ================================================
[2026-06-27 01:16:29,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:16:29
[2026-06-27 01:16:29,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:16:29,754.754 INFO    ] Initializing speech engine...
[2026-06-27 01:16:29,765.765 INFO    ] 2026-06-27 01:16:29
[2026-06-27 01:16:29,967.967 INFO    ] 2026-06-27 01:16:29
[2026-06-27 01:16:29,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:16:30,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:16:30,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:16:30,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:16:30,390.390 INFO    ] time= 27/06/2026 01:16:30
[2026-06-27 01:16:30,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:16:30,419.419 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:16:30,487.487 INFO    ] No existing commands found in stream
[2026-06-27 01:16:35,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:16:35,504.504 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-27 01:16:36,258.258 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 01:16:36,259.259 INFO    ] Checking for system updates...
[2026-06-27 01:16:36,280.280 INFO    ] 200
[2026-06-27 01:16:36,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:16:36,316.316 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:16:36,317.317 INFO    ] No update needed
[2026-06-27 01:16:36,318.318 INFO    ] Checking for camera pi updates...
[2026-06-27 01:16:36,339.339 INFO    ] 200
[2026-06-27 01:16:36,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:16:36,365.365 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:16:36,506.506 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:16:36,507.507 INFO    ] No camera update needed
[2026-06-27 01:16:36,508.508 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:16:36,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:16:36,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:16:36,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:16:38,556.556 INFO    ] ================================================
[2026-06-27 01:16:38,572.572 INFO    ] Launching Daemon at Sat Jun 27 01:16:38 IST 2026
[2026-06-27 01:16:38,584.584 INFO    ] ================================================
[2026-06-27 01:16:38,923.923 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:16:38
[2026-06-27 01:16:39,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:16:39,369.369 INFO    ] Initializing speech engine...
[2026-06-27 01:16:39,372.372 INFO    ] 2026-06-27 01:16:39
[2026-06-27 01:16:39,570.570 INFO    ] 2026-06-27 01:16:39
[2026-06-27 01:16:39,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:16:39,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:16:39,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:16:39,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:16:40,039.039 INFO    ] time= 27/06/2026 01:16:39
[2026-06-27 01:16:40,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:16:40,065.065 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:16:40,185.185 INFO    ] No existing commands found in stream
[2026-06-27 01:16:45,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:16:45,197.197 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-27 01:16:45,832.832 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:16:45,834.834 INFO    ] Checking for system updates...
[2026-06-27 01:16:45,855.855 INFO    ] 200
[2026-06-27 01:16:45,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:16:45,887.887 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:16:45,888.888 INFO    ] No update needed
[2026-06-27 01:16:45,890.890 INFO    ] Checking for camera pi updates...
[2026-06-27 01:16:45,909.909 INFO    ] 200
[2026-06-27 01:16:45,910.910 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:16:45,936.936 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:16:45,987.987 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:16:45,989.989 INFO    ] No camera update needed
[2026-06-27 01:16:45,990.990 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:16:45,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:16:45,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:16:45,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:16:48,035.035 INFO    ] ================================================
[2026-06-27 01:16:48,051.051 INFO    ] Launching Daemon at Sat Jun 27 01:16:48 IST 2026
[2026-06-27 01:16:48,062.062 INFO    ] ================================================
[2026-06-27 01:16:48,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:16:48
[2026-06-27 01:16:48,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:16:48,838.838 INFO    ] Initializing speech engine...
[2026-06-27 01:16:48,848.848 INFO    ] 2026-06-27 01:16:48
[2026-06-27 01:16:49,050.050 INFO    ] 2026-06-27 01:16:49
[2026-06-27 01:16:49,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:16:49,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:16:49,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:16:49,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:16:49,470.470 INFO    ] time= 27/06/2026 01:16:49
[2026-06-27 01:16:49,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:16:49,500.500 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:16:49,567.567 INFO    ] No existing commands found in stream
[2026-06-27 01:16:54,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:16:54,584.584 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-27 01:16:55,131.131 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 01:16:55,132.132 INFO    ] Checking for system updates...
[2026-06-27 01:16:55,153.153 INFO    ] 200
[2026-06-27 01:16:55,154.154 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:16:55,184.184 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:16:55,186.186 INFO    ] No update needed
[2026-06-27 01:16:55,187.187 INFO    ] Checking for camera pi updates...
[2026-06-27 01:16:55,209.209 INFO    ] 200
[2026-06-27 01:16:55,210.210 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:16:55,235.235 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:16:55,286.286 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:16:55,287.287 INFO    ] No camera update needed
[2026-06-27 01:16:55,289.289 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:16:55,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:16:55,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:16:55,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:16:57,336.336 INFO    ] ================================================
[2026-06-27 01:16:57,352.352 INFO    ] Launching Daemon at Sat Jun 27 01:16:57 IST 2026
[2026-06-27 01:16:57,363.363 INFO    ] ================================================
[2026-06-27 01:16:57,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:16:57
[2026-06-27 01:16:58,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:16:58,217.217 INFO    ] Initializing speech engine...
[2026-06-27 01:16:58,224.224 INFO    ] 2026-06-27 01:16:58
[2026-06-27 01:16:58,441.441 INFO    ] 2026-06-27 01:16:58
[2026-06-27 01:16:58,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:16:58,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:16:58,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:16:58,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:16:58,882.882 INFO    ] time= 27/06/2026 01:16:58
[2026-06-27 01:16:58,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:16:58,924.924 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:16:59,014.014 INFO    ] No existing commands found in stream
[2026-06-27 01:17:04,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:17:04,026.026 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-27 01:17:04,391.391 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 01:17:04,392.392 INFO    ] Checking for system updates...
[2026-06-27 01:17:04,414.414 INFO    ] 200
[2026-06-27 01:17:04,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:17:04,446.446 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:17:04,447.447 INFO    ] No update needed
[2026-06-27 01:17:04,449.449 INFO    ] Checking for camera pi updates...
[2026-06-27 01:17:04,468.468 INFO    ] 200
[2026-06-27 01:17:04,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:17:04,494.494 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:17:04,537.537 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:17:04,539.539 INFO    ] No camera update needed
[2026-06-27 01:17:04,540.540 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:17:04,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:17:04,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:17:04,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:17:06,594.594 INFO    ] ================================================
[2026-06-27 01:17:06,611.611 INFO    ] Launching Daemon at Sat Jun 27 01:17:06 IST 2026
[2026-06-27 01:17:06,623.623 INFO    ] ================================================
[2026-06-27 01:17:06,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:17:06
[2026-06-27 01:17:07,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:17:07,439.439 INFO    ] Initializing speech engine...
[2026-06-27 01:17:07,444.444 INFO    ] 2026-06-27 01:17:07
[2026-06-27 01:17:07,647.647 INFO    ] 2026-06-27 01:17:07
[2026-06-27 01:17:07,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:17:07,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:17:07,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:17:07,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:17:08,056.056 INFO    ] time= 27/06/2026 01:17:08
[2026-06-27 01:17:08,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:17:08,090.090 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:17:08,159.159 INFO    ] No existing commands found in stream
[2026-06-27 01:17:13,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:17:13,173.173 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-27 01:17:17,353.353 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 01:17:17,354.354 INFO    ] Checking for system updates...
[2026-06-27 01:17:17,377.377 INFO    ] 200
[2026-06-27 01:17:17,378.378 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:17:17,412.412 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:17:17,414.414 INFO    ] No update needed
[2026-06-27 01:17:17,415.415 INFO    ] Checking for camera pi updates...
[2026-06-27 01:17:17,435.435 INFO    ] 200
[2026-06-27 01:17:17,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:17:17,467.467 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:17:17,512.512 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:17:17,514.514 INFO    ] No camera update needed
[2026-06-27 01:17:17,516.516 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:17:17,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:17:17,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:17:17,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:17:19,564.564 INFO    ] ================================================
[2026-06-27 01:17:19,580.580 INFO    ] Launching Daemon at Sat Jun 27 01:17:19 IST 2026
[2026-06-27 01:17:19,591.591 INFO    ] ================================================
[2026-06-27 01:17:19,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:17:19
[2026-06-27 01:17:20,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:17:20,406.406 INFO    ] Initializing speech engine...
[2026-06-27 01:17:20,413.413 INFO    ] 2026-06-27 01:17:20
[2026-06-27 01:17:20,625.625 INFO    ] 2026-06-27 01:17:20
[2026-06-27 01:17:20,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:17:20,839.839 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:17:20,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:17:20,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:17:21,045.045 INFO    ] time= 27/06/2026 01:17:21
[2026-06-27 01:17:21,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:17:21,073.073 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:17:21,140.140 INFO    ] No existing commands found in stream
[2026-06-27 01:17:26,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:17:26,152.152 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-27 01:17:28,237.237 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 01:17:28,239.239 INFO    ] Checking for system updates...
[2026-06-27 01:17:28,261.261 INFO    ] 200
[2026-06-27 01:17:28,263.263 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:17:28,313.313 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:17:28,315.315 INFO    ] No update needed
[2026-06-27 01:17:28,317.317 INFO    ] Checking for camera pi updates...
[2026-06-27 01:17:28,345.345 INFO    ] 200
[2026-06-27 01:17:28,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:17:28,370.370 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:17:28,416.416 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:17:28,418.418 INFO    ] No camera update needed
[2026-06-27 01:17:28,419.419 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:17:28,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:17:28,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:17:28,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:17:30,464.464 INFO    ] ================================================
[2026-06-27 01:17:30,480.480 INFO    ] Launching Daemon at Sat Jun 27 01:17:30 IST 2026
[2026-06-27 01:17:30,492.492 INFO    ] ================================================
[2026-06-27 01:17:30,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:17:30
[2026-06-27 01:17:31,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:17:31,305.305 INFO    ] Initializing speech engine...
[2026-06-27 01:17:31,310.310 INFO    ] 2026-06-27 01:17:31
[2026-06-27 01:17:31,516.516 INFO    ] 2026-06-27 01:17:31
[2026-06-27 01:17:31,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:17:31,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:17:31,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:17:31,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:17:31,960.960 INFO    ] time= 27/06/2026 01:17:31
[2026-06-27 01:17:31,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:17:31,995.995 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:17:32,064.064 INFO    ] No existing commands found in stream
[2026-06-27 01:17:37,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:17:37,076.076 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-27 01:17:40,460.460 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:17:40,462.462 INFO    ] Checking for system updates...
[2026-06-27 01:17:40,484.484 INFO    ] 200
[2026-06-27 01:17:40,485.485 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:17:40,516.516 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:17:40,518.518 INFO    ] No update needed
[2026-06-27 01:17:40,519.519 INFO    ] Checking for camera pi updates...
[2026-06-27 01:17:40,538.538 INFO    ] 200
[2026-06-27 01:17:40,540.540 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:17:40,566.566 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:17:40,610.610 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:17:40,611.611 INFO    ] No camera update needed
[2026-06-27 01:17:40,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:17:40,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:17:40,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:17:40,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:17:42,658.658 INFO    ] ================================================
[2026-06-27 01:17:42,674.674 INFO    ] Launching Daemon at Sat Jun 27 01:17:42 IST 2026
[2026-06-27 01:17:42,685.685 INFO    ] ================================================
[2026-06-27 01:17:43,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:17:43
[2026-06-27 01:17:43,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:17:43,457.457 INFO    ] Initializing speech engine...
[2026-06-27 01:17:43,465.465 INFO    ] 2026-06-27 01:17:43
[2026-06-27 01:17:43,679.679 INFO    ] 2026-06-27 01:17:43
[2026-06-27 01:17:43,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:17:43,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:17:43,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:17:44,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:17:44,106.106 INFO    ] time= 27/06/2026 01:17:44
[2026-06-27 01:17:44,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:17:44,136.136 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:17:44,204.204 INFO    ] No existing commands found in stream
[2026-06-27 01:17:49,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:17:49,216.216 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-27 01:17:50,195.195 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 01:17:50,197.197 INFO    ] Checking for system updates...
[2026-06-27 01:17:50,219.219 INFO    ] 200
[2026-06-27 01:17:50,220.220 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:17:50,250.250 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:17:50,252.252 INFO    ] No update needed
[2026-06-27 01:17:50,253.253 INFO    ] Checking for camera pi updates...
[2026-06-27 01:17:50,275.275 INFO    ] 200
[2026-06-27 01:17:50,276.276 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:17:50,300.300 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:17:50,341.341 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:17:50,342.342 INFO    ] No camera update needed
[2026-06-27 01:17:50,344.344 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:17:50,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:17:50,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:17:50,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:17:52,389.389 INFO    ] ================================================
[2026-06-27 01:17:52,405.405 INFO    ] Launching Daemon at Sat Jun 27 01:17:52 IST 2026
[2026-06-27 01:17:52,417.417 INFO    ] ================================================
[2026-06-27 01:17:52,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:17:52
[2026-06-27 01:17:53,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:17:53,226.226 INFO    ] Initializing speech engine...
[2026-06-27 01:17:53,230.230 INFO    ] 2026-06-27 01:17:53
[2026-06-27 01:17:53,448.448 INFO    ] 2026-06-27 01:17:53
[2026-06-27 01:17:53,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:17:53,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:17:53,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:17:53,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:17:53,860.860 INFO    ] time= 27/06/2026 01:17:53
[2026-06-27 01:17:53,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:17:53,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:17:53,965.965 INFO    ] No existing commands found in stream
[2026-06-27 01:17:58,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:17:58,977.977 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-27 01:18:00,169.169 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 01:18:00,171.171 INFO    ] Checking for system updates...
[2026-06-27 01:18:00,193.193 INFO    ] 200
[2026-06-27 01:18:00,195.195 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:18:00,226.226 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:18:00,227.227 INFO    ] No update needed
[2026-06-27 01:18:00,229.229 INFO    ] Checking for camera pi updates...
[2026-06-27 01:18:00,249.249 INFO    ] 200
[2026-06-27 01:18:00,250.250 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:18:00,277.277 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:18:00,341.341 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:18:00,342.342 INFO    ] No camera update needed
[2026-06-27 01:18:00,344.344 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:18:00,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:18:00,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:18:00,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:18:02,387.387 INFO    ] ================================================
[2026-06-27 01:18:02,401.401 INFO    ] Launching Daemon at Sat Jun 27 01:18:02 IST 2026
[2026-06-27 01:18:02,412.412 INFO    ] ================================================
[2026-06-27 01:18:02,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:18:02
[2026-06-27 01:18:03,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:18:03,294.294 INFO    ] Initializing speech engine...
[2026-06-27 01:18:03,300.300 INFO    ] 2026-06-27 01:18:03
[2026-06-27 01:18:03,504.504 INFO    ] 2026-06-27 01:18:03
[2026-06-27 01:18:03,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:18:03,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:18:03,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:18:03,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:18:03,929.929 INFO    ] time= 27/06/2026 01:18:03
[2026-06-27 01:18:03,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:18:03,958.958 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:18:04,026.026 INFO    ] No existing commands found in stream
[2026-06-27 01:18:09,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:18:09,038.038 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-27 01:18:10,365.365 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 01:18:10,367.367 INFO    ] Checking for system updates...
[2026-06-27 01:18:10,393.393 INFO    ] 200
[2026-06-27 01:18:10,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:18:10,427.427 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:18:10,429.429 INFO    ] No update needed
[2026-06-27 01:18:10,430.430 INFO    ] Checking for camera pi updates...
[2026-06-27 01:18:10,450.450 INFO    ] 200
[2026-06-27 01:18:10,451.451 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:18:10,475.475 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:18:10,517.517 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:18:10,518.518 INFO    ] No camera update needed
[2026-06-27 01:18:10,519.519 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:18:10,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:18:10,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:18:10,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:18:12,566.566 INFO    ] ================================================
[2026-06-27 01:18:12,581.581 INFO    ] Launching Daemon at Sat Jun 27 01:18:12 IST 2026
[2026-06-27 01:18:12,593.593 INFO    ] ================================================
[2026-06-27 01:18:12,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:18:12
[2026-06-27 01:18:13,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:18:13,406.406 INFO    ] Initializing speech engine...
[2026-06-27 01:18:13,410.410 INFO    ] 2026-06-27 01:18:13
[2026-06-27 01:18:13,627.627 INFO    ] 2026-06-27 01:18:13
[2026-06-27 01:18:13,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:18:13,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:18:13,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:18:13,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:18:14,032.032 INFO    ] time= 27/06/2026 01:18:13
[2026-06-27 01:18:14,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:18:14,075.075 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:18:14,141.141 INFO    ] No existing commands found in stream
[2026-06-27 01:18:19,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:18:19,154.154 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-27 01:18:20,803.803 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 01:18:20,805.805 INFO    ] Checking for system updates...
[2026-06-27 01:18:20,829.829 INFO    ] 200
[2026-06-27 01:18:20,831.831 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:18:20,864.864 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:18:20,866.866 INFO    ] No update needed
[2026-06-27 01:18:20,867.867 INFO    ] Checking for camera pi updates...
[2026-06-27 01:18:20,888.888 INFO    ] 200
[2026-06-27 01:18:20,890.890 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:18:20,915.915 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:18:20,960.960 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:18:20,961.961 INFO    ] No camera update needed
[2026-06-27 01:18:20,962.962 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:18:20,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:18:20,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:18:20,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:18:23,012.012 INFO    ] ================================================
[2026-06-27 01:18:23,027.027 INFO    ] Launching Daemon at Sat Jun 27 01:18:23 IST 2026
[2026-06-27 01:18:23,038.038 INFO    ] ================================================
[2026-06-27 01:18:23,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:18:23
[2026-06-27 01:18:23,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:18:23,836.836 INFO    ] Initializing speech engine...
[2026-06-27 01:18:23,841.841 INFO    ] 2026-06-27 01:18:23
[2026-06-27 01:18:24,046.046 INFO    ] 2026-06-27 01:18:24
[2026-06-27 01:18:24,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:18:24,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:18:24,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:18:24,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:18:24,510.510 INFO    ] time= 27/06/2026 01:18:24
[2026-06-27 01:18:24,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:18:24,527.527 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:18:24,592.592 INFO    ] No existing commands found in stream
[2026-06-27 01:18:29,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:18:29,606.606 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-27 01:18:31,029.029 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 01:18:31,031.031 INFO    ] Checking for system updates...
[2026-06-27 01:18:31,051.051 INFO    ] 200
[2026-06-27 01:18:31,053.053 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:18:31,087.087 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:18:31,088.088 INFO    ] No update needed
[2026-06-27 01:18:31,089.089 INFO    ] Checking for camera pi updates...
[2026-06-27 01:18:31,110.110 INFO    ] 200
[2026-06-27 01:18:31,111.111 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:18:31,136.136 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:18:31,183.183 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:18:31,185.185 INFO    ] No camera update needed
[2026-06-27 01:18:31,186.186 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:18:31,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:18:31,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:18:31,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:18:33,236.236 INFO    ] ================================================
[2026-06-27 01:18:33,252.252 INFO    ] Launching Daemon at Sat Jun 27 01:18:33 IST 2026
[2026-06-27 01:18:33,262.262 INFO    ] ================================================
[2026-06-27 01:18:33,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:18:33
[2026-06-27 01:18:33,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:18:34,138.138 INFO    ] Initializing speech engine...
[2026-06-27 01:18:34,144.144 INFO    ] 2026-06-27 01:18:34
[2026-06-27 01:18:34,352.352 INFO    ] 2026-06-27 01:18:34
[2026-06-27 01:18:34,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:18:34,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:18:34,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:18:34,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:18:34,774.774 INFO    ] time= 27/06/2026 01:18:34
[2026-06-27 01:18:34,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:18:34,805.805 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:18:34,872.872 INFO    ] No existing commands found in stream
[2026-06-27 01:18:39,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:18:39,890.890 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-27 01:18:44,078.078 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:18:44,079.079 INFO    ] Checking for system updates...
[2026-06-27 01:18:44,100.100 INFO    ] 200
[2026-06-27 01:18:44,102.102 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:18:44,134.134 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:18:44,135.135 INFO    ] No update needed
[2026-06-27 01:18:44,137.137 INFO    ] Checking for camera pi updates...
[2026-06-27 01:18:44,158.158 INFO    ] 200
[2026-06-27 01:18:44,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:18:44,187.187 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:18:44,327.327 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:18:44,328.328 INFO    ] No camera update needed
[2026-06-27 01:18:44,330.330 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:18:44,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:18:44,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:18:44,338.338 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:18:46,377.377 INFO    ] ================================================
[2026-06-27 01:18:46,393.393 INFO    ] Launching Daemon at Sat Jun 27 01:18:46 IST 2026
[2026-06-27 01:18:46,404.404 INFO    ] ================================================
[2026-06-27 01:18:46,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:18:46
[2026-06-27 01:18:47,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:18:47,238.238 INFO    ] Initializing speech engine...
[2026-06-27 01:18:47,247.247 INFO    ] 2026-06-27 01:18:47
[2026-06-27 01:18:47,454.454 INFO    ] 2026-06-27 01:18:47
[2026-06-27 01:18:47,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:18:47,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:18:47,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:18:47,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:18:47,879.879 INFO    ] time= 27/06/2026 01:18:47
[2026-06-27 01:18:47,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:18:47,907.907 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:18:47,972.972 INFO    ] No existing commands found in stream
[2026-06-27 01:18:52,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:18:52,986.986 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-27 01:18:55,769.769 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 01:18:55,771.771 INFO    ] Checking for system updates...
[2026-06-27 01:18:55,792.792 INFO    ] 200
[2026-06-27 01:18:55,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:18:55,826.826 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:18:55,827.827 INFO    ] No update needed
[2026-06-27 01:18:55,829.829 INFO    ] Checking for camera pi updates...
[2026-06-27 01:18:55,849.849 INFO    ] 200
[2026-06-27 01:18:55,851.851 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:18:55,874.874 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:18:55,933.933 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:18:55,935.935 INFO    ] No camera update needed
[2026-06-27 01:18:55,936.936 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:18:55,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:18:55,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:18:55,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:18:57,982.982 INFO    ] ================================================
[2026-06-27 01:18:58,997.997 INFO    ] Launching Daemon at Sat Jun 27 01:18:57 IST 2026
[2026-06-27 01:18:58,009.009 INFO    ] ================================================
[2026-06-27 01:18:58,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:18:58
[2026-06-27 01:18:58,677.677 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:18:58,810.810 INFO    ] Initializing speech engine...
[2026-06-27 01:18:58,815.815 INFO    ] 2026-06-27 01:18:58
[2026-06-27 01:18:59,009.009 INFO    ] 2026-06-27 01:18:59
[2026-06-27 01:18:59,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:19:00,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:19:00,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:19:00,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:19:00,287.287 INFO    ] time= 27/06/2026 01:19:00
[2026-06-27 01:19:00,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:19:00,306.306 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:19:00,375.375 INFO    ] No existing commands found in stream
[2026-06-27 01:19:05,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:19:05,389.389 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-27 01:19:08,648.648 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 01:19:08,650.650 INFO    ] Checking for system updates...
[2026-06-27 01:19:08,672.672 INFO    ] 200
[2026-06-27 01:19:08,674.674 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:19:08,705.705 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:19:08,706.706 INFO    ] No update needed
[2026-06-27 01:19:08,707.707 INFO    ] Checking for camera pi updates...
[2026-06-27 01:19:08,727.727 INFO    ] 200
[2026-06-27 01:19:08,728.728 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:19:08,752.752 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:19:08,807.807 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:19:08,808.808 INFO    ] No camera update needed
[2026-06-27 01:19:08,810.810 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:19:08,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:19:08,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:19:08,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:19:10,857.857 INFO    ] ================================================
[2026-06-27 01:19:10,873.873 INFO    ] Launching Daemon at Sat Jun 27 01:19:10 IST 2026
[2026-06-27 01:19:10,884.884 INFO    ] ================================================
[2026-06-27 01:19:11,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:19:11
[2026-06-27 01:19:11,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:19:11,723.723 INFO    ] Initializing speech engine...
[2026-06-27 01:19:11,731.731 INFO    ] 2026-06-27 01:19:11
[2026-06-27 01:19:11,938.938 INFO    ] 2026-06-27 01:19:11
[2026-06-27 01:19:11,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:19:12,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:19:12,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:19:12,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:19:12,358.358 INFO    ] time= 27/06/2026 01:19:12
[2026-06-27 01:19:12,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:19:12,386.386 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:19:12,453.453 INFO    ] No existing commands found in stream
[2026-06-27 01:19:17,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:19:17,465.465 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-27 01:19:18,768.768 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 01:19:18,770.770 INFO    ] Checking for system updates...
[2026-06-27 01:19:18,792.792 INFO    ] 200
[2026-06-27 01:19:18,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:19:18,827.827 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:19:18,828.828 INFO    ] No update needed
[2026-06-27 01:19:18,829.829 INFO    ] Checking for camera pi updates...
[2026-06-27 01:19:18,850.850 INFO    ] 200
[2026-06-27 01:19:18,852.852 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:19:18,876.876 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:19:18,927.927 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:19:18,928.928 INFO    ] No camera update needed
[2026-06-27 01:19:18,929.929 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:19:18,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:19:18,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:19:18,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:19:20,976.976 INFO    ] ================================================
[2026-06-27 01:19:20,991.991 INFO    ] Launching Daemon at Sat Jun 27 01:19:20 IST 2026
[2026-06-27 01:19:21,004.004 INFO    ] ================================================
[2026-06-27 01:19:21,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:19:21
[2026-06-27 01:19:21,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:19:21,855.855 INFO    ] Initializing speech engine...
[2026-06-27 01:19:21,860.860 INFO    ] 2026-06-27 01:19:21
[2026-06-27 01:19:22,072.072 INFO    ] 2026-06-27 01:19:22
[2026-06-27 01:19:22,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:19:22,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:19:22,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:19:22,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:19:22,449.449 INFO    ] time= 27/06/2026 01:19:22
[2026-06-27 01:19:22,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:19:22,529.529 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:19:22,634.634 INFO    ] No existing commands found in stream
[2026-06-27 01:19:27,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:19:27,648.648 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-27 01:19:28,323.323 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 01:19:28,324.324 INFO    ] Checking for system updates...
[2026-06-27 01:19:28,347.347 INFO    ] 200
[2026-06-27 01:19:28,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:19:28,379.379 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:19:28,380.380 INFO    ] No update needed
[2026-06-27 01:19:28,381.381 INFO    ] Checking for camera pi updates...
[2026-06-27 01:19:28,401.401 INFO    ] 200
[2026-06-27 01:19:28,402.402 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:19:28,426.426 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:19:28,470.470 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:19:28,471.471 INFO    ] No camera update needed
[2026-06-27 01:19:28,472.472 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:19:28,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:19:28,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:19:28,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:19:30,519.519 INFO    ] ================================================
[2026-06-27 01:19:30,535.535 INFO    ] Launching Daemon at Sat Jun 27 01:19:30 IST 2026
[2026-06-27 01:19:30,545.545 INFO    ] ================================================
[2026-06-27 01:19:30,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:19:30
[2026-06-27 01:19:31,206.206 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:19:31,336.336 INFO    ] Initializing speech engine...
[2026-06-27 01:19:31,341.341 INFO    ] 2026-06-27 01:19:31
[2026-06-27 01:19:31,556.556 INFO    ] 2026-06-27 01:19:31
[2026-06-27 01:19:31,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:19:31,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:19:31,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:19:31,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:19:31,901.901 INFO    ] time= 27/06/2026 01:19:31
[2026-06-27 01:19:31,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:19:31,964.964 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:19:32,088.088 INFO    ] No existing commands found in stream
[2026-06-27 01:19:37,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:19:37,126.126 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-27 01:19:40,404.404 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 01:19:40,406.406 INFO    ] Checking for system updates...
[2026-06-27 01:19:40,429.429 INFO    ] 200
[2026-06-27 01:19:40,430.430 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:19:40,461.461 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:19:40,462.462 INFO    ] No update needed
[2026-06-27 01:19:40,464.464 INFO    ] Checking for camera pi updates...
[2026-06-27 01:19:40,483.483 INFO    ] 200
[2026-06-27 01:19:40,485.485 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:19:40,509.509 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:19:40,556.556 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:19:40,557.557 INFO    ] No camera update needed
[2026-06-27 01:19:40,559.559 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:19:40,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:19:40,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:19:40,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:19:42,605.605 INFO    ] ================================================
[2026-06-27 01:19:42,622.622 INFO    ] Launching Daemon at Sat Jun 27 01:19:42 IST 2026
[2026-06-27 01:19:42,633.633 INFO    ] ================================================
[2026-06-27 01:19:42,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:19:42
[2026-06-27 01:19:43,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:19:43,489.489 INFO    ] Initializing speech engine...
[2026-06-27 01:19:43,494.494 INFO    ] 2026-06-27 01:19:43
[2026-06-27 01:19:43,699.699 INFO    ] 2026-06-27 01:19:43
[2026-06-27 01:19:43,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:19:43,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:19:43,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:19:44,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:19:44,123.123 INFO    ] time= 27/06/2026 01:19:44
[2026-06-27 01:19:44,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:19:44,154.154 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:19:44,245.245 INFO    ] No existing commands found in stream
[2026-06-27 01:19:49,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:19:49,257.257 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-27 01:19:52,114.114 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 01:19:52,115.115 INFO    ] Checking for system updates...
[2026-06-27 01:19:52,137.137 INFO    ] 200
[2026-06-27 01:19:52,138.138 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:19:52,169.169 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:19:52,170.170 INFO    ] No update needed
[2026-06-27 01:19:52,172.172 INFO    ] Checking for camera pi updates...
[2026-06-27 01:19:52,193.193 INFO    ] 200
[2026-06-27 01:19:52,194.194 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:19:52,217.217 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:19:52,265.265 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:19:52,266.266 INFO    ] No camera update needed
[2026-06-27 01:19:52,267.267 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:19:52,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:19:52,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:19:52,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:19:54,314.314 INFO    ] ================================================
[2026-06-27 01:19:54,329.329 INFO    ] Launching Daemon at Sat Jun 27 01:19:54 IST 2026
[2026-06-27 01:19:54,340.340 INFO    ] ================================================
[2026-06-27 01:19:54,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:19:54
[2026-06-27 01:19:55,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:19:55,172.172 INFO    ] Initializing speech engine...
[2026-06-27 01:19:55,177.177 INFO    ] 2026-06-27 01:19:55
[2026-06-27 01:19:55,371.371 INFO    ] 2026-06-27 01:19:55
[2026-06-27 01:19:55,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:19:55,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:19:55,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:19:55,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:19:55,682.682 INFO    ] time= 27/06/2026 01:19:55
[2026-06-27 01:19:55,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:19:55,690.690 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:19:55,800.800 INFO    ] No existing commands found in stream
[2026-06-27 01:20:00,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:20:00,817.817 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-27 01:20:02,568.568 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 01:20:02,570.570 INFO    ] Checking for system updates...
[2026-06-27 01:20:02,609.609 INFO    ] 200
[2026-06-27 01:20:02,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:20:02,674.674 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:20:02,676.676 INFO    ] No update needed
[2026-06-27 01:20:02,680.680 INFO    ] Checking for camera pi updates...
[2026-06-27 01:20:02,713.713 INFO    ] 200
[2026-06-27 01:20:02,717.717 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:20:02,748.748 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:20:02,796.796 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:20:02,798.798 INFO    ] No camera update needed
[2026-06-27 01:20:02,799.799 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:20:02,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:20:02,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:20:02,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:20:04,846.846 INFO    ] ================================================
[2026-06-27 01:20:04,861.861 INFO    ] Launching Daemon at Sat Jun 27 01:20:04 IST 2026
[2026-06-27 01:20:04,872.872 INFO    ] ================================================
[2026-06-27 01:20:05,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:20:05
[2026-06-27 01:20:05,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:20:05,728.728 INFO    ] Initializing speech engine...
[2026-06-27 01:20:05,732.732 INFO    ] 2026-06-27 01:20:05
[2026-06-27 01:20:05,940.940 INFO    ] 2026-06-27 01:20:05
[2026-06-27 01:20:05,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:20:06,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:20:06,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:20:06,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:20:06,372.372 INFO    ] time= 27/06/2026 01:20:06
[2026-06-27 01:20:06,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:20:06,401.401 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:20:06,467.467 INFO    ] No existing commands found in stream
[2026-06-27 01:20:11,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:20:11,482.482 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-27 01:20:13,302.302 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 01:20:13,304.304 INFO    ] Checking for system updates...
[2026-06-27 01:20:13,327.327 INFO    ] 200
[2026-06-27 01:20:13,328.328 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:20:13,359.359 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:20:13,361.361 INFO    ] No update needed
[2026-06-27 01:20:13,362.362 INFO    ] Checking for camera pi updates...
[2026-06-27 01:20:13,384.384 INFO    ] 200
[2026-06-27 01:20:13,385.385 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:20:13,412.412 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:20:13,457.457 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:20:13,459.459 INFO    ] No camera update needed
[2026-06-27 01:20:13,460.460 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:20:13,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:20:13,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:20:13,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:20:15,509.509 INFO    ] ================================================
[2026-06-27 01:20:15,525.525 INFO    ] Launching Daemon at Sat Jun 27 01:20:15 IST 2026
[2026-06-27 01:20:15,536.536 INFO    ] ================================================
[2026-06-27 01:20:15,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:20:15
[2026-06-27 01:20:16,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:20:16,373.373 INFO    ] Initializing speech engine...
[2026-06-27 01:20:16,378.378 INFO    ] 2026-06-27 01:20:16
[2026-06-27 01:20:16,583.583 INFO    ] 2026-06-27 01:20:16
[2026-06-27 01:20:16,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:20:16,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:20:16,803.803 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:20:16,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:20:17,001.001 INFO    ] time= 27/06/2026 01:20:16
[2026-06-27 01:20:17,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:20:17,029.029 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:20:17,096.096 INFO    ] No existing commands found in stream
[2026-06-27 01:20:22,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:20:22,109.109 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-27 01:20:22,981.981 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 01:20:22,983.983 INFO    ] Checking for system updates...
[2026-06-27 01:20:23,004.004 INFO    ] 200
[2026-06-27 01:20:23,006.006 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:20:23,037.037 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:20:23,038.038 INFO    ] No update needed
[2026-06-27 01:20:23,039.039 INFO    ] Checking for camera pi updates...
[2026-06-27 01:20:23,059.059 INFO    ] 200
[2026-06-27 01:20:23,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:20:23,087.087 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:20:23,140.140 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:20:23,142.142 INFO    ] No camera update needed
[2026-06-27 01:20:23,143.143 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:20:23,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:20:23,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:20:23,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:20:25,192.192 INFO    ] ================================================
[2026-06-27 01:20:25,207.207 INFO    ] Launching Daemon at Sat Jun 27 01:20:25 IST 2026
[2026-06-27 01:20:25,218.218 INFO    ] ================================================
[2026-06-27 01:20:25,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:20:25
[2026-06-27 01:20:25,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:20:26,101.101 INFO    ] Initializing speech engine...
[2026-06-27 01:20:26,107.107 INFO    ] 2026-06-27 01:20:26
[2026-06-27 01:20:26,318.318 INFO    ] 2026-06-27 01:20:26
[2026-06-27 01:20:26,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:20:26,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:20:26,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:20:26,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:20:26,748.748 INFO    ] time= 27/06/2026 01:20:26
[2026-06-27 01:20:26,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:20:26,778.778 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:20:26,847.847 INFO    ] No existing commands found in stream
[2026-06-27 01:20:31,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:20:31,866.866 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-27 01:20:32,854.854 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:20:32,856.856 INFO    ] Checking for system updates...
[2026-06-27 01:20:32,877.877 INFO    ] 200
[2026-06-27 01:20:32,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:20:32,910.910 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:20:32,911.911 INFO    ] No update needed
[2026-06-27 01:20:32,913.913 INFO    ] Checking for camera pi updates...
[2026-06-27 01:20:32,933.933 INFO    ] 200
[2026-06-27 01:20:32,935.935 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:20:32,959.959 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:20:32,991.991 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:20:32,992.992 INFO    ] No camera update needed
[2026-06-27 01:20:32,994.994 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:20:32,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:20:32,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:20:33,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:20:35,042.042 INFO    ] ================================================
[2026-06-27 01:20:35,058.058 INFO    ] Launching Daemon at Sat Jun 27 01:20:35 IST 2026
[2026-06-27 01:20:35,068.068 INFO    ] ================================================
[2026-06-27 01:20:35,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:20:35
[2026-06-27 01:20:35,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:20:35,875.875 INFO    ] Initializing speech engine...
[2026-06-27 01:20:35,883.883 INFO    ] 2026-06-27 01:20:35
[2026-06-27 01:20:36,106.106 INFO    ] 2026-06-27 01:20:36
[2026-06-27 01:20:36,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:20:36,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:20:36,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:20:36,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:20:36,556.556 INFO    ] time= 27/06/2026 01:20:36
[2026-06-27 01:20:36,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:20:36,582.582 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:20:36,651.651 INFO    ] No existing commands found in stream
[2026-06-27 01:20:41,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:20:41,665.665 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-27 01:20:42,492.492 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:20:42,494.494 INFO    ] Checking for system updates...
[2026-06-27 01:20:42,515.515 INFO    ] 200
[2026-06-27 01:20:42,517.517 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:20:42,550.550 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:20:42,552.552 INFO    ] No update needed
[2026-06-27 01:20:42,553.553 INFO    ] Checking for camera pi updates...
[2026-06-27 01:20:42,572.572 INFO    ] 200
[2026-06-27 01:20:42,574.574 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:20:42,598.598 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:20:42,639.639 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:20:42,641.641 INFO    ] No camera update needed
[2026-06-27 01:20:42,642.642 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:20:42,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:20:42,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:20:42,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:20:44,688.688 INFO    ] ================================================
[2026-06-27 01:20:44,703.703 INFO    ] Launching Daemon at Sat Jun 27 01:20:44 IST 2026
[2026-06-27 01:20:44,714.714 INFO    ] ================================================
[2026-06-27 01:20:45,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:20:45
[2026-06-27 01:20:45,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:20:45,517.517 INFO    ] Initializing speech engine...
[2026-06-27 01:20:45,528.528 INFO    ] 2026-06-27 01:20:45
[2026-06-27 01:20:45,735.735 INFO    ] 2026-06-27 01:20:45
[2026-06-27 01:20:45,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:20:45,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:20:45,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:20:46,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:20:46,140.140 INFO    ] time= 27/06/2026 01:20:46
[2026-06-27 01:20:46,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:20:46,185.185 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:20:46,281.281 INFO    ] No existing commands found in stream
[2026-06-27 01:20:51,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:20:51,293.293 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-27 01:20:54,175.175 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:20:54,176.176 INFO    ] Checking for system updates...
[2026-06-27 01:20:54,197.197 INFO    ] 200
[2026-06-27 01:20:54,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:20:54,231.231 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:20:54,232.232 INFO    ] No update needed
[2026-06-27 01:20:54,234.234 INFO    ] Checking for camera pi updates...
[2026-06-27 01:20:54,255.255 INFO    ] 200
[2026-06-27 01:20:54,256.256 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:20:54,279.279 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:20:54,405.405 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:20:54,407.407 INFO    ] No camera update needed
[2026-06-27 01:20:54,408.408 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:20:54,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:20:54,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:20:54,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:20:56,456.456 INFO    ] ================================================
[2026-06-27 01:20:56,472.472 INFO    ] Launching Daemon at Sat Jun 27 01:20:56 IST 2026
[2026-06-27 01:20:56,485.485 INFO    ] ================================================
[2026-06-27 01:20:56,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:20:56
[2026-06-27 01:20:57,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:20:57,277.277 INFO    ] Initializing speech engine...
[2026-06-27 01:20:57,282.282 INFO    ] 2026-06-27 01:20:57
[2026-06-27 01:20:57,488.488 INFO    ] 2026-06-27 01:20:57
[2026-06-27 01:20:57,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:20:57,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:20:57,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:20:57,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:20:57,901.901 INFO    ] time= 27/06/2026 01:20:57
[2026-06-27 01:20:57,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:20:57,946.946 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:20:58,012.012 INFO    ] No existing commands found in stream
[2026-06-27 01:21:03,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:21:03,026.026 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-27 01:21:06,328.328 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 01:21:06,330.330 INFO    ] Checking for system updates...
[2026-06-27 01:21:06,350.350 INFO    ] 200
[2026-06-27 01:21:06,352.352 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:21:06,385.385 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:21:06,386.386 INFO    ] No update needed
[2026-06-27 01:21:06,387.387 INFO    ] Checking for camera pi updates...
[2026-06-27 01:21:06,407.407 INFO    ] 200
[2026-06-27 01:21:06,408.408 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:21:06,432.432 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:21:06,477.477 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:21:06,478.478 INFO    ] No camera update needed
[2026-06-27 01:21:06,479.479 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:21:06,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:21:06,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:21:06,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:21:08,526.526 INFO    ] ================================================
[2026-06-27 01:21:08,542.542 INFO    ] Launching Daemon at Sat Jun 27 01:21:08 IST 2026
[2026-06-27 01:21:08,553.553 INFO    ] ================================================
[2026-06-27 01:21:08,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:21:08
[2026-06-27 01:21:09,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:21:09,403.403 INFO    ] Initializing speech engine...
[2026-06-27 01:21:09,414.414 INFO    ] 2026-06-27 01:21:09
[2026-06-27 01:21:09,626.626 INFO    ] 2026-06-27 01:21:09
[2026-06-27 01:21:09,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:21:09,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:21:09,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:21:09,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:21:10,054.054 INFO    ] time= 27/06/2026 01:21:09
[2026-06-27 01:21:10,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:21:10,085.085 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:21:10,152.152 INFO    ] No existing commands found in stream
[2026-06-27 01:21:15,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:21:15,170.170 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-27 01:21:19,022.022 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 01:21:19,024.024 INFO    ] Checking for system updates...
[2026-06-27 01:21:19,046.046 INFO    ] 200
[2026-06-27 01:21:19,048.048 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:21:19,084.084 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:21:19,085.085 INFO    ] No update needed
[2026-06-27 01:21:19,087.087 INFO    ] Checking for camera pi updates...
[2026-06-27 01:21:19,111.111 INFO    ] 200
[2026-06-27 01:21:19,112.112 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:21:19,138.138 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:21:19,181.181 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:21:19,183.183 INFO    ] No camera update needed
[2026-06-27 01:21:19,184.184 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:21:19,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:21:19,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:21:19,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:21:21,232.232 INFO    ] ================================================
[2026-06-27 01:21:21,251.251 INFO    ] Launching Daemon at Sat Jun 27 01:21:21 IST 2026
[2026-06-27 01:21:21,262.262 INFO    ] ================================================
[2026-06-27 01:21:21,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:21:21
[2026-06-27 01:21:21,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:21:22,054.054 INFO    ] Initializing speech engine...
[2026-06-27 01:21:22,059.059 INFO    ] 2026-06-27 01:21:22
[2026-06-27 01:21:22,263.263 INFO    ] 2026-06-27 01:21:22
[2026-06-27 01:21:22,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:21:22,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:21:22,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:21:22,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:21:22,681.681 INFO    ] time= 27/06/2026 01:21:22
[2026-06-27 01:21:22,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:21:22,740.740 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:21:22,864.864 INFO    ] No existing commands found in stream
[2026-06-27 01:21:27,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:21:27,878.878 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-27 01:21:31,968.968 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 01:21:31,969.969 INFO    ] Checking for system updates...
[2026-06-27 01:21:31,991.991 INFO    ] 200
[2026-06-27 01:21:31,993.993 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:21:32,023.023 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:21:32,025.025 INFO    ] No update needed
[2026-06-27 01:21:32,026.026 INFO    ] Checking for camera pi updates...
[2026-06-27 01:21:32,046.046 INFO    ] 200
[2026-06-27 01:21:32,047.047 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:21:32,080.080 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:21:32,111.111 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:21:32,113.113 INFO    ] No camera update needed
[2026-06-27 01:21:32,114.114 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:21:32,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:21:32,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:21:32,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:21:34,160.160 INFO    ] ================================================
[2026-06-27 01:21:34,176.176 INFO    ] Launching Daemon at Sat Jun 27 01:21:34 IST 2026
[2026-06-27 01:21:34,187.187 INFO    ] ================================================
[2026-06-27 01:21:34,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:21:34
[2026-06-27 01:21:34,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:21:35,000.000 INFO    ] Initializing speech engine...
[2026-06-27 01:21:35,004.004 INFO    ] 2026-06-27 01:21:35
[2026-06-27 01:21:35,214.214 INFO    ] 2026-06-27 01:21:35
[2026-06-27 01:21:35,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:21:35,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:21:35,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:21:35,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:21:35,636.636 INFO    ] time= 27/06/2026 01:21:35
[2026-06-27 01:21:35,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:21:35,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:21:35,733.733 INFO    ] No existing commands found in stream
[2026-06-27 01:21:40,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:21:40,769.769 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-27 01:21:44,646.646 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 01:21:44,648.648 INFO    ] Checking for system updates...
[2026-06-27 01:21:44,669.669 INFO    ] 200
[2026-06-27 01:21:44,671.671 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:21:44,701.701 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:21:44,703.703 INFO    ] No update needed
[2026-06-27 01:21:44,705.705 INFO    ] Checking for camera pi updates...
[2026-06-27 01:21:44,727.727 INFO    ] 200
[2026-06-27 01:21:44,728.728 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:21:44,756.756 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:21:44,804.804 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:21:44,806.806 INFO    ] No camera update needed
[2026-06-27 01:21:44,807.807 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:21:44,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:21:44,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:21:44,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:21:46,855.855 INFO    ] ================================================
[2026-06-27 01:21:46,870.870 INFO    ] Launching Daemon at Sat Jun 27 01:21:46 IST 2026
[2026-06-27 01:21:46,880.880 INFO    ] ================================================
[2026-06-27 01:21:47,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:21:47
[2026-06-27 01:21:47,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:21:47,701.701 INFO    ] Initializing speech engine...
[2026-06-27 01:21:47,709.709 INFO    ] 2026-06-27 01:21:47
[2026-06-27 01:21:47,915.915 INFO    ] 2026-06-27 01:21:47
[2026-06-27 01:21:47,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:21:48,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:21:48,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:21:48,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:21:48,336.336 INFO    ] time= 27/06/2026 01:21:48
[2026-06-27 01:21:48,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:21:48,363.363 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:21:48,429.429 INFO    ] No existing commands found in stream
[2026-06-27 01:21:53,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:21:53,441.441 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-27 01:21:56,325.325 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 01:21:56,326.326 INFO    ] Checking for system updates...
[2026-06-27 01:21:56,348.348 INFO    ] 200
[2026-06-27 01:21:56,350.350 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:21:56,380.380 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:21:56,382.382 INFO    ] No update needed
[2026-06-27 01:21:56,383.383 INFO    ] Checking for camera pi updates...
[2026-06-27 01:21:56,404.404 INFO    ] 200
[2026-06-27 01:21:56,406.406 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:21:56,429.429 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:21:56,485.485 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:21:56,486.486 INFO    ] No camera update needed
[2026-06-27 01:21:56,487.487 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:21:56,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:21:56,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:21:56,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:21:58,535.535 INFO    ] ================================================
[2026-06-27 01:21:58,553.553 INFO    ] Launching Daemon at Sat Jun 27 01:21:58 IST 2026
[2026-06-27 01:21:58,564.564 INFO    ] ================================================
[2026-06-27 01:21:58,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:21:58
[2026-06-27 01:21:59,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:21:59,336.336 INFO    ] Initializing speech engine...
[2026-06-27 01:21:59,350.350 INFO    ] 2026-06-27 01:21:59
[2026-06-27 01:21:59,560.560 INFO    ] 2026-06-27 01:21:59
[2026-06-27 01:21:59,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:22:00,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:22:00,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:22:00,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:22:00,482.482 INFO    ] time= 27/06/2026 01:22:00
[2026-06-27 01:22:00,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:22:00,490.490 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:22:00,557.557 INFO    ] No existing commands found in stream
[2026-06-27 01:22:05,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:22:05,594.594 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-27 01:22:07,015.015 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 01:22:07,017.017 INFO    ] Checking for system updates...
[2026-06-27 01:22:07,038.038 INFO    ] 200
[2026-06-27 01:22:07,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:22:07,069.069 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:22:07,071.071 INFO    ] No update needed
[2026-06-27 01:22:07,072.072 INFO    ] Checking for camera pi updates...
[2026-06-27 01:22:07,091.091 INFO    ] 200
[2026-06-27 01:22:07,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:22:07,119.119 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:22:07,161.161 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:22:07,162.162 INFO    ] No camera update needed
[2026-06-27 01:22:07,164.164 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:22:07,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:22:07,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:22:07,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:22:09,210.210 INFO    ] ================================================
[2026-06-27 01:22:09,226.226 INFO    ] Launching Daemon at Sat Jun 27 01:22:09 IST 2026
[2026-06-27 01:22:09,237.237 INFO    ] ================================================
[2026-06-27 01:22:09,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:22:09
[2026-06-27 01:22:09,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:22:10,037.037 INFO    ] Initializing speech engine...
[2026-06-27 01:22:10,042.042 INFO    ] 2026-06-27 01:22:10
[2026-06-27 01:22:10,258.258 INFO    ] 2026-06-27 01:22:10
[2026-06-27 01:22:10,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:22:10,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:22:10,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:22:10,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:22:10,686.686 INFO    ] time= 27/06/2026 01:22:10
[2026-06-27 01:22:10,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:22:10,716.716 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:22:10,782.782 INFO    ] No existing commands found in stream
[2026-06-27 01:22:15,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:22:15,796.796 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-27 01:22:20,035.035 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 01:22:20,037.037 INFO    ] Checking for system updates...
[2026-06-27 01:22:20,058.058 INFO    ] 200
[2026-06-27 01:22:20,059.059 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:22:20,089.089 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:22:20,091.091 INFO    ] No update needed
[2026-06-27 01:22:20,092.092 INFO    ] Checking for camera pi updates...
[2026-06-27 01:22:20,113.113 INFO    ] 200
[2026-06-27 01:22:20,114.114 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:22:20,138.138 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:22:20,167.167 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:22:20,169.169 INFO    ] No camera update needed
[2026-06-27 01:22:20,170.170 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:22:20,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:22:20,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:22:20,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:22:22,216.216 INFO    ] ================================================
[2026-06-27 01:22:22,231.231 INFO    ] Launching Daemon at Sat Jun 27 01:22:22 IST 2026
[2026-06-27 01:22:22,242.242 INFO    ] ================================================
[2026-06-27 01:22:22,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:22:22
[2026-06-27 01:22:22,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:22:23,069.069 INFO    ] Initializing speech engine...
[2026-06-27 01:22:23,082.082 INFO    ] 2026-06-27 01:22:23
[2026-06-27 01:22:23,307.307 INFO    ] 2026-06-27 01:22:23
[2026-06-27 01:22:23,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:22:23,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:22:23,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:22:23,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:22:23,748.748 INFO    ] time= 27/06/2026 01:22:23
[2026-06-27 01:22:23,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:22:23,799.799 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:22:23,904.904 INFO    ] No existing commands found in stream
[2026-06-27 01:22:28,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:22:28,916.916 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-27 01:22:30,898.898 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 01:22:30,900.900 INFO    ] Checking for system updates...
[2026-06-27 01:22:30,920.920 INFO    ] 200
[2026-06-27 01:22:30,922.922 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:22:30,953.953 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:22:30,954.954 INFO    ] No update needed
[2026-06-27 01:22:30,955.955 INFO    ] Checking for camera pi updates...
[2026-06-27 01:22:30,977.977 INFO    ] 200
[2026-06-27 01:22:30,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:22:31,002.002 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:22:31,030.030 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:22:31,032.032 INFO    ] No camera update needed
[2026-06-27 01:22:31,033.033 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:22:31,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:22:31,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:22:31,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:22:33,073.073 INFO    ] ================================================
[2026-06-27 01:22:33,088.088 INFO    ] Launching Daemon at Sat Jun 27 01:22:33 IST 2026
[2026-06-27 01:22:33,099.099 INFO    ] ================================================
[2026-06-27 01:22:33,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:22:33
[2026-06-27 01:22:33,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:22:33,972.972 INFO    ] Initializing speech engine...
[2026-06-27 01:22:33,977.977 INFO    ] 2026-06-27 01:22:33
[2026-06-27 01:22:34,188.188 INFO    ] 2026-06-27 01:22:34
[2026-06-27 01:22:34,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:22:34,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:22:34,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:22:34,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:22:34,616.616 INFO    ] time= 27/06/2026 01:22:34
[2026-06-27 01:22:34,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:22:34,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:22:34,705.705 INFO    ] No existing commands found in stream
[2026-06-27 01:22:39,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:22:39,733.733 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-27 01:22:43,936.936 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 01:22:43,938.938 INFO    ] Checking for system updates...
[2026-06-27 01:22:43,959.959 INFO    ] 200
[2026-06-27 01:22:43,960.960 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:22:43,994.994 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:22:43,996.996 INFO    ] No update needed
[2026-06-27 01:22:43,997.997 INFO    ] Checking for camera pi updates...
[2026-06-27 01:22:44,019.019 INFO    ] 200
[2026-06-27 01:22:44,020.020 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:22:44,043.043 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:22:44,093.093 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:22:44,094.094 INFO    ] No camera update needed
[2026-06-27 01:22:44,096.096 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:22:44,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:22:44,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:22:44,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:22:46,141.141 INFO    ] ================================================
[2026-06-27 01:22:46,157.157 INFO    ] Launching Daemon at Sat Jun 27 01:22:46 IST 2026
[2026-06-27 01:22:46,168.168 INFO    ] ================================================
[2026-06-27 01:22:46,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:22:46
[2026-06-27 01:22:46,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:22:46,949.949 INFO    ] Initializing speech engine...
[2026-06-27 01:22:46,953.953 INFO    ] 2026-06-27 01:22:46
[2026-06-27 01:22:47,173.173 INFO    ] 2026-06-27 01:22:47
[2026-06-27 01:22:47,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:22:47,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:22:47,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:22:47,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:22:47,577.577 INFO    ] time= 27/06/2026 01:22:47
[2026-06-27 01:22:47,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:22:47,620.620 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:22:47,686.686 INFO    ] No existing commands found in stream
[2026-06-27 01:22:52,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:22:52,698.698 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-27 01:22:56,252.252 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 01:22:56,254.254 INFO    ] Checking for system updates...
[2026-06-27 01:22:56,279.279 INFO    ] 200
[2026-06-27 01:22:56,280.280 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:22:56,315.315 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:22:56,316.316 INFO    ] No update needed
[2026-06-27 01:22:56,317.317 INFO    ] Checking for camera pi updates...
[2026-06-27 01:22:56,337.337 INFO    ] 200
[2026-06-27 01:22:56,338.338 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:22:56,363.363 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:22:56,506.506 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:22:56,507.507 INFO    ] No camera update needed
[2026-06-27 01:22:56,509.509 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:22:56,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:22:56,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:22:56,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:22:58,555.555 INFO    ] ================================================
[2026-06-27 01:22:58,571.571 INFO    ] Launching Daemon at Sat Jun 27 01:22:58 IST 2026
[2026-06-27 01:22:58,582.582 INFO    ] ================================================
[2026-06-27 01:22:58,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:22:58
[2026-06-27 01:22:59,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:22:59,512.512 INFO    ] Initializing speech engine...
[2026-06-27 01:22:59,518.518 INFO    ] 2026-06-27 01:22:59
[2026-06-27 01:22:59,727.727 INFO    ] 2026-06-27 01:22:59
[2026-06-27 01:22:59,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:23:00,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:23:00,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:23:00,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:23:00,353.353 INFO    ] time= 27/06/2026 01:23:00
[2026-06-27 01:23:00,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:23:00,358.358 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:23:00,434.434 INFO    ] No existing commands found in stream
[2026-06-27 01:23:05,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:23:05,448.448 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-27 01:23:06,354.354 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:23:06,355.355 INFO    ] Checking for system updates...
[2026-06-27 01:23:06,376.376 INFO    ] 200
[2026-06-27 01:23:06,378.378 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:23:06,412.412 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:23:06,414.414 INFO    ] No update needed
[2026-06-27 01:23:06,415.415 INFO    ] Checking for camera pi updates...
[2026-06-27 01:23:06,437.437 INFO    ] 200
[2026-06-27 01:23:06,438.438 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:23:06,466.466 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:23:06,508.508 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:23:06,510.510 INFO    ] No camera update needed
[2026-06-27 01:23:06,511.511 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:23:06,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:23:06,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:23:06,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:23:08,559.559 INFO    ] ================================================
[2026-06-27 01:23:08,575.575 INFO    ] Launching Daemon at Sat Jun 27 01:23:08 IST 2026
[2026-06-27 01:23:08,587.587 INFO    ] ================================================
[2026-06-27 01:23:08,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:23:08
[2026-06-27 01:23:09,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:23:09,415.415 INFO    ] Initializing speech engine...
[2026-06-27 01:23:09,420.420 INFO    ] 2026-06-27 01:23:09
[2026-06-27 01:23:09,628.628 INFO    ] 2026-06-27 01:23:09
[2026-06-27 01:23:09,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:23:09,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:23:09,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:23:09,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:23:10,053.053 INFO    ] time= 27/06/2026 01:23:10
[2026-06-27 01:23:10,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:23:10,084.084 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:23:10,151.151 INFO    ] No existing commands found in stream
[2026-06-27 01:23:15,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:23:15,169.169 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-27 01:23:18,777.777 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 01:23:18,778.778 INFO    ] Checking for system updates...
[2026-06-27 01:23:18,801.801 INFO    ] 200
[2026-06-27 01:23:18,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:23:18,836.836 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:23:18,838.838 INFO    ] No update needed
[2026-06-27 01:23:18,839.839 INFO    ] Checking for camera pi updates...
[2026-06-27 01:23:18,858.858 INFO    ] 200
[2026-06-27 01:23:18,859.859 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:23:18,885.885 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:23:18,921.921 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:23:18,923.923 INFO    ] No camera update needed
[2026-06-27 01:23:18,924.924 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:23:18,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:23:18,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:23:18,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:23:20,971.971 INFO    ] ================================================
[2026-06-27 01:23:20,987.987 INFO    ] Launching Daemon at Sat Jun 27 01:23:20 IST 2026
[2026-06-27 01:23:21,998.998 INFO    ] ================================================
[2026-06-27 01:23:21,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:23:21
[2026-06-27 01:23:21,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:23:21,778.778 INFO    ] Initializing speech engine...
[2026-06-27 01:23:21,781.781 INFO    ] 2026-06-27 01:23:21
[2026-06-27 01:23:21,999.999 INFO    ] 2026-06-27 01:23:21
[2026-06-27 01:23:22,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:23:22,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:23:22,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:23:22,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:23:22,418.418 INFO    ] time= 27/06/2026 01:23:22
[2026-06-27 01:23:22,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:23:22,448.448 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:23:22,515.515 INFO    ] No existing commands found in stream
[2026-06-27 01:23:27,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:23:27,527.527 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-27 01:23:28,498.498 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 01:23:28,500.500 INFO    ] Checking for system updates...
[2026-06-27 01:23:28,522.522 INFO    ] 200
[2026-06-27 01:23:28,524.524 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:23:28,558.558 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:23:28,559.559 INFO    ] No update needed
[2026-06-27 01:23:28,560.560 INFO    ] Checking for camera pi updates...
[2026-06-27 01:23:28,580.580 INFO    ] 200
[2026-06-27 01:23:28,581.581 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:23:28,605.605 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:23:28,647.647 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:23:28,648.648 INFO    ] No camera update needed
[2026-06-27 01:23:28,650.650 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:23:28,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:23:28,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:23:28,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:23:30,696.696 INFO    ] ================================================
[2026-06-27 01:23:30,712.712 INFO    ] Launching Daemon at Sat Jun 27 01:23:30 IST 2026
[2026-06-27 01:23:30,724.724 INFO    ] ================================================
[2026-06-27 01:23:31,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:23:31
[2026-06-27 01:23:31,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:23:31,621.621 INFO    ] Initializing speech engine...
[2026-06-27 01:23:31,625.625 INFO    ] 2026-06-27 01:23:31
[2026-06-27 01:23:31,855.855 INFO    ] 2026-06-27 01:23:31
[2026-06-27 01:23:31,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:23:32,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:23:32,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:23:32,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:23:32,339.339 INFO    ] time= 27/06/2026 01:23:32
[2026-06-27 01:23:32,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:23:32,344.344 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:23:32,422.422 INFO    ] No existing commands found in stream
[2026-06-27 01:23:37,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:23:37,437.437 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-27 01:23:40,231.231 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:23:40,233.233 INFO    ] Checking for system updates...
[2026-06-27 01:23:40,254.254 INFO    ] 200
[2026-06-27 01:23:40,255.255 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:23:40,289.289 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:23:40,290.290 INFO    ] No update needed
[2026-06-27 01:23:40,292.292 INFO    ] Checking for camera pi updates...
[2026-06-27 01:23:40,315.315 INFO    ] 200
[2026-06-27 01:23:40,316.316 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:23:40,340.340 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:23:40,382.382 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:23:40,384.384 INFO    ] No camera update needed
[2026-06-27 01:23:40,385.385 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:23:40,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:23:40,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:23:40,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:23:42,426.426 INFO    ] ================================================
[2026-06-27 01:23:42,435.435 INFO    ] Launching Daemon at Sat Jun 27 01:23:42 IST 2026
[2026-06-27 01:23:42,441.441 INFO    ] ================================================
[2026-06-27 01:23:42,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:23:42
[2026-06-27 01:23:43,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:23:43,210.210 INFO    ] Initializing speech engine...
[2026-06-27 01:23:43,225.225 INFO    ] 2026-06-27 01:23:43
[2026-06-27 01:23:43,429.429 INFO    ] 2026-06-27 01:23:43
[2026-06-27 01:23:43,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:23:43,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:23:43,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:23:43,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:23:43,868.868 INFO    ] time= 27/06/2026 01:23:43
[2026-06-27 01:23:43,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:23:43,875.875 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:23:43,942.942 INFO    ] No existing commands found in stream
[2026-06-27 01:23:48,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:23:48,954.954 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-27 01:23:50,141.141 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 01:23:50,143.143 INFO    ] Checking for system updates...
[2026-06-27 01:23:50,166.166 INFO    ] 200
[2026-06-27 01:23:50,167.167 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:23:50,200.200 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:23:50,202.202 INFO    ] No update needed
[2026-06-27 01:23:50,203.203 INFO    ] Checking for camera pi updates...
[2026-06-27 01:23:50,224.224 INFO    ] 200
[2026-06-27 01:23:50,226.226 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:23:50,251.251 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:23:50,298.298 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:23:50,299.299 INFO    ] No camera update needed
[2026-06-27 01:23:50,301.301 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:23:50,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:23:50,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:23:50,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:23:52,348.348 INFO    ] ================================================
[2026-06-27 01:23:52,364.364 INFO    ] Launching Daemon at Sat Jun 27 01:23:52 IST 2026
[2026-06-27 01:23:52,376.376 INFO    ] ================================================
[2026-06-27 01:23:52,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:23:52
[2026-06-27 01:23:53,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:23:53,186.186 INFO    ] Initializing speech engine...
[2026-06-27 01:23:53,191.191 INFO    ] 2026-06-27 01:23:53
[2026-06-27 01:23:53,397.397 INFO    ] 2026-06-27 01:23:53
[2026-06-27 01:23:53,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:23:53,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:23:53,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:23:53,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:23:53,803.803 INFO    ] time= 27/06/2026 01:23:53
[2026-06-27 01:23:53,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:23:53,843.843 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:23:53,915.915 INFO    ] No existing commands found in stream
[2026-06-27 01:23:58,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:23:58,929.929 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-27 01:24:00,595.595 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 01:24:00,596.596 INFO    ] Checking for system updates...
[2026-06-27 01:24:00,617.617 INFO    ] 200
[2026-06-27 01:24:00,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:24:00,652.652 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:24:00,653.653 INFO    ] No update needed
[2026-06-27 01:24:00,655.655 INFO    ] Checking for camera pi updates...
[2026-06-27 01:24:00,674.674 INFO    ] 200
[2026-06-27 01:24:00,676.676 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:24:00,702.702 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:24:00,745.745 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:24:00,747.747 INFO    ] No camera update needed
[2026-06-27 01:24:00,748.748 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:24:00,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:24:00,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:24:00,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:24:02,797.797 INFO    ] ================================================
[2026-06-27 01:24:02,807.807 INFO    ] Launching Daemon at Sat Jun 27 01:24:02 IST 2026
[2026-06-27 01:24:02,813.813 INFO    ] ================================================
[2026-06-27 01:24:03,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:24:03
[2026-06-27 01:24:03,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:24:03,573.573 INFO    ] Initializing speech engine...
[2026-06-27 01:24:03,584.584 INFO    ] 2026-06-27 01:24:03
[2026-06-27 01:24:03,791.791 INFO    ] 2026-06-27 01:24:03
[2026-06-27 01:24:03,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:24:04,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:24:04,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:24:04,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:24:04,243.243 INFO    ] time= 27/06/2026 01:24:04
[2026-06-27 01:24:04,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:24:04,250.250 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:24:04,318.318 INFO    ] No existing commands found in stream
[2026-06-27 01:24:09,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:24:09,330.330 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-27 01:24:10,361.361 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 01:24:10,363.363 INFO    ] Checking for system updates...
[2026-06-27 01:24:10,384.384 INFO    ] 200
[2026-06-27 01:24:10,386.386 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:24:10,417.417 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:24:10,419.419 INFO    ] No update needed
[2026-06-27 01:24:10,420.420 INFO    ] Checking for camera pi updates...
[2026-06-27 01:24:10,441.441 INFO    ] 200
[2026-06-27 01:24:10,443.443 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:24:10,471.471 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:24:10,516.516 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:24:10,517.517 INFO    ] No camera update needed
[2026-06-27 01:24:10,519.519 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:24:10,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:24:10,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:24:10,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:24:12,566.566 INFO    ] ================================================
[2026-06-27 01:24:12,583.583 INFO    ] Launching Daemon at Sat Jun 27 01:24:12 IST 2026
[2026-06-27 01:24:12,595.595 INFO    ] ================================================
[2026-06-27 01:24:12,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:24:12
[2026-06-27 01:24:13,267.267 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:24:13,397.397 INFO    ] Initializing speech engine...
[2026-06-27 01:24:13,401.401 INFO    ] 2026-06-27 01:24:13
[2026-06-27 01:24:13,617.617 INFO    ] 2026-06-27 01:24:13
[2026-06-27 01:24:13,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:24:13,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:24:13,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:24:13,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:24:14,041.041 INFO    ] time= 27/06/2026 01:24:13
[2026-06-27 01:24:14,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:24:14,070.070 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:24:14,161.161 INFO    ] No existing commands found in stream
[2026-06-27 01:24:19,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:24:19,178.178 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-27 01:24:21,278.278 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:24:21,279.279 INFO    ] Checking for system updates...
[2026-06-27 01:24:21,301.301 INFO    ] 200
[2026-06-27 01:24:21,302.302 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:24:21,333.333 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:24:21,334.334 INFO    ] No update needed
[2026-06-27 01:24:21,336.336 INFO    ] Checking for camera pi updates...
[2026-06-27 01:24:21,355.355 INFO    ] 200
[2026-06-27 01:24:21,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:24:21,382.382 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:24:21,429.429 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:24:21,431.431 INFO    ] No camera update needed
[2026-06-27 01:24:21,436.436 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:24:21,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:24:21,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:24:21,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:24:23,484.484 INFO    ] ================================================
[2026-06-27 01:24:23,499.499 INFO    ] Launching Daemon at Sat Jun 27 01:24:23 IST 2026
[2026-06-27 01:24:23,511.511 INFO    ] ================================================
[2026-06-27 01:24:23,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:24:23
[2026-06-27 01:24:24,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:24:24,342.342 INFO    ] Initializing speech engine...
[2026-06-27 01:24:24,352.352 INFO    ] 2026-06-27 01:24:24
[2026-06-27 01:24:24,558.558 INFO    ] 2026-06-27 01:24:24
[2026-06-27 01:24:24,588.588 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:24:24,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:24:24,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:24:24,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:24:24,982.982 INFO    ] time= 27/06/2026 01:24:24
[2026-06-27 01:24:25,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:24:25,010.010 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:24:25,102.102 INFO    ] No existing commands found in stream
[2026-06-27 01:24:30,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:24:30,114.114 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-27 01:24:32,362.362 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 01:24:32,364.364 INFO    ] Checking for system updates...
[2026-06-27 01:24:32,388.388 INFO    ] 200
[2026-06-27 01:24:32,389.389 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:24:32,429.429 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:24:32,431.431 INFO    ] No update needed
[2026-06-27 01:24:32,433.433 INFO    ] Checking for camera pi updates...
[2026-06-27 01:24:32,454.454 INFO    ] 200
[2026-06-27 01:24:32,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:24:32,484.484 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:24:32,511.511 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:24:32,513.513 INFO    ] No camera update needed
[2026-06-27 01:24:32,515.515 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:24:32,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:24:32,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:24:32,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:24:34,565.565 INFO    ] ================================================
[2026-06-27 01:24:34,581.581 INFO    ] Launching Daemon at Sat Jun 27 01:24:34 IST 2026
[2026-06-27 01:24:34,592.592 INFO    ] ================================================
[2026-06-27 01:24:34,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:24:34
[2026-06-27 01:24:35,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:24:35,457.457 INFO    ] Initializing speech engine...
[2026-06-27 01:24:35,465.465 INFO    ] 2026-06-27 01:24:35
[2026-06-27 01:24:35,678.678 INFO    ] 2026-06-27 01:24:35
[2026-06-27 01:24:35,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:24:35,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:24:35,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:24:36,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:24:36,107.107 INFO    ] time= 27/06/2026 01:24:36
[2026-06-27 01:24:36,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:24:36,135.135 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:24:36,204.204 INFO    ] No existing commands found in stream
[2026-06-27 01:24:41,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:24:41,222.222 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-27 01:24:44,978.978 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:24:44,979.979 INFO    ] Checking for system updates...
[2026-06-27 01:24:45,000.000 INFO    ] 200
[2026-06-27 01:24:45,002.002 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:24:45,035.035 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:24:45,036.036 INFO    ] No update needed
[2026-06-27 01:24:45,038.038 INFO    ] Checking for camera pi updates...
[2026-06-27 01:24:45,062.062 INFO    ] 200
[2026-06-27 01:24:45,063.063 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:24:45,090.090 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:24:45,134.134 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:24:45,136.136 INFO    ] No camera update needed
[2026-06-27 01:24:45,137.137 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:24:45,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:24:45,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:24:45,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:24:47,190.190 INFO    ] ================================================
[2026-06-27 01:24:47,206.206 INFO    ] Launching Daemon at Sat Jun 27 01:24:47 IST 2026
[2026-06-27 01:24:47,217.217 INFO    ] ================================================
[2026-06-27 01:24:47,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:24:47
[2026-06-27 01:24:47,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:24:47,996.996 INFO    ] Initializing speech engine...
[2026-06-27 01:24:48,005.005 INFO    ] 2026-06-27 01:24:47
[2026-06-27 01:24:48,225.225 INFO    ] 2026-06-27 01:24:48
[2026-06-27 01:24:48,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:24:48,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:24:48,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:24:48,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:24:48,652.652 INFO    ] time= 27/06/2026 01:24:48
[2026-06-27 01:24:48,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:24:48,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:24:48,788.788 INFO    ] No existing commands found in stream
[2026-06-27 01:24:53,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:24:53,819.819 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-27 01:24:57,647.647 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:24:57,648.648 INFO    ] Checking for system updates...
[2026-06-27 01:24:57,669.669 INFO    ] 200
[2026-06-27 01:24:57,670.670 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:24:57,703.703 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:24:57,705.705 INFO    ] No update needed
[2026-06-27 01:24:57,706.706 INFO    ] Checking for camera pi updates...
[2026-06-27 01:24:57,727.727 INFO    ] 200
[2026-06-27 01:24:57,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:24:57,752.752 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:24:57,798.798 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:24:57,799.799 INFO    ] No camera update needed
[2026-06-27 01:24:57,800.800 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:24:57,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:24:57,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:24:57,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:24:59,846.846 INFO    ] ================================================
[2026-06-27 01:24:59,862.862 INFO    ] Launching Daemon at Sat Jun 27 01:24:59 IST 2026
[2026-06-27 01:24:59,873.873 INFO    ] ================================================
[2026-06-27 01:25:00,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:25:00
[2026-06-27 01:25:00,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:25:00,650.650 INFO    ] Initializing speech engine...
[2026-06-27 01:25:00,664.664 INFO    ] 2026-06-27 01:25:00
[2026-06-27 01:25:00,884.884 INFO    ] 2026-06-27 01:25:00
[2026-06-27 01:25:00,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:25:01,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:25:01,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:25:01,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:25:01,323.323 INFO    ] time= 27/06/2026 01:25:01
[2026-06-27 01:25:01,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:25:01,364.364 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:25:01,441.441 INFO    ] No existing commands found in stream
[2026-06-27 01:25:06,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:25:06,455.455 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-27 01:25:08,366.366 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 01:25:08,367.367 INFO    ] Checking for system updates...
[2026-06-27 01:25:08,388.388 INFO    ] 200
[2026-06-27 01:25:08,390.390 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:25:08,422.422 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:25:08,424.424 INFO    ] No update needed
[2026-06-27 01:25:08,425.425 INFO    ] Checking for camera pi updates...
[2026-06-27 01:25:08,444.444 INFO    ] 200
[2026-06-27 01:25:08,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:25:08,470.470 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:25:08,509.509 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:25:08,511.511 INFO    ] No camera update needed
[2026-06-27 01:25:08,512.512 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:25:08,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:25:08,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:25:08,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:25:10,561.561 INFO    ] ================================================
[2026-06-27 01:25:10,577.577 INFO    ] Launching Daemon at Sat Jun 27 01:25:10 IST 2026
[2026-06-27 01:25:10,588.588 INFO    ] ================================================
[2026-06-27 01:25:10,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:25:10
[2026-06-27 01:25:11,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:25:11,395.395 INFO    ] Initializing speech engine...
[2026-06-27 01:25:11,401.401 INFO    ] 2026-06-27 01:25:11
[2026-06-27 01:25:11,607.607 INFO    ] 2026-06-27 01:25:11
[2026-06-27 01:25:11,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:25:11,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:25:11,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:25:12,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:25:12,042.042 INFO    ] time= 27/06/2026 01:25:12
[2026-06-27 01:25:12,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:25:12,053.053 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:25:12,145.145 INFO    ] No existing commands found in stream
[2026-06-27 01:25:17,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:25:17,162.162 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-27 01:25:20,115.115 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 01:25:20,116.116 INFO    ] Checking for system updates...
[2026-06-27 01:25:20,137.137 INFO    ] 200
[2026-06-27 01:25:20,138.138 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:25:20,172.172 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:25:20,174.174 INFO    ] No update needed
[2026-06-27 01:25:20,175.175 INFO    ] Checking for camera pi updates...
[2026-06-27 01:25:20,196.196 INFO    ] 200
[2026-06-27 01:25:20,197.197 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:25:20,220.220 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:25:20,262.262 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:25:20,263.263 INFO    ] No camera update needed
[2026-06-27 01:25:20,265.265 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:25:20,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:25:20,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:25:20,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:25:22,310.310 INFO    ] ================================================
[2026-06-27 01:25:22,326.326 INFO    ] Launching Daemon at Sat Jun 27 01:25:22 IST 2026
[2026-06-27 01:25:22,338.338 INFO    ] ================================================
[2026-06-27 01:25:22,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:25:22
[2026-06-27 01:25:22,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:25:23,137.137 INFO    ] Initializing speech engine...
[2026-06-27 01:25:23,145.145 INFO    ] 2026-06-27 01:25:23
[2026-06-27 01:25:23,352.352 INFO    ] 2026-06-27 01:25:23
[2026-06-27 01:25:23,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:25:23,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:25:23,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:25:23,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:25:23,789.789 INFO    ] time= 27/06/2026 01:25:23
[2026-06-27 01:25:23,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:25:23,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:25:23,935.935 INFO    ] No existing commands found in stream
[2026-06-27 01:25:28,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:25:28,952.952 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-27 01:25:33,247.247 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:25:33,248.248 INFO    ] Checking for system updates...
[2026-06-27 01:25:33,269.269 INFO    ] 200
[2026-06-27 01:25:33,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:25:33,301.301 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:25:33,302.302 INFO    ] No update needed
[2026-06-27 01:25:33,303.303 INFO    ] Checking for camera pi updates...
[2026-06-27 01:25:33,323.323 INFO    ] 200
[2026-06-27 01:25:33,324.324 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:25:33,348.348 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:25:33,387.387 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:25:33,389.389 INFO    ] No camera update needed
[2026-06-27 01:25:33,390.390 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:25:33,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:25:33,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:25:33,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:25:35,435.435 INFO    ] ================================================
[2026-06-27 01:25:35,450.450 INFO    ] Launching Daemon at Sat Jun 27 01:25:35 IST 2026
[2026-06-27 01:25:35,461.461 INFO    ] ================================================
[2026-06-27 01:25:35,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:25:35
[2026-06-27 01:25:36,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:25:36,320.320 INFO    ] Initializing speech engine...
[2026-06-27 01:25:36,330.330 INFO    ] 2026-06-27 01:25:36
[2026-06-27 01:25:36,535.535 INFO    ] 2026-06-27 01:25:36
[2026-06-27 01:25:36,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:25:36,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:25:36,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:25:36,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:25:36,945.945 INFO    ] time= 27/06/2026 01:25:36
[2026-06-27 01:25:36,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:25:36,985.985 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:25:37,081.081 INFO    ] No existing commands found in stream
[2026-06-27 01:25:42,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:25:42,098.098 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-27 01:25:44,783.783 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 01:25:44,784.784 INFO    ] Checking for system updates...
[2026-06-27 01:25:44,807.807 INFO    ] 200
[2026-06-27 01:25:44,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:25:44,845.845 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:25:44,846.846 INFO    ] No update needed
[2026-06-27 01:25:44,848.848 INFO    ] Checking for camera pi updates...
[2026-06-27 01:25:44,871.871 INFO    ] 200
[2026-06-27 01:25:44,873.873 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:25:44,899.899 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:25:44,941.941 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:25:44,943.943 INFO    ] No camera update needed
[2026-06-27 01:25:44,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:25:44,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:25:44,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:25:44,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:25:46,993.993 INFO    ] ================================================
[2026-06-27 01:25:47,008.008 INFO    ] Launching Daemon at Sat Jun 27 01:25:47 IST 2026
[2026-06-27 01:25:47,019.019 INFO    ] ================================================
[2026-06-27 01:25:47,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:25:47
[2026-06-27 01:25:47,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:25:47,827.827 INFO    ] Initializing speech engine...
[2026-06-27 01:25:47,831.831 INFO    ] 2026-06-27 01:25:47
[2026-06-27 01:25:48,040.040 INFO    ] 2026-06-27 01:25:48
[2026-06-27 01:25:48,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:25:48,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:25:48,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:25:48,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:25:48,329.329 INFO    ] time= 27/06/2026 01:25:48
[2026-06-27 01:25:48,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:25:48,337.337 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:25:48,426.426 INFO    ] No existing commands found in stream
[2026-06-27 01:25:53,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:25:53,459.459 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-27 01:25:56,746.746 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 01:25:56,748.748 INFO    ] Checking for system updates...
[2026-06-27 01:25:56,769.769 INFO    ] 200
[2026-06-27 01:25:56,770.770 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:25:56,801.801 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:25:56,802.802 INFO    ] No update needed
[2026-06-27 01:25:56,804.804 INFO    ] Checking for camera pi updates...
[2026-06-27 01:25:56,823.823 INFO    ] 200
[2026-06-27 01:25:56,824.824 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:25:56,848.848 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:25:56,889.889 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:25:56,890.890 INFO    ] No camera update needed
[2026-06-27 01:25:56,892.892 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:25:56,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:25:56,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:25:56,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:25:58,939.939 INFO    ] ================================================
[2026-06-27 01:25:58,954.954 INFO    ] Launching Daemon at Sat Jun 27 01:25:58 IST 2026
[2026-06-27 01:25:58,965.965 INFO    ] ================================================
[2026-06-27 01:25:59,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:25:59
[2026-06-27 01:25:59,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:25:59,741.741 INFO    ] Initializing speech engine...
[2026-06-27 01:25:59,751.751 INFO    ] 2026-06-27 01:25:59
[2026-06-27 01:25:59,957.957 INFO    ] 2026-06-27 01:25:59
[2026-06-27 01:25:59,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:26:00,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:26:00,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:26:00,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:26:00,475.475 INFO    ] time= 27/06/2026 01:26:00
[2026-06-27 01:26:00,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:26:00,502.502 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:26:00,600.600 INFO    ] No existing commands found in stream
[2026-06-27 01:26:05,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:26:05,609.609 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-27 01:26:07,439.439 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 01:26:07,440.440 INFO    ] Checking for system updates...
[2026-06-27 01:26:07,462.462 INFO    ] 200
[2026-06-27 01:26:07,464.464 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:26:07,494.494 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:26:07,496.496 INFO    ] No update needed
[2026-06-27 01:26:07,497.497 INFO    ] Checking for camera pi updates...
[2026-06-27 01:26:07,519.519 INFO    ] 200
[2026-06-27 01:26:07,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:26:07,545.545 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:26:07,591.591 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:26:07,592.592 INFO    ] No camera update needed
[2026-06-27 01:26:07,593.593 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:26:07,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:26:07,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:26:07,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:26:09,641.641 INFO    ] ================================================
[2026-06-27 01:26:09,657.657 INFO    ] Launching Daemon at Sat Jun 27 01:26:09 IST 2026
[2026-06-27 01:26:09,668.668 INFO    ] ================================================
[2026-06-27 01:26:09,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:26:09
[2026-06-27 01:26:10,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:26:10,449.449 INFO    ] Initializing speech engine...
[2026-06-27 01:26:10,461.461 INFO    ] 2026-06-27 01:26:10
[2026-06-27 01:26:10,675.675 INFO    ] 2026-06-27 01:26:10
[2026-06-27 01:26:10,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:26:10,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:26:10,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:26:11,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:26:11,102.102 INFO    ] time= 27/06/2026 01:26:11
[2026-06-27 01:26:11,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:26:11,154.154 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:26:11,232.232 INFO    ] No existing commands found in stream
[2026-06-27 01:26:16,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:26:16,254.254 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-27 01:26:18,796.796 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 01:26:18,798.798 INFO    ] Checking for system updates...
[2026-06-27 01:26:18,820.820 INFO    ] 200
[2026-06-27 01:26:18,821.821 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:26:18,854.854 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:26:18,855.855 INFO    ] No update needed
[2026-06-27 01:26:18,857.857 INFO    ] Checking for camera pi updates...
[2026-06-27 01:26:18,877.877 INFO    ] 200
[2026-06-27 01:26:18,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:26:18,902.902 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:26:18,947.947 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:26:18,949.949 INFO    ] No camera update needed
[2026-06-27 01:26:18,950.950 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:26:18,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:26:18,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:26:18,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:26:21,998.998 INFO    ] ================================================
[2026-06-27 01:26:21,014.014 INFO    ] Launching Daemon at Sat Jun 27 01:26:21 IST 2026
[2026-06-27 01:26:21,025.025 INFO    ] ================================================
[2026-06-27 01:26:21,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:26:21
[2026-06-27 01:26:21,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:26:21,861.861 INFO    ] Initializing speech engine...
[2026-06-27 01:26:21,871.871 INFO    ] 2026-06-27 01:26:21
[2026-06-27 01:26:22,080.080 INFO    ] 2026-06-27 01:26:22
[2026-06-27 01:26:22,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:26:22,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:26:22,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:26:22,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:26:22,501.501 INFO    ] time= 27/06/2026 01:26:22
[2026-06-27 01:26:22,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:26:22,530.530 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:26:22,598.598 INFO    ] No existing commands found in stream
[2026-06-27 01:26:27,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:26:27,616.616 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-27 01:26:30,358.358 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 01:26:30,360.360 INFO    ] Checking for system updates...
[2026-06-27 01:26:30,385.385 INFO    ] 200
[2026-06-27 01:26:30,386.386 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:26:30,423.423 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:26:30,424.424 INFO    ] No update needed
[2026-06-27 01:26:30,426.426 INFO    ] Checking for camera pi updates...
[2026-06-27 01:26:30,448.448 INFO    ] 200
[2026-06-27 01:26:30,450.450 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:26:30,474.474 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:26:30,519.519 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:26:30,521.521 INFO    ] No camera update needed
[2026-06-27 01:26:30,522.522 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:26:30,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:26:30,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:26:30,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:26:32,563.563 INFO    ] ================================================
[2026-06-27 01:26:32,579.579 INFO    ] Launching Daemon at Sat Jun 27 01:26:32 IST 2026
[2026-06-27 01:26:32,590.590 INFO    ] ================================================
[2026-06-27 01:26:32,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:26:32
[2026-06-27 01:26:33,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:26:33,438.438 INFO    ] Initializing speech engine...
[2026-06-27 01:26:33,446.446 INFO    ] 2026-06-27 01:26:33
[2026-06-27 01:26:33,664.664 INFO    ] 2026-06-27 01:26:33
[2026-06-27 01:26:33,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:26:33,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:26:33,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:26:34,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:26:34,083.083 INFO    ] time= 27/06/2026 01:26:34
[2026-06-27 01:26:34,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:26:34,112.112 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:26:34,202.202 INFO    ] No existing commands found in stream
[2026-06-27 01:26:39,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:26:39,220.220 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-27 01:26:42,821.821 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 01:26:42,823.823 INFO    ] Checking for system updates...
[2026-06-27 01:26:42,848.848 INFO    ] 200
[2026-06-27 01:26:42,849.849 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:26:42,885.885 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:26:42,886.886 INFO    ] No update needed
[2026-06-27 01:26:42,888.888 INFO    ] Checking for camera pi updates...
[2026-06-27 01:26:42,911.911 INFO    ] 200
[2026-06-27 01:26:42,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:26:42,937.937 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:26:42,979.979 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:26:42,981.981 INFO    ] No camera update needed
[2026-06-27 01:26:42,982.982 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:26:42,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:26:42,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:26:42,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:26:45,028.028 INFO    ] ================================================
[2026-06-27 01:26:45,044.044 INFO    ] Launching Daemon at Sat Jun 27 01:26:45 IST 2026
[2026-06-27 01:26:45,055.055 INFO    ] ================================================
[2026-06-27 01:26:45,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:26:45
[2026-06-27 01:26:45,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:26:45,915.915 INFO    ] Initializing speech engine...
[2026-06-27 01:26:45,928.928 INFO    ] 2026-06-27 01:26:45
[2026-06-27 01:26:46,139.139 INFO    ] 2026-06-27 01:26:46
[2026-06-27 01:26:46,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:26:46,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:26:46,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:26:46,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:26:46,576.576 INFO    ] time= 27/06/2026 01:26:46
[2026-06-27 01:26:46,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:26:46,593.593 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:26:46,685.685 INFO    ] No existing commands found in stream
[2026-06-27 01:26:51,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:26:51,702.702 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-27 01:26:52,549.549 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 01:26:52,550.550 INFO    ] Checking for system updates...
[2026-06-27 01:26:52,574.574 INFO    ] 200
[2026-06-27 01:26:52,576.576 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:26:52,609.609 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:26:52,610.610 INFO    ] No update needed
[2026-06-27 01:26:52,612.612 INFO    ] Checking for camera pi updates...
[2026-06-27 01:26:52,636.636 INFO    ] 200
[2026-06-27 01:26:52,637.637 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:26:52,665.665 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:26:52,726.726 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:26:52,728.728 INFO    ] No camera update needed
[2026-06-27 01:26:52,729.729 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:26:52,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:26:52,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:26:52,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:26:54,776.776 INFO    ] ================================================
[2026-06-27 01:26:54,791.791 INFO    ] Launching Daemon at Sat Jun 27 01:26:54 IST 2026
[2026-06-27 01:26:54,803.803 INFO    ] ================================================
[2026-06-27 01:26:55,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:26:55
[2026-06-27 01:26:55,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:26:55,669.669 INFO    ] Initializing speech engine...
[2026-06-27 01:26:55,673.673 INFO    ] 2026-06-27 01:26:55
[2026-06-27 01:26:55,882.882 INFO    ] 2026-06-27 01:26:55
[2026-06-27 01:26:55,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:26:56,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:26:56,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:26:56,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:26:56,300.300 INFO    ] time= 27/06/2026 01:26:56
[2026-06-27 01:26:56,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:26:56,340.340 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:26:56,408.408 INFO    ] No existing commands found in stream
[2026-06-27 01:27:01,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:27:01,426.426 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-27 01:27:02,649.649 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 01:27:02,650.650 INFO    ] Checking for system updates...
[2026-06-27 01:27:02,674.674 INFO    ] 200
[2026-06-27 01:27:02,676.676 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:27:02,714.714 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:27:02,715.715 INFO    ] No update needed
[2026-06-27 01:27:02,716.716 INFO    ] Checking for camera pi updates...
[2026-06-27 01:27:02,737.737 INFO    ] 200
[2026-06-27 01:27:02,738.738 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:27:02,763.763 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:27:02,802.802 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:27:02,803.803 INFO    ] No camera update needed
[2026-06-27 01:27:02,805.805 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:27:02,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:27:02,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:27:02,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:27:04,851.851 INFO    ] ================================================
[2026-06-27 01:27:04,867.867 INFO    ] Launching Daemon at Sat Jun 27 01:27:04 IST 2026
[2026-06-27 01:27:04,879.879 INFO    ] ================================================
[2026-06-27 01:27:05,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:27:05
[2026-06-27 01:27:05,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:27:05,777.777 INFO    ] Initializing speech engine...
[2026-06-27 01:27:05,785.785 INFO    ] 2026-06-27 01:27:05
[2026-06-27 01:27:05,992.992 INFO    ] 2026-06-27 01:27:05
[2026-06-27 01:27:06,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:27:06,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:27:06,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:27:06,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:27:06,421.421 INFO    ] time= 27/06/2026 01:27:06
[2026-06-27 01:27:06,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:27:06,450.450 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:27:06,519.519 INFO    ] No existing commands found in stream
[2026-06-27 01:27:11,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:27:11,548.548 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-27 01:27:14,554.554 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 01:27:14,556.556 INFO    ] Checking for system updates...
[2026-06-27 01:27:14,577.577 INFO    ] 200
[2026-06-27 01:27:14,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:27:14,614.614 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:27:14,616.616 INFO    ] No update needed
[2026-06-27 01:27:14,617.617 INFO    ] Checking for camera pi updates...
[2026-06-27 01:27:14,640.640 INFO    ] 200
[2026-06-27 01:27:14,641.641 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:27:14,668.668 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:27:14,810.810 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:27:14,812.812 INFO    ] No camera update needed
[2026-06-27 01:27:14,814.814 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:27:14,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:27:14,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:27:14,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:27:16,860.860 INFO    ] ================================================
[2026-06-27 01:27:16,876.876 INFO    ] Launching Daemon at Sat Jun 27 01:27:16 IST 2026
[2026-06-27 01:27:16,888.888 INFO    ] ================================================
[2026-06-27 01:27:17,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:27:17
[2026-06-27 01:27:17,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:27:17,706.706 INFO    ] Initializing speech engine...
[2026-06-27 01:27:17,711.711 INFO    ] 2026-06-27 01:27:17
[2026-06-27 01:27:17,916.916 INFO    ] 2026-06-27 01:27:17
[2026-06-27 01:27:17,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:27:18,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:27:18,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:27:18,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:27:18,336.336 INFO    ] time= 27/06/2026 01:27:18
[2026-06-27 01:27:18,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:27:18,369.369 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:27:18,437.437 INFO    ] No existing commands found in stream
[2026-06-27 01:27:23,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:27:23,455.455 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-27 01:27:26,904.904 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 01:27:26,906.906 INFO    ] Checking for system updates...
[2026-06-27 01:27:26,929.929 INFO    ] 200
[2026-06-27 01:27:26,931.931 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:27:26,964.964 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:27:26,965.965 INFO    ] No update needed
[2026-06-27 01:27:26,967.967 INFO    ] Checking for camera pi updates...
[2026-06-27 01:27:26,988.988 INFO    ] 200
[2026-06-27 01:27:26,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:27:27,013.013 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:27:27,054.054 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:27:27,055.055 INFO    ] No camera update needed
[2026-06-27 01:27:27,057.057 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:27:27,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:27:27,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:27:27,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:27:29,105.105 INFO    ] ================================================
[2026-06-27 01:27:29,121.121 INFO    ] Launching Daemon at Sat Jun 27 01:27:29 IST 2026
[2026-06-27 01:27:29,132.132 INFO    ] ================================================
[2026-06-27 01:27:29,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:27:29
[2026-06-27 01:27:29,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:27:30,014.014 INFO    ] Initializing speech engine...
[2026-06-27 01:27:30,020.020 INFO    ] 2026-06-27 01:27:30
[2026-06-27 01:27:30,233.233 INFO    ] 2026-06-27 01:27:30
[2026-06-27 01:27:30,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:27:30,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:27:30,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:27:30,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:27:30,646.646 INFO    ] time= 27/06/2026 01:27:30
[2026-06-27 01:27:30,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:27:30,690.690 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:27:30,757.757 INFO    ] No existing commands found in stream
[2026-06-27 01:27:35,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:27:35,771.771 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-27 01:27:37,817.817 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 01:27:37,819.819 INFO    ] Checking for system updates...
[2026-06-27 01:27:37,841.841 INFO    ] 200
[2026-06-27 01:27:37,843.843 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:27:37,876.876 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:27:37,878.878 INFO    ] No update needed
[2026-06-27 01:27:37,879.879 INFO    ] Checking for camera pi updates...
[2026-06-27 01:27:37,901.901 INFO    ] 200
[2026-06-27 01:27:37,902.902 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:27:37,925.925 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:27:37,969.969 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:27:37,970.970 INFO    ] No camera update needed
[2026-06-27 01:27:37,972.972 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:27:37,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:27:37,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:27:37,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:27:40,019.019 INFO    ] ================================================
[2026-06-27 01:27:40,036.036 INFO    ] Launching Daemon at Sat Jun 27 01:27:40 IST 2026
[2026-06-27 01:27:40,049.049 INFO    ] ================================================
[2026-06-27 01:27:40,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:27:40
[2026-06-27 01:27:40,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:27:40,855.855 INFO    ] Initializing speech engine...
[2026-06-27 01:27:40,860.860 INFO    ] 2026-06-27 01:27:40
[2026-06-27 01:27:41,064.064 INFO    ] 2026-06-27 01:27:41
[2026-06-27 01:27:41,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:27:41,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:27:41,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:27:41,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:27:41,485.485 INFO    ] time= 27/06/2026 01:27:41
[2026-06-27 01:27:41,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:27:41,519.519 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:27:41,608.608 INFO    ] No existing commands found in stream
[2026-06-27 01:27:46,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:27:46,620.620 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-27 01:27:47,584.584 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 01:27:47,585.585 INFO    ] Checking for system updates...
[2026-06-27 01:27:47,607.607 INFO    ] 200
[2026-06-27 01:27:47,609.609 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:27:47,639.639 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:27:47,641.641 INFO    ] No update needed
[2026-06-27 01:27:47,642.642 INFO    ] Checking for camera pi updates...
[2026-06-27 01:27:47,663.663 INFO    ] 200
[2026-06-27 01:27:47,665.665 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:27:47,690.690 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:27:47,733.733 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:27:47,735.735 INFO    ] No camera update needed
[2026-06-27 01:27:47,736.736 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:27:47,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:27:47,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:27:47,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:27:49,785.785 INFO    ] ================================================
[2026-06-27 01:27:49,802.802 INFO    ] Launching Daemon at Sat Jun 27 01:27:49 IST 2026
[2026-06-27 01:27:49,813.813 INFO    ] ================================================
[2026-06-27 01:27:50,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:27:50
[2026-06-27 01:27:50,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:27:50,690.690 INFO    ] Initializing speech engine...
[2026-06-27 01:27:50,696.696 INFO    ] 2026-06-27 01:27:50
[2026-06-27 01:27:50,907.907 INFO    ] 2026-06-27 01:27:50
[2026-06-27 01:27:50,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:27:51,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:27:51,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:27:51,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:27:51,337.337 INFO    ] time= 27/06/2026 01:27:51
[2026-06-27 01:27:51,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:27:51,368.368 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:27:51,437.437 INFO    ] No existing commands found in stream
[2026-06-27 01:27:56,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:27:56,455.455 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-27 01:27:57,517.517 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 01:27:57,518.518 INFO    ] Checking for system updates...
[2026-06-27 01:27:57,541.541 INFO    ] 200
[2026-06-27 01:27:57,543.543 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:27:57,578.578 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:27:57,579.579 INFO    ] No update needed
[2026-06-27 01:27:57,581.581 INFO    ] Checking for camera pi updates...
[2026-06-27 01:27:57,604.604 INFO    ] 200
[2026-06-27 01:27:57,606.606 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:27:57,630.630 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:27:57,675.675 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:27:57,677.677 INFO    ] No camera update needed
[2026-06-27 01:27:57,678.678 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:27:57,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:27:57,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:27:57,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:27:59,728.728 INFO    ] ================================================
[2026-06-27 01:27:59,747.747 INFO    ] Launching Daemon at Sat Jun 27 01:27:59 IST 2026
[2026-06-27 01:27:59,759.759 INFO    ] ================================================
[2026-06-27 01:28:00,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:28:00
[2026-06-27 01:28:00,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:28:00,641.641 INFO    ] Initializing speech engine...
[2026-06-27 01:28:00,650.650 INFO    ] 2026-06-27 01:28:00
[2026-06-27 01:28:00,877.877 INFO    ] 2026-06-27 01:28:00
[2026-06-27 01:28:00,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:28:01,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:28:01,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:28:01,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:28:01,301.301 INFO    ] time= 27/06/2026 01:28:01
[2026-06-27 01:28:01,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:28:01,330.330 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:28:01,396.396 INFO    ] No existing commands found in stream
[2026-06-27 01:28:06,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:28:06,409.409 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-27 01:28:07,189.189 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 01:28:07,190.190 INFO    ] Checking for system updates...
[2026-06-27 01:28:07,213.213 INFO    ] 200
[2026-06-27 01:28:07,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:28:07,248.248 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:28:07,250.250 INFO    ] No update needed
[2026-06-27 01:28:07,252.252 INFO    ] Checking for camera pi updates...
[2026-06-27 01:28:07,273.273 INFO    ] 200
[2026-06-27 01:28:07,275.275 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:28:07,298.298 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:28:07,343.343 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:28:07,345.345 INFO    ] No camera update needed
[2026-06-27 01:28:07,346.346 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:28:07,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:28:07,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:28:07,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:28:09,394.394 INFO    ] ================================================
[2026-06-27 01:28:09,410.410 INFO    ] Launching Daemon at Sat Jun 27 01:28:09 IST 2026
[2026-06-27 01:28:09,422.422 INFO    ] ================================================
[2026-06-27 01:28:09,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:28:09
[2026-06-27 01:28:10,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:28:10,236.236 INFO    ] Initializing speech engine...
[2026-06-27 01:28:10,244.244 INFO    ] 2026-06-27 01:28:10
[2026-06-27 01:28:10,458.458 INFO    ] 2026-06-27 01:28:10
[2026-06-27 01:28:10,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:28:10,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:28:10,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:28:10,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:28:10,863.863 INFO    ] time= 27/06/2026 01:28:10
[2026-06-27 01:28:10,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:28:10,909.909 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:28:10,980.980 INFO    ] No existing commands found in stream
[2026-06-27 01:28:15,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:28:15,992.992 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-27 01:28:20,392.392 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 01:28:20,393.393 INFO    ] Checking for system updates...
[2026-06-27 01:28:20,415.415 INFO    ] 200
[2026-06-27 01:28:20,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:28:20,447.447 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:28:20,449.449 INFO    ] No update needed
[2026-06-27 01:28:20,450.450 INFO    ] Checking for camera pi updates...
[2026-06-27 01:28:20,471.471 INFO    ] 200
[2026-06-27 01:28:20,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:28:20,497.497 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:28:20,542.542 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:28:20,544.544 INFO    ] No camera update needed
[2026-06-27 01:28:20,545.545 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:28:20,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:28:20,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:28:20,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:28:22,594.594 INFO    ] ================================================
[2026-06-27 01:28:22,610.610 INFO    ] Launching Daemon at Sat Jun 27 01:28:22 IST 2026
[2026-06-27 01:28:22,622.622 INFO    ] ================================================
[2026-06-27 01:28:22,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:28:22
[2026-06-27 01:28:23,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:28:23,439.439 INFO    ] Initializing speech engine...
[2026-06-27 01:28:23,444.444 INFO    ] 2026-06-27 01:28:23
[2026-06-27 01:28:23,649.649 INFO    ] 2026-06-27 01:28:23
[2026-06-27 01:28:23,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:28:23,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:28:23,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:28:24,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:28:24,065.065 INFO    ] time= 27/06/2026 01:28:24
[2026-06-27 01:28:24,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:28:24,098.098 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:28:24,164.164 INFO    ] No existing commands found in stream
[2026-06-27 01:28:29,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:28:29,177.177 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-27 01:28:30,324.324 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 01:28:30,326.326 INFO    ] Checking for system updates...
[2026-06-27 01:28:30,347.347 INFO    ] 200
[2026-06-27 01:28:30,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:28:30,383.383 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:28:30,384.384 INFO    ] No update needed
[2026-06-27 01:28:30,386.386 INFO    ] Checking for camera pi updates...
[2026-06-27 01:28:30,407.407 INFO    ] 200
[2026-06-27 01:28:30,409.409 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:28:30,432.432 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:28:30,473.473 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:28:30,475.475 INFO    ] No camera update needed
[2026-06-27 01:28:30,477.477 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:28:30,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:28:30,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:28:30,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:28:32,518.518 INFO    ] ================================================
[2026-06-27 01:28:32,528.528 INFO    ] Launching Daemon at Sat Jun 27 01:28:32 IST 2026
[2026-06-27 01:28:32,536.536 INFO    ] ================================================
[2026-06-27 01:28:32,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:28:32
[2026-06-27 01:28:33,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:28:33,387.387 INFO    ] Initializing speech engine...
[2026-06-27 01:28:33,393.393 INFO    ] 2026-06-27 01:28:33
[2026-06-27 01:28:33,601.601 INFO    ] 2026-06-27 01:28:33
[2026-06-27 01:28:33,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:28:33,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:28:33,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:28:33,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:28:34,017.017 INFO    ] time= 27/06/2026 01:28:33
[2026-06-27 01:28:34,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:28:34,050.050 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:28:34,118.118 INFO    ] No existing commands found in stream
[2026-06-27 01:28:39,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:28:39,136.136 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-27 01:28:40,408.408 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:28:40,410.410 INFO    ] Checking for system updates...
[2026-06-27 01:28:40,431.431 INFO    ] 200
[2026-06-27 01:28:40,433.433 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:28:40,463.463 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:28:40,465.465 INFO    ] No update needed
[2026-06-27 01:28:40,467.467 INFO    ] Checking for camera pi updates...
[2026-06-27 01:28:40,486.486 INFO    ] 200
[2026-06-27 01:28:40,488.488 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:28:40,514.514 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:28:40,557.557 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:28:40,558.558 INFO    ] No camera update needed
[2026-06-27 01:28:40,560.560 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:28:40,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:28:40,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:28:40,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:28:42,607.607 INFO    ] ================================================
[2026-06-27 01:28:42,624.624 INFO    ] Launching Daemon at Sat Jun 27 01:28:42 IST 2026
[2026-06-27 01:28:42,634.634 INFO    ] ================================================
[2026-06-27 01:28:43,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:28:43
[2026-06-27 01:28:43,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:28:43,521.521 INFO    ] Initializing speech engine...
[2026-06-27 01:28:43,525.525 INFO    ] 2026-06-27 01:28:43
[2026-06-27 01:28:43,734.734 INFO    ] 2026-06-27 01:28:43
[2026-06-27 01:28:43,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:28:43,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:28:43,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:28:44,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:28:44,156.156 INFO    ] time= 27/06/2026 01:28:44
[2026-06-27 01:28:44,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:28:44,184.184 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:28:44,251.251 INFO    ] No existing commands found in stream
[2026-06-27 01:28:49,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:28:49,269.269 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-27 01:28:50,849.849 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 01:28:50,851.851 INFO    ] Checking for system updates...
[2026-06-27 01:28:50,872.872 INFO    ] 200
[2026-06-27 01:28:50,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:28:50,905.905 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:28:50,906.906 INFO    ] No update needed
[2026-06-27 01:28:50,907.907 INFO    ] Checking for camera pi updates...
[2026-06-27 01:28:50,927.927 INFO    ] 200
[2026-06-27 01:28:50,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:28:50,952.952 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:28:50,994.994 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:28:50,995.995 INFO    ] No camera update needed
[2026-06-27 01:28:50,996.996 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:28:50,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:28:51,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:28:51,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:28:53,044.044 INFO    ] ================================================
[2026-06-27 01:28:53,060.060 INFO    ] Launching Daemon at Sat Jun 27 01:28:53 IST 2026
[2026-06-27 01:28:53,071.071 INFO    ] ================================================
[2026-06-27 01:28:53,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:28:53
[2026-06-27 01:28:53,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:28:53,903.903 INFO    ] Initializing speech engine...
[2026-06-27 01:28:53,909.909 INFO    ] 2026-06-27 01:28:53
[2026-06-27 01:28:54,111.111 INFO    ] 2026-06-27 01:28:54
[2026-06-27 01:28:54,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:28:54,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:28:54,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:28:54,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:28:54,528.528 INFO    ] time= 27/06/2026 01:28:54
[2026-06-27 01:28:54,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:28:54,558.558 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:28:54,624.624 INFO    ] No existing commands found in stream
[2026-06-27 01:28:59,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:28:59,641.641 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-27 01:29:01,098.098 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:29:01,100.100 INFO    ] Checking for system updates...
[2026-06-27 01:29:01,148.148 INFO    ] 200
[2026-06-27 01:29:01,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:29:01,225.225 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:29:01,229.229 INFO    ] No update needed
[2026-06-27 01:29:01,233.233 INFO    ] Checking for camera pi updates...
[2026-06-27 01:29:01,270.270 INFO    ] 200
[2026-06-27 01:29:01,272.272 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:29:01,314.314 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:29:01,368.368 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:29:01,371.371 INFO    ] No camera update needed
[2026-06-27 01:29:01,373.373 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:29:01,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:29:01,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:29:01,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:29:03,427.427 INFO    ] ================================================
[2026-06-27 01:29:03,442.442 INFO    ] Launching Daemon at Sat Jun 27 01:29:03 IST 2026
[2026-06-27 01:29:03,454.454 INFO    ] ================================================
[2026-06-27 01:29:03,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:29:03
[2026-06-27 01:29:04,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:29:04,267.267 INFO    ] Initializing speech engine...
[2026-06-27 01:29:04,276.276 INFO    ] 2026-06-27 01:29:04
[2026-06-27 01:29:04,463.463 INFO    ] 2026-06-27 01:29:04
[2026-06-27 01:29:04,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:29:04,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:29:04,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:29:04,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:29:04,923.923 INFO    ] time= 27/06/2026 01:29:04
[2026-06-27 01:29:04,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:29:04,966.966 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:29:05,032.032 INFO    ] No existing commands found in stream
[2026-06-27 01:29:10,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:29:10,046.046 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-27 01:29:14,192.192 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 01:29:14,194.194 INFO    ] Checking for system updates...
[2026-06-27 01:29:14,216.216 INFO    ] 200
[2026-06-27 01:29:14,218.218 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:29:14,251.251 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:29:14,253.253 INFO    ] No update needed
[2026-06-27 01:29:14,255.255 INFO    ] Checking for camera pi updates...
[2026-06-27 01:29:14,275.275 INFO    ] 200
[2026-06-27 01:29:14,276.276 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:29:14,300.300 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:29:14,344.344 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:29:14,345.345 INFO    ] No camera update needed
[2026-06-27 01:29:14,347.347 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:29:14,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:29:14,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:29:14,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:29:16,393.393 INFO    ] ================================================
[2026-06-27 01:29:16,409.409 INFO    ] Launching Daemon at Sat Jun 27 01:29:16 IST 2026
[2026-06-27 01:29:16,420.420 INFO    ] ================================================
[2026-06-27 01:29:16,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:29:16
[2026-06-27 01:29:17,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:29:17,202.202 INFO    ] Initializing speech engine...
[2026-06-27 01:29:17,206.206 INFO    ] 2026-06-27 01:29:17
[2026-06-27 01:29:17,421.421 INFO    ] 2026-06-27 01:29:17
[2026-06-27 01:29:17,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:29:17,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:29:17,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:29:17,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:29:17,839.839 INFO    ] time= 27/06/2026 01:29:17
[2026-06-27 01:29:17,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:29:17,867.867 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:29:17,934.934 INFO    ] No existing commands found in stream
[2026-06-27 01:29:22,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:29:22,950.950 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-27 01:29:23,630.630 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 01:29:23,631.631 INFO    ] Checking for system updates...
[2026-06-27 01:29:23,652.652 INFO    ] 200
[2026-06-27 01:29:23,654.654 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:29:23,684.684 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:29:23,685.685 INFO    ] No update needed
[2026-06-27 01:29:23,687.687 INFO    ] Checking for camera pi updates...
[2026-06-27 01:29:23,706.706 INFO    ] 200
[2026-06-27 01:29:23,707.707 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:29:23,730.730 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:29:23,869.869 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:29:23,871.871 INFO    ] No camera update needed
[2026-06-27 01:29:23,872.872 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:29:23,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:29:23,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:29:23,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:29:25,921.921 INFO    ] ================================================
[2026-06-27 01:29:25,937.937 INFO    ] Launching Daemon at Sat Jun 27 01:29:25 IST 2026
[2026-06-27 01:29:25,948.948 INFO    ] ================================================
[2026-06-27 01:29:26,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:29:26
[2026-06-27 01:29:26,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:29:26,734.734 INFO    ] Initializing speech engine...
[2026-06-27 01:29:26,746.746 INFO    ] 2026-06-27 01:29:26
[2026-06-27 01:29:26,953.953 INFO    ] 2026-06-27 01:29:26
[2026-06-27 01:29:26,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:29:27,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:29:27,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:29:27,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:29:27,371.371 INFO    ] time= 27/06/2026 01:29:27
[2026-06-27 01:29:27,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:29:27,400.400 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:29:27,467.467 INFO    ] No existing commands found in stream
[2026-06-27 01:29:32,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:29:32,478.478 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-27 01:29:32,946.946 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:29:32,947.947 INFO    ] Checking for system updates...
[2026-06-27 01:29:32,967.967 INFO    ] 200
[2026-06-27 01:29:32,969.969 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:29:32,999.999 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:29:33,000.000 INFO    ] No update needed
[2026-06-27 01:29:33,001.001 INFO    ] Checking for camera pi updates...
[2026-06-27 01:29:33,022.022 INFO    ] 200
[2026-06-27 01:29:33,023.023 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:29:33,049.049 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:29:33,077.077 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:29:33,078.078 INFO    ] No camera update needed
[2026-06-27 01:29:33,079.079 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:29:33,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:29:33,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:29:33,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:29:35,131.131 INFO    ] ================================================
[2026-06-27 01:29:35,147.147 INFO    ] Launching Daemon at Sat Jun 27 01:29:35 IST 2026
[2026-06-27 01:29:35,157.157 INFO    ] ================================================
[2026-06-27 01:29:35,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:29:35
[2026-06-27 01:29:35,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:29:35,924.924 INFO    ] Initializing speech engine...
[2026-06-27 01:29:35,933.933 INFO    ] 2026-06-27 01:29:35
[2026-06-27 01:29:36,147.147 INFO    ] 2026-06-27 01:29:36
[2026-06-27 01:29:36,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:29:36,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:29:36,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:29:36,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:29:36,572.572 INFO    ] time= 27/06/2026 01:29:36
[2026-06-27 01:29:36,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:29:36,603.603 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:29:36,671.671 INFO    ] No existing commands found in stream
[2026-06-27 01:29:41,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:29:41,688.688 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-27 01:29:43,456.456 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 01:29:43,457.457 INFO    ] Checking for system updates...
[2026-06-27 01:29:43,478.478 INFO    ] 200
[2026-06-27 01:29:43,479.479 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:29:43,510.510 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:29:43,512.512 INFO    ] No update needed
[2026-06-27 01:29:43,513.513 INFO    ] Checking for camera pi updates...
[2026-06-27 01:29:43,532.532 INFO    ] 200
[2026-06-27 01:29:43,534.534 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:29:43,557.557 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:29:43,601.601 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:29:43,602.602 INFO    ] No camera update needed
[2026-06-27 01:29:43,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:29:43,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:29:43,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:29:43,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:29:45,649.649 INFO    ] ================================================
[2026-06-27 01:29:45,665.665 INFO    ] Launching Daemon at Sat Jun 27 01:29:45 IST 2026
[2026-06-27 01:29:45,682.682 INFO    ] ================================================
[2026-06-27 01:29:46,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:29:46
[2026-06-27 01:29:46,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:29:46,522.522 INFO    ] Initializing speech engine...
[2026-06-27 01:29:46,527.527 INFO    ] 2026-06-27 01:29:46
[2026-06-27 01:29:46,735.735 INFO    ] 2026-06-27 01:29:46
[2026-06-27 01:29:46,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:29:46,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:29:46,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:29:47,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:29:47,155.155 INFO    ] time= 27/06/2026 01:29:47
[2026-06-27 01:29:47,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:29:47,185.185 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:29:47,252.252 INFO    ] No existing commands found in stream
[2026-06-27 01:29:52,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:29:52,270.270 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-27 01:29:53,245.245 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 01:29:53,247.247 INFO    ] Checking for system updates...
[2026-06-27 01:29:53,268.268 INFO    ] 200
[2026-06-27 01:29:53,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:29:53,300.300 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:29:53,301.301 INFO    ] No update needed
[2026-06-27 01:29:53,303.303 INFO    ] Checking for camera pi updates...
[2026-06-27 01:29:53,325.325 INFO    ] 200
[2026-06-27 01:29:53,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:29:53,349.349 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:29:53,415.415 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:29:53,416.416 INFO    ] No camera update needed
[2026-06-27 01:29:53,418.418 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:29:53,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:29:53,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:29:53,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:29:55,465.465 INFO    ] ================================================
[2026-06-27 01:29:55,480.480 INFO    ] Launching Daemon at Sat Jun 27 01:29:55 IST 2026
[2026-06-27 01:29:55,490.490 INFO    ] ================================================
[2026-06-27 01:29:55,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:29:55
[2026-06-27 01:29:56,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:29:56,321.321 INFO    ] Initializing speech engine...
[2026-06-27 01:29:56,326.326 INFO    ] 2026-06-27 01:29:56
[2026-06-27 01:29:56,530.530 INFO    ] 2026-06-27 01:29:56
[2026-06-27 01:29:56,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:29:56,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:29:56,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:29:56,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:29:56,945.945 INFO    ] time= 27/06/2026 01:29:56
[2026-06-27 01:29:56,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:29:56,978.978 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:29:57,043.043 INFO    ] No existing commands found in stream
[2026-06-27 01:30:02,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:30:02,056.056 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-27 01:30:09,129.129 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 01:30:09,131.131 INFO    ] Checking for system updates...
[2026-06-27 01:30:09,157.157 INFO    ] 200
[2026-06-27 01:30:09,158.158 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:30:09,190.190 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:30:09,191.191 INFO    ] No update needed
[2026-06-27 01:30:09,192.192 INFO    ] Checking for camera pi updates...
[2026-06-27 01:30:09,214.214 INFO    ] 200
[2026-06-27 01:30:09,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:30:09,239.239 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:30:09,289.289 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:30:09,291.291 INFO    ] No camera update needed
[2026-06-27 01:30:09,292.292 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:30:09,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:30:09,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:30:09,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:30:11,341.341 INFO    ] ================================================
[2026-06-27 01:30:11,356.356 INFO    ] Launching Daemon at Sat Jun 27 01:30:11 IST 2026
[2026-06-27 01:30:11,366.366 INFO    ] ================================================
[2026-06-27 01:30:11,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:30:11
[2026-06-27 01:30:12,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:30:12,168.168 INFO    ] Initializing speech engine...
[2026-06-27 01:30:12,177.177 INFO    ] 2026-06-27 01:30:12
[2026-06-27 01:30:12,389.389 INFO    ] 2026-06-27 01:30:12
[2026-06-27 01:30:12,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:30:12,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:30:12,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:30:12,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:30:12,814.814 INFO    ] time= 27/06/2026 01:30:12
[2026-06-27 01:30:12,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:30:12,846.846 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:30:12,911.911 INFO    ] No existing commands found in stream
[2026-06-27 01:30:17,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:30:17,925.925 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-27 01:30:19,440.440 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 01:30:19,441.441 INFO    ] Checking for system updates...
[2026-06-27 01:30:19,462.462 INFO    ] 200
[2026-06-27 01:30:19,463.463 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:30:19,497.497 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:30:19,498.498 INFO    ] No update needed
[2026-06-27 01:30:19,499.499 INFO    ] Checking for camera pi updates...
[2026-06-27 01:30:19,520.520 INFO    ] 200
[2026-06-27 01:30:19,521.521 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:30:19,547.547 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:30:19,597.597 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:30:19,598.598 INFO    ] No camera update needed
[2026-06-27 01:30:19,599.599 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:30:19,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:30:19,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:30:19,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:30:21,646.646 INFO    ] ================================================
[2026-06-27 01:30:21,662.662 INFO    ] Launching Daemon at Sat Jun 27 01:30:21 IST 2026
[2026-06-27 01:30:21,674.674 INFO    ] ================================================
[2026-06-27 01:30:22,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:30:22
[2026-06-27 01:30:22,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:30:22,562.562 INFO    ] Initializing speech engine...
[2026-06-27 01:30:22,568.568 INFO    ] 2026-06-27 01:30:22
[2026-06-27 01:30:22,777.777 INFO    ] 2026-06-27 01:30:22
[2026-06-27 01:30:22,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:30:22,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:30:23,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:30:23,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:30:23,198.198 INFO    ] time= 27/06/2026 01:30:23
[2026-06-27 01:30:23,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:30:23,228.228 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:30:23,295.295 INFO    ] No existing commands found in stream
[2026-06-27 01:30:28,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:30:28,308.308 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-27 01:30:30,343.343 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:30:30,345.345 INFO    ] Checking for system updates...
[2026-06-27 01:30:30,366.366 INFO    ] 200
[2026-06-27 01:30:30,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:30:30,398.398 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:30:30,399.399 INFO    ] No update needed
[2026-06-27 01:30:30,401.401 INFO    ] Checking for camera pi updates...
[2026-06-27 01:30:30,421.421 INFO    ] 200
[2026-06-27 01:30:30,422.422 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:30:30,447.447 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:30:30,488.488 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:30:30,489.489 INFO    ] No camera update needed
[2026-06-27 01:30:30,491.491 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:30:30,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:30:30,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:30:30,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:30:32,537.537 INFO    ] ================================================
[2026-06-27 01:30:32,552.552 INFO    ] Launching Daemon at Sat Jun 27 01:30:32 IST 2026
[2026-06-27 01:30:32,564.564 INFO    ] ================================================
[2026-06-27 01:30:32,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:30:32
[2026-06-27 01:30:33,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:30:33,452.452 INFO    ] Initializing speech engine...
[2026-06-27 01:30:33,456.456 INFO    ] 2026-06-27 01:30:33
[2026-06-27 01:30:33,643.643 INFO    ] 2026-06-27 01:30:33
[2026-06-27 01:30:33,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:30:33,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:30:33,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:30:34,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:30:34,116.116 INFO    ] time= 27/06/2026 01:30:34
[2026-06-27 01:30:34,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:30:34,157.157 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:30:34,232.232 INFO    ] No existing commands found in stream
[2026-06-27 01:30:39,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:30:39,246.246 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-27 01:30:43,613.613 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:30:43,615.615 INFO    ] Checking for system updates...
[2026-06-27 01:30:43,636.636 INFO    ] 200
[2026-06-27 01:30:43,637.637 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:30:43,670.670 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:30:43,671.671 INFO    ] No update needed
[2026-06-27 01:30:43,672.672 INFO    ] Checking for camera pi updates...
[2026-06-27 01:30:43,694.694 INFO    ] 200
[2026-06-27 01:30:43,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:30:43,721.721 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:30:43,764.764 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:30:43,765.765 INFO    ] No camera update needed
[2026-06-27 01:30:43,767.767 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:30:43,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:30:43,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:30:43,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:30:45,814.814 INFO    ] ================================================
[2026-06-27 01:30:45,830.830 INFO    ] Launching Daemon at Sat Jun 27 01:30:45 IST 2026
[2026-06-27 01:30:45,842.842 INFO    ] ================================================
[2026-06-27 01:30:46,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:30:46
[2026-06-27 01:30:46,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:30:46,716.716 INFO    ] Initializing speech engine...
[2026-06-27 01:30:46,720.720 INFO    ] 2026-06-27 01:30:46
[2026-06-27 01:30:46,929.929 INFO    ] 2026-06-27 01:30:46
[2026-06-27 01:30:46,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:30:47,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:30:47,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:30:47,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:30:47,346.346 INFO    ] time= 27/06/2026 01:30:47
[2026-06-27 01:30:47,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:30:47,386.386 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:30:47,454.454 INFO    ] No existing commands found in stream
[2026-06-27 01:30:52,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:30:52,482.482 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-27 01:30:54,422.422 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 01:30:54,424.424 INFO    ] Checking for system updates...
[2026-06-27 01:30:54,447.447 INFO    ] 200
[2026-06-27 01:30:54,448.448 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:30:54,481.481 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:30:54,483.483 INFO    ] No update needed
[2026-06-27 01:30:54,484.484 INFO    ] Checking for camera pi updates...
[2026-06-27 01:30:54,504.504 INFO    ] 200
[2026-06-27 01:30:54,506.506 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:30:54,529.529 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:30:54,557.557 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:30:54,558.558 INFO    ] No camera update needed
[2026-06-27 01:30:54,560.560 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:30:54,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:30:54,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:30:54,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:30:56,606.606 INFO    ] ================================================
[2026-06-27 01:30:56,622.622 INFO    ] Launching Daemon at Sat Jun 27 01:30:56 IST 2026
[2026-06-27 01:30:56,634.634 INFO    ] ================================================
[2026-06-27 01:30:56,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:30:56
[2026-06-27 01:30:57,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:30:57,437.437 INFO    ] Initializing speech engine...
[2026-06-27 01:30:57,445.445 INFO    ] 2026-06-27 01:30:57
[2026-06-27 01:30:57,657.657 INFO    ] 2026-06-27 01:30:57
[2026-06-27 01:30:57,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:30:57,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:30:57,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:30:58,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:30:58,067.067 INFO    ] time= 27/06/2026 01:30:58
[2026-06-27 01:30:58,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:30:58,100.100 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:30:58,196.196 INFO    ] No existing commands found in stream
[2026-06-27 01:31:03,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:31:03,205.205 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-27 01:31:05,770.770 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 01:31:05,771.771 INFO    ] Checking for system updates...
[2026-06-27 01:31:05,793.793 INFO    ] 200
[2026-06-27 01:31:05,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:31:05,825.825 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:31:05,826.826 INFO    ] No update needed
[2026-06-27 01:31:05,828.828 INFO    ] Checking for camera pi updates...
[2026-06-27 01:31:05,847.847 INFO    ] 200
[2026-06-27 01:31:05,849.849 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:31:05,875.875 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:31:05,902.902 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:31:05,904.904 INFO    ] No camera update needed
[2026-06-27 01:31:05,905.905 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:31:05,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:31:05,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:31:05,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:31:07,953.953 INFO    ] ================================================
[2026-06-27 01:31:07,969.969 INFO    ] Launching Daemon at Sat Jun 27 01:31:07 IST 2026
[2026-06-27 01:31:07,980.980 INFO    ] ================================================
[2026-06-27 01:31:08,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:31:08
[2026-06-27 01:31:08,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:31:08,799.799 INFO    ] Initializing speech engine...
[2026-06-27 01:31:08,804.804 INFO    ] 2026-06-27 01:31:08
[2026-06-27 01:31:09,022.022 INFO    ] 2026-06-27 01:31:08
[2026-06-27 01:31:09,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:31:09,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:31:09,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:31:09,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:31:09,467.467 INFO    ] time= 27/06/2026 01:31:09
[2026-06-27 01:31:09,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:31:09,498.498 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:31:09,564.564 INFO    ] No existing commands found in stream
[2026-06-27 01:31:14,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:31:14,577.577 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-27 01:31:17,774.774 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 01:31:17,776.776 INFO    ] Checking for system updates...
[2026-06-27 01:31:17,798.798 INFO    ] 200
[2026-06-27 01:31:17,799.799 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:31:17,829.829 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:31:17,831.831 INFO    ] No update needed
[2026-06-27 01:31:17,832.832 INFO    ] Checking for camera pi updates...
[2026-06-27 01:31:17,853.853 INFO    ] 200
[2026-06-27 01:31:17,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:31:17,878.878 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:31:17,920.920 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:31:17,921.921 INFO    ] No camera update needed
[2026-06-27 01:31:17,923.923 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:31:17,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:31:17,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:31:17,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:31:19,970.970 INFO    ] ================================================
[2026-06-27 01:31:19,986.986 INFO    ] Launching Daemon at Sat Jun 27 01:31:19 IST 2026
[2026-06-27 01:31:20,997.997 INFO    ] ================================================
[2026-06-27 01:31:20,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:31:20
[2026-06-27 01:31:20,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:31:20,821.821 INFO    ] Initializing speech engine...
[2026-06-27 01:31:20,826.826 INFO    ] 2026-06-27 01:31:20
[2026-06-27 01:31:21,030.030 INFO    ] 2026-06-27 01:31:21
[2026-06-27 01:31:21,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:31:21,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:31:21,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:31:21,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:31:21,452.452 INFO    ] time= 27/06/2026 01:31:21
[2026-06-27 01:31:21,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:31:21,480.480 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:31:21,552.552 INFO    ] No existing commands found in stream
[2026-06-27 01:31:26,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:31:26,564.564 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-27 01:31:30,474.474 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 01:31:30,476.476 INFO    ] Checking for system updates...
[2026-06-27 01:31:30,496.496 INFO    ] 200
[2026-06-27 01:31:30,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:31:30,528.528 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:31:30,530.530 INFO    ] No update needed
[2026-06-27 01:31:30,531.531 INFO    ] Checking for camera pi updates...
[2026-06-27 01:31:30,550.550 INFO    ] 200
[2026-06-27 01:31:30,552.552 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:31:30,575.575 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:31:30,728.728 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:31:30,730.730 INFO    ] No camera update needed
[2026-06-27 01:31:30,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:31:30,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:31:30,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:31:30,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:31:32,768.768 INFO    ] ================================================
[2026-06-27 01:31:32,778.778 INFO    ] Launching Daemon at Sat Jun 27 01:31:32 IST 2026
[2026-06-27 01:31:32,787.787 INFO    ] ================================================
[2026-06-27 01:31:33,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:31:33
[2026-06-27 01:31:33,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:31:33,578.578 INFO    ] Initializing speech engine...
[2026-06-27 01:31:33,587.587 INFO    ] 2026-06-27 01:31:33
[2026-06-27 01:31:33,802.802 INFO    ] 2026-06-27 01:31:33
[2026-06-27 01:31:33,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:31:34,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:31:34,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:31:34,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:31:34,225.225 INFO    ] time= 27/06/2026 01:31:34
[2026-06-27 01:31:34,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:31:34,259.259 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:31:34,327.327 INFO    ] No existing commands found in stream
[2026-06-27 01:31:39,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:31:39,344.344 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-27 01:31:43,170.170 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 01:31:43,171.171 INFO    ] Checking for system updates...
[2026-06-27 01:31:43,192.192 INFO    ] 200
[2026-06-27 01:31:43,193.193 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:31:43,224.224 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:31:43,225.225 INFO    ] No update needed
[2026-06-27 01:31:43,226.226 INFO    ] Checking for camera pi updates...
[2026-06-27 01:31:43,246.246 INFO    ] 200
[2026-06-27 01:31:43,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:31:43,271.271 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:31:43,312.312 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:31:43,313.313 INFO    ] No camera update needed
[2026-06-27 01:31:43,315.315 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:31:43,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:31:43,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:31:43,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:31:45,360.360 INFO    ] ================================================
[2026-06-27 01:31:45,376.376 INFO    ] Launching Daemon at Sat Jun 27 01:31:45 IST 2026
[2026-06-27 01:31:45,387.387 INFO    ] ================================================
[2026-06-27 01:31:45,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:31:45
[2026-06-27 01:31:46,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:31:46,169.169 INFO    ] Initializing speech engine...
[2026-06-27 01:31:46,179.179 INFO    ] 2026-06-27 01:31:46
[2026-06-27 01:31:46,384.384 INFO    ] 2026-06-27 01:31:46
[2026-06-27 01:31:46,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:31:46,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:31:46,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:31:46,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:31:46,794.794 INFO    ] time= 27/06/2026 01:31:46
[2026-06-27 01:31:46,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:31:46,832.832 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:31:46,900.900 INFO    ] No existing commands found in stream
[2026-06-27 01:31:51,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:31:51,911.911 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-27 01:31:55,120.120 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:31:55,121.121 INFO    ] Checking for system updates...
[2026-06-27 01:31:55,143.143 INFO    ] 200
[2026-06-27 01:31:55,144.144 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:31:55,176.176 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:31:55,178.178 INFO    ] No update needed
[2026-06-27 01:31:55,179.179 INFO    ] Checking for camera pi updates...
[2026-06-27 01:31:55,201.201 INFO    ] 200
[2026-06-27 01:31:55,202.202 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:31:55,226.226 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:31:55,253.253 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:31:55,255.255 INFO    ] No camera update needed
[2026-06-27 01:31:55,256.256 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:31:55,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:31:55,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:31:55,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:31:57,302.302 INFO    ] ================================================
[2026-06-27 01:31:57,318.318 INFO    ] Launching Daemon at Sat Jun 27 01:31:57 IST 2026
[2026-06-27 01:31:57,329.329 INFO    ] ================================================
[2026-06-27 01:31:57,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:31:57
[2026-06-27 01:31:57,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:31:58,142.142 INFO    ] Initializing speech engine...
[2026-06-27 01:31:58,147.147 INFO    ] 2026-06-27 01:31:58
[2026-06-27 01:31:58,353.353 INFO    ] 2026-06-27 01:31:58
[2026-06-27 01:31:58,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:31:58,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:31:58,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:32:00,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:32:00,316.316 INFO    ] time= 27/06/2026 01:32:00
[2026-06-27 01:32:00,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:32:00,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:32:00,374.374 INFO    ] No existing commands found in stream
[2026-06-27 01:32:05,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:32:05,386.386 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-27 01:32:07,809.809 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 01:32:07,810.810 INFO    ] Checking for system updates...
[2026-06-27 01:32:07,831.831 INFO    ] 200
[2026-06-27 01:32:07,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:32:07,864.864 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:32:07,866.866 INFO    ] No update needed
[2026-06-27 01:32:07,867.867 INFO    ] Checking for camera pi updates...
[2026-06-27 01:32:07,887.887 INFO    ] 200
[2026-06-27 01:32:07,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:32:07,911.911 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:32:07,956.956 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:32:07,958.958 INFO    ] No camera update needed
[2026-06-27 01:32:07,959.959 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:32:07,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:32:07,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:32:07,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:32:10,001.001 INFO    ] ================================================
[2026-06-27 01:32:10,010.010 INFO    ] Launching Daemon at Sat Jun 27 01:32:10 IST 2026
[2026-06-27 01:32:10,017.017 INFO    ] ================================================
[2026-06-27 01:32:10,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:32:10
[2026-06-27 01:32:10,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:32:10,866.866 INFO    ] Initializing speech engine...
[2026-06-27 01:32:10,872.872 INFO    ] 2026-06-27 01:32:10
[2026-06-27 01:32:11,078.078 INFO    ] 2026-06-27 01:32:11
[2026-06-27 01:32:11,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:32:11,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:32:11,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:32:11,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:32:11,426.426 INFO    ] time= 27/06/2026 01:32:11
[2026-06-27 01:32:11,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:32:11,504.504 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:32:11,596.596 INFO    ] No existing commands found in stream
[2026-06-27 01:32:16,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:32:16,613.613 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-27 01:32:18,517.517 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 01:32:18,519.519 INFO    ] Checking for system updates...
[2026-06-27 01:32:18,540.540 INFO    ] 200
[2026-06-27 01:32:18,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:32:18,571.571 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:32:18,572.572 INFO    ] No update needed
[2026-06-27 01:32:18,574.574 INFO    ] Checking for camera pi updates...
[2026-06-27 01:32:18,593.593 INFO    ] 200
[2026-06-27 01:32:18,595.595 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:32:18,618.618 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:32:18,659.659 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:32:18,661.661 INFO    ] No camera update needed
[2026-06-27 01:32:18,662.662 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:32:18,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:32:18,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:32:18,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:32:20,707.707 INFO    ] ================================================
[2026-06-27 01:32:20,722.722 INFO    ] Launching Daemon at Sat Jun 27 01:32:20 IST 2026
[2026-06-27 01:32:20,734.734 INFO    ] ================================================
[2026-06-27 01:32:21,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:32:21
[2026-06-27 01:32:21,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:32:21,570.570 INFO    ] Initializing speech engine...
[2026-06-27 01:32:21,580.580 INFO    ] 2026-06-27 01:32:21
[2026-06-27 01:32:21,788.788 INFO    ] 2026-06-27 01:32:21
[2026-06-27 01:32:21,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:32:21,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:32:22,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:32:22,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:32:22,200.200 INFO    ] time= 27/06/2026 01:32:22
[2026-06-27 01:32:22,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:32:22,234.234 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:32:22,306.306 INFO    ] No existing commands found in stream
[2026-06-27 01:32:27,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:32:27,318.318 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-27 01:32:30,473.473 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 01:32:30,475.475 INFO    ] Checking for system updates...
[2026-06-27 01:32:30,497.497 INFO    ] 200
[2026-06-27 01:32:30,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:32:30,529.529 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:32:30,530.530 INFO    ] No update needed
[2026-06-27 01:32:30,532.532 INFO    ] Checking for camera pi updates...
[2026-06-27 01:32:30,551.551 INFO    ] 200
[2026-06-27 01:32:30,552.552 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:32:30,579.579 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:32:30,622.622 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:32:30,623.623 INFO    ] No camera update needed
[2026-06-27 01:32:30,624.624 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:32:30,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:32:30,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:32:30,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:32:32,655.655 INFO    ] ================================================
[2026-06-27 01:32:32,664.664 INFO    ] Launching Daemon at Sat Jun 27 01:32:32 IST 2026
[2026-06-27 01:32:32,670.670 INFO    ] ================================================
[2026-06-27 01:32:33,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:32:33
[2026-06-27 01:32:33,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:32:33,483.483 INFO    ] Initializing speech engine...
[2026-06-27 01:32:33,488.488 INFO    ] 2026-06-27 01:32:33
[2026-06-27 01:32:33,694.694 INFO    ] 2026-06-27 01:32:33
[2026-06-27 01:32:33,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:32:33,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:32:33,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:32:34,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:32:34,093.093 INFO    ] time= 27/06/2026 01:32:34
[2026-06-27 01:32:34,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:32:34,137.137 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:32:34,207.207 INFO    ] No existing commands found in stream
[2026-06-27 01:32:39,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:32:39,219.219 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-27 01:32:43,418.418 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 01:32:43,419.419 INFO    ] Checking for system updates...
[2026-06-27 01:32:43,441.441 INFO    ] 200
[2026-06-27 01:32:43,442.442 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:32:43,473.473 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:32:43,474.474 INFO    ] No update needed
[2026-06-27 01:32:43,476.476 INFO    ] Checking for camera pi updates...
[2026-06-27 01:32:43,495.495 INFO    ] 200
[2026-06-27 01:32:43,496.496 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:32:43,520.520 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:32:43,561.561 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:32:43,562.562 INFO    ] No camera update needed
[2026-06-27 01:32:43,564.564 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:32:43,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:32:43,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:32:43,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:32:45,609.609 INFO    ] ================================================
[2026-06-27 01:32:45,625.625 INFO    ] Launching Daemon at Sat Jun 27 01:32:45 IST 2026
[2026-06-27 01:32:45,636.636 INFO    ] ================================================
[2026-06-27 01:32:45,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:32:45
[2026-06-27 01:32:46,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:32:46,454.454 INFO    ] Initializing speech engine...
[2026-06-27 01:32:46,459.459 INFO    ] 2026-06-27 01:32:46
[2026-06-27 01:32:46,665.665 INFO    ] 2026-06-27 01:32:46
[2026-06-27 01:32:46,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:32:46,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:32:46,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:32:47,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:32:47,085.085 INFO    ] time= 27/06/2026 01:32:47
[2026-06-27 01:32:47,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:32:47,119.119 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:32:47,186.186 INFO    ] No existing commands found in stream
[2026-06-27 01:32:52,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:32:52,204.204 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-27 01:32:54,150.150 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 01:32:54,151.151 INFO    ] Checking for system updates...
[2026-06-27 01:32:54,173.173 INFO    ] 200
[2026-06-27 01:32:54,175.175 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:32:54,206.206 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:32:54,207.207 INFO    ] No update needed
[2026-06-27 01:32:54,208.208 INFO    ] Checking for camera pi updates...
[2026-06-27 01:32:54,228.228 INFO    ] 200
[2026-06-27 01:32:54,229.229 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:32:54,254.254 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:32:54,286.286 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:32:54,287.287 INFO    ] No camera update needed
[2026-06-27 01:32:54,289.289 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:32:54,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:32:54,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:32:54,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:32:56,337.337 INFO    ] ================================================
[2026-06-27 01:32:56,353.353 INFO    ] Launching Daemon at Sat Jun 27 01:32:56 IST 2026
[2026-06-27 01:32:56,364.364 INFO    ] ================================================
[2026-06-27 01:32:56,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:32:56
[2026-06-27 01:32:57,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:32:57,200.200 INFO    ] Initializing speech engine...
[2026-06-27 01:32:57,214.214 INFO    ] 2026-06-27 01:32:57
[2026-06-27 01:32:57,423.423 INFO    ] 2026-06-27 01:32:57
[2026-06-27 01:32:57,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:32:57,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:32:57,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:32:57,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:32:57,820.820 INFO    ] time= 27/06/2026 01:32:57
[2026-06-27 01:32:57,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:32:57,869.869 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:32:57,940.940 INFO    ] No existing commands found in stream
[2026-06-27 01:33:02,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:33:02,953.953 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-27 01:33:04,916.916 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:33:04,918.918 INFO    ] Checking for system updates...
[2026-06-27 01:33:04,940.940 INFO    ] 200
[2026-06-27 01:33:04,941.941 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:33:04,972.972 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:33:04,974.974 INFO    ] No update needed
[2026-06-27 01:33:04,975.975 INFO    ] Checking for camera pi updates...
[2026-06-27 01:33:04,997.997 INFO    ] 200
[2026-06-27 01:33:04,998.998 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:33:05,021.021 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:33:05,068.068 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:33:05,069.069 INFO    ] No camera update needed
[2026-06-27 01:33:05,071.071 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:33:05,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:33:05,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:33:05,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:33:07,116.116 INFO    ] ================================================
[2026-06-27 01:33:07,131.131 INFO    ] Launching Daemon at Sat Jun 27 01:33:07 IST 2026
[2026-06-27 01:33:07,142.142 INFO    ] ================================================
[2026-06-27 01:33:07,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:33:07
[2026-06-27 01:33:07,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:33:07,952.952 INFO    ] Initializing speech engine...
[2026-06-27 01:33:07,961.961 INFO    ] 2026-06-27 01:33:07
[2026-06-27 01:33:08,180.180 INFO    ] 2026-06-27 01:33:08
[2026-06-27 01:33:08,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:33:08,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:33:08,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:33:08,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:33:08,602.602 INFO    ] time= 27/06/2026 01:33:08
[2026-06-27 01:33:08,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:33:08,658.658 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:33:08,734.734 INFO    ] No existing commands found in stream
[2026-06-27 01:33:13,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:33:13,746.746 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-27 01:33:15,368.368 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:33:15,370.370 INFO    ] Checking for system updates...
[2026-06-27 01:33:15,394.394 INFO    ] 200
[2026-06-27 01:33:15,396.396 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:33:15,427.427 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:33:15,429.429 INFO    ] No update needed
[2026-06-27 01:33:15,430.430 INFO    ] Checking for camera pi updates...
[2026-06-27 01:33:15,450.450 INFO    ] 200
[2026-06-27 01:33:15,451.451 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:33:15,475.475 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:33:15,521.521 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:33:15,523.523 INFO    ] No camera update needed
[2026-06-27 01:33:15,525.525 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:33:15,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:33:15,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:33:15,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:33:17,572.572 INFO    ] ================================================
[2026-06-27 01:33:17,587.587 INFO    ] Launching Daemon at Sat Jun 27 01:33:17 IST 2026
[2026-06-27 01:33:17,598.598 INFO    ] ================================================
[2026-06-27 01:33:17,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:33:17
[2026-06-27 01:33:18,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:33:18,396.396 INFO    ] Initializing speech engine...
[2026-06-27 01:33:18,409.409 INFO    ] 2026-06-27 01:33:18
[2026-06-27 01:33:18,617.617 INFO    ] 2026-06-27 01:33:18
[2026-06-27 01:33:18,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:33:18,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:33:18,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:33:18,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:33:19,042.042 INFO    ] time= 27/06/2026 01:33:19
[2026-06-27 01:33:19,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:33:19,071.071 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:33:19,138.138 INFO    ] No existing commands found in stream
[2026-06-27 01:33:24,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:33:24,150.150 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-27 01:33:25,433.433 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 01:33:25,435.435 INFO    ] Checking for system updates...
[2026-06-27 01:33:25,456.456 INFO    ] 200
[2026-06-27 01:33:25,457.457 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:33:25,492.492 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:33:25,493.493 INFO    ] No update needed
[2026-06-27 01:33:25,495.495 INFO    ] Checking for camera pi updates...
[2026-06-27 01:33:25,514.514 INFO    ] 200
[2026-06-27 01:33:25,515.515 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:33:25,543.543 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:33:25,585.585 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:33:25,586.586 INFO    ] No camera update needed
[2026-06-27 01:33:25,588.588 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:33:25,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:33:25,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:33:25,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:33:27,633.633 INFO    ] ================================================
[2026-06-27 01:33:27,648.648 INFO    ] Launching Daemon at Sat Jun 27 01:33:27 IST 2026
[2026-06-27 01:33:27,659.659 INFO    ] ================================================
[2026-06-27 01:33:28,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:33:27
[2026-06-27 01:33:28,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:33:28,448.448 INFO    ] Initializing speech engine...
[2026-06-27 01:33:28,453.453 INFO    ] 2026-06-27 01:33:28
[2026-06-27 01:33:28,683.683 INFO    ] 2026-06-27 01:33:28
[2026-06-27 01:33:28,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:33:29,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:33:29,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:33:30,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:33:30,103.103 INFO    ] time= 27/06/2026 01:33:30
[2026-06-27 01:33:30,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:33:30,122.122 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:33:30,191.191 INFO    ] No existing commands found in stream
[2026-06-27 01:33:35,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:33:35,202.202 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-27 01:33:37,751.751 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 01:33:37,753.753 INFO    ] Checking for system updates...
[2026-06-27 01:33:37,773.773 INFO    ] 200
[2026-06-27 01:33:37,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:33:37,806.806 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:33:37,807.807 INFO    ] No update needed
[2026-06-27 01:33:37,808.808 INFO    ] Checking for camera pi updates...
[2026-06-27 01:33:37,832.832 INFO    ] 200
[2026-06-27 01:33:37,833.833 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:33:37,857.857 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:33:37,996.996 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:33:37,998.998 INFO    ] No camera update needed
[2026-06-27 01:33:37,999.999 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:33:38,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:33:38,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:33:38,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:33:40,053.053 INFO    ] ================================================
[2026-06-27 01:33:40,068.068 INFO    ] Launching Daemon at Sat Jun 27 01:33:40 IST 2026
[2026-06-27 01:33:40,079.079 INFO    ] ================================================
[2026-06-27 01:33:40,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:33:40
[2026-06-27 01:33:40,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:33:40,915.915 INFO    ] Initializing speech engine...
[2026-06-27 01:33:40,922.922 INFO    ] 2026-06-27 01:33:40
[2026-06-27 01:33:41,109.109 INFO    ] 2026-06-27 01:33:41
[2026-06-27 01:33:41,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:33:41,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:33:41,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:33:41,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:33:41,558.558 INFO    ] time= 27/06/2026 01:33:41
[2026-06-27 01:33:41,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:33:41,592.592 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:33:41,659.659 INFO    ] No existing commands found in stream
[2026-06-27 01:33:46,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:33:46,672.672 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-27 01:33:48,659.659 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 01:33:48,661.661 INFO    ] Checking for system updates...
[2026-06-27 01:33:48,681.681 INFO    ] 200
[2026-06-27 01:33:48,682.682 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:33:48,713.713 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:33:48,714.714 INFO    ] No update needed
[2026-06-27 01:33:48,716.716 INFO    ] Checking for camera pi updates...
[2026-06-27 01:33:48,735.735 INFO    ] 200
[2026-06-27 01:33:48,736.736 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:33:48,760.760 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:33:48,808.808 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:33:48,809.809 INFO    ] No camera update needed
[2026-06-27 01:33:48,810.810 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:33:48,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:33:48,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:33:48,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:33:50,856.856 INFO    ] ================================================
[2026-06-27 01:33:50,871.871 INFO    ] Launching Daemon at Sat Jun 27 01:33:50 IST 2026
[2026-06-27 01:33:50,882.882 INFO    ] ================================================
[2026-06-27 01:33:51,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:33:51
[2026-06-27 01:33:51,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:33:51,706.706 INFO    ] Initializing speech engine...
[2026-06-27 01:33:51,711.711 INFO    ] 2026-06-27 01:33:51
[2026-06-27 01:33:51,940.940 INFO    ] 2026-06-27 01:33:51
[2026-06-27 01:33:51,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:33:52,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:33:52,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:33:52,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:33:52,366.366 INFO    ] time= 27/06/2026 01:33:52
[2026-06-27 01:33:52,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:33:52,417.417 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:33:52,492.492 INFO    ] No existing commands found in stream
[2026-06-27 01:33:57,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:33:57,504.504 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-27 01:34:00,621.621 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:34:00,623.623 INFO    ] Checking for system updates...
[2026-06-27 01:34:00,644.644 INFO    ] 200
[2026-06-27 01:34:00,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:34:00,676.676 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:34:00,677.677 INFO    ] No update needed
[2026-06-27 01:34:00,679.679 INFO    ] Checking for camera pi updates...
[2026-06-27 01:34:00,700.700 INFO    ] 200
[2026-06-27 01:34:00,701.701 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:34:00,727.727 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:34:00,775.775 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:34:00,776.776 INFO    ] No camera update needed
[2026-06-27 01:34:00,777.777 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:34:00,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:34:00,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:34:00,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:34:02,811.811 INFO    ] ================================================
[2026-06-27 01:34:02,820.820 INFO    ] Launching Daemon at Sat Jun 27 01:34:02 IST 2026
[2026-06-27 01:34:02,826.826 INFO    ] ================================================
[2026-06-27 01:34:03,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:34:03
[2026-06-27 01:34:03,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:34:03,649.649 INFO    ] Initializing speech engine...
[2026-06-27 01:34:03,659.659 INFO    ] 2026-06-27 01:34:03
[2026-06-27 01:34:03,864.864 INFO    ] 2026-06-27 01:34:03
[2026-06-27 01:34:03,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:34:04,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:34:04,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:34:04,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:34:04,278.278 INFO    ] time= 27/06/2026 01:34:04
[2026-06-27 01:34:04,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:34:04,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:34:04,402.402 INFO    ] No existing commands found in stream
[2026-06-27 01:34:09,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:34:09,414.414 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-27 01:34:13,467.467 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 01:34:13,468.468 INFO    ] Checking for system updates...
[2026-06-27 01:34:13,489.489 INFO    ] 200
[2026-06-27 01:34:13,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:34:13,528.528 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:34:13,529.529 INFO    ] No update needed
[2026-06-27 01:34:13,531.531 INFO    ] Checking for camera pi updates...
[2026-06-27 01:34:13,551.551 INFO    ] 200
[2026-06-27 01:34:13,552.552 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:34:13,576.576 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:34:13,620.620 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:34:13,621.621 INFO    ] No camera update needed
[2026-06-27 01:34:13,623.623 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:34:13,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:34:13,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:34:13,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:34:15,669.669 INFO    ] ================================================
[2026-06-27 01:34:15,685.685 INFO    ] Launching Daemon at Sat Jun 27 01:34:15 IST 2026
[2026-06-27 01:34:15,696.696 INFO    ] ================================================
[2026-06-27 01:34:16,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:34:16
[2026-06-27 01:34:16,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:34:16,482.482 INFO    ] Initializing speech engine...
[2026-06-27 01:34:16,486.486 INFO    ] 2026-06-27 01:34:16
[2026-06-27 01:34:16,706.706 INFO    ] 2026-06-27 01:34:16
[2026-06-27 01:34:16,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:34:16,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:34:16,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:34:17,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:34:17,133.133 INFO    ] time= 27/06/2026 01:34:17
[2026-06-27 01:34:17,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:34:17,164.164 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:34:17,232.232 INFO    ] No existing commands found in stream
[2026-06-27 01:34:22,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:34:22,243.243 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-27 01:34:24,062.062 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 01:34:24,063.063 INFO    ] Checking for system updates...
[2026-06-27 01:34:24,084.084 INFO    ] 200
[2026-06-27 01:34:24,086.086 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:34:24,117.117 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:34:24,118.118 INFO    ] No update needed
[2026-06-27 01:34:24,119.119 INFO    ] Checking for camera pi updates...
[2026-06-27 01:34:24,141.141 INFO    ] 200
[2026-06-27 01:34:24,142.142 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:34:24,168.168 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:34:24,220.220 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:34:24,221.221 INFO    ] No camera update needed
[2026-06-27 01:34:24,223.223 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:34:24,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:34:24,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:34:24,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:34:26,270.270 INFO    ] ================================================
[2026-06-27 01:34:26,285.285 INFO    ] Launching Daemon at Sat Jun 27 01:34:26 IST 2026
[2026-06-27 01:34:26,296.296 INFO    ] ================================================
[2026-06-27 01:34:26,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:34:26
[2026-06-27 01:34:26,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:34:27,090.090 INFO    ] Initializing speech engine...
[2026-06-27 01:34:27,101.101 INFO    ] 2026-06-27 01:34:27
[2026-06-27 01:34:27,315.315 INFO    ] 2026-06-27 01:34:27
[2026-06-27 01:34:27,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:34:27,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:34:27,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:34:27,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:34:27,743.743 INFO    ] time= 27/06/2026 01:34:27
[2026-06-27 01:34:27,767.767 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:34:27,772.772 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:34:27,864.864 INFO    ] No existing commands found in stream
[2026-06-27 01:34:32,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:34:32,879.879 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-27 01:34:33,784.784 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:34:33,786.786 INFO    ] Checking for system updates...
[2026-06-27 01:34:33,808.808 INFO    ] 200
[2026-06-27 01:34:33,810.810 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:34:33,843.843 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:34:33,844.844 INFO    ] No update needed
[2026-06-27 01:34:33,846.846 INFO    ] Checking for camera pi updates...
[2026-06-27 01:34:33,866.866 INFO    ] 200
[2026-06-27 01:34:33,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:34:33,891.891 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:34:33,933.933 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:34:33,935.935 INFO    ] No camera update needed
[2026-06-27 01:34:33,936.936 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:34:33,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:34:33,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:34:33,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:34:35,982.982 INFO    ] ================================================
[2026-06-27 01:34:36,997.997 INFO    ] Launching Daemon at Sat Jun 27 01:34:35 IST 2026
[2026-06-27 01:34:36,008.008 INFO    ] ================================================
[2026-06-27 01:34:36,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:34:36
[2026-06-27 01:34:36,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:34:36,890.890 INFO    ] Initializing speech engine...
[2026-06-27 01:34:36,898.898 INFO    ] 2026-06-27 01:34:36
[2026-06-27 01:34:37,099.099 INFO    ] 2026-06-27 01:34:37
[2026-06-27 01:34:37,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:34:37,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:34:37,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:34:37,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:34:37,509.509 INFO    ] time= 27/06/2026 01:34:37
[2026-06-27 01:34:37,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:34:37,547.547 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:34:37,638.638 INFO    ] No existing commands found in stream
[2026-06-27 01:34:42,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:34:42,656.656 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-27 01:34:46,837.837 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 01:34:46,839.839 INFO    ] Checking for system updates...
[2026-06-27 01:34:46,860.860 INFO    ] 200
[2026-06-27 01:34:46,862.862 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:34:46,893.893 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:34:46,894.894 INFO    ] No update needed
[2026-06-27 01:34:46,896.896 INFO    ] Checking for camera pi updates...
[2026-06-27 01:34:46,916.916 INFO    ] 200
[2026-06-27 01:34:46,917.917 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:34:46,941.941 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:34:46,988.988 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:34:46,989.989 INFO    ] No camera update needed
[2026-06-27 01:34:46,991.991 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:34:46,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:34:46,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:34:46,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:34:49,040.040 INFO    ] ================================================
[2026-06-27 01:34:49,055.055 INFO    ] Launching Daemon at Sat Jun 27 01:34:49 IST 2026
[2026-06-27 01:34:49,066.066 INFO    ] ================================================
[2026-06-27 01:34:49,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:34:49
[2026-06-27 01:34:49,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:34:49,882.882 INFO    ] Initializing speech engine...
[2026-06-27 01:34:49,895.895 INFO    ] 2026-06-27 01:34:49
[2026-06-27 01:34:50,108.108 INFO    ] 2026-06-27 01:34:50
[2026-06-27 01:34:50,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:34:50,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:34:50,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:34:50,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:34:50,535.535 INFO    ] time= 27/06/2026 01:34:50
[2026-06-27 01:34:50,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:34:50,563.563 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:34:50,631.631 INFO    ] No existing commands found in stream
[2026-06-27 01:34:55,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:34:55,648.648 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-27 01:34:57,477.477 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 01:34:57,478.478 INFO    ] Checking for system updates...
[2026-06-27 01:34:57,499.499 INFO    ] 200
[2026-06-27 01:34:57,500.500 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:34:57,535.535 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:34:57,537.537 INFO    ] No update needed
[2026-06-27 01:34:57,538.538 INFO    ] Checking for camera pi updates...
[2026-06-27 01:34:57,557.557 INFO    ] 200
[2026-06-27 01:34:57,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:34:57,584.584 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:34:57,637.637 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:34:57,639.639 INFO    ] No camera update needed
[2026-06-27 01:34:57,640.640 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:34:57,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:34:57,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:34:57,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:34:59,686.686 INFO    ] ================================================
[2026-06-27 01:34:59,701.701 INFO    ] Launching Daemon at Sat Jun 27 01:34:59 IST 2026
[2026-06-27 01:34:59,712.712 INFO    ] ================================================
[2026-06-27 01:35:00,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:35:00
[2026-06-27 01:35:00,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:35:00,562.562 INFO    ] Initializing speech engine...
[2026-06-27 01:35:00,570.570 INFO    ] 2026-06-27 01:35:00
[2026-06-27 01:35:00,787.787 INFO    ] 2026-06-27 01:35:00
[2026-06-27 01:35:00,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:35:01,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:35:01,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:35:01,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:35:01,227.227 INFO    ] time= 27/06/2026 01:35:01
[2026-06-27 01:35:01,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:35:01,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:35:01,302.302 INFO    ] No existing commands found in stream
[2026-06-27 01:35:06,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:35:06,330.330 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-27 01:35:08,012.012 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 01:35:08,014.014 INFO    ] Checking for system updates...
[2026-06-27 01:35:08,035.035 INFO    ] 200
[2026-06-27 01:35:08,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:35:08,068.068 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:35:08,070.070 INFO    ] No update needed
[2026-06-27 01:35:08,071.071 INFO    ] Checking for camera pi updates...
[2026-06-27 01:35:08,091.091 INFO    ] 200
[2026-06-27 01:35:08,092.092 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:35:08,116.116 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:35:08,156.156 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:35:08,158.158 INFO    ] No camera update needed
[2026-06-27 01:35:08,159.159 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:35:08,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:35:08,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:35:08,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:35:10,207.207 INFO    ] ================================================
[2026-06-27 01:35:10,222.222 INFO    ] Launching Daemon at Sat Jun 27 01:35:10 IST 2026
[2026-06-27 01:35:10,233.233 INFO    ] ================================================
[2026-06-27 01:35:10,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:35:10
[2026-06-27 01:35:10,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:35:11,034.034 INFO    ] Initializing speech engine...
[2026-06-27 01:35:11,038.038 INFO    ] 2026-06-27 01:35:11
[2026-06-27 01:35:11,254.254 INFO    ] 2026-06-27 01:35:11
[2026-06-27 01:35:11,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:35:11,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:35:11,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:35:13,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:35:13,316.316 INFO    ] time= 27/06/2026 01:35:13
[2026-06-27 01:35:13,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:35:13,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:35:13,381.381 INFO    ] No existing commands found in stream
[2026-06-27 01:35:18,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:35:18,393.393 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-27 01:35:21,840.840 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 01:35:21,842.842 INFO    ] Checking for system updates...
[2026-06-27 01:35:21,863.863 INFO    ] 200
[2026-06-27 01:35:21,865.865 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:35:21,898.898 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:35:21,899.899 INFO    ] No update needed
[2026-06-27 01:35:21,901.901 INFO    ] Checking for camera pi updates...
[2026-06-27 01:35:21,922.922 INFO    ] 200
[2026-06-27 01:35:21,923.923 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:35:21,949.949 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:35:21,979.979 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:35:21,980.980 INFO    ] No camera update needed
[2026-06-27 01:35:21,982.982 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:35:21,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:35:21,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:35:21,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:35:24,030.030 INFO    ] ================================================
[2026-06-27 01:35:24,045.045 INFO    ] Launching Daemon at Sat Jun 27 01:35:24 IST 2026
[2026-06-27 01:35:24,055.055 INFO    ] ================================================
[2026-06-27 01:35:24,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:35:24
[2026-06-27 01:35:24,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:35:24,826.826 INFO    ] Initializing speech engine...
[2026-06-27 01:35:24,833.833 INFO    ] 2026-06-27 01:35:24
[2026-06-27 01:35:25,045.045 INFO    ] 2026-06-27 01:35:25
[2026-06-27 01:35:25,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:35:25,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:35:25,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:35:25,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:35:25,463.463 INFO    ] time= 27/06/2026 01:35:25
[2026-06-27 01:35:25,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:35:25,493.493 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:35:25,560.560 INFO    ] No existing commands found in stream
[2026-06-27 01:35:30,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:35:30,577.577 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-27 01:35:31,462.462 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:35:31,463.463 INFO    ] Checking for system updates...
[2026-06-27 01:35:31,484.484 INFO    ] 200
[2026-06-27 01:35:31,486.486 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:35:31,516.516 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:35:31,517.517 INFO    ] No update needed
[2026-06-27 01:35:31,519.519 INFO    ] Checking for camera pi updates...
[2026-06-27 01:35:31,540.540 INFO    ] 200
[2026-06-27 01:35:31,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:35:31,565.565 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:35:31,600.600 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:35:31,602.602 INFO    ] No camera update needed
[2026-06-27 01:35:31,603.603 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:35:31,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:35:31,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:35:31,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:35:33,643.643 INFO    ] ================================================
[2026-06-27 01:35:33,659.659 INFO    ] Launching Daemon at Sat Jun 27 01:35:33 IST 2026
[2026-06-27 01:35:33,669.669 INFO    ] ================================================
[2026-06-27 01:35:34,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:35:34
[2026-06-27 01:35:34,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:35:34,470.470 INFO    ] Initializing speech engine...
[2026-06-27 01:35:34,482.482 INFO    ] 2026-06-27 01:35:34
[2026-06-27 01:35:34,694.694 INFO    ] 2026-06-27 01:35:34
[2026-06-27 01:35:34,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:35:34,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:35:34,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:35:35,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:35:35,107.107 INFO    ] time= 27/06/2026 01:35:35
[2026-06-27 01:35:35,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:35:35,146.146 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:35:35,213.213 INFO    ] No existing commands found in stream
[2026-06-27 01:35:40,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:35:40,229.229 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-27 01:35:42,784.784 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 01:35:42,786.786 INFO    ] Checking for system updates...
[2026-06-27 01:35:42,807.807 INFO    ] 200
[2026-06-27 01:35:42,808.808 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:35:42,839.839 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:35:42,840.840 INFO    ] No update needed
[2026-06-27 01:35:42,842.842 INFO    ] Checking for camera pi updates...
[2026-06-27 01:35:42,862.862 INFO    ] 200
[2026-06-27 01:35:42,863.863 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:35:42,887.887 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:35:43,017.017 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:35:43,019.019 INFO    ] No camera update needed
[2026-06-27 01:35:43,020.020 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:35:43,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:35:43,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:35:43,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:35:45,067.067 INFO    ] ================================================
[2026-06-27 01:35:45,082.082 INFO    ] Launching Daemon at Sat Jun 27 01:35:45 IST 2026
[2026-06-27 01:35:45,093.093 INFO    ] ================================================
[2026-06-27 01:35:45,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:35:45
[2026-06-27 01:35:45,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:35:45,907.907 INFO    ] Initializing speech engine...
[2026-06-27 01:35:45,915.915 INFO    ] 2026-06-27 01:35:45
[2026-06-27 01:35:46,122.122 INFO    ] 2026-06-27 01:35:46
[2026-06-27 01:35:46,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:35:46,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:35:46,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:35:46,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:35:46,539.539 INFO    ] time= 27/06/2026 01:35:46
[2026-06-27 01:35:46,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:35:46,572.572 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:35:46,663.663 INFO    ] No existing commands found in stream
[2026-06-27 01:35:51,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:35:51,675.675 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-27 01:35:54,080.080 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 01:35:54,081.081 INFO    ] Checking for system updates...
[2026-06-27 01:35:54,103.103 INFO    ] 200
[2026-06-27 01:35:54,104.104 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:35:54,136.136 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:35:54,137.137 INFO    ] No update needed
[2026-06-27 01:35:54,138.138 INFO    ] Checking for camera pi updates...
[2026-06-27 01:35:54,159.159 INFO    ] 200
[2026-06-27 01:35:54,161.161 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:35:54,188.188 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:35:54,228.228 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:35:54,229.229 INFO    ] No camera update needed
[2026-06-27 01:35:54,230.230 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:35:54,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:35:54,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:35:54,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:35:56,278.278 INFO    ] ================================================
[2026-06-27 01:35:56,293.293 INFO    ] Launching Daemon at Sat Jun 27 01:35:56 IST 2026
[2026-06-27 01:35:56,304.304 INFO    ] ================================================
[2026-06-27 01:35:56,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:35:56
[2026-06-27 01:35:57,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:35:57,190.190 INFO    ] Initializing speech engine...
[2026-06-27 01:35:57,195.195 INFO    ] 2026-06-27 01:35:57
[2026-06-27 01:35:57,405.405 INFO    ] 2026-06-27 01:35:57
[2026-06-27 01:35:57,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:35:57,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:35:57,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:35:57,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:35:57,821.821 INFO    ] time= 27/06/2026 01:35:57
[2026-06-27 01:35:57,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:35:57,854.854 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:35:57,921.921 INFO    ] No existing commands found in stream
[2026-06-27 01:36:02,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:36:02,934.934 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-27 01:36:05,585.585 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 01:36:05,586.586 INFO    ] Checking for system updates...
[2026-06-27 01:36:05,608.608 INFO    ] 200
[2026-06-27 01:36:05,609.609 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:36:05,639.639 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:36:05,641.641 INFO    ] No update needed
[2026-06-27 01:36:05,642.642 INFO    ] Checking for camera pi updates...
[2026-06-27 01:36:05,662.662 INFO    ] 200
[2026-06-27 01:36:05,663.663 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:36:05,686.686 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:36:05,732.732 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:36:05,734.734 INFO    ] No camera update needed
[2026-06-27 01:36:05,735.735 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:36:05,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:36:05,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:36:05,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:36:07,781.781 INFO    ] ================================================
[2026-06-27 01:36:07,797.797 INFO    ] Launching Daemon at Sat Jun 27 01:36:07 IST 2026
[2026-06-27 01:36:07,808.808 INFO    ] ================================================
[2026-06-27 01:36:08,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:36:08
[2026-06-27 01:36:08,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:36:08,607.607 INFO    ] Initializing speech engine...
[2026-06-27 01:36:08,615.615 INFO    ] 2026-06-27 01:36:08
[2026-06-27 01:36:08,828.828 INFO    ] 2026-06-27 01:36:08
[2026-06-27 01:36:08,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:36:09,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:36:09,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:36:09,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:36:09,143.143 INFO    ] time= 27/06/2026 01:36:09
[2026-06-27 01:36:09,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:36:09,241.241 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:36:09,376.376 INFO    ] No existing commands found in stream
[2026-06-27 01:36:14,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:36:14,405.405 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-27 01:36:16,532.532 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:36:16,534.534 INFO    ] Checking for system updates...
[2026-06-27 01:36:16,555.555 INFO    ] 200
[2026-06-27 01:36:16,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:36:16,587.587 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:36:16,589.589 INFO    ] No update needed
[2026-06-27 01:36:16,590.590 INFO    ] Checking for camera pi updates...
[2026-06-27 01:36:16,610.610 INFO    ] 200
[2026-06-27 01:36:16,616.616 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:36:16,640.640 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:36:16,687.687 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:36:16,688.688 INFO    ] No camera update needed
[2026-06-27 01:36:16,690.690 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:36:16,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:36:16,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:36:16,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:36:18,736.736 INFO    ] ================================================
[2026-06-27 01:36:18,751.751 INFO    ] Launching Daemon at Sat Jun 27 01:36:18 IST 2026
[2026-06-27 01:36:18,761.761 INFO    ] ================================================
[2026-06-27 01:36:19,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:36:19
[2026-06-27 01:36:19,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:36:19,579.579 INFO    ] Initializing speech engine...
[2026-06-27 01:36:19,587.587 INFO    ] 2026-06-27 01:36:19
[2026-06-27 01:36:19,800.800 INFO    ] 2026-06-27 01:36:19
[2026-06-27 01:36:19,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:36:20,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:36:20,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:36:20,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:36:20,245.245 INFO    ] time= 27/06/2026 01:36:20
[2026-06-27 01:36:20,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:36:20,319.319 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:36:20,380.380 INFO    ] No existing commands found in stream
[2026-06-27 01:36:25,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:36:25,392.392 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-27 01:36:28,326.326 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 01:36:28,328.328 INFO    ] Checking for system updates...
[2026-06-27 01:36:28,349.349 INFO    ] 200
[2026-06-27 01:36:28,351.351 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:36:28,381.381 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:36:28,383.383 INFO    ] No update needed
[2026-06-27 01:36:28,384.384 INFO    ] Checking for camera pi updates...
[2026-06-27 01:36:28,404.404 INFO    ] 200
[2026-06-27 01:36:28,406.406 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:36:28,429.429 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:36:28,479.479 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:36:28,481.481 INFO    ] No camera update needed
[2026-06-27 01:36:28,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:36:28,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:36:28,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:36:28,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:36:30,528.528 INFO    ] ================================================
[2026-06-27 01:36:30,543.543 INFO    ] Launching Daemon at Sat Jun 27 01:36:30 IST 2026
[2026-06-27 01:36:30,554.554 INFO    ] ================================================
[2026-06-27 01:36:30,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:36:30
[2026-06-27 01:36:31,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:36:31,341.341 INFO    ] Initializing speech engine...
[2026-06-27 01:36:31,354.354 INFO    ] 2026-06-27 01:36:31
[2026-06-27 01:36:31,586.586 INFO    ] 2026-06-27 01:36:31
[2026-06-27 01:36:31,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:36:31,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:36:31,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:36:31,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:36:32,043.043 INFO    ] time= 27/06/2026 01:36:31
[2026-06-27 01:36:32,075.075 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:36:32,081.081 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:36:32,155.155 INFO    ] No existing commands found in stream
[2026-06-27 01:36:37,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:36:37,191.191 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-27 01:36:41,196.196 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 01:36:41,198.198 INFO    ] Checking for system updates...
[2026-06-27 01:36:41,219.219 INFO    ] 200
[2026-06-27 01:36:41,220.220 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:36:41,251.251 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:36:41,253.253 INFO    ] No update needed
[2026-06-27 01:36:41,254.254 INFO    ] Checking for camera pi updates...
[2026-06-27 01:36:41,274.274 INFO    ] 200
[2026-06-27 01:36:41,275.275 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:36:41,299.299 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:36:41,340.340 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:36:41,341.341 INFO    ] No camera update needed
[2026-06-27 01:36:41,343.343 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:36:41,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:36:41,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:36:41,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:36:43,390.390 INFO    ] ================================================
[2026-06-27 01:36:43,405.405 INFO    ] Launching Daemon at Sat Jun 27 01:36:43 IST 2026
[2026-06-27 01:36:43,416.416 INFO    ] ================================================
[2026-06-27 01:36:43,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:36:43
[2026-06-27 01:36:44,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:36:44,189.189 INFO    ] Initializing speech engine...
[2026-06-27 01:36:44,192.192 INFO    ] 2026-06-27 01:36:44
[2026-06-27 01:36:44,412.412 INFO    ] 2026-06-27 01:36:44
[2026-06-27 01:36:44,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:36:44,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:36:44,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:36:44,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:36:44,812.812 INFO    ] time= 27/06/2026 01:36:44
[2026-06-27 01:36:44,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:36:44,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:36:44,936.936 INFO    ] No existing commands found in stream
[2026-06-27 01:36:49,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:36:49,952.952 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-27 01:36:51,627.627 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:36:51,628.628 INFO    ] Checking for system updates...
[2026-06-27 01:36:51,649.649 INFO    ] 200
[2026-06-27 01:36:51,650.650 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:36:51,683.683 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:36:51,684.684 INFO    ] No update needed
[2026-06-27 01:36:51,685.685 INFO    ] Checking for camera pi updates...
[2026-06-27 01:36:51,705.705 INFO    ] 200
[2026-06-27 01:36:51,706.706 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:36:51,730.730 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:36:51,774.774 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:36:51,776.776 INFO    ] No camera update needed
[2026-06-27 01:36:51,777.777 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:36:51,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:36:51,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:36:51,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:36:53,823.823 INFO    ] ================================================
[2026-06-27 01:36:53,838.838 INFO    ] Launching Daemon at Sat Jun 27 01:36:53 IST 2026
[2026-06-27 01:36:53,849.849 INFO    ] ================================================
[2026-06-27 01:36:54,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:36:54
[2026-06-27 01:36:54,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:36:54,627.627 INFO    ] Initializing speech engine...
[2026-06-27 01:36:54,631.631 INFO    ] 2026-06-27 01:36:54
[2026-06-27 01:36:54,849.849 INFO    ] 2026-06-27 01:36:54
[2026-06-27 01:36:54,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:36:55,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:36:55,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:36:55,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:36:55,276.276 INFO    ] time= 27/06/2026 01:36:55
[2026-06-27 01:36:55,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:36:55,306.306 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:36:55,374.374 INFO    ] No existing commands found in stream
[2026-06-27 01:37:00,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:37:00,386.386 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-27 01:37:03,975.975 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 01:37:03,976.976 INFO    ] Checking for system updates...
[2026-06-27 01:37:03,997.997 INFO    ] 200
[2026-06-27 01:37:03,998.998 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:37:04,029.029 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:37:04,030.030 INFO    ] No update needed
[2026-06-27 01:37:04,031.031 INFO    ] Checking for camera pi updates...
[2026-06-27 01:37:04,051.051 INFO    ] 200
[2026-06-27 01:37:04,052.052 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:37:04,075.075 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:37:04,117.117 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:37:04,118.118 INFO    ] No camera update needed
[2026-06-27 01:37:04,119.119 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:37:04,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:37:04,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:37:04,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:37:06,167.167 INFO    ] ================================================
[2026-06-27 01:37:06,183.183 INFO    ] Launching Daemon at Sat Jun 27 01:37:06 IST 2026
[2026-06-27 01:37:06,194.194 INFO    ] ================================================
[2026-06-27 01:37:06,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:37:06
[2026-06-27 01:37:06,890.890 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:37:07,037.037 INFO    ] Initializing speech engine...
[2026-06-27 01:37:07,042.042 INFO    ] 2026-06-27 01:37:07
[2026-06-27 01:37:07,248.248 INFO    ] 2026-06-27 01:37:07
[2026-06-27 01:37:07,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:37:07,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:37:07,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:37:07,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:37:07,688.688 INFO    ] time= 27/06/2026 01:37:07
[2026-06-27 01:37:07,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:37:07,695.695 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:37:07,762.762 INFO    ] No existing commands found in stream
[2026-06-27 01:37:12,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:37:12,779.779 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-27 01:37:14,044.044 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:37:14,045.045 INFO    ] Checking for system updates...
[2026-06-27 01:37:14,066.066 INFO    ] 200
[2026-06-27 01:37:14,067.067 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:37:14,100.100 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:37:14,102.102 INFO    ] No update needed
[2026-06-27 01:37:14,103.103 INFO    ] Checking for camera pi updates...
[2026-06-27 01:37:14,122.122 INFO    ] 200
[2026-06-27 01:37:14,124.124 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:37:14,147.147 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:37:14,195.195 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:37:14,197.197 INFO    ] No camera update needed
[2026-06-27 01:37:14,198.198 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:37:14,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:37:14,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:37:14,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:37:16,244.244 INFO    ] ================================================
[2026-06-27 01:37:16,260.260 INFO    ] Launching Daemon at Sat Jun 27 01:37:16 IST 2026
[2026-06-27 01:37:16,272.272 INFO    ] ================================================
[2026-06-27 01:37:16,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:37:16
[2026-06-27 01:37:16,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:37:17,144.144 INFO    ] Initializing speech engine...
[2026-06-27 01:37:17,147.147 INFO    ] 2026-06-27 01:37:17
[2026-06-27 01:37:17,356.356 INFO    ] 2026-06-27 01:37:17
[2026-06-27 01:37:17,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:37:17,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:37:17,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:37:17,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:37:17,802.802 INFO    ] time= 27/06/2026 01:37:17
[2026-06-27 01:37:17,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:37:17,810.810 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:37:17,876.876 INFO    ] No existing commands found in stream
[2026-06-27 01:37:22,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:37:22,887.887 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-27 01:37:23,241.241 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 01:37:23,242.242 INFO    ] Checking for system updates...
[2026-06-27 01:37:23,264.264 INFO    ] 200
[2026-06-27 01:37:23,265.265 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:37:23,298.298 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:37:23,300.300 INFO    ] No update needed
[2026-06-27 01:37:23,301.301 INFO    ] Checking for camera pi updates...
[2026-06-27 01:37:23,324.324 INFO    ] 200
[2026-06-27 01:37:23,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:37:23,351.351 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:37:23,480.480 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:37:23,483.483 INFO    ] No camera update needed
[2026-06-27 01:37:23,486.486 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:37:23,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:37:23,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:37:23,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:37:25,545.545 INFO    ] ================================================
[2026-06-27 01:37:25,561.561 INFO    ] Launching Daemon at Sat Jun 27 01:37:25 IST 2026
[2026-06-27 01:37:25,572.572 INFO    ] ================================================
[2026-06-27 01:37:25,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:37:25
[2026-06-27 01:37:26,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:37:26,399.399 INFO    ] Initializing speech engine...
[2026-06-27 01:37:26,410.410 INFO    ] 2026-06-27 01:37:26
[2026-06-27 01:37:26,614.614 INFO    ] 2026-06-27 01:37:26
[2026-06-27 01:37:26,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:37:26,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:37:26,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:37:26,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:37:27,028.028 INFO    ] time= 27/06/2026 01:37:26
[2026-06-27 01:37:27,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:37:27,061.061 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:37:27,150.150 INFO    ] No existing commands found in stream
[2026-06-27 01:37:32,163.163 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:37:32,165.165 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-27 01:37:33,458.458 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:37:33,460.460 INFO    ] Checking for system updates...
[2026-06-27 01:37:33,480.480 INFO    ] 200
[2026-06-27 01:37:33,482.482 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:37:33,513.513 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:37:33,514.514 INFO    ] No update needed
[2026-06-27 01:37:33,515.515 INFO    ] Checking for camera pi updates...
[2026-06-27 01:37:33,537.537 INFO    ] 200
[2026-06-27 01:37:33,539.539 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:37:33,568.568 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:37:33,615.615 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:37:33,617.617 INFO    ] No camera update needed
[2026-06-27 01:37:33,618.618 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:37:33,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:37:33,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:37:33,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:37:35,664.664 INFO    ] ================================================
[2026-06-27 01:37:35,679.679 INFO    ] Launching Daemon at Sat Jun 27 01:37:35 IST 2026
[2026-06-27 01:37:35,690.690 INFO    ] ================================================
[2026-06-27 01:37:36,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:37:36
[2026-06-27 01:37:36,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:37:36,577.577 INFO    ] Initializing speech engine...
[2026-06-27 01:37:36,583.583 INFO    ] 2026-06-27 01:37:36
[2026-06-27 01:37:36,791.791 INFO    ] 2026-06-27 01:37:36
[2026-06-27 01:37:36,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:37:37,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:37:37,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:37:37,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:37:37,215.215 INFO    ] time= 27/06/2026 01:37:37
[2026-06-27 01:37:37,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:37:37,244.244 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:37:37,311.311 INFO    ] No existing commands found in stream
[2026-06-27 01:37:42,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:37:42,329.329 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-27 01:37:45,174.174 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 01:37:45,176.176 INFO    ] Checking for system updates...
[2026-06-27 01:37:45,197.197 INFO    ] 200
[2026-06-27 01:37:45,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:37:45,232.232 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:37:45,233.233 INFO    ] No update needed
[2026-06-27 01:37:45,235.235 INFO    ] Checking for camera pi updates...
[2026-06-27 01:37:45,254.254 INFO    ] 200
[2026-06-27 01:37:45,256.256 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:37:45,281.281 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:37:45,427.427 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:37:45,428.428 INFO    ] No camera update needed
[2026-06-27 01:37:45,430.430 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:37:45,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:37:45,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:37:45,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:37:47,476.476 INFO    ] ================================================
[2026-06-27 01:37:47,492.492 INFO    ] Launching Daemon at Sat Jun 27 01:37:47 IST 2026
[2026-06-27 01:37:47,503.503 INFO    ] ================================================
[2026-06-27 01:37:47,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:37:47
[2026-06-27 01:37:48,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:37:48,331.331 INFO    ] Initializing speech engine...
[2026-06-27 01:37:48,335.335 INFO    ] 2026-06-27 01:37:48
[2026-06-27 01:37:48,542.542 INFO    ] 2026-06-27 01:37:48
[2026-06-27 01:37:48,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:37:48,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:37:48,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:37:48,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:37:48,964.964 INFO    ] time= 27/06/2026 01:37:48
[2026-06-27 01:37:48,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:37:48,995.995 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:37:49,062.062 INFO    ] No existing commands found in stream
[2026-06-27 01:37:54,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:37:54,089.089 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-27 01:37:56,362.362 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 01:37:56,364.364 INFO    ] Checking for system updates...
[2026-06-27 01:37:56,385.385 INFO    ] 200
[2026-06-27 01:37:56,386.386 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:37:56,417.417 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:37:56,418.418 INFO    ] No update needed
[2026-06-27 01:37:56,419.419 INFO    ] Checking for camera pi updates...
[2026-06-27 01:37:56,439.439 INFO    ] 200
[2026-06-27 01:37:56,440.440 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:37:56,465.465 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:37:56,509.509 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:37:56,510.510 INFO    ] No camera update needed
[2026-06-27 01:37:56,511.511 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:37:56,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:37:56,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:37:56,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:37:58,561.561 INFO    ] ================================================
[2026-06-27 01:37:58,577.577 INFO    ] Launching Daemon at Sat Jun 27 01:37:58 IST 2026
[2026-06-27 01:37:58,588.588 INFO    ] ================================================
[2026-06-27 01:37:58,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:37:58
[2026-06-27 01:37:59,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:37:59,368.368 INFO    ] Initializing speech engine...
[2026-06-27 01:37:59,371.371 INFO    ] 2026-06-27 01:37:59
[2026-06-27 01:37:59,590.590 INFO    ] 2026-06-27 01:37:59
[2026-06-27 01:37:59,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:38:00,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:38:00,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:38:00,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:38:00,437.437 INFO    ] time= 27/06/2026 01:38:00
[2026-06-27 01:38:00,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:38:00,442.442 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:38:00,511.511 INFO    ] No existing commands found in stream
[2026-06-27 01:38:05,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:38:05,525.525 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-27 01:38:09,397.397 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 01:38:09,398.398 INFO    ] Checking for system updates...
[2026-06-27 01:38:09,419.419 INFO    ] 200
[2026-06-27 01:38:09,420.420 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:38:09,453.453 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:38:09,454.454 INFO    ] No update needed
[2026-06-27 01:38:09,456.456 INFO    ] Checking for camera pi updates...
[2026-06-27 01:38:09,476.476 INFO    ] 200
[2026-06-27 01:38:09,478.478 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:38:09,502.502 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:38:09,564.564 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:38:09,565.565 INFO    ] No camera update needed
[2026-06-27 01:38:09,566.566 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:38:09,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:38:09,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:38:09,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:38:11,614.614 INFO    ] ================================================
[2026-06-27 01:38:11,630.630 INFO    ] Launching Daemon at Sat Jun 27 01:38:11 IST 2026
[2026-06-27 01:38:11,643.643 INFO    ] ================================================
[2026-06-27 01:38:11,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:38:11
[2026-06-27 01:38:12,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:38:12,500.500 INFO    ] Initializing speech engine...
[2026-06-27 01:38:12,506.506 INFO    ] 2026-06-27 01:38:12
[2026-06-27 01:38:12,710.710 INFO    ] 2026-06-27 01:38:12
[2026-06-27 01:38:12,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:38:12,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:38:12,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:38:13,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:38:13,161.161 INFO    ] time= 27/06/2026 01:38:13
[2026-06-27 01:38:13,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:38:13,177.177 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:38:13,244.244 INFO    ] No existing commands found in stream
[2026-06-27 01:38:18,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:38:18,277.277 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-27 01:38:21,115.115 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 01:38:21,117.117 INFO    ] Checking for system updates...
[2026-06-27 01:38:21,137.137 INFO    ] 200
[2026-06-27 01:38:21,139.139 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:38:21,170.170 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:38:21,171.171 INFO    ] No update needed
[2026-06-27 01:38:21,172.172 INFO    ] Checking for camera pi updates...
[2026-06-27 01:38:21,192.192 INFO    ] 200
[2026-06-27 01:38:21,193.193 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:38:21,217.217 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:38:21,261.261 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:38:21,263.263 INFO    ] No camera update needed
[2026-06-27 01:38:21,264.264 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:38:21,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:38:21,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:38:21,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:38:23,311.311 INFO    ] ================================================
[2026-06-27 01:38:23,327.327 INFO    ] Launching Daemon at Sat Jun 27 01:38:23 IST 2026
[2026-06-27 01:38:23,338.338 INFO    ] ================================================
[2026-06-27 01:38:23,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:38:23
[2026-06-27 01:38:24,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:38:24,176.176 INFO    ] Initializing speech engine...
[2026-06-27 01:38:24,179.179 INFO    ] 2026-06-27 01:38:24
[2026-06-27 01:38:24,373.373 INFO    ] 2026-06-27 01:38:24
[2026-06-27 01:38:24,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:38:24,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:38:24,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:38:24,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:38:24,849.849 INFO    ] time= 27/06/2026 01:38:24
[2026-06-27 01:38:24,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:38:24,905.905 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:38:24,987.987 INFO    ] No existing commands found in stream
[2026-06-27 01:38:29,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:38:29,999.999 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-27 01:38:33,811.811 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 01:38:33,812.812 INFO    ] Checking for system updates...
[2026-06-27 01:38:33,833.833 INFO    ] 200
[2026-06-27 01:38:33,835.835 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:38:33,868.868 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:38:33,869.869 INFO    ] No update needed
[2026-06-27 01:38:33,870.870 INFO    ] Checking for camera pi updates...
[2026-06-27 01:38:33,891.891 INFO    ] 200
[2026-06-27 01:38:33,893.893 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:38:33,916.916 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:38:33,961.961 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:38:33,963.963 INFO    ] No camera update needed
[2026-06-27 01:38:33,964.964 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:38:33,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:38:33,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:38:33,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:38:36,009.009 INFO    ] ================================================
[2026-06-27 01:38:36,025.025 INFO    ] Launching Daemon at Sat Jun 27 01:38:36 IST 2026
[2026-06-27 01:38:36,036.036 INFO    ] ================================================
[2026-06-27 01:38:36,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:38:36
[2026-06-27 01:38:36,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:38:36,883.883 INFO    ] Initializing speech engine...
[2026-06-27 01:38:36,890.890 INFO    ] 2026-06-27 01:38:36
[2026-06-27 01:38:37,100.100 INFO    ] 2026-06-27 01:38:37
[2026-06-27 01:38:37,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:38:37,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:38:37,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:38:37,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:38:37,524.524 INFO    ] time= 27/06/2026 01:38:37
[2026-06-27 01:38:37,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:38:37,553.553 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:38:37,621.621 INFO    ] No existing commands found in stream
[2026-06-27 01:38:42,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:38:42,640.640 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-27 01:38:43,637.637 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 01:38:43,640.640 INFO    ] Checking for system updates...
[2026-06-27 01:38:43,682.682 INFO    ] 200
[2026-06-27 01:38:43,686.686 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:38:43,741.741 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:38:43,744.744 INFO    ] No update needed
[2026-06-27 01:38:43,747.747 INFO    ] Checking for camera pi updates...
[2026-06-27 01:38:43,771.771 INFO    ] 200
[2026-06-27 01:38:43,773.773 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:38:43,796.796 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:38:43,852.852 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:38:43,854.854 INFO    ] No camera update needed
[2026-06-27 01:38:43,856.856 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:38:43,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:38:43,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:38:43,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:38:45,902.902 INFO    ] ================================================
[2026-06-27 01:38:45,918.918 INFO    ] Launching Daemon at Sat Jun 27 01:38:45 IST 2026
[2026-06-27 01:38:45,930.930 INFO    ] ================================================
[2026-06-27 01:38:46,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:38:46
[2026-06-27 01:38:46,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:38:46,723.723 INFO    ] Initializing speech engine...
[2026-06-27 01:38:46,728.728 INFO    ] 2026-06-27 01:38:46
[2026-06-27 01:38:46,930.930 INFO    ] 2026-06-27 01:38:46
[2026-06-27 01:38:46,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:38:47,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:38:47,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:38:47,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:38:47,344.344 INFO    ] time= 27/06/2026 01:38:47
[2026-06-27 01:38:47,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:38:47,377.377 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:38:47,444.444 INFO    ] No existing commands found in stream
[2026-06-27 01:38:52,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:38:52,461.461 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-27 01:38:56,636.636 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 01:38:56,638.638 INFO    ] Checking for system updates...
[2026-06-27 01:38:56,659.659 INFO    ] 200
[2026-06-27 01:38:56,660.660 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:38:56,690.690 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:38:56,692.692 INFO    ] No update needed
[2026-06-27 01:38:56,693.693 INFO    ] Checking for camera pi updates...
[2026-06-27 01:38:56,713.713 INFO    ] 200
[2026-06-27 01:38:56,715.715 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:38:56,740.740 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:38:56,784.784 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:38:56,786.786 INFO    ] No camera update needed
[2026-06-27 01:38:56,787.787 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:38:56,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:38:56,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:38:56,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:38:58,836.836 INFO    ] ================================================
[2026-06-27 01:38:58,852.852 INFO    ] Launching Daemon at Sat Jun 27 01:38:58 IST 2026
[2026-06-27 01:38:58,862.862 INFO    ] ================================================
[2026-06-27 01:38:59,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:38:59
[2026-06-27 01:38:59,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:38:59,652.652 INFO    ] Initializing speech engine...
[2026-06-27 01:38:59,661.661 INFO    ] 2026-06-27 01:38:59
[2026-06-27 01:38:59,866.866 INFO    ] 2026-06-27 01:38:59
[2026-06-27 01:38:59,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:39:00,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:39:00,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:39:00,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:39:00,308.308 INFO    ] time= 27/06/2026 01:39:00
[2026-06-27 01:39:00,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:39:00,316.316 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:39:00,381.381 INFO    ] No existing commands found in stream
[2026-06-27 01:39:05,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:39:05,395.395 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-27 01:39:07,338.338 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 01:39:07,340.340 INFO    ] Checking for system updates...
[2026-06-27 01:39:07,360.360 INFO    ] 200
[2026-06-27 01:39:07,362.362 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:39:07,397.397 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:39:07,398.398 INFO    ] No update needed
[2026-06-27 01:39:07,399.399 INFO    ] Checking for camera pi updates...
[2026-06-27 01:39:07,419.419 INFO    ] 200
[2026-06-27 01:39:07,420.420 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:39:07,445.445 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:39:07,498.498 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:39:07,499.499 INFO    ] No camera update needed
[2026-06-27 01:39:07,501.501 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:39:07,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:39:07,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:39:07,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:39:09,547.547 INFO    ] ================================================
[2026-06-27 01:39:09,563.563 INFO    ] Launching Daemon at Sat Jun 27 01:39:09 IST 2026
[2026-06-27 01:39:09,574.574 INFO    ] ================================================
[2026-06-27 01:39:09,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:39:09
[2026-06-27 01:39:10,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:39:10,432.432 INFO    ] Initializing speech engine...
[2026-06-27 01:39:10,443.443 INFO    ] 2026-06-27 01:39:10
[2026-06-27 01:39:10,648.648 INFO    ] 2026-06-27 01:39:10
[2026-06-27 01:39:10,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:39:10,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:39:10,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:39:10,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:39:11,018.018 INFO    ] time= 27/06/2026 01:39:10
[2026-06-27 01:39:11,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:39:11,048.048 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:39:11,118.118 INFO    ] No existing commands found in stream
[2026-06-27 01:39:16,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:39:16,134.134 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-27 01:39:17,178.178 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 01:39:17,180.180 INFO    ] Checking for system updates...
[2026-06-27 01:39:17,200.200 INFO    ] 200
[2026-06-27 01:39:17,202.202 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:39:17,232.232 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:39:17,233.233 INFO    ] No update needed
[2026-06-27 01:39:17,235.235 INFO    ] Checking for camera pi updates...
[2026-06-27 01:39:17,257.257 INFO    ] 200
[2026-06-27 01:39:17,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:39:17,284.284 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:39:17,336.336 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:39:17,337.337 INFO    ] No camera update needed
[2026-06-27 01:39:17,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:39:17,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:39:17,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:39:17,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:39:19,385.385 INFO    ] ================================================
[2026-06-27 01:39:19,400.400 INFO    ] Launching Daemon at Sat Jun 27 01:39:19 IST 2026
[2026-06-27 01:39:19,411.411 INFO    ] ================================================
[2026-06-27 01:39:19,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:39:19
[2026-06-27 01:39:20,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:39:20,301.301 INFO    ] Initializing speech engine...
[2026-06-27 01:39:20,306.306 INFO    ] 2026-06-27 01:39:20
[2026-06-27 01:39:20,515.515 INFO    ] 2026-06-27 01:39:20
[2026-06-27 01:39:20,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:39:20,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:39:20,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:39:20,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:39:20,963.963 INFO    ] time= 27/06/2026 01:39:20
[2026-06-27 01:39:20,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:39:20,971.971 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:39:21,037.037 INFO    ] No existing commands found in stream
[2026-06-27 01:39:26,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:39:26,055.055 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-27 01:39:27,354.354 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:39:27,355.355 INFO    ] Checking for system updates...
[2026-06-27 01:39:27,378.378 INFO    ] 200
[2026-06-27 01:39:27,380.380 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:39:27,416.416 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:39:27,417.417 INFO    ] No update needed
[2026-06-27 01:39:27,419.419 INFO    ] Checking for camera pi updates...
[2026-06-27 01:39:27,439.439 INFO    ] 200
[2026-06-27 01:39:27,440.440 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:39:27,465.465 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:39:27,516.516 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:39:27,517.517 INFO    ] No camera update needed
[2026-06-27 01:39:27,519.519 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:39:27,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:39:27,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:39:27,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:39:29,566.566 INFO    ] ================================================
[2026-06-27 01:39:29,581.581 INFO    ] Launching Daemon at Sat Jun 27 01:39:29 IST 2026
[2026-06-27 01:39:29,591.591 INFO    ] ================================================
[2026-06-27 01:39:29,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:39:29
[2026-06-27 01:39:30,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:39:30,382.382 INFO    ] Initializing speech engine...
[2026-06-27 01:39:30,390.390 INFO    ] 2026-06-27 01:39:30
[2026-06-27 01:39:30,616.616 INFO    ] 2026-06-27 01:39:30
[2026-06-27 01:39:30,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:39:30,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:39:30,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:39:30,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:39:31,064.064 INFO    ] time= 27/06/2026 01:39:31
[2026-06-27 01:39:31,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:39:31,102.102 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:39:31,173.173 INFO    ] No existing commands found in stream
[2026-06-27 01:39:36,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:39:36,187.187 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-27 01:39:37,945.945 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 01:39:37,947.947 INFO    ] Checking for system updates...
[2026-06-27 01:39:37,969.969 INFO    ] 200
[2026-06-27 01:39:37,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:39:38,000.000 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:39:38,002.002 INFO    ] No update needed
[2026-06-27 01:39:38,003.003 INFO    ] Checking for camera pi updates...
[2026-06-27 01:39:38,024.024 INFO    ] 200
[2026-06-27 01:39:38,026.026 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:39:38,051.051 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:39:38,092.092 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:39:38,093.093 INFO    ] No camera update needed
[2026-06-27 01:39:38,095.095 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:39:38,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:39:38,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:39:38,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:39:40,142.142 INFO    ] ================================================
[2026-06-27 01:39:40,157.157 INFO    ] Launching Daemon at Sat Jun 27 01:39:40 IST 2026
[2026-06-27 01:39:40,169.169 INFO    ] ================================================
[2026-06-27 01:39:40,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:39:40
[2026-06-27 01:39:40,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:39:41,055.055 INFO    ] Initializing speech engine...
[2026-06-27 01:39:41,059.059 INFO    ] 2026-06-27 01:39:41
[2026-06-27 01:39:41,268.268 INFO    ] 2026-06-27 01:39:41
[2026-06-27 01:39:41,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:39:41,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:39:41,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:39:41,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:39:41,687.687 INFO    ] time= 27/06/2026 01:39:41
[2026-06-27 01:39:41,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:39:41,718.718 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:39:41,785.785 INFO    ] No existing commands found in stream
[2026-06-27 01:39:46,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:39:46,803.803 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-27 01:39:49,015.015 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 01:39:49,016.016 INFO    ] Checking for system updates...
[2026-06-27 01:39:49,037.037 INFO    ] 200
[2026-06-27 01:39:49,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:39:49,070.070 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:39:49,071.071 INFO    ] No update needed
[2026-06-27 01:39:49,073.073 INFO    ] Checking for camera pi updates...
[2026-06-27 01:39:49,094.094 INFO    ] 200
[2026-06-27 01:39:49,095.095 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:39:49,122.122 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:39:49,260.260 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:39:49,262.262 INFO    ] No camera update needed
[2026-06-27 01:39:49,264.264 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:39:49,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:39:49,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:39:49,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:39:51,313.313 INFO    ] ================================================
[2026-06-27 01:39:51,329.329 INFO    ] Launching Daemon at Sat Jun 27 01:39:51 IST 2026
[2026-06-27 01:39:51,340.340 INFO    ] ================================================
[2026-06-27 01:39:51,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:39:51
[2026-06-27 01:39:52,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:39:52,144.144 INFO    ] Initializing speech engine...
[2026-06-27 01:39:52,149.149 INFO    ] 2026-06-27 01:39:52
[2026-06-27 01:39:52,355.355 INFO    ] 2026-06-27 01:39:52
[2026-06-27 01:39:52,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:39:52,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:39:52,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:39:52,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:39:52,774.774 INFO    ] time= 27/06/2026 01:39:52
[2026-06-27 01:39:52,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:39:52,808.808 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:39:52,875.875 INFO    ] No existing commands found in stream
[2026-06-27 01:39:57,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:39:57,887.887 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-27 01:40:00,924.924 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:40:00,926.926 INFO    ] Checking for system updates...
[2026-06-27 01:40:00,946.946 INFO    ] 200
[2026-06-27 01:40:00,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:40:00,978.978 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:40:00,980.980 INFO    ] No update needed
[2026-06-27 01:40:00,981.981 INFO    ] Checking for camera pi updates...
[2026-06-27 01:40:01,002.002 INFO    ] 200
[2026-06-27 01:40:01,003.003 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:40:01,026.026 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:40:01,081.081 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:40:01,083.083 INFO    ] No camera update needed
[2026-06-27 01:40:01,097.097 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:40:01,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:40:01,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:40:01,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:40:03,160.160 INFO    ] ================================================
[2026-06-27 01:40:03,176.176 INFO    ] Launching Daemon at Sat Jun 27 01:40:03 IST 2026
[2026-06-27 01:40:03,187.187 INFO    ] ================================================
[2026-06-27 01:40:03,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:40:03
[2026-06-27 01:40:03,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:40:03,988.988 INFO    ] Initializing speech engine...
[2026-06-27 01:40:03,993.993 INFO    ] 2026-06-27 01:40:03
[2026-06-27 01:40:04,198.198 INFO    ] 2026-06-27 01:40:04
[2026-06-27 01:40:04,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:40:04,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:40:04,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:40:04,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:40:04,612.612 INFO    ] time= 27/06/2026 01:40:04
[2026-06-27 01:40:04,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:40:04,645.645 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:40:04,711.711 INFO    ] No existing commands found in stream
[2026-06-27 01:40:09,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:40:09,723.723 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-27 01:40:11,091.091 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 01:40:11,093.093 INFO    ] Checking for system updates...
[2026-06-27 01:40:11,114.114 INFO    ] 200
[2026-06-27 01:40:11,115.115 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:40:11,146.146 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:40:11,147.147 INFO    ] No update needed
[2026-06-27 01:40:11,149.149 INFO    ] Checking for camera pi updates...
[2026-06-27 01:40:11,175.175 INFO    ] 200
[2026-06-27 01:40:11,176.176 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:40:11,208.208 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:40:11,254.254 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:40:11,256.256 INFO    ] No camera update needed
[2026-06-27 01:40:11,257.257 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:40:11,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:40:11,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:40:11,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:40:13,296.296 INFO    ] ================================================
[2026-06-27 01:40:13,304.304 INFO    ] Launching Daemon at Sat Jun 27 01:40:13 IST 2026
[2026-06-27 01:40:13,310.310 INFO    ] ================================================
[2026-06-27 01:40:13,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:40:13
[2026-06-27 01:40:13,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:40:14,084.084 INFO    ] Initializing speech engine...
[2026-06-27 01:40:14,092.092 INFO    ] 2026-06-27 01:40:14
[2026-06-27 01:40:14,301.301 INFO    ] 2026-06-27 01:40:14
[2026-06-27 01:40:14,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:40:14,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:40:14,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:40:14,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:40:14,721.721 INFO    ] time= 27/06/2026 01:40:14
[2026-06-27 01:40:14,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:40:14,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:40:14,818.818 INFO    ] No existing commands found in stream
[2026-06-27 01:40:19,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:40:19,829.829 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-27 01:40:23,429.429 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 01:40:23,431.431 INFO    ] Checking for system updates...
[2026-06-27 01:40:23,452.452 INFO    ] 200
[2026-06-27 01:40:23,453.453 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:40:23,485.485 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:40:23,486.486 INFO    ] No update needed
[2026-06-27 01:40:23,487.487 INFO    ] Checking for camera pi updates...
[2026-06-27 01:40:23,509.509 INFO    ] 200
[2026-06-27 01:40:23,510.510 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:40:23,534.534 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:40:23,586.586 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:40:23,588.588 INFO    ] No camera update needed
[2026-06-27 01:40:23,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:40:23,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:40:23,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:40:23,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:40:25,639.639 INFO    ] ================================================
[2026-06-27 01:40:25,654.654 INFO    ] Launching Daemon at Sat Jun 27 01:40:25 IST 2026
[2026-06-27 01:40:25,665.665 INFO    ] ================================================
[2026-06-27 01:40:26,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:40:25
[2026-06-27 01:40:26,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:40:26,456.456 INFO    ] Initializing speech engine...
[2026-06-27 01:40:26,464.464 INFO    ] 2026-06-27 01:40:26
[2026-06-27 01:40:26,677.677 INFO    ] 2026-06-27 01:40:26
[2026-06-27 01:40:26,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:40:26,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:40:26,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:40:27,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:40:27,097.097 INFO    ] time= 27/06/2026 01:40:27
[2026-06-27 01:40:27,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:40:27,126.126 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:40:27,193.193 INFO    ] No existing commands found in stream
[2026-06-27 01:40:32,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:40:32,208.208 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-27 01:40:36,425.425 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 01:40:36,427.427 INFO    ] Checking for system updates...
[2026-06-27 01:40:36,447.447 INFO    ] 200
[2026-06-27 01:40:36,449.449 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:40:36,483.483 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:40:36,484.484 INFO    ] No update needed
[2026-06-27 01:40:36,486.486 INFO    ] Checking for camera pi updates...
[2026-06-27 01:40:36,507.507 INFO    ] 200
[2026-06-27 01:40:36,508.508 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:40:36,533.533 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:40:36,580.580 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:40:36,581.581 INFO    ] No camera update needed
[2026-06-27 01:40:36,583.583 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:40:36,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:40:36,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:40:36,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:40:38,631.631 INFO    ] ================================================
[2026-06-27 01:40:38,646.646 INFO    ] Launching Daemon at Sat Jun 27 01:40:38 IST 2026
[2026-06-27 01:40:38,657.657 INFO    ] ================================================
[2026-06-27 01:40:38,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:40:38
[2026-06-27 01:40:39,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:40:39,460.460 INFO    ] Initializing speech engine...
[2026-06-27 01:40:39,465.465 INFO    ] 2026-06-27 01:40:39
[2026-06-27 01:40:39,670.670 INFO    ] 2026-06-27 01:40:39
[2026-06-27 01:40:39,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:40:39,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:40:39,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:40:40,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:40:40,131.131 INFO    ] time= 27/06/2026 01:40:40
[2026-06-27 01:40:40,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:40:40,164.164 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:40:40,235.235 INFO    ] No existing commands found in stream
[2026-06-27 01:40:45,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:40:45,249.249 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-27 01:40:48,878.878 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 01:40:48,880.880 INFO    ] Checking for system updates...
[2026-06-27 01:40:48,901.901 INFO    ] 200
[2026-06-27 01:40:48,902.902 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:40:48,936.936 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:40:48,937.937 INFO    ] No update needed
[2026-06-27 01:40:48,939.939 INFO    ] Checking for camera pi updates...
[2026-06-27 01:40:48,958.958 INFO    ] 200
[2026-06-27 01:40:48,960.960 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:40:48,985.985 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:40:49,039.039 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:40:49,041.041 INFO    ] No camera update needed
[2026-06-27 01:40:49,042.042 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:40:49,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:40:49,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:40:49,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:40:51,090.090 INFO    ] ================================================
[2026-06-27 01:40:51,105.105 INFO    ] Launching Daemon at Sat Jun 27 01:40:51 IST 2026
[2026-06-27 01:40:51,116.116 INFO    ] ================================================
[2026-06-27 01:40:51,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:40:51
[2026-06-27 01:40:51,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:40:51,992.992 INFO    ] Initializing speech engine...
[2026-06-27 01:40:51,994.994 INFO    ] 2026-06-27 01:40:51
[2026-06-27 01:40:52,210.210 INFO    ] 2026-06-27 01:40:52
[2026-06-27 01:40:52,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:40:52,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:40:52,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:40:52,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:40:52,637.637 INFO    ] time= 27/06/2026 01:40:52
[2026-06-27 01:40:52,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:40:52,668.668 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:40:52,735.735 INFO    ] No existing commands found in stream
[2026-06-27 01:40:57,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:40:57,749.749 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-27 01:41:01,962.962 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 01:41:01,965.965 INFO    ] Checking for system updates...
[2026-06-27 01:41:01,996.996 INFO    ] 200
[2026-06-27 01:41:01,999.999 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:41:02,047.047 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:41:02,049.049 INFO    ] No update needed
[2026-06-27 01:41:02,051.051 INFO    ] Checking for camera pi updates...
[2026-06-27 01:41:02,077.077 INFO    ] 200
[2026-06-27 01:41:02,079.079 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:41:02,115.115 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:41:02,147.147 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:41:02,149.149 INFO    ] No camera update needed
[2026-06-27 01:41:02,151.151 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:41:02,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:41:02,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:41:02,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:41:04,202.202 INFO    ] ================================================
[2026-06-27 01:41:04,218.218 INFO    ] Launching Daemon at Sat Jun 27 01:41:04 IST 2026
[2026-06-27 01:41:04,230.230 INFO    ] ================================================
[2026-06-27 01:41:04,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:41:04
[2026-06-27 01:41:04,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:41:05,031.031 INFO    ] Initializing speech engine...
[2026-06-27 01:41:05,041.041 INFO    ] 2026-06-27 01:41:05
[2026-06-27 01:41:05,247.247 INFO    ] 2026-06-27 01:41:05
[2026-06-27 01:41:05,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:41:05,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:41:05,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:41:05,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:41:05,676.676 INFO    ] time= 27/06/2026 01:41:05
[2026-06-27 01:41:05,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:41:05,705.705 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:41:05,777.777 INFO    ] No existing commands found in stream
[2026-06-27 01:41:10,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:41:10,794.794 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-27 01:41:13,899.899 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 01:41:13,900.900 INFO    ] Checking for system updates...
[2026-06-27 01:41:13,924.924 INFO    ] 200
[2026-06-27 01:41:13,925.925 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:41:13,956.956 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:41:13,957.957 INFO    ] No update needed
[2026-06-27 01:41:13,958.958 INFO    ] Checking for camera pi updates...
[2026-06-27 01:41:13,978.978 INFO    ] 200
[2026-06-27 01:41:13,979.979 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:41:14,004.004 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:41:14,056.056 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:41:14,057.057 INFO    ] No camera update needed
[2026-06-27 01:41:14,059.059 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:41:14,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:41:14,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:41:14,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:41:16,105.105 INFO    ] ================================================
[2026-06-27 01:41:16,121.121 INFO    ] Launching Daemon at Sat Jun 27 01:41:16 IST 2026
[2026-06-27 01:41:16,132.132 INFO    ] ================================================
[2026-06-27 01:41:16,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:41:16
[2026-06-27 01:41:16,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:41:16,971.971 INFO    ] Initializing speech engine...
[2026-06-27 01:41:16,976.976 INFO    ] 2026-06-27 01:41:16
[2026-06-27 01:41:17,185.185 INFO    ] 2026-06-27 01:41:17
[2026-06-27 01:41:17,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:41:17,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:41:17,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:41:17,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:41:17,608.608 INFO    ] time= 27/06/2026 01:41:17
[2026-06-27 01:41:17,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:41:17,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:41:17,705.705 INFO    ] No existing commands found in stream
[2026-06-27 01:41:22,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:41:22,719.719 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-27 01:41:24,799.799 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 01:41:24,800.800 INFO    ] Checking for system updates...
[2026-06-27 01:41:24,823.823 INFO    ] 200
[2026-06-27 01:41:24,825.825 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:41:24,856.856 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:41:24,857.857 INFO    ] No update needed
[2026-06-27 01:41:24,858.858 INFO    ] Checking for camera pi updates...
[2026-06-27 01:41:24,879.879 INFO    ] 200
[2026-06-27 01:41:24,880.880 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:41:24,904.904 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:41:24,949.949 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:41:24,950.950 INFO    ] No camera update needed
[2026-06-27 01:41:24,951.951 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:41:24,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:41:24,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:41:24,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:41:27,000.000 INFO    ] ================================================
[2026-06-27 01:41:27,015.015 INFO    ] Launching Daemon at Sat Jun 27 01:41:27 IST 2026
[2026-06-27 01:41:27,027.027 INFO    ] ================================================
[2026-06-27 01:41:27,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:41:27
[2026-06-27 01:41:27,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:41:27,825.825 INFO    ] Initializing speech engine...
[2026-06-27 01:41:27,828.828 INFO    ] 2026-06-27 01:41:27
[2026-06-27 01:41:28,045.045 INFO    ] 2026-06-27 01:41:28
[2026-06-27 01:41:28,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:41:28,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:41:28,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:41:28,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:41:28,475.475 INFO    ] time= 27/06/2026 01:41:28
[2026-06-27 01:41:28,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:41:28,533.533 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:41:28,610.610 INFO    ] No existing commands found in stream
[2026-06-27 01:41:33,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:41:33,624.624 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-27 01:41:34,080.080 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 01:41:34,082.082 INFO    ] Checking for system updates...
[2026-06-27 01:41:34,103.103 INFO    ] 200
[2026-06-27 01:41:34,104.104 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:41:34,135.135 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:41:34,136.136 INFO    ] No update needed
[2026-06-27 01:41:34,137.137 INFO    ] Checking for camera pi updates...
[2026-06-27 01:41:34,158.158 INFO    ] 200
[2026-06-27 01:41:34,160.160 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:41:34,184.184 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:41:34,226.226 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:41:34,228.228 INFO    ] No camera update needed
[2026-06-27 01:41:34,229.229 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:41:34,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:41:34,233.233 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:41:34,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:41:36,277.277 INFO    ] ================================================
[2026-06-27 01:41:36,293.293 INFO    ] Launching Daemon at Sat Jun 27 01:41:36 IST 2026
[2026-06-27 01:41:36,304.304 INFO    ] ================================================
[2026-06-27 01:41:36,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:41:36
[2026-06-27 01:41:37,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:41:37,190.190 INFO    ] Initializing speech engine...
[2026-06-27 01:41:37,195.195 INFO    ] 2026-06-27 01:41:37
[2026-06-27 01:41:37,404.404 INFO    ] 2026-06-27 01:41:37
[2026-06-27 01:41:37,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:41:37,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:41:37,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:41:37,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:41:37,828.828 INFO    ] time= 27/06/2026 01:41:37
[2026-06-27 01:41:37,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:41:37,855.855 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:41:37,922.922 INFO    ] No existing commands found in stream
[2026-06-27 01:41:42,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:41:42,938.938 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-27 01:41:45,389.389 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:41:45,391.391 INFO    ] Checking for system updates...
[2026-06-27 01:41:45,412.412 INFO    ] 200
[2026-06-27 01:41:45,413.413 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:41:45,445.445 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:41:45,446.446 INFO    ] No update needed
[2026-06-27 01:41:45,447.447 INFO    ] Checking for camera pi updates...
[2026-06-27 01:41:45,469.469 INFO    ] 200
[2026-06-27 01:41:45,470.470 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:41:45,496.496 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:41:45,551.551 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:41:45,553.553 INFO    ] No camera update needed
[2026-06-27 01:41:45,555.555 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:41:45,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:41:45,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:41:45,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:41:47,603.603 INFO    ] ================================================
[2026-06-27 01:41:47,618.618 INFO    ] Launching Daemon at Sat Jun 27 01:41:47 IST 2026
[2026-06-27 01:41:47,629.629 INFO    ] ================================================
[2026-06-27 01:41:47,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:41:47
[2026-06-27 01:41:48,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:41:48,410.410 INFO    ] Initializing speech engine...
[2026-06-27 01:41:48,413.413 INFO    ] 2026-06-27 01:41:48
[2026-06-27 01:41:48,604.604 INFO    ] 2026-06-27 01:41:48
[2026-06-27 01:41:48,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:41:48,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:41:48,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:41:49,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:41:49,075.075 INFO    ] time= 27/06/2026 01:41:49
[2026-06-27 01:41:49,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:41:49,133.133 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:41:49,210.210 INFO    ] No existing commands found in stream
[2026-06-27 01:41:54,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:41:54,222.222 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-27 01:41:54,610.610 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 01:41:54,612.612 INFO    ] Checking for system updates...
[2026-06-27 01:41:54,632.632 INFO    ] 200
[2026-06-27 01:41:54,634.634 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:41:54,665.665 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:41:54,666.666 INFO    ] No update needed
[2026-06-27 01:41:54,667.667 INFO    ] Checking for camera pi updates...
[2026-06-27 01:41:54,687.687 INFO    ] 200
[2026-06-27 01:41:54,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:41:54,711.711 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:41:54,837.837 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:41:54,838.838 INFO    ] No camera update needed
[2026-06-27 01:41:54,839.839 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:41:54,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:41:54,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:41:54,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:41:56,887.887 INFO    ] ================================================
[2026-06-27 01:41:56,902.902 INFO    ] Launching Daemon at Sat Jun 27 01:41:56 IST 2026
[2026-06-27 01:41:56,913.913 INFO    ] ================================================
[2026-06-27 01:41:57,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:41:57
[2026-06-27 01:41:57,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:41:57,801.801 INFO    ] Initializing speech engine...
[2026-06-27 01:41:57,805.805 INFO    ] 2026-06-27 01:41:57
[2026-06-27 01:41:58,015.015 INFO    ] 2026-06-27 01:41:58
[2026-06-27 01:41:58,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:41:58,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:41:58,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:41:58,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:41:58,442.442 INFO    ] time= 27/06/2026 01:41:58
[2026-06-27 01:41:58,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:41:58,472.472 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:41:58,539.539 INFO    ] No existing commands found in stream
[2026-06-27 01:42:03,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:42:03,552.552 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-27 01:42:04,947.947 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 01:42:04,949.949 INFO    ] Checking for system updates...
[2026-06-27 01:42:04,972.972 INFO    ] 200
[2026-06-27 01:42:04,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:42:05,007.007 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:42:05,008.008 INFO    ] No update needed
[2026-06-27 01:42:05,009.009 INFO    ] Checking for camera pi updates...
[2026-06-27 01:42:05,029.029 INFO    ] 200
[2026-06-27 01:42:05,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:42:05,054.054 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:42:05,105.105 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:42:05,107.107 INFO    ] No camera update needed
[2026-06-27 01:42:05,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:42:05,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:42:05,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:42:05,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:42:07,155.155 INFO    ] ================================================
[2026-06-27 01:42:07,170.170 INFO    ] Launching Daemon at Sat Jun 27 01:42:07 IST 2026
[2026-06-27 01:42:07,180.180 INFO    ] ================================================
[2026-06-27 01:42:07,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:42:07
[2026-06-27 01:42:07,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:42:07,987.987 INFO    ] Initializing speech engine...
[2026-06-27 01:42:07,995.995 INFO    ] 2026-06-27 01:42:07
[2026-06-27 01:42:08,202.202 INFO    ] 2026-06-27 01:42:08
[2026-06-27 01:42:08,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:42:08,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:42:08,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:42:08,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:42:08,611.611 INFO    ] time= 27/06/2026 01:42:08
[2026-06-27 01:42:08,640.640 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:42:08,650.650 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:42:08,722.722 INFO    ] No existing commands found in stream
[2026-06-27 01:42:13,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:42:13,734.734 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-27 01:42:16,348.348 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 01:42:16,349.349 INFO    ] Checking for system updates...
[2026-06-27 01:42:16,370.370 INFO    ] 200
[2026-06-27 01:42:16,372.372 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:42:16,402.402 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:42:16,403.403 INFO    ] No update needed
[2026-06-27 01:42:16,405.405 INFO    ] Checking for camera pi updates...
[2026-06-27 01:42:16,424.424 INFO    ] 200
[2026-06-27 01:42:16,426.426 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:42:16,449.449 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:42:16,493.493 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:42:16,494.494 INFO    ] No camera update needed
[2026-06-27 01:42:16,495.495 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:42:16,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:42:16,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:42:16,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:42:18,541.541 INFO    ] ================================================
[2026-06-27 01:42:18,557.557 INFO    ] Launching Daemon at Sat Jun 27 01:42:18 IST 2026
[2026-06-27 01:42:18,567.567 INFO    ] ================================================
[2026-06-27 01:42:18,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:42:18
[2026-06-27 01:42:19,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:42:19,362.362 INFO    ] Initializing speech engine...
[2026-06-27 01:42:19,370.370 INFO    ] 2026-06-27 01:42:19
[2026-06-27 01:42:19,577.577 INFO    ] 2026-06-27 01:42:19
[2026-06-27 01:42:19,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:42:19,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:42:19,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:42:19,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:42:19,992.992 INFO    ] time= 27/06/2026 01:42:19
[2026-06-27 01:42:20,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:42:20,024.024 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:42:20,115.115 INFO    ] No existing commands found in stream
[2026-06-27 01:42:25,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:42:25,142.142 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-27 01:42:25,845.845 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 01:42:25,846.846 INFO    ] Checking for system updates...
[2026-06-27 01:42:25,867.867 INFO    ] 200
[2026-06-27 01:42:25,868.868 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:42:25,901.901 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:42:25,902.902 INFO    ] No update needed
[2026-06-27 01:42:25,904.904 INFO    ] Checking for camera pi updates...
[2026-06-27 01:42:25,926.926 INFO    ] 200
[2026-06-27 01:42:25,927.927 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:42:25,954.954 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:42:26,007.007 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:42:26,008.008 INFO    ] No camera update needed
[2026-06-27 01:42:26,009.009 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:42:26,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:42:26,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:42:26,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:42:28,055.055 INFO    ] ================================================
[2026-06-27 01:42:28,071.071 INFO    ] Launching Daemon at Sat Jun 27 01:42:28 IST 2026
[2026-06-27 01:42:28,081.081 INFO    ] ================================================
[2026-06-27 01:42:28,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:42:28
[2026-06-27 01:42:28,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:42:28,891.891 INFO    ] Initializing speech engine...
[2026-06-27 01:42:28,900.900 INFO    ] 2026-06-27 01:42:28
[2026-06-27 01:42:29,094.094 INFO    ] 2026-06-27 01:42:29
[2026-06-27 01:42:29,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:42:30,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:42:30,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:42:30,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:42:30,440.440 INFO    ] time= 27/06/2026 01:42:30
[2026-06-27 01:42:30,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:42:30,449.449 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:42:30,548.548 INFO    ] No existing commands found in stream
[2026-06-27 01:42:35,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:42:35,560.560 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-27 01:42:36,351.351 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:42:36,352.352 INFO    ] Checking for system updates...
[2026-06-27 01:42:36,375.375 INFO    ] 200
[2026-06-27 01:42:36,376.376 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:42:36,407.407 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:42:36,408.408 INFO    ] No update needed
[2026-06-27 01:42:36,410.410 INFO    ] Checking for camera pi updates...
[2026-06-27 01:42:36,429.429 INFO    ] 200
[2026-06-27 01:42:36,431.431 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:42:36,455.455 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:42:36,497.497 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:42:36,499.499 INFO    ] No camera update needed
[2026-06-27 01:42:36,500.500 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:42:36,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:42:36,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:42:36,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:42:38,545.545 INFO    ] ================================================
[2026-06-27 01:42:38,561.561 INFO    ] Launching Daemon at Sat Jun 27 01:42:38 IST 2026
[2026-06-27 01:42:38,572.572 INFO    ] ================================================
[2026-06-27 01:42:38,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:42:38
[2026-06-27 01:42:39,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:42:39,446.446 INFO    ] Initializing speech engine...
[2026-06-27 01:42:39,459.459 INFO    ] 2026-06-27 01:42:39
[2026-06-27 01:42:39,672.672 INFO    ] 2026-06-27 01:42:39
[2026-06-27 01:42:39,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:42:39,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:42:39,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:42:40,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:42:40,107.107 INFO    ] time= 27/06/2026 01:42:40
[2026-06-27 01:42:40,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:42:40,123.123 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:42:40,191.191 INFO    ] No existing commands found in stream
[2026-06-27 01:42:45,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:42:45,209.209 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-27 01:42:49,261.261 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 01:42:49,263.263 INFO    ] Checking for system updates...
[2026-06-27 01:42:49,284.284 INFO    ] 200
[2026-06-27 01:42:49,285.285 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:42:49,316.316 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:42:49,317.317 INFO    ] No update needed
[2026-06-27 01:42:49,319.319 INFO    ] Checking for camera pi updates...
[2026-06-27 01:42:49,342.342 INFO    ] 200
[2026-06-27 01:42:49,343.343 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:42:49,367.367 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:42:49,408.408 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:42:49,409.409 INFO    ] No camera update needed
[2026-06-27 01:42:49,411.411 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:42:49,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:42:49,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:42:49,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:42:51,458.458 INFO    ] ================================================
[2026-06-27 01:42:51,473.473 INFO    ] Launching Daemon at Sat Jun 27 01:42:51 IST 2026
[2026-06-27 01:42:51,484.484 INFO    ] ================================================
[2026-06-27 01:42:51,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:42:51
[2026-06-27 01:42:52,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:42:52,307.307 INFO    ] Initializing speech engine...
[2026-06-27 01:42:52,312.312 INFO    ] 2026-06-27 01:42:52
[2026-06-27 01:42:52,517.517 INFO    ] 2026-06-27 01:42:52
[2026-06-27 01:42:52,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:42:52,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:42:52,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:42:52,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:42:52,936.936 INFO    ] time= 27/06/2026 01:42:52
[2026-06-27 01:42:52,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:42:52,966.966 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:42:53,033.033 INFO    ] No existing commands found in stream
[2026-06-27 01:42:58,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:42:58,050.050 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-27 01:43:00,262.262 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 01:43:00,263.263 INFO    ] Checking for system updates...
[2026-06-27 01:43:00,287.287 INFO    ] 200
[2026-06-27 01:43:00,288.288 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:43:00,318.318 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:43:00,320.320 INFO    ] No update needed
[2026-06-27 01:43:00,321.321 INFO    ] Checking for camera pi updates...
[2026-06-27 01:43:00,341.341 INFO    ] 200
[2026-06-27 01:43:00,342.342 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:43:00,369.369 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:43:00,415.415 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:43:00,416.416 INFO    ] No camera update needed
[2026-06-27 01:43:00,417.417 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:43:00,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:43:00,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:43:00,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:43:02,449.449 INFO    ] ================================================
[2026-06-27 01:43:02,458.458 INFO    ] Launching Daemon at Sat Jun 27 01:43:02 IST 2026
[2026-06-27 01:43:02,463.463 INFO    ] ================================================
[2026-06-27 01:43:02,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:43:02
[2026-06-27 01:43:03,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:43:03,254.254 INFO    ] Initializing speech engine...
[2026-06-27 01:43:03,258.258 INFO    ] 2026-06-27 01:43:03
[2026-06-27 01:43:03,473.473 INFO    ] 2026-06-27 01:43:03
[2026-06-27 01:43:03,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:43:03,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:43:03,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:43:03,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:43:03,887.887 INFO    ] time= 27/06/2026 01:43:03
[2026-06-27 01:43:03,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:43:03,915.915 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:43:03,987.987 INFO    ] No existing commands found in stream
[2026-06-27 01:43:08,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:43:08,998.998 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-27 01:43:11,333.333 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 01:43:11,335.335 INFO    ] Checking for system updates...
[2026-06-27 01:43:11,355.355 INFO    ] 200
[2026-06-27 01:43:11,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:43:11,387.387 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:43:11,388.388 INFO    ] No update needed
[2026-06-27 01:43:11,390.390 INFO    ] Checking for camera pi updates...
[2026-06-27 01:43:11,409.409 INFO    ] 200
[2026-06-27 01:43:11,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:43:11,434.434 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:43:11,476.476 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:43:11,477.477 INFO    ] No camera update needed
[2026-06-27 01:43:11,478.478 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:43:11,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:43:11,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:43:11,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:43:13,524.524 INFO    ] ================================================
[2026-06-27 01:43:13,539.539 INFO    ] Launching Daemon at Sat Jun 27 01:43:13 IST 2026
[2026-06-27 01:43:13,550.550 INFO    ] ================================================
[2026-06-27 01:43:13,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:43:13
[2026-06-27 01:43:14,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:43:14,349.349 INFO    ] Initializing speech engine...
[2026-06-27 01:43:14,359.359 INFO    ] 2026-06-27 01:43:14
[2026-06-27 01:43:14,564.564 INFO    ] 2026-06-27 01:43:14
[2026-06-27 01:43:14,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:43:14,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:43:14,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:43:14,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:43:14,980.980 INFO    ] time= 27/06/2026 01:43:14
[2026-06-27 01:43:15,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:43:15,019.019 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:43:15,110.110 INFO    ] No existing commands found in stream
[2026-06-27 01:43:20,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:43:20,127.127 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-27 01:43:23,039.039 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:43:23,041.041 INFO    ] Checking for system updates...
[2026-06-27 01:43:23,064.064 INFO    ] 200
[2026-06-27 01:43:23,065.065 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:43:23,095.095 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:43:23,097.097 INFO    ] No update needed
[2026-06-27 01:43:23,098.098 INFO    ] Checking for camera pi updates...
[2026-06-27 01:43:23,119.119 INFO    ] 200
[2026-06-27 01:43:23,120.120 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:43:23,143.143 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:43:23,196.196 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:43:23,198.198 INFO    ] No camera update needed
[2026-06-27 01:43:23,199.199 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:43:23,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:43:23,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:43:23,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:43:25,245.245 INFO    ] ================================================
[2026-06-27 01:43:25,260.260 INFO    ] Launching Daemon at Sat Jun 27 01:43:25 IST 2026
[2026-06-27 01:43:25,271.271 INFO    ] ================================================
[2026-06-27 01:43:25,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:43:25
[2026-06-27 01:43:25,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:43:26,041.041 INFO    ] Initializing speech engine...
[2026-06-27 01:43:26,044.044 INFO    ] 2026-06-27 01:43:26
[2026-06-27 01:43:26,271.271 INFO    ] 2026-06-27 01:43:26
[2026-06-27 01:43:26,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:43:26,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:43:26,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:43:26,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:43:26,702.702 INFO    ] time= 27/06/2026 01:43:26
[2026-06-27 01:43:26,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:43:26,741.741 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:43:26,840.840 INFO    ] No existing commands found in stream
[2026-06-27 01:43:31,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:43:31,855.855 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-27 01:43:32,889.889 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:43:32,891.891 INFO    ] Checking for system updates...
[2026-06-27 01:43:32,912.912 INFO    ] 200
[2026-06-27 01:43:32,914.914 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:43:32,946.946 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:43:32,948.948 INFO    ] No update needed
[2026-06-27 01:43:32,949.949 INFO    ] Checking for camera pi updates...
[2026-06-27 01:43:32,969.969 INFO    ] 200
[2026-06-27 01:43:32,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:43:32,995.995 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:43:33,021.021 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:43:33,022.022 INFO    ] No camera update needed
[2026-06-27 01:43:33,023.023 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:43:33,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:43:33,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:43:33,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:43:35,070.070 INFO    ] ================================================
[2026-06-27 01:43:35,085.085 INFO    ] Launching Daemon at Sat Jun 27 01:43:35 IST 2026
[2026-06-27 01:43:35,095.095 INFO    ] ================================================
[2026-06-27 01:43:35,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:43:35
[2026-06-27 01:43:35,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:43:35,861.861 INFO    ] Initializing speech engine...
[2026-06-27 01:43:35,866.866 INFO    ] 2026-06-27 01:43:35
[2026-06-27 01:43:36,084.084 INFO    ] 2026-06-27 01:43:36
[2026-06-27 01:43:36,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:43:36,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:43:36,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:43:36,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:43:36,493.493 INFO    ] time= 27/06/2026 01:43:36
[2026-06-27 01:43:36,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:43:36,539.539 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:43:36,608.608 INFO    ] No existing commands found in stream
[2026-06-27 01:43:41,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:43:41,619.619 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-27 01:43:43,343.343 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:43:43,345.345 INFO    ] Checking for system updates...
[2026-06-27 01:43:43,365.365 INFO    ] 200
[2026-06-27 01:43:43,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:43:43,397.397 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:43:43,398.398 INFO    ] No update needed
[2026-06-27 01:43:43,399.399 INFO    ] Checking for camera pi updates...
[2026-06-27 01:43:43,419.419 INFO    ] 200
[2026-06-27 01:43:43,420.420 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:43:43,445.445 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:43:43,487.487 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:43:43,489.489 INFO    ] No camera update needed
[2026-06-27 01:43:43,490.490 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:43:43,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:43:43,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:43:43,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:43:45,535.535 INFO    ] ================================================
[2026-06-27 01:43:45,550.550 INFO    ] Launching Daemon at Sat Jun 27 01:43:45 IST 2026
[2026-06-27 01:43:45,561.561 INFO    ] ================================================
[2026-06-27 01:43:45,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:43:45
[2026-06-27 01:43:46,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:43:46,383.383 INFO    ] Initializing speech engine...
[2026-06-27 01:43:46,398.398 INFO    ] 2026-06-27 01:43:46
[2026-06-27 01:43:46,605.605 INFO    ] 2026-06-27 01:43:46
[2026-06-27 01:43:46,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:43:46,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:43:46,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:43:46,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:43:47,023.023 INFO    ] time= 27/06/2026 01:43:46
[2026-06-27 01:43:47,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:43:47,053.053 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:43:47,112.112 INFO    ] No existing commands found in stream
[2026-06-27 01:43:52,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:43:52,125.125 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-27 01:43:56,306.306 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 01:43:56,307.307 INFO    ] Checking for system updates...
[2026-06-27 01:43:56,329.329 INFO    ] 200
[2026-06-27 01:43:56,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:43:56,365.365 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:43:56,366.366 INFO    ] No update needed
[2026-06-27 01:43:56,367.367 INFO    ] Checking for camera pi updates...
[2026-06-27 01:43:56,387.387 INFO    ] 200
[2026-06-27 01:43:56,389.389 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:43:56,412.412 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:43:56,554.554 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:43:56,556.556 INFO    ] No camera update needed
[2026-06-27 01:43:56,557.557 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:43:56,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:43:56,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:43:56,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:43:58,602.602 INFO    ] ================================================
[2026-06-27 01:43:58,617.617 INFO    ] Launching Daemon at Sat Jun 27 01:43:58 IST 2026
[2026-06-27 01:43:58,628.628 INFO    ] ================================================
[2026-06-27 01:43:58,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:43:58
[2026-06-27 01:43:59,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:43:59,423.423 INFO    ] Initializing speech engine...
[2026-06-27 01:43:59,427.427 INFO    ] 2026-06-27 01:43:59
[2026-06-27 01:43:59,632.632 INFO    ] 2026-06-27 01:43:59
[2026-06-27 01:43:59,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:44:00,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:44:00,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:44:00,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:44:00,191.191 INFO    ] time= 27/06/2026 01:44:00
[2026-06-27 01:44:00,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:44:00,197.197 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:44:00,267.267 INFO    ] No existing commands found in stream
[2026-06-27 01:44:05,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:44:05,280.280 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-27 01:44:05,719.719 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 01:44:05,721.721 INFO    ] Checking for system updates...
[2026-06-27 01:44:05,742.742 INFO    ] 200
[2026-06-27 01:44:05,744.744 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:44:05,775.775 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:44:05,776.776 INFO    ] No update needed
[2026-06-27 01:44:05,777.777 INFO    ] Checking for camera pi updates...
[2026-06-27 01:44:05,797.797 INFO    ] 200
[2026-06-27 01:44:05,798.798 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:44:05,824.824 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:44:05,866.866 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:44:05,867.867 INFO    ] No camera update needed
[2026-06-27 01:44:05,869.869 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:44:05,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:44:05,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:44:05,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:44:07,917.917 INFO    ] ================================================
[2026-06-27 01:44:07,932.932 INFO    ] Launching Daemon at Sat Jun 27 01:44:07 IST 2026
[2026-06-27 01:44:07,943.943 INFO    ] ================================================
[2026-06-27 01:44:08,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:44:08
[2026-06-27 01:44:08,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:44:08,776.776 INFO    ] Initializing speech engine...
[2026-06-27 01:44:08,781.781 INFO    ] 2026-06-27 01:44:08
[2026-06-27 01:44:08,985.985 INFO    ] 2026-06-27 01:44:08
[2026-06-27 01:44:09,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:44:09,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:44:09,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:44:09,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:44:09,402.402 INFO    ] time= 27/06/2026 01:44:09
[2026-06-27 01:44:09,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:44:09,429.429 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:44:09,496.496 INFO    ] No existing commands found in stream
[2026-06-27 01:44:14,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:44:14,508.508 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-27 01:44:18,825.825 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 01:44:18,827.827 INFO    ] Checking for system updates...
[2026-06-27 01:44:18,849.849 INFO    ] 200
[2026-06-27 01:44:18,851.851 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:44:18,881.881 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:44:18,882.882 INFO    ] No update needed
[2026-06-27 01:44:18,883.883 INFO    ] Checking for camera pi updates...
[2026-06-27 01:44:18,905.905 INFO    ] 200
[2026-06-27 01:44:18,907.907 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:44:18,931.931 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:44:18,972.972 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:44:18,974.974 INFO    ] No camera update needed
[2026-06-27 01:44:18,975.975 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:44:18,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:44:18,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:44:18,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:44:21,022.022 INFO    ] ================================================
[2026-06-27 01:44:21,038.038 INFO    ] Launching Daemon at Sat Jun 27 01:44:21 IST 2026
[2026-06-27 01:44:21,049.049 INFO    ] ================================================
[2026-06-27 01:44:21,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:44:21
[2026-06-27 01:44:21,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:44:21,836.836 INFO    ] Initializing speech engine...
[2026-06-27 01:44:21,840.840 INFO    ] 2026-06-27 01:44:21
[2026-06-27 01:44:22,059.059 INFO    ] 2026-06-27 01:44:22
[2026-06-27 01:44:22,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:44:22,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:44:22,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:44:22,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:44:22,453.453 INFO    ] time= 27/06/2026 01:44:22
[2026-06-27 01:44:22,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:44:22,509.509 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:44:22,581.581 INFO    ] No existing commands found in stream
[2026-06-27 01:44:27,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:44:27,593.593 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-27 01:44:29,283.283 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 01:44:29,284.284 INFO    ] Checking for system updates...
[2026-06-27 01:44:29,306.306 INFO    ] 200
[2026-06-27 01:44:29,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:44:29,341.341 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:44:29,343.343 INFO    ] No update needed
[2026-06-27 01:44:29,344.344 INFO    ] Checking for camera pi updates...
[2026-06-27 01:44:29,365.365 INFO    ] 200
[2026-06-27 01:44:29,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:44:29,391.391 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:44:29,443.443 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:44:29,445.445 INFO    ] No camera update needed
[2026-06-27 01:44:29,446.446 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:44:29,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:44:29,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:44:29,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:44:31,486.486 INFO    ] ================================================
[2026-06-27 01:44:31,496.496 INFO    ] Launching Daemon at Sat Jun 27 01:44:31 IST 2026
[2026-06-27 01:44:31,502.502 INFO    ] ================================================
[2026-06-27 01:44:31,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:44:31
[2026-06-27 01:44:32,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:44:32,373.373 INFO    ] Initializing speech engine...
[2026-06-27 01:44:32,380.380 INFO    ] 2026-06-27 01:44:32
[2026-06-27 01:44:32,589.589 INFO    ] 2026-06-27 01:44:32
[2026-06-27 01:44:32,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:44:32,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:44:32,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:44:32,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:44:33,015.015 INFO    ] time= 27/06/2026 01:44:32
[2026-06-27 01:44:33,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:44:33,046.046 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:44:33,114.114 INFO    ] No existing commands found in stream
[2026-06-27 01:44:38,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:44:38,127.127 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-27 01:44:42,382.382 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 01:44:42,383.383 INFO    ] Checking for system updates...
[2026-06-27 01:44:42,405.405 INFO    ] 200
[2026-06-27 01:44:42,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:44:42,437.437 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:44:42,439.439 INFO    ] No update needed
[2026-06-27 01:44:42,440.440 INFO    ] Checking for camera pi updates...
[2026-06-27 01:44:42,460.460 INFO    ] 200
[2026-06-27 01:44:42,461.461 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:44:42,485.485 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:44:42,536.536 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:44:42,537.537 INFO    ] No camera update needed
[2026-06-27 01:44:42,538.538 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:44:42,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:44:42,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:44:42,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:44:44,584.584 INFO    ] ================================================
[2026-06-27 01:44:44,599.599 INFO    ] Launching Daemon at Sat Jun 27 01:44:44 IST 2026
[2026-06-27 01:44:44,609.609 INFO    ] ================================================
[2026-06-27 01:44:44,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:44:44
[2026-06-27 01:44:45,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:44:45,465.465 INFO    ] Initializing speech engine...
[2026-06-27 01:44:45,470.470 INFO    ] 2026-06-27 01:44:45
[2026-06-27 01:44:45,677.677 INFO    ] 2026-06-27 01:44:45
[2026-06-27 01:44:45,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:44:45,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:44:45,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:44:46,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:44:46,094.094 INFO    ] time= 27/06/2026 01:44:46
[2026-06-27 01:44:46,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:44:46,124.124 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:44:46,191.191 INFO    ] No existing commands found in stream
[2026-06-27 01:44:51,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:44:51,209.209 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-27 01:44:54,674.674 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 01:44:54,676.676 INFO    ] Checking for system updates...
[2026-06-27 01:44:54,699.699 INFO    ] 200
[2026-06-27 01:44:54,700.700 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:44:54,733.733 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:44:54,734.734 INFO    ] No update needed
[2026-06-27 01:44:54,736.736 INFO    ] Checking for camera pi updates...
[2026-06-27 01:44:54,756.756 INFO    ] 200
[2026-06-27 01:44:54,758.758 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:44:54,782.782 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:44:54,814.814 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:44:54,816.816 INFO    ] No camera update needed
[2026-06-27 01:44:54,817.817 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:44:54,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:44:54,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:44:54,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:44:56,862.862 INFO    ] ================================================
[2026-06-27 01:44:56,878.878 INFO    ] Launching Daemon at Sat Jun 27 01:44:56 IST 2026
[2026-06-27 01:44:56,888.888 INFO    ] ================================================
[2026-06-27 01:44:57,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:44:57
[2026-06-27 01:44:57,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:44:57,722.722 INFO    ] Initializing speech engine...
[2026-06-27 01:44:57,733.733 INFO    ] 2026-06-27 01:44:57
[2026-06-27 01:44:57,944.944 INFO    ] 2026-06-27 01:44:57
[2026-06-27 01:44:57,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:44:58,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:44:58,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:44:58,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:44:58,372.372 INFO    ] time= 27/06/2026 01:44:58
[2026-06-27 01:44:58,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:44:58,403.403 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:44:58,469.469 INFO    ] No existing commands found in stream
[2026-06-27 01:45:03,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:45:03,483.483 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-27 01:45:07,036.036 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 01:45:07,038.038 INFO    ] Checking for system updates...
[2026-06-27 01:45:07,060.060 INFO    ] 200
[2026-06-27 01:45:07,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:45:07,092.092 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:45:07,094.094 INFO    ] No update needed
[2026-06-27 01:45:07,095.095 INFO    ] Checking for camera pi updates...
[2026-06-27 01:45:07,116.116 INFO    ] 200
[2026-06-27 01:45:07,118.118 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:45:07,144.144 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:45:07,189.189 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:45:07,191.191 INFO    ] No camera update needed
[2026-06-27 01:45:07,192.192 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:45:07,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:45:07,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:45:07,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:45:09,239.239 INFO    ] ================================================
[2026-06-27 01:45:09,255.255 INFO    ] Launching Daemon at Sat Jun 27 01:45:09 IST 2026
[2026-06-27 01:45:09,266.266 INFO    ] ================================================
[2026-06-27 01:45:09,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:45:09
[2026-06-27 01:45:09,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:45:10,112.112 INFO    ] Initializing speech engine...
[2026-06-27 01:45:10,119.119 INFO    ] 2026-06-27 01:45:10
[2026-06-27 01:45:10,327.327 INFO    ] 2026-06-27 01:45:10
[2026-06-27 01:45:10,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:45:10,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:45:10,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:45:10,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:45:10,753.753 INFO    ] time= 27/06/2026 01:45:10
[2026-06-27 01:45:10,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:45:10,783.783 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:45:10,850.850 INFO    ] No existing commands found in stream
[2026-06-27 01:45:15,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:45:15,868.868 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-27 01:45:18,029.029 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 01:45:18,030.030 INFO    ] Checking for system updates...
[2026-06-27 01:45:18,053.053 INFO    ] 200
[2026-06-27 01:45:18,055.055 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:45:18,088.088 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:45:18,089.089 INFO    ] No update needed
[2026-06-27 01:45:18,091.091 INFO    ] Checking for camera pi updates...
[2026-06-27 01:45:18,110.110 INFO    ] 200
[2026-06-27 01:45:18,112.112 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:45:18,135.135 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:45:18,180.180 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:45:18,181.181 INFO    ] No camera update needed
[2026-06-27 01:45:18,183.183 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:45:18,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:45:18,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:45:18,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:45:20,228.228 INFO    ] ================================================
[2026-06-27 01:45:20,243.243 INFO    ] Launching Daemon at Sat Jun 27 01:45:20 IST 2026
[2026-06-27 01:45:20,255.255 INFO    ] ================================================
[2026-06-27 01:45:20,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:45:20
[2026-06-27 01:45:20,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:45:21,071.071 INFO    ] Initializing speech engine...
[2026-06-27 01:45:21,081.081 INFO    ] 2026-06-27 01:45:21
[2026-06-27 01:45:21,287.287 INFO    ] 2026-06-27 01:45:21
[2026-06-27 01:45:21,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:45:21,500.500 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:45:21,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:45:21,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:45:21,707.707 INFO    ] time= 27/06/2026 01:45:21
[2026-06-27 01:45:21,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:45:21,736.736 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:45:21,803.803 INFO    ] No existing commands found in stream
[2026-06-27 01:45:26,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:45:26,820.820 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-27 01:45:30,377.377 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 01:45:30,379.379 INFO    ] Checking for system updates...
[2026-06-27 01:45:30,400.400 INFO    ] 200
[2026-06-27 01:45:30,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:45:30,434.434 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:45:30,436.436 INFO    ] No update needed
[2026-06-27 01:45:30,437.437 INFO    ] Checking for camera pi updates...
[2026-06-27 01:45:30,456.456 INFO    ] 200
[2026-06-27 01:45:30,458.458 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:45:30,481.481 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:45:30,523.523 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:45:30,524.524 INFO    ] No camera update needed
[2026-06-27 01:45:30,526.526 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:45:30,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:45:30,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:45:30,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:45:32,564.564 INFO    ] ================================================
[2026-06-27 01:45:32,573.573 INFO    ] Launching Daemon at Sat Jun 27 01:45:32 IST 2026
[2026-06-27 01:45:32,579.579 INFO    ] ================================================
[2026-06-27 01:45:32,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:45:32
[2026-06-27 01:45:33,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:45:33,389.389 INFO    ] Initializing speech engine...
[2026-06-27 01:45:33,394.394 INFO    ] 2026-06-27 01:45:33
[2026-06-27 01:45:33,597.597 INFO    ] 2026-06-27 01:45:33
[2026-06-27 01:45:33,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:45:33,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:45:33,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:45:33,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:45:34,015.015 INFO    ] time= 27/06/2026 01:45:33
[2026-06-27 01:45:34,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:45:34,045.045 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:45:34,110.110 INFO    ] No existing commands found in stream
[2026-06-27 01:45:39,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:45:39,124.124 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-27 01:45:42,284.284 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 01:45:42,286.286 INFO    ] Checking for system updates...
[2026-06-27 01:45:42,309.309 INFO    ] 200
[2026-06-27 01:45:42,310.310 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:45:42,343.343 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:45:42,344.344 INFO    ] No update needed
[2026-06-27 01:45:42,346.346 INFO    ] Checking for camera pi updates...
[2026-06-27 01:45:42,365.365 INFO    ] 200
[2026-06-27 01:45:42,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:45:42,391.391 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:45:42,439.439 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:45:42,440.440 INFO    ] No camera update needed
[2026-06-27 01:45:42,442.442 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:45:42,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:45:42,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:45:42,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:45:44,489.489 INFO    ] ================================================
[2026-06-27 01:45:44,504.504 INFO    ] Launching Daemon at Sat Jun 27 01:45:44 IST 2026
[2026-06-27 01:45:44,515.515 INFO    ] ================================================
[2026-06-27 01:45:44,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:45:44
[2026-06-27 01:45:45,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:45:45,328.328 INFO    ] Initializing speech engine...
[2026-06-27 01:45:45,333.333 INFO    ] 2026-06-27 01:45:45
[2026-06-27 01:45:45,536.536 INFO    ] 2026-06-27 01:45:45
[2026-06-27 01:45:45,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:45:45,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:45:45,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:45:45,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:45:45,969.969 INFO    ] time= 27/06/2026 01:45:45
[2026-06-27 01:45:45,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:45:45,999.999 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:45:46,065.065 INFO    ] No existing commands found in stream
[2026-06-27 01:45:51,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:45:51,082.082 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-27 01:45:52,690.690 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 01:45:52,691.691 INFO    ] Checking for system updates...
[2026-06-27 01:45:52,713.713 INFO    ] 200
[2026-06-27 01:45:52,715.715 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:45:52,745.745 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:45:52,747.747 INFO    ] No update needed
[2026-06-27 01:45:52,748.748 INFO    ] Checking for camera pi updates...
[2026-06-27 01:45:52,767.767 INFO    ] 200
[2026-06-27 01:45:52,769.769 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:45:52,794.794 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:45:52,898.898 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:45:52,900.900 INFO    ] No camera update needed
[2026-06-27 01:45:52,901.901 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:45:52,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:45:52,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:45:52,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:45:54,947.947 INFO    ] ================================================
[2026-06-27 01:45:54,962.962 INFO    ] Launching Daemon at Sat Jun 27 01:45:54 IST 2026
[2026-06-27 01:45:54,972.972 INFO    ] ================================================
[2026-06-27 01:45:55,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:45:55
[2026-06-27 01:45:55,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:45:55,775.775 INFO    ] Initializing speech engine...
[2026-06-27 01:45:55,781.781 INFO    ] 2026-06-27 01:45:55
[2026-06-27 01:45:55,985.985 INFO    ] 2026-06-27 01:45:55
[2026-06-27 01:45:56,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:45:56,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:45:56,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:45:56,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:45:56,402.402 INFO    ] time= 27/06/2026 01:45:56
[2026-06-27 01:45:56,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:45:56,437.437 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:45:56,504.504 INFO    ] No existing commands found in stream
[2026-06-27 01:46:01,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:46:01,516.516 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-27 01:46:04,456.456 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 01:46:04,457.457 INFO    ] Checking for system updates...
[2026-06-27 01:46:04,480.480 INFO    ] 200
[2026-06-27 01:46:04,482.482 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:46:04,515.515 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:46:04,516.516 INFO    ] No update needed
[2026-06-27 01:46:04,517.517 INFO    ] Checking for camera pi updates...
[2026-06-27 01:46:04,537.537 INFO    ] 200
[2026-06-27 01:46:04,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:46:04,563.563 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:46:04,605.605 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:46:04,607.607 INFO    ] No camera update needed
[2026-06-27 01:46:04,608.608 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:46:04,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:46:04,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:46:04,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:46:06,654.654 INFO    ] ================================================
[2026-06-27 01:46:06,670.670 INFO    ] Launching Daemon at Sat Jun 27 01:46:06 IST 2026
[2026-06-27 01:46:06,681.681 INFO    ] ================================================
[2026-06-27 01:46:07,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:46:07
[2026-06-27 01:46:07,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:46:07,486.486 INFO    ] Initializing speech engine...
[2026-06-27 01:46:07,491.491 INFO    ] 2026-06-27 01:46:07
[2026-06-27 01:46:07,710.710 INFO    ] 2026-06-27 01:46:07
[2026-06-27 01:46:07,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:46:07,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:46:07,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:46:08,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:46:08,135.135 INFO    ] time= 27/06/2026 01:46:08
[2026-06-27 01:46:08,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:46:08,192.192 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:46:08,267.267 INFO    ] No existing commands found in stream
[2026-06-27 01:46:13,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:46:13,280.280 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-27 01:46:14,225.225 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 01:46:14,226.226 INFO    ] Checking for system updates...
[2026-06-27 01:46:14,248.248 INFO    ] 200
[2026-06-27 01:46:14,250.250 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:46:14,281.281 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:46:14,283.283 INFO    ] No update needed
[2026-06-27 01:46:14,285.285 INFO    ] Checking for camera pi updates...
[2026-06-27 01:46:14,306.306 INFO    ] 200
[2026-06-27 01:46:14,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:46:14,334.334 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:46:14,379.379 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:46:14,380.380 INFO    ] No camera update needed
[2026-06-27 01:46:14,381.381 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:46:14,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:46:14,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:46:14,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:46:16,428.428 INFO    ] ================================================
[2026-06-27 01:46:16,444.444 INFO    ] Launching Daemon at Sat Jun 27 01:46:16 IST 2026
[2026-06-27 01:46:16,455.455 INFO    ] ================================================
[2026-06-27 01:46:16,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:46:16
[2026-06-27 01:46:17,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:46:17,306.306 INFO    ] Initializing speech engine...
[2026-06-27 01:46:17,310.310 INFO    ] 2026-06-27 01:46:17
[2026-06-27 01:46:17,516.516 INFO    ] 2026-06-27 01:46:17
[2026-06-27 01:46:17,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:46:17,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:46:17,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:46:17,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:46:17,945.945 INFO    ] time= 27/06/2026 01:46:17
[2026-06-27 01:46:17,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:46:17,997.997 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:46:18,095.095 INFO    ] No existing commands found in stream
[2026-06-27 01:46:23,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:46:23,109.109 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-27 01:46:25,360.360 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 01:46:25,361.361 INFO    ] Checking for system updates...
[2026-06-27 01:46:25,383.383 INFO    ] 200
[2026-06-27 01:46:25,385.385 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:46:25,416.416 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:46:25,418.418 INFO    ] No update needed
[2026-06-27 01:46:25,419.419 INFO    ] Checking for camera pi updates...
[2026-06-27 01:46:25,439.439 INFO    ] 200
[2026-06-27 01:46:25,440.440 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:46:25,464.464 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:46:25,512.512 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:46:25,513.513 INFO    ] No camera update needed
[2026-06-27 01:46:25,515.515 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:46:25,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:46:25,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:46:25,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:46:27,562.562 INFO    ] ================================================
[2026-06-27 01:46:27,577.577 INFO    ] Launching Daemon at Sat Jun 27 01:46:27 IST 2026
[2026-06-27 01:46:27,588.588 INFO    ] ================================================
[2026-06-27 01:46:27,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:46:27
[2026-06-27 01:46:28,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:46:28,456.456 INFO    ] Initializing speech engine...
[2026-06-27 01:46:28,462.462 INFO    ] 2026-06-27 01:46:28
[2026-06-27 01:46:28,671.671 INFO    ] 2026-06-27 01:46:28
[2026-06-27 01:46:28,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:46:30,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:46:30,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:46:30,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:46:30,156.156 INFO    ] time= 27/06/2026 01:46:30
[2026-06-27 01:46:30,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:46:30,158.158 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:46:30,207.207 INFO    ] No existing commands found in stream
[2026-06-27 01:46:35,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:46:35,219.219 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-27 01:46:36,468.468 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 01:46:36,470.470 INFO    ] Checking for system updates...
[2026-06-27 01:46:36,494.494 INFO    ] 200
[2026-06-27 01:46:36,495.495 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:46:36,525.525 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:46:36,526.526 INFO    ] No update needed
[2026-06-27 01:46:36,528.528 INFO    ] Checking for camera pi updates...
[2026-06-27 01:46:36,549.549 INFO    ] 200
[2026-06-27 01:46:36,550.550 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:46:36,576.576 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:46:36,617.617 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:46:36,619.619 INFO    ] No camera update needed
[2026-06-27 01:46:36,620.620 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:46:36,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:46:36,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:46:36,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:46:38,667.667 INFO    ] ================================================
[2026-06-27 01:46:38,682.682 INFO    ] Launching Daemon at Sat Jun 27 01:46:38 IST 2026
[2026-06-27 01:46:38,693.693 INFO    ] ================================================
[2026-06-27 01:46:39,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:46:39
[2026-06-27 01:46:39,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:46:39,536.536 INFO    ] Initializing speech engine...
[2026-06-27 01:46:39,542.542 INFO    ] 2026-06-27 01:46:39
[2026-06-27 01:46:39,749.749 INFO    ] 2026-06-27 01:46:39
[2026-06-27 01:46:39,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:46:39,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:46:39,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:46:40,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:46:40,165.165 INFO    ] time= 27/06/2026 01:46:40
[2026-06-27 01:46:40,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:46:40,197.197 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:46:40,264.264 INFO    ] No existing commands found in stream
[2026-06-27 01:46:45,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:46:45,278.278 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-27 01:46:47,231.231 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:46:47,233.233 INFO    ] Checking for system updates...
[2026-06-27 01:46:47,255.255 INFO    ] 200
[2026-06-27 01:46:47,256.256 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:46:47,289.289 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:46:47,291.291 INFO    ] No update needed
[2026-06-27 01:46:47,292.292 INFO    ] Checking for camera pi updates...
[2026-06-27 01:46:47,311.311 INFO    ] 200
[2026-06-27 01:46:47,313.313 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:46:47,336.336 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:46:47,387.387 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:46:47,389.389 INFO    ] No camera update needed
[2026-06-27 01:46:47,390.390 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:46:47,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:46:47,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:46:47,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:46:49,435.435 INFO    ] ================================================
[2026-06-27 01:46:49,451.451 INFO    ] Launching Daemon at Sat Jun 27 01:46:49 IST 2026
[2026-06-27 01:46:49,462.462 INFO    ] ================================================
[2026-06-27 01:46:49,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:46:49
[2026-06-27 01:46:50,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:46:50,279.279 INFO    ] Initializing speech engine...
[2026-06-27 01:46:50,291.291 INFO    ] 2026-06-27 01:46:50
[2026-06-27 01:46:50,498.498 INFO    ] 2026-06-27 01:46:50
[2026-06-27 01:46:50,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:46:50,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:46:50,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:46:50,848.848 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:46:50,910.910 INFO    ] time= 27/06/2026 01:46:50
[2026-06-27 01:46:50,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:46:50,948.948 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:46:51,014.014 INFO    ] No existing commands found in stream
[2026-06-27 01:46:56,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:46:56,031.031 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-27 01:47:00,241.241 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 01:47:00,243.243 INFO    ] Checking for system updates...
[2026-06-27 01:47:00,264.264 INFO    ] 200
[2026-06-27 01:47:00,266.266 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:47:00,296.296 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:47:00,297.297 INFO    ] No update needed
[2026-06-27 01:47:00,299.299 INFO    ] Checking for camera pi updates...
[2026-06-27 01:47:00,320.320 INFO    ] 200
[2026-06-27 01:47:00,322.322 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:47:00,347.347 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:47:00,388.388 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:47:00,390.390 INFO    ] No camera update needed
[2026-06-27 01:47:00,391.391 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:47:00,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:47:00,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:47:00,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:47:02,426.426 INFO    ] ================================================
[2026-06-27 01:47:02,435.435 INFO    ] Launching Daemon at Sat Jun 27 01:47:02 IST 2026
[2026-06-27 01:47:02,441.441 INFO    ] ================================================
[2026-06-27 01:47:02,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:47:02
[2026-06-27 01:47:03,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:47:03,239.239 INFO    ] Initializing speech engine...
[2026-06-27 01:47:03,253.253 INFO    ] 2026-06-27 01:47:03
[2026-06-27 01:47:03,468.468 INFO    ] 2026-06-27 01:47:03
[2026-06-27 01:47:03,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:47:03,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:47:03,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:47:03,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:47:03,870.870 INFO    ] time= 27/06/2026 01:47:03
[2026-06-27 01:47:03,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:47:03,921.921 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:47:03,994.994 INFO    ] No existing commands found in stream
[2026-06-27 01:47:09,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:47:09,005.005 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-27 01:47:12,653.653 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 01:47:12,655.655 INFO    ] Checking for system updates...
[2026-06-27 01:47:12,677.677 INFO    ] 200
[2026-06-27 01:47:12,679.679 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:47:12,709.709 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:47:12,711.711 INFO    ] No update needed
[2026-06-27 01:47:12,712.712 INFO    ] Checking for camera pi updates...
[2026-06-27 01:47:12,731.731 INFO    ] 200
[2026-06-27 01:47:12,733.733 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:47:12,757.757 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:47:12,807.807 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:47:12,809.809 INFO    ] No camera update needed
[2026-06-27 01:47:12,810.810 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:47:12,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:47:12,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:47:12,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:47:14,857.857 INFO    ] ================================================
[2026-06-27 01:47:14,873.873 INFO    ] Launching Daemon at Sat Jun 27 01:47:14 IST 2026
[2026-06-27 01:47:14,885.885 INFO    ] ================================================
[2026-06-27 01:47:15,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:47:15
[2026-06-27 01:47:15,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:47:15,668.668 INFO    ] Initializing speech engine...
[2026-06-27 01:47:15,671.671 INFO    ] 2026-06-27 01:47:15
[2026-06-27 01:47:15,889.889 INFO    ] 2026-06-27 01:47:15
[2026-06-27 01:47:15,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:47:16,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:47:16,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:47:16,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:47:16,303.303 INFO    ] time= 27/06/2026 01:47:16
[2026-06-27 01:47:16,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:47:16,336.336 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:47:16,403.403 INFO    ] No existing commands found in stream
[2026-06-27 01:47:21,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:47:21,419.419 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-27 01:47:24,408.408 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 01:47:24,410.410 INFO    ] Checking for system updates...
[2026-06-27 01:47:24,431.431 INFO    ] 200
[2026-06-27 01:47:24,432.432 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:47:24,464.464 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:47:24,466.466 INFO    ] No update needed
[2026-06-27 01:47:24,467.467 INFO    ] Checking for camera pi updates...
[2026-06-27 01:47:24,487.487 INFO    ] 200
[2026-06-27 01:47:24,488.488 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:47:24,512.512 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:47:24,552.552 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:47:24,553.553 INFO    ] No camera update needed
[2026-06-27 01:47:24,555.555 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:47:24,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:47:24,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:47:24,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:47:26,604.604 INFO    ] ================================================
[2026-06-27 01:47:26,619.619 INFO    ] Launching Daemon at Sat Jun 27 01:47:26 IST 2026
[2026-06-27 01:47:26,631.631 INFO    ] ================================================
[2026-06-27 01:47:26,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:47:26
[2026-06-27 01:47:27,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:47:27,427.427 INFO    ] Initializing speech engine...
[2026-06-27 01:47:27,432.432 INFO    ] 2026-06-27 01:47:27
[2026-06-27 01:47:27,637.637 INFO    ] 2026-06-27 01:47:27
[2026-06-27 01:47:27,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:47:27,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:47:27,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:47:27,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:47:28,054.054 INFO    ] time= 27/06/2026 01:47:27
[2026-06-27 01:47:28,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:47:28,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:47:28,154.154 INFO    ] No existing commands found in stream
[2026-06-27 01:47:33,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:47:33,171.171 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-27 01:47:35,937.937 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:47:35,938.938 INFO    ] Checking for system updates...
[2026-06-27 01:47:35,959.959 INFO    ] 200
[2026-06-27 01:47:35,960.960 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:47:35,994.994 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:47:35,996.996 INFO    ] No update needed
[2026-06-27 01:47:35,997.997 INFO    ] Checking for camera pi updates...
[2026-06-27 01:47:36,018.018 INFO    ] 200
[2026-06-27 01:47:36,019.019 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:47:36,042.042 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:47:36,095.095 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:47:36,096.096 INFO    ] No camera update needed
[2026-06-27 01:47:36,097.097 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:47:36,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:47:36,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:47:36,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:47:38,144.144 INFO    ] ================================================
[2026-06-27 01:47:38,160.160 INFO    ] Launching Daemon at Sat Jun 27 01:47:38 IST 2026
[2026-06-27 01:47:38,172.172 INFO    ] ================================================
[2026-06-27 01:47:38,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:47:38
[2026-06-27 01:47:38,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:47:39,001.001 INFO    ] Initializing speech engine...
[2026-06-27 01:47:39,006.006 INFO    ] 2026-06-27 01:47:39
[2026-06-27 01:47:39,212.212 INFO    ] 2026-06-27 01:47:39
[2026-06-27 01:47:39,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:47:39,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:47:39,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:47:39,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:47:39,628.628 INFO    ] time= 27/06/2026 01:47:39
[2026-06-27 01:47:39,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:47:39,660.660 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:47:39,727.727 INFO    ] No existing commands found in stream
[2026-06-27 01:47:44,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:47:44,755.755 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-27 01:47:46,505.505 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 01:47:46,506.506 INFO    ] Checking for system updates...
[2026-06-27 01:47:46,528.528 INFO    ] 200
[2026-06-27 01:47:46,529.529 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:47:46,560.560 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:47:46,561.561 INFO    ] No update needed
[2026-06-27 01:47:46,562.562 INFO    ] Checking for camera pi updates...
[2026-06-27 01:47:46,582.582 INFO    ] 200
[2026-06-27 01:47:46,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:47:46,607.607 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:47:46,649.649 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:47:46,651.651 INFO    ] No camera update needed
[2026-06-27 01:47:46,652.652 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:47:46,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:47:46,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:47:46,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:47:48,699.699 INFO    ] ================================================
[2026-06-27 01:47:48,714.714 INFO    ] Launching Daemon at Sat Jun 27 01:47:48 IST 2026
[2026-06-27 01:47:48,725.725 INFO    ] ================================================
[2026-06-27 01:47:49,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:47:49
[2026-06-27 01:47:49,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:47:49,517.517 INFO    ] Initializing speech engine...
[2026-06-27 01:47:49,527.527 INFO    ] 2026-06-27 01:47:49
[2026-06-27 01:47:49,730.730 INFO    ] 2026-06-27 01:47:49
[2026-06-27 01:47:49,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:47:49,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:47:49,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:47:50,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:47:50,151.151 INFO    ] time= 27/06/2026 01:47:50
[2026-06-27 01:47:50,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:47:50,178.178 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:47:50,244.244 INFO    ] No existing commands found in stream
[2026-06-27 01:47:55,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:47:55,257.257 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-27 01:48:00,290.290 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:48:00,292.292 INFO    ] Checking for system updates...
[2026-06-27 01:48:00,313.313 INFO    ] 200
[2026-06-27 01:48:00,315.315 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:48:00,346.346 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:48:00,348.348 INFO    ] No update needed
[2026-06-27 01:48:00,349.349 INFO    ] Checking for camera pi updates...
[2026-06-27 01:48:00,369.369 INFO    ] 200
[2026-06-27 01:48:00,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:48:00,394.394 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:48:00,436.436 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:48:00,437.437 INFO    ] No camera update needed
[2026-06-27 01:48:00,438.438 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:48:00,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:48:00,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:48:00,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:48:02,479.479 INFO    ] ================================================
[2026-06-27 01:48:02,488.488 INFO    ] Launching Daemon at Sat Jun 27 01:48:02 IST 2026
[2026-06-27 01:48:02,494.494 INFO    ] ================================================
[2026-06-27 01:48:02,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:48:02
[2026-06-27 01:48:03,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:48:03,266.266 INFO    ] Initializing speech engine...
[2026-06-27 01:48:03,276.276 INFO    ] 2026-06-27 01:48:03
[2026-06-27 01:48:03,481.481 INFO    ] 2026-06-27 01:48:03
[2026-06-27 01:48:03,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:48:03,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:48:03,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:48:03,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:48:03,903.903 INFO    ] time= 27/06/2026 01:48:03
[2026-06-27 01:48:03,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:48:03,934.934 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:48:04,003.003 INFO    ] No existing commands found in stream
[2026-06-27 01:48:09,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:48:09,017.017 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-27 01:48:12,128.128 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 01:48:12,130.130 INFO    ] Checking for system updates...
[2026-06-27 01:48:12,151.151 INFO    ] 200
[2026-06-27 01:48:12,152.152 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:48:12,184.184 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:48:12,185.185 INFO    ] No update needed
[2026-06-27 01:48:12,186.186 INFO    ] Checking for camera pi updates...
[2026-06-27 01:48:12,207.207 INFO    ] 200
[2026-06-27 01:48:12,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:48:12,235.235 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:48:12,362.362 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:48:12,364.364 INFO    ] No camera update needed
[2026-06-27 01:48:12,365.365 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:48:12,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:48:12,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:48:12,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:48:14,415.415 INFO    ] ================================================
[2026-06-27 01:48:14,431.431 INFO    ] Launching Daemon at Sat Jun 27 01:48:14 IST 2026
[2026-06-27 01:48:14,442.442 INFO    ] ================================================
[2026-06-27 01:48:14,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:48:14
[2026-06-27 01:48:15,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:48:15,229.229 INFO    ] Initializing speech engine...
[2026-06-27 01:48:15,239.239 INFO    ] 2026-06-27 01:48:15
[2026-06-27 01:48:15,443.443 INFO    ] 2026-06-27 01:48:15
[2026-06-27 01:48:15,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:48:15,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:48:15,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:48:15,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:48:15,806.806 INFO    ] time= 27/06/2026 01:48:15
[2026-06-27 01:48:15,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:48:15,891.891 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:48:16,041.041 INFO    ] No existing commands found in stream
[2026-06-27 01:48:21,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:48:21,049.049 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-27 01:48:22,364.364 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 01:48:22,366.366 INFO    ] Checking for system updates...
[2026-06-27 01:48:22,387.387 INFO    ] 200
[2026-06-27 01:48:22,388.388 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:48:22,419.419 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:48:22,421.421 INFO    ] No update needed
[2026-06-27 01:48:22,422.422 INFO    ] Checking for camera pi updates...
[2026-06-27 01:48:22,443.443 INFO    ] 200
[2026-06-27 01:48:22,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:48:22,471.471 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:48:22,512.512 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:48:22,513.513 INFO    ] No camera update needed
[2026-06-27 01:48:22,515.515 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:48:22,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:48:22,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:48:22,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:48:24,562.562 INFO    ] ================================================
[2026-06-27 01:48:24,578.578 INFO    ] Launching Daemon at Sat Jun 27 01:48:24 IST 2026
[2026-06-27 01:48:24,589.589 INFO    ] ================================================
[2026-06-27 01:48:24,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:48:24
[2026-06-27 01:48:25,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:48:25,470.470 INFO    ] Initializing speech engine...
[2026-06-27 01:48:25,474.474 INFO    ] 2026-06-27 01:48:25
[2026-06-27 01:48:25,686.686 INFO    ] 2026-06-27 01:48:25
[2026-06-27 01:48:25,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:48:25,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:48:25,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:48:26,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:48:26,115.115 INFO    ] time= 27/06/2026 01:48:26
[2026-06-27 01:48:26,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:48:26,145.145 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:48:26,211.211 INFO    ] No existing commands found in stream
[2026-06-27 01:48:31,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:48:31,221.221 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-27 01:48:34,195.195 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 01:48:34,197.197 INFO    ] Checking for system updates...
[2026-06-27 01:48:34,218.218 INFO    ] 200
[2026-06-27 01:48:34,219.219 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:48:34,252.252 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:48:34,253.253 INFO    ] No update needed
[2026-06-27 01:48:34,255.255 INFO    ] Checking for camera pi updates...
[2026-06-27 01:48:34,274.274 INFO    ] 200
[2026-06-27 01:48:34,276.276 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:48:34,299.299 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:48:34,338.338 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:48:34,340.340 INFO    ] No camera update needed
[2026-06-27 01:48:34,341.341 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:48:34,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:48:34,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:48:34,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:48:36,388.388 INFO    ] ================================================
[2026-06-27 01:48:36,405.405 INFO    ] Launching Daemon at Sat Jun 27 01:48:36 IST 2026
[2026-06-27 01:48:36,417.417 INFO    ] ================================================
[2026-06-27 01:48:36,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:48:36
[2026-06-27 01:48:37,095.095 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:48:37,229.229 INFO    ] Initializing speech engine...
[2026-06-27 01:48:37,242.242 INFO    ] 2026-06-27 01:48:37
[2026-06-27 01:48:37,448.448 INFO    ] 2026-06-27 01:48:37
[2026-06-27 01:48:37,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:48:37,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:48:37,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:48:37,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:48:37,869.869 INFO    ] time= 27/06/2026 01:48:37
[2026-06-27 01:48:37,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:48:37,916.916 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:48:38,016.016 INFO    ] No existing commands found in stream
[2026-06-27 01:48:43,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:48:43,032.032 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-27 01:48:45,478.478 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 01:48:45,480.480 INFO    ] Checking for system updates...
[2026-06-27 01:48:45,501.501 INFO    ] 200
[2026-06-27 01:48:45,503.503 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:48:45,537.537 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:48:45,538.538 INFO    ] No update needed
[2026-06-27 01:48:45,539.539 INFO    ] Checking for camera pi updates...
[2026-06-27 01:48:45,562.562 INFO    ] 200
[2026-06-27 01:48:45,564.564 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:48:45,588.588 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:48:45,630.630 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:48:45,631.631 INFO    ] No camera update needed
[2026-06-27 01:48:45,633.633 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:48:45,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:48:45,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:48:45,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:48:47,684.684 INFO    ] ================================================
[2026-06-27 01:48:47,700.700 INFO    ] Launching Daemon at Sat Jun 27 01:48:47 IST 2026
[2026-06-27 01:48:47,712.712 INFO    ] ================================================
[2026-06-27 01:48:48,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:48:48
[2026-06-27 01:48:48,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:48:48,602.602 INFO    ] Initializing speech engine...
[2026-06-27 01:48:48,607.607 INFO    ] 2026-06-27 01:48:48
[2026-06-27 01:48:48,814.814 INFO    ] 2026-06-27 01:48:48
[2026-06-27 01:48:48,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:48:49,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:48:49,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:48:49,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:48:49,234.234 INFO    ] time= 27/06/2026 01:48:49
[2026-06-27 01:48:49,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:48:49,267.267 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:48:49,357.357 INFO    ] No existing commands found in stream
[2026-06-27 01:48:54,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:48:54,370.370 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-27 01:48:55,514.514 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 01:48:55,515.515 INFO    ] Checking for system updates...
[2026-06-27 01:48:55,537.537 INFO    ] 200
[2026-06-27 01:48:55,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:48:55,573.573 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:48:55,575.575 INFO    ] No update needed
[2026-06-27 01:48:55,576.576 INFO    ] Checking for camera pi updates...
[2026-06-27 01:48:55,596.596 INFO    ] 200
[2026-06-27 01:48:55,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:48:55,623.623 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:48:55,676.676 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:48:55,677.677 INFO    ] No camera update needed
[2026-06-27 01:48:55,678.678 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:48:55,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:48:55,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:48:55,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:48:57,726.726 INFO    ] ================================================
[2026-06-27 01:48:57,743.743 INFO    ] Launching Daemon at Sat Jun 27 01:48:57 IST 2026
[2026-06-27 01:48:57,754.754 INFO    ] ================================================
[2026-06-27 01:48:58,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:48:58
[2026-06-27 01:48:58,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:48:58,624.624 INFO    ] Initializing speech engine...
[2026-06-27 01:48:58,632.632 INFO    ] 2026-06-27 01:48:58
[2026-06-27 01:48:58,840.840 INFO    ] 2026-06-27 01:48:58
[2026-06-27 01:48:58,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:49:00,095.095 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:49:00,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:49:00,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:49:00,224.224 INFO    ] time= 27/06/2026 01:49:00
[2026-06-27 01:49:00,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:49:00,233.233 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:49:00,286.286 INFO    ] No existing commands found in stream
[2026-06-27 01:49:05,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:49:05,295.295 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-27 01:49:08,629.629 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:49:08,631.631 INFO    ] Checking for system updates...
[2026-06-27 01:49:08,657.657 INFO    ] 200
[2026-06-27 01:49:08,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:49:08,692.692 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:49:08,694.694 INFO    ] No update needed
[2026-06-27 01:49:08,696.696 INFO    ] Checking for camera pi updates...
[2026-06-27 01:49:08,723.723 INFO    ] 200
[2026-06-27 01:49:08,724.724 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:49:08,751.751 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:49:08,800.800 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:49:08,802.802 INFO    ] No camera update needed
[2026-06-27 01:49:08,803.803 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:49:08,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:49:08,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:49:08,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:49:10,853.853 INFO    ] ================================================
[2026-06-27 01:49:10,869.869 INFO    ] Launching Daemon at Sat Jun 27 01:49:10 IST 2026
[2026-06-27 01:49:10,880.880 INFO    ] ================================================
[2026-06-27 01:49:11,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:49:11
[2026-06-27 01:49:11,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:49:11,700.700 INFO    ] Initializing speech engine...
[2026-06-27 01:49:11,711.711 INFO    ] 2026-06-27 01:49:11
[2026-06-27 01:49:11,915.915 INFO    ] 2026-06-27 01:49:11
[2026-06-27 01:49:11,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:49:12,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:49:12,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:49:12,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:49:12,316.316 INFO    ] time= 27/06/2026 01:49:12
[2026-06-27 01:49:12,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:49:12,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:49:12,456.456 INFO    ] No existing commands found in stream
[2026-06-27 01:49:17,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:49:17,468.468 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-27 01:49:20,883.883 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 01:49:20,884.884 INFO    ] Checking for system updates...
[2026-06-27 01:49:20,906.906 INFO    ] 200
[2026-06-27 01:49:20,907.907 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:49:20,940.940 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:49:20,942.942 INFO    ] No update needed
[2026-06-27 01:49:20,943.943 INFO    ] Checking for camera pi updates...
[2026-06-27 01:49:20,965.965 INFO    ] 200
[2026-06-27 01:49:20,966.966 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:49:20,992.992 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:49:21,038.038 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:49:21,040.040 INFO    ] No camera update needed
[2026-06-27 01:49:21,041.041 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:49:21,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:49:21,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:49:21,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:49:23,089.089 INFO    ] ================================================
[2026-06-27 01:49:23,105.105 INFO    ] Launching Daemon at Sat Jun 27 01:49:23 IST 2026
[2026-06-27 01:49:23,116.116 INFO    ] ================================================
[2026-06-27 01:49:23,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:49:23
[2026-06-27 01:49:23,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:49:23,955.955 INFO    ] Initializing speech engine...
[2026-06-27 01:49:23,967.967 INFO    ] 2026-06-27 01:49:23
[2026-06-27 01:49:24,179.179 INFO    ] 2026-06-27 01:49:24
[2026-06-27 01:49:24,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:49:24,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:49:24,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:49:24,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:49:24,610.610 INFO    ] time= 27/06/2026 01:49:24
[2026-06-27 01:49:24,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:49:24,633.633 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:49:24,699.699 INFO    ] No existing commands found in stream
[2026-06-27 01:49:29,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:49:29,717.717 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-27 01:49:30,794.794 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 01:49:30,795.795 INFO    ] Checking for system updates...
[2026-06-27 01:49:30,818.818 INFO    ] 200
[2026-06-27 01:49:30,820.820 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:49:30,853.853 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:49:30,855.855 INFO    ] No update needed
[2026-06-27 01:49:30,856.856 INFO    ] Checking for camera pi updates...
[2026-06-27 01:49:30,877.877 INFO    ] 200
[2026-06-27 01:49:30,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:49:30,906.906 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:49:30,946.946 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:49:30,948.948 INFO    ] No camera update needed
[2026-06-27 01:49:30,949.949 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:49:30,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:49:30,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:49:30,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:49:32,982.982 INFO    ] ================================================
[2026-06-27 01:49:32,991.991 INFO    ] Launching Daemon at Sat Jun 27 01:49:32 IST 2026
[2026-06-27 01:49:32,997.997 INFO    ] ================================================
[2026-06-27 01:49:33,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:49:33
[2026-06-27 01:49:33,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:49:33,809.809 INFO    ] Initializing speech engine...
[2026-06-27 01:49:33,812.812 INFO    ] 2026-06-27 01:49:33
[2026-06-27 01:49:34,015.015 INFO    ] 2026-06-27 01:49:33
[2026-06-27 01:49:34,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:49:34,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:49:34,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:49:34,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:49:34,459.459 INFO    ] time= 27/06/2026 01:49:34
[2026-06-27 01:49:34,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:49:34,509.509 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:49:34,580.580 INFO    ] No existing commands found in stream
[2026-06-27 01:49:39,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:49:39,597.597 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-27 01:49:42,019.019 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 01:49:42,020.020 INFO    ] Checking for system updates...
[2026-06-27 01:49:42,041.041 INFO    ] 200
[2026-06-27 01:49:42,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:49:42,073.073 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:49:42,075.075 INFO    ] No update needed
[2026-06-27 01:49:42,076.076 INFO    ] Checking for camera pi updates...
[2026-06-27 01:49:42,097.097 INFO    ] 200
[2026-06-27 01:49:42,098.098 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:49:42,121.121 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:49:42,163.163 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:49:42,164.164 INFO    ] No camera update needed
[2026-06-27 01:49:42,166.166 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:49:42,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:49:42,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:49:42,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:49:44,218.218 INFO    ] ================================================
[2026-06-27 01:49:44,234.234 INFO    ] Launching Daemon at Sat Jun 27 01:49:44 IST 2026
[2026-06-27 01:49:44,244.244 INFO    ] ================================================
[2026-06-27 01:49:44,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:49:44
[2026-06-27 01:49:44,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:49:45,017.017 INFO    ] Initializing speech engine...
[2026-06-27 01:49:45,030.030 INFO    ] 2026-06-27 01:49:45
[2026-06-27 01:49:45,236.236 INFO    ] 2026-06-27 01:49:45
[2026-06-27 01:49:45,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:49:45,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:49:45,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:49:45,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:49:45,642.642 INFO    ] time= 27/06/2026 01:49:45
[2026-06-27 01:49:45,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:49:45,682.682 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:49:45,752.752 INFO    ] No existing commands found in stream
[2026-06-27 01:49:50,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:49:50,766.766 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-27 01:49:53,566.566 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 01:49:53,568.568 INFO    ] Checking for system updates...
[2026-06-27 01:49:53,589.589 INFO    ] 200
[2026-06-27 01:49:53,590.590 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:49:53,625.625 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:49:53,627.627 INFO    ] No update needed
[2026-06-27 01:49:53,628.628 INFO    ] Checking for camera pi updates...
[2026-06-27 01:49:53,647.647 INFO    ] 200
[2026-06-27 01:49:53,649.649 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:49:53,672.672 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:49:53,699.699 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:49:53,700.700 INFO    ] No camera update needed
[2026-06-27 01:49:53,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:49:53,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:49:53,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:49:53,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:49:55,752.752 INFO    ] ================================================
[2026-06-27 01:49:55,768.768 INFO    ] Launching Daemon at Sat Jun 27 01:49:55 IST 2026
[2026-06-27 01:49:55,780.780 INFO    ] ================================================
[2026-06-27 01:49:56,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:49:56
[2026-06-27 01:49:56,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:49:56,596.596 INFO    ] Initializing speech engine...
[2026-06-27 01:49:56,605.605 INFO    ] 2026-06-27 01:49:56
[2026-06-27 01:49:56,809.809 INFO    ] 2026-06-27 01:49:56
[2026-06-27 01:49:56,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:49:57,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:49:57,033.033 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:49:57,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:49:57,225.225 INFO    ] time= 27/06/2026 01:49:57
[2026-06-27 01:49:57,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:49:57,258.258 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:49:57,323.323 INFO    ] No existing commands found in stream
[2026-06-27 01:50:02,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:50:02,336.336 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-27 01:50:08,814.814 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:50:08,816.816 INFO    ] Checking for system updates...
[2026-06-27 01:50:08,838.838 INFO    ] 200
[2026-06-27 01:50:08,840.840 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:50:08,870.870 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:50:08,871.871 INFO    ] No update needed
[2026-06-27 01:50:08,873.873 INFO    ] Checking for camera pi updates...
[2026-06-27 01:50:08,892.892 INFO    ] 200
[2026-06-27 01:50:08,893.893 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:50:08,917.917 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:50:08,943.943 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:50:08,944.944 INFO    ] No camera update needed
[2026-06-27 01:50:08,945.945 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:50:08,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:50:08,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:50:08,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:50:10,993.993 INFO    ] ================================================
[2026-06-27 01:50:11,009.009 INFO    ] Launching Daemon at Sat Jun 27 01:50:11 IST 2026
[2026-06-27 01:50:11,020.020 INFO    ] ================================================
[2026-06-27 01:50:11,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:50:11
[2026-06-27 01:50:11,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:50:11,798.798 INFO    ] Initializing speech engine...
[2026-06-27 01:50:11,806.806 INFO    ] 2026-06-27 01:50:11
[2026-06-27 01:50:12,017.017 INFO    ] 2026-06-27 01:50:11
[2026-06-27 01:50:12,046.046 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:50:12,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:50:12,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:50:12,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:50:12,432.432 INFO    ] time= 27/06/2026 01:50:12
[2026-06-27 01:50:12,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:50:12,471.471 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:50:12,562.562 INFO    ] No existing commands found in stream
[2026-06-27 01:50:17,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:50:17,574.574 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-27 01:50:21,217.217 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 01:50:21,218.218 INFO    ] Checking for system updates...
[2026-06-27 01:50:21,239.239 INFO    ] 200
[2026-06-27 01:50:21,240.240 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:50:21,271.271 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:50:21,272.272 INFO    ] No update needed
[2026-06-27 01:50:21,274.274 INFO    ] Checking for camera pi updates...
[2026-06-27 01:50:21,295.295 INFO    ] 200
[2026-06-27 01:50:21,296.296 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:50:21,320.320 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:50:21,465.465 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:50:21,466.466 INFO    ] No camera update needed
[2026-06-27 01:50:21,467.467 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:50:21,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:50:21,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:50:21,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:50:23,514.514 INFO    ] ================================================
[2026-06-27 01:50:23,533.533 INFO    ] Launching Daemon at Sat Jun 27 01:50:23 IST 2026
[2026-06-27 01:50:23,546.546 INFO    ] ================================================
[2026-06-27 01:50:23,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:50:23
[2026-06-27 01:50:24,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:50:24,405.405 INFO    ] Initializing speech engine...
[2026-06-27 01:50:24,414.414 INFO    ] 2026-06-27 01:50:24
[2026-06-27 01:50:24,620.620 INFO    ] 2026-06-27 01:50:24
[2026-06-27 01:50:24,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:50:24,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:50:24,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:50:24,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:50:25,025.025 INFO    ] time= 27/06/2026 01:50:24
[2026-06-27 01:50:25,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:50:25,065.065 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:50:25,160.160 INFO    ] No existing commands found in stream
[2026-06-27 01:50:30,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:50:30,177.177 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-27 01:50:32,722.722 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:50:32,725.725 INFO    ] Checking for system updates...
[2026-06-27 01:50:32,750.750 INFO    ] 200
[2026-06-27 01:50:32,751.751 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:50:32,791.791 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:50:32,792.792 INFO    ] No update needed
[2026-06-27 01:50:32,794.794 INFO    ] Checking for camera pi updates...
[2026-06-27 01:50:32,813.813 INFO    ] 200
[2026-06-27 01:50:32,814.814 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:50:32,838.838 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:50:32,876.876 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:50:32,878.878 INFO    ] No camera update needed
[2026-06-27 01:50:32,879.879 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:50:32,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:50:32,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:50:32,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:50:34,925.925 INFO    ] ================================================
[2026-06-27 01:50:34,941.941 INFO    ] Launching Daemon at Sat Jun 27 01:50:34 IST 2026
[2026-06-27 01:50:34,952.952 INFO    ] ================================================
[2026-06-27 01:50:35,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:50:35
[2026-06-27 01:50:35,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:50:35,779.779 INFO    ] Initializing speech engine...
[2026-06-27 01:50:35,787.787 INFO    ] 2026-06-27 01:50:35
[2026-06-27 01:50:36,001.001 INFO    ] 2026-06-27 01:50:35
[2026-06-27 01:50:36,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:50:36,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:50:36,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:50:36,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:50:36,411.411 INFO    ] time= 27/06/2026 01:50:36
[2026-06-27 01:50:36,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:50:36,452.452 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:50:36,524.524 INFO    ] No existing commands found in stream
[2026-06-27 01:50:41,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:50:41,541.541 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-27 01:50:43,666.666 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 01:50:43,667.667 INFO    ] Checking for system updates...
[2026-06-27 01:50:43,690.690 INFO    ] 200
[2026-06-27 01:50:43,691.691 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:50:43,722.722 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:50:43,724.724 INFO    ] No update needed
[2026-06-27 01:50:43,726.726 INFO    ] Checking for camera pi updates...
[2026-06-27 01:50:43,747.747 INFO    ] 200
[2026-06-27 01:50:43,748.748 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:50:43,776.776 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:50:43,821.821 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:50:43,822.822 INFO    ] No camera update needed
[2026-06-27 01:50:43,824.824 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:50:43,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:50:43,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:50:43,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:50:45,873.873 INFO    ] ================================================
[2026-06-27 01:50:45,888.888 INFO    ] Launching Daemon at Sat Jun 27 01:50:45 IST 2026
[2026-06-27 01:50:45,899.899 INFO    ] ================================================
[2026-06-27 01:50:46,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:50:46
[2026-06-27 01:50:46,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:50:46,744.744 INFO    ] Initializing speech engine...
[2026-06-27 01:50:46,750.750 INFO    ] 2026-06-27 01:50:46
[2026-06-27 01:50:46,957.957 INFO    ] 2026-06-27 01:50:46
[2026-06-27 01:50:46,987.987 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:50:47,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:50:47,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:50:47,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:50:47,370.370 INFO    ] time= 27/06/2026 01:50:47
[2026-06-27 01:50:47,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:50:47,408.408 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:50:47,476.476 INFO    ] No existing commands found in stream
[2026-06-27 01:50:52,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:50:52,494.494 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-27 01:50:55,566.566 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:50:55,569.569 INFO    ] Checking for system updates...
[2026-06-27 01:50:55,608.608 INFO    ] 200
[2026-06-27 01:50:55,611.611 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:50:55,665.665 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:50:55,666.666 INFO    ] No update needed
[2026-06-27 01:50:55,667.667 INFO    ] Checking for camera pi updates...
[2026-06-27 01:50:55,690.690 INFO    ] 200
[2026-06-27 01:50:55,691.691 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:50:55,716.716 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:50:55,764.764 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:50:55,766.766 INFO    ] No camera update needed
[2026-06-27 01:50:55,768.768 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:50:55,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:50:55,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:50:55,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:50:57,818.818 INFO    ] ================================================
[2026-06-27 01:50:57,834.834 INFO    ] Launching Daemon at Sat Jun 27 01:50:57 IST 2026
[2026-06-27 01:50:57,845.845 INFO    ] ================================================
[2026-06-27 01:50:58,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:50:58
[2026-06-27 01:50:58,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:50:58,638.638 INFO    ] Initializing speech engine...
[2026-06-27 01:50:58,658.658 INFO    ] 2026-06-27 01:50:58
[2026-06-27 01:50:58,861.861 INFO    ] 2026-06-27 01:50:58
[2026-06-27 01:50:58,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:50:59,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:50:59,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:50:59,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:50:59,283.283 INFO    ] time= 27/06/2026 01:50:59
[2026-06-27 01:50:59,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:50:59,313.313 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:50:59,404.404 INFO    ] No existing commands found in stream
[2026-06-27 01:51:04,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:51:04,416.416 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-27 01:51:05,169.169 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:51:05,171.171 INFO    ] Checking for system updates...
[2026-06-27 01:51:05,192.192 INFO    ] 200
[2026-06-27 01:51:05,193.193 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:51:05,224.224 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:51:05,225.225 INFO    ] No update needed
[2026-06-27 01:51:05,226.226 INFO    ] Checking for camera pi updates...
[2026-06-27 01:51:05,247.247 INFO    ] 200
[2026-06-27 01:51:05,248.248 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:51:05,272.272 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:51:05,322.322 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:51:05,324.324 INFO    ] No camera update needed
[2026-06-27 01:51:05,325.325 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:51:05,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:51:05,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:51:05,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:51:07,374.374 INFO    ] ================================================
[2026-06-27 01:51:07,390.390 INFO    ] Launching Daemon at Sat Jun 27 01:51:07 IST 2026
[2026-06-27 01:51:07,402.402 INFO    ] ================================================
[2026-06-27 01:51:07,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:51:07
[2026-06-27 01:51:08,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:51:08,195.195 INFO    ] Initializing speech engine...
[2026-06-27 01:51:08,208.208 INFO    ] 2026-06-27 01:51:08
[2026-06-27 01:51:08,430.430 INFO    ] 2026-06-27 01:51:08
[2026-06-27 01:51:08,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:51:08,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:51:08,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:51:08,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:51:08,865.865 INFO    ] time= 27/06/2026 01:51:08
[2026-06-27 01:51:08,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:51:08,916.916 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:51:09,019.019 INFO    ] No existing commands found in stream
[2026-06-27 01:51:14,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:51:14,031.031 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-27 01:51:15,481.481 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 01:51:15,482.482 INFO    ] Checking for system updates...
[2026-06-27 01:51:15,503.503 INFO    ] 200
[2026-06-27 01:51:15,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:51:15,537.537 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:51:15,539.539 INFO    ] No update needed
[2026-06-27 01:51:15,540.540 INFO    ] Checking for camera pi updates...
[2026-06-27 01:51:15,559.559 INFO    ] 200
[2026-06-27 01:51:15,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:51:15,584.584 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:51:15,630.630 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:51:15,631.631 INFO    ] No camera update needed
[2026-06-27 01:51:15,632.632 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:51:15,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:51:15,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:51:15,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:51:17,680.680 INFO    ] ================================================
[2026-06-27 01:51:17,696.696 INFO    ] Launching Daemon at Sat Jun 27 01:51:17 IST 2026
[2026-06-27 01:51:17,707.707 INFO    ] ================================================
[2026-06-27 01:51:18,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:51:18
[2026-06-27 01:51:18,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:51:18,539.539 INFO    ] Initializing speech engine...
[2026-06-27 01:51:18,543.543 INFO    ] 2026-06-27 01:51:18
[2026-06-27 01:51:18,762.762 INFO    ] 2026-06-27 01:51:18
[2026-06-27 01:51:18,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:51:18,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:51:18,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:51:19,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:51:19,221.221 INFO    ] time= 27/06/2026 01:51:19
[2026-06-27 01:51:19,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:51:19,285.285 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:51:19,362.362 INFO    ] No existing commands found in stream
[2026-06-27 01:51:24,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:51:24,376.376 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-27 01:51:27,886.886 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 01:51:27,887.887 INFO    ] Checking for system updates...
[2026-06-27 01:51:27,909.909 INFO    ] 200
[2026-06-27 01:51:27,911.911 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:51:27,941.941 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:51:27,943.943 INFO    ] No update needed
[2026-06-27 01:51:27,944.944 INFO    ] Checking for camera pi updates...
[2026-06-27 01:51:27,968.968 INFO    ] 200
[2026-06-27 01:51:27,969.969 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:51:27,993.993 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:51:28,051.051 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:51:28,053.053 INFO    ] No camera update needed
[2026-06-27 01:51:28,054.054 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:51:28,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:51:28,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:51:28,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:51:30,101.101 INFO    ] ================================================
[2026-06-27 01:51:30,117.117 INFO    ] Launching Daemon at Sat Jun 27 01:51:30 IST 2026
[2026-06-27 01:51:30,129.129 INFO    ] ================================================
[2026-06-27 01:51:30,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:51:30
[2026-06-27 01:51:30,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:51:31,004.004 INFO    ] Initializing speech engine...
[2026-06-27 01:51:31,009.009 INFO    ] 2026-06-27 01:51:31
[2026-06-27 01:51:31,221.221 INFO    ] 2026-06-27 01:51:31
[2026-06-27 01:51:31,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:51:32,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:51:32,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:51:32,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:51:32,673.673 INFO    ] time= 27/06/2026 01:51:32
[2026-06-27 01:51:32,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:51:32,694.694 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:51:32,751.751 INFO    ] No existing commands found in stream
[2026-06-27 01:51:37,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:51:37,769.769 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-27 01:51:39,019.019 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 01:51:39,021.021 INFO    ] Checking for system updates...
[2026-06-27 01:51:39,042.042 INFO    ] 200
[2026-06-27 01:51:39,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:51:39,077.077 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:51:39,078.078 INFO    ] No update needed
[2026-06-27 01:51:39,080.080 INFO    ] Checking for camera pi updates...
[2026-06-27 01:51:39,102.102 INFO    ] 200
[2026-06-27 01:51:39,104.104 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:51:39,129.129 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:51:39,181.181 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:51:39,183.183 INFO    ] No camera update needed
[2026-06-27 01:51:39,184.184 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:51:39,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:51:39,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:51:39,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:51:41,232.232 INFO    ] ================================================
[2026-06-27 01:51:41,248.248 INFO    ] Launching Daemon at Sat Jun 27 01:51:41 IST 2026
[2026-06-27 01:51:41,261.261 INFO    ] ================================================
[2026-06-27 01:51:41,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:51:41
[2026-06-27 01:51:41,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:51:42,069.069 INFO    ] Initializing speech engine...
[2026-06-27 01:51:42,074.074 INFO    ] 2026-06-27 01:51:42
[2026-06-27 01:51:42,290.290 INFO    ] 2026-06-27 01:51:42
[2026-06-27 01:51:42,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:51:42,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:51:42,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:51:42,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:51:42,762.762 INFO    ] time= 27/06/2026 01:51:42
[2026-06-27 01:51:42,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:51:42,794.794 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:51:42,867.867 INFO    ] No existing commands found in stream
[2026-06-27 01:51:47,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:51:47,879.879 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-27 01:51:51,957.957 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 01:51:51,958.958 INFO    ] Checking for system updates...
[2026-06-27 01:51:51,980.980 INFO    ] 200
[2026-06-27 01:51:51,981.981 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:51:52,016.016 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:51:52,017.017 INFO    ] No update needed
[2026-06-27 01:51:52,019.019 INFO    ] Checking for camera pi updates...
[2026-06-27 01:51:52,038.038 INFO    ] 200
[2026-06-27 01:51:52,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:51:52,065.065 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:51:52,121.121 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:51:52,122.122 INFO    ] No camera update needed
[2026-06-27 01:51:52,124.124 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:51:52,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:51:52,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:51:52,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:51:54,171.171 INFO    ] ================================================
[2026-06-27 01:51:54,187.187 INFO    ] Launching Daemon at Sat Jun 27 01:51:54 IST 2026
[2026-06-27 01:51:54,198.198 INFO    ] ================================================
[2026-06-27 01:51:54,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:51:54
[2026-06-27 01:51:54,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:51:55,022.022 INFO    ] Initializing speech engine...
[2026-06-27 01:51:55,026.026 INFO    ] 2026-06-27 01:51:55
[2026-06-27 01:51:55,228.228 INFO    ] 2026-06-27 01:51:55
[2026-06-27 01:51:55,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:51:55,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:51:55,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:51:55,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:51:55,646.646 INFO    ] time= 27/06/2026 01:51:55
[2026-06-27 01:51:55,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:51:55,676.676 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:51:55,744.744 INFO    ] No existing commands found in stream
[2026-06-27 01:52:00,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:52:00,757.757 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-27 01:52:02,765.765 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 01:52:02,767.767 INFO    ] Checking for system updates...
[2026-06-27 01:52:02,787.787 INFO    ] 200
[2026-06-27 01:52:02,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:52:02,821.821 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:52:02,822.822 INFO    ] No update needed
[2026-06-27 01:52:02,824.824 INFO    ] Checking for camera pi updates...
[2026-06-27 01:52:02,844.844 INFO    ] 200
[2026-06-27 01:52:02,845.845 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:52:02,870.870 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:52:02,915.915 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:52:02,917.917 INFO    ] No camera update needed
[2026-06-27 01:52:02,919.919 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:52:02,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:52:02,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:52:02,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:52:04,974.974 INFO    ] ================================================
[2026-06-27 01:52:04,989.989 INFO    ] Launching Daemon at Sat Jun 27 01:52:04 IST 2026
[2026-06-27 01:52:05,001.001 INFO    ] ================================================
[2026-06-27 01:52:05,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:52:05
[2026-06-27 01:52:05,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:52:05,808.808 INFO    ] Initializing speech engine...
[2026-06-27 01:52:05,820.820 INFO    ] 2026-06-27 01:52:05
[2026-06-27 01:52:06,007.007 INFO    ] 2026-06-27 01:52:06
[2026-06-27 01:52:06,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:52:06,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:52:06,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:52:06,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:52:06,444.444 INFO    ] time= 27/06/2026 01:52:06
[2026-06-27 01:52:06,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:52:06,487.487 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:52:06,555.555 INFO    ] No existing commands found in stream
[2026-06-27 01:52:11,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:52:11,572.572 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-27 01:52:12,428.428 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 01:52:12,430.430 INFO    ] Checking for system updates...
[2026-06-27 01:52:12,451.451 INFO    ] 200
[2026-06-27 01:52:12,452.452 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:52:12,483.483 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:52:12,484.484 INFO    ] No update needed
[2026-06-27 01:52:12,486.486 INFO    ] Checking for camera pi updates...
[2026-06-27 01:52:12,507.507 INFO    ] 200
[2026-06-27 01:52:12,508.508 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:52:12,535.535 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:52:12,586.586 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:52:12,587.587 INFO    ] No camera update needed
[2026-06-27 01:52:12,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:52:12,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:52:12,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:52:12,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:52:14,636.636 INFO    ] ================================================
[2026-06-27 01:52:14,651.651 INFO    ] Launching Daemon at Sat Jun 27 01:52:14 IST 2026
[2026-06-27 01:52:14,662.662 INFO    ] ================================================
[2026-06-27 01:52:15,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:52:15
[2026-06-27 01:52:15,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:52:15,497.497 INFO    ] Initializing speech engine...
[2026-06-27 01:52:15,509.509 INFO    ] 2026-06-27 01:52:15
[2026-06-27 01:52:15,720.720 INFO    ] 2026-06-27 01:52:15
[2026-06-27 01:52:15,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:52:15,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:52:15,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:52:16,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:52:16,142.142 INFO    ] time= 27/06/2026 01:52:16
[2026-06-27 01:52:16,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:52:16,169.169 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:52:16,235.235 INFO    ] No existing commands found in stream
[2026-06-27 01:52:21,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:52:21,249.249 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-27 01:52:23,244.244 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 01:52:23,246.246 INFO    ] Checking for system updates...
[2026-06-27 01:52:23,267.267 INFO    ] 200
[2026-06-27 01:52:23,268.268 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:52:23,300.300 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:52:23,302.302 INFO    ] No update needed
[2026-06-27 01:52:23,303.303 INFO    ] Checking for camera pi updates...
[2026-06-27 01:52:23,323.323 INFO    ] 200
[2026-06-27 01:52:23,324.324 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:52:23,349.349 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:52:23,390.390 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:52:23,392.392 INFO    ] No camera update needed
[2026-06-27 01:52:23,393.393 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:52:23,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:52:23,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:52:23,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:52:25,439.439 INFO    ] ================================================
[2026-06-27 01:52:25,454.454 INFO    ] Launching Daemon at Sat Jun 27 01:52:25 IST 2026
[2026-06-27 01:52:25,465.465 INFO    ] ================================================
[2026-06-27 01:52:25,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:52:25
[2026-06-27 01:52:26,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:52:26,257.257 INFO    ] Initializing speech engine...
[2026-06-27 01:52:26,265.265 INFO    ] 2026-06-27 01:52:26
[2026-06-27 01:52:26,476.476 INFO    ] 2026-06-27 01:52:26
[2026-06-27 01:52:26,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:52:26,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:52:26,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:52:26,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:52:26,893.893 INFO    ] time= 27/06/2026 01:52:26
[2026-06-27 01:52:26,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:52:26,926.926 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:52:26,992.992 INFO    ] No existing commands found in stream
[2026-06-27 01:52:32,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:52:32,003.003 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-27 01:52:36,357.357 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 01:52:36,358.358 INFO    ] Checking for system updates...
[2026-06-27 01:52:36,380.380 INFO    ] 200
[2026-06-27 01:52:36,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:52:36,412.412 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:52:36,414.414 INFO    ] No update needed
[2026-06-27 01:52:36,415.415 INFO    ] Checking for camera pi updates...
[2026-06-27 01:52:36,436.436 INFO    ] 200
[2026-06-27 01:52:36,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:52:36,461.461 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:52:36,503.503 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:52:36,505.505 INFO    ] No camera update needed
[2026-06-27 01:52:36,506.506 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:52:36,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:52:36,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:52:36,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:52:38,555.555 INFO    ] ================================================
[2026-06-27 01:52:38,570.570 INFO    ] Launching Daemon at Sat Jun 27 01:52:38 IST 2026
[2026-06-27 01:52:38,581.581 INFO    ] ================================================
[2026-06-27 01:52:38,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:52:38
[2026-06-27 01:52:39,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:52:39,369.369 INFO    ] Initializing speech engine...
[2026-06-27 01:52:39,374.374 INFO    ] 2026-06-27 01:52:39
[2026-06-27 01:52:39,592.592 INFO    ] 2026-06-27 01:52:39
[2026-06-27 01:52:39,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:52:39,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:52:39,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:52:39,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:52:40,015.015 INFO    ] time= 27/06/2026 01:52:39
[2026-06-27 01:52:40,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:52:40,045.045 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:52:40,111.111 INFO    ] No existing commands found in stream
[2026-06-27 01:52:45,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:52:45,125.125 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-27 01:52:46,942.942 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 01:52:46,943.943 INFO    ] Checking for system updates...
[2026-06-27 01:52:46,964.964 INFO    ] 200
[2026-06-27 01:52:46,966.966 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:52:46,999.999 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:52:47,000.000 INFO    ] No update needed
[2026-06-27 01:52:47,001.001 INFO    ] Checking for camera pi updates...
[2026-06-27 01:52:47,024.024 INFO    ] 200
[2026-06-27 01:52:47,026.026 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:52:47,049.049 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:52:47,104.104 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:52:47,105.105 INFO    ] No camera update needed
[2026-06-27 01:52:47,107.107 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:52:47,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:52:47,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:52:47,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:52:49,152.152 INFO    ] ================================================
[2026-06-27 01:52:49,167.167 INFO    ] Launching Daemon at Sat Jun 27 01:52:49 IST 2026
[2026-06-27 01:52:49,178.178 INFO    ] ================================================
[2026-06-27 01:52:49,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:52:49
[2026-06-27 01:52:49,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:52:49,978.978 INFO    ] Initializing speech engine...
[2026-06-27 01:52:49,982.982 INFO    ] 2026-06-27 01:52:49
[2026-06-27 01:52:50,188.188 INFO    ] 2026-06-27 01:52:50
[2026-06-27 01:52:50,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:52:50,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:52:50,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:52:50,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:52:50,608.608 INFO    ] time= 27/06/2026 01:52:50
[2026-06-27 01:52:50,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:52:50,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:52:50,709.709 INFO    ] No existing commands found in stream
[2026-06-27 01:52:55,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:52:55,722.722 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-27 01:52:58,557.557 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 01:52:58,558.558 INFO    ] Checking for system updates...
[2026-06-27 01:52:58,580.580 INFO    ] 200
[2026-06-27 01:52:58,581.581 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:52:58,612.612 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:52:58,614.614 INFO    ] No update needed
[2026-06-27 01:52:58,615.615 INFO    ] Checking for camera pi updates...
[2026-06-27 01:52:58,639.639 INFO    ] 200
[2026-06-27 01:52:58,640.640 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:52:58,667.667 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:52:58,717.717 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:52:58,719.719 INFO    ] No camera update needed
[2026-06-27 01:52:58,720.720 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:52:58,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:52:58,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:52:58,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:53:00,767.767 INFO    ] ================================================
[2026-06-27 01:53:00,782.782 INFO    ] Launching Daemon at Sat Jun 27 01:53:00 IST 2026
[2026-06-27 01:53:00,793.793 INFO    ] ================================================
[2026-06-27 01:53:01,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:53:01
[2026-06-27 01:53:01,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:53:01,645.645 INFO    ] Initializing speech engine...
[2026-06-27 01:53:01,654.654 INFO    ] 2026-06-27 01:53:01
[2026-06-27 01:53:01,863.863 INFO    ] 2026-06-27 01:53:01
[2026-06-27 01:53:01,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:53:02,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:53:02,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:53:02,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:53:02,700.700 INFO    ] time= 27/06/2026 01:53:02
[2026-06-27 01:53:02,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:53:02,708.708 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:53:02,762.762 INFO    ] No existing commands found in stream
[2026-06-27 01:53:07,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:53:07,775.775 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-27 01:53:09,756.756 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 01:53:09,757.757 INFO    ] Checking for system updates...
[2026-06-27 01:53:09,779.779 INFO    ] 200
[2026-06-27 01:53:09,781.781 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:53:09,812.812 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:53:09,813.813 INFO    ] No update needed
[2026-06-27 01:53:09,815.815 INFO    ] Checking for camera pi updates...
[2026-06-27 01:53:09,834.834 INFO    ] 200
[2026-06-27 01:53:09,835.835 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:53:09,860.860 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:53:09,902.902 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:53:09,903.903 INFO    ] No camera update needed
[2026-06-27 01:53:09,905.905 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:53:09,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:53:09,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:53:09,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:53:11,952.952 INFO    ] ================================================
[2026-06-27 01:53:11,967.967 INFO    ] Launching Daemon at Sat Jun 27 01:53:11 IST 2026
[2026-06-27 01:53:11,978.978 INFO    ] ================================================
[2026-06-27 01:53:12,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:53:12
[2026-06-27 01:53:12,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:53:12,825.825 INFO    ] Initializing speech engine...
[2026-06-27 01:53:12,830.830 INFO    ] 2026-06-27 01:53:12
[2026-06-27 01:53:13,036.036 INFO    ] 2026-06-27 01:53:13
[2026-06-27 01:53:13,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:53:13,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:53:13,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:53:13,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:53:13,471.471 INFO    ] time= 27/06/2026 01:53:13
[2026-06-27 01:53:13,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:53:13,482.482 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:53:13,549.549 INFO    ] No existing commands found in stream
[2026-06-27 01:53:18,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:53:18,561.561 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-27 01:53:20,177.177 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 01:53:20,179.179 INFO    ] Checking for system updates...
[2026-06-27 01:53:20,200.200 INFO    ] 200
[2026-06-27 01:53:20,201.201 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:53:20,234.234 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:53:20,236.236 INFO    ] No update needed
[2026-06-27 01:53:20,237.237 INFO    ] Checking for camera pi updates...
[2026-06-27 01:53:20,258.258 INFO    ] 200
[2026-06-27 01:53:20,259.259 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:53:20,286.286 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:53:20,330.330 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:53:20,331.331 INFO    ] No camera update needed
[2026-06-27 01:53:20,333.333 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:53:20,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:53:20,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:53:20,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:53:22,384.384 INFO    ] ================================================
[2026-06-27 01:53:22,399.399 INFO    ] Launching Daemon at Sat Jun 27 01:53:22 IST 2026
[2026-06-27 01:53:22,409.409 INFO    ] ================================================
[2026-06-27 01:53:22,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:53:22
[2026-06-27 01:53:23,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:53:23,236.236 INFO    ] Initializing speech engine...
[2026-06-27 01:53:23,241.241 INFO    ] 2026-06-27 01:53:23
[2026-06-27 01:53:23,446.446 INFO    ] 2026-06-27 01:53:23
[2026-06-27 01:53:23,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:53:23,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:53:23,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:53:23,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:53:23,876.876 INFO    ] time= 27/06/2026 01:53:23
[2026-06-27 01:53:23,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:53:23,928.928 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:53:24,006.006 INFO    ] No existing commands found in stream
[2026-06-27 01:53:29,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:53:29,018.018 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-27 01:53:33,222.222 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 01:53:33,224.224 INFO    ] Checking for system updates...
[2026-06-27 01:53:33,245.245 INFO    ] 200
[2026-06-27 01:53:33,246.246 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:53:33,282.282 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:53:33,283.283 INFO    ] No update needed
[2026-06-27 01:53:33,285.285 INFO    ] Checking for camera pi updates...
[2026-06-27 01:53:33,304.304 INFO    ] 200
[2026-06-27 01:53:33,306.306 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:53:33,331.331 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:53:33,374.374 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:53:33,376.376 INFO    ] No camera update needed
[2026-06-27 01:53:33,377.377 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:53:33,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:53:33,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:53:33,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:53:35,423.423 INFO    ] ================================================
[2026-06-27 01:53:35,438.438 INFO    ] Launching Daemon at Sat Jun 27 01:53:35 IST 2026
[2026-06-27 01:53:35,449.449 INFO    ] ================================================
[2026-06-27 01:53:35,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:53:35
[2026-06-27 01:53:36,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:53:36,262.262 INFO    ] Initializing speech engine...
[2026-06-27 01:53:36,276.276 INFO    ] 2026-06-27 01:53:36
[2026-06-27 01:53:36,496.496 INFO    ] 2026-06-27 01:53:36
[2026-06-27 01:53:36,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:53:36,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:53:36,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:53:36,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:53:36,951.951 INFO    ] time= 27/06/2026 01:53:36
[2026-06-27 01:53:36,987.987 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:53:36,999.999 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:53:37,072.072 INFO    ] No existing commands found in stream
[2026-06-27 01:53:42,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:53:42,085.085 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-27 01:53:45,838.838 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 01:53:45,840.840 INFO    ] Checking for system updates...
[2026-06-27 01:53:45,862.862 INFO    ] 200
[2026-06-27 01:53:45,863.863 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:53:45,894.894 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:53:45,896.896 INFO    ] No update needed
[2026-06-27 01:53:45,897.897 INFO    ] Checking for camera pi updates...
[2026-06-27 01:53:45,916.916 INFO    ] 200
[2026-06-27 01:53:45,918.918 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:53:45,941.941 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:53:45,987.987 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:53:45,989.989 INFO    ] No camera update needed
[2026-06-27 01:53:45,990.990 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:53:45,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:53:45,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:53:45,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:53:48,036.036 INFO    ] ================================================
[2026-06-27 01:53:48,051.051 INFO    ] Launching Daemon at Sat Jun 27 01:53:48 IST 2026
[2026-06-27 01:53:48,063.063 INFO    ] ================================================
[2026-06-27 01:53:48,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:53:48
[2026-06-27 01:53:48,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:53:48,939.939 INFO    ] Initializing speech engine...
[2026-06-27 01:53:48,945.945 INFO    ] 2026-06-27 01:53:48
[2026-06-27 01:53:49,156.156 INFO    ] 2026-06-27 01:53:49
[2026-06-27 01:53:49,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:53:49,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:53:49,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:53:49,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:53:49,440.440 INFO    ] time= 27/06/2026 01:53:49
[2026-06-27 01:53:49,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:53:49,443.443 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:53:49,542.542 INFO    ] No existing commands found in stream
[2026-06-27 01:53:54,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:53:54,581.581 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-27 01:53:57,952.952 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 01:53:57,955.955 INFO    ] Checking for system updates...
[2026-06-27 01:53:57,978.978 INFO    ] 200
[2026-06-27 01:53:57,979.979 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:53:58,012.012 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:53:58,014.014 INFO    ] No update needed
[2026-06-27 01:53:58,015.015 INFO    ] Checking for camera pi updates...
[2026-06-27 01:53:58,035.035 INFO    ] 200
[2026-06-27 01:53:58,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:53:58,062.062 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:53:58,092.092 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:53:58,094.094 INFO    ] No camera update needed
[2026-06-27 01:53:58,095.095 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:53:58,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:53:58,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:53:58,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:54:00,127.127 INFO    ] ================================================
[2026-06-27 01:54:00,136.136 INFO    ] Launching Daemon at Sat Jun 27 01:54:00 IST 2026
[2026-06-27 01:54:00,142.142 INFO    ] ================================================
[2026-06-27 01:54:00,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:54:00
[2026-06-27 01:54:00,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:54:00,959.959 INFO    ] Initializing speech engine...
[2026-06-27 01:54:00,967.967 INFO    ] 2026-06-27 01:54:00
[2026-06-27 01:54:01,156.156 INFO    ] 2026-06-27 01:54:01
[2026-06-27 01:54:01,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:54:02,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:54:02,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:54:02,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:54:02,614.614 INFO    ] time= 27/06/2026 01:54:02
[2026-06-27 01:54:02,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:54:02,641.641 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:54:02,711.711 INFO    ] No existing commands found in stream
[2026-06-27 01:54:07,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:54:07,724.724 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-27 01:54:11,416.416 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 01:54:11,418.418 INFO    ] Checking for system updates...
[2026-06-27 01:54:11,439.439 INFO    ] 200
[2026-06-27 01:54:11,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:54:11,473.473 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:54:11,475.475 INFO    ] No update needed
[2026-06-27 01:54:11,476.476 INFO    ] Checking for camera pi updates...
[2026-06-27 01:54:11,497.497 INFO    ] 200
[2026-06-27 01:54:11,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:54:11,522.522 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:54:11,570.570 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:54:11,571.571 INFO    ] No camera update needed
[2026-06-27 01:54:11,572.572 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:54:11,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:54:11,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:54:11,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:54:13,619.619 INFO    ] ================================================
[2026-06-27 01:54:13,635.635 INFO    ] Launching Daemon at Sat Jun 27 01:54:13 IST 2026
[2026-06-27 01:54:13,646.646 INFO    ] ================================================
[2026-06-27 01:54:14,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:54:14
[2026-06-27 01:54:14,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:54:14,505.505 INFO    ] Initializing speech engine...
[2026-06-27 01:54:14,511.511 INFO    ] 2026-06-27 01:54:14
[2026-06-27 01:54:14,719.719 INFO    ] 2026-06-27 01:54:14
[2026-06-27 01:54:14,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:54:14,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:54:14,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:54:15,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:54:15,141.141 INFO    ] time= 27/06/2026 01:54:15
[2026-06-27 01:54:15,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:54:15,169.169 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:54:15,237.237 INFO    ] No existing commands found in stream
[2026-06-27 01:54:20,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:54:20,255.255 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-27 01:54:21,653.653 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 01:54:21,654.654 INFO    ] Checking for system updates...
[2026-06-27 01:54:21,676.676 INFO    ] 200
[2026-06-27 01:54:21,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:54:21,708.708 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:54:21,709.709 INFO    ] No update needed
[2026-06-27 01:54:21,710.710 INFO    ] Checking for camera pi updates...
[2026-06-27 01:54:21,731.731 INFO    ] 200
[2026-06-27 01:54:21,732.732 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:54:21,758.758 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:54:21,811.811 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:54:21,813.813 INFO    ] No camera update needed
[2026-06-27 01:54:21,814.814 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:54:21,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:54:21,819.819 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:54:21,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:54:23,867.867 INFO    ] ================================================
[2026-06-27 01:54:23,882.882 INFO    ] Launching Daemon at Sat Jun 27 01:54:23 IST 2026
[2026-06-27 01:54:23,893.893 INFO    ] ================================================
[2026-06-27 01:54:24,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:54:24
[2026-06-27 01:54:24,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:54:24,705.705 INFO    ] Initializing speech engine...
[2026-06-27 01:54:24,711.711 INFO    ] 2026-06-27 01:54:24
[2026-06-27 01:54:24,920.920 INFO    ] 2026-06-27 01:54:24
[2026-06-27 01:54:24,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:54:25,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:54:25,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:54:25,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:54:25,330.330 INFO    ] time= 27/06/2026 01:54:25
[2026-06-27 01:54:25,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:54:25,369.369 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:54:25,436.436 INFO    ] No existing commands found in stream
[2026-06-27 01:54:30,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:54:30,454.454 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-27 01:54:34,780.780 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 01:54:34,782.782 INFO    ] Checking for system updates...
[2026-06-27 01:54:34,803.803 INFO    ] 200
[2026-06-27 01:54:34,805.805 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:54:34,837.837 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:54:34,838.838 INFO    ] No update needed
[2026-06-27 01:54:34,840.840 INFO    ] Checking for camera pi updates...
[2026-06-27 01:54:34,862.862 INFO    ] 200
[2026-06-27 01:54:34,864.864 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:54:34,889.889 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:54:35,030.030 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:54:35,031.031 INFO    ] No camera update needed
[2026-06-27 01:54:35,033.033 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:54:35,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:54:35,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:54:35,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:54:37,079.079 INFO    ] ================================================
[2026-06-27 01:54:37,094.094 INFO    ] Launching Daemon at Sat Jun 27 01:54:37 IST 2026
[2026-06-27 01:54:37,105.105 INFO    ] ================================================
[2026-06-27 01:54:37,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:54:37
[2026-06-27 01:54:37,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:54:37,916.916 INFO    ] Initializing speech engine...
[2026-06-27 01:54:37,926.926 INFO    ] 2026-06-27 01:54:37
[2026-06-27 01:54:38,130.130 INFO    ] 2026-06-27 01:54:38
[2026-06-27 01:54:38,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:54:38,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:54:38,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:54:38,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:54:38,547.547 INFO    ] time= 27/06/2026 01:54:38
[2026-06-27 01:54:38,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:54:38,576.576 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:54:38,641.641 INFO    ] No existing commands found in stream
[2026-06-27 01:54:43,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:54:43,655.655 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-27 01:54:44,577.577 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 01:54:44,578.578 INFO    ] Checking for system updates...
[2026-06-27 01:54:44,599.599 INFO    ] 200
[2026-06-27 01:54:44,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:54:44,631.631 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:54:44,632.632 INFO    ] No update needed
[2026-06-27 01:54:44,633.633 INFO    ] Checking for camera pi updates...
[2026-06-27 01:54:44,654.654 INFO    ] 200
[2026-06-27 01:54:44,655.655 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:54:44,678.678 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:54:44,720.720 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:54:44,721.721 INFO    ] No camera update needed
[2026-06-27 01:54:44,723.723 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:54:44,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:54:44,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:54:44,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:54:46,770.770 INFO    ] ================================================
[2026-06-27 01:54:46,786.786 INFO    ] Launching Daemon at Sat Jun 27 01:54:46 IST 2026
[2026-06-27 01:54:46,796.796 INFO    ] ================================================
[2026-06-27 01:54:47,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:54:47
[2026-06-27 01:54:47,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:54:47,641.641 INFO    ] Initializing speech engine...
[2026-06-27 01:54:47,650.650 INFO    ] 2026-06-27 01:54:47
[2026-06-27 01:54:47,860.860 INFO    ] 2026-06-27 01:54:47
[2026-06-27 01:54:47,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:54:48,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:54:48,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:54:48,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:54:48,276.276 INFO    ] time= 27/06/2026 01:54:48
[2026-06-27 01:54:48,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:54:48,305.305 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:54:48,376.376 INFO    ] No existing commands found in stream
[2026-06-27 01:54:53,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:54:53,394.394 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-27 01:54:55,466.466 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 01:54:55,468.468 INFO    ] Checking for system updates...
[2026-06-27 01:54:55,491.491 INFO    ] 200
[2026-06-27 01:54:55,492.492 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:54:55,527.527 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:54:55,528.528 INFO    ] No update needed
[2026-06-27 01:54:55,530.530 INFO    ] Checking for camera pi updates...
[2026-06-27 01:54:55,550.550 INFO    ] 200
[2026-06-27 01:54:55,551.551 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:54:55,575.575 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:54:55,617.617 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:54:55,618.618 INFO    ] No camera update needed
[2026-06-27 01:54:55,620.620 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:54:55,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:54:55,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:54:55,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:54:57,666.666 INFO    ] ================================================
[2026-06-27 01:54:57,680.680 INFO    ] Launching Daemon at Sat Jun 27 01:54:57 IST 2026
[2026-06-27 01:54:57,691.691 INFO    ] ================================================
[2026-06-27 01:54:58,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:54:58
[2026-06-27 01:54:58,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:54:58,524.524 INFO    ] Initializing speech engine...
[2026-06-27 01:54:58,528.528 INFO    ] 2026-06-27 01:54:58
[2026-06-27 01:54:58,732.732 INFO    ] 2026-06-27 01:54:58
[2026-06-27 01:54:58,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:54:58,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:54:58,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:54:59,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:54:59,152.152 INFO    ] time= 27/06/2026 01:54:59
[2026-06-27 01:54:59,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:54:59,179.179 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:54:59,246.246 INFO    ] No existing commands found in stream
[2026-06-27 01:55:04,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:55:04,257.257 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-27 01:55:07,677.677 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 01:55:07,679.679 INFO    ] Checking for system updates...
[2026-06-27 01:55:07,699.699 INFO    ] 200
[2026-06-27 01:55:07,700.700 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:55:07,733.733 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:55:07,735.735 INFO    ] No update needed
[2026-06-27 01:55:07,736.736 INFO    ] Checking for camera pi updates...
[2026-06-27 01:55:07,756.756 INFO    ] 200
[2026-06-27 01:55:07,757.757 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:55:07,780.780 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:55:07,820.820 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:55:07,821.821 INFO    ] No camera update needed
[2026-06-27 01:55:07,822.822 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:55:07,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:55:07,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:55:07,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:55:09,868.868 INFO    ] ================================================
[2026-06-27 01:55:09,884.884 INFO    ] Launching Daemon at Sat Jun 27 01:55:09 IST 2026
[2026-06-27 01:55:09,895.895 INFO    ] ================================================
[2026-06-27 01:55:10,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:55:10
[2026-06-27 01:55:10,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:55:10,673.673 INFO    ] Initializing speech engine...
[2026-06-27 01:55:10,677.677 INFO    ] 2026-06-27 01:55:10
[2026-06-27 01:55:10,896.896 INFO    ] 2026-06-27 01:55:10
[2026-06-27 01:55:10,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:55:11,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:55:11,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:55:11,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:55:11,296.296 INFO    ] time= 27/06/2026 01:55:11
[2026-06-27 01:55:11,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:55:11,340.340 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:55:11,412.412 INFO    ] No existing commands found in stream
[2026-06-27 01:55:16,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:55:16,424.424 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-27 01:55:20,667.667 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:55:20,669.669 INFO    ] Checking for system updates...
[2026-06-27 01:55:20,691.691 INFO    ] 200
[2026-06-27 01:55:20,692.692 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:55:20,723.723 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:55:20,724.724 INFO    ] No update needed
[2026-06-27 01:55:20,725.725 INFO    ] Checking for camera pi updates...
[2026-06-27 01:55:20,745.745 INFO    ] 200
[2026-06-27 01:55:20,747.747 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:55:20,770.770 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:55:20,812.812 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:55:20,813.813 INFO    ] No camera update needed
[2026-06-27 01:55:20,815.815 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:55:20,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:55:20,819.819 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:55:20,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:55:22,862.862 INFO    ] ================================================
[2026-06-27 01:55:22,877.877 INFO    ] Launching Daemon at Sat Jun 27 01:55:22 IST 2026
[2026-06-27 01:55:22,888.888 INFO    ] ================================================
[2026-06-27 01:55:23,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:55:23
[2026-06-27 01:55:23,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:55:23,668.668 INFO    ] Initializing speech engine...
[2026-06-27 01:55:23,678.678 INFO    ] 2026-06-27 01:55:23
[2026-06-27 01:55:23,881.881 INFO    ] 2026-06-27 01:55:23
[2026-06-27 01:55:23,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:55:24,095.095 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:55:24,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:55:24,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:55:24,297.297 INFO    ] time= 27/06/2026 01:55:24
[2026-06-27 01:55:24,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:55:24,330.330 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:55:24,397.397 INFO    ] No existing commands found in stream
[2026-06-27 01:55:29,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:55:29,414.414 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-27 01:55:30,834.834 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 01:55:30,836.836 INFO    ] Checking for system updates...
[2026-06-27 01:55:30,858.858 INFO    ] 200
[2026-06-27 01:55:30,859.859 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:55:30,889.889 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:55:30,891.891 INFO    ] No update needed
[2026-06-27 01:55:30,893.893 INFO    ] Checking for camera pi updates...
[2026-06-27 01:55:30,913.913 INFO    ] 200
[2026-06-27 01:55:30,915.915 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:55:30,940.940 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:55:30,980.980 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:55:30,982.982 INFO    ] No camera update needed
[2026-06-27 01:55:30,983.983 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:55:30,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:55:30,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:55:30,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:55:33,030.030 INFO    ] ================================================
[2026-06-27 01:55:33,045.045 INFO    ] Launching Daemon at Sat Jun 27 01:55:33 IST 2026
[2026-06-27 01:55:33,056.056 INFO    ] ================================================
[2026-06-27 01:55:33,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:55:33
[2026-06-27 01:55:33,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:55:33,944.944 INFO    ] Initializing speech engine...
[2026-06-27 01:55:33,951.951 INFO    ] 2026-06-27 01:55:33
[2026-06-27 01:55:34,157.157 INFO    ] 2026-06-27 01:55:34
[2026-06-27 01:55:34,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:55:34,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:55:34,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:55:34,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:55:34,580.580 INFO    ] time= 27/06/2026 01:55:34
[2026-06-27 01:55:34,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:55:34,609.609 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:55:34,699.699 INFO    ] No existing commands found in stream
[2026-06-27 01:55:39,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:55:39,728.728 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-27 01:55:40,829.829 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 01:55:40,830.830 INFO    ] Checking for system updates...
[2026-06-27 01:55:40,853.853 INFO    ] 200
[2026-06-27 01:55:40,854.854 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:55:40,887.887 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:55:40,889.889 INFO    ] No update needed
[2026-06-27 01:55:40,890.890 INFO    ] Checking for camera pi updates...
[2026-06-27 01:55:40,910.910 INFO    ] 200
[2026-06-27 01:55:40,911.911 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:55:40,935.935 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:55:40,981.981 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:55:40,982.982 INFO    ] No camera update needed
[2026-06-27 01:55:40,984.984 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:55:40,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:55:40,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:55:40,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:55:43,030.030 INFO    ] ================================================
[2026-06-27 01:55:43,046.046 INFO    ] Launching Daemon at Sat Jun 27 01:55:43 IST 2026
[2026-06-27 01:55:43,057.057 INFO    ] ================================================
[2026-06-27 01:55:43,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:55:43
[2026-06-27 01:55:43,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:55:43,861.861 INFO    ] Initializing speech engine...
[2026-06-27 01:55:43,866.866 INFO    ] 2026-06-27 01:55:43
[2026-06-27 01:55:44,070.070 INFO    ] 2026-06-27 01:55:44
[2026-06-27 01:55:44,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:55:44,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:55:44,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:55:44,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:55:44,508.508 INFO    ] time= 27/06/2026 01:55:44
[2026-06-27 01:55:44,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:55:44,516.516 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:55:44,583.583 INFO    ] No existing commands found in stream
[2026-06-27 01:55:49,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:55:49,596.596 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-27 01:55:51,843.843 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 01:55:51,844.844 INFO    ] Checking for system updates...
[2026-06-27 01:55:51,867.867 INFO    ] 200
[2026-06-27 01:55:51,868.868 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:55:51,900.900 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:55:51,901.901 INFO    ] No update needed
[2026-06-27 01:55:51,902.902 INFO    ] Checking for camera pi updates...
[2026-06-27 01:55:51,922.922 INFO    ] 200
[2026-06-27 01:55:51,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:55:51,950.950 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:55:51,992.992 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:55:51,994.994 INFO    ] No camera update needed
[2026-06-27 01:55:51,995.995 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:55:51,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:55:52,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:55:52,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:55:54,042.042 INFO    ] ================================================
[2026-06-27 01:55:54,057.057 INFO    ] Launching Daemon at Sat Jun 27 01:55:54 IST 2026
[2026-06-27 01:55:54,068.068 INFO    ] ================================================
[2026-06-27 01:55:54,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:55:54
[2026-06-27 01:55:54,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:55:54,853.853 INFO    ] Initializing speech engine...
[2026-06-27 01:55:54,858.858 INFO    ] 2026-06-27 01:55:54
[2026-06-27 01:55:55,049.049 INFO    ] 2026-06-27 01:55:55
[2026-06-27 01:55:55,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:55:55,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:55:55,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:55:55,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:55:55,470.470 INFO    ] time= 27/06/2026 01:55:55
[2026-06-27 01:55:55,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:55:55,508.508 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:55:55,578.578 INFO    ] No existing commands found in stream
[2026-06-27 01:56:00,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:56:00,595.595 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-27 01:56:01,199.199 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 01:56:01,201.201 INFO    ] Checking for system updates...
[2026-06-27 01:56:01,250.250 INFO    ] 200
[2026-06-27 01:56:01,252.252 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:56:01,303.303 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:56:01,306.306 INFO    ] No update needed
[2026-06-27 01:56:01,309.309 INFO    ] Checking for camera pi updates...
[2026-06-27 01:56:01,344.344 INFO    ] 200
[2026-06-27 01:56:01,346.346 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:56:01,393.393 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:56:01,439.439 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:56:01,441.441 INFO    ] No camera update needed
[2026-06-27 01:56:01,443.443 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:56:01,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:56:01,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:56:01,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:56:03,495.495 INFO    ] ================================================
[2026-06-27 01:56:03,510.510 INFO    ] Launching Daemon at Sat Jun 27 01:56:03 IST 2026
[2026-06-27 01:56:03,521.521 INFO    ] ================================================
[2026-06-27 01:56:03,874.874 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:56:03
[2026-06-27 01:56:04,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:56:04,372.372 INFO    ] Initializing speech engine...
[2026-06-27 01:56:04,378.378 INFO    ] 2026-06-27 01:56:04
[2026-06-27 01:56:04,591.591 INFO    ] 2026-06-27 01:56:04
[2026-06-27 01:56:04,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:56:04,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:56:04,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:56:04,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:56:05,031.031 INFO    ] time= 27/06/2026 01:56:04
[2026-06-27 01:56:05,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:56:05,062.062 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:56:05,155.155 INFO    ] No existing commands found in stream
[2026-06-27 01:56:10,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:56:10,173.173 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-27 01:56:11,578.578 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:56:11,580.580 INFO    ] Checking for system updates...
[2026-06-27 01:56:11,601.601 INFO    ] 200
[2026-06-27 01:56:11,602.602 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:56:11,637.637 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:56:11,638.638 INFO    ] No update needed
[2026-06-27 01:56:11,640.640 INFO    ] Checking for camera pi updates...
[2026-06-27 01:56:11,662.662 INFO    ] 200
[2026-06-27 01:56:11,664.664 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:56:11,688.688 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:56:11,729.729 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:56:11,731.731 INFO    ] No camera update needed
[2026-06-27 01:56:11,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:56:11,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:56:11,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:56:11,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:56:13,778.778 INFO    ] ================================================
[2026-06-27 01:56:13,794.794 INFO    ] Launching Daemon at Sat Jun 27 01:56:13 IST 2026
[2026-06-27 01:56:13,804.804 INFO    ] ================================================
[2026-06-27 01:56:14,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:56:14
[2026-06-27 01:56:14,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:56:14,688.688 INFO    ] Initializing speech engine...
[2026-06-27 01:56:14,692.692 INFO    ] 2026-06-27 01:56:14
[2026-06-27 01:56:14,906.906 INFO    ] 2026-06-27 01:56:14
[2026-06-27 01:56:14,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:56:15,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:56:15,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:56:15,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:56:15,326.326 INFO    ] time= 27/06/2026 01:56:15
[2026-06-27 01:56:15,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:56:15,357.357 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:56:15,424.424 INFO    ] No existing commands found in stream
[2026-06-27 01:56:20,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:56:20,442.442 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-27 01:56:24,681.681 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:56:24,683.683 INFO    ] Checking for system updates...
[2026-06-27 01:56:24,705.705 INFO    ] 200
[2026-06-27 01:56:24,707.707 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:56:24,740.740 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:56:24,741.741 INFO    ] No update needed
[2026-06-27 01:56:24,742.742 INFO    ] Checking for camera pi updates...
[2026-06-27 01:56:24,763.763 INFO    ] 200
[2026-06-27 01:56:24,765.765 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:56:24,788.788 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:56:24,831.831 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:56:24,832.832 INFO    ] No camera update needed
[2026-06-27 01:56:24,834.834 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:56:24,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:56:24,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:56:24,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:56:26,881.881 INFO    ] ================================================
[2026-06-27 01:56:26,896.896 INFO    ] Launching Daemon at Sat Jun 27 01:56:26 IST 2026
[2026-06-27 01:56:26,907.907 INFO    ] ================================================
[2026-06-27 01:56:27,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:56:27
[2026-06-27 01:56:27,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:56:27,702.702 INFO    ] Initializing speech engine...
[2026-06-27 01:56:27,710.710 INFO    ] 2026-06-27 01:56:27
[2026-06-27 01:56:27,919.919 INFO    ] 2026-06-27 01:56:27
[2026-06-27 01:56:27,948.948 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:56:28,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:56:28,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:56:28,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:56:28,335.335 INFO    ] time= 27/06/2026 01:56:28
[2026-06-27 01:56:28,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:56:28,374.374 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:56:28,439.439 INFO    ] No existing commands found in stream
[2026-06-27 01:56:33,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:56:33,452.452 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-27 01:56:37,682.682 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 01:56:37,684.684 INFO    ] Checking for system updates...
[2026-06-27 01:56:37,704.704 INFO    ] 200
[2026-06-27 01:56:37,706.706 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:56:37,736.736 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:56:37,738.738 INFO    ] No update needed
[2026-06-27 01:56:37,739.739 INFO    ] Checking for camera pi updates...
[2026-06-27 01:56:37,760.760 INFO    ] 200
[2026-06-27 01:56:37,761.761 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:56:37,785.785 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:56:37,929.929 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:56:37,930.930 INFO    ] No camera update needed
[2026-06-27 01:56:37,931.931 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:56:37,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:56:37,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:56:37,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:56:39,979.979 INFO    ] ================================================
[2026-06-27 01:56:40,997.997 INFO    ] Launching Daemon at Sat Jun 27 01:56:39 IST 2026
[2026-06-27 01:56:40,008.008 INFO    ] ================================================
[2026-06-27 01:56:40,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:56:40
[2026-06-27 01:56:40,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:56:40,824.824 INFO    ] Initializing speech engine...
[2026-06-27 01:56:40,833.833 INFO    ] 2026-06-27 01:56:40
[2026-06-27 01:56:41,040.040 INFO    ] 2026-06-27 01:56:41
[2026-06-27 01:56:41,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:56:41,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:56:41,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:56:41,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:56:41,462.462 INFO    ] time= 27/06/2026 01:56:41
[2026-06-27 01:56:41,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:56:41,492.492 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:56:41,560.560 INFO    ] No existing commands found in stream
[2026-06-27 01:56:46,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:56:46,572.572 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-27 01:56:50,332.332 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 01:56:50,334.334 INFO    ] Checking for system updates...
[2026-06-27 01:56:50,358.358 INFO    ] 200
[2026-06-27 01:56:50,360.360 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:56:50,391.391 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:56:50,392.392 INFO    ] No update needed
[2026-06-27 01:56:50,393.393 INFO    ] Checking for camera pi updates...
[2026-06-27 01:56:50,414.414 INFO    ] 200
[2026-06-27 01:56:50,415.415 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:56:50,439.439 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:56:50,482.482 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:56:50,484.484 INFO    ] No camera update needed
[2026-06-27 01:56:50,486.486 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:56:50,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:56:50,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:56:50,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:56:52,534.534 INFO    ] ================================================
[2026-06-27 01:56:52,550.550 INFO    ] Launching Daemon at Sat Jun 27 01:56:52 IST 2026
[2026-06-27 01:56:52,560.560 INFO    ] ================================================
[2026-06-27 01:56:52,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:56:52
[2026-06-27 01:56:53,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:56:53,368.368 INFO    ] Initializing speech engine...
[2026-06-27 01:56:53,376.376 INFO    ] 2026-06-27 01:56:53
[2026-06-27 01:56:53,588.588 INFO    ] 2026-06-27 01:56:53
[2026-06-27 01:56:53,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:56:53,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:56:53,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:56:53,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:56:54,006.006 INFO    ] time= 27/06/2026 01:56:53
[2026-06-27 01:56:54,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:56:54,035.035 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:56:54,101.101 INFO    ] No existing commands found in stream
[2026-06-27 01:56:59,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:56:59,118.118 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-27 01:57:02,720.720 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 01:57:02,722.722 INFO    ] Checking for system updates...
[2026-06-27 01:57:02,742.742 INFO    ] 200
[2026-06-27 01:57:02,744.744 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:57:02,783.783 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:57:02,785.785 INFO    ] No update needed
[2026-06-27 01:57:02,786.786 INFO    ] Checking for camera pi updates...
[2026-06-27 01:57:02,813.813 INFO    ] 200
[2026-06-27 01:57:02,815.815 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:57:02,841.841 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:57:02,872.872 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:57:02,873.873 INFO    ] No camera update needed
[2026-06-27 01:57:02,875.875 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:57:02,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:57:02,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:57:02,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:57:04,922.922 INFO    ] ================================================
[2026-06-27 01:57:04,938.938 INFO    ] Launching Daemon at Sat Jun 27 01:57:04 IST 2026
[2026-06-27 01:57:04,949.949 INFO    ] ================================================
[2026-06-27 01:57:05,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:57:05
[2026-06-27 01:57:05,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:57:05,746.746 INFO    ] Initializing speech engine...
[2026-06-27 01:57:05,756.756 INFO    ] 2026-06-27 01:57:05
[2026-06-27 01:57:05,969.969 INFO    ] 2026-06-27 01:57:05
[2026-06-27 01:57:06,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:57:06,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:57:06,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:57:06,339.339 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:57:06,376.376 INFO    ] time= 27/06/2026 01:57:06
[2026-06-27 01:57:06,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:57:06,449.449 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:57:06,516.516 INFO    ] No existing commands found in stream
[2026-06-27 01:57:11,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:57:11,534.534 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-27 01:57:13,445.445 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 01:57:13,446.446 INFO    ] Checking for system updates...
[2026-06-27 01:57:13,467.467 INFO    ] 200
[2026-06-27 01:57:13,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:57:13,499.499 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:57:13,501.501 INFO    ] No update needed
[2026-06-27 01:57:13,502.502 INFO    ] Checking for camera pi updates...
[2026-06-27 01:57:13,525.525 INFO    ] 200
[2026-06-27 01:57:13,527.527 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:57:13,551.551 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:57:13,597.597 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:57:13,598.598 INFO    ] No camera update needed
[2026-06-27 01:57:13,600.600 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:57:13,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:57:13,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:57:13,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:57:15,648.648 INFO    ] ================================================
[2026-06-27 01:57:15,663.663 INFO    ] Launching Daemon at Sat Jun 27 01:57:15 IST 2026
[2026-06-27 01:57:15,675.675 INFO    ] ================================================
[2026-06-27 01:57:16,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:57:16
[2026-06-27 01:57:16,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:57:16,460.460 INFO    ] Initializing speech engine...
[2026-06-27 01:57:16,470.470 INFO    ] 2026-06-27 01:57:16
[2026-06-27 01:57:16,674.674 INFO    ] 2026-06-27 01:57:16
[2026-06-27 01:57:16,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:57:16,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:57:16,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:57:17,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:57:17,077.077 INFO    ] time= 27/06/2026 01:57:17
[2026-06-27 01:57:17,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:57:17,122.122 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:57:17,193.193 INFO    ] No existing commands found in stream
[2026-06-27 01:57:22,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:57:22,206.206 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-27 01:57:23,212.212 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 01:57:23,213.213 INFO    ] Checking for system updates...
[2026-06-27 01:57:23,235.235 INFO    ] 200
[2026-06-27 01:57:23,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:57:23,268.268 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:57:23,270.270 INFO    ] No update needed
[2026-06-27 01:57:23,271.271 INFO    ] Checking for camera pi updates...
[2026-06-27 01:57:23,294.294 INFO    ] 200
[2026-06-27 01:57:23,295.295 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:57:23,320.320 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:57:23,360.360 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:57:23,361.361 INFO    ] No camera update needed
[2026-06-27 01:57:23,362.362 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:57:23,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:57:23,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:57:23,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:57:25,408.408 INFO    ] ================================================
[2026-06-27 01:57:25,424.424 INFO    ] Launching Daemon at Sat Jun 27 01:57:25 IST 2026
[2026-06-27 01:57:25,435.435 INFO    ] ================================================
[2026-06-27 01:57:25,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:57:25
[2026-06-27 01:57:26,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:57:26,214.214 INFO    ] Initializing speech engine...
[2026-06-27 01:57:26,225.225 INFO    ] 2026-06-27 01:57:26
[2026-06-27 01:57:26,434.434 INFO    ] 2026-06-27 01:57:26
[2026-06-27 01:57:26,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:57:26,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:57:26,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:57:26,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:57:26,850.850 INFO    ] time= 27/06/2026 01:57:26
[2026-06-27 01:57:26,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:57:26,883.883 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:57:26,951.951 INFO    ] No existing commands found in stream
[2026-06-27 01:57:31,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:57:31,965.965 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-27 01:57:32,922.922 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 01:57:32,924.924 INFO    ] Checking for system updates...
[2026-06-27 01:57:32,945.945 INFO    ] 200
[2026-06-27 01:57:32,946.946 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:57:32,977.977 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:57:32,978.978 INFO    ] No update needed
[2026-06-27 01:57:32,980.980 INFO    ] Checking for camera pi updates...
[2026-06-27 01:57:32,999.999 INFO    ] 200
[2026-06-27 01:57:33,001.001 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:57:33,028.028 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:57:33,056.056 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:57:33,057.057 INFO    ] No camera update needed
[2026-06-27 01:57:33,058.058 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:57:33,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:57:33,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:57:33,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:57:35,106.106 INFO    ] ================================================
[2026-06-27 01:57:35,122.122 INFO    ] Launching Daemon at Sat Jun 27 01:57:35 IST 2026
[2026-06-27 01:57:35,133.133 INFO    ] ================================================
[2026-06-27 01:57:35,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:57:35
[2026-06-27 01:57:35,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:57:35,927.927 INFO    ] Initializing speech engine...
[2026-06-27 01:57:35,932.932 INFO    ] 2026-06-27 01:57:35
[2026-06-27 01:57:36,137.137 INFO    ] 2026-06-27 01:57:36
[2026-06-27 01:57:36,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:57:36,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:57:36,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:57:36,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:57:36,562.562 INFO    ] time= 27/06/2026 01:57:36
[2026-06-27 01:57:36,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:57:36,590.590 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:57:36,657.657 INFO    ] No existing commands found in stream
[2026-06-27 01:57:41,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:57:41,675.675 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-27 01:57:42,863.863 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 01:57:42,865.865 INFO    ] Checking for system updates...
[2026-06-27 01:57:42,886.886 INFO    ] 200
[2026-06-27 01:57:42,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:57:42,920.920 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:57:42,921.921 INFO    ] No update needed
[2026-06-27 01:57:42,923.923 INFO    ] Checking for camera pi updates...
[2026-06-27 01:57:42,948.948 INFO    ] 200
[2026-06-27 01:57:42,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:57:42,987.987 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:57:43,030.030 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:57:43,032.032 INFO    ] No camera update needed
[2026-06-27 01:57:43,033.033 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:57:43,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:57:43,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:57:43,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:57:45,080.080 INFO    ] ================================================
[2026-06-27 01:57:45,097.097 INFO    ] Launching Daemon at Sat Jun 27 01:57:45 IST 2026
[2026-06-27 01:57:45,108.108 INFO    ] ================================================
[2026-06-27 01:57:45,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:57:45
[2026-06-27 01:57:45,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:57:45,918.918 INFO    ] Initializing speech engine...
[2026-06-27 01:57:45,922.922 INFO    ] 2026-06-27 01:57:45
[2026-06-27 01:57:46,140.140 INFO    ] 2026-06-27 01:57:46
[2026-06-27 01:57:46,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:57:46,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:57:46,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:57:46,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:57:46,557.557 INFO    ] time= 27/06/2026 01:57:46
[2026-06-27 01:57:46,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:57:46,590.590 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:57:46,657.657 INFO    ] No existing commands found in stream
[2026-06-27 01:57:51,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:57:51,669.669 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-27 01:57:53,052.052 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 01:57:53,053.053 INFO    ] Checking for system updates...
[2026-06-27 01:57:53,075.075 INFO    ] 200
[2026-06-27 01:57:53,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:57:53,110.110 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:57:53,111.111 INFO    ] No update needed
[2026-06-27 01:57:53,112.112 INFO    ] Checking for camera pi updates...
[2026-06-27 01:57:53,132.132 INFO    ] 200
[2026-06-27 01:57:53,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:57:53,158.158 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:57:53,290.290 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:57:53,291.291 INFO    ] No camera update needed
[2026-06-27 01:57:53,292.292 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:57:53,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:57:53,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:57:53,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:57:55,339.339 INFO    ] ================================================
[2026-06-27 01:57:55,354.354 INFO    ] Launching Daemon at Sat Jun 27 01:57:55 IST 2026
[2026-06-27 01:57:55,366.366 INFO    ] ================================================
[2026-06-27 01:57:55,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:57:55
[2026-06-27 01:57:56,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:57:56,185.185 INFO    ] Initializing speech engine...
[2026-06-27 01:57:56,195.195 INFO    ] 2026-06-27 01:57:56
[2026-06-27 01:57:56,400.400 INFO    ] 2026-06-27 01:57:56
[2026-06-27 01:57:56,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:57:56,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:57:56,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:57:56,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:57:56,822.822 INFO    ] time= 27/06/2026 01:57:56
[2026-06-27 01:57:56,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:57:56,852.852 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:57:56,919.919 INFO    ] No existing commands found in stream
[2026-06-27 01:58:01,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:58:01,926.926 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-27 01:58:06,037.037 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 01:58:06,039.039 INFO    ] Checking for system updates...
[2026-06-27 01:58:06,060.060 INFO    ] 200
[2026-06-27 01:58:06,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:58:06,093.093 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:58:06,095.095 INFO    ] No update needed
[2026-06-27 01:58:06,096.096 INFO    ] Checking for camera pi updates...
[2026-06-27 01:58:06,116.116 INFO    ] 200
[2026-06-27 01:58:06,117.117 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:58:06,140.140 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:58:06,185.185 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:58:06,187.187 INFO    ] No camera update needed
[2026-06-27 01:58:06,188.188 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:58:06,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:58:06,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:58:06,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:58:08,236.236 INFO    ] ================================================
[2026-06-27 01:58:08,253.253 INFO    ] Launching Daemon at Sat Jun 27 01:58:08 IST 2026
[2026-06-27 01:58:08,264.264 INFO    ] ================================================
[2026-06-27 01:58:08,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:58:08
[2026-06-27 01:58:08,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:58:09,064.064 INFO    ] Initializing speech engine...
[2026-06-27 01:58:09,070.070 INFO    ] 2026-06-27 01:58:09
[2026-06-27 01:58:09,280.280 INFO    ] 2026-06-27 01:58:09
[2026-06-27 01:58:09,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:58:09,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:58:09,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:58:09,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:58:09,700.700 INFO    ] time= 27/06/2026 01:58:09
[2026-06-27 01:58:09,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:58:09,729.729 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:58:09,796.796 INFO    ] No existing commands found in stream
[2026-06-27 01:58:14,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:58:14,814.814 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-27 01:58:15,927.927 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 01:58:15,929.929 INFO    ] Checking for system updates...
[2026-06-27 01:58:15,951.951 INFO    ] 200
[2026-06-27 01:58:15,953.953 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:58:15,987.987 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:58:15,988.988 INFO    ] No update needed
[2026-06-27 01:58:15,989.989 INFO    ] Checking for camera pi updates...
[2026-06-27 01:58:16,010.010 INFO    ] 200
[2026-06-27 01:58:16,011.011 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:58:16,037.037 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:58:16,079.079 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:58:16,080.080 INFO    ] No camera update needed
[2026-06-27 01:58:16,081.081 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:58:16,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:58:16,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:58:16,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:58:18,129.129 INFO    ] ================================================
[2026-06-27 01:58:18,145.145 INFO    ] Launching Daemon at Sat Jun 27 01:58:18 IST 2026
[2026-06-27 01:58:18,155.155 INFO    ] ================================================
[2026-06-27 01:58:18,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:58:18
[2026-06-27 01:58:18,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:58:18,967.967 INFO    ] Initializing speech engine...
[2026-06-27 01:58:18,972.972 INFO    ] 2026-06-27 01:58:18
[2026-06-27 01:58:19,177.177 INFO    ] 2026-06-27 01:58:19
[2026-06-27 01:58:19,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:58:19,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:58:19,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:58:19,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:58:19,592.592 INFO    ] time= 27/06/2026 01:58:19
[2026-06-27 01:58:19,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:58:19,621.621 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:58:19,716.716 INFO    ] No existing commands found in stream
[2026-06-27 01:58:24,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:58:24,733.733 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-27 01:58:28,127.127 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 01:58:28,129.129 INFO    ] Checking for system updates...
[2026-06-27 01:58:28,151.151 INFO    ] 200
[2026-06-27 01:58:28,153.153 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:58:28,183.183 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:58:28,184.184 INFO    ] No update needed
[2026-06-27 01:58:28,185.185 INFO    ] Checking for camera pi updates...
[2026-06-27 01:58:28,206.206 INFO    ] 200
[2026-06-27 01:58:28,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:58:28,232.232 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:58:28,275.275 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:58:28,276.276 INFO    ] No camera update needed
[2026-06-27 01:58:28,278.278 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:58:28,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:58:28,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:58:28,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:58:30,325.325 INFO    ] ================================================
[2026-06-27 01:58:30,341.341 INFO    ] Launching Daemon at Sat Jun 27 01:58:30 IST 2026
[2026-06-27 01:58:30,352.352 INFO    ] ================================================
[2026-06-27 01:58:30,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:58:30
[2026-06-27 01:58:31,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:58:31,159.159 INFO    ] Initializing speech engine...
[2026-06-27 01:58:31,165.165 INFO    ] 2026-06-27 01:58:31
[2026-06-27 01:58:31,396.396 INFO    ] 2026-06-27 01:58:31
[2026-06-27 01:58:31,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:58:32,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:58:32,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:58:32,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:58:32,800.800 INFO    ] time= 27/06/2026 01:58:32
[2026-06-27 01:58:32,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:58:32,814.814 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:58:32,877.877 INFO    ] No existing commands found in stream
[2026-06-27 01:58:37,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:58:37,888.888 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-27 01:58:42,130.130 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 01:58:42,132.132 INFO    ] Checking for system updates...
[2026-06-27 01:58:42,152.152 INFO    ] 200
[2026-06-27 01:58:42,154.154 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:58:42,185.185 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:58:42,186.186 INFO    ] No update needed
[2026-06-27 01:58:42,187.187 INFO    ] Checking for camera pi updates...
[2026-06-27 01:58:42,207.207 INFO    ] 200
[2026-06-27 01:58:42,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:58:42,233.233 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:58:42,379.379 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:58:42,381.381 INFO    ] No camera update needed
[2026-06-27 01:58:42,382.382 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:58:42,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:58:42,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:58:42,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:58:44,431.431 INFO    ] ================================================
[2026-06-27 01:58:44,446.446 INFO    ] Launching Daemon at Sat Jun 27 01:58:44 IST 2026
[2026-06-27 01:58:44,457.457 INFO    ] ================================================
[2026-06-27 01:58:44,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:58:44
[2026-06-27 01:58:45,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:58:45,289.289 INFO    ] Initializing speech engine...
[2026-06-27 01:58:45,295.295 INFO    ] 2026-06-27 01:58:45
[2026-06-27 01:58:45,499.499 INFO    ] 2026-06-27 01:58:45
[2026-06-27 01:58:45,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:58:45,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:58:45,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:58:45,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:58:45,911.911 INFO    ] time= 27/06/2026 01:58:45
[2026-06-27 01:58:45,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:58:45,945.945 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:58:46,035.035 INFO    ] No existing commands found in stream
[2026-06-27 01:58:51,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:58:51,047.047 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-27 01:58:51,645.645 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 01:58:51,647.647 INFO    ] Checking for system updates...
[2026-06-27 01:58:51,670.670 INFO    ] 200
[2026-06-27 01:58:51,672.672 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:58:51,708.708 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:58:51,709.709 INFO    ] No update needed
[2026-06-27 01:58:51,711.711 INFO    ] Checking for camera pi updates...
[2026-06-27 01:58:51,735.735 INFO    ] 200
[2026-06-27 01:58:51,736.736 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:58:51,763.763 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:58:51,808.808 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:58:51,809.809 INFO    ] No camera update needed
[2026-06-27 01:58:51,811.811 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:58:51,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:58:51,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:58:51,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:58:53,858.858 INFO    ] ================================================
[2026-06-27 01:58:53,874.874 INFO    ] Launching Daemon at Sat Jun 27 01:58:53 IST 2026
[2026-06-27 01:58:53,885.885 INFO    ] ================================================
[2026-06-27 01:58:54,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:58:54
[2026-06-27 01:58:54,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:58:54,736.736 INFO    ] Initializing speech engine...
[2026-06-27 01:58:54,746.746 INFO    ] 2026-06-27 01:58:54
[2026-06-27 01:58:54,950.950 INFO    ] 2026-06-27 01:58:54
[2026-06-27 01:58:54,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:58:55,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:58:55,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:58:55,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:58:55,372.372 INFO    ] time= 27/06/2026 01:58:55
[2026-06-27 01:58:55,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:58:55,400.400 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:58:55,467.467 INFO    ] No existing commands found in stream
[2026-06-27 01:59:00,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:59:00,479.479 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-27 01:59:00,925.925 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 01:59:00,926.926 INFO    ] Checking for system updates...
[2026-06-27 01:59:00,947.947 INFO    ] 200
[2026-06-27 01:59:00,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:59:00,981.981 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:59:00,982.982 INFO    ] No update needed
[2026-06-27 01:59:00,984.984 INFO    ] Checking for camera pi updates...
[2026-06-27 01:59:01,004.004 INFO    ] 200
[2026-06-27 01:59:01,005.005 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:59:01,031.031 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:59:01,072.072 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:59:01,073.073 INFO    ] No camera update needed
[2026-06-27 01:59:01,074.074 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:59:01,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:59:01,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:59:01,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:59:03,105.105 INFO    ] ================================================
[2026-06-27 01:59:03,113.113 INFO    ] Launching Daemon at Sat Jun 27 01:59:03 IST 2026
[2026-06-27 01:59:03,120.120 INFO    ] ================================================
[2026-06-27 01:59:03,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:59:03
[2026-06-27 01:59:03,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:59:03,971.971 INFO    ] Initializing speech engine...
[2026-06-27 01:59:03,978.978 INFO    ] 2026-06-27 01:59:03
[2026-06-27 01:59:04,187.187 INFO    ] 2026-06-27 01:59:04
[2026-06-27 01:59:04,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:59:04,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:59:04,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:59:04,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:59:04,545.545 INFO    ] time= 27/06/2026 01:59:04
[2026-06-27 01:59:04,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:59:04,639.639 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:59:04,710.710 INFO    ] No existing commands found in stream
[2026-06-27 01:59:09,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:59:09,738.738 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-27 01:59:12,988.988 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 01:59:12,989.989 INFO    ] Checking for system updates...
[2026-06-27 01:59:13,011.011 INFO    ] 200
[2026-06-27 01:59:13,013.013 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:59:13,048.048 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:59:13,049.049 INFO    ] No update needed
[2026-06-27 01:59:13,050.050 INFO    ] Checking for camera pi updates...
[2026-06-27 01:59:13,074.074 INFO    ] 200
[2026-06-27 01:59:13,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:59:13,103.103 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:59:13,152.152 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:59:13,153.153 INFO    ] No camera update needed
[2026-06-27 01:59:13,155.155 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:59:13,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:59:13,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:59:13,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:59:15,213.213 INFO    ] ================================================
[2026-06-27 01:59:15,233.233 INFO    ] Launching Daemon at Sat Jun 27 01:59:15 IST 2026
[2026-06-27 01:59:15,244.244 INFO    ] ================================================
[2026-06-27 01:59:15,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:59:15
[2026-06-27 01:59:15,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:59:16,097.097 INFO    ] Initializing speech engine...
[2026-06-27 01:59:16,102.102 INFO    ] 2026-06-27 01:59:16
[2026-06-27 01:59:16,310.310 INFO    ] 2026-06-27 01:59:16
[2026-06-27 01:59:16,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:59:16,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:59:16,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:59:16,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:59:16,733.733 INFO    ] time= 27/06/2026 01:59:16
[2026-06-27 01:59:16,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:59:16,763.763 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:59:16,854.854 INFO    ] No existing commands found in stream
[2026-06-27 01:59:21,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:59:21,882.882 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-27 01:59:25,562.562 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 01:59:25,564.564 INFO    ] Checking for system updates...
[2026-06-27 01:59:25,590.590 INFO    ] 200
[2026-06-27 01:59:25,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:59:25,624.624 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:59:25,626.626 INFO    ] No update needed
[2026-06-27 01:59:25,627.627 INFO    ] Checking for camera pi updates...
[2026-06-27 01:59:25,647.647 INFO    ] 200
[2026-06-27 01:59:25,649.649 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:59:25,674.674 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:59:25,718.718 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:59:25,719.719 INFO    ] No camera update needed
[2026-06-27 01:59:25,721.721 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:59:25,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:59:25,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:59:25,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:59:27,767.767 INFO    ] ================================================
[2026-06-27 01:59:27,782.782 INFO    ] Launching Daemon at Sat Jun 27 01:59:27 IST 2026
[2026-06-27 01:59:27,793.793 INFO    ] ================================================
[2026-06-27 01:59:28,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:59:28
[2026-06-27 01:59:28,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:59:28,580.580 INFO    ] Initializing speech engine...
[2026-06-27 01:59:28,588.588 INFO    ] 2026-06-27 01:59:28
[2026-06-27 01:59:28,808.808 INFO    ] 2026-06-27 01:59:28
[2026-06-27 01:59:28,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:59:29,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:59:29,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:59:29,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:59:29,242.242 INFO    ] time= 27/06/2026 01:59:29
[2026-06-27 01:59:29,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:59:29,288.288 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:59:29,363.363 INFO    ] No existing commands found in stream
[2026-06-27 01:59:34,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:59:34,377.377 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-27 01:59:38,582.582 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 01:59:38,583.583 INFO    ] Checking for system updates...
[2026-06-27 01:59:38,606.606 INFO    ] 200
[2026-06-27 01:59:38,607.607 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:59:38,637.637 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:59:38,639.639 INFO    ] No update needed
[2026-06-27 01:59:38,640.640 INFO    ] Checking for camera pi updates...
[2026-06-27 01:59:38,660.660 INFO    ] 200
[2026-06-27 01:59:38,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:59:38,686.686 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:59:38,727.727 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 01:59:38,728.728 INFO    ] No camera update needed
[2026-06-27 01:59:38,730.730 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:59:38,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:59:38,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:59:38,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:59:40,776.776 INFO    ] ================================================
[2026-06-27 01:59:40,792.792 INFO    ] Launching Daemon at Sat Jun 27 01:59:40 IST 2026
[2026-06-27 01:59:40,802.802 INFO    ] ================================================
[2026-06-27 01:59:41,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:59:41
[2026-06-27 01:59:41,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:59:41,645.645 INFO    ] Initializing speech engine...
[2026-06-27 01:59:41,650.650 INFO    ] 2026-06-27 01:59:41
[2026-06-27 01:59:41,859.859 INFO    ] 2026-06-27 01:59:41
[2026-06-27 01:59:41,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:59:42,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:59:42,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:59:42,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:59:42,281.281 INFO    ] time= 27/06/2026 01:59:42
[2026-06-27 01:59:42,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:59:42,311.311 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:59:42,377.377 INFO    ] No existing commands found in stream
[2026-06-27 01:59:47,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:59:47,395.395 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-27 01:59:48,660.660 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 01:59:48,661.661 INFO    ] Checking for system updates...
[2026-06-27 01:59:48,683.683 INFO    ] 200
[2026-06-27 01:59:48,685.685 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:59:48,718.718 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:59:48,719.719 INFO    ] No update needed
[2026-06-27 01:59:48,720.720 INFO    ] Checking for camera pi updates...
[2026-06-27 01:59:48,740.740 INFO    ] 200
[2026-06-27 01:59:48,741.741 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 01:59:48,766.766 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 01:59:48,821.821 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 01:59:48,822.822 INFO    ] No camera update needed
[2026-06-27 01:59:48,823.823 INFO    ] Script finished. Safe exiting...
[2026-06-27 01:59:48,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 01:59:48,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 01:59:48,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 01:59:50,871.871 INFO    ] ================================================
[2026-06-27 01:59:50,886.886 INFO    ] Launching Daemon at Sat Jun 27 01:59:50 IST 2026
[2026-06-27 01:59:50,897.897 INFO    ] ================================================
[2026-06-27 01:59:51,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 01:59:51
[2026-06-27 01:59:51,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 01:59:51,679.679 INFO    ] Initializing speech engine...
[2026-06-27 01:59:51,690.690 INFO    ] 2026-06-27 01:59:51
[2026-06-27 01:59:51,902.902 INFO    ] 2026-06-27 01:59:51
[2026-06-27 01:59:51,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 01:59:52,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 01:59:52,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 01:59:52,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 01:59:52,332.332 INFO    ] time= 27/06/2026 01:59:52
[2026-06-27 01:59:52,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 01:59:52,363.363 INFO    ] Checking for existing commands in stream...
[2026-06-27 01:59:52,430.430 INFO    ] No existing commands found in stream
[2026-06-27 01:59:57,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 01:59:57,447.447 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-27 02:00:01,044.044 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:00:01,045.045 INFO    ] Checking for system updates...
[2026-06-27 02:00:01,107.107 INFO    ] 200
[2026-06-27 02:00:01,109.109 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:00:01,204.204 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:00:01,215.215 INFO    ] No update needed
[2026-06-27 02:00:01,217.217 INFO    ] Checking for camera pi updates...
[2026-06-27 02:00:01,371.371 INFO    ] 200
[2026-06-27 02:00:01,373.373 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:00:01,639.639 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:00:01,709.709 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:00:01,715.715 INFO    ] No camera update needed
[2026-06-27 02:00:01,717.717 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:00:01,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:00:01,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:00:01,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:00:03,805.805 INFO    ] ================================================
[2026-06-27 02:00:03,814.814 INFO    ] Launching Daemon at Sat Jun 27 02:00:03 IST 2026
[2026-06-27 02:00:03,823.823 INFO    ] ================================================
[2026-06-27 02:00:04,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:00:04
[2026-06-27 02:00:04,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:00:04,602.602 INFO    ] Initializing speech engine...
[2026-06-27 02:00:04,606.606 INFO    ] 2026-06-27 02:00:04
[2026-06-27 02:00:04,823.823 INFO    ] 2026-06-27 02:00:04
[2026-06-27 02:00:04,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:00:04,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:00:05,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:00:05,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:00:05,238.238 INFO    ] time= 27/06/2026 02:00:05
[2026-06-27 02:00:05,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:00:05,295.295 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:00:05,367.367 INFO    ] No existing commands found in stream
[2026-06-27 02:00:10,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:00:10,379.379 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-27 02:00:14,468.468 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 02:00:14,470.470 INFO    ] Checking for system updates...
[2026-06-27 02:00:14,493.493 INFO    ] 200
[2026-06-27 02:00:14,495.495 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:00:14,528.528 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:00:14,530.530 INFO    ] No update needed
[2026-06-27 02:00:14,531.531 INFO    ] Checking for camera pi updates...
[2026-06-27 02:00:14,551.551 INFO    ] 200
[2026-06-27 02:00:14,552.552 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:00:14,579.579 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:00:14,621.621 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:00:14,623.623 INFO    ] No camera update needed
[2026-06-27 02:00:14,624.624 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:00:14,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:00:14,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:00:14,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:00:16,663.663 INFO    ] ================================================
[2026-06-27 02:00:16,678.678 INFO    ] Launching Daemon at Sat Jun 27 02:00:16 IST 2026
[2026-06-27 02:00:16,689.689 INFO    ] ================================================
[2026-06-27 02:00:17,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:00:17
[2026-06-27 02:00:17,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:00:17,472.472 INFO    ] Initializing speech engine...
[2026-06-27 02:00:17,477.477 INFO    ] 2026-06-27 02:00:17
[2026-06-27 02:00:17,699.699 INFO    ] 2026-06-27 02:00:17
[2026-06-27 02:00:17,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:00:17,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:00:17,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:00:18,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:00:18,121.121 INFO    ] time= 27/06/2026 02:00:18
[2026-06-27 02:00:18,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:00:18,151.151 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:00:18,218.218 INFO    ] No existing commands found in stream
[2026-06-27 02:00:23,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:00:23,235.235 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-27 02:00:26,947.947 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 02:00:26,949.949 INFO    ] Checking for system updates...
[2026-06-27 02:00:26,971.971 INFO    ] 200
[2026-06-27 02:00:26,972.972 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:00:27,002.002 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:00:27,004.004 INFO    ] No update needed
[2026-06-27 02:00:27,005.005 INFO    ] Checking for camera pi updates...
[2026-06-27 02:00:27,026.026 INFO    ] 200
[2026-06-27 02:00:27,028.028 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:00:27,051.051 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:00:27,096.096 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:00:27,102.102 INFO    ] No camera update needed
[2026-06-27 02:00:27,104.104 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:00:27,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:00:27,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:00:27,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:00:29,150.150 INFO    ] ================================================
[2026-06-27 02:00:29,165.165 INFO    ] Launching Daemon at Sat Jun 27 02:00:29 IST 2026
[2026-06-27 02:00:29,176.176 INFO    ] ================================================
[2026-06-27 02:00:29,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:00:29
[2026-06-27 02:00:29,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:00:30,001.001 INFO    ] Initializing speech engine...
[2026-06-27 02:00:30,006.006 INFO    ] 2026-06-27 02:00:30
[2026-06-27 02:00:30,210.210 INFO    ] 2026-06-27 02:00:30
[2026-06-27 02:00:30,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:00:30,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:00:30,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:00:30,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:00:30,617.617 INFO    ] time= 27/06/2026 02:00:30
[2026-06-27 02:00:30,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:00:30,656.656 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:00:30,728.728 INFO    ] No existing commands found in stream
[2026-06-27 02:00:35,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:00:35,745.745 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-27 02:00:39,860.860 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 02:00:39,861.861 INFO    ] Checking for system updates...
[2026-06-27 02:00:39,882.882 INFO    ] 200
[2026-06-27 02:00:39,883.883 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:00:39,914.914 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:00:39,915.915 INFO    ] No update needed
[2026-06-27 02:00:39,916.916 INFO    ] Checking for camera pi updates...
[2026-06-27 02:00:39,937.937 INFO    ] 200
[2026-06-27 02:00:39,939.939 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:00:39,964.964 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:00:39,999.999 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:00:40,001.001 INFO    ] No camera update needed
[2026-06-27 02:00:40,002.002 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:00:40,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:00:40,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:00:40,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:00:42,048.048 INFO    ] ================================================
[2026-06-27 02:00:42,064.064 INFO    ] Launching Daemon at Sat Jun 27 02:00:42 IST 2026
[2026-06-27 02:00:42,074.074 INFO    ] ================================================
[2026-06-27 02:00:42,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:00:42
[2026-06-27 02:00:42,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:00:42,890.890 INFO    ] Initializing speech engine...
[2026-06-27 02:00:42,903.903 INFO    ] 2026-06-27 02:00:42
[2026-06-27 02:00:43,114.114 INFO    ] 2026-06-27 02:00:43
[2026-06-27 02:00:43,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:00:43,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:00:43,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:00:43,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:00:43,529.529 INFO    ] time= 27/06/2026 02:00:43
[2026-06-27 02:00:43,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:00:43,565.565 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:00:43,661.661 INFO    ] No existing commands found in stream
[2026-06-27 02:00:48,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:00:48,678.678 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-27 02:00:49,954.954 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 02:00:49,955.955 INFO    ] Checking for system updates...
[2026-06-27 02:00:49,977.977 INFO    ] 200
[2026-06-27 02:00:49,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:00:50,011.011 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:00:50,012.012 INFO    ] No update needed
[2026-06-27 02:00:50,013.013 INFO    ] Checking for camera pi updates...
[2026-06-27 02:00:50,034.034 INFO    ] 200
[2026-06-27 02:00:50,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:00:50,060.060 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:00:50,207.207 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:00:50,209.209 INFO    ] No camera update needed
[2026-06-27 02:00:50,210.210 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:00:50,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:00:50,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:00:50,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:00:52,257.257 INFO    ] ================================================
[2026-06-27 02:00:52,272.272 INFO    ] Launching Daemon at Sat Jun 27 02:00:52 IST 2026
[2026-06-27 02:00:52,283.283 INFO    ] ================================================
[2026-06-27 02:00:52,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:00:52
[2026-06-27 02:00:52,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:00:53,096.096 INFO    ] Initializing speech engine...
[2026-06-27 02:00:53,101.101 INFO    ] 2026-06-27 02:00:53
[2026-06-27 02:00:53,304.304 INFO    ] 2026-06-27 02:00:53
[2026-06-27 02:00:53,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:00:53,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:00:53,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:00:53,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:00:53,720.720 INFO    ] time= 27/06/2026 02:00:53
[2026-06-27 02:00:53,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:00:53,752.752 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:00:53,819.819 INFO    ] No existing commands found in stream
[2026-06-27 02:00:58,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:00:58,828.828 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-27 02:01:02,808.808 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 02:01:02,809.809 INFO    ] Checking for system updates...
[2026-06-27 02:01:02,830.830 INFO    ] 200
[2026-06-27 02:01:02,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:01:02,862.862 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:01:02,864.864 INFO    ] No update needed
[2026-06-27 02:01:02,866.866 INFO    ] Checking for camera pi updates...
[2026-06-27 02:01:02,887.887 INFO    ] 200
[2026-06-27 02:01:02,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:01:02,914.914 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:01:02,942.942 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:01:02,944.944 INFO    ] No camera update needed
[2026-06-27 02:01:02,945.945 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:01:02,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:01:02,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:01:02,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:01:04,993.993 INFO    ] ================================================
[2026-06-27 02:01:05,008.008 INFO    ] Launching Daemon at Sat Jun 27 02:01:05 IST 2026
[2026-06-27 02:01:05,019.019 INFO    ] ================================================
[2026-06-27 02:01:05,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:01:05
[2026-06-27 02:01:05,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:01:05,818.818 INFO    ] Initializing speech engine...
[2026-06-27 02:01:05,820.820 INFO    ] 2026-06-27 02:01:05
[2026-06-27 02:01:06,019.019 INFO    ] 2026-06-27 02:01:05
[2026-06-27 02:01:06,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:01:06,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:01:06,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:01:06,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:01:06,420.420 INFO    ] time= 27/06/2026 02:01:06
[2026-06-27 02:01:06,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:01:06,484.484 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:01:06,604.604 INFO    ] No existing commands found in stream
[2026-06-27 02:01:11,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:01:11,618.618 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-27 02:01:15,747.747 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 02:01:15,748.748 INFO    ] Checking for system updates...
[2026-06-27 02:01:15,770.770 INFO    ] 200
[2026-06-27 02:01:15,771.771 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:01:15,804.804 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:01:15,806.806 INFO    ] No update needed
[2026-06-27 02:01:15,807.807 INFO    ] Checking for camera pi updates...
[2026-06-27 02:01:15,827.827 INFO    ] 200
[2026-06-27 02:01:15,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:01:15,854.854 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:01:15,896.896 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:01:15,898.898 INFO    ] No camera update needed
[2026-06-27 02:01:15,899.899 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:01:15,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:01:15,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:01:15,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:01:17,946.946 INFO    ] ================================================
[2026-06-27 02:01:17,961.961 INFO    ] Launching Daemon at Sat Jun 27 02:01:17 IST 2026
[2026-06-27 02:01:17,972.972 INFO    ] ================================================
[2026-06-27 02:01:18,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:01:18
[2026-06-27 02:01:18,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:01:18,789.789 INFO    ] Initializing speech engine...
[2026-06-27 02:01:18,797.797 INFO    ] 2026-06-27 02:01:18
[2026-06-27 02:01:19,011.011 INFO    ] 2026-06-27 02:01:18
[2026-06-27 02:01:19,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:01:19,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:01:19,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:01:19,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:01:19,428.428 INFO    ] time= 27/06/2026 02:01:19
[2026-06-27 02:01:19,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:01:19,461.461 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:01:19,552.552 INFO    ] No existing commands found in stream
[2026-06-27 02:01:24,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:01:24,564.564 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-27 02:01:28,668.668 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 02:01:28,669.669 INFO    ] Checking for system updates...
[2026-06-27 02:01:28,692.692 INFO    ] 200
[2026-06-27 02:01:28,693.693 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:01:28,724.724 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:01:28,726.726 INFO    ] No update needed
[2026-06-27 02:01:28,727.727 INFO    ] Checking for camera pi updates...
[2026-06-27 02:01:28,747.747 INFO    ] 200
[2026-06-27 02:01:28,749.749 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:01:28,772.772 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:01:28,819.819 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:01:28,820.820 INFO    ] No camera update needed
[2026-06-27 02:01:28,821.821 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:01:28,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:01:28,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:01:28,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:01:30,867.867 INFO    ] ================================================
[2026-06-27 02:01:30,882.882 INFO    ] Launching Daemon at Sat Jun 27 02:01:30 IST 2026
[2026-06-27 02:01:30,893.893 INFO    ] ================================================
[2026-06-27 02:01:31,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:01:31
[2026-06-27 02:01:31,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:01:31,817.817 INFO    ] Initializing speech engine...
[2026-06-27 02:01:31,827.827 INFO    ] 2026-06-27 02:01:31
[2026-06-27 02:01:32,039.039 INFO    ] 2026-06-27 02:01:32
[2026-06-27 02:01:32,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:01:32,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:01:32,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:01:32,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:01:32,997.997 INFO    ] time= 27/06/2026 02:01:32
[2026-06-27 02:01:33,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:01:33,003.003 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:01:33,069.069 INFO    ] No existing commands found in stream
[2026-06-27 02:01:38,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:01:38,083.083 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-27 02:01:39,175.175 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 02:01:39,177.177 INFO    ] Checking for system updates...
[2026-06-27 02:01:39,198.198 INFO    ] 200
[2026-06-27 02:01:39,199.199 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:01:39,230.230 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:01:39,232.232 INFO    ] No update needed
[2026-06-27 02:01:39,233.233 INFO    ] Checking for camera pi updates...
[2026-06-27 02:01:39,254.254 INFO    ] 200
[2026-06-27 02:01:39,255.255 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:01:39,279.279 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:01:39,325.325 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:01:39,327.327 INFO    ] No camera update needed
[2026-06-27 02:01:39,328.328 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:01:39,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:01:39,333.333 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:01:39,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:01:41,379.379 INFO    ] ================================================
[2026-06-27 02:01:41,395.395 INFO    ] Launching Daemon at Sat Jun 27 02:01:41 IST 2026
[2026-06-27 02:01:41,407.407 INFO    ] ================================================
[2026-06-27 02:01:41,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:01:41
[2026-06-27 02:01:42,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:01:42,285.285 INFO    ] Initializing speech engine...
[2026-06-27 02:01:42,292.292 INFO    ] 2026-06-27 02:01:42
[2026-06-27 02:01:42,506.506 INFO    ] 2026-06-27 02:01:42
[2026-06-27 02:01:42,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:01:42,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:01:42,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:01:42,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:01:42,933.933 INFO    ] time= 27/06/2026 02:01:42
[2026-06-27 02:01:42,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:01:42,969.969 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:01:43,036.036 INFO    ] No existing commands found in stream
[2026-06-27 02:01:48,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:01:48,049.049 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-27 02:01:49,713.713 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 02:01:49,715.715 INFO    ] Checking for system updates...
[2026-06-27 02:01:49,738.738 INFO    ] 200
[2026-06-27 02:01:49,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:01:49,772.772 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:01:49,773.773 INFO    ] No update needed
[2026-06-27 02:01:49,775.775 INFO    ] Checking for camera pi updates...
[2026-06-27 02:01:49,796.796 INFO    ] 200
[2026-06-27 02:01:49,797.797 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:01:49,822.822 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:01:49,873.873 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:01:49,874.874 INFO    ] No camera update needed
[2026-06-27 02:01:49,875.875 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:01:49,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:01:49,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:01:49,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:01:51,922.922 INFO    ] ================================================
[2026-06-27 02:01:51,938.938 INFO    ] Launching Daemon at Sat Jun 27 02:01:51 IST 2026
[2026-06-27 02:01:51,948.948 INFO    ] ================================================
[2026-06-27 02:01:52,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:01:52
[2026-06-27 02:01:52,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:01:52,772.772 INFO    ] Initializing speech engine...
[2026-06-27 02:01:52,777.777 INFO    ] 2026-06-27 02:01:52
[2026-06-27 02:01:52,985.985 INFO    ] 2026-06-27 02:01:52
[2026-06-27 02:01:53,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:01:53,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:01:53,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:01:53,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:01:53,408.408 INFO    ] time= 27/06/2026 02:01:53
[2026-06-27 02:01:53,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:01:53,435.435 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:01:53,502.502 INFO    ] No existing commands found in stream
[2026-06-27 02:01:58,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:01:58,515.515 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-27 02:01:59,328.328 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 02:01:59,330.330 INFO    ] Checking for system updates...
[2026-06-27 02:01:59,351.351 INFO    ] 200
[2026-06-27 02:01:59,352.352 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:01:59,385.385 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:01:59,386.386 INFO    ] No update needed
[2026-06-27 02:01:59,387.387 INFO    ] Checking for camera pi updates...
[2026-06-27 02:01:59,410.410 INFO    ] 200
[2026-06-27 02:01:59,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:01:59,439.439 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:01:59,477.477 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:01:59,478.478 INFO    ] No camera update needed
[2026-06-27 02:01:59,480.480 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:01:59,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:01:59,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:01:59,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:02:01,527.527 INFO    ] ================================================
[2026-06-27 02:02:01,543.543 INFO    ] Launching Daemon at Sat Jun 27 02:02:01 IST 2026
[2026-06-27 02:02:01,554.554 INFO    ] ================================================
[2026-06-27 02:02:01,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:02:01
[2026-06-27 02:02:02,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:02:02,571.571 INFO    ] Initializing speech engine...
[2026-06-27 02:02:02,577.577 INFO    ] 2026-06-27 02:02:02
[2026-06-27 02:02:02,816.816 INFO    ] 2026-06-27 02:02:02
[2026-06-27 02:02:02,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:02:03,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:02:03,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:02:03,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:02:03,264.264 INFO    ] time= 27/06/2026 02:02:03
[2026-06-27 02:02:03,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:02:03,295.295 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:02:03,361.361 INFO    ] No existing commands found in stream
[2026-06-27 02:02:08,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:02:08,374.374 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-27 02:02:11,718.718 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:02:11,720.720 INFO    ] Checking for system updates...
[2026-06-27 02:02:11,741.741 INFO    ] 200
[2026-06-27 02:02:11,742.742 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:02:11,777.777 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:02:11,778.778 INFO    ] No update needed
[2026-06-27 02:02:11,780.780 INFO    ] Checking for camera pi updates...
[2026-06-27 02:02:11,800.800 INFO    ] 200
[2026-06-27 02:02:11,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:02:11,827.827 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:02:11,869.869 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:02:11,870.870 INFO    ] No camera update needed
[2026-06-27 02:02:11,871.871 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:02:11,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:02:11,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:02:11,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:02:13,921.921 INFO    ] ================================================
[2026-06-27 02:02:13,938.938 INFO    ] Launching Daemon at Sat Jun 27 02:02:13 IST 2026
[2026-06-27 02:02:13,950.950 INFO    ] ================================================
[2026-06-27 02:02:14,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:02:14
[2026-06-27 02:02:14,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:02:14,733.733 INFO    ] Initializing speech engine...
[2026-06-27 02:02:14,737.737 INFO    ] 2026-06-27 02:02:14
[2026-06-27 02:02:14,942.942 INFO    ] 2026-06-27 02:02:14
[2026-06-27 02:02:14,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:02:15,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:02:15,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:02:15,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:02:15,341.341 INFO    ] time= 27/06/2026 02:02:15
[2026-06-27 02:02:15,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:02:15,385.385 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:02:15,456.456 INFO    ] No existing commands found in stream
[2026-06-27 02:02:20,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:02:20,473.473 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-27 02:02:24,852.852 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:02:24,854.854 INFO    ] Checking for system updates...
[2026-06-27 02:02:24,875.875 INFO    ] 200
[2026-06-27 02:02:24,876.876 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:02:24,907.907 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:02:24,909.909 INFO    ] No update needed
[2026-06-27 02:02:24,910.910 INFO    ] Checking for camera pi updates...
[2026-06-27 02:02:24,930.930 INFO    ] 200
[2026-06-27 02:02:24,931.931 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:02:24,957.957 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:02:24,983.983 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:02:24,985.985 INFO    ] No camera update needed
[2026-06-27 02:02:24,986.986 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:02:24,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:02:24,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:02:24,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:02:27,036.036 INFO    ] ================================================
[2026-06-27 02:02:27,052.052 INFO    ] Launching Daemon at Sat Jun 27 02:02:27 IST 2026
[2026-06-27 02:02:27,063.063 INFO    ] ================================================
[2026-06-27 02:02:27,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:02:27
[2026-06-27 02:02:27,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:02:27,908.908 INFO    ] Initializing speech engine...
[2026-06-27 02:02:27,914.914 INFO    ] 2026-06-27 02:02:27
[2026-06-27 02:02:28,131.131 INFO    ] 2026-06-27 02:02:28
[2026-06-27 02:02:28,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:02:28,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:02:28,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:02:28,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:02:28,555.555 INFO    ] time= 27/06/2026 02:02:28
[2026-06-27 02:02:28,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:02:28,618.618 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:02:28,694.694 INFO    ] No existing commands found in stream
[2026-06-27 02:02:33,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:02:33,707.707 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-27 02:02:34,082.082 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:02:34,083.083 INFO    ] Checking for system updates...
[2026-06-27 02:02:34,106.106 INFO    ] 200
[2026-06-27 02:02:34,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:02:34,138.138 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:02:34,140.140 INFO    ] No update needed
[2026-06-27 02:02:34,141.141 INFO    ] Checking for camera pi updates...
[2026-06-27 02:02:34,161.161 INFO    ] 200
[2026-06-27 02:02:34,162.162 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:02:34,188.188 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:02:34,217.217 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:02:34,218.218 INFO    ] No camera update needed
[2026-06-27 02:02:34,220.220 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:02:34,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:02:34,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:02:34,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:02:36,266.266 INFO    ] ================================================
[2026-06-27 02:02:36,282.282 INFO    ] Launching Daemon at Sat Jun 27 02:02:36 IST 2026
[2026-06-27 02:02:36,294.294 INFO    ] ================================================
[2026-06-27 02:02:36,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:02:36
[2026-06-27 02:02:37,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:02:37,153.153 INFO    ] Initializing speech engine...
[2026-06-27 02:02:37,157.157 INFO    ] 2026-06-27 02:02:37
[2026-06-27 02:02:37,366.366 INFO    ] 2026-06-27 02:02:37
[2026-06-27 02:02:37,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:02:37,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:02:37,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:02:37,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:02:37,784.784 INFO    ] time= 27/06/2026 02:02:37
[2026-06-27 02:02:37,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:02:37,814.814 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:02:37,881.881 INFO    ] No existing commands found in stream
[2026-06-27 02:02:42,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:02:42,899.899 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-27 02:02:43,829.829 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 02:02:43,831.831 INFO    ] Checking for system updates...
[2026-06-27 02:02:43,854.854 INFO    ] 200
[2026-06-27 02:02:43,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:02:43,888.888 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:02:43,890.890 INFO    ] No update needed
[2026-06-27 02:02:43,892.892 INFO    ] Checking for camera pi updates...
[2026-06-27 02:02:43,913.913 INFO    ] 200
[2026-06-27 02:02:43,914.914 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:02:43,942.942 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:02:44,004.004 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:02:44,005.005 INFO    ] No camera update needed
[2026-06-27 02:02:44,007.007 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:02:44,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:02:44,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:02:44,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:02:46,055.055 INFO    ] ================================================
[2026-06-27 02:02:46,070.070 INFO    ] Launching Daemon at Sat Jun 27 02:02:46 IST 2026
[2026-06-27 02:02:46,082.082 INFO    ] ================================================
[2026-06-27 02:02:46,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:02:46
[2026-06-27 02:02:46,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:02:46,893.893 INFO    ] Initializing speech engine...
[2026-06-27 02:02:46,899.899 INFO    ] 2026-06-27 02:02:46
[2026-06-27 02:02:47,102.102 INFO    ] 2026-06-27 02:02:47
[2026-06-27 02:02:47,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:02:47,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:02:47,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:02:47,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:02:47,509.509 INFO    ] time= 27/06/2026 02:02:47
[2026-06-27 02:02:47,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:02:47,547.547 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:02:47,614.614 INFO    ] No existing commands found in stream
[2026-06-27 02:02:52,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:02:52,626.626 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-27 02:02:54,000.000 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 02:02:54,001.001 INFO    ] Checking for system updates...
[2026-06-27 02:02:54,022.022 INFO    ] 200
[2026-06-27 02:02:54,024.024 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:02:54,054.054 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:02:54,056.056 INFO    ] No update needed
[2026-06-27 02:02:54,057.057 INFO    ] Checking for camera pi updates...
[2026-06-27 02:02:54,077.077 INFO    ] 200
[2026-06-27 02:02:54,079.079 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:02:54,102.102 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:02:54,229.229 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:02:54,231.231 INFO    ] No camera update needed
[2026-06-27 02:02:54,232.232 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:02:54,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:02:54,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:02:54,239.239 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:02:56,281.281 INFO    ] ================================================
[2026-06-27 02:02:56,296.296 INFO    ] Launching Daemon at Sat Jun 27 02:02:56 IST 2026
[2026-06-27 02:02:56,308.308 INFO    ] ================================================
[2026-06-27 02:02:56,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:02:56
[2026-06-27 02:02:56,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:02:57,085.085 INFO    ] Initializing speech engine...
[2026-06-27 02:02:57,090.090 INFO    ] 2026-06-27 02:02:57
[2026-06-27 02:02:57,296.296 INFO    ] 2026-06-27 02:02:57
[2026-06-27 02:02:57,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:02:57,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:02:57,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:02:57,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:02:57,710.710 INFO    ] time= 27/06/2026 02:02:57
[2026-06-27 02:02:57,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:02:57,746.746 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:02:57,818.818 INFO    ] No existing commands found in stream
[2026-06-27 02:03:02,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:03:02,829.829 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-27 02:03:04,742.742 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:03:04,743.743 INFO    ] Checking for system updates...
[2026-06-27 02:03:04,766.766 INFO    ] 200
[2026-06-27 02:03:04,767.767 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:03:04,800.800 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:03:04,801.801 INFO    ] No update needed
[2026-06-27 02:03:04,802.802 INFO    ] Checking for camera pi updates...
[2026-06-27 02:03:04,822.822 INFO    ] 200
[2026-06-27 02:03:04,823.823 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:03:04,847.847 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:03:04,891.891 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:03:04,892.892 INFO    ] No camera update needed
[2026-06-27 02:03:04,894.894 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:03:04,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:03:04,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:03:04,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:03:06,938.938 INFO    ] ================================================
[2026-06-27 02:03:06,954.954 INFO    ] Launching Daemon at Sat Jun 27 02:03:06 IST 2026
[2026-06-27 02:03:06,964.964 INFO    ] ================================================
[2026-06-27 02:03:07,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:03:07
[2026-06-27 02:03:07,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:03:07,748.748 INFO    ] Initializing speech engine...
[2026-06-27 02:03:07,765.765 INFO    ] 2026-06-27 02:03:07
[2026-06-27 02:03:07,984.984 INFO    ] 2026-06-27 02:03:07
[2026-06-27 02:03:08,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:03:08,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:03:08,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:03:08,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:03:08,401.401 INFO    ] time= 27/06/2026 02:03:08
[2026-06-27 02:03:08,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:03:08,460.460 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:03:08,567.567 INFO    ] No existing commands found in stream
[2026-06-27 02:03:13,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:03:13,580.580 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-27 02:03:15,270.270 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 02:03:15,272.272 INFO    ] Checking for system updates...
[2026-06-27 02:03:15,292.292 INFO    ] 200
[2026-06-27 02:03:15,294.294 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:03:15,324.324 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:03:15,326.326 INFO    ] No update needed
[2026-06-27 02:03:15,327.327 INFO    ] Checking for camera pi updates...
[2026-06-27 02:03:15,349.349 INFO    ] 200
[2026-06-27 02:03:15,351.351 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:03:15,374.374 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:03:15,421.421 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:03:15,422.422 INFO    ] No camera update needed
[2026-06-27 02:03:15,423.423 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:03:15,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:03:15,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:03:15,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:03:17,468.468 INFO    ] ================================================
[2026-06-27 02:03:17,484.484 INFO    ] Launching Daemon at Sat Jun 27 02:03:17 IST 2026
[2026-06-27 02:03:17,495.495 INFO    ] ================================================
[2026-06-27 02:03:17,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:03:17
[2026-06-27 02:03:18,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:03:18,329.329 INFO    ] Initializing speech engine...
[2026-06-27 02:03:18,334.334 INFO    ] 2026-06-27 02:03:18
[2026-06-27 02:03:18,538.538 INFO    ] 2026-06-27 02:03:18
[2026-06-27 02:03:18,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:03:18,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:03:18,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:03:18,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:03:18,959.959 INFO    ] time= 27/06/2026 02:03:18
[2026-06-27 02:03:18,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:03:18,989.989 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:03:19,056.056 INFO    ] No existing commands found in stream
[2026-06-27 02:03:24,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:03:24,068.068 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-27 02:03:27,129.129 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 02:03:27,130.130 INFO    ] Checking for system updates...
[2026-06-27 02:03:27,151.151 INFO    ] 200
[2026-06-27 02:03:27,152.152 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:03:27,183.183 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:03:27,185.185 INFO    ] No update needed
[2026-06-27 02:03:27,186.186 INFO    ] Checking for camera pi updates...
[2026-06-27 02:03:27,209.209 INFO    ] 200
[2026-06-27 02:03:27,211.211 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:03:27,235.235 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:03:27,279.279 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:03:27,280.280 INFO    ] No camera update needed
[2026-06-27 02:03:27,282.282 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:03:27,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:03:27,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:03:27,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:03:29,328.328 INFO    ] ================================================
[2026-06-27 02:03:29,344.344 INFO    ] Launching Daemon at Sat Jun 27 02:03:29 IST 2026
[2026-06-27 02:03:29,354.354 INFO    ] ================================================
[2026-06-27 02:03:29,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:03:29
[2026-06-27 02:03:30,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:03:30,167.167 INFO    ] Initializing speech engine...
[2026-06-27 02:03:30,180.180 INFO    ] 2026-06-27 02:03:30
[2026-06-27 02:03:30,390.390 INFO    ] 2026-06-27 02:03:30
[2026-06-27 02:03:30,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:03:30,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:03:30,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:03:30,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:03:30,806.806 INFO    ] time= 27/06/2026 02:03:30
[2026-06-27 02:03:30,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:03:30,840.840 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:03:30,906.906 INFO    ] No existing commands found in stream
[2026-06-27 02:03:35,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:03:35,924.924 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-27 02:03:40,141.141 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 02:03:40,143.143 INFO    ] Checking for system updates...
[2026-06-27 02:03:40,164.164 INFO    ] 200
[2026-06-27 02:03:40,166.166 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:03:40,199.199 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:03:40,201.201 INFO    ] No update needed
[2026-06-27 02:03:40,202.202 INFO    ] Checking for camera pi updates...
[2026-06-27 02:03:40,222.222 INFO    ] 200
[2026-06-27 02:03:40,224.224 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:03:40,248.248 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:03:40,298.298 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:03:40,299.299 INFO    ] No camera update needed
[2026-06-27 02:03:40,300.300 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:03:40,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:03:40,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:03:40,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:03:42,349.349 INFO    ] ================================================
[2026-06-27 02:03:42,364.364 INFO    ] Launching Daemon at Sat Jun 27 02:03:42 IST 2026
[2026-06-27 02:03:42,375.375 INFO    ] ================================================
[2026-06-27 02:03:42,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:03:42
[2026-06-27 02:03:43,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:03:43,185.185 INFO    ] Initializing speech engine...
[2026-06-27 02:03:43,189.189 INFO    ] 2026-06-27 02:03:43
[2026-06-27 02:03:43,396.396 INFO    ] 2026-06-27 02:03:43
[2026-06-27 02:03:43,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:03:43,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:03:43,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:03:43,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:03:43,818.818 INFO    ] time= 27/06/2026 02:03:43
[2026-06-27 02:03:43,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:03:43,849.849 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:03:43,916.916 INFO    ] No existing commands found in stream
[2026-06-27 02:03:48,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:03:48,934.934 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-27 02:03:51,842.842 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 02:03:51,844.844 INFO    ] Checking for system updates...
[2026-06-27 02:03:51,875.875 INFO    ] 200
[2026-06-27 02:03:51,876.876 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:03:51,909.909 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:03:51,910.910 INFO    ] No update needed
[2026-06-27 02:03:51,912.912 INFO    ] Checking for camera pi updates...
[2026-06-27 02:03:51,932.932 INFO    ] 200
[2026-06-27 02:03:51,933.933 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:03:51,957.957 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:03:52,003.003 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:03:52,005.005 INFO    ] No camera update needed
[2026-06-27 02:03:52,006.006 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:03:52,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:03:52,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:03:52,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:03:54,053.053 INFO    ] ================================================
[2026-06-27 02:03:54,068.068 INFO    ] Launching Daemon at Sat Jun 27 02:03:54 IST 2026
[2026-06-27 02:03:54,078.078 INFO    ] ================================================
[2026-06-27 02:03:54,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:03:54
[2026-06-27 02:03:54,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:03:54,927.927 INFO    ] Initializing speech engine...
[2026-06-27 02:03:54,932.932 INFO    ] 2026-06-27 02:03:54
[2026-06-27 02:03:55,144.144 INFO    ] 2026-06-27 02:03:55
[2026-06-27 02:03:55,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:03:55,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:03:55,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:03:55,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:03:55,574.574 INFO    ] time= 27/06/2026 02:03:55
[2026-06-27 02:03:55,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:03:55,605.605 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:03:55,671.671 INFO    ] No existing commands found in stream
[2026-06-27 02:04:00,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:04:00,686.686 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-27 02:04:02,481.481 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 02:04:02,484.484 INFO    ] Checking for system updates...
[2026-06-27 02:04:02,509.509 INFO    ] 200
[2026-06-27 02:04:02,511.511 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:04:02,550.550 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:04:02,552.552 INFO    ] No update needed
[2026-06-27 02:04:02,555.555 INFO    ] Checking for camera pi updates...
[2026-06-27 02:04:02,581.581 INFO    ] 200
[2026-06-27 02:04:02,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:04:02,611.611 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:04:02,640.640 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:04:02,641.641 INFO    ] No camera update needed
[2026-06-27 02:04:02,643.643 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:04:02,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:04:02,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:04:02,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:04:04,696.696 INFO    ] ================================================
[2026-06-27 02:04:04,712.712 INFO    ] Launching Daemon at Sat Jun 27 02:04:04 IST 2026
[2026-06-27 02:04:04,722.722 INFO    ] ================================================
[2026-06-27 02:04:05,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:04:05
[2026-06-27 02:04:05,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:04:05,527.527 INFO    ] Initializing speech engine...
[2026-06-27 02:04:05,535.535 INFO    ] 2026-06-27 02:04:05
[2026-06-27 02:04:05,741.741 INFO    ] 2026-06-27 02:04:05
[2026-06-27 02:04:05,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:04:05,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:04:05,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:04:06,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:04:06,179.179 INFO    ] time= 27/06/2026 02:04:06
[2026-06-27 02:04:06,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:04:06,209.209 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:04:06,306.306 INFO    ] No existing commands found in stream
[2026-06-27 02:04:11,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:04:11,317.317 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-27 02:04:14,135.135 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 02:04:14,137.137 INFO    ] Checking for system updates...
[2026-06-27 02:04:14,163.163 INFO    ] 200
[2026-06-27 02:04:14,166.166 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:04:14,207.207 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:04:14,209.209 INFO    ] No update needed
[2026-06-27 02:04:14,210.210 INFO    ] Checking for camera pi updates...
[2026-06-27 02:04:14,233.233 INFO    ] 200
[2026-06-27 02:04:14,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:04:14,262.262 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:04:14,312.312 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:04:14,314.314 INFO    ] No camera update needed
[2026-06-27 02:04:14,316.316 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:04:14,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:04:14,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:04:14,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:04:16,352.352 INFO    ] ================================================
[2026-06-27 02:04:16,361.361 INFO    ] Launching Daemon at Sat Jun 27 02:04:16 IST 2026
[2026-06-27 02:04:16,368.368 INFO    ] ================================================
[2026-06-27 02:04:16,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:04:16
[2026-06-27 02:04:17,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:04:17,155.155 INFO    ] Initializing speech engine...
[2026-06-27 02:04:17,160.160 INFO    ] 2026-06-27 02:04:17
[2026-06-27 02:04:17,380.380 INFO    ] 2026-06-27 02:04:17
[2026-06-27 02:04:17,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:04:17,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:04:17,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:04:17,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:04:17,798.798 INFO    ] time= 27/06/2026 02:04:17
[2026-06-27 02:04:17,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:04:17,837.837 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:04:17,905.905 INFO    ] No existing commands found in stream
[2026-06-27 02:04:22,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:04:22,917.917 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-27 02:04:24,535.535 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 02:04:24,536.536 INFO    ] Checking for system updates...
[2026-06-27 02:04:24,557.557 INFO    ] 200
[2026-06-27 02:04:24,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:04:24,589.589 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:04:24,591.591 INFO    ] No update needed
[2026-06-27 02:04:24,592.592 INFO    ] Checking for camera pi updates...
[2026-06-27 02:04:24,612.612 INFO    ] 200
[2026-06-27 02:04:24,613.613 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:04:24,637.637 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:04:24,683.683 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:04:24,684.684 INFO    ] No camera update needed
[2026-06-27 02:04:24,686.686 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:04:24,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:04:24,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:04:24,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:04:26,733.733 INFO    ] ================================================
[2026-06-27 02:04:26,749.749 INFO    ] Launching Daemon at Sat Jun 27 02:04:26 IST 2026
[2026-06-27 02:04:26,759.759 INFO    ] ================================================
[2026-06-27 02:04:27,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:04:27
[2026-06-27 02:04:27,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:04:27,578.578 INFO    ] Initializing speech engine...
[2026-06-27 02:04:27,591.591 INFO    ] 2026-06-27 02:04:27
[2026-06-27 02:04:27,800.800 INFO    ] 2026-06-27 02:04:27
[2026-06-27 02:04:27,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:04:28,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:04:28,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:04:28,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:04:28,221.221 INFO    ] time= 27/06/2026 02:04:28
[2026-06-27 02:04:28,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:04:28,252.252 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:04:28,320.320 INFO    ] No existing commands found in stream
[2026-06-27 02:04:33,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:04:33,337.337 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-27 02:04:37,032.032 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 02:04:37,033.033 INFO    ] Checking for system updates...
[2026-06-27 02:04:37,054.054 INFO    ] 200
[2026-06-27 02:04:37,056.056 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:04:37,087.087 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:04:37,088.088 INFO    ] No update needed
[2026-06-27 02:04:37,089.089 INFO    ] Checking for camera pi updates...
[2026-06-27 02:04:37,109.109 INFO    ] 200
[2026-06-27 02:04:37,111.111 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:04:37,135.135 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:04:37,181.181 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:04:37,182.182 INFO    ] No camera update needed
[2026-06-27 02:04:37,184.184 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:04:37,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:04:37,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:04:37,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:04:39,229.229 INFO    ] ================================================
[2026-06-27 02:04:39,244.244 INFO    ] Launching Daemon at Sat Jun 27 02:04:39 IST 2026
[2026-06-27 02:04:39,255.255 INFO    ] ================================================
[2026-06-27 02:04:39,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:04:39
[2026-06-27 02:04:39,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:04:40,112.112 INFO    ] Initializing speech engine...
[2026-06-27 02:04:40,117.117 INFO    ] 2026-06-27 02:04:40
[2026-06-27 02:04:40,330.330 INFO    ] 2026-06-27 02:04:40
[2026-06-27 02:04:40,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:04:40,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:04:40,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:04:40,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:04:40,753.753 INFO    ] time= 27/06/2026 02:04:40
[2026-06-27 02:04:40,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:04:40,789.789 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:04:40,856.856 INFO    ] No existing commands found in stream
[2026-06-27 02:04:45,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:04:45,874.874 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-27 02:04:48,372.372 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 02:04:48,374.374 INFO    ] Checking for system updates...
[2026-06-27 02:04:48,396.396 INFO    ] 200
[2026-06-27 02:04:48,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:04:48,429.429 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:04:48,430.430 INFO    ] No update needed
[2026-06-27 02:04:48,432.432 INFO    ] Checking for camera pi updates...
[2026-06-27 02:04:48,454.454 INFO    ] 200
[2026-06-27 02:04:48,455.455 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:04:48,484.484 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:04:48,525.525 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:04:48,527.527 INFO    ] No camera update needed
[2026-06-27 02:04:48,528.528 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:04:48,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:04:48,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:04:48,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:04:50,579.579 INFO    ] ================================================
[2026-06-27 02:04:50,594.594 INFO    ] Launching Daemon at Sat Jun 27 02:04:50 IST 2026
[2026-06-27 02:04:50,604.604 INFO    ] ================================================
[2026-06-27 02:04:50,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:04:50
[2026-06-27 02:04:51,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:04:51,477.477 INFO    ] Initializing speech engine...
[2026-06-27 02:04:51,488.488 INFO    ] 2026-06-27 02:04:51
[2026-06-27 02:04:51,700.700 INFO    ] 2026-06-27 02:04:51
[2026-06-27 02:04:51,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:04:51,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:04:51,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:04:52,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:04:52,126.126 INFO    ] time= 27/06/2026 02:04:52
[2026-06-27 02:04:52,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:04:52,162.162 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:04:52,230.230 INFO    ] No existing commands found in stream
[2026-06-27 02:04:57,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:04:57,243.243 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-27 02:04:58,583.583 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 02:04:58,585.585 INFO    ] Checking for system updates...
[2026-06-27 02:04:58,606.606 INFO    ] 200
[2026-06-27 02:04:58,608.608 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:04:58,638.638 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:04:58,639.639 INFO    ] No update needed
[2026-06-27 02:04:58,641.641 INFO    ] Checking for camera pi updates...
[2026-06-27 02:04:58,661.661 INFO    ] 200
[2026-06-27 02:04:58,662.662 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:04:58,688.688 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:04:58,836.836 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:04:58,838.838 INFO    ] No camera update needed
[2026-06-27 02:04:58,839.839 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:04:58,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:04:58,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:04:58,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:05:00,886.886 INFO    ] ================================================
[2026-06-27 02:05:00,901.901 INFO    ] Launching Daemon at Sat Jun 27 02:05:00 IST 2026
[2026-06-27 02:05:00,911.911 INFO    ] ================================================
[2026-06-27 02:05:01,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:05:01
[2026-06-27 02:05:01,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:05:02,062.062 INFO    ] Initializing speech engine...
[2026-06-27 02:05:02,068.068 INFO    ] 2026-06-27 02:05:02
[2026-06-27 02:05:02,298.298 INFO    ] 2026-06-27 02:05:02
[2026-06-27 02:05:02,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:05:02,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:05:02,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:05:02,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:05:02,986.986 INFO    ] time= 27/06/2026 02:05:02
[2026-06-27 02:05:02,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:05:02,991.991 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:05:03,044.044 INFO    ] No existing commands found in stream
[2026-06-27 02:05:08,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:05:08,057.057 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-27 02:05:10,554.554 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 02:05:10,556.556 INFO    ] Checking for system updates...
[2026-06-27 02:05:10,577.577 INFO    ] 200
[2026-06-27 02:05:10,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:05:10,609.609 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:05:10,610.610 INFO    ] No update needed
[2026-06-27 02:05:10,612.612 INFO    ] Checking for camera pi updates...
[2026-06-27 02:05:10,633.633 INFO    ] 200
[2026-06-27 02:05:10,634.634 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:05:10,660.660 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:05:10,699.699 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:05:10,701.701 INFO    ] No camera update needed
[2026-06-27 02:05:10,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:05:10,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:05:10,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:05:10,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:05:12,750.750 INFO    ] ================================================
[2026-06-27 02:05:12,765.765 INFO    ] Launching Daemon at Sat Jun 27 02:05:12 IST 2026
[2026-06-27 02:05:12,777.777 INFO    ] ================================================
[2026-06-27 02:05:13,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:05:13
[2026-06-27 02:05:13,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:05:13,634.634 INFO    ] Initializing speech engine...
[2026-06-27 02:05:13,639.639 INFO    ] 2026-06-27 02:05:13
[2026-06-27 02:05:13,853.853 INFO    ] 2026-06-27 02:05:13
[2026-06-27 02:05:13,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:05:14,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:05:14,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:05:14,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:05:14,275.275 INFO    ] time= 27/06/2026 02:05:14
[2026-06-27 02:05:14,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:05:14,310.310 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:05:14,378.378 INFO    ] No existing commands found in stream
[2026-06-27 02:05:19,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:05:19,390.390 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-27 02:05:21,509.509 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 02:05:21,511.511 INFO    ] Checking for system updates...
[2026-06-27 02:05:21,535.535 INFO    ] 200
[2026-06-27 02:05:21,536.536 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:05:21,568.568 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:05:21,569.569 INFO    ] No update needed
[2026-06-27 02:05:21,571.571 INFO    ] Checking for camera pi updates...
[2026-06-27 02:05:21,591.591 INFO    ] 200
[2026-06-27 02:05:21,592.592 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:05:21,616.616 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:05:21,658.658 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:05:21,660.660 INFO    ] No camera update needed
[2026-06-27 02:05:21,661.661 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:05:21,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:05:21,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:05:21,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:05:23,711.711 INFO    ] ================================================
[2026-06-27 02:05:23,726.726 INFO    ] Launching Daemon at Sat Jun 27 02:05:23 IST 2026
[2026-06-27 02:05:23,737.737 INFO    ] ================================================
[2026-06-27 02:05:24,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:05:24
[2026-06-27 02:05:24,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:05:24,611.611 INFO    ] Initializing speech engine...
[2026-06-27 02:05:24,620.620 INFO    ] 2026-06-27 02:05:24
[2026-06-27 02:05:24,824.824 INFO    ] 2026-06-27 02:05:24
[2026-06-27 02:05:24,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:05:25,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:05:25,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:05:25,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:05:25,266.266 INFO    ] time= 27/06/2026 02:05:25
[2026-06-27 02:05:25,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:05:25,274.274 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:05:25,340.340 INFO    ] No existing commands found in stream
[2026-06-27 02:05:30,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:05:30,355.355 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-27 02:05:32,793.793 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 02:05:32,795.795 INFO    ] Checking for system updates...
[2026-06-27 02:05:32,816.816 INFO    ] 200
[2026-06-27 02:05:32,817.817 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:05:32,848.848 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:05:32,849.849 INFO    ] No update needed
[2026-06-27 02:05:32,850.850 INFO    ] Checking for camera pi updates...
[2026-06-27 02:05:32,875.875 INFO    ] 200
[2026-06-27 02:05:32,876.876 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:05:32,901.901 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:05:32,935.935 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:05:32,937.937 INFO    ] No camera update needed
[2026-06-27 02:05:32,938.938 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:05:32,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:05:32,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:05:32,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:05:34,983.983 INFO    ] ================================================
[2026-06-27 02:05:35,998.998 INFO    ] Launching Daemon at Sat Jun 27 02:05:34 IST 2026
[2026-06-27 02:05:35,009.009 INFO    ] ================================================
[2026-06-27 02:05:35,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:05:35
[2026-06-27 02:05:35,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:05:35,825.825 INFO    ] Initializing speech engine...
[2026-06-27 02:05:35,830.830 INFO    ] 2026-06-27 02:05:35
[2026-06-27 02:05:36,048.048 INFO    ] 2026-06-27 02:05:36
[2026-06-27 02:05:36,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:05:36,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:05:36,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:05:36,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:05:36,453.453 INFO    ] time= 27/06/2026 02:05:36
[2026-06-27 02:05:36,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:05:36,508.508 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:05:36,603.603 INFO    ] No existing commands found in stream
[2026-06-27 02:05:41,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:05:41,615.615 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-27 02:05:45,869.869 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:05:45,870.870 INFO    ] Checking for system updates...
[2026-06-27 02:05:45,892.892 INFO    ] 200
[2026-06-27 02:05:45,893.893 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:05:45,925.925 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:05:45,926.926 INFO    ] No update needed
[2026-06-27 02:05:45,927.927 INFO    ] Checking for camera pi updates...
[2026-06-27 02:05:45,947.947 INFO    ] 200
[2026-06-27 02:05:45,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:05:45,972.972 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:05:46,016.016 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:05:46,017.017 INFO    ] No camera update needed
[2026-06-27 02:05:46,018.018 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:05:46,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:05:46,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:05:46,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:05:48,066.066 INFO    ] ================================================
[2026-06-27 02:05:48,081.081 INFO    ] Launching Daemon at Sat Jun 27 02:05:48 IST 2026
[2026-06-27 02:05:48,092.092 INFO    ] ================================================
[2026-06-27 02:05:48,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:05:48
[2026-06-27 02:05:48,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:05:48,895.895 INFO    ] Initializing speech engine...
[2026-06-27 02:05:48,900.900 INFO    ] 2026-06-27 02:05:48
[2026-06-27 02:05:49,104.104 INFO    ] 2026-06-27 02:05:49
[2026-06-27 02:05:49,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:05:49,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:05:49,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:05:49,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:05:49,522.522 INFO    ] time= 27/06/2026 02:05:49
[2026-06-27 02:05:49,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:05:49,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:05:49,617.617 INFO    ] No existing commands found in stream
[2026-06-27 02:05:54,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:05:54,634.634 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-27 02:05:55,387.387 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 02:05:55,389.389 INFO    ] Checking for system updates...
[2026-06-27 02:05:55,410.410 INFO    ] 200
[2026-06-27 02:05:55,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:05:55,441.441 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:05:55,443.443 INFO    ] No update needed
[2026-06-27 02:05:55,444.444 INFO    ] Checking for camera pi updates...
[2026-06-27 02:05:55,464.464 INFO    ] 200
[2026-06-27 02:05:55,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:05:55,490.490 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:05:55,537.537 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:05:55,538.538 INFO    ] No camera update needed
[2026-06-27 02:05:55,540.540 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:05:55,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:05:55,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:05:55,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:05:57,585.585 INFO    ] ================================================
[2026-06-27 02:05:57,601.601 INFO    ] Launching Daemon at Sat Jun 27 02:05:57 IST 2026
[2026-06-27 02:05:57,612.612 INFO    ] ================================================
[2026-06-27 02:05:57,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:05:57
[2026-06-27 02:05:58,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:05:58,451.451 INFO    ] Initializing speech engine...
[2026-06-27 02:05:58,453.453 INFO    ] 2026-06-27 02:05:58
[2026-06-27 02:05:58,651.651 INFO    ] 2026-06-27 02:05:58
[2026-06-27 02:05:58,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:05:58,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:05:58,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:05:59,068.068 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:05:59,122.122 INFO    ] time= 27/06/2026 02:05:59
[2026-06-27 02:05:59,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:05:59,185.185 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:05:59,253.253 INFO    ] No existing commands found in stream
[2026-06-27 02:06:04,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:06:04,288.288 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-27 02:06:07,602.602 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 02:06:07,603.603 INFO    ] Checking for system updates...
[2026-06-27 02:06:07,624.624 INFO    ] 200
[2026-06-27 02:06:07,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:06:07,656.656 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:06:07,658.658 INFO    ] No update needed
[2026-06-27 02:06:07,659.659 INFO    ] Checking for camera pi updates...
[2026-06-27 02:06:07,679.679 INFO    ] 200
[2026-06-27 02:06:07,680.680 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:06:07,706.706 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:06:07,754.754 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:06:07,755.755 INFO    ] No camera update needed
[2026-06-27 02:06:07,756.756 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:06:07,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:06:07,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:06:07,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:06:09,803.803 INFO    ] ================================================
[2026-06-27 02:06:09,820.820 INFO    ] Launching Daemon at Sat Jun 27 02:06:09 IST 2026
[2026-06-27 02:06:09,830.830 INFO    ] ================================================
[2026-06-27 02:06:10,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:06:10
[2026-06-27 02:06:10,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:06:10,664.664 INFO    ] Initializing speech engine...
[2026-06-27 02:06:10,672.672 INFO    ] 2026-06-27 02:06:10
[2026-06-27 02:06:10,888.888 INFO    ] 2026-06-27 02:06:10
[2026-06-27 02:06:10,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:06:11,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:06:11,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:06:11,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:06:11,311.311 INFO    ] time= 27/06/2026 02:06:11
[2026-06-27 02:06:11,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:06:11,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:06:11,408.408 INFO    ] No existing commands found in stream
[2026-06-27 02:06:16,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:06:16,421.421 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-27 02:06:18,381.381 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 02:06:18,383.383 INFO    ] Checking for system updates...
[2026-06-27 02:06:18,405.405 INFO    ] 200
[2026-06-27 02:06:18,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:06:18,437.437 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:06:18,438.438 INFO    ] No update needed
[2026-06-27 02:06:18,439.439 INFO    ] Checking for camera pi updates...
[2026-06-27 02:06:18,459.459 INFO    ] 200
[2026-06-27 02:06:18,460.460 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:06:18,484.484 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:06:18,528.528 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:06:18,530.530 INFO    ] No camera update needed
[2026-06-27 02:06:18,531.531 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:06:18,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:06:18,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:06:18,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:06:20,577.577 INFO    ] ================================================
[2026-06-27 02:06:20,592.592 INFO    ] Launching Daemon at Sat Jun 27 02:06:20 IST 2026
[2026-06-27 02:06:20,602.602 INFO    ] ================================================
[2026-06-27 02:06:20,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:06:20
[2026-06-27 02:06:21,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:06:21,388.388 INFO    ] Initializing speech engine...
[2026-06-27 02:06:21,392.392 INFO    ] 2026-06-27 02:06:21
[2026-06-27 02:06:21,613.613 INFO    ] 2026-06-27 02:06:21
[2026-06-27 02:06:21,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:06:21,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:06:21,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:06:21,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:06:22,007.007 INFO    ] time= 27/06/2026 02:06:21
[2026-06-27 02:06:22,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:06:22,063.063 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:06:22,134.134 INFO    ] No existing commands found in stream
[2026-06-27 02:06:27,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:06:27,147.147 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-27 02:06:29,637.637 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 02:06:29,638.638 INFO    ] Checking for system updates...
[2026-06-27 02:06:29,659.659 INFO    ] 200
[2026-06-27 02:06:29,660.660 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:06:29,695.695 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:06:29,696.696 INFO    ] No update needed
[2026-06-27 02:06:29,698.698 INFO    ] Checking for camera pi updates...
[2026-06-27 02:06:29,718.718 INFO    ] 200
[2026-06-27 02:06:29,720.720 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:06:29,745.745 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:06:29,790.790 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:06:29,792.792 INFO    ] No camera update needed
[2026-06-27 02:06:29,793.793 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:06:29,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:06:29,797.797 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:06:29,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:06:31,839.839 INFO    ] ================================================
[2026-06-27 02:06:31,854.854 INFO    ] Launching Daemon at Sat Jun 27 02:06:31 IST 2026
[2026-06-27 02:06:31,865.865 INFO    ] ================================================
[2026-06-27 02:06:32,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:06:32
[2026-06-27 02:06:32,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:06:32,720.720 INFO    ] Initializing speech engine...
[2026-06-27 02:06:32,734.734 INFO    ] 2026-06-27 02:06:32
[2026-06-27 02:06:32,940.940 INFO    ] 2026-06-27 02:06:32
[2026-06-27 02:06:32,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:06:33,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:06:33,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:06:33,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:06:33,354.354 INFO    ] time= 27/06/2026 02:06:33
[2026-06-27 02:06:33,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:06:33,393.393 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:06:33,460.460 INFO    ] No existing commands found in stream
[2026-06-27 02:06:38,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:06:38,472.472 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-27 02:06:41,408.408 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 02:06:41,409.409 INFO    ] Checking for system updates...
[2026-06-27 02:06:41,431.431 INFO    ] 200
[2026-06-27 02:06:41,432.432 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:06:41,467.467 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:06:41,468.468 INFO    ] No update needed
[2026-06-27 02:06:41,469.469 INFO    ] Checking for camera pi updates...
[2026-06-27 02:06:41,489.489 INFO    ] 200
[2026-06-27 02:06:41,490.490 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:06:41,513.513 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:06:41,570.570 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:06:41,571.571 INFO    ] No camera update needed
[2026-06-27 02:06:41,572.572 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:06:41,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:06:41,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:06:41,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:06:43,623.623 INFO    ] ================================================
[2026-06-27 02:06:43,638.638 INFO    ] Launching Daemon at Sat Jun 27 02:06:43 IST 2026
[2026-06-27 02:06:43,648.648 INFO    ] ================================================
[2026-06-27 02:06:44,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:06:44
[2026-06-27 02:06:44,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:06:44,457.457 INFO    ] Initializing speech engine...
[2026-06-27 02:06:44,470.470 INFO    ] 2026-06-27 02:06:44
[2026-06-27 02:06:44,677.677 INFO    ] 2026-06-27 02:06:44
[2026-06-27 02:06:44,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:06:44,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:06:44,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:06:45,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:06:45,095.095 INFO    ] time= 27/06/2026 02:06:45
[2026-06-27 02:06:45,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:06:45,125.125 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:06:45,192.192 INFO    ] No existing commands found in stream
[2026-06-27 02:06:50,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:06:50,204.204 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-27 02:06:52,982.982 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 02:06:52,984.984 INFO    ] Checking for system updates...
[2026-06-27 02:06:53,005.005 INFO    ] 200
[2026-06-27 02:06:53,006.006 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:06:53,040.040 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:06:53,041.041 INFO    ] No update needed
[2026-06-27 02:06:53,043.043 INFO    ] Checking for camera pi updates...
[2026-06-27 02:06:53,065.065 INFO    ] 200
[2026-06-27 02:06:53,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:06:53,092.092 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:06:53,146.146 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:06:53,148.148 INFO    ] No camera update needed
[2026-06-27 02:06:53,149.149 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:06:53,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:06:53,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:06:53,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:06:55,195.195 INFO    ] ================================================
[2026-06-27 02:06:55,211.211 INFO    ] Launching Daemon at Sat Jun 27 02:06:55 IST 2026
[2026-06-27 02:06:55,222.222 INFO    ] ================================================
[2026-06-27 02:06:55,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:06:55
[2026-06-27 02:06:55,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:06:56,098.098 INFO    ] Initializing speech engine...
[2026-06-27 02:06:56,104.104 INFO    ] 2026-06-27 02:06:56
[2026-06-27 02:06:56,309.309 INFO    ] 2026-06-27 02:06:56
[2026-06-27 02:06:56,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:06:56,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:06:56,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:06:56,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:06:56,737.737 INFO    ] time= 27/06/2026 02:06:56
[2026-06-27 02:06:56,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:06:56,767.767 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:06:56,833.833 INFO    ] No existing commands found in stream
[2026-06-27 02:07:01,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:07:01,846.846 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-27 02:07:04,884.884 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 02:07:04,886.886 INFO    ] Checking for system updates...
[2026-06-27 02:07:04,908.908 INFO    ] 200
[2026-06-27 02:07:04,910.910 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:07:04,943.943 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:07:04,944.944 INFO    ] No update needed
[2026-06-27 02:07:04,946.946 INFO    ] Checking for camera pi updates...
[2026-06-27 02:07:04,967.967 INFO    ] 200
[2026-06-27 02:07:04,969.969 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:07:04,995.995 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:07:05,037.037 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:07:05,039.039 INFO    ] No camera update needed
[2026-06-27 02:07:05,040.040 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:07:05,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:07:05,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:07:05,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:07:07,088.088 INFO    ] ================================================
[2026-06-27 02:07:07,103.103 INFO    ] Launching Daemon at Sat Jun 27 02:07:07 IST 2026
[2026-06-27 02:07:07,114.114 INFO    ] ================================================
[2026-06-27 02:07:07,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:07:07
[2026-06-27 02:07:07,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:07:07,999.999 INFO    ] Initializing speech engine...
[2026-06-27 02:07:08,005.005 INFO    ] 2026-06-27 02:07:08
[2026-06-27 02:07:08,215.215 INFO    ] 2026-06-27 02:07:08
[2026-06-27 02:07:08,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:07:08,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:07:08,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:07:08,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:07:08,663.663 INFO    ] time= 27/06/2026 02:07:08
[2026-06-27 02:07:08,668.668 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:07:08,670.670 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:07:08,740.740 INFO    ] No existing commands found in stream
[2026-06-27 02:07:13,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:07:13,752.752 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-27 02:07:14,849.849 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:07:14,851.851 INFO    ] Checking for system updates...
[2026-06-27 02:07:14,872.872 INFO    ] 200
[2026-06-27 02:07:14,873.873 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:07:14,907.907 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:07:14,908.908 INFO    ] No update needed
[2026-06-27 02:07:14,910.910 INFO    ] Checking for camera pi updates...
[2026-06-27 02:07:14,929.929 INFO    ] 200
[2026-06-27 02:07:14,931.931 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:07:14,957.957 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:07:15,007.007 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:07:15,008.008 INFO    ] No camera update needed
[2026-06-27 02:07:15,010.010 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:07:15,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:07:15,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:07:15,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:07:17,058.058 INFO    ] ================================================
[2026-06-27 02:07:17,073.073 INFO    ] Launching Daemon at Sat Jun 27 02:07:17 IST 2026
[2026-06-27 02:07:17,085.085 INFO    ] ================================================
[2026-06-27 02:07:17,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:07:17
[2026-06-27 02:07:17,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:07:17,891.891 INFO    ] Initializing speech engine...
[2026-06-27 02:07:17,897.897 INFO    ] 2026-06-27 02:07:17
[2026-06-27 02:07:18,101.101 INFO    ] 2026-06-27 02:07:18
[2026-06-27 02:07:18,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:07:18,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:07:18,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:07:18,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:07:18,514.514 INFO    ] time= 27/06/2026 02:07:18
[2026-06-27 02:07:18,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:07:18,554.554 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:07:18,626.626 INFO    ] No existing commands found in stream
[2026-06-27 02:07:23,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:07:23,643.643 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-27 02:07:25,668.668 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 02:07:25,670.670 INFO    ] Checking for system updates...
[2026-06-27 02:07:25,692.692 INFO    ] 200
[2026-06-27 02:07:25,694.694 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:07:25,731.731 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:07:25,732.732 INFO    ] No update needed
[2026-06-27 02:07:25,734.734 INFO    ] Checking for camera pi updates...
[2026-06-27 02:07:25,756.756 INFO    ] 200
[2026-06-27 02:07:25,758.758 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:07:25,783.783 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:07:25,830.830 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:07:25,832.832 INFO    ] No camera update needed
[2026-06-27 02:07:25,833.833 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:07:25,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:07:25,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:07:25,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:07:27,883.883 INFO    ] ================================================
[2026-06-27 02:07:27,899.899 INFO    ] Launching Daemon at Sat Jun 27 02:07:27 IST 2026
[2026-06-27 02:07:27,910.910 INFO    ] ================================================
[2026-06-27 02:07:28,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:07:28
[2026-06-27 02:07:28,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:07:28,703.703 INFO    ] Initializing speech engine...
[2026-06-27 02:07:28,708.708 INFO    ] 2026-06-27 02:07:28
[2026-06-27 02:07:28,914.914 INFO    ] 2026-06-27 02:07:28
[2026-06-27 02:07:28,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:07:29,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:07:29,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:07:29,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:07:29,334.334 INFO    ] time= 27/06/2026 02:07:29
[2026-06-27 02:07:29,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:07:29,363.363 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:07:29,431.431 INFO    ] No existing commands found in stream
[2026-06-27 02:07:34,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:07:34,442.442 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-27 02:07:38,323.323 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:07:38,325.325 INFO    ] Checking for system updates...
[2026-06-27 02:07:38,348.348 INFO    ] 200
[2026-06-27 02:07:38,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:07:38,382.382 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:07:38,384.384 INFO    ] No update needed
[2026-06-27 02:07:38,385.385 INFO    ] Checking for camera pi updates...
[2026-06-27 02:07:38,406.406 INFO    ] 200
[2026-06-27 02:07:38,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:07:38,431.431 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:07:38,475.475 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:07:38,477.477 INFO    ] No camera update needed
[2026-06-27 02:07:38,478.478 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:07:38,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:07:38,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:07:38,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:07:40,524.524 INFO    ] ================================================
[2026-06-27 02:07:40,540.540 INFO    ] Launching Daemon at Sat Jun 27 02:07:40 IST 2026
[2026-06-27 02:07:40,552.552 INFO    ] ================================================
[2026-06-27 02:07:40,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:07:40
[2026-06-27 02:07:41,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:07:41,391.391 INFO    ] Initializing speech engine...
[2026-06-27 02:07:41,396.396 INFO    ] 2026-06-27 02:07:41
[2026-06-27 02:07:41,603.603 INFO    ] 2026-06-27 02:07:41
[2026-06-27 02:07:41,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:07:41,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:07:41,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:07:41,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:07:42,019.019 INFO    ] time= 27/06/2026 02:07:41
[2026-06-27 02:07:42,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:07:42,052.052 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:07:42,142.142 INFO    ] No existing commands found in stream
[2026-06-27 02:07:47,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:07:47,166.166 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-27 02:07:47,577.577 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 02:07:47,578.578 INFO    ] Checking for system updates...
[2026-06-27 02:07:47,599.599 INFO    ] 200
[2026-06-27 02:07:47,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:07:47,630.630 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:07:47,632.632 INFO    ] No update needed
[2026-06-27 02:07:47,633.633 INFO    ] Checking for camera pi updates...
[2026-06-27 02:07:47,652.652 INFO    ] 200
[2026-06-27 02:07:47,654.654 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:07:47,679.679 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:07:47,719.719 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:07:47,720.720 INFO    ] No camera update needed
[2026-06-27 02:07:47,721.721 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:07:47,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:07:47,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:07:47,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:07:49,767.767 INFO    ] ================================================
[2026-06-27 02:07:49,782.782 INFO    ] Launching Daemon at Sat Jun 27 02:07:49 IST 2026
[2026-06-27 02:07:49,794.794 INFO    ] ================================================
[2026-06-27 02:07:50,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:07:50
[2026-06-27 02:07:50,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:07:50,692.692 INFO    ] Initializing speech engine...
[2026-06-27 02:07:50,701.701 INFO    ] 2026-06-27 02:07:50
[2026-06-27 02:07:50,940.940 INFO    ] 2026-06-27 02:07:50
[2026-06-27 02:07:50,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:07:51,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:07:51,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:07:51,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:07:51,380.380 INFO    ] time= 27/06/2026 02:07:51
[2026-06-27 02:07:51,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:07:51,399.399 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:07:51,458.458 INFO    ] No existing commands found in stream
[2026-06-27 02:07:56,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:07:56,470.470 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-27 02:07:57,164.164 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 02:07:57,166.166 INFO    ] Checking for system updates...
[2026-06-27 02:07:57,186.186 INFO    ] 200
[2026-06-27 02:07:57,192.192 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:07:57,225.225 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:07:57,226.226 INFO    ] No update needed
[2026-06-27 02:07:57,228.228 INFO    ] Checking for camera pi updates...
[2026-06-27 02:07:57,247.247 INFO    ] 200
[2026-06-27 02:07:57,249.249 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:07:57,272.272 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:07:57,317.317 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:07:57,318.318 INFO    ] No camera update needed
[2026-06-27 02:07:57,320.320 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:07:57,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:07:57,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:07:57,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:07:59,368.368 INFO    ] ================================================
[2026-06-27 02:07:59,385.385 INFO    ] Launching Daemon at Sat Jun 27 02:07:59 IST 2026
[2026-06-27 02:07:59,396.396 INFO    ] ================================================
[2026-06-27 02:07:59,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:07:59
[2026-06-27 02:08:00,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:08:00,227.227 INFO    ] Initializing speech engine...
[2026-06-27 02:08:00,232.232 INFO    ] 2026-06-27 02:08:00
[2026-06-27 02:08:00,441.441 INFO    ] 2026-06-27 02:08:00
[2026-06-27 02:08:00,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:08:00,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:08:00,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:08:00,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:08:00,868.868 INFO    ] time= 27/06/2026 02:08:00
[2026-06-27 02:08:00,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:08:00,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:08:00,964.964 INFO    ] No existing commands found in stream
[2026-06-27 02:08:05,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:08:05,977.977 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-27 02:08:09,982.982 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:08:09,984.984 INFO    ] Checking for system updates...
[2026-06-27 02:08:10,004.004 INFO    ] 200
[2026-06-27 02:08:10,006.006 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:08:10,040.040 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:08:10,041.041 INFO    ] No update needed
[2026-06-27 02:08:10,042.042 INFO    ] Checking for camera pi updates...
[2026-06-27 02:08:10,063.063 INFO    ] 200
[2026-06-27 02:08:10,064.064 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:08:10,089.089 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:08:10,132.132 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:08:10,134.134 INFO    ] No camera update needed
[2026-06-27 02:08:10,135.135 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:08:10,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:08:10,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:08:10,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:08:12,182.182 INFO    ] ================================================
[2026-06-27 02:08:12,198.198 INFO    ] Launching Daemon at Sat Jun 27 02:08:12 IST 2026
[2026-06-27 02:08:12,208.208 INFO    ] ================================================
[2026-06-27 02:08:12,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:08:12
[2026-06-27 02:08:12,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:08:13,011.011 INFO    ] Initializing speech engine...
[2026-06-27 02:08:13,016.016 INFO    ] 2026-06-27 02:08:13
[2026-06-27 02:08:13,248.248 INFO    ] 2026-06-27 02:08:13
[2026-06-27 02:08:13,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:08:13,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:08:13,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:08:13,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:08:13,682.682 INFO    ] time= 27/06/2026 02:08:13
[2026-06-27 02:08:13,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:08:13,728.728 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:08:13,805.805 INFO    ] No existing commands found in stream
[2026-06-27 02:08:18,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:08:18,817.817 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-27 02:08:22,504.504 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 02:08:22,505.505 INFO    ] Checking for system updates...
[2026-06-27 02:08:22,526.526 INFO    ] 200
[2026-06-27 02:08:22,527.527 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:08:22,563.563 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:08:22,564.564 INFO    ] No update needed
[2026-06-27 02:08:22,566.566 INFO    ] Checking for camera pi updates...
[2026-06-27 02:08:22,585.585 INFO    ] 200
[2026-06-27 02:08:22,587.587 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:08:22,610.610 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:08:22,661.661 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:08:22,662.662 INFO    ] No camera update needed
[2026-06-27 02:08:22,664.664 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:08:22,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:08:22,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:08:22,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:08:24,710.710 INFO    ] ================================================
[2026-06-27 02:08:24,725.725 INFO    ] Launching Daemon at Sat Jun 27 02:08:24 IST 2026
[2026-06-27 02:08:24,736.736 INFO    ] ================================================
[2026-06-27 02:08:25,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:08:25
[2026-06-27 02:08:25,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:08:25,547.547 INFO    ] Initializing speech engine...
[2026-06-27 02:08:25,550.550 INFO    ] 2026-06-27 02:08:25
[2026-06-27 02:08:25,770.770 INFO    ] 2026-06-27 02:08:25
[2026-06-27 02:08:25,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:08:25,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:08:25,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:08:26,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:08:26,200.200 INFO    ] time= 27/06/2026 02:08:26
[2026-06-27 02:08:26,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:08:26,229.229 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:08:26,295.295 INFO    ] No existing commands found in stream
[2026-06-27 02:08:31,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:08:31,308.308 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-27 02:08:35,129.129 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 02:08:35,131.131 INFO    ] Checking for system updates...
[2026-06-27 02:08:35,151.151 INFO    ] 200
[2026-06-27 02:08:35,153.153 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:08:35,183.183 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:08:35,184.184 INFO    ] No update needed
[2026-06-27 02:08:35,186.186 INFO    ] Checking for camera pi updates...
[2026-06-27 02:08:35,205.205 INFO    ] 200
[2026-06-27 02:08:35,206.206 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:08:35,232.232 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:08:35,277.277 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:08:35,278.278 INFO    ] No camera update needed
[2026-06-27 02:08:35,279.279 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:08:35,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:08:35,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:08:35,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:08:37,325.325 INFO    ] ================================================
[2026-06-27 02:08:37,342.342 INFO    ] Launching Daemon at Sat Jun 27 02:08:37 IST 2026
[2026-06-27 02:08:37,352.352 INFO    ] ================================================
[2026-06-27 02:08:37,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:08:37
[2026-06-27 02:08:37,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:08:38,139.139 INFO    ] Initializing speech engine...
[2026-06-27 02:08:38,147.147 INFO    ] 2026-06-27 02:08:38
[2026-06-27 02:08:38,357.357 INFO    ] 2026-06-27 02:08:38
[2026-06-27 02:08:38,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:08:38,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:08:38,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:08:38,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:08:38,783.783 INFO    ] time= 27/06/2026 02:08:38
[2026-06-27 02:08:38,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:08:38,814.814 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:08:38,886.886 INFO    ] No existing commands found in stream
[2026-06-27 02:08:43,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:08:43,903.903 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-27 02:08:44,544.544 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 02:08:44,545.545 INFO    ] Checking for system updates...
[2026-06-27 02:08:44,568.568 INFO    ] 200
[2026-06-27 02:08:44,569.569 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:08:44,599.599 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:08:44,600.600 INFO    ] No update needed
[2026-06-27 02:08:44,601.601 INFO    ] Checking for camera pi updates...
[2026-06-27 02:08:44,623.623 INFO    ] 200
[2026-06-27 02:08:44,624.624 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:08:44,649.649 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:08:44,692.692 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:08:44,694.694 INFO    ] No camera update needed
[2026-06-27 02:08:44,696.696 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:08:44,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:08:44,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:08:44,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:08:46,744.744 INFO    ] ================================================
[2026-06-27 02:08:46,760.760 INFO    ] Launching Daemon at Sat Jun 27 02:08:46 IST 2026
[2026-06-27 02:08:46,771.771 INFO    ] ================================================
[2026-06-27 02:08:47,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:08:47
[2026-06-27 02:08:47,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:08:47,558.558 INFO    ] Initializing speech engine...
[2026-06-27 02:08:47,564.564 INFO    ] 2026-06-27 02:08:47
[2026-06-27 02:08:47,769.769 INFO    ] 2026-06-27 02:08:47
[2026-06-27 02:08:47,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:08:47,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:08:48,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:08:48,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:08:48,220.220 INFO    ] time= 27/06/2026 02:08:48
[2026-06-27 02:08:48,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:08:48,281.281 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:08:48,357.357 INFO    ] No existing commands found in stream
[2026-06-27 02:08:53,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:08:53,370.370 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-27 02:08:57,518.518 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 02:08:57,519.519 INFO    ] Checking for system updates...
[2026-06-27 02:08:57,541.541 INFO    ] 200
[2026-06-27 02:08:57,543.543 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:08:57,573.573 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:08:57,575.575 INFO    ] No update needed
[2026-06-27 02:08:57,577.577 INFO    ] Checking for camera pi updates...
[2026-06-27 02:08:57,596.596 INFO    ] 200
[2026-06-27 02:08:57,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:08:57,621.621 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:08:57,662.662 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:08:57,663.663 INFO    ] No camera update needed
[2026-06-27 02:08:57,665.665 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:08:57,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:08:57,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:08:57,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:08:59,710.710 INFO    ] ================================================
[2026-06-27 02:08:59,726.726 INFO    ] Launching Daemon at Sat Jun 27 02:08:59 IST 2026
[2026-06-27 02:08:59,738.738 INFO    ] ================================================
[2026-06-27 02:09:00,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:09:00
[2026-06-27 02:09:00,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:09:00,577.577 INFO    ] Initializing speech engine...
[2026-06-27 02:09:00,582.582 INFO    ] 2026-06-27 02:09:00
[2026-06-27 02:09:00,786.786 INFO    ] 2026-06-27 02:09:00
[2026-06-27 02:09:00,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:09:01,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:09:01,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:09:01,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:09:01,209.209 INFO    ] time= 27/06/2026 02:09:01
[2026-06-27 02:09:01,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:09:01,261.261 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:09:01,326.326 INFO    ] No existing commands found in stream
[2026-06-27 02:09:06,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:09:06,337.337 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-27 02:09:08,924.924 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:09:08,925.925 INFO    ] Checking for system updates...
[2026-06-27 02:09:08,947.947 INFO    ] 200
[2026-06-27 02:09:08,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:09:08,982.982 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:09:08,984.984 INFO    ] No update needed
[2026-06-27 02:09:08,985.985 INFO    ] Checking for camera pi updates...
[2026-06-27 02:09:09,006.006 INFO    ] 200
[2026-06-27 02:09:09,007.007 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:09:09,033.033 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:09:09,176.176 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:09:09,177.177 INFO    ] No camera update needed
[2026-06-27 02:09:09,178.178 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:09:09,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:09:09,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:09:09,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:09:11,217.217 INFO    ] ================================================
[2026-06-27 02:09:11,226.226 INFO    ] Launching Daemon at Sat Jun 27 02:09:11 IST 2026
[2026-06-27 02:09:11,232.232 INFO    ] ================================================
[2026-06-27 02:09:11,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:09:11
[2026-06-27 02:09:11,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:09:12,045.045 INFO    ] Initializing speech engine...
[2026-06-27 02:09:12,050.050 INFO    ] 2026-06-27 02:09:12
[2026-06-27 02:09:12,260.260 INFO    ] 2026-06-27 02:09:12
[2026-06-27 02:09:12,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:09:12,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:09:12,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:09:12,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:09:12,727.727 INFO    ] time= 27/06/2026 02:09:12
[2026-06-27 02:09:12,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:09:12,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:09:12,845.845 INFO    ] No existing commands found in stream
[2026-06-27 02:09:17,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:09:17,858.858 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-27 02:09:21,988.988 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 02:09:21,989.989 INFO    ] Checking for system updates...
[2026-06-27 02:09:22,011.011 INFO    ] 200
[2026-06-27 02:09:22,013.013 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:09:22,043.043 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:09:22,044.044 INFO    ] No update needed
[2026-06-27 02:09:22,046.046 INFO    ] Checking for camera pi updates...
[2026-06-27 02:09:22,065.065 INFO    ] 200
[2026-06-27 02:09:22,067.067 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:09:22,090.090 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:09:22,132.132 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:09:22,133.133 INFO    ] No camera update needed
[2026-06-27 02:09:22,135.135 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:09:22,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:09:22,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:09:22,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:09:24,180.180 INFO    ] ================================================
[2026-06-27 02:09:24,196.196 INFO    ] Launching Daemon at Sat Jun 27 02:09:24 IST 2026
[2026-06-27 02:09:24,212.212 INFO    ] ================================================
[2026-06-27 02:09:24,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:09:24
[2026-06-27 02:09:24,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:09:25,009.009 INFO    ] Initializing speech engine...
[2026-06-27 02:09:25,012.012 INFO    ] 2026-06-27 02:09:25
[2026-06-27 02:09:25,206.206 INFO    ] 2026-06-27 02:09:25
[2026-06-27 02:09:25,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:09:25,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:09:25,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:09:25,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:09:25,709.709 INFO    ] time= 27/06/2026 02:09:25
[2026-06-27 02:09:25,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:09:25,742.742 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:09:25,842.842 INFO    ] No existing commands found in stream
[2026-06-27 02:09:30,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:09:30,849.849 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-27 02:09:34,899.899 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 02:09:34,901.901 INFO    ] Checking for system updates...
[2026-06-27 02:09:34,922.922 INFO    ] 200
[2026-06-27 02:09:34,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:09:34,954.954 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:09:34,956.956 INFO    ] No update needed
[2026-06-27 02:09:34,957.957 INFO    ] Checking for camera pi updates...
[2026-06-27 02:09:34,978.978 INFO    ] 200
[2026-06-27 02:09:34,980.980 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:09:35,007.007 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:09:35,053.053 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:09:35,055.055 INFO    ] No camera update needed
[2026-06-27 02:09:35,056.056 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:09:35,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:09:35,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:09:35,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:09:37,104.104 INFO    ] ================================================
[2026-06-27 02:09:37,120.120 INFO    ] Launching Daemon at Sat Jun 27 02:09:37 IST 2026
[2026-06-27 02:09:37,131.131 INFO    ] ================================================
[2026-06-27 02:09:37,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:09:37
[2026-06-27 02:09:37,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:09:38,000.000 INFO    ] Initializing speech engine...
[2026-06-27 02:09:38,006.006 INFO    ] 2026-06-27 02:09:38
[2026-06-27 02:09:38,216.216 INFO    ] 2026-06-27 02:09:38
[2026-06-27 02:09:38,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:09:38,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:09:38,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:09:38,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:09:38,626.626 INFO    ] time= 27/06/2026 02:09:38
[2026-06-27 02:09:38,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:09:38,667.667 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:09:38,740.740 INFO    ] No existing commands found in stream
[2026-06-27 02:09:43,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:09:43,752.752 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-27 02:09:46,827.827 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:09:46,828.828 INFO    ] Checking for system updates...
[2026-06-27 02:09:46,850.850 INFO    ] 200
[2026-06-27 02:09:46,852.852 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:09:46,885.885 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:09:46,887.887 INFO    ] No update needed
[2026-06-27 02:09:46,888.888 INFO    ] Checking for camera pi updates...
[2026-06-27 02:09:46,911.911 INFO    ] 200
[2026-06-27 02:09:46,912.912 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:09:46,936.936 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:09:46,980.980 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:09:46,982.982 INFO    ] No camera update needed
[2026-06-27 02:09:46,983.983 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:09:46,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:09:46,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:09:46,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:09:49,030.030 INFO    ] ================================================
[2026-06-27 02:09:49,047.047 INFO    ] Launching Daemon at Sat Jun 27 02:09:49 IST 2026
[2026-06-27 02:09:49,058.058 INFO    ] ================================================
[2026-06-27 02:09:49,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:09:49
[2026-06-27 02:09:49,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:09:49,878.878 INFO    ] Initializing speech engine...
[2026-06-27 02:09:49,884.884 INFO    ] 2026-06-27 02:09:49
[2026-06-27 02:09:50,087.087 INFO    ] 2026-06-27 02:09:50
[2026-06-27 02:09:50,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:09:50,305.305 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:09:50,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:09:50,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:09:50,512.512 INFO    ] time= 27/06/2026 02:09:50
[2026-06-27 02:09:50,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:09:50,540.540 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:09:50,606.606 INFO    ] No existing commands found in stream
[2026-06-27 02:09:55,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:09:55,641.641 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-27 02:09:59,069.069 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 02:09:59,071.071 INFO    ] Checking for system updates...
[2026-06-27 02:09:59,092.092 INFO    ] 200
[2026-06-27 02:09:59,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:09:59,123.123 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:09:59,125.125 INFO    ] No update needed
[2026-06-27 02:09:59,126.126 INFO    ] Checking for camera pi updates...
[2026-06-27 02:09:59,146.146 INFO    ] 200
[2026-06-27 02:09:59,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:09:59,170.170 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:09:59,218.218 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:09:59,219.219 INFO    ] No camera update needed
[2026-06-27 02:09:59,220.220 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:09:59,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:09:59,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:09:59,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:10:01,280.280 INFO    ] ================================================
[2026-06-27 02:10:01,369.369 INFO    ] Launching Daemon at Sat Jun 27 02:10:01 IST 2026
[2026-06-27 02:10:01,397.397 INFO    ] ================================================
[2026-06-27 02:10:01,923.923 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:10:01
[2026-06-27 02:10:02,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:10:02,525.525 INFO    ] Initializing speech engine...
[2026-06-27 02:10:02,528.528 INFO    ] 2026-06-27 02:10:02
[2026-06-27 02:10:02,739.739 INFO    ] 2026-06-27 02:10:02
[2026-06-27 02:10:02,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:10:02,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:10:02,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:10:03,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:10:03,223.223 INFO    ] time= 27/06/2026 02:10:03
[2026-06-27 02:10:03,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:10:03,270.270 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:10:03,346.346 INFO    ] No existing commands found in stream
[2026-06-27 02:10:08,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:10:08,359.359 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-27 02:10:11,069.069 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 02:10:11,071.071 INFO    ] Checking for system updates...
[2026-06-27 02:10:11,093.093 INFO    ] 200
[2026-06-27 02:10:11,094.094 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:10:11,127.127 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:10:11,129.129 INFO    ] No update needed
[2026-06-27 02:10:11,130.130 INFO    ] Checking for camera pi updates...
[2026-06-27 02:10:11,150.150 INFO    ] 200
[2026-06-27 02:10:11,151.151 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:10:11,175.175 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:10:11,223.223 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:10:11,224.224 INFO    ] No camera update needed
[2026-06-27 02:10:11,226.226 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:10:11,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:10:11,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:10:11,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:10:13,272.272 INFO    ] ================================================
[2026-06-27 02:10:13,288.288 INFO    ] Launching Daemon at Sat Jun 27 02:10:13 IST 2026
[2026-06-27 02:10:13,299.299 INFO    ] ================================================
[2026-06-27 02:10:13,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:10:13
[2026-06-27 02:10:13,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:10:14,139.139 INFO    ] Initializing speech engine...
[2026-06-27 02:10:14,144.144 INFO    ] 2026-06-27 02:10:14
[2026-06-27 02:10:14,356.356 INFO    ] 2026-06-27 02:10:14
[2026-06-27 02:10:14,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:10:14,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:10:14,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:10:14,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:10:14,770.770 INFO    ] time= 27/06/2026 02:10:14
[2026-06-27 02:10:14,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:10:14,814.814 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:10:14,881.881 INFO    ] No existing commands found in stream
[2026-06-27 02:10:19,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:10:19,895.895 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-27 02:10:23,233.233 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 02:10:23,235.235 INFO    ] Checking for system updates...
[2026-06-27 02:10:23,256.256 INFO    ] 200
[2026-06-27 02:10:23,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:10:23,288.288 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:10:23,290.290 INFO    ] No update needed
[2026-06-27 02:10:23,291.291 INFO    ] Checking for camera pi updates...
[2026-06-27 02:10:23,311.311 INFO    ] 200
[2026-06-27 02:10:23,312.312 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:10:23,336.336 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:10:23,379.379 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:10:23,380.380 INFO    ] No camera update needed
[2026-06-27 02:10:23,382.382 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:10:23,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:10:23,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:10:23,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:10:25,428.428 INFO    ] ================================================
[2026-06-27 02:10:25,443.443 INFO    ] Launching Daemon at Sat Jun 27 02:10:25 IST 2026
[2026-06-27 02:10:25,454.454 INFO    ] ================================================
[2026-06-27 02:10:25,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:10:25
[2026-06-27 02:10:26,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:10:26,290.290 INFO    ] Initializing speech engine...
[2026-06-27 02:10:26,295.295 INFO    ] 2026-06-27 02:10:26
[2026-06-27 02:10:26,500.500 INFO    ] 2026-06-27 02:10:26
[2026-06-27 02:10:26,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:10:26,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:10:26,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:10:26,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:10:26,921.921 INFO    ] time= 27/06/2026 02:10:26
[2026-06-27 02:10:26,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:10:26,949.949 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:10:27,015.015 INFO    ] No existing commands found in stream
[2026-06-27 02:10:32,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:10:32,026.026 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-27 02:10:36,009.009 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 02:10:36,011.011 INFO    ] Checking for system updates...
[2026-06-27 02:10:36,032.032 INFO    ] 200
[2026-06-27 02:10:36,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:10:36,065.065 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:10:36,066.066 INFO    ] No update needed
[2026-06-27 02:10:36,068.068 INFO    ] Checking for camera pi updates...
[2026-06-27 02:10:36,087.087 INFO    ] 200
[2026-06-27 02:10:36,089.089 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:10:36,114.114 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:10:36,160.160 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:10:36,162.162 INFO    ] No camera update needed
[2026-06-27 02:10:36,163.163 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:10:36,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:10:36,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:10:36,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:10:38,210.210 INFO    ] ================================================
[2026-06-27 02:10:38,227.227 INFO    ] Launching Daemon at Sat Jun 27 02:10:38 IST 2026
[2026-06-27 02:10:38,238.238 INFO    ] ================================================
[2026-06-27 02:10:38,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:10:38
[2026-06-27 02:10:38,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:10:39,041.041 INFO    ] Initializing speech engine...
[2026-06-27 02:10:39,046.046 INFO    ] 2026-06-27 02:10:39
[2026-06-27 02:10:39,253.253 INFO    ] 2026-06-27 02:10:39
[2026-06-27 02:10:39,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:10:39,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:10:39,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:10:39,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:10:39,663.663 INFO    ] time= 27/06/2026 02:10:39
[2026-06-27 02:10:39,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:10:39,715.715 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:10:39,790.790 INFO    ] No existing commands found in stream
[2026-06-27 02:10:44,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:10:44,804.804 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-27 02:10:48,423.423 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 02:10:48,425.425 INFO    ] Checking for system updates...
[2026-06-27 02:10:48,447.447 INFO    ] 200
[2026-06-27 02:10:48,448.448 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:10:48,481.481 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:10:48,482.482 INFO    ] No update needed
[2026-06-27 02:10:48,484.484 INFO    ] Checking for camera pi updates...
[2026-06-27 02:10:48,504.504 INFO    ] 200
[2026-06-27 02:10:48,505.505 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:10:48,530.530 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:10:48,570.570 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:10:48,572.572 INFO    ] No camera update needed
[2026-06-27 02:10:48,573.573 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:10:48,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:10:48,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:10:48,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:10:50,612.612 INFO    ] ================================================
[2026-06-27 02:10:50,621.621 INFO    ] Launching Daemon at Sat Jun 27 02:10:50 IST 2026
[2026-06-27 02:10:50,627.627 INFO    ] ================================================
[2026-06-27 02:10:50,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:10:50
[2026-06-27 02:10:51,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:10:51,412.412 INFO    ] Initializing speech engine...
[2026-06-27 02:10:51,422.422 INFO    ] 2026-06-27 02:10:51
[2026-06-27 02:10:51,642.642 INFO    ] 2026-06-27 02:10:51
[2026-06-27 02:10:51,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:10:51,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:10:51,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:10:52,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:10:52,074.074 INFO    ] time= 27/06/2026 02:10:52
[2026-06-27 02:10:52,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:10:52,126.126 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:10:52,229.229 INFO    ] No existing commands found in stream
[2026-06-27 02:10:57,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:10:57,241.241 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-27 02:11:01,125.125 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 02:11:01,126.126 INFO    ] Checking for system updates...
[2026-06-27 02:11:01,147.147 INFO    ] 200
[2026-06-27 02:11:01,149.149 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:11:01,179.179 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:11:01,181.181 INFO    ] No update needed
[2026-06-27 02:11:01,182.182 INFO    ] Checking for camera pi updates...
[2026-06-27 02:11:01,203.203 INFO    ] 200
[2026-06-27 02:11:01,204.204 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:11:01,229.229 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:11:01,281.281 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:11:01,283.283 INFO    ] No camera update needed
[2026-06-27 02:11:01,284.284 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:11:01,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:11:01,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:11:01,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:11:03,318.318 INFO    ] ================================================
[2026-06-27 02:11:03,326.326 INFO    ] Launching Daemon at Sat Jun 27 02:11:03 IST 2026
[2026-06-27 02:11:03,332.332 INFO    ] ================================================
[2026-06-27 02:11:03,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:11:03
[2026-06-27 02:11:04,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:11:04,144.144 INFO    ] Initializing speech engine...
[2026-06-27 02:11:04,149.149 INFO    ] 2026-06-27 02:11:04
[2026-06-27 02:11:04,353.353 INFO    ] 2026-06-27 02:11:04
[2026-06-27 02:11:04,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:11:04,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:11:04,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:11:04,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:11:04,769.769 INFO    ] time= 27/06/2026 02:11:04
[2026-06-27 02:11:04,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:11:04,803.803 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:11:04,874.874 INFO    ] No existing commands found in stream
[2026-06-27 02:11:09,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:11:09,886.886 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-27 02:11:12,062.062 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 02:11:12,063.063 INFO    ] Checking for system updates...
[2026-06-27 02:11:12,085.085 INFO    ] 200
[2026-06-27 02:11:12,086.086 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:11:12,118.118 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:11:12,119.119 INFO    ] No update needed
[2026-06-27 02:11:12,121.121 INFO    ] Checking for camera pi updates...
[2026-06-27 02:11:12,140.140 INFO    ] 200
[2026-06-27 02:11:12,142.142 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:11:12,167.167 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:11:12,305.305 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:11:12,307.307 INFO    ] No camera update needed
[2026-06-27 02:11:12,308.308 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:11:12,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:11:12,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:11:12,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:11:14,355.355 INFO    ] ================================================
[2026-06-27 02:11:14,370.370 INFO    ] Launching Daemon at Sat Jun 27 02:11:14 IST 2026
[2026-06-27 02:11:14,382.382 INFO    ] ================================================
[2026-06-27 02:11:14,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:11:14
[2026-06-27 02:11:15,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:11:15,246.246 INFO    ] Initializing speech engine...
[2026-06-27 02:11:15,251.251 INFO    ] 2026-06-27 02:11:15
[2026-06-27 02:11:15,458.458 INFO    ] 2026-06-27 02:11:15
[2026-06-27 02:11:15,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:11:15,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:11:15,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:11:15,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:11:15,871.871 INFO    ] time= 27/06/2026 02:11:15
[2026-06-27 02:11:15,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:11:15,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:11:15,995.995 INFO    ] No existing commands found in stream
[2026-06-27 02:11:21,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:11:21,008.008 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-27 02:11:22,632.632 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 02:11:22,634.634 INFO    ] Checking for system updates...
[2026-06-27 02:11:22,655.655 INFO    ] 200
[2026-06-27 02:11:22,657.657 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:11:22,689.689 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:11:22,690.690 INFO    ] No update needed
[2026-06-27 02:11:22,691.691 INFO    ] Checking for camera pi updates...
[2026-06-27 02:11:22,713.713 INFO    ] 200
[2026-06-27 02:11:22,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:11:22,739.739 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:11:22,783.783 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:11:22,785.785 INFO    ] No camera update needed
[2026-06-27 02:11:22,786.786 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:11:22,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:11:22,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:11:22,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:11:24,831.831 INFO    ] ================================================
[2026-06-27 02:11:24,847.847 INFO    ] Launching Daemon at Sat Jun 27 02:11:24 IST 2026
[2026-06-27 02:11:24,859.859 INFO    ] ================================================
[2026-06-27 02:11:25,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:11:25
[2026-06-27 02:11:25,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:11:25,699.699 INFO    ] Initializing speech engine...
[2026-06-27 02:11:25,706.706 INFO    ] 2026-06-27 02:11:25
[2026-06-27 02:11:25,911.911 INFO    ] 2026-06-27 02:11:25
[2026-06-27 02:11:25,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:11:26,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:11:26,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:11:26,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:11:26,336.336 INFO    ] time= 27/06/2026 02:11:26
[2026-06-27 02:11:26,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:11:26,364.364 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:11:26,432.432 INFO    ] No existing commands found in stream
[2026-06-27 02:11:31,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:11:31,455.455 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-27 02:11:32,999.999 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 02:11:33,001.001 INFO    ] Checking for system updates...
[2026-06-27 02:11:33,024.024 INFO    ] 200
[2026-06-27 02:11:33,026.026 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:11:33,059.059 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:11:33,060.060 INFO    ] No update needed
[2026-06-27 02:11:33,062.062 INFO    ] Checking for camera pi updates...
[2026-06-27 02:11:33,085.085 INFO    ] 200
[2026-06-27 02:11:33,086.086 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:11:33,114.114 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:11:33,146.146 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:11:33,148.148 INFO    ] No camera update needed
[2026-06-27 02:11:33,149.149 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:11:33,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:11:33,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:11:33,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:11:35,197.197 INFO    ] ================================================
[2026-06-27 02:11:35,213.213 INFO    ] Launching Daemon at Sat Jun 27 02:11:35 IST 2026
[2026-06-27 02:11:35,225.225 INFO    ] ================================================
[2026-06-27 02:11:35,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:11:35
[2026-06-27 02:11:35,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:11:36,056.056 INFO    ] Initializing speech engine...
[2026-06-27 02:11:36,061.061 INFO    ] 2026-06-27 02:11:36
[2026-06-27 02:11:36,272.272 INFO    ] 2026-06-27 02:11:36
[2026-06-27 02:11:36,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:11:36,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:11:36,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:11:36,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:11:36,677.677 INFO    ] time= 27/06/2026 02:11:36
[2026-06-27 02:11:36,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:11:36,727.727 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:11:36,795.795 INFO    ] No existing commands found in stream
[2026-06-27 02:11:41,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:11:41,807.807 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-27 02:11:43,188.188 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 02:11:43,190.190 INFO    ] Checking for system updates...
[2026-06-27 02:11:43,214.214 INFO    ] 200
[2026-06-27 02:11:43,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:11:43,245.245 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:11:43,246.246 INFO    ] No update needed
[2026-06-27 02:11:43,248.248 INFO    ] Checking for camera pi updates...
[2026-06-27 02:11:43,268.268 INFO    ] 200
[2026-06-27 02:11:43,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:11:43,298.298 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:11:43,340.340 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:11:43,341.341 INFO    ] No camera update needed
[2026-06-27 02:11:43,342.342 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:11:43,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:11:43,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:11:43,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:11:45,389.389 INFO    ] ================================================
[2026-06-27 02:11:45,405.405 INFO    ] Launching Daemon at Sat Jun 27 02:11:45 IST 2026
[2026-06-27 02:11:45,416.416 INFO    ] ================================================
[2026-06-27 02:11:45,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:11:45
[2026-06-27 02:11:46,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:11:46,215.215 INFO    ] Initializing speech engine...
[2026-06-27 02:11:46,220.220 INFO    ] 2026-06-27 02:11:46
[2026-06-27 02:11:46,436.436 INFO    ] 2026-06-27 02:11:46
[2026-06-27 02:11:46,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:11:46,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:11:46,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:11:46,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:11:46,856.856 INFO    ] time= 27/06/2026 02:11:46
[2026-06-27 02:11:46,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:11:46,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:11:46,955.955 INFO    ] No existing commands found in stream
[2026-06-27 02:11:51,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:11:51,971.971 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-27 02:11:52,996.996 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 02:11:52,998.998 INFO    ] Checking for system updates...
[2026-06-27 02:11:53,018.018 INFO    ] 200
[2026-06-27 02:11:53,020.020 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:11:53,050.050 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:11:53,051.051 INFO    ] No update needed
[2026-06-27 02:11:53,052.052 INFO    ] Checking for camera pi updates...
[2026-06-27 02:11:53,073.073 INFO    ] 200
[2026-06-27 02:11:53,075.075 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:11:53,099.099 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:11:53,177.177 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:11:53,179.179 INFO    ] No camera update needed
[2026-06-27 02:11:53,180.180 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:11:53,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:11:53,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:11:53,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:11:55,226.226 INFO    ] ================================================
[2026-06-27 02:11:55,242.242 INFO    ] Launching Daemon at Sat Jun 27 02:11:55 IST 2026
[2026-06-27 02:11:55,253.253 INFO    ] ================================================
[2026-06-27 02:11:55,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:11:55
[2026-06-27 02:11:55,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:11:56,048.048 INFO    ] Initializing speech engine...
[2026-06-27 02:11:56,061.061 INFO    ] 2026-06-27 02:11:56
[2026-06-27 02:11:56,270.270 INFO    ] 2026-06-27 02:11:56
[2026-06-27 02:11:56,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:11:56,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:11:56,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:11:56,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:11:56,685.685 INFO    ] time= 27/06/2026 02:11:56
[2026-06-27 02:11:56,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:11:56,724.724 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:11:56,791.791 INFO    ] No existing commands found in stream
[2026-06-27 02:12:01,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:12:01,803.803 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-27 02:12:07,608.608 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 02:12:07,610.610 INFO    ] Checking for system updates...
[2026-06-27 02:12:07,630.630 INFO    ] 200
[2026-06-27 02:12:07,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:12:07,661.661 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:12:07,663.663 INFO    ] No update needed
[2026-06-27 02:12:07,664.664 INFO    ] Checking for camera pi updates...
[2026-06-27 02:12:07,685.685 INFO    ] 200
[2026-06-27 02:12:07,686.686 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:12:07,711.711 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:12:07,755.755 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:12:07,756.756 INFO    ] No camera update needed
[2026-06-27 02:12:07,757.757 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:12:07,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:12:07,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:12:07,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:12:09,805.805 INFO    ] ================================================
[2026-06-27 02:12:09,821.821 INFO    ] Launching Daemon at Sat Jun 27 02:12:09 IST 2026
[2026-06-27 02:12:09,832.832 INFO    ] ================================================
[2026-06-27 02:12:10,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:12:10
[2026-06-27 02:12:10,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:12:10,679.679 INFO    ] Initializing speech engine...
[2026-06-27 02:12:10,692.692 INFO    ] 2026-06-27 02:12:10
[2026-06-27 02:12:10,903.903 INFO    ] 2026-06-27 02:12:10
[2026-06-27 02:12:10,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:12:11,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:12:11,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:12:11,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:12:11,322.322 INFO    ] time= 27/06/2026 02:12:11
[2026-06-27 02:12:11,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:12:11,355.355 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:12:11,422.422 INFO    ] No existing commands found in stream
[2026-06-27 02:12:16,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:12:16,434.434 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-27 02:12:17,740.740 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 02:12:17,742.742 INFO    ] Checking for system updates...
[2026-06-27 02:12:17,765.765 INFO    ] 200
[2026-06-27 02:12:17,767.767 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:12:17,804.804 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:12:17,807.807 INFO    ] No update needed
[2026-06-27 02:12:17,809.809 INFO    ] Checking for camera pi updates...
[2026-06-27 02:12:17,831.831 INFO    ] 200
[2026-06-27 02:12:17,833.833 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:12:17,856.856 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:12:17,902.902 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:12:17,904.904 INFO    ] No camera update needed
[2026-06-27 02:12:17,905.905 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:12:17,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:12:17,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:12:17,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:12:19,951.951 INFO    ] ================================================
[2026-06-27 02:12:19,967.967 INFO    ] Launching Daemon at Sat Jun 27 02:12:19 IST 2026
[2026-06-27 02:12:19,978.978 INFO    ] ================================================
[2026-06-27 02:12:20,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:12:20
[2026-06-27 02:12:20,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:12:20,774.774 INFO    ] Initializing speech engine...
[2026-06-27 02:12:20,780.780 INFO    ] 2026-06-27 02:12:20
[2026-06-27 02:12:20,982.982 INFO    ] 2026-06-27 02:12:20
[2026-06-27 02:12:21,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:12:21,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:12:21,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:12:21,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:12:21,396.396 INFO    ] time= 27/06/2026 02:12:21
[2026-06-27 02:12:21,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:12:21,429.429 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:12:21,497.497 INFO    ] No existing commands found in stream
[2026-06-27 02:12:26,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:12:26,529.529 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-27 02:12:27,551.551 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 02:12:27,553.553 INFO    ] Checking for system updates...
[2026-06-27 02:12:27,574.574 INFO    ] 200
[2026-06-27 02:12:27,576.576 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:12:27,606.606 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:12:27,607.607 INFO    ] No update needed
[2026-06-27 02:12:27,609.609 INFO    ] Checking for camera pi updates...
[2026-06-27 02:12:27,628.628 INFO    ] 200
[2026-06-27 02:12:27,630.630 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:12:27,655.655 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:12:27,700.700 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:12:27,701.701 INFO    ] No camera update needed
[2026-06-27 02:12:27,703.703 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:12:27,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:12:27,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:12:27,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:12:29,747.747 INFO    ] ================================================
[2026-06-27 02:12:29,763.763 INFO    ] Launching Daemon at Sat Jun 27 02:12:29 IST 2026
[2026-06-27 02:12:29,773.773 INFO    ] ================================================
[2026-06-27 02:12:30,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:12:30
[2026-06-27 02:12:30,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:12:30,616.616 INFO    ] Initializing speech engine...
[2026-06-27 02:12:30,629.629 INFO    ] 2026-06-27 02:12:30
[2026-06-27 02:12:30,839.839 INFO    ] 2026-06-27 02:12:30
[2026-06-27 02:12:30,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:12:30,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:12:31,033.033 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:12:31,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:12:31,730.730 INFO    ] time= 27/06/2026 02:12:31
[2026-06-27 02:12:31,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:12:31,738.738 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:12:31,814.814 INFO    ] No existing commands found in stream
[2026-06-27 02:12:36,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:12:36,828.828 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-27 02:12:39,681.681 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:12:39,683.683 INFO    ] Checking for system updates...
[2026-06-27 02:12:39,705.705 INFO    ] 200
[2026-06-27 02:12:39,706.706 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:12:39,739.739 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:12:39,740.740 INFO    ] No update needed
[2026-06-27 02:12:39,741.741 INFO    ] Checking for camera pi updates...
[2026-06-27 02:12:39,761.761 INFO    ] 200
[2026-06-27 02:12:39,763.763 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:12:39,786.786 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:12:39,826.826 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:12:39,827.827 INFO    ] No camera update needed
[2026-06-27 02:12:39,828.828 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:12:39,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:12:39,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:12:39,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:12:41,875.875 INFO    ] ================================================
[2026-06-27 02:12:41,890.890 INFO    ] Launching Daemon at Sat Jun 27 02:12:41 IST 2026
[2026-06-27 02:12:41,901.901 INFO    ] ================================================
[2026-06-27 02:12:42,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:12:42
[2026-06-27 02:12:42,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:12:42,694.694 INFO    ] Initializing speech engine...
[2026-06-27 02:12:42,703.703 INFO    ] 2026-06-27 02:12:42
[2026-06-27 02:12:42,908.908 INFO    ] 2026-06-27 02:12:42
[2026-06-27 02:12:42,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:12:43,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:12:43,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:12:43,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:12:43,330.330 INFO    ] time= 27/06/2026 02:12:43
[2026-06-27 02:12:43,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:12:43,360.360 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:12:43,428.428 INFO    ] No existing commands found in stream
[2026-06-27 02:12:48,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:12:48,439.439 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-27 02:12:50,079.079 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:12:50,080.080 INFO    ] Checking for system updates...
[2026-06-27 02:12:50,101.101 INFO    ] 200
[2026-06-27 02:12:50,102.102 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:12:50,132.132 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:12:50,133.133 INFO    ] No update needed
[2026-06-27 02:12:50,135.135 INFO    ] Checking for camera pi updates...
[2026-06-27 02:12:50,154.154 INFO    ] 200
[2026-06-27 02:12:50,156.156 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:12:50,180.180 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:12:50,223.223 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:12:50,224.224 INFO    ] No camera update needed
[2026-06-27 02:12:50,226.226 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:12:50,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:12:50,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:12:50,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:12:52,272.272 INFO    ] ================================================
[2026-06-27 02:12:52,287.287 INFO    ] Launching Daemon at Sat Jun 27 02:12:52 IST 2026
[2026-06-27 02:12:52,297.297 INFO    ] ================================================
[2026-06-27 02:12:52,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:12:52
[2026-06-27 02:12:52,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:12:53,077.077 INFO    ] Initializing speech engine...
[2026-06-27 02:12:53,085.085 INFO    ] 2026-06-27 02:12:53
[2026-06-27 02:12:53,299.299 INFO    ] 2026-06-27 02:12:53
[2026-06-27 02:12:53,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:12:53,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:12:53,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:12:53,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:12:53,722.722 INFO    ] time= 27/06/2026 02:12:53
[2026-06-27 02:12:53,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:12:53,753.753 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:12:53,845.845 INFO    ] No existing commands found in stream
[2026-06-27 02:12:58,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:12:58,862.862 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-27 02:13:02,959.959 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 02:13:02,961.961 INFO    ] Checking for system updates...
[2026-06-27 02:13:02,981.981 INFO    ] 200
[2026-06-27 02:13:02,983.983 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:13:03,019.019 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:13:03,021.021 INFO    ] No update needed
[2026-06-27 02:13:03,023.023 INFO    ] Checking for camera pi updates...
[2026-06-27 02:13:03,044.044 INFO    ] 200
[2026-06-27 02:13:03,045.045 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:13:03,070.070 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:13:03,113.113 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:13:03,114.114 INFO    ] No camera update needed
[2026-06-27 02:13:03,116.116 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:13:03,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:13:03,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:13:03,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:13:05,163.163 INFO    ] ================================================
[2026-06-27 02:13:05,179.179 INFO    ] Launching Daemon at Sat Jun 27 02:13:05 IST 2026
[2026-06-27 02:13:05,190.190 INFO    ] ================================================
[2026-06-27 02:13:05,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:13:05
[2026-06-27 02:13:05,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:13:05,974.974 INFO    ] Initializing speech engine...
[2026-06-27 02:13:05,987.987 INFO    ] 2026-06-27 02:13:05
[2026-06-27 02:13:06,179.179 INFO    ] 2026-06-27 02:13:06
[2026-06-27 02:13:06,224.224 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:13:06,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:13:06,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:13:06,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:13:06,658.658 INFO    ] time= 27/06/2026 02:13:06
[2026-06-27 02:13:06,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:13:06,697.697 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:13:06,773.773 INFO    ] No existing commands found in stream
[2026-06-27 02:13:11,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:13:11,790.790 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-27 02:13:14,792.792 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 02:13:14,794.794 INFO    ] Checking for system updates...
[2026-06-27 02:13:14,815.815 INFO    ] 200
[2026-06-27 02:13:14,816.816 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:13:14,847.847 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:13:14,849.849 INFO    ] No update needed
[2026-06-27 02:13:14,850.850 INFO    ] Checking for camera pi updates...
[2026-06-27 02:13:14,870.870 INFO    ] 200
[2026-06-27 02:13:14,871.871 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:13:14,895.895 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:13:15,036.036 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:13:15,037.037 INFO    ] No camera update needed
[2026-06-27 02:13:15,039.039 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:13:15,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:13:15,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:13:15,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:13:17,087.087 INFO    ] ================================================
[2026-06-27 02:13:17,102.102 INFO    ] Launching Daemon at Sat Jun 27 02:13:17 IST 2026
[2026-06-27 02:13:17,116.116 INFO    ] ================================================
[2026-06-27 02:13:17,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:13:17
[2026-06-27 02:13:17,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:13:17,955.955 INFO    ] Initializing speech engine...
[2026-06-27 02:13:17,959.959 INFO    ] 2026-06-27 02:13:17
[2026-06-27 02:13:18,166.166 INFO    ] 2026-06-27 02:13:18
[2026-06-27 02:13:18,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:13:18,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:13:18,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:13:18,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:13:18,587.587 INFO    ] time= 27/06/2026 02:13:18
[2026-06-27 02:13:18,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:13:18,617.617 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:13:18,708.708 INFO    ] No existing commands found in stream
[2026-06-27 02:13:23,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:13:23,726.726 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-27 02:13:27,842.842 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:13:27,844.844 INFO    ] Checking for system updates...
[2026-06-27 02:13:27,866.866 INFO    ] 200
[2026-06-27 02:13:27,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:13:27,900.900 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:13:27,901.901 INFO    ] No update needed
[2026-06-27 02:13:27,903.903 INFO    ] Checking for camera pi updates...
[2026-06-27 02:13:27,929.929 INFO    ] 200
[2026-06-27 02:13:27,930.930 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:13:27,954.954 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:13:27,995.995 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:13:27,997.997 INFO    ] No camera update needed
[2026-06-27 02:13:27,998.998 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:13:28,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:13:28,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:13:28,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:13:30,045.045 INFO    ] ================================================
[2026-06-27 02:13:30,060.060 INFO    ] Launching Daemon at Sat Jun 27 02:13:30 IST 2026
[2026-06-27 02:13:30,071.071 INFO    ] ================================================
[2026-06-27 02:13:30,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:13:30
[2026-06-27 02:13:30,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:13:30,888.888 INFO    ] Initializing speech engine...
[2026-06-27 02:13:30,893.893 INFO    ] 2026-06-27 02:13:30
[2026-06-27 02:13:31,096.096 INFO    ] 2026-06-27 02:13:31
[2026-06-27 02:13:31,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:13:31,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:13:31,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:13:32,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:13:32,520.520 INFO    ] time= 27/06/2026 02:13:32
[2026-06-27 02:13:32,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:13:32,533.533 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:13:32,590.590 INFO    ] No existing commands found in stream
[2026-06-27 02:13:37,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:13:37,599.599 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-27 02:13:41,239.239 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 02:13:41,240.240 INFO    ] Checking for system updates...
[2026-06-27 02:13:41,261.261 INFO    ] 200
[2026-06-27 02:13:41,262.262 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:13:41,293.293 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:13:41,294.294 INFO    ] No update needed
[2026-06-27 02:13:41,295.295 INFO    ] Checking for camera pi updates...
[2026-06-27 02:13:41,316.316 INFO    ] 200
[2026-06-27 02:13:41,317.317 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:13:41,342.342 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:13:41,383.383 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:13:41,384.384 INFO    ] No camera update needed
[2026-06-27 02:13:41,386.386 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:13:41,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:13:41,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:13:41,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:13:43,432.432 INFO    ] ================================================
[2026-06-27 02:13:43,448.448 INFO    ] Launching Daemon at Sat Jun 27 02:13:43 IST 2026
[2026-06-27 02:13:43,460.460 INFO    ] ================================================
[2026-06-27 02:13:43,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:13:43
[2026-06-27 02:13:44,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:13:44,249.249 INFO    ] Initializing speech engine...
[2026-06-27 02:13:44,257.257 INFO    ] 2026-06-27 02:13:44
[2026-06-27 02:13:44,474.474 INFO    ] 2026-06-27 02:13:44
[2026-06-27 02:13:44,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:13:44,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:13:44,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:13:44,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:13:44,895.895 INFO    ] time= 27/06/2026 02:13:44
[2026-06-27 02:13:44,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:13:44,925.925 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:13:45,015.015 INFO    ] No existing commands found in stream
[2026-06-27 02:13:50,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:13:50,032.032 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-27 02:13:51,256.256 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 02:13:51,257.257 INFO    ] Checking for system updates...
[2026-06-27 02:13:51,278.278 INFO    ] 200
[2026-06-27 02:13:51,280.280 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:13:51,310.310 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:13:51,311.311 INFO    ] No update needed
[2026-06-27 02:13:51,312.312 INFO    ] Checking for camera pi updates...
[2026-06-27 02:13:51,332.332 INFO    ] 200
[2026-06-27 02:13:51,333.333 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:13:51,360.360 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:13:51,401.401 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:13:51,402.402 INFO    ] No camera update needed
[2026-06-27 02:13:51,403.403 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:13:51,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:13:51,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:13:51,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:13:53,451.451 INFO    ] ================================================
[2026-06-27 02:13:53,466.466 INFO    ] Launching Daemon at Sat Jun 27 02:13:53 IST 2026
[2026-06-27 02:13:53,477.477 INFO    ] ================================================
[2026-06-27 02:13:53,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:13:53
[2026-06-27 02:13:54,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:13:54,280.280 INFO    ] Initializing speech engine...
[2026-06-27 02:13:54,285.285 INFO    ] 2026-06-27 02:13:54
[2026-06-27 02:13:54,504.504 INFO    ] 2026-06-27 02:13:54
[2026-06-27 02:13:54,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:13:54,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:13:54,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:13:54,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:13:54,927.927 INFO    ] time= 27/06/2026 02:13:54
[2026-06-27 02:13:54,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:13:54,958.958 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:13:55,025.025 INFO    ] No existing commands found in stream
[2026-06-27 02:14:00,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:14:00,037.037 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-27 02:14:02,825.825 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:14:02,826.826 INFO    ] Checking for system updates...
[2026-06-27 02:14:02,847.847 INFO    ] 200
[2026-06-27 02:14:02,848.848 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:14:02,881.881 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:14:02,882.882 INFO    ] No update needed
[2026-06-27 02:14:02,883.883 INFO    ] Checking for camera pi updates...
[2026-06-27 02:14:02,903.903 INFO    ] 200
[2026-06-27 02:14:02,904.904 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:14:02,928.928 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:14:02,969.969 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:14:02,971.971 INFO    ] No camera update needed
[2026-06-27 02:14:02,972.972 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:14:02,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:14:02,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:14:02,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:14:05,018.018 INFO    ] ================================================
[2026-06-27 02:14:05,033.033 INFO    ] Launching Daemon at Sat Jun 27 02:14:05 IST 2026
[2026-06-27 02:14:05,044.044 INFO    ] ================================================
[2026-06-27 02:14:05,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:14:05
[2026-06-27 02:14:05,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:14:05,938.938 INFO    ] Initializing speech engine...
[2026-06-27 02:14:05,942.942 INFO    ] 2026-06-27 02:14:05
[2026-06-27 02:14:06,142.142 INFO    ] 2026-06-27 02:14:06
[2026-06-27 02:14:06,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:14:06,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:14:06,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:14:06,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:14:06,567.567 INFO    ] time= 27/06/2026 02:14:06
[2026-06-27 02:14:06,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:14:06,596.596 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:14:06,686.686 INFO    ] No existing commands found in stream
[2026-06-27 02:14:11,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:14:11,703.703 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-27 02:14:12,297.297 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 02:14:12,299.299 INFO    ] Checking for system updates...
[2026-06-27 02:14:12,321.321 INFO    ] 200
[2026-06-27 02:14:12,322.322 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:14:12,355.355 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:14:12,356.356 INFO    ] No update needed
[2026-06-27 02:14:12,358.358 INFO    ] Checking for camera pi updates...
[2026-06-27 02:14:12,377.377 INFO    ] 200
[2026-06-27 02:14:12,379.379 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:14:12,403.403 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:14:12,446.446 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:14:12,448.448 INFO    ] No camera update needed
[2026-06-27 02:14:12,449.449 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:14:12,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:14:12,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:14:12,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:14:14,496.496 INFO    ] ================================================
[2026-06-27 02:14:14,511.511 INFO    ] Launching Daemon at Sat Jun 27 02:14:14 IST 2026
[2026-06-27 02:14:14,522.522 INFO    ] ================================================
[2026-06-27 02:14:14,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:14:14
[2026-06-27 02:14:15,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:14:15,326.326 INFO    ] Initializing speech engine...
[2026-06-27 02:14:15,334.334 INFO    ] 2026-06-27 02:14:15
[2026-06-27 02:14:15,542.542 INFO    ] 2026-06-27 02:14:15
[2026-06-27 02:14:15,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:14:15,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:14:15,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:14:15,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:14:15,952.952 INFO    ] time= 27/06/2026 02:14:15
[2026-06-27 02:14:15,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:14:15,987.987 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:14:16,056.056 INFO    ] No existing commands found in stream
[2026-06-27 02:14:21,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:14:21,069.069 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-27 02:14:25,239.239 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 02:14:25,240.240 INFO    ] Checking for system updates...
[2026-06-27 02:14:25,265.265 INFO    ] 200
[2026-06-27 02:14:25,266.266 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:14:25,297.297 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:14:25,298.298 INFO    ] No update needed
[2026-06-27 02:14:25,299.299 INFO    ] Checking for camera pi updates...
[2026-06-27 02:14:25,319.319 INFO    ] 200
[2026-06-27 02:14:25,320.320 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:14:25,343.343 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:14:25,410.410 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:14:25,411.411 INFO    ] No camera update needed
[2026-06-27 02:14:25,412.412 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:14:25,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:14:25,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:14:25,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:14:27,457.457 INFO    ] ================================================
[2026-06-27 02:14:27,472.472 INFO    ] Launching Daemon at Sat Jun 27 02:14:27 IST 2026
[2026-06-27 02:14:27,483.483 INFO    ] ================================================
[2026-06-27 02:14:27,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:14:27
[2026-06-27 02:14:28,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:14:28,291.291 INFO    ] Initializing speech engine...
[2026-06-27 02:14:28,302.302 INFO    ] 2026-06-27 02:14:28
[2026-06-27 02:14:28,507.507 INFO    ] 2026-06-27 02:14:28
[2026-06-27 02:14:28,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:14:28,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:14:28,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:14:28,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:14:28,921.921 INFO    ] time= 27/06/2026 02:14:28
[2026-06-27 02:14:28,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:14:28,956.956 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:14:29,028.028 INFO    ] No existing commands found in stream
[2026-06-27 02:14:34,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:14:34,056.056 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-27 02:14:38,305.305 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 02:14:38,306.306 INFO    ] Checking for system updates...
[2026-06-27 02:14:38,327.327 INFO    ] 200
[2026-06-27 02:14:38,328.328 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:14:38,361.361 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:14:38,362.362 INFO    ] No update needed
[2026-06-27 02:14:38,364.364 INFO    ] Checking for camera pi updates...
[2026-06-27 02:14:38,383.383 INFO    ] 200
[2026-06-27 02:14:38,385.385 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:14:38,408.408 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:14:38,454.454 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:14:38,455.455 INFO    ] No camera update needed
[2026-06-27 02:14:38,457.457 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:14:38,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:14:38,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:14:38,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:14:40,503.503 INFO    ] ================================================
[2026-06-27 02:14:40,518.518 INFO    ] Launching Daemon at Sat Jun 27 02:14:40 IST 2026
[2026-06-27 02:14:40,528.528 INFO    ] ================================================
[2026-06-27 02:14:40,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:14:40
[2026-06-27 02:14:41,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:14:41,345.345 INFO    ] Initializing speech engine...
[2026-06-27 02:14:41,359.359 INFO    ] 2026-06-27 02:14:41
[2026-06-27 02:14:41,566.566 INFO    ] 2026-06-27 02:14:41
[2026-06-27 02:14:41,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:14:41,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:14:41,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:14:41,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:14:41,986.986 INFO    ] time= 27/06/2026 02:14:41
[2026-06-27 02:14:42,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:14:42,021.021 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:14:42,089.089 INFO    ] No existing commands found in stream
[2026-06-27 02:14:47,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:14:47,104.104 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-27 02:14:48,246.246 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:14:48,248.248 INFO    ] Checking for system updates...
[2026-06-27 02:14:48,268.268 INFO    ] 200
[2026-06-27 02:14:48,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:14:48,300.300 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:14:48,302.302 INFO    ] No update needed
[2026-06-27 02:14:48,303.303 INFO    ] Checking for camera pi updates...
[2026-06-27 02:14:48,323.323 INFO    ] 200
[2026-06-27 02:14:48,324.324 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:14:48,348.348 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:14:48,391.391 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:14:48,393.393 INFO    ] No camera update needed
[2026-06-27 02:14:48,394.394 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:14:48,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:14:48,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:14:48,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:14:50,442.442 INFO    ] ================================================
[2026-06-27 02:14:50,457.457 INFO    ] Launching Daemon at Sat Jun 27 02:14:50 IST 2026
[2026-06-27 02:14:50,468.468 INFO    ] ================================================
[2026-06-27 02:14:50,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:14:50
[2026-06-27 02:14:51,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:14:51,275.275 INFO    ] Initializing speech engine...
[2026-06-27 02:14:51,279.279 INFO    ] 2026-06-27 02:14:51
[2026-06-27 02:14:51,481.481 INFO    ] 2026-06-27 02:14:51
[2026-06-27 02:14:51,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:14:51,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:14:51,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:14:51,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:14:51,880.880 INFO    ] time= 27/06/2026 02:14:51
[2026-06-27 02:14:51,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:14:51,929.929 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:14:51,996.996 INFO    ] No existing commands found in stream
[2026-06-27 02:14:57,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:14:57,013.013 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-27 02:15:00,863.863 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 02:15:00,864.864 INFO    ] Checking for system updates...
[2026-06-27 02:15:00,885.885 INFO    ] 200
[2026-06-27 02:15:00,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:15:00,917.917 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:15:00,918.918 INFO    ] No update needed
[2026-06-27 02:15:00,919.919 INFO    ] Checking for camera pi updates...
[2026-06-27 02:15:00,939.939 INFO    ] 200
[2026-06-27 02:15:00,940.940 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:15:00,964.964 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:15:01,009.009 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:15:01,010.010 INFO    ] No camera update needed
[2026-06-27 02:15:01,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:15:01,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:15:01,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:15:01,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:15:03,047.047 INFO    ] ================================================
[2026-06-27 02:15:03,056.056 INFO    ] Launching Daemon at Sat Jun 27 02:15:03 IST 2026
[2026-06-27 02:15:03,063.063 INFO    ] ================================================
[2026-06-27 02:15:03,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:15:03
[2026-06-27 02:15:03,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:15:03,831.831 INFO    ] Initializing speech engine...
[2026-06-27 02:15:03,842.842 INFO    ] 2026-06-27 02:15:03
[2026-06-27 02:15:04,049.049 INFO    ] 2026-06-27 02:15:04
[2026-06-27 02:15:04,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:15:04,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:15:04,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:15:04,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:15:04,476.476 INFO    ] time= 27/06/2026 02:15:04
[2026-06-27 02:15:04,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:15:04,507.507 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:15:04,573.573 INFO    ] No existing commands found in stream
[2026-06-27 02:15:09,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:15:09,586.586 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-27 02:15:11,412.412 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 02:15:11,414.414 INFO    ] Checking for system updates...
[2026-06-27 02:15:11,435.435 INFO    ] 200
[2026-06-27 02:15:11,436.436 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:15:11,469.469 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:15:11,470.470 INFO    ] No update needed
[2026-06-27 02:15:11,472.472 INFO    ] Checking for camera pi updates...
[2026-06-27 02:15:11,491.491 INFO    ] 200
[2026-06-27 02:15:11,492.492 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:15:11,518.518 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:15:11,563.563 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:15:11,565.565 INFO    ] No camera update needed
[2026-06-27 02:15:11,567.567 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:15:11,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:15:11,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:15:11,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:15:13,612.612 INFO    ] ================================================
[2026-06-27 02:15:13,627.627 INFO    ] Launching Daemon at Sat Jun 27 02:15:13 IST 2026
[2026-06-27 02:15:13,637.637 INFO    ] ================================================
[2026-06-27 02:15:13,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:15:13
[2026-06-27 02:15:14,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:15:14,483.483 INFO    ] Initializing speech engine...
[2026-06-27 02:15:14,488.488 INFO    ] 2026-06-27 02:15:14
[2026-06-27 02:15:14,696.696 INFO    ] 2026-06-27 02:15:14
[2026-06-27 02:15:14,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:15:14,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:15:14,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:15:15,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:15:15,102.102 INFO    ] time= 27/06/2026 02:15:15
[2026-06-27 02:15:15,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:15:15,145.145 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:15:15,212.212 INFO    ] No existing commands found in stream
[2026-06-27 02:15:20,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:15:20,229.229 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-27 02:15:21,504.504 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 02:15:21,506.506 INFO    ] Checking for system updates...
[2026-06-27 02:15:21,527.527 INFO    ] 200
[2026-06-27 02:15:21,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:15:21,561.561 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:15:21,562.562 INFO    ] No update needed
[2026-06-27 02:15:21,563.563 INFO    ] Checking for camera pi updates...
[2026-06-27 02:15:21,585.585 INFO    ] 200
[2026-06-27 02:15:21,586.586 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:15:21,609.609 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:15:21,751.751 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:15:21,752.752 INFO    ] No camera update needed
[2026-06-27 02:15:21,754.754 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:15:21,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:15:21,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:15:21,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:15:23,799.799 INFO    ] ================================================
[2026-06-27 02:15:23,814.814 INFO    ] Launching Daemon at Sat Jun 27 02:15:23 IST 2026
[2026-06-27 02:15:23,824.824 INFO    ] ================================================
[2026-06-27 02:15:24,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:15:24
[2026-06-27 02:15:24,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:15:24,598.598 INFO    ] Initializing speech engine...
[2026-06-27 02:15:24,602.602 INFO    ] 2026-06-27 02:15:24
[2026-06-27 02:15:24,819.819 INFO    ] 2026-06-27 02:15:24
[2026-06-27 02:15:24,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:15:25,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:15:25,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:15:25,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:15:25,228.228 INFO    ] time= 27/06/2026 02:15:25
[2026-06-27 02:15:25,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:15:25,266.266 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:15:25,332.332 INFO    ] No existing commands found in stream
[2026-06-27 02:15:30,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:15:30,344.344 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-27 02:15:31,268.268 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 02:15:31,269.269 INFO    ] Checking for system updates...
[2026-06-27 02:15:31,291.291 INFO    ] 200
[2026-06-27 02:15:31,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:15:31,322.322 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:15:31,324.324 INFO    ] No update needed
[2026-06-27 02:15:31,325.325 INFO    ] Checking for camera pi updates...
[2026-06-27 02:15:31,345.345 INFO    ] 200
[2026-06-27 02:15:31,346.346 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:15:31,369.369 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:15:31,409.409 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:15:31,411.411 INFO    ] No camera update needed
[2026-06-27 02:15:31,412.412 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:15:31,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:15:31,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:15:31,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:15:33,453.453 INFO    ] ================================================
[2026-06-27 02:15:33,468.468 INFO    ] Launching Daemon at Sat Jun 27 02:15:33 IST 2026
[2026-06-27 02:15:33,480.480 INFO    ] ================================================
[2026-06-27 02:15:33,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:15:33
[2026-06-27 02:15:34,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:15:34,275.275 INFO    ] Initializing speech engine...
[2026-06-27 02:15:34,281.281 INFO    ] 2026-06-27 02:15:34
[2026-06-27 02:15:34,488.488 INFO    ] 2026-06-27 02:15:34
[2026-06-27 02:15:34,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:15:34,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:15:34,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:15:34,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:15:34,907.907 INFO    ] time= 27/06/2026 02:15:34
[2026-06-27 02:15:34,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:15:34,936.936 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:15:35,001.001 INFO    ] No existing commands found in stream
[2026-06-27 02:15:40,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:15:40,016.016 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-27 02:15:41,741.741 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 02:15:41,743.743 INFO    ] Checking for system updates...
[2026-06-27 02:15:41,766.766 INFO    ] 200
[2026-06-27 02:15:41,767.767 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:15:41,800.800 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:15:41,802.802 INFO    ] No update needed
[2026-06-27 02:15:41,803.803 INFO    ] Checking for camera pi updates...
[2026-06-27 02:15:41,823.823 INFO    ] 200
[2026-06-27 02:15:41,825.825 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:15:41,850.850 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:15:41,899.899 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:15:41,901.901 INFO    ] No camera update needed
[2026-06-27 02:15:41,902.902 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:15:41,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:15:41,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:15:41,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:15:43,948.948 INFO    ] ================================================
[2026-06-27 02:15:43,964.964 INFO    ] Launching Daemon at Sat Jun 27 02:15:43 IST 2026
[2026-06-27 02:15:43,976.976 INFO    ] ================================================
[2026-06-27 02:15:44,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:15:44
[2026-06-27 02:15:44,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:15:44,771.771 INFO    ] Initializing speech engine...
[2026-06-27 02:15:44,775.775 INFO    ] 2026-06-27 02:15:44
[2026-06-27 02:15:44,981.981 INFO    ] 2026-06-27 02:15:44
[2026-06-27 02:15:45,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:15:45,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:15:45,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:15:45,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:15:45,405.405 INFO    ] time= 27/06/2026 02:15:45
[2026-06-27 02:15:45,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:15:45,435.435 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:15:45,527.527 INFO    ] No existing commands found in stream
[2026-06-27 02:15:50,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:15:50,539.539 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-27 02:15:51,443.443 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 02:15:51,444.444 INFO    ] Checking for system updates...
[2026-06-27 02:15:51,466.466 INFO    ] 200
[2026-06-27 02:15:51,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:15:51,498.498 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:15:51,499.499 INFO    ] No update needed
[2026-06-27 02:15:51,500.500 INFO    ] Checking for camera pi updates...
[2026-06-27 02:15:51,521.521 INFO    ] 200
[2026-06-27 02:15:51,522.522 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:15:51,546.546 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:15:51,598.598 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:15:51,599.599 INFO    ] No camera update needed
[2026-06-27 02:15:51,601.601 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:15:51,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:15:51,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:15:51,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:15:53,648.648 INFO    ] ================================================
[2026-06-27 02:15:53,663.663 INFO    ] Launching Daemon at Sat Jun 27 02:15:53 IST 2026
[2026-06-27 02:15:53,675.675 INFO    ] ================================================
[2026-06-27 02:15:54,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:15:54
[2026-06-27 02:15:54,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:15:54,463.463 INFO    ] Initializing speech engine...
[2026-06-27 02:15:54,468.468 INFO    ] 2026-06-27 02:15:54
[2026-06-27 02:15:54,674.674 INFO    ] 2026-06-27 02:15:54
[2026-06-27 02:15:54,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:15:54,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:15:54,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:15:55,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:15:55,092.092 INFO    ] time= 27/06/2026 02:15:55
[2026-06-27 02:15:55,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:15:55,122.122 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:15:55,194.194 INFO    ] No existing commands found in stream
[2026-06-27 02:16:00,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:16:00,206.206 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-27 02:16:02,754.754 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 02:16:02,755.755 INFO    ] Checking for system updates...
[2026-06-27 02:16:02,776.776 INFO    ] 200
[2026-06-27 02:16:02,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:16:02,810.810 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:16:02,811.811 INFO    ] No update needed
[2026-06-27 02:16:02,812.812 INFO    ] Checking for camera pi updates...
[2026-06-27 02:16:02,834.834 INFO    ] 200
[2026-06-27 02:16:02,836.836 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:16:02,881.881 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:16:02,916.916 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:16:02,919.919 INFO    ] No camera update needed
[2026-06-27 02:16:02,921.921 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:16:02,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:16:02,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:16:02,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:16:04,973.973 INFO    ] ================================================
[2026-06-27 02:16:04,990.990 INFO    ] Launching Daemon at Sat Jun 27 02:16:04 IST 2026
[2026-06-27 02:16:05,001.001 INFO    ] ================================================
[2026-06-27 02:16:05,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:16:05
[2026-06-27 02:16:05,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:16:05,879.879 INFO    ] Initializing speech engine...
[2026-06-27 02:16:05,885.885 INFO    ] 2026-06-27 02:16:05
[2026-06-27 02:16:06,095.095 INFO    ] 2026-06-27 02:16:06
[2026-06-27 02:16:06,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:16:06,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:16:06,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:16:06,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:16:06,515.515 INFO    ] time= 27/06/2026 02:16:06
[2026-06-27 02:16:06,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:16:06,545.545 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:16:06,637.637 INFO    ] No existing commands found in stream
[2026-06-27 02:16:11,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:16:11,649.649 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-27 02:16:12,916.916 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 02:16:12,918.918 INFO    ] Checking for system updates...
[2026-06-27 02:16:12,940.940 INFO    ] 200
[2026-06-27 02:16:12,942.942 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:16:12,974.974 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:16:12,975.975 INFO    ] No update needed
[2026-06-27 02:16:12,977.977 INFO    ] Checking for camera pi updates...
[2026-06-27 02:16:12,998.998 INFO    ] 200
[2026-06-27 02:16:12,999.999 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:16:13,023.023 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:16:13,076.076 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:16:13,078.078 INFO    ] No camera update needed
[2026-06-27 02:16:13,079.079 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:16:13,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:16:13,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:16:13,087.087 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:16:15,128.128 INFO    ] ================================================
[2026-06-27 02:16:15,145.145 INFO    ] Launching Daemon at Sat Jun 27 02:16:15 IST 2026
[2026-06-27 02:16:15,156.156 INFO    ] ================================================
[2026-06-27 02:16:15,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:16:15
[2026-06-27 02:16:15,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:16:16,018.018 INFO    ] Initializing speech engine...
[2026-06-27 02:16:16,031.031 INFO    ] 2026-06-27 02:16:16
[2026-06-27 02:16:16,245.245 INFO    ] 2026-06-27 02:16:16
[2026-06-27 02:16:16,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:16:16,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:16:16,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:16:16,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:16:16,656.656 INFO    ] time= 27/06/2026 02:16:16
[2026-06-27 02:16:16,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:16:16,702.702 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:16:16,772.772 INFO    ] No existing commands found in stream
[2026-06-27 02:16:21,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:16:21,787.787 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-27 02:16:22,562.562 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 02:16:22,563.563 INFO    ] Checking for system updates...
[2026-06-27 02:16:22,585.585 INFO    ] 200
[2026-06-27 02:16:22,586.586 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:16:22,617.617 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:16:22,618.618 INFO    ] No update needed
[2026-06-27 02:16:22,620.620 INFO    ] Checking for camera pi updates...
[2026-06-27 02:16:22,641.641 INFO    ] 200
[2026-06-27 02:16:22,642.642 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:16:22,668.668 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:16:22,710.710 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:16:22,712.712 INFO    ] No camera update needed
[2026-06-27 02:16:22,713.713 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:16:22,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:16:22,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:16:22,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:16:24,760.760 INFO    ] ================================================
[2026-06-27 02:16:24,776.776 INFO    ] Launching Daemon at Sat Jun 27 02:16:24 IST 2026
[2026-06-27 02:16:24,787.787 INFO    ] ================================================
[2026-06-27 02:16:25,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:16:25
[2026-06-27 02:16:25,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:16:25,586.586 INFO    ] Initializing speech engine...
[2026-06-27 02:16:25,590.590 INFO    ] 2026-06-27 02:16:25
[2026-06-27 02:16:25,806.806 INFO    ] 2026-06-27 02:16:25
[2026-06-27 02:16:25,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:16:25,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:16:26,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:16:26,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:16:26,164.164 INFO    ] time= 27/06/2026 02:16:26
[2026-06-27 02:16:26,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:16:26,167.167 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:16:26,229.229 INFO    ] No existing commands found in stream
[2026-06-27 02:16:31,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:16:31,241.241 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-27 02:16:34,858.858 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 02:16:34,860.860 INFO    ] Checking for system updates...
[2026-06-27 02:16:34,882.882 INFO    ] 200
[2026-06-27 02:16:34,883.883 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:16:34,913.913 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:16:34,915.915 INFO    ] No update needed
[2026-06-27 02:16:34,916.916 INFO    ] Checking for camera pi updates...
[2026-06-27 02:16:34,936.936 INFO    ] 200
[2026-06-27 02:16:34,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:16:34,963.963 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:16:35,008.008 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:16:35,010.010 INFO    ] No camera update needed
[2026-06-27 02:16:35,011.011 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:16:35,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:16:35,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:16:35,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:16:37,057.057 INFO    ] ================================================
[2026-06-27 02:16:37,073.073 INFO    ] Launching Daemon at Sat Jun 27 02:16:37 IST 2026
[2026-06-27 02:16:37,084.084 INFO    ] ================================================
[2026-06-27 02:16:37,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:16:37
[2026-06-27 02:16:37,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:16:37,974.974 INFO    ] Initializing speech engine...
[2026-06-27 02:16:37,980.980 INFO    ] 2026-06-27 02:16:37
[2026-06-27 02:16:38,189.189 INFO    ] 2026-06-27 02:16:38
[2026-06-27 02:16:38,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:16:38,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:16:38,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:16:38,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:16:38,610.610 INFO    ] time= 27/06/2026 02:16:38
[2026-06-27 02:16:38,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:16:38,639.639 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:16:38,706.706 INFO    ] No existing commands found in stream
[2026-06-27 02:16:43,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:16:43,724.724 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-27 02:16:45,395.395 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 02:16:45,397.397 INFO    ] Checking for system updates...
[2026-06-27 02:16:45,418.418 INFO    ] 200
[2026-06-27 02:16:45,419.419 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:16:45,451.451 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:16:45,452.452 INFO    ] No update needed
[2026-06-27 02:16:45,454.454 INFO    ] Checking for camera pi updates...
[2026-06-27 02:16:45,474.474 INFO    ] 200
[2026-06-27 02:16:45,476.476 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:16:45,499.499 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:16:45,545.545 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:16:45,547.547 INFO    ] No camera update needed
[2026-06-27 02:16:45,548.548 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:16:45,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:16:45,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:16:45,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:16:47,595.595 INFO    ] ================================================
[2026-06-27 02:16:47,611.611 INFO    ] Launching Daemon at Sat Jun 27 02:16:47 IST 2026
[2026-06-27 02:16:47,622.622 INFO    ] ================================================
[2026-06-27 02:16:47,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:16:47
[2026-06-27 02:16:48,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:16:48,418.418 INFO    ] Initializing speech engine...
[2026-06-27 02:16:48,426.426 INFO    ] 2026-06-27 02:16:48
[2026-06-27 02:16:48,638.638 INFO    ] 2026-06-27 02:16:48
[2026-06-27 02:16:48,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:16:48,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:16:48,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:16:48,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:16:49,059.059 INFO    ] time= 27/06/2026 02:16:48
[2026-06-27 02:16:49,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:16:49,089.089 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:16:49,156.156 INFO    ] No existing commands found in stream
[2026-06-27 02:16:54,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:16:54,168.168 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-27 02:16:54,744.744 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 02:16:54,745.745 INFO    ] Checking for system updates...
[2026-06-27 02:16:54,768.768 INFO    ] 200
[2026-06-27 02:16:54,769.769 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:16:54,804.804 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:16:54,805.805 INFO    ] No update needed
[2026-06-27 02:16:54,806.806 INFO    ] Checking for camera pi updates...
[2026-06-27 02:16:54,827.827 INFO    ] 200
[2026-06-27 02:16:54,828.828 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:16:54,854.854 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:16:54,879.879 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:16:54,881.881 INFO    ] No camera update needed
[2026-06-27 02:16:54,882.882 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:16:54,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:16:54,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:16:54,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:16:56,929.929 INFO    ] ================================================
[2026-06-27 02:16:56,944.944 INFO    ] Launching Daemon at Sat Jun 27 02:16:56 IST 2026
[2026-06-27 02:16:56,956.956 INFO    ] ================================================
[2026-06-27 02:16:57,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:16:57
[2026-06-27 02:16:57,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:16:57,803.803 INFO    ] Initializing speech engine...
[2026-06-27 02:16:57,808.808 INFO    ] 2026-06-27 02:16:57
[2026-06-27 02:16:58,016.016 INFO    ] 2026-06-27 02:16:58
[2026-06-27 02:16:58,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:16:58,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:16:58,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:16:58,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:16:58,439.439 INFO    ] time= 27/06/2026 02:16:58
[2026-06-27 02:16:58,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:16:58,467.467 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:16:58,533.533 INFO    ] No existing commands found in stream
[2026-06-27 02:17:03,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:17:03,551.551 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-27 02:17:04,720.720 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:17:04,722.722 INFO    ] Checking for system updates...
[2026-06-27 02:17:04,743.743 INFO    ] 200
[2026-06-27 02:17:04,745.745 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:17:04,776.776 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:17:04,777.777 INFO    ] No update needed
[2026-06-27 02:17:04,778.778 INFO    ] Checking for camera pi updates...
[2026-06-27 02:17:04,798.798 INFO    ] 200
[2026-06-27 02:17:04,800.800 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:17:04,824.824 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:17:04,872.872 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:17:04,874.874 INFO    ] No camera update needed
[2026-06-27 02:17:04,876.876 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:17:04,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:17:04,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:17:04,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:17:06,924.924 INFO    ] ================================================
[2026-06-27 02:17:06,940.940 INFO    ] Launching Daemon at Sat Jun 27 02:17:06 IST 2026
[2026-06-27 02:17:06,951.951 INFO    ] ================================================
[2026-06-27 02:17:07,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:17:07
[2026-06-27 02:17:07,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:17:07,745.745 INFO    ] Initializing speech engine...
[2026-06-27 02:17:07,757.757 INFO    ] 2026-06-27 02:17:07
[2026-06-27 02:17:07,966.966 INFO    ] 2026-06-27 02:17:07
[2026-06-27 02:17:07,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:17:08,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:17:08,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:17:08,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:17:08,369.369 INFO    ] time= 27/06/2026 02:17:08
[2026-06-27 02:17:08,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:17:08,414.414 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:17:08,486.486 INFO    ] No existing commands found in stream
[2026-06-27 02:17:13,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:17:13,498.498 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-27 02:17:14,006.006 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 02:17:14,007.007 INFO    ] Checking for system updates...
[2026-06-27 02:17:14,028.028 INFO    ] 200
[2026-06-27 02:17:14,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:17:14,061.061 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:17:14,062.062 INFO    ] No update needed
[2026-06-27 02:17:14,064.064 INFO    ] Checking for camera pi updates...
[2026-06-27 02:17:14,084.084 INFO    ] 200
[2026-06-27 02:17:14,086.086 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:17:14,110.110 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:17:14,153.153 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:17:14,155.155 INFO    ] No camera update needed
[2026-06-27 02:17:14,156.156 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:17:14,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:17:14,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:17:14,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:17:16,203.203 INFO    ] ================================================
[2026-06-27 02:17:16,219.219 INFO    ] Launching Daemon at Sat Jun 27 02:17:16 IST 2026
[2026-06-27 02:17:16,231.231 INFO    ] ================================================
[2026-06-27 02:17:16,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:17:16
[2026-06-27 02:17:16,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:17:17,042.042 INFO    ] Initializing speech engine...
[2026-06-27 02:17:17,047.047 INFO    ] 2026-06-27 02:17:17
[2026-06-27 02:17:17,266.266 INFO    ] 2026-06-27 02:17:17
[2026-06-27 02:17:17,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:17:17,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:17:17,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:17:17,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:17:17,687.687 INFO    ] time= 27/06/2026 02:17:17
[2026-06-27 02:17:17,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:17:17,721.721 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:17:17,789.789 INFO    ] No existing commands found in stream
[2026-06-27 02:17:22,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:17:22,798.798 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-27 02:17:23,197.197 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 02:17:23,199.199 INFO    ] Checking for system updates...
[2026-06-27 02:17:23,220.220 INFO    ] 200
[2026-06-27 02:17:23,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:17:23,253.253 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:17:23,255.255 INFO    ] No update needed
[2026-06-27 02:17:23,256.256 INFO    ] Checking for camera pi updates...
[2026-06-27 02:17:23,276.276 INFO    ] 200
[2026-06-27 02:17:23,277.277 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:17:23,301.301 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:17:23,440.440 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:17:23,441.441 INFO    ] No camera update needed
[2026-06-27 02:17:23,443.443 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:17:23,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:17:23,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:17:23,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:17:25,492.492 INFO    ] ================================================
[2026-06-27 02:17:25,507.507 INFO    ] Launching Daemon at Sat Jun 27 02:17:25 IST 2026
[2026-06-27 02:17:25,518.518 INFO    ] ================================================
[2026-06-27 02:17:25,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:17:25
[2026-06-27 02:17:26,206.206 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:17:26,343.343 INFO    ] Initializing speech engine...
[2026-06-27 02:17:26,351.351 INFO    ] 2026-06-27 02:17:26
[2026-06-27 02:17:26,569.569 INFO    ] 2026-06-27 02:17:26
[2026-06-27 02:17:26,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:17:26,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:17:26,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:17:26,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:17:26,991.991 INFO    ] time= 27/06/2026 02:17:26
[2026-06-27 02:17:27,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:17:27,021.021 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:17:27,088.088 INFO    ] No existing commands found in stream
[2026-06-27 02:17:32,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:17:32,103.103 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-27 02:17:35,555.555 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 02:17:35,557.557 INFO    ] Checking for system updates...
[2026-06-27 02:17:35,577.577 INFO    ] 200
[2026-06-27 02:17:35,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:17:35,610.610 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:17:35,611.611 INFO    ] No update needed
[2026-06-27 02:17:35,612.612 INFO    ] Checking for camera pi updates...
[2026-06-27 02:17:35,633.633 INFO    ] 200
[2026-06-27 02:17:35,634.634 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:17:35,659.659 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:17:35,710.710 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:17:35,711.711 INFO    ] No camera update needed
[2026-06-27 02:17:35,712.712 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:17:35,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:17:35,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:17:35,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:17:37,764.764 INFO    ] ================================================
[2026-06-27 02:17:37,780.780 INFO    ] Launching Daemon at Sat Jun 27 02:17:37 IST 2026
[2026-06-27 02:17:37,791.791 INFO    ] ================================================
[2026-06-27 02:17:38,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:17:38
[2026-06-27 02:17:38,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:17:38,584.584 INFO    ] Initializing speech engine...
[2026-06-27 02:17:38,589.589 INFO    ] 2026-06-27 02:17:38
[2026-06-27 02:17:38,792.792 INFO    ] 2026-06-27 02:17:38
[2026-06-27 02:17:38,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:17:38,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:17:39,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:17:39,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:17:39,202.202 INFO    ] time= 27/06/2026 02:17:39
[2026-06-27 02:17:39,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:17:39,259.259 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:17:39,385.385 INFO    ] No existing commands found in stream
[2026-06-27 02:17:44,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:17:44,398.398 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-27 02:17:46,879.879 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 02:17:46,881.881 INFO    ] Checking for system updates...
[2026-06-27 02:17:46,902.902 INFO    ] 200
[2026-06-27 02:17:46,904.904 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:17:46,937.937 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:17:46,938.938 INFO    ] No update needed
[2026-06-27 02:17:46,940.940 INFO    ] Checking for camera pi updates...
[2026-06-27 02:17:46,959.959 INFO    ] 200
[2026-06-27 02:17:46,960.960 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:17:46,984.984 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:17:47,029.029 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:17:47,031.031 INFO    ] No camera update needed
[2026-06-27 02:17:47,033.033 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:17:47,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:17:47,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:17:47,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:17:49,083.083 INFO    ] ================================================
[2026-06-27 02:17:49,098.098 INFO    ] Launching Daemon at Sat Jun 27 02:17:49 IST 2026
[2026-06-27 02:17:49,109.109 INFO    ] ================================================
[2026-06-27 02:17:49,441.441 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:17:49
[2026-06-27 02:17:49,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:17:49,899.899 INFO    ] Initializing speech engine...
[2026-06-27 02:17:49,904.904 INFO    ] 2026-06-27 02:17:49
[2026-06-27 02:17:50,110.110 INFO    ] 2026-06-27 02:17:50
[2026-06-27 02:17:50,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:17:50,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:17:50,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:17:50,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:17:50,531.531 INFO    ] time= 27/06/2026 02:17:50
[2026-06-27 02:17:50,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:17:50,561.561 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:17:50,631.631 INFO    ] No existing commands found in stream
[2026-06-27 02:17:55,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:17:55,645.645 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-27 02:17:56,759.759 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 02:17:56,761.761 INFO    ] Checking for system updates...
[2026-06-27 02:17:56,782.782 INFO    ] 200
[2026-06-27 02:17:56,783.783 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:17:56,813.813 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:17:56,815.815 INFO    ] No update needed
[2026-06-27 02:17:56,816.816 INFO    ] Checking for camera pi updates...
[2026-06-27 02:17:56,836.836 INFO    ] 200
[2026-06-27 02:17:56,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:17:56,860.860 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:17:56,910.910 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:17:56,911.911 INFO    ] No camera update needed
[2026-06-27 02:17:56,912.912 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:17:56,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:17:56,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:17:56,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:17:58,960.960 INFO    ] ================================================
[2026-06-27 02:17:58,975.975 INFO    ] Launching Daemon at Sat Jun 27 02:17:58 IST 2026
[2026-06-27 02:17:58,986.986 INFO    ] ================================================
[2026-06-27 02:17:59,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:17:59
[2026-06-27 02:17:59,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:17:59,772.772 INFO    ] Initializing speech engine...
[2026-06-27 02:17:59,779.779 INFO    ] 2026-06-27 02:17:59
[2026-06-27 02:17:59,978.978 INFO    ] 2026-06-27 02:17:59
[2026-06-27 02:18:00,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:18:00,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:18:00,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:18:00,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:18:00,398.398 INFO    ] time= 27/06/2026 02:18:00
[2026-06-27 02:18:00,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:18:00,427.427 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:18:00,494.494 INFO    ] No existing commands found in stream
[2026-06-27 02:18:05,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:18:05,511.511 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-27 02:18:07,218.218 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:18:07,220.220 INFO    ] Checking for system updates...
[2026-06-27 02:18:07,241.241 INFO    ] 200
[2026-06-27 02:18:07,242.242 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:18:07,275.275 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:18:07,277.277 INFO    ] No update needed
[2026-06-27 02:18:07,279.279 INFO    ] Checking for camera pi updates...
[2026-06-27 02:18:07,298.298 INFO    ] 200
[2026-06-27 02:18:07,299.299 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:18:07,326.326 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:18:07,371.371 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:18:07,373.373 INFO    ] No camera update needed
[2026-06-27 02:18:07,374.374 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:18:07,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:18:07,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:18:07,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:18:09,420.420 INFO    ] ================================================
[2026-06-27 02:18:09,440.440 INFO    ] Launching Daemon at Sat Jun 27 02:18:09 IST 2026
[2026-06-27 02:18:09,452.452 INFO    ] ================================================
[2026-06-27 02:18:09,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:18:09
[2026-06-27 02:18:10,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:18:10,269.269 INFO    ] Initializing speech engine...
[2026-06-27 02:18:10,277.277 INFO    ] 2026-06-27 02:18:10
[2026-06-27 02:18:10,498.498 INFO    ] 2026-06-27 02:18:10
[2026-06-27 02:18:10,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:18:10,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:18:10,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:18:10,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:18:10,914.914 INFO    ] time= 27/06/2026 02:18:10
[2026-06-27 02:18:10,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:18:10,944.944 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:18:11,011.011 INFO    ] No existing commands found in stream
[2026-06-27 02:18:16,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:18:16,020.020 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-27 02:18:20,097.097 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:18:20,099.099 INFO    ] Checking for system updates...
[2026-06-27 02:18:20,136.136 INFO    ] 200
[2026-06-27 02:18:20,138.138 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:18:20,192.192 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:18:20,195.195 INFO    ] No update needed
[2026-06-27 02:18:20,198.198 INFO    ] Checking for camera pi updates...
[2026-06-27 02:18:20,221.221 INFO    ] 200
[2026-06-27 02:18:20,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:18:20,246.246 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:18:20,288.288 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:18:20,289.289 INFO    ] No camera update needed
[2026-06-27 02:18:20,291.291 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:18:20,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:18:20,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:18:20,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:18:22,335.335 INFO    ] ================================================
[2026-06-27 02:18:22,350.350 INFO    ] Launching Daemon at Sat Jun 27 02:18:22 IST 2026
[2026-06-27 02:18:22,361.361 INFO    ] ================================================
[2026-06-27 02:18:22,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:18:22
[2026-06-27 02:18:23,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:18:23,177.177 INFO    ] Initializing speech engine...
[2026-06-27 02:18:23,185.185 INFO    ] 2026-06-27 02:18:23
[2026-06-27 02:18:23,398.398 INFO    ] 2026-06-27 02:18:23
[2026-06-27 02:18:23,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:18:23,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:18:23,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:18:23,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:18:23,813.813 INFO    ] time= 27/06/2026 02:18:23
[2026-06-27 02:18:23,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:18:23,846.846 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:18:23,912.912 INFO    ] No existing commands found in stream
[2026-06-27 02:18:28,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:18:28,924.924 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-27 02:18:32,750.750 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:18:32,751.751 INFO    ] Checking for system updates...
[2026-06-27 02:18:32,772.772 INFO    ] 200
[2026-06-27 02:18:32,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:18:32,808.808 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:18:32,809.809 INFO    ] No update needed
[2026-06-27 02:18:32,811.811 INFO    ] Checking for camera pi updates...
[2026-06-27 02:18:32,830.830 INFO    ] 200
[2026-06-27 02:18:32,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:18:32,857.857 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:18:32,884.884 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:18:32,885.885 INFO    ] No camera update needed
[2026-06-27 02:18:32,886.886 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:18:32,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:18:32,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:18:32,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:18:34,932.932 INFO    ] ================================================
[2026-06-27 02:18:34,947.947 INFO    ] Launching Daemon at Sat Jun 27 02:18:34 IST 2026
[2026-06-27 02:18:34,958.958 INFO    ] ================================================
[2026-06-27 02:18:35,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:18:35
[2026-06-27 02:18:35,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:18:35,778.778 INFO    ] Initializing speech engine...
[2026-06-27 02:18:35,783.783 INFO    ] 2026-06-27 02:18:35
[2026-06-27 02:18:35,990.990 INFO    ] 2026-06-27 02:18:35
[2026-06-27 02:18:36,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:18:36,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:18:36,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:18:36,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:18:36,404.404 INFO    ] time= 27/06/2026 02:18:36
[2026-06-27 02:18:36,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:18:36,437.437 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:18:36,504.504 INFO    ] No existing commands found in stream
[2026-06-27 02:18:41,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:18:41,522.522 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-27 02:18:45,437.437 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 02:18:45,438.438 INFO    ] Checking for system updates...
[2026-06-27 02:18:45,459.459 INFO    ] 200
[2026-06-27 02:18:45,461.461 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:18:45,491.491 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:18:45,492.492 INFO    ] No update needed
[2026-06-27 02:18:45,494.494 INFO    ] Checking for camera pi updates...
[2026-06-27 02:18:45,516.516 INFO    ] 200
[2026-06-27 02:18:45,517.517 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:18:45,542.542 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:18:45,588.588 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:18:45,589.589 INFO    ] No camera update needed
[2026-06-27 02:18:45,590.590 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:18:45,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:18:45,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:18:45,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:18:47,636.636 INFO    ] ================================================
[2026-06-27 02:18:47,651.651 INFO    ] Launching Daemon at Sat Jun 27 02:18:47 IST 2026
[2026-06-27 02:18:47,662.662 INFO    ] ================================================
[2026-06-27 02:18:48,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:18:48
[2026-06-27 02:18:48,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:18:48,500.500 INFO    ] Initializing speech engine...
[2026-06-27 02:18:48,505.505 INFO    ] 2026-06-27 02:18:48
[2026-06-27 02:18:48,713.713 INFO    ] 2026-06-27 02:18:48
[2026-06-27 02:18:48,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:18:48,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:18:48,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:18:49,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:18:49,144.144 INFO    ] time= 27/06/2026 02:18:49
[2026-06-27 02:18:49,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:18:49,160.160 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:18:49,225.225 INFO    ] No existing commands found in stream
[2026-06-27 02:18:54,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:18:54,239.239 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-27 02:18:56,398.398 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:18:56,399.399 INFO    ] Checking for system updates...
[2026-06-27 02:18:56,420.420 INFO    ] 200
[2026-06-27 02:18:56,421.421 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:18:56,453.453 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:18:56,455.455 INFO    ] No update needed
[2026-06-27 02:18:56,456.456 INFO    ] Checking for camera pi updates...
[2026-06-27 02:18:56,476.476 INFO    ] 200
[2026-06-27 02:18:56,477.477 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:18:56,501.501 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:18:56,545.545 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:18:56,546.546 INFO    ] No camera update needed
[2026-06-27 02:18:56,547.547 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:18:56,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:18:56,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:18:56,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:18:58,592.592 INFO    ] ================================================
[2026-06-27 02:18:58,607.607 INFO    ] Launching Daemon at Sat Jun 27 02:18:58 IST 2026
[2026-06-27 02:18:58,618.618 INFO    ] ================================================
[2026-06-27 02:18:58,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:18:58
[2026-06-27 02:18:59,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:18:59,454.454 INFO    ] Initializing speech engine...
[2026-06-27 02:18:59,459.459 INFO    ] 2026-06-27 02:18:59
[2026-06-27 02:18:59,665.665 INFO    ] 2026-06-27 02:18:59
[2026-06-27 02:18:59,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:18:59,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:18:59,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:19:00,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:19:00,072.072 INFO    ] time= 27/06/2026 02:19:00
[2026-06-27 02:19:00,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:19:00,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:19:00,185.185 INFO    ] No existing commands found in stream
[2026-06-27 02:19:05,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:19:05,197.197 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-27 02:19:06,277.277 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 02:19:06,278.278 INFO    ] Checking for system updates...
[2026-06-27 02:19:06,299.299 INFO    ] 200
[2026-06-27 02:19:06,301.301 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:19:06,333.333 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:19:06,334.334 INFO    ] No update needed
[2026-06-27 02:19:06,336.336 INFO    ] Checking for camera pi updates...
[2026-06-27 02:19:06,359.359 INFO    ] 200
[2026-06-27 02:19:06,360.360 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:19:06,387.387 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:19:06,429.429 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:19:06,431.431 INFO    ] No camera update needed
[2026-06-27 02:19:06,432.432 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:19:06,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:19:06,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:19:06,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:19:08,478.478 INFO    ] ================================================
[2026-06-27 02:19:08,494.494 INFO    ] Launching Daemon at Sat Jun 27 02:19:08 IST 2026
[2026-06-27 02:19:08,504.504 INFO    ] ================================================
[2026-06-27 02:19:08,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:19:08
[2026-06-27 02:19:09,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:19:09,317.317 INFO    ] Initializing speech engine...
[2026-06-27 02:19:09,322.322 INFO    ] 2026-06-27 02:19:09
[2026-06-27 02:19:09,529.529 INFO    ] 2026-06-27 02:19:09
[2026-06-27 02:19:09,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:19:09,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:19:09,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:19:09,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:19:09,955.955 INFO    ] time= 27/06/2026 02:19:09
[2026-06-27 02:19:09,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:19:09,986.986 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:19:10,054.054 INFO    ] No existing commands found in stream
[2026-06-27 02:19:15,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:19:15,081.081 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-27 02:19:18,566.566 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 02:19:18,567.567 INFO    ] Checking for system updates...
[2026-06-27 02:19:18,588.588 INFO    ] 200
[2026-06-27 02:19:18,589.589 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:19:18,620.620 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:19:18,621.621 INFO    ] No update needed
[2026-06-27 02:19:18,622.622 INFO    ] Checking for camera pi updates...
[2026-06-27 02:19:18,642.642 INFO    ] 200
[2026-06-27 02:19:18,643.643 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:19:18,668.668 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:19:18,710.710 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:19:18,711.711 INFO    ] No camera update needed
[2026-06-27 02:19:18,712.712 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:19:18,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:19:18,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:19:18,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:19:20,759.759 INFO    ] ================================================
[2026-06-27 02:19:20,774.774 INFO    ] Launching Daemon at Sat Jun 27 02:19:20 IST 2026
[2026-06-27 02:19:20,784.784 INFO    ] ================================================
[2026-06-27 02:19:21,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:19:21
[2026-06-27 02:19:21,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:19:21,592.592 INFO    ] Initializing speech engine...
[2026-06-27 02:19:21,604.604 INFO    ] 2026-06-27 02:19:21
[2026-06-27 02:19:21,812.812 INFO    ] 2026-06-27 02:19:21
[2026-06-27 02:19:21,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:19:22,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:19:22,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:19:22,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:19:22,322.322 INFO    ] time= 27/06/2026 02:19:22
[2026-06-27 02:19:22,348.348 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:19:22,349.349 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:19:22,444.444 INFO    ] No existing commands found in stream
[2026-06-27 02:19:27,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:19:27,457.457 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-27 02:19:27,897.897 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 02:19:27,898.898 INFO    ] Checking for system updates...
[2026-06-27 02:19:27,919.919 INFO    ] 200
[2026-06-27 02:19:27,921.921 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:19:27,952.952 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:19:27,954.954 INFO    ] No update needed
[2026-06-27 02:19:27,955.955 INFO    ] Checking for camera pi updates...
[2026-06-27 02:19:27,976.976 INFO    ] 200
[2026-06-27 02:19:27,977.977 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:19:28,000.000 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:19:28,141.141 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:19:28,142.142 INFO    ] No camera update needed
[2026-06-27 02:19:28,143.143 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:19:28,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:19:28,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:19:28,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:19:30,189.189 INFO    ] ================================================
[2026-06-27 02:19:30,204.204 INFO    ] Launching Daemon at Sat Jun 27 02:19:30 IST 2026
[2026-06-27 02:19:30,215.215 INFO    ] ================================================
[2026-06-27 02:19:30,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:19:30
[2026-06-27 02:19:30,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:19:30,989.989 INFO    ] Initializing speech engine...
[2026-06-27 02:19:31,000.000 INFO    ] 2026-06-27 02:19:30
[2026-06-27 02:19:31,205.205 INFO    ] 2026-06-27 02:19:31
[2026-06-27 02:19:31,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:19:32,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:19:32,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:19:32,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:19:32,546.546 INFO    ] time= 27/06/2026 02:19:32
[2026-06-27 02:19:32,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:19:32,556.556 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:19:32,641.641 INFO    ] No existing commands found in stream
[2026-06-27 02:19:37,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:19:37,662.662 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-27 02:19:41,774.774 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 02:19:41,775.775 INFO    ] Checking for system updates...
[2026-06-27 02:19:41,797.797 INFO    ] 200
[2026-06-27 02:19:41,798.798 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:19:41,830.830 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:19:41,831.831 INFO    ] No update needed
[2026-06-27 02:19:41,832.832 INFO    ] Checking for camera pi updates...
[2026-06-27 02:19:41,852.852 INFO    ] 200
[2026-06-27 02:19:41,853.853 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:19:41,878.878 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:19:41,920.920 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:19:41,922.922 INFO    ] No camera update needed
[2026-06-27 02:19:41,923.923 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:19:41,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:19:41,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:19:41,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:19:43,971.971 INFO    ] ================================================
[2026-06-27 02:19:43,986.986 INFO    ] Launching Daemon at Sat Jun 27 02:19:43 IST 2026
[2026-06-27 02:19:44,997.997 INFO    ] ================================================
[2026-06-27 02:19:44,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:19:44
[2026-06-27 02:19:44,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:19:44,791.791 INFO    ] Initializing speech engine...
[2026-06-27 02:19:44,796.796 INFO    ] 2026-06-27 02:19:44
[2026-06-27 02:19:45,022.022 INFO    ] 2026-06-27 02:19:44
[2026-06-27 02:19:45,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:19:45,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:19:45,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:19:45,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:19:45,450.450 INFO    ] time= 27/06/2026 02:19:45
[2026-06-27 02:19:45,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:19:45,484.484 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:19:45,581.581 INFO    ] No existing commands found in stream
[2026-06-27 02:19:50,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:19:50,597.597 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-27 02:19:52,845.845 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 02:19:52,847.847 INFO    ] Checking for system updates...
[2026-06-27 02:19:52,869.869 INFO    ] 200
[2026-06-27 02:19:52,871.871 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:19:52,904.904 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:19:52,906.906 INFO    ] No update needed
[2026-06-27 02:19:52,907.907 INFO    ] Checking for camera pi updates...
[2026-06-27 02:19:52,927.927 INFO    ] 200
[2026-06-27 02:19:52,929.929 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:19:52,956.956 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:19:53,062.062 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:19:53,063.063 INFO    ] No camera update needed
[2026-06-27 02:19:53,065.065 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:19:53,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:19:53,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:19:53,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:19:55,111.111 INFO    ] ================================================
[2026-06-27 02:19:55,126.126 INFO    ] Launching Daemon at Sat Jun 27 02:19:55 IST 2026
[2026-06-27 02:19:55,136.136 INFO    ] ================================================
[2026-06-27 02:19:55,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:19:55
[2026-06-27 02:19:55,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:19:55,922.922 INFO    ] Initializing speech engine...
[2026-06-27 02:19:55,928.928 INFO    ] 2026-06-27 02:19:55
[2026-06-27 02:19:56,133.133 INFO    ] 2026-06-27 02:19:56
[2026-06-27 02:19:56,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:19:56,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:19:56,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:19:56,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:19:56,553.553 INFO    ] time= 27/06/2026 02:19:56
[2026-06-27 02:19:56,577.577 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:19:56,583.583 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:19:56,650.650 INFO    ] No existing commands found in stream
[2026-06-27 02:20:01,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:20:01,657.657 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-27 02:20:07,533.533 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:20:07,534.534 INFO    ] Checking for system updates...
[2026-06-27 02:20:07,555.555 INFO    ] 200
[2026-06-27 02:20:07,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:20:07,588.588 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:20:07,590.590 INFO    ] No update needed
[2026-06-27 02:20:07,591.591 INFO    ] Checking for camera pi updates...
[2026-06-27 02:20:07,610.610 INFO    ] 200
[2026-06-27 02:20:07,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:20:07,638.638 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:20:07,678.678 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:20:07,679.679 INFO    ] No camera update needed
[2026-06-27 02:20:07,680.680 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:20:07,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:20:07,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:20:07,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:20:09,726.726 INFO    ] ================================================
[2026-06-27 02:20:09,741.741 INFO    ] Launching Daemon at Sat Jun 27 02:20:09 IST 2026
[2026-06-27 02:20:09,752.752 INFO    ] ================================================
[2026-06-27 02:20:10,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:20:10
[2026-06-27 02:20:10,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:20:10,592.592 INFO    ] Initializing speech engine...
[2026-06-27 02:20:10,600.600 INFO    ] 2026-06-27 02:20:10
[2026-06-27 02:20:10,816.816 INFO    ] 2026-06-27 02:20:10
[2026-06-27 02:20:10,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:20:11,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:20:11,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:20:11,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:20:11,232.232 INFO    ] time= 27/06/2026 02:20:11
[2026-06-27 02:20:11,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:20:11,266.266 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:20:11,333.333 INFO    ] No existing commands found in stream
[2026-06-27 02:20:16,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:20:16,351.351 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-27 02:20:19,580.580 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 02:20:19,582.582 INFO    ] Checking for system updates...
[2026-06-27 02:20:19,604.604 INFO    ] 200
[2026-06-27 02:20:19,606.606 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:20:19,637.637 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:20:19,638.638 INFO    ] No update needed
[2026-06-27 02:20:19,639.639 INFO    ] Checking for camera pi updates...
[2026-06-27 02:20:19,660.660 INFO    ] 200
[2026-06-27 02:20:19,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:20:19,688.688 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:20:19,732.732 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:20:19,733.733 INFO    ] No camera update needed
[2026-06-27 02:20:19,735.735 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:20:19,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:20:19,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:20:19,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:20:21,782.782 INFO    ] ================================================
[2026-06-27 02:20:21,799.799 INFO    ] Launching Daemon at Sat Jun 27 02:20:21 IST 2026
[2026-06-27 02:20:21,809.809 INFO    ] ================================================
[2026-06-27 02:20:22,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:20:22
[2026-06-27 02:20:22,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:20:22,634.634 INFO    ] Initializing speech engine...
[2026-06-27 02:20:22,639.639 INFO    ] 2026-06-27 02:20:22
[2026-06-27 02:20:22,844.844 INFO    ] 2026-06-27 02:20:22
[2026-06-27 02:20:22,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:20:23,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:20:23,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:20:23,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:20:23,264.264 INFO    ] time= 27/06/2026 02:20:23
[2026-06-27 02:20:23,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:20:23,298.298 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:20:23,367.367 INFO    ] No existing commands found in stream
[2026-06-27 02:20:28,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:20:28,378.378 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-27 02:20:31,135.135 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 02:20:31,137.137 INFO    ] Checking for system updates...
[2026-06-27 02:20:31,157.157 INFO    ] 200
[2026-06-27 02:20:31,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:20:31,188.188 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:20:31,190.190 INFO    ] No update needed
[2026-06-27 02:20:31,191.191 INFO    ] Checking for camera pi updates...
[2026-06-27 02:20:31,213.213 INFO    ] 200
[2026-06-27 02:20:31,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:20:31,238.238 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:20:31,284.284 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:20:31,285.285 INFO    ] No camera update needed
[2026-06-27 02:20:31,287.287 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:20:31,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:20:31,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:20:31,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:20:33,329.329 INFO    ] ================================================
[2026-06-27 02:20:33,344.344 INFO    ] Launching Daemon at Sat Jun 27 02:20:33 IST 2026
[2026-06-27 02:20:33,355.355 INFO    ] ================================================
[2026-06-27 02:20:33,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:20:33
[2026-06-27 02:20:33,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:20:34,133.133 INFO    ] Initializing speech engine...
[2026-06-27 02:20:34,138.138 INFO    ] 2026-06-27 02:20:34
[2026-06-27 02:20:34,344.344 INFO    ] 2026-06-27 02:20:34
[2026-06-27 02:20:34,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:20:34,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:20:34,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:20:34,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:20:34,758.758 INFO    ] time= 27/06/2026 02:20:34
[2026-06-27 02:20:34,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:20:34,793.793 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:20:34,865.865 INFO    ] No existing commands found in stream
[2026-06-27 02:20:39,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:20:39,877.877 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-27 02:20:40,346.346 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 02:20:40,347.347 INFO    ] Checking for system updates...
[2026-06-27 02:20:40,368.368 INFO    ] 200
[2026-06-27 02:20:40,370.370 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:20:40,400.400 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:20:40,401.401 INFO    ] No update needed
[2026-06-27 02:20:40,403.403 INFO    ] Checking for camera pi updates...
[2026-06-27 02:20:40,422.422 INFO    ] 200
[2026-06-27 02:20:40,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:20:40,448.448 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:20:40,489.489 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:20:40,490.490 INFO    ] No camera update needed
[2026-06-27 02:20:40,491.491 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:20:40,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:20:40,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:20:40,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:20:42,536.536 INFO    ] ================================================
[2026-06-27 02:20:42,552.552 INFO    ] Launching Daemon at Sat Jun 27 02:20:42 IST 2026
[2026-06-27 02:20:42,563.563 INFO    ] ================================================
[2026-06-27 02:20:42,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:20:42
[2026-06-27 02:20:43,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:20:43,387.387 INFO    ] Initializing speech engine...
[2026-06-27 02:20:43,391.391 INFO    ] 2026-06-27 02:20:43
[2026-06-27 02:20:43,597.597 INFO    ] 2026-06-27 02:20:43
[2026-06-27 02:20:43,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:20:43,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:20:43,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:20:43,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:20:44,016.016 INFO    ] time= 27/06/2026 02:20:43
[2026-06-27 02:20:44,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:20:44,044.044 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:20:44,110.110 INFO    ] No existing commands found in stream
[2026-06-27 02:20:49,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:20:49,124.124 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-27 02:20:50,186.186 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 02:20:50,188.188 INFO    ] Checking for system updates...
[2026-06-27 02:20:50,209.209 INFO    ] 200
[2026-06-27 02:20:50,210.210 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:20:50,243.243 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:20:50,244.244 INFO    ] No update needed
[2026-06-27 02:20:50,246.246 INFO    ] Checking for camera pi updates...
[2026-06-27 02:20:50,266.266 INFO    ] 200
[2026-06-27 02:20:50,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:20:50,292.292 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:20:50,334.334 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:20:50,336.336 INFO    ] No camera update needed
[2026-06-27 02:20:50,337.337 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:20:50,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:20:50,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:20:50,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:20:52,382.382 INFO    ] ================================================
[2026-06-27 02:20:52,397.397 INFO    ] Launching Daemon at Sat Jun 27 02:20:52 IST 2026
[2026-06-27 02:20:52,408.408 INFO    ] ================================================
[2026-06-27 02:20:52,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:20:52
[2026-06-27 02:20:53,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:20:53,244.244 INFO    ] Initializing speech engine...
[2026-06-27 02:20:53,254.254 INFO    ] 2026-06-27 02:20:53
[2026-06-27 02:20:53,462.462 INFO    ] 2026-06-27 02:20:53
[2026-06-27 02:20:53,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:20:53,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:20:53,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:20:53,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:20:53,894.894 INFO    ] time= 27/06/2026 02:20:53
[2026-06-27 02:20:53,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:20:53,910.910 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:20:53,977.977 INFO    ] No existing commands found in stream
[2026-06-27 02:20:58,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:20:58,987.987 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-27 02:20:59,732.732 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 02:20:59,733.733 INFO    ] Checking for system updates...
[2026-06-27 02:20:59,754.754 INFO    ] 200
[2026-06-27 02:20:59,756.756 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:20:59,787.787 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:20:59,788.788 INFO    ] No update needed
[2026-06-27 02:20:59,790.790 INFO    ] Checking for camera pi updates...
[2026-06-27 02:20:59,813.813 INFO    ] 200
[2026-06-27 02:20:59,814.814 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:20:59,837.837 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:20:59,883.883 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:20:59,884.884 INFO    ] No camera update needed
[2026-06-27 02:20:59,886.886 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:20:59,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:20:59,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:20:59,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:21:01,953.953 INFO    ] ================================================
[2026-06-27 02:21:01,968.968 INFO    ] Launching Daemon at Sat Jun 27 02:21:01 IST 2026
[2026-06-27 02:21:01,980.980 INFO    ] ================================================
[2026-06-27 02:21:02,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:21:02
[2026-06-27 02:21:02,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:21:02,910.910 INFO    ] Initializing speech engine...
[2026-06-27 02:21:02,915.915 INFO    ] 2026-06-27 02:21:02
[2026-06-27 02:21:03,153.153 INFO    ] 2026-06-27 02:21:03
[2026-06-27 02:21:03,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:21:03,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:21:03,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:21:03,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:21:03,525.525 INFO    ] time= 27/06/2026 02:21:03
[2026-06-27 02:21:03,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:21:03,599.599 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:21:03,677.677 INFO    ] No existing commands found in stream
[2026-06-27 02:21:08,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:21:08,689.689 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-27 02:21:10,861.861 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 02:21:10,863.863 INFO    ] Checking for system updates...
[2026-06-27 02:21:10,884.884 INFO    ] 200
[2026-06-27 02:21:10,886.886 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:21:10,918.918 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:21:10,919.919 INFO    ] No update needed
[2026-06-27 02:21:10,921.921 INFO    ] Checking for camera pi updates...
[2026-06-27 02:21:10,940.940 INFO    ] 200
[2026-06-27 02:21:10,942.942 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:21:10,965.965 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:21:11,019.019 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:21:11,020.020 INFO    ] No camera update needed
[2026-06-27 02:21:11,021.021 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:21:11,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:21:11,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:21:11,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:21:13,071.071 INFO    ] ================================================
[2026-06-27 02:21:13,086.086 INFO    ] Launching Daemon at Sat Jun 27 02:21:13 IST 2026
[2026-06-27 02:21:13,097.097 INFO    ] ================================================
[2026-06-27 02:21:13,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:21:13
[2026-06-27 02:21:13,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:21:13,928.928 INFO    ] Initializing speech engine...
[2026-06-27 02:21:13,934.934 INFO    ] 2026-06-27 02:21:13
[2026-06-27 02:21:14,144.144 INFO    ] 2026-06-27 02:21:14
[2026-06-27 02:21:14,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:21:14,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:21:14,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:21:14,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:21:14,574.574 INFO    ] time= 27/06/2026 02:21:14
[2026-06-27 02:21:14,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:21:14,634.634 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:21:14,721.721 INFO    ] No existing commands found in stream
[2026-06-27 02:21:19,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:21:19,734.734 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-27 02:21:21,152.152 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 02:21:21,154.154 INFO    ] Checking for system updates...
[2026-06-27 02:21:21,176.176 INFO    ] 200
[2026-06-27 02:21:21,177.177 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:21:21,211.211 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:21:21,212.212 INFO    ] No update needed
[2026-06-27 02:21:21,214.214 INFO    ] Checking for camera pi updates...
[2026-06-27 02:21:21,237.237 INFO    ] 200
[2026-06-27 02:21:21,239.239 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:21:21,264.264 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:21:21,306.306 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:21:21,308.308 INFO    ] No camera update needed
[2026-06-27 02:21:21,309.309 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:21:21,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:21:21,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:21:21,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:21:23,349.349 INFO    ] ================================================
[2026-06-27 02:21:23,364.364 INFO    ] Launching Daemon at Sat Jun 27 02:21:23 IST 2026
[2026-06-27 02:21:23,374.374 INFO    ] ================================================
[2026-06-27 02:21:23,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:21:23
[2026-06-27 02:21:24,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:21:24,160.160 INFO    ] Initializing speech engine...
[2026-06-27 02:21:24,166.166 INFO    ] 2026-06-27 02:21:24
[2026-06-27 02:21:24,374.374 INFO    ] 2026-06-27 02:21:24
[2026-06-27 02:21:24,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:21:24,526.526 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:21:24,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:21:24,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:21:24,794.794 INFO    ] time= 27/06/2026 02:21:24
[2026-06-27 02:21:24,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:21:24,823.823 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:21:24,890.890 INFO    ] No existing commands found in stream
[2026-06-27 02:21:29,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:21:29,908.908 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-27 02:21:33,598.598 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:21:33,600.600 INFO    ] Checking for system updates...
[2026-06-27 02:21:33,622.622 INFO    ] 200
[2026-06-27 02:21:33,623.623 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:21:33,654.654 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:21:33,655.655 INFO    ] No update needed
[2026-06-27 02:21:33,657.657 INFO    ] Checking for camera pi updates...
[2026-06-27 02:21:33,676.676 INFO    ] 200
[2026-06-27 02:21:33,678.678 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:21:33,705.705 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:21:33,748.748 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:21:33,749.749 INFO    ] No camera update needed
[2026-06-27 02:21:33,750.750 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:21:33,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:21:33,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:21:33,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:21:35,796.796 INFO    ] ================================================
[2026-06-27 02:21:35,811.811 INFO    ] Launching Daemon at Sat Jun 27 02:21:35 IST 2026
[2026-06-27 02:21:35,822.822 INFO    ] ================================================
[2026-06-27 02:21:36,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:21:36
[2026-06-27 02:21:36,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:21:36,625.625 INFO    ] Initializing speech engine...
[2026-06-27 02:21:36,629.629 INFO    ] 2026-06-27 02:21:36
[2026-06-27 02:21:36,836.836 INFO    ] 2026-06-27 02:21:36
[2026-06-27 02:21:36,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:21:37,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:21:37,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:21:37,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:21:37,251.251 INFO    ] time= 27/06/2026 02:21:37
[2026-06-27 02:21:37,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:21:37,291.291 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:21:37,357.357 INFO    ] No existing commands found in stream
[2026-06-27 02:21:42,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:21:42,369.369 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-27 02:21:45,342.342 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 02:21:45,343.343 INFO    ] Checking for system updates...
[2026-06-27 02:21:45,368.368 INFO    ] 200
[2026-06-27 02:21:45,370.370 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:21:45,404.404 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:21:45,406.406 INFO    ] No update needed
[2026-06-27 02:21:45,407.407 INFO    ] Checking for camera pi updates...
[2026-06-27 02:21:45,428.428 INFO    ] 200
[2026-06-27 02:21:45,430.430 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:21:45,456.456 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:21:45,502.502 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:21:45,503.503 INFO    ] No camera update needed
[2026-06-27 02:21:45,505.505 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:21:45,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:21:45,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:21:45,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:21:47,548.548 INFO    ] ================================================
[2026-06-27 02:21:47,564.564 INFO    ] Launching Daemon at Sat Jun 27 02:21:47 IST 2026
[2026-06-27 02:21:47,574.574 INFO    ] ================================================
[2026-06-27 02:21:47,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:21:47
[2026-06-27 02:21:48,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:21:48,425.425 INFO    ] Initializing speech engine...
[2026-06-27 02:21:48,428.428 INFO    ] 2026-06-27 02:21:48
[2026-06-27 02:21:48,638.638 INFO    ] 2026-06-27 02:21:48
[2026-06-27 02:21:48,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:21:48,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:21:48,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:21:49,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:21:49,059.059 INFO    ] time= 27/06/2026 02:21:49
[2026-06-27 02:21:49,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:21:49,089.089 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:21:49,157.157 INFO    ] No existing commands found in stream
[2026-06-27 02:21:54,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:21:54,185.185 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-27 02:21:55,253.253 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 02:21:55,255.255 INFO    ] Checking for system updates...
[2026-06-27 02:21:55,276.276 INFO    ] 200
[2026-06-27 02:21:55,277.277 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:21:55,308.308 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:21:55,310.310 INFO    ] No update needed
[2026-06-27 02:21:55,311.311 INFO    ] Checking for camera pi updates...
[2026-06-27 02:21:55,331.331 INFO    ] 200
[2026-06-27 02:21:55,332.332 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:21:55,357.357 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:21:55,388.388 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:21:55,390.390 INFO    ] No camera update needed
[2026-06-27 02:21:55,391.391 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:21:55,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:21:55,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:21:55,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:21:57,437.437 INFO    ] ================================================
[2026-06-27 02:21:57,453.453 INFO    ] Launching Daemon at Sat Jun 27 02:21:57 IST 2026
[2026-06-27 02:21:57,468.468 INFO    ] ================================================
[2026-06-27 02:21:57,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:21:57
[2026-06-27 02:21:58,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:21:58,275.275 INFO    ] Initializing speech engine...
[2026-06-27 02:21:58,283.283 INFO    ] 2026-06-27 02:21:58
[2026-06-27 02:21:58,495.495 INFO    ] 2026-06-27 02:21:58
[2026-06-27 02:21:58,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:21:58,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:21:58,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:21:58,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:21:58,913.913 INFO    ] time= 27/06/2026 02:21:58
[2026-06-27 02:21:58,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:21:58,965.965 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:21:59,077.077 INFO    ] No existing commands found in stream
[2026-06-27 02:22:04,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:22:04,098.098 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-27 02:22:07,726.726 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:22:07,728.728 INFO    ] Checking for system updates...
[2026-06-27 02:22:07,749.749 INFO    ] 200
[2026-06-27 02:22:07,751.751 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:22:07,784.784 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:22:07,785.785 INFO    ] No update needed
[2026-06-27 02:22:07,787.787 INFO    ] Checking for camera pi updates...
[2026-06-27 02:22:07,807.807 INFO    ] 200
[2026-06-27 02:22:07,808.808 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:22:07,832.832 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:22:07,880.880 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:22:07,881.881 INFO    ] No camera update needed
[2026-06-27 02:22:07,882.882 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:22:07,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:22:07,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:22:07,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:22:09,929.929 INFO    ] ================================================
[2026-06-27 02:22:09,948.948 INFO    ] Launching Daemon at Sat Jun 27 02:22:09 IST 2026
[2026-06-27 02:22:09,959.959 INFO    ] ================================================
[2026-06-27 02:22:10,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:22:10
[2026-06-27 02:22:10,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:22:10,766.766 INFO    ] Initializing speech engine...
[2026-06-27 02:22:10,772.772 INFO    ] 2026-06-27 02:22:10
[2026-06-27 02:22:10,975.975 INFO    ] 2026-06-27 02:22:10
[2026-06-27 02:22:11,004.004 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:22:11,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:22:11,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:22:11,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:22:11,380.380 INFO    ] time= 27/06/2026 02:22:11
[2026-06-27 02:22:11,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:22:11,423.423 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:22:11,514.514 INFO    ] No existing commands found in stream
[2026-06-27 02:22:16,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:22:16,531.531 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-27 02:22:19,719.719 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 02:22:19,720.720 INFO    ] Checking for system updates...
[2026-06-27 02:22:19,741.741 INFO    ] 200
[2026-06-27 02:22:19,742.742 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:22:19,775.775 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:22:19,776.776 INFO    ] No update needed
[2026-06-27 02:22:19,777.777 INFO    ] Checking for camera pi updates...
[2026-06-27 02:22:19,797.797 INFO    ] 200
[2026-06-27 02:22:19,798.798 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:22:19,821.821 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:22:19,863.863 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:22:19,865.865 INFO    ] No camera update needed
[2026-06-27 02:22:19,866.866 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:22:19,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:22:19,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:22:19,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:22:21,913.913 INFO    ] ================================================
[2026-06-27 02:22:21,928.928 INFO    ] Launching Daemon at Sat Jun 27 02:22:21 IST 2026
[2026-06-27 02:22:21,939.939 INFO    ] ================================================
[2026-06-27 02:22:22,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:22:22
[2026-06-27 02:22:22,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:22:22,765.765 INFO    ] Initializing speech engine...
[2026-06-27 02:22:22,770.770 INFO    ] 2026-06-27 02:22:22
[2026-06-27 02:22:22,974.974 INFO    ] 2026-06-27 02:22:22
[2026-06-27 02:22:23,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:22:23,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:22:23,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:22:23,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:22:23,392.392 INFO    ] time= 27/06/2026 02:22:23
[2026-06-27 02:22:23,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:22:23,418.418 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:22:23,512.512 INFO    ] No existing commands found in stream
[2026-06-27 02:22:28,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:22:28,524.524 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-27 02:22:32,721.721 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 02:22:32,722.722 INFO    ] Checking for system updates...
[2026-06-27 02:22:32,743.743 INFO    ] 200
[2026-06-27 02:22:32,745.745 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:22:32,778.778 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:22:32,779.779 INFO    ] No update needed
[2026-06-27 02:22:32,780.780 INFO    ] Checking for camera pi updates...
[2026-06-27 02:22:32,801.801 INFO    ] 200
[2026-06-27 02:22:32,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:22:32,826.826 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:22:32,861.861 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:22:32,863.863 INFO    ] No camera update needed
[2026-06-27 02:22:32,864.864 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:22:32,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:22:32,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:22:32,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:22:34,910.910 INFO    ] ================================================
[2026-06-27 02:22:34,926.926 INFO    ] Launching Daemon at Sat Jun 27 02:22:34 IST 2026
[2026-06-27 02:22:34,937.937 INFO    ] ================================================
[2026-06-27 02:22:35,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:22:35
[2026-06-27 02:22:35,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:22:35,747.747 INFO    ] Initializing speech engine...
[2026-06-27 02:22:35,750.750 INFO    ] 2026-06-27 02:22:35
[2026-06-27 02:22:35,969.969 INFO    ] 2026-06-27 02:22:35
[2026-06-27 02:22:35,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:22:36,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:22:36,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:22:36,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:22:36,369.369 INFO    ] time= 27/06/2026 02:22:36
[2026-06-27 02:22:36,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:22:36,420.420 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:22:36,492.492 INFO    ] No existing commands found in stream
[2026-06-27 02:22:41,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:22:41,504.504 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-27 02:22:42,533.533 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:22:42,534.534 INFO    ] Checking for system updates...
[2026-06-27 02:22:42,557.557 INFO    ] 200
[2026-06-27 02:22:42,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:22:42,591.591 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:22:42,592.592 INFO    ] No update needed
[2026-06-27 02:22:42,594.594 INFO    ] Checking for camera pi updates...
[2026-06-27 02:22:42,623.623 INFO    ] 200
[2026-06-27 02:22:42,624.624 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:22:42,648.648 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:22:42,690.690 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:22:42,691.691 INFO    ] No camera update needed
[2026-06-27 02:22:42,692.692 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:22:42,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:22:42,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:22:42,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:22:44,737.737 INFO    ] ================================================
[2026-06-27 02:22:44,752.752 INFO    ] Launching Daemon at Sat Jun 27 02:22:44 IST 2026
[2026-06-27 02:22:44,763.763 INFO    ] ================================================
[2026-06-27 02:22:45,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:22:45
[2026-06-27 02:22:45,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:22:45,625.625 INFO    ] Initializing speech engine...
[2026-06-27 02:22:45,634.634 INFO    ] 2026-06-27 02:22:45
[2026-06-27 02:22:45,854.854 INFO    ] 2026-06-27 02:22:45
[2026-06-27 02:22:45,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:22:46,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:22:46,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:22:46,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:22:46,279.279 INFO    ] time= 27/06/2026 02:22:46
[2026-06-27 02:22:46,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:22:46,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:22:46,417.417 INFO    ] No existing commands found in stream
[2026-06-27 02:22:51,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:22:51,431.431 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-27 02:22:54,889.889 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:22:54,890.890 INFO    ] Checking for system updates...
[2026-06-27 02:22:54,911.911 INFO    ] 200
[2026-06-27 02:22:54,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:22:54,944.944 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:22:54,945.945 INFO    ] No update needed
[2026-06-27 02:22:54,947.947 INFO    ] Checking for camera pi updates...
[2026-06-27 02:22:54,966.966 INFO    ] 200
[2026-06-27 02:22:54,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:22:54,991.991 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:22:55,036.036 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:22:55,038.038 INFO    ] No camera update needed
[2026-06-27 02:22:55,039.039 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:22:55,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:22:55,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:22:55,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:22:57,084.084 INFO    ] ================================================
[2026-06-27 02:22:57,099.099 INFO    ] Launching Daemon at Sat Jun 27 02:22:57 IST 2026
[2026-06-27 02:22:57,110.110 INFO    ] ================================================
[2026-06-27 02:22:57,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:22:57
[2026-06-27 02:22:57,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:22:57,893.893 INFO    ] Initializing speech engine...
[2026-06-27 02:22:57,905.905 INFO    ] 2026-06-27 02:22:57
[2026-06-27 02:22:58,114.114 INFO    ] 2026-06-27 02:22:58
[2026-06-27 02:22:58,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:22:58,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:22:58,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:22:58,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:22:58,525.525 INFO    ] time= 27/06/2026 02:22:58
[2026-06-27 02:22:58,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:22:58,565.565 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:22:58,637.637 INFO    ] No existing commands found in stream
[2026-06-27 02:23:03,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:23:03,649.649 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-27 02:23:05,728.728 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 02:23:05,729.729 INFO    ] Checking for system updates...
[2026-06-27 02:23:05,750.750 INFO    ] 200
[2026-06-27 02:23:05,751.751 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:23:05,787.787 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:23:05,788.788 INFO    ] No update needed
[2026-06-27 02:23:05,789.789 INFO    ] Checking for camera pi updates...
[2026-06-27 02:23:05,810.810 INFO    ] 200
[2026-06-27 02:23:05,811.811 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:23:05,835.835 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:23:05,877.877 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:23:05,878.878 INFO    ] No camera update needed
[2026-06-27 02:23:05,879.879 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:23:05,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:23:05,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:23:05,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:23:07,926.926 INFO    ] ================================================
[2026-06-27 02:23:07,942.942 INFO    ] Launching Daemon at Sat Jun 27 02:23:07 IST 2026
[2026-06-27 02:23:07,952.952 INFO    ] ================================================
[2026-06-27 02:23:08,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:23:08
[2026-06-27 02:23:08,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:23:08,848.848 INFO    ] Initializing speech engine...
[2026-06-27 02:23:08,851.851 INFO    ] 2026-06-27 02:23:08
[2026-06-27 02:23:09,060.060 INFO    ] 2026-06-27 02:23:09
[2026-06-27 02:23:09,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:23:09,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:23:09,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:23:09,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:23:09,478.478 INFO    ] time= 27/06/2026 02:23:09
[2026-06-27 02:23:09,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:23:09,508.508 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:23:09,573.573 INFO    ] No existing commands found in stream
[2026-06-27 02:23:14,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:23:14,587.587 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-27 02:23:15,475.475 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 02:23:15,476.476 INFO    ] Checking for system updates...
[2026-06-27 02:23:15,498.498 INFO    ] 200
[2026-06-27 02:23:15,500.500 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:23:15,530.530 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:23:15,532.532 INFO    ] No update needed
[2026-06-27 02:23:15,533.533 INFO    ] Checking for camera pi updates...
[2026-06-27 02:23:15,553.553 INFO    ] 200
[2026-06-27 02:23:15,555.555 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:23:15,578.578 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:23:15,624.624 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:23:15,626.626 INFO    ] No camera update needed
[2026-06-27 02:23:15,627.627 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:23:15,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:23:15,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:23:15,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:23:17,674.674 INFO    ] ================================================
[2026-06-27 02:23:17,689.689 INFO    ] Launching Daemon at Sat Jun 27 02:23:17 IST 2026
[2026-06-27 02:23:17,700.700 INFO    ] ================================================
[2026-06-27 02:23:18,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:23:18
[2026-06-27 02:23:18,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:23:18,535.535 INFO    ] Initializing speech engine...
[2026-06-27 02:23:18,544.544 INFO    ] 2026-06-27 02:23:18
[2026-06-27 02:23:18,749.749 INFO    ] 2026-06-27 02:23:18
[2026-06-27 02:23:18,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:23:18,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:23:18,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:23:19,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:23:19,168.168 INFO    ] time= 27/06/2026 02:23:19
[2026-06-27 02:23:19,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:23:19,198.198 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:23:19,265.265 INFO    ] No existing commands found in stream
[2026-06-27 02:23:24,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:23:24,281.281 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-27 02:23:27,438.438 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:23:27,440.440 INFO    ] Checking for system updates...
[2026-06-27 02:23:27,460.460 INFO    ] 200
[2026-06-27 02:23:27,462.462 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:23:27,495.495 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:23:27,496.496 INFO    ] No update needed
[2026-06-27 02:23:27,497.497 INFO    ] Checking for camera pi updates...
[2026-06-27 02:23:27,519.519 INFO    ] 200
[2026-06-27 02:23:27,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:23:27,543.543 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:23:27,594.594 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:23:27,595.595 INFO    ] No camera update needed
[2026-06-27 02:23:27,597.597 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:23:27,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:23:27,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:23:27,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:23:29,642.642 INFO    ] ================================================
[2026-06-27 02:23:29,657.657 INFO    ] Launching Daemon at Sat Jun 27 02:23:29 IST 2026
[2026-06-27 02:23:29,668.668 INFO    ] ================================================
[2026-06-27 02:23:29,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:23:29
[2026-06-27 02:23:30,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:23:30,446.446 INFO    ] Initializing speech engine...
[2026-06-27 02:23:30,451.451 INFO    ] 2026-06-27 02:23:30
[2026-06-27 02:23:30,657.657 INFO    ] 2026-06-27 02:23:30
[2026-06-27 02:23:30,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:23:30,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:23:30,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:23:31,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:23:31,069.069 INFO    ] time= 27/06/2026 02:23:31
[2026-06-27 02:23:31,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:23:31,101.101 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:23:31,169.169 INFO    ] No existing commands found in stream
[2026-06-27 02:23:36,188.188 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:23:36,190.190 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-27 02:23:39,261.261 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 02:23:39,263.263 INFO    ] Checking for system updates...
[2026-06-27 02:23:39,285.285 INFO    ] 200
[2026-06-27 02:23:39,287.287 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:23:39,319.319 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:23:39,321.321 INFO    ] No update needed
[2026-06-27 02:23:39,322.322 INFO    ] Checking for camera pi updates...
[2026-06-27 02:23:39,342.342 INFO    ] 200
[2026-06-27 02:23:39,343.343 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:23:39,367.367 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:23:39,516.516 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:23:39,517.517 INFO    ] No camera update needed
[2026-06-27 02:23:39,518.518 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:23:39,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:23:39,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:23:39,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:23:41,564.564 INFO    ] ================================================
[2026-06-27 02:23:41,579.579 INFO    ] Launching Daemon at Sat Jun 27 02:23:41 IST 2026
[2026-06-27 02:23:41,590.590 INFO    ] ================================================
[2026-06-27 02:23:41,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:23:41
[2026-06-27 02:23:42,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:23:42,418.418 INFO    ] Initializing speech engine...
[2026-06-27 02:23:42,429.429 INFO    ] 2026-06-27 02:23:42
[2026-06-27 02:23:42,634.634 INFO    ] 2026-06-27 02:23:42
[2026-06-27 02:23:42,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:23:42,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:23:42,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:23:43,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:23:43,054.054 INFO    ] time= 27/06/2026 02:23:43
[2026-06-27 02:23:43,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:23:43,084.084 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:23:43,152.152 INFO    ] No existing commands found in stream
[2026-06-27 02:23:48,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:23:48,169.169 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-27 02:23:49,108.108 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:23:49,109.109 INFO    ] Checking for system updates...
[2026-06-27 02:23:49,130.130 INFO    ] 200
[2026-06-27 02:23:49,131.131 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:23:49,162.162 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:23:49,163.163 INFO    ] No update needed
[2026-06-27 02:23:49,165.165 INFO    ] Checking for camera pi updates...
[2026-06-27 02:23:49,184.184 INFO    ] 200
[2026-06-27 02:23:49,186.186 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:23:49,211.211 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:23:49,257.257 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:23:49,258.258 INFO    ] No camera update needed
[2026-06-27 02:23:49,259.259 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:23:49,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:23:49,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:23:49,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:23:51,305.305 INFO    ] ================================================
[2026-06-27 02:23:51,320.320 INFO    ] Launching Daemon at Sat Jun 27 02:23:51 IST 2026
[2026-06-27 02:23:51,331.331 INFO    ] ================================================
[2026-06-27 02:23:51,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:23:51
[2026-06-27 02:23:52,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:23:52,152.152 INFO    ] Initializing speech engine...
[2026-06-27 02:23:52,162.162 INFO    ] 2026-06-27 02:23:52
[2026-06-27 02:23:52,368.368 INFO    ] 2026-06-27 02:23:52
[2026-06-27 02:23:52,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:23:52,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:23:52,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:23:52,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:23:52,808.808 INFO    ] time= 27/06/2026 02:23:52
[2026-06-27 02:23:52,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:23:52,815.815 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:23:52,882.882 INFO    ] No existing commands found in stream
[2026-06-27 02:23:57,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:23:57,894.894 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-27 02:23:59,907.907 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 02:23:59,908.908 INFO    ] Checking for system updates...
[2026-06-27 02:23:59,930.930 INFO    ] 200
[2026-06-27 02:23:59,932.932 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:23:59,964.964 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:23:59,966.966 INFO    ] No update needed
[2026-06-27 02:23:59,967.967 INFO    ] Checking for camera pi updates...
[2026-06-27 02:23:59,987.987 INFO    ] 200
[2026-06-27 02:23:59,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:24:00,012.012 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:24:00,055.055 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:24:00,056.056 INFO    ] No camera update needed
[2026-06-27 02:24:00,057.057 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:24:00,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:24:00,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:24:00,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:24:02,105.105 INFO    ] ================================================
[2026-06-27 02:24:02,124.124 INFO    ] Launching Daemon at Sat Jun 27 02:24:02 IST 2026
[2026-06-27 02:24:02,151.151 INFO    ] ================================================
[2026-06-27 02:24:02,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:24:02
[2026-06-27 02:24:02,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:24:03,085.085 INFO    ] Initializing speech engine...
[2026-06-27 02:24:03,098.098 INFO    ] 2026-06-27 02:24:03
[2026-06-27 02:24:03,318.318 INFO    ] 2026-06-27 02:24:03
[2026-06-27 02:24:03,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:24:03,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:24:03,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:24:03,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:24:03,765.765 INFO    ] time= 27/06/2026 02:24:03
[2026-06-27 02:24:03,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:24:03,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:24:03,891.891 INFO    ] No existing commands found in stream
[2026-06-27 02:24:08,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:24:08,902.902 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-27 02:24:09,530.530 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 02:24:09,532.532 INFO    ] Checking for system updates...
[2026-06-27 02:24:09,553.553 INFO    ] 200
[2026-06-27 02:24:09,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:24:09,585.585 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:24:09,586.586 INFO    ] No update needed
[2026-06-27 02:24:09,587.587 INFO    ] Checking for camera pi updates...
[2026-06-27 02:24:09,607.607 INFO    ] 200
[2026-06-27 02:24:09,608.608 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:24:09,633.633 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:24:09,673.673 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:24:09,674.674 INFO    ] No camera update needed
[2026-06-27 02:24:09,676.676 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:24:09,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:24:09,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:24:09,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:24:11,720.720 INFO    ] ================================================
[2026-06-27 02:24:11,736.736 INFO    ] Launching Daemon at Sat Jun 27 02:24:11 IST 2026
[2026-06-27 02:24:11,747.747 INFO    ] ================================================
[2026-06-27 02:24:12,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:24:12
[2026-06-27 02:24:12,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:24:12,632.632 INFO    ] Initializing speech engine...
[2026-06-27 02:24:12,637.637 INFO    ] 2026-06-27 02:24:12
[2026-06-27 02:24:12,848.848 INFO    ] 2026-06-27 02:24:12
[2026-06-27 02:24:12,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:24:13,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:24:13,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:24:13,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:24:13,266.266 INFO    ] time= 27/06/2026 02:24:13
[2026-06-27 02:24:13,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:24:13,293.293 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:24:13,383.383 INFO    ] No existing commands found in stream
[2026-06-27 02:24:18,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:24:18,409.409 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-27 02:24:20,640.640 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:24:20,642.642 INFO    ] Checking for system updates...
[2026-06-27 02:24:20,665.665 INFO    ] 200
[2026-06-27 02:24:20,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:24:20,701.701 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:24:20,703.703 INFO    ] No update needed
[2026-06-27 02:24:20,704.704 INFO    ] Checking for camera pi updates...
[2026-06-27 02:24:20,724.724 INFO    ] 200
[2026-06-27 02:24:20,725.725 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:24:20,749.749 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:24:20,792.792 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:24:20,794.794 INFO    ] No camera update needed
[2026-06-27 02:24:20,795.795 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:24:20,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:24:20,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:24:20,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:24:22,840.840 INFO    ] ================================================
[2026-06-27 02:24:22,855.855 INFO    ] Launching Daemon at Sat Jun 27 02:24:22 IST 2026
[2026-06-27 02:24:22,866.866 INFO    ] ================================================
[2026-06-27 02:24:23,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:24:23
[2026-06-27 02:24:23,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:24:23,753.753 INFO    ] Initializing speech engine...
[2026-06-27 02:24:23,758.758 INFO    ] 2026-06-27 02:24:23
[2026-06-27 02:24:23,967.967 INFO    ] 2026-06-27 02:24:23
[2026-06-27 02:24:23,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:24:24,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:24:24,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:24:24,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:24:24,385.385 INFO    ] time= 27/06/2026 02:24:24
[2026-06-27 02:24:24,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:24:24,415.415 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:24:24,505.505 INFO    ] No existing commands found in stream
[2026-06-27 02:24:29,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:24:29,523.523 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-27 02:24:30,522.522 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 02:24:30,524.524 INFO    ] Checking for system updates...
[2026-06-27 02:24:30,547.547 INFO    ] 200
[2026-06-27 02:24:30,549.549 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:24:30,585.585 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:24:30,587.587 INFO    ] No update needed
[2026-06-27 02:24:30,588.588 INFO    ] Checking for camera pi updates...
[2026-06-27 02:24:30,611.611 INFO    ] 200
[2026-06-27 02:24:30,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:24:30,637.637 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:24:30,679.679 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:24:30,680.680 INFO    ] No camera update needed
[2026-06-27 02:24:30,682.682 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:24:30,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:24:30,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:24:30,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:24:32,721.721 INFO    ] ================================================
[2026-06-27 02:24:32,730.730 INFO    ] Launching Daemon at Sat Jun 27 02:24:32 IST 2026
[2026-06-27 02:24:32,737.737 INFO    ] ================================================
[2026-06-27 02:24:33,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:24:33
[2026-06-27 02:24:33,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:24:33,545.545 INFO    ] Initializing speech engine...
[2026-06-27 02:24:33,555.555 INFO    ] 2026-06-27 02:24:33
[2026-06-27 02:24:33,776.776 INFO    ] 2026-06-27 02:24:33
[2026-06-27 02:24:33,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:24:33,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:24:34,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:24:34,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:24:34,198.198 INFO    ] time= 27/06/2026 02:24:34
[2026-06-27 02:24:34,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:24:34,238.238 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:24:34,334.334 INFO    ] No existing commands found in stream
[2026-06-27 02:24:39,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:24:39,350.350 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-27 02:24:42,087.087 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 02:24:42,088.088 INFO    ] Checking for system updates...
[2026-06-27 02:24:42,111.111 INFO    ] 200
[2026-06-27 02:24:42,112.112 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:24:42,142.142 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:24:42,144.144 INFO    ] No update needed
[2026-06-27 02:24:42,146.146 INFO    ] Checking for camera pi updates...
[2026-06-27 02:24:42,165.165 INFO    ] 200
[2026-06-27 02:24:42,167.167 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:24:42,190.190 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:24:42,250.250 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:24:42,252.252 INFO    ] No camera update needed
[2026-06-27 02:24:42,253.253 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:24:42,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:24:42,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:24:42,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:24:44,298.298 INFO    ] ================================================
[2026-06-27 02:24:44,313.313 INFO    ] Launching Daemon at Sat Jun 27 02:24:44 IST 2026
[2026-06-27 02:24:44,324.324 INFO    ] ================================================
[2026-06-27 02:24:44,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:24:44
[2026-06-27 02:24:45,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:24:45,190.190 INFO    ] Initializing speech engine...
[2026-06-27 02:24:45,196.196 INFO    ] 2026-06-27 02:24:45
[2026-06-27 02:24:45,406.406 INFO    ] 2026-06-27 02:24:45
[2026-06-27 02:24:45,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:24:45,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:24:45,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:24:45,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:24:45,836.836 INFO    ] time= 27/06/2026 02:24:45
[2026-06-27 02:24:45,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:24:45,865.865 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:24:45,937.937 INFO    ] No existing commands found in stream
[2026-06-27 02:24:50,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:24:50,955.955 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-27 02:24:54,878.878 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 02:24:54,880.880 INFO    ] Checking for system updates...
[2026-06-27 02:24:54,901.901 INFO    ] 200
[2026-06-27 02:24:54,902.902 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:24:54,936.936 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:24:54,937.937 INFO    ] No update needed
[2026-06-27 02:24:54,938.938 INFO    ] Checking for camera pi updates...
[2026-06-27 02:24:54,958.958 INFO    ] 200
[2026-06-27 02:24:54,959.959 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:24:54,984.984 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:24:55,031.031 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:24:55,032.032 INFO    ] No camera update needed
[2026-06-27 02:24:55,034.034 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:24:55,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:24:55,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:24:55,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:24:57,080.080 INFO    ] ================================================
[2026-06-27 02:24:57,096.096 INFO    ] Launching Daemon at Sat Jun 27 02:24:57 IST 2026
[2026-06-27 02:24:57,107.107 INFO    ] ================================================
[2026-06-27 02:24:57,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:24:57
[2026-06-27 02:24:57,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:24:57,909.909 INFO    ] Initializing speech engine...
[2026-06-27 02:24:57,914.914 INFO    ] 2026-06-27 02:24:57
[2026-06-27 02:24:58,136.136 INFO    ] 2026-06-27 02:24:58
[2026-06-27 02:24:58,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:24:58,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:24:58,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:24:58,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:24:58,538.538 INFO    ] time= 27/06/2026 02:24:58
[2026-06-27 02:24:58,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:24:58,589.589 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:24:58,661.661 INFO    ] No existing commands found in stream
[2026-06-27 02:25:03,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:25:03,669.669 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-27 02:25:07,740.740 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 02:25:07,741.741 INFO    ] Checking for system updates...
[2026-06-27 02:25:07,763.763 INFO    ] 200
[2026-06-27 02:25:07,765.765 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:25:07,798.798 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:25:07,799.799 INFO    ] No update needed
[2026-06-27 02:25:07,801.801 INFO    ] Checking for camera pi updates...
[2026-06-27 02:25:07,821.821 INFO    ] 200
[2026-06-27 02:25:07,823.823 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:25:07,846.846 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:25:07,886.886 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:25:07,888.888 INFO    ] No camera update needed
[2026-06-27 02:25:07,889.889 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:25:07,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:25:07,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:25:07,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:25:09,935.935 INFO    ] ================================================
[2026-06-27 02:25:09,950.950 INFO    ] Launching Daemon at Sat Jun 27 02:25:09 IST 2026
[2026-06-27 02:25:09,961.961 INFO    ] ================================================
[2026-06-27 02:25:10,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:25:10
[2026-06-27 02:25:10,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:25:10,771.771 INFO    ] Initializing speech engine...
[2026-06-27 02:25:10,776.776 INFO    ] 2026-06-27 02:25:10
[2026-06-27 02:25:10,980.980 INFO    ] 2026-06-27 02:25:10
[2026-06-27 02:25:11,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:25:11,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:25:11,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:25:11,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:25:11,373.373 INFO    ] time= 27/06/2026 02:25:11
[2026-06-27 02:25:11,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:25:11,422.422 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:25:11,517.517 INFO    ] No existing commands found in stream
[2026-06-27 02:25:16,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:25:16,528.528 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-27 02:25:17,238.238 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 02:25:17,239.239 INFO    ] Checking for system updates...
[2026-06-27 02:25:17,260.260 INFO    ] 200
[2026-06-27 02:25:17,261.261 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:25:17,295.295 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:25:17,296.296 INFO    ] No update needed
[2026-06-27 02:25:17,297.297 INFO    ] Checking for camera pi updates...
[2026-06-27 02:25:17,317.317 INFO    ] 200
[2026-06-27 02:25:17,318.318 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:25:17,344.344 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:25:17,394.394 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:25:17,395.395 INFO    ] No camera update needed
[2026-06-27 02:25:17,396.396 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:25:17,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:25:17,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:25:17,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:25:19,443.443 INFO    ] ================================================
[2026-06-27 02:25:19,458.458 INFO    ] Launching Daemon at Sat Jun 27 02:25:19 IST 2026
[2026-06-27 02:25:19,469.469 INFO    ] ================================================
[2026-06-27 02:25:19,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:25:19
[2026-06-27 02:25:20,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:25:20,250.250 INFO    ] Initializing speech engine...
[2026-06-27 02:25:20,257.257 INFO    ] 2026-06-27 02:25:20
[2026-06-27 02:25:20,471.471 INFO    ] 2026-06-27 02:25:20
[2026-06-27 02:25:20,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:25:20,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:25:20,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:25:20,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:25:20,929.929 INFO    ] time= 27/06/2026 02:25:20
[2026-06-27 02:25:20,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:25:20,983.983 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:25:21,061.061 INFO    ] No existing commands found in stream
[2026-06-27 02:25:26,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:25:26,075.075 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-27 02:25:28,624.624 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:25:28,625.625 INFO    ] Checking for system updates...
[2026-06-27 02:25:28,650.650 INFO    ] 200
[2026-06-27 02:25:28,652.652 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:25:28,688.688 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:25:28,690.690 INFO    ] No update needed
[2026-06-27 02:25:28,691.691 INFO    ] Checking for camera pi updates...
[2026-06-27 02:25:28,715.715 INFO    ] 200
[2026-06-27 02:25:28,717.717 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:25:28,744.744 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:25:28,798.798 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:25:28,799.799 INFO    ] No camera update needed
[2026-06-27 02:25:28,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:25:28,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:25:28,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:25:28,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:25:30,853.853 INFO    ] ================================================
[2026-06-27 02:25:30,869.869 INFO    ] Launching Daemon at Sat Jun 27 02:25:30 IST 2026
[2026-06-27 02:25:30,880.880 INFO    ] ================================================
[2026-06-27 02:25:31,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:25:31
[2026-06-27 02:25:31,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:25:31,806.806 INFO    ] Initializing speech engine...
[2026-06-27 02:25:31,813.813 INFO    ] 2026-06-27 02:25:31
[2026-06-27 02:25:32,043.043 INFO    ] 2026-06-27 02:25:32
[2026-06-27 02:25:32,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:25:32,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:25:32,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:25:32,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:25:32,696.696 INFO    ] time= 27/06/2026 02:25:32
[2026-06-27 02:25:32,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:25:32,705.705 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:25:32,786.786 INFO    ] No existing commands found in stream
[2026-06-27 02:25:37,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:25:37,800.800 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-27 02:25:38,419.419 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 02:25:38,421.421 INFO    ] Checking for system updates...
[2026-06-27 02:25:38,443.443 INFO    ] 200
[2026-06-27 02:25:38,444.444 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:25:38,479.479 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:25:38,480.480 INFO    ] No update needed
[2026-06-27 02:25:38,481.481 INFO    ] Checking for camera pi updates...
[2026-06-27 02:25:38,503.503 INFO    ] 200
[2026-06-27 02:25:38,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:25:38,529.529 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:25:38,573.573 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:25:38,575.575 INFO    ] No camera update needed
[2026-06-27 02:25:38,576.576 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:25:38,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:25:38,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:25:38,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:25:40,622.622 INFO    ] ================================================
[2026-06-27 02:25:40,638.638 INFO    ] Launching Daemon at Sat Jun 27 02:25:40 IST 2026
[2026-06-27 02:25:40,649.649 INFO    ] ================================================
[2026-06-27 02:25:41,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:25:41
[2026-06-27 02:25:41,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:25:41,478.478 INFO    ] Initializing speech engine...
[2026-06-27 02:25:41,482.482 INFO    ] 2026-06-27 02:25:41
[2026-06-27 02:25:41,677.677 INFO    ] 2026-06-27 02:25:41
[2026-06-27 02:25:41,725.725 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:25:41,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:25:41,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:25:42,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:25:42,130.130 INFO    ] time= 27/06/2026 02:25:42
[2026-06-27 02:25:42,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:25:42,215.215 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:25:42,294.294 INFO    ] No existing commands found in stream
[2026-06-27 02:25:47,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:25:47,306.306 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-27 02:25:51,430.430 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 02:25:51,432.432 INFO    ] Checking for system updates...
[2026-06-27 02:25:51,453.453 INFO    ] 200
[2026-06-27 02:25:51,454.454 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:25:51,485.485 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:25:51,486.486 INFO    ] No update needed
[2026-06-27 02:25:51,488.488 INFO    ] Checking for camera pi updates...
[2026-06-27 02:25:51,507.507 INFO    ] 200
[2026-06-27 02:25:51,508.508 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:25:51,532.532 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:25:51,677.677 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:25:51,678.678 INFO    ] No camera update needed
[2026-06-27 02:25:51,679.679 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:25:51,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:25:51,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:25:51,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:25:53,724.724 INFO    ] ================================================
[2026-06-27 02:25:53,740.740 INFO    ] Launching Daemon at Sat Jun 27 02:25:53 IST 2026
[2026-06-27 02:25:53,751.751 INFO    ] ================================================
[2026-06-27 02:25:54,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:25:54
[2026-06-27 02:25:54,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:25:54,544.544 INFO    ] Initializing speech engine...
[2026-06-27 02:25:54,548.548 INFO    ] 2026-06-27 02:25:54
[2026-06-27 02:25:54,752.752 INFO    ] 2026-06-27 02:25:54
[2026-06-27 02:25:54,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:25:54,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:25:54,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:25:55,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:25:55,170.170 INFO    ] time= 27/06/2026 02:25:55
[2026-06-27 02:25:55,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:25:55,199.199 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:25:55,290.290 INFO    ] No existing commands found in stream
[2026-06-27 02:26:00,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:26:00,305.305 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-27 02:26:01,011.011 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:26:01,014.014 INFO    ] Checking for system updates...
[2026-06-27 02:26:01,050.050 INFO    ] 200
[2026-06-27 02:26:01,053.053 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:26:01,111.111 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:26:01,112.112 INFO    ] No update needed
[2026-06-27 02:26:01,113.113 INFO    ] Checking for camera pi updates...
[2026-06-27 02:26:01,133.133 INFO    ] 200
[2026-06-27 02:26:01,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:26:01,159.159 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:26:01,210.210 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:26:01,211.211 INFO    ] No camera update needed
[2026-06-27 02:26:01,213.213 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:26:01,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:26:01,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:26:01,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:26:03,245.245 INFO    ] ================================================
[2026-06-27 02:26:03,254.254 INFO    ] Launching Daemon at Sat Jun 27 02:26:03 IST 2026
[2026-06-27 02:26:03,260.260 INFO    ] ================================================
[2026-06-27 02:26:03,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:26:03
[2026-06-27 02:26:03,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:26:04,123.123 INFO    ] Initializing speech engine...
[2026-06-27 02:26:04,133.133 INFO    ] 2026-06-27 02:26:04
[2026-06-27 02:26:04,343.343 INFO    ] 2026-06-27 02:26:04
[2026-06-27 02:26:04,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:26:04,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:26:04,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:26:04,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:26:04,767.767 INFO    ] time= 27/06/2026 02:26:04
[2026-06-27 02:26:04,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:26:04,795.795 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:26:04,862.862 INFO    ] No existing commands found in stream
[2026-06-27 02:26:09,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:26:09,880.880 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-27 02:26:10,670.670 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 02:26:10,672.672 INFO    ] Checking for system updates...
[2026-06-27 02:26:10,694.694 INFO    ] 200
[2026-06-27 02:26:10,695.695 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:26:10,726.726 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:26:10,728.728 INFO    ] No update needed
[2026-06-27 02:26:10,729.729 INFO    ] Checking for camera pi updates...
[2026-06-27 02:26:10,749.749 INFO    ] 200
[2026-06-27 02:26:10,750.750 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:26:10,776.776 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:26:10,817.817 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:26:10,818.818 INFO    ] No camera update needed
[2026-06-27 02:26:10,819.819 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:26:10,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:26:10,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:26:10,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:26:12,865.865 INFO    ] ================================================
[2026-06-27 02:26:12,880.880 INFO    ] Launching Daemon at Sat Jun 27 02:26:12 IST 2026
[2026-06-27 02:26:12,891.891 INFO    ] ================================================
[2026-06-27 02:26:13,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:26:13
[2026-06-27 02:26:13,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:26:13,700.700 INFO    ] Initializing speech engine...
[2026-06-27 02:26:13,705.705 INFO    ] 2026-06-27 02:26:13
[2026-06-27 02:26:13,911.911 INFO    ] 2026-06-27 02:26:13
[2026-06-27 02:26:13,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:26:14,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:26:14,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:26:14,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:26:14,348.348 INFO    ] time= 27/06/2026 02:26:14
[2026-06-27 02:26:14,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:26:14,356.356 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:26:14,422.422 INFO    ] No existing commands found in stream
[2026-06-27 02:26:19,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:26:19,439.439 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-27 02:26:19,840.840 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 02:26:19,842.842 INFO    ] Checking for system updates...
[2026-06-27 02:26:19,864.864 INFO    ] 200
[2026-06-27 02:26:19,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:26:19,899.899 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:26:19,900.900 INFO    ] No update needed
[2026-06-27 02:26:19,902.902 INFO    ] Checking for camera pi updates...
[2026-06-27 02:26:19,923.923 INFO    ] 200
[2026-06-27 02:26:19,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:26:19,950.950 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:26:19,998.998 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:26:19,999.999 INFO    ] No camera update needed
[2026-06-27 02:26:20,000.000 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:26:20,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:26:20,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:26:20,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:26:22,046.046 INFO    ] ================================================
[2026-06-27 02:26:22,061.061 INFO    ] Launching Daemon at Sat Jun 27 02:26:22 IST 2026
[2026-06-27 02:26:22,072.072 INFO    ] ================================================
[2026-06-27 02:26:22,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:26:22
[2026-06-27 02:26:22,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:26:22,854.854 INFO    ] Initializing speech engine...
[2026-06-27 02:26:22,866.866 INFO    ] 2026-06-27 02:26:22
[2026-06-27 02:26:23,076.076 INFO    ] 2026-06-27 02:26:23
[2026-06-27 02:26:23,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:26:23,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:26:23,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:26:23,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:26:23,493.493 INFO    ] time= 27/06/2026 02:26:23
[2026-06-27 02:26:23,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:26:23,533.533 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:26:23,602.602 INFO    ] No existing commands found in stream
[2026-06-27 02:26:28,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:26:28,614.614 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-27 02:26:30,677.677 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 02:26:30,678.678 INFO    ] Checking for system updates...
[2026-06-27 02:26:30,701.701 INFO    ] 200
[2026-06-27 02:26:30,703.703 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:26:30,736.736 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:26:30,737.737 INFO    ] No update needed
[2026-06-27 02:26:30,739.739 INFO    ] Checking for camera pi updates...
[2026-06-27 02:26:30,759.759 INFO    ] 200
[2026-06-27 02:26:30,761.761 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:26:30,786.786 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:26:30,840.840 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:26:30,841.841 INFO    ] No camera update needed
[2026-06-27 02:26:30,842.842 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:26:30,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:26:30,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:26:30,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:26:32,879.879 INFO    ] ================================================
[2026-06-27 02:26:32,887.887 INFO    ] Launching Daemon at Sat Jun 27 02:26:32 IST 2026
[2026-06-27 02:26:32,893.893 INFO    ] ================================================
[2026-06-27 02:26:33,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:26:33
[2026-06-27 02:26:33,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:26:33,695.695 INFO    ] Initializing speech engine...
[2026-06-27 02:26:33,700.700 INFO    ] 2026-06-27 02:26:33
[2026-06-27 02:26:33,918.918 INFO    ] 2026-06-27 02:26:33
[2026-06-27 02:26:33,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:26:34,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:26:34,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:26:34,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:26:34,363.363 INFO    ] time= 27/06/2026 02:26:34
[2026-06-27 02:26:34,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:26:34,371.371 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:26:34,438.438 INFO    ] No existing commands found in stream
[2026-06-27 02:26:39,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:26:39,455.455 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-27 02:26:41,784.784 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 02:26:41,785.785 INFO    ] Checking for system updates...
[2026-06-27 02:26:41,809.809 INFO    ] 200
[2026-06-27 02:26:41,810.810 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:26:41,842.842 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:26:41,843.843 INFO    ] No update needed
[2026-06-27 02:26:41,845.845 INFO    ] Checking for camera pi updates...
[2026-06-27 02:26:41,865.865 INFO    ] 200
[2026-06-27 02:26:41,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:26:41,890.890 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:26:41,940.940 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:26:41,941.941 INFO    ] No camera update needed
[2026-06-27 02:26:41,943.943 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:26:41,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:26:41,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:26:41,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:26:43,991.991 INFO    ] ================================================
[2026-06-27 02:26:44,006.006 INFO    ] Launching Daemon at Sat Jun 27 02:26:44 IST 2026
[2026-06-27 02:26:44,017.017 INFO    ] ================================================
[2026-06-27 02:26:44,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:26:44
[2026-06-27 02:26:44,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:26:44,883.883 INFO    ] Initializing speech engine...
[2026-06-27 02:26:44,889.889 INFO    ] 2026-06-27 02:26:44
[2026-06-27 02:26:45,097.097 INFO    ] 2026-06-27 02:26:45
[2026-06-27 02:26:45,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:26:45,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:26:45,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:26:45,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:26:45,514.514 INFO    ] time= 27/06/2026 02:26:45
[2026-06-27 02:26:45,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:26:45,545.545 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:26:45,611.611 INFO    ] No existing commands found in stream
[2026-06-27 02:26:50,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:26:50,629.629 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-27 02:26:54,540.540 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 02:26:54,542.542 INFO    ] Checking for system updates...
[2026-06-27 02:26:54,564.564 INFO    ] 200
[2026-06-27 02:26:54,566.566 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:26:54,600.600 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:26:54,601.601 INFO    ] No update needed
[2026-06-27 02:26:54,602.602 INFO    ] Checking for camera pi updates...
[2026-06-27 02:26:54,625.625 INFO    ] 200
[2026-06-27 02:26:54,627.627 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:26:54,654.654 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:26:54,685.685 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:26:54,686.686 INFO    ] No camera update needed
[2026-06-27 02:26:54,688.688 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:26:54,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:26:54,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:26:54,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:26:56,734.734 INFO    ] ================================================
[2026-06-27 02:26:56,749.749 INFO    ] Launching Daemon at Sat Jun 27 02:26:56 IST 2026
[2026-06-27 02:26:56,760.760 INFO    ] ================================================
[2026-06-27 02:26:57,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:26:57
[2026-06-27 02:26:57,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:26:57,574.574 INFO    ] Initializing speech engine...
[2026-06-27 02:26:57,578.578 INFO    ] 2026-06-27 02:26:57
[2026-06-27 02:26:57,808.808 INFO    ] 2026-06-27 02:26:57
[2026-06-27 02:26:57,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:26:57,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:26:58,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:26:58,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:26:58,256.256 INFO    ] time= 27/06/2026 02:26:58
[2026-06-27 02:26:58,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:26:58,297.297 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:26:58,368.368 INFO    ] No existing commands found in stream
[2026-06-27 02:27:03,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:27:03,381.381 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-27 02:27:04,634.634 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:27:04,636.636 INFO    ] Checking for system updates...
[2026-06-27 02:27:04,658.658 INFO    ] 200
[2026-06-27 02:27:04,660.660 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:27:04,690.690 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:27:04,691.691 INFO    ] No update needed
[2026-06-27 02:27:04,693.693 INFO    ] Checking for camera pi updates...
[2026-06-27 02:27:04,712.712 INFO    ] 200
[2026-06-27 02:27:04,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:27:04,737.737 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:27:04,793.793 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:27:04,794.794 INFO    ] No camera update needed
[2026-06-27 02:27:04,796.796 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:27:04,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:27:04,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:27:04,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:27:06,842.842 INFO    ] ================================================
[2026-06-27 02:27:06,857.857 INFO    ] Launching Daemon at Sat Jun 27 02:27:06 IST 2026
[2026-06-27 02:27:06,868.868 INFO    ] ================================================
[2026-06-27 02:27:07,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:27:07
[2026-06-27 02:27:07,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:27:07,698.698 INFO    ] Initializing speech engine...
[2026-06-27 02:27:07,703.703 INFO    ] 2026-06-27 02:27:07
[2026-06-27 02:27:07,908.908 INFO    ] 2026-06-27 02:27:07
[2026-06-27 02:27:07,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:27:08,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:27:08,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:27:08,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:27:08,326.326 INFO    ] time= 27/06/2026 02:27:08
[2026-06-27 02:27:08,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:27:08,356.356 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:27:08,446.446 INFO    ] No existing commands found in stream
[2026-06-27 02:27:13,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:27:13,463.463 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-27 02:27:14,066.066 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 02:27:14,067.067 INFO    ] Checking for system updates...
[2026-06-27 02:27:14,088.088 INFO    ] 200
[2026-06-27 02:27:14,090.090 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:27:14,124.124 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:27:14,125.125 INFO    ] No update needed
[2026-06-27 02:27:14,126.126 INFO    ] Checking for camera pi updates...
[2026-06-27 02:27:14,146.146 INFO    ] 200
[2026-06-27 02:27:14,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:27:14,170.170 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:27:14,210.210 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:27:14,212.212 INFO    ] No camera update needed
[2026-06-27 02:27:14,213.213 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:27:14,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:27:14,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:27:14,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:27:16,260.260 INFO    ] ================================================
[2026-06-27 02:27:16,275.275 INFO    ] Launching Daemon at Sat Jun 27 02:27:16 IST 2026
[2026-06-27 02:27:16,291.291 INFO    ] ================================================
[2026-06-27 02:27:16,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:27:16
[2026-06-27 02:27:16,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:27:17,118.118 INFO    ] Initializing speech engine...
[2026-06-27 02:27:17,126.126 INFO    ] 2026-06-27 02:27:17
[2026-06-27 02:27:17,332.332 INFO    ] 2026-06-27 02:27:17
[2026-06-27 02:27:17,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:27:17,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:27:17,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:27:17,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:27:17,775.775 INFO    ] time= 27/06/2026 02:27:17
[2026-06-27 02:27:17,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:27:17,808.808 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:27:17,912.912 INFO    ] No existing commands found in stream
[2026-06-27 02:27:22,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:27:22,925.925 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-27 02:27:26,631.631 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:27:26,632.632 INFO    ] Checking for system updates...
[2026-06-27 02:27:26,653.653 INFO    ] 200
[2026-06-27 02:27:26,654.654 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:27:26,687.687 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:27:26,689.689 INFO    ] No update needed
[2026-06-27 02:27:26,690.690 INFO    ] Checking for camera pi updates...
[2026-06-27 02:27:26,711.711 INFO    ] 200
[2026-06-27 02:27:26,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:27:26,738.738 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:27:26,778.778 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:27:26,779.779 INFO    ] No camera update needed
[2026-06-27 02:27:26,781.781 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:27:26,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:27:26,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:27:26,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:27:28,826.826 INFO    ] ================================================
[2026-06-27 02:27:28,842.842 INFO    ] Launching Daemon at Sat Jun 27 02:27:28 IST 2026
[2026-06-27 02:27:28,853.853 INFO    ] ================================================
[2026-06-27 02:27:29,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:27:29
[2026-06-27 02:27:29,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:27:29,679.679 INFO    ] Initializing speech engine...
[2026-06-27 02:27:29,684.684 INFO    ] 2026-06-27 02:27:29
[2026-06-27 02:27:29,887.887 INFO    ] 2026-06-27 02:27:29
[2026-06-27 02:27:29,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:27:30,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:27:30,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:27:30,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:27:30,288.288 INFO    ] time= 27/06/2026 02:27:30
[2026-06-27 02:27:30,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:27:30,331.331 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:27:30,403.403 INFO    ] No existing commands found in stream
[2026-06-27 02:27:35,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:27:35,414.414 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-27 02:27:39,189.189 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:27:39,191.191 INFO    ] Checking for system updates...
[2026-06-27 02:27:39,211.211 INFO    ] 200
[2026-06-27 02:27:39,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:27:39,243.243 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:27:39,245.245 INFO    ] No update needed
[2026-06-27 02:27:39,246.246 INFO    ] Checking for camera pi updates...
[2026-06-27 02:27:39,269.269 INFO    ] 200
[2026-06-27 02:27:39,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:27:39,295.295 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:27:39,339.339 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:27:39,341.341 INFO    ] No camera update needed
[2026-06-27 02:27:39,342.342 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:27:39,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:27:39,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:27:39,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:27:41,387.387 INFO    ] ================================================
[2026-06-27 02:27:41,403.403 INFO    ] Launching Daemon at Sat Jun 27 02:27:41 IST 2026
[2026-06-27 02:27:41,414.414 INFO    ] ================================================
[2026-06-27 02:27:41,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:27:41
[2026-06-27 02:27:42,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:27:42,245.245 INFO    ] Initializing speech engine...
[2026-06-27 02:27:42,250.250 INFO    ] 2026-06-27 02:27:42
[2026-06-27 02:27:42,455.455 INFO    ] 2026-06-27 02:27:42
[2026-06-27 02:27:42,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:27:42,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:27:42,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:27:42,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:27:42,904.904 INFO    ] time= 27/06/2026 02:27:42
[2026-06-27 02:27:42,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:27:42,911.911 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:27:42,977.977 INFO    ] No existing commands found in stream
[2026-06-27 02:27:47,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:27:47,991.991 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-27 02:27:51,842.842 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 02:27:51,844.844 INFO    ] Checking for system updates...
[2026-06-27 02:27:51,867.867 INFO    ] 200
[2026-06-27 02:27:51,869.869 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:27:51,902.902 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:27:51,904.904 INFO    ] No update needed
[2026-06-27 02:27:51,905.905 INFO    ] Checking for camera pi updates...
[2026-06-27 02:27:51,925.925 INFO    ] 200
[2026-06-27 02:27:51,927.927 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:27:51,950.950 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:27:52,003.003 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:27:52,004.004 INFO    ] No camera update needed
[2026-06-27 02:27:52,006.006 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:27:52,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:27:52,010.010 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:27:52,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:27:54,056.056 INFO    ] ================================================
[2026-06-27 02:27:54,072.072 INFO    ] Launching Daemon at Sat Jun 27 02:27:54 IST 2026
[2026-06-27 02:27:54,083.083 INFO    ] ================================================
[2026-06-27 02:27:54,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:27:54
[2026-06-27 02:27:54,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:27:54,906.906 INFO    ] Initializing speech engine...
[2026-06-27 02:27:54,911.911 INFO    ] 2026-06-27 02:27:54
[2026-06-27 02:27:55,105.105 INFO    ] 2026-06-27 02:27:55
[2026-06-27 02:27:55,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:27:55,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:27:55,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:27:55,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:27:55,575.575 INFO    ] time= 27/06/2026 02:27:55
[2026-06-27 02:27:55,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:27:55,631.631 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:27:55,708.708 INFO    ] No existing commands found in stream
[2026-06-27 02:28:00,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:28:00,721.721 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-27 02:28:02,692.692 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 02:28:02,694.694 INFO    ] Checking for system updates...
[2026-06-27 02:28:02,719.719 INFO    ] 200
[2026-06-27 02:28:02,720.720 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:28:02,760.760 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:28:02,762.762 INFO    ] No update needed
[2026-06-27 02:28:02,763.763 INFO    ] Checking for camera pi updates...
[2026-06-27 02:28:02,788.788 INFO    ] 200
[2026-06-27 02:28:02,791.791 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:28:02,818.818 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:28:02,844.844 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:28:02,846.846 INFO    ] No camera update needed
[2026-06-27 02:28:02,847.847 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:28:02,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:28:02,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:28:02,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:28:04,895.895 INFO    ] ================================================
[2026-06-27 02:28:04,911.911 INFO    ] Launching Daemon at Sat Jun 27 02:28:04 IST 2026
[2026-06-27 02:28:04,922.922 INFO    ] ================================================
[2026-06-27 02:28:05,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:28:05
[2026-06-27 02:28:05,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:28:05,735.735 INFO    ] Initializing speech engine...
[2026-06-27 02:28:05,741.741 INFO    ] 2026-06-27 02:28:05
[2026-06-27 02:28:05,941.941 INFO    ] 2026-06-27 02:28:05
[2026-06-27 02:28:05,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:28:06,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:28:06,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:28:06,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:28:06,409.409 INFO    ] time= 27/06/2026 02:28:06
[2026-06-27 02:28:06,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:28:06,421.421 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:28:06,487.487 INFO    ] No existing commands found in stream
[2026-06-27 02:28:11,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:28:11,500.500 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-27 02:28:15,604.604 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 02:28:15,605.605 INFO    ] Checking for system updates...
[2026-06-27 02:28:15,627.627 INFO    ] 200
[2026-06-27 02:28:15,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:28:15,662.662 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:28:15,663.663 INFO    ] No update needed
[2026-06-27 02:28:15,665.665 INFO    ] Checking for camera pi updates...
[2026-06-27 02:28:15,685.685 INFO    ] 200
[2026-06-27 02:28:15,687.687 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:28:15,710.710 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:28:15,750.750 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:28:15,751.751 INFO    ] No camera update needed
[2026-06-27 02:28:15,753.753 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:28:15,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:28:15,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:28:15,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:28:17,800.800 INFO    ] ================================================
[2026-06-27 02:28:17,816.816 INFO    ] Launching Daemon at Sat Jun 27 02:28:17 IST 2026
[2026-06-27 02:28:17,827.827 INFO    ] ================================================
[2026-06-27 02:28:18,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:28:18
[2026-06-27 02:28:18,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:28:18,727.727 INFO    ] Initializing speech engine...
[2026-06-27 02:28:18,733.733 INFO    ] 2026-06-27 02:28:18
[2026-06-27 02:28:18,944.944 INFO    ] 2026-06-27 02:28:18
[2026-06-27 02:28:19,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:28:19,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:28:19,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:28:19,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:28:19,301.301 INFO    ] time= 27/06/2026 02:28:19
[2026-06-27 02:28:19,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:28:19,304.304 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:28:19,401.401 INFO    ] No existing commands found in stream
[2026-06-27 02:28:24,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:28:24,418.418 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-27 02:28:27,378.378 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 02:28:27,380.380 INFO    ] Checking for system updates...
[2026-06-27 02:28:27,401.401 INFO    ] 200
[2026-06-27 02:28:27,402.402 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:28:27,433.433 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:28:27,435.435 INFO    ] No update needed
[2026-06-27 02:28:27,436.436 INFO    ] Checking for camera pi updates...
[2026-06-27 02:28:27,457.457 INFO    ] 200
[2026-06-27 02:28:27,459.459 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:28:27,487.487 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:28:27,542.542 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:28:27,544.544 INFO    ] No camera update needed
[2026-06-27 02:28:27,546.546 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:28:27,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:28:27,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:28:27,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:28:29,593.593 INFO    ] ================================================
[2026-06-27 02:28:29,608.608 INFO    ] Launching Daemon at Sat Jun 27 02:28:29 IST 2026
[2026-06-27 02:28:29,619.619 INFO    ] ================================================
[2026-06-27 02:28:30,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:28:30
[2026-06-27 02:28:30,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:28:30,511.511 INFO    ] Initializing speech engine...
[2026-06-27 02:28:30,515.515 INFO    ] 2026-06-27 02:28:30
[2026-06-27 02:28:30,721.721 INFO    ] 2026-06-27 02:28:30
[2026-06-27 02:28:30,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:28:30,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:28:30,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:28:31,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:28:31,165.165 INFO    ] time= 27/06/2026 02:28:31
[2026-06-27 02:28:31,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:28:31,173.173 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:28:31,239.239 INFO    ] No existing commands found in stream
[2026-06-27 02:28:36,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:28:36,257.257 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-27 02:28:40,549.549 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 02:28:40,551.551 INFO    ] Checking for system updates...
[2026-06-27 02:28:40,573.573 INFO    ] 200
[2026-06-27 02:28:40,575.575 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:28:40,612.612 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:28:40,613.613 INFO    ] No update needed
[2026-06-27 02:28:40,615.615 INFO    ] Checking for camera pi updates...
[2026-06-27 02:28:40,637.637 INFO    ] 200
[2026-06-27 02:28:40,638.638 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:28:40,664.664 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:28:40,708.708 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:28:40,710.710 INFO    ] No camera update needed
[2026-06-27 02:28:40,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:28:40,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:28:40,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:28:40,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:28:42,759.759 INFO    ] ================================================
[2026-06-27 02:28:42,774.774 INFO    ] Launching Daemon at Sat Jun 27 02:28:42 IST 2026
[2026-06-27 02:28:42,785.785 INFO    ] ================================================
[2026-06-27 02:28:43,124.124 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:28:43
[2026-06-27 02:28:43,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:28:43,587.587 INFO    ] Initializing speech engine...
[2026-06-27 02:28:43,591.591 INFO    ] 2026-06-27 02:28:43
[2026-06-27 02:28:43,796.796 INFO    ] 2026-06-27 02:28:43
[2026-06-27 02:28:43,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:28:44,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:28:44,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:28:44,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:28:44,213.213 INFO    ] time= 27/06/2026 02:28:44
[2026-06-27 02:28:44,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:28:44,246.246 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:28:44,313.313 INFO    ] No existing commands found in stream
[2026-06-27 02:28:49,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:28:49,330.330 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-27 02:28:52,511.511 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:28:52,512.512 INFO    ] Checking for system updates...
[2026-06-27 02:28:52,536.536 INFO    ] 200
[2026-06-27 02:28:52,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:28:52,574.574 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:28:52,575.575 INFO    ] No update needed
[2026-06-27 02:28:52,577.577 INFO    ] Checking for camera pi updates...
[2026-06-27 02:28:52,599.599 INFO    ] 200
[2026-06-27 02:28:52,601.601 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:28:52,625.625 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:28:52,675.675 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:28:52,676.676 INFO    ] No camera update needed
[2026-06-27 02:28:52,678.678 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:28:52,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:28:52,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:28:52,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:28:54,727.727 INFO    ] ================================================
[2026-06-27 02:28:54,743.743 INFO    ] Launching Daemon at Sat Jun 27 02:28:54 IST 2026
[2026-06-27 02:28:54,753.753 INFO    ] ================================================
[2026-06-27 02:28:55,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:28:55
[2026-06-27 02:28:55,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:28:55,637.637 INFO    ] Initializing speech engine...
[2026-06-27 02:28:55,641.641 INFO    ] 2026-06-27 02:28:55
[2026-06-27 02:28:55,850.850 INFO    ] 2026-06-27 02:28:55
[2026-06-27 02:28:55,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:28:56,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:28:56,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:28:56,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:28:56,292.292 INFO    ] time= 27/06/2026 02:28:56
[2026-06-27 02:28:56,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:28:56,300.300 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:28:56,366.366 INFO    ] No existing commands found in stream
[2026-06-27 02:29:01,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:29:01,377.377 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-27 02:29:02,721.721 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 02:29:02,724.724 INFO    ] Checking for system updates...
[2026-06-27 02:29:02,767.767 INFO    ] 200
[2026-06-27 02:29:02,770.770 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:29:02,801.801 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:29:02,803.803 INFO    ] No update needed
[2026-06-27 02:29:02,805.805 INFO    ] Checking for camera pi updates...
[2026-06-27 02:29:02,825.825 INFO    ] 200
[2026-06-27 02:29:02,827.827 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:29:02,852.852 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:29:02,878.878 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:29:02,880.880 INFO    ] No camera update needed
[2026-06-27 02:29:02,881.881 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:29:02,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:29:02,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:29:02,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:29:04,926.926 INFO    ] ================================================
[2026-06-27 02:29:04,941.941 INFO    ] Launching Daemon at Sat Jun 27 02:29:04 IST 2026
[2026-06-27 02:29:04,953.953 INFO    ] ================================================
[2026-06-27 02:29:05,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:29:05
[2026-06-27 02:29:05,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:29:05,761.761 INFO    ] Initializing speech engine...
[2026-06-27 02:29:05,767.767 INFO    ] 2026-06-27 02:29:05
[2026-06-27 02:29:05,972.972 INFO    ] 2026-06-27 02:29:05
[2026-06-27 02:29:06,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:29:06,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:29:06,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:29:06,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:29:06,394.394 INFO    ] time= 27/06/2026 02:29:06
[2026-06-27 02:29:06,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:29:06,423.423 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:29:06,490.490 INFO    ] No existing commands found in stream
[2026-06-27 02:29:11,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:29:11,502.502 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-27 02:29:13,240.240 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 02:29:13,241.241 INFO    ] Checking for system updates...
[2026-06-27 02:29:13,265.265 INFO    ] 200
[2026-06-27 02:29:13,266.266 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:29:13,298.298 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:29:13,299.299 INFO    ] No update needed
[2026-06-27 02:29:13,301.301 INFO    ] Checking for camera pi updates...
[2026-06-27 02:29:13,322.322 INFO    ] 200
[2026-06-27 02:29:13,323.323 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:29:13,348.348 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:29:13,391.391 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:29:13,392.392 INFO    ] No camera update needed
[2026-06-27 02:29:13,394.394 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:29:13,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:29:13,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:29:13,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:29:15,440.440 INFO    ] ================================================
[2026-06-27 02:29:15,456.456 INFO    ] Launching Daemon at Sat Jun 27 02:29:15 IST 2026
[2026-06-27 02:29:15,467.467 INFO    ] ================================================
[2026-06-27 02:29:15,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:29:15
[2026-06-27 02:29:16,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:29:16,345.345 INFO    ] Initializing speech engine...
[2026-06-27 02:29:16,355.355 INFO    ] 2026-06-27 02:29:16
[2026-06-27 02:29:16,568.568 INFO    ] 2026-06-27 02:29:16
[2026-06-27 02:29:16,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:29:16,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:29:16,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:29:16,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:29:17,017.017 INFO    ] time= 27/06/2026 02:29:16
[2026-06-27 02:29:17,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:29:17,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:29:17,093.093 INFO    ] No existing commands found in stream
[2026-06-27 02:29:22,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:29:22,107.107 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-27 02:29:24,722.722 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 02:29:24,724.724 INFO    ] Checking for system updates...
[2026-06-27 02:29:24,745.745 INFO    ] 200
[2026-06-27 02:29:24,747.747 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:29:24,778.778 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:29:24,779.779 INFO    ] No update needed
[2026-06-27 02:29:24,781.781 INFO    ] Checking for camera pi updates...
[2026-06-27 02:29:24,801.801 INFO    ] 200
[2026-06-27 02:29:24,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:29:24,826.826 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:29:24,867.867 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:29:24,869.869 INFO    ] No camera update needed
[2026-06-27 02:29:24,870.870 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:29:24,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:29:24,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:29:24,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:29:26,915.915 INFO    ] ================================================
[2026-06-27 02:29:26,930.930 INFO    ] Launching Daemon at Sat Jun 27 02:29:26 IST 2026
[2026-06-27 02:29:26,941.941 INFO    ] ================================================
[2026-06-27 02:29:27,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:29:27
[2026-06-27 02:29:27,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:29:27,746.746 INFO    ] Initializing speech engine...
[2026-06-27 02:29:27,757.757 INFO    ] 2026-06-27 02:29:27
[2026-06-27 02:29:27,963.963 INFO    ] 2026-06-27 02:29:27
[2026-06-27 02:29:27,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:29:28,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:29:28,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:29:28,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:29:28,389.389 INFO    ] time= 27/06/2026 02:29:28
[2026-06-27 02:29:28,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:29:28,419.419 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:29:28,486.486 INFO    ] No existing commands found in stream
[2026-06-27 02:29:33,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:29:33,503.503 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-27 02:29:36,934.934 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 02:29:36,935.935 INFO    ] Checking for system updates...
[2026-06-27 02:29:36,957.957 INFO    ] 200
[2026-06-27 02:29:36,959.959 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:29:36,992.992 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:29:36,993.993 INFO    ] No update needed
[2026-06-27 02:29:36,994.994 INFO    ] Checking for camera pi updates...
[2026-06-27 02:29:37,015.015 INFO    ] 200
[2026-06-27 02:29:37,017.017 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:29:37,041.041 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:29:37,085.085 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:29:37,086.086 INFO    ] No camera update needed
[2026-06-27 02:29:37,087.087 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:29:37,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:29:37,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:29:37,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:29:39,132.132 INFO    ] ================================================
[2026-06-27 02:29:39,147.147 INFO    ] Launching Daemon at Sat Jun 27 02:29:39 IST 2026
[2026-06-27 02:29:39,158.158 INFO    ] ================================================
[2026-06-27 02:29:39,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:29:39
[2026-06-27 02:29:39,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:29:39,949.949 INFO    ] Initializing speech engine...
[2026-06-27 02:29:39,959.959 INFO    ] 2026-06-27 02:29:39
[2026-06-27 02:29:40,164.164 INFO    ] 2026-06-27 02:29:40
[2026-06-27 02:29:40,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:29:40,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:29:40,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:29:40,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:29:40,604.604 INFO    ] time= 27/06/2026 02:29:40
[2026-06-27 02:29:40,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:29:40,611.611 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:29:40,676.676 INFO    ] No existing commands found in stream
[2026-06-27 02:29:45,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:29:45,689.689 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-27 02:29:47,515.515 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 02:29:47,516.516 INFO    ] Checking for system updates...
[2026-06-27 02:29:47,538.538 INFO    ] 200
[2026-06-27 02:29:47,539.539 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:29:47,575.575 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:29:47,576.576 INFO    ] No update needed
[2026-06-27 02:29:47,578.578 INFO    ] Checking for camera pi updates...
[2026-06-27 02:29:47,601.601 INFO    ] 200
[2026-06-27 02:29:47,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:29:47,628.628 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:29:47,676.676 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:29:47,678.678 INFO    ] No camera update needed
[2026-06-27 02:29:47,679.679 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:29:47,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:29:47,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:29:47,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:29:49,727.727 INFO    ] ================================================
[2026-06-27 02:29:49,743.743 INFO    ] Launching Daemon at Sat Jun 27 02:29:49 IST 2026
[2026-06-27 02:29:49,756.756 INFO    ] ================================================
[2026-06-27 02:29:50,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:29:50
[2026-06-27 02:29:50,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:29:50,615.615 INFO    ] Initializing speech engine...
[2026-06-27 02:29:50,619.619 INFO    ] 2026-06-27 02:29:50
[2026-06-27 02:29:50,827.827 INFO    ] 2026-06-27 02:29:50
[2026-06-27 02:29:50,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:29:51,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:29:51,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:29:51,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:29:51,244.244 INFO    ] time= 27/06/2026 02:29:51
[2026-06-27 02:29:51,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:29:51,278.278 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:29:51,368.368 INFO    ] No existing commands found in stream
[2026-06-27 02:29:56,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:29:56,380.380 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-27 02:29:59,902.902 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:29:59,904.904 INFO    ] Checking for system updates...
[2026-06-27 02:29:59,925.925 INFO    ] 200
[2026-06-27 02:29:59,926.926 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:29:59,957.957 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:29:59,959.959 INFO    ] No update needed
[2026-06-27 02:29:59,960.960 INFO    ] Checking for camera pi updates...
[2026-06-27 02:29:59,980.980 INFO    ] 200
[2026-06-27 02:29:59,982.982 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:30:00,007.007 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:30:00,050.050 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:30:00,052.052 INFO    ] No camera update needed
[2026-06-27 02:30:00,053.053 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:30:00,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:30:00,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:30:00,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:30:02,126.126 INFO    ] ================================================
[2026-06-27 02:30:02,178.178 INFO    ] Launching Daemon at Sat Jun 27 02:30:02 IST 2026
[2026-06-27 02:30:02,217.217 INFO    ] ================================================
[2026-06-27 02:30:02,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:30:02
[2026-06-27 02:30:03,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:30:03,393.393 INFO    ] Initializing speech engine...
[2026-06-27 02:30:03,398.398 INFO    ] 2026-06-27 02:30:03
[2026-06-27 02:30:03,615.615 INFO    ] 2026-06-27 02:30:03
[2026-06-27 02:30:03,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:30:03,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:30:03,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:30:04,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:30:04,048.048 INFO    ] time= 27/06/2026 02:30:04
[2026-06-27 02:30:04,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:30:04,077.077 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:30:04,145.145 INFO    ] No existing commands found in stream
[2026-06-27 02:30:09,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:30:09,168.168 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-27 02:30:12,265.265 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:30:12,267.267 INFO    ] Checking for system updates...
[2026-06-27 02:30:12,289.289 INFO    ] 200
[2026-06-27 02:30:12,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:30:12,325.325 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:30:12,327.327 INFO    ] No update needed
[2026-06-27 02:30:12,329.329 INFO    ] Checking for camera pi updates...
[2026-06-27 02:30:12,349.349 INFO    ] 200
[2026-06-27 02:30:12,350.350 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:30:12,374.374 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:30:12,515.515 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:30:12,516.516 INFO    ] No camera update needed
[2026-06-27 02:30:12,517.517 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:30:12,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:30:12,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:30:12,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:30:14,565.565 INFO    ] ================================================
[2026-06-27 02:30:14,581.581 INFO    ] Launching Daemon at Sat Jun 27 02:30:14 IST 2026
[2026-06-27 02:30:14,593.593 INFO    ] ================================================
[2026-06-27 02:30:14,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:30:14
[2026-06-27 02:30:15,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:30:15,395.395 INFO    ] Initializing speech engine...
[2026-06-27 02:30:15,406.406 INFO    ] 2026-06-27 02:30:15
[2026-06-27 02:30:15,629.629 INFO    ] 2026-06-27 02:30:15
[2026-06-27 02:30:15,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:30:15,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:30:15,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:30:16,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:30:16,060.060 INFO    ] time= 27/06/2026 02:30:16
[2026-06-27 02:30:16,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:30:16,105.105 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:30:16,197.197 INFO    ] No existing commands found in stream
[2026-06-27 02:30:21,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:30:21,209.209 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-27 02:30:21,723.723 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 02:30:21,724.724 INFO    ] Checking for system updates...
[2026-06-27 02:30:21,745.745 INFO    ] 200
[2026-06-27 02:30:21,746.746 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:30:21,776.776 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:30:21,778.778 INFO    ] No update needed
[2026-06-27 02:30:21,779.779 INFO    ] Checking for camera pi updates...
[2026-06-27 02:30:21,798.798 INFO    ] 200
[2026-06-27 02:30:21,800.800 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:30:21,825.825 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:30:21,869.869 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:30:21,871.871 INFO    ] No camera update needed
[2026-06-27 02:30:21,872.872 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:30:21,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:30:21,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:30:21,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:30:23,918.918 INFO    ] ================================================
[2026-06-27 02:30:23,933.933 INFO    ] Launching Daemon at Sat Jun 27 02:30:23 IST 2026
[2026-06-27 02:30:23,945.945 INFO    ] ================================================
[2026-06-27 02:30:24,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:30:24
[2026-06-27 02:30:24,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:30:24,754.754 INFO    ] Initializing speech engine...
[2026-06-27 02:30:24,763.763 INFO    ] 2026-06-27 02:30:24
[2026-06-27 02:30:24,970.970 INFO    ] 2026-06-27 02:30:24
[2026-06-27 02:30:24,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:30:25,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:30:25,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:30:25,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:30:25,375.375 INFO    ] time= 27/06/2026 02:30:25
[2026-06-27 02:30:25,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:30:25,419.419 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:30:25,486.486 INFO    ] No existing commands found in stream
[2026-06-27 02:30:30,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:30:30,498.498 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-27 02:30:32,302.302 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 02:30:32,304.304 INFO    ] Checking for system updates...
[2026-06-27 02:30:32,330.330 INFO    ] 200
[2026-06-27 02:30:32,332.332 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:30:32,375.375 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:30:32,377.377 INFO    ] No update needed
[2026-06-27 02:30:32,378.378 INFO    ] Checking for camera pi updates...
[2026-06-27 02:30:32,400.400 INFO    ] 200
[2026-06-27 02:30:32,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:30:32,430.430 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:30:32,457.457 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:30:32,459.459 INFO    ] No camera update needed
[2026-06-27 02:30:32,460.460 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:30:32,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:30:32,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:30:32,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:30:34,503.503 INFO    ] ================================================
[2026-06-27 02:30:34,519.519 INFO    ] Launching Daemon at Sat Jun 27 02:30:34 IST 2026
[2026-06-27 02:30:34,531.531 INFO    ] ================================================
[2026-06-27 02:30:34,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:30:34
[2026-06-27 02:30:35,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:30:35,329.329 INFO    ] Initializing speech engine...
[2026-06-27 02:30:35,335.335 INFO    ] 2026-06-27 02:30:35
[2026-06-27 02:30:35,538.538 INFO    ] 2026-06-27 02:30:35
[2026-06-27 02:30:35,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:30:35,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:30:35,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:30:35,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:30:35,959.959 INFO    ] time= 27/06/2026 02:30:35
[2026-06-27 02:30:35,984.984 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:30:35,989.989 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:30:36,057.057 INFO    ] No existing commands found in stream
[2026-06-27 02:30:41,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:30:41,079.079 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-27 02:30:45,136.136 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 02:30:45,138.138 INFO    ] Checking for system updates...
[2026-06-27 02:30:45,159.159 INFO    ] 200
[2026-06-27 02:30:45,161.161 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:30:45,191.191 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:30:45,193.193 INFO    ] No update needed
[2026-06-27 02:30:45,194.194 INFO    ] Checking for camera pi updates...
[2026-06-27 02:30:45,214.214 INFO    ] 200
[2026-06-27 02:30:45,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:30:45,238.238 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:30:45,285.285 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:30:45,287.287 INFO    ] No camera update needed
[2026-06-27 02:30:45,288.288 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:30:45,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:30:45,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:30:45,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:30:47,335.335 INFO    ] ================================================
[2026-06-27 02:30:47,350.350 INFO    ] Launching Daemon at Sat Jun 27 02:30:47 IST 2026
[2026-06-27 02:30:47,362.362 INFO    ] ================================================
[2026-06-27 02:30:47,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:30:47
[2026-06-27 02:30:48,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:30:48,230.230 INFO    ] Initializing speech engine...
[2026-06-27 02:30:48,234.234 INFO    ] 2026-06-27 02:30:48
[2026-06-27 02:30:48,445.445 INFO    ] 2026-06-27 02:30:48
[2026-06-27 02:30:48,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:30:48,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:30:48,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:30:48,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:30:48,888.888 INFO    ] time= 27/06/2026 02:30:48
[2026-06-27 02:30:48,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:30:48,896.896 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:30:48,963.963 INFO    ] No existing commands found in stream
[2026-06-27 02:30:53,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:30:53,980.980 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-27 02:30:56,712.712 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 02:30:56,714.714 INFO    ] Checking for system updates...
[2026-06-27 02:30:56,735.735 INFO    ] 200
[2026-06-27 02:30:56,736.736 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:30:56,772.772 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:30:56,773.773 INFO    ] No update needed
[2026-06-27 02:30:56,774.774 INFO    ] Checking for camera pi updates...
[2026-06-27 02:30:56,796.796 INFO    ] 200
[2026-06-27 02:30:56,797.797 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:30:56,822.822 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:30:56,863.863 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:30:56,864.864 INFO    ] No camera update needed
[2026-06-27 02:30:56,866.866 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:30:56,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:30:56,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:30:56,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:30:58,910.910 INFO    ] ================================================
[2026-06-27 02:30:58,927.927 INFO    ] Launching Daemon at Sat Jun 27 02:30:58 IST 2026
[2026-06-27 02:30:58,937.937 INFO    ] ================================================
[2026-06-27 02:30:59,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:30:59
[2026-06-27 02:30:59,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:30:59,719.719 INFO    ] Initializing speech engine...
[2026-06-27 02:30:59,723.723 INFO    ] 2026-06-27 02:30:59
[2026-06-27 02:30:59,941.941 INFO    ] 2026-06-27 02:30:59
[2026-06-27 02:30:59,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:31:00,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:31:00,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:31:00,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:31:00,312.312 INFO    ] time= 27/06/2026 02:31:00
[2026-06-27 02:31:00,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:31:00,381.381 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:31:00,460.460 INFO    ] No existing commands found in stream
[2026-06-27 02:31:05,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:31:05,472.472 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-27 02:31:07,401.401 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 02:31:07,403.403 INFO    ] Checking for system updates...
[2026-06-27 02:31:07,424.424 INFO    ] 200
[2026-06-27 02:31:07,425.425 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:31:07,456.456 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:31:07,458.458 INFO    ] No update needed
[2026-06-27 02:31:07,459.459 INFO    ] Checking for camera pi updates...
[2026-06-27 02:31:07,478.478 INFO    ] 200
[2026-06-27 02:31:07,479.479 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:31:07,507.507 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:31:07,550.550 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:31:07,552.552 INFO    ] No camera update needed
[2026-06-27 02:31:07,553.553 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:31:07,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:31:07,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:31:07,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:31:09,598.598 INFO    ] ================================================
[2026-06-27 02:31:09,613.613 INFO    ] Launching Daemon at Sat Jun 27 02:31:09 IST 2026
[2026-06-27 02:31:09,624.624 INFO    ] ================================================
[2026-06-27 02:31:09,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:31:09
[2026-06-27 02:31:10,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:31:10,474.474 INFO    ] Initializing speech engine...
[2026-06-27 02:31:10,483.483 INFO    ] 2026-06-27 02:31:10
[2026-06-27 02:31:10,697.697 INFO    ] 2026-06-27 02:31:10
[2026-06-27 02:31:10,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:31:10,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:31:10,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:31:11,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:31:11,120.120 INFO    ] time= 27/06/2026 02:31:11
[2026-06-27 02:31:11,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:31:11,157.157 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:31:11,253.253 INFO    ] No existing commands found in stream
[2026-06-27 02:31:16,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:31:16,266.266 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-27 02:31:17,314.314 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 02:31:17,316.316 INFO    ] Checking for system updates...
[2026-06-27 02:31:17,337.337 INFO    ] 200
[2026-06-27 02:31:17,339.339 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:31:17,372.372 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:31:17,373.373 INFO    ] No update needed
[2026-06-27 02:31:17,374.374 INFO    ] Checking for camera pi updates...
[2026-06-27 02:31:17,396.396 INFO    ] 200
[2026-06-27 02:31:17,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:31:17,423.423 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:31:17,466.466 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:31:17,467.467 INFO    ] No camera update needed
[2026-06-27 02:31:17,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:31:17,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:31:17,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:31:17,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:31:19,514.514 INFO    ] ================================================
[2026-06-27 02:31:19,529.529 INFO    ] Launching Daemon at Sat Jun 27 02:31:19 IST 2026
[2026-06-27 02:31:19,540.540 INFO    ] ================================================
[2026-06-27 02:31:19,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:31:19
[2026-06-27 02:31:20,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:31:20,309.309 INFO    ] Initializing speech engine...
[2026-06-27 02:31:20,313.313 INFO    ] 2026-06-27 02:31:20
[2026-06-27 02:31:20,544.544 INFO    ] 2026-06-27 02:31:20
[2026-06-27 02:31:20,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:31:20,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:31:20,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:31:20,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:31:20,971.971 INFO    ] time= 27/06/2026 02:31:20
[2026-06-27 02:31:21,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:31:21,028.028 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:31:21,104.104 INFO    ] No existing commands found in stream
[2026-06-27 02:31:26,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:31:26,118.118 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-27 02:31:28,737.737 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 02:31:28,739.739 INFO    ] Checking for system updates...
[2026-06-27 02:31:28,761.761 INFO    ] 200
[2026-06-27 02:31:28,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:31:28,793.793 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:31:28,795.795 INFO    ] No update needed
[2026-06-27 02:31:28,796.796 INFO    ] Checking for camera pi updates...
[2026-06-27 02:31:28,817.817 INFO    ] 200
[2026-06-27 02:31:28,818.818 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:31:28,843.843 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:31:28,887.887 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:31:28,888.888 INFO    ] No camera update needed
[2026-06-27 02:31:28,889.889 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:31:28,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:31:28,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:31:28,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:31:30,935.935 INFO    ] ================================================
[2026-06-27 02:31:30,950.950 INFO    ] Launching Daemon at Sat Jun 27 02:31:30 IST 2026
[2026-06-27 02:31:30,961.961 INFO    ] ================================================
[2026-06-27 02:31:31,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:31:31
[2026-06-27 02:31:31,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:31:31,875.875 INFO    ] Initializing speech engine...
[2026-06-27 02:31:31,886.886 INFO    ] 2026-06-27 02:31:31
[2026-06-27 02:31:32,120.120 INFO    ] 2026-06-27 02:31:32
[2026-06-27 02:31:32,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:31:32,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:31:32,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:31:32,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:31:32,704.704 INFO    ] time= 27/06/2026 02:31:32
[2026-06-27 02:31:32,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:31:32,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:31:32,781.781 INFO    ] No existing commands found in stream
[2026-06-27 02:31:37,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:31:37,794.794 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-27 02:31:41,679.679 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 02:31:41,681.681 INFO    ] Checking for system updates...
[2026-06-27 02:31:41,703.703 INFO    ] 200
[2026-06-27 02:31:41,705.705 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:31:41,736.736 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:31:41,737.737 INFO    ] No update needed
[2026-06-27 02:31:41,739.739 INFO    ] Checking for camera pi updates...
[2026-06-27 02:31:41,760.760 INFO    ] 200
[2026-06-27 02:31:41,761.761 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:31:41,784.784 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:31:41,829.829 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:31:41,831.831 INFO    ] No camera update needed
[2026-06-27 02:31:41,832.832 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:31:41,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:31:41,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:31:41,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:31:43,877.877 INFO    ] ================================================
[2026-06-27 02:31:43,892.892 INFO    ] Launching Daemon at Sat Jun 27 02:31:43 IST 2026
[2026-06-27 02:31:43,903.903 INFO    ] ================================================
[2026-06-27 02:31:44,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:31:44
[2026-06-27 02:31:44,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:31:44,744.744 INFO    ] Initializing speech engine...
[2026-06-27 02:31:44,750.750 INFO    ] 2026-06-27 02:31:44
[2026-06-27 02:31:44,961.961 INFO    ] 2026-06-27 02:31:44
[2026-06-27 02:31:44,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:31:45,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:31:45,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:31:45,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:31:45,383.383 INFO    ] time= 27/06/2026 02:31:45
[2026-06-27 02:31:45,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:31:45,411.411 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:31:45,502.502 INFO    ] No existing commands found in stream
[2026-06-27 02:31:50,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:31:50,520.520 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-27 02:31:51,783.783 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 02:31:51,785.785 INFO    ] Checking for system updates...
[2026-06-27 02:31:51,808.808 INFO    ] 200
[2026-06-27 02:31:51,810.810 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:31:51,846.846 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:31:51,848.848 INFO    ] No update needed
[2026-06-27 02:31:51,849.849 INFO    ] Checking for camera pi updates...
[2026-06-27 02:31:51,870.870 INFO    ] 200
[2026-06-27 02:31:51,872.872 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:31:51,900.900 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:31:51,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:31:51,941.941 INFO    ] No camera update needed
[2026-06-27 02:31:51,943.943 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:31:51,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:31:51,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:31:51,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:31:54,995.995 INFO    ] ================================================
[2026-06-27 02:31:54,010.010 INFO    ] Launching Daemon at Sat Jun 27 02:31:54 IST 2026
[2026-06-27 02:31:54,022.022 INFO    ] ================================================
[2026-06-27 02:31:54,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:31:54
[2026-06-27 02:31:54,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:31:54,833.833 INFO    ] Initializing speech engine...
[2026-06-27 02:31:54,838.838 INFO    ] 2026-06-27 02:31:54
[2026-06-27 02:31:55,057.057 INFO    ] 2026-06-27 02:31:55
[2026-06-27 02:31:55,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:31:55,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:31:55,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:31:55,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:31:55,480.480 INFO    ] time= 27/06/2026 02:31:55
[2026-06-27 02:31:55,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:31:55,511.511 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:31:55,602.602 INFO    ] No existing commands found in stream
[2026-06-27 02:32:00,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:32:00,619.619 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-27 02:32:02,977.977 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 02:32:02,978.978 INFO    ] Checking for system updates...
[2026-06-27 02:32:03,002.002 INFO    ] 200
[2026-06-27 02:32:03,004.004 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:32:03,034.034 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:32:03,036.036 INFO    ] No update needed
[2026-06-27 02:32:03,037.037 INFO    ] Checking for camera pi updates...
[2026-06-27 02:32:03,056.056 INFO    ] 200
[2026-06-27 02:32:03,058.058 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:32:03,081.081 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:32:03,109.109 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:32:03,110.110 INFO    ] No camera update needed
[2026-06-27 02:32:03,111.111 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:32:03,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:32:03,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:32:03,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:32:05,157.157 INFO    ] ================================================
[2026-06-27 02:32:05,173.173 INFO    ] Launching Daemon at Sat Jun 27 02:32:05 IST 2026
[2026-06-27 02:32:05,183.183 INFO    ] ================================================
[2026-06-27 02:32:05,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:32:05
[2026-06-27 02:32:05,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:32:06,033.033 INFO    ] Initializing speech engine...
[2026-06-27 02:32:06,037.037 INFO    ] 2026-06-27 02:32:06
[2026-06-27 02:32:06,244.244 INFO    ] 2026-06-27 02:32:06
[2026-06-27 02:32:06,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:32:06,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:32:06,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:32:06,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:32:06,689.689 INFO    ] time= 27/06/2026 02:32:06
[2026-06-27 02:32:06,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:32:06,696.696 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:32:06,763.763 INFO    ] No existing commands found in stream
[2026-06-27 02:32:11,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:32:13,067.067 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-27 02:32:14,149.149 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 02:32:14,150.150 INFO    ] Checking for system updates...
[2026-06-27 02:32:14,171.171 INFO    ] 200
[2026-06-27 02:32:14,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:32:16,346.346 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:32:16,349.349 INFO    ] No update needed
[2026-06-27 02:32:16,355.355 INFO    ] Checking for camera pi updates...
[2026-06-27 02:32:16,378.378 INFO    ] 200
[2026-06-27 02:32:16,380.380 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:32:16,403.403 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:32:16,540.540 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:32:16,542.542 INFO    ] No camera update needed
[2026-06-27 02:32:16,543.543 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:32:16,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:32:16,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:32:16,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:32:18,590.590 INFO    ] ================================================
[2026-06-27 02:32:18,606.606 INFO    ] Launching Daemon at Sat Jun 27 02:32:18 IST 2026
[2026-06-27 02:32:18,617.617 INFO    ] ================================================
[2026-06-27 02:32:19,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:32:18
[2026-06-27 02:32:19,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:32:19,499.499 INFO    ] Initializing speech engine...
[2026-06-27 02:32:19,504.504 INFO    ] 2026-06-27 02:32:19
[2026-06-27 02:32:19,695.695 INFO    ] 2026-06-27 02:32:19
[2026-06-27 02:32:19,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:32:19,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:32:19,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:32:20,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:32:20,171.171 INFO    ] time= 27/06/2026 02:32:20
[2026-06-27 02:32:20,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:32:20,179.179 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:32:20,246.246 INFO    ] No existing commands found in stream
[2026-06-27 02:32:25,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:32:25,260.260 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-27 02:32:28,285.285 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 02:32:28,286.286 INFO    ] Checking for system updates...
[2026-06-27 02:32:28,309.309 INFO    ] 200
[2026-06-27 02:32:28,310.310 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:32:28,347.347 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:32:28,349.349 INFO    ] No update needed
[2026-06-27 02:32:28,350.350 INFO    ] Checking for camera pi updates...
[2026-06-27 02:32:28,374.374 INFO    ] 200
[2026-06-27 02:32:28,375.375 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:32:28,401.401 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:32:28,453.453 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:32:28,455.455 INFO    ] No camera update needed
[2026-06-27 02:32:28,456.456 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:32:28,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:32:28,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:32:28,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:32:30,500.500 INFO    ] ================================================
[2026-06-27 02:32:30,508.508 INFO    ] Launching Daemon at Sat Jun 27 02:32:30 IST 2026
[2026-06-27 02:32:30,514.514 INFO    ] ================================================
[2026-06-27 02:32:30,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:32:30
[2026-06-27 02:32:31,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:32:31,382.382 INFO    ] Initializing speech engine...
[2026-06-27 02:32:31,390.390 INFO    ] 2026-06-27 02:32:31
[2026-06-27 02:32:31,650.650 INFO    ] 2026-06-27 02:32:31
[2026-06-27 02:32:31,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:32:32,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:32:32,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:32:32,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:32:32,800.800 INFO    ] time= 27/06/2026 02:32:32
[2026-06-27 02:32:32,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:32:32,854.854 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:32:32,910.910 INFO    ] No existing commands found in stream
[2026-06-27 02:32:37,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:32:37,924.924 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-27 02:32:41,604.604 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:32:41,606.606 INFO    ] Checking for system updates...
[2026-06-27 02:32:41,627.627 INFO    ] 200
[2026-06-27 02:32:41,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:32:41,662.662 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:32:41,664.664 INFO    ] No update needed
[2026-06-27 02:32:41,665.665 INFO    ] Checking for camera pi updates...
[2026-06-27 02:32:41,685.685 INFO    ] 200
[2026-06-27 02:32:41,687.687 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:32:41,712.712 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:32:41,749.749 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:32:41,750.750 INFO    ] No camera update needed
[2026-06-27 02:32:41,752.752 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:32:41,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:32:41,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:32:41,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:32:43,806.806 INFO    ] ================================================
[2026-06-27 02:32:43,822.822 INFO    ] Launching Daemon at Sat Jun 27 02:32:43 IST 2026
[2026-06-27 02:32:43,832.832 INFO    ] ================================================
[2026-06-27 02:32:44,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:32:44
[2026-06-27 02:32:44,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:32:44,692.692 INFO    ] Initializing speech engine...
[2026-06-27 02:32:44,700.700 INFO    ] 2026-06-27 02:32:44
[2026-06-27 02:32:44,916.916 INFO    ] 2026-06-27 02:32:44
[2026-06-27 02:32:44,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:32:45,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:32:45,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:32:45,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:32:45,355.355 INFO    ] time= 27/06/2026 02:32:45
[2026-06-27 02:32:45,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:32:45,362.362 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:32:45,453.453 INFO    ] No existing commands found in stream
[2026-06-27 02:32:50,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:32:50,475.475 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-27 02:32:54,617.617 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 02:32:54,619.619 INFO    ] Checking for system updates...
[2026-06-27 02:32:54,640.640 INFO    ] 200
[2026-06-27 02:32:54,642.642 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:32:54,672.672 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:32:54,674.674 INFO    ] No update needed
[2026-06-27 02:32:54,675.675 INFO    ] Checking for camera pi updates...
[2026-06-27 02:32:54,698.698 INFO    ] 200
[2026-06-27 02:32:54,699.699 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:32:54,730.730 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:32:54,758.758 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:32:54,760.760 INFO    ] No camera update needed
[2026-06-27 02:32:54,761.761 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:32:54,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:32:54,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:32:54,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:32:56,810.810 INFO    ] ================================================
[2026-06-27 02:32:56,826.826 INFO    ] Launching Daemon at Sat Jun 27 02:32:56 IST 2026
[2026-06-27 02:32:56,836.836 INFO    ] ================================================
[2026-06-27 02:32:57,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:32:57
[2026-06-27 02:32:57,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:32:57,653.653 INFO    ] Initializing speech engine...
[2026-06-27 02:32:57,658.658 INFO    ] 2026-06-27 02:32:57
[2026-06-27 02:32:57,863.863 INFO    ] 2026-06-27 02:32:57
[2026-06-27 02:32:57,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:32:58,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:32:58,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:32:58,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:32:58,286.286 INFO    ] time= 27/06/2026 02:32:58
[2026-06-27 02:32:58,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:32:58,315.315 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:32:58,406.406 INFO    ] No existing commands found in stream
[2026-06-27 02:33:03,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:33:03,421.421 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-27 02:33:04,139.139 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 02:33:04,141.141 INFO    ] Checking for system updates...
[2026-06-27 02:33:04,162.162 INFO    ] 200
[2026-06-27 02:33:04,163.163 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:33:04,195.195 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:33:04,196.196 INFO    ] No update needed
[2026-06-27 02:33:04,198.198 INFO    ] Checking for camera pi updates...
[2026-06-27 02:33:04,218.218 INFO    ] 200
[2026-06-27 02:33:04,219.219 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:33:04,243.243 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:33:04,289.289 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:33:04,291.291 INFO    ] No camera update needed
[2026-06-27 02:33:04,292.292 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:33:04,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:33:04,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:33:04,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:33:06,342.342 INFO    ] ================================================
[2026-06-27 02:33:06,358.358 INFO    ] Launching Daemon at Sat Jun 27 02:33:06 IST 2026
[2026-06-27 02:33:06,369.369 INFO    ] ================================================
[2026-06-27 02:33:06,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:33:06
[2026-06-27 02:33:07,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:33:07,164.164 INFO    ] Initializing speech engine...
[2026-06-27 02:33:07,176.176 INFO    ] 2026-06-27 02:33:07
[2026-06-27 02:33:07,382.382 INFO    ] 2026-06-27 02:33:07
[2026-06-27 02:33:07,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:33:07,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:33:07,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:33:07,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:33:07,786.786 INFO    ] time= 27/06/2026 02:33:07
[2026-06-27 02:33:07,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:33:07,855.855 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:33:07,970.970 INFO    ] No existing commands found in stream
[2026-06-27 02:33:12,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:33:12,988.988 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-27 02:33:13,370.370 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 02:33:13,372.372 INFO    ] Checking for system updates...
[2026-06-27 02:33:13,393.393 INFO    ] 200
[2026-06-27 02:33:13,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:33:13,428.428 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:33:13,429.429 INFO    ] No update needed
[2026-06-27 02:33:13,430.430 INFO    ] Checking for camera pi updates...
[2026-06-27 02:33:13,451.451 INFO    ] 200
[2026-06-27 02:33:13,453.453 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:33:13,478.478 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:33:13,518.518 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:33:13,519.519 INFO    ] No camera update needed
[2026-06-27 02:33:13,520.520 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:33:13,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:33:13,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:33:13,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:33:15,567.567 INFO    ] ================================================
[2026-06-27 02:33:15,582.582 INFO    ] Launching Daemon at Sat Jun 27 02:33:15 IST 2026
[2026-06-27 02:33:15,593.593 INFO    ] ================================================
[2026-06-27 02:33:15,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:33:15
[2026-06-27 02:33:16,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:33:16,398.398 INFO    ] Initializing speech engine...
[2026-06-27 02:33:16,402.402 INFO    ] 2026-06-27 02:33:16
[2026-06-27 02:33:16,597.597 INFO    ] 2026-06-27 02:33:16
[2026-06-27 02:33:16,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:33:16,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:33:16,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:33:16,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:33:17,019.019 INFO    ] time= 27/06/2026 02:33:16
[2026-06-27 02:33:17,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:33:17,088.088 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:33:17,161.161 INFO    ] No existing commands found in stream
[2026-06-27 02:33:22,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:33:22,173.173 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-27 02:33:23,640.640 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:33:23,641.641 INFO    ] Checking for system updates...
[2026-06-27 02:33:23,663.663 INFO    ] 200
[2026-06-27 02:33:23,665.665 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:33:23,697.697 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:33:23,699.699 INFO    ] No update needed
[2026-06-27 02:33:23,700.700 INFO    ] Checking for camera pi updates...
[2026-06-27 02:33:23,720.720 INFO    ] 200
[2026-06-27 02:33:23,721.721 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:33:23,745.745 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:33:23,791.791 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:33:23,792.792 INFO    ] No camera update needed
[2026-06-27 02:33:23,793.793 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:33:23,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:33:23,797.797 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:33:23,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:33:25,840.840 INFO    ] ================================================
[2026-06-27 02:33:25,855.855 INFO    ] Launching Daemon at Sat Jun 27 02:33:25 IST 2026
[2026-06-27 02:33:25,865.865 INFO    ] ================================================
[2026-06-27 02:33:26,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:33:26
[2026-06-27 02:33:26,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:33:26,748.748 INFO    ] Initializing speech engine...
[2026-06-27 02:33:26,752.752 INFO    ] 2026-06-27 02:33:26
[2026-06-27 02:33:26,964.964 INFO    ] 2026-06-27 02:33:26
[2026-06-27 02:33:26,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:33:27,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:33:27,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:33:27,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:33:27,406.406 INFO    ] time= 27/06/2026 02:33:27
[2026-06-27 02:33:27,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:33:27,414.414 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:33:27,482.482 INFO    ] No existing commands found in stream
[2026-06-27 02:33:32,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:33:32,488.488 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-27 02:33:33,527.527 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:33:33,529.529 INFO    ] Checking for system updates...
[2026-06-27 02:33:33,550.550 INFO    ] 200
[2026-06-27 02:33:33,551.551 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:33:33,582.582 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:33:33,584.584 INFO    ] No update needed
[2026-06-27 02:33:33,585.585 INFO    ] Checking for camera pi updates...
[2026-06-27 02:33:33,605.605 INFO    ] 200
[2026-06-27 02:33:33,606.606 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:33:33,629.629 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:33:33,675.675 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:33:33,677.677 INFO    ] No camera update needed
[2026-06-27 02:33:33,678.678 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:33:33,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:33:33,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:33:33,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:33:35,727.727 INFO    ] ================================================
[2026-06-27 02:33:35,742.742 INFO    ] Launching Daemon at Sat Jun 27 02:33:35 IST 2026
[2026-06-27 02:33:35,753.753 INFO    ] ================================================
[2026-06-27 02:33:36,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:33:36
[2026-06-27 02:33:36,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:33:36,533.533 INFO    ] Initializing speech engine...
[2026-06-27 02:33:36,538.538 INFO    ] 2026-06-27 02:33:36
[2026-06-27 02:33:36,759.759 INFO    ] 2026-06-27 02:33:36
[2026-06-27 02:33:36,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:33:36,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:33:36,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:33:37,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:33:37,204.204 INFO    ] time= 27/06/2026 02:33:37
[2026-06-27 02:33:37,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:33:37,210.210 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:33:37,277.277 INFO    ] No existing commands found in stream
[2026-06-27 02:33:42,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:33:42,289.289 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-27 02:33:43,730.730 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 02:33:43,731.731 INFO    ] Checking for system updates...
[2026-06-27 02:33:43,753.753 INFO    ] 200
[2026-06-27 02:33:43,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:33:43,787.787 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:33:43,788.788 INFO    ] No update needed
[2026-06-27 02:33:43,789.789 INFO    ] Checking for camera pi updates...
[2026-06-27 02:33:43,810.810 INFO    ] 200
[2026-06-27 02:33:43,811.811 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:33:43,835.835 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:33:43,876.876 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:33:43,877.877 INFO    ] No camera update needed
[2026-06-27 02:33:43,879.879 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:33:43,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:33:43,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:33:43,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:33:45,926.926 INFO    ] ================================================
[2026-06-27 02:33:45,940.940 INFO    ] Launching Daemon at Sat Jun 27 02:33:45 IST 2026
[2026-06-27 02:33:45,951.951 INFO    ] ================================================
[2026-06-27 02:33:46,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:33:46
[2026-06-27 02:33:46,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:33:46,734.734 INFO    ] Initializing speech engine...
[2026-06-27 02:33:46,737.737 INFO    ] 2026-06-27 02:33:46
[2026-06-27 02:33:46,958.958 INFO    ] 2026-06-27 02:33:46
[2026-06-27 02:33:46,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:33:47,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:33:47,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:33:47,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:33:47,368.368 INFO    ] time= 27/06/2026 02:33:47
[2026-06-27 02:33:47,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:33:47,425.425 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:33:47,527.527 INFO    ] No existing commands found in stream
[2026-06-27 02:33:52,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:33:52,545.545 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-27 02:33:55,554.554 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 02:33:55,556.556 INFO    ] Checking for system updates...
[2026-06-27 02:33:55,577.577 INFO    ] 200
[2026-06-27 02:33:55,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:33:55,609.609 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:33:55,611.611 INFO    ] No update needed
[2026-06-27 02:33:55,613.613 INFO    ] Checking for camera pi updates...
[2026-06-27 02:33:55,632.632 INFO    ] 200
[2026-06-27 02:33:55,634.634 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:33:55,658.658 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:33:55,698.698 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:33:55,699.699 INFO    ] No camera update needed
[2026-06-27 02:33:55,701.701 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:33:55,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:33:55,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:33:55,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:33:57,746.746 INFO    ] ================================================
[2026-06-27 02:33:57,761.761 INFO    ] Launching Daemon at Sat Jun 27 02:33:57 IST 2026
[2026-06-27 02:33:57,772.772 INFO    ] ================================================
[2026-06-27 02:33:58,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:33:58
[2026-06-27 02:33:58,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:33:58,634.634 INFO    ] Initializing speech engine...
[2026-06-27 02:33:58,640.640 INFO    ] 2026-06-27 02:33:58
[2026-06-27 02:33:58,850.850 INFO    ] 2026-06-27 02:33:58
[2026-06-27 02:33:58,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:33:59,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:33:59,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:33:59,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:33:59,298.298 INFO    ] time= 27/06/2026 02:33:59
[2026-06-27 02:33:59,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:33:59,306.306 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:33:59,373.373 INFO    ] No existing commands found in stream
[2026-06-27 02:34:04,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:34:04,387.387 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-27 02:34:07,375.375 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 02:34:07,376.376 INFO    ] Checking for system updates...
[2026-06-27 02:34:07,399.399 INFO    ] 200
[2026-06-27 02:34:07,400.400 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:34:07,431.431 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:34:07,432.432 INFO    ] No update needed
[2026-06-27 02:34:07,434.434 INFO    ] Checking for camera pi updates...
[2026-06-27 02:34:07,453.453 INFO    ] 200
[2026-06-27 02:34:07,455.455 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:34:07,480.480 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:34:07,524.524 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:34:07,525.525 INFO    ] No camera update needed
[2026-06-27 02:34:07,527.527 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:34:07,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:34:07,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:34:07,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:34:09,572.572 INFO    ] ================================================
[2026-06-27 02:34:09,588.588 INFO    ] Launching Daemon at Sat Jun 27 02:34:09 IST 2026
[2026-06-27 02:34:09,598.598 INFO    ] ================================================
[2026-06-27 02:34:09,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:34:09
[2026-06-27 02:34:10,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:34:10,386.386 INFO    ] Initializing speech engine...
[2026-06-27 02:34:10,395.395 INFO    ] 2026-06-27 02:34:10
[2026-06-27 02:34:10,604.604 INFO    ] 2026-06-27 02:34:10
[2026-06-27 02:34:10,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:34:10,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:34:10,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:34:10,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:34:11,026.026 INFO    ] time= 27/06/2026 02:34:10
[2026-06-27 02:34:11,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:34:11,058.058 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:34:11,154.154 INFO    ] No existing commands found in stream
[2026-06-27 02:34:16,163.163 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:34:16,166.166 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-27 02:34:19,334.334 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 02:34:19,335.335 INFO    ] Checking for system updates...
[2026-06-27 02:34:19,357.357 INFO    ] 200
[2026-06-27 02:34:19,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:34:19,388.388 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:34:19,390.390 INFO    ] No update needed
[2026-06-27 02:34:19,391.391 INFO    ] Checking for camera pi updates...
[2026-06-27 02:34:19,410.410 INFO    ] 200
[2026-06-27 02:34:19,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:34:19,438.438 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:34:19,576.576 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:34:19,578.578 INFO    ] No camera update needed
[2026-06-27 02:34:19,579.579 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:34:19,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:34:19,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:34:19,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:34:21,624.624 INFO    ] ================================================
[2026-06-27 02:34:21,639.639 INFO    ] Launching Daemon at Sat Jun 27 02:34:21 IST 2026
[2026-06-27 02:34:21,650.650 INFO    ] ================================================
[2026-06-27 02:34:22,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:34:22
[2026-06-27 02:34:22,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:34:22,488.488 INFO    ] Initializing speech engine...
[2026-06-27 02:34:22,495.495 INFO    ] 2026-06-27 02:34:22
[2026-06-27 02:34:22,706.706 INFO    ] 2026-06-27 02:34:22
[2026-06-27 02:34:22,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:34:22,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:34:22,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:34:23,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:34:23,152.152 INFO    ] time= 27/06/2026 02:34:23
[2026-06-27 02:34:23,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:34:23,160.160 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:34:23,252.252 INFO    ] No existing commands found in stream
[2026-06-27 02:34:28,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:34:28,279.279 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-27 02:34:28,801.801 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 02:34:28,802.802 INFO    ] Checking for system updates...
[2026-06-27 02:34:28,824.824 INFO    ] 200
[2026-06-27 02:34:28,826.826 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:34:28,856.856 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:34:28,857.857 INFO    ] No update needed
[2026-06-27 02:34:28,858.858 INFO    ] Checking for camera pi updates...
[2026-06-27 02:34:28,879.879 INFO    ] 200
[2026-06-27 02:34:28,880.880 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:34:28,905.905 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:34:28,954.954 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:34:28,956.956 INFO    ] No camera update needed
[2026-06-27 02:34:28,957.957 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:34:28,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:34:28,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:34:28,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:34:31,002.002 INFO    ] ================================================
[2026-06-27 02:34:31,017.017 INFO    ] Launching Daemon at Sat Jun 27 02:34:31 IST 2026
[2026-06-27 02:34:31,028.028 INFO    ] ================================================
[2026-06-27 02:34:31,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:34:31
[2026-06-27 02:34:31,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:34:31,953.953 INFO    ] Initializing speech engine...
[2026-06-27 02:34:31,960.960 INFO    ] 2026-06-27 02:34:31
[2026-06-27 02:34:32,179.179 INFO    ] 2026-06-27 02:34:32
[2026-06-27 02:34:32,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:34:32,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:34:32,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:34:32,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:34:32,711.711 INFO    ] time= 27/06/2026 02:34:32
[2026-06-27 02:34:32,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:34:32,740.740 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:34:32,812.812 INFO    ] No existing commands found in stream
[2026-06-27 02:34:37,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:34:37,826.826 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-27 02:34:41,885.885 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 02:34:41,886.886 INFO    ] Checking for system updates...
[2026-06-27 02:34:41,907.907 INFO    ] 200
[2026-06-27 02:34:41,909.909 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:34:41,939.939 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:34:41,940.940 INFO    ] No update needed
[2026-06-27 02:34:41,942.942 INFO    ] Checking for camera pi updates...
[2026-06-27 02:34:41,964.964 INFO    ] 200
[2026-06-27 02:34:41,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:34:41,990.990 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:34:42,031.031 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:34:42,032.032 INFO    ] No camera update needed
[2026-06-27 02:34:42,034.034 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:34:42,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:34:42,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:34:42,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:34:44,081.081 INFO    ] ================================================
[2026-06-27 02:34:44,097.097 INFO    ] Launching Daemon at Sat Jun 27 02:34:44 IST 2026
[2026-06-27 02:34:44,109.109 INFO    ] ================================================
[2026-06-27 02:34:44,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:34:44
[2026-06-27 02:34:44,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:34:44,938.938 INFO    ] Initializing speech engine...
[2026-06-27 02:34:44,944.944 INFO    ] 2026-06-27 02:34:44
[2026-06-27 02:34:45,147.147 INFO    ] 2026-06-27 02:34:45
[2026-06-27 02:34:45,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:34:45,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:34:45,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:34:45,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:34:45,586.586 INFO    ] time= 27/06/2026 02:34:45
[2026-06-27 02:34:45,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:34:45,594.594 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:34:45,684.684 INFO    ] No existing commands found in stream
[2026-06-27 02:34:50,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:34:50,694.694 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-27 02:34:53,541.541 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 02:34:53,543.543 INFO    ] Checking for system updates...
[2026-06-27 02:34:53,564.564 INFO    ] 200
[2026-06-27 02:34:53,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:34:53,596.596 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:34:53,597.597 INFO    ] No update needed
[2026-06-27 02:34:53,598.598 INFO    ] Checking for camera pi updates...
[2026-06-27 02:34:53,618.618 INFO    ] 200
[2026-06-27 02:34:53,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:34:53,642.642 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:34:53,678.678 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:34:53,680.680 INFO    ] No camera update needed
[2026-06-27 02:34:53,681.681 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:34:53,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:34:53,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:34:53,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:34:55,721.721 INFO    ] ================================================
[2026-06-27 02:34:55,737.737 INFO    ] Launching Daemon at Sat Jun 27 02:34:55 IST 2026
[2026-06-27 02:34:55,748.748 INFO    ] ================================================
[2026-06-27 02:34:56,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:34:56
[2026-06-27 02:34:56,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:34:56,535.535 INFO    ] Initializing speech engine...
[2026-06-27 02:34:56,539.539 INFO    ] 2026-06-27 02:34:56
[2026-06-27 02:34:56,744.744 INFO    ] 2026-06-27 02:34:56
[2026-06-27 02:34:56,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:34:56,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:34:56,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:34:57,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:34:57,167.167 INFO    ] time= 27/06/2026 02:34:57
[2026-06-27 02:34:57,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:34:57,198.198 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:34:57,266.266 INFO    ] No existing commands found in stream
[2026-06-27 02:35:02,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:35:02,277.277 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-27 02:35:05,820.820 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 02:35:05,821.821 INFO    ] Checking for system updates...
[2026-06-27 02:35:05,844.844 INFO    ] 200
[2026-06-27 02:35:05,845.845 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:35:05,875.875 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:35:05,877.877 INFO    ] No update needed
[2026-06-27 02:35:05,878.878 INFO    ] Checking for camera pi updates...
[2026-06-27 02:35:05,898.898 INFO    ] 200
[2026-06-27 02:35:05,899.899 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:35:05,924.924 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:35:05,965.965 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:35:05,966.966 INFO    ] No camera update needed
[2026-06-27 02:35:05,967.967 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:35:05,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:35:05,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:35:05,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:35:08,015.015 INFO    ] ================================================
[2026-06-27 02:35:08,031.031 INFO    ] Launching Daemon at Sat Jun 27 02:35:08 IST 2026
[2026-06-27 02:35:08,041.041 INFO    ] ================================================
[2026-06-27 02:35:08,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:35:08
[2026-06-27 02:35:08,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:35:08,850.850 INFO    ] Initializing speech engine...
[2026-06-27 02:35:08,856.856 INFO    ] 2026-06-27 02:35:08
[2026-06-27 02:35:09,062.062 INFO    ] 2026-06-27 02:35:09
[2026-06-27 02:35:09,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:35:09,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:35:09,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:35:09,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:35:09,510.510 INFO    ] time= 27/06/2026 02:35:09
[2026-06-27 02:35:09,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:35:09,517.517 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:35:09,609.609 INFO    ] No existing commands found in stream
[2026-06-27 02:35:14,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:35:14,621.621 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-27 02:35:18,280.280 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 02:35:18,281.281 INFO    ] Checking for system updates...
[2026-06-27 02:35:18,301.301 INFO    ] 200
[2026-06-27 02:35:18,303.303 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:35:18,333.333 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:35:18,334.334 INFO    ] No update needed
[2026-06-27 02:35:18,336.336 INFO    ] Checking for camera pi updates...
[2026-06-27 02:35:18,358.358 INFO    ] 200
[2026-06-27 02:35:18,360.360 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:35:18,383.383 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:35:18,424.424 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:35:18,425.425 INFO    ] No camera update needed
[2026-06-27 02:35:18,427.427 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:35:18,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:35:18,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:35:18,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:35:20,472.472 INFO    ] ================================================
[2026-06-27 02:35:20,488.488 INFO    ] Launching Daemon at Sat Jun 27 02:35:20 IST 2026
[2026-06-27 02:35:20,499.499 INFO    ] ================================================
[2026-06-27 02:35:20,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:35:20
[2026-06-27 02:35:21,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:35:21,287.287 INFO    ] Initializing speech engine...
[2026-06-27 02:35:21,295.295 INFO    ] 2026-06-27 02:35:21
[2026-06-27 02:35:21,504.504 INFO    ] 2026-06-27 02:35:21
[2026-06-27 02:35:21,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:35:24,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:35:24,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:35:24,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:35:24,966.966 INFO    ] time= 27/06/2026 02:35:24
[2026-06-27 02:35:24,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:35:24,971.971 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:35:25,030.030 INFO    ] No existing commands found in stream
[2026-06-27 02:35:30,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:35:30,042.042 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-27 02:35:33,271.271 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 02:35:33,272.272 INFO    ] Checking for system updates...
[2026-06-27 02:35:33,295.295 INFO    ] 200
[2026-06-27 02:35:33,296.296 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:35:33,332.332 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:35:33,333.333 INFO    ] No update needed
[2026-06-27 02:35:33,335.335 INFO    ] Checking for camera pi updates...
[2026-06-27 02:35:33,355.355 INFO    ] 200
[2026-06-27 02:35:33,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:35:33,382.382 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:35:33,428.428 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:35:33,429.429 INFO    ] No camera update needed
[2026-06-27 02:35:33,431.431 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:35:33,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:35:33,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:35:33,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:35:35,479.479 INFO    ] ================================================
[2026-06-27 02:35:35,495.495 INFO    ] Launching Daemon at Sat Jun 27 02:35:35 IST 2026
[2026-06-27 02:35:35,506.506 INFO    ] ================================================
[2026-06-27 02:35:35,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:35:35
[2026-06-27 02:35:36,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:35:36,314.314 INFO    ] Initializing speech engine...
[2026-06-27 02:35:36,320.320 INFO    ] 2026-06-27 02:35:36
[2026-06-27 02:35:36,526.526 INFO    ] 2026-06-27 02:35:36
[2026-06-27 02:35:36,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:35:36,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:35:36,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:35:36,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:35:36,941.941 INFO    ] time= 27/06/2026 02:35:36
[2026-06-27 02:35:36,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:35:36,980.980 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:35:37,048.048 INFO    ] No existing commands found in stream
[2026-06-27 02:35:42,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:35:42,060.060 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-27 02:35:45,187.187 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 02:35:45,188.188 INFO    ] Checking for system updates...
[2026-06-27 02:35:45,210.210 INFO    ] 200
[2026-06-27 02:35:45,211.211 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:35:45,244.244 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:35:45,246.246 INFO    ] No update needed
[2026-06-27 02:35:45,247.247 INFO    ] Checking for camera pi updates...
[2026-06-27 02:35:45,267.267 INFO    ] 200
[2026-06-27 02:35:45,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:35:45,294.294 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:35:45,338.338 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:35:45,339.339 INFO    ] No camera update needed
[2026-06-27 02:35:45,340.340 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:35:45,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:35:45,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:35:45,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:35:47,387.387 INFO    ] ================================================
[2026-06-27 02:35:47,403.403 INFO    ] Launching Daemon at Sat Jun 27 02:35:47 IST 2026
[2026-06-27 02:35:47,414.414 INFO    ] ================================================
[2026-06-27 02:35:47,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:35:47
[2026-06-27 02:35:48,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:35:48,232.232 INFO    ] Initializing speech engine...
[2026-06-27 02:35:48,237.237 INFO    ] 2026-06-27 02:35:48
[2026-06-27 02:35:48,447.447 INFO    ] 2026-06-27 02:35:48
[2026-06-27 02:35:48,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:35:48,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:35:48,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:35:48,826.826 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:35:48,883.883 INFO    ] time= 27/06/2026 02:35:48
[2026-06-27 02:35:48,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:35:48,928.928 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:35:49,030.030 INFO    ] No existing commands found in stream
[2026-06-27 02:35:54,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:35:54,042.042 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-27 02:35:55,522.522 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 02:35:55,524.524 INFO    ] Checking for system updates...
[2026-06-27 02:35:55,545.545 INFO    ] 200
[2026-06-27 02:35:55,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:35:55,579.579 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:35:55,580.580 INFO    ] No update needed
[2026-06-27 02:35:55,582.582 INFO    ] Checking for camera pi updates...
[2026-06-27 02:35:55,604.604 INFO    ] 200
[2026-06-27 02:35:55,606.606 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:35:55,630.630 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:35:55,671.671 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:35:55,673.673 INFO    ] No camera update needed
[2026-06-27 02:35:55,674.674 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:35:55,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:35:55,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:35:55,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:35:57,722.722 INFO    ] ================================================
[2026-06-27 02:35:57,737.737 INFO    ] Launching Daemon at Sat Jun 27 02:35:57 IST 2026
[2026-06-27 02:35:57,748.748 INFO    ] ================================================
[2026-06-27 02:35:58,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:35:58
[2026-06-27 02:35:58,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:35:58,556.556 INFO    ] Initializing speech engine...
[2026-06-27 02:35:58,566.566 INFO    ] 2026-06-27 02:35:58
[2026-06-27 02:35:58,772.772 INFO    ] 2026-06-27 02:35:58
[2026-06-27 02:35:58,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:35:58,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:35:58,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:35:59,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:35:59,212.212 INFO    ] time= 27/06/2026 02:35:59
[2026-06-27 02:35:59,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:35:59,234.234 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:35:59,304.304 INFO    ] No existing commands found in stream
[2026-06-27 02:36:04,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:36:04,318.318 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-27 02:36:06,382.382 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 02:36:06,384.384 INFO    ] Checking for system updates...
[2026-06-27 02:36:06,406.406 INFO    ] 200
[2026-06-27 02:36:06,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:36:06,441.441 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:36:06,442.442 INFO    ] No update needed
[2026-06-27 02:36:06,444.444 INFO    ] Checking for camera pi updates...
[2026-06-27 02:36:06,464.464 INFO    ] 200
[2026-06-27 02:36:06,465.465 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:36:06,489.489 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:36:06,534.534 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:36:06,535.535 INFO    ] No camera update needed
[2026-06-27 02:36:06,536.536 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:36:06,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:36:06,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:36:06,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:36:08,582.582 INFO    ] ================================================
[2026-06-27 02:36:08,598.598 INFO    ] Launching Daemon at Sat Jun 27 02:36:08 IST 2026
[2026-06-27 02:36:08,610.610 INFO    ] ================================================
[2026-06-27 02:36:08,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:36:08
[2026-06-27 02:36:09,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:36:09,475.475 INFO    ] Initializing speech engine...
[2026-06-27 02:36:09,481.481 INFO    ] 2026-06-27 02:36:09
[2026-06-27 02:36:09,692.692 INFO    ] 2026-06-27 02:36:09
[2026-06-27 02:36:09,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:36:09,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:36:09,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:36:10,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:36:10,140.140 INFO    ] time= 27/06/2026 02:36:10
[2026-06-27 02:36:10,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:36:10,147.147 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:36:10,215.215 INFO    ] No existing commands found in stream
[2026-06-27 02:36:15,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:36:15,225.225 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-27 02:36:19,092.092 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 02:36:19,094.094 INFO    ] Checking for system updates...
[2026-06-27 02:36:19,116.116 INFO    ] 200
[2026-06-27 02:36:19,118.118 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:36:19,148.148 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:36:19,149.149 INFO    ] No update needed
[2026-06-27 02:36:19,151.151 INFO    ] Checking for camera pi updates...
[2026-06-27 02:36:19,172.172 INFO    ] 200
[2026-06-27 02:36:19,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:36:19,197.197 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:36:19,235.235 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:36:19,237.237 INFO    ] No camera update needed
[2026-06-27 02:36:19,238.238 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:36:19,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:36:19,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:36:19,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:36:21,286.286 INFO    ] ================================================
[2026-06-27 02:36:21,302.302 INFO    ] Launching Daemon at Sat Jun 27 02:36:21 IST 2026
[2026-06-27 02:36:21,313.313 INFO    ] ================================================
[2026-06-27 02:36:21,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:36:21
[2026-06-27 02:36:21,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:36:22,120.120 INFO    ] Initializing speech engine...
[2026-06-27 02:36:22,130.130 INFO    ] 2026-06-27 02:36:22
[2026-06-27 02:36:22,353.353 INFO    ] 2026-06-27 02:36:22
[2026-06-27 02:36:22,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:36:22,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:36:22,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:36:22,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:36:22,774.774 INFO    ] time= 27/06/2026 02:36:22
[2026-06-27 02:36:22,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:36:22,809.809 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:36:22,924.924 INFO    ] No existing commands found in stream
[2026-06-27 02:36:27,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:36:27,939.939 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-27 02:36:30,650.650 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 02:36:30,652.652 INFO    ] Checking for system updates...
[2026-06-27 02:36:30,672.672 INFO    ] 200
[2026-06-27 02:36:30,674.674 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:36:30,707.707 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:36:30,708.708 INFO    ] No update needed
[2026-06-27 02:36:30,710.710 INFO    ] Checking for camera pi updates...
[2026-06-27 02:36:30,731.731 INFO    ] 200
[2026-06-27 02:36:30,732.732 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:36:30,759.759 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:36:30,907.907 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:36:30,908.908 INFO    ] No camera update needed
[2026-06-27 02:36:30,910.910 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:36:30,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:36:30,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:36:30,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:36:32,949.949 INFO    ] ================================================
[2026-06-27 02:36:32,965.965 INFO    ] Launching Daemon at Sat Jun 27 02:36:32 IST 2026
[2026-06-27 02:36:32,976.976 INFO    ] ================================================
[2026-06-27 02:36:33,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:36:33
[2026-06-27 02:36:33,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:36:33,807.807 INFO    ] Initializing speech engine...
[2026-06-27 02:36:33,814.814 INFO    ] 2026-06-27 02:36:33
[2026-06-27 02:36:34,025.025 INFO    ] 2026-06-27 02:36:34
[2026-06-27 02:36:34,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:36:34,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:36:34,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:36:34,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:36:34,441.441 INFO    ] time= 27/06/2026 02:36:34
[2026-06-27 02:36:34,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:36:34,475.475 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:36:34,539.539 INFO    ] No existing commands found in stream
[2026-06-27 02:36:39,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:36:39,552.552 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-27 02:36:42,918.918 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 02:36:42,919.919 INFO    ] Checking for system updates...
[2026-06-27 02:36:42,939.939 INFO    ] 200
[2026-06-27 02:36:42,941.941 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:36:42,974.974 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:36:42,975.975 INFO    ] No update needed
[2026-06-27 02:36:42,976.976 INFO    ] Checking for camera pi updates...
[2026-06-27 02:36:42,997.997 INFO    ] 200
[2026-06-27 02:36:42,999.999 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:36:43,024.024 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:36:43,065.065 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:36:43,066.066 INFO    ] No camera update needed
[2026-06-27 02:36:43,067.067 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:36:43,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:36:43,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:36:43,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:36:45,116.116 INFO    ] ================================================
[2026-06-27 02:36:45,132.132 INFO    ] Launching Daemon at Sat Jun 27 02:36:45 IST 2026
[2026-06-27 02:36:45,144.144 INFO    ] ================================================
[2026-06-27 02:36:45,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:36:45
[2026-06-27 02:36:45,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:36:45,991.991 INFO    ] Initializing speech engine...
[2026-06-27 02:36:45,999.999 INFO    ] 2026-06-27 02:36:45
[2026-06-27 02:36:46,213.213 INFO    ] 2026-06-27 02:36:46
[2026-06-27 02:36:46,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:36:46,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:36:46,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:36:46,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:36:46,633.633 INFO    ] time= 27/06/2026 02:36:46
[2026-06-27 02:36:46,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:36:46,667.667 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:36:46,732.732 INFO    ] No existing commands found in stream
[2026-06-27 02:36:51,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:36:51,744.744 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-27 02:36:53,486.486 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 02:36:53,487.487 INFO    ] Checking for system updates...
[2026-06-27 02:36:53,510.510 INFO    ] 200
[2026-06-27 02:36:53,511.511 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:36:53,545.545 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:36:53,546.546 INFO    ] No update needed
[2026-06-27 02:36:53,548.548 INFO    ] Checking for camera pi updates...
[2026-06-27 02:36:53,568.568 INFO    ] 200
[2026-06-27 02:36:53,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:36:53,595.595 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:36:53,622.622 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:36:53,624.624 INFO    ] No camera update needed
[2026-06-27 02:36:53,625.625 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:36:53,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:36:53,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:36:53,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:36:55,671.671 INFO    ] ================================================
[2026-06-27 02:36:55,687.687 INFO    ] Launching Daemon at Sat Jun 27 02:36:55 IST 2026
[2026-06-27 02:36:55,698.698 INFO    ] ================================================
[2026-06-27 02:36:56,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:36:56
[2026-06-27 02:36:56,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:36:56,528.528 INFO    ] Initializing speech engine...
[2026-06-27 02:36:56,533.533 INFO    ] 2026-06-27 02:36:56
[2026-06-27 02:36:56,739.739 INFO    ] 2026-06-27 02:36:56
[2026-06-27 02:36:56,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:36:56,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:36:56,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:36:57,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:36:57,146.146 INFO    ] time= 27/06/2026 02:36:57
[2026-06-27 02:36:57,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:36:57,184.184 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:36:57,250.250 INFO    ] No existing commands found in stream
[2026-06-27 02:37:02,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:37:02,257.257 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-27 02:37:02,891.891 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 02:37:02,893.893 INFO    ] Checking for system updates...
[2026-06-27 02:37:02,915.915 INFO    ] 200
[2026-06-27 02:37:02,916.916 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:37:02,949.949 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:37:02,951.951 INFO    ] No update needed
[2026-06-27 02:37:02,952.952 INFO    ] Checking for camera pi updates...
[2026-06-27 02:37:02,973.973 INFO    ] 200
[2026-06-27 02:37:02,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:37:02,998.998 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:37:03,026.026 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:37:03,027.027 INFO    ] No camera update needed
[2026-06-27 02:37:03,028.028 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:37:03,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:37:03,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:37:03,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:37:05,077.077 INFO    ] ================================================
[2026-06-27 02:37:05,092.092 INFO    ] Launching Daemon at Sat Jun 27 02:37:05 IST 2026
[2026-06-27 02:37:05,104.104 INFO    ] ================================================
[2026-06-27 02:37:05,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:37:05
[2026-06-27 02:37:05,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:37:05,942.942 INFO    ] Initializing speech engine...
[2026-06-27 02:37:05,947.947 INFO    ] 2026-06-27 02:37:05
[2026-06-27 02:37:06,165.165 INFO    ] 2026-06-27 02:37:06
[2026-06-27 02:37:06,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:37:06,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:37:06,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:37:06,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:37:06,582.582 INFO    ] time= 27/06/2026 02:37:06
[2026-06-27 02:37:06,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:37:06,615.615 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:37:06,682.682 INFO    ] No existing commands found in stream
[2026-06-27 02:37:11,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:37:11,694.694 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-27 02:37:13,532.532 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 02:37:13,534.534 INFO    ] Checking for system updates...
[2026-06-27 02:37:13,555.555 INFO    ] 200
[2026-06-27 02:37:13,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:37:13,588.588 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:37:13,589.589 INFO    ] No update needed
[2026-06-27 02:37:13,591.591 INFO    ] Checking for camera pi updates...
[2026-06-27 02:37:13,612.612 INFO    ] 200
[2026-06-27 02:37:13,614.614 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:37:13,639.639 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:37:13,684.684 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:37:13,685.685 INFO    ] No camera update needed
[2026-06-27 02:37:13,687.687 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:37:13,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:37:13,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:37:13,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:37:15,735.735 INFO    ] ================================================
[2026-06-27 02:37:15,751.751 INFO    ] Launching Daemon at Sat Jun 27 02:37:15 IST 2026
[2026-06-27 02:37:15,762.762 INFO    ] ================================================
[2026-06-27 02:37:16,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:37:16
[2026-06-27 02:37:16,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:37:16,541.541 INFO    ] Initializing speech engine...
[2026-06-27 02:37:16,551.551 INFO    ] 2026-06-27 02:37:16
[2026-06-27 02:37:16,754.754 INFO    ] 2026-06-27 02:37:16
[2026-06-27 02:37:16,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:37:16,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:37:16,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:37:17,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:37:17,191.191 INFO    ] time= 27/06/2026 02:37:17
[2026-06-27 02:37:17,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:37:17,202.202 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:37:17,292.292 INFO    ] No existing commands found in stream
[2026-06-27 02:37:22,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:37:22,304.304 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-27 02:37:24,482.482 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 02:37:24,483.483 INFO    ] Checking for system updates...
[2026-06-27 02:37:24,506.506 INFO    ] 200
[2026-06-27 02:37:24,507.507 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:37:24,540.540 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:37:24,542.542 INFO    ] No update needed
[2026-06-27 02:37:24,543.543 INFO    ] Checking for camera pi updates...
[2026-06-27 02:37:24,563.563 INFO    ] 200
[2026-06-27 02:37:24,564.564 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:37:24,589.589 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:37:24,626.626 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:37:24,628.628 INFO    ] No camera update needed
[2026-06-27 02:37:24,629.629 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:37:24,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:37:24,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:37:24,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:37:26,675.675 INFO    ] ================================================
[2026-06-27 02:37:26,691.691 INFO    ] Launching Daemon at Sat Jun 27 02:37:26 IST 2026
[2026-06-27 02:37:26,702.702 INFO    ] ================================================
[2026-06-27 02:37:27,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:37:27
[2026-06-27 02:37:27,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:37:27,512.512 INFO    ] Initializing speech engine...
[2026-06-27 02:37:27,522.522 INFO    ] 2026-06-27 02:37:27
[2026-06-27 02:37:27,729.729 INFO    ] 2026-06-27 02:37:27
[2026-06-27 02:37:27,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:37:27,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:37:27,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:37:28,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:37:28,152.152 INFO    ] time= 27/06/2026 02:37:28
[2026-06-27 02:37:28,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:37:28,182.182 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:37:28,249.249 INFO    ] No existing commands found in stream
[2026-06-27 02:37:33,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:37:33,259.259 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-27 02:37:36,535.535 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 02:37:36,537.537 INFO    ] Checking for system updates...
[2026-06-27 02:37:36,560.560 INFO    ] 200
[2026-06-27 02:37:36,562.562 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:37:36,598.598 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:37:36,599.599 INFO    ] No update needed
[2026-06-27 02:37:36,601.601 INFO    ] Checking for camera pi updates...
[2026-06-27 02:37:36,623.623 INFO    ] 200
[2026-06-27 02:37:36,625.625 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:37:36,651.651 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:37:36,696.696 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:37:36,698.698 INFO    ] No camera update needed
[2026-06-27 02:37:36,699.699 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:37:36,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:37:36,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:37:36,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:37:38,746.746 INFO    ] ================================================
[2026-06-27 02:37:38,762.762 INFO    ] Launching Daemon at Sat Jun 27 02:37:38 IST 2026
[2026-06-27 02:37:38,772.772 INFO    ] ================================================
[2026-06-27 02:37:39,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:37:39
[2026-06-27 02:37:39,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:37:39,642.642 INFO    ] Initializing speech engine...
[2026-06-27 02:37:39,648.648 INFO    ] 2026-06-27 02:37:39
[2026-06-27 02:37:39,859.859 INFO    ] 2026-06-27 02:37:39
[2026-06-27 02:37:39,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:37:40,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:37:40,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:37:40,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:37:40,285.285 INFO    ] time= 27/06/2026 02:37:40
[2026-06-27 02:37:40,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:37:40,314.314 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:37:40,381.381 INFO    ] No existing commands found in stream
[2026-06-27 02:37:45,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:37:45,401.401 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-27 02:37:49,315.315 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 02:37:49,316.316 INFO    ] Checking for system updates...
[2026-06-27 02:37:49,338.338 INFO    ] 200
[2026-06-27 02:37:49,339.339 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:37:49,371.371 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:37:49,372.372 INFO    ] No update needed
[2026-06-27 02:37:49,374.374 INFO    ] Checking for camera pi updates...
[2026-06-27 02:37:49,395.395 INFO    ] 200
[2026-06-27 02:37:49,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:37:49,423.423 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:37:49,470.470 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:37:49,471.471 INFO    ] No camera update needed
[2026-06-27 02:37:49,473.473 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:37:49,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:37:49,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:37:49,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:37:51,519.519 INFO    ] ================================================
[2026-06-27 02:37:51,534.534 INFO    ] Launching Daemon at Sat Jun 27 02:37:51 IST 2026
[2026-06-27 02:37:51,544.544 INFO    ] ================================================
[2026-06-27 02:37:51,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:37:51
[2026-06-27 02:37:52,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:37:52,353.353 INFO    ] Initializing speech engine...
[2026-06-27 02:37:52,358.358 INFO    ] 2026-06-27 02:37:52
[2026-06-27 02:37:52,565.565 INFO    ] 2026-06-27 02:37:52
[2026-06-27 02:37:52,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:37:52,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:37:52,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:37:52,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:37:52,980.980 INFO    ] time= 27/06/2026 02:37:52
[2026-06-27 02:37:53,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:37:53,015.015 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:37:53,088.088 INFO    ] No existing commands found in stream
[2026-06-27 02:37:58,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:37:58,099.099 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-27 02:38:00,185.185 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:38:00,187.187 INFO    ] Checking for system updates...
[2026-06-27 02:38:00,209.209 INFO    ] 200
[2026-06-27 02:38:00,210.210 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:38:00,241.241 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:38:00,242.242 INFO    ] No update needed
[2026-06-27 02:38:00,243.243 INFO    ] Checking for camera pi updates...
[2026-06-27 02:38:00,264.264 INFO    ] 200
[2026-06-27 02:38:00,266.266 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:38:00,293.293 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:38:00,337.337 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:38:00,338.338 INFO    ] No camera update needed
[2026-06-27 02:38:00,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:38:00,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:38:00,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:38:00,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:38:02,384.384 INFO    ] ================================================
[2026-06-27 02:38:02,396.396 INFO    ] Launching Daemon at Sat Jun 27 02:38:02 IST 2026
[2026-06-27 02:38:02,408.408 INFO    ] ================================================
[2026-06-27 02:38:02,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:38:02
[2026-06-27 02:38:03,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:38:03,254.254 INFO    ] Initializing speech engine...
[2026-06-27 02:38:03,258.258 INFO    ] 2026-06-27 02:38:03
[2026-06-27 02:38:03,462.462 INFO    ] 2026-06-27 02:38:03
[2026-06-27 02:38:03,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:38:03,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:38:03,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:38:03,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:38:03,885.885 INFO    ] time= 27/06/2026 02:38:03
[2026-06-27 02:38:03,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:38:03,916.916 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:38:03,984.984 INFO    ] No existing commands found in stream
[2026-06-27 02:38:08,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:38:08,996.996 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-27 02:38:09,401.401 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 02:38:09,402.402 INFO    ] Checking for system updates...
[2026-06-27 02:38:09,423.423 INFO    ] 200
[2026-06-27 02:38:09,425.425 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:38:09,456.456 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:38:09,457.457 INFO    ] No update needed
[2026-06-27 02:38:09,458.458 INFO    ] Checking for camera pi updates...
[2026-06-27 02:38:09,478.478 INFO    ] 200
[2026-06-27 02:38:09,480.480 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:38:09,504.504 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:38:09,547.547 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:38:09,548.548 INFO    ] No camera update needed
[2026-06-27 02:38:09,549.549 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:38:09,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:38:09,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:38:09,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:38:11,597.597 INFO    ] ================================================
[2026-06-27 02:38:11,613.613 INFO    ] Launching Daemon at Sat Jun 27 02:38:11 IST 2026
[2026-06-27 02:38:11,625.625 INFO    ] ================================================
[2026-06-27 02:38:11,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:38:11
[2026-06-27 02:38:12,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:38:12,405.405 INFO    ] Initializing speech engine...
[2026-06-27 02:38:12,413.413 INFO    ] 2026-06-27 02:38:12
[2026-06-27 02:38:12,626.626 INFO    ] 2026-06-27 02:38:12
[2026-06-27 02:38:12,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:38:12,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:38:12,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:38:12,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:38:13,050.050 INFO    ] time= 27/06/2026 02:38:12
[2026-06-27 02:38:13,075.075 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:38:13,081.081 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:38:13,172.172 INFO    ] No existing commands found in stream
[2026-06-27 02:38:18,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:38:18,184.184 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-27 02:38:19,065.065 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 02:38:19,067.067 INFO    ] Checking for system updates...
[2026-06-27 02:38:19,089.089 INFO    ] 200
[2026-06-27 02:38:19,090.090 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:38:19,123.123 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:38:19,124.124 INFO    ] No update needed
[2026-06-27 02:38:19,125.125 INFO    ] Checking for camera pi updates...
[2026-06-27 02:38:19,150.150 INFO    ] 200
[2026-06-27 02:38:19,152.152 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:38:19,175.175 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:38:19,217.217 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:38:19,218.218 INFO    ] No camera update needed
[2026-06-27 02:38:19,219.219 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:38:19,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:38:19,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:38:19,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:38:21,265.265 INFO    ] ================================================
[2026-06-27 02:38:21,281.281 INFO    ] Launching Daemon at Sat Jun 27 02:38:21 IST 2026
[2026-06-27 02:38:21,292.292 INFO    ] ================================================
[2026-06-27 02:38:21,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:38:21
[2026-06-27 02:38:21,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:38:22,071.071 INFO    ] Initializing speech engine...
[2026-06-27 02:38:22,085.085 INFO    ] 2026-06-27 02:38:22
[2026-06-27 02:38:22,291.291 INFO    ] 2026-06-27 02:38:22
[2026-06-27 02:38:22,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:38:22,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:38:22,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:38:22,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:38:22,711.711 INFO    ] time= 27/06/2026 02:38:22
[2026-06-27 02:38:22,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:38:22,746.746 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:38:22,814.814 INFO    ] No existing commands found in stream
[2026-06-27 02:38:27,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:38:27,831.831 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-27 02:38:31,027.027 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 02:38:31,029.029 INFO    ] Checking for system updates...
[2026-06-27 02:38:31,050.050 INFO    ] 200
[2026-06-27 02:38:31,052.052 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:38:31,085.085 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:38:31,087.087 INFO    ] No update needed
[2026-06-27 02:38:31,088.088 INFO    ] Checking for camera pi updates...
[2026-06-27 02:38:31,111.111 INFO    ] 200
[2026-06-27 02:38:31,113.113 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:38:31,137.137 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:38:31,281.281 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:38:31,282.282 INFO    ] No camera update needed
[2026-06-27 02:38:31,284.284 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:38:31,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:38:31,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:38:31,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:38:33,316.316 INFO    ] ================================================
[2026-06-27 02:38:33,325.325 INFO    ] Launching Daemon at Sat Jun 27 02:38:33 IST 2026
[2026-06-27 02:38:33,331.331 INFO    ] ================================================
[2026-06-27 02:38:33,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:38:33
[2026-06-27 02:38:34,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:38:34,141.141 INFO    ] Initializing speech engine...
[2026-06-27 02:38:34,152.152 INFO    ] 2026-06-27 02:38:34
[2026-06-27 02:38:34,358.358 INFO    ] 2026-06-27 02:38:34
[2026-06-27 02:38:34,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:38:34,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:38:34,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:38:34,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:38:34,776.776 INFO    ] time= 27/06/2026 02:38:34
[2026-06-27 02:38:34,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:38:34,805.805 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:38:34,872.872 INFO    ] No existing commands found in stream
[2026-06-27 02:38:39,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:38:39,883.883 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-27 02:38:42,197.197 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:38:42,198.198 INFO    ] Checking for system updates...
[2026-06-27 02:38:42,219.219 INFO    ] 200
[2026-06-27 02:38:42,220.220 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:38:42,251.251 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:38:42,252.252 INFO    ] No update needed
[2026-06-27 02:38:42,253.253 INFO    ] Checking for camera pi updates...
[2026-06-27 02:38:42,274.274 INFO    ] 200
[2026-06-27 02:38:42,276.276 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:38:42,300.300 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:38:42,379.379 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:38:42,380.380 INFO    ] No camera update needed
[2026-06-27 02:38:42,381.381 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:38:42,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:38:42,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:38:42,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:38:44,422.422 INFO    ] ================================================
[2026-06-27 02:38:44,438.438 INFO    ] Launching Daemon at Sat Jun 27 02:38:44 IST 2026
[2026-06-27 02:38:44,449.449 INFO    ] ================================================
[2026-06-27 02:38:44,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:38:44
[2026-06-27 02:38:45,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:38:45,220.220 INFO    ] Initializing speech engine...
[2026-06-27 02:38:45,233.233 INFO    ] 2026-06-27 02:38:45
[2026-06-27 02:38:45,441.441 INFO    ] 2026-06-27 02:38:45
[2026-06-27 02:38:45,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:38:45,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:38:45,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:38:45,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:38:45,771.771 INFO    ] time= 27/06/2026 02:38:45
[2026-06-27 02:38:45,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:38:45,773.773 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:38:45,883.883 INFO    ] No existing commands found in stream
[2026-06-27 02:38:50,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:38:50,895.895 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-27 02:38:55,068.068 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 02:38:55,070.070 INFO    ] Checking for system updates...
[2026-06-27 02:38:55,092.092 INFO    ] 200
[2026-06-27 02:38:55,094.094 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:38:55,127.127 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:38:55,128.128 INFO    ] No update needed
[2026-06-27 02:38:55,130.130 INFO    ] Checking for camera pi updates...
[2026-06-27 02:38:55,153.153 INFO    ] 200
[2026-06-27 02:38:55,154.154 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:38:55,178.178 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:38:55,231.231 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:38:55,232.232 INFO    ] No camera update needed
[2026-06-27 02:38:55,234.234 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:38:55,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:38:55,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:38:55,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:38:57,281.281 INFO    ] ================================================
[2026-06-27 02:38:57,296.296 INFO    ] Launching Daemon at Sat Jun 27 02:38:57 IST 2026
[2026-06-27 02:38:57,306.306 INFO    ] ================================================
[2026-06-27 02:38:57,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:38:57
[2026-06-27 02:38:57,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:38:58,089.089 INFO    ] Initializing speech engine...
[2026-06-27 02:38:58,094.094 INFO    ] 2026-06-27 02:38:58
[2026-06-27 02:38:58,302.302 INFO    ] 2026-06-27 02:38:58
[2026-06-27 02:38:58,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:38:58,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:38:58,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:38:58,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:38:58,772.772 INFO    ] time= 27/06/2026 02:38:58
[2026-06-27 02:38:58,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:38:58,803.803 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:38:58,900.900 INFO    ] No existing commands found in stream
[2026-06-27 02:39:03,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:39:03,912.912 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-27 02:39:04,632.632 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:39:04,633.633 INFO    ] Checking for system updates...
[2026-06-27 02:39:04,654.654 INFO    ] 200
[2026-06-27 02:39:04,656.656 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:39:04,686.686 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:39:04,687.687 INFO    ] No update needed
[2026-06-27 02:39:04,689.689 INFO    ] Checking for camera pi updates...
[2026-06-27 02:39:04,709.709 INFO    ] 200
[2026-06-27 02:39:04,711.711 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:39:04,736.736 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:39:04,775.775 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:39:04,776.776 INFO    ] No camera update needed
[2026-06-27 02:39:04,778.778 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:39:04,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:39:04,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:39:04,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:39:06,824.824 INFO    ] ================================================
[2026-06-27 02:39:06,839.839 INFO    ] Launching Daemon at Sat Jun 27 02:39:06 IST 2026
[2026-06-27 02:39:06,849.849 INFO    ] ================================================
[2026-06-27 02:39:07,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:39:07
[2026-06-27 02:39:07,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:39:07,636.636 INFO    ] Initializing speech engine...
[2026-06-27 02:39:07,648.648 INFO    ] 2026-06-27 02:39:07
[2026-06-27 02:39:07,854.854 INFO    ] 2026-06-27 02:39:07
[2026-06-27 02:39:07,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:39:08,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:39:08,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:39:08,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:39:08,275.275 INFO    ] time= 27/06/2026 02:39:08
[2026-06-27 02:39:08,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:39:08,306.306 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:39:08,373.373 INFO    ] No existing commands found in stream
[2026-06-27 02:39:13,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:39:13,390.390 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-27 02:39:17,015.015 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:39:17,017.017 INFO    ] Checking for system updates...
[2026-06-27 02:39:17,039.039 INFO    ] 200
[2026-06-27 02:39:17,040.040 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:39:17,076.076 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:39:17,078.078 INFO    ] No update needed
[2026-06-27 02:39:17,079.079 INFO    ] Checking for camera pi updates...
[2026-06-27 02:39:17,101.101 INFO    ] 200
[2026-06-27 02:39:17,103.103 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:39:17,128.128 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:39:17,170.170 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:39:17,171.171 INFO    ] No camera update needed
[2026-06-27 02:39:17,173.173 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:39:17,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:39:17,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:39:17,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:39:19,221.221 INFO    ] ================================================
[2026-06-27 02:39:19,236.236 INFO    ] Launching Daemon at Sat Jun 27 02:39:19 IST 2026
[2026-06-27 02:39:19,247.247 INFO    ] ================================================
[2026-06-27 02:39:19,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:39:19
[2026-06-27 02:39:19,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:39:20,056.056 INFO    ] Initializing speech engine...
[2026-06-27 02:39:20,060.060 INFO    ] 2026-06-27 02:39:20
[2026-06-27 02:39:20,277.277 INFO    ] 2026-06-27 02:39:20
[2026-06-27 02:39:20,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:39:20,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:39:20,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:39:20,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:39:20,769.769 INFO    ] time= 27/06/2026 02:39:20
[2026-06-27 02:39:20,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:39:20,777.777 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:39:20,848.848 INFO    ] No existing commands found in stream
[2026-06-27 02:39:25,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:39:25,861.861 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-27 02:39:29,098.098 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 02:39:29,100.100 INFO    ] Checking for system updates...
[2026-06-27 02:39:29,120.120 INFO    ] 200
[2026-06-27 02:39:29,122.122 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:39:29,152.152 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:39:29,154.154 INFO    ] No update needed
[2026-06-27 02:39:29,155.155 INFO    ] Checking for camera pi updates...
[2026-06-27 02:39:29,175.175 INFO    ] 200
[2026-06-27 02:39:29,176.176 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:39:29,201.201 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:39:29,249.249 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:39:29,250.250 INFO    ] No camera update needed
[2026-06-27 02:39:29,251.251 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:39:29,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:39:29,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:39:29,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:39:31,304.304 INFO    ] ================================================
[2026-06-27 02:39:31,321.321 INFO    ] Launching Daemon at Sat Jun 27 02:39:31 IST 2026
[2026-06-27 02:39:31,332.332 INFO    ] ================================================
[2026-06-27 02:39:31,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:39:31
[2026-06-27 02:39:32,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:39:32,279.279 INFO    ] Initializing speech engine...
[2026-06-27 02:39:32,285.285 INFO    ] 2026-06-27 02:39:32
[2026-06-27 02:39:32,495.495 INFO    ] 2026-06-27 02:39:32
[2026-06-27 02:39:32,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:39:32,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:39:32,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:39:32,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:39:32,930.930 INFO    ] time= 27/06/2026 02:39:32
[2026-06-27 02:39:32,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:39:33,018.018 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:39:33,141.141 INFO    ] No existing commands found in stream
[2026-06-27 02:39:38,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:39:38,156.156 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-27 02:39:42,072.072 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 02:39:42,073.073 INFO    ] Checking for system updates...
[2026-06-27 02:39:42,095.095 INFO    ] 200
[2026-06-27 02:39:42,097.097 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:39:42,131.131 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:39:42,132.132 INFO    ] No update needed
[2026-06-27 02:39:42,134.134 INFO    ] Checking for camera pi updates...
[2026-06-27 02:39:42,154.154 INFO    ] 200
[2026-06-27 02:39:42,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:39:42,180.180 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:39:42,227.227 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:39:42,228.228 INFO    ] No camera update needed
[2026-06-27 02:39:42,229.229 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:39:42,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:39:42,233.233 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:39:42,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:39:44,275.275 INFO    ] ================================================
[2026-06-27 02:39:44,291.291 INFO    ] Launching Daemon at Sat Jun 27 02:39:44 IST 2026
[2026-06-27 02:39:44,303.303 INFO    ] ================================================
[2026-06-27 02:39:44,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:39:44
[2026-06-27 02:39:44,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:39:45,090.090 INFO    ] Initializing speech engine...
[2026-06-27 02:39:45,094.094 INFO    ] 2026-06-27 02:39:45
[2026-06-27 02:39:45,311.311 INFO    ] 2026-06-27 02:39:45
[2026-06-27 02:39:45,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:39:45,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:39:45,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:39:45,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:39:45,737.737 INFO    ] time= 27/06/2026 02:39:45
[2026-06-27 02:39:45,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:39:45,759.759 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:39:45,827.827 INFO    ] No existing commands found in stream
[2026-06-27 02:39:50,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:39:50,845.845 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-27 02:39:54,623.623 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 02:39:54,625.625 INFO    ] Checking for system updates...
[2026-06-27 02:39:54,646.646 INFO    ] 200
[2026-06-27 02:39:54,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:39:54,678.678 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:39:54,679.679 INFO    ] No update needed
[2026-06-27 02:39:54,681.681 INFO    ] Checking for camera pi updates...
[2026-06-27 02:39:54,700.700 INFO    ] 200
[2026-06-27 02:39:54,702.702 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:39:54,726.726 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:39:54,757.757 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:39:54,758.758 INFO    ] No camera update needed
[2026-06-27 02:39:54,759.759 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:39:54,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:39:54,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:39:54,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:39:56,808.808 INFO    ] ================================================
[2026-06-27 02:39:56,823.823 INFO    ] Launching Daemon at Sat Jun 27 02:39:56 IST 2026
[2026-06-27 02:39:56,834.834 INFO    ] ================================================
[2026-06-27 02:39:57,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:39:57
[2026-06-27 02:39:57,544.544 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:39:57,685.685 INFO    ] Initializing speech engine...
[2026-06-27 02:39:57,699.699 INFO    ] 2026-06-27 02:39:57
[2026-06-27 02:39:57,909.909 INFO    ] 2026-06-27 02:39:57
[2026-06-27 02:39:57,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:39:58,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:39:58,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:39:58,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:39:58,327.327 INFO    ] time= 27/06/2026 02:39:58
[2026-06-27 02:39:58,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:39:58,360.360 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:39:58,451.451 INFO    ] No existing commands found in stream
[2026-06-27 02:40:03,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:40:03,478.478 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-27 02:40:07,154.154 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 02:40:07,156.156 INFO    ] Checking for system updates...
[2026-06-27 02:40:07,177.177 INFO    ] 200
[2026-06-27 02:40:07,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:40:07,214.214 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:40:07,215.215 INFO    ] No update needed
[2026-06-27 02:40:07,217.217 INFO    ] Checking for camera pi updates...
[2026-06-27 02:40:07,237.237 INFO    ] 200
[2026-06-27 02:40:07,239.239 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:40:07,264.264 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:40:07,305.305 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:40:07,306.306 INFO    ] No camera update needed
[2026-06-27 02:40:07,307.307 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:40:07,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:40:07,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:40:07,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:40:09,355.355 INFO    ] ================================================
[2026-06-27 02:40:09,371.371 INFO    ] Launching Daemon at Sat Jun 27 02:40:09 IST 2026
[2026-06-27 02:40:09,382.382 INFO    ] ================================================
[2026-06-27 02:40:09,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:40:09
[2026-06-27 02:40:10,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:40:10,161.161 INFO    ] Initializing speech engine...
[2026-06-27 02:40:10,166.166 INFO    ] 2026-06-27 02:40:10
[2026-06-27 02:40:10,367.367 INFO    ] 2026-06-27 02:40:10
[2026-06-27 02:40:10,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:40:10,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:40:10,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:40:10,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:40:10,784.784 INFO    ] time= 27/06/2026 02:40:10
[2026-06-27 02:40:10,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:40:10,813.813 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:40:10,904.904 INFO    ] No existing commands found in stream
[2026-06-27 02:40:15,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:40:15,916.916 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-27 02:40:16,385.385 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 02:40:16,387.387 INFO    ] Checking for system updates...
[2026-06-27 02:40:16,409.409 INFO    ] 200
[2026-06-27 02:40:16,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:40:16,441.441 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:40:16,442.442 INFO    ] No update needed
[2026-06-27 02:40:16,443.443 INFO    ] Checking for camera pi updates...
[2026-06-27 02:40:16,463.463 INFO    ] 200
[2026-06-27 02:40:16,464.464 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:40:16,490.490 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:40:16,532.532 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:40:16,533.533 INFO    ] No camera update needed
[2026-06-27 02:40:16,534.534 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:40:16,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:40:16,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:40:16,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:40:18,582.582 INFO    ] ================================================
[2026-06-27 02:40:18,599.599 INFO    ] Launching Daemon at Sat Jun 27 02:40:18 IST 2026
[2026-06-27 02:40:18,610.610 INFO    ] ================================================
[2026-06-27 02:40:18,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:40:18
[2026-06-27 02:40:19,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:40:19,415.415 INFO    ] Initializing speech engine...
[2026-06-27 02:40:19,426.426 INFO    ] 2026-06-27 02:40:19
[2026-06-27 02:40:19,630.630 INFO    ] 2026-06-27 02:40:19
[2026-06-27 02:40:19,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:40:19,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:40:19,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:40:19,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:40:20,050.050 INFO    ] time= 27/06/2026 02:40:20
[2026-06-27 02:40:20,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:40:20,075.075 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:40:20,145.145 INFO    ] No existing commands found in stream
[2026-06-27 02:40:25,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:40:25,158.158 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-27 02:40:29,369.369 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 02:40:29,371.371 INFO    ] Checking for system updates...
[2026-06-27 02:40:29,392.392 INFO    ] 200
[2026-06-27 02:40:29,393.393 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:40:29,432.432 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:40:29,434.434 INFO    ] No update needed
[2026-06-27 02:40:29,435.435 INFO    ] Checking for camera pi updates...
[2026-06-27 02:40:29,456.456 INFO    ] 200
[2026-06-27 02:40:29,457.457 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:40:29,483.483 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:40:29,529.529 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:40:29,531.531 INFO    ] No camera update needed
[2026-06-27 02:40:29,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:40:29,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:40:29,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:40:29,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:40:31,571.571 INFO    ] ================================================
[2026-06-27 02:40:31,581.581 INFO    ] Launching Daemon at Sat Jun 27 02:40:31 IST 2026
[2026-06-27 02:40:31,589.589 INFO    ] ================================================
[2026-06-27 02:40:31,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:40:31
[2026-06-27 02:40:32,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:40:32,403.403 INFO    ] Initializing speech engine...
[2026-06-27 02:40:32,408.408 INFO    ] 2026-06-27 02:40:32
[2026-06-27 02:40:32,612.612 INFO    ] 2026-06-27 02:40:32
[2026-06-27 02:40:32,643.643 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:40:32,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:40:32,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:40:32,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:40:33,039.039 INFO    ] time= 27/06/2026 02:40:32
[2026-06-27 02:40:33,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:40:33,067.067 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:40:33,134.134 INFO    ] No existing commands found in stream
[2026-06-27 02:40:38,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:40:38,146.146 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-27 02:40:38,690.690 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 02:40:38,691.691 INFO    ] Checking for system updates...
[2026-06-27 02:40:38,713.713 INFO    ] 200
[2026-06-27 02:40:38,715.715 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:40:38,747.747 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:40:38,749.749 INFO    ] No update needed
[2026-06-27 02:40:38,750.750 INFO    ] Checking for camera pi updates...
[2026-06-27 02:40:38,771.771 INFO    ] 200
[2026-06-27 02:40:38,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:40:38,795.795 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:40:38,936.936 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:40:38,938.938 INFO    ] No camera update needed
[2026-06-27 02:40:38,939.939 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:40:38,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:40:38,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:40:38,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:40:40,986.986 INFO    ] ================================================
[2026-06-27 02:40:41,002.002 INFO    ] Launching Daemon at Sat Jun 27 02:40:40 IST 2026
[2026-06-27 02:40:41,013.013 INFO    ] ================================================
[2026-06-27 02:40:41,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:40:41
[2026-06-27 02:40:41,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:40:41,904.904 INFO    ] Initializing speech engine...
[2026-06-27 02:40:41,907.907 INFO    ] 2026-06-27 02:40:41
[2026-06-27 02:40:42,114.114 INFO    ] 2026-06-27 02:40:42
[2026-06-27 02:40:42,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:40:42,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:40:42,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:40:42,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:40:42,559.559 INFO    ] time= 27/06/2026 02:40:42
[2026-06-27 02:40:42,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:40:42,566.566 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:40:42,633.633 INFO    ] No existing commands found in stream
[2026-06-27 02:40:47,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:40:47,661.661 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-27 02:40:50,756.756 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 02:40:50,757.757 INFO    ] Checking for system updates...
[2026-06-27 02:40:50,778.778 INFO    ] 200
[2026-06-27 02:40:50,780.780 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:40:50,810.810 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:40:50,812.812 INFO    ] No update needed
[2026-06-27 02:40:50,813.813 INFO    ] Checking for camera pi updates...
[2026-06-27 02:40:50,834.834 INFO    ] 200
[2026-06-27 02:40:50,835.835 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:40:50,859.859 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:40:50,907.907 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:40:50,908.908 INFO    ] No camera update needed
[2026-06-27 02:40:50,909.909 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:40:50,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:40:50,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:40:50,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:40:52,957.957 INFO    ] ================================================
[2026-06-27 02:40:52,972.972 INFO    ] Launching Daemon at Sat Jun 27 02:40:52 IST 2026
[2026-06-27 02:40:52,984.984 INFO    ] ================================================
[2026-06-27 02:40:53,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:40:53
[2026-06-27 02:40:53,698.698 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:40:53,852.852 INFO    ] Initializing speech engine...
[2026-06-27 02:40:53,857.857 INFO    ] 2026-06-27 02:40:53
[2026-06-27 02:40:54,063.063 INFO    ] 2026-06-27 02:40:54
[2026-06-27 02:40:54,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:40:54,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:40:54,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:40:54,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:40:54,474.474 INFO    ] time= 27/06/2026 02:40:54
[2026-06-27 02:40:54,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:40:54,530.530 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:40:54,633.633 INFO    ] No existing commands found in stream
[2026-06-27 02:40:59,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:40:59,646.646 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-27 02:41:02,658.658 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 02:41:02,660.660 INFO    ] Checking for system updates...
[2026-06-27 02:41:02,691.691 INFO    ] 200
[2026-06-27 02:41:02,693.693 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:41:02,740.740 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:41:02,742.742 INFO    ] No update needed
[2026-06-27 02:41:02,744.744 INFO    ] Checking for camera pi updates...
[2026-06-27 02:41:02,772.772 INFO    ] 200
[2026-06-27 02:41:02,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:41:02,808.808 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:41:02,839.839 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:41:02,841.841 INFO    ] No camera update needed
[2026-06-27 02:41:02,843.843 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:41:02,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:41:02,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:41:02,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:41:04,890.890 INFO    ] ================================================
[2026-06-27 02:41:04,905.905 INFO    ] Launching Daemon at Sat Jun 27 02:41:04 IST 2026
[2026-06-27 02:41:04,917.917 INFO    ] ================================================
[2026-06-27 02:41:05,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:41:05
[2026-06-27 02:41:05,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:41:05,719.719 INFO    ] Initializing speech engine...
[2026-06-27 02:41:05,724.724 INFO    ] 2026-06-27 02:41:05
[2026-06-27 02:41:05,943.943 INFO    ] 2026-06-27 02:41:05
[2026-06-27 02:41:05,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:41:06,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:41:06,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:41:06,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:41:06,377.377 INFO    ] time= 27/06/2026 02:41:06
[2026-06-27 02:41:06,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:41:06,412.412 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:41:06,480.480 INFO    ] No existing commands found in stream
[2026-06-27 02:41:11,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:41:11,487.487 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-27 02:41:14,255.255 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:41:14,257.257 INFO    ] Checking for system updates...
[2026-06-27 02:41:14,279.279 INFO    ] 200
[2026-06-27 02:41:14,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:41:14,314.314 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:41:14,316.316 INFO    ] No update needed
[2026-06-27 02:41:14,318.318 INFO    ] Checking for camera pi updates...
[2026-06-27 02:41:14,337.337 INFO    ] 200
[2026-06-27 02:41:14,339.339 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:41:14,363.363 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:41:14,419.419 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:41:14,421.421 INFO    ] No camera update needed
[2026-06-27 02:41:14,422.422 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:41:14,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:41:14,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:41:14,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:41:16,470.470 INFO    ] ================================================
[2026-06-27 02:41:16,485.485 INFO    ] Launching Daemon at Sat Jun 27 02:41:16 IST 2026
[2026-06-27 02:41:16,496.496 INFO    ] ================================================
[2026-06-27 02:41:16,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:41:16
[2026-06-27 02:41:17,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:41:17,291.291 INFO    ] Initializing speech engine...
[2026-06-27 02:41:17,300.300 INFO    ] 2026-06-27 02:41:17
[2026-06-27 02:41:17,506.506 INFO    ] 2026-06-27 02:41:17
[2026-06-27 02:41:17,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:41:17,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:41:17,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:41:17,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:41:17,925.925 INFO    ] time= 27/06/2026 02:41:17
[2026-06-27 02:41:17,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:41:17,953.953 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:41:18,037.037 INFO    ] No existing commands found in stream
[2026-06-27 02:41:23,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:41:23,054.054 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-27 02:41:26,125.125 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 02:41:26,126.126 INFO    ] Checking for system updates...
[2026-06-27 02:41:26,147.147 INFO    ] 200
[2026-06-27 02:41:26,149.149 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:41:26,182.182 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:41:26,185.185 INFO    ] No update needed
[2026-06-27 02:41:26,187.187 INFO    ] Checking for camera pi updates...
[2026-06-27 02:41:26,207.207 INFO    ] 200
[2026-06-27 02:41:26,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:41:26,233.233 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:41:26,279.279 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:41:26,280.280 INFO    ] No camera update needed
[2026-06-27 02:41:26,282.282 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:41:26,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:41:26,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:41:26,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:41:28,329.329 INFO    ] ================================================
[2026-06-27 02:41:28,346.346 INFO    ] Launching Daemon at Sat Jun 27 02:41:28 IST 2026
[2026-06-27 02:41:28,357.357 INFO    ] ================================================
[2026-06-27 02:41:28,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:41:28
[2026-06-27 02:41:29,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:41:29,179.179 INFO    ] Initializing speech engine...
[2026-06-27 02:41:29,182.182 INFO    ] 2026-06-27 02:41:29
[2026-06-27 02:41:29,399.399 INFO    ] 2026-06-27 02:41:29
[2026-06-27 02:41:29,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:41:29,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:41:29,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:41:29,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:41:29,819.819 INFO    ] time= 27/06/2026 02:41:29
[2026-06-27 02:41:29,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:41:29,849.849 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:41:29,915.915 INFO    ] No existing commands found in stream
[2026-06-27 02:41:34,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:41:34,927.927 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-27 02:41:38,203.203 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 02:41:38,205.205 INFO    ] Checking for system updates...
[2026-06-27 02:41:38,227.227 INFO    ] 200
[2026-06-27 02:41:38,229.229 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:41:38,261.261 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:41:38,263.263 INFO    ] No update needed
[2026-06-27 02:41:38,264.264 INFO    ] Checking for camera pi updates...
[2026-06-27 02:41:38,285.285 INFO    ] 200
[2026-06-27 02:41:38,287.287 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:41:38,312.312 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:41:38,350.350 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:41:38,351.351 INFO    ] No camera update needed
[2026-06-27 02:41:38,352.352 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:41:38,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:41:38,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:41:38,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:41:40,399.399 INFO    ] ================================================
[2026-06-27 02:41:40,415.415 INFO    ] Launching Daemon at Sat Jun 27 02:41:40 IST 2026
[2026-06-27 02:41:40,426.426 INFO    ] ================================================
[2026-06-27 02:41:40,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:41:40
[2026-06-27 02:41:41,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:41:41,244.244 INFO    ] Initializing speech engine...
[2026-06-27 02:41:41,248.248 INFO    ] 2026-06-27 02:41:41
[2026-06-27 02:41:41,446.446 INFO    ] 2026-06-27 02:41:41
[2026-06-27 02:41:41,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:41:41,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:41:41,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:41:41,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:41:41,910.910 INFO    ] time= 27/06/2026 02:41:41
[2026-06-27 02:41:41,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:41:41,968.968 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:41:42,072.072 INFO    ] No existing commands found in stream
[2026-06-27 02:41:47,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:41:47,089.089 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-27 02:41:50,388.388 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 02:41:50,389.389 INFO    ] Checking for system updates...
[2026-06-27 02:41:50,410.410 INFO    ] 200
[2026-06-27 02:41:50,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:41:50,442.442 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:41:50,443.443 INFO    ] No update needed
[2026-06-27 02:41:50,445.445 INFO    ] Checking for camera pi updates...
[2026-06-27 02:41:50,464.464 INFO    ] 200
[2026-06-27 02:41:50,465.465 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:41:50,489.489 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:41:50,533.533 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:41:50,534.534 INFO    ] No camera update needed
[2026-06-27 02:41:50,535.535 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:41:50,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:41:50,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:41:50,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:41:52,582.582 INFO    ] ================================================
[2026-06-27 02:41:52,597.597 INFO    ] Launching Daemon at Sat Jun 27 02:41:52 IST 2026
[2026-06-27 02:41:52,608.608 INFO    ] ================================================
[2026-06-27 02:41:52,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:41:52
[2026-06-27 02:41:53,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:41:53,394.394 INFO    ] Initializing speech engine...
[2026-06-27 02:41:53,406.406 INFO    ] 2026-06-27 02:41:53
[2026-06-27 02:41:53,618.618 INFO    ] 2026-06-27 02:41:53
[2026-06-27 02:41:53,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:41:53,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:41:53,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:41:53,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:41:54,042.042 INFO    ] time= 27/06/2026 02:41:53
[2026-06-27 02:41:54,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:41:54,072.072 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:41:54,140.140 INFO    ] No existing commands found in stream
[2026-06-27 02:41:59,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:41:59,151.151 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-27 02:41:59,905.905 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 02:41:59,907.907 INFO    ] Checking for system updates...
[2026-06-27 02:41:59,927.927 INFO    ] 200
[2026-06-27 02:41:59,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:41:59,961.961 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:41:59,963.963 INFO    ] No update needed
[2026-06-27 02:41:59,964.964 INFO    ] Checking for camera pi updates...
[2026-06-27 02:41:59,986.986 INFO    ] 200
[2026-06-27 02:41:59,987.987 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:42:00,012.012 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:42:00,057.057 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:42:00,058.058 INFO    ] No camera update needed
[2026-06-27 02:42:00,059.059 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:42:00,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:42:00,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:42:00,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:42:02,096.096 INFO    ] ================================================
[2026-06-27 02:42:02,104.104 INFO    ] Launching Daemon at Sat Jun 27 02:42:02 IST 2026
[2026-06-27 02:42:02,110.110 INFO    ] ================================================
[2026-06-27 02:42:02,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:42:02
[2026-06-27 02:42:02,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:42:02,937.937 INFO    ] Initializing speech engine...
[2026-06-27 02:42:02,941.941 INFO    ] 2026-06-27 02:42:02
[2026-06-27 02:42:03,168.168 INFO    ] 2026-06-27 02:42:03
[2026-06-27 02:42:03,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:42:03,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:42:03,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:42:03,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:42:03,601.601 INFO    ] time= 27/06/2026 02:42:03
[2026-06-27 02:42:03,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:42:03,634.634 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:42:03,701.701 INFO    ] No existing commands found in stream
[2026-06-27 02:42:08,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:42:08,718.718 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-27 02:42:10,739.739 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 02:42:10,740.740 INFO    ] Checking for system updates...
[2026-06-27 02:42:10,763.763 INFO    ] 200
[2026-06-27 02:42:10,764.764 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:42:10,796.796 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:42:10,797.797 INFO    ] No update needed
[2026-06-27 02:42:10,798.798 INFO    ] Checking for camera pi updates...
[2026-06-27 02:42:10,818.818 INFO    ] 200
[2026-06-27 02:42:10,820.820 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:42:10,843.843 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:42:10,886.886 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:42:10,888.888 INFO    ] No camera update needed
[2026-06-27 02:42:10,889.889 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:42:10,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:42:10,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:42:10,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:42:12,936.936 INFO    ] ================================================
[2026-06-27 02:42:12,951.951 INFO    ] Launching Daemon at Sat Jun 27 02:42:12 IST 2026
[2026-06-27 02:42:12,962.962 INFO    ] ================================================
[2026-06-27 02:42:13,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:42:13
[2026-06-27 02:42:13,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:42:13,780.780 INFO    ] Initializing speech engine...
[2026-06-27 02:42:13,790.790 INFO    ] 2026-06-27 02:42:13
[2026-06-27 02:42:13,998.998 INFO    ] 2026-06-27 02:42:13
[2026-06-27 02:42:14,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:42:14,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:42:14,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:42:14,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:42:14,442.442 INFO    ] time= 27/06/2026 02:42:14
[2026-06-27 02:42:14,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:42:14,450.450 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:42:14,516.516 INFO    ] No existing commands found in stream
[2026-06-27 02:42:19,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:42:19,528.528 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-27 02:42:21,772.772 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 02:42:21,774.774 INFO    ] Checking for system updates...
[2026-06-27 02:42:21,796.796 INFO    ] 200
[2026-06-27 02:42:21,798.798 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:42:21,830.830 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:42:21,832.832 INFO    ] No update needed
[2026-06-27 02:42:21,833.833 INFO    ] Checking for camera pi updates...
[2026-06-27 02:42:21,854.854 INFO    ] 200
[2026-06-27 02:42:21,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:42:21,881.881 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:42:21,922.922 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:42:21,924.924 INFO    ] No camera update needed
[2026-06-27 02:42:21,925.925 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:42:21,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:42:21,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:42:21,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:42:23,971.971 INFO    ] ================================================
[2026-06-27 02:42:23,987.987 INFO    ] Launching Daemon at Sat Jun 27 02:42:23 IST 2026
[2026-06-27 02:42:24,998.998 INFO    ] ================================================
[2026-06-27 02:42:24,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:42:24
[2026-06-27 02:42:24,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:42:24,785.785 INFO    ] Initializing speech engine...
[2026-06-27 02:42:24,795.795 INFO    ] 2026-06-27 02:42:24
[2026-06-27 02:42:24,999.999 INFO    ] 2026-06-27 02:42:24
[2026-06-27 02:42:25,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:42:25,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:42:25,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:42:25,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:42:25,420.420 INFO    ] time= 27/06/2026 02:42:25
[2026-06-27 02:42:25,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:42:25,448.448 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:42:25,515.515 INFO    ] No existing commands found in stream
[2026-06-27 02:42:30,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:42:30,527.527 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-27 02:42:33,530.530 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 02:42:33,531.531 INFO    ] Checking for system updates...
[2026-06-27 02:42:33,552.552 INFO    ] 200
[2026-06-27 02:42:33,553.553 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:42:33,584.584 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:42:33,585.585 INFO    ] No update needed
[2026-06-27 02:42:33,587.587 INFO    ] Checking for camera pi updates...
[2026-06-27 02:42:33,607.607 INFO    ] 200
[2026-06-27 02:42:33,608.608 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:42:33,631.631 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:42:33,686.686 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:42:33,688.688 INFO    ] No camera update needed
[2026-06-27 02:42:33,689.689 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:42:33,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:42:33,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:42:33,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:42:35,736.736 INFO    ] ================================================
[2026-06-27 02:42:35,751.751 INFO    ] Launching Daemon at Sat Jun 27 02:42:35 IST 2026
[2026-06-27 02:42:35,762.762 INFO    ] ================================================
[2026-06-27 02:42:36,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:42:36
[2026-06-27 02:42:36,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:42:36,601.601 INFO    ] Initializing speech engine...
[2026-06-27 02:42:36,614.614 INFO    ] 2026-06-27 02:42:36
[2026-06-27 02:42:36,835.835 INFO    ] 2026-06-27 02:42:36
[2026-06-27 02:42:36,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:42:37,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:42:37,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:42:37,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:42:37,264.264 INFO    ] time= 27/06/2026 02:42:37
[2026-06-27 02:42:37,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:42:37,316.316 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:42:37,392.392 INFO    ] No existing commands found in stream
[2026-06-27 02:42:42,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:42:42,406.406 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-27 02:42:42,866.866 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:42:42,868.868 INFO    ] Checking for system updates...
[2026-06-27 02:42:42,889.889 INFO    ] 200
[2026-06-27 02:42:42,891.891 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:42:42,922.922 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:42:42,924.924 INFO    ] No update needed
[2026-06-27 02:42:42,925.925 INFO    ] Checking for camera pi updates...
[2026-06-27 02:42:42,946.946 INFO    ] 200
[2026-06-27 02:42:42,947.947 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:42:42,971.971 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:42:43,118.118 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:42:43,120.120 INFO    ] No camera update needed
[2026-06-27 02:42:43,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:42:43,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:42:43,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:42:43,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:42:45,167.167 INFO    ] ================================================
[2026-06-27 02:42:45,182.182 INFO    ] Launching Daemon at Sat Jun 27 02:42:45 IST 2026
[2026-06-27 02:42:45,194.194 INFO    ] ================================================
[2026-06-27 02:42:45,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:42:45
[2026-06-27 02:42:45,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:42:45,995.995 INFO    ] Initializing speech engine...
[2026-06-27 02:42:46,006.006 INFO    ] 2026-06-27 02:42:46
[2026-06-27 02:42:46,213.213 INFO    ] 2026-06-27 02:42:46
[2026-06-27 02:42:46,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:42:46,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:42:46,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:42:46,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:42:46,638.638 INFO    ] time= 27/06/2026 02:42:46
[2026-06-27 02:42:46,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:42:46,673.673 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:42:46,742.742 INFO    ] No existing commands found in stream
[2026-06-27 02:42:51,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:42:51,753.753 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-27 02:42:54,226.226 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:42:54,227.227 INFO    ] Checking for system updates...
[2026-06-27 02:42:54,250.250 INFO    ] 200
[2026-06-27 02:42:54,252.252 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:42:54,284.284 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:42:54,286.286 INFO    ] No update needed
[2026-06-27 02:42:54,287.287 INFO    ] Checking for camera pi updates...
[2026-06-27 02:42:54,307.307 INFO    ] 200
[2026-06-27 02:42:54,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:42:54,333.333 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:42:54,364.364 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:42:54,365.365 INFO    ] No camera update needed
[2026-06-27 02:42:54,367.367 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:42:54,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:42:54,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:42:54,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:42:56,415.415 INFO    ] ================================================
[2026-06-27 02:42:56,431.431 INFO    ] Launching Daemon at Sat Jun 27 02:42:56 IST 2026
[2026-06-27 02:42:56,442.442 INFO    ] ================================================
[2026-06-27 02:42:56,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:42:56
[2026-06-27 02:42:57,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:42:57,314.314 INFO    ] Initializing speech engine...
[2026-06-27 02:42:57,320.320 INFO    ] 2026-06-27 02:42:57
[2026-06-27 02:42:57,526.526 INFO    ] 2026-06-27 02:42:57
[2026-06-27 02:42:57,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:42:57,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:42:57,749.749 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:42:57,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:42:57,945.945 INFO    ] time= 27/06/2026 02:42:57
[2026-06-27 02:42:57,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:42:57,975.975 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:42:58,067.067 INFO    ] No existing commands found in stream
[2026-06-27 02:43:03,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:43:03,077.077 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-27 02:43:07,485.485 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 02:43:07,486.486 INFO    ] Checking for system updates...
[2026-06-27 02:43:07,507.507 INFO    ] 200
[2026-06-27 02:43:07,509.509 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:43:07,542.542 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:43:07,543.543 INFO    ] No update needed
[2026-06-27 02:43:07,545.545 INFO    ] Checking for camera pi updates...
[2026-06-27 02:43:07,568.568 INFO    ] 200
[2026-06-27 02:43:07,569.569 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:43:07,593.593 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:43:07,637.637 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:43:07,639.639 INFO    ] No camera update needed
[2026-06-27 02:43:07,640.640 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:43:07,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:43:07,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:43:07,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:43:09,687.687 INFO    ] ================================================
[2026-06-27 02:43:09,703.703 INFO    ] Launching Daemon at Sat Jun 27 02:43:09 IST 2026
[2026-06-27 02:43:09,714.714 INFO    ] ================================================
[2026-06-27 02:43:10,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:43:10
[2026-06-27 02:43:10,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:43:10,533.533 INFO    ] Initializing speech engine...
[2026-06-27 02:43:10,543.543 INFO    ] 2026-06-27 02:43:10
[2026-06-27 02:43:10,748.748 INFO    ] 2026-06-27 02:43:10
[2026-06-27 02:43:10,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:43:10,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:43:10,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:43:11,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:43:11,185.185 INFO    ] time= 27/06/2026 02:43:11
[2026-06-27 02:43:11,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:43:11,192.192 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:43:11,283.283 INFO    ] No existing commands found in stream
[2026-06-27 02:43:16,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:43:16,300.300 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-27 02:43:20,517.517 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 02:43:20,518.518 INFO    ] Checking for system updates...
[2026-06-27 02:43:20,539.539 INFO    ] 200
[2026-06-27 02:43:20,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:43:20,573.573 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:43:20,575.575 INFO    ] No update needed
[2026-06-27 02:43:20,576.576 INFO    ] Checking for camera pi updates...
[2026-06-27 02:43:20,597.597 INFO    ] 200
[2026-06-27 02:43:20,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:43:20,624.624 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:43:20,667.667 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:43:20,668.668 INFO    ] No camera update needed
[2026-06-27 02:43:20,669.669 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:43:20,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:43:20,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:43:20,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:43:22,716.716 INFO    ] ================================================
[2026-06-27 02:43:22,732.732 INFO    ] Launching Daemon at Sat Jun 27 02:43:22 IST 2026
[2026-06-27 02:43:22,743.743 INFO    ] ================================================
[2026-06-27 02:43:23,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:43:23
[2026-06-27 02:43:23,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:43:23,527.527 INFO    ] Initializing speech engine...
[2026-06-27 02:43:23,532.532 INFO    ] 2026-06-27 02:43:23
[2026-06-27 02:43:23,736.736 INFO    ] 2026-06-27 02:43:23
[2026-06-27 02:43:23,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:43:23,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:43:23,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:43:24,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:43:24,148.148 INFO    ] time= 27/06/2026 02:43:24
[2026-06-27 02:43:24,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:43:24,187.187 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:43:24,279.279 INFO    ] No existing commands found in stream
[2026-06-27 02:43:29,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:43:29,290.290 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-27 02:43:32,791.791 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 02:43:32,793.793 INFO    ] Checking for system updates...
[2026-06-27 02:43:32,815.815 INFO    ] 200
[2026-06-27 02:43:32,816.816 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:43:32,855.855 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:43:32,857.857 INFO    ] No update needed
[2026-06-27 02:43:32,859.859 INFO    ] Checking for camera pi updates...
[2026-06-27 02:43:32,879.879 INFO    ] 200
[2026-06-27 02:43:32,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:43:32,905.905 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:43:32,938.938 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:43:32,941.941 INFO    ] No camera update needed
[2026-06-27 02:43:32,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:43:32,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:43:32,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:43:32,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:43:35,002.002 INFO    ] ================================================
[2026-06-27 02:43:35,019.019 INFO    ] Launching Daemon at Sat Jun 27 02:43:35 IST 2026
[2026-06-27 02:43:35,029.029 INFO    ] ================================================
[2026-06-27 02:43:35,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:43:35
[2026-06-27 02:43:35,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:43:35,830.830 INFO    ] Initializing speech engine...
[2026-06-27 02:43:35,840.840 INFO    ] 2026-06-27 02:43:35
[2026-06-27 02:43:36,046.046 INFO    ] 2026-06-27 02:43:36
[2026-06-27 02:43:36,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:43:36,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:43:36,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:43:36,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:43:36,460.460 INFO    ] time= 27/06/2026 02:43:36
[2026-06-27 02:43:36,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:43:36,494.494 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:43:36,560.560 INFO    ] No existing commands found in stream
[2026-06-27 02:43:41,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:43:41,578.578 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-27 02:43:44,746.746 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 02:43:44,748.748 INFO    ] Checking for system updates...
[2026-06-27 02:43:44,770.770 INFO    ] 200
[2026-06-27 02:43:44,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:43:44,805.805 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:43:44,807.807 INFO    ] No update needed
[2026-06-27 02:43:44,808.808 INFO    ] Checking for camera pi updates...
[2026-06-27 02:43:44,828.828 INFO    ] 200
[2026-06-27 02:43:44,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:43:44,853.853 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:43:44,882.882 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:43:44,884.884 INFO    ] No camera update needed
[2026-06-27 02:43:44,885.885 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:43:44,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:43:44,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:43:44,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:43:46,934.934 INFO    ] ================================================
[2026-06-27 02:43:46,950.950 INFO    ] Launching Daemon at Sat Jun 27 02:43:46 IST 2026
[2026-06-27 02:43:46,961.961 INFO    ] ================================================
[2026-06-27 02:43:47,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:43:47
[2026-06-27 02:43:47,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:43:47,757.757 INFO    ] Initializing speech engine...
[2026-06-27 02:43:47,761.761 INFO    ] 2026-06-27 02:43:47
[2026-06-27 02:43:47,982.982 INFO    ] 2026-06-27 02:43:47
[2026-06-27 02:43:48,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:43:48,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:43:48,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:43:48,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:43:48,404.404 INFO    ] time= 27/06/2026 02:43:48
[2026-06-27 02:43:48,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:43:48,439.439 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:43:48,506.506 INFO    ] No existing commands found in stream
[2026-06-27 02:43:53,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:43:53,523.523 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-27 02:43:54,565.565 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 02:43:54,567.567 INFO    ] Checking for system updates...
[2026-06-27 02:43:54,589.589 INFO    ] 200
[2026-06-27 02:43:54,590.590 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:43:54,623.623 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:43:54,624.624 INFO    ] No update needed
[2026-06-27 02:43:54,625.625 INFO    ] Checking for camera pi updates...
[2026-06-27 02:43:54,646.646 INFO    ] 200
[2026-06-27 02:43:54,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:43:54,674.674 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:43:54,707.707 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:43:54,709.709 INFO    ] No camera update needed
[2026-06-27 02:43:54,710.710 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:43:54,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:43:54,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:43:54,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:43:56,758.758 INFO    ] ================================================
[2026-06-27 02:43:56,773.773 INFO    ] Launching Daemon at Sat Jun 27 02:43:56 IST 2026
[2026-06-27 02:43:56,784.784 INFO    ] ================================================
[2026-06-27 02:43:57,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:43:57
[2026-06-27 02:43:57,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:43:57,585.585 INFO    ] Initializing speech engine...
[2026-06-27 02:43:57,593.593 INFO    ] 2026-06-27 02:43:57
[2026-06-27 02:43:57,802.802 INFO    ] 2026-06-27 02:43:57
[2026-06-27 02:43:57,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:43:58,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:43:58,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:43:58,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:43:58,226.226 INFO    ] time= 27/06/2026 02:43:58
[2026-06-27 02:43:58,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:43:58,273.273 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:43:58,345.345 INFO    ] No existing commands found in stream
[2026-06-27 02:44:03,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:44:03,358.358 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-27 02:44:05,513.513 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 02:44:05,515.515 INFO    ] Checking for system updates...
[2026-06-27 02:44:05,536.536 INFO    ] 200
[2026-06-27 02:44:05,537.537 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:44:05,568.568 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:44:05,569.569 INFO    ] No update needed
[2026-06-27 02:44:05,571.571 INFO    ] Checking for camera pi updates...
[2026-06-27 02:44:05,591.591 INFO    ] 200
[2026-06-27 02:44:05,592.592 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:44:05,615.615 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:44:05,662.662 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:44:05,664.664 INFO    ] No camera update needed
[2026-06-27 02:44:05,666.666 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:44:05,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:44:05,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:44:05,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:44:07,714.714 INFO    ] ================================================
[2026-06-27 02:44:07,729.729 INFO    ] Launching Daemon at Sat Jun 27 02:44:07 IST 2026
[2026-06-27 02:44:07,740.740 INFO    ] ================================================
[2026-06-27 02:44:08,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:44:08
[2026-06-27 02:44:08,383.383 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:44:08,525.525 INFO    ] Initializing speech engine...
[2026-06-27 02:44:08,530.530 INFO    ] 2026-06-27 02:44:08
[2026-06-27 02:44:08,733.733 INFO    ] 2026-06-27 02:44:08
[2026-06-27 02:44:08,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:44:08,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:44:08,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:44:09,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:44:09,153.153 INFO    ] time= 27/06/2026 02:44:09
[2026-06-27 02:44:09,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:44:09,181.181 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:44:09,271.271 INFO    ] No existing commands found in stream
[2026-06-27 02:44:14,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:44:14,282.282 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-27 02:44:18,247.247 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 02:44:18,248.248 INFO    ] Checking for system updates...
[2026-06-27 02:44:18,270.270 INFO    ] 200
[2026-06-27 02:44:18,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:44:18,304.304 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:44:18,305.305 INFO    ] No update needed
[2026-06-27 02:44:18,307.307 INFO    ] Checking for camera pi updates...
[2026-06-27 02:44:18,328.328 INFO    ] 200
[2026-06-27 02:44:18,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:44:18,354.354 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:44:18,400.400 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:44:18,402.402 INFO    ] No camera update needed
[2026-06-27 02:44:18,403.403 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:44:18,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:44:18,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:44:18,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:44:20,449.449 INFO    ] ================================================
[2026-06-27 02:44:20,464.464 INFO    ] Launching Daemon at Sat Jun 27 02:44:20 IST 2026
[2026-06-27 02:44:20,475.475 INFO    ] ================================================
[2026-06-27 02:44:20,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:44:20
[2026-06-27 02:44:21,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:44:21,262.262 INFO    ] Initializing speech engine...
[2026-06-27 02:44:21,274.274 INFO    ] 2026-06-27 02:44:21
[2026-06-27 02:44:21,481.481 INFO    ] 2026-06-27 02:44:21
[2026-06-27 02:44:21,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:44:21,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:44:21,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:44:21,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:44:21,920.920 INFO    ] time= 27/06/2026 02:44:21
[2026-06-27 02:44:21,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:44:21,927.927 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:44:21,993.993 INFO    ] No existing commands found in stream
[2026-06-27 02:44:27,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:44:27,005.005 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-27 02:44:27,590.590 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 02:44:27,591.591 INFO    ] Checking for system updates...
[2026-06-27 02:44:27,612.612 INFO    ] 200
[2026-06-27 02:44:27,613.613 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:44:27,644.644 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:44:27,645.645 INFO    ] No update needed
[2026-06-27 02:44:27,647.647 INFO    ] Checking for camera pi updates...
[2026-06-27 02:44:27,666.666 INFO    ] 200
[2026-06-27 02:44:27,668.668 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:44:27,696.696 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:44:27,737.737 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:44:27,738.738 INFO    ] No camera update needed
[2026-06-27 02:44:27,739.739 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:44:27,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:44:27,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:44:27,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:44:29,785.785 INFO    ] ================================================
[2026-06-27 02:44:29,799.799 INFO    ] Launching Daemon at Sat Jun 27 02:44:29 IST 2026
[2026-06-27 02:44:29,810.810 INFO    ] ================================================
[2026-06-27 02:44:30,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:44:30
[2026-06-27 02:44:30,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:44:30,586.586 INFO    ] Initializing speech engine...
[2026-06-27 02:44:30,592.592 INFO    ] 2026-06-27 02:44:30
[2026-06-27 02:44:30,796.796 INFO    ] 2026-06-27 02:44:30
[2026-06-27 02:44:30,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:44:31,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:44:31,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:44:31,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:44:31,215.215 INFO    ] time= 27/06/2026 02:44:31
[2026-06-27 02:44:31,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:44:31,243.243 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:44:31,308.308 INFO    ] No existing commands found in stream
[2026-06-27 02:44:36,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:44:36,321.321 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-27 02:44:40,161.161 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 02:44:40,164.164 INFO    ] Checking for system updates...
[2026-06-27 02:44:40,200.200 INFO    ] 200
[2026-06-27 02:44:40,202.202 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:44:40,258.258 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:44:40,260.260 INFO    ] No update needed
[2026-06-27 02:44:40,261.261 INFO    ] Checking for camera pi updates...
[2026-06-27 02:44:40,281.281 INFO    ] 200
[2026-06-27 02:44:40,283.283 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:44:40,308.308 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:44:40,352.352 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:44:40,354.354 INFO    ] No camera update needed
[2026-06-27 02:44:40,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:44:40,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:44:40,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:44:40,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:44:42,405.405 INFO    ] ================================================
[2026-06-27 02:44:42,420.420 INFO    ] Launching Daemon at Sat Jun 27 02:44:42 IST 2026
[2026-06-27 02:44:42,431.431 INFO    ] ================================================
[2026-06-27 02:44:42,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:44:42
[2026-06-27 02:44:43,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:44:43,235.235 INFO    ] Initializing speech engine...
[2026-06-27 02:44:43,248.248 INFO    ] 2026-06-27 02:44:43
[2026-06-27 02:44:43,456.456 INFO    ] 2026-06-27 02:44:43
[2026-06-27 02:44:43,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:44:43,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:44:43,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:44:43,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:44:43,886.886 INFO    ] time= 27/06/2026 02:44:43
[2026-06-27 02:44:43,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:44:43,914.914 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:44:44,008.008 INFO    ] No existing commands found in stream
[2026-06-27 02:44:49,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:44:49,020.020 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-27 02:44:51,788.788 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:44:51,789.789 INFO    ] Checking for system updates...
[2026-06-27 02:44:51,812.812 INFO    ] 200
[2026-06-27 02:44:51,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:44:51,844.844 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:44:51,845.845 INFO    ] No update needed
[2026-06-27 02:44:51,846.846 INFO    ] Checking for camera pi updates...
[2026-06-27 02:44:51,866.866 INFO    ] 200
[2026-06-27 02:44:51,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:44:51,890.890 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:44:52,039.039 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:44:52,041.041 INFO    ] No camera update needed
[2026-06-27 02:44:52,042.042 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:44:52,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:44:52,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:44:52,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:44:54,089.089 INFO    ] ================================================
[2026-06-27 02:44:54,104.104 INFO    ] Launching Daemon at Sat Jun 27 02:44:54 IST 2026
[2026-06-27 02:44:54,115.115 INFO    ] ================================================
[2026-06-27 02:44:54,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:44:54
[2026-06-27 02:44:54,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:44:55,004.004 INFO    ] Initializing speech engine...
[2026-06-27 02:44:55,009.009 INFO    ] 2026-06-27 02:44:55
[2026-06-27 02:44:55,219.219 INFO    ] 2026-06-27 02:44:55
[2026-06-27 02:44:55,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:44:55,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:44:55,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:44:55,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:44:55,662.662 INFO    ] time= 27/06/2026 02:44:55
[2026-06-27 02:44:55,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:44:55,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:44:55,737.737 INFO    ] No existing commands found in stream
[2026-06-27 02:45:00,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:45:00,755.755 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-27 02:45:04,126.126 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:45:04,128.128 INFO    ] Checking for system updates...
[2026-06-27 02:45:04,151.151 INFO    ] 200
[2026-06-27 02:45:04,152.152 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:45:04,185.185 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:45:04,187.187 INFO    ] No update needed
[2026-06-27 02:45:04,188.188 INFO    ] Checking for camera pi updates...
[2026-06-27 02:45:04,209.209 INFO    ] 200
[2026-06-27 02:45:04,210.210 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:45:04,236.236 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:45:04,286.286 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:45:04,287.287 INFO    ] No camera update needed
[2026-06-27 02:45:04,288.288 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:45:04,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:45:04,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:45:04,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:45:06,338.338 INFO    ] ================================================
[2026-06-27 02:45:06,361.361 INFO    ] Launching Daemon at Sat Jun 27 02:45:06 IST 2026
[2026-06-27 02:45:06,374.374 INFO    ] ================================================
[2026-06-27 02:45:06,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:45:06
[2026-06-27 02:45:07,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:45:07,167.167 INFO    ] Initializing speech engine...
[2026-06-27 02:45:07,176.176 INFO    ] 2026-06-27 02:45:07
[2026-06-27 02:45:07,383.383 INFO    ] 2026-06-27 02:45:07
[2026-06-27 02:45:07,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:45:07,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:45:07,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:45:07,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:45:07,802.802 INFO    ] time= 27/06/2026 02:45:07
[2026-06-27 02:45:07,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:45:07,829.829 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:45:07,921.921 INFO    ] No existing commands found in stream
[2026-06-27 02:45:12,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:45:12,938.938 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-27 02:45:15,569.569 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 02:45:15,570.570 INFO    ] Checking for system updates...
[2026-06-27 02:45:15,593.593 INFO    ] 200
[2026-06-27 02:45:15,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:45:15,627.627 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:45:15,629.629 INFO    ] No update needed
[2026-06-27 02:45:15,630.630 INFO    ] Checking for camera pi updates...
[2026-06-27 02:45:15,649.649 INFO    ] 200
[2026-06-27 02:45:15,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:45:15,675.675 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:45:15,721.721 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:45:15,722.722 INFO    ] No camera update needed
[2026-06-27 02:45:15,724.724 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:45:15,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:45:15,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:45:15,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:45:17,770.770 INFO    ] ================================================
[2026-06-27 02:45:17,786.786 INFO    ] Launching Daemon at Sat Jun 27 02:45:17 IST 2026
[2026-06-27 02:45:17,798.798 INFO    ] ================================================
[2026-06-27 02:45:18,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:45:18
[2026-06-27 02:45:18,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:45:18,591.591 INFO    ] Initializing speech engine...
[2026-06-27 02:45:18,596.596 INFO    ] 2026-06-27 02:45:18
[2026-06-27 02:45:18,815.815 INFO    ] 2026-06-27 02:45:18
[2026-06-27 02:45:18,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:45:19,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:45:19,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:45:19,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:45:19,230.230 INFO    ] time= 27/06/2026 02:45:19
[2026-06-27 02:45:19,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:45:19,270.270 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:45:19,337.337 INFO    ] No existing commands found in stream
[2026-06-27 02:45:24,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:45:24,354.354 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-27 02:45:28,124.124 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 02:45:28,125.125 INFO    ] Checking for system updates...
[2026-06-27 02:45:28,151.151 INFO    ] 200
[2026-06-27 02:45:28,153.153 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:45:28,199.199 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:45:28,200.200 INFO    ] No update needed
[2026-06-27 02:45:28,202.202 INFO    ] Checking for camera pi updates...
[2026-06-27 02:45:28,235.235 INFO    ] 200
[2026-06-27 02:45:28,237.237 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:45:28,261.261 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:45:28,327.327 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:45:28,328.328 INFO    ] No camera update needed
[2026-06-27 02:45:28,329.329 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:45:28,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:45:28,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:45:28,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:45:30,375.375 INFO    ] ================================================
[2026-06-27 02:45:30,391.391 INFO    ] Launching Daemon at Sat Jun 27 02:45:30 IST 2026
[2026-06-27 02:45:30,402.402 INFO    ] ================================================
[2026-06-27 02:45:30,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:45:30
[2026-06-27 02:45:31,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:45:31,178.178 INFO    ] Initializing speech engine...
[2026-06-27 02:45:31,191.191 INFO    ] 2026-06-27 02:45:31
[2026-06-27 02:45:31,396.396 INFO    ] 2026-06-27 02:45:31
[2026-06-27 02:45:31,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:45:32,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:45:32,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:45:32,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:45:32,644.644 INFO    ] time= 27/06/2026 02:45:32
[2026-06-27 02:45:32,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:45:32,682.682 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:45:32,741.741 INFO    ] No existing commands found in stream
[2026-06-27 02:45:37,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:45:37,755.755 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-27 02:45:41,748.748 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 02:45:41,749.749 INFO    ] Checking for system updates...
[2026-06-27 02:45:41,771.771 INFO    ] 200
[2026-06-27 02:45:41,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:45:41,805.805 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:45:41,807.807 INFO    ] No update needed
[2026-06-27 02:45:41,808.808 INFO    ] Checking for camera pi updates...
[2026-06-27 02:45:41,830.830 INFO    ] 200
[2026-06-27 02:45:41,831.831 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:45:41,854.854 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:45:41,901.901 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:45:41,902.902 INFO    ] No camera update needed
[2026-06-27 02:45:41,904.904 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:45:41,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:45:41,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:45:41,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:45:43,952.952 INFO    ] ================================================
[2026-06-27 02:45:43,967.967 INFO    ] Launching Daemon at Sat Jun 27 02:45:43 IST 2026
[2026-06-27 02:45:43,979.979 INFO    ] ================================================
[2026-06-27 02:45:44,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:45:44
[2026-06-27 02:45:44,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:45:44,769.769 INFO    ] Initializing speech engine...
[2026-06-27 02:45:44,777.777 INFO    ] 2026-06-27 02:45:44
[2026-06-27 02:45:44,989.989 INFO    ] 2026-06-27 02:45:44
[2026-06-27 02:45:45,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:45:45,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:45:45,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:45:45,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:45:45,404.404 INFO    ] time= 27/06/2026 02:45:45
[2026-06-27 02:45:45,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:45:45,437.437 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:45:45,505.505 INFO    ] No existing commands found in stream
[2026-06-27 02:45:50,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:45:50,517.517 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-27 02:45:54,195.195 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 02:45:54,197.197 INFO    ] Checking for system updates...
[2026-06-27 02:45:54,220.220 INFO    ] 200
[2026-06-27 02:45:54,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:45:54,252.252 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:45:54,253.253 INFO    ] No update needed
[2026-06-27 02:45:54,254.254 INFO    ] Checking for camera pi updates...
[2026-06-27 02:45:54,275.275 INFO    ] 200
[2026-06-27 02:45:54,277.277 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:45:54,302.302 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:45:54,335.335 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:45:54,336.336 INFO    ] No camera update needed
[2026-06-27 02:45:54,338.338 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:45:54,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:45:54,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:45:54,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:45:56,385.385 INFO    ] ================================================
[2026-06-27 02:45:56,400.400 INFO    ] Launching Daemon at Sat Jun 27 02:45:56 IST 2026
[2026-06-27 02:45:56,412.412 INFO    ] ================================================
[2026-06-27 02:45:56,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:45:56
[2026-06-27 02:45:57,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:45:57,212.212 INFO    ] Initializing speech engine...
[2026-06-27 02:45:57,217.217 INFO    ] 2026-06-27 02:45:57
[2026-06-27 02:45:57,427.427 INFO    ] 2026-06-27 02:45:57
[2026-06-27 02:45:57,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:45:57,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:45:57,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:45:57,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:45:57,853.853 INFO    ] time= 27/06/2026 02:45:57
[2026-06-27 02:45:57,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:45:57,881.881 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:45:57,971.971 INFO    ] No existing commands found in stream
[2026-06-27 02:46:02,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:46:02,989.989 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-27 02:46:06,075.075 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:46:06,077.077 INFO    ] Checking for system updates...
[2026-06-27 02:46:06,100.100 INFO    ] 200
[2026-06-27 02:46:06,101.101 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:46:06,137.137 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:46:06,138.138 INFO    ] No update needed
[2026-06-27 02:46:06,140.140 INFO    ] Checking for camera pi updates...
[2026-06-27 02:46:06,162.162 INFO    ] 200
[2026-06-27 02:46:06,164.164 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:46:06,188.188 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:46:06,233.233 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:46:06,234.234 INFO    ] No camera update needed
[2026-06-27 02:46:06,236.236 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:46:06,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:46:06,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:46:06,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:46:08,284.284 INFO    ] ================================================
[2026-06-27 02:46:08,300.300 INFO    ] Launching Daemon at Sat Jun 27 02:46:08 IST 2026
[2026-06-27 02:46:08,311.311 INFO    ] ================================================
[2026-06-27 02:46:08,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:46:08
[2026-06-27 02:46:09,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:46:09,160.160 INFO    ] Initializing speech engine...
[2026-06-27 02:46:09,167.167 INFO    ] 2026-06-27 02:46:09
[2026-06-27 02:46:09,373.373 INFO    ] 2026-06-27 02:46:09
[2026-06-27 02:46:09,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:46:09,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:46:09,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:46:09,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:46:09,822.822 INFO    ] time= 27/06/2026 02:46:09
[2026-06-27 02:46:09,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:46:09,829.829 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:46:09,895.895 INFO    ] No existing commands found in stream
[2026-06-27 02:46:14,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:46:14,908.908 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-27 02:46:17,925.925 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 02:46:17,926.926 INFO    ] Checking for system updates...
[2026-06-27 02:46:17,947.947 INFO    ] 200
[2026-06-27 02:46:17,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:46:17,980.980 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:46:17,982.982 INFO    ] No update needed
[2026-06-27 02:46:17,983.983 INFO    ] Checking for camera pi updates...
[2026-06-27 02:46:18,005.005 INFO    ] 200
[2026-06-27 02:46:18,006.006 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:46:18,033.033 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:46:18,082.082 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:46:18,084.084 INFO    ] No camera update needed
[2026-06-27 02:46:18,086.086 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:46:18,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:46:18,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:46:18,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:46:20,132.132 INFO    ] ================================================
[2026-06-27 02:46:20,147.147 INFO    ] Launching Daemon at Sat Jun 27 02:46:20 IST 2026
[2026-06-27 02:46:20,158.158 INFO    ] ================================================
[2026-06-27 02:46:20,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:46:20
[2026-06-27 02:46:20,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:46:20,958.958 INFO    ] Initializing speech engine...
[2026-06-27 02:46:20,963.963 INFO    ] 2026-06-27 02:46:20
[2026-06-27 02:46:21,169.169 INFO    ] 2026-06-27 02:46:21
[2026-06-27 02:46:21,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:46:21,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:46:21,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:46:21,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:46:21,583.583 INFO    ] time= 27/06/2026 02:46:21
[2026-06-27 02:46:21,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:46:21,627.627 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:46:21,692.692 INFO    ] No existing commands found in stream
[2026-06-27 02:46:26,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:46:26,707.707 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-27 02:46:28,023.023 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 02:46:28,025.025 INFO    ] Checking for system updates...
[2026-06-27 02:46:28,048.048 INFO    ] 200
[2026-06-27 02:46:28,049.049 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:46:28,082.082 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:46:28,083.083 INFO    ] No update needed
[2026-06-27 02:46:28,085.085 INFO    ] Checking for camera pi updates...
[2026-06-27 02:46:28,106.106 INFO    ] 200
[2026-06-27 02:46:28,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:46:28,133.133 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:46:28,182.182 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:46:28,183.183 INFO    ] No camera update needed
[2026-06-27 02:46:28,185.185 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:46:28,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:46:28,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:46:28,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:46:30,230.230 INFO    ] ================================================
[2026-06-27 02:46:30,245.245 INFO    ] Launching Daemon at Sat Jun 27 02:46:30 IST 2026
[2026-06-27 02:46:30,256.256 INFO    ] ================================================
[2026-06-27 02:46:30,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:46:30
[2026-06-27 02:46:30,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:46:31,176.176 INFO    ] Initializing speech engine...
[2026-06-27 02:46:31,180.180 INFO    ] 2026-06-27 02:46:31
[2026-06-27 02:46:31,408.408 INFO    ] 2026-06-27 02:46:31
[2026-06-27 02:46:31,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:46:32,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:46:32,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:46:32,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:46:32,567.567 INFO    ] time= 27/06/2026 02:46:32
[2026-06-27 02:46:32,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:46:32,573.573 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:46:32,629.629 INFO    ] No existing commands found in stream
[2026-06-27 02:46:37,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:46:37,642.642 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-27 02:46:38,942.942 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 02:46:38,943.943 INFO    ] Checking for system updates...
[2026-06-27 02:46:38,965.965 INFO    ] 200
[2026-06-27 02:46:38,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:46:38,997.997 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:46:38,998.998 INFO    ] No update needed
[2026-06-27 02:46:39,000.000 INFO    ] Checking for camera pi updates...
[2026-06-27 02:46:39,022.022 INFO    ] 200
[2026-06-27 02:46:39,023.023 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:46:39,046.046 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:46:39,089.089 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:46:39,090.090 INFO    ] No camera update needed
[2026-06-27 02:46:39,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:46:39,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:46:39,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:46:39,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:46:41,138.138 INFO    ] ================================================
[2026-06-27 02:46:41,153.153 INFO    ] Launching Daemon at Sat Jun 27 02:46:41 IST 2026
[2026-06-27 02:46:41,163.163 INFO    ] ================================================
[2026-06-27 02:46:41,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:46:41
[2026-06-27 02:46:41,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:46:42,028.028 INFO    ] Initializing speech engine...
[2026-06-27 02:46:42,040.040 INFO    ] 2026-06-27 02:46:42
[2026-06-27 02:46:42,254.254 INFO    ] 2026-06-27 02:46:42
[2026-06-27 02:46:42,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:46:42,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:46:42,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:46:42,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:46:42,694.694 INFO    ] time= 27/06/2026 02:46:42
[2026-06-27 02:46:42,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:46:42,711.711 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:46:42,779.779 INFO    ] No existing commands found in stream
[2026-06-27 02:46:47,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:46:47,797.797 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-27 02:46:49,592.592 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 02:46:49,594.594 INFO    ] Checking for system updates...
[2026-06-27 02:46:49,616.616 INFO    ] 200
[2026-06-27 02:46:49,617.617 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:46:49,650.650 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:46:49,652.652 INFO    ] No update needed
[2026-06-27 02:46:49,653.653 INFO    ] Checking for camera pi updates...
[2026-06-27 02:46:49,674.674 INFO    ] 200
[2026-06-27 02:46:49,675.675 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:46:49,700.700 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:46:49,751.751 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:46:49,752.752 INFO    ] No camera update needed
[2026-06-27 02:46:49,754.754 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:46:49,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:46:49,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:46:49,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:46:51,802.802 INFO    ] ================================================
[2026-06-27 02:46:51,818.818 INFO    ] Launching Daemon at Sat Jun 27 02:46:51 IST 2026
[2026-06-27 02:46:51,829.829 INFO    ] ================================================
[2026-06-27 02:46:52,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:46:52
[2026-06-27 02:46:52,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:46:52,685.685 INFO    ] Initializing speech engine...
[2026-06-27 02:46:52,690.690 INFO    ] 2026-06-27 02:46:52
[2026-06-27 02:46:52,903.903 INFO    ] 2026-06-27 02:46:52
[2026-06-27 02:46:52,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:46:53,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:46:53,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:46:53,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:46:53,325.325 INFO    ] time= 27/06/2026 02:46:53
[2026-06-27 02:46:53,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:46:53,355.355 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:46:53,446.446 INFO    ] No existing commands found in stream
[2026-06-27 02:46:58,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:46:58,459.459 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-27 02:47:02,710.710 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:47:02,713.713 INFO    ] Checking for system updates...
[2026-06-27 02:47:02,736.736 INFO    ] 200
[2026-06-27 02:47:02,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:47:02,779.779 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:47:02,781.781 INFO    ] No update needed
[2026-06-27 02:47:02,782.782 INFO    ] Checking for camera pi updates...
[2026-06-27 02:47:02,803.803 INFO    ] 200
[2026-06-27 02:47:02,805.805 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:47:02,834.834 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:47:02,861.861 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:47:02,863.863 INFO    ] No camera update needed
[2026-06-27 02:47:02,864.864 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:47:02,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:47:02,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:47:02,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:47:04,908.908 INFO    ] ================================================
[2026-06-27 02:47:04,917.917 INFO    ] Launching Daemon at Sat Jun 27 02:47:04 IST 2026
[2026-06-27 02:47:04,923.923 INFO    ] ================================================
[2026-06-27 02:47:05,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:47:05
[2026-06-27 02:47:05,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:47:05,730.730 INFO    ] Initializing speech engine...
[2026-06-27 02:47:05,741.741 INFO    ] 2026-06-27 02:47:05
[2026-06-27 02:47:05,962.962 INFO    ] 2026-06-27 02:47:05
[2026-06-27 02:47:05,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:47:06,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:47:06,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:47:06,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:47:06,389.389 INFO    ] time= 27/06/2026 02:47:06
[2026-06-27 02:47:06,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:47:06,417.417 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:47:06,483.483 INFO    ] No existing commands found in stream
[2026-06-27 02:47:11,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:47:11,500.500 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-27 02:47:14,743.743 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 02:47:14,749.749 INFO    ] Checking for system updates...
[2026-06-27 02:47:14,770.770 INFO    ] 200
[2026-06-27 02:47:14,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:47:14,803.803 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:47:14,805.805 INFO    ] No update needed
[2026-06-27 02:47:14,806.806 INFO    ] Checking for camera pi updates...
[2026-06-27 02:47:14,827.827 INFO    ] 200
[2026-06-27 02:47:14,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:47:14,856.856 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:47:14,905.905 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:47:14,906.906 INFO    ] No camera update needed
[2026-06-27 02:47:14,908.908 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:47:14,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:47:14,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:47:14,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:47:16,955.955 INFO    ] ================================================
[2026-06-27 02:47:16,970.970 INFO    ] Launching Daemon at Sat Jun 27 02:47:16 IST 2026
[2026-06-27 02:47:16,981.981 INFO    ] ================================================
[2026-06-27 02:47:17,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:47:17
[2026-06-27 02:47:17,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:47:17,865.865 INFO    ] Initializing speech engine...
[2026-06-27 02:47:17,872.872 INFO    ] 2026-06-27 02:47:17
[2026-06-27 02:47:18,076.076 INFO    ] 2026-06-27 02:47:18
[2026-06-27 02:47:18,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:47:18,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:47:18,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:47:18,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:47:18,528.528 INFO    ] time= 27/06/2026 02:47:18
[2026-06-27 02:47:18,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:47:18,537.537 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:47:18,605.605 INFO    ] No existing commands found in stream
[2026-06-27 02:47:23,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:47:23,617.617 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-27 02:47:27,547.547 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:47:27,548.548 INFO    ] Checking for system updates...
[2026-06-27 02:47:27,569.569 INFO    ] 200
[2026-06-27 02:47:27,571.571 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:47:27,601.601 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:47:27,603.603 INFO    ] No update needed
[2026-06-27 02:47:27,605.605 INFO    ] Checking for camera pi updates...
[2026-06-27 02:47:27,630.630 INFO    ] 200
[2026-06-27 02:47:27,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:47:27,660.660 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:47:27,710.710 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:47:27,712.712 INFO    ] No camera update needed
[2026-06-27 02:47:27,713.713 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:47:27,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:47:27,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:47:27,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:47:29,761.761 INFO    ] ================================================
[2026-06-27 02:47:29,776.776 INFO    ] Launching Daemon at Sat Jun 27 02:47:29 IST 2026
[2026-06-27 02:47:29,786.786 INFO    ] ================================================
[2026-06-27 02:47:30,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:47:30
[2026-06-27 02:47:30,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:47:30,583.583 INFO    ] Initializing speech engine...
[2026-06-27 02:47:30,591.591 INFO    ] 2026-06-27 02:47:30
[2026-06-27 02:47:30,799.799 INFO    ] 2026-06-27 02:47:30
[2026-06-27 02:47:30,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:47:31,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:47:31,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:47:31,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:47:31,237.237 INFO    ] time= 27/06/2026 02:47:31
[2026-06-27 02:47:31,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:47:31,244.244 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:47:31,310.310 INFO    ] No existing commands found in stream
[2026-06-27 02:47:36,319.319 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:47:36,322.322 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-27 02:47:37,792.792 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 02:47:37,793.793 INFO    ] Checking for system updates...
[2026-06-27 02:47:37,814.814 INFO    ] 200
[2026-06-27 02:47:37,816.816 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:47:37,846.846 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:47:37,848.848 INFO    ] No update needed
[2026-06-27 02:47:37,849.849 INFO    ] Checking for camera pi updates...
[2026-06-27 02:47:37,868.868 INFO    ] 200
[2026-06-27 02:47:37,870.870 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:47:37,896.896 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:47:37,949.949 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:47:37,950.950 INFO    ] No camera update needed
[2026-06-27 02:47:37,952.952 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:47:37,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:47:37,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:47:37,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:47:40,998.998 INFO    ] ================================================
[2026-06-27 02:47:40,013.013 INFO    ] Launching Daemon at Sat Jun 27 02:47:40 IST 2026
[2026-06-27 02:47:40,024.024 INFO    ] ================================================
[2026-06-27 02:47:40,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:47:40
[2026-06-27 02:47:40,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:47:40,886.886 INFO    ] Initializing speech engine...
[2026-06-27 02:47:40,890.890 INFO    ] 2026-06-27 02:47:40
[2026-06-27 02:47:41,095.095 INFO    ] 2026-06-27 02:47:41
[2026-06-27 02:47:41,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:47:41,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:47:41,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:47:41,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:47:41,495.495 INFO    ] time= 27/06/2026 02:47:41
[2026-06-27 02:47:41,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:47:41,539.539 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:47:41,610.610 INFO    ] No existing commands found in stream
[2026-06-27 02:47:46,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:47:46,627.627 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-27 02:47:48,517.517 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 02:47:48,518.518 INFO    ] Checking for system updates...
[2026-06-27 02:47:48,540.540 INFO    ] 200
[2026-06-27 02:47:48,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:47:48,574.574 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:47:48,576.576 INFO    ] No update needed
[2026-06-27 02:47:48,577.577 INFO    ] Checking for camera pi updates...
[2026-06-27 02:47:48,600.600 INFO    ] 200
[2026-06-27 02:47:48,602.602 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:47:48,625.625 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:47:48,669.669 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:47:48,670.670 INFO    ] No camera update needed
[2026-06-27 02:47:48,672.672 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:47:48,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:47:48,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:47:48,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:47:50,717.717 INFO    ] ================================================
[2026-06-27 02:47:50,732.732 INFO    ] Launching Daemon at Sat Jun 27 02:47:50 IST 2026
[2026-06-27 02:47:50,742.742 INFO    ] ================================================
[2026-06-27 02:47:51,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:47:51
[2026-06-27 02:47:51,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:47:51,614.614 INFO    ] Initializing speech engine...
[2026-06-27 02:47:51,619.619 INFO    ] 2026-06-27 02:47:51
[2026-06-27 02:47:51,825.825 INFO    ] 2026-06-27 02:47:51
[2026-06-27 02:47:51,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:47:52,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:47:52,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:47:52,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:47:52,264.264 INFO    ] time= 27/06/2026 02:47:52
[2026-06-27 02:47:52,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:47:52,271.271 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:47:52,337.337 INFO    ] No existing commands found in stream
[2026-06-27 02:47:57,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:47:57,349.349 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-27 02:48:01,018.018 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 02:48:01,020.020 INFO    ] Checking for system updates...
[2026-06-27 02:48:01,043.043 INFO    ] 200
[2026-06-27 02:48:01,045.045 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:48:01,075.075 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:48:01,076.076 INFO    ] No update needed
[2026-06-27 02:48:01,078.078 INFO    ] Checking for camera pi updates...
[2026-06-27 02:48:01,098.098 INFO    ] 200
[2026-06-27 02:48:01,100.100 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:48:01,123.123 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:48:01,173.173 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:48:01,174.174 INFO    ] No camera update needed
[2026-06-27 02:48:01,175.175 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:48:01,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:48:01,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:48:01,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:48:03,213.213 INFO    ] ================================================
[2026-06-27 02:48:03,221.221 INFO    ] Launching Daemon at Sat Jun 27 02:48:03 IST 2026
[2026-06-27 02:48:03,227.227 INFO    ] ================================================
[2026-06-27 02:48:03,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:48:03
[2026-06-27 02:48:03,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:48:04,074.074 INFO    ] Initializing speech engine...
[2026-06-27 02:48:04,079.079 INFO    ] 2026-06-27 02:48:04
[2026-06-27 02:48:04,285.285 INFO    ] 2026-06-27 02:48:04
[2026-06-27 02:48:04,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:48:04,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:48:04,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:48:04,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:48:04,698.698 INFO    ] time= 27/06/2026 02:48:04
[2026-06-27 02:48:04,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:48:04,736.736 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:48:04,804.804 INFO    ] No existing commands found in stream
[2026-06-27 02:48:09,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:48:09,821.821 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-27 02:48:11,932.932 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 02:48:11,935.935 INFO    ] Checking for system updates...
[2026-06-27 02:48:11,957.957 INFO    ] 200
[2026-06-27 02:48:11,958.958 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:48:11,988.988 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:48:11,990.990 INFO    ] No update needed
[2026-06-27 02:48:11,991.991 INFO    ] Checking for camera pi updates...
[2026-06-27 02:48:12,010.010 INFO    ] 200
[2026-06-27 02:48:12,012.012 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:48:12,039.039 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:48:12,085.085 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:48:12,086.086 INFO    ] No camera update needed
[2026-06-27 02:48:12,088.088 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:48:12,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:48:12,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:48:12,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:48:14,134.134 INFO    ] ================================================
[2026-06-27 02:48:14,149.149 INFO    ] Launching Daemon at Sat Jun 27 02:48:14 IST 2026
[2026-06-27 02:48:14,160.160 INFO    ] ================================================
[2026-06-27 02:48:14,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:48:14
[2026-06-27 02:48:14,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:48:15,017.017 INFO    ] Initializing speech engine...
[2026-06-27 02:48:15,023.023 INFO    ] 2026-06-27 02:48:15
[2026-06-27 02:48:15,233.233 INFO    ] 2026-06-27 02:48:15
[2026-06-27 02:48:15,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:48:15,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:48:15,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:48:15,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:48:15,676.676 INFO    ] time= 27/06/2026 02:48:15
[2026-06-27 02:48:15,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:48:15,683.683 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:48:15,750.750 INFO    ] No existing commands found in stream
[2026-06-27 02:48:20,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:48:20,759.759 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-27 02:48:24,214.214 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 02:48:24,216.216 INFO    ] Checking for system updates...
[2026-06-27 02:48:24,239.239 INFO    ] 200
[2026-06-27 02:48:24,240.240 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:48:24,271.271 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:48:24,273.273 INFO    ] No update needed
[2026-06-27 02:48:24,274.274 INFO    ] Checking for camera pi updates...
[2026-06-27 02:48:24,295.295 INFO    ] 200
[2026-06-27 02:48:24,296.296 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:48:24,321.321 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:48:24,366.366 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:48:24,368.368 INFO    ] No camera update needed
[2026-06-27 02:48:24,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:48:24,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:48:24,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:48:24,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:48:26,416.416 INFO    ] ================================================
[2026-06-27 02:48:26,431.431 INFO    ] Launching Daemon at Sat Jun 27 02:48:26 IST 2026
[2026-06-27 02:48:26,441.441 INFO    ] ================================================
[2026-06-27 02:48:26,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:48:26
[2026-06-27 02:48:27,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:48:27,238.238 INFO    ] Initializing speech engine...
[2026-06-27 02:48:27,241.241 INFO    ] 2026-06-27 02:48:27
[2026-06-27 02:48:27,458.458 INFO    ] 2026-06-27 02:48:27
[2026-06-27 02:48:27,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:48:27,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:48:27,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:48:27,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:48:27,866.866 INFO    ] time= 27/06/2026 02:48:27
[2026-06-27 02:48:27,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:48:27,906.906 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:48:27,977.977 INFO    ] No existing commands found in stream
[2026-06-27 02:48:32,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:48:32,992.992 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-27 02:48:34,668.668 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 02:48:34,670.670 INFO    ] Checking for system updates...
[2026-06-27 02:48:34,691.691 INFO    ] 200
[2026-06-27 02:48:34,693.693 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:48:34,726.726 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:48:34,727.727 INFO    ] No update needed
[2026-06-27 02:48:34,729.729 INFO    ] Checking for camera pi updates...
[2026-06-27 02:48:34,748.748 INFO    ] 200
[2026-06-27 02:48:34,750.750 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:48:34,775.775 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:48:34,816.816 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:48:34,817.817 INFO    ] No camera update needed
[2026-06-27 02:48:34,819.819 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:48:34,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:48:34,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:48:34,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:48:36,849.849 INFO    ] ================================================
[2026-06-27 02:48:36,857.857 INFO    ] Launching Daemon at Sat Jun 27 02:48:36 IST 2026
[2026-06-27 02:48:36,863.863 INFO    ] ================================================
[2026-06-27 02:48:37,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:48:37
[2026-06-27 02:48:37,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:48:37,654.654 INFO    ] Initializing speech engine...
[2026-06-27 02:48:37,667.667 INFO    ] 2026-06-27 02:48:37
[2026-06-27 02:48:37,884.884 INFO    ] 2026-06-27 02:48:37
[2026-06-27 02:48:37,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:48:38,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:48:38,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:48:38,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:48:38,313.313 INFO    ] time= 27/06/2026 02:48:38
[2026-06-27 02:48:38,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:48:38,403.403 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:48:38,508.508 INFO    ] No existing commands found in stream
[2026-06-27 02:48:43,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:48:43,521.521 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-27 02:48:43,943.943 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 02:48:43,944.944 INFO    ] Checking for system updates...
[2026-06-27 02:48:43,965.965 INFO    ] 200
[2026-06-27 02:48:43,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:48:43,997.997 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:48:43,998.998 INFO    ] No update needed
[2026-06-27 02:48:43,999.999 INFO    ] Checking for camera pi updates...
[2026-06-27 02:48:44,020.020 INFO    ] 200
[2026-06-27 02:48:44,021.021 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:48:44,045.045 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:48:44,088.088 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:48:44,090.090 INFO    ] No camera update needed
[2026-06-27 02:48:44,091.091 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:48:44,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:48:44,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:48:44,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:48:46,140.140 INFO    ] ================================================
[2026-06-27 02:48:46,156.156 INFO    ] Launching Daemon at Sat Jun 27 02:48:46 IST 2026
[2026-06-27 02:48:46,167.167 INFO    ] ================================================
[2026-06-27 02:48:46,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:48:46
[2026-06-27 02:48:46,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:48:46,983.983 INFO    ] Initializing speech engine...
[2026-06-27 02:48:46,993.993 INFO    ] 2026-06-27 02:48:46
[2026-06-27 02:48:47,198.198 INFO    ] 2026-06-27 02:48:47
[2026-06-27 02:48:47,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:48:47,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:48:47,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:48:47,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:48:47,605.605 INFO    ] time= 27/06/2026 02:48:47
[2026-06-27 02:48:47,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:48:47,644.644 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:48:47,716.716 INFO    ] No existing commands found in stream
[2026-06-27 02:48:52,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:48:52,727.727 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-27 02:48:54,168.168 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 02:48:54,170.170 INFO    ] Checking for system updates...
[2026-06-27 02:48:54,191.191 INFO    ] 200
[2026-06-27 02:48:54,192.192 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:48:54,222.222 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:48:54,224.224 INFO    ] No update needed
[2026-06-27 02:48:54,226.226 INFO    ] Checking for camera pi updates...
[2026-06-27 02:48:54,247.247 INFO    ] 200
[2026-06-27 02:48:54,248.248 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:48:54,271.271 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:48:54,299.299 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:48:54,300.300 INFO    ] No camera update needed
[2026-06-27 02:48:54,301.301 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:48:54,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:48:54,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:48:54,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:48:56,349.349 INFO    ] ================================================
[2026-06-27 02:48:56,364.364 INFO    ] Launching Daemon at Sat Jun 27 02:48:56 IST 2026
[2026-06-27 02:48:56,375.375 INFO    ] ================================================
[2026-06-27 02:48:56,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:48:56
[2026-06-27 02:48:57,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:48:57,149.149 INFO    ] Initializing speech engine...
[2026-06-27 02:48:57,157.157 INFO    ] 2026-06-27 02:48:57
[2026-06-27 02:48:57,369.369 INFO    ] 2026-06-27 02:48:57
[2026-06-27 02:48:57,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:48:57,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:48:57,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:48:57,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:48:57,789.789 INFO    ] time= 27/06/2026 02:48:57
[2026-06-27 02:48:57,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:48:57,817.817 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:48:57,908.908 INFO    ] No existing commands found in stream
[2026-06-27 02:49:02,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:49:02,926.926 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-27 02:49:06,188.188 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 02:49:06,189.189 INFO    ] Checking for system updates...
[2026-06-27 02:49:06,212.212 INFO    ] 200
[2026-06-27 02:49:06,214.214 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:49:06,249.249 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:49:06,250.250 INFO    ] No update needed
[2026-06-27 02:49:06,256.256 INFO    ] Checking for camera pi updates...
[2026-06-27 02:49:06,279.279 INFO    ] 200
[2026-06-27 02:49:06,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:49:06,305.305 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:49:06,445.445 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:49:06,446.446 INFO    ] No camera update needed
[2026-06-27 02:49:06,448.448 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:49:06,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:49:06,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:49:06,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:49:08,498.498 INFO    ] ================================================
[2026-06-27 02:49:08,514.514 INFO    ] Launching Daemon at Sat Jun 27 02:49:08 IST 2026
[2026-06-27 02:49:08,525.525 INFO    ] ================================================
[2026-06-27 02:49:08,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:49:08
[2026-06-27 02:49:09,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:49:09,315.315 INFO    ] Initializing speech engine...
[2026-06-27 02:49:09,320.320 INFO    ] 2026-06-27 02:49:09
[2026-06-27 02:49:09,526.526 INFO    ] 2026-06-27 02:49:09
[2026-06-27 02:49:09,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:49:09,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:49:09,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:49:09,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:49:09,953.953 INFO    ] time= 27/06/2026 02:49:09
[2026-06-27 02:49:09,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:49:09,983.983 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:49:10,051.051 INFO    ] No existing commands found in stream
[2026-06-27 02:49:15,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:49:15,064.064 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-27 02:49:18,636.636 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 02:49:18,638.638 INFO    ] Checking for system updates...
[2026-06-27 02:49:18,660.660 INFO    ] 200
[2026-06-27 02:49:18,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:49:18,699.699 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:49:18,700.700 INFO    ] No update needed
[2026-06-27 02:49:18,701.701 INFO    ] Checking for camera pi updates...
[2026-06-27 02:49:18,724.724 INFO    ] 200
[2026-06-27 02:49:18,726.726 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:49:18,751.751 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:49:18,801.801 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:49:18,803.803 INFO    ] No camera update needed
[2026-06-27 02:49:18,805.805 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:49:18,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:49:18,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:49:18,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:49:20,851.851 INFO    ] ================================================
[2026-06-27 02:49:20,866.866 INFO    ] Launching Daemon at Sat Jun 27 02:49:20 IST 2026
[2026-06-27 02:49:20,877.877 INFO    ] ================================================
[2026-06-27 02:49:21,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:49:21
[2026-06-27 02:49:21,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:49:21,704.704 INFO    ] Initializing speech engine...
[2026-06-27 02:49:21,710.710 INFO    ] 2026-06-27 02:49:21
[2026-06-27 02:49:21,920.920 INFO    ] 2026-06-27 02:49:21
[2026-06-27 02:49:21,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:49:22,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:49:22,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:49:22,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:49:22,346.346 INFO    ] time= 27/06/2026 02:49:22
[2026-06-27 02:49:22,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:49:22,375.375 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:49:22,467.467 INFO    ] No existing commands found in stream
[2026-06-27 02:49:27,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:49:27,485.485 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-27 02:49:28,617.617 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 02:49:28,619.619 INFO    ] Checking for system updates...
[2026-06-27 02:49:28,639.639 INFO    ] 200
[2026-06-27 02:49:28,641.641 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:49:28,671.671 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:49:28,672.672 INFO    ] No update needed
[2026-06-27 02:49:28,674.674 INFO    ] Checking for camera pi updates...
[2026-06-27 02:49:28,694.694 INFO    ] 200
[2026-06-27 02:49:28,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:49:28,719.719 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:49:28,763.763 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:49:28,765.765 INFO    ] No camera update needed
[2026-06-27 02:49:28,766.766 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:49:28,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:49:28,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:49:28,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:49:30,810.810 INFO    ] ================================================
[2026-06-27 02:49:30,825.825 INFO    ] Launching Daemon at Sat Jun 27 02:49:30 IST 2026
[2026-06-27 02:49:30,836.836 INFO    ] ================================================
[2026-06-27 02:49:31,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:49:31
[2026-06-27 02:49:31,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:49:31,732.732 INFO    ] Initializing speech engine...
[2026-06-27 02:49:31,738.738 INFO    ] 2026-06-27 02:49:31
[2026-06-27 02:49:31,948.948 INFO    ] 2026-06-27 02:49:31
[2026-06-27 02:49:31,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:49:32,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:49:32,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:49:32,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:49:32,604.604 INFO    ] time= 27/06/2026 02:49:32
[2026-06-27 02:49:32,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:49:32,614.614 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:49:32,674.674 INFO    ] No existing commands found in stream
[2026-06-27 02:49:37,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:49:37,688.688 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-27 02:49:40,786.786 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 02:49:40,788.788 INFO    ] Checking for system updates...
[2026-06-27 02:49:40,810.810 INFO    ] 200
[2026-06-27 02:49:40,812.812 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:49:40,842.842 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:49:40,843.843 INFO    ] No update needed
[2026-06-27 02:49:40,845.845 INFO    ] Checking for camera pi updates...
[2026-06-27 02:49:40,864.864 INFO    ] 200
[2026-06-27 02:49:40,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:49:40,891.891 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:49:40,932.932 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:49:40,934.934 INFO    ] No camera update needed
[2026-06-27 02:49:40,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:49:40,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:49:40,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:49:40,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:49:42,980.980 INFO    ] ================================================
[2026-06-27 02:49:43,995.995 INFO    ] Launching Daemon at Sat Jun 27 02:49:42 IST 2026
[2026-06-27 02:49:43,005.005 INFO    ] ================================================
[2026-06-27 02:49:43,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:49:43
[2026-06-27 02:49:43,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:49:43,775.775 INFO    ] Initializing speech engine...
[2026-06-27 02:49:43,778.778 INFO    ] 2026-06-27 02:49:43
[2026-06-27 02:49:43,994.994 INFO    ] 2026-06-27 02:49:43
[2026-06-27 02:49:44,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:49:44,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:49:44,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:49:44,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:49:44,415.415 INFO    ] time= 27/06/2026 02:49:44
[2026-06-27 02:49:44,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:49:44,443.443 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:49:44,535.535 INFO    ] No existing commands found in stream
[2026-06-27 02:49:49,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:49:49,547.547 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-27 02:49:53,597.597 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 02:49:53,599.599 INFO    ] Checking for system updates...
[2026-06-27 02:49:53,621.621 INFO    ] 200
[2026-06-27 02:49:53,622.622 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:49:53,653.653 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:49:53,655.655 INFO    ] No update needed
[2026-06-27 02:49:53,656.656 INFO    ] Checking for camera pi updates...
[2026-06-27 02:49:53,675.675 INFO    ] 200
[2026-06-27 02:49:53,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:49:53,701.701 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:49:53,740.740 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:49:53,742.742 INFO    ] No camera update needed
[2026-06-27 02:49:53,743.743 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:49:53,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:49:53,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:49:53,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:49:55,789.789 INFO    ] ================================================
[2026-06-27 02:49:55,805.805 INFO    ] Launching Daemon at Sat Jun 27 02:49:55 IST 2026
[2026-06-27 02:49:55,815.815 INFO    ] ================================================
[2026-06-27 02:49:56,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:49:56
[2026-06-27 02:49:56,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:49:56,664.664 INFO    ] Initializing speech engine...
[2026-06-27 02:49:56,677.677 INFO    ] 2026-06-27 02:49:56
[2026-06-27 02:49:56,889.889 INFO    ] 2026-06-27 02:49:56
[2026-06-27 02:49:56,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:49:57,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:49:57,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:49:57,245.245 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:49:57,313.313 INFO    ] time= 27/06/2026 02:49:57
[2026-06-27 02:49:57,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:49:57,343.343 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:49:57,410.410 INFO    ] No existing commands found in stream
[2026-06-27 02:50:02,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:50:02,417.417 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-27 02:50:06,651.651 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 02:50:06,653.653 INFO    ] Checking for system updates...
[2026-06-27 02:50:06,675.675 INFO    ] 200
[2026-06-27 02:50:06,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:50:06,708.708 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:50:06,709.709 INFO    ] No update needed
[2026-06-27 02:50:06,710.710 INFO    ] Checking for camera pi updates...
[2026-06-27 02:50:06,730.730 INFO    ] 200
[2026-06-27 02:50:06,732.732 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:50:06,757.757 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:50:06,795.795 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:50:06,797.797 INFO    ] No camera update needed
[2026-06-27 02:50:06,798.798 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:50:06,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:50:06,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:50:06,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:50:08,846.846 INFO    ] ================================================
[2026-06-27 02:50:08,861.861 INFO    ] Launching Daemon at Sat Jun 27 02:50:08 IST 2026
[2026-06-27 02:50:08,872.872 INFO    ] ================================================
[2026-06-27 02:50:09,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:50:09
[2026-06-27 02:50:09,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:50:09,676.676 INFO    ] Initializing speech engine...
[2026-06-27 02:50:09,686.686 INFO    ] 2026-06-27 02:50:09
[2026-06-27 02:50:09,891.891 INFO    ] 2026-06-27 02:50:09
[2026-06-27 02:50:09,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:50:10,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:50:10,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:50:10,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:50:10,312.312 INFO    ] time= 27/06/2026 02:50:10
[2026-06-27 02:50:10,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:50:10,342.342 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:50:10,417.417 INFO    ] No existing commands found in stream
[2026-06-27 02:50:15,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:50:15,445.445 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-27 02:50:16,456.456 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 02:50:16,458.458 INFO    ] Checking for system updates...
[2026-06-27 02:50:16,482.482 INFO    ] 200
[2026-06-27 02:50:16,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:50:16,515.515 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:50:16,517.517 INFO    ] No update needed
[2026-06-27 02:50:16,518.518 INFO    ] Checking for camera pi updates...
[2026-06-27 02:50:16,538.538 INFO    ] 200
[2026-06-27 02:50:16,539.539 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:50:16,564.564 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:50:16,607.607 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:50:16,609.609 INFO    ] No camera update needed
[2026-06-27 02:50:16,610.610 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:50:16,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:50:16,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:50:16,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:50:18,659.659 INFO    ] ================================================
[2026-06-27 02:50:18,674.674 INFO    ] Launching Daemon at Sat Jun 27 02:50:18 IST 2026
[2026-06-27 02:50:18,685.685 INFO    ] ================================================
[2026-06-27 02:50:19,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:50:19
[2026-06-27 02:50:19,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:50:19,464.464 INFO    ] Initializing speech engine...
[2026-06-27 02:50:19,472.472 INFO    ] 2026-06-27 02:50:19
[2026-06-27 02:50:19,683.683 INFO    ] 2026-06-27 02:50:19
[2026-06-27 02:50:19,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:50:19,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:50:19,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:50:20,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:50:20,103.103 INFO    ] time= 27/06/2026 02:50:20
[2026-06-27 02:50:20,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:50:20,131.131 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:50:20,197.197 INFO    ] No existing commands found in stream
[2026-06-27 02:50:25,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:50:25,209.209 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-27 02:50:25,722.722 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 02:50:25,724.724 INFO    ] Checking for system updates...
[2026-06-27 02:50:25,745.745 INFO    ] 200
[2026-06-27 02:50:25,747.747 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:50:25,779.779 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:50:25,780.780 INFO    ] No update needed
[2026-06-27 02:50:25,782.782 INFO    ] Checking for camera pi updates...
[2026-06-27 02:50:25,801.801 INFO    ] 200
[2026-06-27 02:50:25,803.803 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:50:25,828.828 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:50:25,880.880 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:50:25,881.881 INFO    ] No camera update needed
[2026-06-27 02:50:25,882.882 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:50:25,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:50:25,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:50:25,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:50:27,929.929 INFO    ] ================================================
[2026-06-27 02:50:27,944.944 INFO    ] Launching Daemon at Sat Jun 27 02:50:27 IST 2026
[2026-06-27 02:50:27,954.954 INFO    ] ================================================
[2026-06-27 02:50:28,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:50:28
[2026-06-27 02:50:28,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:50:28,760.760 INFO    ] Initializing speech engine...
[2026-06-27 02:50:28,770.770 INFO    ] 2026-06-27 02:50:28
[2026-06-27 02:50:28,974.974 INFO    ] 2026-06-27 02:50:28
[2026-06-27 02:50:29,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:50:29,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:50:29,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:50:29,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:50:29,388.388 INFO    ] time= 27/06/2026 02:50:29
[2026-06-27 02:50:29,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:50:29,421.421 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:50:29,486.486 INFO    ] No existing commands found in stream
[2026-06-27 02:50:34,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:50:34,499.499 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-27 02:50:37,360.360 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:50:37,361.361 INFO    ] Checking for system updates...
[2026-06-27 02:50:37,382.382 INFO    ] 200
[2026-06-27 02:50:37,383.383 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:50:37,416.416 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:50:37,417.417 INFO    ] No update needed
[2026-06-27 02:50:37,419.419 INFO    ] Checking for camera pi updates...
[2026-06-27 02:50:37,439.439 INFO    ] 200
[2026-06-27 02:50:37,440.440 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:50:37,465.465 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:50:37,508.508 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:50:37,509.509 INFO    ] No camera update needed
[2026-06-27 02:50:37,510.510 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:50:37,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:50:37,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:50:37,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:50:39,556.556 INFO    ] ================================================
[2026-06-27 02:50:39,572.572 INFO    ] Launching Daemon at Sat Jun 27 02:50:39 IST 2026
[2026-06-27 02:50:39,583.583 INFO    ] ================================================
[2026-06-27 02:50:39,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:50:39
[2026-06-27 02:50:40,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:50:40,450.450 INFO    ] Initializing speech engine...
[2026-06-27 02:50:40,457.457 INFO    ] 2026-06-27 02:50:40
[2026-06-27 02:50:40,663.663 INFO    ] 2026-06-27 02:50:40
[2026-06-27 02:50:40,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:50:40,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:50:40,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:50:41,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:50:41,085.085 INFO    ] time= 27/06/2026 02:50:41
[2026-06-27 02:50:41,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:50:41,114.114 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:50:41,181.181 INFO    ] No existing commands found in stream
[2026-06-27 02:50:46,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:50:46,199.199 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-27 02:50:46,966.966 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 02:50:46,968.968 INFO    ] Checking for system updates...
[2026-06-27 02:50:46,989.989 INFO    ] 200
[2026-06-27 02:50:46,990.990 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:50:47,020.020 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:50:47,022.022 INFO    ] No update needed
[2026-06-27 02:50:47,023.023 INFO    ] Checking for camera pi updates...
[2026-06-27 02:50:47,042.042 INFO    ] 200
[2026-06-27 02:50:47,044.044 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:50:47,067.067 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:50:47,107.107 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:50:47,108.108 INFO    ] No camera update needed
[2026-06-27 02:50:47,110.110 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:50:47,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:50:47,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:50:47,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:50:49,156.156 INFO    ] ================================================
[2026-06-27 02:50:49,172.172 INFO    ] Launching Daemon at Sat Jun 27 02:50:49 IST 2026
[2026-06-27 02:50:49,183.183 INFO    ] ================================================
[2026-06-27 02:50:49,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:50:49
[2026-06-27 02:50:49,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:50:49,998.998 INFO    ] Initializing speech engine...
[2026-06-27 02:50:50,007.007 INFO    ] 2026-06-27 02:50:49
[2026-06-27 02:50:50,215.215 INFO    ] 2026-06-27 02:50:50
[2026-06-27 02:50:50,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:50:50,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:50:50,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:50:50,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:50:50,646.646 INFO    ] time= 27/06/2026 02:50:50
[2026-06-27 02:50:50,668.668 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:50:50,674.674 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:50:50,740.740 INFO    ] No existing commands found in stream
[2026-06-27 02:50:55,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:50:55,754.754 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-27 02:50:59,756.756 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 02:50:59,758.758 INFO    ] Checking for system updates...
[2026-06-27 02:50:59,783.783 INFO    ] 200
[2026-06-27 02:50:59,785.785 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:50:59,818.818 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:50:59,820.820 INFO    ] No update needed
[2026-06-27 02:50:59,822.822 INFO    ] Checking for camera pi updates...
[2026-06-27 02:50:59,844.844 INFO    ] 200
[2026-06-27 02:50:59,846.846 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:50:59,875.875 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:50:59,917.917 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:50:59,919.919 INFO    ] No camera update needed
[2026-06-27 02:50:59,920.920 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:50:59,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:50:59,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:50:59,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:51:01,965.965 INFO    ] ================================================
[2026-06-27 02:51:01,985.985 INFO    ] Launching Daemon at Sat Jun 27 02:51:01 IST 2026
[2026-06-27 02:51:02,994.994 INFO    ] ================================================
[2026-06-27 02:51:02,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:51:02
[2026-06-27 02:51:02,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:51:02,916.916 INFO    ] Initializing speech engine...
[2026-06-27 02:51:02,920.920 INFO    ] 2026-06-27 02:51:02
[2026-06-27 02:51:03,141.141 INFO    ] 2026-06-27 02:51:03
[2026-06-27 02:51:03,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:51:03,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:51:03,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:51:03,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:51:03,563.563 INFO    ] time= 27/06/2026 02:51:03
[2026-06-27 02:51:03,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:51:03,598.598 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:51:03,664.664 INFO    ] No existing commands found in stream
[2026-06-27 02:51:08,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:51:08,678.678 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-27 02:51:10,813.813 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 02:51:10,815.815 INFO    ] Checking for system updates...
[2026-06-27 02:51:10,844.844 INFO    ] 200
[2026-06-27 02:51:10,846.846 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:51:10,879.879 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:51:10,880.880 INFO    ] No update needed
[2026-06-27 02:51:10,881.881 INFO    ] Checking for camera pi updates...
[2026-06-27 02:51:10,902.902 INFO    ] 200
[2026-06-27 02:51:10,904.904 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:51:10,929.929 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:51:11,070.070 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:51:11,071.071 INFO    ] No camera update needed
[2026-06-27 02:51:11,072.072 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:51:11,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:51:11,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:51:11,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:51:13,119.119 INFO    ] ================================================
[2026-06-27 02:51:13,135.135 INFO    ] Launching Daemon at Sat Jun 27 02:51:13 IST 2026
[2026-06-27 02:51:13,147.147 INFO    ] ================================================
[2026-06-27 02:51:13,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:51:13
[2026-06-27 02:51:13,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:51:13,924.924 INFO    ] Initializing speech engine...
[2026-06-27 02:51:13,928.928 INFO    ] 2026-06-27 02:51:13
[2026-06-27 02:51:14,156.156 INFO    ] 2026-06-27 02:51:14
[2026-06-27 02:51:14,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:51:14,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:51:14,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:51:14,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:51:14,578.578 INFO    ] time= 27/06/2026 02:51:14
[2026-06-27 02:51:14,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:51:14,635.635 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:51:14,708.708 INFO    ] No existing commands found in stream
[2026-06-27 02:51:19,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:51:19,721.721 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-27 02:51:21,147.147 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 02:51:21,149.149 INFO    ] Checking for system updates...
[2026-06-27 02:51:21,169.169 INFO    ] 200
[2026-06-27 02:51:21,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:51:21,201.201 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:51:21,203.203 INFO    ] No update needed
[2026-06-27 02:51:21,204.204 INFO    ] Checking for camera pi updates...
[2026-06-27 02:51:21,225.225 INFO    ] 200
[2026-06-27 02:51:21,227.227 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:51:21,255.255 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:51:21,298.298 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:51:21,299.299 INFO    ] No camera update needed
[2026-06-27 02:51:21,301.301 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:51:21,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:51:21,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:51:21,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:51:23,348.348 INFO    ] ================================================
[2026-06-27 02:51:23,364.364 INFO    ] Launching Daemon at Sat Jun 27 02:51:23 IST 2026
[2026-06-27 02:51:23,375.375 INFO    ] ================================================
[2026-06-27 02:51:23,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:51:23
[2026-06-27 02:51:24,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:51:24,190.190 INFO    ] Initializing speech engine...
[2026-06-27 02:51:24,198.198 INFO    ] 2026-06-27 02:51:24
[2026-06-27 02:51:24,411.411 INFO    ] 2026-06-27 02:51:24
[2026-06-27 02:51:24,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:51:24,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:51:24,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:51:24,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:51:24,831.831 INFO    ] time= 27/06/2026 02:51:24
[2026-06-27 02:51:24,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:51:24,859.859 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:51:24,926.926 INFO    ] No existing commands found in stream
[2026-06-27 02:51:29,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:51:29,943.943 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-27 02:51:32,851.851 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 02:51:32,852.852 INFO    ] Checking for system updates...
[2026-06-27 02:51:32,874.874 INFO    ] 200
[2026-06-27 02:51:32,875.875 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:51:32,906.906 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:51:32,907.907 INFO    ] No update needed
[2026-06-27 02:51:32,909.909 INFO    ] Checking for camera pi updates...
[2026-06-27 02:51:32,928.928 INFO    ] 200
[2026-06-27 02:51:32,930.930 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:51:32,954.954 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:51:32,988.988 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:51:32,989.989 INFO    ] No camera update needed
[2026-06-27 02:51:32,991.991 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:51:32,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:51:32,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:51:32,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:51:35,038.038 INFO    ] ================================================
[2026-06-27 02:51:35,054.054 INFO    ] Launching Daemon at Sat Jun 27 02:51:35 IST 2026
[2026-06-27 02:51:35,066.066 INFO    ] ================================================
[2026-06-27 02:51:35,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:51:35
[2026-06-27 02:51:35,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:51:35,936.936 INFO    ] Initializing speech engine...
[2026-06-27 02:51:35,943.943 INFO    ] 2026-06-27 02:51:35
[2026-06-27 02:51:36,149.149 INFO    ] 2026-06-27 02:51:36
[2026-06-27 02:51:36,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:51:36,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:51:36,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:51:36,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:51:36,589.589 INFO    ] time= 27/06/2026 02:51:36
[2026-06-27 02:51:36,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:51:36,600.600 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:51:36,671.671 INFO    ] No existing commands found in stream
[2026-06-27 02:51:41,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:51:41,689.689 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-27 02:51:42,211.211 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 02:51:42,213.213 INFO    ] Checking for system updates...
[2026-06-27 02:51:42,235.235 INFO    ] 200
[2026-06-27 02:51:42,237.237 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:51:42,270.270 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:51:42,271.271 INFO    ] No update needed
[2026-06-27 02:51:42,272.272 INFO    ] Checking for camera pi updates...
[2026-06-27 02:51:42,296.296 INFO    ] 200
[2026-06-27 02:51:42,297.297 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:51:42,323.323 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:51:42,370.370 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:51:42,372.372 INFO    ] No camera update needed
[2026-06-27 02:51:42,373.373 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:51:42,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:51:42,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:51:42,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:51:44,422.422 INFO    ] ================================================
[2026-06-27 02:51:44,438.438 INFO    ] Launching Daemon at Sat Jun 27 02:51:44 IST 2026
[2026-06-27 02:51:44,449.449 INFO    ] ================================================
[2026-06-27 02:51:44,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:51:44
[2026-06-27 02:51:45,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:51:45,255.255 INFO    ] Initializing speech engine...
[2026-06-27 02:51:45,260.260 INFO    ] 2026-06-27 02:51:45
[2026-06-27 02:51:45,468.468 INFO    ] 2026-06-27 02:51:45
[2026-06-27 02:51:45,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:51:45,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:51:45,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:51:45,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:51:45,932.932 INFO    ] time= 27/06/2026 02:51:45
[2026-06-27 02:51:45,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:51:45,968.968 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:51:46,096.096 INFO    ] No existing commands found in stream
[2026-06-27 02:51:51,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:51:51,109.109 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-27 02:51:54,659.659 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 02:51:54,660.660 INFO    ] Checking for system updates...
[2026-06-27 02:51:54,681.681 INFO    ] 200
[2026-06-27 02:51:54,682.682 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:51:54,716.716 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:51:54,717.717 INFO    ] No update needed
[2026-06-27 02:51:54,719.719 INFO    ] Checking for camera pi updates...
[2026-06-27 02:51:54,739.739 INFO    ] 200
[2026-06-27 02:51:54,740.740 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:51:54,765.765 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:51:54,795.795 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:51:54,797.797 INFO    ] No camera update needed
[2026-06-27 02:51:54,798.798 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:51:54,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:51:54,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:51:54,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:51:56,846.846 INFO    ] ================================================
[2026-06-27 02:51:56,862.862 INFO    ] Launching Daemon at Sat Jun 27 02:51:56 IST 2026
[2026-06-27 02:51:56,874.874 INFO    ] ================================================
[2026-06-27 02:51:57,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:51:57
[2026-06-27 02:51:57,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:51:57,701.701 INFO    ] Initializing speech engine...
[2026-06-27 02:51:57,705.705 INFO    ] 2026-06-27 02:51:57
[2026-06-27 02:51:57,925.925 INFO    ] 2026-06-27 02:51:57
[2026-06-27 02:51:57,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:51:58,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:51:58,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:51:58,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:51:58,352.352 INFO    ] time= 27/06/2026 02:51:58
[2026-06-27 02:51:58,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:51:58,382.382 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:51:58,448.448 INFO    ] No existing commands found in stream
[2026-06-27 02:52:03,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:52:03,461.461 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-27 02:52:06,544.544 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 02:52:06,545.545 INFO    ] Checking for system updates...
[2026-06-27 02:52:06,566.566 INFO    ] 200
[2026-06-27 02:52:06,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:52:06,600.600 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:52:06,601.601 INFO    ] No update needed
[2026-06-27 02:52:06,602.602 INFO    ] Checking for camera pi updates...
[2026-06-27 02:52:06,623.623 INFO    ] 200
[2026-06-27 02:52:06,625.625 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:52:06,648.648 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:52:06,693.693 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:52:06,695.695 INFO    ] No camera update needed
[2026-06-27 02:52:06,696.696 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:52:06,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:52:06,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:52:06,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:52:08,743.743 INFO    ] ================================================
[2026-06-27 02:52:08,759.759 INFO    ] Launching Daemon at Sat Jun 27 02:52:08 IST 2026
[2026-06-27 02:52:08,770.770 INFO    ] ================================================
[2026-06-27 02:52:09,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:52:09
[2026-06-27 02:52:09,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:52:09,609.609 INFO    ] Initializing speech engine...
[2026-06-27 02:52:09,617.617 INFO    ] 2026-06-27 02:52:09
[2026-06-27 02:52:09,828.828 INFO    ] 2026-06-27 02:52:09
[2026-06-27 02:52:09,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:52:10,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:52:10,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:52:10,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:52:10,246.246 INFO    ] time= 27/06/2026 02:52:10
[2026-06-27 02:52:10,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:52:10,275.275 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:52:10,341.341 INFO    ] No existing commands found in stream
[2026-06-27 02:52:15,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:52:15,353.353 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-27 02:52:18,092.092 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 02:52:18,094.094 INFO    ] Checking for system updates...
[2026-06-27 02:52:18,118.118 INFO    ] 200
[2026-06-27 02:52:18,120.120 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:52:18,152.152 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:52:18,153.153 INFO    ] No update needed
[2026-06-27 02:52:18,155.155 INFO    ] Checking for camera pi updates...
[2026-06-27 02:52:18,175.175 INFO    ] 200
[2026-06-27 02:52:18,177.177 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:52:18,201.201 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:52:18,236.236 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:52:18,237.237 INFO    ] No camera update needed
[2026-06-27 02:52:18,238.238 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:52:18,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:52:18,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:52:18,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:52:20,286.286 INFO    ] ================================================
[2026-06-27 02:52:20,302.302 INFO    ] Launching Daemon at Sat Jun 27 02:52:20 IST 2026
[2026-06-27 02:52:20,313.313 INFO    ] ================================================
[2026-06-27 02:52:20,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:52:20
[2026-06-27 02:52:20,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:52:21,108.108 INFO    ] Initializing speech engine...
[2026-06-27 02:52:21,117.117 INFO    ] 2026-06-27 02:52:21
[2026-06-27 02:52:21,345.345 INFO    ] 2026-06-27 02:52:21
[2026-06-27 02:52:21,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:52:21,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:52:21,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:52:21,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:52:21,707.707 INFO    ] time= 27/06/2026 02:52:21
[2026-06-27 02:52:21,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:52:21,802.802 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:52:21,900.900 INFO    ] No existing commands found in stream
[2026-06-27 02:52:26,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:52:26,918.918 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-27 02:52:30,969.969 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 02:52:30,971.971 INFO    ] Checking for system updates...
[2026-06-27 02:52:30,992.992 INFO    ] 200
[2026-06-27 02:52:30,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:52:31,025.025 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:52:31,026.026 INFO    ] No update needed
[2026-06-27 02:52:31,027.027 INFO    ] Checking for camera pi updates...
[2026-06-27 02:52:31,048.048 INFO    ] 200
[2026-06-27 02:52:31,050.050 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:52:31,078.078 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:52:31,108.108 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:52:31,109.109 INFO    ] No camera update needed
[2026-06-27 02:52:31,110.110 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:52:31,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:52:31,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:52:31,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:52:33,166.166 INFO    ] ================================================
[2026-06-27 02:52:33,182.182 INFO    ] Launching Daemon at Sat Jun 27 02:52:33 IST 2026
[2026-06-27 02:52:33,193.193 INFO    ] ================================================
[2026-06-27 02:52:33,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:52:33
[2026-06-27 02:52:33,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:52:34,043.043 INFO    ] Initializing speech engine...
[2026-06-27 02:52:34,048.048 INFO    ] 2026-06-27 02:52:34
[2026-06-27 02:52:34,254.254 INFO    ] 2026-06-27 02:52:34
[2026-06-27 02:52:34,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:52:34,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:52:34,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:52:34,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:52:34,676.676 INFO    ] time= 27/06/2026 02:52:34
[2026-06-27 02:52:34,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:52:34,704.704 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:52:34,796.796 INFO    ] No existing commands found in stream
[2026-06-27 02:52:39,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:52:39,819.819 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-27 02:52:40,802.802 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 02:52:40,804.804 INFO    ] Checking for system updates...
[2026-06-27 02:52:40,824.824 INFO    ] 200
[2026-06-27 02:52:40,826.826 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:52:40,857.857 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:52:40,858.858 INFO    ] No update needed
[2026-06-27 02:52:40,860.860 INFO    ] Checking for camera pi updates...
[2026-06-27 02:52:40,880.880 INFO    ] 200
[2026-06-27 02:52:40,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:52:40,916.916 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:52:40,972.972 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:52:40,974.974 INFO    ] No camera update needed
[2026-06-27 02:52:40,977.977 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:52:40,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:52:40,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:52:40,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:52:43,036.036 INFO    ] ================================================
[2026-06-27 02:52:43,052.052 INFO    ] Launching Daemon at Sat Jun 27 02:52:43 IST 2026
[2026-06-27 02:52:43,063.063 INFO    ] ================================================
[2026-06-27 02:52:43,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:52:43
[2026-06-27 02:52:43,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:52:43,931.931 INFO    ] Initializing speech engine...
[2026-06-27 02:52:43,936.936 INFO    ] 2026-06-27 02:52:43
[2026-06-27 02:52:44,146.146 INFO    ] 2026-06-27 02:52:44
[2026-06-27 02:52:44,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:52:44,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:52:44,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:52:44,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:52:44,565.565 INFO    ] time= 27/06/2026 02:52:44
[2026-06-27 02:52:44,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:52:44,595.595 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:52:44,686.686 INFO    ] No existing commands found in stream
[2026-06-27 02:52:49,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:52:49,713.713 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-27 02:52:53,637.637 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 02:52:53,639.639 INFO    ] Checking for system updates...
[2026-06-27 02:52:53,661.661 INFO    ] 200
[2026-06-27 02:52:53,662.662 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:52:53,697.697 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:52:53,699.699 INFO    ] No update needed
[2026-06-27 02:52:53,700.700 INFO    ] Checking for camera pi updates...
[2026-06-27 02:52:53,722.722 INFO    ] 200
[2026-06-27 02:52:53,724.724 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:52:53,748.748 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:52:53,775.775 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:52:53,777.777 INFO    ] No camera update needed
[2026-06-27 02:52:53,778.778 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:52:53,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:52:53,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:52:53,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:52:55,836.836 INFO    ] ================================================
[2026-06-27 02:52:55,851.851 INFO    ] Launching Daemon at Sat Jun 27 02:52:55 IST 2026
[2026-06-27 02:52:55,862.862 INFO    ] ================================================
[2026-06-27 02:52:56,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:52:56
[2026-06-27 02:52:56,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:52:56,686.686 INFO    ] Initializing speech engine...
[2026-06-27 02:52:56,692.692 INFO    ] 2026-06-27 02:52:56
[2026-06-27 02:52:56,897.897 INFO    ] 2026-06-27 02:52:56
[2026-06-27 02:52:56,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:52:57,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:52:57,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:52:57,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:52:57,335.335 INFO    ] time= 27/06/2026 02:52:57
[2026-06-27 02:52:57,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:52:57,342.342 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:52:57,407.407 INFO    ] No existing commands found in stream
[2026-06-27 02:53:02,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:53:02,417.417 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-27 02:53:05,611.611 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 02:53:05,612.612 INFO    ] Checking for system updates...
[2026-06-27 02:53:05,634.634 INFO    ] 200
[2026-06-27 02:53:05,635.635 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:53:05,668.668 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:53:05,670.670 INFO    ] No update needed
[2026-06-27 02:53:05,671.671 INFO    ] Checking for camera pi updates...
[2026-06-27 02:53:05,694.694 INFO    ] 200
[2026-06-27 02:53:05,695.695 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:53:05,719.719 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:53:05,762.762 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:53:05,763.763 INFO    ] No camera update needed
[2026-06-27 02:53:05,765.765 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:53:05,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:53:05,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:53:05,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:53:07,811.811 INFO    ] ================================================
[2026-06-27 02:53:07,826.826 INFO    ] Launching Daemon at Sat Jun 27 02:53:07 IST 2026
[2026-06-27 02:53:07,837.837 INFO    ] ================================================
[2026-06-27 02:53:08,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:53:08
[2026-06-27 02:53:08,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:53:08,663.663 INFO    ] Initializing speech engine...
[2026-06-27 02:53:08,668.668 INFO    ] 2026-06-27 02:53:08
[2026-06-27 02:53:08,870.870 INFO    ] 2026-06-27 02:53:08
[2026-06-27 02:53:08,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:53:09,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:53:09,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:53:09,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:53:09,288.288 INFO    ] time= 27/06/2026 02:53:09
[2026-06-27 02:53:09,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:53:09,318.318 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:53:09,385.385 INFO    ] No existing commands found in stream
[2026-06-27 02:53:14,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:53:14,402.402 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-27 02:53:17,200.200 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 02:53:17,201.201 INFO    ] Checking for system updates...
[2026-06-27 02:53:17,222.222 INFO    ] 200
[2026-06-27 02:53:17,224.224 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:53:17,256.256 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:53:17,258.258 INFO    ] No update needed
[2026-06-27 02:53:17,259.259 INFO    ] Checking for camera pi updates...
[2026-06-27 02:53:17,280.280 INFO    ] 200
[2026-06-27 02:53:17,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:53:17,307.307 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:53:17,448.448 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:53:17,450.450 INFO    ] No camera update needed
[2026-06-27 02:53:17,451.451 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:53:17,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:53:17,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:53:17,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:53:19,498.498 INFO    ] ================================================
[2026-06-27 02:53:19,514.514 INFO    ] Launching Daemon at Sat Jun 27 02:53:19 IST 2026
[2026-06-27 02:53:19,524.524 INFO    ] ================================================
[2026-06-27 02:53:19,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:53:19
[2026-06-27 02:53:20,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:53:20,335.335 INFO    ] Initializing speech engine...
[2026-06-27 02:53:20,338.338 INFO    ] 2026-06-27 02:53:20
[2026-06-27 02:53:20,554.554 INFO    ] 2026-06-27 02:53:20
[2026-06-27 02:53:20,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:53:20,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:53:20,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:53:20,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:53:20,990.990 INFO    ] time= 27/06/2026 02:53:20
[2026-06-27 02:53:20,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:53:20,998.998 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:53:21,063.063 INFO    ] No existing commands found in stream
[2026-06-27 02:53:26,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:53:26,076.076 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-27 02:53:27,575.575 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 02:53:27,577.577 INFO    ] Checking for system updates...
[2026-06-27 02:53:27,598.598 INFO    ] 200
[2026-06-27 02:53:27,599.599 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:53:27,632.632 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:53:27,633.633 INFO    ] No update needed
[2026-06-27 02:53:27,635.635 INFO    ] Checking for camera pi updates...
[2026-06-27 02:53:27,656.656 INFO    ] 200
[2026-06-27 02:53:27,657.657 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:53:27,681.681 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:53:27,725.725 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:53:27,727.727 INFO    ] No camera update needed
[2026-06-27 02:53:27,728.728 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:53:27,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:53:27,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:53:27,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:53:29,774.774 INFO    ] ================================================
[2026-06-27 02:53:29,790.790 INFO    ] Launching Daemon at Sat Jun 27 02:53:29 IST 2026
[2026-06-27 02:53:29,801.801 INFO    ] ================================================
[2026-06-27 02:53:30,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:53:30
[2026-06-27 02:53:30,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:53:30,622.622 INFO    ] Initializing speech engine...
[2026-06-27 02:53:30,627.627 INFO    ] 2026-06-27 02:53:30
[2026-06-27 02:53:30,830.830 INFO    ] 2026-06-27 02:53:30
[2026-06-27 02:53:30,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:53:31,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:53:31,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:53:31,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:53:31,521.521 INFO    ] time= 27/06/2026 02:53:31
[2026-06-27 02:53:31,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:53:31,527.527 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:53:31,638.638 INFO    ] No existing commands found in stream
[2026-06-27 02:53:36,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:53:36,652.652 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-27 02:53:40,209.209 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 02:53:40,210.210 INFO    ] Checking for system updates...
[2026-06-27 02:53:40,232.232 INFO    ] 200
[2026-06-27 02:53:40,234.234 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:53:40,264.264 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:53:40,265.265 INFO    ] No update needed
[2026-06-27 02:53:40,267.267 INFO    ] Checking for camera pi updates...
[2026-06-27 02:53:40,286.286 INFO    ] 200
[2026-06-27 02:53:40,287.287 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:53:40,313.313 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:53:40,362.362 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:53:40,364.364 INFO    ] No camera update needed
[2026-06-27 02:53:40,365.365 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:53:40,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:53:40,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:53:40,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:53:42,410.410 INFO    ] ================================================
[2026-06-27 02:53:42,425.425 INFO    ] Launching Daemon at Sat Jun 27 02:53:42 IST 2026
[2026-06-27 02:53:42,437.437 INFO    ] ================================================
[2026-06-27 02:53:42,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:53:42
[2026-06-27 02:53:43,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:53:43,222.222 INFO    ] Initializing speech engine...
[2026-06-27 02:53:43,232.232 INFO    ] 2026-06-27 02:53:43
[2026-06-27 02:53:43,437.437 INFO    ] 2026-06-27 02:53:43
[2026-06-27 02:53:43,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:53:43,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:53:43,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:53:43,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:53:43,877.877 INFO    ] time= 27/06/2026 02:53:43
[2026-06-27 02:53:43,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:53:43,885.885 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:53:43,951.951 INFO    ] No existing commands found in stream
[2026-06-27 02:53:48,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:53:48,963.963 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-27 02:53:51,352.352 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 02:53:51,353.353 INFO    ] Checking for system updates...
[2026-06-27 02:53:51,374.374 INFO    ] 200
[2026-06-27 02:53:51,376.376 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:53:51,406.406 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:53:51,408.408 INFO    ] No update needed
[2026-06-27 02:53:51,409.409 INFO    ] Checking for camera pi updates...
[2026-06-27 02:53:51,430.430 INFO    ] 200
[2026-06-27 02:53:51,431.431 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:53:51,454.454 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:53:51,498.498 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:53:51,499.499 INFO    ] No camera update needed
[2026-06-27 02:53:51,504.504 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:53:51,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:53:51,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:53:51,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:53:53,553.553 INFO    ] ================================================
[2026-06-27 02:53:53,568.568 INFO    ] Launching Daemon at Sat Jun 27 02:53:53 IST 2026
[2026-06-27 02:53:53,579.579 INFO    ] ================================================
[2026-06-27 02:53:53,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:53:53
[2026-06-27 02:53:54,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:53:54,431.431 INFO    ] Initializing speech engine...
[2026-06-27 02:53:54,439.439 INFO    ] 2026-06-27 02:53:54
[2026-06-27 02:53:54,657.657 INFO    ] 2026-06-27 02:53:54
[2026-06-27 02:53:54,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:53:54,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:53:54,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:53:55,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:53:55,077.077 INFO    ] time= 27/06/2026 02:53:55
[2026-06-27 02:53:55,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:53:55,108.108 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:53:55,175.175 INFO    ] No existing commands found in stream
[2026-06-27 02:54:00,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:54:00,210.210 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-27 02:54:02,630.630 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 02:54:02,632.632 INFO    ] Checking for system updates...
[2026-06-27 02:54:02,664.664 INFO    ] 200
[2026-06-27 02:54:02,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:54:02,720.720 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:54:02,722.722 INFO    ] No update needed
[2026-06-27 02:54:02,725.725 INFO    ] Checking for camera pi updates...
[2026-06-27 02:54:02,759.759 INFO    ] 200
[2026-06-27 02:54:02,761.761 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:54:02,804.804 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:54:02,849.849 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:54:02,851.851 INFO    ] No camera update needed
[2026-06-27 02:54:02,854.854 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:54:02,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:54:02,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:54:02,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:54:04,901.901 INFO    ] ================================================
[2026-06-27 02:54:04,916.916 INFO    ] Launching Daemon at Sat Jun 27 02:54:04 IST 2026
[2026-06-27 02:54:04,928.928 INFO    ] ================================================
[2026-06-27 02:54:05,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:54:05
[2026-06-27 02:54:05,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:54:05,745.745 INFO    ] Initializing speech engine...
[2026-06-27 02:54:05,754.754 INFO    ] 2026-06-27 02:54:05
[2026-06-27 02:54:05,972.972 INFO    ] 2026-06-27 02:54:05
[2026-06-27 02:54:06,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:54:06,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:54:06,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:54:06,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:54:06,379.379 INFO    ] time= 27/06/2026 02:54:06
[2026-06-27 02:54:06,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:54:06,436.436 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:54:06,509.509 INFO    ] No existing commands found in stream
[2026-06-27 02:54:11,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:54:11,536.536 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-27 02:54:14,300.300 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 02:54:14,301.301 INFO    ] Checking for system updates...
[2026-06-27 02:54:14,322.322 INFO    ] 200
[2026-06-27 02:54:14,324.324 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:54:14,354.354 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:54:14,355.355 INFO    ] No update needed
[2026-06-27 02:54:14,357.357 INFO    ] Checking for camera pi updates...
[2026-06-27 02:54:14,377.377 INFO    ] 200
[2026-06-27 02:54:14,378.378 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:54:14,402.402 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:54:14,443.443 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:54:14,445.445 INFO    ] No camera update needed
[2026-06-27 02:54:14,446.446 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:54:14,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:54:14,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:54:14,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:54:16,492.492 INFO    ] ================================================
[2026-06-27 02:54:16,508.508 INFO    ] Launching Daemon at Sat Jun 27 02:54:16 IST 2026
[2026-06-27 02:54:16,518.518 INFO    ] ================================================
[2026-06-27 02:54:16,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:54:16
[2026-06-27 02:54:17,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:54:17,348.348 INFO    ] Initializing speech engine...
[2026-06-27 02:54:17,353.353 INFO    ] 2026-06-27 02:54:17
[2026-06-27 02:54:17,561.561 INFO    ] 2026-06-27 02:54:17
[2026-06-27 02:54:17,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:54:17,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:54:17,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:54:17,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:54:18,001.001 INFO    ] time= 27/06/2026 02:54:17
[2026-06-27 02:54:18,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:54:18,008.008 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:54:18,100.100 INFO    ] No existing commands found in stream
[2026-06-27 02:54:23,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:54:23,118.118 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-27 02:54:26,511.511 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:54:26,513.513 INFO    ] Checking for system updates...
[2026-06-27 02:54:26,534.534 INFO    ] 200
[2026-06-27 02:54:26,536.536 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:54:26,567.567 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:54:26,568.568 INFO    ] No update needed
[2026-06-27 02:54:26,570.570 INFO    ] Checking for camera pi updates...
[2026-06-27 02:54:26,590.590 INFO    ] 200
[2026-06-27 02:54:26,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:54:26,617.617 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:54:26,665.665 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:54:26,666.666 INFO    ] No camera update needed
[2026-06-27 02:54:26,668.668 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:54:26,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:54:26,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:54:26,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:54:28,713.713 INFO    ] ================================================
[2026-06-27 02:54:28,729.729 INFO    ] Launching Daemon at Sat Jun 27 02:54:28 IST 2026
[2026-06-27 02:54:28,740.740 INFO    ] ================================================
[2026-06-27 02:54:29,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:54:29
[2026-06-27 02:54:29,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:54:29,592.592 INFO    ] Initializing speech engine...
[2026-06-27 02:54:29,596.596 INFO    ] 2026-06-27 02:54:29
[2026-06-27 02:54:29,803.803 INFO    ] 2026-06-27 02:54:29
[2026-06-27 02:54:29,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:54:30,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:54:30,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:54:30,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:54:30,245.245 INFO    ] time= 27/06/2026 02:54:30
[2026-06-27 02:54:30,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:54:30,253.253 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:54:30,320.320 INFO    ] No existing commands found in stream
[2026-06-27 02:54:35,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:54:35,338.338 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-27 02:54:39,167.167 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:54:39,168.168 INFO    ] Checking for system updates...
[2026-06-27 02:54:39,189.189 INFO    ] 200
[2026-06-27 02:54:39,191.191 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:54:39,223.223 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:54:39,224.224 INFO    ] No update needed
[2026-06-27 02:54:39,226.226 INFO    ] Checking for camera pi updates...
[2026-06-27 02:54:39,246.246 INFO    ] 200
[2026-06-27 02:54:39,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:54:39,271.271 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:54:39,319.319 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:54:39,321.321 INFO    ] No camera update needed
[2026-06-27 02:54:39,322.322 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:54:39,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:54:39,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:54:39,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:54:41,369.369 INFO    ] ================================================
[2026-06-27 02:54:41,385.385 INFO    ] Launching Daemon at Sat Jun 27 02:54:41 IST 2026
[2026-06-27 02:54:41,396.396 INFO    ] ================================================
[2026-06-27 02:54:41,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:54:41
[2026-06-27 02:54:42,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:54:42,245.245 INFO    ] Initializing speech engine...
[2026-06-27 02:54:42,255.255 INFO    ] 2026-06-27 02:54:42
[2026-06-27 02:54:42,464.464 INFO    ] 2026-06-27 02:54:42
[2026-06-27 02:54:42,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:54:42,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:54:42,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:54:42,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:54:42,904.904 INFO    ] time= 27/06/2026 02:54:42
[2026-06-27 02:54:42,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:54:42,912.912 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:54:43,002.002 INFO    ] No existing commands found in stream
[2026-06-27 02:54:48,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:54:48,015.015 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-27 02:54:49,847.847 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 02:54:49,848.848 INFO    ] Checking for system updates...
[2026-06-27 02:54:49,870.870 INFO    ] 200
[2026-06-27 02:54:49,871.871 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:54:49,902.902 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:54:49,904.904 INFO    ] No update needed
[2026-06-27 02:54:49,905.905 INFO    ] Checking for camera pi updates...
[2026-06-27 02:54:49,925.925 INFO    ] 200
[2026-06-27 02:54:49,927.927 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:54:49,951.951 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:54:49,996.996 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:54:49,997.997 INFO    ] No camera update needed
[2026-06-27 02:54:49,999.999 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:54:50,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:54:50,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:54:50,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:54:52,048.048 INFO    ] ================================================
[2026-06-27 02:54:52,065.065 INFO    ] Launching Daemon at Sat Jun 27 02:54:52 IST 2026
[2026-06-27 02:54:52,077.077 INFO    ] ================================================
[2026-06-27 02:54:52,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:54:52
[2026-06-27 02:54:52,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:54:52,891.891 INFO    ] Initializing speech engine...
[2026-06-27 02:54:52,896.896 INFO    ] 2026-06-27 02:54:52
[2026-06-27 02:54:53,099.099 INFO    ] 2026-06-27 02:54:53
[2026-06-27 02:54:53,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:54:53,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:54:53,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:54:53,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:54:53,515.515 INFO    ] time= 27/06/2026 02:54:53
[2026-06-27 02:54:53,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:54:53,545.545 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:54:53,635.635 INFO    ] No existing commands found in stream
[2026-06-27 02:54:58,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:54:58,652.652 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-27 02:55:00,791.791 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:55:00,792.792 INFO    ] Checking for system updates...
[2026-06-27 02:55:00,814.814 INFO    ] 200
[2026-06-27 02:55:00,815.815 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:55:00,846.846 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:55:00,847.847 INFO    ] No update needed
[2026-06-27 02:55:00,848.848 INFO    ] Checking for camera pi updates...
[2026-06-27 02:55:00,868.868 INFO    ] 200
[2026-06-27 02:55:00,869.869 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:55:00,892.892 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:55:00,944.944 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:55:00,945.945 INFO    ] No camera update needed
[2026-06-27 02:55:00,946.946 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:55:00,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:55:00,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:55:00,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:55:03,006.006 INFO    ] ================================================
[2026-06-27 02:55:03,015.015 INFO    ] Launching Daemon at Sat Jun 27 02:55:03 IST 2026
[2026-06-27 02:55:03,021.021 INFO    ] ================================================
[2026-06-27 02:55:03,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:55:03
[2026-06-27 02:55:03,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:55:03,819.819 INFO    ] Initializing speech engine...
[2026-06-27 02:55:03,829.829 INFO    ] 2026-06-27 02:55:03
[2026-06-27 02:55:04,033.033 INFO    ] 2026-06-27 02:55:04
[2026-06-27 02:55:04,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:55:04,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:55:04,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:55:04,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:55:04,451.451 INFO    ] time= 27/06/2026 02:55:04
[2026-06-27 02:55:04,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:55:04,479.479 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:55:04,570.570 INFO    ] No existing commands found in stream
[2026-06-27 02:55:09,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:55:09,582.582 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-27 02:55:13,696.696 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 02:55:13,698.698 INFO    ] Checking for system updates...
[2026-06-27 02:55:13,719.719 INFO    ] 200
[2026-06-27 02:55:13,720.720 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:55:13,751.751 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:55:13,752.752 INFO    ] No update needed
[2026-06-27 02:55:13,754.754 INFO    ] Checking for camera pi updates...
[2026-06-27 02:55:13,775.775 INFO    ] 200
[2026-06-27 02:55:13,776.776 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:55:13,801.801 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:55:13,842.842 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:55:13,843.843 INFO    ] No camera update needed
[2026-06-27 02:55:13,845.845 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:55:13,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:55:13,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:55:13,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:55:15,890.890 INFO    ] ================================================
[2026-06-27 02:55:15,905.905 INFO    ] Launching Daemon at Sat Jun 27 02:55:15 IST 2026
[2026-06-27 02:55:15,916.916 INFO    ] ================================================
[2026-06-27 02:55:16,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:55:16
[2026-06-27 02:55:16,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:55:16,745.745 INFO    ] Initializing speech engine...
[2026-06-27 02:55:16,754.754 INFO    ] 2026-06-27 02:55:16
[2026-06-27 02:55:16,945.945 INFO    ] 2026-06-27 02:55:16
[2026-06-27 02:55:16,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:55:17,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:55:17,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:55:17,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:55:17,419.419 INFO    ] time= 27/06/2026 02:55:17
[2026-06-27 02:55:17,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:55:17,454.454 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:55:17,528.528 INFO    ] No existing commands found in stream
[2026-06-27 02:55:22,539.539 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:55:22,542.542 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-27 02:55:26,952.952 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 02:55:26,953.953 INFO    ] Checking for system updates...
[2026-06-27 02:55:26,974.974 INFO    ] 200
[2026-06-27 02:55:26,976.976 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:55:27,006.006 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:55:27,007.007 INFO    ] No update needed
[2026-06-27 02:55:27,009.009 INFO    ] Checking for camera pi updates...
[2026-06-27 02:55:27,028.028 INFO    ] 200
[2026-06-27 02:55:27,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:55:27,054.054 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:55:27,197.197 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:55:27,199.199 INFO    ] No camera update needed
[2026-06-27 02:55:27,200.200 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:55:27,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:55:27,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:55:27,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:55:29,246.246 INFO    ] ================================================
[2026-06-27 02:55:29,262.262 INFO    ] Launching Daemon at Sat Jun 27 02:55:29 IST 2026
[2026-06-27 02:55:29,273.273 INFO    ] ================================================
[2026-06-27 02:55:29,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:55:29
[2026-06-27 02:55:29,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:55:30,130.130 INFO    ] Initializing speech engine...
[2026-06-27 02:55:30,136.136 INFO    ] 2026-06-27 02:55:30
[2026-06-27 02:55:30,347.347 INFO    ] 2026-06-27 02:55:30
[2026-06-27 02:55:30,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:55:30,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:55:30,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:55:30,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:55:30,793.793 INFO    ] time= 27/06/2026 02:55:30
[2026-06-27 02:55:30,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:55:30,800.800 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:55:30,868.868 INFO    ] No existing commands found in stream
[2026-06-27 02:55:35,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:55:35,904.904 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-27 02:55:38,196.196 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 02:55:38,198.198 INFO    ] Checking for system updates...
[2026-06-27 02:55:38,219.219 INFO    ] 200
[2026-06-27 02:55:38,220.220 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:55:38,251.251 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:55:38,252.252 INFO    ] No update needed
[2026-06-27 02:55:38,254.254 INFO    ] Checking for camera pi updates...
[2026-06-27 02:55:38,274.274 INFO    ] 200
[2026-06-27 02:55:38,276.276 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:55:38,299.299 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:55:38,342.342 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:55:38,343.343 INFO    ] No camera update needed
[2026-06-27 02:55:38,345.345 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:55:38,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:55:38,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:55:38,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:55:40,393.393 INFO    ] ================================================
[2026-06-27 02:55:40,408.408 INFO    ] Launching Daemon at Sat Jun 27 02:55:40 IST 2026
[2026-06-27 02:55:40,419.419 INFO    ] ================================================
[2026-06-27 02:55:40,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:55:40
[2026-06-27 02:55:41,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:55:41,260.260 INFO    ] Initializing speech engine...
[2026-06-27 02:55:41,263.263 INFO    ] 2026-06-27 02:55:41
[2026-06-27 02:55:41,470.470 INFO    ] 2026-06-27 02:55:41
[2026-06-27 02:55:41,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:55:41,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:55:41,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:55:41,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:55:41,897.897 INFO    ] time= 27/06/2026 02:55:41
[2026-06-27 02:55:41,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:55:41,925.925 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:55:42,019.019 INFO    ] No existing commands found in stream
[2026-06-27 02:55:47,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:55:47,036.036 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-27 02:55:48,796.796 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 02:55:48,798.798 INFO    ] Checking for system updates...
[2026-06-27 02:55:48,819.819 INFO    ] 200
[2026-06-27 02:55:48,821.821 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:55:48,853.853 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:55:48,855.855 INFO    ] No update needed
[2026-06-27 02:55:48,857.857 INFO    ] Checking for camera pi updates...
[2026-06-27 02:55:48,877.877 INFO    ] 200
[2026-06-27 02:55:48,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:55:48,905.905 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:55:48,953.953 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:55:48,954.954 INFO    ] No camera update needed
[2026-06-27 02:55:48,956.956 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:55:48,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:55:48,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:55:48,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:55:51,004.004 INFO    ] ================================================
[2026-06-27 02:55:51,020.020 INFO    ] Launching Daemon at Sat Jun 27 02:55:51 IST 2026
[2026-06-27 02:55:51,031.031 INFO    ] ================================================
[2026-06-27 02:55:51,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:55:51
[2026-06-27 02:55:51,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:55:51,807.807 INFO    ] Initializing speech engine...
[2026-06-27 02:55:51,818.818 INFO    ] 2026-06-27 02:55:51
[2026-06-27 02:55:52,025.025 INFO    ] 2026-06-27 02:55:52
[2026-06-27 02:55:52,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:55:52,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:55:52,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:55:52,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:55:52,471.471 INFO    ] time= 27/06/2026 02:55:52
[2026-06-27 02:55:52,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:55:52,478.478 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:55:52,570.570 INFO    ] No existing commands found in stream
[2026-06-27 02:55:57,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:55:57,587.587 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-27 02:55:59,567.567 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 02:55:59,568.568 INFO    ] Checking for system updates...
[2026-06-27 02:55:59,590.590 INFO    ] 200
[2026-06-27 02:55:59,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:55:59,621.621 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:55:59,623.623 INFO    ] No update needed
[2026-06-27 02:55:59,624.624 INFO    ] Checking for camera pi updates...
[2026-06-27 02:55:59,645.645 INFO    ] 200
[2026-06-27 02:55:59,647.647 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:55:59,672.672 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:55:59,716.716 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:55:59,717.717 INFO    ] No camera update needed
[2026-06-27 02:55:59,718.718 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:55:59,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:55:59,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:55:59,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:56:01,766.766 INFO    ] ================================================
[2026-06-27 02:56:01,781.781 INFO    ] Launching Daemon at Sat Jun 27 02:56:01 IST 2026
[2026-06-27 02:56:01,792.792 INFO    ] ================================================
[2026-06-27 02:56:02,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:56:02
[2026-06-27 02:56:02,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:56:02,787.787 INFO    ] Initializing speech engine...
[2026-06-27 02:56:02,793.793 INFO    ] 2026-06-27 02:56:02
[2026-06-27 02:56:03,052.052 INFO    ] 2026-06-27 02:56:03
[2026-06-27 02:56:03,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:56:03,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:56:03,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:56:03,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:56:03,481.481 INFO    ] time= 27/06/2026 02:56:03
[2026-06-27 02:56:03,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:56:03,511.511 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:56:03,579.579 INFO    ] No existing commands found in stream
[2026-06-27 02:56:08,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:56:08,597.597 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-27 02:56:12,656.656 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:56:12,658.658 INFO    ] Checking for system updates...
[2026-06-27 02:56:12,679.679 INFO    ] 200
[2026-06-27 02:56:12,680.680 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:56:12,714.714 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:56:12,716.716 INFO    ] No update needed
[2026-06-27 02:56:12,717.717 INFO    ] Checking for camera pi updates...
[2026-06-27 02:56:12,737.737 INFO    ] 200
[2026-06-27 02:56:12,738.738 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:56:12,764.764 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:56:12,822.822 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:56:12,824.824 INFO    ] No camera update needed
[2026-06-27 02:56:12,825.825 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:56:12,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:56:12,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:56:12,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:56:14,871.871 INFO    ] ================================================
[2026-06-27 02:56:14,889.889 INFO    ] Launching Daemon at Sat Jun 27 02:56:14 IST 2026
[2026-06-27 02:56:14,900.900 INFO    ] ================================================
[2026-06-27 02:56:15,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:56:15
[2026-06-27 02:56:15,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:56:15,717.717 INFO    ] Initializing speech engine...
[2026-06-27 02:56:15,722.722 INFO    ] 2026-06-27 02:56:15
[2026-06-27 02:56:15,928.928 INFO    ] 2026-06-27 02:56:15
[2026-06-27 02:56:15,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:56:16,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:56:16,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:56:16,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:56:16,368.368 INFO    ] time= 27/06/2026 02:56:16
[2026-06-27 02:56:16,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:56:16,375.375 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:56:16,466.466 INFO    ] No existing commands found in stream
[2026-06-27 02:56:21,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:56:21,478.478 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-27 02:56:24,507.507 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 02:56:24,508.508 INFO    ] Checking for system updates...
[2026-06-27 02:56:24,529.529 INFO    ] 200
[2026-06-27 02:56:24,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:56:24,561.561 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:56:24,562.562 INFO    ] No update needed
[2026-06-27 02:56:24,564.564 INFO    ] Checking for camera pi updates...
[2026-06-27 02:56:24,587.587 INFO    ] 200
[2026-06-27 02:56:24,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:56:24,611.611 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:56:24,656.656 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:56:24,658.658 INFO    ] No camera update needed
[2026-06-27 02:56:24,659.659 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:56:24,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:56:24,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:56:24,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:56:26,705.705 INFO    ] ================================================
[2026-06-27 02:56:26,720.720 INFO    ] Launching Daemon at Sat Jun 27 02:56:26 IST 2026
[2026-06-27 02:56:26,730.730 INFO    ] ================================================
[2026-06-27 02:56:27,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:56:27
[2026-06-27 02:56:27,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:56:27,578.578 INFO    ] Initializing speech engine...
[2026-06-27 02:56:27,584.584 INFO    ] 2026-06-27 02:56:27
[2026-06-27 02:56:27,793.793 INFO    ] 2026-06-27 02:56:27
[2026-06-27 02:56:27,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:56:28,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:56:28,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:56:28,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:56:28,225.225 INFO    ] time= 27/06/2026 02:56:28
[2026-06-27 02:56:28,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:56:28,254.254 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:56:28,322.322 INFO    ] No existing commands found in stream
[2026-06-27 02:56:33,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:56:33,340.340 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-27 02:56:34,386.386 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 02:56:34,387.387 INFO    ] Checking for system updates...
[2026-06-27 02:56:34,409.409 INFO    ] 200
[2026-06-27 02:56:34,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:56:34,444.444 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:56:34,445.445 INFO    ] No update needed
[2026-06-27 02:56:34,447.447 INFO    ] Checking for camera pi updates...
[2026-06-27 02:56:34,467.467 INFO    ] 200
[2026-06-27 02:56:34,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:56:34,492.492 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:56:34,535.535 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:56:34,536.536 INFO    ] No camera update needed
[2026-06-27 02:56:34,538.538 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:56:34,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:56:34,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:56:34,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:56:36,584.584 INFO    ] ================================================
[2026-06-27 02:56:36,600.600 INFO    ] Launching Daemon at Sat Jun 27 02:56:36 IST 2026
[2026-06-27 02:56:36,611.611 INFO    ] ================================================
[2026-06-27 02:56:36,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:56:36
[2026-06-27 02:56:37,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:56:37,397.397 INFO    ] Initializing speech engine...
[2026-06-27 02:56:37,402.402 INFO    ] 2026-06-27 02:56:37
[2026-06-27 02:56:37,621.621 INFO    ] 2026-06-27 02:56:37
[2026-06-27 02:56:37,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:56:37,839.839 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:56:37,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:56:38,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:56:38,068.068 INFO    ] time= 27/06/2026 02:56:38
[2026-06-27 02:56:38,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:56:38,075.075 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:56:38,168.168 INFO    ] No existing commands found in stream
[2026-06-27 02:56:43,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:56:43,179.179 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-27 02:56:45,692.692 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 02:56:45,694.694 INFO    ] Checking for system updates...
[2026-06-27 02:56:45,715.715 INFO    ] 200
[2026-06-27 02:56:45,716.716 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:56:45,750.750 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:56:45,752.752 INFO    ] No update needed
[2026-06-27 02:56:45,753.753 INFO    ] Checking for camera pi updates...
[2026-06-27 02:56:45,772.772 INFO    ] 200
[2026-06-27 02:56:45,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:56:45,798.798 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:56:45,839.839 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:56:45,841.841 INFO    ] No camera update needed
[2026-06-27 02:56:45,842.842 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:56:45,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:56:45,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:56:45,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:56:47,889.889 INFO    ] ================================================
[2026-06-27 02:56:47,904.904 INFO    ] Launching Daemon at Sat Jun 27 02:56:47 IST 2026
[2026-06-27 02:56:47,914.914 INFO    ] ================================================
[2026-06-27 02:56:48,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:56:48
[2026-06-27 02:56:48,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:56:48,714.714 INFO    ] Initializing speech engine...
[2026-06-27 02:56:48,723.723 INFO    ] 2026-06-27 02:56:48
[2026-06-27 02:56:48,948.948 INFO    ] 2026-06-27 02:56:48
[2026-06-27 02:56:48,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:56:49,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:56:49,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:56:49,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:56:49,387.387 INFO    ] time= 27/06/2026 02:56:49
[2026-06-27 02:56:49,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:56:49,432.432 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:56:49,499.499 INFO    ] No existing commands found in stream
[2026-06-27 02:56:54,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:56:54,516.516 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-27 02:56:58,417.417 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 02:56:58,419.419 INFO    ] Checking for system updates...
[2026-06-27 02:56:58,440.440 INFO    ] 200
[2026-06-27 02:56:58,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:56:58,476.476 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:56:58,477.477 INFO    ] No update needed
[2026-06-27 02:56:58,478.478 INFO    ] Checking for camera pi updates...
[2026-06-27 02:56:58,498.498 INFO    ] 200
[2026-06-27 02:56:58,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:56:58,525.525 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:56:58,569.569 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:56:58,570.570 INFO    ] No camera update needed
[2026-06-27 02:56:58,571.571 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:56:58,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:56:58,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:56:58,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:57:00,617.617 INFO    ] ================================================
[2026-06-27 02:57:00,632.632 INFO    ] Launching Daemon at Sat Jun 27 02:57:00 IST 2026
[2026-06-27 02:57:00,643.643 INFO    ] ================================================
[2026-06-27 02:57:00,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:57:00
[2026-06-27 02:57:01,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:57:01,573.573 INFO    ] Initializing speech engine...
[2026-06-27 02:57:01,595.595 INFO    ] 2026-06-27 02:57:01
[2026-06-27 02:57:01,806.806 INFO    ] 2026-06-27 02:57:01
[2026-06-27 02:57:01,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:57:02,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:57:02,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:57:02,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:57:02,639.639 INFO    ] time= 27/06/2026 02:57:02
[2026-06-27 02:57:02,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:57:02,645.645 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:57:02,719.719 INFO    ] No existing commands found in stream
[2026-06-27 02:57:07,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:57:07,731.731 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-27 02:57:10,242.242 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 02:57:10,244.244 INFO    ] Checking for system updates...
[2026-06-27 02:57:10,265.265 INFO    ] 200
[2026-06-27 02:57:10,266.266 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:57:10,299.299 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:57:10,300.300 INFO    ] No update needed
[2026-06-27 02:57:10,302.302 INFO    ] Checking for camera pi updates...
[2026-06-27 02:57:10,321.321 INFO    ] 200
[2026-06-27 02:57:10,323.323 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:57:10,346.346 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:57:10,392.392 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:57:10,394.394 INFO    ] No camera update needed
[2026-06-27 02:57:10,395.395 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:57:10,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:57:10,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:57:10,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:57:12,441.441 INFO    ] ================================================
[2026-06-27 02:57:12,457.457 INFO    ] Launching Daemon at Sat Jun 27 02:57:12 IST 2026
[2026-06-27 02:57:12,468.468 INFO    ] ================================================
[2026-06-27 02:57:12,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:57:12
[2026-06-27 02:57:13,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:57:13,324.324 INFO    ] Initializing speech engine...
[2026-06-27 02:57:13,328.328 INFO    ] 2026-06-27 02:57:13
[2026-06-27 02:57:13,535.535 INFO    ] 2026-06-27 02:57:13
[2026-06-27 02:57:13,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:57:13,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:57:13,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:57:13,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:57:13,957.957 INFO    ] time= 27/06/2026 02:57:13
[2026-06-27 02:57:13,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:57:13,986.986 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:57:14,054.054 INFO    ] No existing commands found in stream
[2026-06-27 02:57:19,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:57:19,071.071 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-27 02:57:20,312.312 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:57:20,313.313 INFO    ] Checking for system updates...
[2026-06-27 02:57:20,336.336 INFO    ] 200
[2026-06-27 02:57:20,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:57:20,367.367 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:57:20,369.369 INFO    ] No update needed
[2026-06-27 02:57:20,370.370 INFO    ] Checking for camera pi updates...
[2026-06-27 02:57:20,391.391 INFO    ] 200
[2026-06-27 02:57:20,393.393 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:57:20,417.417 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:57:20,458.458 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:57:20,459.459 INFO    ] No camera update needed
[2026-06-27 02:57:20,460.460 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:57:20,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:57:20,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:57:20,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:57:22,510.510 INFO    ] ================================================
[2026-06-27 02:57:22,526.526 INFO    ] Launching Daemon at Sat Jun 27 02:57:22 IST 2026
[2026-06-27 02:57:22,537.537 INFO    ] ================================================
[2026-06-27 02:57:22,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:57:22
[2026-06-27 02:57:23,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:57:23,328.328 INFO    ] Initializing speech engine...
[2026-06-27 02:57:23,336.336 INFO    ] 2026-06-27 02:57:23
[2026-06-27 02:57:23,561.561 INFO    ] 2026-06-27 02:57:23
[2026-06-27 02:57:23,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:57:23,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:57:23,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:57:24,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:57:24,036.036 INFO    ] time= 27/06/2026 02:57:24
[2026-06-27 02:57:24,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:57:24,044.044 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:57:24,116.116 INFO    ] No existing commands found in stream
[2026-06-27 02:57:29,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:57:29,128.128 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-27 02:57:30,706.706 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 02:57:30,707.707 INFO    ] Checking for system updates...
[2026-06-27 02:57:30,729.729 INFO    ] 200
[2026-06-27 02:57:30,730.730 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:57:30,763.763 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:57:30,765.765 INFO    ] No update needed
[2026-06-27 02:57:30,766.766 INFO    ] Checking for camera pi updates...
[2026-06-27 02:57:30,785.785 INFO    ] 200
[2026-06-27 02:57:30,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:57:30,810.810 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:57:30,958.958 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:57:30,959.959 INFO    ] No camera update needed
[2026-06-27 02:57:30,961.961 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:57:30,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:57:30,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:57:30,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:57:33,000.000 INFO    ] ================================================
[2026-06-27 02:57:33,016.016 INFO    ] Launching Daemon at Sat Jun 27 02:57:33 IST 2026
[2026-06-27 02:57:33,027.027 INFO    ] ================================================
[2026-06-27 02:57:33,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:57:33
[2026-06-27 02:57:33,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:57:33,829.829 INFO    ] Initializing speech engine...
[2026-06-27 02:57:33,834.834 INFO    ] 2026-06-27 02:57:33
[2026-06-27 02:57:34,050.050 INFO    ] 2026-06-27 02:57:34
[2026-06-27 02:57:34,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:57:34,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:57:34,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:57:34,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:57:34,478.478 INFO    ] time= 27/06/2026 02:57:34
[2026-06-27 02:57:34,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:57:34,530.530 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:57:34,607.607 INFO    ] No existing commands found in stream
[2026-06-27 02:57:39,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:57:39,619.619 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-27 02:57:41,901.901 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 02:57:41,903.903 INFO    ] Checking for system updates...
[2026-06-27 02:57:41,923.923 INFO    ] 200
[2026-06-27 02:57:41,925.925 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:57:41,955.955 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:57:41,956.956 INFO    ] No update needed
[2026-06-27 02:57:41,957.957 INFO    ] Checking for camera pi updates...
[2026-06-27 02:57:41,976.976 INFO    ] 200
[2026-06-27 02:57:41,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:57:42,001.001 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:57:42,043.043 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:57:42,044.044 INFO    ] No camera update needed
[2026-06-27 02:57:42,046.046 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:57:42,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:57:42,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:57:42,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:57:44,092.092 INFO    ] ================================================
[2026-06-27 02:57:44,108.108 INFO    ] Launching Daemon at Sat Jun 27 02:57:44 IST 2026
[2026-06-27 02:57:44,120.120 INFO    ] ================================================
[2026-06-27 02:57:44,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:57:44
[2026-06-27 02:57:44,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:57:44,992.992 INFO    ] Initializing speech engine...
[2026-06-27 02:57:44,998.998 INFO    ] 2026-06-27 02:57:44
[2026-06-27 02:57:45,205.205 INFO    ] 2026-06-27 02:57:45
[2026-06-27 02:57:45,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:57:45,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:57:45,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:57:45,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:57:45,645.645 INFO    ] time= 27/06/2026 02:57:45
[2026-06-27 02:57:45,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:57:45,652.652 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:57:45,742.742 INFO    ] No existing commands found in stream
[2026-06-27 02:57:50,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:57:50,756.756 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-27 02:57:54,226.226 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 02:57:54,228.228 INFO    ] Checking for system updates...
[2026-06-27 02:57:54,250.250 INFO    ] 200
[2026-06-27 02:57:54,252.252 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:57:54,285.285 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:57:54,287.287 INFO    ] No update needed
[2026-06-27 02:57:54,288.288 INFO    ] Checking for camera pi updates...
[2026-06-27 02:57:54,310.310 INFO    ] 200
[2026-06-27 02:57:54,312.312 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:57:54,337.337 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:57:54,367.367 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:57:54,369.369 INFO    ] No camera update needed
[2026-06-27 02:57:54,370.370 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:57:54,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:57:54,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:57:54,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:57:56,417.417 INFO    ] ================================================
[2026-06-27 02:57:56,433.433 INFO    ] Launching Daemon at Sat Jun 27 02:57:56 IST 2026
[2026-06-27 02:57:56,444.444 INFO    ] ================================================
[2026-06-27 02:57:56,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:57:56
[2026-06-27 02:57:57,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:57:57,330.330 INFO    ] Initializing speech engine...
[2026-06-27 02:57:57,336.336 INFO    ] 2026-06-27 02:57:57
[2026-06-27 02:57:57,546.546 INFO    ] 2026-06-27 02:57:57
[2026-06-27 02:57:57,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:57:57,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:57:57,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:57:57,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:57:57,987.987 INFO    ] time= 27/06/2026 02:57:57
[2026-06-27 02:57:57,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:57:57,995.995 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:57:58,061.061 INFO    ] No existing commands found in stream
[2026-06-27 02:58:03,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:58:03,073.073 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-27 02:58:04,409.409 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 02:58:04,411.411 INFO    ] Checking for system updates...
[2026-06-27 02:58:04,432.432 INFO    ] 200
[2026-06-27 02:58:04,433.433 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:58:04,465.465 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:58:04,466.466 INFO    ] No update needed
[2026-06-27 02:58:04,468.468 INFO    ] Checking for camera pi updates...
[2026-06-27 02:58:04,488.488 INFO    ] 200
[2026-06-27 02:58:04,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:58:04,513.513 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:58:04,562.562 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:58:04,564.564 INFO    ] No camera update needed
[2026-06-27 02:58:04,565.565 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:58:04,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:58:04,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:58:04,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:58:06,613.613 INFO    ] ================================================
[2026-06-27 02:58:06,630.630 INFO    ] Launching Daemon at Sat Jun 27 02:58:06 IST 2026
[2026-06-27 02:58:06,641.641 INFO    ] ================================================
[2026-06-27 02:58:06,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:58:06
[2026-06-27 02:58:07,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:58:07,434.434 INFO    ] Initializing speech engine...
[2026-06-27 02:58:07,438.438 INFO    ] 2026-06-27 02:58:07
[2026-06-27 02:58:07,660.660 INFO    ] 2026-06-27 02:58:07
[2026-06-27 02:58:07,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:58:07,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:58:07,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:58:08,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:58:08,105.105 INFO    ] time= 27/06/2026 02:58:08
[2026-06-27 02:58:08,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:58:08,112.112 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:58:08,179.179 INFO    ] No existing commands found in stream
[2026-06-27 02:58:13,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:58:13,192.192 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-27 02:58:16,921.921 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 02:58:16,922.922 INFO    ] Checking for system updates...
[2026-06-27 02:58:16,943.943 INFO    ] 200
[2026-06-27 02:58:16,945.945 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:58:16,978.978 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:58:16,979.979 INFO    ] No update needed
[2026-06-27 02:58:16,981.981 INFO    ] Checking for camera pi updates...
[2026-06-27 02:58:17,000.000 INFO    ] 200
[2026-06-27 02:58:17,001.001 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:58:17,025.025 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:58:17,069.069 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:58:17,070.070 INFO    ] No camera update needed
[2026-06-27 02:58:17,072.072 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:58:17,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:58:17,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:58:17,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:58:19,117.117 INFO    ] ================================================
[2026-06-27 02:58:19,132.132 INFO    ] Launching Daemon at Sat Jun 27 02:58:19 IST 2026
[2026-06-27 02:58:19,143.143 INFO    ] ================================================
[2026-06-27 02:58:19,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:58:19
[2026-06-27 02:58:19,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:58:19,985.985 INFO    ] Initializing speech engine...
[2026-06-27 02:58:19,996.996 INFO    ] 2026-06-27 02:58:19
[2026-06-27 02:58:20,207.207 INFO    ] 2026-06-27 02:58:20
[2026-06-27 02:58:20,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:58:20,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:58:20,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:58:20,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:58:20,627.627 INFO    ] time= 27/06/2026 02:58:20
[2026-06-27 02:58:20,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:58:20,668.668 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:58:20,761.761 INFO    ] No existing commands found in stream
[2026-06-27 02:58:25,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:58:25,779.779 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-27 02:58:27,915.915 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:58:27,916.916 INFO    ] Checking for system updates...
[2026-06-27 02:58:27,939.939 INFO    ] 200
[2026-06-27 02:58:27,940.940 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:58:27,973.973 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:58:27,975.975 INFO    ] No update needed
[2026-06-27 02:58:27,977.977 INFO    ] Checking for camera pi updates...
[2026-06-27 02:58:27,998.998 INFO    ] 200
[2026-06-27 02:58:27,999.999 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:58:28,022.022 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:58:28,073.073 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:58:28,074.074 INFO    ] No camera update needed
[2026-06-27 02:58:28,076.076 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:58:28,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:58:28,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:58:28,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:58:30,121.121 INFO    ] ================================================
[2026-06-27 02:58:30,137.137 INFO    ] Launching Daemon at Sat Jun 27 02:58:30 IST 2026
[2026-06-27 02:58:30,147.147 INFO    ] ================================================
[2026-06-27 02:58:30,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:58:30
[2026-06-27 02:58:30,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:58:30,942.942 INFO    ] Initializing speech engine...
[2026-06-27 02:58:30,947.947 INFO    ] 2026-06-27 02:58:30
[2026-06-27 02:58:31,150.150 INFO    ] 2026-06-27 02:58:31
[2026-06-27 02:58:31,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:58:32,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:58:32,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:58:32,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:58:32,588.588 INFO    ] time= 27/06/2026 02:58:32
[2026-06-27 02:58:32,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:58:32,607.607 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:58:32,676.676 INFO    ] No existing commands found in stream
[2026-06-27 02:58:37,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:58:37,692.692 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-27 02:58:41,920.920 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 02:58:41,922.922 INFO    ] Checking for system updates...
[2026-06-27 02:58:41,944.944 INFO    ] 200
[2026-06-27 02:58:41,945.945 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:58:41,976.976 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:58:41,978.978 INFO    ] No update needed
[2026-06-27 02:58:41,979.979 INFO    ] Checking for camera pi updates...
[2026-06-27 02:58:41,998.998 INFO    ] 200
[2026-06-27 02:58:42,000.000 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:58:42,023.023 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:58:42,067.067 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:58:42,068.068 INFO    ] No camera update needed
[2026-06-27 02:58:42,069.069 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:58:42,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:58:42,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:58:42,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:58:44,117.117 INFO    ] ================================================
[2026-06-27 02:58:44,133.133 INFO    ] Launching Daemon at Sat Jun 27 02:58:44 IST 2026
[2026-06-27 02:58:44,144.144 INFO    ] ================================================
[2026-06-27 02:58:44,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:58:44
[2026-06-27 02:58:44,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:58:44,933.933 INFO    ] Initializing speech engine...
[2026-06-27 02:58:44,937.937 INFO    ] 2026-06-27 02:58:44
[2026-06-27 02:58:45,156.156 INFO    ] 2026-06-27 02:58:45
[2026-06-27 02:58:45,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:58:45,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:58:45,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:58:45,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:58:45,579.579 INFO    ] time= 27/06/2026 02:58:45
[2026-06-27 02:58:45,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:58:45,614.614 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:58:45,682.682 INFO    ] No existing commands found in stream
[2026-06-27 02:58:50,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:58:50,698.698 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-27 02:58:51,478.478 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 02:58:51,479.479 INFO    ] Checking for system updates...
[2026-06-27 02:58:51,502.502 INFO    ] 200
[2026-06-27 02:58:51,503.503 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:58:51,534.534 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:58:51,536.536 INFO    ] No update needed
[2026-06-27 02:58:51,537.537 INFO    ] Checking for camera pi updates...
[2026-06-27 02:58:51,557.557 INFO    ] 200
[2026-06-27 02:58:51,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:58:51,584.584 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:58:51,624.624 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:58:51,626.626 INFO    ] No camera update needed
[2026-06-27 02:58:51,627.627 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:58:51,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:58:51,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:58:51,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:58:53,673.673 INFO    ] ================================================
[2026-06-27 02:58:53,688.688 INFO    ] Launching Daemon at Sat Jun 27 02:58:53 IST 2026
[2026-06-27 02:58:53,699.699 INFO    ] ================================================
[2026-06-27 02:58:54,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:58:54
[2026-06-27 02:58:54,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:58:54,568.568 INFO    ] Initializing speech engine...
[2026-06-27 02:58:54,573.573 INFO    ] 2026-06-27 02:58:54
[2026-06-27 02:58:54,779.779 INFO    ] 2026-06-27 02:58:54
[2026-06-27 02:58:54,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:58:54,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:58:55,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:58:55,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:58:55,220.220 INFO    ] time= 27/06/2026 02:58:55
[2026-06-27 02:58:55,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:58:55,227.227 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:58:55,318.318 INFO    ] No existing commands found in stream
[2026-06-27 02:59:00,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:59:00,335.335 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-27 02:59:02,760.760 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 02:59:02,762.762 INFO    ] Checking for system updates...
[2026-06-27 02:59:02,798.798 INFO    ] 200
[2026-06-27 02:59:02,800.800 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:59:02,849.849 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:59:02,851.851 INFO    ] No update needed
[2026-06-27 02:59:02,852.852 INFO    ] Checking for camera pi updates...
[2026-06-27 02:59:02,881.881 INFO    ] 200
[2026-06-27 02:59:02,883.883 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:59:02,907.907 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:59:02,949.949 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:59:02,950.950 INFO    ] No camera update needed
[2026-06-27 02:59:02,951.951 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:59:02,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:59:02,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:59:02,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:59:05,999.999 INFO    ] ================================================
[2026-06-27 02:59:05,014.014 INFO    ] Launching Daemon at Sat Jun 27 02:59:05 IST 2026
[2026-06-27 02:59:05,025.025 INFO    ] ================================================
[2026-06-27 02:59:05,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:59:05
[2026-06-27 02:59:05,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:59:05,806.806 INFO    ] Initializing speech engine...
[2026-06-27 02:59:05,814.814 INFO    ] 2026-06-27 02:59:05
[2026-06-27 02:59:06,029.029 INFO    ] 2026-06-27 02:59:06
[2026-06-27 02:59:06,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:59:06,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:59:06,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:59:06,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:59:06,311.311 INFO    ] time= 27/06/2026 02:59:06
[2026-06-27 02:59:06,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:59:06,313.313 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:59:06,406.406 INFO    ] No existing commands found in stream
[2026-06-27 02:59:11,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:59:11,438.438 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-27 02:59:11,960.960 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 02:59:11,962.962 INFO    ] Checking for system updates...
[2026-06-27 02:59:11,982.982 INFO    ] 200
[2026-06-27 02:59:11,984.984 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:59:12,014.014 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:59:12,016.016 INFO    ] No update needed
[2026-06-27 02:59:12,017.017 INFO    ] Checking for camera pi updates...
[2026-06-27 02:59:12,038.038 INFO    ] 200
[2026-06-27 02:59:12,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:59:12,065.065 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:59:12,108.108 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:59:12,109.109 INFO    ] No camera update needed
[2026-06-27 02:59:12,111.111 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:59:12,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:59:12,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:59:12,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:59:14,157.157 INFO    ] ================================================
[2026-06-27 02:59:14,172.172 INFO    ] Launching Daemon at Sat Jun 27 02:59:14 IST 2026
[2026-06-27 02:59:14,183.183 INFO    ] ================================================
[2026-06-27 02:59:14,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:59:14
[2026-06-27 02:59:14,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:59:15,061.061 INFO    ] Initializing speech engine...
[2026-06-27 02:59:15,067.067 INFO    ] 2026-06-27 02:59:15
[2026-06-27 02:59:15,282.282 INFO    ] 2026-06-27 02:59:15
[2026-06-27 02:59:15,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:59:15,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:59:15,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:59:15,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:59:15,728.728 INFO    ] time= 27/06/2026 02:59:15
[2026-06-27 02:59:15,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:59:15,736.736 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:59:15,828.828 INFO    ] No existing commands found in stream
[2026-06-27 02:59:20,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:59:20,840.840 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-27 02:59:22,729.729 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 02:59:22,731.731 INFO    ] Checking for system updates...
[2026-06-27 02:59:22,753.753 INFO    ] 200
[2026-06-27 02:59:22,755.755 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:59:22,788.788 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:59:22,789.789 INFO    ] No update needed
[2026-06-27 02:59:22,790.790 INFO    ] Checking for camera pi updates...
[2026-06-27 02:59:22,811.811 INFO    ] 200
[2026-06-27 02:59:22,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:59:22,838.838 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:59:22,884.884 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 02:59:22,886.886 INFO    ] No camera update needed
[2026-06-27 02:59:22,890.890 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:59:22,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:59:22,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:59:22,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:59:24,936.936 INFO    ] ================================================
[2026-06-27 02:59:24,952.952 INFO    ] Launching Daemon at Sat Jun 27 02:59:24 IST 2026
[2026-06-27 02:59:24,963.963 INFO    ] ================================================
[2026-06-27 02:59:25,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:59:25
[2026-06-27 02:59:25,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:59:25,817.817 INFO    ] Initializing speech engine...
[2026-06-27 02:59:25,823.823 INFO    ] 2026-06-27 02:59:25
[2026-06-27 02:59:26,030.030 INFO    ] 2026-06-27 02:59:26
[2026-06-27 02:59:26,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:59:26,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:59:26,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:59:26,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:59:26,444.444 INFO    ] time= 27/06/2026 02:59:26
[2026-06-27 02:59:26,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:59:26,483.483 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:59:26,550.550 INFO    ] No existing commands found in stream
[2026-06-27 02:59:31,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:59:31,587.587 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-27 02:59:33,011.011 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 02:59:33,012.012 INFO    ] Checking for system updates...
[2026-06-27 02:59:33,034.034 INFO    ] 200
[2026-06-27 02:59:33,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:59:33,066.066 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:59:33,068.068 INFO    ] No update needed
[2026-06-27 02:59:33,069.069 INFO    ] Checking for camera pi updates...
[2026-06-27 02:59:33,089.089 INFO    ] 200
[2026-06-27 02:59:33,091.091 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:59:33,115.115 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:59:33,254.254 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:59:33,256.256 INFO    ] No camera update needed
[2026-06-27 02:59:33,257.257 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:59:33,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:59:33,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:59:33,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:59:35,306.306 INFO    ] ================================================
[2026-06-27 02:59:35,322.322 INFO    ] Launching Daemon at Sat Jun 27 02:59:35 IST 2026
[2026-06-27 02:59:35,336.336 INFO    ] ================================================
[2026-06-27 02:59:35,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:59:35
[2026-06-27 02:59:35,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:59:36,113.113 INFO    ] Initializing speech engine...
[2026-06-27 02:59:36,118.118 INFO    ] 2026-06-27 02:59:36
[2026-06-27 02:59:36,337.337 INFO    ] 2026-06-27 02:59:36
[2026-06-27 02:59:36,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:59:36,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:59:36,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:59:36,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:59:36,785.785 INFO    ] time= 27/06/2026 02:59:36
[2026-06-27 02:59:36,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:59:36,792.792 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:59:36,885.885 INFO    ] No existing commands found in stream
[2026-06-27 02:59:41,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:59:41,897.897 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-27 02:59:45,311.311 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 02:59:45,312.312 INFO    ] Checking for system updates...
[2026-06-27 02:59:45,335.335 INFO    ] 200
[2026-06-27 02:59:45,336.336 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:59:45,368.368 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:59:45,369.369 INFO    ] No update needed
[2026-06-27 02:59:45,371.371 INFO    ] Checking for camera pi updates...
[2026-06-27 02:59:45,392.392 INFO    ] 200
[2026-06-27 02:59:45,393.393 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:59:45,419.419 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:59:45,468.468 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:59:45,469.469 INFO    ] No camera update needed
[2026-06-27 02:59:45,470.470 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:59:45,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:59:45,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:59:45,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 02:59:47,516.516 INFO    ] ================================================
[2026-06-27 02:59:47,531.531 INFO    ] Launching Daemon at Sat Jun 27 02:59:47 IST 2026
[2026-06-27 02:59:47,542.542 INFO    ] ================================================
[2026-06-27 02:59:47,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 02:59:47
[2026-06-27 02:59:48,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 02:59:48,362.362 INFO    ] Initializing speech engine...
[2026-06-27 02:59:48,367.367 INFO    ] 2026-06-27 02:59:48
[2026-06-27 02:59:48,555.555 INFO    ] 2026-06-27 02:59:48
[2026-06-27 02:59:48,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 02:59:48,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 02:59:48,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 02:59:48,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 02:59:48,967.967 INFO    ] time= 27/06/2026 02:59:48
[2026-06-27 02:59:49,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 02:59:49,020.020 INFO    ] Checking for existing commands in stream...
[2026-06-27 02:59:49,112.112 INFO    ] No existing commands found in stream
[2026-06-27 02:59:54,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 02:59:54,129.129 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-27 02:59:57,984.984 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 02:59:57,986.986 INFO    ] Checking for system updates...
[2026-06-27 02:59:58,008.008 INFO    ] 200
[2026-06-27 02:59:58,012.012 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:59:58,050.050 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:59:58,052.052 INFO    ] No update needed
[2026-06-27 02:59:58,053.053 INFO    ] Checking for camera pi updates...
[2026-06-27 02:59:58,072.072 INFO    ] 200
[2026-06-27 02:59:58,074.074 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 02:59:58,097.097 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 02:59:58,159.159 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 02:59:58,160.160 INFO    ] No camera update needed
[2026-06-27 02:59:58,161.161 INFO    ] Script finished. Safe exiting...
[2026-06-27 02:59:58,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 02:59:58,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 02:59:58,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:00:00,207.207 INFO    ] ================================================
[2026-06-27 03:00:00,222.222 INFO    ] Launching Daemon at Sat Jun 27 03:00:00 IST 2026
[2026-06-27 03:00:00,233.233 INFO    ] ================================================
[2026-06-27 03:00:00,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:00:00
[2026-06-27 03:00:00,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:00:01,071.071 INFO    ] Initializing speech engine...
[2026-06-27 03:00:01,076.076 INFO    ] 2026-06-27 03:00:01
[2026-06-27 03:00:01,307.307 INFO    ] 2026-06-27 03:00:01
[2026-06-27 03:00:01,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:00:02,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:00:02,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:00:02,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:00:02,748.748 INFO    ] time= 27/06/2026 03:00:02
[2026-06-27 03:00:02,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:00:02,753.753 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:00:02,892.892 INFO    ] No existing commands found in stream
[2026-06-27 03:00:07,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:00:07,905.905 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-27 03:00:09,649.649 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 03:00:09,651.651 INFO    ] Checking for system updates...
[2026-06-27 03:00:09,674.674 INFO    ] 200
[2026-06-27 03:00:09,676.676 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:00:09,707.707 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:00:09,709.709 INFO    ] No update needed
[2026-06-27 03:00:09,710.710 INFO    ] Checking for camera pi updates...
[2026-06-27 03:00:09,731.731 INFO    ] 200
[2026-06-27 03:00:09,733.733 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:00:09,758.758 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:00:09,805.805 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:00:09,806.806 INFO    ] No camera update needed
[2026-06-27 03:00:09,807.807 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:00:09,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:00:09,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:00:09,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:00:11,853.853 INFO    ] ================================================
[2026-06-27 03:00:11,868.868 INFO    ] Launching Daemon at Sat Jun 27 03:00:11 IST 2026
[2026-06-27 03:00:11,878.878 INFO    ] ================================================
[2026-06-27 03:00:12,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:00:12
[2026-06-27 03:00:12,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:00:12,672.672 INFO    ] Initializing speech engine...
[2026-06-27 03:00:12,687.687 INFO    ] 2026-06-27 03:00:12
[2026-06-27 03:00:12,891.891 INFO    ] 2026-06-27 03:00:12
[2026-06-27 03:00:12,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:00:13,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:00:13,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:00:13,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:00:13,314.314 INFO    ] time= 27/06/2026 03:00:13
[2026-06-27 03:00:13,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:00:13,344.344 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:00:13,435.435 INFO    ] No existing commands found in stream
[2026-06-27 03:00:18,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:00:18,447.447 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-27 03:00:19,168.168 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 03:00:19,169.169 INFO    ] Checking for system updates...
[2026-06-27 03:00:19,192.192 INFO    ] 200
[2026-06-27 03:00:19,193.193 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:00:19,224.224 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:00:19,225.225 INFO    ] No update needed
[2026-06-27 03:00:19,227.227 INFO    ] Checking for camera pi updates...
[2026-06-27 03:00:19,247.247 INFO    ] 200
[2026-06-27 03:00:19,248.248 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:00:19,271.271 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:00:19,315.315 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:00:19,316.316 INFO    ] No camera update needed
[2026-06-27 03:00:19,318.318 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:00:19,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:00:19,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:00:19,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:00:21,365.365 INFO    ] ================================================
[2026-06-27 03:00:21,378.378 INFO    ] Launching Daemon at Sat Jun 27 03:00:21 IST 2026
[2026-06-27 03:00:21,385.385 INFO    ] ================================================
[2026-06-27 03:00:21,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:00:21
[2026-06-27 03:00:22,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:00:22,219.219 INFO    ] Initializing speech engine...
[2026-06-27 03:00:22,232.232 INFO    ] 2026-06-27 03:00:22
[2026-06-27 03:00:22,455.455 INFO    ] 2026-06-27 03:00:22
[2026-06-27 03:00:22,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:00:22,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:00:22,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:00:22,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:00:22,869.869 INFO    ] time= 27/06/2026 03:00:22
[2026-06-27 03:00:22,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:00:22,915.915 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:00:22,998.998 INFO    ] No existing commands found in stream
[2026-06-27 03:00:28,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:00:28,021.021 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-27 03:00:30,385.385 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 03:00:30,386.386 INFO    ] Checking for system updates...
[2026-06-27 03:00:30,407.407 INFO    ] 200
[2026-06-27 03:00:30,408.408 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:00:30,438.438 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:00:30,440.440 INFO    ] No update needed
[2026-06-27 03:00:30,441.441 INFO    ] Checking for camera pi updates...
[2026-06-27 03:00:30,462.462 INFO    ] 200
[2026-06-27 03:00:30,463.463 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:00:30,490.490 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:00:30,531.531 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:00:30,533.533 INFO    ] No camera update needed
[2026-06-27 03:00:30,534.534 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:00:30,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:00:30,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:00:30,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:00:32,579.579 INFO    ] ================================================
[2026-06-27 03:00:32,594.594 INFO    ] Launching Daemon at Sat Jun 27 03:00:32 IST 2026
[2026-06-27 03:00:32,605.605 INFO    ] ================================================
[2026-06-27 03:00:32,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:00:32
[2026-06-27 03:00:33,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:00:33,420.420 INFO    ] Initializing speech engine...
[2026-06-27 03:00:33,424.424 INFO    ] 2026-06-27 03:00:33
[2026-06-27 03:00:33,627.627 INFO    ] 2026-06-27 03:00:33
[2026-06-27 03:00:33,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:00:33,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:00:33,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:00:34,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:00:34,064.064 INFO    ] time= 27/06/2026 03:00:34
[2026-06-27 03:00:34,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:00:34,072.072 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:00:34,139.139 INFO    ] No existing commands found in stream
[2026-06-27 03:00:39,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:00:39,156.156 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-27 03:00:41,368.368 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 03:00:41,369.369 INFO    ] Checking for system updates...
[2026-06-27 03:00:41,391.391 INFO    ] 200
[2026-06-27 03:00:41,392.392 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:00:41,426.426 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:00:41,427.427 INFO    ] No update needed
[2026-06-27 03:00:41,429.429 INFO    ] Checking for camera pi updates...
[2026-06-27 03:00:41,450.450 INFO    ] 200
[2026-06-27 03:00:41,451.451 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:00:41,474.474 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:00:41,518.518 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:00:41,519.519 INFO    ] No camera update needed
[2026-06-27 03:00:41,521.521 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:00:41,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:00:41,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:00:41,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:00:43,568.568 INFO    ] ================================================
[2026-06-27 03:00:43,584.584 INFO    ] Launching Daemon at Sat Jun 27 03:00:43 IST 2026
[2026-06-27 03:00:43,594.594 INFO    ] ================================================
[2026-06-27 03:00:43,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:00:43
[2026-06-27 03:00:44,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:00:44,387.387 INFO    ] Initializing speech engine...
[2026-06-27 03:00:44,391.391 INFO    ] 2026-06-27 03:00:44
[2026-06-27 03:00:44,611.611 INFO    ] 2026-06-27 03:00:44
[2026-06-27 03:00:44,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:00:44,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:00:44,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:00:44,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:00:45,037.037 INFO    ] time= 27/06/2026 03:00:44
[2026-06-27 03:00:45,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:00:45,066.066 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:00:45,142.142 INFO    ] No existing commands found in stream
[2026-06-27 03:00:50,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:00:50,154.154 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-27 03:00:53,715.715 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 03:00:53,716.716 INFO    ] Checking for system updates...
[2026-06-27 03:00:53,737.737 INFO    ] 200
[2026-06-27 03:00:53,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:00:53,769.769 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:00:53,770.770 INFO    ] No update needed
[2026-06-27 03:00:53,772.772 INFO    ] Checking for camera pi updates...
[2026-06-27 03:00:53,793.793 INFO    ] 200
[2026-06-27 03:00:53,795.795 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:00:53,820.820 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:00:53,853.853 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:00:53,854.854 INFO    ] No camera update needed
[2026-06-27 03:00:53,855.855 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:00:53,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:00:53,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:00:53,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:00:55,903.903 INFO    ] ================================================
[2026-06-27 03:00:55,918.918 INFO    ] Launching Daemon at Sat Jun 27 03:00:55 IST 2026
[2026-06-27 03:00:55,930.930 INFO    ] ================================================
[2026-06-27 03:00:56,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:00:56
[2026-06-27 03:00:56,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:00:56,741.741 INFO    ] Initializing speech engine...
[2026-06-27 03:00:56,746.746 INFO    ] 2026-06-27 03:00:56
[2026-06-27 03:00:56,962.962 INFO    ] 2026-06-27 03:00:56
[2026-06-27 03:00:56,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:00:57,037.037 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-27 03:00:57,104.104 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-27 03:00:57,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:00:57,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:00:57,176.176 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-27 03:00:57,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:00:59,287.287 INFO    ] ================================================
[2026-06-27 03:00:59,302.302 INFO    ] Launching Daemon at Sat Jun 27 03:00:59 IST 2026
[2026-06-27 03:00:59,313.313 INFO    ] ================================================
[2026-06-27 03:00:59,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:00:59
[2026-06-27 03:01:00,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:01:00,186.186 INFO    ] Initializing speech engine...
[2026-06-27 03:01:00,191.191 INFO    ] 2026-06-27 03:01:00
[2026-06-27 03:01:00,400.400 INFO    ] 2026-06-27 03:01:00
[2026-06-27 03:01:00,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:01:00,481.481 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-27 03:01:00,534.534 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-27 03:01:00,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:01:00,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:01:00,654.654 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-27 03:01:00,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:01:02,710.710 INFO    ] ================================================
[2026-06-27 03:01:02,718.718 INFO    ] Launching Daemon at Sat Jun 27 03:01:02 IST 2026
[2026-06-27 03:01:02,724.724 INFO    ] ================================================
[2026-06-27 03:01:03,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:01:03
[2026-06-27 03:01:03,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:01:03,529.529 INFO    ] Initializing speech engine...
[2026-06-27 03:01:03,540.540 INFO    ] 2026-06-27 03:01:03
[2026-06-27 03:01:03,743.743 INFO    ] 2026-06-27 03:01:03
[2026-06-27 03:01:03,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:01:03,825.825 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-27 03:01:03,873.873 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-27 03:01:03,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:01:03,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:01:03,927.927 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-27 03:01:03,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:01:06,033.033 INFO    ] ================================================
[2026-06-27 03:01:06,049.049 INFO    ] Launching Daemon at Sat Jun 27 03:01:06 IST 2026
[2026-06-27 03:01:06,059.059 INFO    ] ================================================
[2026-06-27 03:01:06,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:01:06
[2026-06-27 03:01:06,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:01:06,892.892 INFO    ] Initializing speech engine...
[2026-06-27 03:01:06,897.897 INFO    ] 2026-06-27 03:01:06
[2026-06-27 03:01:07,100.100 INFO    ] 2026-06-27 03:01:07
[2026-06-27 03:01:07,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:01:07,164.164 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-27 03:01:07,224.224 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-27 03:01:07,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:01:07,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:01:07,303.303 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-27 03:01:07,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:01:09,392.392 INFO    ] ================================================
[2026-06-27 03:01:09,409.409 INFO    ] Launching Daemon at Sat Jun 27 03:01:09 IST 2026
[2026-06-27 03:01:09,421.421 INFO    ] ================================================
[2026-06-27 03:01:09,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:01:09
[2026-06-27 03:01:10,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:01:10,242.242 INFO    ] Initializing speech engine...
[2026-06-27 03:01:10,246.246 INFO    ] 2026-06-27 03:01:10
[2026-06-27 03:01:10,463.463 INFO    ] 2026-06-27 03:01:10
[2026-06-27 03:01:10,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:01:10,522.522 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-27 03:01:10,577.577 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-27 03:01:10,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:01:10,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:01:10,644.644 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-27 03:01:10,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:01:12,751.751 INFO    ] ================================================
[2026-06-27 03:01:12,770.770 INFO    ] Launching Daemon at Sat Jun 27 03:01:12 IST 2026
[2026-06-27 03:01:12,782.782 INFO    ] ================================================
[2026-06-27 03:01:13,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:01:13
[2026-06-27 03:01:13,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:01:13,575.575 INFO    ] Initializing speech engine...
[2026-06-27 03:01:13,582.582 INFO    ] 2026-06-27 03:01:13
[2026-06-27 03:01:13,795.795 INFO    ] 2026-06-27 03:01:13
[2026-06-27 03:01:13,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:01:13,876.876 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-27 03:01:13,919.919 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-27 03:01:13,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:01:13,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:01:13,988.988 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-27 03:01:14,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:01:16,086.086 INFO    ] ================================================
[2026-06-27 03:01:16,113.113 INFO    ] Launching Daemon at Sat Jun 27 03:01:16 IST 2026
[2026-06-27 03:01:16,124.124 INFO    ] ================================================
[2026-06-27 03:01:16,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:01:16
[2026-06-27 03:01:16,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:01:16,977.977 INFO    ] Initializing speech engine...
[2026-06-27 03:01:16,987.987 INFO    ] 2026-06-27 03:01:16
[2026-06-27 03:01:17,191.191 INFO    ] 2026-06-27 03:01:17
[2026-06-27 03:01:17,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:01:17,272.272 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-27 03:01:17,314.314 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-27 03:01:17,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:01:17,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:01:17,373.373 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-27 03:01:17,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:01:19,481.481 INFO    ] ================================================
[2026-06-27 03:01:19,497.497 INFO    ] Launching Daemon at Sat Jun 27 03:01:19 IST 2026
[2026-06-27 03:01:19,509.509 INFO    ] ================================================
[2026-06-27 03:01:19,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:01:19
[2026-06-27 03:01:20,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:01:20,301.301 INFO    ] Initializing speech engine...
[2026-06-27 03:01:20,311.311 INFO    ] 2026-06-27 03:01:20
[2026-06-27 03:01:20,517.517 INFO    ] 2026-06-27 03:01:20
[2026-06-27 03:01:20,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:01:20,571.571 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-27 03:01:20,631.631 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-27 03:01:20,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:01:20,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:01:20,700.700 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-27 03:01:20,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:01:22,807.807 INFO    ] ================================================
[2026-06-27 03:01:22,823.823 INFO    ] Launching Daemon at Sat Jun 27 03:01:22 IST 2026
[2026-06-27 03:01:22,835.835 INFO    ] ================================================
[2026-06-27 03:01:23,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:01:23
[2026-06-27 03:01:23,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:01:23,713.713 INFO    ] Initializing speech engine...
[2026-06-27 03:01:23,718.718 INFO    ] 2026-06-27 03:01:23
[2026-06-27 03:01:23,928.928 INFO    ] 2026-06-27 03:01:23
[2026-06-27 03:01:23,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:01:23,982.982 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-27 03:01:24,061.061 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-27 03:01:24,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:01:24,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:01:24,179.179 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-27 03:01:24,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:01:26,242.242 INFO    ] ================================================
[2026-06-27 03:01:26,257.257 INFO    ] Launching Daemon at Sat Jun 27 03:01:26 IST 2026
[2026-06-27 03:01:26,268.268 INFO    ] ================================================
[2026-06-27 03:01:26,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:01:26
[2026-06-27 03:01:26,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:01:27,085.085 INFO    ] Initializing speech engine...
[2026-06-27 03:01:27,090.090 INFO    ] 2026-06-27 03:01:27
[2026-06-27 03:01:27,298.298 INFO    ] 2026-06-27 03:01:27
[2026-06-27 03:01:27,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:01:27,360.360 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-27 03:01:27,435.435 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-27 03:01:27,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:01:27,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:01:27,494.494 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-27 03:01:27,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:01:29,601.601 INFO    ] ================================================
[2026-06-27 03:01:29,618.618 INFO    ] Launching Daemon at Sat Jun 27 03:01:29 IST 2026
[2026-06-27 03:01:29,629.629 INFO    ] ================================================
[2026-06-27 03:01:29,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:01:29
[2026-06-27 03:01:30,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:01:30,433.433 INFO    ] Initializing speech engine...
[2026-06-27 03:01:30,438.438 INFO    ] 2026-06-27 03:01:30
[2026-06-27 03:01:30,643.643 INFO    ] 2026-06-27 03:01:30
[2026-06-27 03:01:30,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:01:30,698.698 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-27 03:01:30,758.758 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-27 03:01:30,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:01:30,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:01:30,827.827 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-27 03:01:30,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:01:32,935.935 INFO    ] ================================================
[2026-06-27 03:01:32,951.951 INFO    ] Launching Daemon at Sat Jun 27 03:01:32 IST 2026
[2026-06-27 03:01:32,963.963 INFO    ] ================================================
[2026-06-27 03:01:33,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:01:33
[2026-06-27 03:01:33,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:01:33,845.845 INFO    ] Initializing speech engine...
[2026-06-27 03:01:33,852.852 INFO    ] 2026-06-27 03:01:33
[2026-06-27 03:01:34,066.066 INFO    ] 2026-06-27 03:01:34
[2026-06-27 03:01:34,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:01:34,122.122 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-27 03:01:34,189.189 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-27 03:01:34,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:01:34,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:01:34,261.261 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-27 03:01:34,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:01:36,370.370 INFO    ] ================================================
[2026-06-27 03:01:36,386.386 INFO    ] Launching Daemon at Sat Jun 27 03:01:36 IST 2026
[2026-06-27 03:01:36,398.398 INFO    ] ================================================
[2026-06-27 03:01:36,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:01:36
[2026-06-27 03:01:37,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:01:37,263.263 INFO    ] Initializing speech engine...
[2026-06-27 03:01:37,271.271 INFO    ] 2026-06-27 03:01:37
[2026-06-27 03:01:37,483.483 INFO    ] 2026-06-27 03:01:37
[2026-06-27 03:01:37,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:01:37,536.536 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-27 03:01:37,607.607 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-27 03:01:37,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:01:37,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:01:37,676.676 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-27 03:01:37,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:01:39,774.774 INFO    ] ================================================
[2026-06-27 03:01:39,790.790 INFO    ] Launching Daemon at Sat Jun 27 03:01:39 IST 2026
[2026-06-27 03:01:39,801.801 INFO    ] ================================================
[2026-06-27 03:01:40,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:01:40
[2026-06-27 03:01:40,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:01:40,619.619 INFO    ] Initializing speech engine...
[2026-06-27 03:01:40,624.624 INFO    ] 2026-06-27 03:01:40
[2026-06-27 03:01:40,831.831 INFO    ] 2026-06-27 03:01:40
[2026-06-27 03:01:40,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:01:40,884.884 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-27 03:01:40,956.956 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-27 03:01:40,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:01:40,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:01:41,035.035 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-27 03:01:41,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:01:43,139.139 INFO    ] ================================================
[2026-06-27 03:01:43,155.155 INFO    ] Launching Daemon at Sat Jun 27 03:01:43 IST 2026
[2026-06-27 03:01:43,166.166 INFO    ] ================================================
[2026-06-27 03:01:43,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:01:43
[2026-06-27 03:01:43,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:01:44,002.002 INFO    ] Initializing speech engine...
[2026-06-27 03:01:44,017.017 INFO    ] 2026-06-27 03:01:44
[2026-06-27 03:01:44,230.230 INFO    ] 2026-06-27 03:01:44
[2026-06-27 03:01:44,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:01:49,290.290 INFO    ] VendingMachinePublisher.__init__: Redis error: Timeout connecting to server
[2026-06-27 03:01:49,321.321 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-27 03:01:49,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:01:49,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:01:49,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:01:51,376.376 INFO    ] ================================================
[2026-06-27 03:01:51,393.393 INFO    ] Launching Daemon at Sat Jun 27 03:01:51 IST 2026
[2026-06-27 03:01:51,405.405 INFO    ] ================================================
[2026-06-27 03:01:51,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:01:51
[2026-06-27 03:01:52,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:01:52,272.272 INFO    ] Initializing speech engine...
[2026-06-27 03:01:52,276.276 INFO    ] 2026-06-27 03:01:52
[2026-06-27 03:01:52,485.485 INFO    ] 2026-06-27 03:01:52
[2026-06-27 03:01:52,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:01:52,568.568 INFO    ] VendingMachinePublisher.__init__: Redis error: Error 101 connecting to live.vendingbuddy.in:23294. Network is unreachable.
[2026-06-27 03:01:52,625.625 INFO    ] Exiting as VendingMachinePublisher redis not connected!!!
[2026-06-27 03:01:52,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:01:52,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:01:52,747.747 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-27 03:01:52,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:01:54,845.845 INFO    ] ================================================
[2026-06-27 03:01:54,862.862 INFO    ] Launching Daemon at Sat Jun 27 03:01:54 IST 2026
[2026-06-27 03:01:54,877.877 INFO    ] ================================================
[2026-06-27 03:01:55,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:01:55
[2026-06-27 03:01:55,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:01:55,660.660 INFO    ] Initializing speech engine...
[2026-06-27 03:01:55,673.673 INFO    ] 2026-06-27 03:01:55
[2026-06-27 03:01:55,879.879 INFO    ] 2026-06-27 03:01:55
[2026-06-27 03:01:55,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:01:56,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:01:56,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:01:56,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:01:56,302.302 INFO    ] time= 27/06/2026 03:01:56
[2026-06-27 03:01:56,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:01:56,330.330 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:01:56,395.395 INFO    ] No existing commands found in stream
[2026-06-27 03:02:01,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:02:01,410.410 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-27 03:02:01,905.905 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:02:01,907.907 INFO    ] Checking for system updates...
[2026-06-27 03:02:01,935.935 INFO    ] 200
[2026-06-27 03:02:01,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:02:01,970.970 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:02:01,972.972 INFO    ] No update needed
[2026-06-27 03:02:01,974.974 INFO    ] Checking for camera pi updates...
[2026-06-27 03:02:01,997.997 INFO    ] 200
[2026-06-27 03:02:01,999.999 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:02:02,027.027 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:02:02,061.061 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:02:02,063.063 INFO    ] No camera update needed
[2026-06-27 03:02:02,065.065 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:02:02,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:02:02,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:02:02,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:02:04,114.114 INFO    ] ================================================
[2026-06-27 03:02:04,130.130 INFO    ] Launching Daemon at Sat Jun 27 03:02:04 IST 2026
[2026-06-27 03:02:04,141.141 INFO    ] ================================================
[2026-06-27 03:02:04,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:02:04
[2026-06-27 03:02:04,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:02:04,977.977 INFO    ] Initializing speech engine...
[2026-06-27 03:02:04,988.988 INFO    ] 2026-06-27 03:02:04
[2026-06-27 03:02:05,199.199 INFO    ] 2026-06-27 03:02:05
[2026-06-27 03:02:05,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:02:05,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:02:05,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:02:05,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:02:05,649.649 INFO    ] time= 27/06/2026 03:02:05
[2026-06-27 03:02:05,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:02:05,657.657 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:02:05,728.728 INFO    ] No existing commands found in stream
[2026-06-27 03:02:10,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:02:10,746.746 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-27 03:02:11,363.363 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:02:11,365.365 INFO    ] Checking for system updates...
[2026-06-27 03:02:11,387.387 INFO    ] 200
[2026-06-27 03:02:11,388.388 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:02:11,421.421 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:02:11,423.423 INFO    ] No update needed
[2026-06-27 03:02:11,424.424 INFO    ] Checking for camera pi updates...
[2026-06-27 03:02:11,445.445 INFO    ] 200
[2026-06-27 03:02:11,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:02:11,474.474 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:02:11,512.512 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:02:11,514.514 INFO    ] No camera update needed
[2026-06-27 03:02:11,515.515 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:02:11,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:02:11,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:02:11,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:02:13,564.564 INFO    ] ================================================
[2026-06-27 03:02:13,580.580 INFO    ] Launching Daemon at Sat Jun 27 03:02:13 IST 2026
[2026-06-27 03:02:13,591.591 INFO    ] ================================================
[2026-06-27 03:02:13,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:02:13
[2026-06-27 03:02:14,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:02:14,392.392 INFO    ] Initializing speech engine...
[2026-06-27 03:02:14,397.397 INFO    ] 2026-06-27 03:02:14
[2026-06-27 03:02:14,604.604 INFO    ] 2026-06-27 03:02:14
[2026-06-27 03:02:14,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:02:14,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:02:14,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:02:14,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:02:15,022.022 INFO    ] time= 27/06/2026 03:02:14
[2026-06-27 03:02:15,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:02:15,057.057 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:02:15,130.130 INFO    ] No existing commands found in stream
[2026-06-27 03:02:20,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:02:20,142.142 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-27 03:02:21,371.371 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 03:02:21,372.372 INFO    ] Checking for system updates...
[2026-06-27 03:02:21,393.393 INFO    ] 200
[2026-06-27 03:02:21,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:02:21,427.427 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:02:21,428.428 INFO    ] No update needed
[2026-06-27 03:02:21,429.429 INFO    ] Checking for camera pi updates...
[2026-06-27 03:02:21,450.450 INFO    ] 200
[2026-06-27 03:02:21,451.451 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:02:21,476.476 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:02:21,508.508 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:02:21,510.510 INFO    ] No camera update needed
[2026-06-27 03:02:21,511.511 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:02:21,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:02:21,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:02:21,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:02:23,560.560 INFO    ] ================================================
[2026-06-27 03:02:23,576.576 INFO    ] Launching Daemon at Sat Jun 27 03:02:23 IST 2026
[2026-06-27 03:02:23,587.587 INFO    ] ================================================
[2026-06-27 03:02:23,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:02:23
[2026-06-27 03:02:24,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:02:24,367.367 INFO    ] Initializing speech engine...
[2026-06-27 03:02:24,372.372 INFO    ] 2026-06-27 03:02:24
[2026-06-27 03:02:24,577.577 INFO    ] 2026-06-27 03:02:24
[2026-06-27 03:02:24,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:02:24,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:02:24,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:02:24,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:02:24,992.992 INFO    ] time= 27/06/2026 03:02:24
[2026-06-27 03:02:25,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:02:25,024.024 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:02:25,091.091 INFO    ] No existing commands found in stream
[2026-06-27 03:02:30,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:02:30,108.108 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-27 03:02:31,724.724 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 03:02:31,726.726 INFO    ] Checking for system updates...
[2026-06-27 03:02:31,759.759 INFO    ] 200
[2026-06-27 03:02:31,761.761 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:02:31,799.799 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:02:31,800.800 INFO    ] No update needed
[2026-06-27 03:02:31,802.802 INFO    ] Checking for camera pi updates...
[2026-06-27 03:02:31,829.829 INFO    ] 200
[2026-06-27 03:02:31,831.831 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:02:31,858.858 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:02:31,892.892 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:02:31,894.894 INFO    ] No camera update needed
[2026-06-27 03:02:31,895.895 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:02:31,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:02:31,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:02:31,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:02:33,945.945 INFO    ] ================================================
[2026-06-27 03:02:33,961.961 INFO    ] Launching Daemon at Sat Jun 27 03:02:33 IST 2026
[2026-06-27 03:02:33,972.972 INFO    ] ================================================
[2026-06-27 03:02:34,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:02:34
[2026-06-27 03:02:34,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:02:34,808.808 INFO    ] Initializing speech engine...
[2026-06-27 03:02:34,814.814 INFO    ] 2026-06-27 03:02:34
[2026-06-27 03:02:35,022.022 INFO    ] 2026-06-27 03:02:35
[2026-06-27 03:02:35,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:02:35,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:02:35,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:02:35,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:02:35,462.462 INFO    ] time= 27/06/2026 03:02:35
[2026-06-27 03:02:35,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:02:35,469.469 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:02:35,536.536 INFO    ] No existing commands found in stream
[2026-06-27 03:02:40,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:02:40,549.549 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-27 03:02:42,279.279 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 03:02:42,281.281 INFO    ] Checking for system updates...
[2026-06-27 03:02:42,302.302 INFO    ] 200
[2026-06-27 03:02:42,303.303 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:02:42,337.337 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:02:42,339.339 INFO    ] No update needed
[2026-06-27 03:02:42,340.340 INFO    ] Checking for camera pi updates...
[2026-06-27 03:02:42,361.361 INFO    ] 200
[2026-06-27 03:02:42,362.362 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:02:42,385.385 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:02:42,422.422 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:02:42,423.423 INFO    ] No camera update needed
[2026-06-27 03:02:42,425.425 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:02:42,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:02:42,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:02:42,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:02:44,471.471 INFO    ] ================================================
[2026-06-27 03:02:44,487.487 INFO    ] Launching Daemon at Sat Jun 27 03:02:44 IST 2026
[2026-06-27 03:02:44,497.497 INFO    ] ================================================
[2026-06-27 03:02:44,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:02:44
[2026-06-27 03:02:45,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:02:45,295.295 INFO    ] Initializing speech engine...
[2026-06-27 03:02:45,298.298 INFO    ] 2026-06-27 03:02:45
[2026-06-27 03:02:45,492.492 INFO    ] 2026-06-27 03:02:45
[2026-06-27 03:02:45,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:02:45,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:02:45,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:02:45,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:02:45,966.966 INFO    ] time= 27/06/2026 03:02:45
[2026-06-27 03:02:45,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:02:46,010.010 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:02:46,085.085 INFO    ] No existing commands found in stream
[2026-06-27 03:02:51,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:02:51,097.097 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-27 03:02:54,123.123 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 03:02:54,124.124 INFO    ] Checking for system updates...
[2026-06-27 03:02:54,146.146 INFO    ] 200
[2026-06-27 03:02:54,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:02:54,179.179 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:02:54,180.180 INFO    ] No update needed
[2026-06-27 03:02:54,182.182 INFO    ] Checking for camera pi updates...
[2026-06-27 03:02:54,202.202 INFO    ] 200
[2026-06-27 03:02:54,203.203 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:02:54,227.227 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:02:54,257.257 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:02:54,258.258 INFO    ] No camera update needed
[2026-06-27 03:02:54,260.260 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:02:54,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:02:54,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:02:54,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:02:56,305.305 INFO    ] ================================================
[2026-06-27 03:02:56,320.320 INFO    ] Launching Daemon at Sat Jun 27 03:02:56 IST 2026
[2026-06-27 03:02:56,331.331 INFO    ] ================================================
[2026-06-27 03:02:56,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:02:56
[2026-06-27 03:02:57,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:02:57,165.165 INFO    ] Initializing speech engine...
[2026-06-27 03:02:57,170.170 INFO    ] 2026-06-27 03:02:57
[2026-06-27 03:02:57,373.373 INFO    ] 2026-06-27 03:02:57
[2026-06-27 03:02:57,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:02:57,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:02:57,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:02:57,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:02:57,814.814 INFO    ] time= 27/06/2026 03:02:57
[2026-06-27 03:02:57,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:02:57,821.821 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:02:57,888.888 INFO    ] No existing commands found in stream
[2026-06-27 03:03:02,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:03:02,905.905 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-27 03:03:07,213.213 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 03:03:07,214.214 INFO    ] Checking for system updates...
[2026-06-27 03:03:07,235.235 INFO    ] 200
[2026-06-27 03:03:07,237.237 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:03:07,267.267 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:03:07,269.269 INFO    ] No update needed
[2026-06-27 03:03:07,270.270 INFO    ] Checking for camera pi updates...
[2026-06-27 03:03:07,290.290 INFO    ] 200
[2026-06-27 03:03:07,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:03:07,316.316 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:03:07,357.357 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:03:07,358.358 INFO    ] No camera update needed
[2026-06-27 03:03:07,359.359 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:03:07,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:03:07,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:03:07,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:03:09,406.406 INFO    ] ================================================
[2026-06-27 03:03:09,422.422 INFO    ] Launching Daemon at Sat Jun 27 03:03:09 IST 2026
[2026-06-27 03:03:09,433.433 INFO    ] ================================================
[2026-06-27 03:03:09,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:03:09
[2026-06-27 03:03:10,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:03:10,245.245 INFO    ] Initializing speech engine...
[2026-06-27 03:03:10,250.250 INFO    ] 2026-06-27 03:03:10
[2026-06-27 03:03:10,457.457 INFO    ] 2026-06-27 03:03:10
[2026-06-27 03:03:10,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:03:10,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:03:10,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:03:10,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:03:10,880.880 INFO    ] time= 27/06/2026 03:03:10
[2026-06-27 03:03:10,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:03:10,909.909 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:03:10,976.976 INFO    ] No existing commands found in stream
[2026-06-27 03:03:15,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:03:15,988.988 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-27 03:03:17,160.160 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:03:17,161.161 INFO    ] Checking for system updates...
[2026-06-27 03:03:17,181.181 INFO    ] 200
[2026-06-27 03:03:17,183.183 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:03:17,216.216 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:03:17,218.218 INFO    ] No update needed
[2026-06-27 03:03:17,219.219 INFO    ] Checking for camera pi updates...
[2026-06-27 03:03:17,240.240 INFO    ] 200
[2026-06-27 03:03:17,242.242 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:03:17,267.267 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:03:17,308.308 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:03:17,309.309 INFO    ] No camera update needed
[2026-06-27 03:03:17,310.310 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:03:17,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:03:17,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:03:17,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:03:19,348.348 INFO    ] ================================================
[2026-06-27 03:03:19,357.357 INFO    ] Launching Daemon at Sat Jun 27 03:03:19 IST 2026
[2026-06-27 03:03:19,363.363 INFO    ] ================================================
[2026-06-27 03:03:19,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:03:19
[2026-06-27 03:03:20,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:03:20,216.216 INFO    ] Initializing speech engine...
[2026-06-27 03:03:20,227.227 INFO    ] 2026-06-27 03:03:20
[2026-06-27 03:03:20,437.437 INFO    ] 2026-06-27 03:03:20
[2026-06-27 03:03:20,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:03:20,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:03:20,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:03:20,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:03:20,845.845 INFO    ] time= 27/06/2026 03:03:20
[2026-06-27 03:03:20,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:03:20,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:03:20,956.956 INFO    ] No existing commands found in stream
[2026-06-27 03:03:25,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:03:25,970.970 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-27 03:03:27,213.213 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 03:03:27,215.215 INFO    ] Checking for system updates...
[2026-06-27 03:03:27,236.236 INFO    ] 200
[2026-06-27 03:03:27,237.237 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:03:27,268.268 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:03:27,269.269 INFO    ] No update needed
[2026-06-27 03:03:27,271.271 INFO    ] Checking for camera pi updates...
[2026-06-27 03:03:27,292.292 INFO    ] 200
[2026-06-27 03:03:27,294.294 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:03:27,318.318 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:03:27,359.359 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:03:27,360.360 INFO    ] No camera update needed
[2026-06-27 03:03:27,361.361 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:03:27,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:03:27,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:03:27,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:03:29,409.409 INFO    ] ================================================
[2026-06-27 03:03:29,426.426 INFO    ] Launching Daemon at Sat Jun 27 03:03:29 IST 2026
[2026-06-27 03:03:29,438.438 INFO    ] ================================================
[2026-06-27 03:03:29,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:03:29
[2026-06-27 03:03:30,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:03:30,228.228 INFO    ] Initializing speech engine...
[2026-06-27 03:03:30,236.236 INFO    ] 2026-06-27 03:03:30
[2026-06-27 03:03:30,448.448 INFO    ] 2026-06-27 03:03:30
[2026-06-27 03:03:30,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:03:30,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:03:30,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:03:30,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:03:30,852.852 INFO    ] time= 27/06/2026 03:03:30
[2026-06-27 03:03:30,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:03:30,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:03:30,989.989 INFO    ] No existing commands found in stream
[2026-06-27 03:03:36,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:03:36,004.004 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-27 03:03:38,283.283 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 03:03:38,284.284 INFO    ] Checking for system updates...
[2026-06-27 03:03:38,305.305 INFO    ] 200
[2026-06-27 03:03:38,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:03:38,338.338 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:03:38,339.339 INFO    ] No update needed
[2026-06-27 03:03:38,341.341 INFO    ] Checking for camera pi updates...
[2026-06-27 03:03:38,362.362 INFO    ] 200
[2026-06-27 03:03:38,363.363 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:03:38,388.388 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:03:38,426.426 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:03:38,427.427 INFO    ] No camera update needed
[2026-06-27 03:03:38,428.428 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:03:38,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:03:38,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:03:38,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:03:40,473.473 INFO    ] ================================================
[2026-06-27 03:03:40,490.490 INFO    ] Launching Daemon at Sat Jun 27 03:03:40 IST 2026
[2026-06-27 03:03:40,501.501 INFO    ] ================================================
[2026-06-27 03:03:40,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:03:40
[2026-06-27 03:03:41,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:03:41,323.323 INFO    ] Initializing speech engine...
[2026-06-27 03:03:41,328.328 INFO    ] 2026-06-27 03:03:41
[2026-06-27 03:03:41,531.531 INFO    ] 2026-06-27 03:03:41
[2026-06-27 03:03:41,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:03:41,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:03:41,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:03:41,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:03:41,970.970 INFO    ] time= 27/06/2026 03:03:41
[2026-06-27 03:03:41,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:03:41,977.977 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:03:42,044.044 INFO    ] No existing commands found in stream
[2026-06-27 03:03:47,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:03:47,079.079 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-27 03:03:48,469.469 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:03:48,470.470 INFO    ] Checking for system updates...
[2026-06-27 03:03:48,492.492 INFO    ] 200
[2026-06-27 03:03:48,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:03:48,524.524 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:03:48,525.525 INFO    ] No update needed
[2026-06-27 03:03:48,526.526 INFO    ] Checking for camera pi updates...
[2026-06-27 03:03:48,546.546 INFO    ] 200
[2026-06-27 03:03:48,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:03:48,570.570 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:03:48,619.619 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:03:48,621.621 INFO    ] No camera update needed
[2026-06-27 03:03:48,622.622 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:03:48,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:03:48,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:03:48,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:03:50,668.668 INFO    ] ================================================
[2026-06-27 03:03:50,685.685 INFO    ] Launching Daemon at Sat Jun 27 03:03:50 IST 2026
[2026-06-27 03:03:50,696.696 INFO    ] ================================================
[2026-06-27 03:03:51,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:03:51
[2026-06-27 03:03:51,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:03:51,505.505 INFO    ] Initializing speech engine...
[2026-06-27 03:03:51,510.510 INFO    ] 2026-06-27 03:03:51
[2026-06-27 03:03:51,729.729 INFO    ] 2026-06-27 03:03:51
[2026-06-27 03:03:51,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:03:51,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:03:51,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:03:52,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:03:52,155.155 INFO    ] time= 27/06/2026 03:03:52
[2026-06-27 03:03:52,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:03:52,184.184 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:03:52,253.253 INFO    ] No existing commands found in stream
[2026-06-27 03:03:57,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:03:57,270.270 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-27 03:03:58,289.289 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 03:03:58,291.291 INFO    ] Checking for system updates...
[2026-06-27 03:03:58,312.312 INFO    ] 200
[2026-06-27 03:03:58,315.315 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:03:58,347.347 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:03:58,348.348 INFO    ] No update needed
[2026-06-27 03:03:58,349.349 INFO    ] Checking for camera pi updates...
[2026-06-27 03:03:58,369.369 INFO    ] 200
[2026-06-27 03:03:58,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:03:58,396.396 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:03:58,435.435 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:03:58,436.436 INFO    ] No camera update needed
[2026-06-27 03:03:58,437.437 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:03:58,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:03:58,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:03:58,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:04:00,484.484 INFO    ] ================================================
[2026-06-27 03:04:00,500.500 INFO    ] Launching Daemon at Sat Jun 27 03:04:00 IST 2026
[2026-06-27 03:04:00,511.511 INFO    ] ================================================
[2026-06-27 03:04:00,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:04:00
[2026-06-27 03:04:01,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:04:01,336.336 INFO    ] Initializing speech engine...
[2026-06-27 03:04:01,347.347 INFO    ] 2026-06-27 03:04:01
[2026-06-27 03:04:01,669.669 INFO    ] 2026-06-27 03:04:01
[2026-06-27 03:04:01,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:04:01,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:04:01,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:04:02,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:04:02,184.184 INFO    ] time= 27/06/2026 03:04:02
[2026-06-27 03:04:02,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:04:02,208.208 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:04:02,291.291 INFO    ] No existing commands found in stream
[2026-06-27 03:04:07,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:04:07,308.308 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-27 03:04:09,109.109 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 03:04:09,111.111 INFO    ] Checking for system updates...
[2026-06-27 03:04:09,134.134 INFO    ] 200
[2026-06-27 03:04:09,136.136 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:04:09,170.170 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:04:09,171.171 INFO    ] No update needed
[2026-06-27 03:04:09,173.173 INFO    ] Checking for camera pi updates...
[2026-06-27 03:04:09,193.193 INFO    ] 200
[2026-06-27 03:04:09,194.194 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:04:09,218.218 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:04:09,266.266 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:04:09,268.268 INFO    ] No camera update needed
[2026-06-27 03:04:09,269.269 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:04:09,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:04:09,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:04:09,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:04:11,316.316 INFO    ] ================================================
[2026-06-27 03:04:11,332.332 INFO    ] Launching Daemon at Sat Jun 27 03:04:11 IST 2026
[2026-06-27 03:04:11,344.344 INFO    ] ================================================
[2026-06-27 03:04:11,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:04:11
[2026-06-27 03:04:12,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:04:12,168.168 INFO    ] Initializing speech engine...
[2026-06-27 03:04:12,172.172 INFO    ] 2026-06-27 03:04:12
[2026-06-27 03:04:12,372.372 INFO    ] 2026-06-27 03:04:12
[2026-06-27 03:04:12,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:04:12,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:04:12,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:04:12,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:04:12,829.829 INFO    ] time= 27/06/2026 03:04:12
[2026-06-27 03:04:12,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:04:12,891.891 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:04:12,969.969 INFO    ] No existing commands found in stream
[2026-06-27 03:04:17,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:04:17,981.981 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-27 03:04:21,872.872 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 03:04:21,874.874 INFO    ] Checking for system updates...
[2026-06-27 03:04:21,895.895 INFO    ] 200
[2026-06-27 03:04:21,897.897 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:04:21,928.928 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:04:21,929.929 INFO    ] No update needed
[2026-06-27 03:04:21,931.931 INFO    ] Checking for camera pi updates...
[2026-06-27 03:04:21,951.951 INFO    ] 200
[2026-06-27 03:04:21,952.952 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:04:21,978.978 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:04:22,014.014 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:04:22,015.015 INFO    ] No camera update needed
[2026-06-27 03:04:22,017.017 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:04:22,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:04:22,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:04:22,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:04:24,068.068 INFO    ] ================================================
[2026-06-27 03:04:24,084.084 INFO    ] Launching Daemon at Sat Jun 27 03:04:24 IST 2026
[2026-06-27 03:04:24,095.095 INFO    ] ================================================
[2026-06-27 03:04:24,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:04:24
[2026-06-27 03:04:24,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:04:24,881.881 INFO    ] Initializing speech engine...
[2026-06-27 03:04:24,887.887 INFO    ] 2026-06-27 03:04:24
[2026-06-27 03:04:25,090.090 INFO    ] 2026-06-27 03:04:25
[2026-06-27 03:04:25,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:04:25,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:04:25,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:04:25,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:04:25,536.536 INFO    ] time= 27/06/2026 03:04:25
[2026-06-27 03:04:25,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:04:25,574.574 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:04:25,690.690 INFO    ] No existing commands found in stream
[2026-06-27 03:04:30,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:04:30,703.703 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-27 03:04:34,136.136 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 03:04:34,137.137 INFO    ] Checking for system updates...
[2026-06-27 03:04:34,159.159 INFO    ] 200
[2026-06-27 03:04:34,161.161 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:04:34,191.191 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:04:34,192.192 INFO    ] No update needed
[2026-06-27 03:04:34,194.194 INFO    ] Checking for camera pi updates...
[2026-06-27 03:04:34,214.214 INFO    ] 200
[2026-06-27 03:04:34,216.216 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:04:34,241.241 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:04:34,277.277 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:04:34,278.278 INFO    ] No camera update needed
[2026-06-27 03:04:34,279.279 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:04:34,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:04:34,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:04:34,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:04:36,326.326 INFO    ] ================================================
[2026-06-27 03:04:36,342.342 INFO    ] Launching Daemon at Sat Jun 27 03:04:36 IST 2026
[2026-06-27 03:04:36,352.352 INFO    ] ================================================
[2026-06-27 03:04:36,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:04:36
[2026-06-27 03:04:37,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:04:37,148.148 INFO    ] Initializing speech engine...
[2026-06-27 03:04:37,157.157 INFO    ] 2026-06-27 03:04:37
[2026-06-27 03:04:37,376.376 INFO    ] 2026-06-27 03:04:37
[2026-06-27 03:04:37,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:04:37,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:04:37,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:04:37,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:04:37,829.829 INFO    ] time= 27/06/2026 03:04:37
[2026-06-27 03:04:37,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:04:37,836.836 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:04:37,904.904 INFO    ] No existing commands found in stream
[2026-06-27 03:04:42,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:04:42,920.920 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-27 03:04:45,082.082 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 03:04:45,083.083 INFO    ] Checking for system updates...
[2026-06-27 03:04:45,104.104 INFO    ] 200
[2026-06-27 03:04:45,105.105 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:04:45,136.136 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:04:45,137.137 INFO    ] No update needed
[2026-06-27 03:04:45,139.139 INFO    ] Checking for camera pi updates...
[2026-06-27 03:04:45,158.158 INFO    ] 200
[2026-06-27 03:04:45,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:04:45,183.183 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:04:45,223.223 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:04:45,225.225 INFO    ] No camera update needed
[2026-06-27 03:04:45,226.226 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:04:45,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:04:45,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:04:45,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:04:47,273.273 INFO    ] ================================================
[2026-06-27 03:04:47,289.289 INFO    ] Launching Daemon at Sat Jun 27 03:04:47 IST 2026
[2026-06-27 03:04:47,301.301 INFO    ] ================================================
[2026-06-27 03:04:47,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:04:47
[2026-06-27 03:04:47,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:04:48,113.113 INFO    ] Initializing speech engine...
[2026-06-27 03:04:48,121.121 INFO    ] 2026-06-27 03:04:48
[2026-06-27 03:04:48,345.345 INFO    ] 2026-06-27 03:04:48
[2026-06-27 03:04:48,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:04:48,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:04:48,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:04:48,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:04:48,802.802 INFO    ] time= 27/06/2026 03:04:48
[2026-06-27 03:04:48,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:04:48,810.810 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:04:48,916.916 INFO    ] No existing commands found in stream
[2026-06-27 03:04:53,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:04:53,929.929 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-27 03:04:54,667.667 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 03:04:54,669.669 INFO    ] Checking for system updates...
[2026-06-27 03:04:54,690.690 INFO    ] 200
[2026-06-27 03:04:54,691.691 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:04:54,724.724 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:04:54,726.726 INFO    ] No update needed
[2026-06-27 03:04:54,727.727 INFO    ] Checking for camera pi updates...
[2026-06-27 03:04:54,747.747 INFO    ] 200
[2026-06-27 03:04:54,749.749 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:04:54,772.772 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:04:54,797.797 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:04:54,798.798 INFO    ] No camera update needed
[2026-06-27 03:04:54,799.799 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:04:54,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:04:54,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:04:54,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:04:56,846.846 INFO    ] ================================================
[2026-06-27 03:04:56,862.862 INFO    ] Launching Daemon at Sat Jun 27 03:04:56 IST 2026
[2026-06-27 03:04:56,873.873 INFO    ] ================================================
[2026-06-27 03:04:57,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:04:57
[2026-06-27 03:04:57,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:04:57,757.757 INFO    ] Initializing speech engine...
[2026-06-27 03:04:57,763.763 INFO    ] 2026-06-27 03:04:57
[2026-06-27 03:04:57,972.972 INFO    ] 2026-06-27 03:04:57
[2026-06-27 03:04:58,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:04:58,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:04:58,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:04:58,339.339 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:04:58,400.400 INFO    ] time= 27/06/2026 03:04:58
[2026-06-27 03:04:58,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:04:58,427.427 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:04:58,495.495 INFO    ] No existing commands found in stream
[2026-06-27 03:05:03,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:05:03,508.508 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-27 03:05:06,080.080 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 03:05:06,081.081 INFO    ] Checking for system updates...
[2026-06-27 03:05:06,102.102 INFO    ] 200
[2026-06-27 03:05:06,104.104 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:05:06,135.135 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:05:06,137.137 INFO    ] No update needed
[2026-06-27 03:05:06,138.138 INFO    ] Checking for camera pi updates...
[2026-06-27 03:05:06,158.158 INFO    ] 200
[2026-06-27 03:05:06,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:05:06,183.183 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:05:06,223.223 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:05:06,225.225 INFO    ] No camera update needed
[2026-06-27 03:05:06,226.226 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:05:06,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:05:06,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:05:06,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:05:08,275.275 INFO    ] ================================================
[2026-06-27 03:05:08,291.291 INFO    ] Launching Daemon at Sat Jun 27 03:05:08 IST 2026
[2026-06-27 03:05:08,303.303 INFO    ] ================================================
[2026-06-27 03:05:08,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:05:08
[2026-06-27 03:05:09,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:05:09,139.139 INFO    ] Initializing speech engine...
[2026-06-27 03:05:09,146.146 INFO    ] 2026-06-27 03:05:09
[2026-06-27 03:05:09,361.361 INFO    ] 2026-06-27 03:05:09
[2026-06-27 03:05:09,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:05:09,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:05:09,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:05:09,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:05:09,922.922 INFO    ] time= 27/06/2026 03:05:09
[2026-06-27 03:05:09,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:05:09,927.927 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:05:09,989.989 INFO    ] No existing commands found in stream
[2026-06-27 03:05:14,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:05:14,996.996 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-27 03:05:19,063.063 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 03:05:19,067.067 INFO    ] Checking for system updates...
[2026-06-27 03:05:19,101.101 INFO    ] 200
[2026-06-27 03:05:19,102.102 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:05:19,136.136 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:05:19,138.138 INFO    ] No update needed
[2026-06-27 03:05:19,139.139 INFO    ] Checking for camera pi updates...
[2026-06-27 03:05:19,161.161 INFO    ] 200
[2026-06-27 03:05:19,163.163 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:05:19,187.187 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:05:19,234.234 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:05:19,235.235 INFO    ] No camera update needed
[2026-06-27 03:05:19,237.237 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:05:19,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:05:19,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:05:19,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:05:21,288.288 INFO    ] ================================================
[2026-06-27 03:05:21,304.304 INFO    ] Launching Daemon at Sat Jun 27 03:05:21 IST 2026
[2026-06-27 03:05:21,315.315 INFO    ] ================================================
[2026-06-27 03:05:21,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:05:21
[2026-06-27 03:05:21,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:05:22,119.119 INFO    ] Initializing speech engine...
[2026-06-27 03:05:22,127.127 INFO    ] 2026-06-27 03:05:22
[2026-06-27 03:05:22,339.339 INFO    ] 2026-06-27 03:05:22
[2026-06-27 03:05:22,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:05:22,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:05:22,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:05:22,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:05:22,778.778 INFO    ] time= 27/06/2026 03:05:22
[2026-06-27 03:05:22,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:05:22,786.786 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:05:22,853.853 INFO    ] No existing commands found in stream
[2026-06-27 03:05:27,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:05:27,880.880 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-27 03:05:28,628.628 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:05:28,629.629 INFO    ] Checking for system updates...
[2026-06-27 03:05:28,650.650 INFO    ] 200
[2026-06-27 03:05:28,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:05:28,684.684 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:05:28,686.686 INFO    ] No update needed
[2026-06-27 03:05:28,687.687 INFO    ] Checking for camera pi updates...
[2026-06-27 03:05:28,707.707 INFO    ] 200
[2026-06-27 03:05:28,708.708 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:05:28,732.732 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:05:28,784.784 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:05:28,785.785 INFO    ] No camera update needed
[2026-06-27 03:05:28,786.786 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:05:28,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:05:28,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:05:28,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:05:30,834.834 INFO    ] ================================================
[2026-06-27 03:05:30,850.850 INFO    ] Launching Daemon at Sat Jun 27 03:05:30 IST 2026
[2026-06-27 03:05:30,861.861 INFO    ] ================================================
[2026-06-27 03:05:31,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:05:31
[2026-06-27 03:05:31,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:05:31,666.666 INFO    ] Initializing speech engine...
[2026-06-27 03:05:31,677.677 INFO    ] 2026-06-27 03:05:31
[2026-06-27 03:05:31,891.891 INFO    ] 2026-06-27 03:05:31
[2026-06-27 03:05:31,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:05:32,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:05:32,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:05:32,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:05:32,342.342 INFO    ] time= 27/06/2026 03:05:32
[2026-06-27 03:05:32,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:05:32,376.376 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:05:32,444.444 INFO    ] No existing commands found in stream
[2026-06-27 03:05:37,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:05:37,461.461 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-27 03:05:40,460.460 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:05:40,461.461 INFO    ] Checking for system updates...
[2026-06-27 03:05:40,483.483 INFO    ] 200
[2026-06-27 03:05:40,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:05:40,518.518 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:05:40,519.519 INFO    ] No update needed
[2026-06-27 03:05:40,520.520 INFO    ] Checking for camera pi updates...
[2026-06-27 03:05:40,540.540 INFO    ] 200
[2026-06-27 03:05:40,542.542 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:05:40,565.565 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:05:40,601.601 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:05:40,602.602 INFO    ] No camera update needed
[2026-06-27 03:05:40,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:05:40,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:05:40,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:05:40,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:05:42,650.650 INFO    ] ================================================
[2026-06-27 03:05:42,666.666 INFO    ] Launching Daemon at Sat Jun 27 03:05:42 IST 2026
[2026-06-27 03:05:42,676.676 INFO    ] ================================================
[2026-06-27 03:05:43,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:05:43
[2026-06-27 03:05:43,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:05:43,500.500 INFO    ] Initializing speech engine...
[2026-06-27 03:05:43,505.505 INFO    ] 2026-06-27 03:05:43
[2026-06-27 03:05:43,738.738 INFO    ] 2026-06-27 03:05:43
[2026-06-27 03:05:43,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:05:43,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:05:43,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:05:44,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:05:44,175.175 INFO    ] time= 27/06/2026 03:05:44
[2026-06-27 03:05:44,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:05:44,208.208 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:05:44,273.273 INFO    ] No existing commands found in stream
[2026-06-27 03:05:49,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:05:49,287.287 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-27 03:05:53,600.600 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 03:05:53,601.601 INFO    ] Checking for system updates...
[2026-06-27 03:05:53,622.622 INFO    ] 200
[2026-06-27 03:05:53,623.623 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:05:53,657.657 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:05:53,658.658 INFO    ] No update needed
[2026-06-27 03:05:53,659.659 INFO    ] Checking for camera pi updates...
[2026-06-27 03:05:53,678.678 INFO    ] 200
[2026-06-27 03:05:53,680.680 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:05:53,703.703 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:05:53,733.733 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:05:53,735.735 INFO    ] No camera update needed
[2026-06-27 03:05:53,736.736 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:05:53,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:05:53,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:05:53,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:05:55,781.781 INFO    ] ================================================
[2026-06-27 03:05:55,797.797 INFO    ] Launching Daemon at Sat Jun 27 03:05:55 IST 2026
[2026-06-27 03:05:55,807.807 INFO    ] ================================================
[2026-06-27 03:05:56,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:05:56
[2026-06-27 03:05:56,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:05:56,614.614 INFO    ] Initializing speech engine...
[2026-06-27 03:05:56,622.622 INFO    ] 2026-06-27 03:05:56
[2026-06-27 03:05:56,836.836 INFO    ] 2026-06-27 03:05:56
[2026-06-27 03:05:56,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:05:57,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:05:57,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:05:57,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:05:57,299.299 INFO    ] time= 27/06/2026 03:05:57
[2026-06-27 03:05:57,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:05:57,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:05:57,385.385 INFO    ] No existing commands found in stream
[2026-06-27 03:06:02,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:06:02,396.396 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-27 03:06:05,853.853 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 03:06:05,855.855 INFO    ] Checking for system updates...
[2026-06-27 03:06:05,880.880 INFO    ] 200
[2026-06-27 03:06:05,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:06:05,926.926 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:06:05,928.928 INFO    ] No update needed
[2026-06-27 03:06:05,930.930 INFO    ] Checking for camera pi updates...
[2026-06-27 03:06:05,950.950 INFO    ] 200
[2026-06-27 03:06:05,951.951 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:06:05,975.975 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:06:06,116.116 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:06:06,117.117 INFO    ] No camera update needed
[2026-06-27 03:06:06,118.118 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:06:06,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:06:06,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:06:06,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:06:08,168.168 INFO    ] ================================================
[2026-06-27 03:06:08,184.184 INFO    ] Launching Daemon at Sat Jun 27 03:06:08 IST 2026
[2026-06-27 03:06:08,195.195 INFO    ] ================================================
[2026-06-27 03:06:08,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:06:08
[2026-06-27 03:06:08,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:06:09,007.007 INFO    ] Initializing speech engine...
[2026-06-27 03:06:09,013.013 INFO    ] 2026-06-27 03:06:09
[2026-06-27 03:06:09,218.218 INFO    ] 2026-06-27 03:06:09
[2026-06-27 03:06:09,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:06:09,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:06:09,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:06:09,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:06:09,616.616 INFO    ] time= 27/06/2026 03:06:09
[2026-06-27 03:06:09,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:06:09,691.691 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:06:09,819.819 INFO    ] No existing commands found in stream
[2026-06-27 03:06:14,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:06:14,831.831 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-27 03:06:17,154.154 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:06:17,156.156 INFO    ] Checking for system updates...
[2026-06-27 03:06:17,177.177 INFO    ] 200
[2026-06-27 03:06:17,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:06:17,208.208 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:06:17,210.210 INFO    ] No update needed
[2026-06-27 03:06:17,211.211 INFO    ] Checking for camera pi updates...
[2026-06-27 03:06:17,230.230 INFO    ] 200
[2026-06-27 03:06:17,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:06:17,257.257 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:06:17,296.296 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:06:17,297.297 INFO    ] No camera update needed
[2026-06-27 03:06:17,299.299 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:06:17,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:06:17,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:06:17,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:06:19,346.346 INFO    ] ================================================
[2026-06-27 03:06:19,362.362 INFO    ] Launching Daemon at Sat Jun 27 03:06:19 IST 2026
[2026-06-27 03:06:19,373.373 INFO    ] ================================================
[2026-06-27 03:06:19,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:06:19
[2026-06-27 03:06:20,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:06:20,714.714 INFO    ] Initializing speech engine...
[2026-06-27 03:06:20,719.719 INFO    ] 2026-06-27 03:06:20
[2026-06-27 03:06:20,923.923 INFO    ] 2026-06-27 03:06:20
[2026-06-27 03:06:20,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:06:21,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:06:21,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:06:21,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:06:21,350.350 INFO    ] time= 27/06/2026 03:06:21
[2026-06-27 03:06:21,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:06:21,379.379 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:06:21,446.446 INFO    ] No existing commands found in stream
[2026-06-27 03:06:26,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:06:26,457.457 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-27 03:06:28,009.009 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 03:06:28,010.010 INFO    ] Checking for system updates...
[2026-06-27 03:06:28,031.031 INFO    ] 200
[2026-06-27 03:06:28,032.032 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:06:28,063.063 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:06:28,064.064 INFO    ] No update needed
[2026-06-27 03:06:28,066.066 INFO    ] Checking for camera pi updates...
[2026-06-27 03:06:28,086.086 INFO    ] 200
[2026-06-27 03:06:28,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:06:28,112.112 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:06:28,162.162 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:06:28,163.163 INFO    ] No camera update needed
[2026-06-27 03:06:28,165.165 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:06:28,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:06:28,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:06:28,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:06:30,219.219 INFO    ] ================================================
[2026-06-27 03:06:30,235.235 INFO    ] Launching Daemon at Sat Jun 27 03:06:30 IST 2026
[2026-06-27 03:06:30,246.246 INFO    ] ================================================
[2026-06-27 03:06:30,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:06:30
[2026-06-27 03:06:30,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:06:31,106.106 INFO    ] Initializing speech engine...
[2026-06-27 03:06:31,115.115 INFO    ] 2026-06-27 03:06:31
[2026-06-27 03:06:31,332.332 INFO    ] 2026-06-27 03:06:31
[2026-06-27 03:06:31,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:06:31,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:06:31,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:06:31,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:06:31,789.789 INFO    ] time= 27/06/2026 03:06:31
[2026-06-27 03:06:31,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:06:31,817.817 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:06:31,888.888 INFO    ] No existing commands found in stream
[2026-06-27 03:06:36,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:06:36,905.905 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-27 03:06:40,158.158 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 03:06:40,159.159 INFO    ] Checking for system updates...
[2026-06-27 03:06:40,181.181 INFO    ] 200
[2026-06-27 03:06:40,183.183 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:06:40,213.213 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:06:40,215.215 INFO    ] No update needed
[2026-06-27 03:06:40,219.219 INFO    ] Checking for camera pi updates...
[2026-06-27 03:06:40,240.240 INFO    ] 200
[2026-06-27 03:06:40,242.242 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:06:40,271.271 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:06:40,315.315 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:06:40,316.316 INFO    ] No camera update needed
[2026-06-27 03:06:40,317.317 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:06:40,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:06:40,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:06:40,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:06:42,364.364 INFO    ] ================================================
[2026-06-27 03:06:42,380.380 INFO    ] Launching Daemon at Sat Jun 27 03:06:42 IST 2026
[2026-06-27 03:06:42,390.390 INFO    ] ================================================
[2026-06-27 03:06:42,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:06:42
[2026-06-27 03:06:43,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:06:43,224.224 INFO    ] Initializing speech engine...
[2026-06-27 03:06:43,234.234 INFO    ] 2026-06-27 03:06:43
[2026-06-27 03:06:43,440.440 INFO    ] 2026-06-27 03:06:43
[2026-06-27 03:06:43,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:06:43,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:06:43,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:06:43,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:06:43,868.868 INFO    ] time= 27/06/2026 03:06:43
[2026-06-27 03:06:43,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:06:43,890.890 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:06:43,957.957 INFO    ] No existing commands found in stream
[2026-06-27 03:06:48,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:06:48,969.969 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-27 03:06:53,018.018 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 03:06:53,019.019 INFO    ] Checking for system updates...
[2026-06-27 03:06:53,042.042 INFO    ] 200
[2026-06-27 03:06:53,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:06:53,074.074 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:06:53,075.075 INFO    ] No update needed
[2026-06-27 03:06:53,077.077 INFO    ] Checking for camera pi updates...
[2026-06-27 03:06:53,098.098 INFO    ] 200
[2026-06-27 03:06:53,099.099 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:06:53,124.124 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:06:53,164.164 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:06:53,165.165 INFO    ] No camera update needed
[2026-06-27 03:06:53,167.167 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:06:53,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:06:53,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:06:53,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:06:55,212.212 INFO    ] ================================================
[2026-06-27 03:06:55,227.227 INFO    ] Launching Daemon at Sat Jun 27 03:06:55 IST 2026
[2026-06-27 03:06:55,238.238 INFO    ] ================================================
[2026-06-27 03:06:55,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:06:55
[2026-06-27 03:06:55,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:06:56,019.019 INFO    ] Initializing speech engine...
[2026-06-27 03:06:56,029.029 INFO    ] 2026-06-27 03:06:56
[2026-06-27 03:06:56,236.236 INFO    ] 2026-06-27 03:06:56
[2026-06-27 03:06:56,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:06:56,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:06:56,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:06:56,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:06:56,685.685 INFO    ] time= 27/06/2026 03:06:56
[2026-06-27 03:06:56,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:06:56,693.693 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:06:56,760.760 INFO    ] No existing commands found in stream
[2026-06-27 03:07:01,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:07:01,772.772 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-27 03:07:02,736.736 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 03:07:02,738.738 INFO    ] Checking for system updates...
[2026-06-27 03:07:02,772.772 INFO    ] 200
[2026-06-27 03:07:02,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:07:02,808.808 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:07:02,810.810 INFO    ] No update needed
[2026-06-27 03:07:02,811.811 INFO    ] Checking for camera pi updates...
[2026-06-27 03:07:02,845.845 INFO    ] 200
[2026-06-27 03:07:02,847.847 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:07:02,872.872 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:07:02,897.897 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:07:02,898.898 INFO    ] No camera update needed
[2026-06-27 03:07:02,899.899 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:07:02,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:07:02,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:07:02,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:07:04,945.945 INFO    ] ================================================
[2026-06-27 03:07:04,960.960 INFO    ] Launching Daemon at Sat Jun 27 03:07:04 IST 2026
[2026-06-27 03:07:04,971.971 INFO    ] ================================================
[2026-06-27 03:07:05,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:07:05
[2026-06-27 03:07:05,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:07:05,759.759 INFO    ] Initializing speech engine...
[2026-06-27 03:07:05,772.772 INFO    ] 2026-06-27 03:07:05
[2026-06-27 03:07:05,983.983 INFO    ] 2026-06-27 03:07:05
[2026-06-27 03:07:06,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:07:06,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:07:06,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:07:06,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:07:06,390.390 INFO    ] time= 27/06/2026 03:07:06
[2026-06-27 03:07:06,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:07:06,445.445 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:07:06,517.517 INFO    ] No existing commands found in stream
[2026-06-27 03:07:11,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:07:11,534.534 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-27 03:07:12,193.193 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 03:07:12,195.195 INFO    ] Checking for system updates...
[2026-06-27 03:07:12,217.217 INFO    ] 200
[2026-06-27 03:07:12,218.218 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:07:12,248.248 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:07:12,250.250 INFO    ] No update needed
[2026-06-27 03:07:12,251.251 INFO    ] Checking for camera pi updates...
[2026-06-27 03:07:12,270.270 INFO    ] 200
[2026-06-27 03:07:12,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:07:12,295.295 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:07:12,332.332 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:07:12,334.334 INFO    ] No camera update needed
[2026-06-27 03:07:12,335.335 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:07:12,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:07:12,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:07:12,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:07:14,382.382 INFO    ] ================================================
[2026-06-27 03:07:14,397.397 INFO    ] Launching Daemon at Sat Jun 27 03:07:14 IST 2026
[2026-06-27 03:07:14,408.408 INFO    ] ================================================
[2026-06-27 03:07:14,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:07:14
[2026-06-27 03:07:15,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:07:15,179.179 INFO    ] Initializing speech engine...
[2026-06-27 03:07:15,185.185 INFO    ] 2026-06-27 03:07:15
[2026-06-27 03:07:15,416.416 INFO    ] 2026-06-27 03:07:15
[2026-06-27 03:07:15,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:07:15,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:07:15,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:07:15,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:07:15,842.842 INFO    ] time= 27/06/2026 03:07:15
[2026-06-27 03:07:15,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:07:15,899.899 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:07:15,975.975 INFO    ] No existing commands found in stream
[2026-06-27 03:07:20,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:07:20,989.989 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-27 03:07:25,160.160 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 03:07:25,162.162 INFO    ] Checking for system updates...
[2026-06-27 03:07:25,183.183 INFO    ] 200
[2026-06-27 03:07:25,185.185 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:07:25,216.216 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:07:25,217.217 INFO    ] No update needed
[2026-06-27 03:07:25,218.218 INFO    ] Checking for camera pi updates...
[2026-06-27 03:07:25,238.238 INFO    ] 200
[2026-06-27 03:07:25,239.239 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:07:25,264.264 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:07:25,303.303 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:07:25,305.305 INFO    ] No camera update needed
[2026-06-27 03:07:25,306.306 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:07:25,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:07:25,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:07:25,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:07:27,352.352 INFO    ] ================================================
[2026-06-27 03:07:27,368.368 INFO    ] Launching Daemon at Sat Jun 27 03:07:27 IST 2026
[2026-06-27 03:07:27,379.379 INFO    ] ================================================
[2026-06-27 03:07:27,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:07:27
[2026-06-27 03:07:28,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:07:28,182.182 INFO    ] Initializing speech engine...
[2026-06-27 03:07:28,185.185 INFO    ] 2026-06-27 03:07:28
[2026-06-27 03:07:28,405.405 INFO    ] 2026-06-27 03:07:28
[2026-06-27 03:07:28,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:07:28,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:07:28,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:07:28,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:07:28,710.710 INFO    ] time= 27/06/2026 03:07:28
[2026-06-27 03:07:28,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:07:28,760.760 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:07:28,844.844 INFO    ] No existing commands found in stream
[2026-06-27 03:07:33,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:07:33,873.873 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-27 03:07:37,585.585 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:07:37,586.586 INFO    ] Checking for system updates...
[2026-06-27 03:07:37,607.607 INFO    ] 200
[2026-06-27 03:07:37,608.608 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:07:37,641.641 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:07:37,642.642 INFO    ] No update needed
[2026-06-27 03:07:37,644.644 INFO    ] Checking for camera pi updates...
[2026-06-27 03:07:37,665.665 INFO    ] 200
[2026-06-27 03:07:37,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:07:37,689.689 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:07:37,731.731 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:07:37,732.732 INFO    ] No camera update needed
[2026-06-27 03:07:37,734.734 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:07:37,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:07:37,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:07:37,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:07:39,779.779 INFO    ] ================================================
[2026-06-27 03:07:39,794.794 INFO    ] Launching Daemon at Sat Jun 27 03:07:39 IST 2026
[2026-06-27 03:07:39,805.805 INFO    ] ================================================
[2026-06-27 03:07:40,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:07:40
[2026-06-27 03:07:40,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:07:40,605.605 INFO    ] Initializing speech engine...
[2026-06-27 03:07:40,609.609 INFO    ] 2026-06-27 03:07:40
[2026-06-27 03:07:40,830.830 INFO    ] 2026-06-27 03:07:40
[2026-06-27 03:07:40,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:07:40,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:07:41,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:07:41,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:07:41,260.260 INFO    ] time= 27/06/2026 03:07:41
[2026-06-27 03:07:41,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:07:41,291.291 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:07:41,356.356 INFO    ] No existing commands found in stream
[2026-06-27 03:07:46,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:07:46,369.369 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-27 03:07:47,993.993 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 03:07:47,995.995 INFO    ] Checking for system updates...
[2026-06-27 03:07:48,017.017 INFO    ] 200
[2026-06-27 03:07:48,018.018 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:07:48,049.049 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:07:48,051.051 INFO    ] No update needed
[2026-06-27 03:07:48,052.052 INFO    ] Checking for camera pi updates...
[2026-06-27 03:07:48,072.072 INFO    ] 200
[2026-06-27 03:07:48,073.073 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:07:48,097.097 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:07:48,134.134 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:07:48,135.135 INFO    ] No camera update needed
[2026-06-27 03:07:48,136.136 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:07:48,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:07:48,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:07:48,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:07:50,181.181 INFO    ] ================================================
[2026-06-27 03:07:50,196.196 INFO    ] Launching Daemon at Sat Jun 27 03:07:50 IST 2026
[2026-06-27 03:07:50,206.206 INFO    ] ================================================
[2026-06-27 03:07:50,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:07:50
[2026-06-27 03:07:50,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:07:51,014.014 INFO    ] Initializing speech engine...
[2026-06-27 03:07:51,019.019 INFO    ] 2026-06-27 03:07:51
[2026-06-27 03:07:51,223.223 INFO    ] 2026-06-27 03:07:51
[2026-06-27 03:07:51,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:07:51,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:07:51,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:07:51,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:07:51,643.643 INFO    ] time= 27/06/2026 03:07:51
[2026-06-27 03:07:51,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:07:51,670.670 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:07:51,737.737 INFO    ] No existing commands found in stream
[2026-06-27 03:07:56,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:07:56,754.754 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-27 03:07:57,788.788 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:07:57,790.790 INFO    ] Checking for system updates...
[2026-06-27 03:07:57,812.812 INFO    ] 200
[2026-06-27 03:07:57,814.814 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:07:57,847.847 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:07:57,849.849 INFO    ] No update needed
[2026-06-27 03:07:57,850.850 INFO    ] Checking for camera pi updates...
[2026-06-27 03:07:57,870.870 INFO    ] 200
[2026-06-27 03:07:57,871.871 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:07:57,897.897 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:07:57,937.937 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:07:57,938.938 INFO    ] No camera update needed
[2026-06-27 03:07:57,939.939 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:07:57,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:07:57,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:07:57,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:07:59,985.985 INFO    ] ================================================
[2026-06-27 03:08:00,001.001 INFO    ] Launching Daemon at Sat Jun 27 03:07:59 IST 2026
[2026-06-27 03:08:00,012.012 INFO    ] ================================================
[2026-06-27 03:08:00,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:08:00
[2026-06-27 03:08:00,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:08:00,877.877 INFO    ] Initializing speech engine...
[2026-06-27 03:08:00,882.882 INFO    ] 2026-06-27 03:08:00
[2026-06-27 03:08:01,092.092 INFO    ] 2026-06-27 03:08:01
[2026-06-27 03:08:01,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:08:01,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:08:01,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:08:01,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:08:01,494.494 INFO    ] time= 27/06/2026 03:08:01
[2026-06-27 03:08:01,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:08:01,499.499 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:08:01,556.556 INFO    ] No existing commands found in stream
[2026-06-27 03:08:06,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:08:06,568.568 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-27 03:08:07,450.450 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:08:07,452.452 INFO    ] Checking for system updates...
[2026-06-27 03:08:07,474.474 INFO    ] 200
[2026-06-27 03:08:07,476.476 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:08:07,506.506 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:08:07,508.508 INFO    ] No update needed
[2026-06-27 03:08:07,509.509 INFO    ] Checking for camera pi updates...
[2026-06-27 03:08:07,530.530 INFO    ] 200
[2026-06-27 03:08:07,532.532 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:08:07,557.557 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:08:07,697.697 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:08:07,698.698 INFO    ] No camera update needed
[2026-06-27 03:08:07,700.700 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:08:07,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:08:07,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:08:07,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:08:09,739.739 INFO    ] ================================================
[2026-06-27 03:08:09,756.756 INFO    ] Launching Daemon at Sat Jun 27 03:08:09 IST 2026
[2026-06-27 03:08:09,766.766 INFO    ] ================================================
[2026-06-27 03:08:10,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:08:10
[2026-06-27 03:08:10,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:08:10,575.575 INFO    ] Initializing speech engine...
[2026-06-27 03:08:10,594.594 INFO    ] 2026-06-27 03:08:10
[2026-06-27 03:08:10,792.792 INFO    ] 2026-06-27 03:08:10
[2026-06-27 03:08:10,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:08:11,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:08:11,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:08:11,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:08:11,204.204 INFO    ] time= 27/06/2026 03:08:11
[2026-06-27 03:08:11,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:08:11,233.233 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:08:11,305.305 INFO    ] No existing commands found in stream
[2026-06-27 03:08:16,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:08:16,316.316 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-27 03:08:20,265.265 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:08:20,266.266 INFO    ] Checking for system updates...
[2026-06-27 03:08:20,287.287 INFO    ] 200
[2026-06-27 03:08:20,289.289 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:08:20,320.320 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:08:20,321.321 INFO    ] No update needed
[2026-06-27 03:08:20,322.322 INFO    ] Checking for camera pi updates...
[2026-06-27 03:08:20,342.342 INFO    ] 200
[2026-06-27 03:08:20,343.343 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:08:20,367.367 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:08:20,404.404 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:08:20,406.406 INFO    ] No camera update needed
[2026-06-27 03:08:20,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:08:20,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:08:20,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:08:20,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:08:22,455.455 INFO    ] ================================================
[2026-06-27 03:08:22,470.470 INFO    ] Launching Daemon at Sat Jun 27 03:08:22 IST 2026
[2026-06-27 03:08:22,481.481 INFO    ] ================================================
[2026-06-27 03:08:22,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:08:22
[2026-06-27 03:08:23,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:08:23,319.319 INFO    ] Initializing speech engine...
[2026-06-27 03:08:23,330.330 INFO    ] 2026-06-27 03:08:23
[2026-06-27 03:08:23,541.541 INFO    ] 2026-06-27 03:08:23
[2026-06-27 03:08:23,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:08:23,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:08:23,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:08:23,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:08:23,955.955 INFO    ] time= 27/06/2026 03:08:23
[2026-06-27 03:08:23,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:08:24,017.017 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:08:24,088.088 INFO    ] No existing commands found in stream
[2026-06-27 03:08:29,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:08:29,101.101 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-27 03:08:33,024.024 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 03:08:33,026.026 INFO    ] Checking for system updates...
[2026-06-27 03:08:33,048.048 INFO    ] 200
[2026-06-27 03:08:33,050.050 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:08:33,083.083 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:08:33,084.084 INFO    ] No update needed
[2026-06-27 03:08:33,086.086 INFO    ] Checking for camera pi updates...
[2026-06-27 03:08:33,105.105 INFO    ] 200
[2026-06-27 03:08:33,106.106 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:08:33,131.131 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:08:33,156.156 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:08:33,158.158 INFO    ] No camera update needed
[2026-06-27 03:08:33,159.159 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:08:33,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:08:33,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:08:33,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:08:35,206.206 INFO    ] ================================================
[2026-06-27 03:08:35,221.221 INFO    ] Launching Daemon at Sat Jun 27 03:08:35 IST 2026
[2026-06-27 03:08:35,231.231 INFO    ] ================================================
[2026-06-27 03:08:35,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:08:35
[2026-06-27 03:08:35,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:08:36,079.079 INFO    ] Initializing speech engine...
[2026-06-27 03:08:36,085.085 INFO    ] 2026-06-27 03:08:36
[2026-06-27 03:08:36,295.295 INFO    ] 2026-06-27 03:08:36
[2026-06-27 03:08:36,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:08:36,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:08:36,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:08:36,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:08:36,742.742 INFO    ] time= 27/06/2026 03:08:36
[2026-06-27 03:08:36,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:08:36,749.749 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:08:36,816.816 INFO    ] No existing commands found in stream
[2026-06-27 03:08:41,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:08:41,834.834 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-27 03:08:45,769.769 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:08:45,771.771 INFO    ] Checking for system updates...
[2026-06-27 03:08:45,792.792 INFO    ] 200
[2026-06-27 03:08:45,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:08:45,824.824 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:08:45,826.826 INFO    ] No update needed
[2026-06-27 03:08:45,827.827 INFO    ] Checking for camera pi updates...
[2026-06-27 03:08:45,849.849 INFO    ] 200
[2026-06-27 03:08:45,850.850 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:08:45,877.877 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:08:45,916.916 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:08:45,918.918 INFO    ] No camera update needed
[2026-06-27 03:08:45,919.919 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:08:45,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:08:45,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:08:45,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:08:47,966.966 INFO    ] ================================================
[2026-06-27 03:08:47,981.981 INFO    ] Launching Daemon at Sat Jun 27 03:08:47 IST 2026
[2026-06-27 03:08:47,992.992 INFO    ] ================================================
[2026-06-27 03:08:48,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:08:48
[2026-06-27 03:08:48,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:08:48,804.804 INFO    ] Initializing speech engine...
[2026-06-27 03:08:48,810.810 INFO    ] 2026-06-27 03:08:48
[2026-06-27 03:08:49,016.016 INFO    ] 2026-06-27 03:08:48
[2026-06-27 03:08:49,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:08:49,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:08:49,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:08:49,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:08:49,470.470 INFO    ] time= 27/06/2026 03:08:49
[2026-06-27 03:08:49,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:08:49,478.478 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:08:49,549.549 INFO    ] No existing commands found in stream
[2026-06-27 03:08:54,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:08:54,563.563 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-27 03:08:58,204.204 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 03:08:58,206.206 INFO    ] Checking for system updates...
[2026-06-27 03:08:58,227.227 INFO    ] 200
[2026-06-27 03:08:58,228.228 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:08:58,260.260 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:08:58,261.261 INFO    ] No update needed
[2026-06-27 03:08:58,262.262 INFO    ] Checking for camera pi updates...
[2026-06-27 03:08:58,284.284 INFO    ] 200
[2026-06-27 03:08:58,286.286 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:08:58,312.312 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:08:58,350.350 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:08:58,351.351 INFO    ] No camera update needed
[2026-06-27 03:08:58,353.353 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:08:58,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:08:58,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:08:58,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:09:00,401.401 INFO    ] ================================================
[2026-06-27 03:09:00,416.416 INFO    ] Launching Daemon at Sat Jun 27 03:09:00 IST 2026
[2026-06-27 03:09:00,427.427 INFO    ] ================================================
[2026-06-27 03:09:00,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:09:00
[2026-06-27 03:09:01,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:09:01,219.219 INFO    ] Initializing speech engine...
[2026-06-27 03:09:01,223.223 INFO    ] 2026-06-27 03:09:01
[2026-06-27 03:09:01,440.440 INFO    ] 2026-06-27 03:09:01
[2026-06-27 03:09:01,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:09:01,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:09:01,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:09:01,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:09:01,809.809 INFO    ] time= 27/06/2026 03:09:01
[2026-06-27 03:09:01,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:09:01,817.817 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:09:01,873.873 INFO    ] No existing commands found in stream
[2026-06-27 03:09:06,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:09:06,886.886 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-27 03:09:09,046.046 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 03:09:09,047.047 INFO    ] Checking for system updates...
[2026-06-27 03:09:09,068.068 INFO    ] 200
[2026-06-27 03:09:09,069.069 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:09:09,100.100 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:09:09,101.101 INFO    ] No update needed
[2026-06-27 03:09:09,102.102 INFO    ] Checking for camera pi updates...
[2026-06-27 03:09:09,124.124 INFO    ] 200
[2026-06-27 03:09:09,126.126 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:09:09,150.150 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:09:09,189.189 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:09:09,190.190 INFO    ] No camera update needed
[2026-06-27 03:09:09,191.191 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:09:09,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:09:09,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:09:09,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:09:11,237.237 INFO    ] ================================================
[2026-06-27 03:09:11,253.253 INFO    ] Launching Daemon at Sat Jun 27 03:09:11 IST 2026
[2026-06-27 03:09:11,264.264 INFO    ] ================================================
[2026-06-27 03:09:11,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:09:11
[2026-06-27 03:09:11,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:09:12,106.106 INFO    ] Initializing speech engine...
[2026-06-27 03:09:12,111.111 INFO    ] 2026-06-27 03:09:12
[2026-06-27 03:09:12,323.323 INFO    ] 2026-06-27 03:09:12
[2026-06-27 03:09:12,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:09:12,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:09:12,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:09:12,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:09:12,769.769 INFO    ] time= 27/06/2026 03:09:12
[2026-06-27 03:09:12,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:09:12,777.777 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:09:12,844.844 INFO    ] No existing commands found in stream
[2026-06-27 03:09:17,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:09:17,858.858 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-27 03:09:22,231.231 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:09:22,233.233 INFO    ] Checking for system updates...
[2026-06-27 03:09:22,254.254 INFO    ] 200
[2026-06-27 03:09:22,256.256 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:09:22,287.287 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:09:22,288.288 INFO    ] No update needed
[2026-06-27 03:09:22,289.289 INFO    ] Checking for camera pi updates...
[2026-06-27 03:09:22,309.309 INFO    ] 200
[2026-06-27 03:09:22,311.311 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:09:22,334.334 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:09:22,380.380 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:09:22,382.382 INFO    ] No camera update needed
[2026-06-27 03:09:22,383.383 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:09:22,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:09:22,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:09:22,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:09:24,430.430 INFO    ] ================================================
[2026-06-27 03:09:24,446.446 INFO    ] Launching Daemon at Sat Jun 27 03:09:24 IST 2026
[2026-06-27 03:09:24,458.458 INFO    ] ================================================
[2026-06-27 03:09:24,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:09:24
[2026-06-27 03:09:25,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:09:25,338.338 INFO    ] Initializing speech engine...
[2026-06-27 03:09:25,348.348 INFO    ] 2026-06-27 03:09:25
[2026-06-27 03:09:25,558.558 INFO    ] 2026-06-27 03:09:25
[2026-06-27 03:09:25,588.588 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:09:25,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:09:25,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:09:25,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:09:26,006.006 INFO    ] time= 27/06/2026 03:09:25
[2026-06-27 03:09:26,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:09:26,013.013 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:09:26,081.081 INFO    ] No existing commands found in stream
[2026-06-27 03:09:31,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:09:31,099.099 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-27 03:09:34,696.696 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 03:09:34,697.697 INFO    ] Checking for system updates...
[2026-06-27 03:09:34,718.718 INFO    ] 200
[2026-06-27 03:09:34,720.720 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:09:34,750.750 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:09:34,751.751 INFO    ] No update needed
[2026-06-27 03:09:34,753.753 INFO    ] Checking for camera pi updates...
[2026-06-27 03:09:34,774.774 INFO    ] 200
[2026-06-27 03:09:34,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:09:34,799.799 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:09:34,821.821 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:09:34,822.822 INFO    ] No camera update needed
[2026-06-27 03:09:34,824.824 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:09:34,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:09:34,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:09:34,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:09:36,872.872 INFO    ] ================================================
[2026-06-27 03:09:36,887.887 INFO    ] Launching Daemon at Sat Jun 27 03:09:36 IST 2026
[2026-06-27 03:09:36,899.899 INFO    ] ================================================
[2026-06-27 03:09:37,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:09:37
[2026-06-27 03:09:37,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:09:37,700.700 INFO    ] Initializing speech engine...
[2026-06-27 03:09:37,705.705 INFO    ] 2026-06-27 03:09:37
[2026-06-27 03:09:37,910.910 INFO    ] 2026-06-27 03:09:37
[2026-06-27 03:09:37,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:09:38,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:09:38,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:09:38,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:09:38,354.354 INFO    ] time= 27/06/2026 03:09:38
[2026-06-27 03:09:38,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:09:38,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:09:38,428.428 INFO    ] No existing commands found in stream
[2026-06-27 03:09:43,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:09:43,450.450 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-27 03:09:44,627.627 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 03:09:44,629.629 INFO    ] Checking for system updates...
[2026-06-27 03:09:44,650.650 INFO    ] 200
[2026-06-27 03:09:44,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:09:44,684.684 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:09:44,686.686 INFO    ] No update needed
[2026-06-27 03:09:44,687.687 INFO    ] Checking for camera pi updates...
[2026-06-27 03:09:44,707.707 INFO    ] 200
[2026-06-27 03:09:44,708.708 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:09:44,737.737 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:09:44,773.773 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:09:44,775.775 INFO    ] No camera update needed
[2026-06-27 03:09:44,777.777 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:09:44,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:09:44,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:09:44,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:09:46,817.817 INFO    ] ================================================
[2026-06-27 03:09:46,826.826 INFO    ] Launching Daemon at Sat Jun 27 03:09:46 IST 2026
[2026-06-27 03:09:46,832.832 INFO    ] ================================================
[2026-06-27 03:09:47,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:09:47
[2026-06-27 03:09:47,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:09:47,683.683 INFO    ] Initializing speech engine...
[2026-06-27 03:09:47,688.688 INFO    ] 2026-06-27 03:09:47
[2026-06-27 03:09:47,902.902 INFO    ] 2026-06-27 03:09:47
[2026-06-27 03:09:47,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:09:48,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:09:48,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:09:48,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:09:48,342.342 INFO    ] time= 27/06/2026 03:09:48
[2026-06-27 03:09:48,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:09:48,371.371 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:09:48,439.439 INFO    ] No existing commands found in stream
[2026-06-27 03:09:53,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:09:53,449.449 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-27 03:09:54,603.603 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 03:09:54,605.605 INFO    ] Checking for system updates...
[2026-06-27 03:09:54,625.625 INFO    ] 200
[2026-06-27 03:09:54,627.627 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:09:54,657.657 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:09:54,658.658 INFO    ] No update needed
[2026-06-27 03:09:54,659.659 INFO    ] Checking for camera pi updates...
[2026-06-27 03:09:54,681.681 INFO    ] 200
[2026-06-27 03:09:54,682.682 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:09:54,706.706 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:09:54,728.728 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:09:54,729.729 INFO    ] No camera update needed
[2026-06-27 03:09:54,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:09:54,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:09:54,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:09:54,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:09:56,777.777 INFO    ] ================================================
[2026-06-27 03:09:56,793.793 INFO    ] Launching Daemon at Sat Jun 27 03:09:56 IST 2026
[2026-06-27 03:09:56,804.804 INFO    ] ================================================
[2026-06-27 03:09:57,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:09:57
[2026-06-27 03:09:57,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:09:57,603.603 INFO    ] Initializing speech engine...
[2026-06-27 03:09:57,615.615 INFO    ] 2026-06-27 03:09:57
[2026-06-27 03:09:57,825.825 INFO    ] 2026-06-27 03:09:57
[2026-06-27 03:09:57,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:09:57,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:09:58,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:09:58,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:09:58,247.247 INFO    ] time= 27/06/2026 03:09:58
[2026-06-27 03:09:58,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:09:58,283.283 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:09:58,375.375 INFO    ] No existing commands found in stream
[2026-06-27 03:10:03,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:10:03,387.387 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-27 03:10:09,117.117 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 03:10:09,119.119 INFO    ] Checking for system updates...
[2026-06-27 03:10:09,140.140 INFO    ] 200
[2026-06-27 03:10:09,141.141 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:10:09,174.174 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:10:09,176.176 INFO    ] No update needed
[2026-06-27 03:10:09,177.177 INFO    ] Checking for camera pi updates...
[2026-06-27 03:10:09,196.196 INFO    ] 200
[2026-06-27 03:10:09,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:10:09,221.221 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:10:09,362.362 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:10:09,364.364 INFO    ] No camera update needed
[2026-06-27 03:10:09,365.365 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:10:09,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:10:09,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:10:09,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:10:11,413.413 INFO    ] ================================================
[2026-06-27 03:10:11,429.429 INFO    ] Launching Daemon at Sat Jun 27 03:10:11 IST 2026
[2026-06-27 03:10:11,440.440 INFO    ] ================================================
[2026-06-27 03:10:11,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:10:11
[2026-06-27 03:10:12,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:10:12,242.242 INFO    ] Initializing speech engine...
[2026-06-27 03:10:12,246.246 INFO    ] 2026-06-27 03:10:12
[2026-06-27 03:10:12,439.439 INFO    ] 2026-06-27 03:10:12
[2026-06-27 03:10:12,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:10:12,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:10:12,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:10:12,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:10:12,902.902 INFO    ] time= 27/06/2026 03:10:12
[2026-06-27 03:10:12,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:10:12,965.965 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:10:13,042.042 INFO    ] No existing commands found in stream
[2026-06-27 03:10:18,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:10:18,056.056 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-27 03:10:21,405.405 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 03:10:21,406.406 INFO    ] Checking for system updates...
[2026-06-27 03:10:21,427.427 INFO    ] 200
[2026-06-27 03:10:21,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:10:21,467.467 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:10:21,469.469 INFO    ] No update needed
[2026-06-27 03:10:21,470.470 INFO    ] Checking for camera pi updates...
[2026-06-27 03:10:21,490.490 INFO    ] 200
[2026-06-27 03:10:21,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:10:21,515.515 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:10:21,558.558 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:10:21,560.560 INFO    ] No camera update needed
[2026-06-27 03:10:21,561.561 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:10:21,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:10:21,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:10:21,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:10:23,606.606 INFO    ] ================================================
[2026-06-27 03:10:23,622.622 INFO    ] Launching Daemon at Sat Jun 27 03:10:23 IST 2026
[2026-06-27 03:10:23,634.634 INFO    ] ================================================
[2026-06-27 03:10:24,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:10:24
[2026-06-27 03:10:24,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:10:24,518.518 INFO    ] Initializing speech engine...
[2026-06-27 03:10:24,525.525 INFO    ] 2026-06-27 03:10:24
[2026-06-27 03:10:24,733.733 INFO    ] 2026-06-27 03:10:24
[2026-06-27 03:10:24,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:10:24,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:10:24,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:10:25,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:10:25,176.176 INFO    ] time= 27/06/2026 03:10:25
[2026-06-27 03:10:25,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:10:25,185.185 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:10:25,253.253 INFO    ] No existing commands found in stream
[2026-06-27 03:10:30,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:10:30,270.270 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-27 03:10:30,649.649 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 03:10:30,651.651 INFO    ] Checking for system updates...
[2026-06-27 03:10:30,671.671 INFO    ] 200
[2026-06-27 03:10:30,673.673 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:10:30,706.706 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:10:30,707.707 INFO    ] No update needed
[2026-06-27 03:10:30,709.709 INFO    ] Checking for camera pi updates...
[2026-06-27 03:10:30,728.728 INFO    ] 200
[2026-06-27 03:10:30,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:10:30,757.757 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:10:30,792.792 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:10:30,794.794 INFO    ] No camera update needed
[2026-06-27 03:10:30,795.795 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:10:30,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:10:30,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:10:30,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:10:32,831.831 INFO    ] ================================================
[2026-06-27 03:10:32,847.847 INFO    ] Launching Daemon at Sat Jun 27 03:10:32 IST 2026
[2026-06-27 03:10:32,857.857 INFO    ] ================================================
[2026-06-27 03:10:33,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:10:33
[2026-06-27 03:10:33,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:10:33,723.723 INFO    ] Initializing speech engine...
[2026-06-27 03:10:33,726.726 INFO    ] 2026-06-27 03:10:33
[2026-06-27 03:10:33,930.930 INFO    ] 2026-06-27 03:10:33
[2026-06-27 03:10:33,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:10:34,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:10:34,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:10:34,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:10:34,351.351 INFO    ] time= 27/06/2026 03:10:34
[2026-06-27 03:10:34,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:10:34,380.380 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:10:34,448.448 INFO    ] No existing commands found in stream
[2026-06-27 03:10:39,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:10:39,459.459 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-27 03:10:43,838.838 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:10:43,839.839 INFO    ] Checking for system updates...
[2026-06-27 03:10:43,861.861 INFO    ] 200
[2026-06-27 03:10:43,863.863 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:10:43,894.894 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:10:43,896.896 INFO    ] No update needed
[2026-06-27 03:10:43,897.897 INFO    ] Checking for camera pi updates...
[2026-06-27 03:10:43,917.917 INFO    ] 200
[2026-06-27 03:10:43,918.918 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:10:43,941.941 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:10:43,987.987 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:10:43,988.988 INFO    ] No camera update needed
[2026-06-27 03:10:43,989.989 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:10:43,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:10:43,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:10:43,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:10:46,036.036 INFO    ] ================================================
[2026-06-27 03:10:46,052.052 INFO    ] Launching Daemon at Sat Jun 27 03:10:46 IST 2026
[2026-06-27 03:10:46,063.063 INFO    ] ================================================
[2026-06-27 03:10:46,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:10:46
[2026-06-27 03:10:46,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:10:46,840.840 INFO    ] Initializing speech engine...
[2026-06-27 03:10:46,845.845 INFO    ] 2026-06-27 03:10:46
[2026-06-27 03:10:47,075.075 INFO    ] 2026-06-27 03:10:47
[2026-06-27 03:10:47,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:10:47,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:10:47,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:10:47,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:10:47,508.508 INFO    ] time= 27/06/2026 03:10:47
[2026-06-27 03:10:47,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:10:47,561.561 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:10:47,665.665 INFO    ] No existing commands found in stream
[2026-06-27 03:10:52,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:10:52,677.677 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-27 03:10:56,448.448 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 03:10:56,450.450 INFO    ] Checking for system updates...
[2026-06-27 03:10:56,470.470 INFO    ] 200
[2026-06-27 03:10:56,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:10:56,502.502 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:10:56,504.504 INFO    ] No update needed
[2026-06-27 03:10:56,505.505 INFO    ] Checking for camera pi updates...
[2026-06-27 03:10:56,524.524 INFO    ] 200
[2026-06-27 03:10:56,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:10:56,549.549 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:10:56,589.589 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:10:56,591.591 INFO    ] No camera update needed
[2026-06-27 03:10:56,592.592 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:10:56,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:10:56,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:10:56,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:10:58,640.640 INFO    ] ================================================
[2026-06-27 03:10:58,655.655 INFO    ] Launching Daemon at Sat Jun 27 03:10:58 IST 2026
[2026-06-27 03:10:58,667.667 INFO    ] ================================================
[2026-06-27 03:10:58,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:10:58
[2026-06-27 03:10:59,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:10:59,443.443 INFO    ] Initializing speech engine...
[2026-06-27 03:10:59,447.447 INFO    ] 2026-06-27 03:10:59
[2026-06-27 03:10:59,666.666 INFO    ] 2026-06-27 03:10:59
[2026-06-27 03:10:59,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:10:59,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:10:59,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:11:00,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:11:00,096.096 INFO    ] time= 27/06/2026 03:11:00
[2026-06-27 03:11:00,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:11:00,125.125 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:11:00,195.195 INFO    ] No existing commands found in stream
[2026-06-27 03:11:05,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:11:05,207.207 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-27 03:11:06,026.026 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 03:11:06,028.028 INFO    ] Checking for system updates...
[2026-06-27 03:11:06,050.050 INFO    ] 200
[2026-06-27 03:11:06,051.051 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:11:06,084.084 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:11:06,085.085 INFO    ] No update needed
[2026-06-27 03:11:06,087.087 INFO    ] Checking for camera pi updates...
[2026-06-27 03:11:06,107.107 INFO    ] 200
[2026-06-27 03:11:06,109.109 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:11:06,132.132 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:11:06,174.174 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:11:06,175.175 INFO    ] No camera update needed
[2026-06-27 03:11:06,177.177 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:11:06,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:11:06,181.181 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:11:06,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:11:08,223.223 INFO    ] ================================================
[2026-06-27 03:11:08,238.238 INFO    ] Launching Daemon at Sat Jun 27 03:11:08 IST 2026
[2026-06-27 03:11:08,250.250 INFO    ] ================================================
[2026-06-27 03:11:08,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:11:08
[2026-06-27 03:11:08,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:11:09,071.071 INFO    ] Initializing speech engine...
[2026-06-27 03:11:09,077.077 INFO    ] 2026-06-27 03:11:09
[2026-06-27 03:11:09,281.281 INFO    ] 2026-06-27 03:11:09
[2026-06-27 03:11:09,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:11:09,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:11:09,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:11:09,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:11:09,702.702 INFO    ] time= 27/06/2026 03:11:09
[2026-06-27 03:11:09,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:11:09,732.732 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:11:09,800.800 INFO    ] No existing commands found in stream
[2026-06-27 03:11:14,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:11:14,836.836 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-27 03:11:17,759.759 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 03:11:17,760.760 INFO    ] Checking for system updates...
[2026-06-27 03:11:17,781.781 INFO    ] 200
[2026-06-27 03:11:17,783.783 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:11:17,815.815 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:11:17,817.817 INFO    ] No update needed
[2026-06-27 03:11:17,819.819 INFO    ] Checking for camera pi updates...
[2026-06-27 03:11:17,838.838 INFO    ] 200
[2026-06-27 03:11:17,840.840 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:11:17,863.863 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:11:17,904.904 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:11:17,905.905 INFO    ] No camera update needed
[2026-06-27 03:11:17,907.907 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:11:17,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:11:17,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:11:17,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:11:19,954.954 INFO    ] ================================================
[2026-06-27 03:11:19,970.970 INFO    ] Launching Daemon at Sat Jun 27 03:11:19 IST 2026
[2026-06-27 03:11:19,982.982 INFO    ] ================================================
[2026-06-27 03:11:20,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:11:20
[2026-06-27 03:11:20,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:11:20,800.800 INFO    ] Initializing speech engine...
[2026-06-27 03:11:20,808.808 INFO    ] 2026-06-27 03:11:20
[2026-06-27 03:11:20,993.993 INFO    ] 2026-06-27 03:11:20
[2026-06-27 03:11:21,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:11:21,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:11:21,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:11:21,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:11:21,471.471 INFO    ] time= 27/06/2026 03:11:21
[2026-06-27 03:11:21,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:11:21,508.508 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:11:21,580.580 INFO    ] No existing commands found in stream
[2026-06-27 03:11:26,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:11:26,591.591 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-27 03:11:30,405.405 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 03:11:30,406.406 INFO    ] Checking for system updates...
[2026-06-27 03:11:30,427.427 INFO    ] 200
[2026-06-27 03:11:30,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:11:30,458.458 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:11:30,460.460 INFO    ] No update needed
[2026-06-27 03:11:30,461.461 INFO    ] Checking for camera pi updates...
[2026-06-27 03:11:30,481.481 INFO    ] 200
[2026-06-27 03:11:30,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:11:30,506.506 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:11:30,544.544 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:11:30,546.546 INFO    ] No camera update needed
[2026-06-27 03:11:30,547.547 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:11:30,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:11:30,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:11:30,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:11:32,584.584 INFO    ] ================================================
[2026-06-27 03:11:32,593.593 INFO    ] Launching Daemon at Sat Jun 27 03:11:32 IST 2026
[2026-06-27 03:11:32,599.599 INFO    ] ================================================
[2026-06-27 03:11:32,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:11:32
[2026-06-27 03:11:33,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:11:33,425.425 INFO    ] Initializing speech engine...
[2026-06-27 03:11:33,430.430 INFO    ] 2026-06-27 03:11:33
[2026-06-27 03:11:33,642.642 INFO    ] 2026-06-27 03:11:33
[2026-06-27 03:11:33,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:11:33,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:11:33,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:11:34,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:11:34,083.083 INFO    ] time= 27/06/2026 03:11:34
[2026-06-27 03:11:34,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:11:34,091.091 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:11:34,156.156 INFO    ] No existing commands found in stream
[2026-06-27 03:11:39,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:11:39,170.170 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-27 03:11:40,938.938 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:11:40,940.940 INFO    ] Checking for system updates...
[2026-06-27 03:11:40,962.962 INFO    ] 200
[2026-06-27 03:11:40,964.964 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:11:40,997.997 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:11:40,998.998 INFO    ] No update needed
[2026-06-27 03:11:40,999.999 INFO    ] Checking for camera pi updates...
[2026-06-27 03:11:41,019.019 INFO    ] 200
[2026-06-27 03:11:41,020.020 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:11:41,043.043 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:11:41,089.089 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:11:41,090.090 INFO    ] No camera update needed
[2026-06-27 03:11:41,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:11:41,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:11:41,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:11:41,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:11:43,138.138 INFO    ] ================================================
[2026-06-27 03:11:43,154.154 INFO    ] Launching Daemon at Sat Jun 27 03:11:43 IST 2026
[2026-06-27 03:11:43,165.165 INFO    ] ================================================
[2026-06-27 03:11:43,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:11:43
[2026-06-27 03:11:43,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:11:44,049.049 INFO    ] Initializing speech engine...
[2026-06-27 03:11:44,055.055 INFO    ] 2026-06-27 03:11:44
[2026-06-27 03:11:44,263.263 INFO    ] 2026-06-27 03:11:44
[2026-06-27 03:11:44,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:11:44,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:11:44,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:11:44,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:11:44,706.706 INFO    ] time= 27/06/2026 03:11:44
[2026-06-27 03:11:44,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:11:44,717.717 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:11:44,785.785 INFO    ] No existing commands found in stream
[2026-06-27 03:11:49,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:11:49,802.802 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-27 03:11:52,131.131 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 03:11:52,133.133 INFO    ] Checking for system updates...
[2026-06-27 03:11:52,156.156 INFO    ] 200
[2026-06-27 03:11:52,157.157 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:11:52,190.190 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:11:52,191.191 INFO    ] No update needed
[2026-06-27 03:11:52,192.192 INFO    ] Checking for camera pi updates...
[2026-06-27 03:11:52,212.212 INFO    ] 200
[2026-06-27 03:11:52,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:11:52,237.237 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:11:52,273.273 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:11:52,275.275 INFO    ] No camera update needed
[2026-06-27 03:11:52,276.276 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:11:52,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:11:52,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:11:52,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:11:54,322.322 INFO    ] ================================================
[2026-06-27 03:11:54,338.338 INFO    ] Launching Daemon at Sat Jun 27 03:11:54 IST 2026
[2026-06-27 03:11:54,349.349 INFO    ] ================================================
[2026-06-27 03:11:54,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:11:54
[2026-06-27 03:11:55,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:11:55,173.173 INFO    ] Initializing speech engine...
[2026-06-27 03:11:55,186.186 INFO    ] 2026-06-27 03:11:55
[2026-06-27 03:11:55,399.399 INFO    ] 2026-06-27 03:11:55
[2026-06-27 03:11:55,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:11:55,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:11:55,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:11:55,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:11:55,820.820 INFO    ] time= 27/06/2026 03:11:55
[2026-06-27 03:11:55,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:11:55,850.850 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:11:55,917.917 INFO    ] No existing commands found in stream
[2026-06-27 03:12:00,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:12:00,935.935 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-27 03:12:05,048.048 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 03:12:05,049.049 INFO    ] Checking for system updates...
[2026-06-27 03:12:05,070.070 INFO    ] 200
[2026-06-27 03:12:05,072.072 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:12:05,104.104 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:12:05,106.106 INFO    ] No update needed
[2026-06-27 03:12:05,107.107 INFO    ] Checking for camera pi updates...
[2026-06-27 03:12:05,127.127 INFO    ] 200
[2026-06-27 03:12:05,129.129 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:12:05,156.156 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:12:05,193.193 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:12:05,195.195 INFO    ] No camera update needed
[2026-06-27 03:12:05,196.196 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:12:05,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:12:05,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:12:05,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:12:07,244.244 INFO    ] ================================================
[2026-06-27 03:12:07,260.260 INFO    ] Launching Daemon at Sat Jun 27 03:12:07 IST 2026
[2026-06-27 03:12:07,272.272 INFO    ] ================================================
[2026-06-27 03:12:07,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:12:07
[2026-06-27 03:12:07,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:12:08,069.069 INFO    ] Initializing speech engine...
[2026-06-27 03:12:08,079.079 INFO    ] 2026-06-27 03:12:08
[2026-06-27 03:12:08,282.282 INFO    ] 2026-06-27 03:12:08
[2026-06-27 03:12:08,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:12:08,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:12:08,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:12:08,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:12:08,702.702 INFO    ] time= 27/06/2026 03:12:08
[2026-06-27 03:12:08,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:12:08,731.731 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:12:08,798.798 INFO    ] No existing commands found in stream
[2026-06-27 03:12:13,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:12:13,820.820 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-27 03:12:16,350.350 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 03:12:16,351.351 INFO    ] Checking for system updates...
[2026-06-27 03:12:16,372.372 INFO    ] 200
[2026-06-27 03:12:16,373.373 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:12:16,404.404 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:12:16,406.406 INFO    ] No update needed
[2026-06-27 03:12:16,407.407 INFO    ] Checking for camera pi updates...
[2026-06-27 03:12:16,428.428 INFO    ] 200
[2026-06-27 03:12:16,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:12:16,454.454 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:12:16,584.584 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:12:16,585.585 INFO    ] No camera update needed
[2026-06-27 03:12:16,586.586 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:12:16,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:12:16,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:12:16,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:12:18,633.633 INFO    ] ================================================
[2026-06-27 03:12:18,649.649 INFO    ] Launching Daemon at Sat Jun 27 03:12:18 IST 2026
[2026-06-27 03:12:18,661.661 INFO    ] ================================================
[2026-06-27 03:12:19,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:12:19
[2026-06-27 03:12:19,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:12:19,488.488 INFO    ] Initializing speech engine...
[2026-06-27 03:12:19,495.495 INFO    ] 2026-06-27 03:12:19
[2026-06-27 03:12:19,709.709 INFO    ] 2026-06-27 03:12:19
[2026-06-27 03:12:19,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:12:19,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:12:19,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:12:20,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:12:20,135.135 INFO    ] time= 27/06/2026 03:12:20
[2026-06-27 03:12:20,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:12:20,164.164 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:12:20,231.231 INFO    ] No existing commands found in stream
[2026-06-27 03:12:25,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:12:25,243.243 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-27 03:12:27,340.340 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 03:12:27,342.342 INFO    ] Checking for system updates...
[2026-06-27 03:12:27,362.362 INFO    ] 200
[2026-06-27 03:12:27,364.364 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:12:27,394.394 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:12:27,395.395 INFO    ] No update needed
[2026-06-27 03:12:27,396.396 INFO    ] Checking for camera pi updates...
[2026-06-27 03:12:27,417.417 INFO    ] 200
[2026-06-27 03:12:27,419.419 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:12:27,443.443 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:12:27,485.485 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:12:27,486.486 INFO    ] No camera update needed
[2026-06-27 03:12:27,487.487 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:12:27,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:12:27,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:12:27,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:12:29,535.535 INFO    ] ================================================
[2026-06-27 03:12:29,551.551 INFO    ] Launching Daemon at Sat Jun 27 03:12:29 IST 2026
[2026-06-27 03:12:29,563.563 INFO    ] ================================================
[2026-06-27 03:12:29,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:12:29
[2026-06-27 03:12:30,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:12:30,431.431 INFO    ] Initializing speech engine...
[2026-06-27 03:12:30,435.435 INFO    ] 2026-06-27 03:12:30
[2026-06-27 03:12:30,642.642 INFO    ] 2026-06-27 03:12:30
[2026-06-27 03:12:30,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:12:30,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:12:30,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:12:31,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:12:31,089.089 INFO    ] time= 27/06/2026 03:12:31
[2026-06-27 03:12:31,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:12:31,096.096 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:12:31,164.164 INFO    ] No existing commands found in stream
[2026-06-27 03:12:36,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:12:36,176.176 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-27 03:12:36,953.953 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:12:36,955.955 INFO    ] Checking for system updates...
[2026-06-27 03:12:36,977.977 INFO    ] 200
[2026-06-27 03:12:36,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:12:37,014.014 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:12:37,016.016 INFO    ] No update needed
[2026-06-27 03:12:37,018.018 INFO    ] Checking for camera pi updates...
[2026-06-27 03:12:37,039.039 INFO    ] 200
[2026-06-27 03:12:37,041.041 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:12:37,067.067 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:12:37,108.108 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:12:37,109.109 INFO    ] No camera update needed
[2026-06-27 03:12:37,111.111 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:12:37,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:12:37,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:12:37,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:12:39,160.160 INFO    ] ================================================
[2026-06-27 03:12:39,176.176 INFO    ] Launching Daemon at Sat Jun 27 03:12:39 IST 2026
[2026-06-27 03:12:39,188.188 INFO    ] ================================================
[2026-06-27 03:12:39,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:12:39
[2026-06-27 03:12:39,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:12:40,015.015 INFO    ] Initializing speech engine...
[2026-06-27 03:12:40,018.018 INFO    ] 2026-06-27 03:12:40
[2026-06-27 03:12:40,237.237 INFO    ] 2026-06-27 03:12:40
[2026-06-27 03:12:40,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:12:40,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:12:40,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:12:40,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:12:40,678.678 INFO    ] time= 27/06/2026 03:12:40
[2026-06-27 03:12:40,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:12:40,685.685 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:12:40,751.751 INFO    ] No existing commands found in stream
[2026-06-27 03:12:45,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:12:45,764.764 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-27 03:12:46,416.416 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 03:12:46,417.417 INFO    ] Checking for system updates...
[2026-06-27 03:12:46,439.439 INFO    ] 200
[2026-06-27 03:12:46,440.440 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:12:46,473.473 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:12:46,475.475 INFO    ] No update needed
[2026-06-27 03:12:46,476.476 INFO    ] Checking for camera pi updates...
[2026-06-27 03:12:46,498.498 INFO    ] 200
[2026-06-27 03:12:46,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:12:46,523.523 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:12:46,560.560 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:12:46,561.561 INFO    ] No camera update needed
[2026-06-27 03:12:46,562.562 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:12:46,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:12:46,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:12:46,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:12:48,608.608 INFO    ] ================================================
[2026-06-27 03:12:48,624.624 INFO    ] Launching Daemon at Sat Jun 27 03:12:48 IST 2026
[2026-06-27 03:12:48,636.636 INFO    ] ================================================
[2026-06-27 03:12:48,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:12:48
[2026-06-27 03:12:49,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:12:49,434.434 INFO    ] Initializing speech engine...
[2026-06-27 03:12:49,439.439 INFO    ] 2026-06-27 03:12:49
[2026-06-27 03:12:49,642.642 INFO    ] 2026-06-27 03:12:49
[2026-06-27 03:12:49,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:12:49,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:12:49,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:12:50,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:12:50,058.058 INFO    ] time= 27/06/2026 03:12:50
[2026-06-27 03:12:50,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:12:50,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:12:50,154.154 INFO    ] No existing commands found in stream
[2026-06-27 03:12:55,163.163 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:12:55,166.166 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-27 03:12:59,406.406 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:12:59,407.407 INFO    ] Checking for system updates...
[2026-06-27 03:12:59,428.428 INFO    ] 200
[2026-06-27 03:12:59,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:12:59,462.462 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:12:59,463.463 INFO    ] No update needed
[2026-06-27 03:12:59,465.465 INFO    ] Checking for camera pi updates...
[2026-06-27 03:12:59,484.484 INFO    ] 200
[2026-06-27 03:12:59,486.486 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:12:59,509.509 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:12:59,556.556 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:12:59,558.558 INFO    ] No camera update needed
[2026-06-27 03:12:59,559.559 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:12:59,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:12:59,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:12:59,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:13:01,603.603 INFO    ] ================================================
[2026-06-27 03:13:01,615.615 INFO    ] Launching Daemon at Sat Jun 27 03:13:01 IST 2026
[2026-06-27 03:13:01,624.624 INFO    ] ================================================
[2026-06-27 03:13:01,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:13:01
[2026-06-27 03:13:02,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:13:02,492.492 INFO    ] Initializing speech engine...
[2026-06-27 03:13:02,502.502 INFO    ] 2026-06-27 03:13:02
[2026-06-27 03:13:02,715.715 INFO    ] 2026-06-27 03:13:02
[2026-06-27 03:13:02,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:13:02,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:13:02,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:13:03,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:13:03,162.162 INFO    ] time= 27/06/2026 03:13:03
[2026-06-27 03:13:03,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:13:03,169.169 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:13:03,236.236 INFO    ] No existing commands found in stream
[2026-06-27 03:13:08,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:13:08,249.249 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-27 03:13:12,104.104 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 03:13:12,105.105 INFO    ] Checking for system updates...
[2026-06-27 03:13:12,126.126 INFO    ] 200
[2026-06-27 03:13:12,128.128 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:13:12,158.158 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:13:12,160.160 INFO    ] No update needed
[2026-06-27 03:13:12,161.161 INFO    ] Checking for camera pi updates...
[2026-06-27 03:13:12,182.182 INFO    ] 200
[2026-06-27 03:13:12,183.183 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:13:12,208.208 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:13:12,251.251 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:13:12,252.252 INFO    ] No camera update needed
[2026-06-27 03:13:12,253.253 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:13:12,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:13:12,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:13:12,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:13:14,298.298 INFO    ] ================================================
[2026-06-27 03:13:14,315.315 INFO    ] Launching Daemon at Sat Jun 27 03:13:14 IST 2026
[2026-06-27 03:13:14,327.327 INFO    ] ================================================
[2026-06-27 03:13:14,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:13:14
[2026-06-27 03:13:15,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:13:15,153.153 INFO    ] Initializing speech engine...
[2026-06-27 03:13:15,159.159 INFO    ] 2026-06-27 03:13:15
[2026-06-27 03:13:15,362.362 INFO    ] 2026-06-27 03:13:15
[2026-06-27 03:13:15,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:13:15,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:13:15,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:13:15,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:13:15,804.804 INFO    ] time= 27/06/2026 03:13:15
[2026-06-27 03:13:15,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:13:15,812.812 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:13:15,878.878 INFO    ] No existing commands found in stream
[2026-06-27 03:13:20,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:13:20,889.889 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-27 03:13:22,092.092 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 03:13:22,094.094 INFO    ] Checking for system updates...
[2026-06-27 03:13:22,114.114 INFO    ] 200
[2026-06-27 03:13:22,116.116 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:13:22,147.147 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:13:22,148.148 INFO    ] No update needed
[2026-06-27 03:13:22,149.149 INFO    ] Checking for camera pi updates...
[2026-06-27 03:13:22,169.169 INFO    ] 200
[2026-06-27 03:13:22,170.170 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:13:22,196.196 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:13:22,232.232 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:13:22,233.233 INFO    ] No camera update needed
[2026-06-27 03:13:22,234.234 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:13:22,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:13:22,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:13:22,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:13:24,280.280 INFO    ] ================================================
[2026-06-27 03:13:24,295.295 INFO    ] Launching Daemon at Sat Jun 27 03:13:24 IST 2026
[2026-06-27 03:13:24,306.306 INFO    ] ================================================
[2026-06-27 03:13:24,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:13:24
[2026-06-27 03:13:24,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:13:25,081.081 INFO    ] Initializing speech engine...
[2026-06-27 03:13:25,093.093 INFO    ] 2026-06-27 03:13:25
[2026-06-27 03:13:25,302.302 INFO    ] 2026-06-27 03:13:25
[2026-06-27 03:13:25,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:13:25,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:13:25,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:13:25,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:13:25,729.729 INFO    ] time= 27/06/2026 03:13:25
[2026-06-27 03:13:25,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:13:25,756.756 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:13:25,832.832 INFO    ] No existing commands found in stream
[2026-06-27 03:13:30,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:13:30,845.845 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-27 03:13:33,738.738 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:13:33,740.740 INFO    ] Checking for system updates...
[2026-06-27 03:13:33,760.760 INFO    ] 200
[2026-06-27 03:13:33,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:13:33,801.801 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:13:33,802.802 INFO    ] No update needed
[2026-06-27 03:13:33,804.804 INFO    ] Checking for camera pi updates...
[2026-06-27 03:13:33,823.823 INFO    ] 200
[2026-06-27 03:13:33,824.824 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:13:33,849.849 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:13:33,886.886 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:13:33,888.888 INFO    ] No camera update needed
[2026-06-27 03:13:33,889.889 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:13:33,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:13:33,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:13:33,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:13:35,934.934 INFO    ] ================================================
[2026-06-27 03:13:35,949.949 INFO    ] Launching Daemon at Sat Jun 27 03:13:35 IST 2026
[2026-06-27 03:13:35,960.960 INFO    ] ================================================
[2026-06-27 03:13:36,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:13:36
[2026-06-27 03:13:36,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:13:36,791.791 INFO    ] Initializing speech engine...
[2026-06-27 03:13:36,801.801 INFO    ] 2026-06-27 03:13:36
[2026-06-27 03:13:37,014.014 INFO    ] 2026-06-27 03:13:36
[2026-06-27 03:13:37,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:13:37,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:13:37,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:13:37,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:13:37,444.444 INFO    ] time= 27/06/2026 03:13:37
[2026-06-27 03:13:37,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:13:37,472.472 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:13:37,564.564 INFO    ] No existing commands found in stream
[2026-06-27 03:13:42,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:13:42,582.582 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-27 03:13:45,361.361 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:13:45,362.362 INFO    ] Checking for system updates...
[2026-06-27 03:13:45,384.384 INFO    ] 200
[2026-06-27 03:13:45,386.386 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:13:45,419.419 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:13:45,420.420 INFO    ] No update needed
[2026-06-27 03:13:45,421.421 INFO    ] Checking for camera pi updates...
[2026-06-27 03:13:45,442.442 INFO    ] 200
[2026-06-27 03:13:45,443.443 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:13:45,468.468 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:13:45,503.503 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:13:45,505.505 INFO    ] No camera update needed
[2026-06-27 03:13:45,506.506 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:13:45,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:13:45,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:13:45,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:13:47,551.551 INFO    ] ================================================
[2026-06-27 03:13:47,567.567 INFO    ] Launching Daemon at Sat Jun 27 03:13:47 IST 2026
[2026-06-27 03:13:47,578.578 INFO    ] ================================================
[2026-06-27 03:13:47,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:13:47
[2026-06-27 03:13:48,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:13:48,366.366 INFO    ] Initializing speech engine...
[2026-06-27 03:13:48,371.371 INFO    ] 2026-06-27 03:13:48
[2026-06-27 03:13:48,590.590 INFO    ] 2026-06-27 03:13:48
[2026-06-27 03:13:48,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:13:48,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:13:48,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:13:48,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:13:49,007.007 INFO    ] time= 27/06/2026 03:13:48
[2026-06-27 03:13:49,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:13:49,047.047 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:13:49,115.115 INFO    ] No existing commands found in stream
[2026-06-27 03:13:54,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:13:54,127.127 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-27 03:13:55,582.582 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:13:55,583.583 INFO    ] Checking for system updates...
[2026-06-27 03:13:55,604.604 INFO    ] 200
[2026-06-27 03:13:55,606.606 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:13:55,637.637 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:13:55,638.638 INFO    ] No update needed
[2026-06-27 03:13:55,639.639 INFO    ] Checking for camera pi updates...
[2026-06-27 03:13:55,660.660 INFO    ] 200
[2026-06-27 03:13:55,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:13:55,685.685 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:13:55,718.718 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:13:55,719.719 INFO    ] No camera update needed
[2026-06-27 03:13:55,721.721 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:13:55,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:13:55,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:13:55,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:13:57,768.768 INFO    ] ================================================
[2026-06-27 03:13:57,783.783 INFO    ] Launching Daemon at Sat Jun 27 03:13:57 IST 2026
[2026-06-27 03:13:57,795.795 INFO    ] ================================================
[2026-06-27 03:13:58,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:13:58
[2026-06-27 03:13:58,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:13:58,652.652 INFO    ] Initializing speech engine...
[2026-06-27 03:13:58,657.657 INFO    ] 2026-06-27 03:13:58
[2026-06-27 03:13:58,867.867 INFO    ] 2026-06-27 03:13:58
[2026-06-27 03:13:58,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:13:59,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:13:59,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:13:59,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:13:59,296.296 INFO    ] time= 27/06/2026 03:13:59
[2026-06-27 03:13:59,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:13:59,324.324 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:13:59,392.392 INFO    ] No existing commands found in stream
[2026-06-27 03:14:04,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:14:04,415.415 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-27 03:14:08,772.772 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 03:14:08,773.773 INFO    ] Checking for system updates...
[2026-06-27 03:14:08,797.797 INFO    ] 200
[2026-06-27 03:14:08,798.798 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:14:08,831.831 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:14:08,833.833 INFO    ] No update needed
[2026-06-27 03:14:08,834.834 INFO    ] Checking for camera pi updates...
[2026-06-27 03:14:08,854.854 INFO    ] 200
[2026-06-27 03:14:08,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:14:08,881.881 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:14:08,924.924 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:14:08,925.925 INFO    ] No camera update needed
[2026-06-27 03:14:08,927.927 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:14:08,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:14:08,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:14:08,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:14:10,973.973 INFO    ] ================================================
[2026-06-27 03:14:10,989.989 INFO    ] Launching Daemon at Sat Jun 27 03:14:10 IST 2026
[2026-06-27 03:14:11,001.001 INFO    ] ================================================
[2026-06-27 03:14:11,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:14:11
[2026-06-27 03:14:11,674.674 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:14:11,807.807 INFO    ] Initializing speech engine...
[2026-06-27 03:14:11,820.820 INFO    ] 2026-06-27 03:14:11
[2026-06-27 03:14:12,037.037 INFO    ] 2026-06-27 03:14:12
[2026-06-27 03:14:12,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:14:12,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:14:12,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:14:12,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:14:12,464.464 INFO    ] time= 27/06/2026 03:14:12
[2026-06-27 03:14:12,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:14:12,503.503 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:14:12,621.621 INFO    ] No existing commands found in stream
[2026-06-27 03:14:17,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:14:17,634.634 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-27 03:14:20,250.250 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:14:20,251.251 INFO    ] Checking for system updates...
[2026-06-27 03:14:20,272.272 INFO    ] 200
[2026-06-27 03:14:20,274.274 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:14:20,304.304 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:14:20,306.306 INFO    ] No update needed
[2026-06-27 03:14:20,307.307 INFO    ] Checking for camera pi updates...
[2026-06-27 03:14:20,328.328 INFO    ] 200
[2026-06-27 03:14:20,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:14:20,354.354 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:14:20,502.502 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:14:20,503.503 INFO    ] No camera update needed
[2026-06-27 03:14:20,505.505 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:14:20,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:14:20,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:14:20,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:14:22,552.552 INFO    ] ================================================
[2026-06-27 03:14:22,567.567 INFO    ] Launching Daemon at Sat Jun 27 03:14:22 IST 2026
[2026-06-27 03:14:22,578.578 INFO    ] ================================================
[2026-06-27 03:14:22,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:14:22
[2026-06-27 03:14:23,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:14:23,393.393 INFO    ] Initializing speech engine...
[2026-06-27 03:14:23,406.406 INFO    ] 2026-06-27 03:14:23
[2026-06-27 03:14:23,629.629 INFO    ] 2026-06-27 03:14:23
[2026-06-27 03:14:23,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:14:23,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:14:23,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:14:24,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:14:24,057.057 INFO    ] time= 27/06/2026 03:14:24
[2026-06-27 03:14:24,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:14:24,119.119 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:14:24,191.191 INFO    ] No existing commands found in stream
[2026-06-27 03:14:29,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:14:29,205.205 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-27 03:14:30,577.577 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 03:14:30,579.579 INFO    ] Checking for system updates...
[2026-06-27 03:14:30,601.601 INFO    ] 200
[2026-06-27 03:14:30,602.602 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:14:30,633.633 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:14:30,634.634 INFO    ] No update needed
[2026-06-27 03:14:30,636.636 INFO    ] Checking for camera pi updates...
[2026-06-27 03:14:30,657.657 INFO    ] 200
[2026-06-27 03:14:30,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:14:30,682.682 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:14:30,723.723 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:14:30,724.724 INFO    ] No camera update needed
[2026-06-27 03:14:30,726.726 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:14:30,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:14:30,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:14:30,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:14:32,775.775 INFO    ] ================================================
[2026-06-27 03:14:32,791.791 INFO    ] Launching Daemon at Sat Jun 27 03:14:32 IST 2026
[2026-06-27 03:14:32,802.802 INFO    ] ================================================
[2026-06-27 03:14:33,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:14:33
[2026-06-27 03:14:33,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:14:33,619.619 INFO    ] Initializing speech engine...
[2026-06-27 03:14:33,624.624 INFO    ] 2026-06-27 03:14:33
[2026-06-27 03:14:33,830.830 INFO    ] 2026-06-27 03:14:33
[2026-06-27 03:14:33,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:14:34,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:14:34,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:14:34,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:14:34,249.249 INFO    ] time= 27/06/2026 03:14:34
[2026-06-27 03:14:34,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:14:34,294.294 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:14:34,387.387 INFO    ] No existing commands found in stream
[2026-06-27 03:14:39,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:14:39,415.415 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-27 03:14:42,475.475 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 03:14:42,476.476 INFO    ] Checking for system updates...
[2026-06-27 03:14:42,499.499 INFO    ] 200
[2026-06-27 03:14:42,500.500 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:14:42,534.534 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:14:42,535.535 INFO    ] No update needed
[2026-06-27 03:14:42,537.537 INFO    ] Checking for camera pi updates...
[2026-06-27 03:14:42,558.558 INFO    ] 200
[2026-06-27 03:14:42,560.560 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:14:42,585.585 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:14:42,626.626 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:14:42,627.627 INFO    ] No camera update needed
[2026-06-27 03:14:42,629.629 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:14:42,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:14:42,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:14:42,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:14:44,677.677 INFO    ] ================================================
[2026-06-27 03:14:44,693.693 INFO    ] Launching Daemon at Sat Jun 27 03:14:44 IST 2026
[2026-06-27 03:14:44,704.704 INFO    ] ================================================
[2026-06-27 03:14:45,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:14:45
[2026-06-27 03:14:45,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:14:45,525.525 INFO    ] Initializing speech engine...
[2026-06-27 03:14:45,536.536 INFO    ] 2026-06-27 03:14:45
[2026-06-27 03:14:45,740.740 INFO    ] 2026-06-27 03:14:45
[2026-06-27 03:14:45,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:14:45,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:14:45,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:14:46,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:14:46,168.168 INFO    ] time= 27/06/2026 03:14:46
[2026-06-27 03:14:46,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:14:46,184.184 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:14:46,251.251 INFO    ] No existing commands found in stream
[2026-06-27 03:14:51,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:14:51,268.268 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-27 03:14:53,290.290 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 03:14:53,292.292 INFO    ] Checking for system updates...
[2026-06-27 03:14:53,313.313 INFO    ] 200
[2026-06-27 03:14:53,315.315 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:14:53,349.349 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:14:53,350.350 INFO    ] No update needed
[2026-06-27 03:14:53,351.351 INFO    ] Checking for camera pi updates...
[2026-06-27 03:14:53,372.372 INFO    ] 200
[2026-06-27 03:14:53,373.373 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:14:53,397.397 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:14:53,433.433 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:14:53,435.435 INFO    ] No camera update needed
[2026-06-27 03:14:53,436.436 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:14:53,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:14:53,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:14:53,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:14:55,486.486 INFO    ] ================================================
[2026-06-27 03:14:55,502.502 INFO    ] Launching Daemon at Sat Jun 27 03:14:55 IST 2026
[2026-06-27 03:14:55,512.512 INFO    ] ================================================
[2026-06-27 03:14:55,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:14:55
[2026-06-27 03:14:56,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:14:56,356.356 INFO    ] Initializing speech engine...
[2026-06-27 03:14:56,361.361 INFO    ] 2026-06-27 03:14:56
[2026-06-27 03:14:56,567.567 INFO    ] 2026-06-27 03:14:56
[2026-06-27 03:14:56,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:14:56,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:14:56,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:14:56,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:14:56,968.968 INFO    ] time= 27/06/2026 03:14:56
[2026-06-27 03:14:57,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:14:57,036.036 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:14:57,115.115 INFO    ] No existing commands found in stream
[2026-06-27 03:15:02,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:15:02,148.148 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-27 03:15:05,573.573 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 03:15:05,576.576 INFO    ] Checking for system updates...
[2026-06-27 03:15:05,615.615 INFO    ] 200
[2026-06-27 03:15:05,618.618 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:15:05,670.670 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:15:05,673.673 INFO    ] No update needed
[2026-06-27 03:15:05,675.675 INFO    ] Checking for camera pi updates...
[2026-06-27 03:15:05,709.709 INFO    ] 200
[2026-06-27 03:15:05,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:15:05,736.736 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:15:05,775.775 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:15:05,777.777 INFO    ] No camera update needed
[2026-06-27 03:15:05,778.778 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:15:05,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:15:05,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:15:05,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:15:07,826.826 INFO    ] ================================================
[2026-06-27 03:15:07,842.842 INFO    ] Launching Daemon at Sat Jun 27 03:15:07 IST 2026
[2026-06-27 03:15:07,854.854 INFO    ] ================================================
[2026-06-27 03:15:08,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:15:08
[2026-06-27 03:15:08,544.544 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:15:08,690.690 INFO    ] Initializing speech engine...
[2026-06-27 03:15:08,695.695 INFO    ] 2026-06-27 03:15:08
[2026-06-27 03:15:08,902.902 INFO    ] 2026-06-27 03:15:08
[2026-06-27 03:15:08,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:15:09,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:15:09,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:15:09,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:15:09,346.346 INFO    ] time= 27/06/2026 03:15:09
[2026-06-27 03:15:09,348.348 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:15:09,354.354 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:15:09,421.421 INFO    ] No existing commands found in stream
[2026-06-27 03:15:14,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:15:14,434.434 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-27 03:15:15,737.737 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:15:15,739.739 INFO    ] Checking for system updates...
[2026-06-27 03:15:15,760.760 INFO    ] 200
[2026-06-27 03:15:15,761.761 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:15:15,793.793 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:15:15,794.794 INFO    ] No update needed
[2026-06-27 03:15:15,796.796 INFO    ] Checking for camera pi updates...
[2026-06-27 03:15:15,816.816 INFO    ] 200
[2026-06-27 03:15:15,817.817 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:15:15,841.841 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:15:15,885.885 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:15:15,887.887 INFO    ] No camera update needed
[2026-06-27 03:15:15,888.888 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:15:15,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:15:15,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:15:15,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:15:17,937.937 INFO    ] ================================================
[2026-06-27 03:15:17,954.954 INFO    ] Launching Daemon at Sat Jun 27 03:15:17 IST 2026
[2026-06-27 03:15:17,965.965 INFO    ] ================================================
[2026-06-27 03:15:18,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:15:18
[2026-06-27 03:15:18,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:15:18,763.763 INFO    ] Initializing speech engine...
[2026-06-27 03:15:18,771.771 INFO    ] 2026-06-27 03:15:18
[2026-06-27 03:15:18,984.984 INFO    ] 2026-06-27 03:15:18
[2026-06-27 03:15:19,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:15:19,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:15:19,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:15:19,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:15:19,404.404 INFO    ] time= 27/06/2026 03:15:19
[2026-06-27 03:15:19,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:15:19,433.433 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:15:19,500.500 INFO    ] No existing commands found in stream
[2026-06-27 03:15:24,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:15:24,517.517 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-27 03:15:28,471.471 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 03:15:28,473.473 INFO    ] Checking for system updates...
[2026-06-27 03:15:28,496.496 INFO    ] 200
[2026-06-27 03:15:28,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:15:28,529.529 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:15:28,530.530 INFO    ] No update needed
[2026-06-27 03:15:28,531.531 INFO    ] Checking for camera pi updates...
[2026-06-27 03:15:28,552.552 INFO    ] 200
[2026-06-27 03:15:28,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:15:28,588.588 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:15:28,626.626 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:15:28,627.627 INFO    ] No camera update needed
[2026-06-27 03:15:28,629.629 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:15:28,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:15:28,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:15:28,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:15:30,678.678 INFO    ] ================================================
[2026-06-27 03:15:30,694.694 INFO    ] Launching Daemon at Sat Jun 27 03:15:30 IST 2026
[2026-06-27 03:15:30,705.705 INFO    ] ================================================
[2026-06-27 03:15:31,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:15:31
[2026-06-27 03:15:31,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:15:31,609.609 INFO    ] Initializing speech engine...
[2026-06-27 03:15:31,615.615 INFO    ] 2026-06-27 03:15:31
[2026-06-27 03:15:31,824.824 INFO    ] 2026-06-27 03:15:31
[2026-06-27 03:15:31,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:15:32,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:15:32,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:15:32,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:15:32,269.269 INFO    ] time= 27/06/2026 03:15:32
[2026-06-27 03:15:32,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:15:32,287.287 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:15:32,358.358 INFO    ] No existing commands found in stream
[2026-06-27 03:15:37,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:15:37,381.381 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-27 03:15:39,456.456 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:15:39,457.457 INFO    ] Checking for system updates...
[2026-06-27 03:15:39,480.480 INFO    ] 200
[2026-06-27 03:15:39,481.481 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:15:39,512.512 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:15:39,514.514 INFO    ] No update needed
[2026-06-27 03:15:39,515.515 INFO    ] Checking for camera pi updates...
[2026-06-27 03:15:39,535.535 INFO    ] 200
[2026-06-27 03:15:39,537.537 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:15:39,561.561 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:15:39,600.600 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:15:39,602.602 INFO    ] No camera update needed
[2026-06-27 03:15:39,603.603 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:15:39,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:15:39,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:15:39,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:15:41,651.651 INFO    ] ================================================
[2026-06-27 03:15:41,667.667 INFO    ] Launching Daemon at Sat Jun 27 03:15:41 IST 2026
[2026-06-27 03:15:41,679.679 INFO    ] ================================================
[2026-06-27 03:15:42,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:15:42
[2026-06-27 03:15:42,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:15:42,464.464 INFO    ] Initializing speech engine...
[2026-06-27 03:15:42,478.478 INFO    ] 2026-06-27 03:15:42
[2026-06-27 03:15:42,689.689 INFO    ] 2026-06-27 03:15:42
[2026-06-27 03:15:42,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:15:42,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:15:42,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:15:43,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:15:43,115.115 INFO    ] time= 27/06/2026 03:15:43
[2026-06-27 03:15:43,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:15:43,144.144 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:15:43,210.210 INFO    ] No existing commands found in stream
[2026-06-27 03:15:48,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:15:48,223.223 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-27 03:15:51,602.602 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 03:15:51,604.604 INFO    ] Checking for system updates...
[2026-06-27 03:15:51,626.626 INFO    ] 200
[2026-06-27 03:15:51,627.627 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:15:51,662.662 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:15:51,663.663 INFO    ] No update needed
[2026-06-27 03:15:51,665.665 INFO    ] Checking for camera pi updates...
[2026-06-27 03:15:51,688.688 INFO    ] 200
[2026-06-27 03:15:51,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:15:51,714.714 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:15:51,752.752 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:15:51,753.753 INFO    ] No camera update needed
[2026-06-27 03:15:51,755.755 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:15:51,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:15:51,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:15:51,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:15:53,804.804 INFO    ] ================================================
[2026-06-27 03:15:53,819.819 INFO    ] Launching Daemon at Sat Jun 27 03:15:53 IST 2026
[2026-06-27 03:15:53,831.831 INFO    ] ================================================
[2026-06-27 03:15:54,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:15:54
[2026-06-27 03:15:54,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:15:54,617.617 INFO    ] Initializing speech engine...
[2026-06-27 03:15:54,622.622 INFO    ] 2026-06-27 03:15:54
[2026-06-27 03:15:54,826.826 INFO    ] 2026-06-27 03:15:54
[2026-06-27 03:15:54,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:15:55,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:15:55,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:15:55,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:15:55,268.268 INFO    ] time= 27/06/2026 03:15:55
[2026-06-27 03:15:55,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:15:55,275.275 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:15:55,343.343 INFO    ] No existing commands found in stream
[2026-06-27 03:16:00,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:16:00,370.370 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-27 03:16:00,978.978 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 03:16:00,980.980 INFO    ] Checking for system updates...
[2026-06-27 03:16:01,001.001 INFO    ] 200
[2026-06-27 03:16:01,002.002 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:16:01,034.034 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:16:01,036.036 INFO    ] No update needed
[2026-06-27 03:16:01,037.037 INFO    ] Checking for camera pi updates...
[2026-06-27 03:16:01,057.057 INFO    ] 200
[2026-06-27 03:16:01,058.058 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:16:01,083.083 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:16:01,139.139 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:16:01,141.141 INFO    ] No camera update needed
[2026-06-27 03:16:01,142.142 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:16:01,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:16:01,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:16:01,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:16:03,176.176 INFO    ] ================================================
[2026-06-27 03:16:03,184.184 INFO    ] Launching Daemon at Sat Jun 27 03:16:03 IST 2026
[2026-06-27 03:16:03,190.190 INFO    ] ================================================
[2026-06-27 03:16:03,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:16:03
[2026-06-27 03:16:03,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:16:03,983.983 INFO    ] Initializing speech engine...
[2026-06-27 03:16:03,987.987 INFO    ] 2026-06-27 03:16:03
[2026-06-27 03:16:04,184.184 INFO    ] 2026-06-27 03:16:04
[2026-06-27 03:16:04,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:16:04,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:16:04,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:16:04,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:16:04,648.648 INFO    ] time= 27/06/2026 03:16:04
[2026-06-27 03:16:04,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:16:04,678.678 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:16:04,745.745 INFO    ] No existing commands found in stream
[2026-06-27 03:16:09,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:16:09,759.759 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-27 03:16:11,880.880 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 03:16:11,881.881 INFO    ] Checking for system updates...
[2026-06-27 03:16:11,902.902 INFO    ] 200
[2026-06-27 03:16:11,904.904 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:16:11,937.937 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:16:11,939.939 INFO    ] No update needed
[2026-06-27 03:16:11,940.940 INFO    ] Checking for camera pi updates...
[2026-06-27 03:16:11,963.963 INFO    ] 200
[2026-06-27 03:16:11,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:16:11,988.988 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:16:12,025.025 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:16:12,026.026 INFO    ] No camera update needed
[2026-06-27 03:16:12,028.028 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:16:12,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:16:12,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:16:12,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:16:14,076.076 INFO    ] ================================================
[2026-06-27 03:16:14,091.091 INFO    ] Launching Daemon at Sat Jun 27 03:16:14 IST 2026
[2026-06-27 03:16:14,102.102 INFO    ] ================================================
[2026-06-27 03:16:14,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:16:14
[2026-06-27 03:16:14,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:16:14,917.917 INFO    ] Initializing speech engine...
[2026-06-27 03:16:14,925.925 INFO    ] 2026-06-27 03:16:14
[2026-06-27 03:16:15,136.136 INFO    ] 2026-06-27 03:16:15
[2026-06-27 03:16:15,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:16:15,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:16:15,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:16:15,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:16:15,579.579 INFO    ] time= 27/06/2026 03:16:15
[2026-06-27 03:16:15,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:16:15,586.586 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:16:15,651.651 INFO    ] No existing commands found in stream
[2026-06-27 03:16:20,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:16:20,664.664 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-27 03:16:24,410.410 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 03:16:24,412.412 INFO    ] Checking for system updates...
[2026-06-27 03:16:24,433.433 INFO    ] 200
[2026-06-27 03:16:24,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:16:24,465.465 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:16:24,467.467 INFO    ] No update needed
[2026-06-27 03:16:24,468.468 INFO    ] Checking for camera pi updates...
[2026-06-27 03:16:24,488.488 INFO    ] 200
[2026-06-27 03:16:24,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:16:24,515.515 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:16:24,655.655 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:16:24,656.656 INFO    ] No camera update needed
[2026-06-27 03:16:24,658.658 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:16:24,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:16:24,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:16:24,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:16:26,706.706 INFO    ] ================================================
[2026-06-27 03:16:26,721.721 INFO    ] Launching Daemon at Sat Jun 27 03:16:26 IST 2026
[2026-06-27 03:16:26,733.733 INFO    ] ================================================
[2026-06-27 03:16:27,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:16:27
[2026-06-27 03:16:27,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:16:27,582.582 INFO    ] Initializing speech engine...
[2026-06-27 03:16:27,585.585 INFO    ] 2026-06-27 03:16:27
[2026-06-27 03:16:27,809.809 INFO    ] 2026-06-27 03:16:27
[2026-06-27 03:16:27,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:16:28,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:16:28,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:16:28,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:16:28,253.253 INFO    ] time= 27/06/2026 03:16:28
[2026-06-27 03:16:28,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:16:28,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:16:28,328.328 INFO    ] No existing commands found in stream
[2026-06-27 03:16:33,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:16:33,346.346 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-27 03:16:37,684.684 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 03:16:37,686.686 INFO    ] Checking for system updates...
[2026-06-27 03:16:37,707.707 INFO    ] 200
[2026-06-27 03:16:37,708.708 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:16:37,741.741 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:16:37,743.743 INFO    ] No update needed
[2026-06-27 03:16:37,745.745 INFO    ] Checking for camera pi updates...
[2026-06-27 03:16:37,765.765 INFO    ] 200
[2026-06-27 03:16:37,766.766 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:16:37,790.790 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:16:37,827.827 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:16:37,829.829 INFO    ] No camera update needed
[2026-06-27 03:16:37,830.830 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:16:37,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:16:37,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:16:37,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:16:39,882.882 INFO    ] ================================================
[2026-06-27 03:16:39,898.898 INFO    ] Launching Daemon at Sat Jun 27 03:16:39 IST 2026
[2026-06-27 03:16:39,909.909 INFO    ] ================================================
[2026-06-27 03:16:40,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:16:40
[2026-06-27 03:16:40,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:16:40,739.739 INFO    ] Initializing speech engine...
[2026-06-27 03:16:40,752.752 INFO    ] 2026-06-27 03:16:40
[2026-06-27 03:16:40,958.958 INFO    ] 2026-06-27 03:16:40
[2026-06-27 03:16:40,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:16:41,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:16:41,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:16:41,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:16:41,377.377 INFO    ] time= 27/06/2026 03:16:41
[2026-06-27 03:16:41,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:16:41,407.407 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:16:41,475.475 INFO    ] No existing commands found in stream
[2026-06-27 03:16:46,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:16:46,491.491 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-27 03:16:50,999.999 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 03:16:51,000.000 INFO    ] Checking for system updates...
[2026-06-27 03:16:51,021.021 INFO    ] 200
[2026-06-27 03:16:51,022.022 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:16:51,052.052 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:16:51,054.054 INFO    ] No update needed
[2026-06-27 03:16:51,056.056 INFO    ] Checking for camera pi updates...
[2026-06-27 03:16:51,075.075 INFO    ] 200
[2026-06-27 03:16:51,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:16:51,100.100 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:16:51,142.142 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:16:51,143.143 INFO    ] No camera update needed
[2026-06-27 03:16:51,144.144 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:16:51,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:16:51,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:16:51,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:16:53,189.189 INFO    ] ================================================
[2026-06-27 03:16:53,206.206 INFO    ] Launching Daemon at Sat Jun 27 03:16:53 IST 2026
[2026-06-27 03:16:53,217.217 INFO    ] ================================================
[2026-06-27 03:16:53,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:16:53
[2026-06-27 03:16:53,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:16:53,999.999 INFO    ] Initializing speech engine...
[2026-06-27 03:16:54,011.011 INFO    ] 2026-06-27 03:16:54
[2026-06-27 03:16:54,220.220 INFO    ] 2026-06-27 03:16:54
[2026-06-27 03:16:54,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:16:54,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:16:54,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:16:54,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:16:54,666.666 INFO    ] time= 27/06/2026 03:16:54
[2026-06-27 03:16:54,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:16:54,673.673 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:16:54,740.740 INFO    ] No existing commands found in stream
[2026-06-27 03:16:59,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:16:59,752.752 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-27 03:17:01,339.339 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 03:17:01,341.341 INFO    ] Checking for system updates...
[2026-06-27 03:17:01,366.366 INFO    ] 200
[2026-06-27 03:17:01,368.368 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:17:01,406.406 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:17:01,408.408 INFO    ] No update needed
[2026-06-27 03:17:01,409.409 INFO    ] Checking for camera pi updates...
[2026-06-27 03:17:01,433.433 INFO    ] 200
[2026-06-27 03:17:01,435.435 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:17:01,466.466 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:17:01,515.515 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:17:01,517.517 INFO    ] No camera update needed
[2026-06-27 03:17:01,519.519 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:17:01,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:17:01,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:17:01,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:17:03,571.571 INFO    ] ================================================
[2026-06-27 03:17:03,587.587 INFO    ] Launching Daemon at Sat Jun 27 03:17:03 IST 2026
[2026-06-27 03:17:03,599.599 INFO    ] ================================================
[2026-06-27 03:17:03,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:17:03
[2026-06-27 03:17:04,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:17:04,423.423 INFO    ] Initializing speech engine...
[2026-06-27 03:17:04,436.436 INFO    ] 2026-06-27 03:17:04
[2026-06-27 03:17:04,646.646 INFO    ] 2026-06-27 03:17:04
[2026-06-27 03:17:04,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:17:04,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:17:04,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:17:05,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:17:05,094.094 INFO    ] time= 27/06/2026 03:17:05
[2026-06-27 03:17:05,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:17:05,103.103 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:17:05,170.170 INFO    ] No existing commands found in stream
[2026-06-27 03:17:10,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:17:10,188.188 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-27 03:17:13,543.543 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 03:17:13,544.544 INFO    ] Checking for system updates...
[2026-06-27 03:17:13,565.565 INFO    ] 200
[2026-06-27 03:17:13,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:17:13,600.600 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:17:13,601.601 INFO    ] No update needed
[2026-06-27 03:17:13,603.603 INFO    ] Checking for camera pi updates...
[2026-06-27 03:17:13,623.623 INFO    ] 200
[2026-06-27 03:17:13,624.624 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:17:13,648.648 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:17:13,686.686 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:17:13,687.687 INFO    ] No camera update needed
[2026-06-27 03:17:13,689.689 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:17:13,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:17:13,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:17:13,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:17:15,737.737 INFO    ] ================================================
[2026-06-27 03:17:15,753.753 INFO    ] Launching Daemon at Sat Jun 27 03:17:15 IST 2026
[2026-06-27 03:17:15,764.764 INFO    ] ================================================
[2026-06-27 03:17:16,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:17:16
[2026-06-27 03:17:16,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:17:16,580.580 INFO    ] Initializing speech engine...
[2026-06-27 03:17:16,585.585 INFO    ] 2026-06-27 03:17:16
[2026-06-27 03:17:16,776.776 INFO    ] 2026-06-27 03:17:16
[2026-06-27 03:17:16,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:17:17,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:17:17,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:17:17,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:17:17,259.259 INFO    ] time= 27/06/2026 03:17:17
[2026-06-27 03:17:17,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:17:17,300.300 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:17:17,378.378 INFO    ] No existing commands found in stream
[2026-06-27 03:17:22,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:17:22,389.389 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-27 03:17:26,400.400 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 03:17:26,402.402 INFO    ] Checking for system updates...
[2026-06-27 03:17:26,422.422 INFO    ] 200
[2026-06-27 03:17:26,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:17:26,454.454 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:17:26,456.456 INFO    ] No update needed
[2026-06-27 03:17:26,457.457 INFO    ] Checking for camera pi updates...
[2026-06-27 03:17:26,477.477 INFO    ] 200
[2026-06-27 03:17:26,479.479 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:17:26,502.502 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:17:26,538.538 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:17:26,539.539 INFO    ] No camera update needed
[2026-06-27 03:17:26,540.540 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:17:26,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:17:26,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:17:26,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:17:28,586.586 INFO    ] ================================================
[2026-06-27 03:17:28,602.602 INFO    ] Launching Daemon at Sat Jun 27 03:17:28 IST 2026
[2026-06-27 03:17:28,614.614 INFO    ] ================================================
[2026-06-27 03:17:28,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:17:28
[2026-06-27 03:17:29,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:17:29,430.430 INFO    ] Initializing speech engine...
[2026-06-27 03:17:29,435.435 INFO    ] 2026-06-27 03:17:29
[2026-06-27 03:17:29,624.624 INFO    ] 2026-06-27 03:17:29
[2026-06-27 03:17:29,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:17:29,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:17:29,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:17:30,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:17:30,103.103 INFO    ] time= 27/06/2026 03:17:30
[2026-06-27 03:17:30,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:17:30,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:17:30,254.254 INFO    ] No existing commands found in stream
[2026-06-27 03:17:35,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:17:35,266.266 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-27 03:17:38,544.544 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:17:38,545.545 INFO    ] Checking for system updates...
[2026-06-27 03:17:38,566.566 INFO    ] 200
[2026-06-27 03:17:38,568.568 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:17:38,599.599 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:17:38,600.600 INFO    ] No update needed
[2026-06-27 03:17:38,601.601 INFO    ] Checking for camera pi updates...
[2026-06-27 03:17:38,621.621 INFO    ] 200
[2026-06-27 03:17:38,622.622 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:17:38,648.648 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:17:38,691.691 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:17:38,692.692 INFO    ] No camera update needed
[2026-06-27 03:17:38,693.693 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:17:38,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:17:38,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:17:38,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:17:40,738.738 INFO    ] ================================================
[2026-06-27 03:17:40,754.754 INFO    ] Launching Daemon at Sat Jun 27 03:17:40 IST 2026
[2026-06-27 03:17:40,765.765 INFO    ] ================================================
[2026-06-27 03:17:41,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:17:41
[2026-06-27 03:17:41,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:17:41,642.642 INFO    ] Initializing speech engine...
[2026-06-27 03:17:41,647.647 INFO    ] 2026-06-27 03:17:41
[2026-06-27 03:17:41,857.857 INFO    ] 2026-06-27 03:17:41
[2026-06-27 03:17:41,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:17:42,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:17:42,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:17:42,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:17:42,281.281 INFO    ] time= 27/06/2026 03:17:42
[2026-06-27 03:17:42,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:17:42,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:17:42,379.379 INFO    ] No existing commands found in stream
[2026-06-27 03:17:47,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:17:47,402.402 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-27 03:17:50,591.591 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:17:50,593.593 INFO    ] Checking for system updates...
[2026-06-27 03:17:50,614.614 INFO    ] 200
[2026-06-27 03:17:50,616.616 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:17:50,646.646 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:17:50,648.648 INFO    ] No update needed
[2026-06-27 03:17:50,649.649 INFO    ] Checking for camera pi updates...
[2026-06-27 03:17:50,668.668 INFO    ] 200
[2026-06-27 03:17:50,669.669 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:17:50,697.697 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:17:50,722.722 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:17:50,723.723 INFO    ] No camera update needed
[2026-06-27 03:17:50,725.725 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:17:50,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:17:50,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:17:50,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:17:52,769.769 INFO    ] ================================================
[2026-06-27 03:17:52,785.785 INFO    ] Launching Daemon at Sat Jun 27 03:17:52 IST 2026
[2026-06-27 03:17:52,796.796 INFO    ] ================================================
[2026-06-27 03:17:53,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:17:53
[2026-06-27 03:17:53,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:17:53,623.623 INFO    ] Initializing speech engine...
[2026-06-27 03:17:53,632.632 INFO    ] 2026-06-27 03:17:53
[2026-06-27 03:17:53,853.853 INFO    ] 2026-06-27 03:17:53
[2026-06-27 03:17:53,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:17:54,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:17:54,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:17:54,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:17:54,296.296 INFO    ] time= 27/06/2026 03:17:54
[2026-06-27 03:17:54,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:17:54,343.343 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:17:54,441.441 INFO    ] No existing commands found in stream
[2026-06-27 03:17:59,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:17:59,453.453 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-27 03:18:00,732.732 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:18:00,734.734 INFO    ] Checking for system updates...
[2026-06-27 03:18:00,757.757 INFO    ] 200
[2026-06-27 03:18:00,758.758 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:18:00,789.789 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:18:00,790.790 INFO    ] No update needed
[2026-06-27 03:18:00,791.791 INFO    ] Checking for camera pi updates...
[2026-06-27 03:18:00,811.811 INFO    ] 200
[2026-06-27 03:18:00,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:18:00,837.837 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:18:00,874.874 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:18:00,875.875 INFO    ] No camera update needed
[2026-06-27 03:18:00,876.876 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:18:00,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:18:00,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:18:00,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:18:02,908.908 INFO    ] ================================================
[2026-06-27 03:18:02,919.919 INFO    ] Launching Daemon at Sat Jun 27 03:18:02 IST 2026
[2026-06-27 03:18:02,930.930 INFO    ] ================================================
[2026-06-27 03:18:03,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:18:03
[2026-06-27 03:18:03,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:18:03,721.721 INFO    ] Initializing speech engine...
[2026-06-27 03:18:03,733.733 INFO    ] 2026-06-27 03:18:03
[2026-06-27 03:18:03,942.942 INFO    ] 2026-06-27 03:18:03
[2026-06-27 03:18:03,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:18:04,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:18:04,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:18:04,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:18:04,381.381 INFO    ] time= 27/06/2026 03:18:04
[2026-06-27 03:18:04,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:18:04,388.388 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:18:04,454.454 INFO    ] No existing commands found in stream
[2026-06-27 03:18:09,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:18:09,468.468 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-27 03:18:13,448.448 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 03:18:13,450.450 INFO    ] Checking for system updates...
[2026-06-27 03:18:13,471.471 INFO    ] 200
[2026-06-27 03:18:13,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:18:13,504.504 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:18:13,505.505 INFO    ] No update needed
[2026-06-27 03:18:13,507.507 INFO    ] Checking for camera pi updates...
[2026-06-27 03:18:13,527.527 INFO    ] 200
[2026-06-27 03:18:13,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:18:13,552.552 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:18:13,589.589 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:18:13,590.590 INFO    ] No camera update needed
[2026-06-27 03:18:13,592.592 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:18:13,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:18:13,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:18:13,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:18:15,641.641 INFO    ] ================================================
[2026-06-27 03:18:15,657.657 INFO    ] Launching Daemon at Sat Jun 27 03:18:15 IST 2026
[2026-06-27 03:18:15,668.668 INFO    ] ================================================
[2026-06-27 03:18:16,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:18:16
[2026-06-27 03:18:16,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:18:16,469.469 INFO    ] Initializing speech engine...
[2026-06-27 03:18:16,474.474 INFO    ] 2026-06-27 03:18:16
[2026-06-27 03:18:16,694.694 INFO    ] 2026-06-27 03:18:16
[2026-06-27 03:18:16,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:18:16,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:18:16,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:18:17,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:18:17,136.136 INFO    ] time= 27/06/2026 03:18:17
[2026-06-27 03:18:17,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:18:17,144.144 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:18:17,213.213 INFO    ] No existing commands found in stream
[2026-06-27 03:18:22,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:18:22,226.226 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-27 03:18:22,917.917 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 03:18:22,919.919 INFO    ] Checking for system updates...
[2026-06-27 03:18:22,941.941 INFO    ] 200
[2026-06-27 03:18:22,943.943 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:18:22,977.977 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:18:22,978.978 INFO    ] No update needed
[2026-06-27 03:18:22,979.979 INFO    ] Checking for camera pi updates...
[2026-06-27 03:18:23,001.001 INFO    ] 200
[2026-06-27 03:18:23,002.002 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:18:23,032.032 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:18:23,076.076 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:18:23,077.077 INFO    ] No camera update needed
[2026-06-27 03:18:23,079.079 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:18:23,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:18:23,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:18:23,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:18:25,127.127 INFO    ] ================================================
[2026-06-27 03:18:25,143.143 INFO    ] Launching Daemon at Sat Jun 27 03:18:25 IST 2026
[2026-06-27 03:18:25,153.153 INFO    ] ================================================
[2026-06-27 03:18:25,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:18:25
[2026-06-27 03:18:25,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:18:26,021.021 INFO    ] Initializing speech engine...
[2026-06-27 03:18:26,026.026 INFO    ] 2026-06-27 03:18:26
[2026-06-27 03:18:26,241.241 INFO    ] 2026-06-27 03:18:26
[2026-06-27 03:18:26,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:18:26,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:18:26,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:18:26,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:18:26,669.669 INFO    ] time= 27/06/2026 03:18:26
[2026-06-27 03:18:26,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:18:26,705.705 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:18:26,773.773 INFO    ] No existing commands found in stream
[2026-06-27 03:18:31,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:18:31,789.789 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-27 03:18:32,788.788 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:18:32,790.790 INFO    ] Checking for system updates...
[2026-06-27 03:18:32,811.811 INFO    ] 200
[2026-06-27 03:18:32,812.812 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:18:32,846.846 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:18:32,847.847 INFO    ] No update needed
[2026-06-27 03:18:32,849.849 INFO    ] Checking for camera pi updates...
[2026-06-27 03:18:32,872.872 INFO    ] 200
[2026-06-27 03:18:32,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:18:32,898.898 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:18:32,934.934 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:18:32,935.935 INFO    ] No camera update needed
[2026-06-27 03:18:32,937.937 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:18:32,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:18:32,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:18:32,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:18:34,985.985 INFO    ] ================================================
[2026-06-27 03:18:35,000.000 INFO    ] Launching Daemon at Sat Jun 27 03:18:34 IST 2026
[2026-06-27 03:18:35,011.011 INFO    ] ================================================
[2026-06-27 03:18:35,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:18:35
[2026-06-27 03:18:35,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:18:35,819.819 INFO    ] Initializing speech engine...
[2026-06-27 03:18:35,824.824 INFO    ] 2026-06-27 03:18:35
[2026-06-27 03:18:36,029.029 INFO    ] 2026-06-27 03:18:36
[2026-06-27 03:18:36,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:18:36,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:18:36,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:18:36,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:18:36,465.465 INFO    ] time= 27/06/2026 03:18:36
[2026-06-27 03:18:36,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:18:36,476.476 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:18:36,543.543 INFO    ] No existing commands found in stream
[2026-06-27 03:18:41,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:18:41,573.573 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-27 03:18:42,007.007 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:18:42,008.008 INFO    ] Checking for system updates...
[2026-06-27 03:18:42,029.029 INFO    ] 200
[2026-06-27 03:18:42,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:18:42,085.085 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:18:42,088.088 INFO    ] No update needed
[2026-06-27 03:18:42,091.091 INFO    ] Checking for camera pi updates...
[2026-06-27 03:18:42,135.135 INFO    ] 200
[2026-06-27 03:18:42,137.137 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:18:42,160.160 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:18:42,201.201 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:18:42,203.203 INFO    ] No camera update needed
[2026-06-27 03:18:42,204.204 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:18:42,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:18:42,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:18:42,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:18:44,252.252 INFO    ] ================================================
[2026-06-27 03:18:44,267.267 INFO    ] Launching Daemon at Sat Jun 27 03:18:44 IST 2026
[2026-06-27 03:18:44,278.278 INFO    ] ================================================
[2026-06-27 03:18:44,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:18:44
[2026-06-27 03:18:44,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:18:45,089.089 INFO    ] Initializing speech engine...
[2026-06-27 03:18:45,102.102 INFO    ] 2026-06-27 03:18:45
[2026-06-27 03:18:45,309.309 INFO    ] 2026-06-27 03:18:45
[2026-06-27 03:18:45,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:18:45,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:18:45,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:18:45,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:18:45,731.731 INFO    ] time= 27/06/2026 03:18:45
[2026-06-27 03:18:45,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:18:45,760.760 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:18:45,827.827 INFO    ] No existing commands found in stream
[2026-06-27 03:18:50,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:18:50,839.839 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-27 03:18:51,292.292 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 03:18:51,294.294 INFO    ] Checking for system updates...
[2026-06-27 03:18:51,316.316 INFO    ] 200
[2026-06-27 03:18:51,318.318 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:18:51,354.354 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:18:51,356.356 INFO    ] No update needed
[2026-06-27 03:18:51,357.357 INFO    ] Checking for camera pi updates...
[2026-06-27 03:18:51,377.377 INFO    ] 200
[2026-06-27 03:18:51,378.378 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:18:51,402.402 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:18:51,427.427 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:18:51,429.429 INFO    ] No camera update needed
[2026-06-27 03:18:51,430.430 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:18:51,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:18:51,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:18:51,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:18:53,478.478 INFO    ] ================================================
[2026-06-27 03:18:53,494.494 INFO    ] Launching Daemon at Sat Jun 27 03:18:53 IST 2026
[2026-06-27 03:18:53,504.504 INFO    ] ================================================
[2026-06-27 03:18:53,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:18:53
[2026-06-27 03:18:54,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:18:54,325.325 INFO    ] Initializing speech engine...
[2026-06-27 03:18:54,331.331 INFO    ] 2026-06-27 03:18:54
[2026-06-27 03:18:54,535.535 INFO    ] 2026-06-27 03:18:54
[2026-06-27 03:18:54,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:18:54,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:18:54,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:18:54,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:18:54,951.951 INFO    ] time= 27/06/2026 03:18:54
[2026-06-27 03:18:54,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:18:54,981.981 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:18:55,047.047 INFO    ] No existing commands found in stream
[2026-06-27 03:19:00,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:19:00,064.064 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-27 03:19:04,287.287 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 03:19:04,288.288 INFO    ] Checking for system updates...
[2026-06-27 03:19:04,310.310 INFO    ] 200
[2026-06-27 03:19:04,311.311 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:19:04,343.343 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:19:04,345.345 INFO    ] No update needed
[2026-06-27 03:19:04,346.346 INFO    ] Checking for camera pi updates...
[2026-06-27 03:19:04,366.366 INFO    ] 200
[2026-06-27 03:19:04,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:19:04,390.390 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:19:04,427.427 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:19:04,429.429 INFO    ] No camera update needed
[2026-06-27 03:19:04,430.430 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:19:04,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:19:04,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:19:04,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:19:06,476.476 INFO    ] ================================================
[2026-06-27 03:19:06,491.491 INFO    ] Launching Daemon at Sat Jun 27 03:19:06 IST 2026
[2026-06-27 03:19:06,502.502 INFO    ] ================================================
[2026-06-27 03:19:06,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:19:06
[2026-06-27 03:19:07,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:19:07,302.302 INFO    ] Initializing speech engine...
[2026-06-27 03:19:07,311.311 INFO    ] 2026-06-27 03:19:07
[2026-06-27 03:19:07,514.514 INFO    ] 2026-06-27 03:19:07
[2026-06-27 03:19:07,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:19:07,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:19:07,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:19:07,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:19:07,951.951 INFO    ] time= 27/06/2026 03:19:07
[2026-06-27 03:19:07,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:19:07,958.958 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:19:08,025.025 INFO    ] No existing commands found in stream
[2026-06-27 03:19:13,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:19:13,042.042 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-27 03:19:16,984.984 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 03:19:16,985.985 INFO    ] Checking for system updates...
[2026-06-27 03:19:17,006.006 INFO    ] 200
[2026-06-27 03:19:17,008.008 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:19:17,038.038 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:19:17,039.039 INFO    ] No update needed
[2026-06-27 03:19:17,041.041 INFO    ] Checking for camera pi updates...
[2026-06-27 03:19:17,061.061 INFO    ] 200
[2026-06-27 03:19:17,062.062 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:19:17,087.087 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:19:17,127.127 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:19:17,128.128 INFO    ] No camera update needed
[2026-06-27 03:19:17,129.129 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:19:17,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:19:17,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:19:17,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:19:19,176.176 INFO    ] ================================================
[2026-06-27 03:19:19,191.191 INFO    ] Launching Daemon at Sat Jun 27 03:19:19 IST 2026
[2026-06-27 03:19:19,203.203 INFO    ] ================================================
[2026-06-27 03:19:19,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:19:19
[2026-06-27 03:19:19,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:19:20,067.067 INFO    ] Initializing speech engine...
[2026-06-27 03:19:20,073.073 INFO    ] 2026-06-27 03:19:20
[2026-06-27 03:19:20,280.280 INFO    ] 2026-06-27 03:19:20
[2026-06-27 03:19:20,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:19:20,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:19:20,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:19:20,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:19:20,722.722 INFO    ] time= 27/06/2026 03:19:20
[2026-06-27 03:19:20,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:19:20,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:19:20,796.796 INFO    ] No existing commands found in stream
[2026-06-27 03:19:25,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:19:25,809.809 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-27 03:19:27,835.835 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 03:19:27,837.837 INFO    ] Checking for system updates...
[2026-06-27 03:19:27,858.858 INFO    ] 200
[2026-06-27 03:19:27,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:19:27,890.890 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:19:27,892.892 INFO    ] No update needed
[2026-06-27 03:19:27,893.893 INFO    ] Checking for camera pi updates...
[2026-06-27 03:19:27,915.915 INFO    ] 200
[2026-06-27 03:19:27,917.917 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:19:27,941.941 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:19:27,980.980 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:19:27,982.982 INFO    ] No camera update needed
[2026-06-27 03:19:27,983.983 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:19:27,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:19:27,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:19:27,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:19:30,031.031 INFO    ] ================================================
[2026-06-27 03:19:30,047.047 INFO    ] Launching Daemon at Sat Jun 27 03:19:30 IST 2026
[2026-06-27 03:19:30,058.058 INFO    ] ================================================
[2026-06-27 03:19:30,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:19:30
[2026-06-27 03:19:30,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:19:30,917.917 INFO    ] Initializing speech engine...
[2026-06-27 03:19:30,926.926 INFO    ] 2026-06-27 03:19:30
[2026-06-27 03:19:31,136.136 INFO    ] 2026-06-27 03:19:31
[2026-06-27 03:19:31,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:19:31,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:19:31,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:19:31,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:19:31,579.579 INFO    ] time= 27/06/2026 03:19:31
[2026-06-27 03:19:31,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:19:31,586.586 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:19:31,653.653 INFO    ] No existing commands found in stream
[2026-06-27 03:19:36,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:19:36,671.671 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-27 03:19:39,892.892 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 03:19:39,893.893 INFO    ] Checking for system updates...
[2026-06-27 03:19:39,915.915 INFO    ] 200
[2026-06-27 03:19:39,917.917 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:19:39,948.948 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:19:39,950.950 INFO    ] No update needed
[2026-06-27 03:19:39,951.951 INFO    ] Checking for camera pi updates...
[2026-06-27 03:19:39,972.972 INFO    ] 200
[2026-06-27 03:19:39,973.973 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:19:39,997.997 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:19:40,033.033 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:19:40,035.035 INFO    ] No camera update needed
[2026-06-27 03:19:40,036.036 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:19:40,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:19:40,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:19:40,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:19:42,085.085 INFO    ] ================================================
[2026-06-27 03:19:42,102.102 INFO    ] Launching Daemon at Sat Jun 27 03:19:42 IST 2026
[2026-06-27 03:19:42,113.113 INFO    ] ================================================
[2026-06-27 03:19:42,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:19:42
[2026-06-27 03:19:42,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:19:42,924.924 INFO    ] Initializing speech engine...
[2026-06-27 03:19:42,929.929 INFO    ] 2026-06-27 03:19:42
[2026-06-27 03:19:43,133.133 INFO    ] 2026-06-27 03:19:43
[2026-06-27 03:19:43,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:19:43,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:19:43,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:19:43,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:19:43,600.600 INFO    ] time= 27/06/2026 03:19:43
[2026-06-27 03:19:43,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:19:43,608.608 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:19:43,681.681 INFO    ] No existing commands found in stream
[2026-06-27 03:19:48,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:19:48,692.692 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-27 03:19:52,058.058 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 03:19:52,060.060 INFO    ] Checking for system updates...
[2026-06-27 03:19:52,082.082 INFO    ] 200
[2026-06-27 03:19:52,083.083 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:19:52,115.115 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:19:52,116.116 INFO    ] No update needed
[2026-06-27 03:19:52,118.118 INFO    ] Checking for camera pi updates...
[2026-06-27 03:19:52,137.137 INFO    ] 200
[2026-06-27 03:19:52,138.138 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:19:52,162.162 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:19:52,198.198 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:19:52,199.199 INFO    ] No camera update needed
[2026-06-27 03:19:52,201.201 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:19:52,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:19:52,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:19:52,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:19:54,246.246 INFO    ] ================================================
[2026-06-27 03:19:54,262.262 INFO    ] Launching Daemon at Sat Jun 27 03:19:54 IST 2026
[2026-06-27 03:19:54,274.274 INFO    ] ================================================
[2026-06-27 03:19:54,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:19:54
[2026-06-27 03:19:54,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:19:55,061.061 INFO    ] Initializing speech engine...
[2026-06-27 03:19:55,066.066 INFO    ] 2026-06-27 03:19:55
[2026-06-27 03:19:55,273.273 INFO    ] 2026-06-27 03:19:55
[2026-06-27 03:19:55,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:19:55,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:19:55,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:19:55,645.645 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:19:55,704.704 INFO    ] time= 27/06/2026 03:19:55
[2026-06-27 03:19:55,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:19:55,734.734 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:19:55,801.801 INFO    ] No existing commands found in stream
[2026-06-27 03:20:00,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:20:00,815.815 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-27 03:20:02,518.518 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:20:02,522.522 INFO    ] Checking for system updates...
[2026-06-27 03:20:02,552.552 INFO    ] 200
[2026-06-27 03:20:02,555.555 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:20:02,602.602 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:20:02,604.604 INFO    ] No update needed
[2026-06-27 03:20:02,607.607 INFO    ] Checking for camera pi updates...
[2026-06-27 03:20:02,645.645 INFO    ] 200
[2026-06-27 03:20:02,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:20:02,697.697 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:20:02,721.721 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:20:02,724.724 INFO    ] No camera update needed
[2026-06-27 03:20:02,726.726 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:20:02,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:20:02,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:20:02,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:20:04,778.778 INFO    ] ================================================
[2026-06-27 03:20:04,795.795 INFO    ] Launching Daemon at Sat Jun 27 03:20:04 IST 2026
[2026-06-27 03:20:04,806.806 INFO    ] ================================================
[2026-06-27 03:20:05,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:20:05
[2026-06-27 03:20:05,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:20:05,637.637 INFO    ] Initializing speech engine...
[2026-06-27 03:20:05,642.642 INFO    ] 2026-06-27 03:20:05
[2026-06-27 03:20:05,847.847 INFO    ] 2026-06-27 03:20:05
[2026-06-27 03:20:05,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:20:06,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:20:06,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:20:06,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:20:06,288.288 INFO    ] time= 27/06/2026 03:20:06
[2026-06-27 03:20:06,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:20:06,295.295 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:20:06,362.362 INFO    ] No existing commands found in stream
[2026-06-27 03:20:11,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:20:11,374.374 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-27 03:20:12,798.798 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:20:12,799.799 INFO    ] Checking for system updates...
[2026-06-27 03:20:12,822.822 INFO    ] 200
[2026-06-27 03:20:12,823.823 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:20:12,857.857 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:20:12,858.858 INFO    ] No update needed
[2026-06-27 03:20:12,860.860 INFO    ] Checking for camera pi updates...
[2026-06-27 03:20:12,880.880 INFO    ] 200
[2026-06-27 03:20:12,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:20:12,905.905 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:20:12,942.942 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:20:12,944.944 INFO    ] No camera update needed
[2026-06-27 03:20:12,945.945 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:20:12,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:20:12,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:20:12,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:20:14,994.994 INFO    ] ================================================
[2026-06-27 03:20:15,011.011 INFO    ] Launching Daemon at Sat Jun 27 03:20:15 IST 2026
[2026-06-27 03:20:15,022.022 INFO    ] ================================================
[2026-06-27 03:20:15,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:20:15
[2026-06-27 03:20:15,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:20:15,869.869 INFO    ] Initializing speech engine...
[2026-06-27 03:20:15,875.875 INFO    ] 2026-06-27 03:20:15
[2026-06-27 03:20:16,082.082 INFO    ] 2026-06-27 03:20:16
[2026-06-27 03:20:16,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:20:16,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:20:16,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:20:16,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:20:16,501.501 INFO    ] time= 27/06/2026 03:20:16
[2026-06-27 03:20:16,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:20:16,530.530 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:20:16,621.621 INFO    ] No existing commands found in stream
[2026-06-27 03:20:21,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:20:21,638.638 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-27 03:20:24,898.898 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 03:20:24,900.900 INFO    ] Checking for system updates...
[2026-06-27 03:20:24,921.921 INFO    ] 200
[2026-06-27 03:20:24,923.923 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:20:24,954.954 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:20:24,956.956 INFO    ] No update needed
[2026-06-27 03:20:24,958.958 INFO    ] Checking for camera pi updates...
[2026-06-27 03:20:24,978.978 INFO    ] 200
[2026-06-27 03:20:24,980.980 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:20:25,008.008 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:20:25,032.032 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:20:25,034.034 INFO    ] No camera update needed
[2026-06-27 03:20:25,035.035 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:20:25,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:20:25,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:20:25,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:20:27,082.082 INFO    ] ================================================
[2026-06-27 03:20:27,097.097 INFO    ] Launching Daemon at Sat Jun 27 03:20:27 IST 2026
[2026-06-27 03:20:27,108.108 INFO    ] ================================================
[2026-06-27 03:20:27,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:20:27
[2026-06-27 03:20:27,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:20:27,926.926 INFO    ] Initializing speech engine...
[2026-06-27 03:20:27,931.931 INFO    ] 2026-06-27 03:20:27
[2026-06-27 03:20:28,136.136 INFO    ] 2026-06-27 03:20:28
[2026-06-27 03:20:28,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:20:28,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:20:28,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:20:28,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:20:28,553.553 INFO    ] time= 27/06/2026 03:20:28
[2026-06-27 03:20:28,577.577 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:20:28,583.583 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:20:28,672.672 INFO    ] No existing commands found in stream
[2026-06-27 03:20:33,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:20:33,684.684 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-27 03:20:37,467.467 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:20:37,469.469 INFO    ] Checking for system updates...
[2026-06-27 03:20:37,490.490 INFO    ] 200
[2026-06-27 03:20:37,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:20:37,521.521 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:20:37,523.523 INFO    ] No update needed
[2026-06-27 03:20:37,524.524 INFO    ] Checking for camera pi updates...
[2026-06-27 03:20:37,544.544 INFO    ] 200
[2026-06-27 03:20:37,545.545 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:20:37,568.568 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:20:37,695.695 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:20:37,697.697 INFO    ] No camera update needed
[2026-06-27 03:20:37,698.698 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:20:37,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:20:37,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:20:37,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:20:39,745.745 INFO    ] ================================================
[2026-06-27 03:20:39,761.761 INFO    ] Launching Daemon at Sat Jun 27 03:20:39 IST 2026
[2026-06-27 03:20:39,772.772 INFO    ] ================================================
[2026-06-27 03:20:40,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:20:40
[2026-06-27 03:20:40,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:20:40,548.548 INFO    ] Initializing speech engine...
[2026-06-27 03:20:40,558.558 INFO    ] 2026-06-27 03:20:40
[2026-06-27 03:20:40,759.759 INFO    ] 2026-06-27 03:20:40
[2026-06-27 03:20:40,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:20:40,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:20:40,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:20:41,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:20:41,166.166 INFO    ] time= 27/06/2026 03:20:41
[2026-06-27 03:20:41,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:20:41,221.221 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:20:41,336.336 INFO    ] No existing commands found in stream
[2026-06-27 03:20:46,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:20:46,357.357 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-27 03:20:49,279.279 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:20:49,281.281 INFO    ] Checking for system updates...
[2026-06-27 03:20:49,302.302 INFO    ] 200
[2026-06-27 03:20:49,304.304 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:20:49,335.335 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:20:49,336.336 INFO    ] No update needed
[2026-06-27 03:20:49,337.337 INFO    ] Checking for camera pi updates...
[2026-06-27 03:20:49,357.357 INFO    ] 200
[2026-06-27 03:20:49,359.359 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:20:49,382.382 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:20:49,405.405 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:20:49,406.406 INFO    ] No camera update needed
[2026-06-27 03:20:49,408.408 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:20:49,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:20:49,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:20:49,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:20:51,456.456 INFO    ] ================================================
[2026-06-27 03:20:51,472.472 INFO    ] Launching Daemon at Sat Jun 27 03:20:51 IST 2026
[2026-06-27 03:20:51,483.483 INFO    ] ================================================
[2026-06-27 03:20:51,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:20:51
[2026-06-27 03:20:52,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:20:52,361.361 INFO    ] Initializing speech engine...
[2026-06-27 03:20:52,366.366 INFO    ] 2026-06-27 03:20:52
[2026-06-27 03:20:52,574.574 INFO    ] 2026-06-27 03:20:52
[2026-06-27 03:20:52,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:20:52,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:20:52,814.814 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:20:52,994.994 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:20:53,018.018 INFO    ] time= 27/06/2026 03:20:52
[2026-06-27 03:20:53,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:20:53,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:20:53,093.093 INFO    ] No existing commands found in stream
[2026-06-27 03:20:58,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:20:58,121.121 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-27 03:20:59,138.138 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:20:59,140.140 INFO    ] Checking for system updates...
[2026-06-27 03:20:59,161.161 INFO    ] 200
[2026-06-27 03:20:59,163.163 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:20:59,196.196 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:20:59,197.197 INFO    ] No update needed
[2026-06-27 03:20:59,198.198 INFO    ] Checking for camera pi updates...
[2026-06-27 03:20:59,222.222 INFO    ] 200
[2026-06-27 03:20:59,223.223 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:20:59,249.249 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:20:59,290.290 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:20:59,292.292 INFO    ] No camera update needed
[2026-06-27 03:20:59,293.293 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:20:59,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:20:59,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:20:59,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:21:01,343.343 INFO    ] ================================================
[2026-06-27 03:21:01,358.358 INFO    ] Launching Daemon at Sat Jun 27 03:21:01 IST 2026
[2026-06-27 03:21:01,369.369 INFO    ] ================================================
[2026-06-27 03:21:01,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:21:01
[2026-06-27 03:21:02,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:21:02,396.396 INFO    ] Initializing speech engine...
[2026-06-27 03:21:02,407.407 INFO    ] 2026-06-27 03:21:02
[2026-06-27 03:21:02,657.657 INFO    ] 2026-06-27 03:21:02
[2026-06-27 03:21:02,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:21:02,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:21:02,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:21:03,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:21:03,106.106 INFO    ] time= 27/06/2026 03:21:03
[2026-06-27 03:21:03,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:21:03,147.147 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:21:03,217.217 INFO    ] No existing commands found in stream
[2026-06-27 03:21:08,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:21:08,231.231 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-27 03:21:10,291.291 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 03:21:10,293.293 INFO    ] Checking for system updates...
[2026-06-27 03:21:10,314.314 INFO    ] 200
[2026-06-27 03:21:10,316.316 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:21:10,348.348 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:21:10,350.350 INFO    ] No update needed
[2026-06-27 03:21:10,351.351 INFO    ] Checking for camera pi updates...
[2026-06-27 03:21:10,370.370 INFO    ] 200
[2026-06-27 03:21:10,372.372 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:21:10,395.395 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:21:10,440.440 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:21:10,441.441 INFO    ] No camera update needed
[2026-06-27 03:21:10,443.443 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:21:10,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:21:10,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:21:10,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:21:12,492.492 INFO    ] ================================================
[2026-06-27 03:21:12,509.509 INFO    ] Launching Daemon at Sat Jun 27 03:21:12 IST 2026
[2026-06-27 03:21:12,520.520 INFO    ] ================================================
[2026-06-27 03:21:12,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:21:12
[2026-06-27 03:21:13,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:21:13,332.332 INFO    ] Initializing speech engine...
[2026-06-27 03:21:13,337.337 INFO    ] 2026-06-27 03:21:13
[2026-06-27 03:21:13,541.541 INFO    ] 2026-06-27 03:21:13
[2026-06-27 03:21:13,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:21:13,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:21:13,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:21:13,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:21:13,961.961 INFO    ] time= 27/06/2026 03:21:13
[2026-06-27 03:21:13,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:21:13,989.989 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:21:14,056.056 INFO    ] No existing commands found in stream
[2026-06-27 03:21:19,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:21:19,073.073 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-27 03:21:23,219.219 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:21:23,221.221 INFO    ] Checking for system updates...
[2026-06-27 03:21:23,242.242 INFO    ] 200
[2026-06-27 03:21:23,244.244 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:21:23,275.275 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:21:23,276.276 INFO    ] No update needed
[2026-06-27 03:21:23,278.278 INFO    ] Checking for camera pi updates...
[2026-06-27 03:21:23,297.297 INFO    ] 200
[2026-06-27 03:21:23,299.299 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:21:23,327.327 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:21:23,368.368 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:21:23,369.369 INFO    ] No camera update needed
[2026-06-27 03:21:23,370.370 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:21:23,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:21:23,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:21:23,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:21:25,417.417 INFO    ] ================================================
[2026-06-27 03:21:25,432.432 INFO    ] Launching Daemon at Sat Jun 27 03:21:25 IST 2026
[2026-06-27 03:21:25,443.443 INFO    ] ================================================
[2026-06-27 03:21:25,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:21:25
[2026-06-27 03:21:26,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:21:26,288.288 INFO    ] Initializing speech engine...
[2026-06-27 03:21:26,298.298 INFO    ] 2026-06-27 03:21:26
[2026-06-27 03:21:26,508.508 INFO    ] 2026-06-27 03:21:26
[2026-06-27 03:21:26,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:21:26,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:21:26,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:21:26,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:21:26,918.918 INFO    ] time= 27/06/2026 03:21:26
[2026-06-27 03:21:26,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:21:26,962.962 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:21:27,029.029 INFO    ] No existing commands found in stream
[2026-06-27 03:21:32,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:21:32,045.045 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-27 03:21:32,487.487 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 03:21:32,489.489 INFO    ] Checking for system updates...
[2026-06-27 03:21:32,510.510 INFO    ] 200
[2026-06-27 03:21:32,512.512 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:21:32,552.552 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:21:32,555.555 INFO    ] No update needed
[2026-06-27 03:21:32,558.558 INFO    ] Checking for camera pi updates...
[2026-06-27 03:21:32,594.594 INFO    ] 200
[2026-06-27 03:21:32,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:21:32,635.635 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:21:32,660.660 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:21:32,661.661 INFO    ] No camera update needed
[2026-06-27 03:21:32,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:21:32,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:21:32,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:21:32,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:21:34,711.711 INFO    ] ================================================
[2026-06-27 03:21:34,727.727 INFO    ] Launching Daemon at Sat Jun 27 03:21:34 IST 2026
[2026-06-27 03:21:34,739.739 INFO    ] ================================================
[2026-06-27 03:21:35,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:21:35
[2026-06-27 03:21:35,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:21:35,538.538 INFO    ] Initializing speech engine...
[2026-06-27 03:21:35,543.543 INFO    ] 2026-06-27 03:21:35
[2026-06-27 03:21:35,761.761 INFO    ] 2026-06-27 03:21:35
[2026-06-27 03:21:35,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:21:35,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:21:35,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:21:36,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:21:36,201.201 INFO    ] time= 27/06/2026 03:21:36
[2026-06-27 03:21:36,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:21:36,208.208 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:21:36,298.298 INFO    ] No existing commands found in stream
[2026-06-27 03:21:41,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:21:41,310.310 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-27 03:21:44,398.398 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 03:21:44,400.400 INFO    ] Checking for system updates...
[2026-06-27 03:21:44,421.421 INFO    ] 200
[2026-06-27 03:21:44,423.423 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:21:44,454.454 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:21:44,455.455 INFO    ] No update needed
[2026-06-27 03:21:44,457.457 INFO    ] Checking for camera pi updates...
[2026-06-27 03:21:44,477.477 INFO    ] 200
[2026-06-27 03:21:44,478.478 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:21:44,502.502 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:21:44,538.538 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:21:44,540.540 INFO    ] No camera update needed
[2026-06-27 03:21:44,541.541 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:21:44,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:21:44,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:21:44,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:21:46,588.588 INFO    ] ================================================
[2026-06-27 03:21:46,603.603 INFO    ] Launching Daemon at Sat Jun 27 03:21:46 IST 2026
[2026-06-27 03:21:46,614.614 INFO    ] ================================================
[2026-06-27 03:21:46,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:21:46
[2026-06-27 03:21:47,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:21:47,413.413 INFO    ] Initializing speech engine...
[2026-06-27 03:21:47,421.421 INFO    ] 2026-06-27 03:21:47
[2026-06-27 03:21:47,631.631 INFO    ] 2026-06-27 03:21:47
[2026-06-27 03:21:47,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:21:47,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:21:47,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:21:48,044.044 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:21:48,077.077 INFO    ] time= 27/06/2026 03:21:48
[2026-06-27 03:21:48,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:21:48,085.085 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:21:48,153.153 INFO    ] No existing commands found in stream
[2026-06-27 03:21:53,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:21:53,165.165 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-27 03:21:56,011.011 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 03:21:56,014.014 INFO    ] Checking for system updates...
[2026-06-27 03:21:56,050.050 INFO    ] 200
[2026-06-27 03:21:56,052.052 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:21:56,111.111 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:21:56,114.114 INFO    ] No update needed
[2026-06-27 03:21:56,116.116 INFO    ] Checking for camera pi updates...
[2026-06-27 03:21:56,151.151 INFO    ] 200
[2026-06-27 03:21:56,153.153 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:21:56,180.180 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:21:56,207.207 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:21:56,208.208 INFO    ] No camera update needed
[2026-06-27 03:21:56,210.210 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:21:56,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:21:56,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:21:56,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:21:58,257.257 INFO    ] ================================================
[2026-06-27 03:21:58,272.272 INFO    ] Launching Daemon at Sat Jun 27 03:21:58 IST 2026
[2026-06-27 03:21:58,284.284 INFO    ] ================================================
[2026-06-27 03:21:58,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:21:58
[2026-06-27 03:21:59,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:21:59,159.159 INFO    ] Initializing speech engine...
[2026-06-27 03:21:59,170.170 INFO    ] 2026-06-27 03:21:59
[2026-06-27 03:21:59,379.379 INFO    ] 2026-06-27 03:21:59
[2026-06-27 03:21:59,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:21:59,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:21:59,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:21:59,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:21:59,820.820 INFO    ] time= 27/06/2026 03:21:59
[2026-06-27 03:21:59,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:21:59,837.837 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:21:59,906.906 INFO    ] No existing commands found in stream
[2026-06-27 03:22:04,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:22:04,919.919 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-27 03:22:07,781.781 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:22:07,783.783 INFO    ] Checking for system updates...
[2026-06-27 03:22:07,804.804 INFO    ] 200
[2026-06-27 03:22:07,806.806 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:22:07,837.837 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:22:07,838.838 INFO    ] No update needed
[2026-06-27 03:22:07,840.840 INFO    ] Checking for camera pi updates...
[2026-06-27 03:22:07,860.860 INFO    ] 200
[2026-06-27 03:22:07,862.862 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:22:07,889.889 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:22:07,929.929 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:22:07,931.931 INFO    ] No camera update needed
[2026-06-27 03:22:07,932.932 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:22:07,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:22:07,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:22:07,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:22:09,978.978 INFO    ] ================================================
[2026-06-27 03:22:09,993.993 INFO    ] Launching Daemon at Sat Jun 27 03:22:09 IST 2026
[2026-06-27 03:22:10,004.004 INFO    ] ================================================
[2026-06-27 03:22:10,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:22:10
[2026-06-27 03:22:10,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:22:10,800.800 INFO    ] Initializing speech engine...
[2026-06-27 03:22:10,810.810 INFO    ] 2026-06-27 03:22:10
[2026-06-27 03:22:11,015.015 INFO    ] 2026-06-27 03:22:10
[2026-06-27 03:22:11,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:22:11,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:22:11,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:22:11,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:22:11,425.425 INFO    ] time= 27/06/2026 03:22:11
[2026-06-27 03:22:11,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:22:11,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:22:11,528.528 INFO    ] No existing commands found in stream
[2026-06-27 03:22:16,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:22:16,540.540 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-27 03:22:19,152.152 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 03:22:19,154.154 INFO    ] Checking for system updates...
[2026-06-27 03:22:19,175.175 INFO    ] 200
[2026-06-27 03:22:19,176.176 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:22:19,209.209 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:22:19,210.210 INFO    ] No update needed
[2026-06-27 03:22:19,212.212 INFO    ] Checking for camera pi updates...
[2026-06-27 03:22:19,231.231 INFO    ] 200
[2026-06-27 03:22:19,233.233 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:22:19,258.258 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:22:19,297.297 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:22:19,298.298 INFO    ] No camera update needed
[2026-06-27 03:22:19,300.300 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:22:19,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:22:19,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:22:19,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:22:21,346.346 INFO    ] ================================================
[2026-06-27 03:22:21,361.361 INFO    ] Launching Daemon at Sat Jun 27 03:22:21 IST 2026
[2026-06-27 03:22:21,372.372 INFO    ] ================================================
[2026-06-27 03:22:21,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:22:21
[2026-06-27 03:22:22,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:22:22,199.199 INFO    ] Initializing speech engine...
[2026-06-27 03:22:22,204.204 INFO    ] 2026-06-27 03:22:22
[2026-06-27 03:22:22,410.410 INFO    ] 2026-06-27 03:22:22
[2026-06-27 03:22:22,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:22:22,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:22:22,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:22:22,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:22:22,838.838 INFO    ] time= 27/06/2026 03:22:22
[2026-06-27 03:22:22,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:22:22,928.928 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:22:23,014.014 INFO    ] No existing commands found in stream
[2026-06-27 03:22:28,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:22:28,035.035 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-27 03:22:29,937.937 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 03:22:29,939.939 INFO    ] Checking for system updates...
[2026-06-27 03:22:29,960.960 INFO    ] 200
[2026-06-27 03:22:29,962.962 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:22:29,992.992 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:22:29,994.994 INFO    ] No update needed
[2026-06-27 03:22:29,995.995 INFO    ] Checking for camera pi updates...
[2026-06-27 03:22:30,017.017 INFO    ] 200
[2026-06-27 03:22:30,019.019 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:22:30,042.042 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:22:30,092.092 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:22:30,093.093 INFO    ] No camera update needed
[2026-06-27 03:22:30,095.095 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:22:30,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:22:30,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:22:30,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:22:32,143.143 INFO    ] ================================================
[2026-06-27 03:22:32,159.159 INFO    ] Launching Daemon at Sat Jun 27 03:22:32 IST 2026
[2026-06-27 03:22:32,170.170 INFO    ] ================================================
[2026-06-27 03:22:32,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:22:32
[2026-06-27 03:22:32,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:22:33,025.025 INFO    ] Initializing speech engine...
[2026-06-27 03:22:33,030.030 INFO    ] 2026-06-27 03:22:33
[2026-06-27 03:22:33,249.249 INFO    ] 2026-06-27 03:22:33
[2026-06-27 03:22:33,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:22:33,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:22:33,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:22:33,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:22:33,677.677 INFO    ] time= 27/06/2026 03:22:33
[2026-06-27 03:22:33,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:22:33,734.734 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:22:33,811.811 INFO    ] No existing commands found in stream
[2026-06-27 03:22:38,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:22:38,823.823 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-27 03:22:40,252.252 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:22:40,254.254 INFO    ] Checking for system updates...
[2026-06-27 03:22:40,277.277 INFO    ] 200
[2026-06-27 03:22:40,278.278 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:22:40,311.311 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:22:40,313.313 INFO    ] No update needed
[2026-06-27 03:22:40,315.315 INFO    ] Checking for camera pi updates...
[2026-06-27 03:22:40,335.335 INFO    ] 200
[2026-06-27 03:22:40,336.336 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:22:40,361.361 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:22:40,487.487 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:22:40,488.488 INFO    ] No camera update needed
[2026-06-27 03:22:40,490.490 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:22:40,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:22:40,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:22:40,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:22:42,542.542 INFO    ] ================================================
[2026-06-27 03:22:42,557.557 INFO    ] Launching Daemon at Sat Jun 27 03:22:42 IST 2026
[2026-06-27 03:22:42,568.568 INFO    ] ================================================
[2026-06-27 03:22:42,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:22:42
[2026-06-27 03:22:43,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:22:43,388.388 INFO    ] Initializing speech engine...
[2026-06-27 03:22:43,393.393 INFO    ] 2026-06-27 03:22:43
[2026-06-27 03:22:43,599.599 INFO    ] 2026-06-27 03:22:43
[2026-06-27 03:22:43,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:22:43,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:22:43,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:22:43,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:22:44,002.002 INFO    ] time= 27/06/2026 03:22:43
[2026-06-27 03:22:44,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:22:44,046.046 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:22:44,112.112 INFO    ] No existing commands found in stream
[2026-06-27 03:22:49,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:22:49,125.125 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-27 03:22:50,803.803 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:22:50,804.804 INFO    ] Checking for system updates...
[2026-06-27 03:22:50,827.827 INFO    ] 200
[2026-06-27 03:22:50,828.828 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:22:50,861.861 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:22:50,862.862 INFO    ] No update needed
[2026-06-27 03:22:50,864.864 INFO    ] Checking for camera pi updates...
[2026-06-27 03:22:50,885.885 INFO    ] 200
[2026-06-27 03:22:50,886.886 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:22:50,910.910 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:22:50,946.946 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:22:50,947.947 INFO    ] No camera update needed
[2026-06-27 03:22:50,948.948 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:22:50,950.950 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:22:50,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:22:50,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:22:53,995.995 INFO    ] ================================================
[2026-06-27 03:22:53,010.010 INFO    ] Launching Daemon at Sat Jun 27 03:22:53 IST 2026
[2026-06-27 03:22:53,021.021 INFO    ] ================================================
[2026-06-27 03:22:53,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:22:53
[2026-06-27 03:22:53,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:22:53,827.827 INFO    ] Initializing speech engine...
[2026-06-27 03:22:53,837.837 INFO    ] 2026-06-27 03:22:53
[2026-06-27 03:22:54,024.024 INFO    ] 2026-06-27 03:22:54
[2026-06-27 03:22:54,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:22:54,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:22:54,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:22:54,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:22:54,524.524 INFO    ] time= 27/06/2026 03:22:54
[2026-06-27 03:22:54,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:22:54,555.555 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:22:54,626.626 INFO    ] No existing commands found in stream
[2026-06-27 03:22:59,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:22:59,639.639 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-27 03:23:01,161.161 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:23:01,162.162 INFO    ] Checking for system updates...
[2026-06-27 03:23:01,183.183 INFO    ] 200
[2026-06-27 03:23:01,184.184 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:23:01,215.215 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:23:01,216.216 INFO    ] No update needed
[2026-06-27 03:23:01,217.217 INFO    ] Checking for camera pi updates...
[2026-06-27 03:23:01,236.236 INFO    ] 200
[2026-06-27 03:23:01,238.238 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:23:01,264.264 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:23:01,302.302 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:23:01,303.303 INFO    ] No camera update needed
[2026-06-27 03:23:01,305.305 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:23:01,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:23:01,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:23:01,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:23:03,344.344 INFO    ] ================================================
[2026-06-27 03:23:03,359.359 INFO    ] Launching Daemon at Sat Jun 27 03:23:03 IST 2026
[2026-06-27 03:23:03,370.370 INFO    ] ================================================
[2026-06-27 03:23:03,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:23:03
[2026-06-27 03:23:04,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:23:04,146.146 INFO    ] Initializing speech engine...
[2026-06-27 03:23:04,154.154 INFO    ] 2026-06-27 03:23:04
[2026-06-27 03:23:04,367.367 INFO    ] 2026-06-27 03:23:04
[2026-06-27 03:23:04,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:23:04,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:23:04,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:23:04,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:23:04,794.794 INFO    ] time= 27/06/2026 03:23:04
[2026-06-27 03:23:04,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:23:04,821.821 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:23:04,889.889 INFO    ] No existing commands found in stream
[2026-06-27 03:23:09,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:23:09,901.901 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-27 03:23:10,885.885 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:23:10,887.887 INFO    ] Checking for system updates...
[2026-06-27 03:23:10,909.909 INFO    ] 200
[2026-06-27 03:23:10,911.911 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:23:10,941.941 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:23:10,942.942 INFO    ] No update needed
[2026-06-27 03:23:10,943.943 INFO    ] Checking for camera pi updates...
[2026-06-27 03:23:10,964.964 INFO    ] 200
[2026-06-27 03:23:10,966.966 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:23:10,991.991 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:23:11,030.030 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:23:11,031.031 INFO    ] No camera update needed
[2026-06-27 03:23:11,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:23:11,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:23:11,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:23:11,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:23:13,078.078 INFO    ] ================================================
[2026-06-27 03:23:13,093.093 INFO    ] Launching Daemon at Sat Jun 27 03:23:13 IST 2026
[2026-06-27 03:23:13,103.103 INFO    ] ================================================
[2026-06-27 03:23:13,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:23:13
[2026-06-27 03:23:13,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:23:13,929.929 INFO    ] Initializing speech engine...
[2026-06-27 03:23:13,934.934 INFO    ] 2026-06-27 03:23:13
[2026-06-27 03:23:14,143.143 INFO    ] 2026-06-27 03:23:14
[2026-06-27 03:23:14,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:23:14,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:23:14,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:23:14,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:23:14,605.605 INFO    ] time= 27/06/2026 03:23:14
[2026-06-27 03:23:14,631.631 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:23:14,633.633 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:23:14,710.710 INFO    ] No existing commands found in stream
[2026-06-27 03:23:19,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:23:19,722.722 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-27 03:23:23,516.516 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:23:23,517.517 INFO    ] Checking for system updates...
[2026-06-27 03:23:23,539.539 INFO    ] 200
[2026-06-27 03:23:23,540.540 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:23:23,571.571 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:23:23,572.572 INFO    ] No update needed
[2026-06-27 03:23:23,574.574 INFO    ] Checking for camera pi updates...
[2026-06-27 03:23:23,597.597 INFO    ] 200
[2026-06-27 03:23:23,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:23:23,622.622 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:23:23,666.666 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:23:23,668.668 INFO    ] No camera update needed
[2026-06-27 03:23:23,669.669 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:23:23,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:23:23,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:23:23,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:23:25,716.716 INFO    ] ================================================
[2026-06-27 03:23:25,731.731 INFO    ] Launching Daemon at Sat Jun 27 03:23:25 IST 2026
[2026-06-27 03:23:25,742.742 INFO    ] ================================================
[2026-06-27 03:23:26,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:23:26
[2026-06-27 03:23:26,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:23:26,600.600 INFO    ] Initializing speech engine...
[2026-06-27 03:23:26,606.606 INFO    ] 2026-06-27 03:23:26
[2026-06-27 03:23:26,815.815 INFO    ] 2026-06-27 03:23:26
[2026-06-27 03:23:26,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:23:27,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:23:27,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:23:27,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:23:27,265.265 INFO    ] time= 27/06/2026 03:23:27
[2026-06-27 03:23:27,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:23:27,268.268 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:23:27,336.336 INFO    ] No existing commands found in stream
[2026-06-27 03:23:32,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:23:32,346.346 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-27 03:23:33,498.498 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 03:23:33,500.500 INFO    ] Checking for system updates...
[2026-06-27 03:23:33,521.521 INFO    ] 200
[2026-06-27 03:23:33,523.523 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:23:33,554.554 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:23:33,556.556 INFO    ] No update needed
[2026-06-27 03:23:33,557.557 INFO    ] Checking for camera pi updates...
[2026-06-27 03:23:33,578.578 INFO    ] 200
[2026-06-27 03:23:33,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:23:33,606.606 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:23:33,643.643 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:23:33,645.645 INFO    ] No camera update needed
[2026-06-27 03:23:33,646.646 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:23:33,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:23:33,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:23:33,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:23:35,694.694 INFO    ] ================================================
[2026-06-27 03:23:35,709.709 INFO    ] Launching Daemon at Sat Jun 27 03:23:35 IST 2026
[2026-06-27 03:23:35,719.719 INFO    ] ================================================
[2026-06-27 03:23:36,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:23:36
[2026-06-27 03:23:36,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:23:36,514.514 INFO    ] Initializing speech engine...
[2026-06-27 03:23:36,522.522 INFO    ] 2026-06-27 03:23:36
[2026-06-27 03:23:36,742.742 INFO    ] 2026-06-27 03:23:36
[2026-06-27 03:23:36,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:23:36,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:23:36,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:23:37,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:23:37,200.200 INFO    ] time= 27/06/2026 03:23:37
[2026-06-27 03:23:37,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:23:37,232.232 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:23:37,303.303 INFO    ] No existing commands found in stream
[2026-06-27 03:23:42,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:23:42,317.317 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-27 03:23:43,927.927 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 03:23:43,928.928 INFO    ] Checking for system updates...
[2026-06-27 03:23:43,950.950 INFO    ] 200
[2026-06-27 03:23:43,951.951 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:23:43,984.984 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:23:43,985.985 INFO    ] No update needed
[2026-06-27 03:23:43,987.987 INFO    ] Checking for camera pi updates...
[2026-06-27 03:23:44,007.007 INFO    ] 200
[2026-06-27 03:23:44,009.009 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:23:44,032.032 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:23:44,072.072 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:23:44,073.073 INFO    ] No camera update needed
[2026-06-27 03:23:44,075.075 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:23:44,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:23:44,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:23:44,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:23:46,124.124 INFO    ] ================================================
[2026-06-27 03:23:46,139.139 INFO    ] Launching Daemon at Sat Jun 27 03:23:46 IST 2026
[2026-06-27 03:23:46,151.151 INFO    ] ================================================
[2026-06-27 03:23:46,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:23:46
[2026-06-27 03:23:46,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:23:46,942.942 INFO    ] Initializing speech engine...
[2026-06-27 03:23:46,947.947 INFO    ] 2026-06-27 03:23:46
[2026-06-27 03:23:47,153.153 INFO    ] 2026-06-27 03:23:47
[2026-06-27 03:23:47,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:23:47,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:23:47,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:23:47,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:23:47,562.562 INFO    ] time= 27/06/2026 03:23:47
[2026-06-27 03:23:47,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:23:47,600.600 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:23:47,668.668 INFO    ] No existing commands found in stream
[2026-06-27 03:23:52,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:23:52,679.679 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-27 03:23:56,057.057 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 03:23:56,059.059 INFO    ] Checking for system updates...
[2026-06-27 03:23:56,079.079 INFO    ] 200
[2026-06-27 03:23:56,081.081 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:23:56,114.114 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:23:56,116.116 INFO    ] No update needed
[2026-06-27 03:23:56,117.117 INFO    ] Checking for camera pi updates...
[2026-06-27 03:23:56,138.138 INFO    ] 200
[2026-06-27 03:23:56,139.139 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:23:56,163.163 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:23:56,206.206 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:23:56,207.207 INFO    ] No camera update needed
[2026-06-27 03:23:56,208.208 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:23:56,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:23:56,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:23:56,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:23:58,254.254 INFO    ] ================================================
[2026-06-27 03:23:58,269.269 INFO    ] Launching Daemon at Sat Jun 27 03:23:58 IST 2026
[2026-06-27 03:23:58,279.279 INFO    ] ================================================
[2026-06-27 03:23:58,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:23:58
[2026-06-27 03:23:58,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:23:59,074.074 INFO    ] Initializing speech engine...
[2026-06-27 03:23:59,079.079 INFO    ] 2026-06-27 03:23:59
[2026-06-27 03:23:59,283.283 INFO    ] 2026-06-27 03:23:59
[2026-06-27 03:23:59,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:23:59,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:23:59,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:23:59,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:23:59,723.723 INFO    ] time= 27/06/2026 03:23:59
[2026-06-27 03:23:59,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:23:59,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:23:59,797.797 INFO    ] No existing commands found in stream
[2026-06-27 03:24:04,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:24:04,810.810 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-27 03:24:06,150.150 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 03:24:06,151.151 INFO    ] Checking for system updates...
[2026-06-27 03:24:06,174.174 INFO    ] 200
[2026-06-27 03:24:06,176.176 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:24:06,207.207 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:24:06,208.208 INFO    ] No update needed
[2026-06-27 03:24:06,210.210 INFO    ] Checking for camera pi updates...
[2026-06-27 03:24:06,231.231 INFO    ] 200
[2026-06-27 03:24:06,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:24:06,256.256 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:24:06,292.292 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:24:06,293.293 INFO    ] No camera update needed
[2026-06-27 03:24:06,295.295 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:24:06,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:24:06,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:24:06,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:24:08,335.335 INFO    ] ================================================
[2026-06-27 03:24:08,345.345 INFO    ] Launching Daemon at Sat Jun 27 03:24:08 IST 2026
[2026-06-27 03:24:08,352.352 INFO    ] ================================================
[2026-06-27 03:24:08,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:24:08
[2026-06-27 03:24:09,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:24:09,206.206 INFO    ] Initializing speech engine...
[2026-06-27 03:24:09,215.215 INFO    ] 2026-06-27 03:24:09
[2026-06-27 03:24:09,427.427 INFO    ] 2026-06-27 03:24:09
[2026-06-27 03:24:09,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:24:09,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:24:09,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:24:09,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:24:09,901.901 INFO    ] time= 27/06/2026 03:24:09
[2026-06-27 03:24:09,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:24:09,909.909 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:24:09,978.978 INFO    ] No existing commands found in stream
[2026-06-27 03:24:14,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:24:14,989.989 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-27 03:24:17,866.866 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 03:24:17,868.868 INFO    ] Checking for system updates...
[2026-06-27 03:24:17,889.889 INFO    ] 200
[2026-06-27 03:24:17,890.890 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:24:17,921.921 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:24:17,922.922 INFO    ] No update needed
[2026-06-27 03:24:17,924.924 INFO    ] Checking for camera pi updates...
[2026-06-27 03:24:17,946.946 INFO    ] 200
[2026-06-27 03:24:17,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:24:17,974.974 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:24:18,016.016 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:24:18,017.017 INFO    ] No camera update needed
[2026-06-27 03:24:18,019.019 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:24:18,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:24:18,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:24:18,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:24:20,066.066 INFO    ] ================================================
[2026-06-27 03:24:20,081.081 INFO    ] Launching Daemon at Sat Jun 27 03:24:20 IST 2026
[2026-06-27 03:24:20,093.093 INFO    ] ================================================
[2026-06-27 03:24:20,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:24:20
[2026-06-27 03:24:20,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:24:20,910.910 INFO    ] Initializing speech engine...
[2026-06-27 03:24:20,916.916 INFO    ] 2026-06-27 03:24:20
[2026-06-27 03:24:21,118.118 INFO    ] 2026-06-27 03:24:21
[2026-06-27 03:24:21,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:24:21,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:24:21,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:24:21,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:24:21,538.538 INFO    ] time= 27/06/2026 03:24:21
[2026-06-27 03:24:21,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:24:21,566.566 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:24:21,633.633 INFO    ] No existing commands found in stream
[2026-06-27 03:24:26,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:24:26,645.645 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-27 03:24:27,491.491 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 03:24:27,493.493 INFO    ] Checking for system updates...
[2026-06-27 03:24:27,515.515 INFO    ] 200
[2026-06-27 03:24:27,517.517 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:24:27,553.553 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:24:27,554.554 INFO    ] No update needed
[2026-06-27 03:24:27,556.556 INFO    ] Checking for camera pi updates...
[2026-06-27 03:24:27,579.579 INFO    ] 200
[2026-06-27 03:24:27,580.580 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:24:27,603.603 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:24:27,658.658 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:24:27,659.659 INFO    ] No camera update needed
[2026-06-27 03:24:27,661.661 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:24:27,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:24:27,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:24:27,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:24:29,709.709 INFO    ] ================================================
[2026-06-27 03:24:29,725.725 INFO    ] Launching Daemon at Sat Jun 27 03:24:29 IST 2026
[2026-06-27 03:24:29,737.737 INFO    ] ================================================
[2026-06-27 03:24:30,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:24:30
[2026-06-27 03:24:30,383.383 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:24:30,521.521 INFO    ] Initializing speech engine...
[2026-06-27 03:24:30,531.531 INFO    ] 2026-06-27 03:24:30
[2026-06-27 03:24:30,737.737 INFO    ] 2026-06-27 03:24:30
[2026-06-27 03:24:30,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:24:30,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:24:30,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:24:31,156.156 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:24:31,180.180 INFO    ] time= 27/06/2026 03:24:31
[2026-06-27 03:24:31,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:24:31,188.188 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:24:31,256.256 INFO    ] No existing commands found in stream
[2026-06-27 03:24:36,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:24:36,268.268 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-27 03:24:39,908.908 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 03:24:39,909.909 INFO    ] Checking for system updates...
[2026-06-27 03:24:39,930.930 INFO    ] 200
[2026-06-27 03:24:39,931.931 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:24:39,961.961 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:24:39,963.963 INFO    ] No update needed
[2026-06-27 03:24:39,964.964 INFO    ] Checking for camera pi updates...
[2026-06-27 03:24:39,985.985 INFO    ] 200
[2026-06-27 03:24:39,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:24:40,011.011 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:24:40,052.052 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:24:40,054.054 INFO    ] No camera update needed
[2026-06-27 03:24:40,055.055 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:24:40,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:24:40,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:24:40,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:24:42,103.103 INFO    ] ================================================
[2026-06-27 03:24:42,119.119 INFO    ] Launching Daemon at Sat Jun 27 03:24:42 IST 2026
[2026-06-27 03:24:42,131.131 INFO    ] ================================================
[2026-06-27 03:24:42,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:24:42
[2026-06-27 03:24:42,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:24:42,944.944 INFO    ] Initializing speech engine...
[2026-06-27 03:24:42,948.948 INFO    ] 2026-06-27 03:24:42
[2026-06-27 03:24:43,166.166 INFO    ] 2026-06-27 03:24:43
[2026-06-27 03:24:43,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:24:43,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:24:43,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:24:43,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:24:43,588.588 INFO    ] time= 27/06/2026 03:24:43
[2026-06-27 03:24:43,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:24:43,615.615 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:24:43,683.683 INFO    ] No existing commands found in stream
[2026-06-27 03:24:48,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:24:48,699.699 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-27 03:24:53,046.046 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 03:24:53,049.049 INFO    ] Checking for system updates...
[2026-06-27 03:24:53,089.089 INFO    ] 200
[2026-06-27 03:24:53,092.092 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:24:53,155.155 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:24:53,157.157 INFO    ] No update needed
[2026-06-27 03:24:53,158.158 INFO    ] Checking for camera pi updates...
[2026-06-27 03:24:53,180.180 INFO    ] 200
[2026-06-27 03:24:53,182.182 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:24:53,208.208 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:24:53,338.338 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:24:53,340.340 INFO    ] No camera update needed
[2026-06-27 03:24:53,341.341 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:24:53,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:24:53,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:24:53,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:24:55,392.392 INFO    ] ================================================
[2026-06-27 03:24:55,408.408 INFO    ] Launching Daemon at Sat Jun 27 03:24:55 IST 2026
[2026-06-27 03:24:55,419.419 INFO    ] ================================================
[2026-06-27 03:24:55,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:24:55
[2026-06-27 03:24:56,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:24:56,244.244 INFO    ] Initializing speech engine...
[2026-06-27 03:24:56,259.259 INFO    ] 2026-06-27 03:24:56
[2026-06-27 03:24:56,480.480 INFO    ] 2026-06-27 03:24:56
[2026-06-27 03:24:56,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:24:56,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:24:56,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:24:56,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:24:56,937.937 INFO    ] time= 27/06/2026 03:24:56
[2026-06-27 03:24:56,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:24:56,969.969 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:24:57,040.040 INFO    ] No existing commands found in stream
[2026-06-27 03:25:02,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:25:02,048.048 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-27 03:25:04,121.121 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 03:25:04,122.122 INFO    ] Checking for system updates...
[2026-06-27 03:25:04,146.146 INFO    ] 200
[2026-06-27 03:25:04,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:25:04,177.177 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:25:04,178.178 INFO    ] No update needed
[2026-06-27 03:25:04,180.180 INFO    ] Checking for camera pi updates...
[2026-06-27 03:25:04,202.202 INFO    ] 200
[2026-06-27 03:25:04,204.204 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:25:04,229.229 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:25:04,265.265 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:25:04,267.267 INFO    ] No camera update needed
[2026-06-27 03:25:04,268.268 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:25:04,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:25:04,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:25:04,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:25:06,317.317 INFO    ] ================================================
[2026-06-27 03:25:06,341.341 INFO    ] Launching Daemon at Sat Jun 27 03:25:06 IST 2026
[2026-06-27 03:25:06,352.352 INFO    ] ================================================
[2026-06-27 03:25:06,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:25:06
[2026-06-27 03:25:07,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:25:07,192.192 INFO    ] Initializing speech engine...
[2026-06-27 03:25:07,198.198 INFO    ] 2026-06-27 03:25:07
[2026-06-27 03:25:07,401.401 INFO    ] 2026-06-27 03:25:07
[2026-06-27 03:25:07,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:25:07,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:25:07,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:25:07,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:25:07,821.821 INFO    ] time= 27/06/2026 03:25:07
[2026-06-27 03:25:07,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:25:07,850.850 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:25:07,916.916 INFO    ] No existing commands found in stream
[2026-06-27 03:25:12,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:25:12,930.930 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-27 03:25:13,530.530 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:25:13,532.532 INFO    ] Checking for system updates...
[2026-06-27 03:25:13,554.554 INFO    ] 200
[2026-06-27 03:25:13,555.555 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:25:13,586.586 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:25:13,588.588 INFO    ] No update needed
[2026-06-27 03:25:13,589.589 INFO    ] Checking for camera pi updates...
[2026-06-27 03:25:13,609.609 INFO    ] 200
[2026-06-27 03:25:13,611.611 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:25:13,635.635 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:25:13,675.675 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:25:13,676.676 INFO    ] No camera update needed
[2026-06-27 03:25:13,678.678 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:25:13,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:25:13,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:25:13,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:25:15,726.726 INFO    ] ================================================
[2026-06-27 03:25:15,741.741 INFO    ] Launching Daemon at Sat Jun 27 03:25:15 IST 2026
[2026-06-27 03:25:15,752.752 INFO    ] ================================================
[2026-06-27 03:25:16,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:25:16
[2026-06-27 03:25:16,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:25:16,629.629 INFO    ] Initializing speech engine...
[2026-06-27 03:25:16,634.634 INFO    ] 2026-06-27 03:25:16
[2026-06-27 03:25:16,849.849 INFO    ] 2026-06-27 03:25:16
[2026-06-27 03:25:16,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:25:17,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:25:17,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:25:17,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:25:17,274.274 INFO    ] time= 27/06/2026 03:25:17
[2026-06-27 03:25:17,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:25:17,305.305 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:25:17,374.374 INFO    ] No existing commands found in stream
[2026-06-27 03:25:22,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:25:22,387.387 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-27 03:25:26,258.258 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:25:26,260.260 INFO    ] Checking for system updates...
[2026-06-27 03:25:26,281.281 INFO    ] 200
[2026-06-27 03:25:26,283.283 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:25:26,317.317 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:25:26,319.319 INFO    ] No update needed
[2026-06-27 03:25:26,320.320 INFO    ] Checking for camera pi updates...
[2026-06-27 03:25:26,342.342 INFO    ] 200
[2026-06-27 03:25:26,343.343 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:25:26,367.367 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:25:26,412.412 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:25:26,414.414 INFO    ] No camera update needed
[2026-06-27 03:25:26,415.415 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:25:26,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:25:26,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:25:26,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:25:28,460.460 INFO    ] ================================================
[2026-06-27 03:25:28,475.475 INFO    ] Launching Daemon at Sat Jun 27 03:25:28 IST 2026
[2026-06-27 03:25:28,485.485 INFO    ] ================================================
[2026-06-27 03:25:28,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:25:28
[2026-06-27 03:25:29,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:25:29,265.265 INFO    ] Initializing speech engine...
[2026-06-27 03:25:29,268.268 INFO    ] 2026-06-27 03:25:29
[2026-06-27 03:25:29,484.484 INFO    ] 2026-06-27 03:25:29
[2026-06-27 03:25:29,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:25:29,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:25:29,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:25:29,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:25:29,904.904 INFO    ] time= 27/06/2026 03:25:29
[2026-06-27 03:25:29,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:25:29,934.934 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:25:30,001.001 INFO    ] No existing commands found in stream
[2026-06-27 03:25:35,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:25:35,013.013 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-27 03:25:36,367.367 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 03:25:36,368.368 INFO    ] Checking for system updates...
[2026-06-27 03:25:36,389.389 INFO    ] 200
[2026-06-27 03:25:36,390.390 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:25:36,424.424 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:25:36,425.425 INFO    ] No update needed
[2026-06-27 03:25:36,426.426 INFO    ] Checking for camera pi updates...
[2026-06-27 03:25:36,447.447 INFO    ] 200
[2026-06-27 03:25:36,448.448 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:25:36,473.473 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:25:36,509.509 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:25:36,511.511 INFO    ] No camera update needed
[2026-06-27 03:25:36,512.512 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:25:36,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:25:36,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:25:36,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:25:38,560.560 INFO    ] ================================================
[2026-06-27 03:25:38,575.575 INFO    ] Launching Daemon at Sat Jun 27 03:25:38 IST 2026
[2026-06-27 03:25:38,586.586 INFO    ] ================================================
[2026-06-27 03:25:38,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:25:38
[2026-06-27 03:25:39,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:25:39,476.476 INFO    ] Initializing speech engine...
[2026-06-27 03:25:39,481.481 INFO    ] 2026-06-27 03:25:39
[2026-06-27 03:25:39,696.696 INFO    ] 2026-06-27 03:25:39
[2026-06-27 03:25:39,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:25:39,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:25:39,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:25:40,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:25:40,129.129 INFO    ] time= 27/06/2026 03:25:40
[2026-06-27 03:25:40,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:25:40,187.187 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:25:40,266.266 INFO    ] No existing commands found in stream
[2026-06-27 03:25:45,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:25:45,278.278 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-27 03:25:48,011.011 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:25:48,012.012 INFO    ] Checking for system updates...
[2026-06-27 03:25:48,033.033 INFO    ] 200
[2026-06-27 03:25:48,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:25:48,065.065 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:25:48,066.066 INFO    ] No update needed
[2026-06-27 03:25:48,068.068 INFO    ] Checking for camera pi updates...
[2026-06-27 03:25:48,087.087 INFO    ] 200
[2026-06-27 03:25:48,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:25:48,114.114 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:25:48,160.160 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:25:48,161.161 INFO    ] No camera update needed
[2026-06-27 03:25:48,163.163 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:25:48,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:25:48,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:25:48,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:25:50,209.209 INFO    ] ================================================
[2026-06-27 03:25:50,225.225 INFO    ] Launching Daemon at Sat Jun 27 03:25:50 IST 2026
[2026-06-27 03:25:50,235.235 INFO    ] ================================================
[2026-06-27 03:25:50,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:25:50
[2026-06-27 03:25:50,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:25:51,046.046 INFO    ] Initializing speech engine...
[2026-06-27 03:25:51,055.055 INFO    ] 2026-06-27 03:25:51
[2026-06-27 03:25:51,258.258 INFO    ] 2026-06-27 03:25:51
[2026-06-27 03:25:51,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:25:51,470.470 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:25:51,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:25:51,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:25:51,697.697 INFO    ] time= 27/06/2026 03:25:51
[2026-06-27 03:25:51,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:25:51,704.704 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:25:51,770.770 INFO    ] No existing commands found in stream
[2026-06-27 03:25:56,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:25:56,782.782 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-27 03:25:59,849.849 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 03:25:59,851.851 INFO    ] Checking for system updates...
[2026-06-27 03:25:59,874.874 INFO    ] 200
[2026-06-27 03:25:59,875.875 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:25:59,909.909 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:25:59,910.910 INFO    ] No update needed
[2026-06-27 03:25:59,912.912 INFO    ] Checking for camera pi updates...
[2026-06-27 03:25:59,932.932 INFO    ] 200
[2026-06-27 03:25:59,933.933 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:25:59,959.959 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:26:00,000.000 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:26:00,002.002 INFO    ] No camera update needed
[2026-06-27 03:26:00,003.003 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:26:00,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:26:00,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:26:00,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:26:02,045.045 INFO    ] ================================================
[2026-06-27 03:26:02,058.058 INFO    ] Launching Daemon at Sat Jun 27 03:26:02 IST 2026
[2026-06-27 03:26:02,068.068 INFO    ] ================================================
[2026-06-27 03:26:02,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:26:02
[2026-06-27 03:26:02,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:26:02,965.965 INFO    ] Initializing speech engine...
[2026-06-27 03:26:02,968.968 INFO    ] 2026-06-27 03:26:02
[2026-06-27 03:26:03,178.178 INFO    ] 2026-06-27 03:26:03
[2026-06-27 03:26:03,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:26:03,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:26:03,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:26:03,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:26:03,588.588 INFO    ] time= 27/06/2026 03:26:03
[2026-06-27 03:26:03,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:26:03,636.636 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:26:03,708.708 INFO    ] No existing commands found in stream
[2026-06-27 03:26:08,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:26:08,723.723 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-27 03:26:11,653.653 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 03:26:11,655.655 INFO    ] Checking for system updates...
[2026-06-27 03:26:11,677.677 INFO    ] 200
[2026-06-27 03:26:11,679.679 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:26:11,709.709 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:26:11,711.711 INFO    ] No update needed
[2026-06-27 03:26:11,712.712 INFO    ] Checking for camera pi updates...
[2026-06-27 03:26:11,731.731 INFO    ] 200
[2026-06-27 03:26:11,733.733 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:26:11,756.756 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:26:11,795.795 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:26:11,796.796 INFO    ] No camera update needed
[2026-06-27 03:26:11,797.797 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:26:11,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:26:11,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:26:11,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:26:13,842.842 INFO    ] ================================================
[2026-06-27 03:26:13,858.858 INFO    ] Launching Daemon at Sat Jun 27 03:26:13 IST 2026
[2026-06-27 03:26:13,869.869 INFO    ] ================================================
[2026-06-27 03:26:14,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:26:14
[2026-06-27 03:26:14,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:26:14,675.675 INFO    ] Initializing speech engine...
[2026-06-27 03:26:14,680.680 INFO    ] 2026-06-27 03:26:14
[2026-06-27 03:26:14,884.884 INFO    ] 2026-06-27 03:26:14
[2026-06-27 03:26:14,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:26:15,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:26:15,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:26:15,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:26:15,296.296 INFO    ] time= 27/06/2026 03:26:15
[2026-06-27 03:26:15,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:26:15,333.333 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:26:15,400.400 INFO    ] No existing commands found in stream
[2026-06-27 03:26:20,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:26:20,412.412 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-27 03:26:21,925.925 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 03:26:21,927.927 INFO    ] Checking for system updates...
[2026-06-27 03:26:21,948.948 INFO    ] 200
[2026-06-27 03:26:21,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:26:21,980.980 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:26:21,981.981 INFO    ] No update needed
[2026-06-27 03:26:21,982.982 INFO    ] Checking for camera pi updates...
[2026-06-27 03:26:22,003.003 INFO    ] 200
[2026-06-27 03:26:22,005.005 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:26:22,029.029 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:26:22,065.065 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:26:22,066.066 INFO    ] No camera update needed
[2026-06-27 03:26:22,068.068 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:26:22,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:26:22,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:26:22,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:26:24,114.114 INFO    ] ================================================
[2026-06-27 03:26:24,129.129 INFO    ] Launching Daemon at Sat Jun 27 03:26:24 IST 2026
[2026-06-27 03:26:24,141.141 INFO    ] ================================================
[2026-06-27 03:26:24,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:26:24
[2026-06-27 03:26:24,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:26:24,915.915 INFO    ] Initializing speech engine...
[2026-06-27 03:26:24,920.920 INFO    ] 2026-06-27 03:26:24
[2026-06-27 03:26:25,140.140 INFO    ] 2026-06-27 03:26:25
[2026-06-27 03:26:25,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:26:25,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:26:25,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:26:25,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:26:25,585.585 INFO    ] time= 27/06/2026 03:26:25
[2026-06-27 03:26:25,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:26:25,597.597 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:26:25,665.665 INFO    ] No existing commands found in stream
[2026-06-27 03:26:30,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:26:30,681.681 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-27 03:26:33,614.614 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:26:33,616.616 INFO    ] Checking for system updates...
[2026-06-27 03:26:33,638.638 INFO    ] 200
[2026-06-27 03:26:33,640.640 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:26:33,673.673 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:26:33,674.674 INFO    ] No update needed
[2026-06-27 03:26:33,676.676 INFO    ] Checking for camera pi updates...
[2026-06-27 03:26:33,696.696 INFO    ] 200
[2026-06-27 03:26:33,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:26:33,723.723 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:26:33,773.773 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:26:33,775.775 INFO    ] No camera update needed
[2026-06-27 03:26:33,776.776 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:26:33,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:26:33,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:26:33,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:26:35,823.823 INFO    ] ================================================
[2026-06-27 03:26:35,838.838 INFO    ] Launching Daemon at Sat Jun 27 03:26:35 IST 2026
[2026-06-27 03:26:35,849.849 INFO    ] ================================================
[2026-06-27 03:26:36,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:26:36
[2026-06-27 03:26:36,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:26:36,632.632 INFO    ] Initializing speech engine...
[2026-06-27 03:26:36,636.636 INFO    ] 2026-06-27 03:26:36
[2026-06-27 03:26:36,840.840 INFO    ] 2026-06-27 03:26:36
[2026-06-27 03:26:36,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:26:37,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:26:37,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:26:37,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:26:37,256.256 INFO    ] time= 27/06/2026 03:26:37
[2026-06-27 03:26:37,280.280 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:26:37,286.286 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:26:37,352.352 INFO    ] No existing commands found in stream
[2026-06-27 03:26:42,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:26:42,365.365 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-27 03:26:43,119.119 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:26:43,120.120 INFO    ] Checking for system updates...
[2026-06-27 03:26:43,141.141 INFO    ] 200
[2026-06-27 03:26:43,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:26:43,175.175 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:26:43,177.177 INFO    ] No update needed
[2026-06-27 03:26:43,178.178 INFO    ] Checking for camera pi updates...
[2026-06-27 03:26:43,197.197 INFO    ] 200
[2026-06-27 03:26:43,199.199 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:26:43,222.222 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:26:43,261.261 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:26:43,263.263 INFO    ] No camera update needed
[2026-06-27 03:26:43,264.264 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:26:43,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:26:43,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:26:43,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:26:45,311.311 INFO    ] ================================================
[2026-06-27 03:26:45,328.328 INFO    ] Launching Daemon at Sat Jun 27 03:26:45 IST 2026
[2026-06-27 03:26:45,339.339 INFO    ] ================================================
[2026-06-27 03:26:45,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:26:45
[2026-06-27 03:26:45,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:26:46,128.128 INFO    ] Initializing speech engine...
[2026-06-27 03:26:46,137.137 INFO    ] 2026-06-27 03:26:46
[2026-06-27 03:26:46,344.344 INFO    ] 2026-06-27 03:26:46
[2026-06-27 03:26:46,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:26:46,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:26:46,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:26:46,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:26:46,759.759 INFO    ] time= 27/06/2026 03:26:46
[2026-06-27 03:26:46,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:26:46,799.799 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:26:46,864.864 INFO    ] No existing commands found in stream
[2026-06-27 03:26:51,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:26:51,878.878 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-27 03:26:53,529.529 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 03:26:53,531.531 INFO    ] Checking for system updates...
[2026-06-27 03:26:53,552.552 INFO    ] 200
[2026-06-27 03:26:53,553.553 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:26:53,586.586 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:26:53,588.588 INFO    ] No update needed
[2026-06-27 03:26:53,590.590 INFO    ] Checking for camera pi updates...
[2026-06-27 03:26:53,610.610 INFO    ] 200
[2026-06-27 03:26:53,611.611 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:26:53,635.635 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:26:53,662.662 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:26:53,663.663 INFO    ] No camera update needed
[2026-06-27 03:26:53,665.665 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:26:53,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:26:53,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:26:53,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:26:55,712.712 INFO    ] ================================================
[2026-06-27 03:26:55,727.727 INFO    ] Launching Daemon at Sat Jun 27 03:26:55 IST 2026
[2026-06-27 03:26:55,739.739 INFO    ] ================================================
[2026-06-27 03:26:56,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:26:56
[2026-06-27 03:26:56,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:26:56,542.542 INFO    ] Initializing speech engine...
[2026-06-27 03:26:56,547.547 INFO    ] 2026-06-27 03:26:56
[2026-06-27 03:26:56,757.757 INFO    ] 2026-06-27 03:26:56
[2026-06-27 03:26:56,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:26:56,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:26:56,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:26:57,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:26:57,198.198 INFO    ] time= 27/06/2026 03:26:57
[2026-06-27 03:26:57,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:26:57,206.206 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:26:57,273.273 INFO    ] No existing commands found in stream
[2026-06-27 03:27:02,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:27:02,289.289 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-27 03:27:05,832.832 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:27:05,834.834 INFO    ] Checking for system updates...
[2026-06-27 03:27:05,856.856 INFO    ] 200
[2026-06-27 03:27:05,857.857 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:27:05,896.896 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:27:05,898.898 INFO    ] No update needed
[2026-06-27 03:27:05,900.900 INFO    ] Checking for camera pi updates...
[2026-06-27 03:27:05,929.929 INFO    ] 200
[2026-06-27 03:27:05,931.931 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:27:05,965.965 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:27:06,002.002 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:27:06,003.003 INFO    ] No camera update needed
[2026-06-27 03:27:06,005.005 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:27:06,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:27:06,010.010 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:27:06,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:27:08,055.055 INFO    ] ================================================
[2026-06-27 03:27:08,071.071 INFO    ] Launching Daemon at Sat Jun 27 03:27:08 IST 2026
[2026-06-27 03:27:08,083.083 INFO    ] ================================================
[2026-06-27 03:27:08,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:27:08
[2026-06-27 03:27:08,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:27:09,038.038 INFO    ] Initializing speech engine...
[2026-06-27 03:27:09,042.042 INFO    ] 2026-06-27 03:27:09
[2026-06-27 03:27:09,251.251 INFO    ] 2026-06-27 03:27:09
[2026-06-27 03:27:09,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:27:09,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:27:09,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:27:09,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:27:09,677.677 INFO    ] time= 27/06/2026 03:27:09
[2026-06-27 03:27:09,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:27:09,706.706 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:27:09,772.772 INFO    ] No existing commands found in stream
[2026-06-27 03:27:14,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:27:14,787.787 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-27 03:27:16,991.991 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:27:16,993.993 INFO    ] Checking for system updates...
[2026-06-27 03:27:17,015.015 INFO    ] 200
[2026-06-27 03:27:17,016.016 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:27:17,047.047 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:27:17,048.048 INFO    ] No update needed
[2026-06-27 03:27:17,050.050 INFO    ] Checking for camera pi updates...
[2026-06-27 03:27:17,070.070 INFO    ] 200
[2026-06-27 03:27:17,072.072 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:27:17,095.095 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:27:17,131.131 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:27:17,133.133 INFO    ] No camera update needed
[2026-06-27 03:27:17,134.134 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:27:17,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:27:17,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:27:17,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:27:19,179.179 INFO    ] ================================================
[2026-06-27 03:27:19,195.195 INFO    ] Launching Daemon at Sat Jun 27 03:27:19 IST 2026
[2026-06-27 03:27:19,206.206 INFO    ] ================================================
[2026-06-27 03:27:19,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:27:19
[2026-06-27 03:27:19,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:27:19,986.986 INFO    ] Initializing speech engine...
[2026-06-27 03:27:19,992.992 INFO    ] 2026-06-27 03:27:19
[2026-06-27 03:27:20,202.202 INFO    ] 2026-06-27 03:27:20
[2026-06-27 03:27:20,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:27:20,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:27:20,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:27:20,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:27:20,638.638 INFO    ] time= 27/06/2026 03:27:20
[2026-06-27 03:27:20,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:27:20,685.685 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:27:20,761.761 INFO    ] No existing commands found in stream
[2026-06-27 03:27:25,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:27:25,773.773 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-27 03:27:28,843.843 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:27:28,845.845 INFO    ] Checking for system updates...
[2026-06-27 03:27:28,867.867 INFO    ] 200
[2026-06-27 03:27:28,868.868 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:27:28,898.898 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:27:28,900.900 INFO    ] No update needed
[2026-06-27 03:27:28,901.901 INFO    ] Checking for camera pi updates...
[2026-06-27 03:27:28,921.921 INFO    ] 200
[2026-06-27 03:27:28,922.922 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:27:28,947.947 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:27:28,986.986 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:27:28,987.987 INFO    ] No camera update needed
[2026-06-27 03:27:28,989.989 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:27:28,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:27:28,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:27:28,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:27:31,034.034 INFO    ] ================================================
[2026-06-27 03:27:31,050.050 INFO    ] Launching Daemon at Sat Jun 27 03:27:31 IST 2026
[2026-06-27 03:27:31,062.062 INFO    ] ================================================
[2026-06-27 03:27:31,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:27:31
[2026-06-27 03:27:31,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:27:31,889.889 INFO    ] Initializing speech engine...
[2026-06-27 03:27:31,900.900 INFO    ] 2026-06-27 03:27:31
[2026-06-27 03:27:32,104.104 INFO    ] 2026-06-27 03:27:32
[2026-06-27 03:27:32,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:27:32,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:27:32,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:27:32,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:27:32,614.614 INFO    ] time= 27/06/2026 03:27:32
[2026-06-27 03:27:32,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:27:32,655.655 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:27:32,729.729 INFO    ] No existing commands found in stream
[2026-06-27 03:27:37,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:27:37,743.743 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-27 03:27:38,195.195 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:27:38,196.196 INFO    ] Checking for system updates...
[2026-06-27 03:27:38,217.217 INFO    ] 200
[2026-06-27 03:27:38,218.218 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:27:38,249.249 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:27:38,250.250 INFO    ] No update needed
[2026-06-27 03:27:38,252.252 INFO    ] Checking for camera pi updates...
[2026-06-27 03:27:38,274.274 INFO    ] 200
[2026-06-27 03:27:38,275.275 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:27:38,299.299 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:27:38,321.321 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:27:38,322.322 INFO    ] No camera update needed
[2026-06-27 03:27:38,323.323 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:27:38,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:27:38,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:27:38,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:27:40,369.369 INFO    ] ================================================
[2026-06-27 03:27:40,384.384 INFO    ] Launching Daemon at Sat Jun 27 03:27:40 IST 2026
[2026-06-27 03:27:40,396.396 INFO    ] ================================================
[2026-06-27 03:27:40,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:27:40
[2026-06-27 03:27:41,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:27:41,218.218 INFO    ] Initializing speech engine...
[2026-06-27 03:27:41,221.221 INFO    ] 2026-06-27 03:27:41
[2026-06-27 03:27:41,429.429 INFO    ] 2026-06-27 03:27:41
[2026-06-27 03:27:41,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:27:41,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:27:41,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:27:41,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:27:41,879.879 INFO    ] time= 27/06/2026 03:27:41
[2026-06-27 03:27:41,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:27:41,887.887 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:27:41,954.954 INFO    ] No existing commands found in stream
[2026-06-27 03:27:46,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:27:46,966.966 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-27 03:27:51,038.038 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 03:27:51,040.040 INFO    ] Checking for system updates...
[2026-06-27 03:27:51,061.061 INFO    ] 200
[2026-06-27 03:27:51,062.062 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:27:51,097.097 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:27:51,098.098 INFO    ] No update needed
[2026-06-27 03:27:51,099.099 INFO    ] Checking for camera pi updates...
[2026-06-27 03:27:51,120.120 INFO    ] 200
[2026-06-27 03:27:51,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:27:51,146.146 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:27:51,188.188 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:27:51,189.189 INFO    ] No camera update needed
[2026-06-27 03:27:51,191.191 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:27:51,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:27:51,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:27:51,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:27:53,237.237 INFO    ] ================================================
[2026-06-27 03:27:53,252.252 INFO    ] Launching Daemon at Sat Jun 27 03:27:53 IST 2026
[2026-06-27 03:27:53,263.263 INFO    ] ================================================
[2026-06-27 03:27:53,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:27:53
[2026-06-27 03:27:53,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:27:54,130.130 INFO    ] Initializing speech engine...
[2026-06-27 03:27:54,140.140 INFO    ] 2026-06-27 03:27:54
[2026-06-27 03:27:54,350.350 INFO    ] 2026-06-27 03:27:54
[2026-06-27 03:27:54,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:27:54,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:27:54,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:27:54,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:27:54,791.791 INFO    ] time= 27/06/2026 03:27:54
[2026-06-27 03:27:54,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:27:54,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:27:54,865.865 INFO    ] No existing commands found in stream
[2026-06-27 03:27:59,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:27:59,879.879 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-27 03:28:00,449.449 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:28:00,451.451 INFO    ] Checking for system updates...
[2026-06-27 03:28:00,472.472 INFO    ] 200
[2026-06-27 03:28:00,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:28:00,505.505 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:28:00,506.506 INFO    ] No update needed
[2026-06-27 03:28:00,507.507 INFO    ] Checking for camera pi updates...
[2026-06-27 03:28:00,529.529 INFO    ] 200
[2026-06-27 03:28:00,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:28:00,557.557 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:28:00,581.581 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:28:00,583.583 INFO    ] No camera update needed
[2026-06-27 03:28:00,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:28:00,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:28:00,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:28:00,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:28:02,626.626 INFO    ] ================================================
[2026-06-27 03:28:02,636.636 INFO    ] Launching Daemon at Sat Jun 27 03:28:02 IST 2026
[2026-06-27 03:28:02,647.647 INFO    ] ================================================
[2026-06-27 03:28:03,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:28:03
[2026-06-27 03:28:03,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:28:03,459.459 INFO    ] Initializing speech engine...
[2026-06-27 03:28:03,464.464 INFO    ] 2026-06-27 03:28:03
[2026-06-27 03:28:03,681.681 INFO    ] 2026-06-27 03:28:03
[2026-06-27 03:28:03,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:28:03,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:28:03,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:28:04,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:28:04,098.098 INFO    ] time= 27/06/2026 03:28:04
[2026-06-27 03:28:04,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:28:04,128.128 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:28:04,195.195 INFO    ] No existing commands found in stream
[2026-06-27 03:28:09,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:28:09,207.207 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-27 03:28:13,172.172 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 03:28:13,174.174 INFO    ] Checking for system updates...
[2026-06-27 03:28:13,195.195 INFO    ] 200
[2026-06-27 03:28:13,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:28:13,228.228 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:28:13,229.229 INFO    ] No update needed
[2026-06-27 03:28:13,231.231 INFO    ] Checking for camera pi updates...
[2026-06-27 03:28:13,251.251 INFO    ] 200
[2026-06-27 03:28:13,252.252 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:28:13,280.280 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:28:13,330.330 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:28:13,331.331 INFO    ] No camera update needed
[2026-06-27 03:28:13,332.332 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:28:13,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:28:13,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:28:13,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:28:15,381.381 INFO    ] ================================================
[2026-06-27 03:28:15,397.397 INFO    ] Launching Daemon at Sat Jun 27 03:28:15 IST 2026
[2026-06-27 03:28:15,408.408 INFO    ] ================================================
[2026-06-27 03:28:15,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:28:15
[2026-06-27 03:28:16,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:28:16,216.216 INFO    ] Initializing speech engine...
[2026-06-27 03:28:16,224.224 INFO    ] 2026-06-27 03:28:16
[2026-06-27 03:28:16,437.437 INFO    ] 2026-06-27 03:28:16
[2026-06-27 03:28:16,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:28:16,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:28:16,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:28:16,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:28:16,862.862 INFO    ] time= 27/06/2026 03:28:16
[2026-06-27 03:28:16,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:28:16,893.893 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:28:16,960.960 INFO    ] No existing commands found in stream
[2026-06-27 03:28:21,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:28:21,972.972 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-27 03:28:24,180.180 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 03:28:24,181.181 INFO    ] Checking for system updates...
[2026-06-27 03:28:24,206.206 INFO    ] 200
[2026-06-27 03:28:24,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:28:24,241.241 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:28:24,242.242 INFO    ] No update needed
[2026-06-27 03:28:24,244.244 INFO    ] Checking for camera pi updates...
[2026-06-27 03:28:24,264.264 INFO    ] 200
[2026-06-27 03:28:24,265.265 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:28:24,289.289 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:28:24,315.315 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:28:24,316.316 INFO    ] No camera update needed
[2026-06-27 03:28:24,318.318 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:28:24,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:28:24,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:28:24,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:28:26,363.363 INFO    ] ================================================
[2026-06-27 03:28:26,379.379 INFO    ] Launching Daemon at Sat Jun 27 03:28:26 IST 2026
[2026-06-27 03:28:26,390.390 INFO    ] ================================================
[2026-06-27 03:28:26,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:28:26
[2026-06-27 03:28:27,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:28:27,171.171 INFO    ] Initializing speech engine...
[2026-06-27 03:28:27,184.184 INFO    ] 2026-06-27 03:28:27
[2026-06-27 03:28:27,390.390 INFO    ] 2026-06-27 03:28:27
[2026-06-27 03:28:27,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:28:27,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:28:27,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:28:27,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:28:27,788.788 INFO    ] time= 27/06/2026 03:28:27
[2026-06-27 03:28:27,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:28:27,836.836 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:28:27,927.927 INFO    ] No existing commands found in stream
[2026-06-27 03:28:32,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:28:32,943.943 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-27 03:28:35,900.900 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:28:35,901.901 INFO    ] Checking for system updates...
[2026-06-27 03:28:35,922.922 INFO    ] 200
[2026-06-27 03:28:35,923.923 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:28:35,955.955 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:28:35,956.956 INFO    ] No update needed
[2026-06-27 03:28:35,957.957 INFO    ] Checking for camera pi updates...
[2026-06-27 03:28:35,976.976 INFO    ] 200
[2026-06-27 03:28:35,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:28:36,003.003 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:28:36,036.036 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:28:36,038.038 INFO    ] No camera update needed
[2026-06-27 03:28:36,039.039 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:28:36,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:28:36,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:28:36,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:28:38,085.085 INFO    ] ================================================
[2026-06-27 03:28:38,100.100 INFO    ] Launching Daemon at Sat Jun 27 03:28:38 IST 2026
[2026-06-27 03:28:38,111.111 INFO    ] ================================================
[2026-06-27 03:28:38,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:28:38
[2026-06-27 03:28:38,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:28:38,896.896 INFO    ] Initializing speech engine...
[2026-06-27 03:28:38,900.900 INFO    ] 2026-06-27 03:28:38
[2026-06-27 03:28:39,118.118 INFO    ] 2026-06-27 03:28:39
[2026-06-27 03:28:39,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:28:39,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:28:39,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:28:39,473.473 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:28:39,541.541 INFO    ] time= 27/06/2026 03:28:39
[2026-06-27 03:28:39,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:28:39,571.571 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:28:39,639.639 INFO    ] No existing commands found in stream
[2026-06-27 03:28:44,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:28:44,652.652 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-27 03:28:46,044.044 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 03:28:46,046.046 INFO    ] Checking for system updates...
[2026-06-27 03:28:46,067.067 INFO    ] 200
[2026-06-27 03:28:46,069.069 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:28:46,102.102 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:28:46,104.104 INFO    ] No update needed
[2026-06-27 03:28:46,105.105 INFO    ] Checking for camera pi updates...
[2026-06-27 03:28:46,128.128 INFO    ] 200
[2026-06-27 03:28:46,130.130 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:28:46,157.157 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:28:46,179.179 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:28:46,181.181 INFO    ] No camera update needed
[2026-06-27 03:28:46,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:28:46,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:28:46,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:28:46,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:28:48,228.228 INFO    ] ================================================
[2026-06-27 03:28:48,244.244 INFO    ] Launching Daemon at Sat Jun 27 03:28:48 IST 2026
[2026-06-27 03:28:48,254.254 INFO    ] ================================================
[2026-06-27 03:28:48,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:28:48
[2026-06-27 03:28:48,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:28:49,140.140 INFO    ] Initializing speech engine...
[2026-06-27 03:28:49,147.147 INFO    ] 2026-06-27 03:28:49
[2026-06-27 03:28:49,360.360 INFO    ] 2026-06-27 03:28:49
[2026-06-27 03:28:49,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:28:49,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:28:49,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:28:49,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:28:49,792.792 INFO    ] time= 27/06/2026 03:28:49
[2026-06-27 03:28:49,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:28:49,822.822 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:28:49,914.914 INFO    ] No existing commands found in stream
[2026-06-27 03:28:54,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:28:54,927.927 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-27 03:28:58,238.238 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:28:58,239.239 INFO    ] Checking for system updates...
[2026-06-27 03:28:58,262.262 INFO    ] 200
[2026-06-27 03:28:58,264.264 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:28:58,296.296 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:28:58,297.297 INFO    ] No update needed
[2026-06-27 03:28:58,298.298 INFO    ] Checking for camera pi updates...
[2026-06-27 03:28:58,319.319 INFO    ] 200
[2026-06-27 03:28:58,320.320 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:28:58,345.345 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:28:58,369.369 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:28:58,371.371 INFO    ] No camera update needed
[2026-06-27 03:28:58,372.372 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:28:58,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:28:58,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:28:58,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:29:00,418.418 INFO    ] ================================================
[2026-06-27 03:29:00,434.434 INFO    ] Launching Daemon at Sat Jun 27 03:29:00 IST 2026
[2026-06-27 03:29:00,445.445 INFO    ] ================================================
[2026-06-27 03:29:00,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:29:00
[2026-06-27 03:29:01,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:29:01,233.233 INFO    ] Initializing speech engine...
[2026-06-27 03:29:01,241.241 INFO    ] 2026-06-27 03:29:01
[2026-06-27 03:29:01,436.436 INFO    ] 2026-06-27 03:29:01
[2026-06-27 03:29:01,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:29:01,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:29:01,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:29:01,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:29:01,854.854 INFO    ] time= 27/06/2026 03:29:01
[2026-06-27 03:29:01,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:29:01,881.881 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:29:01,999.999 INFO    ] No existing commands found in stream
[2026-06-27 03:29:07,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:29:07,028.028 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-27 03:29:09,523.523 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 03:29:09,525.525 INFO    ] Checking for system updates...
[2026-06-27 03:29:09,546.546 INFO    ] 200
[2026-06-27 03:29:09,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:29:09,577.577 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:29:09,579.579 INFO    ] No update needed
[2026-06-27 03:29:09,580.580 INFO    ] Checking for camera pi updates...
[2026-06-27 03:29:09,599.599 INFO    ] 200
[2026-06-27 03:29:09,601.601 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:29:09,625.625 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:29:09,750.750 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:29:09,751.751 INFO    ] No camera update needed
[2026-06-27 03:29:09,752.752 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:29:09,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:29:09,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:29:09,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:29:11,797.797 INFO    ] ================================================
[2026-06-27 03:29:11,812.812 INFO    ] Launching Daemon at Sat Jun 27 03:29:11 IST 2026
[2026-06-27 03:29:11,823.823 INFO    ] ================================================
[2026-06-27 03:29:12,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:29:12
[2026-06-27 03:29:12,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:29:12,625.625 INFO    ] Initializing speech engine...
[2026-06-27 03:29:12,635.635 INFO    ] 2026-06-27 03:29:12
[2026-06-27 03:29:12,837.837 INFO    ] 2026-06-27 03:29:12
[2026-06-27 03:29:12,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:29:13,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:29:13,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:29:13,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:29:13,251.251 INFO    ] time= 27/06/2026 03:29:13
[2026-06-27 03:29:13,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:29:13,279.279 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:29:13,351.351 INFO    ] No existing commands found in stream
[2026-06-27 03:29:18,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:29:18,368.368 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-27 03:29:18,786.786 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 03:29:18,788.788 INFO    ] Checking for system updates...
[2026-06-27 03:29:18,808.808 INFO    ] 200
[2026-06-27 03:29:18,810.810 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:29:18,840.840 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:29:18,841.841 INFO    ] No update needed
[2026-06-27 03:29:18,842.842 INFO    ] Checking for camera pi updates...
[2026-06-27 03:29:18,862.862 INFO    ] 200
[2026-06-27 03:29:18,864.864 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:29:18,888.888 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:29:18,926.926 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:29:18,928.928 INFO    ] No camera update needed
[2026-06-27 03:29:18,929.929 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:29:18,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:29:18,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:29:18,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:29:20,974.974 INFO    ] ================================================
[2026-06-27 03:29:20,989.989 INFO    ] Launching Daemon at Sat Jun 27 03:29:20 IST 2026
[2026-06-27 03:29:21,000.000 INFO    ] ================================================
[2026-06-27 03:29:21,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:29:21
[2026-06-27 03:29:21,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:29:21,789.789 INFO    ] Initializing speech engine...
[2026-06-27 03:29:21,800.800 INFO    ] 2026-06-27 03:29:21
[2026-06-27 03:29:22,006.006 INFO    ] 2026-06-27 03:29:21
[2026-06-27 03:29:22,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:29:22,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:29:22,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:29:22,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:29:22,427.427 INFO    ] time= 27/06/2026 03:29:22
[2026-06-27 03:29:22,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:29:22,457.457 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:29:22,524.524 INFO    ] No existing commands found in stream
[2026-06-27 03:29:27,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:29:27,536.536 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-27 03:29:29,726.726 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 03:29:29,727.727 INFO    ] Checking for system updates...
[2026-06-27 03:29:29,748.748 INFO    ] 200
[2026-06-27 03:29:29,749.749 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:29:29,782.782 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:29:29,784.784 INFO    ] No update needed
[2026-06-27 03:29:29,785.785 INFO    ] Checking for camera pi updates...
[2026-06-27 03:29:29,806.806 INFO    ] 200
[2026-06-27 03:29:29,807.807 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:29:29,830.830 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:29:29,873.873 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:29:29,875.875 INFO    ] No camera update needed
[2026-06-27 03:29:29,876.876 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:29:29,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:29:29,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:29:29,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:29:31,914.914 INFO    ] ================================================
[2026-06-27 03:29:31,924.924 INFO    ] Launching Daemon at Sat Jun 27 03:29:31 IST 2026
[2026-06-27 03:29:31,930.930 INFO    ] ================================================
[2026-06-27 03:29:32,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:29:32
[2026-06-27 03:29:32,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:29:32,724.724 INFO    ] Initializing speech engine...
[2026-06-27 03:29:32,729.729 INFO    ] 2026-06-27 03:29:32
[2026-06-27 03:29:32,934.934 INFO    ] 2026-06-27 03:29:32
[2026-06-27 03:29:32,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:29:33,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:29:33,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:29:33,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:29:33,379.379 INFO    ] time= 27/06/2026 03:29:33
[2026-06-27 03:29:33,386.386 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:29:33,387.387 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:29:33,455.455 INFO    ] No existing commands found in stream
[2026-06-27 03:29:38,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:29:38,467.467 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-27 03:29:39,901.901 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:29:39,903.903 INFO    ] Checking for system updates...
[2026-06-27 03:29:39,925.925 INFO    ] 200
[2026-06-27 03:29:39,926.926 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:29:39,958.958 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:29:39,959.959 INFO    ] No update needed
[2026-06-27 03:29:39,961.961 INFO    ] Checking for camera pi updates...
[2026-06-27 03:29:39,981.981 INFO    ] 200
[2026-06-27 03:29:39,983.983 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:29:40,008.008 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:29:40,048.048 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:29:40,050.050 INFO    ] No camera update needed
[2026-06-27 03:29:40,051.051 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:29:40,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:29:40,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:29:40,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:29:42,097.097 INFO    ] ================================================
[2026-06-27 03:29:42,113.113 INFO    ] Launching Daemon at Sat Jun 27 03:29:42 IST 2026
[2026-06-27 03:29:42,123.123 INFO    ] ================================================
[2026-06-27 03:29:42,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:29:42
[2026-06-27 03:29:42,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:29:42,904.904 INFO    ] Initializing speech engine...
[2026-06-27 03:29:42,909.909 INFO    ] 2026-06-27 03:29:42
[2026-06-27 03:29:43,112.112 INFO    ] 2026-06-27 03:29:43
[2026-06-27 03:29:43,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:29:43,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:29:43,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:29:43,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:29:43,557.557 INFO    ] time= 27/06/2026 03:29:43
[2026-06-27 03:29:43,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:29:43,565.565 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:29:43,631.631 INFO    ] No existing commands found in stream
[2026-06-27 03:29:48,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:29:48,645.645 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-27 03:29:52,068.068 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 03:29:52,069.069 INFO    ] Checking for system updates...
[2026-06-27 03:29:52,090.090 INFO    ] 200
[2026-06-27 03:29:52,091.091 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:29:52,124.124 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:29:52,125.125 INFO    ] No update needed
[2026-06-27 03:29:52,127.127 INFO    ] Checking for camera pi updates...
[2026-06-27 03:29:52,147.147 INFO    ] 200
[2026-06-27 03:29:52,149.149 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:29:52,172.172 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:29:52,217.217 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:29:52,219.219 INFO    ] No camera update needed
[2026-06-27 03:29:52,220.220 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:29:52,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:29:52,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:29:52,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:29:54,267.267 INFO    ] ================================================
[2026-06-27 03:29:54,282.282 INFO    ] Launching Daemon at Sat Jun 27 03:29:54 IST 2026
[2026-06-27 03:29:54,292.292 INFO    ] ================================================
[2026-06-27 03:29:54,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:29:54
[2026-06-27 03:29:54,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:29:55,121.121 INFO    ] Initializing speech engine...
[2026-06-27 03:29:55,131.131 INFO    ] 2026-06-27 03:29:55
[2026-06-27 03:29:55,340.340 INFO    ] 2026-06-27 03:29:55
[2026-06-27 03:29:55,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:29:55,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:29:55,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:29:55,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:29:55,785.785 INFO    ] time= 27/06/2026 03:29:55
[2026-06-27 03:29:55,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:29:55,789.789 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:29:55,886.886 INFO    ] No existing commands found in stream
[2026-06-27 03:30:00,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:30:00,898.898 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-27 03:30:02,665.665 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:30:02,668.668 INFO    ] Checking for system updates...
[2026-06-27 03:30:02,699.699 INFO    ] 200
[2026-06-27 03:30:02,701.701 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:30:02,750.750 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:30:02,752.752 INFO    ] No update needed
[2026-06-27 03:30:02,755.755 INFO    ] Checking for camera pi updates...
[2026-06-27 03:30:02,792.792 INFO    ] 200
[2026-06-27 03:30:02,795.795 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:30:02,850.850 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:30:02,877.877 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:30:02,879.879 INFO    ] No camera update needed
[2026-06-27 03:30:02,881.881 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:30:02,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:30:02,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:30:02,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:30:04,935.935 INFO    ] ================================================
[2026-06-27 03:30:04,951.951 INFO    ] Launching Daemon at Sat Jun 27 03:30:04 IST 2026
[2026-06-27 03:30:04,962.962 INFO    ] ================================================
[2026-06-27 03:30:05,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:30:05
[2026-06-27 03:30:05,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:30:05,800.800 INFO    ] Initializing speech engine...
[2026-06-27 03:30:05,806.806 INFO    ] 2026-06-27 03:30:05
[2026-06-27 03:30:06,003.003 INFO    ] 2026-06-27 03:30:06
[2026-06-27 03:30:06,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:30:06,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:30:06,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:30:06,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:30:06,478.478 INFO    ] time= 27/06/2026 03:30:06
[2026-06-27 03:30:06,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:30:06,489.489 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:30:06,556.556 INFO    ] No existing commands found in stream
[2026-06-27 03:30:11,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:30:11,568.568 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-27 03:30:15,962.962 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:30:15,964.964 INFO    ] Checking for system updates...
[2026-06-27 03:30:15,984.984 INFO    ] 200
[2026-06-27 03:30:15,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:30:16,019.019 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:30:16,020.020 INFO    ] No update needed
[2026-06-27 03:30:16,021.021 INFO    ] Checking for camera pi updates...
[2026-06-27 03:30:16,042.042 INFO    ] 200
[2026-06-27 03:30:16,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:30:16,068.068 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:30:16,110.110 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:30:16,111.111 INFO    ] No camera update needed
[2026-06-27 03:30:16,113.113 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:30:16,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:30:16,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:30:16,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:30:18,160.160 INFO    ] ================================================
[2026-06-27 03:30:18,176.176 INFO    ] Launching Daemon at Sat Jun 27 03:30:18 IST 2026
[2026-06-27 03:30:18,187.187 INFO    ] ================================================
[2026-06-27 03:30:18,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:30:18
[2026-06-27 03:30:18,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:30:18,966.966 INFO    ] Initializing speech engine...
[2026-06-27 03:30:18,978.978 INFO    ] 2026-06-27 03:30:18
[2026-06-27 03:30:19,185.185 INFO    ] 2026-06-27 03:30:19
[2026-06-27 03:30:19,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:30:19,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:30:19,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:30:19,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:30:19,596.596 INFO    ] time= 27/06/2026 03:30:19
[2026-06-27 03:30:19,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:30:19,634.634 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:30:19,724.724 INFO    ] No existing commands found in stream
[2026-06-27 03:30:24,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:30:24,741.741 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-27 03:30:26,666.666 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 03:30:26,667.667 INFO    ] Checking for system updates...
[2026-06-27 03:30:26,689.689 INFO    ] 200
[2026-06-27 03:30:26,690.690 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:30:26,722.722 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:30:26,724.724 INFO    ] No update needed
[2026-06-27 03:30:26,725.725 INFO    ] Checking for camera pi updates...
[2026-06-27 03:30:26,745.745 INFO    ] 200
[2026-06-27 03:30:26,746.746 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:30:26,770.770 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:30:26,807.807 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:30:26,809.809 INFO    ] No camera update needed
[2026-06-27 03:30:26,810.810 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:30:26,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:30:26,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:30:26,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:30:28,856.856 INFO    ] ================================================
[2026-06-27 03:30:28,872.872 INFO    ] Launching Daemon at Sat Jun 27 03:30:28 IST 2026
[2026-06-27 03:30:28,882.882 INFO    ] ================================================
[2026-06-27 03:30:29,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:30:29
[2026-06-27 03:30:29,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:30:29,751.751 INFO    ] Initializing speech engine...
[2026-06-27 03:30:29,754.754 INFO    ] 2026-06-27 03:30:29
[2026-06-27 03:30:29,984.984 INFO    ] 2026-06-27 03:30:29
[2026-06-27 03:30:30,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:30:30,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:30:30,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:30:30,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:30:30,427.427 INFO    ] time= 27/06/2026 03:30:30
[2026-06-27 03:30:30,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:30:30,450.450 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:30:30,517.517 INFO    ] No existing commands found in stream
[2026-06-27 03:30:35,532.532 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:30:35,535.535 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-27 03:30:38,342.342 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 03:30:38,343.343 INFO    ] Checking for system updates...
[2026-06-27 03:30:38,366.366 INFO    ] 200
[2026-06-27 03:30:38,368.368 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:30:38,398.398 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:30:38,399.399 INFO    ] No update needed
[2026-06-27 03:30:38,401.401 INFO    ] Checking for camera pi updates...
[2026-06-27 03:30:38,420.420 INFO    ] 200
[2026-06-27 03:30:38,421.421 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:30:38,445.445 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:30:38,486.486 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:30:38,488.488 INFO    ] No camera update needed
[2026-06-27 03:30:38,489.489 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:30:38,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:30:38,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:30:38,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:30:40,535.535 INFO    ] ================================================
[2026-06-27 03:30:40,550.550 INFO    ] Launching Daemon at Sat Jun 27 03:30:40 IST 2026
[2026-06-27 03:30:40,561.561 INFO    ] ================================================
[2026-06-27 03:30:40,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:30:40
[2026-06-27 03:30:41,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:30:41,356.356 INFO    ] Initializing speech engine...
[2026-06-27 03:30:41,361.361 INFO    ] 2026-06-27 03:30:41
[2026-06-27 03:30:41,567.567 INFO    ] 2026-06-27 03:30:41
[2026-06-27 03:30:41,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:30:41,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:30:41,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:30:41,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:30:41,970.970 INFO    ] time= 27/06/2026 03:30:41
[2026-06-27 03:30:42,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:30:42,019.019 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:30:42,086.086 INFO    ] No existing commands found in stream
[2026-06-27 03:30:47,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:30:47,099.099 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-27 03:30:47,714.714 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 03:30:47,715.715 INFO    ] Checking for system updates...
[2026-06-27 03:30:47,737.737 INFO    ] 200
[2026-06-27 03:30:47,738.738 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:30:47,769.769 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:30:47,770.770 INFO    ] No update needed
[2026-06-27 03:30:47,771.771 INFO    ] Checking for camera pi updates...
[2026-06-27 03:30:47,791.791 INFO    ] 200
[2026-06-27 03:30:47,792.792 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:30:47,817.817 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:30:47,854.854 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:30:47,856.856 INFO    ] No camera update needed
[2026-06-27 03:30:47,857.857 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:30:47,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:30:47,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:30:47,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:30:49,905.905 INFO    ] ================================================
[2026-06-27 03:30:49,926.926 INFO    ] Launching Daemon at Sat Jun 27 03:30:49 IST 2026
[2026-06-27 03:30:49,937.937 INFO    ] ================================================
[2026-06-27 03:30:50,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:30:50
[2026-06-27 03:30:50,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:30:50,708.708 INFO    ] Initializing speech engine...
[2026-06-27 03:30:50,721.721 INFO    ] 2026-06-27 03:30:50
[2026-06-27 03:30:50,937.937 INFO    ] 2026-06-27 03:30:50
[2026-06-27 03:30:50,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:30:51,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:30:51,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:30:51,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:30:51,371.371 INFO    ] time= 27/06/2026 03:30:51
[2026-06-27 03:30:51,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:30:51,405.405 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:30:51,514.514 INFO    ] No existing commands found in stream
[2026-06-27 03:30:56,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:30:56,528.528 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-27 03:30:58,214.214 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:30:58,216.216 INFO    ] Checking for system updates...
[2026-06-27 03:30:58,236.236 INFO    ] 200
[2026-06-27 03:30:58,238.238 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:30:58,270.270 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:30:58,271.271 INFO    ] No update needed
[2026-06-27 03:30:58,272.272 INFO    ] Checking for camera pi updates...
[2026-06-27 03:30:58,292.292 INFO    ] 200
[2026-06-27 03:30:58,293.293 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:30:58,320.320 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:30:58,360.360 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:30:58,362.362 INFO    ] No camera update needed
[2026-06-27 03:30:58,363.363 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:30:58,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:30:58,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:30:58,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:31:00,409.409 INFO    ] ================================================
[2026-06-27 03:31:00,424.424 INFO    ] Launching Daemon at Sat Jun 27 03:31:00 IST 2026
[2026-06-27 03:31:00,435.435 INFO    ] ================================================
[2026-06-27 03:31:00,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:31:00
[2026-06-27 03:31:01,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:31:01,251.251 INFO    ] Initializing speech engine...
[2026-06-27 03:31:01,257.257 INFO    ] 2026-06-27 03:31:01
[2026-06-27 03:31:01,479.479 INFO    ] 2026-06-27 03:31:01
[2026-06-27 03:31:01,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:31:01,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:31:01,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:31:01,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:31:01,840.840 INFO    ] time= 27/06/2026 03:31:01
[2026-06-27 03:31:01,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:31:01,857.857 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:31:01,985.985 INFO    ] No existing commands found in stream
[2026-06-27 03:31:07,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:31:07,018.018 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-27 03:31:08,399.399 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 03:31:08,400.400 INFO    ] Checking for system updates...
[2026-06-27 03:31:08,426.426 INFO    ] 200
[2026-06-27 03:31:08,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:31:08,458.458 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:31:08,459.459 INFO    ] No update needed
[2026-06-27 03:31:08,461.461 INFO    ] Checking for camera pi updates...
[2026-06-27 03:31:08,480.480 INFO    ] 200
[2026-06-27 03:31:08,482.482 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:31:08,507.507 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:31:08,546.546 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:31:08,547.547 INFO    ] No camera update needed
[2026-06-27 03:31:08,549.549 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:31:08,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:31:08,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:31:08,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:31:10,595.595 INFO    ] ================================================
[2026-06-27 03:31:10,611.611 INFO    ] Launching Daemon at Sat Jun 27 03:31:10 IST 2026
[2026-06-27 03:31:10,622.622 INFO    ] ================================================
[2026-06-27 03:31:10,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:31:10
[2026-06-27 03:31:11,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:31:11,439.439 INFO    ] Initializing speech engine...
[2026-06-27 03:31:11,444.444 INFO    ] 2026-06-27 03:31:11
[2026-06-27 03:31:11,664.664 INFO    ] 2026-06-27 03:31:11
[2026-06-27 03:31:11,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:31:11,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:31:11,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:31:12,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:31:12,088.088 INFO    ] time= 27/06/2026 03:31:12
[2026-06-27 03:31:12,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:31:12,119.119 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:31:12,211.211 INFO    ] No existing commands found in stream
[2026-06-27 03:31:17,225.225 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:31:17,228.228 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-27 03:31:18,395.395 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:31:18,396.396 INFO    ] Checking for system updates...
[2026-06-27 03:31:18,417.417 INFO    ] 200
[2026-06-27 03:31:18,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:31:18,451.451 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:31:18,452.452 INFO    ] No update needed
[2026-06-27 03:31:18,453.453 INFO    ] Checking for camera pi updates...
[2026-06-27 03:31:18,474.474 INFO    ] 200
[2026-06-27 03:31:18,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:31:18,499.499 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:31:18,625.625 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:31:18,627.627 INFO    ] No camera update needed
[2026-06-27 03:31:18,628.628 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:31:18,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:31:18,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:31:18,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:31:20,675.675 INFO    ] ================================================
[2026-06-27 03:31:20,691.691 INFO    ] Launching Daemon at Sat Jun 27 03:31:20 IST 2026
[2026-06-27 03:31:20,701.701 INFO    ] ================================================
[2026-06-27 03:31:21,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:31:21
[2026-06-27 03:31:21,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:31:21,518.518 INFO    ] Initializing speech engine...
[2026-06-27 03:31:21,526.526 INFO    ] 2026-06-27 03:31:21
[2026-06-27 03:31:21,740.740 INFO    ] 2026-06-27 03:31:21
[2026-06-27 03:31:21,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:31:21,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:31:21,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:31:22,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:31:22,170.170 INFO    ] time= 27/06/2026 03:31:22
[2026-06-27 03:31:22,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:31:22,201.201 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:31:22,294.294 INFO    ] No existing commands found in stream
[2026-06-27 03:31:27,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:31:27,306.306 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-27 03:31:30,030.030 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 03:31:30,031.031 INFO    ] Checking for system updates...
[2026-06-27 03:31:30,052.052 INFO    ] 200
[2026-06-27 03:31:30,053.053 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:31:30,085.085 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:31:30,086.086 INFO    ] No update needed
[2026-06-27 03:31:30,088.088 INFO    ] Checking for camera pi updates...
[2026-06-27 03:31:30,107.107 INFO    ] 200
[2026-06-27 03:31:30,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:31:30,132.132 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:31:30,153.153 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:31:30,154.154 INFO    ] No camera update needed
[2026-06-27 03:31:30,156.156 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:31:30,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:31:30,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:31:30,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:31:32,198.198 INFO    ] ================================================
[2026-06-27 03:31:32,208.208 INFO    ] Launching Daemon at Sat Jun 27 03:31:32 IST 2026
[2026-06-27 03:31:32,216.216 INFO    ] ================================================
[2026-06-27 03:31:32,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:31:32
[2026-06-27 03:31:32,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:31:33,020.020 INFO    ] Initializing speech engine...
[2026-06-27 03:31:33,026.026 INFO    ] 2026-06-27 03:31:33
[2026-06-27 03:31:33,234.234 INFO    ] 2026-06-27 03:31:33
[2026-06-27 03:31:33,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:31:33,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:31:33,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:31:33,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:31:33,677.677 INFO    ] time= 27/06/2026 03:31:33
[2026-06-27 03:31:33,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:31:33,684.684 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:31:33,752.752 INFO    ] No existing commands found in stream
[2026-06-27 03:31:38,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:31:38,769.769 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-27 03:31:42,328.328 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 03:31:42,329.329 INFO    ] Checking for system updates...
[2026-06-27 03:31:42,352.352 INFO    ] 200
[2026-06-27 03:31:42,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:31:42,387.387 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:31:42,388.388 INFO    ] No update needed
[2026-06-27 03:31:42,390.390 INFO    ] Checking for camera pi updates...
[2026-06-27 03:31:42,412.412 INFO    ] 200
[2026-06-27 03:31:42,414.414 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:31:42,439.439 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:31:42,477.477 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:31:42,478.478 INFO    ] No camera update needed
[2026-06-27 03:31:42,479.479 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:31:42,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:31:42,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:31:42,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:31:44,527.527 INFO    ] ================================================
[2026-06-27 03:31:44,542.542 INFO    ] Launching Daemon at Sat Jun 27 03:31:44 IST 2026
[2026-06-27 03:31:44,552.552 INFO    ] ================================================
[2026-06-27 03:31:44,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:31:44
[2026-06-27 03:31:45,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:31:45,384.384 INFO    ] Initializing speech engine...
[2026-06-27 03:31:45,391.391 INFO    ] 2026-06-27 03:31:45
[2026-06-27 03:31:45,607.607 INFO    ] 2026-06-27 03:31:45
[2026-06-27 03:31:45,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:31:45,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:31:45,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:31:46,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:31:46,052.052 INFO    ] time= 27/06/2026 03:31:46
[2026-06-27 03:31:46,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:31:46,059.059 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:31:46,125.125 INFO    ] No existing commands found in stream
[2026-06-27 03:31:51,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:31:51,139.139 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-27 03:31:53,642.642 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:31:53,644.644 INFO    ] Checking for system updates...
[2026-06-27 03:31:53,667.667 INFO    ] 200
[2026-06-27 03:31:53,669.669 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:31:53,699.699 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:31:53,701.701 INFO    ] No update needed
[2026-06-27 03:31:53,702.702 INFO    ] Checking for camera pi updates...
[2026-06-27 03:31:53,724.724 INFO    ] 200
[2026-06-27 03:31:53,725.725 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:31:53,749.749 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:31:53,777.777 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:31:53,778.778 INFO    ] No camera update needed
[2026-06-27 03:31:53,780.780 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:31:53,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:31:53,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:31:53,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:31:55,826.826 INFO    ] ================================================
[2026-06-27 03:31:55,842.842 INFO    ] Launching Daemon at Sat Jun 27 03:31:55 IST 2026
[2026-06-27 03:31:55,853.853 INFO    ] ================================================
[2026-06-27 03:31:56,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:31:56
[2026-06-27 03:31:56,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:31:56,712.712 INFO    ] Initializing speech engine...
[2026-06-27 03:31:56,717.717 INFO    ] 2026-06-27 03:31:56
[2026-06-27 03:31:56,920.920 INFO    ] 2026-06-27 03:31:56
[2026-06-27 03:31:56,948.948 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:31:57,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:31:57,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:31:57,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:31:57,358.358 INFO    ] time= 27/06/2026 03:31:57
[2026-06-27 03:31:57,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:31:57,366.366 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:31:57,432.432 INFO    ] No existing commands found in stream
[2026-06-27 03:32:02,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:32:02,443.443 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-27 03:32:06,001.001 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 03:32:06,003.003 INFO    ] Checking for system updates...
[2026-06-27 03:32:06,024.024 INFO    ] 200
[2026-06-27 03:32:06,025.025 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:32:06,056.056 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:32:06,057.057 INFO    ] No update needed
[2026-06-27 03:32:06,058.058 INFO    ] Checking for camera pi updates...
[2026-06-27 03:32:06,078.078 INFO    ] 200
[2026-06-27 03:32:06,079.079 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:32:06,106.106 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:32:06,149.149 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:32:06,150.150 INFO    ] No camera update needed
[2026-06-27 03:32:06,151.151 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:32:06,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:32:06,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:32:06,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:32:08,198.198 INFO    ] ================================================
[2026-06-27 03:32:08,213.213 INFO    ] Launching Daemon at Sat Jun 27 03:32:08 IST 2026
[2026-06-27 03:32:08,226.226 INFO    ] ================================================
[2026-06-27 03:32:08,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:32:08
[2026-06-27 03:32:08,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:32:09,028.028 INFO    ] Initializing speech engine...
[2026-06-27 03:32:09,035.035 INFO    ] 2026-06-27 03:32:09
[2026-06-27 03:32:09,246.246 INFO    ] 2026-06-27 03:32:09
[2026-06-27 03:32:09,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:32:09,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:32:09,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:32:09,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:32:09,689.689 INFO    ] time= 27/06/2026 03:32:09
[2026-06-27 03:32:09,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:32:09,696.696 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:32:09,763.763 INFO    ] No existing commands found in stream
[2026-06-27 03:32:14,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:32:14,775.775 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-27 03:32:17,338.338 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:32:17,339.339 INFO    ] Checking for system updates...
[2026-06-27 03:32:17,361.361 INFO    ] 200
[2026-06-27 03:32:17,362.362 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:32:17,394.394 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:32:17,396.396 INFO    ] No update needed
[2026-06-27 03:32:17,397.397 INFO    ] Checking for camera pi updates...
[2026-06-27 03:32:17,417.417 INFO    ] 200
[2026-06-27 03:32:17,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:32:17,442.442 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:32:17,466.466 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:32:17,468.468 INFO    ] No camera update needed
[2026-06-27 03:32:17,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:32:17,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:32:17,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:32:17,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:32:19,515.515 INFO    ] ================================================
[2026-06-27 03:32:19,531.531 INFO    ] Launching Daemon at Sat Jun 27 03:32:19 IST 2026
[2026-06-27 03:32:19,543.543 INFO    ] ================================================
[2026-06-27 03:32:19,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:32:19
[2026-06-27 03:32:20,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:32:20,338.338 INFO    ] Initializing speech engine...
[2026-06-27 03:32:20,353.353 INFO    ] 2026-06-27 03:32:20
[2026-06-27 03:32:20,566.566 INFO    ] 2026-06-27 03:32:20
[2026-06-27 03:32:20,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:32:20,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:32:20,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:32:20,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:32:21,003.003 INFO    ] time= 27/06/2026 03:32:20
[2026-06-27 03:32:21,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:32:21,014.014 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:32:21,081.081 INFO    ] No existing commands found in stream
[2026-06-27 03:32:26,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:32:26,093.093 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-27 03:32:27,221.221 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 03:32:27,223.223 INFO    ] Checking for system updates...
[2026-06-27 03:32:27,244.244 INFO    ] 200
[2026-06-27 03:32:27,246.246 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:32:27,277.277 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:32:27,278.278 INFO    ] No update needed
[2026-06-27 03:32:27,280.280 INFO    ] Checking for camera pi updates...
[2026-06-27 03:32:27,300.300 INFO    ] 200
[2026-06-27 03:32:27,302.302 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:32:27,329.329 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:32:27,360.360 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:32:27,361.361 INFO    ] No camera update needed
[2026-06-27 03:32:27,363.363 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:32:27,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:32:27,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:32:27,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:32:29,404.404 INFO    ] ================================================
[2026-06-27 03:32:29,413.413 INFO    ] Launching Daemon at Sat Jun 27 03:32:29 IST 2026
[2026-06-27 03:32:29,419.419 INFO    ] ================================================
[2026-06-27 03:32:29,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:32:29
[2026-06-27 03:32:30,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:32:30,220.220 INFO    ] Initializing speech engine...
[2026-06-27 03:32:30,225.225 INFO    ] 2026-06-27 03:32:30
[2026-06-27 03:32:30,431.431 INFO    ] 2026-06-27 03:32:30
[2026-06-27 03:32:30,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:32:30,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:32:30,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:32:30,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:32:30,865.865 INFO    ] time= 27/06/2026 03:32:30
[2026-06-27 03:32:30,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:32:30,899.899 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:32:30,967.967 INFO    ] No existing commands found in stream
[2026-06-27 03:32:35,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:32:35,980.980 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-27 03:32:37,085.085 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 03:32:37,086.086 INFO    ] Checking for system updates...
[2026-06-27 03:32:37,107.107 INFO    ] 200
[2026-06-27 03:32:37,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:32:37,139.139 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:32:37,140.140 INFO    ] No update needed
[2026-06-27 03:32:37,142.142 INFO    ] Checking for camera pi updates...
[2026-06-27 03:32:37,162.162 INFO    ] 200
[2026-06-27 03:32:37,164.164 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:32:37,188.188 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:32:37,229.229 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:32:37,230.230 INFO    ] No camera update needed
[2026-06-27 03:32:37,231.231 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:32:37,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:32:37,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:32:37,239.239 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:32:39,277.277 INFO    ] ================================================
[2026-06-27 03:32:39,293.293 INFO    ] Launching Daemon at Sat Jun 27 03:32:39 IST 2026
[2026-06-27 03:32:39,303.303 INFO    ] ================================================
[2026-06-27 03:32:39,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:32:39
[2026-06-27 03:32:39,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:32:40,091.091 INFO    ] Initializing speech engine...
[2026-06-27 03:32:40,096.096 INFO    ] 2026-06-27 03:32:40
[2026-06-27 03:32:40,302.302 INFO    ] 2026-06-27 03:32:40
[2026-06-27 03:32:40,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:32:40,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:32:40,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:32:40,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:32:40,740.740 INFO    ] time= 27/06/2026 03:32:40
[2026-06-27 03:32:40,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:32:40,747.747 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:32:40,813.813 INFO    ] No existing commands found in stream
[2026-06-27 03:32:45,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:32:45,826.826 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-27 03:32:49,634.634 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:32:49,636.636 INFO    ] Checking for system updates...
[2026-06-27 03:32:49,657.657 INFO    ] 200
[2026-06-27 03:32:49,659.659 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:32:49,691.691 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:32:49,692.692 INFO    ] No update needed
[2026-06-27 03:32:49,694.694 INFO    ] Checking for camera pi updates...
[2026-06-27 03:32:49,714.714 INFO    ] 200
[2026-06-27 03:32:49,715.715 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:32:49,740.740 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:32:49,779.779 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:32:49,780.780 INFO    ] No camera update needed
[2026-06-27 03:32:49,781.781 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:32:49,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:32:49,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:32:49,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:32:51,829.829 INFO    ] ================================================
[2026-06-27 03:32:51,845.845 INFO    ] Launching Daemon at Sat Jun 27 03:32:51 IST 2026
[2026-06-27 03:32:51,856.856 INFO    ] ================================================
[2026-06-27 03:32:52,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:32:52
[2026-06-27 03:32:52,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:32:52,679.679 INFO    ] Initializing speech engine...
[2026-06-27 03:32:52,689.689 INFO    ] 2026-06-27 03:32:52
[2026-06-27 03:32:52,895.895 INFO    ] 2026-06-27 03:32:52
[2026-06-27 03:32:52,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:32:53,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:32:53,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:32:53,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:32:53,338.338 INFO    ] time= 27/06/2026 03:32:53
[2026-06-27 03:32:53,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:32:53,345.345 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:32:53,410.410 INFO    ] No existing commands found in stream
[2026-06-27 03:32:58,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:32:58,424.424 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-27 03:33:00,508.508 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:33:00,510.510 INFO    ] Checking for system updates...
[2026-06-27 03:33:00,530.530 INFO    ] 200
[2026-06-27 03:33:00,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:33:00,562.562 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:33:00,563.563 INFO    ] No update needed
[2026-06-27 03:33:00,564.564 INFO    ] Checking for camera pi updates...
[2026-06-27 03:33:00,587.587 INFO    ] 200
[2026-06-27 03:33:00,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:33:00,611.611 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:33:00,648.648 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:33:00,650.650 INFO    ] No camera update needed
[2026-06-27 03:33:00,651.651 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:33:00,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:33:00,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:33:00,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:33:02,691.691 INFO    ] ================================================
[2026-06-27 03:33:02,704.704 INFO    ] Launching Daemon at Sat Jun 27 03:33:02 IST 2026
[2026-06-27 03:33:02,712.712 INFO    ] ================================================
[2026-06-27 03:33:03,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:33:03
[2026-06-27 03:33:03,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:33:03,574.574 INFO    ] Initializing speech engine...
[2026-06-27 03:33:03,582.582 INFO    ] 2026-06-27 03:33:03
[2026-06-27 03:33:03,801.801 INFO    ] 2026-06-27 03:33:03
[2026-06-27 03:33:03,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:33:04,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:33:04,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:33:04,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:33:04,252.252 INFO    ] time= 27/06/2026 03:33:04
[2026-06-27 03:33:04,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:33:04,259.259 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:33:04,325.325 INFO    ] No existing commands found in stream
[2026-06-27 03:33:09,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:33:09,339.339 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-27 03:33:13,221.221 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:33:13,222.222 INFO    ] Checking for system updates...
[2026-06-27 03:33:13,244.244 INFO    ] 200
[2026-06-27 03:33:13,246.246 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:33:13,279.279 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:33:13,281.281 INFO    ] No update needed
[2026-06-27 03:33:13,282.282 INFO    ] Checking for camera pi updates...
[2026-06-27 03:33:13,306.306 INFO    ] 200
[2026-06-27 03:33:13,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:33:13,335.335 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:33:13,375.375 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:33:13,376.376 INFO    ] No camera update needed
[2026-06-27 03:33:13,378.378 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:33:13,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:33:13,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:33:13,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:33:15,426.426 INFO    ] ================================================
[2026-06-27 03:33:15,441.441 INFO    ] Launching Daemon at Sat Jun 27 03:33:15 IST 2026
[2026-06-27 03:33:15,452.452 INFO    ] ================================================
[2026-06-27 03:33:15,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:33:15
[2026-06-27 03:33:16,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:33:16,234.234 INFO    ] Initializing speech engine...
[2026-06-27 03:33:16,240.240 INFO    ] 2026-06-27 03:33:16
[2026-06-27 03:33:16,445.445 INFO    ] 2026-06-27 03:33:16
[2026-06-27 03:33:16,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:33:16,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:33:16,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:33:16,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:33:16,880.880 INFO    ] time= 27/06/2026 03:33:16
[2026-06-27 03:33:16,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:33:16,914.914 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:33:16,985.985 INFO    ] No existing commands found in stream
[2026-06-27 03:33:21,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:33:21,998.998 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-27 03:33:22,787.787 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 03:33:22,788.788 INFO    ] Checking for system updates...
[2026-06-27 03:33:22,810.810 INFO    ] 200
[2026-06-27 03:33:22,811.811 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:33:22,842.842 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:33:22,843.843 INFO    ] No update needed
[2026-06-27 03:33:22,845.845 INFO    ] Checking for camera pi updates...
[2026-06-27 03:33:22,864.864 INFO    ] 200
[2026-06-27 03:33:22,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:33:22,889.889 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:33:23,027.027 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:33:23,028.028 INFO    ] No camera update needed
[2026-06-27 03:33:23,029.029 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:33:23,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:33:23,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:33:23,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:33:25,075.075 INFO    ] ================================================
[2026-06-27 03:33:25,091.091 INFO    ] Launching Daemon at Sat Jun 27 03:33:25 IST 2026
[2026-06-27 03:33:25,102.102 INFO    ] ================================================
[2026-06-27 03:33:25,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:33:25
[2026-06-27 03:33:25,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:33:25,868.868 INFO    ] Initializing speech engine...
[2026-06-27 03:33:25,876.876 INFO    ] 2026-06-27 03:33:25
[2026-06-27 03:33:26,088.088 INFO    ] 2026-06-27 03:33:26
[2026-06-27 03:33:26,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:33:26,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:33:26,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:33:26,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:33:26,530.530 INFO    ] time= 27/06/2026 03:33:26
[2026-06-27 03:33:26,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:33:26,537.537 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:33:26,602.602 INFO    ] No existing commands found in stream
[2026-06-27 03:33:31,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:33:31,616.616 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-27 03:33:32,527.527 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:33:32,529.529 INFO    ] Checking for system updates...
[2026-06-27 03:33:32,551.551 INFO    ] 200
[2026-06-27 03:33:32,552.552 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:33:32,587.587 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:33:32,589.589 INFO    ] No update needed
[2026-06-27 03:33:32,590.590 INFO    ] Checking for camera pi updates...
[2026-06-27 03:33:32,614.614 INFO    ] 200
[2026-06-27 03:33:32,616.616 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:33:32,642.642 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:33:32,667.667 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:33:32,668.668 INFO    ] No camera update needed
[2026-06-27 03:33:32,669.669 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:33:32,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:33:32,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:33:32,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:33:34,717.717 INFO    ] ================================================
[2026-06-27 03:33:34,733.733 INFO    ] Launching Daemon at Sat Jun 27 03:33:34 IST 2026
[2026-06-27 03:33:34,744.744 INFO    ] ================================================
[2026-06-27 03:33:35,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:33:35
[2026-06-27 03:33:35,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:33:35,565.565 INFO    ] Initializing speech engine...
[2026-06-27 03:33:35,575.575 INFO    ] 2026-06-27 03:33:35
[2026-06-27 03:33:35,786.786 INFO    ] 2026-06-27 03:33:35
[2026-06-27 03:33:35,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:33:36,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:33:36,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:33:36,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:33:36,211.211 INFO    ] time= 27/06/2026 03:33:36
[2026-06-27 03:33:36,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:33:36,245.245 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:33:36,313.313 INFO    ] No existing commands found in stream
[2026-06-27 03:33:41,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:33:41,330.330 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-27 03:33:44,961.961 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 03:33:44,962.962 INFO    ] Checking for system updates...
[2026-06-27 03:33:44,985.985 INFO    ] 200
[2026-06-27 03:33:44,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:33:45,019.019 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:33:45,020.020 INFO    ] No update needed
[2026-06-27 03:33:45,021.021 INFO    ] Checking for camera pi updates...
[2026-06-27 03:33:45,042.042 INFO    ] 200
[2026-06-27 03:33:45,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:33:45,067.067 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:33:45,118.118 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:33:45,119.119 INFO    ] No camera update needed
[2026-06-27 03:33:45,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:33:45,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:33:45,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:33:45,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:33:47,168.168 INFO    ] ================================================
[2026-06-27 03:33:47,184.184 INFO    ] Launching Daemon at Sat Jun 27 03:33:47 IST 2026
[2026-06-27 03:33:47,195.195 INFO    ] ================================================
[2026-06-27 03:33:47,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:33:47
[2026-06-27 03:33:47,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:33:48,090.090 INFO    ] Initializing speech engine...
[2026-06-27 03:33:48,096.096 INFO    ] 2026-06-27 03:33:48
[2026-06-27 03:33:48,304.304 INFO    ] 2026-06-27 03:33:48
[2026-06-27 03:33:48,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:33:48,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:33:48,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:33:48,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:33:48,747.747 INFO    ] time= 27/06/2026 03:33:48
[2026-06-27 03:33:48,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:33:48,756.756 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:33:48,823.823 INFO    ] No existing commands found in stream
[2026-06-27 03:33:53,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:33:53,836.836 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-27 03:33:58,147.147 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 03:33:58,148.148 INFO    ] Checking for system updates...
[2026-06-27 03:33:58,171.171 INFO    ] 200
[2026-06-27 03:33:58,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:33:58,207.207 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:33:58,208.208 INFO    ] No update needed
[2026-06-27 03:33:58,210.210 INFO    ] Checking for camera pi updates...
[2026-06-27 03:33:58,232.232 INFO    ] 200
[2026-06-27 03:33:58,234.234 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:33:58,258.258 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:33:58,300.300 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:33:58,301.301 INFO    ] No camera update needed
[2026-06-27 03:33:58,303.303 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:33:58,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:33:58,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:33:58,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:34:00,353.353 INFO    ] ================================================
[2026-06-27 03:34:00,368.368 INFO    ] Launching Daemon at Sat Jun 27 03:34:00 IST 2026
[2026-06-27 03:34:00,379.379 INFO    ] ================================================
[2026-06-27 03:34:00,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:34:00
[2026-06-27 03:34:01,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:34:01,194.194 INFO    ] Initializing speech engine...
[2026-06-27 03:34:01,199.199 INFO    ] 2026-06-27 03:34:01
[2026-06-27 03:34:01,411.411 INFO    ] 2026-06-27 03:34:01
[2026-06-27 03:34:01,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:34:01,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:34:01,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:34:01,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:34:01,813.813 INFO    ] time= 27/06/2026 03:34:01
[2026-06-27 03:34:01,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:34:01,851.851 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:34:02,016.016 INFO    ] No existing commands found in stream
[2026-06-27 03:34:07,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:34:07,046.046 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-27 03:34:10,126.126 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 03:34:10,128.128 INFO    ] Checking for system updates...
[2026-06-27 03:34:10,150.150 INFO    ] 200
[2026-06-27 03:34:10,152.152 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:34:10,184.184 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:34:10,185.185 INFO    ] No update needed
[2026-06-27 03:34:10,187.187 INFO    ] Checking for camera pi updates...
[2026-06-27 03:34:10,208.208 INFO    ] 200
[2026-06-27 03:34:10,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:34:10,232.232 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:34:10,280.280 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:34:10,282.282 INFO    ] No camera update needed
[2026-06-27 03:34:10,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:34:10,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:34:10,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:34:10,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:34:12,328.328 INFO    ] ================================================
[2026-06-27 03:34:12,344.344 INFO    ] Launching Daemon at Sat Jun 27 03:34:12 IST 2026
[2026-06-27 03:34:12,356.356 INFO    ] ================================================
[2026-06-27 03:34:12,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:34:12
[2026-06-27 03:34:13,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:34:13,165.165 INFO    ] Initializing speech engine...
[2026-06-27 03:34:13,170.170 INFO    ] 2026-06-27 03:34:13
[2026-06-27 03:34:13,374.374 INFO    ] 2026-06-27 03:34:13
[2026-06-27 03:34:13,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:34:13,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:34:13,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:34:13,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:34:13,776.776 INFO    ] time= 27/06/2026 03:34:13
[2026-06-27 03:34:13,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:34:13,816.816 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:34:13,887.887 INFO    ] No existing commands found in stream
[2026-06-27 03:34:18,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:34:18,903.903 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-27 03:34:22,646.646 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:34:22,648.648 INFO    ] Checking for system updates...
[2026-06-27 03:34:22,669.669 INFO    ] 200
[2026-06-27 03:34:22,670.670 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:34:22,703.703 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:34:22,704.704 INFO    ] No update needed
[2026-06-27 03:34:22,706.706 INFO    ] Checking for camera pi updates...
[2026-06-27 03:34:22,727.727 INFO    ] 200
[2026-06-27 03:34:22,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:34:22,754.754 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:34:22,791.791 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:34:22,792.792 INFO    ] No camera update needed
[2026-06-27 03:34:22,793.793 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:34:22,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:34:22,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:34:22,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:34:24,847.847 INFO    ] ================================================
[2026-06-27 03:34:24,863.863 INFO    ] Launching Daemon at Sat Jun 27 03:34:24 IST 2026
[2026-06-27 03:34:24,875.875 INFO    ] ================================================
[2026-06-27 03:34:25,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:34:25
[2026-06-27 03:34:25,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:34:25,657.657 INFO    ] Initializing speech engine...
[2026-06-27 03:34:25,661.661 INFO    ] 2026-06-27 03:34:25
[2026-06-27 03:34:25,871.871 INFO    ] 2026-06-27 03:34:25
[2026-06-27 03:34:25,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:34:26,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:34:26,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:34:26,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:34:26,358.358 INFO    ] time= 27/06/2026 03:34:26
[2026-06-27 03:34:26,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:34:26,382.382 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:34:26,455.455 INFO    ] No existing commands found in stream
[2026-06-27 03:34:31,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:34:31,469.469 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-27 03:34:35,488.488 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 03:34:35,489.489 INFO    ] Checking for system updates...
[2026-06-27 03:34:35,510.510 INFO    ] 200
[2026-06-27 03:34:35,511.511 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:34:35,541.541 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:34:35,543.543 INFO    ] No update needed
[2026-06-27 03:34:35,544.544 INFO    ] Checking for camera pi updates...
[2026-06-27 03:34:35,564.564 INFO    ] 200
[2026-06-27 03:34:35,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:34:35,589.589 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:34:35,636.636 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:34:35,637.637 INFO    ] No camera update needed
[2026-06-27 03:34:35,638.638 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:34:35,639.639 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:34:35,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:34:35,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:34:37,685.685 INFO    ] ================================================
[2026-06-27 03:34:37,701.701 INFO    ] Launching Daemon at Sat Jun 27 03:34:37 IST 2026
[2026-06-27 03:34:37,712.712 INFO    ] ================================================
[2026-06-27 03:34:38,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:34:38
[2026-06-27 03:34:38,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:34:38,488.488 INFO    ] Initializing speech engine...
[2026-06-27 03:34:38,492.492 INFO    ] 2026-06-27 03:34:38
[2026-06-27 03:34:38,682.682 INFO    ] 2026-06-27 03:34:38
[2026-06-27 03:34:38,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:34:38,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:34:38,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:34:39,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:34:39,174.174 INFO    ] time= 27/06/2026 03:34:39
[2026-06-27 03:34:39,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:34:39,202.202 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:34:39,278.278 INFO    ] No existing commands found in stream
[2026-06-27 03:34:44,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:34:44,291.291 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-27 03:34:44,759.759 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 03:34:44,761.761 INFO    ] Checking for system updates...
[2026-06-27 03:34:44,783.783 INFO    ] 200
[2026-06-27 03:34:44,785.785 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:34:44,818.818 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:34:44,819.819 INFO    ] No update needed
[2026-06-27 03:34:44,821.821 INFO    ] Checking for camera pi updates...
[2026-06-27 03:34:44,841.841 INFO    ] 200
[2026-06-27 03:34:44,842.842 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:34:44,868.868 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:34:44,910.910 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:34:44,911.911 INFO    ] No camera update needed
[2026-06-27 03:34:44,912.912 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:34:44,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:34:44,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:34:44,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:34:46,960.960 INFO    ] ================================================
[2026-06-27 03:34:46,976.976 INFO    ] Launching Daemon at Sat Jun 27 03:34:46 IST 2026
[2026-06-27 03:34:46,988.988 INFO    ] ================================================
[2026-06-27 03:34:47,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:34:47
[2026-06-27 03:34:47,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:34:47,835.835 INFO    ] Initializing speech engine...
[2026-06-27 03:34:47,844.844 INFO    ] 2026-06-27 03:34:47
[2026-06-27 03:34:48,053.053 INFO    ] 2026-06-27 03:34:48
[2026-06-27 03:34:48,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:34:48,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:34:48,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:34:48,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:34:48,471.471 INFO    ] time= 27/06/2026 03:34:48
[2026-06-27 03:34:48,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:34:48,500.500 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:34:48,567.567 INFO    ] No existing commands found in stream
[2026-06-27 03:34:53,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:34:53,580.580 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-27 03:34:57,021.021 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:34:57,023.023 INFO    ] Checking for system updates...
[2026-06-27 03:34:57,044.044 INFO    ] 200
[2026-06-27 03:34:57,045.045 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:34:57,077.077 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:34:57,079.079 INFO    ] No update needed
[2026-06-27 03:34:57,080.080 INFO    ] Checking for camera pi updates...
[2026-06-27 03:34:57,100.100 INFO    ] 200
[2026-06-27 03:34:57,101.101 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:34:57,126.126 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:34:57,171.171 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:34:57,172.172 INFO    ] No camera update needed
[2026-06-27 03:34:57,174.174 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:34:57,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:34:57,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:34:57,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:34:59,223.223 INFO    ] ================================================
[2026-06-27 03:34:59,239.239 INFO    ] Launching Daemon at Sat Jun 27 03:34:59 IST 2026
[2026-06-27 03:34:59,250.250 INFO    ] ================================================
[2026-06-27 03:34:59,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:34:59
[2026-06-27 03:34:59,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:35:00,029.029 INFO    ] Initializing speech engine...
[2026-06-27 03:35:00,034.034 INFO    ] 2026-06-27 03:35:00
[2026-06-27 03:35:00,255.255 INFO    ] 2026-06-27 03:35:00
[2026-06-27 03:35:00,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:35:00,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:35:00,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:35:00,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:35:00,657.657 INFO    ] time= 27/06/2026 03:35:00
[2026-06-27 03:35:00,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:35:00,708.708 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:35:00,781.781 INFO    ] No existing commands found in stream
[2026-06-27 03:35:05,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:35:05,794.794 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-27 03:35:07,798.798 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 03:35:07,799.799 INFO    ] Checking for system updates...
[2026-06-27 03:35:07,821.821 INFO    ] 200
[2026-06-27 03:35:07,822.822 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:35:07,857.857 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:35:07,858.858 INFO    ] No update needed
[2026-06-27 03:35:07,859.859 INFO    ] Checking for camera pi updates...
[2026-06-27 03:35:07,880.880 INFO    ] 200
[2026-06-27 03:35:07,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:35:07,906.906 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:35:07,942.942 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:35:07,944.944 INFO    ] No camera update needed
[2026-06-27 03:35:07,945.945 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:35:07,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:35:07,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:35:07,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:35:09,992.992 INFO    ] ================================================
[2026-06-27 03:35:10,008.008 INFO    ] Launching Daemon at Sat Jun 27 03:35:10 IST 2026
[2026-06-27 03:35:10,019.019 INFO    ] ================================================
[2026-06-27 03:35:10,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:35:10
[2026-06-27 03:35:10,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:35:10,818.818 INFO    ] Initializing speech engine...
[2026-06-27 03:35:10,826.826 INFO    ] 2026-06-27 03:35:10
[2026-06-27 03:35:11,041.041 INFO    ] 2026-06-27 03:35:11
[2026-06-27 03:35:11,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:35:11,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:35:11,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:35:11,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:35:11,488.488 INFO    ] time= 27/06/2026 03:35:11
[2026-06-27 03:35:11,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:35:11,495.495 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:35:11,562.562 INFO    ] No existing commands found in stream
[2026-06-27 03:35:16,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:35:16,575.575 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-27 03:35:19,428.428 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 03:35:19,430.430 INFO    ] Checking for system updates...
[2026-06-27 03:35:19,455.455 INFO    ] 200
[2026-06-27 03:35:19,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:35:19,487.487 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:35:19,488.488 INFO    ] No update needed
[2026-06-27 03:35:19,490.490 INFO    ] Checking for camera pi updates...
[2026-06-27 03:35:19,509.509 INFO    ] 200
[2026-06-27 03:35:19,511.511 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:35:19,535.535 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:35:19,580.580 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:35:19,581.581 INFO    ] No camera update needed
[2026-06-27 03:35:19,583.583 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:35:19,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:35:19,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:35:19,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:35:21,630.630 INFO    ] ================================================
[2026-06-27 03:35:21,646.646 INFO    ] Launching Daemon at Sat Jun 27 03:35:21 IST 2026
[2026-06-27 03:35:21,658.658 INFO    ] ================================================
[2026-06-27 03:35:22,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:35:22
[2026-06-27 03:35:22,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:35:22,532.532 INFO    ] Initializing speech engine...
[2026-06-27 03:35:22,537.537 INFO    ] 2026-06-27 03:35:22
[2026-06-27 03:35:22,743.743 INFO    ] 2026-06-27 03:35:22
[2026-06-27 03:35:22,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:35:22,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:35:22,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:35:23,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:35:23,169.169 INFO    ] time= 27/06/2026 03:35:23
[2026-06-27 03:35:23,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:35:23,210.210 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:35:23,278.278 INFO    ] No existing commands found in stream
[2026-06-27 03:35:28,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:35:28,296.296 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-27 03:35:31,047.047 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 03:35:31,048.048 INFO    ] Checking for system updates...
[2026-06-27 03:35:31,069.069 INFO    ] 200
[2026-06-27 03:35:31,071.071 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:35:31,105.105 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:35:31,106.106 INFO    ] No update needed
[2026-06-27 03:35:31,107.107 INFO    ] Checking for camera pi updates...
[2026-06-27 03:35:31,129.129 INFO    ] 200
[2026-06-27 03:35:31,130.130 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:35:31,156.156 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:35:31,314.314 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:35:31,315.315 INFO    ] No camera update needed
[2026-06-27 03:35:31,316.316 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:35:31,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:35:31,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:35:31,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:35:33,356.356 INFO    ] ================================================
[2026-06-27 03:35:33,372.372 INFO    ] Launching Daemon at Sat Jun 27 03:35:33 IST 2026
[2026-06-27 03:35:33,383.383 INFO    ] ================================================
[2026-06-27 03:35:33,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:35:33
[2026-06-27 03:35:34,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:35:34,207.207 INFO    ] Initializing speech engine...
[2026-06-27 03:35:34,217.217 INFO    ] 2026-06-27 03:35:34
[2026-06-27 03:35:34,423.423 INFO    ] 2026-06-27 03:35:34
[2026-06-27 03:35:34,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:35:34,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:35:34,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:35:34,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:35:34,864.864 INFO    ] time= 27/06/2026 03:35:34
[2026-06-27 03:35:34,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:35:34,871.871 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:35:34,936.936 INFO    ] No existing commands found in stream
[2026-06-27 03:35:39,947.947 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:35:39,950.950 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-27 03:35:43,123.123 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 03:35:43,125.125 INFO    ] Checking for system updates...
[2026-06-27 03:35:43,146.146 INFO    ] 200
[2026-06-27 03:35:43,148.148 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:35:43,179.179 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:35:43,180.180 INFO    ] No update needed
[2026-06-27 03:35:43,182.182 INFO    ] Checking for camera pi updates...
[2026-06-27 03:35:43,201.201 INFO    ] 200
[2026-06-27 03:35:43,202.202 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:35:43,226.226 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:35:43,273.273 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:35:43,274.274 INFO    ] No camera update needed
[2026-06-27 03:35:43,275.275 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:35:43,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:35:43,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:35:43,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:35:45,322.322 INFO    ] ================================================
[2026-06-27 03:35:45,338.338 INFO    ] Launching Daemon at Sat Jun 27 03:35:45 IST 2026
[2026-06-27 03:35:45,348.348 INFO    ] ================================================
[2026-06-27 03:35:45,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:35:45
[2026-06-27 03:35:46,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:35:46,214.214 INFO    ] Initializing speech engine...
[2026-06-27 03:35:46,219.219 INFO    ] 2026-06-27 03:35:46
[2026-06-27 03:35:46,428.428 INFO    ] 2026-06-27 03:35:46
[2026-06-27 03:35:46,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:35:46,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:35:46,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:35:47,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:35:47,039.039 INFO    ] time= 27/06/2026 03:35:47
[2026-06-27 03:35:47,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:35:47,045.045 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:35:47,117.117 INFO    ] No existing commands found in stream
[2026-06-27 03:35:52,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:35:52,130.130 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-27 03:35:56,229.229 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:35:56,237.237 INFO    ] Checking for system updates...
[2026-06-27 03:35:56,260.260 INFO    ] 200
[2026-06-27 03:35:56,261.261 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:35:56,294.294 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:35:56,296.296 INFO    ] No update needed
[2026-06-27 03:35:56,297.297 INFO    ] Checking for camera pi updates...
[2026-06-27 03:35:56,320.320 INFO    ] 200
[2026-06-27 03:35:56,321.321 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:35:56,345.345 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:35:56,379.379 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:35:56,380.380 INFO    ] No camera update needed
[2026-06-27 03:35:56,382.382 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:35:56,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:35:56,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:35:56,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:35:58,429.429 INFO    ] ================================================
[2026-06-27 03:35:58,445.445 INFO    ] Launching Daemon at Sat Jun 27 03:35:58 IST 2026
[2026-06-27 03:35:58,456.456 INFO    ] ================================================
[2026-06-27 03:35:58,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:35:58
[2026-06-27 03:35:59,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:35:59,244.244 INFO    ] Initializing speech engine...
[2026-06-27 03:35:59,249.249 INFO    ] 2026-06-27 03:35:59
[2026-06-27 03:35:59,454.454 INFO    ] 2026-06-27 03:35:59
[2026-06-27 03:35:59,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:35:59,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:35:59,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:35:59,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:35:59,882.882 INFO    ] time= 27/06/2026 03:35:59
[2026-06-27 03:35:59,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:35:59,911.911 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:35:59,978.978 INFO    ] No existing commands found in stream
[2026-06-27 03:36:04,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:36:04,990.990 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-27 03:36:05,775.775 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 03:36:05,776.776 INFO    ] Checking for system updates...
[2026-06-27 03:36:05,797.797 INFO    ] 200
[2026-06-27 03:36:05,798.798 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:36:05,829.829 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:36:05,830.830 INFO    ] No update needed
[2026-06-27 03:36:05,831.831 INFO    ] Checking for camera pi updates...
[2026-06-27 03:36:05,852.852 INFO    ] 200
[2026-06-27 03:36:05,854.854 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:36:05,880.880 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:36:05,917.917 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:36:05,918.918 INFO    ] No camera update needed
[2026-06-27 03:36:05,919.919 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:36:05,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:36:05,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:36:05,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:36:07,967.967 INFO    ] ================================================
[2026-06-27 03:36:07,983.983 INFO    ] Launching Daemon at Sat Jun 27 03:36:07 IST 2026
[2026-06-27 03:36:07,994.994 INFO    ] ================================================
[2026-06-27 03:36:08,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:36:08
[2026-06-27 03:36:08,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:36:08,845.845 INFO    ] Initializing speech engine...
[2026-06-27 03:36:08,850.850 INFO    ] 2026-06-27 03:36:08
[2026-06-27 03:36:09,058.058 INFO    ] 2026-06-27 03:36:09
[2026-06-27 03:36:09,087.087 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:36:09,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:36:09,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:36:09,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:36:09,503.503 INFO    ] time= 27/06/2026 03:36:09
[2026-06-27 03:36:09,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:36:09,510.510 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:36:09,578.578 INFO    ] No existing commands found in stream
[2026-06-27 03:36:14,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:36:14,590.590 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-27 03:36:16,671.671 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 03:36:16,672.672 INFO    ] Checking for system updates...
[2026-06-27 03:36:16,696.696 INFO    ] 200
[2026-06-27 03:36:16,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:36:16,729.729 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:36:16,731.731 INFO    ] No update needed
[2026-06-27 03:36:16,732.732 INFO    ] Checking for camera pi updates...
[2026-06-27 03:36:16,752.752 INFO    ] 200
[2026-06-27 03:36:16,753.753 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:36:16,779.779 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:36:16,821.821 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:36:16,822.822 INFO    ] No camera update needed
[2026-06-27 03:36:16,824.824 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:36:16,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:36:16,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:36:16,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:36:18,869.869 INFO    ] ================================================
[2026-06-27 03:36:18,885.885 INFO    ] Launching Daemon at Sat Jun 27 03:36:18 IST 2026
[2026-06-27 03:36:18,896.896 INFO    ] ================================================
[2026-06-27 03:36:19,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:36:19
[2026-06-27 03:36:19,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:36:19,684.684 INFO    ] Initializing speech engine...
[2026-06-27 03:36:19,693.693 INFO    ] 2026-06-27 03:36:19
[2026-06-27 03:36:19,918.918 INFO    ] 2026-06-27 03:36:19
[2026-06-27 03:36:19,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:36:20,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:36:20,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:36:20,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:36:20,369.369 INFO    ] time= 27/06/2026 03:36:20
[2026-06-27 03:36:20,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:36:20,401.401 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:36:20,472.472 INFO    ] No existing commands found in stream
[2026-06-27 03:36:25,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:36:25,484.484 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-27 03:36:29,317.317 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:36:29,319.319 INFO    ] Checking for system updates...
[2026-06-27 03:36:29,340.340 INFO    ] 200
[2026-06-27 03:36:29,342.342 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:36:29,372.372 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:36:29,374.374 INFO    ] No update needed
[2026-06-27 03:36:29,375.375 INFO    ] Checking for camera pi updates...
[2026-06-27 03:36:29,395.395 INFO    ] 200
[2026-06-27 03:36:29,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:36:29,420.420 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:36:29,445.445 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:36:29,447.447 INFO    ] No camera update needed
[2026-06-27 03:36:29,448.448 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:36:29,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:36:29,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:36:29,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:36:31,489.489 INFO    ] ================================================
[2026-06-27 03:36:31,499.499 INFO    ] Launching Daemon at Sat Jun 27 03:36:31 IST 2026
[2026-06-27 03:36:31,506.506 INFO    ] ================================================
[2026-06-27 03:36:31,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:36:31
[2026-06-27 03:36:32,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:36:32,336.336 INFO    ] Initializing speech engine...
[2026-06-27 03:36:32,342.342 INFO    ] 2026-06-27 03:36:32
[2026-06-27 03:36:32,548.548 INFO    ] 2026-06-27 03:36:32
[2026-06-27 03:36:32,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:36:32,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:36:32,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:36:32,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:36:32,961.961 INFO    ] time= 27/06/2026 03:36:32
[2026-06-27 03:36:32,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:36:32,999.999 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:36:33,066.066 INFO    ] No existing commands found in stream
[2026-06-27 03:36:38,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:36:38,078.078 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-27 03:36:39,348.348 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:36:39,349.349 INFO    ] Checking for system updates...
[2026-06-27 03:36:39,370.370 INFO    ] 200
[2026-06-27 03:36:39,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:36:39,406.406 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:36:39,407.407 INFO    ] No update needed
[2026-06-27 03:36:39,409.409 INFO    ] Checking for camera pi updates...
[2026-06-27 03:36:39,428.428 INFO    ] 200
[2026-06-27 03:36:39,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:36:39,453.453 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:36:39,490.490 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:36:39,491.491 INFO    ] No camera update needed
[2026-06-27 03:36:39,493.493 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:36:39,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:36:39,497.497 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:36:39,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:36:41,539.539 INFO    ] ================================================
[2026-06-27 03:36:41,554.554 INFO    ] Launching Daemon at Sat Jun 27 03:36:41 IST 2026
[2026-06-27 03:36:41,565.565 INFO    ] ================================================
[2026-06-27 03:36:41,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:36:41
[2026-06-27 03:36:42,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:36:42,398.398 INFO    ] Initializing speech engine...
[2026-06-27 03:36:42,404.404 INFO    ] 2026-06-27 03:36:42
[2026-06-27 03:36:42,610.610 INFO    ] 2026-06-27 03:36:42
[2026-06-27 03:36:42,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:36:42,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:36:42,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:36:43,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:36:43,048.048 INFO    ] time= 27/06/2026 03:36:43
[2026-06-27 03:36:43,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:36:43,055.055 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:36:43,122.122 INFO    ] No existing commands found in stream
[2026-06-27 03:36:48,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:36:48,136.136 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-27 03:36:51,098.098 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 03:36:51,099.099 INFO    ] Checking for system updates...
[2026-06-27 03:36:51,120.120 INFO    ] 200
[2026-06-27 03:36:51,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:36:51,152.152 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:36:51,153.153 INFO    ] No update needed
[2026-06-27 03:36:51,155.155 INFO    ] Checking for camera pi updates...
[2026-06-27 03:36:51,176.176 INFO    ] 200
[2026-06-27 03:36:51,177.177 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:36:51,202.202 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:36:51,248.248 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:36:51,249.249 INFO    ] No camera update needed
[2026-06-27 03:36:51,251.251 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:36:51,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:36:51,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:36:51,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:36:53,298.298 INFO    ] ================================================
[2026-06-27 03:36:53,313.313 INFO    ] Launching Daemon at Sat Jun 27 03:36:53 IST 2026
[2026-06-27 03:36:53,324.324 INFO    ] ================================================
[2026-06-27 03:36:53,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:36:53
[2026-06-27 03:36:54,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:36:54,177.177 INFO    ] Initializing speech engine...
[2026-06-27 03:36:54,183.183 INFO    ] 2026-06-27 03:36:54
[2026-06-27 03:36:54,389.389 INFO    ] 2026-06-27 03:36:54
[2026-06-27 03:36:54,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:36:54,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:36:54,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:36:54,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:36:54,832.832 INFO    ] time= 27/06/2026 03:36:54
[2026-06-27 03:36:54,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:36:54,839.839 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:36:54,905.905 INFO    ] No existing commands found in stream
[2026-06-27 03:36:59,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:36:59,919.919 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-27 03:37:01,089.089 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:37:01,091.091 INFO    ] Checking for system updates...
[2026-06-27 03:37:01,112.112 INFO    ] 200
[2026-06-27 03:37:01,113.113 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:37:01,144.144 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:37:01,145.145 INFO    ] No update needed
[2026-06-27 03:37:01,147.147 INFO    ] Checking for camera pi updates...
[2026-06-27 03:37:01,167.167 INFO    ] 200
[2026-06-27 03:37:01,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:37:01,191.191 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:37:01,231.231 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:37:01,233.233 INFO    ] No camera update needed
[2026-06-27 03:37:01,234.234 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:37:01,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:37:01,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:37:01,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:37:03,274.274 INFO    ] ================================================
[2026-06-27 03:37:03,289.289 INFO    ] Launching Daemon at Sat Jun 27 03:37:03 IST 2026
[2026-06-27 03:37:03,300.300 INFO    ] ================================================
[2026-06-27 03:37:03,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:37:03
[2026-06-27 03:37:03,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:37:04,111.111 INFO    ] Initializing speech engine...
[2026-06-27 03:37:04,121.121 INFO    ] 2026-06-27 03:37:04
[2026-06-27 03:37:04,325.325 INFO    ] 2026-06-27 03:37:04
[2026-06-27 03:37:04,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:37:04,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:37:04,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:37:04,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:37:04,766.766 INFO    ] time= 27/06/2026 03:37:04
[2026-06-27 03:37:04,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:37:04,773.773 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:37:04,839.839 INFO    ] No existing commands found in stream
[2026-06-27 03:37:09,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:37:09,852.852 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-27 03:37:13,574.574 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:37:13,575.575 INFO    ] Checking for system updates...
[2026-06-27 03:37:13,595.595 INFO    ] 200
[2026-06-27 03:37:13,597.597 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:37:13,630.630 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:37:13,631.631 INFO    ] No update needed
[2026-06-27 03:37:13,632.632 INFO    ] Checking for camera pi updates...
[2026-06-27 03:37:13,651.651 INFO    ] 200
[2026-06-27 03:37:13,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:37:13,676.676 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:37:13,715.715 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:37:13,716.716 INFO    ] No camera update needed
[2026-06-27 03:37:13,717.717 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:37:13,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:37:13,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:37:13,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:37:15,762.762 INFO    ] ================================================
[2026-06-27 03:37:15,778.778 INFO    ] Launching Daemon at Sat Jun 27 03:37:15 IST 2026
[2026-06-27 03:37:15,789.789 INFO    ] ================================================
[2026-06-27 03:37:16,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:37:16
[2026-06-27 03:37:16,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:37:16,579.579 INFO    ] Initializing speech engine...
[2026-06-27 03:37:16,586.586 INFO    ] 2026-06-27 03:37:16
[2026-06-27 03:37:16,795.795 INFO    ] 2026-06-27 03:37:16
[2026-06-27 03:37:16,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:37:17,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:37:17,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:37:17,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:37:17,218.218 INFO    ] time= 27/06/2026 03:37:17
[2026-06-27 03:37:17,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:37:17,247.247 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:37:17,315.315 INFO    ] No existing commands found in stream
[2026-06-27 03:37:22,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:37:22,327.327 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-27 03:37:25,190.190 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 03:37:25,191.191 INFO    ] Checking for system updates...
[2026-06-27 03:37:25,212.212 INFO    ] 200
[2026-06-27 03:37:25,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:37:25,244.244 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:37:25,246.246 INFO    ] No update needed
[2026-06-27 03:37:25,247.247 INFO    ] Checking for camera pi updates...
[2026-06-27 03:37:25,270.270 INFO    ] 200
[2026-06-27 03:37:25,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:37:25,295.295 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:37:25,331.331 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:37:25,332.332 INFO    ] No camera update needed
[2026-06-27 03:37:25,333.333 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:37:25,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:37:25,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:37:25,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:37:27,379.379 INFO    ] ================================================
[2026-06-27 03:37:27,395.395 INFO    ] Launching Daemon at Sat Jun 27 03:37:27 IST 2026
[2026-06-27 03:37:27,406.406 INFO    ] ================================================
[2026-06-27 03:37:27,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:37:27
[2026-06-27 03:37:28,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:37:28,229.229 INFO    ] Initializing speech engine...
[2026-06-27 03:37:28,238.238 INFO    ] 2026-06-27 03:37:28
[2026-06-27 03:37:28,446.446 INFO    ] 2026-06-27 03:37:28
[2026-06-27 03:37:28,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:37:28,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:37:28,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:37:28,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:37:28,887.887 INFO    ] time= 27/06/2026 03:37:28
[2026-06-27 03:37:28,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:37:28,894.894 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:37:28,959.959 INFO    ] No existing commands found in stream
[2026-06-27 03:37:33,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:37:33,969.969 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-27 03:37:35,475.475 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 03:37:35,477.477 INFO    ] Checking for system updates...
[2026-06-27 03:37:35,498.498 INFO    ] 200
[2026-06-27 03:37:35,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:37:35,529.529 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:37:35,531.531 INFO    ] No update needed
[2026-06-27 03:37:35,532.532 INFO    ] Checking for camera pi updates...
[2026-06-27 03:37:35,554.554 INFO    ] 200
[2026-06-27 03:37:35,555.555 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:37:35,582.582 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:37:35,721.721 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:37:35,723.723 INFO    ] No camera update needed
[2026-06-27 03:37:35,724.724 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:37:35,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:37:35,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:37:35,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:37:37,771.771 INFO    ] ================================================
[2026-06-27 03:37:37,786.786 INFO    ] Launching Daemon at Sat Jun 27 03:37:37 IST 2026
[2026-06-27 03:37:37,797.797 INFO    ] ================================================
[2026-06-27 03:37:38,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:37:38
[2026-06-27 03:37:38,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:37:38,600.600 INFO    ] Initializing speech engine...
[2026-06-27 03:37:38,605.605 INFO    ] 2026-06-27 03:37:38
[2026-06-27 03:37:38,810.810 INFO    ] 2026-06-27 03:37:38
[2026-06-27 03:37:38,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:37:39,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:37:39,033.033 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:37:39,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:37:39,233.233 INFO    ] time= 27/06/2026 03:37:39
[2026-06-27 03:37:39,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:37:39,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:37:39,327.327 INFO    ] No existing commands found in stream
[2026-06-27 03:37:44,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:37:44,339.339 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-27 03:37:46,780.780 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 03:37:46,782.782 INFO    ] Checking for system updates...
[2026-06-27 03:37:46,803.803 INFO    ] 200
[2026-06-27 03:37:46,805.805 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:37:46,835.835 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:37:46,836.836 INFO    ] No update needed
[2026-06-27 03:37:46,838.838 INFO    ] Checking for camera pi updates...
[2026-06-27 03:37:46,857.857 INFO    ] 200
[2026-06-27 03:37:46,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:37:46,883.883 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:37:46,928.928 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:37:46,929.929 INFO    ] No camera update needed
[2026-06-27 03:37:46,931.931 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:37:46,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:37:46,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:37:46,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:37:48,976.976 INFO    ] ================================================
[2026-06-27 03:37:48,992.992 INFO    ] Launching Daemon at Sat Jun 27 03:37:48 IST 2026
[2026-06-27 03:37:49,004.004 INFO    ] ================================================
[2026-06-27 03:37:49,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:37:49
[2026-06-27 03:37:49,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:37:49,842.842 INFO    ] Initializing speech engine...
[2026-06-27 03:37:49,848.848 INFO    ] 2026-06-27 03:37:49
[2026-06-27 03:37:50,057.057 INFO    ] 2026-06-27 03:37:50
[2026-06-27 03:37:50,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:37:50,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:37:50,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:37:50,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:37:50,483.483 INFO    ] time= 27/06/2026 03:37:50
[2026-06-27 03:37:50,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:37:50,513.513 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:37:50,582.582 INFO    ] No existing commands found in stream
[2026-06-27 03:37:55,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:37:55,589.589 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-27 03:37:58,369.369 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 03:37:58,371.371 INFO    ] Checking for system updates...
[2026-06-27 03:37:58,392.392 INFO    ] 200
[2026-06-27 03:37:58,393.393 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:37:58,425.425 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:37:58,426.426 INFO    ] No update needed
[2026-06-27 03:37:58,427.427 INFO    ] Checking for camera pi updates...
[2026-06-27 03:37:58,447.447 INFO    ] 200
[2026-06-27 03:37:58,448.448 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:37:58,471.471 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:37:58,513.513 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:37:58,514.514 INFO    ] No camera update needed
[2026-06-27 03:37:58,516.516 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:37:58,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:37:58,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:37:58,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:38:00,564.564 INFO    ] ================================================
[2026-06-27 03:38:00,579.579 INFO    ] Launching Daemon at Sat Jun 27 03:38:00 IST 2026
[2026-06-27 03:38:00,590.590 INFO    ] ================================================
[2026-06-27 03:38:00,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:38:00
[2026-06-27 03:38:01,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:38:01,381.381 INFO    ] Initializing speech engine...
[2026-06-27 03:38:01,391.391 INFO    ] 2026-06-27 03:38:01
[2026-06-27 03:38:01,595.595 INFO    ] 2026-06-27 03:38:01
[2026-06-27 03:38:01,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:38:01,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:38:01,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:38:01,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:38:01,961.961 INFO    ] time= 27/06/2026 03:38:01
[2026-06-27 03:38:01,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:38:01,994.994 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:38:02,114.114 INFO    ] No existing commands found in stream
[2026-06-27 03:38:07,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:38:07,140.140 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-27 03:38:10,317.317 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 03:38:10,318.318 INFO    ] Checking for system updates...
[2026-06-27 03:38:10,340.340 INFO    ] 200
[2026-06-27 03:38:10,341.341 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:38:10,371.371 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:38:10,373.373 INFO    ] No update needed
[2026-06-27 03:38:10,374.374 INFO    ] Checking for camera pi updates...
[2026-06-27 03:38:10,396.396 INFO    ] 200
[2026-06-27 03:38:10,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:38:10,422.422 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:38:10,461.461 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:38:10,463.463 INFO    ] No camera update needed
[2026-06-27 03:38:10,464.464 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:38:10,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:38:10,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:38:10,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:38:12,510.510 INFO    ] ================================================
[2026-06-27 03:38:12,526.526 INFO    ] Launching Daemon at Sat Jun 27 03:38:12 IST 2026
[2026-06-27 03:38:12,537.537 INFO    ] ================================================
[2026-06-27 03:38:12,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:38:12
[2026-06-27 03:38:13,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:38:13,329.329 INFO    ] Initializing speech engine...
[2026-06-27 03:38:13,333.333 INFO    ] 2026-06-27 03:38:13
[2026-06-27 03:38:13,554.554 INFO    ] 2026-06-27 03:38:13
[2026-06-27 03:38:13,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:38:13,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:38:13,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:38:13,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:38:14,014.014 INFO    ] time= 27/06/2026 03:38:13
[2026-06-27 03:38:14,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:38:14,032.032 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:38:14,102.102 INFO    ] No existing commands found in stream
[2026-06-27 03:38:19,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:38:19,116.116 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-27 03:38:23,485.485 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:38:23,487.487 INFO    ] Checking for system updates...
[2026-06-27 03:38:23,508.508 INFO    ] 200
[2026-06-27 03:38:23,510.510 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:38:23,541.541 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:38:23,542.542 INFO    ] No update needed
[2026-06-27 03:38:23,544.544 INFO    ] Checking for camera pi updates...
[2026-06-27 03:38:23,564.564 INFO    ] 200
[2026-06-27 03:38:23,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:38:23,589.589 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:38:23,629.629 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:38:23,631.631 INFO    ] No camera update needed
[2026-06-27 03:38:23,632.632 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:38:23,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:38:23,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:38:23,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:38:25,681.681 INFO    ] ================================================
[2026-06-27 03:38:25,696.696 INFO    ] Launching Daemon at Sat Jun 27 03:38:25 IST 2026
[2026-06-27 03:38:25,707.707 INFO    ] ================================================
[2026-06-27 03:38:26,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:38:26
[2026-06-27 03:38:26,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:38:26,503.503 INFO    ] Initializing speech engine...
[2026-06-27 03:38:26,508.508 INFO    ] 2026-06-27 03:38:26
[2026-06-27 03:38:26,718.718 INFO    ] 2026-06-27 03:38:26
[2026-06-27 03:38:26,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:38:26,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:38:26,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:38:27,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:38:27,143.143 INFO    ] time= 27/06/2026 03:38:27
[2026-06-27 03:38:27,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:38:27,172.172 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:38:27,239.239 INFO    ] No existing commands found in stream
[2026-06-27 03:38:32,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:38:32,247.247 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-27 03:38:33,953.953 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 03:38:33,954.954 INFO    ] Checking for system updates...
[2026-06-27 03:38:33,976.976 INFO    ] 200
[2026-06-27 03:38:33,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:38:34,008.008 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:38:34,009.009 INFO    ] No update needed
[2026-06-27 03:38:34,011.011 INFO    ] Checking for camera pi updates...
[2026-06-27 03:38:34,030.030 INFO    ] 200
[2026-06-27 03:38:34,031.031 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:38:34,056.056 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:38:34,104.104 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:38:34,105.105 INFO    ] No camera update needed
[2026-06-27 03:38:34,106.106 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:38:34,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:38:34,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:38:34,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:38:36,144.144 INFO    ] ================================================
[2026-06-27 03:38:36,160.160 INFO    ] Launching Daemon at Sat Jun 27 03:38:36 IST 2026
[2026-06-27 03:38:36,171.171 INFO    ] ================================================
[2026-06-27 03:38:36,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:38:36
[2026-06-27 03:38:36,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:38:36,965.965 INFO    ] Initializing speech engine...
[2026-06-27 03:38:36,969.969 INFO    ] 2026-06-27 03:38:36
[2026-06-27 03:38:37,174.174 INFO    ] 2026-06-27 03:38:37
[2026-06-27 03:38:37,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:38:37,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:38:37,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:38:37,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:38:37,615.615 INFO    ] time= 27/06/2026 03:38:37
[2026-06-27 03:38:37,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:38:37,622.622 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:38:37,689.689 INFO    ] No existing commands found in stream
[2026-06-27 03:38:42,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:38:42,700.700 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-27 03:38:46,460.460 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 03:38:46,462.462 INFO    ] Checking for system updates...
[2026-06-27 03:38:46,483.483 INFO    ] 200
[2026-06-27 03:38:46,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:38:46,515.515 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:38:46,517.517 INFO    ] No update needed
[2026-06-27 03:38:46,518.518 INFO    ] Checking for camera pi updates...
[2026-06-27 03:38:46,538.538 INFO    ] 200
[2026-06-27 03:38:46,539.539 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:38:46,563.563 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:38:46,602.602 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:38:46,603.603 INFO    ] No camera update needed
[2026-06-27 03:38:46,605.605 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:38:46,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:38:46,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:38:46,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:38:48,652.652 INFO    ] ================================================
[2026-06-27 03:38:48,668.668 INFO    ] Launching Daemon at Sat Jun 27 03:38:48 IST 2026
[2026-06-27 03:38:48,678.678 INFO    ] ================================================
[2026-06-27 03:38:49,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:38:49
[2026-06-27 03:38:49,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:38:49,461.461 INFO    ] Initializing speech engine...
[2026-06-27 03:38:49,472.472 INFO    ] 2026-06-27 03:38:49
[2026-06-27 03:38:49,677.677 INFO    ] 2026-06-27 03:38:49
[2026-06-27 03:38:49,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:38:49,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:38:49,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:38:50,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:38:50,093.093 INFO    ] time= 27/06/2026 03:38:50
[2026-06-27 03:38:50,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:38:50,121.121 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:38:50,189.189 INFO    ] No existing commands found in stream
[2026-06-27 03:38:55,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:38:55,200.200 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-27 03:38:58,365.365 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 03:38:58,367.367 INFO    ] Checking for system updates...
[2026-06-27 03:38:58,388.388 INFO    ] 200
[2026-06-27 03:38:58,390.390 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:38:58,420.420 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:38:58,421.421 INFO    ] No update needed
[2026-06-27 03:38:58,423.423 INFO    ] Checking for camera pi updates...
[2026-06-27 03:38:58,443.443 INFO    ] 200
[2026-06-27 03:38:58,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:38:58,470.470 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:38:58,508.508 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:38:58,510.510 INFO    ] No camera update needed
[2026-06-27 03:38:58,511.511 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:38:58,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:38:58,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:38:58,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:39:00,558.558 INFO    ] ================================================
[2026-06-27 03:39:00,573.573 INFO    ] Launching Daemon at Sat Jun 27 03:39:00 IST 2026
[2026-06-27 03:39:00,583.583 INFO    ] ================================================
[2026-06-27 03:39:00,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:39:00
[2026-06-27 03:39:01,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:39:01,374.374 INFO    ] Initializing speech engine...
[2026-06-27 03:39:01,379.379 INFO    ] 2026-06-27 03:39:01
[2026-06-27 03:39:01,584.584 INFO    ] 2026-06-27 03:39:01
[2026-06-27 03:39:01,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:39:01,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:39:01,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:39:01,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:39:01,952.952 INFO    ] time= 27/06/2026 03:39:01
[2026-06-27 03:39:01,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:39:02,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:39:02,075.075 INFO    ] No existing commands found in stream
[2026-06-27 03:39:07,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:39:07,088.088 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-27 03:39:08,831.831 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:39:08,833.833 INFO    ] Checking for system updates...
[2026-06-27 03:39:08,857.857 INFO    ] 200
[2026-06-27 03:39:08,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:39:08,890.890 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:39:08,892.892 INFO    ] No update needed
[2026-06-27 03:39:08,893.893 INFO    ] Checking for camera pi updates...
[2026-06-27 03:39:08,913.913 INFO    ] 200
[2026-06-27 03:39:08,915.915 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:39:08,938.938 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:39:08,960.960 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:39:08,961.961 INFO    ] No camera update needed
[2026-06-27 03:39:08,963.963 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:39:08,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:39:08,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:39:08,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:39:11,008.008 INFO    ] ================================================
[2026-06-27 03:39:11,023.023 INFO    ] Launching Daemon at Sat Jun 27 03:39:11 IST 2026
[2026-06-27 03:39:11,034.034 INFO    ] ================================================
[2026-06-27 03:39:11,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:39:11
[2026-06-27 03:39:11,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:39:11,831.831 INFO    ] Initializing speech engine...
[2026-06-27 03:39:11,836.836 INFO    ] 2026-06-27 03:39:11
[2026-06-27 03:39:12,039.039 INFO    ] 2026-06-27 03:39:12
[2026-06-27 03:39:12,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:39:12,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:39:12,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:39:12,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:39:12,462.462 INFO    ] time= 27/06/2026 03:39:12
[2026-06-27 03:39:12,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:39:12,491.491 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:39:12,556.556 INFO    ] No existing commands found in stream
[2026-06-27 03:39:17,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:39:17,570.570 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-27 03:39:19,531.531 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:39:19,532.532 INFO    ] Checking for system updates...
[2026-06-27 03:39:19,554.554 INFO    ] 200
[2026-06-27 03:39:19,555.555 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:39:19,586.586 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:39:19,587.587 INFO    ] No update needed
[2026-06-27 03:39:19,589.589 INFO    ] Checking for camera pi updates...
[2026-06-27 03:39:19,610.610 INFO    ] 200
[2026-06-27 03:39:19,611.611 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:39:19,636.636 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:39:19,687.687 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:39:19,689.689 INFO    ] No camera update needed
[2026-06-27 03:39:19,691.691 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:39:19,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:39:19,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:39:19,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:39:21,745.745 INFO    ] ================================================
[2026-06-27 03:39:21,760.760 INFO    ] Launching Daemon at Sat Jun 27 03:39:21 IST 2026
[2026-06-27 03:39:21,771.771 INFO    ] ================================================
[2026-06-27 03:39:22,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:39:22
[2026-06-27 03:39:22,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:39:22,558.558 INFO    ] Initializing speech engine...
[2026-06-27 03:39:22,564.564 INFO    ] 2026-06-27 03:39:22
[2026-06-27 03:39:22,767.767 INFO    ] 2026-06-27 03:39:22
[2026-06-27 03:39:22,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:39:22,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:39:22,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:39:23,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:39:23,204.204 INFO    ] time= 27/06/2026 03:39:23
[2026-06-27 03:39:23,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:39:23,220.220 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:39:23,287.287 INFO    ] No existing commands found in stream
[2026-06-27 03:39:28,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:39:28,304.304 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-27 03:39:31,157.157 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:39:31,159.159 INFO    ] Checking for system updates...
[2026-06-27 03:39:31,181.181 INFO    ] 200
[2026-06-27 03:39:31,182.182 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:39:31,212.212 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:39:31,214.214 INFO    ] No update needed
[2026-06-27 03:39:31,215.215 INFO    ] Checking for camera pi updates...
[2026-06-27 03:39:31,236.236 INFO    ] 200
[2026-06-27 03:39:31,237.237 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:39:31,260.260 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:39:31,299.299 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:39:31,300.300 INFO    ] No camera update needed
[2026-06-27 03:39:31,301.301 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:39:31,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:39:31,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:39:31,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:39:33,335.335 INFO    ] ================================================
[2026-06-27 03:39:33,344.344 INFO    ] Launching Daemon at Sat Jun 27 03:39:33 IST 2026
[2026-06-27 03:39:33,349.349 INFO    ] ================================================
[2026-06-27 03:39:33,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:39:33
[2026-06-27 03:39:34,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:39:34,141.141 INFO    ] Initializing speech engine...
[2026-06-27 03:39:34,146.146 INFO    ] 2026-06-27 03:39:34
[2026-06-27 03:39:34,363.363 INFO    ] 2026-06-27 03:39:34
[2026-06-27 03:39:34,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:39:34,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:39:34,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:39:34,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:39:34,804.804 INFO    ] time= 27/06/2026 03:39:34
[2026-06-27 03:39:34,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:39:34,812.812 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:39:34,877.877 INFO    ] No existing commands found in stream
[2026-06-27 03:39:39,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:39:39,890.890 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-27 03:39:43,348.348 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 03:39:43,349.349 INFO    ] Checking for system updates...
[2026-06-27 03:39:43,371.371 INFO    ] 200
[2026-06-27 03:39:43,373.373 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:39:43,406.406 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:39:43,407.407 INFO    ] No update needed
[2026-06-27 03:39:43,409.409 INFO    ] Checking for camera pi updates...
[2026-06-27 03:39:43,428.428 INFO    ] 200
[2026-06-27 03:39:43,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:39:43,454.454 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:39:43,592.592 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:39:43,594.594 INFO    ] No camera update needed
[2026-06-27 03:39:43,595.595 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:39:43,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:39:43,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:39:43,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:39:45,641.641 INFO    ] ================================================
[2026-06-27 03:39:45,657.657 INFO    ] Launching Daemon at Sat Jun 27 03:39:45 IST 2026
[2026-06-27 03:39:45,667.667 INFO    ] ================================================
[2026-06-27 03:39:45,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:39:45
[2026-06-27 03:39:46,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:39:46,457.457 INFO    ] Initializing speech engine...
[2026-06-27 03:39:46,463.463 INFO    ] 2026-06-27 03:39:46
[2026-06-27 03:39:46,667.667 INFO    ] 2026-06-27 03:39:46
[2026-06-27 03:39:46,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:39:46,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:39:46,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:39:47,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:39:47,084.084 INFO    ] time= 27/06/2026 03:39:47
[2026-06-27 03:39:47,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:39:47,114.114 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:39:47,181.181 INFO    ] No existing commands found in stream
[2026-06-27 03:39:52,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:39:52,217.217 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-27 03:39:54,684.684 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 03:39:54,685.685 INFO    ] Checking for system updates...
[2026-06-27 03:39:54,707.707 INFO    ] 200
[2026-06-27 03:39:54,708.708 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:39:54,739.739 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:39:54,740.740 INFO    ] No update needed
[2026-06-27 03:39:54,741.741 INFO    ] Checking for camera pi updates...
[2026-06-27 03:39:54,761.761 INFO    ] 200
[2026-06-27 03:39:54,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:39:54,786.786 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:39:54,809.809 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:39:54,810.810 INFO    ] No camera update needed
[2026-06-27 03:39:54,812.812 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:39:54,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:39:54,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:39:54,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:39:56,858.858 INFO    ] ================================================
[2026-06-27 03:39:56,873.873 INFO    ] Launching Daemon at Sat Jun 27 03:39:56 IST 2026
[2026-06-27 03:39:56,884.884 INFO    ] ================================================
[2026-06-27 03:39:57,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:39:57
[2026-06-27 03:39:57,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:39:57,720.720 INFO    ] Initializing speech engine...
[2026-06-27 03:39:57,730.730 INFO    ] 2026-06-27 03:39:57
[2026-06-27 03:39:57,934.934 INFO    ] 2026-06-27 03:39:57
[2026-06-27 03:39:57,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:39:58,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:39:58,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:39:58,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:39:58,373.373 INFO    ] time= 27/06/2026 03:39:58
[2026-06-27 03:39:58,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:39:58,380.380 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:39:58,447.447 INFO    ] No existing commands found in stream
[2026-06-27 03:40:03,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:40:03,459.459 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-27 03:40:08,226.226 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 03:40:08,227.227 INFO    ] Checking for system updates...
[2026-06-27 03:40:08,259.259 INFO    ] 200
[2026-06-27 03:40:08,260.260 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:40:08,293.293 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:40:08,294.294 INFO    ] No update needed
[2026-06-27 03:40:08,296.296 INFO    ] Checking for camera pi updates...
[2026-06-27 03:40:08,315.315 INFO    ] 200
[2026-06-27 03:40:08,316.316 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:40:08,349.349 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:40:08,377.377 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:40:08,378.378 INFO    ] No camera update needed
[2026-06-27 03:40:08,379.379 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:40:08,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:40:08,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:40:08,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:40:10,426.426 INFO    ] ================================================
[2026-06-27 03:40:10,441.441 INFO    ] Launching Daemon at Sat Jun 27 03:40:10 IST 2026
[2026-06-27 03:40:10,452.452 INFO    ] ================================================
[2026-06-27 03:40:10,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:40:10
[2026-06-27 03:40:11,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:40:11,242.242 INFO    ] Initializing speech engine...
[2026-06-27 03:40:11,249.249 INFO    ] 2026-06-27 03:40:11
[2026-06-27 03:40:11,453.453 INFO    ] 2026-06-27 03:40:11
[2026-06-27 03:40:11,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:40:11,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:40:11,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:40:11,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:40:11,876.876 INFO    ] time= 27/06/2026 03:40:11
[2026-06-27 03:40:11,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:40:11,905.905 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:40:11,972.972 INFO    ] No existing commands found in stream
[2026-06-27 03:40:16,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:40:16,984.984 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-27 03:40:20,689.689 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 03:40:20,691.691 INFO    ] Checking for system updates...
[2026-06-27 03:40:20,713.713 INFO    ] 200
[2026-06-27 03:40:20,715.715 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:40:20,748.748 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:40:20,750.750 INFO    ] No update needed
[2026-06-27 03:40:20,751.751 INFO    ] Checking for camera pi updates...
[2026-06-27 03:40:20,771.771 INFO    ] 200
[2026-06-27 03:40:20,773.773 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:40:20,797.797 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:40:20,821.821 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:40:20,823.823 INFO    ] No camera update needed
[2026-06-27 03:40:20,824.824 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:40:20,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:40:20,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:40:20,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:40:22,870.870 INFO    ] ================================================
[2026-06-27 03:40:22,885.885 INFO    ] Launching Daemon at Sat Jun 27 03:40:22 IST 2026
[2026-06-27 03:40:22,896.896 INFO    ] ================================================
[2026-06-27 03:40:23,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:40:23
[2026-06-27 03:40:23,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:40:23,668.668 INFO    ] Initializing speech engine...
[2026-06-27 03:40:23,676.676 INFO    ] 2026-06-27 03:40:23
[2026-06-27 03:40:23,890.890 INFO    ] 2026-06-27 03:40:23
[2026-06-27 03:40:23,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:40:24,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:40:24,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:40:24,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:40:24,336.336 INFO    ] time= 27/06/2026 03:40:24
[2026-06-27 03:40:24,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:40:24,343.343 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:40:24,411.411 INFO    ] No existing commands found in stream
[2026-06-27 03:40:29,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:40:29,423.423 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-27 03:40:32,255.255 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:40:32,257.257 INFO    ] Checking for system updates...
[2026-06-27 03:40:32,278.278 INFO    ] 200
[2026-06-27 03:40:32,280.280 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:40:32,313.313 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:40:32,315.315 INFO    ] No update needed
[2026-06-27 03:40:32,316.316 INFO    ] Checking for camera pi updates...
[2026-06-27 03:40:32,336.336 INFO    ] 200
[2026-06-27 03:40:32,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:40:32,362.362 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:40:32,386.386 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:40:32,388.388 INFO    ] No camera update needed
[2026-06-27 03:40:32,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:40:32,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:40:32,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:40:32,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:40:34,438.438 INFO    ] ================================================
[2026-06-27 03:40:34,454.454 INFO    ] Launching Daemon at Sat Jun 27 03:40:34 IST 2026
[2026-06-27 03:40:34,464.464 INFO    ] ================================================
[2026-06-27 03:40:34,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:40:34
[2026-06-27 03:40:35,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:40:35,243.243 INFO    ] Initializing speech engine...
[2026-06-27 03:40:35,250.250 INFO    ] 2026-06-27 03:40:35
[2026-06-27 03:40:35,458.458 INFO    ] 2026-06-27 03:40:35
[2026-06-27 03:40:35,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:40:35,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:40:35,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:40:35,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:40:35,886.886 INFO    ] time= 27/06/2026 03:40:35
[2026-06-27 03:40:35,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:40:35,913.913 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:40:35,981.981 INFO    ] No existing commands found in stream
[2026-06-27 03:40:41,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:40:41,008.008 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-27 03:40:42,890.890 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:40:42,891.891 INFO    ] Checking for system updates...
[2026-06-27 03:40:42,913.913 INFO    ] 200
[2026-06-27 03:40:42,915.915 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:40:42,946.946 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:40:42,947.947 INFO    ] No update needed
[2026-06-27 03:40:42,949.949 INFO    ] Checking for camera pi updates...
[2026-06-27 03:40:42,969.969 INFO    ] 200
[2026-06-27 03:40:42,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:40:42,994.994 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:40:43,043.043 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:40:43,045.045 INFO    ] No camera update needed
[2026-06-27 03:40:43,046.046 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:40:43,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:40:43,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:40:43,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:40:45,090.090 INFO    ] ================================================
[2026-06-27 03:40:45,106.106 INFO    ] Launching Daemon at Sat Jun 27 03:40:45 IST 2026
[2026-06-27 03:40:45,116.116 INFO    ] ================================================
[2026-06-27 03:40:45,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:40:45
[2026-06-27 03:40:45,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:40:45,891.891 INFO    ] Initializing speech engine...
[2026-06-27 03:40:45,896.896 INFO    ] 2026-06-27 03:40:45
[2026-06-27 03:40:46,103.103 INFO    ] 2026-06-27 03:40:46
[2026-06-27 03:40:46,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:40:46,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:40:46,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:40:46,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:40:46,550.550 INFO    ] time= 27/06/2026 03:40:46
[2026-06-27 03:40:46,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:40:46,558.558 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:40:46,624.624 INFO    ] No existing commands found in stream
[2026-06-27 03:40:51,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:40:51,638.638 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-27 03:40:53,075.075 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:40:53,077.077 INFO    ] Checking for system updates...
[2026-06-27 03:40:53,098.098 INFO    ] 200
[2026-06-27 03:40:53,099.099 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:40:53,130.130 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:40:53,131.131 INFO    ] No update needed
[2026-06-27 03:40:53,133.133 INFO    ] Checking for camera pi updates...
[2026-06-27 03:40:53,152.152 INFO    ] 200
[2026-06-27 03:40:53,154.154 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:40:53,180.180 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:40:53,221.221 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:40:53,222.222 INFO    ] No camera update needed
[2026-06-27 03:40:53,223.223 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:40:53,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:40:53,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:40:53,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:40:55,268.268 INFO    ] ================================================
[2026-06-27 03:40:55,283.283 INFO    ] Launching Daemon at Sat Jun 27 03:40:55 IST 2026
[2026-06-27 03:40:55,294.294 INFO    ] ================================================
[2026-06-27 03:40:55,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:40:55
[2026-06-27 03:40:55,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:40:56,093.093 INFO    ] Initializing speech engine...
[2026-06-27 03:40:56,098.098 INFO    ] 2026-06-27 03:40:56
[2026-06-27 03:40:56,303.303 INFO    ] 2026-06-27 03:40:56
[2026-06-27 03:40:56,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:40:56,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:40:56,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:40:56,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:40:56,778.778 INFO    ] time= 27/06/2026 03:40:56
[2026-06-27 03:40:56,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:40:56,786.786 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:40:56,857.857 INFO    ] No existing commands found in stream
[2026-06-27 03:41:01,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:41:01,869.869 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-27 03:41:03,031.031 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 03:41:03,033.033 INFO    ] Checking for system updates...
[2026-06-27 03:41:03,055.055 INFO    ] 200
[2026-06-27 03:41:03,056.056 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:41:03,089.089 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:41:03,091.091 INFO    ] No update needed
[2026-06-27 03:41:03,092.092 INFO    ] Checking for camera pi updates...
[2026-06-27 03:41:03,112.112 INFO    ] 200
[2026-06-27 03:41:03,114.114 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:41:03,138.138 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:41:03,178.178 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:41:03,179.179 INFO    ] No camera update needed
[2026-06-27 03:41:03,181.181 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:41:03,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:41:03,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:41:03,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:41:05,228.228 INFO    ] ================================================
[2026-06-27 03:41:05,243.243 INFO    ] Launching Daemon at Sat Jun 27 03:41:05 IST 2026
[2026-06-27 03:41:05,254.254 INFO    ] ================================================
[2026-06-27 03:41:05,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:41:05
[2026-06-27 03:41:05,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:41:06,069.069 INFO    ] Initializing speech engine...
[2026-06-27 03:41:06,078.078 INFO    ] 2026-06-27 03:41:06
[2026-06-27 03:41:06,298.298 INFO    ] 2026-06-27 03:41:06
[2026-06-27 03:41:06,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:41:06,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:41:06,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:41:06,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:41:06,751.751 INFO    ] time= 27/06/2026 03:41:06
[2026-06-27 03:41:06,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:41:06,789.789 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:41:06,865.865 INFO    ] No existing commands found in stream
[2026-06-27 03:41:11,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:41:11,878.878 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-27 03:41:14,989.989 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 03:41:14,990.990 INFO    ] Checking for system updates...
[2026-06-27 03:41:15,013.013 INFO    ] 200
[2026-06-27 03:41:15,015.015 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:41:15,046.046 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:41:15,047.047 INFO    ] No update needed
[2026-06-27 03:41:15,048.048 INFO    ] Checking for camera pi updates...
[2026-06-27 03:41:15,069.069 INFO    ] 200
[2026-06-27 03:41:15,070.070 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:41:15,095.095 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:41:15,128.128 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:41:15,130.130 INFO    ] No camera update needed
[2026-06-27 03:41:15,131.131 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:41:15,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:41:15,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:41:15,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:41:17,177.177 INFO    ] ================================================
[2026-06-27 03:41:17,192.192 INFO    ] Launching Daemon at Sat Jun 27 03:41:17 IST 2026
[2026-06-27 03:41:17,203.203 INFO    ] ================================================
[2026-06-27 03:41:17,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:41:17
[2026-06-27 03:41:17,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:41:18,016.016 INFO    ] Initializing speech engine...
[2026-06-27 03:41:18,020.020 INFO    ] 2026-06-27 03:41:18
[2026-06-27 03:41:18,240.240 INFO    ] 2026-06-27 03:41:18
[2026-06-27 03:41:18,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:41:18,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:41:18,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:41:18,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:41:18,667.667 INFO    ] time= 27/06/2026 03:41:18
[2026-06-27 03:41:18,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:41:18,696.696 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:41:18,761.761 INFO    ] No existing commands found in stream
[2026-06-27 03:41:23,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:41:23,775.775 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-27 03:41:25,406.406 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:41:25,407.407 INFO    ] Checking for system updates...
[2026-06-27 03:41:25,429.429 INFO    ] 200
[2026-06-27 03:41:25,430.430 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:41:25,461.461 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:41:25,462.462 INFO    ] No update needed
[2026-06-27 03:41:25,464.464 INFO    ] Checking for camera pi updates...
[2026-06-27 03:41:25,485.485 INFO    ] 200
[2026-06-27 03:41:25,486.486 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:41:25,511.511 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:41:25,559.559 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:41:25,560.560 INFO    ] No camera update needed
[2026-06-27 03:41:25,561.561 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:41:25,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:41:25,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:41:25,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:41:27,607.607 INFO    ] ================================================
[2026-06-27 03:41:27,623.623 INFO    ] Launching Daemon at Sat Jun 27 03:41:27 IST 2026
[2026-06-27 03:41:27,634.634 INFO    ] ================================================
[2026-06-27 03:41:28,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:41:28
[2026-06-27 03:41:28,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:41:28,520.520 INFO    ] Initializing speech engine...
[2026-06-27 03:41:28,526.526 INFO    ] 2026-06-27 03:41:28
[2026-06-27 03:41:28,741.741 INFO    ] 2026-06-27 03:41:28
[2026-06-27 03:41:28,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:41:28,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:41:28,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:41:29,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:41:29,189.189 INFO    ] time= 27/06/2026 03:41:29
[2026-06-27 03:41:29,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:41:29,197.197 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:41:29,265.265 INFO    ] No existing commands found in stream
[2026-06-27 03:41:34,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:41:34,278.278 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-27 03:41:38,042.042 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:41:38,044.044 INFO    ] Checking for system updates...
[2026-06-27 03:41:38,065.065 INFO    ] 200
[2026-06-27 03:41:38,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:41:38,100.100 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:41:38,102.102 INFO    ] No update needed
[2026-06-27 03:41:38,103.103 INFO    ] Checking for camera pi updates...
[2026-06-27 03:41:38,122.122 INFO    ] 200
[2026-06-27 03:41:38,124.124 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:41:38,149.149 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:41:38,188.188 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:41:38,189.189 INFO    ] No camera update needed
[2026-06-27 03:41:38,190.190 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:41:38,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:41:38,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:41:38,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:41:40,238.238 INFO    ] ================================================
[2026-06-27 03:41:40,253.253 INFO    ] Launching Daemon at Sat Jun 27 03:41:40 IST 2026
[2026-06-27 03:41:40,264.264 INFO    ] ================================================
[2026-06-27 03:41:40,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:41:40
[2026-06-27 03:41:40,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:41:41,120.120 INFO    ] Initializing speech engine...
[2026-06-27 03:41:41,126.126 INFO    ] 2026-06-27 03:41:41
[2026-06-27 03:41:41,335.335 INFO    ] 2026-06-27 03:41:41
[2026-06-27 03:41:41,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:41:41,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:41:41,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:41:41,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:41:41,780.780 INFO    ] time= 27/06/2026 03:41:41
[2026-06-27 03:41:41,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:41:41,788.788 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:41:41,856.856 INFO    ] No existing commands found in stream
[2026-06-27 03:41:46,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:41:46,874.874 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-27 03:41:49,931.931 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 03:41:49,932.932 INFO    ] Checking for system updates...
[2026-06-27 03:41:49,953.953 INFO    ] 200
[2026-06-27 03:41:49,955.955 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:41:49,991.991 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:41:49,992.992 INFO    ] No update needed
[2026-06-27 03:41:49,993.993 INFO    ] Checking for camera pi updates...
[2026-06-27 03:41:50,014.014 INFO    ] 200
[2026-06-27 03:41:50,016.016 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:41:50,041.041 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:41:50,181.181 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:41:50,182.182 INFO    ] No camera update needed
[2026-06-27 03:41:50,183.183 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:41:50,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:41:50,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:41:50,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:41:52,228.228 INFO    ] ================================================
[2026-06-27 03:41:52,244.244 INFO    ] Launching Daemon at Sat Jun 27 03:41:52 IST 2026
[2026-06-27 03:41:52,254.254 INFO    ] ================================================
[2026-06-27 03:41:52,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:41:52
[2026-06-27 03:41:52,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:41:53,059.059 INFO    ] Initializing speech engine...
[2026-06-27 03:41:53,064.064 INFO    ] 2026-06-27 03:41:53
[2026-06-27 03:41:53,267.267 INFO    ] 2026-06-27 03:41:53
[2026-06-27 03:41:53,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:41:53,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:41:53,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:41:53,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:41:53,707.707 INFO    ] time= 27/06/2026 03:41:53
[2026-06-27 03:41:53,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:41:53,715.715 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:41:53,782.782 INFO    ] No existing commands found in stream
[2026-06-27 03:41:58,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:41:58,794.794 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-27 03:42:00,496.496 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:42:00,498.498 INFO    ] Checking for system updates...
[2026-06-27 03:42:00,518.518 INFO    ] 200
[2026-06-27 03:42:00,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:42:00,552.552 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:42:00,554.554 INFO    ] No update needed
[2026-06-27 03:42:00,555.555 INFO    ] Checking for camera pi updates...
[2026-06-27 03:42:00,576.576 INFO    ] 200
[2026-06-27 03:42:00,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:42:00,603.603 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:42:00,651.651 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:42:00,652.652 INFO    ] No camera update needed
[2026-06-27 03:42:00,654.654 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:42:00,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:42:00,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:42:00,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:42:02,695.695 INFO    ] ================================================
[2026-06-27 03:42:02,710.710 INFO    ] Launching Daemon at Sat Jun 27 03:42:02 IST 2026
[2026-06-27 03:42:02,721.721 INFO    ] ================================================
[2026-06-27 03:42:03,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:42:03
[2026-06-27 03:42:03,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:42:03,505.505 INFO    ] Initializing speech engine...
[2026-06-27 03:42:03,511.511 INFO    ] 2026-06-27 03:42:03
[2026-06-27 03:42:03,720.720 INFO    ] 2026-06-27 03:42:03
[2026-06-27 03:42:03,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:42:03,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:42:03,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:42:04,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:42:04,130.130 INFO    ] time= 27/06/2026 03:42:04
[2026-06-27 03:42:04,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:42:04,175.175 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:42:04,242.242 INFO    ] No existing commands found in stream
[2026-06-27 03:42:09,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:42:09,254.254 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-27 03:42:11,410.410 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 03:42:11,411.411 INFO    ] Checking for system updates...
[2026-06-27 03:42:11,433.433 INFO    ] 200
[2026-06-27 03:42:11,435.435 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:42:11,466.466 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:42:11,467.467 INFO    ] No update needed
[2026-06-27 03:42:11,468.468 INFO    ] Checking for camera pi updates...
[2026-06-27 03:42:11,487.487 INFO    ] 200
[2026-06-27 03:42:11,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:42:11,516.516 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:42:11,553.553 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:42:11,554.554 INFO    ] No camera update needed
[2026-06-27 03:42:11,556.556 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:42:11,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:42:11,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:42:11,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:42:13,602.602 INFO    ] ================================================
[2026-06-27 03:42:13,617.617 INFO    ] Launching Daemon at Sat Jun 27 03:42:13 IST 2026
[2026-06-27 03:42:13,628.628 INFO    ] ================================================
[2026-06-27 03:42:13,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:42:13
[2026-06-27 03:42:14,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:42:14,425.425 INFO    ] Initializing speech engine...
[2026-06-27 03:42:14,434.434 INFO    ] 2026-06-27 03:42:14
[2026-06-27 03:42:14,638.638 INFO    ] 2026-06-27 03:42:14
[2026-06-27 03:42:14,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:42:14,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:42:14,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:42:14,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:42:15,047.047 INFO    ] time= 27/06/2026 03:42:14
[2026-06-27 03:42:15,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:42:15,085.085 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:42:15,151.151 INFO    ] No existing commands found in stream
[2026-06-27 03:42:20,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:42:20,163.163 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-27 03:42:21,186.186 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 03:42:21,188.188 INFO    ] Checking for system updates...
[2026-06-27 03:42:21,210.210 INFO    ] 200
[2026-06-27 03:42:21,211.211 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:42:21,244.244 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:42:21,246.246 INFO    ] No update needed
[2026-06-27 03:42:21,247.247 INFO    ] Checking for camera pi updates...
[2026-06-27 03:42:21,266.266 INFO    ] 200
[2026-06-27 03:42:21,268.268 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:42:21,293.293 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:42:21,337.337 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:42:21,338.338 INFO    ] No camera update needed
[2026-06-27 03:42:21,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:42:21,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:42:21,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:42:21,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:42:23,391.391 INFO    ] ================================================
[2026-06-27 03:42:23,406.406 INFO    ] Launching Daemon at Sat Jun 27 03:42:23 IST 2026
[2026-06-27 03:42:23,417.417 INFO    ] ================================================
[2026-06-27 03:42:23,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:42:23
[2026-06-27 03:42:24,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:42:24,267.267 INFO    ] Initializing speech engine...
[2026-06-27 03:42:24,273.273 INFO    ] 2026-06-27 03:42:24
[2026-06-27 03:42:24,477.477 INFO    ] 2026-06-27 03:42:24
[2026-06-27 03:42:24,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:42:24,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:42:24,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:42:24,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:42:24,897.897 INFO    ] time= 27/06/2026 03:42:24
[2026-06-27 03:42:24,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:42:24,926.926 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:42:24,991.991 INFO    ] No existing commands found in stream
[2026-06-27 03:42:30,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:42:30,005.005 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-27 03:42:32,646.646 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 03:42:32,647.647 INFO    ] Checking for system updates...
[2026-06-27 03:42:32,670.670 INFO    ] 200
[2026-06-27 03:42:32,671.671 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:42:32,702.702 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:42:32,703.703 INFO    ] No update needed
[2026-06-27 03:42:32,705.705 INFO    ] Checking for camera pi updates...
[2026-06-27 03:42:32,724.724 INFO    ] 200
[2026-06-27 03:42:32,726.726 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:42:32,750.750 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:42:32,778.778 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:42:32,779.779 INFO    ] No camera update needed
[2026-06-27 03:42:32,780.780 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:42:32,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:42:32,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:42:32,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:42:34,825.825 INFO    ] ================================================
[2026-06-27 03:42:34,840.840 INFO    ] Launching Daemon at Sat Jun 27 03:42:34 IST 2026
[2026-06-27 03:42:34,851.851 INFO    ] ================================================
[2026-06-27 03:42:35,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:42:35
[2026-06-27 03:42:35,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:42:35,663.663 INFO    ] Initializing speech engine...
[2026-06-27 03:42:35,673.673 INFO    ] 2026-06-27 03:42:35
[2026-06-27 03:42:35,877.877 INFO    ] 2026-06-27 03:42:35
[2026-06-27 03:42:35,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:42:36,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:42:36,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:42:36,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:42:36,303.303 INFO    ] time= 27/06/2026 03:42:36
[2026-06-27 03:42:36,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:42:36,333.333 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:42:36,420.420 INFO    ] No existing commands found in stream
[2026-06-27 03:42:41,433.433 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:42:41,436.436 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-27 03:42:42,344.344 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:42:42,345.345 INFO    ] Checking for system updates...
[2026-06-27 03:42:42,367.367 INFO    ] 200
[2026-06-27 03:42:42,369.369 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:42:42,401.401 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:42:42,403.403 INFO    ] No update needed
[2026-06-27 03:42:42,404.404 INFO    ] Checking for camera pi updates...
[2026-06-27 03:42:42,424.424 INFO    ] 200
[2026-06-27 03:42:42,425.425 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:42:42,450.450 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:42:42,486.486 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:42:42,487.487 INFO    ] No camera update needed
[2026-06-27 03:42:42,488.488 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:42:42,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:42:42,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:42:42,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:42:44,537.537 INFO    ] ================================================
[2026-06-27 03:42:44,552.552 INFO    ] Launching Daemon at Sat Jun 27 03:42:44 IST 2026
[2026-06-27 03:42:44,563.563 INFO    ] ================================================
[2026-06-27 03:42:44,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:42:44
[2026-06-27 03:42:45,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:42:45,421.421 INFO    ] Initializing speech engine...
[2026-06-27 03:42:45,426.426 INFO    ] 2026-06-27 03:42:45
[2026-06-27 03:42:45,635.635 INFO    ] 2026-06-27 03:42:45
[2026-06-27 03:42:45,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:42:45,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:42:45,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:42:46,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:42:46,059.059 INFO    ] time= 27/06/2026 03:42:46
[2026-06-27 03:42:46,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:42:46,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:42:46,154.154 INFO    ] No existing commands found in stream
[2026-06-27 03:42:51,163.163 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:42:51,167.167 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-27 03:42:53,249.249 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 03:42:53,251.251 INFO    ] Checking for system updates...
[2026-06-27 03:42:53,274.274 INFO    ] 200
[2026-06-27 03:42:53,276.276 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:42:53,307.307 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:42:53,308.308 INFO    ] No update needed
[2026-06-27 03:42:53,310.310 INFO    ] Checking for camera pi updates...
[2026-06-27 03:42:53,330.330 INFO    ] 200
[2026-06-27 03:42:53,331.331 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:42:53,356.356 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:42:53,396.396 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:42:53,397.397 INFO    ] No camera update needed
[2026-06-27 03:42:53,399.399 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:42:53,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:42:53,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:42:53,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:42:55,445.445 INFO    ] ================================================
[2026-06-27 03:42:55,460.460 INFO    ] Launching Daemon at Sat Jun 27 03:42:55 IST 2026
[2026-06-27 03:42:55,471.471 INFO    ] ================================================
[2026-06-27 03:42:55,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:42:55
[2026-06-27 03:42:56,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:42:56,351.351 INFO    ] Initializing speech engine...
[2026-06-27 03:42:56,355.355 INFO    ] 2026-06-27 03:42:56
[2026-06-27 03:42:56,562.562 INFO    ] 2026-06-27 03:42:56
[2026-06-27 03:42:56,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:42:56,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:42:56,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:42:56,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:42:57,005.005 INFO    ] time= 27/06/2026 03:42:56
[2026-06-27 03:42:57,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:42:57,012.012 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:42:57,103.103 INFO    ] No existing commands found in stream
[2026-06-27 03:43:02,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:43:02,114.114 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-27 03:43:04,836.836 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 03:43:04,838.838 INFO    ] Checking for system updates...
[2026-06-27 03:43:04,862.862 INFO    ] 200
[2026-06-27 03:43:04,864.864 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:43:04,900.900 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:43:04,901.901 INFO    ] No update needed
[2026-06-27 03:43:04,903.903 INFO    ] Checking for camera pi updates...
[2026-06-27 03:43:04,927.927 INFO    ] 200
[2026-06-27 03:43:04,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:43:04,956.956 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:43:05,002.002 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:43:05,003.003 INFO    ] No camera update needed
[2026-06-27 03:43:05,005.005 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:43:05,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:43:05,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:43:05,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:43:07,051.051 INFO    ] ================================================
[2026-06-27 03:43:07,067.067 INFO    ] Launching Daemon at Sat Jun 27 03:43:07 IST 2026
[2026-06-27 03:43:07,078.078 INFO    ] ================================================
[2026-06-27 03:43:07,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:43:07
[2026-06-27 03:43:07,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:43:07,892.892 INFO    ] Initializing speech engine...
[2026-06-27 03:43:07,905.905 INFO    ] 2026-06-27 03:43:07
[2026-06-27 03:43:08,110.110 INFO    ] 2026-06-27 03:43:08
[2026-06-27 03:43:08,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:43:08,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:43:08,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:43:08,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:43:08,536.536 INFO    ] time= 27/06/2026 03:43:08
[2026-06-27 03:43:08,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:43:08,557.557 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:43:08,623.623 INFO    ] No existing commands found in stream
[2026-06-27 03:43:13,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:43:13,637.637 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-27 03:43:17,104.104 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:43:17,106.106 INFO    ] Checking for system updates...
[2026-06-27 03:43:17,128.128 INFO    ] 200
[2026-06-27 03:43:17,129.129 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:43:17,160.160 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:43:17,161.161 INFO    ] No update needed
[2026-06-27 03:43:17,163.163 INFO    ] Checking for camera pi updates...
[2026-06-27 03:43:17,183.183 INFO    ] 200
[2026-06-27 03:43:17,184.184 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:43:17,208.208 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:43:17,248.248 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:43:17,249.249 INFO    ] No camera update needed
[2026-06-27 03:43:17,250.250 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:43:17,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:43:17,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:43:17,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:43:19,302.302 INFO    ] ================================================
[2026-06-27 03:43:19,317.317 INFO    ] Launching Daemon at Sat Jun 27 03:43:19 IST 2026
[2026-06-27 03:43:19,328.328 INFO    ] ================================================
[2026-06-27 03:43:19,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:43:19
[2026-06-27 03:43:19,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:43:20,135.135 INFO    ] Initializing speech engine...
[2026-06-27 03:43:20,140.140 INFO    ] 2026-06-27 03:43:20
[2026-06-27 03:43:20,345.345 INFO    ] 2026-06-27 03:43:20
[2026-06-27 03:43:20,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:43:20,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:43:20,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:43:20,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:43:20,782.782 INFO    ] time= 27/06/2026 03:43:20
[2026-06-27 03:43:20,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:43:20,824.824 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:43:20,895.895 INFO    ] No existing commands found in stream
[2026-06-27 03:43:25,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:43:25,908.908 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-27 03:43:29,468.468 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 03:43:29,470.470 INFO    ] Checking for system updates...
[2026-06-27 03:43:29,491.491 INFO    ] 200
[2026-06-27 03:43:29,492.492 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:43:29,527.527 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:43:29,528.528 INFO    ] No update needed
[2026-06-27 03:43:29,530.530 INFO    ] Checking for camera pi updates...
[2026-06-27 03:43:29,551.551 INFO    ] 200
[2026-06-27 03:43:29,552.552 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:43:29,575.575 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:43:29,618.618 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:43:29,619.619 INFO    ] No camera update needed
[2026-06-27 03:43:29,620.620 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:43:29,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:43:29,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:43:29,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:43:31,665.665 INFO    ] ================================================
[2026-06-27 03:43:31,683.683 INFO    ] Launching Daemon at Sat Jun 27 03:43:31 IST 2026
[2026-06-27 03:43:31,695.695 INFO    ] ================================================
[2026-06-27 03:43:32,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:43:32
[2026-06-27 03:43:32,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:43:32,584.584 INFO    ] Initializing speech engine...
[2026-06-27 03:43:32,589.589 INFO    ] 2026-06-27 03:43:32
[2026-06-27 03:43:32,792.792 INFO    ] 2026-06-27 03:43:32
[2026-06-27 03:43:32,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:43:33,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:43:33,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:43:33,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:43:33,210.210 INFO    ] time= 27/06/2026 03:43:33
[2026-06-27 03:43:33,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:43:33,241.241 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:43:33,307.307 INFO    ] No existing commands found in stream
[2026-06-27 03:43:38,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:43:38,320.320 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-27 03:43:41,493.493 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:43:41,495.495 INFO    ] Checking for system updates...
[2026-06-27 03:43:41,516.516 INFO    ] 200
[2026-06-27 03:43:41,518.518 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:43:41,551.551 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:43:41,552.552 INFO    ] No update needed
[2026-06-27 03:43:41,554.554 INFO    ] Checking for camera pi updates...
[2026-06-27 03:43:41,575.575 INFO    ] 200
[2026-06-27 03:43:41,576.576 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:43:41,599.599 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:43:41,646.646 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:43:41,647.647 INFO    ] No camera update needed
[2026-06-27 03:43:41,648.648 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:43:41,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:43:41,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:43:41,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:43:43,697.697 INFO    ] ================================================
[2026-06-27 03:43:43,712.712 INFO    ] Launching Daemon at Sat Jun 27 03:43:43 IST 2026
[2026-06-27 03:43:43,722.722 INFO    ] ================================================
[2026-06-27 03:43:44,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:43:44
[2026-06-27 03:43:44,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:43:44,608.608 INFO    ] Initializing speech engine...
[2026-06-27 03:43:44,614.614 INFO    ] 2026-06-27 03:43:44
[2026-06-27 03:43:44,821.821 INFO    ] 2026-06-27 03:43:44
[2026-06-27 03:43:44,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:43:45,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:43:45,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:43:45,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:43:45,245.245 INFO    ] time= 27/06/2026 03:43:45
[2026-06-27 03:43:45,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:43:45,274.274 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:43:45,342.342 INFO    ] No existing commands found in stream
[2026-06-27 03:43:50,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:43:50,355.355 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-27 03:43:54,731.731 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:43:54,733.733 INFO    ] Checking for system updates...
[2026-06-27 03:43:54,754.754 INFO    ] 200
[2026-06-27 03:43:54,756.756 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:43:54,786.786 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:43:54,788.788 INFO    ] No update needed
[2026-06-27 03:43:54,789.789 INFO    ] Checking for camera pi updates...
[2026-06-27 03:43:54,811.811 INFO    ] 200
[2026-06-27 03:43:54,812.812 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:43:54,837.837 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:43:54,980.980 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:43:54,981.981 INFO    ] No camera update needed
[2026-06-27 03:43:54,983.983 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:43:54,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:43:54,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:43:54,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:43:57,028.028 INFO    ] ================================================
[2026-06-27 03:43:57,043.043 INFO    ] Launching Daemon at Sat Jun 27 03:43:57 IST 2026
[2026-06-27 03:43:57,054.054 INFO    ] ================================================
[2026-06-27 03:43:57,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:43:57
[2026-06-27 03:43:57,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:43:57,946.946 INFO    ] Initializing speech engine...
[2026-06-27 03:43:57,952.952 INFO    ] 2026-06-27 03:43:57
[2026-06-27 03:43:58,163.163 INFO    ] 2026-06-27 03:43:58
[2026-06-27 03:43:58,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:43:58,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:43:58,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:43:58,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:43:58,589.589 INFO    ] time= 27/06/2026 03:43:58
[2026-06-27 03:43:58,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:43:58,619.619 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:43:58,686.686 INFO    ] No existing commands found in stream
[2026-06-27 03:44:03,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:44:03,700.700 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-27 03:44:05,254.254 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 03:44:05,256.256 INFO    ] Checking for system updates...
[2026-06-27 03:44:05,277.277 INFO    ] 200
[2026-06-27 03:44:05,278.278 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:44:05,309.309 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:44:05,311.311 INFO    ] No update needed
[2026-06-27 03:44:05,312.312 INFO    ] Checking for camera pi updates...
[2026-06-27 03:44:05,331.331 INFO    ] 200
[2026-06-27 03:44:05,333.333 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:44:05,359.359 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:44:05,404.404 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:44:05,405.405 INFO    ] No camera update needed
[2026-06-27 03:44:05,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:44:05,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:44:05,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:44:05,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:44:07,445.445 INFO    ] ================================================
[2026-06-27 03:44:07,460.460 INFO    ] Launching Daemon at Sat Jun 27 03:44:07 IST 2026
[2026-06-27 03:44:07,471.471 INFO    ] ================================================
[2026-06-27 03:44:07,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:44:07
[2026-06-27 03:44:08,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:44:08,260.260 INFO    ] Initializing speech engine...
[2026-06-27 03:44:08,268.268 INFO    ] 2026-06-27 03:44:08
[2026-06-27 03:44:08,474.474 INFO    ] 2026-06-27 03:44:08
[2026-06-27 03:44:08,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:44:08,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:44:08,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:44:08,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:44:08,916.916 INFO    ] time= 27/06/2026 03:44:08
[2026-06-27 03:44:08,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:44:08,924.924 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:44:08,991.991 INFO    ] No existing commands found in stream
[2026-06-27 03:44:14,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:44:14,003.003 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-27 03:44:16,665.665 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 03:44:16,667.667 INFO    ] Checking for system updates...
[2026-06-27 03:44:16,688.688 INFO    ] 200
[2026-06-27 03:44:16,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:44:16,722.722 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:44:16,723.723 INFO    ] No update needed
[2026-06-27 03:44:16,724.724 INFO    ] Checking for camera pi updates...
[2026-06-27 03:44:16,744.744 INFO    ] 200
[2026-06-27 03:44:16,745.745 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:44:16,769.769 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:44:16,810.810 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:44:16,811.811 INFO    ] No camera update needed
[2026-06-27 03:44:16,813.813 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:44:16,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:44:16,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:44:16,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:44:18,860.860 INFO    ] ================================================
[2026-06-27 03:44:18,875.875 INFO    ] Launching Daemon at Sat Jun 27 03:44:18 IST 2026
[2026-06-27 03:44:18,886.886 INFO    ] ================================================
[2026-06-27 03:44:19,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:44:19
[2026-06-27 03:44:19,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:44:19,666.666 INFO    ] Initializing speech engine...
[2026-06-27 03:44:19,671.671 INFO    ] 2026-06-27 03:44:19
[2026-06-27 03:44:19,900.900 INFO    ] 2026-06-27 03:44:19
[2026-06-27 03:44:19,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:44:20,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:44:20,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:44:20,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:44:20,335.335 INFO    ] time= 27/06/2026 03:44:20
[2026-06-27 03:44:20,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:44:20,377.377 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:44:20,452.452 INFO    ] No existing commands found in stream
[2026-06-27 03:44:25,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:44:25,464.464 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-27 03:44:27,250.250 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 03:44:27,251.251 INFO    ] Checking for system updates...
[2026-06-27 03:44:27,272.272 INFO    ] 200
[2026-06-27 03:44:27,273.273 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:44:27,304.304 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:44:27,306.306 INFO    ] No update needed
[2026-06-27 03:44:27,307.307 INFO    ] Checking for camera pi updates...
[2026-06-27 03:44:27,328.328 INFO    ] 200
[2026-06-27 03:44:27,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:44:27,354.354 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:44:27,404.404 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:44:27,406.406 INFO    ] No camera update needed
[2026-06-27 03:44:27,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:44:27,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:44:27,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:44:27,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:44:29,454.454 INFO    ] ================================================
[2026-06-27 03:44:29,472.472 INFO    ] Launching Daemon at Sat Jun 27 03:44:29 IST 2026
[2026-06-27 03:44:29,482.482 INFO    ] ================================================
[2026-06-27 03:44:29,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:44:29
[2026-06-27 03:44:30,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:44:30,290.290 INFO    ] Initializing speech engine...
[2026-06-27 03:44:30,295.295 INFO    ] 2026-06-27 03:44:30
[2026-06-27 03:44:30,500.500 INFO    ] 2026-06-27 03:44:30
[2026-06-27 03:44:30,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:44:30,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:44:30,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:44:30,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:44:30,907.907 INFO    ] time= 27/06/2026 03:44:30
[2026-06-27 03:44:30,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:44:30,948.948 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:44:31,018.018 INFO    ] No existing commands found in stream
[2026-06-27 03:44:36,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:44:36,032.032 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-27 03:44:37,053.053 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:44:37,055.055 INFO    ] Checking for system updates...
[2026-06-27 03:44:37,076.076 INFO    ] 200
[2026-06-27 03:44:37,078.078 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:44:37,108.108 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:44:37,109.109 INFO    ] No update needed
[2026-06-27 03:44:37,110.110 INFO    ] Checking for camera pi updates...
[2026-06-27 03:44:37,131.131 INFO    ] 200
[2026-06-27 03:44:37,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:44:37,156.156 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:44:37,194.194 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:44:37,196.196 INFO    ] No camera update needed
[2026-06-27 03:44:37,197.197 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:44:37,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:44:37,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:44:37,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:44:39,242.242 INFO    ] ================================================
[2026-06-27 03:44:39,258.258 INFO    ] Launching Daemon at Sat Jun 27 03:44:39 IST 2026
[2026-06-27 03:44:39,268.268 INFO    ] ================================================
[2026-06-27 03:44:39,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:44:39
[2026-06-27 03:44:39,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:44:40,068.068 INFO    ] Initializing speech engine...
[2026-06-27 03:44:40,076.076 INFO    ] 2026-06-27 03:44:40
[2026-06-27 03:44:40,290.290 INFO    ] 2026-06-27 03:44:40
[2026-06-27 03:44:40,319.319 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:44:40,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:44:40,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:44:40,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:44:40,731.731 INFO    ] time= 27/06/2026 03:44:40
[2026-06-27 03:44:40,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:44:40,739.739 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:44:40,806.806 INFO    ] No existing commands found in stream
[2026-06-27 03:44:45,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:44:45,823.823 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-27 03:44:48,675.675 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 03:44:48,676.676 INFO    ] Checking for system updates...
[2026-06-27 03:44:48,697.697 INFO    ] 200
[2026-06-27 03:44:48,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:44:48,728.728 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:44:48,730.730 INFO    ] No update needed
[2026-06-27 03:44:48,731.731 INFO    ] Checking for camera pi updates...
[2026-06-27 03:44:48,750.750 INFO    ] 200
[2026-06-27 03:44:48,752.752 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:44:48,775.775 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:44:48,815.815 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:44:48,817.817 INFO    ] No camera update needed
[2026-06-27 03:44:48,818.818 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:44:48,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:44:48,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:44:48,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:44:50,864.864 INFO    ] ================================================
[2026-06-27 03:44:50,879.879 INFO    ] Launching Daemon at Sat Jun 27 03:44:50 IST 2026
[2026-06-27 03:44:50,889.889 INFO    ] ================================================
[2026-06-27 03:44:51,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:44:51
[2026-06-27 03:44:51,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:44:51,749.749 INFO    ] Initializing speech engine...
[2026-06-27 03:44:51,756.756 INFO    ] 2026-06-27 03:44:51
[2026-06-27 03:44:51,965.965 INFO    ] 2026-06-27 03:44:51
[2026-06-27 03:44:51,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:44:52,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:44:52,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:44:52,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:44:52,410.410 INFO    ] time= 27/06/2026 03:44:52
[2026-06-27 03:44:52,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:44:52,417.417 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:44:52,484.484 INFO    ] No existing commands found in stream
[2026-06-27 03:44:57,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:44:57,498.498 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-27 03:45:00,100.100 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 03:45:00,101.101 INFO    ] Checking for system updates...
[2026-06-27 03:45:00,122.122 INFO    ] 200
[2026-06-27 03:45:00,123.123 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:45:00,156.156 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:45:00,157.157 INFO    ] No update needed
[2026-06-27 03:45:00,158.158 INFO    ] Checking for camera pi updates...
[2026-06-27 03:45:00,181.181 INFO    ] 200
[2026-06-27 03:45:00,183.183 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:45:00,210.210 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:45:00,249.249 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:45:00,251.251 INFO    ] No camera update needed
[2026-06-27 03:45:00,252.252 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:45:00,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:45:00,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:45:00,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:45:02,349.349 INFO    ] ================================================
[2026-06-27 03:45:02,360.360 INFO    ] Launching Daemon at Sat Jun 27 03:45:02 IST 2026
[2026-06-27 03:45:02,369.369 INFO    ] ================================================
[2026-06-27 03:45:02,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:45:02
[2026-06-27 03:45:03,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:45:03,162.162 INFO    ] Initializing speech engine...
[2026-06-27 03:45:03,168.168 INFO    ] 2026-06-27 03:45:03
[2026-06-27 03:45:03,380.380 INFO    ] 2026-06-27 03:45:03
[2026-06-27 03:45:03,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:45:03,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:45:03,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:45:03,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:45:03,843.843 INFO    ] time= 27/06/2026 03:45:03
[2026-06-27 03:45:03,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:45:03,903.903 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:45:04,003.003 INFO    ] No existing commands found in stream
[2026-06-27 03:45:09,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:45:09,015.015 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-27 03:45:13,381.381 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 03:45:13,382.382 INFO    ] Checking for system updates...
[2026-06-27 03:45:13,405.405 INFO    ] 200
[2026-06-27 03:45:13,406.406 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:45:13,436.436 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:45:13,438.438 INFO    ] No update needed
[2026-06-27 03:45:13,439.439 INFO    ] Checking for camera pi updates...
[2026-06-27 03:45:13,461.461 INFO    ] 200
[2026-06-27 03:45:13,462.462 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:45:13,485.485 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:45:13,531.531 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:45:13,532.532 INFO    ] No camera update needed
[2026-06-27 03:45:13,533.533 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:45:13,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:45:13,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:45:13,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:45:15,578.578 INFO    ] ================================================
[2026-06-27 03:45:15,594.594 INFO    ] Launching Daemon at Sat Jun 27 03:45:15 IST 2026
[2026-06-27 03:45:15,604.604 INFO    ] ================================================
[2026-06-27 03:45:15,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:45:15
[2026-06-27 03:45:16,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:45:16,418.418 INFO    ] Initializing speech engine...
[2026-06-27 03:45:16,426.426 INFO    ] 2026-06-27 03:45:16
[2026-06-27 03:45:16,647.647 INFO    ] 2026-06-27 03:45:16
[2026-06-27 03:45:16,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:45:16,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:45:16,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:45:17,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:45:17,115.115 INFO    ] time= 27/06/2026 03:45:17
[2026-06-27 03:45:17,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:45:17,122.122 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:45:17,192.192 INFO    ] No existing commands found in stream
[2026-06-27 03:45:22,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:45:22,204.204 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-27 03:45:26,218.218 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:45:26,220.220 INFO    ] Checking for system updates...
[2026-06-27 03:45:26,240.240 INFO    ] 200
[2026-06-27 03:45:26,241.241 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:45:26,274.274 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:45:26,275.275 INFO    ] No update needed
[2026-06-27 03:45:26,276.276 INFO    ] Checking for camera pi updates...
[2026-06-27 03:45:26,297.297 INFO    ] 200
[2026-06-27 03:45:26,298.298 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:45:26,322.322 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:45:26,361.361 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:45:26,362.362 INFO    ] No camera update needed
[2026-06-27 03:45:26,363.363 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:45:26,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:45:26,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:45:26,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:45:28,412.412 INFO    ] ================================================
[2026-06-27 03:45:28,428.428 INFO    ] Launching Daemon at Sat Jun 27 03:45:28 IST 2026
[2026-06-27 03:45:28,438.438 INFO    ] ================================================
[2026-06-27 03:45:28,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:45:28
[2026-06-27 03:45:29,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:45:29,222.222 INFO    ] Initializing speech engine...
[2026-06-27 03:45:29,226.226 INFO    ] 2026-06-27 03:45:29
[2026-06-27 03:45:29,444.444 INFO    ] 2026-06-27 03:45:29
[2026-06-27 03:45:29,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:45:29,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:45:29,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:45:29,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:45:29,871.871 INFO    ] time= 27/06/2026 03:45:29
[2026-06-27 03:45:29,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:45:29,900.900 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:45:29,966.966 INFO    ] No existing commands found in stream
[2026-06-27 03:45:34,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:45:34,979.979 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-27 03:45:38,810.810 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 03:45:38,812.812 INFO    ] Checking for system updates...
[2026-06-27 03:45:38,832.832 INFO    ] 200
[2026-06-27 03:45:38,834.834 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:45:38,866.866 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:45:38,867.867 INFO    ] No update needed
[2026-06-27 03:45:38,868.868 INFO    ] Checking for camera pi updates...
[2026-06-27 03:45:38,888.888 INFO    ] 200
[2026-06-27 03:45:38,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:45:38,915.915 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:45:38,952.952 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:45:38,954.954 INFO    ] No camera update needed
[2026-06-27 03:45:38,955.955 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:45:38,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:45:38,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:45:38,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:45:41,001.001 INFO    ] ================================================
[2026-06-27 03:45:41,017.017 INFO    ] Launching Daemon at Sat Jun 27 03:45:41 IST 2026
[2026-06-27 03:45:41,028.028 INFO    ] ================================================
[2026-06-27 03:45:41,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:45:41
[2026-06-27 03:45:41,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:45:41,825.825 INFO    ] Initializing speech engine...
[2026-06-27 03:45:41,830.830 INFO    ] 2026-06-27 03:45:41
[2026-06-27 03:45:42,040.040 INFO    ] 2026-06-27 03:45:42
[2026-06-27 03:45:42,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:45:42,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:45:42,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:45:42,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:45:42,481.481 INFO    ] time= 27/06/2026 03:45:42
[2026-06-27 03:45:42,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:45:42,488.488 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:45:42,555.555 INFO    ] No existing commands found in stream
[2026-06-27 03:45:47,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:45:47,567.567 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-27 03:45:50,987.987 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 03:45:50,989.989 INFO    ] Checking for system updates...
[2026-06-27 03:45:51,010.010 INFO    ] 200
[2026-06-27 03:45:51,012.012 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:45:51,042.042 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:45:51,044.044 INFO    ] No update needed
[2026-06-27 03:45:51,045.045 INFO    ] Checking for camera pi updates...
[2026-06-27 03:45:51,065.065 INFO    ] 200
[2026-06-27 03:45:51,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:45:51,090.090 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:45:51,136.136 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:45:51,137.137 INFO    ] No camera update needed
[2026-06-27 03:45:51,139.139 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:45:51,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:45:51,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:45:51,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:45:53,187.187 INFO    ] ================================================
[2026-06-27 03:45:53,202.202 INFO    ] Launching Daemon at Sat Jun 27 03:45:53 IST 2026
[2026-06-27 03:45:53,213.213 INFO    ] ================================================
[2026-06-27 03:45:53,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:45:53
[2026-06-27 03:45:53,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:45:54,005.005 INFO    ] Initializing speech engine...
[2026-06-27 03:45:54,008.008 INFO    ] 2026-06-27 03:45:54
[2026-06-27 03:45:54,228.228 INFO    ] 2026-06-27 03:45:54
[2026-06-27 03:45:54,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:45:54,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:45:54,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:45:54,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:45:54,674.674 INFO    ] time= 27/06/2026 03:45:54
[2026-06-27 03:45:54,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:45:54,682.682 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:45:54,764.764 INFO    ] No existing commands found in stream
[2026-06-27 03:45:59,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:45:59,780.780 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-27 03:46:01,743.743 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:46:01,745.745 INFO    ] Checking for system updates...
[2026-06-27 03:46:01,766.766 INFO    ] 200
[2026-06-27 03:46:01,768.768 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:46:01,800.800 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:46:01,801.801 INFO    ] No update needed
[2026-06-27 03:46:01,803.803 INFO    ] Checking for camera pi updates...
[2026-06-27 03:46:01,823.823 INFO    ] 200
[2026-06-27 03:46:01,824.824 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:46:01,848.848 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:46:01,975.975 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:46:01,977.977 INFO    ] No camera update needed
[2026-06-27 03:46:01,979.979 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:46:01,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:46:01,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:46:01,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:46:04,023.023 INFO    ] ================================================
[2026-06-27 03:46:04,038.038 INFO    ] Launching Daemon at Sat Jun 27 03:46:04 IST 2026
[2026-06-27 03:46:04,050.050 INFO    ] ================================================
[2026-06-27 03:46:04,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:46:04
[2026-06-27 03:46:04,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:46:04,839.839 INFO    ] Initializing speech engine...
[2026-06-27 03:46:04,852.852 INFO    ] 2026-06-27 03:46:04
[2026-06-27 03:46:05,063.063 INFO    ] 2026-06-27 03:46:05
[2026-06-27 03:46:05,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:46:05,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:46:05,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:46:05,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:46:05,487.487 INFO    ] time= 27/06/2026 03:46:05
[2026-06-27 03:46:05,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:46:05,517.517 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:46:05,584.584 INFO    ] No existing commands found in stream
[2026-06-27 03:46:10,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:46:10,596.596 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-27 03:46:13,546.546 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:46:13,547.547 INFO    ] Checking for system updates...
[2026-06-27 03:46:13,569.569 INFO    ] 200
[2026-06-27 03:46:13,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:46:13,600.600 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:46:13,602.602 INFO    ] No update needed
[2026-06-27 03:46:13,604.604 INFO    ] Checking for camera pi updates...
[2026-06-27 03:46:13,624.624 INFO    ] 200
[2026-06-27 03:46:13,625.625 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:46:13,649.649 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:46:13,691.691 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:46:13,692.692 INFO    ] No camera update needed
[2026-06-27 03:46:13,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:46:13,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:46:13,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:46:13,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:46:15,743.743 INFO    ] ================================================
[2026-06-27 03:46:15,758.758 INFO    ] Launching Daemon at Sat Jun 27 03:46:15 IST 2026
[2026-06-27 03:46:15,769.769 INFO    ] ================================================
[2026-06-27 03:46:16,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:46:16
[2026-06-27 03:46:16,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:46:16,648.648 INFO    ] Initializing speech engine...
[2026-06-27 03:46:16,659.659 INFO    ] 2026-06-27 03:46:16
[2026-06-27 03:46:16,870.870 INFO    ] 2026-06-27 03:46:16
[2026-06-27 03:46:16,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:46:17,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:46:17,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:46:17,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:46:17,292.292 INFO    ] time= 27/06/2026 03:46:17
[2026-06-27 03:46:17,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:46:17,325.325 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:46:17,393.393 INFO    ] No existing commands found in stream
[2026-06-27 03:46:22,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:46:22,410.410 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-27 03:46:23,321.321 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:46:23,322.322 INFO    ] Checking for system updates...
[2026-06-27 03:46:23,343.343 INFO    ] 200
[2026-06-27 03:46:23,345.345 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:46:23,375.375 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:46:23,376.376 INFO    ] No update needed
[2026-06-27 03:46:23,378.378 INFO    ] Checking for camera pi updates...
[2026-06-27 03:46:23,399.399 INFO    ] 200
[2026-06-27 03:46:23,400.400 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:46:23,425.425 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:46:23,464.464 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:46:23,465.465 INFO    ] No camera update needed
[2026-06-27 03:46:23,466.466 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:46:23,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:46:23,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:46:23,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:46:25,511.511 INFO    ] ================================================
[2026-06-27 03:46:25,527.527 INFO    ] Launching Daemon at Sat Jun 27 03:46:25 IST 2026
[2026-06-27 03:46:25,539.539 INFO    ] ================================================
[2026-06-27 03:46:25,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:46:25
[2026-06-27 03:46:26,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:46:26,347.347 INFO    ] Initializing speech engine...
[2026-06-27 03:46:26,352.352 INFO    ] 2026-06-27 03:46:26
[2026-06-27 03:46:26,557.557 INFO    ] 2026-06-27 03:46:26
[2026-06-27 03:46:26,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:46:26,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:46:26,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:46:26,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:46:26,999.999 INFO    ] time= 27/06/2026 03:46:26
[2026-06-27 03:46:27,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:46:27,006.006 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:46:27,072.072 INFO    ] No existing commands found in stream
[2026-06-27 03:46:32,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:46:32,087.087 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-27 03:46:34,410.410 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 03:46:34,412.412 INFO    ] Checking for system updates...
[2026-06-27 03:46:34,433.433 INFO    ] 200
[2026-06-27 03:46:34,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:46:34,465.465 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:46:34,466.466 INFO    ] No update needed
[2026-06-27 03:46:34,468.468 INFO    ] Checking for camera pi updates...
[2026-06-27 03:46:34,491.491 INFO    ] 200
[2026-06-27 03:46:34,492.492 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:46:34,516.516 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:46:34,561.561 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:46:34,563.563 INFO    ] No camera update needed
[2026-06-27 03:46:34,564.564 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:46:34,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:46:34,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:46:34,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:46:36,609.609 INFO    ] ================================================
[2026-06-27 03:46:36,625.625 INFO    ] Launching Daemon at Sat Jun 27 03:46:36 IST 2026
[2026-06-27 03:46:36,637.637 INFO    ] ================================================
[2026-06-27 03:46:36,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:46:36
[2026-06-27 03:46:37,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:46:37,449.449 INFO    ] Initializing speech engine...
[2026-06-27 03:46:37,459.459 INFO    ] 2026-06-27 03:46:37
[2026-06-27 03:46:37,664.664 INFO    ] 2026-06-27 03:46:37
[2026-06-27 03:46:37,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:46:37,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:46:37,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:46:38,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:46:38,057.057 INFO    ] time= 27/06/2026 03:46:38
[2026-06-27 03:46:38,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:46:38,107.107 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:46:38,177.177 INFO    ] No existing commands found in stream
[2026-06-27 03:46:43,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:46:43,187.187 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-27 03:46:44,607.607 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 03:46:44,608.608 INFO    ] Checking for system updates...
[2026-06-27 03:46:44,629.629 INFO    ] 200
[2026-06-27 03:46:44,631.631 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:46:44,661.661 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:46:44,662.662 INFO    ] No update needed
[2026-06-27 03:46:44,664.664 INFO    ] Checking for camera pi updates...
[2026-06-27 03:46:44,683.683 INFO    ] 200
[2026-06-27 03:46:44,685.685 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:46:44,710.710 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:46:44,750.750 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:46:44,752.752 INFO    ] No camera update needed
[2026-06-27 03:46:44,753.753 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:46:44,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:46:44,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:46:44,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:46:46,803.803 INFO    ] ================================================
[2026-06-27 03:46:46,821.821 INFO    ] Launching Daemon at Sat Jun 27 03:46:46 IST 2026
[2026-06-27 03:46:46,833.833 INFO    ] ================================================
[2026-06-27 03:46:47,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:46:47
[2026-06-27 03:46:47,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:46:47,672.672 INFO    ] Initializing speech engine...
[2026-06-27 03:46:47,678.678 INFO    ] 2026-06-27 03:46:47
[2026-06-27 03:46:47,888.888 INFO    ] 2026-06-27 03:46:47
[2026-06-27 03:46:47,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:46:48,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:46:48,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:46:48,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:46:48,316.316 INFO    ] time= 27/06/2026 03:46:48
[2026-06-27 03:46:48,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:46:48,338.338 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:46:48,406.406 INFO    ] No existing commands found in stream
[2026-06-27 03:46:53,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:46:53,439.439 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-27 03:46:57,153.153 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 03:46:57,154.154 INFO    ] Checking for system updates...
[2026-06-27 03:46:57,177.177 INFO    ] 200
[2026-06-27 03:46:57,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:46:57,212.212 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:46:57,214.214 INFO    ] No update needed
[2026-06-27 03:46:57,215.215 INFO    ] Checking for camera pi updates...
[2026-06-27 03:46:57,236.236 INFO    ] 200
[2026-06-27 03:46:57,237.237 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:46:57,261.261 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:46:57,298.298 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:46:57,300.300 INFO    ] No camera update needed
[2026-06-27 03:46:57,301.301 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:46:57,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:46:57,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:46:57,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:46:59,346.346 INFO    ] ================================================
[2026-06-27 03:46:59,362.362 INFO    ] Launching Daemon at Sat Jun 27 03:46:59 IST 2026
[2026-06-27 03:46:59,374.374 INFO    ] ================================================
[2026-06-27 03:46:59,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:46:59
[2026-06-27 03:47:00,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:47:00,231.231 INFO    ] Initializing speech engine...
[2026-06-27 03:47:00,235.235 INFO    ] 2026-06-27 03:47:00
[2026-06-27 03:47:00,450.450 INFO    ] 2026-06-27 03:47:00
[2026-06-27 03:47:00,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:47:00,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:47:00,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:47:00,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:47:00,901.901 INFO    ] time= 27/06/2026 03:47:00
[2026-06-27 03:47:00,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:47:00,934.934 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:47:01,001.001 INFO    ] No existing commands found in stream
[2026-06-27 03:47:06,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:47:06,013.013 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-27 03:47:07,429.429 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 03:47:07,431.431 INFO    ] Checking for system updates...
[2026-06-27 03:47:07,452.452 INFO    ] 200
[2026-06-27 03:47:07,453.453 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:47:07,484.484 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:47:07,485.485 INFO    ] No update needed
[2026-06-27 03:47:07,487.487 INFO    ] Checking for camera pi updates...
[2026-06-27 03:47:07,506.506 INFO    ] 200
[2026-06-27 03:47:07,507.507 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:47:07,532.532 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:47:07,584.584 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:47:07,585.585 INFO    ] No camera update needed
[2026-06-27 03:47:07,586.586 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:47:07,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:47:07,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:47:07,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:47:09,631.631 INFO    ] ================================================
[2026-06-27 03:47:09,647.647 INFO    ] Launching Daemon at Sat Jun 27 03:47:09 IST 2026
[2026-06-27 03:47:09,658.658 INFO    ] ================================================
[2026-06-27 03:47:10,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:47:10
[2026-06-27 03:47:10,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:47:10,554.554 INFO    ] Initializing speech engine...
[2026-06-27 03:47:10,560.560 INFO    ] 2026-06-27 03:47:10
[2026-06-27 03:47:10,768.768 INFO    ] 2026-06-27 03:47:10
[2026-06-27 03:47:10,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:47:10,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:47:10,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:47:11,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:47:11,212.212 INFO    ] time= 27/06/2026 03:47:11
[2026-06-27 03:47:11,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:47:11,221.221 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:47:11,289.289 INFO    ] No existing commands found in stream
[2026-06-27 03:47:16,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:47:16,304.304 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-27 03:47:17,316.316 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 03:47:17,318.318 INFO    ] Checking for system updates...
[2026-06-27 03:47:17,357.357 INFO    ] 200
[2026-06-27 03:47:17,359.359 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-27 03:47:17,361.361 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-27 03:47:17,363.363 INFO    ] Checking for camera pi updates...
[2026-06-27 03:47:17,385.385 INFO    ] 200
[2026-06-27 03:47:17,387.387 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-27 03:47:17,389.389 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-27 03:47:17,390.390 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:47:17,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:47:17,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:47:17,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:47:19,431.431 INFO    ] ================================================
[2026-06-27 03:47:19,447.447 INFO    ] Launching Daemon at Sat Jun 27 03:47:19 IST 2026
[2026-06-27 03:47:19,457.457 INFO    ] ================================================
[2026-06-27 03:47:19,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:47:19
[2026-06-27 03:47:20,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:47:20,273.273 INFO    ] Initializing speech engine...
[2026-06-27 03:47:20,278.278 INFO    ] 2026-06-27 03:47:20
[2026-06-27 03:47:20,483.483 INFO    ] 2026-06-27 03:47:20
[2026-06-27 03:47:20,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:47:20,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:47:20,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:47:20,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:47:20,902.902 INFO    ] time= 27/06/2026 03:47:20
[2026-06-27 03:47:20,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:47:20,930.930 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:47:20,997.997 INFO    ] No existing commands found in stream
[2026-06-27 03:47:26,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:47:26,009.009 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-27 03:47:30,225.225 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:47:30,226.226 INFO    ] Checking for system updates...
[2026-06-27 03:47:30,247.247 INFO    ] 200
[2026-06-27 03:47:30,248.248 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:47:30,280.280 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:47:30,282.282 INFO    ] No update needed
[2026-06-27 03:47:30,283.283 INFO    ] Checking for camera pi updates...
[2026-06-27 03:47:30,304.304 INFO    ] 200
[2026-06-27 03:47:30,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:47:30,331.331 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:47:30,356.356 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:47:30,357.357 INFO    ] No camera update needed
[2026-06-27 03:47:30,358.358 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:47:30,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:47:30,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:47:30,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:47:32,398.398 INFO    ] ================================================
[2026-06-27 03:47:32,414.414 INFO    ] Launching Daemon at Sat Jun 27 03:47:32 IST 2026
[2026-06-27 03:47:32,425.425 INFO    ] ================================================
[2026-06-27 03:47:32,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:47:32
[2026-06-27 03:47:33,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:47:33,228.228 INFO    ] Initializing speech engine...
[2026-06-27 03:47:33,236.236 INFO    ] 2026-06-27 03:47:33
[2026-06-27 03:47:33,448.448 INFO    ] 2026-06-27 03:47:33
[2026-06-27 03:47:33,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:47:33,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:47:33,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:47:33,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:47:33,885.885 INFO    ] time= 27/06/2026 03:47:33
[2026-06-27 03:47:33,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:47:33,892.892 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:47:33,957.957 INFO    ] No existing commands found in stream
[2026-06-27 03:47:38,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:47:38,970.970 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-27 03:47:42,789.789 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:47:42,791.791 INFO    ] Checking for system updates...
[2026-06-27 03:47:42,811.811 INFO    ] 200
[2026-06-27 03:47:42,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:47:42,843.843 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:47:42,845.845 INFO    ] No update needed
[2026-06-27 03:47:42,846.846 INFO    ] Checking for camera pi updates...
[2026-06-27 03:47:42,867.867 INFO    ] 200
[2026-06-27 03:47:42,868.868 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:47:42,894.894 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:47:42,931.931 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:47:42,933.933 INFO    ] No camera update needed
[2026-06-27 03:47:42,934.934 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:47:42,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:47:42,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:47:42,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:47:44,980.980 INFO    ] ================================================
[2026-06-27 03:47:45,996.996 INFO    ] Launching Daemon at Sat Jun 27 03:47:44 IST 2026
[2026-06-27 03:47:45,006.006 INFO    ] ================================================
[2026-06-27 03:47:45,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:47:45
[2026-06-27 03:47:45,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:47:45,807.807 INFO    ] Initializing speech engine...
[2026-06-27 03:47:45,818.818 INFO    ] 2026-06-27 03:47:45
[2026-06-27 03:47:46,030.030 INFO    ] 2026-06-27 03:47:46
[2026-06-27 03:47:46,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:47:46,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:47:46,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:47:46,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:47:46,458.458 INFO    ] time= 27/06/2026 03:47:46
[2026-06-27 03:47:46,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:47:46,487.487 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:47:46,555.555 INFO    ] No existing commands found in stream
[2026-06-27 03:47:51,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:47:51,575.575 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-27 03:47:55,976.976 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 03:47:55,977.977 INFO    ] Checking for system updates...
[2026-06-27 03:47:55,999.999 INFO    ] 200
[2026-06-27 03:47:56,000.000 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:47:56,031.031 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:47:56,033.033 INFO    ] No update needed
[2026-06-27 03:47:56,034.034 INFO    ] Checking for camera pi updates...
[2026-06-27 03:47:56,055.055 INFO    ] 200
[2026-06-27 03:47:56,056.056 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:47:56,080.080 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:47:56,117.117 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:47:56,118.118 INFO    ] No camera update needed
[2026-06-27 03:47:56,120.120 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:47:56,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:47:56,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:47:56,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:47:58,168.168 INFO    ] ================================================
[2026-06-27 03:47:58,183.183 INFO    ] Launching Daemon at Sat Jun 27 03:47:58 IST 2026
[2026-06-27 03:47:58,194.194 INFO    ] ================================================
[2026-06-27 03:47:58,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:47:58
[2026-06-27 03:47:58,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:47:58,991.991 INFO    ] Initializing speech engine...
[2026-06-27 03:47:59,001.001 INFO    ] 2026-06-27 03:47:58
[2026-06-27 03:47:59,206.206 INFO    ] 2026-06-27 03:47:59
[2026-06-27 03:47:59,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:47:59,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:47:59,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:47:59,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:47:59,639.639 INFO    ] time= 27/06/2026 03:47:59
[2026-06-27 03:47:59,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:47:59,655.655 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:47:59,720.720 INFO    ] No existing commands found in stream
[2026-06-27 03:48:04,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:48:04,734.734 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-27 03:48:05,343.343 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 03:48:05,345.345 INFO    ] Checking for system updates...
[2026-06-27 03:48:05,367.367 INFO    ] 200
[2026-06-27 03:48:05,368.368 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:48:05,399.399 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:48:05,400.400 INFO    ] No update needed
[2026-06-27 03:48:05,402.402 INFO    ] Checking for camera pi updates...
[2026-06-27 03:48:05,422.422 INFO    ] 200
[2026-06-27 03:48:05,423.423 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:48:05,446.446 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:48:05,571.571 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:48:05,572.572 INFO    ] No camera update needed
[2026-06-27 03:48:05,574.574 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:48:05,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:48:05,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:48:05,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:48:07,620.620 INFO    ] ================================================
[2026-06-27 03:48:07,636.636 INFO    ] Launching Daemon at Sat Jun 27 03:48:07 IST 2026
[2026-06-27 03:48:07,647.647 INFO    ] ================================================
[2026-06-27 03:48:08,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:48:08
[2026-06-27 03:48:08,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:48:08,522.522 INFO    ] Initializing speech engine...
[2026-06-27 03:48:08,529.529 INFO    ] 2026-06-27 03:48:08
[2026-06-27 03:48:08,738.738 INFO    ] 2026-06-27 03:48:08
[2026-06-27 03:48:08,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:48:08,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:48:08,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:48:09,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:48:09,164.164 INFO    ] time= 27/06/2026 03:48:09
[2026-06-27 03:48:09,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:48:09,192.192 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:48:09,260.260 INFO    ] No existing commands found in stream
[2026-06-27 03:48:14,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:48:14,278.278 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-27 03:48:15,284.284 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:48:15,285.285 INFO    ] Checking for system updates...
[2026-06-27 03:48:15,307.307 INFO    ] 200
[2026-06-27 03:48:15,309.309 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:48:15,342.342 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:48:15,344.344 INFO    ] No update needed
[2026-06-27 03:48:15,345.345 INFO    ] Checking for camera pi updates...
[2026-06-27 03:48:15,365.365 INFO    ] 200
[2026-06-27 03:48:15,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:48:15,391.391 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:48:15,436.436 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:48:15,438.438 INFO    ] No camera update needed
[2026-06-27 03:48:15,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:48:15,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:48:15,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:48:15,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:48:17,488.488 INFO    ] ================================================
[2026-06-27 03:48:17,504.504 INFO    ] Launching Daemon at Sat Jun 27 03:48:17 IST 2026
[2026-06-27 03:48:17,515.515 INFO    ] ================================================
[2026-06-27 03:48:17,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:48:17
[2026-06-27 03:48:18,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:48:18,322.322 INFO    ] Initializing speech engine...
[2026-06-27 03:48:18,326.326 INFO    ] 2026-06-27 03:48:18
[2026-06-27 03:48:18,543.543 INFO    ] 2026-06-27 03:48:18
[2026-06-27 03:48:18,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:48:18,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:48:18,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:48:18,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:48:18,990.990 INFO    ] time= 27/06/2026 03:48:18
[2026-06-27 03:48:19,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:48:19,048.048 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:48:19,125.125 INFO    ] No existing commands found in stream
[2026-06-27 03:48:24,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:48:24,138.138 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-27 03:48:26,811.811 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 03:48:26,812.812 INFO    ] Checking for system updates...
[2026-06-27 03:48:26,834.834 INFO    ] 200
[2026-06-27 03:48:26,835.835 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:48:26,866.866 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:48:26,868.868 INFO    ] No update needed
[2026-06-27 03:48:26,869.869 INFO    ] Checking for camera pi updates...
[2026-06-27 03:48:26,889.889 INFO    ] 200
[2026-06-27 03:48:26,890.890 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:48:26,915.915 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:48:26,947.947 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:48:26,949.949 INFO    ] No camera update needed
[2026-06-27 03:48:26,950.950 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:48:26,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:48:26,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:48:26,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:48:29,999.999 INFO    ] ================================================
[2026-06-27 03:48:29,014.014 INFO    ] Launching Daemon at Sat Jun 27 03:48:29 IST 2026
[2026-06-27 03:48:29,025.025 INFO    ] ================================================
[2026-06-27 03:48:29,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:48:29
[2026-06-27 03:48:29,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:48:29,820.820 INFO    ] Initializing speech engine...
[2026-06-27 03:48:29,832.832 INFO    ] 2026-06-27 03:48:29
[2026-06-27 03:48:30,043.043 INFO    ] 2026-06-27 03:48:30
[2026-06-27 03:48:30,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:48:30,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:48:30,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:48:30,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:48:30,453.453 INFO    ] time= 27/06/2026 03:48:30
[2026-06-27 03:48:30,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:48:30,498.498 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:48:30,567.567 INFO    ] No existing commands found in stream
[2026-06-27 03:48:35,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:48:35,578.578 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-27 03:48:36,452.452 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 03:48:36,454.454 INFO    ] Checking for system updates...
[2026-06-27 03:48:36,475.475 INFO    ] 200
[2026-06-27 03:48:36,476.476 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:48:36,508.508 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:48:36,509.509 INFO    ] No update needed
[2026-06-27 03:48:36,510.510 INFO    ] Checking for camera pi updates...
[2026-06-27 03:48:36,530.530 INFO    ] 200
[2026-06-27 03:48:36,532.532 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:48:36,557.557 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:48:36,596.596 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:48:36,598.598 INFO    ] No camera update needed
[2026-06-27 03:48:36,599.599 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:48:36,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:48:36,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:48:36,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:48:38,651.651 INFO    ] ================================================
[2026-06-27 03:48:38,667.667 INFO    ] Launching Daemon at Sat Jun 27 03:48:38 IST 2026
[2026-06-27 03:48:38,678.678 INFO    ] ================================================
[2026-06-27 03:48:39,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:48:39
[2026-06-27 03:48:39,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:48:39,473.473 INFO    ] Initializing speech engine...
[2026-06-27 03:48:39,483.483 INFO    ] 2026-06-27 03:48:39
[2026-06-27 03:48:39,688.688 INFO    ] 2026-06-27 03:48:39
[2026-06-27 03:48:39,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:48:39,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:48:39,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:48:40,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:48:40,129.129 INFO    ] time= 27/06/2026 03:48:40
[2026-06-27 03:48:40,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:48:40,136.136 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:48:40,203.203 INFO    ] No existing commands found in stream
[2026-06-27 03:48:45,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:48:45,215.215 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-27 03:48:46,986.986 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 03:48:46,988.988 INFO    ] Checking for system updates...
[2026-06-27 03:48:47,008.008 INFO    ] 200
[2026-06-27 03:48:47,010.010 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:48:47,040.040 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:48:47,041.041 INFO    ] No update needed
[2026-06-27 03:48:47,042.042 INFO    ] Checking for camera pi updates...
[2026-06-27 03:48:47,062.062 INFO    ] 200
[2026-06-27 03:48:47,063.063 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:48:47,087.087 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:48:47,128.128 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:48:47,129.129 INFO    ] No camera update needed
[2026-06-27 03:48:47,131.131 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:48:47,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:48:47,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:48:47,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:48:49,179.179 INFO    ] ================================================
[2026-06-27 03:48:49,194.194 INFO    ] Launching Daemon at Sat Jun 27 03:48:49 IST 2026
[2026-06-27 03:48:49,205.205 INFO    ] ================================================
[2026-06-27 03:48:49,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:48:49
[2026-06-27 03:48:49,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:48:50,093.093 INFO    ] Initializing speech engine...
[2026-06-27 03:48:50,101.101 INFO    ] 2026-06-27 03:48:50
[2026-06-27 03:48:50,306.306 INFO    ] 2026-06-27 03:48:50
[2026-06-27 03:48:50,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:48:50,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:48:50,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:48:50,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:48:50,747.747 INFO    ] time= 27/06/2026 03:48:50
[2026-06-27 03:48:50,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:48:50,755.755 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:48:50,821.821 INFO    ] No existing commands found in stream
[2026-06-27 03:48:55,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:48:55,836.836 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-27 03:48:57,983.983 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:48:57,985.985 INFO    ] Checking for system updates...
[2026-06-27 03:48:58,006.006 INFO    ] 200
[2026-06-27 03:48:58,008.008 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:48:58,038.038 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:48:58,040.040 INFO    ] No update needed
[2026-06-27 03:48:58,041.041 INFO    ] Checking for camera pi updates...
[2026-06-27 03:48:58,061.061 INFO    ] 200
[2026-06-27 03:48:58,062.062 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:48:58,092.092 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:48:58,134.134 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:48:58,135.135 INFO    ] No camera update needed
[2026-06-27 03:48:58,137.137 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:48:58,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:48:58,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:48:58,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:49:00,186.186 INFO    ] ================================================
[2026-06-27 03:49:00,201.201 INFO    ] Launching Daemon at Sat Jun 27 03:49:00 IST 2026
[2026-06-27 03:49:00,212.212 INFO    ] ================================================
[2026-06-27 03:49:00,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:49:00
[2026-06-27 03:49:00,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:49:01,004.004 INFO    ] Initializing speech engine...
[2026-06-27 03:49:01,008.008 INFO    ] 2026-06-27 03:49:01
[2026-06-27 03:49:01,229.229 INFO    ] 2026-06-27 03:49:01
[2026-06-27 03:49:01,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:49:01,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:49:01,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:49:01,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:49:01,677.677 INFO    ] time= 27/06/2026 03:49:01
[2026-06-27 03:49:01,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:49:01,684.684 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:49:01,760.760 INFO    ] No existing commands found in stream
[2026-06-27 03:49:06,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:49:06,777.777 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-27 03:49:10,405.405 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:49:10,406.406 INFO    ] Checking for system updates...
[2026-06-27 03:49:10,429.429 INFO    ] 200
[2026-06-27 03:49:10,430.430 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:49:10,461.461 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:49:10,462.462 INFO    ] No update needed
[2026-06-27 03:49:10,463.463 INFO    ] Checking for camera pi updates...
[2026-06-27 03:49:10,483.483 INFO    ] 200
[2026-06-27 03:49:10,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:49:10,510.510 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:49:10,558.558 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:49:10,560.560 INFO    ] No camera update needed
[2026-06-27 03:49:10,561.561 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:49:10,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:49:10,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:49:10,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:49:12,608.608 INFO    ] ================================================
[2026-06-27 03:49:12,623.623 INFO    ] Launching Daemon at Sat Jun 27 03:49:12 IST 2026
[2026-06-27 03:49:12,635.635 INFO    ] ================================================
[2026-06-27 03:49:12,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:49:12
[2026-06-27 03:49:13,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:49:13,430.430 INFO    ] Initializing speech engine...
[2026-06-27 03:49:13,441.441 INFO    ] 2026-06-27 03:49:13
[2026-06-27 03:49:13,644.644 INFO    ] 2026-06-27 03:49:13
[2026-06-27 03:49:13,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:49:13,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:49:13,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:49:14,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:49:14,067.067 INFO    ] time= 27/06/2026 03:49:14
[2026-06-27 03:49:14,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:49:14,096.096 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:49:14,167.167 INFO    ] No existing commands found in stream
[2026-06-27 03:49:19,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:49:19,179.179 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-27 03:49:19,652.652 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 03:49:19,654.654 INFO    ] Checking for system updates...
[2026-06-27 03:49:19,676.676 INFO    ] 200
[2026-06-27 03:49:19,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:49:19,707.707 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:49:19,709.709 INFO    ] No update needed
[2026-06-27 03:49:19,710.710 INFO    ] Checking for camera pi updates...
[2026-06-27 03:49:19,732.732 INFO    ] 200
[2026-06-27 03:49:19,733.733 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:49:19,759.759 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:49:19,782.782 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:49:19,783.783 INFO    ] No camera update needed
[2026-06-27 03:49:19,785.785 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:49:19,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:49:19,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:49:19,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:49:21,830.830 INFO    ] ================================================
[2026-06-27 03:49:21,845.845 INFO    ] Launching Daemon at Sat Jun 27 03:49:21 IST 2026
[2026-06-27 03:49:21,856.856 INFO    ] ================================================
[2026-06-27 03:49:22,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:49:22
[2026-06-27 03:49:22,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:49:22,661.661 INFO    ] Initializing speech engine...
[2026-06-27 03:49:22,669.669 INFO    ] 2026-06-27 03:49:22
[2026-06-27 03:49:22,882.882 INFO    ] 2026-06-27 03:49:22
[2026-06-27 03:49:22,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:49:23,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:49:23,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:49:23,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:49:23,324.324 INFO    ] time= 27/06/2026 03:49:23
[2026-06-27 03:49:23,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:49:23,331.331 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:49:23,398.398 INFO    ] No existing commands found in stream
[2026-06-27 03:49:28,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:49:28,415.415 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-27 03:49:31,944.944 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 03:49:31,946.946 INFO    ] Checking for system updates...
[2026-06-27 03:49:31,971.971 INFO    ] 200
[2026-06-27 03:49:31,973.973 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:49:32,008.008 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:49:32,010.010 INFO    ] No update needed
[2026-06-27 03:49:32,011.011 INFO    ] Checking for camera pi updates...
[2026-06-27 03:49:32,036.036 INFO    ] 200
[2026-06-27 03:49:32,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:49:32,064.064 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:49:32,093.093 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:49:32,094.094 INFO    ] No camera update needed
[2026-06-27 03:49:32,096.096 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:49:32,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:49:32,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:49:32,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:49:34,145.145 INFO    ] ================================================
[2026-06-27 03:49:34,161.161 INFO    ] Launching Daemon at Sat Jun 27 03:49:34 IST 2026
[2026-06-27 03:49:34,173.173 INFO    ] ================================================
[2026-06-27 03:49:34,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:49:34
[2026-06-27 03:49:34,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:49:34,968.968 INFO    ] Initializing speech engine...
[2026-06-27 03:49:34,978.978 INFO    ] 2026-06-27 03:49:34
[2026-06-27 03:49:35,182.182 INFO    ] 2026-06-27 03:49:35
[2026-06-27 03:49:35,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:49:35,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:49:35,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:49:35,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:49:35,623.623 INFO    ] time= 27/06/2026 03:49:35
[2026-06-27 03:49:35,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:49:35,631.631 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:49:35,698.698 INFO    ] No existing commands found in stream
[2026-06-27 03:49:40,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:49:40,710.710 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-27 03:49:43,704.704 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:49:43,706.706 INFO    ] Checking for system updates...
[2026-06-27 03:49:43,727.727 INFO    ] 200
[2026-06-27 03:49:43,728.728 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:49:43,759.759 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:49:43,760.760 INFO    ] No update needed
[2026-06-27 03:49:43,761.761 INFO    ] Checking for camera pi updates...
[2026-06-27 03:49:43,782.782 INFO    ] 200
[2026-06-27 03:49:43,783.783 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:49:43,808.808 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:49:43,843.843 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:49:43,844.844 INFO    ] No camera update needed
[2026-06-27 03:49:43,846.846 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:49:43,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:49:43,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:49:43,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:49:45,895.895 INFO    ] ================================================
[2026-06-27 03:49:45,911.911 INFO    ] Launching Daemon at Sat Jun 27 03:49:45 IST 2026
[2026-06-27 03:49:45,923.923 INFO    ] ================================================
[2026-06-27 03:49:46,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:49:46
[2026-06-27 03:49:46,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:49:46,816.816 INFO    ] Initializing speech engine...
[2026-06-27 03:49:46,821.821 INFO    ] 2026-06-27 03:49:46
[2026-06-27 03:49:47,033.033 INFO    ] 2026-06-27 03:49:47
[2026-06-27 03:49:47,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:49:47,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:49:47,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:49:47,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:49:47,483.483 INFO    ] time= 27/06/2026 03:49:47
[2026-06-27 03:49:47,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:49:47,491.491 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:49:47,559.559 INFO    ] No existing commands found in stream
[2026-06-27 03:49:52,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:49:52,572.572 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-27 03:49:54,300.300 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 03:49:54,302.302 INFO    ] Checking for system updates...
[2026-06-27 03:49:54,323.323 INFO    ] 200
[2026-06-27 03:49:54,324.324 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:49:54,355.355 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:49:54,356.356 INFO    ] No update needed
[2026-06-27 03:49:54,358.358 INFO    ] Checking for camera pi updates...
[2026-06-27 03:49:54,379.379 INFO    ] 200
[2026-06-27 03:49:54,380.380 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:49:54,405.405 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:49:54,431.431 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:49:54,433.433 INFO    ] No camera update needed
[2026-06-27 03:49:54,435.435 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:49:54,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:49:54,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:49:54,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:49:56,484.484 INFO    ] ================================================
[2026-06-27 03:49:56,498.498 INFO    ] Launching Daemon at Sat Jun 27 03:49:56 IST 2026
[2026-06-27 03:49:56,510.510 INFO    ] ================================================
[2026-06-27 03:49:56,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:49:56
[2026-06-27 03:49:57,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:49:57,322.322 INFO    ] Initializing speech engine...
[2026-06-27 03:49:57,327.327 INFO    ] 2026-06-27 03:49:57
[2026-06-27 03:49:57,544.544 INFO    ] 2026-06-27 03:49:57
[2026-06-27 03:49:57,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:49:57,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:49:57,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:49:57,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:49:57,988.988 INFO    ] time= 27/06/2026 03:49:57
[2026-06-27 03:49:58,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:49:58,048.048 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:49:58,126.126 INFO    ] No existing commands found in stream
[2026-06-27 03:50:03,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:50:03,136.136 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-27 03:50:07,535.535 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 03:50:07,536.536 INFO    ] Checking for system updates...
[2026-06-27 03:50:07,557.557 INFO    ] 200
[2026-06-27 03:50:07,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:50:07,588.588 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:50:07,590.590 INFO    ] No update needed
[2026-06-27 03:50:07,591.591 INFO    ] Checking for camera pi updates...
[2026-06-27 03:50:07,612.612 INFO    ] 200
[2026-06-27 03:50:07,613.613 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:50:07,637.637 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:50:07,659.659 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:50:07,660.660 INFO    ] No camera update needed
[2026-06-27 03:50:07,662.662 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:50:07,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:50:07,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:50:07,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:50:09,707.707 INFO    ] ================================================
[2026-06-27 03:50:09,722.722 INFO    ] Launching Daemon at Sat Jun 27 03:50:09 IST 2026
[2026-06-27 03:50:09,734.734 INFO    ] ================================================
[2026-06-27 03:50:10,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:50:10
[2026-06-27 03:50:10,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:50:10,583.583 INFO    ] Initializing speech engine...
[2026-06-27 03:50:10,593.593 INFO    ] 2026-06-27 03:50:10
[2026-06-27 03:50:10,805.805 INFO    ] 2026-06-27 03:50:10
[2026-06-27 03:50:10,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:50:11,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:50:11,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:50:11,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:50:11,254.254 INFO    ] time= 27/06/2026 03:50:11
[2026-06-27 03:50:11,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:50:11,262.262 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:50:11,328.328 INFO    ] No existing commands found in stream
[2026-06-27 03:50:16,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:50:16,342.342 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-27 03:50:20,458.458 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 03:50:20,460.460 INFO    ] Checking for system updates...
[2026-06-27 03:50:20,481.481 INFO    ] 200
[2026-06-27 03:50:20,482.482 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:50:20,513.513 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:50:20,515.515 INFO    ] No update needed
[2026-06-27 03:50:20,516.516 INFO    ] Checking for camera pi updates...
[2026-06-27 03:50:20,536.536 INFO    ] 200
[2026-06-27 03:50:20,537.537 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:50:20,561.561 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:50:20,700.700 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:50:20,701.701 INFO    ] No camera update needed
[2026-06-27 03:50:20,703.703 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:50:20,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:50:20,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:50:20,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:50:22,751.751 INFO    ] ================================================
[2026-06-27 03:50:22,767.767 INFO    ] Launching Daemon at Sat Jun 27 03:50:22 IST 2026
[2026-06-27 03:50:22,778.778 INFO    ] ================================================
[2026-06-27 03:50:23,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:50:23
[2026-06-27 03:50:23,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:50:23,557.557 INFO    ] Initializing speech engine...
[2026-06-27 03:50:23,565.565 INFO    ] 2026-06-27 03:50:23
[2026-06-27 03:50:23,777.777 INFO    ] 2026-06-27 03:50:23
[2026-06-27 03:50:23,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:50:23,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:50:24,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:50:24,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:50:24,202.202 INFO    ] time= 27/06/2026 03:50:24
[2026-06-27 03:50:24,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:50:24,230.230 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:50:24,298.298 INFO    ] No existing commands found in stream
[2026-06-27 03:50:29,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:50:29,309.309 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-27 03:50:33,536.536 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 03:50:33,539.539 INFO    ] Checking for system updates...
[2026-06-27 03:50:33,576.576 INFO    ] 200
[2026-06-27 03:50:33,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:50:33,633.633 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:50:33,635.635 INFO    ] No update needed
[2026-06-27 03:50:33,638.638 INFO    ] Checking for camera pi updates...
[2026-06-27 03:50:33,672.672 INFO    ] 200
[2026-06-27 03:50:33,674.674 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:50:33,711.711 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:50:33,748.748 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:50:33,750.750 INFO    ] No camera update needed
[2026-06-27 03:50:33,751.751 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:50:33,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:50:33,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:50:33,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:50:35,796.796 INFO    ] ================================================
[2026-06-27 03:50:35,812.812 INFO    ] Launching Daemon at Sat Jun 27 03:50:35 IST 2026
[2026-06-27 03:50:35,824.824 INFO    ] ================================================
[2026-06-27 03:50:36,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:50:36
[2026-06-27 03:50:36,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:50:36,661.661 INFO    ] Initializing speech engine...
[2026-06-27 03:50:36,673.673 INFO    ] 2026-06-27 03:50:36
[2026-06-27 03:50:36,881.881 INFO    ] 2026-06-27 03:50:36
[2026-06-27 03:50:36,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:50:37,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:50:37,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:50:37,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:50:37,307.307 INFO    ] time= 27/06/2026 03:50:37
[2026-06-27 03:50:37,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:50:37,334.334 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:50:37,399.399 INFO    ] No existing commands found in stream
[2026-06-27 03:50:42,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:50:42,412.412 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-27 03:50:45,428.428 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 03:50:45,429.429 INFO    ] Checking for system updates...
[2026-06-27 03:50:45,450.450 INFO    ] 200
[2026-06-27 03:50:45,451.451 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:50:45,484.484 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:50:45,485.485 INFO    ] No update needed
[2026-06-27 03:50:45,487.487 INFO    ] Checking for camera pi updates...
[2026-06-27 03:50:45,506.506 INFO    ] 200
[2026-06-27 03:50:45,507.507 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:50:45,533.533 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:50:45,574.574 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:50:45,576.576 INFO    ] No camera update needed
[2026-06-27 03:50:45,577.577 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:50:45,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:50:45,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:50:45,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:50:47,623.623 INFO    ] ================================================
[2026-06-27 03:50:47,640.640 INFO    ] Launching Daemon at Sat Jun 27 03:50:47 IST 2026
[2026-06-27 03:50:47,652.652 INFO    ] ================================================
[2026-06-27 03:50:48,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:50:48
[2026-06-27 03:50:48,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:50:48,483.483 INFO    ] Initializing speech engine...
[2026-06-27 03:50:48,486.486 INFO    ] 2026-06-27 03:50:48
[2026-06-27 03:50:48,688.688 INFO    ] 2026-06-27 03:50:48
[2026-06-27 03:50:48,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:50:48,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:50:48,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:50:49,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:50:49,130.130 INFO    ] time= 27/06/2026 03:50:49
[2026-06-27 03:50:49,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:50:49,137.137 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:50:49,203.203 INFO    ] No existing commands found in stream
[2026-06-27 03:50:54,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:50:54,217.217 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-27 03:50:55,308.308 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:50:55,309.309 INFO    ] Checking for system updates...
[2026-06-27 03:50:55,330.330 INFO    ] 200
[2026-06-27 03:50:55,332.332 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:50:55,365.365 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:50:55,366.366 INFO    ] No update needed
[2026-06-27 03:50:55,367.367 INFO    ] Checking for camera pi updates...
[2026-06-27 03:50:55,387.387 INFO    ] 200
[2026-06-27 03:50:55,389.389 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:50:55,414.414 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:50:55,435.435 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:50:55,437.437 INFO    ] No camera update needed
[2026-06-27 03:50:55,438.438 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:50:55,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:50:55,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:50:55,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:50:57,485.485 INFO    ] ================================================
[2026-06-27 03:50:57,501.501 INFO    ] Launching Daemon at Sat Jun 27 03:50:57 IST 2026
[2026-06-27 03:50:57,512.512 INFO    ] ================================================
[2026-06-27 03:50:57,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:50:57
[2026-06-27 03:50:58,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:50:58,328.328 INFO    ] Initializing speech engine...
[2026-06-27 03:50:58,333.333 INFO    ] 2026-06-27 03:50:58
[2026-06-27 03:50:58,538.538 INFO    ] 2026-06-27 03:50:58
[2026-06-27 03:50:58,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:50:58,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:50:58,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:50:58,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:50:58,978.978 INFO    ] time= 27/06/2026 03:50:58
[2026-06-27 03:50:58,984.984 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:50:58,985.985 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:50:59,050.050 INFO    ] No existing commands found in stream
[2026-06-27 03:51:04,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:51:04,064.064 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-27 03:51:06,696.696 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:51:06,697.697 INFO    ] Checking for system updates...
[2026-06-27 03:51:06,719.719 INFO    ] 200
[2026-06-27 03:51:06,720.720 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:51:06,753.753 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:51:06,755.755 INFO    ] No update needed
[2026-06-27 03:51:06,756.756 INFO    ] Checking for camera pi updates...
[2026-06-27 03:51:06,777.777 INFO    ] 200
[2026-06-27 03:51:06,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:51:06,804.804 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:51:06,826.826 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:51:06,827.827 INFO    ] No camera update needed
[2026-06-27 03:51:06,829.829 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:51:06,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:51:06,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:51:06,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:51:08,876.876 INFO    ] ================================================
[2026-06-27 03:51:08,892.892 INFO    ] Launching Daemon at Sat Jun 27 03:51:08 IST 2026
[2026-06-27 03:51:08,904.904 INFO    ] ================================================
[2026-06-27 03:51:09,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:51:09
[2026-06-27 03:51:09,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:51:09,712.712 INFO    ] Initializing speech engine...
[2026-06-27 03:51:09,717.717 INFO    ] 2026-06-27 03:51:09
[2026-06-27 03:51:09,935.935 INFO    ] 2026-06-27 03:51:09
[2026-06-27 03:51:09,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:51:10,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:51:10,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:51:10,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:51:10,353.353 INFO    ] time= 27/06/2026 03:51:10
[2026-06-27 03:51:10,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:51:10,388.388 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:51:10,455.455 INFO    ] No existing commands found in stream
[2026-06-27 03:51:15,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:51:15,467.467 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-27 03:51:17,432.432 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 03:51:17,434.434 INFO    ] Checking for system updates...
[2026-06-27 03:51:17,455.455 INFO    ] 200
[2026-06-27 03:51:17,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:51:17,489.489 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:51:17,491.491 INFO    ] No update needed
[2026-06-27 03:51:17,492.492 INFO    ] Checking for camera pi updates...
[2026-06-27 03:51:17,512.512 INFO    ] 200
[2026-06-27 03:51:17,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:51:17,539.539 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:51:17,569.569 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:51:17,570.570 INFO    ] No camera update needed
[2026-06-27 03:51:17,572.572 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:51:17,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:51:17,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:51:17,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:51:19,617.617 INFO    ] ================================================
[2026-06-27 03:51:19,633.633 INFO    ] Launching Daemon at Sat Jun 27 03:51:19 IST 2026
[2026-06-27 03:51:19,646.646 INFO    ] ================================================
[2026-06-27 03:51:20,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:51:20
[2026-06-27 03:51:20,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:51:20,508.508 INFO    ] Initializing speech engine...
[2026-06-27 03:51:20,514.514 INFO    ] 2026-06-27 03:51:20
[2026-06-27 03:51:20,722.722 INFO    ] 2026-06-27 03:51:20
[2026-06-27 03:51:20,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:51:20,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:51:20,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:51:21,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:51:21,160.160 INFO    ] time= 27/06/2026 03:51:21
[2026-06-27 03:51:21,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:51:21,171.171 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:51:21,237.237 INFO    ] No existing commands found in stream
[2026-06-27 03:51:26,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:51:26,247.247 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-27 03:51:26,880.880 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:51:26,881.881 INFO    ] Checking for system updates...
[2026-06-27 03:51:26,905.905 INFO    ] 200
[2026-06-27 03:51:26,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:51:26,960.960 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:51:26,963.963 INFO    ] No update needed
[2026-06-27 03:51:26,966.966 INFO    ] Checking for camera pi updates...
[2026-06-27 03:51:27,000.000 INFO    ] 200
[2026-06-27 03:51:27,003.003 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:51:27,038.038 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:51:27,075.075 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:51:27,076.076 INFO    ] No camera update needed
[2026-06-27 03:51:27,077.077 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:51:27,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:51:27,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:51:27,084.084 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:51:29,125.125 INFO    ] ================================================
[2026-06-27 03:51:29,140.140 INFO    ] Launching Daemon at Sat Jun 27 03:51:29 IST 2026
[2026-06-27 03:51:29,151.151 INFO    ] ================================================
[2026-06-27 03:51:29,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:51:29
[2026-06-27 03:51:29,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:51:29,956.956 INFO    ] Initializing speech engine...
[2026-06-27 03:51:29,964.964 INFO    ] 2026-06-27 03:51:29
[2026-06-27 03:51:30,182.182 INFO    ] 2026-06-27 03:51:30
[2026-06-27 03:51:30,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:51:30,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:51:30,409.409 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:51:30,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:51:30,632.632 INFO    ] time= 27/06/2026 03:51:30
[2026-06-27 03:51:30,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:51:30,640.640 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:51:30,708.708 INFO    ] No existing commands found in stream
[2026-06-27 03:51:35,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:51:35,719.719 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-27 03:51:39,464.464 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 03:51:39,466.466 INFO    ] Checking for system updates...
[2026-06-27 03:51:39,488.488 INFO    ] 200
[2026-06-27 03:51:39,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:51:39,520.520 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:51:39,521.521 INFO    ] No update needed
[2026-06-27 03:51:39,523.523 INFO    ] Checking for camera pi updates...
[2026-06-27 03:51:39,542.542 INFO    ] 200
[2026-06-27 03:51:39,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:51:39,569.569 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:51:39,594.594 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:51:39,595.595 INFO    ] No camera update needed
[2026-06-27 03:51:39,596.596 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:51:39,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:51:39,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:51:39,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:51:41,643.643 INFO    ] ================================================
[2026-06-27 03:51:41,658.658 INFO    ] Launching Daemon at Sat Jun 27 03:51:41 IST 2026
[2026-06-27 03:51:41,670.670 INFO    ] ================================================
[2026-06-27 03:51:42,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:51:42
[2026-06-27 03:51:42,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:51:42,462.462 INFO    ] Initializing speech engine...
[2026-06-27 03:51:42,467.467 INFO    ] 2026-06-27 03:51:42
[2026-06-27 03:51:42,667.667 INFO    ] 2026-06-27 03:51:42
[2026-06-27 03:51:42,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:51:42,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:51:42,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:51:43,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:51:43,119.119 INFO    ] time= 27/06/2026 03:51:43
[2026-06-27 03:51:43,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:51:43,193.193 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:51:43,272.272 INFO    ] No existing commands found in stream
[2026-06-27 03:51:48,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:51:48,284.284 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-27 03:51:50,749.749 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:51:50,751.751 INFO    ] Checking for system updates...
[2026-06-27 03:51:50,773.773 INFO    ] 200
[2026-06-27 03:51:50,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:51:50,806.806 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:51:50,807.807 INFO    ] No update needed
[2026-06-27 03:51:50,808.808 INFO    ] Checking for camera pi updates...
[2026-06-27 03:51:50,828.828 INFO    ] 200
[2026-06-27 03:51:50,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:51:50,853.853 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:51:50,892.892 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:51:50,893.893 INFO    ] No camera update needed
[2026-06-27 03:51:50,895.895 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:51:50,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:51:50,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:51:50,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:51:52,943.943 INFO    ] ================================================
[2026-06-27 03:51:52,959.959 INFO    ] Launching Daemon at Sat Jun 27 03:51:52 IST 2026
[2026-06-27 03:51:52,970.970 INFO    ] ================================================
[2026-06-27 03:51:53,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:51:53
[2026-06-27 03:51:53,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:51:53,791.791 INFO    ] Initializing speech engine...
[2026-06-27 03:51:53,801.801 INFO    ] 2026-06-27 03:51:53
[2026-06-27 03:51:54,005.005 INFO    ] 2026-06-27 03:51:53
[2026-06-27 03:51:54,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:51:54,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:51:54,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:51:54,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:51:54,435.435 INFO    ] time= 27/06/2026 03:51:54
[2026-06-27 03:51:54,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:51:54,451.451 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:51:54,517.517 INFO    ] No existing commands found in stream
[2026-06-27 03:51:59,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:51:59,530.530 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-27 03:52:02,131.131 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:52:02,133.133 INFO    ] Checking for system updates...
[2026-06-27 03:52:02,172.172 INFO    ] 200
[2026-06-27 03:52:02,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:52:02,212.212 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:52:02,214.214 INFO    ] No update needed
[2026-06-27 03:52:02,216.216 INFO    ] Checking for camera pi updates...
[2026-06-27 03:52:02,241.241 INFO    ] 200
[2026-06-27 03:52:02,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:52:02,282.282 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:52:02,310.310 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:52:02,312.312 INFO    ] No camera update needed
[2026-06-27 03:52:02,315.315 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:52:02,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:52:02,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:52:02,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:52:04,374.374 INFO    ] ================================================
[2026-06-27 03:52:04,390.390 INFO    ] Launching Daemon at Sat Jun 27 03:52:04 IST 2026
[2026-06-27 03:52:04,401.401 INFO    ] ================================================
[2026-06-27 03:52:04,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:52:04
[2026-06-27 03:52:05,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:52:05,177.177 INFO    ] Initializing speech engine...
[2026-06-27 03:52:05,182.182 INFO    ] 2026-06-27 03:52:05
[2026-06-27 03:52:05,374.374 INFO    ] 2026-06-27 03:52:05
[2026-06-27 03:52:05,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:52:05,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:52:05,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:52:05,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:52:05,847.847 INFO    ] time= 27/06/2026 03:52:05
[2026-06-27 03:52:05,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:52:05,903.903 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:52:05,976.976 INFO    ] No existing commands found in stream
[2026-06-27 03:52:10,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:52:10,993.993 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-27 03:52:12,191.191 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 03:52:12,192.192 INFO    ] Checking for system updates...
[2026-06-27 03:52:12,215.215 INFO    ] 200
[2026-06-27 03:52:12,216.216 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:52:12,246.246 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:52:12,247.247 INFO    ] No update needed
[2026-06-27 03:52:12,249.249 INFO    ] Checking for camera pi updates...
[2026-06-27 03:52:12,269.269 INFO    ] 200
[2026-06-27 03:52:12,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:52:12,294.294 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:52:12,336.336 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:52:12,338.338 INFO    ] No camera update needed
[2026-06-27 03:52:12,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:52:12,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:52:12,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:52:12,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:52:14,386.386 INFO    ] ================================================
[2026-06-27 03:52:14,402.402 INFO    ] Launching Daemon at Sat Jun 27 03:52:14 IST 2026
[2026-06-27 03:52:14,414.414 INFO    ] ================================================
[2026-06-27 03:52:14,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:52:14
[2026-06-27 03:52:15,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:52:15,287.287 INFO    ] Initializing speech engine...
[2026-06-27 03:52:15,293.293 INFO    ] 2026-06-27 03:52:15
[2026-06-27 03:52:15,496.496 INFO    ] 2026-06-27 03:52:15
[2026-06-27 03:52:15,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:52:15,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:52:15,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:52:15,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:52:15,924.924 INFO    ] time= 27/06/2026 03:52:15
[2026-06-27 03:52:15,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:52:15,955.955 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:52:16,022.022 INFO    ] No existing commands found in stream
[2026-06-27 03:52:21,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:52:21,033.033 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-27 03:52:24,555.555 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:52:24,556.556 INFO    ] Checking for system updates...
[2026-06-27 03:52:24,579.579 INFO    ] 200
[2026-06-27 03:52:24,580.580 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:52:24,610.610 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:52:24,612.612 INFO    ] No update needed
[2026-06-27 03:52:24,613.613 INFO    ] Checking for camera pi updates...
[2026-06-27 03:52:24,634.634 INFO    ] 200
[2026-06-27 03:52:24,635.635 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:52:24,659.659 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:52:24,801.801 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:52:24,803.803 INFO    ] No camera update needed
[2026-06-27 03:52:24,804.804 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:52:24,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:52:24,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:52:24,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:52:26,851.851 INFO    ] ================================================
[2026-06-27 03:52:26,867.867 INFO    ] Launching Daemon at Sat Jun 27 03:52:26 IST 2026
[2026-06-27 03:52:26,878.878 INFO    ] ================================================
[2026-06-27 03:52:27,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:52:27
[2026-06-27 03:52:27,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:52:27,744.744 INFO    ] Initializing speech engine...
[2026-06-27 03:52:27,750.750 INFO    ] 2026-06-27 03:52:27
[2026-06-27 03:52:27,959.959 INFO    ] 2026-06-27 03:52:27
[2026-06-27 03:52:27,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:52:28,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:52:28,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:52:28,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:52:28,402.402 INFO    ] time= 27/06/2026 03:52:28
[2026-06-27 03:52:28,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:52:28,410.410 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:52:28,477.477 INFO    ] No existing commands found in stream
[2026-06-27 03:52:33,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:52:33,495.495 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-27 03:52:35,304.304 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 03:52:35,306.306 INFO    ] Checking for system updates...
[2026-06-27 03:52:35,328.328 INFO    ] 200
[2026-06-27 03:52:35,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:52:35,363.363 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:52:35,365.365 INFO    ] No update needed
[2026-06-27 03:52:35,366.366 INFO    ] Checking for camera pi updates...
[2026-06-27 03:52:35,387.387 INFO    ] 200
[2026-06-27 03:52:35,388.388 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:52:35,412.412 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:52:35,436.436 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:52:35,438.438 INFO    ] No camera update needed
[2026-06-27 03:52:35,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:52:35,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:52:35,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:52:35,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:52:37,486.486 INFO    ] ================================================
[2026-06-27 03:52:37,502.502 INFO    ] Launching Daemon at Sat Jun 27 03:52:37 IST 2026
[2026-06-27 03:52:37,513.513 INFO    ] ================================================
[2026-06-27 03:52:37,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:52:37
[2026-06-27 03:52:38,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:52:38,314.314 INFO    ] Initializing speech engine...
[2026-06-27 03:52:38,319.319 INFO    ] 2026-06-27 03:52:38
[2026-06-27 03:52:38,537.537 INFO    ] 2026-06-27 03:52:38
[2026-06-27 03:52:38,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:52:38,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:52:38,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:52:38,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:52:38,952.952 INFO    ] time= 27/06/2026 03:52:38
[2026-06-27 03:52:38,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:52:38,993.993 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:52:39,066.066 INFO    ] No existing commands found in stream
[2026-06-27 03:52:44,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:52:44,078.078 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-27 03:52:46,791.791 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 03:52:46,792.792 INFO    ] Checking for system updates...
[2026-06-27 03:52:46,814.814 INFO    ] 200
[2026-06-27 03:52:46,815.815 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:52:46,848.848 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:52:46,849.849 INFO    ] No update needed
[2026-06-27 03:52:46,850.850 INFO    ] Checking for camera pi updates...
[2026-06-27 03:52:46,870.870 INFO    ] 200
[2026-06-27 03:52:46,871.871 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:52:46,894.894 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:52:46,933.933 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:52:46,934.934 INFO    ] No camera update needed
[2026-06-27 03:52:46,936.936 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:52:46,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:52:46,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:52:46,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:52:48,981.981 INFO    ] ================================================
[2026-06-27 03:52:49,997.997 INFO    ] Launching Daemon at Sat Jun 27 03:52:48 IST 2026
[2026-06-27 03:52:49,008.008 INFO    ] ================================================
[2026-06-27 03:52:49,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:52:49
[2026-06-27 03:52:49,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:52:49,826.826 INFO    ] Initializing speech engine...
[2026-06-27 03:52:49,836.836 INFO    ] 2026-06-27 03:52:49
[2026-06-27 03:52:50,042.042 INFO    ] 2026-06-27 03:52:50
[2026-06-27 03:52:50,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:52:50,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:52:50,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:52:50,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:52:50,460.460 INFO    ] time= 27/06/2026 03:52:50
[2026-06-27 03:52:50,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:52:50,494.494 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:52:50,562.562 INFO    ] No existing commands found in stream
[2026-06-27 03:52:55,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:52:55,573.573 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-27 03:52:59,424.424 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 03:52:59,426.426 INFO    ] Checking for system updates...
[2026-06-27 03:52:59,446.446 INFO    ] 200
[2026-06-27 03:52:59,448.448 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:52:59,480.480 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:52:59,482.482 INFO    ] No update needed
[2026-06-27 03:52:59,483.483 INFO    ] Checking for camera pi updates...
[2026-06-27 03:52:59,503.503 INFO    ] 200
[2026-06-27 03:52:59,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:52:59,528.528 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:52:59,566.566 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:52:59,568.568 INFO    ] No camera update needed
[2026-06-27 03:52:59,569.569 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:52:59,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:52:59,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:52:59,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:53:01,609.609 INFO    ] ================================================
[2026-06-27 03:53:01,621.621 INFO    ] Launching Daemon at Sat Jun 27 03:53:01 IST 2026
[2026-06-27 03:53:01,632.632 INFO    ] ================================================
[2026-06-27 03:53:02,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:53:02
[2026-06-27 03:53:02,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:53:02,499.499 INFO    ] Initializing speech engine...
[2026-06-27 03:53:02,505.505 INFO    ] 2026-06-27 03:53:02
[2026-06-27 03:53:02,713.713 INFO    ] 2026-06-27 03:53:02
[2026-06-27 03:53:02,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:53:02,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:53:02,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:53:03,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:53:03,143.143 INFO    ] time= 27/06/2026 03:53:03
[2026-06-27 03:53:03,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:53:03,160.160 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:53:03,226.226 INFO    ] No existing commands found in stream
[2026-06-27 03:53:08,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:53:08,243.243 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-27 03:53:11,162.162 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:53:11,164.164 INFO    ] Checking for system updates...
[2026-06-27 03:53:11,185.185 INFO    ] 200
[2026-06-27 03:53:11,186.186 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:53:11,219.219 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:53:11,221.221 INFO    ] No update needed
[2026-06-27 03:53:11,222.222 INFO    ] Checking for camera pi updates...
[2026-06-27 03:53:11,241.241 INFO    ] 200
[2026-06-27 03:53:11,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:53:11,268.268 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:53:11,306.306 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:53:11,308.308 INFO    ] No camera update needed
[2026-06-27 03:53:11,309.309 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:53:11,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:53:11,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:53:11,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:53:13,350.350 INFO    ] ================================================
[2026-06-27 03:53:13,366.366 INFO    ] Launching Daemon at Sat Jun 27 03:53:13 IST 2026
[2026-06-27 03:53:13,377.377 INFO    ] ================================================
[2026-06-27 03:53:13,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:53:13
[2026-06-27 03:53:14,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:53:14,168.168 INFO    ] Initializing speech engine...
[2026-06-27 03:53:14,172.172 INFO    ] 2026-06-27 03:53:14
[2026-06-27 03:53:14,379.379 INFO    ] 2026-06-27 03:53:14
[2026-06-27 03:53:14,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:53:14,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:53:14,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:53:14,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:53:14,823.823 INFO    ] time= 27/06/2026 03:53:14
[2026-06-27 03:53:14,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:53:14,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:53:14,899.899 INFO    ] No existing commands found in stream
[2026-06-27 03:53:19,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:53:19,910.910 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-27 03:53:23,495.495 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 03:53:23,497.497 INFO    ] Checking for system updates...
[2026-06-27 03:53:23,519.519 INFO    ] 200
[2026-06-27 03:53:23,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:53:23,553.553 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:53:23,554.554 INFO    ] No update needed
[2026-06-27 03:53:23,556.556 INFO    ] Checking for camera pi updates...
[2026-06-27 03:53:23,575.575 INFO    ] 200
[2026-06-27 03:53:23,577.577 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:53:23,600.600 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:53:23,638.638 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:53:23,639.639 INFO    ] No camera update needed
[2026-06-27 03:53:23,641.641 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:53:23,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:53:23,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:53:23,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:53:25,678.678 INFO    ] ================================================
[2026-06-27 03:53:25,686.686 INFO    ] Launching Daemon at Sat Jun 27 03:53:25 IST 2026
[2026-06-27 03:53:25,693.693 INFO    ] ================================================
[2026-06-27 03:53:25,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:53:25
[2026-06-27 03:53:26,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:53:26,453.453 INFO    ] Initializing speech engine...
[2026-06-27 03:53:26,458.458 INFO    ] 2026-06-27 03:53:26
[2026-06-27 03:53:26,665.665 INFO    ] 2026-06-27 03:53:26
[2026-06-27 03:53:26,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:53:26,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:53:26,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:53:27,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:53:27,105.105 INFO    ] time= 27/06/2026 03:53:27
[2026-06-27 03:53:27,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:53:27,136.136 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:53:27,203.203 INFO    ] No existing commands found in stream
[2026-06-27 03:53:32,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:53:32,215.215 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-27 03:53:36,434.434 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 03:53:36,435.435 INFO    ] Checking for system updates...
[2026-06-27 03:53:36,456.456 INFO    ] 200
[2026-06-27 03:53:36,457.457 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:53:36,490.490 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:53:36,492.492 INFO    ] No update needed
[2026-06-27 03:53:36,493.493 INFO    ] Checking for camera pi updates...
[2026-06-27 03:53:36,512.512 INFO    ] 200
[2026-06-27 03:53:36,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:53:36,539.539 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:53:36,565.565 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:53:36,566.566 INFO    ] No camera update needed
[2026-06-27 03:53:36,567.567 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:53:36,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:53:36,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:53:36,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:53:38,615.615 INFO    ] ================================================
[2026-06-27 03:53:38,631.631 INFO    ] Launching Daemon at Sat Jun 27 03:53:38 IST 2026
[2026-06-27 03:53:38,642.642 INFO    ] ================================================
[2026-06-27 03:53:38,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:53:38
[2026-06-27 03:53:39,292.292 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:53:39,435.435 INFO    ] Initializing speech engine...
[2026-06-27 03:53:39,446.446 INFO    ] 2026-06-27 03:53:39
[2026-06-27 03:53:39,657.657 INFO    ] 2026-06-27 03:53:39
[2026-06-27 03:53:39,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:53:39,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:53:39,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:53:40,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:53:40,102.102 INFO    ] time= 27/06/2026 03:53:40
[2026-06-27 03:53:40,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:53:40,109.109 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:53:40,176.176 INFO    ] No existing commands found in stream
[2026-06-27 03:53:45,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:53:45,188.188 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-27 03:53:48,852.852 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 03:53:48,854.854 INFO    ] Checking for system updates...
[2026-06-27 03:53:48,875.875 INFO    ] 200
[2026-06-27 03:53:48,876.876 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:53:48,909.909 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:53:48,910.910 INFO    ] No update needed
[2026-06-27 03:53:48,911.911 INFO    ] Checking for camera pi updates...
[2026-06-27 03:53:48,932.932 INFO    ] 200
[2026-06-27 03:53:48,934.934 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:53:48,960.960 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:53:48,998.998 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:53:49,000.000 INFO    ] No camera update needed
[2026-06-27 03:53:49,001.001 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:53:49,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:53:49,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:53:49,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:53:51,047.047 INFO    ] ================================================
[2026-06-27 03:53:51,063.063 INFO    ] Launching Daemon at Sat Jun 27 03:53:51 IST 2026
[2026-06-27 03:53:51,075.075 INFO    ] ================================================
[2026-06-27 03:53:51,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:53:51
[2026-06-27 03:53:51,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:53:51,889.889 INFO    ] Initializing speech engine...
[2026-06-27 03:53:51,893.893 INFO    ] 2026-06-27 03:53:51
[2026-06-27 03:53:52,128.128 INFO    ] 2026-06-27 03:53:52
[2026-06-27 03:53:52,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:53:52,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:53:52,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:53:52,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:53:52,563.563 INFO    ] time= 27/06/2026 03:53:52
[2026-06-27 03:53:52,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:53:52,614.614 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:53:52,687.687 INFO    ] No existing commands found in stream
[2026-06-27 03:53:57,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:53:57,698.698 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-27 03:53:58,177.177 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 03:53:58,178.178 INFO    ] Checking for system updates...
[2026-06-27 03:53:58,199.199 INFO    ] 200
[2026-06-27 03:53:58,201.201 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:53:58,233.233 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:53:58,235.235 INFO    ] No update needed
[2026-06-27 03:53:58,236.236 INFO    ] Checking for camera pi updates...
[2026-06-27 03:53:58,255.255 INFO    ] 200
[2026-06-27 03:53:58,257.257 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:53:58,280.280 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:53:58,319.319 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:53:58,321.321 INFO    ] No camera update needed
[2026-06-27 03:53:58,322.322 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:53:58,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:53:58,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:53:58,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:54:00,368.368 INFO    ] ================================================
[2026-06-27 03:54:00,384.384 INFO    ] Launching Daemon at Sat Jun 27 03:54:00 IST 2026
[2026-06-27 03:54:00,396.396 INFO    ] ================================================
[2026-06-27 03:54:00,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:54:00
[2026-06-27 03:54:01,054.054 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:54:01,199.199 INFO    ] Initializing speech engine...
[2026-06-27 03:54:01,204.204 INFO    ] 2026-06-27 03:54:01
[2026-06-27 03:54:01,410.410 INFO    ] 2026-06-27 03:54:01
[2026-06-27 03:54:01,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:54:01,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:54:01,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:54:01,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:54:01,769.769 INFO    ] time= 27/06/2026 03:54:01
[2026-06-27 03:54:01,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:54:01,773.773 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:54:01,907.907 INFO    ] No existing commands found in stream
[2026-06-27 03:54:06,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:54:06,926.926 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-27 03:54:09,920.920 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 03:54:09,922.922 INFO    ] Checking for system updates...
[2026-06-27 03:54:09,945.945 INFO    ] 200
[2026-06-27 03:54:09,947.947 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:54:09,978.978 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:54:09,979.979 INFO    ] No update needed
[2026-06-27 03:54:09,981.981 INFO    ] Checking for camera pi updates...
[2026-06-27 03:54:10,001.001 INFO    ] 200
[2026-06-27 03:54:10,002.002 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:54:10,028.028 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:54:10,059.059 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:54:10,061.061 INFO    ] No camera update needed
[2026-06-27 03:54:10,062.062 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:54:10,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:54:10,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:54:10,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:54:12,103.103 INFO    ] ================================================
[2026-06-27 03:54:12,119.119 INFO    ] Launching Daemon at Sat Jun 27 03:54:12 IST 2026
[2026-06-27 03:54:12,130.130 INFO    ] ================================================
[2026-06-27 03:54:12,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:54:12
[2026-06-27 03:54:12,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:54:12,947.947 INFO    ] Initializing speech engine...
[2026-06-27 03:54:12,952.952 INFO    ] 2026-06-27 03:54:12
[2026-06-27 03:54:13,156.156 INFO    ] 2026-06-27 03:54:13
[2026-06-27 03:54:13,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:54:13,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:54:13,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:54:13,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:54:13,597.597 INFO    ] time= 27/06/2026 03:54:13
[2026-06-27 03:54:13,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:54:13,605.605 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:54:13,671.671 INFO    ] No existing commands found in stream
[2026-06-27 03:54:18,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:54:18,684.684 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-27 03:54:20,874.874 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:54:20,875.875 INFO    ] Checking for system updates...
[2026-06-27 03:54:20,896.896 INFO    ] 200
[2026-06-27 03:54:20,897.897 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:54:20,930.930 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:54:20,931.931 INFO    ] No update needed
[2026-06-27 03:54:20,933.933 INFO    ] Checking for camera pi updates...
[2026-06-27 03:54:20,952.952 INFO    ] 200
[2026-06-27 03:54:20,954.954 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:54:20,978.978 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:54:21,011.011 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:54:21,012.012 INFO    ] No camera update needed
[2026-06-27 03:54:21,014.014 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:54:21,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:54:21,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:54:21,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:54:23,061.061 INFO    ] ================================================
[2026-06-27 03:54:23,076.076 INFO    ] Launching Daemon at Sat Jun 27 03:54:23 IST 2026
[2026-06-27 03:54:23,087.087 INFO    ] ================================================
[2026-06-27 03:54:23,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:54:23
[2026-06-27 03:54:23,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:54:23,894.894 INFO    ] Initializing speech engine...
[2026-06-27 03:54:23,898.898 INFO    ] 2026-06-27 03:54:23
[2026-06-27 03:54:24,115.115 INFO    ] 2026-06-27 03:54:24
[2026-06-27 03:54:24,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:54:24,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:54:24,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:54:24,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:54:24,535.535 INFO    ] time= 27/06/2026 03:54:24
[2026-06-27 03:54:24,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:54:24,562.562 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:54:24,629.629 INFO    ] No existing commands found in stream
[2026-06-27 03:54:29,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:54:29,646.646 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-27 03:54:30,926.926 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 03:54:30,928.928 INFO    ] Checking for system updates...
[2026-06-27 03:54:30,951.951 INFO    ] 200
[2026-06-27 03:54:30,952.952 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:54:30,983.983 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:54:30,984.984 INFO    ] No update needed
[2026-06-27 03:54:30,986.986 INFO    ] Checking for camera pi updates...
[2026-06-27 03:54:31,006.006 INFO    ] 200
[2026-06-27 03:54:31,007.007 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:54:31,031.031 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:54:31,171.171 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:54:31,172.172 INFO    ] No camera update needed
[2026-06-27 03:54:31,174.174 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:54:31,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:54:31,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:54:31,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:54:33,215.215 INFO    ] ================================================
[2026-06-27 03:54:33,231.231 INFO    ] Launching Daemon at Sat Jun 27 03:54:33 IST 2026
[2026-06-27 03:54:33,242.242 INFO    ] ================================================
[2026-06-27 03:54:33,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:54:33
[2026-06-27 03:54:33,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:54:34,023.023 INFO    ] Initializing speech engine...
[2026-06-27 03:54:34,028.028 INFO    ] 2026-06-27 03:54:34
[2026-06-27 03:54:34,233.233 INFO    ] 2026-06-27 03:54:34
[2026-06-27 03:54:34,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:54:34,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:54:34,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:54:34,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:54:34,678.678 INFO    ] time= 27/06/2026 03:54:34
[2026-06-27 03:54:34,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:54:34,689.689 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:54:34,757.757 INFO    ] No existing commands found in stream
[2026-06-27 03:54:39,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:54:39,769.769 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-27 03:54:40,768.768 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:54:40,769.769 INFO    ] Checking for system updates...
[2026-06-27 03:54:40,790.790 INFO    ] 200
[2026-06-27 03:54:40,791.791 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:54:40,826.826 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:54:40,827.827 INFO    ] No update needed
[2026-06-27 03:54:40,829.829 INFO    ] Checking for camera pi updates...
[2026-06-27 03:54:40,850.850 INFO    ] 200
[2026-06-27 03:54:40,851.851 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:54:40,875.875 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:54:40,917.917 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:54:40,918.918 INFO    ] No camera update needed
[2026-06-27 03:54:40,920.920 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:54:40,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:54:40,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:54:40,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:54:42,965.965 INFO    ] ================================================
[2026-06-27 03:54:42,980.980 INFO    ] Launching Daemon at Sat Jun 27 03:54:42 IST 2026
[2026-06-27 03:54:42,991.991 INFO    ] ================================================
[2026-06-27 03:54:43,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:54:43
[2026-06-27 03:54:43,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:54:43,813.813 INFO    ] Initializing speech engine...
[2026-06-27 03:54:43,818.818 INFO    ] 2026-06-27 03:54:43
[2026-06-27 03:54:44,024.024 INFO    ] 2026-06-27 03:54:44
[2026-06-27 03:54:44,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:54:44,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:54:44,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:54:44,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:54:44,465.465 INFO    ] time= 27/06/2026 03:54:44
[2026-06-27 03:54:44,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:54:44,473.473 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:54:44,540.540 INFO    ] No existing commands found in stream
[2026-06-27 03:54:49,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:54:49,552.552 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-27 03:54:51,863.863 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 03:54:51,865.865 INFO    ] Checking for system updates...
[2026-06-27 03:54:51,888.888 INFO    ] 200
[2026-06-27 03:54:51,890.890 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:54:51,931.931 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:54:51,933.933 INFO    ] No update needed
[2026-06-27 03:54:51,935.935 INFO    ] Checking for camera pi updates...
[2026-06-27 03:54:51,956.956 INFO    ] 200
[2026-06-27 03:54:51,958.958 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:54:51,982.982 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:54:52,028.028 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:54:52,030.030 INFO    ] No camera update needed
[2026-06-27 03:54:52,031.031 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:54:52,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:54:52,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:54:52,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:54:54,063.063 INFO    ] ================================================
[2026-06-27 03:54:54,073.073 INFO    ] Launching Daemon at Sat Jun 27 03:54:54 IST 2026
[2026-06-27 03:54:54,078.078 INFO    ] ================================================
[2026-06-27 03:54:54,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:54:54
[2026-06-27 03:54:54,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:54:54,851.851 INFO    ] Initializing speech engine...
[2026-06-27 03:54:54,859.859 INFO    ] 2026-06-27 03:54:54
[2026-06-27 03:54:55,072.072 INFO    ] 2026-06-27 03:54:55
[2026-06-27 03:54:55,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:54:55,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:54:55,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:54:55,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:54:55,491.491 INFO    ] time= 27/06/2026 03:54:55
[2026-06-27 03:54:55,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:54:55,520.520 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:54:55,587.587 INFO    ] No existing commands found in stream
[2026-06-27 03:55:00,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:55:00,599.599 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-27 03:55:01,998.998 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 03:55:02,000.000 INFO    ] Checking for system updates...
[2026-06-27 03:55:02,046.046 INFO    ] 200
[2026-06-27 03:55:02,048.048 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:55:02,120.120 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:55:02,125.125 INFO    ] No update needed
[2026-06-27 03:55:02,132.132 INFO    ] Checking for camera pi updates...
[2026-06-27 03:55:02,174.174 INFO    ] 200
[2026-06-27 03:55:02,176.176 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:55:02,210.210 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:55:02,238.238 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:55:02,240.240 INFO    ] No camera update needed
[2026-06-27 03:55:02,241.241 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:55:02,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:55:02,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:55:02,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:55:04,291.291 INFO    ] ================================================
[2026-06-27 03:55:04,307.307 INFO    ] Launching Daemon at Sat Jun 27 03:55:04 IST 2026
[2026-06-27 03:55:04,318.318 INFO    ] ================================================
[2026-06-27 03:55:04,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:55:04
[2026-06-27 03:55:05,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:55:05,162.162 INFO    ] Initializing speech engine...
[2026-06-27 03:55:05,174.174 INFO    ] 2026-06-27 03:55:05
[2026-06-27 03:55:05,378.378 INFO    ] 2026-06-27 03:55:05
[2026-06-27 03:55:05,407.407 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:55:05,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:55:05,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:55:05,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:55:05,829.829 INFO    ] time= 27/06/2026 03:55:05
[2026-06-27 03:55:05,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:55:05,836.836 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:55:05,905.905 INFO    ] No existing commands found in stream
[2026-06-27 03:55:10,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:55:10,923.923 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-27 03:55:12,629.629 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 03:55:12,631.631 INFO    ] Checking for system updates...
[2026-06-27 03:55:12,653.653 INFO    ] 200
[2026-06-27 03:55:12,655.655 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:55:12,687.687 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:55:12,688.688 INFO    ] No update needed
[2026-06-27 03:55:12,689.689 INFO    ] Checking for camera pi updates...
[2026-06-27 03:55:12,710.710 INFO    ] 200
[2026-06-27 03:55:12,711.711 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:55:12,735.735 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:55:12,781.781 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:55:12,783.783 INFO    ] No camera update needed
[2026-06-27 03:55:12,784.784 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:55:12,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:55:12,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:55:12,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:55:14,831.831 INFO    ] ================================================
[2026-06-27 03:55:14,847.847 INFO    ] Launching Daemon at Sat Jun 27 03:55:14 IST 2026
[2026-06-27 03:55:14,858.858 INFO    ] ================================================
[2026-06-27 03:55:15,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:55:15
[2026-06-27 03:55:15,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:55:15,709.709 INFO    ] Initializing speech engine...
[2026-06-27 03:55:15,722.722 INFO    ] 2026-06-27 03:55:15
[2026-06-27 03:55:15,925.925 INFO    ] 2026-06-27 03:55:15
[2026-06-27 03:55:15,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:55:16,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:55:16,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:55:16,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:55:16,346.346 INFO    ] time= 27/06/2026 03:55:16
[2026-06-27 03:55:16,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:55:16,377.377 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:55:16,444.444 INFO    ] No existing commands found in stream
[2026-06-27 03:55:21,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:55:21,457.457 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-27 03:55:23,675.675 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:55:23,677.677 INFO    ] Checking for system updates...
[2026-06-27 03:55:23,698.698 INFO    ] 200
[2026-06-27 03:55:23,699.699 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:55:23,732.732 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:55:23,733.733 INFO    ] No update needed
[2026-06-27 03:55:23,735.735 INFO    ] Checking for camera pi updates...
[2026-06-27 03:55:23,756.756 INFO    ] 200
[2026-06-27 03:55:23,758.758 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:55:23,782.782 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:55:23,830.830 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:55:23,831.831 INFO    ] No camera update needed
[2026-06-27 03:55:23,832.832 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:55:23,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:55:23,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:55:23,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:55:25,879.879 INFO    ] ================================================
[2026-06-27 03:55:25,895.895 INFO    ] Launching Daemon at Sat Jun 27 03:55:25 IST 2026
[2026-06-27 03:55:25,905.905 INFO    ] ================================================
[2026-06-27 03:55:26,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:55:26
[2026-06-27 03:55:26,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:55:26,736.736 INFO    ] Initializing speech engine...
[2026-06-27 03:55:26,741.741 INFO    ] 2026-06-27 03:55:26
[2026-06-27 03:55:26,946.946 INFO    ] 2026-06-27 03:55:26
[2026-06-27 03:55:26,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:55:27,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:55:27,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:55:27,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:55:27,393.393 INFO    ] time= 27/06/2026 03:55:27
[2026-06-27 03:55:27,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:55:27,401.401 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:55:27,468.468 INFO    ] No existing commands found in stream
[2026-06-27 03:55:32,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:55:32,476.476 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-27 03:55:35,563.563 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 03:55:35,564.564 INFO    ] Checking for system updates...
[2026-06-27 03:55:35,585.585 INFO    ] 200
[2026-06-27 03:55:35,587.587 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:55:35,618.618 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:55:35,619.619 INFO    ] No update needed
[2026-06-27 03:55:35,621.621 INFO    ] Checking for camera pi updates...
[2026-06-27 03:55:35,642.642 INFO    ] 200
[2026-06-27 03:55:35,643.643 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:55:35,667.667 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:55:35,708.708 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:55:35,709.709 INFO    ] No camera update needed
[2026-06-27 03:55:35,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:55:35,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:55:35,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:55:35,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:55:37,760.760 INFO    ] ================================================
[2026-06-27 03:55:37,774.774 INFO    ] Launching Daemon at Sat Jun 27 03:55:37 IST 2026
[2026-06-27 03:55:37,785.785 INFO    ] ================================================
[2026-06-27 03:55:38,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:55:38
[2026-06-27 03:55:38,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:55:38,592.592 INFO    ] Initializing speech engine...
[2026-06-27 03:55:38,595.595 INFO    ] 2026-06-27 03:55:38
[2026-06-27 03:55:38,816.816 INFO    ] 2026-06-27 03:55:38
[2026-06-27 03:55:38,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:55:39,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:55:39,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:55:39,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:55:39,237.237 INFO    ] time= 27/06/2026 03:55:39
[2026-06-27 03:55:39,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:55:39,268.268 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:55:39,340.340 INFO    ] No existing commands found in stream
[2026-06-27 03:55:44,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:55:44,352.352 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-27 03:55:46,140.140 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:55:46,142.142 INFO    ] Checking for system updates...
[2026-06-27 03:55:46,163.163 INFO    ] 200
[2026-06-27 03:55:46,165.165 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:55:46,196.196 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:55:46,198.198 INFO    ] No update needed
[2026-06-27 03:55:46,199.199 INFO    ] Checking for camera pi updates...
[2026-06-27 03:55:46,219.219 INFO    ] 200
[2026-06-27 03:55:46,220.220 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:55:46,244.244 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:55:46,284.284 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:55:46,286.286 INFO    ] No camera update needed
[2026-06-27 03:55:46,287.287 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:55:46,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:55:46,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:55:46,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:55:48,336.336 INFO    ] ================================================
[2026-06-27 03:55:48,351.351 INFO    ] Launching Daemon at Sat Jun 27 03:55:48 IST 2026
[2026-06-27 03:55:48,362.362 INFO    ] ================================================
[2026-06-27 03:55:48,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:55:48
[2026-06-27 03:55:49,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:55:49,202.202 INFO    ] Initializing speech engine...
[2026-06-27 03:55:49,206.206 INFO    ] 2026-06-27 03:55:49
[2026-06-27 03:55:49,414.414 INFO    ] 2026-06-27 03:55:49
[2026-06-27 03:55:49,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:55:49,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:55:49,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:55:49,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:55:49,838.838 INFO    ] time= 27/06/2026 03:55:49
[2026-06-27 03:55:49,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:55:49,868.868 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:55:49,961.961 INFO    ] No existing commands found in stream
[2026-06-27 03:55:54,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:55:54,979.979 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-27 03:55:56,887.887 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:55:56,889.889 INFO    ] Checking for system updates...
[2026-06-27 03:55:56,910.910 INFO    ] 200
[2026-06-27 03:55:56,912.912 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:55:56,942.942 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:55:56,945.945 INFO    ] No update needed
[2026-06-27 03:55:56,946.946 INFO    ] Checking for camera pi updates...
[2026-06-27 03:55:56,966.966 INFO    ] 200
[2026-06-27 03:55:56,968.968 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:55:56,991.991 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:55:57,032.032 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:55:57,034.034 INFO    ] No camera update needed
[2026-06-27 03:55:57,035.035 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:55:57,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:55:57,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:55:57,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:55:59,084.084 INFO    ] ================================================
[2026-06-27 03:55:59,099.099 INFO    ] Launching Daemon at Sat Jun 27 03:55:59 IST 2026
[2026-06-27 03:55:59,111.111 INFO    ] ================================================
[2026-06-27 03:55:59,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:55:59
[2026-06-27 03:55:59,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:55:59,916.916 INFO    ] Initializing speech engine...
[2026-06-27 03:55:59,921.921 INFO    ] 2026-06-27 03:55:59
[2026-06-27 03:56:00,126.126 INFO    ] 2026-06-27 03:56:00
[2026-06-27 03:56:00,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:56:00,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:56:00,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:56:00,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:56:00,572.572 INFO    ] time= 27/06/2026 03:56:00
[2026-06-27 03:56:00,577.577 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:56:00,579.579 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:56:00,645.645 INFO    ] No existing commands found in stream
[2026-06-27 03:56:05,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:56:05,659.659 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-27 03:56:06,707.707 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:56:06,709.709 INFO    ] Checking for system updates...
[2026-06-27 03:56:06,729.729 INFO    ] 200
[2026-06-27 03:56:06,731.731 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:56:06,761.761 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:56:06,762.762 INFO    ] No update needed
[2026-06-27 03:56:06,763.763 INFO    ] Checking for camera pi updates...
[2026-06-27 03:56:06,783.783 INFO    ] 200
[2026-06-27 03:56:06,784.784 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:56:06,808.808 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:56:06,846.846 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:56:06,847.847 INFO    ] No camera update needed
[2026-06-27 03:56:06,849.849 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:56:06,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:56:06,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:56:06,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:56:08,895.895 INFO    ] ================================================
[2026-06-27 03:56:08,910.910 INFO    ] Launching Daemon at Sat Jun 27 03:56:08 IST 2026
[2026-06-27 03:56:08,922.922 INFO    ] ================================================
[2026-06-27 03:56:09,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:56:09
[2026-06-27 03:56:09,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:56:09,746.746 INFO    ] Initializing speech engine...
[2026-06-27 03:56:09,756.756 INFO    ] 2026-06-27 03:56:09
[2026-06-27 03:56:09,964.964 INFO    ] 2026-06-27 03:56:09
[2026-06-27 03:56:09,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:56:10,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:56:10,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:56:10,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:56:10,384.384 INFO    ] time= 27/06/2026 03:56:10
[2026-06-27 03:56:10,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:56:10,415.415 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:56:10,481.481 INFO    ] No existing commands found in stream
[2026-06-27 03:56:15,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:56:15,495.495 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-27 03:56:16,284.284 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:56:16,286.286 INFO    ] Checking for system updates...
[2026-06-27 03:56:16,307.307 INFO    ] 200
[2026-06-27 03:56:16,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:56:16,339.339 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:56:16,340.340 INFO    ] No update needed
[2026-06-27 03:56:16,342.342 INFO    ] Checking for camera pi updates...
[2026-06-27 03:56:16,361.361 INFO    ] 200
[2026-06-27 03:56:16,362.362 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:56:16,386.386 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:56:16,436.436 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:56:16,437.437 INFO    ] No camera update needed
[2026-06-27 03:56:16,438.438 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:56:16,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:56:16,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:56:16,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:56:18,486.486 INFO    ] ================================================
[2026-06-27 03:56:18,501.501 INFO    ] Launching Daemon at Sat Jun 27 03:56:18 IST 2026
[2026-06-27 03:56:18,512.512 INFO    ] ================================================
[2026-06-27 03:56:18,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:56:18
[2026-06-27 03:56:19,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:56:19,340.340 INFO    ] Initializing speech engine...
[2026-06-27 03:56:19,345.345 INFO    ] 2026-06-27 03:56:19
[2026-06-27 03:56:19,552.552 INFO    ] 2026-06-27 03:56:19
[2026-06-27 03:56:19,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:56:19,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:56:19,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:56:19,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:56:19,969.969 INFO    ] time= 27/06/2026 03:56:19
[2026-06-27 03:56:19,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:56:19,998.998 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:56:20,065.065 INFO    ] No existing commands found in stream
[2026-06-27 03:56:25,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:56:25,082.082 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-27 03:56:26,604.604 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:56:26,606.606 INFO    ] Checking for system updates...
[2026-06-27 03:56:26,627.627 INFO    ] 200
[2026-06-27 03:56:26,629.629 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:56:26,659.659 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:56:26,661.661 INFO    ] No update needed
[2026-06-27 03:56:26,662.662 INFO    ] Checking for camera pi updates...
[2026-06-27 03:56:26,682.682 INFO    ] 200
[2026-06-27 03:56:26,684.684 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:56:26,707.707 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:56:26,753.753 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:56:26,755.755 INFO    ] No camera update needed
[2026-06-27 03:56:26,756.756 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:56:26,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:56:26,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:56:26,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:56:28,805.805 INFO    ] ================================================
[2026-06-27 03:56:28,820.820 INFO    ] Launching Daemon at Sat Jun 27 03:56:28 IST 2026
[2026-06-27 03:56:28,831.831 INFO    ] ================================================
[2026-06-27 03:56:29,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:56:29
[2026-06-27 03:56:29,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:56:29,627.627 INFO    ] Initializing speech engine...
[2026-06-27 03:56:29,633.633 INFO    ] 2026-06-27 03:56:29
[2026-06-27 03:56:29,836.836 INFO    ] 2026-06-27 03:56:29
[2026-06-27 03:56:29,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:56:29,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:56:30,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:56:30,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:56:30,252.252 INFO    ] time= 27/06/2026 03:56:30
[2026-06-27 03:56:30,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:56:30,285.285 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:56:30,352.352 INFO    ] No existing commands found in stream
[2026-06-27 03:56:35,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:56:35,364.364 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-27 03:56:35,810.810 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 03:56:35,811.811 INFO    ] Checking for system updates...
[2026-06-27 03:56:35,832.832 INFO    ] 200
[2026-06-27 03:56:35,833.833 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:56:35,866.866 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:56:35,867.867 INFO    ] No update needed
[2026-06-27 03:56:35,868.868 INFO    ] Checking for camera pi updates...
[2026-06-27 03:56:35,888.888 INFO    ] 200
[2026-06-27 03:56:35,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:56:35,915.915 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:56:36,062.062 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:56:36,064.064 INFO    ] No camera update needed
[2026-06-27 03:56:36,065.065 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:56:36,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:56:36,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:56:36,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:56:38,112.112 INFO    ] ================================================
[2026-06-27 03:56:38,127.127 INFO    ] Launching Daemon at Sat Jun 27 03:56:38 IST 2026
[2026-06-27 03:56:38,137.137 INFO    ] ================================================
[2026-06-27 03:56:38,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:56:38
[2026-06-27 03:56:38,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:56:38,927.927 INFO    ] Initializing speech engine...
[2026-06-27 03:56:38,935.935 INFO    ] 2026-06-27 03:56:38
[2026-06-27 03:56:39,147.147 INFO    ] 2026-06-27 03:56:39
[2026-06-27 03:56:39,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:56:39,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:56:39,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:56:39,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:56:39,590.590 INFO    ] time= 27/06/2026 03:56:39
[2026-06-27 03:56:39,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:56:39,597.597 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:56:39,664.664 INFO    ] No existing commands found in stream
[2026-06-27 03:56:44,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:56:44,676.676 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-27 03:56:48,984.984 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:56:48,985.985 INFO    ] Checking for system updates...
[2026-06-27 03:56:49,006.006 INFO    ] 200
[2026-06-27 03:56:49,007.007 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:56:49,038.038 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:56:49,039.039 INFO    ] No update needed
[2026-06-27 03:56:49,040.040 INFO    ] Checking for camera pi updates...
[2026-06-27 03:56:49,060.060 INFO    ] 200
[2026-06-27 03:56:49,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:56:49,085.085 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:56:49,130.130 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:56:49,131.131 INFO    ] No camera update needed
[2026-06-27 03:56:49,133.133 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:56:49,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:56:49,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:56:49,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:56:51,178.178 INFO    ] ================================================
[2026-06-27 03:56:51,197.197 INFO    ] Launching Daemon at Sat Jun 27 03:56:51 IST 2026
[2026-06-27 03:56:51,208.208 INFO    ] ================================================
[2026-06-27 03:56:51,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:56:51
[2026-06-27 03:56:51,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:56:52,016.016 INFO    ] Initializing speech engine...
[2026-06-27 03:56:52,022.022 INFO    ] 2026-06-27 03:56:52
[2026-06-27 03:56:52,226.226 INFO    ] 2026-06-27 03:56:52
[2026-06-27 03:56:52,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:56:52,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:56:52,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:56:52,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:56:52,661.661 INFO    ] time= 27/06/2026 03:56:52
[2026-06-27 03:56:52,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:56:52,685.685 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:56:52,755.755 INFO    ] No existing commands found in stream
[2026-06-27 03:56:57,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:56:57,767.767 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-27 03:56:59,447.447 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:56:59,449.449 INFO    ] Checking for system updates...
[2026-06-27 03:56:59,469.469 INFO    ] 200
[2026-06-27 03:56:59,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:56:59,501.501 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:56:59,502.502 INFO    ] No update needed
[2026-06-27 03:56:59,504.504 INFO    ] Checking for camera pi updates...
[2026-06-27 03:56:59,523.523 INFO    ] 200
[2026-06-27 03:56:59,525.525 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:56:59,548.548 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:56:59,586.586 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:56:59,587.587 INFO    ] No camera update needed
[2026-06-27 03:56:59,588.588 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:56:59,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:56:59,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:56:59,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:57:01,638.638 INFO    ] ================================================
[2026-06-27 03:57:01,651.651 INFO    ] Launching Daemon at Sat Jun 27 03:57:01 IST 2026
[2026-06-27 03:57:01,667.667 INFO    ] ================================================
[2026-06-27 03:57:02,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:57:02
[2026-06-27 03:57:02,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:57:02,596.596 INFO    ] Initializing speech engine...
[2026-06-27 03:57:02,605.605 INFO    ] 2026-06-27 03:57:02
[2026-06-27 03:57:02,823.823 INFO    ] 2026-06-27 03:57:02
[2026-06-27 03:57:02,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:57:03,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:57:03,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:57:03,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:57:03,255.255 INFO    ] time= 27/06/2026 03:57:03
[2026-06-27 03:57:03,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:57:03,271.271 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:57:03,338.338 INFO    ] No existing commands found in stream
[2026-06-27 03:57:08,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:57:08,356.356 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-27 03:57:11,059.059 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:57:11,061.061 INFO    ] Checking for system updates...
[2026-06-27 03:57:11,084.084 INFO    ] 200
[2026-06-27 03:57:11,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:57:11,115.115 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:57:11,117.117 INFO    ] No update needed
[2026-06-27 03:57:11,118.118 INFO    ] Checking for camera pi updates...
[2026-06-27 03:57:11,137.137 INFO    ] 200
[2026-06-27 03:57:11,138.138 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:57:11,164.164 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:57:11,209.209 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:57:11,210.210 INFO    ] No camera update needed
[2026-06-27 03:57:11,212.212 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:57:11,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:57:11,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:57:11,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:57:13,256.256 INFO    ] ================================================
[2026-06-27 03:57:13,271.271 INFO    ] Launching Daemon at Sat Jun 27 03:57:13 IST 2026
[2026-06-27 03:57:13,282.282 INFO    ] ================================================
[2026-06-27 03:57:13,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:57:13
[2026-06-27 03:57:13,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:57:14,080.080 INFO    ] Initializing speech engine...
[2026-06-27 03:57:14,086.086 INFO    ] 2026-06-27 03:57:14
[2026-06-27 03:57:14,295.295 INFO    ] 2026-06-27 03:57:14
[2026-06-27 03:57:14,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:57:14,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:57:14,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:57:14,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:57:14,745.745 INFO    ] time= 27/06/2026 03:57:14
[2026-06-27 03:57:14,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:57:14,749.749 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:57:14,818.818 INFO    ] No existing commands found in stream
[2026-06-27 03:57:19,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:57:19,830.830 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-27 03:57:24,092.092 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:57:24,094.094 INFO    ] Checking for system updates...
[2026-06-27 03:57:24,116.116 INFO    ] 200
[2026-06-27 03:57:24,117.117 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:57:24,147.147 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:57:24,149.149 INFO    ] No update needed
[2026-06-27 03:57:24,150.150 INFO    ] Checking for camera pi updates...
[2026-06-27 03:57:24,169.169 INFO    ] 200
[2026-06-27 03:57:24,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:57:24,194.194 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:57:24,237.237 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:57:24,239.239 INFO    ] No camera update needed
[2026-06-27 03:57:24,240.240 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:57:24,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:57:24,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:57:24,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:57:26,279.279 INFO    ] ================================================
[2026-06-27 03:57:26,288.288 INFO    ] Launching Daemon at Sat Jun 27 03:57:26 IST 2026
[2026-06-27 03:57:26,294.294 INFO    ] ================================================
[2026-06-27 03:57:26,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:57:26
[2026-06-27 03:57:26,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:57:27,099.099 INFO    ] Initializing speech engine...
[2026-06-27 03:57:27,105.105 INFO    ] 2026-06-27 03:57:27
[2026-06-27 03:57:27,314.314 INFO    ] 2026-06-27 03:57:27
[2026-06-27 03:57:27,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:57:27,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:57:27,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:57:27,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:57:27,739.739 INFO    ] time= 27/06/2026 03:57:27
[2026-06-27 03:57:27,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:57:27,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:57:27,838.838 INFO    ] No existing commands found in stream
[2026-06-27 03:57:32,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:57:32,851.851 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-27 03:57:35,895.895 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 03:57:35,897.897 INFO    ] Checking for system updates...
[2026-06-27 03:57:35,919.919 INFO    ] 200
[2026-06-27 03:57:35,920.920 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:57:35,953.953 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:57:35,954.954 INFO    ] No update needed
[2026-06-27 03:57:35,956.956 INFO    ] Checking for camera pi updates...
[2026-06-27 03:57:35,975.975 INFO    ] 200
[2026-06-27 03:57:35,976.976 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:57:36,000.000 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:57:36,039.039 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:57:36,041.041 INFO    ] No camera update needed
[2026-06-27 03:57:36,042.042 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:57:36,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:57:36,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:57:36,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:57:38,087.087 INFO    ] ================================================
[2026-06-27 03:57:38,102.102 INFO    ] Launching Daemon at Sat Jun 27 03:57:38 IST 2026
[2026-06-27 03:57:38,113.113 INFO    ] ================================================
[2026-06-27 03:57:38,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:57:38
[2026-06-27 03:57:38,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:57:38,891.891 INFO    ] Initializing speech engine...
[2026-06-27 03:57:38,904.904 INFO    ] 2026-06-27 03:57:38
[2026-06-27 03:57:39,112.112 INFO    ] 2026-06-27 03:57:39
[2026-06-27 03:57:39,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:57:39,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:57:39,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:57:39,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:57:39,539.539 INFO    ] time= 27/06/2026 03:57:39
[2026-06-27 03:57:39,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:57:39,567.567 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:57:39,634.634 INFO    ] No existing commands found in stream
[2026-06-27 03:57:44,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:57:44,647.647 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-27 03:57:46,139.139 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:57:46,140.140 INFO    ] Checking for system updates...
[2026-06-27 03:57:46,161.161 INFO    ] 200
[2026-06-27 03:57:46,162.162 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:57:46,195.195 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:57:46,196.196 INFO    ] No update needed
[2026-06-27 03:57:46,197.197 INFO    ] Checking for camera pi updates...
[2026-06-27 03:57:46,217.217 INFO    ] 200
[2026-06-27 03:57:46,219.219 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:57:46,242.242 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:57:46,287.287 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:57:46,288.288 INFO    ] No camera update needed
[2026-06-27 03:57:46,290.290 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:57:46,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:57:46,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:57:46,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:57:48,337.337 INFO    ] ================================================
[2026-06-27 03:57:48,352.352 INFO    ] Launching Daemon at Sat Jun 27 03:57:48 IST 2026
[2026-06-27 03:57:48,363.363 INFO    ] ================================================
[2026-06-27 03:57:48,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:57:48
[2026-06-27 03:57:48,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:57:49,128.128 INFO    ] Initializing speech engine...
[2026-06-27 03:57:49,132.132 INFO    ] 2026-06-27 03:57:49
[2026-06-27 03:57:49,358.358 INFO    ] 2026-06-27 03:57:49
[2026-06-27 03:57:49,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:57:49,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:57:49,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:57:49,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:57:49,800.800 INFO    ] time= 27/06/2026 03:57:49
[2026-06-27 03:57:49,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:57:49,833.833 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:57:49,905.905 INFO    ] No existing commands found in stream
[2026-06-27 03:57:54,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:57:54,917.917 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-27 03:57:56,805.805 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 03:57:56,806.806 INFO    ] Checking for system updates...
[2026-06-27 03:57:56,827.827 INFO    ] 200
[2026-06-27 03:57:56,828.828 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:57:56,860.860 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:57:56,862.862 INFO    ] No update needed
[2026-06-27 03:57:56,863.863 INFO    ] Checking for camera pi updates...
[2026-06-27 03:57:56,884.884 INFO    ] 200
[2026-06-27 03:57:56,886.886 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:57:56,909.909 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:57:56,956.956 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:57:56,957.957 INFO    ] No camera update needed
[2026-06-27 03:57:56,958.958 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:57:56,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:57:56,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:57:56,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:57:59,003.003 INFO    ] ================================================
[2026-06-27 03:57:59,018.018 INFO    ] Launching Daemon at Sat Jun 27 03:57:59 IST 2026
[2026-06-27 03:57:59,029.029 INFO    ] ================================================
[2026-06-27 03:57:59,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:57:59
[2026-06-27 03:57:59,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:57:59,835.835 INFO    ] Initializing speech engine...
[2026-06-27 03:57:59,844.844 INFO    ] 2026-06-27 03:57:59
[2026-06-27 03:58:00,057.057 INFO    ] 2026-06-27 03:58:00
[2026-06-27 03:58:00,087.087 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:58:00,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:58:00,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:58:00,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:58:00,482.482 INFO    ] time= 27/06/2026 03:58:00
[2026-06-27 03:58:00,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:58:00,511.511 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:58:00,578.578 INFO    ] No existing commands found in stream
[2026-06-27 03:58:05,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:58:05,590.590 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-27 03:58:08,271.271 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 03:58:08,272.272 INFO    ] Checking for system updates...
[2026-06-27 03:58:08,293.293 INFO    ] 200
[2026-06-27 03:58:08,295.295 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:58:08,324.324 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:58:08,326.326 INFO    ] No update needed
[2026-06-27 03:58:08,327.327 INFO    ] Checking for camera pi updates...
[2026-06-27 03:58:08,347.347 INFO    ] 200
[2026-06-27 03:58:08,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:58:08,371.371 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:58:08,413.413 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:58:08,415.415 INFO    ] No camera update needed
[2026-06-27 03:58:08,416.416 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:58:08,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:58:08,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:58:08,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:58:10,463.463 INFO    ] ================================================
[2026-06-27 03:58:10,478.478 INFO    ] Launching Daemon at Sat Jun 27 03:58:10 IST 2026
[2026-06-27 03:58:10,488.488 INFO    ] ================================================
[2026-06-27 03:58:10,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:58:10
[2026-06-27 03:58:11,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:58:11,277.277 INFO    ] Initializing speech engine...
[2026-06-27 03:58:11,290.290 INFO    ] 2026-06-27 03:58:11
[2026-06-27 03:58:11,501.501 INFO    ] 2026-06-27 03:58:11
[2026-06-27 03:58:11,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:58:11,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:58:11,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:58:11,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:58:11,944.944 INFO    ] time= 27/06/2026 03:58:11
[2026-06-27 03:58:11,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:58:11,951.951 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:58:12,018.018 INFO    ] No existing commands found in stream
[2026-06-27 03:58:17,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:58:17,030.030 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-27 03:58:21,165.165 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 03:58:21,166.166 INFO    ] Checking for system updates...
[2026-06-27 03:58:21,187.187 INFO    ] 200
[2026-06-27 03:58:21,188.188 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:58:21,218.218 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:58:21,220.220 INFO    ] No update needed
[2026-06-27 03:58:21,221.221 INFO    ] Checking for camera pi updates...
[2026-06-27 03:58:21,241.241 INFO    ] 200
[2026-06-27 03:58:21,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:58:21,268.268 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:58:21,304.304 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:58:21,305.305 INFO    ] No camera update needed
[2026-06-27 03:58:21,307.307 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:58:21,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:58:21,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:58:21,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:58:23,353.353 INFO    ] ================================================
[2026-06-27 03:58:23,368.368 INFO    ] Launching Daemon at Sat Jun 27 03:58:23 IST 2026
[2026-06-27 03:58:23,379.379 INFO    ] ================================================
[2026-06-27 03:58:23,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:58:23
[2026-06-27 03:58:24,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:58:24,190.190 INFO    ] Initializing speech engine...
[2026-06-27 03:58:24,196.196 INFO    ] 2026-06-27 03:58:24
[2026-06-27 03:58:24,399.399 INFO    ] 2026-06-27 03:58:24
[2026-06-27 03:58:24,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:58:24,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:58:24,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:58:24,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:58:24,831.831 INFO    ] time= 27/06/2026 03:58:24
[2026-06-27 03:58:24,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:58:24,847.847 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:58:24,914.914 INFO    ] No existing commands found in stream
[2026-06-27 03:58:29,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:58:29,931.931 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-27 03:58:31,158.158 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 03:58:31,160.160 INFO    ] Checking for system updates...
[2026-06-27 03:58:31,181.181 INFO    ] 200
[2026-06-27 03:58:31,182.182 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:58:31,215.215 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:58:31,216.216 INFO    ] No update needed
[2026-06-27 03:58:31,218.218 INFO    ] Checking for camera pi updates...
[2026-06-27 03:58:31,239.239 INFO    ] 200
[2026-06-27 03:58:31,240.240 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:58:31,266.266 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:58:31,290.290 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:58:31,291.291 INFO    ] No camera update needed
[2026-06-27 03:58:31,293.293 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:58:31,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:58:31,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:58:31,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:58:33,334.334 INFO    ] ================================================
[2026-06-27 03:58:33,349.349 INFO    ] Launching Daemon at Sat Jun 27 03:58:33 IST 2026
[2026-06-27 03:58:33,359.359 INFO    ] ================================================
[2026-06-27 03:58:33,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:58:33
[2026-06-27 03:58:34,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:58:34,147.147 INFO    ] Initializing speech engine...
[2026-06-27 03:58:34,154.154 INFO    ] 2026-06-27 03:58:34
[2026-06-27 03:58:34,368.368 INFO    ] 2026-06-27 03:58:34
[2026-06-27 03:58:34,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:58:34,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:58:34,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:58:34,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:58:34,768.768 INFO    ] time= 27/06/2026 03:58:34
[2026-06-27 03:58:34,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:58:34,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:58:34,915.915 INFO    ] No existing commands found in stream
[2026-06-27 03:58:39,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:58:39,929.929 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-27 03:58:42,083.083 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 03:58:42,085.085 INFO    ] Checking for system updates...
[2026-06-27 03:58:42,106.106 INFO    ] 200
[2026-06-27 03:58:42,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:58:42,138.138 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:58:42,139.139 INFO    ] No update needed
[2026-06-27 03:58:42,141.141 INFO    ] Checking for camera pi updates...
[2026-06-27 03:58:42,160.160 INFO    ] 200
[2026-06-27 03:58:42,161.161 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:58:42,184.184 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:58:42,331.331 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:58:42,332.332 INFO    ] No camera update needed
[2026-06-27 03:58:42,334.334 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:58:42,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:58:42,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:58:42,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:58:44,381.381 INFO    ] ================================================
[2026-06-27 03:58:44,396.396 INFO    ] Launching Daemon at Sat Jun 27 03:58:44 IST 2026
[2026-06-27 03:58:44,407.407 INFO    ] ================================================
[2026-06-27 03:58:44,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:58:44
[2026-06-27 03:58:45,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:58:45,195.195 INFO    ] Initializing speech engine...
[2026-06-27 03:58:45,200.200 INFO    ] 2026-06-27 03:58:45
[2026-06-27 03:58:45,406.406 INFO    ] 2026-06-27 03:58:45
[2026-06-27 03:58:45,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:58:45,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:58:45,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:58:45,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:58:45,853.853 INFO    ] time= 27/06/2026 03:58:45
[2026-06-27 03:58:45,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:58:45,860.860 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:58:45,927.927 INFO    ] No existing commands found in stream
[2026-06-27 03:58:50,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:58:50,939.939 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-27 03:58:54,973.973 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 03:58:54,975.975 INFO    ] Checking for system updates...
[2026-06-27 03:58:54,995.995 INFO    ] 200
[2026-06-27 03:58:54,997.997 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:58:55,027.027 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:58:55,028.028 INFO    ] No update needed
[2026-06-27 03:58:55,029.029 INFO    ] Checking for camera pi updates...
[2026-06-27 03:58:55,050.050 INFO    ] 200
[2026-06-27 03:58:55,051.051 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:58:55,076.076 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:58:55,116.116 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:58:55,117.117 INFO    ] No camera update needed
[2026-06-27 03:58:55,118.118 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:58:55,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:58:55,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:58:55,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:58:57,166.166 INFO    ] ================================================
[2026-06-27 03:58:57,182.182 INFO    ] Launching Daemon at Sat Jun 27 03:58:57 IST 2026
[2026-06-27 03:58:57,192.192 INFO    ] ================================================
[2026-06-27 03:58:57,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:58:57
[2026-06-27 03:58:57,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:58:58,031.031 INFO    ] Initializing speech engine...
[2026-06-27 03:58:58,040.040 INFO    ] 2026-06-27 03:58:58
[2026-06-27 03:58:58,253.253 INFO    ] 2026-06-27 03:58:58
[2026-06-27 03:58:58,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:58:58,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:58:58,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:58:58,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:58:58,706.706 INFO    ] time= 27/06/2026 03:58:58
[2026-06-27 03:58:58,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:58:58,714.714 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:58:58,781.781 INFO    ] No existing commands found in stream
[2026-06-27 03:59:03,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:59:03,799.799 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-27 03:59:05,138.138 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:59:05,139.139 INFO    ] Checking for system updates...
[2026-06-27 03:59:05,161.161 INFO    ] 200
[2026-06-27 03:59:05,162.162 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:59:05,195.195 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:59:05,196.196 INFO    ] No update needed
[2026-06-27 03:59:05,197.197 INFO    ] Checking for camera pi updates...
[2026-06-27 03:59:05,218.218 INFO    ] 200
[2026-06-27 03:59:05,219.219 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:59:05,243.243 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:59:05,277.277 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 03:59:05,278.278 INFO    ] No camera update needed
[2026-06-27 03:59:05,280.280 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:59:05,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:59:05,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:59:05,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:59:07,326.326 INFO    ] ================================================
[2026-06-27 03:59:07,343.343 INFO    ] Launching Daemon at Sat Jun 27 03:59:07 IST 2026
[2026-06-27 03:59:07,355.355 INFO    ] ================================================
[2026-06-27 03:59:07,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:59:07
[2026-06-27 03:59:08,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:59:08,155.155 INFO    ] Initializing speech engine...
[2026-06-27 03:59:08,163.163 INFO    ] 2026-06-27 03:59:08
[2026-06-27 03:59:08,389.389 INFO    ] 2026-06-27 03:59:08
[2026-06-27 03:59:08,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:59:08,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:59:08,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:59:08,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:59:08,836.836 INFO    ] time= 27/06/2026 03:59:08
[2026-06-27 03:59:08,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:59:08,868.868 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:59:08,940.940 INFO    ] No existing commands found in stream
[2026-06-27 03:59:13,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:59:13,952.952 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-27 03:59:17,327.327 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 03:59:17,328.328 INFO    ] Checking for system updates...
[2026-06-27 03:59:17,349.349 INFO    ] 200
[2026-06-27 03:59:17,351.351 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:59:17,381.381 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:59:17,382.382 INFO    ] No update needed
[2026-06-27 03:59:17,384.384 INFO    ] Checking for camera pi updates...
[2026-06-27 03:59:17,403.403 INFO    ] 200
[2026-06-27 03:59:17,405.405 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:59:17,428.428 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:59:17,465.465 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:59:17,466.466 INFO    ] No camera update needed
[2026-06-27 03:59:17,467.467 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:59:17,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:59:17,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:59:17,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:59:19,513.513 INFO    ] ================================================
[2026-06-27 03:59:19,529.529 INFO    ] Launching Daemon at Sat Jun 27 03:59:19 IST 2026
[2026-06-27 03:59:19,539.539 INFO    ] ================================================
[2026-06-27 03:59:19,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:59:19
[2026-06-27 03:59:20,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:59:20,332.332 INFO    ] Initializing speech engine...
[2026-06-27 03:59:20,337.337 INFO    ] 2026-06-27 03:59:20
[2026-06-27 03:59:20,541.541 INFO    ] 2026-06-27 03:59:20
[2026-06-27 03:59:20,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:59:20,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:59:20,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:59:20,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:59:20,982.982 INFO    ] time= 27/06/2026 03:59:20
[2026-06-27 03:59:20,984.984 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:59:20,989.989 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:59:21,056.056 INFO    ] No existing commands found in stream
[2026-06-27 03:59:26,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:59:26,073.073 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-27 03:59:26,825.825 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 03:59:26,827.827 INFO    ] Checking for system updates...
[2026-06-27 03:59:26,849.849 INFO    ] 200
[2026-06-27 03:59:26,850.850 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:59:26,881.881 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:59:26,882.882 INFO    ] No update needed
[2026-06-27 03:59:26,884.884 INFO    ] Checking for camera pi updates...
[2026-06-27 03:59:26,903.903 INFO    ] 200
[2026-06-27 03:59:26,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:59:26,928.928 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:59:26,963.963 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:59:26,965.965 INFO    ] No camera update needed
[2026-06-27 03:59:26,966.966 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:59:26,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:59:26,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:59:26,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:59:29,011.011 INFO    ] ================================================
[2026-06-27 03:59:29,027.027 INFO    ] Launching Daemon at Sat Jun 27 03:59:29 IST 2026
[2026-06-27 03:59:29,037.037 INFO    ] ================================================
[2026-06-27 03:59:29,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:59:29
[2026-06-27 03:59:29,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:59:29,865.865 INFO    ] Initializing speech engine...
[2026-06-27 03:59:29,870.870 INFO    ] 2026-06-27 03:59:29
[2026-06-27 03:59:30,075.075 INFO    ] 2026-06-27 03:59:30
[2026-06-27 03:59:30,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:59:30,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:59:30,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:59:30,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:59:30,493.493 INFO    ] time= 27/06/2026 03:59:30
[2026-06-27 03:59:30,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:59:30,522.522 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:59:30,589.589 INFO    ] No existing commands found in stream
[2026-06-27 03:59:35,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:59:35,606.606 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-27 03:59:36,220.220 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 03:59:36,222.222 INFO    ] Checking for system updates...
[2026-06-27 03:59:36,242.242 INFO    ] 200
[2026-06-27 03:59:36,244.244 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:59:36,276.276 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:59:36,278.278 INFO    ] No update needed
[2026-06-27 03:59:36,279.279 INFO    ] Checking for camera pi updates...
[2026-06-27 03:59:36,298.298 INFO    ] 200
[2026-06-27 03:59:36,299.299 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:59:36,323.323 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:59:36,363.363 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:59:36,364.364 INFO    ] No camera update needed
[2026-06-27 03:59:36,365.365 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:59:36,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:59:36,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:59:36,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:59:38,413.413 INFO    ] ================================================
[2026-06-27 03:59:38,428.428 INFO    ] Launching Daemon at Sat Jun 27 03:59:38 IST 2026
[2026-06-27 03:59:38,438.438 INFO    ] ================================================
[2026-06-27 03:59:38,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:59:38
[2026-06-27 03:59:39,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:59:39,257.257 INFO    ] Initializing speech engine...
[2026-06-27 03:59:39,262.262 INFO    ] 2026-06-27 03:59:39
[2026-06-27 03:59:39,467.467 INFO    ] 2026-06-27 03:59:39
[2026-06-27 03:59:39,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:59:39,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:59:39,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:59:39,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:59:39,887.887 INFO    ] time= 27/06/2026 03:59:39
[2026-06-27 03:59:39,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:59:39,915.915 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:59:39,983.983 INFO    ] No existing commands found in stream
[2026-06-27 03:59:44,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:59:44,995.995 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-27 03:59:45,898.898 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 03:59:45,899.899 INFO    ] Checking for system updates...
[2026-06-27 03:59:45,920.920 INFO    ] 200
[2026-06-27 03:59:45,921.921 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:59:45,952.952 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:59:45,953.953 INFO    ] No update needed
[2026-06-27 03:59:45,954.954 INFO    ] Checking for camera pi updates...
[2026-06-27 03:59:45,974.974 INFO    ] 200
[2026-06-27 03:59:45,976.976 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:59:46,002.002 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:59:46,040.040 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:59:46,041.041 INFO    ] No camera update needed
[2026-06-27 03:59:46,042.042 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:59:46,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:59:46,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:59:46,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:59:48,092.092 INFO    ] ================================================
[2026-06-27 03:59:48,107.107 INFO    ] Launching Daemon at Sat Jun 27 03:59:48 IST 2026
[2026-06-27 03:59:48,118.118 INFO    ] ================================================
[2026-06-27 03:59:48,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:59:48
[2026-06-27 03:59:48,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:59:48,968.968 INFO    ] Initializing speech engine...
[2026-06-27 03:59:48,973.973 INFO    ] 2026-06-27 03:59:48
[2026-06-27 03:59:49,184.184 INFO    ] 2026-06-27 03:59:49
[2026-06-27 03:59:49,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:59:49,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:59:49,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:59:49,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 03:59:49,599.599 INFO    ] time= 27/06/2026 03:59:49
[2026-06-27 03:59:49,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 03:59:49,644.644 INFO    ] Checking for existing commands in stream...
[2026-06-27 03:59:49,713.713 INFO    ] No existing commands found in stream
[2026-06-27 03:59:54,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 03:59:54,725.725 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-27 03:59:56,341.341 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 03:59:56,343.343 INFO    ] Checking for system updates...
[2026-06-27 03:59:56,364.364 INFO    ] 200
[2026-06-27 03:59:56,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:59:56,397.397 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:59:56,398.398 INFO    ] No update needed
[2026-06-27 03:59:56,399.399 INFO    ] Checking for camera pi updates...
[2026-06-27 03:59:56,419.419 INFO    ] 200
[2026-06-27 03:59:56,421.421 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 03:59:56,451.451 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 03:59:56,498.498 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 03:59:56,499.499 INFO    ] No camera update needed
[2026-06-27 03:59:56,501.501 INFO    ] Script finished. Safe exiting...
[2026-06-27 03:59:56,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 03:59:56,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 03:59:56,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 03:59:58,547.547 INFO    ] ================================================
[2026-06-27 03:59:58,562.562 INFO    ] Launching Daemon at Sat Jun 27 03:59:58 IST 2026
[2026-06-27 03:59:58,573.573 INFO    ] ================================================
[2026-06-27 03:59:58,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 03:59:58
[2026-06-27 03:59:59,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 03:59:59,428.428 INFO    ] Initializing speech engine...
[2026-06-27 03:59:59,433.433 INFO    ] 2026-06-27 03:59:59
[2026-06-27 03:59:59,637.637 INFO    ] 2026-06-27 03:59:59
[2026-06-27 03:59:59,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 03:59:59,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 03:59:59,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 03:59:59,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:00:00,051.051 INFO    ] time= 27/06/2026 03:59:59
[2026-06-27 04:00:00,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:00:00,085.085 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:00:00,150.150 INFO    ] No existing commands found in stream
[2026-06-27 04:00:05,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:00:05,163.163 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-27 04:00:08,103.103 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:00:08,106.106 INFO    ] Checking for system updates...
[2026-06-27 04:00:08,142.142 INFO    ] 200
[2026-06-27 04:00:08,145.145 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:00:08,200.200 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:00:08,203.203 INFO    ] No update needed
[2026-06-27 04:00:08,206.206 INFO    ] Checking for camera pi updates...
[2026-06-27 04:00:08,238.238 INFO    ] 200
[2026-06-27 04:00:08,239.239 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:00:08,267.267 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:00:08,288.288 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:00:08,289.289 INFO    ] No camera update needed
[2026-06-27 04:00:08,291.291 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:00:08,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:00:08,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:00:08,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:00:10,340.340 INFO    ] ================================================
[2026-06-27 04:00:10,356.356 INFO    ] Launching Daemon at Sat Jun 27 04:00:10 IST 2026
[2026-06-27 04:00:10,366.366 INFO    ] ================================================
[2026-06-27 04:00:10,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:00:10
[2026-06-27 04:00:11,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:00:11,180.180 INFO    ] Initializing speech engine...
[2026-06-27 04:00:11,194.194 INFO    ] 2026-06-27 04:00:11
[2026-06-27 04:00:11,398.398 INFO    ] 2026-06-27 04:00:11
[2026-06-27 04:00:11,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:00:11,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:00:11,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:00:11,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:00:11,819.819 INFO    ] time= 27/06/2026 04:00:11
[2026-06-27 04:00:11,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:00:11,846.846 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:00:11,913.913 INFO    ] No existing commands found in stream
[2026-06-27 04:00:16,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:00:16,922.922 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-27 04:00:18,257.257 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:00:18,259.259 INFO    ] Checking for system updates...
[2026-06-27 04:00:18,279.279 INFO    ] 200
[2026-06-27 04:00:18,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:00:18,311.311 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:00:18,312.312 INFO    ] No update needed
[2026-06-27 04:00:18,313.313 INFO    ] Checking for camera pi updates...
[2026-06-27 04:00:18,334.334 INFO    ] 200
[2026-06-27 04:00:18,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:00:18,360.360 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:00:18,397.397 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:00:18,398.398 INFO    ] No camera update needed
[2026-06-27 04:00:18,419.419 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:00:18,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:00:18,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:00:18,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:00:20,467.467 INFO    ] ================================================
[2026-06-27 04:00:20,482.482 INFO    ] Launching Daemon at Sat Jun 27 04:00:20 IST 2026
[2026-06-27 04:00:20,493.493 INFO    ] ================================================
[2026-06-27 04:00:20,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:00:20
[2026-06-27 04:00:21,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:00:21,267.267 INFO    ] Initializing speech engine...
[2026-06-27 04:00:21,277.277 INFO    ] 2026-06-27 04:00:21
[2026-06-27 04:00:21,482.482 INFO    ] 2026-06-27 04:00:21
[2026-06-27 04:00:21,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:00:21,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:00:21,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:00:21,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:00:21,900.900 INFO    ] time= 27/06/2026 04:00:21
[2026-06-27 04:00:21,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:00:21,931.931 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:00:21,996.996 INFO    ] No existing commands found in stream
[2026-06-27 04:00:27,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:00:27,009.009 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-27 04:00:28,466.466 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:00:28,467.467 INFO    ] Checking for system updates...
[2026-06-27 04:00:28,489.489 INFO    ] 200
[2026-06-27 04:00:28,490.490 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:00:28,520.520 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:00:28,524.524 INFO    ] No update needed
[2026-06-27 04:00:28,525.525 INFO    ] Checking for camera pi updates...
[2026-06-27 04:00:28,545.545 INFO    ] 200
[2026-06-27 04:00:28,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:00:28,570.570 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:00:28,609.609 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:00:28,610.610 INFO    ] No camera update needed
[2026-06-27 04:00:28,611.611 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:00:28,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:00:28,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:00:28,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:00:30,657.657 INFO    ] ================================================
[2026-06-27 04:00:30,672.672 INFO    ] Launching Daemon at Sat Jun 27 04:00:30 IST 2026
[2026-06-27 04:00:30,683.683 INFO    ] ================================================
[2026-06-27 04:00:31,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:00:31
[2026-06-27 04:00:31,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:00:31,486.486 INFO    ] Initializing speech engine...
[2026-06-27 04:00:31,490.490 INFO    ] 2026-06-27 04:00:31
[2026-06-27 04:00:31,696.696 INFO    ] 2026-06-27 04:00:31
[2026-06-27 04:00:31,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:00:31,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:00:31,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:00:32,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:00:32,180.180 INFO    ] time= 27/06/2026 04:00:32
[2026-06-27 04:00:32,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:00:32,188.188 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:00:32,258.258 INFO    ] No existing commands found in stream
[2026-06-27 04:00:37,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:00:37,279.279 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-27 04:00:38,299.299 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:00:38,300.300 INFO    ] Checking for system updates...
[2026-06-27 04:00:38,321.321 INFO    ] 200
[2026-06-27 04:00:38,322.322 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:00:38,353.353 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:00:38,354.354 INFO    ] No update needed
[2026-06-27 04:00:38,356.356 INFO    ] Checking for camera pi updates...
[2026-06-27 04:00:38,376.376 INFO    ] 200
[2026-06-27 04:00:38,378.378 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:00:38,403.403 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:00:38,456.456 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:00:38,457.457 INFO    ] No camera update needed
[2026-06-27 04:00:38,458.458 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:00:38,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:00:38,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:00:38,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:00:40,506.506 INFO    ] ================================================
[2026-06-27 04:00:40,521.521 INFO    ] Launching Daemon at Sat Jun 27 04:00:40 IST 2026
[2026-06-27 04:00:40,532.532 INFO    ] ================================================
[2026-06-27 04:00:40,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:00:40
[2026-06-27 04:00:41,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:00:41,358.358 INFO    ] Initializing speech engine...
[2026-06-27 04:00:41,363.363 INFO    ] 2026-06-27 04:00:41
[2026-06-27 04:00:41,567.567 INFO    ] 2026-06-27 04:00:41
[2026-06-27 04:00:41,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:00:41,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:00:41,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:00:41,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:00:42,006.006 INFO    ] time= 27/06/2026 04:00:41
[2026-06-27 04:00:42,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:00:42,013.013 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:00:42,081.081 INFO    ] No existing commands found in stream
[2026-06-27 04:00:47,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:00:47,093.093 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-27 04:00:48,639.639 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:00:48,641.641 INFO    ] Checking for system updates...
[2026-06-27 04:00:48,662.662 INFO    ] 200
[2026-06-27 04:00:48,663.663 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:00:48,694.694 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:00:48,695.695 INFO    ] No update needed
[2026-06-27 04:00:48,696.696 INFO    ] Checking for camera pi updates...
[2026-06-27 04:00:48,717.717 INFO    ] 200
[2026-06-27 04:00:48,719.719 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:00:48,742.742 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:00:48,887.887 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:00:48,888.888 INFO    ] No camera update needed
[2026-06-27 04:00:48,890.890 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:00:48,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:00:48,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:00:48,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:00:50,936.936 INFO    ] ================================================
[2026-06-27 04:00:50,952.952 INFO    ] Launching Daemon at Sat Jun 27 04:00:50 IST 2026
[2026-06-27 04:00:50,962.962 INFO    ] ================================================
[2026-06-27 04:00:51,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:00:51
[2026-06-27 04:00:51,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:00:51,754.754 INFO    ] Initializing speech engine...
[2026-06-27 04:00:51,759.759 INFO    ] 2026-06-27 04:00:51
[2026-06-27 04:00:51,966.966 INFO    ] 2026-06-27 04:00:51
[2026-06-27 04:00:51,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:00:52,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:00:52,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:00:52,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:00:52,388.388 INFO    ] time= 27/06/2026 04:00:52
[2026-06-27 04:00:52,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:00:52,419.419 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:00:52,512.512 INFO    ] No existing commands found in stream
[2026-06-27 04:00:57,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:00:57,524.524 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-27 04:00:58,322.322 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:00:58,323.323 INFO    ] Checking for system updates...
[2026-06-27 04:00:58,344.344 INFO    ] 200
[2026-06-27 04:00:58,346.346 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:00:58,378.378 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:00:58,380.380 INFO    ] No update needed
[2026-06-27 04:00:58,381.381 INFO    ] Checking for camera pi updates...
[2026-06-27 04:00:58,400.400 INFO    ] 200
[2026-06-27 04:00:58,402.402 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:00:58,425.425 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:00:58,449.449 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:00:58,451.451 INFO    ] No camera update needed
[2026-06-27 04:00:58,452.452 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:00:58,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:00:58,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:00:58,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:01:00,497.497 INFO    ] ================================================
[2026-06-27 04:01:00,512.512 INFO    ] Launching Daemon at Sat Jun 27 04:01:00 IST 2026
[2026-06-27 04:01:00,523.523 INFO    ] ================================================
[2026-06-27 04:01:00,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:01:00
[2026-06-27 04:01:01,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:01:01,523.523 INFO    ] Initializing speech engine...
[2026-06-27 04:01:01,528.528 INFO    ] 2026-06-27 04:01:01
[2026-06-27 04:01:01,781.781 INFO    ] 2026-06-27 04:01:01
[2026-06-27 04:01:01,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:01:02,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:01:02,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:01:02,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:01:02,269.269 INFO    ] time= 27/06/2026 04:01:02
[2026-06-27 04:01:02,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:01:02,297.297 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:01:02,366.366 INFO    ] No existing commands found in stream
[2026-06-27 04:01:07,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:01:07,388.388 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-27 04:01:10,926.926 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:01:10,928.928 INFO    ] Checking for system updates...
[2026-06-27 04:01:10,949.949 INFO    ] 200
[2026-06-27 04:01:10,950.950 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:01:10,981.981 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:01:10,983.983 INFO    ] No update needed
[2026-06-27 04:01:10,984.984 INFO    ] Checking for camera pi updates...
[2026-06-27 04:01:11,006.006 INFO    ] 200
[2026-06-27 04:01:11,008.008 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:01:11,034.034 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:01:11,075.075 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:01:11,076.076 INFO    ] No camera update needed
[2026-06-27 04:01:11,078.078 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:01:11,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:01:11,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:01:11,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:01:13,126.126 INFO    ] ================================================
[2026-06-27 04:01:13,141.141 INFO    ] Launching Daemon at Sat Jun 27 04:01:13 IST 2026
[2026-06-27 04:01:13,152.152 INFO    ] ================================================
[2026-06-27 04:01:13,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:01:13
[2026-06-27 04:01:13,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:01:13,955.955 INFO    ] Initializing speech engine...
[2026-06-27 04:01:13,965.965 INFO    ] 2026-06-27 04:01:13
[2026-06-27 04:01:14,171.171 INFO    ] 2026-06-27 04:01:14
[2026-06-27 04:01:14,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:01:14,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:01:14,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:01:14,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:01:14,615.615 INFO    ] time= 27/06/2026 04:01:14
[2026-06-27 04:01:14,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:01:14,623.623 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:01:14,690.690 INFO    ] No existing commands found in stream
[2026-06-27 04:01:19,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:01:19,702.702 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-27 04:01:21,894.894 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:01:21,896.896 INFO    ] Checking for system updates...
[2026-06-27 04:01:21,916.916 INFO    ] 200
[2026-06-27 04:01:21,918.918 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:01:21,948.948 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:01:21,950.950 INFO    ] No update needed
[2026-06-27 04:01:21,951.951 INFO    ] Checking for camera pi updates...
[2026-06-27 04:01:21,970.970 INFO    ] 200
[2026-06-27 04:01:21,972.972 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:01:21,997.997 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:01:22,036.036 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:01:22,037.037 INFO    ] No camera update needed
[2026-06-27 04:01:22,038.038 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:01:22,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:01:22,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:01:22,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:01:24,085.085 INFO    ] ================================================
[2026-06-27 04:01:24,100.100 INFO    ] Launching Daemon at Sat Jun 27 04:01:24 IST 2026
[2026-06-27 04:01:24,112.112 INFO    ] ================================================
[2026-06-27 04:01:24,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:01:24
[2026-06-27 04:01:24,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:01:24,908.908 INFO    ] Initializing speech engine...
[2026-06-27 04:01:24,916.916 INFO    ] 2026-06-27 04:01:24
[2026-06-27 04:01:25,124.124 INFO    ] 2026-06-27 04:01:25
[2026-06-27 04:01:25,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:01:25,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:01:25,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:01:25,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:01:25,550.550 INFO    ] time= 27/06/2026 04:01:25
[2026-06-27 04:01:25,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:01:25,578.578 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:01:25,646.646 INFO    ] No existing commands found in stream
[2026-06-27 04:01:30,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:01:30,662.662 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-27 04:01:34,710.710 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:01:34,711.711 INFO    ] Checking for system updates...
[2026-06-27 04:01:34,732.732 INFO    ] 200
[2026-06-27 04:01:34,733.733 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:01:34,767.767 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:01:34,768.768 INFO    ] No update needed
[2026-06-27 04:01:34,769.769 INFO    ] Checking for camera pi updates...
[2026-06-27 04:01:34,790.790 INFO    ] 200
[2026-06-27 04:01:34,791.791 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:01:34,815.815 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:01:34,860.860 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:01:34,862.862 INFO    ] No camera update needed
[2026-06-27 04:01:34,863.863 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:01:34,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:01:34,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:01:34,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:01:36,909.909 INFO    ] ================================================
[2026-06-27 04:01:36,925.925 INFO    ] Launching Daemon at Sat Jun 27 04:01:36 IST 2026
[2026-06-27 04:01:36,936.936 INFO    ] ================================================
[2026-06-27 04:01:37,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:01:37
[2026-06-27 04:01:37,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:01:37,797.797 INFO    ] Initializing speech engine...
[2026-06-27 04:01:37,801.801 INFO    ] 2026-06-27 04:01:37
[2026-06-27 04:01:38,008.008 INFO    ] 2026-06-27 04:01:37
[2026-06-27 04:01:38,037.037 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:01:38,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:01:38,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:01:38,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:01:38,449.449 INFO    ] time= 27/06/2026 04:01:38
[2026-06-27 04:01:38,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:01:38,457.457 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:01:38,524.524 INFO    ] No existing commands found in stream
[2026-06-27 04:01:43,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:01:43,555.555 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-27 04:01:45,733.733 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:01:45,735.735 INFO    ] Checking for system updates...
[2026-06-27 04:01:45,756.756 INFO    ] 200
[2026-06-27 04:01:45,757.757 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:01:45,790.790 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:01:45,792.792 INFO    ] No update needed
[2026-06-27 04:01:45,793.793 INFO    ] Checking for camera pi updates...
[2026-06-27 04:01:45,816.816 INFO    ] 200
[2026-06-27 04:01:45,817.817 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:01:45,841.841 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:01:45,886.886 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:01:45,888.888 INFO    ] No camera update needed
[2026-06-27 04:01:45,889.889 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:01:45,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:01:45,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:01:45,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:01:47,938.938 INFO    ] ================================================
[2026-06-27 04:01:47,953.953 INFO    ] Launching Daemon at Sat Jun 27 04:01:47 IST 2026
[2026-06-27 04:01:47,964.964 INFO    ] ================================================
[2026-06-27 04:01:48,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:01:48
[2026-06-27 04:01:48,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:01:48,817.817 INFO    ] Initializing speech engine...
[2026-06-27 04:01:48,824.824 INFO    ] 2026-06-27 04:01:48
[2026-06-27 04:01:49,020.020 INFO    ] 2026-06-27 04:01:49
[2026-06-27 04:01:49,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:01:49,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:01:49,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:01:49,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:01:49,464.464 INFO    ] time= 27/06/2026 04:01:49
[2026-06-27 04:01:49,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:01:49,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:01:49,641.641 INFO    ] No existing commands found in stream
[2026-06-27 04:01:54,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:01:54,656.656 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-27 04:01:58,469.469 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 04:01:58,470.470 INFO    ] Checking for system updates...
[2026-06-27 04:01:58,492.492 INFO    ] 200
[2026-06-27 04:01:58,494.494 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:01:58,527.527 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:01:58,529.529 INFO    ] No update needed
[2026-06-27 04:01:58,530.530 INFO    ] Checking for camera pi updates...
[2026-06-27 04:01:58,551.551 INFO    ] 200
[2026-06-27 04:01:58,552.552 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:01:58,576.576 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:01:58,615.615 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:01:58,616.616 INFO    ] No camera update needed
[2026-06-27 04:01:58,617.617 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:01:58,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:01:58,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:01:58,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:02:00,662.662 INFO    ] ================================================
[2026-06-27 04:02:00,678.678 INFO    ] Launching Daemon at Sat Jun 27 04:02:00 IST 2026
[2026-06-27 04:02:00,689.689 INFO    ] ================================================
[2026-06-27 04:02:01,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:02:01
[2026-06-27 04:02:01,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:02:01,681.681 INFO    ] Initializing speech engine...
[2026-06-27 04:02:01,689.689 INFO    ] 2026-06-27 04:02:01
[2026-06-27 04:02:01,946.946 INFO    ] 2026-06-27 04:02:01
[2026-06-27 04:02:01,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:02:02,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:02:02,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:02:02,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:02:02,461.461 INFO    ] time= 27/06/2026 04:02:02
[2026-06-27 04:02:02,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:02:02,469.469 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:02:02,536.536 INFO    ] No existing commands found in stream
[2026-06-27 04:02:07,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:02:07,549.549 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-27 04:02:08,832.832 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 04:02:08,838.838 INFO    ] Checking for system updates...
[2026-06-27 04:02:08,866.866 INFO    ] 200
[2026-06-27 04:02:08,868.868 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:02:08,901.901 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:02:08,902.902 INFO    ] No update needed
[2026-06-27 04:02:08,904.904 INFO    ] Checking for camera pi updates...
[2026-06-27 04:02:08,924.924 INFO    ] 200
[2026-06-27 04:02:08,925.925 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:02:08,948.948 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:02:08,989.989 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:02:08,991.991 INFO    ] No camera update needed
[2026-06-27 04:02:08,992.992 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:02:08,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:02:08,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:02:08,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:02:11,037.037 INFO    ] ================================================
[2026-06-27 04:02:11,052.052 INFO    ] Launching Daemon at Sat Jun 27 04:02:11 IST 2026
[2026-06-27 04:02:11,064.064 INFO    ] ================================================
[2026-06-27 04:02:11,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:02:11
[2026-06-27 04:02:11,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:02:11,952.952 INFO    ] Initializing speech engine...
[2026-06-27 04:02:11,957.957 INFO    ] 2026-06-27 04:02:11
[2026-06-27 04:02:12,165.165 INFO    ] 2026-06-27 04:02:12
[2026-06-27 04:02:12,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:02:12,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:02:12,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:02:12,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:02:12,621.621 INFO    ] time= 27/06/2026 04:02:12
[2026-06-27 04:02:12,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:02:12,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:02:12,700.700 INFO    ] No existing commands found in stream
[2026-06-27 04:02:17,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:02:17,723.723 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-27 04:02:19,381.381 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 04:02:19,383.383 INFO    ] Checking for system updates...
[2026-06-27 04:02:19,407.407 INFO    ] 200
[2026-06-27 04:02:19,408.408 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:02:19,439.439 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:02:19,441.441 INFO    ] No update needed
[2026-06-27 04:02:19,442.442 INFO    ] Checking for camera pi updates...
[2026-06-27 04:02:19,465.465 INFO    ] 200
[2026-06-27 04:02:19,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:02:19,492.492 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:02:19,537.537 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:02:19,539.539 INFO    ] No camera update needed
[2026-06-27 04:02:19,540.540 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:02:19,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:02:19,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:02:19,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:02:21,586.586 INFO    ] ================================================
[2026-06-27 04:02:21,602.602 INFO    ] Launching Daemon at Sat Jun 27 04:02:21 IST 2026
[2026-06-27 04:02:21,615.615 INFO    ] ================================================
[2026-06-27 04:02:21,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:02:21
[2026-06-27 04:02:22,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:02:22,391.391 INFO    ] Initializing speech engine...
[2026-06-27 04:02:22,401.401 INFO    ] 2026-06-27 04:02:22
[2026-06-27 04:02:22,607.607 INFO    ] 2026-06-27 04:02:22
[2026-06-27 04:02:22,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:02:22,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:02:22,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:02:22,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:02:23,035.035 INFO    ] time= 27/06/2026 04:02:22
[2026-06-27 04:02:23,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:02:23,065.065 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:02:23,134.134 INFO    ] No existing commands found in stream
[2026-06-27 04:02:28,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:02:28,146.146 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-27 04:02:30,889.889 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 04:02:30,890.890 INFO    ] Checking for system updates...
[2026-06-27 04:02:30,911.911 INFO    ] 200
[2026-06-27 04:02:30,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:02:30,943.943 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:02:30,945.945 INFO    ] No update needed
[2026-06-27 04:02:30,946.946 INFO    ] Checking for camera pi updates...
[2026-06-27 04:02:30,966.966 INFO    ] 200
[2026-06-27 04:02:30,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:02:30,990.990 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:02:31,036.036 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:02:31,038.038 INFO    ] No camera update needed
[2026-06-27 04:02:31,039.039 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:02:31,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:02:31,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:02:31,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:02:33,079.079 INFO    ] ================================================
[2026-06-27 04:02:33,095.095 INFO    ] Launching Daemon at Sat Jun 27 04:02:33 IST 2026
[2026-06-27 04:02:33,107.107 INFO    ] ================================================
[2026-06-27 04:02:33,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:02:33
[2026-06-27 04:02:33,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:02:33,923.923 INFO    ] Initializing speech engine...
[2026-06-27 04:02:33,928.928 INFO    ] 2026-06-27 04:02:33
[2026-06-27 04:02:34,136.136 INFO    ] 2026-06-27 04:02:34
[2026-06-27 04:02:34,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:02:34,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:02:34,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:02:34,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:02:34,574.574 INFO    ] time= 27/06/2026 04:02:34
[2026-06-27 04:02:34,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:02:34,581.581 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:02:34,648.648 INFO    ] No existing commands found in stream
[2026-06-27 04:02:39,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:02:39,665.665 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-27 04:02:42,527.527 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:02:42,529.529 INFO    ] Checking for system updates...
[2026-06-27 04:02:42,551.551 INFO    ] 200
[2026-06-27 04:02:42,552.552 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:02:42,583.583 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:02:42,584.584 INFO    ] No update needed
[2026-06-27 04:02:42,585.585 INFO    ] Checking for camera pi updates...
[2026-06-27 04:02:42,605.605 INFO    ] 200
[2026-06-27 04:02:42,606.606 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:02:42,629.629 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:02:42,653.653 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:02:42,655.655 INFO    ] No camera update needed
[2026-06-27 04:02:42,656.656 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:02:42,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:02:42,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:02:42,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:02:44,705.705 INFO    ] ================================================
[2026-06-27 04:02:44,721.721 INFO    ] Launching Daemon at Sat Jun 27 04:02:44 IST 2026
[2026-06-27 04:02:44,732.732 INFO    ] ================================================
[2026-06-27 04:02:45,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:02:45
[2026-06-27 04:02:45,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:02:45,571.571 INFO    ] Initializing speech engine...
[2026-06-27 04:02:45,576.576 INFO    ] 2026-06-27 04:02:45
[2026-06-27 04:02:45,779.779 INFO    ] 2026-06-27 04:02:45
[2026-06-27 04:02:45,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:02:45,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:02:46,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:02:46,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:02:46,199.199 INFO    ] time= 27/06/2026 04:02:46
[2026-06-27 04:02:46,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:02:46,227.227 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:02:46,292.292 INFO    ] No existing commands found in stream
[2026-06-27 04:02:51,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:02:51,306.306 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-27 04:02:53,071.071 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 04:02:53,072.072 INFO    ] Checking for system updates...
[2026-06-27 04:02:53,093.093 INFO    ] 200
[2026-06-27 04:02:53,095.095 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:02:53,127.127 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:02:53,128.128 INFO    ] No update needed
[2026-06-27 04:02:53,130.130 INFO    ] Checking for camera pi updates...
[2026-06-27 04:02:53,150.150 INFO    ] 200
[2026-06-27 04:02:53,152.152 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:02:53,175.175 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:02:53,307.307 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:02:53,308.308 INFO    ] No camera update needed
[2026-06-27 04:02:53,309.309 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:02:53,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:02:53,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:02:53,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:02:55,357.357 INFO    ] ================================================
[2026-06-27 04:02:55,372.372 INFO    ] Launching Daemon at Sat Jun 27 04:02:55 IST 2026
[2026-06-27 04:02:55,384.384 INFO    ] ================================================
[2026-06-27 04:02:55,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:02:55
[2026-06-27 04:02:56,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:02:56,233.233 INFO    ] Initializing speech engine...
[2026-06-27 04:02:56,239.239 INFO    ] 2026-06-27 04:02:56
[2026-06-27 04:02:56,449.449 INFO    ] 2026-06-27 04:02:56
[2026-06-27 04:02:56,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:02:56,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:02:56,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:02:56,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:02:56,884.884 INFO    ] time= 27/06/2026 04:02:56
[2026-06-27 04:02:56,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:02:56,914.914 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:02:56,980.980 INFO    ] No existing commands found in stream
[2026-06-27 04:03:01,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:03:01,993.993 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-27 04:03:05,032.032 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 04:03:05,034.034 INFO    ] Checking for system updates...
[2026-06-27 04:03:05,055.055 INFO    ] 200
[2026-06-27 04:03:05,056.056 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:03:05,087.087 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:03:05,089.089 INFO    ] No update needed
[2026-06-27 04:03:05,090.090 INFO    ] Checking for camera pi updates...
[2026-06-27 04:03:05,111.111 INFO    ] 200
[2026-06-27 04:03:05,112.112 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:03:05,137.137 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:03:05,163.163 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:03:05,165.165 INFO    ] No camera update needed
[2026-06-27 04:03:05,166.166 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:03:05,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:03:05,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:03:05,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:03:07,206.206 INFO    ] ================================================
[2026-06-27 04:03:07,215.215 INFO    ] Launching Daemon at Sat Jun 27 04:03:07 IST 2026
[2026-06-27 04:03:07,221.221 INFO    ] ================================================
[2026-06-27 04:03:07,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:03:07
[2026-06-27 04:03:07,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:03:08,030.030 INFO    ] Initializing speech engine...
[2026-06-27 04:03:08,035.035 INFO    ] 2026-06-27 04:03:08
[2026-06-27 04:03:08,242.242 INFO    ] 2026-06-27 04:03:08
[2026-06-27 04:03:08,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:03:08,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:03:08,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:03:08,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:03:08,683.683 INFO    ] time= 27/06/2026 04:03:08
[2026-06-27 04:03:08,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:03:08,691.691 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:03:08,758.758 INFO    ] No existing commands found in stream
[2026-06-27 04:03:13,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:03:13,780.780 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-27 04:03:17,093.093 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:03:17,094.094 INFO    ] Checking for system updates...
[2026-06-27 04:03:17,116.116 INFO    ] 200
[2026-06-27 04:03:17,117.117 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:03:17,150.150 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:03:17,151.151 INFO    ] No update needed
[2026-06-27 04:03:17,152.152 INFO    ] Checking for camera pi updates...
[2026-06-27 04:03:17,176.176 INFO    ] 200
[2026-06-27 04:03:17,177.177 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:03:17,201.201 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:03:17,248.248 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:03:17,249.249 INFO    ] No camera update needed
[2026-06-27 04:03:17,250.250 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:03:17,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:03:17,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:03:17,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:03:19,290.290 INFO    ] ================================================
[2026-06-27 04:03:19,298.298 INFO    ] Launching Daemon at Sat Jun 27 04:03:19 IST 2026
[2026-06-27 04:03:19,305.305 INFO    ] ================================================
[2026-06-27 04:03:19,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:03:19
[2026-06-27 04:03:19,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:03:20,129.129 INFO    ] Initializing speech engine...
[2026-06-27 04:03:20,136.136 INFO    ] 2026-06-27 04:03:20
[2026-06-27 04:03:20,330.330 INFO    ] 2026-06-27 04:03:20
[2026-06-27 04:03:20,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:03:20,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:03:20,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:03:20,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:03:20,815.815 INFO    ] time= 27/06/2026 04:03:20
[2026-06-27 04:03:20,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:03:20,845.845 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:03:20,912.912 INFO    ] No existing commands found in stream
[2026-06-27 04:03:25,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:03:25,924.924 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-27 04:03:28,029.029 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 04:03:28,031.031 INFO    ] Checking for system updates...
[2026-06-27 04:03:28,052.052 INFO    ] 200
[2026-06-27 04:03:28,054.054 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:03:28,084.084 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:03:28,086.086 INFO    ] No update needed
[2026-06-27 04:03:28,087.087 INFO    ] Checking for camera pi updates...
[2026-06-27 04:03:28,108.108 INFO    ] 200
[2026-06-27 04:03:28,110.110 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:03:28,136.136 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:03:28,166.166 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:03:28,167.167 INFO    ] No camera update needed
[2026-06-27 04:03:28,169.169 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:03:28,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:03:28,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:03:28,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:03:30,220.220 INFO    ] ================================================
[2026-06-27 04:03:30,236.236 INFO    ] Launching Daemon at Sat Jun 27 04:03:30 IST 2026
[2026-06-27 04:03:30,248.248 INFO    ] ================================================
[2026-06-27 04:03:30,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:03:30
[2026-06-27 04:03:30,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:03:31,037.037 INFO    ] Initializing speech engine...
[2026-06-27 04:03:31,048.048 INFO    ] 2026-06-27 04:03:31
[2026-06-27 04:03:31,250.250 INFO    ] 2026-06-27 04:03:31
[2026-06-27 04:03:31,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:03:31,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:03:31,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:03:31,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:03:31,701.701 INFO    ] time= 27/06/2026 04:03:31
[2026-06-27 04:03:31,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:03:31,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:03:31,771.771 INFO    ] No existing commands found in stream
[2026-06-27 04:03:36,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:03:36,783.783 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-27 04:03:37,562.562 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 04:03:37,564.564 INFO    ] Checking for system updates...
[2026-06-27 04:03:37,585.585 INFO    ] 200
[2026-06-27 04:03:37,586.586 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:03:37,617.617 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:03:37,618.618 INFO    ] No update needed
[2026-06-27 04:03:37,620.620 INFO    ] Checking for camera pi updates...
[2026-06-27 04:03:37,639.639 INFO    ] 200
[2026-06-27 04:03:37,641.641 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:03:37,666.666 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:03:37,714.714 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:03:37,716.716 INFO    ] No camera update needed
[2026-06-27 04:03:37,717.717 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:03:37,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:03:37,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:03:37,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:03:39,765.765 INFO    ] ================================================
[2026-06-27 04:03:39,780.780 INFO    ] Launching Daemon at Sat Jun 27 04:03:39 IST 2026
[2026-06-27 04:03:39,792.792 INFO    ] ================================================
[2026-06-27 04:03:40,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:03:40
[2026-06-27 04:03:40,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:03:40,661.661 INFO    ] Initializing speech engine...
[2026-06-27 04:03:40,665.665 INFO    ] 2026-06-27 04:03:40
[2026-06-27 04:03:40,872.872 INFO    ] 2026-06-27 04:03:40
[2026-06-27 04:03:40,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:03:41,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:03:41,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:03:41,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:03:41,289.289 INFO    ] time= 27/06/2026 04:03:41
[2026-06-27 04:03:41,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:03:41,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:03:41,442.442 INFO    ] No existing commands found in stream
[2026-06-27 04:03:46,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:03:46,457.457 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-27 04:03:50,002.002 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 04:03:50,004.004 INFO    ] Checking for system updates...
[2026-06-27 04:03:50,025.025 INFO    ] 200
[2026-06-27 04:03:50,027.027 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:03:50,058.058 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:03:50,059.059 INFO    ] No update needed
[2026-06-27 04:03:50,061.061 INFO    ] Checking for camera pi updates...
[2026-06-27 04:03:50,081.081 INFO    ] 200
[2026-06-27 04:03:50,082.082 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:03:50,106.106 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:03:50,132.132 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:03:50,133.133 INFO    ] No camera update needed
[2026-06-27 04:03:50,135.135 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:03:50,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:03:50,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:03:50,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:03:52,183.183 INFO    ] ================================================
[2026-06-27 04:03:52,199.199 INFO    ] Launching Daemon at Sat Jun 27 04:03:52 IST 2026
[2026-06-27 04:03:52,210.210 INFO    ] ================================================
[2026-06-27 04:03:52,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:03:52
[2026-06-27 04:03:52,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:03:53,000.000 INFO    ] Initializing speech engine...
[2026-06-27 04:03:53,012.012 INFO    ] 2026-06-27 04:03:53
[2026-06-27 04:03:53,221.221 INFO    ] 2026-06-27 04:03:53
[2026-06-27 04:03:53,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:03:53,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:03:53,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:03:53,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:03:53,642.642 INFO    ] time= 27/06/2026 04:03:53
[2026-06-27 04:03:53,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:03:53,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:03:53,735.735 INFO    ] No existing commands found in stream
[2026-06-27 04:03:58,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:03:58,747.747 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-27 04:03:59,510.510 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 04:03:59,512.512 INFO    ] Checking for system updates...
[2026-06-27 04:03:59,533.533 INFO    ] 200
[2026-06-27 04:03:59,534.534 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:03:59,567.567 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:03:59,568.568 INFO    ] No update needed
[2026-06-27 04:03:59,570.570 INFO    ] Checking for camera pi updates...
[2026-06-27 04:03:59,589.589 INFO    ] 200
[2026-06-27 04:03:59,590.590 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:03:59,613.613 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:03:59,651.651 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:03:59,652.652 INFO    ] No camera update needed
[2026-06-27 04:03:59,654.654 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:03:59,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:03:59,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:03:59,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:04:01,702.702 INFO    ] ================================================
[2026-06-27 04:04:01,718.718 INFO    ] Launching Daemon at Sat Jun 27 04:04:01 IST 2026
[2026-06-27 04:04:01,729.729 INFO    ] ================================================
[2026-06-27 04:04:02,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:04:02
[2026-06-27 04:04:02,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:04:02,727.727 INFO    ] Initializing speech engine...
[2026-06-27 04:04:02,732.732 INFO    ] 2026-06-27 04:04:02
[2026-06-27 04:04:02,939.939 INFO    ] 2026-06-27 04:04:02
[2026-06-27 04:04:02,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:04:03,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:04:03,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:04:03,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:04:03,348.348 INFO    ] time= 27/06/2026 04:04:03
[2026-06-27 04:04:03,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:04:03,429.429 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:04:03,527.527 INFO    ] No existing commands found in stream
[2026-06-27 04:04:08,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:04:08,541.541 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-27 04:04:12,284.284 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:04:12,286.286 INFO    ] Checking for system updates...
[2026-06-27 04:04:12,307.307 INFO    ] 200
[2026-06-27 04:04:12,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:04:12,342.342 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:04:12,344.344 INFO    ] No update needed
[2026-06-27 04:04:12,345.345 INFO    ] Checking for camera pi updates...
[2026-06-27 04:04:12,365.365 INFO    ] 200
[2026-06-27 04:04:12,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:04:12,389.389 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:04:12,429.429 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:04:12,431.431 INFO    ] No camera update needed
[2026-06-27 04:04:12,432.432 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:04:12,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:04:12,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:04:12,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:04:14,478.478 INFO    ] ================================================
[2026-06-27 04:04:14,494.494 INFO    ] Launching Daemon at Sat Jun 27 04:04:14 IST 2026
[2026-06-27 04:04:14,506.506 INFO    ] ================================================
[2026-06-27 04:04:14,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:04:14
[2026-06-27 04:04:15,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:04:15,292.292 INFO    ] Initializing speech engine...
[2026-06-27 04:04:15,297.297 INFO    ] 2026-06-27 04:04:15
[2026-06-27 04:04:15,502.502 INFO    ] 2026-06-27 04:04:15
[2026-06-27 04:04:15,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:04:15,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:04:15,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:04:15,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:04:15,946.946 INFO    ] time= 27/06/2026 04:04:15
[2026-06-27 04:04:15,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:04:15,953.953 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:04:16,020.020 INFO    ] No existing commands found in stream
[2026-06-27 04:04:21,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:04:21,033.033 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-27 04:04:21,584.584 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:04:21,586.586 INFO    ] Checking for system updates...
[2026-06-27 04:04:21,606.606 INFO    ] 200
[2026-06-27 04:04:21,608.608 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:04:21,638.638 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:04:21,639.639 INFO    ] No update needed
[2026-06-27 04:04:21,640.640 INFO    ] Checking for camera pi updates...
[2026-06-27 04:04:21,662.662 INFO    ] 200
[2026-06-27 04:04:21,663.663 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:04:21,690.690 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:04:21,729.729 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:04:21,730.730 INFO    ] No camera update needed
[2026-06-27 04:04:21,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:04:21,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:04:21,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:04:21,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:04:23,779.779 INFO    ] ================================================
[2026-06-27 04:04:23,796.796 INFO    ] Launching Daemon at Sat Jun 27 04:04:23 IST 2026
[2026-06-27 04:04:23,807.807 INFO    ] ================================================
[2026-06-27 04:04:24,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:04:24
[2026-06-27 04:04:24,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:04:24,622.622 INFO    ] Initializing speech engine...
[2026-06-27 04:04:24,630.630 INFO    ] 2026-06-27 04:04:24
[2026-06-27 04:04:24,841.841 INFO    ] 2026-06-27 04:04:24
[2026-06-27 04:04:24,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:04:25,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:04:25,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:04:25,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:04:25,278.278 INFO    ] time= 27/06/2026 04:04:25
[2026-06-27 04:04:25,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:04:25,286.286 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:04:25,352.352 INFO    ] No existing commands found in stream
[2026-06-27 04:04:30,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:04:30,369.369 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-27 04:04:31,017.017 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:04:31,018.018 INFO    ] Checking for system updates...
[2026-06-27 04:04:31,039.039 INFO    ] 200
[2026-06-27 04:04:31,041.041 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:04:31,071.071 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:04:31,073.073 INFO    ] No update needed
[2026-06-27 04:04:31,074.074 INFO    ] Checking for camera pi updates...
[2026-06-27 04:04:31,094.094 INFO    ] 200
[2026-06-27 04:04:31,096.096 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:04:31,119.119 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:04:31,157.157 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:04:31,158.158 INFO    ] No camera update needed
[2026-06-27 04:04:31,159.159 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:04:31,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:04:31,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:04:31,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:04:33,191.191 INFO    ] ================================================
[2026-06-27 04:04:33,200.200 INFO    ] Launching Daemon at Sat Jun 27 04:04:33 IST 2026
[2026-06-27 04:04:33,206.206 INFO    ] ================================================
[2026-06-27 04:04:33,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:04:33
[2026-06-27 04:04:33,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:04:34,016.016 INFO    ] Initializing speech engine...
[2026-06-27 04:04:34,025.025 INFO    ] 2026-06-27 04:04:34
[2026-06-27 04:04:34,232.232 INFO    ] 2026-06-27 04:04:34
[2026-06-27 04:04:34,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:04:34,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:04:34,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:04:34,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:04:34,673.673 INFO    ] time= 27/06/2026 04:04:34
[2026-06-27 04:04:34,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:04:34,680.680 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:04:34,749.749 INFO    ] No existing commands found in stream
[2026-06-27 04:04:39,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:04:39,766.766 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-27 04:04:40,618.618 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:04:40,620.620 INFO    ] Checking for system updates...
[2026-06-27 04:04:40,641.641 INFO    ] 200
[2026-06-27 04:04:40,642.642 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:04:40,674.674 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:04:40,676.676 INFO    ] No update needed
[2026-06-27 04:04:40,677.677 INFO    ] Checking for camera pi updates...
[2026-06-27 04:04:40,696.696 INFO    ] 200
[2026-06-27 04:04:40,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:04:40,723.723 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:04:40,763.763 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:04:40,765.765 INFO    ] No camera update needed
[2026-06-27 04:04:40,766.766 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:04:40,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:04:40,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:04:40,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:04:42,811.811 INFO    ] ================================================
[2026-06-27 04:04:42,826.826 INFO    ] Launching Daemon at Sat Jun 27 04:04:42 IST 2026
[2026-06-27 04:04:42,837.837 INFO    ] ================================================
[2026-06-27 04:04:43,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:04:43
[2026-06-27 04:04:43,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:04:43,633.633 INFO    ] Initializing speech engine...
[2026-06-27 04:04:43,638.638 INFO    ] 2026-06-27 04:04:43
[2026-06-27 04:04:43,842.842 INFO    ] 2026-06-27 04:04:43
[2026-06-27 04:04:43,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:04:44,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:04:44,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:04:44,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:04:44,267.267 INFO    ] time= 27/06/2026 04:04:44
[2026-06-27 04:04:44,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:04:44,289.289 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:04:44,354.354 INFO    ] No existing commands found in stream
[2026-06-27 04:04:49,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:04:49,368.368 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-27 04:04:53,413.413 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 04:04:53,415.415 INFO    ] Checking for system updates...
[2026-06-27 04:04:53,435.435 INFO    ] 200
[2026-06-27 04:04:53,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:04:53,467.467 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:04:53,468.468 INFO    ] No update needed
[2026-06-27 04:04:53,469.469 INFO    ] Checking for camera pi updates...
[2026-06-27 04:04:53,490.490 INFO    ] 200
[2026-06-27 04:04:53,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:04:53,514.514 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:04:53,538.538 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:04:53,539.539 INFO    ] No camera update needed
[2026-06-27 04:04:53,541.541 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:04:53,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:04:53,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:04:53,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:04:55,587.587 INFO    ] ================================================
[2026-06-27 04:04:55,602.602 INFO    ] Launching Daemon at Sat Jun 27 04:04:55 IST 2026
[2026-06-27 04:04:55,613.613 INFO    ] ================================================
[2026-06-27 04:04:55,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:04:55
[2026-06-27 04:04:56,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:04:56,418.418 INFO    ] Initializing speech engine...
[2026-06-27 04:04:56,426.426 INFO    ] 2026-06-27 04:04:56
[2026-06-27 04:04:56,637.637 INFO    ] 2026-06-27 04:04:56
[2026-06-27 04:04:56,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:04:56,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:04:56,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:04:57,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:04:57,081.081 INFO    ] time= 27/06/2026 04:04:57
[2026-06-27 04:04:57,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:04:57,088.088 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:04:57,155.155 INFO    ] No existing commands found in stream
[2026-06-27 04:05:02,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:05:02,166.166 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-27 04:05:05,541.541 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 04:05:05,542.542 INFO    ] Checking for system updates...
[2026-06-27 04:05:05,565.565 INFO    ] 200
[2026-06-27 04:05:05,566.566 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:05:05,598.598 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:05:05,599.599 INFO    ] No update needed
[2026-06-27 04:05:05,600.600 INFO    ] Checking for camera pi updates...
[2026-06-27 04:05:05,621.621 INFO    ] 200
[2026-06-27 04:05:05,622.622 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:05:05,646.646 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:05:05,693.693 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:05:05,695.695 INFO    ] No camera update needed
[2026-06-27 04:05:05,696.696 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:05:05,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:05:05,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:05:05,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:05:07,742.742 INFO    ] ================================================
[2026-06-27 04:05:07,757.757 INFO    ] Launching Daemon at Sat Jun 27 04:05:07 IST 2026
[2026-06-27 04:05:07,769.769 INFO    ] ================================================
[2026-06-27 04:05:08,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:05:08
[2026-06-27 04:05:08,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:05:08,538.538 INFO    ] Initializing speech engine...
[2026-06-27 04:05:08,546.546 INFO    ] 2026-06-27 04:05:08
[2026-06-27 04:05:08,754.754 INFO    ] 2026-06-27 04:05:08
[2026-06-27 04:05:08,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:05:08,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:05:08,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:05:09,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:05:09,178.178 INFO    ] time= 27/06/2026 04:05:09
[2026-06-27 04:05:09,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:05:09,207.207 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:05:09,274.274 INFO    ] No existing commands found in stream
[2026-06-27 04:05:14,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:05:14,287.287 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-27 04:05:15,392.392 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:05:15,393.393 INFO    ] Checking for system updates...
[2026-06-27 04:05:15,414.414 INFO    ] 200
[2026-06-27 04:05:15,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:05:15,446.446 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:05:15,447.447 INFO    ] No update needed
[2026-06-27 04:05:15,448.448 INFO    ] Checking for camera pi updates...
[2026-06-27 04:05:15,471.471 INFO    ] 200
[2026-06-27 04:05:15,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:05:15,496.496 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:05:15,532.532 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:05:15,534.534 INFO    ] No camera update needed
[2026-06-27 04:05:15,535.535 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:05:15,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:05:15,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:05:15,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:05:17,581.581 INFO    ] ================================================
[2026-06-27 04:05:17,598.598 INFO    ] Launching Daemon at Sat Jun 27 04:05:17 IST 2026
[2026-06-27 04:05:17,609.609 INFO    ] ================================================
[2026-06-27 04:05:17,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:05:17
[2026-06-27 04:05:18,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:05:18,419.419 INFO    ] Initializing speech engine...
[2026-06-27 04:05:18,430.430 INFO    ] 2026-06-27 04:05:18
[2026-06-27 04:05:18,632.632 INFO    ] 2026-06-27 04:05:18
[2026-06-27 04:05:18,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:05:19,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:05:19,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:05:19,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:05:19,568.568 INFO    ] time= 27/06/2026 04:05:19
[2026-06-27 04:05:19,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:05:19,574.574 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:05:19,641.641 INFO    ] No existing commands found in stream
[2026-06-27 04:05:24,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:05:24,654.654 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-27 04:05:31,458.458 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:05:31,460.460 INFO    ] Checking for system updates...
[2026-06-27 04:05:31,484.484 INFO    ] 200
[2026-06-27 04:05:31,486.486 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:05:31,520.520 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:05:31,522.522 INFO    ] No update needed
[2026-06-27 04:05:31,523.523 INFO    ] Checking for camera pi updates...
[2026-06-27 04:05:31,545.545 INFO    ] 200
[2026-06-27 04:05:31,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:05:31,574.574 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:05:31,611.611 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:05:31,613.613 INFO    ] No camera update needed
[2026-06-27 04:05:31,615.615 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:05:31,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:05:31,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:05:31,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:05:33,659.659 INFO    ] ================================================
[2026-06-27 04:05:33,675.675 INFO    ] Launching Daemon at Sat Jun 27 04:05:33 IST 2026
[2026-06-27 04:05:33,686.686 INFO    ] ================================================
[2026-06-27 04:05:34,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:05:34
[2026-06-27 04:05:34,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:05:34,484.484 INFO    ] Initializing speech engine...
[2026-06-27 04:05:34,497.497 INFO    ] 2026-06-27 04:05:34
[2026-06-27 04:05:34,738.738 INFO    ] 2026-06-27 04:05:34
[2026-06-27 04:05:34,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:05:34,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:05:34,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:05:35,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:05:35,214.214 INFO    ] time= 27/06/2026 04:05:35
[2026-06-27 04:05:35,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:05:35,222.222 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:05:35,289.289 INFO    ] No existing commands found in stream
[2026-06-27 04:05:40,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:05:40,303.303 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-27 04:05:41,288.288 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:05:41,289.289 INFO    ] Checking for system updates...
[2026-06-27 04:05:41,312.312 INFO    ] 200
[2026-06-27 04:05:41,313.313 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:05:41,344.344 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:05:41,346.346 INFO    ] No update needed
[2026-06-27 04:05:41,347.347 INFO    ] Checking for camera pi updates...
[2026-06-27 04:05:41,366.366 INFO    ] 200
[2026-06-27 04:05:41,368.368 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:05:41,391.391 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:05:41,429.429 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:05:41,430.430 INFO    ] No camera update needed
[2026-06-27 04:05:41,432.432 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:05:41,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:05:41,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:05:41,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:05:43,478.478 INFO    ] ================================================
[2026-06-27 04:05:43,494.494 INFO    ] Launching Daemon at Sat Jun 27 04:05:43 IST 2026
[2026-06-27 04:05:43,505.505 INFO    ] ================================================
[2026-06-27 04:05:43,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:05:43
[2026-06-27 04:05:44,226.226 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:05:44,360.360 INFO    ] Initializing speech engine...
[2026-06-27 04:05:44,369.369 INFO    ] 2026-06-27 04:05:44
[2026-06-27 04:05:44,596.596 INFO    ] 2026-06-27 04:05:44
[2026-06-27 04:05:44,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:05:44,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:05:44,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:05:44,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:05:45,013.013 INFO    ] time= 27/06/2026 04:05:44
[2026-06-27 04:05:45,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:05:45,080.080 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:05:45,184.184 INFO    ] No existing commands found in stream
[2026-06-27 04:05:50,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:05:50,196.196 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-27 04:05:51,563.563 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:05:51,565.565 INFO    ] Checking for system updates...
[2026-06-27 04:05:51,586.586 INFO    ] 200
[2026-06-27 04:05:51,587.587 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:05:51,619.619 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:05:51,621.621 INFO    ] No update needed
[2026-06-27 04:05:51,623.623 INFO    ] Checking for camera pi updates...
[2026-06-27 04:05:51,642.642 INFO    ] 200
[2026-06-27 04:05:51,644.644 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:05:51,669.669 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:05:51,708.708 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:05:51,710.710 INFO    ] No camera update needed
[2026-06-27 04:05:51,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:05:51,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:05:51,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:05:51,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:05:53,758.758 INFO    ] ================================================
[2026-06-27 04:05:53,773.773 INFO    ] Launching Daemon at Sat Jun 27 04:05:53 IST 2026
[2026-06-27 04:05:53,785.785 INFO    ] ================================================
[2026-06-27 04:05:54,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:05:54
[2026-06-27 04:05:54,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:05:54,670.670 INFO    ] Initializing speech engine...
[2026-06-27 04:05:54,676.676 INFO    ] 2026-06-27 04:05:54
[2026-06-27 04:05:54,888.888 INFO    ] 2026-06-27 04:05:54
[2026-06-27 04:05:54,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:05:55,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:05:55,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:05:55,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:05:55,330.330 INFO    ] time= 27/06/2026 04:05:55
[2026-06-27 04:05:55,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:05:55,338.338 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:05:55,406.406 INFO    ] No existing commands found in stream
[2026-06-27 04:06:00,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:06:00,424.424 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-27 04:06:04,308.308 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:06:04,310.310 INFO    ] Checking for system updates...
[2026-06-27 04:06:04,331.331 INFO    ] 200
[2026-06-27 04:06:04,333.333 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:06:04,364.364 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:06:04,365.365 INFO    ] No update needed
[2026-06-27 04:06:04,366.366 INFO    ] Checking for camera pi updates...
[2026-06-27 04:06:04,387.387 INFO    ] 200
[2026-06-27 04:06:04,389.389 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:06:04,412.412 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:06:04,451.451 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:06:04,452.452 INFO    ] No camera update needed
[2026-06-27 04:06:04,454.454 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:06:04,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:06:04,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:06:04,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:06:06,501.501 INFO    ] ================================================
[2026-06-27 04:06:06,517.517 INFO    ] Launching Daemon at Sat Jun 27 04:06:06 IST 2026
[2026-06-27 04:06:06,528.528 INFO    ] ================================================
[2026-06-27 04:06:06,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:06:06
[2026-06-27 04:06:07,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:06:07,322.322 INFO    ] Initializing speech engine...
[2026-06-27 04:06:07,326.326 INFO    ] 2026-06-27 04:06:07
[2026-06-27 04:06:07,520.520 INFO    ] 2026-06-27 04:06:07
[2026-06-27 04:06:07,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:06:07,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:06:07,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:06:07,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:06:08,005.005 INFO    ] time= 27/06/2026 04:06:07
[2026-06-27 04:06:08,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:06:08,046.046 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:06:08,122.122 INFO    ] No existing commands found in stream
[2026-06-27 04:06:13,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:06:13,136.136 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-27 04:06:15,837.837 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:06:15,838.838 INFO    ] Checking for system updates...
[2026-06-27 04:06:15,859.859 INFO    ] 200
[2026-06-27 04:06:15,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:06:15,891.891 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:06:15,892.892 INFO    ] No update needed
[2026-06-27 04:06:15,894.894 INFO    ] Checking for camera pi updates...
[2026-06-27 04:06:15,913.913 INFO    ] 200
[2026-06-27 04:06:15,915.915 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:06:15,940.940 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:06:15,981.981 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:06:15,982.982 INFO    ] No camera update needed
[2026-06-27 04:06:15,984.984 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:06:15,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:06:15,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:06:15,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:06:18,029.029 INFO    ] ================================================
[2026-06-27 04:06:18,045.045 INFO    ] Launching Daemon at Sat Jun 27 04:06:18 IST 2026
[2026-06-27 04:06:18,056.056 INFO    ] ================================================
[2026-06-27 04:06:18,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:06:18
[2026-06-27 04:06:18,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:06:18,919.919 INFO    ] Initializing speech engine...
[2026-06-27 04:06:18,929.929 INFO    ] 2026-06-27 04:06:18
[2026-06-27 04:06:19,135.135 INFO    ] 2026-06-27 04:06:19
[2026-06-27 04:06:19,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:06:19,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:06:19,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:06:19,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:06:19,557.557 INFO    ] time= 27/06/2026 04:06:19
[2026-06-27 04:06:19,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:06:19,586.586 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:06:19,653.653 INFO    ] No existing commands found in stream
[2026-06-27 04:06:24,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:06:24,665.665 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-27 04:06:27,188.188 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 04:06:27,190.190 INFO    ] Checking for system updates...
[2026-06-27 04:06:27,212.212 INFO    ] 200
[2026-06-27 04:06:27,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:06:27,246.246 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:06:27,248.248 INFO    ] No update needed
[2026-06-27 04:06:27,249.249 INFO    ] Checking for camera pi updates...
[2026-06-27 04:06:27,270.270 INFO    ] 200
[2026-06-27 04:06:27,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:06:27,296.296 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:06:27,343.343 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:06:27,344.344 INFO    ] No camera update needed
[2026-06-27 04:06:27,346.346 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:06:27,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:06:27,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:06:27,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:06:29,393.393 INFO    ] ================================================
[2026-06-27 04:06:29,408.408 INFO    ] Launching Daemon at Sat Jun 27 04:06:29 IST 2026
[2026-06-27 04:06:29,419.419 INFO    ] ================================================
[2026-06-27 04:06:29,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:06:29
[2026-06-27 04:06:30,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:06:30,231.231 INFO    ] Initializing speech engine...
[2026-06-27 04:06:30,236.236 INFO    ] 2026-06-27 04:06:30
[2026-06-27 04:06:30,439.439 INFO    ] 2026-06-27 04:06:30
[2026-06-27 04:06:30,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:06:30,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:06:30,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:06:30,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:06:30,881.881 INFO    ] time= 27/06/2026 04:06:30
[2026-06-27 04:06:30,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:06:30,888.888 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:06:30,955.955 INFO    ] No existing commands found in stream
[2026-06-27 04:06:35,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:06:35,967.967 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-27 04:06:38,072.072 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:06:38,073.073 INFO    ] Checking for system updates...
[2026-06-27 04:06:38,094.094 INFO    ] 200
[2026-06-27 04:06:38,096.096 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:06:38,127.127 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:06:38,128.128 INFO    ] No update needed
[2026-06-27 04:06:38,129.129 INFO    ] Checking for camera pi updates...
[2026-06-27 04:06:38,149.149 INFO    ] 200
[2026-06-27 04:06:38,151.151 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:06:38,176.176 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:06:38,220.220 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:06:38,221.221 INFO    ] No camera update needed
[2026-06-27 04:06:38,223.223 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:06:38,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:06:38,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:06:38,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:06:40,272.272 INFO    ] ================================================
[2026-06-27 04:06:40,288.288 INFO    ] Launching Daemon at Sat Jun 27 04:06:40 IST 2026
[2026-06-27 04:06:40,299.299 INFO    ] ================================================
[2026-06-27 04:06:40,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:06:40
[2026-06-27 04:06:41,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:06:41,177.177 INFO    ] Initializing speech engine...
[2026-06-27 04:06:41,183.183 INFO    ] 2026-06-27 04:06:41
[2026-06-27 04:06:41,393.393 INFO    ] 2026-06-27 04:06:41
[2026-06-27 04:06:41,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:06:41,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:06:41,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:06:41,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:06:41,846.846 INFO    ] time= 27/06/2026 04:06:41
[2026-06-27 04:06:41,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:06:41,853.853 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:06:41,919.919 INFO    ] No existing commands found in stream
[2026-06-27 04:06:46,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:06:46,929.929 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-27 04:06:49,183.183 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 04:06:49,185.185 INFO    ] Checking for system updates...
[2026-06-27 04:06:49,206.206 INFO    ] 200
[2026-06-27 04:06:49,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:06:49,241.241 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:06:49,242.242 INFO    ] No update needed
[2026-06-27 04:06:49,244.244 INFO    ] Checking for camera pi updates...
[2026-06-27 04:06:49,264.264 INFO    ] 200
[2026-06-27 04:06:49,266.266 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:06:49,290.290 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:06:49,331.331 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:06:49,332.332 INFO    ] No camera update needed
[2026-06-27 04:06:49,334.334 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:06:49,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:06:49,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:06:49,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:06:51,381.381 INFO    ] ================================================
[2026-06-27 04:06:51,396.396 INFO    ] Launching Daemon at Sat Jun 27 04:06:51 IST 2026
[2026-06-27 04:06:51,407.407 INFO    ] ================================================
[2026-06-27 04:06:51,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:06:51
[2026-06-27 04:06:52,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:06:52,227.227 INFO    ] Initializing speech engine...
[2026-06-27 04:06:52,232.232 INFO    ] 2026-06-27 04:06:52
[2026-06-27 04:06:52,439.439 INFO    ] 2026-06-27 04:06:52
[2026-06-27 04:06:52,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:06:52,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:06:52,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:06:52,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:06:52,885.885 INFO    ] time= 27/06/2026 04:06:52
[2026-06-27 04:06:52,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:06:52,893.893 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:06:52,961.961 INFO    ] No existing commands found in stream
[2026-06-27 04:06:57,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:06:57,973.973 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-27 04:07:00,641.641 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 04:07:00,642.642 INFO    ] Checking for system updates...
[2026-06-27 04:07:00,663.663 INFO    ] 200
[2026-06-27 04:07:00,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:07:00,699.699 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:07:00,700.700 INFO    ] No update needed
[2026-06-27 04:07:00,702.702 INFO    ] Checking for camera pi updates...
[2026-06-27 04:07:00,722.722 INFO    ] 200
[2026-06-27 04:07:00,724.724 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:07:00,748.748 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:07:00,770.770 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:07:00,771.771 INFO    ] No camera update needed
[2026-06-27 04:07:00,773.773 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:07:00,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:07:00,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:07:00,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:07:02,815.815 INFO    ] ================================================
[2026-06-27 04:07:02,824.824 INFO    ] Launching Daemon at Sat Jun 27 04:07:02 IST 2026
[2026-06-27 04:07:02,830.830 INFO    ] ================================================
[2026-06-27 04:07:03,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:07:03
[2026-06-27 04:07:03,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:07:03,588.588 INFO    ] Initializing speech engine...
[2026-06-27 04:07:03,600.600 INFO    ] 2026-06-27 04:07:03
[2026-06-27 04:07:03,809.809 INFO    ] 2026-06-27 04:07:03
[2026-06-27 04:07:03,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:07:04,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:07:04,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:07:04,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:07:04,235.235 INFO    ] time= 27/06/2026 04:07:04
[2026-06-27 04:07:04,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:07:04,257.257 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:07:04,327.327 INFO    ] No existing commands found in stream
[2026-06-27 04:07:09,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:07:09,338.338 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-27 04:07:10,079.079 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 04:07:10,081.081 INFO    ] Checking for system updates...
[2026-06-27 04:07:10,114.114 INFO    ] 200
[2026-06-27 04:07:10,116.116 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:07:10,146.146 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:07:10,148.148 INFO    ] No update needed
[2026-06-27 04:07:10,149.149 INFO    ] Checking for camera pi updates...
[2026-06-27 04:07:10,169.169 INFO    ] 200
[2026-06-27 04:07:10,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:07:10,196.196 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:07:10,320.320 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:07:10,321.321 INFO    ] No camera update needed
[2026-06-27 04:07:10,322.322 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:07:10,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:07:10,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:07:10,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:07:12,367.367 INFO    ] ================================================
[2026-06-27 04:07:12,382.382 INFO    ] Launching Daemon at Sat Jun 27 04:07:12 IST 2026
[2026-06-27 04:07:12,393.393 INFO    ] ================================================
[2026-06-27 04:07:12,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:07:12
[2026-06-27 04:07:13,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:07:13,205.205 INFO    ] Initializing speech engine...
[2026-06-27 04:07:13,210.210 INFO    ] 2026-06-27 04:07:13
[2026-06-27 04:07:13,414.414 INFO    ] 2026-06-27 04:07:13
[2026-06-27 04:07:13,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:07:13,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:07:13,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:07:13,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:07:13,832.832 INFO    ] time= 27/06/2026 04:07:13
[2026-06-27 04:07:13,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:07:13,861.861 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:07:13,928.928 INFO    ] No existing commands found in stream
[2026-06-27 04:07:18,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:07:18,945.945 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-27 04:07:23,227.227 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:07:23,228.228 INFO    ] Checking for system updates...
[2026-06-27 04:07:23,250.250 INFO    ] 200
[2026-06-27 04:07:23,251.251 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:07:23,282.282 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:07:23,283.283 INFO    ] No update needed
[2026-06-27 04:07:23,285.285 INFO    ] Checking for camera pi updates...
[2026-06-27 04:07:23,305.305 INFO    ] 200
[2026-06-27 04:07:23,306.306 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:07:23,331.331 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:07:23,368.368 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:07:23,369.369 INFO    ] No camera update needed
[2026-06-27 04:07:23,371.371 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:07:23,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:07:23,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:07:23,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:07:25,415.415 INFO    ] ================================================
[2026-06-27 04:07:25,431.431 INFO    ] Launching Daemon at Sat Jun 27 04:07:25 IST 2026
[2026-06-27 04:07:25,441.441 INFO    ] ================================================
[2026-06-27 04:07:25,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:07:25
[2026-06-27 04:07:26,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:07:26,241.241 INFO    ] Initializing speech engine...
[2026-06-27 04:07:26,247.247 INFO    ] 2026-06-27 04:07:26
[2026-06-27 04:07:26,452.452 INFO    ] 2026-06-27 04:07:26
[2026-06-27 04:07:26,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:07:26,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:07:26,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:07:26,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:07:26,873.873 INFO    ] time= 27/06/2026 04:07:26
[2026-06-27 04:07:26,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:07:26,908.908 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:07:26,999.999 INFO    ] No existing commands found in stream
[2026-06-27 04:07:32,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:07:32,009.009 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-27 04:07:33,705.705 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:07:33,706.706 INFO    ] Checking for system updates...
[2026-06-27 04:07:33,727.727 INFO    ] 200
[2026-06-27 04:07:33,728.728 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:07:33,761.761 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:07:33,762.762 INFO    ] No update needed
[2026-06-27 04:07:33,763.763 INFO    ] Checking for camera pi updates...
[2026-06-27 04:07:33,785.785 INFO    ] 200
[2026-06-27 04:07:33,786.786 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:07:33,809.809 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:07:33,846.846 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:07:33,847.847 INFO    ] No camera update needed
[2026-06-27 04:07:33,848.848 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:07:33,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:07:33,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:07:33,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:07:35,893.893 INFO    ] ================================================
[2026-06-27 04:07:35,908.908 INFO    ] Launching Daemon at Sat Jun 27 04:07:35 IST 2026
[2026-06-27 04:07:35,920.920 INFO    ] ================================================
[2026-06-27 04:07:36,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:07:36
[2026-06-27 04:07:36,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:07:36,719.719 INFO    ] Initializing speech engine...
[2026-06-27 04:07:36,724.724 INFO    ] 2026-06-27 04:07:36
[2026-06-27 04:07:36,953.953 INFO    ] 2026-06-27 04:07:36
[2026-06-27 04:07:36,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:07:37,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:07:37,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:07:37,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:07:37,401.401 INFO    ] time= 27/06/2026 04:07:37
[2026-06-27 04:07:37,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:07:37,437.437 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:07:37,514.514 INFO    ] No existing commands found in stream
[2026-06-27 04:07:42,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:07:42,526.526 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-27 04:07:46,961.961 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 04:07:46,963.963 INFO    ] Checking for system updates...
[2026-06-27 04:07:46,984.984 INFO    ] 200
[2026-06-27 04:07:46,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:07:47,016.016 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:07:47,018.018 INFO    ] No update needed
[2026-06-27 04:07:47,019.019 INFO    ] Checking for camera pi updates...
[2026-06-27 04:07:47,039.039 INFO    ] 200
[2026-06-27 04:07:47,040.040 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:07:47,065.065 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:07:47,099.099 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:07:47,101.101 INFO    ] No camera update needed
[2026-06-27 04:07:47,102.102 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:07:47,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:07:47,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:07:47,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:07:49,149.149 INFO    ] ================================================
[2026-06-27 04:07:49,164.164 INFO    ] Launching Daemon at Sat Jun 27 04:07:49 IST 2026
[2026-06-27 04:07:49,175.175 INFO    ] ================================================
[2026-06-27 04:07:49,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:07:49
[2026-06-27 04:07:49,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:07:49,985.985 INFO    ] Initializing speech engine...
[2026-06-27 04:07:49,995.995 INFO    ] 2026-06-27 04:07:49
[2026-06-27 04:07:50,199.199 INFO    ] 2026-06-27 04:07:50
[2026-06-27 04:07:50,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:07:50,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:07:50,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:07:50,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:07:50,641.641 INFO    ] time= 27/06/2026 04:07:50
[2026-06-27 04:07:50,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:07:50,672.672 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:07:50,784.784 INFO    ] No existing commands found in stream
[2026-06-27 04:07:55,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:07:55,807.807 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-27 04:07:59,880.880 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:07:59,881.881 INFO    ] Checking for system updates...
[2026-06-27 04:07:59,903.903 INFO    ] 200
[2026-06-27 04:07:59,904.904 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:07:59,937.937 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:07:59,939.939 INFO    ] No update needed
[2026-06-27 04:07:59,940.940 INFO    ] Checking for camera pi updates...
[2026-06-27 04:07:59,959.959 INFO    ] 200
[2026-06-27 04:07:59,961.961 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:07:59,986.986 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:08:00,024.024 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:08:00,026.026 INFO    ] No camera update needed
[2026-06-27 04:08:00,027.027 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:08:00,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:08:00,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:08:00,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:08:02,086.086 INFO    ] ================================================
[2026-06-27 04:08:02,115.115 INFO    ] Launching Daemon at Sat Jun 27 04:08:02 IST 2026
[2026-06-27 04:08:02,136.136 INFO    ] ================================================
[2026-06-27 04:08:02,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:08:02
[2026-06-27 04:08:02,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:08:03,105.105 INFO    ] Initializing speech engine...
[2026-06-27 04:08:03,111.111 INFO    ] 2026-06-27 04:08:03
[2026-06-27 04:08:03,319.319 INFO    ] 2026-06-27 04:08:03
[2026-06-27 04:08:03,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:08:03,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:08:03,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:08:03,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:08:03,757.757 INFO    ] time= 27/06/2026 04:08:03
[2026-06-27 04:08:03,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:08:03,768.768 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:08:03,835.835 INFO    ] No existing commands found in stream
[2026-06-27 04:08:08,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:08:08,868.868 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-27 04:08:09,287.287 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:08:09,288.288 INFO    ] Checking for system updates...
[2026-06-27 04:08:09,310.310 INFO    ] 200
[2026-06-27 04:08:09,312.312 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:08:09,343.343 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:08:09,345.345 INFO    ] No update needed
[2026-06-27 04:08:09,346.346 INFO    ] Checking for camera pi updates...
[2026-06-27 04:08:09,367.367 INFO    ] 200
[2026-06-27 04:08:09,368.368 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:08:09,392.392 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:08:09,436.436 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:08:09,438.438 INFO    ] No camera update needed
[2026-06-27 04:08:09,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:08:09,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:08:09,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:08:09,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:08:11,486.486 INFO    ] ================================================
[2026-06-27 04:08:11,501.501 INFO    ] Launching Daemon at Sat Jun 27 04:08:11 IST 2026
[2026-06-27 04:08:11,512.512 INFO    ] ================================================
[2026-06-27 04:08:11,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:08:11
[2026-06-27 04:08:12,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:08:12,301.301 INFO    ] Initializing speech engine...
[2026-06-27 04:08:12,310.310 INFO    ] 2026-06-27 04:08:12
[2026-06-27 04:08:12,517.517 INFO    ] 2026-06-27 04:08:12
[2026-06-27 04:08:12,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:08:12,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:08:12,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:08:12,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:08:12,942.942 INFO    ] time= 27/06/2026 04:08:12
[2026-06-27 04:08:12,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:08:12,973.973 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:08:13,041.041 INFO    ] No existing commands found in stream
[2026-06-27 04:08:18,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:08:18,049.049 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-27 04:08:20,551.551 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:08:20,552.552 INFO    ] Checking for system updates...
[2026-06-27 04:08:20,573.573 INFO    ] 200
[2026-06-27 04:08:20,574.574 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:08:20,608.608 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:08:20,609.609 INFO    ] No update needed
[2026-06-27 04:08:20,610.610 INFO    ] Checking for camera pi updates...
[2026-06-27 04:08:20,632.632 INFO    ] 200
[2026-06-27 04:08:20,633.633 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:08:20,658.658 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:08:20,698.698 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:08:20,699.699 INFO    ] No camera update needed
[2026-06-27 04:08:20,700.700 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:08:20,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:08:20,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:08:20,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:08:22,746.746 INFO    ] ================================================
[2026-06-27 04:08:22,761.761 INFO    ] Launching Daemon at Sat Jun 27 04:08:22 IST 2026
[2026-06-27 04:08:22,772.772 INFO    ] ================================================
[2026-06-27 04:08:23,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:08:23
[2026-06-27 04:08:23,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:08:23,572.572 INFO    ] Initializing speech engine...
[2026-06-27 04:08:23,585.585 INFO    ] 2026-06-27 04:08:23
[2026-06-27 04:08:23,796.796 INFO    ] 2026-06-27 04:08:23
[2026-06-27 04:08:23,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:08:24,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:08:24,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:08:24,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:08:24,222.222 INFO    ] time= 27/06/2026 04:08:24
[2026-06-27 04:08:24,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:08:24,249.249 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:08:24,316.316 INFO    ] No existing commands found in stream
[2026-06-27 04:08:29,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:08:29,348.348 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-27 04:08:33,503.503 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 04:08:33,505.505 INFO    ] Checking for system updates...
[2026-06-27 04:08:33,526.526 INFO    ] 200
[2026-06-27 04:08:33,527.527 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:08:33,558.558 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:08:33,559.559 INFO    ] No update needed
[2026-06-27 04:08:33,560.560 INFO    ] Checking for camera pi updates...
[2026-06-27 04:08:33,580.580 INFO    ] 200
[2026-06-27 04:08:33,581.581 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:08:33,606.606 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:08:33,631.631 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:08:33,632.632 INFO    ] No camera update needed
[2026-06-27 04:08:33,634.634 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:08:33,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:08:33,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:08:33,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:08:35,680.680 INFO    ] ================================================
[2026-06-27 04:08:35,697.697 INFO    ] Launching Daemon at Sat Jun 27 04:08:35 IST 2026
[2026-06-27 04:08:35,707.707 INFO    ] ================================================
[2026-06-27 04:08:36,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:08:36
[2026-06-27 04:08:36,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:08:36,517.517 INFO    ] Initializing speech engine...
[2026-06-27 04:08:36,527.527 INFO    ] 2026-06-27 04:08:36
[2026-06-27 04:08:36,735.735 INFO    ] 2026-06-27 04:08:36
[2026-06-27 04:08:36,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:08:36,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:08:36,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:08:37,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:08:37,163.163 INFO    ] time= 27/06/2026 04:08:37
[2026-06-27 04:08:37,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:08:37,194.194 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:08:37,260.260 INFO    ] No existing commands found in stream
[2026-06-27 04:08:42,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:08:42,274.274 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-27 04:08:46,385.385 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:08:46,387.387 INFO    ] Checking for system updates...
[2026-06-27 04:08:46,408.408 INFO    ] 200
[2026-06-27 04:08:46,409.409 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:08:46,439.439 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:08:46,441.441 INFO    ] No update needed
[2026-06-27 04:08:46,442.442 INFO    ] Checking for camera pi updates...
[2026-06-27 04:08:46,461.461 INFO    ] 200
[2026-06-27 04:08:46,463.463 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:08:46,489.489 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:08:46,524.524 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:08:46,525.525 INFO    ] No camera update needed
[2026-06-27 04:08:46,527.527 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:08:46,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:08:46,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:08:46,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:08:48,572.572 INFO    ] ================================================
[2026-06-27 04:08:48,588.588 INFO    ] Launching Daemon at Sat Jun 27 04:08:48 IST 2026
[2026-06-27 04:08:48,599.599 INFO    ] ================================================
[2026-06-27 04:08:48,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:08:48
[2026-06-27 04:08:49,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:08:49,455.455 INFO    ] Initializing speech engine...
[2026-06-27 04:08:49,462.462 INFO    ] 2026-06-27 04:08:49
[2026-06-27 04:08:49,673.673 INFO    ] 2026-06-27 04:08:49
[2026-06-27 04:08:49,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:08:49,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:08:49,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:08:50,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:08:50,118.118 INFO    ] time= 27/06/2026 04:08:50
[2026-06-27 04:08:50,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:08:50,126.126 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:08:50,192.192 INFO    ] No existing commands found in stream
[2026-06-27 04:08:55,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:08:55,206.206 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-27 04:08:57,366.366 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 04:08:57,368.368 INFO    ] Checking for system updates...
[2026-06-27 04:08:57,390.390 INFO    ] 200
[2026-06-27 04:08:57,391.391 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:08:57,427.427 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:08:57,429.429 INFO    ] No update needed
[2026-06-27 04:08:57,430.430 INFO    ] Checking for camera pi updates...
[2026-06-27 04:08:57,451.451 INFO    ] 200
[2026-06-27 04:08:57,453.453 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:08:57,479.479 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:08:57,526.526 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:08:57,528.528 INFO    ] No camera update needed
[2026-06-27 04:08:57,529.529 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:08:57,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:08:57,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:08:57,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:08:59,577.577 INFO    ] ================================================
[2026-06-27 04:08:59,592.592 INFO    ] Launching Daemon at Sat Jun 27 04:08:59 IST 2026
[2026-06-27 04:08:59,602.602 INFO    ] ================================================
[2026-06-27 04:08:59,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:08:59
[2026-06-27 04:09:00,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:09:00,394.394 INFO    ] Initializing speech engine...
[2026-06-27 04:09:00,398.398 INFO    ] 2026-06-27 04:09:00
[2026-06-27 04:09:00,591.591 INFO    ] 2026-06-27 04:09:00
[2026-06-27 04:09:00,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:09:00,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:09:00,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:09:01,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:09:01,083.083 INFO    ] time= 27/06/2026 04:09:01
[2026-06-27 04:09:01,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:09:01,124.124 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:09:01,200.200 INFO    ] No existing commands found in stream
[2026-06-27 04:09:06,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:09:06,209.209 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-27 04:09:07,145.145 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 04:09:07,146.146 INFO    ] Checking for system updates...
[2026-06-27 04:09:07,168.168 INFO    ] 200
[2026-06-27 04:09:07,169.169 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:09:07,200.200 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:09:07,202.202 INFO    ] No update needed
[2026-06-27 04:09:07,203.203 INFO    ] Checking for camera pi updates...
[2026-06-27 04:09:07,223.223 INFO    ] 200
[2026-06-27 04:09:07,224.224 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:09:07,247.247 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:09:07,287.287 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:09:07,288.288 INFO    ] No camera update needed
[2026-06-27 04:09:07,289.289 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:09:07,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:09:07,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:09:07,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:09:09,335.335 INFO    ] ================================================
[2026-06-27 04:09:09,350.350 INFO    ] Launching Daemon at Sat Jun 27 04:09:09 IST 2026
[2026-06-27 04:09:09,361.361 INFO    ] ================================================
[2026-06-27 04:09:09,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:09:09
[2026-06-27 04:09:10,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:09:10,172.172 INFO    ] Initializing speech engine...
[2026-06-27 04:09:10,175.175 INFO    ] 2026-06-27 04:09:10
[2026-06-27 04:09:10,372.372 INFO    ] 2026-06-27 04:09:10
[2026-06-27 04:09:10,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:09:10,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:09:10,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:09:10,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:09:10,824.824 INFO    ] time= 27/06/2026 04:09:10
[2026-06-27 04:09:10,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:09:10,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:09:10,958.958 INFO    ] No existing commands found in stream
[2026-06-27 04:09:15,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:09:15,975.975 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-27 04:09:19,983.983 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:09:19,985.985 INFO    ] Checking for system updates...
[2026-06-27 04:09:20,007.007 INFO    ] 200
[2026-06-27 04:09:20,008.008 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:09:20,039.039 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:09:20,040.040 INFO    ] No update needed
[2026-06-27 04:09:20,041.041 INFO    ] Checking for camera pi updates...
[2026-06-27 04:09:20,062.062 INFO    ] 200
[2026-06-27 04:09:20,064.064 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:09:20,087.087 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:09:20,210.210 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:09:20,211.211 INFO    ] No camera update needed
[2026-06-27 04:09:20,212.212 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:09:20,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:09:20,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:09:20,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:09:22,258.258 INFO    ] ================================================
[2026-06-27 04:09:22,273.273 INFO    ] Launching Daemon at Sat Jun 27 04:09:22 IST 2026
[2026-06-27 04:09:22,285.285 INFO    ] ================================================
[2026-06-27 04:09:22,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:09:22
[2026-06-27 04:09:23,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:09:23,158.158 INFO    ] Initializing speech engine...
[2026-06-27 04:09:23,168.168 INFO    ] 2026-06-27 04:09:23
[2026-06-27 04:09:23,381.381 INFO    ] 2026-06-27 04:09:23
[2026-06-27 04:09:23,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:09:23,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:09:23,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:09:23,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:09:23,829.829 INFO    ] time= 27/06/2026 04:09:23
[2026-06-27 04:09:23,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:09:23,836.836 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:09:23,902.902 INFO    ] No existing commands found in stream
[2026-06-27 04:09:28,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:09:28,917.917 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-27 04:09:32,295.295 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:09:32,297.297 INFO    ] Checking for system updates...
[2026-06-27 04:09:32,318.318 INFO    ] 200
[2026-06-27 04:09:32,320.320 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:09:32,351.351 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:09:32,352.352 INFO    ] No update needed
[2026-06-27 04:09:32,354.354 INFO    ] Checking for camera pi updates...
[2026-06-27 04:09:32,374.374 INFO    ] 200
[2026-06-27 04:09:32,376.376 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:09:32,399.399 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:09:32,427.427 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:09:32,428.428 INFO    ] No camera update needed
[2026-06-27 04:09:32,430.430 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:09:32,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:09:32,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:09:32,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:09:34,476.476 INFO    ] ================================================
[2026-06-27 04:09:34,491.491 INFO    ] Launching Daemon at Sat Jun 27 04:09:34 IST 2026
[2026-06-27 04:09:34,502.502 INFO    ] ================================================
[2026-06-27 04:09:34,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:09:34
[2026-06-27 04:09:35,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:09:35,296.296 INFO    ] Initializing speech engine...
[2026-06-27 04:09:35,301.301 INFO    ] 2026-06-27 04:09:35
[2026-06-27 04:09:35,505.505 INFO    ] 2026-06-27 04:09:35
[2026-06-27 04:09:35,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:09:35,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:09:35,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:09:35,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:09:35,945.945 INFO    ] time= 27/06/2026 04:09:35
[2026-06-27 04:09:35,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:09:35,953.953 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:09:36,019.019 INFO    ] No existing commands found in stream
[2026-06-27 04:09:41,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:09:41,033.033 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-27 04:09:43,857.857 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:09:43,859.859 INFO    ] Checking for system updates...
[2026-06-27 04:09:43,880.880 INFO    ] 200
[2026-06-27 04:09:43,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:09:43,912.912 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:09:43,913.913 INFO    ] No update needed
[2026-06-27 04:09:43,915.915 INFO    ] Checking for camera pi updates...
[2026-06-27 04:09:43,935.935 INFO    ] 200
[2026-06-27 04:09:43,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:09:43,960.960 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:09:43,998.998 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:09:43,999.999 INFO    ] No camera update needed
[2026-06-27 04:09:44,001.001 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:09:44,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:09:44,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:09:44,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:09:46,051.051 INFO    ] ================================================
[2026-06-27 04:09:46,066.066 INFO    ] Launching Daemon at Sat Jun 27 04:09:46 IST 2026
[2026-06-27 04:09:46,077.077 INFO    ] ================================================
[2026-06-27 04:09:46,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:09:46
[2026-06-27 04:09:46,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:09:46,891.891 INFO    ] Initializing speech engine...
[2026-06-27 04:09:46,896.896 INFO    ] 2026-06-27 04:09:46
[2026-06-27 04:09:47,102.102 INFO    ] 2026-06-27 04:09:47
[2026-06-27 04:09:47,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:09:47,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:09:47,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:09:47,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:09:47,548.548 INFO    ] time= 27/06/2026 04:09:47
[2026-06-27 04:09:47,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:09:47,559.559 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:09:47,626.626 INFO    ] No existing commands found in stream
[2026-06-27 04:09:52,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:09:52,640.640 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-27 04:09:53,521.521 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:09:53,522.522 INFO    ] Checking for system updates...
[2026-06-27 04:09:53,543.543 INFO    ] 200
[2026-06-27 04:09:53,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:09:53,579.579 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:09:53,581.581 INFO    ] No update needed
[2026-06-27 04:09:53,582.582 INFO    ] Checking for camera pi updates...
[2026-06-27 04:09:53,601.601 INFO    ] 200
[2026-06-27 04:09:53,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:09:53,626.626 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:09:53,650.650 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:09:53,652.652 INFO    ] No camera update needed
[2026-06-27 04:09:53,653.653 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:09:53,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:09:53,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:09:53,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:09:55,698.698 INFO    ] ================================================
[2026-06-27 04:09:55,714.714 INFO    ] Launching Daemon at Sat Jun 27 04:09:55 IST 2026
[2026-06-27 04:09:55,730.730 INFO    ] ================================================
[2026-06-27 04:09:56,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:09:56
[2026-06-27 04:09:56,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:09:56,578.578 INFO    ] Initializing speech engine...
[2026-06-27 04:09:56,584.584 INFO    ] 2026-06-27 04:09:56
[2026-06-27 04:09:56,789.789 INFO    ] 2026-06-27 04:09:56
[2026-06-27 04:09:56,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:09:57,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:09:57,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:09:57,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:09:57,209.209 INFO    ] time= 27/06/2026 04:09:57
[2026-06-27 04:09:57,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:09:57,237.237 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:09:57,305.305 INFO    ] No existing commands found in stream
[2026-06-27 04:10:02,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:10:02,318.318 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-27 04:10:08,180.180 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:10:08,181.181 INFO    ] Checking for system updates...
[2026-06-27 04:10:08,202.202 INFO    ] 200
[2026-06-27 04:10:08,203.203 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:10:08,234.234 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:10:08,235.235 INFO    ] No update needed
[2026-06-27 04:10:08,236.236 INFO    ] Checking for camera pi updates...
[2026-06-27 04:10:08,256.256 INFO    ] 200
[2026-06-27 04:10:08,257.257 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:10:08,280.280 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:10:08,319.319 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:10:08,321.321 INFO    ] No camera update needed
[2026-06-27 04:10:08,322.322 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:10:08,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:10:08,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:10:08,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:10:10,368.368 INFO    ] ================================================
[2026-06-27 04:10:10,384.384 INFO    ] Launching Daemon at Sat Jun 27 04:10:10 IST 2026
[2026-06-27 04:10:10,395.395 INFO    ] ================================================
[2026-06-27 04:10:10,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:10:10
[2026-06-27 04:10:11,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:10:11,206.206 INFO    ] Initializing speech engine...
[2026-06-27 04:10:11,214.214 INFO    ] 2026-06-27 04:10:11
[2026-06-27 04:10:11,425.425 INFO    ] 2026-06-27 04:10:11
[2026-06-27 04:10:11,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:10:11,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:10:11,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:10:11,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:10:11,848.848 INFO    ] time= 27/06/2026 04:10:11
[2026-06-27 04:10:11,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:10:11,875.875 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:10:11,943.943 INFO    ] No existing commands found in stream
[2026-06-27 04:10:16,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:10:16,955.955 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-27 04:10:20,850.850 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:10:20,852.852 INFO    ] Checking for system updates...
[2026-06-27 04:10:20,874.874 INFO    ] 200
[2026-06-27 04:10:20,875.875 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:10:20,908.908 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:10:20,909.909 INFO    ] No update needed
[2026-06-27 04:10:20,910.910 INFO    ] Checking for camera pi updates...
[2026-06-27 04:10:20,930.930 INFO    ] 200
[2026-06-27 04:10:20,931.931 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:10:20,955.955 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:10:20,995.995 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:10:20,996.996 INFO    ] No camera update needed
[2026-06-27 04:10:20,998.998 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:10:20,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:10:21,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:10:21,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:10:23,045.045 INFO    ] ================================================
[2026-06-27 04:10:23,060.060 INFO    ] Launching Daemon at Sat Jun 27 04:10:23 IST 2026
[2026-06-27 04:10:23,071.071 INFO    ] ================================================
[2026-06-27 04:10:23,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:10:23
[2026-06-27 04:10:23,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:10:23,888.888 INFO    ] Initializing speech engine...
[2026-06-27 04:10:23,901.901 INFO    ] 2026-06-27 04:10:23
[2026-06-27 04:10:24,120.120 INFO    ] 2026-06-27 04:10:24
[2026-06-27 04:10:24,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:10:24,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:10:24,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:10:24,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:10:24,559.559 INFO    ] time= 27/06/2026 04:10:24
[2026-06-27 04:10:24,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:10:24,594.594 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:10:24,669.669 INFO    ] No existing commands found in stream
[2026-06-27 04:10:29,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:10:29,681.681 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-27 04:10:30,821.821 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:10:30,823.823 INFO    ] Checking for system updates...
[2026-06-27 04:10:30,845.845 INFO    ] 200
[2026-06-27 04:10:30,846.846 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:10:30,877.877 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:10:30,881.881 INFO    ] No update needed
[2026-06-27 04:10:30,882.882 INFO    ] Checking for camera pi updates...
[2026-06-27 04:10:30,905.905 INFO    ] 200
[2026-06-27 04:10:30,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:10:30,933.933 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:10:30,973.973 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:10:30,974.974 INFO    ] No camera update needed
[2026-06-27 04:10:30,976.976 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:10:30,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:10:30,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:10:30,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:10:33,006.006 INFO    ] ================================================
[2026-06-27 04:10:33,015.015 INFO    ] Launching Daemon at Sat Jun 27 04:10:33 IST 2026
[2026-06-27 04:10:33,021.021 INFO    ] ================================================
[2026-06-27 04:10:33,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:10:33
[2026-06-27 04:10:33,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:10:33,861.861 INFO    ] Initializing speech engine...
[2026-06-27 04:10:33,871.871 INFO    ] 2026-06-27 04:10:33
[2026-06-27 04:10:34,081.081 INFO    ] 2026-06-27 04:10:34
[2026-06-27 04:10:34,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:10:34,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:10:34,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:10:34,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:10:34,550.550 INFO    ] time= 27/06/2026 04:10:34
[2026-06-27 04:10:34,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:10:34,577.577 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:10:34,644.644 INFO    ] No existing commands found in stream
[2026-06-27 04:10:39,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:10:39,656.656 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-27 04:10:42,040.040 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:10:42,041.041 INFO    ] Checking for system updates...
[2026-06-27 04:10:42,063.063 INFO    ] 200
[2026-06-27 04:10:42,064.064 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:10:42,097.097 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:10:42,098.098 INFO    ] No update needed
[2026-06-27 04:10:42,099.099 INFO    ] Checking for camera pi updates...
[2026-06-27 04:10:42,119.119 INFO    ] 200
[2026-06-27 04:10:42,120.120 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:10:42,145.145 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:10:42,183.183 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:10:42,184.184 INFO    ] No camera update needed
[2026-06-27 04:10:42,186.186 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:10:42,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:10:42,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:10:42,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:10:44,235.235 INFO    ] ================================================
[2026-06-27 04:10:44,250.250 INFO    ] Launching Daemon at Sat Jun 27 04:10:44 IST 2026
[2026-06-27 04:10:44,260.260 INFO    ] ================================================
[2026-06-27 04:10:44,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:10:44
[2026-06-27 04:10:44,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:10:45,095.095 INFO    ] Initializing speech engine...
[2026-06-27 04:10:45,101.101 INFO    ] 2026-06-27 04:10:45
[2026-06-27 04:10:45,305.305 INFO    ] 2026-06-27 04:10:45
[2026-06-27 04:10:45,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:10:45,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:10:45,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:10:45,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:10:45,724.724 INFO    ] time= 27/06/2026 04:10:45
[2026-06-27 04:10:45,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:10:45,754.754 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:10:45,821.821 INFO    ] No existing commands found in stream
[2026-06-27 04:10:50,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:10:50,839.839 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-27 04:10:54,764.764 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:10:54,765.765 INFO    ] Checking for system updates...
[2026-06-27 04:10:54,787.787 INFO    ] 200
[2026-06-27 04:10:54,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:10:54,819.819 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:10:54,820.820 INFO    ] No update needed
[2026-06-27 04:10:54,822.822 INFO    ] Checking for camera pi updates...
[2026-06-27 04:10:54,841.841 INFO    ] 200
[2026-06-27 04:10:54,842.842 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:10:54,865.865 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:10:54,890.890 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:10:54,891.891 INFO    ] No camera update needed
[2026-06-27 04:10:54,892.892 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:10:54,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:10:54,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:10:54,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:10:56,942.942 INFO    ] ================================================
[2026-06-27 04:10:56,956.956 INFO    ] Launching Daemon at Sat Jun 27 04:10:56 IST 2026
[2026-06-27 04:10:56,967.967 INFO    ] ================================================
[2026-06-27 04:10:57,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:10:57
[2026-06-27 04:10:57,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:10:57,831.831 INFO    ] Initializing speech engine...
[2026-06-27 04:10:57,837.837 INFO    ] 2026-06-27 04:10:57
[2026-06-27 04:10:58,046.046 INFO    ] 2026-06-27 04:10:58
[2026-06-27 04:10:58,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:10:58,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:10:58,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:10:58,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:10:58,492.492 INFO    ] time= 27/06/2026 04:10:58
[2026-06-27 04:10:58,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:10:58,500.500 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:10:58,568.568 INFO    ] No existing commands found in stream
[2026-06-27 04:11:03,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:11:03,581.581 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-27 04:11:04,750.750 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 04:11:04,752.752 INFO    ] Checking for system updates...
[2026-06-27 04:11:04,774.774 INFO    ] 200
[2026-06-27 04:11:04,776.776 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:11:04,809.809 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:11:04,810.810 INFO    ] No update needed
[2026-06-27 04:11:04,812.812 INFO    ] Checking for camera pi updates...
[2026-06-27 04:11:04,834.834 INFO    ] 200
[2026-06-27 04:11:04,835.835 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:11:04,861.861 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:11:04,900.900 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:11:04,902.902 INFO    ] No camera update needed
[2026-06-27 04:11:04,903.903 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:11:04,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:11:04,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:11:04,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:11:06,950.950 INFO    ] ================================================
[2026-06-27 04:11:06,965.965 INFO    ] Launching Daemon at Sat Jun 27 04:11:06 IST 2026
[2026-06-27 04:11:06,976.976 INFO    ] ================================================
[2026-06-27 04:11:07,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:11:07
[2026-06-27 04:11:07,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:11:07,774.774 INFO    ] Initializing speech engine...
[2026-06-27 04:11:07,780.780 INFO    ] 2026-06-27 04:11:07
[2026-06-27 04:11:08,003.003 INFO    ] 2026-06-27 04:11:07
[2026-06-27 04:11:08,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:11:08,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:11:08,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:11:08,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:11:08,437.437 INFO    ] time= 27/06/2026 04:11:08
[2026-06-27 04:11:08,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:11:08,478.478 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:11:08,551.551 INFO    ] No existing commands found in stream
[2026-06-27 04:11:13,562.562 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:11:13,565.565 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-27 04:11:15,125.125 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:11:15,126.126 INFO    ] Checking for system updates...
[2026-06-27 04:11:15,147.147 INFO    ] 200
[2026-06-27 04:11:15,148.148 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:11:15,178.178 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:11:15,180.180 INFO    ] No update needed
[2026-06-27 04:11:15,181.181 INFO    ] Checking for camera pi updates...
[2026-06-27 04:11:15,202.202 INFO    ] 200
[2026-06-27 04:11:15,203.203 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:11:15,227.227 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:11:15,267.267 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:11:15,269.269 INFO    ] No camera update needed
[2026-06-27 04:11:15,270.270 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:11:15,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:11:15,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:11:15,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:11:17,316.316 INFO    ] ================================================
[2026-06-27 04:11:17,332.332 INFO    ] Launching Daemon at Sat Jun 27 04:11:17 IST 2026
[2026-06-27 04:11:17,342.342 INFO    ] ================================================
[2026-06-27 04:11:17,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:11:17
[2026-06-27 04:11:17,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:11:18,121.121 INFO    ] Initializing speech engine...
[2026-06-27 04:11:18,124.124 INFO    ] 2026-06-27 04:11:18
[2026-06-27 04:11:18,344.344 INFO    ] 2026-06-27 04:11:18
[2026-06-27 04:11:18,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:11:18,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:11:18,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:11:18,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:11:18,777.777 INFO    ] time= 27/06/2026 04:11:18
[2026-06-27 04:11:18,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:11:18,826.826 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:11:18,902.902 INFO    ] No existing commands found in stream
[2026-06-27 04:11:23,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:11:23,915.915 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-27 04:11:24,779.779 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 04:11:24,781.781 INFO    ] Checking for system updates...
[2026-06-27 04:11:24,801.801 INFO    ] 200
[2026-06-27 04:11:24,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:11:24,836.836 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:11:24,838.838 INFO    ] No update needed
[2026-06-27 04:11:24,839.839 INFO    ] Checking for camera pi updates...
[2026-06-27 04:11:24,859.859 INFO    ] 200
[2026-06-27 04:11:24,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:11:24,884.884 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:11:25,022.022 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:11:25,024.024 INFO    ] No camera update needed
[2026-06-27 04:11:25,025.025 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:11:25,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:11:25,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:11:25,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:11:27,071.071 INFO    ] ================================================
[2026-06-27 04:11:27,086.086 INFO    ] Launching Daemon at Sat Jun 27 04:11:27 IST 2026
[2026-06-27 04:11:27,097.097 INFO    ] ================================================
[2026-06-27 04:11:27,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:11:27
[2026-06-27 04:11:27,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:11:27,950.950 INFO    ] Initializing speech engine...
[2026-06-27 04:11:27,956.956 INFO    ] 2026-06-27 04:11:27
[2026-06-27 04:11:28,166.166 INFO    ] 2026-06-27 04:11:28
[2026-06-27 04:11:28,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:11:28,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:11:28,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:11:28,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:11:28,614.614 INFO    ] time= 27/06/2026 04:11:28
[2026-06-27 04:11:28,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:11:28,622.622 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:11:28,689.689 INFO    ] No existing commands found in stream
[2026-06-27 04:11:33,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:11:33,707.707 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-27 04:11:34,971.971 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 04:11:34,972.972 INFO    ] Checking for system updates...
[2026-06-27 04:11:34,994.994 INFO    ] 200
[2026-06-27 04:11:34,995.995 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:11:35,026.026 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:11:35,027.027 INFO    ] No update needed
[2026-06-27 04:11:35,029.029 INFO    ] Checking for camera pi updates...
[2026-06-27 04:11:35,049.049 INFO    ] 200
[2026-06-27 04:11:35,051.051 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:11:35,074.074 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:11:35,116.116 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:11:35,118.118 INFO    ] No camera update needed
[2026-06-27 04:11:35,119.119 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:11:35,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:11:35,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:11:35,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:11:37,165.165 INFO    ] ================================================
[2026-06-27 04:11:37,181.181 INFO    ] Launching Daemon at Sat Jun 27 04:11:37 IST 2026
[2026-06-27 04:11:37,192.192 INFO    ] ================================================
[2026-06-27 04:11:37,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:11:37
[2026-06-27 04:11:37,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:11:37,987.987 INFO    ] Initializing speech engine...
[2026-06-27 04:11:38,000.000 INFO    ] 2026-06-27 04:11:37
[2026-06-27 04:11:38,208.208 INFO    ] 2026-06-27 04:11:38
[2026-06-27 04:11:38,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:11:38,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:11:38,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:11:38,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:11:38,655.655 INFO    ] time= 27/06/2026 04:11:38
[2026-06-27 04:11:38,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:11:38,662.662 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:11:38,728.728 INFO    ] No existing commands found in stream
[2026-06-27 04:11:43,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:11:43,741.741 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-27 04:11:45,415.415 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:11:45,417.417 INFO    ] Checking for system updates...
[2026-06-27 04:11:45,437.437 INFO    ] 200
[2026-06-27 04:11:45,439.439 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:11:45,474.474 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:11:45,475.475 INFO    ] No update needed
[2026-06-27 04:11:45,476.476 INFO    ] Checking for camera pi updates...
[2026-06-27 04:11:45,496.496 INFO    ] 200
[2026-06-27 04:11:45,497.497 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:11:45,520.520 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:11:45,558.558 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:11:45,560.560 INFO    ] No camera update needed
[2026-06-27 04:11:45,561.561 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:11:45,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:11:45,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:11:45,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:11:47,607.607 INFO    ] ================================================
[2026-06-27 04:11:47,622.622 INFO    ] Launching Daemon at Sat Jun 27 04:11:47 IST 2026
[2026-06-27 04:11:47,634.634 INFO    ] ================================================
[2026-06-27 04:11:47,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:11:47
[2026-06-27 04:11:48,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:11:48,442.442 INFO    ] Initializing speech engine...
[2026-06-27 04:11:48,447.447 INFO    ] 2026-06-27 04:11:48
[2026-06-27 04:11:48,662.662 INFO    ] 2026-06-27 04:11:48
[2026-06-27 04:11:48,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:11:48,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:11:48,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:11:49,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:11:49,108.108 INFO    ] time= 27/06/2026 04:11:49
[2026-06-27 04:11:49,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:11:49,160.160 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:11:49,236.236 INFO    ] No existing commands found in stream
[2026-06-27 04:11:54,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:11:54,248.248 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-27 04:11:55,729.729 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:11:55,731.731 INFO    ] Checking for system updates...
[2026-06-27 04:11:55,754.754 INFO    ] 200
[2026-06-27 04:11:55,755.755 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:11:55,787.787 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:11:55,788.788 INFO    ] No update needed
[2026-06-27 04:11:55,790.790 INFO    ] Checking for camera pi updates...
[2026-06-27 04:11:55,810.810 INFO    ] 200
[2026-06-27 04:11:55,811.811 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:11:55,837.837 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:11:55,878.878 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:11:55,879.879 INFO    ] No camera update needed
[2026-06-27 04:11:55,880.880 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:11:55,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:11:55,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:11:55,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:11:57,929.929 INFO    ] ================================================
[2026-06-27 04:11:57,945.945 INFO    ] Launching Daemon at Sat Jun 27 04:11:57 IST 2026
[2026-06-27 04:11:57,956.956 INFO    ] ================================================
[2026-06-27 04:11:58,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:11:58
[2026-06-27 04:11:58,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:11:58,776.776 INFO    ] Initializing speech engine...
[2026-06-27 04:11:58,785.785 INFO    ] 2026-06-27 04:11:58
[2026-06-27 04:11:59,011.011 INFO    ] 2026-06-27 04:11:58
[2026-06-27 04:11:59,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:11:59,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:11:59,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:11:59,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:11:59,442.442 INFO    ] time= 27/06/2026 04:11:59
[2026-06-27 04:11:59,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:11:59,495.495 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:11:59,571.571 INFO    ] No existing commands found in stream
[2026-06-27 04:12:04,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:12:04,585.585 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-27 04:12:05,115.115 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:12:05,117.117 INFO    ] Checking for system updates...
[2026-06-27 04:12:05,138.138 INFO    ] 200
[2026-06-27 04:12:05,139.139 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:12:05,173.173 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:12:05,174.174 INFO    ] No update needed
[2026-06-27 04:12:05,176.176 INFO    ] Checking for camera pi updates...
[2026-06-27 04:12:05,195.195 INFO    ] 200
[2026-06-27 04:12:05,197.197 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:12:05,221.221 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:12:05,267.267 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:12:05,268.268 INFO    ] No camera update needed
[2026-06-27 04:12:05,270.270 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:12:05,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:12:05,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:12:05,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:12:07,318.318 INFO    ] ================================================
[2026-06-27 04:12:07,334.334 INFO    ] Launching Daemon at Sat Jun 27 04:12:07 IST 2026
[2026-06-27 04:12:07,345.345 INFO    ] ================================================
[2026-06-27 04:12:07,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:12:07
[2026-06-27 04:12:08,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:12:08,150.150 INFO    ] Initializing speech engine...
[2026-06-27 04:12:08,158.158 INFO    ] 2026-06-27 04:12:08
[2026-06-27 04:12:08,371.371 INFO    ] 2026-06-27 04:12:08
[2026-06-27 04:12:08,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:12:08,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:12:08,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:12:08,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:12:08,815.815 INFO    ] time= 27/06/2026 04:12:08
[2026-06-27 04:12:08,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:12:08,823.823 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:12:08,890.890 INFO    ] No existing commands found in stream
[2026-06-27 04:12:13,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:12:13,907.907 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-27 04:12:18,017.017 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 04:12:18,018.018 INFO    ] Checking for system updates...
[2026-06-27 04:12:18,039.039 INFO    ] 200
[2026-06-27 04:12:18,040.040 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:12:18,071.071 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:12:18,072.072 INFO    ] No update needed
[2026-06-27 04:12:18,074.074 INFO    ] Checking for camera pi updates...
[2026-06-27 04:12:18,095.095 INFO    ] 200
[2026-06-27 04:12:18,097.097 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:12:18,120.120 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:12:18,154.154 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:12:18,155.155 INFO    ] No camera update needed
[2026-06-27 04:12:18,156.156 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:12:18,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:12:18,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:12:18,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:12:20,203.203 INFO    ] ================================================
[2026-06-27 04:12:20,220.220 INFO    ] Launching Daemon at Sat Jun 27 04:12:20 IST 2026
[2026-06-27 04:12:20,231.231 INFO    ] ================================================
[2026-06-27 04:12:20,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:12:20
[2026-06-27 04:12:20,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:12:21,016.016 INFO    ] Initializing speech engine...
[2026-06-27 04:12:21,025.025 INFO    ] 2026-06-27 04:12:21
[2026-06-27 04:12:21,245.245 INFO    ] 2026-06-27 04:12:21
[2026-06-27 04:12:21,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:12:21,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:12:21,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:12:21,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:12:21,681.681 INFO    ] time= 27/06/2026 04:12:21
[2026-06-27 04:12:21,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:12:21,703.703 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:12:21,771.771 INFO    ] No existing commands found in stream
[2026-06-27 04:12:26,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:12:26,794.794 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-27 04:12:30,077.077 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 04:12:30,079.079 INFO    ] Checking for system updates...
[2026-06-27 04:12:30,100.100 INFO    ] 200
[2026-06-27 04:12:30,101.101 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:12:30,131.131 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:12:30,133.133 INFO    ] No update needed
[2026-06-27 04:12:30,134.134 INFO    ] Checking for camera pi updates...
[2026-06-27 04:12:30,154.154 INFO    ] 200
[2026-06-27 04:12:30,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:12:30,180.180 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:12:30,218.218 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:12:30,220.220 INFO    ] No camera update needed
[2026-06-27 04:12:30,221.221 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:12:30,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:12:30,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:12:30,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:12:32,253.253 INFO    ] ================================================
[2026-06-27 04:12:32,261.261 INFO    ] Launching Daemon at Sat Jun 27 04:12:32 IST 2026
[2026-06-27 04:12:32,268.268 INFO    ] ================================================
[2026-06-27 04:12:32,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:12:32
[2026-06-27 04:12:32,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:12:33,016.016 INFO    ] Initializing speech engine...
[2026-06-27 04:12:33,020.020 INFO    ] 2026-06-27 04:12:33
[2026-06-27 04:12:33,239.239 INFO    ] 2026-06-27 04:12:33
[2026-06-27 04:12:33,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:12:33,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:12:33,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:12:33,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:12:33,665.665 INFO    ] time= 27/06/2026 04:12:33
[2026-06-27 04:12:33,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:12:33,694.694 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:12:33,762.762 INFO    ] No existing commands found in stream
[2026-06-27 04:12:38,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:12:38,774.774 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-27 04:12:39,418.418 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 04:12:39,420.420 INFO    ] Checking for system updates...
[2026-06-27 04:12:39,441.441 INFO    ] 200
[2026-06-27 04:12:39,443.443 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:12:39,473.473 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:12:39,474.474 INFO    ] No update needed
[2026-06-27 04:12:39,476.476 INFO    ] Checking for camera pi updates...
[2026-06-27 04:12:39,496.496 INFO    ] 200
[2026-06-27 04:12:39,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:12:39,521.521 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:12:39,558.558 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:12:39,560.560 INFO    ] No camera update needed
[2026-06-27 04:12:39,561.561 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:12:39,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:12:39,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:12:39,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:12:41,607.607 INFO    ] ================================================
[2026-06-27 04:12:41,624.624 INFO    ] Launching Daemon at Sat Jun 27 04:12:41 IST 2026
[2026-06-27 04:12:41,635.635 INFO    ] ================================================
[2026-06-27 04:12:41,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:12:41
[2026-06-27 04:12:42,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:12:42,474.474 INFO    ] Initializing speech engine...
[2026-06-27 04:12:42,479.479 INFO    ] 2026-06-27 04:12:42
[2026-06-27 04:12:42,683.683 INFO    ] 2026-06-27 04:12:42
[2026-06-27 04:12:42,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:12:42,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:12:42,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:12:43,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:12:43,121.121 INFO    ] time= 27/06/2026 04:12:43
[2026-06-27 04:12:43,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:12:43,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:12:43,195.195 INFO    ] No existing commands found in stream
[2026-06-27 04:12:48,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:12:48,207.207 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-27 04:12:52,425.425 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 04:12:52,426.426 INFO    ] Checking for system updates...
[2026-06-27 04:12:52,449.449 INFO    ] 200
[2026-06-27 04:12:52,451.451 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:12:52,482.482 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:12:52,483.483 INFO    ] No update needed
[2026-06-27 04:12:52,485.485 INFO    ] Checking for camera pi updates...
[2026-06-27 04:12:52,505.505 INFO    ] 200
[2026-06-27 04:12:52,507.507 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:12:52,531.531 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:12:52,567.567 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:12:52,569.569 INFO    ] No camera update needed
[2026-06-27 04:12:52,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:12:52,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:12:52,575.575 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:12:52,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:12:54,617.617 INFO    ] ================================================
[2026-06-27 04:12:54,633.633 INFO    ] Launching Daemon at Sat Jun 27 04:12:54 IST 2026
[2026-06-27 04:12:54,644.644 INFO    ] ================================================
[2026-06-27 04:12:55,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:12:55
[2026-06-27 04:12:55,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:12:55,523.523 INFO    ] Initializing speech engine...
[2026-06-27 04:12:55,528.528 INFO    ] 2026-06-27 04:12:55
[2026-06-27 04:12:55,737.737 INFO    ] 2026-06-27 04:12:55
[2026-06-27 04:12:55,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:12:55,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:12:55,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:12:56,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:12:56,178.178 INFO    ] time= 27/06/2026 04:12:56
[2026-06-27 04:12:56,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:12:56,186.186 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:12:56,254.254 INFO    ] No existing commands found in stream
[2026-06-27 04:13:01,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:13:01,271.271 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-27 04:13:05,481.481 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:13:05,483.483 INFO    ] Checking for system updates...
[2026-06-27 04:13:05,513.513 INFO    ] 200
[2026-06-27 04:13:05,515.515 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:13:05,560.560 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:13:05,561.561 INFO    ] No update needed
[2026-06-27 04:13:05,562.562 INFO    ] Checking for camera pi updates...
[2026-06-27 04:13:05,582.582 INFO    ] 200
[2026-06-27 04:13:05,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:13:05,606.606 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:13:05,642.642 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:13:05,644.644 INFO    ] No camera update needed
[2026-06-27 04:13:05,645.645 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:13:05,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:13:05,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:13:05,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:13:07,691.691 INFO    ] ================================================
[2026-06-27 04:13:07,707.707 INFO    ] Launching Daemon at Sat Jun 27 04:13:07 IST 2026
[2026-06-27 04:13:07,718.718 INFO    ] ================================================
[2026-06-27 04:13:08,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:13:08
[2026-06-27 04:13:08,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:13:08,504.504 INFO    ] Initializing speech engine...
[2026-06-27 04:13:08,518.518 INFO    ] 2026-06-27 04:13:08
[2026-06-27 04:13:08,718.718 INFO    ] 2026-06-27 04:13:08
[2026-06-27 04:13:08,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:13:08,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:13:08,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:13:09,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:13:09,154.154 INFO    ] time= 27/06/2026 04:13:09
[2026-06-27 04:13:09,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:13:09,184.184 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:13:09,252.252 INFO    ] No existing commands found in stream
[2026-06-27 04:13:14,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:13:14,264.264 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-27 04:13:16,490.490 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:13:16,491.491 INFO    ] Checking for system updates...
[2026-06-27 04:13:16,516.516 INFO    ] 200
[2026-06-27 04:13:16,517.517 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:13:16,576.576 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:13:16,578.578 INFO    ] No update needed
[2026-06-27 04:13:16,579.579 INFO    ] Checking for camera pi updates...
[2026-06-27 04:13:16,599.599 INFO    ] 200
[2026-06-27 04:13:16,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:13:16,624.624 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:13:16,661.661 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:13:16,663.663 INFO    ] No camera update needed
[2026-06-27 04:13:16,665.665 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:13:16,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:13:16,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:13:16,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:13:18,714.714 INFO    ] ================================================
[2026-06-27 04:13:18,730.730 INFO    ] Launching Daemon at Sat Jun 27 04:13:18 IST 2026
[2026-06-27 04:13:18,741.741 INFO    ] ================================================
[2026-06-27 04:13:19,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:13:19
[2026-06-27 04:13:19,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:13:19,580.580 INFO    ] Initializing speech engine...
[2026-06-27 04:13:19,584.584 INFO    ] 2026-06-27 04:13:19
[2026-06-27 04:13:19,791.791 INFO    ] 2026-06-27 04:13:19
[2026-06-27 04:13:19,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:13:20,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:13:20,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:13:20,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:13:20,247.247 INFO    ] time= 27/06/2026 04:13:20
[2026-06-27 04:13:20,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:13:20,290.290 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:13:20,389.389 INFO    ] No existing commands found in stream
[2026-06-27 04:13:25,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:13:25,407.407 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-27 04:13:26,676.676 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:13:26,678.678 INFO    ] Checking for system updates...
[2026-06-27 04:13:26,699.699 INFO    ] 200
[2026-06-27 04:13:26,700.700 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:13:26,731.731 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:13:26,733.733 INFO    ] No update needed
[2026-06-27 04:13:26,734.734 INFO    ] Checking for camera pi updates...
[2026-06-27 04:13:26,755.755 INFO    ] 200
[2026-06-27 04:13:26,756.756 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:13:26,782.782 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:13:26,924.924 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:13:26,925.925 INFO    ] No camera update needed
[2026-06-27 04:13:26,926.926 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:13:26,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:13:26,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:13:26,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:13:28,967.967 INFO    ] ================================================
[2026-06-27 04:13:28,977.977 INFO    ] Launching Daemon at Sat Jun 27 04:13:28 IST 2026
[2026-06-27 04:13:28,984.984 INFO    ] ================================================
[2026-06-27 04:13:29,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:13:29
[2026-06-27 04:13:29,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:13:29,806.806 INFO    ] Initializing speech engine...
[2026-06-27 04:13:29,815.815 INFO    ] 2026-06-27 04:13:29
[2026-06-27 04:13:30,019.019 INFO    ] 2026-06-27 04:13:29
[2026-06-27 04:13:30,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:13:30,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:13:30,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:13:30,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:13:30,443.443 INFO    ] time= 27/06/2026 04:13:30
[2026-06-27 04:13:30,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:13:30,470.470 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:13:30,538.538 INFO    ] No existing commands found in stream
[2026-06-27 04:13:35,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:13:35,555.555 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-27 04:13:37,165.165 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 04:13:37,166.166 INFO    ] Checking for system updates...
[2026-06-27 04:13:37,188.188 INFO    ] 200
[2026-06-27 04:13:37,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:13:37,220.220 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:13:37,221.221 INFO    ] No update needed
[2026-06-27 04:13:37,222.222 INFO    ] Checking for camera pi updates...
[2026-06-27 04:13:37,242.242 INFO    ] 200
[2026-06-27 04:13:37,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:13:37,267.267 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:13:37,305.305 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:13:37,306.306 INFO    ] No camera update needed
[2026-06-27 04:13:37,307.307 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:13:37,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:13:37,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:13:37,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:13:39,356.356 INFO    ] ================================================
[2026-06-27 04:13:39,372.372 INFO    ] Launching Daemon at Sat Jun 27 04:13:39 IST 2026
[2026-06-27 04:13:39,383.383 INFO    ] ================================================
[2026-06-27 04:13:39,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:13:39
[2026-06-27 04:13:40,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:13:40,246.246 INFO    ] Initializing speech engine...
[2026-06-27 04:13:40,256.256 INFO    ] 2026-06-27 04:13:40
[2026-06-27 04:13:40,465.465 INFO    ] 2026-06-27 04:13:40
[2026-06-27 04:13:40,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:13:40,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:13:40,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:13:40,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:13:40,886.886 INFO    ] time= 27/06/2026 04:13:40
[2026-06-27 04:13:40,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:13:40,914.914 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:13:40,980.980 INFO    ] No existing commands found in stream
[2026-06-27 04:13:45,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:13:45,992.992 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-27 04:13:48,680.680 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 04:13:48,681.681 INFO    ] Checking for system updates...
[2026-06-27 04:13:48,703.703 INFO    ] 200
[2026-06-27 04:13:48,704.704 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:13:48,736.736 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:13:48,737.737 INFO    ] No update needed
[2026-06-27 04:13:48,738.738 INFO    ] Checking for camera pi updates...
[2026-06-27 04:13:48,758.758 INFO    ] 200
[2026-06-27 04:13:48,760.760 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:13:48,784.784 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:13:48,825.825 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:13:48,826.826 INFO    ] No camera update needed
[2026-06-27 04:13:48,828.828 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:13:48,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:13:48,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:13:48,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:13:50,875.875 INFO    ] ================================================
[2026-06-27 04:13:50,891.891 INFO    ] Launching Daemon at Sat Jun 27 04:13:50 IST 2026
[2026-06-27 04:13:50,902.902 INFO    ] ================================================
[2026-06-27 04:13:51,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:13:51
[2026-06-27 04:13:51,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:13:51,718.718 INFO    ] Initializing speech engine...
[2026-06-27 04:13:51,722.722 INFO    ] 2026-06-27 04:13:51
[2026-06-27 04:13:51,941.941 INFO    ] 2026-06-27 04:13:51
[2026-06-27 04:13:51,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:13:52,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:13:52,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:13:52,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:13:52,381.381 INFO    ] time= 27/06/2026 04:13:52
[2026-06-27 04:13:52,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:13:52,389.389 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:13:52,480.480 INFO    ] No existing commands found in stream
[2026-06-27 04:13:57,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:13:57,497.497 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-27 04:13:58,153.153 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 04:13:58,155.155 INFO    ] Checking for system updates...
[2026-06-27 04:13:58,175.175 INFO    ] 200
[2026-06-27 04:13:58,177.177 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:13:58,210.210 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:13:58,211.211 INFO    ] No update needed
[2026-06-27 04:13:58,212.212 INFO    ] Checking for camera pi updates...
[2026-06-27 04:13:58,232.232 INFO    ] 200
[2026-06-27 04:13:58,233.233 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:13:58,258.258 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:13:58,297.297 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:13:58,298.298 INFO    ] No camera update needed
[2026-06-27 04:13:58,299.299 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:13:58,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:13:58,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:13:58,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:14:00,347.347 INFO    ] ================================================
[2026-06-27 04:14:00,362.362 INFO    ] Launching Daemon at Sat Jun 27 04:14:00 IST 2026
[2026-06-27 04:14:00,374.374 INFO    ] ================================================
[2026-06-27 04:14:00,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:14:00
[2026-06-27 04:14:01,095.095 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:14:01,238.238 INFO    ] Initializing speech engine...
[2026-06-27 04:14:01,243.243 INFO    ] 2026-06-27 04:14:01
[2026-06-27 04:14:01,446.446 INFO    ] 2026-06-27 04:14:01
[2026-06-27 04:14:01,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:14:01,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:14:01,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:14:01,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:14:01,769.769 INFO    ] time= 27/06/2026 04:14:01
[2026-06-27 04:14:01,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:14:01,773.773 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:14:01,840.840 INFO    ] No existing commands found in stream
[2026-06-27 04:14:06,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:14:06,853.853 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-27 04:14:10,914.914 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 04:14:10,915.915 INFO    ] Checking for system updates...
[2026-06-27 04:14:10,936.936 INFO    ] 200
[2026-06-27 04:14:10,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:14:10,968.968 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:14:10,969.969 INFO    ] No update needed
[2026-06-27 04:14:10,970.970 INFO    ] Checking for camera pi updates...
[2026-06-27 04:14:10,990.990 INFO    ] 200
[2026-06-27 04:14:10,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:14:11,014.014 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:14:11,054.054 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:14:11,055.055 INFO    ] No camera update needed
[2026-06-27 04:14:11,056.056 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:14:11,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:14:11,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:14:11,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:14:13,103.103 INFO    ] ================================================
[2026-06-27 04:14:13,118.118 INFO    ] Launching Daemon at Sat Jun 27 04:14:13 IST 2026
[2026-06-27 04:14:13,130.130 INFO    ] ================================================
[2026-06-27 04:14:13,486.486 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:14:13
[2026-06-27 04:14:13,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:14:13,948.948 INFO    ] Initializing speech engine...
[2026-06-27 04:14:13,953.953 INFO    ] 2026-06-27 04:14:13
[2026-06-27 04:14:14,158.158 INFO    ] 2026-06-27 04:14:14
[2026-06-27 04:14:14,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:14:14,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:14:14,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:14:14,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:14:14,600.600 INFO    ] time= 27/06/2026 04:14:14
[2026-06-27 04:14:14,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:14:14,608.608 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:14:14,676.676 INFO    ] No existing commands found in stream
[2026-06-27 04:14:19,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:14:19,689.689 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-27 04:14:23,345.345 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 04:14:23,346.346 INFO    ] Checking for system updates...
[2026-06-27 04:14:23,367.367 INFO    ] 200
[2026-06-27 04:14:23,368.368 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:14:23,401.401 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:14:23,402.402 INFO    ] No update needed
[2026-06-27 04:14:23,404.404 INFO    ] Checking for camera pi updates...
[2026-06-27 04:14:23,423.423 INFO    ] 200
[2026-06-27 04:14:23,425.425 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:14:23,450.450 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:14:23,487.487 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:14:23,489.489 INFO    ] No camera update needed
[2026-06-27 04:14:23,490.490 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:14:23,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:14:23,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:14:23,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:14:25,536.536 INFO    ] ================================================
[2026-06-27 04:14:25,552.552 INFO    ] Launching Daemon at Sat Jun 27 04:14:25 IST 2026
[2026-06-27 04:14:25,563.563 INFO    ] ================================================
[2026-06-27 04:14:25,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:14:25
[2026-06-27 04:14:26,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:14:26,351.351 INFO    ] Initializing speech engine...
[2026-06-27 04:14:26,356.356 INFO    ] 2026-06-27 04:14:26
[2026-06-27 04:14:26,574.574 INFO    ] 2026-06-27 04:14:26
[2026-06-27 04:14:26,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:14:26,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:14:26,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:14:26,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:14:27,013.013 INFO    ] time= 27/06/2026 04:14:26
[2026-06-27 04:14:27,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:14:27,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:14:27,091.091 INFO    ] No existing commands found in stream
[2026-06-27 04:14:32,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:14:32,102.102 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-27 04:14:35,803.803 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:14:35,805.805 INFO    ] Checking for system updates...
[2026-06-27 04:14:35,826.826 INFO    ] 200
[2026-06-27 04:14:35,827.827 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:14:35,862.862 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:14:35,864.864 INFO    ] No update needed
[2026-06-27 04:14:35,865.865 INFO    ] Checking for camera pi updates...
[2026-06-27 04:14:35,885.885 INFO    ] 200
[2026-06-27 04:14:35,886.886 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:14:35,909.909 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:14:35,931.931 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:14:35,932.932 INFO    ] No camera update needed
[2026-06-27 04:14:35,934.934 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:14:35,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:14:35,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:14:35,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:14:37,978.978 INFO    ] ================================================
[2026-06-27 04:14:37,994.994 INFO    ] Launching Daemon at Sat Jun 27 04:14:37 IST 2026
[2026-06-27 04:14:38,005.005 INFO    ] ================================================
[2026-06-27 04:14:38,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:14:38
[2026-06-27 04:14:38,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:14:38,829.829 INFO    ] Initializing speech engine...
[2026-06-27 04:14:38,835.835 INFO    ] 2026-06-27 04:14:38
[2026-06-27 04:14:39,039.039 INFO    ] 2026-06-27 04:14:39
[2026-06-27 04:14:39,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:14:39,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:14:39,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:14:39,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:14:39,458.458 INFO    ] time= 27/06/2026 04:14:39
[2026-06-27 04:14:39,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:14:39,484.484 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:14:39,556.556 INFO    ] No existing commands found in stream
[2026-06-27 04:14:44,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:14:44,573.573 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-27 04:14:46,000.000 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 04:14:46,002.002 INFO    ] Checking for system updates...
[2026-06-27 04:14:46,023.023 INFO    ] 200
[2026-06-27 04:14:46,024.024 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:14:46,057.057 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:14:46,059.059 INFO    ] No update needed
[2026-06-27 04:14:46,060.060 INFO    ] Checking for camera pi updates...
[2026-06-27 04:14:46,082.082 INFO    ] 200
[2026-06-27 04:14:46,083.083 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:14:46,106.106 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:14:46,146.146 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:14:46,148.148 INFO    ] No camera update needed
[2026-06-27 04:14:46,149.149 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:14:46,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:14:46,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:14:46,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:14:48,197.197 INFO    ] ================================================
[2026-06-27 04:14:48,212.212 INFO    ] Launching Daemon at Sat Jun 27 04:14:48 IST 2026
[2026-06-27 04:14:48,223.223 INFO    ] ================================================
[2026-06-27 04:14:48,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:14:48
[2026-06-27 04:14:48,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:14:49,012.012 INFO    ] Initializing speech engine...
[2026-06-27 04:14:49,017.017 INFO    ] 2026-06-27 04:14:49
[2026-06-27 04:14:49,219.219 INFO    ] 2026-06-27 04:14:49
[2026-06-27 04:14:49,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:14:49,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:14:49,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:14:49,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:14:49,656.656 INFO    ] time= 27/06/2026 04:14:49
[2026-06-27 04:14:49,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:14:49,662.662 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:14:49,729.729 INFO    ] No existing commands found in stream
[2026-06-27 04:14:54,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:14:54,741.741 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-27 04:14:57,571.571 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 04:14:57,572.572 INFO    ] Checking for system updates...
[2026-06-27 04:14:57,594.594 INFO    ] 200
[2026-06-27 04:14:57,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:14:57,626.626 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:14:57,627.627 INFO    ] No update needed
[2026-06-27 04:14:57,628.628 INFO    ] Checking for camera pi updates...
[2026-06-27 04:14:57,648.648 INFO    ] 200
[2026-06-27 04:14:57,650.650 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:14:57,675.675 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:14:57,714.714 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:14:57,715.715 INFO    ] No camera update needed
[2026-06-27 04:14:57,716.716 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:14:57,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:14:57,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:14:57,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:14:59,762.762 INFO    ] ================================================
[2026-06-27 04:14:59,779.779 INFO    ] Launching Daemon at Sat Jun 27 04:14:59 IST 2026
[2026-06-27 04:14:59,790.790 INFO    ] ================================================
[2026-06-27 04:15:00,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:15:00
[2026-06-27 04:15:00,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:15:00,630.630 INFO    ] Initializing speech engine...
[2026-06-27 04:15:00,636.636 INFO    ] 2026-06-27 04:15:00
[2026-06-27 04:15:00,840.840 INFO    ] 2026-06-27 04:15:00
[2026-06-27 04:15:00,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:15:01,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:15:01,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:15:01,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:15:01,279.279 INFO    ] time= 27/06/2026 04:15:01
[2026-06-27 04:15:01,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:15:01,287.287 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:15:01,354.354 INFO    ] No existing commands found in stream
[2026-06-27 04:15:06,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:15:06,366.366 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-27 04:15:09,741.741 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 04:15:09,742.742 INFO    ] Checking for system updates...
[2026-06-27 04:15:09,763.763 INFO    ] 200
[2026-06-27 04:15:09,765.765 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:15:09,798.798 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:15:09,799.799 INFO    ] No update needed
[2026-06-27 04:15:09,800.800 INFO    ] Checking for camera pi updates...
[2026-06-27 04:15:09,823.823 INFO    ] 200
[2026-06-27 04:15:09,825.825 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:15:09,850.850 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:15:09,888.888 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:15:09,890.890 INFO    ] No camera update needed
[2026-06-27 04:15:09,891.891 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:15:09,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:15:09,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:15:09,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:15:11,940.940 INFO    ] ================================================
[2026-06-27 04:15:11,955.955 INFO    ] Launching Daemon at Sat Jun 27 04:15:11 IST 2026
[2026-06-27 04:15:11,967.967 INFO    ] ================================================
[2026-06-27 04:15:12,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:15:12
[2026-06-27 04:15:12,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:15:12,799.799 INFO    ] Initializing speech engine...
[2026-06-27 04:15:12,805.805 INFO    ] 2026-06-27 04:15:12
[2026-06-27 04:15:13,016.016 INFO    ] 2026-06-27 04:15:12
[2026-06-27 04:15:13,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:15:13,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:15:13,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:15:13,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:15:13,464.464 INFO    ] time= 27/06/2026 04:15:13
[2026-06-27 04:15:13,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:15:13,471.471 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:15:13,540.540 INFO    ] No existing commands found in stream
[2026-06-27 04:15:18,555.555 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:15:18,558.558 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-27 04:15:20,324.324 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:15:20,326.326 INFO    ] Checking for system updates...
[2026-06-27 04:15:20,348.348 INFO    ] 200
[2026-06-27 04:15:20,350.350 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:15:20,384.384 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:15:20,385.385 INFO    ] No update needed
[2026-06-27 04:15:20,387.387 INFO    ] Checking for camera pi updates...
[2026-06-27 04:15:20,407.407 INFO    ] 200
[2026-06-27 04:15:20,408.408 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:15:20,434.434 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:15:20,459.459 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:15:20,461.461 INFO    ] No camera update needed
[2026-06-27 04:15:20,462.462 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:15:20,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:15:20,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:15:20,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:15:22,510.510 INFO    ] ================================================
[2026-06-27 04:15:22,527.527 INFO    ] Launching Daemon at Sat Jun 27 04:15:22 IST 2026
[2026-06-27 04:15:22,538.538 INFO    ] ================================================
[2026-06-27 04:15:22,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:15:22
[2026-06-27 04:15:23,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:15:23,328.328 INFO    ] Initializing speech engine...
[2026-06-27 04:15:23,331.331 INFO    ] 2026-06-27 04:15:23
[2026-06-27 04:15:23,540.540 INFO    ] 2026-06-27 04:15:23
[2026-06-27 04:15:23,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:15:23,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:15:23,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:15:23,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:15:23,963.963 INFO    ] time= 27/06/2026 04:15:23
[2026-06-27 04:15:23,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:15:23,991.991 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:15:24,058.058 INFO    ] No existing commands found in stream
[2026-06-27 04:15:29,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:15:29,070.070 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-27 04:15:32,784.784 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 04:15:32,786.786 INFO    ] Checking for system updates...
[2026-06-27 04:15:32,812.812 INFO    ] 200
[2026-06-27 04:15:32,814.814 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:15:32,856.856 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:15:32,857.857 INFO    ] No update needed
[2026-06-27 04:15:32,858.858 INFO    ] Checking for camera pi updates...
[2026-06-27 04:15:32,878.878 INFO    ] 200
[2026-06-27 04:15:32,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:15:32,903.903 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:15:32,928.928 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:15:32,929.929 INFO    ] No camera update needed
[2026-06-27 04:15:32,930.930 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:15:32,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:15:32,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:15:32,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:15:34,980.980 INFO    ] ================================================
[2026-06-27 04:15:35,997.997 INFO    ] Launching Daemon at Sat Jun 27 04:15:34 IST 2026
[2026-06-27 04:15:35,010.010 INFO    ] ================================================
[2026-06-27 04:15:35,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:15:35
[2026-06-27 04:15:35,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:15:35,864.864 INFO    ] Initializing speech engine...
[2026-06-27 04:15:35,869.869 INFO    ] 2026-06-27 04:15:35
[2026-06-27 04:15:36,085.085 INFO    ] 2026-06-27 04:15:36
[2026-06-27 04:15:36,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:15:36,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:15:36,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:15:36,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:15:36,522.522 INFO    ] time= 27/06/2026 04:15:36
[2026-06-27 04:15:36,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:15:36,559.559 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:15:36,628.628 INFO    ] No existing commands found in stream
[2026-06-27 04:15:41,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:15:41,641.641 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-27 04:15:42,551.551 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:15:42,552.552 INFO    ] Checking for system updates...
[2026-06-27 04:15:42,605.605 INFO    ] 200
[2026-06-27 04:15:42,606.606 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:15:42,637.637 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:15:42,638.638 INFO    ] No update needed
[2026-06-27 04:15:42,639.639 INFO    ] Checking for camera pi updates...
[2026-06-27 04:15:42,663.663 INFO    ] 200
[2026-06-27 04:15:42,664.664 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:15:42,689.689 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:15:42,714.714 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:15:42,716.716 INFO    ] No camera update needed
[2026-06-27 04:15:42,717.717 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:15:42,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:15:42,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:15:42,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:15:44,764.764 INFO    ] ================================================
[2026-06-27 04:15:44,780.780 INFO    ] Launching Daemon at Sat Jun 27 04:15:44 IST 2026
[2026-06-27 04:15:44,791.791 INFO    ] ================================================
[2026-06-27 04:15:45,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:15:45
[2026-06-27 04:15:45,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:15:45,607.607 INFO    ] Initializing speech engine...
[2026-06-27 04:15:45,617.617 INFO    ] 2026-06-27 04:15:45
[2026-06-27 04:15:45,822.822 INFO    ] 2026-06-27 04:15:45
[2026-06-27 04:15:45,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:15:46,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:15:46,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:15:46,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:15:46,275.275 INFO    ] time= 27/06/2026 04:15:46
[2026-06-27 04:15:46,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:15:46,332.332 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:15:46,404.404 INFO    ] No existing commands found in stream
[2026-06-27 04:15:51,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:15:51,416.416 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-27 04:15:55,580.580 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:15:55,581.581 INFO    ] Checking for system updates...
[2026-06-27 04:15:55,603.603 INFO    ] 200
[2026-06-27 04:15:55,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:15:55,637.637 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:15:55,638.638 INFO    ] No update needed
[2026-06-27 04:15:55,639.639 INFO    ] Checking for camera pi updates...
[2026-06-27 04:15:55,659.659 INFO    ] 200
[2026-06-27 04:15:55,660.660 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:15:55,686.686 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:15:55,728.728 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:15:55,730.730 INFO    ] No camera update needed
[2026-06-27 04:15:55,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:15:55,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:15:55,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:15:55,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:15:57,778.778 INFO    ] ================================================
[2026-06-27 04:15:57,793.793 INFO    ] Launching Daemon at Sat Jun 27 04:15:57 IST 2026
[2026-06-27 04:15:57,804.804 INFO    ] ================================================
[2026-06-27 04:15:58,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:15:58
[2026-06-27 04:15:58,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:15:58,626.626 INFO    ] Initializing speech engine...
[2026-06-27 04:15:58,630.630 INFO    ] 2026-06-27 04:15:58
[2026-06-27 04:15:58,827.827 INFO    ] 2026-06-27 04:15:58
[2026-06-27 04:15:58,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:15:59,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:15:59,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:15:59,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:15:59,326.326 INFO    ] time= 27/06/2026 04:15:59
[2026-06-27 04:15:59,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:15:59,358.358 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:15:59,462.462 INFO    ] No existing commands found in stream
[2026-06-27 04:16:04,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:16:04,479.479 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-27 04:16:08,733.733 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:16:08,734.734 INFO    ] Checking for system updates...
[2026-06-27 04:16:08,755.755 INFO    ] 200
[2026-06-27 04:16:08,757.757 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:16:08,788.788 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:16:08,789.789 INFO    ] No update needed
[2026-06-27 04:16:08,791.791 INFO    ] Checking for camera pi updates...
[2026-06-27 04:16:08,812.812 INFO    ] 200
[2026-06-27 04:16:08,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:16:08,837.837 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:16:08,875.875 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:16:08,876.876 INFO    ] No camera update needed
[2026-06-27 04:16:08,878.878 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:16:08,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:16:08,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:16:08,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:16:10,923.923 INFO    ] ================================================
[2026-06-27 04:16:10,938.938 INFO    ] Launching Daemon at Sat Jun 27 04:16:10 IST 2026
[2026-06-27 04:16:10,949.949 INFO    ] ================================================
[2026-06-27 04:16:11,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:16:11
[2026-06-27 04:16:11,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:16:11,756.756 INFO    ] Initializing speech engine...
[2026-06-27 04:16:11,768.768 INFO    ] 2026-06-27 04:16:11
[2026-06-27 04:16:11,984.984 INFO    ] 2026-06-27 04:16:11
[2026-06-27 04:16:12,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:16:12,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:16:12,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:16:12,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:16:12,410.410 INFO    ] time= 27/06/2026 04:16:12
[2026-06-27 04:16:12,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:16:12,445.445 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:16:12,512.512 INFO    ] No existing commands found in stream
[2026-06-27 04:16:17,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:16:17,527.527 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-27 04:16:19,204.204 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 04:16:19,206.206 INFO    ] Checking for system updates...
[2026-06-27 04:16:19,228.228 INFO    ] 200
[2026-06-27 04:16:19,229.229 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:16:19,260.260 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:16:19,262.262 INFO    ] No update needed
[2026-06-27 04:16:19,263.263 INFO    ] Checking for camera pi updates...
[2026-06-27 04:16:19,285.285 INFO    ] 200
[2026-06-27 04:16:19,286.286 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:16:19,310.310 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:16:19,354.354 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:16:19,355.355 INFO    ] No camera update needed
[2026-06-27 04:16:19,356.356 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:16:19,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:16:19,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:16:19,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:16:21,404.404 INFO    ] ================================================
[2026-06-27 04:16:21,420.420 INFO    ] Launching Daemon at Sat Jun 27 04:16:21 IST 2026
[2026-06-27 04:16:21,430.430 INFO    ] ================================================
[2026-06-27 04:16:21,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:16:21
[2026-06-27 04:16:22,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:16:22,212.212 INFO    ] Initializing speech engine...
[2026-06-27 04:16:22,217.217 INFO    ] 2026-06-27 04:16:22
[2026-06-27 04:16:22,439.439 INFO    ] 2026-06-27 04:16:22
[2026-06-27 04:16:22,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:16:22,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:16:22,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:16:22,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:16:22,747.747 INFO    ] time= 27/06/2026 04:16:22
[2026-06-27 04:16:22,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:16:22,759.759 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:16:22,878.878 INFO    ] No existing commands found in stream
[2026-06-27 04:16:27,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:16:27,893.893 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-27 04:16:31,177.177 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:16:31,178.178 INFO    ] Checking for system updates...
[2026-06-27 04:16:31,199.199 INFO    ] 200
[2026-06-27 04:16:31,201.201 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:16:31,235.235 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:16:31,236.236 INFO    ] No update needed
[2026-06-27 04:16:31,238.238 INFO    ] Checking for camera pi updates...
[2026-06-27 04:16:31,257.257 INFO    ] 200
[2026-06-27 04:16:31,259.259 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:16:31,284.284 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:16:31,333.333 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:16:31,335.335 INFO    ] No camera update needed
[2026-06-27 04:16:31,336.336 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:16:31,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:16:31,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:16:31,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:16:33,375.375 INFO    ] ================================================
[2026-06-27 04:16:33,390.390 INFO    ] Launching Daemon at Sat Jun 27 04:16:33 IST 2026
[2026-06-27 04:16:33,401.401 INFO    ] ================================================
[2026-06-27 04:16:33,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:16:33
[2026-06-27 04:16:34,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:16:34,211.211 INFO    ] Initializing speech engine...
[2026-06-27 04:16:34,216.216 INFO    ] 2026-06-27 04:16:34
[2026-06-27 04:16:34,433.433 INFO    ] 2026-06-27 04:16:34
[2026-06-27 04:16:34,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:16:34,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:16:34,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:16:34,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:16:34,819.819 INFO    ] time= 27/06/2026 04:16:34
[2026-06-27 04:16:34,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:16:34,822.822 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:16:34,877.877 INFO    ] No existing commands found in stream
[2026-06-27 04:16:39,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:16:39,889.889 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-27 04:16:42,005.005 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 04:16:42,007.007 INFO    ] Checking for system updates...
[2026-06-27 04:16:42,028.028 INFO    ] 200
[2026-06-27 04:16:42,029.029 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:16:42,061.061 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:16:42,062.062 INFO    ] No update needed
[2026-06-27 04:16:42,064.064 INFO    ] Checking for camera pi updates...
[2026-06-27 04:16:42,086.086 INFO    ] 200
[2026-06-27 04:16:42,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:16:42,114.114 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:16:42,153.153 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:16:42,155.155 INFO    ] No camera update needed
[2026-06-27 04:16:42,157.157 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:16:42,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:16:42,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:16:42,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:16:44,205.205 INFO    ] ================================================
[2026-06-27 04:16:44,220.220 INFO    ] Launching Daemon at Sat Jun 27 04:16:44 IST 2026
[2026-06-27 04:16:44,231.231 INFO    ] ================================================
[2026-06-27 04:16:44,566.566 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:16:44
[2026-06-27 04:16:44,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:16:45,015.015 INFO    ] Initializing speech engine...
[2026-06-27 04:16:45,018.018 INFO    ] 2026-06-27 04:16:45
[2026-06-27 04:16:45,214.214 INFO    ] 2026-06-27 04:16:45
[2026-06-27 04:16:45,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:16:45,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:16:45,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:16:45,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:16:45,668.668 INFO    ] time= 27/06/2026 04:16:45
[2026-06-27 04:16:45,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:16:45,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:16:45,815.815 INFO    ] No existing commands found in stream
[2026-06-27 04:16:50,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:16:50,829.829 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-27 04:16:54,111.111 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:16:54,113.113 INFO    ] Checking for system updates...
[2026-06-27 04:16:54,134.134 INFO    ] 200
[2026-06-27 04:16:54,135.135 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:16:54,170.170 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:16:54,171.171 INFO    ] No update needed
[2026-06-27 04:16:54,172.172 INFO    ] Checking for camera pi updates...
[2026-06-27 04:16:54,192.192 INFO    ] 200
[2026-06-27 04:16:54,193.193 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:16:54,219.219 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:16:54,245.245 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:16:54,247.247 INFO    ] No camera update needed
[2026-06-27 04:16:54,248.248 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:16:54,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:16:54,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:16:54,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:16:56,294.294 INFO    ] ================================================
[2026-06-27 04:16:56,309.309 INFO    ] Launching Daemon at Sat Jun 27 04:16:56 IST 2026
[2026-06-27 04:16:56,320.320 INFO    ] ================================================
[2026-06-27 04:16:56,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:16:56
[2026-06-27 04:16:57,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:16:57,139.139 INFO    ] Initializing speech engine...
[2026-06-27 04:16:57,149.149 INFO    ] 2026-06-27 04:16:57
[2026-06-27 04:16:57,357.357 INFO    ] 2026-06-27 04:16:57
[2026-06-27 04:16:57,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:16:57,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:16:57,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:16:57,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:16:57,783.783 INFO    ] time= 27/06/2026 04:16:57
[2026-06-27 04:16:57,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:16:57,814.814 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:16:57,881.881 INFO    ] No existing commands found in stream
[2026-06-27 04:17:02,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:17:02,886.886 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-27 04:17:03,801.801 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:17:03,803.803 INFO    ] Checking for system updates...
[2026-06-27 04:17:03,824.824 INFO    ] 200
[2026-06-27 04:17:03,826.826 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:17:03,860.860 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:17:03,861.861 INFO    ] No update needed
[2026-06-27 04:17:03,863.863 INFO    ] Checking for camera pi updates...
[2026-06-27 04:17:03,884.884 INFO    ] 200
[2026-06-27 04:17:03,886.886 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:17:03,909.909 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:17:03,932.932 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:17:03,934.934 INFO    ] No camera update needed
[2026-06-27 04:17:03,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:17:03,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:17:03,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:17:03,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:17:05,984.984 INFO    ] ================================================
[2026-06-27 04:17:06,000.000 INFO    ] Launching Daemon at Sat Jun 27 04:17:05 IST 2026
[2026-06-27 04:17:06,011.011 INFO    ] ================================================
[2026-06-27 04:17:06,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:17:06
[2026-06-27 04:17:06,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:17:06,878.878 INFO    ] Initializing speech engine...
[2026-06-27 04:17:06,883.883 INFO    ] 2026-06-27 04:17:06
[2026-06-27 04:17:07,093.093 INFO    ] 2026-06-27 04:17:07
[2026-06-27 04:17:07,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:17:07,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:17:07,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:17:07,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:17:07,522.522 INFO    ] time= 27/06/2026 04:17:07
[2026-06-27 04:17:07,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:17:07,552.552 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:17:07,620.620 INFO    ] No existing commands found in stream
[2026-06-27 04:17:12,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:17:12,638.638 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-27 04:17:13,645.645 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:17:13,647.647 INFO    ] Checking for system updates...
[2026-06-27 04:17:13,669.669 INFO    ] 200
[2026-06-27 04:17:13,670.670 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:17:13,702.702 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:17:13,703.703 INFO    ] No update needed
[2026-06-27 04:17:13,705.705 INFO    ] Checking for camera pi updates...
[2026-06-27 04:17:13,726.726 INFO    ] 200
[2026-06-27 04:17:13,727.727 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:17:13,753.753 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:17:13,791.791 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:17:13,793.793 INFO    ] No camera update needed
[2026-06-27 04:17:13,794.794 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:17:13,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:17:13,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:17:13,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:17:15,844.844 INFO    ] ================================================
[2026-06-27 04:17:15,859.859 INFO    ] Launching Daemon at Sat Jun 27 04:17:15 IST 2026
[2026-06-27 04:17:15,870.870 INFO    ] ================================================
[2026-06-27 04:17:16,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:17:16
[2026-06-27 04:17:16,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:17:16,669.669 INFO    ] Initializing speech engine...
[2026-06-27 04:17:16,679.679 INFO    ] 2026-06-27 04:17:16
[2026-06-27 04:17:16,886.886 INFO    ] 2026-06-27 04:17:16
[2026-06-27 04:17:16,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:17:17,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:17:17,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:17:17,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:17:17,340.340 INFO    ] time= 27/06/2026 04:17:17
[2026-06-27 04:17:17,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:17:17,347.347 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:17:17,415.415 INFO    ] No existing commands found in stream
[2026-06-27 04:17:22,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:17:22,430.430 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-27 04:17:23,303.303 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:17:23,305.305 INFO    ] Checking for system updates...
[2026-06-27 04:17:23,328.328 INFO    ] 200
[2026-06-27 04:17:23,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:17:23,363.363 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:17:23,365.365 INFO    ] No update needed
[2026-06-27 04:17:23,366.366 INFO    ] Checking for camera pi updates...
[2026-06-27 04:17:23,388.388 INFO    ] 200
[2026-06-27 04:17:23,389.389 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:17:23,418.418 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:17:23,462.462 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:17:23,464.464 INFO    ] No camera update needed
[2026-06-27 04:17:23,465.465 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:17:23,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:17:23,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:17:23,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:17:25,512.512 INFO    ] ================================================
[2026-06-27 04:17:25,527.527 INFO    ] Launching Daemon at Sat Jun 27 04:17:25 IST 2026
[2026-06-27 04:17:25,538.538 INFO    ] ================================================
[2026-06-27 04:17:25,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:17:25
[2026-06-27 04:17:26,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:17:26,325.325 INFO    ] Initializing speech engine...
[2026-06-27 04:17:26,330.330 INFO    ] 2026-06-27 04:17:26
[2026-06-27 04:17:26,538.538 INFO    ] 2026-06-27 04:17:26
[2026-06-27 04:17:26,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:17:26,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:17:26,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:17:26,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:17:26,979.979 INFO    ] time= 27/06/2026 04:17:26
[2026-06-27 04:17:26,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:17:26,996.996 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:17:27,064.064 INFO    ] No existing commands found in stream
[2026-06-27 04:17:32,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:17:32,074.074 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-27 04:17:34,232.232 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:17:34,233.233 INFO    ] Checking for system updates...
[2026-06-27 04:17:34,254.254 INFO    ] 200
[2026-06-27 04:17:34,256.256 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:17:34,287.287 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:17:34,288.288 INFO    ] No update needed
[2026-06-27 04:17:34,289.289 INFO    ] Checking for camera pi updates...
[2026-06-27 04:17:34,309.309 INFO    ] 200
[2026-06-27 04:17:34,310.310 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:17:34,339.339 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:17:34,478.478 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:17:34,479.479 INFO    ] No camera update needed
[2026-06-27 04:17:34,480.480 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:17:34,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:17:34,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:17:34,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:17:36,525.525 INFO    ] ================================================
[2026-06-27 04:17:36,540.540 INFO    ] Launching Daemon at Sat Jun 27 04:17:36 IST 2026
[2026-06-27 04:17:36,551.551 INFO    ] ================================================
[2026-06-27 04:17:36,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:17:36
[2026-06-27 04:17:37,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:17:37,326.326 INFO    ] Initializing speech engine...
[2026-06-27 04:17:37,330.330 INFO    ] 2026-06-27 04:17:37
[2026-06-27 04:17:37,527.527 INFO    ] 2026-06-27 04:17:37
[2026-06-27 04:17:37,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:17:37,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:17:37,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:17:37,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:17:37,964.964 INFO    ] time= 27/06/2026 04:17:37
[2026-06-27 04:17:38,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:17:38,030.030 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:17:38,126.126 INFO    ] No existing commands found in stream
[2026-06-27 04:17:43,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:17:43,138.138 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-27 04:17:43,812.812 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 04:17:43,814.814 INFO    ] Checking for system updates...
[2026-06-27 04:17:43,836.836 INFO    ] 200
[2026-06-27 04:17:43,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:17:43,870.870 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:17:43,871.871 INFO    ] No update needed
[2026-06-27 04:17:43,872.872 INFO    ] Checking for camera pi updates...
[2026-06-27 04:17:43,892.892 INFO    ] 200
[2026-06-27 04:17:43,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:17:43,918.918 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:17:43,956.956 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:17:43,958.958 INFO    ] No camera update needed
[2026-06-27 04:17:43,959.959 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:17:43,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:17:43,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:17:43,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:17:46,006.006 INFO    ] ================================================
[2026-06-27 04:17:46,022.022 INFO    ] Launching Daemon at Sat Jun 27 04:17:46 IST 2026
[2026-06-27 04:17:46,034.034 INFO    ] ================================================
[2026-06-27 04:17:46,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:17:46
[2026-06-27 04:17:46,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:17:46,904.904 INFO    ] Initializing speech engine...
[2026-06-27 04:17:46,908.908 INFO    ] 2026-06-27 04:17:46
[2026-06-27 04:17:47,115.115 INFO    ] 2026-06-27 04:17:47
[2026-06-27 04:17:47,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:17:47,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:17:47,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:17:47,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:17:47,541.541 INFO    ] time= 27/06/2026 04:17:47
[2026-06-27 04:17:47,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:17:47,571.571 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:17:47,638.638 INFO    ] No existing commands found in stream
[2026-06-27 04:17:52,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:17:52,651.651 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-27 04:17:54,370.370 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 04:17:54,371.371 INFO    ] Checking for system updates...
[2026-06-27 04:17:54,393.393 INFO    ] 200
[2026-06-27 04:17:54,394.394 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:17:54,425.425 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:17:54,427.427 INFO    ] No update needed
[2026-06-27 04:17:54,428.428 INFO    ] Checking for camera pi updates...
[2026-06-27 04:17:54,447.447 INFO    ] 200
[2026-06-27 04:17:54,449.449 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:17:54,474.474 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:17:54,497.497 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:17:54,499.499 INFO    ] No camera update needed
[2026-06-27 04:17:54,500.500 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:17:54,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:17:54,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:17:54,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:17:56,546.546 INFO    ] ================================================
[2026-06-27 04:17:56,562.562 INFO    ] Launching Daemon at Sat Jun 27 04:17:56 IST 2026
[2026-06-27 04:17:56,575.575 INFO    ] ================================================
[2026-06-27 04:17:56,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:17:56
[2026-06-27 04:17:57,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:17:57,436.436 INFO    ] Initializing speech engine...
[2026-06-27 04:17:57,446.446 INFO    ] 2026-06-27 04:17:57
[2026-06-27 04:17:57,661.661 INFO    ] 2026-06-27 04:17:57
[2026-06-27 04:17:57,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:17:57,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:17:57,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:17:58,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:17:58,116.116 INFO    ] time= 27/06/2026 04:17:58
[2026-06-27 04:17:58,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:17:58,123.123 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:17:58,192.192 INFO    ] No existing commands found in stream
[2026-06-27 04:18:03,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:18:03,207.207 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-27 04:18:06,703.703 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 04:18:06,705.705 INFO    ] Checking for system updates...
[2026-06-27 04:18:06,726.726 INFO    ] 200
[2026-06-27 04:18:06,728.728 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:18:06,759.759 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:18:06,760.760 INFO    ] No update needed
[2026-06-27 04:18:06,762.762 INFO    ] Checking for camera pi updates...
[2026-06-27 04:18:06,784.784 INFO    ] 200
[2026-06-27 04:18:06,785.785 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:18:06,812.812 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:18:06,849.849 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:18:06,850.850 INFO    ] No camera update needed
[2026-06-27 04:18:06,852.852 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:18:06,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:18:06,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:18:06,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:18:08,900.900 INFO    ] ================================================
[2026-06-27 04:18:08,916.916 INFO    ] Launching Daemon at Sat Jun 27 04:18:08 IST 2026
[2026-06-27 04:18:08,927.927 INFO    ] ================================================
[2026-06-27 04:18:09,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:18:09
[2026-06-27 04:18:09,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:18:09,734.734 INFO    ] Initializing speech engine...
[2026-06-27 04:18:09,744.744 INFO    ] 2026-06-27 04:18:09
[2026-06-27 04:18:09,956.956 INFO    ] 2026-06-27 04:18:09
[2026-06-27 04:18:09,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:18:10,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:18:10,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:18:10,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:18:10,406.406 INFO    ] time= 27/06/2026 04:18:10
[2026-06-27 04:18:10,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:18:10,414.414 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:18:10,483.483 INFO    ] No existing commands found in stream
[2026-06-27 04:18:15,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:18:15,496.496 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-27 04:18:17,885.885 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:18:17,886.886 INFO    ] Checking for system updates...
[2026-06-27 04:18:17,910.910 INFO    ] 200
[2026-06-27 04:18:17,911.911 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:18:17,942.942 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:18:17,943.943 INFO    ] No update needed
[2026-06-27 04:18:17,944.944 INFO    ] Checking for camera pi updates...
[2026-06-27 04:18:17,966.966 INFO    ] 200
[2026-06-27 04:18:17,968.968 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:18:17,991.991 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:18:18,032.032 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:18:18,033.033 INFO    ] No camera update needed
[2026-06-27 04:18:18,034.034 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:18:18,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:18:18,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:18:18,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:18:20,080.080 INFO    ] ================================================
[2026-06-27 04:18:20,096.096 INFO    ] Launching Daemon at Sat Jun 27 04:18:20 IST 2026
[2026-06-27 04:18:20,107.107 INFO    ] ================================================
[2026-06-27 04:18:20,486.486 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:18:20
[2026-06-27 04:18:20,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:18:20,987.987 INFO    ] Initializing speech engine...
[2026-06-27 04:18:20,993.993 INFO    ] 2026-06-27 04:18:20
[2026-06-27 04:18:21,206.206 INFO    ] 2026-06-27 04:18:21
[2026-06-27 04:18:21,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:18:21,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:18:21,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:18:21,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:18:21,635.635 INFO    ] time= 27/06/2026 04:18:21
[2026-06-27 04:18:21,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:18:21,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:18:21,734.734 INFO    ] No existing commands found in stream
[2026-06-27 04:18:26,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:18:26,752.752 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-27 04:18:27,593.593 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:18:27,595.595 INFO    ] Checking for system updates...
[2026-06-27 04:18:27,618.618 INFO    ] 200
[2026-06-27 04:18:27,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:18:27,650.650 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:18:27,651.651 INFO    ] No update needed
[2026-06-27 04:18:27,652.652 INFO    ] Checking for camera pi updates...
[2026-06-27 04:18:27,672.672 INFO    ] 200
[2026-06-27 04:18:27,673.673 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:18:27,697.697 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:18:27,734.734 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:18:27,735.735 INFO    ] No camera update needed
[2026-06-27 04:18:27,737.737 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:18:27,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:18:27,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:18:27,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:18:29,782.782 INFO    ] ================================================
[2026-06-27 04:18:29,798.798 INFO    ] Launching Daemon at Sat Jun 27 04:18:29 IST 2026
[2026-06-27 04:18:29,809.809 INFO    ] ================================================
[2026-06-27 04:18:30,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:18:30
[2026-06-27 04:18:30,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:18:30,591.591 INFO    ] Initializing speech engine...
[2026-06-27 04:18:30,597.597 INFO    ] 2026-06-27 04:18:30
[2026-06-27 04:18:30,801.801 INFO    ] 2026-06-27 04:18:30
[2026-06-27 04:18:30,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:18:31,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:18:31,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:18:31,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:18:31,225.225 INFO    ] time= 27/06/2026 04:18:31
[2026-06-27 04:18:31,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:18:31,255.255 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:18:31,323.323 INFO    ] No existing commands found in stream
[2026-06-27 04:18:36,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:18:36,335.335 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-27 04:18:38,312.312 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:18:38,314.314 INFO    ] Checking for system updates...
[2026-06-27 04:18:38,335.335 INFO    ] 200
[2026-06-27 04:18:38,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:18:38,371.371 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:18:38,372.372 INFO    ] No update needed
[2026-06-27 04:18:38,374.374 INFO    ] Checking for camera pi updates...
[2026-06-27 04:18:38,393.393 INFO    ] 200
[2026-06-27 04:18:38,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:18:38,418.418 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:18:38,457.457 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:18:38,458.458 INFO    ] No camera update needed
[2026-06-27 04:18:38,459.459 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:18:38,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:18:38,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:18:38,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:18:40,505.505 INFO    ] ================================================
[2026-06-27 04:18:40,522.522 INFO    ] Launching Daemon at Sat Jun 27 04:18:40 IST 2026
[2026-06-27 04:18:40,534.534 INFO    ] ================================================
[2026-06-27 04:18:40,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:18:40
[2026-06-27 04:18:41,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:18:41,337.337 INFO    ] Initializing speech engine...
[2026-06-27 04:18:41,342.342 INFO    ] 2026-06-27 04:18:41
[2026-06-27 04:18:41,547.547 INFO    ] 2026-06-27 04:18:41
[2026-06-27 04:18:41,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:18:41,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:18:41,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:18:41,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:18:41,994.994 INFO    ] time= 27/06/2026 04:18:41
[2026-06-27 04:18:41,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:18:42,001.001 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:18:42,069.069 INFO    ] No existing commands found in stream
[2026-06-27 04:18:47,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:18:47,080.080 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-27 04:18:48,457.457 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:18:48,459.459 INFO    ] Checking for system updates...
[2026-06-27 04:18:48,480.480 INFO    ] 200
[2026-06-27 04:18:48,481.481 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:18:48,512.512 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:18:48,513.513 INFO    ] No update needed
[2026-06-27 04:18:48,514.514 INFO    ] Checking for camera pi updates...
[2026-06-27 04:18:48,536.536 INFO    ] 200
[2026-06-27 04:18:48,537.537 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:18:48,561.561 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:18:48,582.582 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:18:48,584.584 INFO    ] No camera update needed
[2026-06-27 04:18:48,585.585 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:18:48,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:18:48,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:18:48,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:18:50,635.635 INFO    ] ================================================
[2026-06-27 04:18:50,651.651 INFO    ] Launching Daemon at Sat Jun 27 04:18:50 IST 2026
[2026-06-27 04:18:50,663.663 INFO    ] ================================================
[2026-06-27 04:18:51,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:18:51
[2026-06-27 04:18:51,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:18:51,496.496 INFO    ] Initializing speech engine...
[2026-06-27 04:18:51,501.501 INFO    ] 2026-06-27 04:18:51
[2026-06-27 04:18:51,708.708 INFO    ] 2026-06-27 04:18:51
[2026-06-27 04:18:51,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:18:51,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:18:51,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:18:52,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:18:52,150.150 INFO    ] time= 27/06/2026 04:18:52
[2026-06-27 04:18:52,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:18:52,158.158 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:18:52,224.224 INFO    ] No existing commands found in stream
[2026-06-27 04:18:57,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:18:57,241.241 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-27 04:18:57,695.695 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:18:57,697.697 INFO    ] Checking for system updates...
[2026-06-27 04:18:57,717.717 INFO    ] 200
[2026-06-27 04:18:57,719.719 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:18:57,750.750 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:18:57,751.751 INFO    ] No update needed
[2026-06-27 04:18:57,752.752 INFO    ] Checking for camera pi updates...
[2026-06-27 04:18:57,772.772 INFO    ] 200
[2026-06-27 04:18:57,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:18:57,802.802 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:18:57,842.842 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:18:57,843.843 INFO    ] No camera update needed
[2026-06-27 04:18:57,845.845 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:18:57,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:18:57,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:18:57,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:18:59,892.892 INFO    ] ================================================
[2026-06-27 04:18:59,908.908 INFO    ] Launching Daemon at Sat Jun 27 04:18:59 IST 2026
[2026-06-27 04:18:59,919.919 INFO    ] ================================================
[2026-06-27 04:19:00,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:19:00
[2026-06-27 04:19:00,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:19:00,722.722 INFO    ] Initializing speech engine...
[2026-06-27 04:19:00,735.735 INFO    ] 2026-06-27 04:19:00
[2026-06-27 04:19:00,944.944 INFO    ] 2026-06-27 04:19:00
[2026-06-27 04:19:00,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:19:01,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:19:01,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:19:01,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:19:01,313.313 INFO    ] time= 27/06/2026 04:19:01
[2026-06-27 04:19:01,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:19:01,319.319 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:19:01,375.375 INFO    ] No existing commands found in stream
[2026-06-27 04:19:06,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:19:06,387.387 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-27 04:19:10,035.035 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 04:19:10,037.037 INFO    ] Checking for system updates...
[2026-06-27 04:19:10,057.057 INFO    ] 200
[2026-06-27 04:19:10,058.058 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:19:10,089.089 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:19:10,091.091 INFO    ] No update needed
[2026-06-27 04:19:10,092.092 INFO    ] Checking for camera pi updates...
[2026-06-27 04:19:10,112.112 INFO    ] 200
[2026-06-27 04:19:10,114.114 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:19:10,137.137 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:19:10,159.159 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:19:10,161.161 INFO    ] No camera update needed
[2026-06-27 04:19:10,162.162 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:19:10,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:19:10,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:19:10,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:19:12,211.211 INFO    ] ================================================
[2026-06-27 04:19:12,227.227 INFO    ] Launching Daemon at Sat Jun 27 04:19:12 IST 2026
[2026-06-27 04:19:12,238.238 INFO    ] ================================================
[2026-06-27 04:19:12,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:19:12
[2026-06-27 04:19:12,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:19:13,124.124 INFO    ] Initializing speech engine...
[2026-06-27 04:19:13,130.130 INFO    ] 2026-06-27 04:19:13
[2026-06-27 04:19:13,337.337 INFO    ] 2026-06-27 04:19:13
[2026-06-27 04:19:13,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:19:13,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:19:13,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:19:13,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:19:13,776.776 INFO    ] time= 27/06/2026 04:19:13
[2026-06-27 04:19:13,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:19:13,783.783 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:19:13,850.850 INFO    ] No existing commands found in stream
[2026-06-27 04:19:18,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:19:18,877.877 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-27 04:19:21,549.549 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:19:21,551.551 INFO    ] Checking for system updates...
[2026-06-27 04:19:21,572.572 INFO    ] 200
[2026-06-27 04:19:21,573.573 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:19:21,604.604 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:19:21,605.605 INFO    ] No update needed
[2026-06-27 04:19:21,607.607 INFO    ] Checking for camera pi updates...
[2026-06-27 04:19:21,627.627 INFO    ] 200
[2026-06-27 04:19:21,629.629 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:19:21,652.652 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:19:21,689.689 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:19:21,691.691 INFO    ] No camera update needed
[2026-06-27 04:19:21,692.692 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:19:21,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:19:21,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:19:21,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:19:23,739.739 INFO    ] ================================================
[2026-06-27 04:19:23,755.755 INFO    ] Launching Daemon at Sat Jun 27 04:19:23 IST 2026
[2026-06-27 04:19:23,766.766 INFO    ] ================================================
[2026-06-27 04:19:24,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:19:24
[2026-06-27 04:19:24,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:19:24,589.589 INFO    ] Initializing speech engine...
[2026-06-27 04:19:24,594.594 INFO    ] 2026-06-27 04:19:24
[2026-06-27 04:19:24,799.799 INFO    ] 2026-06-27 04:19:24
[2026-06-27 04:19:24,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:19:25,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:19:25,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:19:25,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:19:25,240.240 INFO    ] time= 27/06/2026 04:19:25
[2026-06-27 04:19:25,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:19:25,248.248 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:19:25,316.316 INFO    ] No existing commands found in stream
[2026-06-27 04:19:30,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:19:30,332.332 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-27 04:19:32,327.327 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:19:32,329.329 INFO    ] Checking for system updates...
[2026-06-27 04:19:32,351.351 INFO    ] 200
[2026-06-27 04:19:32,352.352 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:19:32,383.383 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:19:32,385.385 INFO    ] No update needed
[2026-06-27 04:19:32,386.386 INFO    ] Checking for camera pi updates...
[2026-06-27 04:19:32,405.405 INFO    ] 200
[2026-06-27 04:19:32,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:19:32,432.432 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:19:32,454.454 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:19:32,455.455 INFO    ] No camera update needed
[2026-06-27 04:19:32,456.456 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:19:32,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:19:32,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:19:32,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:19:34,505.505 INFO    ] ================================================
[2026-06-27 04:19:34,521.521 INFO    ] Launching Daemon at Sat Jun 27 04:19:34 IST 2026
[2026-06-27 04:19:34,532.532 INFO    ] ================================================
[2026-06-27 04:19:34,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:19:34
[2026-06-27 04:19:35,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:19:35,421.421 INFO    ] Initializing speech engine...
[2026-06-27 04:19:35,427.427 INFO    ] 2026-06-27 04:19:35
[2026-06-27 04:19:35,634.634 INFO    ] 2026-06-27 04:19:35
[2026-06-27 04:19:35,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:19:35,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:19:35,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:19:36,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:19:36,066.066 INFO    ] time= 27/06/2026 04:19:36
[2026-06-27 04:19:36,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:19:36,088.088 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:19:36,180.180 INFO    ] No existing commands found in stream
[2026-06-27 04:19:41,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:19:41,197.197 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-27 04:19:42,888.888 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:19:42,890.890 INFO    ] Checking for system updates...
[2026-06-27 04:19:42,911.911 INFO    ] 200
[2026-06-27 04:19:42,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:19:42,944.944 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:19:42,946.946 INFO    ] No update needed
[2026-06-27 04:19:42,947.947 INFO    ] Checking for camera pi updates...
[2026-06-27 04:19:42,967.967 INFO    ] 200
[2026-06-27 04:19:42,969.969 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:19:42,993.993 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:19:43,135.135 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:19:43,137.137 INFO    ] No camera update needed
[2026-06-27 04:19:43,138.138 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:19:43,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:19:43,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:19:43,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:19:45,187.187 INFO    ] ================================================
[2026-06-27 04:19:45,204.204 INFO    ] Launching Daemon at Sat Jun 27 04:19:45 IST 2026
[2026-06-27 04:19:45,215.215 INFO    ] ================================================
[2026-06-27 04:19:45,605.605 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:19:45
[2026-06-27 04:19:45,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:19:46,056.056 INFO    ] Initializing speech engine...
[2026-06-27 04:19:46,060.060 INFO    ] 2026-06-27 04:19:46
[2026-06-27 04:19:46,281.281 INFO    ] 2026-06-27 04:19:46
[2026-06-27 04:19:46,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:19:46,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:19:46,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:19:46,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:19:46,728.728 INFO    ] time= 27/06/2026 04:19:46
[2026-06-27 04:19:46,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:19:46,736.736 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:19:46,804.804 INFO    ] No existing commands found in stream
[2026-06-27 04:19:51,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:19:51,829.829 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-27 04:19:55,248.248 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:19:55,250.250 INFO    ] Checking for system updates...
[2026-06-27 04:19:55,271.271 INFO    ] 200
[2026-06-27 04:19:55,272.272 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:19:55,303.303 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:19:55,305.305 INFO    ] No update needed
[2026-06-27 04:19:55,306.306 INFO    ] Checking for camera pi updates...
[2026-06-27 04:19:55,325.325 INFO    ] 200
[2026-06-27 04:19:55,327.327 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:19:55,350.350 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:19:55,390.390 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:19:55,391.391 INFO    ] No camera update needed
[2026-06-27 04:19:55,393.393 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:19:55,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:19:55,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:19:55,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:19:57,440.440 INFO    ] ================================================
[2026-06-27 04:19:57,457.457 INFO    ] Launching Daemon at Sat Jun 27 04:19:57 IST 2026
[2026-06-27 04:19:57,469.469 INFO    ] ================================================
[2026-06-27 04:19:57,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:19:57
[2026-06-27 04:19:58,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:19:58,268.268 INFO    ] Initializing speech engine...
[2026-06-27 04:19:58,274.274 INFO    ] 2026-06-27 04:19:58
[2026-06-27 04:19:58,477.477 INFO    ] 2026-06-27 04:19:58
[2026-06-27 04:19:58,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:19:58,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:19:58,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:19:58,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:19:58,916.916 INFO    ] time= 27/06/2026 04:19:58
[2026-06-27 04:19:58,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:19:58,923.923 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:19:58,990.990 INFO    ] No existing commands found in stream
[2026-06-27 04:20:03,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:20:04,002.002 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-27 04:20:06,892.892 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 04:20:06,894.894 INFO    ] Checking for system updates...
[2026-06-27 04:20:06,915.915 INFO    ] 200
[2026-06-27 04:20:06,916.916 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:20:06,948.948 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:20:06,949.949 INFO    ] No update needed
[2026-06-27 04:20:06,951.951 INFO    ] Checking for camera pi updates...
[2026-06-27 04:20:06,970.970 INFO    ] 200
[2026-06-27 04:20:06,972.972 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:20:06,995.995 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:20:07,036.036 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:20:07,037.037 INFO    ] No camera update needed
[2026-06-27 04:20:07,038.038 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:20:07,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:20:07,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:20:07,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:20:09,086.086 INFO    ] ================================================
[2026-06-27 04:20:09,103.103 INFO    ] Launching Daemon at Sat Jun 27 04:20:09 IST 2026
[2026-06-27 04:20:09,114.114 INFO    ] ================================================
[2026-06-27 04:20:09,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:20:09
[2026-06-27 04:20:09,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:20:09,990.990 INFO    ] Initializing speech engine...
[2026-06-27 04:20:09,995.995 INFO    ] 2026-06-27 04:20:09
[2026-06-27 04:20:10,204.204 INFO    ] 2026-06-27 04:20:10
[2026-06-27 04:20:10,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:20:10,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:20:10,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:20:10,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:20:10,628.628 INFO    ] time= 27/06/2026 04:20:10
[2026-06-27 04:20:10,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:20:10,656.656 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:20:10,723.723 INFO    ] No existing commands found in stream
[2026-06-27 04:20:15,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:20:15,737.737 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-27 04:20:16,961.961 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:20:16,962.962 INFO    ] Checking for system updates...
[2026-06-27 04:20:16,985.985 INFO    ] 200
[2026-06-27 04:20:16,987.987 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:20:17,024.024 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:20:17,025.025 INFO    ] No update needed
[2026-06-27 04:20:17,027.027 INFO    ] Checking for camera pi updates...
[2026-06-27 04:20:17,047.047 INFO    ] 200
[2026-06-27 04:20:17,049.049 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:20:17,073.073 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:20:17,106.106 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:20:17,107.107 INFO    ] No camera update needed
[2026-06-27 04:20:17,109.109 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:20:17,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:20:17,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:20:17,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:20:19,158.158 INFO    ] ================================================
[2026-06-27 04:20:19,174.174 INFO    ] Launching Daemon at Sat Jun 27 04:20:19 IST 2026
[2026-06-27 04:20:19,185.185 INFO    ] ================================================
[2026-06-27 04:20:19,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:20:19
[2026-06-27 04:20:19,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:20:20,031.031 INFO    ] Initializing speech engine...
[2026-06-27 04:20:20,037.037 INFO    ] 2026-06-27 04:20:20
[2026-06-27 04:20:20,243.243 INFO    ] 2026-06-27 04:20:20
[2026-06-27 04:20:20,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:20:20,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:20:20,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:20:20,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:20:20,672.672 INFO    ] time= 27/06/2026 04:20:20
[2026-06-27 04:20:20,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:20:20,695.695 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:20:20,760.760 INFO    ] No existing commands found in stream
[2026-06-27 04:20:25,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:20:25,775.775 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-27 04:20:27,120.120 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 04:20:27,122.122 INFO    ] Checking for system updates...
[2026-06-27 04:20:27,142.142 INFO    ] 200
[2026-06-27 04:20:27,144.144 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:20:27,174.174 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:20:27,176.176 INFO    ] No update needed
[2026-06-27 04:20:27,177.177 INFO    ] Checking for camera pi updates...
[2026-06-27 04:20:27,201.201 INFO    ] 200
[2026-06-27 04:20:27,202.202 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:20:27,225.225 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:20:27,278.278 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:20:27,279.279 INFO    ] No camera update needed
[2026-06-27 04:20:27,280.280 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:20:27,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:20:27,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:20:27,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:20:29,326.326 INFO    ] ================================================
[2026-06-27 04:20:29,342.342 INFO    ] Launching Daemon at Sat Jun 27 04:20:29 IST 2026
[2026-06-27 04:20:29,352.352 INFO    ] ================================================
[2026-06-27 04:20:29,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:20:29
[2026-06-27 04:20:30,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:20:30,174.174 INFO    ] Initializing speech engine...
[2026-06-27 04:20:30,180.180 INFO    ] 2026-06-27 04:20:30
[2026-06-27 04:20:30,384.384 INFO    ] 2026-06-27 04:20:30
[2026-06-27 04:20:30,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:20:30,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:20:30,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:20:30,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:20:30,827.827 INFO    ] time= 27/06/2026 04:20:30
[2026-06-27 04:20:30,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:20:30,834.834 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:20:30,902.902 INFO    ] No existing commands found in stream
[2026-06-27 04:20:35,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:20:35,918.918 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-27 04:20:39,067.067 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 04:20:39,069.069 INFO    ] Checking for system updates...
[2026-06-27 04:20:39,089.089 INFO    ] 200
[2026-06-27 04:20:39,091.091 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:20:39,121.121 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:20:39,123.123 INFO    ] No update needed
[2026-06-27 04:20:39,125.125 INFO    ] Checking for camera pi updates...
[2026-06-27 04:20:39,145.145 INFO    ] 200
[2026-06-27 04:20:39,146.146 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:20:39,170.170 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:20:39,211.211 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:20:39,212.212 INFO    ] No camera update needed
[2026-06-27 04:20:39,214.214 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:20:39,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:20:39,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:20:39,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:20:41,259.259 INFO    ] ================================================
[2026-06-27 04:20:41,274.274 INFO    ] Launching Daemon at Sat Jun 27 04:20:41 IST 2026
[2026-06-27 04:20:41,285.285 INFO    ] ================================================
[2026-06-27 04:20:41,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:20:41
[2026-06-27 04:20:41,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:20:42,091.091 INFO    ] Initializing speech engine...
[2026-06-27 04:20:42,101.101 INFO    ] 2026-06-27 04:20:42
[2026-06-27 04:20:42,308.308 INFO    ] 2026-06-27 04:20:42
[2026-06-27 04:20:42,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:20:42,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:20:42,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:20:42,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:20:42,755.755 INFO    ] time= 27/06/2026 04:20:42
[2026-06-27 04:20:42,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:20:42,762.762 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:20:42,855.855 INFO    ] No existing commands found in stream
[2026-06-27 04:20:47,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:20:47,866.866 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-27 04:20:48,914.914 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 04:20:48,916.916 INFO    ] Checking for system updates...
[2026-06-27 04:20:48,937.937 INFO    ] 200
[2026-06-27 04:20:48,939.939 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:20:48,969.969 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:20:48,971.971 INFO    ] No update needed
[2026-06-27 04:20:48,972.972 INFO    ] Checking for camera pi updates...
[2026-06-27 04:20:48,992.992 INFO    ] 200
[2026-06-27 04:20:48,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:20:49,018.018 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:20:49,059.059 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:20:49,061.061 INFO    ] No camera update needed
[2026-06-27 04:20:49,062.062 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:20:49,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:20:49,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:20:49,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:20:51,110.110 INFO    ] ================================================
[2026-06-27 04:20:51,126.126 INFO    ] Launching Daemon at Sat Jun 27 04:20:51 IST 2026
[2026-06-27 04:20:51,136.136 INFO    ] ================================================
[2026-06-27 04:20:51,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:20:51
[2026-06-27 04:20:51,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:20:52,014.014 INFO    ] Initializing speech engine...
[2026-06-27 04:20:52,019.019 INFO    ] 2026-06-27 04:20:52
[2026-06-27 04:20:52,228.228 INFO    ] 2026-06-27 04:20:52
[2026-06-27 04:20:52,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:20:52,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:20:52,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:20:52,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:20:52,667.667 INFO    ] time= 27/06/2026 04:20:52
[2026-06-27 04:20:52,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:20:52,679.679 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:20:52,746.746 INFO    ] No existing commands found in stream
[2026-06-27 04:20:57,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:20:57,759.759 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-27 04:20:58,383.383 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:20:58,385.385 INFO    ] Checking for system updates...
[2026-06-27 04:20:58,407.407 INFO    ] 200
[2026-06-27 04:20:58,408.408 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:20:58,442.442 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:20:58,443.443 INFO    ] No update needed
[2026-06-27 04:20:58,445.445 INFO    ] Checking for camera pi updates...
[2026-06-27 04:20:58,465.465 INFO    ] 200
[2026-06-27 04:20:58,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:20:58,492.492 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:20:58,528.528 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:20:58,530.530 INFO    ] No camera update needed
[2026-06-27 04:20:58,531.531 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:20:58,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:20:58,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:20:58,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:21:00,576.576 INFO    ] ================================================
[2026-06-27 04:21:00,592.592 INFO    ] Launching Daemon at Sat Jun 27 04:21:00 IST 2026
[2026-06-27 04:21:00,603.603 INFO    ] ================================================
[2026-06-27 04:21:00,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:21:00
[2026-06-27 04:21:01,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:21:01,393.393 INFO    ] Initializing speech engine...
[2026-06-27 04:21:01,397.397 INFO    ] 2026-06-27 04:21:01
[2026-06-27 04:21:01,594.594 INFO    ] 2026-06-27 04:21:01
[2026-06-27 04:21:01,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:21:01,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:21:01,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:21:02,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:21:02,007.007 INFO    ] time= 27/06/2026 04:21:02
[2026-06-27 04:21:02,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:21:02,012.012 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:21:02,082.082 INFO    ] No existing commands found in stream
[2026-06-27 04:21:07,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:21:07,094.094 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-27 04:21:07,717.717 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:21:07,718.718 INFO    ] Checking for system updates...
[2026-06-27 04:21:07,739.739 INFO    ] 200
[2026-06-27 04:21:07,741.741 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:21:07,774.774 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:21:07,776.776 INFO    ] No update needed
[2026-06-27 04:21:07,777.777 INFO    ] Checking for camera pi updates...
[2026-06-27 04:21:07,796.796 INFO    ] 200
[2026-06-27 04:21:07,798.798 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:21:07,821.821 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:21:07,868.868 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:21:07,869.869 INFO    ] No camera update needed
[2026-06-27 04:21:07,871.871 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:21:07,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:21:07,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:21:07,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:21:09,918.918 INFO    ] ================================================
[2026-06-27 04:21:09,934.934 INFO    ] Launching Daemon at Sat Jun 27 04:21:09 IST 2026
[2026-06-27 04:21:09,945.945 INFO    ] ================================================
[2026-06-27 04:21:10,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:21:10
[2026-06-27 04:21:10,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:21:10,746.746 INFO    ] Initializing speech engine...
[2026-06-27 04:21:10,751.751 INFO    ] 2026-06-27 04:21:10
[2026-06-27 04:21:10,957.957 INFO    ] 2026-06-27 04:21:10
[2026-06-27 04:21:10,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:21:11,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:21:11,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:21:11,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:21:11,401.401 INFO    ] time= 27/06/2026 04:21:11
[2026-06-27 04:21:11,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:21:11,412.412 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:21:11,480.480 INFO    ] No existing commands found in stream
[2026-06-27 04:21:16,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:21:16,492.492 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-27 04:21:19,589.589 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 04:21:19,590.590 INFO    ] Checking for system updates...
[2026-06-27 04:21:19,612.612 INFO    ] 200
[2026-06-27 04:21:19,613.613 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:21:19,648.648 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:21:19,649.649 INFO    ] No update needed
[2026-06-27 04:21:19,651.651 INFO    ] Checking for camera pi updates...
[2026-06-27 04:21:19,671.671 INFO    ] 200
[2026-06-27 04:21:19,673.673 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:21:19,697.697 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:21:19,722.722 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:21:19,724.724 INFO    ] No camera update needed
[2026-06-27 04:21:19,726.726 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:21:19,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:21:19,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:21:19,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:21:21,768.768 INFO    ] ================================================
[2026-06-27 04:21:21,777.777 INFO    ] Launching Daemon at Sat Jun 27 04:21:21 IST 2026
[2026-06-27 04:21:21,784.784 INFO    ] ================================================
[2026-06-27 04:21:22,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:21:22
[2026-06-27 04:21:22,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:21:22,569.569 INFO    ] Initializing speech engine...
[2026-06-27 04:21:22,574.574 INFO    ] 2026-06-27 04:21:22
[2026-06-27 04:21:22,780.780 INFO    ] 2026-06-27 04:21:22
[2026-06-27 04:21:22,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:21:22,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:21:22,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:21:23,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:21:23,227.227 INFO    ] time= 27/06/2026 04:21:23
[2026-06-27 04:21:23,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:21:23,234.234 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:21:23,301.301 INFO    ] No existing commands found in stream
[2026-06-27 04:21:28,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:21:28,312.312 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-27 04:21:31,519.519 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:21:31,521.521 INFO    ] Checking for system updates...
[2026-06-27 04:21:31,545.545 INFO    ] 200
[2026-06-27 04:21:31,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:21:31,580.580 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:21:31,581.581 INFO    ] No update needed
[2026-06-27 04:21:31,583.583 INFO    ] Checking for camera pi updates...
[2026-06-27 04:21:31,604.604 INFO    ] 200
[2026-06-27 04:21:31,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:21:31,629.629 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:21:31,656.656 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:21:31,658.658 INFO    ] No camera update needed
[2026-06-27 04:21:31,660.660 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:21:31,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:21:31,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:21:31,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:21:33,706.706 INFO    ] ================================================
[2026-06-27 04:21:33,723.723 INFO    ] Launching Daemon at Sat Jun 27 04:21:33 IST 2026
[2026-06-27 04:21:33,734.734 INFO    ] ================================================
[2026-06-27 04:21:34,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:21:34
[2026-06-27 04:21:34,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:21:34,550.550 INFO    ] Initializing speech engine...
[2026-06-27 04:21:34,555.555 INFO    ] 2026-06-27 04:21:34
[2026-06-27 04:21:34,760.760 INFO    ] 2026-06-27 04:21:34
[2026-06-27 04:21:34,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:21:34,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:21:34,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:21:35,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:21:35,200.200 INFO    ] time= 27/06/2026 04:21:35
[2026-06-27 04:21:35,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:21:35,207.207 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:21:35,274.274 INFO    ] No existing commands found in stream
[2026-06-27 04:21:40,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:21:40,291.291 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-27 04:21:43,779.779 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:21:43,780.780 INFO    ] Checking for system updates...
[2026-06-27 04:21:43,802.802 INFO    ] 200
[2026-06-27 04:21:43,803.803 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:21:43,835.835 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:21:43,837.837 INFO    ] No update needed
[2026-06-27 04:21:43,838.838 INFO    ] Checking for camera pi updates...
[2026-06-27 04:21:43,857.857 INFO    ] 200
[2026-06-27 04:21:43,859.859 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:21:43,884.884 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:21:43,906.906 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:21:43,908.908 INFO    ] No camera update needed
[2026-06-27 04:21:43,909.909 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:21:43,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:21:43,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:21:43,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:21:45,955.955 INFO    ] ================================================
[2026-06-27 04:21:45,971.971 INFO    ] Launching Daemon at Sat Jun 27 04:21:45 IST 2026
[2026-06-27 04:21:45,990.990 INFO    ] ================================================
[2026-06-27 04:21:46,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:21:46
[2026-06-27 04:21:46,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:21:46,800.800 INFO    ] Initializing speech engine...
[2026-06-27 04:21:46,810.810 INFO    ] 2026-06-27 04:21:46
[2026-06-27 04:21:47,013.013 INFO    ] 2026-06-27 04:21:46
[2026-06-27 04:21:47,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:21:47,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:21:47,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:21:47,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:21:47,454.454 INFO    ] time= 27/06/2026 04:21:47
[2026-06-27 04:21:47,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:21:47,461.461 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:21:47,526.526 INFO    ] No existing commands found in stream
[2026-06-27 04:21:52,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:21:52,539.539 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-27 04:21:54,879.879 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:21:54,881.881 INFO    ] Checking for system updates...
[2026-06-27 04:21:54,903.903 INFO    ] 200
[2026-06-27 04:21:54,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:21:54,938.938 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:21:54,940.940 INFO    ] No update needed
[2026-06-27 04:21:54,941.941 INFO    ] Checking for camera pi updates...
[2026-06-27 04:21:54,961.961 INFO    ] 200
[2026-06-27 04:21:54,962.962 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:21:54,998.998 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:21:55,150.150 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:21:55,152.152 INFO    ] No camera update needed
[2026-06-27 04:21:55,154.154 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:21:55,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:21:55,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:21:55,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:21:57,208.208 INFO    ] ================================================
[2026-06-27 04:21:57,223.223 INFO    ] Launching Daemon at Sat Jun 27 04:21:57 IST 2026
[2026-06-27 04:21:57,234.234 INFO    ] ================================================
[2026-06-27 04:21:57,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:21:57
[2026-06-27 04:21:57,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:21:58,039.039 INFO    ] Initializing speech engine...
[2026-06-27 04:21:58,047.047 INFO    ] 2026-06-27 04:21:58
[2026-06-27 04:21:58,259.259 INFO    ] 2026-06-27 04:21:58
[2026-06-27 04:21:58,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:21:58,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:21:58,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:21:58,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:21:58,702.702 INFO    ] time= 27/06/2026 04:21:58
[2026-06-27 04:21:58,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:21:58,709.709 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:21:58,776.776 INFO    ] No existing commands found in stream
[2026-06-27 04:22:03,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:22:03,788.788 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-27 04:22:07,752.752 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:22:07,753.753 INFO    ] Checking for system updates...
[2026-06-27 04:22:07,776.776 INFO    ] 200
[2026-06-27 04:22:07,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:22:07,808.808 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:22:07,809.809 INFO    ] No update needed
[2026-06-27 04:22:07,810.810 INFO    ] Checking for camera pi updates...
[2026-06-27 04:22:07,830.830 INFO    ] 200
[2026-06-27 04:22:07,831.831 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:22:07,857.857 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:22:07,896.896 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:22:07,897.897 INFO    ] No camera update needed
[2026-06-27 04:22:07,898.898 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:22:07,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:22:07,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:22:07,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:22:09,944.944 INFO    ] ================================================
[2026-06-27 04:22:09,960.960 INFO    ] Launching Daemon at Sat Jun 27 04:22:09 IST 2026
[2026-06-27 04:22:09,971.971 INFO    ] ================================================
[2026-06-27 04:22:10,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:22:10
[2026-06-27 04:22:10,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:22:10,754.754 INFO    ] Initializing speech engine...
[2026-06-27 04:22:10,759.759 INFO    ] 2026-06-27 04:22:10
[2026-06-27 04:22:10,965.965 INFO    ] 2026-06-27 04:22:10
[2026-06-27 04:22:10,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:22:11,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:22:11,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:22:11,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:22:11,379.379 INFO    ] time= 27/06/2026 04:22:11
[2026-06-27 04:22:11,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:22:11,418.418 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:22:11,486.486 INFO    ] No existing commands found in stream
[2026-06-27 04:22:16,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:22:16,503.503 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-27 04:22:17,605.605 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:22:17,606.606 INFO    ] Checking for system updates...
[2026-06-27 04:22:17,628.628 INFO    ] 200
[2026-06-27 04:22:17,630.630 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:22:17,667.667 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:22:17,668.668 INFO    ] No update needed
[2026-06-27 04:22:17,670.670 INFO    ] Checking for camera pi updates...
[2026-06-27 04:22:17,689.689 INFO    ] 200
[2026-06-27 04:22:17,691.691 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:22:17,714.714 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:22:17,746.746 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:22:17,748.748 INFO    ] No camera update needed
[2026-06-27 04:22:17,749.749 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:22:17,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:22:17,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:22:17,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:22:19,796.796 INFO    ] ================================================
[2026-06-27 04:22:19,812.812 INFO    ] Launching Daemon at Sat Jun 27 04:22:19 IST 2026
[2026-06-27 04:22:19,823.823 INFO    ] ================================================
[2026-06-27 04:22:20,194.194 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:22:20
[2026-06-27 04:22:20,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:22:20,652.652 INFO    ] Initializing speech engine...
[2026-06-27 04:22:20,662.662 INFO    ] 2026-06-27 04:22:20
[2026-06-27 04:22:20,867.867 INFO    ] 2026-06-27 04:22:20
[2026-06-27 04:22:20,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:22:21,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:22:21,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:22:21,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:22:21,283.283 INFO    ] time= 27/06/2026 04:22:21
[2026-06-27 04:22:21,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:22:21,314.314 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:22:21,380.380 INFO    ] No existing commands found in stream
[2026-06-27 04:22:26,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:22:26,398.398 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-27 04:22:30,250.250 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 04:22:30,251.251 INFO    ] Checking for system updates...
[2026-06-27 04:22:30,274.274 INFO    ] 200
[2026-06-27 04:22:30,276.276 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:22:30,310.310 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:22:30,311.311 INFO    ] No update needed
[2026-06-27 04:22:30,313.313 INFO    ] Checking for camera pi updates...
[2026-06-27 04:22:30,334.334 INFO    ] 200
[2026-06-27 04:22:30,336.336 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:22:30,362.362 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:22:30,387.387 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:22:30,388.388 INFO    ] No camera update needed
[2026-06-27 04:22:30,390.390 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:22:30,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:22:30,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:22:30,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:22:32,438.438 INFO    ] ================================================
[2026-06-27 04:22:32,454.454 INFO    ] Launching Daemon at Sat Jun 27 04:22:32 IST 2026
[2026-06-27 04:22:32,465.465 INFO    ] ================================================
[2026-06-27 04:22:32,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:22:32
[2026-06-27 04:22:33,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:22:33,368.368 INFO    ] Initializing speech engine...
[2026-06-27 04:22:33,373.373 INFO    ] 2026-06-27 04:22:33
[2026-06-27 04:22:33,582.582 INFO    ] 2026-06-27 04:22:33
[2026-06-27 04:22:33,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:22:33,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:22:33,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:22:34,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:22:34,065.065 INFO    ] time= 27/06/2026 04:22:34
[2026-06-27 04:22:34,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:22:34,080.080 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:22:34,157.157 INFO    ] No existing commands found in stream
[2026-06-27 04:22:39,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:22:39,170.170 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-27 04:22:41,393.393 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 04:22:41,395.395 INFO    ] Checking for system updates...
[2026-06-27 04:22:41,418.418 INFO    ] 200
[2026-06-27 04:22:41,419.419 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:22:41,455.455 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:22:41,457.457 INFO    ] No update needed
[2026-06-27 04:22:41,458.458 INFO    ] Checking for camera pi updates...
[2026-06-27 04:22:41,482.482 INFO    ] 200
[2026-06-27 04:22:41,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:22:41,508.508 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:22:41,547.547 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:22:41,548.548 INFO    ] No camera update needed
[2026-06-27 04:22:41,550.550 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:22:41,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:22:41,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:22:41,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:22:43,598.598 INFO    ] ================================================
[2026-06-27 04:22:43,614.614 INFO    ] Launching Daemon at Sat Jun 27 04:22:43 IST 2026
[2026-06-27 04:22:43,625.625 INFO    ] ================================================
[2026-06-27 04:22:44,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:22:44
[2026-06-27 04:22:44,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:22:44,509.509 INFO    ] Initializing speech engine...
[2026-06-27 04:22:44,512.512 INFO    ] 2026-06-27 04:22:44
[2026-06-27 04:22:44,721.721 INFO    ] 2026-06-27 04:22:44
[2026-06-27 04:22:44,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:22:44,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:22:44,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:22:45,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:22:45,163.163 INFO    ] time= 27/06/2026 04:22:45
[2026-06-27 04:22:45,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:22:45,170.170 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:22:45,236.236 INFO    ] No existing commands found in stream
[2026-06-27 04:22:50,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:22:50,251.251 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-27 04:22:52,326.326 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 04:22:52,328.328 INFO    ] Checking for system updates...
[2026-06-27 04:22:52,350.350 INFO    ] 200
[2026-06-27 04:22:52,352.352 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:22:52,386.386 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:22:52,388.388 INFO    ] No update needed
[2026-06-27 04:22:52,389.389 INFO    ] Checking for camera pi updates...
[2026-06-27 04:22:52,409.409 INFO    ] 200
[2026-06-27 04:22:52,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:22:52,435.435 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:22:52,475.475 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:22:52,476.476 INFO    ] No camera update needed
[2026-06-27 04:22:52,477.477 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:22:52,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:22:52,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:22:52,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:22:54,525.525 INFO    ] ================================================
[2026-06-27 04:22:54,541.541 INFO    ] Launching Daemon at Sat Jun 27 04:22:54 IST 2026
[2026-06-27 04:22:54,552.552 INFO    ] ================================================
[2026-06-27 04:22:54,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:22:54
[2026-06-27 04:22:55,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:22:55,330.330 INFO    ] Initializing speech engine...
[2026-06-27 04:22:55,338.338 INFO    ] 2026-06-27 04:22:55
[2026-06-27 04:22:55,552.552 INFO    ] 2026-06-27 04:22:55
[2026-06-27 04:22:55,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:22:55,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:22:55,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:22:55,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:22:55,979.979 INFO    ] time= 27/06/2026 04:22:55
[2026-06-27 04:22:56,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:22:56,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:22:56,077.077 INFO    ] No existing commands found in stream
[2026-06-27 04:23:01,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:23:01,089.089 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-27 04:23:01,915.915 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:23:01,918.918 INFO    ] Checking for system updates...
[2026-06-27 04:23:01,950.950 INFO    ] 200
[2026-06-27 04:23:01,953.953 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:23:02,001.001 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:23:02,003.003 INFO    ] No update needed
[2026-06-27 04:23:02,005.005 INFO    ] Checking for camera pi updates...
[2026-06-27 04:23:02,034.034 INFO    ] 200
[2026-06-27 04:23:02,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:23:02,071.071 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:23:02,101.101 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:23:02,102.102 INFO    ] No camera update needed
[2026-06-27 04:23:02,105.105 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:23:02,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:23:02,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:23:02,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:23:04,153.153 INFO    ] ================================================
[2026-06-27 04:23:04,168.168 INFO    ] Launching Daemon at Sat Jun 27 04:23:04 IST 2026
[2026-06-27 04:23:04,181.181 INFO    ] ================================================
[2026-06-27 04:23:04,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:23:04
[2026-06-27 04:23:04,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:23:04,975.975 INFO    ] Initializing speech engine...
[2026-06-27 04:23:04,980.980 INFO    ] 2026-06-27 04:23:04
[2026-06-27 04:23:05,195.195 INFO    ] 2026-06-27 04:23:05
[2026-06-27 04:23:05,224.224 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:23:05,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:23:05,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:23:05,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:23:05,629.629 INFO    ] time= 27/06/2026 04:23:05
[2026-06-27 04:23:05,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:23:05,672.672 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:23:05,742.742 INFO    ] No existing commands found in stream
[2026-06-27 04:23:10,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:23:10,755.755 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-27 04:23:15,152.152 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 04:23:15,154.154 INFO    ] Checking for system updates...
[2026-06-27 04:23:15,175.175 INFO    ] 200
[2026-06-27 04:23:15,177.177 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:23:15,210.210 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:23:15,212.212 INFO    ] No update needed
[2026-06-27 04:23:15,213.213 INFO    ] Checking for camera pi updates...
[2026-06-27 04:23:15,234.234 INFO    ] 200
[2026-06-27 04:23:15,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:23:15,259.259 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:23:15,305.305 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:23:15,307.307 INFO    ] No camera update needed
[2026-06-27 04:23:15,308.308 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:23:15,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:23:15,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:23:15,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:23:17,353.353 INFO    ] ================================================
[2026-06-27 04:23:17,369.369 INFO    ] Launching Daemon at Sat Jun 27 04:23:17 IST 2026
[2026-06-27 04:23:17,379.379 INFO    ] ================================================
[2026-06-27 04:23:17,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:23:17
[2026-06-27 04:23:18,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:23:18,189.189 INFO    ] Initializing speech engine...
[2026-06-27 04:23:18,193.193 INFO    ] 2026-06-27 04:23:18
[2026-06-27 04:23:18,399.399 INFO    ] 2026-06-27 04:23:18
[2026-06-27 04:23:18,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:23:18,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:23:18,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:23:18,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:23:18,828.828 INFO    ] time= 27/06/2026 04:23:18
[2026-06-27 04:23:18,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:23:18,856.856 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:23:18,926.926 INFO    ] No existing commands found in stream
[2026-06-27 04:23:23,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:23:23,944.944 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-27 04:23:24,540.540 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 04:23:24,542.542 INFO    ] Checking for system updates...
[2026-06-27 04:23:24,563.563 INFO    ] 200
[2026-06-27 04:23:24,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:23:24,596.596 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:23:24,597.597 INFO    ] No update needed
[2026-06-27 04:23:24,598.598 INFO    ] Checking for camera pi updates...
[2026-06-27 04:23:24,619.619 INFO    ] 200
[2026-06-27 04:23:24,620.620 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:23:24,645.645 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:23:24,683.683 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:23:24,684.684 INFO    ] No camera update needed
[2026-06-27 04:23:24,685.685 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:23:24,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:23:24,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:23:24,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:23:26,732.732 INFO    ] ================================================
[2026-06-27 04:23:26,747.747 INFO    ] Launching Daemon at Sat Jun 27 04:23:26 IST 2026
[2026-06-27 04:23:26,758.758 INFO    ] ================================================
[2026-06-27 04:23:27,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:23:27
[2026-06-27 04:23:27,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:23:27,535.535 INFO    ] Initializing speech engine...
[2026-06-27 04:23:27,540.540 INFO    ] 2026-06-27 04:23:27
[2026-06-27 04:23:27,759.759 INFO    ] 2026-06-27 04:23:27
[2026-06-27 04:23:27,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:23:27,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:23:27,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:23:28,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:23:28,199.199 INFO    ] time= 27/06/2026 04:23:28
[2026-06-27 04:23:28,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:23:28,215.215 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:23:28,283.283 INFO    ] No existing commands found in stream
[2026-06-27 04:23:33,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:23:33,295.295 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-27 04:23:36,068.068 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 04:23:36,070.070 INFO    ] Checking for system updates...
[2026-06-27 04:23:36,091.091 INFO    ] 200
[2026-06-27 04:23:36,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:23:36,127.127 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:23:36,128.128 INFO    ] No update needed
[2026-06-27 04:23:36,130.130 INFO    ] Checking for camera pi updates...
[2026-06-27 04:23:36,153.153 INFO    ] 200
[2026-06-27 04:23:36,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:23:36,181.181 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:23:36,219.219 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:23:36,220.220 INFO    ] No camera update needed
[2026-06-27 04:23:36,221.221 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:23:36,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:23:36,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:23:36,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:23:38,269.269 INFO    ] ================================================
[2026-06-27 04:23:38,286.286 INFO    ] Launching Daemon at Sat Jun 27 04:23:38 IST 2026
[2026-06-27 04:23:38,297.297 INFO    ] ================================================
[2026-06-27 04:23:38,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:23:38
[2026-06-27 04:23:38,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:23:39,079.079 INFO    ] Initializing speech engine...
[2026-06-27 04:23:39,089.089 INFO    ] 2026-06-27 04:23:39
[2026-06-27 04:23:39,296.296 INFO    ] 2026-06-27 04:23:39
[2026-06-27 04:23:39,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:23:39,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:23:39,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:23:39,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:23:39,743.743 INFO    ] time= 27/06/2026 04:23:39
[2026-06-27 04:23:39,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:23:39,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:23:39,816.816 INFO    ] No existing commands found in stream
[2026-06-27 04:23:44,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:23:44,829.829 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-27 04:23:45,602.602 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 04:23:45,604.604 INFO    ] Checking for system updates...
[2026-06-27 04:23:45,627.627 INFO    ] 200
[2026-06-27 04:23:45,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:23:45,662.662 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:23:45,663.663 INFO    ] No update needed
[2026-06-27 04:23:45,665.665 INFO    ] Checking for camera pi updates...
[2026-06-27 04:23:45,685.685 INFO    ] 200
[2026-06-27 04:23:45,687.687 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:23:45,711.711 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:23:45,751.751 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:23:45,752.752 INFO    ] No camera update needed
[2026-06-27 04:23:45,754.754 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:23:45,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:23:45,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:23:45,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:23:47,803.803 INFO    ] ================================================
[2026-06-27 04:23:47,819.819 INFO    ] Launching Daemon at Sat Jun 27 04:23:47 IST 2026
[2026-06-27 04:23:47,829.829 INFO    ] ================================================
[2026-06-27 04:23:48,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:23:48
[2026-06-27 04:23:48,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:23:48,629.629 INFO    ] Initializing speech engine...
[2026-06-27 04:23:48,641.641 INFO    ] 2026-06-27 04:23:48
[2026-06-27 04:23:48,849.849 INFO    ] 2026-06-27 04:23:48
[2026-06-27 04:23:48,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:23:49,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:23:49,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:23:49,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:23:49,288.288 INFO    ] time= 27/06/2026 04:23:49
[2026-06-27 04:23:49,301.301 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:23:49,324.324 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:23:49,426.426 INFO    ] No existing commands found in stream
[2026-06-27 04:23:54,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:23:54,438.438 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-27 04:23:57,272.272 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 04:23:57,274.274 INFO    ] Checking for system updates...
[2026-06-27 04:23:57,295.295 INFO    ] 200
[2026-06-27 04:23:57,296.296 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:23:57,330.330 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:23:57,332.332 INFO    ] No update needed
[2026-06-27 04:23:57,333.333 INFO    ] Checking for camera pi updates...
[2026-06-27 04:23:57,354.354 INFO    ] 200
[2026-06-27 04:23:57,356.356 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:23:57,379.379 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:23:57,523.523 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:23:57,525.525 INFO    ] No camera update needed
[2026-06-27 04:23:57,526.526 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:23:57,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:23:57,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:23:57,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:23:59,573.573 INFO    ] ================================================
[2026-06-27 04:23:59,588.588 INFO    ] Launching Daemon at Sat Jun 27 04:23:59 IST 2026
[2026-06-27 04:23:59,598.598 INFO    ] ================================================
[2026-06-27 04:23:59,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:23:59
[2026-06-27 04:24:00,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:24:00,388.388 INFO    ] Initializing speech engine...
[2026-06-27 04:24:00,399.399 INFO    ] 2026-06-27 04:24:00
[2026-06-27 04:24:00,605.605 INFO    ] 2026-06-27 04:24:00
[2026-06-27 04:24:00,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:24:00,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:24:00,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:24:00,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:24:01,024.024 INFO    ] time= 27/06/2026 04:24:00
[2026-06-27 04:24:01,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:24:01,053.053 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:24:01,119.119 INFO    ] No existing commands found in stream
[2026-06-27 04:24:06,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:24:06,133.133 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-27 04:24:09,478.478 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:24:09,479.479 INFO    ] Checking for system updates...
[2026-06-27 04:24:09,500.500 INFO    ] 200
[2026-06-27 04:24:09,502.502 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:24:09,532.532 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:24:09,534.534 INFO    ] No update needed
[2026-06-27 04:24:09,535.535 INFO    ] Checking for camera pi updates...
[2026-06-27 04:24:09,556.556 INFO    ] 200
[2026-06-27 04:24:09,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:24:09,582.582 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:24:09,624.624 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:24:09,625.625 INFO    ] No camera update needed
[2026-06-27 04:24:09,626.626 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:24:09,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:24:09,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:24:09,633.633 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:24:11,676.676 INFO    ] ================================================
[2026-06-27 04:24:11,692.692 INFO    ] Launching Daemon at Sat Jun 27 04:24:11 IST 2026
[2026-06-27 04:24:11,704.704 INFO    ] ================================================
[2026-06-27 04:24:12,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:24:12
[2026-06-27 04:24:12,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:24:12,568.568 INFO    ] Initializing speech engine...
[2026-06-27 04:24:12,578.578 INFO    ] 2026-06-27 04:24:12
[2026-06-27 04:24:12,784.784 INFO    ] 2026-06-27 04:24:12
[2026-06-27 04:24:12,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:24:12,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:24:13,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:24:13,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:24:13,225.225 INFO    ] time= 27/06/2026 04:24:13
[2026-06-27 04:24:13,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:24:13,233.233 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:24:13,300.300 INFO    ] No existing commands found in stream
[2026-06-27 04:24:18,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:24:18,312.312 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-27 04:24:19,944.944 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:24:19,946.946 INFO    ] Checking for system updates...
[2026-06-27 04:24:19,967.967 INFO    ] 200
[2026-06-27 04:24:19,969.969 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:24:19,999.999 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:24:20,000.000 INFO    ] No update needed
[2026-06-27 04:24:20,002.002 INFO    ] Checking for camera pi updates...
[2026-06-27 04:24:20,021.021 INFO    ] 200
[2026-06-27 04:24:20,023.023 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:24:20,048.048 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:24:20,087.087 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:24:20,088.088 INFO    ] No camera update needed
[2026-06-27 04:24:20,090.090 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:24:20,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:24:20,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:24:20,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:24:22,137.137 INFO    ] ================================================
[2026-06-27 04:24:22,153.153 INFO    ] Launching Daemon at Sat Jun 27 04:24:22 IST 2026
[2026-06-27 04:24:22,165.165 INFO    ] ================================================
[2026-06-27 04:24:22,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:24:22
[2026-06-27 04:24:22,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:24:22,972.972 INFO    ] Initializing speech engine...
[2026-06-27 04:24:22,977.977 INFO    ] 2026-06-27 04:24:22
[2026-06-27 04:24:23,181.181 INFO    ] 2026-06-27 04:24:23
[2026-06-27 04:24:23,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:24:23,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:24:23,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:24:23,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:24:23,620.620 INFO    ] time= 27/06/2026 04:24:23
[2026-06-27 04:24:23,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:24:23,628.628 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:24:23,695.695 INFO    ] No existing commands found in stream
[2026-06-27 04:24:28,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:24:28,707.707 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-27 04:24:31,980.980 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:24:31,981.981 INFO    ] Checking for system updates...
[2026-06-27 04:24:32,006.006 INFO    ] 200
[2026-06-27 04:24:32,008.008 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:24:32,042.042 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:24:32,044.044 INFO    ] No update needed
[2026-06-27 04:24:32,045.045 INFO    ] Checking for camera pi updates...
[2026-06-27 04:24:32,067.067 INFO    ] 200
[2026-06-27 04:24:32,069.069 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:24:32,096.096 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:24:32,122.122 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:24:32,124.124 INFO    ] No camera update needed
[2026-06-27 04:24:32,126.126 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:24:32,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:24:32,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:24:32,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:24:34,170.170 INFO    ] ================================================
[2026-06-27 04:24:34,189.189 INFO    ] Launching Daemon at Sat Jun 27 04:24:34 IST 2026
[2026-06-27 04:24:34,201.201 INFO    ] ================================================
[2026-06-27 04:24:34,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:24:34
[2026-06-27 04:24:34,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:24:34,986.986 INFO    ] Initializing speech engine...
[2026-06-27 04:24:34,991.991 INFO    ] 2026-06-27 04:24:34
[2026-06-27 04:24:35,194.194 INFO    ] 2026-06-27 04:24:35
[2026-06-27 04:24:35,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:24:35,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:24:35,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:24:35,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:24:35,618.618 INFO    ] time= 27/06/2026 04:24:35
[2026-06-27 04:24:35,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:24:35,621.621 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:24:35,727.727 INFO    ] No existing commands found in stream
[2026-06-27 04:24:40,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:24:40,740.740 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-27 04:24:43,480.480 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:24:43,481.481 INFO    ] Checking for system updates...
[2026-06-27 04:24:43,502.502 INFO    ] 200
[2026-06-27 04:24:43,503.503 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:24:43,537.537 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:24:43,539.539 INFO    ] No update needed
[2026-06-27 04:24:43,540.540 INFO    ] Checking for camera pi updates...
[2026-06-27 04:24:43,560.560 INFO    ] 200
[2026-06-27 04:24:43,562.562 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:24:43,589.589 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:24:43,626.626 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:24:43,627.627 INFO    ] No camera update needed
[2026-06-27 04:24:43,628.628 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:24:43,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:24:43,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:24:43,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:24:45,675.675 INFO    ] ================================================
[2026-06-27 04:24:45,690.690 INFO    ] Launching Daemon at Sat Jun 27 04:24:45 IST 2026
[2026-06-27 04:24:45,701.701 INFO    ] ================================================
[2026-06-27 04:24:46,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:24:46
[2026-06-27 04:24:46,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:24:46,486.486 INFO    ] Initializing speech engine...
[2026-06-27 04:24:46,491.491 INFO    ] 2026-06-27 04:24:46
[2026-06-27 04:24:46,699.699 INFO    ] 2026-06-27 04:24:46
[2026-06-27 04:24:46,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:24:46,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:24:46,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:24:47,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:24:47,130.130 INFO    ] time= 27/06/2026 04:24:47
[2026-06-27 04:24:47,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:24:47,160.160 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:24:47,228.228 INFO    ] No existing commands found in stream
[2026-06-27 04:24:52,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:24:52,241.241 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-27 04:24:53,918.918 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:24:53,919.919 INFO    ] Checking for system updates...
[2026-06-27 04:24:53,940.940 INFO    ] 200
[2026-06-27 04:24:53,941.941 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:24:53,971.971 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:24:53,973.973 INFO    ] No update needed
[2026-06-27 04:24:53,974.974 INFO    ] Checking for camera pi updates...
[2026-06-27 04:24:53,995.995 INFO    ] 200
[2026-06-27 04:24:53,996.996 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:24:54,020.020 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:24:54,043.043 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:24:54,045.045 INFO    ] No camera update needed
[2026-06-27 04:24:54,046.046 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:24:54,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:24:54,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:24:54,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:24:56,092.092 INFO    ] ================================================
[2026-06-27 04:24:56,107.107 INFO    ] Launching Daemon at Sat Jun 27 04:24:56 IST 2026
[2026-06-27 04:24:56,119.119 INFO    ] ================================================
[2026-06-27 04:24:56,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:24:56
[2026-06-27 04:24:56,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:24:56,900.900 INFO    ] Initializing speech engine...
[2026-06-27 04:24:56,908.908 INFO    ] 2026-06-27 04:24:56
[2026-06-27 04:24:57,117.117 INFO    ] 2026-06-27 04:24:57
[2026-06-27 04:24:57,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:24:57,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:24:57,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:24:57,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:24:57,564.564 INFO    ] time= 27/06/2026 04:24:57
[2026-06-27 04:24:57,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:24:57,571.571 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:24:57,639.639 INFO    ] No existing commands found in stream
[2026-06-27 04:25:02,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:25:02,647.647 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-27 04:25:06,309.309 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 04:25:06,311.311 INFO    ] Checking for system updates...
[2026-06-27 04:25:06,331.331 INFO    ] 200
[2026-06-27 04:25:06,333.333 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:25:06,366.366 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:25:06,367.367 INFO    ] No update needed
[2026-06-27 04:25:06,368.368 INFO    ] Checking for camera pi updates...
[2026-06-27 04:25:06,388.388 INFO    ] 200
[2026-06-27 04:25:06,390.390 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:25:06,414.414 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:25:06,461.461 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:25:06,463.463 INFO    ] No camera update needed
[2026-06-27 04:25:06,464.464 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:25:06,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:25:06,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:25:06,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:25:08,511.511 INFO    ] ================================================
[2026-06-27 04:25:08,527.527 INFO    ] Launching Daemon at Sat Jun 27 04:25:08 IST 2026
[2026-06-27 04:25:08,538.538 INFO    ] ================================================
[2026-06-27 04:25:08,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:25:08
[2026-06-27 04:25:09,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:25:09,309.309 INFO    ] Initializing speech engine...
[2026-06-27 04:25:09,315.315 INFO    ] 2026-06-27 04:25:09
[2026-06-27 04:25:09,544.544 INFO    ] 2026-06-27 04:25:09
[2026-06-27 04:25:09,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:25:09,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:25:09,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:25:09,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:25:09,883.883 INFO    ] time= 27/06/2026 04:25:09
[2026-06-27 04:25:09,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:25:09,981.981 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:25:10,109.109 INFO    ] No existing commands found in stream
[2026-06-27 04:25:15,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:25:15,134.134 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-27 04:25:17,326.326 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 04:25:17,327.327 INFO    ] Checking for system updates...
[2026-06-27 04:25:17,347.347 INFO    ] 200
[2026-06-27 04:25:17,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:25:17,381.381 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:25:17,382.382 INFO    ] No update needed
[2026-06-27 04:25:17,384.384 INFO    ] Checking for camera pi updates...
[2026-06-27 04:25:17,404.404 INFO    ] 200
[2026-06-27 04:25:17,406.406 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:25:17,429.429 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:25:17,477.477 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:25:17,479.479 INFO    ] No camera update needed
[2026-06-27 04:25:17,480.480 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:25:17,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:25:17,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:25:17,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:25:19,528.528 INFO    ] ================================================
[2026-06-27 04:25:19,543.543 INFO    ] Launching Daemon at Sat Jun 27 04:25:19 IST 2026
[2026-06-27 04:25:19,555.555 INFO    ] ================================================
[2026-06-27 04:25:19,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:25:19
[2026-06-27 04:25:20,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:25:20,330.330 INFO    ] Initializing speech engine...
[2026-06-27 04:25:20,340.340 INFO    ] 2026-06-27 04:25:20
[2026-06-27 04:25:20,545.545 INFO    ] 2026-06-27 04:25:20
[2026-06-27 04:25:20,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:25:20,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:25:20,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:25:20,900.900 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:25:20,949.949 INFO    ] time= 27/06/2026 04:25:20
[2026-06-27 04:25:20,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:25:20,995.995 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:25:21,067.067 INFO    ] No existing commands found in stream
[2026-06-27 04:25:26,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:25:26,079.079 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-27 04:25:28,807.807 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 04:25:28,808.808 INFO    ] Checking for system updates...
[2026-06-27 04:25:28,829.829 INFO    ] 200
[2026-06-27 04:25:28,830.830 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:25:28,860.860 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:25:28,862.862 INFO    ] No update needed
[2026-06-27 04:25:28,863.863 INFO    ] Checking for camera pi updates...
[2026-06-27 04:25:28,882.882 INFO    ] 200
[2026-06-27 04:25:28,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:25:28,908.908 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:25:28,944.944 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:25:28,945.945 INFO    ] No camera update needed
[2026-06-27 04:25:28,947.947 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:25:28,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:25:29,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:25:29,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:25:31,185.185 INFO    ] ================================================
[2026-06-27 04:25:31,200.200 INFO    ] Launching Daemon at Sat Jun 27 04:25:31 IST 2026
[2026-06-27 04:25:31,212.212 INFO    ] ================================================
[2026-06-27 04:25:31,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:25:31
[2026-06-27 04:25:31,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:25:32,027.027 INFO    ] Initializing speech engine...
[2026-06-27 04:25:32,040.040 INFO    ] 2026-06-27 04:25:32
[2026-06-27 04:25:32,230.230 INFO    ] 2026-06-27 04:25:32
[2026-06-27 04:25:32,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:25:32,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:25:32,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:25:32,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:25:32,693.693 INFO    ] time= 27/06/2026 04:25:32
[2026-06-27 04:25:32,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:25:32,770.770 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:25:32,848.848 INFO    ] No existing commands found in stream
[2026-06-27 04:25:37,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:25:37,862.862 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-27 04:25:40,724.724 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:25:40,725.725 INFO    ] Checking for system updates...
[2026-06-27 04:25:40,747.747 INFO    ] 200
[2026-06-27 04:25:40,748.748 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:25:40,781.781 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:25:40,783.783 INFO    ] No update needed
[2026-06-27 04:25:40,784.784 INFO    ] Checking for camera pi updates...
[2026-06-27 04:25:40,804.804 INFO    ] 200
[2026-06-27 04:25:40,806.806 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:25:40,829.829 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:25:40,866.866 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:25:40,867.867 INFO    ] No camera update needed
[2026-06-27 04:25:40,868.868 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:25:40,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:25:40,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:25:40,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:25:42,917.917 INFO    ] ================================================
[2026-06-27 04:25:42,932.932 INFO    ] Launching Daemon at Sat Jun 27 04:25:42 IST 2026
[2026-06-27 04:25:42,943.943 INFO    ] ================================================
[2026-06-27 04:25:43,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:25:43
[2026-06-27 04:25:43,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:25:43,741.741 INFO    ] Initializing speech engine...
[2026-06-27 04:25:43,746.746 INFO    ] 2026-06-27 04:25:43
[2026-06-27 04:25:43,949.949 INFO    ] 2026-06-27 04:25:43
[2026-06-27 04:25:43,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:25:44,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:25:44,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:25:44,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:25:44,369.369 INFO    ] time= 27/06/2026 04:25:44
[2026-06-27 04:25:44,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:25:44,398.398 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:25:44,466.466 INFO    ] No existing commands found in stream
[2026-06-27 04:25:49,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:25:49,478.478 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-27 04:25:52,024.024 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 04:25:52,025.025 INFO    ] Checking for system updates...
[2026-06-27 04:25:52,047.047 INFO    ] 200
[2026-06-27 04:25:52,049.049 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:25:52,081.081 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:25:52,082.082 INFO    ] No update needed
[2026-06-27 04:25:52,084.084 INFO    ] Checking for camera pi updates...
[2026-06-27 04:25:52,103.103 INFO    ] 200
[2026-06-27 04:25:52,105.105 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:25:52,128.128 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:25:52,164.164 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:25:52,166.166 INFO    ] No camera update needed
[2026-06-27 04:25:52,167.167 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:25:52,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:25:52,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:25:52,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:25:54,214.214 INFO    ] ================================================
[2026-06-27 04:25:54,230.230 INFO    ] Launching Daemon at Sat Jun 27 04:25:54 IST 2026
[2026-06-27 04:25:54,242.242 INFO    ] ================================================
[2026-06-27 04:25:54,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:25:54
[2026-06-27 04:25:54,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:25:55,049.049 INFO    ] Initializing speech engine...
[2026-06-27 04:25:55,055.055 INFO    ] 2026-06-27 04:25:55
[2026-06-27 04:25:55,258.258 INFO    ] 2026-06-27 04:25:55
[2026-06-27 04:25:55,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:25:55,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:25:55,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:25:55,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:25:55,680.680 INFO    ] time= 27/06/2026 04:25:55
[2026-06-27 04:25:55,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:25:55,707.707 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:25:55,797.797 INFO    ] No existing commands found in stream
[2026-06-27 04:26:00,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:26:00,814.814 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-27 04:26:01,846.846 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:26:01,848.848 INFO    ] Checking for system updates...
[2026-06-27 04:26:01,876.876 INFO    ] 200
[2026-06-27 04:26:01,878.878 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:26:01,917.917 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:26:01,919.919 INFO    ] No update needed
[2026-06-27 04:26:01,921.921 INFO    ] Checking for camera pi updates...
[2026-06-27 04:26:01,951.951 INFO    ] 200
[2026-06-27 04:26:01,953.953 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:26:01,987.987 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:26:02,119.119 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:26:02,122.122 INFO    ] No camera update needed
[2026-06-27 04:26:02,125.125 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:26:02,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:26:02,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:26:02,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:26:04,181.181 INFO    ] ================================================
[2026-06-27 04:26:04,197.197 INFO    ] Launching Daemon at Sat Jun 27 04:26:04 IST 2026
[2026-06-27 04:26:04,208.208 INFO    ] ================================================
[2026-06-27 04:26:04,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:26:04
[2026-06-27 04:26:04,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:26:04,982.982 INFO    ] Initializing speech engine...
[2026-06-27 04:26:04,987.987 INFO    ] 2026-06-27 04:26:04
[2026-06-27 04:26:05,202.202 INFO    ] 2026-06-27 04:26:05
[2026-06-27 04:26:05,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:26:05,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:26:05,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:26:05,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:26:05,631.631 INFO    ] time= 27/06/2026 04:26:05
[2026-06-27 04:26:05,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:26:05,664.664 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:26:05,731.731 INFO    ] No existing commands found in stream
[2026-06-27 04:26:10,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:26:10,748.748 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-27 04:26:11,280.280 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 04:26:11,281.281 INFO    ] Checking for system updates...
[2026-06-27 04:26:11,302.302 INFO    ] 200
[2026-06-27 04:26:11,304.304 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:26:11,334.334 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:26:11,336.336 INFO    ] No update needed
[2026-06-27 04:26:11,337.337 INFO    ] Checking for camera pi updates...
[2026-06-27 04:26:11,358.358 INFO    ] 200
[2026-06-27 04:26:11,360.360 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:26:11,385.385 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:26:11,423.423 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:26:11,425.425 INFO    ] No camera update needed
[2026-06-27 04:26:11,426.426 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:26:11,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:26:11,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:26:11,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:26:13,473.473 INFO    ] ================================================
[2026-06-27 04:26:13,488.488 INFO    ] Launching Daemon at Sat Jun 27 04:26:13 IST 2026
[2026-06-27 04:26:13,499.499 INFO    ] ================================================
[2026-06-27 04:26:13,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:26:13
[2026-06-27 04:26:14,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:26:14,280.280 INFO    ] Initializing speech engine...
[2026-06-27 04:26:14,286.286 INFO    ] 2026-06-27 04:26:14
[2026-06-27 04:26:14,488.488 INFO    ] 2026-06-27 04:26:14
[2026-06-27 04:26:14,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:26:14,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:26:14,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:26:14,900.900 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:26:14,927.927 INFO    ] time= 27/06/2026 04:26:14
[2026-06-27 04:26:14,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:26:14,934.934 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:26:15,000.000 INFO    ] No existing commands found in stream
[2026-06-27 04:26:20,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:26:20,013.013 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-27 04:26:21,610.610 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:26:21,612.612 INFO    ] Checking for system updates...
[2026-06-27 04:26:21,633.633 INFO    ] 200
[2026-06-27 04:26:21,635.635 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:26:21,665.665 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:26:21,667.667 INFO    ] No update needed
[2026-06-27 04:26:21,668.668 INFO    ] Checking for camera pi updates...
[2026-06-27 04:26:21,688.688 INFO    ] 200
[2026-06-27 04:26:21,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:26:21,713.713 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:26:21,755.755 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:26:21,756.756 INFO    ] No camera update needed
[2026-06-27 04:26:21,758.758 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:26:21,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:26:21,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:26:21,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:26:23,805.805 INFO    ] ================================================
[2026-06-27 04:26:23,821.821 INFO    ] Launching Daemon at Sat Jun 27 04:26:23 IST 2026
[2026-06-27 04:26:23,833.833 INFO    ] ================================================
[2026-06-27 04:26:24,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:26:24
[2026-06-27 04:26:24,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:26:24,619.619 INFO    ] Initializing speech engine...
[2026-06-27 04:26:24,629.629 INFO    ] 2026-06-27 04:26:24
[2026-06-27 04:26:24,833.833 INFO    ] 2026-06-27 04:26:24
[2026-06-27 04:26:24,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:26:25,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:26:25,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:26:25,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:26:25,252.252 INFO    ] time= 27/06/2026 04:26:25
[2026-06-27 04:26:25,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:26:25,282.282 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:26:25,348.348 INFO    ] No existing commands found in stream
[2026-06-27 04:26:30,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:26:30,360.360 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-27 04:26:33,480.480 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 04:26:33,482.482 INFO    ] Checking for system updates...
[2026-06-27 04:26:33,503.503 INFO    ] 200
[2026-06-27 04:26:33,505.505 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:26:33,538.538 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:26:33,539.539 INFO    ] No update needed
[2026-06-27 04:26:33,540.540 INFO    ] Checking for camera pi updates...
[2026-06-27 04:26:33,561.561 INFO    ] 200
[2026-06-27 04:26:33,562.562 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:26:33,587.587 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:26:33,642.642 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:26:33,643.643 INFO    ] No camera update needed
[2026-06-27 04:26:33,645.645 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:26:33,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:26:33,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:26:33,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:26:35,690.690 INFO    ] ================================================
[2026-06-27 04:26:35,705.705 INFO    ] Launching Daemon at Sat Jun 27 04:26:35 IST 2026
[2026-06-27 04:26:35,716.716 INFO    ] ================================================
[2026-06-27 04:26:36,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:26:36
[2026-06-27 04:26:36,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:26:36,517.517 INFO    ] Initializing speech engine...
[2026-06-27 04:26:36,520.520 INFO    ] 2026-06-27 04:26:36
[2026-06-27 04:26:36,740.740 INFO    ] 2026-06-27 04:26:36
[2026-06-27 04:26:36,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:26:36,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:26:36,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:26:37,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:26:37,151.151 INFO    ] time= 27/06/2026 04:26:37
[2026-06-27 04:26:37,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:26:37,193.193 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:26:37,265.265 INFO    ] No existing commands found in stream
[2026-06-27 04:26:42,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:26:42,277.277 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-27 04:26:46,641.641 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 04:26:46,642.642 INFO    ] Checking for system updates...
[2026-06-27 04:26:46,663.663 INFO    ] 200
[2026-06-27 04:26:46,665.665 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:26:46,698.698 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:26:46,700.700 INFO    ] No update needed
[2026-06-27 04:26:46,701.701 INFO    ] Checking for camera pi updates...
[2026-06-27 04:26:46,725.725 INFO    ] 200
[2026-06-27 04:26:46,726.726 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:26:46,753.753 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:26:46,791.791 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:26:46,792.792 INFO    ] No camera update needed
[2026-06-27 04:26:46,794.794 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:26:46,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:26:46,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:26:46,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:26:48,844.844 INFO    ] ================================================
[2026-06-27 04:26:48,861.861 INFO    ] Launching Daemon at Sat Jun 27 04:26:48 IST 2026
[2026-06-27 04:26:48,873.873 INFO    ] ================================================
[2026-06-27 04:26:49,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:26:49
[2026-06-27 04:26:49,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:26:49,678.678 INFO    ] Initializing speech engine...
[2026-06-27 04:26:49,683.683 INFO    ] 2026-06-27 04:26:49
[2026-06-27 04:26:49,890.890 INFO    ] 2026-06-27 04:26:49
[2026-06-27 04:26:49,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:26:50,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:26:50,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:26:50,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:26:50,334.334 INFO    ] time= 27/06/2026 04:26:50
[2026-06-27 04:26:50,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:26:50,342.342 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:26:50,410.410 INFO    ] No existing commands found in stream
[2026-06-27 04:26:55,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:26:55,421.421 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-27 04:26:57,147.147 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:26:57,148.148 INFO    ] Checking for system updates...
[2026-06-27 04:26:57,169.169 INFO    ] 200
[2026-06-27 04:26:57,170.170 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:26:57,201.201 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:26:57,203.203 INFO    ] No update needed
[2026-06-27 04:26:57,204.204 INFO    ] Checking for camera pi updates...
[2026-06-27 04:26:57,224.224 INFO    ] 200
[2026-06-27 04:26:57,226.226 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:26:57,249.249 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:26:57,293.293 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:26:57,295.295 INFO    ] No camera update needed
[2026-06-27 04:26:57,297.297 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:26:57,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:26:57,301.301 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:26:57,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:26:59,345.345 INFO    ] ================================================
[2026-06-27 04:26:59,361.361 INFO    ] Launching Daemon at Sat Jun 27 04:26:59 IST 2026
[2026-06-27 04:26:59,372.372 INFO    ] ================================================
[2026-06-27 04:26:59,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:26:59
[2026-06-27 04:27:00,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:27:00,187.187 INFO    ] Initializing speech engine...
[2026-06-27 04:27:00,197.197 INFO    ] 2026-06-27 04:27:00
[2026-06-27 04:27:00,402.402 INFO    ] 2026-06-27 04:27:00
[2026-06-27 04:27:00,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:27:00,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:27:00,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:27:00,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:27:00,822.822 INFO    ] time= 27/06/2026 04:27:00
[2026-06-27 04:27:00,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:27:00,852.852 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:27:00,944.944 INFO    ] No existing commands found in stream
[2026-06-27 04:27:05,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:27:05,960.960 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-27 04:27:08,946.946 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 04:27:08,948.948 INFO    ] Checking for system updates...
[2026-06-27 04:27:08,970.970 INFO    ] 200
[2026-06-27 04:27:08,972.972 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:27:09,005.005 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:27:09,006.006 INFO    ] No update needed
[2026-06-27 04:27:09,007.007 INFO    ] Checking for camera pi updates...
[2026-06-27 04:27:09,027.027 INFO    ] 200
[2026-06-27 04:27:09,029.029 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:27:09,054.054 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:27:09,094.094 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:27:09,096.096 INFO    ] No camera update needed
[2026-06-27 04:27:09,097.097 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:27:09,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:27:09,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:27:09,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:27:11,144.144 INFO    ] ================================================
[2026-06-27 04:27:11,161.161 INFO    ] Launching Daemon at Sat Jun 27 04:27:11 IST 2026
[2026-06-27 04:27:11,172.172 INFO    ] ================================================
[2026-06-27 04:27:11,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:27:11
[2026-06-27 04:27:11,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:27:11,967.967 INFO    ] Initializing speech engine...
[2026-06-27 04:27:11,970.970 INFO    ] 2026-06-27 04:27:11
[2026-06-27 04:27:12,190.190 INFO    ] 2026-06-27 04:27:12
[2026-06-27 04:27:12,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:27:12,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:27:12,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:27:12,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:27:12,602.602 INFO    ] time= 27/06/2026 04:27:12
[2026-06-27 04:27:12,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:27:12,643.643 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:27:12,715.715 INFO    ] No existing commands found in stream
[2026-06-27 04:27:17,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:27:17,727.727 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-27 04:27:19,941.941 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:27:19,943.943 INFO    ] Checking for system updates...
[2026-06-27 04:27:19,963.963 INFO    ] 200
[2026-06-27 04:27:19,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:27:19,995.995 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:27:19,997.997 INFO    ] No update needed
[2026-06-27 04:27:19,998.998 INFO    ] Checking for camera pi updates...
[2026-06-27 04:27:20,017.017 INFO    ] 200
[2026-06-27 04:27:20,018.018 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:27:20,044.044 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:27:20,075.075 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:27:20,076.076 INFO    ] No camera update needed
[2026-06-27 04:27:20,078.078 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:27:20,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:27:20,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:27:20,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:27:22,124.124 INFO    ] ================================================
[2026-06-27 04:27:22,140.140 INFO    ] Launching Daemon at Sat Jun 27 04:27:22 IST 2026
[2026-06-27 04:27:22,151.151 INFO    ] ================================================
[2026-06-27 04:27:22,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:27:22
[2026-06-27 04:27:22,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:27:22,968.968 INFO    ] Initializing speech engine...
[2026-06-27 04:27:22,977.977 INFO    ] 2026-06-27 04:27:22
[2026-06-27 04:27:23,184.184 INFO    ] 2026-06-27 04:27:23
[2026-06-27 04:27:23,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:27:23,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:27:23,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:27:23,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:27:23,632.632 INFO    ] time= 27/06/2026 04:27:23
[2026-06-27 04:27:23,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:27:23,640.640 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:27:23,706.706 INFO    ] No existing commands found in stream
[2026-06-27 04:27:28,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:27:28,719.719 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-27 04:27:31,457.457 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 04:27:31,458.458 INFO    ] Checking for system updates...
[2026-06-27 04:27:31,479.479 INFO    ] 200
[2026-06-27 04:27:31,480.480 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:27:31,510.510 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:27:31,511.511 INFO    ] No update needed
[2026-06-27 04:27:31,513.513 INFO    ] Checking for camera pi updates...
[2026-06-27 04:27:31,534.534 INFO    ] 200
[2026-06-27 04:27:31,535.535 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:27:31,560.560 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:27:31,593.593 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:27:31,595.595 INFO    ] No camera update needed
[2026-06-27 04:27:31,597.597 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:27:31,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:27:31,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:27:31,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:27:33,641.641 INFO    ] ================================================
[2026-06-27 04:27:33,657.657 INFO    ] Launching Daemon at Sat Jun 27 04:27:33 IST 2026
[2026-06-27 04:27:33,667.667 INFO    ] ================================================
[2026-06-27 04:27:34,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:27:33
[2026-06-27 04:27:34,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:27:34,445.445 INFO    ] Initializing speech engine...
[2026-06-27 04:27:34,453.453 INFO    ] 2026-06-27 04:27:34
[2026-06-27 04:27:34,665.665 INFO    ] 2026-06-27 04:27:34
[2026-06-27 04:27:34,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:27:34,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:27:34,889.889 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:27:35,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:27:35,098.098 INFO    ] time= 27/06/2026 04:27:35
[2026-06-27 04:27:35,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:27:35,115.115 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:27:35,181.181 INFO    ] No existing commands found in stream
[2026-06-27 04:27:40,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:27:40,205.205 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-27 04:27:40,814.814 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 04:27:40,816.816 INFO    ] Checking for system updates...
[2026-06-27 04:27:40,838.838 INFO    ] 200
[2026-06-27 04:27:40,839.839 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:27:40,871.871 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:27:40,873.873 INFO    ] No update needed
[2026-06-27 04:27:40,874.874 INFO    ] Checking for camera pi updates...
[2026-06-27 04:27:40,899.899 INFO    ] 200
[2026-06-27 04:27:40,900.900 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:27:40,925.925 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:27:40,971.971 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:27:40,972.972 INFO    ] No camera update needed
[2026-06-27 04:27:40,974.974 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:27:40,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:27:40,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:27:40,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:27:43,019.019 INFO    ] ================================================
[2026-06-27 04:27:43,035.035 INFO    ] Launching Daemon at Sat Jun 27 04:27:43 IST 2026
[2026-06-27 04:27:43,046.046 INFO    ] ================================================
[2026-06-27 04:27:43,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:27:43
[2026-06-27 04:27:43,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:27:43,908.908 INFO    ] Initializing speech engine...
[2026-06-27 04:27:43,914.914 INFO    ] 2026-06-27 04:27:43
[2026-06-27 04:27:44,119.119 INFO    ] 2026-06-27 04:27:44
[2026-06-27 04:27:44,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:27:44,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:27:44,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:27:44,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:27:44,539.539 INFO    ] time= 27/06/2026 04:27:44
[2026-06-27 04:27:44,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:27:44,568.568 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:27:44,636.636 INFO    ] No existing commands found in stream
[2026-06-27 04:27:49,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:27:49,649.649 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-27 04:27:52,467.467 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 04:27:52,468.468 INFO    ] Checking for system updates...
[2026-06-27 04:27:52,489.489 INFO    ] 200
[2026-06-27 04:27:52,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:27:52,522.522 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:27:52,523.523 INFO    ] No update needed
[2026-06-27 04:27:52,525.525 INFO    ] Checking for camera pi updates...
[2026-06-27 04:27:52,545.545 INFO    ] 200
[2026-06-27 04:27:52,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:27:52,570.570 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:27:52,616.616 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:27:52,618.618 INFO    ] No camera update needed
[2026-06-27 04:27:52,619.619 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:27:52,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:27:52,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:27:52,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:27:54,667.667 INFO    ] ================================================
[2026-06-27 04:27:54,684.684 INFO    ] Launching Daemon at Sat Jun 27 04:27:54 IST 2026
[2026-06-27 04:27:54,696.696 INFO    ] ================================================
[2026-06-27 04:27:55,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:27:55
[2026-06-27 04:27:55,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:27:55,569.569 INFO    ] Initializing speech engine...
[2026-06-27 04:27:55,575.575 INFO    ] 2026-06-27 04:27:55
[2026-06-27 04:27:55,785.785 INFO    ] 2026-06-27 04:27:55
[2026-06-27 04:27:55,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:27:56,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:27:56,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:27:56,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:27:56,214.214 INFO    ] time= 27/06/2026 04:27:56
[2026-06-27 04:27:56,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:27:56,241.241 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:27:56,309.309 INFO    ] No existing commands found in stream
[2026-06-27 04:28:01,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:28:01,321.321 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-27 04:28:02,783.783 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 04:28:02,785.785 INFO    ] Checking for system updates...
[2026-06-27 04:28:02,807.807 INFO    ] 200
[2026-06-27 04:28:02,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:28:02,849.849 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:28:02,850.850 INFO    ] No update needed
[2026-06-27 04:28:02,851.851 INFO    ] Checking for camera pi updates...
[2026-06-27 04:28:02,871.871 INFO    ] 200
[2026-06-27 04:28:02,872.872 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:28:02,897.897 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:28:02,943.943 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:28:02,945.945 INFO    ] No camera update needed
[2026-06-27 04:28:02,946.946 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:28:02,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:28:02,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:28:02,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:28:04,992.992 INFO    ] ================================================
[2026-06-27 04:28:05,008.008 INFO    ] Launching Daemon at Sat Jun 27 04:28:05 IST 2026
[2026-06-27 04:28:05,018.018 INFO    ] ================================================
[2026-06-27 04:28:05,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:28:05
[2026-06-27 04:28:05,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:28:05,812.812 INFO    ] Initializing speech engine...
[2026-06-27 04:28:05,819.819 INFO    ] 2026-06-27 04:28:05
[2026-06-27 04:28:06,049.049 INFO    ] 2026-06-27 04:28:06
[2026-06-27 04:28:06,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:28:06,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:28:06,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:28:06,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:28:06,476.476 INFO    ] time= 27/06/2026 04:28:06
[2026-06-27 04:28:06,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:28:06,526.526 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:28:06,597.597 INFO    ] No existing commands found in stream
[2026-06-27 04:28:11,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:28:11,614.614 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-27 04:28:13,895.895 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:28:13,896.896 INFO    ] Checking for system updates...
[2026-06-27 04:28:13,918.918 INFO    ] 200
[2026-06-27 04:28:13,919.919 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:28:13,950.950 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:28:13,951.951 INFO    ] No update needed
[2026-06-27 04:28:13,952.952 INFO    ] Checking for camera pi updates...
[2026-06-27 04:28:13,972.972 INFO    ] 200
[2026-06-27 04:28:13,973.973 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:28:13,996.996 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:28:14,140.140 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:28:14,142.142 INFO    ] No camera update needed
[2026-06-27 04:28:14,143.143 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:28:14,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:28:14,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:28:14,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:28:16,190.190 INFO    ] ================================================
[2026-06-27 04:28:16,205.205 INFO    ] Launching Daemon at Sat Jun 27 04:28:16 IST 2026
[2026-06-27 04:28:16,216.216 INFO    ] ================================================
[2026-06-27 04:28:16,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:28:16
[2026-06-27 04:28:16,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:28:17,008.008 INFO    ] Initializing speech engine...
[2026-06-27 04:28:17,012.012 INFO    ] 2026-06-27 04:28:17
[2026-06-27 04:28:17,230.230 INFO    ] 2026-06-27 04:28:17
[2026-06-27 04:28:17,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:28:17,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:28:17,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:28:17,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:28:17,653.653 INFO    ] time= 27/06/2026 04:28:17
[2026-06-27 04:28:17,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:28:17,682.682 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:28:17,750.750 INFO    ] No existing commands found in stream
[2026-06-27 04:28:22,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:28:22,762.762 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-27 04:28:23,458.458 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:28:23,460.460 INFO    ] Checking for system updates...
[2026-06-27 04:28:23,481.481 INFO    ] 200
[2026-06-27 04:28:23,482.482 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:28:23,513.513 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:28:23,514.514 INFO    ] No update needed
[2026-06-27 04:28:23,516.516 INFO    ] Checking for camera pi updates...
[2026-06-27 04:28:23,536.536 INFO    ] 200
[2026-06-27 04:28:23,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:28:23,565.565 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:28:23,603.603 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:28:23,605.605 INFO    ] No camera update needed
[2026-06-27 04:28:23,606.606 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:28:23,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:28:23,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:28:23,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:28:25,653.653 INFO    ] ================================================
[2026-06-27 04:28:25,669.669 INFO    ] Launching Daemon at Sat Jun 27 04:28:25 IST 2026
[2026-06-27 04:28:25,679.679 INFO    ] ================================================
[2026-06-27 04:28:26,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:28:26
[2026-06-27 04:28:26,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:28:26,454.454 INFO    ] Initializing speech engine...
[2026-06-27 04:28:26,457.457 INFO    ] 2026-06-27 04:28:26
[2026-06-27 04:28:26,677.677 INFO    ] 2026-06-27 04:28:26
[2026-06-27 04:28:26,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:28:26,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:28:26,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:28:27,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:28:27,120.120 INFO    ] time= 27/06/2026 04:28:27
[2026-06-27 04:28:27,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:28:27,131.131 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:28:27,197.197 INFO    ] No existing commands found in stream
[2026-06-27 04:28:32,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:28:32,206.206 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-27 04:28:33,849.849 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 04:28:33,851.851 INFO    ] Checking for system updates...
[2026-06-27 04:28:33,873.873 INFO    ] 200
[2026-06-27 04:28:33,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:28:33,907.907 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:28:33,909.909 INFO    ] No update needed
[2026-06-27 04:28:33,910.910 INFO    ] Checking for camera pi updates...
[2026-06-27 04:28:33,930.930 INFO    ] 200
[2026-06-27 04:28:33,931.931 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:28:33,956.956 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:28:34,002.002 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:28:34,004.004 INFO    ] No camera update needed
[2026-06-27 04:28:34,005.005 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:28:34,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:28:34,010.010 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:28:34,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:28:36,053.053 INFO    ] ================================================
[2026-06-27 04:28:36,070.070 INFO    ] Launching Daemon at Sat Jun 27 04:28:36 IST 2026
[2026-06-27 04:28:36,082.082 INFO    ] ================================================
[2026-06-27 04:28:36,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:28:36
[2026-06-27 04:28:36,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:28:36,927.927 INFO    ] Initializing speech engine...
[2026-06-27 04:28:36,931.931 INFO    ] 2026-06-27 04:28:36
[2026-06-27 04:28:37,139.139 INFO    ] 2026-06-27 04:28:37
[2026-06-27 04:28:37,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:28:37,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:28:37,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:28:37,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:28:37,563.563 INFO    ] time= 27/06/2026 04:28:37
[2026-06-27 04:28:37,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:28:37,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:28:37,658.658 INFO    ] No existing commands found in stream
[2026-06-27 04:28:42,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:28:42,670.670 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-27 04:28:43,994.994 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:28:43,996.996 INFO    ] Checking for system updates...
[2026-06-27 04:28:44,017.017 INFO    ] 200
[2026-06-27 04:28:44,018.018 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:28:44,049.049 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:28:44,051.051 INFO    ] No update needed
[2026-06-27 04:28:44,052.052 INFO    ] Checking for camera pi updates...
[2026-06-27 04:28:44,073.073 INFO    ] 200
[2026-06-27 04:28:44,075.075 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:28:44,098.098 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:28:44,138.138 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:28:44,139.139 INFO    ] No camera update needed
[2026-06-27 04:28:44,141.141 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:28:44,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:28:44,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:28:44,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:28:46,189.189 INFO    ] ================================================
[2026-06-27 04:28:46,204.204 INFO    ] Launching Daemon at Sat Jun 27 04:28:46 IST 2026
[2026-06-27 04:28:46,215.215 INFO    ] ================================================
[2026-06-27 04:28:46,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:28:46
[2026-06-27 04:28:46,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:28:46,990.990 INFO    ] Initializing speech engine...
[2026-06-27 04:28:47,000.000 INFO    ] 2026-06-27 04:28:46
[2026-06-27 04:28:47,210.210 INFO    ] 2026-06-27 04:28:47
[2026-06-27 04:28:47,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:28:47,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:28:47,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:28:47,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:28:47,660.660 INFO    ] time= 27/06/2026 04:28:47
[2026-06-27 04:28:47,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:28:47,691.691 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:28:47,762.762 INFO    ] No existing commands found in stream
[2026-06-27 04:28:52,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:28:52,775.775 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-27 04:28:56,669.669 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:28:56,671.671 INFO    ] Checking for system updates...
[2026-06-27 04:28:56,696.696 INFO    ] 200
[2026-06-27 04:28:56,697.697 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:28:56,734.734 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:28:56,736.736 INFO    ] No update needed
[2026-06-27 04:28:56,737.737 INFO    ] Checking for camera pi updates...
[2026-06-27 04:28:56,758.758 INFO    ] 200
[2026-06-27 04:28:56,760.760 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:28:56,784.784 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:28:56,828.828 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:28:56,829.829 INFO    ] No camera update needed
[2026-06-27 04:28:56,831.831 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:28:56,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:28:56,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:28:56,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:28:58,877.877 INFO    ] ================================================
[2026-06-27 04:28:58,892.892 INFO    ] Launching Daemon at Sat Jun 27 04:28:58 IST 2026
[2026-06-27 04:28:58,904.904 INFO    ] ================================================
[2026-06-27 04:28:59,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:28:59
[2026-06-27 04:28:59,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:28:59,730.730 INFO    ] Initializing speech engine...
[2026-06-27 04:28:59,740.740 INFO    ] 2026-06-27 04:28:59
[2026-06-27 04:28:59,950.950 INFO    ] 2026-06-27 04:28:59
[2026-06-27 04:28:59,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:29:00,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:29:00,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:29:00,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:29:00,391.391 INFO    ] time= 27/06/2026 04:29:00
[2026-06-27 04:29:00,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:29:00,399.399 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:29:00,466.466 INFO    ] No existing commands found in stream
[2026-06-27 04:29:05,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:29:05,478.478 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-27 04:29:06,553.553 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 04:29:06,555.555 INFO    ] Checking for system updates...
[2026-06-27 04:29:06,577.577 INFO    ] 200
[2026-06-27 04:29:06,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:29:06,614.614 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:29:06,616.616 INFO    ] No update needed
[2026-06-27 04:29:06,617.617 INFO    ] Checking for camera pi updates...
[2026-06-27 04:29:06,639.639 INFO    ] 200
[2026-06-27 04:29:06,641.641 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:29:06,664.664 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:29:06,701.701 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:29:06,703.703 INFO    ] No camera update needed
[2026-06-27 04:29:06,704.704 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:29:06,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:29:06,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:29:06,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:29:08,756.756 INFO    ] ================================================
[2026-06-27 04:29:08,771.771 INFO    ] Launching Daemon at Sat Jun 27 04:29:08 IST 2026
[2026-06-27 04:29:08,782.782 INFO    ] ================================================
[2026-06-27 04:29:09,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:29:09
[2026-06-27 04:29:09,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:29:09,658.658 INFO    ] Initializing speech engine...
[2026-06-27 04:29:09,661.661 INFO    ] 2026-06-27 04:29:09
[2026-06-27 04:29:09,868.868 INFO    ] 2026-06-27 04:29:09
[2026-06-27 04:29:09,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:29:10,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:29:10,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:29:10,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:29:10,309.309 INFO    ] time= 27/06/2026 04:29:10
[2026-06-27 04:29:10,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:29:10,351.351 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:29:10,427.427 INFO    ] No existing commands found in stream
[2026-06-27 04:29:15,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:29:15,439.439 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-27 04:29:18,747.747 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:29:18,749.749 INFO    ] Checking for system updates...
[2026-06-27 04:29:18,770.770 INFO    ] 200
[2026-06-27 04:29:18,771.771 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:29:18,801.801 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:29:18,803.803 INFO    ] No update needed
[2026-06-27 04:29:18,804.804 INFO    ] Checking for camera pi updates...
[2026-06-27 04:29:18,824.824 INFO    ] 200
[2026-06-27 04:29:18,825.825 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:29:18,849.849 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:29:18,870.870 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:29:18,871.871 INFO    ] No camera update needed
[2026-06-27 04:29:18,873.873 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:29:18,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:29:18,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:29:18,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:29:20,918.918 INFO    ] ================================================
[2026-06-27 04:29:20,934.934 INFO    ] Launching Daemon at Sat Jun 27 04:29:20 IST 2026
[2026-06-27 04:29:20,944.944 INFO    ] ================================================
[2026-06-27 04:29:21,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:29:21
[2026-06-27 04:29:21,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:29:21,754.754 INFO    ] Initializing speech engine...
[2026-06-27 04:29:21,759.759 INFO    ] 2026-06-27 04:29:21
[2026-06-27 04:29:21,969.969 INFO    ] 2026-06-27 04:29:21
[2026-06-27 04:29:21,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:29:22,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:29:22,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:29:22,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:29:22,405.405 INFO    ] time= 27/06/2026 04:29:22
[2026-06-27 04:29:22,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:29:22,427.427 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:29:22,496.496 INFO    ] No existing commands found in stream
[2026-06-27 04:29:27,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:29:27,507.507 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-27 04:29:30,348.348 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 04:29:30,350.350 INFO    ] Checking for system updates...
[2026-06-27 04:29:30,373.373 INFO    ] 200
[2026-06-27 04:29:30,374.374 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:29:30,408.408 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:29:30,409.409 INFO    ] No update needed
[2026-06-27 04:29:30,410.410 INFO    ] Checking for camera pi updates...
[2026-06-27 04:29:30,430.430 INFO    ] 200
[2026-06-27 04:29:30,431.431 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:29:30,455.455 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:29:30,495.495 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:29:30,496.496 INFO    ] No camera update needed
[2026-06-27 04:29:30,497.497 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:29:30,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:29:30,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:29:30,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:29:32,537.537 INFO    ] ================================================
[2026-06-27 04:29:32,547.547 INFO    ] Launching Daemon at Sat Jun 27 04:29:32 IST 2026
[2026-06-27 04:29:32,553.553 INFO    ] ================================================
[2026-06-27 04:29:32,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:29:32
[2026-06-27 04:29:33,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:29:33,324.324 INFO    ] Initializing speech engine...
[2026-06-27 04:29:33,334.334 INFO    ] 2026-06-27 04:29:33
[2026-06-27 04:29:33,559.559 INFO    ] 2026-06-27 04:29:33
[2026-06-27 04:29:33,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:29:33,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:29:33,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:29:33,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:29:33,981.981 INFO    ] time= 27/06/2026 04:29:33
[2026-06-27 04:29:34,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:29:34,038.038 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:29:34,113.113 INFO    ] No existing commands found in stream
[2026-06-27 04:29:39,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:29:39,126.126 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-27 04:29:40,182.182 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 04:29:40,184.184 INFO    ] Checking for system updates...
[2026-06-27 04:29:40,206.206 INFO    ] 200
[2026-06-27 04:29:40,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:29:40,237.237 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:29:40,239.239 INFO    ] No update needed
[2026-06-27 04:29:40,240.240 INFO    ] Checking for camera pi updates...
[2026-06-27 04:29:40,260.260 INFO    ] 200
[2026-06-27 04:29:40,261.261 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:29:40,284.284 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:29:40,324.324 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:29:40,326.326 INFO    ] No camera update needed
[2026-06-27 04:29:40,327.327 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:29:40,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:29:40,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:29:40,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:29:42,373.373 INFO    ] ================================================
[2026-06-27 04:29:42,388.388 INFO    ] Launching Daemon at Sat Jun 27 04:29:42 IST 2026
[2026-06-27 04:29:42,400.400 INFO    ] ================================================
[2026-06-27 04:29:42,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:29:42
[2026-06-27 04:29:43,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:29:43,242.242 INFO    ] Initializing speech engine...
[2026-06-27 04:29:43,248.248 INFO    ] 2026-06-27 04:29:43
[2026-06-27 04:29:43,456.456 INFO    ] 2026-06-27 04:29:43
[2026-06-27 04:29:43,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:29:43,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:29:43,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:29:43,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:29:43,907.907 INFO    ] time= 27/06/2026 04:29:43
[2026-06-27 04:29:43,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:29:43,915.915 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:29:43,983.983 INFO    ] No existing commands found in stream
[2026-06-27 04:29:48,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:29:48,996.996 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-27 04:29:52,935.935 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 04:29:52,937.937 INFO    ] Checking for system updates...
[2026-06-27 04:29:52,957.957 INFO    ] 200
[2026-06-27 04:29:52,959.959 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:29:52,990.990 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:29:52,991.991 INFO    ] No update needed
[2026-06-27 04:29:52,992.992 INFO    ] Checking for camera pi updates...
[2026-06-27 04:29:53,012.012 INFO    ] 200
[2026-06-27 04:29:53,013.013 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:29:53,039.039 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:29:53,089.089 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:29:53,090.090 INFO    ] No camera update needed
[2026-06-27 04:29:53,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:29:53,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:29:53,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:29:53,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:29:55,138.138 INFO    ] ================================================
[2026-06-27 04:29:55,154.154 INFO    ] Launching Daemon at Sat Jun 27 04:29:55 IST 2026
[2026-06-27 04:29:55,165.165 INFO    ] ================================================
[2026-06-27 04:29:55,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:29:55
[2026-06-27 04:29:55,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:29:55,984.984 INFO    ] Initializing speech engine...
[2026-06-27 04:29:55,990.990 INFO    ] 2026-06-27 04:29:55
[2026-06-27 04:29:56,193.193 INFO    ] 2026-06-27 04:29:56
[2026-06-27 04:29:56,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:29:56,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:29:56,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:29:56,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:29:56,617.617 INFO    ] time= 27/06/2026 04:29:56
[2026-06-27 04:29:56,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:29:56,639.639 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:29:56,728.728 INFO    ] No existing commands found in stream
[2026-06-27 04:30:01,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:30:01,745.745 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-27 04:30:02,427.427 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 04:30:02,428.428 INFO    ] Checking for system updates...
[2026-06-27 04:30:02,452.452 INFO    ] 200
[2026-06-27 04:30:02,454.454 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:30:02,493.493 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:30:02,495.495 INFO    ] No update needed
[2026-06-27 04:30:02,496.496 INFO    ] Checking for camera pi updates...
[2026-06-27 04:30:02,527.527 INFO    ] 200
[2026-06-27 04:30:02,529.529 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:30:02,555.555 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:30:02,583.583 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:30:02,585.585 INFO    ] No camera update needed
[2026-06-27 04:30:02,586.586 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:30:02,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:30:02,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:30:02,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:30:04,636.636 INFO    ] ================================================
[2026-06-27 04:30:04,652.652 INFO    ] Launching Daemon at Sat Jun 27 04:30:04 IST 2026
[2026-06-27 04:30:04,664.664 INFO    ] ================================================
[2026-06-27 04:30:05,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:30:05
[2026-06-27 04:30:05,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:30:05,507.507 INFO    ] Initializing speech engine...
[2026-06-27 04:30:05,512.512 INFO    ] 2026-06-27 04:30:05
[2026-06-27 04:30:05,737.737 INFO    ] 2026-06-27 04:30:05
[2026-06-27 04:30:05,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:30:05,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:30:05,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:30:06,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:30:06,191.191 INFO    ] time= 27/06/2026 04:30:06
[2026-06-27 04:30:06,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:30:06,199.199 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:30:06,266.266 INFO    ] No existing commands found in stream
[2026-06-27 04:30:11,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:30:11,279.279 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-27 04:30:11,996.996 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 04:30:12,001.001 INFO    ] Checking for system updates...
[2026-06-27 04:30:12,024.024 INFO    ] 200
[2026-06-27 04:30:12,025.025 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:30:12,057.057 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:30:12,059.059 INFO    ] No update needed
[2026-06-27 04:30:12,060.060 INFO    ] Checking for camera pi updates...
[2026-06-27 04:30:12,080.080 INFO    ] 200
[2026-06-27 04:30:12,082.082 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:30:12,107.107 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:30:12,146.146 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:30:12,148.148 INFO    ] No camera update needed
[2026-06-27 04:30:12,149.149 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:30:12,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:30:12,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:30:12,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:30:14,188.188 INFO    ] ================================================
[2026-06-27 04:30:14,197.197 INFO    ] Launching Daemon at Sat Jun 27 04:30:14 IST 2026
[2026-06-27 04:30:14,203.203 INFO    ] ================================================
[2026-06-27 04:30:14,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:30:14
[2026-06-27 04:30:14,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:30:14,998.998 INFO    ] Initializing speech engine...
[2026-06-27 04:30:15,002.002 INFO    ] 2026-06-27 04:30:14
[2026-06-27 04:30:15,221.221 INFO    ] 2026-06-27 04:30:15
[2026-06-27 04:30:15,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:30:15,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:30:15,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:30:15,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:30:15,646.646 INFO    ] time= 27/06/2026 04:30:15
[2026-06-27 04:30:15,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:30:15,689.689 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:30:15,786.786 INFO    ] No existing commands found in stream
[2026-06-27 04:30:20,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:30:20,799.799 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-27 04:30:23,282.282 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:30:23,283.283 INFO    ] Checking for system updates...
[2026-06-27 04:30:23,305.305 INFO    ] 200
[2026-06-27 04:30:23,306.306 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:30:23,337.337 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:30:23,338.338 INFO    ] No update needed
[2026-06-27 04:30:23,339.339 INFO    ] Checking for camera pi updates...
[2026-06-27 04:30:23,359.359 INFO    ] 200
[2026-06-27 04:30:23,360.360 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:30:23,384.384 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:30:23,526.526 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:30:23,527.527 INFO    ] No camera update needed
[2026-06-27 04:30:23,528.528 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:30:23,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:30:23,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:30:23,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:30:25,576.576 INFO    ] ================================================
[2026-06-27 04:30:25,592.592 INFO    ] Launching Daemon at Sat Jun 27 04:30:25 IST 2026
[2026-06-27 04:30:25,604.604 INFO    ] ================================================
[2026-06-27 04:30:25,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:30:25
[2026-06-27 04:30:26,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:30:26,398.398 INFO    ] Initializing speech engine...
[2026-06-27 04:30:26,403.403 INFO    ] 2026-06-27 04:30:26
[2026-06-27 04:30:26,607.607 INFO    ] 2026-06-27 04:30:26
[2026-06-27 04:30:26,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:30:26,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:30:26,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:30:26,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:30:27,024.024 INFO    ] time= 27/06/2026 04:30:26
[2026-06-27 04:30:27,051.051 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:30:27,057.057 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:30:27,123.123 INFO    ] No existing commands found in stream
[2026-06-27 04:30:32,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:30:32,135.135 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-27 04:30:32,817.817 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:30:32,820.820 INFO    ] Checking for system updates...
[2026-06-27 04:30:32,861.861 INFO    ] 200
[2026-06-27 04:30:32,864.864 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:30:32,919.919 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:30:32,921.921 INFO    ] No update needed
[2026-06-27 04:30:32,924.924 INFO    ] Checking for camera pi updates...
[2026-06-27 04:30:32,958.958 INFO    ] 200
[2026-06-27 04:30:32,960.960 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:30:33,006.006 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:30:33,047.047 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:30:33,049.049 INFO    ] No camera update needed
[2026-06-27 04:30:33,051.051 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:30:33,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:30:33,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:30:33,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:30:35,105.105 INFO    ] ================================================
[2026-06-27 04:30:35,121.121 INFO    ] Launching Daemon at Sat Jun 27 04:30:35 IST 2026
[2026-06-27 04:30:35,131.131 INFO    ] ================================================
[2026-06-27 04:30:35,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:30:35
[2026-06-27 04:30:35,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:30:35,934.934 INFO    ] Initializing speech engine...
[2026-06-27 04:30:35,948.948 INFO    ] 2026-06-27 04:30:35
[2026-06-27 04:30:36,154.154 INFO    ] 2026-06-27 04:30:36
[2026-06-27 04:30:36,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:30:36,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:30:36,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:30:36,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:30:36,583.583 INFO    ] time= 27/06/2026 04:30:36
[2026-06-27 04:30:36,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:30:36,612.612 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:30:36,679.679 INFO    ] No existing commands found in stream
[2026-06-27 04:30:41,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:30:41,691.691 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-27 04:30:43,928.928 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:30:43,929.929 INFO    ] Checking for system updates...
[2026-06-27 04:30:43,951.951 INFO    ] 200
[2026-06-27 04:30:43,953.953 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:30:43,985.985 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:30:43,986.986 INFO    ] No update needed
[2026-06-27 04:30:43,988.988 INFO    ] Checking for camera pi updates...
[2026-06-27 04:30:44,008.008 INFO    ] 200
[2026-06-27 04:30:44,009.009 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:30:44,034.034 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:30:44,071.071 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:30:44,073.073 INFO    ] No camera update needed
[2026-06-27 04:30:44,074.074 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:30:44,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:30:44,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:30:44,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:30:46,122.122 INFO    ] ================================================
[2026-06-27 04:30:46,139.139 INFO    ] Launching Daemon at Sat Jun 27 04:30:46 IST 2026
[2026-06-27 04:30:46,151.151 INFO    ] ================================================
[2026-06-27 04:30:46,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:30:46
[2026-06-27 04:30:46,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:30:46,976.976 INFO    ] Initializing speech engine...
[2026-06-27 04:30:46,981.981 INFO    ] 2026-06-27 04:30:46
[2026-06-27 04:30:47,185.185 INFO    ] 2026-06-27 04:30:47
[2026-06-27 04:30:47,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:30:47,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:30:47,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:30:47,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:30:47,607.607 INFO    ] time= 27/06/2026 04:30:47
[2026-06-27 04:30:47,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:30:47,635.635 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:30:47,700.700 INFO    ] No existing commands found in stream
[2026-06-27 04:30:52,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:30:52,713.713 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-27 04:30:53,689.689 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 04:30:53,691.691 INFO    ] Checking for system updates...
[2026-06-27 04:30:53,713.713 INFO    ] 200
[2026-06-27 04:30:53,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:30:53,745.745 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:30:53,747.747 INFO    ] No update needed
[2026-06-27 04:30:53,752.752 INFO    ] Checking for camera pi updates...
[2026-06-27 04:30:53,772.772 INFO    ] 200
[2026-06-27 04:30:53,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:30:53,798.798 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:30:53,822.822 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:30:53,824.824 INFO    ] No camera update needed
[2026-06-27 04:30:53,825.825 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:30:53,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:30:53,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:30:53,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:30:55,872.872 INFO    ] ================================================
[2026-06-27 04:30:55,889.889 INFO    ] Launching Daemon at Sat Jun 27 04:30:55 IST 2026
[2026-06-27 04:30:55,901.901 INFO    ] ================================================
[2026-06-27 04:30:56,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:30:56
[2026-06-27 04:30:56,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:30:56,684.684 INFO    ] Initializing speech engine...
[2026-06-27 04:30:56,689.689 INFO    ] 2026-06-27 04:30:56
[2026-06-27 04:30:56,895.895 INFO    ] 2026-06-27 04:30:56
[2026-06-27 04:30:56,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:30:57,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:30:57,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:30:57,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:30:57,342.342 INFO    ] time= 27/06/2026 04:30:57
[2026-06-27 04:30:57,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:30:57,349.349 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:30:57,416.416 INFO    ] No existing commands found in stream
[2026-06-27 04:31:02,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:31:02,428.428 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-27 04:31:05,182.182 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 04:31:05,184.184 INFO    ] Checking for system updates...
[2026-06-27 04:31:05,206.206 INFO    ] 200
[2026-06-27 04:31:05,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:31:05,240.240 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:31:05,242.242 INFO    ] No update needed
[2026-06-27 04:31:05,243.243 INFO    ] Checking for camera pi updates...
[2026-06-27 04:31:05,263.263 INFO    ] 200
[2026-06-27 04:31:05,264.264 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:31:05,288.288 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:31:05,325.325 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:31:05,326.326 INFO    ] No camera update needed
[2026-06-27 04:31:05,328.328 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:31:05,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:31:05,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:31:05,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:31:07,375.375 INFO    ] ================================================
[2026-06-27 04:31:07,397.397 INFO    ] Launching Daemon at Sat Jun 27 04:31:07 IST 2026
[2026-06-27 04:31:07,409.409 INFO    ] ================================================
[2026-06-27 04:31:07,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:31:07
[2026-06-27 04:31:08,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:31:08,189.189 INFO    ] Initializing speech engine...
[2026-06-27 04:31:08,200.200 INFO    ] 2026-06-27 04:31:08
[2026-06-27 04:31:08,416.416 INFO    ] 2026-06-27 04:31:08
[2026-06-27 04:31:08,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:31:08,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:31:08,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:31:08,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:31:08,836.836 INFO    ] time= 27/06/2026 04:31:08
[2026-06-27 04:31:08,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:31:08,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:31:08,976.976 INFO    ] No existing commands found in stream
[2026-06-27 04:31:14,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:31:14,013.013 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-27 04:31:15,337.337 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 04:31:15,338.338 INFO    ] Checking for system updates...
[2026-06-27 04:31:15,360.360 INFO    ] 200
[2026-06-27 04:31:15,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:31:15,393.393 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:31:15,394.394 INFO    ] No update needed
[2026-06-27 04:31:15,396.396 INFO    ] Checking for camera pi updates...
[2026-06-27 04:31:15,417.417 INFO    ] 200
[2026-06-27 04:31:15,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:31:15,443.443 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:31:15,489.489 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:31:15,490.490 INFO    ] No camera update needed
[2026-06-27 04:31:15,492.492 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:31:15,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:31:15,497.497 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:31:15,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:31:17,543.543 INFO    ] ================================================
[2026-06-27 04:31:17,559.559 INFO    ] Launching Daemon at Sat Jun 27 04:31:17 IST 2026
[2026-06-27 04:31:17,570.570 INFO    ] ================================================
[2026-06-27 04:31:17,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:31:17
[2026-06-27 04:31:18,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:31:18,371.371 INFO    ] Initializing speech engine...
[2026-06-27 04:31:18,377.377 INFO    ] 2026-06-27 04:31:18
[2026-06-27 04:31:18,584.584 INFO    ] 2026-06-27 04:31:18
[2026-06-27 04:31:18,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:31:18,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:31:18,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:31:18,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:31:19,005.005 INFO    ] time= 27/06/2026 04:31:18
[2026-06-27 04:31:19,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:31:19,033.033 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:31:19,101.101 INFO    ] No existing commands found in stream
[2026-06-27 04:31:24,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:31:24,113.113 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-27 04:31:27,906.906 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:31:27,907.907 INFO    ] Checking for system updates...
[2026-06-27 04:31:27,928.928 INFO    ] 200
[2026-06-27 04:31:27,929.929 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:31:27,960.960 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:31:27,961.961 INFO    ] No update needed
[2026-06-27 04:31:27,962.962 INFO    ] Checking for camera pi updates...
[2026-06-27 04:31:27,984.984 INFO    ] 200
[2026-06-27 04:31:27,985.985 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:31:28,011.011 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:31:28,049.049 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:31:28,050.050 INFO    ] No camera update needed
[2026-06-27 04:31:28,055.055 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:31:28,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:31:28,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:31:28,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:31:30,102.102 INFO    ] ================================================
[2026-06-27 04:31:30,117.117 INFO    ] Launching Daemon at Sat Jun 27 04:31:30 IST 2026
[2026-06-27 04:31:30,128.128 INFO    ] ================================================
[2026-06-27 04:31:30,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:31:30
[2026-06-27 04:31:30,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:31:30,946.946 INFO    ] Initializing speech engine...
[2026-06-27 04:31:30,957.957 INFO    ] 2026-06-27 04:31:30
[2026-06-27 04:31:31,161.161 INFO    ] 2026-06-27 04:31:31
[2026-06-27 04:31:31,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:31:31,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:31:31,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:31:31,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:31:31,600.600 INFO    ] time= 27/06/2026 04:31:31
[2026-06-27 04:31:31,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:31:31,607.607 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:31:31,672.672 INFO    ] No existing commands found in stream
[2026-06-27 04:31:36,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:31:36,686.686 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-27 04:31:37,138.138 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:31:37,140.140 INFO    ] Checking for system updates...
[2026-06-27 04:31:37,161.161 INFO    ] 200
[2026-06-27 04:31:37,162.162 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:31:37,193.193 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:31:37,194.194 INFO    ] No update needed
[2026-06-27 04:31:37,196.196 INFO    ] Checking for camera pi updates...
[2026-06-27 04:31:37,215.215 INFO    ] 200
[2026-06-27 04:31:37,217.217 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:31:37,240.240 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:31:37,278.278 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:31:37,280.280 INFO    ] No camera update needed
[2026-06-27 04:31:37,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:31:37,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:31:37,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:31:37,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:31:39,326.326 INFO    ] ================================================
[2026-06-27 04:31:39,341.341 INFO    ] Launching Daemon at Sat Jun 27 04:31:39 IST 2026
[2026-06-27 04:31:39,352.352 INFO    ] ================================================
[2026-06-27 04:31:39,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:31:39
[2026-06-27 04:31:40,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:31:40,189.189 INFO    ] Initializing speech engine...
[2026-06-27 04:31:40,199.199 INFO    ] 2026-06-27 04:31:40
[2026-06-27 04:31:40,404.404 INFO    ] 2026-06-27 04:31:40
[2026-06-27 04:31:40,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:31:40,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:31:40,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:31:40,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:31:40,849.849 INFO    ] time= 27/06/2026 04:31:40
[2026-06-27 04:31:40,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:31:40,856.856 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:31:40,923.923 INFO    ] No existing commands found in stream
[2026-06-27 04:31:45,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:31:45,935.935 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-27 04:31:49,867.867 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 04:31:49,869.869 INFO    ] Checking for system updates...
[2026-06-27 04:31:49,890.890 INFO    ] 200
[2026-06-27 04:31:49,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:31:49,922.922 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:31:49,924.924 INFO    ] No update needed
[2026-06-27 04:31:49,925.925 INFO    ] Checking for camera pi updates...
[2026-06-27 04:31:49,945.945 INFO    ] 200
[2026-06-27 04:31:49,946.946 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:31:49,974.974 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:31:50,014.014 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:31:50,016.016 INFO    ] No camera update needed
[2026-06-27 04:31:50,017.017 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:31:50,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:31:50,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:31:50,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:31:52,065.065 INFO    ] ================================================
[2026-06-27 04:31:52,080.080 INFO    ] Launching Daemon at Sat Jun 27 04:31:52 IST 2026
[2026-06-27 04:31:52,091.091 INFO    ] ================================================
[2026-06-27 04:31:52,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:31:52
[2026-06-27 04:31:52,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:31:52,889.889 INFO    ] Initializing speech engine...
[2026-06-27 04:31:52,892.892 INFO    ] 2026-06-27 04:31:52
[2026-06-27 04:31:53,110.110 INFO    ] 2026-06-27 04:31:53
[2026-06-27 04:31:53,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:31:53,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:31:53,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:31:53,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:31:53,529.529 INFO    ] time= 27/06/2026 04:31:53
[2026-06-27 04:31:53,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:31:53,564.564 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:31:53,631.631 INFO    ] No existing commands found in stream
[2026-06-27 04:31:58,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:31:58,643.643 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-27 04:32:00,993.993 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:32:00,995.995 INFO    ] Checking for system updates...
[2026-06-27 04:32:01,015.015 INFO    ] 200
[2026-06-27 04:32:01,017.017 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:32:01,051.051 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:32:01,052.052 INFO    ] No update needed
[2026-06-27 04:32:01,054.054 INFO    ] Checking for camera pi updates...
[2026-06-27 04:32:01,076.076 INFO    ] 200
[2026-06-27 04:32:01,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:32:01,100.100 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:32:01,135.135 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:32:01,136.136 INFO    ] No camera update needed
[2026-06-27 04:32:01,138.138 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:32:01,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:32:01,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:32:01,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:32:03,174.174 INFO    ] ================================================
[2026-06-27 04:32:03,183.183 INFO    ] Launching Daemon at Sat Jun 27 04:32:03 IST 2026
[2026-06-27 04:32:03,189.189 INFO    ] ================================================
[2026-06-27 04:32:03,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:32:03
[2026-06-27 04:32:03,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:32:03,960.960 INFO    ] Initializing speech engine...
[2026-06-27 04:32:03,966.966 INFO    ] 2026-06-27 04:32:03
[2026-06-27 04:32:04,169.169 INFO    ] 2026-06-27 04:32:04
[2026-06-27 04:32:04,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:32:04,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:32:04,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:32:04,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:32:04,609.609 INFO    ] time= 27/06/2026 04:32:04
[2026-06-27 04:32:04,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:32:04,616.616 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:32:04,682.682 INFO    ] No existing commands found in stream
[2026-06-27 04:32:09,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:32:09,694.694 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-27 04:32:12,080.080 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 04:32:12,081.081 INFO    ] Checking for system updates...
[2026-06-27 04:32:12,102.102 INFO    ] 200
[2026-06-27 04:32:12,103.103 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:32:12,134.134 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:32:12,135.135 INFO    ] No update needed
[2026-06-27 04:32:12,136.136 INFO    ] Checking for camera pi updates...
[2026-06-27 04:32:12,156.156 INFO    ] 200
[2026-06-27 04:32:12,158.158 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:32:12,183.183 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:32:12,230.230 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:32:12,231.231 INFO    ] No camera update needed
[2026-06-27 04:32:12,232.232 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:32:12,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:32:12,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:32:12,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:32:14,280.280 INFO    ] ================================================
[2026-06-27 04:32:14,296.296 INFO    ] Launching Daemon at Sat Jun 27 04:32:14 IST 2026
[2026-06-27 04:32:14,307.307 INFO    ] ================================================
[2026-06-27 04:32:14,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:32:14
[2026-06-27 04:32:14,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:32:15,111.111 INFO    ] Initializing speech engine...
[2026-06-27 04:32:15,125.125 INFO    ] 2026-06-27 04:32:15
[2026-06-27 04:32:15,330.330 INFO    ] 2026-06-27 04:32:15
[2026-06-27 04:32:15,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:32:15,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:32:15,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:32:15,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:32:15,747.747 INFO    ] time= 27/06/2026 04:32:15
[2026-06-27 04:32:15,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:32:15,777.777 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:32:15,841.841 INFO    ] No existing commands found in stream
[2026-06-27 04:32:20,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:32:20,855.855 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-27 04:32:24,634.634 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:32:24,636.636 INFO    ] Checking for system updates...
[2026-06-27 04:32:24,657.657 INFO    ] 200
[2026-06-27 04:32:24,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:32:24,691.691 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:32:24,693.693 INFO    ] No update needed
[2026-06-27 04:32:24,694.694 INFO    ] Checking for camera pi updates...
[2026-06-27 04:32:24,715.715 INFO    ] 200
[2026-06-27 04:32:24,717.717 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:32:24,741.741 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:32:24,893.893 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:32:24,894.894 INFO    ] No camera update needed
[2026-06-27 04:32:24,896.896 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:32:24,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:32:24,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:32:24,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:32:26,945.945 INFO    ] ================================================
[2026-06-27 04:32:26,960.960 INFO    ] Launching Daemon at Sat Jun 27 04:32:26 IST 2026
[2026-06-27 04:32:26,971.971 INFO    ] ================================================
[2026-06-27 04:32:27,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:32:27
[2026-06-27 04:32:27,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:32:27,775.775 INFO    ] Initializing speech engine...
[2026-06-27 04:32:27,788.788 INFO    ] 2026-06-27 04:32:27
[2026-06-27 04:32:27,998.998 INFO    ] 2026-06-27 04:32:27
[2026-06-27 04:32:28,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:32:28,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:32:28,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:32:28,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:32:28,446.446 INFO    ] time= 27/06/2026 04:32:28
[2026-06-27 04:32:28,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:32:28,454.454 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:32:28,521.521 INFO    ] No existing commands found in stream
[2026-06-27 04:32:33,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:32:33,533.533 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-27 04:32:35,106.106 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 04:32:35,108.108 INFO    ] Checking for system updates...
[2026-06-27 04:32:35,129.129 INFO    ] 200
[2026-06-27 04:32:35,131.131 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:32:35,161.161 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:32:35,162.162 INFO    ] No update needed
[2026-06-27 04:32:35,164.164 INFO    ] Checking for camera pi updates...
[2026-06-27 04:32:35,187.187 INFO    ] 200
[2026-06-27 04:32:35,188.188 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:32:35,213.213 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:32:35,259.259 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:32:35,260.260 INFO    ] No camera update needed
[2026-06-27 04:32:35,261.261 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:32:35,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:32:35,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:32:35,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:32:37,307.307 INFO    ] ================================================
[2026-06-27 04:32:37,322.322 INFO    ] Launching Daemon at Sat Jun 27 04:32:37 IST 2026
[2026-06-27 04:32:37,333.333 INFO    ] ================================================
[2026-06-27 04:32:37,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:32:37
[2026-06-27 04:32:37,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:32:38,135.135 INFO    ] Initializing speech engine...
[2026-06-27 04:32:38,144.144 INFO    ] 2026-06-27 04:32:38
[2026-06-27 04:32:38,349.349 INFO    ] 2026-06-27 04:32:38
[2026-06-27 04:32:38,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:32:38,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:32:38,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:32:38,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:32:38,785.785 INFO    ] time= 27/06/2026 04:32:38
[2026-06-27 04:32:38,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:32:38,796.796 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:32:38,864.864 INFO    ] No existing commands found in stream
[2026-06-27 04:32:43,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:32:43,876.876 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-27 04:32:44,480.480 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:32:44,481.481 INFO    ] Checking for system updates...
[2026-06-27 04:32:44,504.504 INFO    ] 200
[2026-06-27 04:32:44,505.505 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:32:44,536.536 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:32:44,537.537 INFO    ] No update needed
[2026-06-27 04:32:44,539.539 INFO    ] Checking for camera pi updates...
[2026-06-27 04:32:44,558.558 INFO    ] 200
[2026-06-27 04:32:44,560.560 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:32:44,585.585 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:32:44,627.627 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:32:44,628.628 INFO    ] No camera update needed
[2026-06-27 04:32:44,629.629 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:32:44,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:32:44,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:32:44,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:32:46,675.675 INFO    ] ================================================
[2026-06-27 04:32:46,690.690 INFO    ] Launching Daemon at Sat Jun 27 04:32:46 IST 2026
[2026-06-27 04:32:46,701.701 INFO    ] ================================================
[2026-06-27 04:32:47,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:32:47
[2026-06-27 04:32:47,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:32:47,556.556 INFO    ] Initializing speech engine...
[2026-06-27 04:32:47,566.566 INFO    ] 2026-06-27 04:32:47
[2026-06-27 04:32:47,779.779 INFO    ] 2026-06-27 04:32:47
[2026-06-27 04:32:47,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:32:47,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:32:48,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:32:48,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:32:48,219.219 INFO    ] time= 27/06/2026 04:32:48
[2026-06-27 04:32:48,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:32:48,230.230 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:32:48,298.298 INFO    ] No existing commands found in stream
[2026-06-27 04:32:53,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:32:53,310.310 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-27 04:32:55,753.753 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:32:55,755.755 INFO    ] Checking for system updates...
[2026-06-27 04:32:55,776.776 INFO    ] 200
[2026-06-27 04:32:55,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:32:55,808.808 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:32:55,809.809 INFO    ] No update needed
[2026-06-27 04:32:55,810.810 INFO    ] Checking for camera pi updates...
[2026-06-27 04:32:55,833.833 INFO    ] 200
[2026-06-27 04:32:55,834.834 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:32:55,857.857 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:32:55,895.895 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:32:55,897.897 INFO    ] No camera update needed
[2026-06-27 04:32:55,898.898 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:32:55,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:32:55,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:32:55,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:32:57,936.936 INFO    ] ================================================
[2026-06-27 04:32:57,944.944 INFO    ] Launching Daemon at Sat Jun 27 04:32:57 IST 2026
[2026-06-27 04:32:57,950.950 INFO    ] ================================================
[2026-06-27 04:32:58,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:32:58
[2026-06-27 04:32:58,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:32:58,761.761 INFO    ] Initializing speech engine...
[2026-06-27 04:32:58,771.771 INFO    ] 2026-06-27 04:32:58
[2026-06-27 04:32:58,979.979 INFO    ] 2026-06-27 04:32:58
[2026-06-27 04:32:59,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:32:59,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:32:59,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:32:59,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:32:59,397.397 INFO    ] time= 27/06/2026 04:32:59
[2026-06-27 04:32:59,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:32:59,426.426 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:32:59,493.493 INFO    ] No existing commands found in stream
[2026-06-27 04:33:04,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:33:04,505.505 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-27 04:33:06,249.249 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:33:06,250.250 INFO    ] Checking for system updates...
[2026-06-27 04:33:06,272.272 INFO    ] 200
[2026-06-27 04:33:06,274.274 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:33:06,305.305 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:33:06,306.306 INFO    ] No update needed
[2026-06-27 04:33:06,307.307 INFO    ] Checking for camera pi updates...
[2026-06-27 04:33:06,327.327 INFO    ] 200
[2026-06-27 04:33:06,328.328 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:33:06,353.353 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:33:06,389.389 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:33:06,391.391 INFO    ] No camera update needed
[2026-06-27 04:33:06,392.392 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:33:06,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:33:06,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:33:06,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:33:08,439.439 INFO    ] ================================================
[2026-06-27 04:33:08,455.455 INFO    ] Launching Daemon at Sat Jun 27 04:33:08 IST 2026
[2026-06-27 04:33:08,467.467 INFO    ] ================================================
[2026-06-27 04:33:08,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:33:08
[2026-06-27 04:33:09,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:33:09,358.358 INFO    ] Initializing speech engine...
[2026-06-27 04:33:09,363.363 INFO    ] 2026-06-27 04:33:09
[2026-06-27 04:33:09,576.576 INFO    ] 2026-06-27 04:33:09
[2026-06-27 04:33:09,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:33:09,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:33:09,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:33:10,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:33:10,046.046 INFO    ] time= 27/06/2026 04:33:10
[2026-06-27 04:33:10,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:33:10,061.061 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:33:10,146.146 INFO    ] No existing commands found in stream
[2026-06-27 04:33:15,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:33:15,161.161 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-27 04:33:17,707.707 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 04:33:17,709.709 INFO    ] Checking for system updates...
[2026-06-27 04:33:17,745.745 INFO    ] 200
[2026-06-27 04:33:17,746.746 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:33:17,780.780 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:33:17,781.781 INFO    ] No update needed
[2026-06-27 04:33:17,783.783 INFO    ] Checking for camera pi updates...
[2026-06-27 04:33:17,807.807 INFO    ] 200
[2026-06-27 04:33:17,808.808 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:33:17,837.837 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:33:17,876.876 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:33:17,877.877 INFO    ] No camera update needed
[2026-06-27 04:33:17,879.879 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:33:17,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:33:17,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:33:17,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:33:19,926.926 INFO    ] ================================================
[2026-06-27 04:33:19,942.942 INFO    ] Launching Daemon at Sat Jun 27 04:33:19 IST 2026
[2026-06-27 04:33:19,953.953 INFO    ] ================================================
[2026-06-27 04:33:20,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:33:20
[2026-06-27 04:33:20,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:33:20,732.732 INFO    ] Initializing speech engine...
[2026-06-27 04:33:20,736.736 INFO    ] 2026-06-27 04:33:20
[2026-06-27 04:33:20,957.957 INFO    ] 2026-06-27 04:33:20
[2026-06-27 04:33:20,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:33:21,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:33:21,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:33:21,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:33:21,399.399 INFO    ] time= 27/06/2026 04:33:21
[2026-06-27 04:33:21,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:33:21,424.424 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:33:21,493.493 INFO    ] No existing commands found in stream
[2026-06-27 04:33:26,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:33:26,505.505 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-27 04:33:30,862.862 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 04:33:30,864.864 INFO    ] Checking for system updates...
[2026-06-27 04:33:30,885.885 INFO    ] 200
[2026-06-27 04:33:30,886.886 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:33:30,917.917 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:33:30,918.918 INFO    ] No update needed
[2026-06-27 04:33:30,919.919 INFO    ] Checking for camera pi updates...
[2026-06-27 04:33:30,940.940 INFO    ] 200
[2026-06-27 04:33:30,942.942 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:33:30,966.966 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:33:30,991.991 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:33:30,992.992 INFO    ] No camera update needed
[2026-06-27 04:33:30,994.994 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:33:30,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:33:30,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:33:31,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:33:33,032.032 INFO    ] ================================================
[2026-06-27 04:33:33,048.048 INFO    ] Launching Daemon at Sat Jun 27 04:33:33 IST 2026
[2026-06-27 04:33:33,060.060 INFO    ] ================================================
[2026-06-27 04:33:33,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:33:33
[2026-06-27 04:33:33,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:33:33,886.886 INFO    ] Initializing speech engine...
[2026-06-27 04:33:33,891.891 INFO    ] 2026-06-27 04:33:33
[2026-06-27 04:33:34,097.097 INFO    ] 2026-06-27 04:33:34
[2026-06-27 04:33:34,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:33:34,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:33:34,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:33:34,460.460 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:33:34,518.518 INFO    ] time= 27/06/2026 04:33:34
[2026-06-27 04:33:34,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:33:34,546.546 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:33:34,613.613 INFO    ] No existing commands found in stream
[2026-06-27 04:33:39,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:33:39,625.625 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-27 04:33:42,369.369 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:33:42,370.370 INFO    ] Checking for system updates...
[2026-06-27 04:33:42,393.393 INFO    ] 200
[2026-06-27 04:33:42,394.394 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:33:42,428.428 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:33:42,429.429 INFO    ] No update needed
[2026-06-27 04:33:42,430.430 INFO    ] Checking for camera pi updates...
[2026-06-27 04:33:42,450.450 INFO    ] 200
[2026-06-27 04:33:42,451.451 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:33:42,475.475 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:33:42,523.523 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:33:42,524.524 INFO    ] No camera update needed
[2026-06-27 04:33:42,526.526 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:33:42,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:33:42,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:33:42,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:33:44,571.571 INFO    ] ================================================
[2026-06-27 04:33:44,592.592 INFO    ] Launching Daemon at Sat Jun 27 04:33:44 IST 2026
[2026-06-27 04:33:44,604.604 INFO    ] ================================================
[2026-06-27 04:33:44,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:33:44
[2026-06-27 04:33:45,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:33:45,428.428 INFO    ] Initializing speech engine...
[2026-06-27 04:33:45,432.432 INFO    ] 2026-06-27 04:33:45
[2026-06-27 04:33:45,638.638 INFO    ] 2026-06-27 04:33:45
[2026-06-27 04:33:45,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:33:45,853.853 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:33:45,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:33:46,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:33:46,080.080 INFO    ] time= 27/06/2026 04:33:46
[2026-06-27 04:33:46,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:33:46,088.088 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:33:46,155.155 INFO    ] No existing commands found in stream
[2026-06-27 04:33:51,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:33:51,167.167 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-27 04:33:55,160.160 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:33:55,162.162 INFO    ] Checking for system updates...
[2026-06-27 04:33:55,183.183 INFO    ] 200
[2026-06-27 04:33:55,184.184 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:33:55,218.218 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:33:55,220.220 INFO    ] No update needed
[2026-06-27 04:33:55,221.221 INFO    ] Checking for camera pi updates...
[2026-06-27 04:33:55,242.242 INFO    ] 200
[2026-06-27 04:33:55,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:33:55,267.267 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:33:55,289.289 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:33:55,290.290 INFO    ] No camera update needed
[2026-06-27 04:33:55,291.291 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:33:55,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:33:55,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:33:55,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:33:57,339.339 INFO    ] ================================================
[2026-06-27 04:33:57,355.355 INFO    ] Launching Daemon at Sat Jun 27 04:33:57 IST 2026
[2026-06-27 04:33:57,366.366 INFO    ] ================================================
[2026-06-27 04:33:57,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:33:57
[2026-06-27 04:33:58,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:33:58,221.221 INFO    ] Initializing speech engine...
[2026-06-27 04:33:58,227.227 INFO    ] 2026-06-27 04:33:58
[2026-06-27 04:33:58,439.439 INFO    ] 2026-06-27 04:33:58
[2026-06-27 04:33:58,468.468 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:33:58,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:33:58,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:33:58,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:33:58,884.884 INFO    ] time= 27/06/2026 04:33:58
[2026-06-27 04:33:58,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:33:58,896.896 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:33:58,964.964 INFO    ] No existing commands found in stream
[2026-06-27 04:34:03,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:34:03,992.992 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-27 04:34:06,348.348 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:34:06,349.349 INFO    ] Checking for system updates...
[2026-06-27 04:34:06,371.371 INFO    ] 200
[2026-06-27 04:34:06,372.372 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:34:06,403.403 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:34:06,405.405 INFO    ] No update needed
[2026-06-27 04:34:06,406.406 INFO    ] Checking for camera pi updates...
[2026-06-27 04:34:06,427.427 INFO    ] 200
[2026-06-27 04:34:06,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:34:06,455.455 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:34:06,497.497 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:34:06,499.499 INFO    ] No camera update needed
[2026-06-27 04:34:06,500.500 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:34:06,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:34:06,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:34:06,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:34:08,549.549 INFO    ] ================================================
[2026-06-27 04:34:08,565.565 INFO    ] Launching Daemon at Sat Jun 27 04:34:08 IST 2026
[2026-06-27 04:34:08,576.576 INFO    ] ================================================
[2026-06-27 04:34:08,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:34:08
[2026-06-27 04:34:09,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:34:09,451.451 INFO    ] Initializing speech engine...
[2026-06-27 04:34:09,457.457 INFO    ] 2026-06-27 04:34:09
[2026-06-27 04:34:09,666.666 INFO    ] 2026-06-27 04:34:09
[2026-06-27 04:34:09,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:34:09,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:34:09,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:34:10,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:34:10,091.091 INFO    ] time= 27/06/2026 04:34:10
[2026-06-27 04:34:10,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:34:10,120.120 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:34:10,188.188 INFO    ] No existing commands found in stream
[2026-06-27 04:34:15,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:34:15,206.206 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-27 04:34:16,798.798 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:34:16,800.800 INFO    ] Checking for system updates...
[2026-06-27 04:34:16,821.821 INFO    ] 200
[2026-06-27 04:34:16,823.823 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:34:16,858.858 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:34:16,859.859 INFO    ] No update needed
[2026-06-27 04:34:16,860.860 INFO    ] Checking for camera pi updates...
[2026-06-27 04:34:16,880.880 INFO    ] 200
[2026-06-27 04:34:16,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:34:16,907.907 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:34:16,945.945 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:34:16,946.946 INFO    ] No camera update needed
[2026-06-27 04:34:16,947.947 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:34:16,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:34:16,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:34:16,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:34:19,996.996 INFO    ] ================================================
[2026-06-27 04:34:19,012.012 INFO    ] Launching Daemon at Sat Jun 27 04:34:19 IST 2026
[2026-06-27 04:34:19,023.023 INFO    ] ================================================
[2026-06-27 04:34:19,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:34:19
[2026-06-27 04:34:19,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:34:19,905.905 INFO    ] Initializing speech engine...
[2026-06-27 04:34:19,909.909 INFO    ] 2026-06-27 04:34:19
[2026-06-27 04:34:20,121.121 INFO    ] 2026-06-27 04:34:20
[2026-06-27 04:34:20,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:34:20,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:34:20,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:34:20,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:34:20,573.573 INFO    ] time= 27/06/2026 04:34:20
[2026-06-27 04:34:20,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:34:20,580.580 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:34:20,648.648 INFO    ] No existing commands found in stream
[2026-06-27 04:34:25,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:34:25,666.666 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-27 04:34:29,160.160 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 04:34:29,162.162 INFO    ] Checking for system updates...
[2026-06-27 04:34:29,183.183 INFO    ] 200
[2026-06-27 04:34:29,184.184 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:34:29,215.215 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:34:29,217.217 INFO    ] No update needed
[2026-06-27 04:34:29,218.218 INFO    ] Checking for camera pi updates...
[2026-06-27 04:34:29,237.237 INFO    ] 200
[2026-06-27 04:34:29,239.239 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:34:29,262.262 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:34:29,402.402 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:34:29,403.403 INFO    ] No camera update needed
[2026-06-27 04:34:29,405.405 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:34:29,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:34:29,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:34:29,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:34:31,451.451 INFO    ] ================================================
[2026-06-27 04:34:31,467.467 INFO    ] Launching Daemon at Sat Jun 27 04:34:31 IST 2026
[2026-06-27 04:34:31,478.478 INFO    ] ================================================
[2026-06-27 04:34:31,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:34:31
[2026-06-27 04:34:32,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:34:32,426.426 INFO    ] Initializing speech engine...
[2026-06-27 04:34:32,431.431 INFO    ] 2026-06-27 04:34:32
[2026-06-27 04:34:32,638.638 INFO    ] 2026-06-27 04:34:32
[2026-06-27 04:34:32,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:34:32,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:34:32,866.866 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:34:33,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:34:33,083.083 INFO    ] time= 27/06/2026 04:34:33
[2026-06-27 04:34:33,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:34:33,090.090 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:34:33,158.158 INFO    ] No existing commands found in stream
[2026-06-27 04:34:38,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:34:38,186.186 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-27 04:34:39,811.811 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 04:34:39,813.813 INFO    ] Checking for system updates...
[2026-06-27 04:34:39,834.834 INFO    ] 200
[2026-06-27 04:34:39,836.836 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:34:39,867.867 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:34:39,868.868 INFO    ] No update needed
[2026-06-27 04:34:39,870.870 INFO    ] Checking for camera pi updates...
[2026-06-27 04:34:39,890.890 INFO    ] 200
[2026-06-27 04:34:39,891.891 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:34:39,916.916 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:34:39,956.956 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:34:39,957.957 INFO    ] No camera update needed
[2026-06-27 04:34:39,959.959 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:34:39,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:34:39,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:34:39,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:34:42,006.006 INFO    ] ================================================
[2026-06-27 04:34:42,021.021 INFO    ] Launching Daemon at Sat Jun 27 04:34:42 IST 2026
[2026-06-27 04:34:42,032.032 INFO    ] ================================================
[2026-06-27 04:34:42,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:34:42
[2026-06-27 04:34:42,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:34:42,918.918 INFO    ] Initializing speech engine...
[2026-06-27 04:34:42,924.924 INFO    ] 2026-06-27 04:34:42
[2026-06-27 04:34:43,140.140 INFO    ] 2026-06-27 04:34:43
[2026-06-27 04:34:43,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:34:43,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:34:43,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:34:43,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:34:43,525.525 INFO    ] time= 27/06/2026 04:34:43
[2026-06-27 04:34:43,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:34:43,539.539 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:34:43,609.609 INFO    ] No existing commands found in stream
[2026-06-27 04:34:48,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:34:48,620.620 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-27 04:34:53,015.015 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 04:34:53,017.017 INFO    ] Checking for system updates...
[2026-06-27 04:34:53,038.038 INFO    ] 200
[2026-06-27 04:34:53,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:34:53,072.072 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:34:53,073.073 INFO    ] No update needed
[2026-06-27 04:34:53,075.075 INFO    ] Checking for camera pi updates...
[2026-06-27 04:34:53,096.096 INFO    ] 200
[2026-06-27 04:34:53,097.097 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:34:53,138.138 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:34:53,184.184 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:34:53,185.185 INFO    ] No camera update needed
[2026-06-27 04:34:53,187.187 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:34:53,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:34:53,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:34:53,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:34:55,234.234 INFO    ] ================================================
[2026-06-27 04:34:55,250.250 INFO    ] Launching Daemon at Sat Jun 27 04:34:55 IST 2026
[2026-06-27 04:34:55,262.262 INFO    ] ================================================
[2026-06-27 04:34:55,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:34:55
[2026-06-27 04:34:55,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:34:56,124.124 INFO    ] Initializing speech engine...
[2026-06-27 04:34:56,129.129 INFO    ] 2026-06-27 04:34:56
[2026-06-27 04:34:56,342.342 INFO    ] 2026-06-27 04:34:56
[2026-06-27 04:34:56,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:34:56,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:34:56,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:34:56,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:34:56,771.771 INFO    ] time= 27/06/2026 04:34:56
[2026-06-27 04:34:56,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:34:56,839.839 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:34:56,934.934 INFO    ] No existing commands found in stream
[2026-06-27 04:35:01,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:35:01,949.949 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-27 04:35:06,192.192 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:35:06,193.193 INFO    ] Checking for system updates...
[2026-06-27 04:35:06,215.215 INFO    ] 200
[2026-06-27 04:35:06,217.217 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:35:06,247.247 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:35:06,249.249 INFO    ] No update needed
[2026-06-27 04:35:06,250.250 INFO    ] Checking for camera pi updates...
[2026-06-27 04:35:06,271.271 INFO    ] 200
[2026-06-27 04:35:06,272.272 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:35:06,296.296 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:35:06,337.337 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:35:06,339.339 INFO    ] No camera update needed
[2026-06-27 04:35:06,340.340 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:35:06,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:35:06,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:35:06,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:35:08,389.389 INFO    ] ================================================
[2026-06-27 04:35:08,405.405 INFO    ] Launching Daemon at Sat Jun 27 04:35:08 IST 2026
[2026-06-27 04:35:08,417.417 INFO    ] ================================================
[2026-06-27 04:35:08,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:35:08
[2026-06-27 04:35:09,072.072 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:35:09,218.218 INFO    ] Initializing speech engine...
[2026-06-27 04:35:09,223.223 INFO    ] 2026-06-27 04:35:09
[2026-06-27 04:35:09,430.430 INFO    ] 2026-06-27 04:35:09
[2026-06-27 04:35:09,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:35:09,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:35:09,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:35:09,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:35:09,871.871 INFO    ] time= 27/06/2026 04:35:09
[2026-06-27 04:35:09,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:35:09,878.878 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:35:09,946.946 INFO    ] No existing commands found in stream
[2026-06-27 04:35:14,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:35:14,958.958 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-27 04:35:17,737.737 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:35:17,738.738 INFO    ] Checking for system updates...
[2026-06-27 04:35:17,759.759 INFO    ] 200
[2026-06-27 04:35:17,760.760 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:35:17,791.791 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:35:17,792.792 INFO    ] No update needed
[2026-06-27 04:35:17,793.793 INFO    ] Checking for camera pi updates...
[2026-06-27 04:35:17,815.815 INFO    ] 200
[2026-06-27 04:35:17,816.816 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:35:17,841.841 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:35:17,878.878 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:35:17,879.879 INFO    ] No camera update needed
[2026-06-27 04:35:17,881.881 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:35:17,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:35:17,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:35:17,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:35:19,926.926 INFO    ] ================================================
[2026-06-27 04:35:19,942.942 INFO    ] Launching Daemon at Sat Jun 27 04:35:19 IST 2026
[2026-06-27 04:35:19,954.954 INFO    ] ================================================
[2026-06-27 04:35:20,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:35:20
[2026-06-27 04:35:20,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:35:20,850.850 INFO    ] Initializing speech engine...
[2026-06-27 04:35:20,858.858 INFO    ] 2026-06-27 04:35:20
[2026-06-27 04:35:21,127.127 INFO    ] 2026-06-27 04:35:21
[2026-06-27 04:35:21,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:35:21,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:35:21,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:35:21,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:35:21,563.563 INFO    ] time= 27/06/2026 04:35:21
[2026-06-27 04:35:21,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:35:21,574.574 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:35:21,642.642 INFO    ] No existing commands found in stream
[2026-06-27 04:35:26,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:35:26,659.659 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-27 04:35:29,576.576 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:35:29,578.578 INFO    ] Checking for system updates...
[2026-06-27 04:35:29,599.599 INFO    ] 200
[2026-06-27 04:35:29,601.601 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:35:29,634.634 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:35:29,636.636 INFO    ] No update needed
[2026-06-27 04:35:29,637.637 INFO    ] Checking for camera pi updates...
[2026-06-27 04:35:29,658.658 INFO    ] 200
[2026-06-27 04:35:29,659.659 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:35:29,683.683 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:35:29,722.722 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:35:29,723.723 INFO    ] No camera update needed
[2026-06-27 04:35:29,724.724 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:35:29,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:35:29,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:35:29,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:35:31,772.772 INFO    ] ================================================
[2026-06-27 04:35:31,787.787 INFO    ] Launching Daemon at Sat Jun 27 04:35:31 IST 2026
[2026-06-27 04:35:31,798.798 INFO    ] ================================================
[2026-06-27 04:35:32,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:35:32
[2026-06-27 04:35:32,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:35:32,687.687 INFO    ] Initializing speech engine...
[2026-06-27 04:35:32,693.693 INFO    ] 2026-06-27 04:35:32
[2026-06-27 04:35:32,897.897 INFO    ] 2026-06-27 04:35:32
[2026-06-27 04:35:32,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:35:33,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:35:33,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:35:33,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:35:33,337.337 INFO    ] time= 27/06/2026 04:35:33
[2026-06-27 04:35:33,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:35:33,344.344 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:35:33,410.410 INFO    ] No existing commands found in stream
[2026-06-27 04:35:38,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:35:38,423.423 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-27 04:35:40,713.713 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 04:35:40,715.715 INFO    ] Checking for system updates...
[2026-06-27 04:35:40,736.736 INFO    ] 200
[2026-06-27 04:35:40,737.737 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:35:40,767.767 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:35:40,768.768 INFO    ] No update needed
[2026-06-27 04:35:40,770.770 INFO    ] Checking for camera pi updates...
[2026-06-27 04:35:40,790.790 INFO    ] 200
[2026-06-27 04:35:40,791.791 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:35:40,815.815 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:35:40,868.868 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:35:40,870.870 INFO    ] No camera update needed
[2026-06-27 04:35:40,871.871 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:35:40,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:35:40,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:35:40,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:35:42,916.916 INFO    ] ================================================
[2026-06-27 04:35:42,931.931 INFO    ] Launching Daemon at Sat Jun 27 04:35:42 IST 2026
[2026-06-27 04:35:42,942.942 INFO    ] ================================================
[2026-06-27 04:35:43,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:35:43
[2026-06-27 04:35:43,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:35:43,787.787 INFO    ] Initializing speech engine...
[2026-06-27 04:35:43,794.794 INFO    ] 2026-06-27 04:35:43
[2026-06-27 04:35:44,006.006 INFO    ] 2026-06-27 04:35:43
[2026-06-27 04:35:44,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:35:44,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:35:44,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:35:44,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:35:44,450.450 INFO    ] time= 27/06/2026 04:35:44
[2026-06-27 04:35:44,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:35:44,457.457 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:35:44,524.524 INFO    ] No existing commands found in stream
[2026-06-27 04:35:49,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:35:49,536.536 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-27 04:35:52,821.821 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:35:52,823.823 INFO    ] Checking for system updates...
[2026-06-27 04:35:52,844.844 INFO    ] 200
[2026-06-27 04:35:52,845.845 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:35:52,879.879 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:35:52,880.880 INFO    ] No update needed
[2026-06-27 04:35:52,882.882 INFO    ] Checking for camera pi updates...
[2026-06-27 04:35:52,907.907 INFO    ] 200
[2026-06-27 04:35:52,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:35:52,931.931 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:35:52,970.970 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:35:52,972.972 INFO    ] No camera update needed
[2026-06-27 04:35:52,973.973 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:35:52,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:35:52,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:35:52,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:35:55,021.021 INFO    ] ================================================
[2026-06-27 04:35:55,037.037 INFO    ] Launching Daemon at Sat Jun 27 04:35:55 IST 2026
[2026-06-27 04:35:55,047.047 INFO    ] ================================================
[2026-06-27 04:35:55,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:35:55
[2026-06-27 04:35:55,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:35:55,851.851 INFO    ] Initializing speech engine...
[2026-06-27 04:35:55,855.855 INFO    ] 2026-06-27 04:35:55
[2026-06-27 04:35:56,061.061 INFO    ] 2026-06-27 04:35:56
[2026-06-27 04:35:56,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:35:56,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:35:56,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:35:56,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:35:56,503.503 INFO    ] time= 27/06/2026 04:35:56
[2026-06-27 04:35:56,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:35:56,506.506 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:35:56,573.573 INFO    ] No existing commands found in stream
[2026-06-27 04:36:01,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:36:01,584.584 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-27 04:36:04,827.827 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:36:04,828.828 INFO    ] Checking for system updates...
[2026-06-27 04:36:04,849.849 INFO    ] 200
[2026-06-27 04:36:04,851.851 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:36:04,881.881 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:36:04,883.883 INFO    ] No update needed
[2026-06-27 04:36:04,885.885 INFO    ] Checking for camera pi updates...
[2026-06-27 04:36:04,907.907 INFO    ] 200
[2026-06-27 04:36:04,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:36:04,940.940 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:36:04,988.988 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:36:04,989.989 INFO    ] No camera update needed
[2026-06-27 04:36:04,991.991 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:36:04,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:36:04,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:36:04,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:36:07,040.040 INFO    ] ================================================
[2026-06-27 04:36:07,057.057 INFO    ] Launching Daemon at Sat Jun 27 04:36:07 IST 2026
[2026-06-27 04:36:07,068.068 INFO    ] ================================================
[2026-06-27 04:36:07,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:36:07
[2026-06-27 04:36:07,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:36:07,844.844 INFO    ] Initializing speech engine...
[2026-06-27 04:36:07,848.848 INFO    ] 2026-06-27 04:36:07
[2026-06-27 04:36:08,064.064 INFO    ] 2026-06-27 04:36:08
[2026-06-27 04:36:08,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:36:08,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:36:08,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:36:08,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:36:08,510.510 INFO    ] time= 27/06/2026 04:36:08
[2026-06-27 04:36:08,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:36:08,513.513 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:36:08,581.581 INFO    ] No existing commands found in stream
[2026-06-27 04:36:13,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:36:13,593.593 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-27 04:36:17,599.599 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 04:36:17,601.601 INFO    ] Checking for system updates...
[2026-06-27 04:36:17,621.621 INFO    ] 200
[2026-06-27 04:36:17,623.623 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:36:17,657.657 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:36:17,658.658 INFO    ] No update needed
[2026-06-27 04:36:17,659.659 INFO    ] Checking for camera pi updates...
[2026-06-27 04:36:17,681.681 INFO    ] 200
[2026-06-27 04:36:17,682.682 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:36:17,706.706 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:36:17,743.743 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:36:17,745.745 INFO    ] No camera update needed
[2026-06-27 04:36:17,746.746 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:36:17,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:36:17,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:36:17,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:36:19,794.794 INFO    ] ================================================
[2026-06-27 04:36:19,809.809 INFO    ] Launching Daemon at Sat Jun 27 04:36:19 IST 2026
[2026-06-27 04:36:19,820.820 INFO    ] ================================================
[2026-06-27 04:36:20,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:36:20
[2026-06-27 04:36:20,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:36:20,598.598 INFO    ] Initializing speech engine...
[2026-06-27 04:36:20,606.606 INFO    ] 2026-06-27 04:36:20
[2026-06-27 04:36:20,818.818 INFO    ] 2026-06-27 04:36:20
[2026-06-27 04:36:20,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:36:21,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:36:21,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:36:21,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:36:21,257.257 INFO    ] time= 27/06/2026 04:36:21
[2026-06-27 04:36:21,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:36:21,264.264 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:36:21,329.329 INFO    ] No existing commands found in stream
[2026-06-27 04:36:26,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:36:26,343.343 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-27 04:36:30,611.611 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 04:36:30,613.613 INFO    ] Checking for system updates...
[2026-06-27 04:36:30,635.635 INFO    ] 200
[2026-06-27 04:36:30,636.636 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:36:30,669.669 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:36:30,670.670 INFO    ] No update needed
[2026-06-27 04:36:30,672.672 INFO    ] Checking for camera pi updates...
[2026-06-27 04:36:30,691.691 INFO    ] 200
[2026-06-27 04:36:30,692.692 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:36:30,716.716 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:36:30,859.859 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:36:30,861.861 INFO    ] No camera update needed
[2026-06-27 04:36:30,862.862 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:36:30,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:36:30,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:36:30,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:36:32,901.901 INFO    ] ================================================
[2026-06-27 04:36:32,917.917 INFO    ] Launching Daemon at Sat Jun 27 04:36:32 IST 2026
[2026-06-27 04:36:32,929.929 INFO    ] ================================================
[2026-06-27 04:36:33,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:36:33
[2026-06-27 04:36:33,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:36:33,728.728 INFO    ] Initializing speech engine...
[2026-06-27 04:36:33,736.736 INFO    ] 2026-06-27 04:36:33
[2026-06-27 04:36:33,952.952 INFO    ] 2026-06-27 04:36:33
[2026-06-27 04:36:33,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:36:34,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:36:34,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:36:34,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:36:34,777.777 INFO    ] time= 27/06/2026 04:36:34
[2026-06-27 04:36:34,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:36:34,806.806 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:36:34,876.876 INFO    ] No existing commands found in stream
[2026-06-27 04:36:39,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:36:39,886.886 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-27 04:36:40,389.389 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 04:36:40,390.390 INFO    ] Checking for system updates...
[2026-06-27 04:36:40,411.411 INFO    ] 200
[2026-06-27 04:36:40,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:36:40,447.447 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:36:40,448.448 INFO    ] No update needed
[2026-06-27 04:36:40,449.449 INFO    ] Checking for camera pi updates...
[2026-06-27 04:36:40,470.470 INFO    ] 200
[2026-06-27 04:36:40,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:36:40,497.497 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:36:40,533.533 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:36:40,535.535 INFO    ] No camera update needed
[2026-06-27 04:36:40,536.536 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:36:40,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:36:40,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:36:40,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:36:42,582.582 INFO    ] ================================================
[2026-06-27 04:36:42,598.598 INFO    ] Launching Daemon at Sat Jun 27 04:36:42 IST 2026
[2026-06-27 04:36:42,610.610 INFO    ] ================================================
[2026-06-27 04:36:42,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:36:42
[2026-06-27 04:36:43,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:36:43,434.434 INFO    ] Initializing speech engine...
[2026-06-27 04:36:43,439.439 INFO    ] 2026-06-27 04:36:43
[2026-06-27 04:36:43,643.643 INFO    ] 2026-06-27 04:36:43
[2026-06-27 04:36:43,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:36:43,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:36:43,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:36:44,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:36:44,081.081 INFO    ] time= 27/06/2026 04:36:44
[2026-06-27 04:36:44,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:36:44,088.088 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:36:44,155.155 INFO    ] No existing commands found in stream
[2026-06-27 04:36:49,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:36:49,167.167 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-27 04:36:51,618.618 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:36:51,620.620 INFO    ] Checking for system updates...
[2026-06-27 04:36:51,642.642 INFO    ] 200
[2026-06-27 04:36:51,644.644 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:36:51,680.680 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:36:51,681.681 INFO    ] No update needed
[2026-06-27 04:36:51,682.682 INFO    ] Checking for camera pi updates...
[2026-06-27 04:36:51,705.705 INFO    ] 200
[2026-06-27 04:36:51,706.706 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:36:51,730.730 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:36:51,769.769 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:36:51,770.770 INFO    ] No camera update needed
[2026-06-27 04:36:51,771.771 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:36:51,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:36:51,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:36:51,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:36:53,816.816 INFO    ] ================================================
[2026-06-27 04:36:53,832.832 INFO    ] Launching Daemon at Sat Jun 27 04:36:53 IST 2026
[2026-06-27 04:36:53,843.843 INFO    ] ================================================
[2026-06-27 04:36:54,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:36:54
[2026-06-27 04:36:54,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:36:54,740.740 INFO    ] Initializing speech engine...
[2026-06-27 04:36:54,746.746 INFO    ] 2026-06-27 04:36:54
[2026-06-27 04:36:54,954.954 INFO    ] 2026-06-27 04:36:54
[2026-06-27 04:36:54,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:36:55,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:36:55,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:36:55,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:36:55,390.390 INFO    ] time= 27/06/2026 04:36:55
[2026-06-27 04:36:55,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:36:55,408.408 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:36:55,475.475 INFO    ] No existing commands found in stream
[2026-06-27 04:37:00,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:37:00,492.492 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-27 04:37:04,652.652 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 04:37:04,654.654 INFO    ] Checking for system updates...
[2026-06-27 04:37:04,675.675 INFO    ] 200
[2026-06-27 04:37:04,676.676 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:37:04,707.707 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:37:04,708.708 INFO    ] No update needed
[2026-06-27 04:37:04,710.710 INFO    ] Checking for camera pi updates...
[2026-06-27 04:37:04,731.731 INFO    ] 200
[2026-06-27 04:37:04,732.732 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:37:04,759.759 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:37:04,797.797 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:37:04,799.799 INFO    ] No camera update needed
[2026-06-27 04:37:04,800.800 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:37:04,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:37:04,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:37:04,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:37:06,849.849 INFO    ] ================================================
[2026-06-27 04:37:06,865.865 INFO    ] Launching Daemon at Sat Jun 27 04:37:06 IST 2026
[2026-06-27 04:37:06,875.875 INFO    ] ================================================
[2026-06-27 04:37:07,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:37:07
[2026-06-27 04:37:07,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:37:07,656.656 INFO    ] Initializing speech engine...
[2026-06-27 04:37:07,664.664 INFO    ] 2026-06-27 04:37:07
[2026-06-27 04:37:07,875.875 INFO    ] 2026-06-27 04:37:07
[2026-06-27 04:37:07,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:37:08,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:37:08,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:37:08,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:37:08,293.293 INFO    ] time= 27/06/2026 04:37:08
[2026-06-27 04:37:08,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:37:08,324.324 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:37:08,390.390 INFO    ] No existing commands found in stream
[2026-06-27 04:37:13,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:37:13,404.404 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-27 04:37:14,301.301 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:37:14,302.302 INFO    ] Checking for system updates...
[2026-06-27 04:37:14,324.324 INFO    ] 200
[2026-06-27 04:37:14,325.325 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:37:14,360.360 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:37:14,362.362 INFO    ] No update needed
[2026-06-27 04:37:14,363.363 INFO    ] Checking for camera pi updates...
[2026-06-27 04:37:14,384.384 INFO    ] 200
[2026-06-27 04:37:14,385.385 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:37:14,410.410 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:37:14,452.452 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:37:14,453.453 INFO    ] No camera update needed
[2026-06-27 04:37:14,455.455 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:37:14,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:37:14,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:37:14,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:37:16,500.500 INFO    ] ================================================
[2026-06-27 04:37:16,516.516 INFO    ] Launching Daemon at Sat Jun 27 04:37:16 IST 2026
[2026-06-27 04:37:16,526.526 INFO    ] ================================================
[2026-06-27 04:37:16,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:37:16
[2026-06-27 04:37:17,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:37:17,348.348 INFO    ] Initializing speech engine...
[2026-06-27 04:37:17,354.354 INFO    ] 2026-06-27 04:37:17
[2026-06-27 04:37:17,558.558 INFO    ] 2026-06-27 04:37:17
[2026-06-27 04:37:17,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:37:17,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:37:17,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:37:17,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:37:17,987.987 INFO    ] time= 27/06/2026 04:37:17
[2026-06-27 04:37:17,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:37:18,003.003 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:37:18,069.069 INFO    ] No existing commands found in stream
[2026-06-27 04:37:23,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:37:23,087.087 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-27 04:37:26,339.339 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 04:37:26,341.341 INFO    ] Checking for system updates...
[2026-06-27 04:37:26,363.363 INFO    ] 200
[2026-06-27 04:37:26,365.365 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:37:26,398.398 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:37:26,399.399 INFO    ] No update needed
[2026-06-27 04:37:26,401.401 INFO    ] Checking for camera pi updates...
[2026-06-27 04:37:26,424.424 INFO    ] 200
[2026-06-27 04:37:26,426.426 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:37:26,453.453 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:37:26,507.507 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:37:26,509.509 INFO    ] No camera update needed
[2026-06-27 04:37:26,510.510 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:37:26,512.512 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:37:26,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:37:26,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:37:28,556.556 INFO    ] ================================================
[2026-06-27 04:37:28,572.572 INFO    ] Launching Daemon at Sat Jun 27 04:37:28 IST 2026
[2026-06-27 04:37:28,582.582 INFO    ] ================================================
[2026-06-27 04:37:28,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:37:28
[2026-06-27 04:37:29,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:37:29,414.414 INFO    ] Initializing speech engine...
[2026-06-27 04:37:29,419.419 INFO    ] 2026-06-27 04:37:29
[2026-06-27 04:37:29,624.624 INFO    ] 2026-06-27 04:37:29
[2026-06-27 04:37:29,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:37:29,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:37:29,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:37:29,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:37:30,042.042 INFO    ] time= 27/06/2026 04:37:30
[2026-06-27 04:37:30,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:37:30,072.072 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:37:30,140.140 INFO    ] No existing commands found in stream
[2026-06-27 04:37:35,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:37:35,176.176 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-27 04:37:38,150.150 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:37:38,152.152 INFO    ] Checking for system updates...
[2026-06-27 04:37:38,194.194 INFO    ] 200
[2026-06-27 04:37:38,197.197 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:37:38,256.256 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:37:38,257.257 INFO    ] No update needed
[2026-06-27 04:37:38,258.258 INFO    ] Checking for camera pi updates...
[2026-06-27 04:37:38,282.282 INFO    ] 200
[2026-06-27 04:37:38,283.283 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:37:38,310.310 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:37:38,347.347 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:37:38,348.348 INFO    ] No camera update needed
[2026-06-27 04:37:38,350.350 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:37:38,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:37:38,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:37:38,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:37:40,396.396 INFO    ] ================================================
[2026-06-27 04:37:40,412.412 INFO    ] Launching Daemon at Sat Jun 27 04:37:40 IST 2026
[2026-06-27 04:37:40,422.422 INFO    ] ================================================
[2026-06-27 04:37:40,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:37:40
[2026-06-27 04:37:41,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:37:41,216.216 INFO    ] Initializing speech engine...
[2026-06-27 04:37:41,222.222 INFO    ] 2026-06-27 04:37:41
[2026-06-27 04:37:41,426.426 INFO    ] 2026-06-27 04:37:41
[2026-06-27 04:37:41,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:37:41,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:37:41,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:37:41,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:37:41,853.853 INFO    ] time= 27/06/2026 04:37:41
[2026-06-27 04:37:41,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:37:41,883.883 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:37:41,951.951 INFO    ] No existing commands found in stream
[2026-06-27 04:37:46,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:37:46,963.963 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-27 04:37:53,472.472 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:37:53,473.473 INFO    ] Checking for system updates...
[2026-06-27 04:37:53,495.495 INFO    ] 200
[2026-06-27 04:37:53,497.497 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:37:53,527.527 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:37:53,528.528 INFO    ] No update needed
[2026-06-27 04:37:53,530.530 INFO    ] Checking for camera pi updates...
[2026-06-27 04:37:53,549.549 INFO    ] 200
[2026-06-27 04:37:53,551.551 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:37:53,575.575 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:37:53,606.606 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:37:53,607.607 INFO    ] No camera update needed
[2026-06-27 04:37:53,608.608 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:37:53,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:37:53,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:37:53,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:37:55,655.655 INFO    ] ================================================
[2026-06-27 04:37:55,671.671 INFO    ] Launching Daemon at Sat Jun 27 04:37:55 IST 2026
[2026-06-27 04:37:55,682.682 INFO    ] ================================================
[2026-06-27 04:37:56,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:37:56
[2026-06-27 04:37:56,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:37:56,476.476 INFO    ] Initializing speech engine...
[2026-06-27 04:37:56,484.484 INFO    ] 2026-06-27 04:37:56
[2026-06-27 04:37:56,697.697 INFO    ] 2026-06-27 04:37:56
[2026-06-27 04:37:56,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:37:56,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:37:56,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:37:57,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:37:57,127.127 INFO    ] time= 27/06/2026 04:37:57
[2026-06-27 04:37:57,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:37:57,155.155 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:37:57,225.225 INFO    ] No existing commands found in stream
[2026-06-27 04:38:02,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:38:02,235.235 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-27 04:38:05,939.939 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:38:05,941.941 INFO    ] Checking for system updates...
[2026-06-27 04:38:05,962.962 INFO    ] 200
[2026-06-27 04:38:05,963.963 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:38:05,997.997 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:38:05,998.998 INFO    ] No update needed
[2026-06-27 04:38:06,000.000 INFO    ] Checking for camera pi updates...
[2026-06-27 04:38:06,020.020 INFO    ] 200
[2026-06-27 04:38:06,022.022 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:38:06,046.046 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:38:06,087.087 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:38:06,089.089 INFO    ] No camera update needed
[2026-06-27 04:38:06,090.090 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:38:06,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:38:06,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:38:06,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:38:08,138.138 INFO    ] ================================================
[2026-06-27 04:38:08,153.153 INFO    ] Launching Daemon at Sat Jun 27 04:38:08 IST 2026
[2026-06-27 04:38:08,164.164 INFO    ] ================================================
[2026-06-27 04:38:08,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:38:08
[2026-06-27 04:38:08,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:38:08,997.997 INFO    ] Initializing speech engine...
[2026-06-27 04:38:09,002.002 INFO    ] 2026-06-27 04:38:08
[2026-06-27 04:38:09,212.212 INFO    ] 2026-06-27 04:38:09
[2026-06-27 04:38:09,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:38:09,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:38:09,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:38:09,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:38:09,644.644 INFO    ] time= 27/06/2026 04:38:09
[2026-06-27 04:38:09,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:38:09,694.694 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:38:09,778.778 INFO    ] No existing commands found in stream
[2026-06-27 04:38:14,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:38:14,792.792 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-27 04:38:18,257.257 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 04:38:18,259.259 INFO    ] Checking for system updates...
[2026-06-27 04:38:18,280.280 INFO    ] 200
[2026-06-27 04:38:18,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:38:18,315.315 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:38:18,316.316 INFO    ] No update needed
[2026-06-27 04:38:18,318.318 INFO    ] Checking for camera pi updates...
[2026-06-27 04:38:18,339.339 INFO    ] 200
[2026-06-27 04:38:18,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:38:18,367.367 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:38:18,404.404 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:38:18,405.405 INFO    ] No camera update needed
[2026-06-27 04:38:18,406.406 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:38:18,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:38:18,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:38:18,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:38:20,452.452 INFO    ] ================================================
[2026-06-27 04:38:20,467.467 INFO    ] Launching Daemon at Sat Jun 27 04:38:20 IST 2026
[2026-06-27 04:38:20,478.478 INFO    ] ================================================
[2026-06-27 04:38:20,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:38:20
[2026-06-27 04:38:21,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:38:21,285.285 INFO    ] Initializing speech engine...
[2026-06-27 04:38:21,290.290 INFO    ] 2026-06-27 04:38:21
[2026-06-27 04:38:21,495.495 INFO    ] 2026-06-27 04:38:21
[2026-06-27 04:38:21,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:38:21,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:38:21,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:38:21,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:38:21,934.934 INFO    ] time= 27/06/2026 04:38:21
[2026-06-27 04:38:21,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:38:21,941.941 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:38:22,007.007 INFO    ] No existing commands found in stream
[2026-06-27 04:38:27,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:38:27,019.019 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-27 04:38:31,000.000 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:38:31,002.002 INFO    ] Checking for system updates...
[2026-06-27 04:38:31,023.023 INFO    ] 200
[2026-06-27 04:38:31,024.024 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:38:31,057.057 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:38:31,058.058 INFO    ] No update needed
[2026-06-27 04:38:31,059.059 INFO    ] Checking for camera pi updates...
[2026-06-27 04:38:31,080.080 INFO    ] 200
[2026-06-27 04:38:31,082.082 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:38:31,107.107 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:38:31,149.149 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:38:31,150.150 INFO    ] No camera update needed
[2026-06-27 04:38:31,151.151 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:38:31,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:38:31,155.155 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:38:31,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:38:33,190.190 INFO    ] ================================================
[2026-06-27 04:38:33,206.206 INFO    ] Launching Daemon at Sat Jun 27 04:38:33 IST 2026
[2026-06-27 04:38:33,216.216 INFO    ] ================================================
[2026-06-27 04:38:33,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:38:33
[2026-06-27 04:38:33,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:38:34,015.015 INFO    ] Initializing speech engine...
[2026-06-27 04:38:34,020.020 INFO    ] 2026-06-27 04:38:34
[2026-06-27 04:38:34,226.226 INFO    ] 2026-06-27 04:38:34
[2026-06-27 04:38:34,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:38:34,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:38:34,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:38:34,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:38:34,666.666 INFO    ] time= 27/06/2026 04:38:34
[2026-06-27 04:38:34,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:38:34,673.673 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:38:34,740.740 INFO    ] No existing commands found in stream
[2026-06-27 04:38:39,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:38:39,757.757 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-27 04:38:42,731.731 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 04:38:42,733.733 INFO    ] Checking for system updates...
[2026-06-27 04:38:42,754.754 INFO    ] 200
[2026-06-27 04:38:42,756.756 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:38:42,787.787 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:38:42,788.788 INFO    ] No update needed
[2026-06-27 04:38:42,789.789 INFO    ] Checking for camera pi updates...
[2026-06-27 04:38:42,811.811 INFO    ] 200
[2026-06-27 04:38:42,812.812 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:38:42,840.840 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:38:42,984.984 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:38:42,986.986 INFO    ] No camera update needed
[2026-06-27 04:38:42,987.987 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:38:42,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:38:42,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:38:42,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:38:45,038.038 INFO    ] ================================================
[2026-06-27 04:38:45,055.055 INFO    ] Launching Daemon at Sat Jun 27 04:38:45 IST 2026
[2026-06-27 04:38:45,065.065 INFO    ] ================================================
[2026-06-27 04:38:45,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:38:45
[2026-06-27 04:38:45,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:38:45,913.913 INFO    ] Initializing speech engine...
[2026-06-27 04:38:45,918.918 INFO    ] 2026-06-27 04:38:45
[2026-06-27 04:38:46,127.127 INFO    ] 2026-06-27 04:38:46
[2026-06-27 04:38:46,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:38:46,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:38:46,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:38:46,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:38:46,569.569 INFO    ] time= 27/06/2026 04:38:46
[2026-06-27 04:38:46,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:38:46,577.577 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:38:46,644.644 INFO    ] No existing commands found in stream
[2026-06-27 04:38:51,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:38:51,660.660 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-27 04:38:53,123.123 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:38:53,125.125 INFO    ] Checking for system updates...
[2026-06-27 04:38:53,147.147 INFO    ] 200
[2026-06-27 04:38:53,149.149 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:38:53,184.184 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:38:53,186.186 INFO    ] No update needed
[2026-06-27 04:38:53,187.187 INFO    ] Checking for camera pi updates...
[2026-06-27 04:38:53,211.211 INFO    ] 200
[2026-06-27 04:38:53,212.212 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:38:53,240.240 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:38:53,281.281 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:38:53,283.283 INFO    ] No camera update needed
[2026-06-27 04:38:53,285.285 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:38:53,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:38:53,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:38:53,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:38:55,332.332 INFO    ] ================================================
[2026-06-27 04:38:55,348.348 INFO    ] Launching Daemon at Sat Jun 27 04:38:55 IST 2026
[2026-06-27 04:38:55,359.359 INFO    ] ================================================
[2026-06-27 04:38:55,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:38:55
[2026-06-27 04:38:56,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:38:56,187.187 INFO    ] Initializing speech engine...
[2026-06-27 04:38:56,192.192 INFO    ] 2026-06-27 04:38:56
[2026-06-27 04:38:56,402.402 INFO    ] 2026-06-27 04:38:56
[2026-06-27 04:38:56,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:38:56,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:38:56,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:38:56,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:38:56,850.850 INFO    ] time= 27/06/2026 04:38:56
[2026-06-27 04:38:56,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:38:56,857.857 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:38:56,926.926 INFO    ] No existing commands found in stream
[2026-06-27 04:39:01,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:39:01,942.942 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-27 04:39:03,580.580 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 04:39:03,581.581 INFO    ] Checking for system updates...
[2026-06-27 04:39:03,603.603 INFO    ] 200
[2026-06-27 04:39:03,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:39:03,635.635 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:39:03,636.636 INFO    ] No update needed
[2026-06-27 04:39:03,637.637 INFO    ] Checking for camera pi updates...
[2026-06-27 04:39:03,658.658 INFO    ] 200
[2026-06-27 04:39:03,659.659 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:39:03,684.684 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:39:03,721.721 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:39:03,722.722 INFO    ] No camera update needed
[2026-06-27 04:39:03,723.723 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:39:03,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:39:03,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:39:03,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:39:05,770.770 INFO    ] ================================================
[2026-06-27 04:39:05,785.785 INFO    ] Launching Daemon at Sat Jun 27 04:39:05 IST 2026
[2026-06-27 04:39:05,803.803 INFO    ] ================================================
[2026-06-27 04:39:06,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:39:06
[2026-06-27 04:39:06,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:39:06,633.633 INFO    ] Initializing speech engine...
[2026-06-27 04:39:06,636.636 INFO    ] 2026-06-27 04:39:06
[2026-06-27 04:39:06,840.840 INFO    ] 2026-06-27 04:39:06
[2026-06-27 04:39:06,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:39:07,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:39:07,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:39:07,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:39:07,261.261 INFO    ] time= 27/06/2026 04:39:07
[2026-06-27 04:39:07,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:39:07,289.289 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:39:07,356.356 INFO    ] No existing commands found in stream
[2026-06-27 04:39:12,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:39:12,368.368 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-27 04:39:15,382.382 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 04:39:15,384.384 INFO    ] Checking for system updates...
[2026-06-27 04:39:15,405.405 INFO    ] 200
[2026-06-27 04:39:15,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:39:15,439.439 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:39:15,441.441 INFO    ] No update needed
[2026-06-27 04:39:15,442.442 INFO    ] Checking for camera pi updates...
[2026-06-27 04:39:15,463.463 INFO    ] 200
[2026-06-27 04:39:15,464.464 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:39:15,487.487 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:39:15,521.521 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:39:15,522.522 INFO    ] No camera update needed
[2026-06-27 04:39:15,524.524 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:39:15,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:39:15,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:39:15,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:39:17,573.573 INFO    ] ================================================
[2026-06-27 04:39:17,588.588 INFO    ] Launching Daemon at Sat Jun 27 04:39:17 IST 2026
[2026-06-27 04:39:17,599.599 INFO    ] ================================================
[2026-06-27 04:39:17,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:39:17
[2026-06-27 04:39:18,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:39:18,370.370 INFO    ] Initializing speech engine...
[2026-06-27 04:39:18,375.375 INFO    ] 2026-06-27 04:39:18
[2026-06-27 04:39:18,578.578 INFO    ] 2026-06-27 04:39:18
[2026-06-27 04:39:18,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:39:18,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:39:18,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:39:18,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:39:19,045.045 INFO    ] time= 27/06/2026 04:39:18
[2026-06-27 04:39:19,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:39:19,090.090 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:39:19,161.161 INFO    ] No existing commands found in stream
[2026-06-27 04:39:24,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:39:24,174.174 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-27 04:39:26,804.804 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:39:26,805.805 INFO    ] Checking for system updates...
[2026-06-27 04:39:26,827.827 INFO    ] 200
[2026-06-27 04:39:26,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:39:26,861.861 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:39:26,863.863 INFO    ] No update needed
[2026-06-27 04:39:26,864.864 INFO    ] Checking for camera pi updates...
[2026-06-27 04:39:26,884.884 INFO    ] 200
[2026-06-27 04:39:26,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:39:26,910.910 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:39:26,947.947 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:39:26,948.948 INFO    ] No camera update needed
[2026-06-27 04:39:26,949.949 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:39:26,950.950 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:39:26,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:39:26,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:39:29,995.995 INFO    ] ================================================
[2026-06-27 04:39:29,010.010 INFO    ] Launching Daemon at Sat Jun 27 04:39:29 IST 2026
[2026-06-27 04:39:29,020.020 INFO    ] ================================================
[2026-06-27 04:39:29,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:39:29
[2026-06-27 04:39:29,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:39:29,800.800 INFO    ] Initializing speech engine...
[2026-06-27 04:39:29,808.808 INFO    ] 2026-06-27 04:39:29
[2026-06-27 04:39:30,035.035 INFO    ] 2026-06-27 04:39:30
[2026-06-27 04:39:30,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:39:30,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:39:30,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:39:30,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:39:30,496.496 INFO    ] time= 27/06/2026 04:39:30
[2026-06-27 04:39:30,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:39:30,511.511 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:39:30,619.619 INFO    ] No existing commands found in stream
[2026-06-27 04:39:35,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:39:35,632.632 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-27 04:39:36,640.640 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 04:39:36,641.641 INFO    ] Checking for system updates...
[2026-06-27 04:39:36,662.662 INFO    ] 200
[2026-06-27 04:39:36,664.664 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:39:36,696.696 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:39:36,698.698 INFO    ] No update needed
[2026-06-27 04:39:36,699.699 INFO    ] Checking for camera pi updates...
[2026-06-27 04:39:36,720.720 INFO    ] 200
[2026-06-27 04:39:36,721.721 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:39:36,746.746 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:39:36,787.787 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:39:36,788.788 INFO    ] No camera update needed
[2026-06-27 04:39:36,789.789 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:39:36,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:39:36,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:39:36,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:39:38,837.837 INFO    ] ================================================
[2026-06-27 04:39:38,852.852 INFO    ] Launching Daemon at Sat Jun 27 04:39:38 IST 2026
[2026-06-27 04:39:38,862.862 INFO    ] ================================================
[2026-06-27 04:39:39,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:39:39
[2026-06-27 04:39:39,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:39:39,677.677 INFO    ] Initializing speech engine...
[2026-06-27 04:39:39,685.685 INFO    ] 2026-06-27 04:39:39
[2026-06-27 04:39:39,895.895 INFO    ] 2026-06-27 04:39:39
[2026-06-27 04:39:39,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:39:40,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:39:40,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:39:40,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:39:40,310.310 INFO    ] time= 27/06/2026 04:39:40
[2026-06-27 04:39:40,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:39:40,339.339 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:39:40,410.410 INFO    ] No existing commands found in stream
[2026-06-27 04:39:45,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:39:45,427.427 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-27 04:39:47,327.327 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 04:39:47,328.328 INFO    ] Checking for system updates...
[2026-06-27 04:39:47,353.353 INFO    ] 200
[2026-06-27 04:39:47,355.355 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:39:47,388.388 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:39:47,389.389 INFO    ] No update needed
[2026-06-27 04:39:47,390.390 INFO    ] Checking for camera pi updates...
[2026-06-27 04:39:47,413.413 INFO    ] 200
[2026-06-27 04:39:47,414.414 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:39:47,439.439 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:39:47,478.478 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:39:47,479.479 INFO    ] No camera update needed
[2026-06-27 04:39:47,480.480 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:39:47,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:39:47,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:39:47,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:39:49,529.529 INFO    ] ================================================
[2026-06-27 04:39:49,544.544 INFO    ] Launching Daemon at Sat Jun 27 04:39:49 IST 2026
[2026-06-27 04:39:49,555.555 INFO    ] ================================================
[2026-06-27 04:39:49,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:39:49
[2026-06-27 04:39:50,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:39:50,376.376 INFO    ] Initializing speech engine...
[2026-06-27 04:39:50,386.386 INFO    ] 2026-06-27 04:39:50
[2026-06-27 04:39:50,589.589 INFO    ] 2026-06-27 04:39:50
[2026-06-27 04:39:50,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:39:50,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:39:50,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:39:50,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:39:51,013.013 INFO    ] time= 27/06/2026 04:39:50
[2026-06-27 04:39:51,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:39:51,040.040 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:39:51,132.132 INFO    ] No existing commands found in stream
[2026-06-27 04:39:56,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:39:56,149.149 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-27 04:39:57,888.888 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:39:57,890.890 INFO    ] Checking for system updates...
[2026-06-27 04:39:57,912.912 INFO    ] 200
[2026-06-27 04:39:57,914.914 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:39:57,944.944 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:39:57,946.946 INFO    ] No update needed
[2026-06-27 04:39:57,947.947 INFO    ] Checking for camera pi updates...
[2026-06-27 04:39:57,969.969 INFO    ] 200
[2026-06-27 04:39:57,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:39:57,998.998 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:39:58,034.034 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:39:58,035.035 INFO    ] No camera update needed
[2026-06-27 04:39:58,036.036 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:39:58,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:39:58,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:39:58,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:40:00,083.083 INFO    ] ================================================
[2026-06-27 04:40:00,098.098 INFO    ] Launching Daemon at Sat Jun 27 04:40:00 IST 2026
[2026-06-27 04:40:00,108.108 INFO    ] ================================================
[2026-06-27 04:40:00,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:40:00
[2026-06-27 04:40:00,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:40:00,933.933 INFO    ] Initializing speech engine...
[2026-06-27 04:40:00,944.944 INFO    ] 2026-06-27 04:40:00
[2026-06-27 04:40:01,151.151 INFO    ] 2026-06-27 04:40:01
[2026-06-27 04:40:01,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:40:01,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:40:01,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:40:01,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:40:01,571.571 INFO    ] time= 27/06/2026 04:40:01
[2026-06-27 04:40:01,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:40:01,599.599 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:40:01,665.665 INFO    ] No existing commands found in stream
[2026-06-27 04:40:06,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:40:06,683.683 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-27 04:40:11,071.071 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:40:11,073.073 INFO    ] Checking for system updates...
[2026-06-27 04:40:11,094.094 INFO    ] 200
[2026-06-27 04:40:11,095.095 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:40:11,128.128 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:40:11,129.129 INFO    ] No update needed
[2026-06-27 04:40:11,130.130 INFO    ] Checking for camera pi updates...
[2026-06-27 04:40:11,151.151 INFO    ] 200
[2026-06-27 04:40:11,152.152 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:40:11,176.176 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:40:11,222.222 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:40:11,224.224 INFO    ] No camera update needed
[2026-06-27 04:40:11,225.225 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:40:11,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:40:11,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:40:11,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:40:13,270.270 INFO    ] ================================================
[2026-06-27 04:40:13,286.286 INFO    ] Launching Daemon at Sat Jun 27 04:40:13 IST 2026
[2026-06-27 04:40:13,296.296 INFO    ] ================================================
[2026-06-27 04:40:13,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:40:13
[2026-06-27 04:40:13,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:40:14,088.088 INFO    ] Initializing speech engine...
[2026-06-27 04:40:14,093.093 INFO    ] 2026-06-27 04:40:14
[2026-06-27 04:40:14,297.297 INFO    ] 2026-06-27 04:40:14
[2026-06-27 04:40:14,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:40:14,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:40:14,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:40:14,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:40:14,741.741 INFO    ] time= 27/06/2026 04:40:14
[2026-06-27 04:40:14,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:40:14,748.748 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:40:14,815.815 INFO    ] No existing commands found in stream
[2026-06-27 04:40:19,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:40:19,832.832 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-27 04:40:22,545.545 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 04:40:22,546.546 INFO    ] Checking for system updates...
[2026-06-27 04:40:22,568.568 INFO    ] 200
[2026-06-27 04:40:22,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:40:22,601.601 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:40:22,602.602 INFO    ] No update needed
[2026-06-27 04:40:22,604.604 INFO    ] Checking for camera pi updates...
[2026-06-27 04:40:22,624.624 INFO    ] 200
[2026-06-27 04:40:22,625.625 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:40:22,650.650 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:40:22,675.675 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:40:22,676.676 INFO    ] No camera update needed
[2026-06-27 04:40:22,677.677 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:40:22,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:40:22,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:40:22,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:40:24,727.727 INFO    ] ================================================
[2026-06-27 04:40:24,742.742 INFO    ] Launching Daemon at Sat Jun 27 04:40:24 IST 2026
[2026-06-27 04:40:24,753.753 INFO    ] ================================================
[2026-06-27 04:40:25,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:40:25
[2026-06-27 04:40:25,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:40:25,578.578 INFO    ] Initializing speech engine...
[2026-06-27 04:40:25,583.583 INFO    ] 2026-06-27 04:40:25
[2026-06-27 04:40:25,788.788 INFO    ] 2026-06-27 04:40:25
[2026-06-27 04:40:25,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:40:26,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:40:26,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:40:26,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:40:26,225.225 INFO    ] time= 27/06/2026 04:40:26
[2026-06-27 04:40:26,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:40:26,232.232 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:40:26,299.299 INFO    ] No existing commands found in stream
[2026-06-27 04:40:31,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:40:31,334.334 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-27 04:40:33,295.295 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:40:33,297.297 INFO    ] Checking for system updates...
[2026-06-27 04:40:33,321.321 INFO    ] 200
[2026-06-27 04:40:33,322.322 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:40:33,355.355 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:40:33,357.357 INFO    ] No update needed
[2026-06-27 04:40:33,358.358 INFO    ] Checking for camera pi updates...
[2026-06-27 04:40:33,380.380 INFO    ] 200
[2026-06-27 04:40:33,381.381 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:40:33,406.406 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:40:33,444.444 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:40:33,445.445 INFO    ] No camera update needed
[2026-06-27 04:40:33,447.447 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:40:33,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:40:33,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:40:33,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:40:35,494.494 INFO    ] ================================================
[2026-06-27 04:40:35,510.510 INFO    ] Launching Daemon at Sat Jun 27 04:40:35 IST 2026
[2026-06-27 04:40:35,520.520 INFO    ] ================================================
[2026-06-27 04:40:35,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:40:35
[2026-06-27 04:40:36,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:40:36,302.302 INFO    ] Initializing speech engine...
[2026-06-27 04:40:36,310.310 INFO    ] 2026-06-27 04:40:36
[2026-06-27 04:40:36,518.518 INFO    ] 2026-06-27 04:40:36
[2026-06-27 04:40:36,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:40:36,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:40:36,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:40:36,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:40:36,946.946 INFO    ] time= 27/06/2026 04:40:36
[2026-06-27 04:40:36,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:40:36,976.976 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:40:37,044.044 INFO    ] No existing commands found in stream
[2026-06-27 04:40:42,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:40:42,056.056 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-27 04:40:42,768.768 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 04:40:42,770.770 INFO    ] Checking for system updates...
[2026-06-27 04:40:42,791.791 INFO    ] 200
[2026-06-27 04:40:42,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:40:42,829.829 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:40:42,830.830 INFO    ] No update needed
[2026-06-27 04:40:42,831.831 INFO    ] Checking for camera pi updates...
[2026-06-27 04:40:42,852.852 INFO    ] 200
[2026-06-27 04:40:42,854.854 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:40:42,877.877 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:40:42,916.916 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:40:42,918.918 INFO    ] No camera update needed
[2026-06-27 04:40:42,919.919 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:40:42,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:40:42,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:40:42,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:40:44,964.964 INFO    ] ================================================
[2026-06-27 04:40:44,979.979 INFO    ] Launching Daemon at Sat Jun 27 04:40:44 IST 2026
[2026-06-27 04:40:44,990.990 INFO    ] ================================================
[2026-06-27 04:40:45,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:40:45
[2026-06-27 04:40:45,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:40:45,791.791 INFO    ] Initializing speech engine...
[2026-06-27 04:40:45,796.796 INFO    ] 2026-06-27 04:40:45
[2026-06-27 04:40:45,997.997 INFO    ] 2026-06-27 04:40:45
[2026-06-27 04:40:46,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:40:46,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:40:46,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:40:46,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:40:46,413.413 INFO    ] time= 27/06/2026 04:40:46
[2026-06-27 04:40:46,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:40:46,443.443 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:40:46,534.534 INFO    ] No existing commands found in stream
[2026-06-27 04:40:51,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:40:51,551.551 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-27 04:40:55,406.406 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:40:55,408.408 INFO    ] Checking for system updates...
[2026-06-27 04:40:55,429.429 INFO    ] 200
[2026-06-27 04:40:55,430.430 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:40:55,464.464 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:40:55,466.466 INFO    ] No update needed
[2026-06-27 04:40:55,467.467 INFO    ] Checking for camera pi updates...
[2026-06-27 04:40:55,488.488 INFO    ] 200
[2026-06-27 04:40:55,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:40:55,514.514 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:40:55,658.658 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:40:55,659.659 INFO    ] No camera update needed
[2026-06-27 04:40:55,660.660 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:40:55,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:40:55,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:40:55,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:40:57,706.706 INFO    ] ================================================
[2026-06-27 04:40:57,721.721 INFO    ] Launching Daemon at Sat Jun 27 04:40:57 IST 2026
[2026-06-27 04:40:57,732.732 INFO    ] ================================================
[2026-06-27 04:40:58,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:40:58
[2026-06-27 04:40:58,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:40:58,518.518 INFO    ] Initializing speech engine...
[2026-06-27 04:40:58,531.531 INFO    ] 2026-06-27 04:40:58
[2026-06-27 04:40:58,739.739 INFO    ] 2026-06-27 04:40:58
[2026-06-27 04:40:58,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:40:58,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:40:58,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:40:59,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:40:59,183.183 INFO    ] time= 27/06/2026 04:40:59
[2026-06-27 04:40:59,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:40:59,194.194 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:40:59,262.262 INFO    ] No existing commands found in stream
[2026-06-27 04:41:04,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:41:04,274.274 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-27 04:41:04,791.791 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 04:41:04,793.793 INFO    ] Checking for system updates...
[2026-06-27 04:41:04,828.828 INFO    ] 200
[2026-06-27 04:41:04,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:41:04,862.862 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:41:04,864.864 INFO    ] No update needed
[2026-06-27 04:41:04,865.865 INFO    ] Checking for camera pi updates...
[2026-06-27 04:41:04,886.886 INFO    ] 200
[2026-06-27 04:41:04,888.888 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:41:04,913.913 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:41:04,950.950 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:41:04,951.951 INFO    ] No camera update needed
[2026-06-27 04:41:04,952.952 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:41:04,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:41:04,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:41:04,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:41:07,002.002 INFO    ] ================================================
[2026-06-27 04:41:07,017.017 INFO    ] Launching Daemon at Sat Jun 27 04:41:07 IST 2026
[2026-06-27 04:41:07,028.028 INFO    ] ================================================
[2026-06-27 04:41:07,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:41:07
[2026-06-27 04:41:07,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:41:07,820.820 INFO    ] Initializing speech engine...
[2026-06-27 04:41:07,832.832 INFO    ] 2026-06-27 04:41:07
[2026-06-27 04:41:08,042.042 INFO    ] 2026-06-27 04:41:08
[2026-06-27 04:41:08,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:41:08,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:41:08,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:41:08,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:41:08,479.479 INFO    ] time= 27/06/2026 04:41:08
[2026-06-27 04:41:08,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:41:08,496.496 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:41:08,561.561 INFO    ] No existing commands found in stream
[2026-06-27 04:41:13,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:41:13,575.575 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-27 04:41:14,432.432 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:41:14,433.433 INFO    ] Checking for system updates...
[2026-06-27 04:41:14,454.454 INFO    ] 200
[2026-06-27 04:41:14,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:41:14,489.489 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:41:14,490.490 INFO    ] No update needed
[2026-06-27 04:41:14,492.492 INFO    ] Checking for camera pi updates...
[2026-06-27 04:41:14,514.514 INFO    ] 200
[2026-06-27 04:41:14,515.515 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:41:14,539.539 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:41:14,576.576 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:41:14,577.577 INFO    ] No camera update needed
[2026-06-27 04:41:14,579.579 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:41:14,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:41:14,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:41:14,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:41:16,626.626 INFO    ] ================================================
[2026-06-27 04:41:16,642.642 INFO    ] Launching Daemon at Sat Jun 27 04:41:16 IST 2026
[2026-06-27 04:41:16,653.653 INFO    ] ================================================
[2026-06-27 04:41:17,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:41:16
[2026-06-27 04:41:17,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:41:17,460.460 INFO    ] Initializing speech engine...
[2026-06-27 04:41:17,464.464 INFO    ] 2026-06-27 04:41:17
[2026-06-27 04:41:17,658.658 INFO    ] 2026-06-27 04:41:17
[2026-06-27 04:41:17,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:41:17,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:41:17,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:41:18,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:41:18,128.128 INFO    ] time= 27/06/2026 04:41:18
[2026-06-27 04:41:18,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:41:18,192.192 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:41:18,272.272 INFO    ] No existing commands found in stream
[2026-06-27 04:41:23,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:41:23,299.299 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-27 04:41:25,494.494 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:41:25,495.495 INFO    ] Checking for system updates...
[2026-06-27 04:41:25,518.518 INFO    ] 200
[2026-06-27 04:41:25,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:41:25,552.552 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:41:25,554.554 INFO    ] No update needed
[2026-06-27 04:41:25,555.555 INFO    ] Checking for camera pi updates...
[2026-06-27 04:41:25,576.576 INFO    ] 200
[2026-06-27 04:41:25,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:41:25,601.601 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:41:25,647.647 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:41:25,649.649 INFO    ] No camera update needed
[2026-06-27 04:41:25,650.650 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:41:25,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:41:25,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:41:25,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:41:27,696.696 INFO    ] ================================================
[2026-06-27 04:41:27,712.712 INFO    ] Launching Daemon at Sat Jun 27 04:41:27 IST 2026
[2026-06-27 04:41:27,724.724 INFO    ] ================================================
[2026-06-27 04:41:28,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:41:28
[2026-06-27 04:41:28,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:41:28,584.584 INFO    ] Initializing speech engine...
[2026-06-27 04:41:28,589.589 INFO    ] 2026-06-27 04:41:28
[2026-06-27 04:41:28,801.801 INFO    ] 2026-06-27 04:41:28
[2026-06-27 04:41:28,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:41:29,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:41:29,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:41:29,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:41:29,246.246 INFO    ] time= 27/06/2026 04:41:29
[2026-06-27 04:41:29,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:41:29,254.254 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:41:29,321.321 INFO    ] No existing commands found in stream
[2026-06-27 04:41:34,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:41:34,339.339 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-27 04:41:35,850.850 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:41:35,851.851 INFO    ] Checking for system updates...
[2026-06-27 04:41:35,874.874 INFO    ] 200
[2026-06-27 04:41:35,876.876 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:41:35,911.911 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:41:35,912.912 INFO    ] No update needed
[2026-06-27 04:41:35,914.914 INFO    ] Checking for camera pi updates...
[2026-06-27 04:41:35,935.935 INFO    ] 200
[2026-06-27 04:41:35,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:41:35,963.963 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:41:36,007.007 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:41:36,008.008 INFO    ] No camera update needed
[2026-06-27 04:41:36,010.010 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:41:36,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:41:36,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:41:36,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:41:38,059.059 INFO    ] ================================================
[2026-06-27 04:41:38,074.074 INFO    ] Launching Daemon at Sat Jun 27 04:41:38 IST 2026
[2026-06-27 04:41:38,085.085 INFO    ] ================================================
[2026-06-27 04:41:38,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:41:38
[2026-06-27 04:41:38,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:41:38,887.887 INFO    ] Initializing speech engine...
[2026-06-27 04:41:38,891.891 INFO    ] 2026-06-27 04:41:38
[2026-06-27 04:41:39,096.096 INFO    ] 2026-06-27 04:41:39
[2026-06-27 04:41:39,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:41:39,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:41:39,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:41:39,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:41:39,538.538 INFO    ] time= 27/06/2026 04:41:39
[2026-06-27 04:41:39,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:41:39,545.545 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:41:39,612.612 INFO    ] No existing commands found in stream
[2026-06-27 04:41:44,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:41:44,624.624 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-27 04:41:46,808.808 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:41:46,810.810 INFO    ] Checking for system updates...
[2026-06-27 04:41:46,832.832 INFO    ] 200
[2026-06-27 04:41:46,833.833 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:41:46,866.866 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:41:46,868.868 INFO    ] No update needed
[2026-06-27 04:41:46,869.869 INFO    ] Checking for camera pi updates...
[2026-06-27 04:41:46,888.888 INFO    ] 200
[2026-06-27 04:41:46,890.890 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:41:46,916.916 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:41:46,956.956 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:41:46,958.958 INFO    ] No camera update needed
[2026-06-27 04:41:46,959.959 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:41:46,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:41:46,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:41:46,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:41:49,008.008 INFO    ] ================================================
[2026-06-27 04:41:49,023.023 INFO    ] Launching Daemon at Sat Jun 27 04:41:49 IST 2026
[2026-06-27 04:41:49,033.033 INFO    ] ================================================
[2026-06-27 04:41:49,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:41:49
[2026-06-27 04:41:49,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:41:49,894.894 INFO    ] Initializing speech engine...
[2026-06-27 04:41:49,904.904 INFO    ] 2026-06-27 04:41:49
[2026-06-27 04:41:50,117.117 INFO    ] 2026-06-27 04:41:50
[2026-06-27 04:41:50,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:41:50,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:41:50,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:41:50,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:41:50,562.562 INFO    ] time= 27/06/2026 04:41:50
[2026-06-27 04:41:50,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:41:50,569.569 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:41:50,637.637 INFO    ] No existing commands found in stream
[2026-06-27 04:41:55,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:41:55,655.655 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-27 04:41:59,328.328 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 04:41:59,329.329 INFO    ] Checking for system updates...
[2026-06-27 04:41:59,352.352 INFO    ] 200
[2026-06-27 04:41:59,354.354 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:41:59,388.388 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:41:59,390.390 INFO    ] No update needed
[2026-06-27 04:41:59,391.391 INFO    ] Checking for camera pi updates...
[2026-06-27 04:41:59,414.414 INFO    ] 200
[2026-06-27 04:41:59,415.415 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:41:59,441.441 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:41:59,480.480 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:41:59,482.482 INFO    ] No camera update needed
[2026-06-27 04:41:59,483.483 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:41:59,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:41:59,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:41:59,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:42:01,530.530 INFO    ] ================================================
[2026-06-27 04:42:01,546.546 INFO    ] Launching Daemon at Sat Jun 27 04:42:01 IST 2026
[2026-06-27 04:42:01,557.557 INFO    ] ================================================
[2026-06-27 04:42:01,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:42:01
[2026-06-27 04:42:02,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:42:02,568.568 INFO    ] Initializing speech engine...
[2026-06-27 04:42:02,574.574 INFO    ] 2026-06-27 04:42:02
[2026-06-27 04:42:02,796.796 INFO    ] 2026-06-27 04:42:02
[2026-06-27 04:42:02,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:42:03,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:42:03,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:42:03,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:42:03,265.265 INFO    ] time= 27/06/2026 04:42:03
[2026-06-27 04:42:03,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:42:03,322.322 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:42:03,395.395 INFO    ] No existing commands found in stream
[2026-06-27 04:42:08,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:42:08,408.408 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-27 04:42:10,203.203 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:42:10,206.206 INFO    ] Checking for system updates...
[2026-06-27 04:42:10,227.227 INFO    ] 200
[2026-06-27 04:42:10,229.229 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:42:10,260.260 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:42:10,261.261 INFO    ] No update needed
[2026-06-27 04:42:10,263.263 INFO    ] Checking for camera pi updates...
[2026-06-27 04:42:10,285.285 INFO    ] 200
[2026-06-27 04:42:10,286.286 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:42:10,315.315 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:42:10,362.362 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:42:10,364.364 INFO    ] No camera update needed
[2026-06-27 04:42:10,366.366 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:42:10,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:42:10,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:42:10,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:42:12,414.414 INFO    ] ================================================
[2026-06-27 04:42:12,429.429 INFO    ] Launching Daemon at Sat Jun 27 04:42:12 IST 2026
[2026-06-27 04:42:12,440.440 INFO    ] ================================================
[2026-06-27 04:42:12,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:42:12
[2026-06-27 04:42:13,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:42:13,231.231 INFO    ] Initializing speech engine...
[2026-06-27 04:42:13,236.236 INFO    ] 2026-06-27 04:42:13
[2026-06-27 04:42:13,442.442 INFO    ] 2026-06-27 04:42:13
[2026-06-27 04:42:13,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:42:13,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:42:13,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:42:13,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:42:13,868.868 INFO    ] time= 27/06/2026 04:42:13
[2026-06-27 04:42:13,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:42:13,895.895 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:42:13,961.961 INFO    ] No existing commands found in stream
[2026-06-27 04:42:18,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:42:18,974.974 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-27 04:42:22,204.204 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 04:42:22,206.206 INFO    ] Checking for system updates...
[2026-06-27 04:42:22,228.228 INFO    ] 200
[2026-06-27 04:42:22,230.230 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:42:22,263.263 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:42:22,265.265 INFO    ] No update needed
[2026-06-27 04:42:22,266.266 INFO    ] Checking for camera pi updates...
[2026-06-27 04:42:22,286.286 INFO    ] 200
[2026-06-27 04:42:22,287.287 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:42:22,312.312 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:42:22,345.345 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:42:22,347.347 INFO    ] No camera update needed
[2026-06-27 04:42:22,348.348 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:42:22,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:42:22,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:42:22,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:42:24,395.395 INFO    ] ================================================
[2026-06-27 04:42:24,411.411 INFO    ] Launching Daemon at Sat Jun 27 04:42:24 IST 2026
[2026-06-27 04:42:24,422.422 INFO    ] ================================================
[2026-06-27 04:42:24,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:42:24
[2026-06-27 04:42:25,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:42:25,259.259 INFO    ] Initializing speech engine...
[2026-06-27 04:42:25,266.266 INFO    ] 2026-06-27 04:42:25
[2026-06-27 04:42:25,474.474 INFO    ] 2026-06-27 04:42:25
[2026-06-27 04:42:25,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:42:25,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:42:25,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:42:25,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:42:25,925.925 INFO    ] time= 27/06/2026 04:42:25
[2026-06-27 04:42:25,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:42:25,934.934 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:42:26,002.002 INFO    ] No existing commands found in stream
[2026-06-27 04:42:31,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:42:31,020.020 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-27 04:42:33,359.359 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 04:42:33,360.360 INFO    ] Checking for system updates...
[2026-06-27 04:42:33,383.383 INFO    ] 200
[2026-06-27 04:42:33,385.385 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:42:33,419.419 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:42:33,421.421 INFO    ] No update needed
[2026-06-27 04:42:33,423.423 INFO    ] Checking for camera pi updates...
[2026-06-27 04:42:33,444.444 INFO    ] 200
[2026-06-27 04:42:33,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:42:33,470.470 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:42:33,515.515 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:42:33,516.516 INFO    ] No camera update needed
[2026-06-27 04:42:33,518.518 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:42:33,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:42:33,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:42:33,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:42:35,566.566 INFO    ] ================================================
[2026-06-27 04:42:35,581.581 INFO    ] Launching Daemon at Sat Jun 27 04:42:35 IST 2026
[2026-06-27 04:42:35,592.592 INFO    ] ================================================
[2026-06-27 04:42:35,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:42:35
[2026-06-27 04:42:36,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:42:36,498.498 INFO    ] Initializing speech engine...
[2026-06-27 04:42:36,505.505 INFO    ] 2026-06-27 04:42:36
[2026-06-27 04:42:36,710.710 INFO    ] 2026-06-27 04:42:36
[2026-06-27 04:42:36,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:42:36,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:42:36,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:42:37,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:42:37,156.156 INFO    ] time= 27/06/2026 04:42:37
[2026-06-27 04:42:37,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:42:37,164.164 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:42:37,231.231 INFO    ] No existing commands found in stream
[2026-06-27 04:42:42,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:42:42,249.249 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-27 04:42:44,885.885 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 04:42:44,887.887 INFO    ] Checking for system updates...
[2026-06-27 04:42:44,908.908 INFO    ] 200
[2026-06-27 04:42:44,910.910 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:42:44,943.943 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:42:44,945.945 INFO    ] No update needed
[2026-06-27 04:42:44,947.947 INFO    ] Checking for camera pi updates...
[2026-06-27 04:42:44,968.968 INFO    ] 200
[2026-06-27 04:42:44,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:42:44,994.994 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:42:45,033.033 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:42:45,035.035 INFO    ] No camera update needed
[2026-06-27 04:42:45,036.036 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:42:45,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:42:45,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:42:45,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:42:47,084.084 INFO    ] ================================================
[2026-06-27 04:42:47,099.099 INFO    ] Launching Daemon at Sat Jun 27 04:42:47 IST 2026
[2026-06-27 04:42:47,111.111 INFO    ] ================================================
[2026-06-27 04:42:47,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:42:47
[2026-06-27 04:42:47,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:42:47,966.966 INFO    ] Initializing speech engine...
[2026-06-27 04:42:47,974.974 INFO    ] 2026-06-27 04:42:47
[2026-06-27 04:42:48,192.192 INFO    ] 2026-06-27 04:42:48
[2026-06-27 04:42:48,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:42:48,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:42:48,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:42:48,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:42:48,637.637 INFO    ] time= 27/06/2026 04:42:48
[2026-06-27 04:42:48,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:42:48,645.645 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:42:48,712.712 INFO    ] No existing commands found in stream
[2026-06-27 04:42:53,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:42:53,730.730 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-27 04:42:57,415.415 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:42:57,417.417 INFO    ] Checking for system updates...
[2026-06-27 04:42:57,440.440 INFO    ] 200
[2026-06-27 04:42:57,442.442 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:42:57,473.473 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:42:57,475.475 INFO    ] No update needed
[2026-06-27 04:42:57,476.476 INFO    ] Checking for camera pi updates...
[2026-06-27 04:42:57,498.498 INFO    ] 200
[2026-06-27 04:42:57,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:42:57,523.523 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:42:57,683.683 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:42:57,685.685 INFO    ] No camera update needed
[2026-06-27 04:42:57,686.686 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:42:57,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:42:57,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:42:57,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:42:59,733.733 INFO    ] ================================================
[2026-06-27 04:42:59,749.749 INFO    ] Launching Daemon at Sat Jun 27 04:42:59 IST 2026
[2026-06-27 04:42:59,760.760 INFO    ] ================================================
[2026-06-27 04:43:00,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:43:00
[2026-06-27 04:43:00,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:43:00,568.568 INFO    ] Initializing speech engine...
[2026-06-27 04:43:00,573.573 INFO    ] 2026-06-27 04:43:00
[2026-06-27 04:43:00,778.778 INFO    ] 2026-06-27 04:43:00
[2026-06-27 04:43:00,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:43:00,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:43:01,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:43:01,156.156 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:43:01,169.169 INFO    ] time= 27/06/2026 04:43:01
[2026-06-27 04:43:01,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:43:01,181.181 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:43:01,271.271 INFO    ] No existing commands found in stream
[2026-06-27 04:43:06,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:43:06,283.283 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-27 04:43:09,435.435 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:43:09,436.436 INFO    ] Checking for system updates...
[2026-06-27 04:43:09,458.458 INFO    ] 200
[2026-06-27 04:43:09,459.459 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:43:09,492.492 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:43:09,494.494 INFO    ] No update needed
[2026-06-27 04:43:09,495.495 INFO    ] Checking for camera pi updates...
[2026-06-27 04:43:09,517.517 INFO    ] 200
[2026-06-27 04:43:09,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:43:09,545.545 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:43:09,586.586 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:43:09,588.588 INFO    ] No camera update needed
[2026-06-27 04:43:09,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:43:09,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:43:09,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:43:09,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:43:11,639.639 INFO    ] ================================================
[2026-06-27 04:43:11,655.655 INFO    ] Launching Daemon at Sat Jun 27 04:43:11 IST 2026
[2026-06-27 04:43:11,666.666 INFO    ] ================================================
[2026-06-27 04:43:12,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:43:12
[2026-06-27 04:43:12,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:43:12,490.490 INFO    ] Initializing speech engine...
[2026-06-27 04:43:12,495.495 INFO    ] 2026-06-27 04:43:12
[2026-06-27 04:43:12,698.698 INFO    ] 2026-06-27 04:43:12
[2026-06-27 04:43:12,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:43:12,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:43:12,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:43:13,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:43:13,135.135 INFO    ] time= 27/06/2026 04:43:13
[2026-06-27 04:43:13,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:43:13,142.142 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:43:13,210.210 INFO    ] No existing commands found in stream
[2026-06-27 04:43:18,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:43:18,227.227 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-27 04:43:21,595.595 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 04:43:21,597.597 INFO    ] Checking for system updates...
[2026-06-27 04:43:21,617.617 INFO    ] 200
[2026-06-27 04:43:21,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:43:21,654.654 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:43:21,655.655 INFO    ] No update needed
[2026-06-27 04:43:21,656.656 INFO    ] Checking for camera pi updates...
[2026-06-27 04:43:21,676.676 INFO    ] 200
[2026-06-27 04:43:21,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:43:21,701.701 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:43:21,743.743 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:43:21,745.745 INFO    ] No camera update needed
[2026-06-27 04:43:21,746.746 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:43:21,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:43:21,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:43:21,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:43:23,794.794 INFO    ] ================================================
[2026-06-27 04:43:23,809.809 INFO    ] Launching Daemon at Sat Jun 27 04:43:23 IST 2026
[2026-06-27 04:43:23,820.820 INFO    ] ================================================
[2026-06-27 04:43:24,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:43:24
[2026-06-27 04:43:24,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:43:24,605.605 INFO    ] Initializing speech engine...
[2026-06-27 04:43:24,615.615 INFO    ] 2026-06-27 04:43:24
[2026-06-27 04:43:24,830.830 INFO    ] 2026-06-27 04:43:24
[2026-06-27 04:43:24,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:43:25,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:43:25,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:43:25,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:43:25,254.254 INFO    ] time= 27/06/2026 04:43:25
[2026-06-27 04:43:25,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:43:25,283.283 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:43:25,352.352 INFO    ] No existing commands found in stream
[2026-06-27 04:43:30,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:43:30,361.361 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-27 04:43:34,352.352 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 04:43:34,354.354 INFO    ] Checking for system updates...
[2026-06-27 04:43:34,376.376 INFO    ] 200
[2026-06-27 04:43:34,377.377 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:43:34,411.411 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:43:34,412.412 INFO    ] No update needed
[2026-06-27 04:43:34,414.414 INFO    ] Checking for camera pi updates...
[2026-06-27 04:43:34,434.434 INFO    ] 200
[2026-06-27 04:43:34,436.436 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:43:34,460.460 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:43:34,498.498 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:43:34,499.499 INFO    ] No camera update needed
[2026-06-27 04:43:34,501.501 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:43:34,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:43:34,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:43:34,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:43:36,549.549 INFO    ] ================================================
[2026-06-27 04:43:36,565.565 INFO    ] Launching Daemon at Sat Jun 27 04:43:36 IST 2026
[2026-06-27 04:43:36,576.576 INFO    ] ================================================
[2026-06-27 04:43:36,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:43:36
[2026-06-27 04:43:37,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:43:37,377.377 INFO    ] Initializing speech engine...
[2026-06-27 04:43:37,390.390 INFO    ] 2026-06-27 04:43:37
[2026-06-27 04:43:37,613.613 INFO    ] 2026-06-27 04:43:37
[2026-06-27 04:43:37,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:43:37,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:43:37,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:43:38,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:43:38,049.049 INFO    ] time= 27/06/2026 04:43:38
[2026-06-27 04:43:38,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:43:38,109.109 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:43:38,185.185 INFO    ] No existing commands found in stream
[2026-06-27 04:43:43,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:43:43,198.198 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-27 04:43:47,056.056 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:43:47,057.057 INFO    ] Checking for system updates...
[2026-06-27 04:43:47,079.079 INFO    ] 200
[2026-06-27 04:43:47,081.081 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:43:47,112.112 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:43:47,114.114 INFO    ] No update needed
[2026-06-27 04:43:47,115.115 INFO    ] Checking for camera pi updates...
[2026-06-27 04:43:47,136.136 INFO    ] 200
[2026-06-27 04:43:47,137.137 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:43:47,161.161 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:43:47,208.208 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:43:47,209.209 INFO    ] No camera update needed
[2026-06-27 04:43:47,210.210 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:43:47,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:43:47,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:43:47,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:43:49,259.259 INFO    ] ================================================
[2026-06-27 04:43:49,276.276 INFO    ] Launching Daemon at Sat Jun 27 04:43:49 IST 2026
[2026-06-27 04:43:49,287.287 INFO    ] ================================================
[2026-06-27 04:43:49,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:43:49
[2026-06-27 04:43:49,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:43:50,113.113 INFO    ] Initializing speech engine...
[2026-06-27 04:43:50,118.118 INFO    ] 2026-06-27 04:43:50
[2026-06-27 04:43:50,321.321 INFO    ] 2026-06-27 04:43:50
[2026-06-27 04:43:50,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:43:50,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:43:50,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:43:50,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:43:50,754.754 INFO    ] time= 27/06/2026 04:43:50
[2026-06-27 04:43:50,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:43:50,771.771 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:43:50,837.837 INFO    ] No existing commands found in stream
[2026-06-27 04:43:55,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:43:55,849.849 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-27 04:43:56,463.463 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 04:43:56,464.464 INFO    ] Checking for system updates...
[2026-06-27 04:43:56,489.489 INFO    ] 200
[2026-06-27 04:43:56,490.490 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:43:56,521.521 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:43:56,523.523 INFO    ] No update needed
[2026-06-27 04:43:56,524.524 INFO    ] Checking for camera pi updates...
[2026-06-27 04:43:56,544.544 INFO    ] 200
[2026-06-27 04:43:56,545.545 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:43:56,569.569 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:43:56,609.609 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:43:56,611.611 INFO    ] No camera update needed
[2026-06-27 04:43:56,612.612 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:43:56,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:43:56,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:43:56,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:43:58,659.659 INFO    ] ================================================
[2026-06-27 04:43:58,675.675 INFO    ] Launching Daemon at Sat Jun 27 04:43:58 IST 2026
[2026-06-27 04:43:58,687.687 INFO    ] ================================================
[2026-06-27 04:43:59,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:43:59
[2026-06-27 04:43:59,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:43:59,487.487 INFO    ] Initializing speech engine...
[2026-06-27 04:43:59,497.497 INFO    ] 2026-06-27 04:43:59
[2026-06-27 04:43:59,701.701 INFO    ] 2026-06-27 04:43:59
[2026-06-27 04:43:59,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:43:59,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:43:59,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:44:00,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:44:00,121.121 INFO    ] time= 27/06/2026 04:44:00
[2026-06-27 04:44:00,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:44:00,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:44:00,216.216 INFO    ] No existing commands found in stream
[2026-06-27 04:44:05,225.225 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:44:05,228.228 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-27 04:44:08,249.249 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:44:08,251.251 INFO    ] Checking for system updates...
[2026-06-27 04:44:08,272.272 INFO    ] 200
[2026-06-27 04:44:08,274.274 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:44:08,305.305 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:44:08,307.307 INFO    ] No update needed
[2026-06-27 04:44:08,308.308 INFO    ] Checking for camera pi updates...
[2026-06-27 04:44:08,328.328 INFO    ] 200
[2026-06-27 04:44:08,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:44:08,354.354 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:44:08,391.391 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:44:08,392.392 INFO    ] No camera update needed
[2026-06-27 04:44:08,394.394 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:44:08,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:44:08,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:44:08,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:44:10,444.444 INFO    ] ================================================
[2026-06-27 04:44:10,460.460 INFO    ] Launching Daemon at Sat Jun 27 04:44:10 IST 2026
[2026-06-27 04:44:10,471.471 INFO    ] ================================================
[2026-06-27 04:44:10,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:44:10
[2026-06-27 04:44:11,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:44:11,345.345 INFO    ] Initializing speech engine...
[2026-06-27 04:44:11,350.350 INFO    ] 2026-06-27 04:44:11
[2026-06-27 04:44:11,560.560 INFO    ] 2026-06-27 04:44:11
[2026-06-27 04:44:11,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:44:11,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:44:11,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:44:11,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:44:11,985.985 INFO    ] time= 27/06/2026 04:44:11
[2026-06-27 04:44:12,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:44:12,014.014 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:44:12,082.082 INFO    ] No existing commands found in stream
[2026-06-27 04:44:17,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:44:17,105.105 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-27 04:44:20,966.966 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:44:20,968.968 INFO    ] Checking for system updates...
[2026-06-27 04:44:20,989.989 INFO    ] 200
[2026-06-27 04:44:20,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:44:21,022.022 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:44:21,023.023 INFO    ] No update needed
[2026-06-27 04:44:21,025.025 INFO    ] Checking for camera pi updates...
[2026-06-27 04:44:21,047.047 INFO    ] 200
[2026-06-27 04:44:21,048.048 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:44:21,072.072 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:44:21,122.122 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:44:21,123.123 INFO    ] No camera update needed
[2026-06-27 04:44:21,125.125 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:44:21,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:44:21,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:44:21,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:44:23,171.171 INFO    ] ================================================
[2026-06-27 04:44:23,187.187 INFO    ] Launching Daemon at Sat Jun 27 04:44:23 IST 2026
[2026-06-27 04:44:23,198.198 INFO    ] ================================================
[2026-06-27 04:44:23,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:44:23
[2026-06-27 04:44:23,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:44:23,986.986 INFO    ] Initializing speech engine...
[2026-06-27 04:44:23,991.991 INFO    ] 2026-06-27 04:44:23
[2026-06-27 04:44:24,197.197 INFO    ] 2026-06-27 04:44:24
[2026-06-27 04:44:24,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:44:24,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:44:24,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:44:24,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:44:24,639.639 INFO    ] time= 27/06/2026 04:44:24
[2026-06-27 04:44:24,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:44:24,646.646 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:44:24,713.713 INFO    ] No existing commands found in stream
[2026-06-27 04:44:29,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:44:29,725.725 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-27 04:44:31,903.903 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 04:44:31,905.905 INFO    ] Checking for system updates...
[2026-06-27 04:44:31,932.932 INFO    ] 200
[2026-06-27 04:44:31,934.934 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:44:31,971.971 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:44:31,973.973 INFO    ] No update needed
[2026-06-27 04:44:31,974.974 INFO    ] Checking for camera pi updates...
[2026-06-27 04:44:32,000.000 INFO    ] 200
[2026-06-27 04:44:32,001.001 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:44:32,028.028 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:44:32,080.080 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:44:32,082.082 INFO    ] No camera update needed
[2026-06-27 04:44:32,083.083 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:44:32,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:44:32,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:44:32,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:44:34,132.132 INFO    ] ================================================
[2026-06-27 04:44:34,147.147 INFO    ] Launching Daemon at Sat Jun 27 04:44:34 IST 2026
[2026-06-27 04:44:34,158.158 INFO    ] ================================================
[2026-06-27 04:44:34,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:44:34
[2026-06-27 04:44:34,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:44:35,004.004 INFO    ] Initializing speech engine...
[2026-06-27 04:44:35,009.009 INFO    ] 2026-06-27 04:44:35
[2026-06-27 04:44:35,214.214 INFO    ] 2026-06-27 04:44:35
[2026-06-27 04:44:35,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:44:35,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:44:35,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:44:35,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:44:35,618.618 INFO    ] time= 27/06/2026 04:44:35
[2026-06-27 04:44:35,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:44:35,670.670 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:44:35,737.737 INFO    ] No existing commands found in stream
[2026-06-27 04:44:40,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:44:40,748.748 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-27 04:44:41,796.796 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 04:44:41,797.797 INFO    ] Checking for system updates...
[2026-06-27 04:44:41,820.820 INFO    ] 200
[2026-06-27 04:44:41,821.821 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:44:41,851.851 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:44:41,853.853 INFO    ] No update needed
[2026-06-27 04:44:41,855.855 INFO    ] Checking for camera pi updates...
[2026-06-27 04:44:41,874.874 INFO    ] 200
[2026-06-27 04:44:41,876.876 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:44:41,899.899 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:44:41,935.935 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:44:41,937.937 INFO    ] No camera update needed
[2026-06-27 04:44:41,938.938 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:44:41,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:44:41,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:44:41,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:44:43,983.983 INFO    ] ================================================
[2026-06-27 04:44:44,999.999 INFO    ] Launching Daemon at Sat Jun 27 04:44:43 IST 2026
[2026-06-27 04:44:44,011.011 INFO    ] ================================================
[2026-06-27 04:44:44,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:44:44
[2026-06-27 04:44:44,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:44:44,798.798 INFO    ] Initializing speech engine...
[2026-06-27 04:44:44,809.809 INFO    ] 2026-06-27 04:44:44
[2026-06-27 04:44:45,014.014 INFO    ] 2026-06-27 04:44:44
[2026-06-27 04:44:45,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:44:45,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:44:45,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:44:45,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:44:45,437.437 INFO    ] time= 27/06/2026 04:44:45
[2026-06-27 04:44:45,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:44:45,466.466 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:44:45,532.532 INFO    ] No existing commands found in stream
[2026-06-27 04:44:50,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:44:50,545.545 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-27 04:44:52,778.778 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:44:52,779.779 INFO    ] Checking for system updates...
[2026-06-27 04:44:52,800.800 INFO    ] 200
[2026-06-27 04:44:52,801.801 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:44:52,832.832 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:44:52,834.834 INFO    ] No update needed
[2026-06-27 04:44:52,835.835 INFO    ] Checking for camera pi updates...
[2026-06-27 04:44:52,855.855 INFO    ] 200
[2026-06-27 04:44:52,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:44:52,879.879 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:44:52,921.921 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:44:52,922.922 INFO    ] No camera update needed
[2026-06-27 04:44:52,923.923 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:44:52,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:44:52,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:44:52,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:44:54,971.971 INFO    ] ================================================
[2026-06-27 04:44:54,987.987 INFO    ] Launching Daemon at Sat Jun 27 04:44:54 IST 2026
[2026-06-27 04:44:55,998.998 INFO    ] ================================================
[2026-06-27 04:44:55,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:44:55
[2026-06-27 04:44:55,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:44:55,794.794 INFO    ] Initializing speech engine...
[2026-06-27 04:44:55,804.804 INFO    ] 2026-06-27 04:44:55
[2026-06-27 04:44:56,022.022 INFO    ] 2026-06-27 04:44:56
[2026-06-27 04:44:56,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:44:56,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:44:56,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:44:56,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:44:56,469.469 INFO    ] time= 27/06/2026 04:44:56
[2026-06-27 04:44:56,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:44:56,481.481 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:44:56,550.550 INFO    ] No existing commands found in stream
[2026-06-27 04:45:01,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:45:01,568.568 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-27 04:45:02,470.470 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:45:02,472.472 INFO    ] Checking for system updates...
[2026-06-27 04:45:02,503.503 INFO    ] 200
[2026-06-27 04:45:02,505.505 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:45:02,555.555 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:45:02,557.557 INFO    ] No update needed
[2026-06-27 04:45:02,560.560 INFO    ] Checking for camera pi updates...
[2026-06-27 04:45:02,585.585 INFO    ] 200
[2026-06-27 04:45:02,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:45:02,617.617 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:45:02,752.752 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:45:02,755.755 INFO    ] No camera update needed
[2026-06-27 04:45:02,757.757 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:45:02,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:45:02,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:45:02,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:45:04,809.809 INFO    ] ================================================
[2026-06-27 04:45:04,825.825 INFO    ] Launching Daemon at Sat Jun 27 04:45:04 IST 2026
[2026-06-27 04:45:04,837.837 INFO    ] ================================================
[2026-06-27 04:45:05,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:45:05
[2026-06-27 04:45:05,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:45:05,649.649 INFO    ] Initializing speech engine...
[2026-06-27 04:45:05,654.654 INFO    ] 2026-06-27 04:45:05
[2026-06-27 04:45:05,876.876 INFO    ] 2026-06-27 04:45:05
[2026-06-27 04:45:05,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:45:06,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:45:06,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:45:06,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:45:06,268.268 INFO    ] time= 27/06/2026 04:45:06
[2026-06-27 04:45:06,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:45:06,351.351 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:45:06,452.452 INFO    ] No existing commands found in stream
[2026-06-27 04:45:11,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:45:11,466.466 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-27 04:45:14,955.955 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:45:14,956.956 INFO    ] Checking for system updates...
[2026-06-27 04:45:14,978.978 INFO    ] 200
[2026-06-27 04:45:14,979.979 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:45:15,013.013 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:45:15,014.014 INFO    ] No update needed
[2026-06-27 04:45:15,016.016 INFO    ] Checking for camera pi updates...
[2026-06-27 04:45:15,036.036 INFO    ] 200
[2026-06-27 04:45:15,037.037 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:45:15,061.061 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:45:15,099.099 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:45:15,100.100 INFO    ] No camera update needed
[2026-06-27 04:45:15,102.102 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:45:15,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:45:15,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:45:15,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:45:17,148.148 INFO    ] ================================================
[2026-06-27 04:45:17,164.164 INFO    ] Launching Daemon at Sat Jun 27 04:45:17 IST 2026
[2026-06-27 04:45:17,175.175 INFO    ] ================================================
[2026-06-27 04:45:17,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:45:17
[2026-06-27 04:45:17,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:45:18,017.017 INFO    ] Initializing speech engine...
[2026-06-27 04:45:18,022.022 INFO    ] 2026-06-27 04:45:18
[2026-06-27 04:45:18,230.230 INFO    ] 2026-06-27 04:45:18
[2026-06-27 04:45:18,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:45:18,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:45:18,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:45:18,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:45:18,670.670 INFO    ] time= 27/06/2026 04:45:18
[2026-06-27 04:45:18,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:45:18,678.678 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:45:18,745.745 INFO    ] No existing commands found in stream
[2026-06-27 04:45:23,760.760 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:45:23,763.763 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-27 04:45:26,661.661 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:45:26,662.662 INFO    ] Checking for system updates...
[2026-06-27 04:45:26,686.686 INFO    ] 200
[2026-06-27 04:45:26,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:45:26,720.720 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:45:26,721.721 INFO    ] No update needed
[2026-06-27 04:45:26,723.723 INFO    ] Checking for camera pi updates...
[2026-06-27 04:45:26,743.743 INFO    ] 200
[2026-06-27 04:45:26,744.744 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:45:26,768.768 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:45:26,809.809 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:45:26,811.811 INFO    ] No camera update needed
[2026-06-27 04:45:26,812.812 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:45:26,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:45:26,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:45:26,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:45:28,865.865 INFO    ] ================================================
[2026-06-27 04:45:28,881.881 INFO    ] Launching Daemon at Sat Jun 27 04:45:28 IST 2026
[2026-06-27 04:45:28,892.892 INFO    ] ================================================
[2026-06-27 04:45:29,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:45:29
[2026-06-27 04:45:29,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:45:29,661.661 INFO    ] Initializing speech engine...
[2026-06-27 04:45:29,669.669 INFO    ] 2026-06-27 04:45:29
[2026-06-27 04:45:29,882.882 INFO    ] 2026-06-27 04:45:29
[2026-06-27 04:45:29,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:45:30,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:45:30,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:45:30,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:45:30,329.329 INFO    ] time= 27/06/2026 04:45:30
[2026-06-27 04:45:30,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:45:30,336.336 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:45:30,404.404 INFO    ] No existing commands found in stream
[2026-06-27 04:45:35,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:45:35,420.420 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-27 04:45:36,290.290 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:45:36,292.292 INFO    ] Checking for system updates...
[2026-06-27 04:45:36,313.313 INFO    ] 200
[2026-06-27 04:45:36,315.315 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:45:36,347.347 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:45:36,348.348 INFO    ] No update needed
[2026-06-27 04:45:36,349.349 INFO    ] Checking for camera pi updates...
[2026-06-27 04:45:36,369.369 INFO    ] 200
[2026-06-27 04:45:36,370.370 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:45:36,394.394 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:45:36,439.439 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:45:36,440.440 INFO    ] No camera update needed
[2026-06-27 04:45:36,442.442 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:45:36,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:45:36,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:45:36,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:45:38,487.487 INFO    ] ================================================
[2026-06-27 04:45:38,502.502 INFO    ] Launching Daemon at Sat Jun 27 04:45:38 IST 2026
[2026-06-27 04:45:38,513.513 INFO    ] ================================================
[2026-06-27 04:45:38,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:45:38
[2026-06-27 04:45:39,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:45:39,382.382 INFO    ] Initializing speech engine...
[2026-06-27 04:45:39,388.388 INFO    ] 2026-06-27 04:45:39
[2026-06-27 04:45:39,597.597 INFO    ] 2026-06-27 04:45:39
[2026-06-27 04:45:39,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:45:39,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:45:39,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:45:39,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:45:40,018.018 INFO    ] time= 27/06/2026 04:45:39
[2026-06-27 04:45:40,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:45:40,045.045 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:45:40,113.113 INFO    ] No existing commands found in stream
[2026-06-27 04:45:45,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:45:45,136.136 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-27 04:45:49,574.574 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 04:45:49,576.576 INFO    ] Checking for system updates...
[2026-06-27 04:45:49,600.600 INFO    ] 200
[2026-06-27 04:45:49,601.601 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:45:49,637.637 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:45:49,639.639 INFO    ] No update needed
[2026-06-27 04:45:49,640.640 INFO    ] Checking for camera pi updates...
[2026-06-27 04:45:49,663.663 INFO    ] 200
[2026-06-27 04:45:49,664.664 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:45:49,690.690 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:45:49,731.731 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:45:49,732.732 INFO    ] No camera update needed
[2026-06-27 04:45:49,734.734 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:45:49,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:45:49,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:45:49,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:45:51,785.785 INFO    ] ================================================
[2026-06-27 04:45:51,801.801 INFO    ] Launching Daemon at Sat Jun 27 04:45:51 IST 2026
[2026-06-27 04:45:51,812.812 INFO    ] ================================================
[2026-06-27 04:45:52,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:45:52
[2026-06-27 04:45:52,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:45:52,626.626 INFO    ] Initializing speech engine...
[2026-06-27 04:45:52,634.634 INFO    ] 2026-06-27 04:45:52
[2026-06-27 04:45:52,843.843 INFO    ] 2026-06-27 04:45:52
[2026-06-27 04:45:52,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:45:53,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:45:53,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:45:53,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:45:53,261.261 INFO    ] time= 27/06/2026 04:45:53
[2026-06-27 04:45:53,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:45:53,290.290 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:45:53,356.356 INFO    ] No existing commands found in stream
[2026-06-27 04:45:58,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:45:58,391.391 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-27 04:45:59,832.832 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 04:45:59,834.834 INFO    ] Checking for system updates...
[2026-06-27 04:45:59,855.855 INFO    ] 200
[2026-06-27 04:45:59,857.857 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:45:59,890.890 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:45:59,891.891 INFO    ] No update needed
[2026-06-27 04:45:59,893.893 INFO    ] Checking for camera pi updates...
[2026-06-27 04:45:59,916.916 INFO    ] 200
[2026-06-27 04:45:59,917.917 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:45:59,943.943 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:45:59,985.985 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:45:59,986.986 INFO    ] No camera update needed
[2026-06-27 04:45:59,988.988 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:45:59,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:45:59,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:45:59,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:46:02,029.029 INFO    ] ================================================
[2026-06-27 04:46:02,038.038 INFO    ] Launching Daemon at Sat Jun 27 04:46:02 IST 2026
[2026-06-27 04:46:02,044.044 INFO    ] ================================================
[2026-06-27 04:46:02,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:46:02
[2026-06-27 04:46:02,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:46:02,827.827 INFO    ] Initializing speech engine...
[2026-06-27 04:46:02,833.833 INFO    ] 2026-06-27 04:46:02
[2026-06-27 04:46:03,037.037 INFO    ] 2026-06-27 04:46:03
[2026-06-27 04:46:03,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:46:03,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:46:03,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:46:03,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:46:03,477.477 INFO    ] time= 27/06/2026 04:46:03
[2026-06-27 04:46:03,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:46:03,484.484 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:46:03,550.550 INFO    ] No existing commands found in stream
[2026-06-27 04:46:08,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:46:08,559.559 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-27 04:46:11,547.547 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 04:46:11,548.548 INFO    ] Checking for system updates...
[2026-06-27 04:46:11,570.570 INFO    ] 200
[2026-06-27 04:46:11,572.572 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:46:11,607.607 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:46:11,608.608 INFO    ] No update needed
[2026-06-27 04:46:11,610.610 INFO    ] Checking for camera pi updates...
[2026-06-27 04:46:11,630.630 INFO    ] 200
[2026-06-27 04:46:11,631.631 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:46:11,656.656 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:46:11,697.697 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:46:11,698.698 INFO    ] No camera update needed
[2026-06-27 04:46:11,699.699 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:46:11,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:46:11,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:46:11,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:46:13,746.746 INFO    ] ================================================
[2026-06-27 04:46:13,762.762 INFO    ] Launching Daemon at Sat Jun 27 04:46:13 IST 2026
[2026-06-27 04:46:13,773.773 INFO    ] ================================================
[2026-06-27 04:46:14,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:46:14
[2026-06-27 04:46:14,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:46:14,652.652 INFO    ] Initializing speech engine...
[2026-06-27 04:46:14,657.657 INFO    ] 2026-06-27 04:46:14
[2026-06-27 04:46:14,866.866 INFO    ] 2026-06-27 04:46:14
[2026-06-27 04:46:14,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:46:15,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:46:15,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:46:15,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:46:15,311.311 INFO    ] time= 27/06/2026 04:46:15
[2026-06-27 04:46:15,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:46:15,318.318 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:46:15,385.385 INFO    ] No existing commands found in stream
[2026-06-27 04:46:20,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:46:20,398.398 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-27 04:46:21,544.544 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 04:46:21,545.545 INFO    ] Checking for system updates...
[2026-06-27 04:46:21,594.594 INFO    ] 200
[2026-06-27 04:46:21,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:46:21,627.627 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:46:21,629.629 INFO    ] No update needed
[2026-06-27 04:46:21,630.630 INFO    ] Checking for camera pi updates...
[2026-06-27 04:46:21,650.650 INFO    ] 200
[2026-06-27 04:46:21,652.652 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:46:21,677.677 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:46:21,718.718 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:46:21,720.720 INFO    ] No camera update needed
[2026-06-27 04:46:21,721.721 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:46:21,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:46:21,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:46:21,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:46:23,768.768 INFO    ] ================================================
[2026-06-27 04:46:23,783.783 INFO    ] Launching Daemon at Sat Jun 27 04:46:23 IST 2026
[2026-06-27 04:46:23,794.794 INFO    ] ================================================
[2026-06-27 04:46:24,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:46:24
[2026-06-27 04:46:24,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:46:24,651.651 INFO    ] Initializing speech engine...
[2026-06-27 04:46:24,657.657 INFO    ] 2026-06-27 04:46:24
[2026-06-27 04:46:24,867.867 INFO    ] 2026-06-27 04:46:24
[2026-06-27 04:46:24,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:46:25,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:46:25,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:46:25,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:46:25,310.310 INFO    ] time= 27/06/2026 04:46:25
[2026-06-27 04:46:25,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:46:25,318.318 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:46:25,386.386 INFO    ] No existing commands found in stream
[2026-06-27 04:46:30,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:46:30,404.404 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-27 04:46:33,187.187 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 04:46:33,188.188 INFO    ] Checking for system updates...
[2026-06-27 04:46:33,210.210 INFO    ] 200
[2026-06-27 04:46:33,212.212 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:46:33,243.243 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:46:33,245.245 INFO    ] No update needed
[2026-06-27 04:46:33,246.246 INFO    ] Checking for camera pi updates...
[2026-06-27 04:46:33,269.269 INFO    ] 200
[2026-06-27 04:46:33,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:46:33,294.294 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:46:33,316.316 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:46:33,317.317 INFO    ] No camera update needed
[2026-06-27 04:46:33,318.318 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:46:33,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:46:33,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:46:33,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:46:35,364.364 INFO    ] ================================================
[2026-06-27 04:46:35,379.379 INFO    ] Launching Daemon at Sat Jun 27 04:46:35 IST 2026
[2026-06-27 04:46:35,390.390 INFO    ] ================================================
[2026-06-27 04:46:35,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:46:35
[2026-06-27 04:46:36,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:46:36,185.185 INFO    ] Initializing speech engine...
[2026-06-27 04:46:36,189.189 INFO    ] 2026-06-27 04:46:36
[2026-06-27 04:46:36,382.382 INFO    ] 2026-06-27 04:46:36
[2026-06-27 04:46:36,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:46:36,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:46:36,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:46:36,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:46:36,831.831 INFO    ] time= 27/06/2026 04:46:36
[2026-06-27 04:46:36,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:46:36,887.887 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:46:36,978.978 INFO    ] No existing commands found in stream
[2026-06-27 04:46:42,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:46:42,003.003 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-27 04:46:42,671.671 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:46:42,672.672 INFO    ] Checking for system updates...
[2026-06-27 04:46:42,695.695 INFO    ] 200
[2026-06-27 04:46:42,697.697 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:46:42,758.758 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:46:42,761.761 INFO    ] No update needed
[2026-06-27 04:46:42,763.763 INFO    ] Checking for camera pi updates...
[2026-06-27 04:46:42,802.802 INFO    ] 200
[2026-06-27 04:46:42,803.803 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:46:42,827.827 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:46:42,873.873 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:46:42,874.874 INFO    ] No camera update needed
[2026-06-27 04:46:42,876.876 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:46:42,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:46:42,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:46:42,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:46:44,925.925 INFO    ] ================================================
[2026-06-27 04:46:44,940.940 INFO    ] Launching Daemon at Sat Jun 27 04:46:44 IST 2026
[2026-06-27 04:46:44,951.951 INFO    ] ================================================
[2026-06-27 04:46:45,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:46:45
[2026-06-27 04:46:45,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:46:45,748.748 INFO    ] Initializing speech engine...
[2026-06-27 04:46:45,762.762 INFO    ] 2026-06-27 04:46:45
[2026-06-27 04:46:45,984.984 INFO    ] 2026-06-27 04:46:45
[2026-06-27 04:46:46,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:46:46,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:46:46,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:46:46,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:46:46,423.423 INFO    ] time= 27/06/2026 04:46:46
[2026-06-27 04:46:46,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:46:46,476.476 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:46:46,556.556 INFO    ] No existing commands found in stream
[2026-06-27 04:46:51,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:46:51,568.568 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-27 04:46:52,021.021 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 04:46:52,022.022 INFO    ] Checking for system updates...
[2026-06-27 04:46:52,043.043 INFO    ] 200
[2026-06-27 04:46:52,045.045 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:46:52,076.076 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:46:52,077.077 INFO    ] No update needed
[2026-06-27 04:46:52,078.078 INFO    ] Checking for camera pi updates...
[2026-06-27 04:46:52,100.100 INFO    ] 200
[2026-06-27 04:46:52,101.101 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:46:52,125.125 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:46:52,165.165 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:46:52,166.166 INFO    ] No camera update needed
[2026-06-27 04:46:52,168.168 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:46:52,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:46:52,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:46:52,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:46:54,215.215 INFO    ] ================================================
[2026-06-27 04:46:54,230.230 INFO    ] Launching Daemon at Sat Jun 27 04:46:54 IST 2026
[2026-06-27 04:46:54,241.241 INFO    ] ================================================
[2026-06-27 04:46:54,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:46:54
[2026-06-27 04:46:54,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:46:55,036.036 INFO    ] Initializing speech engine...
[2026-06-27 04:46:55,042.042 INFO    ] 2026-06-27 04:46:55
[2026-06-27 04:46:55,248.248 INFO    ] 2026-06-27 04:46:55
[2026-06-27 04:46:55,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:46:55,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:46:55,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:46:55,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:46:55,675.675 INFO    ] time= 27/06/2026 04:46:55
[2026-06-27 04:46:55,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:46:55,706.706 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:46:55,775.775 INFO    ] No existing commands found in stream
[2026-06-27 04:47:00,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:47:00,788.788 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-27 04:47:03,741.741 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:47:03,743.743 INFO    ] Checking for system updates...
[2026-06-27 04:47:03,764.764 INFO    ] 200
[2026-06-27 04:47:03,765.765 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:47:03,798.798 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:47:03,800.800 INFO    ] No update needed
[2026-06-27 04:47:03,801.801 INFO    ] Checking for camera pi updates...
[2026-06-27 04:47:03,822.822 INFO    ] 200
[2026-06-27 04:47:03,824.824 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:47:03,850.850 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:47:03,989.989 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:47:03,990.990 INFO    ] No camera update needed
[2026-06-27 04:47:03,991.991 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:47:03,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:47:03,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:47:03,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:47:06,039.039 INFO    ] ================================================
[2026-06-27 04:47:06,055.055 INFO    ] Launching Daemon at Sat Jun 27 04:47:06 IST 2026
[2026-06-27 04:47:06,065.065 INFO    ] ================================================
[2026-06-27 04:47:06,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:47:06
[2026-06-27 04:47:06,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:47:06,914.914 INFO    ] Initializing speech engine...
[2026-06-27 04:47:06,919.919 INFO    ] 2026-06-27 04:47:06
[2026-06-27 04:47:07,133.133 INFO    ] 2026-06-27 04:47:07
[2026-06-27 04:47:07,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:47:07,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:47:07,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:47:07,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:47:07,557.557 INFO    ] time= 27/06/2026 04:47:07
[2026-06-27 04:47:07,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:47:07,586.586 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:47:07,652.652 INFO    ] No existing commands found in stream
[2026-06-27 04:47:12,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:47:12,667.667 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-27 04:47:16,872.872 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:47:16,874.874 INFO    ] Checking for system updates...
[2026-06-27 04:47:16,896.896 INFO    ] 200
[2026-06-27 04:47:16,897.897 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:47:16,928.928 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:47:16,930.930 INFO    ] No update needed
[2026-06-27 04:47:16,931.931 INFO    ] Checking for camera pi updates...
[2026-06-27 04:47:16,951.951 INFO    ] 200
[2026-06-27 04:47:16,953.953 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:47:16,976.976 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:47:17,022.022 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:47:17,024.024 INFO    ] No camera update needed
[2026-06-27 04:47:17,025.025 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:47:17,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:47:17,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:47:17,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:47:19,065.065 INFO    ] ================================================
[2026-06-27 04:47:19,074.074 INFO    ] Launching Daemon at Sat Jun 27 04:47:19 IST 2026
[2026-06-27 04:47:19,080.080 INFO    ] ================================================
[2026-06-27 04:47:19,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:47:19
[2026-06-27 04:47:19,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:47:19,848.848 INFO    ] Initializing speech engine...
[2026-06-27 04:47:19,852.852 INFO    ] 2026-06-27 04:47:19
[2026-06-27 04:47:20,045.045 INFO    ] 2026-06-27 04:47:20
[2026-06-27 04:47:20,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:47:20,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:47:20,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:47:20,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:47:20,538.538 INFO    ] time= 27/06/2026 04:47:20
[2026-06-27 04:47:20,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:47:20,575.575 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:47:20,647.647 INFO    ] No existing commands found in stream
[2026-06-27 04:47:25,658.658 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:47:25,661.661 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-27 04:47:28,772.772 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:47:28,774.774 INFO    ] Checking for system updates...
[2026-06-27 04:47:28,794.794 INFO    ] 200
[2026-06-27 04:47:28,796.796 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:47:28,829.829 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:47:28,830.830 INFO    ] No update needed
[2026-06-27 04:47:28,832.832 INFO    ] Checking for camera pi updates...
[2026-06-27 04:47:28,852.852 INFO    ] 200
[2026-06-27 04:47:28,854.854 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:47:28,879.879 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:47:28,920.920 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:47:28,921.921 INFO    ] No camera update needed
[2026-06-27 04:47:28,923.923 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:47:28,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:47:28,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:47:28,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:47:30,969.969 INFO    ] ================================================
[2026-06-27 04:47:30,985.985 INFO    ] Launching Daemon at Sat Jun 27 04:47:30 IST 2026
[2026-06-27 04:47:31,002.002 INFO    ] ================================================
[2026-06-27 04:47:31,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:47:31
[2026-06-27 04:47:31,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:47:31,935.935 INFO    ] Initializing speech engine...
[2026-06-27 04:47:31,941.941 INFO    ] 2026-06-27 04:47:31
[2026-06-27 04:47:32,178.178 INFO    ] 2026-06-27 04:47:32
[2026-06-27 04:47:32,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:47:32,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:47:32,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:47:32,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:47:32,599.599 INFO    ] time= 27/06/2026 04:47:32
[2026-06-27 04:47:32,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:47:32,644.644 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:47:32,710.710 INFO    ] No existing commands found in stream
[2026-06-27 04:47:37,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:47:37,724.724 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-27 04:47:39,386.386 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 04:47:39,388.388 INFO    ] Checking for system updates...
[2026-06-27 04:47:39,409.409 INFO    ] 200
[2026-06-27 04:47:39,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:47:39,441.441 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:47:39,442.442 INFO    ] No update needed
[2026-06-27 04:47:39,444.444 INFO    ] Checking for camera pi updates...
[2026-06-27 04:47:39,465.465 INFO    ] 200
[2026-06-27 04:47:39,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:47:39,490.490 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:47:39,532.532 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:47:39,533.533 INFO    ] No camera update needed
[2026-06-27 04:47:39,535.535 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:47:39,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:47:39,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:47:39,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:47:41,581.581 INFO    ] ================================================
[2026-06-27 04:47:41,596.596 INFO    ] Launching Daemon at Sat Jun 27 04:47:41 IST 2026
[2026-06-27 04:47:41,607.607 INFO    ] ================================================
[2026-06-27 04:47:41,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:47:41
[2026-06-27 04:47:42,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:47:42,406.406 INFO    ] Initializing speech engine...
[2026-06-27 04:47:42,410.410 INFO    ] 2026-06-27 04:47:42
[2026-06-27 04:47:42,614.614 INFO    ] 2026-06-27 04:47:42
[2026-06-27 04:47:42,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:47:42,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:47:42,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:47:42,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:47:43,032.032 INFO    ] time= 27/06/2026 04:47:42
[2026-06-27 04:47:43,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:47:43,061.061 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:47:43,128.128 INFO    ] No existing commands found in stream
[2026-06-27 04:47:48,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:47:48,145.145 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-27 04:47:49,442.442 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 04:47:49,443.443 INFO    ] Checking for system updates...
[2026-06-27 04:47:49,464.464 INFO    ] 200
[2026-06-27 04:47:49,465.465 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:47:49,495.495 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:47:49,497.497 INFO    ] No update needed
[2026-06-27 04:47:49,498.498 INFO    ] Checking for camera pi updates...
[2026-06-27 04:47:49,518.518 INFO    ] 200
[2026-06-27 04:47:49,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:47:49,544.544 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:47:49,584.584 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:47:49,586.586 INFO    ] No camera update needed
[2026-06-27 04:47:49,587.587 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:47:49,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:47:49,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:47:49,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:47:51,634.634 INFO    ] ================================================
[2026-06-27 04:47:51,649.649 INFO    ] Launching Daemon at Sat Jun 27 04:47:51 IST 2026
[2026-06-27 04:47:51,659.659 INFO    ] ================================================
[2026-06-27 04:47:52,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:47:52
[2026-06-27 04:47:52,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:47:52,518.518 INFO    ] Initializing speech engine...
[2026-06-27 04:47:52,522.522 INFO    ] 2026-06-27 04:47:52
[2026-06-27 04:47:52,732.732 INFO    ] 2026-06-27 04:47:52
[2026-06-27 04:47:52,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:47:52,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:47:52,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:47:53,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:47:53,157.157 INFO    ] time= 27/06/2026 04:47:53
[2026-06-27 04:47:53,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:47:53,186.186 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:47:53,253.253 INFO    ] No existing commands found in stream
[2026-06-27 04:47:58,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:47:58,270.270 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-27 04:48:00,740.740 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 04:48:00,741.741 INFO    ] Checking for system updates...
[2026-06-27 04:48:00,762.762 INFO    ] 200
[2026-06-27 04:48:00,764.764 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:48:00,815.815 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:48:00,818.818 INFO    ] No update needed
[2026-06-27 04:48:00,821.821 INFO    ] Checking for camera pi updates...
[2026-06-27 04:48:00,857.857 INFO    ] 200
[2026-06-27 04:48:00,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:48:00,890.890 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:48:00,938.938 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:48:00,939.939 INFO    ] No camera update needed
[2026-06-27 04:48:00,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:48:00,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:48:00,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:48:00,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:48:02,979.979 INFO    ] ================================================
[2026-06-27 04:48:02,988.988 INFO    ] Launching Daemon at Sat Jun 27 04:48:02 IST 2026
[2026-06-27 04:48:02,994.994 INFO    ] ================================================
[2026-06-27 04:48:03,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:48:03
[2026-06-27 04:48:03,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:48:03,858.858 INFO    ] Initializing speech engine...
[2026-06-27 04:48:03,863.863 INFO    ] 2026-06-27 04:48:03
[2026-06-27 04:48:04,073.073 INFO    ] 2026-06-27 04:48:04
[2026-06-27 04:48:04,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:48:04,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:48:04,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:48:04,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:48:04,478.478 INFO    ] time= 27/06/2026 04:48:04
[2026-06-27 04:48:04,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:48:04,544.544 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:48:04,619.619 INFO    ] No existing commands found in stream
[2026-06-27 04:48:09,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:48:09,632.632 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-27 04:48:11,843.843 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 04:48:11,845.845 INFO    ] Checking for system updates...
[2026-06-27 04:48:11,866.866 INFO    ] 200
[2026-06-27 04:48:11,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:48:11,901.901 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:48:11,902.902 INFO    ] No update needed
[2026-06-27 04:48:11,903.903 INFO    ] Checking for camera pi updates...
[2026-06-27 04:48:11,923.923 INFO    ] 200
[2026-06-27 04:48:11,925.925 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:48:11,951.951 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:48:11,992.992 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:48:11,994.994 INFO    ] No camera update needed
[2026-06-27 04:48:11,995.995 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:48:11,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:48:11,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:48:12,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:48:14,040.040 INFO    ] ================================================
[2026-06-27 04:48:14,056.056 INFO    ] Launching Daemon at Sat Jun 27 04:48:14 IST 2026
[2026-06-27 04:48:14,066.066 INFO    ] ================================================
[2026-06-27 04:48:14,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:48:14
[2026-06-27 04:48:14,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:48:14,862.862 INFO    ] Initializing speech engine...
[2026-06-27 04:48:14,874.874 INFO    ] 2026-06-27 04:48:14
[2026-06-27 04:48:15,080.080 INFO    ] 2026-06-27 04:48:15
[2026-06-27 04:48:15,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:48:15,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:48:15,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:48:15,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:48:15,589.589 INFO    ] time= 27/06/2026 04:48:15
[2026-06-27 04:48:15,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:48:15,616.616 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:48:15,713.713 INFO    ] No existing commands found in stream
[2026-06-27 04:48:20,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:48:20,727.727 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-27 04:48:24,546.546 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:48:24,547.547 INFO    ] Checking for system updates...
[2026-06-27 04:48:24,569.569 INFO    ] 200
[2026-06-27 04:48:24,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:48:24,603.603 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:48:24,605.605 INFO    ] No update needed
[2026-06-27 04:48:24,606.606 INFO    ] Checking for camera pi updates...
[2026-06-27 04:48:24,628.628 INFO    ] 200
[2026-06-27 04:48:24,630.630 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:48:24,653.653 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:48:24,705.705 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:48:24,706.706 INFO    ] No camera update needed
[2026-06-27 04:48:24,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:48:24,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:48:24,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:48:24,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:48:26,755.755 INFO    ] ================================================
[2026-06-27 04:48:26,770.770 INFO    ] Launching Daemon at Sat Jun 27 04:48:26 IST 2026
[2026-06-27 04:48:26,781.781 INFO    ] ================================================
[2026-06-27 04:48:27,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:48:27
[2026-06-27 04:48:27,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:48:27,579.579 INFO    ] Initializing speech engine...
[2026-06-27 04:48:27,588.588 INFO    ] 2026-06-27 04:48:27
[2026-06-27 04:48:27,791.791 INFO    ] 2026-06-27 04:48:27
[2026-06-27 04:48:27,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:48:27,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:48:28,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:48:28,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:48:28,208.208 INFO    ] time= 27/06/2026 04:48:28
[2026-06-27 04:48:28,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:48:28,241.241 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:48:28,306.306 INFO    ] No existing commands found in stream
[2026-06-27 04:48:33,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:48:33,319.319 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-27 04:48:34,756.756 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 04:48:34,757.757 INFO    ] Checking for system updates...
[2026-06-27 04:48:34,778.778 INFO    ] 200
[2026-06-27 04:48:34,780.780 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:48:34,844.844 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:48:34,845.845 INFO    ] No update needed
[2026-06-27 04:48:34,847.847 INFO    ] Checking for camera pi updates...
[2026-06-27 04:48:34,869.869 INFO    ] 200
[2026-06-27 04:48:34,871.871 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:48:34,896.896 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:48:34,937.937 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:48:34,938.938 INFO    ] No camera update needed
[2026-06-27 04:48:34,939.939 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:48:34,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:48:34,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:48:34,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:48:36,987.987 INFO    ] ================================================
[2026-06-27 04:48:37,003.003 INFO    ] Launching Daemon at Sat Jun 27 04:48:36 IST 2026
[2026-06-27 04:48:37,014.014 INFO    ] ================================================
[2026-06-27 04:48:37,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:48:37
[2026-06-27 04:48:37,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:48:37,862.862 INFO    ] Initializing speech engine...
[2026-06-27 04:48:37,867.867 INFO    ] 2026-06-27 04:48:37
[2026-06-27 04:48:38,074.074 INFO    ] 2026-06-27 04:48:38
[2026-06-27 04:48:38,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:48:38,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:48:38,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:48:38,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:48:38,496.496 INFO    ] time= 27/06/2026 04:48:38
[2026-06-27 04:48:38,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:48:38,526.526 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:48:38,618.618 INFO    ] No existing commands found in stream
[2026-06-27 04:48:43,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:48:43,636.636 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-27 04:48:47,740.740 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:48:47,742.742 INFO    ] Checking for system updates...
[2026-06-27 04:48:47,764.764 INFO    ] 200
[2026-06-27 04:48:47,766.766 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:48:47,797.797 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:48:47,799.799 INFO    ] No update needed
[2026-06-27 04:48:47,800.800 INFO    ] Checking for camera pi updates...
[2026-06-27 04:48:47,821.821 INFO    ] 200
[2026-06-27 04:48:47,823.823 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:48:47,849.849 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:48:47,887.887 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:48:47,888.888 INFO    ] No camera update needed
[2026-06-27 04:48:47,890.890 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:48:47,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:48:47,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:48:47,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:48:49,937.937 INFO    ] ================================================
[2026-06-27 04:48:49,952.952 INFO    ] Launching Daemon at Sat Jun 27 04:48:49 IST 2026
[2026-06-27 04:48:49,964.964 INFO    ] ================================================
[2026-06-27 04:48:50,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:48:50
[2026-06-27 04:48:50,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:48:50,819.819 INFO    ] Initializing speech engine...
[2026-06-27 04:48:50,828.828 INFO    ] 2026-06-27 04:48:50
[2026-06-27 04:48:51,034.034 INFO    ] 2026-06-27 04:48:51
[2026-06-27 04:48:51,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:48:51,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:48:51,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:48:51,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:48:51,448.448 INFO    ] time= 27/06/2026 04:48:51
[2026-06-27 04:48:51,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:48:51,483.483 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:48:51,584.584 INFO    ] No existing commands found in stream
[2026-06-27 04:48:56,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:48:56,596.596 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-27 04:49:00,258.258 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:49:00,259.259 INFO    ] Checking for system updates...
[2026-06-27 04:49:00,282.282 INFO    ] 200
[2026-06-27 04:49:00,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:49:00,315.315 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:49:00,317.317 INFO    ] No update needed
[2026-06-27 04:49:00,318.318 INFO    ] Checking for camera pi updates...
[2026-06-27 04:49:00,338.338 INFO    ] 200
[2026-06-27 04:49:00,339.339 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:49:00,364.364 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:49:00,411.411 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:49:00,412.412 INFO    ] No camera update needed
[2026-06-27 04:49:00,413.413 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:49:00,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:49:00,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:49:00,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:49:02,458.458 INFO    ] ================================================
[2026-06-27 04:49:02,470.470 INFO    ] Launching Daemon at Sat Jun 27 04:49:02 IST 2026
[2026-06-27 04:49:02,479.479 INFO    ] ================================================
[2026-06-27 04:49:02,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:49:02
[2026-06-27 04:49:03,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:49:03,326.326 INFO    ] Initializing speech engine...
[2026-06-27 04:49:03,330.330 INFO    ] 2026-06-27 04:49:03
[2026-06-27 04:49:03,532.532 INFO    ] 2026-06-27 04:49:03
[2026-06-27 04:49:03,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:49:03,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:49:03,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:49:03,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:49:03,948.948 INFO    ] time= 27/06/2026 04:49:03
[2026-06-27 04:49:03,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:49:03,981.981 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:49:04,048.048 INFO    ] No existing commands found in stream
[2026-06-27 04:49:09,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:49:09,065.065 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-27 04:49:09,983.983 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 04:49:09,985.985 INFO    ] Checking for system updates...
[2026-06-27 04:49:10,006.006 INFO    ] 200
[2026-06-27 04:49:10,008.008 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:49:10,039.039 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:49:10,040.040 INFO    ] No update needed
[2026-06-27 04:49:10,042.042 INFO    ] Checking for camera pi updates...
[2026-06-27 04:49:10,062.062 INFO    ] 200
[2026-06-27 04:49:10,064.064 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:49:10,089.089 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:49:10,235.235 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:49:10,236.236 INFO    ] No camera update needed
[2026-06-27 04:49:10,237.237 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:49:10,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:49:10,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:49:10,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:49:12,285.285 INFO    ] ================================================
[2026-06-27 04:49:12,300.300 INFO    ] Launching Daemon at Sat Jun 27 04:49:12 IST 2026
[2026-06-27 04:49:12,312.312 INFO    ] ================================================
[2026-06-27 04:49:12,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:49:12
[2026-06-27 04:49:12,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:49:13,127.127 INFO    ] Initializing speech engine...
[2026-06-27 04:49:13,135.135 INFO    ] 2026-06-27 04:49:13
[2026-06-27 04:49:13,347.347 INFO    ] 2026-06-27 04:49:13
[2026-06-27 04:49:13,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:49:13,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:49:13,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:49:13,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:49:13,769.769 INFO    ] time= 27/06/2026 04:49:13
[2026-06-27 04:49:13,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:49:13,797.797 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:49:13,865.865 INFO    ] No existing commands found in stream
[2026-06-27 04:49:18,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:49:18,877.877 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-27 04:49:23,109.109 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:49:23,111.111 INFO    ] Checking for system updates...
[2026-06-27 04:49:23,132.132 INFO    ] 200
[2026-06-27 04:49:23,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:49:23,165.165 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:49:23,166.166 INFO    ] No update needed
[2026-06-27 04:49:23,167.167 INFO    ] Checking for camera pi updates...
[2026-06-27 04:49:23,187.187 INFO    ] 200
[2026-06-27 04:49:23,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:49:23,213.213 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:49:23,250.250 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:49:23,252.252 INFO    ] No camera update needed
[2026-06-27 04:49:23,253.253 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:49:23,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:49:23,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:49:23,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:49:25,301.301 INFO    ] ================================================
[2026-06-27 04:49:25,316.316 INFO    ] Launching Daemon at Sat Jun 27 04:49:25 IST 2026
[2026-06-27 04:49:25,327.327 INFO    ] ================================================
[2026-06-27 04:49:25,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:49:25
[2026-06-27 04:49:25,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:49:26,124.124 INFO    ] Initializing speech engine...
[2026-06-27 04:49:26,130.130 INFO    ] 2026-06-27 04:49:26
[2026-06-27 04:49:26,329.329 INFO    ] 2026-06-27 04:49:26
[2026-06-27 04:49:26,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:49:26,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:49:26,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:49:26,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:49:26,769.769 INFO    ] time= 27/06/2026 04:49:26
[2026-06-27 04:49:26,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:49:26,776.776 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:49:26,842.842 INFO    ] No existing commands found in stream
[2026-06-27 04:49:31,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:49:31,856.856 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-27 04:49:33,120.120 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:49:33,122.122 INFO    ] Checking for system updates...
[2026-06-27 04:49:33,143.143 INFO    ] 200
[2026-06-27 04:49:33,144.144 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:49:33,175.175 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:49:33,176.176 INFO    ] No update needed
[2026-06-27 04:49:33,178.178 INFO    ] Checking for camera pi updates...
[2026-06-27 04:49:33,201.201 INFO    ] 200
[2026-06-27 04:49:33,203.203 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:49:33,226.226 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:49:33,266.266 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:49:33,268.268 INFO    ] No camera update needed
[2026-06-27 04:49:33,269.269 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:49:33,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:49:33,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:49:33,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:49:35,321.321 INFO    ] ================================================
[2026-06-27 04:49:35,337.337 INFO    ] Launching Daemon at Sat Jun 27 04:49:35 IST 2026
[2026-06-27 04:49:35,347.347 INFO    ] ================================================
[2026-06-27 04:49:35,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:49:35
[2026-06-27 04:49:35,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:49:36,111.111 INFO    ] Initializing speech engine...
[2026-06-27 04:49:36,116.116 INFO    ] 2026-06-27 04:49:36
[2026-06-27 04:49:36,333.333 INFO    ] 2026-06-27 04:49:36
[2026-06-27 04:49:36,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:49:36,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:49:36,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:49:36,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:49:36,758.758 INFO    ] time= 27/06/2026 04:49:36
[2026-06-27 04:49:36,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:49:36,787.787 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:49:36,855.855 INFO    ] No existing commands found in stream
[2026-06-27 04:49:41,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:49:41,867.867 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-27 04:49:43,025.025 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:49:43,026.026 INFO    ] Checking for system updates...
[2026-06-27 04:49:43,048.048 INFO    ] 200
[2026-06-27 04:49:43,049.049 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:49:43,081.081 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:49:43,082.082 INFO    ] No update needed
[2026-06-27 04:49:43,084.084 INFO    ] Checking for camera pi updates...
[2026-06-27 04:49:43,105.105 INFO    ] 200
[2026-06-27 04:49:43,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:49:43,131.131 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:49:43,171.171 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:49:43,172.172 INFO    ] No camera update needed
[2026-06-27 04:49:43,174.174 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:49:43,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:49:43,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:49:43,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:49:45,219.219 INFO    ] ================================================
[2026-06-27 04:49:45,235.235 INFO    ] Launching Daemon at Sat Jun 27 04:49:45 IST 2026
[2026-06-27 04:49:45,245.245 INFO    ] ================================================
[2026-06-27 04:49:45,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:49:45
[2026-06-27 04:49:45,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:49:46,029.029 INFO    ] Initializing speech engine...
[2026-06-27 04:49:46,040.040 INFO    ] 2026-06-27 04:49:46
[2026-06-27 04:49:46,257.257 INFO    ] 2026-06-27 04:49:46
[2026-06-27 04:49:46,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:49:46,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:49:46,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:49:46,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:49:46,721.721 INFO    ] time= 27/06/2026 04:49:46
[2026-06-27 04:49:46,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:49:46,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:49:46,817.817 INFO    ] No existing commands found in stream
[2026-06-27 04:49:51,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:49:51,826.826 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-27 04:49:52,712.712 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 04:49:52,715.715 INFO    ] Checking for system updates...
[2026-06-27 04:49:52,752.752 INFO    ] 200
[2026-06-27 04:49:52,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:49:52,808.808 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:49:52,811.811 INFO    ] No update needed
[2026-06-27 04:49:52,813.813 INFO    ] Checking for camera pi updates...
[2026-06-27 04:49:52,846.846 INFO    ] 200
[2026-06-27 04:49:52,847.847 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:49:52,871.871 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:49:52,907.907 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:49:52,909.909 INFO    ] No camera update needed
[2026-06-27 04:49:52,910.910 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:49:52,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:49:52,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:49:52,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:49:54,957.957 INFO    ] ================================================
[2026-06-27 04:49:54,973.973 INFO    ] Launching Daemon at Sat Jun 27 04:49:54 IST 2026
[2026-06-27 04:49:54,984.984 INFO    ] ================================================
[2026-06-27 04:49:55,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:49:55
[2026-06-27 04:49:55,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:49:55,855.855 INFO    ] Initializing speech engine...
[2026-06-27 04:49:55,863.863 INFO    ] 2026-06-27 04:49:55
[2026-06-27 04:49:56,081.081 INFO    ] 2026-06-27 04:49:56
[2026-06-27 04:49:56,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:49:56,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:49:56,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:49:56,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:49:56,501.501 INFO    ] time= 27/06/2026 04:49:56
[2026-06-27 04:49:56,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:49:56,529.529 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:49:56,596.596 INFO    ] No existing commands found in stream
[2026-06-27 04:50:01,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:50:01,608.608 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-27 04:50:07,428.428 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:50:07,429.429 INFO    ] Checking for system updates...
[2026-06-27 04:50:07,450.450 INFO    ] 200
[2026-06-27 04:50:07,452.452 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:50:07,483.483 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:50:07,484.484 INFO    ] No update needed
[2026-06-27 04:50:07,486.486 INFO    ] Checking for camera pi updates...
[2026-06-27 04:50:07,505.505 INFO    ] 200
[2026-06-27 04:50:07,507.507 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:50:07,530.530 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:50:07,570.570 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:50:07,572.572 INFO    ] No camera update needed
[2026-06-27 04:50:07,573.573 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:50:07,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:50:07,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:50:07,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:50:09,618.618 INFO    ] ================================================
[2026-06-27 04:50:09,633.633 INFO    ] Launching Daemon at Sat Jun 27 04:50:09 IST 2026
[2026-06-27 04:50:09,643.643 INFO    ] ================================================
[2026-06-27 04:50:09,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:50:09
[2026-06-27 04:50:10,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:50:10,429.429 INFO    ] Initializing speech engine...
[2026-06-27 04:50:10,435.435 INFO    ] 2026-06-27 04:50:10
[2026-06-27 04:50:10,638.638 INFO    ] 2026-06-27 04:50:10
[2026-06-27 04:50:10,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:50:10,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:50:10,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:50:11,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:50:11,079.079 INFO    ] time= 27/06/2026 04:50:11
[2026-06-27 04:50:11,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:50:11,086.086 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:50:11,154.154 INFO    ] No existing commands found in stream
[2026-06-27 04:50:16,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:50:16,165.165 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-27 04:50:17,988.988 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:50:17,989.989 INFO    ] Checking for system updates...
[2026-06-27 04:50:18,011.011 INFO    ] 200
[2026-06-27 04:50:18,012.012 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:50:18,043.043 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:50:18,044.044 INFO    ] No update needed
[2026-06-27 04:50:18,046.046 INFO    ] Checking for camera pi updates...
[2026-06-27 04:50:18,067.067 INFO    ] 200
[2026-06-27 04:50:18,068.068 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:50:18,091.091 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:50:18,130.130 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:50:18,131.131 INFO    ] No camera update needed
[2026-06-27 04:50:18,132.132 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:50:18,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:50:18,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:50:18,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:50:20,178.178 INFO    ] ================================================
[2026-06-27 04:50:20,198.198 INFO    ] Launching Daemon at Sat Jun 27 04:50:20 IST 2026
[2026-06-27 04:50:20,209.209 INFO    ] ================================================
[2026-06-27 04:50:20,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:50:20
[2026-06-27 04:50:20,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:50:21,003.003 INFO    ] Initializing speech engine...
[2026-06-27 04:50:21,011.011 INFO    ] 2026-06-27 04:50:21
[2026-06-27 04:50:21,221.221 INFO    ] 2026-06-27 04:50:21
[2026-06-27 04:50:21,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:50:21,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:50:21,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:50:21,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:50:21,633.633 INFO    ] time= 27/06/2026 04:50:21
[2026-06-27 04:50:21,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:50:21,688.688 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:50:21,804.804 INFO    ] No existing commands found in stream
[2026-06-27 04:50:26,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:50:26,828.828 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-27 04:50:27,968.968 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 04:50:27,969.969 INFO    ] Checking for system updates...
[2026-06-27 04:50:27,990.990 INFO    ] 200
[2026-06-27 04:50:27,992.992 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:50:28,022.022 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:50:28,024.024 INFO    ] No update needed
[2026-06-27 04:50:28,025.025 INFO    ] Checking for camera pi updates...
[2026-06-27 04:50:28,046.046 INFO    ] 200
[2026-06-27 04:50:28,047.047 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:50:28,071.071 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:50:28,106.106 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:50:28,107.107 INFO    ] No camera update needed
[2026-06-27 04:50:28,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:50:28,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:50:28,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:50:28,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:50:30,155.155 INFO    ] ================================================
[2026-06-27 04:50:30,170.170 INFO    ] Launching Daemon at Sat Jun 27 04:50:30 IST 2026
[2026-06-27 04:50:30,181.181 INFO    ] ================================================
[2026-06-27 04:50:30,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:50:30
[2026-06-27 04:50:30,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:50:30,977.977 INFO    ] Initializing speech engine...
[2026-06-27 04:50:30,985.985 INFO    ] 2026-06-27 04:50:30
[2026-06-27 04:50:31,196.196 INFO    ] 2026-06-27 04:50:31
[2026-06-27 04:50:31,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:50:31,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:50:31,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:50:31,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:50:31,664.664 INFO    ] time= 27/06/2026 04:50:31
[2026-06-27 04:50:31,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:50:31,672.672 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:50:31,741.741 INFO    ] No existing commands found in stream
[2026-06-27 04:50:36,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:50:36,760.760 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-27 04:50:38,124.124 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 04:50:38,125.125 INFO    ] Checking for system updates...
[2026-06-27 04:50:38,148.148 INFO    ] 200
[2026-06-27 04:50:38,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:50:38,183.183 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:50:38,185.185 INFO    ] No update needed
[2026-06-27 04:50:38,186.186 INFO    ] Checking for camera pi updates...
[2026-06-27 04:50:38,207.207 INFO    ] 200
[2026-06-27 04:50:38,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:50:38,235.235 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:50:38,276.276 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:50:38,282.282 INFO    ] No camera update needed
[2026-06-27 04:50:38,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:50:38,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:50:38,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:50:38,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:50:40,334.334 INFO    ] ================================================
[2026-06-27 04:50:40,349.349 INFO    ] Launching Daemon at Sat Jun 27 04:50:40 IST 2026
[2026-06-27 04:50:40,359.359 INFO    ] ================================================
[2026-06-27 04:50:40,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:50:40
[2026-06-27 04:50:40,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:50:41,138.138 INFO    ] Initializing speech engine...
[2026-06-27 04:50:41,149.149 INFO    ] 2026-06-27 04:50:41
[2026-06-27 04:50:41,355.355 INFO    ] 2026-06-27 04:50:41
[2026-06-27 04:50:41,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:50:41,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:50:41,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:50:41,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:50:41,806.806 INFO    ] time= 27/06/2026 04:50:41
[2026-06-27 04:50:41,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:50:41,813.813 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:50:41,883.883 INFO    ] No existing commands found in stream
[2026-06-27 04:50:46,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:50:46,897.897 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-27 04:50:51,062.062 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:50:51,063.063 INFO    ] Checking for system updates...
[2026-06-27 04:50:51,085.085 INFO    ] 200
[2026-06-27 04:50:51,086.086 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:50:51,119.119 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:50:51,120.120 INFO    ] No update needed
[2026-06-27 04:50:51,121.121 INFO    ] Checking for camera pi updates...
[2026-06-27 04:50:51,141.141 INFO    ] 200
[2026-06-27 04:50:51,142.142 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:50:51,166.166 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:50:51,212.212 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:50:51,213.213 INFO    ] No camera update needed
[2026-06-27 04:50:51,215.215 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:50:51,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:50:51,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:50:51,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:50:53,260.260 INFO    ] ================================================
[2026-06-27 04:50:53,275.275 INFO    ] Launching Daemon at Sat Jun 27 04:50:53 IST 2026
[2026-06-27 04:50:53,286.286 INFO    ] ================================================
[2026-06-27 04:50:53,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:50:53
[2026-06-27 04:50:54,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:50:54,151.151 INFO    ] Initializing speech engine...
[2026-06-27 04:50:54,163.163 INFO    ] 2026-06-27 04:50:54
[2026-06-27 04:50:54,372.372 INFO    ] 2026-06-27 04:50:54
[2026-06-27 04:50:54,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:50:54,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:50:54,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:50:54,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:50:54,793.793 INFO    ] time= 27/06/2026 04:50:54
[2026-06-27 04:50:54,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:50:54,821.821 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:50:54,889.889 INFO    ] No existing commands found in stream
[2026-06-27 04:50:59,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:50:59,908.908 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-27 04:51:00,448.448 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:51:00,449.449 INFO    ] Checking for system updates...
[2026-06-27 04:51:00,471.471 INFO    ] 200
[2026-06-27 04:51:00,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:51:00,505.505 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:51:00,507.507 INFO    ] No update needed
[2026-06-27 04:51:00,509.509 INFO    ] Checking for camera pi updates...
[2026-06-27 04:51:00,529.529 INFO    ] 200
[2026-06-27 04:51:00,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:51:00,554.554 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:51:00,593.593 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:51:00,595.595 INFO    ] No camera update needed
[2026-06-27 04:51:00,597.597 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:51:00,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:51:00,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:51:00,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:51:02,634.634 INFO    ] ================================================
[2026-06-27 04:51:02,643.643 INFO    ] Launching Daemon at Sat Jun 27 04:51:02 IST 2026
[2026-06-27 04:51:02,649.649 INFO    ] ================================================
[2026-06-27 04:51:02,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:51:02
[2026-06-27 04:51:03,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:51:03,409.409 INFO    ] Initializing speech engine...
[2026-06-27 04:51:03,417.417 INFO    ] 2026-06-27 04:51:03
[2026-06-27 04:51:03,632.632 INFO    ] 2026-06-27 04:51:03
[2026-06-27 04:51:03,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:51:03,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:51:03,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:51:04,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:51:04,056.056 INFO    ] time= 27/06/2026 04:51:04
[2026-06-27 04:51:04,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:51:04,084.084 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:51:04,151.151 INFO    ] No existing commands found in stream
[2026-06-27 04:51:09,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:51:09,168.168 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-27 04:51:10,726.726 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:51:10,727.727 INFO    ] Checking for system updates...
[2026-06-27 04:51:10,748.748 INFO    ] 200
[2026-06-27 04:51:10,749.749 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:51:10,782.782 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:51:10,783.783 INFO    ] No update needed
[2026-06-27 04:51:10,784.784 INFO    ] Checking for camera pi updates...
[2026-06-27 04:51:10,804.804 INFO    ] 200
[2026-06-27 04:51:10,805.805 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:51:10,830.830 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:51:10,867.867 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:51:10,868.868 INFO    ] No camera update needed
[2026-06-27 04:51:10,869.869 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:51:10,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:51:10,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:51:10,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:51:12,914.914 INFO    ] ================================================
[2026-06-27 04:51:12,930.930 INFO    ] Launching Daemon at Sat Jun 27 04:51:12 IST 2026
[2026-06-27 04:51:12,940.940 INFO    ] ================================================
[2026-06-27 04:51:13,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:51:13
[2026-06-27 04:51:13,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:51:13,734.734 INFO    ] Initializing speech engine...
[2026-06-27 04:51:13,739.739 INFO    ] 2026-06-27 04:51:13
[2026-06-27 04:51:13,940.940 INFO    ] 2026-06-27 04:51:13
[2026-06-27 04:51:13,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:51:14,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:51:14,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:51:14,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:51:14,377.377 INFO    ] time= 27/06/2026 04:51:14
[2026-06-27 04:51:14,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:51:14,384.384 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:51:14,451.451 INFO    ] No existing commands found in stream
[2026-06-27 04:51:19,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:51:19,462.462 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-27 04:51:20,442.442 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:51:20,444.444 INFO    ] Checking for system updates...
[2026-06-27 04:51:20,465.465 INFO    ] 200
[2026-06-27 04:51:20,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:51:20,498.498 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:51:20,500.500 INFO    ] No update needed
[2026-06-27 04:51:20,501.501 INFO    ] Checking for camera pi updates...
[2026-06-27 04:51:20,520.520 INFO    ] 200
[2026-06-27 04:51:20,522.522 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:51:20,545.545 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:51:20,686.686 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:51:20,688.688 INFO    ] No camera update needed
[2026-06-27 04:51:20,689.689 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:51:20,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:51:20,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:51:20,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:51:22,736.736 INFO    ] ================================================
[2026-06-27 04:51:22,751.751 INFO    ] Launching Daemon at Sat Jun 27 04:51:22 IST 2026
[2026-06-27 04:51:22,761.761 INFO    ] ================================================
[2026-06-27 04:51:23,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:51:23
[2026-06-27 04:51:23,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:51:23,556.556 INFO    ] Initializing speech engine...
[2026-06-27 04:51:23,561.561 INFO    ] 2026-06-27 04:51:23
[2026-06-27 04:51:23,763.763 INFO    ] 2026-06-27 04:51:23
[2026-06-27 04:51:23,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:51:23,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:51:23,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:51:24,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:51:24,196.196 INFO    ] time= 27/06/2026 04:51:24
[2026-06-27 04:51:24,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:51:24,207.207 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:51:24,272.272 INFO    ] No existing commands found in stream
[2026-06-27 04:51:29,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:51:29,285.285 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-27 04:51:32,739.739 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 04:51:32,742.742 INFO    ] Checking for system updates...
[2026-06-27 04:51:32,780.780 INFO    ] 200
[2026-06-27 04:51:32,782.782 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:51:32,833.833 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:51:32,835.835 INFO    ] No update needed
[2026-06-27 04:51:32,837.837 INFO    ] Checking for camera pi updates...
[2026-06-27 04:51:32,857.857 INFO    ] 200
[2026-06-27 04:51:32,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:51:32,882.882 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:51:32,907.907 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:51:32,908.908 INFO    ] No camera update needed
[2026-06-27 04:51:32,910.910 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:51:32,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:51:32,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:51:32,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:51:34,959.959 INFO    ] ================================================
[2026-06-27 04:51:34,975.975 INFO    ] Launching Daemon at Sat Jun 27 04:51:34 IST 2026
[2026-06-27 04:51:34,986.986 INFO    ] ================================================
[2026-06-27 04:51:35,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:51:35
[2026-06-27 04:51:35,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:51:35,813.813 INFO    ] Initializing speech engine...
[2026-06-27 04:51:35,819.819 INFO    ] 2026-06-27 04:51:35
[2026-06-27 04:51:36,028.028 INFO    ] 2026-06-27 04:51:36
[2026-06-27 04:51:36,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:51:36,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:51:36,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:51:36,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:51:36,459.459 INFO    ] time= 27/06/2026 04:51:36
[2026-06-27 04:51:36,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:51:36,488.488 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:51:36,556.556 INFO    ] No existing commands found in stream
[2026-06-27 04:51:41,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:51:41,568.568 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-27 04:51:43,744.744 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 04:51:43,746.746 INFO    ] Checking for system updates...
[2026-06-27 04:51:43,768.768 INFO    ] 200
[2026-06-27 04:51:43,769.769 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:51:43,799.799 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:51:43,801.801 INFO    ] No update needed
[2026-06-27 04:51:43,802.802 INFO    ] Checking for camera pi updates...
[2026-06-27 04:51:43,822.822 INFO    ] 200
[2026-06-27 04:51:43,824.824 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:51:43,847.847 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:51:43,885.885 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:51:43,886.886 INFO    ] No camera update needed
[2026-06-27 04:51:43,887.887 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:51:43,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:51:43,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:51:43,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:51:45,934.934 INFO    ] ================================================
[2026-06-27 04:51:45,949.949 INFO    ] Launching Daemon at Sat Jun 27 04:51:45 IST 2026
[2026-06-27 04:51:45,960.960 INFO    ] ================================================
[2026-06-27 04:51:46,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:51:46
[2026-06-27 04:51:46,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:51:46,816.816 INFO    ] Initializing speech engine...
[2026-06-27 04:51:46,822.822 INFO    ] 2026-06-27 04:51:46
[2026-06-27 04:51:47,022.022 INFO    ] 2026-06-27 04:51:47
[2026-06-27 04:51:47,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:51:47,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:51:47,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:51:47,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:51:47,463.463 INFO    ] time= 27/06/2026 04:51:47
[2026-06-27 04:51:47,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:51:47,471.471 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:51:47,538.538 INFO    ] No existing commands found in stream
[2026-06-27 04:51:52,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:51:52,557.557 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-27 04:51:56,032.032 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:51:56,033.033 INFO    ] Checking for system updates...
[2026-06-27 04:51:56,054.054 INFO    ] 200
[2026-06-27 04:51:56,056.056 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:51:56,086.086 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:51:56,088.088 INFO    ] No update needed
[2026-06-27 04:51:56,089.089 INFO    ] Checking for camera pi updates...
[2026-06-27 04:51:56,109.109 INFO    ] 200
[2026-06-27 04:51:56,110.110 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:51:56,134.134 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:51:56,175.175 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:51:56,176.176 INFO    ] No camera update needed
[2026-06-27 04:51:56,178.178 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:51:56,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:51:56,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:51:56,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:51:58,225.225 INFO    ] ================================================
[2026-06-27 04:51:58,240.240 INFO    ] Launching Daemon at Sat Jun 27 04:51:58 IST 2026
[2026-06-27 04:51:58,251.251 INFO    ] ================================================
[2026-06-27 04:51:58,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:51:58
[2026-06-27 04:51:58,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:51:59,099.099 INFO    ] Initializing speech engine...
[2026-06-27 04:51:59,109.109 INFO    ] 2026-06-27 04:51:59
[2026-06-27 04:51:59,318.318 INFO    ] 2026-06-27 04:51:59
[2026-06-27 04:51:59,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:51:59,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:51:59,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:51:59,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:51:59,739.739 INFO    ] time= 27/06/2026 04:51:59
[2026-06-27 04:51:59,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:51:59,767.767 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:51:59,835.835 INFO    ] No existing commands found in stream
[2026-06-27 04:52:04,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:52:04,853.853 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-27 04:52:06,399.399 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 04:52:06,400.400 INFO    ] Checking for system updates...
[2026-06-27 04:52:06,423.423 INFO    ] 200
[2026-06-27 04:52:06,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:52:06,460.460 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:52:06,461.461 INFO    ] No update needed
[2026-06-27 04:52:06,462.462 INFO    ] Checking for camera pi updates...
[2026-06-27 04:52:06,483.483 INFO    ] 200
[2026-06-27 04:52:06,485.485 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:52:06,511.511 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:52:06,547.547 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:52:06,548.548 INFO    ] No camera update needed
[2026-06-27 04:52:06,550.550 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:52:06,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:52:06,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:52:06,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:52:08,599.599 INFO    ] ================================================
[2026-06-27 04:52:08,614.614 INFO    ] Launching Daemon at Sat Jun 27 04:52:08 IST 2026
[2026-06-27 04:52:08,625.625 INFO    ] ================================================
[2026-06-27 04:52:08,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:52:08
[2026-06-27 04:52:09,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:52:09,393.393 INFO    ] Initializing speech engine...
[2026-06-27 04:52:09,401.401 INFO    ] 2026-06-27 04:52:09
[2026-06-27 04:52:09,614.614 INFO    ] 2026-06-27 04:52:09
[2026-06-27 04:52:09,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:52:09,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:52:09,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:52:09,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:52:10,016.016 INFO    ] time= 27/06/2026 04:52:09
[2026-06-27 04:52:10,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:52:10,040.040 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:52:10,095.095 INFO    ] No existing commands found in stream
[2026-06-27 04:52:15,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:52:15,107.107 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-27 04:52:17,941.941 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 04:52:17,943.943 INFO    ] Checking for system updates...
[2026-06-27 04:52:17,965.965 INFO    ] 200
[2026-06-27 04:52:17,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:52:17,997.997 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:52:17,998.998 INFO    ] No update needed
[2026-06-27 04:52:18,000.000 INFO    ] Checking for camera pi updates...
[2026-06-27 04:52:18,019.019 INFO    ] 200
[2026-06-27 04:52:18,021.021 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:52:18,047.047 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:52:18,090.090 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:52:18,091.091 INFO    ] No camera update needed
[2026-06-27 04:52:18,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:52:18,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:52:18,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:52:18,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:52:20,139.139 INFO    ] ================================================
[2026-06-27 04:52:20,154.154 INFO    ] Launching Daemon at Sat Jun 27 04:52:20 IST 2026
[2026-06-27 04:52:20,165.165 INFO    ] ================================================
[2026-06-27 04:52:20,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:52:20
[2026-06-27 04:52:20,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:52:20,972.972 INFO    ] Initializing speech engine...
[2026-06-27 04:52:20,977.977 INFO    ] 2026-06-27 04:52:20
[2026-06-27 04:52:21,194.194 INFO    ] 2026-06-27 04:52:21
[2026-06-27 04:52:21,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:52:21,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:52:21,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:52:21,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:52:21,631.631 INFO    ] time= 27/06/2026 04:52:21
[2026-06-27 04:52:21,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:52:21,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:52:21,716.716 INFO    ] No existing commands found in stream
[2026-06-27 04:52:26,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:52:26,733.733 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-27 04:52:28,986.986 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 04:52:28,988.988 INFO    ] Checking for system updates...
[2026-06-27 04:52:29,009.009 INFO    ] 200
[2026-06-27 04:52:29,010.010 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:52:29,041.041 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:52:29,043.043 INFO    ] No update needed
[2026-06-27 04:52:29,044.044 INFO    ] Checking for camera pi updates...
[2026-06-27 04:52:29,064.064 INFO    ] 200
[2026-06-27 04:52:29,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:52:29,089.089 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:52:29,128.128 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:52:29,130.130 INFO    ] No camera update needed
[2026-06-27 04:52:29,131.131 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:52:29,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:52:29,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:52:29,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:52:31,179.179 INFO    ] ================================================
[2026-06-27 04:52:31,194.194 INFO    ] Launching Daemon at Sat Jun 27 04:52:31 IST 2026
[2026-06-27 04:52:31,204.204 INFO    ] ================================================
[2026-06-27 04:52:31,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:52:31
[2026-06-27 04:52:31,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:52:32,010.010 INFO    ] Initializing speech engine...
[2026-06-27 04:52:32,015.015 INFO    ] 2026-06-27 04:52:32
[2026-06-27 04:52:32,241.241 INFO    ] 2026-06-27 04:52:32
[2026-06-27 04:52:32,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:52:32,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:52:32,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:52:32,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:52:32,696.696 INFO    ] time= 27/06/2026 04:52:32
[2026-06-27 04:52:32,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:52:32,722.722 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:52:32,790.790 INFO    ] No existing commands found in stream
[2026-06-27 04:52:37,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:52:37,802.802 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-27 04:52:39,908.908 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:52:39,910.910 INFO    ] Checking for system updates...
[2026-06-27 04:52:39,931.931 INFO    ] 200
[2026-06-27 04:52:39,932.932 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:52:39,965.965 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:52:39,966.966 INFO    ] No update needed
[2026-06-27 04:52:39,967.967 INFO    ] Checking for camera pi updates...
[2026-06-27 04:52:39,987.987 INFO    ] 200
[2026-06-27 04:52:39,988.988 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:52:40,014.014 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:52:40,056.056 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:52:40,057.057 INFO    ] No camera update needed
[2026-06-27 04:52:40,058.058 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:52:40,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:52:40,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:52:40,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:52:42,104.104 INFO    ] ================================================
[2026-06-27 04:52:42,119.119 INFO    ] Launching Daemon at Sat Jun 27 04:52:42 IST 2026
[2026-06-27 04:52:42,134.134 INFO    ] ================================================
[2026-06-27 04:52:42,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:52:42
[2026-06-27 04:52:42,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:52:42,952.952 INFO    ] Initializing speech engine...
[2026-06-27 04:52:42,960.960 INFO    ] 2026-06-27 04:52:42
[2026-06-27 04:52:43,172.172 INFO    ] 2026-06-27 04:52:43
[2026-06-27 04:52:43,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:52:43,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:52:43,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:52:43,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:52:43,542.542 INFO    ] time= 27/06/2026 04:52:43
[2026-06-27 04:52:43,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:52:43,627.627 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:52:43,725.725 INFO    ] No existing commands found in stream
[2026-06-27 04:52:48,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:52:48,738.738 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-27 04:52:51,210.210 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:52:51,212.212 INFO    ] Checking for system updates...
[2026-06-27 04:52:51,233.233 INFO    ] 200
[2026-06-27 04:52:51,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:52:51,266.266 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:52:51,268.268 INFO    ] No update needed
[2026-06-27 04:52:51,269.269 INFO    ] Checking for camera pi updates...
[2026-06-27 04:52:51,289.289 INFO    ] 200
[2026-06-27 04:52:51,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:52:51,314.314 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:52:51,353.353 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:52:51,354.354 INFO    ] No camera update needed
[2026-06-27 04:52:51,356.356 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:52:51,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:52:51,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:52:51,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:52:53,403.403 INFO    ] ================================================
[2026-06-27 04:52:53,419.419 INFO    ] Launching Daemon at Sat Jun 27 04:52:53 IST 2026
[2026-06-27 04:52:53,430.430 INFO    ] ================================================
[2026-06-27 04:52:53,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:52:53
[2026-06-27 04:52:54,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:52:54,232.232 INFO    ] Initializing speech engine...
[2026-06-27 04:52:54,237.237 INFO    ] 2026-06-27 04:52:54
[2026-06-27 04:52:54,442.442 INFO    ] 2026-06-27 04:52:54
[2026-06-27 04:52:54,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:52:54,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:52:54,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:52:54,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:52:54,879.879 INFO    ] time= 27/06/2026 04:52:54
[2026-06-27 04:52:54,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:52:54,887.887 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:52:54,954.954 INFO    ] No existing commands found in stream
[2026-06-27 04:52:59,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:52:59,966.966 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-27 04:53:02,619.619 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 04:53:02,620.620 INFO    ] Checking for system updates...
[2026-06-27 04:53:02,641.641 INFO    ] 200
[2026-06-27 04:53:02,643.643 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:53:02,681.681 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:53:02,683.683 INFO    ] No update needed
[2026-06-27 04:53:02,686.686 INFO    ] Checking for camera pi updates...
[2026-06-27 04:53:02,726.726 INFO    ] 200
[2026-06-27 04:53:02,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:53:02,781.781 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:53:02,824.824 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:53:02,826.826 INFO    ] No camera update needed
[2026-06-27 04:53:02,829.829 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:53:02,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:53:02,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:53:02,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:53:04,882.882 INFO    ] ================================================
[2026-06-27 04:53:04,897.897 INFO    ] Launching Daemon at Sat Jun 27 04:53:04 IST 2026
[2026-06-27 04:53:04,908.908 INFO    ] ================================================
[2026-06-27 04:53:05,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:53:05
[2026-06-27 04:53:05,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:53:05,750.750 INFO    ] Initializing speech engine...
[2026-06-27 04:53:05,753.753 INFO    ] 2026-06-27 04:53:05
[2026-06-27 04:53:05,964.964 INFO    ] 2026-06-27 04:53:05
[2026-06-27 04:53:05,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:53:06,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:53:06,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:53:06,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:53:06,423.423 INFO    ] time= 27/06/2026 04:53:06
[2026-06-27 04:53:06,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:53:06,470.470 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:53:06,545.545 INFO    ] No existing commands found in stream
[2026-06-27 04:53:11,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:53:11,559.559 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-27 04:53:13,693.693 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:53:13,695.695 INFO    ] Checking for system updates...
[2026-06-27 04:53:13,716.716 INFO    ] 200
[2026-06-27 04:53:13,717.717 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:53:13,748.748 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:53:13,750.750 INFO    ] No update needed
[2026-06-27 04:53:13,751.751 INFO    ] Checking for camera pi updates...
[2026-06-27 04:53:13,772.772 INFO    ] 200
[2026-06-27 04:53:13,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:53:13,798.798 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:53:13,837.837 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:53:13,839.839 INFO    ] No camera update needed
[2026-06-27 04:53:13,840.840 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:53:13,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:53:13,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:53:13,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:53:15,888.888 INFO    ] ================================================
[2026-06-27 04:53:15,903.903 INFO    ] Launching Daemon at Sat Jun 27 04:53:15 IST 2026
[2026-06-27 04:53:15,914.914 INFO    ] ================================================
[2026-06-27 04:53:16,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:53:16
[2026-06-27 04:53:16,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:53:16,730.730 INFO    ] Initializing speech engine...
[2026-06-27 04:53:16,734.734 INFO    ] 2026-06-27 04:53:16
[2026-06-27 04:53:16,931.931 INFO    ] 2026-06-27 04:53:16
[2026-06-27 04:53:16,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:53:17,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:53:17,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:53:17,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:53:17,403.403 INFO    ] time= 27/06/2026 04:53:17
[2026-06-27 04:53:17,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:53:17,449.449 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:53:17,525.525 INFO    ] No existing commands found in stream
[2026-06-27 04:53:22,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:53:22,538.538 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-27 04:53:23,715.715 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:53:23,717.717 INFO    ] Checking for system updates...
[2026-06-27 04:53:23,738.738 INFO    ] 200
[2026-06-27 04:53:23,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:53:23,770.770 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:53:23,771.771 INFO    ] No update needed
[2026-06-27 04:53:23,772.772 INFO    ] Checking for camera pi updates...
[2026-06-27 04:53:23,792.792 INFO    ] 200
[2026-06-27 04:53:23,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:53:23,817.817 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:53:23,959.959 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:53:23,960.960 INFO    ] No camera update needed
[2026-06-27 04:53:23,961.961 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:53:23,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:53:23,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:53:23,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:53:26,007.007 INFO    ] ================================================
[2026-06-27 04:53:26,022.022 INFO    ] Launching Daemon at Sat Jun 27 04:53:26 IST 2026
[2026-06-27 04:53:26,033.033 INFO    ] ================================================
[2026-06-27 04:53:26,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:53:26
[2026-06-27 04:53:26,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:53:26,886.886 INFO    ] Initializing speech engine...
[2026-06-27 04:53:26,896.896 INFO    ] 2026-06-27 04:53:26
[2026-06-27 04:53:27,105.105 INFO    ] 2026-06-27 04:53:27
[2026-06-27 04:53:27,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:53:27,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:53:27,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:53:27,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:53:27,545.545 INFO    ] time= 27/06/2026 04:53:27
[2026-06-27 04:53:27,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:53:27,552.552 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:53:27,620.620 INFO    ] No existing commands found in stream
[2026-06-27 04:53:32,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:53:32,656.656 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-27 04:53:33,502.502 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:53:33,504.504 INFO    ] Checking for system updates...
[2026-06-27 04:53:33,525.525 INFO    ] 200
[2026-06-27 04:53:33,527.527 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:53:33,560.560 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:53:33,561.561 INFO    ] No update needed
[2026-06-27 04:53:33,562.562 INFO    ] Checking for camera pi updates...
[2026-06-27 04:53:33,585.585 INFO    ] 200
[2026-06-27 04:53:33,587.587 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:53:33,610.610 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:53:33,648.648 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:53:33,650.650 INFO    ] No camera update needed
[2026-06-27 04:53:33,651.651 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:53:33,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:53:33,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:53:33,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:53:35,697.697 INFO    ] ================================================
[2026-06-27 04:53:35,712.712 INFO    ] Launching Daemon at Sat Jun 27 04:53:35 IST 2026
[2026-06-27 04:53:35,723.723 INFO    ] ================================================
[2026-06-27 04:53:36,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:53:36
[2026-06-27 04:53:36,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:53:36,511.511 INFO    ] Initializing speech engine...
[2026-06-27 04:53:36,516.516 INFO    ] 2026-06-27 04:53:36
[2026-06-27 04:53:36,719.719 INFO    ] 2026-06-27 04:53:36
[2026-06-27 04:53:36,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:53:36,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:53:36,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:53:37,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:53:37,158.158 INFO    ] time= 27/06/2026 04:53:37
[2026-06-27 04:53:37,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:53:37,165.165 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:53:37,232.232 INFO    ] No existing commands found in stream
[2026-06-27 04:53:42,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:53:42,243.243 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-27 04:53:43,690.690 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 04:53:43,692.692 INFO    ] Checking for system updates...
[2026-06-27 04:53:43,713.713 INFO    ] 200
[2026-06-27 04:53:43,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:53:43,745.745 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:53:43,746.746 INFO    ] No update needed
[2026-06-27 04:53:43,748.748 INFO    ] Checking for camera pi updates...
[2026-06-27 04:53:43,767.767 INFO    ] 200
[2026-06-27 04:53:43,769.769 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:53:43,792.792 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:53:43,832.832 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:53:43,833.833 INFO    ] No camera update needed
[2026-06-27 04:53:43,835.835 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:53:43,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:53:43,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:53:43,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:53:45,882.882 INFO    ] ================================================
[2026-06-27 04:53:45,897.897 INFO    ] Launching Daemon at Sat Jun 27 04:53:45 IST 2026
[2026-06-27 04:53:45,908.908 INFO    ] ================================================
[2026-06-27 04:53:46,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:53:46
[2026-06-27 04:53:46,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:53:46,776.776 INFO    ] Initializing speech engine...
[2026-06-27 04:53:46,782.782 INFO    ] 2026-06-27 04:53:46
[2026-06-27 04:53:46,989.989 INFO    ] 2026-06-27 04:53:46
[2026-06-27 04:53:47,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:53:47,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:53:47,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:53:47,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:53:47,410.410 INFO    ] time= 27/06/2026 04:53:47
[2026-06-27 04:53:47,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:53:47,438.438 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:53:47,505.505 INFO    ] No existing commands found in stream
[2026-06-27 04:53:52,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:53:52,518.518 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-27 04:53:53,310.310 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:53:53,312.312 INFO    ] Checking for system updates...
[2026-06-27 04:53:53,333.333 INFO    ] 200
[2026-06-27 04:53:53,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:53:53,365.365 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:53:53,367.367 INFO    ] No update needed
[2026-06-27 04:53:53,368.368 INFO    ] Checking for camera pi updates...
[2026-06-27 04:53:53,388.388 INFO    ] 200
[2026-06-27 04:53:53,390.390 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:53:53,413.413 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:53:53,454.454 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:53:53,455.455 INFO    ] No camera update needed
[2026-06-27 04:53:53,456.456 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:53:53,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:53:53,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:53:53,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:53:55,502.502 INFO    ] ================================================
[2026-06-27 04:53:55,517.517 INFO    ] Launching Daemon at Sat Jun 27 04:53:55 IST 2026
[2026-06-27 04:53:55,527.527 INFO    ] ================================================
[2026-06-27 04:53:55,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:53:55
[2026-06-27 04:53:56,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:53:56,305.305 INFO    ] Initializing speech engine...
[2026-06-27 04:53:56,310.310 INFO    ] 2026-06-27 04:53:56
[2026-06-27 04:53:56,539.539 INFO    ] 2026-06-27 04:53:56
[2026-06-27 04:53:56,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:53:56,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:53:56,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:53:56,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:53:56,982.982 INFO    ] time= 27/06/2026 04:53:56
[2026-06-27 04:53:57,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:53:57,017.017 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:53:57,092.092 INFO    ] No existing commands found in stream
[2026-06-27 04:54:02,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:54:02,104.104 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-27 04:54:04,969.969 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:54:04,970.970 INFO    ] Checking for system updates...
[2026-06-27 04:54:04,991.991 INFO    ] 200
[2026-06-27 04:54:04,992.992 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:54:05,023.023 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:54:05,024.024 INFO    ] No update needed
[2026-06-27 04:54:05,026.026 INFO    ] Checking for camera pi updates...
[2026-06-27 04:54:05,045.045 INFO    ] 200
[2026-06-27 04:54:05,047.047 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:54:05,070.070 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:54:05,123.123 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:54:05,125.125 INFO    ] No camera update needed
[2026-06-27 04:54:05,126.126 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:54:05,127.127 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:54:05,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:54:05,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:54:07,172.172 INFO    ] ================================================
[2026-06-27 04:54:07,187.187 INFO    ] Launching Daemon at Sat Jun 27 04:54:07 IST 2026
[2026-06-27 04:54:07,198.198 INFO    ] ================================================
[2026-06-27 04:54:07,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:54:07
[2026-06-27 04:54:07,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:54:08,050.050 INFO    ] Initializing speech engine...
[2026-06-27 04:54:08,054.054 INFO    ] 2026-06-27 04:54:08
[2026-06-27 04:54:08,256.256 INFO    ] 2026-06-27 04:54:08
[2026-06-27 04:54:08,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:54:08,470.470 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:54:08,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:54:08,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:54:08,677.677 INFO    ] time= 27/06/2026 04:54:08
[2026-06-27 04:54:08,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:54:08,706.706 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:54:08,772.772 INFO    ] No existing commands found in stream
[2026-06-27 04:54:13,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:54:13,786.786 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-27 04:54:16,448.448 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 04:54:16,449.449 INFO    ] Checking for system updates...
[2026-06-27 04:54:16,470.470 INFO    ] 200
[2026-06-27 04:54:16,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:54:16,504.504 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:54:16,506.506 INFO    ] No update needed
[2026-06-27 04:54:16,507.507 INFO    ] Checking for camera pi updates...
[2026-06-27 04:54:16,528.528 INFO    ] 200
[2026-06-27 04:54:16,529.529 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:54:16,556.556 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:54:16,593.593 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:54:16,595.595 INFO    ] No camera update needed
[2026-06-27 04:54:16,596.596 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:54:16,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:54:16,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:54:16,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:54:18,643.643 INFO    ] ================================================
[2026-06-27 04:54:18,659.659 INFO    ] Launching Daemon at Sat Jun 27 04:54:18 IST 2026
[2026-06-27 04:54:18,669.669 INFO    ] ================================================
[2026-06-27 04:54:19,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:54:19
[2026-06-27 04:54:19,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:54:19,546.546 INFO    ] Initializing speech engine...
[2026-06-27 04:54:19,551.551 INFO    ] 2026-06-27 04:54:19
[2026-06-27 04:54:19,758.758 INFO    ] 2026-06-27 04:54:19
[2026-06-27 04:54:19,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:54:19,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:54:19,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:54:20,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:54:20,215.215 INFO    ] time= 27/06/2026 04:54:20
[2026-06-27 04:54:20,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:54:20,228.228 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:54:20,347.347 INFO    ] No existing commands found in stream
[2026-06-27 04:54:25,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:54:25,361.361 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-27 04:54:29,661.661 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:54:29,663.663 INFO    ] Checking for system updates...
[2026-06-27 04:54:29,684.684 INFO    ] 200
[2026-06-27 04:54:29,686.686 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:54:29,717.717 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:54:29,718.718 INFO    ] No update needed
[2026-06-27 04:54:29,720.720 INFO    ] Checking for camera pi updates...
[2026-06-27 04:54:29,740.740 INFO    ] 200
[2026-06-27 04:54:29,741.741 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:54:29,765.765 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:54:29,807.807 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:54:29,808.808 INFO    ] No camera update needed
[2026-06-27 04:54:29,810.810 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:54:29,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:54:29,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:54:29,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:54:31,850.850 INFO    ] ================================================
[2026-06-27 04:54:31,860.860 INFO    ] Launching Daemon at Sat Jun 27 04:54:31 IST 2026
[2026-06-27 04:54:31,867.867 INFO    ] ================================================
[2026-06-27 04:54:32,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:54:32
[2026-06-27 04:54:32,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:54:32,715.715 INFO    ] Initializing speech engine...
[2026-06-27 04:54:32,720.720 INFO    ] 2026-06-27 04:54:32
[2026-06-27 04:54:32,929.929 INFO    ] 2026-06-27 04:54:32
[2026-06-27 04:54:32,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:54:33,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:54:33,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:54:33,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:54:33,369.369 INFO    ] time= 27/06/2026 04:54:33
[2026-06-27 04:54:33,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:54:33,378.378 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:54:33,444.444 INFO    ] No existing commands found in stream
[2026-06-27 04:54:38,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:54:38,479.479 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-27 04:54:39,550.550 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 04:54:39,551.551 INFO    ] Checking for system updates...
[2026-06-27 04:54:39,573.573 INFO    ] 200
[2026-06-27 04:54:39,575.575 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:54:39,608.608 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:54:39,610.610 INFO    ] No update needed
[2026-06-27 04:54:39,611.611 INFO    ] Checking for camera pi updates...
[2026-06-27 04:54:39,631.631 INFO    ] 200
[2026-06-27 04:54:39,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:54:39,657.657 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:54:39,697.697 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:54:39,699.699 INFO    ] No camera update needed
[2026-06-27 04:54:39,700.700 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:54:39,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:54:39,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:54:39,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:54:41,747.747 INFO    ] ================================================
[2026-06-27 04:54:41,762.762 INFO    ] Launching Daemon at Sat Jun 27 04:54:41 IST 2026
[2026-06-27 04:54:41,772.772 INFO    ] ================================================
[2026-06-27 04:54:42,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:54:42
[2026-06-27 04:54:42,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:54:42,563.563 INFO    ] Initializing speech engine...
[2026-06-27 04:54:42,568.568 INFO    ] 2026-06-27 04:54:42
[2026-06-27 04:54:42,775.775 INFO    ] 2026-06-27 04:54:42
[2026-06-27 04:54:42,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:54:42,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:54:42,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:54:43,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:54:43,180.180 INFO    ] time= 27/06/2026 04:54:43
[2026-06-27 04:54:43,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:54:43,227.227 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:54:43,299.299 INFO    ] No existing commands found in stream
[2026-06-27 04:54:48,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:54:48,311.311 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-27 04:54:51,413.413 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:54:51,415.415 INFO    ] Checking for system updates...
[2026-06-27 04:54:51,447.447 INFO    ] 200
[2026-06-27 04:54:51,449.449 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-27 04:54:51,450.450 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-27 04:54:51,451.451 INFO    ] Checking for camera pi updates...
[2026-06-27 04:54:51,481.481 INFO    ] 200
[2026-06-27 04:54:51,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-27 04:54:51,485.485 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-27 04:54:51,487.487 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:54:51,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:54:51,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:54:51,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:54:53,538.538 INFO    ] ================================================
[2026-06-27 04:54:53,554.554 INFO    ] Launching Daemon at Sat Jun 27 04:54:53 IST 2026
[2026-06-27 04:54:53,565.565 INFO    ] ================================================
[2026-06-27 04:54:53,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:54:53
[2026-06-27 04:54:54,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:54:54,434.434 INFO    ] Initializing speech engine...
[2026-06-27 04:54:54,438.438 INFO    ] 2026-06-27 04:54:54
[2026-06-27 04:54:54,650.650 INFO    ] 2026-06-27 04:54:54
[2026-06-27 04:54:54,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:54:54,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:54:54,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:54:55,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:54:55,101.101 INFO    ] time= 27/06/2026 04:54:55
[2026-06-27 04:54:55,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:54:55,108.108 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:54:55,177.177 INFO    ] No existing commands found in stream
[2026-06-27 04:55:00,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:55:00,190.190 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-27 04:55:02,669.669 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 04:55:02,671.671 INFO    ] Checking for system updates...
[2026-06-27 04:55:02,693.693 INFO    ] 200
[2026-06-27 04:55:02,694.694 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:55:02,726.726 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:55:02,728.728 INFO    ] No update needed
[2026-06-27 04:55:02,729.729 INFO    ] Checking for camera pi updates...
[2026-06-27 04:55:02,759.759 INFO    ] 200
[2026-06-27 04:55:02,761.761 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:55:02,785.785 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:55:02,816.816 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:55:02,817.817 INFO    ] No camera update needed
[2026-06-27 04:55:02,818.818 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:55:02,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:55:02,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:55:02,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:55:04,865.865 INFO    ] ================================================
[2026-06-27 04:55:04,881.881 INFO    ] Launching Daemon at Sat Jun 27 04:55:04 IST 2026
[2026-06-27 04:55:04,892.892 INFO    ] ================================================
[2026-06-27 04:55:05,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:55:05
[2026-06-27 04:55:05,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:55:05,740.740 INFO    ] Initializing speech engine...
[2026-06-27 04:55:05,745.745 INFO    ] 2026-06-27 04:55:05
[2026-06-27 04:55:05,963.963 INFO    ] 2026-06-27 04:55:05
[2026-06-27 04:55:05,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:55:06,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:55:06,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:55:06,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:55:06,377.377 INFO    ] time= 27/06/2026 04:55:06
[2026-06-27 04:55:06,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:55:06,410.410 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:55:06,482.482 INFO    ] No existing commands found in stream
[2026-06-27 04:55:11,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:55:11,495.495 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-27 04:55:13,221.221 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:55:13,223.223 INFO    ] Checking for system updates...
[2026-06-27 04:55:13,244.244 INFO    ] 200
[2026-06-27 04:55:13,245.245 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:55:13,278.278 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:55:13,279.279 INFO    ] No update needed
[2026-06-27 04:55:13,281.281 INFO    ] Checking for camera pi updates...
[2026-06-27 04:55:13,309.309 INFO    ] 200
[2026-06-27 04:55:13,311.311 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:55:13,336.336 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:55:13,379.379 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:55:13,380.380 INFO    ] No camera update needed
[2026-06-27 04:55:13,382.382 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:55:13,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:55:13,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:55:13,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:55:15,432.432 INFO    ] ================================================
[2026-06-27 04:55:15,448.448 INFO    ] Launching Daemon at Sat Jun 27 04:55:15 IST 2026
[2026-06-27 04:55:15,459.459 INFO    ] ================================================
[2026-06-27 04:55:15,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:55:15
[2026-06-27 04:55:16,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:55:16,253.253 INFO    ] Initializing speech engine...
[2026-06-27 04:55:16,257.257 INFO    ] 2026-06-27 04:55:16
[2026-06-27 04:55:16,463.463 INFO    ] 2026-06-27 04:55:16
[2026-06-27 04:55:16,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:55:16,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:55:16,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:55:16,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:55:16,911.911 INFO    ] time= 27/06/2026 04:55:16
[2026-06-27 04:55:16,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:55:16,918.918 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:55:16,983.983 INFO    ] No existing commands found in stream
[2026-06-27 04:55:21,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:55:21,997.997 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-27 04:55:25,869.869 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:55:25,871.871 INFO    ] Checking for system updates...
[2026-06-27 04:55:25,892.892 INFO    ] 200
[2026-06-27 04:55:25,893.893 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:55:25,924.924 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:55:25,926.926 INFO    ] No update needed
[2026-06-27 04:55:25,927.927 INFO    ] Checking for camera pi updates...
[2026-06-27 04:55:25,948.948 INFO    ] 200
[2026-06-27 04:55:25,950.950 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:55:25,976.976 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:55:26,023.023 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:55:26,025.025 INFO    ] No camera update needed
[2026-06-27 04:55:26,026.026 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:55:26,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:55:26,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:55:26,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:55:28,073.073 INFO    ] ================================================
[2026-06-27 04:55:28,089.089 INFO    ] Launching Daemon at Sat Jun 27 04:55:28 IST 2026
[2026-06-27 04:55:28,101.101 INFO    ] ================================================
[2026-06-27 04:55:28,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:55:28
[2026-06-27 04:55:28,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:55:28,910.910 INFO    ] Initializing speech engine...
[2026-06-27 04:55:28,915.915 INFO    ] 2026-06-27 04:55:28
[2026-06-27 04:55:29,120.120 INFO    ] 2026-06-27 04:55:29
[2026-06-27 04:55:29,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:55:29,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:55:29,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:55:29,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:55:29,560.560 INFO    ] time= 27/06/2026 04:55:29
[2026-06-27 04:55:29,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:55:29,567.567 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:55:29,634.634 INFO    ] No existing commands found in stream
[2026-06-27 04:55:34,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:55:34,647.647 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-27 04:55:37,844.844 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:55:37,845.845 INFO    ] Checking for system updates...
[2026-06-27 04:55:37,866.866 INFO    ] 200
[2026-06-27 04:55:37,868.868 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:55:37,899.899 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:55:37,900.900 INFO    ] No update needed
[2026-06-27 04:55:37,902.902 INFO    ] Checking for camera pi updates...
[2026-06-27 04:55:37,921.921 INFO    ] 200
[2026-06-27 04:55:37,923.923 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:55:37,948.948 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:55:37,989.989 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:55:37,990.990 INFO    ] No camera update needed
[2026-06-27 04:55:37,991.991 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:55:37,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:55:37,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:55:37,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:55:40,039.039 INFO    ] ================================================
[2026-06-27 04:55:40,056.056 INFO    ] Launching Daemon at Sat Jun 27 04:55:40 IST 2026
[2026-06-27 04:55:40,066.066 INFO    ] ================================================
[2026-06-27 04:55:40,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:55:40
[2026-06-27 04:55:40,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:55:40,854.854 INFO    ] Initializing speech engine...
[2026-06-27 04:55:40,858.858 INFO    ] 2026-06-27 04:55:40
[2026-06-27 04:55:41,063.063 INFO    ] 2026-06-27 04:55:41
[2026-06-27 04:55:41,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:55:41,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:55:41,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:55:41,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:55:41,481.481 INFO    ] time= 27/06/2026 04:55:41
[2026-06-27 04:55:41,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:55:41,511.511 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:55:41,578.578 INFO    ] No existing commands found in stream
[2026-06-27 04:55:46,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:55:46,605.605 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-27 04:55:50,520.520 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 04:55:50,521.521 INFO    ] Checking for system updates...
[2026-06-27 04:55:50,542.542 INFO    ] 200
[2026-06-27 04:55:50,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:55:50,574.574 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:55:50,576.576 INFO    ] No update needed
[2026-06-27 04:55:50,577.577 INFO    ] Checking for camera pi updates...
[2026-06-27 04:55:50,597.597 INFO    ] 200
[2026-06-27 04:55:50,599.599 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:55:50,624.624 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:55:50,665.665 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:55:50,667.667 INFO    ] No camera update needed
[2026-06-27 04:55:50,668.668 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:55:50,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:55:50,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:55:50,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:55:52,714.714 INFO    ] ================================================
[2026-06-27 04:55:52,729.729 INFO    ] Launching Daemon at Sat Jun 27 04:55:52 IST 2026
[2026-06-27 04:55:52,740.740 INFO    ] ================================================
[2026-06-27 04:55:53,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:55:53
[2026-06-27 04:55:53,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:55:53,554.554 INFO    ] Initializing speech engine...
[2026-06-27 04:55:53,559.559 INFO    ] 2026-06-27 04:55:53
[2026-06-27 04:55:53,763.763 INFO    ] 2026-06-27 04:55:53
[2026-06-27 04:55:53,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:55:53,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:55:53,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:55:54,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:55:54,200.200 INFO    ] time= 27/06/2026 04:55:54
[2026-06-27 04:55:54,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:55:54,211.211 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:55:54,278.278 INFO    ] No existing commands found in stream
[2026-06-27 04:55:59,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:55:59,290.290 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-27 04:55:59,865.865 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 04:55:59,867.867 INFO    ] Checking for system updates...
[2026-06-27 04:55:59,888.888 INFO    ] 200
[2026-06-27 04:55:59,890.890 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:55:59,924.924 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:55:59,925.925 INFO    ] No update needed
[2026-06-27 04:55:59,927.927 INFO    ] Checking for camera pi updates...
[2026-06-27 04:55:59,946.946 INFO    ] 200
[2026-06-27 04:55:59,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:55:59,973.973 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:56:00,013.013 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:56:00,015.015 INFO    ] No camera update needed
[2026-06-27 04:56:00,016.016 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:56:00,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:56:00,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:56:00,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:56:02,060.060 INFO    ] ================================================
[2026-06-27 04:56:02,079.079 INFO    ] Launching Daemon at Sat Jun 27 04:56:02 IST 2026
[2026-06-27 04:56:02,091.091 INFO    ] ================================================
[2026-06-27 04:56:02,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:56:02
[2026-06-27 04:56:02,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:56:02,959.959 INFO    ] Initializing speech engine...
[2026-06-27 04:56:02,963.963 INFO    ] 2026-06-27 04:56:02
[2026-06-27 04:56:03,188.188 INFO    ] 2026-06-27 04:56:03
[2026-06-27 04:56:03,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:56:03,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:56:03,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:56:03,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:56:03,606.606 INFO    ] time= 27/06/2026 04:56:03
[2026-06-27 04:56:03,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:56:03,640.640 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:56:03,709.709 INFO    ] No existing commands found in stream
[2026-06-27 04:56:08,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:56:08,720.720 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-27 04:56:11,051.051 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 04:56:11,052.052 INFO    ] Checking for system updates...
[2026-06-27 04:56:11,074.074 INFO    ] 200
[2026-06-27 04:56:11,075.075 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:56:11,106.106 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:56:11,107.107 INFO    ] No update needed
[2026-06-27 04:56:11,108.108 INFO    ] Checking for camera pi updates...
[2026-06-27 04:56:11,128.128 INFO    ] 200
[2026-06-27 04:56:11,129.129 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:56:11,152.152 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:56:11,187.187 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:56:11,189.189 INFO    ] No camera update needed
[2026-06-27 04:56:11,190.190 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:56:11,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:56:11,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:56:11,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:56:13,230.230 INFO    ] ================================================
[2026-06-27 04:56:13,240.240 INFO    ] Launching Daemon at Sat Jun 27 04:56:13 IST 2026
[2026-06-27 04:56:13,246.246 INFO    ] ================================================
[2026-06-27 04:56:13,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:56:13
[2026-06-27 04:56:13,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:56:14,133.133 INFO    ] Initializing speech engine...
[2026-06-27 04:56:14,139.139 INFO    ] 2026-06-27 04:56:14
[2026-06-27 04:56:14,349.349 INFO    ] 2026-06-27 04:56:14
[2026-06-27 04:56:14,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:56:14,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:56:14,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:56:14,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:56:14,775.775 INFO    ] time= 27/06/2026 04:56:14
[2026-06-27 04:56:14,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:56:14,806.806 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:56:14,874.874 INFO    ] No existing commands found in stream
[2026-06-27 04:56:19,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:56:19,887.887 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-27 04:56:23,753.753 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 04:56:23,754.754 INFO    ] Checking for system updates...
[2026-06-27 04:56:23,777.777 INFO    ] 200
[2026-06-27 04:56:23,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:56:23,812.812 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:56:23,813.813 INFO    ] No update needed
[2026-06-27 04:56:23,815.815 INFO    ] Checking for camera pi updates...
[2026-06-27 04:56:23,836.836 INFO    ] 200
[2026-06-27 04:56:23,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:56:23,867.867 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:56:23,914.914 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:56:23,915.915 INFO    ] No camera update needed
[2026-06-27 04:56:23,917.917 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:56:23,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:56:23,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:56:23,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:56:25,966.966 INFO    ] ================================================
[2026-06-27 04:56:25,981.981 INFO    ] Launching Daemon at Sat Jun 27 04:56:25 IST 2026
[2026-06-27 04:56:25,992.992 INFO    ] ================================================
[2026-06-27 04:56:26,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:56:26
[2026-06-27 04:56:26,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:56:26,847.847 INFO    ] Initializing speech engine...
[2026-06-27 04:56:26,851.851 INFO    ] 2026-06-27 04:56:26
[2026-06-27 04:56:27,061.061 INFO    ] 2026-06-27 04:56:27
[2026-06-27 04:56:27,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:56:27,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:56:27,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:56:27,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:56:27,456.456 INFO    ] time= 27/06/2026 04:56:27
[2026-06-27 04:56:27,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:56:27,515.515 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:56:27,587.587 INFO    ] No existing commands found in stream
[2026-06-27 04:56:32,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:56:32,599.599 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-27 04:56:33,347.347 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:56:33,349.349 INFO    ] Checking for system updates...
[2026-06-27 04:56:33,370.370 INFO    ] 200
[2026-06-27 04:56:33,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:56:33,402.402 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:56:33,404.404 INFO    ] No update needed
[2026-06-27 04:56:33,406.406 INFO    ] Checking for camera pi updates...
[2026-06-27 04:56:33,426.426 INFO    ] 200
[2026-06-27 04:56:33,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:56:33,453.453 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:56:33,475.475 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:56:33,476.476 INFO    ] No camera update needed
[2026-06-27 04:56:33,477.477 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:56:33,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:56:33,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:56:33,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:56:35,524.524 INFO    ] ================================================
[2026-06-27 04:56:35,539.539 INFO    ] Launching Daemon at Sat Jun 27 04:56:35 IST 2026
[2026-06-27 04:56:35,549.549 INFO    ] ================================================
[2026-06-27 04:56:35,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:56:35
[2026-06-27 04:56:36,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:56:36,345.345 INFO    ] Initializing speech engine...
[2026-06-27 04:56:36,353.353 INFO    ] 2026-06-27 04:56:36
[2026-06-27 04:56:36,565.565 INFO    ] 2026-06-27 04:56:36
[2026-06-27 04:56:36,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:56:36,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:56:36,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:56:36,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:56:37,002.002 INFO    ] time= 27/06/2026 04:56:36
[2026-06-27 04:56:37,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:56:37,034.034 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:56:37,134.134 INFO    ] No existing commands found in stream
[2026-06-27 04:56:42,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:56:42,159.159 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-27 04:56:44,767.767 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:56:44,768.768 INFO    ] Checking for system updates...
[2026-06-27 04:56:44,790.790 INFO    ] 200
[2026-06-27 04:56:44,791.791 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:56:44,822.822 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:56:44,823.823 INFO    ] No update needed
[2026-06-27 04:56:44,825.825 INFO    ] Checking for camera pi updates...
[2026-06-27 04:56:44,846.846 INFO    ] 200
[2026-06-27 04:56:44,848.848 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:56:44,876.876 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:56:44,918.918 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:56:44,920.920 INFO    ] No camera update needed
[2026-06-27 04:56:44,921.921 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:56:44,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:56:44,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:56:44,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:56:46,968.968 INFO    ] ================================================
[2026-06-27 04:56:46,984.984 INFO    ] Launching Daemon at Sat Jun 27 04:56:46 IST 2026
[2026-06-27 04:56:46,994.994 INFO    ] ================================================
[2026-06-27 04:56:47,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:56:47
[2026-06-27 04:56:47,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:56:47,765.765 INFO    ] Initializing speech engine...
[2026-06-27 04:56:47,770.770 INFO    ] 2026-06-27 04:56:47
[2026-06-27 04:56:47,988.988 INFO    ] 2026-06-27 04:56:47
[2026-06-27 04:56:48,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:56:48,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:56:48,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:56:48,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:56:48,386.386 INFO    ] time= 27/06/2026 04:56:48
[2026-06-27 04:56:48,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:56:48,438.438 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:56:48,559.559 INFO    ] No existing commands found in stream
[2026-06-27 04:56:53,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:56:53,572.572 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-27 04:56:55,646.646 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 04:56:55,647.647 INFO    ] Checking for system updates...
[2026-06-27 04:56:55,668.668 INFO    ] 200
[2026-06-27 04:56:55,669.669 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:56:55,702.702 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:56:55,704.704 INFO    ] No update needed
[2026-06-27 04:56:55,705.705 INFO    ] Checking for camera pi updates...
[2026-06-27 04:56:55,727.727 INFO    ] 200
[2026-06-27 04:56:55,728.728 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:56:55,753.753 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:56:55,792.792 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:56:55,793.793 INFO    ] No camera update needed
[2026-06-27 04:56:55,795.795 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:56:55,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:56:55,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:56:55,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:56:57,841.841 INFO    ] ================================================
[2026-06-27 04:56:57,858.858 INFO    ] Launching Daemon at Sat Jun 27 04:56:57 IST 2026
[2026-06-27 04:56:57,871.871 INFO    ] ================================================
[2026-06-27 04:56:58,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:56:58
[2026-06-27 04:56:58,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:56:58,661.661 INFO    ] Initializing speech engine...
[2026-06-27 04:56:58,667.667 INFO    ] 2026-06-27 04:56:58
[2026-06-27 04:56:58,873.873 INFO    ] 2026-06-27 04:56:58
[2026-06-27 04:56:58,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:56:59,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:56:59,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:56:59,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:56:59,303.303 INFO    ] time= 27/06/2026 04:56:59
[2026-06-27 04:56:59,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:56:59,325.325 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:56:59,393.393 INFO    ] No existing commands found in stream
[2026-06-27 04:57:04,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:57:04,405.405 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-27 04:57:06,887.887 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 04:57:06,888.888 INFO    ] Checking for system updates...
[2026-06-27 04:57:06,909.909 INFO    ] 200
[2026-06-27 04:57:06,910.910 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:57:06,944.944 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:57:06,945.945 INFO    ] No update needed
[2026-06-27 04:57:06,946.946 INFO    ] Checking for camera pi updates...
[2026-06-27 04:57:06,966.966 INFO    ] 200
[2026-06-27 04:57:06,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:57:06,990.990 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:57:07,032.032 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:57:07,033.033 INFO    ] No camera update needed
[2026-06-27 04:57:07,034.034 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:57:07,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:57:07,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:57:07,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:57:09,080.080 INFO    ] ================================================
[2026-06-27 04:57:09,096.096 INFO    ] Launching Daemon at Sat Jun 27 04:57:09 IST 2026
[2026-06-27 04:57:09,106.106 INFO    ] ================================================
[2026-06-27 04:57:09,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:57:09
[2026-06-27 04:57:09,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:57:09,935.935 INFO    ] Initializing speech engine...
[2026-06-27 04:57:09,940.940 INFO    ] 2026-06-27 04:57:09
[2026-06-27 04:57:10,146.146 INFO    ] 2026-06-27 04:57:10
[2026-06-27 04:57:10,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:57:10,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:57:10,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:57:10,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:57:10,595.595 INFO    ] time= 27/06/2026 04:57:10
[2026-06-27 04:57:10,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:57:10,602.602 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:57:10,668.668 INFO    ] No existing commands found in stream
[2026-06-27 04:57:15,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:57:15,679.679 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-27 04:57:17,107.107 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 04:57:17,109.109 INFO    ] Checking for system updates...
[2026-06-27 04:57:17,131.131 INFO    ] 200
[2026-06-27 04:57:17,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:57:17,165.165 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:57:17,166.166 INFO    ] No update needed
[2026-06-27 04:57:17,168.168 INFO    ] Checking for camera pi updates...
[2026-06-27 04:57:17,187.187 INFO    ] 200
[2026-06-27 04:57:17,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:57:17,215.215 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:57:17,251.251 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:57:17,253.253 INFO    ] No camera update needed
[2026-06-27 04:57:17,254.254 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:57:17,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:57:17,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:57:17,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:57:19,301.301 INFO    ] ================================================
[2026-06-27 04:57:19,317.317 INFO    ] Launching Daemon at Sat Jun 27 04:57:19 IST 2026
[2026-06-27 04:57:19,328.328 INFO    ] ================================================
[2026-06-27 04:57:19,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:57:19
[2026-06-27 04:57:20,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:57:20,146.146 INFO    ] Initializing speech engine...
[2026-06-27 04:57:20,153.153 INFO    ] 2026-06-27 04:57:20
[2026-06-27 04:57:20,367.367 INFO    ] 2026-06-27 04:57:20
[2026-06-27 04:57:20,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:57:20,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:57:20,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:57:20,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:57:20,786.786 INFO    ] time= 27/06/2026 04:57:20
[2026-06-27 04:57:20,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:57:20,814.814 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:57:20,879.879 INFO    ] No existing commands found in stream
[2026-06-27 04:57:25,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:57:25,892.892 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-27 04:57:28,392.392 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:57:28,394.394 INFO    ] Checking for system updates...
[2026-06-27 04:57:28,417.417 INFO    ] 200
[2026-06-27 04:57:28,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:57:28,448.448 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:57:28,450.450 INFO    ] No update needed
[2026-06-27 04:57:28,451.451 INFO    ] Checking for camera pi updates...
[2026-06-27 04:57:28,472.472 INFO    ] 200
[2026-06-27 04:57:28,474.474 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:57:28,497.497 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:57:28,539.539 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:57:28,540.540 INFO    ] No camera update needed
[2026-06-27 04:57:28,542.542 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:57:28,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:57:28,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:57:28,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:57:30,591.591 INFO    ] ================================================
[2026-06-27 04:57:30,606.606 INFO    ] Launching Daemon at Sat Jun 27 04:57:30 IST 2026
[2026-06-27 04:57:30,617.617 INFO    ] ================================================
[2026-06-27 04:57:30,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:57:30
[2026-06-27 04:57:31,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:57:31,438.438 INFO    ] Initializing speech engine...
[2026-06-27 04:57:31,443.443 INFO    ] 2026-06-27 04:57:31
[2026-06-27 04:57:31,656.656 INFO    ] 2026-06-27 04:57:31
[2026-06-27 04:57:31,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:57:31,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:57:31,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:57:32,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:57:32,171.171 INFO    ] time= 27/06/2026 04:57:32
[2026-06-27 04:57:32,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:57:32,223.223 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:57:32,327.327 INFO    ] No existing commands found in stream
[2026-06-27 04:57:37,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:57:37,339.339 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-27 04:57:41,454.454 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:57:41,455.455 INFO    ] Checking for system updates...
[2026-06-27 04:57:41,478.478 INFO    ] 200
[2026-06-27 04:57:41,479.479 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:57:41,512.512 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:57:41,514.514 INFO    ] No update needed
[2026-06-27 04:57:41,516.516 INFO    ] Checking for camera pi updates...
[2026-06-27 04:57:41,536.536 INFO    ] 200
[2026-06-27 04:57:41,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:57:41,563.563 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:57:41,710.710 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:57:41,712.712 INFO    ] No camera update needed
[2026-06-27 04:57:41,713.713 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:57:41,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:57:41,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:57:41,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:57:43,762.762 INFO    ] ================================================
[2026-06-27 04:57:43,778.778 INFO    ] Launching Daemon at Sat Jun 27 04:57:43 IST 2026
[2026-06-27 04:57:43,789.789 INFO    ] ================================================
[2026-06-27 04:57:44,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:57:44
[2026-06-27 04:57:44,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:57:44,620.620 INFO    ] Initializing speech engine...
[2026-06-27 04:57:44,633.633 INFO    ] 2026-06-27 04:57:44
[2026-06-27 04:57:44,840.840 INFO    ] 2026-06-27 04:57:44
[2026-06-27 04:57:44,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:57:45,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:57:45,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:57:45,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:57:45,282.282 INFO    ] time= 27/06/2026 04:57:45
[2026-06-27 04:57:45,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:57:45,289.289 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:57:45,356.356 INFO    ] No existing commands found in stream
[2026-06-27 04:57:50,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:57:50,373.373 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-27 04:57:52,248.248 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:57:52,249.249 INFO    ] Checking for system updates...
[2026-06-27 04:57:52,271.271 INFO    ] 200
[2026-06-27 04:57:52,273.273 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:57:52,304.304 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:57:52,305.305 INFO    ] No update needed
[2026-06-27 04:57:52,306.306 INFO    ] Checking for camera pi updates...
[2026-06-27 04:57:52,326.326 INFO    ] 200
[2026-06-27 04:57:52,327.327 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:57:52,352.352 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:57:52,394.394 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:57:52,395.395 INFO    ] No camera update needed
[2026-06-27 04:57:52,396.396 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:57:52,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:57:52,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:57:52,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:57:54,443.443 INFO    ] ================================================
[2026-06-27 04:57:54,459.459 INFO    ] Launching Daemon at Sat Jun 27 04:57:54 IST 2026
[2026-06-27 04:57:54,471.471 INFO    ] ================================================
[2026-06-27 04:57:54,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:57:54
[2026-06-27 04:57:55,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:57:55,252.252 INFO    ] Initializing speech engine...
[2026-06-27 04:57:55,257.257 INFO    ] 2026-06-27 04:57:55
[2026-06-27 04:57:55,460.460 INFO    ] 2026-06-27 04:57:55
[2026-06-27 04:57:55,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:57:55,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:57:55,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:57:55,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:57:55,899.899 INFO    ] time= 27/06/2026 04:57:55
[2026-06-27 04:57:55,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:57:55,907.907 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:57:55,973.973 INFO    ] No existing commands found in stream
[2026-06-27 04:58:00,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:58:00,985.985 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-27 04:58:03,301.301 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 04:58:03,303.303 INFO    ] Checking for system updates...
[2026-06-27 04:58:03,323.323 INFO    ] 200
[2026-06-27 04:58:03,325.325 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:58:03,356.356 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:58:03,357.357 INFO    ] No update needed
[2026-06-27 04:58:03,358.358 INFO    ] Checking for camera pi updates...
[2026-06-27 04:58:03,381.381 INFO    ] 200
[2026-06-27 04:58:03,383.383 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:58:03,407.407 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:58:03,448.448 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:58:03,449.449 INFO    ] No camera update needed
[2026-06-27 04:58:03,450.450 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:58:03,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:58:03,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:58:03,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:58:05,496.496 INFO    ] ================================================
[2026-06-27 04:58:05,512.512 INFO    ] Launching Daemon at Sat Jun 27 04:58:05 IST 2026
[2026-06-27 04:58:05,522.522 INFO    ] ================================================
[2026-06-27 04:58:05,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:58:05
[2026-06-27 04:58:06,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:58:06,346.346 INFO    ] Initializing speech engine...
[2026-06-27 04:58:06,352.352 INFO    ] 2026-06-27 04:58:06
[2026-06-27 04:58:06,557.557 INFO    ] 2026-06-27 04:58:06
[2026-06-27 04:58:06,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:58:06,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:58:06,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:58:06,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:58:06,996.996 INFO    ] time= 27/06/2026 04:58:06
[2026-06-27 04:58:07,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:58:07,003.003 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:58:07,068.068 INFO    ] No existing commands found in stream
[2026-06-27 04:58:12,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:58:12,081.081 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-27 04:58:13,399.399 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:58:13,400.400 INFO    ] Checking for system updates...
[2026-06-27 04:58:13,421.421 INFO    ] 200
[2026-06-27 04:58:13,422.422 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:58:13,455.455 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:58:13,457.457 INFO    ] No update needed
[2026-06-27 04:58:13,458.458 INFO    ] Checking for camera pi updates...
[2026-06-27 04:58:13,479.479 INFO    ] 200
[2026-06-27 04:58:13,480.480 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:58:13,503.503 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:58:13,545.545 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:58:13,546.546 INFO    ] No camera update needed
[2026-06-27 04:58:13,547.547 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:58:13,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:58:13,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:58:13,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:58:15,595.595 INFO    ] ================================================
[2026-06-27 04:58:15,610.610 INFO    ] Launching Daemon at Sat Jun 27 04:58:15 IST 2026
[2026-06-27 04:58:15,621.621 INFO    ] ================================================
[2026-06-27 04:58:16,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:58:16
[2026-06-27 04:58:16,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:58:16,485.485 INFO    ] Initializing speech engine...
[2026-06-27 04:58:16,497.497 INFO    ] 2026-06-27 04:58:16
[2026-06-27 04:58:16,713.713 INFO    ] 2026-06-27 04:58:16
[2026-06-27 04:58:16,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:58:16,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:58:16,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:58:17,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:58:17,138.138 INFO    ] time= 27/06/2026 04:58:17
[2026-06-27 04:58:17,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:58:17,166.166 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:58:17,233.233 INFO    ] No existing commands found in stream
[2026-06-27 04:58:22,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:58:22,269.269 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-27 04:58:26,376.376 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:58:26,377.377 INFO    ] Checking for system updates...
[2026-06-27 04:58:26,400.400 INFO    ] 200
[2026-06-27 04:58:26,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:58:26,434.434 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:58:26,435.435 INFO    ] No update needed
[2026-06-27 04:58:26,436.436 INFO    ] Checking for camera pi updates...
[2026-06-27 04:58:26,456.456 INFO    ] 200
[2026-06-27 04:58:26,458.458 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:58:26,482.482 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:58:26,529.529 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:58:26,531.531 INFO    ] No camera update needed
[2026-06-27 04:58:26,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:58:26,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:58:26,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:58:26,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:58:28,577.577 INFO    ] ================================================
[2026-06-27 04:58:28,593.593 INFO    ] Launching Daemon at Sat Jun 27 04:58:28 IST 2026
[2026-06-27 04:58:28,603.603 INFO    ] ================================================
[2026-06-27 04:58:28,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:58:28
[2026-06-27 04:58:29,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:58:29,407.407 INFO    ] Initializing speech engine...
[2026-06-27 04:58:29,412.412 INFO    ] 2026-06-27 04:58:29
[2026-06-27 04:58:29,621.621 INFO    ] 2026-06-27 04:58:29
[2026-06-27 04:58:29,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:58:29,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:58:29,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:58:29,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:58:30,044.044 INFO    ] time= 27/06/2026 04:58:30
[2026-06-27 04:58:30,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:58:30,071.071 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:58:30,139.139 INFO    ] No existing commands found in stream
[2026-06-27 04:58:35,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:58:35,158.158 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-27 04:58:38,285.285 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 04:58:38,287.287 INFO    ] Checking for system updates...
[2026-06-27 04:58:38,308.308 INFO    ] 200
[2026-06-27 04:58:38,309.309 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:58:38,342.342 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:58:38,344.344 INFO    ] No update needed
[2026-06-27 04:58:38,345.345 INFO    ] Checking for camera pi updates...
[2026-06-27 04:58:38,365.365 INFO    ] 200
[2026-06-27 04:58:38,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:58:38,390.390 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:58:38,425.425 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:58:38,427.427 INFO    ] No camera update needed
[2026-06-27 04:58:38,428.428 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:58:38,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:58:38,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:58:38,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:58:40,473.473 INFO    ] ================================================
[2026-06-27 04:58:40,488.488 INFO    ] Launching Daemon at Sat Jun 27 04:58:40 IST 2026
[2026-06-27 04:58:40,499.499 INFO    ] ================================================
[2026-06-27 04:58:40,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:58:40
[2026-06-27 04:58:41,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:58:41,366.366 INFO    ] Initializing speech engine...
[2026-06-27 04:58:41,371.371 INFO    ] 2026-06-27 04:58:41
[2026-06-27 04:58:41,580.580 INFO    ] 2026-06-27 04:58:41
[2026-06-27 04:58:41,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:58:41,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:58:41,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:58:42,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:58:42,025.025 INFO    ] time= 27/06/2026 04:58:42
[2026-06-27 04:58:42,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:58:42,032.032 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:58:42,100.100 INFO    ] No existing commands found in stream
[2026-06-27 04:58:47,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:58:47,117.117 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-27 04:58:51,328.328 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 04:58:51,329.329 INFO    ] Checking for system updates...
[2026-06-27 04:58:51,353.353 INFO    ] 200
[2026-06-27 04:58:51,355.355 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:58:51,388.388 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:58:51,389.389 INFO    ] No update needed
[2026-06-27 04:58:51,390.390 INFO    ] Checking for camera pi updates...
[2026-06-27 04:58:51,410.410 INFO    ] 200
[2026-06-27 04:58:51,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:58:51,439.439 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:58:51,479.479 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:58:51,481.481 INFO    ] No camera update needed
[2026-06-27 04:58:51,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:58:51,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:58:51,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:58:51,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:58:53,528.528 INFO    ] ================================================
[2026-06-27 04:58:53,542.542 INFO    ] Launching Daemon at Sat Jun 27 04:58:53 IST 2026
[2026-06-27 04:58:53,553.553 INFO    ] ================================================
[2026-06-27 04:58:53,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:58:53
[2026-06-27 04:58:54,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:58:54,359.359 INFO    ] Initializing speech engine...
[2026-06-27 04:58:54,364.364 INFO    ] 2026-06-27 04:58:54
[2026-06-27 04:58:54,582.582 INFO    ] 2026-06-27 04:58:54
[2026-06-27 04:58:54,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:58:54,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:58:54,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:58:54,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:58:55,028.028 INFO    ] time= 27/06/2026 04:58:55
[2026-06-27 04:58:55,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:58:55,035.035 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:58:55,102.102 INFO    ] No existing commands found in stream
[2026-06-27 04:59:00,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:59:00,115.115 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-27 04:59:01,619.619 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 04:59:01,620.620 INFO    ] Checking for system updates...
[2026-06-27 04:59:01,689.689 INFO    ] 200
[2026-06-27 04:59:01,691.691 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:59:01,771.771 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:59:01,774.774 INFO    ] No update needed
[2026-06-27 04:59:01,776.776 INFO    ] Checking for camera pi updates...
[2026-06-27 04:59:01,818.818 INFO    ] 200
[2026-06-27 04:59:01,820.820 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:59:01,869.869 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:59:01,895.895 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:59:01,897.897 INFO    ] No camera update needed
[2026-06-27 04:59:01,899.899 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:59:01,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:59:01,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:59:01,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:59:03,953.953 INFO    ] ================================================
[2026-06-27 04:59:03,968.968 INFO    ] Launching Daemon at Sat Jun 27 04:59:03 IST 2026
[2026-06-27 04:59:03,979.979 INFO    ] ================================================
[2026-06-27 04:59:04,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:59:04
[2026-06-27 04:59:04,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:59:04,748.748 INFO    ] Initializing speech engine...
[2026-06-27 04:59:04,753.753 INFO    ] 2026-06-27 04:59:04
[2026-06-27 04:59:04,969.969 INFO    ] 2026-06-27 04:59:04
[2026-06-27 04:59:04,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:59:05,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:59:05,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:59:05,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:59:05,325.325 INFO    ] time= 27/06/2026 04:59:05
[2026-06-27 04:59:05,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:59:05,415.415 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:59:05,487.487 INFO    ] No existing commands found in stream
[2026-06-27 04:59:10,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:59:10,499.499 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-27 04:59:11,667.667 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 04:59:11,668.668 INFO    ] Checking for system updates...
[2026-06-27 04:59:11,689.689 INFO    ] 200
[2026-06-27 04:59:11,690.690 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:59:11,721.721 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:59:11,722.722 INFO    ] No update needed
[2026-06-27 04:59:11,723.723 INFO    ] Checking for camera pi updates...
[2026-06-27 04:59:11,743.743 INFO    ] 200
[2026-06-27 04:59:11,744.744 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:59:11,770.770 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:59:11,819.819 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:59:11,821.821 INFO    ] No camera update needed
[2026-06-27 04:59:11,822.822 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:59:11,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:59:11,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:59:11,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:59:13,869.869 INFO    ] ================================================
[2026-06-27 04:59:13,885.885 INFO    ] Launching Daemon at Sat Jun 27 04:59:13 IST 2026
[2026-06-27 04:59:13,895.895 INFO    ] ================================================
[2026-06-27 04:59:14,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:59:14
[2026-06-27 04:59:14,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:59:14,732.732 INFO    ] Initializing speech engine...
[2026-06-27 04:59:14,746.746 INFO    ] 2026-06-27 04:59:14
[2026-06-27 04:59:14,955.955 INFO    ] 2026-06-27 04:59:14
[2026-06-27 04:59:14,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:59:15,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:59:15,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:59:15,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:59:15,379.379 INFO    ] time= 27/06/2026 04:59:15
[2026-06-27 04:59:15,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:59:15,419.419 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:59:15,488.488 INFO    ] No existing commands found in stream
[2026-06-27 04:59:20,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:59:20,506.506 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-27 04:59:21,924.924 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:59:21,926.926 INFO    ] Checking for system updates...
[2026-06-27 04:59:21,947.947 INFO    ] 200
[2026-06-27 04:59:21,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:59:21,983.983 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:59:21,984.984 INFO    ] No update needed
[2026-06-27 04:59:21,986.986 INFO    ] Checking for camera pi updates...
[2026-06-27 04:59:22,006.006 INFO    ] 200
[2026-06-27 04:59:22,008.008 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:59:22,031.031 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:59:22,067.067 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 04:59:22,069.069 INFO    ] No camera update needed
[2026-06-27 04:59:22,070.070 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:59:22,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:59:22,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:59:22,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:59:24,117.117 INFO    ] ================================================
[2026-06-27 04:59:24,132.132 INFO    ] Launching Daemon at Sat Jun 27 04:59:24 IST 2026
[2026-06-27 04:59:24,143.143 INFO    ] ================================================
[2026-06-27 04:59:24,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:59:24
[2026-06-27 04:59:24,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:59:25,029.029 INFO    ] Initializing speech engine...
[2026-06-27 04:59:25,035.035 INFO    ] 2026-06-27 04:59:25
[2026-06-27 04:59:25,243.243 INFO    ] 2026-06-27 04:59:25
[2026-06-27 04:59:25,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:59:25,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:59:25,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:59:25,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:59:25,663.663 INFO    ] time= 27/06/2026 04:59:25
[2026-06-27 04:59:25,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:59:25,690.690 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:59:25,755.755 INFO    ] No existing commands found in stream
[2026-06-27 04:59:30,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:59:30,769.769 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-27 04:59:35,054.054 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:59:35,055.055 INFO    ] Checking for system updates...
[2026-06-27 04:59:35,076.076 INFO    ] 200
[2026-06-27 04:59:35,078.078 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:59:35,109.109 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:59:35,111.111 INFO    ] No update needed
[2026-06-27 04:59:35,112.112 INFO    ] Checking for camera pi updates...
[2026-06-27 04:59:35,135.135 INFO    ] 200
[2026-06-27 04:59:35,137.137 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:59:35,161.161 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:59:35,198.198 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:59:35,199.199 INFO    ] No camera update needed
[2026-06-27 04:59:35,200.200 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:59:35,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:59:35,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:59:35,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:59:37,247.247 INFO    ] ================================================
[2026-06-27 04:59:37,264.264 INFO    ] Launching Daemon at Sat Jun 27 04:59:37 IST 2026
[2026-06-27 04:59:37,275.275 INFO    ] ================================================
[2026-06-27 04:59:37,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:59:37
[2026-06-27 04:59:38,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:59:38,144.144 INFO    ] Initializing speech engine...
[2026-06-27 04:59:38,156.156 INFO    ] 2026-06-27 04:59:38
[2026-06-27 04:59:38,368.368 INFO    ] 2026-06-27 04:59:38
[2026-06-27 04:59:38,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:59:38,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:59:38,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:59:38,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:59:38,809.809 INFO    ] time= 27/06/2026 04:59:38
[2026-06-27 04:59:38,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:59:38,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:59:38,884.884 INFO    ] No existing commands found in stream
[2026-06-27 04:59:43,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:59:43,897.897 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-27 04:59:45,375.375 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 04:59:45,377.377 INFO    ] Checking for system updates...
[2026-06-27 04:59:45,398.398 INFO    ] 200
[2026-06-27 04:59:45,399.399 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:59:45,430.430 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:59:45,432.432 INFO    ] No update needed
[2026-06-27 04:59:45,433.433 INFO    ] Checking for camera pi updates...
[2026-06-27 04:59:45,455.455 INFO    ] 200
[2026-06-27 04:59:45,457.457 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:59:45,483.483 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:59:45,641.641 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:59:45,642.642 INFO    ] No camera update needed
[2026-06-27 04:59:45,644.644 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:59:45,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:59:45,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:59:45,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 04:59:47,692.692 INFO    ] ================================================
[2026-06-27 04:59:47,708.708 INFO    ] Launching Daemon at Sat Jun 27 04:59:47 IST 2026
[2026-06-27 04:59:47,719.719 INFO    ] ================================================
[2026-06-27 04:59:48,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 04:59:48
[2026-06-27 04:59:48,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 04:59:48,484.484 INFO    ] Initializing speech engine...
[2026-06-27 04:59:48,491.491 INFO    ] 2026-06-27 04:59:48
[2026-06-27 04:59:48,703.703 INFO    ] 2026-06-27 04:59:48
[2026-06-27 04:59:48,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 04:59:48,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 04:59:48,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 04:59:49,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 04:59:49,120.120 INFO    ] time= 27/06/2026 04:59:49
[2026-06-27 04:59:49,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 04:59:49,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-27 04:59:49,216.216 INFO    ] No existing commands found in stream
[2026-06-27 04:59:54,225.225 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 04:59:54,228.228 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-27 04:59:58,571.571 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 04:59:58,573.573 INFO    ] Checking for system updates...
[2026-06-27 04:59:58,593.593 INFO    ] 200
[2026-06-27 04:59:58,595.595 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:59:58,626.626 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:59:58,627.627 INFO    ] No update needed
[2026-06-27 04:59:58,628.628 INFO    ] Checking for camera pi updates...
[2026-06-27 04:59:58,648.648 INFO    ] 200
[2026-06-27 04:59:58,649.649 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 04:59:58,673.673 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 04:59:58,715.715 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 04:59:58,716.716 INFO    ] No camera update needed
[2026-06-27 04:59:58,717.717 INFO    ] Script finished. Safe exiting...
[2026-06-27 04:59:58,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 04:59:58,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 04:59:58,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:00:00,765.765 INFO    ] ================================================
[2026-06-27 05:00:00,781.781 INFO    ] Launching Daemon at Sat Jun 27 05:00:00 IST 2026
[2026-06-27 05:00:00,792.792 INFO    ] ================================================
[2026-06-27 05:00:01,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:00:01
[2026-06-27 05:00:01,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:00:01,569.569 INFO    ] Initializing speech engine...
[2026-06-27 05:00:01,572.572 INFO    ] 2026-06-27 05:00:01
[2026-06-27 05:00:01,799.799 INFO    ] 2026-06-27 05:00:01
[2026-06-27 05:00:01,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:00:02,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:00:02,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:00:02,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:00:02,384.384 INFO    ] time= 27/06/2026 05:00:02
[2026-06-27 05:00:02,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:00:02,398.398 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:00:02,550.550 INFO    ] No existing commands found in stream
[2026-06-27 05:00:07,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:00:07,564.564 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-27 05:00:10,947.947 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 05:00:10,949.949 INFO    ] Checking for system updates...
[2026-06-27 05:00:10,970.970 INFO    ] 200
[2026-06-27 05:00:10,972.972 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:00:11,003.003 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:00:11,004.004 INFO    ] No update needed
[2026-06-27 05:00:11,006.006 INFO    ] Checking for camera pi updates...
[2026-06-27 05:00:11,028.028 INFO    ] 200
[2026-06-27 05:00:11,029.029 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:00:11,056.056 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:00:11,099.099 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:00:11,101.101 INFO    ] No camera update needed
[2026-06-27 05:00:11,102.102 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:00:11,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:00:11,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:00:11,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:00:13,149.149 INFO    ] ================================================
[2026-06-27 05:00:13,165.165 INFO    ] Launching Daemon at Sat Jun 27 05:00:13 IST 2026
[2026-06-27 05:00:13,176.176 INFO    ] ================================================
[2026-06-27 05:00:13,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:00:13
[2026-06-27 05:00:13,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:00:13,962.962 INFO    ] Initializing speech engine...
[2026-06-27 05:00:13,966.966 INFO    ] 2026-06-27 05:00:13
[2026-06-27 05:00:14,183.183 INFO    ] 2026-06-27 05:00:14
[2026-06-27 05:00:14,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:00:14,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:00:14,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:00:14,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:00:14,512.512 INFO    ] time= 27/06/2026 05:00:14
[2026-06-27 05:00:14,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:00:14,545.545 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:00:14,635.635 INFO    ] No existing commands found in stream
[2026-06-27 05:00:19,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:00:19,651.651 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-27 05:00:20,442.442 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:00:20,444.444 INFO    ] Checking for system updates...
[2026-06-27 05:00:20,465.465 INFO    ] 200
[2026-06-27 05:00:20,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:00:20,520.520 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:00:20,522.522 INFO    ] No update needed
[2026-06-27 05:00:20,523.523 INFO    ] Checking for camera pi updates...
[2026-06-27 05:00:20,543.543 INFO    ] 200
[2026-06-27 05:00:20,545.545 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:00:20,569.569 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:00:20,605.605 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:00:20,607.607 INFO    ] No camera update needed
[2026-06-27 05:00:20,608.608 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:00:20,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:00:20,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:00:20,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:00:22,654.654 INFO    ] ================================================
[2026-06-27 05:00:22,669.669 INFO    ] Launching Daemon at Sat Jun 27 05:00:22 IST 2026
[2026-06-27 05:00:22,680.680 INFO    ] ================================================
[2026-06-27 05:00:23,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:00:23
[2026-06-27 05:00:23,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:00:23,493.493 INFO    ] Initializing speech engine...
[2026-06-27 05:00:23,496.496 INFO    ] 2026-06-27 05:00:23
[2026-06-27 05:00:23,716.716 INFO    ] 2026-06-27 05:00:23
[2026-06-27 05:00:23,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:00:23,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:00:23,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:00:24,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:00:24,161.161 INFO    ] time= 27/06/2026 05:00:24
[2026-06-27 05:00:24,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:00:24,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:00:24,234.234 INFO    ] No existing commands found in stream
[2026-06-27 05:00:29,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:00:29,248.248 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-27 05:00:31,797.797 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 05:00:31,798.798 INFO    ] Checking for system updates...
[2026-06-27 05:00:31,819.819 INFO    ] 200
[2026-06-27 05:00:31,820.820 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:00:31,854.854 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:00:31,855.855 INFO    ] No update needed
[2026-06-27 05:00:31,856.856 INFO    ] Checking for camera pi updates...
[2026-06-27 05:00:31,876.876 INFO    ] 200
[2026-06-27 05:00:31,877.877 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:00:31,900.900 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:00:31,932.932 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:00:31,934.934 INFO    ] No camera update needed
[2026-06-27 05:00:31,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:00:31,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:00:31,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:00:31,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:00:33,974.974 INFO    ] ================================================
[2026-06-27 05:00:33,989.989 INFO    ] Launching Daemon at Sat Jun 27 05:00:33 IST 2026
[2026-06-27 05:00:34,000.000 INFO    ] ================================================
[2026-06-27 05:00:34,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:00:34
[2026-06-27 05:00:34,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:00:34,865.865 INFO    ] Initializing speech engine...
[2026-06-27 05:00:34,870.870 INFO    ] 2026-06-27 05:00:34
[2026-06-27 05:00:35,080.080 INFO    ] 2026-06-27 05:00:35
[2026-06-27 05:00:35,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:00:35,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:00:35,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:00:35,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:00:35,528.528 INFO    ] time= 27/06/2026 05:00:35
[2026-06-27 05:00:35,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:00:35,536.536 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:00:35,603.603 INFO    ] No existing commands found in stream
[2026-06-27 05:00:40,617.617 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:00:40,621.621 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-27 05:00:41,561.561 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 05:00:41,563.563 INFO    ] Checking for system updates...
[2026-06-27 05:00:41,584.584 INFO    ] 200
[2026-06-27 05:00:41,585.585 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:00:41,616.616 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:00:41,617.617 INFO    ] No update needed
[2026-06-27 05:00:41,619.619 INFO    ] Checking for camera pi updates...
[2026-06-27 05:00:41,638.638 INFO    ] 200
[2026-06-27 05:00:41,639.639 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:00:41,665.665 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:00:41,723.723 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:00:41,724.724 INFO    ] No camera update needed
[2026-06-27 05:00:41,725.725 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:00:41,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:00:41,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:00:41,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:00:43,772.772 INFO    ] ================================================
[2026-06-27 05:00:43,787.787 INFO    ] Launching Daemon at Sat Jun 27 05:00:43 IST 2026
[2026-06-27 05:00:43,798.798 INFO    ] ================================================
[2026-06-27 05:00:44,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:00:44
[2026-06-27 05:00:44,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:00:44,601.601 INFO    ] Initializing speech engine...
[2026-06-27 05:00:44,606.606 INFO    ] 2026-06-27 05:00:44
[2026-06-27 05:00:44,824.824 INFO    ] 2026-06-27 05:00:44
[2026-06-27 05:00:44,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:00:45,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:00:45,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:00:45,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:00:45,268.268 INFO    ] time= 27/06/2026 05:00:45
[2026-06-27 05:00:45,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:00:45,317.317 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:00:45,393.393 INFO    ] No existing commands found in stream
[2026-06-27 05:00:50,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:00:50,407.407 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-27 05:00:54,021.021 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:00:54,022.022 INFO    ] Checking for system updates...
[2026-06-27 05:00:54,046.046 INFO    ] 200
[2026-06-27 05:00:54,047.047 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:00:54,078.078 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:00:54,080.080 INFO    ] No update needed
[2026-06-27 05:00:54,081.081 INFO    ] Checking for camera pi updates...
[2026-06-27 05:00:54,101.101 INFO    ] 200
[2026-06-27 05:00:54,103.103 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:00:54,132.132 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:00:54,157.157 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:00:54,159.159 INFO    ] No camera update needed
[2026-06-27 05:00:54,160.160 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:00:54,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:00:54,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:00:54,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:00:56,209.209 INFO    ] ================================================
[2026-06-27 05:00:56,224.224 INFO    ] Launching Daemon at Sat Jun 27 05:00:56 IST 2026
[2026-06-27 05:00:56,235.235 INFO    ] ================================================
[2026-06-27 05:00:56,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:00:56
[2026-06-27 05:00:56,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:00:57,048.048 INFO    ] Initializing speech engine...
[2026-06-27 05:00:57,061.061 INFO    ] 2026-06-27 05:00:57
[2026-06-27 05:00:57,268.268 INFO    ] 2026-06-27 05:00:57
[2026-06-27 05:00:57,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:00:57,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:00:57,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:00:57,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:00:57,708.708 INFO    ] time= 27/06/2026 05:00:57
[2026-06-27 05:00:57,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:00:57,715.715 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:00:57,782.782 INFO    ] No existing commands found in stream
[2026-06-27 05:01:02,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:01:02,816.816 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-27 05:01:06,049.049 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 05:01:06,050.050 INFO    ] Checking for system updates...
[2026-06-27 05:01:06,071.071 INFO    ] 200
[2026-06-27 05:01:06,073.073 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:01:06,104.104 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:01:06,105.105 INFO    ] No update needed
[2026-06-27 05:01:06,107.107 INFO    ] Checking for camera pi updates...
[2026-06-27 05:01:06,127.127 INFO    ] 200
[2026-06-27 05:01:06,128.128 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:01:06,167.167 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:01:06,208.208 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:01:06,209.209 INFO    ] No camera update needed
[2026-06-27 05:01:06,210.210 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:01:06,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:01:06,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:01:06,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:01:08,260.260 INFO    ] ================================================
[2026-06-27 05:01:08,276.276 INFO    ] Launching Daemon at Sat Jun 27 05:01:08 IST 2026
[2026-06-27 05:01:08,284.284 INFO    ] ================================================
[2026-06-27 05:01:08,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:01:08
[2026-06-27 05:01:08,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:01:09,127.127 INFO    ] Initializing speech engine...
[2026-06-27 05:01:09,132.132 INFO    ] 2026-06-27 05:01:09
[2026-06-27 05:01:09,349.349 INFO    ] 2026-06-27 05:01:09
[2026-06-27 05:01:09,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:01:09,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:01:09,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:01:09,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:01:09,795.795 INFO    ] time= 27/06/2026 05:01:09
[2026-06-27 05:01:09,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:01:09,825.825 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:01:09,890.890 INFO    ] No existing commands found in stream
[2026-06-27 05:01:14,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:01:14,904.904 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-27 05:01:15,303.303 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:01:15,305.305 INFO    ] Checking for system updates...
[2026-06-27 05:01:15,328.328 INFO    ] 200
[2026-06-27 05:01:15,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:01:15,360.360 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:01:15,361.361 INFO    ] No update needed
[2026-06-27 05:01:15,362.362 INFO    ] Checking for camera pi updates...
[2026-06-27 05:01:15,382.382 INFO    ] 200
[2026-06-27 05:01:15,384.384 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:01:15,407.407 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:01:15,443.443 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:01:15,445.445 INFO    ] No camera update needed
[2026-06-27 05:01:15,446.446 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:01:15,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:01:15,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:01:15,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:01:17,493.493 INFO    ] ================================================
[2026-06-27 05:01:17,509.509 INFO    ] Launching Daemon at Sat Jun 27 05:01:17 IST 2026
[2026-06-27 05:01:17,519.519 INFO    ] ================================================
[2026-06-27 05:01:17,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:01:17
[2026-06-27 05:01:18,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:01:18,347.347 INFO    ] Initializing speech engine...
[2026-06-27 05:01:18,352.352 INFO    ] 2026-06-27 05:01:18
[2026-06-27 05:01:18,557.557 INFO    ] 2026-06-27 05:01:18
[2026-06-27 05:01:18,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:01:18,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:01:18,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:01:18,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:01:18,979.979 INFO    ] time= 27/06/2026 05:01:18
[2026-06-27 05:01:19,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:01:19,007.007 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:01:19,073.073 INFO    ] No existing commands found in stream
[2026-06-27 05:01:24,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:01:24,086.086 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-27 05:01:25,056.056 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 05:01:25,058.058 INFO    ] Checking for system updates...
[2026-06-27 05:01:25,080.080 INFO    ] 200
[2026-06-27 05:01:25,081.081 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:01:25,114.114 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:01:25,115.115 INFO    ] No update needed
[2026-06-27 05:01:25,116.116 INFO    ] Checking for camera pi updates...
[2026-06-27 05:01:25,136.136 INFO    ] 200
[2026-06-27 05:01:25,137.137 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:01:25,161.161 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:01:25,198.198 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:01:25,200.200 INFO    ] No camera update needed
[2026-06-27 05:01:25,201.201 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:01:25,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:01:25,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:01:25,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:01:27,246.246 INFO    ] ================================================
[2026-06-27 05:01:27,261.261 INFO    ] Launching Daemon at Sat Jun 27 05:01:27 IST 2026
[2026-06-27 05:01:27,272.272 INFO    ] ================================================
[2026-06-27 05:01:27,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:01:27
[2026-06-27 05:01:27,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:01:28,075.075 INFO    ] Initializing speech engine...
[2026-06-27 05:01:28,079.079 INFO    ] 2026-06-27 05:01:28
[2026-06-27 05:01:28,284.284 INFO    ] 2026-06-27 05:01:28
[2026-06-27 05:01:28,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:01:28,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:01:28,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:01:28,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:01:28,707.707 INFO    ] time= 27/06/2026 05:01:28
[2026-06-27 05:01:28,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:01:28,736.736 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:01:28,803.803 INFO    ] No existing commands found in stream
[2026-06-27 05:01:33,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:01:33,820.820 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-27 05:01:34,930.930 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 05:01:34,932.932 INFO    ] Checking for system updates...
[2026-06-27 05:01:34,952.952 INFO    ] 200
[2026-06-27 05:01:34,954.954 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:01:34,986.986 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:01:34,987.987 INFO    ] No update needed
[2026-06-27 05:01:34,988.988 INFO    ] Checking for camera pi updates...
[2026-06-27 05:01:35,015.015 INFO    ] 200
[2026-06-27 05:01:35,016.016 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:01:35,041.041 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:01:35,078.078 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:01:35,080.080 INFO    ] No camera update needed
[2026-06-27 05:01:35,081.081 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:01:35,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:01:35,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:01:35,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:01:37,132.132 INFO    ] ================================================
[2026-06-27 05:01:37,148.148 INFO    ] Launching Daemon at Sat Jun 27 05:01:37 IST 2026
[2026-06-27 05:01:37,158.158 INFO    ] ================================================
[2026-06-27 05:01:37,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:01:37
[2026-06-27 05:01:37,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:01:37,942.942 INFO    ] Initializing speech engine...
[2026-06-27 05:01:37,950.950 INFO    ] 2026-06-27 05:01:37
[2026-06-27 05:01:38,159.159 INFO    ] 2026-06-27 05:01:38
[2026-06-27 05:01:38,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:01:38,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:01:38,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:01:38,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:01:38,609.609 INFO    ] time= 27/06/2026 05:01:38
[2026-06-27 05:01:38,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:01:38,617.617 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:01:38,683.683 INFO    ] No existing commands found in stream
[2026-06-27 05:01:43,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:01:43,697.697 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-27 05:01:45,248.248 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:01:45,249.249 INFO    ] Checking for system updates...
[2026-06-27 05:01:45,271.271 INFO    ] 200
[2026-06-27 05:01:45,273.273 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:01:45,303.303 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:01:45,305.305 INFO    ] No update needed
[2026-06-27 05:01:45,306.306 INFO    ] Checking for camera pi updates...
[2026-06-27 05:01:45,329.329 INFO    ] 200
[2026-06-27 05:01:45,331.331 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:01:45,357.357 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:01:45,398.398 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:01:45,399.399 INFO    ] No camera update needed
[2026-06-27 05:01:45,401.401 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:01:45,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:01:45,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:01:45,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:01:47,442.442 INFO    ] ================================================
[2026-06-27 05:01:47,452.452 INFO    ] Launching Daemon at Sat Jun 27 05:01:47 IST 2026
[2026-06-27 05:01:47,459.459 INFO    ] ================================================
[2026-06-27 05:01:47,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:01:47
[2026-06-27 05:01:48,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:01:48,279.279 INFO    ] Initializing speech engine...
[2026-06-27 05:01:48,285.285 INFO    ] 2026-06-27 05:01:48
[2026-06-27 05:01:48,498.498 INFO    ] 2026-06-27 05:01:48
[2026-06-27 05:01:48,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:01:48,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:01:48,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:01:48,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:01:48,959.959 INFO    ] time= 27/06/2026 05:01:48
[2026-06-27 05:01:48,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:01:48,967.967 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:01:49,035.035 INFO    ] No existing commands found in stream
[2026-06-27 05:01:54,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:01:54,058.058 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-27 05:01:55,637.637 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 05:01:55,639.639 INFO    ] Checking for system updates...
[2026-06-27 05:01:55,661.661 INFO    ] 200
[2026-06-27 05:01:55,663.663 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:01:55,693.693 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:01:55,695.695 INFO    ] No update needed
[2026-06-27 05:01:55,696.696 INFO    ] Checking for camera pi updates...
[2026-06-27 05:01:55,715.715 INFO    ] 200
[2026-06-27 05:01:55,717.717 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:01:55,743.743 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:01:55,888.888 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:01:55,889.889 INFO    ] No camera update needed
[2026-06-27 05:01:55,890.890 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:01:55,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:01:55,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:01:55,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:01:57,929.929 INFO    ] ================================================
[2026-06-27 05:01:57,946.946 INFO    ] Launching Daemon at Sat Jun 27 05:01:57 IST 2026
[2026-06-27 05:01:57,957.957 INFO    ] ================================================
[2026-06-27 05:01:58,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:01:58
[2026-06-27 05:01:58,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:01:58,781.781 INFO    ] Initializing speech engine...
[2026-06-27 05:01:58,792.792 INFO    ] 2026-06-27 05:01:58
[2026-06-27 05:01:58,998.998 INFO    ] 2026-06-27 05:01:58
[2026-06-27 05:01:59,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:01:59,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:01:59,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:01:59,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:01:59,418.418 INFO    ] time= 27/06/2026 05:01:59
[2026-06-27 05:01:59,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:01:59,448.448 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:01:59,516.516 INFO    ] No existing commands found in stream
[2026-06-27 05:02:04,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:02:04,533.533 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-27 05:02:06,124.124 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:02:06,125.125 INFO    ] Checking for system updates...
[2026-06-27 05:02:06,146.146 INFO    ] 200
[2026-06-27 05:02:06,148.148 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:02:06,181.181 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:02:06,183.183 INFO    ] No update needed
[2026-06-27 05:02:06,184.184 INFO    ] Checking for camera pi updates...
[2026-06-27 05:02:06,204.204 INFO    ] 200
[2026-06-27 05:02:06,205.205 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:02:06,231.231 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:02:06,272.272 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:02:06,273.273 INFO    ] No camera update needed
[2026-06-27 05:02:06,275.275 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:02:06,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:02:06,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:02:06,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:02:08,321.321 INFO    ] ================================================
[2026-06-27 05:02:08,337.337 INFO    ] Launching Daemon at Sat Jun 27 05:02:08 IST 2026
[2026-06-27 05:02:08,348.348 INFO    ] ================================================
[2026-06-27 05:02:08,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:02:08
[2026-06-27 05:02:09,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:02:09,178.178 INFO    ] Initializing speech engine...
[2026-06-27 05:02:09,187.187 INFO    ] 2026-06-27 05:02:09
[2026-06-27 05:02:09,380.380 INFO    ] 2026-06-27 05:02:09
[2026-06-27 05:02:09,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:02:09,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:02:09,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:02:09,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:02:09,857.857 INFO    ] time= 27/06/2026 05:02:09
[2026-06-27 05:02:09,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:02:09,899.899 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:02:09,977.977 INFO    ] No existing commands found in stream
[2026-06-27 05:02:15,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:02:15,002.002 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-27 05:02:17,818.818 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 05:02:17,819.819 INFO    ] Checking for system updates...
[2026-06-27 05:02:17,840.840 INFO    ] 200
[2026-06-27 05:02:17,841.841 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:02:17,872.872 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:02:17,873.873 INFO    ] No update needed
[2026-06-27 05:02:17,875.875 INFO    ] Checking for camera pi updates...
[2026-06-27 05:02:17,894.894 INFO    ] 200
[2026-06-27 05:02:17,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:02:17,919.919 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:02:17,955.955 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:02:17,957.957 INFO    ] No camera update needed
[2026-06-27 05:02:17,958.958 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:02:17,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:02:17,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:02:17,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:02:20,005.005 INFO    ] ================================================
[2026-06-27 05:02:20,021.021 INFO    ] Launching Daemon at Sat Jun 27 05:02:20 IST 2026
[2026-06-27 05:02:20,033.033 INFO    ] ================================================
[2026-06-27 05:02:20,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:02:20
[2026-06-27 05:02:20,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:02:20,890.890 INFO    ] Initializing speech engine...
[2026-06-27 05:02:20,896.896 INFO    ] 2026-06-27 05:02:20
[2026-06-27 05:02:21,117.117 INFO    ] 2026-06-27 05:02:21
[2026-06-27 05:02:21,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:02:21,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:02:21,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:02:21,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:02:21,526.526 INFO    ] time= 27/06/2026 05:02:21
[2026-06-27 05:02:21,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:02:21,577.577 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:02:21,645.645 INFO    ] No existing commands found in stream
[2026-06-27 05:02:26,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:02:26,662.662 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-27 05:02:27,911.911 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 05:02:27,913.913 INFO    ] Checking for system updates...
[2026-06-27 05:02:27,934.934 INFO    ] 200
[2026-06-27 05:02:27,935.935 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:02:27,970.970 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:02:27,971.971 INFO    ] No update needed
[2026-06-27 05:02:27,973.973 INFO    ] Checking for camera pi updates...
[2026-06-27 05:02:27,993.993 INFO    ] 200
[2026-06-27 05:02:27,995.995 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:02:28,020.020 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:02:28,062.062 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:02:28,064.064 INFO    ] No camera update needed
[2026-06-27 05:02:28,065.065 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:02:28,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:02:28,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:02:28,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:02:30,112.112 INFO    ] ================================================
[2026-06-27 05:02:30,128.128 INFO    ] Launching Daemon at Sat Jun 27 05:02:30 IST 2026
[2026-06-27 05:02:30,139.139 INFO    ] ================================================
[2026-06-27 05:02:30,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:02:30
[2026-06-27 05:02:30,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:02:30,991.991 INFO    ] Initializing speech engine...
[2026-06-27 05:02:30,996.996 INFO    ] 2026-06-27 05:02:30
[2026-06-27 05:02:31,209.209 INFO    ] 2026-06-27 05:02:31
[2026-06-27 05:02:31,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:02:31,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:02:31,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:02:31,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:02:31,686.686 INFO    ] time= 27/06/2026 05:02:31
[2026-06-27 05:02:31,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:02:31,704.704 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:02:31,775.775 INFO    ] No existing commands found in stream
[2026-06-27 05:02:36,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:02:36,798.798 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-27 05:02:40,163.163 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 05:02:40,165.165 INFO    ] Checking for system updates...
[2026-06-27 05:02:40,188.188 INFO    ] 200
[2026-06-27 05:02:40,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:02:40,223.223 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:02:40,225.225 INFO    ] No update needed
[2026-06-27 05:02:40,229.229 INFO    ] Checking for camera pi updates...
[2026-06-27 05:02:40,251.251 INFO    ] 200
[2026-06-27 05:02:40,252.252 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:02:40,280.280 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:02:40,321.321 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:02:40,322.322 INFO    ] No camera update needed
[2026-06-27 05:02:40,324.324 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:02:40,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:02:40,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:02:40,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:02:42,369.369 INFO    ] ================================================
[2026-06-27 05:02:42,385.385 INFO    ] Launching Daemon at Sat Jun 27 05:02:42 IST 2026
[2026-06-27 05:02:42,396.396 INFO    ] ================================================
[2026-06-27 05:02:42,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:02:42
[2026-06-27 05:02:43,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:02:43,278.278 INFO    ] Initializing speech engine...
[2026-06-27 05:02:43,283.283 INFO    ] 2026-06-27 05:02:43
[2026-06-27 05:02:43,492.492 INFO    ] 2026-06-27 05:02:43
[2026-06-27 05:02:43,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:02:43,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:02:43,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:02:43,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:02:43,934.934 INFO    ] time= 27/06/2026 05:02:43
[2026-06-27 05:02:43,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:02:43,941.941 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:02:44,009.009 INFO    ] No existing commands found in stream
[2026-06-27 05:02:49,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:02:49,024.024 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-27 05:02:52,483.483 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:02:52,485.485 INFO    ] Checking for system updates...
[2026-06-27 05:02:52,511.511 INFO    ] 200
[2026-06-27 05:02:52,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:02:52,548.548 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:02:52,549.549 INFO    ] No update needed
[2026-06-27 05:02:52,550.550 INFO    ] Checking for camera pi updates...
[2026-06-27 05:02:52,569.569 INFO    ] 200
[2026-06-27 05:02:52,571.571 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:02:52,595.595 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:02:52,633.633 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:02:52,635.635 INFO    ] No camera update needed
[2026-06-27 05:02:52,636.636 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:02:52,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:02:52,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:02:52,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:02:54,684.684 INFO    ] ================================================
[2026-06-27 05:02:54,700.700 INFO    ] Launching Daemon at Sat Jun 27 05:02:54 IST 2026
[2026-06-27 05:02:54,712.712 INFO    ] ================================================
[2026-06-27 05:02:55,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:02:55
[2026-06-27 05:02:55,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:02:55,510.510 INFO    ] Initializing speech engine...
[2026-06-27 05:02:55,515.515 INFO    ] 2026-06-27 05:02:55
[2026-06-27 05:02:55,740.740 INFO    ] 2026-06-27 05:02:55
[2026-06-27 05:02:55,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:02:55,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:02:55,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:02:56,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:02:56,160.160 INFO    ] time= 27/06/2026 05:02:56
[2026-06-27 05:02:56,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:02:56,189.189 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:02:56,255.255 INFO    ] No existing commands found in stream
[2026-06-27 05:03:01,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:03:01,268.268 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-27 05:03:03,168.168 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 05:03:03,170.170 INFO    ] Checking for system updates...
[2026-06-27 05:03:03,211.211 INFO    ] 200
[2026-06-27 05:03:03,214.214 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:03:03,271.271 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:03:03,273.273 INFO    ] No update needed
[2026-06-27 05:03:03,276.276 INFO    ] Checking for camera pi updates...
[2026-06-27 05:03:03,315.315 INFO    ] 200
[2026-06-27 05:03:03,317.317 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:03:03,359.359 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:03:03,400.400 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:03:03,402.402 INFO    ] No camera update needed
[2026-06-27 05:03:03,405.405 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:03:03,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:03:03,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:03:03,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:03:05,457.457 INFO    ] ================================================
[2026-06-27 05:03:05,472.472 INFO    ] Launching Daemon at Sat Jun 27 05:03:05 IST 2026
[2026-06-27 05:03:05,483.483 INFO    ] ================================================
[2026-06-27 05:03:05,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:03:05
[2026-06-27 05:03:06,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:03:06,301.301 INFO    ] Initializing speech engine...
[2026-06-27 05:03:06,309.309 INFO    ] 2026-06-27 05:03:06
[2026-06-27 05:03:06,524.524 INFO    ] 2026-06-27 05:03:06
[2026-06-27 05:03:06,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:03:06,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:03:06,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:03:06,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:03:06,927.927 INFO    ] time= 27/06/2026 05:03:06
[2026-06-27 05:03:06,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:03:06,967.967 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:03:07,037.037 INFO    ] No existing commands found in stream
[2026-06-27 05:03:12,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:03:12,049.049 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-27 05:03:13,422.422 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 05:03:13,423.423 INFO    ] Checking for system updates...
[2026-06-27 05:03:13,444.444 INFO    ] 200
[2026-06-27 05:03:13,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:03:13,476.476 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:03:13,477.477 INFO    ] No update needed
[2026-06-27 05:03:13,479.479 INFO    ] Checking for camera pi updates...
[2026-06-27 05:03:13,499.499 INFO    ] 200
[2026-06-27 05:03:13,500.500 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:03:13,525.525 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:03:13,565.565 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:03:13,567.567 INFO    ] No camera update needed
[2026-06-27 05:03:13,568.568 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:03:13,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:03:13,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:03:13,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:03:15,618.618 INFO    ] ================================================
[2026-06-27 05:03:15,632.632 INFO    ] Launching Daemon at Sat Jun 27 05:03:15 IST 2026
[2026-06-27 05:03:15,643.643 INFO    ] ================================================
[2026-06-27 05:03:15,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:03:15
[2026-06-27 05:03:16,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:03:16,441.441 INFO    ] Initializing speech engine...
[2026-06-27 05:03:16,446.446 INFO    ] 2026-06-27 05:03:16
[2026-06-27 05:03:16,649.649 INFO    ] 2026-06-27 05:03:16
[2026-06-27 05:03:16,678.678 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:03:16,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:03:16,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:03:17,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:03:17,070.070 INFO    ] time= 27/06/2026 05:03:17
[2026-06-27 05:03:17,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:03:17,097.097 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:03:17,163.163 INFO    ] No existing commands found in stream
[2026-06-27 05:03:22,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:03:22,176.176 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-27 05:03:23,700.700 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:03:23,702.702 INFO    ] Checking for system updates...
[2026-06-27 05:03:23,723.723 INFO    ] 200
[2026-06-27 05:03:23,725.725 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:03:23,756.756 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:03:23,757.757 INFO    ] No update needed
[2026-06-27 05:03:23,759.759 INFO    ] Checking for camera pi updates...
[2026-06-27 05:03:23,779.779 INFO    ] 200
[2026-06-27 05:03:23,780.780 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:03:23,805.805 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:03:23,843.843 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:03:23,844.844 INFO    ] No camera update needed
[2026-06-27 05:03:23,846.846 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:03:23,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:03:23,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:03:23,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:03:25,894.894 INFO    ] ================================================
[2026-06-27 05:03:25,910.910 INFO    ] Launching Daemon at Sat Jun 27 05:03:25 IST 2026
[2026-06-27 05:03:25,921.921 INFO    ] ================================================
[2026-06-27 05:03:26,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:03:26
[2026-06-27 05:03:26,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:03:26,710.710 INFO    ] Initializing speech engine...
[2026-06-27 05:03:26,716.716 INFO    ] 2026-06-27 05:03:26
[2026-06-27 05:03:26,910.910 INFO    ] 2026-06-27 05:03:26
[2026-06-27 05:03:26,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:03:27,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:03:27,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:03:27,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:03:27,397.397 INFO    ] time= 27/06/2026 05:03:27
[2026-06-27 05:03:27,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:03:27,445.445 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:03:27,524.524 INFO    ] No existing commands found in stream
[2026-06-27 05:03:32,532.532 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:03:32,535.535 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-27 05:03:35,290.290 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 05:03:35,292.292 INFO    ] Checking for system updates...
[2026-06-27 05:03:35,319.319 INFO    ] 200
[2026-06-27 05:03:35,320.320 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:03:35,354.354 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:03:35,356.356 INFO    ] No update needed
[2026-06-27 05:03:35,357.357 INFO    ] Checking for camera pi updates...
[2026-06-27 05:03:35,379.379 INFO    ] 200
[2026-06-27 05:03:35,380.380 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:03:35,406.406 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:03:35,446.446 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:03:35,447.447 INFO    ] No camera update needed
[2026-06-27 05:03:35,448.448 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:03:35,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:03:35,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:03:35,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:03:37,495.495 INFO    ] ================================================
[2026-06-27 05:03:37,510.510 INFO    ] Launching Daemon at Sat Jun 27 05:03:37 IST 2026
[2026-06-27 05:03:37,522.522 INFO    ] ================================================
[2026-06-27 05:03:37,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:03:37
[2026-06-27 05:03:38,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:03:38,331.331 INFO    ] Initializing speech engine...
[2026-06-27 05:03:38,341.341 INFO    ] 2026-06-27 05:03:38
[2026-06-27 05:03:38,548.548 INFO    ] 2026-06-27 05:03:38
[2026-06-27 05:03:38,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:03:38,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:03:38,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:03:38,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:03:38,994.994 INFO    ] time= 27/06/2026 05:03:38
[2026-06-27 05:03:38,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:03:39,001.001 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:03:39,069.069 INFO    ] No existing commands found in stream
[2026-06-27 05:03:44,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:03:44,079.079 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-27 05:03:46,723.723 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:03:46,724.724 INFO    ] Checking for system updates...
[2026-06-27 05:03:46,746.746 INFO    ] 200
[2026-06-27 05:03:46,748.748 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:03:46,778.778 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:03:46,780.780 INFO    ] No update needed
[2026-06-27 05:03:46,781.781 INFO    ] Checking for camera pi updates...
[2026-06-27 05:03:46,800.800 INFO    ] 200
[2026-06-27 05:03:46,801.801 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:03:46,826.826 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:03:46,864.864 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:03:46,865.865 INFO    ] No camera update needed
[2026-06-27 05:03:46,867.867 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:03:46,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:03:46,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:03:46,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:03:48,912.912 INFO    ] ================================================
[2026-06-27 05:03:48,928.928 INFO    ] Launching Daemon at Sat Jun 27 05:03:48 IST 2026
[2026-06-27 05:03:48,940.940 INFO    ] ================================================
[2026-06-27 05:03:49,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:03:49
[2026-06-27 05:03:49,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:03:49,744.744 INFO    ] Initializing speech engine...
[2026-06-27 05:03:49,755.755 INFO    ] 2026-06-27 05:03:49
[2026-06-27 05:03:49,955.955 INFO    ] 2026-06-27 05:03:49
[2026-06-27 05:03:49,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:03:50,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:03:50,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:03:50,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:03:50,432.432 INFO    ] time= 27/06/2026 05:03:50
[2026-06-27 05:03:50,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:03:50,474.474 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:03:50,579.579 INFO    ] No existing commands found in stream
[2026-06-27 05:03:55,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:03:55,592.592 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-27 05:03:58,071.071 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:03:58,072.072 INFO    ] Checking for system updates...
[2026-06-27 05:03:58,093.093 INFO    ] 200
[2026-06-27 05:03:58,095.095 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:03:58,129.129 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:03:58,130.130 INFO    ] No update needed
[2026-06-27 05:03:58,131.131 INFO    ] Checking for camera pi updates...
[2026-06-27 05:03:58,152.152 INFO    ] 200
[2026-06-27 05:03:58,154.154 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:03:58,178.178 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:03:58,319.319 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:03:58,321.321 INFO    ] No camera update needed
[2026-06-27 05:03:58,322.322 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:03:58,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:03:58,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:03:58,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:04:00,369.369 INFO    ] ================================================
[2026-06-27 05:04:00,384.384 INFO    ] Launching Daemon at Sat Jun 27 05:04:00 IST 2026
[2026-06-27 05:04:00,399.399 INFO    ] ================================================
[2026-06-27 05:04:00,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:04:00
[2026-06-27 05:04:01,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:04:01,192.192 INFO    ] Initializing speech engine...
[2026-06-27 05:04:01,197.197 INFO    ] 2026-06-27 05:04:01
[2026-06-27 05:04:01,399.399 INFO    ] 2026-06-27 05:04:01
[2026-06-27 05:04:01,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:04:01,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:04:01,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:04:01,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:04:01,773.773 INFO    ] time= 27/06/2026 05:04:01
[2026-06-27 05:04:01,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:04:01,779.779 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:04:01,825.825 INFO    ] No existing commands found in stream
[2026-06-27 05:04:06,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:04:06,837.837 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-27 05:04:10,519.519 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:04:10,520.520 INFO    ] Checking for system updates...
[2026-06-27 05:04:10,542.542 INFO    ] 200
[2026-06-27 05:04:10,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:04:10,574.574 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:04:10,576.576 INFO    ] No update needed
[2026-06-27 05:04:10,577.577 INFO    ] Checking for camera pi updates...
[2026-06-27 05:04:10,600.600 INFO    ] 200
[2026-06-27 05:04:10,602.602 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:04:10,629.629 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:04:10,666.666 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:04:10,667.667 INFO    ] No camera update needed
[2026-06-27 05:04:10,669.669 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:04:10,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:04:10,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:04:10,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:04:12,716.716 INFO    ] ================================================
[2026-06-27 05:04:12,732.732 INFO    ] Launching Daemon at Sat Jun 27 05:04:12 IST 2026
[2026-06-27 05:04:12,742.742 INFO    ] ================================================
[2026-06-27 05:04:13,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:04:13
[2026-06-27 05:04:13,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:04:13,547.547 INFO    ] Initializing speech engine...
[2026-06-27 05:04:13,557.557 INFO    ] 2026-06-27 05:04:13
[2026-06-27 05:04:13,763.763 INFO    ] 2026-06-27 05:04:13
[2026-06-27 05:04:13,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:04:13,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:04:13,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:04:14,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:04:14,203.203 INFO    ] time= 27/06/2026 05:04:14
[2026-06-27 05:04:14,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:04:14,212.212 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:04:14,279.279 INFO    ] No existing commands found in stream
[2026-06-27 05:04:19,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:04:19,291.291 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-27 05:04:22,186.186 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:04:22,187.187 INFO    ] Checking for system updates...
[2026-06-27 05:04:22,208.208 INFO    ] 200
[2026-06-27 05:04:22,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:04:22,249.249 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:04:22,251.251 INFO    ] No update needed
[2026-06-27 05:04:22,252.252 INFO    ] Checking for camera pi updates...
[2026-06-27 05:04:22,272.272 INFO    ] 200
[2026-06-27 05:04:22,274.274 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:04:22,299.299 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:04:22,334.334 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:04:22,336.336 INFO    ] No camera update needed
[2026-06-27 05:04:22,337.337 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:04:22,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:04:22,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:04:22,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:04:24,384.384 INFO    ] ================================================
[2026-06-27 05:04:24,400.400 INFO    ] Launching Daemon at Sat Jun 27 05:04:24 IST 2026
[2026-06-27 05:04:24,411.411 INFO    ] ================================================
[2026-06-27 05:04:24,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:04:24
[2026-06-27 05:04:25,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:04:25,208.208 INFO    ] Initializing speech engine...
[2026-06-27 05:04:25,216.216 INFO    ] 2026-06-27 05:04:25
[2026-06-27 05:04:25,427.427 INFO    ] 2026-06-27 05:04:25
[2026-06-27 05:04:25,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:04:25,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:04:25,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:04:25,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:04:25,841.841 INFO    ] time= 27/06/2026 05:04:25
[2026-06-27 05:04:25,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:04:25,880.880 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:04:25,947.947 INFO    ] No existing commands found in stream
[2026-06-27 05:04:30,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:04:30,964.964 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-27 05:04:33,222.222 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:04:33,224.224 INFO    ] Checking for system updates...
[2026-06-27 05:04:33,245.245 INFO    ] 200
[2026-06-27 05:04:33,246.246 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:04:33,279.279 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:04:33,280.280 INFO    ] No update needed
[2026-06-27 05:04:33,281.281 INFO    ] Checking for camera pi updates...
[2026-06-27 05:04:33,302.302 INFO    ] 200
[2026-06-27 05:04:33,304.304 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:04:33,327.327 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:04:33,352.352 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:04:33,354.354 INFO    ] No camera update needed
[2026-06-27 05:04:33,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:04:33,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:04:33,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:04:33,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:04:35,404.404 INFO    ] ================================================
[2026-06-27 05:04:35,421.421 INFO    ] Launching Daemon at Sat Jun 27 05:04:35 IST 2026
[2026-06-27 05:04:35,432.432 INFO    ] ================================================
[2026-06-27 05:04:35,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:04:35
[2026-06-27 05:04:36,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:04:36,214.214 INFO    ] Initializing speech engine...
[2026-06-27 05:04:36,218.218 INFO    ] 2026-06-27 05:04:36
[2026-06-27 05:04:36,435.435 INFO    ] 2026-06-27 05:04:36
[2026-06-27 05:04:36,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:04:36,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:04:36,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:04:36,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:04:36,845.845 INFO    ] time= 27/06/2026 05:04:36
[2026-06-27 05:04:36,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:04:36,890.890 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:04:36,957.957 INFO    ] No existing commands found in stream
[2026-06-27 05:04:41,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:04:41,970.970 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-27 05:04:47,251.251 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 05:04:47,252.252 INFO    ] Checking for system updates...
[2026-06-27 05:04:47,273.273 INFO    ] 200
[2026-06-27 05:04:47,275.275 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:04:47,305.305 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:04:47,307.307 INFO    ] No update needed
[2026-06-27 05:04:47,308.308 INFO    ] Checking for camera pi updates...
[2026-06-27 05:04:47,327.327 INFO    ] 200
[2026-06-27 05:04:47,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:04:47,354.354 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:04:47,391.391 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:04:47,392.392 INFO    ] No camera update needed
[2026-06-27 05:04:47,393.393 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:04:47,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:04:47,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:04:47,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:04:49,440.440 INFO    ] ================================================
[2026-06-27 05:04:49,456.456 INFO    ] Launching Daemon at Sat Jun 27 05:04:49 IST 2026
[2026-06-27 05:04:49,467.467 INFO    ] ================================================
[2026-06-27 05:04:49,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:04:49
[2026-06-27 05:04:50,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:04:50,275.275 INFO    ] Initializing speech engine...
[2026-06-27 05:04:50,279.279 INFO    ] 2026-06-27 05:04:50
[2026-06-27 05:04:50,499.499 INFO    ] 2026-06-27 05:04:50
[2026-06-27 05:04:50,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:04:50,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:04:50,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:04:50,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:04:50,939.939 INFO    ] time= 27/06/2026 05:04:50
[2026-06-27 05:04:50,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:04:50,946.946 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:04:51,011.011 INFO    ] No existing commands found in stream
[2026-06-27 05:04:56,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:04:56,025.025 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-27 05:04:57,903.903 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 05:04:57,904.904 INFO    ] Checking for system updates...
[2026-06-27 05:04:57,927.927 INFO    ] 200
[2026-06-27 05:04:57,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:04:57,960.960 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:04:57,962.962 INFO    ] No update needed
[2026-06-27 05:04:57,963.963 INFO    ] Checking for camera pi updates...
[2026-06-27 05:04:57,982.982 INFO    ] 200
[2026-06-27 05:04:57,984.984 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:04:58,009.009 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:04:58,051.051 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:04:58,052.052 INFO    ] No camera update needed
[2026-06-27 05:04:58,053.053 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:04:58,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:04:58,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:04:58,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:05:00,100.100 INFO    ] ================================================
[2026-06-27 05:05:00,116.116 INFO    ] Launching Daemon at Sat Jun 27 05:05:00 IST 2026
[2026-06-27 05:05:00,126.126 INFO    ] ================================================
[2026-06-27 05:05:00,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:05:00
[2026-06-27 05:05:00,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:05:00,956.956 INFO    ] Initializing speech engine...
[2026-06-27 05:05:00,961.961 INFO    ] 2026-06-27 05:05:00
[2026-06-27 05:05:01,170.170 INFO    ] 2026-06-27 05:05:01
[2026-06-27 05:05:01,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:05:01,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:05:01,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:05:01,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:05:01,613.613 INFO    ] time= 27/06/2026 05:05:01
[2026-06-27 05:05:01,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:05:01,622.622 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:05:01,689.689 INFO    ] No existing commands found in stream
[2026-06-27 05:05:06,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:05:06,702.702 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-27 05:05:09,690.690 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 05:05:09,692.692 INFO    ] Checking for system updates...
[2026-06-27 05:05:09,713.713 INFO    ] 200
[2026-06-27 05:05:09,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:05:09,745.745 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:05:09,747.747 INFO    ] No update needed
[2026-06-27 05:05:09,748.748 INFO    ] Checking for camera pi updates...
[2026-06-27 05:05:09,767.767 INFO    ] 200
[2026-06-27 05:05:09,768.768 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:05:09,797.797 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:05:09,835.835 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:05:09,836.836 INFO    ] No camera update needed
[2026-06-27 05:05:09,837.837 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:05:09,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:05:09,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:05:09,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:05:11,884.884 INFO    ] ================================================
[2026-06-27 05:05:11,900.900 INFO    ] Launching Daemon at Sat Jun 27 05:05:11 IST 2026
[2026-06-27 05:05:11,911.911 INFO    ] ================================================
[2026-06-27 05:05:12,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:05:12
[2026-06-27 05:05:12,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:05:12,715.715 INFO    ] Initializing speech engine...
[2026-06-27 05:05:12,720.720 INFO    ] 2026-06-27 05:05:12
[2026-06-27 05:05:12,924.924 INFO    ] 2026-06-27 05:05:12
[2026-06-27 05:05:12,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:05:13,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:05:13,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:05:13,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:05:13,336.336 INFO    ] time= 27/06/2026 05:05:13
[2026-06-27 05:05:13,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:05:13,370.370 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:05:13,439.439 INFO    ] No existing commands found in stream
[2026-06-27 05:05:18,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:05:18,453.453 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-27 05:05:22,470.470 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:05:22,472.472 INFO    ] Checking for system updates...
[2026-06-27 05:05:22,492.492 INFO    ] 200
[2026-06-27 05:05:22,494.494 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:05:22,527.527 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:05:22,528.528 INFO    ] No update needed
[2026-06-27 05:05:22,529.529 INFO    ] Checking for camera pi updates...
[2026-06-27 05:05:22,550.550 INFO    ] 200
[2026-06-27 05:05:22,551.551 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:05:22,576.576 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:05:22,616.616 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:05:22,617.617 INFO    ] No camera update needed
[2026-06-27 05:05:22,619.619 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:05:22,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:05:22,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:05:22,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:05:24,665.665 INFO    ] ================================================
[2026-06-27 05:05:24,681.681 INFO    ] Launching Daemon at Sat Jun 27 05:05:24 IST 2026
[2026-06-27 05:05:24,692.692 INFO    ] ================================================
[2026-06-27 05:05:25,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:05:25
[2026-06-27 05:05:25,383.383 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:05:25,527.527 INFO    ] Initializing speech engine...
[2026-06-27 05:05:25,533.533 INFO    ] 2026-06-27 05:05:25
[2026-06-27 05:05:25,736.736 INFO    ] 2026-06-27 05:05:25
[2026-06-27 05:05:25,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:05:26,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:05:26,232.232 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:05:26,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:05:26,371.371 INFO    ] time= 27/06/2026 05:05:26
[2026-06-27 05:05:26,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:05:26,378.378 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:05:26,446.446 INFO    ] No existing commands found in stream
[2026-06-27 05:05:31,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:05:31,459.459 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-27 05:05:34,540.540 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:05:34,542.542 INFO    ] Checking for system updates...
[2026-06-27 05:05:34,563.563 INFO    ] 200
[2026-06-27 05:05:34,564.564 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:05:34,597.597 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:05:34,598.598 INFO    ] No update needed
[2026-06-27 05:05:34,599.599 INFO    ] Checking for camera pi updates...
[2026-06-27 05:05:34,620.620 INFO    ] 200
[2026-06-27 05:05:34,621.621 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:05:34,647.647 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:05:34,672.672 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:05:34,673.673 INFO    ] No camera update needed
[2026-06-27 05:05:34,675.675 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:05:34,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:05:34,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:05:34,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:05:36,723.723 INFO    ] ================================================
[2026-06-27 05:05:36,738.738 INFO    ] Launching Daemon at Sat Jun 27 05:05:36 IST 2026
[2026-06-27 05:05:36,749.749 INFO    ] ================================================
[2026-06-27 05:05:37,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:05:37
[2026-06-27 05:05:37,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:05:37,586.586 INFO    ] Initializing speech engine...
[2026-06-27 05:05:37,591.591 INFO    ] 2026-06-27 05:05:37
[2026-06-27 05:05:37,796.796 INFO    ] 2026-06-27 05:05:37
[2026-06-27 05:05:37,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:05:38,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:05:38,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:05:38,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:05:38,194.194 INFO    ] time= 27/06/2026 05:05:38
[2026-06-27 05:05:38,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:05:38,237.237 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:05:38,308.308 INFO    ] No existing commands found in stream
[2026-06-27 05:05:43,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:05:43,320.320 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-27 05:05:43,900.900 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 05:05:43,902.902 INFO    ] Checking for system updates...
[2026-06-27 05:05:43,924.924 INFO    ] 200
[2026-06-27 05:05:43,925.925 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:05:43,956.956 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:05:43,957.957 INFO    ] No update needed
[2026-06-27 05:05:43,959.959 INFO    ] Checking for camera pi updates...
[2026-06-27 05:05:43,979.979 INFO    ] 200
[2026-06-27 05:05:43,981.981 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:05:44,006.006 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:05:44,052.052 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:05:44,053.053 INFO    ] No camera update needed
[2026-06-27 05:05:44,055.055 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:05:44,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:05:44,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:05:44,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:05:46,102.102 INFO    ] ================================================
[2026-06-27 05:05:46,118.118 INFO    ] Launching Daemon at Sat Jun 27 05:05:46 IST 2026
[2026-06-27 05:05:46,129.129 INFO    ] ================================================
[2026-06-27 05:05:46,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:05:46
[2026-06-27 05:05:46,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:05:46,913.913 INFO    ] Initializing speech engine...
[2026-06-27 05:05:46,917.917 INFO    ] 2026-06-27 05:05:46
[2026-06-27 05:05:47,123.123 INFO    ] 2026-06-27 05:05:47
[2026-06-27 05:05:47,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:05:47,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:05:47,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:05:47,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:05:47,568.568 INFO    ] time= 27/06/2026 05:05:47
[2026-06-27 05:05:47,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:05:47,575.575 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:05:47,646.646 INFO    ] No existing commands found in stream
[2026-06-27 05:05:52,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:05:52,658.658 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-27 05:05:54,743.743 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 05:05:54,745.745 INFO    ] Checking for system updates...
[2026-06-27 05:05:54,767.767 INFO    ] 200
[2026-06-27 05:05:54,768.768 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:05:54,801.801 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:05:54,802.802 INFO    ] No update needed
[2026-06-27 05:05:54,803.803 INFO    ] Checking for camera pi updates...
[2026-06-27 05:05:54,824.824 INFO    ] 200
[2026-06-27 05:05:54,826.826 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:05:54,853.853 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:05:54,875.875 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:05:54,876.876 INFO    ] No camera update needed
[2026-06-27 05:05:54,877.877 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:05:54,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:05:54,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:05:54,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:05:56,925.925 INFO    ] ================================================
[2026-06-27 05:05:56,940.940 INFO    ] Launching Daemon at Sat Jun 27 05:05:56 IST 2026
[2026-06-27 05:05:56,951.951 INFO    ] ================================================
[2026-06-27 05:05:57,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:05:57
[2026-06-27 05:05:57,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:05:57,756.756 INFO    ] Initializing speech engine...
[2026-06-27 05:05:57,766.766 INFO    ] 2026-06-27 05:05:57
[2026-06-27 05:05:57,971.971 INFO    ] 2026-06-27 05:05:57
[2026-06-27 05:05:57,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:05:58,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:05:58,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:05:58,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:05:58,390.390 INFO    ] time= 27/06/2026 05:05:58
[2026-06-27 05:05:58,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:05:58,418.418 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:05:58,485.485 INFO    ] No existing commands found in stream
[2026-06-27 05:06:03,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:06:03,507.507 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-27 05:06:06,189.189 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 05:06:06,190.190 INFO    ] Checking for system updates...
[2026-06-27 05:06:06,211.211 INFO    ] 200
[2026-06-27 05:06:06,212.212 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:06:06,242.242 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:06:06,244.244 INFO    ] No update needed
[2026-06-27 05:06:06,245.245 INFO    ] Checking for camera pi updates...
[2026-06-27 05:06:06,266.266 INFO    ] 200
[2026-06-27 05:06:06,268.268 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:06:06,291.291 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:06:06,328.328 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:06:06,329.329 INFO    ] No camera update needed
[2026-06-27 05:06:06,331.331 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:06:06,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:06:06,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:06:06,338.338 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:06:08,376.376 INFO    ] ================================================
[2026-06-27 05:06:08,391.391 INFO    ] Launching Daemon at Sat Jun 27 05:06:08 IST 2026
[2026-06-27 05:06:08,402.402 INFO    ] ================================================
[2026-06-27 05:06:08,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:06:08
[2026-06-27 05:06:09,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:06:09,266.266 INFO    ] Initializing speech engine...
[2026-06-27 05:06:09,271.271 INFO    ] 2026-06-27 05:06:09
[2026-06-27 05:06:09,479.479 INFO    ] 2026-06-27 05:06:09
[2026-06-27 05:06:09,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:06:09,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:06:09,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:06:09,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:06:09,900.900 INFO    ] time= 27/06/2026 05:06:09
[2026-06-27 05:06:09,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:06:09,947.947 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:06:10,050.050 INFO    ] No existing commands found in stream
[2026-06-27 05:06:15,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:06:15,062.062 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-27 05:06:16,274.274 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 05:06:16,275.275 INFO    ] Checking for system updates...
[2026-06-27 05:06:16,298.298 INFO    ] 200
[2026-06-27 05:06:16,299.299 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:06:16,329.329 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:06:16,331.331 INFO    ] No update needed
[2026-06-27 05:06:16,332.332 INFO    ] Checking for camera pi updates...
[2026-06-27 05:06:16,354.354 INFO    ] 200
[2026-06-27 05:06:16,355.355 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:06:16,380.380 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:06:16,420.420 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:06:16,421.421 INFO    ] No camera update needed
[2026-06-27 05:06:16,422.422 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:06:16,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:06:16,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:06:16,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:06:18,468.468 INFO    ] ================================================
[2026-06-27 05:06:18,483.483 INFO    ] Launching Daemon at Sat Jun 27 05:06:18 IST 2026
[2026-06-27 05:06:18,494.494 INFO    ] ================================================
[2026-06-27 05:06:18,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:06:18
[2026-06-27 05:06:19,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:06:19,269.269 INFO    ] Initializing speech engine...
[2026-06-27 05:06:19,273.273 INFO    ] 2026-06-27 05:06:19
[2026-06-27 05:06:19,505.505 INFO    ] 2026-06-27 05:06:19
[2026-06-27 05:06:19,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:06:19,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:06:19,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:06:19,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:06:19,958.958 INFO    ] time= 27/06/2026 05:06:19
[2026-06-27 05:06:19,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:06:19,990.990 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:06:20,089.089 INFO    ] No existing commands found in stream
[2026-06-27 05:06:25,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:06:25,105.105 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-27 05:06:26,047.047 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 05:06:26,048.048 INFO    ] Checking for system updates...
[2026-06-27 05:06:26,069.069 INFO    ] 200
[2026-06-27 05:06:26,070.070 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:06:26,102.102 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:06:26,104.104 INFO    ] No update needed
[2026-06-27 05:06:26,105.105 INFO    ] Checking for camera pi updates...
[2026-06-27 05:06:26,127.127 INFO    ] 200
[2026-06-27 05:06:26,129.129 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:06:26,152.152 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:06:26,193.193 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:06:26,236.236 INFO    ] No camera update needed
[2026-06-27 05:06:26,238.238 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:06:26,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:06:26,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:06:26,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:06:28,285.285 INFO    ] ================================================
[2026-06-27 05:06:28,301.301 INFO    ] Launching Daemon at Sat Jun 27 05:06:28 IST 2026
[2026-06-27 05:06:28,311.311 INFO    ] ================================================
[2026-06-27 05:06:28,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:06:28
[2026-06-27 05:06:28,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:06:29,120.120 INFO    ] Initializing speech engine...
[2026-06-27 05:06:29,129.129 INFO    ] 2026-06-27 05:06:29
[2026-06-27 05:06:29,355.355 INFO    ] 2026-06-27 05:06:29
[2026-06-27 05:06:29,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:06:29,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:06:29,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:06:29,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:06:29,813.813 INFO    ] time= 27/06/2026 05:06:29
[2026-06-27 05:06:29,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:06:29,845.845 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:06:29,917.917 INFO    ] No existing commands found in stream
[2026-06-27 05:06:34,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:06:34,929.929 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-27 05:06:36,925.925 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:06:36,926.926 INFO    ] Checking for system updates...
[2026-06-27 05:06:36,948.948 INFO    ] 200
[2026-06-27 05:06:36,950.950 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:06:36,999.999 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:06:37,001.001 INFO    ] No update needed
[2026-06-27 05:06:37,004.004 INFO    ] Checking for camera pi updates...
[2026-06-27 05:06:37,038.038 INFO    ] 200
[2026-06-27 05:06:37,040.040 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:06:37,080.080 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:06:37,124.124 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:06:37,125.125 INFO    ] No camera update needed
[2026-06-27 05:06:37,127.127 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:06:37,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:06:37,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:06:37,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:06:39,165.165 INFO    ] ================================================
[2026-06-27 05:06:39,174.174 INFO    ] Launching Daemon at Sat Jun 27 05:06:39 IST 2026
[2026-06-27 05:06:39,180.180 INFO    ] ================================================
[2026-06-27 05:06:39,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:06:39
[2026-06-27 05:06:39,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:06:39,964.964 INFO    ] Initializing speech engine...
[2026-06-27 05:06:39,969.969 INFO    ] 2026-06-27 05:06:39
[2026-06-27 05:06:40,207.207 INFO    ] 2026-06-27 05:06:40
[2026-06-27 05:06:40,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:06:40,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:06:40,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:06:40,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:06:40,676.676 INFO    ] time= 27/06/2026 05:06:40
[2026-06-27 05:06:40,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:06:40,719.719 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:06:40,795.795 INFO    ] No existing commands found in stream
[2026-06-27 05:06:45,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:06:45,808.808 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-27 05:06:47,229.229 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 05:06:47,231.231 INFO    ] Checking for system updates...
[2026-06-27 05:06:47,251.251 INFO    ] 200
[2026-06-27 05:06:47,252.252 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:06:47,287.287 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:06:47,288.288 INFO    ] No update needed
[2026-06-27 05:06:47,290.290 INFO    ] Checking for camera pi updates...
[2026-06-27 05:06:47,310.310 INFO    ] 200
[2026-06-27 05:06:47,312.312 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:06:47,336.336 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:06:47,382.382 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:06:47,384.384 INFO    ] No camera update needed
[2026-06-27 05:06:47,385.385 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:06:47,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:06:47,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:06:47,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:06:49,431.431 INFO    ] ================================================
[2026-06-27 05:06:49,446.446 INFO    ] Launching Daemon at Sat Jun 27 05:06:49 IST 2026
[2026-06-27 05:06:49,457.457 INFO    ] ================================================
[2026-06-27 05:06:49,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:06:49
[2026-06-27 05:06:50,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:06:50,325.325 INFO    ] Initializing speech engine...
[2026-06-27 05:06:50,337.337 INFO    ] 2026-06-27 05:06:50
[2026-06-27 05:06:50,552.552 INFO    ] 2026-06-27 05:06:50
[2026-06-27 05:06:50,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:06:50,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:06:50,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:06:50,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:06:50,999.999 INFO    ] time= 27/06/2026 05:06:50
[2026-06-27 05:06:51,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:06:51,007.007 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:06:51,075.075 INFO    ] No existing commands found in stream
[2026-06-27 05:06:56,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:06:56,088.088 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-27 05:06:56,957.957 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 05:06:56,959.959 INFO    ] Checking for system updates...
[2026-06-27 05:06:56,981.981 INFO    ] 200
[2026-06-27 05:06:56,982.982 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:06:57,015.015 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:06:57,016.016 INFO    ] No update needed
[2026-06-27 05:06:57,018.018 INFO    ] Checking for camera pi updates...
[2026-06-27 05:06:57,037.037 INFO    ] 200
[2026-06-27 05:06:57,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:06:57,062.062 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:06:57,085.085 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:06:57,087.087 INFO    ] No camera update needed
[2026-06-27 05:06:57,088.088 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:06:57,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:06:57,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:06:57,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:06:59,134.134 INFO    ] ================================================
[2026-06-27 05:06:59,149.149 INFO    ] Launching Daemon at Sat Jun 27 05:06:59 IST 2026
[2026-06-27 05:06:59,160.160 INFO    ] ================================================
[2026-06-27 05:06:59,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:06:59
[2026-06-27 05:06:59,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:06:59,975.975 INFO    ] Initializing speech engine...
[2026-06-27 05:06:59,980.980 INFO    ] 2026-06-27 05:06:59
[2026-06-27 05:07:00,184.184 INFO    ] 2026-06-27 05:07:00
[2026-06-27 05:07:00,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:07:00,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:07:00,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:07:00,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:07:00,585.585 INFO    ] time= 27/06/2026 05:07:00
[2026-06-27 05:07:00,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:07:00,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:07:00,699.699 INFO    ] No existing commands found in stream
[2026-06-27 05:07:05,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:07:05,710.710 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-27 05:07:06,371.371 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:07:06,373.373 INFO    ] Checking for system updates...
[2026-06-27 05:07:06,395.395 INFO    ] 200
[2026-06-27 05:07:06,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:07:06,432.432 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:07:06,433.433 INFO    ] No update needed
[2026-06-27 05:07:06,435.435 INFO    ] Checking for camera pi updates...
[2026-06-27 05:07:06,454.454 INFO    ] 200
[2026-06-27 05:07:06,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:07:06,488.488 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:07:06,525.525 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:07:06,526.526 INFO    ] No camera update needed
[2026-06-27 05:07:06,528.528 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:07:06,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:07:06,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:07:06,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:07:08,573.573 INFO    ] ================================================
[2026-06-27 05:07:08,588.588 INFO    ] Launching Daemon at Sat Jun 27 05:07:08 IST 2026
[2026-06-27 05:07:08,599.599 INFO    ] ================================================
[2026-06-27 05:07:08,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:07:08
[2026-06-27 05:07:09,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:07:09,423.423 INFO    ] Initializing speech engine...
[2026-06-27 05:07:09,433.433 INFO    ] 2026-06-27 05:07:09
[2026-06-27 05:07:09,638.638 INFO    ] 2026-06-27 05:07:09
[2026-06-27 05:07:09,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:07:09,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:07:09,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:07:09,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:07:10,046.046 INFO    ] time= 27/06/2026 05:07:09
[2026-06-27 05:07:10,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:07:10,085.085 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:07:10,152.152 INFO    ] No existing commands found in stream
[2026-06-27 05:07:15,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:07:15,164.164 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-27 05:07:15,811.811 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 05:07:15,812.812 INFO    ] Checking for system updates...
[2026-06-27 05:07:15,834.834 INFO    ] 200
[2026-06-27 05:07:15,835.835 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:07:15,867.867 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:07:15,868.868 INFO    ] No update needed
[2026-06-27 05:07:15,869.869 INFO    ] Checking for camera pi updates...
[2026-06-27 05:07:15,890.890 INFO    ] 200
[2026-06-27 05:07:15,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:07:15,917.917 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:07:15,968.968 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:07:15,969.969 INFO    ] No camera update needed
[2026-06-27 05:07:15,971.971 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:07:15,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:07:15,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:07:15,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:07:18,017.017 INFO    ] ================================================
[2026-06-27 05:07:18,033.033 INFO    ] Launching Daemon at Sat Jun 27 05:07:18 IST 2026
[2026-06-27 05:07:18,045.045 INFO    ] ================================================
[2026-06-27 05:07:18,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:07:18
[2026-06-27 05:07:18,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:07:18,912.912 INFO    ] Initializing speech engine...
[2026-06-27 05:07:18,919.919 INFO    ] 2026-06-27 05:07:18
[2026-06-27 05:07:19,126.126 INFO    ] 2026-06-27 05:07:19
[2026-06-27 05:07:19,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:07:19,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:07:19,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:07:19,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:07:19,569.569 INFO    ] time= 27/06/2026 05:07:19
[2026-06-27 05:07:19,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:07:19,577.577 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:07:19,645.645 INFO    ] No existing commands found in stream
[2026-06-27 05:07:24,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:07:24,662.662 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-27 05:07:25,829.829 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 05:07:25,831.831 INFO    ] Checking for system updates...
[2026-06-27 05:07:25,854.854 INFO    ] 200
[2026-06-27 05:07:25,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:07:25,886.886 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:07:25,888.888 INFO    ] No update needed
[2026-06-27 05:07:25,889.889 INFO    ] Checking for camera pi updates...
[2026-06-27 05:07:25,910.910 INFO    ] 200
[2026-06-27 05:07:25,911.911 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:07:25,935.935 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:07:25,969.969 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:07:25,970.970 INFO    ] No camera update needed
[2026-06-27 05:07:25,971.971 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:07:25,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:07:25,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:07:25,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:07:28,017.017 INFO    ] ================================================
[2026-06-27 05:07:28,032.032 INFO    ] Launching Daemon at Sat Jun 27 05:07:28 IST 2026
[2026-06-27 05:07:28,043.043 INFO    ] ================================================
[2026-06-27 05:07:28,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:07:28
[2026-06-27 05:07:28,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:07:28,844.844 INFO    ] Initializing speech engine...
[2026-06-27 05:07:28,852.852 INFO    ] 2026-06-27 05:07:28
[2026-06-27 05:07:29,063.063 INFO    ] 2026-06-27 05:07:29
[2026-06-27 05:07:29,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:07:29,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:07:29,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:07:29,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:07:29,506.506 INFO    ] time= 27/06/2026 05:07:29
[2026-06-27 05:07:29,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:07:29,514.514 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:07:29,581.581 INFO    ] No existing commands found in stream
[2026-06-27 05:07:34,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:07:34,594.594 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-27 05:07:36,150.150 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 05:07:36,152.152 INFO    ] Checking for system updates...
[2026-06-27 05:07:36,175.175 INFO    ] 200
[2026-06-27 05:07:36,177.177 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:07:36,209.209 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:07:36,211.211 INFO    ] No update needed
[2026-06-27 05:07:36,212.212 INFO    ] Checking for camera pi updates...
[2026-06-27 05:07:36,233.233 INFO    ] 200
[2026-06-27 05:07:36,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:07:36,258.258 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:07:36,293.293 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:07:36,294.294 INFO    ] No camera update needed
[2026-06-27 05:07:36,296.296 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:07:36,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:07:36,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:07:36,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:07:38,341.341 INFO    ] ================================================
[2026-06-27 05:07:38,357.357 INFO    ] Launching Daemon at Sat Jun 27 05:07:38 IST 2026
[2026-06-27 05:07:38,367.367 INFO    ] ================================================
[2026-06-27 05:07:38,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:07:38
[2026-06-27 05:07:39,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:07:39,191.191 INFO    ] Initializing speech engine...
[2026-06-27 05:07:39,201.201 INFO    ] 2026-06-27 05:07:39
[2026-06-27 05:07:39,408.408 INFO    ] 2026-06-27 05:07:39
[2026-06-27 05:07:39,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:07:39,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:07:39,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:07:39,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:07:39,835.835 INFO    ] time= 27/06/2026 05:07:39
[2026-06-27 05:07:39,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:07:39,866.866 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:07:39,934.934 INFO    ] No existing commands found in stream
[2026-06-27 05:07:44,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:07:44,946.946 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-27 05:07:47,949.949 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 05:07:47,950.950 INFO    ] Checking for system updates...
[2026-06-27 05:07:47,973.973 INFO    ] 200
[2026-06-27 05:07:47,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:07:48,005.005 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:07:48,007.007 INFO    ] No update needed
[2026-06-27 05:07:48,008.008 INFO    ] Checking for camera pi updates...
[2026-06-27 05:07:48,029.029 INFO    ] 200
[2026-06-27 05:07:48,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:07:48,055.055 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:07:48,101.101 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:07:48,102.102 INFO    ] No camera update needed
[2026-06-27 05:07:48,104.104 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:07:48,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:07:48,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:07:48,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:07:50,151.151 INFO    ] ================================================
[2026-06-27 05:07:50,167.167 INFO    ] Launching Daemon at Sat Jun 27 05:07:50 IST 2026
[2026-06-27 05:07:50,178.178 INFO    ] ================================================
[2026-06-27 05:07:50,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:07:50
[2026-06-27 05:07:50,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:07:50,989.989 INFO    ] Initializing speech engine...
[2026-06-27 05:07:50,994.994 INFO    ] 2026-06-27 05:07:50
[2026-06-27 05:07:51,186.186 INFO    ] 2026-06-27 05:07:51
[2026-06-27 05:07:51,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:07:51,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:07:51,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:07:51,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:07:51,667.667 INFO    ] time= 27/06/2026 05:07:51
[2026-06-27 05:07:51,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:07:51,715.715 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:07:51,790.790 INFO    ] No existing commands found in stream
[2026-06-27 05:07:56,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:07:56,802.802 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-27 05:08:00,877.877 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 05:08:00,878.878 INFO    ] Checking for system updates...
[2026-06-27 05:08:00,900.900 INFO    ] 200
[2026-06-27 05:08:00,901.901 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:08:00,931.931 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:08:00,933.933 INFO    ] No update needed
[2026-06-27 05:08:00,934.934 INFO    ] Checking for camera pi updates...
[2026-06-27 05:08:00,954.954 INFO    ] 200
[2026-06-27 05:08:00,955.955 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:08:00,980.980 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:08:01,017.017 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:08:01,018.018 INFO    ] No camera update needed
[2026-06-27 05:08:01,020.020 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:08:01,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:08:01,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:08:01,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:08:03,053.053 INFO    ] ================================================
[2026-06-27 05:08:03,061.061 INFO    ] Launching Daemon at Sat Jun 27 05:08:03 IST 2026
[2026-06-27 05:08:03,067.067 INFO    ] ================================================
[2026-06-27 05:08:03,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:08:03
[2026-06-27 05:08:03,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:08:03,906.906 INFO    ] Initializing speech engine...
[2026-06-27 05:08:03,912.912 INFO    ] 2026-06-27 05:08:03
[2026-06-27 05:08:04,117.117 INFO    ] 2026-06-27 05:08:04
[2026-06-27 05:08:04,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:08:04,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:08:04,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:08:04,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:08:04,537.537 INFO    ] time= 27/06/2026 05:08:04
[2026-06-27 05:08:04,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:08:04,564.564 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:08:04,632.632 INFO    ] No existing commands found in stream
[2026-06-27 05:08:09,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:08:09,649.649 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-27 05:08:13,643.643 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 05:08:13,645.645 INFO    ] Checking for system updates...
[2026-06-27 05:08:13,668.668 INFO    ] 200
[2026-06-27 05:08:13,670.670 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:08:13,704.704 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:08:13,706.706 INFO    ] No update needed
[2026-06-27 05:08:13,707.707 INFO    ] Checking for camera pi updates...
[2026-06-27 05:08:13,728.728 INFO    ] 200
[2026-06-27 05:08:13,730.730 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:08:13,758.758 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:08:13,898.898 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:08:13,899.899 INFO    ] No camera update needed
[2026-06-27 05:08:13,901.901 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:08:13,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:08:13,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:08:13,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:08:15,948.948 INFO    ] ================================================
[2026-06-27 05:08:15,964.964 INFO    ] Launching Daemon at Sat Jun 27 05:08:15 IST 2026
[2026-06-27 05:08:15,975.975 INFO    ] ================================================
[2026-06-27 05:08:16,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:08:16
[2026-06-27 05:08:16,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:08:16,854.854 INFO    ] Initializing speech engine...
[2026-06-27 05:08:16,857.857 INFO    ] 2026-06-27 05:08:16
[2026-06-27 05:08:17,051.051 INFO    ] 2026-06-27 05:08:17
[2026-06-27 05:08:17,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:08:17,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:08:17,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:08:17,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:08:17,489.489 INFO    ] time= 27/06/2026 05:08:17
[2026-06-27 05:08:17,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:08:17,497.497 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:08:17,564.564 INFO    ] No existing commands found in stream
[2026-06-27 05:08:22,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:08:22,576.576 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-27 05:08:23,551.551 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:08:23,553.553 INFO    ] Checking for system updates...
[2026-06-27 05:08:23,576.576 INFO    ] 200
[2026-06-27 05:08:23,577.577 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:08:23,611.611 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:08:23,612.612 INFO    ] No update needed
[2026-06-27 05:08:23,613.613 INFO    ] Checking for camera pi updates...
[2026-06-27 05:08:23,633.633 INFO    ] 200
[2026-06-27 05:08:23,634.634 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:08:23,660.660 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:08:23,700.700 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:08:23,701.701 INFO    ] No camera update needed
[2026-06-27 05:08:23,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:08:23,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:08:23,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:08:23,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:08:25,749.749 INFO    ] ================================================
[2026-06-27 05:08:25,764.764 INFO    ] Launching Daemon at Sat Jun 27 05:08:25 IST 2026
[2026-06-27 05:08:25,774.774 INFO    ] ================================================
[2026-06-27 05:08:26,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:08:26
[2026-06-27 05:08:26,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:08:26,659.659 INFO    ] Initializing speech engine...
[2026-06-27 05:08:26,665.665 INFO    ] 2026-06-27 05:08:26
[2026-06-27 05:08:26,876.876 INFO    ] 2026-06-27 05:08:26
[2026-06-27 05:08:26,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:08:27,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:08:27,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:08:27,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:08:27,316.316 INFO    ] time= 27/06/2026 05:08:27
[2026-06-27 05:08:27,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:08:27,323.323 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:08:27,391.391 INFO    ] No existing commands found in stream
[2026-06-27 05:08:32,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:08:32,406.406 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-27 05:08:34,446.446 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:08:34,448.448 INFO    ] Checking for system updates...
[2026-06-27 05:08:34,470.470 INFO    ] 200
[2026-06-27 05:08:34,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:08:34,502.502 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:08:34,503.503 INFO    ] No update needed
[2026-06-27 05:08:34,505.505 INFO    ] Checking for camera pi updates...
[2026-06-27 05:08:34,524.524 INFO    ] 200
[2026-06-27 05:08:34,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:08:34,550.550 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:08:34,587.587 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:08:34,588.588 INFO    ] No camera update needed
[2026-06-27 05:08:34,590.590 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:08:34,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:08:34,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:08:34,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:08:36,638.638 INFO    ] ================================================
[2026-06-27 05:08:36,653.653 INFO    ] Launching Daemon at Sat Jun 27 05:08:36 IST 2026
[2026-06-27 05:08:36,664.664 INFO    ] ================================================
[2026-06-27 05:08:37,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:08:37
[2026-06-27 05:08:37,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:08:37,452.452 INFO    ] Initializing speech engine...
[2026-06-27 05:08:37,465.465 INFO    ] 2026-06-27 05:08:37
[2026-06-27 05:08:37,675.675 INFO    ] 2026-06-27 05:08:37
[2026-06-27 05:08:37,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:08:37,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:08:37,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:08:38,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:08:38,121.121 INFO    ] time= 27/06/2026 05:08:38
[2026-06-27 05:08:38,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:08:38,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:08:38,196.196 INFO    ] No existing commands found in stream
[2026-06-27 05:08:43,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:08:43,209.209 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-27 05:08:44,727.727 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 05:08:44,728.728 INFO    ] Checking for system updates...
[2026-06-27 05:08:44,749.749 INFO    ] 200
[2026-06-27 05:08:44,750.750 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:08:44,783.783 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:08:44,785.785 INFO    ] No update needed
[2026-06-27 05:08:44,786.786 INFO    ] Checking for camera pi updates...
[2026-06-27 05:08:44,807.807 INFO    ] 200
[2026-06-27 05:08:44,808.808 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:08:44,834.834 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:08:44,874.874 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:08:44,875.875 INFO    ] No camera update needed
[2026-06-27 05:08:44,877.877 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:08:44,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:08:44,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:08:44,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:08:46,922.922 INFO    ] ================================================
[2026-06-27 05:08:46,937.937 INFO    ] Launching Daemon at Sat Jun 27 05:08:46 IST 2026
[2026-06-27 05:08:46,948.948 INFO    ] ================================================
[2026-06-27 05:08:47,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:08:47
[2026-06-27 05:08:47,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:08:47,750.750 INFO    ] Initializing speech engine...
[2026-06-27 05:08:47,760.760 INFO    ] 2026-06-27 05:08:47
[2026-06-27 05:08:47,966.966 INFO    ] 2026-06-27 05:08:47
[2026-06-27 05:08:47,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:08:48,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:08:48,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:08:48,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:08:48,385.385 INFO    ] time= 27/06/2026 05:08:48
[2026-06-27 05:08:48,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:08:48,415.415 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:08:48,482.482 INFO    ] No existing commands found in stream
[2026-06-27 05:08:53,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:08:53,494.494 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-27 05:08:54,660.660 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 05:08:54,662.662 INFO    ] Checking for system updates...
[2026-06-27 05:08:54,684.684 INFO    ] 200
[2026-06-27 05:08:54,686.686 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:08:54,717.717 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:08:54,718.718 INFO    ] No update needed
[2026-06-27 05:08:54,720.720 INFO    ] Checking for camera pi updates...
[2026-06-27 05:08:54,740.740 INFO    ] 200
[2026-06-27 05:08:54,741.741 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:08:54,765.765 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:08:54,787.787 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:08:54,788.788 INFO    ] No camera update needed
[2026-06-27 05:08:54,789.789 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:08:54,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:08:54,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:08:54,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:08:56,836.836 INFO    ] ================================================
[2026-06-27 05:08:56,852.852 INFO    ] Launching Daemon at Sat Jun 27 05:08:56 IST 2026
[2026-06-27 05:08:56,864.864 INFO    ] ================================================
[2026-06-27 05:08:57,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:08:57
[2026-06-27 05:08:57,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:08:57,754.754 INFO    ] Initializing speech engine...
[2026-06-27 05:08:57,759.759 INFO    ] 2026-06-27 05:08:57
[2026-06-27 05:08:57,966.966 INFO    ] 2026-06-27 05:08:57
[2026-06-27 05:08:57,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:08:58,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:08:58,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:08:58,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:08:58,388.388 INFO    ] time= 27/06/2026 05:08:58
[2026-06-27 05:08:58,412.412 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:08:58,415.415 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:08:58,481.481 INFO    ] No existing commands found in stream
[2026-06-27 05:09:03,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:09:03,499.499 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-27 05:09:07,332.332 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 05:09:07,334.334 INFO    ] Checking for system updates...
[2026-06-27 05:09:07,357.357 INFO    ] 200
[2026-06-27 05:09:07,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:09:07,391.391 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:09:07,393.393 INFO    ] No update needed
[2026-06-27 05:09:07,394.394 INFO    ] Checking for camera pi updates...
[2026-06-27 05:09:07,414.414 INFO    ] 200
[2026-06-27 05:09:07,415.415 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:09:07,441.441 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:09:07,480.480 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:09:07,481.481 INFO    ] No camera update needed
[2026-06-27 05:09:07,483.483 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:09:07,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:09:07,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:09:07,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:09:09,529.529 INFO    ] ================================================
[2026-06-27 05:09:09,545.545 INFO    ] Launching Daemon at Sat Jun 27 05:09:09 IST 2026
[2026-06-27 05:09:09,558.558 INFO    ] ================================================
[2026-06-27 05:09:09,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:09:09
[2026-06-27 05:09:10,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:09:10,379.379 INFO    ] Initializing speech engine...
[2026-06-27 05:09:10,385.385 INFO    ] 2026-06-27 05:09:10
[2026-06-27 05:09:10,590.590 INFO    ] 2026-06-27 05:09:10
[2026-06-27 05:09:10,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:09:10,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:09:10,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:09:10,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:09:11,008.008 INFO    ] time= 27/06/2026 05:09:10
[2026-06-27 05:09:11,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:09:11,038.038 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:09:11,105.105 INFO    ] No existing commands found in stream
[2026-06-27 05:09:16,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:09:16,119.119 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-27 05:09:19,232.232 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 05:09:19,234.234 INFO    ] Checking for system updates...
[2026-06-27 05:09:19,256.256 INFO    ] 200
[2026-06-27 05:09:19,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:09:19,291.291 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:09:19,293.293 INFO    ] No update needed
[2026-06-27 05:09:19,294.294 INFO    ] Checking for camera pi updates...
[2026-06-27 05:09:19,316.316 INFO    ] 200
[2026-06-27 05:09:19,317.317 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:09:19,343.343 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:09:19,381.381 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:09:19,383.383 INFO    ] No camera update needed
[2026-06-27 05:09:19,385.385 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:09:19,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:09:19,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:09:19,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:09:21,432.432 INFO    ] ================================================
[2026-06-27 05:09:21,447.447 INFO    ] Launching Daemon at Sat Jun 27 05:09:21 IST 2026
[2026-06-27 05:09:21,458.458 INFO    ] ================================================
[2026-06-27 05:09:21,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:09:21
[2026-06-27 05:09:22,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:09:22,280.280 INFO    ] Initializing speech engine...
[2026-06-27 05:09:22,284.284 INFO    ] 2026-06-27 05:09:22
[2026-06-27 05:09:22,502.502 INFO    ] 2026-06-27 05:09:22
[2026-06-27 05:09:22,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:09:22,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:09:22,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:09:22,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:09:22,923.923 INFO    ] time= 27/06/2026 05:09:22
[2026-06-27 05:09:22,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:09:22,951.951 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:09:23,019.019 INFO    ] No existing commands found in stream
[2026-06-27 05:09:28,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:09:28,031.031 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-27 05:09:29,413.413 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 05:09:29,414.414 INFO    ] Checking for system updates...
[2026-06-27 05:09:29,436.436 INFO    ] 200
[2026-06-27 05:09:29,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:09:29,471.471 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:09:29,473.473 INFO    ] No update needed
[2026-06-27 05:09:29,475.475 INFO    ] Checking for camera pi updates...
[2026-06-27 05:09:29,497.497 INFO    ] 200
[2026-06-27 05:09:29,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:09:29,522.522 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:09:29,563.563 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:09:29,565.565 INFO    ] No camera update needed
[2026-06-27 05:09:29,566.566 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:09:29,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:09:29,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:09:29,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:09:31,615.615 INFO    ] ================================================
[2026-06-27 05:09:31,631.631 INFO    ] Launching Daemon at Sat Jun 27 05:09:31 IST 2026
[2026-06-27 05:09:31,642.642 INFO    ] ================================================
[2026-06-27 05:09:32,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:09:32
[2026-06-27 05:09:32,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:09:32,632.632 INFO    ] Initializing speech engine...
[2026-06-27 05:09:32,640.640 INFO    ] 2026-06-27 05:09:32
[2026-06-27 05:09:32,876.876 INFO    ] 2026-06-27 05:09:32
[2026-06-27 05:09:32,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:09:33,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:09:33,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:09:33,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:09:33,326.326 INFO    ] time= 27/06/2026 05:09:33
[2026-06-27 05:09:33,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:09:33,356.356 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:09:33,422.422 INFO    ] No existing commands found in stream
[2026-06-27 05:09:38,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:09:38,434.434 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-27 05:09:40,506.506 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 05:09:40,507.507 INFO    ] Checking for system updates...
[2026-06-27 05:09:40,530.530 INFO    ] 200
[2026-06-27 05:09:40,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:09:40,562.562 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:09:40,564.564 INFO    ] No update needed
[2026-06-27 05:09:40,565.565 INFO    ] Checking for camera pi updates...
[2026-06-27 05:09:40,586.586 INFO    ] 200
[2026-06-27 05:09:40,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:09:40,613.613 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:09:40,657.657 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:09:40,659.659 INFO    ] No camera update needed
[2026-06-27 05:09:40,660.660 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:09:40,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:09:40,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:09:40,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:09:42,708.708 INFO    ] ================================================
[2026-06-27 05:09:42,725.725 INFO    ] Launching Daemon at Sat Jun 27 05:09:42 IST 2026
[2026-06-27 05:09:42,736.736 INFO    ] ================================================
[2026-06-27 05:09:43,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:09:43
[2026-06-27 05:09:43,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:09:43,625.625 INFO    ] Initializing speech engine...
[2026-06-27 05:09:43,631.631 INFO    ] 2026-06-27 05:09:43
[2026-06-27 05:09:43,845.845 INFO    ] 2026-06-27 05:09:43
[2026-06-27 05:09:43,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:09:44,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:09:44,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:09:44,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:09:44,269.269 INFO    ] time= 27/06/2026 05:09:44
[2026-06-27 05:09:44,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:09:44,296.296 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:09:44,364.364 INFO    ] No existing commands found in stream
[2026-06-27 05:09:49,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:09:49,382.382 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-27 05:09:51,721.721 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:09:51,723.723 INFO    ] Checking for system updates...
[2026-06-27 05:09:51,747.747 INFO    ] 200
[2026-06-27 05:09:51,749.749 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:09:51,786.786 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:09:51,787.787 INFO    ] No update needed
[2026-06-27 05:09:51,789.789 INFO    ] Checking for camera pi updates...
[2026-06-27 05:09:51,810.810 INFO    ] 200
[2026-06-27 05:09:51,812.812 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:09:51,838.838 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:09:51,879.879 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:09:51,881.881 INFO    ] No camera update needed
[2026-06-27 05:09:51,882.882 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:09:51,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:09:51,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:09:51,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:09:53,929.929 INFO    ] ================================================
[2026-06-27 05:09:53,945.945 INFO    ] Launching Daemon at Sat Jun 27 05:09:53 IST 2026
[2026-06-27 05:09:53,956.956 INFO    ] ================================================
[2026-06-27 05:09:54,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:09:54
[2026-06-27 05:09:54,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:09:54,780.780 INFO    ] Initializing speech engine...
[2026-06-27 05:09:54,786.786 INFO    ] 2026-06-27 05:09:54
[2026-06-27 05:09:54,995.995 INFO    ] 2026-06-27 05:09:54
[2026-06-27 05:09:55,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:09:55,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:09:55,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:09:55,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:09:55,420.420 INFO    ] time= 27/06/2026 05:09:55
[2026-06-27 05:09:55,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:09:55,448.448 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:09:55,516.516 INFO    ] No existing commands found in stream
[2026-06-27 05:10:00,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:10:00,534.534 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-27 05:10:02,323.323 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:10:02,325.325 INFO    ] Checking for system updates...
[2026-06-27 05:10:02,348.348 INFO    ] 200
[2026-06-27 05:10:02,350.350 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:10:02,392.392 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:10:02,393.393 INFO    ] No update needed
[2026-06-27 05:10:02,395.395 INFO    ] Checking for camera pi updates...
[2026-06-27 05:10:02,421.421 INFO    ] 200
[2026-06-27 05:10:02,423.423 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:10:02,455.455 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:10:02,486.486 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:10:02,488.488 INFO    ] No camera update needed
[2026-06-27 05:10:02,489.489 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:10:02,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:10:02,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:10:02,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:10:04,536.536 INFO    ] ================================================
[2026-06-27 05:10:04,552.552 INFO    ] Launching Daemon at Sat Jun 27 05:10:04 IST 2026
[2026-06-27 05:10:04,563.563 INFO    ] ================================================
[2026-06-27 05:10:04,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:10:04
[2026-06-27 05:10:05,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:10:05,434.434 INFO    ] Initializing speech engine...
[2026-06-27 05:10:05,440.440 INFO    ] 2026-06-27 05:10:05
[2026-06-27 05:10:05,658.658 INFO    ] 2026-06-27 05:10:05
[2026-06-27 05:10:05,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:10:05,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:10:05,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:10:06,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:10:06,122.122 INFO    ] time= 27/06/2026 05:10:06
[2026-06-27 05:10:06,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:10:06,130.130 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:10:06,198.198 INFO    ] No existing commands found in stream
[2026-06-27 05:10:11,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:10:11,217.217 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-27 05:10:12,335.335 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:10:12,337.337 INFO    ] Checking for system updates...
[2026-06-27 05:10:12,358.358 INFO    ] 200
[2026-06-27 05:10:12,360.360 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:10:12,391.391 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:10:12,392.392 INFO    ] No update needed
[2026-06-27 05:10:12,394.394 INFO    ] Checking for camera pi updates...
[2026-06-27 05:10:12,414.414 INFO    ] 200
[2026-06-27 05:10:12,415.415 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:10:12,440.440 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:10:12,476.476 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:10:12,478.478 INFO    ] No camera update needed
[2026-06-27 05:10:12,479.479 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:10:12,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:10:12,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:10:12,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:10:14,521.521 INFO    ] ================================================
[2026-06-27 05:10:14,538.538 INFO    ] Launching Daemon at Sat Jun 27 05:10:14 IST 2026
[2026-06-27 05:10:14,550.550 INFO    ] ================================================
[2026-06-27 05:10:14,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:10:14
[2026-06-27 05:10:15,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:10:15,335.335 INFO    ] Initializing speech engine...
[2026-06-27 05:10:15,342.342 INFO    ] 2026-06-27 05:10:15
[2026-06-27 05:10:15,560.560 INFO    ] 2026-06-27 05:10:15
[2026-06-27 05:10:15,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:10:15,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:10:15,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:10:15,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:10:15,969.969 INFO    ] time= 27/06/2026 05:10:15
[2026-06-27 05:10:16,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:10:16,020.020 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:10:16,089.089 INFO    ] No existing commands found in stream
[2026-06-27 05:10:21,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:10:21,101.101 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-27 05:10:22,819.819 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 05:10:22,820.820 INFO    ] Checking for system updates...
[2026-06-27 05:10:22,843.843 INFO    ] 200
[2026-06-27 05:10:22,844.844 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:10:22,876.876 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:10:22,877.877 INFO    ] No update needed
[2026-06-27 05:10:22,878.878 INFO    ] Checking for camera pi updates...
[2026-06-27 05:10:22,899.899 INFO    ] 200
[2026-06-27 05:10:22,901.901 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:10:22,925.925 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:10:23,065.065 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:10:23,066.066 INFO    ] No camera update needed
[2026-06-27 05:10:23,068.068 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:10:23,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:10:23,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:10:23,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:10:25,106.106 INFO    ] ================================================
[2026-06-27 05:10:25,118.118 INFO    ] Launching Daemon at Sat Jun 27 05:10:25 IST 2026
[2026-06-27 05:10:25,124.124 INFO    ] ================================================
[2026-06-27 05:10:25,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:10:25
[2026-06-27 05:10:25,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:10:25,878.878 INFO    ] Initializing speech engine...
[2026-06-27 05:10:25,882.882 INFO    ] 2026-06-27 05:10:25
[2026-06-27 05:10:26,102.102 INFO    ] 2026-06-27 05:10:26
[2026-06-27 05:10:26,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:10:26,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:10:26,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:10:26,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:10:26,547.547 INFO    ] time= 27/06/2026 05:10:26
[2026-06-27 05:10:26,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:10:26,554.554 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:10:26,621.621 INFO    ] No existing commands found in stream
[2026-06-27 05:10:31,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:10:31,627.627 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-27 05:10:35,575.575 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 05:10:35,576.576 INFO    ] Checking for system updates...
[2026-06-27 05:10:35,597.597 INFO    ] 200
[2026-06-27 05:10:35,599.599 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:10:35,629.629 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:10:35,631.631 INFO    ] No update needed
[2026-06-27 05:10:35,632.632 INFO    ] Checking for camera pi updates...
[2026-06-27 05:10:35,651.651 INFO    ] 200
[2026-06-27 05:10:35,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:10:35,677.677 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:10:35,699.699 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:10:35,700.700 INFO    ] No camera update needed
[2026-06-27 05:10:35,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:10:35,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:10:35,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:10:35,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:10:37,747.747 INFO    ] ================================================
[2026-06-27 05:10:37,763.763 INFO    ] Launching Daemon at Sat Jun 27 05:10:37 IST 2026
[2026-06-27 05:10:37,774.774 INFO    ] ================================================
[2026-06-27 05:10:38,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:10:38
[2026-06-27 05:10:38,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:10:38,602.602 INFO    ] Initializing speech engine...
[2026-06-27 05:10:38,608.608 INFO    ] 2026-06-27 05:10:38
[2026-06-27 05:10:38,819.819 INFO    ] 2026-06-27 05:10:38
[2026-06-27 05:10:38,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:10:39,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:10:39,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:10:39,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:10:39,269.269 INFO    ] time= 27/06/2026 05:10:39
[2026-06-27 05:10:39,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:10:39,273.273 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:10:39,341.341 INFO    ] No existing commands found in stream
[2026-06-27 05:10:44,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:10:44,359.359 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-27 05:10:44,890.890 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 05:10:44,891.891 INFO    ] Checking for system updates...
[2026-06-27 05:10:44,914.914 INFO    ] 200
[2026-06-27 05:10:44,915.915 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:10:44,946.946 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:10:44,947.947 INFO    ] No update needed
[2026-06-27 05:10:44,949.949 INFO    ] Checking for camera pi updates...
[2026-06-27 05:10:44,970.970 INFO    ] 200
[2026-06-27 05:10:44,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:10:44,995.995 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:10:45,034.034 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:10:45,036.036 INFO    ] No camera update needed
[2026-06-27 05:10:45,037.037 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:10:45,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:10:45,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:10:45,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:10:47,082.082 INFO    ] ================================================
[2026-06-27 05:10:47,098.098 INFO    ] Launching Daemon at Sat Jun 27 05:10:47 IST 2026
[2026-06-27 05:10:47,110.110 INFO    ] ================================================
[2026-06-27 05:10:47,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:10:47
[2026-06-27 05:10:47,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:10:48,025.025 INFO    ] Initializing speech engine...
[2026-06-27 05:10:48,030.030 INFO    ] 2026-06-27 05:10:48
[2026-06-27 05:10:48,244.244 INFO    ] 2026-06-27 05:10:48
[2026-06-27 05:10:48,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:10:48,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:10:48,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:10:48,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:10:48,679.679 INFO    ] time= 27/06/2026 05:10:48
[2026-06-27 05:10:48,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:10:48,722.722 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:10:48,817.817 INFO    ] No existing commands found in stream
[2026-06-27 05:10:53,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:10:53,832.832 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-27 05:10:54,592.592 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 05:10:54,594.594 INFO    ] Checking for system updates...
[2026-06-27 05:10:54,618.618 INFO    ] 200
[2026-06-27 05:10:54,620.620 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:10:54,654.654 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:10:54,655.655 INFO    ] No update needed
[2026-06-27 05:10:54,657.657 INFO    ] Checking for camera pi updates...
[2026-06-27 05:10:54,678.678 INFO    ] 200
[2026-06-27 05:10:54,680.680 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:10:54,703.703 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:10:54,727.727 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:10:54,729.729 INFO    ] No camera update needed
[2026-06-27 05:10:54,730.730 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:10:54,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:10:54,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:10:54,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:10:56,776.776 INFO    ] ================================================
[2026-06-27 05:10:56,792.792 INFO    ] Launching Daemon at Sat Jun 27 05:10:56 IST 2026
[2026-06-27 05:10:56,803.803 INFO    ] ================================================
[2026-06-27 05:10:57,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:10:57
[2026-06-27 05:10:57,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:10:57,698.698 INFO    ] Initializing speech engine...
[2026-06-27 05:10:57,703.703 INFO    ] 2026-06-27 05:10:57
[2026-06-27 05:10:57,919.919 INFO    ] 2026-06-27 05:10:57
[2026-06-27 05:10:57,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:10:58,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:10:58,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:10:58,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:10:58,341.341 INFO    ] time= 27/06/2026 05:10:58
[2026-06-27 05:10:58,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:10:58,421.421 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:10:58,493.493 INFO    ] No existing commands found in stream
[2026-06-27 05:11:03,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:11:03,511.511 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-27 05:11:04,122.122 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:11:04,124.124 INFO    ] Checking for system updates...
[2026-06-27 05:11:04,145.145 INFO    ] 200
[2026-06-27 05:11:04,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:11:04,182.182 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:11:04,184.184 INFO    ] No update needed
[2026-06-27 05:11:04,185.185 INFO    ] Checking for camera pi updates...
[2026-06-27 05:11:04,206.206 INFO    ] 200
[2026-06-27 05:11:04,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:11:04,231.231 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:11:04,265.265 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:11:04,267.267 INFO    ] No camera update needed
[2026-06-27 05:11:04,268.268 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:11:04,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:11:04,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:11:04,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:11:06,313.313 INFO    ] ================================================
[2026-06-27 05:11:06,329.329 INFO    ] Launching Daemon at Sat Jun 27 05:11:06 IST 2026
[2026-06-27 05:11:06,341.341 INFO    ] ================================================
[2026-06-27 05:11:06,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:11:06
[2026-06-27 05:11:06,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:11:07,123.123 INFO    ] Initializing speech engine...
[2026-06-27 05:11:07,128.128 INFO    ] 2026-06-27 05:11:07
[2026-06-27 05:11:07,334.334 INFO    ] 2026-06-27 05:11:07
[2026-06-27 05:11:07,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:11:07,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:11:07,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:11:07,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:11:07,761.761 INFO    ] time= 27/06/2026 05:11:07
[2026-06-27 05:11:07,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:11:07,790.790 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:11:07,858.858 INFO    ] No existing commands found in stream
[2026-06-27 05:11:12,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:11:12,869.869 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-27 05:11:15,089.089 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:11:15,091.091 INFO    ] Checking for system updates...
[2026-06-27 05:11:15,112.112 INFO    ] 200
[2026-06-27 05:11:15,114.114 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:11:15,147.147 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:11:15,149.149 INFO    ] No update needed
[2026-06-27 05:11:15,150.150 INFO    ] Checking for camera pi updates...
[2026-06-27 05:11:15,171.171 INFO    ] 200
[2026-06-27 05:11:15,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:11:15,196.196 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:11:15,237.237 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:11:15,239.239 INFO    ] No camera update needed
[2026-06-27 05:11:15,240.240 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:11:15,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:11:15,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:11:15,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:11:17,285.285 INFO    ] ================================================
[2026-06-27 05:11:17,301.301 INFO    ] Launching Daemon at Sat Jun 27 05:11:17 IST 2026
[2026-06-27 05:11:17,312.312 INFO    ] ================================================
[2026-06-27 05:11:17,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:11:17
[2026-06-27 05:11:18,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:11:18,186.186 INFO    ] Initializing speech engine...
[2026-06-27 05:11:18,192.192 INFO    ] 2026-06-27 05:11:18
[2026-06-27 05:11:18,405.405 INFO    ] 2026-06-27 05:11:18
[2026-06-27 05:11:18,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:11:18,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:11:18,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:11:18,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:11:18,832.832 INFO    ] time= 27/06/2026 05:11:18
[2026-06-27 05:11:18,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:11:18,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:11:18,956.956 INFO    ] No existing commands found in stream
[2026-06-27 05:11:23,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:11:23,967.967 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-27 05:11:24,632.632 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:11:24,634.634 INFO    ] Checking for system updates...
[2026-06-27 05:11:24,655.655 INFO    ] 200
[2026-06-27 05:11:24,656.656 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:11:24,686.686 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:11:24,688.688 INFO    ] No update needed
[2026-06-27 05:11:24,689.689 INFO    ] Checking for camera pi updates...
[2026-06-27 05:11:24,711.711 INFO    ] 200
[2026-06-27 05:11:24,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:11:24,737.737 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:11:24,773.773 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:11:24,774.774 INFO    ] No camera update needed
[2026-06-27 05:11:24,775.775 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:11:24,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:11:24,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:11:24,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:11:26,822.822 INFO    ] ================================================
[2026-06-27 05:11:26,838.838 INFO    ] Launching Daemon at Sat Jun 27 05:11:26 IST 2026
[2026-06-27 05:11:26,850.850 INFO    ] ================================================
[2026-06-27 05:11:27,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:11:27
[2026-06-27 05:11:27,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:11:27,660.660 INFO    ] Initializing speech engine...
[2026-06-27 05:11:27,665.665 INFO    ] 2026-06-27 05:11:27
[2026-06-27 05:11:27,871.871 INFO    ] 2026-06-27 05:11:27
[2026-06-27 05:11:27,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:11:28,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:11:28,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:11:28,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:11:28,315.315 INFO    ] time= 27/06/2026 05:11:28
[2026-06-27 05:11:28,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:11:28,322.322 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:11:28,390.390 INFO    ] No existing commands found in stream
[2026-06-27 05:11:33,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:11:33,407.407 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-27 05:11:34,212.212 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:11:34,214.214 INFO    ] Checking for system updates...
[2026-06-27 05:11:34,236.236 INFO    ] 200
[2026-06-27 05:11:34,238.238 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:11:34,271.271 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:11:34,273.273 INFO    ] No update needed
[2026-06-27 05:11:34,274.274 INFO    ] Checking for camera pi updates...
[2026-06-27 05:11:34,295.295 INFO    ] 200
[2026-06-27 05:11:34,296.296 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:11:34,322.322 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:11:34,359.359 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:11:34,360.360 INFO    ] No camera update needed
[2026-06-27 05:11:34,362.362 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:11:34,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:11:34,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:11:34,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:11:36,410.410 INFO    ] ================================================
[2026-06-27 05:11:36,425.425 INFO    ] Launching Daemon at Sat Jun 27 05:11:36 IST 2026
[2026-06-27 05:11:36,437.437 INFO    ] ================================================
[2026-06-27 05:11:36,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:11:36
[2026-06-27 05:11:37,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:11:37,232.232 INFO    ] Initializing speech engine...
[2026-06-27 05:11:37,238.238 INFO    ] 2026-06-27 05:11:37
[2026-06-27 05:11:37,443.443 INFO    ] 2026-06-27 05:11:37
[2026-06-27 05:11:37,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:11:37,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:11:37,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:11:37,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:11:37,869.869 INFO    ] time= 27/06/2026 05:11:37
[2026-06-27 05:11:37,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:11:37,916.916 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:11:38,023.023 INFO    ] No existing commands found in stream
[2026-06-27 05:11:43,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:11:43,050.050 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-27 05:11:43,655.655 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 05:11:43,656.656 INFO    ] Checking for system updates...
[2026-06-27 05:11:43,678.678 INFO    ] 200
[2026-06-27 05:11:43,680.680 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:11:43,711.711 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:11:43,712.712 INFO    ] No update needed
[2026-06-27 05:11:43,714.714 INFO    ] Checking for camera pi updates...
[2026-06-27 05:11:43,734.734 INFO    ] 200
[2026-06-27 05:11:43,735.735 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:11:43,760.760 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:11:43,798.798 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:11:43,799.799 INFO    ] No camera update needed
[2026-06-27 05:11:43,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:11:43,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:11:43,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:11:43,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:11:45,847.847 INFO    ] ================================================
[2026-06-27 05:11:45,863.863 INFO    ] Launching Daemon at Sat Jun 27 05:11:45 IST 2026
[2026-06-27 05:11:45,876.876 INFO    ] ================================================
[2026-06-27 05:11:46,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:11:46
[2026-06-27 05:11:46,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:11:46,770.770 INFO    ] Initializing speech engine...
[2026-06-27 05:11:46,775.775 INFO    ] 2026-06-27 05:11:46
[2026-06-27 05:11:46,988.988 INFO    ] 2026-06-27 05:11:46
[2026-06-27 05:11:47,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:11:47,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:11:47,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:11:47,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:11:47,438.438 INFO    ] time= 27/06/2026 05:11:47
[2026-06-27 05:11:47,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:11:47,445.445 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:11:47,514.514 INFO    ] No existing commands found in stream
[2026-06-27 05:11:52,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:11:52,532.532 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-27 05:11:55,320.320 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 05:11:55,322.322 INFO    ] Checking for system updates...
[2026-06-27 05:11:55,344.344 INFO    ] 200
[2026-06-27 05:11:55,346.346 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:11:55,382.382 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:11:55,384.384 INFO    ] No update needed
[2026-06-27 05:11:55,386.386 INFO    ] Checking for camera pi updates...
[2026-06-27 05:11:55,408.408 INFO    ] 200
[2026-06-27 05:11:55,409.409 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:11:55,436.436 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:11:55,481.481 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:11:55,483.483 INFO    ] No camera update needed
[2026-06-27 05:11:55,484.484 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:11:55,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:11:55,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:11:55,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:11:57,532.532 INFO    ] ================================================
[2026-06-27 05:11:57,547.547 INFO    ] Launching Daemon at Sat Jun 27 05:11:57 IST 2026
[2026-06-27 05:11:57,559.559 INFO    ] ================================================
[2026-06-27 05:11:57,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:11:57
[2026-06-27 05:11:58,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:11:58,429.429 INFO    ] Initializing speech engine...
[2026-06-27 05:11:58,435.435 INFO    ] 2026-06-27 05:11:58
[2026-06-27 05:11:58,646.646 INFO    ] 2026-06-27 05:11:58
[2026-06-27 05:11:58,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:11:58,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:11:58,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:11:59,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:11:59,091.091 INFO    ] time= 27/06/2026 05:11:59
[2026-06-27 05:11:59,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:11:59,095.095 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:11:59,163.163 INFO    ] No existing commands found in stream
[2026-06-27 05:12:04,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:12:04,181.181 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-27 05:12:06,483.483 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 05:12:06,484.484 INFO    ] Checking for system updates...
[2026-06-27 05:12:06,505.505 INFO    ] 200
[2026-06-27 05:12:06,506.506 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:12:06,537.537 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:12:06,538.538 INFO    ] No update needed
[2026-06-27 05:12:06,540.540 INFO    ] Checking for camera pi updates...
[2026-06-27 05:12:06,563.563 INFO    ] 200
[2026-06-27 05:12:06,564.564 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:12:06,588.588 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:12:06,625.625 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:12:06,626.626 INFO    ] No camera update needed
[2026-06-27 05:12:06,627.627 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:12:06,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:12:06,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:12:06,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:12:08,673.673 INFO    ] ================================================
[2026-06-27 05:12:08,688.688 INFO    ] Launching Daemon at Sat Jun 27 05:12:08 IST 2026
[2026-06-27 05:12:08,699.699 INFO    ] ================================================
[2026-06-27 05:12:09,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:12:09
[2026-06-27 05:12:09,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:12:09,508.508 INFO    ] Initializing speech engine...
[2026-06-27 05:12:09,519.519 INFO    ] 2026-06-27 05:12:09
[2026-06-27 05:12:09,725.725 INFO    ] 2026-06-27 05:12:09
[2026-06-27 05:12:09,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:12:09,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:12:09,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:12:10,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:12:10,153.153 INFO    ] time= 27/06/2026 05:12:10
[2026-06-27 05:12:10,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:12:10,182.182 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:12:10,248.248 INFO    ] No existing commands found in stream
[2026-06-27 05:12:15,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:12:15,261.261 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-27 05:12:16,749.749 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:12:16,750.750 INFO    ] Checking for system updates...
[2026-06-27 05:12:16,773.773 INFO    ] 200
[2026-06-27 05:12:16,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:12:16,806.806 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:12:16,807.807 INFO    ] No update needed
[2026-06-27 05:12:16,809.809 INFO    ] Checking for camera pi updates...
[2026-06-27 05:12:16,830.830 INFO    ] 200
[2026-06-27 05:12:16,831.831 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:12:16,854.854 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:12:16,890.890 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:12:16,892.892 INFO    ] No camera update needed
[2026-06-27 05:12:16,893.893 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:12:16,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:12:16,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:12:16,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:12:18,943.943 INFO    ] ================================================
[2026-06-27 05:12:18,958.958 INFO    ] Launching Daemon at Sat Jun 27 05:12:18 IST 2026
[2026-06-27 05:12:18,969.969 INFO    ] ================================================
[2026-06-27 05:12:19,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:12:19
[2026-06-27 05:12:19,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:12:19,796.796 INFO    ] Initializing speech engine...
[2026-06-27 05:12:19,806.806 INFO    ] 2026-06-27 05:12:19
[2026-06-27 05:12:20,011.011 INFO    ] 2026-06-27 05:12:19
[2026-06-27 05:12:20,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:12:20,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:12:20,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:12:20,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:12:20,431.431 INFO    ] time= 27/06/2026 05:12:20
[2026-06-27 05:12:20,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:12:20,461.461 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:12:20,528.528 INFO    ] No existing commands found in stream
[2026-06-27 05:12:25,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:12:25,545.545 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-27 05:12:27,198.198 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 05:12:27,200.200 INFO    ] Checking for system updates...
[2026-06-27 05:12:27,221.221 INFO    ] 200
[2026-06-27 05:12:27,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:12:27,256.256 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:12:27,258.258 INFO    ] No update needed
[2026-06-27 05:12:27,259.259 INFO    ] Checking for camera pi updates...
[2026-06-27 05:12:27,279.279 INFO    ] 200
[2026-06-27 05:12:27,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:12:27,308.308 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:12:27,448.448 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:12:27,449.449 INFO    ] No camera update needed
[2026-06-27 05:12:27,451.451 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:12:27,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:12:27,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:12:27,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:12:29,496.496 INFO    ] ================================================
[2026-06-27 05:12:29,511.511 INFO    ] Launching Daemon at Sat Jun 27 05:12:29 IST 2026
[2026-06-27 05:12:29,522.522 INFO    ] ================================================
[2026-06-27 05:12:29,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:12:29
[2026-06-27 05:12:30,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:12:30,307.307 INFO    ] Initializing speech engine...
[2026-06-27 05:12:30,317.317 INFO    ] 2026-06-27 05:12:30
[2026-06-27 05:12:30,523.523 INFO    ] 2026-06-27 05:12:30
[2026-06-27 05:12:30,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:12:30,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:12:30,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:12:30,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:12:30,934.934 INFO    ] time= 27/06/2026 05:12:30
[2026-06-27 05:12:30,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:12:30,974.974 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:12:31,044.044 INFO    ] No existing commands found in stream
[2026-06-27 05:12:36,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:12:36,057.057 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-27 05:12:38,110.110 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 05:12:38,111.111 INFO    ] Checking for system updates...
[2026-06-27 05:12:38,133.133 INFO    ] 200
[2026-06-27 05:12:38,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:12:38,169.169 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:12:38,170.170 INFO    ] No update needed
[2026-06-27 05:12:38,171.171 INFO    ] Checking for camera pi updates...
[2026-06-27 05:12:38,191.191 INFO    ] 200
[2026-06-27 05:12:38,193.193 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:12:38,217.217 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:12:38,257.257 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:12:38,258.258 INFO    ] No camera update needed
[2026-06-27 05:12:38,259.259 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:12:38,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:12:38,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:12:38,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:12:40,305.305 INFO    ] ================================================
[2026-06-27 05:12:40,320.320 INFO    ] Launching Daemon at Sat Jun 27 05:12:40 IST 2026
[2026-06-27 05:12:40,331.331 INFO    ] ================================================
[2026-06-27 05:12:40,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:12:40
[2026-06-27 05:12:41,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:12:41,159.159 INFO    ] Initializing speech engine...
[2026-06-27 05:12:41,171.171 INFO    ] 2026-06-27 05:12:41
[2026-06-27 05:12:41,380.380 INFO    ] 2026-06-27 05:12:41
[2026-06-27 05:12:41,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:12:41,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:12:41,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:12:41,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:12:41,823.823 INFO    ] time= 27/06/2026 05:12:41
[2026-06-27 05:12:41,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:12:41,832.832 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:12:41,897.897 INFO    ] No existing commands found in stream
[2026-06-27 05:12:46,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:12:46,911.911 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-27 05:12:47,345.345 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 05:12:47,346.346 INFO    ] Checking for system updates...
[2026-06-27 05:12:47,367.367 INFO    ] 200
[2026-06-27 05:12:47,369.369 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:12:47,402.402 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:12:47,404.404 INFO    ] No update needed
[2026-06-27 05:12:47,405.405 INFO    ] Checking for camera pi updates...
[2026-06-27 05:12:47,426.426 INFO    ] 200
[2026-06-27 05:12:47,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:12:47,456.456 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:12:47,491.491 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:12:47,492.492 INFO    ] No camera update needed
[2026-06-27 05:12:47,494.494 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:12:47,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:12:47,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:12:47,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:12:49,544.544 INFO    ] ================================================
[2026-06-27 05:12:49,561.561 INFO    ] Launching Daemon at Sat Jun 27 05:12:49 IST 2026
[2026-06-27 05:12:49,572.572 INFO    ] ================================================
[2026-06-27 05:12:49,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:12:49
[2026-06-27 05:12:50,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:12:50,375.375 INFO    ] Initializing speech engine...
[2026-06-27 05:12:50,383.383 INFO    ] 2026-06-27 05:12:50
[2026-06-27 05:12:50,598.598 INFO    ] 2026-06-27 05:12:50
[2026-06-27 05:12:50,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:12:50,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:12:50,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:12:50,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:12:51,012.012 INFO    ] time= 27/06/2026 05:12:50
[2026-06-27 05:12:51,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:12:51,051.051 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:12:51,120.120 INFO    ] No existing commands found in stream
[2026-06-27 05:12:56,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:12:56,137.137 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-27 05:12:58,029.029 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:12:58,030.030 INFO    ] Checking for system updates...
[2026-06-27 05:12:58,053.053 INFO    ] 200
[2026-06-27 05:12:58,054.054 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:12:58,087.087 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:12:58,089.089 INFO    ] No update needed
[2026-06-27 05:12:58,090.090 INFO    ] Checking for camera pi updates...
[2026-06-27 05:12:58,111.111 INFO    ] 200
[2026-06-27 05:12:58,112.112 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:12:58,136.136 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:12:58,173.173 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:12:58,175.175 INFO    ] No camera update needed
[2026-06-27 05:12:58,176.176 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:12:58,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:12:58,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:12:58,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:13:00,222.222 INFO    ] ================================================
[2026-06-27 05:13:00,238.238 INFO    ] Launching Daemon at Sat Jun 27 05:13:00 IST 2026
[2026-06-27 05:13:00,249.249 INFO    ] ================================================
[2026-06-27 05:13:00,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:13:00
[2026-06-27 05:13:01,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:13:01,162.162 INFO    ] Initializing speech engine...
[2026-06-27 05:13:01,168.168 INFO    ] 2026-06-27 05:13:01
[2026-06-27 05:13:01,492.492 INFO    ] 2026-06-27 05:13:01
[2026-06-27 05:13:01,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:13:01,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:13:01,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:13:01,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:13:01,967.967 INFO    ] time= 27/06/2026 05:13:01
[2026-06-27 05:13:02,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:13:02,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:13:02,101.101 INFO    ] No existing commands found in stream
[2026-06-27 05:13:07,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:13:07,116.116 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-27 05:13:09,866.866 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 05:13:09,867.867 INFO    ] Checking for system updates...
[2026-06-27 05:13:09,889.889 INFO    ] 200
[2026-06-27 05:13:09,890.890 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:13:09,924.924 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:13:09,926.926 INFO    ] No update needed
[2026-06-27 05:13:09,927.927 INFO    ] Checking for camera pi updates...
[2026-06-27 05:13:09,951.951 INFO    ] 200
[2026-06-27 05:13:09,953.953 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:13:09,980.980 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:13:10,024.024 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:13:10,026.026 INFO    ] No camera update needed
[2026-06-27 05:13:10,027.027 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:13:10,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:13:10,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:13:10,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:13:12,076.076 INFO    ] ================================================
[2026-06-27 05:13:12,094.094 INFO    ] Launching Daemon at Sat Jun 27 05:13:12 IST 2026
[2026-06-27 05:13:12,105.105 INFO    ] ================================================
[2026-06-27 05:13:12,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:13:12
[2026-06-27 05:13:12,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:13:13,008.008 INFO    ] Initializing speech engine...
[2026-06-27 05:13:13,013.013 INFO    ] 2026-06-27 05:13:13
[2026-06-27 05:13:13,225.225 INFO    ] 2026-06-27 05:13:13
[2026-06-27 05:13:13,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:13:13,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:13:13,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:13:13,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:13:13,675.675 INFO    ] time= 27/06/2026 05:13:13
[2026-06-27 05:13:13,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:13:13,682.682 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:13:13,750.750 INFO    ] No existing commands found in stream
[2026-06-27 05:13:18,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:13:18,768.768 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-27 05:13:20,615.615 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 05:13:20,616.616 INFO    ] Checking for system updates...
[2026-06-27 05:13:20,639.639 INFO    ] 200
[2026-06-27 05:13:20,641.641 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:13:20,678.678 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:13:20,679.679 INFO    ] No update needed
[2026-06-27 05:13:20,681.681 INFO    ] Checking for camera pi updates...
[2026-06-27 05:13:20,705.705 INFO    ] 200
[2026-06-27 05:13:20,707.707 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:13:20,733.733 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:13:20,771.771 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:13:20,772.772 INFO    ] No camera update needed
[2026-06-27 05:13:20,774.774 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:13:20,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:13:20,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:13:20,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:13:22,822.822 INFO    ] ================================================
[2026-06-27 05:13:22,839.839 INFO    ] Launching Daemon at Sat Jun 27 05:13:22 IST 2026
[2026-06-27 05:13:22,851.851 INFO    ] ================================================
[2026-06-27 05:13:23,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:13:23
[2026-06-27 05:13:23,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:13:23,638.638 INFO    ] Initializing speech engine...
[2026-06-27 05:13:23,642.642 INFO    ] 2026-06-27 05:13:23
[2026-06-27 05:13:23,863.863 INFO    ] 2026-06-27 05:13:23
[2026-06-27 05:13:23,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:13:24,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:13:24,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:13:24,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:13:24,292.292 INFO    ] time= 27/06/2026 05:13:24
[2026-06-27 05:13:24,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:13:24,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:13:24,388.388 INFO    ] No existing commands found in stream
[2026-06-27 05:13:29,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:13:29,402.402 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-27 05:13:32,651.651 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:13:32,652.652 INFO    ] Checking for system updates...
[2026-06-27 05:13:32,674.674 INFO    ] 200
[2026-06-27 05:13:32,676.676 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:13:32,707.707 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:13:32,708.708 INFO    ] No update needed
[2026-06-27 05:13:32,710.710 INFO    ] Checking for camera pi updates...
[2026-06-27 05:13:32,730.730 INFO    ] 200
[2026-06-27 05:13:32,731.731 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:13:32,758.758 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:13:32,800.800 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:13:32,803.803 INFO    ] No camera update needed
[2026-06-27 05:13:32,806.806 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:13:32,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:13:32,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:13:32,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:13:34,865.865 INFO    ] ================================================
[2026-06-27 05:13:34,880.880 INFO    ] Launching Daemon at Sat Jun 27 05:13:34 IST 2026
[2026-06-27 05:13:34,891.891 INFO    ] ================================================
[2026-06-27 05:13:35,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:13:35
[2026-06-27 05:13:35,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:13:35,682.682 INFO    ] Initializing speech engine...
[2026-06-27 05:13:35,688.688 INFO    ] 2026-06-27 05:13:35
[2026-06-27 05:13:35,890.890 INFO    ] 2026-06-27 05:13:35
[2026-06-27 05:13:35,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:13:36,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:13:36,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:13:36,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:13:36,308.308 INFO    ] time= 27/06/2026 05:13:36
[2026-06-27 05:13:36,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:13:36,338.338 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:13:36,403.403 INFO    ] No existing commands found in stream
[2026-06-27 05:13:41,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:13:41,417.417 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-27 05:13:44,184.184 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 05:13:44,186.186 INFO    ] Checking for system updates...
[2026-06-27 05:13:44,209.209 INFO    ] 200
[2026-06-27 05:13:44,211.211 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:13:44,241.241 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:13:44,243.243 INFO    ] No update needed
[2026-06-27 05:13:44,244.244 INFO    ] Checking for camera pi updates...
[2026-06-27 05:13:44,265.265 INFO    ] 200
[2026-06-27 05:13:44,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:13:44,292.292 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:13:44,331.331 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:13:44,332.332 INFO    ] No camera update needed
[2026-06-27 05:13:44,334.334 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:13:44,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:13:44,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:13:44,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:13:46,379.379 INFO    ] ================================================
[2026-06-27 05:13:46,396.396 INFO    ] Launching Daemon at Sat Jun 27 05:13:46 IST 2026
[2026-06-27 05:13:46,406.406 INFO    ] ================================================
[2026-06-27 05:13:46,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:13:46
[2026-06-27 05:13:47,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:13:47,185.185 INFO    ] Initializing speech engine...
[2026-06-27 05:13:47,198.198 INFO    ] 2026-06-27 05:13:47
[2026-06-27 05:13:47,422.422 INFO    ] 2026-06-27 05:13:47
[2026-06-27 05:13:47,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:13:47,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:13:47,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:13:47,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:13:47,863.863 INFO    ] time= 27/06/2026 05:13:47
[2026-06-27 05:13:47,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:13:47,916.916 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:13:47,993.993 INFO    ] No existing commands found in stream
[2026-06-27 05:13:53,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:13:53,010.010 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-27 05:13:55,041.041 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 05:13:55,042.042 INFO    ] Checking for system updates...
[2026-06-27 05:13:55,064.064 INFO    ] 200
[2026-06-27 05:13:55,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:13:55,096.096 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:13:55,098.098 INFO    ] No update needed
[2026-06-27 05:13:55,099.099 INFO    ] Checking for camera pi updates...
[2026-06-27 05:13:55,118.118 INFO    ] 200
[2026-06-27 05:13:55,120.120 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:13:55,145.145 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:13:55,170.170 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:13:55,171.171 INFO    ] No camera update needed
[2026-06-27 05:13:55,172.172 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:13:55,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:13:55,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:13:55,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:13:57,217.217 INFO    ] ================================================
[2026-06-27 05:13:57,236.236 INFO    ] Launching Daemon at Sat Jun 27 05:13:57 IST 2026
[2026-06-27 05:13:57,247.247 INFO    ] ================================================
[2026-06-27 05:13:57,605.605 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:13:57
[2026-06-27 05:13:57,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:13:58,068.068 INFO    ] Initializing speech engine...
[2026-06-27 05:13:58,074.074 INFO    ] 2026-06-27 05:13:58
[2026-06-27 05:13:58,295.295 INFO    ] 2026-06-27 05:13:58
[2026-06-27 05:13:58,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:13:58,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:13:58,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:13:58,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:13:58,739.739 INFO    ] time= 27/06/2026 05:13:58
[2026-06-27 05:13:58,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:13:58,788.788 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:13:58,864.864 INFO    ] No existing commands found in stream
[2026-06-27 05:14:03,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:14:03,881.881 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-27 05:14:07,057.057 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 05:14:07,059.059 INFO    ] Checking for system updates...
[2026-06-27 05:14:07,081.081 INFO    ] 200
[2026-06-27 05:14:07,082.082 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:14:07,112.112 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:14:07,114.114 INFO    ] No update needed
[2026-06-27 05:14:07,116.116 INFO    ] Checking for camera pi updates...
[2026-06-27 05:14:07,137.137 INFO    ] 200
[2026-06-27 05:14:07,139.139 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:14:07,162.162 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:14:07,203.203 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:14:07,204.204 INFO    ] No camera update needed
[2026-06-27 05:14:07,206.206 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:14:07,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:14:07,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:14:07,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:14:09,251.251 INFO    ] ================================================
[2026-06-27 05:14:09,270.270 INFO    ] Launching Daemon at Sat Jun 27 05:14:09 IST 2026
[2026-06-27 05:14:09,281.281 INFO    ] ================================================
[2026-06-27 05:14:09,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:14:09
[2026-06-27 05:14:09,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:14:10,067.067 INFO    ] Initializing speech engine...
[2026-06-27 05:14:10,072.072 INFO    ] 2026-06-27 05:14:10
[2026-06-27 05:14:10,277.277 INFO    ] 2026-06-27 05:14:10
[2026-06-27 05:14:10,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:14:10,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:14:10,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:14:10,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:14:10,747.747 INFO    ] time= 27/06/2026 05:14:10
[2026-06-27 05:14:10,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:14:10,778.778 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:14:10,894.894 INFO    ] No existing commands found in stream
[2026-06-27 05:14:15,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:14:15,908.908 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-27 05:14:17,295.295 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:14:17,296.296 INFO    ] Checking for system updates...
[2026-06-27 05:14:17,319.319 INFO    ] 200
[2026-06-27 05:14:17,320.320 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:14:17,353.353 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:14:17,354.354 INFO    ] No update needed
[2026-06-27 05:14:17,356.356 INFO    ] Checking for camera pi updates...
[2026-06-27 05:14:17,377.377 INFO    ] 200
[2026-06-27 05:14:17,379.379 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:14:17,402.402 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:14:17,448.448 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:14:17,450.450 INFO    ] No camera update needed
[2026-06-27 05:14:17,451.451 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:14:17,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:14:17,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:14:17,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:14:19,498.498 INFO    ] ================================================
[2026-06-27 05:14:19,514.514 INFO    ] Launching Daemon at Sat Jun 27 05:14:19 IST 2026
[2026-06-27 05:14:19,525.525 INFO    ] ================================================
[2026-06-27 05:14:19,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:14:19
[2026-06-27 05:14:20,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:14:20,309.309 INFO    ] Initializing speech engine...
[2026-06-27 05:14:20,319.319 INFO    ] 2026-06-27 05:14:20
[2026-06-27 05:14:20,535.535 INFO    ] 2026-06-27 05:14:20
[2026-06-27 05:14:20,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:14:20,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:14:20,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:14:20,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:14:20,964.964 INFO    ] time= 27/06/2026 05:14:20
[2026-06-27 05:14:20,987.987 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:14:20,992.992 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:14:21,060.060 INFO    ] No existing commands found in stream
[2026-06-27 05:14:26,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:14:26,072.072 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-27 05:14:27,721.721 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 05:14:27,722.722 INFO    ] Checking for system updates...
[2026-06-27 05:14:27,745.745 INFO    ] 200
[2026-06-27 05:14:27,746.746 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:14:27,776.776 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:14:27,777.777 INFO    ] No update needed
[2026-06-27 05:14:27,779.779 INFO    ] Checking for camera pi updates...
[2026-06-27 05:14:27,798.798 INFO    ] 200
[2026-06-27 05:14:27,799.799 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:14:27,823.823 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:14:27,863.863 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:14:27,864.864 INFO    ] No camera update needed
[2026-06-27 05:14:27,866.866 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:14:27,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:14:27,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:14:27,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:14:29,912.912 INFO    ] ================================================
[2026-06-27 05:14:29,927.927 INFO    ] Launching Daemon at Sat Jun 27 05:14:29 IST 2026
[2026-06-27 05:14:29,938.938 INFO    ] ================================================
[2026-06-27 05:14:30,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:14:30
[2026-06-27 05:14:30,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:14:30,735.735 INFO    ] Initializing speech engine...
[2026-06-27 05:14:30,739.739 INFO    ] 2026-06-27 05:14:30
[2026-06-27 05:14:30,953.953 INFO    ] 2026-06-27 05:14:30
[2026-06-27 05:14:30,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:14:31,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:14:31,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:14:31,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:14:31,399.399 INFO    ] time= 27/06/2026 05:14:31
[2026-06-27 05:14:31,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:14:31,429.429 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:14:31,495.495 INFO    ] No existing commands found in stream
[2026-06-27 05:14:36,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:14:36,508.508 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-27 05:14:38,695.695 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:14:38,697.697 INFO    ] Checking for system updates...
[2026-06-27 05:14:38,719.719 INFO    ] 200
[2026-06-27 05:14:38,721.721 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:14:38,754.754 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:14:38,755.755 INFO    ] No update needed
[2026-06-27 05:14:38,757.757 INFO    ] Checking for camera pi updates...
[2026-06-27 05:14:38,776.776 INFO    ] 200
[2026-06-27 05:14:38,778.778 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:14:38,803.803 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:14:38,840.840 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:14:38,841.841 INFO    ] No camera update needed
[2026-06-27 05:14:38,843.843 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:14:38,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:14:38,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:14:38,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:14:40,890.890 INFO    ] ================================================
[2026-06-27 05:14:40,907.907 INFO    ] Launching Daemon at Sat Jun 27 05:14:40 IST 2026
[2026-06-27 05:14:40,919.919 INFO    ] ================================================
[2026-06-27 05:14:41,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:14:41
[2026-06-27 05:14:41,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:14:41,725.725 INFO    ] Initializing speech engine...
[2026-06-27 05:14:41,731.731 INFO    ] 2026-06-27 05:14:41
[2026-06-27 05:14:41,938.938 INFO    ] 2026-06-27 05:14:41
[2026-06-27 05:14:41,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:14:42,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:14:42,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:14:42,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:14:42,356.356 INFO    ] time= 27/06/2026 05:14:42
[2026-06-27 05:14:42,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:14:42,396.396 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:14:42,465.465 INFO    ] No existing commands found in stream
[2026-06-27 05:14:47,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:14:47,477.477 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-27 05:14:50,038.038 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:14:50,040.040 INFO    ] Checking for system updates...
[2026-06-27 05:14:50,062.062 INFO    ] 200
[2026-06-27 05:14:50,064.064 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:14:50,097.097 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:14:50,099.099 INFO    ] No update needed
[2026-06-27 05:14:50,100.100 INFO    ] Checking for camera pi updates...
[2026-06-27 05:14:50,121.121 INFO    ] 200
[2026-06-27 05:14:50,122.122 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:14:50,152.152 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:14:50,191.191 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:14:50,192.192 INFO    ] No camera update needed
[2026-06-27 05:14:50,194.194 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:14:50,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:14:50,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:14:50,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:14:52,243.243 INFO    ] ================================================
[2026-06-27 05:14:52,259.259 INFO    ] Launching Daemon at Sat Jun 27 05:14:52 IST 2026
[2026-06-27 05:14:52,271.271 INFO    ] ================================================
[2026-06-27 05:14:52,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:14:52
[2026-06-27 05:14:52,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:14:53,073.073 INFO    ] Initializing speech engine...
[2026-06-27 05:14:53,081.081 INFO    ] 2026-06-27 05:14:53
[2026-06-27 05:14:53,290.290 INFO    ] 2026-06-27 05:14:53
[2026-06-27 05:14:53,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:14:53,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:14:53,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:14:53,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:14:53,730.730 INFO    ] time= 27/06/2026 05:14:53
[2026-06-27 05:14:53,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:14:53,737.737 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:14:53,803.803 INFO    ] No existing commands found in stream
[2026-06-27 05:14:58,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:14:58,817.817 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-27 05:15:02,915.915 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 05:15:02,917.917 INFO    ] Checking for system updates...
[2026-06-27 05:15:02,940.940 INFO    ] 200
[2026-06-27 05:15:02,942.942 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:15:02,983.983 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:15:02,984.984 INFO    ] No update needed
[2026-06-27 05:15:02,985.985 INFO    ] Checking for camera pi updates...
[2026-06-27 05:15:03,005.005 INFO    ] 200
[2026-06-27 05:15:03,007.007 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:15:03,039.039 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:15:03,060.060 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:15:03,061.061 INFO    ] No camera update needed
[2026-06-27 05:15:03,063.063 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:15:03,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:15:03,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:15:03,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:15:05,108.108 INFO    ] ================================================
[2026-06-27 05:15:05,125.125 INFO    ] Launching Daemon at Sat Jun 27 05:15:05 IST 2026
[2026-06-27 05:15:05,136.136 INFO    ] ================================================
[2026-06-27 05:15:05,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:15:05
[2026-06-27 05:15:05,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:15:05,948.948 INFO    ] Initializing speech engine...
[2026-06-27 05:15:05,952.952 INFO    ] 2026-06-27 05:15:05
[2026-06-27 05:15:06,169.169 INFO    ] 2026-06-27 05:15:06
[2026-06-27 05:15:06,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:15:06,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:15:06,409.409 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:15:06,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:15:06,629.629 INFO    ] time= 27/06/2026 05:15:06
[2026-06-27 05:15:06,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:15:06,636.636 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:15:06,703.703 INFO    ] No existing commands found in stream
[2026-06-27 05:15:11,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:15:11,716.716 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-27 05:15:13,910.910 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 05:15:13,912.912 INFO    ] Checking for system updates...
[2026-06-27 05:15:13,933.933 INFO    ] 200
[2026-06-27 05:15:13,935.935 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:15:13,965.965 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:15:13,967.967 INFO    ] No update needed
[2026-06-27 05:15:13,968.968 INFO    ] Checking for camera pi updates...
[2026-06-27 05:15:13,988.988 INFO    ] 200
[2026-06-27 05:15:13,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:15:14,014.014 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:15:14,051.051 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:15:14,052.052 INFO    ] No camera update needed
[2026-06-27 05:15:14,054.054 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:15:14,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:15:14,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:15:14,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:15:16,099.099 INFO    ] ================================================
[2026-06-27 05:15:16,115.115 INFO    ] Launching Daemon at Sat Jun 27 05:15:16 IST 2026
[2026-06-27 05:15:16,126.126 INFO    ] ================================================
[2026-06-27 05:15:16,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:15:16
[2026-06-27 05:15:16,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:15:16,939.939 INFO    ] Initializing speech engine...
[2026-06-27 05:15:16,944.944 INFO    ] 2026-06-27 05:15:16
[2026-06-27 05:15:17,152.152 INFO    ] 2026-06-27 05:15:17
[2026-06-27 05:15:17,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:15:17,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:15:17,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:15:17,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:15:17,672.672 INFO    ] time= 27/06/2026 05:15:17
[2026-06-27 05:15:17,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:15:17,699.699 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:15:17,797.797 INFO    ] No existing commands found in stream
[2026-06-27 05:15:22,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:15:22,810.810 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-27 05:15:26,125.125 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 05:15:26,127.127 INFO    ] Checking for system updates...
[2026-06-27 05:15:26,150.150 INFO    ] 200
[2026-06-27 05:15:26,152.152 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:15:26,185.185 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:15:26,187.187 INFO    ] No update needed
[2026-06-27 05:15:26,188.188 INFO    ] Checking for camera pi updates...
[2026-06-27 05:15:26,210.210 INFO    ] 200
[2026-06-27 05:15:26,212.212 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:15:26,243.243 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:15:26,294.294 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:15:26,295.295 INFO    ] No camera update needed
[2026-06-27 05:15:26,297.297 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:15:26,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:15:26,301.301 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:15:26,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:15:28,347.347 INFO    ] ================================================
[2026-06-27 05:15:28,362.362 INFO    ] Launching Daemon at Sat Jun 27 05:15:28 IST 2026
[2026-06-27 05:15:28,373.373 INFO    ] ================================================
[2026-06-27 05:15:28,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:15:28
[2026-06-27 05:15:29,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:15:29,254.254 INFO    ] Initializing speech engine...
[2026-06-27 05:15:29,259.259 INFO    ] 2026-06-27 05:15:29
[2026-06-27 05:15:29,471.471 INFO    ] 2026-06-27 05:15:29
[2026-06-27 05:15:29,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:15:29,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:15:29,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:15:29,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:15:29,903.903 INFO    ] time= 27/06/2026 05:15:29
[2026-06-27 05:15:29,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:15:29,931.931 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:15:30,000.000 INFO    ] No existing commands found in stream
[2026-06-27 05:15:35,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:15:35,018.018 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-27 05:15:40,341.341 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 05:15:40,343.343 INFO    ] Checking for system updates...
[2026-06-27 05:15:40,365.365 INFO    ] 200
[2026-06-27 05:15:40,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:15:40,397.397 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:15:40,398.398 INFO    ] No update needed
[2026-06-27 05:15:40,399.399 INFO    ] Checking for camera pi updates...
[2026-06-27 05:15:40,421.421 INFO    ] 200
[2026-06-27 05:15:40,422.422 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:15:40,447.447 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:15:40,492.492 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:15:40,493.493 INFO    ] No camera update needed
[2026-06-27 05:15:40,495.495 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:15:40,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:15:40,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:15:40,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:15:42,540.540 INFO    ] ================================================
[2026-06-27 05:15:42,555.555 INFO    ] Launching Daemon at Sat Jun 27 05:15:42 IST 2026
[2026-06-27 05:15:42,566.566 INFO    ] ================================================
[2026-06-27 05:15:42,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:15:42
[2026-06-27 05:15:43,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:15:43,372.372 INFO    ] Initializing speech engine...
[2026-06-27 05:15:43,385.385 INFO    ] 2026-06-27 05:15:43
[2026-06-27 05:15:43,594.594 INFO    ] 2026-06-27 05:15:43
[2026-06-27 05:15:43,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:15:43,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:15:43,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:15:43,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:15:43,967.967 INFO    ] time= 27/06/2026 05:15:43
[2026-06-27 05:15:43,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:15:44,050.050 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:15:44,152.152 INFO    ] No existing commands found in stream
[2026-06-27 05:15:49,163.163 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:15:49,166.166 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-27 05:15:51,209.209 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 05:15:51,210.210 INFO    ] Checking for system updates...
[2026-06-27 05:15:51,231.231 INFO    ] 200
[2026-06-27 05:15:51,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:15:51,263.263 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:15:51,264.264 INFO    ] No update needed
[2026-06-27 05:15:51,266.266 INFO    ] Checking for camera pi updates...
[2026-06-27 05:15:51,285.285 INFO    ] 200
[2026-06-27 05:15:51,286.286 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:15:51,312.312 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:15:51,352.352 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:15:51,353.353 INFO    ] No camera update needed
[2026-06-27 05:15:51,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:15:51,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:15:51,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:15:51,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:15:53,400.400 INFO    ] ================================================
[2026-06-27 05:15:53,416.416 INFO    ] Launching Daemon at Sat Jun 27 05:15:53 IST 2026
[2026-06-27 05:15:53,426.426 INFO    ] ================================================
[2026-06-27 05:15:53,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:15:53
[2026-06-27 05:15:54,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:15:54,282.282 INFO    ] Initializing speech engine...
[2026-06-27 05:15:54,289.289 INFO    ] 2026-06-27 05:15:54
[2026-06-27 05:15:54,492.492 INFO    ] 2026-06-27 05:15:54
[2026-06-27 05:15:54,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:15:54,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:15:54,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:15:54,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:15:54,914.914 INFO    ] time= 27/06/2026 05:15:54
[2026-06-27 05:15:54,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:15:54,943.943 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:15:55,015.015 INFO    ] No existing commands found in stream
[2026-06-27 05:16:00,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:16:00,047.047 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-27 05:16:03,272.272 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 05:16:03,274.274 INFO    ] Checking for system updates...
[2026-06-27 05:16:03,296.296 INFO    ] 200
[2026-06-27 05:16:03,297.297 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:16:03,331.331 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:16:03,333.333 INFO    ] No update needed
[2026-06-27 05:16:03,334.334 INFO    ] Checking for camera pi updates...
[2026-06-27 05:16:03,359.359 INFO    ] 200
[2026-06-27 05:16:03,360.360 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:16:03,387.387 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:16:03,412.412 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:16:03,413.413 INFO    ] No camera update needed
[2026-06-27 05:16:03,415.415 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:16:03,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:16:03,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:16:03,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:16:05,469.469 INFO    ] ================================================
[2026-06-27 05:16:05,486.486 INFO    ] Launching Daemon at Sat Jun 27 05:16:05 IST 2026
[2026-06-27 05:16:05,497.497 INFO    ] ================================================
[2026-06-27 05:16:05,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:16:05
[2026-06-27 05:16:06,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:16:06,267.267 INFO    ] Initializing speech engine...
[2026-06-27 05:16:06,272.272 INFO    ] 2026-06-27 05:16:06
[2026-06-27 05:16:06,496.496 INFO    ] 2026-06-27 05:16:06
[2026-06-27 05:16:06,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:16:06,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:16:06,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:16:06,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:16:06,934.934 INFO    ] time= 27/06/2026 05:16:06
[2026-06-27 05:16:06,945.945 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:16:06,950.950 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:16:07,018.018 INFO    ] No existing commands found in stream
[2026-06-27 05:16:12,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:16:12,035.035 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-27 05:16:14,545.545 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 05:16:14,547.547 INFO    ] Checking for system updates...
[2026-06-27 05:16:14,569.569 INFO    ] 200
[2026-06-27 05:16:14,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:16:14,601.601 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:16:14,602.602 INFO    ] No update needed
[2026-06-27 05:16:14,604.604 INFO    ] Checking for camera pi updates...
[2026-06-27 05:16:14,624.624 INFO    ] 200
[2026-06-27 05:16:14,625.625 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:16:14,651.651 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:16:14,691.691 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:16:14,692.692 INFO    ] No camera update needed
[2026-06-27 05:16:14,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:16:14,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:16:14,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:16:14,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:16:16,738.738 INFO    ] ================================================
[2026-06-27 05:16:16,754.754 INFO    ] Launching Daemon at Sat Jun 27 05:16:16 IST 2026
[2026-06-27 05:16:16,765.765 INFO    ] ================================================
[2026-06-27 05:16:17,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:16:17
[2026-06-27 05:16:17,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:16:17,596.596 INFO    ] Initializing speech engine...
[2026-06-27 05:16:17,601.601 INFO    ] 2026-06-27 05:16:17
[2026-06-27 05:16:17,805.805 INFO    ] 2026-06-27 05:16:17
[2026-06-27 05:16:17,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:16:17,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:16:17,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:16:18,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:16:18,086.086 INFO    ] time= 27/06/2026 05:16:18
[2026-06-27 05:16:18,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:16:18,089.089 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:16:18,141.141 INFO    ] No existing commands found in stream
[2026-06-27 05:16:23,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:16:23,153.153 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-27 05:16:25,148.148 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 05:16:25,150.150 INFO    ] Checking for system updates...
[2026-06-27 05:16:25,173.173 INFO    ] 200
[2026-06-27 05:16:25,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:16:25,211.211 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:16:25,212.212 INFO    ] No update needed
[2026-06-27 05:16:25,214.214 INFO    ] Checking for camera pi updates...
[2026-06-27 05:16:25,237.237 INFO    ] 200
[2026-06-27 05:16:25,238.238 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:16:25,262.262 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:16:25,304.304 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:16:25,305.305 INFO    ] No camera update needed
[2026-06-27 05:16:25,307.307 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:16:25,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:16:25,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:16:25,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:16:27,356.356 INFO    ] ================================================
[2026-06-27 05:16:27,372.372 INFO    ] Launching Daemon at Sat Jun 27 05:16:27 IST 2026
[2026-06-27 05:16:27,382.382 INFO    ] ================================================
[2026-06-27 05:16:27,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:16:27
[2026-06-27 05:16:28,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:16:28,198.198 INFO    ] Initializing speech engine...
[2026-06-27 05:16:28,210.210 INFO    ] 2026-06-27 05:16:28
[2026-06-27 05:16:28,419.419 INFO    ] 2026-06-27 05:16:28
[2026-06-27 05:16:28,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:16:28,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:16:28,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:16:28,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:16:28,847.847 INFO    ] time= 27/06/2026 05:16:28
[2026-06-27 05:16:28,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:16:28,877.877 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:16:28,942.942 INFO    ] No existing commands found in stream
[2026-06-27 05:16:33,953.953 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:16:33,956.956 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-27 05:16:37,434.434 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:16:37,436.436 INFO    ] Checking for system updates...
[2026-06-27 05:16:37,458.458 INFO    ] 200
[2026-06-27 05:16:37,459.459 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:16:37,490.490 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:16:37,492.492 INFO    ] No update needed
[2026-06-27 05:16:37,493.493 INFO    ] Checking for camera pi updates...
[2026-06-27 05:16:37,513.513 INFO    ] 200
[2026-06-27 05:16:37,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:16:37,537.537 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:16:37,677.677 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:16:37,678.678 INFO    ] No camera update needed
[2026-06-27 05:16:37,679.679 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:16:37,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:16:37,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:16:37,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:16:39,724.724 INFO    ] ================================================
[2026-06-27 05:16:39,740.740 INFO    ] Launching Daemon at Sat Jun 27 05:16:39 IST 2026
[2026-06-27 05:16:39,750.750 INFO    ] ================================================
[2026-06-27 05:16:40,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:16:40
[2026-06-27 05:16:40,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:16:40,570.570 INFO    ] Initializing speech engine...
[2026-06-27 05:16:40,575.575 INFO    ] 2026-06-27 05:16:40
[2026-06-27 05:16:40,779.779 INFO    ] 2026-06-27 05:16:40
[2026-06-27 05:16:40,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:16:40,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:16:41,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:16:41,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:16:41,200.200 INFO    ] time= 27/06/2026 05:16:41
[2026-06-27 05:16:41,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:16:41,230.230 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:16:41,298.298 INFO    ] No existing commands found in stream
[2026-06-27 05:16:46,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:16:46,315.315 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-27 05:16:48,072.072 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 05:16:48,073.073 INFO    ] Checking for system updates...
[2026-06-27 05:16:48,095.095 INFO    ] 200
[2026-06-27 05:16:48,097.097 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:16:48,130.130 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:16:48,132.132 INFO    ] No update needed
[2026-06-27 05:16:48,133.133 INFO    ] Checking for camera pi updates...
[2026-06-27 05:16:48,153.153 INFO    ] 200
[2026-06-27 05:16:48,154.154 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:16:48,178.178 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:16:48,219.219 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:16:48,220.220 INFO    ] No camera update needed
[2026-06-27 05:16:48,221.221 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:16:48,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:16:48,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:16:48,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:16:50,260.260 INFO    ] ================================================
[2026-06-27 05:16:50,269.269 INFO    ] Launching Daemon at Sat Jun 27 05:16:50 IST 2026
[2026-06-27 05:16:50,275.275 INFO    ] ================================================
[2026-06-27 05:16:50,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:16:50
[2026-06-27 05:16:50,890.890 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:16:51,033.033 INFO    ] Initializing speech engine...
[2026-06-27 05:16:51,038.038 INFO    ] 2026-06-27 05:16:51
[2026-06-27 05:16:51,240.240 INFO    ] 2026-06-27 05:16:51
[2026-06-27 05:16:51,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:16:51,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:16:51,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:16:51,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:16:51,660.660 INFO    ] time= 27/06/2026 05:16:51
[2026-06-27 05:16:51,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:16:51,690.690 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:16:51,758.758 INFO    ] No existing commands found in stream
[2026-06-27 05:16:56,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:16:56,775.775 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-27 05:16:59,708.708 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:16:59,709.709 INFO    ] Checking for system updates...
[2026-06-27 05:16:59,730.730 INFO    ] 200
[2026-06-27 05:16:59,731.731 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:16:59,766.766 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:16:59,767.767 INFO    ] No update needed
[2026-06-27 05:16:59,769.769 INFO    ] Checking for camera pi updates...
[2026-06-27 05:16:59,790.790 INFO    ] 200
[2026-06-27 05:16:59,791.791 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:16:59,815.815 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:16:59,850.850 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:16:59,851.851 INFO    ] No camera update needed
[2026-06-27 05:16:59,852.852 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:16:59,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:16:59,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:16:59,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:17:01,893.893 INFO    ] ================================================
[2026-06-27 05:17:01,902.902 INFO    ] Launching Daemon at Sat Jun 27 05:17:01 IST 2026
[2026-06-27 05:17:01,912.912 INFO    ] ================================================
[2026-06-27 05:17:02,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:17:02
[2026-06-27 05:17:02,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:17:02,778.778 INFO    ] Initializing speech engine...
[2026-06-27 05:17:02,788.788 INFO    ] 2026-06-27 05:17:02
[2026-06-27 05:17:03,005.005 INFO    ] 2026-06-27 05:17:02
[2026-06-27 05:17:03,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:17:03,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:17:03,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:17:03,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:17:03,426.426 INFO    ] time= 27/06/2026 05:17:03
[2026-06-27 05:17:03,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:17:03,457.457 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:17:03,524.524 INFO    ] No existing commands found in stream
[2026-06-27 05:17:08,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:17:08,536.536 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-27 05:17:10,887.887 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 05:17:10,888.888 INFO    ] Checking for system updates...
[2026-06-27 05:17:10,910.910 INFO    ] 200
[2026-06-27 05:17:10,911.911 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:17:10,944.944 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:17:10,945.945 INFO    ] No update needed
[2026-06-27 05:17:10,947.947 INFO    ] Checking for camera pi updates...
[2026-06-27 05:17:10,966.966 INFO    ] 200
[2026-06-27 05:17:10,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:17:10,993.993 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:17:11,032.032 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:17:11,033.033 INFO    ] No camera update needed
[2026-06-27 05:17:11,035.035 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:17:11,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:17:11,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:17:11,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:17:13,080.080 INFO    ] ================================================
[2026-06-27 05:17:13,097.097 INFO    ] Launching Daemon at Sat Jun 27 05:17:13 IST 2026
[2026-06-27 05:17:13,108.108 INFO    ] ================================================
[2026-06-27 05:17:13,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:17:13
[2026-06-27 05:17:13,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:17:13,913.913 INFO    ] Initializing speech engine...
[2026-06-27 05:17:13,924.924 INFO    ] 2026-06-27 05:17:13
[2026-06-27 05:17:14,144.144 INFO    ] 2026-06-27 05:17:14
[2026-06-27 05:17:14,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:17:14,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:17:14,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:17:14,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:17:14,602.602 INFO    ] time= 27/06/2026 05:17:14
[2026-06-27 05:17:14,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:17:14,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:17:14,699.699 INFO    ] No existing commands found in stream
[2026-06-27 05:17:19,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:17:19,710.710 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-27 05:17:23,985.985 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:17:23,986.986 INFO    ] Checking for system updates...
[2026-06-27 05:17:24,009.009 INFO    ] 200
[2026-06-27 05:17:24,011.011 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:17:24,054.054 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:17:24,056.056 INFO    ] No update needed
[2026-06-27 05:17:24,057.057 INFO    ] Checking for camera pi updates...
[2026-06-27 05:17:24,081.081 INFO    ] 200
[2026-06-27 05:17:24,083.083 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:17:24,108.108 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:17:24,149.149 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:17:24,151.151 INFO    ] No camera update needed
[2026-06-27 05:17:24,152.152 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:17:24,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:17:24,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:17:24,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:17:26,200.200 INFO    ] ================================================
[2026-06-27 05:17:26,216.216 INFO    ] Launching Daemon at Sat Jun 27 05:17:26 IST 2026
[2026-06-27 05:17:26,226.226 INFO    ] ================================================
[2026-06-27 05:17:26,566.566 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:17:26
[2026-06-27 05:17:26,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:17:27,021.021 INFO    ] Initializing speech engine...
[2026-06-27 05:17:27,026.026 INFO    ] 2026-06-27 05:17:27
[2026-06-27 05:17:27,231.231 INFO    ] 2026-06-27 05:17:27
[2026-06-27 05:17:27,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:17:27,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:17:27,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:17:27,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:17:27,654.654 INFO    ] time= 27/06/2026 05:17:27
[2026-06-27 05:17:27,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:17:27,682.682 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:17:27,747.747 INFO    ] No existing commands found in stream
[2026-06-27 05:17:32,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:17:32,761.761 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-27 05:17:36,383.383 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 05:17:36,385.385 INFO    ] Checking for system updates...
[2026-06-27 05:17:36,408.408 INFO    ] 200
[2026-06-27 05:17:36,409.409 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:17:36,441.441 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:17:36,443.443 INFO    ] No update needed
[2026-06-27 05:17:36,444.444 INFO    ] Checking for camera pi updates...
[2026-06-27 05:17:36,466.466 INFO    ] 200
[2026-06-27 05:17:36,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:17:36,493.493 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:17:36,541.541 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:17:36,542.542 INFO    ] No camera update needed
[2026-06-27 05:17:36,544.544 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:17:36,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:17:36,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:17:36,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:17:38,590.590 INFO    ] ================================================
[2026-06-27 05:17:38,605.605 INFO    ] Launching Daemon at Sat Jun 27 05:17:38 IST 2026
[2026-06-27 05:17:38,616.616 INFO    ] ================================================
[2026-06-27 05:17:38,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:17:38
[2026-06-27 05:17:39,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:17:39,414.414 INFO    ] Initializing speech engine...
[2026-06-27 05:17:39,426.426 INFO    ] 2026-06-27 05:17:39
[2026-06-27 05:17:39,633.633 INFO    ] 2026-06-27 05:17:39
[2026-06-27 05:17:39,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:17:39,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:17:39,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:17:40,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:17:40,073.073 INFO    ] time= 27/06/2026 05:17:40
[2026-06-27 05:17:40,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:17:40,080.080 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:17:40,147.147 INFO    ] No existing commands found in stream
[2026-06-27 05:17:45,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:17:45,164.164 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-27 05:17:46,472.472 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:17:46,474.474 INFO    ] Checking for system updates...
[2026-06-27 05:17:46,496.496 INFO    ] 200
[2026-06-27 05:17:46,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:17:46,532.532 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:17:46,533.533 INFO    ] No update needed
[2026-06-27 05:17:46,535.535 INFO    ] Checking for camera pi updates...
[2026-06-27 05:17:46,556.556 INFO    ] 200
[2026-06-27 05:17:46,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:17:46,582.582 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:17:46,620.620 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:17:46,622.622 INFO    ] No camera update needed
[2026-06-27 05:17:46,623.623 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:17:46,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:17:46,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:17:46,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:17:48,669.669 INFO    ] ================================================
[2026-06-27 05:17:48,684.684 INFO    ] Launching Daemon at Sat Jun 27 05:17:48 IST 2026
[2026-06-27 05:17:48,695.695 INFO    ] ================================================
[2026-06-27 05:17:49,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:17:49
[2026-06-27 05:17:49,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:17:49,496.496 INFO    ] Initializing speech engine...
[2026-06-27 05:17:49,500.500 INFO    ] 2026-06-27 05:17:49
[2026-06-27 05:17:49,722.722 INFO    ] 2026-06-27 05:17:49
[2026-06-27 05:17:49,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:17:49,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:17:49,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:17:50,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:17:50,169.169 INFO    ] time= 27/06/2026 05:17:50
[2026-06-27 05:17:50,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:17:50,180.180 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:17:50,247.247 INFO    ] No existing commands found in stream
[2026-06-27 05:17:55,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:17:55,259.259 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-27 05:17:58,997.997 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:17:58,999.999 INFO    ] Checking for system updates...
[2026-06-27 05:17:59,020.020 INFO    ] 200
[2026-06-27 05:17:59,021.021 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:17:59,053.053 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:17:59,055.055 INFO    ] No update needed
[2026-06-27 05:17:59,056.056 INFO    ] Checking for camera pi updates...
[2026-06-27 05:17:59,075.075 INFO    ] 200
[2026-06-27 05:17:59,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:17:59,100.100 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:17:59,135.135 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:17:59,136.136 INFO    ] No camera update needed
[2026-06-27 05:17:59,137.137 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:17:59,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:17:59,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:17:59,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:18:01,187.187 INFO    ] ================================================
[2026-06-27 05:18:01,203.203 INFO    ] Launching Daemon at Sat Jun 27 05:18:01 IST 2026
[2026-06-27 05:18:01,214.214 INFO    ] ================================================
[2026-06-27 05:18:01,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:18:01
[2026-06-27 05:18:01,867.867 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:18:02,144.144 INFO    ] Initializing speech engine...
[2026-06-27 05:18:02,146.146 INFO    ] 2026-06-27 05:18:02
[2026-06-27 05:18:02,411.411 INFO    ] 2026-06-27 05:18:02
[2026-06-27 05:18:02,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:18:02,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:18:02,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:18:02,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:18:02,801.801 INFO    ] time= 27/06/2026 05:18:02
[2026-06-27 05:18:02,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:18:02,923.923 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:18:03,005.005 INFO    ] No existing commands found in stream
[2026-06-27 05:18:08,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:18:08,020.020 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-27 05:18:10,939.939 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 05:18:10,941.941 INFO    ] Checking for system updates...
[2026-06-27 05:18:10,964.964 INFO    ] 200
[2026-06-27 05:18:10,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:18:10,999.999 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:18:11,000.000 INFO    ] No update needed
[2026-06-27 05:18:11,001.001 INFO    ] Checking for camera pi updates...
[2026-06-27 05:18:11,022.022 INFO    ] 200
[2026-06-27 05:18:11,024.024 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:18:11,049.049 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:18:11,096.096 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:18:11,097.097 INFO    ] No camera update needed
[2026-06-27 05:18:11,098.098 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:18:11,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:18:11,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:18:11,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:18:13,148.148 INFO    ] ================================================
[2026-06-27 05:18:13,164.164 INFO    ] Launching Daemon at Sat Jun 27 05:18:13 IST 2026
[2026-06-27 05:18:13,176.176 INFO    ] ================================================
[2026-06-27 05:18:13,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:18:13
[2026-06-27 05:18:13,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:18:14,041.041 INFO    ] Initializing speech engine...
[2026-06-27 05:18:14,051.051 INFO    ] 2026-06-27 05:18:14
[2026-06-27 05:18:14,265.265 INFO    ] 2026-06-27 05:18:14
[2026-06-27 05:18:14,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:18:14,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:18:14,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:18:14,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:18:14,662.662 INFO    ] time= 27/06/2026 05:18:14
[2026-06-27 05:18:14,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:18:14,748.748 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:18:14,836.836 INFO    ] No existing commands found in stream
[2026-06-27 05:18:19,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:18:19,849.849 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-27 05:18:22,803.803 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 05:18:22,804.804 INFO    ] Checking for system updates...
[2026-06-27 05:18:22,825.825 INFO    ] 200
[2026-06-27 05:18:22,827.827 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:18:22,857.857 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:18:22,859.859 INFO    ] No update needed
[2026-06-27 05:18:22,860.860 INFO    ] Checking for camera pi updates...
[2026-06-27 05:18:22,880.880 INFO    ] 200
[2026-06-27 05:18:22,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:18:22,905.905 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:18:22,946.946 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:18:22,947.947 INFO    ] No camera update needed
[2026-06-27 05:18:22,949.949 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:18:22,950.950 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:18:22,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:18:22,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:18:25,997.997 INFO    ] ================================================
[2026-06-27 05:18:25,013.013 INFO    ] Launching Daemon at Sat Jun 27 05:18:25 IST 2026
[2026-06-27 05:18:25,024.024 INFO    ] ================================================
[2026-06-27 05:18:25,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:18:25
[2026-06-27 05:18:25,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:18:25,929.929 INFO    ] Initializing speech engine...
[2026-06-27 05:18:25,935.935 INFO    ] 2026-06-27 05:18:25
[2026-06-27 05:18:26,146.146 INFO    ] 2026-06-27 05:18:26
[2026-06-27 05:18:26,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:18:26,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:18:26,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:18:26,535.535 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:18:26,590.590 INFO    ] time= 27/06/2026 05:18:26
[2026-06-27 05:18:26,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:18:26,602.602 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:18:26,669.669 INFO    ] No existing commands found in stream
[2026-06-27 05:18:31,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:18:31,680.680 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-27 05:18:33,243.243 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 05:18:33,245.245 INFO    ] Checking for system updates...
[2026-06-27 05:18:33,268.268 INFO    ] 200
[2026-06-27 05:18:33,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:18:33,302.302 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:18:33,304.304 INFO    ] No update needed
[2026-06-27 05:18:33,305.305 INFO    ] Checking for camera pi updates...
[2026-06-27 05:18:33,325.325 INFO    ] 200
[2026-06-27 05:18:33,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:18:33,352.352 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:18:33,399.399 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:18:33,400.400 INFO    ] No camera update needed
[2026-06-27 05:18:33,401.401 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:18:33,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:18:33,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:18:33,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:18:35,448.448 INFO    ] ================================================
[2026-06-27 05:18:35,464.464 INFO    ] Launching Daemon at Sat Jun 27 05:18:35 IST 2026
[2026-06-27 05:18:35,476.476 INFO    ] ================================================
[2026-06-27 05:18:35,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:18:35
[2026-06-27 05:18:36,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:18:36,247.247 INFO    ] Initializing speech engine...
[2026-06-27 05:18:36,256.256 INFO    ] 2026-06-27 05:18:36
[2026-06-27 05:18:36,468.468 INFO    ] 2026-06-27 05:18:36
[2026-06-27 05:18:36,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:18:36,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:18:36,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:18:36,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:18:36,909.909 INFO    ] time= 27/06/2026 05:18:36
[2026-06-27 05:18:36,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:18:36,916.916 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:18:36,982.982 INFO    ] No existing commands found in stream
[2026-06-27 05:18:41,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:18:41,995.995 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-27 05:18:43,439.439 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:18:43,440.440 INFO    ] Checking for system updates...
[2026-06-27 05:18:43,464.464 INFO    ] 200
[2026-06-27 05:18:43,465.465 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:18:43,498.498 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:18:43,500.500 INFO    ] No update needed
[2026-06-27 05:18:43,501.501 INFO    ] Checking for camera pi updates...
[2026-06-27 05:18:43,522.522 INFO    ] 200
[2026-06-27 05:18:43,523.523 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:18:43,549.549 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:18:43,693.693 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:18:43,694.694 INFO    ] No camera update needed
[2026-06-27 05:18:43,696.696 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:18:43,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:18:43,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:18:43,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:18:45,741.741 INFO    ] ================================================
[2026-06-27 05:18:45,758.758 INFO    ] Launching Daemon at Sat Jun 27 05:18:45 IST 2026
[2026-06-27 05:18:45,770.770 INFO    ] ================================================
[2026-06-27 05:18:46,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:18:46
[2026-06-27 05:18:46,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:18:46,568.568 INFO    ] Initializing speech engine...
[2026-06-27 05:18:46,577.577 INFO    ] 2026-06-27 05:18:46
[2026-06-27 05:18:46,782.782 INFO    ] 2026-06-27 05:18:46
[2026-06-27 05:18:46,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:18:47,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:18:47,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:18:47,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:18:47,232.232 INFO    ] time= 27/06/2026 05:18:47
[2026-06-27 05:18:47,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:18:47,236.236 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:18:47,327.327 INFO    ] No existing commands found in stream
[2026-06-27 05:18:52,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:18:52,354.354 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-27 05:18:54,581.581 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 05:18:54,583.583 INFO    ] Checking for system updates...
[2026-06-27 05:18:54,604.604 INFO    ] 200
[2026-06-27 05:18:54,606.606 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:18:54,636.636 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:18:54,638.638 INFO    ] No update needed
[2026-06-27 05:18:54,639.639 INFO    ] Checking for camera pi updates...
[2026-06-27 05:18:54,660.660 INFO    ] 200
[2026-06-27 05:18:54,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:18:54,687.687 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:18:54,713.713 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:18:54,715.715 INFO    ] No camera update needed
[2026-06-27 05:18:54,716.716 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:18:54,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:18:54,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:18:54,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:18:56,765.765 INFO    ] ================================================
[2026-06-27 05:18:56,784.784 INFO    ] Launching Daemon at Sat Jun 27 05:18:56 IST 2026
[2026-06-27 05:18:56,796.796 INFO    ] ================================================
[2026-06-27 05:18:57,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:18:57
[2026-06-27 05:18:57,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:18:57,679.679 INFO    ] Initializing speech engine...
[2026-06-27 05:18:57,685.685 INFO    ] 2026-06-27 05:18:57
[2026-06-27 05:18:57,896.896 INFO    ] 2026-06-27 05:18:57
[2026-06-27 05:18:57,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:18:58,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:18:58,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:18:58,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:18:58,326.326 INFO    ] time= 27/06/2026 05:18:58
[2026-06-27 05:18:58,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:18:58,357.357 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:18:58,426.426 INFO    ] No existing commands found in stream
[2026-06-27 05:19:03,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:19:03,446.446 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-27 05:19:07,129.129 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 05:19:07,130.130 INFO    ] Checking for system updates...
[2026-06-27 05:19:07,155.155 INFO    ] 200
[2026-06-27 05:19:07,157.157 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:19:07,191.191 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:19:07,192.192 INFO    ] No update needed
[2026-06-27 05:19:07,194.194 INFO    ] Checking for camera pi updates...
[2026-06-27 05:19:07,215.215 INFO    ] 200
[2026-06-27 05:19:07,217.217 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:19:07,241.241 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:19:07,286.286 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:19:07,288.288 INFO    ] No camera update needed
[2026-06-27 05:19:07,289.289 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:19:07,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:19:07,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:19:07,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:19:09,337.337 INFO    ] ================================================
[2026-06-27 05:19:09,354.354 INFO    ] Launching Daemon at Sat Jun 27 05:19:09 IST 2026
[2026-06-27 05:19:09,366.366 INFO    ] ================================================
[2026-06-27 05:19:09,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:19:09
[2026-06-27 05:19:10,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:19:10,263.263 INFO    ] Initializing speech engine...
[2026-06-27 05:19:10,269.269 INFO    ] 2026-06-27 05:19:10
[2026-06-27 05:19:10,478.478 INFO    ] 2026-06-27 05:19:10
[2026-06-27 05:19:10,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:19:10,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:19:10,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:19:10,848.848 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:19:10,902.902 INFO    ] time= 27/06/2026 05:19:10
[2026-06-27 05:19:10,924.924 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:19:10,930.930 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:19:10,997.997 INFO    ] No existing commands found in stream
[2026-06-27 05:19:16,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:19:16,010.010 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-27 05:19:16,788.788 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 05:19:16,790.790 INFO    ] Checking for system updates...
[2026-06-27 05:19:16,811.811 INFO    ] 200
[2026-06-27 05:19:16,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:19:16,844.844 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:19:16,845.845 INFO    ] No update needed
[2026-06-27 05:19:16,847.847 INFO    ] Checking for camera pi updates...
[2026-06-27 05:19:16,869.869 INFO    ] 200
[2026-06-27 05:19:16,870.870 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:19:16,894.894 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:19:16,941.941 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:19:16,942.942 INFO    ] No camera update needed
[2026-06-27 05:19:16,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:19:16,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:19:16,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:19:16,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:19:18,990.990 INFO    ] ================================================
[2026-06-27 05:19:19,005.005 INFO    ] Launching Daemon at Sat Jun 27 05:19:18 IST 2026
[2026-06-27 05:19:19,016.016 INFO    ] ================================================
[2026-06-27 05:19:19,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:19:19
[2026-06-27 05:19:19,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:19:19,833.833 INFO    ] Initializing speech engine...
[2026-06-27 05:19:19,845.845 INFO    ] 2026-06-27 05:19:19
[2026-06-27 05:19:20,051.051 INFO    ] 2026-06-27 05:19:20
[2026-06-27 05:19:20,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:19:20,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:19:20,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:19:20,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:19:20,487.487 INFO    ] time= 27/06/2026 05:19:20
[2026-06-27 05:19:20,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:19:20,498.498 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:19:20,566.566 INFO    ] No existing commands found in stream
[2026-06-27 05:19:25,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:19:25,577.577 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-27 05:19:26,704.704 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:19:26,706.706 INFO    ] Checking for system updates...
[2026-06-27 05:19:26,728.728 INFO    ] 200
[2026-06-27 05:19:26,730.730 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:19:26,763.763 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:19:26,764.764 INFO    ] No update needed
[2026-06-27 05:19:26,765.765 INFO    ] Checking for camera pi updates...
[2026-06-27 05:19:26,785.785 INFO    ] 200
[2026-06-27 05:19:26,786.786 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:19:26,811.811 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:19:26,855.855 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:19:26,857.857 INFO    ] No camera update needed
[2026-06-27 05:19:26,858.858 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:19:26,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:19:26,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:19:26,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:19:28,908.908 INFO    ] ================================================
[2026-06-27 05:19:28,925.925 INFO    ] Launching Daemon at Sat Jun 27 05:19:28 IST 2026
[2026-06-27 05:19:28,937.937 INFO    ] ================================================
[2026-06-27 05:19:29,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:19:29
[2026-06-27 05:19:29,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:19:29,761.761 INFO    ] Initializing speech engine...
[2026-06-27 05:19:29,767.767 INFO    ] 2026-06-27 05:19:29
[2026-06-27 05:19:29,986.986 INFO    ] 2026-06-27 05:19:29
[2026-06-27 05:19:30,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:19:30,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:19:30,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:19:30,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:19:30,409.409 INFO    ] time= 27/06/2026 05:19:30
[2026-06-27 05:19:30,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:19:30,473.473 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:19:30,551.551 INFO    ] No existing commands found in stream
[2026-06-27 05:19:35,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:19:35,562.562 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-27 05:19:39,901.901 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:19:39,903.903 INFO    ] Checking for system updates...
[2026-06-27 05:19:39,924.924 INFO    ] 200
[2026-06-27 05:19:39,926.926 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:19:39,956.956 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:19:39,958.958 INFO    ] No update needed
[2026-06-27 05:19:39,959.959 INFO    ] Checking for camera pi updates...
[2026-06-27 05:19:39,978.978 INFO    ] 200
[2026-06-27 05:19:39,980.980 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:19:40,003.003 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:19:40,042.042 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:19:40,043.043 INFO    ] No camera update needed
[2026-06-27 05:19:40,044.044 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:19:40,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:19:40,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:19:40,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:19:42,090.090 INFO    ] ================================================
[2026-06-27 05:19:42,106.106 INFO    ] Launching Daemon at Sat Jun 27 05:19:42 IST 2026
[2026-06-27 05:19:42,117.117 INFO    ] ================================================
[2026-06-27 05:19:42,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:19:42
[2026-06-27 05:19:42,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:19:42,935.935 INFO    ] Initializing speech engine...
[2026-06-27 05:19:42,940.940 INFO    ] 2026-06-27 05:19:42
[2026-06-27 05:19:43,144.144 INFO    ] 2026-06-27 05:19:43
[2026-06-27 05:19:43,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:19:43,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:19:43,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:19:43,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:19:43,583.583 INFO    ] time= 27/06/2026 05:19:43
[2026-06-27 05:19:43,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:19:43,590.590 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:19:43,657.657 INFO    ] No existing commands found in stream
[2026-06-27 05:19:48,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:19:48,674.674 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-27 05:19:50,881.881 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 05:19:50,883.883 INFO    ] Checking for system updates...
[2026-06-27 05:19:50,904.904 INFO    ] 200
[2026-06-27 05:19:50,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:19:50,940.940 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:19:50,942.942 INFO    ] No update needed
[2026-06-27 05:19:50,943.943 INFO    ] Checking for camera pi updates...
[2026-06-27 05:19:50,964.964 INFO    ] 200
[2026-06-27 05:19:50,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:19:50,990.990 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:19:51,037.037 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:19:51,038.038 INFO    ] No camera update needed
[2026-06-27 05:19:51,039.039 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:19:51,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:19:51,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:19:51,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:19:53,087.087 INFO    ] ================================================
[2026-06-27 05:19:53,103.103 INFO    ] Launching Daemon at Sat Jun 27 05:19:53 IST 2026
[2026-06-27 05:19:53,114.114 INFO    ] ================================================
[2026-06-27 05:19:53,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:19:53
[2026-06-27 05:19:53,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:19:53,973.973 INFO    ] Initializing speech engine...
[2026-06-27 05:19:53,979.979 INFO    ] 2026-06-27 05:19:53
[2026-06-27 05:19:54,181.181 INFO    ] 2026-06-27 05:19:54
[2026-06-27 05:19:54,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:19:54,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:19:54,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:19:54,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:19:54,616.616 INFO    ] time= 27/06/2026 05:19:54
[2026-06-27 05:19:54,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:19:54,627.627 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:19:54,692.692 INFO    ] No existing commands found in stream
[2026-06-27 05:19:59,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:19:59,706.706 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-27 05:20:08,488.488 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 05:20:08,490.490 INFO    ] Checking for system updates...
[2026-06-27 05:20:08,512.512 INFO    ] 200
[2026-06-27 05:20:08,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:20:08,547.547 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:20:08,549.549 INFO    ] No update needed
[2026-06-27 05:20:08,550.550 INFO    ] Checking for camera pi updates...
[2026-06-27 05:20:08,570.570 INFO    ] 200
[2026-06-27 05:20:08,572.572 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:20:08,597.597 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:20:08,643.643 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:20:08,645.645 INFO    ] No camera update needed
[2026-06-27 05:20:08,646.646 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:20:08,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:20:08,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:20:08,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:20:10,693.693 INFO    ] ================================================
[2026-06-27 05:20:10,709.709 INFO    ] Launching Daemon at Sat Jun 27 05:20:10 IST 2026
[2026-06-27 05:20:10,721.721 INFO    ] ================================================
[2026-06-27 05:20:11,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:20:11
[2026-06-27 05:20:11,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:20:11,536.536 INFO    ] Initializing speech engine...
[2026-06-27 05:20:11,544.544 INFO    ] 2026-06-27 05:20:11
[2026-06-27 05:20:11,758.758 INFO    ] 2026-06-27 05:20:11
[2026-06-27 05:20:11,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:20:11,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:20:11,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:20:12,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:20:12,197.197 INFO    ] time= 27/06/2026 05:20:12
[2026-06-27 05:20:12,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:20:12,205.205 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:20:12,272.272 INFO    ] No existing commands found in stream
[2026-06-27 05:20:17,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:20:17,284.284 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-27 05:20:17,829.829 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 05:20:17,830.830 INFO    ] Checking for system updates...
[2026-06-27 05:20:17,853.853 INFO    ] 200
[2026-06-27 05:20:17,854.854 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:20:17,888.888 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:20:17,889.889 INFO    ] No update needed
[2026-06-27 05:20:17,890.890 INFO    ] Checking for camera pi updates...
[2026-06-27 05:20:17,912.912 INFO    ] 200
[2026-06-27 05:20:17,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:20:17,939.939 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:20:17,976.976 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:20:17,978.978 INFO    ] No camera update needed
[2026-06-27 05:20:17,979.979 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:20:17,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:20:17,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:20:17,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:20:20,027.027 INFO    ] ================================================
[2026-06-27 05:20:20,042.042 INFO    ] Launching Daemon at Sat Jun 27 05:20:20 IST 2026
[2026-06-27 05:20:20,053.053 INFO    ] ================================================
[2026-06-27 05:20:20,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:20:20
[2026-06-27 05:20:20,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:20:20,877.877 INFO    ] Initializing speech engine...
[2026-06-27 05:20:20,887.887 INFO    ] 2026-06-27 05:20:20
[2026-06-27 05:20:21,096.096 INFO    ] 2026-06-27 05:20:21
[2026-06-27 05:20:21,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:20:21,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:20:21,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:20:21,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:20:21,557.557 INFO    ] time= 27/06/2026 05:20:21
[2026-06-27 05:20:21,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:20:21,566.566 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:20:21,638.638 INFO    ] No existing commands found in stream
[2026-06-27 05:20:26,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:20:26,651.651 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-27 05:20:28,610.610 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 05:20:28,612.612 INFO    ] Checking for system updates...
[2026-06-27 05:20:28,635.635 INFO    ] 200
[2026-06-27 05:20:28,637.637 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:20:28,670.670 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:20:28,671.671 INFO    ] No update needed
[2026-06-27 05:20:28,673.673 INFO    ] Checking for camera pi updates...
[2026-06-27 05:20:28,693.693 INFO    ] 200
[2026-06-27 05:20:28,695.695 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:20:28,718.718 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:20:28,759.759 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:20:28,761.761 INFO    ] No camera update needed
[2026-06-27 05:20:28,762.762 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:20:28,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:20:28,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:20:28,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:20:30,811.811 INFO    ] ================================================
[2026-06-27 05:20:30,827.827 INFO    ] Launching Daemon at Sat Jun 27 05:20:30 IST 2026
[2026-06-27 05:20:30,838.838 INFO    ] ================================================
[2026-06-27 05:20:31,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:20:31
[2026-06-27 05:20:31,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:20:31,635.635 INFO    ] Initializing speech engine...
[2026-06-27 05:20:31,646.646 INFO    ] 2026-06-27 05:20:31
[2026-06-27 05:20:31,878.878 INFO    ] 2026-06-27 05:20:31
[2026-06-27 05:20:31,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:20:32,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:20:32,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:20:32,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:20:32,331.331 INFO    ] time= 27/06/2026 05:20:32
[2026-06-27 05:20:32,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:20:32,367.367 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:20:32,461.461 INFO    ] No existing commands found in stream
[2026-06-27 05:20:37,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:20:37,472.472 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-27 05:20:39,431.431 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 05:20:39,433.433 INFO    ] Checking for system updates...
[2026-06-27 05:20:39,455.455 INFO    ] 200
[2026-06-27 05:20:39,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:20:39,487.487 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:20:39,489.489 INFO    ] No update needed
[2026-06-27 05:20:39,490.490 INFO    ] Checking for camera pi updates...
[2026-06-27 05:20:39,510.510 INFO    ] 200
[2026-06-27 05:20:39,512.512 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:20:39,536.536 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:20:39,574.574 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:20:39,576.576 INFO    ] No camera update needed
[2026-06-27 05:20:39,577.577 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:20:39,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:20:39,582.582 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:20:39,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:20:41,625.625 INFO    ] ================================================
[2026-06-27 05:20:41,641.641 INFO    ] Launching Daemon at Sat Jun 27 05:20:41 IST 2026
[2026-06-27 05:20:41,653.653 INFO    ] ================================================
[2026-06-27 05:20:42,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:20:42
[2026-06-27 05:20:42,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:20:42,541.541 INFO    ] Initializing speech engine...
[2026-06-27 05:20:42,545.545 INFO    ] 2026-06-27 05:20:42
[2026-06-27 05:20:42,760.760 INFO    ] 2026-06-27 05:20:42
[2026-06-27 05:20:42,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:20:42,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:20:42,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:20:43,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:20:43,202.202 INFO    ] time= 27/06/2026 05:20:43
[2026-06-27 05:20:43,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:20:43,214.214 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:20:43,281.281 INFO    ] No existing commands found in stream
[2026-06-27 05:20:48,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:20:48,290.290 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-27 05:20:52,710.710 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:20:52,712.712 INFO    ] Checking for system updates...
[2026-06-27 05:20:52,735.735 INFO    ] 200
[2026-06-27 05:20:52,737.737 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:20:52,771.771 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:20:52,772.772 INFO    ] No update needed
[2026-06-27 05:20:52,774.774 INFO    ] Checking for camera pi updates...
[2026-06-27 05:20:52,796.796 INFO    ] 200
[2026-06-27 05:20:52,798.798 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:20:52,821.821 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:20:52,967.967 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:20:52,969.969 INFO    ] No camera update needed
[2026-06-27 05:20:52,970.970 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:20:52,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:20:52,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:20:52,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:20:55,018.018 INFO    ] ================================================
[2026-06-27 05:20:55,034.034 INFO    ] Launching Daemon at Sat Jun 27 05:20:55 IST 2026
[2026-06-27 05:20:55,045.045 INFO    ] ================================================
[2026-06-27 05:20:55,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:20:55
[2026-06-27 05:20:55,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:20:55,941.941 INFO    ] Initializing speech engine...
[2026-06-27 05:20:55,947.947 INFO    ] 2026-06-27 05:20:55
[2026-06-27 05:20:56,157.157 INFO    ] 2026-06-27 05:20:56
[2026-06-27 05:20:56,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:20:56,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:20:56,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:20:56,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:20:56,602.602 INFO    ] time= 27/06/2026 05:20:56
[2026-06-27 05:20:56,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:20:56,606.606 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:20:56,673.673 INFO    ] No existing commands found in stream
[2026-06-27 05:21:01,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:21:01,688.688 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-27 05:21:02,828.828 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:21:02,830.830 INFO    ] Checking for system updates...
[2026-06-27 05:21:02,857.857 INFO    ] 200
[2026-06-27 05:21:02,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-27 05:21:02,862.862 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-27 05:21:02,867.867 INFO    ] Checking for camera pi updates...
[2026-06-27 05:21:02,889.889 INFO    ] 200
[2026-06-27 05:21:02,891.891 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-27 05:21:02,893.893 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-27 05:21:02,895.895 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:21:02,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:21:02,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:21:02,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:21:04,951.951 INFO    ] ================================================
[2026-06-27 05:21:04,968.968 INFO    ] Launching Daemon at Sat Jun 27 05:21:04 IST 2026
[2026-06-27 05:21:04,979.979 INFO    ] ================================================
[2026-06-27 05:21:05,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:21:05
[2026-06-27 05:21:05,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:21:05,784.784 INFO    ] Initializing speech engine...
[2026-06-27 05:21:05,788.788 INFO    ] 2026-06-27 05:21:05
[2026-06-27 05:21:06,008.008 INFO    ] 2026-06-27 05:21:05
[2026-06-27 05:21:06,037.037 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:21:06,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:21:06,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:21:06,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:21:06,426.426 INFO    ] time= 27/06/2026 05:21:06
[2026-06-27 05:21:06,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:21:06,472.472 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:21:06,545.545 INFO    ] No existing commands found in stream
[2026-06-27 05:21:11,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:21:11,556.556 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-27 05:21:14,443.443 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 05:21:14,445.445 INFO    ] Checking for system updates...
[2026-06-27 05:21:14,466.466 INFO    ] 200
[2026-06-27 05:21:14,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:21:14,498.498 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:21:14,500.500 INFO    ] No update needed
[2026-06-27 05:21:14,501.501 INFO    ] Checking for camera pi updates...
[2026-06-27 05:21:14,522.522 INFO    ] 200
[2026-06-27 05:21:14,523.523 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:21:14,547.547 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:21:14,585.585 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:21:14,586.586 INFO    ] No camera update needed
[2026-06-27 05:21:14,587.587 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:21:14,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:21:14,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:21:14,595.595 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:21:16,638.638 INFO    ] ================================================
[2026-06-27 05:21:16,653.653 INFO    ] Launching Daemon at Sat Jun 27 05:21:16 IST 2026
[2026-06-27 05:21:16,665.665 INFO    ] ================================================
[2026-06-27 05:21:17,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:21:17
[2026-06-27 05:21:17,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:21:17,478.478 INFO    ] Initializing speech engine...
[2026-06-27 05:21:17,486.486 INFO    ] 2026-06-27 05:21:17
[2026-06-27 05:21:17,697.697 INFO    ] 2026-06-27 05:21:17
[2026-06-27 05:21:17,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:21:17,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:21:17,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:21:18,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:21:18,093.093 INFO    ] time= 27/06/2026 05:21:18
[2026-06-27 05:21:18,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:21:18,142.142 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:21:18,238.238 INFO    ] No existing commands found in stream
[2026-06-27 05:21:23,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:21:23,249.249 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-27 05:21:25,269.269 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 05:21:25,270.270 INFO    ] Checking for system updates...
[2026-06-27 05:21:25,291.291 INFO    ] 200
[2026-06-27 05:21:25,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:21:25,326.326 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:21:25,327.327 INFO    ] No update needed
[2026-06-27 05:21:25,328.328 INFO    ] Checking for camera pi updates...
[2026-06-27 05:21:25,348.348 INFO    ] 200
[2026-06-27 05:21:25,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:21:25,372.372 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:21:25,413.413 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:21:25,414.414 INFO    ] No camera update needed
[2026-06-27 05:21:25,416.416 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:21:25,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:21:25,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:21:25,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:21:27,463.463 INFO    ] ================================================
[2026-06-27 05:21:27,479.479 INFO    ] Launching Daemon at Sat Jun 27 05:21:27 IST 2026
[2026-06-27 05:21:27,491.491 INFO    ] ================================================
[2026-06-27 05:21:27,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:21:27
[2026-06-27 05:21:28,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:21:28,300.300 INFO    ] Initializing speech engine...
[2026-06-27 05:21:28,305.305 INFO    ] 2026-06-27 05:21:28
[2026-06-27 05:21:28,511.511 INFO    ] 2026-06-27 05:21:28
[2026-06-27 05:21:28,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:21:28,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:21:28,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:21:28,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:21:28,931.931 INFO    ] time= 27/06/2026 05:21:28
[2026-06-27 05:21:28,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:21:28,960.960 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:21:29,027.027 INFO    ] No existing commands found in stream
[2026-06-27 05:21:34,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:21:34,038.038 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-27 05:21:35,543.543 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:21:35,545.545 INFO    ] Checking for system updates...
[2026-06-27 05:21:35,567.567 INFO    ] 200
[2026-06-27 05:21:35,568.568 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:21:35,599.599 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:21:35,600.600 INFO    ] No update needed
[2026-06-27 05:21:35,602.602 INFO    ] Checking for camera pi updates...
[2026-06-27 05:21:35,622.622 INFO    ] 200
[2026-06-27 05:21:35,623.623 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:21:35,648.648 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:21:35,694.694 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:21:35,696.696 INFO    ] No camera update needed
[2026-06-27 05:21:35,697.697 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:21:35,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:21:35,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:21:35,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:21:37,745.745 INFO    ] ================================================
[2026-06-27 05:21:37,761.761 INFO    ] Launching Daemon at Sat Jun 27 05:21:37 IST 2026
[2026-06-27 05:21:37,771.771 INFO    ] ================================================
[2026-06-27 05:21:38,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:21:38
[2026-06-27 05:21:38,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:21:38,566.566 INFO    ] Initializing speech engine...
[2026-06-27 05:21:38,573.573 INFO    ] 2026-06-27 05:21:38
[2026-06-27 05:21:38,780.780 INFO    ] 2026-06-27 05:21:38
[2026-06-27 05:21:38,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:21:38,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:21:38,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:21:39,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:21:39,195.195 INFO    ] time= 27/06/2026 05:21:39
[2026-06-27 05:21:39,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:21:39,228.228 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:21:39,318.318 INFO    ] No existing commands found in stream
[2026-06-27 05:21:44,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:21:44,330.330 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-27 05:21:47,253.253 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:21:47,254.254 INFO    ] Checking for system updates...
[2026-06-27 05:21:47,276.276 INFO    ] 200
[2026-06-27 05:21:47,277.277 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:21:47,308.308 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:21:47,310.310 INFO    ] No update needed
[2026-06-27 05:21:47,311.311 INFO    ] Checking for camera pi updates...
[2026-06-27 05:21:47,331.331 INFO    ] 200
[2026-06-27 05:21:47,333.333 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:21:47,357.357 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:21:47,398.398 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:21:47,399.399 INFO    ] No camera update needed
[2026-06-27 05:21:47,401.401 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:21:47,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:21:47,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:21:47,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:21:49,450.450 INFO    ] ================================================
[2026-06-27 05:21:49,467.467 INFO    ] Launching Daemon at Sat Jun 27 05:21:49 IST 2026
[2026-06-27 05:21:49,478.478 INFO    ] ================================================
[2026-06-27 05:21:49,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:21:49
[2026-06-27 05:21:50,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:21:50,318.318 INFO    ] Initializing speech engine...
[2026-06-27 05:21:50,324.324 INFO    ] 2026-06-27 05:21:50
[2026-06-27 05:21:50,536.536 INFO    ] 2026-06-27 05:21:50
[2026-06-27 05:21:50,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:21:50,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:21:50,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:21:50,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:21:50,957.957 INFO    ] time= 27/06/2026 05:21:50
[2026-06-27 05:21:50,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:21:50,991.991 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:21:51,058.058 INFO    ] No existing commands found in stream
[2026-06-27 05:21:56,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:21:56,069.069 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-27 05:21:56,516.516 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 05:21:56,517.517 INFO    ] Checking for system updates...
[2026-06-27 05:21:56,539.539 INFO    ] 200
[2026-06-27 05:21:56,540.540 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:21:56,570.570 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:21:56,572.572 INFO    ] No update needed
[2026-06-27 05:21:56,573.573 INFO    ] Checking for camera pi updates...
[2026-06-27 05:21:56,592.592 INFO    ] 200
[2026-06-27 05:21:56,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:21:56,617.617 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:21:56,657.657 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:21:56,658.658 INFO    ] No camera update needed
[2026-06-27 05:21:56,660.660 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:21:56,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:21:56,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:21:56,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:21:58,706.706 INFO    ] ================================================
[2026-06-27 05:21:58,722.722 INFO    ] Launching Daemon at Sat Jun 27 05:21:58 IST 2026
[2026-06-27 05:21:58,733.733 INFO    ] ================================================
[2026-06-27 05:21:59,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:21:59
[2026-06-27 05:21:59,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:21:59,507.507 INFO    ] Initializing speech engine...
[2026-06-27 05:21:59,512.512 INFO    ] 2026-06-27 05:21:59
[2026-06-27 05:21:59,730.730 INFO    ] 2026-06-27 05:21:59
[2026-06-27 05:21:59,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:21:59,880.880 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:21:59,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:22:00,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:22:00,173.173 INFO    ] time= 27/06/2026 05:22:00
[2026-06-27 05:22:00,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:22:00,180.180 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:22:00,248.248 INFO    ] No existing commands found in stream
[2026-06-27 05:22:05,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:22:05,267.267 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-27 05:22:07,471.471 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:22:07,472.472 INFO    ] Checking for system updates...
[2026-06-27 05:22:07,493.493 INFO    ] 200
[2026-06-27 05:22:07,495.495 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:22:07,525.525 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:22:07,526.526 INFO    ] No update needed
[2026-06-27 05:22:07,527.527 INFO    ] Checking for camera pi updates...
[2026-06-27 05:22:07,547.547 INFO    ] 200
[2026-06-27 05:22:07,548.548 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:22:07,574.574 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:22:07,613.613 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:22:07,615.615 INFO    ] No camera update needed
[2026-06-27 05:22:07,616.616 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:22:07,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:22:07,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:22:07,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:22:09,665.665 INFO    ] ================================================
[2026-06-27 05:22:09,680.680 INFO    ] Launching Daemon at Sat Jun 27 05:22:09 IST 2026
[2026-06-27 05:22:09,692.692 INFO    ] ================================================
[2026-06-27 05:22:10,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:22:10
[2026-06-27 05:22:10,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:22:10,505.505 INFO    ] Initializing speech engine...
[2026-06-27 05:22:10,516.516 INFO    ] 2026-06-27 05:22:10
[2026-06-27 05:22:10,727.727 INFO    ] 2026-06-27 05:22:10
[2026-06-27 05:22:10,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:22:10,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:22:10,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:22:11,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:22:11,158.158 INFO    ] time= 27/06/2026 05:22:11
[2026-06-27 05:22:11,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:22:11,196.196 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:22:11,303.303 INFO    ] No existing commands found in stream
[2026-06-27 05:22:16,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:22:16,317.317 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-27 05:22:18,618.618 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 05:22:18,619.619 INFO    ] Checking for system updates...
[2026-06-27 05:22:18,641.641 INFO    ] 200
[2026-06-27 05:22:18,642.642 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:22:18,675.675 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:22:18,676.676 INFO    ] No update needed
[2026-06-27 05:22:18,678.678 INFO    ] Checking for camera pi updates...
[2026-06-27 05:22:18,699.699 INFO    ] 200
[2026-06-27 05:22:18,701.701 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:22:18,727.727 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:22:18,777.777 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:22:18,778.778 INFO    ] No camera update needed
[2026-06-27 05:22:18,780.780 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:22:18,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:22:18,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:22:18,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:22:20,827.827 INFO    ] ================================================
[2026-06-27 05:22:20,843.843 INFO    ] Launching Daemon at Sat Jun 27 05:22:20 IST 2026
[2026-06-27 05:22:20,854.854 INFO    ] ================================================
[2026-06-27 05:22:21,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:22:21
[2026-06-27 05:22:21,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:22:21,710.710 INFO    ] Initializing speech engine...
[2026-06-27 05:22:21,716.716 INFO    ] 2026-06-27 05:22:21
[2026-06-27 05:22:21,920.920 INFO    ] 2026-06-27 05:22:21
[2026-06-27 05:22:21,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:22:22,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:22:22,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:22:22,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:22:22,362.362 INFO    ] time= 27/06/2026 05:22:22
[2026-06-27 05:22:22,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:22:22,370.370 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:22:22,435.435 INFO    ] No existing commands found in stream
[2026-06-27 05:22:27,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:22:27,448.448 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-27 05:22:30,022.022 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:22:30,023.023 INFO    ] Checking for system updates...
[2026-06-27 05:22:30,046.046 INFO    ] 200
[2026-06-27 05:22:30,047.047 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:22:30,079.079 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:22:30,081.081 INFO    ] No update needed
[2026-06-27 05:22:30,082.082 INFO    ] Checking for camera pi updates...
[2026-06-27 05:22:30,102.102 INFO    ] 200
[2026-06-27 05:22:30,103.103 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:22:30,127.127 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:22:30,169.169 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:22:30,171.171 INFO    ] No camera update needed
[2026-06-27 05:22:30,172.172 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:22:30,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:22:30,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:22:30,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:22:32,218.218 INFO    ] ================================================
[2026-06-27 05:22:32,234.234 INFO    ] Launching Daemon at Sat Jun 27 05:22:32 IST 2026
[2026-06-27 05:22:32,245.245 INFO    ] ================================================
[2026-06-27 05:22:32,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:22:32
[2026-06-27 05:22:32,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:22:33,119.119 INFO    ] Initializing speech engine...
[2026-06-27 05:22:33,125.125 INFO    ] 2026-06-27 05:22:33
[2026-06-27 05:22:33,347.347 INFO    ] 2026-06-27 05:22:33
[2026-06-27 05:22:33,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:22:33,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:22:33,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:22:33,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:22:33,778.778 INFO    ] time= 27/06/2026 05:22:33
[2026-06-27 05:22:33,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:22:33,808.808 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:22:33,875.875 INFO    ] No existing commands found in stream
[2026-06-27 05:22:38,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:22:38,887.887 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-27 05:22:41,173.173 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 05:22:41,175.175 INFO    ] Checking for system updates...
[2026-06-27 05:22:41,196.196 INFO    ] 200
[2026-06-27 05:22:41,197.197 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:22:41,228.228 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:22:41,229.229 INFO    ] No update needed
[2026-06-27 05:22:41,231.231 INFO    ] Checking for camera pi updates...
[2026-06-27 05:22:41,252.252 INFO    ] 200
[2026-06-27 05:22:41,253.253 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:22:41,278.278 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:22:41,311.311 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:22:41,313.313 INFO    ] No camera update needed
[2026-06-27 05:22:41,314.314 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:22:41,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:22:41,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:22:41,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:22:43,364.364 INFO    ] ================================================
[2026-06-27 05:22:43,380.380 INFO    ] Launching Daemon at Sat Jun 27 05:22:43 IST 2026
[2026-06-27 05:22:43,390.390 INFO    ] ================================================
[2026-06-27 05:22:43,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:22:43
[2026-06-27 05:22:44,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:22:44,174.174 INFO    ] Initializing speech engine...
[2026-06-27 05:22:44,188.188 INFO    ] 2026-06-27 05:22:44
[2026-06-27 05:22:44,393.393 INFO    ] 2026-06-27 05:22:44
[2026-06-27 05:22:44,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:22:44,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:22:44,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:22:44,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:22:44,798.798 INFO    ] time= 27/06/2026 05:22:44
[2026-06-27 05:22:44,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:22:44,837.837 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:22:44,906.906 INFO    ] No existing commands found in stream
[2026-06-27 05:22:49,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:22:49,920.920 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-27 05:22:51,359.359 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 05:22:51,360.360 INFO    ] Checking for system updates...
[2026-06-27 05:22:51,381.381 INFO    ] 200
[2026-06-27 05:22:51,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:22:51,413.413 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:22:51,415.415 INFO    ] No update needed
[2026-06-27 05:22:51,416.416 INFO    ] Checking for camera pi updates...
[2026-06-27 05:22:51,437.437 INFO    ] 200
[2026-06-27 05:22:51,438.438 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:22:51,462.462 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:22:51,511.511 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:22:51,513.513 INFO    ] No camera update needed
[2026-06-27 05:22:51,514.514 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:22:51,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:22:51,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:22:51,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:22:53,562.562 INFO    ] ================================================
[2026-06-27 05:22:53,576.576 INFO    ] Launching Daemon at Sat Jun 27 05:22:53 IST 2026
[2026-06-27 05:22:53,587.587 INFO    ] ================================================
[2026-06-27 05:22:53,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:22:53
[2026-06-27 05:22:54,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:22:54,387.387 INFO    ] Initializing speech engine...
[2026-06-27 05:22:54,398.398 INFO    ] 2026-06-27 05:22:54
[2026-06-27 05:22:54,601.601 INFO    ] 2026-06-27 05:22:54
[2026-06-27 05:22:54,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:22:54,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:22:54,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:22:54,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:22:55,021.021 INFO    ] time= 27/06/2026 05:22:54
[2026-06-27 05:22:55,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:22:55,050.050 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:22:55,115.115 INFO    ] No existing commands found in stream
[2026-06-27 05:23:00,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:23:00,128.128 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-27 05:23:03,859.859 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:23:03,860.860 INFO    ] Checking for system updates...
[2026-06-27 05:23:03,881.881 INFO    ] 200
[2026-06-27 05:23:03,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:23:03,912.912 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:23:03,914.914 INFO    ] No update needed
[2026-06-27 05:23:03,915.915 INFO    ] Checking for camera pi updates...
[2026-06-27 05:23:03,935.935 INFO    ] 200
[2026-06-27 05:23:03,936.936 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:23:03,960.960 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:23:03,997.997 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:23:03,998.998 INFO    ] No camera update needed
[2026-06-27 05:23:03,999.999 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:23:04,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:23:04,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:23:04,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:23:06,051.051 INFO    ] ================================================
[2026-06-27 05:23:06,068.068 INFO    ] Launching Daemon at Sat Jun 27 05:23:06 IST 2026
[2026-06-27 05:23:06,080.080 INFO    ] ================================================
[2026-06-27 05:23:06,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:23:06
[2026-06-27 05:23:06,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:23:06,851.851 INFO    ] Initializing speech engine...
[2026-06-27 05:23:06,859.859 INFO    ] 2026-06-27 05:23:06
[2026-06-27 05:23:07,069.069 INFO    ] 2026-06-27 05:23:07
[2026-06-27 05:23:07,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:23:07,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:23:07,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:23:07,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:23:07,486.486 INFO    ] time= 27/06/2026 05:23:07
[2026-06-27 05:23:07,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:23:07,521.521 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:23:07,594.594 INFO    ] No existing commands found in stream
[2026-06-27 05:23:12,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:23:12,606.606 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-27 05:23:15,508.508 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:23:15,510.510 INFO    ] Checking for system updates...
[2026-06-27 05:23:15,530.530 INFO    ] 200
[2026-06-27 05:23:15,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:23:15,565.565 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:23:15,566.566 INFO    ] No update needed
[2026-06-27 05:23:15,567.567 INFO    ] Checking for camera pi updates...
[2026-06-27 05:23:15,586.586 INFO    ] 200
[2026-06-27 05:23:15,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:23:15,611.611 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:23:15,652.652 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:23:15,654.654 INFO    ] No camera update needed
[2026-06-27 05:23:15,655.655 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:23:15,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:23:15,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:23:15,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:23:17,700.700 INFO    ] ================================================
[2026-06-27 05:23:17,715.715 INFO    ] Launching Daemon at Sat Jun 27 05:23:17 IST 2026
[2026-06-27 05:23:17,726.726 INFO    ] ================================================
[2026-06-27 05:23:18,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:23:18
[2026-06-27 05:23:18,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:23:18,596.596 INFO    ] Initializing speech engine...
[2026-06-27 05:23:18,601.601 INFO    ] 2026-06-27 05:23:18
[2026-06-27 05:23:18,809.809 INFO    ] 2026-06-27 05:23:18
[2026-06-27 05:23:18,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:23:19,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:23:19,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:23:19,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:23:19,253.253 INFO    ] time= 27/06/2026 05:23:19
[2026-06-27 05:23:19,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:23:19,261.261 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:23:19,328.328 INFO    ] No existing commands found in stream
[2026-06-27 05:23:24,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:23:24,356.356 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-27 05:23:27,093.093 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 05:23:27,094.094 INFO    ] Checking for system updates...
[2026-06-27 05:23:27,116.116 INFO    ] 200
[2026-06-27 05:23:27,117.117 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:23:27,148.148 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:23:27,150.150 INFO    ] No update needed
[2026-06-27 05:23:27,151.151 INFO    ] Checking for camera pi updates...
[2026-06-27 05:23:27,173.173 INFO    ] 200
[2026-06-27 05:23:27,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:23:27,199.199 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:23:27,245.245 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:23:27,247.247 INFO    ] No camera update needed
[2026-06-27 05:23:27,248.248 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:23:27,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:23:27,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:23:27,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:23:29,298.298 INFO    ] ================================================
[2026-06-27 05:23:29,313.313 INFO    ] Launching Daemon at Sat Jun 27 05:23:29 IST 2026
[2026-06-27 05:23:29,324.324 INFO    ] ================================================
[2026-06-27 05:23:29,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:23:29
[2026-06-27 05:23:30,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:23:30,153.153 INFO    ] Initializing speech engine...
[2026-06-27 05:23:30,158.158 INFO    ] 2026-06-27 05:23:30
[2026-06-27 05:23:30,376.376 INFO    ] 2026-06-27 05:23:30
[2026-06-27 05:23:30,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:23:30,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:23:30,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:23:30,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:23:30,826.826 INFO    ] time= 27/06/2026 05:23:30
[2026-06-27 05:23:30,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:23:30,834.834 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:23:30,902.902 INFO    ] No existing commands found in stream
[2026-06-27 05:23:35,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:23:35,914.914 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-27 05:23:36,856.856 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:23:36,857.857 INFO    ] Checking for system updates...
[2026-06-27 05:23:36,878.878 INFO    ] 200
[2026-06-27 05:23:36,880.880 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:23:36,910.910 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:23:36,911.911 INFO    ] No update needed
[2026-06-27 05:23:36,913.913 INFO    ] Checking for camera pi updates...
[2026-06-27 05:23:36,932.932 INFO    ] 200
[2026-06-27 05:23:36,934.934 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:23:36,958.958 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:23:37,010.010 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:23:37,012.012 INFO    ] No camera update needed
[2026-06-27 05:23:37,013.013 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:23:37,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:23:37,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:23:37,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:23:39,058.058 INFO    ] ================================================
[2026-06-27 05:23:39,074.074 INFO    ] Launching Daemon at Sat Jun 27 05:23:39 IST 2026
[2026-06-27 05:23:39,085.085 INFO    ] ================================================
[2026-06-27 05:23:39,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:23:39
[2026-06-27 05:23:39,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:23:39,879.879 INFO    ] Initializing speech engine...
[2026-06-27 05:23:39,887.887 INFO    ] 2026-06-27 05:23:39
[2026-06-27 05:23:40,099.099 INFO    ] 2026-06-27 05:23:40
[2026-06-27 05:23:40,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:23:40,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:23:40,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:23:40,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:23:40,538.538 INFO    ] time= 27/06/2026 05:23:40
[2026-06-27 05:23:40,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:23:40,549.549 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:23:40,615.615 INFO    ] No existing commands found in stream
[2026-06-27 05:23:45,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:23:45,628.628 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-27 05:23:46,911.911 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 05:23:46,912.912 INFO    ] Checking for system updates...
[2026-06-27 05:23:46,936.936 INFO    ] 200
[2026-06-27 05:23:46,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:23:46,969.969 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:23:46,971.971 INFO    ] No update needed
[2026-06-27 05:23:46,972.972 INFO    ] Checking for camera pi updates...
[2026-06-27 05:23:46,992.992 INFO    ] 200
[2026-06-27 05:23:46,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:23:47,020.020 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:23:47,072.072 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:23:47,073.073 INFO    ] No camera update needed
[2026-06-27 05:23:47,075.075 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:23:47,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:23:47,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:23:47,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:23:49,122.122 INFO    ] ================================================
[2026-06-27 05:23:49,137.137 INFO    ] Launching Daemon at Sat Jun 27 05:23:49 IST 2026
[2026-06-27 05:23:49,147.147 INFO    ] ================================================
[2026-06-27 05:23:49,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:23:49
[2026-06-27 05:23:49,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:23:49,937.937 INFO    ] Initializing speech engine...
[2026-06-27 05:23:49,947.947 INFO    ] 2026-06-27 05:23:49
[2026-06-27 05:23:50,154.154 INFO    ] 2026-06-27 05:23:50
[2026-06-27 05:23:50,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:23:50,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:23:50,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:23:50,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:23:50,567.567 INFO    ] time= 27/06/2026 05:23:50
[2026-06-27 05:23:50,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:23:50,608.608 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:23:50,681.681 INFO    ] No existing commands found in stream
[2026-06-27 05:23:55,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:23:55,698.698 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-27 05:23:58,902.902 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:23:58,904.904 INFO    ] Checking for system updates...
[2026-06-27 05:23:58,925.925 INFO    ] 200
[2026-06-27 05:23:58,926.926 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:23:58,957.957 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:23:58,958.958 INFO    ] No update needed
[2026-06-27 05:23:58,959.959 INFO    ] Checking for camera pi updates...
[2026-06-27 05:23:58,979.979 INFO    ] 200
[2026-06-27 05:23:58,980.980 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:23:59,004.004 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:23:59,045.045 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:23:59,046.046 INFO    ] No camera update needed
[2026-06-27 05:23:59,048.048 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:23:59,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:23:59,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:23:59,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:24:01,118.118 INFO    ] ================================================
[2026-06-27 05:24:01,161.161 INFO    ] Launching Daemon at Sat Jun 27 05:24:01 IST 2026
[2026-06-27 05:24:01,183.183 INFO    ] ================================================
[2026-06-27 05:24:01,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:24:01
[2026-06-27 05:24:01,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:24:02,163.163 INFO    ] Initializing speech engine...
[2026-06-27 05:24:02,168.168 INFO    ] 2026-06-27 05:24:02
[2026-06-27 05:24:02,393.393 INFO    ] 2026-06-27 05:24:02
[2026-06-27 05:24:02,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:24:02,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:24:02,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:24:02,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:24:02,838.838 INFO    ] time= 27/06/2026 05:24:02
[2026-06-27 05:24:02,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:24:02,884.884 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:24:02,960.960 INFO    ] No existing commands found in stream
[2026-06-27 05:24:07,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:24:07,973.973 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-27 05:24:08,998.998 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 05:24:09,000.000 INFO    ] Checking for system updates...
[2026-06-27 05:24:09,021.021 INFO    ] 200
[2026-06-27 05:24:09,022.022 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:24:09,052.052 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:24:09,054.054 INFO    ] No update needed
[2026-06-27 05:24:09,055.055 INFO    ] Checking for camera pi updates...
[2026-06-27 05:24:09,075.075 INFO    ] 200
[2026-06-27 05:24:09,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:24:09,102.102 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:24:09,142.142 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:24:09,144.144 INFO    ] No camera update needed
[2026-06-27 05:24:09,145.145 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:24:09,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:24:09,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:24:09,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:24:11,190.190 INFO    ] ================================================
[2026-06-27 05:24:11,206.206 INFO    ] Launching Daemon at Sat Jun 27 05:24:11 IST 2026
[2026-06-27 05:24:11,217.217 INFO    ] ================================================
[2026-06-27 05:24:11,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:24:11
[2026-06-27 05:24:11,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:24:12,010.010 INFO    ] Initializing speech engine...
[2026-06-27 05:24:12,020.020 INFO    ] 2026-06-27 05:24:12
[2026-06-27 05:24:12,225.225 INFO    ] 2026-06-27 05:24:12
[2026-06-27 05:24:12,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:24:12,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:24:12,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:24:12,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:24:12,660.660 INFO    ] time= 27/06/2026 05:24:12
[2026-06-27 05:24:12,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:24:12,671.671 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:24:12,739.739 INFO    ] No existing commands found in stream
[2026-06-27 05:24:17,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:24:17,749.749 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-27 05:24:18,409.409 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:24:18,411.411 INFO    ] Checking for system updates...
[2026-06-27 05:24:18,433.433 INFO    ] 200
[2026-06-27 05:24:18,435.435 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:24:18,466.466 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:24:18,468.468 INFO    ] No update needed
[2026-06-27 05:24:18,469.469 INFO    ] Checking for camera pi updates...
[2026-06-27 05:24:18,489.489 INFO    ] 200
[2026-06-27 05:24:18,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:24:18,516.516 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:24:18,557.557 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:24:18,559.559 INFO    ] No camera update needed
[2026-06-27 05:24:18,560.560 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:24:18,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:24:18,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:24:18,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:24:20,609.609 INFO    ] ================================================
[2026-06-27 05:24:20,625.625 INFO    ] Launching Daemon at Sat Jun 27 05:24:20 IST 2026
[2026-06-27 05:24:20,637.637 INFO    ] ================================================
[2026-06-27 05:24:21,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:24:21
[2026-06-27 05:24:21,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:24:21,552.552 INFO    ] Initializing speech engine...
[2026-06-27 05:24:21,556.556 INFO    ] 2026-06-27 05:24:21
[2026-06-27 05:24:21,766.766 INFO    ] 2026-06-27 05:24:21
[2026-06-27 05:24:21,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:24:21,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:24:21,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:24:22,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:24:22,188.188 INFO    ] time= 27/06/2026 05:24:22
[2026-06-27 05:24:22,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:24:22,217.217 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:24:22,285.285 INFO    ] No existing commands found in stream
[2026-06-27 05:24:27,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:24:27,298.298 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-27 05:24:28,816.816 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:24:28,818.818 INFO    ] Checking for system updates...
[2026-06-27 05:24:28,839.839 INFO    ] 200
[2026-06-27 05:24:28,841.841 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:24:28,872.872 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:24:28,873.873 INFO    ] No update needed
[2026-06-27 05:24:28,875.875 INFO    ] Checking for camera pi updates...
[2026-06-27 05:24:28,895.895 INFO    ] 200
[2026-06-27 05:24:28,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:24:28,922.922 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:24:28,961.961 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:24:28,962.962 INFO    ] No camera update needed
[2026-06-27 05:24:28,964.964 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:24:28,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:24:28,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:24:28,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:24:31,010.010 INFO    ] ================================================
[2026-06-27 05:24:31,026.026 INFO    ] Launching Daemon at Sat Jun 27 05:24:31 IST 2026
[2026-06-27 05:24:31,037.037 INFO    ] ================================================
[2026-06-27 05:24:31,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:24:31
[2026-06-27 05:24:31,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:24:31,943.943 INFO    ] Initializing speech engine...
[2026-06-27 05:24:31,947.947 INFO    ] 2026-06-27 05:24:31
[2026-06-27 05:24:32,166.166 INFO    ] 2026-06-27 05:24:32
[2026-06-27 05:24:32,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:24:32,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:24:32,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:24:32,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:24:32,590.590 INFO    ] time= 27/06/2026 05:24:32
[2026-06-27 05:24:32,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:24:32,620.620 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:24:32,688.688 INFO    ] No existing commands found in stream
[2026-06-27 05:24:37,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:24:37,699.699 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-27 05:24:39,074.074 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 05:24:39,075.075 INFO    ] Checking for system updates...
[2026-06-27 05:24:39,097.097 INFO    ] 200
[2026-06-27 05:24:39,098.098 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:24:39,131.131 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:24:39,132.132 INFO    ] No update needed
[2026-06-27 05:24:39,134.134 INFO    ] Checking for camera pi updates...
[2026-06-27 05:24:39,158.158 INFO    ] 200
[2026-06-27 05:24:39,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:24:39,186.186 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:24:39,223.223 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:24:39,224.224 INFO    ] No camera update needed
[2026-06-27 05:24:39,226.226 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:24:39,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:24:39,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:24:39,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:24:41,272.272 INFO    ] ================================================
[2026-06-27 05:24:41,289.289 INFO    ] Launching Daemon at Sat Jun 27 05:24:41 IST 2026
[2026-06-27 05:24:41,300.300 INFO    ] ================================================
[2026-06-27 05:24:41,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:24:41
[2026-06-27 05:24:41,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:24:42,121.121 INFO    ] Initializing speech engine...
[2026-06-27 05:24:42,134.134 INFO    ] 2026-06-27 05:24:42
[2026-06-27 05:24:42,341.341 INFO    ] 2026-06-27 05:24:42
[2026-06-27 05:24:42,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:24:42,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:24:42,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:24:42,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:24:42,784.784 INFO    ] time= 27/06/2026 05:24:42
[2026-06-27 05:24:42,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:24:42,791.791 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:24:42,858.858 INFO    ] No existing commands found in stream
[2026-06-27 05:24:47,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:24:47,875.875 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-27 05:24:48,922.922 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 05:24:48,923.923 INFO    ] Checking for system updates...
[2026-06-27 05:24:48,944.944 INFO    ] 200
[2026-06-27 05:24:48,946.946 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:24:48,977.977 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:24:48,978.978 INFO    ] No update needed
[2026-06-27 05:24:48,979.979 INFO    ] Checking for camera pi updates...
[2026-06-27 05:24:48,999.999 INFO    ] 200
[2026-06-27 05:24:49,000.000 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:24:49,024.024 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:24:49,064.064 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:24:49,065.065 INFO    ] No camera update needed
[2026-06-27 05:24:49,067.067 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:24:49,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:24:49,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:24:49,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:24:51,113.113 INFO    ] ================================================
[2026-06-27 05:24:51,128.128 INFO    ] Launching Daemon at Sat Jun 27 05:24:51 IST 2026
[2026-06-27 05:24:51,139.139 INFO    ] ================================================
[2026-06-27 05:24:51,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:24:51
[2026-06-27 05:24:51,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:24:51,932.932 INFO    ] Initializing speech engine...
[2026-06-27 05:24:51,937.937 INFO    ] 2026-06-27 05:24:51
[2026-06-27 05:24:52,145.145 INFO    ] 2026-06-27 05:24:52
[2026-06-27 05:24:52,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:24:52,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:24:52,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:24:52,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:24:52,592.592 INFO    ] time= 27/06/2026 05:24:52
[2026-06-27 05:24:52,594.594 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:24:52,600.600 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:24:52,667.667 INFO    ] No existing commands found in stream
[2026-06-27 05:24:57,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:24:57,684.684 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-27 05:25:01,478.478 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:25:01,480.480 INFO    ] Checking for system updates...
[2026-06-27 05:25:01,501.501 INFO    ] 200
[2026-06-27 05:25:01,503.503 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:25:01,534.534 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:25:01,536.536 INFO    ] No update needed
[2026-06-27 05:25:01,537.537 INFO    ] Checking for camera pi updates...
[2026-06-27 05:25:01,558.558 INFO    ] 200
[2026-06-27 05:25:01,560.560 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:25:01,584.584 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:25:01,633.633 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:25:01,637.637 INFO    ] No camera update needed
[2026-06-27 05:25:01,651.651 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:25:01,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:25:01,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:25:01,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:25:03,719.719 INFO    ] ================================================
[2026-06-27 05:25:03,735.735 INFO    ] Launching Daemon at Sat Jun 27 05:25:03 IST 2026
[2026-06-27 05:25:03,746.746 INFO    ] ================================================
[2026-06-27 05:25:04,124.124 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:25:04
[2026-06-27 05:25:04,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:25:04,576.576 INFO    ] Initializing speech engine...
[2026-06-27 05:25:04,581.581 INFO    ] 2026-06-27 05:25:04
[2026-06-27 05:25:04,811.811 INFO    ] 2026-06-27 05:25:04
[2026-06-27 05:25:04,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:25:05,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:25:05,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:25:05,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:25:05,287.287 INFO    ] time= 27/06/2026 05:25:05
[2026-06-27 05:25:05,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:25:05,296.296 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:25:05,368.368 INFO    ] No existing commands found in stream
[2026-06-27 05:25:10,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:25:10,380.380 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-27 05:25:12,016.016 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 05:25:12,017.017 INFO    ] Checking for system updates...
[2026-06-27 05:25:12,038.038 INFO    ] 200
[2026-06-27 05:25:12,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:25:12,070.070 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:25:12,072.072 INFO    ] No update needed
[2026-06-27 05:25:12,073.073 INFO    ] Checking for camera pi updates...
[2026-06-27 05:25:12,098.098 INFO    ] 200
[2026-06-27 05:25:12,099.099 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:25:12,127.127 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:25:12,266.266 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:25:12,267.267 INFO    ] No camera update needed
[2026-06-27 05:25:12,269.269 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:25:12,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:25:12,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:25:12,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:25:14,316.316 INFO    ] ================================================
[2026-06-27 05:25:14,332.332 INFO    ] Launching Daemon at Sat Jun 27 05:25:14 IST 2026
[2026-06-27 05:25:14,343.343 INFO    ] ================================================
[2026-06-27 05:25:14,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:25:14
[2026-06-27 05:25:15,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:25:15,161.161 INFO    ] Initializing speech engine...
[2026-06-27 05:25:15,169.169 INFO    ] 2026-06-27 05:25:15
[2026-06-27 05:25:15,388.388 INFO    ] 2026-06-27 05:25:15
[2026-06-27 05:25:15,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:25:15,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:25:15,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:25:15,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:25:15,835.835 INFO    ] time= 27/06/2026 05:25:15
[2026-06-27 05:25:15,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:25:15,871.871 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:25:15,947.947 INFO    ] No existing commands found in stream
[2026-06-27 05:25:20,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:25:20,960.960 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-27 05:25:21,388.388 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 05:25:21,390.390 INFO    ] Checking for system updates...
[2026-06-27 05:25:21,411.411 INFO    ] 200
[2026-06-27 05:25:21,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:25:21,443.443 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:25:21,445.445 INFO    ] No update needed
[2026-06-27 05:25:21,446.446 INFO    ] Checking for camera pi updates...
[2026-06-27 05:25:21,465.465 INFO    ] 200
[2026-06-27 05:25:21,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:25:21,490.490 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:25:21,529.529 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:25:21,530.530 INFO    ] No camera update needed
[2026-06-27 05:25:21,531.531 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:25:21,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:25:21,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:25:21,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:25:23,576.576 INFO    ] ================================================
[2026-06-27 05:25:23,593.593 INFO    ] Launching Daemon at Sat Jun 27 05:25:23 IST 2026
[2026-06-27 05:25:23,604.604 INFO    ] ================================================
[2026-06-27 05:25:23,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:25:23
[2026-06-27 05:25:24,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:25:24,464.464 INFO    ] Initializing speech engine...
[2026-06-27 05:25:24,470.470 INFO    ] 2026-06-27 05:25:24
[2026-06-27 05:25:24,677.677 INFO    ] 2026-06-27 05:25:24
[2026-06-27 05:25:24,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:25:24,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:25:24,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:25:25,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:25:25,120.120 INFO    ] time= 27/06/2026 05:25:25
[2026-06-27 05:25:25,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:25:25,128.128 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:25:25,194.194 INFO    ] No existing commands found in stream
[2026-06-27 05:25:30,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:25:30,208.208 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-27 05:25:33,104.104 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 05:25:33,105.105 INFO    ] Checking for system updates...
[2026-06-27 05:25:33,126.126 INFO    ] 200
[2026-06-27 05:25:33,127.127 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:25:33,158.158 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:25:33,159.159 INFO    ] No update needed
[2026-06-27 05:25:33,160.160 INFO    ] Checking for camera pi updates...
[2026-06-27 05:25:33,180.180 INFO    ] 200
[2026-06-27 05:25:33,181.181 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:25:33,207.207 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:25:33,244.244 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:25:33,246.246 INFO    ] No camera update needed
[2026-06-27 05:25:33,247.247 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:25:33,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:25:33,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:25:33,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:25:35,292.292 INFO    ] ================================================
[2026-06-27 05:25:35,307.307 INFO    ] Launching Daemon at Sat Jun 27 05:25:35 IST 2026
[2026-06-27 05:25:35,318.318 INFO    ] ================================================
[2026-06-27 05:25:35,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:25:35
[2026-06-27 05:25:35,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:25:36,115.115 INFO    ] Initializing speech engine...
[2026-06-27 05:25:36,125.125 INFO    ] 2026-06-27 05:25:36
[2026-06-27 05:25:36,333.333 INFO    ] 2026-06-27 05:25:36
[2026-06-27 05:25:36,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:25:36,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:25:36,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:25:36,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:25:36,754.754 INFO    ] time= 27/06/2026 05:25:36
[2026-06-27 05:25:36,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:25:36,782.782 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:25:36,850.850 INFO    ] No existing commands found in stream
[2026-06-27 05:25:41,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:25:41,862.862 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-27 05:25:43,149.149 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 05:25:43,150.150 INFO    ] Checking for system updates...
[2026-06-27 05:25:43,172.172 INFO    ] 200
[2026-06-27 05:25:43,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:25:43,206.206 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:25:43,207.207 INFO    ] No update needed
[2026-06-27 05:25:43,209.209 INFO    ] Checking for camera pi updates...
[2026-06-27 05:25:43,231.231 INFO    ] 200
[2026-06-27 05:25:43,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:25:43,258.258 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:25:43,295.295 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:25:43,297.297 INFO    ] No camera update needed
[2026-06-27 05:25:43,298.298 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:25:43,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:25:43,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:25:43,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:25:45,345.345 INFO    ] ================================================
[2026-06-27 05:25:45,361.361 INFO    ] Launching Daemon at Sat Jun 27 05:25:45 IST 2026
[2026-06-27 05:25:45,372.372 INFO    ] ================================================
[2026-06-27 05:25:45,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:25:45
[2026-06-27 05:25:46,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:25:46,244.244 INFO    ] Initializing speech engine...
[2026-06-27 05:25:46,249.249 INFO    ] 2026-06-27 05:25:46
[2026-06-27 05:25:46,455.455 INFO    ] 2026-06-27 05:25:46
[2026-06-27 05:25:46,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:25:46,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:25:46,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:25:46,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:25:46,875.875 INFO    ] time= 27/06/2026 05:25:46
[2026-06-27 05:25:46,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:25:46,903.903 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:25:46,971.971 INFO    ] No existing commands found in stream
[2026-06-27 05:25:51,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:25:51,988.988 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-27 05:25:53,219.219 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:25:53,220.220 INFO    ] Checking for system updates...
[2026-06-27 05:25:53,242.242 INFO    ] 200
[2026-06-27 05:25:53,244.244 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:25:53,274.274 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:25:53,275.275 INFO    ] No update needed
[2026-06-27 05:25:53,277.277 INFO    ] Checking for camera pi updates...
[2026-06-27 05:25:53,300.300 INFO    ] 200
[2026-06-27 05:25:53,301.301 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:25:53,325.325 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:25:53,360.360 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:25:53,361.361 INFO    ] No camera update needed
[2026-06-27 05:25:53,362.362 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:25:53,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:25:53,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:25:53,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:25:55,407.407 INFO    ] ================================================
[2026-06-27 05:25:55,423.423 INFO    ] Launching Daemon at Sat Jun 27 05:25:55 IST 2026
[2026-06-27 05:25:55,435.435 INFO    ] ================================================
[2026-06-27 05:25:55,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:25:55
[2026-06-27 05:25:56,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:25:56,253.253 INFO    ] Initializing speech engine...
[2026-06-27 05:25:56,262.262 INFO    ] 2026-06-27 05:25:56
[2026-06-27 05:25:56,466.466 INFO    ] 2026-06-27 05:25:56
[2026-06-27 05:25:56,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:25:56,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:25:56,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:25:56,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:25:56,885.885 INFO    ] time= 27/06/2026 05:25:56
[2026-06-27 05:25:56,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:25:56,913.913 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:25:56,979.979 INFO    ] No existing commands found in stream
[2026-06-27 05:26:01,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:26:01,991.991 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-27 05:26:04,258.258 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 05:26:04,259.259 INFO    ] Checking for system updates...
[2026-06-27 05:26:04,281.281 INFO    ] 200
[2026-06-27 05:26:04,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:26:04,313.313 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:26:04,314.314 INFO    ] No update needed
[2026-06-27 05:26:04,316.316 INFO    ] Checking for camera pi updates...
[2026-06-27 05:26:04,336.336 INFO    ] 200
[2026-06-27 05:26:04,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:26:04,361.361 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:26:04,400.400 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:26:04,401.401 INFO    ] No camera update needed
[2026-06-27 05:26:04,402.402 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:26:04,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:26:04,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:26:04,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:26:06,449.449 INFO    ] ================================================
[2026-06-27 05:26:06,464.464 INFO    ] Launching Daemon at Sat Jun 27 05:26:06 IST 2026
[2026-06-27 05:26:06,475.475 INFO    ] ================================================
[2026-06-27 05:26:06,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:26:06
[2026-06-27 05:26:07,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:26:07,257.257 INFO    ] Initializing speech engine...
[2026-06-27 05:26:07,267.267 INFO    ] 2026-06-27 05:26:07
[2026-06-27 05:26:07,476.476 INFO    ] 2026-06-27 05:26:07
[2026-06-27 05:26:07,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:26:07,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:26:07,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:26:07,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:26:07,929.929 INFO    ] time= 27/06/2026 05:26:07
[2026-06-27 05:26:07,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:26:07,936.936 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:26:08,003.003 INFO    ] No existing commands found in stream
[2026-06-27 05:26:13,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:26:13,017.017 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-27 05:26:14,503.503 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 05:26:14,505.505 INFO    ] Checking for system updates...
[2026-06-27 05:26:14,526.526 INFO    ] 200
[2026-06-27 05:26:14,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:26:14,560.560 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:26:14,562.562 INFO    ] No update needed
[2026-06-27 05:26:14,564.564 INFO    ] Checking for camera pi updates...
[2026-06-27 05:26:14,587.587 INFO    ] 200
[2026-06-27 05:26:14,589.589 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:26:14,622.622 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:26:14,660.660 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:26:14,661.661 INFO    ] No camera update needed
[2026-06-27 05:26:14,662.662 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:26:14,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:26:14,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:26:14,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:26:16,710.710 INFO    ] ================================================
[2026-06-27 05:26:16,726.726 INFO    ] Launching Daemon at Sat Jun 27 05:26:16 IST 2026
[2026-06-27 05:26:16,737.737 INFO    ] ================================================
[2026-06-27 05:26:17,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:26:17
[2026-06-27 05:26:17,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:26:17,565.565 INFO    ] Initializing speech engine...
[2026-06-27 05:26:17,571.571 INFO    ] 2026-06-27 05:26:17
[2026-06-27 05:26:17,779.779 INFO    ] 2026-06-27 05:26:17
[2026-06-27 05:26:17,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:26:17,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:26:18,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:26:18,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:26:18,220.220 INFO    ] time= 27/06/2026 05:26:18
[2026-06-27 05:26:18,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:26:18,228.228 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:26:18,295.295 INFO    ] No existing commands found in stream
[2026-06-27 05:26:23,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:26:23,308.308 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-27 05:26:25,774.774 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 05:26:25,775.775 INFO    ] Checking for system updates...
[2026-06-27 05:26:25,798.798 INFO    ] 200
[2026-06-27 05:26:25,799.799 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:26:25,833.833 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:26:25,834.834 INFO    ] No update needed
[2026-06-27 05:26:25,836.836 INFO    ] Checking for camera pi updates...
[2026-06-27 05:26:25,859.859 INFO    ] 200
[2026-06-27 05:26:25,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:26:25,887.887 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:26:25,929.929 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:26:25,931.931 INFO    ] No camera update needed
[2026-06-27 05:26:25,932.932 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:26:25,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:26:25,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:26:25,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:26:27,979.979 INFO    ] ================================================
[2026-06-27 05:26:27,995.995 INFO    ] Launching Daemon at Sat Jun 27 05:26:27 IST 2026
[2026-06-27 05:26:28,005.005 INFO    ] ================================================
[2026-06-27 05:26:28,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:26:28
[2026-06-27 05:26:28,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:26:28,781.781 INFO    ] Initializing speech engine...
[2026-06-27 05:26:28,786.786 INFO    ] 2026-06-27 05:26:28
[2026-06-27 05:26:28,993.993 INFO    ] 2026-06-27 05:26:28
[2026-06-27 05:26:29,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:26:29,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:26:29,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:26:29,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:26:29,425.425 INFO    ] time= 27/06/2026 05:26:29
[2026-06-27 05:26:29,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:26:29,453.453 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:26:29,521.521 INFO    ] No existing commands found in stream
[2026-06-27 05:26:34,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:26:34,533.533 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-27 05:26:38,646.646 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:26:38,648.648 INFO    ] Checking for system updates...
[2026-06-27 05:26:38,669.669 INFO    ] 200
[2026-06-27 05:26:38,670.670 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:26:38,706.706 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:26:38,707.707 INFO    ] No update needed
[2026-06-27 05:26:38,709.709 INFO    ] Checking for camera pi updates...
[2026-06-27 05:26:38,728.728 INFO    ] 200
[2026-06-27 05:26:38,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:26:38,753.753 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:26:38,793.793 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:26:38,794.794 INFO    ] No camera update needed
[2026-06-27 05:26:38,796.796 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:26:38,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:26:38,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:26:38,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:26:40,841.841 INFO    ] ================================================
[2026-06-27 05:26:40,856.856 INFO    ] Launching Daemon at Sat Jun 27 05:26:40 IST 2026
[2026-06-27 05:26:40,867.867 INFO    ] ================================================
[2026-06-27 05:26:41,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:26:41
[2026-06-27 05:26:41,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:26:41,682.682 INFO    ] Initializing speech engine...
[2026-06-27 05:26:41,691.691 INFO    ] 2026-06-27 05:26:41
[2026-06-27 05:26:41,907.907 INFO    ] 2026-06-27 05:26:41
[2026-06-27 05:26:41,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:26:42,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:26:42,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:26:42,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:26:42,342.342 INFO    ] time= 27/06/2026 05:26:42
[2026-06-27 05:26:42,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:26:42,383.383 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:26:42,460.460 INFO    ] No existing commands found in stream
[2026-06-27 05:26:47,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:26:47,472.472 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-27 05:26:50,779.779 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 05:26:50,780.780 INFO    ] Checking for system updates...
[2026-06-27 05:26:50,801.801 INFO    ] 200
[2026-06-27 05:26:50,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:26:50,833.833 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:26:50,834.834 INFO    ] No update needed
[2026-06-27 05:26:50,835.835 INFO    ] Checking for camera pi updates...
[2026-06-27 05:26:50,857.857 INFO    ] 200
[2026-06-27 05:26:50,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:26:50,884.884 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:26:50,927.927 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:26:50,928.928 INFO    ] No camera update needed
[2026-06-27 05:26:50,930.930 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:26:50,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:26:50,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:26:50,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:26:52,976.976 INFO    ] ================================================
[2026-06-27 05:26:52,991.991 INFO    ] Launching Daemon at Sat Jun 27 05:26:52 IST 2026
[2026-06-27 05:26:53,002.002 INFO    ] ================================================
[2026-06-27 05:26:53,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:26:53
[2026-06-27 05:26:53,698.698 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:26:53,849.849 INFO    ] Initializing speech engine...
[2026-06-27 05:26:53,855.855 INFO    ] 2026-06-27 05:26:53
[2026-06-27 05:26:54,062.062 INFO    ] 2026-06-27 05:26:54
[2026-06-27 05:26:54,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:26:54,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:26:54,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:26:54,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:26:54,507.507 INFO    ] time= 27/06/2026 05:26:54
[2026-06-27 05:26:54,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:26:54,511.511 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:26:54,578.578 INFO    ] No existing commands found in stream
[2026-06-27 05:26:59,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:26:59,590.590 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-27 05:27:00,883.883 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 05:27:00,884.884 INFO    ] Checking for system updates...
[2026-06-27 05:27:00,905.905 INFO    ] 200
[2026-06-27 05:27:00,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:27:00,940.940 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:27:00,942.942 INFO    ] No update needed
[2026-06-27 05:27:00,943.943 INFO    ] Checking for camera pi updates...
[2026-06-27 05:27:00,963.963 INFO    ] 200
[2026-06-27 05:27:00,964.964 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:27:00,989.989 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:27:01,028.028 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:27:01,030.030 INFO    ] No camera update needed
[2026-06-27 05:27:01,031.031 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:27:01,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:27:01,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:27:01,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:27:03,071.071 INFO    ] ================================================
[2026-06-27 05:27:03,087.087 INFO    ] Launching Daemon at Sat Jun 27 05:27:03 IST 2026
[2026-06-27 05:27:03,098.098 INFO    ] ================================================
[2026-06-27 05:27:03,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:27:03
[2026-06-27 05:27:03,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:27:03,892.892 INFO    ] Initializing speech engine...
[2026-06-27 05:27:03,897.897 INFO    ] 2026-06-27 05:27:03
[2026-06-27 05:27:04,102.102 INFO    ] 2026-06-27 05:27:04
[2026-06-27 05:27:04,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:27:04,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:27:04,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:27:04,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:27:04,498.498 INFO    ] time= 27/06/2026 05:27:04
[2026-06-27 05:27:04,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:27:04,548.548 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:27:04,619.619 INFO    ] No existing commands found in stream
[2026-06-27 05:27:09,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:27:09,636.636 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-27 05:27:10,205.205 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 05:27:10,207.207 INFO    ] Checking for system updates...
[2026-06-27 05:27:10,228.228 INFO    ] 200
[2026-06-27 05:27:10,230.230 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:27:10,260.260 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:27:10,262.262 INFO    ] No update needed
[2026-06-27 05:27:10,263.263 INFO    ] Checking for camera pi updates...
[2026-06-27 05:27:10,285.285 INFO    ] 200
[2026-06-27 05:27:10,286.286 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:27:10,314.314 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:27:10,351.351 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:27:10,352.352 INFO    ] No camera update needed
[2026-06-27 05:27:10,353.353 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:27:10,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:27:10,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:27:10,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:27:12,402.402 INFO    ] ================================================
[2026-06-27 05:27:12,417.417 INFO    ] Launching Daemon at Sat Jun 27 05:27:12 IST 2026
[2026-06-27 05:27:12,428.428 INFO    ] ================================================
[2026-06-27 05:27:12,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:27:12
[2026-06-27 05:27:13,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:27:13,283.283 INFO    ] Initializing speech engine...
[2026-06-27 05:27:13,292.292 INFO    ] 2026-06-27 05:27:13
[2026-06-27 05:27:13,503.503 INFO    ] 2026-06-27 05:27:13
[2026-06-27 05:27:13,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:27:13,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:27:13,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:27:13,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:27:13,933.933 INFO    ] time= 27/06/2026 05:27:13
[2026-06-27 05:27:13,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:27:13,961.961 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:27:14,030.030 INFO    ] No existing commands found in stream
[2026-06-27 05:27:19,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:27:19,040.040 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-27 05:27:21,208.208 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 05:27:21,209.209 INFO    ] Checking for system updates...
[2026-06-27 05:27:21,232.232 INFO    ] 200
[2026-06-27 05:27:21,234.234 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:27:21,267.267 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:27:21,268.268 INFO    ] No update needed
[2026-06-27 05:27:21,270.270 INFO    ] Checking for camera pi updates...
[2026-06-27 05:27:21,292.292 INFO    ] 200
[2026-06-27 05:27:21,294.294 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:27:21,319.319 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:27:21,463.463 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:27:21,464.464 INFO    ] No camera update needed
[2026-06-27 05:27:21,466.466 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:27:21,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:27:21,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:27:21,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:27:23,512.512 INFO    ] ================================================
[2026-06-27 05:27:23,528.528 INFO    ] Launching Daemon at Sat Jun 27 05:27:23 IST 2026
[2026-06-27 05:27:23,539.539 INFO    ] ================================================
[2026-06-27 05:27:23,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:27:23
[2026-06-27 05:27:24,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:27:24,373.373 INFO    ] Initializing speech engine...
[2026-06-27 05:27:24,378.378 INFO    ] 2026-06-27 05:27:24
[2026-06-27 05:27:24,583.583 INFO    ] 2026-06-27 05:27:24
[2026-06-27 05:27:24,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:27:24,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:27:24,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:27:24,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:27:25,022.022 INFO    ] time= 27/06/2026 05:27:25
[2026-06-27 05:27:25,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:27:25,030.030 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:27:25,120.120 INFO    ] No existing commands found in stream
[2026-06-27 05:27:30,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:27:30,138.138 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-27 05:27:34,332.332 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 05:27:34,334.334 INFO    ] Checking for system updates...
[2026-06-27 05:27:34,356.356 INFO    ] 200
[2026-06-27 05:27:34,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:27:34,389.389 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:27:34,390.390 INFO    ] No update needed
[2026-06-27 05:27:34,391.391 INFO    ] Checking for camera pi updates...
[2026-06-27 05:27:34,412.412 INFO    ] 200
[2026-06-27 05:27:34,415.415 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:27:34,439.439 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:27:34,477.477 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:27:34,479.479 INFO    ] No camera update needed
[2026-06-27 05:27:34,480.480 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:27:34,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:27:34,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:27:34,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:27:36,526.526 INFO    ] ================================================
[2026-06-27 05:27:36,541.541 INFO    ] Launching Daemon at Sat Jun 27 05:27:36 IST 2026
[2026-06-27 05:27:36,552.552 INFO    ] ================================================
[2026-06-27 05:27:36,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:27:36
[2026-06-27 05:27:37,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:27:37,402.402 INFO    ] Initializing speech engine...
[2026-06-27 05:27:37,409.409 INFO    ] 2026-06-27 05:27:37
[2026-06-27 05:27:37,615.615 INFO    ] 2026-06-27 05:27:37
[2026-06-27 05:27:37,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:27:37,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:27:37,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:27:37,967.967 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:27:38,031.031 INFO    ] time= 27/06/2026 05:27:37
[2026-06-27 05:27:38,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:27:38,065.065 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:27:38,132.132 INFO    ] No existing commands found in stream
[2026-06-27 05:27:43,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:27:43,149.149 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-27 05:27:43,656.656 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 05:27:43,658.658 INFO    ] Checking for system updates...
[2026-06-27 05:27:43,679.679 INFO    ] 200
[2026-06-27 05:27:43,680.680 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:27:43,711.711 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:27:43,712.712 INFO    ] No update needed
[2026-06-27 05:27:43,713.713 INFO    ] Checking for camera pi updates...
[2026-06-27 05:27:43,734.734 INFO    ] 200
[2026-06-27 05:27:43,736.736 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:27:43,760.760 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:27:43,796.796 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:27:43,797.797 INFO    ] No camera update needed
[2026-06-27 05:27:43,798.798 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:27:43,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:27:43,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:27:43,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:27:45,844.844 INFO    ] ================================================
[2026-06-27 05:27:45,859.859 INFO    ] Launching Daemon at Sat Jun 27 05:27:45 IST 2026
[2026-06-27 05:27:45,869.869 INFO    ] ================================================
[2026-06-27 05:27:46,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:27:46
[2026-06-27 05:27:46,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:27:46,702.702 INFO    ] Initializing speech engine...
[2026-06-27 05:27:46,707.707 INFO    ] 2026-06-27 05:27:46
[2026-06-27 05:27:46,912.912 INFO    ] 2026-06-27 05:27:46
[2026-06-27 05:27:46,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:27:47,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:27:47,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:27:47,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:27:47,332.332 INFO    ] time= 27/06/2026 05:27:47
[2026-06-27 05:27:47,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:27:47,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:27:47,428.428 INFO    ] No existing commands found in stream
[2026-06-27 05:27:52,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:27:52,445.445 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-27 05:27:53,041.041 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 05:27:53,042.042 INFO    ] Checking for system updates...
[2026-06-27 05:27:53,064.064 INFO    ] 200
[2026-06-27 05:27:53,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:27:53,096.096 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:27:53,098.098 INFO    ] No update needed
[2026-06-27 05:27:53,099.099 INFO    ] Checking for camera pi updates...
[2026-06-27 05:27:53,120.120 INFO    ] 200
[2026-06-27 05:27:53,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:27:53,144.144 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:27:53,181.181 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:27:53,182.182 INFO    ] No camera update needed
[2026-06-27 05:27:53,184.184 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:27:53,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:27:53,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:27:53,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:27:55,231.231 INFO    ] ================================================
[2026-06-27 05:27:55,247.247 INFO    ] Launching Daemon at Sat Jun 27 05:27:55 IST 2026
[2026-06-27 05:27:55,258.258 INFO    ] ================================================
[2026-06-27 05:27:55,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:27:55
[2026-06-27 05:27:55,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:27:56,079.079 INFO    ] Initializing speech engine...
[2026-06-27 05:27:56,084.084 INFO    ] 2026-06-27 05:27:56
[2026-06-27 05:27:56,287.287 INFO    ] 2026-06-27 05:27:56
[2026-06-27 05:27:56,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:27:56,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:27:56,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:27:56,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:27:56,704.704 INFO    ] time= 27/06/2026 05:27:56
[2026-06-27 05:27:56,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:27:56,737.737 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:27:56,803.803 INFO    ] No existing commands found in stream
[2026-06-27 05:28:01,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:28:01,815.815 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-27 05:28:02,442.442 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 05:28:02,444.444 INFO    ] Checking for system updates...
[2026-06-27 05:28:02,474.474 INFO    ] 200
[2026-06-27 05:28:02,476.476 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:28:02,507.507 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:28:02,510.510 INFO    ] No update needed
[2026-06-27 05:28:02,512.512 INFO    ] Checking for camera pi updates...
[2026-06-27 05:28:02,537.537 INFO    ] 200
[2026-06-27 05:28:02,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:28:02,564.564 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:28:02,587.587 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:28:02,589.589 INFO    ] No camera update needed
[2026-06-27 05:28:02,590.590 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:28:02,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:28:02,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:28:02,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:28:04,638.638 INFO    ] ================================================
[2026-06-27 05:28:04,653.653 INFO    ] Launching Daemon at Sat Jun 27 05:28:04 IST 2026
[2026-06-27 05:28:04,664.664 INFO    ] ================================================
[2026-06-27 05:28:05,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:28:05
[2026-06-27 05:28:05,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:28:05,508.508 INFO    ] Initializing speech engine...
[2026-06-27 05:28:05,511.511 INFO    ] 2026-06-27 05:28:05
[2026-06-27 05:28:05,719.719 INFO    ] 2026-06-27 05:28:05
[2026-06-27 05:28:05,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:28:05,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:28:05,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:28:06,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:28:06,153.153 INFO    ] time= 27/06/2026 05:28:06
[2026-06-27 05:28:06,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:28:06,208.208 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:28:06,301.301 INFO    ] No existing commands found in stream
[2026-06-27 05:28:11,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:28:11,315.315 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-27 05:28:14,964.964 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:28:14,965.965 INFO    ] Checking for system updates...
[2026-06-27 05:28:14,988.988 INFO    ] 200
[2026-06-27 05:28:14,990.990 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:28:15,022.022 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:28:15,023.023 INFO    ] No update needed
[2026-06-27 05:28:15,025.025 INFO    ] Checking for camera pi updates...
[2026-06-27 05:28:15,047.047 INFO    ] 200
[2026-06-27 05:28:15,048.048 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:28:15,073.073 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:28:15,117.117 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:28:15,119.119 INFO    ] No camera update needed
[2026-06-27 05:28:15,120.120 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:28:15,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:28:15,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:28:15,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:28:17,168.168 INFO    ] ================================================
[2026-06-27 05:28:17,183.183 INFO    ] Launching Daemon at Sat Jun 27 05:28:17 IST 2026
[2026-06-27 05:28:17,195.195 INFO    ] ================================================
[2026-06-27 05:28:17,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:28:17
[2026-06-27 05:28:17,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:28:18,067.067 INFO    ] Initializing speech engine...
[2026-06-27 05:28:18,073.073 INFO    ] 2026-06-27 05:28:18
[2026-06-27 05:28:18,280.280 INFO    ] 2026-06-27 05:28:18
[2026-06-27 05:28:18,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:28:18,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:28:18,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:28:18,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:28:18,723.723 INFO    ] time= 27/06/2026 05:28:18
[2026-06-27 05:28:18,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:28:18,731.731 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:28:18,796.796 INFO    ] No existing commands found in stream
[2026-06-27 05:28:23,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:28:23,810.810 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-27 05:28:26,361.361 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:28:26,362.362 INFO    ] Checking for system updates...
[2026-06-27 05:28:26,383.383 INFO    ] 200
[2026-06-27 05:28:26,384.384 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:28:26,415.415 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:28:26,416.416 INFO    ] No update needed
[2026-06-27 05:28:26,417.417 INFO    ] Checking for camera pi updates...
[2026-06-27 05:28:26,437.437 INFO    ] 200
[2026-06-27 05:28:26,438.438 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:28:26,461.461 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:28:26,496.496 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:28:26,497.497 INFO    ] No camera update needed
[2026-06-27 05:28:26,499.499 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:28:26,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:28:26,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:28:26,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:28:28,545.545 INFO    ] ================================================
[2026-06-27 05:28:28,562.562 INFO    ] Launching Daemon at Sat Jun 27 05:28:28 IST 2026
[2026-06-27 05:28:28,573.573 INFO    ] ================================================
[2026-06-27 05:28:28,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:28:28
[2026-06-27 05:28:29,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:28:29,412.412 INFO    ] Initializing speech engine...
[2026-06-27 05:28:29,416.416 INFO    ] 2026-06-27 05:28:29
[2026-06-27 05:28:29,622.622 INFO    ] 2026-06-27 05:28:29
[2026-06-27 05:28:29,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:28:29,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:28:29,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:28:30,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:28:30,065.065 INFO    ] time= 27/06/2026 05:28:30
[2026-06-27 05:28:30,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:28:30,074.074 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:28:30,140.140 INFO    ] No existing commands found in stream
[2026-06-27 05:28:35,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:28:35,158.158 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-27 05:28:36,861.861 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 05:28:36,862.862 INFO    ] Checking for system updates...
[2026-06-27 05:28:36,883.883 INFO    ] 200
[2026-06-27 05:28:36,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:28:36,914.914 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:28:36,916.916 INFO    ] No update needed
[2026-06-27 05:28:36,917.917 INFO    ] Checking for camera pi updates...
[2026-06-27 05:28:36,938.938 INFO    ] 200
[2026-06-27 05:28:36,939.939 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:28:36,963.963 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:28:37,005.005 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:28:37,006.006 INFO    ] No camera update needed
[2026-06-27 05:28:37,007.007 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:28:37,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:28:37,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:28:37,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:28:39,056.056 INFO    ] ================================================
[2026-06-27 05:28:39,071.071 INFO    ] Launching Daemon at Sat Jun 27 05:28:39 IST 2026
[2026-06-27 05:28:39,083.083 INFO    ] ================================================
[2026-06-27 05:28:39,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:28:39
[2026-06-27 05:28:39,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:28:39,945.945 INFO    ] Initializing speech engine...
[2026-06-27 05:28:39,953.953 INFO    ] 2026-06-27 05:28:39
[2026-06-27 05:28:40,174.174 INFO    ] 2026-06-27 05:28:40
[2026-06-27 05:28:40,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:28:40,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:28:40,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:28:40,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:28:40,618.618 INFO    ] time= 27/06/2026 05:28:40
[2026-06-27 05:28:40,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:28:40,626.626 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:28:40,693.693 INFO    ] No existing commands found in stream
[2026-06-27 05:28:45,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:28:45,706.706 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-27 05:28:49,166.166 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 05:28:49,167.167 INFO    ] Checking for system updates...
[2026-06-27 05:28:49,188.188 INFO    ] 200
[2026-06-27 05:28:49,190.190 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:28:49,225.225 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:28:49,226.226 INFO    ] No update needed
[2026-06-27 05:28:49,227.227 INFO    ] Checking for camera pi updates...
[2026-06-27 05:28:49,247.247 INFO    ] 200
[2026-06-27 05:28:49,248.248 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:28:49,274.274 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:28:49,311.311 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:28:49,313.313 INFO    ] No camera update needed
[2026-06-27 05:28:49,314.314 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:28:49,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:28:49,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:28:49,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:28:51,360.360 INFO    ] ================================================
[2026-06-27 05:28:51,376.376 INFO    ] Launching Daemon at Sat Jun 27 05:28:51 IST 2026
[2026-06-27 05:28:51,387.387 INFO    ] ================================================
[2026-06-27 05:28:51,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:28:51
[2026-06-27 05:28:52,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:28:52,168.168 INFO    ] Initializing speech engine...
[2026-06-27 05:28:52,176.176 INFO    ] 2026-06-27 05:28:52
[2026-06-27 05:28:52,387.387 INFO    ] 2026-06-27 05:28:52
[2026-06-27 05:28:52,416.416 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:28:52,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:28:52,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:28:52,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:28:52,805.805 INFO    ] time= 27/06/2026 05:28:52
[2026-06-27 05:28:52,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:28:52,834.834 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:28:52,902.902 INFO    ] No existing commands found in stream
[2026-06-27 05:28:57,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:28:57,914.914 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-27 05:28:59,063.063 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:28:59,064.064 INFO    ] Checking for system updates...
[2026-06-27 05:28:59,085.085 INFO    ] 200
[2026-06-27 05:28:59,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:28:59,119.119 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:28:59,120.120 INFO    ] No update needed
[2026-06-27 05:28:59,122.122 INFO    ] Checking for camera pi updates...
[2026-06-27 05:28:59,141.141 INFO    ] 200
[2026-06-27 05:28:59,142.142 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:28:59,167.167 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:28:59,205.205 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:28:59,206.206 INFO    ] No camera update needed
[2026-06-27 05:28:59,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:28:59,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:28:59,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:28:59,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:29:01,255.255 INFO    ] ================================================
[2026-06-27 05:29:01,271.271 INFO    ] Launching Daemon at Sat Jun 27 05:29:01 IST 2026
[2026-06-27 05:29:01,282.282 INFO    ] ================================================
[2026-06-27 05:29:01,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:29:01
[2026-06-27 05:29:01,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:29:02,229.229 INFO    ] Initializing speech engine...
[2026-06-27 05:29:02,236.236 INFO    ] 2026-06-27 05:29:02
[2026-06-27 05:29:02,493.493 INFO    ] 2026-06-27 05:29:02
[2026-06-27 05:29:02,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:29:02,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:29:02,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:29:02,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:29:02,993.993 INFO    ] time= 27/06/2026 05:29:02
[2026-06-27 05:29:03,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:29:03,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:29:03,092.092 INFO    ] No existing commands found in stream
[2026-06-27 05:29:08,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:29:08,104.104 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-27 05:29:11,547.547 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 05:29:11,548.548 INFO    ] Checking for system updates...
[2026-06-27 05:29:11,570.570 INFO    ] 200
[2026-06-27 05:29:11,571.571 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:29:11,604.604 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:29:11,605.605 INFO    ] No update needed
[2026-06-27 05:29:11,606.606 INFO    ] Checking for camera pi updates...
[2026-06-27 05:29:11,626.626 INFO    ] 200
[2026-06-27 05:29:11,627.627 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:29:11,652.652 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:29:11,697.697 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:29:11,698.698 INFO    ] No camera update needed
[2026-06-27 05:29:11,700.700 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:29:11,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:29:11,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:29:11,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:29:13,747.747 INFO    ] ================================================
[2026-06-27 05:29:13,762.762 INFO    ] Launching Daemon at Sat Jun 27 05:29:13 IST 2026
[2026-06-27 05:29:13,774.774 INFO    ] ================================================
[2026-06-27 05:29:14,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:29:14
[2026-06-27 05:29:14,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:29:14,558.558 INFO    ] Initializing speech engine...
[2026-06-27 05:29:14,564.564 INFO    ] 2026-06-27 05:29:14
[2026-06-27 05:29:14,766.766 INFO    ] 2026-06-27 05:29:14
[2026-06-27 05:29:14,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:29:14,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:29:14,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:29:15,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:29:15,179.179 INFO    ] time= 27/06/2026 05:29:15
[2026-06-27 05:29:15,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:29:15,218.218 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:29:15,286.286 INFO    ] No existing commands found in stream
[2026-06-27 05:29:20,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:29:20,299.299 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-27 05:29:21,961.961 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 05:29:21,962.962 INFO    ] Checking for system updates...
[2026-06-27 05:29:21,984.984 INFO    ] 200
[2026-06-27 05:29:21,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:29:22,017.017 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:29:22,018.018 INFO    ] No update needed
[2026-06-27 05:29:22,019.019 INFO    ] Checking for camera pi updates...
[2026-06-27 05:29:22,038.038 INFO    ] 200
[2026-06-27 05:29:22,040.040 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:29:22,063.063 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:29:22,202.202 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:29:22,203.203 INFO    ] No camera update needed
[2026-06-27 05:29:22,204.204 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:29:22,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:29:22,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:29:22,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:29:24,249.249 INFO    ] ================================================
[2026-06-27 05:29:24,265.265 INFO    ] Launching Daemon at Sat Jun 27 05:29:24 IST 2026
[2026-06-27 05:29:24,276.276 INFO    ] ================================================
[2026-06-27 05:29:24,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:29:24
[2026-06-27 05:29:24,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:29:25,147.147 INFO    ] Initializing speech engine...
[2026-06-27 05:29:25,152.152 INFO    ] 2026-06-27 05:29:25
[2026-06-27 05:29:25,359.359 INFO    ] 2026-06-27 05:29:25
[2026-06-27 05:29:25,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:29:25,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:29:25,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:29:25,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:29:25,779.779 INFO    ] time= 27/06/2026 05:29:25
[2026-06-27 05:29:25,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:29:25,809.809 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:29:25,877.877 INFO    ] No existing commands found in stream
[2026-06-27 05:29:30,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:29:30,889.889 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-27 05:29:31,548.548 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 05:29:31,550.550 INFO    ] Checking for system updates...
[2026-06-27 05:29:31,572.572 INFO    ] 200
[2026-06-27 05:29:31,574.574 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:29:31,606.606 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:29:31,608.608 INFO    ] No update needed
[2026-06-27 05:29:31,609.609 INFO    ] Checking for camera pi updates...
[2026-06-27 05:29:31,628.628 INFO    ] 200
[2026-06-27 05:29:31,630.630 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:29:31,653.653 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:29:31,691.691 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:29:31,693.693 INFO    ] No camera update needed
[2026-06-27 05:29:31,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:29:31,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:29:31,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:29:31,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:29:33,732.732 INFO    ] ================================================
[2026-06-27 05:29:33,748.748 INFO    ] Launching Daemon at Sat Jun 27 05:29:33 IST 2026
[2026-06-27 05:29:33,759.759 INFO    ] ================================================
[2026-06-27 05:29:34,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:29:34
[2026-06-27 05:29:34,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:29:34,596.596 INFO    ] Initializing speech engine...
[2026-06-27 05:29:34,602.602 INFO    ] 2026-06-27 05:29:34
[2026-06-27 05:29:34,810.810 INFO    ] 2026-06-27 05:29:34
[2026-06-27 05:29:34,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:29:35,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:29:35,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:29:35,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:29:35,232.232 INFO    ] time= 27/06/2026 05:29:35
[2026-06-27 05:29:35,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:29:35,261.261 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:29:35,327.327 INFO    ] No existing commands found in stream
[2026-06-27 05:29:40,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:29:40,341.341 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-27 05:29:42,024.024 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:29:42,026.026 INFO    ] Checking for system updates...
[2026-06-27 05:29:42,049.049 INFO    ] 200
[2026-06-27 05:29:42,050.050 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:29:42,080.080 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:29:42,081.081 INFO    ] No update needed
[2026-06-27 05:29:42,083.083 INFO    ] Checking for camera pi updates...
[2026-06-27 05:29:42,106.106 INFO    ] 200
[2026-06-27 05:29:42,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:29:42,131.131 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:29:42,168.168 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:29:42,169.169 INFO    ] No camera update needed
[2026-06-27 05:29:42,171.171 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:29:42,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:29:42,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:29:42,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:29:44,217.217 INFO    ] ================================================
[2026-06-27 05:29:44,232.232 INFO    ] Launching Daemon at Sat Jun 27 05:29:44 IST 2026
[2026-06-27 05:29:44,243.243 INFO    ] ================================================
[2026-06-27 05:29:44,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:29:44
[2026-06-27 05:29:44,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:29:45,113.113 INFO    ] Initializing speech engine...
[2026-06-27 05:29:45,128.128 INFO    ] 2026-06-27 05:29:45
[2026-06-27 05:29:45,338.338 INFO    ] 2026-06-27 05:29:45
[2026-06-27 05:29:45,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:29:45,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:29:45,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:29:45,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:29:45,771.771 INFO    ] time= 27/06/2026 05:29:45
[2026-06-27 05:29:45,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:29:45,788.788 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:29:45,855.855 INFO    ] No existing commands found in stream
[2026-06-27 05:29:50,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:29:50,872.872 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-27 05:29:53,724.724 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 05:29:53,725.725 INFO    ] Checking for system updates...
[2026-06-27 05:29:53,747.747 INFO    ] 200
[2026-06-27 05:29:53,748.748 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:29:53,779.779 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:29:53,780.780 INFO    ] No update needed
[2026-06-27 05:29:53,782.782 INFO    ] Checking for camera pi updates...
[2026-06-27 05:29:53,803.803 INFO    ] 200
[2026-06-27 05:29:53,805.805 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:29:53,828.828 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:29:53,856.856 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:29:53,857.857 INFO    ] No camera update needed
[2026-06-27 05:29:53,858.858 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:29:53,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:29:53,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:29:53,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:29:55,904.904 INFO    ] ================================================
[2026-06-27 05:29:55,919.919 INFO    ] Launching Daemon at Sat Jun 27 05:29:55 IST 2026
[2026-06-27 05:29:55,930.930 INFO    ] ================================================
[2026-06-27 05:29:56,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:29:56
[2026-06-27 05:29:56,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:29:56,767.767 INFO    ] Initializing speech engine...
[2026-06-27 05:29:56,778.778 INFO    ] 2026-06-27 05:29:56
[2026-06-27 05:29:56,986.986 INFO    ] 2026-06-27 05:29:56
[2026-06-27 05:29:57,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:29:57,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:29:57,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:29:57,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:29:57,421.421 INFO    ] time= 27/06/2026 05:29:57
[2026-06-27 05:29:57,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:29:57,479.479 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:29:57,579.579 INFO    ] No existing commands found in stream
[2026-06-27 05:30:02,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:30:02,595.595 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-27 05:30:08,773.773 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:30:08,775.775 INFO    ] Checking for system updates...
[2026-06-27 05:30:08,797.797 INFO    ] 200
[2026-06-27 05:30:08,799.799 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:30:08,833.833 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:30:08,834.834 INFO    ] No update needed
[2026-06-27 05:30:08,836.836 INFO    ] Checking for camera pi updates...
[2026-06-27 05:30:08,857.857 INFO    ] 200
[2026-06-27 05:30:08,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:30:08,884.884 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:30:08,913.913 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:30:08,915.915 INFO    ] No camera update needed
[2026-06-27 05:30:08,916.916 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:30:08,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:30:08,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:30:08,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:30:10,966.966 INFO    ] ================================================
[2026-06-27 05:30:10,982.982 INFO    ] Launching Daemon at Sat Jun 27 05:30:10 IST 2026
[2026-06-27 05:30:10,993.993 INFO    ] ================================================
[2026-06-27 05:30:11,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:30:11
[2026-06-27 05:30:11,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:30:11,879.879 INFO    ] Initializing speech engine...
[2026-06-27 05:30:11,882.882 INFO    ] 2026-06-27 05:30:11
[2026-06-27 05:30:12,092.092 INFO    ] 2026-06-27 05:30:12
[2026-06-27 05:30:12,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:30:12,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:30:12,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:30:12,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:30:12,497.497 INFO    ] time= 27/06/2026 05:30:12
[2026-06-27 05:30:12,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:30:12,547.547 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:30:12,612.612 INFO    ] No existing commands found in stream
[2026-06-27 05:30:17,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:30:17,627.627 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-27 05:30:18,520.520 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:30:18,521.521 INFO    ] Checking for system updates...
[2026-06-27 05:30:18,543.543 INFO    ] 200
[2026-06-27 05:30:18,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:30:18,575.575 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:30:18,577.577 INFO    ] No update needed
[2026-06-27 05:30:18,578.578 INFO    ] Checking for camera pi updates...
[2026-06-27 05:30:18,599.599 INFO    ] 200
[2026-06-27 05:30:18,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:30:18,624.624 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:30:18,665.665 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:30:18,667.667 INFO    ] No camera update needed
[2026-06-27 05:30:18,668.668 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:30:18,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:30:18,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:30:18,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:30:20,715.715 INFO    ] ================================================
[2026-06-27 05:30:20,731.731 INFO    ] Launching Daemon at Sat Jun 27 05:30:20 IST 2026
[2026-06-27 05:30:20,742.742 INFO    ] ================================================
[2026-06-27 05:30:21,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:30:21
[2026-06-27 05:30:21,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:30:21,552.552 INFO    ] Initializing speech engine...
[2026-06-27 05:30:21,562.562 INFO    ] 2026-06-27 05:30:21
[2026-06-27 05:30:21,768.768 INFO    ] 2026-06-27 05:30:21
[2026-06-27 05:30:21,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:30:21,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:30:21,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:30:22,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:30:22,188.188 INFO    ] time= 27/06/2026 05:30:22
[2026-06-27 05:30:22,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:30:22,217.217 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:30:22,308.308 INFO    ] No existing commands found in stream
[2026-06-27 05:30:27,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:30:27,325.325 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-27 05:30:29,332.332 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 05:30:29,334.334 INFO    ] Checking for system updates...
[2026-06-27 05:30:29,356.356 INFO    ] 200
[2026-06-27 05:30:29,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:30:29,388.388 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:30:29,389.389 INFO    ] No update needed
[2026-06-27 05:30:29,390.390 INFO    ] Checking for camera pi updates...
[2026-06-27 05:30:29,410.410 INFO    ] 200
[2026-06-27 05:30:29,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:30:29,437.437 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:30:29,474.474 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:30:29,475.475 INFO    ] No camera update needed
[2026-06-27 05:30:29,477.477 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:30:29,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:30:29,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:30:29,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:30:31,522.522 INFO    ] ================================================
[2026-06-27 05:30:31,537.537 INFO    ] Launching Daemon at Sat Jun 27 05:30:31 IST 2026
[2026-06-27 05:30:31,547.547 INFO    ] ================================================
[2026-06-27 05:30:31,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:30:31
[2026-06-27 05:30:32,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:30:32,496.496 INFO    ] Initializing speech engine...
[2026-06-27 05:30:32,502.502 INFO    ] 2026-06-27 05:30:32
[2026-06-27 05:30:32,710.710 INFO    ] 2026-06-27 05:30:32
[2026-06-27 05:30:32,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:30:32,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:30:32,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:30:33,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:30:33,131.131 INFO    ] time= 27/06/2026 05:30:33
[2026-06-27 05:30:33,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:30:33,160.160 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:30:33,227.227 INFO    ] No existing commands found in stream
[2026-06-27 05:30:38,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:30:38,242.242 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-27 05:30:39,352.352 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 05:30:39,354.354 INFO    ] Checking for system updates...
[2026-06-27 05:30:39,375.375 INFO    ] 200
[2026-06-27 05:30:39,376.376 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:30:39,407.407 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:30:39,408.408 INFO    ] No update needed
[2026-06-27 05:30:39,409.409 INFO    ] Checking for camera pi updates...
[2026-06-27 05:30:39,429.429 INFO    ] 200
[2026-06-27 05:30:39,430.430 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:30:39,455.455 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:30:39,492.492 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:30:39,494.494 INFO    ] No camera update needed
[2026-06-27 05:30:39,495.495 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:30:39,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:30:39,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:30:39,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:30:41,542.542 INFO    ] ================================================
[2026-06-27 05:30:41,557.557 INFO    ] Launching Daemon at Sat Jun 27 05:30:41 IST 2026
[2026-06-27 05:30:41,569.569 INFO    ] ================================================
[2026-06-27 05:30:41,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:30:41
[2026-06-27 05:30:42,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:30:42,344.344 INFO    ] Initializing speech engine...
[2026-06-27 05:30:42,357.357 INFO    ] 2026-06-27 05:30:42
[2026-06-27 05:30:42,567.567 INFO    ] 2026-06-27 05:30:42
[2026-06-27 05:30:42,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:30:42,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:30:42,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:30:42,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:30:42,982.982 INFO    ] time= 27/06/2026 05:30:42
[2026-06-27 05:30:43,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:30:43,022.022 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:30:43,090.090 INFO    ] No existing commands found in stream
[2026-06-27 05:30:48,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:30:48,099.099 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-27 05:30:51,226.226 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 05:30:51,227.227 INFO    ] Checking for system updates...
[2026-06-27 05:30:51,248.248 INFO    ] 200
[2026-06-27 05:30:51,249.249 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:30:51,284.284 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:30:51,285.285 INFO    ] No update needed
[2026-06-27 05:30:51,286.286 INFO    ] Checking for camera pi updates...
[2026-06-27 05:30:51,306.306 INFO    ] 200
[2026-06-27 05:30:51,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:30:51,333.333 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:30:51,376.376 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:30:51,377.377 INFO    ] No camera update needed
[2026-06-27 05:30:51,379.379 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:30:51,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:30:51,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:30:51,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:30:53,428.428 INFO    ] ================================================
[2026-06-27 05:30:53,442.442 INFO    ] Launching Daemon at Sat Jun 27 05:30:53 IST 2026
[2026-06-27 05:30:53,453.453 INFO    ] ================================================
[2026-06-27 05:30:53,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:30:53
[2026-06-27 05:30:54,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:30:54,255.255 INFO    ] Initializing speech engine...
[2026-06-27 05:30:54,260.260 INFO    ] 2026-06-27 05:30:54
[2026-06-27 05:30:54,483.483 INFO    ] 2026-06-27 05:30:54
[2026-06-27 05:30:54,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:30:54,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:30:54,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:30:54,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:30:54,925.925 INFO    ] time= 27/06/2026 05:30:54
[2026-06-27 05:30:54,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:30:54,977.977 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:30:55,053.053 INFO    ] No existing commands found in stream
[2026-06-27 05:31:00,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:31:00,067.067 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-27 05:31:02,647.647 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:31:02,649.649 INFO    ] Checking for system updates...
[2026-06-27 05:31:02,676.676 INFO    ] 200
[2026-06-27 05:31:02,678.678 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:31:02,719.719 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:31:02,720.720 INFO    ] No update needed
[2026-06-27 05:31:02,722.722 INFO    ] Checking for camera pi updates...
[2026-06-27 05:31:02,748.748 INFO    ] 200
[2026-06-27 05:31:02,750.750 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:31:02,790.790 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:31:02,815.815 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:31:02,817.817 INFO    ] No camera update needed
[2026-06-27 05:31:02,820.820 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:31:02,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:31:02,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:31:02,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:31:04,876.876 INFO    ] ================================================
[2026-06-27 05:31:04,891.891 INFO    ] Launching Daemon at Sat Jun 27 05:31:04 IST 2026
[2026-06-27 05:31:04,902.902 INFO    ] ================================================
[2026-06-27 05:31:05,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:31:05
[2026-06-27 05:31:05,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:31:05,722.722 INFO    ] Initializing speech engine...
[2026-06-27 05:31:05,732.732 INFO    ] 2026-06-27 05:31:05
[2026-06-27 05:31:05,936.936 INFO    ] 2026-06-27 05:31:05
[2026-06-27 05:31:05,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:31:06,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:31:06,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:31:06,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:31:06,353.353 INFO    ] time= 27/06/2026 05:31:06
[2026-06-27 05:31:06,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:31:06,396.396 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:31:06,462.462 INFO    ] No existing commands found in stream
[2026-06-27 05:31:11,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:31:11,476.476 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-27 05:31:14,443.443 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 05:31:14,445.445 INFO    ] Checking for system updates...
[2026-06-27 05:31:14,467.467 INFO    ] 200
[2026-06-27 05:31:14,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:31:14,499.499 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:31:14,501.501 INFO    ] No update needed
[2026-06-27 05:31:14,502.502 INFO    ] Checking for camera pi updates...
[2026-06-27 05:31:14,522.522 INFO    ] 200
[2026-06-27 05:31:14,523.523 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:31:14,552.552 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:31:14,575.575 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:31:14,576.576 INFO    ] No camera update needed
[2026-06-27 05:31:14,578.578 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:31:14,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:31:14,582.582 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:31:14,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:31:16,623.623 INFO    ] ================================================
[2026-06-27 05:31:16,639.639 INFO    ] Launching Daemon at Sat Jun 27 05:31:16 IST 2026
[2026-06-27 05:31:16,650.650 INFO    ] ================================================
[2026-06-27 05:31:17,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:31:17
[2026-06-27 05:31:17,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:31:17,474.474 INFO    ] Initializing speech engine...
[2026-06-27 05:31:17,479.479 INFO    ] 2026-06-27 05:31:17
[2026-06-27 05:31:17,681.681 INFO    ] 2026-06-27 05:31:17
[2026-06-27 05:31:17,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:31:17,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:31:17,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:31:18,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:31:18,101.101 INFO    ] time= 27/06/2026 05:31:18
[2026-06-27 05:31:18,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:31:18,131.131 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:31:18,221.221 INFO    ] No existing commands found in stream
[2026-06-27 05:31:23,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:31:23,232.232 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-27 05:31:26,563.563 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:31:26,565.565 INFO    ] Checking for system updates...
[2026-06-27 05:31:26,589.589 INFO    ] 200
[2026-06-27 05:31:26,590.590 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:31:26,623.623 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:31:26,624.624 INFO    ] No update needed
[2026-06-27 05:31:26,626.626 INFO    ] Checking for camera pi updates...
[2026-06-27 05:31:26,646.646 INFO    ] 200
[2026-06-27 05:31:26,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:31:26,672.672 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:31:26,812.812 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:31:26,813.813 INFO    ] No camera update needed
[2026-06-27 05:31:26,815.815 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:31:26,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:31:26,819.819 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:31:26,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:31:28,847.847 INFO    ] ================================================
[2026-06-27 05:31:28,855.855 INFO    ] Launching Daemon at Sat Jun 27 05:31:28 IST 2026
[2026-06-27 05:31:28,862.862 INFO    ] ================================================
[2026-06-27 05:31:29,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:31:29
[2026-06-27 05:31:29,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:31:29,708.708 INFO    ] Initializing speech engine...
[2026-06-27 05:31:29,721.721 INFO    ] 2026-06-27 05:31:29
[2026-06-27 05:31:29,950.950 INFO    ] 2026-06-27 05:31:29
[2026-06-27 05:31:29,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:31:30,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:31:30,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:31:30,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:31:30,320.320 INFO    ] time= 27/06/2026 05:31:30
[2026-06-27 05:31:30,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:31:30,401.401 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:31:30,498.498 INFO    ] No existing commands found in stream
[2026-06-27 05:31:35,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:31:35,511.511 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-27 05:31:39,073.073 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 05:31:39,074.074 INFO    ] Checking for system updates...
[2026-06-27 05:31:39,095.095 INFO    ] 200
[2026-06-27 05:31:39,096.096 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:31:39,127.127 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:31:39,128.128 INFO    ] No update needed
[2026-06-27 05:31:39,129.129 INFO    ] Checking for camera pi updates...
[2026-06-27 05:31:39,150.150 INFO    ] 200
[2026-06-27 05:31:39,152.152 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:31:39,176.176 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:31:39,219.219 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:31:39,220.220 INFO    ] No camera update needed
[2026-06-27 05:31:39,221.221 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:31:39,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:31:39,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:31:39,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:31:41,269.269 INFO    ] ================================================
[2026-06-27 05:31:41,285.285 INFO    ] Launching Daemon at Sat Jun 27 05:31:41 IST 2026
[2026-06-27 05:31:41,297.297 INFO    ] ================================================
[2026-06-27 05:31:41,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:31:41
[2026-06-27 05:31:41,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:31:42,089.089 INFO    ] Initializing speech engine...
[2026-06-27 05:31:42,099.099 INFO    ] 2026-06-27 05:31:42
[2026-06-27 05:31:42,305.305 INFO    ] 2026-06-27 05:31:42
[2026-06-27 05:31:42,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:31:42,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:31:42,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:31:42,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:31:42,718.718 INFO    ] time= 27/06/2026 05:31:42
[2026-06-27 05:31:42,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:31:42,755.755 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:31:42,846.846 INFO    ] No existing commands found in stream
[2026-06-27 05:31:47,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:31:47,858.858 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-27 05:31:49,080.080 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:31:49,082.082 INFO    ] Checking for system updates...
[2026-06-27 05:31:49,107.107 INFO    ] 200
[2026-06-27 05:31:49,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:31:49,139.139 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:31:49,141.141 INFO    ] No update needed
[2026-06-27 05:31:49,142.142 INFO    ] Checking for camera pi updates...
[2026-06-27 05:31:49,162.162 INFO    ] 200
[2026-06-27 05:31:49,164.164 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:31:49,189.189 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:31:49,227.227 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:31:49,229.229 INFO    ] No camera update needed
[2026-06-27 05:31:49,230.230 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:31:49,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:31:49,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:31:49,238.238 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:31:51,281.281 INFO    ] ================================================
[2026-06-27 05:31:51,296.296 INFO    ] Launching Daemon at Sat Jun 27 05:31:51 IST 2026
[2026-06-27 05:31:51,308.308 INFO    ] ================================================
[2026-06-27 05:31:51,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:31:51
[2026-06-27 05:31:51,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:31:52,089.089 INFO    ] Initializing speech engine...
[2026-06-27 05:31:52,092.092 INFO    ] 2026-06-27 05:31:52
[2026-06-27 05:31:52,308.308 INFO    ] 2026-06-27 05:31:52
[2026-06-27 05:31:52,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:31:52,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:31:52,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:31:52,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:31:52,765.765 INFO    ] time= 27/06/2026 05:31:52
[2026-06-27 05:31:52,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:31:52,805.805 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:31:52,880.880 INFO    ] No existing commands found in stream
[2026-06-27 05:31:57,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:31:57,894.894 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-27 05:31:59,160.160 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 05:31:59,162.162 INFO    ] Checking for system updates...
[2026-06-27 05:31:59,184.184 INFO    ] 200
[2026-06-27 05:31:59,185.185 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:31:59,218.218 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:31:59,219.219 INFO    ] No update needed
[2026-06-27 05:31:59,221.221 INFO    ] Checking for camera pi updates...
[2026-06-27 05:31:59,241.241 INFO    ] 200
[2026-06-27 05:31:59,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:31:59,266.266 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:31:59,301.301 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:31:59,302.302 INFO    ] No camera update needed
[2026-06-27 05:31:59,304.304 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:31:59,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:31:59,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:31:59,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:32:01,350.350 INFO    ] ================================================
[2026-06-27 05:32:01,367.367 INFO    ] Launching Daemon at Sat Jun 27 05:32:01 IST 2026
[2026-06-27 05:32:01,379.379 INFO    ] ================================================
[2026-06-27 05:32:01,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:32:01
[2026-06-27 05:32:02,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:32:02,480.480 INFO    ] Initializing speech engine...
[2026-06-27 05:32:02,485.485 INFO    ] 2026-06-27 05:32:02
[2026-06-27 05:32:02,698.698 INFO    ] 2026-06-27 05:32:02
[2026-06-27 05:32:02,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:32:02,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:32:02,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:32:03,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:32:03,115.115 INFO    ] time= 27/06/2026 05:32:03
[2026-06-27 05:32:03,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:32:03,155.155 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:32:03,221.221 INFO    ] No existing commands found in stream
[2026-06-27 05:32:08,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:32:08,235.235 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-27 05:32:10,679.679 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 05:32:10,680.680 INFO    ] Checking for system updates...
[2026-06-27 05:32:10,702.702 INFO    ] 200
[2026-06-27 05:32:10,703.703 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:32:10,733.733 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:32:10,735.735 INFO    ] No update needed
[2026-06-27 05:32:10,736.736 INFO    ] Checking for camera pi updates...
[2026-06-27 05:32:10,757.757 INFO    ] 200
[2026-06-27 05:32:10,758.758 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:32:10,781.781 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:32:10,819.819 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:32:10,821.821 INFO    ] No camera update needed
[2026-06-27 05:32:10,822.822 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:32:10,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:32:10,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:32:10,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:32:12,868.868 INFO    ] ================================================
[2026-06-27 05:32:12,884.884 INFO    ] Launching Daemon at Sat Jun 27 05:32:12 IST 2026
[2026-06-27 05:32:12,895.895 INFO    ] ================================================
[2026-06-27 05:32:13,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:32:13
[2026-06-27 05:32:13,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:32:13,695.695 INFO    ] Initializing speech engine...
[2026-06-27 05:32:13,699.699 INFO    ] 2026-06-27 05:32:13
[2026-06-27 05:32:13,905.905 INFO    ] 2026-06-27 05:32:13
[2026-06-27 05:32:13,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:32:14,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:32:14,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:32:14,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:32:14,325.325 INFO    ] time= 27/06/2026 05:32:14
[2026-06-27 05:32:14,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:32:14,355.355 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:32:14,420.420 INFO    ] No existing commands found in stream
[2026-06-27 05:32:19,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:32:19,434.434 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-27 05:32:20,623.623 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 05:32:20,624.624 INFO    ] Checking for system updates...
[2026-06-27 05:32:20,647.647 INFO    ] 200
[2026-06-27 05:32:20,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:32:20,683.683 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:32:20,685.685 INFO    ] No update needed
[2026-06-27 05:32:20,687.687 INFO    ] Checking for camera pi updates...
[2026-06-27 05:32:20,711.711 INFO    ] 200
[2026-06-27 05:32:20,713.713 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:32:20,738.738 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:32:20,777.777 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:32:20,778.778 INFO    ] No camera update needed
[2026-06-27 05:32:20,780.780 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:32:20,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:32:20,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:32:20,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:32:22,827.827 INFO    ] ================================================
[2026-06-27 05:32:22,843.843 INFO    ] Launching Daemon at Sat Jun 27 05:32:22 IST 2026
[2026-06-27 05:32:22,854.854 INFO    ] ================================================
[2026-06-27 05:32:23,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:32:23
[2026-06-27 05:32:23,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:32:23,671.671 INFO    ] Initializing speech engine...
[2026-06-27 05:32:23,676.676 INFO    ] 2026-06-27 05:32:23
[2026-06-27 05:32:23,883.883 INFO    ] 2026-06-27 05:32:23
[2026-06-27 05:32:23,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:32:24,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:32:24,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:32:24,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:32:24,307.307 INFO    ] time= 27/06/2026 05:32:24
[2026-06-27 05:32:24,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:32:24,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:32:24,442.442 INFO    ] No existing commands found in stream
[2026-06-27 05:32:29,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:32:29,455.455 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-27 05:32:32,360.360 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 05:32:32,362.362 INFO    ] Checking for system updates...
[2026-06-27 05:32:32,383.383 INFO    ] 200
[2026-06-27 05:32:32,384.384 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:32:32,415.415 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:32:32,417.417 INFO    ] No update needed
[2026-06-27 05:32:32,418.418 INFO    ] Checking for camera pi updates...
[2026-06-27 05:32:32,438.438 INFO    ] 200
[2026-06-27 05:32:32,439.439 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:32:32,465.465 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:32:32,490.490 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:32:32,492.492 INFO    ] No camera update needed
[2026-06-27 05:32:32,493.493 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:32:32,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:32:32,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:32:32,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:32:34,542.542 INFO    ] ================================================
[2026-06-27 05:32:34,558.558 INFO    ] Launching Daemon at Sat Jun 27 05:32:34 IST 2026
[2026-06-27 05:32:34,570.570 INFO    ] ================================================
[2026-06-27 05:32:34,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:32:34
[2026-06-27 05:32:35,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:32:35,393.393 INFO    ] Initializing speech engine...
[2026-06-27 05:32:35,397.397 INFO    ] 2026-06-27 05:32:35
[2026-06-27 05:32:35,603.603 INFO    ] 2026-06-27 05:32:35
[2026-06-27 05:32:35,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:32:35,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:32:35,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:32:35,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:32:36,020.020 INFO    ] time= 27/06/2026 05:32:35
[2026-06-27 05:32:36,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:32:36,050.050 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:32:36,116.116 INFO    ] No existing commands found in stream
[2026-06-27 05:32:41,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:32:41,129.129 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-27 05:32:45,403.403 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 05:32:45,404.404 INFO    ] Checking for system updates...
[2026-06-27 05:32:45,425.425 INFO    ] 200
[2026-06-27 05:32:45,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:32:45,459.459 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:32:45,461.461 INFO    ] No update needed
[2026-06-27 05:32:45,462.462 INFO    ] Checking for camera pi updates...
[2026-06-27 05:32:45,481.481 INFO    ] 200
[2026-06-27 05:32:45,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:32:45,506.506 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:32:45,543.543 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:32:45,545.545 INFO    ] No camera update needed
[2026-06-27 05:32:45,546.546 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:32:45,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:32:45,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:32:45,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:32:47,592.592 INFO    ] ================================================
[2026-06-27 05:32:47,608.608 INFO    ] Launching Daemon at Sat Jun 27 05:32:47 IST 2026
[2026-06-27 05:32:47,619.619 INFO    ] ================================================
[2026-06-27 05:32:48,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:32:48
[2026-06-27 05:32:48,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:32:48,497.497 INFO    ] Initializing speech engine...
[2026-06-27 05:32:48,502.502 INFO    ] 2026-06-27 05:32:48
[2026-06-27 05:32:48,712.712 INFO    ] 2026-06-27 05:32:48
[2026-06-27 05:32:48,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:32:48,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:32:48,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:32:49,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:32:49,141.141 INFO    ] time= 27/06/2026 05:32:49
[2026-06-27 05:32:49,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:32:49,170.170 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:32:49,239.239 INFO    ] No existing commands found in stream
[2026-06-27 05:32:54,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:32:54,257.257 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-27 05:32:58,084.084 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 05:32:58,085.085 INFO    ] Checking for system updates...
[2026-06-27 05:32:58,107.107 INFO    ] 200
[2026-06-27 05:32:58,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:32:58,139.139 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:32:58,141.141 INFO    ] No update needed
[2026-06-27 05:32:58,142.142 INFO    ] Checking for camera pi updates...
[2026-06-27 05:32:58,162.162 INFO    ] 200
[2026-06-27 05:32:58,163.163 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:32:58,189.189 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:32:58,224.224 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:32:58,225.225 INFO    ] No camera update needed
[2026-06-27 05:32:58,226.226 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:32:58,228.228 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:32:58,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:32:58,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:33:00,274.274 INFO    ] ================================================
[2026-06-27 05:33:00,290.290 INFO    ] Launching Daemon at Sat Jun 27 05:33:00 IST 2026
[2026-06-27 05:33:00,300.300 INFO    ] ================================================
[2026-06-27 05:33:00,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:33:00
[2026-06-27 05:33:00,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:33:01,103.103 INFO    ] Initializing speech engine...
[2026-06-27 05:33:01,108.108 INFO    ] 2026-06-27 05:33:01
[2026-06-27 05:33:01,315.315 INFO    ] 2026-06-27 05:33:01
[2026-06-27 05:33:01,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:33:01,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:33:01,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:33:01,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:33:01,735.735 INFO    ] time= 27/06/2026 05:33:01
[2026-06-27 05:33:01,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:33:01,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:33:01,804.804 INFO    ] No existing commands found in stream
[2026-06-27 05:33:06,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:33:06,817.817 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-27 05:33:07,925.925 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 05:33:07,927.927 INFO    ] Checking for system updates...
[2026-06-27 05:33:07,948.948 INFO    ] 200
[2026-06-27 05:33:07,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:33:07,980.980 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:33:07,982.982 INFO    ] No update needed
[2026-06-27 05:33:07,983.983 INFO    ] Checking for camera pi updates...
[2026-06-27 05:33:08,004.004 INFO    ] 200
[2026-06-27 05:33:08,006.006 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:33:08,032.032 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:33:08,070.070 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:33:08,071.071 INFO    ] No camera update needed
[2026-06-27 05:33:08,072.072 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:33:08,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:33:08,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:33:08,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:33:10,121.121 INFO    ] ================================================
[2026-06-27 05:33:10,136.136 INFO    ] Launching Daemon at Sat Jun 27 05:33:10 IST 2026
[2026-06-27 05:33:10,146.146 INFO    ] ================================================
[2026-06-27 05:33:10,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:33:10
[2026-06-27 05:33:10,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:33:10,962.962 INFO    ] Initializing speech engine...
[2026-06-27 05:33:10,968.968 INFO    ] 2026-06-27 05:33:10
[2026-06-27 05:33:11,176.176 INFO    ] 2026-06-27 05:33:11
[2026-06-27 05:33:11,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:33:11,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:33:11,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:33:11,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:33:11,615.615 INFO    ] time= 27/06/2026 05:33:11
[2026-06-27 05:33:11,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:33:11,626.626 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:33:11,693.693 INFO    ] No existing commands found in stream
[2026-06-27 05:33:16,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:33:16,706.706 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-27 05:33:17,392.392 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 05:33:17,393.393 INFO    ] Checking for system updates...
[2026-06-27 05:33:17,416.416 INFO    ] 200
[2026-06-27 05:33:17,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:33:17,452.452 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:33:17,454.454 INFO    ] No update needed
[2026-06-27 05:33:17,455.455 INFO    ] Checking for camera pi updates...
[2026-06-27 05:33:17,475.475 INFO    ] 200
[2026-06-27 05:33:17,476.476 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:33:17,500.500 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:33:17,538.538 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:33:17,540.540 INFO    ] No camera update needed
[2026-06-27 05:33:17,541.541 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:33:17,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:33:17,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:33:17,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:33:19,586.586 INFO    ] ================================================
[2026-06-27 05:33:19,602.602 INFO    ] Launching Daemon at Sat Jun 27 05:33:19 IST 2026
[2026-06-27 05:33:19,613.613 INFO    ] ================================================
[2026-06-27 05:33:19,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:33:19
[2026-06-27 05:33:20,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:33:20,419.419 INFO    ] Initializing speech engine...
[2026-06-27 05:33:20,430.430 INFO    ] 2026-06-27 05:33:20
[2026-06-27 05:33:20,636.636 INFO    ] 2026-06-27 05:33:20
[2026-06-27 05:33:20,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:33:20,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:33:20,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:33:20,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:33:21,041.041 INFO    ] time= 27/06/2026 05:33:20
[2026-06-27 05:33:21,075.075 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:33:21,081.081 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:33:21,176.176 INFO    ] No existing commands found in stream
[2026-06-27 05:33:26,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:33:26,187.187 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-27 05:33:28,038.038 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 05:33:28,040.040 INFO    ] Checking for system updates...
[2026-06-27 05:33:28,062.062 INFO    ] 200
[2026-06-27 05:33:28,064.064 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:33:28,097.097 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:33:28,099.099 INFO    ] No update needed
[2026-06-27 05:33:28,100.100 INFO    ] Checking for camera pi updates...
[2026-06-27 05:33:28,120.120 INFO    ] 200
[2026-06-27 05:33:28,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:33:28,148.148 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:33:28,285.285 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:33:28,286.286 INFO    ] No camera update needed
[2026-06-27 05:33:28,288.288 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:33:28,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:33:28,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:33:28,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:33:30,335.335 INFO    ] ================================================
[2026-06-27 05:33:30,350.350 INFO    ] Launching Daemon at Sat Jun 27 05:33:30 IST 2026
[2026-06-27 05:33:30,361.361 INFO    ] ================================================
[2026-06-27 05:33:30,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:33:30
[2026-06-27 05:33:31,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:33:31,238.238 INFO    ] Initializing speech engine...
[2026-06-27 05:33:31,244.244 INFO    ] 2026-06-27 05:33:31
[2026-06-27 05:33:31,456.456 INFO    ] 2026-06-27 05:33:31
[2026-06-27 05:33:31,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:33:31,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:33:31,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:33:31,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:33:31,877.877 INFO    ] time= 27/06/2026 05:33:31
[2026-06-27 05:33:31,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:33:31,934.934 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:33:32,005.005 INFO    ] No existing commands found in stream
[2026-06-27 05:33:37,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:33:37,020.020 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-27 05:33:39,554.554 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:33:39,556.556 INFO    ] Checking for system updates...
[2026-06-27 05:33:39,577.577 INFO    ] 200
[2026-06-27 05:33:39,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:33:39,613.613 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:33:39,614.614 INFO    ] No update needed
[2026-06-27 05:33:39,616.616 INFO    ] Checking for camera pi updates...
[2026-06-27 05:33:39,637.637 INFO    ] 200
[2026-06-27 05:33:39,639.639 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:33:39,663.663 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:33:39,708.708 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:33:39,709.709 INFO    ] No camera update needed
[2026-06-27 05:33:39,710.710 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:33:39,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:33:39,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:33:39,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:33:41,759.759 INFO    ] ================================================
[2026-06-27 05:33:41,775.775 INFO    ] Launching Daemon at Sat Jun 27 05:33:41 IST 2026
[2026-06-27 05:33:41,785.785 INFO    ] ================================================
[2026-06-27 05:33:42,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:33:42
[2026-06-27 05:33:42,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:33:42,597.597 INFO    ] Initializing speech engine...
[2026-06-27 05:33:42,601.601 INFO    ] 2026-06-27 05:33:42
[2026-06-27 05:33:42,834.834 INFO    ] 2026-06-27 05:33:42
[2026-06-27 05:33:42,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:33:43,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:33:43,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:33:43,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:33:43,270.270 INFO    ] time= 27/06/2026 05:33:43
[2026-06-27 05:33:43,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:33:43,309.309 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:33:43,416.416 INFO    ] No existing commands found in stream
[2026-06-27 05:33:48,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:33:48,429.429 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-27 05:33:49,207.207 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 05:33:49,208.208 INFO    ] Checking for system updates...
[2026-06-27 05:33:49,231.231 INFO    ] 200
[2026-06-27 05:33:49,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:33:49,265.265 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:33:49,266.266 INFO    ] No update needed
[2026-06-27 05:33:49,268.268 INFO    ] Checking for camera pi updates...
[2026-06-27 05:33:49,289.289 INFO    ] 200
[2026-06-27 05:33:49,291.291 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:33:49,318.318 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:33:49,360.360 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:33:49,362.362 INFO    ] No camera update needed
[2026-06-27 05:33:49,363.363 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:33:49,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:33:49,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:33:49,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:33:51,409.409 INFO    ] ================================================
[2026-06-27 05:33:51,425.425 INFO    ] Launching Daemon at Sat Jun 27 05:33:51 IST 2026
[2026-06-27 05:33:51,435.435 INFO    ] ================================================
[2026-06-27 05:33:51,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:33:51
[2026-06-27 05:33:52,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:33:52,333.333 INFO    ] Initializing speech engine...
[2026-06-27 05:33:52,339.339 INFO    ] 2026-06-27 05:33:52
[2026-06-27 05:33:52,547.547 INFO    ] 2026-06-27 05:33:52
[2026-06-27 05:33:52,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:33:52,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:33:52,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:33:52,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:33:52,988.988 INFO    ] time= 27/06/2026 05:33:52
[2026-06-27 05:33:52,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:33:52,995.995 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:33:53,062.062 INFO    ] No existing commands found in stream
[2026-06-27 05:33:58,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:33:58,080.080 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-27 05:33:58,766.766 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:33:58,767.767 INFO    ] Checking for system updates...
[2026-06-27 05:33:58,790.790 INFO    ] 200
[2026-06-27 05:33:58,791.791 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:33:58,826.826 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:33:58,827.827 INFO    ] No update needed
[2026-06-27 05:33:58,829.829 INFO    ] Checking for camera pi updates...
[2026-06-27 05:33:58,849.849 INFO    ] 200
[2026-06-27 05:33:58,851.851 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:33:58,874.874 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:33:58,916.916 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:33:58,918.918 INFO    ] No camera update needed
[2026-06-27 05:33:58,919.919 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:33:58,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:33:58,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:33:58,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:34:00,967.967 INFO    ] ================================================
[2026-06-27 05:34:00,982.982 INFO    ] Launching Daemon at Sat Jun 27 05:34:00 IST 2026
[2026-06-27 05:34:01,994.994 INFO    ] ================================================
[2026-06-27 05:34:01,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:34:01
[2026-06-27 05:34:01,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:34:01,996.996 INFO    ] Initializing speech engine...
[2026-06-27 05:34:02,005.005 INFO    ] 2026-06-27 05:34:01
[2026-06-27 05:34:02,221.221 INFO    ] 2026-06-27 05:34:02
[2026-06-27 05:34:02,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:34:02,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:34:02,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:34:02,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:34:02,682.682 INFO    ] time= 27/06/2026 05:34:02
[2026-06-27 05:34:02,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:34:02,715.715 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:34:02,780.780 INFO    ] No existing commands found in stream
[2026-06-27 05:34:07,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:34:07,793.793 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-27 05:34:10,243.243 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:34:10,245.245 INFO    ] Checking for system updates...
[2026-06-27 05:34:10,267.267 INFO    ] 200
[2026-06-27 05:34:10,268.268 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:34:10,298.298 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:34:10,300.300 INFO    ] No update needed
[2026-06-27 05:34:10,301.301 INFO    ] Checking for camera pi updates...
[2026-06-27 05:34:10,323.323 INFO    ] 200
[2026-06-27 05:34:10,325.325 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:34:10,348.348 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:34:10,383.383 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:34:10,384.384 INFO    ] No camera update needed
[2026-06-27 05:34:10,386.386 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:34:10,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:34:10,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:34:10,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:34:12,435.435 INFO    ] ================================================
[2026-06-27 05:34:12,451.451 INFO    ] Launching Daemon at Sat Jun 27 05:34:12 IST 2026
[2026-06-27 05:34:12,462.462 INFO    ] ================================================
[2026-06-27 05:34:12,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:34:12
[2026-06-27 05:34:13,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:34:13,287.287 INFO    ] Initializing speech engine...
[2026-06-27 05:34:13,292.292 INFO    ] 2026-06-27 05:34:13
[2026-06-27 05:34:13,478.478 INFO    ] 2026-06-27 05:34:13
[2026-06-27 05:34:13,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:34:13,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:34:13,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:34:13,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:34:13,867.867 INFO    ] time= 27/06/2026 05:34:13
[2026-06-27 05:34:13,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:34:13,957.957 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:34:14,089.089 INFO    ] No existing commands found in stream
[2026-06-27 05:34:19,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:34:19,106.106 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-27 05:34:21,113.113 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 05:34:21,114.114 INFO    ] Checking for system updates...
[2026-06-27 05:34:21,137.137 INFO    ] 200
[2026-06-27 05:34:21,138.138 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:34:21,171.171 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:34:21,173.173 INFO    ] No update needed
[2026-06-27 05:34:21,174.174 INFO    ] Checking for camera pi updates...
[2026-06-27 05:34:21,195.195 INFO    ] 200
[2026-06-27 05:34:21,197.197 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:34:21,220.220 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:34:21,251.251 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:34:21,252.252 INFO    ] No camera update needed
[2026-06-27 05:34:21,254.254 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:34:21,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:34:21,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:34:21,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:34:23,299.299 INFO    ] ================================================
[2026-06-27 05:34:23,315.315 INFO    ] Launching Daemon at Sat Jun 27 05:34:23 IST 2026
[2026-06-27 05:34:23,326.326 INFO    ] ================================================
[2026-06-27 05:34:23,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:34:23
[2026-06-27 05:34:23,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:34:24,128.128 INFO    ] Initializing speech engine...
[2026-06-27 05:34:24,137.137 INFO    ] 2026-06-27 05:34:24
[2026-06-27 05:34:24,357.357 INFO    ] 2026-06-27 05:34:24
[2026-06-27 05:34:24,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:34:24,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:34:24,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:34:24,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:34:24,803.803 INFO    ] time= 27/06/2026 05:34:24
[2026-06-27 05:34:24,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:34:24,893.893 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:34:24,973.973 INFO    ] No existing commands found in stream
[2026-06-27 05:34:29,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:34:29,987.987 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-27 05:34:33,969.969 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 05:34:33,971.971 INFO    ] Checking for system updates...
[2026-06-27 05:34:33,992.992 INFO    ] 200
[2026-06-27 05:34:33,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:34:34,027.027 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:34:34,028.028 INFO    ] No update needed
[2026-06-27 05:34:34,029.029 INFO    ] Checking for camera pi updates...
[2026-06-27 05:34:34,050.050 INFO    ] 200
[2026-06-27 05:34:34,052.052 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:34:34,075.075 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:34:34,118.118 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:34:34,120.120 INFO    ] No camera update needed
[2026-06-27 05:34:34,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:34:34,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:34:34,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:34:34,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:34:36,168.168 INFO    ] ================================================
[2026-06-27 05:34:36,185.185 INFO    ] Launching Daemon at Sat Jun 27 05:34:36 IST 2026
[2026-06-27 05:34:36,197.197 INFO    ] ================================================
[2026-06-27 05:34:36,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:34:36
[2026-06-27 05:34:36,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:34:36,989.989 INFO    ] Initializing speech engine...
[2026-06-27 05:34:36,999.999 INFO    ] 2026-06-27 05:34:36
[2026-06-27 05:34:37,203.203 INFO    ] 2026-06-27 05:34:37
[2026-06-27 05:34:37,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:34:37,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:34:37,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:34:37,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:34:37,604.604 INFO    ] time= 27/06/2026 05:34:37
[2026-06-27 05:34:37,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:34:37,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:34:37,718.718 INFO    ] No existing commands found in stream
[2026-06-27 05:34:42,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:34:42,731.731 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-27 05:34:46,148.148 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 05:34:46,149.149 INFO    ] Checking for system updates...
[2026-06-27 05:34:46,170.170 INFO    ] 200
[2026-06-27 05:34:46,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:34:46,205.205 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:34:46,206.206 INFO    ] No update needed
[2026-06-27 05:34:46,208.208 INFO    ] Checking for camera pi updates...
[2026-06-27 05:34:46,229.229 INFO    ] 200
[2026-06-27 05:34:46,230.230 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:34:46,259.259 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:34:46,300.300 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:34:46,301.301 INFO    ] No camera update needed
[2026-06-27 05:34:46,303.303 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:34:46,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:34:46,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:34:46,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:34:48,349.349 INFO    ] ================================================
[2026-06-27 05:34:48,365.365 INFO    ] Launching Daemon at Sat Jun 27 05:34:48 IST 2026
[2026-06-27 05:34:48,376.376 INFO    ] ================================================
[2026-06-27 05:34:48,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:34:48
[2026-06-27 05:34:49,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:34:49,177.177 INFO    ] Initializing speech engine...
[2026-06-27 05:34:49,182.182 INFO    ] 2026-06-27 05:34:49
[2026-06-27 05:34:49,387.387 INFO    ] 2026-06-27 05:34:49
[2026-06-27 05:34:49,416.416 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:34:49,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:34:49,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:34:49,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:34:49,807.807 INFO    ] time= 27/06/2026 05:34:49
[2026-06-27 05:34:49,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:34:49,837.837 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:34:49,903.903 INFO    ] No existing commands found in stream
[2026-06-27 05:34:54,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:34:54,920.920 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-27 05:34:58,151.151 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 05:34:58,153.153 INFO    ] Checking for system updates...
[2026-06-27 05:34:58,174.174 INFO    ] 200
[2026-06-27 05:34:58,175.175 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:34:58,207.207 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:34:58,213.213 INFO    ] No update needed
[2026-06-27 05:34:58,215.215 INFO    ] Checking for camera pi updates...
[2026-06-27 05:34:58,235.235 INFO    ] 200
[2026-06-27 05:34:58,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:34:58,268.268 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:34:58,317.317 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:34:58,318.318 INFO    ] No camera update needed
[2026-06-27 05:34:58,320.320 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:34:58,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:34:58,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:34:58,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:35:00,366.366 INFO    ] ================================================
[2026-06-27 05:35:00,382.382 INFO    ] Launching Daemon at Sat Jun 27 05:35:00 IST 2026
[2026-06-27 05:35:00,392.392 INFO    ] ================================================
[2026-06-27 05:35:00,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:35:00
[2026-06-27 05:35:01,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:35:01,204.204 INFO    ] Initializing speech engine...
[2026-06-27 05:35:01,209.209 INFO    ] 2026-06-27 05:35:01
[2026-06-27 05:35:01,413.413 INFO    ] 2026-06-27 05:35:01
[2026-06-27 05:35:01,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:35:01,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:35:01,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:35:01,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:35:01,861.861 INFO    ] time= 27/06/2026 05:35:01
[2026-06-27 05:35:01,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:35:01,866.866 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:35:01,919.919 INFO    ] No existing commands found in stream
[2026-06-27 05:35:06,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:35:06,929.929 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-27 05:35:10,961.961 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:35:10,963.963 INFO    ] Checking for system updates...
[2026-06-27 05:35:10,985.985 INFO    ] 200
[2026-06-27 05:35:10,987.987 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:35:11,021.021 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:35:11,022.022 INFO    ] No update needed
[2026-06-27 05:35:11,023.023 INFO    ] Checking for camera pi updates...
[2026-06-27 05:35:11,045.045 INFO    ] 200
[2026-06-27 05:35:11,046.046 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:35:11,069.069 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:35:11,111.111 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:35:11,112.112 INFO    ] No camera update needed
[2026-06-27 05:35:11,114.114 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:35:11,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:35:11,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:35:11,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:35:13,162.162 INFO    ] ================================================
[2026-06-27 05:35:13,177.177 INFO    ] Launching Daemon at Sat Jun 27 05:35:13 IST 2026
[2026-06-27 05:35:13,188.188 INFO    ] ================================================
[2026-06-27 05:35:13,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:35:13
[2026-06-27 05:35:13,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:35:14,047.047 INFO    ] Initializing speech engine...
[2026-06-27 05:35:14,055.055 INFO    ] 2026-06-27 05:35:14
[2026-06-27 05:35:14,269.269 INFO    ] 2026-06-27 05:35:14
[2026-06-27 05:35:14,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:35:14,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:35:14,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:35:14,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:35:14,683.683 INFO    ] time= 27/06/2026 05:35:14
[2026-06-27 05:35:14,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:35:14,716.716 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:35:14,782.782 INFO    ] No existing commands found in stream
[2026-06-27 05:35:19,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:35:19,795.795 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-27 05:35:20,279.279 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 05:35:20,280.280 INFO    ] Checking for system updates...
[2026-06-27 05:35:20,301.301 INFO    ] 200
[2026-06-27 05:35:20,302.302 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:35:20,333.333 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:35:20,334.334 INFO    ] No update needed
[2026-06-27 05:35:20,336.336 INFO    ] Checking for camera pi updates...
[2026-06-27 05:35:20,355.355 INFO    ] 200
[2026-06-27 05:35:20,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:35:20,382.382 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:35:20,422.422 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:35:20,424.424 INFO    ] No camera update needed
[2026-06-27 05:35:20,425.425 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:35:20,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:35:20,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:35:20,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:35:22,470.470 INFO    ] ================================================
[2026-06-27 05:35:22,487.487 INFO    ] Launching Daemon at Sat Jun 27 05:35:22 IST 2026
[2026-06-27 05:35:22,498.498 INFO    ] ================================================
[2026-06-27 05:35:22,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:35:22
[2026-06-27 05:35:23,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:35:23,402.402 INFO    ] Initializing speech engine...
[2026-06-27 05:35:23,408.408 INFO    ] 2026-06-27 05:35:23
[2026-06-27 05:35:23,617.617 INFO    ] 2026-06-27 05:35:23
[2026-06-27 05:35:23,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:35:23,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:35:23,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:35:24,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:35:24,054.054 INFO    ] time= 27/06/2026 05:35:24
[2026-06-27 05:35:24,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:35:24,065.065 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:35:24,133.133 INFO    ] No existing commands found in stream
[2026-06-27 05:35:29,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:35:29,150.150 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-27 05:35:31,903.903 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 05:35:31,905.905 INFO    ] Checking for system updates...
[2026-06-27 05:35:31,932.932 INFO    ] 200
[2026-06-27 05:35:31,934.934 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:35:31,979.979 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:35:31,982.982 INFO    ] No update needed
[2026-06-27 05:35:31,984.984 INFO    ] Checking for camera pi updates...
[2026-06-27 05:35:32,013.013 INFO    ] 200
[2026-06-27 05:35:32,015.015 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:35:32,049.049 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:35:32,074.074 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:35:32,076.076 INFO    ] No camera update needed
[2026-06-27 05:35:32,078.078 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:35:32,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:35:32,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:35:32,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:35:34,132.132 INFO    ] ================================================
[2026-06-27 05:35:34,148.148 INFO    ] Launching Daemon at Sat Jun 27 05:35:34 IST 2026
[2026-06-27 05:35:34,159.159 INFO    ] ================================================
[2026-06-27 05:35:34,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:35:34
[2026-06-27 05:35:34,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:35:34,938.938 INFO    ] Initializing speech engine...
[2026-06-27 05:35:34,942.942 INFO    ] 2026-06-27 05:35:34
[2026-06-27 05:35:35,138.138 INFO    ] 2026-06-27 05:35:35
[2026-06-27 05:35:35,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:35:35,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:35:35,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:35:35,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:35:35,630.630 INFO    ] time= 27/06/2026 05:35:35
[2026-06-27 05:35:35,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:35:35,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:35:35,736.736 INFO    ] No existing commands found in stream
[2026-06-27 05:35:40,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:35:40,748.748 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-27 05:35:42,788.788 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 05:35:42,794.794 INFO    ] Checking for system updates...
[2026-06-27 05:35:42,815.815 INFO    ] 200
[2026-06-27 05:35:42,816.816 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:35:42,848.848 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:35:42,849.849 INFO    ] No update needed
[2026-06-27 05:35:42,850.850 INFO    ] Checking for camera pi updates...
[2026-06-27 05:35:42,872.872 INFO    ] 200
[2026-06-27 05:35:42,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:35:42,900.900 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:35:42,948.948 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:35:42,949.949 INFO    ] No camera update needed
[2026-06-27 05:35:42,950.950 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:35:42,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:35:42,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:35:42,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:35:44,989.989 INFO    ] ================================================
[2026-06-27 05:35:45,005.005 INFO    ] Launching Daemon at Sat Jun 27 05:35:44 IST 2026
[2026-06-27 05:35:45,016.016 INFO    ] ================================================
[2026-06-27 05:35:45,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:35:45
[2026-06-27 05:35:45,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:35:45,906.906 INFO    ] Initializing speech engine...
[2026-06-27 05:35:45,911.911 INFO    ] 2026-06-27 05:35:45
[2026-06-27 05:35:46,119.119 INFO    ] 2026-06-27 05:35:46
[2026-06-27 05:35:46,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:35:46,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:35:46,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:35:46,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:35:46,541.541 INFO    ] time= 27/06/2026 05:35:46
[2026-06-27 05:35:46,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:35:46,572.572 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:35:46,641.641 INFO    ] No existing commands found in stream
[2026-06-27 05:35:51,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:35:51,659.659 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-27 05:35:53,066.066 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:35:53,067.067 INFO    ] Checking for system updates...
[2026-06-27 05:35:53,089.089 INFO    ] 200
[2026-06-27 05:35:53,090.090 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:35:53,122.122 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:35:53,123.123 INFO    ] No update needed
[2026-06-27 05:35:53,125.125 INFO    ] Checking for camera pi updates...
[2026-06-27 05:35:53,146.146 INFO    ] 200
[2026-06-27 05:35:53,148.148 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:35:53,171.171 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:35:53,217.217 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:35:53,219.219 INFO    ] No camera update needed
[2026-06-27 05:35:53,221.221 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:35:53,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:35:53,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:35:53,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:35:55,267.267 INFO    ] ================================================
[2026-06-27 05:35:55,283.283 INFO    ] Launching Daemon at Sat Jun 27 05:35:55 IST 2026
[2026-06-27 05:35:55,294.294 INFO    ] ================================================
[2026-06-27 05:35:55,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:35:55
[2026-06-27 05:35:55,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:35:56,078.078 INFO    ] Initializing speech engine...
[2026-06-27 05:35:56,087.087 INFO    ] 2026-06-27 05:35:56
[2026-06-27 05:35:56,298.298 INFO    ] 2026-06-27 05:35:56
[2026-06-27 05:35:56,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:35:56,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:35:56,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:35:56,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:35:56,719.719 INFO    ] time= 27/06/2026 05:35:56
[2026-06-27 05:35:56,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:35:56,747.747 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:35:56,815.815 INFO    ] No existing commands found in stream
[2026-06-27 05:36:01,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:36:01,827.827 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-27 05:36:06,147.147 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:36:06,148.148 INFO    ] Checking for system updates...
[2026-06-27 05:36:06,169.169 INFO    ] 200
[2026-06-27 05:36:06,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:36:06,205.205 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:36:06,206.206 INFO    ] No update needed
[2026-06-27 05:36:06,207.207 INFO    ] Checking for camera pi updates...
[2026-06-27 05:36:06,247.247 INFO    ] 200
[2026-06-27 05:36:06,250.250 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:36:06,292.292 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:36:06,336.336 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:36:06,338.338 INFO    ] No camera update needed
[2026-06-27 05:36:06,341.341 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:36:06,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:36:06,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:36:06,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:36:08,396.396 INFO    ] ================================================
[2026-06-27 05:36:08,413.413 INFO    ] Launching Daemon at Sat Jun 27 05:36:08 IST 2026
[2026-06-27 05:36:08,426.426 INFO    ] ================================================
[2026-06-27 05:36:08,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:36:08
[2026-06-27 05:36:09,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:36:09,313.313 INFO    ] Initializing speech engine...
[2026-06-27 05:36:09,317.317 INFO    ] 2026-06-27 05:36:09
[2026-06-27 05:36:09,529.529 INFO    ] 2026-06-27 05:36:09
[2026-06-27 05:36:09,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:36:09,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:36:09,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:36:09,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:36:09,958.958 INFO    ] time= 27/06/2026 05:36:09
[2026-06-27 05:36:09,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:36:09,991.991 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:36:10,067.067 INFO    ] No existing commands found in stream
[2026-06-27 05:36:15,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:36:15,100.100 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-27 05:36:18,208.208 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 05:36:18,210.210 INFO    ] Checking for system updates...
[2026-06-27 05:36:18,231.231 INFO    ] 200
[2026-06-27 05:36:18,233.233 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:36:18,263.263 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:36:18,265.265 INFO    ] No update needed
[2026-06-27 05:36:18,266.266 INFO    ] Checking for camera pi updates...
[2026-06-27 05:36:18,286.286 INFO    ] 200
[2026-06-27 05:36:18,288.288 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:36:18,314.314 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:36:18,351.351 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:36:18,353.353 INFO    ] No camera update needed
[2026-06-27 05:36:18,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:36:18,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:36:18,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:36:18,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:36:20,394.394 INFO    ] ================================================
[2026-06-27 05:36:20,403.403 INFO    ] Launching Daemon at Sat Jun 27 05:36:20 IST 2026
[2026-06-27 05:36:20,413.413 INFO    ] ================================================
[2026-06-27 05:36:20,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:36:20
[2026-06-27 05:36:21,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:36:21,237.237 INFO    ] Initializing speech engine...
[2026-06-27 05:36:21,248.248 INFO    ] 2026-06-27 05:36:21
[2026-06-27 05:36:21,454.454 INFO    ] 2026-06-27 05:36:21
[2026-06-27 05:36:21,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:36:21,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:36:21,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:36:21,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:36:21,867.867 INFO    ] time= 27/06/2026 05:36:21
[2026-06-27 05:36:21,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:36:21,899.899 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:36:21,966.966 INFO    ] No existing commands found in stream
[2026-06-27 05:36:26,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:36:26,978.978 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-27 05:36:30,203.203 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 05:36:30,205.205 INFO    ] Checking for system updates...
[2026-06-27 05:36:30,227.227 INFO    ] 200
[2026-06-27 05:36:30,229.229 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:36:30,263.263 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:36:30,264.264 INFO    ] No update needed
[2026-06-27 05:36:30,266.266 INFO    ] Checking for camera pi updates...
[2026-06-27 05:36:30,287.287 INFO    ] 200
[2026-06-27 05:36:30,288.288 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:36:30,316.316 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:36:30,358.358 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:36:30,359.359 INFO    ] No camera update needed
[2026-06-27 05:36:30,361.361 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:36:30,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:36:30,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:36:30,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:36:32,403.403 INFO    ] ================================================
[2026-06-27 05:36:32,414.414 INFO    ] Launching Daemon at Sat Jun 27 05:36:32 IST 2026
[2026-06-27 05:36:32,420.420 INFO    ] ================================================
[2026-06-27 05:36:32,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:36:32
[2026-06-27 05:36:33,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:36:33,253.253 INFO    ] Initializing speech engine...
[2026-06-27 05:36:33,258.258 INFO    ] 2026-06-27 05:36:33
[2026-06-27 05:36:33,462.462 INFO    ] 2026-06-27 05:36:33
[2026-06-27 05:36:33,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:36:33,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:36:33,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:36:33,826.826 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:36:33,884.884 INFO    ] time= 27/06/2026 05:36:33
[2026-06-27 05:36:33,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:36:33,915.915 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:36:33,982.982 INFO    ] No existing commands found in stream
[2026-06-27 05:36:38,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:36:38,996.996 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-27 05:36:41,350.350 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 05:36:41,352.352 INFO    ] Checking for system updates...
[2026-06-27 05:36:41,374.374 INFO    ] 200
[2026-06-27 05:36:41,375.375 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:36:41,407.407 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:36:41,408.408 INFO    ] No update needed
[2026-06-27 05:36:41,410.410 INFO    ] Checking for camera pi updates...
[2026-06-27 05:36:41,429.429 INFO    ] 200
[2026-06-27 05:36:41,431.431 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:36:41,455.455 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:36:41,495.495 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:36:41,497.497 INFO    ] No camera update needed
[2026-06-27 05:36:41,498.498 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:36:41,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:36:41,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:36:41,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:36:43,545.545 INFO    ] ================================================
[2026-06-27 05:36:43,561.561 INFO    ] Launching Daemon at Sat Jun 27 05:36:43 IST 2026
[2026-06-27 05:36:43,572.572 INFO    ] ================================================
[2026-06-27 05:36:43,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:36:43
[2026-06-27 05:36:44,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:36:44,466.466 INFO    ] Initializing speech engine...
[2026-06-27 05:36:44,473.473 INFO    ] 2026-06-27 05:36:44
[2026-06-27 05:36:44,681.681 INFO    ] 2026-06-27 05:36:44
[2026-06-27 05:36:44,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:36:45,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:36:45,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:36:45,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:36:45,338.338 INFO    ] time= 27/06/2026 05:36:45
[2026-06-27 05:36:45,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:36:45,347.347 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:36:45,403.403 INFO    ] No existing commands found in stream
[2026-06-27 05:36:50,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:36:50,417.417 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-27 05:36:51,266.266 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:36:51,268.268 INFO    ] Checking for system updates...
[2026-06-27 05:36:51,290.290 INFO    ] 200
[2026-06-27 05:36:51,291.291 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:36:51,325.325 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:36:51,326.326 INFO    ] No update needed
[2026-06-27 05:36:51,327.327 INFO    ] Checking for camera pi updates...
[2026-06-27 05:36:51,347.347 INFO    ] 200
[2026-06-27 05:36:51,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:36:51,375.375 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:36:51,415.415 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:36:51,417.417 INFO    ] No camera update needed
[2026-06-27 05:36:51,418.418 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:36:51,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:36:51,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:36:51,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:36:53,464.464 INFO    ] ================================================
[2026-06-27 05:36:53,479.479 INFO    ] Launching Daemon at Sat Jun 27 05:36:53 IST 2026
[2026-06-27 05:36:53,491.491 INFO    ] ================================================
[2026-06-27 05:36:53,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:36:53
[2026-06-27 05:36:54,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:36:54,319.319 INFO    ] Initializing speech engine...
[2026-06-27 05:36:54,330.330 INFO    ] 2026-06-27 05:36:54
[2026-06-27 05:36:54,541.541 INFO    ] 2026-06-27 05:36:54
[2026-06-27 05:36:54,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:36:54,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:36:54,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:36:54,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:36:54,982.982 INFO    ] time= 27/06/2026 05:36:54
[2026-06-27 05:36:54,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:36:54,990.990 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:36:55,056.056 INFO    ] No existing commands found in stream
[2026-06-27 05:37:00,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:37:00,069.069 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-27 05:37:01,409.409 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 05:37:01,412.412 INFO    ] Checking for system updates...
[2026-06-27 05:37:01,448.448 INFO    ] 200
[2026-06-27 05:37:01,450.450 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:37:01,503.503 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:37:01,505.505 INFO    ] No update needed
[2026-06-27 05:37:01,507.507 INFO    ] Checking for camera pi updates...
[2026-06-27 05:37:01,534.534 INFO    ] 200
[2026-06-27 05:37:01,535.535 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:37:01,564.564 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:37:01,589.589 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:37:01,591.591 INFO    ] No camera update needed
[2026-06-27 05:37:01,593.593 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:37:01,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:37:01,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:37:01,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:37:03,636.636 INFO    ] ================================================
[2026-06-27 05:37:03,652.652 INFO    ] Launching Daemon at Sat Jun 27 05:37:03 IST 2026
[2026-06-27 05:37:03,663.663 INFO    ] ================================================
[2026-06-27 05:37:04,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:37:04
[2026-06-27 05:37:04,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:37:04,487.487 INFO    ] Initializing speech engine...
[2026-06-27 05:37:04,492.492 INFO    ] 2026-06-27 05:37:04
[2026-06-27 05:37:04,698.698 INFO    ] 2026-06-27 05:37:04
[2026-06-27 05:37:04,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:37:04,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:37:04,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:37:05,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:37:05,115.115 INFO    ] time= 27/06/2026 05:37:05
[2026-06-27 05:37:05,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:37:05,145.145 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:37:05,235.235 INFO    ] No existing commands found in stream
[2026-06-27 05:37:10,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:37:10,247.247 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-27 05:37:13,296.296 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:37:13,298.298 INFO    ] Checking for system updates...
[2026-06-27 05:37:13,319.319 INFO    ] 200
[2026-06-27 05:37:13,321.321 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:37:13,352.352 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:37:13,353.353 INFO    ] No update needed
[2026-06-27 05:37:13,355.355 INFO    ] Checking for camera pi updates...
[2026-06-27 05:37:13,377.377 INFO    ] 200
[2026-06-27 05:37:13,378.378 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:37:13,404.404 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:37:13,443.443 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:37:13,444.444 INFO    ] No camera update needed
[2026-06-27 05:37:13,446.446 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:37:13,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:37:13,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:37:13,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:37:15,495.495 INFO    ] ================================================
[2026-06-27 05:37:15,511.511 INFO    ] Launching Daemon at Sat Jun 27 05:37:15 IST 2026
[2026-06-27 05:37:15,523.523 INFO    ] ================================================
[2026-06-27 05:37:15,874.874 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:37:15
[2026-06-27 05:37:16,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:37:16,339.339 INFO    ] Initializing speech engine...
[2026-06-27 05:37:16,344.344 INFO    ] 2026-06-27 05:37:16
[2026-06-27 05:37:16,551.551 INFO    ] 2026-06-27 05:37:16
[2026-06-27 05:37:16,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:37:16,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:37:16,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:37:16,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:37:16,998.998 INFO    ] time= 27/06/2026 05:37:16
[2026-06-27 05:37:17,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:37:17,037.037 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:37:17,114.114 INFO    ] No existing commands found in stream
[2026-06-27 05:37:22,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:37:22,128.128 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-27 05:37:25,801.801 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 05:37:25,803.803 INFO    ] Checking for system updates...
[2026-06-27 05:37:25,824.824 INFO    ] 200
[2026-06-27 05:37:25,825.825 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:37:25,856.856 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:37:25,858.858 INFO    ] No update needed
[2026-06-27 05:37:25,859.859 INFO    ] Checking for camera pi updates...
[2026-06-27 05:37:25,879.879 INFO    ] 200
[2026-06-27 05:37:25,880.880 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:37:25,907.907 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:37:25,953.953 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:37:25,955.955 INFO    ] No camera update needed
[2026-06-27 05:37:25,956.956 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:37:25,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:37:25,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:37:25,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:37:28,002.002 INFO    ] ================================================
[2026-06-27 05:37:28,018.018 INFO    ] Launching Daemon at Sat Jun 27 05:37:28 IST 2026
[2026-06-27 05:37:28,030.030 INFO    ] ================================================
[2026-06-27 05:37:28,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:37:28
[2026-06-27 05:37:28,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:37:28,835.835 INFO    ] Initializing speech engine...
[2026-06-27 05:37:28,843.843 INFO    ] 2026-06-27 05:37:28
[2026-06-27 05:37:29,033.033 INFO    ] 2026-06-27 05:37:29
[2026-06-27 05:37:29,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:37:29,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:37:29,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:37:29,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:37:29,488.488 INFO    ] time= 27/06/2026 05:37:29
[2026-06-27 05:37:29,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:37:29,518.518 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:37:29,586.586 INFO    ] No existing commands found in stream
[2026-06-27 05:37:34,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:37:34,598.598 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-27 05:37:37,548.548 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 05:37:37,549.549 INFO    ] Checking for system updates...
[2026-06-27 05:37:37,569.569 INFO    ] 200
[2026-06-27 05:37:37,571.571 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:37:37,602.602 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:37:37,603.603 INFO    ] No update needed
[2026-06-27 05:37:37,605.605 INFO    ] Checking for camera pi updates...
[2026-06-27 05:37:37,625.625 INFO    ] 200
[2026-06-27 05:37:37,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:37:37,649.649 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:37:37,687.687 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:37:37,689.689 INFO    ] No camera update needed
[2026-06-27 05:37:37,690.690 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:37:37,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:37:37,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:37:37,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:37:39,736.736 INFO    ] ================================================
[2026-06-27 05:37:39,752.752 INFO    ] Launching Daemon at Sat Jun 27 05:37:39 IST 2026
[2026-06-27 05:37:39,763.763 INFO    ] ================================================
[2026-06-27 05:37:40,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:37:40
[2026-06-27 05:37:40,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:37:40,579.579 INFO    ] Initializing speech engine...
[2026-06-27 05:37:40,589.589 INFO    ] 2026-06-27 05:37:40
[2026-06-27 05:37:40,795.795 INFO    ] 2026-06-27 05:37:40
[2026-06-27 05:37:40,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:37:41,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:37:41,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:37:41,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:37:41,212.212 INFO    ] time= 27/06/2026 05:37:41
[2026-06-27 05:37:41,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:37:41,241.241 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:37:41,306.306 INFO    ] No existing commands found in stream
[2026-06-27 05:37:46,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:37:46,317.317 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-27 05:37:50,332.332 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 05:37:50,334.334 INFO    ] Checking for system updates...
[2026-06-27 05:37:50,355.355 INFO    ] 200
[2026-06-27 05:37:50,356.356 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:37:50,386.386 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:37:50,388.388 INFO    ] No update needed
[2026-06-27 05:37:50,389.389 INFO    ] Checking for camera pi updates...
[2026-06-27 05:37:50,409.409 INFO    ] 200
[2026-06-27 05:37:50,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:37:50,436.436 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:37:50,478.478 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:37:50,479.479 INFO    ] No camera update needed
[2026-06-27 05:37:50,481.481 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:37:50,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:37:50,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:37:50,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:37:52,527.527 INFO    ] ================================================
[2026-06-27 05:37:52,544.544 INFO    ] Launching Daemon at Sat Jun 27 05:37:52 IST 2026
[2026-06-27 05:37:52,555.555 INFO    ] ================================================
[2026-06-27 05:37:52,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:37:52
[2026-06-27 05:37:53,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:37:53,363.363 INFO    ] Initializing speech engine...
[2026-06-27 05:37:53,368.368 INFO    ] 2026-06-27 05:37:53
[2026-06-27 05:37:53,577.577 INFO    ] 2026-06-27 05:37:53
[2026-06-27 05:37:53,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:37:53,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:37:53,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:37:53,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:37:54,004.004 INFO    ] time= 27/06/2026 05:37:53
[2026-06-27 05:37:54,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:37:54,035.035 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:37:54,103.103 INFO    ] No existing commands found in stream
[2026-06-27 05:37:59,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:37:59,115.115 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-27 05:38:01,076.076 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 05:38:01,078.078 INFO    ] Checking for system updates...
[2026-06-27 05:38:01,100.100 INFO    ] 200
[2026-06-27 05:38:01,102.102 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:38:01,132.132 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:38:01,134.134 INFO    ] No update needed
[2026-06-27 05:38:01,136.136 INFO    ] Checking for camera pi updates...
[2026-06-27 05:38:01,157.157 INFO    ] 200
[2026-06-27 05:38:01,158.158 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:38:01,182.182 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:38:01,220.220 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:38:01,221.221 INFO    ] No camera update needed
[2026-06-27 05:38:01,222.222 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:38:01,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:38:01,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:38:01,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:38:03,268.268 INFO    ] ================================================
[2026-06-27 05:38:03,283.283 INFO    ] Launching Daemon at Sat Jun 27 05:38:03 IST 2026
[2026-06-27 05:38:03,296.296 INFO    ] ================================================
[2026-06-27 05:38:03,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:38:03
[2026-06-27 05:38:04,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:38:04,180.180 INFO    ] Initializing speech engine...
[2026-06-27 05:38:04,185.185 INFO    ] 2026-06-27 05:38:04
[2026-06-27 05:38:04,389.389 INFO    ] 2026-06-27 05:38:04
[2026-06-27 05:38:04,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:38:04,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:38:04,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:38:04,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:38:04,806.806 INFO    ] time= 27/06/2026 05:38:04
[2026-06-27 05:38:04,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:38:04,837.837 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:38:04,909.909 INFO    ] No existing commands found in stream
[2026-06-27 05:38:09,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:38:09,921.921 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-27 05:38:13,953.953 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 05:38:13,955.955 INFO    ] Checking for system updates...
[2026-06-27 05:38:13,977.977 INFO    ] 200
[2026-06-27 05:38:13,979.979 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:38:14,010.010 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:38:14,011.011 INFO    ] No update needed
[2026-06-27 05:38:14,013.013 INFO    ] Checking for camera pi updates...
[2026-06-27 05:38:14,033.033 INFO    ] 200
[2026-06-27 05:38:14,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:38:14,059.059 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:38:14,107.107 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:38:14,109.109 INFO    ] No camera update needed
[2026-06-27 05:38:14,110.110 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:38:14,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:38:14,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:38:14,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:38:16,159.159 INFO    ] ================================================
[2026-06-27 05:38:16,175.175 INFO    ] Launching Daemon at Sat Jun 27 05:38:16 IST 2026
[2026-06-27 05:38:16,186.186 INFO    ] ================================================
[2026-06-27 05:38:16,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:38:16
[2026-06-27 05:38:16,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:38:17,023.023 INFO    ] Initializing speech engine...
[2026-06-27 05:38:17,028.028 INFO    ] 2026-06-27 05:38:17
[2026-06-27 05:38:17,233.233 INFO    ] 2026-06-27 05:38:17
[2026-06-27 05:38:17,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:38:17,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:38:17,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:38:17,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:38:17,652.652 INFO    ] time= 27/06/2026 05:38:17
[2026-06-27 05:38:17,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:38:17,682.682 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:38:17,749.749 INFO    ] No existing commands found in stream
[2026-06-27 05:38:22,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:38:22,761.761 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-27 05:38:25,086.086 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 05:38:25,087.087 INFO    ] Checking for system updates...
[2026-06-27 05:38:25,109.109 INFO    ] 200
[2026-06-27 05:38:25,111.111 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:38:25,141.141 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:38:25,142.142 INFO    ] No update needed
[2026-06-27 05:38:25,144.144 INFO    ] Checking for camera pi updates...
[2026-06-27 05:38:25,165.165 INFO    ] 200
[2026-06-27 05:38:25,167.167 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:38:25,190.190 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:38:25,236.236 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:38:25,237.237 INFO    ] No camera update needed
[2026-06-27 05:38:25,238.238 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:38:25,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:38:25,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:38:25,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:38:27,287.287 INFO    ] ================================================
[2026-06-27 05:38:27,304.304 INFO    ] Launching Daemon at Sat Jun 27 05:38:27 IST 2026
[2026-06-27 05:38:27,315.315 INFO    ] ================================================
[2026-06-27 05:38:27,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:38:27
[2026-06-27 05:38:27,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:38:28,108.108 INFO    ] Initializing speech engine...
[2026-06-27 05:38:28,118.118 INFO    ] 2026-06-27 05:38:28
[2026-06-27 05:38:28,338.338 INFO    ] 2026-06-27 05:38:28
[2026-06-27 05:38:28,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:38:28,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:38:28,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:38:28,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:38:28,772.772 INFO    ] time= 27/06/2026 05:38:28
[2026-06-27 05:38:28,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:38:28,805.805 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:38:28,873.873 INFO    ] No existing commands found in stream
[2026-06-27 05:38:33,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:38:33,885.885 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-27 05:38:38,264.264 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 05:38:38,266.266 INFO    ] Checking for system updates...
[2026-06-27 05:38:38,287.287 INFO    ] 200
[2026-06-27 05:38:38,288.288 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:38:38,322.322 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:38:38,323.323 INFO    ] No update needed
[2026-06-27 05:38:38,325.325 INFO    ] Checking for camera pi updates...
[2026-06-27 05:38:38,345.345 INFO    ] 200
[2026-06-27 05:38:38,346.346 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:38:38,370.370 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:38:38,411.411 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:38:38,412.412 INFO    ] No camera update needed
[2026-06-27 05:38:38,414.414 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:38:38,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:38:38,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:38:38,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:38:40,460.460 INFO    ] ================================================
[2026-06-27 05:38:40,476.476 INFO    ] Launching Daemon at Sat Jun 27 05:38:40 IST 2026
[2026-06-27 05:38:40,488.488 INFO    ] ================================================
[2026-06-27 05:38:40,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:38:40
[2026-06-27 05:38:41,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:38:41,285.285 INFO    ] Initializing speech engine...
[2026-06-27 05:38:41,290.290 INFO    ] 2026-06-27 05:38:41
[2026-06-27 05:38:41,496.496 INFO    ] 2026-06-27 05:38:41
[2026-06-27 05:38:41,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:38:41,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:38:41,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:38:41,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:38:41,908.908 INFO    ] time= 27/06/2026 05:38:41
[2026-06-27 05:38:41,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:38:41,950.950 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:38:42,022.022 INFO    ] No existing commands found in stream
[2026-06-27 05:38:47,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:38:47,034.034 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-27 05:38:48,313.313 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 05:38:48,315.315 INFO    ] Checking for system updates...
[2026-06-27 05:38:48,336.336 INFO    ] 200
[2026-06-27 05:38:48,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:38:48,368.368 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:38:48,369.369 INFO    ] No update needed
[2026-06-27 05:38:48,371.371 INFO    ] Checking for camera pi updates...
[2026-06-27 05:38:48,390.390 INFO    ] 200
[2026-06-27 05:38:48,392.392 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:38:48,417.417 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:38:48,463.463 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:38:48,465.465 INFO    ] No camera update needed
[2026-06-27 05:38:48,466.466 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:38:48,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:38:48,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:38:48,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:38:50,513.513 INFO    ] ================================================
[2026-06-27 05:38:50,528.528 INFO    ] Launching Daemon at Sat Jun 27 05:38:50 IST 2026
[2026-06-27 05:38:50,539.539 INFO    ] ================================================
[2026-06-27 05:38:50,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:38:50
[2026-06-27 05:38:51,292.292 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:38:51,446.446 INFO    ] Initializing speech engine...
[2026-06-27 05:38:51,452.452 INFO    ] 2026-06-27 05:38:51
[2026-06-27 05:38:51,664.664 INFO    ] 2026-06-27 05:38:51
[2026-06-27 05:38:51,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:38:51,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:38:51,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:38:52,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:38:52,085.085 INFO    ] time= 27/06/2026 05:38:52
[2026-06-27 05:38:52,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:38:52,116.116 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:38:52,181.181 INFO    ] No existing commands found in stream
[2026-06-27 05:38:57,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:38:57,196.196 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-27 05:38:57,915.915 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 05:38:57,917.917 INFO    ] Checking for system updates...
[2026-06-27 05:38:57,938.938 INFO    ] 200
[2026-06-27 05:38:57,940.940 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:38:57,974.974 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:38:57,975.975 INFO    ] No update needed
[2026-06-27 05:38:57,977.977 INFO    ] Checking for camera pi updates...
[2026-06-27 05:38:57,996.996 INFO    ] 200
[2026-06-27 05:38:57,997.997 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:38:58,021.021 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:38:58,059.059 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:38:58,060.060 INFO    ] No camera update needed
[2026-06-27 05:38:58,061.061 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:38:58,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:38:58,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:38:58,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:39:00,110.110 INFO    ] ================================================
[2026-06-27 05:39:00,128.128 INFO    ] Launching Daemon at Sat Jun 27 05:39:00 IST 2026
[2026-06-27 05:39:00,139.139 INFO    ] ================================================
[2026-06-27 05:39:00,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:39:00
[2026-06-27 05:39:00,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:39:00,913.913 INFO    ] Initializing speech engine...
[2026-06-27 05:39:00,918.918 INFO    ] 2026-06-27 05:39:00
[2026-06-27 05:39:01,137.137 INFO    ] 2026-06-27 05:39:01
[2026-06-27 05:39:01,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:39:01,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:39:01,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:39:01,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:39:01,544.544 INFO    ] time= 27/06/2026 05:39:01
[2026-06-27 05:39:01,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:39:01,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:39:01,664.664 INFO    ] No existing commands found in stream
[2026-06-27 05:39:06,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:39:06,676.676 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-27 05:39:07,408.408 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:39:07,410.410 INFO    ] Checking for system updates...
[2026-06-27 05:39:07,430.430 INFO    ] 200
[2026-06-27 05:39:07,432.432 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:39:07,463.463 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:39:07,464.464 INFO    ] No update needed
[2026-06-27 05:39:07,466.466 INFO    ] Checking for camera pi updates...
[2026-06-27 05:39:07,485.485 INFO    ] 200
[2026-06-27 05:39:07,486.486 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:39:07,512.512 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:39:07,548.548 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:39:07,549.549 INFO    ] No camera update needed
[2026-06-27 05:39:07,550.550 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:39:07,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:39:07,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:39:07,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:39:09,597.597 INFO    ] ================================================
[2026-06-27 05:39:09,613.613 INFO    ] Launching Daemon at Sat Jun 27 05:39:09 IST 2026
[2026-06-27 05:39:09,624.624 INFO    ] ================================================
[2026-06-27 05:39:10,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:39:10
[2026-06-27 05:39:10,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:39:10,505.505 INFO    ] Initializing speech engine...
[2026-06-27 05:39:10,511.511 INFO    ] 2026-06-27 05:39:10
[2026-06-27 05:39:10,719.719 INFO    ] 2026-06-27 05:39:10
[2026-06-27 05:39:10,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:39:10,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:39:10,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:39:11,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:39:11,143.143 INFO    ] time= 27/06/2026 05:39:11
[2026-06-27 05:39:11,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:39:11,170.170 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:39:11,237.237 INFO    ] No existing commands found in stream
[2026-06-27 05:39:16,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:39:16,255.255 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-27 05:39:19,725.725 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 05:39:19,727.727 INFO    ] Checking for system updates...
[2026-06-27 05:39:19,748.748 INFO    ] 200
[2026-06-27 05:39:19,749.749 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:39:19,782.782 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:39:19,784.784 INFO    ] No update needed
[2026-06-27 05:39:19,785.785 INFO    ] Checking for camera pi updates...
[2026-06-27 05:39:19,808.808 INFO    ] 200
[2026-06-27 05:39:19,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:39:19,834.834 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:39:19,882.882 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:39:19,884.884 INFO    ] No camera update needed
[2026-06-27 05:39:19,885.885 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:39:19,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:39:19,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:39:19,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:39:21,934.934 INFO    ] ================================================
[2026-06-27 05:39:21,950.950 INFO    ] Launching Daemon at Sat Jun 27 05:39:21 IST 2026
[2026-06-27 05:39:21,961.961 INFO    ] ================================================
[2026-06-27 05:39:22,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:39:22
[2026-06-27 05:39:22,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:39:22,764.764 INFO    ] Initializing speech engine...
[2026-06-27 05:39:22,772.772 INFO    ] 2026-06-27 05:39:22
[2026-06-27 05:39:23,000.000 INFO    ] 2026-06-27 05:39:22
[2026-06-27 05:39:23,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:39:23,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:39:23,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:39:23,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:39:23,436.436 INFO    ] time= 27/06/2026 05:39:23
[2026-06-27 05:39:23,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:39:23,470.470 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:39:23,535.535 INFO    ] No existing commands found in stream
[2026-06-27 05:39:28,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:39:28,548.548 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-27 05:39:32,472.472 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:39:32,474.474 INFO    ] Checking for system updates...
[2026-06-27 05:39:32,497.497 INFO    ] 200
[2026-06-27 05:39:32,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:39:32,528.528 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:39:32,529.529 INFO    ] No update needed
[2026-06-27 05:39:32,531.531 INFO    ] Checking for camera pi updates...
[2026-06-27 05:39:32,551.551 INFO    ] 200
[2026-06-27 05:39:32,552.552 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:39:32,576.576 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:39:32,601.601 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:39:32,602.602 INFO    ] No camera update needed
[2026-06-27 05:39:32,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:39:32,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:39:32,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:39:32,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:39:34,651.651 INFO    ] ================================================
[2026-06-27 05:39:34,668.668 INFO    ] Launching Daemon at Sat Jun 27 05:39:34 IST 2026
[2026-06-27 05:39:34,679.679 INFO    ] ================================================
[2026-06-27 05:39:35,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:39:35
[2026-06-27 05:39:35,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:39:35,492.492 INFO    ] Initializing speech engine...
[2026-06-27 05:39:35,501.501 INFO    ] 2026-06-27 05:39:35
[2026-06-27 05:39:35,707.707 INFO    ] 2026-06-27 05:39:35
[2026-06-27 05:39:35,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:39:35,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:39:35,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:39:36,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:39:36,119.119 INFO    ] time= 27/06/2026 05:39:36
[2026-06-27 05:39:36,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:39:36,158.158 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:39:36,225.225 INFO    ] No existing commands found in stream
[2026-06-27 05:39:41,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:39:41,242.242 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-27 05:39:43,707.707 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 05:39:43,709.709 INFO    ] Checking for system updates...
[2026-06-27 05:39:43,731.731 INFO    ] 200
[2026-06-27 05:39:43,733.733 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:39:43,768.768 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:39:43,769.769 INFO    ] No update needed
[2026-06-27 05:39:43,771.771 INFO    ] Checking for camera pi updates...
[2026-06-27 05:39:43,793.793 INFO    ] 200
[2026-06-27 05:39:43,795.795 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:39:43,819.819 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:39:43,962.962 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:39:43,964.964 INFO    ] No camera update needed
[2026-06-27 05:39:43,965.965 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:39:43,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:39:43,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:39:43,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:39:46,015.015 INFO    ] ================================================
[2026-06-27 05:39:46,030.030 INFO    ] Launching Daemon at Sat Jun 27 05:39:46 IST 2026
[2026-06-27 05:39:46,041.041 INFO    ] ================================================
[2026-06-27 05:39:46,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:39:46
[2026-06-27 05:39:46,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:39:46,873.873 INFO    ] Initializing speech engine...
[2026-06-27 05:39:46,877.877 INFO    ] 2026-06-27 05:39:46
[2026-06-27 05:39:47,090.090 INFO    ] 2026-06-27 05:39:47
[2026-06-27 05:39:47,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:39:47,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:39:47,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:39:47,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:39:47,502.502 INFO    ] time= 27/06/2026 05:39:47
[2026-06-27 05:39:47,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:39:47,543.543 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:39:47,614.614 INFO    ] No existing commands found in stream
[2026-06-27 05:39:52,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:39:52,629.629 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-27 05:39:56,036.036 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 05:39:56,037.037 INFO    ] Checking for system updates...
[2026-06-27 05:39:56,060.060 INFO    ] 200
[2026-06-27 05:39:56,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:39:56,095.095 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:39:56,097.097 INFO    ] No update needed
[2026-06-27 05:39:56,098.098 INFO    ] Checking for camera pi updates...
[2026-06-27 05:39:56,118.118 INFO    ] 200
[2026-06-27 05:39:56,119.119 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:39:56,143.143 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:39:56,181.181 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:39:56,182.182 INFO    ] No camera update needed
[2026-06-27 05:39:56,184.184 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:39:56,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:39:56,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:39:56,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:39:58,231.231 INFO    ] ================================================
[2026-06-27 05:39:58,247.247 INFO    ] Launching Daemon at Sat Jun 27 05:39:58 IST 2026
[2026-06-27 05:39:58,257.257 INFO    ] ================================================
[2026-06-27 05:39:58,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:39:58
[2026-06-27 05:39:58,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:39:59,060.060 INFO    ] Initializing speech engine...
[2026-06-27 05:39:59,063.063 INFO    ] 2026-06-27 05:39:59
[2026-06-27 05:39:59,275.275 INFO    ] 2026-06-27 05:39:59
[2026-06-27 05:39:59,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:39:59,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:39:59,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:39:59,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:39:59,667.667 INFO    ] time= 27/06/2026 05:39:59
[2026-06-27 05:39:59,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:39:59,670.670 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:39:59,726.726 INFO    ] No existing commands found in stream
[2026-06-27 05:40:04,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:40:04,737.737 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-27 05:40:08,792.792 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 05:40:08,794.794 INFO    ] Checking for system updates...
[2026-06-27 05:40:08,815.815 INFO    ] 200
[2026-06-27 05:40:08,816.816 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:40:08,849.849 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:40:08,850.850 INFO    ] No update needed
[2026-06-27 05:40:08,852.852 INFO    ] Checking for camera pi updates...
[2026-06-27 05:40:08,871.871 INFO    ] 200
[2026-06-27 05:40:08,873.873 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:40:08,896.896 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:40:08,936.936 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:40:08,937.937 INFO    ] No camera update needed
[2026-06-27 05:40:08,939.939 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:40:08,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:40:08,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:40:08,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:40:10,985.985 INFO    ] ================================================
[2026-06-27 05:40:11,000.000 INFO    ] Launching Daemon at Sat Jun 27 05:40:10 IST 2026
[2026-06-27 05:40:11,011.011 INFO    ] ================================================
[2026-06-27 05:40:11,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:40:11
[2026-06-27 05:40:11,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:40:11,797.797 INFO    ] Initializing speech engine...
[2026-06-27 05:40:11,805.805 INFO    ] 2026-06-27 05:40:11
[2026-06-27 05:40:12,018.018 INFO    ] 2026-06-27 05:40:11
[2026-06-27 05:40:12,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:40:12,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:40:12,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:40:12,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:40:12,439.439 INFO    ] time= 27/06/2026 05:40:12
[2026-06-27 05:40:12,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:40:12,467.467 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:40:12,534.534 INFO    ] No existing commands found in stream
[2026-06-27 05:40:17,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:40:17,546.546 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-27 05:40:19,085.085 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:40:19,086.086 INFO    ] Checking for system updates...
[2026-06-27 05:40:19,108.108 INFO    ] 200
[2026-06-27 05:40:19,109.109 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:40:19,140.140 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:40:19,142.142 INFO    ] No update needed
[2026-06-27 05:40:19,143.143 INFO    ] Checking for camera pi updates...
[2026-06-27 05:40:19,163.163 INFO    ] 200
[2026-06-27 05:40:19,164.164 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:40:19,190.190 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:40:19,233.233 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:40:19,235.235 INFO    ] No camera update needed
[2026-06-27 05:40:19,236.236 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:40:19,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:40:19,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:40:19,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:40:21,285.285 INFO    ] ================================================
[2026-06-27 05:40:21,300.300 INFO    ] Launching Daemon at Sat Jun 27 05:40:21 IST 2026
[2026-06-27 05:40:21,311.311 INFO    ] ================================================
[2026-06-27 05:40:21,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:40:21
[2026-06-27 05:40:21,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:40:22,152.152 INFO    ] Initializing speech engine...
[2026-06-27 05:40:22,156.156 INFO    ] 2026-06-27 05:40:22
[2026-06-27 05:40:22,363.363 INFO    ] 2026-06-27 05:40:22
[2026-06-27 05:40:22,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:40:22,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:40:22,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:40:22,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:40:22,782.782 INFO    ] time= 27/06/2026 05:40:22
[2026-06-27 05:40:22,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:40:22,812.812 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:40:22,879.879 INFO    ] No existing commands found in stream
[2026-06-27 05:40:27,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:40:27,897.897 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-27 05:40:29,799.799 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 05:40:29,800.800 INFO    ] Checking for system updates...
[2026-06-27 05:40:29,821.821 INFO    ] 200
[2026-06-27 05:40:29,822.822 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:40:29,852.852 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:40:29,854.854 INFO    ] No update needed
[2026-06-27 05:40:29,856.856 INFO    ] Checking for camera pi updates...
[2026-06-27 05:40:29,876.876 INFO    ] 200
[2026-06-27 05:40:29,877.877 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:40:29,900.900 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:40:29,937.937 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:40:29,938.938 INFO    ] No camera update needed
[2026-06-27 05:40:29,939.939 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:40:29,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:40:29,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:40:29,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:40:31,978.978 INFO    ] ================================================
[2026-06-27 05:40:31,986.986 INFO    ] Launching Daemon at Sat Jun 27 05:40:31 IST 2026
[2026-06-27 05:40:32,994.994 INFO    ] ================================================
[2026-06-27 05:40:32,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:40:32
[2026-06-27 05:40:32,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:40:32,823.823 INFO    ] Initializing speech engine...
[2026-06-27 05:40:32,828.828 INFO    ] 2026-06-27 05:40:32
[2026-06-27 05:40:33,038.038 INFO    ] 2026-06-27 05:40:33
[2026-06-27 05:40:33,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:40:33,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:40:33,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:40:33,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:40:33,479.479 INFO    ] time= 27/06/2026 05:40:33
[2026-06-27 05:40:33,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:40:33,487.487 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:40:33,553.553 INFO    ] No existing commands found in stream
[2026-06-27 05:40:38,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:40:38,567.567 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-27 05:40:41,571.571 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 05:40:41,573.573 INFO    ] Checking for system updates...
[2026-06-27 05:40:41,595.595 INFO    ] 200
[2026-06-27 05:40:41,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:40:41,627.627 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:40:41,628.628 INFO    ] No update needed
[2026-06-27 05:40:41,630.630 INFO    ] Checking for camera pi updates...
[2026-06-27 05:40:41,652.652 INFO    ] 200
[2026-06-27 05:40:41,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:40:41,677.677 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:40:41,721.721 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:40:41,722.722 INFO    ] No camera update needed
[2026-06-27 05:40:41,724.724 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:40:41,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:40:41,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:40:41,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:40:43,770.770 INFO    ] ================================================
[2026-06-27 05:40:43,786.786 INFO    ] Launching Daemon at Sat Jun 27 05:40:43 IST 2026
[2026-06-27 05:40:43,796.796 INFO    ] ================================================
[2026-06-27 05:40:44,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:40:44
[2026-06-27 05:40:44,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:40:44,691.691 INFO    ] Initializing speech engine...
[2026-06-27 05:40:44,697.697 INFO    ] 2026-06-27 05:40:44
[2026-06-27 05:40:44,907.907 INFO    ] 2026-06-27 05:40:44
[2026-06-27 05:40:44,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:40:45,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:40:45,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:40:45,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:40:45,329.329 INFO    ] time= 27/06/2026 05:40:45
[2026-06-27 05:40:45,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:40:45,357.357 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:40:45,424.424 INFO    ] No existing commands found in stream
[2026-06-27 05:40:50,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:40:50,452.452 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-27 05:40:52,240.240 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 05:40:52,242.242 INFO    ] Checking for system updates...
[2026-06-27 05:40:52,264.264 INFO    ] 200
[2026-06-27 05:40:52,265.265 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:40:52,297.297 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:40:52,298.298 INFO    ] No update needed
[2026-06-27 05:40:52,300.300 INFO    ] Checking for camera pi updates...
[2026-06-27 05:40:52,320.320 INFO    ] 200
[2026-06-27 05:40:52,321.321 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:40:52,345.345 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:40:52,384.384 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:40:52,385.385 INFO    ] No camera update needed
[2026-06-27 05:40:52,387.387 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:40:52,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:40:52,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:40:52,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:40:54,435.435 INFO    ] ================================================
[2026-06-27 05:40:54,450.450 INFO    ] Launching Daemon at Sat Jun 27 05:40:54 IST 2026
[2026-06-27 05:40:54,460.460 INFO    ] ================================================
[2026-06-27 05:40:54,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:40:54
[2026-06-27 05:40:55,095.095 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:40:55,238.238 INFO    ] Initializing speech engine...
[2026-06-27 05:40:55,243.243 INFO    ] 2026-06-27 05:40:55
[2026-06-27 05:40:55,448.448 INFO    ] 2026-06-27 05:40:55
[2026-06-27 05:40:55,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:40:55,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:40:55,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:40:55,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:40:55,862.862 INFO    ] time= 27/06/2026 05:40:55
[2026-06-27 05:40:55,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:40:55,895.895 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:40:55,962.962 INFO    ] No existing commands found in stream
[2026-06-27 05:41:00,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:41:00,979.979 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-27 05:41:02,517.517 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 05:41:02,519.519 INFO    ] Checking for system updates...
[2026-06-27 05:41:02,540.540 INFO    ] 200
[2026-06-27 05:41:02,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:41:02,572.572 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:41:02,573.573 INFO    ] No update needed
[2026-06-27 05:41:02,575.575 INFO    ] Checking for camera pi updates...
[2026-06-27 05:41:02,596.596 INFO    ] 200
[2026-06-27 05:41:02,597.597 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:41:02,621.621 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:41:02,643.643 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:41:02,645.645 INFO    ] No camera update needed
[2026-06-27 05:41:02,647.647 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:41:02,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:41:02,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:41:02,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:41:04,699.699 INFO    ] ================================================
[2026-06-27 05:41:04,714.714 INFO    ] Launching Daemon at Sat Jun 27 05:41:04 IST 2026
[2026-06-27 05:41:04,724.724 INFO    ] ================================================
[2026-06-27 05:41:05,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:41:05
[2026-06-27 05:41:05,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:41:05,546.546 INFO    ] Initializing speech engine...
[2026-06-27 05:41:05,555.555 INFO    ] 2026-06-27 05:41:05
[2026-06-27 05:41:05,745.745 INFO    ] 2026-06-27 05:41:05
[2026-06-27 05:41:05,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:41:05,932.932 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:41:05,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:41:06,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:41:06,198.198 INFO    ] time= 27/06/2026 05:41:06
[2026-06-27 05:41:06,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:41:06,227.227 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:41:06,298.298 INFO    ] No existing commands found in stream
[2026-06-27 05:41:11,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:41:11,309.309 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-27 05:41:13,508.508 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 05:41:13,509.509 INFO    ] Checking for system updates...
[2026-06-27 05:41:13,530.530 INFO    ] 200
[2026-06-27 05:41:13,532.532 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:41:13,565.565 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:41:13,567.567 INFO    ] No update needed
[2026-06-27 05:41:13,568.568 INFO    ] Checking for camera pi updates...
[2026-06-27 05:41:13,591.591 INFO    ] 200
[2026-06-27 05:41:13,592.592 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:41:13,617.617 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:41:13,651.651 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:41:13,653.653 INFO    ] No camera update needed
[2026-06-27 05:41:13,654.654 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:41:13,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:41:13,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:41:13,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:41:15,705.705 INFO    ] ================================================
[2026-06-27 05:41:15,720.720 INFO    ] Launching Daemon at Sat Jun 27 05:41:15 IST 2026
[2026-06-27 05:41:15,732.732 INFO    ] ================================================
[2026-06-27 05:41:16,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:41:16
[2026-06-27 05:41:16,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:41:16,542.542 INFO    ] Initializing speech engine...
[2026-06-27 05:41:16,547.547 INFO    ] 2026-06-27 05:41:16
[2026-06-27 05:41:16,755.755 INFO    ] 2026-06-27 05:41:16
[2026-06-27 05:41:16,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:41:16,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:41:16,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:41:17,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:41:17,200.200 INFO    ] time= 27/06/2026 05:41:17
[2026-06-27 05:41:17,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:41:17,207.207 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:41:17,274.274 INFO    ] No existing commands found in stream
[2026-06-27 05:41:22,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:41:22,286.286 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-27 05:41:25,390.390 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 05:41:25,392.392 INFO    ] Checking for system updates...
[2026-06-27 05:41:25,412.412 INFO    ] 200
[2026-06-27 05:41:25,413.413 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:41:25,444.444 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:41:25,446.446 INFO    ] No update needed
[2026-06-27 05:41:25,447.447 INFO    ] Checking for camera pi updates...
[2026-06-27 05:41:25,467.467 INFO    ] 200
[2026-06-27 05:41:25,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:41:25,492.492 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:41:25,530.530 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:41:25,531.531 INFO    ] No camera update needed
[2026-06-27 05:41:25,533.533 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:41:25,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:41:25,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:41:25,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:41:27,580.580 INFO    ] ================================================
[2026-06-27 05:41:27,596.596 INFO    ] Launching Daemon at Sat Jun 27 05:41:27 IST 2026
[2026-06-27 05:41:27,608.608 INFO    ] ================================================
[2026-06-27 05:41:27,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:41:27
[2026-06-27 05:41:28,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:41:28,390.390 INFO    ] Initializing speech engine...
[2026-06-27 05:41:28,399.399 INFO    ] 2026-06-27 05:41:28
[2026-06-27 05:41:28,604.604 INFO    ] 2026-06-27 05:41:28
[2026-06-27 05:41:28,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:41:28,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:41:28,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:41:28,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:41:29,025.025 INFO    ] time= 27/06/2026 05:41:28
[2026-06-27 05:41:29,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:41:29,053.053 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:41:29,121.121 INFO    ] No existing commands found in stream
[2026-06-27 05:41:34,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:41:34,138.138 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-27 05:41:36,010.010 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 05:41:36,011.011 INFO    ] Checking for system updates...
[2026-06-27 05:41:36,033.033 INFO    ] 200
[2026-06-27 05:41:36,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:41:36,068.068 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:41:36,069.069 INFO    ] No update needed
[2026-06-27 05:41:36,071.071 INFO    ] Checking for camera pi updates...
[2026-06-27 05:41:36,090.090 INFO    ] 200
[2026-06-27 05:41:36,092.092 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:41:36,117.117 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:41:36,156.156 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:41:36,157.157 INFO    ] No camera update needed
[2026-06-27 05:41:36,158.158 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:41:36,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:41:36,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:41:36,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:41:38,204.204 INFO    ] ================================================
[2026-06-27 05:41:38,219.219 INFO    ] Launching Daemon at Sat Jun 27 05:41:38 IST 2026
[2026-06-27 05:41:38,230.230 INFO    ] ================================================
[2026-06-27 05:41:38,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:41:38
[2026-06-27 05:41:38,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:41:39,047.047 INFO    ] Initializing speech engine...
[2026-06-27 05:41:39,055.055 INFO    ] 2026-06-27 05:41:39
[2026-06-27 05:41:39,270.270 INFO    ] 2026-06-27 05:41:39
[2026-06-27 05:41:39,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:41:39,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:41:39,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:41:39,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:41:39,697.697 INFO    ] time= 27/06/2026 05:41:39
[2026-06-27 05:41:39,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:41:39,726.726 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:41:39,795.795 INFO    ] No existing commands found in stream
[2026-06-27 05:41:44,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:41:44,804.804 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-27 05:41:46,393.393 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 05:41:46,395.395 INFO    ] Checking for system updates...
[2026-06-27 05:41:46,417.417 INFO    ] 200
[2026-06-27 05:41:46,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:41:46,448.448 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:41:46,449.449 INFO    ] No update needed
[2026-06-27 05:41:46,451.451 INFO    ] Checking for camera pi updates...
[2026-06-27 05:41:46,470.470 INFO    ] 200
[2026-06-27 05:41:46,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:41:46,495.495 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:41:46,637.637 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:41:46,639.639 INFO    ] No camera update needed
[2026-06-27 05:41:46,640.640 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:41:46,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:41:46,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:41:46,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:41:48,687.687 INFO    ] ================================================
[2026-06-27 05:41:48,702.702 INFO    ] Launching Daemon at Sat Jun 27 05:41:48 IST 2026
[2026-06-27 05:41:48,713.713 INFO    ] ================================================
[2026-06-27 05:41:49,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:41:49
[2026-06-27 05:41:49,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:41:49,557.557 INFO    ] Initializing speech engine...
[2026-06-27 05:41:49,561.561 INFO    ] 2026-06-27 05:41:49
[2026-06-27 05:41:49,780.780 INFO    ] 2026-06-27 05:41:49
[2026-06-27 05:41:49,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:41:49,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:41:50,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:41:50,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:41:50,209.209 INFO    ] time= 27/06/2026 05:41:50
[2026-06-27 05:41:50,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:41:50,237.237 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:41:50,303.303 INFO    ] No existing commands found in stream
[2026-06-27 05:41:55,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:41:55,317.317 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-27 05:41:58,366.366 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:41:58,367.367 INFO    ] Checking for system updates...
[2026-06-27 05:41:58,388.388 INFO    ] 200
[2026-06-27 05:41:58,390.390 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:41:58,420.420 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:41:58,422.422 INFO    ] No update needed
[2026-06-27 05:41:58,423.423 INFO    ] Checking for camera pi updates...
[2026-06-27 05:41:58,443.443 INFO    ] 200
[2026-06-27 05:41:58,444.444 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:41:58,468.468 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:41:58,507.507 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:41:58,509.509 INFO    ] No camera update needed
[2026-06-27 05:41:58,510.510 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:41:58,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:41:58,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:41:58,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:42:00,556.556 INFO    ] ================================================
[2026-06-27 05:42:00,571.571 INFO    ] Launching Daemon at Sat Jun 27 05:42:00 IST 2026
[2026-06-27 05:42:00,583.583 INFO    ] ================================================
[2026-06-27 05:42:00,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:42:00
[2026-06-27 05:42:01,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:42:01,373.373 INFO    ] Initializing speech engine...
[2026-06-27 05:42:01,376.376 INFO    ] 2026-06-27 05:42:01
[2026-06-27 05:42:01,595.595 INFO    ] 2026-06-27 05:42:01
[2026-06-27 05:42:01,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:42:01,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:42:01,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:42:01,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:42:01,952.952 INFO    ] time= 27/06/2026 05:42:01
[2026-06-27 05:42:01,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:42:01,956.956 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:42:02,009.009 INFO    ] No existing commands found in stream
[2026-06-27 05:42:07,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:42:07,021.021 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-27 05:42:09,556.556 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 05:42:09,557.557 INFO    ] Checking for system updates...
[2026-06-27 05:42:09,580.580 INFO    ] 200
[2026-06-27 05:42:09,581.581 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:42:09,611.611 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:42:09,612.612 INFO    ] No update needed
[2026-06-27 05:42:09,613.613 INFO    ] Checking for camera pi updates...
[2026-06-27 05:42:09,634.634 INFO    ] 200
[2026-06-27 05:42:09,635.635 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:42:09,658.658 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:42:09,697.697 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:42:09,699.699 INFO    ] No camera update needed
[2026-06-27 05:42:09,700.700 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:42:09,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:42:09,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:42:09,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:42:11,751.751 INFO    ] ================================================
[2026-06-27 05:42:11,766.766 INFO    ] Launching Daemon at Sat Jun 27 05:42:11 IST 2026
[2026-06-27 05:42:11,777.777 INFO    ] ================================================
[2026-06-27 05:42:12,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:42:12
[2026-06-27 05:42:12,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:42:12,557.557 INFO    ] Initializing speech engine...
[2026-06-27 05:42:12,562.562 INFO    ] 2026-06-27 05:42:12
[2026-06-27 05:42:12,777.777 INFO    ] 2026-06-27 05:42:12
[2026-06-27 05:42:12,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:42:12,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:42:13,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:42:13,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:42:13,197.197 INFO    ] time= 27/06/2026 05:42:13
[2026-06-27 05:42:13,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:42:13,225.225 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:42:13,292.292 INFO    ] No existing commands found in stream
[2026-06-27 05:42:18,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:42:18,304.304 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-27 05:42:21,379.379 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 05:42:21,380.380 INFO    ] Checking for system updates...
[2026-06-27 05:42:21,401.401 INFO    ] 200
[2026-06-27 05:42:21,403.403 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:42:21,433.433 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:42:21,434.434 INFO    ] No update needed
[2026-06-27 05:42:21,435.435 INFO    ] Checking for camera pi updates...
[2026-06-27 05:42:21,455.455 INFO    ] 200
[2026-06-27 05:42:21,457.457 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:42:21,482.482 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:42:21,504.504 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:42:21,506.506 INFO    ] No camera update needed
[2026-06-27 05:42:21,507.507 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:42:21,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:42:21,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:42:21,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:42:23,555.555 INFO    ] ================================================
[2026-06-27 05:42:23,570.570 INFO    ] Launching Daemon at Sat Jun 27 05:42:23 IST 2026
[2026-06-27 05:42:23,580.580 INFO    ] ================================================
[2026-06-27 05:42:23,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:42:23
[2026-06-27 05:42:24,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:42:24,379.379 INFO    ] Initializing speech engine...
[2026-06-27 05:42:24,388.388 INFO    ] 2026-06-27 05:42:24
[2026-06-27 05:42:24,599.599 INFO    ] 2026-06-27 05:42:24
[2026-06-27 05:42:24,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:42:24,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:42:24,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:42:24,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:42:25,027.027 INFO    ] time= 27/06/2026 05:42:24
[2026-06-27 05:42:25,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:42:25,055.055 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:42:25,123.123 INFO    ] No existing commands found in stream
[2026-06-27 05:42:30,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:42:30,135.135 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-27 05:42:30,872.872 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:42:30,874.874 INFO    ] Checking for system updates...
[2026-06-27 05:42:30,895.895 INFO    ] 200
[2026-06-27 05:42:30,897.897 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:42:30,928.928 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:42:30,929.929 INFO    ] No update needed
[2026-06-27 05:42:30,931.931 INFO    ] Checking for camera pi updates...
[2026-06-27 05:42:30,951.951 INFO    ] 200
[2026-06-27 05:42:30,953.953 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:42:30,977.977 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:42:31,017.017 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:42:31,019.019 INFO    ] No camera update needed
[2026-06-27 05:42:31,020.020 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:42:31,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:42:31,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:42:31,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:42:33,060.060 INFO    ] ================================================
[2026-06-27 05:42:33,075.075 INFO    ] Launching Daemon at Sat Jun 27 05:42:33 IST 2026
[2026-06-27 05:42:33,086.086 INFO    ] ================================================
[2026-06-27 05:42:33,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:42:33
[2026-06-27 05:42:33,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:42:33,877.877 INFO    ] Initializing speech engine...
[2026-06-27 05:42:33,881.881 INFO    ] 2026-06-27 05:42:33
[2026-06-27 05:42:34,111.111 INFO    ] 2026-06-27 05:42:34
[2026-06-27 05:42:34,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:42:34,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:42:34,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:42:34,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:42:34,534.534 INFO    ] time= 27/06/2026 05:42:34
[2026-06-27 05:42:34,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:42:34,595.595 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:42:34,666.666 INFO    ] No existing commands found in stream
[2026-06-27 05:42:39,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:42:39,679.679 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-27 05:42:41,574.574 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:42:41,576.576 INFO    ] Checking for system updates...
[2026-06-27 05:42:41,596.596 INFO    ] 200
[2026-06-27 05:42:41,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:42:41,630.630 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:42:41,632.632 INFO    ] No update needed
[2026-06-27 05:42:41,633.633 INFO    ] Checking for camera pi updates...
[2026-06-27 05:42:41,652.652 INFO    ] 200
[2026-06-27 05:42:41,654.654 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:42:41,677.677 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:42:41,714.714 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:42:41,715.715 INFO    ] No camera update needed
[2026-06-27 05:42:41,717.717 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:42:41,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:42:41,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:42:41,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:42:43,765.765 INFO    ] ================================================
[2026-06-27 05:42:43,780.780 INFO    ] Launching Daemon at Sat Jun 27 05:42:43 IST 2026
[2026-06-27 05:42:43,791.791 INFO    ] ================================================
[2026-06-27 05:42:44,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:42:44
[2026-06-27 05:42:44,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:42:44,588.588 INFO    ] Initializing speech engine...
[2026-06-27 05:42:44,599.599 INFO    ] 2026-06-27 05:42:44
[2026-06-27 05:42:44,801.801 INFO    ] 2026-06-27 05:42:44
[2026-06-27 05:42:44,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:42:45,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:42:45,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:42:45,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:42:45,243.243 INFO    ] time= 27/06/2026 05:42:45
[2026-06-27 05:42:45,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:42:45,250.250 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:42:45,315.315 INFO    ] No existing commands found in stream
[2026-06-27 05:42:50,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:42:50,329.329 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-27 05:42:51,182.182 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:42:51,183.183 INFO    ] Checking for system updates...
[2026-06-27 05:42:51,204.204 INFO    ] 200
[2026-06-27 05:42:51,205.205 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:42:51,236.236 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:42:51,237.237 INFO    ] No update needed
[2026-06-27 05:42:51,239.239 INFO    ] Checking for camera pi updates...
[2026-06-27 05:42:51,258.258 INFO    ] 200
[2026-06-27 05:42:51,259.259 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:42:51,283.283 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:42:51,324.324 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:42:51,326.326 INFO    ] No camera update needed
[2026-06-27 05:42:51,327.327 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:42:51,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:42:51,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:42:51,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:42:53,373.373 INFO    ] ================================================
[2026-06-27 05:42:53,388.388 INFO    ] Launching Daemon at Sat Jun 27 05:42:53 IST 2026
[2026-06-27 05:42:53,399.399 INFO    ] ================================================
[2026-06-27 05:42:53,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:42:53
[2026-06-27 05:42:54,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:42:54,187.187 INFO    ] Initializing speech engine...
[2026-06-27 05:42:54,197.197 INFO    ] 2026-06-27 05:42:54
[2026-06-27 05:42:54,404.404 INFO    ] 2026-06-27 05:42:54
[2026-06-27 05:42:54,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:42:54,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:42:54,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:42:54,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:42:54,824.824 INFO    ] time= 27/06/2026 05:42:54
[2026-06-27 05:42:54,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:42:54,854.854 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:42:54,918.918 INFO    ] No existing commands found in stream
[2026-06-27 05:42:59,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:42:59,932.932 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-27 05:43:01,332.332 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:43:01,339.339 INFO    ] Checking for system updates...
[2026-06-27 05:43:01,385.385 INFO    ] 200
[2026-06-27 05:43:01,388.388 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:43:01,444.444 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:43:01,447.447 INFO    ] No update needed
[2026-06-27 05:43:01,449.449 INFO    ] Checking for camera pi updates...
[2026-06-27 05:43:01,487.487 INFO    ] 200
[2026-06-27 05:43:01,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:43:01,546.546 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:43:01,575.575 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:43:01,577.577 INFO    ] No camera update needed
[2026-06-27 05:43:01,579.579 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:43:01,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:43:01,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:43:01,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:43:03,635.635 INFO    ] ================================================
[2026-06-27 05:43:03,650.650 INFO    ] Launching Daemon at Sat Jun 27 05:43:03 IST 2026
[2026-06-27 05:43:03,660.660 INFO    ] ================================================
[2026-06-27 05:43:04,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:43:04
[2026-06-27 05:43:04,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:43:04,536.536 INFO    ] Initializing speech engine...
[2026-06-27 05:43:04,540.540 INFO    ] 2026-06-27 05:43:04
[2026-06-27 05:43:04,752.752 INFO    ] 2026-06-27 05:43:04
[2026-06-27 05:43:04,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:43:04,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:43:04,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:43:05,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:43:05,177.177 INFO    ] time= 27/06/2026 05:43:05
[2026-06-27 05:43:05,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:43:05,213.213 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:43:05,281.281 INFO    ] No existing commands found in stream
[2026-06-27 05:43:10,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:43:10,293.293 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-27 05:43:12,064.064 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 05:43:12,065.065 INFO    ] Checking for system updates...
[2026-06-27 05:43:12,087.087 INFO    ] 200
[2026-06-27 05:43:12,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:43:12,121.121 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:43:12,122.122 INFO    ] No update needed
[2026-06-27 05:43:12,124.124 INFO    ] Checking for camera pi updates...
[2026-06-27 05:43:12,143.143 INFO    ] 200
[2026-06-27 05:43:12,145.145 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:43:12,169.169 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:43:12,210.210 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:43:12,211.211 INFO    ] No camera update needed
[2026-06-27 05:43:12,212.212 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:43:12,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:43:12,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:43:12,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:43:14,258.258 INFO    ] ================================================
[2026-06-27 05:43:14,272.272 INFO    ] Launching Daemon at Sat Jun 27 05:43:14 IST 2026
[2026-06-27 05:43:14,283.283 INFO    ] ================================================
[2026-06-27 05:43:14,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:43:14
[2026-06-27 05:43:14,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:43:15,079.079 INFO    ] Initializing speech engine...
[2026-06-27 05:43:15,090.090 INFO    ] 2026-06-27 05:43:15
[2026-06-27 05:43:15,309.309 INFO    ] 2026-06-27 05:43:15
[2026-06-27 05:43:15,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:43:15,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:43:15,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:43:15,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:43:15,752.752 INFO    ] time= 27/06/2026 05:43:15
[2026-06-27 05:43:15,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:43:15,792.792 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:43:15,896.896 INFO    ] No existing commands found in stream
[2026-06-27 05:43:20,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:43:20,908.908 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-27 05:43:24,557.557 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:43:24,558.558 INFO    ] Checking for system updates...
[2026-06-27 05:43:24,580.580 INFO    ] 200
[2026-06-27 05:43:24,581.581 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:43:24,615.615 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:43:24,616.616 INFO    ] No update needed
[2026-06-27 05:43:24,617.617 INFO    ] Checking for camera pi updates...
[2026-06-27 05:43:24,639.639 INFO    ] 200
[2026-06-27 05:43:24,640.640 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:43:24,666.666 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:43:24,706.706 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:43:24,708.708 INFO    ] No camera update needed
[2026-06-27 05:43:24,709.709 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:43:24,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:43:24,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:43:24,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:43:26,756.756 INFO    ] ================================================
[2026-06-27 05:43:26,771.771 INFO    ] Launching Daemon at Sat Jun 27 05:43:26 IST 2026
[2026-06-27 05:43:26,782.782 INFO    ] ================================================
[2026-06-27 05:43:27,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:43:27
[2026-06-27 05:43:27,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:43:27,626.626 INFO    ] Initializing speech engine...
[2026-06-27 05:43:27,631.631 INFO    ] 2026-06-27 05:43:27
[2026-06-27 05:43:27,835.835 INFO    ] 2026-06-27 05:43:27
[2026-06-27 05:43:27,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:43:28,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:43:28,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:43:28,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:43:28,249.249 INFO    ] time= 27/06/2026 05:43:28
[2026-06-27 05:43:28,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:43:28,281.281 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:43:28,372.372 INFO    ] No existing commands found in stream
[2026-06-27 05:43:33,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:43:33,389.389 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-27 05:43:33,901.901 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 05:43:33,903.903 INFO    ] Checking for system updates...
[2026-06-27 05:43:33,925.925 INFO    ] 200
[2026-06-27 05:43:33,926.926 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:43:33,957.957 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:43:33,958.958 INFO    ] No update needed
[2026-06-27 05:43:33,959.959 INFO    ] Checking for camera pi updates...
[2026-06-27 05:43:33,980.980 INFO    ] 200
[2026-06-27 05:43:33,981.981 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:43:34,004.004 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:43:34,044.044 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:43:34,046.046 INFO    ] No camera update needed
[2026-06-27 05:43:34,047.047 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:43:34,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:43:34,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:43:34,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:43:36,093.093 INFO    ] ================================================
[2026-06-27 05:43:36,109.109 INFO    ] Launching Daemon at Sat Jun 27 05:43:36 IST 2026
[2026-06-27 05:43:36,120.120 INFO    ] ================================================
[2026-06-27 05:43:36,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:43:36
[2026-06-27 05:43:36,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:43:36,908.908 INFO    ] Initializing speech engine...
[2026-06-27 05:43:36,915.915 INFO    ] 2026-06-27 05:43:36
[2026-06-27 05:43:37,129.129 INFO    ] 2026-06-27 05:43:37
[2026-06-27 05:43:37,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:43:37,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:43:37,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:43:37,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:43:37,547.547 INFO    ] time= 27/06/2026 05:43:37
[2026-06-27 05:43:37,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:43:37,577.577 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:43:37,644.644 INFO    ] No existing commands found in stream
[2026-06-27 05:43:42,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:43:42,656.656 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-27 05:43:43,328.328 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 05:43:43,330.330 INFO    ] Checking for system updates...
[2026-06-27 05:43:43,350.350 INFO    ] 200
[2026-06-27 05:43:43,351.351 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:43:43,384.384 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:43:43,385.385 INFO    ] No update needed
[2026-06-27 05:43:43,387.387 INFO    ] Checking for camera pi updates...
[2026-06-27 05:43:43,406.406 INFO    ] 200
[2026-06-27 05:43:43,408.408 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:43:43,431.431 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:43:43,470.470 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:43:43,472.472 INFO    ] No camera update needed
[2026-06-27 05:43:43,473.473 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:43:43,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:43:43,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:43:43,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:43:45,518.518 INFO    ] ================================================
[2026-06-27 05:43:45,542.542 INFO    ] Launching Daemon at Sat Jun 27 05:43:45 IST 2026
[2026-06-27 05:43:45,557.557 INFO    ] ================================================
[2026-06-27 05:43:45,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:43:45
[2026-06-27 05:43:46,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:43:46,404.404 INFO    ] Initializing speech engine...
[2026-06-27 05:43:46,409.409 INFO    ] 2026-06-27 05:43:46
[2026-06-27 05:43:46,616.616 INFO    ] 2026-06-27 05:43:46
[2026-06-27 05:43:46,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:43:46,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:43:46,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:43:46,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:43:47,038.038 INFO    ] time= 27/06/2026 05:43:46
[2026-06-27 05:43:47,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:43:47,068.068 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:43:47,135.135 INFO    ] No existing commands found in stream
[2026-06-27 05:43:52,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:43:52,148.148 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-27 05:43:52,640.640 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:43:52,642.642 INFO    ] Checking for system updates...
[2026-06-27 05:43:52,664.664 INFO    ] 200
[2026-06-27 05:43:52,665.665 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:43:52,696.696 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:43:52,697.697 INFO    ] No update needed
[2026-06-27 05:43:52,699.699 INFO    ] Checking for camera pi updates...
[2026-06-27 05:43:52,720.720 INFO    ] 200
[2026-06-27 05:43:52,721.721 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:43:52,748.748 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:43:52,892.892 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:43:52,894.894 INFO    ] No camera update needed
[2026-06-27 05:43:52,895.895 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:43:52,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:43:52,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:43:52,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:43:54,944.944 INFO    ] ================================================
[2026-06-27 05:43:54,959.959 INFO    ] Launching Daemon at Sat Jun 27 05:43:54 IST 2026
[2026-06-27 05:43:54,970.970 INFO    ] ================================================
[2026-06-27 05:43:55,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:43:55
[2026-06-27 05:43:55,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:43:55,790.790 INFO    ] Initializing speech engine...
[2026-06-27 05:43:55,800.800 INFO    ] 2026-06-27 05:43:55
[2026-06-27 05:43:56,006.006 INFO    ] 2026-06-27 05:43:55
[2026-06-27 05:43:56,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:43:56,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:43:56,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:43:56,366.366 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:43:56,423.423 INFO    ] time= 27/06/2026 05:43:56
[2026-06-27 05:43:56,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:43:56,453.453 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:43:56,518.518 INFO    ] No existing commands found in stream
[2026-06-27 05:44:01,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:44:01,531.531 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-27 05:44:03,176.176 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:44:03,177.177 INFO    ] Checking for system updates...
[2026-06-27 05:44:03,198.198 INFO    ] 200
[2026-06-27 05:44:03,199.199 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:44:03,232.232 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:44:03,233.233 INFO    ] No update needed
[2026-06-27 05:44:03,234.234 INFO    ] Checking for camera pi updates...
[2026-06-27 05:44:03,256.256 INFO    ] 200
[2026-06-27 05:44:03,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:44:03,281.281 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:44:03,321.321 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:44:03,322.322 INFO    ] No camera update needed
[2026-06-27 05:44:03,324.324 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:44:03,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:44:03,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:44:03,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:44:05,369.369 INFO    ] ================================================
[2026-06-27 05:44:05,385.385 INFO    ] Launching Daemon at Sat Jun 27 05:44:05 IST 2026
[2026-06-27 05:44:05,395.395 INFO    ] ================================================
[2026-06-27 05:44:05,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:44:05
[2026-06-27 05:44:06,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:44:06,193.193 INFO    ] Initializing speech engine...
[2026-06-27 05:44:06,196.196 INFO    ] 2026-06-27 05:44:06
[2026-06-27 05:44:06,419.419 INFO    ] 2026-06-27 05:44:06
[2026-06-27 05:44:06,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:44:06,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:44:06,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:44:06,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:44:06,778.778 INFO    ] time= 27/06/2026 05:44:06
[2026-06-27 05:44:06,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:44:06,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:44:06,949.949 INFO    ] No existing commands found in stream
[2026-06-27 05:44:11,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:44:11,959.959 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-27 05:44:15,990.990 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 05:44:15,991.991 INFO    ] Checking for system updates...
[2026-06-27 05:44:16,015.015 INFO    ] 200
[2026-06-27 05:44:16,017.017 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:44:16,048.048 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:44:16,049.049 INFO    ] No update needed
[2026-06-27 05:44:16,051.051 INFO    ] Checking for camera pi updates...
[2026-06-27 05:44:16,072.072 INFO    ] 200
[2026-06-27 05:44:16,074.074 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:44:16,099.099 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:44:16,137.137 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:44:16,138.138 INFO    ] No camera update needed
[2026-06-27 05:44:16,139.139 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:44:16,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:44:16,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:44:16,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:44:18,190.190 INFO    ] ================================================
[2026-06-27 05:44:18,206.206 INFO    ] Launching Daemon at Sat Jun 27 05:44:18 IST 2026
[2026-06-27 05:44:18,216.216 INFO    ] ================================================
[2026-06-27 05:44:18,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:44:18
[2026-06-27 05:44:18,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:44:19,076.076 INFO    ] Initializing speech engine...
[2026-06-27 05:44:19,082.082 INFO    ] 2026-06-27 05:44:19
[2026-06-27 05:44:19,294.294 INFO    ] 2026-06-27 05:44:19
[2026-06-27 05:44:19,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:44:19,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:44:19,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:44:19,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:44:19,734.734 INFO    ] time= 27/06/2026 05:44:19
[2026-06-27 05:44:19,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:44:19,751.751 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:44:19,819.819 INFO    ] No existing commands found in stream
[2026-06-27 05:44:24,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:44:24,832.832 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-27 05:44:26,366.366 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 05:44:26,368.368 INFO    ] Checking for system updates...
[2026-06-27 05:44:26,389.389 INFO    ] 200
[2026-06-27 05:44:26,390.390 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:44:26,420.420 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:44:26,421.421 INFO    ] No update needed
[2026-06-27 05:44:26,423.423 INFO    ] Checking for camera pi updates...
[2026-06-27 05:44:26,443.443 INFO    ] 200
[2026-06-27 05:44:26,444.444 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:44:26,470.470 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:44:26,507.507 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:44:26,509.509 INFO    ] No camera update needed
[2026-06-27 05:44:26,510.510 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:44:26,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:44:26,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:44:26,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:44:28,556.556 INFO    ] ================================================
[2026-06-27 05:44:28,571.571 INFO    ] Launching Daemon at Sat Jun 27 05:44:28 IST 2026
[2026-06-27 05:44:28,582.582 INFO    ] ================================================
[2026-06-27 05:44:28,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:44:28
[2026-06-27 05:44:29,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:44:29,454.454 INFO    ] Initializing speech engine...
[2026-06-27 05:44:29,458.458 INFO    ] 2026-06-27 05:44:29
[2026-06-27 05:44:29,668.668 INFO    ] 2026-06-27 05:44:29
[2026-06-27 05:44:29,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:44:29,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:44:29,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:44:30,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:44:30,087.087 INFO    ] time= 27/06/2026 05:44:30
[2026-06-27 05:44:30,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:44:30,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:44:30,184.184 INFO    ] No existing commands found in stream
[2026-06-27 05:44:35,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:44:35,202.202 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-27 05:44:36,821.821 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:44:36,823.823 INFO    ] Checking for system updates...
[2026-06-27 05:44:36,845.845 INFO    ] 200
[2026-06-27 05:44:36,846.846 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:44:36,879.879 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:44:36,881.881 INFO    ] No update needed
[2026-06-27 05:44:36,882.882 INFO    ] Checking for camera pi updates...
[2026-06-27 05:44:36,902.902 INFO    ] 200
[2026-06-27 05:44:36,903.903 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:44:36,927.927 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:44:36,968.968 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:44:36,970.970 INFO    ] No camera update needed
[2026-06-27 05:44:36,971.971 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:44:36,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:44:36,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:44:36,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:44:39,016.016 INFO    ] ================================================
[2026-06-27 05:44:39,031.031 INFO    ] Launching Daemon at Sat Jun 27 05:44:39 IST 2026
[2026-06-27 05:44:39,041.041 INFO    ] ================================================
[2026-06-27 05:44:39,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:44:39
[2026-06-27 05:44:39,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:44:39,865.865 INFO    ] Initializing speech engine...
[2026-06-27 05:44:39,873.873 INFO    ] 2026-06-27 05:44:39
[2026-06-27 05:44:40,080.080 INFO    ] 2026-06-27 05:44:40
[2026-06-27 05:44:40,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:44:40,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:44:40,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:44:40,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:44:40,498.498 INFO    ] time= 27/06/2026 05:44:40
[2026-06-27 05:44:40,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:44:40,528.528 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:44:40,594.594 INFO    ] No existing commands found in stream
[2026-06-27 05:44:45,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:44:45,606.606 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-27 05:44:48,849.849 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:44:48,850.850 INFO    ] Checking for system updates...
[2026-06-27 05:44:48,875.875 INFO    ] 200
[2026-06-27 05:44:48,877.877 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:44:48,909.909 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:44:48,911.911 INFO    ] No update needed
[2026-06-27 05:44:48,912.912 INFO    ] Checking for camera pi updates...
[2026-06-27 05:44:48,932.932 INFO    ] 200
[2026-06-27 05:44:48,934.934 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:44:48,960.960 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:44:49,002.002 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:44:49,004.004 INFO    ] No camera update needed
[2026-06-27 05:44:49,005.005 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:44:49,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:44:49,010.010 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:44:49,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:44:51,052.052 INFO    ] ================================================
[2026-06-27 05:44:51,068.068 INFO    ] Launching Daemon at Sat Jun 27 05:44:51 IST 2026
[2026-06-27 05:44:51,078.078 INFO    ] ================================================
[2026-06-27 05:44:51,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:44:51
[2026-06-27 05:44:51,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:44:51,908.908 INFO    ] Initializing speech engine...
[2026-06-27 05:44:51,913.913 INFO    ] 2026-06-27 05:44:51
[2026-06-27 05:44:52,120.120 INFO    ] 2026-06-27 05:44:52
[2026-06-27 05:44:52,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:44:52,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:44:52,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:44:52,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:44:52,540.540 INFO    ] time= 27/06/2026 05:44:52
[2026-06-27 05:44:52,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:44:52,569.569 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:44:52,636.636 INFO    ] No existing commands found in stream
[2026-06-27 05:44:57,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:44:57,653.653 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-27 05:45:00,630.630 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 05:45:00,632.632 INFO    ] Checking for system updates...
[2026-06-27 05:45:00,653.653 INFO    ] 200
[2026-06-27 05:45:00,655.655 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:45:00,686.686 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:45:00,687.687 INFO    ] No update needed
[2026-06-27 05:45:00,689.689 INFO    ] Checking for camera pi updates...
[2026-06-27 05:45:00,710.710 INFO    ] 200
[2026-06-27 05:45:00,711.711 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:45:00,738.738 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:45:00,775.775 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:45:00,777.777 INFO    ] No camera update needed
[2026-06-27 05:45:00,778.778 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:45:00,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:45:00,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:45:00,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:45:02,819.819 INFO    ] ================================================
[2026-06-27 05:45:02,835.835 INFO    ] Launching Daemon at Sat Jun 27 05:45:02 IST 2026
[2026-06-27 05:45:02,845.845 INFO    ] ================================================
[2026-06-27 05:45:03,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:45:03
[2026-06-27 05:45:03,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:45:03,655.655 INFO    ] Initializing speech engine...
[2026-06-27 05:45:03,660.660 INFO    ] 2026-06-27 05:45:03
[2026-06-27 05:45:03,866.866 INFO    ] 2026-06-27 05:45:03
[2026-06-27 05:45:03,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:45:04,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:45:04,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:45:04,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:45:04,286.286 INFO    ] time= 27/06/2026 05:45:04
[2026-06-27 05:45:04,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:45:04,316.316 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:45:04,382.382 INFO    ] No existing commands found in stream
[2026-06-27 05:45:09,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:45:09,394.394 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-27 05:45:12,141.141 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 05:45:12,143.143 INFO    ] Checking for system updates...
[2026-06-27 05:45:12,164.164 INFO    ] 200
[2026-06-27 05:45:12,165.165 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:45:12,196.196 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:45:12,198.198 INFO    ] No update needed
[2026-06-27 05:45:12,199.199 INFO    ] Checking for camera pi updates...
[2026-06-27 05:45:12,220.220 INFO    ] 200
[2026-06-27 05:45:12,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:45:12,247.247 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:45:12,285.285 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:45:12,286.286 INFO    ] No camera update needed
[2026-06-27 05:45:12,287.287 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:45:12,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:45:12,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:45:12,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:45:14,333.333 INFO    ] ================================================
[2026-06-27 05:45:14,348.348 INFO    ] Launching Daemon at Sat Jun 27 05:45:14 IST 2026
[2026-06-27 05:45:14,359.359 INFO    ] ================================================
[2026-06-27 05:45:14,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:45:14
[2026-06-27 05:45:15,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:45:15,165.165 INFO    ] Initializing speech engine...
[2026-06-27 05:45:15,170.170 INFO    ] 2026-06-27 05:45:15
[2026-06-27 05:45:15,373.373 INFO    ] 2026-06-27 05:45:15
[2026-06-27 05:45:15,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:45:15,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:45:15,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:45:15,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:45:15,790.790 INFO    ] time= 27/06/2026 05:45:15
[2026-06-27 05:45:15,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:45:15,820.820 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:45:15,886.886 INFO    ] No existing commands found in stream
[2026-06-27 05:45:20,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:45:20,899.899 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-27 05:45:22,893.893 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:45:22,895.895 INFO    ] Checking for system updates...
[2026-06-27 05:45:22,916.916 INFO    ] 200
[2026-06-27 05:45:22,917.917 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:45:22,948.948 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:45:22,949.949 INFO    ] No update needed
[2026-06-27 05:45:22,951.951 INFO    ] Checking for camera pi updates...
[2026-06-27 05:45:22,972.972 INFO    ] 200
[2026-06-27 05:45:22,973.973 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:45:22,997.997 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:45:23,035.035 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:45:23,036.036 INFO    ] No camera update needed
[2026-06-27 05:45:23,037.037 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:45:23,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:45:23,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:45:23,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:45:25,084.084 INFO    ] ================================================
[2026-06-27 05:45:25,100.100 INFO    ] Launching Daemon at Sat Jun 27 05:45:25 IST 2026
[2026-06-27 05:45:25,110.110 INFO    ] ================================================
[2026-06-27 05:45:25,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:45:25
[2026-06-27 05:45:25,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:45:25,995.995 INFO    ] Initializing speech engine...
[2026-06-27 05:45:26,007.007 INFO    ] 2026-06-27 05:45:26
[2026-06-27 05:45:26,208.208 INFO    ] 2026-06-27 05:45:26
[2026-06-27 05:45:26,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:45:26,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:45:26,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:45:26,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:45:26,620.620 INFO    ] time= 27/06/2026 05:45:26
[2026-06-27 05:45:26,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:45:26,659.659 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:45:26,726.726 INFO    ] No existing commands found in stream
[2026-06-27 05:45:31,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:45:31,737.737 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-27 05:45:33,564.564 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 05:45:33,566.566 INFO    ] Checking for system updates...
[2026-06-27 05:45:33,587.587 INFO    ] 200
[2026-06-27 05:45:33,589.589 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:45:33,620.620 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:45:33,622.622 INFO    ] No update needed
[2026-06-27 05:45:33,623.623 INFO    ] Checking for camera pi updates...
[2026-06-27 05:45:33,644.644 INFO    ] 200
[2026-06-27 05:45:33,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:45:33,672.672 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:45:33,713.713 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:45:33,715.715 INFO    ] No camera update needed
[2026-06-27 05:45:33,716.716 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:45:33,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:45:33,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:45:33,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:45:35,765.765 INFO    ] ================================================
[2026-06-27 05:45:35,780.780 INFO    ] Launching Daemon at Sat Jun 27 05:45:35 IST 2026
[2026-06-27 05:45:35,791.791 INFO    ] ================================================
[2026-06-27 05:45:36,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:45:36
[2026-06-27 05:45:36,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:45:36,601.601 INFO    ] Initializing speech engine...
[2026-06-27 05:45:36,606.606 INFO    ] 2026-06-27 05:45:36
[2026-06-27 05:45:36,809.809 INFO    ] 2026-06-27 05:45:36
[2026-06-27 05:45:36,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:45:37,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:45:37,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:45:37,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:45:37,250.250 INFO    ] time= 27/06/2026 05:45:37
[2026-06-27 05:45:37,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:45:37,258.258 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:45:37,324.324 INFO    ] No existing commands found in stream
[2026-06-27 05:45:42,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:45:42,337.337 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-27 05:45:43,923.923 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 05:45:43,925.925 INFO    ] Checking for system updates...
[2026-06-27 05:45:43,947.947 INFO    ] 200
[2026-06-27 05:45:43,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:45:43,979.979 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:45:43,981.981 INFO    ] No update needed
[2026-06-27 05:45:43,982.982 INFO    ] Checking for camera pi updates...
[2026-06-27 05:45:44,003.003 INFO    ] 200
[2026-06-27 05:45:44,004.004 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:45:44,028.028 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:45:44,068.068 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:45:44,069.069 INFO    ] No camera update needed
[2026-06-27 05:45:44,071.071 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:45:44,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:45:44,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:45:44,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:45:46,117.117 INFO    ] ================================================
[2026-06-27 05:45:46,133.133 INFO    ] Launching Daemon at Sat Jun 27 05:45:46 IST 2026
[2026-06-27 05:45:46,145.145 INFO    ] ================================================
[2026-06-27 05:45:46,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:45:46
[2026-06-27 05:45:46,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:45:46,971.971 INFO    ] Initializing speech engine...
[2026-06-27 05:45:46,977.977 INFO    ] 2026-06-27 05:45:46
[2026-06-27 05:45:47,185.185 INFO    ] 2026-06-27 05:45:47
[2026-06-27 05:45:47,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:45:47,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:45:47,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:45:47,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:45:47,608.608 INFO    ] time= 27/06/2026 05:45:47
[2026-06-27 05:45:47,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:45:47,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:45:47,706.706 INFO    ] No existing commands found in stream
[2026-06-27 05:45:52,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:45:52,724.724 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-27 05:45:56,292.292 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:45:56,294.294 INFO    ] Checking for system updates...
[2026-06-27 05:45:56,318.318 INFO    ] 200
[2026-06-27 05:45:56,319.319 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:45:56,357.357 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:45:56,358.358 INFO    ] No update needed
[2026-06-27 05:45:56,360.360 INFO    ] Checking for camera pi updates...
[2026-06-27 05:45:56,380.380 INFO    ] 200
[2026-06-27 05:45:56,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:45:56,405.405 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:45:56,545.545 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:45:56,546.546 INFO    ] No camera update needed
[2026-06-27 05:45:56,547.547 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:45:56,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:45:56,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:45:56,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:45:58,595.595 INFO    ] ================================================
[2026-06-27 05:45:58,612.612 INFO    ] Launching Daemon at Sat Jun 27 05:45:58 IST 2026
[2026-06-27 05:45:58,623.623 INFO    ] ================================================
[2026-06-27 05:45:58,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:45:58
[2026-06-27 05:45:59,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:45:59,475.475 INFO    ] Initializing speech engine...
[2026-06-27 05:45:59,480.480 INFO    ] 2026-06-27 05:45:59
[2026-06-27 05:45:59,686.686 INFO    ] 2026-06-27 05:45:59
[2026-06-27 05:45:59,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:45:59,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:45:59,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:46:00,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:46:00,127.127 INFO    ] time= 27/06/2026 05:46:00
[2026-06-27 05:46:00,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:46:00,134.134 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:46:00,201.201 INFO    ] No existing commands found in stream
[2026-06-27 05:46:05,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:46:05,213.213 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-27 05:46:09,433.433 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 05:46:09,436.436 INFO    ] Checking for system updates...
[2026-06-27 05:46:09,456.456 INFO    ] 200
[2026-06-27 05:46:09,457.457 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:46:09,488.488 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:46:09,489.489 INFO    ] No update needed
[2026-06-27 05:46:09,491.491 INFO    ] Checking for camera pi updates...
[2026-06-27 05:46:09,513.513 INFO    ] 200
[2026-06-27 05:46:09,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:46:09,538.538 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:46:09,579.579 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:46:09,580.580 INFO    ] No camera update needed
[2026-06-27 05:46:09,581.581 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:46:09,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:46:09,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:46:09,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:46:11,627.627 INFO    ] ================================================
[2026-06-27 05:46:11,643.643 INFO    ] Launching Daemon at Sat Jun 27 05:46:11 IST 2026
[2026-06-27 05:46:11,654.654 INFO    ] ================================================
[2026-06-27 05:46:12,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:46:12
[2026-06-27 05:46:12,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:46:12,550.550 INFO    ] Initializing speech engine...
[2026-06-27 05:46:12,560.560 INFO    ] 2026-06-27 05:46:12
[2026-06-27 05:46:12,766.766 INFO    ] 2026-06-27 05:46:12
[2026-06-27 05:46:12,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:46:12,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:46:12,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:46:13,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:46:13,205.205 INFO    ] time= 27/06/2026 05:46:13
[2026-06-27 05:46:13,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:46:13,216.216 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:46:13,284.284 INFO    ] No existing commands found in stream
[2026-06-27 05:46:18,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:46:18,296.296 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-27 05:46:19,259.259 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 05:46:19,261.261 INFO    ] Checking for system updates...
[2026-06-27 05:46:19,282.282 INFO    ] 200
[2026-06-27 05:46:19,283.283 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:46:19,314.314 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:46:19,315.315 INFO    ] No update needed
[2026-06-27 05:46:19,316.316 INFO    ] Checking for camera pi updates...
[2026-06-27 05:46:19,336.336 INFO    ] 200
[2026-06-27 05:46:19,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:46:19,361.361 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:46:19,406.406 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:46:19,407.407 INFO    ] No camera update needed
[2026-06-27 05:46:19,409.409 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:46:19,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:46:19,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:46:19,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:46:21,459.459 INFO    ] ================================================
[2026-06-27 05:46:21,474.474 INFO    ] Launching Daemon at Sat Jun 27 05:46:21 IST 2026
[2026-06-27 05:46:21,486.486 INFO    ] ================================================
[2026-06-27 05:46:21,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:46:21
[2026-06-27 05:46:22,234.234 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:46:22,391.391 INFO    ] Initializing speech engine...
[2026-06-27 05:46:22,397.397 INFO    ] 2026-06-27 05:46:22
[2026-06-27 05:46:22,607.607 INFO    ] 2026-06-27 05:46:22
[2026-06-27 05:46:22,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:46:22,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:46:22,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:46:22,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:46:23,031.031 INFO    ] time= 27/06/2026 05:46:22
[2026-06-27 05:46:23,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:46:23,061.061 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:46:23,127.127 INFO    ] No existing commands found in stream
[2026-06-27 05:46:28,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:46:28,142.142 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-27 05:46:31,322.322 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:46:31,324.324 INFO    ] Checking for system updates...
[2026-06-27 05:46:31,346.346 INFO    ] 200
[2026-06-27 05:46:31,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:46:31,378.378 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:46:31,380.380 INFO    ] No update needed
[2026-06-27 05:46:31,381.381 INFO    ] Checking for camera pi updates...
[2026-06-27 05:46:31,403.403 INFO    ] 200
[2026-06-27 05:46:31,404.404 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:46:31,428.428 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:46:31,452.452 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:46:31,454.454 INFO    ] No camera update needed
[2026-06-27 05:46:31,456.456 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:46:31,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:46:31,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:46:31,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:46:33,498.498 INFO    ] ================================================
[2026-06-27 05:46:33,513.513 INFO    ] Launching Daemon at Sat Jun 27 05:46:33 IST 2026
[2026-06-27 05:46:33,524.524 INFO    ] ================================================
[2026-06-27 05:46:33,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:46:33
[2026-06-27 05:46:34,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:46:34,333.333 INFO    ] Initializing speech engine...
[2026-06-27 05:46:34,338.338 INFO    ] 2026-06-27 05:46:34
[2026-06-27 05:46:34,543.543 INFO    ] 2026-06-27 05:46:34
[2026-06-27 05:46:34,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:46:34,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:46:34,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:46:34,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:46:34,955.955 INFO    ] time= 27/06/2026 05:46:34
[2026-06-27 05:46:34,987.987 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:46:34,994.994 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:46:35,061.061 INFO    ] No existing commands found in stream
[2026-06-27 05:46:40,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:46:40,072.072 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-27 05:46:43,316.316 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:46:43,318.318 INFO    ] Checking for system updates...
[2026-06-27 05:46:43,339.339 INFO    ] 200
[2026-06-27 05:46:43,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:46:43,373.373 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:46:43,375.375 INFO    ] No update needed
[2026-06-27 05:46:43,376.376 INFO    ] Checking for camera pi updates...
[2026-06-27 05:46:43,396.396 INFO    ] 200
[2026-06-27 05:46:43,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:46:43,420.420 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:46:43,464.464 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:46:43,465.465 INFO    ] No camera update needed
[2026-06-27 05:46:43,466.466 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:46:43,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:46:43,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:46:43,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:46:45,515.515 INFO    ] ================================================
[2026-06-27 05:46:45,530.530 INFO    ] Launching Daemon at Sat Jun 27 05:46:45 IST 2026
[2026-06-27 05:46:45,542.542 INFO    ] ================================================
[2026-06-27 05:46:45,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:46:45
[2026-06-27 05:46:46,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:46:46,359.359 INFO    ] Initializing speech engine...
[2026-06-27 05:46:46,373.373 INFO    ] 2026-06-27 05:46:46
[2026-06-27 05:46:46,596.596 INFO    ] 2026-06-27 05:46:46
[2026-06-27 05:46:46,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:46:46,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:46:46,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:46:46,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:46:47,063.063 INFO    ] time= 27/06/2026 05:46:46
[2026-06-27 05:46:47,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:46:47,098.098 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:46:47,199.199 INFO    ] No existing commands found in stream
[2026-06-27 05:46:52,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:46:52,216.216 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-27 05:46:54,815.815 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:46:54,817.817 INFO    ] Checking for system updates...
[2026-06-27 05:46:54,838.838 INFO    ] 200
[2026-06-27 05:46:54,839.839 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:46:54,870.870 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:46:54,872.872 INFO    ] No update needed
[2026-06-27 05:46:54,873.873 INFO    ] Checking for camera pi updates...
[2026-06-27 05:46:54,894.894 INFO    ] 200
[2026-06-27 05:46:54,895.895 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:46:54,919.919 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:46:54,941.941 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:46:54,942.942 INFO    ] No camera update needed
[2026-06-27 05:46:54,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:46:54,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:46:54,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:46:54,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:46:56,993.993 INFO    ] ================================================
[2026-06-27 05:46:57,008.008 INFO    ] Launching Daemon at Sat Jun 27 05:46:57 IST 2026
[2026-06-27 05:46:57,020.020 INFO    ] ================================================
[2026-06-27 05:46:57,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:46:57
[2026-06-27 05:46:57,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:46:57,911.911 INFO    ] Initializing speech engine...
[2026-06-27 05:46:57,916.916 INFO    ] 2026-06-27 05:46:57
[2026-06-27 05:46:58,123.123 INFO    ] 2026-06-27 05:46:58
[2026-06-27 05:46:58,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:46:58,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:46:58,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:46:58,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:46:58,545.545 INFO    ] time= 27/06/2026 05:46:58
[2026-06-27 05:46:58,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:46:58,578.578 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:46:58,646.646 INFO    ] No existing commands found in stream
[2026-06-27 05:47:03,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:47:03,664.664 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-27 05:47:07,354.354 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:47:07,356.356 INFO    ] Checking for system updates...
[2026-06-27 05:47:07,377.377 INFO    ] 200
[2026-06-27 05:47:07,378.378 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:47:07,409.409 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:47:07,411.411 INFO    ] No update needed
[2026-06-27 05:47:07,412.412 INFO    ] Checking for camera pi updates...
[2026-06-27 05:47:07,432.432 INFO    ] 200
[2026-06-27 05:47:07,433.433 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:47:07,457.457 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:47:07,498.498 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:47:07,500.500 INFO    ] No camera update needed
[2026-06-27 05:47:07,501.501 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:47:07,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:47:07,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:47:07,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:47:09,536.536 INFO    ] ================================================
[2026-06-27 05:47:09,544.544 INFO    ] Launching Daemon at Sat Jun 27 05:47:09 IST 2026
[2026-06-27 05:47:09,551.551 INFO    ] ================================================
[2026-06-27 05:47:09,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:47:09
[2026-06-27 05:47:10,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:47:10,367.367 INFO    ] Initializing speech engine...
[2026-06-27 05:47:10,371.371 INFO    ] 2026-06-27 05:47:10
[2026-06-27 05:47:10,575.575 INFO    ] 2026-06-27 05:47:10
[2026-06-27 05:47:10,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:47:10,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:47:10,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:47:10,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:47:10,966.966 INFO    ] time= 27/06/2026 05:47:10
[2026-06-27 05:47:11,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:47:11,078.078 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:47:11,183.183 INFO    ] No existing commands found in stream
[2026-06-27 05:47:16,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:47:16,196.196 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-27 05:47:19,671.671 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 05:47:19,673.673 INFO    ] Checking for system updates...
[2026-06-27 05:47:19,695.695 INFO    ] 200
[2026-06-27 05:47:19,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:47:19,728.728 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:47:19,729.729 INFO    ] No update needed
[2026-06-27 05:47:19,730.730 INFO    ] Checking for camera pi updates...
[2026-06-27 05:47:19,751.751 INFO    ] 200
[2026-06-27 05:47:19,752.752 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:47:19,776.776 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:47:19,821.821 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:47:19,822.822 INFO    ] No camera update needed
[2026-06-27 05:47:19,824.824 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:47:19,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:47:19,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:47:19,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:47:21,875.875 INFO    ] ================================================
[2026-06-27 05:47:21,891.891 INFO    ] Launching Daemon at Sat Jun 27 05:47:21 IST 2026
[2026-06-27 05:47:21,902.902 INFO    ] ================================================
[2026-06-27 05:47:22,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:47:22
[2026-06-27 05:47:22,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:47:22,742.742 INFO    ] Initializing speech engine...
[2026-06-27 05:47:22,755.755 INFO    ] 2026-06-27 05:47:22
[2026-06-27 05:47:22,977.977 INFO    ] 2026-06-27 05:47:22
[2026-06-27 05:47:23,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:47:23,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:47:23,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:47:23,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:47:23,421.421 INFO    ] time= 27/06/2026 05:47:23
[2026-06-27 05:47:23,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:47:23,449.449 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:47:23,516.516 INFO    ] No existing commands found in stream
[2026-06-27 05:47:28,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:47:28,528.528 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-27 05:47:32,645.645 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:47:32,646.646 INFO    ] Checking for system updates...
[2026-06-27 05:47:32,667.667 INFO    ] 200
[2026-06-27 05:47:32,668.668 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:47:32,702.702 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:47:32,703.703 INFO    ] No update needed
[2026-06-27 05:47:32,704.704 INFO    ] Checking for camera pi updates...
[2026-06-27 05:47:32,724.724 INFO    ] 200
[2026-06-27 05:47:32,725.725 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:47:32,749.749 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:47:32,772.772 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:47:32,773.773 INFO    ] No camera update needed
[2026-06-27 05:47:32,774.774 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:47:32,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:47:32,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:47:32,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:47:34,821.821 INFO    ] ================================================
[2026-06-27 05:47:34,837.837 INFO    ] Launching Daemon at Sat Jun 27 05:47:34 IST 2026
[2026-06-27 05:47:34,848.848 INFO    ] ================================================
[2026-06-27 05:47:35,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:47:35
[2026-06-27 05:47:35,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:47:35,654.654 INFO    ] Initializing speech engine...
[2026-06-27 05:47:35,659.659 INFO    ] 2026-06-27 05:47:35
[2026-06-27 05:47:35,863.863 INFO    ] 2026-06-27 05:47:35
[2026-06-27 05:47:35,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:47:36,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:47:36,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:47:36,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:47:36,271.271 INFO    ] time= 27/06/2026 05:47:36
[2026-06-27 05:47:36,301.301 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:47:36,311.311 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:47:36,381.381 INFO    ] No existing commands found in stream
[2026-06-27 05:47:41,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:47:41,394.394 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-27 05:47:44,627.627 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 05:47:44,629.629 INFO    ] Checking for system updates...
[2026-06-27 05:47:44,649.649 INFO    ] 200
[2026-06-27 05:47:44,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:47:44,681.681 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:47:44,682.682 INFO    ] No update needed
[2026-06-27 05:47:44,684.684 INFO    ] Checking for camera pi updates...
[2026-06-27 05:47:44,704.704 INFO    ] 200
[2026-06-27 05:47:44,705.705 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:47:44,729.729 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:47:44,772.772 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:47:44,774.774 INFO    ] No camera update needed
[2026-06-27 05:47:44,775.775 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:47:44,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:47:44,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:47:44,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:47:46,820.820 INFO    ] ================================================
[2026-06-27 05:47:46,836.836 INFO    ] Launching Daemon at Sat Jun 27 05:47:46 IST 2026
[2026-06-27 05:47:46,847.847 INFO    ] ================================================
[2026-06-27 05:47:47,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:47:47
[2026-06-27 05:47:47,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:47:47,706.706 INFO    ] Initializing speech engine...
[2026-06-27 05:47:47,716.716 INFO    ] 2026-06-27 05:47:47
[2026-06-27 05:47:47,939.939 INFO    ] 2026-06-27 05:47:47
[2026-06-27 05:47:47,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:47:48,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:47:48,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:47:48,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:47:48,378.378 INFO    ] time= 27/06/2026 05:47:48
[2026-06-27 05:47:48,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:47:48,425.425 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:47:48,529.529 INFO    ] No existing commands found in stream
[2026-06-27 05:47:53,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:47:53,541.541 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-27 05:47:58,272.272 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:47:58,274.274 INFO    ] Checking for system updates...
[2026-06-27 05:47:58,296.296 INFO    ] 200
[2026-06-27 05:47:58,297.297 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:47:58,328.328 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:47:58,330.330 INFO    ] No update needed
[2026-06-27 05:47:58,331.331 INFO    ] Checking for camera pi updates...
[2026-06-27 05:47:58,351.351 INFO    ] 200
[2026-06-27 05:47:58,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:47:58,376.376 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:47:58,517.517 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:47:58,518.518 INFO    ] No camera update needed
[2026-06-27 05:47:58,520.520 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:47:58,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:47:58,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:47:58,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:48:00,566.566 INFO    ] ================================================
[2026-06-27 05:48:00,581.581 INFO    ] Launching Daemon at Sat Jun 27 05:48:00 IST 2026
[2026-06-27 05:48:00,592.592 INFO    ] ================================================
[2026-06-27 05:48:00,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:48:00
[2026-06-27 05:48:01,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:48:01,473.473 INFO    ] Initializing speech engine...
[2026-06-27 05:48:01,477.477 INFO    ] 2026-06-27 05:48:01
[2026-06-27 05:48:01,678.678 INFO    ] 2026-06-27 05:48:01
[2026-06-27 05:48:01,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:48:01,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:48:01,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:48:02,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:48:02,050.050 INFO    ] time= 27/06/2026 05:48:02
[2026-06-27 05:48:02,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:48:02,074.074 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:48:02,155.155 INFO    ] No existing commands found in stream
[2026-06-27 05:48:07,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:48:07,167.167 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-27 05:48:09,022.022 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:48:09,023.023 INFO    ] Checking for system updates...
[2026-06-27 05:48:09,045.045 INFO    ] 200
[2026-06-27 05:48:09,046.046 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:48:09,076.076 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:48:09,077.077 INFO    ] No update needed
[2026-06-27 05:48:09,079.079 INFO    ] Checking for camera pi updates...
[2026-06-27 05:48:09,098.098 INFO    ] 200
[2026-06-27 05:48:09,100.100 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:48:09,123.123 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:48:09,156.156 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:48:09,158.158 INFO    ] No camera update needed
[2026-06-27 05:48:09,159.159 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:48:09,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:48:09,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:48:09,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:48:11,206.206 INFO    ] ================================================
[2026-06-27 05:48:11,221.221 INFO    ] Launching Daemon at Sat Jun 27 05:48:11 IST 2026
[2026-06-27 05:48:11,232.232 INFO    ] ================================================
[2026-06-27 05:48:11,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:48:11
[2026-06-27 05:48:11,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:48:12,122.122 INFO    ] Initializing speech engine...
[2026-06-27 05:48:12,126.126 INFO    ] 2026-06-27 05:48:12
[2026-06-27 05:48:12,338.338 INFO    ] 2026-06-27 05:48:12
[2026-06-27 05:48:12,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:48:12,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:48:12,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:48:12,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:48:12,787.787 INFO    ] time= 27/06/2026 05:48:12
[2026-06-27 05:48:12,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:48:12,795.795 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:48:12,863.863 INFO    ] No existing commands found in stream
[2026-06-27 05:48:17,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:48:17,877.877 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-27 05:48:20,562.562 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:48:20,564.564 INFO    ] Checking for system updates...
[2026-06-27 05:48:20,585.585 INFO    ] 200
[2026-06-27 05:48:20,586.586 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:48:20,618.618 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:48:20,620.620 INFO    ] No update needed
[2026-06-27 05:48:20,621.621 INFO    ] Checking for camera pi updates...
[2026-06-27 05:48:20,641.641 INFO    ] 200
[2026-06-27 05:48:20,642.642 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:48:20,666.666 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:48:20,713.713 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:48:20,714.714 INFO    ] No camera update needed
[2026-06-27 05:48:20,716.716 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:48:20,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:48:20,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:48:20,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:48:22,761.761 INFO    ] ================================================
[2026-06-27 05:48:22,777.777 INFO    ] Launching Daemon at Sat Jun 27 05:48:22 IST 2026
[2026-06-27 05:48:22,788.788 INFO    ] ================================================
[2026-06-27 05:48:23,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:48:23
[2026-06-27 05:48:23,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:48:23,614.614 INFO    ] Initializing speech engine...
[2026-06-27 05:48:23,624.624 INFO    ] 2026-06-27 05:48:23
[2026-06-27 05:48:23,830.830 INFO    ] 2026-06-27 05:48:23
[2026-06-27 05:48:23,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:48:24,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:48:24,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:48:24,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:48:24,253.253 INFO    ] time= 27/06/2026 05:48:24
[2026-06-27 05:48:24,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:48:24,280.280 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:48:24,346.346 INFO    ] No existing commands found in stream
[2026-06-27 05:48:29,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:48:29,360.360 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-27 05:48:33,462.462 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 05:48:33,464.464 INFO    ] Checking for system updates...
[2026-06-27 05:48:33,485.485 INFO    ] 200
[2026-06-27 05:48:33,486.486 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:48:33,517.517 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:48:33,518.518 INFO    ] No update needed
[2026-06-27 05:48:33,519.519 INFO    ] Checking for camera pi updates...
[2026-06-27 05:48:33,539.539 INFO    ] 200
[2026-06-27 05:48:33,540.540 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:48:33,564.564 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:48:33,604.604 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:48:33,605.605 INFO    ] No camera update needed
[2026-06-27 05:48:33,607.607 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:48:33,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:48:33,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:48:33,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:48:35,653.653 INFO    ] ================================================
[2026-06-27 05:48:35,669.669 INFO    ] Launching Daemon at Sat Jun 27 05:48:35 IST 2026
[2026-06-27 05:48:35,680.680 INFO    ] ================================================
[2026-06-27 05:48:36,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:48:36
[2026-06-27 05:48:36,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:48:36,460.460 INFO    ] Initializing speech engine...
[2026-06-27 05:48:36,472.472 INFO    ] 2026-06-27 05:48:36
[2026-06-27 05:48:36,680.680 INFO    ] 2026-06-27 05:48:36
[2026-06-27 05:48:36,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:48:36,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:48:36,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:48:37,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:48:37,090.090 INFO    ] time= 27/06/2026 05:48:37
[2026-06-27 05:48:37,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:48:37,128.128 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:48:37,195.195 INFO    ] No existing commands found in stream
[2026-06-27 05:48:42,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:48:42,208.208 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-27 05:48:46,513.513 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:48:46,514.514 INFO    ] Checking for system updates...
[2026-06-27 05:48:46,535.535 INFO    ] 200
[2026-06-27 05:48:46,537.537 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:48:46,567.567 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:48:46,568.568 INFO    ] No update needed
[2026-06-27 05:48:46,569.569 INFO    ] Checking for camera pi updates...
[2026-06-27 05:48:46,589.589 INFO    ] 200
[2026-06-27 05:48:46,590.590 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:48:46,616.616 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:48:46,651.651 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:48:46,653.653 INFO    ] No camera update needed
[2026-06-27 05:48:46,654.654 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:48:46,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:48:46,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:48:46,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:48:48,701.701 INFO    ] ================================================
[2026-06-27 05:48:48,716.716 INFO    ] Launching Daemon at Sat Jun 27 05:48:48 IST 2026
[2026-06-27 05:48:48,728.728 INFO    ] ================================================
[2026-06-27 05:48:49,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:48:49
[2026-06-27 05:48:49,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:48:49,553.553 INFO    ] Initializing speech engine...
[2026-06-27 05:48:49,559.559 INFO    ] 2026-06-27 05:48:49
[2026-06-27 05:48:49,763.763 INFO    ] 2026-06-27 05:48:49
[2026-06-27 05:48:49,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:48:49,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:48:49,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:48:50,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:48:50,182.182 INFO    ] time= 27/06/2026 05:48:50
[2026-06-27 05:48:50,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:48:50,210.210 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:48:50,277.277 INFO    ] No existing commands found in stream
[2026-06-27 05:48:55,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:48:55,289.289 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-27 05:48:58,833.833 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:48:58,834.834 INFO    ] Checking for system updates...
[2026-06-27 05:48:58,855.855 INFO    ] 200
[2026-06-27 05:48:58,857.857 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:48:58,887.887 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:48:58,889.889 INFO    ] No update needed
[2026-06-27 05:48:58,890.890 INFO    ] Checking for camera pi updates...
[2026-06-27 05:48:58,910.910 INFO    ] 200
[2026-06-27 05:48:58,911.911 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:48:58,934.934 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:48:58,982.982 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:48:58,984.984 INFO    ] No camera update needed
[2026-06-27 05:48:58,985.985 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:48:58,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:48:58,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:48:58,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:49:01,038.038 INFO    ] ================================================
[2026-06-27 05:49:01,069.069 INFO    ] Launching Daemon at Sat Jun 27 05:49:01 IST 2026
[2026-06-27 05:49:01,095.095 INFO    ] ================================================
[2026-06-27 05:49:01,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:49:01
[2026-06-27 05:49:01,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:49:02,049.049 INFO    ] Initializing speech engine...
[2026-06-27 05:49:02,051.051 INFO    ] 2026-06-27 05:49:02
[2026-06-27 05:49:02,284.284 INFO    ] 2026-06-27 05:49:02
[2026-06-27 05:49:02,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:49:02,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:49:02,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:49:02,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:49:02,699.699 INFO    ] time= 27/06/2026 05:49:02
[2026-06-27 05:49:02,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:49:02,749.749 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:49:02,830.830 INFO    ] No existing commands found in stream
[2026-06-27 05:49:07,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:49:07,843.843 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-27 05:49:11,990.990 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:49:11,991.991 INFO    ] Checking for system updates...
[2026-06-27 05:49:12,012.012 INFO    ] 200
[2026-06-27 05:49:12,014.014 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:49:12,046.046 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:49:12,047.047 INFO    ] No update needed
[2026-06-27 05:49:12,049.049 INFO    ] Checking for camera pi updates...
[2026-06-27 05:49:12,068.068 INFO    ] 200
[2026-06-27 05:49:12,069.069 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:49:12,093.093 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:49:12,130.130 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:49:12,132.132 INFO    ] No camera update needed
[2026-06-27 05:49:12,133.133 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:49:12,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:49:12,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:49:12,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:49:14,180.180 INFO    ] ================================================
[2026-06-27 05:49:14,195.195 INFO    ] Launching Daemon at Sat Jun 27 05:49:14 IST 2026
[2026-06-27 05:49:14,205.205 INFO    ] ================================================
[2026-06-27 05:49:14,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:49:14
[2026-06-27 05:49:14,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:49:14,990.990 INFO    ] Initializing speech engine...
[2026-06-27 05:49:14,998.998 INFO    ] 2026-06-27 05:49:14
[2026-06-27 05:49:15,210.210 INFO    ] 2026-06-27 05:49:15
[2026-06-27 05:49:15,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:49:15,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:49:15,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:49:15,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:49:15,631.631 INFO    ] time= 27/06/2026 05:49:15
[2026-06-27 05:49:15,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:49:15,658.658 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:49:15,725.725 INFO    ] No existing commands found in stream
[2026-06-27 05:49:20,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:49:20,747.747 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-27 05:49:23,770.770 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:49:23,771.771 INFO    ] Checking for system updates...
[2026-06-27 05:49:23,792.792 INFO    ] 200
[2026-06-27 05:49:23,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:49:23,824.824 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:49:23,825.825 INFO    ] No update needed
[2026-06-27 05:49:23,827.827 INFO    ] Checking for camera pi updates...
[2026-06-27 05:49:23,846.846 INFO    ] 200
[2026-06-27 05:49:23,847.847 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:49:23,871.871 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:49:23,911.911 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:49:23,913.913 INFO    ] No camera update needed
[2026-06-27 05:49:23,914.914 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:49:23,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:49:23,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:49:23,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:49:25,959.959 INFO    ] ================================================
[2026-06-27 05:49:25,975.975 INFO    ] Launching Daemon at Sat Jun 27 05:49:25 IST 2026
[2026-06-27 05:49:25,986.986 INFO    ] ================================================
[2026-06-27 05:49:26,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:49:26
[2026-06-27 05:49:26,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:49:26,858.858 INFO    ] Initializing speech engine...
[2026-06-27 05:49:26,866.866 INFO    ] 2026-06-27 05:49:26
[2026-06-27 05:49:27,085.085 INFO    ] 2026-06-27 05:49:27
[2026-06-27 05:49:27,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:49:27,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:49:27,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:49:27,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:49:27,512.512 INFO    ] time= 27/06/2026 05:49:27
[2026-06-27 05:49:27,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:49:27,543.543 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:49:27,611.611 INFO    ] No existing commands found in stream
[2026-06-27 05:49:32,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:49:32,621.621 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-27 05:49:35,008.008 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 05:49:35,009.009 INFO    ] Checking for system updates...
[2026-06-27 05:49:35,030.030 INFO    ] 200
[2026-06-27 05:49:35,032.032 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:49:35,062.062 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:49:35,064.064 INFO    ] No update needed
[2026-06-27 05:49:35,065.065 INFO    ] Checking for camera pi updates...
[2026-06-27 05:49:35,086.086 INFO    ] 200
[2026-06-27 05:49:35,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:49:35,111.111 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:49:35,155.155 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:49:35,156.156 INFO    ] No camera update needed
[2026-06-27 05:49:35,158.158 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:49:35,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:49:35,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:49:35,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:49:37,205.205 INFO    ] ================================================
[2026-06-27 05:49:37,220.220 INFO    ] Launching Daemon at Sat Jun 27 05:49:37 IST 2026
[2026-06-27 05:49:37,230.230 INFO    ] ================================================
[2026-06-27 05:49:37,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:49:37
[2026-06-27 05:49:37,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:49:38,025.025 INFO    ] Initializing speech engine...
[2026-06-27 05:49:38,033.033 INFO    ] 2026-06-27 05:49:38
[2026-06-27 05:49:38,247.247 INFO    ] 2026-06-27 05:49:38
[2026-06-27 05:49:38,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:49:38,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:49:38,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:49:38,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:49:38,659.659 INFO    ] time= 27/06/2026 05:49:38
[2026-06-27 05:49:38,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:49:38,693.693 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:49:38,765.765 INFO    ] No existing commands found in stream
[2026-06-27 05:49:43,774.774 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:49:43,777.777 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-27 05:49:45,357.357 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 05:49:45,359.359 INFO    ] Checking for system updates...
[2026-06-27 05:49:45,379.379 INFO    ] 200
[2026-06-27 05:49:45,381.381 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:49:45,411.411 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:49:45,413.413 INFO    ] No update needed
[2026-06-27 05:49:45,414.414 INFO    ] Checking for camera pi updates...
[2026-06-27 05:49:45,436.436 INFO    ] 200
[2026-06-27 05:49:45,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:49:45,460.460 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:49:45,501.501 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:49:45,502.502 INFO    ] No camera update needed
[2026-06-27 05:49:45,504.504 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:49:45,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:49:45,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:49:45,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:49:47,550.550 INFO    ] ================================================
[2026-06-27 05:49:47,565.565 INFO    ] Launching Daemon at Sat Jun 27 05:49:47 IST 2026
[2026-06-27 05:49:47,576.576 INFO    ] ================================================
[2026-06-27 05:49:47,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:49:47
[2026-06-27 05:49:48,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:49:48,362.362 INFO    ] Initializing speech engine...
[2026-06-27 05:49:48,368.368 INFO    ] 2026-06-27 05:49:48
[2026-06-27 05:49:48,576.576 INFO    ] 2026-06-27 05:49:48
[2026-06-27 05:49:48,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:49:48,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:49:48,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:49:48,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:49:49,001.001 INFO    ] time= 27/06/2026 05:49:48
[2026-06-27 05:49:49,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:49:49,029.029 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:49:49,098.098 INFO    ] No existing commands found in stream
[2026-06-27 05:49:54,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:49:54,113.113 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-27 05:49:57,797.797 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 05:49:57,799.799 INFO    ] Checking for system updates...
[2026-06-27 05:49:57,823.823 INFO    ] 200
[2026-06-27 05:49:57,825.825 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:49:57,861.861 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:49:57,863.863 INFO    ] No update needed
[2026-06-27 05:49:57,865.865 INFO    ] Checking for camera pi updates...
[2026-06-27 05:49:57,897.897 INFO    ] 200
[2026-06-27 05:49:57,899.899 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:49:57,930.930 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:49:57,972.972 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:49:57,973.973 INFO    ] No camera update needed
[2026-06-27 05:49:57,975.975 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:49:57,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:49:57,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:49:57,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:50:00,022.022 INFO    ] ================================================
[2026-06-27 05:50:00,037.037 INFO    ] Launching Daemon at Sat Jun 27 05:50:00 IST 2026
[2026-06-27 05:50:00,048.048 INFO    ] ================================================
[2026-06-27 05:50:00,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:50:00
[2026-06-27 05:50:00,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:50:00,920.920 INFO    ] Initializing speech engine...
[2026-06-27 05:50:00,929.929 INFO    ] 2026-06-27 05:50:00
[2026-06-27 05:50:01,141.141 INFO    ] 2026-06-27 05:50:01
[2026-06-27 05:50:01,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:50:01,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:50:01,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:50:01,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:50:01,571.571 INFO    ] time= 27/06/2026 05:50:01
[2026-06-27 05:50:01,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:50:01,605.605 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:50:01,698.698 INFO    ] No existing commands found in stream
[2026-06-27 05:50:06,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:50:06,711.711 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-27 05:50:10,190.190 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:50:10,192.192 INFO    ] Checking for system updates...
[2026-06-27 05:50:10,212.212 INFO    ] 200
[2026-06-27 05:50:10,214.214 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:50:10,245.245 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:50:10,246.246 INFO    ] No update needed
[2026-06-27 05:50:10,247.247 INFO    ] Checking for camera pi updates...
[2026-06-27 05:50:10,267.267 INFO    ] 200
[2026-06-27 05:50:10,268.268 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:50:10,293.293 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:50:10,335.335 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:50:10,337.337 INFO    ] No camera update needed
[2026-06-27 05:50:10,338.338 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:50:10,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:50:10,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:50:10,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:50:12,384.384 INFO    ] ================================================
[2026-06-27 05:50:12,399.399 INFO    ] Launching Daemon at Sat Jun 27 05:50:12 IST 2026
[2026-06-27 05:50:12,410.410 INFO    ] ================================================
[2026-06-27 05:50:12,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:50:12
[2026-06-27 05:50:13,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:50:13,225.225 INFO    ] Initializing speech engine...
[2026-06-27 05:50:13,229.229 INFO    ] 2026-06-27 05:50:13
[2026-06-27 05:50:13,436.436 INFO    ] 2026-06-27 05:50:13
[2026-06-27 05:50:13,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:50:13,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:50:13,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:50:13,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:50:13,837.837 INFO    ] time= 27/06/2026 05:50:13
[2026-06-27 05:50:13,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:50:13,885.885 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:50:13,976.976 INFO    ] No existing commands found in stream
[2026-06-27 05:50:18,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:50:18,993.993 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-27 05:50:19,903.903 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:50:19,905.905 INFO    ] Checking for system updates...
[2026-06-27 05:50:19,926.926 INFO    ] 200
[2026-06-27 05:50:19,927.927 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:50:19,957.957 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:50:19,959.959 INFO    ] No update needed
[2026-06-27 05:50:19,960.960 INFO    ] Checking for camera pi updates...
[2026-06-27 05:50:19,979.979 INFO    ] 200
[2026-06-27 05:50:19,980.980 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:50:20,004.004 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:50:20,047.047 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:50:20,049.049 INFO    ] No camera update needed
[2026-06-27 05:50:20,050.050 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:50:20,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:50:20,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:50:20,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:50:22,096.096 INFO    ] ================================================
[2026-06-27 05:50:22,117.117 INFO    ] Launching Daemon at Sat Jun 27 05:50:22 IST 2026
[2026-06-27 05:50:22,129.129 INFO    ] ================================================
[2026-06-27 05:50:22,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:50:22
[2026-06-27 05:50:22,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:50:22,901.901 INFO    ] Initializing speech engine...
[2026-06-27 05:50:22,913.913 INFO    ] 2026-06-27 05:50:22
[2026-06-27 05:50:23,134.134 INFO    ] 2026-06-27 05:50:23
[2026-06-27 05:50:23,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:50:23,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:50:23,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:50:23,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:50:23,568.568 INFO    ] time= 27/06/2026 05:50:23
[2026-06-27 05:50:23,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:50:23,598.598 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:50:23,711.711 INFO    ] No existing commands found in stream
[2026-06-27 05:50:28,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:50:28,725.725 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-27 05:50:32,997.997 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 05:50:32,999.999 INFO    ] Checking for system updates...
[2026-06-27 05:50:33,025.025 INFO    ] 200
[2026-06-27 05:50:33,026.026 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:50:33,064.064 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:50:33,066.066 INFO    ] No update needed
[2026-06-27 05:50:33,067.067 INFO    ] Checking for camera pi updates...
[2026-06-27 05:50:33,087.087 INFO    ] 200
[2026-06-27 05:50:33,089.089 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:50:33,112.112 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:50:33,162.162 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:50:33,163.163 INFO    ] No camera update needed
[2026-06-27 05:50:33,165.165 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:50:33,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:50:33,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:50:33,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:50:35,212.212 INFO    ] ================================================
[2026-06-27 05:50:35,228.228 INFO    ] Launching Daemon at Sat Jun 27 05:50:35 IST 2026
[2026-06-27 05:50:35,239.239 INFO    ] ================================================
[2026-06-27 05:50:35,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:50:35
[2026-06-27 05:50:35,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:50:36,092.092 INFO    ] Initializing speech engine...
[2026-06-27 05:50:36,098.098 INFO    ] 2026-06-27 05:50:36
[2026-06-27 05:50:36,305.305 INFO    ] 2026-06-27 05:50:36
[2026-06-27 05:50:36,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:50:36,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:50:36,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:50:36,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:50:36,730.730 INFO    ] time= 27/06/2026 05:50:36
[2026-06-27 05:50:36,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:50:36,760.760 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:50:36,828.828 INFO    ] No existing commands found in stream
[2026-06-27 05:50:41,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:50:41,846.846 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-27 05:50:43,000.000 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 05:50:43,002.002 INFO    ] Checking for system updates...
[2026-06-27 05:50:43,023.023 INFO    ] 200
[2026-06-27 05:50:43,025.025 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:50:43,056.056 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:50:43,057.057 INFO    ] No update needed
[2026-06-27 05:50:43,062.062 INFO    ] Checking for camera pi updates...
[2026-06-27 05:50:43,090.090 INFO    ] 200
[2026-06-27 05:50:43,092.092 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:50:43,116.116 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:50:43,157.157 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:50:43,158.158 INFO    ] No camera update needed
[2026-06-27 05:50:43,159.159 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:50:43,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:50:43,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:50:43,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:50:45,205.205 INFO    ] ================================================
[2026-06-27 05:50:45,221.221 INFO    ] Launching Daemon at Sat Jun 27 05:50:45 IST 2026
[2026-06-27 05:50:45,232.232 INFO    ] ================================================
[2026-06-27 05:50:45,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:50:45
[2026-06-27 05:50:45,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:50:46,022.022 INFO    ] Initializing speech engine...
[2026-06-27 05:50:46,032.032 INFO    ] 2026-06-27 05:50:46
[2026-06-27 05:50:46,238.238 INFO    ] 2026-06-27 05:50:46
[2026-06-27 05:50:46,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:50:46,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:50:46,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:50:46,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:50:46,663.663 INFO    ] time= 27/06/2026 05:50:46
[2026-06-27 05:50:46,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:50:46,694.694 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:50:46,762.762 INFO    ] No existing commands found in stream
[2026-06-27 05:50:51,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:50:51,773.773 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-27 05:50:53,288.288 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:50:53,289.289 INFO    ] Checking for system updates...
[2026-06-27 05:50:53,310.310 INFO    ] 200
[2026-06-27 05:50:53,311.311 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:50:53,345.345 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:50:53,346.346 INFO    ] No update needed
[2026-06-27 05:50:53,348.348 INFO    ] Checking for camera pi updates...
[2026-06-27 05:50:53,367.367 INFO    ] 200
[2026-06-27 05:50:53,369.369 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:50:53,395.395 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:50:53,438.438 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:50:53,439.439 INFO    ] No camera update needed
[2026-06-27 05:50:53,440.440 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:50:53,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:50:53,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:50:53,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:50:55,486.486 INFO    ] ================================================
[2026-06-27 05:50:55,501.501 INFO    ] Launching Daemon at Sat Jun 27 05:50:55 IST 2026
[2026-06-27 05:50:55,511.511 INFO    ] ================================================
[2026-06-27 05:50:55,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:50:55
[2026-06-27 05:50:56,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:50:56,326.326 INFO    ] Initializing speech engine...
[2026-06-27 05:50:56,336.336 INFO    ] 2026-06-27 05:50:56
[2026-06-27 05:50:56,542.542 INFO    ] 2026-06-27 05:50:56
[2026-06-27 05:50:56,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:50:56,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:50:56,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:50:56,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:50:56,955.955 INFO    ] time= 27/06/2026 05:50:56
[2026-06-27 05:50:56,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:50:56,994.994 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:50:57,062.062 INFO    ] No existing commands found in stream
[2026-06-27 05:51:02,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:51:02,068.068 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-27 05:51:03,378.378 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:51:03,379.379 INFO    ] Checking for system updates...
[2026-06-27 05:51:03,400.400 INFO    ] 200
[2026-06-27 05:51:03,402.402 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:51:03,432.432 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:51:03,433.433 INFO    ] No update needed
[2026-06-27 05:51:03,435.435 INFO    ] Checking for camera pi updates...
[2026-06-27 05:51:03,456.456 INFO    ] 200
[2026-06-27 05:51:03,457.457 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:51:03,480.480 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:51:03,525.525 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:51:03,526.526 INFO    ] No camera update needed
[2026-06-27 05:51:03,527.527 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:51:03,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:51:03,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:51:03,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:51:05,574.574 INFO    ] ================================================
[2026-06-27 05:51:05,589.589 INFO    ] Launching Daemon at Sat Jun 27 05:51:05 IST 2026
[2026-06-27 05:51:05,601.601 INFO    ] ================================================
[2026-06-27 05:51:05,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:51:05
[2026-06-27 05:51:06,267.267 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:51:06,400.400 INFO    ] Initializing speech engine...
[2026-06-27 05:51:06,404.404 INFO    ] 2026-06-27 05:51:06
[2026-06-27 05:51:06,622.622 INFO    ] 2026-06-27 05:51:06
[2026-06-27 05:51:06,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:51:06,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:51:06,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:51:06,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:51:07,043.043 INFO    ] time= 27/06/2026 05:51:07
[2026-06-27 05:51:07,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:51:07,072.072 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:51:07,139.139 INFO    ] No existing commands found in stream
[2026-06-27 05:51:12,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:51:12,151.151 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-27 05:51:15,203.203 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:51:15,205.205 INFO    ] Checking for system updates...
[2026-06-27 05:51:15,225.225 INFO    ] 200
[2026-06-27 05:51:15,227.227 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:51:15,260.260 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:51:15,261.261 INFO    ] No update needed
[2026-06-27 05:51:15,262.262 INFO    ] Checking for camera pi updates...
[2026-06-27 05:51:15,281.281 INFO    ] 200
[2026-06-27 05:51:15,283.283 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:51:15,308.308 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:51:15,342.342 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:51:15,344.344 INFO    ] No camera update needed
[2026-06-27 05:51:15,345.345 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:51:15,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:51:15,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:51:15,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:51:17,391.391 INFO    ] ================================================
[2026-06-27 05:51:17,407.407 INFO    ] Launching Daemon at Sat Jun 27 05:51:17 IST 2026
[2026-06-27 05:51:17,418.418 INFO    ] ================================================
[2026-06-27 05:51:17,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:51:17
[2026-06-27 05:51:18,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:51:18,233.233 INFO    ] Initializing speech engine...
[2026-06-27 05:51:18,238.238 INFO    ] 2026-06-27 05:51:18
[2026-06-27 05:51:18,442.442 INFO    ] 2026-06-27 05:51:18
[2026-06-27 05:51:18,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:51:18,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:51:18,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:51:18,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:51:18,866.866 INFO    ] time= 27/06/2026 05:51:18
[2026-06-27 05:51:18,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:51:18,894.894 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:51:18,961.961 INFO    ] No existing commands found in stream
[2026-06-27 05:51:23,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:51:23,972.972 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-27 05:51:27,150.150 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 05:51:27,152.152 INFO    ] Checking for system updates...
[2026-06-27 05:51:27,172.172 INFO    ] 200
[2026-06-27 05:51:27,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:51:27,204.204 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:51:27,205.205 INFO    ] No update needed
[2026-06-27 05:51:27,206.206 INFO    ] Checking for camera pi updates...
[2026-06-27 05:51:27,226.226 INFO    ] 200
[2026-06-27 05:51:27,227.227 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:51:27,252.252 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:51:27,292.292 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:51:27,294.294 INFO    ] No camera update needed
[2026-06-27 05:51:27,295.295 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:51:27,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:51:27,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:51:27,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:51:29,334.334 INFO    ] ================================================
[2026-06-27 05:51:29,350.350 INFO    ] Launching Daemon at Sat Jun 27 05:51:29 IST 2026
[2026-06-27 05:51:29,361.361 INFO    ] ================================================
[2026-06-27 05:51:29,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:51:29
[2026-06-27 05:51:30,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:51:30,167.167 INFO    ] Initializing speech engine...
[2026-06-27 05:51:30,172.172 INFO    ] 2026-06-27 05:51:30
[2026-06-27 05:51:30,376.376 INFO    ] 2026-06-27 05:51:30
[2026-06-27 05:51:30,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:51:30,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:51:30,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:51:30,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:51:30,788.788 INFO    ] time= 27/06/2026 05:51:30
[2026-06-27 05:51:30,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:51:30,826.826 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:51:30,893.893 INFO    ] No existing commands found in stream
[2026-06-27 05:51:35,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:51:35,905.905 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-27 05:51:38,371.371 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 05:51:38,372.372 INFO    ] Checking for system updates...
[2026-06-27 05:51:38,393.393 INFO    ] 200
[2026-06-27 05:51:38,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:51:38,428.428 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:51:38,429.429 INFO    ] No update needed
[2026-06-27 05:51:38,430.430 INFO    ] Checking for camera pi updates...
[2026-06-27 05:51:38,450.450 INFO    ] 200
[2026-06-27 05:51:38,451.451 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:51:38,476.476 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:51:38,517.517 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:51:38,518.518 INFO    ] No camera update needed
[2026-06-27 05:51:38,520.520 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:51:38,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:51:38,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:51:38,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:51:40,566.566 INFO    ] ================================================
[2026-06-27 05:51:40,582.582 INFO    ] Launching Daemon at Sat Jun 27 05:51:40 IST 2026
[2026-06-27 05:51:40,592.592 INFO    ] ================================================
[2026-06-27 05:51:40,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:51:40
[2026-06-27 05:51:41,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:51:41,414.414 INFO    ] Initializing speech engine...
[2026-06-27 05:51:41,423.423 INFO    ] 2026-06-27 05:51:41
[2026-06-27 05:51:41,637.637 INFO    ] 2026-06-27 05:51:41
[2026-06-27 05:51:41,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:51:41,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:51:41,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:51:42,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:51:42,062.062 INFO    ] time= 27/06/2026 05:51:42
[2026-06-27 05:51:42,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:51:42,090.090 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:51:42,158.158 INFO    ] No existing commands found in stream
[2026-06-27 05:51:47,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:51:47,170.170 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-27 05:51:49,898.898 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:51:49,900.900 INFO    ] Checking for system updates...
[2026-06-27 05:51:49,922.922 INFO    ] 200
[2026-06-27 05:51:49,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:51:49,955.955 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:51:49,956.956 INFO    ] No update needed
[2026-06-27 05:51:49,957.957 INFO    ] Checking for camera pi updates...
[2026-06-27 05:51:49,977.977 INFO    ] 200
[2026-06-27 05:51:49,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:51:50,003.003 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:51:50,044.044 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:51:50,045.045 INFO    ] No camera update needed
[2026-06-27 05:51:50,047.047 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:51:50,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:51:50,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:51:50,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:51:52,093.093 INFO    ] ================================================
[2026-06-27 05:51:52,109.109 INFO    ] Launching Daemon at Sat Jun 27 05:51:52 IST 2026
[2026-06-27 05:51:52,120.120 INFO    ] ================================================
[2026-06-27 05:51:52,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:51:52
[2026-06-27 05:51:52,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:51:52,929.929 INFO    ] Initializing speech engine...
[2026-06-27 05:51:52,934.934 INFO    ] 2026-06-27 05:51:52
[2026-06-27 05:51:53,138.138 INFO    ] 2026-06-27 05:51:53
[2026-06-27 05:51:53,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:51:53,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:51:53,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:51:53,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:51:53,558.558 INFO    ] time= 27/06/2026 05:51:53
[2026-06-27 05:51:53,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:51:53,587.587 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:51:53,655.655 INFO    ] No existing commands found in stream
[2026-06-27 05:51:58,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:51:58,667.667 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-27 05:51:59,092.092 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 05:51:59,093.093 INFO    ] Checking for system updates...
[2026-06-27 05:51:59,114.114 INFO    ] 200
[2026-06-27 05:51:59,116.116 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:51:59,150.150 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:51:59,151.151 INFO    ] No update needed
[2026-06-27 05:51:59,153.153 INFO    ] Checking for camera pi updates...
[2026-06-27 05:51:59,173.173 INFO    ] 200
[2026-06-27 05:51:59,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:51:59,197.197 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:51:59,238.238 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:51:59,240.240 INFO    ] No camera update needed
[2026-06-27 05:51:59,241.241 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:51:59,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:51:59,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:51:59,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:52:01,287.287 INFO    ] ================================================
[2026-06-27 05:52:01,303.303 INFO    ] Launching Daemon at Sat Jun 27 05:52:01 IST 2026
[2026-06-27 05:52:01,314.314 INFO    ] ================================================
[2026-06-27 05:52:01,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:52:01
[2026-06-27 05:52:02,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:52:02,286.286 INFO    ] Initializing speech engine...
[2026-06-27 05:52:02,292.292 INFO    ] 2026-06-27 05:52:02
[2026-06-27 05:52:02,523.523 INFO    ] 2026-06-27 05:52:02
[2026-06-27 05:52:02,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:52:02,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:52:02,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:52:02,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:52:03,028.028 INFO    ] time= 27/06/2026 05:52:02
[2026-06-27 05:52:03,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:52:03,059.059 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:52:03,129.129 INFO    ] No existing commands found in stream
[2026-06-27 05:52:08,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:52:08,143.143 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-27 05:52:09,265.265 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:52:09,266.266 INFO    ] Checking for system updates...
[2026-06-27 05:52:09,289.289 INFO    ] 200
[2026-06-27 05:52:09,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:52:09,320.320 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:52:09,322.322 INFO    ] No update needed
[2026-06-27 05:52:09,323.323 INFO    ] Checking for camera pi updates...
[2026-06-27 05:52:09,344.344 INFO    ] 200
[2026-06-27 05:52:09,345.345 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:52:09,368.368 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:52:09,492.492 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:52:09,494.494 INFO    ] No camera update needed
[2026-06-27 05:52:09,495.495 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:52:09,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:52:09,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:52:09,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:52:11,543.543 INFO    ] ================================================
[2026-06-27 05:52:11,558.558 INFO    ] Launching Daemon at Sat Jun 27 05:52:11 IST 2026
[2026-06-27 05:52:11,569.569 INFO    ] ================================================
[2026-06-27 05:52:11,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:52:11
[2026-06-27 05:52:12,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:52:12,383.383 INFO    ] Initializing speech engine...
[2026-06-27 05:52:12,391.391 INFO    ] 2026-06-27 05:52:12
[2026-06-27 05:52:12,600.600 INFO    ] 2026-06-27 05:52:12
[2026-06-27 05:52:12,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:52:12,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:52:12,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:52:12,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:52:13,027.027 INFO    ] time= 27/06/2026 05:52:12
[2026-06-27 05:52:13,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:52:13,055.055 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:52:13,121.121 INFO    ] No existing commands found in stream
[2026-06-27 05:52:18,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:52:18,135.135 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-27 05:52:20,919.919 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:52:20,920.920 INFO    ] Checking for system updates...
[2026-06-27 05:52:20,941.941 INFO    ] 200
[2026-06-27 05:52:20,943.943 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:52:20,973.973 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:52:20,974.974 INFO    ] No update needed
[2026-06-27 05:52:20,976.976 INFO    ] Checking for camera pi updates...
[2026-06-27 05:52:20,995.995 INFO    ] 200
[2026-06-27 05:52:20,996.996 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:52:21,024.024 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:52:21,069.069 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:52:21,070.070 INFO    ] No camera update needed
[2026-06-27 05:52:21,071.071 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:52:21,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:52:21,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:52:21,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:52:23,118.118 INFO    ] ================================================
[2026-06-27 05:52:23,134.134 INFO    ] Launching Daemon at Sat Jun 27 05:52:23 IST 2026
[2026-06-27 05:52:23,144.144 INFO    ] ================================================
[2026-06-27 05:52:23,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:52:23
[2026-06-27 05:52:23,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:52:24,012.012 INFO    ] Initializing speech engine...
[2026-06-27 05:52:24,018.018 INFO    ] 2026-06-27 05:52:24
[2026-06-27 05:52:24,229.229 INFO    ] 2026-06-27 05:52:24
[2026-06-27 05:52:24,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:52:24,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:52:24,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:52:24,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:52:24,656.656 INFO    ] time= 27/06/2026 05:52:24
[2026-06-27 05:52:24,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:52:24,685.685 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:52:24,751.751 INFO    ] No existing commands found in stream
[2026-06-27 05:52:29,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:52:29,766.766 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-27 05:52:32,377.377 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 05:52:32,379.379 INFO    ] Checking for system updates...
[2026-06-27 05:52:32,409.409 INFO    ] 200
[2026-06-27 05:52:32,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:52:32,445.445 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:52:32,447.447 INFO    ] No update needed
[2026-06-27 05:52:32,448.448 INFO    ] Checking for camera pi updates...
[2026-06-27 05:52:32,470.470 INFO    ] 200
[2026-06-27 05:52:32,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:52:32,498.498 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:52:32,520.520 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:52:32,522.522 INFO    ] No camera update needed
[2026-06-27 05:52:32,523.523 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:52:32,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:52:32,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:52:32,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:52:34,572.572 INFO    ] ================================================
[2026-06-27 05:52:34,588.588 INFO    ] Launching Daemon at Sat Jun 27 05:52:34 IST 2026
[2026-06-27 05:52:34,600.600 INFO    ] ================================================
[2026-06-27 05:52:34,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:52:34
[2026-06-27 05:52:35,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:52:35,382.382 INFO    ] Initializing speech engine...
[2026-06-27 05:52:35,387.387 INFO    ] 2026-06-27 05:52:35
[2026-06-27 05:52:35,588.588 INFO    ] 2026-06-27 05:52:35
[2026-06-27 05:52:35,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:52:35,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:52:35,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:52:35,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:52:36,040.040 INFO    ] time= 27/06/2026 05:52:36
[2026-06-27 05:52:36,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:52:36,069.069 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:52:36,139.139 INFO    ] No existing commands found in stream
[2026-06-27 05:52:41,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:52:41,149.149 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-27 05:52:41,968.968 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:52:41,969.969 INFO    ] Checking for system updates...
[2026-06-27 05:52:41,990.990 INFO    ] 200
[2026-06-27 05:52:41,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:52:42,026.026 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:52:42,027.027 INFO    ] No update needed
[2026-06-27 05:52:42,029.029 INFO    ] Checking for camera pi updates...
[2026-06-27 05:52:42,048.048 INFO    ] 200
[2026-06-27 05:52:42,049.049 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:52:42,074.074 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:52:42,112.112 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:52:42,113.113 INFO    ] No camera update needed
[2026-06-27 05:52:42,114.114 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:52:42,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:52:42,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:52:42,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:52:44,161.161 INFO    ] ================================================
[2026-06-27 05:52:44,177.177 INFO    ] Launching Daemon at Sat Jun 27 05:52:44 IST 2026
[2026-06-27 05:52:44,189.189 INFO    ] ================================================
[2026-06-27 05:52:44,520.520 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:52:44
[2026-06-27 05:52:44,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:52:44,968.968 INFO    ] Initializing speech engine...
[2026-06-27 05:52:44,975.975 INFO    ] 2026-06-27 05:52:44
[2026-06-27 05:52:45,191.191 INFO    ] 2026-06-27 05:52:45
[2026-06-27 05:52:45,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:52:45,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:52:45,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:52:45,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:52:45,622.622 INFO    ] time= 27/06/2026 05:52:45
[2026-06-27 05:52:45,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:52:45,652.652 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:52:45,721.721 INFO    ] No existing commands found in stream
[2026-06-27 05:52:50,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:52:50,735.735 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-27 05:52:53,310.310 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:52:53,311.311 INFO    ] Checking for system updates...
[2026-06-27 05:52:53,334.334 INFO    ] 200
[2026-06-27 05:52:53,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:52:53,366.366 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:52:53,367.367 INFO    ] No update needed
[2026-06-27 05:52:53,369.369 INFO    ] Checking for camera pi updates...
[2026-06-27 05:52:53,388.388 INFO    ] 200
[2026-06-27 05:52:53,390.390 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:52:53,414.414 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:52:53,448.448 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:52:53,449.449 INFO    ] No camera update needed
[2026-06-27 05:52:53,450.450 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:52:53,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:52:53,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:52:53,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:52:55,497.497 INFO    ] ================================================
[2026-06-27 05:52:55,513.513 INFO    ] Launching Daemon at Sat Jun 27 05:52:55 IST 2026
[2026-06-27 05:52:55,524.524 INFO    ] ================================================
[2026-06-27 05:52:55,856.856 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:52:55
[2026-06-27 05:52:56,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:52:56,307.307 INFO    ] Initializing speech engine...
[2026-06-27 05:52:56,318.318 INFO    ] 2026-06-27 05:52:56
[2026-06-27 05:52:56,523.523 INFO    ] 2026-06-27 05:52:56
[2026-06-27 05:52:56,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:52:56,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:52:56,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:52:56,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:52:56,949.949 INFO    ] time= 27/06/2026 05:52:56
[2026-06-27 05:52:56,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:52:56,980.980 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:52:57,047.047 INFO    ] No existing commands found in stream
[2026-06-27 05:53:02,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:53:02,058.058 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-27 05:53:06,439.439 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:53:06,440.440 INFO    ] Checking for system updates...
[2026-06-27 05:53:06,461.461 INFO    ] 200
[2026-06-27 05:53:06,463.463 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:53:06,495.495 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:53:06,497.497 INFO    ] No update needed
[2026-06-27 05:53:06,498.498 INFO    ] Checking for camera pi updates...
[2026-06-27 05:53:06,523.523 INFO    ] 200
[2026-06-27 05:53:06,524.524 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:53:06,549.549 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:53:06,591.591 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:53:06,592.592 INFO    ] No camera update needed
[2026-06-27 05:53:06,593.593 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:53:06,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:53:06,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:53:06,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:53:08,641.641 INFO    ] ================================================
[2026-06-27 05:53:08,657.657 INFO    ] Launching Daemon at Sat Jun 27 05:53:08 IST 2026
[2026-06-27 05:53:08,668.668 INFO    ] ================================================
[2026-06-27 05:53:09,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:53:09
[2026-06-27 05:53:09,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:53:09,476.476 INFO    ] Initializing speech engine...
[2026-06-27 05:53:09,490.490 INFO    ] 2026-06-27 05:53:09
[2026-06-27 05:53:09,697.697 INFO    ] 2026-06-27 05:53:09
[2026-06-27 05:53:09,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:53:09,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:53:09,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:53:10,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:53:10,125.125 INFO    ] time= 27/06/2026 05:53:10
[2026-06-27 05:53:10,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:53:10,154.154 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:53:10,220.220 INFO    ] No existing commands found in stream
[2026-06-27 05:53:15,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:53:15,233.233 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-27 05:53:19,546.546 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 05:53:19,547.547 INFO    ] Checking for system updates...
[2026-06-27 05:53:19,569.569 INFO    ] 200
[2026-06-27 05:53:19,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:53:19,600.600 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:53:19,602.602 INFO    ] No update needed
[2026-06-27 05:53:19,603.603 INFO    ] Checking for camera pi updates...
[2026-06-27 05:53:19,625.625 INFO    ] 200
[2026-06-27 05:53:19,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:53:19,652.652 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:53:19,688.688 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:53:19,689.689 INFO    ] No camera update needed
[2026-06-27 05:53:19,691.691 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:53:19,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:53:19,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:53:19,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:53:21,739.739 INFO    ] ================================================
[2026-06-27 05:53:21,755.755 INFO    ] Launching Daemon at Sat Jun 27 05:53:21 IST 2026
[2026-06-27 05:53:21,766.766 INFO    ] ================================================
[2026-06-27 05:53:22,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:53:22
[2026-06-27 05:53:22,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:53:22,547.547 INFO    ] Initializing speech engine...
[2026-06-27 05:53:22,556.556 INFO    ] 2026-06-27 05:53:22
[2026-06-27 05:53:22,767.767 INFO    ] 2026-06-27 05:53:22
[2026-06-27 05:53:22,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:53:22,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:53:22,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:53:23,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:53:23,170.170 INFO    ] time= 27/06/2026 05:53:23
[2026-06-27 05:53:23,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:53:23,215.215 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:53:23,286.286 INFO    ] No existing commands found in stream
[2026-06-27 05:53:28,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:53:28,298.298 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-27 05:53:28,824.824 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:53:29,031.031 INFO    ] Checking for system updates...
[2026-06-27 05:53:29,054.054 INFO    ] 200
[2026-06-27 05:53:29,056.056 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:53:29,127.127 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:53:29,129.129 INFO    ] No update needed
[2026-06-27 05:53:29,130.130 INFO    ] Checking for camera pi updates...
[2026-06-27 05:53:29,151.151 INFO    ] 200
[2026-06-27 05:53:29,153.153 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:53:29,177.177 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:53:29,225.225 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:53:29,227.227 INFO    ] No camera update needed
[2026-06-27 05:53:29,228.228 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:53:29,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:53:29,233.233 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:53:29,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:53:31,277.277 INFO    ] ================================================
[2026-06-27 05:53:31,292.292 INFO    ] Launching Daemon at Sat Jun 27 05:53:31 IST 2026
[2026-06-27 05:53:31,304.304 INFO    ] ================================================
[2026-06-27 05:53:31,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:53:31
[2026-06-27 05:53:31,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:53:32,141.141 INFO    ] Initializing speech engine...
[2026-06-27 05:53:32,154.154 INFO    ] 2026-06-27 05:53:32
[2026-06-27 05:53:32,387.387 INFO    ] 2026-06-27 05:53:32
[2026-06-27 05:53:32,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:53:32,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:53:32,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:53:32,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:53:32,834.834 INFO    ] time= 27/06/2026 05:53:32
[2026-06-27 05:53:32,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:53:32,867.867 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:53:32,933.933 INFO    ] No existing commands found in stream
[2026-06-27 05:53:37,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:53:37,948.948 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-27 05:53:42,093.093 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:53:42,095.095 INFO    ] Checking for system updates...
[2026-06-27 05:53:42,117.117 INFO    ] 200
[2026-06-27 05:53:42,119.119 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:53:42,153.153 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:53:42,154.154 INFO    ] No update needed
[2026-06-27 05:53:42,156.156 INFO    ] Checking for camera pi updates...
[2026-06-27 05:53:42,177.177 INFO    ] 200
[2026-06-27 05:53:42,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:53:42,202.202 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:53:42,239.239 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:53:42,240.240 INFO    ] No camera update needed
[2026-06-27 05:53:42,242.242 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:53:42,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:53:42,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:53:42,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:53:44,289.289 INFO    ] ================================================
[2026-06-27 05:53:44,304.304 INFO    ] Launching Daemon at Sat Jun 27 05:53:44 IST 2026
[2026-06-27 05:53:44,315.315 INFO    ] ================================================
[2026-06-27 05:53:44,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:53:44
[2026-06-27 05:53:45,017.017 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:53:45,171.171 INFO    ] Initializing speech engine...
[2026-06-27 05:53:45,177.177 INFO    ] 2026-06-27 05:53:45
[2026-06-27 05:53:45,388.388 INFO    ] 2026-06-27 05:53:45
[2026-06-27 05:53:45,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:53:45,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:53:45,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:53:45,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:53:45,822.822 INFO    ] time= 27/06/2026 05:53:45
[2026-06-27 05:53:45,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:53:45,875.875 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:53:45,953.953 INFO    ] No existing commands found in stream
[2026-06-27 05:53:50,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:53:50,965.965 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-27 05:53:53,270.270 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 05:53:53,271.271 INFO    ] Checking for system updates...
[2026-06-27 05:53:53,292.292 INFO    ] 200
[2026-06-27 05:53:53,293.293 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:53:53,325.325 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:53:53,326.326 INFO    ] No update needed
[2026-06-27 05:53:53,327.327 INFO    ] Checking for camera pi updates...
[2026-06-27 05:53:53,346.346 INFO    ] 200
[2026-06-27 05:53:53,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:53:53,372.372 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:53:53,409.409 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:53:53,410.410 INFO    ] No camera update needed
[2026-06-27 05:53:53,411.411 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:53:53,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:53:53,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:53:53,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:53:55,457.457 INFO    ] ================================================
[2026-06-27 05:53:55,473.473 INFO    ] Launching Daemon at Sat Jun 27 05:53:55 IST 2026
[2026-06-27 05:53:55,483.483 INFO    ] ================================================
[2026-06-27 05:53:55,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:53:55
[2026-06-27 05:53:56,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:53:56,289.289 INFO    ] Initializing speech engine...
[2026-06-27 05:53:56,299.299 INFO    ] 2026-06-27 05:53:56
[2026-06-27 05:53:56,505.505 INFO    ] 2026-06-27 05:53:56
[2026-06-27 05:53:56,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:53:56,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:53:56,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:53:56,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:53:56,944.944 INFO    ] time= 27/06/2026 05:53:56
[2026-06-27 05:53:56,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:53:56,951.951 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:53:57,019.019 INFO    ] No existing commands found in stream
[2026-06-27 05:54:02,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:54:02,028.028 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-27 05:54:04,569.569 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 05:54:04,570.570 INFO    ] Checking for system updates...
[2026-06-27 05:54:04,591.591 INFO    ] 200
[2026-06-27 05:54:04,592.592 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:54:04,625.625 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:54:04,627.627 INFO    ] No update needed
[2026-06-27 05:54:04,628.628 INFO    ] Checking for camera pi updates...
[2026-06-27 05:54:04,649.649 INFO    ] 200
[2026-06-27 05:54:04,650.650 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:54:04,676.676 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:54:04,722.722 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:54:04,724.724 INFO    ] No camera update needed
[2026-06-27 05:54:04,725.725 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:54:04,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:54:04,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:54:04,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:54:06,771.771 INFO    ] ================================================
[2026-06-27 05:54:06,787.787 INFO    ] Launching Daemon at Sat Jun 27 05:54:06 IST 2026
[2026-06-27 05:54:06,798.798 INFO    ] ================================================
[2026-06-27 05:54:07,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:54:07
[2026-06-27 05:54:07,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:54:07,616.616 INFO    ] Initializing speech engine...
[2026-06-27 05:54:07,621.621 INFO    ] 2026-06-27 05:54:07
[2026-06-27 05:54:07,815.815 INFO    ] 2026-06-27 05:54:07
[2026-06-27 05:54:07,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:54:08,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:54:08,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:54:08,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:54:08,270.270 INFO    ] time= 27/06/2026 05:54:08
[2026-06-27 05:54:08,301.301 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:54:08,311.311 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:54:08,382.382 INFO    ] No existing commands found in stream
[2026-06-27 05:54:13,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:54:13,396.396 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-27 05:54:17,424.424 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 05:54:17,426.426 INFO    ] Checking for system updates...
[2026-06-27 05:54:17,448.448 INFO    ] 200
[2026-06-27 05:54:17,449.449 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:54:17,480.480 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:54:17,481.481 INFO    ] No update needed
[2026-06-27 05:54:17,483.483 INFO    ] Checking for camera pi updates...
[2026-06-27 05:54:17,506.506 INFO    ] 200
[2026-06-27 05:54:17,507.507 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:54:17,530.530 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:54:17,669.669 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:54:17,671.671 INFO    ] No camera update needed
[2026-06-27 05:54:17,672.672 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:54:17,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:54:17,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:54:17,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:54:19,719.719 INFO    ] ================================================
[2026-06-27 05:54:19,734.734 INFO    ] Launching Daemon at Sat Jun 27 05:54:19 IST 2026
[2026-06-27 05:54:19,745.745 INFO    ] ================================================
[2026-06-27 05:54:20,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:54:20
[2026-06-27 05:54:20,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:54:20,537.537 INFO    ] Initializing speech engine...
[2026-06-27 05:54:20,542.542 INFO    ] 2026-06-27 05:54:20
[2026-06-27 05:54:20,750.750 INFO    ] 2026-06-27 05:54:20
[2026-06-27 05:54:20,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:54:20,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:54:20,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:54:21,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:54:21,157.157 INFO    ] time= 27/06/2026 05:54:21
[2026-06-27 05:54:21,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:54:21,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:54:21,262.262 INFO    ] No existing commands found in stream
[2026-06-27 05:54:26,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:54:26,274.274 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-27 05:54:29,061.061 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:54:29,063.063 INFO    ] Checking for system updates...
[2026-06-27 05:54:29,086.086 INFO    ] 200
[2026-06-27 05:54:29,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:54:29,121.121 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:54:29,122.122 INFO    ] No update needed
[2026-06-27 05:54:29,124.124 INFO    ] Checking for camera pi updates...
[2026-06-27 05:54:29,145.145 INFO    ] 200
[2026-06-27 05:54:29,146.146 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:54:29,172.172 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:54:29,211.211 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:54:29,212.212 INFO    ] No camera update needed
[2026-06-27 05:54:29,214.214 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:54:29,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:54:29,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:54:29,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:54:31,263.263 INFO    ] ================================================
[2026-06-27 05:54:31,278.278 INFO    ] Launching Daemon at Sat Jun 27 05:54:31 IST 2026
[2026-06-27 05:54:31,289.289 INFO    ] ================================================
[2026-06-27 05:54:31,693.693 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:54:31
[2026-06-27 05:54:32,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:54:32,234.234 INFO    ] Initializing speech engine...
[2026-06-27 05:54:32,245.245 INFO    ] 2026-06-27 05:54:32
[2026-06-27 05:54:32,453.453 INFO    ] 2026-06-27 05:54:32
[2026-06-27 05:54:32,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:54:32,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:54:32,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:54:32,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:54:32,869.869 INFO    ] time= 27/06/2026 05:54:32
[2026-06-27 05:54:32,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:54:32,902.902 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:54:32,968.968 INFO    ] No existing commands found in stream
[2026-06-27 05:54:37,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:54:37,994.994 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-27 05:54:40,955.955 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:54:40,957.957 INFO    ] Checking for system updates...
[2026-06-27 05:54:40,978.978 INFO    ] 200
[2026-06-27 05:54:40,979.979 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:54:41,010.010 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:54:41,012.012 INFO    ] No update needed
[2026-06-27 05:54:41,013.013 INFO    ] Checking for camera pi updates...
[2026-06-27 05:54:41,034.034 INFO    ] 200
[2026-06-27 05:54:41,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:54:41,059.059 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:54:41,100.100 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:54:41,101.101 INFO    ] No camera update needed
[2026-06-27 05:54:41,102.102 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:54:41,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:54:41,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:54:41,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:54:43,149.149 INFO    ] ================================================
[2026-06-27 05:54:43,165.165 INFO    ] Launching Daemon at Sat Jun 27 05:54:43 IST 2026
[2026-06-27 05:54:43,177.177 INFO    ] ================================================
[2026-06-27 05:54:43,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:54:43
[2026-06-27 05:54:43,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:54:43,979.979 INFO    ] Initializing speech engine...
[2026-06-27 05:54:43,987.987 INFO    ] 2026-06-27 05:54:43
[2026-06-27 05:54:44,201.201 INFO    ] 2026-06-27 05:54:44
[2026-06-27 05:54:44,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:54:44,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:54:44,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:54:44,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:54:44,624.624 INFO    ] time= 27/06/2026 05:54:44
[2026-06-27 05:54:44,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:54:44,654.654 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:54:44,722.722 INFO    ] No existing commands found in stream
[2026-06-27 05:54:49,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:54:49,739.739 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-27 05:54:52,485.485 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:54:52,487.487 INFO    ] Checking for system updates...
[2026-06-27 05:54:52,540.540 INFO    ] 200
[2026-06-27 05:54:52,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:54:52,575.575 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:54:52,576.576 INFO    ] No update needed
[2026-06-27 05:54:52,578.578 INFO    ] Checking for camera pi updates...
[2026-06-27 05:54:52,600.600 INFO    ] 200
[2026-06-27 05:54:52,602.602 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:54:52,625.625 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:54:52,671.671 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:54:52,672.672 INFO    ] No camera update needed
[2026-06-27 05:54:52,674.674 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:54:52,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:54:52,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:54:52,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:54:54,723.723 INFO    ] ================================================
[2026-06-27 05:54:54,739.739 INFO    ] Launching Daemon at Sat Jun 27 05:54:54 IST 2026
[2026-06-27 05:54:54,749.749 INFO    ] ================================================
[2026-06-27 05:54:55,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:54:55
[2026-06-27 05:54:55,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:54:55,545.545 INFO    ] Initializing speech engine...
[2026-06-27 05:54:55,551.551 INFO    ] 2026-06-27 05:54:55
[2026-06-27 05:54:55,754.754 INFO    ] 2026-06-27 05:54:55
[2026-06-27 05:54:55,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:54:55,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:54:55,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:54:56,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:54:56,175.175 INFO    ] time= 27/06/2026 05:54:56
[2026-06-27 05:54:56,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:54:56,204.204 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:54:56,270.270 INFO    ] No existing commands found in stream
[2026-06-27 05:55:01,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:55:01,283.283 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-27 05:55:04,965.965 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 05:55:04,967.967 INFO    ] Checking for system updates...
[2026-06-27 05:55:04,988.988 INFO    ] 200
[2026-06-27 05:55:04,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:55:05,021.021 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:55:05,023.023 INFO    ] No update needed
[2026-06-27 05:55:05,024.024 INFO    ] Checking for camera pi updates...
[2026-06-27 05:55:05,044.044 INFO    ] 200
[2026-06-27 05:55:05,046.046 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:55:05,070.070 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:55:05,116.116 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:55:05,118.118 INFO    ] No camera update needed
[2026-06-27 05:55:05,119.119 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:55:05,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:55:05,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:55:05,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:55:07,165.165 INFO    ] ================================================
[2026-06-27 05:55:07,180.180 INFO    ] Launching Daemon at Sat Jun 27 05:55:07 IST 2026
[2026-06-27 05:55:07,191.191 INFO    ] ================================================
[2026-06-27 05:55:07,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:55:07
[2026-06-27 05:55:07,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:55:08,038.038 INFO    ] Initializing speech engine...
[2026-06-27 05:55:08,044.044 INFO    ] 2026-06-27 05:55:08
[2026-06-27 05:55:08,252.252 INFO    ] 2026-06-27 05:55:08
[2026-06-27 05:55:08,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:55:08,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:55:08,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:55:08,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:55:08,692.692 INFO    ] time= 27/06/2026 05:55:08
[2026-06-27 05:55:08,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:55:08,699.699 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:55:08,767.767 INFO    ] No existing commands found in stream
[2026-06-27 05:55:13,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:55:13,810.810 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-27 05:55:14,771.771 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 05:55:14,773.773 INFO    ] Checking for system updates...
[2026-06-27 05:55:14,794.794 INFO    ] 200
[2026-06-27 05:55:14,795.795 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:55:14,829.829 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:55:14,830.830 INFO    ] No update needed
[2026-06-27 05:55:14,832.832 INFO    ] Checking for camera pi updates...
[2026-06-27 05:55:14,854.854 INFO    ] 200
[2026-06-27 05:55:14,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:55:14,879.879 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:55:14,921.921 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:55:14,922.922 INFO    ] No camera update needed
[2026-06-27 05:55:14,924.924 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:55:14,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:55:14,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:55:14,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:55:16,971.971 INFO    ] ================================================
[2026-06-27 05:55:16,986.986 INFO    ] Launching Daemon at Sat Jun 27 05:55:16 IST 2026
[2026-06-27 05:55:17,997.997 INFO    ] ================================================
[2026-06-27 05:55:17,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:55:17
[2026-06-27 05:55:17,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:55:17,798.798 INFO    ] Initializing speech engine...
[2026-06-27 05:55:17,809.809 INFO    ] 2026-06-27 05:55:17
[2026-06-27 05:55:18,014.014 INFO    ] 2026-06-27 05:55:17
[2026-06-27 05:55:18,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:55:18,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:55:18,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:55:18,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:55:18,450.450 INFO    ] time= 27/06/2026 05:55:18
[2026-06-27 05:55:18,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:55:18,497.497 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:55:18,574.574 INFO    ] No existing commands found in stream
[2026-06-27 05:55:23,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:55:23,587.587 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-27 05:55:24,384.384 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 05:55:24,385.385 INFO    ] Checking for system updates...
[2026-06-27 05:55:24,406.406 INFO    ] 200
[2026-06-27 05:55:24,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:55:24,438.438 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:55:24,440.440 INFO    ] No update needed
[2026-06-27 05:55:24,442.442 INFO    ] Checking for camera pi updates...
[2026-06-27 05:55:24,462.462 INFO    ] 200
[2026-06-27 05:55:24,463.463 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:55:24,489.489 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:55:24,528.528 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:55:24,529.529 INFO    ] No camera update needed
[2026-06-27 05:55:24,531.531 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:55:24,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:55:24,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:55:24,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:55:26,576.576 INFO    ] ================================================
[2026-06-27 05:55:26,591.591 INFO    ] Launching Daemon at Sat Jun 27 05:55:26 IST 2026
[2026-06-27 05:55:26,601.601 INFO    ] ================================================
[2026-06-27 05:55:26,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:55:26
[2026-06-27 05:55:27,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:55:27,434.434 INFO    ] Initializing speech engine...
[2026-06-27 05:55:27,439.439 INFO    ] 2026-06-27 05:55:27
[2026-06-27 05:55:27,642.642 INFO    ] 2026-06-27 05:55:27
[2026-06-27 05:55:27,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:55:27,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:55:27,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:55:28,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:55:28,060.060 INFO    ] time= 27/06/2026 05:55:28
[2026-06-27 05:55:28,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:55:28,088.088 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:55:28,154.154 INFO    ] No existing commands found in stream
[2026-06-27 05:55:33,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:55:33,164.164 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-27 05:55:35,664.664 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 05:55:35,666.666 INFO    ] Checking for system updates...
[2026-06-27 05:55:35,688.688 INFO    ] 200
[2026-06-27 05:55:35,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:55:35,723.723 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:55:35,724.724 INFO    ] No update needed
[2026-06-27 05:55:35,726.726 INFO    ] Checking for camera pi updates...
[2026-06-27 05:55:35,746.746 INFO    ] 200
[2026-06-27 05:55:35,747.747 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:55:35,772.772 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:55:35,805.805 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:55:35,807.807 INFO    ] No camera update needed
[2026-06-27 05:55:35,808.808 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:55:35,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:55:35,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:55:35,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:55:37,856.856 INFO    ] ================================================
[2026-06-27 05:55:37,871.871 INFO    ] Launching Daemon at Sat Jun 27 05:55:37 IST 2026
[2026-06-27 05:55:37,881.881 INFO    ] ================================================
[2026-06-27 05:55:38,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:55:38
[2026-06-27 05:55:38,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:55:38,701.701 INFO    ] Initializing speech engine...
[2026-06-27 05:55:38,706.706 INFO    ] 2026-06-27 05:55:38
[2026-06-27 05:55:38,910.910 INFO    ] 2026-06-27 05:55:38
[2026-06-27 05:55:38,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:55:39,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:55:39,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:55:39,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:55:39,325.325 INFO    ] time= 27/06/2026 05:55:39
[2026-06-27 05:55:39,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:55:39,359.359 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:55:39,426.426 INFO    ] No existing commands found in stream
[2026-06-27 05:55:44,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:55:44,438.438 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-27 05:55:47,985.985 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:55:47,986.986 INFO    ] Checking for system updates...
[2026-06-27 05:55:48,008.008 INFO    ] 200
[2026-06-27 05:55:48,009.009 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:55:48,042.042 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:55:48,043.043 INFO    ] No update needed
[2026-06-27 05:55:48,045.045 INFO    ] Checking for camera pi updates...
[2026-06-27 05:55:48,064.064 INFO    ] 200
[2026-06-27 05:55:48,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:55:48,089.089 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:55:48,135.135 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:55:48,136.136 INFO    ] No camera update needed
[2026-06-27 05:55:48,137.137 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:55:48,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:55:48,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:55:48,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:55:50,183.183 INFO    ] ================================================
[2026-06-27 05:55:50,198.198 INFO    ] Launching Daemon at Sat Jun 27 05:55:50 IST 2026
[2026-06-27 05:55:50,209.209 INFO    ] ================================================
[2026-06-27 05:55:50,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:55:50
[2026-06-27 05:55:50,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:55:51,025.025 INFO    ] Initializing speech engine...
[2026-06-27 05:55:51,030.030 INFO    ] 2026-06-27 05:55:51
[2026-06-27 05:55:51,236.236 INFO    ] 2026-06-27 05:55:51
[2026-06-27 05:55:51,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:55:51,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:55:51,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:55:51,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:55:51,666.666 INFO    ] time= 27/06/2026 05:55:51
[2026-06-27 05:55:51,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:55:51,719.719 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:55:51,795.795 INFO    ] No existing commands found in stream
[2026-06-27 05:55:56,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:55:56,809.809 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-27 05:55:58,047.047 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 05:55:58,049.049 INFO    ] Checking for system updates...
[2026-06-27 05:55:58,071.071 INFO    ] 200
[2026-06-27 05:55:58,072.072 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:55:58,103.103 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:55:58,105.105 INFO    ] No update needed
[2026-06-27 05:55:58,106.106 INFO    ] Checking for camera pi updates...
[2026-06-27 05:55:58,127.127 INFO    ] 200
[2026-06-27 05:55:58,128.128 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:55:58,151.151 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:55:58,188.188 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:55:58,190.190 INFO    ] No camera update needed
[2026-06-27 05:55:58,191.191 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:55:58,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:55:58,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:55:58,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:56:00,236.236 INFO    ] ================================================
[2026-06-27 05:56:00,251.251 INFO    ] Launching Daemon at Sat Jun 27 05:56:00 IST 2026
[2026-06-27 05:56:00,262.262 INFO    ] ================================================
[2026-06-27 05:56:00,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:56:00
[2026-06-27 05:56:00,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:56:01,071.071 INFO    ] Initializing speech engine...
[2026-06-27 05:56:01,079.079 INFO    ] 2026-06-27 05:56:01
[2026-06-27 05:56:01,434.434 INFO    ] 2026-06-27 05:56:01
[2026-06-27 05:56:01,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:56:01,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:56:01,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:56:01,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:56:01,929.929 INFO    ] time= 27/06/2026 05:56:01
[2026-06-27 05:56:01,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:56:01,960.960 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:56:02,029.029 INFO    ] No existing commands found in stream
[2026-06-27 05:56:07,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:56:07,040.040 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-27 05:56:07,937.937 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 05:56:07,938.938 INFO    ] Checking for system updates...
[2026-06-27 05:56:07,961.961 INFO    ] 200
[2026-06-27 05:56:07,962.962 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:56:07,993.993 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:56:07,995.995 INFO    ] No update needed
[2026-06-27 05:56:07,996.996 INFO    ] Checking for camera pi updates...
[2026-06-27 05:56:08,015.015 INFO    ] 200
[2026-06-27 05:56:08,017.017 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:56:08,040.040 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:56:08,076.076 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:56:08,077.077 INFO    ] No camera update needed
[2026-06-27 05:56:08,079.079 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:56:08,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:56:08,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:56:08,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:56:10,126.126 INFO    ] ================================================
[2026-06-27 05:56:10,141.141 INFO    ] Launching Daemon at Sat Jun 27 05:56:10 IST 2026
[2026-06-27 05:56:10,152.152 INFO    ] ================================================
[2026-06-27 05:56:10,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:56:10
[2026-06-27 05:56:10,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:56:11,002.002 INFO    ] Initializing speech engine...
[2026-06-27 05:56:11,013.013 INFO    ] 2026-06-27 05:56:11
[2026-06-27 05:56:11,229.229 INFO    ] 2026-06-27 05:56:11
[2026-06-27 05:56:11,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:56:11,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:56:11,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:56:11,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:56:11,652.652 INFO    ] time= 27/06/2026 05:56:11
[2026-06-27 05:56:11,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:56:11,689.689 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:56:11,758.758 INFO    ] No existing commands found in stream
[2026-06-27 05:56:16,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:56:16,776.776 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-27 05:56:19,412.412 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 05:56:19,414.414 INFO    ] Checking for system updates...
[2026-06-27 05:56:19,435.435 INFO    ] 200
[2026-06-27 05:56:19,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:56:19,467.467 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:56:19,469.469 INFO    ] No update needed
[2026-06-27 05:56:19,470.470 INFO    ] Checking for camera pi updates...
[2026-06-27 05:56:19,492.492 INFO    ] 200
[2026-06-27 05:56:19,494.494 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:56:19,518.518 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:56:19,660.660 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:56:19,662.662 INFO    ] No camera update needed
[2026-06-27 05:56:19,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:56:19,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:56:19,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:56:19,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:56:21,711.711 INFO    ] ================================================
[2026-06-27 05:56:21,727.727 INFO    ] Launching Daemon at Sat Jun 27 05:56:21 IST 2026
[2026-06-27 05:56:21,738.738 INFO    ] ================================================
[2026-06-27 05:56:22,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:56:22
[2026-06-27 05:56:22,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:56:22,622.622 INFO    ] Initializing speech engine...
[2026-06-27 05:56:22,627.627 INFO    ] 2026-06-27 05:56:22
[2026-06-27 05:56:22,836.836 INFO    ] 2026-06-27 05:56:22
[2026-06-27 05:56:22,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:56:23,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:56:23,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:56:23,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:56:23,254.254 INFO    ] time= 27/06/2026 05:56:23
[2026-06-27 05:56:23,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:56:23,284.284 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:56:23,351.351 INFO    ] No existing commands found in stream
[2026-06-27 05:56:28,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:56:28,369.369 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-27 05:56:32,221.221 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:56:32,222.222 INFO    ] Checking for system updates...
[2026-06-27 05:56:32,244.244 INFO    ] 200
[2026-06-27 05:56:32,245.245 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:56:32,279.279 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:56:32,280.280 INFO    ] No update needed
[2026-06-27 05:56:32,282.282 INFO    ] Checking for camera pi updates...
[2026-06-27 05:56:32,304.304 INFO    ] 200
[2026-06-27 05:56:32,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:56:32,329.329 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:56:32,355.355 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:56:32,357.357 INFO    ] No camera update needed
[2026-06-27 05:56:32,358.358 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:56:32,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:56:32,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:56:32,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:56:34,407.407 INFO    ] ================================================
[2026-06-27 05:56:34,423.423 INFO    ] Launching Daemon at Sat Jun 27 05:56:34 IST 2026
[2026-06-27 05:56:34,434.434 INFO    ] ================================================
[2026-06-27 05:56:34,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:56:34
[2026-06-27 05:56:35,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:56:35,205.205 INFO    ] Initializing speech engine...
[2026-06-27 05:56:35,209.209 INFO    ] 2026-06-27 05:56:35
[2026-06-27 05:56:35,400.400 INFO    ] 2026-06-27 05:56:35
[2026-06-27 05:56:35,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:56:35,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:56:35,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:56:35,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:56:35,708.708 INFO    ] time= 27/06/2026 05:56:35
[2026-06-27 05:56:35,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:56:35,724.724 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:56:35,825.825 INFO    ] No existing commands found in stream
[2026-06-27 05:56:40,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:56:40,845.845 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-27 05:56:41,910.910 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:56:41,912.912 INFO    ] Checking for system updates...
[2026-06-27 05:56:41,933.933 INFO    ] 200
[2026-06-27 05:56:41,934.934 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:56:41,965.965 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:56:41,966.966 INFO    ] No update needed
[2026-06-27 05:56:41,968.968 INFO    ] Checking for camera pi updates...
[2026-06-27 05:56:41,987.987 INFO    ] 200
[2026-06-27 05:56:41,988.988 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:56:42,014.014 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:56:42,051.051 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:56:42,052.052 INFO    ] No camera update needed
[2026-06-27 05:56:42,054.054 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:56:42,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:56:42,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:56:42,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:56:44,099.099 INFO    ] ================================================
[2026-06-27 05:56:44,114.114 INFO    ] Launching Daemon at Sat Jun 27 05:56:44 IST 2026
[2026-06-27 05:56:44,126.126 INFO    ] ================================================
[2026-06-27 05:56:44,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:56:44
[2026-06-27 05:56:44,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:56:44,961.961 INFO    ] Initializing speech engine...
[2026-06-27 05:56:44,971.971 INFO    ] 2026-06-27 05:56:44
[2026-06-27 05:56:45,180.180 INFO    ] 2026-06-27 05:56:45
[2026-06-27 05:56:45,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:56:45,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:56:45,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:56:45,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:56:45,606.606 INFO    ] time= 27/06/2026 05:56:45
[2026-06-27 05:56:45,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:56:45,633.633 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:56:45,725.725 INFO    ] No existing commands found in stream
[2026-06-27 05:56:50,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:56:50,742.742 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-27 05:56:54,569.569 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:56:54,571.571 INFO    ] Checking for system updates...
[2026-06-27 05:56:54,592.592 INFO    ] 200
[2026-06-27 05:56:54,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:56:54,624.624 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:56:54,626.626 INFO    ] No update needed
[2026-06-27 05:56:54,627.627 INFO    ] Checking for camera pi updates...
[2026-06-27 05:56:54,647.647 INFO    ] 200
[2026-06-27 05:56:54,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:56:54,674.674 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:56:54,696.696 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:56:54,698.698 INFO    ] No camera update needed
[2026-06-27 05:56:54,699.699 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:56:54,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:56:54,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:56:54,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:56:56,746.746 INFO    ] ================================================
[2026-06-27 05:56:56,761.761 INFO    ] Launching Daemon at Sat Jun 27 05:56:56 IST 2026
[2026-06-27 05:56:56,773.773 INFO    ] ================================================
[2026-06-27 05:56:57,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:56:57
[2026-06-27 05:56:57,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:56:57,564.564 INFO    ] Initializing speech engine...
[2026-06-27 05:56:57,570.570 INFO    ] 2026-06-27 05:56:57
[2026-06-27 05:56:57,774.774 INFO    ] 2026-06-27 05:56:57
[2026-06-27 05:56:57,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:56:57,987.987 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:56:57,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:56:58,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:56:58,193.193 INFO    ] time= 27/06/2026 05:56:58
[2026-06-27 05:56:58,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:56:58,220.220 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:56:58,285.285 INFO    ] No existing commands found in stream
[2026-06-27 05:57:03,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:57:03,299.299 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-27 05:57:03,764.764 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 05:57:03,766.766 INFO    ] Checking for system updates...
[2026-06-27 05:57:03,787.787 INFO    ] 200
[2026-06-27 05:57:03,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:57:03,819.819 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:57:03,821.821 INFO    ] No update needed
[2026-06-27 05:57:03,822.822 INFO    ] Checking for camera pi updates...
[2026-06-27 05:57:03,842.842 INFO    ] 200
[2026-06-27 05:57:03,843.843 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:57:03,867.867 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:57:03,909.909 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:57:03,910.910 INFO    ] No camera update needed
[2026-06-27 05:57:03,911.911 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:57:03,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:57:03,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:57:03,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:57:05,965.965 INFO    ] ================================================
[2026-06-27 05:57:05,982.982 INFO    ] Launching Daemon at Sat Jun 27 05:57:05 IST 2026
[2026-06-27 05:57:06,994.994 INFO    ] ================================================
[2026-06-27 05:57:06,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:57:06
[2026-06-27 05:57:06,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:57:06,795.795 INFO    ] Initializing speech engine...
[2026-06-27 05:57:06,800.800 INFO    ] 2026-06-27 05:57:06
[2026-06-27 05:57:07,002.002 INFO    ] 2026-06-27 05:57:06
[2026-06-27 05:57:07,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:57:07,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:57:07,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:57:07,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:57:07,419.419 INFO    ] time= 27/06/2026 05:57:07
[2026-06-27 05:57:07,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:57:07,452.452 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:57:07,519.519 INFO    ] No existing commands found in stream
[2026-06-27 05:57:12,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:57:12,536.536 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-27 05:57:15,090.090 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 05:57:15,092.092 INFO    ] Checking for system updates...
[2026-06-27 05:57:15,113.113 INFO    ] 200
[2026-06-27 05:57:15,114.114 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:57:15,147.147 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:57:15,148.148 INFO    ] No update needed
[2026-06-27 05:57:15,150.150 INFO    ] Checking for camera pi updates...
[2026-06-27 05:57:15,171.171 INFO    ] 200
[2026-06-27 05:57:15,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:57:15,198.198 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:57:15,246.246 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:57:15,248.248 INFO    ] No camera update needed
[2026-06-27 05:57:15,249.249 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:57:15,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:57:15,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:57:15,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:57:17,295.295 INFO    ] ================================================
[2026-06-27 05:57:17,311.311 INFO    ] Launching Daemon at Sat Jun 27 05:57:17 IST 2026
[2026-06-27 05:57:17,322.322 INFO    ] ================================================
[2026-06-27 05:57:17,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:57:17
[2026-06-27 05:57:17,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:57:18,128.128 INFO    ] Initializing speech engine...
[2026-06-27 05:57:18,139.139 INFO    ] 2026-06-27 05:57:18
[2026-06-27 05:57:18,343.343 INFO    ] 2026-06-27 05:57:18
[2026-06-27 05:57:18,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:57:18,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:57:18,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:57:18,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:57:18,764.764 INFO    ] time= 27/06/2026 05:57:18
[2026-06-27 05:57:18,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:57:18,792.792 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:57:18,857.857 INFO    ] No existing commands found in stream
[2026-06-27 05:57:23,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:57:23,871.871 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-27 05:57:24,919.919 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 05:57:24,920.920 INFO    ] Checking for system updates...
[2026-06-27 05:57:24,941.941 INFO    ] 200
[2026-06-27 05:57:24,942.942 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:57:24,972.972 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:57:24,974.974 INFO    ] No update needed
[2026-06-27 05:57:24,975.975 INFO    ] Checking for camera pi updates...
[2026-06-27 05:57:24,995.995 INFO    ] 200
[2026-06-27 05:57:24,996.996 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:57:25,019.019 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:57:25,064.064 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:57:25,066.066 INFO    ] No camera update needed
[2026-06-27 05:57:25,067.067 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:57:25,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:57:25,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:57:25,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:57:27,112.112 INFO    ] ================================================
[2026-06-27 05:57:27,127.127 INFO    ] Launching Daemon at Sat Jun 27 05:57:27 IST 2026
[2026-06-27 05:57:27,139.139 INFO    ] ================================================
[2026-06-27 05:57:27,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:57:27
[2026-06-27 05:57:27,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:57:27,926.926 INFO    ] Initializing speech engine...
[2026-06-27 05:57:27,934.934 INFO    ] 2026-06-27 05:57:27
[2026-06-27 05:57:28,146.146 INFO    ] 2026-06-27 05:57:28
[2026-06-27 05:57:28,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:57:28,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:57:28,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:57:28,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:57:28,567.567 INFO    ] time= 27/06/2026 05:57:28
[2026-06-27 05:57:28,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:57:28,595.595 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:57:28,660.660 INFO    ] No existing commands found in stream
[2026-06-27 05:57:33,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:57:33,674.674 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-27 05:57:36,424.424 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 05:57:36,426.426 INFO    ] Checking for system updates...
[2026-06-27 05:57:36,461.461 INFO    ] 200
[2026-06-27 05:57:36,462.462 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:57:36,493.493 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:57:36,494.494 INFO    ] No update needed
[2026-06-27 05:57:36,495.495 INFO    ] Checking for camera pi updates...
[2026-06-27 05:57:36,517.517 INFO    ] 200
[2026-06-27 05:57:36,522.522 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:57:36,553.553 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:57:36,589.589 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:57:36,590.590 INFO    ] No camera update needed
[2026-06-27 05:57:36,592.592 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:57:36,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:57:36,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:57:36,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:57:38,638.638 INFO    ] ================================================
[2026-06-27 05:57:38,655.655 INFO    ] Launching Daemon at Sat Jun 27 05:57:38 IST 2026
[2026-06-27 05:57:38,665.665 INFO    ] ================================================
[2026-06-27 05:57:39,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:57:39
[2026-06-27 05:57:39,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:57:39,458.458 INFO    ] Initializing speech engine...
[2026-06-27 05:57:39,463.463 INFO    ] 2026-06-27 05:57:39
[2026-06-27 05:57:39,667.667 INFO    ] 2026-06-27 05:57:39
[2026-06-27 05:57:39,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:57:39,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:57:39,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:57:40,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:57:40,074.074 INFO    ] time= 27/06/2026 05:57:40
[2026-06-27 05:57:40,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:57:40,111.111 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:57:40,178.178 INFO    ] No existing commands found in stream
[2026-06-27 05:57:45,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:57:45,189.189 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-27 05:57:46,986.986 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 05:57:46,987.987 INFO    ] Checking for system updates...
[2026-06-27 05:57:47,008.008 INFO    ] 200
[2026-06-27 05:57:47,009.009 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:57:47,042.042 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:57:47,043.043 INFO    ] No update needed
[2026-06-27 05:57:47,045.045 INFO    ] Checking for camera pi updates...
[2026-06-27 05:57:47,065.065 INFO    ] 200
[2026-06-27 05:57:47,067.067 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:57:47,090.090 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:57:47,129.129 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:57:47,130.130 INFO    ] No camera update needed
[2026-06-27 05:57:47,131.131 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:57:47,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:57:47,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:57:47,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:57:49,178.178 INFO    ] ================================================
[2026-06-27 05:57:49,194.194 INFO    ] Launching Daemon at Sat Jun 27 05:57:49 IST 2026
[2026-06-27 05:57:49,206.206 INFO    ] ================================================
[2026-06-27 05:57:49,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:57:49
[2026-06-27 05:57:49,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:57:50,014.014 INFO    ] Initializing speech engine...
[2026-06-27 05:57:50,018.018 INFO    ] 2026-06-27 05:57:50
[2026-06-27 05:57:50,248.248 INFO    ] 2026-06-27 05:57:50
[2026-06-27 05:57:50,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:57:50,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:57:50,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:57:50,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:57:50,684.684 INFO    ] time= 27/06/2026 05:57:50
[2026-06-27 05:57:50,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:57:50,732.732 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:57:50,831.831 INFO    ] No existing commands found in stream
[2026-06-27 05:57:55,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:57:55,844.844 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-27 05:57:59,378.378 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:57:59,380.380 INFO    ] Checking for system updates...
[2026-06-27 05:57:59,403.403 INFO    ] 200
[2026-06-27 05:57:59,405.405 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:57:59,436.436 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:57:59,437.437 INFO    ] No update needed
[2026-06-27 05:57:59,438.438 INFO    ] Checking for camera pi updates...
[2026-06-27 05:57:59,460.460 INFO    ] 200
[2026-06-27 05:57:59,461.461 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:57:59,485.485 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:57:59,521.521 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:57:59,522.522 INFO    ] No camera update needed
[2026-06-27 05:57:59,524.524 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:57:59,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:57:59,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:57:59,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:58:01,566.566 INFO    ] ================================================
[2026-06-27 05:58:01,577.577 INFO    ] Launching Daemon at Sat Jun 27 05:58:01 IST 2026
[2026-06-27 05:58:01,585.585 INFO    ] ================================================
[2026-06-27 05:58:01,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:58:01
[2026-06-27 05:58:02,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:58:02,424.424 INFO    ] Initializing speech engine...
[2026-06-27 05:58:02,434.434 INFO    ] 2026-06-27 05:58:02
[2026-06-27 05:58:02,641.641 INFO    ] 2026-06-27 05:58:02
[2026-06-27 05:58:02,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:58:02,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:58:02,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:58:02,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:58:03,064.064 INFO    ] time= 27/06/2026 05:58:03
[2026-06-27 05:58:03,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:58:03,090.090 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:58:03,162.162 INFO    ] No existing commands found in stream
[2026-06-27 05:58:08,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:58:08,175.175 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-27 05:58:12,502.502 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 05:58:12,504.504 INFO    ] Checking for system updates...
[2026-06-27 05:58:12,525.525 INFO    ] 200
[2026-06-27 05:58:12,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:58:12,558.558 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:58:12,560.560 INFO    ] No update needed
[2026-06-27 05:58:12,561.561 INFO    ] Checking for camera pi updates...
[2026-06-27 05:58:12,580.580 INFO    ] 200
[2026-06-27 05:58:12,582.582 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:58:12,605.605 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:58:12,645.645 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:58:12,646.646 INFO    ] No camera update needed
[2026-06-27 05:58:12,647.647 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:58:12,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:58:12,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:58:12,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:58:14,695.695 INFO    ] ================================================
[2026-06-27 05:58:14,711.711 INFO    ] Launching Daemon at Sat Jun 27 05:58:14 IST 2026
[2026-06-27 05:58:14,722.722 INFO    ] ================================================
[2026-06-27 05:58:15,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:58:15
[2026-06-27 05:58:15,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:58:15,544.544 INFO    ] Initializing speech engine...
[2026-06-27 05:58:15,549.549 INFO    ] 2026-06-27 05:58:15
[2026-06-27 05:58:15,755.755 INFO    ] 2026-06-27 05:58:15
[2026-06-27 05:58:15,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:58:15,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:58:15,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:58:16,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:58:16,177.177 INFO    ] time= 27/06/2026 05:58:16
[2026-06-27 05:58:16,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:58:16,206.206 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:58:16,274.274 INFO    ] No existing commands found in stream
[2026-06-27 05:58:21,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:58:21,287.287 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-27 05:58:25,638.638 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 05:58:25,640.640 INFO    ] Checking for system updates...
[2026-06-27 05:58:25,661.661 INFO    ] 200
[2026-06-27 05:58:25,662.662 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:58:25,699.699 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:58:25,700.700 INFO    ] No update needed
[2026-06-27 05:58:25,701.701 INFO    ] Checking for camera pi updates...
[2026-06-27 05:58:25,722.722 INFO    ] 200
[2026-06-27 05:58:25,723.723 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:58:25,747.747 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:58:25,887.887 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:58:25,888.888 INFO    ] No camera update needed
[2026-06-27 05:58:25,890.890 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:58:25,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:58:25,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:58:25,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:58:27,936.936 INFO    ] ================================================
[2026-06-27 05:58:27,951.951 INFO    ] Launching Daemon at Sat Jun 27 05:58:27 IST 2026
[2026-06-27 05:58:27,962.962 INFO    ] ================================================
[2026-06-27 05:58:28,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:58:28
[2026-06-27 05:58:28,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:58:28,757.757 INFO    ] Initializing speech engine...
[2026-06-27 05:58:28,762.762 INFO    ] 2026-06-27 05:58:28
[2026-06-27 05:58:28,967.967 INFO    ] 2026-06-27 05:58:28
[2026-06-27 05:58:28,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:58:29,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:58:29,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:58:29,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:58:29,389.389 INFO    ] time= 27/06/2026 05:58:29
[2026-06-27 05:58:29,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:58:29,416.416 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:58:29,485.485 INFO    ] No existing commands found in stream
[2026-06-27 05:58:34,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:58:34,497.497 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-27 05:58:35,585.585 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:58:35,586.586 INFO    ] Checking for system updates...
[2026-06-27 05:58:35,607.607 INFO    ] 200
[2026-06-27 05:58:35,608.608 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:58:35,639.639 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:58:35,640.640 INFO    ] No update needed
[2026-06-27 05:58:35,641.641 INFO    ] Checking for camera pi updates...
[2026-06-27 05:58:35,663.663 INFO    ] 200
[2026-06-27 05:58:35,665.665 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:58:35,688.688 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:58:35,723.723 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:58:35,724.724 INFO    ] No camera update needed
[2026-06-27 05:58:35,726.726 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:58:35,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:58:35,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:58:35,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:58:37,772.772 INFO    ] ================================================
[2026-06-27 05:58:37,787.787 INFO    ] Launching Daemon at Sat Jun 27 05:58:37 IST 2026
[2026-06-27 05:58:37,798.798 INFO    ] ================================================
[2026-06-27 05:58:38,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:58:38
[2026-06-27 05:58:38,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:58:38,612.612 INFO    ] Initializing speech engine...
[2026-06-27 05:58:38,617.617 INFO    ] 2026-06-27 05:58:38
[2026-06-27 05:58:38,826.826 INFO    ] 2026-06-27 05:58:38
[2026-06-27 05:58:38,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:58:39,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:58:39,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:58:39,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:58:39,139.139 INFO    ] time= 27/06/2026 05:58:39
[2026-06-27 05:58:39,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:58:39,141.141 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:58:39,203.203 INFO    ] No existing commands found in stream
[2026-06-27 05:58:44,225.225 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:58:44,228.228 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-27 05:58:46,408.408 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 05:58:46,409.409 INFO    ] Checking for system updates...
[2026-06-27 05:58:46,432.432 INFO    ] 200
[2026-06-27 05:58:46,433.433 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:58:46,465.465 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:58:46,467.467 INFO    ] No update needed
[2026-06-27 05:58:46,468.468 INFO    ] Checking for camera pi updates...
[2026-06-27 05:58:46,488.488 INFO    ] 200
[2026-06-27 05:58:46,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:58:46,514.514 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:58:46,548.548 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:58:46,549.549 INFO    ] No camera update needed
[2026-06-27 05:58:46,551.551 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:58:46,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:58:46,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:58:46,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:58:48,598.598 INFO    ] ================================================
[2026-06-27 05:58:48,614.614 INFO    ] Launching Daemon at Sat Jun 27 05:58:48 IST 2026
[2026-06-27 05:58:48,624.624 INFO    ] ================================================
[2026-06-27 05:58:49,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:58:49
[2026-06-27 05:58:49,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:58:49,496.496 INFO    ] Initializing speech engine...
[2026-06-27 05:58:49,502.502 INFO    ] 2026-06-27 05:58:49
[2026-06-27 05:58:49,710.710 INFO    ] 2026-06-27 05:58:49
[2026-06-27 05:58:49,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:58:49,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:58:49,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:58:50,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:58:50,136.136 INFO    ] time= 27/06/2026 05:58:50
[2026-06-27 05:58:50,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:58:50,163.163 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:58:50,230.230 INFO    ] No existing commands found in stream
[2026-06-27 05:58:55,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:58:55,248.248 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-27 05:58:57,936.936 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:58:57,938.938 INFO    ] Checking for system updates...
[2026-06-27 05:58:57,961.961 INFO    ] 200
[2026-06-27 05:58:57,962.962 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:58:57,997.997 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:58:57,998.998 INFO    ] No update needed
[2026-06-27 05:58:58,000.000 INFO    ] Checking for camera pi updates...
[2026-06-27 05:58:58,022.022 INFO    ] 200
[2026-06-27 05:58:58,024.024 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:58:58,047.047 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:58:58,086.086 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:58:58,088.088 INFO    ] No camera update needed
[2026-06-27 05:58:58,089.089 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:58:58,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:58:58,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:58:58,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:59:00,135.135 INFO    ] ================================================
[2026-06-27 05:59:00,151.151 INFO    ] Launching Daemon at Sat Jun 27 05:59:00 IST 2026
[2026-06-27 05:59:00,162.162 INFO    ] ================================================
[2026-06-27 05:59:00,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:59:00
[2026-06-27 05:59:00,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:59:00,955.955 INFO    ] Initializing speech engine...
[2026-06-27 05:59:00,963.963 INFO    ] 2026-06-27 05:59:00
[2026-06-27 05:59:01,177.177 INFO    ] 2026-06-27 05:59:01
[2026-06-27 05:59:01,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:59:01,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:59:01,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:59:01,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:59:01,517.517 INFO    ] time= 27/06/2026 05:59:01
[2026-06-27 05:59:01,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:59:01,523.523 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:59:01,574.574 INFO    ] No existing commands found in stream
[2026-06-27 05:59:06,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:59:06,587.587 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-27 05:59:09,844.844 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 05:59:09,846.846 INFO    ] Checking for system updates...
[2026-06-27 05:59:09,866.866 INFO    ] 200
[2026-06-27 05:59:09,868.868 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:59:09,898.898 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:59:09,899.899 INFO    ] No update needed
[2026-06-27 05:59:09,901.901 INFO    ] Checking for camera pi updates...
[2026-06-27 05:59:09,920.920 INFO    ] 200
[2026-06-27 05:59:09,921.921 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:59:09,945.945 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:59:09,990.990 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:59:09,992.992 INFO    ] No camera update needed
[2026-06-27 05:59:09,993.993 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:59:09,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:59:09,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:59:10,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:59:12,040.040 INFO    ] ================================================
[2026-06-27 05:59:12,056.056 INFO    ] Launching Daemon at Sat Jun 27 05:59:12 IST 2026
[2026-06-27 05:59:12,066.066 INFO    ] ================================================
[2026-06-27 05:59:12,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:59:12
[2026-06-27 05:59:12,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:59:12,884.884 INFO    ] Initializing speech engine...
[2026-06-27 05:59:12,889.889 INFO    ] 2026-06-27 05:59:12
[2026-06-27 05:59:13,096.096 INFO    ] 2026-06-27 05:59:13
[2026-06-27 05:59:13,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:59:13,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:59:13,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:59:13,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:59:13,490.490 INFO    ] time= 27/06/2026 05:59:13
[2026-06-27 05:59:13,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:59:13,539.539 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:59:13,635.635 INFO    ] No existing commands found in stream
[2026-06-27 05:59:18,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:59:18,647.647 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-27 05:59:19,970.970 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:59:19,972.972 INFO    ] Checking for system updates...
[2026-06-27 05:59:19,994.994 INFO    ] 200
[2026-06-27 05:59:19,995.995 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:59:20,026.026 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:59:20,027.027 INFO    ] No update needed
[2026-06-27 05:59:20,029.029 INFO    ] Checking for camera pi updates...
[2026-06-27 05:59:20,048.048 INFO    ] 200
[2026-06-27 05:59:20,050.050 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:59:20,078.078 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:59:20,117.117 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:59:20,118.118 INFO    ] No camera update needed
[2026-06-27 05:59:20,120.120 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:59:20,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:59:20,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:59:20,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:59:22,167.167 INFO    ] ================================================
[2026-06-27 05:59:22,332.332 INFO    ] Launching Daemon at Sat Jun 27 05:59:22 IST 2026
[2026-06-27 05:59:22,344.344 INFO    ] ================================================
[2026-06-27 05:59:22,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:59:22
[2026-06-27 05:59:23,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:59:23,182.182 INFO    ] Initializing speech engine...
[2026-06-27 05:59:23,196.196 INFO    ] 2026-06-27 05:59:23
[2026-06-27 05:59:23,404.404 INFO    ] 2026-06-27 05:59:23
[2026-06-27 05:59:23,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:59:23,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:59:23,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:59:23,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:59:23,826.826 INFO    ] time= 27/06/2026 05:59:23
[2026-06-27 05:59:23,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:59:23,861.861 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:59:23,929.929 INFO    ] No existing commands found in stream
[2026-06-27 05:59:28,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:59:28,940.940 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-27 05:59:31,806.806 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 05:59:31,807.807 INFO    ] Checking for system updates...
[2026-06-27 05:59:31,832.832 INFO    ] 200
[2026-06-27 05:59:31,834.834 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:59:31,875.875 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:59:31,876.876 INFO    ] No update needed
[2026-06-27 05:59:31,878.878 INFO    ] Checking for camera pi updates...
[2026-06-27 05:59:31,903.903 INFO    ] 200
[2026-06-27 05:59:31,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:59:31,931.931 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:59:31,958.958 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:59:31,960.960 INFO    ] No camera update needed
[2026-06-27 05:59:31,961.961 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:59:31,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:59:31,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:59:31,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:59:34,004.004 INFO    ] ================================================
[2026-06-27 05:59:34,020.020 INFO    ] Launching Daemon at Sat Jun 27 05:59:34 IST 2026
[2026-06-27 05:59:34,031.031 INFO    ] ================================================
[2026-06-27 05:59:34,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:59:34
[2026-06-27 05:59:34,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:59:34,855.855 INFO    ] Initializing speech engine...
[2026-06-27 05:59:34,860.860 INFO    ] 2026-06-27 05:59:34
[2026-06-27 05:59:35,059.059 INFO    ] 2026-06-27 05:59:35
[2026-06-27 05:59:35,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:59:35,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:59:35,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:59:35,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:59:35,532.532 INFO    ] time= 27/06/2026 05:59:35
[2026-06-27 05:59:35,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:59:35,560.560 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:59:35,639.639 INFO    ] No existing commands found in stream
[2026-06-27 05:59:40,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:59:40,666.666 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-27 05:59:44,618.618 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 05:59:44,620.620 INFO    ] Checking for system updates...
[2026-06-27 05:59:44,640.640 INFO    ] 200
[2026-06-27 05:59:44,642.642 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:59:44,672.672 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:59:44,674.674 INFO    ] No update needed
[2026-06-27 05:59:44,675.675 INFO    ] Checking for camera pi updates...
[2026-06-27 05:59:44,698.698 INFO    ] 200
[2026-06-27 05:59:44,699.699 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:59:44,722.722 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:59:44,759.759 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 05:59:44,761.761 INFO    ] No camera update needed
[2026-06-27 05:59:44,762.762 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:59:44,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:59:44,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:59:44,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:59:46,808.808 INFO    ] ================================================
[2026-06-27 05:59:46,824.824 INFO    ] Launching Daemon at Sat Jun 27 05:59:46 IST 2026
[2026-06-27 05:59:46,835.835 INFO    ] ================================================
[2026-06-27 05:59:47,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:59:47
[2026-06-27 05:59:47,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:59:47,657.657 INFO    ] Initializing speech engine...
[2026-06-27 05:59:47,661.661 INFO    ] 2026-06-27 05:59:47
[2026-06-27 05:59:47,869.869 INFO    ] 2026-06-27 05:59:47
[2026-06-27 05:59:47,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:59:48,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:59:48,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:59:48,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:59:48,296.296 INFO    ] time= 27/06/2026 05:59:48
[2026-06-27 05:59:48,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:59:48,325.325 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:59:48,391.391 INFO    ] No existing commands found in stream
[2026-06-27 05:59:53,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 05:59:53,405.405 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-27 05:59:53,868.868 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 05:59:53,869.869 INFO    ] Checking for system updates...
[2026-06-27 05:59:53,890.890 INFO    ] 200
[2026-06-27 05:59:53,891.891 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:59:53,922.922 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:59:53,923.923 INFO    ] No update needed
[2026-06-27 05:59:53,925.925 INFO    ] Checking for camera pi updates...
[2026-06-27 05:59:53,946.946 INFO    ] 200
[2026-06-27 05:59:53,947.947 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 05:59:53,971.971 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 05:59:53,996.996 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 05:59:53,997.997 INFO    ] No camera update needed
[2026-06-27 05:59:53,998.998 INFO    ] Script finished. Safe exiting...
[2026-06-27 05:59:53,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 05:59:54,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 05:59:54,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 05:59:56,044.044 INFO    ] ================================================
[2026-06-27 05:59:56,060.060 INFO    ] Launching Daemon at Sat Jun 27 05:59:56 IST 2026
[2026-06-27 05:59:56,071.071 INFO    ] ================================================
[2026-06-27 05:59:56,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 05:59:56
[2026-06-27 05:59:56,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 05:59:56,909.909 INFO    ] Initializing speech engine...
[2026-06-27 05:59:56,914.914 INFO    ] 2026-06-27 05:59:56
[2026-06-27 05:59:57,119.119 INFO    ] 2026-06-27 05:59:57
[2026-06-27 05:59:57,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 05:59:57,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 05:59:57,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 05:59:57,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 05:59:57,531.531 INFO    ] time= 27/06/2026 05:59:57
[2026-06-27 05:59:57,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 05:59:57,566.566 INFO    ] Checking for existing commands in stream...
[2026-06-27 05:59:57,661.661 INFO    ] No existing commands found in stream
[2026-06-27 06:00:02,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:00:02,679.679 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-27 06:00:06,248.248 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 06:00:06,251.251 INFO    ] Checking for system updates...
[2026-06-27 06:00:06,287.287 INFO    ] 200
[2026-06-27 06:00:06,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:00:06,354.354 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:00:06,357.357 INFO    ] No update needed
[2026-06-27 06:00:06,359.359 INFO    ] Checking for camera pi updates...
[2026-06-27 06:00:06,395.395 INFO    ] 200
[2026-06-27 06:00:06,396.396 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:00:06,419.419 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:00:06,460.460 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:00:06,461.461 INFO    ] No camera update needed
[2026-06-27 06:00:06,462.462 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:00:06,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:00:06,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:00:06,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:00:08,507.507 INFO    ] ================================================
[2026-06-27 06:00:08,522.522 INFO    ] Launching Daemon at Sat Jun 27 06:00:08 IST 2026
[2026-06-27 06:00:08,533.533 INFO    ] ================================================
[2026-06-27 06:00:08,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:00:08
[2026-06-27 06:00:09,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:00:09,337.337 INFO    ] Initializing speech engine...
[2026-06-27 06:00:09,347.347 INFO    ] 2026-06-27 06:00:09
[2026-06-27 06:00:09,554.554 INFO    ] 2026-06-27 06:00:09
[2026-06-27 06:00:09,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:00:09,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:00:09,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:00:09,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:00:09,983.983 INFO    ] time= 27/06/2026 06:00:09
[2026-06-27 06:00:10,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:00:10,012.012 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:00:10,080.080 INFO    ] No existing commands found in stream
[2026-06-27 06:00:15,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:00:15,092.092 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-27 06:00:18,846.846 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 06:00:18,847.847 INFO    ] Checking for system updates...
[2026-06-27 06:00:18,868.868 INFO    ] 200
[2026-06-27 06:00:18,869.869 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:00:18,900.900 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:00:18,901.901 INFO    ] No update needed
[2026-06-27 06:00:18,902.902 INFO    ] Checking for camera pi updates...
[2026-06-27 06:00:18,924.924 INFO    ] 200
[2026-06-27 06:00:18,925.925 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:00:18,949.949 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:00:18,984.984 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:00:18,986.986 INFO    ] No camera update needed
[2026-06-27 06:00:18,987.987 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:00:18,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:00:18,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:00:18,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:00:21,033.033 INFO    ] ================================================
[2026-06-27 06:00:21,049.049 INFO    ] Launching Daemon at Sat Jun 27 06:00:21 IST 2026
[2026-06-27 06:00:21,059.059 INFO    ] ================================================
[2026-06-27 06:00:21,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:00:21
[2026-06-27 06:00:21,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:00:21,871.871 INFO    ] Initializing speech engine...
[2026-06-27 06:00:21,879.879 INFO    ] 2026-06-27 06:00:21
[2026-06-27 06:00:22,088.088 INFO    ] 2026-06-27 06:00:22
[2026-06-27 06:00:22,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:00:22,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:00:22,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:00:22,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:00:22,494.494 INFO    ] time= 27/06/2026 06:00:22
[2026-06-27 06:00:22,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:00:22,539.539 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:00:22,611.611 INFO    ] No existing commands found in stream
[2026-06-27 06:00:27,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:00:27,640.640 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-27 06:00:31,053.053 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 06:00:31,054.054 INFO    ] Checking for system updates...
[2026-06-27 06:00:31,076.076 INFO    ] 200
[2026-06-27 06:00:31,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:00:31,108.108 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:00:31,109.109 INFO    ] No update needed
[2026-06-27 06:00:31,111.111 INFO    ] Checking for camera pi updates...
[2026-06-27 06:00:31,131.131 INFO    ] 200
[2026-06-27 06:00:31,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:00:31,156.156 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:00:31,296.296 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:00:31,297.297 INFO    ] No camera update needed
[2026-06-27 06:00:31,299.299 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:00:31,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:00:31,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:00:31,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:00:33,330.330 INFO    ] ================================================
[2026-06-27 06:00:33,338.338 INFO    ] Launching Daemon at Sat Jun 27 06:00:33 IST 2026
[2026-06-27 06:00:33,344.344 INFO    ] ================================================
[2026-06-27 06:00:33,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:00:33
[2026-06-27 06:00:33,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:00:34,094.094 INFO    ] Initializing speech engine...
[2026-06-27 06:00:34,106.106 INFO    ] 2026-06-27 06:00:34
[2026-06-27 06:00:34,315.315 INFO    ] 2026-06-27 06:00:34
[2026-06-27 06:00:34,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:00:34,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:00:34,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:00:34,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:00:34,723.723 INFO    ] time= 27/06/2026 06:00:34
[2026-06-27 06:00:34,767.767 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:00:34,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:00:34,839.839 INFO    ] No existing commands found in stream
[2026-06-27 06:00:39,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:00:39,853.853 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-27 06:00:41,666.666 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:00:41,668.668 INFO    ] Checking for system updates...
[2026-06-27 06:00:41,691.691 INFO    ] 200
[2026-06-27 06:00:41,692.692 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:00:41,727.727 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:00:41,728.728 INFO    ] No update needed
[2026-06-27 06:00:41,730.730 INFO    ] Checking for camera pi updates...
[2026-06-27 06:00:41,749.749 INFO    ] 200
[2026-06-27 06:00:41,751.751 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:00:41,776.776 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:00:41,806.806 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:00:41,807.807 INFO    ] No camera update needed
[2026-06-27 06:00:41,808.808 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:00:41,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:00:41,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:00:41,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:00:43,856.856 INFO    ] ================================================
[2026-06-27 06:00:43,871.871 INFO    ] Launching Daemon at Sat Jun 27 06:00:43 IST 2026
[2026-06-27 06:00:43,881.881 INFO    ] ================================================
[2026-06-27 06:00:44,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:00:44
[2026-06-27 06:00:44,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:00:44,758.758 INFO    ] Initializing speech engine...
[2026-06-27 06:00:44,763.763 INFO    ] 2026-06-27 06:00:44
[2026-06-27 06:00:44,975.975 INFO    ] 2026-06-27 06:00:44
[2026-06-27 06:00:45,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:00:45,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:00:45,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:00:45,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:00:45,399.399 INFO    ] time= 27/06/2026 06:00:45
[2026-06-27 06:00:45,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:00:45,429.429 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:00:45,496.496 INFO    ] No existing commands found in stream
[2026-06-27 06:00:50,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:00:50,508.508 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-27 06:00:54,124.124 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 06:00:54,126.126 INFO    ] Checking for system updates...
[2026-06-27 06:00:54,147.147 INFO    ] 200
[2026-06-27 06:00:54,148.148 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:00:54,179.179 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:00:54,181.181 INFO    ] No update needed
[2026-06-27 06:00:54,182.182 INFO    ] Checking for camera pi updates...
[2026-06-27 06:00:54,202.202 INFO    ] 200
[2026-06-27 06:00:54,204.204 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:00:54,228.228 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:00:54,258.258 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:00:54,259.259 INFO    ] No camera update needed
[2026-06-27 06:00:54,261.261 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:00:54,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:00:54,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:00:54,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:00:56,307.307 INFO    ] ================================================
[2026-06-27 06:00:56,322.322 INFO    ] Launching Daemon at Sat Jun 27 06:00:56 IST 2026
[2026-06-27 06:00:56,333.333 INFO    ] ================================================
[2026-06-27 06:00:56,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:00:56
[2026-06-27 06:00:56,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:00:57,109.109 INFO    ] Initializing speech engine...
[2026-06-27 06:00:57,116.116 INFO    ] 2026-06-27 06:00:57
[2026-06-27 06:00:57,325.325 INFO    ] 2026-06-27 06:00:57
[2026-06-27 06:00:57,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:00:57,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:00:57,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:00:57,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:00:57,752.752 INFO    ] time= 27/06/2026 06:00:57
[2026-06-27 06:00:57,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:00:57,787.787 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:00:57,858.858 INFO    ] No existing commands found in stream
[2026-06-27 06:01:02,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:01:02,866.866 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-27 06:01:03,767.767 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:01:03,769.769 INFO    ] Checking for system updates...
[2026-06-27 06:01:03,791.791 INFO    ] 200
[2026-06-27 06:01:03,792.792 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:01:03,826.826 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:01:03,827.827 INFO    ] No update needed
[2026-06-27 06:01:03,828.828 INFO    ] Checking for camera pi updates...
[2026-06-27 06:01:03,848.848 INFO    ] 200
[2026-06-27 06:01:03,849.849 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:01:03,874.874 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:01:03,916.916 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:01:03,918.918 INFO    ] No camera update needed
[2026-06-27 06:01:03,919.919 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:01:03,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:01:03,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:01:03,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:01:05,966.966 INFO    ] ================================================
[2026-06-27 06:01:05,982.982 INFO    ] Launching Daemon at Sat Jun 27 06:01:05 IST 2026
[2026-06-27 06:01:05,993.993 INFO    ] ================================================
[2026-06-27 06:01:06,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:01:06
[2026-06-27 06:01:06,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:01:06,818.818 INFO    ] Initializing speech engine...
[2026-06-27 06:01:06,821.821 INFO    ] 2026-06-27 06:01:06
[2026-06-27 06:01:07,045.045 INFO    ] 2026-06-27 06:01:07
[2026-06-27 06:01:07,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:01:07,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:01:07,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:01:07,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:01:07,473.473 INFO    ] time= 27/06/2026 06:01:07
[2026-06-27 06:01:07,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:01:07,503.503 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:01:07,596.596 INFO    ] No existing commands found in stream
[2026-06-27 06:01:12,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:01:12,613.613 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-27 06:01:16,553.553 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 06:01:16,555.555 INFO    ] Checking for system updates...
[2026-06-27 06:01:16,576.576 INFO    ] 200
[2026-06-27 06:01:16,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:01:16,611.611 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:01:16,613.613 INFO    ] No update needed
[2026-06-27 06:01:16,615.615 INFO    ] Checking for camera pi updates...
[2026-06-27 06:01:16,635.635 INFO    ] 200
[2026-06-27 06:01:16,636.636 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:01:16,660.660 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:01:16,700.700 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:01:16,701.701 INFO    ] No camera update needed
[2026-06-27 06:01:16,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:01:16,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:01:16,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:01:16,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:01:18,752.752 INFO    ] ================================================
[2026-06-27 06:01:18,769.769 INFO    ] Launching Daemon at Sat Jun 27 06:01:18 IST 2026
[2026-06-27 06:01:18,780.780 INFO    ] ================================================
[2026-06-27 06:01:19,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:01:19
[2026-06-27 06:01:19,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:01:19,562.562 INFO    ] Initializing speech engine...
[2026-06-27 06:01:19,565.565 INFO    ] 2026-06-27 06:01:19
[2026-06-27 06:01:19,759.759 INFO    ] 2026-06-27 06:01:19
[2026-06-27 06:01:19,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:01:19,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:01:20,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:01:20,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:01:20,224.224 INFO    ] time= 27/06/2026 06:01:20
[2026-06-27 06:01:20,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:01:20,292.292 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:01:20,369.369 INFO    ] No existing commands found in stream
[2026-06-27 06:01:25,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:01:25,383.383 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-27 06:01:27,583.583 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 06:01:27,585.585 INFO    ] Checking for system updates...
[2026-06-27 06:01:27,606.606 INFO    ] 200
[2026-06-27 06:01:27,607.607 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:01:27,640.640 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:01:27,641.641 INFO    ] No update needed
[2026-06-27 06:01:27,643.643 INFO    ] Checking for camera pi updates...
[2026-06-27 06:01:27,664.664 INFO    ] 200
[2026-06-27 06:01:27,665.665 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:01:27,691.691 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:01:27,728.728 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:01:27,729.729 INFO    ] No camera update needed
[2026-06-27 06:01:27,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:01:27,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:01:27,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:01:27,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:01:29,778.778 INFO    ] ================================================
[2026-06-27 06:01:29,794.794 INFO    ] Launching Daemon at Sat Jun 27 06:01:29 IST 2026
[2026-06-27 06:01:29,805.805 INFO    ] ================================================
[2026-06-27 06:01:30,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:01:30
[2026-06-27 06:01:30,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:01:30,591.591 INFO    ] Initializing speech engine...
[2026-06-27 06:01:30,597.597 INFO    ] 2026-06-27 06:01:30
[2026-06-27 06:01:30,803.803 INFO    ] 2026-06-27 06:01:30
[2026-06-27 06:01:30,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:01:30,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:01:31,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:01:31,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:01:31,237.237 INFO    ] time= 27/06/2026 06:01:31
[2026-06-27 06:01:31,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:01:31,271.271 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:01:31,341.341 INFO    ] No existing commands found in stream
[2026-06-27 06:01:36,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:01:36,358.358 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-27 06:01:36,765.765 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 06:01:36,767.767 INFO    ] Checking for system updates...
[2026-06-27 06:01:36,789.789 INFO    ] 200
[2026-06-27 06:01:36,791.791 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:01:36,821.821 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:01:36,822.822 INFO    ] No update needed
[2026-06-27 06:01:36,823.823 INFO    ] Checking for camera pi updates...
[2026-06-27 06:01:36,843.843 INFO    ] 200
[2026-06-27 06:01:36,845.845 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:01:36,868.868 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:01:36,908.908 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:01:36,909.909 INFO    ] No camera update needed
[2026-06-27 06:01:36,910.910 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:01:36,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:01:36,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:01:36,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:01:38,956.956 INFO    ] ================================================
[2026-06-27 06:01:38,972.972 INFO    ] Launching Daemon at Sat Jun 27 06:01:38 IST 2026
[2026-06-27 06:01:38,984.984 INFO    ] ================================================
[2026-06-27 06:01:39,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:01:39
[2026-06-27 06:01:39,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:01:39,752.752 INFO    ] Initializing speech engine...
[2026-06-27 06:01:39,765.765 INFO    ] 2026-06-27 06:01:39
[2026-06-27 06:01:39,971.971 INFO    ] 2026-06-27 06:01:39
[2026-06-27 06:01:40,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:01:40,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:01:40,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:01:40,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:01:40,391.391 INFO    ] time= 27/06/2026 06:01:40
[2026-06-27 06:01:40,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:01:40,420.420 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:01:40,486.486 INFO    ] No existing commands found in stream
[2026-06-27 06:01:45,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:01:45,503.503 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-27 06:01:49,003.003 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 06:01:49,005.005 INFO    ] Checking for system updates...
[2026-06-27 06:01:49,026.026 INFO    ] 200
[2026-06-27 06:01:49,028.028 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:01:49,058.058 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:01:49,060.060 INFO    ] No update needed
[2026-06-27 06:01:49,061.061 INFO    ] Checking for camera pi updates...
[2026-06-27 06:01:49,081.081 INFO    ] 200
[2026-06-27 06:01:49,082.082 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:01:49,105.105 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:01:49,142.142 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:01:49,144.144 INFO    ] No camera update needed
[2026-06-27 06:01:49,145.145 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:01:49,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:01:49,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:01:49,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:01:51,192.192 INFO    ] ================================================
[2026-06-27 06:01:51,208.208 INFO    ] Launching Daemon at Sat Jun 27 06:01:51 IST 2026
[2026-06-27 06:01:51,218.218 INFO    ] ================================================
[2026-06-27 06:01:51,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:01:51
[2026-06-27 06:01:51,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:01:52,043.043 INFO    ] Initializing speech engine...
[2026-06-27 06:01:52,049.049 INFO    ] 2026-06-27 06:01:52
[2026-06-27 06:01:52,254.254 INFO    ] 2026-06-27 06:01:52
[2026-06-27 06:01:52,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:01:52,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:01:52,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:01:52,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:01:52,696.696 INFO    ] time= 27/06/2026 06:01:52
[2026-06-27 06:01:52,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:01:52,704.704 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:01:52,770.770 INFO    ] No existing commands found in stream
[2026-06-27 06:01:57,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:01:57,782.782 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-27 06:02:00,844.844 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 06:02:00,846.846 INFO    ] Checking for system updates...
[2026-06-27 06:02:00,868.868 INFO    ] 200
[2026-06-27 06:02:00,870.870 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:02:00,903.903 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:02:00,905.905 INFO    ] No update needed
[2026-06-27 06:02:00,907.907 INFO    ] Checking for camera pi updates...
[2026-06-27 06:02:00,928.928 INFO    ] 200
[2026-06-27 06:02:00,930.930 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:02:00,954.954 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:02:00,994.994 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:02:00,996.996 INFO    ] No camera update needed
[2026-06-27 06:02:00,997.997 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:02:00,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:02:01,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:02:01,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:02:03,043.043 INFO    ] ================================================
[2026-06-27 06:02:03,059.059 INFO    ] Launching Daemon at Sat Jun 27 06:02:03 IST 2026
[2026-06-27 06:02:03,070.070 INFO    ] ================================================
[2026-06-27 06:02:03,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:02:03
[2026-06-27 06:02:03,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:02:03,944.944 INFO    ] Initializing speech engine...
[2026-06-27 06:02:03,949.949 INFO    ] 2026-06-27 06:02:03
[2026-06-27 06:02:04,156.156 INFO    ] 2026-06-27 06:02:04
[2026-06-27 06:02:04,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:02:04,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:02:04,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:02:04,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:02:04,577.577 INFO    ] time= 27/06/2026 06:02:04
[2026-06-27 06:02:04,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:02:04,606.606 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:02:04,673.673 INFO    ] No existing commands found in stream
[2026-06-27 06:02:09,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:02:09,686.686 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-27 06:02:11,012.012 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 06:02:11,014.014 INFO    ] Checking for system updates...
[2026-06-27 06:02:11,036.036 INFO    ] 200
[2026-06-27 06:02:11,037.037 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:02:11,068.068 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:02:11,070.070 INFO    ] No update needed
[2026-06-27 06:02:11,071.071 INFO    ] Checking for camera pi updates...
[2026-06-27 06:02:11,091.091 INFO    ] 200
[2026-06-27 06:02:11,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:02:11,117.117 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:02:11,158.158 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:02:11,159.159 INFO    ] No camera update needed
[2026-06-27 06:02:11,161.161 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:02:11,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:02:11,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:02:11,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:02:13,210.210 INFO    ] ================================================
[2026-06-27 06:02:13,225.225 INFO    ] Launching Daemon at Sat Jun 27 06:02:13 IST 2026
[2026-06-27 06:02:13,235.235 INFO    ] ================================================
[2026-06-27 06:02:13,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:02:13
[2026-06-27 06:02:13,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:02:14,104.104 INFO    ] Initializing speech engine...
[2026-06-27 06:02:14,109.109 INFO    ] 2026-06-27 06:02:14
[2026-06-27 06:02:14,319.319 INFO    ] 2026-06-27 06:02:14
[2026-06-27 06:02:14,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:02:14,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:02:14,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:02:14,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:02:14,761.761 INFO    ] time= 27/06/2026 06:02:14
[2026-06-27 06:02:14,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:02:14,768.768 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:02:14,836.836 INFO    ] No existing commands found in stream
[2026-06-27 06:02:19,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:02:19,865.865 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-27 06:02:23,453.453 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:02:23,454.454 INFO    ] Checking for system updates...
[2026-06-27 06:02:23,477.477 INFO    ] 200
[2026-06-27 06:02:23,478.478 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:02:23,511.511 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:02:23,512.512 INFO    ] No update needed
[2026-06-27 06:02:23,514.514 INFO    ] Checking for camera pi updates...
[2026-06-27 06:02:23,542.542 INFO    ] 200
[2026-06-27 06:02:23,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:02:23,568.568 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:02:23,595.595 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:02:23,596.596 INFO    ] No camera update needed
[2026-06-27 06:02:23,597.597 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:02:23,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:02:23,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:02:23,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:02:25,644.644 INFO    ] ================================================
[2026-06-27 06:02:25,659.659 INFO    ] Launching Daemon at Sat Jun 27 06:02:25 IST 2026
[2026-06-27 06:02:25,670.670 INFO    ] ================================================
[2026-06-27 06:02:26,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:02:26
[2026-06-27 06:02:26,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:02:26,479.479 INFO    ] Initializing speech engine...
[2026-06-27 06:02:26,487.487 INFO    ] 2026-06-27 06:02:26
[2026-06-27 06:02:26,684.684 INFO    ] 2026-06-27 06:02:26
[2026-06-27 06:02:26,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:02:26,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:02:26,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:02:27,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:02:27,104.104 INFO    ] time= 27/06/2026 06:02:27
[2026-06-27 06:02:27,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:02:27,195.195 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:02:27,265.265 INFO    ] No existing commands found in stream
[2026-06-27 06:02:32,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:02:32,274.274 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-27 06:02:36,301.301 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:02:36,302.302 INFO    ] Checking for system updates...
[2026-06-27 06:02:36,324.324 INFO    ] 200
[2026-06-27 06:02:36,325.325 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:02:36,356.356 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:02:36,357.357 INFO    ] No update needed
[2026-06-27 06:02:36,359.359 INFO    ] Checking for camera pi updates...
[2026-06-27 06:02:36,378.378 INFO    ] 200
[2026-06-27 06:02:36,379.379 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:02:36,405.405 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:02:36,530.530 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:02:36,531.531 INFO    ] No camera update needed
[2026-06-27 06:02:36,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:02:36,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:02:36,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:02:36,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:02:38,578.578 INFO    ] ================================================
[2026-06-27 06:02:38,593.593 INFO    ] Launching Daemon at Sat Jun 27 06:02:38 IST 2026
[2026-06-27 06:02:38,604.604 INFO    ] ================================================
[2026-06-27 06:02:38,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:02:38
[2026-06-27 06:02:39,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:02:39,402.402 INFO    ] Initializing speech engine...
[2026-06-27 06:02:39,412.412 INFO    ] 2026-06-27 06:02:39
[2026-06-27 06:02:39,619.619 INFO    ] 2026-06-27 06:02:39
[2026-06-27 06:02:39,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:02:39,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:02:39,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:02:39,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:02:40,046.046 INFO    ] time= 27/06/2026 06:02:40
[2026-06-27 06:02:40,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:02:40,077.077 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:02:40,144.144 INFO    ] No existing commands found in stream
[2026-06-27 06:02:45,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:02:45,156.156 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-27 06:02:47,198.198 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:02:47,200.200 INFO    ] Checking for system updates...
[2026-06-27 06:02:47,221.221 INFO    ] 200
[2026-06-27 06:02:47,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:02:47,254.254 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:02:47,256.256 INFO    ] No update needed
[2026-06-27 06:02:47,257.257 INFO    ] Checking for camera pi updates...
[2026-06-27 06:02:47,277.277 INFO    ] 200
[2026-06-27 06:02:47,278.278 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:02:47,301.301 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:02:47,338.338 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:02:47,339.339 INFO    ] No camera update needed
[2026-06-27 06:02:47,340.340 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:02:47,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:02:47,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:02:47,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:02:49,388.388 INFO    ] ================================================
[2026-06-27 06:02:49,404.404 INFO    ] Launching Daemon at Sat Jun 27 06:02:49 IST 2026
[2026-06-27 06:02:49,414.414 INFO    ] ================================================
[2026-06-27 06:02:49,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:02:49
[2026-06-27 06:02:50,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:02:50,205.205 INFO    ] Initializing speech engine...
[2026-06-27 06:02:50,213.213 INFO    ] 2026-06-27 06:02:50
[2026-06-27 06:02:50,435.435 INFO    ] 2026-06-27 06:02:50
[2026-06-27 06:02:50,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:02:50,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:02:50,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:02:50,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:02:50,890.890 INFO    ] time= 27/06/2026 06:02:50
[2026-06-27 06:02:50,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:02:50,923.923 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:02:50,996.996 INFO    ] No existing commands found in stream
[2026-06-27 06:02:56,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:02:56,008.008 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-27 06:02:56,870.870 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:02:56,872.872 INFO    ] Checking for system updates...
[2026-06-27 06:02:56,893.893 INFO    ] 200
[2026-06-27 06:02:56,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:02:56,928.928 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:02:56,929.929 INFO    ] No update needed
[2026-06-27 06:02:56,930.930 INFO    ] Checking for camera pi updates...
[2026-06-27 06:02:56,950.950 INFO    ] 200
[2026-06-27 06:02:56,951.951 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:02:56,975.975 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:02:56,999.999 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:02:57,001.001 INFO    ] No camera update needed
[2026-06-27 06:02:57,002.002 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:02:57,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:02:57,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:02:57,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:02:59,049.049 INFO    ] ================================================
[2026-06-27 06:02:59,064.064 INFO    ] Launching Daemon at Sat Jun 27 06:02:59 IST 2026
[2026-06-27 06:02:59,075.075 INFO    ] ================================================
[2026-06-27 06:02:59,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:02:59
[2026-06-27 06:02:59,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:02:59,963.963 INFO    ] Initializing speech engine...
[2026-06-27 06:02:59,968.968 INFO    ] 2026-06-27 06:02:59
[2026-06-27 06:03:00,178.178 INFO    ] 2026-06-27 06:03:00
[2026-06-27 06:03:00,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:03:00,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:03:00,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:03:00,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:03:00,607.607 INFO    ] time= 27/06/2026 06:03:00
[2026-06-27 06:03:00,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:03:00,636.636 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:03:00,702.702 INFO    ] No existing commands found in stream
[2026-06-27 06:03:05,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:03:05,717.717 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-27 06:03:07,095.095 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 06:03:07,096.096 INFO    ] Checking for system updates...
[2026-06-27 06:03:07,117.117 INFO    ] 200
[2026-06-27 06:03:07,119.119 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:03:07,149.149 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:03:07,150.150 INFO    ] No update needed
[2026-06-27 06:03:07,152.152 INFO    ] Checking for camera pi updates...
[2026-06-27 06:03:07,172.172 INFO    ] 200
[2026-06-27 06:03:07,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:03:07,197.197 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:03:07,238.238 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:03:07,240.240 INFO    ] No camera update needed
[2026-06-27 06:03:07,241.241 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:03:07,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:03:07,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:03:07,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:03:09,286.286 INFO    ] ================================================
[2026-06-27 06:03:09,302.302 INFO    ] Launching Daemon at Sat Jun 27 06:03:09 IST 2026
[2026-06-27 06:03:09,313.313 INFO    ] ================================================
[2026-06-27 06:03:09,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:03:09
[2026-06-27 06:03:10,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:03:10,206.206 INFO    ] Initializing speech engine...
[2026-06-27 06:03:10,210.210 INFO    ] 2026-06-27 06:03:10
[2026-06-27 06:03:10,419.419 INFO    ] 2026-06-27 06:03:10
[2026-06-27 06:03:10,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:03:10,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:03:10,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:03:10,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:03:10,839.839 INFO    ] time= 27/06/2026 06:03:10
[2026-06-27 06:03:10,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:03:10,869.869 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:03:10,937.937 INFO    ] No existing commands found in stream
[2026-06-27 06:03:15,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:03:15,955.955 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-27 06:03:17,780.780 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:03:17,781.781 INFO    ] Checking for system updates...
[2026-06-27 06:03:17,803.803 INFO    ] 200
[2026-06-27 06:03:17,805.805 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:03:17,835.835 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:03:17,837.837 INFO    ] No update needed
[2026-06-27 06:03:17,838.838 INFO    ] Checking for camera pi updates...
[2026-06-27 06:03:17,860.860 INFO    ] 200
[2026-06-27 06:03:17,861.861 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:03:17,886.886 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:03:17,923.923 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:03:17,925.925 INFO    ] No camera update needed
[2026-06-27 06:03:17,926.926 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:03:17,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:03:17,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:03:17,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:03:19,973.973 INFO    ] ================================================
[2026-06-27 06:03:19,989.989 INFO    ] Launching Daemon at Sat Jun 27 06:03:19 IST 2026
[2026-06-27 06:03:20,000.000 INFO    ] ================================================
[2026-06-27 06:03:20,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:03:20
[2026-06-27 06:03:20,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:03:20,828.828 INFO    ] Initializing speech engine...
[2026-06-27 06:03:20,838.838 INFO    ] 2026-06-27 06:03:20
[2026-06-27 06:03:21,044.044 INFO    ] 2026-06-27 06:03:21
[2026-06-27 06:03:21,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:03:21,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:03:21,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:03:21,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:03:21,465.465 INFO    ] time= 27/06/2026 06:03:21
[2026-06-27 06:03:21,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:03:21,493.493 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:03:21,560.560 INFO    ] No existing commands found in stream
[2026-06-27 06:03:26,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:03:26,572.572 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-27 06:03:27,798.798 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:03:27,800.800 INFO    ] Checking for system updates...
[2026-06-27 06:03:27,821.821 INFO    ] 200
[2026-06-27 06:03:27,823.823 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:03:27,854.854 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:03:27,855.855 INFO    ] No update needed
[2026-06-27 06:03:27,856.856 INFO    ] Checking for camera pi updates...
[2026-06-27 06:03:27,878.878 INFO    ] 200
[2026-06-27 06:03:27,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:03:27,905.905 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:03:27,946.946 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:03:27,947.947 INFO    ] No camera update needed
[2026-06-27 06:03:27,949.949 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:03:27,950.950 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:03:27,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:03:27,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:03:29,994.994 INFO    ] ================================================
[2026-06-27 06:03:30,010.010 INFO    ] Launching Daemon at Sat Jun 27 06:03:30 IST 2026
[2026-06-27 06:03:30,021.021 INFO    ] ================================================
[2026-06-27 06:03:30,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:03:30
[2026-06-27 06:03:30,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:03:30,910.910 INFO    ] Initializing speech engine...
[2026-06-27 06:03:30,915.915 INFO    ] 2026-06-27 06:03:30
[2026-06-27 06:03:31,127.127 INFO    ] 2026-06-27 06:03:31
[2026-06-27 06:03:31,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:03:31,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:03:31,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:03:31,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:03:31,555.555 INFO    ] time= 27/06/2026 06:03:31
[2026-06-27 06:03:31,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:03:31,586.586 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:03:31,655.655 INFO    ] No existing commands found in stream
[2026-06-27 06:03:36,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:03:36,668.668 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-27 06:03:39,674.674 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 06:03:39,676.676 INFO    ] Checking for system updates...
[2026-06-27 06:03:39,699.699 INFO    ] 200
[2026-06-27 06:03:39,701.701 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:03:39,735.735 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:03:39,737.737 INFO    ] No update needed
[2026-06-27 06:03:39,738.738 INFO    ] Checking for camera pi updates...
[2026-06-27 06:03:39,758.758 INFO    ] 200
[2026-06-27 06:03:39,759.759 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:03:39,783.783 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:03:39,820.820 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:03:39,822.822 INFO    ] No camera update needed
[2026-06-27 06:03:39,823.823 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:03:39,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:03:39,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:03:39,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:03:41,866.866 INFO    ] ================================================
[2026-06-27 06:03:41,881.881 INFO    ] Launching Daemon at Sat Jun 27 06:03:41 IST 2026
[2026-06-27 06:03:41,889.889 INFO    ] ================================================
[2026-06-27 06:03:42,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:03:42
[2026-06-27 06:03:42,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:03:42,672.672 INFO    ] Initializing speech engine...
[2026-06-27 06:03:42,677.677 INFO    ] 2026-06-27 06:03:42
[2026-06-27 06:03:42,871.871 INFO    ] 2026-06-27 06:03:42
[2026-06-27 06:03:42,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:03:43,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:03:43,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:03:43,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:03:43,355.355 INFO    ] time= 27/06/2026 06:03:43
[2026-06-27 06:03:43,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:03:43,389.389 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:03:43,458.458 INFO    ] No existing commands found in stream
[2026-06-27 06:03:48,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:03:48,469.469 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-27 06:03:49,536.536 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:03:49,538.538 INFO    ] Checking for system updates...
[2026-06-27 06:03:49,562.562 INFO    ] 200
[2026-06-27 06:03:49,563.563 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:03:49,593.593 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:03:49,595.595 INFO    ] No update needed
[2026-06-27 06:03:49,596.596 INFO    ] Checking for camera pi updates...
[2026-06-27 06:03:49,617.617 INFO    ] 200
[2026-06-27 06:03:49,618.618 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:03:49,642.642 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:03:49,679.679 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:03:49,680.680 INFO    ] No camera update needed
[2026-06-27 06:03:49,682.682 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:03:49,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:03:49,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:03:49,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:03:51,728.728 INFO    ] ================================================
[2026-06-27 06:03:51,743.743 INFO    ] Launching Daemon at Sat Jun 27 06:03:51 IST 2026
[2026-06-27 06:03:51,754.754 INFO    ] ================================================
[2026-06-27 06:03:52,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:03:52
[2026-06-27 06:03:52,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:03:52,622.622 INFO    ] Initializing speech engine...
[2026-06-27 06:03:52,630.630 INFO    ] 2026-06-27 06:03:52
[2026-06-27 06:03:52,824.824 INFO    ] 2026-06-27 06:03:52
[2026-06-27 06:03:52,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:03:53,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:03:53,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:03:53,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:03:53,243.243 INFO    ] time= 27/06/2026 06:03:53
[2026-06-27 06:03:53,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:03:53,327.327 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:03:53,451.451 INFO    ] No existing commands found in stream
[2026-06-27 06:03:58,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:03:58,463.463 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-27 06:04:01,344.344 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:04:01,345.345 INFO    ] Checking for system updates...
[2026-06-27 06:04:01,368.368 INFO    ] 200
[2026-06-27 06:04:01,369.369 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:04:01,403.403 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:04:01,405.405 INFO    ] No update needed
[2026-06-27 06:04:01,406.406 INFO    ] Checking for camera pi updates...
[2026-06-27 06:04:01,426.426 INFO    ] 200
[2026-06-27 06:04:01,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:04:01,451.451 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:04:01,495.495 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:04:01,496.496 INFO    ] No camera update needed
[2026-06-27 06:04:01,498.498 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:04:01,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:04:01,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:04:01,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:04:03,539.539 INFO    ] ================================================
[2026-06-27 06:04:03,574.574 INFO    ] Launching Daemon at Sat Jun 27 06:04:03 IST 2026
[2026-06-27 06:04:03,585.585 INFO    ] ================================================
[2026-06-27 06:04:03,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:04:03
[2026-06-27 06:04:04,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:04:04,426.426 INFO    ] Initializing speech engine...
[2026-06-27 06:04:04,431.431 INFO    ] 2026-06-27 06:04:04
[2026-06-27 06:04:04,640.640 INFO    ] 2026-06-27 06:04:04
[2026-06-27 06:04:04,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:04:04,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:04:04,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:04:05,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:04:05,065.065 INFO    ] time= 27/06/2026 06:04:05
[2026-06-27 06:04:05,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:04:05,101.101 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:04:05,170.170 INFO    ] No existing commands found in stream
[2026-06-27 06:04:10,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:04:10,183.183 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-27 06:04:11,088.088 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:04:11,090.090 INFO    ] Checking for system updates...
[2026-06-27 06:04:11,111.111 INFO    ] 200
[2026-06-27 06:04:11,112.112 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:04:11,143.143 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:04:11,145.145 INFO    ] No update needed
[2026-06-27 06:04:11,146.146 INFO    ] Checking for camera pi updates...
[2026-06-27 06:04:11,167.167 INFO    ] 200
[2026-06-27 06:04:11,169.169 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:04:11,194.194 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:04:11,228.228 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:04:11,230.230 INFO    ] No camera update needed
[2026-06-27 06:04:11,231.231 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:04:11,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:04:11,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:04:11,239.239 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:04:13,279.279 INFO    ] ================================================
[2026-06-27 06:04:13,295.295 INFO    ] Launching Daemon at Sat Jun 27 06:04:13 IST 2026
[2026-06-27 06:04:13,306.306 INFO    ] ================================================
[2026-06-27 06:04:13,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:04:13
[2026-06-27 06:04:13,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:04:14,106.106 INFO    ] Initializing speech engine...
[2026-06-27 06:04:14,109.109 INFO    ] 2026-06-27 06:04:14
[2026-06-27 06:04:14,328.328 INFO    ] 2026-06-27 06:04:14
[2026-06-27 06:04:14,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:04:14,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:04:14,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:04:14,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:04:14,757.757 INFO    ] time= 27/06/2026 06:04:14
[2026-06-27 06:04:14,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:04:14,785.785 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:04:14,853.853 INFO    ] No existing commands found in stream
[2026-06-27 06:04:19,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:04:19,865.865 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-27 06:04:21,961.961 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 06:04:21,963.963 INFO    ] Checking for system updates...
[2026-06-27 06:04:21,984.984 INFO    ] 200
[2026-06-27 06:04:21,985.985 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:04:22,016.016 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:04:22,017.017 INFO    ] No update needed
[2026-06-27 06:04:22,018.018 INFO    ] Checking for camera pi updates...
[2026-06-27 06:04:22,040.040 INFO    ] 200
[2026-06-27 06:04:22,041.041 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:04:22,065.065 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:04:22,105.105 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:04:22,106.106 INFO    ] No camera update needed
[2026-06-27 06:04:22,107.107 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:04:22,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:04:22,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:04:22,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:04:24,155.155 INFO    ] ================================================
[2026-06-27 06:04:24,170.170 INFO    ] Launching Daemon at Sat Jun 27 06:04:24 IST 2026
[2026-06-27 06:04:24,181.181 INFO    ] ================================================
[2026-06-27 06:04:24,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:04:24
[2026-06-27 06:04:24,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:04:24,982.982 INFO    ] Initializing speech engine...
[2026-06-27 06:04:24,997.997 INFO    ] 2026-06-27 06:04:24
[2026-06-27 06:04:25,217.217 INFO    ] 2026-06-27 06:04:25
[2026-06-27 06:04:25,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:04:25,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:04:25,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:04:25,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:04:25,652.652 INFO    ] time= 27/06/2026 06:04:25
[2026-06-27 06:04:25,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:04:25,704.704 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:04:25,780.780 INFO    ] No existing commands found in stream
[2026-06-27 06:04:30,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:04:30,793.793 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-27 06:04:34,815.815 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 06:04:34,816.816 INFO    ] Checking for system updates...
[2026-06-27 06:04:34,837.837 INFO    ] 200
[2026-06-27 06:04:34,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:04:34,870.870 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:04:34,871.871 INFO    ] No update needed
[2026-06-27 06:04:34,873.873 INFO    ] Checking for camera pi updates...
[2026-06-27 06:04:34,892.892 INFO    ] 200
[2026-06-27 06:04:34,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:04:34,918.918 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:04:34,955.955 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:04:34,956.956 INFO    ] No camera update needed
[2026-06-27 06:04:34,958.958 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:04:34,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:04:34,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:04:34,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:04:37,006.006 INFO    ] ================================================
[2026-06-27 06:04:37,022.022 INFO    ] Launching Daemon at Sat Jun 27 06:04:37 IST 2026
[2026-06-27 06:04:37,032.032 INFO    ] ================================================
[2026-06-27 06:04:37,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:04:37
[2026-06-27 06:04:37,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:04:37,834.834 INFO    ] Initializing speech engine...
[2026-06-27 06:04:37,839.839 INFO    ] 2026-06-27 06:04:37
[2026-06-27 06:04:38,048.048 INFO    ] 2026-06-27 06:04:38
[2026-06-27 06:04:38,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:04:38,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:04:38,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:04:38,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:04:38,458.458 INFO    ] time= 27/06/2026 06:04:38
[2026-06-27 06:04:38,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:04:38,498.498 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:04:38,573.573 INFO    ] No existing commands found in stream
[2026-06-27 06:04:43,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:04:43,587.587 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-27 06:04:46,159.159 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 06:04:46,160.160 INFO    ] Checking for system updates...
[2026-06-27 06:04:46,181.181 INFO    ] 200
[2026-06-27 06:04:46,182.182 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:04:46,215.215 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:04:46,216.216 INFO    ] No update needed
[2026-06-27 06:04:46,217.217 INFO    ] Checking for camera pi updates...
[2026-06-27 06:04:46,237.237 INFO    ] 200
[2026-06-27 06:04:46,238.238 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:04:46,264.264 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:04:46,405.405 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:04:46,406.406 INFO    ] No camera update needed
[2026-06-27 06:04:46,408.408 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:04:46,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:04:46,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:04:46,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:04:48,452.452 INFO    ] ================================================
[2026-06-27 06:04:48,468.468 INFO    ] Launching Daemon at Sat Jun 27 06:04:48 IST 2026
[2026-06-27 06:04:48,478.478 INFO    ] ================================================
[2026-06-27 06:04:48,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:04:48
[2026-06-27 06:04:49,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:04:49,280.280 INFO    ] Initializing speech engine...
[2026-06-27 06:04:49,284.284 INFO    ] 2026-06-27 06:04:49
[2026-06-27 06:04:49,503.503 INFO    ] 2026-06-27 06:04:49
[2026-06-27 06:04:49,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:04:49,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:04:49,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:04:49,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:04:49,925.925 INFO    ] time= 27/06/2026 06:04:49
[2026-06-27 06:04:49,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:04:49,960.960 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:04:50,027.027 INFO    ] No existing commands found in stream
[2026-06-27 06:04:55,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:04:55,045.045 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-27 06:04:58,592.592 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 06:04:58,593.593 INFO    ] Checking for system updates...
[2026-06-27 06:04:58,616.616 INFO    ] 200
[2026-06-27 06:04:58,618.618 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:04:58,649.649 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:04:58,650.650 INFO    ] No update needed
[2026-06-27 06:04:58,652.652 INFO    ] Checking for camera pi updates...
[2026-06-27 06:04:58,673.673 INFO    ] 200
[2026-06-27 06:04:58,674.674 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:04:58,698.698 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:04:58,741.741 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:04:58,743.743 INFO    ] No camera update needed
[2026-06-27 06:04:58,744.744 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:04:58,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:04:58,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:04:58,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:05:00,792.792 INFO    ] ================================================
[2026-06-27 06:05:00,807.807 INFO    ] Launching Daemon at Sat Jun 27 06:05:00 IST 2026
[2026-06-27 06:05:00,817.817 INFO    ] ================================================
[2026-06-27 06:05:01,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:05:01
[2026-06-27 06:05:01,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:05:01,906.906 INFO    ] Initializing speech engine...
[2026-06-27 06:05:01,915.915 INFO    ] 2026-06-27 06:05:01
[2026-06-27 06:05:02,122.122 INFO    ] 2026-06-27 06:05:02
[2026-06-27 06:05:02,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:05:02,314.314 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:05:02,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:05:02,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:05:02,479.479 INFO    ] time= 27/06/2026 06:05:02
[2026-06-27 06:05:02,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:05:02,534.534 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:05:02,663.663 INFO    ] No existing commands found in stream
[2026-06-27 06:05:07,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:05:07,692.692 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-27 06:05:08,489.489 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 06:05:08,490.490 INFO    ] Checking for system updates...
[2026-06-27 06:05:08,511.511 INFO    ] 200
[2026-06-27 06:05:08,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:05:08,546.546 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:05:08,548.548 INFO    ] No update needed
[2026-06-27 06:05:08,549.549 INFO    ] Checking for camera pi updates...
[2026-06-27 06:05:08,568.568 INFO    ] 200
[2026-06-27 06:05:08,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:05:08,593.593 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:05:08,633.633 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:05:08,635.635 INFO    ] No camera update needed
[2026-06-27 06:05:08,636.636 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:05:08,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:05:08,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:05:08,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:05:10,685.685 INFO    ] ================================================
[2026-06-27 06:05:10,702.702 INFO    ] Launching Daemon at Sat Jun 27 06:05:10 IST 2026
[2026-06-27 06:05:10,712.712 INFO    ] ================================================
[2026-06-27 06:05:11,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:05:11
[2026-06-27 06:05:11,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:05:11,514.514 INFO    ] Initializing speech engine...
[2026-06-27 06:05:11,519.519 INFO    ] 2026-06-27 06:05:11
[2026-06-27 06:05:11,725.725 INFO    ] 2026-06-27 06:05:11
[2026-06-27 06:05:11,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:05:11,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:05:11,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:05:12,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:05:12,136.136 INFO    ] time= 27/06/2026 06:05:12
[2026-06-27 06:05:12,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:05:12,176.176 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:05:12,241.241 INFO    ] No existing commands found in stream
[2026-06-27 06:05:17,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:05:17,255.255 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-27 06:05:17,658.658 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 06:05:17,659.659 INFO    ] Checking for system updates...
[2026-06-27 06:05:17,680.680 INFO    ] 200
[2026-06-27 06:05:17,681.681 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:05:17,712.712 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:05:17,713.713 INFO    ] No update needed
[2026-06-27 06:05:17,715.715 INFO    ] Checking for camera pi updates...
[2026-06-27 06:05:17,735.735 INFO    ] 200
[2026-06-27 06:05:17,736.736 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:05:17,760.760 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:05:17,795.795 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:05:17,796.796 INFO    ] No camera update needed
[2026-06-27 06:05:17,798.798 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:05:17,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:05:17,802.802 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:05:17,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:05:19,847.847 INFO    ] ================================================
[2026-06-27 06:05:19,862.862 INFO    ] Launching Daemon at Sat Jun 27 06:05:19 IST 2026
[2026-06-27 06:05:19,873.873 INFO    ] ================================================
[2026-06-27 06:05:20,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:05:20
[2026-06-27 06:05:20,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:05:20,767.767 INFO    ] Initializing speech engine...
[2026-06-27 06:05:20,772.772 INFO    ] 2026-06-27 06:05:20
[2026-06-27 06:05:20,984.984 INFO    ] 2026-06-27 06:05:20
[2026-06-27 06:05:21,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:05:21,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:05:21,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:05:21,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:05:21,416.416 INFO    ] time= 27/06/2026 06:05:21
[2026-06-27 06:05:21,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:05:21,446.446 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:05:21,516.516 INFO    ] No existing commands found in stream
[2026-06-27 06:05:26,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:05:26,534.534 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-27 06:05:29,995.995 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 06:05:29,996.996 INFO    ] Checking for system updates...
[2026-06-27 06:05:30,017.017 INFO    ] 200
[2026-06-27 06:05:30,019.019 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:05:30,049.049 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:05:30,050.050 INFO    ] No update needed
[2026-06-27 06:05:30,052.052 INFO    ] Checking for camera pi updates...
[2026-06-27 06:05:30,073.073 INFO    ] 200
[2026-06-27 06:05:30,074.074 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:05:30,098.098 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:05:30,139.139 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:05:30,140.140 INFO    ] No camera update needed
[2026-06-27 06:05:30,142.142 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:05:30,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:05:30,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:05:30,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:05:32,179.179 INFO    ] ================================================
[2026-06-27 06:05:32,188.188 INFO    ] Launching Daemon at Sat Jun 27 06:05:32 IST 2026
[2026-06-27 06:05:32,195.195 INFO    ] ================================================
[2026-06-27 06:05:32,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:05:32
[2026-06-27 06:05:32,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:05:33,077.077 INFO    ] Initializing speech engine...
[2026-06-27 06:05:33,082.082 INFO    ] 2026-06-27 06:05:33
[2026-06-27 06:05:33,291.291 INFO    ] 2026-06-27 06:05:33
[2026-06-27 06:05:33,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:05:34,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:05:34,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:05:34,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:05:34,661.661 INFO    ] time= 27/06/2026 06:05:34
[2026-06-27 06:05:34,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:05:34,682.682 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:05:34,733.733 INFO    ] No existing commands found in stream
[2026-06-27 06:05:39,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:05:39,745.745 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-27 06:05:40,698.698 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:05:40,700.700 INFO    ] Checking for system updates...
[2026-06-27 06:05:40,722.722 INFO    ] 200
[2026-06-27 06:05:40,728.728 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:05:40,761.761 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:05:40,763.763 INFO    ] No update needed
[2026-06-27 06:05:40,764.764 INFO    ] Checking for camera pi updates...
[2026-06-27 06:05:40,784.784 INFO    ] 200
[2026-06-27 06:05:40,786.786 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:05:40,809.809 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:05:40,849.849 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:05:40,850.850 INFO    ] No camera update needed
[2026-06-27 06:05:40,851.851 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:05:40,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:05:40,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:05:40,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:05:42,900.900 INFO    ] ================================================
[2026-06-27 06:05:42,916.916 INFO    ] Launching Daemon at Sat Jun 27 06:05:42 IST 2026
[2026-06-27 06:05:42,927.927 INFO    ] ================================================
[2026-06-27 06:05:43,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:05:43
[2026-06-27 06:05:43,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:05:43,802.802 INFO    ] Initializing speech engine...
[2026-06-27 06:05:43,807.807 INFO    ] 2026-06-27 06:05:43
[2026-06-27 06:05:43,997.997 INFO    ] 2026-06-27 06:05:43
[2026-06-27 06:05:44,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:05:44,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:05:44,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:05:44,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:05:44,379.379 INFO    ] time= 27/06/2026 06:05:44
[2026-06-27 06:05:44,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:05:44,500.500 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:05:44,598.598 INFO    ] No existing commands found in stream
[2026-06-27 06:05:49,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:05:49,610.610 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-27 06:05:50,350.350 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:05:50,352.352 INFO    ] Checking for system updates...
[2026-06-27 06:05:50,373.373 INFO    ] 200
[2026-06-27 06:05:50,375.375 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:05:50,405.405 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:05:50,407.407 INFO    ] No update needed
[2026-06-27 06:05:50,408.408 INFO    ] Checking for camera pi updates...
[2026-06-27 06:05:50,428.428 INFO    ] 200
[2026-06-27 06:05:50,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:05:50,453.453 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:05:50,493.493 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:05:50,495.495 INFO    ] No camera update needed
[2026-06-27 06:05:50,496.496 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:05:50,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:05:50,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:05:50,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:05:52,544.544 INFO    ] ================================================
[2026-06-27 06:05:52,560.560 INFO    ] Launching Daemon at Sat Jun 27 06:05:52 IST 2026
[2026-06-27 06:05:52,571.571 INFO    ] ================================================
[2026-06-27 06:05:52,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:05:52
[2026-06-27 06:05:53,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:05:53,357.357 INFO    ] Initializing speech engine...
[2026-06-27 06:05:53,361.361 INFO    ] 2026-06-27 06:05:53
[2026-06-27 06:05:53,577.577 INFO    ] 2026-06-27 06:05:53
[2026-06-27 06:05:53,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:05:53,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:05:53,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:05:53,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:05:53,984.984 INFO    ] time= 27/06/2026 06:05:53
[2026-06-27 06:05:54,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:05:54,030.030 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:05:54,097.097 INFO    ] No existing commands found in stream
[2026-06-27 06:05:59,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:05:59,109.109 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-27 06:06:00,092.092 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:06:00,094.094 INFO    ] Checking for system updates...
[2026-06-27 06:06:00,116.116 INFO    ] 200
[2026-06-27 06:06:00,117.117 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:06:00,151.151 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:06:00,152.152 INFO    ] No update needed
[2026-06-27 06:06:00,154.154 INFO    ] Checking for camera pi updates...
[2026-06-27 06:06:00,175.175 INFO    ] 200
[2026-06-27 06:06:00,177.177 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:06:00,200.200 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:06:00,241.241 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:06:00,243.243 INFO    ] No camera update needed
[2026-06-27 06:06:00,244.244 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:06:00,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:06:00,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:06:00,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:06:02,286.286 INFO    ] ================================================
[2026-06-27 06:06:02,297.297 INFO    ] Launching Daemon at Sat Jun 27 06:06:02 IST 2026
[2026-06-27 06:06:02,305.305 INFO    ] ================================================
[2026-06-27 06:06:02,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:06:02
[2026-06-27 06:06:03,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:06:03,192.192 INFO    ] Initializing speech engine...
[2026-06-27 06:06:03,198.198 INFO    ] 2026-06-27 06:06:03
[2026-06-27 06:06:03,404.404 INFO    ] 2026-06-27 06:06:03
[2026-06-27 06:06:03,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:06:03,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:06:03,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:06:03,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:06:03,825.825 INFO    ] time= 27/06/2026 06:06:03
[2026-06-27 06:06:03,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:06:03,855.855 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:06:03,920.920 INFO    ] No existing commands found in stream
[2026-06-27 06:06:08,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:06:08,935.935 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-27 06:06:11,511.511 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 06:06:11,512.512 INFO    ] Checking for system updates...
[2026-06-27 06:06:11,533.533 INFO    ] 200
[2026-06-27 06:06:11,535.535 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:06:11,565.565 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:06:11,567.567 INFO    ] No update needed
[2026-06-27 06:06:11,568.568 INFO    ] Checking for camera pi updates...
[2026-06-27 06:06:11,588.588 INFO    ] 200
[2026-06-27 06:06:11,589.589 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:06:11,614.614 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:06:11,653.653 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:06:11,655.655 INFO    ] No camera update needed
[2026-06-27 06:06:11,656.656 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:06:11,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:06:11,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:06:11,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:06:13,703.703 INFO    ] ================================================
[2026-06-27 06:06:13,719.719 INFO    ] Launching Daemon at Sat Jun 27 06:06:13 IST 2026
[2026-06-27 06:06:13,730.730 INFO    ] ================================================
[2026-06-27 06:06:14,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:06:14
[2026-06-27 06:06:14,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:06:14,590.590 INFO    ] Initializing speech engine...
[2026-06-27 06:06:14,600.600 INFO    ] 2026-06-27 06:06:14
[2026-06-27 06:06:14,810.810 INFO    ] 2026-06-27 06:06:14
[2026-06-27 06:06:14,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:06:15,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:06:15,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:06:15,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:06:15,238.238 INFO    ] time= 27/06/2026 06:06:15
[2026-06-27 06:06:15,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:06:15,267.267 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:06:15,336.336 INFO    ] No existing commands found in stream
[2026-06-27 06:06:20,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:06:20,349.349 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-27 06:06:23,961.961 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 06:06:23,963.963 INFO    ] Checking for system updates...
[2026-06-27 06:06:23,989.989 INFO    ] 200
[2026-06-27 06:06:23,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-27 06:06:23,993.993 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-27 06:06:23,994.994 INFO    ] Checking for camera pi updates...
[2026-06-27 06:06:24,018.018 INFO    ] 200
[2026-06-27 06:06:24,020.020 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-27 06:06:24,022.022 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-27 06:06:24,023.023 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:06:24,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:06:24,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:06:24,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:06:26,066.066 INFO    ] ================================================
[2026-06-27 06:06:26,081.081 INFO    ] Launching Daemon at Sat Jun 27 06:06:26 IST 2026
[2026-06-27 06:06:26,092.092 INFO    ] ================================================
[2026-06-27 06:06:26,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:06:26
[2026-06-27 06:06:26,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:06:26,947.947 INFO    ] Initializing speech engine...
[2026-06-27 06:06:26,953.953 INFO    ] 2026-06-27 06:06:26
[2026-06-27 06:06:27,164.164 INFO    ] 2026-06-27 06:06:27
[2026-06-27 06:06:27,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:06:27,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:06:27,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:06:27,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:06:27,581.581 INFO    ] time= 27/06/2026 06:06:27
[2026-06-27 06:06:27,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:06:27,621.621 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:06:27,689.689 INFO    ] No existing commands found in stream
[2026-06-27 06:06:32,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:06:32,697.697 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-27 06:06:35,766.766 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:06:35,767.767 INFO    ] Checking for system updates...
[2026-06-27 06:06:35,788.788 INFO    ] 200
[2026-06-27 06:06:35,790.790 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:06:35,820.820 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:06:35,822.822 INFO    ] No update needed
[2026-06-27 06:06:35,823.823 INFO    ] Checking for camera pi updates...
[2026-06-27 06:06:35,843.843 INFO    ] 200
[2026-06-27 06:06:35,844.844 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:06:35,868.868 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:06:35,910.910 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:06:35,912.912 INFO    ] No camera update needed
[2026-06-27 06:06:35,913.913 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:06:35,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:06:35,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:06:35,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:06:37,960.960 INFO    ] ================================================
[2026-06-27 06:06:37,975.975 INFO    ] Launching Daemon at Sat Jun 27 06:06:37 IST 2026
[2026-06-27 06:06:37,986.986 INFO    ] ================================================
[2026-06-27 06:06:38,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:06:38
[2026-06-27 06:06:38,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:06:38,761.761 INFO    ] Initializing speech engine...
[2026-06-27 06:06:38,766.766 INFO    ] 2026-06-27 06:06:38
[2026-06-27 06:06:38,994.994 INFO    ] 2026-06-27 06:06:38
[2026-06-27 06:06:39,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:06:39,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:06:39,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:06:39,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:06:39,432.432 INFO    ] time= 27/06/2026 06:06:39
[2026-06-27 06:06:39,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:06:39,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:06:39,530.530 INFO    ] No existing commands found in stream
[2026-06-27 06:06:44,539.539 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:06:44,542.542 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-27 06:06:46,952.952 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:06:46,954.954 INFO    ] Checking for system updates...
[2026-06-27 06:06:46,975.975 INFO    ] 200
[2026-06-27 06:06:46,976.976 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:06:47,007.007 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:06:47,008.008 INFO    ] No update needed
[2026-06-27 06:06:47,009.009 INFO    ] Checking for camera pi updates...
[2026-06-27 06:06:47,029.029 INFO    ] 200
[2026-06-27 06:06:47,031.031 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:06:47,054.054 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:06:47,100.100 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:06:47,102.102 INFO    ] No camera update needed
[2026-06-27 06:06:47,103.103 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:06:47,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:06:47,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:06:47,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:06:49,151.151 INFO    ] ================================================
[2026-06-27 06:06:49,166.166 INFO    ] Launching Daemon at Sat Jun 27 06:06:49 IST 2026
[2026-06-27 06:06:49,177.177 INFO    ] ================================================
[2026-06-27 06:06:49,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:06:49
[2026-06-27 06:06:49,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:06:50,022.022 INFO    ] Initializing speech engine...
[2026-06-27 06:06:50,028.028 INFO    ] 2026-06-27 06:06:50
[2026-06-27 06:06:50,236.236 INFO    ] 2026-06-27 06:06:50
[2026-06-27 06:06:50,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:06:50,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:06:50,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:06:50,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:06:50,663.663 INFO    ] time= 27/06/2026 06:06:50
[2026-06-27 06:06:50,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:06:50,693.693 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:06:50,785.785 INFO    ] No existing commands found in stream
[2026-06-27 06:06:55,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:06:55,802.802 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-27 06:06:57,011.011 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 06:06:57,012.012 INFO    ] Checking for system updates...
[2026-06-27 06:06:57,033.033 INFO    ] 200
[2026-06-27 06:06:57,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:06:57,066.066 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:06:57,067.067 INFO    ] No update needed
[2026-06-27 06:06:57,069.069 INFO    ] Checking for camera pi updates...
[2026-06-27 06:06:57,089.089 INFO    ] 200
[2026-06-27 06:06:57,090.090 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:06:57,114.114 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:06:57,256.256 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:06:57,257.257 INFO    ] No camera update needed
[2026-06-27 06:06:57,259.259 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:06:57,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:06:57,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:06:57,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:06:59,304.304 INFO    ] ================================================
[2026-06-27 06:06:59,320.320 INFO    ] Launching Daemon at Sat Jun 27 06:06:59 IST 2026
[2026-06-27 06:06:59,330.330 INFO    ] ================================================
[2026-06-27 06:06:59,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:06:59
[2026-06-27 06:07:00,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:07:00,166.166 INFO    ] Initializing speech engine...
[2026-06-27 06:07:00,171.171 INFO    ] 2026-06-27 06:07:00
[2026-06-27 06:07:00,374.374 INFO    ] 2026-06-27 06:07:00
[2026-06-27 06:07:00,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:07:00,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:07:00,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:07:00,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:07:00,786.786 INFO    ] time= 27/06/2026 06:07:00
[2026-06-27 06:07:00,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:07:00,824.824 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:07:00,891.891 INFO    ] No existing commands found in stream
[2026-06-27 06:07:05,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:07:05,908.908 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-27 06:07:07,836.836 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:07:07,837.837 INFO    ] Checking for system updates...
[2026-06-27 06:07:07,858.858 INFO    ] 200
[2026-06-27 06:07:07,859.859 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:07:07,890.890 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:07:07,891.891 INFO    ] No update needed
[2026-06-27 06:07:07,892.892 INFO    ] Checking for camera pi updates...
[2026-06-27 06:07:07,912.912 INFO    ] 200
[2026-06-27 06:07:07,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:07:07,937.937 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:07:07,979.979 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:07:07,980.980 INFO    ] No camera update needed
[2026-06-27 06:07:07,982.982 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:07:07,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:07:07,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:07:07,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:07:10,027.027 INFO    ] ================================================
[2026-06-27 06:07:10,042.042 INFO    ] Launching Daemon at Sat Jun 27 06:07:10 IST 2026
[2026-06-27 06:07:10,052.052 INFO    ] ================================================
[2026-06-27 06:07:10,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:07:10
[2026-06-27 06:07:10,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:07:10,876.876 INFO    ] Initializing speech engine...
[2026-06-27 06:07:10,890.890 INFO    ] 2026-06-27 06:07:10
[2026-06-27 06:07:11,103.103 INFO    ] 2026-06-27 06:07:11
[2026-06-27 06:07:11,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:07:11,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:07:11,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:07:11,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:07:11,533.533 INFO    ] time= 27/06/2026 06:07:11
[2026-06-27 06:07:11,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:07:11,561.561 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:07:11,627.627 INFO    ] No existing commands found in stream
[2026-06-27 06:07:16,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:07:16,641.641 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-27 06:07:20,521.521 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 06:07:20,522.522 INFO    ] Checking for system updates...
[2026-06-27 06:07:20,544.544 INFO    ] 200
[2026-06-27 06:07:20,545.545 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:07:20,578.578 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:07:20,579.579 INFO    ] No update needed
[2026-06-27 06:07:20,581.581 INFO    ] Checking for camera pi updates...
[2026-06-27 06:07:20,601.601 INFO    ] 200
[2026-06-27 06:07:20,602.602 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:07:20,626.626 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:07:20,664.664 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:07:20,665.665 INFO    ] No camera update needed
[2026-06-27 06:07:20,666.666 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:07:20,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:07:20,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:07:20,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:07:22,712.712 INFO    ] ================================================
[2026-06-27 06:07:22,727.727 INFO    ] Launching Daemon at Sat Jun 27 06:07:22 IST 2026
[2026-06-27 06:07:22,737.737 INFO    ] ================================================
[2026-06-27 06:07:23,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:07:23
[2026-06-27 06:07:23,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:07:23,556.556 INFO    ] Initializing speech engine...
[2026-06-27 06:07:23,566.566 INFO    ] 2026-06-27 06:07:23
[2026-06-27 06:07:23,771.771 INFO    ] 2026-06-27 06:07:23
[2026-06-27 06:07:23,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:07:23,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:07:23,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:07:24,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:07:24,211.211 INFO    ] time= 27/06/2026 06:07:24
[2026-06-27 06:07:24,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:07:24,218.218 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:07:24,285.285 INFO    ] No existing commands found in stream
[2026-06-27 06:07:29,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:07:29,297.297 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-27 06:07:30,308.308 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 06:07:30,309.309 INFO    ] Checking for system updates...
[2026-06-27 06:07:30,330.330 INFO    ] 200
[2026-06-27 06:07:30,331.331 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:07:30,361.361 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:07:30,363.363 INFO    ] No update needed
[2026-06-27 06:07:30,364.364 INFO    ] Checking for camera pi updates...
[2026-06-27 06:07:30,384.384 INFO    ] 200
[2026-06-27 06:07:30,385.385 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:07:30,411.411 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:07:30,449.449 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:07:30,450.450 INFO    ] No camera update needed
[2026-06-27 06:07:30,451.451 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:07:30,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:07:30,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:07:30,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:07:32,491.491 INFO    ] ================================================
[2026-06-27 06:07:32,506.506 INFO    ] Launching Daemon at Sat Jun 27 06:07:32 IST 2026
[2026-06-27 06:07:32,517.517 INFO    ] ================================================
[2026-06-27 06:07:32,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:07:32
[2026-06-27 06:07:33,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:07:33,335.335 INFO    ] Initializing speech engine...
[2026-06-27 06:07:33,346.346 INFO    ] 2026-06-27 06:07:33
[2026-06-27 06:07:33,559.559 INFO    ] 2026-06-27 06:07:33
[2026-06-27 06:07:33,588.588 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:07:33,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:07:33,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:07:33,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:07:33,964.964 INFO    ] time= 27/06/2026 06:07:33
[2026-06-27 06:07:34,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:07:34,006.006 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:07:34,073.073 INFO    ] No existing commands found in stream
[2026-06-27 06:07:39,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:07:39,086.086 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-27 06:07:42,470.470 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 06:07:42,472.472 INFO    ] Checking for system updates...
[2026-06-27 06:07:42,492.492 INFO    ] 200
[2026-06-27 06:07:42,494.494 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:07:42,542.542 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:07:42,544.544 INFO    ] No update needed
[2026-06-27 06:07:42,545.545 INFO    ] Checking for camera pi updates...
[2026-06-27 06:07:42,565.565 INFO    ] 200
[2026-06-27 06:07:42,566.566 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:07:42,590.590 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:07:42,625.625 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:07:42,626.626 INFO    ] No camera update needed
[2026-06-27 06:07:42,627.627 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:07:42,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:07:42,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:07:42,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:07:44,673.673 INFO    ] ================================================
[2026-06-27 06:07:44,688.688 INFO    ] Launching Daemon at Sat Jun 27 06:07:44 IST 2026
[2026-06-27 06:07:44,698.698 INFO    ] ================================================
[2026-06-27 06:07:45,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:07:45
[2026-06-27 06:07:45,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:07:45,508.508 INFO    ] Initializing speech engine...
[2026-06-27 06:07:45,513.513 INFO    ] 2026-06-27 06:07:45
[2026-06-27 06:07:45,742.742 INFO    ] 2026-06-27 06:07:45
[2026-06-27 06:07:45,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:07:45,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:07:45,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:07:46,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:07:46,171.171 INFO    ] time= 27/06/2026 06:07:46
[2026-06-27 06:07:46,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:07:46,215.215 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:07:46,290.290 INFO    ] No existing commands found in stream
[2026-06-27 06:07:51,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:07:51,302.302 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-27 06:07:54,336.336 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 06:07:54,338.338 INFO    ] Checking for system updates...
[2026-06-27 06:07:54,359.359 INFO    ] 200
[2026-06-27 06:07:54,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:07:54,391.391 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:07:54,393.393 INFO    ] No update needed
[2026-06-27 06:07:54,394.394 INFO    ] Checking for camera pi updates...
[2026-06-27 06:07:54,414.414 INFO    ] 200
[2026-06-27 06:07:54,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:07:54,439.439 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:07:54,467.467 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:07:54,469.469 INFO    ] No camera update needed
[2026-06-27 06:07:54,470.470 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:07:54,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:07:54,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:07:54,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:07:56,517.517 INFO    ] ================================================
[2026-06-27 06:07:56,532.532 INFO    ] Launching Daemon at Sat Jun 27 06:07:56 IST 2026
[2026-06-27 06:07:56,543.543 INFO    ] ================================================
[2026-06-27 06:07:56,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:07:56
[2026-06-27 06:07:57,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:07:57,377.377 INFO    ] Initializing speech engine...
[2026-06-27 06:07:57,383.383 INFO    ] 2026-06-27 06:07:57
[2026-06-27 06:07:57,593.593 INFO    ] 2026-06-27 06:07:57
[2026-06-27 06:07:57,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:07:57,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:07:57,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:07:57,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:07:57,918.918 INFO    ] time= 27/06/2026 06:07:57
[2026-06-27 06:07:57,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:07:57,921.921 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:07:57,972.972 INFO    ] No existing commands found in stream
[2026-06-27 06:08:02,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:08:02,997.997 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-27 06:08:03,489.489 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:08:03,491.491 INFO    ] Checking for system updates...
[2026-06-27 06:08:03,512.512 INFO    ] 200
[2026-06-27 06:08:03,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:08:03,545.545 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:08:03,546.546 INFO    ] No update needed
[2026-06-27 06:08:03,548.548 INFO    ] Checking for camera pi updates...
[2026-06-27 06:08:03,567.567 INFO    ] 200
[2026-06-27 06:08:03,568.568 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:08:03,591.591 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:08:03,628.628 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:08:03,629.629 INFO    ] No camera update needed
[2026-06-27 06:08:03,631.631 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:08:03,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:08:03,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:08:03,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:08:05,675.675 INFO    ] ================================================
[2026-06-27 06:08:05,690.690 INFO    ] Launching Daemon at Sat Jun 27 06:08:05 IST 2026
[2026-06-27 06:08:05,700.700 INFO    ] ================================================
[2026-06-27 06:08:06,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:08:06
[2026-06-27 06:08:06,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:08:06,474.474 INFO    ] Initializing speech engine...
[2026-06-27 06:08:06,479.479 INFO    ] 2026-06-27 06:08:06
[2026-06-27 06:08:06,685.685 INFO    ] 2026-06-27 06:08:06
[2026-06-27 06:08:06,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:08:06,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:08:06,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:08:07,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:08:07,094.094 INFO    ] time= 27/06/2026 06:08:07
[2026-06-27 06:08:07,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:08:07,139.139 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:08:07,205.205 INFO    ] No existing commands found in stream
[2026-06-27 06:08:12,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:08:12,218.218 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-27 06:08:12,893.893 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 06:08:12,895.895 INFO    ] Checking for system updates...
[2026-06-27 06:08:12,916.916 INFO    ] 200
[2026-06-27 06:08:12,918.918 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:08:12,948.948 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:08:12,949.949 INFO    ] No update needed
[2026-06-27 06:08:12,950.950 INFO    ] Checking for camera pi updates...
[2026-06-27 06:08:12,970.970 INFO    ] 200
[2026-06-27 06:08:12,972.972 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:08:12,995.995 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:08:13,036.036 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:08:13,037.037 INFO    ] No camera update needed
[2026-06-27 06:08:13,038.038 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:08:13,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:08:13,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:08:13,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:08:15,083.083 INFO    ] ================================================
[2026-06-27 06:08:15,105.105 INFO    ] Launching Daemon at Sat Jun 27 06:08:15 IST 2026
[2026-06-27 06:08:15,115.115 INFO    ] ================================================
[2026-06-27 06:08:15,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:08:15
[2026-06-27 06:08:15,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:08:15,916.916 INFO    ] Initializing speech engine...
[2026-06-27 06:08:15,922.922 INFO    ] 2026-06-27 06:08:15
[2026-06-27 06:08:16,133.133 INFO    ] 2026-06-27 06:08:16
[2026-06-27 06:08:16,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:08:16,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:08:16,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:08:16,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:08:16,559.559 INFO    ] time= 27/06/2026 06:08:16
[2026-06-27 06:08:16,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:08:16,590.590 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:08:16,658.658 INFO    ] No existing commands found in stream
[2026-06-27 06:08:21,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:08:21,669.669 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-27 06:08:22,173.173 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 06:08:22,175.175 INFO    ] Checking for system updates...
[2026-06-27 06:08:22,196.196 INFO    ] 200
[2026-06-27 06:08:22,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:08:22,228.228 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:08:22,229.229 INFO    ] No update needed
[2026-06-27 06:08:22,230.230 INFO    ] Checking for camera pi updates...
[2026-06-27 06:08:22,249.249 INFO    ] 200
[2026-06-27 06:08:22,251.251 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:08:22,274.274 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:08:22,310.310 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:08:22,311.311 INFO    ] No camera update needed
[2026-06-27 06:08:22,312.312 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:08:22,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:08:22,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:08:22,320.320 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:08:24,358.358 INFO    ] ================================================
[2026-06-27 06:08:24,373.373 INFO    ] Launching Daemon at Sat Jun 27 06:08:24 IST 2026
[2026-06-27 06:08:24,384.384 INFO    ] ================================================
[2026-06-27 06:08:24,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:08:24
[2026-06-27 06:08:25,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:08:25,196.196 INFO    ] Initializing speech engine...
[2026-06-27 06:08:25,201.201 INFO    ] 2026-06-27 06:08:25
[2026-06-27 06:08:25,406.406 INFO    ] 2026-06-27 06:08:25
[2026-06-27 06:08:25,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:08:25,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:08:25,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:08:25,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:08:25,829.829 INFO    ] time= 27/06/2026 06:08:25
[2026-06-27 06:08:25,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:08:25,858.858 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:08:25,924.924 INFO    ] No existing commands found in stream
[2026-06-27 06:08:30,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:08:30,938.938 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-27 06:08:34,357.357 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:08:34,359.359 INFO    ] Checking for system updates...
[2026-06-27 06:08:34,382.382 INFO    ] 200
[2026-06-27 06:08:34,384.384 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:08:34,415.415 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:08:34,416.416 INFO    ] No update needed
[2026-06-27 06:08:34,418.418 INFO    ] Checking for camera pi updates...
[2026-06-27 06:08:34,437.437 INFO    ] 200
[2026-06-27 06:08:34,439.439 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:08:34,463.463 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:08:34,512.512 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:08:34,514.514 INFO    ] No camera update needed
[2026-06-27 06:08:34,515.515 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:08:34,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:08:34,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:08:34,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:08:36,562.562 INFO    ] ================================================
[2026-06-27 06:08:36,577.577 INFO    ] Launching Daemon at Sat Jun 27 06:08:36 IST 2026
[2026-06-27 06:08:36,588.588 INFO    ] ================================================
[2026-06-27 06:08:36,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:08:36
[2026-06-27 06:08:37,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:08:37,386.386 INFO    ] Initializing speech engine...
[2026-06-27 06:08:37,394.394 INFO    ] 2026-06-27 06:08:37
[2026-06-27 06:08:37,615.615 INFO    ] 2026-06-27 06:08:37
[2026-06-27 06:08:37,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:08:37,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:08:37,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:08:37,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:08:38,042.042 INFO    ] time= 27/06/2026 06:08:37
[2026-06-27 06:08:38,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:08:38,099.099 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:08:38,174.174 INFO    ] No existing commands found in stream
[2026-06-27 06:08:43,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:08:43,188.188 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-27 06:08:46,679.679 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 06:08:46,681.681 INFO    ] Checking for system updates...
[2026-06-27 06:08:46,701.701 INFO    ] 200
[2026-06-27 06:08:46,703.703 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:08:46,733.733 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:08:46,735.735 INFO    ] No update needed
[2026-06-27 06:08:46,736.736 INFO    ] Checking for camera pi updates...
[2026-06-27 06:08:46,758.758 INFO    ] 200
[2026-06-27 06:08:46,759.759 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:08:46,783.783 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:08:46,821.821 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:08:46,822.822 INFO    ] No camera update needed
[2026-06-27 06:08:46,823.823 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:08:46,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:08:46,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:08:46,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:08:48,872.872 INFO    ] ================================================
[2026-06-27 06:08:48,887.887 INFO    ] Launching Daemon at Sat Jun 27 06:08:48 IST 2026
[2026-06-27 06:08:48,898.898 INFO    ] ================================================
[2026-06-27 06:08:49,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:08:49
[2026-06-27 06:08:49,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:08:49,707.707 INFO    ] Initializing speech engine...
[2026-06-27 06:08:49,722.722 INFO    ] 2026-06-27 06:08:49
[2026-06-27 06:08:49,935.935 INFO    ] 2026-06-27 06:08:49
[2026-06-27 06:08:49,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:08:50,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:08:50,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:08:50,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:08:50,362.362 INFO    ] time= 27/06/2026 06:08:50
[2026-06-27 06:08:50,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:08:50,391.391 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:08:50,459.459 INFO    ] No existing commands found in stream
[2026-06-27 06:08:55,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:08:55,471.471 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-27 06:08:56,574.574 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:08:56,576.576 INFO    ] Checking for system updates...
[2026-06-27 06:08:56,597.597 INFO    ] 200
[2026-06-27 06:08:56,599.599 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:08:56,629.629 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:08:56,631.631 INFO    ] No update needed
[2026-06-27 06:08:56,632.632 INFO    ] Checking for camera pi updates...
[2026-06-27 06:08:56,652.652 INFO    ] 200
[2026-06-27 06:08:56,654.654 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:08:56,680.680 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:08:56,716.716 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:08:56,717.717 INFO    ] No camera update needed
[2026-06-27 06:08:56,719.719 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:08:56,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:08:56,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:08:56,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:08:58,765.765 INFO    ] ================================================
[2026-06-27 06:08:58,779.779 INFO    ] Launching Daemon at Sat Jun 27 06:08:58 IST 2026
[2026-06-27 06:08:58,791.791 INFO    ] ================================================
[2026-06-27 06:08:59,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:08:59
[2026-06-27 06:08:59,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:08:59,573.573 INFO    ] Initializing speech engine...
[2026-06-27 06:08:59,578.578 INFO    ] 2026-06-27 06:08:59
[2026-06-27 06:08:59,783.783 INFO    ] 2026-06-27 06:08:59
[2026-06-27 06:08:59,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:08:59,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:09:00,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:09:00,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:09:00,199.199 INFO    ] time= 27/06/2026 06:09:00
[2026-06-27 06:09:00,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:09:00,228.228 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:09:00,295.295 INFO    ] No existing commands found in stream
[2026-06-27 06:09:05,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:09:05,312.312 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-27 06:09:06,131.131 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:09:06,133.133 INFO    ] Checking for system updates...
[2026-06-27 06:09:06,153.153 INFO    ] 200
[2026-06-27 06:09:06,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:09:06,186.186 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:09:06,187.187 INFO    ] No update needed
[2026-06-27 06:09:06,188.188 INFO    ] Checking for camera pi updates...
[2026-06-27 06:09:06,208.208 INFO    ] 200
[2026-06-27 06:09:06,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:09:06,232.232 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:09:06,269.269 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:09:06,270.270 INFO    ] No camera update needed
[2026-06-27 06:09:06,272.272 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:09:06,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:09:06,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:09:06,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:09:08,318.318 INFO    ] ================================================
[2026-06-27 06:09:08,333.333 INFO    ] Launching Daemon at Sat Jun 27 06:09:08 IST 2026
[2026-06-27 06:09:08,344.344 INFO    ] ================================================
[2026-06-27 06:09:08,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:09:08
[2026-06-27 06:09:09,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:09:09,160.160 INFO    ] Initializing speech engine...
[2026-06-27 06:09:09,166.166 INFO    ] 2026-06-27 06:09:09
[2026-06-27 06:09:09,375.375 INFO    ] 2026-06-27 06:09:09
[2026-06-27 06:09:09,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:09:09,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:09:09,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:09:09,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:09:09,799.799 INFO    ] time= 27/06/2026 06:09:09
[2026-06-27 06:09:09,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:09:09,828.828 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:09:09,919.919 INFO    ] No existing commands found in stream
[2026-06-27 06:09:14,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:09:14,931.931 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-27 06:09:15,480.480 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 06:09:15,482.482 INFO    ] Checking for system updates...
[2026-06-27 06:09:15,502.502 INFO    ] 200
[2026-06-27 06:09:15,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:09:15,537.537 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:09:15,538.538 INFO    ] No update needed
[2026-06-27 06:09:15,540.540 INFO    ] Checking for camera pi updates...
[2026-06-27 06:09:15,559.559 INFO    ] 200
[2026-06-27 06:09:15,560.560 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:09:15,583.583 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:09:15,619.619 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:09:15,621.621 INFO    ] No camera update needed
[2026-06-27 06:09:15,622.622 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:09:15,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:09:15,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:09:15,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:09:17,669.669 INFO    ] ================================================
[2026-06-27 06:09:17,685.685 INFO    ] Launching Daemon at Sat Jun 27 06:09:17 IST 2026
[2026-06-27 06:09:17,696.696 INFO    ] ================================================
[2026-06-27 06:09:18,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:09:18
[2026-06-27 06:09:18,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:09:18,555.555 INFO    ] Initializing speech engine...
[2026-06-27 06:09:18,559.559 INFO    ] 2026-06-27 06:09:18
[2026-06-27 06:09:18,766.766 INFO    ] 2026-06-27 06:09:18
[2026-06-27 06:09:18,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:09:18,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:09:18,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:09:19,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:09:19,182.182 INFO    ] time= 27/06/2026 06:09:19
[2026-06-27 06:09:19,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:09:19,214.214 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:09:19,281.281 INFO    ] No existing commands found in stream
[2026-06-27 06:09:24,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:09:24,293.293 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-27 06:09:27,811.811 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:09:27,813.813 INFO    ] Checking for system updates...
[2026-06-27 06:09:27,836.836 INFO    ] 200
[2026-06-27 06:09:27,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:09:27,869.869 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:09:27,870.870 INFO    ] No update needed
[2026-06-27 06:09:27,872.872 INFO    ] Checking for camera pi updates...
[2026-06-27 06:09:27,893.893 INFO    ] 200
[2026-06-27 06:09:27,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:09:27,917.917 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:09:27,957.957 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:09:27,958.958 INFO    ] No camera update needed
[2026-06-27 06:09:27,959.959 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:09:27,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:09:27,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:09:27,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:09:30,005.005 INFO    ] ================================================
[2026-06-27 06:09:30,020.020 INFO    ] Launching Daemon at Sat Jun 27 06:09:30 IST 2026
[2026-06-27 06:09:30,031.031 INFO    ] ================================================
[2026-06-27 06:09:30,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:09:30
[2026-06-27 06:09:30,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:09:30,797.797 INFO    ] Initializing speech engine...
[2026-06-27 06:09:30,805.805 INFO    ] 2026-06-27 06:09:30
[2026-06-27 06:09:31,018.018 INFO    ] 2026-06-27 06:09:30
[2026-06-27 06:09:31,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:09:31,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:09:31,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:09:31,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:09:31,462.462 INFO    ] time= 27/06/2026 06:09:31
[2026-06-27 06:09:31,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:09:31,470.470 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:09:31,536.536 INFO    ] No existing commands found in stream
[2026-06-27 06:09:36,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:09:36,549.549 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-27 06:09:40,666.666 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 06:09:40,668.668 INFO    ] Checking for system updates...
[2026-06-27 06:09:40,689.689 INFO    ] 200
[2026-06-27 06:09:40,690.690 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:09:40,723.723 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:09:40,724.724 INFO    ] No update needed
[2026-06-27 06:09:40,725.725 INFO    ] Checking for camera pi updates...
[2026-06-27 06:09:40,746.746 INFO    ] 200
[2026-06-27 06:09:40,748.748 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:09:40,774.774 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:09:40,814.814 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:09:40,816.816 INFO    ] No camera update needed
[2026-06-27 06:09:40,817.817 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:09:40,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:09:40,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:09:40,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:09:42,864.864 INFO    ] ================================================
[2026-06-27 06:09:42,886.886 INFO    ] Launching Daemon at Sat Jun 27 06:09:42 IST 2026
[2026-06-27 06:09:42,897.897 INFO    ] ================================================
[2026-06-27 06:09:43,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:09:43
[2026-06-27 06:09:43,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:09:43,709.709 INFO    ] Initializing speech engine...
[2026-06-27 06:09:43,716.716 INFO    ] 2026-06-27 06:09:43
[2026-06-27 06:09:43,929.929 INFO    ] 2026-06-27 06:09:43
[2026-06-27 06:09:43,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:09:44,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:09:44,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:09:44,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:09:44,367.367 INFO    ] time= 27/06/2026 06:09:44
[2026-06-27 06:09:44,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:09:44,378.378 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:09:44,445.445 INFO    ] No existing commands found in stream
[2026-06-27 06:09:49,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:09:49,462.462 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-27 06:09:53,792.792 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 06:09:53,794.794 INFO    ] Checking for system updates...
[2026-06-27 06:09:53,815.815 INFO    ] 200
[2026-06-27 06:09:53,816.816 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:09:53,848.848 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:09:53,849.849 INFO    ] No update needed
[2026-06-27 06:09:53,851.851 INFO    ] Checking for camera pi updates...
[2026-06-27 06:09:53,871.871 INFO    ] 200
[2026-06-27 06:09:53,872.872 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:09:53,896.896 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:09:53,921.921 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:09:53,922.922 INFO    ] No camera update needed
[2026-06-27 06:09:53,923.923 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:09:53,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:09:53,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:09:53,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:09:55,973.973 INFO    ] ================================================
[2026-06-27 06:09:55,988.988 INFO    ] Launching Daemon at Sat Jun 27 06:09:55 IST 2026
[2026-06-27 06:09:56,999.999 INFO    ] ================================================
[2026-06-27 06:09:56,336.336 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:09:56
[2026-06-27 06:09:56,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:09:56,787.787 INFO    ] Initializing speech engine...
[2026-06-27 06:09:56,794.794 INFO    ] 2026-06-27 06:09:56
[2026-06-27 06:09:57,007.007 INFO    ] 2026-06-27 06:09:56
[2026-06-27 06:09:57,037.037 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:09:57,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:09:57,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:09:57,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:09:57,430.430 INFO    ] time= 27/06/2026 06:09:57
[2026-06-27 06:09:57,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:09:57,460.460 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:09:57,526.526 INFO    ] No existing commands found in stream
[2026-06-27 06:10:02,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:10:02,537.537 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-27 06:10:09,019.019 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 06:10:09,020.020 INFO    ] Checking for system updates...
[2026-06-27 06:10:09,041.041 INFO    ] 200
[2026-06-27 06:10:09,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:10:09,076.076 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:10:09,077.077 INFO    ] No update needed
[2026-06-27 06:10:09,079.079 INFO    ] Checking for camera pi updates...
[2026-06-27 06:10:09,099.099 INFO    ] 200
[2026-06-27 06:10:09,101.101 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:10:09,126.126 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:10:09,167.167 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:10:09,168.168 INFO    ] No camera update needed
[2026-06-27 06:10:09,169.169 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:10:09,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:10:09,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:10:09,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:10:11,215.215 INFO    ] ================================================
[2026-06-27 06:10:11,230.230 INFO    ] Launching Daemon at Sat Jun 27 06:10:11 IST 2026
[2026-06-27 06:10:11,240.240 INFO    ] ================================================
[2026-06-27 06:10:11,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:10:11
[2026-06-27 06:10:11,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:10:12,105.105 INFO    ] Initializing speech engine...
[2026-06-27 06:10:12,110.110 INFO    ] 2026-06-27 06:10:12
[2026-06-27 06:10:12,316.316 INFO    ] 2026-06-27 06:10:12
[2026-06-27 06:10:12,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:10:12,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:10:12,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:10:12,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:10:12,741.741 INFO    ] time= 27/06/2026 06:10:12
[2026-06-27 06:10:12,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:10:12,763.763 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:10:12,830.830 INFO    ] No existing commands found in stream
[2026-06-27 06:10:17,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:10:17,847.847 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-27 06:10:21,509.509 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:10:21,511.511 INFO    ] Checking for system updates...
[2026-06-27 06:10:21,532.532 INFO    ] 200
[2026-06-27 06:10:21,534.534 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:10:21,567.567 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:10:21,568.568 INFO    ] No update needed
[2026-06-27 06:10:21,570.570 INFO    ] Checking for camera pi updates...
[2026-06-27 06:10:21,591.591 INFO    ] 200
[2026-06-27 06:10:21,592.592 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:10:21,616.616 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:10:21,651.651 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:10:21,652.652 INFO    ] No camera update needed
[2026-06-27 06:10:21,653.653 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:10:21,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:10:21,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:10:21,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:10:23,698.698 INFO    ] ================================================
[2026-06-27 06:10:23,713.713 INFO    ] Launching Daemon at Sat Jun 27 06:10:23 IST 2026
[2026-06-27 06:10:23,725.725 INFO    ] ================================================
[2026-06-27 06:10:24,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:10:24
[2026-06-27 06:10:24,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:10:24,559.559 INFO    ] Initializing speech engine...
[2026-06-27 06:10:24,569.569 INFO    ] 2026-06-27 06:10:24
[2026-06-27 06:10:24,773.773 INFO    ] 2026-06-27 06:10:24
[2026-06-27 06:10:24,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:10:24,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:10:24,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:10:25,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:10:25,170.170 INFO    ] time= 27/06/2026 06:10:25
[2026-06-27 06:10:25,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:10:25,222.222 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:10:25,292.292 INFO    ] No existing commands found in stream
[2026-06-27 06:10:30,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:10:30,306.306 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-27 06:10:31,863.863 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 06:10:31,865.865 INFO    ] Checking for system updates...
[2026-06-27 06:10:31,886.886 INFO    ] 200
[2026-06-27 06:10:31,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:10:31,919.919 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:10:31,921.921 INFO    ] No update needed
[2026-06-27 06:10:31,922.922 INFO    ] Checking for camera pi updates...
[2026-06-27 06:10:31,942.942 INFO    ] 200
[2026-06-27 06:10:31,943.943 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:10:31,969.969 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:10:32,001.001 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:10:32,003.003 INFO    ] No camera update needed
[2026-06-27 06:10:32,004.004 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:10:32,005.005 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:10:32,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:10:32,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:10:34,042.042 INFO    ] ================================================
[2026-06-27 06:10:34,058.058 INFO    ] Launching Daemon at Sat Jun 27 06:10:34 IST 2026
[2026-06-27 06:10:34,068.068 INFO    ] ================================================
[2026-06-27 06:10:34,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:10:34
[2026-06-27 06:10:34,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:10:34,852.852 INFO    ] Initializing speech engine...
[2026-06-27 06:10:34,858.858 INFO    ] 2026-06-27 06:10:34
[2026-06-27 06:10:35,061.061 INFO    ] 2026-06-27 06:10:35
[2026-06-27 06:10:35,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:10:35,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:10:35,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:10:35,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:10:35,485.485 INFO    ] time= 27/06/2026 06:10:35
[2026-06-27 06:10:35,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:10:35,519.519 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:10:35,585.585 INFO    ] No existing commands found in stream
[2026-06-27 06:10:40,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:10:40,598.598 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-27 06:10:41,338.338 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:10:41,340.340 INFO    ] Checking for system updates...
[2026-06-27 06:10:41,362.362 INFO    ] 200
[2026-06-27 06:10:41,363.363 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:10:41,393.393 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:10:41,395.395 INFO    ] No update needed
[2026-06-27 06:10:41,396.396 INFO    ] Checking for camera pi updates...
[2026-06-27 06:10:41,416.416 INFO    ] 200
[2026-06-27 06:10:41,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:10:41,447.447 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:10:41,486.486 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:10:41,487.487 INFO    ] No camera update needed
[2026-06-27 06:10:41,489.489 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:10:41,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:10:41,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:10:41,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:10:43,535.535 INFO    ] ================================================
[2026-06-27 06:10:43,550.550 INFO    ] Launching Daemon at Sat Jun 27 06:10:43 IST 2026
[2026-06-27 06:10:43,561.561 INFO    ] ================================================
[2026-06-27 06:10:43,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:10:43
[2026-06-27 06:10:44,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:10:44,412.412 INFO    ] Initializing speech engine...
[2026-06-27 06:10:44,419.419 INFO    ] 2026-06-27 06:10:44
[2026-06-27 06:10:44,620.620 INFO    ] 2026-06-27 06:10:44
[2026-06-27 06:10:44,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:10:44,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:10:44,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:10:44,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:10:45,046.046 INFO    ] time= 27/06/2026 06:10:44
[2026-06-27 06:10:45,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:10:45,073.073 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:10:45,163.163 INFO    ] No existing commands found in stream
[2026-06-27 06:10:50,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:10:50,181.181 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-27 06:10:54,438.438 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 06:10:54,440.440 INFO    ] Checking for system updates...
[2026-06-27 06:10:54,461.461 INFO    ] 200
[2026-06-27 06:10:54,463.463 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:10:54,497.497 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:10:54,499.499 INFO    ] No update needed
[2026-06-27 06:10:54,500.500 INFO    ] Checking for camera pi updates...
[2026-06-27 06:10:54,520.520 INFO    ] 200
[2026-06-27 06:10:54,522.522 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:10:54,545.545 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:10:54,569.569 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:10:54,570.570 INFO    ] No camera update needed
[2026-06-27 06:10:54,572.572 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:10:54,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:10:54,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:10:54,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:10:56,619.619 INFO    ] ================================================
[2026-06-27 06:10:56,635.635 INFO    ] Launching Daemon at Sat Jun 27 06:10:56 IST 2026
[2026-06-27 06:10:56,647.647 INFO    ] ================================================
[2026-06-27 06:10:57,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:10:57
[2026-06-27 06:10:57,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:10:57,476.476 INFO    ] Initializing speech engine...
[2026-06-27 06:10:57,482.482 INFO    ] 2026-06-27 06:10:57
[2026-06-27 06:10:57,686.686 INFO    ] 2026-06-27 06:10:57
[2026-06-27 06:10:57,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:10:57,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:10:57,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:10:58,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:10:58,112.112 INFO    ] time= 27/06/2026 06:10:58
[2026-06-27 06:10:58,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:10:58,134.134 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:10:58,201.201 INFO    ] No existing commands found in stream
[2026-06-27 06:11:03,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:11:03,213.213 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-27 06:11:05,541.541 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:11:05,542.542 INFO    ] Checking for system updates...
[2026-06-27 06:11:05,565.565 INFO    ] 200
[2026-06-27 06:11:05,566.566 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:11:05,599.599 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:11:05,601.601 INFO    ] No update needed
[2026-06-27 06:11:05,602.602 INFO    ] Checking for camera pi updates...
[2026-06-27 06:11:05,623.623 INFO    ] 200
[2026-06-27 06:11:05,624.624 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:11:05,648.648 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:11:05,787.787 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:11:05,788.788 INFO    ] No camera update needed
[2026-06-27 06:11:05,789.789 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:11:05,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:11:05,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:11:05,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:11:07,835.835 INFO    ] ================================================
[2026-06-27 06:11:07,850.850 INFO    ] Launching Daemon at Sat Jun 27 06:11:07 IST 2026
[2026-06-27 06:11:07,860.860 INFO    ] ================================================
[2026-06-27 06:11:08,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:11:08
[2026-06-27 06:11:08,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:11:08,750.750 INFO    ] Initializing speech engine...
[2026-06-27 06:11:08,764.764 INFO    ] 2026-06-27 06:11:08
[2026-06-27 06:11:08,978.978 INFO    ] 2026-06-27 06:11:08
[2026-06-27 06:11:09,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:11:09,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:11:09,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:11:09,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:11:09,412.412 INFO    ] time= 27/06/2026 06:11:09
[2026-06-27 06:11:09,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:11:09,441.441 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:11:09,511.511 INFO    ] No existing commands found in stream
[2026-06-27 06:11:14,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:11:14,524.524 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-27 06:11:18,378.378 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:11:18,380.380 INFO    ] Checking for system updates...
[2026-06-27 06:11:18,401.401 INFO    ] 200
[2026-06-27 06:11:18,403.403 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:11:18,438.438 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:11:18,440.440 INFO    ] No update needed
[2026-06-27 06:11:18,441.441 INFO    ] Checking for camera pi updates...
[2026-06-27 06:11:18,464.464 INFO    ] 200
[2026-06-27 06:11:18,465.465 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:11:18,489.489 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:11:18,513.513 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:11:18,515.515 INFO    ] No camera update needed
[2026-06-27 06:11:18,516.516 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:11:18,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:11:18,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:11:18,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:11:20,563.563 INFO    ] ================================================
[2026-06-27 06:11:20,578.578 INFO    ] Launching Daemon at Sat Jun 27 06:11:20 IST 2026
[2026-06-27 06:11:20,589.589 INFO    ] ================================================
[2026-06-27 06:11:20,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:11:20
[2026-06-27 06:11:21,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:11:21,396.396 INFO    ] Initializing speech engine...
[2026-06-27 06:11:21,404.404 INFO    ] 2026-06-27 06:11:21
[2026-06-27 06:11:21,617.617 INFO    ] 2026-06-27 06:11:21
[2026-06-27 06:11:21,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:11:21,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:11:21,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:11:21,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:11:22,038.038 INFO    ] time= 27/06/2026 06:11:21
[2026-06-27 06:11:22,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:11:22,066.066 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:11:22,133.133 INFO    ] No existing commands found in stream
[2026-06-27 06:11:27,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:11:27,146.146 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-27 06:11:31,278.278 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 06:11:31,279.279 INFO    ] Checking for system updates...
[2026-06-27 06:11:31,300.300 INFO    ] 200
[2026-06-27 06:11:31,301.301 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:11:31,332.332 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:11:31,333.333 INFO    ] No update needed
[2026-06-27 06:11:31,334.334 INFO    ] Checking for camera pi updates...
[2026-06-27 06:11:31,355.355 INFO    ] 200
[2026-06-27 06:11:31,356.356 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:11:31,380.380 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:11:31,418.418 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:11:31,419.419 INFO    ] No camera update needed
[2026-06-27 06:11:31,421.421 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:11:31,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:11:31,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:11:31,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:11:33,459.459 INFO    ] ================================================
[2026-06-27 06:11:33,475.475 INFO    ] Launching Daemon at Sat Jun 27 06:11:33 IST 2026
[2026-06-27 06:11:33,486.486 INFO    ] ================================================
[2026-06-27 06:11:33,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:11:33
[2026-06-27 06:11:34,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:11:34,280.280 INFO    ] Initializing speech engine...
[2026-06-27 06:11:34,284.284 INFO    ] 2026-06-27 06:11:34
[2026-06-27 06:11:34,489.489 INFO    ] 2026-06-27 06:11:34
[2026-06-27 06:11:34,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:11:34,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:11:34,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:11:34,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:11:34,954.954 INFO    ] time= 27/06/2026 06:11:34
[2026-06-27 06:11:34,987.987 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:11:34,989.989 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:11:35,086.086 INFO    ] No existing commands found in stream
[2026-06-27 06:11:40,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:11:40,102.102 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-27 06:11:43,850.850 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:11:43,852.852 INFO    ] Checking for system updates...
[2026-06-27 06:11:43,875.875 INFO    ] 200
[2026-06-27 06:11:43,876.876 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:11:43,913.913 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:11:43,915.915 INFO    ] No update needed
[2026-06-27 06:11:43,917.917 INFO    ] Checking for camera pi updates...
[2026-06-27 06:11:43,937.937 INFO    ] 200
[2026-06-27 06:11:43,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:11:43,962.962 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:11:43,998.998 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:11:44,000.000 INFO    ] No camera update needed
[2026-06-27 06:11:44,001.001 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:11:44,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:11:44,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:11:44,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:11:46,050.050 INFO    ] ================================================
[2026-06-27 06:11:46,066.066 INFO    ] Launching Daemon at Sat Jun 27 06:11:46 IST 2026
[2026-06-27 06:11:46,077.077 INFO    ] ================================================
[2026-06-27 06:11:46,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:11:46
[2026-06-27 06:11:46,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:11:46,912.912 INFO    ] Initializing speech engine...
[2026-06-27 06:11:46,916.916 INFO    ] 2026-06-27 06:11:46
[2026-06-27 06:11:47,140.140 INFO    ] 2026-06-27 06:11:47
[2026-06-27 06:11:47,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:11:47,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:11:47,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:11:47,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:11:47,543.543 INFO    ] time= 27/06/2026 06:11:47
[2026-06-27 06:11:47,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:11:47,592.592 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:11:47,660.660 INFO    ] No existing commands found in stream
[2026-06-27 06:11:52,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:11:52,678.678 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-27 06:11:53,174.174 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 06:11:53,175.175 INFO    ] Checking for system updates...
[2026-06-27 06:11:53,197.197 INFO    ] 200
[2026-06-27 06:11:53,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:11:53,229.229 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:11:53,231.231 INFO    ] No update needed
[2026-06-27 06:11:53,232.232 INFO    ] Checking for camera pi updates...
[2026-06-27 06:11:53,253.253 INFO    ] 200
[2026-06-27 06:11:53,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:11:53,278.278 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:11:53,316.316 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:11:53,317.317 INFO    ] No camera update needed
[2026-06-27 06:11:53,319.319 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:11:53,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:11:53,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:11:53,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:11:55,366.366 INFO    ] ================================================
[2026-06-27 06:11:55,381.381 INFO    ] Launching Daemon at Sat Jun 27 06:11:55 IST 2026
[2026-06-27 06:11:55,392.392 INFO    ] ================================================
[2026-06-27 06:11:55,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:11:55
[2026-06-27 06:11:56,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:11:56,279.279 INFO    ] Initializing speech engine...
[2026-06-27 06:11:56,290.290 INFO    ] 2026-06-27 06:11:56
[2026-06-27 06:11:56,502.502 INFO    ] 2026-06-27 06:11:56
[2026-06-27 06:11:56,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:11:56,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:11:56,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:11:56,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:11:56,946.946 INFO    ] time= 27/06/2026 06:11:56
[2026-06-27 06:11:56,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:11:56,953.953 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:11:57,021.021 INFO    ] No existing commands found in stream
[2026-06-27 06:12:02,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:12:02,047.047 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-27 06:12:03,496.496 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 06:12:03,497.497 INFO    ] Checking for system updates...
[2026-06-27 06:12:03,519.519 INFO    ] 200
[2026-06-27 06:12:03,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:12:03,554.554 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:12:03,555.555 INFO    ] No update needed
[2026-06-27 06:12:03,556.556 INFO    ] Checking for camera pi updates...
[2026-06-27 06:12:03,577.577 INFO    ] 200
[2026-06-27 06:12:03,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:12:03,602.602 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:12:03,654.654 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:12:03,656.656 INFO    ] No camera update needed
[2026-06-27 06:12:03,657.657 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:12:03,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:12:03,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:12:03,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:12:05,702.702 INFO    ] ================================================
[2026-06-27 06:12:05,718.718 INFO    ] Launching Daemon at Sat Jun 27 06:12:05 IST 2026
[2026-06-27 06:12:05,729.729 INFO    ] ================================================
[2026-06-27 06:12:06,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:12:06
[2026-06-27 06:12:06,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:12:06,572.572 INFO    ] Initializing speech engine...
[2026-06-27 06:12:06,578.578 INFO    ] 2026-06-27 06:12:06
[2026-06-27 06:12:06,786.786 INFO    ] 2026-06-27 06:12:06
[2026-06-27 06:12:06,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:12:07,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:12:07,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:12:07,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:12:07,208.208 INFO    ] time= 27/06/2026 06:12:07
[2026-06-27 06:12:07,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:12:07,239.239 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:12:07,330.330 INFO    ] No existing commands found in stream
[2026-06-27 06:12:12,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:12:12,340.340 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-27 06:12:16,567.567 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 06:12:16,568.568 INFO    ] Checking for system updates...
[2026-06-27 06:12:16,589.589 INFO    ] 200
[2026-06-27 06:12:16,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:12:16,622.622 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:12:16,624.624 INFO    ] No update needed
[2026-06-27 06:12:16,625.625 INFO    ] Checking for camera pi updates...
[2026-06-27 06:12:16,645.645 INFO    ] 200
[2026-06-27 06:12:16,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:12:16,670.670 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:12:16,707.707 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:12:16,708.708 INFO    ] No camera update needed
[2026-06-27 06:12:16,710.710 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:12:16,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:12:16,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:12:16,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:12:18,755.755 INFO    ] ================================================
[2026-06-27 06:12:18,770.770 INFO    ] Launching Daemon at Sat Jun 27 06:12:18 IST 2026
[2026-06-27 06:12:18,781.781 INFO    ] ================================================
[2026-06-27 06:12:19,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:12:19
[2026-06-27 06:12:19,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:12:19,593.593 INFO    ] Initializing speech engine...
[2026-06-27 06:12:19,605.605 INFO    ] 2026-06-27 06:12:19
[2026-06-27 06:12:19,788.788 INFO    ] 2026-06-27 06:12:19
[2026-06-27 06:12:19,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:12:20,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:12:20,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:12:20,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:12:20,279.279 INFO    ] time= 27/06/2026 06:12:20
[2026-06-27 06:12:20,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:12:20,327.327 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:12:20,399.399 INFO    ] No existing commands found in stream
[2026-06-27 06:12:25,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:12:25,413.413 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-27 06:12:29,092.092 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 06:12:29,094.094 INFO    ] Checking for system updates...
[2026-06-27 06:12:29,115.115 INFO    ] 200
[2026-06-27 06:12:29,116.116 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:12:29,149.149 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:12:29,150.150 INFO    ] No update needed
[2026-06-27 06:12:29,151.151 INFO    ] Checking for camera pi updates...
[2026-06-27 06:12:29,172.172 INFO    ] 200
[2026-06-27 06:12:29,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:12:29,199.199 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:12:29,233.233 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:12:29,234.234 INFO    ] No camera update needed
[2026-06-27 06:12:29,236.236 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:12:29,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:12:29,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:12:29,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:12:31,281.281 INFO    ] ================================================
[2026-06-27 06:12:31,302.302 INFO    ] Launching Daemon at Sat Jun 27 06:12:31 IST 2026
[2026-06-27 06:12:31,313.313 INFO    ] ================================================
[2026-06-27 06:12:31,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:12:31
[2026-06-27 06:12:32,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:12:32,163.163 INFO    ] Initializing speech engine...
[2026-06-27 06:12:32,172.172 INFO    ] 2026-06-27 06:12:32
[2026-06-27 06:12:32,410.410 INFO    ] 2026-06-27 06:12:32
[2026-06-27 06:12:32,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:12:32,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:12:32,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:12:32,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:12:32,862.862 INFO    ] time= 27/06/2026 06:12:32
[2026-06-27 06:12:32,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:12:32,891.891 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:12:32,958.958 INFO    ] No existing commands found in stream
[2026-06-27 06:12:37,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:12:37,976.976 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-27 06:12:39,257.257 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:12:39,258.258 INFO    ] Checking for system updates...
[2026-06-27 06:12:39,281.281 INFO    ] 200
[2026-06-27 06:12:39,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:12:39,316.316 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:12:39,318.318 INFO    ] No update needed
[2026-06-27 06:12:39,319.319 INFO    ] Checking for camera pi updates...
[2026-06-27 06:12:39,338.338 INFO    ] 200
[2026-06-27 06:12:39,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:12:39,363.363 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:12:39,401.401 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:12:39,402.402 INFO    ] No camera update needed
[2026-06-27 06:12:39,403.403 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:12:39,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:12:39,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:12:39,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:12:41,452.452 INFO    ] ================================================
[2026-06-27 06:12:41,468.468 INFO    ] Launching Daemon at Sat Jun 27 06:12:41 IST 2026
[2026-06-27 06:12:41,479.479 INFO    ] ================================================
[2026-06-27 06:12:41,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:12:41
[2026-06-27 06:12:42,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:12:42,269.269 INFO    ] Initializing speech engine...
[2026-06-27 06:12:42,281.281 INFO    ] 2026-06-27 06:12:42
[2026-06-27 06:12:42,487.487 INFO    ] 2026-06-27 06:12:42
[2026-06-27 06:12:42,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:12:42,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:12:42,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:12:42,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:12:42,905.905 INFO    ] time= 27/06/2026 06:12:42
[2026-06-27 06:12:42,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:12:42,936.936 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:12:43,002.002 INFO    ] No existing commands found in stream
[2026-06-27 06:12:48,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:12:48,014.014 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-27 06:12:49,838.838 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 06:12:49,840.840 INFO    ] Checking for system updates...
[2026-06-27 06:12:49,861.861 INFO    ] 200
[2026-06-27 06:12:49,862.862 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:12:49,893.893 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:12:49,894.894 INFO    ] No update needed
[2026-06-27 06:12:49,896.896 INFO    ] Checking for camera pi updates...
[2026-06-27 06:12:49,915.915 INFO    ] 200
[2026-06-27 06:12:49,916.916 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:12:49,940.940 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:12:49,979.979 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:12:49,980.980 INFO    ] No camera update needed
[2026-06-27 06:12:49,982.982 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:12:49,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:12:49,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:12:49,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:12:52,031.031 INFO    ] ================================================
[2026-06-27 06:12:52,047.047 INFO    ] Launching Daemon at Sat Jun 27 06:12:52 IST 2026
[2026-06-27 06:12:52,057.057 INFO    ] ================================================
[2026-06-27 06:12:52,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:12:52
[2026-06-27 06:12:52,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:12:52,854.854 INFO    ] Initializing speech engine...
[2026-06-27 06:12:52,859.859 INFO    ] 2026-06-27 06:12:52
[2026-06-27 06:12:53,063.063 INFO    ] 2026-06-27 06:12:53
[2026-06-27 06:12:53,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:12:53,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:12:53,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:12:53,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:12:53,481.481 INFO    ] time= 27/06/2026 06:12:53
[2026-06-27 06:12:53,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:12:53,511.511 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:12:53,576.576 INFO    ] No existing commands found in stream
[2026-06-27 06:12:58,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:12:58,589.589 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-27 06:13:02,813.813 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 06:13:02,815.815 INFO    ] Checking for system updates...
[2026-06-27 06:13:02,854.854 INFO    ] 200
[2026-06-27 06:13:02,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:13:02,890.890 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:13:02,891.891 INFO    ] No update needed
[2026-06-27 06:13:02,892.892 INFO    ] Checking for camera pi updates...
[2026-06-27 06:13:02,919.919 INFO    ] 200
[2026-06-27 06:13:02,922.922 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:13:02,950.950 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:13:02,988.988 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:13:02,989.989 INFO    ] No camera update needed
[2026-06-27 06:13:02,990.990 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:13:02,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:13:02,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:13:02,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:13:05,038.038 INFO    ] ================================================
[2026-06-27 06:13:05,053.053 INFO    ] Launching Daemon at Sat Jun 27 06:13:05 IST 2026
[2026-06-27 06:13:05,064.064 INFO    ] ================================================
[2026-06-27 06:13:05,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:13:05
[2026-06-27 06:13:05,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:13:05,881.881 INFO    ] Initializing speech engine...
[2026-06-27 06:13:05,889.889 INFO    ] 2026-06-27 06:13:05
[2026-06-27 06:13:06,111.111 INFO    ] 2026-06-27 06:13:06
[2026-06-27 06:13:06,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:13:06,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:13:06,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:13:06,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:13:06,399.399 INFO    ] time= 27/06/2026 06:13:06
[2026-06-27 06:13:06,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:13:06,402.402 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:13:06,456.456 INFO    ] No existing commands found in stream
[2026-06-27 06:13:11,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:13:11,468.468 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-27 06:13:12,630.630 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 06:13:12,631.631 INFO    ] Checking for system updates...
[2026-06-27 06:13:12,652.652 INFO    ] 200
[2026-06-27 06:13:12,654.654 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:13:12,687.687 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:13:12,688.688 INFO    ] No update needed
[2026-06-27 06:13:12,690.690 INFO    ] Checking for camera pi updates...
[2026-06-27 06:13:12,709.709 INFO    ] 200
[2026-06-27 06:13:12,711.711 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:13:12,737.737 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:13:12,878.878 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:13:12,879.879 INFO    ] No camera update needed
[2026-06-27 06:13:12,880.880 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:13:12,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:13:12,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:13:12,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:13:14,926.926 INFO    ] ================================================
[2026-06-27 06:13:14,941.941 INFO    ] Launching Daemon at Sat Jun 27 06:13:14 IST 2026
[2026-06-27 06:13:14,952.952 INFO    ] ================================================
[2026-06-27 06:13:15,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:13:15
[2026-06-27 06:13:15,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:13:15,798.798 INFO    ] Initializing speech engine...
[2026-06-27 06:13:15,802.802 INFO    ] 2026-06-27 06:13:15
[2026-06-27 06:13:16,011.011 INFO    ] 2026-06-27 06:13:15
[2026-06-27 06:13:16,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:13:16,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:13:16,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:13:16,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:13:16,434.434 INFO    ] time= 27/06/2026 06:13:16
[2026-06-27 06:13:16,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:13:16,465.465 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:13:16,533.533 INFO    ] No existing commands found in stream
[2026-06-27 06:13:21,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:13:21,547.547 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-27 06:13:22,138.138 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 06:13:22,140.140 INFO    ] Checking for system updates...
[2026-06-27 06:13:22,161.161 INFO    ] 200
[2026-06-27 06:13:22,163.163 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:13:22,197.197 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:13:22,198.198 INFO    ] No update needed
[2026-06-27 06:13:22,200.200 INFO    ] Checking for camera pi updates...
[2026-06-27 06:13:22,220.220 INFO    ] 200
[2026-06-27 06:13:22,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:13:22,247.247 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:13:22,288.288 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:13:22,289.289 INFO    ] No camera update needed
[2026-06-27 06:13:22,291.291 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:13:22,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:13:22,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:13:22,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:13:24,338.338 INFO    ] ================================================
[2026-06-27 06:13:24,353.353 INFO    ] Launching Daemon at Sat Jun 27 06:13:24 IST 2026
[2026-06-27 06:13:24,364.364 INFO    ] ================================================
[2026-06-27 06:13:24,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:13:24
[2026-06-27 06:13:25,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:13:25,175.175 INFO    ] Initializing speech engine...
[2026-06-27 06:13:25,184.184 INFO    ] 2026-06-27 06:13:25
[2026-06-27 06:13:25,391.391 INFO    ] 2026-06-27 06:13:25
[2026-06-27 06:13:25,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:13:25,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:13:25,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:13:25,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:13:25,834.834 INFO    ] time= 27/06/2026 06:13:25
[2026-06-27 06:13:25,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:13:25,842.842 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:13:25,909.909 INFO    ] No existing commands found in stream
[2026-06-27 06:13:30,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:13:30,926.926 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-27 06:13:34,059.059 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:13:34,061.061 INFO    ] Checking for system updates...
[2026-06-27 06:13:34,081.081 INFO    ] 200
[2026-06-27 06:13:34,083.083 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:13:34,116.116 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:13:34,117.117 INFO    ] No update needed
[2026-06-27 06:13:34,118.118 INFO    ] Checking for camera pi updates...
[2026-06-27 06:13:34,139.139 INFO    ] 200
[2026-06-27 06:13:34,140.140 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:13:34,163.163 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:13:34,200.200 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:13:34,201.201 INFO    ] No camera update needed
[2026-06-27 06:13:34,203.203 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:13:34,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:13:34,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:13:34,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:13:36,249.249 INFO    ] ================================================
[2026-06-27 06:13:36,269.269 INFO    ] Launching Daemon at Sat Jun 27 06:13:36 IST 2026
[2026-06-27 06:13:36,280.280 INFO    ] ================================================
[2026-06-27 06:13:36,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:13:36
[2026-06-27 06:13:36,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:13:37,066.066 INFO    ] Initializing speech engine...
[2026-06-27 06:13:37,070.070 INFO    ] 2026-06-27 06:13:37
[2026-06-27 06:13:37,275.275 INFO    ] 2026-06-27 06:13:37
[2026-06-27 06:13:37,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:13:37,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:13:37,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:13:37,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:13:37,722.722 INFO    ] time= 27/06/2026 06:13:37
[2026-06-27 06:13:37,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:13:37,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:13:37,797.797 INFO    ] No existing commands found in stream
[2026-06-27 06:13:42,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:13:42,809.809 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-27 06:13:46,075.075 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:13:46,077.077 INFO    ] Checking for system updates...
[2026-06-27 06:13:46,100.100 INFO    ] 200
[2026-06-27 06:13:46,101.101 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:13:46,133.133 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:13:46,135.135 INFO    ] No update needed
[2026-06-27 06:13:46,136.136 INFO    ] Checking for camera pi updates...
[2026-06-27 06:13:46,156.156 INFO    ] 200
[2026-06-27 06:13:46,157.157 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:13:46,183.183 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:13:46,224.224 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:13:46,225.225 INFO    ] No camera update needed
[2026-06-27 06:13:46,227.227 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:13:46,228.228 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:13:46,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:13:46,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:13:48,276.276 INFO    ] ================================================
[2026-06-27 06:13:48,292.292 INFO    ] Launching Daemon at Sat Jun 27 06:13:48 IST 2026
[2026-06-27 06:13:48,304.304 INFO    ] ================================================
[2026-06-27 06:13:48,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:13:48
[2026-06-27 06:13:49,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:13:49,157.157 INFO    ] Initializing speech engine...
[2026-06-27 06:13:49,161.161 INFO    ] 2026-06-27 06:13:49
[2026-06-27 06:13:49,372.372 INFO    ] 2026-06-27 06:13:49
[2026-06-27 06:13:49,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:13:49,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:13:49,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:13:49,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:13:49,819.819 INFO    ] time= 27/06/2026 06:13:49
[2026-06-27 06:13:49,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:13:49,828.828 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:13:49,895.895 INFO    ] No existing commands found in stream
[2026-06-27 06:13:54,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:13:54,908.908 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-27 06:13:58,866.866 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 06:13:58,867.867 INFO    ] Checking for system updates...
[2026-06-27 06:13:58,888.888 INFO    ] 200
[2026-06-27 06:13:58,890.890 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:13:58,921.921 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:13:58,922.922 INFO    ] No update needed
[2026-06-27 06:13:58,924.924 INFO    ] Checking for camera pi updates...
[2026-06-27 06:13:58,947.947 INFO    ] 200
[2026-06-27 06:13:58,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:13:58,974.974 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:13:59,016.016 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:13:59,018.018 INFO    ] No camera update needed
[2026-06-27 06:13:59,019.019 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:13:59,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:13:59,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:13:59,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:14:01,067.067 INFO    ] ================================================
[2026-06-27 06:14:01,082.082 INFO    ] Launching Daemon at Sat Jun 27 06:14:01 IST 2026
[2026-06-27 06:14:01,093.093 INFO    ] ================================================
[2026-06-27 06:14:01,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:14:01
[2026-06-27 06:14:01,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:14:02,044.044 INFO    ] Initializing speech engine...
[2026-06-27 06:14:02,049.049 INFO    ] 2026-06-27 06:14:02
[2026-06-27 06:14:02,289.289 INFO    ] 2026-06-27 06:14:02
[2026-06-27 06:14:02,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:14:02,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:14:02,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:14:02,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:14:02,795.795 INFO    ] time= 27/06/2026 06:14:02
[2026-06-27 06:14:02,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:14:02,851.851 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:14:02,926.926 INFO    ] No existing commands found in stream
[2026-06-27 06:14:07,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:14:07,940.940 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-27 06:14:10,217.217 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 06:14:10,219.219 INFO    ] Checking for system updates...
[2026-06-27 06:14:10,240.240 INFO    ] 200
[2026-06-27 06:14:10,241.241 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:14:10,271.271 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:14:10,273.273 INFO    ] No update needed
[2026-06-27 06:14:10,274.274 INFO    ] Checking for camera pi updates...
[2026-06-27 06:14:10,294.294 INFO    ] 200
[2026-06-27 06:14:10,295.295 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:14:10,319.319 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:14:10,364.364 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:14:10,366.366 INFO    ] No camera update needed
[2026-06-27 06:14:10,367.367 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:14:10,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:14:10,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:14:10,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:14:12,412.412 INFO    ] ================================================
[2026-06-27 06:14:12,427.427 INFO    ] Launching Daemon at Sat Jun 27 06:14:12 IST 2026
[2026-06-27 06:14:12,438.438 INFO    ] ================================================
[2026-06-27 06:14:12,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:14:12
[2026-06-27 06:14:13,095.095 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:14:13,241.241 INFO    ] Initializing speech engine...
[2026-06-27 06:14:13,252.252 INFO    ] 2026-06-27 06:14:13
[2026-06-27 06:14:13,460.460 INFO    ] 2026-06-27 06:14:13
[2026-06-27 06:14:13,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:14:13,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:14:13,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:14:13,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:14:13,882.882 INFO    ] time= 27/06/2026 06:14:13
[2026-06-27 06:14:13,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:14:13,910.910 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:14:13,977.977 INFO    ] No existing commands found in stream
[2026-06-27 06:14:18,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:14:18,990.990 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-27 06:14:20,024.024 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 06:14:20,026.026 INFO    ] Checking for system updates...
[2026-06-27 06:14:20,049.049 INFO    ] 200
[2026-06-27 06:14:20,050.050 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:14:20,081.081 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:14:20,082.082 INFO    ] No update needed
[2026-06-27 06:14:20,084.084 INFO    ] Checking for camera pi updates...
[2026-06-27 06:14:20,103.103 INFO    ] 200
[2026-06-27 06:14:20,105.105 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:14:20,128.128 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:14:20,167.167 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:14:20,168.168 INFO    ] No camera update needed
[2026-06-27 06:14:20,170.170 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:14:20,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:14:20,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:14:20,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:14:22,215.215 INFO    ] ================================================
[2026-06-27 06:14:22,231.231 INFO    ] Launching Daemon at Sat Jun 27 06:14:22 IST 2026
[2026-06-27 06:14:22,241.241 INFO    ] ================================================
[2026-06-27 06:14:22,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:14:22
[2026-06-27 06:14:22,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:14:23,112.112 INFO    ] Initializing speech engine...
[2026-06-27 06:14:23,118.118 INFO    ] 2026-06-27 06:14:23
[2026-06-27 06:14:23,329.329 INFO    ] 2026-06-27 06:14:23
[2026-06-27 06:14:23,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:14:23,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:14:23,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:14:23,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:14:23,751.751 INFO    ] time= 27/06/2026 06:14:23
[2026-06-27 06:14:23,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:14:23,779.779 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:14:23,870.870 INFO    ] No existing commands found in stream
[2026-06-27 06:14:28,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:14:28,883.883 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-27 06:14:32,010.010 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 06:14:32,012.012 INFO    ] Checking for system updates...
[2026-06-27 06:14:32,035.035 INFO    ] 200
[2026-06-27 06:14:32,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:14:32,072.072 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:14:32,074.074 INFO    ] No update needed
[2026-06-27 06:14:32,076.076 INFO    ] Checking for camera pi updates...
[2026-06-27 06:14:32,103.103 INFO    ] 200
[2026-06-27 06:14:32,105.105 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:14:32,143.143 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:14:32,179.179 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:14:32,181.181 INFO    ] No camera update needed
[2026-06-27 06:14:32,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:14:32,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:14:32,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:14:32,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:14:34,230.230 INFO    ] ================================================
[2026-06-27 06:14:34,245.245 INFO    ] Launching Daemon at Sat Jun 27 06:14:34 IST 2026
[2026-06-27 06:14:34,256.256 INFO    ] ================================================
[2026-06-27 06:14:34,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:14:34
[2026-06-27 06:14:34,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:14:35,106.106 INFO    ] Initializing speech engine...
[2026-06-27 06:14:35,110.110 INFO    ] 2026-06-27 06:14:35
[2026-06-27 06:14:35,322.322 INFO    ] 2026-06-27 06:14:35
[2026-06-27 06:14:35,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:14:35,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:14:35,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:14:35,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:14:35,745.745 INFO    ] time= 27/06/2026 06:14:35
[2026-06-27 06:14:35,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:14:35,780.780 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:14:35,848.848 INFO    ] No existing commands found in stream
[2026-06-27 06:14:40,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:14:40,861.861 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-27 06:14:42,500.500 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 06:14:42,501.501 INFO    ] Checking for system updates...
[2026-06-27 06:14:42,522.522 INFO    ] 200
[2026-06-27 06:14:42,524.524 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:14:42,555.555 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:14:42,556.556 INFO    ] No update needed
[2026-06-27 06:14:42,558.558 INFO    ] Checking for camera pi updates...
[2026-06-27 06:14:42,579.579 INFO    ] 200
[2026-06-27 06:14:42,581.581 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:14:42,608.608 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:14:42,648.648 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:14:42,650.650 INFO    ] No camera update needed
[2026-06-27 06:14:42,651.651 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:14:42,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:14:42,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:14:42,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:14:44,698.698 INFO    ] ================================================
[2026-06-27 06:14:44,714.714 INFO    ] Launching Daemon at Sat Jun 27 06:14:44 IST 2026
[2026-06-27 06:14:44,724.724 INFO    ] ================================================
[2026-06-27 06:14:45,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:14:45
[2026-06-27 06:14:45,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:14:45,542.542 INFO    ] Initializing speech engine...
[2026-06-27 06:14:45,547.547 INFO    ] 2026-06-27 06:14:45
[2026-06-27 06:14:45,754.754 INFO    ] 2026-06-27 06:14:45
[2026-06-27 06:14:45,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:14:45,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:14:45,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:14:46,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:14:46,192.192 INFO    ] time= 27/06/2026 06:14:46
[2026-06-27 06:14:46,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:14:46,220.220 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:14:46,298.298 INFO    ] No existing commands found in stream
[2026-06-27 06:14:51,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:14:51,337.337 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-27 06:14:57,107.107 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 06:14:57,108.108 INFO    ] Checking for system updates...
[2026-06-27 06:14:57,130.130 INFO    ] 200
[2026-06-27 06:14:57,131.131 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:14:57,162.162 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:14:57,163.163 INFO    ] No update needed
[2026-06-27 06:14:57,165.165 INFO    ] Checking for camera pi updates...
[2026-06-27 06:14:57,185.185 INFO    ] 200
[2026-06-27 06:14:57,186.186 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:14:57,211.211 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:14:57,249.249 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:14:57,250.250 INFO    ] No camera update needed
[2026-06-27 06:14:57,252.252 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:14:57,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:14:57,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:14:57,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:14:59,298.298 INFO    ] ================================================
[2026-06-27 06:14:59,314.314 INFO    ] Launching Daemon at Sat Jun 27 06:14:59 IST 2026
[2026-06-27 06:14:59,324.324 INFO    ] ================================================
[2026-06-27 06:14:59,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:14:59
[2026-06-27 06:14:59,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:15:00,140.140 INFO    ] Initializing speech engine...
[2026-06-27 06:15:00,146.146 INFO    ] 2026-06-27 06:15:00
[2026-06-27 06:15:00,350.350 INFO    ] 2026-06-27 06:15:00
[2026-06-27 06:15:00,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:15:00,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:15:00,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:15:00,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:15:00,772.772 INFO    ] time= 27/06/2026 06:15:00
[2026-06-27 06:15:00,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:15:00,802.802 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:15:00,867.867 INFO    ] No existing commands found in stream
[2026-06-27 06:15:05,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:15:05,880.880 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-27 06:15:09,099.099 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 06:15:09,100.100 INFO    ] Checking for system updates...
[2026-06-27 06:15:09,123.123 INFO    ] 200
[2026-06-27 06:15:09,125.125 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:15:09,155.155 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:15:09,156.156 INFO    ] No update needed
[2026-06-27 06:15:09,158.158 INFO    ] Checking for camera pi updates...
[2026-06-27 06:15:09,178.178 INFO    ] 200
[2026-06-27 06:15:09,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:15:09,204.204 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:15:09,226.226 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:15:09,227.227 INFO    ] No camera update needed
[2026-06-27 06:15:09,228.228 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:15:09,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:15:09,233.233 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:15:09,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:15:11,273.273 INFO    ] ================================================
[2026-06-27 06:15:11,288.288 INFO    ] Launching Daemon at Sat Jun 27 06:15:11 IST 2026
[2026-06-27 06:15:11,300.300 INFO    ] ================================================
[2026-06-27 06:15:11,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:15:11
[2026-06-27 06:15:12,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:15:12,174.174 INFO    ] Initializing speech engine...
[2026-06-27 06:15:12,180.180 INFO    ] 2026-06-27 06:15:12
[2026-06-27 06:15:12,386.386 INFO    ] 2026-06-27 06:15:12
[2026-06-27 06:15:12,416.416 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:15:12,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:15:12,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:15:12,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:15:12,805.805 INFO    ] time= 27/06/2026 06:15:12
[2026-06-27 06:15:12,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:15:12,835.835 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:15:12,926.926 INFO    ] No existing commands found in stream
[2026-06-27 06:15:17,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:15:17,943.943 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-27 06:15:20,947.947 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:15:20,948.948 INFO    ] Checking for system updates...
[2026-06-27 06:15:20,971.971 INFO    ] 200
[2026-06-27 06:15:20,973.973 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:15:21,005.005 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:15:21,006.006 INFO    ] No update needed
[2026-06-27 06:15:21,008.008 INFO    ] Checking for camera pi updates...
[2026-06-27 06:15:21,028.028 INFO    ] 200
[2026-06-27 06:15:21,029.029 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:15:21,055.055 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:15:21,198.198 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:15:21,199.199 INFO    ] No camera update needed
[2026-06-27 06:15:21,200.200 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:15:21,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:15:21,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:15:21,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:15:23,247.247 INFO    ] ================================================
[2026-06-27 06:15:23,262.262 INFO    ] Launching Daemon at Sat Jun 27 06:15:23 IST 2026
[2026-06-27 06:15:23,272.272 INFO    ] ================================================
[2026-06-27 06:15:23,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:15:23
[2026-06-27 06:15:23,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:15:24,067.067 INFO    ] Initializing speech engine...
[2026-06-27 06:15:24,072.072 INFO    ] 2026-06-27 06:15:24
[2026-06-27 06:15:24,276.276 INFO    ] 2026-06-27 06:15:24
[2026-06-27 06:15:24,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:15:24,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:15:24,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:15:24,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:15:24,699.699 INFO    ] time= 27/06/2026 06:15:24
[2026-06-27 06:15:24,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:15:24,729.729 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:15:24,795.795 INFO    ] No existing commands found in stream
[2026-06-27 06:15:29,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:15:29,807.807 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-27 06:15:33,473.473 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:15:33,475.475 INFO    ] Checking for system updates...
[2026-06-27 06:15:33,496.496 INFO    ] 200
[2026-06-27 06:15:33,497.497 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:15:33,530.530 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:15:33,532.532 INFO    ] No update needed
[2026-06-27 06:15:33,533.533 INFO    ] Checking for camera pi updates...
[2026-06-27 06:15:33,552.552 INFO    ] 200
[2026-06-27 06:15:33,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:15:33,578.578 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:15:33,623.623 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:15:33,624.624 INFO    ] No camera update needed
[2026-06-27 06:15:33,626.626 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:15:33,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:15:33,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:15:33,633.633 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:15:35,674.674 INFO    ] ================================================
[2026-06-27 06:15:35,689.689 INFO    ] Launching Daemon at Sat Jun 27 06:15:35 IST 2026
[2026-06-27 06:15:35,700.700 INFO    ] ================================================
[2026-06-27 06:15:36,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:15:36
[2026-06-27 06:15:36,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:15:36,512.512 INFO    ] Initializing speech engine...
[2026-06-27 06:15:36,517.517 INFO    ] 2026-06-27 06:15:36
[2026-06-27 06:15:36,722.722 INFO    ] 2026-06-27 06:15:36
[2026-06-27 06:15:36,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:15:36,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:15:36,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:15:37,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:15:37,140.140 INFO    ] time= 27/06/2026 06:15:37
[2026-06-27 06:15:37,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:15:37,169.169 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:15:37,237.237 INFO    ] No existing commands found in stream
[2026-06-27 06:15:42,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:15:42,254.254 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-27 06:15:44,933.933 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 06:15:44,935.935 INFO    ] Checking for system updates...
[2026-06-27 06:15:44,958.958 INFO    ] 200
[2026-06-27 06:15:44,959.959 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:15:44,995.995 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:15:44,996.996 INFO    ] No update needed
[2026-06-27 06:15:44,998.998 INFO    ] Checking for camera pi updates...
[2026-06-27 06:15:45,017.017 INFO    ] 200
[2026-06-27 06:15:45,019.019 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:15:45,045.045 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:15:45,081.081 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:15:45,082.082 INFO    ] No camera update needed
[2026-06-27 06:15:45,083.083 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:15:45,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:15:45,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:15:45,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:15:47,130.130 INFO    ] ================================================
[2026-06-27 06:15:47,145.145 INFO    ] Launching Daemon at Sat Jun 27 06:15:47 IST 2026
[2026-06-27 06:15:47,156.156 INFO    ] ================================================
[2026-06-27 06:15:47,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:15:47
[2026-06-27 06:15:47,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:15:47,945.945 INFO    ] Initializing speech engine...
[2026-06-27 06:15:47,953.953 INFO    ] 2026-06-27 06:15:47
[2026-06-27 06:15:48,172.172 INFO    ] 2026-06-27 06:15:48
[2026-06-27 06:15:48,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:15:48,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:15:48,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:15:48,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:15:48,586.586 INFO    ] time= 27/06/2026 06:15:48
[2026-06-27 06:15:48,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:15:48,632.632 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:15:48,740.740 INFO    ] No existing commands found in stream
[2026-06-27 06:15:53,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:15:53,765.765 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-27 06:15:57,556.556 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:15:57,557.557 INFO    ] Checking for system updates...
[2026-06-27 06:15:57,578.578 INFO    ] 200
[2026-06-27 06:15:57,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:15:57,612.612 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:15:57,614.614 INFO    ] No update needed
[2026-06-27 06:15:57,615.615 INFO    ] Checking for camera pi updates...
[2026-06-27 06:15:57,636.636 INFO    ] 200
[2026-06-27 06:15:57,637.637 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:15:57,660.660 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:15:57,700.700 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:15:57,701.701 INFO    ] No camera update needed
[2026-06-27 06:15:57,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:15:57,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:15:57,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:15:57,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:15:59,750.750 INFO    ] ================================================
[2026-06-27 06:15:59,765.765 INFO    ] Launching Daemon at Sat Jun 27 06:15:59 IST 2026
[2026-06-27 06:15:59,776.776 INFO    ] ================================================
[2026-06-27 06:16:00,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:16:00
[2026-06-27 06:16:00,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:16:00,596.596 INFO    ] Initializing speech engine...
[2026-06-27 06:16:00,610.610 INFO    ] 2026-06-27 06:16:00
[2026-06-27 06:16:00,828.828 INFO    ] 2026-06-27 06:16:00
[2026-06-27 06:16:00,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:16:01,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:16:01,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:16:01,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:16:01,255.255 INFO    ] time= 27/06/2026 06:16:01
[2026-06-27 06:16:01,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:16:01,300.300 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:16:01,406.406 INFO    ] No existing commands found in stream
[2026-06-27 06:16:06,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:16:06,418.418 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-27 06:16:06,924.924 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 06:16:06,926.926 INFO    ] Checking for system updates...
[2026-06-27 06:16:06,946.946 INFO    ] 200
[2026-06-27 06:16:06,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:16:06,978.978 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:16:06,980.980 INFO    ] No update needed
[2026-06-27 06:16:06,981.981 INFO    ] Checking for camera pi updates...
[2026-06-27 06:16:07,003.003 INFO    ] 200
[2026-06-27 06:16:07,004.004 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:16:07,029.029 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:16:07,065.065 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:16:07,067.067 INFO    ] No camera update needed
[2026-06-27 06:16:07,068.068 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:16:07,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:16:07,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:16:07,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:16:09,115.115 INFO    ] ================================================
[2026-06-27 06:16:09,130.130 INFO    ] Launching Daemon at Sat Jun 27 06:16:09 IST 2026
[2026-06-27 06:16:09,141.141 INFO    ] ================================================
[2026-06-27 06:16:09,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:16:09
[2026-06-27 06:16:09,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:16:09,938.938 INFO    ] Initializing speech engine...
[2026-06-27 06:16:09,942.942 INFO    ] 2026-06-27 06:16:09
[2026-06-27 06:16:10,171.171 INFO    ] 2026-06-27 06:16:10
[2026-06-27 06:16:10,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:16:10,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:16:10,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:16:10,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:16:10,613.613 INFO    ] time= 27/06/2026 06:16:10
[2026-06-27 06:16:10,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:16:10,653.653 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:16:10,723.723 INFO    ] No existing commands found in stream
[2026-06-27 06:16:15,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:16:15,736.736 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-27 06:16:17,737.737 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:16:17,739.739 INFO    ] Checking for system updates...
[2026-06-27 06:16:17,760.760 INFO    ] 200
[2026-06-27 06:16:17,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:16:17,794.794 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:16:17,796.796 INFO    ] No update needed
[2026-06-27 06:16:17,797.797 INFO    ] Checking for camera pi updates...
[2026-06-27 06:16:17,817.817 INFO    ] 200
[2026-06-27 06:16:17,819.819 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:16:17,842.842 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:16:17,883.883 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:16:17,884.884 INFO    ] No camera update needed
[2026-06-27 06:16:17,886.886 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:16:17,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:16:17,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:16:17,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:16:19,932.932 INFO    ] ================================================
[2026-06-27 06:16:19,948.948 INFO    ] Launching Daemon at Sat Jun 27 06:16:19 IST 2026
[2026-06-27 06:16:19,959.959 INFO    ] ================================================
[2026-06-27 06:16:20,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:16:20
[2026-06-27 06:16:20,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:16:20,775.775 INFO    ] Initializing speech engine...
[2026-06-27 06:16:20,779.779 INFO    ] 2026-06-27 06:16:20
[2026-06-27 06:16:20,988.988 INFO    ] 2026-06-27 06:16:20
[2026-06-27 06:16:21,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:16:21,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:16:21,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:16:21,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:16:21,409.409 INFO    ] time= 27/06/2026 06:16:21
[2026-06-27 06:16:21,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:16:21,439.439 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:16:21,506.506 INFO    ] No existing commands found in stream
[2026-06-27 06:16:26,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:16:26,523.523 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-27 06:16:28,163.163 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:16:28,165.165 INFO    ] Checking for system updates...
[2026-06-27 06:16:28,185.185 INFO    ] 200
[2026-06-27 06:16:28,187.187 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:16:28,217.217 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:16:28,218.218 INFO    ] No update needed
[2026-06-27 06:16:28,220.220 INFO    ] Checking for camera pi updates...
[2026-06-27 06:16:28,240.240 INFO    ] 200
[2026-06-27 06:16:28,241.241 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:16:28,267.267 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:16:28,306.306 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:16:28,308.308 INFO    ] No camera update needed
[2026-06-27 06:16:28,309.309 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:16:28,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:16:28,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:16:28,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:16:30,356.356 INFO    ] ================================================
[2026-06-27 06:16:30,372.372 INFO    ] Launching Daemon at Sat Jun 27 06:16:30 IST 2026
[2026-06-27 06:16:30,383.383 INFO    ] ================================================
[2026-06-27 06:16:30,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:16:30
[2026-06-27 06:16:31,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:16:31,177.177 INFO    ] Initializing speech engine...
[2026-06-27 06:16:31,187.187 INFO    ] 2026-06-27 06:16:31
[2026-06-27 06:16:31,401.401 INFO    ] 2026-06-27 06:16:31
[2026-06-27 06:16:31,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:16:31,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:16:31,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:16:31,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:16:32,996.996 INFO    ] time= 27/06/2026 06:16:32
[2026-06-27 06:16:32,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:16:32,999.999 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:16:33,080.080 INFO    ] No existing commands found in stream
[2026-06-27 06:16:38,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:16:38,089.089 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-27 06:16:42,321.321 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 06:16:42,322.322 INFO    ] Checking for system updates...
[2026-06-27 06:16:42,343.343 INFO    ] 200
[2026-06-27 06:16:42,344.344 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:16:42,375.375 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:16:42,376.376 INFO    ] No update needed
[2026-06-27 06:16:42,378.378 INFO    ] Checking for camera pi updates...
[2026-06-27 06:16:42,402.402 INFO    ] 200
[2026-06-27 06:16:42,404.404 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:16:42,427.427 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:16:42,472.472 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:16:42,474.474 INFO    ] No camera update needed
[2026-06-27 06:16:42,475.475 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:16:42,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:16:42,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:16:42,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:16:44,521.521 INFO    ] ================================================
[2026-06-27 06:16:44,538.538 INFO    ] Launching Daemon at Sat Jun 27 06:16:44 IST 2026
[2026-06-27 06:16:44,550.550 INFO    ] ================================================
[2026-06-27 06:16:44,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:16:44
[2026-06-27 06:16:45,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:16:45,411.411 INFO    ] Initializing speech engine...
[2026-06-27 06:16:45,419.419 INFO    ] 2026-06-27 06:16:45
[2026-06-27 06:16:45,640.640 INFO    ] 2026-06-27 06:16:45
[2026-06-27 06:16:45,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:16:45,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:16:45,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:16:46,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:16:46,085.085 INFO    ] time= 27/06/2026 06:16:46
[2026-06-27 06:16:46,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:16:46,132.132 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:16:46,203.203 INFO    ] No existing commands found in stream
[2026-06-27 06:16:51,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:16:51,217.217 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-27 06:16:52,365.365 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:16:52,367.367 INFO    ] Checking for system updates...
[2026-06-27 06:16:52,389.389 INFO    ] 200
[2026-06-27 06:16:52,391.391 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:16:52,421.421 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:16:52,422.422 INFO    ] No update needed
[2026-06-27 06:16:52,423.423 INFO    ] Checking for camera pi updates...
[2026-06-27 06:16:52,443.443 INFO    ] 200
[2026-06-27 06:16:52,444.444 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:16:52,472.472 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:16:52,518.518 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:16:52,519.519 INFO    ] No camera update needed
[2026-06-27 06:16:52,520.520 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:16:52,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:16:52,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:16:52,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:16:54,566.566 INFO    ] ================================================
[2026-06-27 06:16:54,582.582 INFO    ] Launching Daemon at Sat Jun 27 06:16:54 IST 2026
[2026-06-27 06:16:54,593.593 INFO    ] ================================================
[2026-06-27 06:16:54,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:16:54
[2026-06-27 06:16:55,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:16:55,471.471 INFO    ] Initializing speech engine...
[2026-06-27 06:16:55,476.476 INFO    ] 2026-06-27 06:16:55
[2026-06-27 06:16:55,686.686 INFO    ] 2026-06-27 06:16:55
[2026-06-27 06:16:55,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:16:55,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:16:55,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:16:56,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:16:56,132.132 INFO    ] time= 27/06/2026 06:16:56
[2026-06-27 06:16:56,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:16:56,144.144 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:16:56,212.212 INFO    ] No existing commands found in stream
[2026-06-27 06:17:01,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:17:01,226.226 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-27 06:17:02,380.380 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 06:17:02,382.382 INFO    ] Checking for system updates...
[2026-06-27 06:17:02,409.409 INFO    ] 200
[2026-06-27 06:17:02,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:17:02,450.450 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:17:02,452.452 INFO    ] No update needed
[2026-06-27 06:17:02,454.454 INFO    ] Checking for camera pi updates...
[2026-06-27 06:17:02,478.478 INFO    ] 200
[2026-06-27 06:17:02,479.479 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:17:02,514.514 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:17:02,539.539 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:17:02,541.541 INFO    ] No camera update needed
[2026-06-27 06:17:02,542.542 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:17:02,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:17:02,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:17:02,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:17:04,592.592 INFO    ] ================================================
[2026-06-27 06:17:04,608.608 INFO    ] Launching Daemon at Sat Jun 27 06:17:04 IST 2026
[2026-06-27 06:17:04,620.620 INFO    ] ================================================
[2026-06-27 06:17:04,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:17:04
[2026-06-27 06:17:05,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:17:05,430.430 INFO    ] Initializing speech engine...
[2026-06-27 06:17:05,436.436 INFO    ] 2026-06-27 06:17:05
[2026-06-27 06:17:05,640.640 INFO    ] 2026-06-27 06:17:05
[2026-06-27 06:17:05,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:17:05,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:17:05,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:17:06,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:17:06,092.092 INFO    ] time= 27/06/2026 06:17:06
[2026-06-27 06:17:06,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:17:06,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:17:06,227.227 INFO    ] No existing commands found in stream
[2026-06-27 06:17:11,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:17:11,240.240 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-27 06:17:11,981.981 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:17:11,983.983 INFO    ] Checking for system updates...
[2026-06-27 06:17:12,004.004 INFO    ] 200
[2026-06-27 06:17:12,005.005 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:17:12,038.038 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:17:12,040.040 INFO    ] No update needed
[2026-06-27 06:17:12,041.041 INFO    ] Checking for camera pi updates...
[2026-06-27 06:17:12,061.061 INFO    ] 200
[2026-06-27 06:17:12,063.063 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:17:12,086.086 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:17:12,122.122 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:17:12,123.123 INFO    ] No camera update needed
[2026-06-27 06:17:12,125.125 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:17:12,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:17:12,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:17:12,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:17:14,174.174 INFO    ] ================================================
[2026-06-27 06:17:14,190.190 INFO    ] Launching Daemon at Sat Jun 27 06:17:14 IST 2026
[2026-06-27 06:17:14,201.201 INFO    ] ================================================
[2026-06-27 06:17:14,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:17:14
[2026-06-27 06:17:14,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:17:15,010.010 INFO    ] Initializing speech engine...
[2026-06-27 06:17:15,015.015 INFO    ] 2026-06-27 06:17:15
[2026-06-27 06:17:15,219.219 INFO    ] 2026-06-27 06:17:15
[2026-06-27 06:17:15,254.254 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:17:15,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:17:15,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:17:15,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:17:15,676.676 INFO    ] time= 27/06/2026 06:17:15
[2026-06-27 06:17:15,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:17:15,734.734 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:17:15,837.837 INFO    ] No existing commands found in stream
[2026-06-27 06:17:20,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:17:20,849.849 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-27 06:17:21,337.337 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:17:21,339.339 INFO    ] Checking for system updates...
[2026-06-27 06:17:21,361.361 INFO    ] 200
[2026-06-27 06:17:21,363.363 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:17:21,395.395 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:17:21,396.396 INFO    ] No update needed
[2026-06-27 06:17:21,398.398 INFO    ] Checking for camera pi updates...
[2026-06-27 06:17:21,418.418 INFO    ] 200
[2026-06-27 06:17:21,419.419 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:17:21,445.445 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:17:21,478.478 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:17:21,479.479 INFO    ] No camera update needed
[2026-06-27 06:17:21,481.481 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:17:21,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:17:21,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:17:21,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:17:23,530.530 INFO    ] ================================================
[2026-06-27 06:17:23,545.545 INFO    ] Launching Daemon at Sat Jun 27 06:17:23 IST 2026
[2026-06-27 06:17:23,556.556 INFO    ] ================================================
[2026-06-27 06:17:23,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:17:23
[2026-06-27 06:17:24,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:17:24,394.394 INFO    ] Initializing speech engine...
[2026-06-27 06:17:24,399.399 INFO    ] 2026-06-27 06:17:24
[2026-06-27 06:17:24,602.602 INFO    ] 2026-06-27 06:17:24
[2026-06-27 06:17:24,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:17:24,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:17:24,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:17:24,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:17:25,004.004 INFO    ] time= 27/06/2026 06:17:24
[2026-06-27 06:17:25,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:17:25,079.079 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:17:25,201.201 INFO    ] No existing commands found in stream
[2026-06-27 06:17:30,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:17:30,209.209 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-27 06:17:32,210.210 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 06:17:32,211.211 INFO    ] Checking for system updates...
[2026-06-27 06:17:32,235.235 INFO    ] 200
[2026-06-27 06:17:32,237.237 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:17:32,275.275 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:17:32,277.277 INFO    ] No update needed
[2026-06-27 06:17:32,278.278 INFO    ] Checking for camera pi updates...
[2026-06-27 06:17:32,305.305 INFO    ] 200
[2026-06-27 06:17:32,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:17:32,335.335 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:17:32,464.464 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:17:32,465.465 INFO    ] No camera update needed
[2026-06-27 06:17:32,467.467 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:17:32,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:17:32,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:17:32,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:17:34,518.518 INFO    ] ================================================
[2026-06-27 06:17:34,533.533 INFO    ] Launching Daemon at Sat Jun 27 06:17:34 IST 2026
[2026-06-27 06:17:34,545.545 INFO    ] ================================================
[2026-06-27 06:17:34,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:17:34
[2026-06-27 06:17:35,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:17:35,346.346 INFO    ] Initializing speech engine...
[2026-06-27 06:17:35,351.351 INFO    ] 2026-06-27 06:17:35
[2026-06-27 06:17:35,558.558 INFO    ] 2026-06-27 06:17:35
[2026-06-27 06:17:35,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:17:35,742.742 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:17:35,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:17:35,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:17:35,962.962 INFO    ] time= 27/06/2026 06:17:35
[2026-06-27 06:17:36,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:17:36,006.006 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:17:36,076.076 INFO    ] No existing commands found in stream
[2026-06-27 06:17:41,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:17:41,089.089 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-27 06:17:44,905.905 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:17:44,906.906 INFO    ] Checking for system updates...
[2026-06-27 06:17:44,928.928 INFO    ] 200
[2026-06-27 06:17:44,930.930 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:17:44,963.963 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:17:44,965.965 INFO    ] No update needed
[2026-06-27 06:17:44,966.966 INFO    ] Checking for camera pi updates...
[2026-06-27 06:17:44,986.986 INFO    ] 200
[2026-06-27 06:17:44,987.987 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:17:45,010.010 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:17:45,051.051 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:17:45,052.052 INFO    ] No camera update needed
[2026-06-27 06:17:45,054.054 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:17:45,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:17:45,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:17:45,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:17:47,101.101 INFO    ] ================================================
[2026-06-27 06:17:47,117.117 INFO    ] Launching Daemon at Sat Jun 27 06:17:47 IST 2026
[2026-06-27 06:17:47,128.128 INFO    ] ================================================
[2026-06-27 06:17:47,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:17:47
[2026-06-27 06:17:47,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:17:47,938.938 INFO    ] Initializing speech engine...
[2026-06-27 06:17:47,943.943 INFO    ] 2026-06-27 06:17:47
[2026-06-27 06:17:48,148.148 INFO    ] 2026-06-27 06:17:48
[2026-06-27 06:17:48,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:17:48,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:17:48,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:17:48,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:17:48,576.576 INFO    ] time= 27/06/2026 06:17:48
[2026-06-27 06:17:48,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:17:48,606.606 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:17:48,674.674 INFO    ] No existing commands found in stream
[2026-06-27 06:17:53,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:17:53,689.689 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-27 06:17:55,896.896 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 06:17:55,897.897 INFO    ] Checking for system updates...
[2026-06-27 06:17:55,918.918 INFO    ] 200
[2026-06-27 06:17:55,920.920 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:17:55,952.952 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:17:55,954.954 INFO    ] No update needed
[2026-06-27 06:17:55,955.955 INFO    ] Checking for camera pi updates...
[2026-06-27 06:17:55,976.976 INFO    ] 200
[2026-06-27 06:17:55,977.977 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:17:56,008.008 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:17:56,047.047 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:17:56,048.048 INFO    ] No camera update needed
[2026-06-27 06:17:56,050.050 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:17:56,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:17:56,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:17:56,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:17:58,093.093 INFO    ] ================================================
[2026-06-27 06:17:58,102.102 INFO    ] Launching Daemon at Sat Jun 27 06:17:58 IST 2026
[2026-06-27 06:17:58,108.108 INFO    ] ================================================
[2026-06-27 06:17:58,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:17:58
[2026-06-27 06:17:58,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:17:58,901.901 INFO    ] Initializing speech engine...
[2026-06-27 06:17:58,907.907 INFO    ] 2026-06-27 06:17:58
[2026-06-27 06:17:59,132.132 INFO    ] 2026-06-27 06:17:59
[2026-06-27 06:17:59,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:17:59,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:17:59,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:17:59,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:17:59,596.596 INFO    ] time= 27/06/2026 06:17:59
[2026-06-27 06:17:59,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:17:59,660.660 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:17:59,738.738 INFO    ] No existing commands found in stream
[2026-06-27 06:18:04,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:18:04,751.751 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-27 06:18:08,051.051 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 06:18:08,052.052 INFO    ] Checking for system updates...
[2026-06-27 06:18:08,073.073 INFO    ] 200
[2026-06-27 06:18:08,075.075 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:18:08,107.107 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:18:08,108.108 INFO    ] No update needed
[2026-06-27 06:18:08,109.109 INFO    ] Checking for camera pi updates...
[2026-06-27 06:18:08,130.130 INFO    ] 200
[2026-06-27 06:18:08,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:18:08,158.158 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:18:08,210.210 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:18:08,211.211 INFO    ] No camera update needed
[2026-06-27 06:18:08,212.212 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:18:08,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:18:08,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:18:08,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:18:10,258.258 INFO    ] ================================================
[2026-06-27 06:18:10,274.274 INFO    ] Launching Daemon at Sat Jun 27 06:18:10 IST 2026
[2026-06-27 06:18:10,286.286 INFO    ] ================================================
[2026-06-27 06:18:10,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:18:10
[2026-06-27 06:18:10,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:18:11,097.097 INFO    ] Initializing speech engine...
[2026-06-27 06:18:11,102.102 INFO    ] 2026-06-27 06:18:11
[2026-06-27 06:18:11,307.307 INFO    ] 2026-06-27 06:18:11
[2026-06-27 06:18:11,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:18:11,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:18:11,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:18:11,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:18:11,712.712 INFO    ] time= 27/06/2026 06:18:11
[2026-06-27 06:18:11,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:18:11,751.751 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:18:11,821.821 INFO    ] No existing commands found in stream
[2026-06-27 06:18:16,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:18:16,834.834 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-27 06:18:20,444.444 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:18:20,446.446 INFO    ] Checking for system updates...
[2026-06-27 06:18:20,467.467 INFO    ] 200
[2026-06-27 06:18:20,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:18:20,500.500 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:18:20,501.501 INFO    ] No update needed
[2026-06-27 06:18:20,503.503 INFO    ] Checking for camera pi updates...
[2026-06-27 06:18:20,523.523 INFO    ] 200
[2026-06-27 06:18:20,524.524 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:18:20,549.549 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:18:20,588.588 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:18:20,589.589 INFO    ] No camera update needed
[2026-06-27 06:18:20,590.590 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:18:20,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:18:20,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:18:20,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:18:22,638.638 INFO    ] ================================================
[2026-06-27 06:18:22,654.654 INFO    ] Launching Daemon at Sat Jun 27 06:18:22 IST 2026
[2026-06-27 06:18:22,665.665 INFO    ] ================================================
[2026-06-27 06:18:23,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:18:23
[2026-06-27 06:18:23,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:18:23,525.525 INFO    ] Initializing speech engine...
[2026-06-27 06:18:23,534.534 INFO    ] 2026-06-27 06:18:23
[2026-06-27 06:18:23,749.749 INFO    ] 2026-06-27 06:18:23
[2026-06-27 06:18:23,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:18:23,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:18:23,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:18:24,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:18:24,179.179 INFO    ] time= 27/06/2026 06:18:24
[2026-06-27 06:18:24,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:18:24,207.207 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:18:24,274.274 INFO    ] No existing commands found in stream
[2026-06-27 06:18:29,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:18:29,286.286 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-27 06:18:31,154.154 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:18:31,156.156 INFO    ] Checking for system updates...
[2026-06-27 06:18:31,183.183 INFO    ] 200
[2026-06-27 06:18:31,187.187 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:18:31,234.234 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:18:31,236.236 INFO    ] No update needed
[2026-06-27 06:18:31,238.238 INFO    ] Checking for camera pi updates...
[2026-06-27 06:18:31,260.260 INFO    ] 200
[2026-06-27 06:18:31,262.262 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:18:31,289.289 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:18:31,331.331 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:18:31,332.332 INFO    ] No camera update needed
[2026-06-27 06:18:31,334.334 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:18:31,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:18:31,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:18:31,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:18:33,377.377 INFO    ] ================================================
[2026-06-27 06:18:33,401.401 INFO    ] Launching Daemon at Sat Jun 27 06:18:33 IST 2026
[2026-06-27 06:18:33,414.414 INFO    ] ================================================
[2026-06-27 06:18:33,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:18:33
[2026-06-27 06:18:34,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:18:34,283.283 INFO    ] Initializing speech engine...
[2026-06-27 06:18:34,290.290 INFO    ] 2026-06-27 06:18:34
[2026-06-27 06:18:34,499.499 INFO    ] 2026-06-27 06:18:34
[2026-06-27 06:18:34,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:18:34,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:18:34,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:18:34,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:18:34,922.922 INFO    ] time= 27/06/2026 06:18:34
[2026-06-27 06:18:34,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:18:34,951.951 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:18:35,019.019 INFO    ] No existing commands found in stream
[2026-06-27 06:18:40,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:18:40,031.031 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-27 06:18:43,702.702 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 06:18:43,704.704 INFO    ] Checking for system updates...
[2026-06-27 06:18:43,727.727 INFO    ] 200
[2026-06-27 06:18:43,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:18:43,762.762 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:18:43,764.764 INFO    ] No update needed
[2026-06-27 06:18:43,765.765 INFO    ] Checking for camera pi updates...
[2026-06-27 06:18:43,787.787 INFO    ] 200
[2026-06-27 06:18:43,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:18:43,812.812 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:18:43,847.847 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:18:43,849.849 INFO    ] No camera update needed
[2026-06-27 06:18:43,850.850 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:18:43,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:18:43,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:18:43,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:18:45,898.898 INFO    ] ================================================
[2026-06-27 06:18:45,913.913 INFO    ] Launching Daemon at Sat Jun 27 06:18:45 IST 2026
[2026-06-27 06:18:45,924.924 INFO    ] ================================================
[2026-06-27 06:18:46,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:18:46
[2026-06-27 06:18:46,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:18:46,765.765 INFO    ] Initializing speech engine...
[2026-06-27 06:18:46,770.770 INFO    ] 2026-06-27 06:18:46
[2026-06-27 06:18:46,973.973 INFO    ] 2026-06-27 06:18:46
[2026-06-27 06:18:47,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:18:47,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:18:47,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:18:47,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:18:47,388.388 INFO    ] time= 27/06/2026 06:18:47
[2026-06-27 06:18:47,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:18:47,421.421 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:18:47,488.488 INFO    ] No existing commands found in stream
[2026-06-27 06:18:52,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:18:52,499.499 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-27 06:18:54,130.130 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 06:18:54,132.132 INFO    ] Checking for system updates...
[2026-06-27 06:18:54,153.153 INFO    ] 200
[2026-06-27 06:18:54,154.154 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:18:54,187.187 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:18:54,188.188 INFO    ] No update needed
[2026-06-27 06:18:54,190.190 INFO    ] Checking for camera pi updates...
[2026-06-27 06:18:54,209.209 INFO    ] 200
[2026-06-27 06:18:54,211.211 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:18:54,237.237 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:18:54,263.263 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:18:54,264.264 INFO    ] No camera update needed
[2026-06-27 06:18:54,266.266 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:18:54,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:18:54,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:18:54,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:18:56,312.312 INFO    ] ================================================
[2026-06-27 06:18:56,327.327 INFO    ] Launching Daemon at Sat Jun 27 06:18:56 IST 2026
[2026-06-27 06:18:56,338.338 INFO    ] ================================================
[2026-06-27 06:18:56,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:18:56
[2026-06-27 06:18:57,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:18:57,161.161 INFO    ] Initializing speech engine...
[2026-06-27 06:18:57,166.166 INFO    ] 2026-06-27 06:18:57
[2026-06-27 06:18:57,383.383 INFO    ] 2026-06-27 06:18:57
[2026-06-27 06:18:57,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:18:57,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:18:57,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:18:57,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:18:57,782.782 INFO    ] time= 27/06/2026 06:18:57
[2026-06-27 06:18:57,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:18:57,868.868 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:18:57,967.967 INFO    ] No existing commands found in stream
[2026-06-27 06:19:02,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:19:02,976.976 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-27 06:19:04,436.436 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 06:19:04,437.437 INFO    ] Checking for system updates...
[2026-06-27 06:19:04,458.458 INFO    ] 200
[2026-06-27 06:19:04,459.459 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:19:04,491.491 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:19:04,492.492 INFO    ] No update needed
[2026-06-27 06:19:04,493.493 INFO    ] Checking for camera pi updates...
[2026-06-27 06:19:04,514.514 INFO    ] 200
[2026-06-27 06:19:04,515.515 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:19:04,540.540 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:19:04,579.579 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:19:04,581.581 INFO    ] No camera update needed
[2026-06-27 06:19:04,582.582 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:19:04,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:19:04,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:19:04,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:19:06,628.628 INFO    ] ================================================
[2026-06-27 06:19:06,645.645 INFO    ] Launching Daemon at Sat Jun 27 06:19:06 IST 2026
[2026-06-27 06:19:06,655.655 INFO    ] ================================================
[2026-06-27 06:19:07,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:19:07
[2026-06-27 06:19:07,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:19:07,511.511 INFO    ] Initializing speech engine...
[2026-06-27 06:19:07,521.521 INFO    ] 2026-06-27 06:19:07
[2026-06-27 06:19:07,730.730 INFO    ] 2026-06-27 06:19:07
[2026-06-27 06:19:07,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:19:07,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:19:07,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:19:08,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:19:08,156.156 INFO    ] time= 27/06/2026 06:19:08
[2026-06-27 06:19:08,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:19:08,197.197 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:19:08,303.303 INFO    ] No existing commands found in stream
[2026-06-27 06:19:13,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:19:13,318.318 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-27 06:19:17,381.381 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 06:19:17,382.382 INFO    ] Checking for system updates...
[2026-06-27 06:19:17,404.404 INFO    ] 200
[2026-06-27 06:19:17,406.406 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:19:17,438.438 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:19:17,440.440 INFO    ] No update needed
[2026-06-27 06:19:17,441.441 INFO    ] Checking for camera pi updates...
[2026-06-27 06:19:17,466.466 INFO    ] 200
[2026-06-27 06:19:17,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:19:17,493.493 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:19:17,542.542 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:19:17,544.544 INFO    ] No camera update needed
[2026-06-27 06:19:17,545.545 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:19:17,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:19:17,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:19:17,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:19:19,594.594 INFO    ] ================================================
[2026-06-27 06:19:19,609.609 INFO    ] Launching Daemon at Sat Jun 27 06:19:19 IST 2026
[2026-06-27 06:19:19,620.620 INFO    ] ================================================
[2026-06-27 06:19:19,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:19:19
[2026-06-27 06:19:20,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:19:20,439.439 INFO    ] Initializing speech engine...
[2026-06-27 06:19:20,449.449 INFO    ] 2026-06-27 06:19:20
[2026-06-27 06:19:20,652.652 INFO    ] 2026-06-27 06:19:20
[2026-06-27 06:19:20,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:19:20,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:19:20,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:19:21,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:19:21,105.105 INFO    ] time= 27/06/2026 06:19:21
[2026-06-27 06:19:21,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:19:21,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:19:21,263.263 INFO    ] No existing commands found in stream
[2026-06-27 06:19:26,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:19:26,280.280 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-27 06:19:28,386.386 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 06:19:28,387.387 INFO    ] Checking for system updates...
[2026-06-27 06:19:28,409.409 INFO    ] 200
[2026-06-27 06:19:28,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:19:28,441.441 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:19:28,443.443 INFO    ] No update needed
[2026-06-27 06:19:28,444.444 INFO    ] Checking for camera pi updates...
[2026-06-27 06:19:28,465.465 INFO    ] 200
[2026-06-27 06:19:28,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:19:28,490.490 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:19:28,526.526 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:19:28,528.528 INFO    ] No camera update needed
[2026-06-27 06:19:28,529.529 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:19:28,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:19:28,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:19:28,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:19:30,575.575 INFO    ] ================================================
[2026-06-27 06:19:30,591.591 INFO    ] Launching Daemon at Sat Jun 27 06:19:30 IST 2026
[2026-06-27 06:19:30,602.602 INFO    ] ================================================
[2026-06-27 06:19:30,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:19:30
[2026-06-27 06:19:31,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:19:31,385.385 INFO    ] Initializing speech engine...
[2026-06-27 06:19:31,389.389 INFO    ] 2026-06-27 06:19:31
[2026-06-27 06:19:31,616.616 INFO    ] 2026-06-27 06:19:31
[2026-06-27 06:19:31,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:19:31,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:19:31,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:19:32,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:19:32,100.100 INFO    ] time= 27/06/2026 06:19:32
[2026-06-27 06:19:32,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:19:32,173.173 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:19:32,232.232 INFO    ] No existing commands found in stream
[2026-06-27 06:19:37,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:19:37,246.246 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-27 06:19:40,130.130 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 06:19:40,132.132 INFO    ] Checking for system updates...
[2026-06-27 06:19:40,154.154 INFO    ] 200
[2026-06-27 06:19:40,156.156 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:19:40,186.186 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:19:40,187.187 INFO    ] No update needed
[2026-06-27 06:19:40,189.189 INFO    ] Checking for camera pi updates...
[2026-06-27 06:19:40,209.209 INFO    ] 200
[2026-06-27 06:19:40,211.211 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:19:40,234.234 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:19:40,375.375 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:19:40,377.377 INFO    ] No camera update needed
[2026-06-27 06:19:40,378.378 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:19:40,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:19:40,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:19:40,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:19:42,424.424 INFO    ] ================================================
[2026-06-27 06:19:42,440.440 INFO    ] Launching Daemon at Sat Jun 27 06:19:42 IST 2026
[2026-06-27 06:19:42,451.451 INFO    ] ================================================
[2026-06-27 06:19:42,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:19:42
[2026-06-27 06:19:43,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:19:43,245.245 INFO    ] Initializing speech engine...
[2026-06-27 06:19:43,250.250 INFO    ] 2026-06-27 06:19:43
[2026-06-27 06:19:43,455.455 INFO    ] 2026-06-27 06:19:43
[2026-06-27 06:19:43,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:19:43,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:19:43,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:19:43,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:19:43,874.874 INFO    ] time= 27/06/2026 06:19:43
[2026-06-27 06:19:43,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:19:43,903.903 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:19:43,969.969 INFO    ] No existing commands found in stream
[2026-06-27 06:19:48,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:19:48,982.982 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-27 06:19:50,673.673 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 06:19:50,675.675 INFO    ] Checking for system updates...
[2026-06-27 06:19:50,695.695 INFO    ] 200
[2026-06-27 06:19:50,697.697 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:19:50,731.731 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:19:50,732.732 INFO    ] No update needed
[2026-06-27 06:19:50,733.733 INFO    ] Checking for camera pi updates...
[2026-06-27 06:19:50,753.753 INFO    ] 200
[2026-06-27 06:19:50,755.755 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:19:50,780.780 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:19:50,826.826 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:19:50,827.827 INFO    ] No camera update needed
[2026-06-27 06:19:50,828.828 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:19:50,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:19:50,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:19:50,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:19:52,876.876 INFO    ] ================================================
[2026-06-27 06:19:52,892.892 INFO    ] Launching Daemon at Sat Jun 27 06:19:52 IST 2026
[2026-06-27 06:19:52,903.903 INFO    ] ================================================
[2026-06-27 06:19:53,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:19:53
[2026-06-27 06:19:53,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:19:53,720.720 INFO    ] Initializing speech engine...
[2026-06-27 06:19:53,731.731 INFO    ] 2026-06-27 06:19:53
[2026-06-27 06:19:53,936.936 INFO    ] 2026-06-27 06:19:53
[2026-06-27 06:19:53,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:19:54,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:19:54,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:19:54,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:19:54,357.357 INFO    ] time= 27/06/2026 06:19:54
[2026-06-27 06:19:54,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:19:54,384.384 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:19:54,450.450 INFO    ] No existing commands found in stream
[2026-06-27 06:19:59,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:19:59,467.467 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-27 06:20:07,020.020 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:20:07,022.022 INFO    ] Checking for system updates...
[2026-06-27 06:20:07,046.046 INFO    ] 200
[2026-06-27 06:20:07,048.048 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:20:07,078.078 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:20:07,080.080 INFO    ] No update needed
[2026-06-27 06:20:07,081.081 INFO    ] Checking for camera pi updates...
[2026-06-27 06:20:07,102.102 INFO    ] 200
[2026-06-27 06:20:07,103.103 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:20:07,130.130 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:20:07,170.170 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:20:07,171.171 INFO    ] No camera update needed
[2026-06-27 06:20:07,173.173 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:20:07,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:20:07,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:20:07,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:20:09,226.226 INFO    ] ================================================
[2026-06-27 06:20:09,242.242 INFO    ] Launching Daemon at Sat Jun 27 06:20:09 IST 2026
[2026-06-27 06:20:09,253.253 INFO    ] ================================================
[2026-06-27 06:20:09,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:20:09
[2026-06-27 06:20:09,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:20:10,073.073 INFO    ] Initializing speech engine...
[2026-06-27 06:20:10,078.078 INFO    ] 2026-06-27 06:20:10
[2026-06-27 06:20:10,301.301 INFO    ] 2026-06-27 06:20:10
[2026-06-27 06:20:10,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:20:10,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:20:10,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:20:10,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:20:10,728.728 INFO    ] time= 27/06/2026 06:20:10
[2026-06-27 06:20:10,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:20:10,759.759 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:20:10,828.828 INFO    ] No existing commands found in stream
[2026-06-27 06:20:15,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:20:15,840.840 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-27 06:20:17,299.299 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 06:20:17,301.301 INFO    ] Checking for system updates...
[2026-06-27 06:20:17,322.322 INFO    ] 200
[2026-06-27 06:20:17,323.323 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:20:17,358.358 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:20:17,359.359 INFO    ] No update needed
[2026-06-27 06:20:17,361.361 INFO    ] Checking for camera pi updates...
[2026-06-27 06:20:17,380.380 INFO    ] 200
[2026-06-27 06:20:17,381.381 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:20:17,406.406 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:20:17,452.452 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:20:17,454.454 INFO    ] No camera update needed
[2026-06-27 06:20:17,455.455 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:20:17,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:20:17,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:20:17,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:20:19,501.501 INFO    ] ================================================
[2026-06-27 06:20:19,517.517 INFO    ] Launching Daemon at Sat Jun 27 06:20:19 IST 2026
[2026-06-27 06:20:19,528.528 INFO    ] ================================================
[2026-06-27 06:20:19,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:20:19
[2026-06-27 06:20:20,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:20:20,296.296 INFO    ] Initializing speech engine...
[2026-06-27 06:20:20,304.304 INFO    ] 2026-06-27 06:20:20
[2026-06-27 06:20:20,516.516 INFO    ] 2026-06-27 06:20:20
[2026-06-27 06:20:20,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:20:20,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:20:20,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:20:20,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:20:20,925.925 INFO    ] time= 27/06/2026 06:20:20
[2026-06-27 06:20:20,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:20:20,963.963 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:20:21,029.029 INFO    ] No existing commands found in stream
[2026-06-27 06:20:26,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:20:26,042.042 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-27 06:20:27,641.641 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:20:27,642.642 INFO    ] Checking for system updates...
[2026-06-27 06:20:27,663.663 INFO    ] 200
[2026-06-27 06:20:27,664.664 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:20:27,695.695 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:20:27,697.697 INFO    ] No update needed
[2026-06-27 06:20:27,698.698 INFO    ] Checking for camera pi updates...
[2026-06-27 06:20:27,717.717 INFO    ] 200
[2026-06-27 06:20:27,719.719 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:20:27,744.744 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:20:27,792.792 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:20:27,793.793 INFO    ] No camera update needed
[2026-06-27 06:20:27,794.794 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:20:27,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:20:27,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:20:27,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:20:29,842.842 INFO    ] ================================================
[2026-06-27 06:20:29,857.857 INFO    ] Launching Daemon at Sat Jun 27 06:20:29 IST 2026
[2026-06-27 06:20:29,868.868 INFO    ] ================================================
[2026-06-27 06:20:30,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:20:30
[2026-06-27 06:20:30,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:20:30,689.689 INFO    ] Initializing speech engine...
[2026-06-27 06:20:30,693.693 INFO    ] 2026-06-27 06:20:30
[2026-06-27 06:20:30,925.925 INFO    ] 2026-06-27 06:20:30
[2026-06-27 06:20:30,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:20:31,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:20:31,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:20:31,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:20:31,293.293 INFO    ] time= 27/06/2026 06:20:31
[2026-06-27 06:20:31,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:20:31,378.378 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:20:31,482.482 INFO    ] No existing commands found in stream
[2026-06-27 06:20:36,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:20:36,496.496 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-27 06:20:40,251.251 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 06:20:40,253.253 INFO    ] Checking for system updates...
[2026-06-27 06:20:40,275.275 INFO    ] 200
[2026-06-27 06:20:40,277.277 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:20:40,309.309 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:20:40,310.310 INFO    ] No update needed
[2026-06-27 06:20:40,311.311 INFO    ] Checking for camera pi updates...
[2026-06-27 06:20:40,331.331 INFO    ] 200
[2026-06-27 06:20:40,332.332 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:20:40,359.359 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:20:40,407.407 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:20:40,408.408 INFO    ] No camera update needed
[2026-06-27 06:20:40,409.409 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:20:40,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:20:40,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:20:40,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:20:42,456.456 INFO    ] ================================================
[2026-06-27 06:20:42,471.471 INFO    ] Launching Daemon at Sat Jun 27 06:20:42 IST 2026
[2026-06-27 06:20:42,482.482 INFO    ] ================================================
[2026-06-27 06:20:42,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:20:42
[2026-06-27 06:20:43,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:20:43,264.264 INFO    ] Initializing speech engine...
[2026-06-27 06:20:43,278.278 INFO    ] 2026-06-27 06:20:43
[2026-06-27 06:20:43,484.484 INFO    ] 2026-06-27 06:20:43
[2026-06-27 06:20:43,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:20:43,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:20:43,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:20:43,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:20:43,908.908 INFO    ] time= 27/06/2026 06:20:43
[2026-06-27 06:20:43,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:20:43,937.937 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:20:44,054.054 INFO    ] No existing commands found in stream
[2026-06-27 06:20:49,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:20:49,067.067 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-27 06:20:50,656.656 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 06:20:50,657.657 INFO    ] Checking for system updates...
[2026-06-27 06:20:50,679.679 INFO    ] 200
[2026-06-27 06:20:50,681.681 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:20:50,715.715 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:20:50,716.716 INFO    ] No update needed
[2026-06-27 06:20:50,718.718 INFO    ] Checking for camera pi updates...
[2026-06-27 06:20:50,738.738 INFO    ] 200
[2026-06-27 06:20:50,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:20:50,764.764 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:20:50,804.804 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:20:50,806.806 INFO    ] No camera update needed
[2026-06-27 06:20:50,807.807 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:20:50,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:20:50,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:20:50,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:20:52,855.855 INFO    ] ================================================
[2026-06-27 06:20:52,871.871 INFO    ] Launching Daemon at Sat Jun 27 06:20:52 IST 2026
[2026-06-27 06:20:52,882.882 INFO    ] ================================================
[2026-06-27 06:20:53,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:20:53
[2026-06-27 06:20:53,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:20:53,703.703 INFO    ] Initializing speech engine...
[2026-06-27 06:20:53,708.708 INFO    ] 2026-06-27 06:20:53
[2026-06-27 06:20:53,911.911 INFO    ] 2026-06-27 06:20:53
[2026-06-27 06:20:53,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:20:54,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:20:54,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:20:54,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:20:54,350.350 INFO    ] time= 27/06/2026 06:20:54
[2026-06-27 06:20:54,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:20:54,396.396 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:20:54,471.471 INFO    ] No existing commands found in stream
[2026-06-27 06:20:59,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:20:59,484.484 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-27 06:21:00,617.617 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 06:21:00,618.618 INFO    ] Checking for system updates...
[2026-06-27 06:21:00,639.639 INFO    ] 200
[2026-06-27 06:21:00,640.640 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:21:00,674.674 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:21:00,675.675 INFO    ] No update needed
[2026-06-27 06:21:00,676.676 INFO    ] Checking for camera pi updates...
[2026-06-27 06:21:00,698.698 INFO    ] 200
[2026-06-27 06:21:00,699.699 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:21:00,724.724 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:21:00,765.765 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:21:00,766.766 INFO    ] No camera update needed
[2026-06-27 06:21:00,767.767 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:21:00,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:21:00,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:21:00,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:21:02,800.800 INFO    ] ================================================
[2026-06-27 06:21:02,808.808 INFO    ] Launching Daemon at Sat Jun 27 06:21:02 IST 2026
[2026-06-27 06:21:02,815.815 INFO    ] ================================================
[2026-06-27 06:21:03,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:21:03
[2026-06-27 06:21:03,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:21:03,650.650 INFO    ] Initializing speech engine...
[2026-06-27 06:21:03,658.658 INFO    ] 2026-06-27 06:21:03
[2026-06-27 06:21:03,869.869 INFO    ] 2026-06-27 06:21:03
[2026-06-27 06:21:03,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:21:04,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:21:04,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:21:04,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:21:04,291.291 INFO    ] time= 27/06/2026 06:21:04
[2026-06-27 06:21:04,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:21:04,322.322 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:21:04,394.394 INFO    ] No existing commands found in stream
[2026-06-27 06:21:09,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:21:09,407.407 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-27 06:21:12,634.634 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 06:21:12,635.635 INFO    ] Checking for system updates...
[2026-06-27 06:21:12,657.657 INFO    ] 200
[2026-06-27 06:21:12,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:21:12,688.688 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:21:12,690.690 INFO    ] No update needed
[2026-06-27 06:21:12,691.691 INFO    ] Checking for camera pi updates...
[2026-06-27 06:21:12,710.710 INFO    ] 200
[2026-06-27 06:21:12,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:21:12,736.736 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:21:12,762.762 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:21:12,763.763 INFO    ] No camera update needed
[2026-06-27 06:21:12,765.765 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:21:12,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:21:12,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:21:12,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:21:14,813.813 INFO    ] ================================================
[2026-06-27 06:21:14,828.828 INFO    ] Launching Daemon at Sat Jun 27 06:21:14 IST 2026
[2026-06-27 06:21:14,839.839 INFO    ] ================================================
[2026-06-27 06:21:15,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:21:15
[2026-06-27 06:21:15,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:21:15,671.671 INFO    ] Initializing speech engine...
[2026-06-27 06:21:15,683.683 INFO    ] 2026-06-27 06:21:15
[2026-06-27 06:21:15,899.899 INFO    ] 2026-06-27 06:21:15
[2026-06-27 06:21:15,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:21:16,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:21:16,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:21:16,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:21:16,308.308 INFO    ] time= 27/06/2026 06:21:16
[2026-06-27 06:21:16,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:21:16,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:21:16,449.449 INFO    ] No existing commands found in stream
[2026-06-27 06:21:21,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:21:21,465.465 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-27 06:21:22,440.440 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 06:21:22,441.441 INFO    ] Checking for system updates...
[2026-06-27 06:21:22,464.464 INFO    ] 200
[2026-06-27 06:21:22,465.465 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:21:22,500.500 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:21:22,501.501 INFO    ] No update needed
[2026-06-27 06:21:22,503.503 INFO    ] Checking for camera pi updates...
[2026-06-27 06:21:22,526.526 INFO    ] 200
[2026-06-27 06:21:22,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:21:22,553.553 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:21:22,593.593 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:21:22,594.594 INFO    ] No camera update needed
[2026-06-27 06:21:22,596.596 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:21:22,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:21:22,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:21:22,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:21:24,642.642 INFO    ] ================================================
[2026-06-27 06:21:24,657.657 INFO    ] Launching Daemon at Sat Jun 27 06:21:24 IST 2026
[2026-06-27 06:21:24,667.667 INFO    ] ================================================
[2026-06-27 06:21:25,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:21:25
[2026-06-27 06:21:25,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:21:25,477.477 INFO    ] Initializing speech engine...
[2026-06-27 06:21:25,490.490 INFO    ] 2026-06-27 06:21:25
[2026-06-27 06:21:25,705.705 INFO    ] 2026-06-27 06:21:25
[2026-06-27 06:21:25,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:21:25,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:21:25,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:21:26,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:21:26,138.138 INFO    ] time= 27/06/2026 06:21:26
[2026-06-27 06:21:26,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:21:26,183.183 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:21:26,254.254 INFO    ] No existing commands found in stream
[2026-06-27 06:21:31,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:21:31,264.264 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-27 06:21:32,724.724 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:21:32,726.726 INFO    ] Checking for system updates...
[2026-06-27 06:21:32,748.748 INFO    ] 200
[2026-06-27 06:21:32,749.749 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:21:32,779.779 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:21:32,780.780 INFO    ] No update needed
[2026-06-27 06:21:32,782.782 INFO    ] Checking for camera pi updates...
[2026-06-27 06:21:32,805.805 INFO    ] 200
[2026-06-27 06:21:32,806.806 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:21:32,830.830 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:21:32,852.852 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:21:32,853.853 INFO    ] No camera update needed
[2026-06-27 06:21:32,855.855 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:21:32,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:21:32,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:21:32,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:21:34,902.902 INFO    ] ================================================
[2026-06-27 06:21:34,917.917 INFO    ] Launching Daemon at Sat Jun 27 06:21:34 IST 2026
[2026-06-27 06:21:34,927.927 INFO    ] ================================================
[2026-06-27 06:21:35,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:21:35
[2026-06-27 06:21:35,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:21:35,708.708 INFO    ] Initializing speech engine...
[2026-06-27 06:21:35,715.715 INFO    ] 2026-06-27 06:21:35
[2026-06-27 06:21:35,931.931 INFO    ] 2026-06-27 06:21:35
[2026-06-27 06:21:35,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:21:36,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:21:36,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:21:36,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:21:36,359.359 INFO    ] time= 27/06/2026 06:21:36
[2026-06-27 06:21:36,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:21:36,388.388 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:21:36,454.454 INFO    ] No existing commands found in stream
[2026-06-27 06:21:41,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:21:41,468.468 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-27 06:21:41,883.883 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 06:21:41,885.885 INFO    ] Checking for system updates...
[2026-06-27 06:21:41,906.906 INFO    ] 200
[2026-06-27 06:21:41,907.907 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:21:41,939.939 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:21:41,941.941 INFO    ] No update needed
[2026-06-27 06:21:41,942.942 INFO    ] Checking for camera pi updates...
[2026-06-27 06:21:41,963.963 INFO    ] 200
[2026-06-27 06:21:41,964.964 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:21:41,989.989 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:21:42,034.034 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:21:42,035.035 INFO    ] No camera update needed
[2026-06-27 06:21:42,037.037 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:21:42,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:21:42,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:21:42,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:21:44,084.084 INFO    ] ================================================
[2026-06-27 06:21:44,100.100 INFO    ] Launching Daemon at Sat Jun 27 06:21:44 IST 2026
[2026-06-27 06:21:44,112.112 INFO    ] ================================================
[2026-06-27 06:21:44,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:21:44
[2026-06-27 06:21:44,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:21:44,907.907 INFO    ] Initializing speech engine...
[2026-06-27 06:21:44,912.912 INFO    ] 2026-06-27 06:21:44
[2026-06-27 06:21:45,118.118 INFO    ] 2026-06-27 06:21:45
[2026-06-27 06:21:45,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:21:45,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:21:45,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:21:45,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:21:45,557.557 INFO    ] time= 27/06/2026 06:21:45
[2026-06-27 06:21:45,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:21:45,568.568 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:21:45,635.635 INFO    ] No existing commands found in stream
[2026-06-27 06:21:50,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:21:50,647.647 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-27 06:21:53,789.789 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 06:21:53,791.791 INFO    ] Checking for system updates...
[2026-06-27 06:21:53,813.813 INFO    ] 200
[2026-06-27 06:21:53,815.815 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:21:53,854.854 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:21:53,855.855 INFO    ] No update needed
[2026-06-27 06:21:53,856.856 INFO    ] Checking for camera pi updates...
[2026-06-27 06:21:53,879.879 INFO    ] 200
[2026-06-27 06:21:53,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:21:53,906.906 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:21:54,039.039 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:21:54,040.040 INFO    ] No camera update needed
[2026-06-27 06:21:54,042.042 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:21:54,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:21:54,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:21:54,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:21:56,088.088 INFO    ] ================================================
[2026-06-27 06:21:56,104.104 INFO    ] Launching Daemon at Sat Jun 27 06:21:56 IST 2026
[2026-06-27 06:21:56,115.115 INFO    ] ================================================
[2026-06-27 06:21:56,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:21:56
[2026-06-27 06:21:56,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:21:56,915.915 INFO    ] Initializing speech engine...
[2026-06-27 06:21:56,920.920 INFO    ] 2026-06-27 06:21:56
[2026-06-27 06:21:57,123.123 INFO    ] 2026-06-27 06:21:57
[2026-06-27 06:21:57,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:21:57,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:21:57,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:21:57,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:21:57,534.534 INFO    ] time= 27/06/2026 06:21:57
[2026-06-27 06:21:57,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:21:57,572.572 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:21:57,639.639 INFO    ] No existing commands found in stream
[2026-06-27 06:22:02,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:22:02,647.647 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-27 06:22:03,327.327 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 06:22:03,330.330 INFO    ] Checking for system updates...
[2026-06-27 06:22:03,367.367 INFO    ] 200
[2026-06-27 06:22:03,369.369 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:22:03,426.426 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:22:03,428.428 INFO    ] No update needed
[2026-06-27 06:22:03,431.431 INFO    ] Checking for camera pi updates...
[2026-06-27 06:22:03,465.465 INFO    ] 200
[2026-06-27 06:22:03,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:22:03,513.513 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:22:03,550.550 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:22:03,551.551 INFO    ] No camera update needed
[2026-06-27 06:22:03,553.553 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:22:03,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:22:03,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:22:03,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:22:05,598.598 INFO    ] ================================================
[2026-06-27 06:22:05,613.613 INFO    ] Launching Daemon at Sat Jun 27 06:22:05 IST 2026
[2026-06-27 06:22:05,624.624 INFO    ] ================================================
[2026-06-27 06:22:06,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:22:06
[2026-06-27 06:22:06,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:22:06,466.466 INFO    ] Initializing speech engine...
[2026-06-27 06:22:06,474.474 INFO    ] 2026-06-27 06:22:06
[2026-06-27 06:22:06,685.685 INFO    ] 2026-06-27 06:22:06
[2026-06-27 06:22:06,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:22:06,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:22:06,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:22:07,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:22:07,105.105 INFO    ] time= 27/06/2026 06:22:07
[2026-06-27 06:22:07,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:22:07,134.134 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:22:07,201.201 INFO    ] No existing commands found in stream
[2026-06-27 06:22:12,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:22:12,213.213 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-27 06:22:13,949.949 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 06:22:13,951.951 INFO    ] Checking for system updates...
[2026-06-27 06:22:13,973.973 INFO    ] 200
[2026-06-27 06:22:13,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:22:14,005.005 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:22:14,007.007 INFO    ] No update needed
[2026-06-27 06:22:14,008.008 INFO    ] Checking for camera pi updates...
[2026-06-27 06:22:14,029.029 INFO    ] 200
[2026-06-27 06:22:14,031.031 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:22:14,056.056 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:22:14,106.106 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:22:14,107.107 INFO    ] No camera update needed
[2026-06-27 06:22:14,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:22:14,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:22:14,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:22:14,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:22:16,154.154 INFO    ] ================================================
[2026-06-27 06:22:16,169.169 INFO    ] Launching Daemon at Sat Jun 27 06:22:16 IST 2026
[2026-06-27 06:22:16,180.180 INFO    ] ================================================
[2026-06-27 06:22:16,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:22:16
[2026-06-27 06:22:16,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:22:16,992.992 INFO    ] Initializing speech engine...
[2026-06-27 06:22:16,997.997 INFO    ] 2026-06-27 06:22:16
[2026-06-27 06:22:17,204.204 INFO    ] 2026-06-27 06:22:17
[2026-06-27 06:22:17,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:22:17,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:22:17,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:22:17,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:22:17,626.626 INFO    ] time= 27/06/2026 06:22:17
[2026-06-27 06:22:17,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:22:17,659.659 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:22:17,726.726 INFO    ] No existing commands found in stream
[2026-06-27 06:22:22,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:22:22,738.738 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-27 06:22:26,334.334 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 06:22:26,336.336 INFO    ] Checking for system updates...
[2026-06-27 06:22:26,358.358 INFO    ] 200
[2026-06-27 06:22:26,359.359 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:22:26,392.392 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:22:26,393.393 INFO    ] No update needed
[2026-06-27 06:22:26,395.395 INFO    ] Checking for camera pi updates...
[2026-06-27 06:22:26,414.414 INFO    ] 200
[2026-06-27 06:22:26,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:22:26,441.441 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:22:26,478.478 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:22:26,479.479 INFO    ] No camera update needed
[2026-06-27 06:22:26,480.480 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:22:26,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:22:26,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:22:26,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:22:28,527.527 INFO    ] ================================================
[2026-06-27 06:22:28,542.542 INFO    ] Launching Daemon at Sat Jun 27 06:22:28 IST 2026
[2026-06-27 06:22:28,552.552 INFO    ] ================================================
[2026-06-27 06:22:28,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:22:28
[2026-06-27 06:22:29,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:22:29,367.367 INFO    ] Initializing speech engine...
[2026-06-27 06:22:29,372.372 INFO    ] 2026-06-27 06:22:29
[2026-06-27 06:22:29,590.590 INFO    ] 2026-06-27 06:22:29
[2026-06-27 06:22:29,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:22:29,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:22:29,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:22:29,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:22:30,022.022 INFO    ] time= 27/06/2026 06:22:29
[2026-06-27 06:22:30,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:22:30,052.052 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:22:30,119.119 INFO    ] No existing commands found in stream
[2026-06-27 06:22:35,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:22:35,137.137 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-27 06:22:37,437.437 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:22:37,438.438 INFO    ] Checking for system updates...
[2026-06-27 06:22:37,462.462 INFO    ] 200
[2026-06-27 06:22:37,463.463 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:22:37,494.494 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:22:37,496.496 INFO    ] No update needed
[2026-06-27 06:22:37,497.497 INFO    ] Checking for camera pi updates...
[2026-06-27 06:22:37,518.518 INFO    ] 200
[2026-06-27 06:22:37,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:22:37,548.548 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:22:37,589.589 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:22:37,590.590 INFO    ] No camera update needed
[2026-06-27 06:22:37,592.592 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:22:37,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:22:37,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:22:37,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:22:39,639.639 INFO    ] ================================================
[2026-06-27 06:22:39,655.655 INFO    ] Launching Daemon at Sat Jun 27 06:22:39 IST 2026
[2026-06-27 06:22:39,666.666 INFO    ] ================================================
[2026-06-27 06:22:40,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:22:40
[2026-06-27 06:22:40,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:22:40,483.483 INFO    ] Initializing speech engine...
[2026-06-27 06:22:40,488.488 INFO    ] 2026-06-27 06:22:40
[2026-06-27 06:22:40,690.690 INFO    ] 2026-06-27 06:22:40
[2026-06-27 06:22:40,719.719 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:22:40,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:22:40,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:22:41,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:22:41,109.109 INFO    ] time= 27/06/2026 06:22:41
[2026-06-27 06:22:41,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:22:41,139.139 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:22:41,229.229 INFO    ] No existing commands found in stream
[2026-06-27 06:22:46,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:22:46,241.241 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-27 06:22:47,791.791 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 06:22:47,792.792 INFO    ] Checking for system updates...
[2026-06-27 06:22:47,813.813 INFO    ] 200
[2026-06-27 06:22:47,815.815 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:22:47,848.848 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:22:47,849.849 INFO    ] No update needed
[2026-06-27 06:22:47,850.850 INFO    ] Checking for camera pi updates...
[2026-06-27 06:22:47,871.871 INFO    ] 200
[2026-06-27 06:22:47,872.872 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:22:47,896.896 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:22:47,938.938 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:22:47,939.939 INFO    ] No camera update needed
[2026-06-27 06:22:47,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:22:47,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:22:47,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:22:47,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:22:49,988.988 INFO    ] ================================================
[2026-06-27 06:22:50,005.005 INFO    ] Launching Daemon at Sat Jun 27 06:22:49 IST 2026
[2026-06-27 06:22:50,016.016 INFO    ] ================================================
[2026-06-27 06:22:50,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:22:50
[2026-06-27 06:22:50,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:22:50,844.844 INFO    ] Initializing speech engine...
[2026-06-27 06:22:50,849.849 INFO    ] 2026-06-27 06:22:50
[2026-06-27 06:22:51,052.052 INFO    ] 2026-06-27 06:22:51
[2026-06-27 06:22:51,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:22:51,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:22:51,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:22:51,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:22:51,493.493 INFO    ] time= 27/06/2026 06:22:51
[2026-06-27 06:22:51,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:22:51,500.500 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:22:51,568.568 INFO    ] No existing commands found in stream
[2026-06-27 06:22:56,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:22:56,585.585 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-27 06:22:59,842.842 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 06:22:59,844.844 INFO    ] Checking for system updates...
[2026-06-27 06:22:59,865.865 INFO    ] 200
[2026-06-27 06:22:59,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:22:59,897.897 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:22:59,898.898 INFO    ] No update needed
[2026-06-27 06:22:59,899.899 INFO    ] Checking for camera pi updates...
[2026-06-27 06:22:59,920.920 INFO    ] 200
[2026-06-27 06:22:59,921.921 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:22:59,945.945 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:22:59,993.993 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:22:59,995.995 INFO    ] No camera update needed
[2026-06-27 06:22:59,996.996 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:22:59,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:23:00,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:23:00,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:23:02,066.066 INFO    ] ================================================
[2026-06-27 06:23:02,086.086 INFO    ] Launching Daemon at Sat Jun 27 06:23:02 IST 2026
[2026-06-27 06:23:02,110.110 INFO    ] ================================================
[2026-06-27 06:23:02,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:23:02
[2026-06-27 06:23:02,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:23:03,054.054 INFO    ] Initializing speech engine...
[2026-06-27 06:23:03,058.058 INFO    ] 2026-06-27 06:23:03
[2026-06-27 06:23:03,299.299 INFO    ] 2026-06-27 06:23:03
[2026-06-27 06:23:03,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:23:03,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:23:03,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:23:03,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:23:03,749.749 INFO    ] time= 27/06/2026 06:23:03
[2026-06-27 06:23:03,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:23:03,788.788 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:23:03,858.858 INFO    ] No existing commands found in stream
[2026-06-27 06:23:08,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:23:08,872.872 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-27 06:23:12,251.251 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:23:12,253.253 INFO    ] Checking for system updates...
[2026-06-27 06:23:12,276.276 INFO    ] 200
[2026-06-27 06:23:12,277.277 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:23:12,315.315 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:23:12,316.316 INFO    ] No update needed
[2026-06-27 06:23:12,318.318 INFO    ] Checking for camera pi updates...
[2026-06-27 06:23:12,339.339 INFO    ] 200
[2026-06-27 06:23:12,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:23:12,365.365 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:23:12,407.407 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:23:12,408.408 INFO    ] No camera update needed
[2026-06-27 06:23:12,410.410 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:23:12,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:23:12,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:23:12,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:23:14,456.456 INFO    ] ================================================
[2026-06-27 06:23:14,471.471 INFO    ] Launching Daemon at Sat Jun 27 06:23:14 IST 2026
[2026-06-27 06:23:14,482.482 INFO    ] ================================================
[2026-06-27 06:23:14,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:23:14
[2026-06-27 06:23:15,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:23:15,323.323 INFO    ] Initializing speech engine...
[2026-06-27 06:23:15,328.328 INFO    ] 2026-06-27 06:23:15
[2026-06-27 06:23:15,534.534 INFO    ] 2026-06-27 06:23:15
[2026-06-27 06:23:15,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:23:15,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:23:15,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:23:15,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:23:15,952.952 INFO    ] time= 27/06/2026 06:23:15
[2026-06-27 06:23:15,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:23:15,982.982 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:23:16,051.051 INFO    ] No existing commands found in stream
[2026-06-27 06:23:21,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:23:21,062.062 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-27 06:23:23,410.410 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 06:23:23,411.411 INFO    ] Checking for system updates...
[2026-06-27 06:23:23,438.438 INFO    ] 200
[2026-06-27 06:23:23,439.439 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-27 06:23:23,441.441 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-27 06:23:23,442.442 INFO    ] Checking for camera pi updates...
[2026-06-27 06:23:23,472.472 INFO    ] 200
[2026-06-27 06:23:23,474.474 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-27 06:23:23,476.476 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-27 06:23:23,478.478 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:23:23,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:23:23,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:23:23,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:23:25,525.525 INFO    ] ================================================
[2026-06-27 06:23:25,540.540 INFO    ] Launching Daemon at Sat Jun 27 06:23:25 IST 2026
[2026-06-27 06:23:25,550.550 INFO    ] ================================================
[2026-06-27 06:23:25,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:23:25
[2026-06-27 06:23:26,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:23:26,346.346 INFO    ] Initializing speech engine...
[2026-06-27 06:23:26,354.354 INFO    ] 2026-06-27 06:23:26
[2026-06-27 06:23:26,565.565 INFO    ] 2026-06-27 06:23:26
[2026-06-27 06:23:26,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:23:26,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:23:26,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:23:26,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:23:26,993.993 INFO    ] time= 27/06/2026 06:23:26
[2026-06-27 06:23:27,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:23:27,023.023 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:23:27,090.090 INFO    ] No existing commands found in stream
[2026-06-27 06:23:32,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:23:32,100.100 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-27 06:23:36,090.090 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:23:36,092.092 INFO    ] Checking for system updates...
[2026-06-27 06:23:36,113.113 INFO    ] 200
[2026-06-27 06:23:36,115.115 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:23:36,148.148 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:23:36,150.150 INFO    ] No update needed
[2026-06-27 06:23:36,151.151 INFO    ] Checking for camera pi updates...
[2026-06-27 06:23:36,174.174 INFO    ] 200
[2026-06-27 06:23:36,175.175 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:23:36,201.201 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:23:36,249.249 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:23:36,250.250 INFO    ] No camera update needed
[2026-06-27 06:23:36,252.252 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:23:36,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:23:36,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:23:36,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:23:38,301.301 INFO    ] ================================================
[2026-06-27 06:23:38,316.316 INFO    ] Launching Daemon at Sat Jun 27 06:23:38 IST 2026
[2026-06-27 06:23:38,327.327 INFO    ] ================================================
[2026-06-27 06:23:38,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:23:38
[2026-06-27 06:23:39,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:23:39,141.141 INFO    ] Initializing speech engine...
[2026-06-27 06:23:39,145.145 INFO    ] 2026-06-27 06:23:39
[2026-06-27 06:23:39,365.365 INFO    ] 2026-06-27 06:23:39
[2026-06-27 06:23:39,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:23:39,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:23:39,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:23:39,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:23:39,792.792 INFO    ] time= 27/06/2026 06:23:39
[2026-06-27 06:23:39,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:23:39,822.822 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:23:39,890.890 INFO    ] No existing commands found in stream
[2026-06-27 06:23:44,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:23:44,901.901 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-27 06:23:46,387.387 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:23:46,388.388 INFO    ] Checking for system updates...
[2026-06-27 06:23:46,410.410 INFO    ] 200
[2026-06-27 06:23:46,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:23:46,442.442 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:23:46,444.444 INFO    ] No update needed
[2026-06-27 06:23:46,446.446 INFO    ] Checking for camera pi updates...
[2026-06-27 06:23:46,465.465 INFO    ] 200
[2026-06-27 06:23:46,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:23:46,492.492 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:23:46,543.543 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:23:46,545.545 INFO    ] No camera update needed
[2026-06-27 06:23:46,546.546 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:23:46,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:23:46,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:23:46,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:23:48,594.594 INFO    ] ================================================
[2026-06-27 06:23:48,610.610 INFO    ] Launching Daemon at Sat Jun 27 06:23:48 IST 2026
[2026-06-27 06:23:48,620.620 INFO    ] ================================================
[2026-06-27 06:23:49,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:23:49
[2026-06-27 06:23:49,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:23:49,509.509 INFO    ] Initializing speech engine...
[2026-06-27 06:23:49,514.514 INFO    ] 2026-06-27 06:23:49
[2026-06-27 06:23:49,726.726 INFO    ] 2026-06-27 06:23:49
[2026-06-27 06:23:49,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:23:49,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:23:49,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:23:50,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:23:50,146.146 INFO    ] time= 27/06/2026 06:23:50
[2026-06-27 06:23:50,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:23:50,177.177 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:23:50,268.268 INFO    ] No existing commands found in stream
[2026-06-27 06:23:55,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:23:55,286.286 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-27 06:23:57,188.188 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:23:57,190.190 INFO    ] Checking for system updates...
[2026-06-27 06:23:57,211.211 INFO    ] 200
[2026-06-27 06:23:57,212.212 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:23:57,243.243 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:23:57,245.245 INFO    ] No update needed
[2026-06-27 06:23:57,246.246 INFO    ] Checking for camera pi updates...
[2026-06-27 06:23:57,267.267 INFO    ] 200
[2026-06-27 06:23:57,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:23:57,295.295 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:23:57,433.433 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:23:57,435.435 INFO    ] No camera update needed
[2026-06-27 06:23:57,436.436 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:23:57,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:23:57,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:23:57,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:23:59,484.484 INFO    ] ================================================
[2026-06-27 06:23:59,500.500 INFO    ] Launching Daemon at Sat Jun 27 06:23:59 IST 2026
[2026-06-27 06:23:59,511.511 INFO    ] ================================================
[2026-06-27 06:23:59,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:23:59
[2026-06-27 06:24:00,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:24:00,369.369 INFO    ] Initializing speech engine...
[2026-06-27 06:24:00,375.375 INFO    ] 2026-06-27 06:24:00
[2026-06-27 06:24:00,577.577 INFO    ] 2026-06-27 06:24:00
[2026-06-27 06:24:00,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:24:00,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:24:00,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:24:00,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:24:00,993.993 INFO    ] time= 27/06/2026 06:24:00
[2026-06-27 06:24:01,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:24:01,023.023 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:24:01,091.091 INFO    ] No existing commands found in stream
[2026-06-27 06:24:06,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:24:06,102.102 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-27 06:24:07,471.471 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:24:07,472.472 INFO    ] Checking for system updates...
[2026-06-27 06:24:07,493.493 INFO    ] 200
[2026-06-27 06:24:07,495.495 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:24:07,525.525 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:24:07,526.526 INFO    ] No update needed
[2026-06-27 06:24:07,528.528 INFO    ] Checking for camera pi updates...
[2026-06-27 06:24:07,547.547 INFO    ] 200
[2026-06-27 06:24:07,548.548 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:24:07,573.573 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:24:07,610.610 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:24:07,611.611 INFO    ] No camera update needed
[2026-06-27 06:24:07,612.612 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:24:07,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:24:07,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:24:07,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:24:09,659.659 INFO    ] ================================================
[2026-06-27 06:24:09,674.674 INFO    ] Launching Daemon at Sat Jun 27 06:24:09 IST 2026
[2026-06-27 06:24:09,684.684 INFO    ] ================================================
[2026-06-27 06:24:10,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:24:10
[2026-06-27 06:24:10,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:24:10,493.493 INFO    ] Initializing speech engine...
[2026-06-27 06:24:10,504.504 INFO    ] 2026-06-27 06:24:10
[2026-06-27 06:24:10,722.722 INFO    ] 2026-06-27 06:24:10
[2026-06-27 06:24:10,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:24:10,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:24:10,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:24:11,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:24:11,147.147 INFO    ] time= 27/06/2026 06:24:11
[2026-06-27 06:24:11,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:24:11,194.194 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:24:11,265.265 INFO    ] No existing commands found in stream
[2026-06-27 06:24:16,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:24:16,279.279 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-27 06:24:20,148.148 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 06:24:20,150.150 INFO    ] Checking for system updates...
[2026-06-27 06:24:20,171.171 INFO    ] 200
[2026-06-27 06:24:20,172.172 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:24:20,205.205 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:24:20,206.206 INFO    ] No update needed
[2026-06-27 06:24:20,208.208 INFO    ] Checking for camera pi updates...
[2026-06-27 06:24:20,227.227 INFO    ] 200
[2026-06-27 06:24:20,229.229 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:24:20,256.256 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:24:20,293.293 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:24:20,295.295 INFO    ] No camera update needed
[2026-06-27 06:24:20,297.297 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:24:20,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:24:20,301.301 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:24:20,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:24:22,344.344 INFO    ] ================================================
[2026-06-27 06:24:22,359.359 INFO    ] Launching Daemon at Sat Jun 27 06:24:22 IST 2026
[2026-06-27 06:24:22,370.370 INFO    ] ================================================
[2026-06-27 06:24:22,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:24:22
[2026-06-27 06:24:23,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:24:23,202.202 INFO    ] Initializing speech engine...
[2026-06-27 06:24:23,207.207 INFO    ] 2026-06-27 06:24:23
[2026-06-27 06:24:23,412.412 INFO    ] 2026-06-27 06:24:23
[2026-06-27 06:24:23,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:24:23,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:24:23,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:24:23,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:24:23,831.831 INFO    ] time= 27/06/2026 06:24:23
[2026-06-27 06:24:23,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:24:23,865.865 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:24:23,931.931 INFO    ] No existing commands found in stream
[2026-06-27 06:24:28,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:24:28,944.944 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-27 06:24:32,860.860 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 06:24:32,861.861 INFO    ] Checking for system updates...
[2026-06-27 06:24:32,884.884 INFO    ] 200
[2026-06-27 06:24:32,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:24:32,916.916 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:24:32,918.918 INFO    ] No update needed
[2026-06-27 06:24:32,919.919 INFO    ] Checking for camera pi updates...
[2026-06-27 06:24:32,938.938 INFO    ] 200
[2026-06-27 06:24:32,940.940 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:24:32,963.963 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:24:32,987.987 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:24:32,988.988 INFO    ] No camera update needed
[2026-06-27 06:24:32,989.989 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:24:32,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:24:32,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:24:32,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:24:35,035.035 INFO    ] ================================================
[2026-06-27 06:24:35,050.050 INFO    ] Launching Daemon at Sat Jun 27 06:24:35 IST 2026
[2026-06-27 06:24:35,060.060 INFO    ] ================================================
[2026-06-27 06:24:35,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:24:35
[2026-06-27 06:24:35,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:24:35,853.853 INFO    ] Initializing speech engine...
[2026-06-27 06:24:35,858.858 INFO    ] 2026-06-27 06:24:35
[2026-06-27 06:24:36,063.063 INFO    ] 2026-06-27 06:24:36
[2026-06-27 06:24:36,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:24:36,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:24:36,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:24:36,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:24:36,482.482 INFO    ] time= 27/06/2026 06:24:36
[2026-06-27 06:24:36,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:24:36,512.512 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:24:36,603.603 INFO    ] No existing commands found in stream
[2026-06-27 06:24:41,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:24:41,615.615 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-27 06:24:46,011.011 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 06:24:46,012.012 INFO    ] Checking for system updates...
[2026-06-27 06:24:46,033.033 INFO    ] 200
[2026-06-27 06:24:46,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:24:46,065.065 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:24:46,067.067 INFO    ] No update needed
[2026-06-27 06:24:46,068.068 INFO    ] Checking for camera pi updates...
[2026-06-27 06:24:46,090.090 INFO    ] 200
[2026-06-27 06:24:46,091.091 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:24:46,114.114 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:24:46,154.154 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:24:46,155.155 INFO    ] No camera update needed
[2026-06-27 06:24:46,156.156 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:24:46,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:24:46,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:24:46,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:24:48,201.201 INFO    ] ================================================
[2026-06-27 06:24:48,217.217 INFO    ] Launching Daemon at Sat Jun 27 06:24:48 IST 2026
[2026-06-27 06:24:48,228.228 INFO    ] ================================================
[2026-06-27 06:24:48,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:24:48
[2026-06-27 06:24:48,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:24:49,085.085 INFO    ] Initializing speech engine...
[2026-06-27 06:24:49,092.092 INFO    ] 2026-06-27 06:24:49
[2026-06-27 06:24:49,303.303 INFO    ] 2026-06-27 06:24:49
[2026-06-27 06:24:49,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:24:49,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:24:49,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:24:49,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:24:49,731.731 INFO    ] time= 27/06/2026 06:24:49
[2026-06-27 06:24:49,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:24:49,760.760 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:24:49,828.828 INFO    ] No existing commands found in stream
[2026-06-27 06:24:54,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:24:54,842.842 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-27 06:24:56,294.294 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 06:24:56,296.296 INFO    ] Checking for system updates...
[2026-06-27 06:24:56,317.317 INFO    ] 200
[2026-06-27 06:24:56,318.318 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:24:56,349.349 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:24:56,350.350 INFO    ] No update needed
[2026-06-27 06:24:56,352.352 INFO    ] Checking for camera pi updates...
[2026-06-27 06:24:56,371.371 INFO    ] 200
[2026-06-27 06:24:56,372.372 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:24:56,396.396 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:24:56,431.431 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:24:56,433.433 INFO    ] No camera update needed
[2026-06-27 06:24:56,434.434 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:24:56,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:24:56,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:24:56,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:24:58,479.479 INFO    ] ================================================
[2026-06-27 06:24:58,494.494 INFO    ] Launching Daemon at Sat Jun 27 06:24:58 IST 2026
[2026-06-27 06:24:58,505.505 INFO    ] ================================================
[2026-06-27 06:24:58,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:24:58
[2026-06-27 06:24:59,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:24:59,395.395 INFO    ] Initializing speech engine...
[2026-06-27 06:24:59,400.400 INFO    ] 2026-06-27 06:24:59
[2026-06-27 06:24:59,615.615 INFO    ] 2026-06-27 06:24:59
[2026-06-27 06:24:59,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:24:59,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:24:59,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:25:00,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:25:00,043.043 INFO    ] time= 27/06/2026 06:25:00
[2026-06-27 06:25:00,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:25:00,070.070 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:25:00,136.136 INFO    ] No existing commands found in stream
[2026-06-27 06:25:05,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:25:05,150.150 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-27 06:25:06,696.696 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 06:25:06,697.697 INFO    ] Checking for system updates...
[2026-06-27 06:25:06,719.719 INFO    ] 200
[2026-06-27 06:25:06,720.720 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:25:06,755.755 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:25:06,757.757 INFO    ] No update needed
[2026-06-27 06:25:06,758.758 INFO    ] Checking for camera pi updates...
[2026-06-27 06:25:06,778.778 INFO    ] 200
[2026-06-27 06:25:06,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:25:06,805.805 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:25:06,843.843 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:25:06,845.845 INFO    ] No camera update needed
[2026-06-27 06:25:06,846.846 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:25:06,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:25:06,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:25:06,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:25:08,892.892 INFO    ] ================================================
[2026-06-27 06:25:08,908.908 INFO    ] Launching Daemon at Sat Jun 27 06:25:08 IST 2026
[2026-06-27 06:25:08,919.919 INFO    ] ================================================
[2026-06-27 06:25:09,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:25:09
[2026-06-27 06:25:09,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:25:09,732.732 INFO    ] Initializing speech engine...
[2026-06-27 06:25:09,738.738 INFO    ] 2026-06-27 06:25:09
[2026-06-27 06:25:09,943.943 INFO    ] 2026-06-27 06:25:09
[2026-06-27 06:25:09,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:25:10,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:25:10,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:25:10,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:25:10,350.350 INFO    ] time= 27/06/2026 06:25:10
[2026-06-27 06:25:10,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:25:10,389.389 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:25:10,460.460 INFO    ] No existing commands found in stream
[2026-06-27 06:25:15,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:25:15,472.472 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-27 06:25:19,609.609 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 06:25:19,610.610 INFO    ] Checking for system updates...
[2026-06-27 06:25:19,631.631 INFO    ] 200
[2026-06-27 06:25:19,633.633 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:25:19,664.664 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:25:19,666.666 INFO    ] No update needed
[2026-06-27 06:25:19,667.667 INFO    ] Checking for camera pi updates...
[2026-06-27 06:25:19,686.686 INFO    ] 200
[2026-06-27 06:25:19,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:25:19,711.711 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:25:19,749.749 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:25:19,750.750 INFO    ] No camera update needed
[2026-06-27 06:25:19,752.752 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:25:19,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:25:19,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:25:19,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:25:21,803.803 INFO    ] ================================================
[2026-06-27 06:25:21,818.818 INFO    ] Launching Daemon at Sat Jun 27 06:25:21 IST 2026
[2026-06-27 06:25:21,829.829 INFO    ] ================================================
[2026-06-27 06:25:22,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:25:22
[2026-06-27 06:25:22,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:25:22,636.636 INFO    ] Initializing speech engine...
[2026-06-27 06:25:22,641.641 INFO    ] 2026-06-27 06:25:22
[2026-06-27 06:25:22,847.847 INFO    ] 2026-06-27 06:25:22
[2026-06-27 06:25:22,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:25:23,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:25:23,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:25:23,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:25:23,257.257 INFO    ] time= 27/06/2026 06:25:23
[2026-06-27 06:25:23,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:25:23,297.297 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:25:23,367.367 INFO    ] No existing commands found in stream
[2026-06-27 06:25:28,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:25:28,381.381 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-27 06:25:30,219.219 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:25:30,220.220 INFO    ] Checking for system updates...
[2026-06-27 06:25:30,242.242 INFO    ] 200
[2026-06-27 06:25:30,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:25:30,277.277 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:25:30,278.278 INFO    ] No update needed
[2026-06-27 06:25:30,280.280 INFO    ] Checking for camera pi updates...
[2026-06-27 06:25:30,301.301 INFO    ] 200
[2026-06-27 06:25:30,302.302 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:25:30,325.325 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:25:30,366.366 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:25:30,367.367 INFO    ] No camera update needed
[2026-06-27 06:25:30,368.368 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:25:30,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:25:30,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:25:30,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:25:32,406.406 INFO    ] ================================================
[2026-06-27 06:25:32,416.416 INFO    ] Launching Daemon at Sat Jun 27 06:25:32 IST 2026
[2026-06-27 06:25:32,422.422 INFO    ] ================================================
[2026-06-27 06:25:32,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:25:32
[2026-06-27 06:25:33,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:25:33,257.257 INFO    ] Initializing speech engine...
[2026-06-27 06:25:33,262.262 INFO    ] 2026-06-27 06:25:33
[2026-06-27 06:25:33,467.467 INFO    ] 2026-06-27 06:25:33
[2026-06-27 06:25:33,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:25:33,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:25:33,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:25:33,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:25:33,934.934 INFO    ] time= 27/06/2026 06:25:33
[2026-06-27 06:25:33,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:25:33,963.963 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:25:34,029.029 INFO    ] No existing commands found in stream
[2026-06-27 06:25:39,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:25:39,046.046 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-27 06:25:44,811.811 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 06:25:44,813.813 INFO    ] Checking for system updates...
[2026-06-27 06:25:44,836.836 INFO    ] 200
[2026-06-27 06:25:44,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:25:44,868.868 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:25:44,869.869 INFO    ] No update needed
[2026-06-27 06:25:44,870.870 INFO    ] Checking for camera pi updates...
[2026-06-27 06:25:44,891.891 INFO    ] 200
[2026-06-27 06:25:44,893.893 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:25:44,916.916 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:25:44,954.954 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:25:44,955.955 INFO    ] No camera update needed
[2026-06-27 06:25:44,956.956 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:25:44,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:25:44,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:25:44,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:25:47,006.006 INFO    ] ================================================
[2026-06-27 06:25:47,022.022 INFO    ] Launching Daemon at Sat Jun 27 06:25:47 IST 2026
[2026-06-27 06:25:47,034.034 INFO    ] ================================================
[2026-06-27 06:25:47,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:25:47
[2026-06-27 06:25:47,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:25:47,851.851 INFO    ] Initializing speech engine...
[2026-06-27 06:25:47,861.861 INFO    ] 2026-06-27 06:25:47
[2026-06-27 06:25:48,066.066 INFO    ] 2026-06-27 06:25:48
[2026-06-27 06:25:48,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:25:48,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:25:48,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:25:48,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:25:48,478.478 INFO    ] time= 27/06/2026 06:25:48
[2026-06-27 06:25:48,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:25:48,513.513 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:25:48,584.584 INFO    ] No existing commands found in stream
[2026-06-27 06:25:53,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:25:53,596.596 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-27 06:25:55,788.788 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 06:25:55,789.789 INFO    ] Checking for system updates...
[2026-06-27 06:25:55,812.812 INFO    ] 200
[2026-06-27 06:25:55,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:25:55,844.844 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:25:55,846.846 INFO    ] No update needed
[2026-06-27 06:25:55,847.847 INFO    ] Checking for camera pi updates...
[2026-06-27 06:25:55,867.867 INFO    ] 200
[2026-06-27 06:25:55,869.869 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:25:55,895.895 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:25:55,917.917 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:25:55,919.919 INFO    ] No camera update needed
[2026-06-27 06:25:55,920.920 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:25:55,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:25:55,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:25:55,928.928 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:25:57,960.960 INFO    ] ================================================
[2026-06-27 06:25:57,976.976 INFO    ] Launching Daemon at Sat Jun 27 06:25:57 IST 2026
[2026-06-27 06:25:57,986.986 INFO    ] ================================================
[2026-06-27 06:25:58,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:25:58
[2026-06-27 06:25:58,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:25:58,811.811 INFO    ] Initializing speech engine...
[2026-06-27 06:25:58,815.815 INFO    ] 2026-06-27 06:25:58
[2026-06-27 06:25:59,022.022 INFO    ] 2026-06-27 06:25:59
[2026-06-27 06:25:59,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:25:59,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:25:59,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:25:59,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:25:59,427.427 INFO    ] time= 27/06/2026 06:25:59
[2026-06-27 06:25:59,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:25:59,472.472 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:25:59,569.569 INFO    ] No existing commands found in stream
[2026-06-27 06:26:04,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:26:04,586.586 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-27 06:26:06,051.051 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 06:26:06,052.052 INFO    ] Checking for system updates...
[2026-06-27 06:26:06,075.075 INFO    ] 200
[2026-06-27 06:26:06,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:26:06,107.107 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:26:06,108.108 INFO    ] No update needed
[2026-06-27 06:26:06,110.110 INFO    ] Checking for camera pi updates...
[2026-06-27 06:26:06,133.133 INFO    ] 200
[2026-06-27 06:26:06,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:26:06,159.159 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:26:06,208.208 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:26:06,210.210 INFO    ] No camera update needed
[2026-06-27 06:26:06,211.211 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:26:06,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:26:06,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:26:06,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:26:08,259.259 INFO    ] ================================================
[2026-06-27 06:26:08,274.274 INFO    ] Launching Daemon at Sat Jun 27 06:26:08 IST 2026
[2026-06-27 06:26:08,285.285 INFO    ] ================================================
[2026-06-27 06:26:08,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:26:08
[2026-06-27 06:26:08,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:26:09,077.077 INFO    ] Initializing speech engine...
[2026-06-27 06:26:09,084.084 INFO    ] 2026-06-27 06:26:09
[2026-06-27 06:26:09,297.297 INFO    ] 2026-06-27 06:26:09
[2026-06-27 06:26:09,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:26:09,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:26:09,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:26:09,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:26:09,738.738 INFO    ] time= 27/06/2026 06:26:09
[2026-06-27 06:26:09,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:26:09,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:26:09,812.812 INFO    ] No existing commands found in stream
[2026-06-27 06:26:14,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:26:14,824.824 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-27 06:26:16,993.993 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 06:26:16,995.995 INFO    ] Checking for system updates...
[2026-06-27 06:26:17,016.016 INFO    ] 200
[2026-06-27 06:26:17,017.017 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:26:17,051.051 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:26:17,053.053 INFO    ] No update needed
[2026-06-27 06:26:17,054.054 INFO    ] Checking for camera pi updates...
[2026-06-27 06:26:17,074.074 INFO    ] 200
[2026-06-27 06:26:17,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:26:17,102.102 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:26:17,154.154 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:26:17,156.156 INFO    ] No camera update needed
[2026-06-27 06:26:17,157.157 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:26:17,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:26:17,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:26:17,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:26:19,207.207 INFO    ] ================================================
[2026-06-27 06:26:19,223.223 INFO    ] Launching Daemon at Sat Jun 27 06:26:19 IST 2026
[2026-06-27 06:26:19,235.235 INFO    ] ================================================
[2026-06-27 06:26:19,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:26:19
[2026-06-27 06:26:19,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:26:20,125.125 INFO    ] Initializing speech engine...
[2026-06-27 06:26:20,130.130 INFO    ] 2026-06-27 06:26:20
[2026-06-27 06:26:20,340.340 INFO    ] 2026-06-27 06:26:20
[2026-06-27 06:26:20,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:26:20,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:26:20,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:26:20,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:26:20,703.703 INFO    ] time= 27/06/2026 06:26:20
[2026-06-27 06:26:20,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:26:20,813.813 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:26:20,925.925 INFO    ] No existing commands found in stream
[2026-06-27 06:26:25,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:26:25,939.939 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-27 06:26:27,540.540 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:26:27,542.542 INFO    ] Checking for system updates...
[2026-06-27 06:26:27,564.564 INFO    ] 200
[2026-06-27 06:26:27,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:26:27,597.597 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:26:27,598.598 INFO    ] No update needed
[2026-06-27 06:26:27,600.600 INFO    ] Checking for camera pi updates...
[2026-06-27 06:26:27,620.620 INFO    ] 200
[2026-06-27 06:26:27,621.621 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:26:27,645.645 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:26:27,681.681 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:26:27,683.683 INFO    ] No camera update needed
[2026-06-27 06:26:27,684.684 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:26:27,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:26:27,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:26:27,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:26:29,730.730 INFO    ] ================================================
[2026-06-27 06:26:29,747.747 INFO    ] Launching Daemon at Sat Jun 27 06:26:29 IST 2026
[2026-06-27 06:26:29,758.758 INFO    ] ================================================
[2026-06-27 06:26:30,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:26:30
[2026-06-27 06:26:30,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:26:30,568.568 INFO    ] Initializing speech engine...
[2026-06-27 06:26:30,572.572 INFO    ] 2026-06-27 06:26:30
[2026-06-27 06:26:30,790.790 INFO    ] 2026-06-27 06:26:30
[2026-06-27 06:26:30,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:26:31,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:26:31,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:26:31,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:26:31,188.188 INFO    ] time= 27/06/2026 06:26:31
[2026-06-27 06:26:31,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:26:31,238.238 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:26:31,309.309 INFO    ] No existing commands found in stream
[2026-06-27 06:26:36,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:26:36,320.320 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-27 06:26:39,145.145 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:26:39,147.147 INFO    ] Checking for system updates...
[2026-06-27 06:26:39,169.169 INFO    ] 200
[2026-06-27 06:26:39,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:26:39,204.204 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:26:39,205.205 INFO    ] No update needed
[2026-06-27 06:26:39,206.206 INFO    ] Checking for camera pi updates...
[2026-06-27 06:26:39,227.227 INFO    ] 200
[2026-06-27 06:26:39,229.229 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:26:39,252.252 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:26:39,289.289 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:26:39,290.290 INFO    ] No camera update needed
[2026-06-27 06:26:39,291.291 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:26:39,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:26:39,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:26:39,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:26:41,338.338 INFO    ] ================================================
[2026-06-27 06:26:41,357.357 INFO    ] Launching Daemon at Sat Jun 27 06:26:41 IST 2026
[2026-06-27 06:26:41,368.368 INFO    ] ================================================
[2026-06-27 06:26:41,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:26:41
[2026-06-27 06:26:42,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:26:42,185.185 INFO    ] Initializing speech engine...
[2026-06-27 06:26:42,190.190 INFO    ] 2026-06-27 06:26:42
[2026-06-27 06:26:42,394.394 INFO    ] 2026-06-27 06:26:42
[2026-06-27 06:26:42,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:26:42,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:26:42,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:26:42,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:26:42,813.813 INFO    ] time= 27/06/2026 06:26:42
[2026-06-27 06:26:42,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:26:42,842.842 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:26:42,909.909 INFO    ] No existing commands found in stream
[2026-06-27 06:26:47,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:26:47,926.926 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-27 06:26:50,930.930 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 06:26:50,931.931 INFO    ] Checking for system updates...
[2026-06-27 06:26:50,952.952 INFO    ] 200
[2026-06-27 06:26:50,954.954 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:26:50,985.985 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:26:50,987.987 INFO    ] No update needed
[2026-06-27 06:26:50,988.988 INFO    ] Checking for camera pi updates...
[2026-06-27 06:26:51,008.008 INFO    ] 200
[2026-06-27 06:26:51,009.009 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:26:51,032.032 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:26:51,074.074 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:26:51,075.075 INFO    ] No camera update needed
[2026-06-27 06:26:51,077.077 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:26:51,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:26:51,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:26:51,084.084 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:26:53,122.122 INFO    ] ================================================
[2026-06-27 06:26:53,137.137 INFO    ] Launching Daemon at Sat Jun 27 06:26:53 IST 2026
[2026-06-27 06:26:53,147.147 INFO    ] ================================================
[2026-06-27 06:26:53,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:26:53
[2026-06-27 06:26:53,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:26:53,968.968 INFO    ] Initializing speech engine...
[2026-06-27 06:26:53,978.978 INFO    ] 2026-06-27 06:26:53
[2026-06-27 06:26:54,183.183 INFO    ] 2026-06-27 06:26:54
[2026-06-27 06:26:54,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:26:54,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:26:54,409.409 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:26:54,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:26:54,600.600 INFO    ] time= 27/06/2026 06:26:54
[2026-06-27 06:26:54,631.631 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:26:54,637.637 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:26:54,709.709 INFO    ] No existing commands found in stream
[2026-06-27 06:26:59,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:26:59,721.721 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-27 06:27:02,216.216 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 06:27:02,218.218 INFO    ] Checking for system updates...
[2026-06-27 06:27:02,248.248 INFO    ] 200
[2026-06-27 06:27:02,249.249 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:27:02,289.289 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:27:02,290.290 INFO    ] No update needed
[2026-06-27 06:27:02,292.292 INFO    ] Checking for camera pi updates...
[2026-06-27 06:27:02,318.318 INFO    ] 200
[2026-06-27 06:27:02,320.320 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:27:02,350.350 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:27:02,372.372 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:27:02,374.374 INFO    ] No camera update needed
[2026-06-27 06:27:02,376.376 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:27:02,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:27:02,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:27:02,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:27:04,426.426 INFO    ] ================================================
[2026-06-27 06:27:04,441.441 INFO    ] Launching Daemon at Sat Jun 27 06:27:04 IST 2026
[2026-06-27 06:27:04,454.454 INFO    ] ================================================
[2026-06-27 06:27:04,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:27:04
[2026-06-27 06:27:05,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:27:05,320.320 INFO    ] Initializing speech engine...
[2026-06-27 06:27:05,326.326 INFO    ] 2026-06-27 06:27:05
[2026-06-27 06:27:05,541.541 INFO    ] 2026-06-27 06:27:05
[2026-06-27 06:27:05,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:27:05,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:27:05,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:27:05,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:27:05,976.976 INFO    ] time= 27/06/2026 06:27:05
[2026-06-27 06:27:05,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:27:05,998.998 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:27:06,073.073 INFO    ] No existing commands found in stream
[2026-06-27 06:27:11,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:27:11,086.086 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-27 06:27:13,857.857 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 06:27:13,859.859 INFO    ] Checking for system updates...
[2026-06-27 06:27:13,880.880 INFO    ] 200
[2026-06-27 06:27:13,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:27:13,912.912 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:27:13,914.914 INFO    ] No update needed
[2026-06-27 06:27:13,915.915 INFO    ] Checking for camera pi updates...
[2026-06-27 06:27:13,935.935 INFO    ] 200
[2026-06-27 06:27:13,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:27:13,960.960 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:27:14,001.001 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:27:14,003.003 INFO    ] No camera update needed
[2026-06-27 06:27:14,004.004 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:27:14,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:27:14,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:27:14,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:27:16,058.058 INFO    ] ================================================
[2026-06-27 06:27:16,073.073 INFO    ] Launching Daemon at Sat Jun 27 06:27:16 IST 2026
[2026-06-27 06:27:16,084.084 INFO    ] ================================================
[2026-06-27 06:27:16,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:27:16
[2026-06-27 06:27:16,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:27:16,906.906 INFO    ] Initializing speech engine...
[2026-06-27 06:27:16,915.915 INFO    ] 2026-06-27 06:27:16
[2026-06-27 06:27:17,120.120 INFO    ] 2026-06-27 06:27:17
[2026-06-27 06:27:17,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:27:17,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:27:17,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:27:17,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:27:17,539.539 INFO    ] time= 27/06/2026 06:27:17
[2026-06-27 06:27:17,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:27:17,568.568 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:27:17,634.634 INFO    ] No existing commands found in stream
[2026-06-27 06:27:22,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:27:22,647.647 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-27 06:27:27,028.028 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 06:27:27,029.029 INFO    ] Checking for system updates...
[2026-06-27 06:27:27,054.054 INFO    ] 200
[2026-06-27 06:27:27,055.055 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:27:27,089.089 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:27:27,090.090 INFO    ] No update needed
[2026-06-27 06:27:27,092.092 INFO    ] Checking for camera pi updates...
[2026-06-27 06:27:27,112.112 INFO    ] 200
[2026-06-27 06:27:27,114.114 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:27:27,139.139 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:27:27,186.186 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:27:27,188.188 INFO    ] No camera update needed
[2026-06-27 06:27:27,189.189 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:27:27,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:27:27,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:27:27,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:27:29,236.236 INFO    ] ================================================
[2026-06-27 06:27:29,251.251 INFO    ] Launching Daemon at Sat Jun 27 06:27:29 IST 2026
[2026-06-27 06:27:29,262.262 INFO    ] ================================================
[2026-06-27 06:27:29,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:27:29
[2026-06-27 06:27:29,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:27:30,087.087 INFO    ] Initializing speech engine...
[2026-06-27 06:27:30,093.093 INFO    ] 2026-06-27 06:27:30
[2026-06-27 06:27:30,301.301 INFO    ] 2026-06-27 06:27:30
[2026-06-27 06:27:30,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:27:30,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:27:30,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:27:30,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:27:30,689.689 INFO    ] time= 27/06/2026 06:27:30
[2026-06-27 06:27:30,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:27:30,693.693 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:27:30,818.818 INFO    ] No existing commands found in stream
[2026-06-27 06:27:35,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:27:35,833.833 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-27 06:27:38,836.836 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:27:38,837.837 INFO    ] Checking for system updates...
[2026-06-27 06:27:38,859.859 INFO    ] 200
[2026-06-27 06:27:38,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:27:38,894.894 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:27:38,895.895 INFO    ] No update needed
[2026-06-27 06:27:38,897.897 INFO    ] Checking for camera pi updates...
[2026-06-27 06:27:38,919.919 INFO    ] 200
[2026-06-27 06:27:38,921.921 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:27:38,944.944 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:27:38,991.991 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:27:38,992.992 INFO    ] No camera update needed
[2026-06-27 06:27:38,994.994 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:27:38,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:27:38,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:27:39,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:27:41,041.041 INFO    ] ================================================
[2026-06-27 06:27:41,056.056 INFO    ] Launching Daemon at Sat Jun 27 06:27:41 IST 2026
[2026-06-27 06:27:41,067.067 INFO    ] ================================================
[2026-06-27 06:27:41,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:27:41
[2026-06-27 06:27:41,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:27:41,838.838 INFO    ] Initializing speech engine...
[2026-06-27 06:27:41,847.847 INFO    ] 2026-06-27 06:27:41
[2026-06-27 06:27:42,062.062 INFO    ] 2026-06-27 06:27:42
[2026-06-27 06:27:42,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:27:42,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:27:42,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:27:42,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:27:42,476.476 INFO    ] time= 27/06/2026 06:27:42
[2026-06-27 06:27:42,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:27:42,511.511 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:27:42,583.583 INFO    ] No existing commands found in stream
[2026-06-27 06:27:47,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:27:47,595.595 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-27 06:27:50,469.469 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 06:27:50,470.470 INFO    ] Checking for system updates...
[2026-06-27 06:27:50,491.491 INFO    ] 200
[2026-06-27 06:27:50,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:27:50,523.523 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:27:50,525.525 INFO    ] No update needed
[2026-06-27 06:27:50,526.526 INFO    ] Checking for camera pi updates...
[2026-06-27 06:27:50,546.546 INFO    ] 200
[2026-06-27 06:27:50,548.548 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:27:50,571.571 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:27:50,616.616 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:27:50,617.617 INFO    ] No camera update needed
[2026-06-27 06:27:50,619.619 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:27:50,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:27:50,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:27:50,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:27:52,665.665 INFO    ] ================================================
[2026-06-27 06:27:52,680.680 INFO    ] Launching Daemon at Sat Jun 27 06:27:52 IST 2026
[2026-06-27 06:27:52,691.691 INFO    ] ================================================
[2026-06-27 06:27:53,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:27:53
[2026-06-27 06:27:53,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:27:53,505.505 INFO    ] Initializing speech engine...
[2026-06-27 06:27:53,511.511 INFO    ] 2026-06-27 06:27:53
[2026-06-27 06:27:53,721.721 INFO    ] 2026-06-27 06:27:53
[2026-06-27 06:27:53,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:27:53,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:27:53,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:27:54,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:27:54,150.150 INFO    ] time= 27/06/2026 06:27:54
[2026-06-27 06:27:54,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:27:54,178.178 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:27:54,246.246 INFO    ] No existing commands found in stream
[2026-06-27 06:27:59,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:27:59,258.258 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-27 06:28:01,731.731 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 06:28:01,733.733 INFO    ] Checking for system updates...
[2026-06-27 06:28:01,760.760 INFO    ] 200
[2026-06-27 06:28:01,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:28:01,806.806 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:28:01,808.808 INFO    ] No update needed
[2026-06-27 06:28:01,810.810 INFO    ] Checking for camera pi updates...
[2026-06-27 06:28:01,837.837 INFO    ] 200
[2026-06-27 06:28:01,839.839 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:28:01,881.881 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:28:01,914.914 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:28:01,916.916 INFO    ] No camera update needed
[2026-06-27 06:28:01,918.918 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:28:01,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:28:01,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:28:01,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:28:03,974.974 INFO    ] ================================================
[2026-06-27 06:28:03,989.989 INFO    ] Launching Daemon at Sat Jun 27 06:28:03 IST 2026
[2026-06-27 06:28:04,999.999 INFO    ] ================================================
[2026-06-27 06:28:04,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:28:04
[2026-06-27 06:28:04,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:28:04,806.806 INFO    ] Initializing speech engine...
[2026-06-27 06:28:04,814.814 INFO    ] 2026-06-27 06:28:04
[2026-06-27 06:28:05,027.027 INFO    ] 2026-06-27 06:28:05
[2026-06-27 06:28:05,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:28:05,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:28:05,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:28:05,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:28:05,392.392 INFO    ] time= 27/06/2026 06:28:05
[2026-06-27 06:28:05,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:28:05,486.486 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:28:05,560.560 INFO    ] No existing commands found in stream
[2026-06-27 06:28:10,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:28:10,570.570 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-27 06:28:12,078.078 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 06:28:12,079.079 INFO    ] Checking for system updates...
[2026-06-27 06:28:12,101.101 INFO    ] 200
[2026-06-27 06:28:12,102.102 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:28:12,133.133 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:28:12,135.135 INFO    ] No update needed
[2026-06-27 06:28:12,137.137 INFO    ] Checking for camera pi updates...
[2026-06-27 06:28:12,157.157 INFO    ] 200
[2026-06-27 06:28:12,158.158 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:28:12,182.182 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:28:12,323.323 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:28:12,325.325 INFO    ] No camera update needed
[2026-06-27 06:28:12,327.327 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:28:12,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:28:12,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:28:12,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:28:14,381.381 INFO    ] ================================================
[2026-06-27 06:28:14,396.396 INFO    ] Launching Daemon at Sat Jun 27 06:28:14 IST 2026
[2026-06-27 06:28:14,407.407 INFO    ] ================================================
[2026-06-27 06:28:14,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:28:14
[2026-06-27 06:28:15,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:28:15,220.220 INFO    ] Initializing speech engine...
[2026-06-27 06:28:15,230.230 INFO    ] 2026-06-27 06:28:15
[2026-06-27 06:28:15,436.436 INFO    ] 2026-06-27 06:28:15
[2026-06-27 06:28:15,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:28:15,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:28:15,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:28:15,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:28:15,847.847 INFO    ] time= 27/06/2026 06:28:15
[2026-06-27 06:28:15,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:28:15,887.887 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:28:15,953.953 INFO    ] No existing commands found in stream
[2026-06-27 06:28:20,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:28:20,967.967 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-27 06:28:23,789.789 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 06:28:23,791.791 INFO    ] Checking for system updates...
[2026-06-27 06:28:23,813.813 INFO    ] 200
[2026-06-27 06:28:23,814.814 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:28:23,845.845 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:28:23,847.847 INFO    ] No update needed
[2026-06-27 06:28:23,848.848 INFO    ] Checking for camera pi updates...
[2026-06-27 06:28:23,868.868 INFO    ] 200
[2026-06-27 06:28:23,869.869 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:28:23,893.893 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:28:23,937.937 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:28:23,939.939 INFO    ] No camera update needed
[2026-06-27 06:28:23,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:28:23,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:28:23,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:28:23,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:28:25,988.988 INFO    ] ================================================
[2026-06-27 06:28:26,007.007 INFO    ] Launching Daemon at Sat Jun 27 06:28:26 IST 2026
[2026-06-27 06:28:26,018.018 INFO    ] ================================================
[2026-06-27 06:28:26,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:28:26
[2026-06-27 06:28:26,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:28:26,826.826 INFO    ] Initializing speech engine...
[2026-06-27 06:28:26,836.836 INFO    ] 2026-06-27 06:28:26
[2026-06-27 06:28:27,041.041 INFO    ] 2026-06-27 06:28:27
[2026-06-27 06:28:27,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:28:27,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:28:27,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:28:27,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:28:27,431.431 INFO    ] time= 27/06/2026 06:28:27
[2026-06-27 06:28:27,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:28:27,514.514 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:28:27,621.621 INFO    ] No existing commands found in stream
[2026-06-27 06:28:32,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:28:32,654.654 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-27 06:28:34,355.355 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:28:34,356.356 INFO    ] Checking for system updates...
[2026-06-27 06:28:34,378.378 INFO    ] 200
[2026-06-27 06:28:34,380.380 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:28:34,410.410 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:28:34,412.412 INFO    ] No update needed
[2026-06-27 06:28:34,413.413 INFO    ] Checking for camera pi updates...
[2026-06-27 06:28:34,433.433 INFO    ] 200
[2026-06-27 06:28:34,435.435 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:28:34,458.458 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:28:34,495.495 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:28:34,496.496 INFO    ] No camera update needed
[2026-06-27 06:28:34,498.498 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:28:34,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:28:34,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:28:34,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:28:36,543.543 INFO    ] ================================================
[2026-06-27 06:28:36,558.558 INFO    ] Launching Daemon at Sat Jun 27 06:28:36 IST 2026
[2026-06-27 06:28:36,570.570 INFO    ] ================================================
[2026-06-27 06:28:36,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:28:36
[2026-06-27 06:28:37,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:28:37,386.386 INFO    ] Initializing speech engine...
[2026-06-27 06:28:37,391.391 INFO    ] 2026-06-27 06:28:37
[2026-06-27 06:28:37,609.609 INFO    ] 2026-06-27 06:28:37
[2026-06-27 06:28:37,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:28:37,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:28:37,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:28:37,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:28:38,048.048 INFO    ] time= 27/06/2026 06:28:37
[2026-06-27 06:28:38,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:28:38,095.095 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:28:38,174.174 INFO    ] No existing commands found in stream
[2026-06-27 06:28:43,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:28:43,211.211 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-27 06:28:44,037.037 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 06:28:44,039.039 INFO    ] Checking for system updates...
[2026-06-27 06:28:44,062.062 INFO    ] 200
[2026-06-27 06:28:44,063.063 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:28:44,096.096 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:28:44,097.097 INFO    ] No update needed
[2026-06-27 06:28:44,099.099 INFO    ] Checking for camera pi updates...
[2026-06-27 06:28:44,118.118 INFO    ] 200
[2026-06-27 06:28:44,119.119 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:28:44,145.145 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:28:44,192.192 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:28:44,193.193 INFO    ] No camera update needed
[2026-06-27 06:28:44,195.195 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:28:44,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:28:44,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:28:44,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:28:46,241.241 INFO    ] ================================================
[2026-06-27 06:28:46,257.257 INFO    ] Launching Daemon at Sat Jun 27 06:28:46 IST 2026
[2026-06-27 06:28:46,268.268 INFO    ] ================================================
[2026-06-27 06:28:46,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:28:46
[2026-06-27 06:28:46,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:28:47,135.135 INFO    ] Initializing speech engine...
[2026-06-27 06:28:47,142.142 INFO    ] 2026-06-27 06:28:47
[2026-06-27 06:28:47,350.350 INFO    ] 2026-06-27 06:28:47
[2026-06-27 06:28:47,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:28:47,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:28:47,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:28:47,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:28:47,775.775 INFO    ] time= 27/06/2026 06:28:47
[2026-06-27 06:28:47,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:28:47,802.802 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:28:47,869.869 INFO    ] No existing commands found in stream
[2026-06-27 06:28:52,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:28:52,882.882 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-27 06:28:53,730.730 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 06:28:53,731.731 INFO    ] Checking for system updates...
[2026-06-27 06:28:53,754.754 INFO    ] 200
[2026-06-27 06:28:53,755.755 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:28:53,790.790 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:28:53,791.791 INFO    ] No update needed
[2026-06-27 06:28:53,793.793 INFO    ] Checking for camera pi updates...
[2026-06-27 06:28:53,813.813 INFO    ] 200
[2026-06-27 06:28:53,814.814 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:28:53,838.838 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:28:53,870.870 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:28:53,872.872 INFO    ] No camera update needed
[2026-06-27 06:28:53,873.873 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:28:53,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:28:53,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:28:53,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:28:55,920.920 INFO    ] ================================================
[2026-06-27 06:28:55,936.936 INFO    ] Launching Daemon at Sat Jun 27 06:28:55 IST 2026
[2026-06-27 06:28:55,947.947 INFO    ] ================================================
[2026-06-27 06:28:56,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:28:56
[2026-06-27 06:28:56,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:28:56,755.755 INFO    ] Initializing speech engine...
[2026-06-27 06:28:56,763.763 INFO    ] 2026-06-27 06:28:56
[2026-06-27 06:28:56,975.975 INFO    ] 2026-06-27 06:28:56
[2026-06-27 06:28:57,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:28:57,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:28:57,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:28:57,339.339 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:28:57,396.396 INFO    ] time= 27/06/2026 06:28:57
[2026-06-27 06:28:57,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:28:57,426.426 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:28:57,491.491 INFO    ] No existing commands found in stream
[2026-06-27 06:29:02,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:29:02,502.502 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-27 06:29:05,112.112 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 06:29:05,114.114 INFO    ] Checking for system updates...
[2026-06-27 06:29:05,135.135 INFO    ] 200
[2026-06-27 06:29:05,137.137 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:29:05,170.170 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:29:05,172.172 INFO    ] No update needed
[2026-06-27 06:29:05,173.173 INFO    ] Checking for camera pi updates...
[2026-06-27 06:29:05,195.195 INFO    ] 200
[2026-06-27 06:29:05,197.197 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:29:05,223.223 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:29:05,258.258 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:29:05,259.259 INFO    ] No camera update needed
[2026-06-27 06:29:05,261.261 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:29:05,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:29:05,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:29:05,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:29:07,310.310 INFO    ] ================================================
[2026-06-27 06:29:07,327.327 INFO    ] Launching Daemon at Sat Jun 27 06:29:07 IST 2026
[2026-06-27 06:29:07,338.338 INFO    ] ================================================
[2026-06-27 06:29:07,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:29:07
[2026-06-27 06:29:08,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:29:08,147.147 INFO    ] Initializing speech engine...
[2026-06-27 06:29:08,157.157 INFO    ] 2026-06-27 06:29:08
[2026-06-27 06:29:08,361.361 INFO    ] 2026-06-27 06:29:08
[2026-06-27 06:29:08,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:29:08,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:29:08,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:29:08,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:29:08,785.785 INFO    ] time= 27/06/2026 06:29:08
[2026-06-27 06:29:08,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:29:08,813.813 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:29:08,879.879 INFO    ] No existing commands found in stream
[2026-06-27 06:29:13,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:29:13,892.892 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-27 06:29:14,408.408 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 06:29:14,410.410 INFO    ] Checking for system updates...
[2026-06-27 06:29:14,432.432 INFO    ] 200
[2026-06-27 06:29:14,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:29:14,468.468 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:29:14,470.470 INFO    ] No update needed
[2026-06-27 06:29:14,471.471 INFO    ] Checking for camera pi updates...
[2026-06-27 06:29:14,496.496 INFO    ] 200
[2026-06-27 06:29:14,497.497 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:29:14,522.522 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:29:14,561.561 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:29:14,563.563 INFO    ] No camera update needed
[2026-06-27 06:29:14,565.565 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:29:14,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:29:14,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:29:14,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:29:16,614.614 INFO    ] ================================================
[2026-06-27 06:29:16,629.629 INFO    ] Launching Daemon at Sat Jun 27 06:29:16 IST 2026
[2026-06-27 06:29:16,641.641 INFO    ] ================================================
[2026-06-27 06:29:16,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:29:16
[2026-06-27 06:29:17,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:29:17,446.446 INFO    ] Initializing speech engine...
[2026-06-27 06:29:17,452.452 INFO    ] 2026-06-27 06:29:17
[2026-06-27 06:29:17,659.659 INFO    ] 2026-06-27 06:29:17
[2026-06-27 06:29:17,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:29:17,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:29:17,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:29:18,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:29:18,085.085 INFO    ] time= 27/06/2026 06:29:18
[2026-06-27 06:29:18,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:29:18,113.113 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:29:18,185.185 INFO    ] No existing commands found in stream
[2026-06-27 06:29:23,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:29:23,212.212 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-27 06:29:27,322.322 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:29:27,324.324 INFO    ] Checking for system updates...
[2026-06-27 06:29:27,346.346 INFO    ] 200
[2026-06-27 06:29:27,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:29:27,381.381 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:29:27,383.383 INFO    ] No update needed
[2026-06-27 06:29:27,385.385 INFO    ] Checking for camera pi updates...
[2026-06-27 06:29:27,405.405 INFO    ] 200
[2026-06-27 06:29:27,406.406 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:29:27,430.430 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:29:27,468.468 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:29:27,470.470 INFO    ] No camera update needed
[2026-06-27 06:29:27,471.471 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:29:27,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:29:27,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:29:27,479.479 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:29:29,519.519 INFO    ] ================================================
[2026-06-27 06:29:29,536.536 INFO    ] Launching Daemon at Sat Jun 27 06:29:29 IST 2026
[2026-06-27 06:29:29,546.546 INFO    ] ================================================
[2026-06-27 06:29:29,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:29:29
[2026-06-27 06:29:30,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:29:30,359.359 INFO    ] Initializing speech engine...
[2026-06-27 06:29:30,372.372 INFO    ] 2026-06-27 06:29:30
[2026-06-27 06:29:30,595.595 INFO    ] 2026-06-27 06:29:30
[2026-06-27 06:29:30,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:29:30,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:29:30,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:29:30,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:29:31,033.033 INFO    ] time= 27/06/2026 06:29:30
[2026-06-27 06:29:31,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:29:31,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:29:31,166.166 INFO    ] No existing commands found in stream
[2026-06-27 06:29:36,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:29:36,174.174 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-27 06:29:40,127.127 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:29:40,129.129 INFO    ] Checking for system updates...
[2026-06-27 06:29:40,149.149 INFO    ] 200
[2026-06-27 06:29:40,151.151 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:29:40,183.183 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:29:40,185.185 INFO    ] No update needed
[2026-06-27 06:29:40,187.187 INFO    ] Checking for camera pi updates...
[2026-06-27 06:29:40,206.206 INFO    ] 200
[2026-06-27 06:29:40,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:29:40,231.231 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:29:40,270.270 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:29:40,271.271 INFO    ] No camera update needed
[2026-06-27 06:29:40,273.273 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:29:40,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:29:40,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:29:40,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:29:42,322.322 INFO    ] ================================================
[2026-06-27 06:29:42,338.338 INFO    ] Launching Daemon at Sat Jun 27 06:29:42 IST 2026
[2026-06-27 06:29:42,349.349 INFO    ] ================================================
[2026-06-27 06:29:42,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:29:42
[2026-06-27 06:29:42,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:29:43,138.138 INFO    ] Initializing speech engine...
[2026-06-27 06:29:43,144.144 INFO    ] 2026-06-27 06:29:43
[2026-06-27 06:29:43,348.348 INFO    ] 2026-06-27 06:29:43
[2026-06-27 06:29:43,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:29:43,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:29:43,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:29:43,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:29:43,759.759 INFO    ] time= 27/06/2026 06:29:43
[2026-06-27 06:29:43,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:29:43,797.797 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:29:43,864.864 INFO    ] No existing commands found in stream
[2026-06-27 06:29:48,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:29:48,876.876 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-27 06:29:50,859.859 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:29:50,860.860 INFO    ] Checking for system updates...
[2026-06-27 06:29:50,883.883 INFO    ] 200
[2026-06-27 06:29:50,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:29:50,915.915 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:29:50,916.916 INFO    ] No update needed
[2026-06-27 06:29:50,917.917 INFO    ] Checking for camera pi updates...
[2026-06-27 06:29:50,937.937 INFO    ] 200
[2026-06-27 06:29:50,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:29:50,962.962 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:29:50,998.998 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:29:51,000.000 INFO    ] No camera update needed
[2026-06-27 06:29:51,001.001 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:29:51,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:29:51,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:29:51,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:29:53,049.049 INFO    ] ================================================
[2026-06-27 06:29:53,065.065 INFO    ] Launching Daemon at Sat Jun 27 06:29:53 IST 2026
[2026-06-27 06:29:53,076.076 INFO    ] ================================================
[2026-06-27 06:29:53,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:29:53
[2026-06-27 06:29:53,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:29:53,956.956 INFO    ] Initializing speech engine...
[2026-06-27 06:29:53,961.961 INFO    ] 2026-06-27 06:29:53
[2026-06-27 06:29:54,173.173 INFO    ] 2026-06-27 06:29:54
[2026-06-27 06:29:54,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:29:54,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:29:54,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:29:54,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:29:54,600.600 INFO    ] time= 27/06/2026 06:29:54
[2026-06-27 06:29:54,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:29:54,629.629 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:29:54,697.697 INFO    ] No existing commands found in stream
[2026-06-27 06:29:59,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:29:59,710.710 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-27 06:30:00,614.614 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:30:00,615.615 INFO    ] Checking for system updates...
[2026-06-27 06:30:00,637.637 INFO    ] 200
[2026-06-27 06:30:00,638.638 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:30:00,669.669 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:30:00,671.671 INFO    ] No update needed
[2026-06-27 06:30:00,672.672 INFO    ] Checking for camera pi updates...
[2026-06-27 06:30:00,692.692 INFO    ] 200
[2026-06-27 06:30:00,694.694 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:30:00,718.718 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:30:00,757.757 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:30:00,758.758 INFO    ] No camera update needed
[2026-06-27 06:30:00,759.759 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:30:00,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:30:00,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:30:00,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:30:02,824.824 INFO    ] ================================================
[2026-06-27 06:30:02,841.841 INFO    ] Launching Daemon at Sat Jun 27 06:30:02 IST 2026
[2026-06-27 06:30:02,850.850 INFO    ] ================================================
[2026-06-27 06:30:03,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:30:03
[2026-06-27 06:30:03,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:30:03,697.697 INFO    ] Initializing speech engine...
[2026-06-27 06:30:03,710.710 INFO    ] 2026-06-27 06:30:03
[2026-06-27 06:30:03,929.929 INFO    ] 2026-06-27 06:30:03
[2026-06-27 06:30:03,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:30:04,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:30:04,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:30:04,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:30:04,355.355 INFO    ] time= 27/06/2026 06:30:04
[2026-06-27 06:30:04,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:30:04,438.438 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:30:04,538.538 INFO    ] No existing commands found in stream
[2026-06-27 06:30:09,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:30:09,555.555 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-27 06:30:10,982.982 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:30:10,984.984 INFO    ] Checking for system updates...
[2026-06-27 06:30:11,006.006 INFO    ] 200
[2026-06-27 06:30:11,008.008 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:30:11,042.042 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:30:11,044.044 INFO    ] No update needed
[2026-06-27 06:30:11,045.045 INFO    ] Checking for camera pi updates...
[2026-06-27 06:30:11,066.066 INFO    ] 200
[2026-06-27 06:30:11,067.067 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:30:11,093.093 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:30:11,130.130 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:30:11,132.132 INFO    ] No camera update needed
[2026-06-27 06:30:11,133.133 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:30:11,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:30:11,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:30:11,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:30:13,182.182 INFO    ] ================================================
[2026-06-27 06:30:13,197.197 INFO    ] Launching Daemon at Sat Jun 27 06:30:13 IST 2026
[2026-06-27 06:30:13,209.209 INFO    ] ================================================
[2026-06-27 06:30:13,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:30:13
[2026-06-27 06:30:13,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:30:13,992.992 INFO    ] Initializing speech engine...
[2026-06-27 06:30:13,996.996 INFO    ] 2026-06-27 06:30:13
[2026-06-27 06:30:14,226.226 INFO    ] 2026-06-27 06:30:14
[2026-06-27 06:30:14,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:30:14,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:30:14,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:30:14,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:30:14,643.643 INFO    ] time= 27/06/2026 06:30:14
[2026-06-27 06:30:14,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:30:14,704.704 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:30:14,780.780 INFO    ] No existing commands found in stream
[2026-06-27 06:30:19,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:30:19,792.792 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-27 06:30:23,796.796 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 06:30:23,797.797 INFO    ] Checking for system updates...
[2026-06-27 06:30:23,818.818 INFO    ] 200
[2026-06-27 06:30:23,819.819 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:30:23,849.849 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:30:23,851.851 INFO    ] No update needed
[2026-06-27 06:30:23,852.852 INFO    ] Checking for camera pi updates...
[2026-06-27 06:30:23,872.872 INFO    ] 200
[2026-06-27 06:30:23,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:30:23,898.898 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:30:24,040.040 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:30:24,041.041 INFO    ] No camera update needed
[2026-06-27 06:30:24,042.042 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:30:24,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:30:24,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:30:24,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:30:26,091.091 INFO    ] ================================================
[2026-06-27 06:30:26,107.107 INFO    ] Launching Daemon at Sat Jun 27 06:30:26 IST 2026
[2026-06-27 06:30:26,118.118 INFO    ] ================================================
[2026-06-27 06:30:26,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:30:26
[2026-06-27 06:30:26,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:30:26,974.974 INFO    ] Initializing speech engine...
[2026-06-27 06:30:26,980.980 INFO    ] 2026-06-27 06:30:26
[2026-06-27 06:30:27,186.186 INFO    ] 2026-06-27 06:30:27
[2026-06-27 06:30:27,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:30:27,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:30:27,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:30:27,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:30:27,627.627 INFO    ] time= 27/06/2026 06:30:27
[2026-06-27 06:30:27,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:30:27,635.635 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:30:27,700.700 INFO    ] No existing commands found in stream
[2026-06-27 06:30:32,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:30:32,712.712 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-27 06:30:37,083.083 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 06:30:37,085.085 INFO    ] Checking for system updates...
[2026-06-27 06:30:37,106.106 INFO    ] 200
[2026-06-27 06:30:37,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:30:37,138.138 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:30:37,139.139 INFO    ] No update needed
[2026-06-27 06:30:37,140.140 INFO    ] Checking for camera pi updates...
[2026-06-27 06:30:37,160.160 INFO    ] 200
[2026-06-27 06:30:37,162.162 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:30:37,186.186 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:30:37,224.224 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:30:37,225.225 INFO    ] No camera update needed
[2026-06-27 06:30:37,226.226 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:30:37,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:30:37,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:30:37,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:30:39,272.272 INFO    ] ================================================
[2026-06-27 06:30:39,288.288 INFO    ] Launching Daemon at Sat Jun 27 06:30:39 IST 2026
[2026-06-27 06:30:39,299.299 INFO    ] ================================================
[2026-06-27 06:30:39,664.664 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:30:39
[2026-06-27 06:30:40,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:30:40,153.153 INFO    ] Initializing speech engine...
[2026-06-27 06:30:40,159.159 INFO    ] 2026-06-27 06:30:40
[2026-06-27 06:30:40,368.368 INFO    ] 2026-06-27 06:30:40
[2026-06-27 06:30:40,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:30:40,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:30:40,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:30:40,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:30:40,794.794 INFO    ] time= 27/06/2026 06:30:40
[2026-06-27 06:30:40,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:30:40,822.822 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:30:40,914.914 INFO    ] No existing commands found in stream
[2026-06-27 06:30:45,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:30:45,931.931 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-27 06:30:48,966.966 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:30:48,968.968 INFO    ] Checking for system updates...
[2026-06-27 06:30:48,989.989 INFO    ] 200
[2026-06-27 06:30:48,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:30:49,022.022 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:30:49,023.023 INFO    ] No update needed
[2026-06-27 06:30:49,025.025 INFO    ] Checking for camera pi updates...
[2026-06-27 06:30:49,045.045 INFO    ] 200
[2026-06-27 06:30:49,046.046 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:30:49,072.072 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:30:49,112.112 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:30:49,114.114 INFO    ] No camera update needed
[2026-06-27 06:30:49,115.115 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:30:49,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:30:49,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:30:49,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:30:51,163.163 INFO    ] ================================================
[2026-06-27 06:30:51,179.179 INFO    ] Launching Daemon at Sat Jun 27 06:30:51 IST 2026
[2026-06-27 06:30:51,190.190 INFO    ] ================================================
[2026-06-27 06:30:51,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:30:51
[2026-06-27 06:30:51,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:30:52,019.019 INFO    ] Initializing speech engine...
[2026-06-27 06:30:52,029.029 INFO    ] 2026-06-27 06:30:52
[2026-06-27 06:30:52,235.235 INFO    ] 2026-06-27 06:30:52
[2026-06-27 06:30:52,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:30:52,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:30:52,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:30:52,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:30:52,669.669 INFO    ] time= 27/06/2026 06:30:52
[2026-06-27 06:30:52,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:30:52,686.686 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:30:52,753.753 INFO    ] No existing commands found in stream
[2026-06-27 06:30:57,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:30:57,765.765 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-27 06:31:00,908.908 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 06:31:00,910.910 INFO    ] Checking for system updates...
[2026-06-27 06:31:00,930.930 INFO    ] 200
[2026-06-27 06:31:00,931.931 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:31:00,962.962 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:31:00,963.963 INFO    ] No update needed
[2026-06-27 06:31:00,965.965 INFO    ] Checking for camera pi updates...
[2026-06-27 06:31:00,985.985 INFO    ] 200
[2026-06-27 06:31:00,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:31:01,009.009 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:31:01,069.069 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:31:01,070.070 INFO    ] No camera update needed
[2026-06-27 06:31:01,072.072 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:31:01,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:31:01,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:31:01,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:31:03,112.112 INFO    ] ================================================
[2026-06-27 06:31:03,128.128 INFO    ] Launching Daemon at Sat Jun 27 06:31:03 IST 2026
[2026-06-27 06:31:03,140.140 INFO    ] ================================================
[2026-06-27 06:31:03,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:31:03
[2026-06-27 06:31:03,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:31:03,907.907 INFO    ] Initializing speech engine...
[2026-06-27 06:31:03,911.911 INFO    ] 2026-06-27 06:31:03
[2026-06-27 06:31:04,129.129 INFO    ] 2026-06-27 06:31:04
[2026-06-27 06:31:04,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:31:04,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:31:04,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:31:04,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:31:04,553.553 INFO    ] time= 27/06/2026 06:31:04
[2026-06-27 06:31:04,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:31:04,583.583 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:31:04,650.650 INFO    ] No existing commands found in stream
[2026-06-27 06:31:09,661.661 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:31:09,664.664 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-27 06:31:11,059.059 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:31:11,060.060 INFO    ] Checking for system updates...
[2026-06-27 06:31:11,081.081 INFO    ] 200
[2026-06-27 06:31:11,082.082 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:31:11,115.115 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:31:11,116.116 INFO    ] No update needed
[2026-06-27 06:31:11,117.117 INFO    ] Checking for camera pi updates...
[2026-06-27 06:31:11,137.137 INFO    ] 200
[2026-06-27 06:31:11,138.138 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:31:11,161.161 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:31:11,203.203 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:31:11,205.205 INFO    ] No camera update needed
[2026-06-27 06:31:11,206.206 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:31:11,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:31:11,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:31:11,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:31:13,251.251 INFO    ] ================================================
[2026-06-27 06:31:13,267.267 INFO    ] Launching Daemon at Sat Jun 27 06:31:13 IST 2026
[2026-06-27 06:31:13,278.278 INFO    ] ================================================
[2026-06-27 06:31:13,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:31:13
[2026-06-27 06:31:13,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:31:14,103.103 INFO    ] Initializing speech engine...
[2026-06-27 06:31:14,109.109 INFO    ] 2026-06-27 06:31:14
[2026-06-27 06:31:14,310.310 INFO    ] 2026-06-27 06:31:14
[2026-06-27 06:31:14,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:31:14,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:31:14,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:31:14,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:31:14,730.730 INFO    ] time= 27/06/2026 06:31:14
[2026-06-27 06:31:14,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:31:14,759.759 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:31:14,826.826 INFO    ] No existing commands found in stream
[2026-06-27 06:31:19,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:31:19,838.838 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-27 06:31:23,393.393 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:31:23,394.394 INFO    ] Checking for system updates...
[2026-06-27 06:31:23,415.415 INFO    ] 200
[2026-06-27 06:31:23,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:31:23,447.447 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:31:23,448.448 INFO    ] No update needed
[2026-06-27 06:31:23,450.450 INFO    ] Checking for camera pi updates...
[2026-06-27 06:31:23,469.469 INFO    ] 200
[2026-06-27 06:31:23,470.470 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:31:23,493.493 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:31:23,544.544 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:31:23,545.545 INFO    ] No camera update needed
[2026-06-27 06:31:23,547.547 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:31:23,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:31:23,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:31:23,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:31:25,595.595 INFO    ] ================================================
[2026-06-27 06:31:25,612.612 INFO    ] Launching Daemon at Sat Jun 27 06:31:25 IST 2026
[2026-06-27 06:31:25,623.623 INFO    ] ================================================
[2026-06-27 06:31:25,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:31:25
[2026-06-27 06:31:26,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:31:26,451.451 INFO    ] Initializing speech engine...
[2026-06-27 06:31:26,456.456 INFO    ] 2026-06-27 06:31:26
[2026-06-27 06:31:26,680.680 INFO    ] 2026-06-27 06:31:26
[2026-06-27 06:31:26,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:31:26,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:31:26,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:31:27,044.044 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:31:27,112.112 INFO    ] time= 27/06/2026 06:31:27
[2026-06-27 06:31:27,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:31:27,142.142 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:31:27,256.256 INFO    ] No existing commands found in stream
[2026-06-27 06:31:32,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:31:32,267.267 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-27 06:31:36,394.394 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 06:31:36,396.396 INFO    ] Checking for system updates...
[2026-06-27 06:31:36,417.417 INFO    ] 200
[2026-06-27 06:31:36,419.419 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:31:36,451.451 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:31:36,453.453 INFO    ] No update needed
[2026-06-27 06:31:36,454.454 INFO    ] Checking for camera pi updates...
[2026-06-27 06:31:36,474.474 INFO    ] 200
[2026-06-27 06:31:36,476.476 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:31:36,500.500 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:31:36,541.541 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:31:36,542.542 INFO    ] No camera update needed
[2026-06-27 06:31:36,543.543 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:31:36,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:31:36,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:31:36,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:31:38,589.589 INFO    ] ================================================
[2026-06-27 06:31:38,605.605 INFO    ] Launching Daemon at Sat Jun 27 06:31:38 IST 2026
[2026-06-27 06:31:38,616.616 INFO    ] ================================================
[2026-06-27 06:31:38,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:31:38
[2026-06-27 06:31:39,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:31:39,409.409 INFO    ] Initializing speech engine...
[2026-06-27 06:31:39,414.414 INFO    ] 2026-06-27 06:31:39
[2026-06-27 06:31:39,620.620 INFO    ] 2026-06-27 06:31:39
[2026-06-27 06:31:39,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:31:39,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:31:39,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:31:39,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:31:40,038.038 INFO    ] time= 27/06/2026 06:31:39
[2026-06-27 06:31:40,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:31:40,075.075 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:31:40,149.149 INFO    ] No existing commands found in stream
[2026-06-27 06:31:45,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:31:45,161.161 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-27 06:31:47,346.346 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 06:31:47,347.347 INFO    ] Checking for system updates...
[2026-06-27 06:31:47,368.368 INFO    ] 200
[2026-06-27 06:31:47,369.369 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:31:47,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:31:47,401.401 INFO    ] No update needed
[2026-06-27 06:31:47,402.402 INFO    ] Checking for camera pi updates...
[2026-06-27 06:31:47,422.422 INFO    ] 200
[2026-06-27 06:31:47,423.423 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:31:47,447.447 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:31:47,493.493 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:31:47,495.495 INFO    ] No camera update needed
[2026-06-27 06:31:47,496.496 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:31:47,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:31:47,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:31:47,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:31:49,541.541 INFO    ] ================================================
[2026-06-27 06:31:49,556.556 INFO    ] Launching Daemon at Sat Jun 27 06:31:49 IST 2026
[2026-06-27 06:31:49,568.568 INFO    ] ================================================
[2026-06-27 06:31:49,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:31:49
[2026-06-27 06:31:50,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:31:50,355.355 INFO    ] Initializing speech engine...
[2026-06-27 06:31:50,359.359 INFO    ] 2026-06-27 06:31:50
[2026-06-27 06:31:50,565.565 INFO    ] 2026-06-27 06:31:50
[2026-06-27 06:31:50,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:31:50,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:31:50,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:31:50,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:31:50,982.982 INFO    ] time= 27/06/2026 06:31:50
[2026-06-27 06:31:51,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:31:51,007.007 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:31:51,078.078 INFO    ] No existing commands found in stream
[2026-06-27 06:31:56,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:31:56,090.090 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-27 06:31:59,574.574 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:31:59,575.575 INFO    ] Checking for system updates...
[2026-06-27 06:31:59,596.596 INFO    ] 200
[2026-06-27 06:31:59,597.597 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:31:59,627.627 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:31:59,629.629 INFO    ] No update needed
[2026-06-27 06:31:59,630.630 INFO    ] Checking for camera pi updates...
[2026-06-27 06:31:59,650.650 INFO    ] 200
[2026-06-27 06:31:59,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:31:59,674.674 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:31:59,711.711 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:31:59,713.713 INFO    ] No camera update needed
[2026-06-27 06:31:59,714.714 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:31:59,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:31:59,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:31:59,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:32:01,761.761 INFO    ] ================================================
[2026-06-27 06:32:01,777.777 INFO    ] Launching Daemon at Sat Jun 27 06:32:01 IST 2026
[2026-06-27 06:32:01,788.788 INFO    ] ================================================
[2026-06-27 06:32:02,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:32:02
[2026-06-27 06:32:02,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:32:02,840.840 INFO    ] Initializing speech engine...
[2026-06-27 06:32:02,848.848 INFO    ] 2026-06-27 06:32:02
[2026-06-27 06:32:03,055.055 INFO    ] 2026-06-27 06:32:03
[2026-06-27 06:32:03,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:32:03,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:32:03,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:32:03,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:32:03,538.538 INFO    ] time= 27/06/2026 06:32:03
[2026-06-27 06:32:03,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:32:03,584.584 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:32:03,659.659 INFO    ] No existing commands found in stream
[2026-06-27 06:32:08,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:32:08,673.673 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-27 06:32:09,348.348 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 06:32:09,349.349 INFO    ] Checking for system updates...
[2026-06-27 06:32:09,371.371 INFO    ] 200
[2026-06-27 06:32:09,373.373 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:32:09,403.403 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:32:09,405.405 INFO    ] No update needed
[2026-06-27 06:32:09,406.406 INFO    ] Checking for camera pi updates...
[2026-06-27 06:32:09,428.428 INFO    ] 200
[2026-06-27 06:32:09,430.430 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:32:09,453.453 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:32:09,491.491 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:32:09,492.492 INFO    ] No camera update needed
[2026-06-27 06:32:09,494.494 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:32:09,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:32:09,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:32:09,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:32:11,541.541 INFO    ] ================================================
[2026-06-27 06:32:11,557.557 INFO    ] Launching Daemon at Sat Jun 27 06:32:11 IST 2026
[2026-06-27 06:32:11,569.569 INFO    ] ================================================
[2026-06-27 06:32:11,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:32:11
[2026-06-27 06:32:12,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:32:12,379.379 INFO    ] Initializing speech engine...
[2026-06-27 06:32:12,387.387 INFO    ] 2026-06-27 06:32:12
[2026-06-27 06:32:12,600.600 INFO    ] 2026-06-27 06:32:12
[2026-06-27 06:32:12,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:32:12,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:32:12,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:32:12,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:32:13,013.013 INFO    ] time= 27/06/2026 06:32:12
[2026-06-27 06:32:13,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:32:13,051.051 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:32:13,119.119 INFO    ] No existing commands found in stream
[2026-06-27 06:32:18,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:32:18,130.130 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-27 06:32:19,666.666 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 06:32:19,667.667 INFO    ] Checking for system updates...
[2026-06-27 06:32:19,687.687 INFO    ] 200
[2026-06-27 06:32:19,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:32:19,719.719 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:32:19,721.721 INFO    ] No update needed
[2026-06-27 06:32:19,722.722 INFO    ] Checking for camera pi updates...
[2026-06-27 06:32:19,742.742 INFO    ] 200
[2026-06-27 06:32:19,743.743 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:32:19,771.771 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:32:19,798.798 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:32:19,799.799 INFO    ] No camera update needed
[2026-06-27 06:32:19,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:32:19,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:32:19,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:32:19,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:32:21,839.839 INFO    ] ================================================
[2026-06-27 06:32:21,848.848 INFO    ] Launching Daemon at Sat Jun 27 06:32:21 IST 2026
[2026-06-27 06:32:21,854.854 INFO    ] ================================================
[2026-06-27 06:32:22,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:32:22
[2026-06-27 06:32:22,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:32:22,740.740 INFO    ] Initializing speech engine...
[2026-06-27 06:32:22,745.745 INFO    ] 2026-06-27 06:32:22
[2026-06-27 06:32:22,956.956 INFO    ] 2026-06-27 06:32:22
[2026-06-27 06:32:22,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:32:23,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:32:23,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:32:23,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:32:23,356.356 INFO    ] time= 27/06/2026 06:32:23
[2026-06-27 06:32:23,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:32:23,412.412 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:32:23,522.522 INFO    ] No existing commands found in stream
[2026-06-27 06:32:28,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:32:28,537.537 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-27 06:32:29,676.676 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 06:32:29,678.678 INFO    ] Checking for system updates...
[2026-06-27 06:32:29,701.701 INFO    ] 200
[2026-06-27 06:32:29,703.703 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:32:29,736.736 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:32:29,737.737 INFO    ] No update needed
[2026-06-27 06:32:29,738.738 INFO    ] Checking for camera pi updates...
[2026-06-27 06:32:29,760.760 INFO    ] 200
[2026-06-27 06:32:29,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:32:29,788.788 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:32:29,931.931 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:32:29,933.933 INFO    ] No camera update needed
[2026-06-27 06:32:29,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:32:29,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:32:29,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:32:29,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:32:31,978.978 INFO    ] ================================================
[2026-06-27 06:32:32,989.989 INFO    ] Launching Daemon at Sat Jun 27 06:32:31 IST 2026
[2026-06-27 06:32:32,004.004 INFO    ] ================================================
[2026-06-27 06:32:32,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:32:32
[2026-06-27 06:32:32,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:32:32,831.831 INFO    ] Initializing speech engine...
[2026-06-27 06:32:32,836.836 INFO    ] 2026-06-27 06:32:32
[2026-06-27 06:32:33,044.044 INFO    ] 2026-06-27 06:32:33
[2026-06-27 06:32:33,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:32:33,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:32:33,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:32:33,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:32:33,451.451 INFO    ] time= 27/06/2026 06:32:33
[2026-06-27 06:32:33,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:32:33,491.491 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:32:33,561.561 INFO    ] No existing commands found in stream
[2026-06-27 06:32:38,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:32:38,574.574 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-27 06:32:40,026.026 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 06:32:40,027.027 INFO    ] Checking for system updates...
[2026-06-27 06:32:40,050.050 INFO    ] 200
[2026-06-27 06:32:40,051.051 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:32:40,082.082 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:32:40,083.083 INFO    ] No update needed
[2026-06-27 06:32:40,085.085 INFO    ] Checking for camera pi updates...
[2026-06-27 06:32:40,107.107 INFO    ] 200
[2026-06-27 06:32:40,109.109 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:32:40,132.132 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:32:40,174.174 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:32:40,176.176 INFO    ] No camera update needed
[2026-06-27 06:32:40,177.177 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:32:40,178.178 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:32:40,181.181 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:32:40,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:32:42,227.227 INFO    ] ================================================
[2026-06-27 06:32:42,246.246 INFO    ] Launching Daemon at Sat Jun 27 06:32:42 IST 2026
[2026-06-27 06:32:42,257.257 INFO    ] ================================================
[2026-06-27 06:32:42,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:32:42
[2026-06-27 06:32:42,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:32:43,068.068 INFO    ] Initializing speech engine...
[2026-06-27 06:32:43,071.071 INFO    ] 2026-06-27 06:32:43
[2026-06-27 06:32:43,290.290 INFO    ] 2026-06-27 06:32:43
[2026-06-27 06:32:43,319.319 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:32:43,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:32:43,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:32:43,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:32:43,712.712 INFO    ] time= 27/06/2026 06:32:43
[2026-06-27 06:32:43,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:32:43,742.742 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:32:43,810.810 INFO    ] No existing commands found in stream
[2026-06-27 06:32:48,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:32:48,819.819 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-27 06:32:51,254.254 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 06:32:51,256.256 INFO    ] Checking for system updates...
[2026-06-27 06:32:51,277.277 INFO    ] 200
[2026-06-27 06:32:51,279.279 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:32:51,310.310 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:32:51,311.311 INFO    ] No update needed
[2026-06-27 06:32:51,313.313 INFO    ] Checking for camera pi updates...
[2026-06-27 06:32:51,334.334 INFO    ] 200
[2026-06-27 06:32:51,336.336 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:32:51,362.362 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:32:51,396.396 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:32:51,397.397 INFO    ] No camera update needed
[2026-06-27 06:32:51,399.399 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:32:51,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:32:51,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:32:51,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:32:53,449.449 INFO    ] ================================================
[2026-06-27 06:32:53,469.469 INFO    ] Launching Daemon at Sat Jun 27 06:32:53 IST 2026
[2026-06-27 06:32:53,481.481 INFO    ] ================================================
[2026-06-27 06:32:53,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:32:53
[2026-06-27 06:32:54,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:32:54,298.298 INFO    ] Initializing speech engine...
[2026-06-27 06:32:54,312.312 INFO    ] 2026-06-27 06:32:54
[2026-06-27 06:32:54,521.521 INFO    ] 2026-06-27 06:32:54
[2026-06-27 06:32:54,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:32:54,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:32:54,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:32:54,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:32:54,945.945 INFO    ] time= 27/06/2026 06:32:54
[2026-06-27 06:32:54,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:32:55,003.003 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:32:55,082.082 INFO    ] No existing commands found in stream
[2026-06-27 06:33:00,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:33:00,096.096 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-27 06:33:02,025.025 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 06:33:02,027.027 INFO    ] Checking for system updates...
[2026-06-27 06:33:02,074.074 INFO    ] 200
[2026-06-27 06:33:02,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:33:02,127.127 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:33:02,128.128 INFO    ] No update needed
[2026-06-27 06:33:02,129.129 INFO    ] Checking for camera pi updates...
[2026-06-27 06:33:02,155.155 INFO    ] 200
[2026-06-27 06:33:02,157.157 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:33:02,183.183 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:33:02,216.216 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:33:02,219.219 INFO    ] No camera update needed
[2026-06-27 06:33:02,221.221 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:33:02,223.223 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:33:02,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:33:02,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:33:04,269.269 INFO    ] ================================================
[2026-06-27 06:33:04,286.286 INFO    ] Launching Daemon at Sat Jun 27 06:33:04 IST 2026
[2026-06-27 06:33:04,297.297 INFO    ] ================================================
[2026-06-27 06:33:04,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:33:04
[2026-06-27 06:33:05,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:33:05,174.174 INFO    ] Initializing speech engine...
[2026-06-27 06:33:05,180.180 INFO    ] 2026-06-27 06:33:05
[2026-06-27 06:33:05,389.389 INFO    ] 2026-06-27 06:33:05
[2026-06-27 06:33:05,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:33:05,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:33:05,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:33:05,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:33:05,831.831 INFO    ] time= 27/06/2026 06:33:05
[2026-06-27 06:33:05,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:33:05,861.861 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:33:05,928.928 INFO    ] No existing commands found in stream
[2026-06-27 06:33:10,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:33:10,946.946 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-27 06:33:14,396.396 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 06:33:14,398.398 INFO    ] Checking for system updates...
[2026-06-27 06:33:14,419.419 INFO    ] 200
[2026-06-27 06:33:14,421.421 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:33:14,452.452 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:33:14,454.454 INFO    ] No update needed
[2026-06-27 06:33:14,455.455 INFO    ] Checking for camera pi updates...
[2026-06-27 06:33:14,475.475 INFO    ] 200
[2026-06-27 06:33:14,477.477 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:33:14,501.501 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:33:14,538.538 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:33:14,540.540 INFO    ] No camera update needed
[2026-06-27 06:33:14,541.541 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:33:14,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:33:14,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:33:14,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:33:16,590.590 INFO    ] ================================================
[2026-06-27 06:33:16,605.605 INFO    ] Launching Daemon at Sat Jun 27 06:33:16 IST 2026
[2026-06-27 06:33:16,617.617 INFO    ] ================================================
[2026-06-27 06:33:16,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:33:16
[2026-06-27 06:33:17,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:33:17,481.481 INFO    ] Initializing speech engine...
[2026-06-27 06:33:17,493.493 INFO    ] 2026-06-27 06:33:17
[2026-06-27 06:33:17,726.726 INFO    ] 2026-06-27 06:33:17
[2026-06-27 06:33:17,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:33:17,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:33:17,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:33:18,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:33:18,146.146 INFO    ] time= 27/06/2026 06:33:18
[2026-06-27 06:33:18,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:33:18,174.174 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:33:18,265.265 INFO    ] No existing commands found in stream
[2026-06-27 06:33:23,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:33:23,279.279 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-27 06:33:27,231.231 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 06:33:27,232.232 INFO    ] Checking for system updates...
[2026-06-27 06:33:27,256.256 INFO    ] 200
[2026-06-27 06:33:27,257.257 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:33:27,288.288 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:33:27,290.290 INFO    ] No update needed
[2026-06-27 06:33:27,291.291 INFO    ] Checking for camera pi updates...
[2026-06-27 06:33:27,319.319 INFO    ] 200
[2026-06-27 06:33:27,321.321 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:33:27,357.357 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:33:27,399.399 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:33:27,400.400 INFO    ] No camera update needed
[2026-06-27 06:33:27,402.402 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:33:27,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:33:27,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:33:27,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:33:29,448.448 INFO    ] ================================================
[2026-06-27 06:33:29,464.464 INFO    ] Launching Daemon at Sat Jun 27 06:33:29 IST 2026
[2026-06-27 06:33:29,475.475 INFO    ] ================================================
[2026-06-27 06:33:29,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:33:29
[2026-06-27 06:33:30,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:33:30,282.282 INFO    ] Initializing speech engine...
[2026-06-27 06:33:30,288.288 INFO    ] 2026-06-27 06:33:30
[2026-06-27 06:33:30,496.496 INFO    ] 2026-06-27 06:33:30
[2026-06-27 06:33:30,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:33:30,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:33:30,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:33:30,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:33:30,914.914 INFO    ] time= 27/06/2026 06:33:30
[2026-06-27 06:33:30,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:33:30,948.948 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:33:31,016.016 INFO    ] No existing commands found in stream
[2026-06-27 06:33:36,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:33:36,028.028 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-27 06:33:38,571.571 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 06:33:38,573.573 INFO    ] Checking for system updates...
[2026-06-27 06:33:38,593.593 INFO    ] 200
[2026-06-27 06:33:38,595.595 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:33:38,627.627 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:33:38,629.629 INFO    ] No update needed
[2026-06-27 06:33:38,630.630 INFO    ] Checking for camera pi updates...
[2026-06-27 06:33:38,649.649 INFO    ] 200
[2026-06-27 06:33:38,650.650 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:33:38,674.674 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:33:38,712.712 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:33:38,713.713 INFO    ] No camera update needed
[2026-06-27 06:33:38,715.715 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:33:38,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:33:38,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:33:38,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:33:40,761.761 INFO    ] ================================================
[2026-06-27 06:33:40,777.777 INFO    ] Launching Daemon at Sat Jun 27 06:33:40 IST 2026
[2026-06-27 06:33:40,789.789 INFO    ] ================================================
[2026-06-27 06:33:41,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:33:41
[2026-06-27 06:33:41,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:33:41,598.598 INFO    ] Initializing speech engine...
[2026-06-27 06:33:41,612.612 INFO    ] 2026-06-27 06:33:41
[2026-06-27 06:33:41,822.822 INFO    ] 2026-06-27 06:33:41
[2026-06-27 06:33:41,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:33:42,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:33:42,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:33:42,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:33:42,267.267 INFO    ] time= 27/06/2026 06:33:42
[2026-06-27 06:33:42,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:33:42,275.275 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:33:42,343.343 INFO    ] No existing commands found in stream
[2026-06-27 06:33:47,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:33:47,371.371 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-27 06:33:49,749.749 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 06:33:49,750.750 INFO    ] Checking for system updates...
[2026-06-27 06:33:49,771.771 INFO    ] 200
[2026-06-27 06:33:49,773.773 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:33:49,803.803 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:33:49,805.805 INFO    ] No update needed
[2026-06-27 06:33:49,806.806 INFO    ] Checking for camera pi updates...
[2026-06-27 06:33:49,828.828 INFO    ] 200
[2026-06-27 06:33:49,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:33:49,856.856 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:33:49,903.903 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:33:49,905.905 INFO    ] No camera update needed
[2026-06-27 06:33:49,906.906 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:33:49,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:33:49,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:33:49,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:33:51,954.954 INFO    ] ================================================
[2026-06-27 06:33:51,970.970 INFO    ] Launching Daemon at Sat Jun 27 06:33:51 IST 2026
[2026-06-27 06:33:51,981.981 INFO    ] ================================================
[2026-06-27 06:33:52,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:33:52
[2026-06-27 06:33:52,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:33:52,758.758 INFO    ] Initializing speech engine...
[2026-06-27 06:33:52,766.766 INFO    ] 2026-06-27 06:33:52
[2026-06-27 06:33:52,980.980 INFO    ] 2026-06-27 06:33:52
[2026-06-27 06:33:53,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:33:53,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:33:53,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:33:53,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:33:53,405.405 INFO    ] time= 27/06/2026 06:33:53
[2026-06-27 06:33:53,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:33:53,433.433 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:33:53,500.500 INFO    ] No existing commands found in stream
[2026-06-27 06:33:58,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:33:58,517.517 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-27 06:33:59,696.696 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:33:59,697.697 INFO    ] Checking for system updates...
[2026-06-27 06:33:59,718.718 INFO    ] 200
[2026-06-27 06:33:59,719.719 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:33:59,753.753 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:33:59,754.754 INFO    ] No update needed
[2026-06-27 06:33:59,755.755 INFO    ] Checking for camera pi updates...
[2026-06-27 06:33:59,776.776 INFO    ] 200
[2026-06-27 06:33:59,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:33:59,802.802 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:33:59,844.844 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:33:59,845.845 INFO    ] No camera update needed
[2026-06-27 06:33:59,847.847 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:33:59,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:33:59,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:33:59,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:34:01,902.902 INFO    ] ================================================
[2026-06-27 06:34:01,916.916 INFO    ] Launching Daemon at Sat Jun 27 06:34:01 IST 2026
[2026-06-27 06:34:01,933.933 INFO    ] ================================================
[2026-06-27 06:34:02,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:34:02
[2026-06-27 06:34:02,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:34:02,847.847 INFO    ] Initializing speech engine...
[2026-06-27 06:34:02,852.852 INFO    ] 2026-06-27 06:34:02
[2026-06-27 06:34:03,062.062 INFO    ] 2026-06-27 06:34:03
[2026-06-27 06:34:03,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:34:03,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:34:03,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:34:03,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:34:03,481.481 INFO    ] time= 27/06/2026 06:34:03
[2026-06-27 06:34:03,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:34:03,516.516 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:34:03,583.583 INFO    ] No existing commands found in stream
[2026-06-27 06:34:08,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:34:08,595.595 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-27 06:34:10,619.619 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 06:34:10,620.620 INFO    ] Checking for system updates...
[2026-06-27 06:34:10,641.641 INFO    ] 200
[2026-06-27 06:34:10,642.642 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:34:10,672.672 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:34:10,674.674 INFO    ] No update needed
[2026-06-27 06:34:10,675.675 INFO    ] Checking for camera pi updates...
[2026-06-27 06:34:10,695.695 INFO    ] 200
[2026-06-27 06:34:10,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:34:10,719.719 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:34:10,757.757 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:34:10,759.759 INFO    ] No camera update needed
[2026-06-27 06:34:10,760.760 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:34:10,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:34:10,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:34:10,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:34:12,810.810 INFO    ] ================================================
[2026-06-27 06:34:12,830.830 INFO    ] Launching Daemon at Sat Jun 27 06:34:12 IST 2026
[2026-06-27 06:34:12,841.841 INFO    ] ================================================
[2026-06-27 06:34:13,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:34:13
[2026-06-27 06:34:13,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:34:13,659.659 INFO    ] Initializing speech engine...
[2026-06-27 06:34:13,668.668 INFO    ] 2026-06-27 06:34:13
[2026-06-27 06:34:13,880.880 INFO    ] 2026-06-27 06:34:13
[2026-06-27 06:34:13,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:34:14,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:34:14,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:34:14,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:34:14,299.299 INFO    ] time= 27/06/2026 06:34:14
[2026-06-27 06:34:14,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:34:14,327.327 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:34:14,394.394 INFO    ] No existing commands found in stream
[2026-06-27 06:34:19,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:34:19,407.407 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-27 06:34:22,249.249 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:34:22,250.250 INFO    ] Checking for system updates...
[2026-06-27 06:34:22,271.271 INFO    ] 200
[2026-06-27 06:34:22,273.273 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:34:22,303.303 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:34:22,305.305 INFO    ] No update needed
[2026-06-27 06:34:22,306.306 INFO    ] Checking for camera pi updates...
[2026-06-27 06:34:22,326.326 INFO    ] 200
[2026-06-27 06:34:22,328.328 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:34:22,353.353 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:34:22,391.391 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:34:22,392.392 INFO    ] No camera update needed
[2026-06-27 06:34:22,393.393 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:34:22,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:34:22,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:34:22,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:34:24,447.447 INFO    ] ================================================
[2026-06-27 06:34:24,466.466 INFO    ] Launching Daemon at Sat Jun 27 06:34:24 IST 2026
[2026-06-27 06:34:24,476.476 INFO    ] ================================================
[2026-06-27 06:34:24,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:34:24
[2026-06-27 06:34:25,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:34:25,309.309 INFO    ] Initializing speech engine...
[2026-06-27 06:34:25,320.320 INFO    ] 2026-06-27 06:34:25
[2026-06-27 06:34:25,527.527 INFO    ] 2026-06-27 06:34:25
[2026-06-27 06:34:25,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:34:25,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:34:25,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:34:25,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:34:25,949.949 INFO    ] time= 27/06/2026 06:34:25
[2026-06-27 06:34:25,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:34:25,978.978 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:34:26,044.044 INFO    ] No existing commands found in stream
[2026-06-27 06:34:31,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:34:31,058.058 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-27 06:34:35,346.346 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:34:35,347.347 INFO    ] Checking for system updates...
[2026-06-27 06:34:35,369.369 INFO    ] 200
[2026-06-27 06:34:35,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:34:35,401.401 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:34:35,402.402 INFO    ] No update needed
[2026-06-27 06:34:35,403.403 INFO    ] Checking for camera pi updates...
[2026-06-27 06:34:35,423.423 INFO    ] 200
[2026-06-27 06:34:35,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:34:35,447.447 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:34:35,487.487 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:34:35,489.489 INFO    ] No camera update needed
[2026-06-27 06:34:35,490.490 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:34:35,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:34:35,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:34:35,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:34:37,536.536 INFO    ] ================================================
[2026-06-27 06:34:37,551.551 INFO    ] Launching Daemon at Sat Jun 27 06:34:37 IST 2026
[2026-06-27 06:34:37,563.563 INFO    ] ================================================
[2026-06-27 06:34:37,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:34:37
[2026-06-27 06:34:38,206.206 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:34:38,337.337 INFO    ] Initializing speech engine...
[2026-06-27 06:34:38,340.340 INFO    ] 2026-06-27 06:34:38
[2026-06-27 06:34:38,557.557 INFO    ] 2026-06-27 06:34:38
[2026-06-27 06:34:38,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:34:38,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:34:38,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:34:38,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:34:39,004.004 INFO    ] time= 27/06/2026 06:34:38
[2026-06-27 06:34:39,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:34:39,011.011 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:34:39,077.077 INFO    ] No existing commands found in stream
[2026-06-27 06:34:44,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:34:44,091.091 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-27 06:34:44,748.748 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 06:34:44,750.750 INFO    ] Checking for system updates...
[2026-06-27 06:34:44,770.770 INFO    ] 200
[2026-06-27 06:34:44,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:34:44,805.805 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:34:44,806.806 INFO    ] No update needed
[2026-06-27 06:34:44,807.807 INFO    ] Checking for camera pi updates...
[2026-06-27 06:34:44,826.826 INFO    ] 200
[2026-06-27 06:34:44,828.828 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:34:44,851.851 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:34:44,897.897 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:34:44,899.899 INFO    ] No camera update needed
[2026-06-27 06:34:44,900.900 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:34:44,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:34:44,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:34:44,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:34:46,946.946 INFO    ] ================================================
[2026-06-27 06:34:46,962.962 INFO    ] Launching Daemon at Sat Jun 27 06:34:46 IST 2026
[2026-06-27 06:34:46,972.972 INFO    ] ================================================
[2026-06-27 06:34:47,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:34:47
[2026-06-27 06:34:47,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:34:47,842.842 INFO    ] Initializing speech engine...
[2026-06-27 06:34:47,855.855 INFO    ] 2026-06-27 06:34:47
[2026-06-27 06:34:48,066.066 INFO    ] 2026-06-27 06:34:48
[2026-06-27 06:34:48,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:34:48,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:34:48,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:34:48,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:34:48,487.487 INFO    ] time= 27/06/2026 06:34:48
[2026-06-27 06:34:48,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:34:48,516.516 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:34:48,584.584 INFO    ] No existing commands found in stream
[2026-06-27 06:34:53,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:34:53,595.595 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-27 06:34:54,961.961 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:34:54,962.962 INFO    ] Checking for system updates...
[2026-06-27 06:34:54,985.985 INFO    ] 200
[2026-06-27 06:34:54,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:34:55,021.021 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:34:55,023.023 INFO    ] No update needed
[2026-06-27 06:34:55,024.024 INFO    ] Checking for camera pi updates...
[2026-06-27 06:34:55,047.047 INFO    ] 200
[2026-06-27 06:34:55,049.049 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:34:55,075.075 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:34:55,100.100 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:34:55,102.102 INFO    ] No camera update needed
[2026-06-27 06:34:55,103.103 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:34:55,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:34:55,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:34:55,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:34:57,150.150 INFO    ] ================================================
[2026-06-27 06:34:57,165.165 INFO    ] Launching Daemon at Sat Jun 27 06:34:57 IST 2026
[2026-06-27 06:34:57,176.176 INFO    ] ================================================
[2026-06-27 06:34:57,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:34:57
[2026-06-27 06:34:57,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:34:57,995.995 INFO    ] Initializing speech engine...
[2026-06-27 06:34:58,000.000 INFO    ] 2026-06-27 06:34:57
[2026-06-27 06:34:58,210.210 INFO    ] 2026-06-27 06:34:58
[2026-06-27 06:34:58,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:34:58,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:34:58,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:34:58,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:34:58,634.634 INFO    ] time= 27/06/2026 06:34:58
[2026-06-27 06:34:58,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:34:58,662.662 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:34:58,729.729 INFO    ] No existing commands found in stream
[2026-06-27 06:35:03,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:35:03,739.739 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-27 06:35:04,861.861 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 06:35:04,863.863 INFO    ] Checking for system updates...
[2026-06-27 06:35:04,884.884 INFO    ] 200
[2026-06-27 06:35:04,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:35:04,918.918 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:35:04,919.919 INFO    ] No update needed
[2026-06-27 06:35:04,921.921 INFO    ] Checking for camera pi updates...
[2026-06-27 06:35:04,943.943 INFO    ] 200
[2026-06-27 06:35:04,944.944 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:35:04,968.968 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:35:05,009.009 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:35:05,011.011 INFO    ] No camera update needed
[2026-06-27 06:35:05,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:35:05,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:35:05,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:35:05,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:35:07,059.059 INFO    ] ================================================
[2026-06-27 06:35:07,075.075 INFO    ] Launching Daemon at Sat Jun 27 06:35:07 IST 2026
[2026-06-27 06:35:07,086.086 INFO    ] ================================================
[2026-06-27 06:35:07,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:35:07
[2026-06-27 06:35:07,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:35:07,933.933 INFO    ] Initializing speech engine...
[2026-06-27 06:35:07,943.943 INFO    ] 2026-06-27 06:35:07
[2026-06-27 06:35:08,198.198 INFO    ] 2026-06-27 06:35:08
[2026-06-27 06:35:08,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:35:08,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:35:08,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:35:08,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:35:08,626.626 INFO    ] time= 27/06/2026 06:35:08
[2026-06-27 06:35:08,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:35:08,656.656 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:35:08,722.722 INFO    ] No existing commands found in stream
[2026-06-27 06:35:13,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:35:13,737.737 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-27 06:35:16,471.471 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:35:16,472.472 INFO    ] Checking for system updates...
[2026-06-27 06:35:16,495.495 INFO    ] 200
[2026-06-27 06:35:16,497.497 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:35:16,532.532 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:35:16,534.534 INFO    ] No update needed
[2026-06-27 06:35:16,535.535 INFO    ] Checking for camera pi updates...
[2026-06-27 06:35:16,557.557 INFO    ] 200
[2026-06-27 06:35:16,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:35:16,585.585 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:35:16,622.622 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:35:16,623.623 INFO    ] No camera update needed
[2026-06-27 06:35:16,625.625 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:35:16,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:35:16,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:35:16,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:35:18,670.670 INFO    ] ================================================
[2026-06-27 06:35:18,686.686 INFO    ] Launching Daemon at Sat Jun 27 06:35:18 IST 2026
[2026-06-27 06:35:18,696.696 INFO    ] ================================================
[2026-06-27 06:35:19,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:35:19
[2026-06-27 06:35:19,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:35:19,468.468 INFO    ] Initializing speech engine...
[2026-06-27 06:35:19,477.477 INFO    ] 2026-06-27 06:35:19
[2026-06-27 06:35:19,685.685 INFO    ] 2026-06-27 06:35:19
[2026-06-27 06:35:19,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:35:19,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:35:19,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:35:20,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:35:20,093.093 INFO    ] time= 27/06/2026 06:35:20
[2026-06-27 06:35:20,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:35:20,138.138 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:35:20,206.206 INFO    ] No existing commands found in stream
[2026-06-27 06:35:25,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:35:25,215.215 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-27 06:35:26,468.468 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:35:26,470.470 INFO    ] Checking for system updates...
[2026-06-27 06:35:26,493.493 INFO    ] 200
[2026-06-27 06:35:26,495.495 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:35:26,528.528 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:35:26,529.529 INFO    ] No update needed
[2026-06-27 06:35:26,531.531 INFO    ] Checking for camera pi updates...
[2026-06-27 06:35:26,551.551 INFO    ] 200
[2026-06-27 06:35:26,552.552 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:35:26,577.577 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:35:26,620.620 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:35:26,621.621 INFO    ] No camera update needed
[2026-06-27 06:35:26,622.622 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:35:26,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:35:26,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:35:26,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:35:28,653.653 INFO    ] ================================================
[2026-06-27 06:35:28,661.661 INFO    ] Launching Daemon at Sat Jun 27 06:35:28 IST 2026
[2026-06-27 06:35:28,667.667 INFO    ] ================================================
[2026-06-27 06:35:28,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:35:28
[2026-06-27 06:35:29,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:35:29,448.448 INFO    ] Initializing speech engine...
[2026-06-27 06:35:29,460.460 INFO    ] 2026-06-27 06:35:29
[2026-06-27 06:35:29,679.679 INFO    ] 2026-06-27 06:35:29
[2026-06-27 06:35:29,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:35:29,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:35:29,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:35:30,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:35:30,115.115 INFO    ] time= 27/06/2026 06:35:30
[2026-06-27 06:35:30,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:35:30,156.156 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:35:30,230.230 INFO    ] No existing commands found in stream
[2026-06-27 06:35:35,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:35:35,243.243 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-27 06:35:35,776.776 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 06:35:35,777.777 INFO    ] Checking for system updates...
[2026-06-27 06:35:35,803.803 INFO    ] 200
[2026-06-27 06:35:35,805.805 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:35:35,835.835 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:35:35,836.836 INFO    ] No update needed
[2026-06-27 06:35:35,837.837 INFO    ] Checking for camera pi updates...
[2026-06-27 06:35:35,857.857 INFO    ] 200
[2026-06-27 06:35:35,859.859 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:35:35,882.882 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:35:35,919.919 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:35:35,920.920 INFO    ] No camera update needed
[2026-06-27 06:35:35,921.921 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:35:35,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:35:35,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:35:35,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:35:37,968.968 INFO    ] ================================================
[2026-06-27 06:35:37,983.983 INFO    ] Launching Daemon at Sat Jun 27 06:35:37 IST 2026
[2026-06-27 06:35:38,995.995 INFO    ] ================================================
[2026-06-27 06:35:38,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:35:38
[2026-06-27 06:35:38,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:35:38,813.813 INFO    ] Initializing speech engine...
[2026-06-27 06:35:38,819.819 INFO    ] 2026-06-27 06:35:38
[2026-06-27 06:35:39,027.027 INFO    ] 2026-06-27 06:35:39
[2026-06-27 06:35:39,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:35:39,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:35:39,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:35:39,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:35:39,447.447 INFO    ] time= 27/06/2026 06:35:39
[2026-06-27 06:35:39,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:35:39,476.476 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:35:39,543.543 INFO    ] No existing commands found in stream
[2026-06-27 06:35:44,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:35:44,561.561 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-27 06:35:47,650.650 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 06:35:47,651.651 INFO    ] Checking for system updates...
[2026-06-27 06:35:47,672.672 INFO    ] 200
[2026-06-27 06:35:47,674.674 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:35:47,707.707 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:35:47,708.708 INFO    ] No update needed
[2026-06-27 06:35:47,710.710 INFO    ] Checking for camera pi updates...
[2026-06-27 06:35:47,734.734 INFO    ] 200
[2026-06-27 06:35:47,735.735 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:35:47,762.762 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:35:47,801.801 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:35:47,803.803 INFO    ] No camera update needed
[2026-06-27 06:35:47,804.804 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:35:47,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:35:47,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:35:47,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:35:49,851.851 INFO    ] ================================================
[2026-06-27 06:35:49,866.866 INFO    ] Launching Daemon at Sat Jun 27 06:35:49 IST 2026
[2026-06-27 06:35:49,876.876 INFO    ] ================================================
[2026-06-27 06:35:50,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:35:50
[2026-06-27 06:35:50,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:35:50,653.653 INFO    ] Initializing speech engine...
[2026-06-27 06:35:50,658.658 INFO    ] 2026-06-27 06:35:50
[2026-06-27 06:35:50,862.862 INFO    ] 2026-06-27 06:35:50
[2026-06-27 06:35:50,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:35:51,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:35:51,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:35:51,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:35:51,284.284 INFO    ] time= 27/06/2026 06:35:51
[2026-06-27 06:35:51,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:35:51,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:35:51,379.379 INFO    ] No existing commands found in stream
[2026-06-27 06:35:56,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:35:56,391.391 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-27 06:35:57,729.729 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 06:35:57,731.731 INFO    ] Checking for system updates...
[2026-06-27 06:35:57,753.753 INFO    ] 200
[2026-06-27 06:35:57,755.755 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:35:57,785.785 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:35:57,787.787 INFO    ] No update needed
[2026-06-27 06:35:57,788.788 INFO    ] Checking for camera pi updates...
[2026-06-27 06:35:57,808.808 INFO    ] 200
[2026-06-27 06:35:57,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:35:57,833.833 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:35:57,877.877 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:35:57,878.878 INFO    ] No camera update needed
[2026-06-27 06:35:57,879.879 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:35:57,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:35:57,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:35:57,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:35:59,927.927 INFO    ] ================================================
[2026-06-27 06:35:59,942.942 INFO    ] Launching Daemon at Sat Jun 27 06:35:59 IST 2026
[2026-06-27 06:35:59,952.952 INFO    ] ================================================
[2026-06-27 06:36:00,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:36:00
[2026-06-27 06:36:00,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:36:00,830.830 INFO    ] Initializing speech engine...
[2026-06-27 06:36:00,835.835 INFO    ] 2026-06-27 06:36:00
[2026-06-27 06:36:01,045.045 INFO    ] 2026-06-27 06:36:01
[2026-06-27 06:36:01,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:36:01,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:36:01,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:36:01,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:36:01,466.466 INFO    ] time= 27/06/2026 06:36:01
[2026-06-27 06:36:01,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:36:01,529.529 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:36:01,628.628 INFO    ] No existing commands found in stream
[2026-06-27 06:36:06,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:36:06,641.641 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-27 06:36:07,842.842 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:36:07,843.843 INFO    ] Checking for system updates...
[2026-06-27 06:36:07,864.864 INFO    ] 200
[2026-06-27 06:36:07,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:36:07,899.899 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:36:07,900.900 INFO    ] No update needed
[2026-06-27 06:36:07,901.901 INFO    ] Checking for camera pi updates...
[2026-06-27 06:36:07,923.923 INFO    ] 200
[2026-06-27 06:36:07,925.925 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:36:07,948.948 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:36:07,988.988 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:36:07,989.989 INFO    ] No camera update needed
[2026-06-27 06:36:07,991.991 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:36:07,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:36:07,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:36:07,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:36:10,036.036 INFO    ] ================================================
[2026-06-27 06:36:10,051.051 INFO    ] Launching Daemon at Sat Jun 27 06:36:10 IST 2026
[2026-06-27 06:36:10,061.061 INFO    ] ================================================
[2026-06-27 06:36:10,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:36:10
[2026-06-27 06:36:10,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:36:10,833.833 INFO    ] Initializing speech engine...
[2026-06-27 06:36:10,837.837 INFO    ] 2026-06-27 06:36:10
[2026-06-27 06:36:11,054.054 INFO    ] 2026-06-27 06:36:11
[2026-06-27 06:36:11,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:36:11,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:36:11,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:36:11,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:36:11,475.475 INFO    ] time= 27/06/2026 06:36:11
[2026-06-27 06:36:11,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:36:11,505.505 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:36:11,572.572 INFO    ] No existing commands found in stream
[2026-06-27 06:36:16,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:36:16,589.589 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-27 06:36:19,809.809 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 06:36:19,810.810 INFO    ] Checking for system updates...
[2026-06-27 06:36:19,832.832 INFO    ] 200
[2026-06-27 06:36:19,834.834 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:36:19,864.864 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:36:19,865.865 INFO    ] No update needed
[2026-06-27 06:36:19,867.867 INFO    ] Checking for camera pi updates...
[2026-06-27 06:36:19,889.889 INFO    ] 200
[2026-06-27 06:36:19,890.890 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:36:19,914.914 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:36:19,948.948 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:36:19,949.949 INFO    ] No camera update needed
[2026-06-27 06:36:19,951.951 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:36:19,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:36:19,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:36:19,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:36:22,996.996 INFO    ] ================================================
[2026-06-27 06:36:22,011.011 INFO    ] Launching Daemon at Sat Jun 27 06:36:22 IST 2026
[2026-06-27 06:36:22,021.021 INFO    ] ================================================
[2026-06-27 06:36:22,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:36:22
[2026-06-27 06:36:22,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:36:22,849.849 INFO    ] Initializing speech engine...
[2026-06-27 06:36:22,854.854 INFO    ] 2026-06-27 06:36:22
[2026-06-27 06:36:23,070.070 INFO    ] 2026-06-27 06:36:23
[2026-06-27 06:36:23,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:36:23,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:36:23,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:36:23,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:36:23,474.474 INFO    ] time= 27/06/2026 06:36:23
[2026-06-27 06:36:23,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:36:23,518.518 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:36:23,584.584 INFO    ] No existing commands found in stream
[2026-06-27 06:36:28,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:36:28,597.597 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-27 06:36:31,549.549 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 06:36:31,551.551 INFO    ] Checking for system updates...
[2026-06-27 06:36:31,595.595 INFO    ] 200
[2026-06-27 06:36:31,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:36:31,662.662 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:36:31,663.663 INFO    ] No update needed
[2026-06-27 06:36:31,665.665 INFO    ] Checking for camera pi updates...
[2026-06-27 06:36:31,687.687 INFO    ] 200
[2026-06-27 06:36:31,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:36:31,717.717 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:36:31,751.751 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:36:31,753.753 INFO    ] No camera update needed
[2026-06-27 06:36:31,756.756 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:36:31,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:36:31,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:36:31,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:36:33,804.804 INFO    ] ================================================
[2026-06-27 06:36:33,821.821 INFO    ] Launching Daemon at Sat Jun 27 06:36:33 IST 2026
[2026-06-27 06:36:33,831.831 INFO    ] ================================================
[2026-06-27 06:36:34,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:36:34
[2026-06-27 06:36:34,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:36:34,670.670 INFO    ] Initializing speech engine...
[2026-06-27 06:36:34,678.678 INFO    ] 2026-06-27 06:36:34
[2026-06-27 06:36:34,884.884 INFO    ] 2026-06-27 06:36:34
[2026-06-27 06:36:34,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:36:35,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:36:35,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:36:35,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:36:35,323.323 INFO    ] time= 27/06/2026 06:36:35
[2026-06-27 06:36:35,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:36:35,334.334 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:36:35,402.402 INFO    ] No existing commands found in stream
[2026-06-27 06:36:40,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:36:40,414.414 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-27 06:36:41,496.496 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:36:41,497.497 INFO    ] Checking for system updates...
[2026-06-27 06:36:41,518.518 INFO    ] 200
[2026-06-27 06:36:41,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:36:41,549.549 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:36:41,551.551 INFO    ] No update needed
[2026-06-27 06:36:41,552.552 INFO    ] Checking for camera pi updates...
[2026-06-27 06:36:41,577.577 INFO    ] 200
[2026-06-27 06:36:41,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:36:41,603.603 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:36:41,742.742 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:36:41,744.744 INFO    ] No camera update needed
[2026-06-27 06:36:41,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:36:41,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:36:41,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:36:41,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:36:43,791.791 INFO    ] ================================================
[2026-06-27 06:36:43,807.807 INFO    ] Launching Daemon at Sat Jun 27 06:36:43 IST 2026
[2026-06-27 06:36:43,817.817 INFO    ] ================================================
[2026-06-27 06:36:44,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:36:44
[2026-06-27 06:36:44,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:36:44,599.599 INFO    ] Initializing speech engine...
[2026-06-27 06:36:44,611.611 INFO    ] 2026-06-27 06:36:44
[2026-06-27 06:36:44,817.817 INFO    ] 2026-06-27 06:36:44
[2026-06-27 06:36:44,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:36:45,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:36:45,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:36:45,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:36:45,239.239 INFO    ] time= 27/06/2026 06:36:45
[2026-06-27 06:36:45,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:36:45,268.268 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:36:45,334.334 INFO    ] No existing commands found in stream
[2026-06-27 06:36:50,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:36:50,347.347 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-27 06:36:54,006.006 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 06:36:54,007.007 INFO    ] Checking for system updates...
[2026-06-27 06:36:54,028.028 INFO    ] 200
[2026-06-27 06:36:54,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:36:54,061.061 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:36:54,062.062 INFO    ] No update needed
[2026-06-27 06:36:54,064.064 INFO    ] Checking for camera pi updates...
[2026-06-27 06:36:54,083.083 INFO    ] 200
[2026-06-27 06:36:54,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:36:54,109.109 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:36:54,138.138 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:36:54,140.140 INFO    ] No camera update needed
[2026-06-27 06:36:54,141.141 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:36:54,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:36:54,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:36:54,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:36:56,190.190 INFO    ] ================================================
[2026-06-27 06:36:56,205.205 INFO    ] Launching Daemon at Sat Jun 27 06:36:56 IST 2026
[2026-06-27 06:36:56,216.216 INFO    ] ================================================
[2026-06-27 06:36:56,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:36:56
[2026-06-27 06:36:56,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:36:56,987.987 INFO    ] Initializing speech engine...
[2026-06-27 06:36:56,996.996 INFO    ] 2026-06-27 06:36:56
[2026-06-27 06:36:57,202.202 INFO    ] 2026-06-27 06:36:57
[2026-06-27 06:36:57,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:36:57,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:36:57,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:36:57,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:36:57,649.649 INFO    ] time= 27/06/2026 06:36:57
[2026-06-27 06:36:57,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:36:57,656.656 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:36:57,723.723 INFO    ] No existing commands found in stream
[2026-06-27 06:37:02,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:37:02,736.736 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-27 06:37:05,701.701 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 06:37:05,702.702 INFO    ] Checking for system updates...
[2026-06-27 06:37:05,727.727 INFO    ] 200
[2026-06-27 06:37:05,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:37:05,759.759 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:37:05,760.760 INFO    ] No update needed
[2026-06-27 06:37:05,762.762 INFO    ] Checking for camera pi updates...
[2026-06-27 06:37:05,781.781 INFO    ] 200
[2026-06-27 06:37:05,783.783 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:37:05,809.809 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:37:05,855.855 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:37:05,857.857 INFO    ] No camera update needed
[2026-06-27 06:37:05,858.858 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:37:05,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:37:05,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:37:05,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:37:07,906.906 INFO    ] ================================================
[2026-06-27 06:37:07,921.921 INFO    ] Launching Daemon at Sat Jun 27 06:37:07 IST 2026
[2026-06-27 06:37:07,932.932 INFO    ] ================================================
[2026-06-27 06:37:08,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:37:08
[2026-06-27 06:37:08,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:37:08,805.805 INFO    ] Initializing speech engine...
[2026-06-27 06:37:08,811.811 INFO    ] 2026-06-27 06:37:08
[2026-06-27 06:37:09,015.015 INFO    ] 2026-06-27 06:37:08
[2026-06-27 06:37:09,037.037 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:37:09,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:37:09,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:37:09,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:37:09,454.454 INFO    ] time= 27/06/2026 06:37:09
[2026-06-27 06:37:09,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:37:09,482.482 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:37:09,548.548 INFO    ] No existing commands found in stream
[2026-06-27 06:37:14,555.555 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:37:14,556.556 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-27 06:37:18,383.383 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 06:37:18,385.385 INFO    ] Checking for system updates...
[2026-06-27 06:37:18,405.405 INFO    ] 200
[2026-06-27 06:37:18,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:37:18,437.437 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:37:18,439.439 INFO    ] No update needed
[2026-06-27 06:37:18,440.440 INFO    ] Checking for camera pi updates...
[2026-06-27 06:37:18,459.459 INFO    ] 200
[2026-06-27 06:37:18,461.461 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:37:18,484.484 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:37:18,520.520 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:37:18,521.521 INFO    ] No camera update needed
[2026-06-27 06:37:18,523.523 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:37:18,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:37:18,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:37:18,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:37:20,567.567 INFO    ] ================================================
[2026-06-27 06:37:20,582.582 INFO    ] Launching Daemon at Sat Jun 27 06:37:20 IST 2026
[2026-06-27 06:37:20,594.594 INFO    ] ================================================
[2026-06-27 06:37:20,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:37:20
[2026-06-27 06:37:21,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:37:21,389.389 INFO    ] Initializing speech engine...
[2026-06-27 06:37:21,399.399 INFO    ] 2026-06-27 06:37:21
[2026-06-27 06:37:21,605.605 INFO    ] 2026-06-27 06:37:21
[2026-06-27 06:37:21,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:37:22,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:37:22,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:37:22,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:37:22,162.162 INFO    ] time= 27/06/2026 06:37:22
[2026-06-27 06:37:22,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:37:22,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:37:22,238.238 INFO    ] No existing commands found in stream
[2026-06-27 06:37:27,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:37:27,249.249 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-27 06:37:29,918.918 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 06:37:29,920.920 INFO    ] Checking for system updates...
[2026-06-27 06:37:29,941.941 INFO    ] 200
[2026-06-27 06:37:29,942.942 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:37:29,972.972 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:37:29,974.974 INFO    ] No update needed
[2026-06-27 06:37:29,975.975 INFO    ] Checking for camera pi updates...
[2026-06-27 06:37:29,995.995 INFO    ] 200
[2026-06-27 06:37:29,996.996 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:37:30,019.019 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:37:30,053.053 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:37:30,055.055 INFO    ] No camera update needed
[2026-06-27 06:37:30,056.056 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:37:30,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:37:30,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:37:30,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:37:32,104.104 INFO    ] ================================================
[2026-06-27 06:37:32,121.121 INFO    ] Launching Daemon at Sat Jun 27 06:37:32 IST 2026
[2026-06-27 06:37:32,133.133 INFO    ] ================================================
[2026-06-27 06:37:32,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:37:32
[2026-06-27 06:37:32,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:37:32,988.988 INFO    ] Initializing speech engine...
[2026-06-27 06:37:32,992.992 INFO    ] 2026-06-27 06:37:32
[2026-06-27 06:37:33,213.213 INFO    ] 2026-06-27 06:37:33
[2026-06-27 06:37:33,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:37:33,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:37:33,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:37:33,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:37:33,627.627 INFO    ] time= 27/06/2026 06:37:33
[2026-06-27 06:37:33,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:37:33,663.663 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:37:33,734.734 INFO    ] No existing commands found in stream
[2026-06-27 06:37:38,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:37:38,747.747 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-27 06:37:40,265.265 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:37:40,266.266 INFO    ] Checking for system updates...
[2026-06-27 06:37:40,289.289 INFO    ] 200
[2026-06-27 06:37:40,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:37:40,322.322 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:37:40,324.324 INFO    ] No update needed
[2026-06-27 06:37:40,326.326 INFO    ] Checking for camera pi updates...
[2026-06-27 06:37:40,346.346 INFO    ] 200
[2026-06-27 06:37:40,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:37:40,374.374 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:37:40,409.409 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:37:40,410.410 INFO    ] No camera update needed
[2026-06-27 06:37:40,412.412 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:37:40,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:37:40,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:37:40,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:37:42,457.457 INFO    ] ================================================
[2026-06-27 06:37:42,473.473 INFO    ] Launching Daemon at Sat Jun 27 06:37:42 IST 2026
[2026-06-27 06:37:42,484.484 INFO    ] ================================================
[2026-06-27 06:37:42,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:37:42
[2026-06-27 06:37:43,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:37:43,324.324 INFO    ] Initializing speech engine...
[2026-06-27 06:37:43,329.329 INFO    ] 2026-06-27 06:37:43
[2026-06-27 06:37:43,546.546 INFO    ] 2026-06-27 06:37:43
[2026-06-27 06:37:43,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:37:43,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:37:43,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:37:43,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:37:43,966.966 INFO    ] time= 27/06/2026 06:37:43
[2026-06-27 06:37:43,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:37:43,996.996 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:37:44,066.066 INFO    ] No existing commands found in stream
[2026-06-27 06:37:49,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:37:49,079.079 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-27 06:37:51,835.835 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:37:51,836.836 INFO    ] Checking for system updates...
[2026-06-27 06:37:51,856.856 INFO    ] 200
[2026-06-27 06:37:51,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:37:51,891.891 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:37:51,892.892 INFO    ] No update needed
[2026-06-27 06:37:51,894.894 INFO    ] Checking for camera pi updates...
[2026-06-27 06:37:51,913.913 INFO    ] 200
[2026-06-27 06:37:51,915.915 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:37:51,939.939 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:37:51,975.975 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:37:51,977.977 INFO    ] No camera update needed
[2026-06-27 06:37:51,978.978 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:37:51,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:37:51,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:37:51,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:37:54,026.026 INFO    ] ================================================
[2026-06-27 06:37:54,041.041 INFO    ] Launching Daemon at Sat Jun 27 06:37:54 IST 2026
[2026-06-27 06:37:54,052.052 INFO    ] ================================================
[2026-06-27 06:37:54,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:37:54
[2026-06-27 06:37:54,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:37:54,907.907 INFO    ] Initializing speech engine...
[2026-06-27 06:37:54,912.912 INFO    ] 2026-06-27 06:37:54
[2026-06-27 06:37:55,127.127 INFO    ] 2026-06-27 06:37:55
[2026-06-27 06:37:55,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:37:55,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:37:55,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:37:55,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:37:55,556.556 INFO    ] time= 27/06/2026 06:37:55
[2026-06-27 06:37:55,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:37:55,584.584 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:37:55,653.653 INFO    ] No existing commands found in stream
[2026-06-27 06:38:00,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:38:00,666.666 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-27 06:38:01,494.494 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 06:38:01,496.496 INFO    ] Checking for system updates...
[2026-06-27 06:38:01,526.526 INFO    ] 200
[2026-06-27 06:38:01,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:38:01,570.570 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:38:01,572.572 INFO    ] No update needed
[2026-06-27 06:38:01,574.574 INFO    ] Checking for camera pi updates...
[2026-06-27 06:38:01,601.601 INFO    ] 200
[2026-06-27 06:38:01,602.602 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:38:01,635.635 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:38:01,680.680 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:38:01,682.682 INFO    ] No camera update needed
[2026-06-27 06:38:01,684.684 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:38:01,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:38:01,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:38:01,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:38:03,732.732 INFO    ] ================================================
[2026-06-27 06:38:03,748.748 INFO    ] Launching Daemon at Sat Jun 27 06:38:03 IST 2026
[2026-06-27 06:38:03,758.758 INFO    ] ================================================
[2026-06-27 06:38:04,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:38:04
[2026-06-27 06:38:04,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:38:04,600.600 INFO    ] Initializing speech engine...
[2026-06-27 06:38:04,615.615 INFO    ] 2026-06-27 06:38:04
[2026-06-27 06:38:04,827.827 INFO    ] 2026-06-27 06:38:04
[2026-06-27 06:38:04,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:38:05,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:38:05,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:38:05,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:38:05,279.279 INFO    ] time= 27/06/2026 06:38:05
[2026-06-27 06:38:05,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:38:05,289.289 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:38:05,347.347 INFO    ] No existing commands found in stream
[2026-06-27 06:38:10,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:38:10,359.359 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-27 06:38:13,412.412 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:38:13,413.413 INFO    ] Checking for system updates...
[2026-06-27 06:38:13,434.434 INFO    ] 200
[2026-06-27 06:38:13,435.435 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:38:13,466.466 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:38:13,467.467 INFO    ] No update needed
[2026-06-27 06:38:13,469.469 INFO    ] Checking for camera pi updates...
[2026-06-27 06:38:13,488.488 INFO    ] 200
[2026-06-27 06:38:13,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:38:13,513.513 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:38:13,552.552 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:38:13,554.554 INFO    ] No camera update needed
[2026-06-27 06:38:13,555.555 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:38:13,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:38:13,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:38:13,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:38:15,601.601 INFO    ] ================================================
[2026-06-27 06:38:15,616.616 INFO    ] Launching Daemon at Sat Jun 27 06:38:15 IST 2026
[2026-06-27 06:38:15,627.627 INFO    ] ================================================
[2026-06-27 06:38:15,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:38:15
[2026-06-27 06:38:16,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:38:16,444.444 INFO    ] Initializing speech engine...
[2026-06-27 06:38:16,449.449 INFO    ] 2026-06-27 06:38:16
[2026-06-27 06:38:16,655.655 INFO    ] 2026-06-27 06:38:16
[2026-06-27 06:38:16,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:38:16,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:38:16,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:38:17,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:38:17,013.013 INFO    ] time= 27/06/2026 06:38:17
[2026-06-27 06:38:17,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:38:17,100.100 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:38:17,171.171 INFO    ] No existing commands found in stream
[2026-06-27 06:38:22,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:38:22,184.184 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-27 06:38:23,193.193 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 06:38:23,194.194 INFO    ] Checking for system updates...
[2026-06-27 06:38:23,217.217 INFO    ] 200
[2026-06-27 06:38:23,219.219 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:38:23,284.284 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:38:23,285.285 INFO    ] No update needed
[2026-06-27 06:38:23,286.286 INFO    ] Checking for camera pi updates...
[2026-06-27 06:38:23,306.306 INFO    ] 200
[2026-06-27 06:38:23,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:38:23,332.332 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:38:23,379.379 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:38:23,380.380 INFO    ] No camera update needed
[2026-06-27 06:38:23,382.382 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:38:23,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:38:23,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:38:23,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:38:25,427.427 INFO    ] ================================================
[2026-06-27 06:38:25,443.443 INFO    ] Launching Daemon at Sat Jun 27 06:38:25 IST 2026
[2026-06-27 06:38:25,454.454 INFO    ] ================================================
[2026-06-27 06:38:25,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:38:25
[2026-06-27 06:38:26,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:38:26,230.230 INFO    ] Initializing speech engine...
[2026-06-27 06:38:26,232.232 INFO    ] 2026-06-27 06:38:26
[2026-06-27 06:38:26,447.447 INFO    ] 2026-06-27 06:38:26
[2026-06-27 06:38:26,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:38:26,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:38:26,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:38:26,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:38:26,859.859 INFO    ] time= 27/06/2026 06:38:26
[2026-06-27 06:38:26,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:38:26,897.897 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:38:26,963.963 INFO    ] No existing commands found in stream
[2026-06-27 06:38:31,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:38:31,974.974 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-27 06:38:35,732.732 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 06:38:35,733.733 INFO    ] Checking for system updates...
[2026-06-27 06:38:35,755.755 INFO    ] 200
[2026-06-27 06:38:35,756.756 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:38:35,787.787 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:38:35,788.788 INFO    ] No update needed
[2026-06-27 06:38:35,789.789 INFO    ] Checking for camera pi updates...
[2026-06-27 06:38:35,809.809 INFO    ] 200
[2026-06-27 06:38:35,810.810 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:38:35,834.834 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:38:35,871.871 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:38:35,872.872 INFO    ] No camera update needed
[2026-06-27 06:38:35,874.874 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:38:35,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:38:35,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:38:35,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:38:37,920.920 INFO    ] ================================================
[2026-06-27 06:38:37,936.936 INFO    ] Launching Daemon at Sat Jun 27 06:38:37 IST 2026
[2026-06-27 06:38:37,947.947 INFO    ] ================================================
[2026-06-27 06:38:38,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:38:38
[2026-06-27 06:38:38,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:38:38,781.781 INFO    ] Initializing speech engine...
[2026-06-27 06:38:38,786.786 INFO    ] 2026-06-27 06:38:38
[2026-06-27 06:38:38,992.992 INFO    ] 2026-06-27 06:38:38
[2026-06-27 06:38:39,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:38:39,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:38:39,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:38:39,395.395 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:38:39,440.440 INFO    ] time= 27/06/2026 06:38:39
[2026-06-27 06:38:39,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:38:39,448.448 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:38:39,515.515 INFO    ] No existing commands found in stream
[2026-06-27 06:38:44,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:38:44,527.527 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-27 06:38:46,101.101 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:38:46,103.103 INFO    ] Checking for system updates...
[2026-06-27 06:38:46,123.123 INFO    ] 200
[2026-06-27 06:38:46,125.125 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:38:46,156.156 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:38:46,157.157 INFO    ] No update needed
[2026-06-27 06:38:46,159.159 INFO    ] Checking for camera pi updates...
[2026-06-27 06:38:46,178.178 INFO    ] 200
[2026-06-27 06:38:46,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:38:46,202.202 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:38:46,347.347 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:38:46,349.349 INFO    ] No camera update needed
[2026-06-27 06:38:46,350.350 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:38:46,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:38:46,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:38:46,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:38:48,395.395 INFO    ] ================================================
[2026-06-27 06:38:48,412.412 INFO    ] Launching Daemon at Sat Jun 27 06:38:48 IST 2026
[2026-06-27 06:38:48,423.423 INFO    ] ================================================
[2026-06-27 06:38:48,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:38:48
[2026-06-27 06:38:49,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:38:49,278.278 INFO    ] Initializing speech engine...
[2026-06-27 06:38:49,284.284 INFO    ] 2026-06-27 06:38:49
[2026-06-27 06:38:49,494.494 INFO    ] 2026-06-27 06:38:49
[2026-06-27 06:38:49,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:38:49,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:38:49,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:38:49,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:38:49,911.911 INFO    ] time= 27/06/2026 06:38:49
[2026-06-27 06:38:49,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:38:49,941.941 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:38:50,032.032 INFO    ] No existing commands found in stream
[2026-06-27 06:38:55,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:38:55,066.066 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-27 06:38:57,180.180 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 06:38:57,182.182 INFO    ] Checking for system updates...
[2026-06-27 06:38:57,205.205 INFO    ] 200
[2026-06-27 06:38:57,206.206 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:38:57,239.239 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:38:57,241.241 INFO    ] No update needed
[2026-06-27 06:38:57,242.242 INFO    ] Checking for camera pi updates...
[2026-06-27 06:38:57,265.265 INFO    ] 200
[2026-06-27 06:38:57,266.266 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:38:57,290.290 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:38:57,326.326 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:38:57,328.328 INFO    ] No camera update needed
[2026-06-27 06:38:57,329.329 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:38:57,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:38:57,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:38:57,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:38:59,375.375 INFO    ] ================================================
[2026-06-27 06:38:59,392.392 INFO    ] Launching Daemon at Sat Jun 27 06:38:59 IST 2026
[2026-06-27 06:38:59,404.404 INFO    ] ================================================
[2026-06-27 06:38:59,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:38:59
[2026-06-27 06:39:00,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:39:00,278.278 INFO    ] Initializing speech engine...
[2026-06-27 06:39:00,283.283 INFO    ] 2026-06-27 06:39:00
[2026-06-27 06:39:00,495.495 INFO    ] 2026-06-27 06:39:00
[2026-06-27 06:39:00,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:39:00,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:39:00,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:39:00,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:39:00,937.937 INFO    ] time= 27/06/2026 06:39:00
[2026-06-27 06:39:00,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:39:00,945.945 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:39:01,011.011 INFO    ] No existing commands found in stream
[2026-06-27 06:39:06,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:39:06,025.025 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-27 06:39:07,361.361 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 06:39:07,362.362 INFO    ] Checking for system updates...
[2026-06-27 06:39:07,384.384 INFO    ] 200
[2026-06-27 06:39:07,386.386 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:39:07,417.417 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:39:07,419.419 INFO    ] No update needed
[2026-06-27 06:39:07,420.420 INFO    ] Checking for camera pi updates...
[2026-06-27 06:39:07,440.440 INFO    ] 200
[2026-06-27 06:39:07,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:39:07,465.465 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:39:07,509.509 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:39:07,510.510 INFO    ] No camera update needed
[2026-06-27 06:39:07,512.512 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:39:07,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:39:07,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:39:07,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:39:09,561.561 INFO    ] ================================================
[2026-06-27 06:39:09,577.577 INFO    ] Launching Daemon at Sat Jun 27 06:39:09 IST 2026
[2026-06-27 06:39:09,587.587 INFO    ] ================================================
[2026-06-27 06:39:09,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:39:09
[2026-06-27 06:39:10,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:39:10,376.376 INFO    ] Initializing speech engine...
[2026-06-27 06:39:10,381.381 INFO    ] 2026-06-27 06:39:10
[2026-06-27 06:39:10,569.569 INFO    ] 2026-06-27 06:39:10
[2026-06-27 06:39:10,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:39:10,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:39:10,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:39:10,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:39:11,042.042 INFO    ] time= 27/06/2026 06:39:10
[2026-06-27 06:39:11,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:39:11,078.078 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:39:11,151.151 INFO    ] No existing commands found in stream
[2026-06-27 06:39:16,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:39:16,165.165 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-27 06:39:16,948.948 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:39:16,949.949 INFO    ] Checking for system updates...
[2026-06-27 06:39:16,970.970 INFO    ] 200
[2026-06-27 06:39:16,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:39:17,007.007 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:39:17,009.009 INFO    ] No update needed
[2026-06-27 06:39:17,010.010 INFO    ] Checking for camera pi updates...
[2026-06-27 06:39:17,031.031 INFO    ] 200
[2026-06-27 06:39:17,032.032 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:39:17,055.055 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:39:17,101.101 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:39:17,102.102 INFO    ] No camera update needed
[2026-06-27 06:39:17,104.104 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:39:17,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:39:17,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:39:17,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:39:19,150.150 INFO    ] ================================================
[2026-06-27 06:39:19,170.170 INFO    ] Launching Daemon at Sat Jun 27 06:39:19 IST 2026
[2026-06-27 06:39:19,181.181 INFO    ] ================================================
[2026-06-27 06:39:19,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:39:19
[2026-06-27 06:39:19,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:39:20,008.008 INFO    ] Initializing speech engine...
[2026-06-27 06:39:20,013.013 INFO    ] 2026-06-27 06:39:20
[2026-06-27 06:39:20,217.217 INFO    ] 2026-06-27 06:39:20
[2026-06-27 06:39:20,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:39:20,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:39:20,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:39:20,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:39:20,638.638 INFO    ] time= 27/06/2026 06:39:20
[2026-06-27 06:39:20,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:39:20,666.666 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:39:20,733.733 INFO    ] No existing commands found in stream
[2026-06-27 06:39:25,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:39:25,745.745 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-27 06:39:29,318.318 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:39:29,319.319 INFO    ] Checking for system updates...
[2026-06-27 06:39:29,340.340 INFO    ] 200
[2026-06-27 06:39:29,341.341 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:39:29,374.374 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:39:29,375.375 INFO    ] No update needed
[2026-06-27 06:39:29,376.376 INFO    ] Checking for camera pi updates...
[2026-06-27 06:39:29,397.397 INFO    ] 200
[2026-06-27 06:39:29,399.399 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:39:29,422.422 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:39:29,459.459 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:39:29,460.460 INFO    ] No camera update needed
[2026-06-27 06:39:29,461.461 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:39:29,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:39:29,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:39:29,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:39:31,511.511 INFO    ] ================================================
[2026-06-27 06:39:31,528.528 INFO    ] Launching Daemon at Sat Jun 27 06:39:31 IST 2026
[2026-06-27 06:39:31,535.535 INFO    ] ================================================
[2026-06-27 06:39:31,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:39:31
[2026-06-27 06:39:32,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:39:32,360.360 INFO    ] Initializing speech engine...
[2026-06-27 06:39:32,372.372 INFO    ] 2026-06-27 06:39:32
[2026-06-27 06:39:32,586.586 INFO    ] 2026-06-27 06:39:32
[2026-06-27 06:39:32,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:39:32,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:39:32,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:39:32,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:39:33,005.005 INFO    ] time= 27/06/2026 06:39:32
[2026-06-27 06:39:33,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:39:33,035.035 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:39:33,099.099 INFO    ] No existing commands found in stream
[2026-06-27 06:39:38,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:39:38,113.113 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-27 06:39:40,028.028 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 06:39:40,029.029 INFO    ] Checking for system updates...
[2026-06-27 06:39:40,050.050 INFO    ] 200
[2026-06-27 06:39:40,052.052 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:39:40,082.082 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:39:40,084.084 INFO    ] No update needed
[2026-06-27 06:39:40,085.085 INFO    ] Checking for camera pi updates...
[2026-06-27 06:39:40,105.105 INFO    ] 200
[2026-06-27 06:39:40,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:39:40,132.132 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:39:40,177.177 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:39:40,179.179 INFO    ] No camera update needed
[2026-06-27 06:39:40,180.180 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:39:40,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:39:40,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:39:40,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:39:42,229.229 INFO    ] ================================================
[2026-06-27 06:39:42,245.245 INFO    ] Launching Daemon at Sat Jun 27 06:39:42 IST 2026
[2026-06-27 06:39:42,256.256 INFO    ] ================================================
[2026-06-27 06:39:42,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:39:42
[2026-06-27 06:39:42,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:39:43,071.071 INFO    ] Initializing speech engine...
[2026-06-27 06:39:43,080.080 INFO    ] 2026-06-27 06:39:43
[2026-06-27 06:39:43,285.285 INFO    ] 2026-06-27 06:39:43
[2026-06-27 06:39:43,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:39:43,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:39:43,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:39:43,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:39:43,724.724 INFO    ] time= 27/06/2026 06:39:43
[2026-06-27 06:39:43,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:39:43,731.731 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:39:43,798.798 INFO    ] No existing commands found in stream
[2026-06-27 06:39:48,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:39:48,809.809 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-27 06:39:49,573.573 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 06:39:49,575.575 INFO    ] Checking for system updates...
[2026-06-27 06:39:49,596.596 INFO    ] 200
[2026-06-27 06:39:49,597.597 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:39:49,627.627 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:39:49,629.629 INFO    ] No update needed
[2026-06-27 06:39:49,630.630 INFO    ] Checking for camera pi updates...
[2026-06-27 06:39:49,651.651 INFO    ] 200
[2026-06-27 06:39:49,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:39:49,678.678 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:39:49,715.715 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:39:49,717.717 INFO    ] No camera update needed
[2026-06-27 06:39:49,718.718 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:39:49,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:39:49,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:39:49,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:39:51,765.765 INFO    ] ================================================
[2026-06-27 06:39:51,781.781 INFO    ] Launching Daemon at Sat Jun 27 06:39:51 IST 2026
[2026-06-27 06:39:51,792.792 INFO    ] ================================================
[2026-06-27 06:39:52,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:39:52
[2026-06-27 06:39:52,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:39:52,573.573 INFO    ] Initializing speech engine...
[2026-06-27 06:39:52,578.578 INFO    ] 2026-06-27 06:39:52
[2026-06-27 06:39:52,783.783 INFO    ] 2026-06-27 06:39:52
[2026-06-27 06:39:52,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:39:52,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:39:53,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:39:53,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:39:53,198.198 INFO    ] time= 27/06/2026 06:39:53
[2026-06-27 06:39:53,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:39:53,231.231 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:39:53,322.322 INFO    ] No existing commands found in stream
[2026-06-27 06:39:58,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:39:58,336.336 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-27 06:40:02,066.066 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 06:40:02,070.070 INFO    ] Checking for system updates...
[2026-06-27 06:40:02,133.133 INFO    ] 200
[2026-06-27 06:40:02,135.135 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:40:02,266.266 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:40:02,269.269 INFO    ] No update needed
[2026-06-27 06:40:02,271.271 INFO    ] Checking for camera pi updates...
[2026-06-27 06:40:02,300.300 INFO    ] 200
[2026-06-27 06:40:02,304.304 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:40:02,344.344 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:40:02,430.430 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:40:02,432.432 INFO    ] No camera update needed
[2026-06-27 06:40:02,434.434 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:40:02,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:40:02,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:40:02,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:40:04,479.479 INFO    ] ================================================
[2026-06-27 06:40:04,494.494 INFO    ] Launching Daemon at Sat Jun 27 06:40:04 IST 2026
[2026-06-27 06:40:04,508.508 INFO    ] ================================================
[2026-06-27 06:40:04,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:40:04
[2026-06-27 06:40:05,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:40:05,303.303 INFO    ] Initializing speech engine...
[2026-06-27 06:40:05,308.308 INFO    ] 2026-06-27 06:40:05
[2026-06-27 06:40:05,536.536 INFO    ] 2026-06-27 06:40:05
[2026-06-27 06:40:05,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:40:05,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:40:05,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:40:05,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:40:05,962.962 INFO    ] time= 27/06/2026 06:40:05
[2026-06-27 06:40:06,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:40:06,006.006 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:40:06,084.084 INFO    ] No existing commands found in stream
[2026-06-27 06:40:11,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:40:11,097.097 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-27 06:40:15,330.330 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:40:15,331.331 INFO    ] Checking for system updates...
[2026-06-27 06:40:15,353.353 INFO    ] 200
[2026-06-27 06:40:15,355.355 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:40:15,385.385 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:40:15,386.386 INFO    ] No update needed
[2026-06-27 06:40:15,387.387 INFO    ] Checking for camera pi updates...
[2026-06-27 06:40:15,407.407 INFO    ] 200
[2026-06-27 06:40:15,408.408 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:40:15,431.431 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:40:15,470.470 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:40:15,471.471 INFO    ] No camera update needed
[2026-06-27 06:40:15,472.472 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:40:15,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:40:15,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:40:15,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:40:17,518.518 INFO    ] ================================================
[2026-06-27 06:40:17,534.534 INFO    ] Launching Daemon at Sat Jun 27 06:40:17 IST 2026
[2026-06-27 06:40:17,544.544 INFO    ] ================================================
[2026-06-27 06:40:17,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:40:17
[2026-06-27 06:40:18,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:40:18,357.357 INFO    ] Initializing speech engine...
[2026-06-27 06:40:18,361.361 INFO    ] 2026-06-27 06:40:18
[2026-06-27 06:40:18,589.589 INFO    ] 2026-06-27 06:40:18
[2026-06-27 06:40:18,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:40:18,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:40:18,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:40:18,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:40:19,026.026 INFO    ] time= 27/06/2026 06:40:18
[2026-06-27 06:40:19,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:40:19,067.067 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:40:19,141.141 INFO    ] No existing commands found in stream
[2026-06-27 06:40:24,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:40:24,155.155 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-27 06:40:28,330.330 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 06:40:28,331.331 INFO    ] Checking for system updates...
[2026-06-27 06:40:28,352.352 INFO    ] 200
[2026-06-27 06:40:28,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:40:28,384.384 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:40:28,386.386 INFO    ] No update needed
[2026-06-27 06:40:28,387.387 INFO    ] Checking for camera pi updates...
[2026-06-27 06:40:28,406.406 INFO    ] 200
[2026-06-27 06:40:28,408.408 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:40:28,431.431 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:40:28,480.480 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:40:28,481.481 INFO    ] No camera update needed
[2026-06-27 06:40:28,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:40:28,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:40:28,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:40:28,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:40:30,527.527 INFO    ] ================================================
[2026-06-27 06:40:30,542.542 INFO    ] Launching Daemon at Sat Jun 27 06:40:30 IST 2026
[2026-06-27 06:40:30,556.556 INFO    ] ================================================
[2026-06-27 06:40:30,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:40:30
[2026-06-27 06:40:31,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:40:31,332.332 INFO    ] Initializing speech engine...
[2026-06-27 06:40:31,338.338 INFO    ] 2026-06-27 06:40:31
[2026-06-27 06:40:31,541.541 INFO    ] 2026-06-27 06:40:31
[2026-06-27 06:40:31,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:40:31,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:40:31,764.764 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:40:31,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:40:31,979.979 INFO    ] time= 27/06/2026 06:40:31
[2026-06-27 06:40:32,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:40:32,018.018 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:40:32,119.119 INFO    ] No existing commands found in stream
[2026-06-27 06:40:37,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:40:37,136.136 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-27 06:40:40,140.140 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 06:40:40,141.141 INFO    ] Checking for system updates...
[2026-06-27 06:40:40,164.164 INFO    ] 200
[2026-06-27 06:40:40,166.166 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:40:40,197.197 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:40:40,198.198 INFO    ] No update needed
[2026-06-27 06:40:40,200.200 INFO    ] Checking for camera pi updates...
[2026-06-27 06:40:40,219.219 INFO    ] 200
[2026-06-27 06:40:40,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:40:40,246.246 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:40:40,291.291 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:40:40,293.293 INFO    ] No camera update needed
[2026-06-27 06:40:40,294.294 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:40:40,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:40:40,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:40:40,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:40:42,339.339 INFO    ] ================================================
[2026-06-27 06:40:42,355.355 INFO    ] Launching Daemon at Sat Jun 27 06:40:42 IST 2026
[2026-06-27 06:40:42,365.365 INFO    ] ================================================
[2026-06-27 06:40:42,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:40:42
[2026-06-27 06:40:43,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:40:43,208.208 INFO    ] Initializing speech engine...
[2026-06-27 06:40:43,214.214 INFO    ] 2026-06-27 06:40:43
[2026-06-27 06:40:43,422.422 INFO    ] 2026-06-27 06:40:43
[2026-06-27 06:40:43,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:40:43,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:40:43,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:40:43,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:40:43,849.849 INFO    ] time= 27/06/2026 06:40:43
[2026-06-27 06:40:43,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:40:43,878.878 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:40:43,945.945 INFO    ] No existing commands found in stream
[2026-06-27 06:40:48,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:40:48,959.959 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-27 06:40:52,086.086 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 06:40:52,088.088 INFO    ] Checking for system updates...
[2026-06-27 06:40:52,109.109 INFO    ] 200
[2026-06-27 06:40:52,110.110 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:40:52,141.141 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:40:52,142.142 INFO    ] No update needed
[2026-06-27 06:40:52,144.144 INFO    ] Checking for camera pi updates...
[2026-06-27 06:40:52,164.164 INFO    ] 200
[2026-06-27 06:40:52,165.165 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:40:52,188.188 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:40:52,327.327 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:40:52,328.328 INFO    ] No camera update needed
[2026-06-27 06:40:52,329.329 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:40:52,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:40:52,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:40:52,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:40:54,376.376 INFO    ] ================================================
[2026-06-27 06:40:54,391.391 INFO    ] Launching Daemon at Sat Jun 27 06:40:54 IST 2026
[2026-06-27 06:40:54,401.401 INFO    ] ================================================
[2026-06-27 06:40:54,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:40:54
[2026-06-27 06:40:55,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:40:55,234.234 INFO    ] Initializing speech engine...
[2026-06-27 06:40:55,240.240 INFO    ] 2026-06-27 06:40:55
[2026-06-27 06:40:55,459.459 INFO    ] 2026-06-27 06:40:55
[2026-06-27 06:40:55,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:40:55,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:40:55,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:40:55,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:40:55,904.904 INFO    ] time= 27/06/2026 06:40:55
[2026-06-27 06:40:55,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:40:55,944.944 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:40:56,013.013 INFO    ] No existing commands found in stream
[2026-06-27 06:41:01,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:41:01,027.027 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-27 06:41:01,711.711 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:41:01,712.712 INFO    ] Checking for system updates...
[2026-06-27 06:41:01,743.743 INFO    ] 200
[2026-06-27 06:41:01,745.745 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:41:01,788.788 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:41:01,790.790 INFO    ] No update needed
[2026-06-27 06:41:01,792.792 INFO    ] Checking for camera pi updates...
[2026-06-27 06:41:01,823.823 INFO    ] 200
[2026-06-27 06:41:01,825.825 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:41:01,856.856 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:41:01,907.907 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:41:01,909.909 INFO    ] No camera update needed
[2026-06-27 06:41:01,911.911 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:41:01,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:41:01,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:41:01,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:41:03,960.960 INFO    ] ================================================
[2026-06-27 06:41:03,976.976 INFO    ] Launching Daemon at Sat Jun 27 06:41:03 IST 2026
[2026-06-27 06:41:03,987.987 INFO    ] ================================================
[2026-06-27 06:41:04,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:41:04
[2026-06-27 06:41:04,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:41:04,774.774 INFO    ] Initializing speech engine...
[2026-06-27 06:41:04,778.778 INFO    ] 2026-06-27 06:41:04
[2026-06-27 06:41:04,996.996 INFO    ] 2026-06-27 06:41:04
[2026-06-27 06:41:05,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:41:05,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:41:05,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:41:05,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:41:05,442.442 INFO    ] time= 27/06/2026 06:41:05
[2026-06-27 06:41:05,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:41:05,450.450 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:41:05,517.517 INFO    ] No existing commands found in stream
[2026-06-27 06:41:10,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:41:10,530.530 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-27 06:41:13,442.442 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:41:13,444.444 INFO    ] Checking for system updates...
[2026-06-27 06:41:13,467.467 INFO    ] 200
[2026-06-27 06:41:13,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:41:13,500.500 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:41:13,502.502 INFO    ] No update needed
[2026-06-27 06:41:13,503.503 INFO    ] Checking for camera pi updates...
[2026-06-27 06:41:13,522.522 INFO    ] 200
[2026-06-27 06:41:13,524.524 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:41:13,547.547 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:41:13,592.592 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:41:13,594.594 INFO    ] No camera update needed
[2026-06-27 06:41:13,595.595 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:41:13,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:41:13,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:41:13,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:41:15,641.641 INFO    ] ================================================
[2026-06-27 06:41:15,657.657 INFO    ] Launching Daemon at Sat Jun 27 06:41:15 IST 2026
[2026-06-27 06:41:15,668.668 INFO    ] ================================================
[2026-06-27 06:41:16,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:41:16
[2026-06-27 06:41:16,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:41:16,498.498 INFO    ] Initializing speech engine...
[2026-06-27 06:41:16,503.503 INFO    ] 2026-06-27 06:41:16
[2026-06-27 06:41:16,706.706 INFO    ] 2026-06-27 06:41:16
[2026-06-27 06:41:16,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:41:16,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:41:16,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:41:17,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:41:17,123.123 INFO    ] time= 27/06/2026 06:41:17
[2026-06-27 06:41:17,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:41:17,153.153 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:41:17,220.220 INFO    ] No existing commands found in stream
[2026-06-27 06:41:22,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:41:22,237.237 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-27 06:41:24,073.073 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 06:41:24,074.074 INFO    ] Checking for system updates...
[2026-06-27 06:41:24,095.095 INFO    ] 200
[2026-06-27 06:41:24,097.097 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:41:24,127.127 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:41:24,128.128 INFO    ] No update needed
[2026-06-27 06:41:24,130.130 INFO    ] Checking for camera pi updates...
[2026-06-27 06:41:24,149.149 INFO    ] 200
[2026-06-27 06:41:24,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:41:24,173.173 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:41:24,214.214 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:41:24,215.215 INFO    ] No camera update needed
[2026-06-27 06:41:24,216.216 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:41:24,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:41:24,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:41:24,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:41:26,262.262 INFO    ] ================================================
[2026-06-27 06:41:26,277.277 INFO    ] Launching Daemon at Sat Jun 27 06:41:26 IST 2026
[2026-06-27 06:41:26,288.288 INFO    ] ================================================
[2026-06-27 06:41:26,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:41:26
[2026-06-27 06:41:26,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:41:27,085.085 INFO    ] Initializing speech engine...
[2026-06-27 06:41:27,089.089 INFO    ] 2026-06-27 06:41:27
[2026-06-27 06:41:27,295.295 INFO    ] 2026-06-27 06:41:27
[2026-06-27 06:41:27,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:41:27,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:41:27,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:41:27,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:41:27,704.704 INFO    ] time= 27/06/2026 06:41:27
[2026-06-27 06:41:27,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:41:27,742.742 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:41:27,807.807 INFO    ] No existing commands found in stream
[2026-06-27 06:41:32,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:41:32,820.820 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-27 06:41:33,517.517 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:41:33,519.519 INFO    ] Checking for system updates...
[2026-06-27 06:41:33,539.539 INFO    ] 200
[2026-06-27 06:41:33,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:41:33,574.574 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:41:33,575.575 INFO    ] No update needed
[2026-06-27 06:41:33,577.577 INFO    ] Checking for camera pi updates...
[2026-06-27 06:41:33,596.596 INFO    ] 200
[2026-06-27 06:41:33,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:41:33,621.621 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:41:33,655.655 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:41:33,656.656 INFO    ] No camera update needed
[2026-06-27 06:41:33,658.658 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:41:33,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:41:33,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:41:33,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:41:35,705.705 INFO    ] ================================================
[2026-06-27 06:41:35,720.720 INFO    ] Launching Daemon at Sat Jun 27 06:41:35 IST 2026
[2026-06-27 06:41:35,730.730 INFO    ] ================================================
[2026-06-27 06:41:36,075.075 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:41:36
[2026-06-27 06:41:36,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:41:36,522.522 INFO    ] Initializing speech engine...
[2026-06-27 06:41:36,526.526 INFO    ] 2026-06-27 06:41:36
[2026-06-27 06:41:36,755.755 INFO    ] 2026-06-27 06:41:36
[2026-06-27 06:41:36,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:41:36,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:41:36,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:41:37,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:41:37,199.199 INFO    ] time= 27/06/2026 06:41:37
[2026-06-27 06:41:37,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:41:37,239.239 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:41:37,312.312 INFO    ] No existing commands found in stream
[2026-06-27 06:41:42,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:41:42,324.324 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-27 06:41:44,411.411 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 06:41:44,412.412 INFO    ] Checking for system updates...
[2026-06-27 06:41:44,434.434 INFO    ] 200
[2026-06-27 06:41:44,436.436 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:41:44,466.466 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:41:44,468.468 INFO    ] No update needed
[2026-06-27 06:41:44,469.469 INFO    ] Checking for camera pi updates...
[2026-06-27 06:41:44,491.491 INFO    ] 200
[2026-06-27 06:41:44,492.492 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:41:44,516.516 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:41:44,556.556 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:41:44,557.557 INFO    ] No camera update needed
[2026-06-27 06:41:44,559.559 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:41:44,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:41:44,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:41:44,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:41:46,604.604 INFO    ] ================================================
[2026-06-27 06:41:46,619.619 INFO    ] Launching Daemon at Sat Jun 27 06:41:46 IST 2026
[2026-06-27 06:41:46,630.630 INFO    ] ================================================
[2026-06-27 06:41:46,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:41:46
[2026-06-27 06:41:47,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:41:47,448.448 INFO    ] Initializing speech engine...
[2026-06-27 06:41:47,458.458 INFO    ] 2026-06-27 06:41:47
[2026-06-27 06:41:47,676.676 INFO    ] 2026-06-27 06:41:47
[2026-06-27 06:41:47,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:41:47,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:41:47,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:41:48,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:41:48,048.048 INFO    ] time= 27/06/2026 06:41:48
[2026-06-27 06:41:48,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:41:48,153.153 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:41:48,229.229 INFO    ] No existing commands found in stream
[2026-06-27 06:41:53,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:41:53,242.242 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-27 06:41:54,536.536 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:41:54,537.537 INFO    ] Checking for system updates...
[2026-06-27 06:41:54,558.558 INFO    ] 200
[2026-06-27 06:41:54,559.559 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:41:54,590.590 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:41:54,591.591 INFO    ] No update needed
[2026-06-27 06:41:54,593.593 INFO    ] Checking for camera pi updates...
[2026-06-27 06:41:54,613.613 INFO    ] 200
[2026-06-27 06:41:54,614.614 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:41:54,639.639 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:41:54,666.666 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:41:54,668.668 INFO    ] No camera update needed
[2026-06-27 06:41:54,669.669 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:41:54,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:41:54,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:41:54,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:41:56,715.715 INFO    ] ================================================
[2026-06-27 06:41:56,730.730 INFO    ] Launching Daemon at Sat Jun 27 06:41:56 IST 2026
[2026-06-27 06:41:56,740.740 INFO    ] ================================================
[2026-06-27 06:41:57,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:41:57
[2026-06-27 06:41:57,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:41:57,531.531 INFO    ] Initializing speech engine...
[2026-06-27 06:41:57,536.536 INFO    ] 2026-06-27 06:41:57
[2026-06-27 06:41:57,741.741 INFO    ] 2026-06-27 06:41:57
[2026-06-27 06:41:57,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:41:57,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:41:57,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:41:58,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:41:58,155.155 INFO    ] time= 27/06/2026 06:41:58
[2026-06-27 06:41:58,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:41:58,194.194 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:41:58,290.290 INFO    ] No existing commands found in stream
[2026-06-27 06:42:03,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:42:03,299.299 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-27 06:42:06,860.860 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 06:42:06,861.861 INFO    ] Checking for system updates...
[2026-06-27 06:42:06,882.882 INFO    ] 200
[2026-06-27 06:42:06,883.883 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:42:06,918.918 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:42:06,920.920 INFO    ] No update needed
[2026-06-27 06:42:06,921.921 INFO    ] Checking for camera pi updates...
[2026-06-27 06:42:06,941.941 INFO    ] 200
[2026-06-27 06:42:06,943.943 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:42:06,966.966 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:42:07,012.012 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:42:07,013.013 INFO    ] No camera update needed
[2026-06-27 06:42:07,014.014 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:42:07,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:42:07,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:42:07,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:42:09,059.059 INFO    ] ================================================
[2026-06-27 06:42:09,074.074 INFO    ] Launching Daemon at Sat Jun 27 06:42:09 IST 2026
[2026-06-27 06:42:09,085.085 INFO    ] ================================================
[2026-06-27 06:42:09,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:42:09
[2026-06-27 06:42:09,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:42:09,900.900 INFO    ] Initializing speech engine...
[2026-06-27 06:42:09,905.905 INFO    ] 2026-06-27 06:42:09
[2026-06-27 06:42:10,108.108 INFO    ] 2026-06-27 06:42:10
[2026-06-27 06:42:10,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:42:10,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:42:10,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:42:10,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:42:10,529.529 INFO    ] time= 27/06/2026 06:42:10
[2026-06-27 06:42:10,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:42:10,559.559 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:42:10,625.625 INFO    ] No existing commands found in stream
[2026-06-27 06:42:15,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:42:15,637.637 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-27 06:42:17,906.906 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:42:17,908.908 INFO    ] Checking for system updates...
[2026-06-27 06:42:17,929.929 INFO    ] 200
[2026-06-27 06:42:17,930.930 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:42:17,960.960 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:42:17,961.961 INFO    ] No update needed
[2026-06-27 06:42:17,962.962 INFO    ] Checking for camera pi updates...
[2026-06-27 06:42:17,982.982 INFO    ] 200
[2026-06-27 06:42:17,983.983 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:42:18,009.009 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:42:18,049.049 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:42:18,050.050 INFO    ] No camera update needed
[2026-06-27 06:42:18,052.052 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:42:18,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:42:18,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:42:18,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:42:20,098.098 INFO    ] ================================================
[2026-06-27 06:42:20,113.113 INFO    ] Launching Daemon at Sat Jun 27 06:42:20 IST 2026
[2026-06-27 06:42:20,124.124 INFO    ] ================================================
[2026-06-27 06:42:20,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:42:20
[2026-06-27 06:42:20,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:42:20,896.896 INFO    ] Initializing speech engine...
[2026-06-27 06:42:20,906.906 INFO    ] 2026-06-27 06:42:20
[2026-06-27 06:42:21,111.111 INFO    ] 2026-06-27 06:42:21
[2026-06-27 06:42:21,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:42:21,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:42:21,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:42:21,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:42:21,527.527 INFO    ] time= 27/06/2026 06:42:21
[2026-06-27 06:42:21,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:42:21,556.556 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:42:21,605.605 INFO    ] No existing commands found in stream
[2026-06-27 06:42:26,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:42:26,616.616 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-27 06:42:29,712.712 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:42:29,714.714 INFO    ] Checking for system updates...
[2026-06-27 06:42:29,736.736 INFO    ] 200
[2026-06-27 06:42:29,738.738 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:42:29,771.771 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:42:29,772.772 INFO    ] No update needed
[2026-06-27 06:42:29,774.774 INFO    ] Checking for camera pi updates...
[2026-06-27 06:42:29,794.794 INFO    ] 200
[2026-06-27 06:42:29,795.795 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:42:29,818.818 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:42:29,855.855 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:42:29,857.857 INFO    ] No camera update needed
[2026-06-27 06:42:29,858.858 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:42:29,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:42:29,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:42:29,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:42:31,891.891 INFO    ] ================================================
[2026-06-27 06:42:31,900.900 INFO    ] Launching Daemon at Sat Jun 27 06:42:31 IST 2026
[2026-06-27 06:42:31,907.907 INFO    ] ================================================
[2026-06-27 06:42:32,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:42:32
[2026-06-27 06:42:32,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:42:32,696.696 INFO    ] Initializing speech engine...
[2026-06-27 06:42:32,704.704 INFO    ] 2026-06-27 06:42:32
[2026-06-27 06:42:32,914.914 INFO    ] 2026-06-27 06:42:32
[2026-06-27 06:42:32,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:42:33,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:42:33,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:42:33,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:42:33,333.333 INFO    ] time= 27/06/2026 06:42:33
[2026-06-27 06:42:33,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:42:33,363.363 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:42:33,430.430 INFO    ] No existing commands found in stream
[2026-06-27 06:42:38,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:42:38,442.442 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-27 06:42:40,760.760 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 06:42:40,762.762 INFO    ] Checking for system updates...
[2026-06-27 06:42:40,783.783 INFO    ] 200
[2026-06-27 06:42:40,785.785 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:42:40,817.817 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:42:40,818.818 INFO    ] No update needed
[2026-06-27 06:42:40,820.820 INFO    ] Checking for camera pi updates...
[2026-06-27 06:42:40,840.840 INFO    ] 200
[2026-06-27 06:42:40,841.841 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:42:40,865.865 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:42:40,915.915 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:42:40,916.916 INFO    ] No camera update needed
[2026-06-27 06:42:40,918.918 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:42:40,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:42:40,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:42:40,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:42:42,963.963 INFO    ] ================================================
[2026-06-27 06:42:42,979.979 INFO    ] Launching Daemon at Sat Jun 27 06:42:42 IST 2026
[2026-06-27 06:42:42,990.990 INFO    ] ================================================
[2026-06-27 06:42:43,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:42:43
[2026-06-27 06:42:43,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:42:43,773.773 INFO    ] Initializing speech engine...
[2026-06-27 06:42:43,776.776 INFO    ] 2026-06-27 06:42:43
[2026-06-27 06:42:44,004.004 INFO    ] 2026-06-27 06:42:43
[2026-06-27 06:42:44,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:42:44,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:42:44,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:42:44,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:42:44,433.433 INFO    ] time= 27/06/2026 06:42:44
[2026-06-27 06:42:44,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:42:44,484.484 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:42:44,560.560 INFO    ] No existing commands found in stream
[2026-06-27 06:42:49,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:42:49,573.573 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-27 06:42:52,923.923 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:42:52,924.924 INFO    ] Checking for system updates...
[2026-06-27 06:42:52,946.946 INFO    ] 200
[2026-06-27 06:42:52,947.947 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:42:52,979.979 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:42:52,981.981 INFO    ] No update needed
[2026-06-27 06:42:52,982.982 INFO    ] Checking for camera pi updates...
[2026-06-27 06:42:53,005.005 INFO    ] 200
[2026-06-27 06:42:53,006.006 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:42:53,034.034 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:42:53,178.178 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:42:53,179.179 INFO    ] No camera update needed
[2026-06-27 06:42:53,181.181 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:42:53,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:42:53,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:42:53,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:42:55,227.227 INFO    ] ================================================
[2026-06-27 06:42:55,242.242 INFO    ] Launching Daemon at Sat Jun 27 06:42:55 IST 2026
[2026-06-27 06:42:55,254.254 INFO    ] ================================================
[2026-06-27 06:42:55,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:42:55
[2026-06-27 06:42:55,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:42:56,077.077 INFO    ] Initializing speech engine...
[2026-06-27 06:42:56,082.082 INFO    ] 2026-06-27 06:42:56
[2026-06-27 06:42:56,287.287 INFO    ] 2026-06-27 06:42:56
[2026-06-27 06:42:56,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:42:56,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:42:56,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:42:56,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:42:56,705.705 INFO    ] time= 27/06/2026 06:42:56
[2026-06-27 06:42:56,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:42:56,734.734 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:42:56,801.801 INFO    ] No existing commands found in stream
[2026-06-27 06:43:01,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:43:01,813.813 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-27 06:43:06,010.010 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:43:06,011.011 INFO    ] Checking for system updates...
[2026-06-27 06:43:06,032.032 INFO    ] 200
[2026-06-27 06:43:06,034.034 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:43:06,064.064 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:43:06,065.065 INFO    ] No update needed
[2026-06-27 06:43:06,066.066 INFO    ] Checking for camera pi updates...
[2026-06-27 06:43:06,087.087 INFO    ] 200
[2026-06-27 06:43:06,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:43:06,114.114 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:43:06,164.164 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:43:06,165.165 INFO    ] No camera update needed
[2026-06-27 06:43:06,167.167 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:43:06,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:43:06,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:43:06,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:43:08,214.214 INFO    ] ================================================
[2026-06-27 06:43:08,229.229 INFO    ] Launching Daemon at Sat Jun 27 06:43:08 IST 2026
[2026-06-27 06:43:08,240.240 INFO    ] ================================================
[2026-06-27 06:43:08,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:43:08
[2026-06-27 06:43:08,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:43:09,043.043 INFO    ] Initializing speech engine...
[2026-06-27 06:43:09,047.047 INFO    ] 2026-06-27 06:43:09
[2026-06-27 06:43:09,251.251 INFO    ] 2026-06-27 06:43:09
[2026-06-27 06:43:09,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:43:09,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:43:09,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:43:09,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:43:09,696.696 INFO    ] time= 27/06/2026 06:43:09
[2026-06-27 06:43:09,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:43:09,704.704 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:43:09,803.803 INFO    ] No existing commands found in stream
[2026-06-27 06:43:14,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:43:14,820.820 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-27 06:43:15,800.800 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:43:15,801.801 INFO    ] Checking for system updates...
[2026-06-27 06:43:15,822.822 INFO    ] 200
[2026-06-27 06:43:15,824.824 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:43:15,855.855 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:43:15,857.857 INFO    ] No update needed
[2026-06-27 06:43:15,858.858 INFO    ] Checking for camera pi updates...
[2026-06-27 06:43:15,878.878 INFO    ] 200
[2026-06-27 06:43:15,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:43:15,903.903 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:43:15,941.941 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:43:15,942.942 INFO    ] No camera update needed
[2026-06-27 06:43:15,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:43:15,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:43:15,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:43:15,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:43:17,991.991 INFO    ] ================================================
[2026-06-27 06:43:18,007.007 INFO    ] Launching Daemon at Sat Jun 27 06:43:18 IST 2026
[2026-06-27 06:43:18,018.018 INFO    ] ================================================
[2026-06-27 06:43:18,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:43:18
[2026-06-27 06:43:18,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:43:18,855.855 INFO    ] Initializing speech engine...
[2026-06-27 06:43:18,860.860 INFO    ] 2026-06-27 06:43:18
[2026-06-27 06:43:19,067.067 INFO    ] 2026-06-27 06:43:19
[2026-06-27 06:43:19,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:43:19,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:43:19,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:43:19,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:43:19,485.485 INFO    ] time= 27/06/2026 06:43:19
[2026-06-27 06:43:19,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:43:19,514.514 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:43:19,580.580 INFO    ] No existing commands found in stream
[2026-06-27 06:43:24,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:43:24,593.593 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-27 06:43:28,208.208 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:43:28,209.209 INFO    ] Checking for system updates...
[2026-06-27 06:43:28,231.231 INFO    ] 200
[2026-06-27 06:43:28,233.233 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:43:28,266.266 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:43:28,267.267 INFO    ] No update needed
[2026-06-27 06:43:28,268.268 INFO    ] Checking for camera pi updates...
[2026-06-27 06:43:28,288.288 INFO    ] 200
[2026-06-27 06:43:28,289.289 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:43:28,312.312 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:43:28,358.358 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:43:28,359.359 INFO    ] No camera update needed
[2026-06-27 06:43:28,361.361 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:43:28,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:43:28,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:43:28,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:43:30,408.408 INFO    ] ================================================
[2026-06-27 06:43:30,424.424 INFO    ] Launching Daemon at Sat Jun 27 06:43:30 IST 2026
[2026-06-27 06:43:30,435.435 INFO    ] ================================================
[2026-06-27 06:43:30,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:43:30
[2026-06-27 06:43:31,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:43:31,230.230 INFO    ] Initializing speech engine...
[2026-06-27 06:43:31,237.237 INFO    ] 2026-06-27 06:43:31
[2026-06-27 06:43:31,446.446 INFO    ] 2026-06-27 06:43:31
[2026-06-27 06:43:31,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:43:31,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:43:31,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:43:31,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:43:31,865.865 INFO    ] time= 27/06/2026 06:43:31
[2026-06-27 06:43:31,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:43:31,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:43:31,972.972 INFO    ] No existing commands found in stream
[2026-06-27 06:43:36,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:43:36,990.990 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-27 06:43:39,003.003 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:43:39,004.004 INFO    ] Checking for system updates...
[2026-06-27 06:43:39,030.030 INFO    ] 200
[2026-06-27 06:43:39,031.031 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:43:39,065.065 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:43:39,066.066 INFO    ] No update needed
[2026-06-27 06:43:39,067.067 INFO    ] Checking for camera pi updates...
[2026-06-27 06:43:39,088.088 INFO    ] 200
[2026-06-27 06:43:39,090.090 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:43:39,122.122 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:43:39,162.162 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:43:39,164.164 INFO    ] No camera update needed
[2026-06-27 06:43:39,166.166 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:43:39,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:43:39,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:43:39,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:43:41,213.213 INFO    ] ================================================
[2026-06-27 06:43:41,229.229 INFO    ] Launching Daemon at Sat Jun 27 06:43:41 IST 2026
[2026-06-27 06:43:41,240.240 INFO    ] ================================================
[2026-06-27 06:43:41,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:43:41
[2026-06-27 06:43:41,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:43:42,047.047 INFO    ] Initializing speech engine...
[2026-06-27 06:43:42,058.058 INFO    ] 2026-06-27 06:43:42
[2026-06-27 06:43:42,264.264 INFO    ] 2026-06-27 06:43:42
[2026-06-27 06:43:42,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:43:42,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:43:42,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:43:42,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:43:42,692.692 INFO    ] time= 27/06/2026 06:43:42
[2026-06-27 06:43:42,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:43:42,720.720 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:43:42,787.787 INFO    ] No existing commands found in stream
[2026-06-27 06:43:47,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:43:47,799.799 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-27 06:43:48,563.563 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 06:43:48,565.565 INFO    ] Checking for system updates...
[2026-06-27 06:43:48,586.586 INFO    ] 200
[2026-06-27 06:43:48,587.587 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:43:48,622.622 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:43:48,624.624 INFO    ] No update needed
[2026-06-27 06:43:48,625.625 INFO    ] Checking for camera pi updates...
[2026-06-27 06:43:48,646.646 INFO    ] 200
[2026-06-27 06:43:48,647.647 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:43:48,672.672 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:43:48,713.713 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:43:48,714.714 INFO    ] No camera update needed
[2026-06-27 06:43:48,715.715 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:43:48,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:43:48,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:43:48,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:43:50,763.763 INFO    ] ================================================
[2026-06-27 06:43:50,780.780 INFO    ] Launching Daemon at Sat Jun 27 06:43:50 IST 2026
[2026-06-27 06:43:50,791.791 INFO    ] ================================================
[2026-06-27 06:43:51,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:43:51
[2026-06-27 06:43:51,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:43:51,603.603 INFO    ] Initializing speech engine...
[2026-06-27 06:43:51,612.612 INFO    ] 2026-06-27 06:43:51
[2026-06-27 06:43:51,818.818 INFO    ] 2026-06-27 06:43:51
[2026-06-27 06:43:51,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:43:52,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:43:52,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:43:52,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:43:52,237.237 INFO    ] time= 27/06/2026 06:43:52
[2026-06-27 06:43:52,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:43:52,267.267 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:43:52,332.332 INFO    ] No existing commands found in stream
[2026-06-27 06:43:57,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:43:57,345.345 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-27 06:43:58,921.921 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:43:58,923.923 INFO    ] Checking for system updates...
[2026-06-27 06:43:58,943.943 INFO    ] 200
[2026-06-27 06:43:58,945.945 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:43:58,975.975 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:43:58,976.976 INFO    ] No update needed
[2026-06-27 06:43:58,978.978 INFO    ] Checking for camera pi updates...
[2026-06-27 06:43:58,997.997 INFO    ] 200
[2026-06-27 06:43:58,998.998 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:43:59,026.026 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:43:59,064.064 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:43:59,065.065 INFO    ] No camera update needed
[2026-06-27 06:43:59,067.067 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:43:59,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:43:59,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:43:59,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:44:01,112.112 INFO    ] ================================================
[2026-06-27 06:44:01,128.128 INFO    ] Launching Daemon at Sat Jun 27 06:44:01 IST 2026
[2026-06-27 06:44:01,139.139 INFO    ] ================================================
[2026-06-27 06:44:01,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:44:01
[2026-06-27 06:44:02,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:44:02,204.204 INFO    ] Initializing speech engine...
[2026-06-27 06:44:02,212.212 INFO    ] 2026-06-27 06:44:02
[2026-06-27 06:44:02,471.471 INFO    ] 2026-06-27 06:44:02
[2026-06-27 06:44:02,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:44:02,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:44:02,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:44:02,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:44:02,894.894 INFO    ] time= 27/06/2026 06:44:02
[2026-06-27 06:44:02,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:44:02,927.927 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:44:02,994.994 INFO    ] No existing commands found in stream
[2026-06-27 06:44:08,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:44:08,006.006 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-27 06:44:09,959.959 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:44:09,960.960 INFO    ] Checking for system updates...
[2026-06-27 06:44:09,981.981 INFO    ] 200
[2026-06-27 06:44:09,983.983 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:44:10,013.013 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:44:10,015.015 INFO    ] No update needed
[2026-06-27 06:44:10,016.016 INFO    ] Checking for camera pi updates...
[2026-06-27 06:44:10,036.036 INFO    ] 200
[2026-06-27 06:44:10,037.037 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:44:10,065.065 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:44:10,102.102 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:44:10,104.104 INFO    ] No camera update needed
[2026-06-27 06:44:10,105.105 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:44:10,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:44:10,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:44:10,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:44:12,152.152 INFO    ] ================================================
[2026-06-27 06:44:12,167.167 INFO    ] Launching Daemon at Sat Jun 27 06:44:12 IST 2026
[2026-06-27 06:44:12,178.178 INFO    ] ================================================
[2026-06-27 06:44:12,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:44:12
[2026-06-27 06:44:12,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:44:12,993.993 INFO    ] Initializing speech engine...
[2026-06-27 06:44:12,998.998 INFO    ] 2026-06-27 06:44:12
[2026-06-27 06:44:13,202.202 INFO    ] 2026-06-27 06:44:13
[2026-06-27 06:44:13,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:44:13,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:44:13,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:44:13,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:44:13,618.618 INFO    ] time= 27/06/2026 06:44:13
[2026-06-27 06:44:13,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:44:13,647.647 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:44:13,714.714 INFO    ] No existing commands found in stream
[2026-06-27 06:44:18,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:44:18,726.726 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-27 06:44:21,200.200 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 06:44:21,201.201 INFO    ] Checking for system updates...
[2026-06-27 06:44:21,224.224 INFO    ] 200
[2026-06-27 06:44:21,226.226 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:44:21,259.259 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:44:21,261.261 INFO    ] No update needed
[2026-06-27 06:44:21,262.262 INFO    ] Checking for camera pi updates...
[2026-06-27 06:44:21,283.283 INFO    ] 200
[2026-06-27 06:44:21,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:44:21,308.308 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:44:21,350.350 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:44:21,351.351 INFO    ] No camera update needed
[2026-06-27 06:44:21,353.353 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:44:21,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:44:21,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:44:21,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:44:23,401.401 INFO    ] ================================================
[2026-06-27 06:44:23,417.417 INFO    ] Launching Daemon at Sat Jun 27 06:44:23 IST 2026
[2026-06-27 06:44:23,428.428 INFO    ] ================================================
[2026-06-27 06:44:23,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:44:23
[2026-06-27 06:44:24,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:44:24,216.216 INFO    ] Initializing speech engine...
[2026-06-27 06:44:24,221.221 INFO    ] 2026-06-27 06:44:24
[2026-06-27 06:44:24,437.437 INFO    ] 2026-06-27 06:44:24
[2026-06-27 06:44:24,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:44:24,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:44:24,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:44:24,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:44:24,856.856 INFO    ] time= 27/06/2026 06:44:24
[2026-06-27 06:44:24,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:44:24,902.902 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:44:24,978.978 INFO    ] No existing commands found in stream
[2026-06-27 06:44:29,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:44:29,991.991 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-27 06:44:32,078.078 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 06:44:32,080.080 INFO    ] Checking for system updates...
[2026-06-27 06:44:32,113.113 INFO    ] 200
[2026-06-27 06:44:32,115.115 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:44:32,151.151 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:44:32,154.154 INFO    ] No update needed
[2026-06-27 06:44:32,156.156 INFO    ] Checking for camera pi updates...
[2026-06-27 06:44:32,177.177 INFO    ] 200
[2026-06-27 06:44:32,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:44:32,204.204 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:44:32,227.227 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:44:32,229.229 INFO    ] No camera update needed
[2026-06-27 06:44:32,230.230 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:44:32,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:44:32,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:44:32,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:44:34,276.276 INFO    ] ================================================
[2026-06-27 06:44:34,291.291 INFO    ] Launching Daemon at Sat Jun 27 06:44:34 IST 2026
[2026-06-27 06:44:34,303.303 INFO    ] ================================================
[2026-06-27 06:44:34,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:44:34
[2026-06-27 06:44:34,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:44:35,147.147 INFO    ] Initializing speech engine...
[2026-06-27 06:44:35,153.153 INFO    ] 2026-06-27 06:44:35
[2026-06-27 06:44:35,364.364 INFO    ] 2026-06-27 06:44:35
[2026-06-27 06:44:35,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:44:35,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:44:35,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:44:35,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:44:35,789.789 INFO    ] time= 27/06/2026 06:44:35
[2026-06-27 06:44:35,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:44:35,824.824 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:44:35,892.892 INFO    ] No existing commands found in stream
[2026-06-27 06:44:40,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:44:40,910.910 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-27 06:44:44,376.376 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 06:44:44,378.378 INFO    ] Checking for system updates...
[2026-06-27 06:44:44,399.399 INFO    ] 200
[2026-06-27 06:44:44,400.400 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:44:44,431.431 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:44:44,433.433 INFO    ] No update needed
[2026-06-27 06:44:44,435.435 INFO    ] Checking for camera pi updates...
[2026-06-27 06:44:44,456.456 INFO    ] 200
[2026-06-27 06:44:44,457.457 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:44:44,485.485 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:44:44,534.534 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:44:44,536.536 INFO    ] No camera update needed
[2026-06-27 06:44:44,538.538 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:44:44,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:44:44,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:44:44,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:44:46,588.588 INFO    ] ================================================
[2026-06-27 06:44:46,605.605 INFO    ] Launching Daemon at Sat Jun 27 06:44:46 IST 2026
[2026-06-27 06:44:46,617.617 INFO    ] ================================================
[2026-06-27 06:44:46,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:44:46
[2026-06-27 06:44:47,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:44:47,440.440 INFO    ] Initializing speech engine...
[2026-06-27 06:44:47,447.447 INFO    ] 2026-06-27 06:44:47
[2026-06-27 06:44:47,665.665 INFO    ] 2026-06-27 06:44:47
[2026-06-27 06:44:47,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:44:47,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:44:47,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:44:48,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:44:48,086.086 INFO    ] time= 27/06/2026 06:44:48
[2026-06-27 06:44:48,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:44:48,115.115 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:44:48,183.183 INFO    ] No existing commands found in stream
[2026-06-27 06:44:53,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:44:53,211.211 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-27 06:44:56,004.004 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 06:44:56,005.005 INFO    ] Checking for system updates...
[2026-06-27 06:44:56,026.026 INFO    ] 200
[2026-06-27 06:44:56,028.028 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:44:56,058.058 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:44:56,060.060 INFO    ] No update needed
[2026-06-27 06:44:56,061.061 INFO    ] Checking for camera pi updates...
[2026-06-27 06:44:56,081.081 INFO    ] 200
[2026-06-27 06:44:56,083.083 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:44:56,107.107 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:44:56,250.250 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:44:56,252.252 INFO    ] No camera update needed
[2026-06-27 06:44:56,253.253 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:44:56,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:44:56,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:44:56,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:44:58,300.300 INFO    ] ================================================
[2026-06-27 06:44:58,317.317 INFO    ] Launching Daemon at Sat Jun 27 06:44:58 IST 2026
[2026-06-27 06:44:58,329.329 INFO    ] ================================================
[2026-06-27 06:44:58,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:44:58
[2026-06-27 06:44:59,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:44:59,200.200 INFO    ] Initializing speech engine...
[2026-06-27 06:44:59,206.206 INFO    ] 2026-06-27 06:44:59
[2026-06-27 06:44:59,414.414 INFO    ] 2026-06-27 06:44:59
[2026-06-27 06:44:59,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:44:59,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:44:59,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:44:59,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:44:59,827.827 INFO    ] time= 27/06/2026 06:44:59
[2026-06-27 06:44:59,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:44:59,867.867 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:44:59,937.937 INFO    ] No existing commands found in stream
[2026-06-27 06:45:04,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:45:04,951.951 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-27 06:45:06,356.356 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 06:45:06,359.359 INFO    ] Checking for system updates...
[2026-06-27 06:45:06,381.381 INFO    ] 200
[2026-06-27 06:45:06,383.383 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:45:06,414.414 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:45:06,416.416 INFO    ] No update needed
[2026-06-27 06:45:06,417.417 INFO    ] Checking for camera pi updates...
[2026-06-27 06:45:06,438.438 INFO    ] 200
[2026-06-27 06:45:06,440.440 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:45:06,468.468 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:45:06,522.522 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:45:06,524.524 INFO    ] No camera update needed
[2026-06-27 06:45:06,525.525 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:45:06,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:45:06,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:45:06,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:45:08,574.574 INFO    ] ================================================
[2026-06-27 06:45:08,590.590 INFO    ] Launching Daemon at Sat Jun 27 06:45:08 IST 2026
[2026-06-27 06:45:08,601.601 INFO    ] ================================================
[2026-06-27 06:45:08,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:45:08
[2026-06-27 06:45:09,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:45:09,421.421 INFO    ] Initializing speech engine...
[2026-06-27 06:45:09,427.427 INFO    ] 2026-06-27 06:45:09
[2026-06-27 06:45:09,630.630 INFO    ] 2026-06-27 06:45:09
[2026-06-27 06:45:09,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:45:09,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:45:09,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:45:09,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:45:10,041.041 INFO    ] time= 27/06/2026 06:45:09
[2026-06-27 06:45:10,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:45:10,079.079 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:45:10,146.146 INFO    ] No existing commands found in stream
[2026-06-27 06:45:15,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:45:15,158.158 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-27 06:45:17,436.436 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 06:45:17,437.437 INFO    ] Checking for system updates...
[2026-06-27 06:45:17,458.458 INFO    ] 200
[2026-06-27 06:45:17,459.459 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:45:17,490.490 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:45:17,491.491 INFO    ] No update needed
[2026-06-27 06:45:17,492.492 INFO    ] Checking for camera pi updates...
[2026-06-27 06:45:17,512.512 INFO    ] 200
[2026-06-27 06:45:17,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:45:17,537.537 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:45:17,587.587 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:45:17,588.588 INFO    ] No camera update needed
[2026-06-27 06:45:17,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:45:17,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:45:17,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:45:17,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:45:19,637.637 INFO    ] ================================================
[2026-06-27 06:45:19,653.653 INFO    ] Launching Daemon at Sat Jun 27 06:45:19 IST 2026
[2026-06-27 06:45:19,664.664 INFO    ] ================================================
[2026-06-27 06:45:20,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:45:20
[2026-06-27 06:45:20,383.383 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:45:20,537.537 INFO    ] Initializing speech engine...
[2026-06-27 06:45:20,541.541 INFO    ] 2026-06-27 06:45:20
[2026-06-27 06:45:20,779.779 INFO    ] 2026-06-27 06:45:20
[2026-06-27 06:45:20,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:45:21,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:45:21,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:45:21,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:45:21,280.280 INFO    ] time= 27/06/2026 06:45:21
[2026-06-27 06:45:21,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:45:21,304.304 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:45:21,390.390 INFO    ] No existing commands found in stream
[2026-06-27 06:45:26,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:45:26,425.425 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-27 06:45:30,030.030 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 06:45:30,032.032 INFO    ] Checking for system updates...
[2026-06-27 06:45:30,068.068 INFO    ] 200
[2026-06-27 06:45:30,070.070 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:45:30,120.120 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:45:30,122.122 INFO    ] No update needed
[2026-06-27 06:45:30,124.124 INFO    ] Checking for camera pi updates...
[2026-06-27 06:45:30,146.146 INFO    ] 200
[2026-06-27 06:45:30,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:45:30,174.174 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:45:30,211.211 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:45:30,213.213 INFO    ] No camera update needed
[2026-06-27 06:45:30,214.214 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:45:30,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:45:30,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:45:30,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:45:32,255.255 INFO    ] ================================================
[2026-06-27 06:45:32,265.265 INFO    ] Launching Daemon at Sat Jun 27 06:45:32 IST 2026
[2026-06-27 06:45:32,272.272 INFO    ] ================================================
[2026-06-27 06:45:32,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:45:32
[2026-06-27 06:45:32,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:45:33,080.080 INFO    ] Initializing speech engine...
[2026-06-27 06:45:33,088.088 INFO    ] 2026-06-27 06:45:33
[2026-06-27 06:45:33,295.295 INFO    ] 2026-06-27 06:45:33
[2026-06-27 06:45:33,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:45:33,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:45:33,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:45:33,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:45:33,712.712 INFO    ] time= 27/06/2026 06:45:33
[2026-06-27 06:45:33,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:45:33,746.746 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:45:33,813.813 INFO    ] No existing commands found in stream
[2026-06-27 06:45:38,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:45:38,825.825 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-27 06:45:43,121.121 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 06:45:43,122.122 INFO    ] Checking for system updates...
[2026-06-27 06:45:43,143.143 INFO    ] 200
[2026-06-27 06:45:43,145.145 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:45:43,175.175 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:45:43,176.176 INFO    ] No update needed
[2026-06-27 06:45:43,177.177 INFO    ] Checking for camera pi updates...
[2026-06-27 06:45:43,199.199 INFO    ] 200
[2026-06-27 06:45:43,201.201 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:45:43,224.224 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:45:43,269.269 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:45:43,270.270 INFO    ] No camera update needed
[2026-06-27 06:45:43,271.271 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:45:43,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:45:43,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:45:43,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:45:45,317.317 INFO    ] ================================================
[2026-06-27 06:45:45,333.333 INFO    ] Launching Daemon at Sat Jun 27 06:45:45 IST 2026
[2026-06-27 06:45:45,343.343 INFO    ] ================================================
[2026-06-27 06:45:45,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:45:45
[2026-06-27 06:45:46,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:45:46,159.159 INFO    ] Initializing speech engine...
[2026-06-27 06:45:46,163.163 INFO    ] 2026-06-27 06:45:46
[2026-06-27 06:45:46,380.380 INFO    ] 2026-06-27 06:45:46
[2026-06-27 06:45:46,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:45:46,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:45:46,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:45:46,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:45:46,800.800 INFO    ] time= 27/06/2026 06:45:46
[2026-06-27 06:45:46,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:45:46,835.835 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:45:46,903.903 INFO    ] No existing commands found in stream
[2026-06-27 06:45:51,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:45:51,915.915 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-27 06:45:55,891.891 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 06:45:55,893.893 INFO    ] Checking for system updates...
[2026-06-27 06:45:55,914.914 INFO    ] 200
[2026-06-27 06:45:55,915.915 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:45:55,947.947 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:45:55,948.948 INFO    ] No update needed
[2026-06-27 06:45:55,950.950 INFO    ] Checking for camera pi updates...
[2026-06-27 06:45:55,969.969 INFO    ] 200
[2026-06-27 06:45:55,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:45:56,007.007 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:45:56,047.047 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:45:56,049.049 INFO    ] No camera update needed
[2026-06-27 06:45:56,050.050 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:45:56,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:45:56,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:45:56,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:45:58,100.100 INFO    ] ================================================
[2026-06-27 06:45:58,109.109 INFO    ] Launching Daemon at Sat Jun 27 06:45:58 IST 2026
[2026-06-27 06:45:58,115.115 INFO    ] ================================================
[2026-06-27 06:45:58,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:45:58
[2026-06-27 06:45:58,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:45:58,939.939 INFO    ] Initializing speech engine...
[2026-06-27 06:45:58,943.943 INFO    ] 2026-06-27 06:45:58
[2026-06-27 06:45:59,144.144 INFO    ] 2026-06-27 06:45:59
[2026-06-27 06:45:59,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:45:59,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:45:59,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:45:59,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:45:59,560.560 INFO    ] time= 27/06/2026 06:45:59
[2026-06-27 06:45:59,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:45:59,589.589 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:45:59,655.655 INFO    ] No existing commands found in stream
[2026-06-27 06:46:04,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:46:04,667.667 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-27 06:46:07,082.082 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:46:07,083.083 INFO    ] Checking for system updates...
[2026-06-27 06:46:07,105.105 INFO    ] 200
[2026-06-27 06:46:07,106.106 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:46:07,136.136 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:46:07,138.138 INFO    ] No update needed
[2026-06-27 06:46:07,139.139 INFO    ] Checking for camera pi updates...
[2026-06-27 06:46:07,161.161 INFO    ] 200
[2026-06-27 06:46:07,162.162 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:46:07,187.187 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:46:07,234.234 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:46:07,236.236 INFO    ] No camera update needed
[2026-06-27 06:46:07,237.237 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:46:07,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:46:07,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:46:07,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:46:09,283.283 INFO    ] ================================================
[2026-06-27 06:46:09,299.299 INFO    ] Launching Daemon at Sat Jun 27 06:46:09 IST 2026
[2026-06-27 06:46:09,310.310 INFO    ] ================================================
[2026-06-27 06:46:09,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:46:09
[2026-06-27 06:46:09,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:46:10,101.101 INFO    ] Initializing speech engine...
[2026-06-27 06:46:10,112.112 INFO    ] 2026-06-27 06:46:10
[2026-06-27 06:46:10,315.315 INFO    ] 2026-06-27 06:46:10
[2026-06-27 06:46:10,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:46:10,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:46:10,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:46:10,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:46:10,726.726 INFO    ] time= 27/06/2026 06:46:10
[2026-06-27 06:46:10,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:46:10,765.765 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:46:10,832.832 INFO    ] No existing commands found in stream
[2026-06-27 06:46:15,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:46:15,867.867 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-27 06:46:20,173.173 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:46:20,175.175 INFO    ] Checking for system updates...
[2026-06-27 06:46:20,196.196 INFO    ] 200
[2026-06-27 06:46:20,197.197 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:46:20,227.227 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:46:20,229.229 INFO    ] No update needed
[2026-06-27 06:46:20,230.230 INFO    ] Checking for camera pi updates...
[2026-06-27 06:46:20,249.249 INFO    ] 200
[2026-06-27 06:46:20,251.251 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:46:20,275.275 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:46:20,316.316 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:46:20,317.317 INFO    ] No camera update needed
[2026-06-27 06:46:20,318.318 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:46:20,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:46:20,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:46:20,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:46:22,363.363 INFO    ] ================================================
[2026-06-27 06:46:22,379.379 INFO    ] Launching Daemon at Sat Jun 27 06:46:22 IST 2026
[2026-06-27 06:46:22,390.390 INFO    ] ================================================
[2026-06-27 06:46:22,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:46:22
[2026-06-27 06:46:23,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:46:23,191.191 INFO    ] Initializing speech engine...
[2026-06-27 06:46:23,196.196 INFO    ] 2026-06-27 06:46:23
[2026-06-27 06:46:23,399.399 INFO    ] 2026-06-27 06:46:23
[2026-06-27 06:46:23,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:46:23,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:46:23,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:46:23,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:46:23,813.813 INFO    ] time= 27/06/2026 06:46:23
[2026-06-27 06:46:23,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:46:23,842.842 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:46:23,912.912 INFO    ] No existing commands found in stream
[2026-06-27 06:46:28,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:46:28,924.924 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-27 06:46:32,171.171 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 06:46:32,173.173 INFO    ] Checking for system updates...
[2026-06-27 06:46:32,211.211 INFO    ] 200
[2026-06-27 06:46:32,214.214 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:46:32,262.262 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:46:32,263.263 INFO    ] No update needed
[2026-06-27 06:46:32,264.264 INFO    ] Checking for camera pi updates...
[2026-06-27 06:46:32,284.284 INFO    ] 200
[2026-06-27 06:46:32,286.286 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:46:32,310.310 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:46:32,341.341 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:46:32,342.342 INFO    ] No camera update needed
[2026-06-27 06:46:32,344.344 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:46:32,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:46:32,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:46:32,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:46:34,390.390 INFO    ] ================================================
[2026-06-27 06:46:34,406.406 INFO    ] Launching Daemon at Sat Jun 27 06:46:34 IST 2026
[2026-06-27 06:46:34,418.418 INFO    ] ================================================
[2026-06-27 06:46:34,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:46:34
[2026-06-27 06:46:35,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:46:35,229.229 INFO    ] Initializing speech engine...
[2026-06-27 06:46:35,233.233 INFO    ] 2026-06-27 06:46:35
[2026-06-27 06:46:35,438.438 INFO    ] 2026-06-27 06:46:35
[2026-06-27 06:46:35,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:46:35,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:46:35,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:46:35,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:46:35,860.860 INFO    ] time= 27/06/2026 06:46:35
[2026-06-27 06:46:35,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:46:35,889.889 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:46:35,954.954 INFO    ] No existing commands found in stream
[2026-06-27 06:46:40,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:46:40,968.968 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-27 06:46:44,271.271 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 06:46:44,272.272 INFO    ] Checking for system updates...
[2026-06-27 06:46:44,293.293 INFO    ] 200
[2026-06-27 06:46:44,295.295 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:46:44,326.326 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:46:44,327.327 INFO    ] No update needed
[2026-06-27 06:46:44,329.329 INFO    ] Checking for camera pi updates...
[2026-06-27 06:46:44,348.348 INFO    ] 200
[2026-06-27 06:46:44,350.350 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:46:44,374.374 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:46:44,415.415 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:46:44,416.416 INFO    ] No camera update needed
[2026-06-27 06:46:44,417.417 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:46:44,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:46:44,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:46:44,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:46:46,468.468 INFO    ] ================================================
[2026-06-27 06:46:46,483.483 INFO    ] Launching Daemon at Sat Jun 27 06:46:46 IST 2026
[2026-06-27 06:46:46,494.494 INFO    ] ================================================
[2026-06-27 06:46:46,856.856 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:46:46
[2026-06-27 06:46:47,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:46:47,343.343 INFO    ] Initializing speech engine...
[2026-06-27 06:46:47,353.353 INFO    ] 2026-06-27 06:46:47
[2026-06-27 06:46:47,564.564 INFO    ] 2026-06-27 06:46:47
[2026-06-27 06:46:47,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:46:47,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:46:47,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:46:47,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:46:47,988.988 INFO    ] time= 27/06/2026 06:46:47
[2026-06-27 06:46:48,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:46:48,022.022 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:46:48,090.090 INFO    ] No existing commands found in stream
[2026-06-27 06:46:53,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:46:53,102.102 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-27 06:46:56,463.463 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 06:46:56,465.465 INFO    ] Checking for system updates...
[2026-06-27 06:46:56,485.485 INFO    ] 200
[2026-06-27 06:46:56,487.487 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:46:56,517.517 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:46:56,518.518 INFO    ] No update needed
[2026-06-27 06:46:56,519.519 INFO    ] Checking for camera pi updates...
[2026-06-27 06:46:56,540.540 INFO    ] 200
[2026-06-27 06:46:56,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:46:56,565.565 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:46:56,613.613 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:46:56,614.614 INFO    ] No camera update needed
[2026-06-27 06:46:56,616.616 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:46:56,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:46:56,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:46:56,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:46:58,660.660 INFO    ] ================================================
[2026-06-27 06:46:58,677.677 INFO    ] Launching Daemon at Sat Jun 27 06:46:58 IST 2026
[2026-06-27 06:46:58,688.688 INFO    ] ================================================
[2026-06-27 06:46:59,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:46:59
[2026-06-27 06:46:59,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:46:59,474.474 INFO    ] Initializing speech engine...
[2026-06-27 06:46:59,479.479 INFO    ] 2026-06-27 06:46:59
[2026-06-27 06:46:59,684.684 INFO    ] 2026-06-27 06:46:59
[2026-06-27 06:46:59,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:46:59,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:46:59,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:47:00,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:47:00,122.122 INFO    ] time= 27/06/2026 06:47:00
[2026-06-27 06:47:00,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:47:00,130.130 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:47:00,195.195 INFO    ] No existing commands found in stream
[2026-06-27 06:47:05,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:47:05,208.208 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-27 06:47:06,862.862 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 06:47:06,864.864 INFO    ] Checking for system updates...
[2026-06-27 06:47:06,885.885 INFO    ] 200
[2026-06-27 06:47:06,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:47:06,920.920 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:47:06,921.921 INFO    ] No update needed
[2026-06-27 06:47:06,922.922 INFO    ] Checking for camera pi updates...
[2026-06-27 06:47:06,942.942 INFO    ] 200
[2026-06-27 06:47:06,943.943 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:47:06,969.969 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:47:07,005.005 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:47:07,006.006 INFO    ] No camera update needed
[2026-06-27 06:47:07,007.007 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:47:07,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:47:07,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:47:07,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:47:09,052.052 INFO    ] ================================================
[2026-06-27 06:47:09,068.068 INFO    ] Launching Daemon at Sat Jun 27 06:47:09 IST 2026
[2026-06-27 06:47:09,078.078 INFO    ] ================================================
[2026-06-27 06:47:09,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:47:09
[2026-06-27 06:47:09,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:47:09,872.872 INFO    ] Initializing speech engine...
[2026-06-27 06:47:09,881.881 INFO    ] 2026-06-27 06:47:09
[2026-06-27 06:47:10,087.087 INFO    ] 2026-06-27 06:47:10
[2026-06-27 06:47:10,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:47:10,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:47:10,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:47:10,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:47:10,528.528 INFO    ] time= 27/06/2026 06:47:10
[2026-06-27 06:47:10,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:47:10,536.536 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:47:10,602.602 INFO    ] No existing commands found in stream
[2026-06-27 06:47:15,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:47:15,616.616 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-27 06:47:17,896.896 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:47:17,897.897 INFO    ] Checking for system updates...
[2026-06-27 06:47:17,920.920 INFO    ] 200
[2026-06-27 06:47:17,921.921 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:47:17,954.954 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:47:17,955.955 INFO    ] No update needed
[2026-06-27 06:47:17,957.957 INFO    ] Checking for camera pi updates...
[2026-06-27 06:47:17,976.976 INFO    ] 200
[2026-06-27 06:47:17,977.977 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:47:18,005.005 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:47:18,045.045 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:47:18,048.048 INFO    ] No camera update needed
[2026-06-27 06:47:18,050.050 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:47:18,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:47:18,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:47:18,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:47:20,102.102 INFO    ] ================================================
[2026-06-27 06:47:20,118.118 INFO    ] Launching Daemon at Sat Jun 27 06:47:20 IST 2026
[2026-06-27 06:47:20,128.128 INFO    ] ================================================
[2026-06-27 06:47:20,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:47:20
[2026-06-27 06:47:20,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:47:20,910.910 INFO    ] Initializing speech engine...
[2026-06-27 06:47:20,914.914 INFO    ] 2026-06-27 06:47:20
[2026-06-27 06:47:21,118.118 INFO    ] 2026-06-27 06:47:21
[2026-06-27 06:47:21,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:47:21,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:47:21,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:47:21,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:47:21,539.539 INFO    ] time= 27/06/2026 06:47:21
[2026-06-27 06:47:21,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:47:21,566.566 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:47:21,631.631 INFO    ] No existing commands found in stream
[2026-06-27 06:47:26,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:47:26,644.644 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-27 06:47:30,079.079 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 06:47:30,080.080 INFO    ] Checking for system updates...
[2026-06-27 06:47:30,101.101 INFO    ] 200
[2026-06-27 06:47:30,103.103 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:47:30,137.137 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:47:30,138.138 INFO    ] No update needed
[2026-06-27 06:47:30,139.139 INFO    ] Checking for camera pi updates...
[2026-06-27 06:47:30,159.159 INFO    ] 200
[2026-06-27 06:47:30,160.160 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:47:30,185.185 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:47:30,223.223 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:47:30,224.224 INFO    ] No camera update needed
[2026-06-27 06:47:30,226.226 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:47:30,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:47:30,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:47:30,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:47:32,264.264 INFO    ] ================================================
[2026-06-27 06:47:32,273.273 INFO    ] Launching Daemon at Sat Jun 27 06:47:32 IST 2026
[2026-06-27 06:47:32,280.280 INFO    ] ================================================
[2026-06-27 06:47:32,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:47:32
[2026-06-27 06:47:32,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:47:33,114.114 INFO    ] Initializing speech engine...
[2026-06-27 06:47:33,120.120 INFO    ] 2026-06-27 06:47:33
[2026-06-27 06:47:33,324.324 INFO    ] 2026-06-27 06:47:33
[2026-06-27 06:47:33,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:47:33,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:47:33,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:47:33,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:47:33,726.726 INFO    ] time= 27/06/2026 06:47:33
[2026-06-27 06:47:33,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:47:33,770.770 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:47:33,840.840 INFO    ] No existing commands found in stream
[2026-06-27 06:47:38,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:47:38,853.853 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-27 06:47:42,709.709 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 06:47:42,710.710 INFO    ] Checking for system updates...
[2026-06-27 06:47:42,732.732 INFO    ] 200
[2026-06-27 06:47:42,734.734 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:47:42,764.764 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:47:42,766.766 INFO    ] No update needed
[2026-06-27 06:47:42,767.767 INFO    ] Checking for camera pi updates...
[2026-06-27 06:47:42,787.787 INFO    ] 200
[2026-06-27 06:47:42,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:47:42,814.814 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:47:42,850.850 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:47:42,851.851 INFO    ] No camera update needed
[2026-06-27 06:47:42,852.852 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:47:42,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:47:42,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:47:42,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:47:44,897.897 INFO    ] ================================================
[2026-06-27 06:47:44,913.913 INFO    ] Launching Daemon at Sat Jun 27 06:47:44 IST 2026
[2026-06-27 06:47:44,923.923 INFO    ] ================================================
[2026-06-27 06:47:45,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:47:45
[2026-06-27 06:47:45,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:47:45,725.725 INFO    ] Initializing speech engine...
[2026-06-27 06:47:45,734.734 INFO    ] 2026-06-27 06:47:45
[2026-06-27 06:47:45,939.939 INFO    ] 2026-06-27 06:47:45
[2026-06-27 06:47:45,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:47:47,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:47:47,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:47:47,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:47:47,305.305 INFO    ] time= 27/06/2026 06:47:47
[2026-06-27 06:47:47,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:47:47,323.323 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:47:47,373.373 INFO    ] No existing commands found in stream
[2026-06-27 06:47:52,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:47:52,384.384 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-27 06:47:54,258.258 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 06:47:54,260.260 INFO    ] Checking for system updates...
[2026-06-27 06:47:54,281.281 INFO    ] 200
[2026-06-27 06:47:54,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:47:54,312.312 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:47:54,314.314 INFO    ] No update needed
[2026-06-27 06:47:54,315.315 INFO    ] Checking for camera pi updates...
[2026-06-27 06:47:54,336.336 INFO    ] 200
[2026-06-27 06:47:54,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:47:54,362.362 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:47:54,398.398 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:47:54,399.399 INFO    ] No camera update needed
[2026-06-27 06:47:54,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:47:54,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:47:54,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:47:54,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:47:56,448.448 INFO    ] ================================================
[2026-06-27 06:47:56,463.463 INFO    ] Launching Daemon at Sat Jun 27 06:47:56 IST 2026
[2026-06-27 06:47:56,474.474 INFO    ] ================================================
[2026-06-27 06:47:56,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:47:56
[2026-06-27 06:47:57,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:47:57,258.258 INFO    ] Initializing speech engine...
[2026-06-27 06:47:57,262.262 INFO    ] 2026-06-27 06:47:57
[2026-06-27 06:47:57,489.489 INFO    ] 2026-06-27 06:47:57
[2026-06-27 06:47:57,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:47:57,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:47:57,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:47:57,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:47:57,879.879 INFO    ] time= 27/06/2026 06:47:57
[2026-06-27 06:47:57,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:47:57,943.943 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:47:58,063.063 INFO    ] No existing commands found in stream
[2026-06-27 06:48:03,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:48:03,075.075 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-27 06:48:05,783.783 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 06:48:05,785.785 INFO    ] Checking for system updates...
[2026-06-27 06:48:05,807.807 INFO    ] 200
[2026-06-27 06:48:05,808.808 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:48:05,839.839 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:48:05,840.840 INFO    ] No update needed
[2026-06-27 06:48:05,842.842 INFO    ] Checking for camera pi updates...
[2026-06-27 06:48:05,865.865 INFO    ] 200
[2026-06-27 06:48:05,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:48:05,892.892 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:48:05,931.931 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:48:05,932.932 INFO    ] No camera update needed
[2026-06-27 06:48:05,933.933 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:48:05,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:48:05,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:48:05,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:48:07,980.980 INFO    ] ================================================
[2026-06-27 06:48:08,995.995 INFO    ] Launching Daemon at Sat Jun 27 06:48:07 IST 2026
[2026-06-27 06:48:08,005.005 INFO    ] ================================================
[2026-06-27 06:48:08,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:48:08
[2026-06-27 06:48:08,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:48:08,820.820 INFO    ] Initializing speech engine...
[2026-06-27 06:48:08,826.826 INFO    ] 2026-06-27 06:48:08
[2026-06-27 06:48:09,031.031 INFO    ] 2026-06-27 06:48:09
[2026-06-27 06:48:09,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:48:09,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:48:09,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:48:09,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:48:09,454.454 INFO    ] time= 27/06/2026 06:48:09
[2026-06-27 06:48:09,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:48:09,499.499 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:48:09,596.596 INFO    ] No existing commands found in stream
[2026-06-27 06:48:14,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:48:14,607.607 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-27 06:48:15,391.391 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 06:48:15,393.393 INFO    ] Checking for system updates...
[2026-06-27 06:48:15,413.413 INFO    ] 200
[2026-06-27 06:48:15,415.415 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:48:15,446.446 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:48:15,448.448 INFO    ] No update needed
[2026-06-27 06:48:15,449.449 INFO    ] Checking for camera pi updates...
[2026-06-27 06:48:15,469.469 INFO    ] 200
[2026-06-27 06:48:15,470.470 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:48:15,500.500 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:48:15,535.535 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:48:15,536.536 INFO    ] No camera update needed
[2026-06-27 06:48:15,538.538 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:48:15,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:48:15,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:48:15,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:48:17,583.583 INFO    ] ================================================
[2026-06-27 06:48:17,598.598 INFO    ] Launching Daemon at Sat Jun 27 06:48:17 IST 2026
[2026-06-27 06:48:17,609.609 INFO    ] ================================================
[2026-06-27 06:48:17,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:48:17
[2026-06-27 06:48:18,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:48:18,406.406 INFO    ] Initializing speech engine...
[2026-06-27 06:48:18,411.411 INFO    ] 2026-06-27 06:48:18
[2026-06-27 06:48:18,614.614 INFO    ] 2026-06-27 06:48:18
[2026-06-27 06:48:18,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:48:18,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:48:18,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:48:18,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:48:19,032.032 INFO    ] time= 27/06/2026 06:48:18
[2026-06-27 06:48:19,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:48:19,060.060 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:48:19,127.127 INFO    ] No existing commands found in stream
[2026-06-27 06:48:24,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:48:24,139.139 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-27 06:48:26,691.691 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 06:48:26,693.693 INFO    ] Checking for system updates...
[2026-06-27 06:48:26,715.715 INFO    ] 200
[2026-06-27 06:48:26,717.717 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:48:26,750.750 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:48:26,752.752 INFO    ] No update needed
[2026-06-27 06:48:26,753.753 INFO    ] Checking for camera pi updates...
[2026-06-27 06:48:26,775.775 INFO    ] 200
[2026-06-27 06:48:26,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:48:26,803.803 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:48:26,843.843 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:48:26,844.844 INFO    ] No camera update needed
[2026-06-27 06:48:26,846.846 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:48:26,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:48:26,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:48:26,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:48:28,894.894 INFO    ] ================================================
[2026-06-27 06:48:28,909.909 INFO    ] Launching Daemon at Sat Jun 27 06:48:28 IST 2026
[2026-06-27 06:48:28,919.919 INFO    ] ================================================
[2026-06-27 06:48:29,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:48:29
[2026-06-27 06:48:29,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:48:29,721.721 INFO    ] Initializing speech engine...
[2026-06-27 06:48:29,726.726 INFO    ] 2026-06-27 06:48:29
[2026-06-27 06:48:29,931.931 INFO    ] 2026-06-27 06:48:29
[2026-06-27 06:48:29,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:48:30,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:48:30,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:48:30,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:48:30,356.356 INFO    ] time= 27/06/2026 06:48:30
[2026-06-27 06:48:30,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:48:30,385.385 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:48:30,452.452 INFO    ] No existing commands found in stream
[2026-06-27 06:48:35,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:48:35,463.463 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-27 06:48:36,602.602 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 06:48:36,603.603 INFO    ] Checking for system updates...
[2026-06-27 06:48:36,624.624 INFO    ] 200
[2026-06-27 06:48:36,625.625 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:48:36,656.656 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:48:36,657.657 INFO    ] No update needed
[2026-06-27 06:48:36,658.658 INFO    ] Checking for camera pi updates...
[2026-06-27 06:48:36,677.677 INFO    ] 200
[2026-06-27 06:48:36,679.679 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:48:36,705.705 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:48:36,741.741 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:48:36,743.743 INFO    ] No camera update needed
[2026-06-27 06:48:36,744.744 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:48:36,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:48:36,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:48:36,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:48:38,782.782 INFO    ] ================================================
[2026-06-27 06:48:38,797.797 INFO    ] Launching Daemon at Sat Jun 27 06:48:38 IST 2026
[2026-06-27 06:48:38,808.808 INFO    ] ================================================
[2026-06-27 06:48:39,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:48:39
[2026-06-27 06:48:39,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:48:39,641.641 INFO    ] Initializing speech engine...
[2026-06-27 06:48:39,653.653 INFO    ] 2026-06-27 06:48:39
[2026-06-27 06:48:39,861.861 INFO    ] 2026-06-27 06:48:39
[2026-06-27 06:48:39,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:48:40,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:48:40,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:48:40,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:48:40,290.290 INFO    ] time= 27/06/2026 06:48:40
[2026-06-27 06:48:40,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:48:40,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:48:40,379.379 INFO    ] No existing commands found in stream
[2026-06-27 06:48:45,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:48:45,391.391 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-27 06:48:47,005.005 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:48:47,006.006 INFO    ] Checking for system updates...
[2026-06-27 06:48:47,028.028 INFO    ] 200
[2026-06-27 06:48:47,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:48:47,061.061 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:48:47,062.062 INFO    ] No update needed
[2026-06-27 06:48:47,064.064 INFO    ] Checking for camera pi updates...
[2026-06-27 06:48:47,085.085 INFO    ] 200
[2026-06-27 06:48:47,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:48:47,113.113 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:48:47,157.157 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:48:47,158.158 INFO    ] No camera update needed
[2026-06-27 06:48:47,160.160 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:48:47,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:48:47,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:48:47,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:48:49,207.207 INFO    ] ================================================
[2026-06-27 06:48:49,222.222 INFO    ] Launching Daemon at Sat Jun 27 06:48:49 IST 2026
[2026-06-27 06:48:49,233.233 INFO    ] ================================================
[2026-06-27 06:48:49,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:48:49
[2026-06-27 06:48:49,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:48:50,057.057 INFO    ] Initializing speech engine...
[2026-06-27 06:48:50,065.065 INFO    ] 2026-06-27 06:48:50
[2026-06-27 06:48:50,284.284 INFO    ] 2026-06-27 06:48:50
[2026-06-27 06:48:50,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:48:50,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:48:50,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:48:50,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:48:50,691.691 INFO    ] time= 27/06/2026 06:48:50
[2026-06-27 06:48:50,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:48:50,740.740 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:48:50,805.805 INFO    ] No existing commands found in stream
[2026-06-27 06:48:55,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:48:55,819.819 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-27 06:48:58,395.395 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 06:48:58,396.396 INFO    ] Checking for system updates...
[2026-06-27 06:48:58,417.417 INFO    ] 200
[2026-06-27 06:48:58,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:48:58,451.451 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:48:58,452.452 INFO    ] No update needed
[2026-06-27 06:48:58,454.454 INFO    ] Checking for camera pi updates...
[2026-06-27 06:48:58,473.473 INFO    ] 200
[2026-06-27 06:48:58,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:48:58,498.498 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:48:58,534.534 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:48:58,535.535 INFO    ] No camera update needed
[2026-06-27 06:48:58,536.536 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:48:58,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:48:58,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:48:58,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:49:00,581.581 INFO    ] ================================================
[2026-06-27 06:49:00,597.597 INFO    ] Launching Daemon at Sat Jun 27 06:49:00 IST 2026
[2026-06-27 06:49:00,608.608 INFO    ] ================================================
[2026-06-27 06:49:00,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:49:00
[2026-06-27 06:49:01,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:49:01,588.588 INFO    ] Initializing speech engine...
[2026-06-27 06:49:01,600.600 INFO    ] 2026-06-27 06:49:01
[2026-06-27 06:49:01,825.825 INFO    ] 2026-06-27 06:49:01
[2026-06-27 06:49:01,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:49:02,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:49:02,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:49:02,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:49:02,281.281 INFO    ] time= 27/06/2026 06:49:02
[2026-06-27 06:49:02,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:49:02,362.362 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:49:02,444.444 INFO    ] No existing commands found in stream
[2026-06-27 06:49:07,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:49:07,456.456 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-27 06:49:10,794.794 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 06:49:10,796.796 INFO    ] Checking for system updates...
[2026-06-27 06:49:10,816.816 INFO    ] 200
[2026-06-27 06:49:10,818.818 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:49:10,850.850 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:49:10,851.851 INFO    ] No update needed
[2026-06-27 06:49:10,853.853 INFO    ] Checking for camera pi updates...
[2026-06-27 06:49:10,873.873 INFO    ] 200
[2026-06-27 06:49:10,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:49:10,898.898 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:49:11,035.035 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:49:11,037.037 INFO    ] No camera update needed
[2026-06-27 06:49:11,038.038 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:49:11,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:49:11,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:49:11,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:49:13,084.084 INFO    ] ================================================
[2026-06-27 06:49:13,100.100 INFO    ] Launching Daemon at Sat Jun 27 06:49:13 IST 2026
[2026-06-27 06:49:13,112.112 INFO    ] ================================================
[2026-06-27 06:49:13,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:49:13
[2026-06-27 06:49:13,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:49:13,968.968 INFO    ] Initializing speech engine...
[2026-06-27 06:49:13,974.974 INFO    ] 2026-06-27 06:49:13
[2026-06-27 06:49:14,186.186 INFO    ] 2026-06-27 06:49:14
[2026-06-27 06:49:14,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:49:14,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:49:14,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:49:14,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:49:14,607.607 INFO    ] time= 27/06/2026 06:49:14
[2026-06-27 06:49:14,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:49:14,641.641 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:49:14,709.709 INFO    ] No existing commands found in stream
[2026-06-27 06:49:19,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:49:19,721.721 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-27 06:49:22,766.766 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 06:49:22,767.767 INFO    ] Checking for system updates...
[2026-06-27 06:49:22,788.788 INFO    ] 200
[2026-06-27 06:49:22,790.790 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:49:22,822.822 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:49:22,824.824 INFO    ] No update needed
[2026-06-27 06:49:22,826.826 INFO    ] Checking for camera pi updates...
[2026-06-27 06:49:22,848.848 INFO    ] 200
[2026-06-27 06:49:22,850.850 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:49:22,875.875 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:49:22,915.915 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:49:22,917.917 INFO    ] No camera update needed
[2026-06-27 06:49:22,918.918 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:49:22,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:49:22,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:49:22,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:49:24,965.965 INFO    ] ================================================
[2026-06-27 06:49:24,981.981 INFO    ] Launching Daemon at Sat Jun 27 06:49:24 IST 2026
[2026-06-27 06:49:24,992.992 INFO    ] ================================================
[2026-06-27 06:49:25,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:49:25
[2026-06-27 06:49:25,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:49:25,768.768 INFO    ] Initializing speech engine...
[2026-06-27 06:49:25,775.775 INFO    ] 2026-06-27 06:49:25
[2026-06-27 06:49:25,989.989 INFO    ] 2026-06-27 06:49:25
[2026-06-27 06:49:26,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:49:26,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:49:26,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:49:26,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:49:26,393.393 INFO    ] time= 27/06/2026 06:49:26
[2026-06-27 06:49:26,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:49:26,436.436 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:49:26,503.503 INFO    ] No existing commands found in stream
[2026-06-27 06:49:31,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:49:31,517.517 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-27 06:49:35,501.501 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:49:35,502.502 INFO    ] Checking for system updates...
[2026-06-27 06:49:35,523.523 INFO    ] 200
[2026-06-27 06:49:35,524.524 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:49:35,555.555 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:49:35,556.556 INFO    ] No update needed
[2026-06-27 06:49:35,557.557 INFO    ] Checking for camera pi updates...
[2026-06-27 06:49:35,578.578 INFO    ] 200
[2026-06-27 06:49:35,580.580 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:49:35,603.603 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:49:35,639.639 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:49:35,640.640 INFO    ] No camera update needed
[2026-06-27 06:49:35,642.642 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:49:35,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:49:35,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:49:35,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:49:37,689.689 INFO    ] ================================================
[2026-06-27 06:49:37,705.705 INFO    ] Launching Daemon at Sat Jun 27 06:49:37 IST 2026
[2026-06-27 06:49:37,716.716 INFO    ] ================================================
[2026-06-27 06:49:38,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:49:38
[2026-06-27 06:49:38,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:49:38,562.562 INFO    ] Initializing speech engine...
[2026-06-27 06:49:38,568.568 INFO    ] 2026-06-27 06:49:38
[2026-06-27 06:49:38,778.778 INFO    ] 2026-06-27 06:49:38
[2026-06-27 06:49:38,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:49:38,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:49:38,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:49:39,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:49:39,202.202 INFO    ] time= 27/06/2026 06:49:39
[2026-06-27 06:49:39,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:49:39,234.234 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:49:39,324.324 INFO    ] No existing commands found in stream
[2026-06-27 06:49:44,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:49:44,337.337 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-27 06:49:48,383.383 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 06:49:48,385.385 INFO    ] Checking for system updates...
[2026-06-27 06:49:48,406.406 INFO    ] 200
[2026-06-27 06:49:48,408.408 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:49:48,441.441 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:49:48,442.442 INFO    ] No update needed
[2026-06-27 06:49:48,444.444 INFO    ] Checking for camera pi updates...
[2026-06-27 06:49:48,464.464 INFO    ] 200
[2026-06-27 06:49:48,465.465 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:49:48,490.490 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:49:48,530.530 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:49:48,531.531 INFO    ] No camera update needed
[2026-06-27 06:49:48,533.533 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:49:48,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:49:48,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:49:48,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:49:50,577.577 INFO    ] ================================================
[2026-06-27 06:49:50,593.593 INFO    ] Launching Daemon at Sat Jun 27 06:49:50 IST 2026
[2026-06-27 06:49:50,604.604 INFO    ] ================================================
[2026-06-27 06:49:50,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:49:50
[2026-06-27 06:49:51,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:49:51,432.432 INFO    ] Initializing speech engine...
[2026-06-27 06:49:51,440.440 INFO    ] 2026-06-27 06:49:51
[2026-06-27 06:49:51,645.645 INFO    ] 2026-06-27 06:49:51
[2026-06-27 06:49:51,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:49:51,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:49:51,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:49:51,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:49:52,055.055 INFO    ] time= 27/06/2026 06:49:52
[2026-06-27 06:49:52,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:49:52,090.090 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:49:52,161.161 INFO    ] No existing commands found in stream
[2026-06-27 06:49:57,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:49:57,172.172 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-27 06:49:59,677.677 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 06:49:59,678.678 INFO    ] Checking for system updates...
[2026-06-27 06:49:59,700.700 INFO    ] 200
[2026-06-27 06:49:59,701.701 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:49:59,732.732 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:49:59,733.733 INFO    ] No update needed
[2026-06-27 06:49:59,735.735 INFO    ] Checking for camera pi updates...
[2026-06-27 06:49:59,756.756 INFO    ] 200
[2026-06-27 06:49:59,757.757 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:49:59,783.783 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:49:59,824.824 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:49:59,825.825 INFO    ] No camera update needed
[2026-06-27 06:49:59,826.826 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:49:59,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:49:59,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:49:59,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:50:01,906.906 INFO    ] ================================================
[2026-06-27 06:50:01,931.931 INFO    ] Launching Daemon at Sat Jun 27 06:50:01 IST 2026
[2026-06-27 06:50:01,945.945 INFO    ] ================================================
[2026-06-27 06:50:02,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:50:02
[2026-06-27 06:50:02,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:50:02,968.968 INFO    ] Initializing speech engine...
[2026-06-27 06:50:02,973.973 INFO    ] 2026-06-27 06:50:02
[2026-06-27 06:50:03,206.206 INFO    ] 2026-06-27 06:50:03
[2026-06-27 06:50:03,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:50:03,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:50:03,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:50:03,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:50:03,630.630 INFO    ] time= 27/06/2026 06:50:03
[2026-06-27 06:50:03,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:50:03,661.661 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:50:03,728.728 INFO    ] No existing commands found in stream
[2026-06-27 06:50:08,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:50:08,741.741 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-27 06:50:11,188.188 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 06:50:11,190.190 INFO    ] Checking for system updates...
[2026-06-27 06:50:11,212.212 INFO    ] 200
[2026-06-27 06:50:11,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:50:11,248.248 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:50:11,249.249 INFO    ] No update needed
[2026-06-27 06:50:11,250.250 INFO    ] Checking for camera pi updates...
[2026-06-27 06:50:11,273.273 INFO    ] 200
[2026-06-27 06:50:11,274.274 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:50:11,299.299 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:50:11,334.334 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:50:11,335.335 INFO    ] No camera update needed
[2026-06-27 06:50:11,337.337 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:50:11,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:50:11,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:50:11,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:50:13,383.383 INFO    ] ================================================
[2026-06-27 06:50:13,398.398 INFO    ] Launching Daemon at Sat Jun 27 06:50:13 IST 2026
[2026-06-27 06:50:13,409.409 INFO    ] ================================================
[2026-06-27 06:50:13,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:50:13
[2026-06-27 06:50:14,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:50:14,264.264 INFO    ] Initializing speech engine...
[2026-06-27 06:50:14,274.274 INFO    ] 2026-06-27 06:50:14
[2026-06-27 06:50:14,482.482 INFO    ] 2026-06-27 06:50:14
[2026-06-27 06:50:14,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:50:14,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:50:14,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:50:14,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:50:14,896.896 INFO    ] time= 27/06/2026 06:50:14
[2026-06-27 06:50:14,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:50:14,935.935 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:50:15,003.003 INFO    ] No existing commands found in stream
[2026-06-27 06:50:20,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:50:20,015.015 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-27 06:50:23,911.911 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 06:50:23,912.912 INFO    ] Checking for system updates...
[2026-06-27 06:50:23,934.934 INFO    ] 200
[2026-06-27 06:50:23,935.935 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:50:23,965.965 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:50:23,967.967 INFO    ] No update needed
[2026-06-27 06:50:23,968.968 INFO    ] Checking for camera pi updates...
[2026-06-27 06:50:23,987.987 INFO    ] 200
[2026-06-27 06:50:23,988.988 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:50:24,011.011 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:50:24,049.049 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:50:24,050.050 INFO    ] No camera update needed
[2026-06-27 06:50:24,052.052 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:50:24,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:50:24,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:50:24,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:50:26,097.097 INFO    ] ================================================
[2026-06-27 06:50:26,112.112 INFO    ] Launching Daemon at Sat Jun 27 06:50:26 IST 2026
[2026-06-27 06:50:26,122.122 INFO    ] ================================================
[2026-06-27 06:50:26,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:50:26
[2026-06-27 06:50:26,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:50:26,945.945 INFO    ] Initializing speech engine...
[2026-06-27 06:50:26,950.950 INFO    ] 2026-06-27 06:50:26
[2026-06-27 06:50:27,155.155 INFO    ] 2026-06-27 06:50:27
[2026-06-27 06:50:27,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:50:27,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:50:27,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:50:27,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:50:27,575.575 INFO    ] time= 27/06/2026 06:50:27
[2026-06-27 06:50:27,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:50:27,605.605 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:50:27,671.671 INFO    ] No existing commands found in stream
[2026-06-27 06:50:32,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:50:32,683.683 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-27 06:50:36,521.521 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 06:50:36,523.523 INFO    ] Checking for system updates...
[2026-06-27 06:50:36,544.544 INFO    ] 200
[2026-06-27 06:50:36,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:50:36,577.577 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:50:36,578.578 INFO    ] No update needed
[2026-06-27 06:50:36,580.580 INFO    ] Checking for camera pi updates...
[2026-06-27 06:50:36,601.601 INFO    ] 200
[2026-06-27 06:50:36,602.602 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:50:36,630.630 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:50:36,670.670 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:50:36,671.671 INFO    ] No camera update needed
[2026-06-27 06:50:36,673.673 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:50:36,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:50:36,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:50:36,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:50:38,720.720 INFO    ] ================================================
[2026-06-27 06:50:38,735.735 INFO    ] Launching Daemon at Sat Jun 27 06:50:38 IST 2026
[2026-06-27 06:50:38,745.745 INFO    ] ================================================
[2026-06-27 06:50:39,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:50:39
[2026-06-27 06:50:39,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:50:39,553.553 INFO    ] Initializing speech engine...
[2026-06-27 06:50:39,558.558 INFO    ] 2026-06-27 06:50:39
[2026-06-27 06:50:39,761.761 INFO    ] 2026-06-27 06:50:39
[2026-06-27 06:50:39,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:50:39,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:50:39,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:50:40,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:50:40,199.199 INFO    ] time= 27/06/2026 06:50:40
[2026-06-27 06:50:40,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:50:40,206.206 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:50:40,273.273 INFO    ] No existing commands found in stream
[2026-06-27 06:50:45,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:50:45,285.285 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-27 06:50:46,710.710 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 06:50:46,711.711 INFO    ] Checking for system updates...
[2026-06-27 06:50:46,733.733 INFO    ] 200
[2026-06-27 06:50:46,735.735 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:50:46,765.765 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:50:46,766.766 INFO    ] No update needed
[2026-06-27 06:50:46,768.768 INFO    ] Checking for camera pi updates...
[2026-06-27 06:50:46,789.789 INFO    ] 200
[2026-06-27 06:50:46,790.790 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:50:46,814.814 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:50:46,851.851 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:50:46,852.852 INFO    ] No camera update needed
[2026-06-27 06:50:46,854.854 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:50:46,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:50:46,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:50:46,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:50:48,898.898 INFO    ] ================================================
[2026-06-27 06:50:48,913.913 INFO    ] Launching Daemon at Sat Jun 27 06:50:48 IST 2026
[2026-06-27 06:50:48,925.925 INFO    ] ================================================
[2026-06-27 06:50:49,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:50:49
[2026-06-27 06:50:49,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:50:49,726.726 INFO    ] Initializing speech engine...
[2026-06-27 06:50:49,731.731 INFO    ] 2026-06-27 06:50:49
[2026-06-27 06:50:49,937.937 INFO    ] 2026-06-27 06:50:49
[2026-06-27 06:50:49,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:50:50,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:50:50,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:50:50,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:50:50,355.355 INFO    ] time= 27/06/2026 06:50:50
[2026-06-27 06:50:50,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:50:50,385.385 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:50:50,451.451 INFO    ] No existing commands found in stream
[2026-06-27 06:50:55,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:50:55,463.463 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-27 06:50:56,546.546 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 06:50:56,547.547 INFO    ] Checking for system updates...
[2026-06-27 06:50:56,572.572 INFO    ] 200
[2026-06-27 06:50:56,573.573 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-27 06:50:56,575.575 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-27 06:50:56,576.576 INFO    ] Checking for camera pi updates...
[2026-06-27 06:50:56,595.595 INFO    ] 200
[2026-06-27 06:50:56,597.597 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-27 06:50:56,598.598 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-27 06:50:56,600.600 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:50:56,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:50:56,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:50:56,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:50:58,647.647 INFO    ] ================================================
[2026-06-27 06:50:58,662.662 INFO    ] Launching Daemon at Sat Jun 27 06:50:58 IST 2026
[2026-06-27 06:50:58,673.673 INFO    ] ================================================
[2026-06-27 06:50:59,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:50:59
[2026-06-27 06:50:59,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:50:59,512.512 INFO    ] Initializing speech engine...
[2026-06-27 06:50:59,516.516 INFO    ] 2026-06-27 06:50:59
[2026-06-27 06:50:59,722.722 INFO    ] 2026-06-27 06:50:59
[2026-06-27 06:50:59,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:50:59,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:50:59,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:51:00,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:51:00,137.137 INFO    ] time= 27/06/2026 06:51:00
[2026-06-27 06:51:00,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:51:00,171.171 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:51:00,237.237 INFO    ] No existing commands found in stream
[2026-06-27 06:51:05,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:51:05,250.250 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-27 06:51:06,962.962 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:51:06,964.964 INFO    ] Checking for system updates...
[2026-06-27 06:51:06,986.986 INFO    ] 200
[2026-06-27 06:51:06,987.987 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:51:07,018.018 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:51:07,019.019 INFO    ] No update needed
[2026-06-27 06:51:07,020.020 INFO    ] Checking for camera pi updates...
[2026-06-27 06:51:07,042.042 INFO    ] 200
[2026-06-27 06:51:07,044.044 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:51:07,067.067 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:51:07,104.104 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:51:07,106.106 INFO    ] No camera update needed
[2026-06-27 06:51:07,107.107 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:51:07,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:51:07,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:51:07,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:51:09,152.152 INFO    ] ================================================
[2026-06-27 06:51:09,169.169 INFO    ] Launching Daemon at Sat Jun 27 06:51:09 IST 2026
[2026-06-27 06:51:09,180.180 INFO    ] ================================================
[2026-06-27 06:51:09,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:51:09
[2026-06-27 06:51:09,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:51:09,997.997 INFO    ] Initializing speech engine...
[2026-06-27 06:51:10,002.002 INFO    ] 2026-06-27 06:51:09
[2026-06-27 06:51:10,207.207 INFO    ] 2026-06-27 06:51:10
[2026-06-27 06:51:10,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:51:10,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:51:10,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:51:10,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:51:10,626.626 INFO    ] time= 27/06/2026 06:51:10
[2026-06-27 06:51:10,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:51:10,652.652 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:51:10,723.723 INFO    ] No existing commands found in stream
[2026-06-27 06:51:15,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:51:15,736.736 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-27 06:51:18,552.552 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 06:51:18,554.554 INFO    ] Checking for system updates...
[2026-06-27 06:51:18,575.575 INFO    ] 200
[2026-06-27 06:51:18,576.576 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:51:18,611.611 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:51:18,613.613 INFO    ] No update needed
[2026-06-27 06:51:18,614.614 INFO    ] Checking for camera pi updates...
[2026-06-27 06:51:18,634.634 INFO    ] 200
[2026-06-27 06:51:18,635.635 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:51:18,659.659 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:51:18,797.797 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:51:18,798.798 INFO    ] No camera update needed
[2026-06-27 06:51:18,799.799 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:51:18,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:51:18,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:51:18,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:51:20,846.846 INFO    ] ================================================
[2026-06-27 06:51:20,863.863 INFO    ] Launching Daemon at Sat Jun 27 06:51:20 IST 2026
[2026-06-27 06:51:20,874.874 INFO    ] ================================================
[2026-06-27 06:51:21,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:51:21
[2026-06-27 06:51:21,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:51:21,662.662 INFO    ] Initializing speech engine...
[2026-06-27 06:51:21,674.674 INFO    ] 2026-06-27 06:51:21
[2026-06-27 06:51:21,883.883 INFO    ] 2026-06-27 06:51:21
[2026-06-27 06:51:21,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:51:22,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:51:22,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:51:22,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:51:22,361.361 INFO    ] time= 27/06/2026 06:51:22
[2026-06-27 06:51:22,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:51:22,378.378 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:51:22,447.447 INFO    ] No existing commands found in stream
[2026-06-27 06:51:27,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:51:27,465.465 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-27 06:51:28,831.831 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 06:51:28,833.833 INFO    ] Checking for system updates...
[2026-06-27 06:51:28,854.854 INFO    ] 200
[2026-06-27 06:51:28,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:51:28,886.886 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:51:28,888.888 INFO    ] No update needed
[2026-06-27 06:51:28,889.889 INFO    ] Checking for camera pi updates...
[2026-06-27 06:51:28,910.910 INFO    ] 200
[2026-06-27 06:51:28,911.911 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:51:28,935.935 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:51:28,972.972 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:51:28,973.973 INFO    ] No camera update needed
[2026-06-27 06:51:28,975.975 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:51:28,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:51:28,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:51:28,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:51:31,020.020 INFO    ] ================================================
[2026-06-27 06:51:31,035.035 INFO    ] Launching Daemon at Sat Jun 27 06:51:31 IST 2026
[2026-06-27 06:51:31,046.046 INFO    ] ================================================
[2026-06-27 06:51:31,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:51:31
[2026-06-27 06:51:31,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:51:31,879.879 INFO    ] Initializing speech engine...
[2026-06-27 06:51:31,886.886 INFO    ] 2026-06-27 06:51:31
[2026-06-27 06:51:32,104.104 INFO    ] 2026-06-27 06:51:32
[2026-06-27 06:51:32,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:51:32,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:51:32,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:51:32,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:51:32,510.510 INFO    ] time= 27/06/2026 06:51:32
[2026-06-27 06:51:32,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:51:32,553.553 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:51:32,620.620 INFO    ] No existing commands found in stream
[2026-06-27 06:51:37,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:51:37,632.632 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-27 06:51:38,659.659 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:51:38,661.661 INFO    ] Checking for system updates...
[2026-06-27 06:51:38,681.681 INFO    ] 200
[2026-06-27 06:51:38,683.683 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:51:38,718.718 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:51:38,719.719 INFO    ] No update needed
[2026-06-27 06:51:38,720.720 INFO    ] Checking for camera pi updates...
[2026-06-27 06:51:38,740.740 INFO    ] 200
[2026-06-27 06:51:38,742.742 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:51:38,767.767 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:51:38,806.806 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:51:38,807.807 INFO    ] No camera update needed
[2026-06-27 06:51:38,808.808 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:51:38,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:51:38,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:51:38,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:51:40,854.854 INFO    ] ================================================
[2026-06-27 06:51:40,869.869 INFO    ] Launching Daemon at Sat Jun 27 06:51:40 IST 2026
[2026-06-27 06:51:40,881.881 INFO    ] ================================================
[2026-06-27 06:51:41,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:51:41
[2026-06-27 06:51:41,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:51:41,655.655 INFO    ] Initializing speech engine...
[2026-06-27 06:51:41,660.660 INFO    ] 2026-06-27 06:51:41
[2026-06-27 06:51:41,853.853 INFO    ] 2026-06-27 06:51:41
[2026-06-27 06:51:41,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:51:42,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:51:42,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:51:42,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:51:42,339.339 INFO    ] time= 27/06/2026 06:51:42
[2026-06-27 06:51:42,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:51:42,376.376 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:51:42,450.450 INFO    ] No existing commands found in stream
[2026-06-27 06:51:47,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:51:47,464.464 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-27 06:51:51,629.629 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 06:51:51,630.630 INFO    ] Checking for system updates...
[2026-06-27 06:51:51,651.651 INFO    ] 200
[2026-06-27 06:51:51,652.652 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:51:51,682.682 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:51:51,684.684 INFO    ] No update needed
[2026-06-27 06:51:51,685.685 INFO    ] Checking for camera pi updates...
[2026-06-27 06:51:51,705.705 INFO    ] 200
[2026-06-27 06:51:51,706.706 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:51:51,729.729 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:51:51,767.767 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:51:51,769.769 INFO    ] No camera update needed
[2026-06-27 06:51:51,770.770 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:51:51,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:51:51,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:51:51,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:51:53,816.816 INFO    ] ================================================
[2026-06-27 06:51:53,832.832 INFO    ] Launching Daemon at Sat Jun 27 06:51:53 IST 2026
[2026-06-27 06:51:53,843.843 INFO    ] ================================================
[2026-06-27 06:51:54,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:51:54
[2026-06-27 06:51:54,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:51:54,647.647 INFO    ] Initializing speech engine...
[2026-06-27 06:51:54,656.656 INFO    ] 2026-06-27 06:51:54
[2026-06-27 06:51:54,864.864 INFO    ] 2026-06-27 06:51:54
[2026-06-27 06:51:54,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:51:55,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:51:55,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:51:55,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:51:55,284.284 INFO    ] time= 27/06/2026 06:51:55
[2026-06-27 06:51:55,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:51:55,313.313 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:51:55,380.380 INFO    ] No existing commands found in stream
[2026-06-27 06:52:00,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:52:00,392.392 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-27 06:52:03,929.929 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 06:52:03,930.930 INFO    ] Checking for system updates...
[2026-06-27 06:52:03,951.951 INFO    ] 200
[2026-06-27 06:52:03,952.952 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:52:03,987.987 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:52:03,988.988 INFO    ] No update needed
[2026-06-27 06:52:03,990.990 INFO    ] Checking for camera pi updates...
[2026-06-27 06:52:04,009.009 INFO    ] 200
[2026-06-27 06:52:04,011.011 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:52:04,035.035 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:52:04,076.076 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:52:04,077.077 INFO    ] No camera update needed
[2026-06-27 06:52:04,078.078 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:52:04,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:52:04,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:52:04,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:52:06,125.125 INFO    ] ================================================
[2026-06-27 06:52:06,140.140 INFO    ] Launching Daemon at Sat Jun 27 06:52:06 IST 2026
[2026-06-27 06:52:06,151.151 INFO    ] ================================================
[2026-06-27 06:52:06,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:52:06
[2026-06-27 06:52:06,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:52:06,969.969 INFO    ] Initializing speech engine...
[2026-06-27 06:52:06,974.974 INFO    ] 2026-06-27 06:52:06
[2026-06-27 06:52:07,189.189 INFO    ] 2026-06-27 06:52:07
[2026-06-27 06:52:07,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:52:07,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:52:07,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:52:07,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:52:07,612.612 INFO    ] time= 27/06/2026 06:52:07
[2026-06-27 06:52:07,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:52:07,668.668 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:52:07,744.744 INFO    ] No existing commands found in stream
[2026-06-27 06:52:12,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:52:12,757.757 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-27 06:52:14,025.025 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:52:14,026.026 INFO    ] Checking for system updates...
[2026-06-27 06:52:14,048.048 INFO    ] 200
[2026-06-27 06:52:14,049.049 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:52:14,079.079 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:52:14,081.081 INFO    ] No update needed
[2026-06-27 06:52:14,082.082 INFO    ] Checking for camera pi updates...
[2026-06-27 06:52:14,101.101 INFO    ] 200
[2026-06-27 06:52:14,103.103 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:52:14,126.126 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:52:14,162.162 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:52:14,164.164 INFO    ] No camera update needed
[2026-06-27 06:52:14,165.165 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:52:14,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:52:14,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:52:14,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:52:16,210.210 INFO    ] ================================================
[2026-06-27 06:52:16,226.226 INFO    ] Launching Daemon at Sat Jun 27 06:52:16 IST 2026
[2026-06-27 06:52:16,237.237 INFO    ] ================================================
[2026-06-27 06:52:16,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:52:16
[2026-06-27 06:52:16,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:52:17,050.050 INFO    ] Initializing speech engine...
[2026-06-27 06:52:17,058.058 INFO    ] 2026-06-27 06:52:17
[2026-06-27 06:52:17,276.276 INFO    ] 2026-06-27 06:52:17
[2026-06-27 06:52:17,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:52:17,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:52:17,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:52:17,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:52:17,717.717 INFO    ] time= 27/06/2026 06:52:17
[2026-06-27 06:52:17,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:52:17,756.756 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:52:17,826.826 INFO    ] No existing commands found in stream
[2026-06-27 06:52:22,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:52:22,840.840 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-27 06:52:23,257.257 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 06:52:23,258.258 INFO    ] Checking for system updates...
[2026-06-27 06:52:23,279.279 INFO    ] 200
[2026-06-27 06:52:23,280.280 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:52:23,315.315 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:52:23,316.316 INFO    ] No update needed
[2026-06-27 06:52:23,318.318 INFO    ] Checking for camera pi updates...
[2026-06-27 06:52:23,339.339 INFO    ] 200
[2026-06-27 06:52:23,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:52:23,365.365 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:52:23,405.405 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:52:23,407.407 INFO    ] No camera update needed
[2026-06-27 06:52:23,408.408 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:52:23,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:52:23,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:52:23,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:52:25,454.454 INFO    ] ================================================
[2026-06-27 06:52:25,470.470 INFO    ] Launching Daemon at Sat Jun 27 06:52:25 IST 2026
[2026-06-27 06:52:25,482.482 INFO    ] ================================================
[2026-06-27 06:52:25,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:52:25
[2026-06-27 06:52:26,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:52:26,294.294 INFO    ] Initializing speech engine...
[2026-06-27 06:52:26,304.304 INFO    ] 2026-06-27 06:52:26
[2026-06-27 06:52:26,507.507 INFO    ] 2026-06-27 06:52:26
[2026-06-27 06:52:26,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:52:26,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:52:26,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:52:26,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:52:26,926.926 INFO    ] time= 27/06/2026 06:52:26
[2026-06-27 06:52:26,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:52:26,956.956 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:52:27,023.023 INFO    ] No existing commands found in stream
[2026-06-27 06:52:32,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:52:32,037.037 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-27 06:52:33,360.360 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 06:52:33,362.362 INFO    ] Checking for system updates...
[2026-06-27 06:52:33,383.383 INFO    ] 200
[2026-06-27 06:52:33,385.385 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:52:33,416.416 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:52:33,417.417 INFO    ] No update needed
[2026-06-27 06:52:33,419.419 INFO    ] Checking for camera pi updates...
[2026-06-27 06:52:33,440.440 INFO    ] 200
[2026-06-27 06:52:33,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:52:33,465.465 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:52:33,489.489 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:52:33,490.490 INFO    ] No camera update needed
[2026-06-27 06:52:33,491.491 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:52:33,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:52:33,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:52:33,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:52:35,538.538 INFO    ] ================================================
[2026-06-27 06:52:35,554.554 INFO    ] Launching Daemon at Sat Jun 27 06:52:35 IST 2026
[2026-06-27 06:52:35,565.565 INFO    ] ================================================
[2026-06-27 06:52:35,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:52:35
[2026-06-27 06:52:36,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:52:36,396.396 INFO    ] Initializing speech engine...
[2026-06-27 06:52:36,401.401 INFO    ] 2026-06-27 06:52:36
[2026-06-27 06:52:36,690.690 INFO    ] 2026-06-27 06:52:36
[2026-06-27 06:52:36,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:52:36,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:52:36,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:52:36,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:52:37,065.065 INFO    ] time= 27/06/2026 06:52:37
[2026-06-27 06:52:37,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:52:37,096.096 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:52:37,171.171 INFO    ] No existing commands found in stream
[2026-06-27 06:52:42,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:52:42,184.184 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-27 06:52:43,845.845 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 06:52:43,848.848 INFO    ] Checking for system updates...
[2026-06-27 06:52:43,884.884 INFO    ] 200
[2026-06-27 06:52:43,886.886 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:52:43,938.938 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:52:43,939.939 INFO    ] No update needed
[2026-06-27 06:52:43,941.941 INFO    ] Checking for camera pi updates...
[2026-06-27 06:52:43,960.960 INFO    ] 200
[2026-06-27 06:52:43,961.961 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:52:43,986.986 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:52:44,023.023 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:52:44,025.025 INFO    ] No camera update needed
[2026-06-27 06:52:44,026.026 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:52:44,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:52:44,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:52:44,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:52:46,072.072 INFO    ] ================================================
[2026-06-27 06:52:46,088.088 INFO    ] Launching Daemon at Sat Jun 27 06:52:46 IST 2026
[2026-06-27 06:52:46,099.099 INFO    ] ================================================
[2026-06-27 06:52:46,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:52:46
[2026-06-27 06:52:46,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:52:46,899.899 INFO    ] Initializing speech engine...
[2026-06-27 06:52:46,905.905 INFO    ] 2026-06-27 06:52:46
[2026-06-27 06:52:47,120.120 INFO    ] 2026-06-27 06:52:47
[2026-06-27 06:52:47,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:52:47,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:52:47,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:52:47,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:52:47,532.532 INFO    ] time= 27/06/2026 06:52:47
[2026-06-27 06:52:47,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:52:47,574.574 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:52:47,644.644 INFO    ] No existing commands found in stream
[2026-06-27 06:52:52,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:52:52,658.658 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-27 06:52:55,924.924 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:52:55,925.925 INFO    ] Checking for system updates...
[2026-06-27 06:52:55,948.948 INFO    ] 200
[2026-06-27 06:52:55,950.950 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:52:55,980.980 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:52:55,982.982 INFO    ] No update needed
[2026-06-27 06:52:55,983.983 INFO    ] Checking for camera pi updates...
[2026-06-27 06:52:56,004.004 INFO    ] 200
[2026-06-27 06:52:56,005.005 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:52:56,029.029 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:52:56,065.065 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:52:56,066.066 INFO    ] No camera update needed
[2026-06-27 06:52:56,067.067 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:52:56,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:52:56,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:52:56,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:52:58,113.113 INFO    ] ================================================
[2026-06-27 06:52:58,128.128 INFO    ] Launching Daemon at Sat Jun 27 06:52:58 IST 2026
[2026-06-27 06:52:58,139.139 INFO    ] ================================================
[2026-06-27 06:52:58,486.486 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:52:58
[2026-06-27 06:52:58,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:52:58,943.943 INFO    ] Initializing speech engine...
[2026-06-27 06:52:58,948.948 INFO    ] 2026-06-27 06:52:58
[2026-06-27 06:52:59,154.154 INFO    ] 2026-06-27 06:52:59
[2026-06-27 06:52:59,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:52:59,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:52:59,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:52:59,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:52:59,580.580 INFO    ] time= 27/06/2026 06:52:59
[2026-06-27 06:52:59,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:52:59,610.610 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:52:59,675.675 INFO    ] No existing commands found in stream
[2026-06-27 06:53:04,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:53:04,689.689 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-27 06:53:09,086.086 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 06:53:09,087.087 INFO    ] Checking for system updates...
[2026-06-27 06:53:09,107.107 INFO    ] 200
[2026-06-27 06:53:09,109.109 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:53:09,139.139 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:53:09,140.140 INFO    ] No update needed
[2026-06-27 06:53:09,142.142 INFO    ] Checking for camera pi updates...
[2026-06-27 06:53:09,161.161 INFO    ] 200
[2026-06-27 06:53:09,162.162 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:53:09,189.189 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:53:09,229.229 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:53:09,230.230 INFO    ] No camera update needed
[2026-06-27 06:53:09,232.232 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:53:09,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:53:09,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:53:09,239.239 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:53:11,277.277 INFO    ] ================================================
[2026-06-27 06:53:11,293.293 INFO    ] Launching Daemon at Sat Jun 27 06:53:11 IST 2026
[2026-06-27 06:53:11,305.305 INFO    ] ================================================
[2026-06-27 06:53:11,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:53:11
[2026-06-27 06:53:11,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:53:12,127.127 INFO    ] Initializing speech engine...
[2026-06-27 06:53:12,138.138 INFO    ] 2026-06-27 06:53:12
[2026-06-27 06:53:12,342.342 INFO    ] 2026-06-27 06:53:12
[2026-06-27 06:53:12,372.372 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:53:12,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:53:12,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:53:12,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:53:12,758.758 INFO    ] time= 27/06/2026 06:53:12
[2026-06-27 06:53:12,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:53:12,792.792 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:53:12,859.859 INFO    ] No existing commands found in stream
[2026-06-27 06:53:17,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:53:21,095.095 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-27 06:53:25,194.194 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:53:25,196.196 INFO    ] Checking for system updates...
[2026-06-27 06:53:25,220.220 INFO    ] 200
[2026-06-27 06:53:25,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:53:25,251.251 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:53:25,253.253 INFO    ] No update needed
[2026-06-27 06:53:25,254.254 INFO    ] Checking for camera pi updates...
[2026-06-27 06:53:25,274.274 INFO    ] 200
[2026-06-27 06:53:25,276.276 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:53:25,299.299 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:53:25,443.443 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:53:25,445.445 INFO    ] No camera update needed
[2026-06-27 06:53:25,446.446 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:53:25,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:53:25,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:53:25,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:53:27,492.492 INFO    ] ================================================
[2026-06-27 06:53:27,507.507 INFO    ] Launching Daemon at Sat Jun 27 06:53:27 IST 2026
[2026-06-27 06:53:27,518.518 INFO    ] ================================================
[2026-06-27 06:53:27,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:53:27
[2026-06-27 06:53:28,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:53:28,308.308 INFO    ] Initializing speech engine...
[2026-06-27 06:53:28,313.313 INFO    ] 2026-06-27 06:53:28
[2026-06-27 06:53:28,518.518 INFO    ] 2026-06-27 06:53:28
[2026-06-27 06:53:28,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:53:28,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:53:28,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:53:28,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:53:28,937.937 INFO    ] time= 27/06/2026 06:53:28
[2026-06-27 06:53:28,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:53:28,966.966 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:53:29,032.032 INFO    ] No existing commands found in stream
[2026-06-27 06:53:34,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:53:34,044.044 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-27 06:53:36,722.722 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 06:53:36,724.724 INFO    ] Checking for system updates...
[2026-06-27 06:53:36,746.746 INFO    ] 200
[2026-06-27 06:53:36,748.748 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:53:36,781.781 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:53:36,782.782 INFO    ] No update needed
[2026-06-27 06:53:36,783.783 INFO    ] Checking for camera pi updates...
[2026-06-27 06:53:36,804.804 INFO    ] 200
[2026-06-27 06:53:36,805.805 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:53:36,830.830 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:53:36,872.872 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:53:36,873.873 INFO    ] No camera update needed
[2026-06-27 06:53:36,874.874 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:53:36,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:53:36,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:53:36,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:53:38,920.920 INFO    ] ================================================
[2026-06-27 06:53:38,935.935 INFO    ] Launching Daemon at Sat Jun 27 06:53:38 IST 2026
[2026-06-27 06:53:38,946.946 INFO    ] ================================================
[2026-06-27 06:53:39,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:53:39
[2026-06-27 06:53:39,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:53:39,819.819 INFO    ] Initializing speech engine...
[2026-06-27 06:53:39,824.824 INFO    ] 2026-06-27 06:53:39
[2026-06-27 06:53:40,028.028 INFO    ] 2026-06-27 06:53:40
[2026-06-27 06:53:40,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:53:40,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:53:40,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:53:40,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:53:40,435.435 INFO    ] time= 27/06/2026 06:53:40
[2026-06-27 06:53:40,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:53:40,472.472 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:53:40,537.537 INFO    ] No existing commands found in stream
[2026-06-27 06:53:45,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:53:45,551.551 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-27 06:53:47,552.552 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 06:53:47,554.554 INFO    ] Checking for system updates...
[2026-06-27 06:53:47,575.575 INFO    ] 200
[2026-06-27 06:53:47,576.576 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:53:47,606.606 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:53:47,608.608 INFO    ] No update needed
[2026-06-27 06:53:47,609.609 INFO    ] Checking for camera pi updates...
[2026-06-27 06:53:47,628.628 INFO    ] 200
[2026-06-27 06:53:47,630.630 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:53:47,653.653 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:53:47,694.694 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:53:47,696.696 INFO    ] No camera update needed
[2026-06-27 06:53:47,697.697 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:53:47,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:53:47,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:53:47,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:53:49,745.745 INFO    ] ================================================
[2026-06-27 06:53:49,760.760 INFO    ] Launching Daemon at Sat Jun 27 06:53:49 IST 2026
[2026-06-27 06:53:49,771.771 INFO    ] ================================================
[2026-06-27 06:53:50,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:53:50
[2026-06-27 06:53:50,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:53:50,591.591 INFO    ] Initializing speech engine...
[2026-06-27 06:53:50,596.596 INFO    ] 2026-06-27 06:53:50
[2026-06-27 06:53:50,801.801 INFO    ] 2026-06-27 06:53:50
[2026-06-27 06:53:50,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:53:51,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:53:51,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:53:51,156.156 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:53:51,224.224 INFO    ] time= 27/06/2026 06:53:51
[2026-06-27 06:53:51,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:53:51,255.255 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:53:51,323.323 INFO    ] No existing commands found in stream
[2026-06-27 06:53:56,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:53:56,335.335 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-27 06:54:00,209.209 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 06:54:00,210.210 INFO    ] Checking for system updates...
[2026-06-27 06:54:00,231.231 INFO    ] 200
[2026-06-27 06:54:00,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:54:00,265.265 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:54:00,266.266 INFO    ] No update needed
[2026-06-27 06:54:00,268.268 INFO    ] Checking for camera pi updates...
[2026-06-27 06:54:00,287.287 INFO    ] 200
[2026-06-27 06:54:00,288.288 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:54:00,315.315 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:54:00,353.353 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:54:00,354.354 INFO    ] No camera update needed
[2026-06-27 06:54:00,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:54:00,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:54:00,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:54:00,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:54:02,391.391 INFO    ] ================================================
[2026-06-27 06:54:02,406.406 INFO    ] Launching Daemon at Sat Jun 27 06:54:02 IST 2026
[2026-06-27 06:54:02,420.420 INFO    ] ================================================
[2026-06-27 06:54:02,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:54:02
[2026-06-27 06:54:03,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:54:03,296.296 INFO    ] Initializing speech engine...
[2026-06-27 06:54:03,301.301 INFO    ] 2026-06-27 06:54:03
[2026-06-27 06:54:03,541.541 INFO    ] 2026-06-27 06:54:03
[2026-06-27 06:54:03,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:54:03,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:54:03,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:54:03,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:54:03,966.966 INFO    ] time= 27/06/2026 06:54:03
[2026-06-27 06:54:04,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:54:04,007.007 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:54:04,079.079 INFO    ] No existing commands found in stream
[2026-06-27 06:54:09,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:54:09,089.089 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-27 06:54:12,688.688 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 06:54:12,689.689 INFO    ] Checking for system updates...
[2026-06-27 06:54:12,711.711 INFO    ] 200
[2026-06-27 06:54:12,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:54:12,743.743 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:54:12,744.744 INFO    ] No update needed
[2026-06-27 06:54:12,746.746 INFO    ] Checking for camera pi updates...
[2026-06-27 06:54:12,765.765 INFO    ] 200
[2026-06-27 06:54:12,767.767 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:54:12,792.792 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:54:12,831.831 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:54:12,832.832 INFO    ] No camera update needed
[2026-06-27 06:54:12,834.834 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:54:12,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:54:12,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:54:12,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:54:14,880.880 INFO    ] ================================================
[2026-06-27 06:54:14,895.895 INFO    ] Launching Daemon at Sat Jun 27 06:54:14 IST 2026
[2026-06-27 06:54:14,906.906 INFO    ] ================================================
[2026-06-27 06:54:15,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:54:15
[2026-06-27 06:54:15,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:54:15,706.706 INFO    ] Initializing speech engine...
[2026-06-27 06:54:15,713.713 INFO    ] 2026-06-27 06:54:15
[2026-06-27 06:54:15,922.922 INFO    ] 2026-06-27 06:54:15
[2026-06-27 06:54:15,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:54:16,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:54:16,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:54:16,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:54:16,348.348 INFO    ] time= 27/06/2026 06:54:16
[2026-06-27 06:54:16,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:54:16,385.385 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:54:16,458.458 INFO    ] No existing commands found in stream
[2026-06-27 06:54:21,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:54:21,469.469 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-27 06:54:23,331.331 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 06:54:23,332.332 INFO    ] Checking for system updates...
[2026-06-27 06:54:23,354.354 INFO    ] 200
[2026-06-27 06:54:23,355.355 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:54:23,389.389 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:54:23,390.390 INFO    ] No update needed
[2026-06-27 06:54:23,391.391 INFO    ] Checking for camera pi updates...
[2026-06-27 06:54:23,411.411 INFO    ] 200
[2026-06-27 06:54:23,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:54:23,439.439 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:54:23,470.470 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:54:23,472.472 INFO    ] No camera update needed
[2026-06-27 06:54:23,473.473 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:54:23,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:54:23,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:54:23,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:54:25,518.518 INFO    ] ================================================
[2026-06-27 06:54:25,533.533 INFO    ] Launching Daemon at Sat Jun 27 06:54:25 IST 2026
[2026-06-27 06:54:25,545.545 INFO    ] ================================================
[2026-06-27 06:54:25,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:54:25
[2026-06-27 06:54:26,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:54:26,362.362 INFO    ] Initializing speech engine...
[2026-06-27 06:54:26,367.367 INFO    ] 2026-06-27 06:54:26
[2026-06-27 06:54:26,580.580 INFO    ] 2026-06-27 06:54:26
[2026-06-27 06:54:26,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:54:26,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:54:26,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:54:26,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:54:27,006.006 INFO    ] time= 27/06/2026 06:54:26
[2026-06-27 06:54:27,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:54:27,034.034 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:54:27,102.102 INFO    ] No existing commands found in stream
[2026-06-27 06:54:32,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:54:32,115.115 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-27 06:54:35,087.087 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:54:35,088.088 INFO    ] Checking for system updates...
[2026-06-27 06:54:35,110.110 INFO    ] 200
[2026-06-27 06:54:35,112.112 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:54:35,147.147 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:54:35,148.148 INFO    ] No update needed
[2026-06-27 06:54:35,149.149 INFO    ] Checking for camera pi updates...
[2026-06-27 06:54:35,172.172 INFO    ] 200
[2026-06-27 06:54:35,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:54:35,197.197 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:54:35,239.239 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:54:35,241.241 INFO    ] No camera update needed
[2026-06-27 06:54:35,242.242 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:54:35,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:54:35,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:54:35,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:54:37,288.288 INFO    ] ================================================
[2026-06-27 06:54:37,303.303 INFO    ] Launching Daemon at Sat Jun 27 06:54:37 IST 2026
[2026-06-27 06:54:37,314.314 INFO    ] ================================================
[2026-06-27 06:54:37,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:54:37
[2026-06-27 06:54:38,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:54:38,170.170 INFO    ] Initializing speech engine...
[2026-06-27 06:54:38,177.177 INFO    ] 2026-06-27 06:54:38
[2026-06-27 06:54:38,385.385 INFO    ] 2026-06-27 06:54:38
[2026-06-27 06:54:38,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:54:38,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:54:38,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:54:38,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:54:38,834.834 INFO    ] time= 27/06/2026 06:54:38
[2026-06-27 06:54:38,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:54:38,842.842 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:54:38,910.910 INFO    ] No existing commands found in stream
[2026-06-27 06:54:43,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:54:43,923.923 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-27 06:54:45,010.010 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:54:45,011.011 INFO    ] Checking for system updates...
[2026-06-27 06:54:45,033.033 INFO    ] 200
[2026-06-27 06:54:45,034.034 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:54:45,067.067 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:54:45,069.069 INFO    ] No update needed
[2026-06-27 06:54:45,070.070 INFO    ] Checking for camera pi updates...
[2026-06-27 06:54:45,094.094 INFO    ] 200
[2026-06-27 06:54:45,095.095 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:54:45,121.121 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:54:45,159.159 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:54:45,161.161 INFO    ] No camera update needed
[2026-06-27 06:54:45,162.162 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:54:45,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:54:45,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:54:45,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:54:47,208.208 INFO    ] ================================================
[2026-06-27 06:54:47,223.223 INFO    ] Launching Daemon at Sat Jun 27 06:54:47 IST 2026
[2026-06-27 06:54:47,233.233 INFO    ] ================================================
[2026-06-27 06:54:47,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:54:47
[2026-06-27 06:54:47,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:54:48,077.077 INFO    ] Initializing speech engine...
[2026-06-27 06:54:48,080.080 INFO    ] 2026-06-27 06:54:48
[2026-06-27 06:54:48,289.289 INFO    ] 2026-06-27 06:54:48
[2026-06-27 06:54:48,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:54:48,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:54:48,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:54:48,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:54:48,729.729 INFO    ] time= 27/06/2026 06:54:48
[2026-06-27 06:54:48,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:54:48,746.746 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:54:48,814.814 INFO    ] No existing commands found in stream
[2026-06-27 06:54:53,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:54:53,827.827 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-27 06:54:56,881.881 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 06:54:56,883.883 INFO    ] Checking for system updates...
[2026-06-27 06:54:56,905.905 INFO    ] 200
[2026-06-27 06:54:56,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:54:56,939.939 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:54:56,941.941 INFO    ] No update needed
[2026-06-27 06:54:56,942.942 INFO    ] Checking for camera pi updates...
[2026-06-27 06:54:56,963.963 INFO    ] 200
[2026-06-27 06:54:56,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:54:56,988.988 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:54:57,025.025 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:54:57,026.026 INFO    ] No camera update needed
[2026-06-27 06:54:57,027.027 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:54:57,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:54:57,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:54:57,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:54:59,073.073 INFO    ] ================================================
[2026-06-27 06:54:59,088.088 INFO    ] Launching Daemon at Sat Jun 27 06:54:59 IST 2026
[2026-06-27 06:54:59,098.098 INFO    ] ================================================
[2026-06-27 06:54:59,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:54:59
[2026-06-27 06:54:59,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:54:59,920.920 INFO    ] Initializing speech engine...
[2026-06-27 06:54:59,925.925 INFO    ] 2026-06-27 06:54:59
[2026-06-27 06:55:00,128.128 INFO    ] 2026-06-27 06:55:00
[2026-06-27 06:55:00,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:55:00,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:55:00,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:55:00,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:55:00,546.546 INFO    ] time= 27/06/2026 06:55:00
[2026-06-27 06:55:00,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:55:00,576.576 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:55:00,648.648 INFO    ] No existing commands found in stream
[2026-06-27 06:55:05,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:55:05,659.659 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-27 06:55:09,625.625 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:55:09,626.626 INFO    ] Checking for system updates...
[2026-06-27 06:55:09,647.647 INFO    ] 200
[2026-06-27 06:55:09,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:55:09,683.683 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:55:09,685.685 INFO    ] No update needed
[2026-06-27 06:55:09,686.686 INFO    ] Checking for camera pi updates...
[2026-06-27 06:55:09,706.706 INFO    ] 200
[2026-06-27 06:55:09,707.707 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:55:09,733.733 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:55:09,770.770 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:55:09,771.771 INFO    ] No camera update needed
[2026-06-27 06:55:09,772.772 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:55:09,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:55:09,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:55:09,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:55:11,817.817 INFO    ] ================================================
[2026-06-27 06:55:11,832.832 INFO    ] Launching Daemon at Sat Jun 27 06:55:11 IST 2026
[2026-06-27 06:55:11,843.843 INFO    ] ================================================
[2026-06-27 06:55:12,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:55:12
[2026-06-27 06:55:12,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:55:12,642.642 INFO    ] Initializing speech engine...
[2026-06-27 06:55:12,648.648 INFO    ] 2026-06-27 06:55:12
[2026-06-27 06:55:12,853.853 INFO    ] 2026-06-27 06:55:12
[2026-06-27 06:55:12,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:55:13,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:55:13,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:55:13,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:55:13,269.269 INFO    ] time= 27/06/2026 06:55:13
[2026-06-27 06:55:13,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:55:13,309.309 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:55:13,377.377 INFO    ] No existing commands found in stream
[2026-06-27 06:55:18,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:55:18,388.388 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-27 06:55:22,303.303 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:55:22,305.305 INFO    ] Checking for system updates...
[2026-06-27 06:55:22,326.326 INFO    ] 200
[2026-06-27 06:55:22,328.328 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:55:22,360.360 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:55:22,361.361 INFO    ] No update needed
[2026-06-27 06:55:22,363.363 INFO    ] Checking for camera pi updates...
[2026-06-27 06:55:22,383.383 INFO    ] 200
[2026-06-27 06:55:22,385.385 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:55:22,408.408 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:55:22,446.446 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:55:22,447.447 INFO    ] No camera update needed
[2026-06-27 06:55:22,449.449 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:55:22,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:55:22,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:55:22,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:55:24,493.493 INFO    ] ================================================
[2026-06-27 06:55:24,509.509 INFO    ] Launching Daemon at Sat Jun 27 06:55:24 IST 2026
[2026-06-27 06:55:24,519.519 INFO    ] ================================================
[2026-06-27 06:55:24,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:55:24
[2026-06-27 06:55:25,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:55:25,335.335 INFO    ] Initializing speech engine...
[2026-06-27 06:55:25,340.340 INFO    ] 2026-06-27 06:55:25
[2026-06-27 06:55:25,546.546 INFO    ] 2026-06-27 06:55:25
[2026-06-27 06:55:25,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:55:25,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:55:25,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:55:25,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:55:25,965.965 INFO    ] time= 27/06/2026 06:55:25
[2026-06-27 06:55:25,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:55:25,994.994 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:55:26,065.065 INFO    ] No existing commands found in stream
[2026-06-27 06:55:31,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:55:31,097.097 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-27 06:55:34,860.860 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 06:55:34,862.862 INFO    ] Checking for system updates...
[2026-06-27 06:55:34,882.882 INFO    ] 200
[2026-06-27 06:55:34,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:55:34,914.914 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:55:34,916.916 INFO    ] No update needed
[2026-06-27 06:55:34,917.917 INFO    ] Checking for camera pi updates...
[2026-06-27 06:55:34,939.939 INFO    ] 200
[2026-06-27 06:55:34,940.940 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:55:34,966.966 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:55:35,017.017 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:55:35,018.018 INFO    ] No camera update needed
[2026-06-27 06:55:35,019.019 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:55:35,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:55:35,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:55:35,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:55:37,068.068 INFO    ] ================================================
[2026-06-27 06:55:37,085.085 INFO    ] Launching Daemon at Sat Jun 27 06:55:37 IST 2026
[2026-06-27 06:55:37,095.095 INFO    ] ================================================
[2026-06-27 06:55:37,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:55:37
[2026-06-27 06:55:37,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:55:37,880.880 INFO    ] Initializing speech engine...
[2026-06-27 06:55:37,884.884 INFO    ] 2026-06-27 06:55:37
[2026-06-27 06:55:38,103.103 INFO    ] 2026-06-27 06:55:38
[2026-06-27 06:55:38,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:55:38,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:55:38,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:55:38,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:55:38,509.509 INFO    ] time= 27/06/2026 06:55:38
[2026-06-27 06:55:38,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:55:38,556.556 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:55:38,628.628 INFO    ] No existing commands found in stream
[2026-06-27 06:55:43,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:55:43,640.640 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-27 06:55:47,099.099 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 06:55:47,101.101 INFO    ] Checking for system updates...
[2026-06-27 06:55:47,122.122 INFO    ] 200
[2026-06-27 06:55:47,124.124 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:55:47,154.154 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:55:47,155.155 INFO    ] No update needed
[2026-06-27 06:55:47,157.157 INFO    ] Checking for camera pi updates...
[2026-06-27 06:55:47,177.177 INFO    ] 200
[2026-06-27 06:55:47,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:55:47,202.202 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:55:47,238.238 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:55:47,239.239 INFO    ] No camera update needed
[2026-06-27 06:55:47,241.241 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:55:47,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:55:47,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:55:47,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:55:49,289.289 INFO    ] ================================================
[2026-06-27 06:55:49,304.304 INFO    ] Launching Daemon at Sat Jun 27 06:55:49 IST 2026
[2026-06-27 06:55:49,315.315 INFO    ] ================================================
[2026-06-27 06:55:49,712.712 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:55:49
[2026-06-27 06:55:50,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:55:50,199.199 INFO    ] Initializing speech engine...
[2026-06-27 06:55:50,204.204 INFO    ] 2026-06-27 06:55:50
[2026-06-27 06:55:50,412.412 INFO    ] 2026-06-27 06:55:50
[2026-06-27 06:55:50,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:55:50,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:55:50,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:55:50,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:55:50,834.834 INFO    ] time= 27/06/2026 06:55:50
[2026-06-27 06:55:50,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:55:50,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:55:50,930.930 INFO    ] No existing commands found in stream
[2026-06-27 06:55:55,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:55:55,948.948 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-27 06:55:58,550.550 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:55:58,551.551 INFO    ] Checking for system updates...
[2026-06-27 06:55:58,573.573 INFO    ] 200
[2026-06-27 06:55:58,575.575 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:55:58,608.608 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:55:58,609.609 INFO    ] No update needed
[2026-06-27 06:55:58,610.610 INFO    ] Checking for camera pi updates...
[2026-06-27 06:55:58,630.630 INFO    ] 200
[2026-06-27 06:55:58,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:55:58,657.657 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:55:58,694.694 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:55:58,695.695 INFO    ] No camera update needed
[2026-06-27 06:55:58,696.696 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:55:58,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:55:58,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:55:58,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:56:00,741.741 INFO    ] ================================================
[2026-06-27 06:56:00,756.756 INFO    ] Launching Daemon at Sat Jun 27 06:56:00 IST 2026
[2026-06-27 06:56:00,767.767 INFO    ] ================================================
[2026-06-27 06:56:01,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:56:01
[2026-06-27 06:56:01,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:56:01,585.585 INFO    ] Initializing speech engine...
[2026-06-27 06:56:01,589.589 INFO    ] 2026-06-27 06:56:01
[2026-06-27 06:56:01,877.877 INFO    ] 2026-06-27 06:56:01
[2026-06-27 06:56:01,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:56:02,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:56:02,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:56:02,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:56:02,372.372 INFO    ] time= 27/06/2026 06:56:02
[2026-06-27 06:56:02,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:56:02,455.455 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:56:02,548.548 INFO    ] No existing commands found in stream
[2026-06-27 06:56:07,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:56:07,560.560 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-27 06:56:11,230.230 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:56:11,231.231 INFO    ] Checking for system updates...
[2026-06-27 06:56:11,254.254 INFO    ] 200
[2026-06-27 06:56:11,256.256 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:56:11,288.288 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:56:11,290.290 INFO    ] No update needed
[2026-06-27 06:56:11,291.291 INFO    ] Checking for camera pi updates...
[2026-06-27 06:56:11,314.314 INFO    ] 200
[2026-06-27 06:56:11,315.315 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:56:11,338.338 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:56:11,374.374 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:56:11,375.375 INFO    ] No camera update needed
[2026-06-27 06:56:11,377.377 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:56:11,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:56:11,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:56:11,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:56:13,423.423 INFO    ] ================================================
[2026-06-27 06:56:13,438.438 INFO    ] Launching Daemon at Sat Jun 27 06:56:13 IST 2026
[2026-06-27 06:56:13,448.448 INFO    ] ================================================
[2026-06-27 06:56:13,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:56:13
[2026-06-27 06:56:14,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:56:14,256.256 INFO    ] Initializing speech engine...
[2026-06-27 06:56:14,262.262 INFO    ] 2026-06-27 06:56:14
[2026-06-27 06:56:14,470.470 INFO    ] 2026-06-27 06:56:14
[2026-06-27 06:56:14,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:56:14,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:56:14,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:56:14,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:56:14,924.924 INFO    ] time= 27/06/2026 06:56:14
[2026-06-27 06:56:14,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:56:14,951.951 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:56:15,027.027 INFO    ] No existing commands found in stream
[2026-06-27 06:56:20,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:56:20,039.039 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-27 06:56:23,771.771 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 06:56:23,772.772 INFO    ] Checking for system updates...
[2026-06-27 06:56:23,795.795 INFO    ] 200
[2026-06-27 06:56:23,796.796 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:56:23,831.831 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:56:23,833.833 INFO    ] No update needed
[2026-06-27 06:56:23,834.834 INFO    ] Checking for camera pi updates...
[2026-06-27 06:56:23,857.857 INFO    ] 200
[2026-06-27 06:56:23,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:56:23,881.881 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:56:23,920.920 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:56:23,922.922 INFO    ] No camera update needed
[2026-06-27 06:56:23,923.923 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:56:23,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:56:23,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:56:23,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:56:25,971.971 INFO    ] ================================================
[2026-06-27 06:56:25,986.986 INFO    ] Launching Daemon at Sat Jun 27 06:56:25 IST 2026
[2026-06-27 06:56:26,997.997 INFO    ] ================================================
[2026-06-27 06:56:26,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:56:26
[2026-06-27 06:56:26,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:56:26,852.852 INFO    ] Initializing speech engine...
[2026-06-27 06:56:26,857.857 INFO    ] 2026-06-27 06:56:26
[2026-06-27 06:56:27,066.066 INFO    ] 2026-06-27 06:56:27
[2026-06-27 06:56:27,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:56:27,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:56:27,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:56:27,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:56:27,488.488 INFO    ] time= 27/06/2026 06:56:27
[2026-06-27 06:56:27,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:56:27,518.518 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:56:27,586.586 INFO    ] No existing commands found in stream
[2026-06-27 06:56:32,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:56:32,599.599 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-27 06:56:35,037.037 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 06:56:35,038.038 INFO    ] Checking for system updates...
[2026-06-27 06:56:35,059.059 INFO    ] 200
[2026-06-27 06:56:35,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:56:35,092.092 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:56:35,093.093 INFO    ] No update needed
[2026-06-27 06:56:35,095.095 INFO    ] Checking for camera pi updates...
[2026-06-27 06:56:35,115.115 INFO    ] 200
[2026-06-27 06:56:35,116.116 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:56:35,139.139 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:56:35,178.178 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:56:35,179.179 INFO    ] No camera update needed
[2026-06-27 06:56:35,181.181 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:56:35,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:56:35,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:56:35,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:56:37,227.227 INFO    ] ================================================
[2026-06-27 06:56:37,244.244 INFO    ] Launching Daemon at Sat Jun 27 06:56:37 IST 2026
[2026-06-27 06:56:37,255.255 INFO    ] ================================================
[2026-06-27 06:56:37,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:56:37
[2026-06-27 06:56:37,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:56:38,074.074 INFO    ] Initializing speech engine...
[2026-06-27 06:56:38,079.079 INFO    ] 2026-06-27 06:56:38
[2026-06-27 06:56:38,283.283 INFO    ] 2026-06-27 06:56:38
[2026-06-27 06:56:38,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:56:38,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:56:38,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:56:38,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:56:38,701.701 INFO    ] time= 27/06/2026 06:56:38
[2026-06-27 06:56:38,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:56:38,735.735 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:56:38,804.804 INFO    ] No existing commands found in stream
[2026-06-27 06:56:43,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:56:43,819.819 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-27 06:56:44,290.290 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 06:56:44,291.291 INFO    ] Checking for system updates...
[2026-06-27 06:56:44,313.313 INFO    ] 200
[2026-06-27 06:56:44,315.315 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:56:44,347.347 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:56:44,349.349 INFO    ] No update needed
[2026-06-27 06:56:44,350.350 INFO    ] Checking for camera pi updates...
[2026-06-27 06:56:44,370.370 INFO    ] 200
[2026-06-27 06:56:44,372.372 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:56:44,398.398 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:56:44,438.438 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:56:44,439.439 INFO    ] No camera update needed
[2026-06-27 06:56:44,440.440 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:56:44,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:56:44,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:56:44,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:56:46,488.488 INFO    ] ================================================
[2026-06-27 06:56:46,504.504 INFO    ] Launching Daemon at Sat Jun 27 06:56:46 IST 2026
[2026-06-27 06:56:46,516.516 INFO    ] ================================================
[2026-06-27 06:56:46,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:56:46
[2026-06-27 06:56:47,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:56:47,335.335 INFO    ] Initializing speech engine...
[2026-06-27 06:56:47,349.349 INFO    ] 2026-06-27 06:56:47
[2026-06-27 06:56:47,559.559 INFO    ] 2026-06-27 06:56:47
[2026-06-27 06:56:47,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:56:47,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:56:47,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:56:47,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:56:47,989.989 INFO    ] time= 27/06/2026 06:56:47
[2026-06-27 06:56:48,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:56:48,018.018 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:56:48,084.084 INFO    ] No existing commands found in stream
[2026-06-27 06:56:53,094.094 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:56:53,096.096 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-27 06:56:55,895.895 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 06:56:55,897.897 INFO    ] Checking for system updates...
[2026-06-27 06:56:55,918.918 INFO    ] 200
[2026-06-27 06:56:55,919.919 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:56:55,950.950 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:56:55,951.951 INFO    ] No update needed
[2026-06-27 06:56:55,952.952 INFO    ] Checking for camera pi updates...
[2026-06-27 06:56:55,973.973 INFO    ] 200
[2026-06-27 06:56:55,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:56:55,998.998 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:56:56,035.035 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:56:56,036.036 INFO    ] No camera update needed
[2026-06-27 06:56:56,038.038 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:56:56,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:56:56,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:56:56,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:56:58,084.084 INFO    ] ================================================
[2026-06-27 06:56:58,099.099 INFO    ] Launching Daemon at Sat Jun 27 06:56:58 IST 2026
[2026-06-27 06:56:58,111.111 INFO    ] ================================================
[2026-06-27 06:56:58,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:56:58
[2026-06-27 06:56:58,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:56:58,994.994 INFO    ] Initializing speech engine...
[2026-06-27 06:56:59,000.000 INFO    ] 2026-06-27 06:56:58
[2026-06-27 06:56:59,212.212 INFO    ] 2026-06-27 06:56:59
[2026-06-27 06:56:59,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:56:59,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:56:59,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:56:59,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:56:59,639.639 INFO    ] time= 27/06/2026 06:56:59
[2026-06-27 06:56:59,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:56:59,671.671 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:56:59,738.738 INFO    ] No existing commands found in stream
[2026-06-27 06:57:04,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:57:04,751.751 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-27 06:57:07,387.387 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 06:57:07,389.389 INFO    ] Checking for system updates...
[2026-06-27 06:57:07,410.410 INFO    ] 200
[2026-06-27 06:57:07,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:57:07,444.444 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:57:07,445.445 INFO    ] No update needed
[2026-06-27 06:57:07,446.446 INFO    ] Checking for camera pi updates...
[2026-06-27 06:57:07,469.469 INFO    ] 200
[2026-06-27 06:57:07,470.470 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:57:07,496.496 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:57:07,534.534 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:57:07,536.536 INFO    ] No camera update needed
[2026-06-27 06:57:07,537.537 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:57:07,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:57:07,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:57:07,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:57:09,582.582 INFO    ] ================================================
[2026-06-27 06:57:09,598.598 INFO    ] Launching Daemon at Sat Jun 27 06:57:09 IST 2026
[2026-06-27 06:57:09,609.609 INFO    ] ================================================
[2026-06-27 06:57:09,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:57:09
[2026-06-27 06:57:10,292.292 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:57:10,422.422 INFO    ] Initializing speech engine...
[2026-06-27 06:57:10,431.431 INFO    ] 2026-06-27 06:57:10
[2026-06-27 06:57:10,645.645 INFO    ] 2026-06-27 06:57:10
[2026-06-27 06:57:10,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:57:10,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:57:10,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:57:11,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:57:11,069.069 INFO    ] time= 27/06/2026 06:57:11
[2026-06-27 06:57:11,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:57:11,098.098 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:57:11,166.166 INFO    ] No existing commands found in stream
[2026-06-27 06:57:16,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:57:16,177.177 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-27 06:57:20,140.140 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:57:20,142.142 INFO    ] Checking for system updates...
[2026-06-27 06:57:20,162.162 INFO    ] 200
[2026-06-27 06:57:20,164.164 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:57:20,197.197 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:57:20,198.198 INFO    ] No update needed
[2026-06-27 06:57:20,199.199 INFO    ] Checking for camera pi updates...
[2026-06-27 06:57:20,219.219 INFO    ] 200
[2026-06-27 06:57:20,220.220 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:57:20,243.243 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:57:20,289.289 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:57:20,291.291 INFO    ] No camera update needed
[2026-06-27 06:57:20,292.292 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:57:20,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:57:20,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:57:20,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:57:22,338.338 INFO    ] ================================================
[2026-06-27 06:57:22,353.353 INFO    ] Launching Daemon at Sat Jun 27 06:57:22 IST 2026
[2026-06-27 06:57:22,365.365 INFO    ] ================================================
[2026-06-27 06:57:22,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:57:22
[2026-06-27 06:57:23,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:57:23,259.259 INFO    ] Initializing speech engine...
[2026-06-27 06:57:23,265.265 INFO    ] 2026-06-27 06:57:23
[2026-06-27 06:57:23,473.473 INFO    ] 2026-06-27 06:57:23
[2026-06-27 06:57:23,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:57:23,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:57:23,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:57:23,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:57:23,893.893 INFO    ] time= 27/06/2026 06:57:23
[2026-06-27 06:57:23,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:57:23,921.921 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:57:24,109.109 INFO    ] No existing commands found in stream
[2026-06-27 06:57:29,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:57:29,122.122 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-27 06:57:32,058.058 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 06:57:32,060.060 INFO    ] Checking for system updates...
[2026-06-27 06:57:32,084.084 INFO    ] 200
[2026-06-27 06:57:32,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:57:32,124.124 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:57:32,126.126 INFO    ] No update needed
[2026-06-27 06:57:32,128.128 INFO    ] Checking for camera pi updates...
[2026-06-27 06:57:32,153.153 INFO    ] 200
[2026-06-27 06:57:32,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:57:32,187.187 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:57:32,213.213 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:57:32,215.215 INFO    ] No camera update needed
[2026-06-27 06:57:32,217.217 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:57:32,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:57:32,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:57:32,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:57:34,259.259 INFO    ] ================================================
[2026-06-27 06:57:34,275.275 INFO    ] Launching Daemon at Sat Jun 27 06:57:34 IST 2026
[2026-06-27 06:57:34,286.286 INFO    ] ================================================
[2026-06-27 06:57:34,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:57:34
[2026-06-27 06:57:34,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:57:35,091.091 INFO    ] Initializing speech engine...
[2026-06-27 06:57:35,096.096 INFO    ] 2026-06-27 06:57:35
[2026-06-27 06:57:35,293.293 INFO    ] 2026-06-27 06:57:35
[2026-06-27 06:57:35,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:57:35,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:57:35,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:57:35,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:57:35,762.762 INFO    ] time= 27/06/2026 06:57:35
[2026-06-27 06:57:35,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:57:35,813.813 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:57:35,888.888 INFO    ] No existing commands found in stream
[2026-06-27 06:57:40,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:57:40,899.899 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-27 06:57:43,670.670 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 06:57:43,671.671 INFO    ] Checking for system updates...
[2026-06-27 06:57:43,692.692 INFO    ] 200
[2026-06-27 06:57:43,693.693 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:57:43,726.726 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:57:43,728.728 INFO    ] No update needed
[2026-06-27 06:57:43,729.729 INFO    ] Checking for camera pi updates...
[2026-06-27 06:57:43,750.750 INFO    ] 200
[2026-06-27 06:57:43,751.751 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:57:43,774.774 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:57:43,914.914 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:57:43,915.915 INFO    ] No camera update needed
[2026-06-27 06:57:43,917.917 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:57:43,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:57:43,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:57:43,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:57:45,962.962 INFO    ] ================================================
[2026-06-27 06:57:45,977.977 INFO    ] Launching Daemon at Sat Jun 27 06:57:45 IST 2026
[2026-06-27 06:57:45,988.988 INFO    ] ================================================
[2026-06-27 06:57:46,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:57:46
[2026-06-27 06:57:46,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:57:46,815.815 INFO    ] Initializing speech engine...
[2026-06-27 06:57:46,819.819 INFO    ] 2026-06-27 06:57:46
[2026-06-27 06:57:47,023.023 INFO    ] 2026-06-27 06:57:47
[2026-06-27 06:57:47,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:57:47,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:57:47,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:57:47,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:57:47,481.481 INFO    ] time= 27/06/2026 06:57:47
[2026-06-27 06:57:47,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:57:47,515.515 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:57:47,588.588 INFO    ] No existing commands found in stream
[2026-06-27 06:57:52,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:57:52,625.625 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-27 06:57:56,322.322 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 06:57:56,323.323 INFO    ] Checking for system updates...
[2026-06-27 06:57:56,345.345 INFO    ] 200
[2026-06-27 06:57:56,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:57:56,378.378 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:57:56,379.379 INFO    ] No update needed
[2026-06-27 06:57:56,381.381 INFO    ] Checking for camera pi updates...
[2026-06-27 06:57:56,401.401 INFO    ] 200
[2026-06-27 06:57:56,402.402 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:57:56,426.426 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:57:56,462.462 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:57:56,463.463 INFO    ] No camera update needed
[2026-06-27 06:57:56,465.465 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:57:56,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:57:56,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:57:56,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:57:58,512.512 INFO    ] ================================================
[2026-06-27 06:57:58,527.527 INFO    ] Launching Daemon at Sat Jun 27 06:57:58 IST 2026
[2026-06-27 06:57:58,538.538 INFO    ] ================================================
[2026-06-27 06:57:58,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:57:58
[2026-06-27 06:57:59,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:57:59,356.356 INFO    ] Initializing speech engine...
[2026-06-27 06:57:59,362.362 INFO    ] 2026-06-27 06:57:59
[2026-06-27 06:57:59,567.567 INFO    ] 2026-06-27 06:57:59
[2026-06-27 06:57:59,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:57:59,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:57:59,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:57:59,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:58:00,005.005 INFO    ] time= 27/06/2026 06:57:59
[2026-06-27 06:58:00,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:58:00,012.012 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:58:00,079.079 INFO    ] No existing commands found in stream
[2026-06-27 06:58:05,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:58:05,091.091 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-27 06:58:07,322.322 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:58:07,323.323 INFO    ] Checking for system updates...
[2026-06-27 06:58:07,346.346 INFO    ] 200
[2026-06-27 06:58:07,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:58:07,378.378 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:58:07,380.380 INFO    ] No update needed
[2026-06-27 06:58:07,381.381 INFO    ] Checking for camera pi updates...
[2026-06-27 06:58:07,401.401 INFO    ] 200
[2026-06-27 06:58:07,403.403 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:58:07,428.428 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:58:07,474.474 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:58:07,476.476 INFO    ] No camera update needed
[2026-06-27 06:58:07,477.477 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:58:07,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:58:07,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:58:07,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:58:09,524.524 INFO    ] ================================================
[2026-06-27 06:58:09,539.539 INFO    ] Launching Daemon at Sat Jun 27 06:58:09 IST 2026
[2026-06-27 06:58:09,550.550 INFO    ] ================================================
[2026-06-27 06:58:09,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:58:09
[2026-06-27 06:58:10,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:58:10,346.346 INFO    ] Initializing speech engine...
[2026-06-27 06:58:10,358.358 INFO    ] 2026-06-27 06:58:10
[2026-06-27 06:58:10,564.564 INFO    ] 2026-06-27 06:58:10
[2026-06-27 06:58:10,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:58:10,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:58:10,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:58:10,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:58:10,982.982 INFO    ] time= 27/06/2026 06:58:10
[2026-06-27 06:58:11,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:58:11,011.011 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:58:11,076.076 INFO    ] No existing commands found in stream
[2026-06-27 06:58:16,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:58:16,089.089 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-27 06:58:20,160.160 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 06:58:20,162.162 INFO    ] Checking for system updates...
[2026-06-27 06:58:20,183.183 INFO    ] 200
[2026-06-27 06:58:20,185.185 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:58:20,219.219 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:58:20,221.221 INFO    ] No update needed
[2026-06-27 06:58:20,222.222 INFO    ] Checking for camera pi updates...
[2026-06-27 06:58:20,244.244 INFO    ] 200
[2026-06-27 06:58:20,245.245 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:58:20,272.272 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:58:20,310.310 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:58:20,311.311 INFO    ] No camera update needed
[2026-06-27 06:58:20,312.312 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:58:20,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:58:20,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:58:20,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:58:22,360.360 INFO    ] ================================================
[2026-06-27 06:58:22,376.376 INFO    ] Launching Daemon at Sat Jun 27 06:58:22 IST 2026
[2026-06-27 06:58:22,386.386 INFO    ] ================================================
[2026-06-27 06:58:22,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:58:22
[2026-06-27 06:58:23,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:58:23,195.195 INFO    ] Initializing speech engine...
[2026-06-27 06:58:23,200.200 INFO    ] 2026-06-27 06:58:23
[2026-06-27 06:58:23,405.405 INFO    ] 2026-06-27 06:58:23
[2026-06-27 06:58:23,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:58:23,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:58:23,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:58:23,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:58:23,821.821 INFO    ] time= 27/06/2026 06:58:23
[2026-06-27 06:58:23,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:58:23,849.849 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:58:23,916.916 INFO    ] No existing commands found in stream
[2026-06-27 06:58:28,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:58:28,933.933 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-27 06:58:33,035.035 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:58:33,037.037 INFO    ] Checking for system updates...
[2026-06-27 06:58:33,058.058 INFO    ] 200
[2026-06-27 06:58:33,059.059 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:58:33,090.090 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:58:33,091.091 INFO    ] No update needed
[2026-06-27 06:58:33,093.093 INFO    ] Checking for camera pi updates...
[2026-06-27 06:58:33,113.113 INFO    ] 200
[2026-06-27 06:58:33,115.115 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:58:33,140.140 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:58:33,179.179 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:58:33,180.180 INFO    ] No camera update needed
[2026-06-27 06:58:33,181.181 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:58:33,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:58:33,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:58:33,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:58:35,228.228 INFO    ] ================================================
[2026-06-27 06:58:35,243.243 INFO    ] Launching Daemon at Sat Jun 27 06:58:35 IST 2026
[2026-06-27 06:58:35,254.254 INFO    ] ================================================
[2026-06-27 06:58:35,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:58:35
[2026-06-27 06:58:35,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:58:36,100.100 INFO    ] Initializing speech engine...
[2026-06-27 06:58:36,103.103 INFO    ] 2026-06-27 06:58:36
[2026-06-27 06:58:36,298.298 INFO    ] 2026-06-27 06:58:36
[2026-06-27 06:58:36,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:58:36,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:58:36,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:58:36,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:58:36,726.726 INFO    ] time= 27/06/2026 06:58:36
[2026-06-27 06:58:36,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:58:36,828.828 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:58:36,904.904 INFO    ] No existing commands found in stream
[2026-06-27 06:58:41,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:58:41,918.918 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-27 06:58:44,448.448 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 06:58:44,450.450 INFO    ] Checking for system updates...
[2026-06-27 06:58:44,471.471 INFO    ] 200
[2026-06-27 06:58:44,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:58:44,505.505 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:58:44,506.506 INFO    ] No update needed
[2026-06-27 06:58:44,508.508 INFO    ] Checking for camera pi updates...
[2026-06-27 06:58:44,527.527 INFO    ] 200
[2026-06-27 06:58:44,529.529 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:58:44,554.554 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:58:44,614.614 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:58:44,616.616 INFO    ] No camera update needed
[2026-06-27 06:58:44,617.617 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:58:44,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:58:44,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:58:44,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:58:46,663.663 INFO    ] ================================================
[2026-06-27 06:58:46,678.678 INFO    ] Launching Daemon at Sat Jun 27 06:58:46 IST 2026
[2026-06-27 06:58:46,689.689 INFO    ] ================================================
[2026-06-27 06:58:47,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:58:47
[2026-06-27 06:58:47,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:58:47,492.492 INFO    ] Initializing speech engine...
[2026-06-27 06:58:47,497.497 INFO    ] 2026-06-27 06:58:47
[2026-06-27 06:58:47,702.702 INFO    ] 2026-06-27 06:58:47
[2026-06-27 06:58:47,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:58:47,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:58:47,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:58:48,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:58:48,125.125 INFO    ] time= 27/06/2026 06:58:48
[2026-06-27 06:58:48,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:58:48,152.152 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:58:48,243.243 INFO    ] No existing commands found in stream
[2026-06-27 06:58:53,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:58:53,259.259 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-27 06:58:56,256.256 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 06:58:56,258.258 INFO    ] Checking for system updates...
[2026-06-27 06:58:56,279.279 INFO    ] 200
[2026-06-27 06:58:56,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:58:56,312.312 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:58:56,314.314 INFO    ] No update needed
[2026-06-27 06:58:56,315.315 INFO    ] Checking for camera pi updates...
[2026-06-27 06:58:56,336.336 INFO    ] 200
[2026-06-27 06:58:56,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:58:56,360.360 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:58:56,401.401 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:58:56,403.403 INFO    ] No camera update needed
[2026-06-27 06:58:56,404.404 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:58:56,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:58:56,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:58:56,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:58:58,450.450 INFO    ] ================================================
[2026-06-27 06:58:58,466.466 INFO    ] Launching Daemon at Sat Jun 27 06:58:58 IST 2026
[2026-06-27 06:58:58,480.480 INFO    ] ================================================
[2026-06-27 06:58:58,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:58:58
[2026-06-27 06:58:59,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:58:59,296.296 INFO    ] Initializing speech engine...
[2026-06-27 06:58:59,304.304 INFO    ] 2026-06-27 06:58:59
[2026-06-27 06:58:59,515.515 INFO    ] 2026-06-27 06:58:59
[2026-06-27 06:58:59,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:58:59,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:58:59,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:58:59,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:58:59,957.957 INFO    ] time= 27/06/2026 06:58:59
[2026-06-27 06:58:59,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:58:59,964.964 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:59:00,029.029 INFO    ] No existing commands found in stream
[2026-06-27 06:59:05,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:59:05,040.040 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-27 06:59:08,028.028 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:59:08,030.030 INFO    ] Checking for system updates...
[2026-06-27 06:59:08,051.051 INFO    ] 200
[2026-06-27 06:59:08,052.052 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:59:08,083.083 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:59:08,085.085 INFO    ] No update needed
[2026-06-27 06:59:08,087.087 INFO    ] Checking for camera pi updates...
[2026-06-27 06:59:08,107.107 INFO    ] 200
[2026-06-27 06:59:08,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:59:08,135.135 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:59:08,171.171 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:59:08,173.173 INFO    ] No camera update needed
[2026-06-27 06:59:08,174.174 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:59:08,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:59:08,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:59:08,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:59:10,221.221 INFO    ] ================================================
[2026-06-27 06:59:10,236.236 INFO    ] Launching Daemon at Sat Jun 27 06:59:10 IST 2026
[2026-06-27 06:59:10,246.246 INFO    ] ================================================
[2026-06-27 06:59:10,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:59:10
[2026-06-27 06:59:10,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:59:11,043.043 INFO    ] Initializing speech engine...
[2026-06-27 06:59:11,049.049 INFO    ] 2026-06-27 06:59:11
[2026-06-27 06:59:11,254.254 INFO    ] 2026-06-27 06:59:11
[2026-06-27 06:59:11,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:59:11,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:59:11,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:59:11,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:59:11,678.678 INFO    ] time= 27/06/2026 06:59:11
[2026-06-27 06:59:11,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:59:11,704.704 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:59:11,774.774 INFO    ] No existing commands found in stream
[2026-06-27 06:59:16,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:59:16,788.788 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-27 06:59:21,180.180 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 06:59:21,181.181 INFO    ] Checking for system updates...
[2026-06-27 06:59:21,202.202 INFO    ] 200
[2026-06-27 06:59:21,204.204 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:59:21,234.234 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:59:21,236.236 INFO    ] No update needed
[2026-06-27 06:59:21,237.237 INFO    ] Checking for camera pi updates...
[2026-06-27 06:59:21,257.257 INFO    ] 200
[2026-06-27 06:59:21,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:59:21,281.281 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:59:21,317.317 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 06:59:21,318.318 INFO    ] No camera update needed
[2026-06-27 06:59:21,319.319 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:59:21,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:59:21,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:59:21,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:59:23,366.366 INFO    ] ================================================
[2026-06-27 06:59:23,381.381 INFO    ] Launching Daemon at Sat Jun 27 06:59:23 IST 2026
[2026-06-27 06:59:23,392.392 INFO    ] ================================================
[2026-06-27 06:59:23,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:59:23
[2026-06-27 06:59:24,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:59:24,254.254 INFO    ] Initializing speech engine...
[2026-06-27 06:59:24,260.260 INFO    ] 2026-06-27 06:59:24
[2026-06-27 06:59:24,470.470 INFO    ] 2026-06-27 06:59:24
[2026-06-27 06:59:24,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:59:24,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:59:24,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:59:24,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:59:24,897.897 INFO    ] time= 27/06/2026 06:59:24
[2026-06-27 06:59:24,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:59:24,928.928 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:59:24,995.995 INFO    ] No existing commands found in stream
[2026-06-27 06:59:30,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:59:30,009.009 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-27 06:59:33,405.405 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 06:59:33,406.406 INFO    ] Checking for system updates...
[2026-06-27 06:59:33,428.428 INFO    ] 200
[2026-06-27 06:59:33,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:59:33,461.461 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:59:33,462.462 INFO    ] No update needed
[2026-06-27 06:59:33,464.464 INFO    ] Checking for camera pi updates...
[2026-06-27 06:59:33,484.484 INFO    ] 200
[2026-06-27 06:59:33,486.486 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:59:33,510.510 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:59:33,556.556 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:59:33,558.558 INFO    ] No camera update needed
[2026-06-27 06:59:33,559.559 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:59:33,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:59:33,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:59:33,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:59:35,609.609 INFO    ] ================================================
[2026-06-27 06:59:35,624.624 INFO    ] Launching Daemon at Sat Jun 27 06:59:35 IST 2026
[2026-06-27 06:59:35,635.635 INFO    ] ================================================
[2026-06-27 06:59:35,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:59:35
[2026-06-27 06:59:36,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:59:36,418.418 INFO    ] Initializing speech engine...
[2026-06-27 06:59:36,423.423 INFO    ] 2026-06-27 06:59:36
[2026-06-27 06:59:36,641.641 INFO    ] 2026-06-27 06:59:36
[2026-06-27 06:59:36,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:59:36,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:59:36,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:59:36,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:59:37,063.063 INFO    ] time= 27/06/2026 06:59:37
[2026-06-27 06:59:37,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:59:37,093.093 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:59:37,161.161 INFO    ] No existing commands found in stream
[2026-06-27 06:59:42,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:59:42,173.173 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-27 06:59:44,944.944 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 06:59:44,946.946 INFO    ] Checking for system updates...
[2026-06-27 06:59:44,966.966 INFO    ] 200
[2026-06-27 06:59:44,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:59:44,999.999 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:59:45,000.000 INFO    ] No update needed
[2026-06-27 06:59:45,001.001 INFO    ] Checking for camera pi updates...
[2026-06-27 06:59:45,022.022 INFO    ] 200
[2026-06-27 06:59:45,024.024 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:59:45,047.047 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:59:45,188.188 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:59:45,189.189 INFO    ] No camera update needed
[2026-06-27 06:59:45,190.190 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:59:45,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:59:45,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:59:45,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:59:47,236.236 INFO    ] ================================================
[2026-06-27 06:59:47,251.251 INFO    ] Launching Daemon at Sat Jun 27 06:59:47 IST 2026
[2026-06-27 06:59:47,262.262 INFO    ] ================================================
[2026-06-27 06:59:47,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:59:47
[2026-06-27 06:59:47,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:59:48,120.120 INFO    ] Initializing speech engine...
[2026-06-27 06:59:48,124.124 INFO    ] 2026-06-27 06:59:48
[2026-06-27 06:59:48,331.331 INFO    ] 2026-06-27 06:59:48
[2026-06-27 06:59:48,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:59:48,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:59:48,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:59:48,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:59:48,771.771 INFO    ] time= 27/06/2026 06:59:48
[2026-06-27 06:59:48,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:59:48,779.779 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:59:48,846.846 INFO    ] No existing commands found in stream
[2026-06-27 06:59:53,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 06:59:53,859.859 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-27 06:59:55,504.504 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 06:59:55,505.505 INFO    ] Checking for system updates...
[2026-06-27 06:59:55,527.527 INFO    ] 200
[2026-06-27 06:59:55,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:59:55,559.559 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:59:55,561.561 INFO    ] No update needed
[2026-06-27 06:59:55,562.562 INFO    ] Checking for camera pi updates...
[2026-06-27 06:59:55,582.582 INFO    ] 200
[2026-06-27 06:59:55,584.584 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 06:59:55,608.608 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 06:59:55,646.646 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 06:59:55,647.647 INFO    ] No camera update needed
[2026-06-27 06:59:55,649.649 INFO    ] Script finished. Safe exiting...
[2026-06-27 06:59:55,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 06:59:55,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 06:59:55,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 06:59:57,695.695 INFO    ] ================================================
[2026-06-27 06:59:57,710.710 INFO    ] Launching Daemon at Sat Jun 27 06:59:57 IST 2026
[2026-06-27 06:59:57,721.721 INFO    ] ================================================
[2026-06-27 06:59:58,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 06:59:58
[2026-06-27 06:59:58,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 06:59:58,523.523 INFO    ] Initializing speech engine...
[2026-06-27 06:59:58,534.534 INFO    ] 2026-06-27 06:59:58
[2026-06-27 06:59:58,737.737 INFO    ] 2026-06-27 06:59:58
[2026-06-27 06:59:58,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 06:59:58,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 06:59:58,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 06:59:59,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 06:59:59,154.154 INFO    ] time= 27/06/2026 06:59:59
[2026-06-27 06:59:59,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 06:59:59,184.184 INFO    ] Checking for existing commands in stream...
[2026-06-27 06:59:59,251.251 INFO    ] No existing commands found in stream
[2026-06-27 07:00:04,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:00:04,267.267 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-27 07:00:05,600.600 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 07:00:05,602.602 INFO    ] Checking for system updates...
[2026-06-27 07:00:05,622.622 INFO    ] 200
[2026-06-27 07:00:05,624.624 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:00:05,655.655 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:00:05,656.656 INFO    ] No update needed
[2026-06-27 07:00:05,657.657 INFO    ] Checking for camera pi updates...
[2026-06-27 07:00:05,679.679 INFO    ] 200
[2026-06-27 07:00:05,680.680 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:00:05,704.704 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:00:05,747.747 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:00:05,748.748 INFO    ] No camera update needed
[2026-06-27 07:00:05,750.750 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:00:05,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:00:05,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:00:05,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:00:07,796.796 INFO    ] ================================================
[2026-06-27 07:00:07,811.811 INFO    ] Launching Daemon at Sat Jun 27 07:00:07 IST 2026
[2026-06-27 07:00:07,822.822 INFO    ] ================================================
[2026-06-27 07:00:08,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:00:08
[2026-06-27 07:00:08,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:00:08,631.631 INFO    ] Initializing speech engine...
[2026-06-27 07:00:08,641.641 INFO    ] 2026-06-27 07:00:08
[2026-06-27 07:00:08,848.848 INFO    ] 2026-06-27 07:00:08
[2026-06-27 07:00:08,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:00:09,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:00:09,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:00:09,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:00:09,272.272 INFO    ] time= 27/06/2026 07:00:09
[2026-06-27 07:00:09,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:00:09,302.302 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:00:09,368.368 INFO    ] No existing commands found in stream
[2026-06-27 07:00:14,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:00:14,381.381 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-27 07:00:17,211.211 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 07:00:17,212.212 INFO    ] Checking for system updates...
[2026-06-27 07:00:17,233.233 INFO    ] 200
[2026-06-27 07:00:17,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:00:17,266.266 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:00:17,267.267 INFO    ] No update needed
[2026-06-27 07:00:17,268.268 INFO    ] Checking for camera pi updates...
[2026-06-27 07:00:17,288.288 INFO    ] 200
[2026-06-27 07:00:17,289.289 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:00:17,312.312 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:00:17,349.349 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:00:17,350.350 INFO    ] No camera update needed
[2026-06-27 07:00:17,351.351 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:00:17,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:00:17,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:00:17,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:00:19,396.396 INFO    ] ================================================
[2026-06-27 07:00:19,411.411 INFO    ] Launching Daemon at Sat Jun 27 07:00:19 IST 2026
[2026-06-27 07:00:19,422.422 INFO    ] ================================================
[2026-06-27 07:00:19,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:00:19
[2026-06-27 07:00:20,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:00:20,252.252 INFO    ] Initializing speech engine...
[2026-06-27 07:00:20,262.262 INFO    ] 2026-06-27 07:00:20
[2026-06-27 07:00:20,477.477 INFO    ] 2026-06-27 07:00:20
[2026-06-27 07:00:20,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:00:20,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:00:20,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:00:20,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:00:20,924.924 INFO    ] time= 27/06/2026 07:00:20
[2026-06-27 07:00:20,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:00:20,930.930 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:00:20,999.999 INFO    ] No existing commands found in stream
[2026-06-27 07:00:26,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:00:26,011.011 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-27 07:00:27,733.733 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:00:27,735.735 INFO    ] Checking for system updates...
[2026-06-27 07:00:27,756.756 INFO    ] 200
[2026-06-27 07:00:27,757.757 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:00:27,790.790 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:00:27,791.791 INFO    ] No update needed
[2026-06-27 07:00:27,792.792 INFO    ] Checking for camera pi updates...
[2026-06-27 07:00:27,812.812 INFO    ] 200
[2026-06-27 07:00:27,814.814 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:00:27,839.839 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:00:27,878.878 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:00:27,880.880 INFO    ] No camera update needed
[2026-06-27 07:00:27,881.881 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:00:27,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:00:27,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:00:27,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:00:29,926.926 INFO    ] ================================================
[2026-06-27 07:00:29,941.941 INFO    ] Launching Daemon at Sat Jun 27 07:00:29 IST 2026
[2026-06-27 07:00:29,952.952 INFO    ] ================================================
[2026-06-27 07:00:30,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:00:30
[2026-06-27 07:00:30,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:00:30,752.752 INFO    ] Initializing speech engine...
[2026-06-27 07:00:30,764.764 INFO    ] 2026-06-27 07:00:30
[2026-06-27 07:00:30,971.971 INFO    ] 2026-06-27 07:00:30
[2026-06-27 07:00:31,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:00:31,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:00:31,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:00:31,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:00:31,377.377 INFO    ] time= 27/06/2026 07:00:31
[2026-06-27 07:00:31,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:00:31,417.417 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:00:31,488.488 INFO    ] No existing commands found in stream
[2026-06-27 07:00:36,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:00:36,505.505 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-27 07:00:39,459.459 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 07:00:39,461.461 INFO    ] Checking for system updates...
[2026-06-27 07:00:39,482.482 INFO    ] 200
[2026-06-27 07:00:39,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:00:39,517.517 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:00:39,518.518 INFO    ] No update needed
[2026-06-27 07:00:39,519.519 INFO    ] Checking for camera pi updates...
[2026-06-27 07:00:39,539.539 INFO    ] 200
[2026-06-27 07:00:39,540.540 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:00:39,564.564 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:00:39,600.600 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:00:39,602.602 INFO    ] No camera update needed
[2026-06-27 07:00:39,603.603 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:00:39,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:00:39,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:00:39,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:00:41,648.648 INFO    ] ================================================
[2026-06-27 07:00:41,664.664 INFO    ] Launching Daemon at Sat Jun 27 07:00:41 IST 2026
[2026-06-27 07:00:41,675.675 INFO    ] ================================================
[2026-06-27 07:00:42,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:00:42
[2026-06-27 07:00:42,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:00:42,500.500 INFO    ] Initializing speech engine...
[2026-06-27 07:00:42,505.505 INFO    ] 2026-06-27 07:00:42
[2026-06-27 07:00:42,710.710 INFO    ] 2026-06-27 07:00:42
[2026-06-27 07:00:42,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:00:42,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:00:42,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:00:43,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:00:43,150.150 INFO    ] time= 27/06/2026 07:00:43
[2026-06-27 07:00:43,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:00:43,158.158 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:00:43,223.223 INFO    ] No existing commands found in stream
[2026-06-27 07:00:48,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:00:48,237.237 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-27 07:00:50,136.136 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 07:00:50,138.138 INFO    ] Checking for system updates...
[2026-06-27 07:00:50,158.158 INFO    ] 200
[2026-06-27 07:00:50,160.160 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:00:50,190.190 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:00:50,191.191 INFO    ] No update needed
[2026-06-27 07:00:50,193.193 INFO    ] Checking for camera pi updates...
[2026-06-27 07:00:50,213.213 INFO    ] 200
[2026-06-27 07:00:50,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:00:50,238.238 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:00:50,282.282 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:00:50,283.283 INFO    ] No camera update needed
[2026-06-27 07:00:50,285.285 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:00:50,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:00:50,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:00:50,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:00:52,330.330 INFO    ] ================================================
[2026-06-27 07:00:52,347.347 INFO    ] Launching Daemon at Sat Jun 27 07:00:52 IST 2026
[2026-06-27 07:00:52,358.358 INFO    ] ================================================
[2026-06-27 07:00:52,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:00:52
[2026-06-27 07:00:53,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:00:53,143.143 INFO    ] Initializing speech engine...
[2026-06-27 07:00:53,155.155 INFO    ] 2026-06-27 07:00:53
[2026-06-27 07:00:53,362.362 INFO    ] 2026-06-27 07:00:53
[2026-06-27 07:00:53,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:00:53,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:00:53,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:00:53,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:00:53,785.785 INFO    ] time= 27/06/2026 07:00:53
[2026-06-27 07:00:53,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:00:53,815.815 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:00:53,924.924 INFO    ] No existing commands found in stream
[2026-06-27 07:00:58,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:00:58,939.939 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-27 07:01:00,229.229 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 07:01:00,231.231 INFO    ] Checking for system updates...
[2026-06-27 07:01:00,253.253 INFO    ] 200
[2026-06-27 07:01:00,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:01:00,285.285 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:01:00,286.286 INFO    ] No update needed
[2026-06-27 07:01:00,287.287 INFO    ] Checking for camera pi updates...
[2026-06-27 07:01:00,307.307 INFO    ] 200
[2026-06-27 07:01:00,309.309 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:01:00,333.333 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:01:00,375.375 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:01:00,377.377 INFO    ] No camera update needed
[2026-06-27 07:01:00,378.378 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:01:00,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:01:00,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:01:00,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:01:02,446.446 INFO    ] ================================================
[2026-06-27 07:01:02,454.454 INFO    ] Launching Daemon at Sat Jun 27 07:01:02 IST 2026
[2026-06-27 07:01:02,461.461 INFO    ] ================================================
[2026-06-27 07:01:02,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:01:02
[2026-06-27 07:01:03,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:01:03,234.234 INFO    ] Initializing speech engine...
[2026-06-27 07:01:03,244.244 INFO    ] 2026-06-27 07:01:03
[2026-06-27 07:01:03,449.449 INFO    ] 2026-06-27 07:01:03
[2026-06-27 07:01:03,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:01:03,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:01:03,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:01:03,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:01:03,872.872 INFO    ] time= 27/06/2026 07:01:03
[2026-06-27 07:01:03,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:01:03,901.901 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:01:03,967.967 INFO    ] No existing commands found in stream
[2026-06-27 07:01:08,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:01:08,980.980 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-27 07:01:11,271.271 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:01:11,273.273 INFO    ] Checking for system updates...
[2026-06-27 07:01:11,294.294 INFO    ] 200
[2026-06-27 07:01:11,295.295 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:01:11,326.326 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:01:11,327.327 INFO    ] No update needed
[2026-06-27 07:01:11,328.328 INFO    ] Checking for camera pi updates...
[2026-06-27 07:01:11,348.348 INFO    ] 200
[2026-06-27 07:01:11,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:01:11,374.374 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:01:11,412.412 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:01:11,414.414 INFO    ] No camera update needed
[2026-06-27 07:01:11,415.415 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:01:11,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:01:11,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:01:11,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:01:13,461.461 INFO    ] ================================================
[2026-06-27 07:01:13,477.477 INFO    ] Launching Daemon at Sat Jun 27 07:01:13 IST 2026
[2026-06-27 07:01:13,489.489 INFO    ] ================================================
[2026-06-27 07:01:13,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:01:13
[2026-06-27 07:01:14,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:01:14,297.297 INFO    ] Initializing speech engine...
[2026-06-27 07:01:14,302.302 INFO    ] 2026-06-27 07:01:14
[2026-06-27 07:01:14,488.488 INFO    ] 2026-06-27 07:01:14
[2026-06-27 07:01:14,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:01:14,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:01:14,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:01:14,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:01:14,934.934 INFO    ] time= 27/06/2026 07:01:14
[2026-06-27 07:01:14,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:01:14,963.963 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:01:15,029.029 INFO    ] No existing commands found in stream
[2026-06-27 07:01:20,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:01:20,043.043 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-27 07:01:21,751.751 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:01:21,753.753 INFO    ] Checking for system updates...
[2026-06-27 07:01:21,774.774 INFO    ] 200
[2026-06-27 07:01:21,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:01:21,809.809 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:01:21,810.810 INFO    ] No update needed
[2026-06-27 07:01:21,811.811 INFO    ] Checking for camera pi updates...
[2026-06-27 07:01:21,835.835 INFO    ] 200
[2026-06-27 07:01:21,836.836 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:01:21,862.862 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:01:21,900.900 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:01:21,901.901 INFO    ] No camera update needed
[2026-06-27 07:01:21,903.903 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:01:21,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:01:21,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:01:21,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:01:23,948.948 INFO    ] ================================================
[2026-06-27 07:01:23,963.963 INFO    ] Launching Daemon at Sat Jun 27 07:01:23 IST 2026
[2026-06-27 07:01:23,974.974 INFO    ] ================================================
[2026-06-27 07:01:24,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:01:24
[2026-06-27 07:01:24,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:01:24,840.840 INFO    ] Initializing speech engine...
[2026-06-27 07:01:24,846.846 INFO    ] 2026-06-27 07:01:24
[2026-06-27 07:01:25,052.052 INFO    ] 2026-06-27 07:01:25
[2026-06-27 07:01:25,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:01:25,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:01:25,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:01:25,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:01:25,477.477 INFO    ] time= 27/06/2026 07:01:25
[2026-06-27 07:01:25,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:01:25,516.516 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:01:25,619.619 INFO    ] No existing commands found in stream
[2026-06-27 07:01:30,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:01:30,629.629 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-27 07:01:31,344.344 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:01:31,345.345 INFO    ] Checking for system updates...
[2026-06-27 07:01:31,366.366 INFO    ] 200
[2026-06-27 07:01:31,368.368 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:01:31,399.399 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:01:31,400.400 INFO    ] No update needed
[2026-06-27 07:01:31,402.402 INFO    ] Checking for camera pi updates...
[2026-06-27 07:01:31,421.421 INFO    ] 200
[2026-06-27 07:01:31,423.423 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:01:31,450.450 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:01:31,477.477 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:01:31,479.479 INFO    ] No camera update needed
[2026-06-27 07:01:31,481.481 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:01:31,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:01:31,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:01:31,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:01:33,525.525 INFO    ] ================================================
[2026-06-27 07:01:33,539.539 INFO    ] Launching Daemon at Sat Jun 27 07:01:33 IST 2026
[2026-06-27 07:01:33,550.550 INFO    ] ================================================
[2026-06-27 07:01:33,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:01:33
[2026-06-27 07:01:34,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:01:34,355.355 INFO    ] Initializing speech engine...
[2026-06-27 07:01:34,366.366 INFO    ] 2026-06-27 07:01:34
[2026-06-27 07:01:34,569.569 INFO    ] 2026-06-27 07:01:34
[2026-06-27 07:01:34,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:01:34,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:01:34,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:01:34,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:01:34,991.991 INFO    ] time= 27/06/2026 07:01:34
[2026-06-27 07:01:35,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:01:35,019.019 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:01:35,087.087 INFO    ] No existing commands found in stream
[2026-06-27 07:01:40,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:01:40,099.099 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-27 07:01:43,983.983 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:01:43,984.984 INFO    ] Checking for system updates...
[2026-06-27 07:01:44,005.005 INFO    ] 200
[2026-06-27 07:01:44,007.007 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:01:44,037.037 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:01:44,038.038 INFO    ] No update needed
[2026-06-27 07:01:44,039.039 INFO    ] Checking for camera pi updates...
[2026-06-27 07:01:44,063.063 INFO    ] 200
[2026-06-27 07:01:44,065.065 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:01:44,088.088 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:01:44,125.125 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:01:44,126.126 INFO    ] No camera update needed
[2026-06-27 07:01:44,128.128 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:01:44,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:01:44,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:01:44,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:01:46,173.173 INFO    ] ================================================
[2026-06-27 07:01:46,188.188 INFO    ] Launching Daemon at Sat Jun 27 07:01:46 IST 2026
[2026-06-27 07:01:46,199.199 INFO    ] ================================================
[2026-06-27 07:01:46,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:01:46
[2026-06-27 07:01:46,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:01:47,005.005 INFO    ] Initializing speech engine...
[2026-06-27 07:01:47,010.010 INFO    ] 2026-06-27 07:01:47
[2026-06-27 07:01:47,213.213 INFO    ] 2026-06-27 07:01:47
[2026-06-27 07:01:47,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:01:47,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:01:47,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:01:47,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:01:47,631.631 INFO    ] time= 27/06/2026 07:01:47
[2026-06-27 07:01:47,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:01:47,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:01:47,732.732 INFO    ] No existing commands found in stream
[2026-06-27 07:01:52,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:01:52,759.759 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-27 07:01:54,252.252 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 07:01:54,253.253 INFO    ] Checking for system updates...
[2026-06-27 07:01:54,276.276 INFO    ] 200
[2026-06-27 07:01:54,277.277 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:01:54,310.310 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:01:54,311.311 INFO    ] No update needed
[2026-06-27 07:01:54,312.312 INFO    ] Checking for camera pi updates...
[2026-06-27 07:01:54,332.332 INFO    ] 200
[2026-06-27 07:01:54,333.333 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:01:54,357.357 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:01:54,483.483 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:01:54,484.484 INFO    ] No camera update needed
[2026-06-27 07:01:54,486.486 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:01:54,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:01:54,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:01:54,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:01:56,531.531 INFO    ] ================================================
[2026-06-27 07:01:56,547.547 INFO    ] Launching Daemon at Sat Jun 27 07:01:56 IST 2026
[2026-06-27 07:01:56,558.558 INFO    ] ================================================
[2026-06-27 07:01:56,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:01:56
[2026-06-27 07:01:57,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:01:57,428.428 INFO    ] Initializing speech engine...
[2026-06-27 07:01:57,433.433 INFO    ] 2026-06-27 07:01:57
[2026-06-27 07:01:57,644.644 INFO    ] 2026-06-27 07:01:57
[2026-06-27 07:01:57,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:01:57,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:01:57,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:01:58,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:01:58,073.073 INFO    ] time= 27/06/2026 07:01:58
[2026-06-27 07:01:58,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:01:58,169.169 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:01:58,224.224 INFO    ] No existing commands found in stream
[2026-06-27 07:02:03,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:02:03,237.237 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-27 07:02:06,542.542 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 07:02:06,544.544 INFO    ] Checking for system updates...
[2026-06-27 07:02:06,566.566 INFO    ] 200
[2026-06-27 07:02:06,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:02:06,598.598 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:02:06,600.600 INFO    ] No update needed
[2026-06-27 07:02:06,601.601 INFO    ] Checking for camera pi updates...
[2026-06-27 07:02:06,621.621 INFO    ] 200
[2026-06-27 07:02:06,622.622 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:02:06,645.645 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:02:06,682.682 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:02:06,683.683 INFO    ] No camera update needed
[2026-06-27 07:02:06,685.685 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:02:06,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:02:06,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:02:06,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:02:08,731.731 INFO    ] ================================================
[2026-06-27 07:02:08,747.747 INFO    ] Launching Daemon at Sat Jun 27 07:02:08 IST 2026
[2026-06-27 07:02:08,758.758 INFO    ] ================================================
[2026-06-27 07:02:09,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:02:09
[2026-06-27 07:02:09,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:02:09,558.558 INFO    ] Initializing speech engine...
[2026-06-27 07:02:09,568.568 INFO    ] 2026-06-27 07:02:09
[2026-06-27 07:02:09,779.779 INFO    ] 2026-06-27 07:02:09
[2026-06-27 07:02:09,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:02:09,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:02:10,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:02:10,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:02:10,207.207 INFO    ] time= 27/06/2026 07:02:10
[2026-06-27 07:02:10,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:02:10,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:02:10,302.302 INFO    ] No existing commands found in stream
[2026-06-27 07:02:15,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:02:15,317.317 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-27 07:02:18,047.047 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 07:02:18,049.049 INFO    ] Checking for system updates...
[2026-06-27 07:02:18,070.070 INFO    ] 200
[2026-06-27 07:02:18,071.071 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:02:18,105.105 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:02:18,106.106 INFO    ] No update needed
[2026-06-27 07:02:18,107.107 INFO    ] Checking for camera pi updates...
[2026-06-27 07:02:18,129.129 INFO    ] 200
[2026-06-27 07:02:18,130.130 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:02:18,155.155 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:02:18,190.190 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:02:18,192.192 INFO    ] No camera update needed
[2026-06-27 07:02:18,199.199 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:02:18,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:02:18,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:02:18,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:02:20,247.247 INFO    ] ================================================
[2026-06-27 07:02:20,263.263 INFO    ] Launching Daemon at Sat Jun 27 07:02:20 IST 2026
[2026-06-27 07:02:20,275.275 INFO    ] ================================================
[2026-06-27 07:02:20,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:02:20
[2026-06-27 07:02:20,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:02:21,070.070 INFO    ] Initializing speech engine...
[2026-06-27 07:02:21,078.078 INFO    ] 2026-06-27 07:02:21
[2026-06-27 07:02:21,290.290 INFO    ] 2026-06-27 07:02:21
[2026-06-27 07:02:21,319.319 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:02:21,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:02:21,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:02:21,645.645 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:02:21,712.712 INFO    ] time= 27/06/2026 07:02:21
[2026-06-27 07:02:21,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:02:21,742.742 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:02:21,816.816 INFO    ] No existing commands found in stream
[2026-06-27 07:02:26,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:02:26,828.828 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-27 07:02:27,954.954 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 07:02:27,956.956 INFO    ] Checking for system updates...
[2026-06-27 07:02:27,977.977 INFO    ] 200
[2026-06-27 07:02:27,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:02:28,012.012 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:02:28,013.013 INFO    ] No update needed
[2026-06-27 07:02:28,015.015 INFO    ] Checking for camera pi updates...
[2026-06-27 07:02:28,038.038 INFO    ] 200
[2026-06-27 07:02:28,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:02:28,062.062 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:02:28,100.100 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:02:28,101.101 INFO    ] No camera update needed
[2026-06-27 07:02:28,103.103 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:02:28,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:02:28,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:02:28,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:02:30,142.142 INFO    ] ================================================
[2026-06-27 07:02:30,153.153 INFO    ] Launching Daemon at Sat Jun 27 07:02:30 IST 2026
[2026-06-27 07:02:30,160.160 INFO    ] ================================================
[2026-06-27 07:02:30,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:02:30
[2026-06-27 07:02:30,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:02:30,947.947 INFO    ] Initializing speech engine...
[2026-06-27 07:02:30,954.954 INFO    ] 2026-06-27 07:02:30
[2026-06-27 07:02:31,158.158 INFO    ] 2026-06-27 07:02:31
[2026-06-27 07:02:31,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:02:31,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:02:31,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:02:31,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:02:31,575.575 INFO    ] time= 27/06/2026 07:02:31
[2026-06-27 07:02:31,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:02:31,605.605 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:02:31,679.679 INFO    ] No existing commands found in stream
[2026-06-27 07:02:36,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:02:36,696.696 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-27 07:02:37,767.767 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 07:02:37,769.769 INFO    ] Checking for system updates...
[2026-06-27 07:02:37,790.790 INFO    ] 200
[2026-06-27 07:02:37,791.791 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:02:37,822.822 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:02:37,823.823 INFO    ] No update needed
[2026-06-27 07:02:37,825.825 INFO    ] Checking for camera pi updates...
[2026-06-27 07:02:37,845.845 INFO    ] 200
[2026-06-27 07:02:37,846.846 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:02:37,870.870 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:02:37,912.912 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:02:37,914.914 INFO    ] No camera update needed
[2026-06-27 07:02:37,915.915 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:02:37,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:02:37,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:02:37,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:02:39,962.962 INFO    ] ================================================
[2026-06-27 07:02:39,979.979 INFO    ] Launching Daemon at Sat Jun 27 07:02:39 IST 2026
[2026-06-27 07:02:39,990.990 INFO    ] ================================================
[2026-06-27 07:02:40,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:02:40
[2026-06-27 07:02:40,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:02:40,813.813 INFO    ] Initializing speech engine...
[2026-06-27 07:02:40,824.824 INFO    ] 2026-06-27 07:02:40
[2026-06-27 07:02:41,030.030 INFO    ] 2026-06-27 07:02:41
[2026-06-27 07:02:41,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:02:41,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:02:41,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:02:41,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:02:41,470.470 INFO    ] time= 27/06/2026 07:02:41
[2026-06-27 07:02:41,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:02:41,478.478 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:02:41,545.545 INFO    ] No existing commands found in stream
[2026-06-27 07:02:46,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:02:46,562.562 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-27 07:02:47,187.187 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:02:47,189.189 INFO    ] Checking for system updates...
[2026-06-27 07:02:47,212.212 INFO    ] 200
[2026-06-27 07:02:47,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:02:47,245.245 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:02:47,246.246 INFO    ] No update needed
[2026-06-27 07:02:47,248.248 INFO    ] Checking for camera pi updates...
[2026-06-27 07:02:47,268.268 INFO    ] 200
[2026-06-27 07:02:47,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:02:47,294.294 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:02:47,331.331 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:02:47,332.332 INFO    ] No camera update needed
[2026-06-27 07:02:47,334.334 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:02:47,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:02:47,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:02:47,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:02:49,384.384 INFO    ] ================================================
[2026-06-27 07:02:49,400.400 INFO    ] Launching Daemon at Sat Jun 27 07:02:49 IST 2026
[2026-06-27 07:02:49,412.412 INFO    ] ================================================
[2026-06-27 07:02:49,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:02:49
[2026-06-27 07:02:50,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:02:50,200.200 INFO    ] Initializing speech engine...
[2026-06-27 07:02:50,210.210 INFO    ] 2026-06-27 07:02:50
[2026-06-27 07:02:50,414.414 INFO    ] 2026-06-27 07:02:50
[2026-06-27 07:02:50,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:02:50,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:02:50,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:02:50,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:02:50,831.831 INFO    ] time= 27/06/2026 07:02:50
[2026-06-27 07:02:50,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:02:50,860.860 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:02:50,927.927 INFO    ] No existing commands found in stream
[2026-06-27 07:02:55,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:02:55,939.939 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-27 07:02:58,144.144 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:02:58,145.145 INFO    ] Checking for system updates...
[2026-06-27 07:02:58,166.166 INFO    ] 200
[2026-06-27 07:02:58,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:02:58,199.199 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:02:58,200.200 INFO    ] No update needed
[2026-06-27 07:02:58,202.202 INFO    ] Checking for camera pi updates...
[2026-06-27 07:02:58,222.222 INFO    ] 200
[2026-06-27 07:02:58,223.223 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:02:58,246.246 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:02:58,286.286 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:02:58,288.288 INFO    ] No camera update needed
[2026-06-27 07:02:58,289.289 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:02:58,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:02:58,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:02:58,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:03:00,334.334 INFO    ] ================================================
[2026-06-27 07:03:00,350.350 INFO    ] Launching Daemon at Sat Jun 27 07:03:00 IST 2026
[2026-06-27 07:03:00,361.361 INFO    ] ================================================
[2026-06-27 07:03:00,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:03:00
[2026-06-27 07:03:01,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:03:01,187.187 INFO    ] Initializing speech engine...
[2026-06-27 07:03:01,200.200 INFO    ] 2026-06-27 07:03:01
[2026-06-27 07:03:01,421.421 INFO    ] 2026-06-27 07:03:01
[2026-06-27 07:03:01,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:03:01,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:03:01,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:03:01,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:03:01,785.785 INFO    ] time= 27/06/2026 07:03:01
[2026-06-27 07:03:01,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:03:01,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:03:01,865.865 INFO    ] No existing commands found in stream
[2026-06-27 07:03:06,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:03:06,877.877 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-27 07:03:07,624.624 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:03:07,625.625 INFO    ] Checking for system updates...
[2026-06-27 07:03:07,646.646 INFO    ] 200
[2026-06-27 07:03:07,647.647 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:03:07,681.681 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:03:07,683.683 INFO    ] No update needed
[2026-06-27 07:03:07,684.684 INFO    ] Checking for camera pi updates...
[2026-06-27 07:03:07,705.705 INFO    ] 200
[2026-06-27 07:03:07,706.706 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:03:07,729.729 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:03:07,772.772 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:03:07,773.773 INFO    ] No camera update needed
[2026-06-27 07:03:07,775.775 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:03:07,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:03:07,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:03:07,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:03:09,823.823 INFO    ] ================================================
[2026-06-27 07:03:09,839.839 INFO    ] Launching Daemon at Sat Jun 27 07:03:09 IST 2026
[2026-06-27 07:03:09,851.851 INFO    ] ================================================
[2026-06-27 07:03:10,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:03:10
[2026-06-27 07:03:10,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:03:10,690.690 INFO    ] Initializing speech engine...
[2026-06-27 07:03:10,697.697 INFO    ] 2026-06-27 07:03:10
[2026-06-27 07:03:10,910.910 INFO    ] 2026-06-27 07:03:10
[2026-06-27 07:03:10,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:03:11,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:03:11,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:03:11,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:03:11,357.357 INFO    ] time= 27/06/2026 07:03:11
[2026-06-27 07:03:11,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:03:11,365.365 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:03:11,432.432 INFO    ] No existing commands found in stream
[2026-06-27 07:03:16,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:03:16,436.436 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-27 07:03:19,187.187 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 07:03:19,189.189 INFO    ] Checking for system updates...
[2026-06-27 07:03:19,211.211 INFO    ] 200
[2026-06-27 07:03:19,212.212 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:03:19,245.245 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:03:19,246.246 INFO    ] No update needed
[2026-06-27 07:03:19,248.248 INFO    ] Checking for camera pi updates...
[2026-06-27 07:03:19,267.267 INFO    ] 200
[2026-06-27 07:03:19,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:03:19,292.292 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:03:19,329.329 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:03:19,331.331 INFO    ] No camera update needed
[2026-06-27 07:03:19,332.332 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:03:19,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:03:19,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:03:19,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:03:21,378.378 INFO    ] ================================================
[2026-06-27 07:03:21,394.394 INFO    ] Launching Daemon at Sat Jun 27 07:03:21 IST 2026
[2026-06-27 07:03:21,405.405 INFO    ] ================================================
[2026-06-27 07:03:21,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:03:21
[2026-06-27 07:03:22,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:03:22,187.187 INFO    ] Initializing speech engine...
[2026-06-27 07:03:22,195.195 INFO    ] 2026-06-27 07:03:22
[2026-06-27 07:03:22,409.409 INFO    ] 2026-06-27 07:03:22
[2026-06-27 07:03:22,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:03:22,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:03:22,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:03:22,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:03:22,853.853 INFO    ] time= 27/06/2026 07:03:22
[2026-06-27 07:03:22,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:03:22,860.860 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:03:22,928.928 INFO    ] No existing commands found in stream
[2026-06-27 07:03:27,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:03:27,940.940 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-27 07:03:31,025.025 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:03:31,026.026 INFO    ] Checking for system updates...
[2026-06-27 07:03:31,047.047 INFO    ] 200
[2026-06-27 07:03:31,048.048 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:03:31,081.081 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:03:31,082.082 INFO    ] No update needed
[2026-06-27 07:03:31,084.084 INFO    ] Checking for camera pi updates...
[2026-06-27 07:03:31,106.106 INFO    ] 200
[2026-06-27 07:03:31,110.110 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:03:31,133.133 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:03:31,182.182 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:03:31,184.184 INFO    ] No camera update needed
[2026-06-27 07:03:31,187.187 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:03:31,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:03:31,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:03:31,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:03:33,234.234 INFO    ] ================================================
[2026-06-27 07:03:33,250.250 INFO    ] Launching Daemon at Sat Jun 27 07:03:33 IST 2026
[2026-06-27 07:03:33,261.261 INFO    ] ================================================
[2026-06-27 07:03:33,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:03:33
[2026-06-27 07:03:33,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:03:34,047.047 INFO    ] Initializing speech engine...
[2026-06-27 07:03:34,060.060 INFO    ] 2026-06-27 07:03:34
[2026-06-27 07:03:34,276.276 INFO    ] 2026-06-27 07:03:34
[2026-06-27 07:03:34,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:03:34,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:03:34,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:03:34,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:03:34,713.713 INFO    ] time= 27/06/2026 07:03:34
[2026-06-27 07:03:34,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:03:34,754.754 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:03:34,856.856 INFO    ] No existing commands found in stream
[2026-06-27 07:03:39,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:03:39,868.868 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-27 07:03:43,518.518 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 07:03:43,520.520 INFO    ] Checking for system updates...
[2026-06-27 07:03:43,541.541 INFO    ] 200
[2026-06-27 07:03:43,542.542 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:03:43,573.573 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:03:43,574.574 INFO    ] No update needed
[2026-06-27 07:03:43,576.576 INFO    ] Checking for camera pi updates...
[2026-06-27 07:03:43,596.596 INFO    ] 200
[2026-06-27 07:03:43,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:03:43,622.622 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:03:43,661.661 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:03:43,662.662 INFO    ] No camera update needed
[2026-06-27 07:03:43,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:03:43,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:03:43,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:03:43,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:03:45,710.710 INFO    ] ================================================
[2026-06-27 07:03:45,726.726 INFO    ] Launching Daemon at Sat Jun 27 07:03:45 IST 2026
[2026-06-27 07:03:45,737.737 INFO    ] ================================================
[2026-06-27 07:03:46,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:03:46
[2026-06-27 07:03:46,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:03:46,534.534 INFO    ] Initializing speech engine...
[2026-06-27 07:03:46,549.549 INFO    ] 2026-06-27 07:03:46
[2026-06-27 07:03:46,768.768 INFO    ] 2026-06-27 07:03:46
[2026-06-27 07:03:46,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:03:46,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:03:46,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:03:47,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:03:47,211.211 INFO    ] time= 27/06/2026 07:03:47
[2026-06-27 07:03:47,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:03:47,251.251 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:03:47,321.321 INFO    ] No existing commands found in stream
[2026-06-27 07:03:52,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:03:52,334.334 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-27 07:03:56,478.478 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:03:56,479.479 INFO    ] Checking for system updates...
[2026-06-27 07:03:56,500.500 INFO    ] 200
[2026-06-27 07:03:56,502.502 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:03:56,533.533 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:03:56,534.534 INFO    ] No update needed
[2026-06-27 07:03:56,536.536 INFO    ] Checking for camera pi updates...
[2026-06-27 07:03:56,556.556 INFO    ] 200
[2026-06-27 07:03:56,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:03:56,583.583 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:03:56,722.722 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:03:56,728.728 INFO    ] No camera update needed
[2026-06-27 07:03:56,729.729 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:03:56,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:03:56,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:03:56,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:03:58,776.776 INFO    ] ================================================
[2026-06-27 07:03:58,791.791 INFO    ] Launching Daemon at Sat Jun 27 07:03:58 IST 2026
[2026-06-27 07:03:58,802.802 INFO    ] ================================================
[2026-06-27 07:03:59,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:03:59
[2026-06-27 07:03:59,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:03:59,610.610 INFO    ] Initializing speech engine...
[2026-06-27 07:03:59,620.620 INFO    ] 2026-06-27 07:03:59
[2026-06-27 07:03:59,825.825 INFO    ] 2026-06-27 07:03:59
[2026-06-27 07:03:59,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:04:00,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:04:00,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:04:00,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:04:00,267.267 INFO    ] time= 27/06/2026 07:04:00
[2026-06-27 07:04:00,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:04:00,275.275 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:04:00,340.340 INFO    ] No existing commands found in stream
[2026-06-27 07:04:05,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:04:05,349.349 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-27 07:04:09,244.244 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 07:04:09,246.246 INFO    ] Checking for system updates...
[2026-06-27 07:04:09,267.267 INFO    ] 200
[2026-06-27 07:04:09,268.268 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:04:09,303.303 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:04:09,305.305 INFO    ] No update needed
[2026-06-27 07:04:09,306.306 INFO    ] Checking for camera pi updates...
[2026-06-27 07:04:09,326.326 INFO    ] 200
[2026-06-27 07:04:09,327.327 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:04:09,350.350 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:04:09,387.387 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:04:09,388.388 INFO    ] No camera update needed
[2026-06-27 07:04:09,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:04:09,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:04:09,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:04:09,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:04:11,435.435 INFO    ] ================================================
[2026-06-27 07:04:11,450.450 INFO    ] Launching Daemon at Sat Jun 27 07:04:11 IST 2026
[2026-06-27 07:04:11,461.461 INFO    ] ================================================
[2026-06-27 07:04:11,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:04:11
[2026-06-27 07:04:12,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:04:12,261.261 INFO    ] Initializing speech engine...
[2026-06-27 07:04:12,268.268 INFO    ] 2026-06-27 07:04:12
[2026-06-27 07:04:12,468.468 INFO    ] 2026-06-27 07:04:12
[2026-06-27 07:04:12,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:04:12,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:04:12,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:04:12,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:04:12,893.893 INFO    ] time= 27/06/2026 07:04:12
[2026-06-27 07:04:12,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:04:12,924.924 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:04:12,993.993 INFO    ] No existing commands found in stream
[2026-06-27 07:04:18,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:04:18,007.007 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-27 07:04:19,619.619 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 07:04:19,620.620 INFO    ] Checking for system updates...
[2026-06-27 07:04:19,641.641 INFO    ] 200
[2026-06-27 07:04:19,643.643 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:04:19,674.674 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:04:19,675.675 INFO    ] No update needed
[2026-06-27 07:04:19,677.677 INFO    ] Checking for camera pi updates...
[2026-06-27 07:04:19,696.696 INFO    ] 200
[2026-06-27 07:04:19,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:04:19,721.721 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:04:19,754.754 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:04:19,756.756 INFO    ] No camera update needed
[2026-06-27 07:04:19,757.757 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:04:19,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:04:19,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:04:19,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:04:21,804.804 INFO    ] ================================================
[2026-06-27 07:04:21,820.820 INFO    ] Launching Daemon at Sat Jun 27 07:04:21 IST 2026
[2026-06-27 07:04:21,832.832 INFO    ] ================================================
[2026-06-27 07:04:22,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:04:22
[2026-06-27 07:04:22,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:04:22,616.616 INFO    ] Initializing speech engine...
[2026-06-27 07:04:22,621.621 INFO    ] 2026-06-27 07:04:22
[2026-06-27 07:04:22,828.828 INFO    ] 2026-06-27 07:04:22
[2026-06-27 07:04:22,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:04:23,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:04:23,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:04:23,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:04:23,253.253 INFO    ] time= 27/06/2026 07:04:23
[2026-06-27 07:04:23,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:04:23,281.281 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:04:23,349.349 INFO    ] No existing commands found in stream
[2026-06-27 07:04:28,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:04:28,361.361 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-27 07:04:32,738.738 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:04:32,740.740 INFO    ] Checking for system updates...
[2026-06-27 07:04:32,761.761 INFO    ] 200
[2026-06-27 07:04:32,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:04:32,796.796 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:04:32,797.797 INFO    ] No update needed
[2026-06-27 07:04:32,798.798 INFO    ] Checking for camera pi updates...
[2026-06-27 07:04:32,817.817 INFO    ] 200
[2026-06-27 07:04:32,819.819 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:04:32,843.843 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:04:32,871.871 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:04:32,872.872 INFO    ] No camera update needed
[2026-06-27 07:04:32,874.874 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:04:32,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:04:32,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:04:32,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:04:34,919.919 INFO    ] ================================================
[2026-06-27 07:04:34,935.935 INFO    ] Launching Daemon at Sat Jun 27 07:04:34 IST 2026
[2026-06-27 07:04:34,947.947 INFO    ] ================================================
[2026-06-27 07:04:35,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:04:35
[2026-06-27 07:04:35,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:04:35,717.717 INFO    ] Initializing speech engine...
[2026-06-27 07:04:35,725.725 INFO    ] 2026-06-27 07:04:35
[2026-06-27 07:04:35,937.937 INFO    ] 2026-06-27 07:04:35
[2026-06-27 07:04:35,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:04:36,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:04:36,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:04:36,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:04:36,350.350 INFO    ] time= 27/06/2026 07:04:36
[2026-06-27 07:04:36,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:04:36,388.388 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:04:36,456.456 INFO    ] No existing commands found in stream
[2026-06-27 07:04:41,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:04:41,468.468 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-27 07:04:45,042.042 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:04:45,043.043 INFO    ] Checking for system updates...
[2026-06-27 07:04:45,065.065 INFO    ] 200
[2026-06-27 07:04:45,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:04:45,096.096 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:04:45,098.098 INFO    ] No update needed
[2026-06-27 07:04:45,099.099 INFO    ] Checking for camera pi updates...
[2026-06-27 07:04:45,118.118 INFO    ] 200
[2026-06-27 07:04:45,120.120 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:04:45,143.143 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:04:45,189.189 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:04:45,190.190 INFO    ] No camera update needed
[2026-06-27 07:04:45,192.192 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:04:45,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:04:45,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:04:45,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:04:47,238.238 INFO    ] ================================================
[2026-06-27 07:04:47,254.254 INFO    ] Launching Daemon at Sat Jun 27 07:04:47 IST 2026
[2026-06-27 07:04:47,270.270 INFO    ] ================================================
[2026-06-27 07:04:47,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:04:47
[2026-06-27 07:04:47,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:04:48,056.056 INFO    ] Initializing speech engine...
[2026-06-27 07:04:48,064.064 INFO    ] 2026-06-27 07:04:48
[2026-06-27 07:04:48,279.279 INFO    ] 2026-06-27 07:04:48
[2026-06-27 07:04:48,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:04:48,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:04:48,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:04:48,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:04:48,695.695 INFO    ] time= 27/06/2026 07:04:48
[2026-06-27 07:04:48,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:04:48,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:04:48,799.799 INFO    ] No existing commands found in stream
[2026-06-27 07:04:53,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:04:53,816.816 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-27 07:04:54,670.670 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:04:54,671.671 INFO    ] Checking for system updates...
[2026-06-27 07:04:54,693.693 INFO    ] 200
[2026-06-27 07:04:54,694.694 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:04:54,729.729 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:04:54,731.731 INFO    ] No update needed
[2026-06-27 07:04:54,732.732 INFO    ] Checking for camera pi updates...
[2026-06-27 07:04:54,751.751 INFO    ] 200
[2026-06-27 07:04:54,753.753 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:04:54,777.777 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:04:54,801.801 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:04:54,802.802 INFO    ] No camera update needed
[2026-06-27 07:04:54,804.804 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:04:54,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:04:54,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:04:54,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:04:56,851.851 INFO    ] ================================================
[2026-06-27 07:04:56,867.867 INFO    ] Launching Daemon at Sat Jun 27 07:04:56 IST 2026
[2026-06-27 07:04:56,877.877 INFO    ] ================================================
[2026-06-27 07:04:57,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:04:57
[2026-06-27 07:04:57,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:04:57,673.673 INFO    ] Initializing speech engine...
[2026-06-27 07:04:57,684.684 INFO    ] 2026-06-27 07:04:57
[2026-06-27 07:04:57,888.888 INFO    ] 2026-06-27 07:04:57
[2026-06-27 07:04:57,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:04:58,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:04:58,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:04:58,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:04:58,327.327 INFO    ] time= 27/06/2026 07:04:58
[2026-06-27 07:04:58,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:04:58,334.334 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:04:58,401.401 INFO    ] No existing commands found in stream
[2026-06-27 07:05:03,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:05:03,409.409 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-27 07:05:06,123.123 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:05:06,124.124 INFO    ] Checking for system updates...
[2026-06-27 07:05:06,146.146 INFO    ] 200
[2026-06-27 07:05:06,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:05:06,178.178 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:05:06,179.179 INFO    ] No update needed
[2026-06-27 07:05:06,180.180 INFO    ] Checking for camera pi updates...
[2026-06-27 07:05:06,200.200 INFO    ] 200
[2026-06-27 07:05:06,201.201 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:05:06,225.225 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:05:06,262.262 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:05:06,263.263 INFO    ] No camera update needed
[2026-06-27 07:05:06,264.264 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:05:06,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:05:06,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:05:06,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:05:08,309.309 INFO    ] ================================================
[2026-06-27 07:05:08,325.325 INFO    ] Launching Daemon at Sat Jun 27 07:05:08 IST 2026
[2026-06-27 07:05:08,336.336 INFO    ] ================================================
[2026-06-27 07:05:08,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:05:08
[2026-06-27 07:05:08,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:05:09,112.112 INFO    ] Initializing speech engine...
[2026-06-27 07:05:09,116.116 INFO    ] 2026-06-27 07:05:09
[2026-06-27 07:05:09,319.319 INFO    ] 2026-06-27 07:05:09
[2026-06-27 07:05:09,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:05:09,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:05:09,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:05:09,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:05:09,754.754 INFO    ] time= 27/06/2026 07:05:09
[2026-06-27 07:05:09,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:05:09,765.765 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:05:09,832.832 INFO    ] No existing commands found in stream
[2026-06-27 07:05:14,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:05:14,849.849 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-27 07:05:17,118.118 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 07:05:17,119.119 INFO    ] Checking for system updates...
[2026-06-27 07:05:17,140.140 INFO    ] 200
[2026-06-27 07:05:17,142.142 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:05:17,177.177 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:05:17,178.178 INFO    ] No update needed
[2026-06-27 07:05:17,180.180 INFO    ] Checking for camera pi updates...
[2026-06-27 07:05:17,200.200 INFO    ] 200
[2026-06-27 07:05:17,202.202 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:05:17,226.226 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:05:17,262.262 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:05:17,263.263 INFO    ] No camera update needed
[2026-06-27 07:05:17,265.265 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:05:17,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:05:17,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:05:17,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:05:19,310.310 INFO    ] ================================================
[2026-06-27 07:05:19,325.325 INFO    ] Launching Daemon at Sat Jun 27 07:05:19 IST 2026
[2026-06-27 07:05:19,336.336 INFO    ] ================================================
[2026-06-27 07:05:19,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:05:19
[2026-06-27 07:05:20,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:05:20,226.226 INFO    ] Initializing speech engine...
[2026-06-27 07:05:20,236.236 INFO    ] 2026-06-27 07:05:20
[2026-06-27 07:05:20,451.451 INFO    ] 2026-06-27 07:05:20
[2026-06-27 07:05:20,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:05:20,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:05:20,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:05:20,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:05:20,872.872 INFO    ] time= 27/06/2026 07:05:20
[2026-06-27 07:05:20,896.896 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:05:20,902.902 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:05:20,971.971 INFO    ] No existing commands found in stream
[2026-06-27 07:05:25,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:05:25,988.988 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-27 07:05:28,380.380 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 07:05:28,381.381 INFO    ] Checking for system updates...
[2026-06-27 07:05:28,402.402 INFO    ] 200
[2026-06-27 07:05:28,404.404 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:05:28,434.434 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:05:28,435.435 INFO    ] No update needed
[2026-06-27 07:05:28,437.437 INFO    ] Checking for camera pi updates...
[2026-06-27 07:05:28,456.456 INFO    ] 200
[2026-06-27 07:05:28,457.457 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:05:28,484.484 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:05:28,524.524 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:05:28,525.525 INFO    ] No camera update needed
[2026-06-27 07:05:28,527.527 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:05:28,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:05:28,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:05:28,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:05:30,576.576 INFO    ] ================================================
[2026-06-27 07:05:30,595.595 INFO    ] Launching Daemon at Sat Jun 27 07:05:30 IST 2026
[2026-06-27 07:05:30,607.607 INFO    ] ================================================
[2026-06-27 07:05:30,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:05:30
[2026-06-27 07:05:31,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:05:31,401.401 INFO    ] Initializing speech engine...
[2026-06-27 07:05:31,404.404 INFO    ] 2026-06-27 07:05:31
[2026-06-27 07:05:31,610.610 INFO    ] 2026-06-27 07:05:31
[2026-06-27 07:05:31,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:05:31,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:05:31,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:05:32,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:05:32,096.096 INFO    ] time= 27/06/2026 07:05:32
[2026-06-27 07:05:32,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:05:32,136.136 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:05:32,209.209 INFO    ] No existing commands found in stream
[2026-06-27 07:05:37,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:05:37,220.220 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-27 07:05:40,289.289 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 07:05:40,291.291 INFO    ] Checking for system updates...
[2026-06-27 07:05:40,312.312 INFO    ] 200
[2026-06-27 07:05:40,313.313 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:05:40,346.346 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:05:40,347.347 INFO    ] No update needed
[2026-06-27 07:05:40,349.349 INFO    ] Checking for camera pi updates...
[2026-06-27 07:05:40,368.368 INFO    ] 200
[2026-06-27 07:05:40,370.370 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:05:40,394.394 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:05:40,439.439 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:05:40,441.441 INFO    ] No camera update needed
[2026-06-27 07:05:40,442.442 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:05:40,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:05:40,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:05:40,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:05:42,486.486 INFO    ] ================================================
[2026-06-27 07:05:42,502.502 INFO    ] Launching Daemon at Sat Jun 27 07:05:42 IST 2026
[2026-06-27 07:05:42,513.513 INFO    ] ================================================
[2026-06-27 07:05:42,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:05:42
[2026-06-27 07:05:43,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:05:43,378.378 INFO    ] Initializing speech engine...
[2026-06-27 07:05:43,389.389 INFO    ] 2026-06-27 07:05:43
[2026-06-27 07:05:43,600.600 INFO    ] 2026-06-27 07:05:43
[2026-06-27 07:05:43,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:05:44,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:05:44,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:05:44,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:05:44,238.238 INFO    ] time= 27/06/2026 07:05:44
[2026-06-27 07:05:44,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:05:44,247.247 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:05:44,302.302 INFO    ] No existing commands found in stream
[2026-06-27 07:05:49,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:05:49,315.315 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-27 07:05:52,949.949 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:05:52,950.950 INFO    ] Checking for system updates...
[2026-06-27 07:05:52,974.974 INFO    ] 200
[2026-06-27 07:05:52,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:05:53,011.011 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:05:53,013.013 INFO    ] No update needed
[2026-06-27 07:05:53,014.014 INFO    ] Checking for camera pi updates...
[2026-06-27 07:05:53,038.038 INFO    ] 200
[2026-06-27 07:05:53,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:05:53,067.067 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:05:53,114.114 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:05:53,116.116 INFO    ] No camera update needed
[2026-06-27 07:05:53,117.117 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:05:53,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:05:53,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:05:53,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:05:55,163.163 INFO    ] ================================================
[2026-06-27 07:05:55,178.178 INFO    ] Launching Daemon at Sat Jun 27 07:05:55 IST 2026
[2026-06-27 07:05:55,189.189 INFO    ] ================================================
[2026-06-27 07:05:55,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:05:55
[2026-06-27 07:05:55,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:05:55,997.997 INFO    ] Initializing speech engine...
[2026-06-27 07:05:56,002.002 INFO    ] 2026-06-27 07:05:55
[2026-06-27 07:05:56,209.209 INFO    ] 2026-06-27 07:05:56
[2026-06-27 07:05:56,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:05:56,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:05:56,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:05:56,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:05:56,648.648 INFO    ] time= 27/06/2026 07:05:56
[2026-06-27 07:05:56,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:05:56,655.655 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:05:56,722.722 INFO    ] No existing commands found in stream
[2026-06-27 07:06:01,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:06:01,734.734 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-27 07:06:03,053.053 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:06:03,055.055 INFO    ] Checking for system updates...
[2026-06-27 07:06:03,076.076 INFO    ] 200
[2026-06-27 07:06:03,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:06:03,108.108 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:06:03,109.109 INFO    ] No update needed
[2026-06-27 07:06:03,110.110 INFO    ] Checking for camera pi updates...
[2026-06-27 07:06:03,135.135 INFO    ] 200
[2026-06-27 07:06:03,138.138 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:06:03,184.184 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:06:03,236.236 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:06:03,238.238 INFO    ] No camera update needed
[2026-06-27 07:06:03,241.241 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:06:03,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:06:03,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:06:03,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:06:05,294.294 INFO    ] ================================================
[2026-06-27 07:06:05,309.309 INFO    ] Launching Daemon at Sat Jun 27 07:06:05 IST 2026
[2026-06-27 07:06:05,320.320 INFO    ] ================================================
[2026-06-27 07:06:05,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:06:05
[2026-06-27 07:06:06,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:06:06,155.155 INFO    ] Initializing speech engine...
[2026-06-27 07:06:06,164.164 INFO    ] 2026-06-27 07:06:06
[2026-06-27 07:06:06,402.402 INFO    ] 2026-06-27 07:06:06
[2026-06-27 07:06:06,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:06:06,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:06:06,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:06:06,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:06:06,822.822 INFO    ] time= 27/06/2026 07:06:06
[2026-06-27 07:06:06,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:06:06,850.850 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:06:06,915.915 INFO    ] No existing commands found in stream
[2026-06-27 07:06:11,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:06:11,928.928 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-27 07:06:15,288.288 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:06:15,289.289 INFO    ] Checking for system updates...
[2026-06-27 07:06:15,312.312 INFO    ] 200
[2026-06-27 07:06:15,313.313 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:06:15,347.347 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:06:15,348.348 INFO    ] No update needed
[2026-06-27 07:06:15,350.350 INFO    ] Checking for camera pi updates...
[2026-06-27 07:06:15,369.369 INFO    ] 200
[2026-06-27 07:06:15,370.370 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:06:15,394.394 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:06:15,436.436 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:06:15,438.438 INFO    ] No camera update needed
[2026-06-27 07:06:15,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:06:15,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:06:15,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:06:15,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:06:17,485.485 INFO    ] ================================================
[2026-06-27 07:06:17,507.507 INFO    ] Launching Daemon at Sat Jun 27 07:06:17 IST 2026
[2026-06-27 07:06:17,518.518 INFO    ] ================================================
[2026-06-27 07:06:17,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:06:17
[2026-06-27 07:06:18,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:06:18,324.324 INFO    ] Initializing speech engine...
[2026-06-27 07:06:18,329.329 INFO    ] 2026-06-27 07:06:18
[2026-06-27 07:06:18,536.536 INFO    ] 2026-06-27 07:06:18
[2026-06-27 07:06:18,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:06:18,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:06:18,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:06:18,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:06:18,962.962 INFO    ] time= 27/06/2026 07:06:18
[2026-06-27 07:06:18,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:06:18,990.990 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:06:19,082.082 INFO    ] No existing commands found in stream
[2026-06-27 07:06:24,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:06:24,089.089 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-27 07:06:26,418.418 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 07:06:26,420.420 INFO    ] Checking for system updates...
[2026-06-27 07:06:26,442.442 INFO    ] 200
[2026-06-27 07:06:26,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:06:26,478.478 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:06:26,479.479 INFO    ] No update needed
[2026-06-27 07:06:26,481.481 INFO    ] Checking for camera pi updates...
[2026-06-27 07:06:26,503.503 INFO    ] 200
[2026-06-27 07:06:26,505.505 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:06:26,528.528 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:06:26,562.562 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:06:26,564.564 INFO    ] No camera update needed
[2026-06-27 07:06:26,565.565 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:06:26,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:06:26,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:06:26,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:06:28,612.612 INFO    ] ================================================
[2026-06-27 07:06:28,628.628 INFO    ] Launching Daemon at Sat Jun 27 07:06:28 IST 2026
[2026-06-27 07:06:28,639.639 INFO    ] ================================================
[2026-06-27 07:06:29,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:06:29
[2026-06-27 07:06:29,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:06:29,472.472 INFO    ] Initializing speech engine...
[2026-06-27 07:06:29,482.482 INFO    ] 2026-06-27 07:06:29
[2026-06-27 07:06:29,689.689 INFO    ] 2026-06-27 07:06:29
[2026-06-27 07:06:29,719.719 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:06:29,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:06:29,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:06:30,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:06:30,095.095 INFO    ] time= 27/06/2026 07:06:30
[2026-06-27 07:06:30,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:06:30,138.138 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:06:30,207.207 INFO    ] No existing commands found in stream
[2026-06-27 07:06:35,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:06:35,219.219 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-27 07:06:36,329.329 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:06:36,330.330 INFO    ] Checking for system updates...
[2026-06-27 07:06:36,355.355 INFO    ] 200
[2026-06-27 07:06:36,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:06:36,390.390 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:06:36,391.391 INFO    ] No update needed
[2026-06-27 07:06:36,393.393 INFO    ] Checking for camera pi updates...
[2026-06-27 07:06:36,413.413 INFO    ] 200
[2026-06-27 07:06:36,415.415 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:06:36,440.440 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:06:36,481.481 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:06:36,482.482 INFO    ] No camera update needed
[2026-06-27 07:06:36,484.484 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:06:36,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:06:36,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:06:36,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:06:38,530.530 INFO    ] ================================================
[2026-06-27 07:06:38,545.545 INFO    ] Launching Daemon at Sat Jun 27 07:06:38 IST 2026
[2026-06-27 07:06:38,556.556 INFO    ] ================================================
[2026-06-27 07:06:38,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:06:38
[2026-06-27 07:06:39,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:06:39,367.367 INFO    ] Initializing speech engine...
[2026-06-27 07:06:39,371.371 INFO    ] 2026-06-27 07:06:39
[2026-06-27 07:06:39,590.590 INFO    ] 2026-06-27 07:06:39
[2026-06-27 07:06:39,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:06:39,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:06:39,814.814 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:06:39,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:06:40,010.010 INFO    ] time= 27/06/2026 07:06:39
[2026-06-27 07:06:40,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:06:40,045.045 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:06:40,137.137 INFO    ] No existing commands found in stream
[2026-06-27 07:06:45,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:06:45,149.149 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-27 07:06:49,174.174 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 07:06:49,177.177 INFO    ] Checking for system updates...
[2026-06-27 07:06:49,218.218 INFO    ] 200
[2026-06-27 07:06:49,220.220 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:06:49,255.255 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:06:49,257.257 INFO    ] No update needed
[2026-06-27 07:06:49,258.258 INFO    ] Checking for camera pi updates...
[2026-06-27 07:06:49,280.280 INFO    ] 200
[2026-06-27 07:06:49,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:06:49,311.311 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:06:49,358.358 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:06:49,360.360 INFO    ] No camera update needed
[2026-06-27 07:06:49,361.361 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:06:49,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:06:49,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:06:49,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:06:51,402.402 INFO    ] ================================================
[2026-06-27 07:06:51,411.411 INFO    ] Launching Daemon at Sat Jun 27 07:06:51 IST 2026
[2026-06-27 07:06:51,417.417 INFO    ] ================================================
[2026-06-27 07:06:51,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:06:51
[2026-06-27 07:06:52,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:06:52,202.202 INFO    ] Initializing speech engine...
[2026-06-27 07:06:52,207.207 INFO    ] 2026-06-27 07:06:52
[2026-06-27 07:06:52,411.411 INFO    ] 2026-06-27 07:06:52
[2026-06-27 07:06:52,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:06:52,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:06:52,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:06:52,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:06:52,831.831 INFO    ] time= 27/06/2026 07:06:52
[2026-06-27 07:06:52,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:06:52,859.859 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:06:52,924.924 INFO    ] No existing commands found in stream
[2026-06-27 07:06:57,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:06:57,938.938 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-27 07:07:00,040.040 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 07:07:00,041.041 INFO    ] Checking for system updates...
[2026-06-27 07:07:00,063.063 INFO    ] 200
[2026-06-27 07:07:00,065.065 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:07:00,095.095 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:07:00,096.096 INFO    ] No update needed
[2026-06-27 07:07:00,098.098 INFO    ] Checking for camera pi updates...
[2026-06-27 07:07:00,117.117 INFO    ] 200
[2026-06-27 07:07:00,118.118 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:07:00,144.144 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:07:00,185.185 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:07:00,186.186 INFO    ] No camera update needed
[2026-06-27 07:07:00,187.187 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:07:00,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:07:00,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:07:00,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:07:02,229.229 INFO    ] ================================================
[2026-06-27 07:07:02,244.244 INFO    ] Launching Daemon at Sat Jun 27 07:07:02 IST 2026
[2026-06-27 07:07:02,255.255 INFO    ] ================================================
[2026-06-27 07:07:02,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:07:02
[2026-06-27 07:07:02,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:07:03,130.130 INFO    ] Initializing speech engine...
[2026-06-27 07:07:03,143.143 INFO    ] 2026-06-27 07:07:03
[2026-06-27 07:07:03,352.352 INFO    ] 2026-06-27 07:07:03
[2026-06-27 07:07:03,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:07:03,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:07:03,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:07:03,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:07:03,763.763 INFO    ] time= 27/06/2026 07:07:03
[2026-06-27 07:07:03,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:07:03,804.804 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:07:03,874.874 INFO    ] No existing commands found in stream
[2026-06-27 07:07:08,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:07:08,888.888 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-27 07:07:12,256.256 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 07:07:12,258.258 INFO    ] Checking for system updates...
[2026-06-27 07:07:12,280.280 INFO    ] 200
[2026-06-27 07:07:12,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:07:12,315.315 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:07:12,316.316 INFO    ] No update needed
[2026-06-27 07:07:12,318.318 INFO    ] Checking for camera pi updates...
[2026-06-27 07:07:12,338.338 INFO    ] 200
[2026-06-27 07:07:12,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:07:12,363.363 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:07:12,398.398 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:07:12,399.399 INFO    ] No camera update needed
[2026-06-27 07:07:12,401.401 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:07:12,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:07:12,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:07:12,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:07:14,448.448 INFO    ] ================================================
[2026-06-27 07:07:14,464.464 INFO    ] Launching Daemon at Sat Jun 27 07:07:14 IST 2026
[2026-06-27 07:07:14,475.475 INFO    ] ================================================
[2026-06-27 07:07:14,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:07:14
[2026-06-27 07:07:15,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:07:15,269.269 INFO    ] Initializing speech engine...
[2026-06-27 07:07:15,273.273 INFO    ] 2026-06-27 07:07:15
[2026-06-27 07:07:15,483.483 INFO    ] 2026-06-27 07:07:15
[2026-06-27 07:07:15,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:07:15,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:07:15,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:07:15,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:07:15,890.890 INFO    ] time= 27/06/2026 07:07:15
[2026-06-27 07:07:15,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:07:15,977.977 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:07:16,076.076 INFO    ] No existing commands found in stream
[2026-06-27 07:07:21,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:07:21,089.089 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-27 07:07:22,949.949 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 07:07:22,951.951 INFO    ] Checking for system updates...
[2026-06-27 07:07:22,972.972 INFO    ] 200
[2026-06-27 07:07:22,973.973 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:07:23,004.004 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:07:23,006.006 INFO    ] No update needed
[2026-06-27 07:07:23,007.007 INFO    ] Checking for camera pi updates...
[2026-06-27 07:07:23,029.029 INFO    ] 200
[2026-06-27 07:07:23,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:07:23,054.054 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:07:23,089.089 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:07:23,090.090 INFO    ] No camera update needed
[2026-06-27 07:07:23,091.091 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:07:23,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:07:23,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:07:23,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:07:25,137.137 INFO    ] ================================================
[2026-06-27 07:07:25,152.152 INFO    ] Launching Daemon at Sat Jun 27 07:07:25 IST 2026
[2026-06-27 07:07:25,164.164 INFO    ] ================================================
[2026-06-27 07:07:25,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:07:25
[2026-06-27 07:07:25,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:07:26,042.042 INFO    ] Initializing speech engine...
[2026-06-27 07:07:26,048.048 INFO    ] 2026-06-27 07:07:26
[2026-06-27 07:07:26,263.263 INFO    ] 2026-06-27 07:07:26
[2026-06-27 07:07:26,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:07:26,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:07:26,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:07:26,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:07:26,694.694 INFO    ] time= 27/06/2026 07:07:26
[2026-06-27 07:07:26,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:07:26,726.726 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:07:26,793.793 INFO    ] No existing commands found in stream
[2026-06-27 07:07:31,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:07:31,808.808 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-27 07:07:35,579.579 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 07:07:35,581.581 INFO    ] Checking for system updates...
[2026-06-27 07:07:35,604.604 INFO    ] 200
[2026-06-27 07:07:35,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:07:35,638.638 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:07:35,639.639 INFO    ] No update needed
[2026-06-27 07:07:35,641.641 INFO    ] Checking for camera pi updates...
[2026-06-27 07:07:35,660.660 INFO    ] 200
[2026-06-27 07:07:35,662.662 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:07:35,691.691 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:07:35,733.733 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:07:35,734.734 INFO    ] No camera update needed
[2026-06-27 07:07:35,736.736 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:07:35,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:07:35,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:07:35,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:07:37,782.782 INFO    ] ================================================
[2026-06-27 07:07:37,797.797 INFO    ] Launching Daemon at Sat Jun 27 07:07:37 IST 2026
[2026-06-27 07:07:37,808.808 INFO    ] ================================================
[2026-06-27 07:07:38,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:07:38
[2026-06-27 07:07:38,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:07:38,602.602 INFO    ] Initializing speech engine...
[2026-06-27 07:07:38,608.608 INFO    ] 2026-06-27 07:07:38
[2026-06-27 07:07:38,812.812 INFO    ] 2026-06-27 07:07:38
[2026-06-27 07:07:38,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:07:38,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:07:39,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:07:39,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:07:39,229.229 INFO    ] time= 27/06/2026 07:07:39
[2026-06-27 07:07:39,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:07:39,259.259 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:07:39,324.324 INFO    ] No existing commands found in stream
[2026-06-27 07:07:44,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:07:44,337.337 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-27 07:07:46,501.501 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 07:07:46,503.503 INFO    ] Checking for system updates...
[2026-06-27 07:07:46,526.526 INFO    ] 200
[2026-06-27 07:07:46,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:07:46,561.561 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:07:46,563.563 INFO    ] No update needed
[2026-06-27 07:07:46,564.564 INFO    ] Checking for camera pi updates...
[2026-06-27 07:07:46,584.584 INFO    ] 200
[2026-06-27 07:07:46,585.585 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:07:46,611.611 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:07:46,661.661 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:07:46,663.663 INFO    ] No camera update needed
[2026-06-27 07:07:46,665.665 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:07:46,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:07:46,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:07:46,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:07:48,710.710 INFO    ] ================================================
[2026-06-27 07:07:48,726.726 INFO    ] Launching Daemon at Sat Jun 27 07:07:48 IST 2026
[2026-06-27 07:07:48,737.737 INFO    ] ================================================
[2026-06-27 07:07:49,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:07:49
[2026-06-27 07:07:49,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:07:49,598.598 INFO    ] Initializing speech engine...
[2026-06-27 07:07:49,604.604 INFO    ] 2026-06-27 07:07:49
[2026-06-27 07:07:49,800.800 INFO    ] 2026-06-27 07:07:49
[2026-06-27 07:07:49,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:07:50,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:07:50,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:07:50,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:07:50,188.188 INFO    ] time= 27/06/2026 07:07:50
[2026-06-27 07:07:50,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:07:50,241.241 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:07:50,332.332 INFO    ] No existing commands found in stream
[2026-06-27 07:07:55,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:07:55,349.349 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-27 07:07:57,904.904 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:07:57,906.906 INFO    ] Checking for system updates...
[2026-06-27 07:07:57,926.926 INFO    ] 200
[2026-06-27 07:07:57,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:07:57,958.958 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:07:57,960.960 INFO    ] No update needed
[2026-06-27 07:07:57,961.961 INFO    ] Checking for camera pi updates...
[2026-06-27 07:07:57,982.982 INFO    ] 200
[2026-06-27 07:07:57,984.984 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:07:58,009.009 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:07:58,058.058 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:07:58,060.060 INFO    ] No camera update needed
[2026-06-27 07:07:58,061.061 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:07:58,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:07:58,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:07:58,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:08:00,107.107 INFO    ] ================================================
[2026-06-27 07:08:00,123.123 INFO    ] Launching Daemon at Sat Jun 27 07:08:00 IST 2026
[2026-06-27 07:08:00,134.134 INFO    ] ================================================
[2026-06-27 07:08:00,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:08:00
[2026-06-27 07:08:00,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:08:00,948.948 INFO    ] Initializing speech engine...
[2026-06-27 07:08:00,959.959 INFO    ] 2026-06-27 07:08:00
[2026-06-27 07:08:01,164.164 INFO    ] 2026-06-27 07:08:01
[2026-06-27 07:08:01,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:08:01,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:08:01,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:08:01,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:08:01,549.549 INFO    ] time= 27/06/2026 07:08:01
[2026-06-27 07:08:01,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:08:01,582.582 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:08:01,697.697 INFO    ] No existing commands found in stream
[2026-06-27 07:08:06,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:08:06,727.727 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-27 07:08:07,349.349 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:08:07,351.351 INFO    ] Checking for system updates...
[2026-06-27 07:08:07,376.376 INFO    ] 200
[2026-06-27 07:08:07,378.378 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-27 07:08:07,380.380 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-27 07:08:07,381.381 INFO    ] Checking for camera pi updates...
[2026-06-27 07:08:07,407.407 INFO    ] 200
[2026-06-27 07:08:07,408.408 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-27 07:08:07,410.410 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-27 07:08:07,411.411 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:08:07,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:08:07,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:08:07,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:08:09,452.452 INFO    ] ================================================
[2026-06-27 07:08:09,467.467 INFO    ] Launching Daemon at Sat Jun 27 07:08:09 IST 2026
[2026-06-27 07:08:09,479.479 INFO    ] ================================================
[2026-06-27 07:08:09,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:08:09
[2026-06-27 07:08:10,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:08:10,285.285 INFO    ] Initializing speech engine...
[2026-06-27 07:08:10,290.290 INFO    ] 2026-06-27 07:08:10
[2026-06-27 07:08:10,506.506 INFO    ] 2026-06-27 07:08:10
[2026-06-27 07:08:10,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:08:10,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:08:10,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:08:10,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:08:10,947.947 INFO    ] time= 27/06/2026 07:08:10
[2026-06-27 07:08:10,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:08:10,955.955 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:08:11,022.022 INFO    ] No existing commands found in stream
[2026-06-27 07:08:16,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:08:16,034.034 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-27 07:08:18,869.869 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 07:08:18,871.871 INFO    ] Checking for system updates...
[2026-06-27 07:08:18,892.892 INFO    ] 200
[2026-06-27 07:08:18,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:08:18,924.924 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:08:18,926.926 INFO    ] No update needed
[2026-06-27 07:08:18,927.927 INFO    ] Checking for camera pi updates...
[2026-06-27 07:08:18,947.947 INFO    ] 200
[2026-06-27 07:08:18,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:08:18,972.972 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:08:19,126.126 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:08:19,127.127 INFO    ] No camera update needed
[2026-06-27 07:08:19,129.129 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:08:19,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:08:19,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:08:19,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:08:21,176.176 INFO    ] ================================================
[2026-06-27 07:08:21,193.193 INFO    ] Launching Daemon at Sat Jun 27 07:08:21 IST 2026
[2026-06-27 07:08:21,204.204 INFO    ] ================================================
[2026-06-27 07:08:21,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:08:21
[2026-06-27 07:08:21,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:08:22,075.075 INFO    ] Initializing speech engine...
[2026-06-27 07:08:22,081.081 INFO    ] 2026-06-27 07:08:22
[2026-06-27 07:08:22,292.292 INFO    ] 2026-06-27 07:08:22
[2026-06-27 07:08:22,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:08:22,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:08:22,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:08:22,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:08:22,714.714 INFO    ] time= 27/06/2026 07:08:22
[2026-06-27 07:08:22,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:08:22,742.742 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:08:22,809.809 INFO    ] No existing commands found in stream
[2026-06-27 07:08:27,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:08:27,827.827 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-27 07:08:28,472.472 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 07:08:28,474.474 INFO    ] Checking for system updates...
[2026-06-27 07:08:28,496.496 INFO    ] 200
[2026-06-27 07:08:28,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:08:28,531.531 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:08:28,533.533 INFO    ] No update needed
[2026-06-27 07:08:28,534.534 INFO    ] Checking for camera pi updates...
[2026-06-27 07:08:28,556.556 INFO    ] 200
[2026-06-27 07:08:28,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:08:28,586.586 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:08:28,629.629 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:08:28,630.630 INFO    ] No camera update needed
[2026-06-27 07:08:28,631.631 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:08:28,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:08:28,636.636 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:08:28,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:08:30,684.684 INFO    ] ================================================
[2026-06-27 07:08:30,700.700 INFO    ] Launching Daemon at Sat Jun 27 07:08:30 IST 2026
[2026-06-27 07:08:30,711.711 INFO    ] ================================================
[2026-06-27 07:08:31,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:08:31
[2026-06-27 07:08:31,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:08:31,563.563 INFO    ] Initializing speech engine...
[2026-06-27 07:08:31,575.575 INFO    ] 2026-06-27 07:08:31
[2026-06-27 07:08:31,798.798 INFO    ] 2026-06-27 07:08:31
[2026-06-27 07:08:31,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:08:32,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:08:32,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:08:32,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:08:32,246.246 INFO    ] time= 27/06/2026 07:08:32
[2026-06-27 07:08:32,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:08:32,276.276 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:08:32,343.343 INFO    ] No existing commands found in stream
[2026-06-27 07:08:37,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:08:37,356.356 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-27 07:08:38,161.161 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 07:08:38,163.163 INFO    ] Checking for system updates...
[2026-06-27 07:08:38,186.186 INFO    ] 200
[2026-06-27 07:08:38,187.187 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:08:38,221.221 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:08:38,222.222 INFO    ] No update needed
[2026-06-27 07:08:38,224.224 INFO    ] Checking for camera pi updates...
[2026-06-27 07:08:38,244.244 INFO    ] 200
[2026-06-27 07:08:38,246.246 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:08:38,269.269 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:08:38,313.313 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:08:38,314.314 INFO    ] No camera update needed
[2026-06-27 07:08:38,316.316 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:08:38,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:08:38,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:08:38,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:08:40,363.363 INFO    ] ================================================
[2026-06-27 07:08:40,378.378 INFO    ] Launching Daemon at Sat Jun 27 07:08:40 IST 2026
[2026-06-27 07:08:40,389.389 INFO    ] ================================================
[2026-06-27 07:08:40,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:08:40
[2026-06-27 07:08:41,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:08:41,188.188 INFO    ] Initializing speech engine...
[2026-06-27 07:08:41,196.196 INFO    ] 2026-06-27 07:08:41
[2026-06-27 07:08:41,402.402 INFO    ] 2026-06-27 07:08:41
[2026-06-27 07:08:41,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:08:41,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:08:41,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:08:41,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:08:41,832.832 INFO    ] time= 27/06/2026 07:08:41
[2026-06-27 07:08:41,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:08:41,890.890 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:08:41,966.966 INFO    ] No existing commands found in stream
[2026-06-27 07:08:46,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:08:46,980.980 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-27 07:08:52,441.441 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:08:52,443.443 INFO    ] Checking for system updates...
[2026-06-27 07:08:52,464.464 INFO    ] 200
[2026-06-27 07:08:52,465.465 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:08:52,496.496 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:08:52,497.497 INFO    ] No update needed
[2026-06-27 07:08:52,499.499 INFO    ] Checking for camera pi updates...
[2026-06-27 07:08:52,519.519 INFO    ] 200
[2026-06-27 07:08:52,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:08:52,546.546 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:08:52,581.581 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:08:52,582.582 INFO    ] No camera update needed
[2026-06-27 07:08:52,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:08:52,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:08:52,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:08:52,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:08:54,631.631 INFO    ] ================================================
[2026-06-27 07:08:54,647.647 INFO    ] Launching Daemon at Sat Jun 27 07:08:54 IST 2026
[2026-06-27 07:08:54,659.659 INFO    ] ================================================
[2026-06-27 07:08:55,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:08:55
[2026-06-27 07:08:55,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:08:55,532.532 INFO    ] Initializing speech engine...
[2026-06-27 07:08:55,537.537 INFO    ] 2026-06-27 07:08:55
[2026-06-27 07:08:55,745.745 INFO    ] 2026-06-27 07:08:55
[2026-06-27 07:08:55,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:08:55,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:08:55,973.973 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:08:56,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:08:56,171.171 INFO    ] time= 27/06/2026 07:08:56
[2026-06-27 07:08:56,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:08:56,201.201 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:08:56,273.273 INFO    ] No existing commands found in stream
[2026-06-27 07:09:01,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:09:01,291.291 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-27 07:09:04,251.251 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:09:04,252.252 INFO    ] Checking for system updates...
[2026-06-27 07:09:04,276.276 INFO    ] 200
[2026-06-27 07:09:04,278.278 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:09:04,312.312 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:09:04,313.313 INFO    ] No update needed
[2026-06-27 07:09:04,315.315 INFO    ] Checking for camera pi updates...
[2026-06-27 07:09:04,339.339 INFO    ] 200
[2026-06-27 07:09:04,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:09:04,367.367 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:09:04,413.413 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:09:04,415.415 INFO    ] No camera update needed
[2026-06-27 07:09:04,416.416 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:09:04,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:09:04,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:09:04,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:09:06,467.467 INFO    ] ================================================
[2026-06-27 07:09:06,482.482 INFO    ] Launching Daemon at Sat Jun 27 07:09:06 IST 2026
[2026-06-27 07:09:06,494.494 INFO    ] ================================================
[2026-06-27 07:09:06,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:09:06
[2026-06-27 07:09:07,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:09:07,350.350 INFO    ] Initializing speech engine...
[2026-06-27 07:09:07,356.356 INFO    ] 2026-06-27 07:09:07
[2026-06-27 07:09:07,566.566 INFO    ] 2026-06-27 07:09:07
[2026-06-27 07:09:07,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:09:07,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:09:07,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:09:07,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:09:07,992.992 INFO    ] time= 27/06/2026 07:09:07
[2026-06-27 07:09:08,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:09:08,023.023 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:09:08,090.090 INFO    ] No existing commands found in stream
[2026-06-27 07:09:13,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:09:13,108.108 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-27 07:09:17,414.414 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 07:09:17,416.416 INFO    ] Checking for system updates...
[2026-06-27 07:09:17,437.437 INFO    ] 200
[2026-06-27 07:09:17,439.439 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:09:17,470.470 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:09:17,471.471 INFO    ] No update needed
[2026-06-27 07:09:17,473.473 INFO    ] Checking for camera pi updates...
[2026-06-27 07:09:17,492.492 INFO    ] 200
[2026-06-27 07:09:17,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:09:17,523.523 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:09:17,563.563 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:09:17,565.565 INFO    ] No camera update needed
[2026-06-27 07:09:17,566.566 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:09:17,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:09:17,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:09:17,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:09:19,611.611 INFO    ] ================================================
[2026-06-27 07:09:19,627.627 INFO    ] Launching Daemon at Sat Jun 27 07:09:19 IST 2026
[2026-06-27 07:09:19,638.638 INFO    ] ================================================
[2026-06-27 07:09:19,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:09:19
[2026-06-27 07:09:20,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:09:20,451.451 INFO    ] Initializing speech engine...
[2026-06-27 07:09:20,456.456 INFO    ] 2026-06-27 07:09:20
[2026-06-27 07:09:20,660.660 INFO    ] 2026-06-27 07:09:20
[2026-06-27 07:09:20,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:09:20,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:09:20,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:09:21,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:09:21,079.079 INFO    ] time= 27/06/2026 07:09:21
[2026-06-27 07:09:21,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:09:21,109.109 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:09:21,179.179 INFO    ] No existing commands found in stream
[2026-06-27 07:09:26,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:09:26,196.196 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-27 07:09:26,629.629 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:09:26,630.630 INFO    ] Checking for system updates...
[2026-06-27 07:09:26,651.651 INFO    ] 200
[2026-06-27 07:09:26,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:09:26,686.686 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:09:26,688.688 INFO    ] No update needed
[2026-06-27 07:09:26,689.689 INFO    ] Checking for camera pi updates...
[2026-06-27 07:09:26,708.708 INFO    ] 200
[2026-06-27 07:09:26,710.710 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:09:26,735.735 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:09:26,781.781 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:09:26,782.782 INFO    ] No camera update needed
[2026-06-27 07:09:26,783.783 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:09:26,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:09:26,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:09:26,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:09:28,831.831 INFO    ] ================================================
[2026-06-27 07:09:28,847.847 INFO    ] Launching Daemon at Sat Jun 27 07:09:28 IST 2026
[2026-06-27 07:09:28,858.858 INFO    ] ================================================
[2026-06-27 07:09:29,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:09:29
[2026-06-27 07:09:29,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:09:29,650.650 INFO    ] Initializing speech engine...
[2026-06-27 07:09:29,654.654 INFO    ] 2026-06-27 07:09:29
[2026-06-27 07:09:29,874.874 INFO    ] 2026-06-27 07:09:29
[2026-06-27 07:09:29,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:09:30,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:09:30,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:09:30,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:09:30,278.278 INFO    ] time= 27/06/2026 07:09:30
[2026-06-27 07:09:30,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:09:30,328.328 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:09:30,424.424 INFO    ] No existing commands found in stream
[2026-06-27 07:09:35,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:09:35,435.435 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-27 07:09:36,991.991 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:09:36,993.993 INFO    ] Checking for system updates...
[2026-06-27 07:09:37,015.015 INFO    ] 200
[2026-06-27 07:09:37,017.017 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:09:37,050.050 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:09:37,051.051 INFO    ] No update needed
[2026-06-27 07:09:37,053.053 INFO    ] Checking for camera pi updates...
[2026-06-27 07:09:37,073.073 INFO    ] 200
[2026-06-27 07:09:37,074.074 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:09:37,098.098 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:09:37,134.134 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:09:37,135.135 INFO    ] No camera update needed
[2026-06-27 07:09:37,136.136 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:09:37,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:09:37,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:09:37,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:09:39,182.182 INFO    ] ================================================
[2026-06-27 07:09:39,197.197 INFO    ] Launching Daemon at Sat Jun 27 07:09:39 IST 2026
[2026-06-27 07:09:39,208.208 INFO    ] ================================================
[2026-06-27 07:09:39,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:09:39
[2026-06-27 07:09:39,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:09:40,033.033 INFO    ] Initializing speech engine...
[2026-06-27 07:09:40,039.039 INFO    ] 2026-06-27 07:09:40
[2026-06-27 07:09:40,247.247 INFO    ] 2026-06-27 07:09:40
[2026-06-27 07:09:40,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:09:40,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:09:40,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:09:40,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:09:40,672.672 INFO    ] time= 27/06/2026 07:09:40
[2026-06-27 07:09:40,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:09:40,700.700 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:09:40,769.769 INFO    ] No existing commands found in stream
[2026-06-27 07:09:45,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:09:45,783.783 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-27 07:09:47,455.455 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:09:47,456.456 INFO    ] Checking for system updates...
[2026-06-27 07:09:47,478.478 INFO    ] 200
[2026-06-27 07:09:47,480.480 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:09:47,510.510 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:09:47,511.511 INFO    ] No update needed
[2026-06-27 07:09:47,513.513 INFO    ] Checking for camera pi updates...
[2026-06-27 07:09:47,536.536 INFO    ] 200
[2026-06-27 07:09:47,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:09:47,561.561 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:09:47,601.601 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:09:47,603.603 INFO    ] No camera update needed
[2026-06-27 07:09:47,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:09:47,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:09:47,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:09:47,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:09:49,648.648 INFO    ] ================================================
[2026-06-27 07:09:49,663.663 INFO    ] Launching Daemon at Sat Jun 27 07:09:49 IST 2026
[2026-06-27 07:09:49,673.673 INFO    ] ================================================
[2026-06-27 07:09:50,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:09:50
[2026-06-27 07:09:50,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:09:50,481.481 INFO    ] Initializing speech engine...
[2026-06-27 07:09:50,494.494 INFO    ] 2026-06-27 07:09:50
[2026-06-27 07:09:50,700.700 INFO    ] 2026-06-27 07:09:50
[2026-06-27 07:09:50,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:09:50,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:09:50,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:09:51,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:09:51,117.117 INFO    ] time= 27/06/2026 07:09:51
[2026-06-27 07:09:51,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:09:51,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:09:51,214.214 INFO    ] No existing commands found in stream
[2026-06-27 07:09:56,225.225 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:09:56,228.228 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-27 07:09:59,464.464 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:09:59,465.465 INFO    ] Checking for system updates...
[2026-06-27 07:09:59,487.487 INFO    ] 200
[2026-06-27 07:09:59,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:09:59,519.519 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:09:59,520.520 INFO    ] No update needed
[2026-06-27 07:09:59,521.521 INFO    ] Checking for camera pi updates...
[2026-06-27 07:09:59,542.542 INFO    ] 200
[2026-06-27 07:09:59,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:09:59,569.569 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:09:59,606.606 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:09:59,608.608 INFO    ] No camera update needed
[2026-06-27 07:09:59,609.609 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:09:59,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:09:59,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:09:59,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:10:01,697.697 INFO    ] ================================================
[2026-06-27 07:10:01,725.725 INFO    ] Launching Daemon at Sat Jun 27 07:10:01 IST 2026
[2026-06-27 07:10:01,735.735 INFO    ] ================================================
[2026-06-27 07:10:02,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:10:02
[2026-06-27 07:10:02,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:10:02,866.866 INFO    ] Initializing speech engine...
[2026-06-27 07:10:02,871.871 INFO    ] 2026-06-27 07:10:02
[2026-06-27 07:10:03,128.128 INFO    ] 2026-06-27 07:10:03
[2026-06-27 07:10:03,157.157 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:10:03,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:10:03,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:10:03,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:10:03,547.547 INFO    ] time= 27/06/2026 07:10:03
[2026-06-27 07:10:03,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:10:03,577.577 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:10:03,646.646 INFO    ] No existing commands found in stream
[2026-06-27 07:10:08,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:10:08,659.659 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-27 07:10:09,622.622 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 07:10:09,623.623 INFO    ] Checking for system updates...
[2026-06-27 07:10:09,647.647 INFO    ] 200
[2026-06-27 07:10:09,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:10:09,678.678 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:10:09,679.679 INFO    ] No update needed
[2026-06-27 07:10:09,681.681 INFO    ] Checking for camera pi updates...
[2026-06-27 07:10:09,701.701 INFO    ] 200
[2026-06-27 07:10:09,702.702 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:10:09,727.727 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:10:09,772.772 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:10:09,774.774 INFO    ] No camera update needed
[2026-06-27 07:10:09,775.775 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:10:09,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:10:09,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:10:09,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:10:11,820.820 INFO    ] ================================================
[2026-06-27 07:10:11,835.835 INFO    ] Launching Daemon at Sat Jun 27 07:10:11 IST 2026
[2026-06-27 07:10:11,846.846 INFO    ] ================================================
[2026-06-27 07:10:12,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:10:12
[2026-06-27 07:10:12,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:10:12,626.626 INFO    ] Initializing speech engine...
[2026-06-27 07:10:12,639.639 INFO    ] 2026-06-27 07:10:12
[2026-06-27 07:10:12,849.849 INFO    ] 2026-06-27 07:10:12
[2026-06-27 07:10:12,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:10:13,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:10:13,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:10:13,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:10:13,263.263 INFO    ] time= 27/06/2026 07:10:13
[2026-06-27 07:10:13,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:10:13,299.299 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:10:13,364.364 INFO    ] No existing commands found in stream
[2026-06-27 07:10:18,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:10:18,377.377 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-27 07:10:20,235.235 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:10:20,237.237 INFO    ] Checking for system updates...
[2026-06-27 07:10:20,259.259 INFO    ] 200
[2026-06-27 07:10:20,260.260 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:10:20,290.290 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:10:20,291.291 INFO    ] No update needed
[2026-06-27 07:10:20,293.293 INFO    ] Checking for camera pi updates...
[2026-06-27 07:10:20,315.315 INFO    ] 200
[2026-06-27 07:10:20,317.317 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:10:20,341.341 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:10:20,382.382 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:10:20,383.383 INFO    ] No camera update needed
[2026-06-27 07:10:20,384.384 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:10:20,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:10:20,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:10:20,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:10:22,430.430 INFO    ] ================================================
[2026-06-27 07:10:22,445.445 INFO    ] Launching Daemon at Sat Jun 27 07:10:22 IST 2026
[2026-06-27 07:10:22,455.455 INFO    ] ================================================
[2026-06-27 07:10:22,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:10:22
[2026-06-27 07:10:23,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:10:23,279.279 INFO    ] Initializing speech engine...
[2026-06-27 07:10:23,289.289 INFO    ] 2026-06-27 07:10:23
[2026-06-27 07:10:23,492.492 INFO    ] 2026-06-27 07:10:23
[2026-06-27 07:10:23,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:10:23,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:10:23,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:10:23,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:10:23,908.908 INFO    ] time= 27/06/2026 07:10:23
[2026-06-27 07:10:23,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:10:23,938.938 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:10:24,002.002 INFO    ] No existing commands found in stream
[2026-06-27 07:10:29,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:10:29,016.016 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-27 07:10:32,085.085 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 07:10:32,087.087 INFO    ] Checking for system updates...
[2026-06-27 07:10:32,113.113 INFO    ] 200
[2026-06-27 07:10:32,115.115 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:10:32,156.156 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:10:32,158.158 INFO    ] No update needed
[2026-06-27 07:10:32,159.159 INFO    ] Checking for camera pi updates...
[2026-06-27 07:10:32,183.183 INFO    ] 200
[2026-06-27 07:10:32,185.185 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:10:32,212.212 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:10:32,235.235 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:10:32,236.236 INFO    ] No camera update needed
[2026-06-27 07:10:32,238.238 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:10:32,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:10:32,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:10:32,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:10:34,278.278 INFO    ] ================================================
[2026-06-27 07:10:34,294.294 INFO    ] Launching Daemon at Sat Jun 27 07:10:34 IST 2026
[2026-06-27 07:10:34,305.305 INFO    ] ================================================
[2026-06-27 07:10:34,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:10:34
[2026-06-27 07:10:34,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:10:35,098.098 INFO    ] Initializing speech engine...
[2026-06-27 07:10:35,107.107 INFO    ] 2026-06-27 07:10:35
[2026-06-27 07:10:35,322.322 INFO    ] 2026-06-27 07:10:35
[2026-06-27 07:10:35,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:10:35,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:10:35,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:10:35,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:10:35,748.748 INFO    ] time= 27/06/2026 07:10:35
[2026-06-27 07:10:35,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:10:35,777.777 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:10:35,843.843 INFO    ] No existing commands found in stream
[2026-06-27 07:10:40,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:10:40,856.856 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-27 07:10:41,239.239 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:10:41,240.240 INFO    ] Checking for system updates...
[2026-06-27 07:10:41,262.262 INFO    ] 200
[2026-06-27 07:10:41,264.264 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:10:41,295.295 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:10:41,296.296 INFO    ] No update needed
[2026-06-27 07:10:41,297.297 INFO    ] Checking for camera pi updates...
[2026-06-27 07:10:41,319.319 INFO    ] 200
[2026-06-27 07:10:41,320.320 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:10:41,344.344 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:10:41,388.388 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:10:41,389.389 INFO    ] No camera update needed
[2026-06-27 07:10:41,391.391 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:10:41,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:10:41,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:10:41,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:10:43,436.436 INFO    ] ================================================
[2026-06-27 07:10:43,451.451 INFO    ] Launching Daemon at Sat Jun 27 07:10:43 IST 2026
[2026-06-27 07:10:43,462.462 INFO    ] ================================================
[2026-06-27 07:10:43,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:10:43
[2026-06-27 07:10:44,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:10:44,258.258 INFO    ] Initializing speech engine...
[2026-06-27 07:10:44,269.269 INFO    ] 2026-06-27 07:10:44
[2026-06-27 07:10:44,474.474 INFO    ] 2026-06-27 07:10:44
[2026-06-27 07:10:44,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:10:44,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:10:44,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:10:44,826.826 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:10:44,895.895 INFO    ] time= 27/06/2026 07:10:44
[2026-06-27 07:10:44,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:10:44,921.921 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:10:44,991.991 INFO    ] No existing commands found in stream
[2026-06-27 07:10:50,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:10:50,004.004 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-27 07:10:51,608.608 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:10:51,610.610 INFO    ] Checking for system updates...
[2026-06-27 07:10:51,632.632 INFO    ] 200
[2026-06-27 07:10:51,633.633 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:10:51,664.664 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:10:51,666.666 INFO    ] No update needed
[2026-06-27 07:10:51,667.667 INFO    ] Checking for camera pi updates...
[2026-06-27 07:10:51,687.687 INFO    ] 200
[2026-06-27 07:10:51,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:10:51,713.713 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:10:51,755.755 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:10:51,756.756 INFO    ] No camera update needed
[2026-06-27 07:10:51,758.758 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:10:51,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:10:51,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:10:51,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:10:53,803.803 INFO    ] ================================================
[2026-06-27 07:10:53,818.818 INFO    ] Launching Daemon at Sat Jun 27 07:10:53 IST 2026
[2026-06-27 07:10:53,828.828 INFO    ] ================================================
[2026-06-27 07:10:54,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:10:54
[2026-06-27 07:10:54,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:10:54,621.621 INFO    ] Initializing speech engine...
[2026-06-27 07:10:54,627.627 INFO    ] 2026-06-27 07:10:54
[2026-06-27 07:10:54,831.831 INFO    ] 2026-06-27 07:10:54
[2026-06-27 07:10:54,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:10:55,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:10:55,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:10:55,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:10:55,251.251 INFO    ] time= 27/06/2026 07:10:55
[2026-06-27 07:10:55,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:10:55,281.281 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:10:55,348.348 INFO    ] No existing commands found in stream
[2026-06-27 07:11:00,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:11:00,360.360 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-27 07:11:02,090.090 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 07:11:02,092.092 INFO    ] Checking for system updates...
[2026-06-27 07:11:02,120.120 INFO    ] 200
[2026-06-27 07:11:02,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:11:02,155.155 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:11:02,157.157 INFO    ] No update needed
[2026-06-27 07:11:02,159.159 INFO    ] Checking for camera pi updates...
[2026-06-27 07:11:02,184.184 INFO    ] 200
[2026-06-27 07:11:02,186.186 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:11:02,209.209 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:11:02,234.234 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:11:02,235.235 INFO    ] No camera update needed
[2026-06-27 07:11:02,236.236 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:11:02,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:11:02,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:11:02,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:11:04,281.281 INFO    ] ================================================
[2026-06-27 07:11:04,296.296 INFO    ] Launching Daemon at Sat Jun 27 07:11:04 IST 2026
[2026-06-27 07:11:04,306.306 INFO    ] ================================================
[2026-06-27 07:11:04,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:11:04
[2026-06-27 07:11:04,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:11:05,086.086 INFO    ] Initializing speech engine...
[2026-06-27 07:11:05,091.091 INFO    ] 2026-06-27 07:11:05
[2026-06-27 07:11:05,305.305 INFO    ] 2026-06-27 07:11:05
[2026-06-27 07:11:05,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:11:05,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:11:05,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:11:05,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:11:05,738.738 INFO    ] time= 27/06/2026 07:11:05
[2026-06-27 07:11:05,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:11:05,765.765 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:11:05,831.831 INFO    ] No existing commands found in stream
[2026-06-27 07:11:10,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:11:10,846.846 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-27 07:11:13,381.381 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 07:11:13,382.382 INFO    ] Checking for system updates...
[2026-06-27 07:11:13,405.405 INFO    ] 200
[2026-06-27 07:11:13,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:11:13,437.437 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:11:13,439.439 INFO    ] No update needed
[2026-06-27 07:11:13,440.440 INFO    ] Checking for camera pi updates...
[2026-06-27 07:11:13,462.462 INFO    ] 200
[2026-06-27 07:11:13,463.463 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:11:13,491.491 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:11:13,526.526 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:11:13,527.527 INFO    ] No camera update needed
[2026-06-27 07:11:13,528.528 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:11:13,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:11:13,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:11:13,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:11:15,576.576 INFO    ] ================================================
[2026-06-27 07:11:15,592.592 INFO    ] Launching Daemon at Sat Jun 27 07:11:15 IST 2026
[2026-06-27 07:11:15,603.603 INFO    ] ================================================
[2026-06-27 07:11:15,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:11:15
[2026-06-27 07:11:16,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:11:16,467.467 INFO    ] Initializing speech engine...
[2026-06-27 07:11:16,472.472 INFO    ] 2026-06-27 07:11:16
[2026-06-27 07:11:16,663.663 INFO    ] 2026-06-27 07:11:16
[2026-06-27 07:11:16,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:11:16,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:11:16,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:11:17,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:11:17,110.110 INFO    ] time= 27/06/2026 07:11:17
[2026-06-27 07:11:17,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:11:17,141.141 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:11:17,208.208 INFO    ] No existing commands found in stream
[2026-06-27 07:11:22,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:11:22,226.226 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-27 07:11:22,951.951 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 07:11:22,952.952 INFO    ] Checking for system updates...
[2026-06-27 07:11:22,975.975 INFO    ] 200
[2026-06-27 07:11:22,976.976 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:11:23,009.009 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:11:23,010.010 INFO    ] No update needed
[2026-06-27 07:11:23,012.012 INFO    ] Checking for camera pi updates...
[2026-06-27 07:11:23,034.034 INFO    ] 200
[2026-06-27 07:11:23,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:11:23,060.060 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:11:23,088.088 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:11:23,089.089 INFO    ] No camera update needed
[2026-06-27 07:11:23,090.090 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:11:23,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:11:23,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:11:23,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:11:25,138.138 INFO    ] ================================================
[2026-06-27 07:11:25,153.153 INFO    ] Launching Daemon at Sat Jun 27 07:11:25 IST 2026
[2026-06-27 07:11:25,164.164 INFO    ] ================================================
[2026-06-27 07:11:25,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:11:25
[2026-06-27 07:11:25,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:11:26,053.053 INFO    ] Initializing speech engine...
[2026-06-27 07:11:26,057.057 INFO    ] 2026-06-27 07:11:26
[2026-06-27 07:11:26,270.270 INFO    ] 2026-06-27 07:11:26
[2026-06-27 07:11:26,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:11:26,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:11:26,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:11:26,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:11:26,678.678 INFO    ] time= 27/06/2026 07:11:26
[2026-06-27 07:11:26,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:11:26,725.725 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:11:26,797.797 INFO    ] No existing commands found in stream
[2026-06-27 07:11:31,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:11:31,817.817 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-27 07:11:33,301.301 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:11:33,302.302 INFO    ] Checking for system updates...
[2026-06-27 07:11:33,324.324 INFO    ] 200
[2026-06-27 07:11:33,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:11:33,356.356 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:11:33,358.358 INFO    ] No update needed
[2026-06-27 07:11:33,359.359 INFO    ] Checking for camera pi updates...
[2026-06-27 07:11:33,378.378 INFO    ] 200
[2026-06-27 07:11:33,380.380 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:11:33,405.405 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:11:33,448.448 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:11:33,450.450 INFO    ] No camera update needed
[2026-06-27 07:11:33,451.451 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:11:33,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:11:33,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:11:33,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:11:35,496.496 INFO    ] ================================================
[2026-06-27 07:11:35,511.511 INFO    ] Launching Daemon at Sat Jun 27 07:11:35 IST 2026
[2026-06-27 07:11:35,522.522 INFO    ] ================================================
[2026-06-27 07:11:35,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:11:35
[2026-06-27 07:11:36,199.199 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:11:36,342.342 INFO    ] Initializing speech engine...
[2026-06-27 07:11:36,347.347 INFO    ] 2026-06-27 07:11:36
[2026-06-27 07:11:36,554.554 INFO    ] 2026-06-27 07:11:36
[2026-06-27 07:11:36,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:11:36,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:11:36,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:11:36,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:11:36,978.978 INFO    ] time= 27/06/2026 07:11:36
[2026-06-27 07:11:37,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:11:37,007.007 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:11:37,075.075 INFO    ] No existing commands found in stream
[2026-06-27 07:11:42,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:11:42,088.088 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-27 07:11:45,007.007 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 07:11:45,009.009 INFO    ] Checking for system updates...
[2026-06-27 07:11:45,030.030 INFO    ] 200
[2026-06-27 07:11:45,031.031 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:11:45,065.065 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:11:45,066.066 INFO    ] No update needed
[2026-06-27 07:11:45,067.067 INFO    ] Checking for camera pi updates...
[2026-06-27 07:11:45,088.088 INFO    ] 200
[2026-06-27 07:11:45,090.090 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:11:45,114.114 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:11:45,151.151 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:11:45,152.152 INFO    ] No camera update needed
[2026-06-27 07:11:45,154.154 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:11:45,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:11:45,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:11:45,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:11:47,198.198 INFO    ] ================================================
[2026-06-27 07:11:47,214.214 INFO    ] Launching Daemon at Sat Jun 27 07:11:47 IST 2026
[2026-06-27 07:11:47,225.225 INFO    ] ================================================
[2026-06-27 07:11:47,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:11:47
[2026-06-27 07:11:47,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:11:48,105.105 INFO    ] Initializing speech engine...
[2026-06-27 07:11:48,118.118 INFO    ] 2026-06-27 07:11:48
[2026-06-27 07:11:48,332.332 INFO    ] 2026-06-27 07:11:48
[2026-06-27 07:11:48,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:11:48,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:11:48,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:11:48,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:11:48,751.751 INFO    ] time= 27/06/2026 07:11:48
[2026-06-27 07:11:48,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:11:48,780.780 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:11:48,847.847 INFO    ] No existing commands found in stream
[2026-06-27 07:11:53,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:11:53,865.865 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-27 07:11:54,786.786 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 07:11:54,788.788 INFO    ] Checking for system updates...
[2026-06-27 07:11:54,811.811 INFO    ] 200
[2026-06-27 07:11:54,812.812 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:11:54,842.842 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:11:54,844.844 INFO    ] No update needed
[2026-06-27 07:11:54,845.845 INFO    ] Checking for camera pi updates...
[2026-06-27 07:11:54,866.866 INFO    ] 200
[2026-06-27 07:11:54,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:11:54,892.892 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:11:54,915.915 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:11:54,916.916 INFO    ] No camera update needed
[2026-06-27 07:11:54,917.917 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:11:54,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:11:54,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:11:54,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:11:56,962.962 INFO    ] ================================================
[2026-06-27 07:11:56,977.977 INFO    ] Launching Daemon at Sat Jun 27 07:11:56 IST 2026
[2026-06-27 07:11:56,988.988 INFO    ] ================================================
[2026-06-27 07:11:57,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:11:57
[2026-06-27 07:11:57,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:11:57,864.864 INFO    ] Initializing speech engine...
[2026-06-27 07:11:57,869.869 INFO    ] 2026-06-27 07:11:57
[2026-06-27 07:11:58,080.080 INFO    ] 2026-06-27 07:11:58
[2026-06-27 07:11:58,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:11:58,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:11:58,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:11:58,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:11:58,502.502 INFO    ] time= 27/06/2026 07:11:58
[2026-06-27 07:11:58,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:11:58,533.533 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:11:58,599.599 INFO    ] No existing commands found in stream
[2026-06-27 07:12:03,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:12:03,612.612 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-27 07:12:05,253.253 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:12:05,255.255 INFO    ] Checking for system updates...
[2026-06-27 07:12:05,279.279 INFO    ] 200
[2026-06-27 07:12:05,280.280 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:12:05,311.311 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:12:05,312.312 INFO    ] No update needed
[2026-06-27 07:12:05,314.314 INFO    ] Checking for camera pi updates...
[2026-06-27 07:12:05,333.333 INFO    ] 200
[2026-06-27 07:12:05,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:12:05,360.360 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:12:05,396.396 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:12:05,398.398 INFO    ] No camera update needed
[2026-06-27 07:12:05,399.399 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:12:05,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:12:05,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:12:05,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:12:07,446.446 INFO    ] ================================================
[2026-06-27 07:12:07,461.461 INFO    ] Launching Daemon at Sat Jun 27 07:12:07 IST 2026
[2026-06-27 07:12:07,472.472 INFO    ] ================================================
[2026-06-27 07:12:07,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:12:07
[2026-06-27 07:12:08,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:12:08,294.294 INFO    ] Initializing speech engine...
[2026-06-27 07:12:08,306.306 INFO    ] 2026-06-27 07:12:08
[2026-06-27 07:12:08,519.519 INFO    ] 2026-06-27 07:12:08
[2026-06-27 07:12:08,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:12:08,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:12:08,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:12:08,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:12:08,934.934 INFO    ] time= 27/06/2026 07:12:08
[2026-06-27 07:12:08,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:12:08,979.979 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:12:09,046.046 INFO    ] No existing commands found in stream
[2026-06-27 07:12:14,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:12:14,058.058 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-27 07:12:16,960.960 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 07:12:16,962.962 INFO    ] Checking for system updates...
[2026-06-27 07:12:16,986.986 INFO    ] 200
[2026-06-27 07:12:16,988.988 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:12:17,021.021 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:12:17,023.023 INFO    ] No update needed
[2026-06-27 07:12:17,024.024 INFO    ] Checking for camera pi updates...
[2026-06-27 07:12:17,047.047 INFO    ] 200
[2026-06-27 07:12:17,048.048 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:12:17,074.074 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:12:17,116.116 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:12:17,117.117 INFO    ] No camera update needed
[2026-06-27 07:12:17,118.118 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:12:17,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:12:17,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:12:17,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:12:19,163.163 INFO    ] ================================================
[2026-06-27 07:12:19,178.178 INFO    ] Launching Daemon at Sat Jun 27 07:12:19 IST 2026
[2026-06-27 07:12:19,191.191 INFO    ] ================================================
[2026-06-27 07:12:19,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:12:19
[2026-06-27 07:12:19,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:12:19,981.981 INFO    ] Initializing speech engine...
[2026-06-27 07:12:19,986.986 INFO    ] 2026-06-27 07:12:19
[2026-06-27 07:12:20,204.204 INFO    ] 2026-06-27 07:12:20
[2026-06-27 07:12:20,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:12:20,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:12:20,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:12:20,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:12:20,639.639 INFO    ] time= 27/06/2026 07:12:20
[2026-06-27 07:12:20,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:12:20,668.668 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:12:20,738.738 INFO    ] No existing commands found in stream
[2026-06-27 07:12:25,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:12:25,752.752 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-27 07:12:28,041.041 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 07:12:28,043.043 INFO    ] Checking for system updates...
[2026-06-27 07:12:28,066.066 INFO    ] 200
[2026-06-27 07:12:28,067.067 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:12:28,098.098 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:12:28,099.099 INFO    ] No update needed
[2026-06-27 07:12:28,100.100 INFO    ] Checking for camera pi updates...
[2026-06-27 07:12:28,120.120 INFO    ] 200
[2026-06-27 07:12:28,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:12:28,146.146 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:12:28,182.182 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:12:28,184.184 INFO    ] No camera update needed
[2026-06-27 07:12:28,185.185 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:12:28,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:12:28,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:12:28,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:12:30,230.230 INFO    ] ================================================
[2026-06-27 07:12:30,245.245 INFO    ] Launching Daemon at Sat Jun 27 07:12:30 IST 2026
[2026-06-27 07:12:30,256.256 INFO    ] ================================================
[2026-06-27 07:12:30,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:12:30
[2026-06-27 07:12:30,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:12:31,132.132 INFO    ] Initializing speech engine...
[2026-06-27 07:12:31,143.143 INFO    ] 2026-06-27 07:12:31
[2026-06-27 07:12:31,354.354 INFO    ] 2026-06-27 07:12:31
[2026-06-27 07:12:31,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:12:31,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:12:31,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:12:31,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:12:31,794.794 INFO    ] time= 27/06/2026 07:12:31
[2026-06-27 07:12:31,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:12:31,835.835 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:12:31,911.911 INFO    ] No existing commands found in stream
[2026-06-27 07:12:36,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:12:36,928.928 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-27 07:12:38,798.798 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 07:12:38,799.799 INFO    ] Checking for system updates...
[2026-06-27 07:12:38,821.821 INFO    ] 200
[2026-06-27 07:12:38,823.823 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:12:38,856.856 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:12:38,857.857 INFO    ] No update needed
[2026-06-27 07:12:38,858.858 INFO    ] Checking for camera pi updates...
[2026-06-27 07:12:38,878.878 INFO    ] 200
[2026-06-27 07:12:38,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:12:38,902.902 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:12:39,054.054 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:12:39,055.055 INFO    ] No camera update needed
[2026-06-27 07:12:39,056.056 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:12:39,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:12:39,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:12:39,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:12:41,102.102 INFO    ] ================================================
[2026-06-27 07:12:41,117.117 INFO    ] Launching Daemon at Sat Jun 27 07:12:41 IST 2026
[2026-06-27 07:12:41,128.128 INFO    ] ================================================
[2026-06-27 07:12:41,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:12:41
[2026-06-27 07:12:41,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:12:41,927.927 INFO    ] Initializing speech engine...
[2026-06-27 07:12:41,932.932 INFO    ] 2026-06-27 07:12:41
[2026-06-27 07:12:42,137.137 INFO    ] 2026-06-27 07:12:42
[2026-06-27 07:12:42,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:12:42,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:12:42,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:12:42,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:12:42,552.552 INFO    ] time= 27/06/2026 07:12:42
[2026-06-27 07:12:42,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:12:42,585.585 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:12:42,652.652 INFO    ] No existing commands found in stream
[2026-06-27 07:12:47,661.661 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:12:47,664.664 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-27 07:12:50,981.981 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 07:12:50,982.982 INFO    ] Checking for system updates...
[2026-06-27 07:12:51,004.004 INFO    ] 200
[2026-06-27 07:12:51,006.006 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:12:51,036.036 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:12:51,038.038 INFO    ] No update needed
[2026-06-27 07:12:51,039.039 INFO    ] Checking for camera pi updates...
[2026-06-27 07:12:51,060.060 INFO    ] 200
[2026-06-27 07:12:51,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:12:51,085.085 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:12:51,130.130 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:12:51,132.132 INFO    ] No camera update needed
[2026-06-27 07:12:51,133.133 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:12:51,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:12:51,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:12:51,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:12:53,178.178 INFO    ] ================================================
[2026-06-27 07:12:53,193.193 INFO    ] Launching Daemon at Sat Jun 27 07:12:53 IST 2026
[2026-06-27 07:12:53,204.204 INFO    ] ================================================
[2026-06-27 07:12:53,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:12:53
[2026-06-27 07:12:53,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:12:53,989.989 INFO    ] Initializing speech engine...
[2026-06-27 07:12:53,994.994 INFO    ] 2026-06-27 07:12:53
[2026-06-27 07:12:54,197.197 INFO    ] 2026-06-27 07:12:54
[2026-06-27 07:12:54,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:12:54,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:12:54,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:12:54,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:12:54,613.613 INFO    ] time= 27/06/2026 07:12:54
[2026-06-27 07:12:54,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:12:54,664.664 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:12:54,739.739 INFO    ] No existing commands found in stream
[2026-06-27 07:12:59,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:12:59,752.752 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-27 07:13:00,928.928 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 07:13:00,929.929 INFO    ] Checking for system updates...
[2026-06-27 07:13:00,950.950 INFO    ] 200
[2026-06-27 07:13:00,952.952 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:13:00,984.984 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:13:00,986.986 INFO    ] No update needed
[2026-06-27 07:13:00,987.987 INFO    ] Checking for camera pi updates...
[2026-06-27 07:13:01,007.007 INFO    ] 200
[2026-06-27 07:13:01,009.009 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:13:01,033.033 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:13:01,072.072 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:13:01,074.074 INFO    ] No camera update needed
[2026-06-27 07:13:01,075.075 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:13:01,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:13:01,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:13:01,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:13:03,115.115 INFO    ] ================================================
[2026-06-27 07:13:03,130.130 INFO    ] Launching Daemon at Sat Jun 27 07:13:03 IST 2026
[2026-06-27 07:13:03,142.142 INFO    ] ================================================
[2026-06-27 07:13:03,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:13:03
[2026-06-27 07:13:03,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:13:03,968.968 INFO    ] Initializing speech engine...
[2026-06-27 07:13:03,978.978 INFO    ] 2026-06-27 07:13:03
[2026-06-27 07:13:04,184.184 INFO    ] 2026-06-27 07:13:04
[2026-06-27 07:13:04,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:13:04,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:13:04,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:13:04,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:13:04,603.603 INFO    ] time= 27/06/2026 07:13:04
[2026-06-27 07:13:04,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:13:04,633.633 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:13:04,700.700 INFO    ] No existing commands found in stream
[2026-06-27 07:13:09,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:13:09,709.709 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-27 07:13:12,542.542 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 07:13:12,544.544 INFO    ] Checking for system updates...
[2026-06-27 07:13:12,565.565 INFO    ] 200
[2026-06-27 07:13:12,566.566 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:13:12,598.598 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:13:12,600.600 INFO    ] No update needed
[2026-06-27 07:13:12,601.601 INFO    ] Checking for camera pi updates...
[2026-06-27 07:13:12,622.622 INFO    ] 200
[2026-06-27 07:13:12,623.623 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:13:12,646.646 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:13:12,688.688 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:13:12,689.689 INFO    ] No camera update needed
[2026-06-27 07:13:12,691.691 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:13:12,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:13:12,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:13:12,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:13:14,739.739 INFO    ] ================================================
[2026-06-27 07:13:14,754.754 INFO    ] Launching Daemon at Sat Jun 27 07:13:14 IST 2026
[2026-06-27 07:13:14,766.766 INFO    ] ================================================
[2026-06-27 07:13:15,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:13:15
[2026-06-27 07:13:15,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:13:15,569.569 INFO    ] Initializing speech engine...
[2026-06-27 07:13:15,581.581 INFO    ] 2026-06-27 07:13:15
[2026-06-27 07:13:15,790.790 INFO    ] 2026-06-27 07:13:15
[2026-06-27 07:13:15,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:13:16,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:13:16,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:13:16,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:13:16,208.208 INFO    ] time= 27/06/2026 07:13:16
[2026-06-27 07:13:16,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:13:16,236.236 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:13:16,304.304 INFO    ] No existing commands found in stream
[2026-06-27 07:13:21,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:13:21,316.316 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-27 07:13:23,692.692 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 07:13:23,694.694 INFO    ] Checking for system updates...
[2026-06-27 07:13:23,714.714 INFO    ] 200
[2026-06-27 07:13:23,716.716 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:13:23,748.748 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:13:23,750.750 INFO    ] No update needed
[2026-06-27 07:13:23,751.751 INFO    ] Checking for camera pi updates...
[2026-06-27 07:13:23,771.771 INFO    ] 200
[2026-06-27 07:13:23,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:13:23,798.798 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:13:23,833.833 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:13:23,835.835 INFO    ] No camera update needed
[2026-06-27 07:13:23,836.836 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:13:23,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:13:23,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:13:23,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:13:25,881.881 INFO    ] ================================================
[2026-06-27 07:13:25,897.897 INFO    ] Launching Daemon at Sat Jun 27 07:13:25 IST 2026
[2026-06-27 07:13:25,908.908 INFO    ] ================================================
[2026-06-27 07:13:26,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:13:26
[2026-06-27 07:13:26,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:13:26,727.727 INFO    ] Initializing speech engine...
[2026-06-27 07:13:26,732.732 INFO    ] 2026-06-27 07:13:26
[2026-06-27 07:13:26,941.941 INFO    ] 2026-06-27 07:13:26
[2026-06-27 07:13:26,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:13:27,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:13:27,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:13:27,298.298 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:13:27,359.359 INFO    ] time= 27/06/2026 07:13:27
[2026-06-27 07:13:27,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:13:27,399.399 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:13:27,467.467 INFO    ] No existing commands found in stream
[2026-06-27 07:13:32,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:13:32,477.477 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-27 07:13:35,013.013 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:13:35,015.015 INFO    ] Checking for system updates...
[2026-06-27 07:13:35,037.037 INFO    ] 200
[2026-06-27 07:13:35,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:13:35,073.073 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:13:35,075.075 INFO    ] No update needed
[2026-06-27 07:13:35,076.076 INFO    ] Checking for camera pi updates...
[2026-06-27 07:13:35,099.099 INFO    ] 200
[2026-06-27 07:13:35,101.101 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:13:35,124.124 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:13:35,160.160 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:13:35,161.161 INFO    ] No camera update needed
[2026-06-27 07:13:35,163.163 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:13:35,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:13:35,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:13:35,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:13:37,208.208 INFO    ] ================================================
[2026-06-27 07:13:37,224.224 INFO    ] Launching Daemon at Sat Jun 27 07:13:37 IST 2026
[2026-06-27 07:13:37,234.234 INFO    ] ================================================
[2026-06-27 07:13:37,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:13:37
[2026-06-27 07:13:37,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:13:38,026.026 INFO    ] Initializing speech engine...
[2026-06-27 07:13:38,034.034 INFO    ] 2026-06-27 07:13:38
[2026-06-27 07:13:38,248.248 INFO    ] 2026-06-27 07:13:38
[2026-06-27 07:13:38,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:13:38,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:13:38,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:13:38,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:13:38,664.664 INFO    ] time= 27/06/2026 07:13:38
[2026-06-27 07:13:38,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:13:38,703.703 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:13:38,769.769 INFO    ] No existing commands found in stream
[2026-06-27 07:13:43,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:13:43,783.783 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-27 07:13:45,272.272 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 07:13:45,273.273 INFO    ] Checking for system updates...
[2026-06-27 07:13:45,295.295 INFO    ] 200
[2026-06-27 07:13:45,297.297 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:13:45,328.328 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:13:45,330.330 INFO    ] No update needed
[2026-06-27 07:13:45,331.331 INFO    ] Checking for camera pi updates...
[2026-06-27 07:13:45,350.350 INFO    ] 200
[2026-06-27 07:13:45,352.352 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:13:45,377.377 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:13:45,413.413 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:13:45,415.415 INFO    ] No camera update needed
[2026-06-27 07:13:45,416.416 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:13:45,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:13:45,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:13:45,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:13:47,461.461 INFO    ] ================================================
[2026-06-27 07:13:47,476.476 INFO    ] Launching Daemon at Sat Jun 27 07:13:47 IST 2026
[2026-06-27 07:13:47,487.487 INFO    ] ================================================
[2026-06-27 07:13:47,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:13:47
[2026-06-27 07:13:48,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:13:48,291.291 INFO    ] Initializing speech engine...
[2026-06-27 07:13:48,303.303 INFO    ] 2026-06-27 07:13:48
[2026-06-27 07:13:48,514.514 INFO    ] 2026-06-27 07:13:48
[2026-06-27 07:13:48,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:13:48,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:13:48,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:13:48,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:13:48,959.959 INFO    ] time= 27/06/2026 07:13:48
[2026-06-27 07:13:48,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:13:48,966.966 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:13:49,033.033 INFO    ] No existing commands found in stream
[2026-06-27 07:13:54,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:13:54,046.046 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-27 07:13:55,048.048 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 07:13:55,049.049 INFO    ] Checking for system updates...
[2026-06-27 07:13:55,071.071 INFO    ] 200
[2026-06-27 07:13:55,072.072 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:13:55,105.105 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:13:55,106.106 INFO    ] No update needed
[2026-06-27 07:13:55,108.108 INFO    ] Checking for camera pi updates...
[2026-06-27 07:13:55,128.128 INFO    ] 200
[2026-06-27 07:13:55,129.129 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:13:55,154.154 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:13:55,179.179 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:13:55,180.180 INFO    ] No camera update needed
[2026-06-27 07:13:55,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:13:55,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:13:55,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:13:55,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:13:57,227.227 INFO    ] ================================================
[2026-06-27 07:13:57,242.242 INFO    ] Launching Daemon at Sat Jun 27 07:13:57 IST 2026
[2026-06-27 07:13:57,254.254 INFO    ] ================================================
[2026-06-27 07:13:57,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:13:57
[2026-06-27 07:13:57,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:13:58,059.059 INFO    ] Initializing speech engine...
[2026-06-27 07:13:58,065.065 INFO    ] 2026-06-27 07:13:58
[2026-06-27 07:13:58,268.268 INFO    ] 2026-06-27 07:13:58
[2026-06-27 07:13:58,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:13:58,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:13:58,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:13:58,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:13:58,677.677 INFO    ] time= 27/06/2026 07:13:58
[2026-06-27 07:13:58,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:13:58,711.711 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:13:58,782.782 INFO    ] No existing commands found in stream
[2026-06-27 07:14:03,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:14:03,799.799 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-27 07:14:05,357.357 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 07:14:05,359.359 INFO    ] Checking for system updates...
[2026-06-27 07:14:05,380.380 INFO    ] 200
[2026-06-27 07:14:05,381.381 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:14:05,412.412 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:14:05,413.413 INFO    ] No update needed
[2026-06-27 07:14:05,414.414 INFO    ] Checking for camera pi updates...
[2026-06-27 07:14:05,437.437 INFO    ] 200
[2026-06-27 07:14:05,438.438 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:14:05,463.463 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:14:05,496.496 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:14:05,498.498 INFO    ] No camera update needed
[2026-06-27 07:14:05,499.499 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:14:05,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:14:05,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:14:05,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:14:07,546.546 INFO    ] ================================================
[2026-06-27 07:14:07,561.561 INFO    ] Launching Daemon at Sat Jun 27 07:14:07 IST 2026
[2026-06-27 07:14:07,572.572 INFO    ] ================================================
[2026-06-27 07:14:07,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:14:07
[2026-06-27 07:14:08,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:14:08,366.366 INFO    ] Initializing speech engine...
[2026-06-27 07:14:08,376.376 INFO    ] 2026-06-27 07:14:08
[2026-06-27 07:14:08,580.580 INFO    ] 2026-06-27 07:14:08
[2026-06-27 07:14:08,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:14:08,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:14:08,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:14:08,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:14:08,987.987 INFO    ] time= 27/06/2026 07:14:08
[2026-06-27 07:14:09,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:14:09,026.026 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:14:09,099.099 INFO    ] No existing commands found in stream
[2026-06-27 07:14:14,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:14:14,110.110 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-27 07:14:15,647.647 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 07:14:15,649.649 INFO    ] Checking for system updates...
[2026-06-27 07:14:15,670.670 INFO    ] 200
[2026-06-27 07:14:15,672.672 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:14:15,702.702 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:14:15,703.703 INFO    ] No update needed
[2026-06-27 07:14:15,705.705 INFO    ] Checking for camera pi updates...
[2026-06-27 07:14:15,726.726 INFO    ] 200
[2026-06-27 07:14:15,727.727 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:14:15,751.751 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:14:15,786.786 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:14:15,787.787 INFO    ] No camera update needed
[2026-06-27 07:14:15,788.788 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:14:15,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:14:15,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:14:15,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:14:17,834.834 INFO    ] ================================================
[2026-06-27 07:14:17,850.850 INFO    ] Launching Daemon at Sat Jun 27 07:14:17 IST 2026
[2026-06-27 07:14:17,862.862 INFO    ] ================================================
[2026-06-27 07:14:18,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:14:18
[2026-06-27 07:14:18,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:14:18,716.716 INFO    ] Initializing speech engine...
[2026-06-27 07:14:18,722.722 INFO    ] 2026-06-27 07:14:18
[2026-06-27 07:14:18,927.927 INFO    ] 2026-06-27 07:14:18
[2026-06-27 07:14:18,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:14:19,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:14:19,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:14:19,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:14:19,342.342 INFO    ] time= 27/06/2026 07:14:19
[2026-06-27 07:14:19,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:14:19,376.376 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:14:19,444.444 INFO    ] No existing commands found in stream
[2026-06-27 07:14:24,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:14:24,457.457 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-27 07:14:27,512.512 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 07:14:27,514.514 INFO    ] Checking for system updates...
[2026-06-27 07:14:27,536.536 INFO    ] 200
[2026-06-27 07:14:27,537.537 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:14:27,572.572 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:14:27,574.574 INFO    ] No update needed
[2026-06-27 07:14:27,575.575 INFO    ] Checking for camera pi updates...
[2026-06-27 07:14:27,599.599 INFO    ] 200
[2026-06-27 07:14:27,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:14:27,627.627 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:14:27,669.669 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:14:27,670.670 INFO    ] No camera update needed
[2026-06-27 07:14:27,672.672 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:14:27,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:14:27,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:14:27,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:14:29,719.719 INFO    ] ================================================
[2026-06-27 07:14:29,735.735 INFO    ] Launching Daemon at Sat Jun 27 07:14:29 IST 2026
[2026-06-27 07:14:29,746.746 INFO    ] ================================================
[2026-06-27 07:14:30,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:14:30
[2026-06-27 07:14:30,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:14:30,533.533 INFO    ] Initializing speech engine...
[2026-06-27 07:14:30,536.536 INFO    ] 2026-06-27 07:14:30
[2026-06-27 07:14:30,739.739 INFO    ] 2026-06-27 07:14:30
[2026-06-27 07:14:30,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:14:30,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:14:30,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:14:31,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:14:31,136.136 INFO    ] time= 27/06/2026 07:14:31
[2026-06-27 07:14:31,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:14:31,180.180 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:14:31,251.251 INFO    ] No existing commands found in stream
[2026-06-27 07:14:36,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:14:36,268.268 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-27 07:14:40,247.247 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 07:14:40,249.249 INFO    ] Checking for system updates...
[2026-06-27 07:14:40,269.269 INFO    ] 200
[2026-06-27 07:14:40,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:14:40,302.302 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:14:40,303.303 INFO    ] No update needed
[2026-06-27 07:14:40,304.304 INFO    ] Checking for camera pi updates...
[2026-06-27 07:14:40,329.329 INFO    ] 200
[2026-06-27 07:14:40,331.331 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:14:40,354.354 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:14:40,387.387 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:14:40,389.389 INFO    ] No camera update needed
[2026-06-27 07:14:40,390.390 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:14:40,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:14:40,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:14:40,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:14:42,438.438 INFO    ] ================================================
[2026-06-27 07:14:42,454.454 INFO    ] Launching Daemon at Sat Jun 27 07:14:42 IST 2026
[2026-06-27 07:14:42,466.466 INFO    ] ================================================
[2026-06-27 07:14:42,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:14:42
[2026-06-27 07:14:43,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:14:43,270.270 INFO    ] Initializing speech engine...
[2026-06-27 07:14:43,278.278 INFO    ] 2026-06-27 07:14:43
[2026-06-27 07:14:43,492.492 INFO    ] 2026-06-27 07:14:43
[2026-06-27 07:14:43,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:14:43,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:14:43,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:14:43,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:14:43,929.929 INFO    ] time= 27/06/2026 07:14:43
[2026-06-27 07:14:43,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:14:43,946.946 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:14:44,013.013 INFO    ] No existing commands found in stream
[2026-06-27 07:14:49,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:14:49,025.025 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-27 07:14:52,144.144 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 07:14:52,145.145 INFO    ] Checking for system updates...
[2026-06-27 07:14:52,167.167 INFO    ] 200
[2026-06-27 07:14:52,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:14:52,202.202 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:14:52,204.204 INFO    ] No update needed
[2026-06-27 07:14:52,205.205 INFO    ] Checking for camera pi updates...
[2026-06-27 07:14:52,226.226 INFO    ] 200
[2026-06-27 07:14:52,227.227 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:14:52,252.252 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:14:52,397.397 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:14:52,398.398 INFO    ] No camera update needed
[2026-06-27 07:14:52,399.399 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:14:52,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:14:52,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:14:52,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:14:54,444.444 INFO    ] ================================================
[2026-06-27 07:14:54,459.459 INFO    ] Launching Daemon at Sat Jun 27 07:14:54 IST 2026
[2026-06-27 07:14:54,470.470 INFO    ] ================================================
[2026-06-27 07:14:54,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:14:54
[2026-06-27 07:14:55,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:14:55,292.292 INFO    ] Initializing speech engine...
[2026-06-27 07:14:55,297.297 INFO    ] 2026-06-27 07:14:55
[2026-06-27 07:14:55,502.502 INFO    ] 2026-06-27 07:14:55
[2026-06-27 07:14:55,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:14:55,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:14:55,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:14:55,848.848 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:14:55,918.918 INFO    ] time= 27/06/2026 07:14:55
[2026-06-27 07:14:55,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:14:55,948.948 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:14:56,016.016 INFO    ] No existing commands found in stream
[2026-06-27 07:15:01,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:15:01,028.028 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-27 07:15:03,460.460 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 07:15:03,462.462 INFO    ] Checking for system updates...
[2026-06-27 07:15:03,485.485 INFO    ] 200
[2026-06-27 07:15:03,486.486 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:15:03,517.517 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:15:03,518.518 INFO    ] No update needed
[2026-06-27 07:15:03,520.520 INFO    ] Checking for camera pi updates...
[2026-06-27 07:15:03,541.541 INFO    ] 200
[2026-06-27 07:15:03,542.542 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:15:03,566.566 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:15:03,593.593 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:15:03,595.595 INFO    ] No camera update needed
[2026-06-27 07:15:03,596.596 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:15:03,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:15:03,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:15:03,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:15:05,641.641 INFO    ] ================================================
[2026-06-27 07:15:05,656.656 INFO    ] Launching Daemon at Sat Jun 27 07:15:05 IST 2026
[2026-06-27 07:15:05,667.667 INFO    ] ================================================
[2026-06-27 07:15:06,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:15:06
[2026-06-27 07:15:06,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:15:06,509.509 INFO    ] Initializing speech engine...
[2026-06-27 07:15:06,515.515 INFO    ] 2026-06-27 07:15:06
[2026-06-27 07:15:06,728.728 INFO    ] 2026-06-27 07:15:06
[2026-06-27 07:15:06,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:15:06,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:15:06,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:15:07,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:15:07,129.129 INFO    ] time= 27/06/2026 07:15:07
[2026-06-27 07:15:07,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:15:07,181.181 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:15:07,254.254 INFO    ] No existing commands found in stream
[2026-06-27 07:15:12,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:15:12,271.271 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-27 07:15:15,255.255 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 07:15:15,257.257 INFO    ] Checking for system updates...
[2026-06-27 07:15:15,279.279 INFO    ] 200
[2026-06-27 07:15:15,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:15:15,317.317 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:15:15,318.318 INFO    ] No update needed
[2026-06-27 07:15:15,320.320 INFO    ] Checking for camera pi updates...
[2026-06-27 07:15:15,344.344 INFO    ] 200
[2026-06-27 07:15:15,346.346 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:15:15,371.371 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:15:15,418.418 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:15:15,419.419 INFO    ] No camera update needed
[2026-06-27 07:15:15,421.421 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:15:15,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:15:15,425.425 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:15:15,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:15:17,468.468 INFO    ] ================================================
[2026-06-27 07:15:17,483.483 INFO    ] Launching Daemon at Sat Jun 27 07:15:17 IST 2026
[2026-06-27 07:15:17,495.495 INFO    ] ================================================
[2026-06-27 07:15:17,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:15:17
[2026-06-27 07:15:18,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:15:18,311.311 INFO    ] Initializing speech engine...
[2026-06-27 07:15:18,316.316 INFO    ] 2026-06-27 07:15:18
[2026-06-27 07:15:18,521.521 INFO    ] 2026-06-27 07:15:18
[2026-06-27 07:15:18,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:15:18,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:15:18,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:15:18,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:15:18,936.936 INFO    ] time= 27/06/2026 07:15:18
[2026-06-27 07:15:18,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:15:18,968.968 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:15:19,036.036 INFO    ] No existing commands found in stream
[2026-06-27 07:15:24,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:15:24,048.048 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-27 07:15:27,523.523 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 07:15:27,525.525 INFO    ] Checking for system updates...
[2026-06-27 07:15:27,546.546 INFO    ] 200
[2026-06-27 07:15:27,548.548 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:15:27,581.581 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:15:27,582.582 INFO    ] No update needed
[2026-06-27 07:15:27,584.584 INFO    ] Checking for camera pi updates...
[2026-06-27 07:15:27,604.604 INFO    ] 200
[2026-06-27 07:15:27,606.606 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:15:27,630.630 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:15:27,670.670 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:15:27,671.671 INFO    ] No camera update needed
[2026-06-27 07:15:27,673.673 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:15:27,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:15:27,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:15:27,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:15:29,718.718 INFO    ] ================================================
[2026-06-27 07:15:29,734.734 INFO    ] Launching Daemon at Sat Jun 27 07:15:29 IST 2026
[2026-06-27 07:15:29,745.745 INFO    ] ================================================
[2026-06-27 07:15:30,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:15:30
[2026-06-27 07:15:30,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:15:30,524.524 INFO    ] Initializing speech engine...
[2026-06-27 07:15:30,532.532 INFO    ] 2026-06-27 07:15:30
[2026-06-27 07:15:30,748.748 INFO    ] 2026-06-27 07:15:30
[2026-06-27 07:15:30,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:15:30,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:15:30,974.974 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:15:31,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:15:31,158.158 INFO    ] time= 27/06/2026 07:15:31
[2026-06-27 07:15:31,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:15:31,201.201 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:15:31,272.272 INFO    ] No existing commands found in stream
[2026-06-27 07:15:36,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:15:36,284.284 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-27 07:15:39,315.315 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:15:39,317.317 INFO    ] Checking for system updates...
[2026-06-27 07:15:39,338.338 INFO    ] 200
[2026-06-27 07:15:39,339.339 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:15:39,373.373 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:15:39,374.374 INFO    ] No update needed
[2026-06-27 07:15:39,376.376 INFO    ] Checking for camera pi updates...
[2026-06-27 07:15:39,398.398 INFO    ] 200
[2026-06-27 07:15:39,399.399 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:15:39,425.425 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:15:39,464.464 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:15:39,466.466 INFO    ] No camera update needed
[2026-06-27 07:15:39,467.467 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:15:39,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:15:39,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:15:39,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:15:41,516.516 INFO    ] ================================================
[2026-06-27 07:15:41,531.531 INFO    ] Launching Daemon at Sat Jun 27 07:15:41 IST 2026
[2026-06-27 07:15:41,542.542 INFO    ] ================================================
[2026-06-27 07:15:41,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:15:41
[2026-06-27 07:15:42,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:15:42,323.323 INFO    ] Initializing speech engine...
[2026-06-27 07:15:42,328.328 INFO    ] 2026-06-27 07:15:42
[2026-06-27 07:15:42,534.534 INFO    ] 2026-06-27 07:15:42
[2026-06-27 07:15:42,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:15:42,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:15:42,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:15:42,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:15:42,949.949 INFO    ] time= 27/06/2026 07:15:42
[2026-06-27 07:15:42,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:15:42,980.980 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:15:43,046.046 INFO    ] No existing commands found in stream
[2026-06-27 07:15:48,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:15:48,058.058 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-27 07:15:51,867.867 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 07:15:51,869.869 INFO    ] Checking for system updates...
[2026-06-27 07:15:51,891.891 INFO    ] 200
[2026-06-27 07:15:51,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:15:51,925.925 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:15:51,927.927 INFO    ] No update needed
[2026-06-27 07:15:51,928.928 INFO    ] Checking for camera pi updates...
[2026-06-27 07:15:51,949.949 INFO    ] 200
[2026-06-27 07:15:51,951.951 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:15:51,976.976 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:15:52,020.020 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:15:52,021.021 INFO    ] No camera update needed
[2026-06-27 07:15:52,023.023 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:15:52,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:15:52,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:15:52,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:15:54,070.070 INFO    ] ================================================
[2026-06-27 07:15:54,085.085 INFO    ] Launching Daemon at Sat Jun 27 07:15:54 IST 2026
[2026-06-27 07:15:54,095.095 INFO    ] ================================================
[2026-06-27 07:15:54,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:15:54
[2026-06-27 07:15:54,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:15:54,978.978 INFO    ] Initializing speech engine...
[2026-06-27 07:15:54,991.991 INFO    ] 2026-06-27 07:15:54
[2026-06-27 07:15:55,205.205 INFO    ] 2026-06-27 07:15:55
[2026-06-27 07:15:55,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:15:55,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:15:55,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:15:55,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:15:55,618.618 INFO    ] time= 27/06/2026 07:15:55
[2026-06-27 07:15:55,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:15:55,664.664 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:15:55,736.736 INFO    ] No existing commands found in stream
[2026-06-27 07:16:00,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:16:00,749.749 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-27 07:16:03,205.205 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 07:16:03,207.207 INFO    ] Checking for system updates...
[2026-06-27 07:16:03,228.228 INFO    ] 200
[2026-06-27 07:16:03,230.230 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:16:03,262.262 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:16:03,264.264 INFO    ] No update needed
[2026-06-27 07:16:03,266.266 INFO    ] Checking for camera pi updates...
[2026-06-27 07:16:03,286.286 INFO    ] 200
[2026-06-27 07:16:03,287.287 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:16:03,312.312 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:16:03,335.335 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:16:03,337.337 INFO    ] No camera update needed
[2026-06-27 07:16:03,338.338 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:16:03,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:16:03,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:16:03,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:16:05,392.392 INFO    ] ================================================
[2026-06-27 07:16:05,409.409 INFO    ] Launching Daemon at Sat Jun 27 07:16:05 IST 2026
[2026-06-27 07:16:05,421.421 INFO    ] ================================================
[2026-06-27 07:16:05,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:16:05
[2026-06-27 07:16:06,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:16:06,226.226 INFO    ] Initializing speech engine...
[2026-06-27 07:16:06,232.232 INFO    ] 2026-06-27 07:16:06
[2026-06-27 07:16:06,436.436 INFO    ] 2026-06-27 07:16:06
[2026-06-27 07:16:06,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:16:06,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:16:06,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:16:06,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:16:06,849.849 INFO    ] time= 27/06/2026 07:16:06
[2026-06-27 07:16:06,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:16:06,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:16:06,966.966 INFO    ] No existing commands found in stream
[2026-06-27 07:16:11,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:16:11,981.981 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-27 07:16:12,866.866 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:16:12,867.867 INFO    ] Checking for system updates...
[2026-06-27 07:16:12,888.888 INFO    ] 200
[2026-06-27 07:16:12,890.890 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:16:12,920.920 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:16:12,922.922 INFO    ] No update needed
[2026-06-27 07:16:12,923.923 INFO    ] Checking for camera pi updates...
[2026-06-27 07:16:12,943.943 INFO    ] 200
[2026-06-27 07:16:12,944.944 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:16:12,968.968 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:16:13,013.013 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:16:13,015.015 INFO    ] No camera update needed
[2026-06-27 07:16:13,016.016 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:16:13,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:16:13,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:16:13,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:16:15,062.062 INFO    ] ================================================
[2026-06-27 07:16:15,078.078 INFO    ] Launching Daemon at Sat Jun 27 07:16:15 IST 2026
[2026-06-27 07:16:15,089.089 INFO    ] ================================================
[2026-06-27 07:16:15,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:16:15
[2026-06-27 07:16:15,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:16:15,875.875 INFO    ] Initializing speech engine...
[2026-06-27 07:16:15,880.880 INFO    ] 2026-06-27 07:16:15
[2026-06-27 07:16:16,109.109 INFO    ] 2026-06-27 07:16:16
[2026-06-27 07:16:16,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:16:16,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:16:16,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:16:16,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:16:16,536.536 INFO    ] time= 27/06/2026 07:16:16
[2026-06-27 07:16:16,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:16:16,582.582 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:16:16,656.656 INFO    ] No existing commands found in stream
[2026-06-27 07:16:21,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:16:21,669.669 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-27 07:16:22,223.223 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 07:16:22,225.225 INFO    ] Checking for system updates...
[2026-06-27 07:16:22,246.246 INFO    ] 200
[2026-06-27 07:16:22,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:16:22,277.277 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:16:22,279.279 INFO    ] No update needed
[2026-06-27 07:16:22,280.280 INFO    ] Checking for camera pi updates...
[2026-06-27 07:16:22,300.300 INFO    ] 200
[2026-06-27 07:16:22,301.301 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:16:22,325.325 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:16:22,366.366 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:16:22,367.367 INFO    ] No camera update needed
[2026-06-27 07:16:22,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:16:22,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:16:22,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:16:22,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:16:24,416.416 INFO    ] ================================================
[2026-06-27 07:16:24,432.432 INFO    ] Launching Daemon at Sat Jun 27 07:16:24 IST 2026
[2026-06-27 07:16:24,443.443 INFO    ] ================================================
[2026-06-27 07:16:24,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:16:24
[2026-06-27 07:16:25,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:16:25,226.226 INFO    ] Initializing speech engine...
[2026-06-27 07:16:25,231.231 INFO    ] 2026-06-27 07:16:25
[2026-06-27 07:16:25,458.458 INFO    ] 2026-06-27 07:16:25
[2026-06-27 07:16:25,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:16:25,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:16:25,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:16:25,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:16:25,884.884 INFO    ] time= 27/06/2026 07:16:25
[2026-06-27 07:16:25,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:16:25,933.933 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:16:26,004.004 INFO    ] No existing commands found in stream
[2026-06-27 07:16:31,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:16:31,016.016 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-27 07:16:35,388.388 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 07:16:35,389.389 INFO    ] Checking for system updates...
[2026-06-27 07:16:35,412.412 INFO    ] 200
[2026-06-27 07:16:35,413.413 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:16:35,443.443 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:16:35,445.445 INFO    ] No update needed
[2026-06-27 07:16:35,446.446 INFO    ] Checking for camera pi updates...
[2026-06-27 07:16:35,469.469 INFO    ] 200
[2026-06-27 07:16:35,470.470 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:16:35,495.495 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:16:35,530.530 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:16:35,532.532 INFO    ] No camera update needed
[2026-06-27 07:16:35,533.533 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:16:35,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:16:35,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:16:35,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:16:37,579.579 INFO    ] ================================================
[2026-06-27 07:16:37,595.595 INFO    ] Launching Daemon at Sat Jun 27 07:16:37 IST 2026
[2026-06-27 07:16:37,606.606 INFO    ] ================================================
[2026-06-27 07:16:37,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:16:37
[2026-06-27 07:16:38,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:16:38,435.435 INFO    ] Initializing speech engine...
[2026-06-27 07:16:38,441.441 INFO    ] 2026-06-27 07:16:38
[2026-06-27 07:16:38,648.648 INFO    ] 2026-06-27 07:16:38
[2026-06-27 07:16:38,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:16:38,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:16:38,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:16:39,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:16:39,090.090 INFO    ] time= 27/06/2026 07:16:39
[2026-06-27 07:16:39,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:16:39,097.097 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:16:39,162.162 INFO    ] No existing commands found in stream
[2026-06-27 07:16:44,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:16:44,176.176 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-27 07:16:45,747.747 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 07:16:45,749.749 INFO    ] Checking for system updates...
[2026-06-27 07:16:45,769.769 INFO    ] 200
[2026-06-27 07:16:45,771.771 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:16:45,802.802 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:16:45,803.803 INFO    ] No update needed
[2026-06-27 07:16:45,805.805 INFO    ] Checking for camera pi updates...
[2026-06-27 07:16:45,825.825 INFO    ] 200
[2026-06-27 07:16:45,826.826 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:16:45,849.849 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:16:45,891.891 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:16:45,893.893 INFO    ] No camera update needed
[2026-06-27 07:16:45,894.894 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:16:45,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:16:45,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:16:45,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:16:47,941.941 INFO    ] ================================================
[2026-06-27 07:16:47,956.956 INFO    ] Launching Daemon at Sat Jun 27 07:16:47 IST 2026
[2026-06-27 07:16:47,968.968 INFO    ] ================================================
[2026-06-27 07:16:48,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:16:48
[2026-06-27 07:16:48,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:16:48,761.761 INFO    ] Initializing speech engine...
[2026-06-27 07:16:48,765.765 INFO    ] 2026-06-27 07:16:48
[2026-06-27 07:16:48,983.983 INFO    ] 2026-06-27 07:16:48
[2026-06-27 07:16:49,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:16:49,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:16:49,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:16:49,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:16:49,349.349 INFO    ] time= 27/06/2026 07:16:49
[2026-06-27 07:16:49,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:16:49,431.431 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:16:49,552.552 INFO    ] No existing commands found in stream
[2026-06-27 07:16:54,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:16:54,575.575 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-27 07:16:58,863.863 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 07:16:58,865.865 INFO    ] Checking for system updates...
[2026-06-27 07:16:58,886.886 INFO    ] 200
[2026-06-27 07:16:58,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:16:58,920.920 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:16:58,922.922 INFO    ] No update needed
[2026-06-27 07:16:58,923.923 INFO    ] Checking for camera pi updates...
[2026-06-27 07:16:58,942.942 INFO    ] 200
[2026-06-27 07:16:58,944.944 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:16:58,967.967 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:16:59,114.114 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:16:59,116.116 INFO    ] No camera update needed
[2026-06-27 07:16:59,117.117 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:16:59,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:16:59,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:16:59,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:17:01,162.162 INFO    ] ================================================
[2026-06-27 07:17:01,178.178 INFO    ] Launching Daemon at Sat Jun 27 07:17:01 IST 2026
[2026-06-27 07:17:01,189.189 INFO    ] ================================================
[2026-06-27 07:17:01,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:17:01
[2026-06-27 07:17:01,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:17:02,163.163 INFO    ] Initializing speech engine...
[2026-06-27 07:17:02,173.173 INFO    ] 2026-06-27 07:17:02
[2026-06-27 07:17:02,402.402 INFO    ] 2026-06-27 07:17:02
[2026-06-27 07:17:02,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:17:02,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:17:02,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:17:02,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:17:02,889.889 INFO    ] time= 27/06/2026 07:17:02
[2026-06-27 07:17:02,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:17:02,915.915 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:17:02,987.987 INFO    ] No existing commands found in stream
[2026-06-27 07:17:07,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:17:07,999.999 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-27 07:17:11,767.767 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 07:17:11,769.769 INFO    ] Checking for system updates...
[2026-06-27 07:17:11,791.791 INFO    ] 200
[2026-06-27 07:17:11,792.792 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:17:11,824.824 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:17:11,826.826 INFO    ] No update needed
[2026-06-27 07:17:11,827.827 INFO    ] Checking for camera pi updates...
[2026-06-27 07:17:11,853.853 INFO    ] 200
[2026-06-27 07:17:11,854.854 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:17:11,878.878 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:17:11,914.914 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:17:11,916.916 INFO    ] No camera update needed
[2026-06-27 07:17:11,917.917 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:17:11,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:17:11,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:17:11,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:17:13,965.965 INFO    ] ================================================
[2026-06-27 07:17:13,981.981 INFO    ] Launching Daemon at Sat Jun 27 07:17:13 IST 2026
[2026-06-27 07:17:13,993.993 INFO    ] ================================================
[2026-06-27 07:17:14,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:17:14
[2026-06-27 07:17:14,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:17:14,812.812 INFO    ] Initializing speech engine...
[2026-06-27 07:17:14,818.818 INFO    ] 2026-06-27 07:17:14
[2026-06-27 07:17:15,023.023 INFO    ] 2026-06-27 07:17:15
[2026-06-27 07:17:15,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:17:15,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:17:15,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:17:15,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:17:15,445.445 INFO    ] time= 27/06/2026 07:17:15
[2026-06-27 07:17:15,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:17:15,476.476 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:17:15,572.572 INFO    ] No existing commands found in stream
[2026-06-27 07:17:20,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:17:20,584.584 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-27 07:17:23,440.440 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:17:23,441.441 INFO    ] Checking for system updates...
[2026-06-27 07:17:23,466.466 INFO    ] 200
[2026-06-27 07:17:23,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:17:23,504.504 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:17:23,506.506 INFO    ] No update needed
[2026-06-27 07:17:23,507.507 INFO    ] Checking for camera pi updates...
[2026-06-27 07:17:23,530.530 INFO    ] 200
[2026-06-27 07:17:23,532.532 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:17:23,557.557 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:17:23,598.598 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:17:23,599.599 INFO    ] No camera update needed
[2026-06-27 07:17:23,601.601 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:17:23,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:17:23,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:17:23,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:17:25,632.632 INFO    ] ================================================
[2026-06-27 07:17:25,641.641 INFO    ] Launching Daemon at Sat Jun 27 07:17:25 IST 2026
[2026-06-27 07:17:25,647.647 INFO    ] ================================================
[2026-06-27 07:17:25,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:17:25
[2026-06-27 07:17:26,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:17:26,470.470 INFO    ] Initializing speech engine...
[2026-06-27 07:17:26,478.478 INFO    ] 2026-06-27 07:17:26
[2026-06-27 07:17:26,688.688 INFO    ] 2026-06-27 07:17:26
[2026-06-27 07:17:26,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:17:26,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:17:26,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:17:27,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:17:27,133.133 INFO    ] time= 27/06/2026 07:17:27
[2026-06-27 07:17:27,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:17:27,164.164 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:17:27,231.231 INFO    ] No existing commands found in stream
[2026-06-27 07:17:32,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:17:32,242.242 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-27 07:17:35,864.864 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 07:17:35,866.866 INFO    ] Checking for system updates...
[2026-06-27 07:17:35,886.886 INFO    ] 200
[2026-06-27 07:17:35,888.888 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:17:35,921.921 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:17:35,922.922 INFO    ] No update needed
[2026-06-27 07:17:35,923.923 INFO    ] Checking for camera pi updates...
[2026-06-27 07:17:35,948.948 INFO    ] 200
[2026-06-27 07:17:35,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:17:35,972.972 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:17:36,009.009 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:17:36,010.010 INFO    ] No camera update needed
[2026-06-27 07:17:36,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:17:36,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:17:36,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:17:36,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:17:38,059.059 INFO    ] ================================================
[2026-06-27 07:17:38,081.081 INFO    ] Launching Daemon at Sat Jun 27 07:17:38 IST 2026
[2026-06-27 07:17:38,090.090 INFO    ] ================================================
[2026-06-27 07:17:38,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:17:38
[2026-06-27 07:17:38,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:17:38,923.923 INFO    ] Initializing speech engine...
[2026-06-27 07:17:38,927.927 INFO    ] 2026-06-27 07:17:38
[2026-06-27 07:17:39,136.136 INFO    ] 2026-06-27 07:17:39
[2026-06-27 07:17:39,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:17:39,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:17:39,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:17:39,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:17:39,584.584 INFO    ] time= 27/06/2026 07:17:39
[2026-06-27 07:17:39,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:17:39,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:17:39,657.657 INFO    ] No existing commands found in stream
[2026-06-27 07:17:44,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:17:44,671.671 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-27 07:17:45,894.894 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 07:17:45,896.896 INFO    ] Checking for system updates...
[2026-06-27 07:17:45,917.917 INFO    ] 200
[2026-06-27 07:17:45,918.918 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:17:45,951.951 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:17:45,953.953 INFO    ] No update needed
[2026-06-27 07:17:45,954.954 INFO    ] Checking for camera pi updates...
[2026-06-27 07:17:45,975.975 INFO    ] 200
[2026-06-27 07:17:45,976.976 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:17:46,002.002 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:17:46,054.054 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:17:46,056.056 INFO    ] No camera update needed
[2026-06-27 07:17:46,057.057 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:17:46,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:17:46,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:17:46,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:17:48,102.102 INFO    ] ================================================
[2026-06-27 07:17:48,118.118 INFO    ] Launching Daemon at Sat Jun 27 07:17:48 IST 2026
[2026-06-27 07:17:48,129.129 INFO    ] ================================================
[2026-06-27 07:17:48,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:17:48
[2026-06-27 07:17:48,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:17:48,935.935 INFO    ] Initializing speech engine...
[2026-06-27 07:17:48,945.945 INFO    ] 2026-06-27 07:17:48
[2026-06-27 07:17:49,150.150 INFO    ] 2026-06-27 07:17:49
[2026-06-27 07:17:49,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:17:49,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:17:49,367.367 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:17:49,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:17:49,571.571 INFO    ] time= 27/06/2026 07:17:49
[2026-06-27 07:17:49,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:17:49,602.602 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:17:49,669.669 INFO    ] No existing commands found in stream
[2026-06-27 07:17:54,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:17:54,686.686 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-27 07:17:58,887.887 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:17:58,889.889 INFO    ] Checking for system updates...
[2026-06-27 07:17:58,909.909 INFO    ] 200
[2026-06-27 07:17:58,911.911 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:17:58,942.942 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:17:58,943.943 INFO    ] No update needed
[2026-06-27 07:17:58,944.944 INFO    ] Checking for camera pi updates...
[2026-06-27 07:17:58,966.966 INFO    ] 200
[2026-06-27 07:17:58,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:17:58,992.992 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:17:59,026.026 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:17:59,027.027 INFO    ] No camera update needed
[2026-06-27 07:17:59,028.028 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:17:59,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:17:59,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:17:59,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:18:01,073.073 INFO    ] ================================================
[2026-06-27 07:18:01,088.088 INFO    ] Launching Daemon at Sat Jun 27 07:18:01 IST 2026
[2026-06-27 07:18:01,099.099 INFO    ] ================================================
[2026-06-27 07:18:01,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:18:01
[2026-06-27 07:18:01,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:18:02,025.025 INFO    ] Initializing speech engine...
[2026-06-27 07:18:02,030.030 INFO    ] 2026-06-27 07:18:02
[2026-06-27 07:18:02,271.271 INFO    ] 2026-06-27 07:18:02
[2026-06-27 07:18:02,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:18:02,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:18:02,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:18:02,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:18:02,754.754 INFO    ] time= 27/06/2026 07:18:02
[2026-06-27 07:18:02,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:18:02,815.815 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:18:02,891.891 INFO    ] No existing commands found in stream
[2026-06-27 07:18:07,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:18:07,909.909 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-27 07:18:11,750.750 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:18:11,752.752 INFO    ] Checking for system updates...
[2026-06-27 07:18:11,787.787 INFO    ] 200
[2026-06-27 07:18:11,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-27 07:18:11,791.791 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-27 07:18:11,792.792 INFO    ] Checking for camera pi updates...
[2026-06-27 07:18:11,830.830 INFO    ] 200
[2026-06-27 07:18:11,833.833 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-27 07:18:11,837.837 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-27 07:18:11,840.840 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:18:11,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:18:11,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:18:11,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:18:13,891.891 INFO    ] ================================================
[2026-06-27 07:18:13,906.906 INFO    ] Launching Daemon at Sat Jun 27 07:18:13 IST 2026
[2026-06-27 07:18:13,918.918 INFO    ] ================================================
[2026-06-27 07:18:14,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:18:14
[2026-06-27 07:18:14,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:18:14,750.750 INFO    ] Initializing speech engine...
[2026-06-27 07:18:14,756.756 INFO    ] 2026-06-27 07:18:14
[2026-06-27 07:18:14,960.960 INFO    ] 2026-06-27 07:18:14
[2026-06-27 07:18:14,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:18:15,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:18:15,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:18:15,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:18:15,380.380 INFO    ] time= 27/06/2026 07:18:15
[2026-06-27 07:18:15,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:18:15,407.407 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:18:15,474.474 INFO    ] No existing commands found in stream
[2026-06-27 07:18:20,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:18:20,486.486 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-27 07:18:21,410.410 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 07:18:21,411.411 INFO    ] Checking for system updates...
[2026-06-27 07:18:21,434.434 INFO    ] 200
[2026-06-27 07:18:21,436.436 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:18:21,469.469 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:18:21,471.471 INFO    ] No update needed
[2026-06-27 07:18:21,472.472 INFO    ] Checking for camera pi updates...
[2026-06-27 07:18:21,494.494 INFO    ] 200
[2026-06-27 07:18:21,495.495 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:18:21,519.519 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:18:21,565.565 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:18:21,567.567 INFO    ] No camera update needed
[2026-06-27 07:18:21,568.568 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:18:21,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:18:21,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:18:21,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:18:23,618.618 INFO    ] ================================================
[2026-06-27 07:18:23,633.633 INFO    ] Launching Daemon at Sat Jun 27 07:18:23 IST 2026
[2026-06-27 07:18:23,644.644 INFO    ] ================================================
[2026-06-27 07:18:24,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:18:24
[2026-06-27 07:18:24,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:18:24,504.504 INFO    ] Initializing speech engine...
[2026-06-27 07:18:24,509.509 INFO    ] 2026-06-27 07:18:24
[2026-06-27 07:18:24,724.724 INFO    ] 2026-06-27 07:18:24
[2026-06-27 07:18:24,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:18:24,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:18:24,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:18:25,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:18:25,152.152 INFO    ] time= 27/06/2026 07:18:25
[2026-06-27 07:18:25,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:18:25,185.185 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:18:25,277.277 INFO    ] No existing commands found in stream
[2026-06-27 07:18:30,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:18:30,295.295 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-27 07:18:32,168.168 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:18:32,170.170 INFO    ] Checking for system updates...
[2026-06-27 07:18:32,194.194 INFO    ] 200
[2026-06-27 07:18:32,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:18:32,250.250 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:18:32,253.253 INFO    ] No update needed
[2026-06-27 07:18:32,255.255 INFO    ] Checking for camera pi updates...
[2026-06-27 07:18:32,278.278 INFO    ] 200
[2026-06-27 07:18:32,279.279 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:18:32,307.307 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:18:32,344.344 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:18:32,346.346 INFO    ] No camera update needed
[2026-06-27 07:18:32,347.347 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:18:32,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:18:32,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:18:32,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:18:34,397.397 INFO    ] ================================================
[2026-06-27 07:18:34,412.412 INFO    ] Launching Daemon at Sat Jun 27 07:18:34 IST 2026
[2026-06-27 07:18:34,423.423 INFO    ] ================================================
[2026-06-27 07:18:34,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:18:34
[2026-06-27 07:18:35,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:18:35,218.218 INFO    ] Initializing speech engine...
[2026-06-27 07:18:35,223.223 INFO    ] 2026-06-27 07:18:35
[2026-06-27 07:18:35,416.416 INFO    ] 2026-06-27 07:18:35
[2026-06-27 07:18:35,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:18:35,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:18:35,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:18:35,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:18:35,907.907 INFO    ] time= 27/06/2026 07:18:35
[2026-06-27 07:18:35,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:18:35,950.950 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:18:36,026.026 INFO    ] No existing commands found in stream
[2026-06-27 07:18:41,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:18:41,040.040 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-27 07:18:45,041.041 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 07:18:45,043.043 INFO    ] Checking for system updates...
[2026-06-27 07:18:45,065.065 INFO    ] 200
[2026-06-27 07:18:45,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:18:45,098.098 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:18:45,099.099 INFO    ] No update needed
[2026-06-27 07:18:45,101.101 INFO    ] Checking for camera pi updates...
[2026-06-27 07:18:45,121.121 INFO    ] 200
[2026-06-27 07:18:45,122.122 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:18:45,146.146 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:18:45,182.182 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:18:45,184.184 INFO    ] No camera update needed
[2026-06-27 07:18:45,185.185 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:18:45,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:18:45,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:18:45,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:18:47,232.232 INFO    ] ================================================
[2026-06-27 07:18:47,248.248 INFO    ] Launching Daemon at Sat Jun 27 07:18:47 IST 2026
[2026-06-27 07:18:47,259.259 INFO    ] ================================================
[2026-06-27 07:18:47,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:18:47
[2026-06-27 07:18:47,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:18:48,131.131 INFO    ] Initializing speech engine...
[2026-06-27 07:18:48,136.136 INFO    ] 2026-06-27 07:18:48
[2026-06-27 07:18:48,344.344 INFO    ] 2026-06-27 07:18:48
[2026-06-27 07:18:48,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:18:48,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:18:48,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:18:48,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:18:48,768.768 INFO    ] time= 27/06/2026 07:18:48
[2026-06-27 07:18:48,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:18:48,796.796 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:18:48,861.861 INFO    ] No existing commands found in stream
[2026-06-27 07:18:53,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:18:53,876.876 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-27 07:18:55,405.405 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 07:18:55,406.406 INFO    ] Checking for system updates...
[2026-06-27 07:18:55,428.428 INFO    ] 200
[2026-06-27 07:18:55,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:18:55,462.462 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:18:55,463.463 INFO    ] No update needed
[2026-06-27 07:18:55,465.465 INFO    ] Checking for camera pi updates...
[2026-06-27 07:18:55,487.487 INFO    ] 200
[2026-06-27 07:18:55,488.488 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:18:55,516.516 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:18:55,555.555 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:18:55,557.557 INFO    ] No camera update needed
[2026-06-27 07:18:55,558.558 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:18:55,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:18:55,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:18:55,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:18:57,604.604 INFO    ] ================================================
[2026-06-27 07:18:57,619.619 INFO    ] Launching Daemon at Sat Jun 27 07:18:57 IST 2026
[2026-06-27 07:18:57,630.630 INFO    ] ================================================
[2026-06-27 07:18:58,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:18:58
[2026-06-27 07:18:58,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:18:58,508.508 INFO    ] Initializing speech engine...
[2026-06-27 07:18:58,518.518 INFO    ] 2026-06-27 07:18:58
[2026-06-27 07:18:58,732.732 INFO    ] 2026-06-27 07:18:58
[2026-06-27 07:18:58,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:18:58,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:18:58,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:18:59,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:18:59,160.160 INFO    ] time= 27/06/2026 07:18:59
[2026-06-27 07:18:59,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:18:59,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:18:59,259.259 INFO    ] No existing commands found in stream
[2026-06-27 07:19:04,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:19:04,277.277 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-27 07:19:05,486.486 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 07:19:05,488.488 INFO    ] Checking for system updates...
[2026-06-27 07:19:05,508.508 INFO    ] 200
[2026-06-27 07:19:05,510.510 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:19:05,540.540 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:19:05,542.542 INFO    ] No update needed
[2026-06-27 07:19:05,543.543 INFO    ] Checking for camera pi updates...
[2026-06-27 07:19:05,563.563 INFO    ] 200
[2026-06-27 07:19:05,564.564 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:19:05,587.587 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:19:05,638.638 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:19:05,639.639 INFO    ] No camera update needed
[2026-06-27 07:19:05,640.640 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:19:05,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:19:05,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:19:05,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:19:07,687.687 INFO    ] ================================================
[2026-06-27 07:19:07,702.702 INFO    ] Launching Daemon at Sat Jun 27 07:19:07 IST 2026
[2026-06-27 07:19:07,713.713 INFO    ] ================================================
[2026-06-27 07:19:08,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:19:08
[2026-06-27 07:19:08,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:19:08,509.509 INFO    ] Initializing speech engine...
[2026-06-27 07:19:08,522.522 INFO    ] 2026-06-27 07:19:08
[2026-06-27 07:19:08,744.744 INFO    ] 2026-06-27 07:19:08
[2026-06-27 07:19:08,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:19:08,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:19:08,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:19:09,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:19:09,170.170 INFO    ] time= 27/06/2026 07:19:09
[2026-06-27 07:19:09,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:19:09,234.234 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:19:09,312.312 INFO    ] No existing commands found in stream
[2026-06-27 07:19:14,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:19:14,324.324 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-27 07:19:15,130.130 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:19:15,131.131 INFO    ] Checking for system updates...
[2026-06-27 07:19:15,152.152 INFO    ] 200
[2026-06-27 07:19:15,153.153 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:19:15,184.184 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:19:15,186.186 INFO    ] No update needed
[2026-06-27 07:19:15,187.187 INFO    ] Checking for camera pi updates...
[2026-06-27 07:19:15,207.207 INFO    ] 200
[2026-06-27 07:19:15,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:19:15,231.231 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:19:15,276.276 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:19:15,278.278 INFO    ] No camera update needed
[2026-06-27 07:19:15,279.279 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:19:15,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:19:15,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:19:15,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:19:17,325.325 INFO    ] ================================================
[2026-06-27 07:19:17,341.341 INFO    ] Launching Daemon at Sat Jun 27 07:19:17 IST 2026
[2026-06-27 07:19:17,352.352 INFO    ] ================================================
[2026-06-27 07:19:17,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:19:17
[2026-06-27 07:19:18,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:19:18,169.169 INFO    ] Initializing speech engine...
[2026-06-27 07:19:18,174.174 INFO    ] 2026-06-27 07:19:18
[2026-06-27 07:19:18,380.380 INFO    ] 2026-06-27 07:19:18
[2026-06-27 07:19:18,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:19:18,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:19:18,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:19:18,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:19:18,799.799 INFO    ] time= 27/06/2026 07:19:18
[2026-06-27 07:19:18,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:19:18,827.827 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:19:18,894.894 INFO    ] No existing commands found in stream
[2026-06-27 07:19:23,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:19:23,911.911 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-27 07:19:27,240.240 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 07:19:27,242.242 INFO    ] Checking for system updates...
[2026-06-27 07:19:27,265.265 INFO    ] 200
[2026-06-27 07:19:27,266.266 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:19:27,298.298 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:19:27,300.300 INFO    ] No update needed
[2026-06-27 07:19:27,301.301 INFO    ] Checking for camera pi updates...
[2026-06-27 07:19:27,322.322 INFO    ] 200
[2026-06-27 07:19:27,324.324 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:19:27,348.348 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:19:27,395.395 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:19:27,396.396 INFO    ] No camera update needed
[2026-06-27 07:19:27,398.398 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:19:27,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:19:27,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:19:27,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:19:29,450.450 INFO    ] ================================================
[2026-06-27 07:19:29,466.466 INFO    ] Launching Daemon at Sat Jun 27 07:19:29 IST 2026
[2026-06-27 07:19:29,476.476 INFO    ] ================================================
[2026-06-27 07:19:29,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:19:29
[2026-06-27 07:19:30,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:19:30,316.316 INFO    ] Initializing speech engine...
[2026-06-27 07:19:30,320.320 INFO    ] 2026-06-27 07:19:30
[2026-06-27 07:19:30,529.529 INFO    ] 2026-06-27 07:19:30
[2026-06-27 07:19:30,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:19:30,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:19:30,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:19:30,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:19:30,950.950 INFO    ] time= 27/06/2026 07:19:30
[2026-06-27 07:19:30,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:19:30,979.979 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:19:31,047.047 INFO    ] No existing commands found in stream
[2026-06-27 07:19:36,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:19:36,080.080 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-27 07:19:39,401.401 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 07:19:39,402.402 INFO    ] Checking for system updates...
[2026-06-27 07:19:39,425.425 INFO    ] 200
[2026-06-27 07:19:39,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:19:39,458.458 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:19:39,459.459 INFO    ] No update needed
[2026-06-27 07:19:39,461.461 INFO    ] Checking for camera pi updates...
[2026-06-27 07:19:39,481.481 INFO    ] 200
[2026-06-27 07:19:39,482.482 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:19:39,506.506 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:19:39,548.548 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:19:39,550.550 INFO    ] No camera update needed
[2026-06-27 07:19:39,551.551 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:19:39,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:19:39,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:19:39,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:19:41,601.601 INFO    ] ================================================
[2026-06-27 07:19:41,616.616 INFO    ] Launching Daemon at Sat Jun 27 07:19:41 IST 2026
[2026-06-27 07:19:41,627.627 INFO    ] ================================================
[2026-06-27 07:19:42,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:19:42
[2026-06-27 07:19:42,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:19:42,496.496 INFO    ] Initializing speech engine...
[2026-06-27 07:19:42,507.507 INFO    ] 2026-06-27 07:19:42
[2026-06-27 07:19:42,714.714 INFO    ] 2026-06-27 07:19:42
[2026-06-27 07:19:42,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:19:42,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:19:42,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:19:43,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:19:43,152.152 INFO    ] time= 27/06/2026 07:19:43
[2026-06-27 07:19:43,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:19:43,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:19:43,236.236 INFO    ] No existing commands found in stream
[2026-06-27 07:19:48,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:19:48,254.254 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-27 07:19:51,733.733 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 07:19:51,734.734 INFO    ] Checking for system updates...
[2026-06-27 07:19:51,756.756 INFO    ] 200
[2026-06-27 07:19:51,758.758 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:19:51,788.788 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:19:51,789.789 INFO    ] No update needed
[2026-06-27 07:19:51,791.791 INFO    ] Checking for camera pi updates...
[2026-06-27 07:19:51,810.810 INFO    ] 200
[2026-06-27 07:19:51,811.811 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:19:51,835.835 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:19:51,885.885 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:19:51,887.887 INFO    ] No camera update needed
[2026-06-27 07:19:51,888.888 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:19:51,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:19:51,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:19:51,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:19:53,934.934 INFO    ] ================================================
[2026-06-27 07:19:53,950.950 INFO    ] Launching Daemon at Sat Jun 27 07:19:53 IST 2026
[2026-06-27 07:19:53,961.961 INFO    ] ================================================
[2026-06-27 07:19:54,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:19:54
[2026-06-27 07:19:54,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:19:54,755.755 INFO    ] Initializing speech engine...
[2026-06-27 07:19:54,759.759 INFO    ] 2026-06-27 07:19:54
[2026-06-27 07:19:54,964.964 INFO    ] 2026-06-27 07:19:54
[2026-06-27 07:19:54,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:19:55,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:19:55,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:19:55,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:19:55,383.383 INFO    ] time= 27/06/2026 07:19:55
[2026-06-27 07:19:55,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:19:55,412.412 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:19:55,480.480 INFO    ] No existing commands found in stream
[2026-06-27 07:20:00,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:20:00,491.491 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-27 07:20:02,041.041 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 07:20:02,044.044 INFO    ] Checking for system updates...
[2026-06-27 07:20:02,075.075 INFO    ] 200
[2026-06-27 07:20:02,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:20:02,122.122 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:20:02,124.124 INFO    ] No update needed
[2026-06-27 07:20:02,127.127 INFO    ] Checking for camera pi updates...
[2026-06-27 07:20:02,157.157 INFO    ] 200
[2026-06-27 07:20:02,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:20:02,194.194 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:20:02,229.229 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:20:02,231.231 INFO    ] No camera update needed
[2026-06-27 07:20:02,233.233 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:20:02,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:20:02,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:20:02,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:20:04,277.277 INFO    ] ================================================
[2026-06-27 07:20:04,292.292 INFO    ] Launching Daemon at Sat Jun 27 07:20:04 IST 2026
[2026-06-27 07:20:04,303.303 INFO    ] ================================================
[2026-06-27 07:20:04,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:20:04
[2026-06-27 07:20:04,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:20:05,148.148 INFO    ] Initializing speech engine...
[2026-06-27 07:20:05,154.154 INFO    ] 2026-06-27 07:20:05
[2026-06-27 07:20:05,359.359 INFO    ] 2026-06-27 07:20:05
[2026-06-27 07:20:05,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:20:05,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:20:05,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:20:05,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:20:05,789.789 INFO    ] time= 27/06/2026 07:20:05
[2026-06-27 07:20:05,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:20:05,819.819 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:20:05,885.885 INFO    ] No existing commands found in stream
[2026-06-27 07:20:10,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:20:10,899.899 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-27 07:20:14,699.699 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 07:20:14,701.701 INFO    ] Checking for system updates...
[2026-06-27 07:20:14,723.723 INFO    ] 200
[2026-06-27 07:20:14,725.725 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:20:14,756.756 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:20:14,757.757 INFO    ] No update needed
[2026-06-27 07:20:14,759.759 INFO    ] Checking for camera pi updates...
[2026-06-27 07:20:14,778.778 INFO    ] 200
[2026-06-27 07:20:14,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:20:14,804.804 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:20:14,855.855 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:20:14,856.856 INFO    ] No camera update needed
[2026-06-27 07:20:14,857.857 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:20:14,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:20:14,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:20:14,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:20:16,903.903 INFO    ] ================================================
[2026-06-27 07:20:16,919.919 INFO    ] Launching Daemon at Sat Jun 27 07:20:16 IST 2026
[2026-06-27 07:20:16,929.929 INFO    ] ================================================
[2026-06-27 07:20:17,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:20:17
[2026-06-27 07:20:17,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:20:17,705.705 INFO    ] Initializing speech engine...
[2026-06-27 07:20:17,709.709 INFO    ] 2026-06-27 07:20:17
[2026-06-27 07:20:17,929.929 INFO    ] 2026-06-27 07:20:17
[2026-06-27 07:20:17,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:20:18,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:20:18,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:20:18,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:20:18,349.349 INFO    ] time= 27/06/2026 07:20:18
[2026-06-27 07:20:18,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:20:18,376.376 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:20:18,446.446 INFO    ] No existing commands found in stream
[2026-06-27 07:20:23,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:20:23,459.459 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-27 07:20:25,645.645 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:20:25,647.647 INFO    ] Checking for system updates...
[2026-06-27 07:20:25,667.667 INFO    ] 200
[2026-06-27 07:20:25,669.669 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:20:25,699.699 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:20:25,701.701 INFO    ] No update needed
[2026-06-27 07:20:25,702.702 INFO    ] Checking for camera pi updates...
[2026-06-27 07:20:25,721.721 INFO    ] 200
[2026-06-27 07:20:25,723.723 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:20:25,746.746 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:20:25,793.793 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:20:25,795.795 INFO    ] No camera update needed
[2026-06-27 07:20:25,796.796 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:20:25,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:20:25,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:20:25,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:20:27,842.842 INFO    ] ================================================
[2026-06-27 07:20:27,857.857 INFO    ] Launching Daemon at Sat Jun 27 07:20:27 IST 2026
[2026-06-27 07:20:27,868.868 INFO    ] ================================================
[2026-06-27 07:20:28,194.194 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:20:28
[2026-06-27 07:20:28,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:20:28,636.636 INFO    ] Initializing speech engine...
[2026-06-27 07:20:28,644.644 INFO    ] 2026-06-27 07:20:28
[2026-06-27 07:20:28,855.855 INFO    ] 2026-06-27 07:20:28
[2026-06-27 07:20:28,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:20:29,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:20:29,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:20:29,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:20:29,275.275 INFO    ] time= 27/06/2026 07:20:29
[2026-06-27 07:20:29,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:20:29,305.305 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:20:29,371.371 INFO    ] No existing commands found in stream
[2026-06-27 07:20:34,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:20:34,384.384 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-27 07:20:35,659.659 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:20:35,660.660 INFO    ] Checking for system updates...
[2026-06-27 07:20:35,681.681 INFO    ] 200
[2026-06-27 07:20:35,682.682 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:20:35,713.713 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:20:35,715.715 INFO    ] No update needed
[2026-06-27 07:20:35,716.716 INFO    ] Checking for camera pi updates...
[2026-06-27 07:20:35,737.737 INFO    ] 200
[2026-06-27 07:20:35,738.738 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:20:35,762.762 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:20:35,807.807 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:20:35,809.809 INFO    ] No camera update needed
[2026-06-27 07:20:35,810.810 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:20:35,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:20:35,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:20:35,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:20:37,855.855 INFO    ] ================================================
[2026-06-27 07:20:37,870.870 INFO    ] Launching Daemon at Sat Jun 27 07:20:37 IST 2026
[2026-06-27 07:20:37,881.881 INFO    ] ================================================
[2026-06-27 07:20:38,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:20:38
[2026-06-27 07:20:38,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:20:38,680.680 INFO    ] Initializing speech engine...
[2026-06-27 07:20:38,690.690 INFO    ] 2026-06-27 07:20:38
[2026-06-27 07:20:38,896.896 INFO    ] 2026-06-27 07:20:38
[2026-06-27 07:20:38,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:20:39,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:20:39,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:20:39,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:20:39,326.326 INFO    ] time= 27/06/2026 07:20:39
[2026-06-27 07:20:39,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:20:39,342.342 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:20:39,409.409 INFO    ] No existing commands found in stream
[2026-06-27 07:20:44,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:20:44,421.421 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-27 07:20:46,218.218 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:20:46,220.220 INFO    ] Checking for system updates...
[2026-06-27 07:20:46,241.241 INFO    ] 200
[2026-06-27 07:20:46,242.242 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:20:46,275.275 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:20:46,276.276 INFO    ] No update needed
[2026-06-27 07:20:46,278.278 INFO    ] Checking for camera pi updates...
[2026-06-27 07:20:46,298.298 INFO    ] 200
[2026-06-27 07:20:46,300.300 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:20:46,323.323 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:20:46,366.366 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:20:46,367.367 INFO    ] No camera update needed
[2026-06-27 07:20:46,368.368 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:20:46,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:20:46,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:20:46,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:20:48,414.414 INFO    ] ================================================
[2026-06-27 07:20:48,428.428 INFO    ] Launching Daemon at Sat Jun 27 07:20:48 IST 2026
[2026-06-27 07:20:48,439.439 INFO    ] ================================================
[2026-06-27 07:20:48,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:20:48
[2026-06-27 07:20:49,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:20:49,246.246 INFO    ] Initializing speech engine...
[2026-06-27 07:20:49,256.256 INFO    ] 2026-06-27 07:20:49
[2026-06-27 07:20:49,459.459 INFO    ] 2026-06-27 07:20:49
[2026-06-27 07:20:49,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:20:49,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:20:49,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:20:49,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:20:49,883.883 INFO    ] time= 27/06/2026 07:20:49
[2026-06-27 07:20:49,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:20:49,910.910 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:20:49,977.977 INFO    ] No existing commands found in stream
[2026-06-27 07:20:54,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:20:54,991.991 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-27 07:20:58,390.390 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 07:20:58,391.391 INFO    ] Checking for system updates...
[2026-06-27 07:20:58,412.412 INFO    ] 200
[2026-06-27 07:20:58,414.414 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:20:58,444.444 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:20:58,445.445 INFO    ] No update needed
[2026-06-27 07:20:58,446.446 INFO    ] Checking for camera pi updates...
[2026-06-27 07:20:58,467.467 INFO    ] 200
[2026-06-27 07:20:58,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:20:58,493.493 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:20:58,540.540 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:20:58,541.541 INFO    ] No camera update needed
[2026-06-27 07:20:58,542.542 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:20:58,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:20:58,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:20:58,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:21:00,587.587 INFO    ] ================================================
[2026-06-27 07:21:00,603.603 INFO    ] Launching Daemon at Sat Jun 27 07:21:00 IST 2026
[2026-06-27 07:21:00,614.614 INFO    ] ================================================
[2026-06-27 07:21:00,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:21:00
[2026-06-27 07:21:01,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:21:01,462.462 INFO    ] Initializing speech engine...
[2026-06-27 07:21:01,468.468 INFO    ] 2026-06-27 07:21:01
[2026-06-27 07:21:01,672.672 INFO    ] 2026-06-27 07:21:01
[2026-06-27 07:21:01,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:21:01,856.856 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:21:01,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:21:02,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:21:02,009.009 INFO    ] time= 27/06/2026 07:21:02
[2026-06-27 07:21:02,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:21:02,024.024 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:21:02,078.078 INFO    ] No existing commands found in stream
[2026-06-27 07:21:07,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:21:07,089.089 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-27 07:21:11,315.315 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:21:11,317.317 INFO    ] Checking for system updates...
[2026-06-27 07:21:11,338.338 INFO    ] 200
[2026-06-27 07:21:11,339.339 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:21:11,372.372 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:21:11,373.373 INFO    ] No update needed
[2026-06-27 07:21:11,375.375 INFO    ] Checking for camera pi updates...
[2026-06-27 07:21:11,395.395 INFO    ] 200
[2026-06-27 07:21:11,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:21:11,421.421 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:21:11,568.568 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:21:11,570.570 INFO    ] No camera update needed
[2026-06-27 07:21:11,571.571 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:21:11,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:21:11,575.575 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:21:11,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:21:13,617.617 INFO    ] ================================================
[2026-06-27 07:21:13,634.634 INFO    ] Launching Daemon at Sat Jun 27 07:21:13 IST 2026
[2026-06-27 07:21:13,646.646 INFO    ] ================================================
[2026-06-27 07:21:14,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:21:14
[2026-06-27 07:21:14,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:21:14,471.471 INFO    ] Initializing speech engine...
[2026-06-27 07:21:14,476.476 INFO    ] 2026-06-27 07:21:14
[2026-06-27 07:21:14,682.682 INFO    ] 2026-06-27 07:21:14
[2026-06-27 07:21:14,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:21:14,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:21:14,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:21:15,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:21:15,092.092 INFO    ] time= 27/06/2026 07:21:15
[2026-06-27 07:21:15,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:21:15,126.126 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:21:15,195.195 INFO    ] No existing commands found in stream
[2026-06-27 07:21:20,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:21:20,208.208 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-27 07:21:24,316.316 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 07:21:24,317.317 INFO    ] Checking for system updates...
[2026-06-27 07:21:24,338.338 INFO    ] 200
[2026-06-27 07:21:24,339.339 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:21:24,370.370 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:21:24,371.371 INFO    ] No update needed
[2026-06-27 07:21:24,372.372 INFO    ] Checking for camera pi updates...
[2026-06-27 07:21:24,392.392 INFO    ] 200
[2026-06-27 07:21:24,394.394 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:21:24,418.418 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:21:24,466.466 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:21:24,467.467 INFO    ] No camera update needed
[2026-06-27 07:21:24,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:21:24,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:21:24,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:21:24,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:21:26,516.516 INFO    ] ================================================
[2026-06-27 07:21:26,532.532 INFO    ] Launching Daemon at Sat Jun 27 07:21:26 IST 2026
[2026-06-27 07:21:26,542.542 INFO    ] ================================================
[2026-06-27 07:21:26,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:21:26
[2026-06-27 07:21:27,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:21:27,383.383 INFO    ] Initializing speech engine...
[2026-06-27 07:21:27,391.391 INFO    ] 2026-06-27 07:21:27
[2026-06-27 07:21:27,611.611 INFO    ] 2026-06-27 07:21:27
[2026-06-27 07:21:27,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:21:27,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:21:27,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:21:27,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:21:28,022.022 INFO    ] time= 27/06/2026 07:21:27
[2026-06-27 07:21:28,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:21:28,068.068 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:21:28,139.139 INFO    ] No existing commands found in stream
[2026-06-27 07:21:33,149.149 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:21:33,153.153 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-27 07:21:35,618.618 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:21:35,620.620 INFO    ] Checking for system updates...
[2026-06-27 07:21:35,642.642 INFO    ] 200
[2026-06-27 07:21:35,644.644 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:21:35,677.677 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:21:35,678.678 INFO    ] No update needed
[2026-06-27 07:21:35,680.680 INFO    ] Checking for camera pi updates...
[2026-06-27 07:21:35,703.703 INFO    ] 200
[2026-06-27 07:21:35,705.705 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:21:35,733.733 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:21:35,774.774 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:21:35,776.776 INFO    ] No camera update needed
[2026-06-27 07:21:35,777.777 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:21:35,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:21:35,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:21:35,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:21:37,823.823 INFO    ] ================================================
[2026-06-27 07:21:37,839.839 INFO    ] Launching Daemon at Sat Jun 27 07:21:37 IST 2026
[2026-06-27 07:21:37,856.856 INFO    ] ================================================
[2026-06-27 07:21:38,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:21:38
[2026-06-27 07:21:38,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:21:38,687.687 INFO    ] Initializing speech engine...
[2026-06-27 07:21:38,693.693 INFO    ] 2026-06-27 07:21:38
[2026-06-27 07:21:38,899.899 INFO    ] 2026-06-27 07:21:38
[2026-06-27 07:21:38,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:21:39,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:21:39,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:21:39,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:21:39,339.339 INFO    ] time= 27/06/2026 07:21:39
[2026-06-27 07:21:39,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:21:39,347.347 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:21:39,414.414 INFO    ] No existing commands found in stream
[2026-06-27 07:21:44,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:21:44,427.427 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-27 07:21:48,187.187 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 07:21:48,189.189 INFO    ] Checking for system updates...
[2026-06-27 07:21:48,211.211 INFO    ] 200
[2026-06-27 07:21:48,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:21:48,248.248 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:21:48,249.249 INFO    ] No update needed
[2026-06-27 07:21:48,251.251 INFO    ] Checking for camera pi updates...
[2026-06-27 07:21:48,274.274 INFO    ] 200
[2026-06-27 07:21:48,276.276 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:21:48,300.300 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:21:48,347.347 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:21:48,348.348 INFO    ] No camera update needed
[2026-06-27 07:21:48,349.349 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:21:48,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:21:48,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:21:48,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:21:50,388.388 INFO    ] ================================================
[2026-06-27 07:21:50,396.396 INFO    ] Launching Daemon at Sat Jun 27 07:21:50 IST 2026
[2026-06-27 07:21:50,402.402 INFO    ] ================================================
[2026-06-27 07:21:50,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:21:50
[2026-06-27 07:21:51,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:21:51,176.176 INFO    ] Initializing speech engine...
[2026-06-27 07:21:51,182.182 INFO    ] 2026-06-27 07:21:51
[2026-06-27 07:21:51,385.385 INFO    ] 2026-06-27 07:21:51
[2026-06-27 07:21:51,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:21:51,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:21:51,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:21:51,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:21:51,799.799 INFO    ] time= 27/06/2026 07:21:51
[2026-06-27 07:21:51,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:21:51,839.839 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:21:51,905.905 INFO    ] No existing commands found in stream
[2026-06-27 07:21:56,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:21:56,919.919 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-27 07:21:58,789.789 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 07:21:58,790.790 INFO    ] Checking for system updates...
[2026-06-27 07:21:58,814.814 INFO    ] 200
[2026-06-27 07:21:58,815.815 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:21:58,848.848 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:21:58,849.849 INFO    ] No update needed
[2026-06-27 07:21:58,851.851 INFO    ] Checking for camera pi updates...
[2026-06-27 07:21:58,870.870 INFO    ] 200
[2026-06-27 07:21:58,871.871 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:21:58,897.897 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:21:58,947.947 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:21:58,948.948 INFO    ] No camera update needed
[2026-06-27 07:21:58,950.950 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:21:58,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:21:58,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:21:58,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:22:01,997.997 INFO    ] ================================================
[2026-06-27 07:22:01,013.013 INFO    ] Launching Daemon at Sat Jun 27 07:22:01 IST 2026
[2026-06-27 07:22:01,024.024 INFO    ] ================================================
[2026-06-27 07:22:01,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:22:01
[2026-06-27 07:22:01,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:22:02,042.042 INFO    ] Initializing speech engine...
[2026-06-27 07:22:02,046.046 INFO    ] 2026-06-27 07:22:02
[2026-06-27 07:22:02,287.287 INFO    ] 2026-06-27 07:22:02
[2026-06-27 07:22:02,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:22:02,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:22:02,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:22:02,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:22:02,708.708 INFO    ] time= 27/06/2026 07:22:02
[2026-06-27 07:22:02,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:22:02,736.736 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:22:02,801.801 INFO    ] No existing commands found in stream
[2026-06-27 07:22:07,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:22:07,814.814 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-27 07:22:10,033.033 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:22:10,035.035 INFO    ] Checking for system updates...
[2026-06-27 07:22:10,056.056 INFO    ] 200
[2026-06-27 07:22:10,058.058 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:22:10,089.089 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:22:10,090.090 INFO    ] No update needed
[2026-06-27 07:22:10,091.091 INFO    ] Checking for camera pi updates...
[2026-06-27 07:22:10,112.112 INFO    ] 200
[2026-06-27 07:22:10,113.113 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:22:10,137.137 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:22:10,175.175 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:22:10,177.177 INFO    ] No camera update needed
[2026-06-27 07:22:10,179.179 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:22:10,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:22:10,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:22:10,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:22:12,226.226 INFO    ] ================================================
[2026-06-27 07:22:12,242.242 INFO    ] Launching Daemon at Sat Jun 27 07:22:12 IST 2026
[2026-06-27 07:22:12,253.253 INFO    ] ================================================
[2026-06-27 07:22:12,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:22:12
[2026-06-27 07:22:12,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:22:13,070.070 INFO    ] Initializing speech engine...
[2026-06-27 07:22:13,083.083 INFO    ] 2026-06-27 07:22:13
[2026-06-27 07:22:13,292.292 INFO    ] 2026-06-27 07:22:13
[2026-06-27 07:22:13,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:22:13,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:22:13,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:22:13,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:22:13,704.704 INFO    ] time= 27/06/2026 07:22:13
[2026-06-27 07:22:13,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:22:13,744.744 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:22:13,818.818 INFO    ] No existing commands found in stream
[2026-06-27 07:22:18,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:22:18,831.831 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-27 07:22:20,695.695 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:22:20,697.697 INFO    ] Checking for system updates...
[2026-06-27 07:22:20,719.719 INFO    ] 200
[2026-06-27 07:22:20,720.720 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:22:20,753.753 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:22:20,755.755 INFO    ] No update needed
[2026-06-27 07:22:20,756.756 INFO    ] Checking for camera pi updates...
[2026-06-27 07:22:20,779.779 INFO    ] 200
[2026-06-27 07:22:20,780.780 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:22:20,805.805 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:22:20,839.839 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:22:20,841.841 INFO    ] No camera update needed
[2026-06-27 07:22:20,842.842 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:22:20,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:22:20,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:22:20,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:22:22,891.891 INFO    ] ================================================
[2026-06-27 07:22:22,906.906 INFO    ] Launching Daemon at Sat Jun 27 07:22:22 IST 2026
[2026-06-27 07:22:22,918.918 INFO    ] ================================================
[2026-06-27 07:22:23,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:22:23
[2026-06-27 07:22:23,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:22:23,686.686 INFO    ] Initializing speech engine...
[2026-06-27 07:22:23,694.694 INFO    ] 2026-06-27 07:22:23
[2026-06-27 07:22:23,904.904 INFO    ] 2026-06-27 07:22:23
[2026-06-27 07:22:23,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:22:24,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:22:24,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:22:24,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:22:24,326.326 INFO    ] time= 27/06/2026 07:22:24
[2026-06-27 07:22:24,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:22:24,356.356 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:22:24,423.423 INFO    ] No existing commands found in stream
[2026-06-27 07:22:29,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:22:29,435.435 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-27 07:22:32,517.517 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:22:32,519.519 INFO    ] Checking for system updates...
[2026-06-27 07:22:32,539.539 INFO    ] 200
[2026-06-27 07:22:32,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:22:32,572.572 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:22:32,573.573 INFO    ] No update needed
[2026-06-27 07:22:32,574.574 INFO    ] Checking for camera pi updates...
[2026-06-27 07:22:32,597.597 INFO    ] 200
[2026-06-27 07:22:32,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:22:32,625.625 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:22:32,670.670 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:22:32,672.672 INFO    ] No camera update needed
[2026-06-27 07:22:32,673.673 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:22:32,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:22:32,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:22:32,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:22:34,721.721 INFO    ] ================================================
[2026-06-27 07:22:34,737.737 INFO    ] Launching Daemon at Sat Jun 27 07:22:34 IST 2026
[2026-06-27 07:22:34,748.748 INFO    ] ================================================
[2026-06-27 07:22:35,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:22:35
[2026-06-27 07:22:35,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:22:35,577.577 INFO    ] Initializing speech engine...
[2026-06-27 07:22:35,587.587 INFO    ] 2026-06-27 07:22:35
[2026-06-27 07:22:35,794.794 INFO    ] 2026-06-27 07:22:35
[2026-06-27 07:22:35,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:22:36,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:22:36,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:22:36,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:22:36,225.225 INFO    ] time= 27/06/2026 07:22:36
[2026-06-27 07:22:36,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:22:36,247.247 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:22:36,316.316 INFO    ] No existing commands found in stream
[2026-06-27 07:22:41,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:22:41,332.332 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-27 07:22:44,193.193 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 07:22:44,194.194 INFO    ] Checking for system updates...
[2026-06-27 07:22:44,216.216 INFO    ] 200
[2026-06-27 07:22:44,217.217 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:22:44,249.249 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:22:44,251.251 INFO    ] No update needed
[2026-06-27 07:22:44,252.252 INFO    ] Checking for camera pi updates...
[2026-06-27 07:22:44,272.272 INFO    ] 200
[2026-06-27 07:22:44,274.274 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:22:44,299.299 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:22:44,342.342 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:22:44,344.344 INFO    ] No camera update needed
[2026-06-27 07:22:44,346.346 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:22:44,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:22:44,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:22:44,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:22:46,394.394 INFO    ] ================================================
[2026-06-27 07:22:46,409.409 INFO    ] Launching Daemon at Sat Jun 27 07:22:46 IST 2026
[2026-06-27 07:22:46,421.421 INFO    ] ================================================
[2026-06-27 07:22:46,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:22:46
[2026-06-27 07:22:47,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:22:47,269.269 INFO    ] Initializing speech engine...
[2026-06-27 07:22:47,273.273 INFO    ] 2026-06-27 07:22:47
[2026-06-27 07:22:47,477.477 INFO    ] 2026-06-27 07:22:47
[2026-06-27 07:22:47,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:22:47,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:22:47,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:22:47,826.826 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:22:47,893.893 INFO    ] time= 27/06/2026 07:22:47
[2026-06-27 07:22:47,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:22:47,923.923 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:22:47,989.989 INFO    ] No existing commands found in stream
[2026-06-27 07:22:52,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:22:53,001.001 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-27 07:22:54,084.084 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 07:22:54,086.086 INFO    ] Checking for system updates...
[2026-06-27 07:22:54,108.108 INFO    ] 200
[2026-06-27 07:22:54,109.109 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:22:54,142.142 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:22:54,143.143 INFO    ] No update needed
[2026-06-27 07:22:54,145.145 INFO    ] Checking for camera pi updates...
[2026-06-27 07:22:54,166.166 INFO    ] 200
[2026-06-27 07:22:54,167.167 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:22:54,190.190 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:22:54,213.213 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:22:54,215.215 INFO    ] No camera update needed
[2026-06-27 07:22:54,216.216 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:22:54,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:22:54,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:22:54,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:22:56,262.262 INFO    ] ================================================
[2026-06-27 07:22:56,277.277 INFO    ] Launching Daemon at Sat Jun 27 07:22:56 IST 2026
[2026-06-27 07:22:56,290.290 INFO    ] ================================================
[2026-06-27 07:22:56,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:22:56
[2026-06-27 07:22:56,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:22:57,068.068 INFO    ] Initializing speech engine...
[2026-06-27 07:22:57,072.072 INFO    ] 2026-06-27 07:22:57
[2026-06-27 07:22:57,293.293 INFO    ] 2026-06-27 07:22:57
[2026-06-27 07:22:57,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:22:57,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:22:57,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:22:57,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:22:57,742.742 INFO    ] time= 27/06/2026 07:22:57
[2026-06-27 07:22:57,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:22:57,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:22:57,816.816 INFO    ] No existing commands found in stream
[2026-06-27 07:23:02,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:23:02,827.827 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-27 07:23:03,788.788 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 07:23:03,790.790 INFO    ] Checking for system updates...
[2026-06-27 07:23:03,811.811 INFO    ] 200
[2026-06-27 07:23:03,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:23:03,843.843 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:23:03,845.845 INFO    ] No update needed
[2026-06-27 07:23:03,846.846 INFO    ] Checking for camera pi updates...
[2026-06-27 07:23:03,866.866 INFO    ] 200
[2026-06-27 07:23:03,868.868 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:23:03,894.894 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:23:03,943.943 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:23:03,945.945 INFO    ] No camera update needed
[2026-06-27 07:23:03,946.946 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:23:03,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:23:03,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:23:03,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:23:06,995.995 INFO    ] ================================================
[2026-06-27 07:23:06,010.010 INFO    ] Launching Daemon at Sat Jun 27 07:23:06 IST 2026
[2026-06-27 07:23:06,022.022 INFO    ] ================================================
[2026-06-27 07:23:06,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:23:06
[2026-06-27 07:23:06,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:23:06,863.863 INFO    ] Initializing speech engine...
[2026-06-27 07:23:06,870.870 INFO    ] 2026-06-27 07:23:06
[2026-06-27 07:23:07,083.083 INFO    ] 2026-06-27 07:23:07
[2026-06-27 07:23:07,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:23:07,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:23:07,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:23:07,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:23:07,506.506 INFO    ] time= 27/06/2026 07:23:07
[2026-06-27 07:23:07,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:23:07,537.537 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:23:07,605.605 INFO    ] No existing commands found in stream
[2026-06-27 07:23:12,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:23:12,633.633 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-27 07:23:14,153.153 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 07:23:14,155.155 INFO    ] Checking for system updates...
[2026-06-27 07:23:14,177.177 INFO    ] 200
[2026-06-27 07:23:14,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:23:14,211.211 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:23:14,212.212 INFO    ] No update needed
[2026-06-27 07:23:14,214.214 INFO    ] Checking for camera pi updates...
[2026-06-27 07:23:14,235.235 INFO    ] 200
[2026-06-27 07:23:14,237.237 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:23:14,262.262 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:23:14,403.403 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:23:14,405.405 INFO    ] No camera update needed
[2026-06-27 07:23:14,406.406 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:23:14,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:23:14,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:23:14,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:23:16,453.453 INFO    ] ================================================
[2026-06-27 07:23:16,469.469 INFO    ] Launching Daemon at Sat Jun 27 07:23:16 IST 2026
[2026-06-27 07:23:16,481.481 INFO    ] ================================================
[2026-06-27 07:23:16,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:23:16
[2026-06-27 07:23:17,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:23:17,258.258 INFO    ] Initializing speech engine...
[2026-06-27 07:23:17,263.263 INFO    ] 2026-06-27 07:23:17
[2026-06-27 07:23:17,497.497 INFO    ] 2026-06-27 07:23:17
[2026-06-27 07:23:17,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:23:17,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:23:17,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:23:17,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:23:17,935.935 INFO    ] time= 27/06/2026 07:23:17
[2026-06-27 07:23:17,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:23:17,982.982 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:23:18,059.059 INFO    ] No existing commands found in stream
[2026-06-27 07:23:23,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:23:23,072.072 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-27 07:23:25,428.428 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 07:23:25,430.430 INFO    ] Checking for system updates...
[2026-06-27 07:23:25,450.450 INFO    ] 200
[2026-06-27 07:23:25,452.452 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:23:25,486.486 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:23:25,487.487 INFO    ] No update needed
[2026-06-27 07:23:25,489.489 INFO    ] Checking for camera pi updates...
[2026-06-27 07:23:25,508.508 INFO    ] 200
[2026-06-27 07:23:25,510.510 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:23:25,533.533 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:23:25,573.573 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:23:25,575.575 INFO    ] No camera update needed
[2026-06-27 07:23:25,576.576 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:23:25,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:23:25,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:23:25,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:23:27,621.621 INFO    ] ================================================
[2026-06-27 07:23:27,636.636 INFO    ] Launching Daemon at Sat Jun 27 07:23:27 IST 2026
[2026-06-27 07:23:27,647.647 INFO    ] ================================================
[2026-06-27 07:23:28,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:23:28
[2026-06-27 07:23:28,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:23:28,463.463 INFO    ] Initializing speech engine...
[2026-06-27 07:23:28,470.470 INFO    ] 2026-06-27 07:23:28
[2026-06-27 07:23:28,683.683 INFO    ] 2026-06-27 07:23:28
[2026-06-27 07:23:28,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:23:28,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:23:28,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:23:29,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:23:29,102.102 INFO    ] time= 27/06/2026 07:23:29
[2026-06-27 07:23:29,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:23:29,131.131 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:23:29,198.198 INFO    ] No existing commands found in stream
[2026-06-27 07:23:34,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:23:34,212.212 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-27 07:23:37,269.269 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 07:23:37,270.270 INFO    ] Checking for system updates...
[2026-06-27 07:23:37,291.291 INFO    ] 200
[2026-06-27 07:23:37,293.293 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:23:37,323.323 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:23:37,325.325 INFO    ] No update needed
[2026-06-27 07:23:37,326.326 INFO    ] Checking for camera pi updates...
[2026-06-27 07:23:37,346.346 INFO    ] 200
[2026-06-27 07:23:37,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:23:37,371.371 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:23:37,410.410 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:23:37,412.412 INFO    ] No camera update needed
[2026-06-27 07:23:37,413.413 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:23:37,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:23:37,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:23:37,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:23:39,460.460 INFO    ] ================================================
[2026-06-27 07:23:39,475.475 INFO    ] Launching Daemon at Sat Jun 27 07:23:39 IST 2026
[2026-06-27 07:23:39,486.486 INFO    ] ================================================
[2026-06-27 07:23:39,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:23:39
[2026-06-27 07:23:40,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:23:40,370.370 INFO    ] Initializing speech engine...
[2026-06-27 07:23:40,376.376 INFO    ] 2026-06-27 07:23:40
[2026-06-27 07:23:40,583.583 INFO    ] 2026-06-27 07:23:40
[2026-06-27 07:23:40,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:23:40,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:23:40,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:23:40,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:23:41,006.006 INFO    ] time= 27/06/2026 07:23:40
[2026-06-27 07:23:41,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:23:41,034.034 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:23:41,101.101 INFO    ] No existing commands found in stream
[2026-06-27 07:23:46,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:23:46,129.129 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-27 07:23:48,056.056 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 07:23:48,057.057 INFO    ] Checking for system updates...
[2026-06-27 07:23:48,078.078 INFO    ] 200
[2026-06-27 07:23:48,079.079 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:23:48,109.109 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:23:48,111.111 INFO    ] No update needed
[2026-06-27 07:23:48,112.112 INFO    ] Checking for camera pi updates...
[2026-06-27 07:23:48,132.132 INFO    ] 200
[2026-06-27 07:23:48,133.133 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:23:48,159.159 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:23:48,183.183 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:23:48,185.185 INFO    ] No camera update needed
[2026-06-27 07:23:48,186.186 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:23:48,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:23:48,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:23:48,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:23:50,232.232 INFO    ] ================================================
[2026-06-27 07:23:50,247.247 INFO    ] Launching Daemon at Sat Jun 27 07:23:50 IST 2026
[2026-06-27 07:23:50,258.258 INFO    ] ================================================
[2026-06-27 07:23:50,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:23:50
[2026-06-27 07:23:50,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:23:51,092.092 INFO    ] Initializing speech engine...
[2026-06-27 07:23:51,098.098 INFO    ] 2026-06-27 07:23:51
[2026-06-27 07:23:51,315.315 INFO    ] 2026-06-27 07:23:51
[2026-06-27 07:23:51,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:23:51,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:23:51,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:23:51,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:23:51,750.750 INFO    ] time= 27/06/2026 07:23:51
[2026-06-27 07:23:51,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:23:51,802.802 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:23:51,879.879 INFO    ] No existing commands found in stream
[2026-06-27 07:23:56,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:23:56,892.892 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-27 07:23:59,312.312 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 07:23:59,314.314 INFO    ] Checking for system updates...
[2026-06-27 07:23:59,336.336 INFO    ] 200
[2026-06-27 07:23:59,338.338 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:23:59,368.368 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:23:59,370.370 INFO    ] No update needed
[2026-06-27 07:23:59,371.371 INFO    ] Checking for camera pi updates...
[2026-06-27 07:23:59,390.390 INFO    ] 200
[2026-06-27 07:23:59,392.392 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:23:59,415.415 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:23:59,455.455 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:23:59,457.457 INFO    ] No camera update needed
[2026-06-27 07:23:59,458.458 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:23:59,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:23:59,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:23:59,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:24:01,503.503 INFO    ] ================================================
[2026-06-27 07:24:01,518.518 INFO    ] Launching Daemon at Sat Jun 27 07:24:01 IST 2026
[2026-06-27 07:24:01,529.529 INFO    ] ================================================
[2026-06-27 07:24:01,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:24:01
[2026-06-27 07:24:02,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:24:02,549.549 INFO    ] Initializing speech engine...
[2026-06-27 07:24:02,553.553 INFO    ] 2026-06-27 07:24:02
[2026-06-27 07:24:02,775.775 INFO    ] 2026-06-27 07:24:02
[2026-06-27 07:24:02,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:24:02,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:24:02,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:24:03,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:24:03,140.140 INFO    ] time= 27/06/2026 07:24:03
[2026-06-27 07:24:03,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:24:03,219.219 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:24:03,312.312 INFO    ] No existing commands found in stream
[2026-06-27 07:24:08,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:24:08,326.326 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-27 07:24:12,010.010 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:24:12,012.012 INFO    ] Checking for system updates...
[2026-06-27 07:24:12,032.032 INFO    ] 200
[2026-06-27 07:24:12,034.034 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:24:12,066.066 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:24:12,067.067 INFO    ] No update needed
[2026-06-27 07:24:12,068.068 INFO    ] Checking for camera pi updates...
[2026-06-27 07:24:12,088.088 INFO    ] 200
[2026-06-27 07:24:12,089.089 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:24:12,112.112 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:24:12,156.156 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:24:12,157.157 INFO    ] No camera update needed
[2026-06-27 07:24:12,159.159 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:24:12,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:24:12,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:24:12,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:24:14,205.205 INFO    ] ================================================
[2026-06-27 07:24:14,221.221 INFO    ] Launching Daemon at Sat Jun 27 07:24:14 IST 2026
[2026-06-27 07:24:14,231.231 INFO    ] ================================================
[2026-06-27 07:24:14,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:24:14
[2026-06-27 07:24:14,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:24:15,039.039 INFO    ] Initializing speech engine...
[2026-06-27 07:24:15,049.049 INFO    ] 2026-06-27 07:24:15
[2026-06-27 07:24:15,256.256 INFO    ] 2026-06-27 07:24:15
[2026-06-27 07:24:15,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:24:15,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:24:15,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:24:15,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:24:15,669.669 INFO    ] time= 27/06/2026 07:24:15
[2026-06-27 07:24:15,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:24:15,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:24:15,781.781 INFO    ] No existing commands found in stream
[2026-06-27 07:24:20,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:24:20,795.795 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-27 07:24:24,456.456 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:24:24,458.458 INFO    ] Checking for system updates...
[2026-06-27 07:24:24,480.480 INFO    ] 200
[2026-06-27 07:24:24,482.482 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:24:24,512.512 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:24:24,514.514 INFO    ] No update needed
[2026-06-27 07:24:24,515.515 INFO    ] Checking for camera pi updates...
[2026-06-27 07:24:24,536.536 INFO    ] 200
[2026-06-27 07:24:24,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:24:24,561.561 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:24:24,609.609 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:24:24,611.611 INFO    ] No camera update needed
[2026-06-27 07:24:24,612.612 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:24:24,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:24:24,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:24:24,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:24:26,657.657 INFO    ] ================================================
[2026-06-27 07:24:26,672.672 INFO    ] Launching Daemon at Sat Jun 27 07:24:26 IST 2026
[2026-06-27 07:24:26,682.682 INFO    ] ================================================
[2026-06-27 07:24:27,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:24:27
[2026-06-27 07:24:27,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:24:27,552.552 INFO    ] Initializing speech engine...
[2026-06-27 07:24:27,556.556 INFO    ] 2026-06-27 07:24:27
[2026-06-27 07:24:27,763.763 INFO    ] 2026-06-27 07:24:27
[2026-06-27 07:24:27,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:24:27,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:24:27,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:24:28,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:24:28,185.185 INFO    ] time= 27/06/2026 07:24:28
[2026-06-27 07:24:28,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:24:28,214.214 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:24:28,281.281 INFO    ] No existing commands found in stream
[2026-06-27 07:24:33,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:24:33,298.298 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-27 07:24:36,245.245 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:24:36,246.246 INFO    ] Checking for system updates...
[2026-06-27 07:24:36,269.269 INFO    ] 200
[2026-06-27 07:24:36,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:24:36,300.300 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:24:36,302.302 INFO    ] No update needed
[2026-06-27 07:24:36,303.303 INFO    ] Checking for camera pi updates...
[2026-06-27 07:24:36,322.322 INFO    ] 200
[2026-06-27 07:24:36,324.324 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:24:36,348.348 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:24:36,386.386 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:24:36,387.387 INFO    ] No camera update needed
[2026-06-27 07:24:36,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:24:36,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:24:36,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:24:36,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:24:38,427.427 INFO    ] ================================================
[2026-06-27 07:24:38,437.437 INFO    ] Launching Daemon at Sat Jun 27 07:24:38 IST 2026
[2026-06-27 07:24:38,444.444 INFO    ] ================================================
[2026-06-27 07:24:38,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:24:38
[2026-06-27 07:24:39,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:24:39,287.287 INFO    ] Initializing speech engine...
[2026-06-27 07:24:39,300.300 INFO    ] 2026-06-27 07:24:39
[2026-06-27 07:24:39,522.522 INFO    ] 2026-06-27 07:24:39
[2026-06-27 07:24:39,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:24:39,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:24:39,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:24:39,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:24:40,012.012 INFO    ] time= 27/06/2026 07:24:39
[2026-06-27 07:24:40,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:24:40,042.042 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:24:40,110.110 INFO    ] No existing commands found in stream
[2026-06-27 07:24:45,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:24:45,119.119 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-27 07:24:47,086.086 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:24:47,095.095 INFO    ] Checking for system updates...
[2026-06-27 07:24:47,118.118 INFO    ] 200
[2026-06-27 07:24:47,120.120 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:24:47,182.182 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:24:47,184.184 INFO    ] No update needed
[2026-06-27 07:24:47,185.185 INFO    ] Checking for camera pi updates...
[2026-06-27 07:24:47,209.209 INFO    ] 200
[2026-06-27 07:24:47,211.211 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:24:47,245.245 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:24:47,286.286 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:24:47,288.288 INFO    ] No camera update needed
[2026-06-27 07:24:47,290.290 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:24:47,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:24:47,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:24:47,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:24:49,343.343 INFO    ] ================================================
[2026-06-27 07:24:49,358.358 INFO    ] Launching Daemon at Sat Jun 27 07:24:49 IST 2026
[2026-06-27 07:24:49,369.369 INFO    ] ================================================
[2026-06-27 07:24:49,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:24:49
[2026-06-27 07:24:50,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:24:50,146.146 INFO    ] Initializing speech engine...
[2026-06-27 07:24:50,154.154 INFO    ] 2026-06-27 07:24:50
[2026-06-27 07:24:50,367.367 INFO    ] 2026-06-27 07:24:50
[2026-06-27 07:24:50,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:24:50,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:24:50,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:24:50,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:24:50,793.793 INFO    ] time= 27/06/2026 07:24:50
[2026-06-27 07:24:50,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:24:50,821.821 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:24:50,886.886 INFO    ] No existing commands found in stream
[2026-06-27 07:24:55,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:24:55,899.899 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-27 07:24:58,787.787 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 07:24:58,788.788 INFO    ] Checking for system updates...
[2026-06-27 07:24:58,811.811 INFO    ] 200
[2026-06-27 07:24:58,812.812 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:24:58,843.843 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:24:58,844.844 INFO    ] No update needed
[2026-06-27 07:24:58,846.846 INFO    ] Checking for camera pi updates...
[2026-06-27 07:24:58,867.867 INFO    ] 200
[2026-06-27 07:24:58,869.869 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:24:58,895.895 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:24:58,941.941 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:24:58,942.942 INFO    ] No camera update needed
[2026-06-27 07:24:58,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:24:58,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:24:58,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:24:58,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:25:00,985.985 INFO    ] ================================================
[2026-06-27 07:25:01,001.001 INFO    ] Launching Daemon at Sat Jun 27 07:25:00 IST 2026
[2026-06-27 07:25:01,012.012 INFO    ] ================================================
[2026-06-27 07:25:01,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:25:01
[2026-06-27 07:25:01,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:25:02,107.107 INFO    ] Initializing speech engine...
[2026-06-27 07:25:02,113.113 INFO    ] 2026-06-27 07:25:02
[2026-06-27 07:25:02,323.323 INFO    ] 2026-06-27 07:25:02
[2026-06-27 07:25:02,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:25:02,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:25:02,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:25:02,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:25:02,607.607 INFO    ] time= 27/06/2026 07:25:02
[2026-06-27 07:25:02,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:25:02,610.610 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:25:02,661.661 INFO    ] No existing commands found in stream
[2026-06-27 07:25:07,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:25:07,675.675 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-27 07:25:09,479.479 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 07:25:09,481.481 INFO    ] Checking for system updates...
[2026-06-27 07:25:09,503.503 INFO    ] 200
[2026-06-27 07:25:09,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:25:09,538.538 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:25:09,539.539 INFO    ] No update needed
[2026-06-27 07:25:09,540.540 INFO    ] Checking for camera pi updates...
[2026-06-27 07:25:09,560.560 INFO    ] 200
[2026-06-27 07:25:09,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:25:09,586.586 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:25:09,627.627 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:25:09,628.628 INFO    ] No camera update needed
[2026-06-27 07:25:09,629.629 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:25:09,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:25:09,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:25:09,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:25:11,676.676 INFO    ] ================================================
[2026-06-27 07:25:11,692.692 INFO    ] Launching Daemon at Sat Jun 27 07:25:11 IST 2026
[2026-06-27 07:25:11,703.703 INFO    ] ================================================
[2026-06-27 07:25:12,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:25:12
[2026-06-27 07:25:12,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:25:12,563.563 INFO    ] Initializing speech engine...
[2026-06-27 07:25:12,569.569 INFO    ] 2026-06-27 07:25:12
[2026-06-27 07:25:12,779.779 INFO    ] 2026-06-27 07:25:12
[2026-06-27 07:25:12,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:25:12,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:25:13,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:25:13,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:25:13,208.208 INFO    ] time= 27/06/2026 07:25:13
[2026-06-27 07:25:13,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:25:13,238.238 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:25:13,307.307 INFO    ] No existing commands found in stream
[2026-06-27 07:25:18,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:25:18,319.319 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-27 07:25:21,588.588 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 07:25:21,590.590 INFO    ] Checking for system updates...
[2026-06-27 07:25:21,612.612 INFO    ] 200
[2026-06-27 07:25:21,614.614 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:25:21,647.647 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:25:21,648.648 INFO    ] No update needed
[2026-06-27 07:25:21,650.650 INFO    ] Checking for camera pi updates...
[2026-06-27 07:25:21,671.671 INFO    ] 200
[2026-06-27 07:25:21,673.673 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:25:21,700.700 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:25:21,843.843 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:25:21,845.845 INFO    ] No camera update needed
[2026-06-27 07:25:21,846.846 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:25:21,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:25:21,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:25:21,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:25:23,893.893 INFO    ] ================================================
[2026-06-27 07:25:23,908.908 INFO    ] Launching Daemon at Sat Jun 27 07:25:23 IST 2026
[2026-06-27 07:25:23,920.920 INFO    ] ================================================
[2026-06-27 07:25:24,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:25:24
[2026-06-27 07:25:24,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:25:24,708.708 INFO    ] Initializing speech engine...
[2026-06-27 07:25:24,720.720 INFO    ] 2026-06-27 07:25:24
[2026-06-27 07:25:24,927.927 INFO    ] 2026-06-27 07:25:24
[2026-06-27 07:25:24,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:25:25,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:25:25,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:25:25,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:25:25,346.346 INFO    ] time= 27/06/2026 07:25:25
[2026-06-27 07:25:25,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:25:25,376.376 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:25:25,443.443 INFO    ] No existing commands found in stream
[2026-06-27 07:25:30,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:25:30,460.460 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-27 07:25:32,234.234 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 07:25:32,236.236 INFO    ] Checking for system updates...
[2026-06-27 07:25:32,257.257 INFO    ] 200
[2026-06-27 07:25:32,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:25:32,288.288 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:25:32,290.290 INFO    ] No update needed
[2026-06-27 07:25:32,291.291 INFO    ] Checking for camera pi updates...
[2026-06-27 07:25:32,311.311 INFO    ] 200
[2026-06-27 07:25:32,312.312 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:25:32,338.338 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:25:32,372.372 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:25:32,373.373 INFO    ] No camera update needed
[2026-06-27 07:25:32,374.374 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:25:32,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:25:32,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:25:32,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:25:34,421.421 INFO    ] ================================================
[2026-06-27 07:25:34,436.436 INFO    ] Launching Daemon at Sat Jun 27 07:25:34 IST 2026
[2026-06-27 07:25:34,448.448 INFO    ] ================================================
[2026-06-27 07:25:34,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:25:34
[2026-06-27 07:25:35,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:25:35,301.301 INFO    ] Initializing speech engine...
[2026-06-27 07:25:35,306.306 INFO    ] 2026-06-27 07:25:35
[2026-06-27 07:25:35,518.518 INFO    ] 2026-06-27 07:25:35
[2026-06-27 07:25:35,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:25:35,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:25:35,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:25:35,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:25:35,971.971 INFO    ] time= 27/06/2026 07:25:35
[2026-06-27 07:25:35,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:25:35,979.979 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:25:36,048.048 INFO    ] No existing commands found in stream
[2026-06-27 07:25:41,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:25:41,060.060 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-27 07:25:41,592.592 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 07:25:41,594.594 INFO    ] Checking for system updates...
[2026-06-27 07:25:41,617.617 INFO    ] 200
[2026-06-27 07:25:41,618.618 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:25:41,648.648 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:25:41,650.650 INFO    ] No update needed
[2026-06-27 07:25:41,651.651 INFO    ] Checking for camera pi updates...
[2026-06-27 07:25:41,673.673 INFO    ] 200
[2026-06-27 07:25:41,674.674 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:25:41,698.698 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:25:41,746.746 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:25:41,747.747 INFO    ] No camera update needed
[2026-06-27 07:25:41,748.748 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:25:41,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:25:41,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:25:41,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:25:43,795.795 INFO    ] ================================================
[2026-06-27 07:25:43,811.811 INFO    ] Launching Daemon at Sat Jun 27 07:25:43 IST 2026
[2026-06-27 07:25:43,823.823 INFO    ] ================================================
[2026-06-27 07:25:44,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:25:44
[2026-06-27 07:25:44,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:25:44,627.627 INFO    ] Initializing speech engine...
[2026-06-27 07:25:44,631.631 INFO    ] 2026-06-27 07:25:44
[2026-06-27 07:25:44,846.846 INFO    ] 2026-06-27 07:25:44
[2026-06-27 07:25:44,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:25:45,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:25:45,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:25:45,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:25:45,276.276 INFO    ] time= 27/06/2026 07:25:45
[2026-06-27 07:25:45,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:25:45,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:25:45,424.424 INFO    ] No existing commands found in stream
[2026-06-27 07:25:50,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:25:50,437.437 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-27 07:25:52,570.570 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 07:25:52,572.572 INFO    ] Checking for system updates...
[2026-06-27 07:25:52,592.592 INFO    ] 200
[2026-06-27 07:25:52,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:25:52,627.627 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:25:52,629.629 INFO    ] No update needed
[2026-06-27 07:25:52,630.630 INFO    ] Checking for camera pi updates...
[2026-06-27 07:25:52,649.649 INFO    ] 200
[2026-06-27 07:25:52,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:25:52,677.677 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:25:52,717.717 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:25:52,719.719 INFO    ] No camera update needed
[2026-06-27 07:25:52,720.720 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:25:52,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:25:52,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:25:52,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:25:54,765.765 INFO    ] ================================================
[2026-06-27 07:25:54,780.780 INFO    ] Launching Daemon at Sat Jun 27 07:25:54 IST 2026
[2026-06-27 07:25:54,790.790 INFO    ] ================================================
[2026-06-27 07:25:55,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:25:55
[2026-06-27 07:25:55,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:25:55,615.615 INFO    ] Initializing speech engine...
[2026-06-27 07:25:55,620.620 INFO    ] 2026-06-27 07:25:55
[2026-06-27 07:25:55,825.825 INFO    ] 2026-06-27 07:25:55
[2026-06-27 07:25:55,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:25:56,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:25:56,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:25:56,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:25:56,220.220 INFO    ] time= 27/06/2026 07:25:56
[2026-06-27 07:25:56,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:25:56,272.272 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:25:56,367.367 INFO    ] No existing commands found in stream
[2026-06-27 07:26:01,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:26:01,385.385 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-27 07:26:04,705.705 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 07:26:04,706.706 INFO    ] Checking for system updates...
[2026-06-27 07:26:04,732.732 INFO    ] 200
[2026-06-27 07:26:04,734.734 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:26:04,765.765 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:26:04,766.766 INFO    ] No update needed
[2026-06-27 07:26:04,767.767 INFO    ] Checking for camera pi updates...
[2026-06-27 07:26:04,788.788 INFO    ] 200
[2026-06-27 07:26:04,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:26:04,812.812 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:26:04,855.855 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:26:04,856.856 INFO    ] No camera update needed
[2026-06-27 07:26:04,858.858 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:26:04,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:26:04,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:26:04,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:26:06,902.902 INFO    ] ================================================
[2026-06-27 07:26:06,918.918 INFO    ] Launching Daemon at Sat Jun 27 07:26:06 IST 2026
[2026-06-27 07:26:06,928.928 INFO    ] ================================================
[2026-06-27 07:26:07,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:26:07
[2026-06-27 07:26:07,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:26:07,736.736 INFO    ] Initializing speech engine...
[2026-06-27 07:26:07,740.740 INFO    ] 2026-06-27 07:26:07
[2026-06-27 07:26:07,960.960 INFO    ] 2026-06-27 07:26:07
[2026-06-27 07:26:07,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:26:08,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:26:08,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:26:08,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:26:08,377.377 INFO    ] time= 27/06/2026 07:26:08
[2026-06-27 07:26:08,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:26:08,413.413 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:26:08,485.485 INFO    ] No existing commands found in stream
[2026-06-27 07:26:13,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:26:13,497.497 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-27 07:26:17,745.745 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 07:26:17,747.747 INFO    ] Checking for system updates...
[2026-06-27 07:26:17,768.768 INFO    ] 200
[2026-06-27 07:26:17,769.769 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:26:17,805.805 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:26:17,806.806 INFO    ] No update needed
[2026-06-27 07:26:17,808.808 INFO    ] Checking for camera pi updates...
[2026-06-27 07:26:17,827.827 INFO    ] 200
[2026-06-27 07:26:17,828.828 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:26:17,854.854 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:26:17,896.896 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:26:17,897.897 INFO    ] No camera update needed
[2026-06-27 07:26:17,898.898 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:26:17,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:26:17,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:26:17,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:26:19,944.944 INFO    ] ================================================
[2026-06-27 07:26:19,959.959 INFO    ] Launching Daemon at Sat Jun 27 07:26:19 IST 2026
[2026-06-27 07:26:19,971.971 INFO    ] ================================================
[2026-06-27 07:26:20,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:26:20
[2026-06-27 07:26:20,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:26:20,775.775 INFO    ] Initializing speech engine...
[2026-06-27 07:26:20,780.780 INFO    ] 2026-06-27 07:26:20
[2026-06-27 07:26:20,983.983 INFO    ] 2026-06-27 07:26:20
[2026-06-27 07:26:21,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:26:21,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:26:21,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:26:21,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:26:21,409.409 INFO    ] time= 27/06/2026 07:26:21
[2026-06-27 07:26:21,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:26:21,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:26:21,495.495 INFO    ] No existing commands found in stream
[2026-06-27 07:26:26,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:26:26,508.508 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-27 07:26:30,022.022 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:26:30,024.024 INFO    ] Checking for system updates...
[2026-06-27 07:26:30,047.047 INFO    ] 200
[2026-06-27 07:26:30,049.049 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:26:30,080.080 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:26:30,082.082 INFO    ] No update needed
[2026-06-27 07:26:30,083.083 INFO    ] Checking for camera pi updates...
[2026-06-27 07:26:30,103.103 INFO    ] 200
[2026-06-27 07:26:30,105.105 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:26:30,128.128 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:26:30,165.165 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:26:30,167.167 INFO    ] No camera update needed
[2026-06-27 07:26:30,168.168 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:26:30,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:26:30,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:26:30,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:26:32,209.209 INFO    ] ================================================
[2026-06-27 07:26:32,218.218 INFO    ] Launching Daemon at Sat Jun 27 07:26:32 IST 2026
[2026-06-27 07:26:32,225.225 INFO    ] ================================================
[2026-06-27 07:26:32,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:26:32
[2026-06-27 07:26:32,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:26:33,066.066 INFO    ] Initializing speech engine...
[2026-06-27 07:26:33,076.076 INFO    ] 2026-06-27 07:26:33
[2026-06-27 07:26:33,281.281 INFO    ] 2026-06-27 07:26:33
[2026-06-27 07:26:33,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:26:33,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:26:33,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:26:33,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:26:33,700.700 INFO    ] time= 27/06/2026 07:26:33
[2026-06-27 07:26:33,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:26:33,729.729 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:26:33,795.795 INFO    ] No existing commands found in stream
[2026-06-27 07:26:38,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:26:38,808.808 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-27 07:26:42,660.660 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 07:26:42,661.661 INFO    ] Checking for system updates...
[2026-06-27 07:26:42,683.683 INFO    ] 200
[2026-06-27 07:26:42,684.684 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:26:42,718.718 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:26:42,720.720 INFO    ] No update needed
[2026-06-27 07:26:42,722.722 INFO    ] Checking for camera pi updates...
[2026-06-27 07:26:42,742.742 INFO    ] 200
[2026-06-27 07:26:42,743.743 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:26:42,769.769 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:26:42,806.806 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:26:42,807.807 INFO    ] No camera update needed
[2026-06-27 07:26:42,809.809 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:26:42,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:26:42,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:26:42,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:26:44,861.861 INFO    ] ================================================
[2026-06-27 07:26:44,876.876 INFO    ] Launching Daemon at Sat Jun 27 07:26:44 IST 2026
[2026-06-27 07:26:44,887.887 INFO    ] ================================================
[2026-06-27 07:26:45,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:26:45
[2026-06-27 07:26:45,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:26:45,685.685 INFO    ] Initializing speech engine...
[2026-06-27 07:26:45,689.689 INFO    ] 2026-06-27 07:26:45
[2026-06-27 07:26:45,894.894 INFO    ] 2026-06-27 07:26:45
[2026-06-27 07:26:45,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:26:46,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:26:46,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:26:46,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:26:46,308.308 INFO    ] time= 27/06/2026 07:26:46
[2026-06-27 07:26:46,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:26:46,337.337 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:26:46,408.408 INFO    ] No existing commands found in stream
[2026-06-27 07:26:51,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:26:51,419.419 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-27 07:26:54,923.923 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 07:26:54,925.925 INFO    ] Checking for system updates...
[2026-06-27 07:26:54,947.947 INFO    ] 200
[2026-06-27 07:26:54,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:26:54,983.983 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:26:54,985.985 INFO    ] No update needed
[2026-06-27 07:26:54,986.986 INFO    ] Checking for camera pi updates...
[2026-06-27 07:26:55,008.008 INFO    ] 200
[2026-06-27 07:26:55,009.009 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:26:55,037.037 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:26:55,063.063 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:26:55,065.065 INFO    ] No camera update needed
[2026-06-27 07:26:55,066.066 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:26:55,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:26:55,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:26:55,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:26:57,114.114 INFO    ] ================================================
[2026-06-27 07:26:57,129.129 INFO    ] Launching Daemon at Sat Jun 27 07:26:57 IST 2026
[2026-06-27 07:26:57,141.141 INFO    ] ================================================
[2026-06-27 07:26:57,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:26:57
[2026-06-27 07:26:57,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:26:57,965.965 INFO    ] Initializing speech engine...
[2026-06-27 07:26:57,970.970 INFO    ] 2026-06-27 07:26:57
[2026-06-27 07:26:58,189.189 INFO    ] 2026-06-27 07:26:58
[2026-06-27 07:26:58,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:26:58,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:26:58,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:26:58,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:26:58,622.622 INFO    ] time= 27/06/2026 07:26:58
[2026-06-27 07:26:58,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:26:58,679.679 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:26:58,784.784 INFO    ] No existing commands found in stream
[2026-06-27 07:27:03,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:27:03,796.796 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-27 07:27:05,402.402 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 07:27:05,404.404 INFO    ] Checking for system updates...
[2026-06-27 07:27:05,425.425 INFO    ] 200
[2026-06-27 07:27:05,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:27:05,460.460 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:27:05,461.461 INFO    ] No update needed
[2026-06-27 07:27:05,462.462 INFO    ] Checking for camera pi updates...
[2026-06-27 07:27:05,485.485 INFO    ] 200
[2026-06-27 07:27:05,487.487 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:27:05,510.510 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:27:05,548.548 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:27:05,549.549 INFO    ] No camera update needed
[2026-06-27 07:27:05,551.551 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:27:05,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:27:05,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:27:05,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:27:07,597.597 INFO    ] ================================================
[2026-06-27 07:27:07,612.612 INFO    ] Launching Daemon at Sat Jun 27 07:27:07 IST 2026
[2026-06-27 07:27:07,623.623 INFO    ] ================================================
[2026-06-27 07:27:08,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:27:07
[2026-06-27 07:27:08,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:27:08,456.456 INFO    ] Initializing speech engine...
[2026-06-27 07:27:08,460.460 INFO    ] 2026-06-27 07:27:08
[2026-06-27 07:27:08,680.680 INFO    ] 2026-06-27 07:27:08
[2026-06-27 07:27:08,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:27:08,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:27:08,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:27:09,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:27:09,099.099 INFO    ] time= 27/06/2026 07:27:09
[2026-06-27 07:27:09,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:27:09,135.135 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:27:09,201.201 INFO    ] No existing commands found in stream
[2026-06-27 07:27:14,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:27:14,215.215 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-27 07:27:17,662.662 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 07:27:17,664.664 INFO    ] Checking for system updates...
[2026-06-27 07:27:17,685.685 INFO    ] 200
[2026-06-27 07:27:17,686.686 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:27:17,717.717 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:27:17,719.719 INFO    ] No update needed
[2026-06-27 07:27:17,720.720 INFO    ] Checking for camera pi updates...
[2026-06-27 07:27:17,740.740 INFO    ] 200
[2026-06-27 07:27:17,742.742 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:27:17,765.765 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:27:17,799.799 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:27:17,800.800 INFO    ] No camera update needed
[2026-06-27 07:27:17,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:27:17,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:27:17,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:27:17,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:27:19,847.847 INFO    ] ================================================
[2026-06-27 07:27:19,863.863 INFO    ] Launching Daemon at Sat Jun 27 07:27:19 IST 2026
[2026-06-27 07:27:19,874.874 INFO    ] ================================================
[2026-06-27 07:27:20,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:27:20
[2026-06-27 07:27:20,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:27:20,690.690 INFO    ] Initializing speech engine...
[2026-06-27 07:27:20,703.703 INFO    ] 2026-06-27 07:27:20
[2026-06-27 07:27:20,911.911 INFO    ] 2026-06-27 07:27:20
[2026-06-27 07:27:20,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:27:21,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:27:21,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:27:21,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:27:21,337.337 INFO    ] time= 27/06/2026 07:27:21
[2026-06-27 07:27:21,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:27:21,363.363 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:27:21,434.434 INFO    ] No existing commands found in stream
[2026-06-27 07:27:26,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:27:26,448.448 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-27 07:27:28,982.982 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 07:27:28,984.984 INFO    ] Checking for system updates...
[2026-06-27 07:27:29,006.006 INFO    ] 200
[2026-06-27 07:27:29,008.008 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:27:29,038.038 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:27:29,039.039 INFO    ] No update needed
[2026-06-27 07:27:29,041.041 INFO    ] Checking for camera pi updates...
[2026-06-27 07:27:29,060.060 INFO    ] 200
[2026-06-27 07:27:29,062.062 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:27:29,085.085 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:27:29,223.223 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:27:29,224.224 INFO    ] No camera update needed
[2026-06-27 07:27:29,226.226 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:27:29,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:27:29,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:27:29,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:27:31,273.273 INFO    ] ================================================
[2026-06-27 07:27:31,289.289 INFO    ] Launching Daemon at Sat Jun 27 07:27:31 IST 2026
[2026-06-27 07:27:31,300.300 INFO    ] ================================================
[2026-06-27 07:27:31,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:27:31
[2026-06-27 07:27:31,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:27:32,137.137 INFO    ] Initializing speech engine...
[2026-06-27 07:27:32,150.150 INFO    ] 2026-06-27 07:27:32
[2026-06-27 07:27:32,375.375 INFO    ] 2026-06-27 07:27:32
[2026-06-27 07:27:32,407.407 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:27:32,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:27:32,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:27:32,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:27:32,747.747 INFO    ] time= 27/06/2026 07:27:32
[2026-06-27 07:27:32,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:27:32,836.836 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:27:32,915.915 INFO    ] No existing commands found in stream
[2026-06-27 07:27:37,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:27:37,928.928 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-27 07:27:39,182.182 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 07:27:39,184.184 INFO    ] Checking for system updates...
[2026-06-27 07:27:39,205.205 INFO    ] 200
[2026-06-27 07:27:39,206.206 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:27:39,237.237 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:27:39,238.238 INFO    ] No update needed
[2026-06-27 07:27:39,240.240 INFO    ] Checking for camera pi updates...
[2026-06-27 07:27:39,259.259 INFO    ] 200
[2026-06-27 07:27:39,261.261 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:27:39,284.284 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:27:39,324.324 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:27:39,326.326 INFO    ] No camera update needed
[2026-06-27 07:27:39,327.327 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:27:39,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:27:39,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:27:39,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:27:41,377.377 INFO    ] ================================================
[2026-06-27 07:27:41,393.393 INFO    ] Launching Daemon at Sat Jun 27 07:27:41 IST 2026
[2026-06-27 07:27:41,404.404 INFO    ] ================================================
[2026-06-27 07:27:41,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:27:41
[2026-06-27 07:27:42,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:27:42,210.210 INFO    ] Initializing speech engine...
[2026-06-27 07:27:42,223.223 INFO    ] 2026-06-27 07:27:42
[2026-06-27 07:27:42,430.430 INFO    ] 2026-06-27 07:27:42
[2026-06-27 07:27:42,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:27:42,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:27:42,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:27:42,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:27:42,861.861 INFO    ] time= 27/06/2026 07:27:42
[2026-06-27 07:27:42,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:27:42,882.882 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:27:42,948.948 INFO    ] No existing commands found in stream
[2026-06-27 07:27:47,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:27:47,961.961 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-27 07:27:52,310.310 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:27:52,311.311 INFO    ] Checking for system updates...
[2026-06-27 07:27:52,332.332 INFO    ] 200
[2026-06-27 07:27:52,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:27:52,367.367 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:27:52,368.368 INFO    ] No update needed
[2026-06-27 07:27:52,370.370 INFO    ] Checking for camera pi updates...
[2026-06-27 07:27:52,391.391 INFO    ] 200
[2026-06-27 07:27:52,392.392 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:27:52,415.415 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:27:52,451.451 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:27:52,453.453 INFO    ] No camera update needed
[2026-06-27 07:27:52,454.454 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:27:52,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:27:52,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:27:52,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:27:54,502.502 INFO    ] ================================================
[2026-06-27 07:27:54,517.517 INFO    ] Launching Daemon at Sat Jun 27 07:27:54 IST 2026
[2026-06-27 07:27:54,528.528 INFO    ] ================================================
[2026-06-27 07:27:54,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:27:54
[2026-06-27 07:27:55,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:27:55,347.347 INFO    ] Initializing speech engine...
[2026-06-27 07:27:55,353.353 INFO    ] 2026-06-27 07:27:55
[2026-06-27 07:27:55,562.562 INFO    ] 2026-06-27 07:27:55
[2026-06-27 07:27:55,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:27:55,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:27:55,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:27:55,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:27:56,005.005 INFO    ] time= 27/06/2026 07:27:55
[2026-06-27 07:27:56,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:27:56,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:27:56,076.076 INFO    ] No existing commands found in stream
[2026-06-27 07:28:01,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:28:01,106.106 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-27 07:28:03,015.015 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:28:03,016.016 INFO    ] Checking for system updates...
[2026-06-27 07:28:03,038.038 INFO    ] 200
[2026-06-27 07:28:03,040.040 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:28:03,074.074 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:28:03,075.075 INFO    ] No update needed
[2026-06-27 07:28:03,077.077 INFO    ] Checking for camera pi updates...
[2026-06-27 07:28:03,097.097 INFO    ] 200
[2026-06-27 07:28:03,098.098 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:28:03,121.121 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:28:03,167.167 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:28:03,169.169 INFO    ] No camera update needed
[2026-06-27 07:28:03,170.170 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:28:03,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:28:03,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:28:03,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:28:05,218.218 INFO    ] ================================================
[2026-06-27 07:28:05,237.237 INFO    ] Launching Daemon at Sat Jun 27 07:28:05 IST 2026
[2026-06-27 07:28:05,251.251 INFO    ] ================================================
[2026-06-27 07:28:05,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:28:05
[2026-06-27 07:28:05,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:28:06,061.061 INFO    ] Initializing speech engine...
[2026-06-27 07:28:06,065.065 INFO    ] 2026-06-27 07:28:06
[2026-06-27 07:28:06,268.268 INFO    ] 2026-06-27 07:28:06
[2026-06-27 07:28:06,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:28:06,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:28:06,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:28:06,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:28:06,675.675 INFO    ] time= 27/06/2026 07:28:06
[2026-06-27 07:28:06,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:28:06,760.760 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:28:06,853.853 INFO    ] No existing commands found in stream
[2026-06-27 07:28:11,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:28:11,865.865 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-27 07:28:13,404.404 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 07:28:13,406.406 INFO    ] Checking for system updates...
[2026-06-27 07:28:13,428.428 INFO    ] 200
[2026-06-27 07:28:13,430.430 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:28:13,464.464 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:28:13,466.466 INFO    ] No update needed
[2026-06-27 07:28:13,468.468 INFO    ] Checking for camera pi updates...
[2026-06-27 07:28:13,488.488 INFO    ] 200
[2026-06-27 07:28:13,490.490 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:28:13,518.518 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:28:13,564.564 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:28:13,565.565 INFO    ] No camera update needed
[2026-06-27 07:28:13,567.567 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:28:13,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:28:13,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:28:13,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:28:15,614.614 INFO    ] ================================================
[2026-06-27 07:28:15,629.629 INFO    ] Launching Daemon at Sat Jun 27 07:28:15 IST 2026
[2026-06-27 07:28:15,640.640 INFO    ] ================================================
[2026-06-27 07:28:15,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:28:15
[2026-06-27 07:28:16,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:28:16,444.444 INFO    ] Initializing speech engine...
[2026-06-27 07:28:16,447.447 INFO    ] 2026-06-27 07:28:16
[2026-06-27 07:28:16,671.671 INFO    ] 2026-06-27 07:28:16
[2026-06-27 07:28:16,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:28:16,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:28:16,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:28:17,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:28:17,103.103 INFO    ] time= 27/06/2026 07:28:17
[2026-06-27 07:28:17,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:28:17,149.149 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:28:17,251.251 INFO    ] No existing commands found in stream
[2026-06-27 07:28:22,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:28:22,262.262 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-27 07:28:25,667.667 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 07:28:25,669.669 INFO    ] Checking for system updates...
[2026-06-27 07:28:25,689.689 INFO    ] 200
[2026-06-27 07:28:25,691.691 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:28:25,722.722 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:28:25,723.723 INFO    ] No update needed
[2026-06-27 07:28:25,724.724 INFO    ] Checking for camera pi updates...
[2026-06-27 07:28:25,744.744 INFO    ] 200
[2026-06-27 07:28:25,746.746 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:28:25,769.769 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:28:25,808.808 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:28:25,809.809 INFO    ] No camera update needed
[2026-06-27 07:28:25,810.810 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:28:25,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:28:25,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:28:25,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:28:27,857.857 INFO    ] ================================================
[2026-06-27 07:28:27,872.872 INFO    ] Launching Daemon at Sat Jun 27 07:28:27 IST 2026
[2026-06-27 07:28:27,884.884 INFO    ] ================================================
[2026-06-27 07:28:28,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:28:28
[2026-06-27 07:28:28,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:28:28,681.681 INFO    ] Initializing speech engine...
[2026-06-27 07:28:28,685.685 INFO    ] 2026-06-27 07:28:28
[2026-06-27 07:28:28,904.904 INFO    ] 2026-06-27 07:28:28
[2026-06-27 07:28:28,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:28:29,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:28:29,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:28:29,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:28:29,302.302 INFO    ] time= 27/06/2026 07:28:29
[2026-06-27 07:28:29,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:28:29,373.373 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:28:29,470.470 INFO    ] No existing commands found in stream
[2026-06-27 07:28:34,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:28:34,485.485 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-27 07:28:38,205.205 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 07:28:38,207.207 INFO    ] Checking for system updates...
[2026-06-27 07:28:38,228.228 INFO    ] 200
[2026-06-27 07:28:38,230.230 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:28:38,261.261 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:28:38,262.262 INFO    ] No update needed
[2026-06-27 07:28:38,264.264 INFO    ] Checking for camera pi updates...
[2026-06-27 07:28:38,284.284 INFO    ] 200
[2026-06-27 07:28:38,286.286 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:28:38,311.311 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:28:38,363.363 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:28:38,364.364 INFO    ] No camera update needed
[2026-06-27 07:28:38,366.366 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:28:38,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:28:38,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:28:38,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:28:40,413.413 INFO    ] ================================================
[2026-06-27 07:28:40,428.428 INFO    ] Launching Daemon at Sat Jun 27 07:28:40 IST 2026
[2026-06-27 07:28:40,439.439 INFO    ] ================================================
[2026-06-27 07:28:40,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:28:40
[2026-06-27 07:28:41,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:28:41,304.304 INFO    ] Initializing speech engine...
[2026-06-27 07:28:41,315.315 INFO    ] 2026-06-27 07:28:41
[2026-06-27 07:28:41,524.524 INFO    ] 2026-06-27 07:28:41
[2026-06-27 07:28:41,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:28:41,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:28:41,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:28:41,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:28:41,952.952 INFO    ] time= 27/06/2026 07:28:41
[2026-06-27 07:28:41,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:28:41,980.980 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:28:42,048.048 INFO    ] No existing commands found in stream
[2026-06-27 07:28:47,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:28:47,065.065 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-27 07:28:47,442.442 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 07:28:47,444.444 INFO    ] Checking for system updates...
[2026-06-27 07:28:47,465.465 INFO    ] 200
[2026-06-27 07:28:47,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:28:47,498.498 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:28:47,500.500 INFO    ] No update needed
[2026-06-27 07:28:47,501.501 INFO    ] Checking for camera pi updates...
[2026-06-27 07:28:47,522.522 INFO    ] 200
[2026-06-27 07:28:47,524.524 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:28:47,548.548 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:28:47,584.584 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:28:47,586.586 INFO    ] No camera update needed
[2026-06-27 07:28:47,587.587 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:28:47,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:28:47,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:28:47,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:28:49,632.632 INFO    ] ================================================
[2026-06-27 07:28:49,647.647 INFO    ] Launching Daemon at Sat Jun 27 07:28:49 IST 2026
[2026-06-27 07:28:49,658.658 INFO    ] ================================================
[2026-06-27 07:28:50,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:28:49
[2026-06-27 07:28:50,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:28:50,456.456 INFO    ] Initializing speech engine...
[2026-06-27 07:28:50,461.461 INFO    ] 2026-06-27 07:28:50
[2026-06-27 07:28:50,663.663 INFO    ] 2026-06-27 07:28:50
[2026-06-27 07:28:50,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:28:50,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:28:50,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:28:51,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:28:51,101.101 INFO    ] time= 27/06/2026 07:28:51
[2026-06-27 07:28:51,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:28:51,108.108 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:28:51,174.174 INFO    ] No existing commands found in stream
[2026-06-27 07:28:56,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:28:56,186.186 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-27 07:29:00,371.371 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 07:29:00,372.372 INFO    ] Checking for system updates...
[2026-06-27 07:29:00,394.394 INFO    ] 200
[2026-06-27 07:29:00,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:29:00,427.427 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:29:00,428.428 INFO    ] No update needed
[2026-06-27 07:29:00,430.430 INFO    ] Checking for camera pi updates...
[2026-06-27 07:29:00,449.449 INFO    ] 200
[2026-06-27 07:29:00,451.451 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:29:00,476.476 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:29:00,518.518 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:29:00,519.519 INFO    ] No camera update needed
[2026-06-27 07:29:00,521.521 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:29:00,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:29:00,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:29:00,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:29:02,573.573 INFO    ] ================================================
[2026-06-27 07:29:02,581.581 INFO    ] Launching Daemon at Sat Jun 27 07:29:02 IST 2026
[2026-06-27 07:29:02,587.587 INFO    ] ================================================
[2026-06-27 07:29:02,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:29:02
[2026-06-27 07:29:03,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:29:03,404.404 INFO    ] Initializing speech engine...
[2026-06-27 07:29:03,413.413 INFO    ] 2026-06-27 07:29:03
[2026-06-27 07:29:03,640.640 INFO    ] 2026-06-27 07:29:03
[2026-06-27 07:29:03,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:29:03,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:29:03,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:29:04,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:29:04,072.072 INFO    ] time= 27/06/2026 07:29:04
[2026-06-27 07:29:04,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:29:04,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:29:04,193.193 INFO    ] No existing commands found in stream
[2026-06-27 07:29:09,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:29:09,207.207 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-27 07:29:13,582.582 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 07:29:13,584.584 INFO    ] Checking for system updates...
[2026-06-27 07:29:13,606.606 INFO    ] 200
[2026-06-27 07:29:13,608.608 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:29:13,641.641 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:29:13,643.643 INFO    ] No update needed
[2026-06-27 07:29:13,644.644 INFO    ] Checking for camera pi updates...
[2026-06-27 07:29:13,664.664 INFO    ] 200
[2026-06-27 07:29:13,665.665 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:29:13,689.689 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:29:13,726.726 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:29:13,728.728 INFO    ] No camera update needed
[2026-06-27 07:29:13,729.729 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:29:13,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:29:13,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:29:13,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:29:15,775.775 INFO    ] ================================================
[2026-06-27 07:29:15,790.790 INFO    ] Launching Daemon at Sat Jun 27 07:29:15 IST 2026
[2026-06-27 07:29:15,801.801 INFO    ] ================================================
[2026-06-27 07:29:16,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:29:16
[2026-06-27 07:29:16,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:29:16,621.621 INFO    ] Initializing speech engine...
[2026-06-27 07:29:16,632.632 INFO    ] 2026-06-27 07:29:16
[2026-06-27 07:29:16,839.839 INFO    ] 2026-06-27 07:29:16
[2026-06-27 07:29:16,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:29:17,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:29:17,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:29:17,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:29:17,262.262 INFO    ] time= 27/06/2026 07:29:17
[2026-06-27 07:29:17,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:29:17,293.293 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:29:17,360.360 INFO    ] No existing commands found in stream
[2026-06-27 07:29:22,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:29:22,378.378 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-27 07:29:26,143.143 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:29:26,145.145 INFO    ] Checking for system updates...
[2026-06-27 07:29:26,166.166 INFO    ] 200
[2026-06-27 07:29:26,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:29:26,201.201 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:29:26,202.202 INFO    ] No update needed
[2026-06-27 07:29:26,204.204 INFO    ] Checking for camera pi updates...
[2026-06-27 07:29:26,223.223 INFO    ] 200
[2026-06-27 07:29:26,225.225 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:29:26,248.248 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:29:26,291.291 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:29:26,292.292 INFO    ] No camera update needed
[2026-06-27 07:29:26,294.294 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:29:26,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:29:26,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:29:26,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:29:28,339.339 INFO    ] ================================================
[2026-06-27 07:29:28,354.354 INFO    ] Launching Daemon at Sat Jun 27 07:29:28 IST 2026
[2026-06-27 07:29:28,364.364 INFO    ] ================================================
[2026-06-27 07:29:28,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:29:28
[2026-06-27 07:29:29,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:29:29,174.174 INFO    ] Initializing speech engine...
[2026-06-27 07:29:29,184.184 INFO    ] 2026-06-27 07:29:29
[2026-06-27 07:29:29,392.392 INFO    ] 2026-06-27 07:29:29
[2026-06-27 07:29:29,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:29:29,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:29:29,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:29:29,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:29:29,806.806 INFO    ] time= 27/06/2026 07:29:29
[2026-06-27 07:29:29,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:29:29,840.840 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:29:29,907.907 INFO    ] No existing commands found in stream
[2026-06-27 07:29:34,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:29:34,919.919 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-27 07:29:37,000.000 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 07:29:37,001.001 INFO    ] Checking for system updates...
[2026-06-27 07:29:37,022.022 INFO    ] 200
[2026-06-27 07:29:37,024.024 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:29:37,054.054 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:29:37,055.055 INFO    ] No update needed
[2026-06-27 07:29:37,057.057 INFO    ] Checking for camera pi updates...
[2026-06-27 07:29:37,077.077 INFO    ] 200
[2026-06-27 07:29:37,079.079 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:29:37,103.103 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:29:37,145.145 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:29:37,146.146 INFO    ] No camera update needed
[2026-06-27 07:29:37,147.147 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:29:37,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:29:37,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:29:37,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:29:39,192.192 INFO    ] ================================================
[2026-06-27 07:29:39,208.208 INFO    ] Launching Daemon at Sat Jun 27 07:29:39 IST 2026
[2026-06-27 07:29:39,218.218 INFO    ] ================================================
[2026-06-27 07:29:39,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:29:39
[2026-06-27 07:29:39,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:29:40,005.005 INFO    ] Initializing speech engine...
[2026-06-27 07:29:40,010.010 INFO    ] 2026-06-27 07:29:40
[2026-06-27 07:29:40,216.216 INFO    ] 2026-06-27 07:29:40
[2026-06-27 07:29:40,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:29:40,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:29:40,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:29:40,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:29:40,642.642 INFO    ] time= 27/06/2026 07:29:40
[2026-06-27 07:29:40,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:29:40,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:29:40,737.737 INFO    ] No existing commands found in stream
[2026-06-27 07:29:45,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:29:45,754.754 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-27 07:29:46,149.149 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 07:29:46,151.151 INFO    ] Checking for system updates...
[2026-06-27 07:29:46,174.174 INFO    ] 200
[2026-06-27 07:29:46,176.176 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:29:46,209.209 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:29:46,210.210 INFO    ] No update needed
[2026-06-27 07:29:46,212.212 INFO    ] Checking for camera pi updates...
[2026-06-27 07:29:46,231.231 INFO    ] 200
[2026-06-27 07:29:46,233.233 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:29:46,257.257 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:29:46,304.304 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:29:46,306.306 INFO    ] No camera update needed
[2026-06-27 07:29:46,307.307 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:29:46,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:29:46,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:29:46,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:29:48,354.354 INFO    ] ================================================
[2026-06-27 07:29:48,369.369 INFO    ] Launching Daemon at Sat Jun 27 07:29:48 IST 2026
[2026-06-27 07:29:48,379.379 INFO    ] ================================================
[2026-06-27 07:29:48,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:29:48
[2026-06-27 07:29:49,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:29:49,180.180 INFO    ] Initializing speech engine...
[2026-06-27 07:29:49,190.190 INFO    ] 2026-06-27 07:29:49
[2026-06-27 07:29:49,381.381 INFO    ] 2026-06-27 07:29:49
[2026-06-27 07:29:49,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:29:49,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:29:49,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:29:49,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:29:49,805.805 INFO    ] time= 27/06/2026 07:29:49
[2026-06-27 07:29:49,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:29:49,844.844 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:29:49,915.915 INFO    ] No existing commands found in stream
[2026-06-27 07:29:54,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:29:54,927.927 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-27 07:29:55,739.739 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:29:55,740.740 INFO    ] Checking for system updates...
[2026-06-27 07:29:55,763.763 INFO    ] 200
[2026-06-27 07:29:55,765.765 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:29:55,796.796 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:29:55,797.797 INFO    ] No update needed
[2026-06-27 07:29:55,799.799 INFO    ] Checking for camera pi updates...
[2026-06-27 07:29:55,818.818 INFO    ] 200
[2026-06-27 07:29:55,820.820 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:29:55,845.845 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:29:55,895.895 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:29:55,896.896 INFO    ] No camera update needed
[2026-06-27 07:29:55,897.897 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:29:55,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:29:55,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:29:55,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:29:57,944.944 INFO    ] ================================================
[2026-06-27 07:29:57,959.959 INFO    ] Launching Daemon at Sat Jun 27 07:29:57 IST 2026
[2026-06-27 07:29:57,969.969 INFO    ] ================================================
[2026-06-27 07:29:58,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:29:58
[2026-06-27 07:29:58,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:29:58,783.783 INFO    ] Initializing speech engine...
[2026-06-27 07:29:58,788.788 INFO    ] 2026-06-27 07:29:58
[2026-06-27 07:29:58,992.992 INFO    ] 2026-06-27 07:29:58
[2026-06-27 07:29:59,021.021 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:29:59,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:29:59,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:29:59,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:29:59,432.432 INFO    ] time= 27/06/2026 07:29:59
[2026-06-27 07:29:59,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:29:59,439.439 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:29:59,506.506 INFO    ] No existing commands found in stream
[2026-06-27 07:30:04,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:30:04,518.518 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-27 07:30:08,482.482 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:30:08,483.483 INFO    ] Checking for system updates...
[2026-06-27 07:30:08,504.504 INFO    ] 200
[2026-06-27 07:30:08,505.505 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:30:08,537.537 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:30:08,539.539 INFO    ] No update needed
[2026-06-27 07:30:08,541.541 INFO    ] Checking for camera pi updates...
[2026-06-27 07:30:08,560.560 INFO    ] 200
[2026-06-27 07:30:08,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:30:08,585.585 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:30:08,621.621 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:30:08,623.623 INFO    ] No camera update needed
[2026-06-27 07:30:08,624.624 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:30:08,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:30:08,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:30:08,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:30:10,669.669 INFO    ] ================================================
[2026-06-27 07:30:10,685.685 INFO    ] Launching Daemon at Sat Jun 27 07:30:10 IST 2026
[2026-06-27 07:30:10,696.696 INFO    ] ================================================
[2026-06-27 07:30:11,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:30:11
[2026-06-27 07:30:11,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:30:11,497.497 INFO    ] Initializing speech engine...
[2026-06-27 07:30:11,501.501 INFO    ] 2026-06-27 07:30:11
[2026-06-27 07:30:11,707.707 INFO    ] 2026-06-27 07:30:11
[2026-06-27 07:30:11,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:30:11,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:30:11,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:30:12,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:30:12,129.129 INFO    ] time= 27/06/2026 07:30:12
[2026-06-27 07:30:12,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:30:12,163.163 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:30:12,230.230 INFO    ] No existing commands found in stream
[2026-06-27 07:30:17,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:30:17,243.243 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-27 07:30:19,184.184 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 07:30:19,185.185 INFO    ] Checking for system updates...
[2026-06-27 07:30:19,206.206 INFO    ] 200
[2026-06-27 07:30:19,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:30:19,240.240 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:30:19,242.242 INFO    ] No update needed
[2026-06-27 07:30:19,243.243 INFO    ] Checking for camera pi updates...
[2026-06-27 07:30:19,264.264 INFO    ] 200
[2026-06-27 07:30:19,266.266 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:30:19,291.291 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:30:19,327.327 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:30:19,328.328 INFO    ] No camera update needed
[2026-06-27 07:30:19,330.330 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:30:19,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:30:19,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:30:19,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:30:21,381.381 INFO    ] ================================================
[2026-06-27 07:30:21,396.396 INFO    ] Launching Daemon at Sat Jun 27 07:30:21 IST 2026
[2026-06-27 07:30:21,407.407 INFO    ] ================================================
[2026-06-27 07:30:21,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:30:21
[2026-06-27 07:30:22,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:30:22,230.230 INFO    ] Initializing speech engine...
[2026-06-27 07:30:22,238.238 INFO    ] 2026-06-27 07:30:22
[2026-06-27 07:30:22,451.451 INFO    ] 2026-06-27 07:30:22
[2026-06-27 07:30:22,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:30:22,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:30:22,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:30:22,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:30:22,894.894 INFO    ] time= 27/06/2026 07:30:22
[2026-06-27 07:30:22,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:30:22,901.901 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:30:22,969.969 INFO    ] No existing commands found in stream
[2026-06-27 07:30:27,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:30:27,981.981 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-27 07:30:31,756.756 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 07:30:31,757.757 INFO    ] Checking for system updates...
[2026-06-27 07:30:31,779.779 INFO    ] 200
[2026-06-27 07:30:31,781.781 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:30:31,815.815 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:30:31,816.816 INFO    ] No update needed
[2026-06-27 07:30:31,818.818 INFO    ] Checking for camera pi updates...
[2026-06-27 07:30:31,839.839 INFO    ] 200
[2026-06-27 07:30:31,840.840 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:30:31,867.867 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:30:31,895.895 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:30:31,896.896 INFO    ] No camera update needed
[2026-06-27 07:30:31,898.898 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:30:31,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:30:31,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:30:31,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:30:33,942.942 INFO    ] ================================================
[2026-06-27 07:30:33,957.957 INFO    ] Launching Daemon at Sat Jun 27 07:30:33 IST 2026
[2026-06-27 07:30:33,968.968 INFO    ] ================================================
[2026-06-27 07:30:34,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:30:34
[2026-06-27 07:30:34,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:30:34,825.825 INFO    ] Initializing speech engine...
[2026-06-27 07:30:34,838.838 INFO    ] 2026-06-27 07:30:34
[2026-06-27 07:30:35,052.052 INFO    ] 2026-06-27 07:30:35
[2026-06-27 07:30:35,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:30:35,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:30:35,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:30:35,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:30:35,369.369 INFO    ] time= 27/06/2026 07:30:35
[2026-06-27 07:30:35,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:30:35,371.371 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:30:35,436.436 INFO    ] No existing commands found in stream
[2026-06-27 07:30:40,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:30:40,462.462 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-27 07:30:43,262.262 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 07:30:43,263.263 INFO    ] Checking for system updates...
[2026-06-27 07:30:43,285.285 INFO    ] 200
[2026-06-27 07:30:43,287.287 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:30:43,317.317 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:30:43,318.318 INFO    ] No update needed
[2026-06-27 07:30:43,320.320 INFO    ] Checking for camera pi updates...
[2026-06-27 07:30:43,339.339 INFO    ] 200
[2026-06-27 07:30:43,341.341 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:30:43,364.364 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:30:43,404.404 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:30:43,406.406 INFO    ] No camera update needed
[2026-06-27 07:30:43,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:30:43,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:30:43,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:30:43,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:30:45,451.451 INFO    ] ================================================
[2026-06-27 07:30:45,467.467 INFO    ] Launching Daemon at Sat Jun 27 07:30:45 IST 2026
[2026-06-27 07:30:45,478.478 INFO    ] ================================================
[2026-06-27 07:30:45,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:30:45
[2026-06-27 07:30:46,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:30:46,395.395 INFO    ] Initializing speech engine...
[2026-06-27 07:30:46,400.400 INFO    ] 2026-06-27 07:30:46
[2026-06-27 07:30:46,632.632 INFO    ] 2026-06-27 07:30:46
[2026-06-27 07:30:46,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:30:46,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:30:46,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:30:46,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:30:47,001.001 INFO    ] time= 27/06/2026 07:30:47
[2026-06-27 07:30:47,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:30:47,086.086 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:30:47,182.182 INFO    ] No existing commands found in stream
[2026-06-27 07:30:52,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:30:52,196.196 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-27 07:30:53,031.031 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 07:30:53,033.033 INFO    ] Checking for system updates...
[2026-06-27 07:30:53,054.054 INFO    ] 200
[2026-06-27 07:30:53,055.055 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:30:53,086.086 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:30:53,087.087 INFO    ] No update needed
[2026-06-27 07:30:53,089.089 INFO    ] Checking for camera pi updates...
[2026-06-27 07:30:53,112.112 INFO    ] 200
[2026-06-27 07:30:53,113.113 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:30:53,138.138 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:30:53,162.162 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:30:53,164.164 INFO    ] No camera update needed
[2026-06-27 07:30:53,165.165 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:30:53,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:30:53,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:30:53,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:30:55,211.211 INFO    ] ================================================
[2026-06-27 07:30:55,227.227 INFO    ] Launching Daemon at Sat Jun 27 07:30:55 IST 2026
[2026-06-27 07:30:55,239.239 INFO    ] ================================================
[2026-06-27 07:30:55,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:30:55
[2026-06-27 07:30:55,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:30:56,012.012 INFO    ] Initializing speech engine...
[2026-06-27 07:30:56,022.022 INFO    ] 2026-06-27 07:30:56
[2026-06-27 07:30:56,236.236 INFO    ] 2026-06-27 07:30:56
[2026-06-27 07:30:56,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:30:56,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:30:56,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:30:56,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:30:56,654.654 INFO    ] time= 27/06/2026 07:30:56
[2026-06-27 07:30:56,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:30:56,688.688 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:30:56,780.780 INFO    ] No existing commands found in stream
[2026-06-27 07:31:01,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:31:01,795.795 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-27 07:31:02,492.492 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 07:31:02,494.494 INFO    ] Checking for system updates...
[2026-06-27 07:31:02,515.515 INFO    ] 200
[2026-06-27 07:31:02,517.517 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-27 07:31:02,518.518 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-27 07:31:02,519.519 INFO    ] Checking for camera pi updates...
[2026-06-27 07:31:02,542.542 INFO    ] 200
[2026-06-27 07:31:02,543.543 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-27 07:31:02,545.545 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-27 07:31:02,546.546 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:31:02,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:31:02,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:31:02,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:31:04,591.591 INFO    ] ================================================
[2026-06-27 07:31:04,607.607 INFO    ] Launching Daemon at Sat Jun 27 07:31:04 IST 2026
[2026-06-27 07:31:04,617.617 INFO    ] ================================================
[2026-06-27 07:31:05,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:31:04
[2026-06-27 07:31:05,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:31:05,467.467 INFO    ] Initializing speech engine...
[2026-06-27 07:31:05,478.478 INFO    ] 2026-06-27 07:31:05
[2026-06-27 07:31:05,683.683 INFO    ] 2026-06-27 07:31:05
[2026-06-27 07:31:05,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:31:05,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:31:05,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:31:06,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:31:06,100.100 INFO    ] time= 27/06/2026 07:31:06
[2026-06-27 07:31:06,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:31:06,133.133 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:31:06,199.199 INFO    ] No existing commands found in stream
[2026-06-27 07:31:11,210.210 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:31:11,212.212 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-27 07:31:15,370.370 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 07:31:15,371.371 INFO    ] Checking for system updates...
[2026-06-27 07:31:15,392.392 INFO    ] 200
[2026-06-27 07:31:15,393.393 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:31:15,425.425 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:31:15,426.426 INFO    ] No update needed
[2026-06-27 07:31:15,427.427 INFO    ] Checking for camera pi updates...
[2026-06-27 07:31:15,448.448 INFO    ] 200
[2026-06-27 07:31:15,449.449 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:31:15,474.474 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:31:15,523.523 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:31:15,524.524 INFO    ] No camera update needed
[2026-06-27 07:31:15,526.526 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:31:15,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:31:15,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:31:15,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:31:17,571.571 INFO    ] ================================================
[2026-06-27 07:31:17,587.587 INFO    ] Launching Daemon at Sat Jun 27 07:31:17 IST 2026
[2026-06-27 07:31:17,597.597 INFO    ] ================================================
[2026-06-27 07:31:17,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:31:17
[2026-06-27 07:31:18,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:31:18,462.462 INFO    ] Initializing speech engine...
[2026-06-27 07:31:18,468.468 INFO    ] 2026-06-27 07:31:18
[2026-06-27 07:31:18,670.670 INFO    ] 2026-06-27 07:31:18
[2026-06-27 07:31:18,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:31:18,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:31:18,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:31:19,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:31:19,077.077 INFO    ] time= 27/06/2026 07:31:19
[2026-06-27 07:31:19,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:31:19,121.121 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:31:19,188.188 INFO    ] No existing commands found in stream
[2026-06-27 07:31:24,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:31:24,205.205 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-27 07:31:27,507.507 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 07:31:27,508.508 INFO    ] Checking for system updates...
[2026-06-27 07:31:27,530.530 INFO    ] 200
[2026-06-27 07:31:27,532.532 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:31:27,564.564 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:31:27,566.566 INFO    ] No update needed
[2026-06-27 07:31:27,567.567 INFO    ] Checking for camera pi updates...
[2026-06-27 07:31:27,591.591 INFO    ] 200
[2026-06-27 07:31:27,592.592 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:31:27,620.620 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:31:27,658.658 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:31:27,659.659 INFO    ] No camera update needed
[2026-06-27 07:31:27,661.661 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:31:27,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:31:27,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:31:27,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:31:29,708.708 INFO    ] ================================================
[2026-06-27 07:31:29,723.723 INFO    ] Launching Daemon at Sat Jun 27 07:31:29 IST 2026
[2026-06-27 07:31:29,734.734 INFO    ] ================================================
[2026-06-27 07:31:30,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:31:30
[2026-06-27 07:31:30,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:31:30,526.526 INFO    ] Initializing speech engine...
[2026-06-27 07:31:30,534.534 INFO    ] 2026-06-27 07:31:30
[2026-06-27 07:31:30,746.746 INFO    ] 2026-06-27 07:31:30
[2026-06-27 07:31:30,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:31:30,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:31:30,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:31:31,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:31:31,118.118 INFO    ] time= 27/06/2026 07:31:31
[2026-06-27 07:31:31,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:31:31,194.194 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:31:31,323.323 INFO    ] No existing commands found in stream
[2026-06-27 07:31:36,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:31:36,354.354 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-27 07:31:40,284.284 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:31:40,286.286 INFO    ] Checking for system updates...
[2026-06-27 07:31:40,307.307 INFO    ] 200
[2026-06-27 07:31:40,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:31:40,344.344 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:31:40,346.346 INFO    ] No update needed
[2026-06-27 07:31:40,347.347 INFO    ] Checking for camera pi updates...
[2026-06-27 07:31:40,368.368 INFO    ] 200
[2026-06-27 07:31:40,370.370 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:31:40,398.398 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:31:40,538.538 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:31:40,539.539 INFO    ] No camera update needed
[2026-06-27 07:31:40,541.541 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:31:40,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:31:40,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:31:40,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:31:42,588.588 INFO    ] ================================================
[2026-06-27 07:31:42,603.603 INFO    ] Launching Daemon at Sat Jun 27 07:31:42 IST 2026
[2026-06-27 07:31:42,614.614 INFO    ] ================================================
[2026-06-27 07:31:42,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:31:42
[2026-06-27 07:31:43,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:31:43,411.411 INFO    ] Initializing speech engine...
[2026-06-27 07:31:43,417.417 INFO    ] 2026-06-27 07:31:43
[2026-06-27 07:31:43,623.623 INFO    ] 2026-06-27 07:31:43
[2026-06-27 07:31:43,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:31:43,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:31:43,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:31:43,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:31:44,043.043 INFO    ] time= 27/06/2026 07:31:44
[2026-06-27 07:31:44,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:31:44,071.071 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:31:44,137.137 INFO    ] No existing commands found in stream
[2026-06-27 07:31:49,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:31:49,149.149 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-27 07:31:51,342.342 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:31:51,344.344 INFO    ] Checking for system updates...
[2026-06-27 07:31:51,365.365 INFO    ] 200
[2026-06-27 07:31:51,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:31:51,400.400 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:31:51,401.401 INFO    ] No update needed
[2026-06-27 07:31:51,403.403 INFO    ] Checking for camera pi updates...
[2026-06-27 07:31:51,425.425 INFO    ] 200
[2026-06-27 07:31:51,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:31:51,452.452 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:31:51,490.490 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:31:51,491.491 INFO    ] No camera update needed
[2026-06-27 07:31:51,493.493 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:31:51,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:31:51,497.497 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:31:51,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:31:53,541.541 INFO    ] ================================================
[2026-06-27 07:31:53,556.556 INFO    ] Launching Daemon at Sat Jun 27 07:31:53 IST 2026
[2026-06-27 07:31:53,567.567 INFO    ] ================================================
[2026-06-27 07:31:53,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:31:53
[2026-06-27 07:31:54,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:31:54,348.348 INFO    ] Initializing speech engine...
[2026-06-27 07:31:54,361.361 INFO    ] 2026-06-27 07:31:54
[2026-06-27 07:31:54,572.572 INFO    ] 2026-06-27 07:31:54
[2026-06-27 07:31:54,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:31:54,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:31:54,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:31:54,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:31:54,983.983 INFO    ] time= 27/06/2026 07:31:54
[2026-06-27 07:31:55,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:31:55,028.028 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:31:55,096.096 INFO    ] No existing commands found in stream
[2026-06-27 07:32:00,111.111 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:32:00,114.114 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-27 07:32:01,212.212 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 07:32:01,214.214 INFO    ] Checking for system updates...
[2026-06-27 07:32:01,235.235 INFO    ] 200
[2026-06-27 07:32:01,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:32:01,266.266 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:32:01,268.268 INFO    ] No update needed
[2026-06-27 07:32:01,269.269 INFO    ] Checking for camera pi updates...
[2026-06-27 07:32:01,288.288 INFO    ] 200
[2026-06-27 07:32:01,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:32:01,323.323 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:32:01,374.374 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:32:01,377.377 INFO    ] No camera update needed
[2026-06-27 07:32:01,380.380 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:32:01,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:32:01,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:32:01,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:32:03,432.432 INFO    ] ================================================
[2026-06-27 07:32:03,447.447 INFO    ] Launching Daemon at Sat Jun 27 07:32:03 IST 2026
[2026-06-27 07:32:03,457.457 INFO    ] ================================================
[2026-06-27 07:32:03,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:32:03
[2026-06-27 07:32:04,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:32:04,250.250 INFO    ] Initializing speech engine...
[2026-06-27 07:32:04,256.256 INFO    ] 2026-06-27 07:32:04
[2026-06-27 07:32:04,465.465 INFO    ] 2026-06-27 07:32:04
[2026-06-27 07:32:04,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:32:04,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:32:04,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:32:04,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:32:04,883.883 INFO    ] time= 27/06/2026 07:32:04
[2026-06-27 07:32:04,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:32:04,923.923 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:32:05,044.044 INFO    ] No existing commands found in stream
[2026-06-27 07:32:10,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:32:10,057.057 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-27 07:32:11,071.071 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 07:32:11,072.072 INFO    ] Checking for system updates...
[2026-06-27 07:32:11,093.093 INFO    ] 200
[2026-06-27 07:32:11,095.095 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:32:11,127.127 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:32:11,128.128 INFO    ] No update needed
[2026-06-27 07:32:11,129.129 INFO    ] Checking for camera pi updates...
[2026-06-27 07:32:11,149.149 INFO    ] 200
[2026-06-27 07:32:11,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:32:11,175.175 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:32:11,222.222 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:32:11,224.224 INFO    ] No camera update needed
[2026-06-27 07:32:11,225.225 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:32:11,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:32:11,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:32:11,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:32:13,272.272 INFO    ] ================================================
[2026-06-27 07:32:13,287.287 INFO    ] Launching Daemon at Sat Jun 27 07:32:13 IST 2026
[2026-06-27 07:32:13,298.298 INFO    ] ================================================
[2026-06-27 07:32:13,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:32:13
[2026-06-27 07:32:13,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:32:14,130.130 INFO    ] Initializing speech engine...
[2026-06-27 07:32:14,140.140 INFO    ] 2026-06-27 07:32:14
[2026-06-27 07:32:14,343.343 INFO    ] 2026-06-27 07:32:14
[2026-06-27 07:32:14,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:32:14,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:32:14,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:32:14,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:32:14,761.761 INFO    ] time= 27/06/2026 07:32:14
[2026-06-27 07:32:14,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:32:14,792.792 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:32:14,884.884 INFO    ] No existing commands found in stream
[2026-06-27 07:32:19,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:32:19,896.896 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-27 07:32:22,085.085 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 07:32:22,087.087 INFO    ] Checking for system updates...
[2026-06-27 07:32:22,108.108 INFO    ] 200
[2026-06-27 07:32:22,110.110 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:32:22,140.140 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:32:22,141.141 INFO    ] No update needed
[2026-06-27 07:32:22,143.143 INFO    ] Checking for camera pi updates...
[2026-06-27 07:32:22,163.163 INFO    ] 200
[2026-06-27 07:32:22,165.165 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:32:22,188.188 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:32:22,216.216 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:32:22,218.218 INFO    ] No camera update needed
[2026-06-27 07:32:22,219.219 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:32:22,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:32:22,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:32:22,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:32:24,267.267 INFO    ] ================================================
[2026-06-27 07:32:24,282.282 INFO    ] Launching Daemon at Sat Jun 27 07:32:24 IST 2026
[2026-06-27 07:32:24,293.293 INFO    ] ================================================
[2026-06-27 07:32:24,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:32:24
[2026-06-27 07:32:24,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:32:25,142.142 INFO    ] Initializing speech engine...
[2026-06-27 07:32:25,146.146 INFO    ] 2026-06-27 07:32:25
[2026-06-27 07:32:25,356.356 INFO    ] 2026-06-27 07:32:25
[2026-06-27 07:32:25,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:32:25,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:32:25,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:32:25,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:32:25,782.782 INFO    ] time= 27/06/2026 07:32:25
[2026-06-27 07:32:25,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:32:25,817.817 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:32:25,886.886 INFO    ] No existing commands found in stream
[2026-06-27 07:32:30,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:32:30,904.904 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-27 07:32:34,742.742 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 07:32:34,744.744 INFO    ] Checking for system updates...
[2026-06-27 07:32:34,766.766 INFO    ] 200
[2026-06-27 07:32:34,767.767 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:32:34,800.800 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:32:34,802.802 INFO    ] No update needed
[2026-06-27 07:32:34,803.803 INFO    ] Checking for camera pi updates...
[2026-06-27 07:32:34,826.826 INFO    ] 200
[2026-06-27 07:32:34,827.827 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:32:34,854.854 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:32:34,901.901 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:32:34,902.902 INFO    ] No camera update needed
[2026-06-27 07:32:34,904.904 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:32:34,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:32:34,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:32:34,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:32:36,949.949 INFO    ] ================================================
[2026-06-27 07:32:36,965.965 INFO    ] Launching Daemon at Sat Jun 27 07:32:36 IST 2026
[2026-06-27 07:32:36,976.976 INFO    ] ================================================
[2026-06-27 07:32:37,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:32:37
[2026-06-27 07:32:37,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:32:37,844.844 INFO    ] Initializing speech engine...
[2026-06-27 07:32:37,849.849 INFO    ] 2026-06-27 07:32:37
[2026-06-27 07:32:38,059.059 INFO    ] 2026-06-27 07:32:38
[2026-06-27 07:32:38,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:32:38,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:32:38,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:32:38,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:32:38,477.477 INFO    ] time= 27/06/2026 07:32:38
[2026-06-27 07:32:38,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:32:38,517.517 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:32:38,585.585 INFO    ] No existing commands found in stream
[2026-06-27 07:32:43,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:32:43,598.598 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-27 07:32:44,530.530 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 07:32:44,531.531 INFO    ] Checking for system updates...
[2026-06-27 07:32:44,553.553 INFO    ] 200
[2026-06-27 07:32:44,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:32:44,585.585 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:32:44,586.586 INFO    ] No update needed
[2026-06-27 07:32:44,588.588 INFO    ] Checking for camera pi updates...
[2026-06-27 07:32:44,608.608 INFO    ] 200
[2026-06-27 07:32:44,609.609 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:32:44,633.633 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:32:44,673.673 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:32:44,674.674 INFO    ] No camera update needed
[2026-06-27 07:32:44,676.676 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:32:44,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:32:44,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:32:44,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:32:46,720.720 INFO    ] ================================================
[2026-06-27 07:32:46,735.735 INFO    ] Launching Daemon at Sat Jun 27 07:32:46 IST 2026
[2026-06-27 07:32:46,746.746 INFO    ] ================================================
[2026-06-27 07:32:47,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:32:47
[2026-06-27 07:32:47,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:32:47,620.620 INFO    ] Initializing speech engine...
[2026-06-27 07:32:47,626.626 INFO    ] 2026-06-27 07:32:47
[2026-06-27 07:32:47,834.834 INFO    ] 2026-06-27 07:32:47
[2026-06-27 07:32:47,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:32:48,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:32:48,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:32:48,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:32:48,264.264 INFO    ] time= 27/06/2026 07:32:48
[2026-06-27 07:32:48,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:32:48,286.286 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:32:48,355.355 INFO    ] No existing commands found in stream
[2026-06-27 07:32:53,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:32:53,372.372 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-27 07:32:55,918.918 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 07:32:55,919.919 INFO    ] Checking for system updates...
[2026-06-27 07:32:55,945.945 INFO    ] 200
[2026-06-27 07:32:55,946.946 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:32:55,978.978 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:32:55,979.979 INFO    ] No update needed
[2026-06-27 07:32:55,980.980 INFO    ] Checking for camera pi updates...
[2026-06-27 07:32:56,001.001 INFO    ] 200
[2026-06-27 07:32:56,002.002 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:32:56,028.028 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:32:56,069.069 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:32:56,071.071 INFO    ] No camera update needed
[2026-06-27 07:32:56,072.072 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:32:56,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:32:56,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:32:56,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:32:58,118.118 INFO    ] ================================================
[2026-06-27 07:32:58,142.142 INFO    ] Launching Daemon at Sat Jun 27 07:32:58 IST 2026
[2026-06-27 07:32:58,153.153 INFO    ] ================================================
[2026-06-27 07:32:58,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:32:58
[2026-06-27 07:32:58,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:32:58,994.994 INFO    ] Initializing speech engine...
[2026-06-27 07:32:58,998.998 INFO    ] 2026-06-27 07:32:58
[2026-06-27 07:32:59,207.207 INFO    ] 2026-06-27 07:32:59
[2026-06-27 07:32:59,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:32:59,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:32:59,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:32:59,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:32:59,634.634 INFO    ] time= 27/06/2026 07:32:59
[2026-06-27 07:32:59,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:32:59,664.664 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:32:59,730.730 INFO    ] No existing commands found in stream
[2026-06-27 07:33:04,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:33:04,745.745 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-27 07:33:08,948.948 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 07:33:08,950.950 INFO    ] Checking for system updates...
[2026-06-27 07:33:08,972.972 INFO    ] 200
[2026-06-27 07:33:08,973.973 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:33:09,004.004 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:33:09,006.006 INFO    ] No update needed
[2026-06-27 07:33:09,007.007 INFO    ] Checking for camera pi updates...
[2026-06-27 07:33:09,027.027 INFO    ] 200
[2026-06-27 07:33:09,029.029 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:33:09,052.052 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:33:09,097.097 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:33:09,098.098 INFO    ] No camera update needed
[2026-06-27 07:33:09,100.100 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:33:09,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:33:09,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:33:09,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:33:11,147.147 INFO    ] ================================================
[2026-06-27 07:33:11,162.162 INFO    ] Launching Daemon at Sat Jun 27 07:33:11 IST 2026
[2026-06-27 07:33:11,173.173 INFO    ] ================================================
[2026-06-27 07:33:11,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:33:11
[2026-06-27 07:33:11,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:33:11,985.985 INFO    ] Initializing speech engine...
[2026-06-27 07:33:11,990.990 INFO    ] 2026-06-27 07:33:11
[2026-06-27 07:33:12,208.208 INFO    ] 2026-06-27 07:33:12
[2026-06-27 07:33:12,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:33:12,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:33:12,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:33:12,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:33:12,633.633 INFO    ] time= 27/06/2026 07:33:12
[2026-06-27 07:33:12,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:33:12,663.663 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:33:12,730.730 INFO    ] No existing commands found in stream
[2026-06-27 07:33:17,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:33:17,743.743 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-27 07:33:18,128.128 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 07:33:18,129.129 INFO    ] Checking for system updates...
[2026-06-27 07:33:18,150.150 INFO    ] 200
[2026-06-27 07:33:18,152.152 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:33:18,182.182 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:33:18,184.184 INFO    ] No update needed
[2026-06-27 07:33:18,185.185 INFO    ] Checking for camera pi updates...
[2026-06-27 07:33:18,206.206 INFO    ] 200
[2026-06-27 07:33:18,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:33:18,231.231 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:33:18,269.269 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:33:18,270.270 INFO    ] No camera update needed
[2026-06-27 07:33:18,271.271 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:33:18,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:33:18,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:33:18,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:33:20,317.317 INFO    ] ================================================
[2026-06-27 07:33:20,332.332 INFO    ] Launching Daemon at Sat Jun 27 07:33:20 IST 2026
[2026-06-27 07:33:20,343.343 INFO    ] ================================================
[2026-06-27 07:33:20,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:33:20
[2026-06-27 07:33:20,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:33:21,128.128 INFO    ] Initializing speech engine...
[2026-06-27 07:33:21,133.133 INFO    ] 2026-06-27 07:33:21
[2026-06-27 07:33:21,365.365 INFO    ] 2026-06-27 07:33:21
[2026-06-27 07:33:21,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:33:21,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:33:21,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:33:21,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:33:21,816.816 INFO    ] time= 27/06/2026 07:33:21
[2026-06-27 07:33:21,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:33:21,847.847 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:33:21,922.922 INFO    ] No existing commands found in stream
[2026-06-27 07:33:26,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:33:26,936.936 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-27 07:33:30,350.350 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:33:30,351.351 INFO    ] Checking for system updates...
[2026-06-27 07:33:30,372.372 INFO    ] 200
[2026-06-27 07:33:30,374.374 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:33:30,405.405 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:33:30,407.407 INFO    ] No update needed
[2026-06-27 07:33:30,409.409 INFO    ] Checking for camera pi updates...
[2026-06-27 07:33:30,429.429 INFO    ] 200
[2026-06-27 07:33:30,430.430 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:33:30,454.454 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:33:30,493.493 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:33:30,494.494 INFO    ] No camera update needed
[2026-06-27 07:33:30,496.496 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:33:30,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:33:30,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:33:30,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:33:32,542.542 INFO    ] ================================================
[2026-06-27 07:33:32,557.557 INFO    ] Launching Daemon at Sat Jun 27 07:33:32 IST 2026
[2026-06-27 07:33:32,568.568 INFO    ] ================================================
[2026-06-27 07:33:32,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:33:32
[2026-06-27 07:33:33,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:33:33,389.389 INFO    ] Initializing speech engine...
[2026-06-27 07:33:33,395.395 INFO    ] 2026-06-27 07:33:33
[2026-06-27 07:33:33,606.606 INFO    ] 2026-06-27 07:33:33
[2026-06-27 07:33:33,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:33:33,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:33:33,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:33:34,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:33:34,048.048 INFO    ] time= 27/06/2026 07:33:34
[2026-06-27 07:33:34,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:33:34,056.056 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:33:34,124.124 INFO    ] No existing commands found in stream
[2026-06-27 07:33:39,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:33:39,141.141 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-27 07:33:39,801.801 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:33:39,803.803 INFO    ] Checking for system updates...
[2026-06-27 07:33:39,824.824 INFO    ] 200
[2026-06-27 07:33:39,826.826 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:33:39,856.856 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:33:39,858.858 INFO    ] No update needed
[2026-06-27 07:33:39,859.859 INFO    ] Checking for camera pi updates...
[2026-06-27 07:33:39,878.878 INFO    ] 200
[2026-06-27 07:33:39,880.880 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:33:39,903.903 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:33:39,952.952 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:33:39,953.953 INFO    ] No camera update needed
[2026-06-27 07:33:39,955.955 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:33:39,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:33:39,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:33:39,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:33:42,999.999 INFO    ] ================================================
[2026-06-27 07:33:42,014.014 INFO    ] Launching Daemon at Sat Jun 27 07:33:42 IST 2026
[2026-06-27 07:33:42,025.025 INFO    ] ================================================
[2026-06-27 07:33:42,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:33:42
[2026-06-27 07:33:42,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:33:42,822.822 INFO    ] Initializing speech engine...
[2026-06-27 07:33:42,828.828 INFO    ] 2026-06-27 07:33:42
[2026-06-27 07:33:43,034.034 INFO    ] 2026-06-27 07:33:43
[2026-06-27 07:33:43,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:33:43,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:33:43,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:33:43,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:33:43,439.439 INFO    ] time= 27/06/2026 07:33:43
[2026-06-27 07:33:43,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:33:43,479.479 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:33:43,574.574 INFO    ] No existing commands found in stream
[2026-06-27 07:33:48,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:33:48,596.596 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-27 07:33:52,663.663 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:33:52,665.665 INFO    ] Checking for system updates...
[2026-06-27 07:33:52,687.687 INFO    ] 200
[2026-06-27 07:33:52,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:33:52,721.721 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:33:52,722.722 INFO    ] No update needed
[2026-06-27 07:33:52,724.724 INFO    ] Checking for camera pi updates...
[2026-06-27 07:33:52,743.743 INFO    ] 200
[2026-06-27 07:33:52,745.745 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:33:52,768.768 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:33:52,915.915 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:33:52,916.916 INFO    ] No camera update needed
[2026-06-27 07:33:52,917.917 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:33:52,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:33:52,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:33:52,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:33:54,968.968 INFO    ] ================================================
[2026-06-27 07:33:54,984.984 INFO    ] Launching Daemon at Sat Jun 27 07:33:54 IST 2026
[2026-06-27 07:33:55,995.995 INFO    ] ================================================
[2026-06-27 07:33:55,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:33:55
[2026-06-27 07:33:55,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:33:55,778.778 INFO    ] Initializing speech engine...
[2026-06-27 07:33:55,782.782 INFO    ] 2026-06-27 07:33:55
[2026-06-27 07:33:56,000.000 INFO    ] 2026-06-27 07:33:55
[2026-06-27 07:33:56,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:33:56,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:33:56,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:33:56,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:33:56,421.421 INFO    ] time= 27/06/2026 07:33:56
[2026-06-27 07:33:56,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:33:56,448.448 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:33:56,513.513 INFO    ] No existing commands found in stream
[2026-06-27 07:34:01,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:34:01,527.527 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-27 07:34:05,515.515 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 07:34:05,517.517 INFO    ] Checking for system updates...
[2026-06-27 07:34:05,538.538 INFO    ] 200
[2026-06-27 07:34:05,539.539 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:34:05,569.569 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:34:05,571.571 INFO    ] No update needed
[2026-06-27 07:34:05,572.572 INFO    ] Checking for camera pi updates...
[2026-06-27 07:34:05,595.595 INFO    ] 200
[2026-06-27 07:34:05,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:34:05,620.620 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:34:05,661.661 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:34:05,662.662 INFO    ] No camera update needed
[2026-06-27 07:34:05,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:34:05,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:34:05,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:34:05,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:34:07,709.709 INFO    ] ================================================
[2026-06-27 07:34:07,724.724 INFO    ] Launching Daemon at Sat Jun 27 07:34:07 IST 2026
[2026-06-27 07:34:07,735.735 INFO    ] ================================================
[2026-06-27 07:34:08,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:34:08
[2026-06-27 07:34:08,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:34:08,549.549 INFO    ] Initializing speech engine...
[2026-06-27 07:34:08,557.557 INFO    ] 2026-06-27 07:34:08
[2026-06-27 07:34:08,779.779 INFO    ] 2026-06-27 07:34:08
[2026-06-27 07:34:08,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:34:09,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:34:09,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:34:09,156.156 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:34:09,220.220 INFO    ] time= 27/06/2026 07:34:09
[2026-06-27 07:34:09,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:34:09,254.254 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:34:09,330.330 INFO    ] No existing commands found in stream
[2026-06-27 07:34:14,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:34:14,342.342 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-27 07:34:15,620.620 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:34:15,622.622 INFO    ] Checking for system updates...
[2026-06-27 07:34:15,642.642 INFO    ] 200
[2026-06-27 07:34:15,644.644 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:34:15,675.675 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:34:15,676.676 INFO    ] No update needed
[2026-06-27 07:34:15,677.677 INFO    ] Checking for camera pi updates...
[2026-06-27 07:34:15,697.697 INFO    ] 200
[2026-06-27 07:34:15,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:34:15,724.724 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:34:15,764.764 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:34:15,765.765 INFO    ] No camera update needed
[2026-06-27 07:34:15,766.766 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:34:15,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:34:15,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:34:15,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:34:17,812.812 INFO    ] ================================================
[2026-06-27 07:34:17,828.828 INFO    ] Launching Daemon at Sat Jun 27 07:34:17 IST 2026
[2026-06-27 07:34:17,839.839 INFO    ] ================================================
[2026-06-27 07:34:18,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:34:18
[2026-06-27 07:34:18,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:34:18,657.657 INFO    ] Initializing speech engine...
[2026-06-27 07:34:18,667.667 INFO    ] 2026-06-27 07:34:18
[2026-06-27 07:34:18,874.874 INFO    ] 2026-06-27 07:34:18
[2026-06-27 07:34:18,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:34:19,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:34:19,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:34:19,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:34:19,288.288 INFO    ] time= 27/06/2026 07:34:19
[2026-06-27 07:34:19,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:34:19,323.323 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:34:19,393.393 INFO    ] No existing commands found in stream
[2026-06-27 07:34:24,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:34:24,407.407 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-27 07:34:26,062.062 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 07:34:26,064.064 INFO    ] Checking for system updates...
[2026-06-27 07:34:26,085.085 INFO    ] 200
[2026-06-27 07:34:26,086.086 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:34:26,118.118 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:34:26,120.120 INFO    ] No update needed
[2026-06-27 07:34:26,121.121 INFO    ] Checking for camera pi updates...
[2026-06-27 07:34:26,142.142 INFO    ] 200
[2026-06-27 07:34:26,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:34:26,166.166 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:34:26,205.205 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:34:26,206.206 INFO    ] No camera update needed
[2026-06-27 07:34:26,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:34:26,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:34:26,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:34:26,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:34:28,256.256 INFO    ] ================================================
[2026-06-27 07:34:28,272.272 INFO    ] Launching Daemon at Sat Jun 27 07:34:28 IST 2026
[2026-06-27 07:34:28,283.283 INFO    ] ================================================
[2026-06-27 07:34:28,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:34:28
[2026-06-27 07:34:28,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:34:29,099.099 INFO    ] Initializing speech engine...
[2026-06-27 07:34:29,109.109 INFO    ] 2026-06-27 07:34:29
[2026-06-27 07:34:29,333.333 INFO    ] 2026-06-27 07:34:29
[2026-06-27 07:34:29,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:34:29,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:34:29,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:34:29,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:34:29,775.775 INFO    ] time= 27/06/2026 07:34:29
[2026-06-27 07:34:29,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:34:29,815.815 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:34:29,885.885 INFO    ] No existing commands found in stream
[2026-06-27 07:34:34,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:34:34,898.898 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-27 07:34:38,087.087 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 07:34:38,089.089 INFO    ] Checking for system updates...
[2026-06-27 07:34:38,111.111 INFO    ] 200
[2026-06-27 07:34:38,112.112 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:34:38,144.144 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:34:38,146.146 INFO    ] No update needed
[2026-06-27 07:34:38,147.147 INFO    ] Checking for camera pi updates...
[2026-06-27 07:34:38,167.167 INFO    ] 200
[2026-06-27 07:34:38,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:34:38,193.193 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:34:38,231.231 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:34:38,233.233 INFO    ] No camera update needed
[2026-06-27 07:34:38,235.235 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:34:38,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:34:38,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:34:38,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:34:40,285.285 INFO    ] ================================================
[2026-06-27 07:34:40,301.301 INFO    ] Launching Daemon at Sat Jun 27 07:34:40 IST 2026
[2026-06-27 07:34:40,313.313 INFO    ] ================================================
[2026-06-27 07:34:40,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:34:40
[2026-06-27 07:34:40,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:34:41,148.148 INFO    ] Initializing speech engine...
[2026-06-27 07:34:41,154.154 INFO    ] 2026-06-27 07:34:41
[2026-06-27 07:34:41,363.363 INFO    ] 2026-06-27 07:34:41
[2026-06-27 07:34:41,407.407 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:34:41,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:34:41,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:34:41,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:34:41,786.786 INFO    ] time= 27/06/2026 07:34:41
[2026-06-27 07:34:41,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:34:41,816.816 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:34:41,884.884 INFO    ] No existing commands found in stream
[2026-06-27 07:34:46,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:34:46,901.901 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-27 07:34:50,825.825 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:34:50,827.827 INFO    ] Checking for system updates...
[2026-06-27 07:34:50,849.849 INFO    ] 200
[2026-06-27 07:34:50,851.851 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:34:50,884.884 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:34:50,886.886 INFO    ] No update needed
[2026-06-27 07:34:50,887.887 INFO    ] Checking for camera pi updates...
[2026-06-27 07:34:50,907.907 INFO    ] 200
[2026-06-27 07:34:50,909.909 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:34:50,932.932 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:34:50,973.973 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:34:50,974.974 INFO    ] No camera update needed
[2026-06-27 07:34:50,976.976 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:34:50,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:34:50,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:34:50,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:34:53,022.022 INFO    ] ================================================
[2026-06-27 07:34:53,038.038 INFO    ] Launching Daemon at Sat Jun 27 07:34:53 IST 2026
[2026-06-27 07:34:53,049.049 INFO    ] ================================================
[2026-06-27 07:34:53,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:34:53
[2026-06-27 07:34:53,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:34:53,844.844 INFO    ] Initializing speech engine...
[2026-06-27 07:34:53,848.848 INFO    ] 2026-06-27 07:34:53
[2026-06-27 07:34:54,067.067 INFO    ] 2026-06-27 07:34:54
[2026-06-27 07:34:54,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:34:54,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:34:54,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:34:54,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:34:54,480.480 INFO    ] time= 27/06/2026 07:34:54
[2026-06-27 07:34:54,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:34:54,519.519 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:34:54,585.585 INFO    ] No existing commands found in stream
[2026-06-27 07:34:59,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:34:59,598.598 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-27 07:35:03,269.269 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 07:35:03,270.270 INFO    ] Checking for system updates...
[2026-06-27 07:35:03,291.291 INFO    ] 200
[2026-06-27 07:35:03,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:35:03,323.323 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:35:03,325.325 INFO    ] No update needed
[2026-06-27 07:35:03,326.326 INFO    ] Checking for camera pi updates...
[2026-06-27 07:35:03,346.346 INFO    ] 200
[2026-06-27 07:35:03,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:35:03,371.371 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:35:03,395.395 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:35:03,396.396 INFO    ] No camera update needed
[2026-06-27 07:35:03,398.398 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:35:03,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:35:03,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:35:03,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:35:05,447.447 INFO    ] ================================================
[2026-06-27 07:35:05,463.463 INFO    ] Launching Daemon at Sat Jun 27 07:35:05 IST 2026
[2026-06-27 07:35:05,474.474 INFO    ] ================================================
[2026-06-27 07:35:05,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:35:05
[2026-06-27 07:35:06,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:35:06,303.303 INFO    ] Initializing speech engine...
[2026-06-27 07:35:06,308.308 INFO    ] 2026-06-27 07:35:06
[2026-06-27 07:35:06,514.514 INFO    ] 2026-06-27 07:35:06
[2026-06-27 07:35:06,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:35:06,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:35:06,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:35:06,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:35:06,958.958 INFO    ] time= 27/06/2026 07:35:06
[2026-06-27 07:35:06,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:35:06,965.965 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:35:07,032.032 INFO    ] No existing commands found in stream
[2026-06-27 07:35:12,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:35:12,045.045 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-27 07:35:15,008.008 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 07:35:15,010.010 INFO    ] Checking for system updates...
[2026-06-27 07:35:15,031.031 INFO    ] 200
[2026-06-27 07:35:15,032.032 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:35:15,063.063 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:35:15,064.064 INFO    ] No update needed
[2026-06-27 07:35:15,066.066 INFO    ] Checking for camera pi updates...
[2026-06-27 07:35:15,086.086 INFO    ] 200
[2026-06-27 07:35:15,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:35:15,111.111 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:35:15,161.161 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:35:15,163.163 INFO    ] No camera update needed
[2026-06-27 07:35:15,164.164 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:35:15,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:35:15,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:35:15,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:35:17,210.210 INFO    ] ================================================
[2026-06-27 07:35:17,226.226 INFO    ] Launching Daemon at Sat Jun 27 07:35:17 IST 2026
[2026-06-27 07:35:17,237.237 INFO    ] ================================================
[2026-06-27 07:35:17,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:35:17
[2026-06-27 07:35:17,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:35:18,046.046 INFO    ] Initializing speech engine...
[2026-06-27 07:35:18,051.051 INFO    ] 2026-06-27 07:35:18
[2026-06-27 07:35:18,257.257 INFO    ] 2026-06-27 07:35:18
[2026-06-27 07:35:18,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:35:18,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:35:18,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:35:18,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:35:18,696.696 INFO    ] time= 27/06/2026 07:35:18
[2026-06-27 07:35:18,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:35:18,704.704 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:35:18,770.770 INFO    ] No existing commands found in stream
[2026-06-27 07:35:23,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:35:23,782.782 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-27 07:35:26,408.408 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 07:35:26,409.409 INFO    ] Checking for system updates...
[2026-06-27 07:35:26,430.430 INFO    ] 200
[2026-06-27 07:35:26,432.432 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:35:26,465.465 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:35:26,466.466 INFO    ] No update needed
[2026-06-27 07:35:26,467.467 INFO    ] Checking for camera pi updates...
[2026-06-27 07:35:26,488.488 INFO    ] 200
[2026-06-27 07:35:26,490.490 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:35:26,513.513 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:35:26,553.553 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:35:26,561.561 INFO    ] No camera update needed
[2026-06-27 07:35:26,563.563 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:35:26,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:35:26,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:35:26,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:35:28,613.613 INFO    ] ================================================
[2026-06-27 07:35:28,628.628 INFO    ] Launching Daemon at Sat Jun 27 07:35:28 IST 2026
[2026-06-27 07:35:28,639.639 INFO    ] ================================================
[2026-06-27 07:35:28,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:35:28
[2026-06-27 07:35:29,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:35:29,426.426 INFO    ] Initializing speech engine...
[2026-06-27 07:35:29,432.432 INFO    ] 2026-06-27 07:35:29
[2026-06-27 07:35:29,633.633 INFO    ] 2026-06-27 07:35:29
[2026-06-27 07:35:29,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:35:29,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:35:29,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:35:29,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:35:30,054.054 INFO    ] time= 27/06/2026 07:35:30
[2026-06-27 07:35:30,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:35:30,084.084 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:35:30,152.152 INFO    ] No existing commands found in stream
[2026-06-27 07:35:35,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:35:35,174.174 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-27 07:35:38,394.394 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 07:35:38,395.395 INFO    ] Checking for system updates...
[2026-06-27 07:35:38,417.417 INFO    ] 200
[2026-06-27 07:35:38,419.419 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:35:38,449.449 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:35:38,451.451 INFO    ] No update needed
[2026-06-27 07:35:38,452.452 INFO    ] Checking for camera pi updates...
[2026-06-27 07:35:38,473.473 INFO    ] 200
[2026-06-27 07:35:38,474.474 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:35:38,498.498 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:35:38,547.547 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:35:38,548.548 INFO    ] No camera update needed
[2026-06-27 07:35:38,550.550 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:35:38,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:35:38,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:35:38,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:35:40,596.596 INFO    ] ================================================
[2026-06-27 07:35:40,611.611 INFO    ] Launching Daemon at Sat Jun 27 07:35:40 IST 2026
[2026-06-27 07:35:40,623.623 INFO    ] ================================================
[2026-06-27 07:35:40,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:35:40
[2026-06-27 07:35:41,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:35:41,486.486 INFO    ] Initializing speech engine...
[2026-06-27 07:35:41,491.491 INFO    ] 2026-06-27 07:35:41
[2026-06-27 07:35:41,702.702 INFO    ] 2026-06-27 07:35:41
[2026-06-27 07:35:41,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:35:41,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:35:41,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:35:42,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:35:42,108.108 INFO    ] time= 27/06/2026 07:35:42
[2026-06-27 07:35:42,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:35:42,112.112 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:35:42,169.169 INFO    ] No existing commands found in stream
[2026-06-27 07:35:47,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:35:47,177.177 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-27 07:35:47,855.855 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:35:47,857.857 INFO    ] Checking for system updates...
[2026-06-27 07:35:47,880.880 INFO    ] 200
[2026-06-27 07:35:47,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:35:47,914.914 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:35:47,916.916 INFO    ] No update needed
[2026-06-27 07:35:47,917.917 INFO    ] Checking for camera pi updates...
[2026-06-27 07:35:47,940.940 INFO    ] 200
[2026-06-27 07:35:47,941.941 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:35:47,965.965 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:35:48,006.006 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:35:48,007.007 INFO    ] No camera update needed
[2026-06-27 07:35:48,009.009 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:35:48,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:35:48,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:35:48,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:35:50,055.055 INFO    ] ================================================
[2026-06-27 07:35:50,071.071 INFO    ] Launching Daemon at Sat Jun 27 07:35:50 IST 2026
[2026-06-27 07:35:50,082.082 INFO    ] ================================================
[2026-06-27 07:35:50,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:35:50
[2026-06-27 07:35:50,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:35:50,866.866 INFO    ] Initializing speech engine...
[2026-06-27 07:35:50,876.876 INFO    ] 2026-06-27 07:35:50
[2026-06-27 07:35:51,081.081 INFO    ] 2026-06-27 07:35:51
[2026-06-27 07:35:51,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:35:51,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:35:51,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:35:51,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:35:51,501.501 INFO    ] time= 27/06/2026 07:35:51
[2026-06-27 07:35:51,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:35:51,529.529 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:35:51,596.596 INFO    ] No existing commands found in stream
[2026-06-27 07:35:56,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:35:56,613.613 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-27 07:35:57,832.832 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:35:57,834.834 INFO    ] Checking for system updates...
[2026-06-27 07:35:57,855.855 INFO    ] 200
[2026-06-27 07:35:57,857.857 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:35:57,887.887 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:35:57,888.888 INFO    ] No update needed
[2026-06-27 07:35:57,890.890 INFO    ] Checking for camera pi updates...
[2026-06-27 07:35:57,910.910 INFO    ] 200
[2026-06-27 07:35:57,912.912 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:35:57,935.935 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:35:58,067.067 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:35:58,069.069 INFO    ] No camera update needed
[2026-06-27 07:35:58,070.070 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:35:58,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:35:58,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:35:58,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:36:00,115.115 INFO    ] ================================================
[2026-06-27 07:36:00,130.130 INFO    ] Launching Daemon at Sat Jun 27 07:36:00 IST 2026
[2026-06-27 07:36:00,140.140 INFO    ] ================================================
[2026-06-27 07:36:00,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:36:00
[2026-06-27 07:36:00,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:36:00,929.929 INFO    ] Initializing speech engine...
[2026-06-27 07:36:00,939.939 INFO    ] 2026-06-27 07:36:00
[2026-06-27 07:36:01,146.146 INFO    ] 2026-06-27 07:36:01
[2026-06-27 07:36:01,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:36:01,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:36:01,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:36:01,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:36:01,554.554 INFO    ] time= 27/06/2026 07:36:01
[2026-06-27 07:36:01,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:36:01,577.577 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:36:01,646.646 INFO    ] No existing commands found in stream
[2026-06-27 07:36:06,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:36:06,658.658 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-27 07:36:10,970.970 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 07:36:10,972.972 INFO    ] Checking for system updates...
[2026-06-27 07:36:10,994.994 INFO    ] 200
[2026-06-27 07:36:10,996.996 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:36:11,026.026 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:36:11,028.028 INFO    ] No update needed
[2026-06-27 07:36:11,029.029 INFO    ] Checking for camera pi updates...
[2026-06-27 07:36:11,049.049 INFO    ] 200
[2026-06-27 07:36:11,051.051 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:36:11,076.076 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:36:11,121.121 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:36:11,123.123 INFO    ] No camera update needed
[2026-06-27 07:36:11,124.124 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:36:11,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:36:11,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:36:11,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:36:13,171.171 INFO    ] ================================================
[2026-06-27 07:36:13,187.187 INFO    ] Launching Daemon at Sat Jun 27 07:36:13 IST 2026
[2026-06-27 07:36:13,197.197 INFO    ] ================================================
[2026-06-27 07:36:13,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:36:13
[2026-06-27 07:36:13,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:36:13,969.969 INFO    ] Initializing speech engine...
[2026-06-27 07:36:13,973.973 INFO    ] 2026-06-27 07:36:13
[2026-06-27 07:36:14,181.181 INFO    ] 2026-06-27 07:36:14
[2026-06-27 07:36:14,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:36:14,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:36:14,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:36:14,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:36:14,658.658 INFO    ] time= 27/06/2026 07:36:14
[2026-06-27 07:36:14,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:36:14,686.686 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:36:14,761.761 INFO    ] No existing commands found in stream
[2026-06-27 07:36:19,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:36:19,774.774 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-27 07:36:21,906.906 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:36:21,908.908 INFO    ] Checking for system updates...
[2026-06-27 07:36:21,929.929 INFO    ] 200
[2026-06-27 07:36:21,930.930 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:36:21,961.961 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:36:21,962.962 INFO    ] No update needed
[2026-06-27 07:36:21,964.964 INFO    ] Checking for camera pi updates...
[2026-06-27 07:36:21,985.985 INFO    ] 200
[2026-06-27 07:36:21,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:36:22,009.009 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:36:22,045.045 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:36:22,046.046 INFO    ] No camera update needed
[2026-06-27 07:36:22,048.048 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:36:22,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:36:22,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:36:22,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:36:24,093.093 INFO    ] ================================================
[2026-06-27 07:36:24,108.108 INFO    ] Launching Daemon at Sat Jun 27 07:36:24 IST 2026
[2026-06-27 07:36:24,119.119 INFO    ] ================================================
[2026-06-27 07:36:24,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:36:24
[2026-06-27 07:36:24,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:36:24,938.938 INFO    ] Initializing speech engine...
[2026-06-27 07:36:24,951.951 INFO    ] 2026-06-27 07:36:24
[2026-06-27 07:36:25,157.157 INFO    ] 2026-06-27 07:36:25
[2026-06-27 07:36:25,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:36:25,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:36:25,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:36:25,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:36:25,578.578 INFO    ] time= 27/06/2026 07:36:25
[2026-06-27 07:36:25,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:36:25,608.608 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:36:25,673.673 INFO    ] No existing commands found in stream
[2026-06-27 07:36:30,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:36:30,686.686 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-27 07:36:35,020.020 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 07:36:35,021.021 INFO    ] Checking for system updates...
[2026-06-27 07:36:35,044.044 INFO    ] 200
[2026-06-27 07:36:35,046.046 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:36:35,078.078 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:36:35,079.079 INFO    ] No update needed
[2026-06-27 07:36:35,081.081 INFO    ] Checking for camera pi updates...
[2026-06-27 07:36:35,100.100 INFO    ] 200
[2026-06-27 07:36:35,102.102 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:36:35,126.126 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:36:35,176.176 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:36:35,178.178 INFO    ] No camera update needed
[2026-06-27 07:36:35,179.179 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:36:35,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:36:35,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:36:35,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:36:37,226.226 INFO    ] ================================================
[2026-06-27 07:36:37,241.241 INFO    ] Launching Daemon at Sat Jun 27 07:36:37 IST 2026
[2026-06-27 07:36:37,252.252 INFO    ] ================================================
[2026-06-27 07:36:37,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:36:37
[2026-06-27 07:36:37,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:36:38,075.075 INFO    ] Initializing speech engine...
[2026-06-27 07:36:38,085.085 INFO    ] 2026-06-27 07:36:38
[2026-06-27 07:36:38,293.293 INFO    ] 2026-06-27 07:36:38
[2026-06-27 07:36:38,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:36:38,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:36:38,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:36:38,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:36:38,719.719 INFO    ] time= 27/06/2026 07:36:38
[2026-06-27 07:36:38,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:36:38,749.749 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:36:38,817.817 INFO    ] No existing commands found in stream
[2026-06-27 07:36:43,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:36:43,833.833 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-27 07:36:47,659.659 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:36:47,661.661 INFO    ] Checking for system updates...
[2026-06-27 07:36:47,682.682 INFO    ] 200
[2026-06-27 07:36:47,684.684 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:36:47,714.714 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:36:47,716.716 INFO    ] No update needed
[2026-06-27 07:36:47,717.717 INFO    ] Checking for camera pi updates...
[2026-06-27 07:36:47,738.738 INFO    ] 200
[2026-06-27 07:36:47,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:36:47,766.766 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:36:47,807.807 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:36:47,808.808 INFO    ] No camera update needed
[2026-06-27 07:36:47,810.810 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:36:47,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:36:47,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:36:47,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:36:49,855.855 INFO    ] ================================================
[2026-06-27 07:36:49,871.871 INFO    ] Launching Daemon at Sat Jun 27 07:36:49 IST 2026
[2026-06-27 07:36:49,882.882 INFO    ] ================================================
[2026-06-27 07:36:50,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:36:50
[2026-06-27 07:36:50,544.544 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:36:50,678.678 INFO    ] Initializing speech engine...
[2026-06-27 07:36:50,682.682 INFO    ] 2026-06-27 07:36:50
[2026-06-27 07:36:50,872.872 INFO    ] 2026-06-27 07:36:50
[2026-06-27 07:36:50,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:36:51,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:36:51,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:36:51,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:36:51,340.340 INFO    ] time= 27/06/2026 07:36:51
[2026-06-27 07:36:51,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:36:51,390.390 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:36:51,467.467 INFO    ] No existing commands found in stream
[2026-06-27 07:36:56,491.491 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:36:56,494.494 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-27 07:37:00,723.723 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 07:37:00,725.725 INFO    ] Checking for system updates...
[2026-06-27 07:37:00,746.746 INFO    ] 200
[2026-06-27 07:37:00,747.747 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:37:00,779.779 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:37:00,781.781 INFO    ] No update needed
[2026-06-27 07:37:00,782.782 INFO    ] Checking for camera pi updates...
[2026-06-27 07:37:00,801.801 INFO    ] 200
[2026-06-27 07:37:00,803.803 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:37:00,829.829 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:37:00,875.875 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:37:00,876.876 INFO    ] No camera update needed
[2026-06-27 07:37:00,877.877 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:37:00,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:37:00,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:37:00,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:37:02,912.912 INFO    ] ================================================
[2026-06-27 07:37:02,920.920 INFO    ] Launching Daemon at Sat Jun 27 07:37:02 IST 2026
[2026-06-27 07:37:02,927.927 INFO    ] ================================================
[2026-06-27 07:37:03,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:37:03
[2026-06-27 07:37:03,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:37:03,685.685 INFO    ] Initializing speech engine...
[2026-06-27 07:37:03,698.698 INFO    ] 2026-06-27 07:37:03
[2026-06-27 07:37:03,903.903 INFO    ] 2026-06-27 07:37:03
[2026-06-27 07:37:03,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:37:04,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:37:04,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:37:04,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:37:04,325.325 INFO    ] time= 27/06/2026 07:37:04
[2026-06-27 07:37:04,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:37:04,353.353 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:37:04,420.420 INFO    ] No existing commands found in stream
[2026-06-27 07:37:09,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:37:09,432.432 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-27 07:37:10,442.442 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:37:10,443.443 INFO    ] Checking for system updates...
[2026-06-27 07:37:10,465.465 INFO    ] 200
[2026-06-27 07:37:10,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:37:10,497.497 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:37:10,498.498 INFO    ] No update needed
[2026-06-27 07:37:10,499.499 INFO    ] Checking for camera pi updates...
[2026-06-27 07:37:10,519.519 INFO    ] 200
[2026-06-27 07:37:10,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:37:10,544.544 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:37:10,581.581 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:37:10,582.582 INFO    ] No camera update needed
[2026-06-27 07:37:10,583.583 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:37:10,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:37:10,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:37:10,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:37:12,629.629 INFO    ] ================================================
[2026-06-27 07:37:12,645.645 INFO    ] Launching Daemon at Sat Jun 27 07:37:12 IST 2026
[2026-06-27 07:37:12,656.656 INFO    ] ================================================
[2026-06-27 07:37:13,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:37:13
[2026-06-27 07:37:13,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:37:13,512.512 INFO    ] Initializing speech engine...
[2026-06-27 07:37:13,522.522 INFO    ] 2026-06-27 07:37:13
[2026-06-27 07:37:13,726.726 INFO    ] 2026-06-27 07:37:13
[2026-06-27 07:37:13,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:37:13,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:37:13,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:37:14,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:37:14,143.143 INFO    ] time= 27/06/2026 07:37:14
[2026-06-27 07:37:14,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:37:14,172.172 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:37:14,239.239 INFO    ] No existing commands found in stream
[2026-06-27 07:37:19,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:37:19,250.250 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-27 07:37:19,889.889 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 07:37:19,891.891 INFO    ] Checking for system updates...
[2026-06-27 07:37:19,912.912 INFO    ] 200
[2026-06-27 07:37:19,914.914 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:37:19,944.944 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:37:19,946.946 INFO    ] No update needed
[2026-06-27 07:37:19,947.947 INFO    ] Checking for camera pi updates...
[2026-06-27 07:37:19,967.967 INFO    ] 200
[2026-06-27 07:37:19,969.969 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:37:19,993.993 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:37:20,031.031 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:37:20,032.032 INFO    ] No camera update needed
[2026-06-27 07:37:20,033.033 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:37:20,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:37:20,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:37:20,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:37:22,081.081 INFO    ] ================================================
[2026-06-27 07:37:22,097.097 INFO    ] Launching Daemon at Sat Jun 27 07:37:22 IST 2026
[2026-06-27 07:37:22,107.107 INFO    ] ================================================
[2026-06-27 07:37:22,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:37:22
[2026-06-27 07:37:22,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:37:22,913.913 INFO    ] Initializing speech engine...
[2026-06-27 07:37:22,918.918 INFO    ] 2026-06-27 07:37:22
[2026-06-27 07:37:23,124.124 INFO    ] 2026-06-27 07:37:23
[2026-06-27 07:37:23,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:37:23,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:37:23,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:37:23,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:37:23,680.680 INFO    ] time= 27/06/2026 07:37:23
[2026-06-27 07:37:23,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:37:23,685.685 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:37:23,754.754 INFO    ] No existing commands found in stream
[2026-06-27 07:37:28,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:37:28,767.767 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-27 07:37:31,279.279 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 07:37:31,281.281 INFO    ] Checking for system updates...
[2026-06-27 07:37:31,303.303 INFO    ] 200
[2026-06-27 07:37:31,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:37:31,337.337 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:37:31,339.339 INFO    ] No update needed
[2026-06-27 07:37:31,340.340 INFO    ] Checking for camera pi updates...
[2026-06-27 07:37:31,359.359 INFO    ] 200
[2026-06-27 07:37:31,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:37:31,384.384 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:37:31,439.439 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:37:31,441.441 INFO    ] No camera update needed
[2026-06-27 07:37:31,442.442 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:37:31,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:37:31,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:37:31,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:37:33,481.481 INFO    ] ================================================
[2026-06-27 07:37:33,497.497 INFO    ] Launching Daemon at Sat Jun 27 07:37:33 IST 2026
[2026-06-27 07:37:33,508.508 INFO    ] ================================================
[2026-06-27 07:37:33,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:37:33
[2026-06-27 07:37:34,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:37:34,346.346 INFO    ] Initializing speech engine...
[2026-06-27 07:37:34,352.352 INFO    ] 2026-06-27 07:37:34
[2026-06-27 07:37:34,557.557 INFO    ] 2026-06-27 07:37:34
[2026-06-27 07:37:34,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:37:34,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:37:34,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:37:34,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:37:34,996.996 INFO    ] time= 27/06/2026 07:37:34
[2026-06-27 07:37:35,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:37:35,007.007 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:37:35,072.072 INFO    ] No existing commands found in stream
[2026-06-27 07:37:40,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:37:40,087.087 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-27 07:37:41,249.249 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 07:37:41,250.250 INFO    ] Checking for system updates...
[2026-06-27 07:37:41,272.272 INFO    ] 200
[2026-06-27 07:37:41,273.273 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:37:41,304.304 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:37:41,305.305 INFO    ] No update needed
[2026-06-27 07:37:41,307.307 INFO    ] Checking for camera pi updates...
[2026-06-27 07:37:41,326.326 INFO    ] 200
[2026-06-27 07:37:41,328.328 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:37:41,353.353 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:37:41,393.393 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:37:41,394.394 INFO    ] No camera update needed
[2026-06-27 07:37:41,395.395 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:37:41,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:37:41,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:37:41,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:37:43,443.443 INFO    ] ================================================
[2026-06-27 07:37:43,458.458 INFO    ] Launching Daemon at Sat Jun 27 07:37:43 IST 2026
[2026-06-27 07:37:43,469.469 INFO    ] ================================================
[2026-06-27 07:37:43,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:37:43
[2026-06-27 07:37:44,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:37:44,301.301 INFO    ] Initializing speech engine...
[2026-06-27 07:37:44,306.306 INFO    ] 2026-06-27 07:37:44
[2026-06-27 07:37:44,509.509 INFO    ] 2026-06-27 07:37:44
[2026-06-27 07:37:44,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:37:44,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:37:44,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:37:44,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:37:44,932.932 INFO    ] time= 27/06/2026 07:37:44
[2026-06-27 07:37:44,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:37:44,960.960 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:37:45,028.028 INFO    ] No existing commands found in stream
[2026-06-27 07:37:50,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:37:50,040.040 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-27 07:37:53,775.775 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 07:37:53,777.777 INFO    ] Checking for system updates...
[2026-06-27 07:37:53,801.801 INFO    ] 200
[2026-06-27 07:37:53,803.803 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:37:53,838.838 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:37:53,840.840 INFO    ] No update needed
[2026-06-27 07:37:53,842.842 INFO    ] Checking for camera pi updates...
[2026-06-27 07:37:53,866.866 INFO    ] 200
[2026-06-27 07:37:53,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:37:53,897.897 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:37:53,927.927 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:37:53,929.929 INFO    ] No camera update needed
[2026-06-27 07:37:53,931.931 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:37:53,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:37:53,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:37:53,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:37:55,967.967 INFO    ] ================================================
[2026-06-27 07:37:55,978.978 INFO    ] Launching Daemon at Sat Jun 27 07:37:55 IST 2026
[2026-06-27 07:37:55,984.984 INFO    ] ================================================
[2026-06-27 07:37:56,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:37:56
[2026-06-27 07:37:56,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:37:56,792.792 INFO    ] Initializing speech engine...
[2026-06-27 07:37:56,797.797 INFO    ] 2026-06-27 07:37:56
[2026-06-27 07:37:57,007.007 INFO    ] 2026-06-27 07:37:56
[2026-06-27 07:37:57,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:37:57,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:37:57,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:37:57,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:37:57,448.448 INFO    ] time= 27/06/2026 07:37:57
[2026-06-27 07:37:57,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:37:57,482.482 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:37:57,549.549 INFO    ] No existing commands found in stream
[2026-06-27 07:38:02,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:38:02,559.559 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-27 07:38:03,753.753 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 07:38:03,754.754 INFO    ] Checking for system updates...
[2026-06-27 07:38:03,776.776 INFO    ] 200
[2026-06-27 07:38:03,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:38:03,810.810 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:38:03,812.812 INFO    ] No update needed
[2026-06-27 07:38:03,813.813 INFO    ] Checking for camera pi updates...
[2026-06-27 07:38:03,833.833 INFO    ] 200
[2026-06-27 07:38:03,835.835 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:38:03,858.858 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:38:03,896.896 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:38:03,897.897 INFO    ] No camera update needed
[2026-06-27 07:38:03,899.899 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:38:03,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:38:03,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:38:03,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:38:05,945.945 INFO    ] ================================================
[2026-06-27 07:38:05,960.960 INFO    ] Launching Daemon at Sat Jun 27 07:38:05 IST 2026
[2026-06-27 07:38:05,972.972 INFO    ] ================================================
[2026-06-27 07:38:06,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:38:06
[2026-06-27 07:38:06,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:38:06,792.792 INFO    ] Initializing speech engine...
[2026-06-27 07:38:06,797.797 INFO    ] 2026-06-27 07:38:06
[2026-06-27 07:38:07,023.023 INFO    ] 2026-06-27 07:38:06
[2026-06-27 07:38:07,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:38:07,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:38:07,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:38:07,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:38:07,456.456 INFO    ] time= 27/06/2026 07:38:07
[2026-06-27 07:38:07,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:38:07,486.486 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:38:07,555.555 INFO    ] No existing commands found in stream
[2026-06-27 07:38:12,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:38:12,569.569 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-27 07:38:16,163.163 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:38:16,164.164 INFO    ] Checking for system updates...
[2026-06-27 07:38:16,186.186 INFO    ] 200
[2026-06-27 07:38:16,187.187 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:38:16,218.218 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:38:16,219.219 INFO    ] No update needed
[2026-06-27 07:38:16,220.220 INFO    ] Checking for camera pi updates...
[2026-06-27 07:38:16,242.242 INFO    ] 200
[2026-06-27 07:38:16,244.244 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:38:16,267.267 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:38:16,315.315 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:38:16,316.316 INFO    ] No camera update needed
[2026-06-27 07:38:16,318.318 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:38:16,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:38:16,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:38:16,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:38:18,364.364 INFO    ] ================================================
[2026-06-27 07:38:18,380.380 INFO    ] Launching Daemon at Sat Jun 27 07:38:18 IST 2026
[2026-06-27 07:38:18,392.392 INFO    ] ================================================
[2026-06-27 07:38:18,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:38:18
[2026-06-27 07:38:19,054.054 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:38:19,184.184 INFO    ] Initializing speech engine...
[2026-06-27 07:38:19,188.188 INFO    ] 2026-06-27 07:38:19
[2026-06-27 07:38:19,407.407 INFO    ] 2026-06-27 07:38:19
[2026-06-27 07:38:19,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:38:19,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:38:19,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:38:19,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:38:19,817.817 INFO    ] time= 27/06/2026 07:38:19
[2026-06-27 07:38:19,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:38:19,857.857 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:38:19,928.928 INFO    ] No existing commands found in stream
[2026-06-27 07:38:24,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:38:24,941.941 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-27 07:38:27,696.696 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 07:38:27,697.697 INFO    ] Checking for system updates...
[2026-06-27 07:38:27,720.720 INFO    ] 200
[2026-06-27 07:38:27,722.722 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:38:27,754.754 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:38:27,756.756 INFO    ] No update needed
[2026-06-27 07:38:27,757.757 INFO    ] Checking for camera pi updates...
[2026-06-27 07:38:27,777.777 INFO    ] 200
[2026-06-27 07:38:27,778.778 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:38:27,802.802 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:38:27,846.846 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:38:27,848.848 INFO    ] No camera update needed
[2026-06-27 07:38:27,849.849 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:38:27,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:38:27,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:38:27,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:38:29,898.898 INFO    ] ================================================
[2026-06-27 07:38:29,914.914 INFO    ] Launching Daemon at Sat Jun 27 07:38:29 IST 2026
[2026-06-27 07:38:29,925.925 INFO    ] ================================================
[2026-06-27 07:38:30,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:38:30
[2026-06-27 07:38:30,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:38:30,713.713 INFO    ] Initializing speech engine...
[2026-06-27 07:38:30,717.717 INFO    ] 2026-06-27 07:38:30
[2026-06-27 07:38:30,945.945 INFO    ] 2026-06-27 07:38:30
[2026-06-27 07:38:30,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:38:31,105.105 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:38:31,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:38:31,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:38:31,372.372 INFO    ] time= 27/06/2026 07:38:31
[2026-06-27 07:38:31,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:38:31,416.416 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:38:31,492.492 INFO    ] No existing commands found in stream
[2026-06-27 07:38:36,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:38:36,504.504 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-27 07:38:38,910.910 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 07:38:38,912.912 INFO    ] Checking for system updates...
[2026-06-27 07:38:38,934.934 INFO    ] 200
[2026-06-27 07:38:38,936.936 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:38:38,966.966 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:38:38,967.967 INFO    ] No update needed
[2026-06-27 07:38:38,969.969 INFO    ] Checking for camera pi updates...
[2026-06-27 07:38:38,988.988 INFO    ] 200
[2026-06-27 07:38:38,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:38:39,015.015 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:38:39,061.061 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:38:39,062.062 INFO    ] No camera update needed
[2026-06-27 07:38:39,064.064 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:38:39,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:38:39,068.068 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:38:39,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:38:41,108.108 INFO    ] ================================================
[2026-06-27 07:38:41,124.124 INFO    ] Launching Daemon at Sat Jun 27 07:38:41 IST 2026
[2026-06-27 07:38:41,136.136 INFO    ] ================================================
[2026-06-27 07:38:41,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:38:41
[2026-06-27 07:38:41,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:38:41,953.953 INFO    ] Initializing speech engine...
[2026-06-27 07:38:41,958.958 INFO    ] 2026-06-27 07:38:41
[2026-06-27 07:38:42,168.168 INFO    ] 2026-06-27 07:38:42
[2026-06-27 07:38:42,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:38:42,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:38:42,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:38:42,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:38:42,543.543 INFO    ] time= 27/06/2026 07:38:42
[2026-06-27 07:38:42,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:38:42,621.621 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:38:42,693.693 INFO    ] No existing commands found in stream
[2026-06-27 07:38:47,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:38:47,711.711 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-27 07:38:50,412.412 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:38:50,414.414 INFO    ] Checking for system updates...
[2026-06-27 07:38:50,435.435 INFO    ] 200
[2026-06-27 07:38:50,436.436 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:38:50,469.469 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:38:50,470.470 INFO    ] No update needed
[2026-06-27 07:38:50,471.471 INFO    ] Checking for camera pi updates...
[2026-06-27 07:38:50,491.491 INFO    ] 200
[2026-06-27 07:38:50,492.492 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:38:50,520.520 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:38:50,561.561 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:38:50,562.562 INFO    ] No camera update needed
[2026-06-27 07:38:50,564.564 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:38:50,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:38:50,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:38:50,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:38:52,611.611 INFO    ] ================================================
[2026-06-27 07:38:52,627.627 INFO    ] Launching Daemon at Sat Jun 27 07:38:52 IST 2026
[2026-06-27 07:38:52,638.638 INFO    ] ================================================
[2026-06-27 07:38:52,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:38:52
[2026-06-27 07:38:53,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:38:53,423.423 INFO    ] Initializing speech engine...
[2026-06-27 07:38:53,428.428 INFO    ] 2026-06-27 07:38:53
[2026-06-27 07:38:53,631.631 INFO    ] 2026-06-27 07:38:53
[2026-06-27 07:38:53,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:38:53,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:38:53,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:38:53,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:38:54,028.028 INFO    ] time= 27/06/2026 07:38:53
[2026-06-27 07:38:54,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:38:54,073.073 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:38:54,143.143 INFO    ] No existing commands found in stream
[2026-06-27 07:38:59,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:38:59,156.156 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-27 07:39:01,552.552 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 07:39:01,554.554 INFO    ] Checking for system updates...
[2026-06-27 07:39:01,583.583 INFO    ] 200
[2026-06-27 07:39:01,585.585 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:39:01,632.632 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:39:01,634.634 INFO    ] No update needed
[2026-06-27 07:39:01,636.636 INFO    ] Checking for camera pi updates...
[2026-06-27 07:39:01,668.668 INFO    ] 200
[2026-06-27 07:39:01,670.670 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:39:01,700.700 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:39:01,753.753 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:39:01,755.755 INFO    ] No camera update needed
[2026-06-27 07:39:01,757.757 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:39:01,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:39:01,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:39:01,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:39:03,808.808 INFO    ] ================================================
[2026-06-27 07:39:03,824.824 INFO    ] Launching Daemon at Sat Jun 27 07:39:03 IST 2026
[2026-06-27 07:39:03,836.836 INFO    ] ================================================
[2026-06-27 07:39:04,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:39:04
[2026-06-27 07:39:04,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:39:04,618.618 INFO    ] Initializing speech engine...
[2026-06-27 07:39:04,627.627 INFO    ] 2026-06-27 07:39:04
[2026-06-27 07:39:04,832.832 INFO    ] 2026-06-27 07:39:04
[2026-06-27 07:39:04,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:39:05,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:39:05,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:39:05,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:39:05,241.241 INFO    ] time= 27/06/2026 07:39:05
[2026-06-27 07:39:05,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:39:05,281.281 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:39:05,361.361 INFO    ] No existing commands found in stream
[2026-06-27 07:39:10,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:39:10,373.373 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-27 07:39:14,225.225 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 07:39:14,227.227 INFO    ] Checking for system updates...
[2026-06-27 07:39:14,247.247 INFO    ] 200
[2026-06-27 07:39:14,248.248 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:39:14,282.282 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:39:14,284.284 INFO    ] No update needed
[2026-06-27 07:39:14,285.285 INFO    ] Checking for camera pi updates...
[2026-06-27 07:39:14,305.305 INFO    ] 200
[2026-06-27 07:39:14,306.306 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:39:14,329.329 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:39:14,371.371 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:39:14,373.373 INFO    ] No camera update needed
[2026-06-27 07:39:14,374.374 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:39:14,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:39:14,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:39:14,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:39:16,420.420 INFO    ] ================================================
[2026-06-27 07:39:16,436.436 INFO    ] Launching Daemon at Sat Jun 27 07:39:16 IST 2026
[2026-06-27 07:39:16,447.447 INFO    ] ================================================
[2026-06-27 07:39:16,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:39:16
[2026-06-27 07:39:17,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:39:17,240.240 INFO    ] Initializing speech engine...
[2026-06-27 07:39:17,246.246 INFO    ] 2026-06-27 07:39:17
[2026-06-27 07:39:17,451.451 INFO    ] 2026-06-27 07:39:17
[2026-06-27 07:39:17,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:39:17,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:39:17,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:39:17,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:39:17,900.900 INFO    ] time= 27/06/2026 07:39:17
[2026-06-27 07:39:17,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:39:17,929.929 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:39:17,998.998 INFO    ] No existing commands found in stream
[2026-06-27 07:39:23,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:39:23,012.012 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-27 07:39:23,465.465 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 07:39:23,466.466 INFO    ] Checking for system updates...
[2026-06-27 07:39:23,488.488 INFO    ] 200
[2026-06-27 07:39:23,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:39:23,519.519 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:39:23,521.521 INFO    ] No update needed
[2026-06-27 07:39:23,522.522 INFO    ] Checking for camera pi updates...
[2026-06-27 07:39:23,541.541 INFO    ] 200
[2026-06-27 07:39:23,543.543 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:39:23,567.567 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:39:23,603.603 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:39:23,604.604 INFO    ] No camera update needed
[2026-06-27 07:39:23,605.605 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:39:23,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:39:23,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:39:23,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:39:25,651.651 INFO    ] ================================================
[2026-06-27 07:39:25,667.667 INFO    ] Launching Daemon at Sat Jun 27 07:39:25 IST 2026
[2026-06-27 07:39:25,678.678 INFO    ] ================================================
[2026-06-27 07:39:26,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:39:26
[2026-06-27 07:39:26,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:39:26,509.509 INFO    ] Initializing speech engine...
[2026-06-27 07:39:26,514.514 INFO    ] 2026-06-27 07:39:26
[2026-06-27 07:39:26,719.719 INFO    ] 2026-06-27 07:39:26
[2026-06-27 07:39:26,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:39:26,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:39:26,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:39:27,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:39:27,137.137 INFO    ] time= 27/06/2026 07:39:27
[2026-06-27 07:39:27,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:39:27,167.167 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:39:27,234.234 INFO    ] No existing commands found in stream
[2026-06-27 07:39:32,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:39:32,250.250 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-27 07:39:34,792.792 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:39:34,794.794 INFO    ] Checking for system updates...
[2026-06-27 07:39:34,814.814 INFO    ] 200
[2026-06-27 07:39:34,816.816 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:39:34,848.848 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:39:34,849.849 INFO    ] No update needed
[2026-06-27 07:39:34,851.851 INFO    ] Checking for camera pi updates...
[2026-06-27 07:39:34,870.870 INFO    ] 200
[2026-06-27 07:39:34,871.871 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:39:34,897.897 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:39:34,943.943 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:39:34,945.945 INFO    ] No camera update needed
[2026-06-27 07:39:34,946.946 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:39:34,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:39:34,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:39:34,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:39:36,994.994 INFO    ] ================================================
[2026-06-27 07:39:37,009.009 INFO    ] Launching Daemon at Sat Jun 27 07:39:37 IST 2026
[2026-06-27 07:39:37,020.020 INFO    ] ================================================
[2026-06-27 07:39:37,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:39:37
[2026-06-27 07:39:37,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:39:37,816.816 INFO    ] Initializing speech engine...
[2026-06-27 07:39:37,825.825 INFO    ] 2026-06-27 07:39:37
[2026-06-27 07:39:38,039.039 INFO    ] 2026-06-27 07:39:38
[2026-06-27 07:39:38,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:39:38,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:39:38,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:39:38,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:39:38,485.485 INFO    ] time= 27/06/2026 07:39:38
[2026-06-27 07:39:38,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:39:38,492.492 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:39:38,560.560 INFO    ] No existing commands found in stream
[2026-06-27 07:39:43,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:39:43,572.572 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-27 07:39:47,047.047 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 07:39:47,049.049 INFO    ] Checking for system updates...
[2026-06-27 07:39:47,070.070 INFO    ] 200
[2026-06-27 07:39:47,072.072 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:39:47,104.104 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:39:47,105.105 INFO    ] No update needed
[2026-06-27 07:39:47,106.106 INFO    ] Checking for camera pi updates...
[2026-06-27 07:39:47,125.125 INFO    ] 200
[2026-06-27 07:39:47,127.127 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:39:47,150.150 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:39:47,186.186 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:39:47,188.188 INFO    ] No camera update needed
[2026-06-27 07:39:47,189.189 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:39:47,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:39:47,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:39:47,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:39:49,236.236 INFO    ] ================================================
[2026-06-27 07:39:49,252.252 INFO    ] Launching Daemon at Sat Jun 27 07:39:49 IST 2026
[2026-06-27 07:39:49,264.264 INFO    ] ================================================
[2026-06-27 07:39:49,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:39:49
[2026-06-27 07:39:49,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:39:50,108.108 INFO    ] Initializing speech engine...
[2026-06-27 07:39:50,113.113 INFO    ] 2026-06-27 07:39:50
[2026-06-27 07:39:50,319.319 INFO    ] 2026-06-27 07:39:50
[2026-06-27 07:39:50,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:39:50,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:39:50,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:39:50,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:39:50,729.729 INFO    ] time= 27/06/2026 07:39:50
[2026-06-27 07:39:50,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:39:50,767.767 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:39:50,835.835 INFO    ] No existing commands found in stream
[2026-06-27 07:39:55,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:39:55,847.847 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-27 07:39:58,029.029 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 07:39:58,031.031 INFO    ] Checking for system updates...
[2026-06-27 07:39:58,052.052 INFO    ] 200
[2026-06-27 07:39:58,053.053 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:39:58,084.084 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:39:58,086.086 INFO    ] No update needed
[2026-06-27 07:39:58,087.087 INFO    ] Checking for camera pi updates...
[2026-06-27 07:39:58,107.107 INFO    ] 200
[2026-06-27 07:39:58,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:39:58,132.132 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:39:58,179.179 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:39:58,181.181 INFO    ] No camera update needed
[2026-06-27 07:39:58,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:39:58,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:39:58,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:39:58,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:40:00,221.221 INFO    ] ================================================
[2026-06-27 07:40:00,237.237 INFO    ] Launching Daemon at Sat Jun 27 07:40:00 IST 2026
[2026-06-27 07:40:00,248.248 INFO    ] ================================================
[2026-06-27 07:40:00,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:40:00
[2026-06-27 07:40:00,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:40:01,045.045 INFO    ] Initializing speech engine...
[2026-06-27 07:40:01,049.049 INFO    ] 2026-06-27 07:40:01
[2026-06-27 07:40:01,263.263 INFO    ] 2026-06-27 07:40:01
[2026-06-27 07:40:01,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:40:01,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:40:01,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:40:01,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:40:01,660.660 INFO    ] time= 27/06/2026 07:40:01
[2026-06-27 07:40:01,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:40:01,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:40:01,723.723 INFO    ] No existing commands found in stream
[2026-06-27 07:40:06,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:40:06,736.736 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-27 07:40:09,077.077 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:40:09,079.079 INFO    ] Checking for system updates...
[2026-06-27 07:40:09,101.101 INFO    ] 200
[2026-06-27 07:40:09,102.102 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:40:09,133.133 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:40:09,135.135 INFO    ] No update needed
[2026-06-27 07:40:09,136.136 INFO    ] Checking for camera pi updates...
[2026-06-27 07:40:09,159.159 INFO    ] 200
[2026-06-27 07:40:09,160.160 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:40:09,183.183 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:40:09,321.321 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:40:09,323.323 INFO    ] No camera update needed
[2026-06-27 07:40:09,324.324 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:40:09,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:40:09,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:40:09,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:40:11,370.370 INFO    ] ================================================
[2026-06-27 07:40:11,386.386 INFO    ] Launching Daemon at Sat Jun 27 07:40:11 IST 2026
[2026-06-27 07:40:11,397.397 INFO    ] ================================================
[2026-06-27 07:40:11,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:40:11
[2026-06-27 07:40:12,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:40:12,232.232 INFO    ] Initializing speech engine...
[2026-06-27 07:40:12,238.238 INFO    ] 2026-06-27 07:40:12
[2026-06-27 07:40:12,447.447 INFO    ] 2026-06-27 07:40:12
[2026-06-27 07:40:12,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:40:12,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:40:12,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:40:12,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:40:12,873.873 INFO    ] time= 27/06/2026 07:40:12
[2026-06-27 07:40:12,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:40:12,903.903 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:40:12,970.970 INFO    ] No existing commands found in stream
[2026-06-27 07:40:17,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:40:17,984.984 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-27 07:40:21,448.448 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 07:40:21,450.450 INFO    ] Checking for system updates...
[2026-06-27 07:40:21,471.471 INFO    ] 200
[2026-06-27 07:40:21,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:40:21,504.504 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:40:21,506.506 INFO    ] No update needed
[2026-06-27 07:40:21,507.507 INFO    ] Checking for camera pi updates...
[2026-06-27 07:40:21,527.527 INFO    ] 200
[2026-06-27 07:40:21,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:40:21,553.553 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:40:21,589.589 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:40:21,590.590 INFO    ] No camera update needed
[2026-06-27 07:40:21,591.591 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:40:21,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:40:21,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:40:21,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:40:23,637.637 INFO    ] ================================================
[2026-06-27 07:40:23,652.652 INFO    ] Launching Daemon at Sat Jun 27 07:40:23 IST 2026
[2026-06-27 07:40:23,663.663 INFO    ] ================================================
[2026-06-27 07:40:24,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:40:23
[2026-06-27 07:40:24,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:40:24,470.470 INFO    ] Initializing speech engine...
[2026-06-27 07:40:24,476.476 INFO    ] 2026-06-27 07:40:24
[2026-06-27 07:40:24,680.680 INFO    ] 2026-06-27 07:40:24
[2026-06-27 07:40:24,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:40:24,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:40:24,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:40:25,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:40:25,086.086 INFO    ] time= 27/06/2026 07:40:25
[2026-06-27 07:40:25,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:40:25,132.132 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:40:25,206.206 INFO    ] No existing commands found in stream
[2026-06-27 07:40:30,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:40:30,218.218 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-27 07:40:34,075.075 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:40:34,076.076 INFO    ] Checking for system updates...
[2026-06-27 07:40:34,097.097 INFO    ] 200
[2026-06-27 07:40:34,099.099 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:40:34,129.129 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:40:34,131.131 INFO    ] No update needed
[2026-06-27 07:40:34,132.132 INFO    ] Checking for camera pi updates...
[2026-06-27 07:40:34,151.151 INFO    ] 200
[2026-06-27 07:40:34,153.153 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:40:34,177.177 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:40:34,202.202 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:40:34,203.203 INFO    ] No camera update needed
[2026-06-27 07:40:34,205.205 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:40:34,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:40:34,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:40:34,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:40:36,252.252 INFO    ] ================================================
[2026-06-27 07:40:36,269.269 INFO    ] Launching Daemon at Sat Jun 27 07:40:36 IST 2026
[2026-06-27 07:40:36,280.280 INFO    ] ================================================
[2026-06-27 07:40:36,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:40:36
[2026-06-27 07:40:36,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:40:37,139.139 INFO    ] Initializing speech engine...
[2026-06-27 07:40:37,150.150 INFO    ] 2026-06-27 07:40:37
[2026-06-27 07:40:37,359.359 INFO    ] 2026-06-27 07:40:37
[2026-06-27 07:40:37,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:40:37,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:40:37,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:40:37,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:40:37,783.783 INFO    ] time= 27/06/2026 07:40:37
[2026-06-27 07:40:37,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:40:37,814.814 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:40:37,880.880 INFO    ] No existing commands found in stream
[2026-06-27 07:40:42,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:40:42,898.898 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-27 07:40:44,531.531 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 07:40:44,532.532 INFO    ] Checking for system updates...
[2026-06-27 07:40:44,555.555 INFO    ] 200
[2026-06-27 07:40:44,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:40:44,592.592 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:40:44,594.594 INFO    ] No update needed
[2026-06-27 07:40:44,595.595 INFO    ] Checking for camera pi updates...
[2026-06-27 07:40:44,617.617 INFO    ] 200
[2026-06-27 07:40:44,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:40:44,642.642 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:40:44,680.680 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:40:44,681.681 INFO    ] No camera update needed
[2026-06-27 07:40:44,682.682 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:40:44,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:40:44,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:40:44,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:40:46,731.731 INFO    ] ================================================
[2026-06-27 07:40:46,746.746 INFO    ] Launching Daemon at Sat Jun 27 07:40:46 IST 2026
[2026-06-27 07:40:46,758.758 INFO    ] ================================================
[2026-06-27 07:40:47,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:40:47
[2026-06-27 07:40:47,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:40:47,591.591 INFO    ] Initializing speech engine...
[2026-06-27 07:40:47,601.601 INFO    ] 2026-06-27 07:40:47
[2026-06-27 07:40:47,812.812 INFO    ] 2026-06-27 07:40:47
[2026-06-27 07:40:47,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:40:48,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:40:48,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:40:48,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:40:48,239.239 INFO    ] time= 27/06/2026 07:40:48
[2026-06-27 07:40:48,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:40:48,267.267 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:40:48,334.334 INFO    ] No existing commands found in stream
[2026-06-27 07:40:53,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:40:53,352.352 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-27 07:40:55,536.536 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 07:40:55,537.537 INFO    ] Checking for system updates...
[2026-06-27 07:40:55,558.558 INFO    ] 200
[2026-06-27 07:40:55,560.560 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:40:55,591.591 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:40:55,592.592 INFO    ] No update needed
[2026-06-27 07:40:55,594.594 INFO    ] Checking for camera pi updates...
[2026-06-27 07:40:55,615.615 INFO    ] 200
[2026-06-27 07:40:55,616.616 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:40:55,639.639 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:40:55,665.665 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:40:55,667.667 INFO    ] No camera update needed
[2026-06-27 07:40:55,668.668 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:40:55,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:40:55,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:40:55,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:40:57,714.714 INFO    ] ================================================
[2026-06-27 07:40:57,729.729 INFO    ] Launching Daemon at Sat Jun 27 07:40:57 IST 2026
[2026-06-27 07:40:57,740.740 INFO    ] ================================================
[2026-06-27 07:40:58,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:40:58
[2026-06-27 07:40:58,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:40:58,548.548 INFO    ] Initializing speech engine...
[2026-06-27 07:40:58,553.553 INFO    ] 2026-06-27 07:40:58
[2026-06-27 07:40:58,758.758 INFO    ] 2026-06-27 07:40:58
[2026-06-27 07:40:58,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:40:58,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:40:58,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:40:59,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:40:59,176.176 INFO    ] time= 27/06/2026 07:40:59
[2026-06-27 07:40:59,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:40:59,206.206 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:40:59,273.273 INFO    ] No existing commands found in stream
[2026-06-27 07:41:04,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:41:04,282.282 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-27 07:41:08,998.998 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 07:41:09,000.000 INFO    ] Checking for system updates...
[2026-06-27 07:41:09,021.021 INFO    ] 200
[2026-06-27 07:41:09,023.023 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:41:09,057.057 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:41:09,058.058 INFO    ] No update needed
[2026-06-27 07:41:09,060.060 INFO    ] Checking for camera pi updates...
[2026-06-27 07:41:09,080.080 INFO    ] 200
[2026-06-27 07:41:09,082.082 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:41:09,106.106 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:41:09,146.146 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:41:09,148.148 INFO    ] No camera update needed
[2026-06-27 07:41:09,149.149 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:41:09,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:41:09,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:41:09,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:41:11,198.198 INFO    ] ================================================
[2026-06-27 07:41:11,214.214 INFO    ] Launching Daemon at Sat Jun 27 07:41:11 IST 2026
[2026-06-27 07:41:11,225.225 INFO    ] ================================================
[2026-06-27 07:41:11,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:41:11
[2026-06-27 07:41:11,890.890 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:41:12,019.019 INFO    ] Initializing speech engine...
[2026-06-27 07:41:12,024.024 INFO    ] 2026-06-27 07:41:12
[2026-06-27 07:41:12,243.243 INFO    ] 2026-06-27 07:41:12
[2026-06-27 07:41:12,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:41:12,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:41:12,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:41:12,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:41:12,662.662 INFO    ] time= 27/06/2026 07:41:12
[2026-06-27 07:41:12,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:41:12,696.696 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:41:12,764.764 INFO    ] No existing commands found in stream
[2026-06-27 07:41:17,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:41:17,776.776 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-27 07:41:20,661.661 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:41:20,663.663 INFO    ] Checking for system updates...
[2026-06-27 07:41:20,685.685 INFO    ] 200
[2026-06-27 07:41:20,686.686 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:41:20,720.720 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:41:20,721.721 INFO    ] No update needed
[2026-06-27 07:41:20,722.722 INFO    ] Checking for camera pi updates...
[2026-06-27 07:41:20,742.742 INFO    ] 200
[2026-06-27 07:41:20,743.743 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:41:20,767.767 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:41:20,813.813 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:41:20,814.814 INFO    ] No camera update needed
[2026-06-27 07:41:20,815.815 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:41:20,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:41:20,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:41:20,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:41:22,865.865 INFO    ] ================================================
[2026-06-27 07:41:22,881.881 INFO    ] Launching Daemon at Sat Jun 27 07:41:22 IST 2026
[2026-06-27 07:41:22,892.892 INFO    ] ================================================
[2026-06-27 07:41:23,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:41:23
[2026-06-27 07:41:23,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:41:23,686.686 INFO    ] Initializing speech engine...
[2026-06-27 07:41:23,694.694 INFO    ] 2026-06-27 07:41:23
[2026-06-27 07:41:23,909.909 INFO    ] 2026-06-27 07:41:23
[2026-06-27 07:41:23,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:41:24,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:41:24,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:41:24,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:41:24,334.334 INFO    ] time= 27/06/2026 07:41:24
[2026-06-27 07:41:24,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:41:24,364.364 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:41:24,431.431 INFO    ] No existing commands found in stream
[2026-06-27 07:41:29,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:41:29,444.444 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-27 07:41:32,270.270 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:41:32,272.272 INFO    ] Checking for system updates...
[2026-06-27 07:41:32,295.295 INFO    ] 200
[2026-06-27 07:41:32,297.297 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:41:32,335.335 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:41:32,337.337 INFO    ] No update needed
[2026-06-27 07:41:32,338.338 INFO    ] Checking for camera pi updates...
[2026-06-27 07:41:32,362.362 INFO    ] 200
[2026-06-27 07:41:32,364.364 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:41:32,395.395 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:41:32,424.424 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:41:32,426.426 INFO    ] No camera update needed
[2026-06-27 07:41:32,427.427 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:41:32,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:41:32,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:41:32,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:41:34,469.469 INFO    ] ================================================
[2026-06-27 07:41:34,485.485 INFO    ] Launching Daemon at Sat Jun 27 07:41:34 IST 2026
[2026-06-27 07:41:34,497.497 INFO    ] ================================================
[2026-06-27 07:41:34,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:41:34
[2026-06-27 07:41:35,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:41:35,293.293 INFO    ] Initializing speech engine...
[2026-06-27 07:41:35,298.298 INFO    ] 2026-06-27 07:41:35
[2026-06-27 07:41:35,502.502 INFO    ] 2026-06-27 07:41:35
[2026-06-27 07:41:35,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:41:35,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:41:35,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:41:35,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:41:35,918.918 INFO    ] time= 27/06/2026 07:41:35
[2026-06-27 07:41:35,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:41:35,957.957 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:41:36,025.025 INFO    ] No existing commands found in stream
[2026-06-27 07:41:41,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:41:41,041.041 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-27 07:41:41,501.501 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 07:41:41,502.502 INFO    ] Checking for system updates...
[2026-06-27 07:41:41,524.524 INFO    ] 200
[2026-06-27 07:41:41,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:41:41,558.558 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:41:41,559.559 INFO    ] No update needed
[2026-06-27 07:41:41,561.561 INFO    ] Checking for camera pi updates...
[2026-06-27 07:41:41,581.581 INFO    ] 200
[2026-06-27 07:41:41,582.582 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:41:41,606.606 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:41:41,645.645 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:41:41,646.646 INFO    ] No camera update needed
[2026-06-27 07:41:41,647.647 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:41:41,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:41:41,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:41:41,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:41:43,696.696 INFO    ] ================================================
[2026-06-27 07:41:43,713.713 INFO    ] Launching Daemon at Sat Jun 27 07:41:43 IST 2026
[2026-06-27 07:41:43,724.724 INFO    ] ================================================
[2026-06-27 07:41:44,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:41:44
[2026-06-27 07:41:44,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:41:44,542.542 INFO    ] Initializing speech engine...
[2026-06-27 07:41:44,547.547 INFO    ] 2026-06-27 07:41:44
[2026-06-27 07:41:44,751.751 INFO    ] 2026-06-27 07:41:44
[2026-06-27 07:41:44,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:41:44,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:41:44,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:41:45,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:41:45,165.165 INFO    ] time= 27/06/2026 07:41:45
[2026-06-27 07:41:45,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:41:45,198.198 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:41:45,263.263 INFO    ] No existing commands found in stream
[2026-06-27 07:41:50,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:41:50,276.276 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-27 07:41:54,292.292 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 07:41:54,294.294 INFO    ] Checking for system updates...
[2026-06-27 07:41:54,316.316 INFO    ] 200
[2026-06-27 07:41:54,318.318 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:41:54,348.348 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:41:54,349.349 INFO    ] No update needed
[2026-06-27 07:41:54,351.351 INFO    ] Checking for camera pi updates...
[2026-06-27 07:41:54,370.370 INFO    ] 200
[2026-06-27 07:41:54,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:41:54,396.396 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:41:54,419.419 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:41:54,421.421 INFO    ] No camera update needed
[2026-06-27 07:41:54,422.422 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:41:54,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:41:54,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:41:54,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:41:56,468.468 INFO    ] ================================================
[2026-06-27 07:41:56,483.483 INFO    ] Launching Daemon at Sat Jun 27 07:41:56 IST 2026
[2026-06-27 07:41:56,495.495 INFO    ] ================================================
[2026-06-27 07:41:56,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:41:56
[2026-06-27 07:41:57,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:41:57,346.346 INFO    ] Initializing speech engine...
[2026-06-27 07:41:57,359.359 INFO    ] 2026-06-27 07:41:57
[2026-06-27 07:41:57,571.571 INFO    ] 2026-06-27 07:41:57
[2026-06-27 07:41:57,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:41:57,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:41:57,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:41:57,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:41:57,994.994 INFO    ] time= 27/06/2026 07:41:57
[2026-06-27 07:41:58,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:41:58,022.022 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:41:58,090.090 INFO    ] No existing commands found in stream
[2026-06-27 07:42:03,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:42:03,103.103 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-27 07:42:04,985.985 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:42:04,987.987 INFO    ] Checking for system updates...
[2026-06-27 07:42:05,009.009 INFO    ] 200
[2026-06-27 07:42:05,011.011 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:42:05,042.042 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:42:05,043.043 INFO    ] No update needed
[2026-06-27 07:42:05,045.045 INFO    ] Checking for camera pi updates...
[2026-06-27 07:42:05,066.066 INFO    ] 200
[2026-06-27 07:42:05,068.068 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:42:05,093.093 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:42:05,137.137 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:42:05,138.138 INFO    ] No camera update needed
[2026-06-27 07:42:05,140.140 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:42:05,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:42:05,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:42:05,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:42:07,187.187 INFO    ] ================================================
[2026-06-27 07:42:07,203.203 INFO    ] Launching Daemon at Sat Jun 27 07:42:07 IST 2026
[2026-06-27 07:42:07,214.214 INFO    ] ================================================
[2026-06-27 07:42:07,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:42:07
[2026-06-27 07:42:07,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:42:08,040.040 INFO    ] Initializing speech engine...
[2026-06-27 07:42:08,048.048 INFO    ] 2026-06-27 07:42:08
[2026-06-27 07:42:08,270.270 INFO    ] 2026-06-27 07:42:08
[2026-06-27 07:42:08,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:42:08,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:42:08,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:42:08,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:42:08,707.707 INFO    ] time= 27/06/2026 07:42:08
[2026-06-27 07:42:08,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:42:08,754.754 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:42:08,830.830 INFO    ] No existing commands found in stream
[2026-06-27 07:42:13,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:42:13,843.843 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-27 07:42:17,503.503 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:42:17,505.505 INFO    ] Checking for system updates...
[2026-06-27 07:42:17,525.525 INFO    ] 200
[2026-06-27 07:42:17,527.527 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:42:17,557.557 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:42:17,558.558 INFO    ] No update needed
[2026-06-27 07:42:17,560.560 INFO    ] Checking for camera pi updates...
[2026-06-27 07:42:17,581.581 INFO    ] 200
[2026-06-27 07:42:17,582.582 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:42:17,606.606 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:42:17,746.746 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:42:17,748.748 INFO    ] No camera update needed
[2026-06-27 07:42:17,749.749 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:42:17,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:42:17,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:42:17,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:42:19,797.797 INFO    ] ================================================
[2026-06-27 07:42:19,813.813 INFO    ] Launching Daemon at Sat Jun 27 07:42:19 IST 2026
[2026-06-27 07:42:19,825.825 INFO    ] ================================================
[2026-06-27 07:42:20,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:42:20
[2026-06-27 07:42:20,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:42:20,683.683 INFO    ] Initializing speech engine...
[2026-06-27 07:42:20,688.688 INFO    ] 2026-06-27 07:42:20
[2026-06-27 07:42:20,897.897 INFO    ] 2026-06-27 07:42:20
[2026-06-27 07:42:20,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:42:21,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:42:21,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:42:21,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:42:21,322.322 INFO    ] time= 27/06/2026 07:42:21
[2026-06-27 07:42:21,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:42:21,353.353 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:42:21,422.422 INFO    ] No existing commands found in stream
[2026-06-27 07:42:26,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:42:26,435.435 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-27 07:42:27,051.051 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:42:27,052.052 INFO    ] Checking for system updates...
[2026-06-27 07:42:27,075.075 INFO    ] 200
[2026-06-27 07:42:27,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:42:27,107.107 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:42:27,108.108 INFO    ] No update needed
[2026-06-27 07:42:27,109.109 INFO    ] Checking for camera pi updates...
[2026-06-27 07:42:27,129.129 INFO    ] 200
[2026-06-27 07:42:27,131.131 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:42:27,154.154 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:42:27,194.194 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:42:27,196.196 INFO    ] No camera update needed
[2026-06-27 07:42:27,197.197 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:42:27,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:42:27,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:42:27,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:42:29,242.242 INFO    ] ================================================
[2026-06-27 07:42:30,858.858 INFO    ] Launching Daemon at Sat Jun 27 07:42:30 IST 2026
[2026-06-27 07:42:30,869.869 INFO    ] ================================================
[2026-06-27 07:42:31,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:42:31
[2026-06-27 07:42:31,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:42:31,741.741 INFO    ] Initializing speech engine...
[2026-06-27 07:42:31,747.747 INFO    ] 2026-06-27 07:42:31
[2026-06-27 07:42:31,945.945 INFO    ] 2026-06-27 07:42:31
[2026-06-27 07:42:31,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:42:32,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:42:32,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:42:32,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:42:32,383.383 INFO    ] time= 27/06/2026 07:42:32
[2026-06-27 07:42:32,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:42:32,439.439 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:42:32,509.509 INFO    ] No existing commands found in stream
[2026-06-27 07:42:37,520.520 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:42:37,523.523 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-27 07:42:39,325.325 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 07:42:39,326.326 INFO    ] Checking for system updates...
[2026-06-27 07:42:39,347.347 INFO    ] 200
[2026-06-27 07:42:39,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:42:39,379.379 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:42:39,381.381 INFO    ] No update needed
[2026-06-27 07:42:39,382.382 INFO    ] Checking for camera pi updates...
[2026-06-27 07:42:39,402.402 INFO    ] 200
[2026-06-27 07:42:39,404.404 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:42:39,429.429 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:42:39,480.480 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:42:39,482.482 INFO    ] No camera update needed
[2026-06-27 07:42:39,483.483 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:42:39,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:42:39,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:42:39,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:42:41,531.531 INFO    ] ================================================
[2026-06-27 07:42:41,546.546 INFO    ] Launching Daemon at Sat Jun 27 07:42:41 IST 2026
[2026-06-27 07:42:41,556.556 INFO    ] ================================================
[2026-06-27 07:42:41,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:42:41
[2026-06-27 07:42:42,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:42:42,448.448 INFO    ] Initializing speech engine...
[2026-06-27 07:42:42,453.453 INFO    ] 2026-06-27 07:42:42
[2026-06-27 07:42:42,658.658 INFO    ] 2026-06-27 07:42:42
[2026-06-27 07:42:42,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:42:42,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:42:42,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:42:43,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:42:43,084.084 INFO    ] time= 27/06/2026 07:42:43
[2026-06-27 07:42:43,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:42:43,111.111 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:42:43,176.176 INFO    ] No existing commands found in stream
[2026-06-27 07:42:48,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:42:48,190.190 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-27 07:42:48,643.643 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 07:42:48,645.645 INFO    ] Checking for system updates...
[2026-06-27 07:42:48,666.666 INFO    ] 200
[2026-06-27 07:42:48,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:42:48,701.701 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:42:48,702.702 INFO    ] No update needed
[2026-06-27 07:42:48,704.704 INFO    ] Checking for camera pi updates...
[2026-06-27 07:42:48,724.724 INFO    ] 200
[2026-06-27 07:42:48,725.725 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:42:48,750.750 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:42:48,774.774 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:42:48,776.776 INFO    ] No camera update needed
[2026-06-27 07:42:48,777.777 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:42:48,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:42:48,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:42:48,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:42:50,824.824 INFO    ] ================================================
[2026-06-27 07:42:50,840.840 INFO    ] Launching Daemon at Sat Jun 27 07:42:50 IST 2026
[2026-06-27 07:42:50,851.851 INFO    ] ================================================
[2026-06-27 07:42:51,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:42:51
[2026-06-27 07:42:51,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:42:51,697.697 INFO    ] Initializing speech engine...
[2026-06-27 07:42:51,703.703 INFO    ] 2026-06-27 07:42:51
[2026-06-27 07:42:51,914.914 INFO    ] 2026-06-27 07:42:51
[2026-06-27 07:42:51,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:42:52,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:42:52,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:42:52,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:42:52,342.342 INFO    ] time= 27/06/2026 07:42:52
[2026-06-27 07:42:52,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:42:52,372.372 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:42:52,440.440 INFO    ] No existing commands found in stream
[2026-06-27 07:42:57,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:42:57,453.453 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-27 07:43:01,118.118 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 07:43:01,120.120 INFO    ] Checking for system updates...
[2026-06-27 07:43:01,142.142 INFO    ] 200
[2026-06-27 07:43:01,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:43:01,174.174 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:43:01,176.176 INFO    ] No update needed
[2026-06-27 07:43:01,177.177 INFO    ] Checking for camera pi updates...
[2026-06-27 07:43:01,197.197 INFO    ] 200
[2026-06-27 07:43:01,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:43:01,222.222 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:43:01,263.263 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:43:01,265.265 INFO    ] No camera update needed
[2026-06-27 07:43:01,266.266 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:43:01,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:43:01,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:43:01,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:43:03,308.308 INFO    ] ================================================
[2026-06-27 07:43:03,323.323 INFO    ] Launching Daemon at Sat Jun 27 07:43:03 IST 2026
[2026-06-27 07:43:03,334.334 INFO    ] ================================================
[2026-06-27 07:43:03,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:43:03
[2026-06-27 07:43:04,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:43:04,133.133 INFO    ] Initializing speech engine...
[2026-06-27 07:43:04,138.138 INFO    ] 2026-06-27 07:43:04
[2026-06-27 07:43:04,358.358 INFO    ] 2026-06-27 07:43:04
[2026-06-27 07:43:04,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:43:04,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:43:04,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:43:04,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:43:04,779.779 INFO    ] time= 27/06/2026 07:43:04
[2026-06-27 07:43:04,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:43:04,813.813 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:43:04,880.880 INFO    ] No existing commands found in stream
[2026-06-27 07:43:09,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:43:09,893.893 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-27 07:43:12,848.848 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 07:43:12,850.850 INFO    ] Checking for system updates...
[2026-06-27 07:43:12,873.873 INFO    ] 200
[2026-06-27 07:43:12,875.875 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:43:12,906.906 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:43:12,907.907 INFO    ] No update needed
[2026-06-27 07:43:12,909.909 INFO    ] Checking for camera pi updates...
[2026-06-27 07:43:12,928.928 INFO    ] 200
[2026-06-27 07:43:12,930.930 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:43:12,954.954 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:43:12,990.990 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:43:12,992.992 INFO    ] No camera update needed
[2026-06-27 07:43:12,993.993 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:43:12,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:43:12,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:43:13,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:43:15,040.040 INFO    ] ================================================
[2026-06-27 07:43:15,055.055 INFO    ] Launching Daemon at Sat Jun 27 07:43:15 IST 2026
[2026-06-27 07:43:15,066.066 INFO    ] ================================================
[2026-06-27 07:43:15,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:43:15
[2026-06-27 07:43:15,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:43:15,939.939 INFO    ] Initializing speech engine...
[2026-06-27 07:43:15,943.943 INFO    ] 2026-06-27 07:43:15
[2026-06-27 07:43:16,156.156 INFO    ] 2026-06-27 07:43:16
[2026-06-27 07:43:16,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:43:16,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:43:16,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:43:16,582.582 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:43:16,607.607 INFO    ] time= 27/06/2026 07:43:16
[2026-06-27 07:43:16,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:43:16,614.614 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:43:16,683.683 INFO    ] No existing commands found in stream
[2026-06-27 07:43:21,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:43:21,701.701 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-27 07:43:25,872.872 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 07:43:25,873.873 INFO    ] Checking for system updates...
[2026-06-27 07:43:25,895.895 INFO    ] 200
[2026-06-27 07:43:25,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:43:25,929.929 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:43:25,931.931 INFO    ] No update needed
[2026-06-27 07:43:25,932.932 INFO    ] Checking for camera pi updates...
[2026-06-27 07:43:25,955.955 INFO    ] 200
[2026-06-27 07:43:25,957.957 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:43:25,981.981 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:43:26,023.023 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:43:26,025.025 INFO    ] No camera update needed
[2026-06-27 07:43:26,026.026 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:43:26,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:43:26,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:43:26,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:43:28,074.074 INFO    ] ================================================
[2026-06-27 07:43:28,089.089 INFO    ] Launching Daemon at Sat Jun 27 07:43:28 IST 2026
[2026-06-27 07:43:28,100.100 INFO    ] ================================================
[2026-06-27 07:43:28,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:43:28
[2026-06-27 07:43:28,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:43:28,893.893 INFO    ] Initializing speech engine...
[2026-06-27 07:43:28,905.905 INFO    ] 2026-06-27 07:43:28
[2026-06-27 07:43:29,112.112 INFO    ] 2026-06-27 07:43:29
[2026-06-27 07:43:29,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:43:29,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:43:29,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:43:29,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:43:29,531.531 INFO    ] time= 27/06/2026 07:43:29
[2026-06-27 07:43:29,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:43:29,558.558 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:43:29,626.626 INFO    ] No existing commands found in stream
[2026-06-27 07:43:34,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:43:34,648.648 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-27 07:43:38,933.933 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 07:43:38,934.934 INFO    ] Checking for system updates...
[2026-06-27 07:43:38,955.955 INFO    ] 200
[2026-06-27 07:43:38,956.956 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:43:38,987.987 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:43:38,988.988 INFO    ] No update needed
[2026-06-27 07:43:38,989.989 INFO    ] Checking for camera pi updates...
[2026-06-27 07:43:39,009.009 INFO    ] 200
[2026-06-27 07:43:39,010.010 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:43:39,034.034 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:43:39,072.072 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:43:39,073.073 INFO    ] No camera update needed
[2026-06-27 07:43:39,075.075 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:43:39,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:43:39,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:43:39,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:43:41,120.120 INFO    ] ================================================
[2026-06-27 07:43:41,135.135 INFO    ] Launching Daemon at Sat Jun 27 07:43:41 IST 2026
[2026-06-27 07:43:41,146.146 INFO    ] ================================================
[2026-06-27 07:43:41,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:43:41
[2026-06-27 07:43:41,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:43:41,981.981 INFO    ] Initializing speech engine...
[2026-06-27 07:43:41,987.987 INFO    ] 2026-06-27 07:43:41
[2026-06-27 07:43:42,191.191 INFO    ] 2026-06-27 07:43:42
[2026-06-27 07:43:42,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:43:42,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:43:42,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:43:42,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:43:42,587.587 INFO    ] time= 27/06/2026 07:43:42
[2026-06-27 07:43:42,631.631 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:43:42,636.636 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:43:42,706.706 INFO    ] No existing commands found in stream
[2026-06-27 07:43:47,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:43:47,719.719 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-27 07:43:48,623.623 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:43:48,624.624 INFO    ] Checking for system updates...
[2026-06-27 07:43:48,646.646 INFO    ] 200
[2026-06-27 07:43:48,649.649 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:43:48,687.687 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:43:48,689.689 INFO    ] No update needed
[2026-06-27 07:43:48,690.690 INFO    ] Checking for camera pi updates...
[2026-06-27 07:43:48,710.710 INFO    ] 200
[2026-06-27 07:43:48,711.711 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:43:48,734.734 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:43:48,772.772 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:43:48,773.773 INFO    ] No camera update needed
[2026-06-27 07:43:48,775.775 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:43:48,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:43:48,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:43:48,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:43:50,819.819 INFO    ] ================================================
[2026-06-27 07:43:50,835.835 INFO    ] Launching Daemon at Sat Jun 27 07:43:50 IST 2026
[2026-06-27 07:43:50,846.846 INFO    ] ================================================
[2026-06-27 07:43:51,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:43:51
[2026-06-27 07:43:51,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:43:51,720.720 INFO    ] Initializing speech engine...
[2026-06-27 07:43:51,730.730 INFO    ] 2026-06-27 07:43:51
[2026-06-27 07:43:51,936.936 INFO    ] 2026-06-27 07:43:51
[2026-06-27 07:43:51,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:43:52,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:43:52,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:43:52,337.337 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:43:52,371.371 INFO    ] time= 27/06/2026 07:43:52
[2026-06-27 07:43:52,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:43:52,382.382 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:43:52,448.448 INFO    ] No existing commands found in stream
[2026-06-27 07:43:57,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:43:57,460.460 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-27 07:44:00,286.286 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 07:44:00,287.287 INFO    ] Checking for system updates...
[2026-06-27 07:44:00,310.310 INFO    ] 200
[2026-06-27 07:44:00,311.311 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:44:00,342.342 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:44:00,343.343 INFO    ] No update needed
[2026-06-27 07:44:00,345.345 INFO    ] Checking for camera pi updates...
[2026-06-27 07:44:00,364.364 INFO    ] 200
[2026-06-27 07:44:00,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:44:00,389.389 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:44:00,435.435 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:44:00,437.437 INFO    ] No camera update needed
[2026-06-27 07:44:00,438.438 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:44:00,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:44:00,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:44:00,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:44:02,478.478 INFO    ] ================================================
[2026-06-27 07:44:02,488.488 INFO    ] Launching Daemon at Sat Jun 27 07:44:02 IST 2026
[2026-06-27 07:44:02,494.494 INFO    ] ================================================
[2026-06-27 07:44:02,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:44:02
[2026-06-27 07:44:03,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:44:03,292.292 INFO    ] Initializing speech engine...
[2026-06-27 07:44:03,298.298 INFO    ] 2026-06-27 07:44:03
[2026-06-27 07:44:03,502.502 INFO    ] 2026-06-27 07:44:03
[2026-06-27 07:44:03,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:44:03,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:44:03,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:44:03,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:44:03,849.849 INFO    ] time= 27/06/2026 07:44:03
[2026-06-27 07:44:03,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:44:03,931.931 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:44:04,029.029 INFO    ] No existing commands found in stream
[2026-06-27 07:44:09,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:44:09,043.043 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-27 07:44:11,068.068 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:44:11,069.069 INFO    ] Checking for system updates...
[2026-06-27 07:44:11,090.090 INFO    ] 200
[2026-06-27 07:44:11,092.092 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:44:11,122.122 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:44:11,124.124 INFO    ] No update needed
[2026-06-27 07:44:11,125.125 INFO    ] Checking for camera pi updates...
[2026-06-27 07:44:11,144.144 INFO    ] 200
[2026-06-27 07:44:11,146.146 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:44:11,169.169 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:44:11,206.206 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:44:11,207.207 INFO    ] No camera update needed
[2026-06-27 07:44:11,208.208 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:44:11,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:44:11,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:44:11,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:44:13,254.254 INFO    ] ================================================
[2026-06-27 07:44:13,270.270 INFO    ] Launching Daemon at Sat Jun 27 07:44:13 IST 2026
[2026-06-27 07:44:13,281.281 INFO    ] ================================================
[2026-06-27 07:44:13,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:44:13
[2026-06-27 07:44:13,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:44:14,103.103 INFO    ] Initializing speech engine...
[2026-06-27 07:44:14,116.116 INFO    ] 2026-06-27 07:44:14
[2026-06-27 07:44:14,321.321 INFO    ] 2026-06-27 07:44:14
[2026-06-27 07:44:14,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:44:14,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:44:14,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:44:14,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:44:14,740.740 INFO    ] time= 27/06/2026 07:44:14
[2026-06-27 07:44:14,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:44:14,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:44:14,860.860 INFO    ] No existing commands found in stream
[2026-06-27 07:44:19,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:44:19,872.872 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-27 07:44:21,904.904 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:44:21,905.905 INFO    ] Checking for system updates...
[2026-06-27 07:44:21,926.926 INFO    ] 200
[2026-06-27 07:44:21,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:44:21,958.958 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:44:21,960.960 INFO    ] No update needed
[2026-06-27 07:44:21,961.961 INFO    ] Checking for camera pi updates...
[2026-06-27 07:44:21,982.982 INFO    ] 200
[2026-06-27 07:44:21,983.983 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:44:22,009.009 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:44:22,149.149 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:44:22,150.150 INFO    ] No camera update needed
[2026-06-27 07:44:22,151.151 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:44:22,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:44:22,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:44:22,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:44:24,196.196 INFO    ] ================================================
[2026-06-27 07:44:24,211.211 INFO    ] Launching Daemon at Sat Jun 27 07:44:24 IST 2026
[2026-06-27 07:44:24,222.222 INFO    ] ================================================
[2026-06-27 07:44:24,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:44:24
[2026-06-27 07:44:24,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:44:25,033.033 INFO    ] Initializing speech engine...
[2026-06-27 07:44:25,038.038 INFO    ] 2026-06-27 07:44:25
[2026-06-27 07:44:25,242.242 INFO    ] 2026-06-27 07:44:25
[2026-06-27 07:44:25,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:44:25,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:44:25,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:44:25,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:44:25,676.676 INFO    ] time= 27/06/2026 07:44:25
[2026-06-27 07:44:25,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:44:25,693.693 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:44:25,759.759 INFO    ] No existing commands found in stream
[2026-06-27 07:44:30,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:44:30,772.772 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-27 07:44:32,983.983 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 07:44:32,985.985 INFO    ] Checking for system updates...
[2026-06-27 07:44:33,005.005 INFO    ] 200
[2026-06-27 07:44:33,007.007 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:44:33,039.039 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:44:33,041.041 INFO    ] No update needed
[2026-06-27 07:44:33,042.042 INFO    ] Checking for camera pi updates...
[2026-06-27 07:44:33,061.061 INFO    ] 200
[2026-06-27 07:44:33,062.062 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:44:33,086.086 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:44:33,123.123 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:44:33,125.125 INFO    ] No camera update needed
[2026-06-27 07:44:33,126.126 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:44:33,127.127 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:44:33,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:44:33,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:44:35,173.173 INFO    ] ================================================
[2026-06-27 07:44:35,187.187 INFO    ] Launching Daemon at Sat Jun 27 07:44:35 IST 2026
[2026-06-27 07:44:35,198.198 INFO    ] ================================================
[2026-06-27 07:44:35,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:44:35
[2026-06-27 07:44:35,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:44:36,030.030 INFO    ] Initializing speech engine...
[2026-06-27 07:44:36,035.035 INFO    ] 2026-06-27 07:44:36
[2026-06-27 07:44:36,240.240 INFO    ] 2026-06-27 07:44:36
[2026-06-27 07:44:36,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:44:36,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:44:36,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:44:36,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:44:36,677.677 INFO    ] time= 27/06/2026 07:44:36
[2026-06-27 07:44:36,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:44:36,688.688 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:44:36,753.753 INFO    ] No existing commands found in stream
[2026-06-27 07:44:41,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:44:41,767.767 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-27 07:44:45,343.343 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:44:45,344.344 INFO    ] Checking for system updates...
[2026-06-27 07:44:45,365.365 INFO    ] 200
[2026-06-27 07:44:45,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:44:45,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:44:45,401.401 INFO    ] No update needed
[2026-06-27 07:44:45,402.402 INFO    ] Checking for camera pi updates...
[2026-06-27 07:44:45,422.422 INFO    ] 200
[2026-06-27 07:44:45,423.423 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:44:45,448.448 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:44:45,488.488 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:44:45,490.490 INFO    ] No camera update needed
[2026-06-27 07:44:45,491.491 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:44:45,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:44:45,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:44:45,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:44:47,540.540 INFO    ] ================================================
[2026-06-27 07:44:47,555.555 INFO    ] Launching Daemon at Sat Jun 27 07:44:47 IST 2026
[2026-06-27 07:44:47,566.566 INFO    ] ================================================
[2026-06-27 07:44:47,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:44:47
[2026-06-27 07:44:48,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:44:48,455.455 INFO    ] Initializing speech engine...
[2026-06-27 07:44:48,460.460 INFO    ] 2026-06-27 07:44:48
[2026-06-27 07:44:48,671.671 INFO    ] 2026-06-27 07:44:48
[2026-06-27 07:44:48,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:44:48,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:44:48,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:44:49,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:44:49,121.121 INFO    ] time= 27/06/2026 07:44:49
[2026-06-27 07:44:49,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:44:49,128.128 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:44:49,195.195 INFO    ] No existing commands found in stream
[2026-06-27 07:44:54,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:44:54,209.209 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-27 07:44:58,134.134 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:44:58,136.136 INFO    ] Checking for system updates...
[2026-06-27 07:44:58,158.158 INFO    ] 200
[2026-06-27 07:44:58,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:44:58,192.192 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:44:58,193.193 INFO    ] No update needed
[2026-06-27 07:44:58,195.195 INFO    ] Checking for camera pi updates...
[2026-06-27 07:44:58,217.217 INFO    ] 200
[2026-06-27 07:44:58,218.218 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:44:58,241.241 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:44:58,280.280 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:44:58,282.282 INFO    ] No camera update needed
[2026-06-27 07:44:58,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:44:58,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:44:58,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:44:58,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:45:00,328.328 INFO    ] ================================================
[2026-06-27 07:45:00,344.344 INFO    ] Launching Daemon at Sat Jun 27 07:45:00 IST 2026
[2026-06-27 07:45:00,355.355 INFO    ] ================================================
[2026-06-27 07:45:00,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:45:00
[2026-06-27 07:45:01,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:45:01,200.200 INFO    ] Initializing speech engine...
[2026-06-27 07:45:01,210.210 INFO    ] 2026-06-27 07:45:01
[2026-06-27 07:45:01,415.415 INFO    ] 2026-06-27 07:45:01
[2026-06-27 07:45:01,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:45:01,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:45:01,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:45:01,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:45:01,800.800 INFO    ] time= 27/06/2026 07:45:01
[2026-06-27 07:45:01,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:45:01,839.839 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:45:01,907.907 INFO    ] No existing commands found in stream
[2026-06-27 07:45:06,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:45:06,920.920 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-27 07:45:08,157.157 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:45:08,158.158 INFO    ] Checking for system updates...
[2026-06-27 07:45:08,180.180 INFO    ] 200
[2026-06-27 07:45:08,181.181 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:45:08,214.214 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:45:08,216.216 INFO    ] No update needed
[2026-06-27 07:45:08,217.217 INFO    ] Checking for camera pi updates...
[2026-06-27 07:45:08,238.238 INFO    ] 200
[2026-06-27 07:45:08,239.239 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:45:08,265.265 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:45:08,305.305 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:45:08,307.307 INFO    ] No camera update needed
[2026-06-27 07:45:08,308.308 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:45:08,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:45:08,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:45:08,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:45:10,355.355 INFO    ] ================================================
[2026-06-27 07:45:10,370.370 INFO    ] Launching Daemon at Sat Jun 27 07:45:10 IST 2026
[2026-06-27 07:45:10,382.382 INFO    ] ================================================
[2026-06-27 07:45:10,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:45:10
[2026-06-27 07:45:11,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:45:11,158.158 INFO    ] Initializing speech engine...
[2026-06-27 07:45:11,171.171 INFO    ] 2026-06-27 07:45:11
[2026-06-27 07:45:11,391.391 INFO    ] 2026-06-27 07:45:11
[2026-06-27 07:45:11,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:45:11,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:45:11,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:45:11,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:45:11,830.830 INFO    ] time= 27/06/2026 07:45:11
[2026-06-27 07:45:11,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:45:11,873.873 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:45:11,949.949 INFO    ] No existing commands found in stream
[2026-06-27 07:45:16,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:45:16,962.962 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-27 07:45:18,641.641 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:45:18,642.642 INFO    ] Checking for system updates...
[2026-06-27 07:45:18,663.663 INFO    ] 200
[2026-06-27 07:45:18,665.665 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:45:18,695.695 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:45:18,697.697 INFO    ] No update needed
[2026-06-27 07:45:18,698.698 INFO    ] Checking for camera pi updates...
[2026-06-27 07:45:18,718.718 INFO    ] 200
[2026-06-27 07:45:18,720.720 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:45:18,743.743 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:45:18,767.767 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:45:18,768.768 INFO    ] No camera update needed
[2026-06-27 07:45:18,770.770 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:45:18,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:45:18,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:45:18,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:45:20,815.815 INFO    ] ================================================
[2026-06-27 07:45:20,831.831 INFO    ] Launching Daemon at Sat Jun 27 07:45:20 IST 2026
[2026-06-27 07:45:20,842.842 INFO    ] ================================================
[2026-06-27 07:45:21,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:45:21
[2026-06-27 07:45:21,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:45:21,711.711 INFO    ] Initializing speech engine...
[2026-06-27 07:45:21,716.716 INFO    ] 2026-06-27 07:45:21
[2026-06-27 07:45:21,927.927 INFO    ] 2026-06-27 07:45:21
[2026-06-27 07:45:21,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:45:22,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:45:22,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:45:22,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:45:22,345.345 INFO    ] time= 27/06/2026 07:45:22
[2026-06-27 07:45:22,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:45:22,385.385 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:45:22,451.451 INFO    ] No existing commands found in stream
[2026-06-27 07:45:27,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:45:27,465.465 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-27 07:45:29,393.393 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 07:45:29,395.395 INFO    ] Checking for system updates...
[2026-06-27 07:45:29,415.415 INFO    ] 200
[2026-06-27 07:45:29,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:45:29,447.447 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:45:29,448.448 INFO    ] No update needed
[2026-06-27 07:45:29,450.450 INFO    ] Checking for camera pi updates...
[2026-06-27 07:45:29,469.469 INFO    ] 200
[2026-06-27 07:45:29,470.470 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:45:29,494.494 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:45:29,533.533 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:45:29,535.535 INFO    ] No camera update needed
[2026-06-27 07:45:29,536.536 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:45:29,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:45:29,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:45:29,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:45:31,582.582 INFO    ] ================================================
[2026-06-27 07:45:31,597.597 INFO    ] Launching Daemon at Sat Jun 27 07:45:31 IST 2026
[2026-06-27 07:45:31,609.609 INFO    ] ================================================
[2026-06-27 07:45:31,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:45:31
[2026-06-27 07:45:32,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:45:32,422.422 INFO    ] Initializing speech engine...
[2026-06-27 07:45:32,426.426 INFO    ] 2026-06-27 07:45:32
[2026-06-27 07:45:32,642.642 INFO    ] 2026-06-27 07:45:32
[2026-06-27 07:45:32,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:45:32,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:45:32,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:45:33,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:45:33,060.060 INFO    ] time= 27/06/2026 07:45:33
[2026-06-27 07:45:33,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:45:33,145.145 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:45:33,256.256 INFO    ] No existing commands found in stream
[2026-06-27 07:45:38,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:45:38,270.270 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-27 07:45:39,903.903 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 07:45:39,905.905 INFO    ] Checking for system updates...
[2026-06-27 07:45:39,925.925 INFO    ] 200
[2026-06-27 07:45:39,927.927 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:45:39,962.962 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:45:39,963.963 INFO    ] No update needed
[2026-06-27 07:45:39,965.965 INFO    ] Checking for camera pi updates...
[2026-06-27 07:45:39,984.984 INFO    ] 200
[2026-06-27 07:45:39,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:45:40,010.010 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:45:40,045.045 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:45:40,047.047 INFO    ] No camera update needed
[2026-06-27 07:45:40,048.048 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:45:40,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:45:40,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:45:40,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:45:42,094.094 INFO    ] ================================================
[2026-06-27 07:45:42,110.110 INFO    ] Launching Daemon at Sat Jun 27 07:45:42 IST 2026
[2026-06-27 07:45:42,122.122 INFO    ] ================================================
[2026-06-27 07:45:42,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:45:42
[2026-06-27 07:45:42,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:45:43,004.004 INFO    ] Initializing speech engine...
[2026-06-27 07:45:43,013.013 INFO    ] 2026-06-27 07:45:43
[2026-06-27 07:45:43,230.230 INFO    ] 2026-06-27 07:45:43
[2026-06-27 07:45:43,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:45:43,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:45:43,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:45:43,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:45:43,672.672 INFO    ] time= 27/06/2026 07:45:43
[2026-06-27 07:45:43,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:45:43,681.681 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:45:43,746.746 INFO    ] No existing commands found in stream
[2026-06-27 07:45:48,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:45:48,759.759 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-27 07:45:52,619.619 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 07:45:52,621.621 INFO    ] Checking for system updates...
[2026-06-27 07:45:52,643.643 INFO    ] 200
[2026-06-27 07:45:52,645.645 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:45:52,676.676 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:45:52,677.677 INFO    ] No update needed
[2026-06-27 07:45:52,678.678 INFO    ] Checking for camera pi updates...
[2026-06-27 07:45:52,698.698 INFO    ] 200
[2026-06-27 07:45:52,699.699 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:45:52,722.722 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:45:52,770.770 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:45:52,772.772 INFO    ] No camera update needed
[2026-06-27 07:45:52,773.773 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:45:52,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:45:52,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:45:52,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:45:54,818.818 INFO    ] ================================================
[2026-06-27 07:45:54,834.834 INFO    ] Launching Daemon at Sat Jun 27 07:45:54 IST 2026
[2026-06-27 07:45:54,846.846 INFO    ] ================================================
[2026-06-27 07:45:55,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:45:55
[2026-06-27 07:45:55,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:45:55,713.713 INFO    ] Initializing speech engine...
[2026-06-27 07:45:55,722.722 INFO    ] 2026-06-27 07:45:55
[2026-06-27 07:45:55,947.947 INFO    ] 2026-06-27 07:45:55
[2026-06-27 07:45:55,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:45:56,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:45:56,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:45:56,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:45:56,362.362 INFO    ] time= 27/06/2026 07:45:56
[2026-06-27 07:45:56,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:45:56,393.393 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:45:56,460.460 INFO    ] No existing commands found in stream
[2026-06-27 07:46:01,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:46:01,469.469 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-27 07:46:03,479.479 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:46:03,480.480 INFO    ] Checking for system updates...
[2026-06-27 07:46:03,502.502 INFO    ] 200
[2026-06-27 07:46:03,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:46:03,535.535 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:46:03,536.536 INFO    ] No update needed
[2026-06-27 07:46:03,537.537 INFO    ] Checking for camera pi updates...
[2026-06-27 07:46:03,557.557 INFO    ] 200
[2026-06-27 07:46:03,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:46:03,586.586 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:46:03,625.625 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:46:03,626.626 INFO    ] No camera update needed
[2026-06-27 07:46:03,628.628 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:46:03,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:46:03,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:46:03,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:46:05,676.676 INFO    ] ================================================
[2026-06-27 07:46:05,692.692 INFO    ] Launching Daemon at Sat Jun 27 07:46:05 IST 2026
[2026-06-27 07:46:05,703.703 INFO    ] ================================================
[2026-06-27 07:46:06,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:46:06
[2026-06-27 07:46:06,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:46:06,596.596 INFO    ] Initializing speech engine...
[2026-06-27 07:46:06,602.602 INFO    ] 2026-06-27 07:46:06
[2026-06-27 07:46:06,813.813 INFO    ] 2026-06-27 07:46:06
[2026-06-27 07:46:06,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:46:07,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:46:07,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:46:07,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:46:07,230.230 INFO    ] time= 27/06/2026 07:46:07
[2026-06-27 07:46:07,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:46:07,269.269 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:46:07,359.359 INFO    ] No existing commands found in stream
[2026-06-27 07:46:12,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:46:12,378.378 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-27 07:46:16,339.339 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 07:46:16,340.340 INFO    ] Checking for system updates...
[2026-06-27 07:46:16,364.364 INFO    ] 200
[2026-06-27 07:46:16,365.365 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:46:16,396.396 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:46:16,397.397 INFO    ] No update needed
[2026-06-27 07:46:16,399.399 INFO    ] Checking for camera pi updates...
[2026-06-27 07:46:16,418.418 INFO    ] 200
[2026-06-27 07:46:16,419.419 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:46:16,442.442 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:46:16,483.483 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:46:16,484.484 INFO    ] No camera update needed
[2026-06-27 07:46:16,486.486 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:46:16,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:46:16,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:46:16,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:46:18,519.519 INFO    ] ================================================
[2026-06-27 07:46:18,528.528 INFO    ] Launching Daemon at Sat Jun 27 07:46:18 IST 2026
[2026-06-27 07:46:18,534.534 INFO    ] ================================================
[2026-06-27 07:46:18,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:46:18
[2026-06-27 07:46:19,292.292 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:46:19,449.449 INFO    ] Initializing speech engine...
[2026-06-27 07:46:19,454.454 INFO    ] 2026-06-27 07:46:19
[2026-06-27 07:46:19,674.674 INFO    ] 2026-06-27 07:46:19
[2026-06-27 07:46:19,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:46:19,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:46:19,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:46:20,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:46:20,112.112 INFO    ] time= 27/06/2026 07:46:20
[2026-06-27 07:46:20,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:46:20,142.142 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:46:20,208.208 INFO    ] No existing commands found in stream
[2026-06-27 07:46:25,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:46:25,221.221 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-27 07:46:31,845.845 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:46:31,847.847 INFO    ] Checking for system updates...
[2026-06-27 07:46:31,872.872 INFO    ] 200
[2026-06-27 07:46:31,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:46:31,913.913 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:46:31,915.915 INFO    ] No update needed
[2026-06-27 07:46:31,917.917 INFO    ] Checking for camera pi updates...
[2026-06-27 07:46:31,942.942 INFO    ] 200
[2026-06-27 07:46:31,944.944 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:46:31,975.975 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:46:32,104.104 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:46:32,106.106 INFO    ] No camera update needed
[2026-06-27 07:46:32,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:46:32,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:46:32,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:46:32,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:46:34,160.160 INFO    ] ================================================
[2026-06-27 07:46:34,175.175 INFO    ] Launching Daemon at Sat Jun 27 07:46:34 IST 2026
[2026-06-27 07:46:34,186.186 INFO    ] ================================================
[2026-06-27 07:46:34,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:46:34
[2026-06-27 07:46:34,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:46:35,064.064 INFO    ] Initializing speech engine...
[2026-06-27 07:46:35,070.070 INFO    ] 2026-06-27 07:46:35
[2026-06-27 07:46:35,286.286 INFO    ] 2026-06-27 07:46:35
[2026-06-27 07:46:35,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:46:35,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:46:35,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:46:35,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:46:35,715.715 INFO    ] time= 27/06/2026 07:46:35
[2026-06-27 07:46:35,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:46:35,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:46:35,812.812 INFO    ] No existing commands found in stream
[2026-06-27 07:46:40,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:46:40,827.827 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-27 07:46:41,279.279 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 07:46:41,280.280 INFO    ] Checking for system updates...
[2026-06-27 07:46:41,308.308 INFO    ] 200
[2026-06-27 07:46:41,310.310 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:46:41,343.343 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:46:41,345.345 INFO    ] No update needed
[2026-06-27 07:46:41,346.346 INFO    ] Checking for camera pi updates...
[2026-06-27 07:46:41,367.367 INFO    ] 200
[2026-06-27 07:46:41,368.368 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:46:41,395.395 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:46:41,432.432 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:46:41,435.435 INFO    ] No camera update needed
[2026-06-27 07:46:41,436.436 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:46:41,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:46:41,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:46:41,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:46:43,488.488 INFO    ] ================================================
[2026-06-27 07:46:43,503.503 INFO    ] Launching Daemon at Sat Jun 27 07:46:43 IST 2026
[2026-06-27 07:46:43,514.514 INFO    ] ================================================
[2026-06-27 07:46:43,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:46:43
[2026-06-27 07:46:44,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:46:44,354.354 INFO    ] Initializing speech engine...
[2026-06-27 07:46:44,360.360 INFO    ] 2026-06-27 07:46:44
[2026-06-27 07:46:44,571.571 INFO    ] 2026-06-27 07:46:44
[2026-06-27 07:46:44,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:46:44,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:46:44,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:46:44,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:46:44,998.998 INFO    ] time= 27/06/2026 07:46:44
[2026-06-27 07:46:45,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:46:45,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:46:45,094.094 INFO    ] No existing commands found in stream
[2026-06-27 07:46:50,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:46:50,118.118 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-27 07:46:52,166.166 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:46:52,168.168 INFO    ] Checking for system updates...
[2026-06-27 07:46:52,190.190 INFO    ] 200
[2026-06-27 07:46:52,191.191 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:46:52,223.223 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:46:52,225.225 INFO    ] No update needed
[2026-06-27 07:46:52,226.226 INFO    ] Checking for camera pi updates...
[2026-06-27 07:46:52,245.245 INFO    ] 200
[2026-06-27 07:46:52,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:46:52,270.270 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:46:52,312.312 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:46:52,313.313 INFO    ] No camera update needed
[2026-06-27 07:46:52,315.315 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:46:52,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:46:52,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:46:52,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:46:54,362.362 INFO    ] ================================================
[2026-06-27 07:46:54,378.378 INFO    ] Launching Daemon at Sat Jun 27 07:46:54 IST 2026
[2026-06-27 07:46:54,389.389 INFO    ] ================================================
[2026-06-27 07:46:54,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:46:54
[2026-06-27 07:46:55,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:46:55,274.274 INFO    ] Initializing speech engine...
[2026-06-27 07:46:55,279.279 INFO    ] 2026-06-27 07:46:55
[2026-06-27 07:46:55,495.495 INFO    ] 2026-06-27 07:46:55
[2026-06-27 07:46:55,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:46:55,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:46:55,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:46:55,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:46:55,928.928 INFO    ] time= 27/06/2026 07:46:55
[2026-06-27 07:46:55,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:46:55,956.956 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:46:56,023.023 INFO    ] No existing commands found in stream
[2026-06-27 07:47:01,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:47:01,038.038 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-27 07:47:02,847.847 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 07:47:02,849.849 INFO    ] Checking for system updates...
[2026-06-27 07:47:02,870.870 INFO    ] 200
[2026-06-27 07:47:02,872.872 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:47:02,903.903 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:47:02,905.905 INFO    ] No update needed
[2026-06-27 07:47:02,906.906 INFO    ] Checking for camera pi updates...
[2026-06-27 07:47:02,928.928 INFO    ] 200
[2026-06-27 07:47:02,929.929 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:47:02,957.957 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:47:03,006.006 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:47:03,008.008 INFO    ] No camera update needed
[2026-06-27 07:47:03,009.009 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:47:03,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:47:03,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:47:03,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:47:05,056.056 INFO    ] ================================================
[2026-06-27 07:47:05,071.071 INFO    ] Launching Daemon at Sat Jun 27 07:47:05 IST 2026
[2026-06-27 07:47:05,082.082 INFO    ] ================================================
[2026-06-27 07:47:05,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:47:05
[2026-06-27 07:47:05,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:47:05,890.890 INFO    ] Initializing speech engine...
[2026-06-27 07:47:05,894.894 INFO    ] 2026-06-27 07:47:05
[2026-06-27 07:47:06,113.113 INFO    ] 2026-06-27 07:47:06
[2026-06-27 07:47:06,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:47:06,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:47:06,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:47:06,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:47:06,526.526 INFO    ] time= 27/06/2026 07:47:06
[2026-06-27 07:47:06,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:47:06,565.565 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:47:06,633.633 INFO    ] No existing commands found in stream
[2026-06-27 07:47:11,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:47:11,645.645 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-27 07:47:12,628.628 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 07:47:12,630.630 INFO    ] Checking for system updates...
[2026-06-27 07:47:12,653.653 INFO    ] 200
[2026-06-27 07:47:12,655.655 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:47:12,696.696 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:47:12,698.698 INFO    ] No update needed
[2026-06-27 07:47:12,699.699 INFO    ] Checking for camera pi updates...
[2026-06-27 07:47:12,718.718 INFO    ] 200
[2026-06-27 07:47:12,720.720 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:47:12,743.743 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:47:12,778.778 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:47:12,782.782 INFO    ] No camera update needed
[2026-06-27 07:47:12,783.783 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:47:12,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:47:12,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:47:12,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:47:14,834.834 INFO    ] ================================================
[2026-06-27 07:47:16,015.015 INFO    ] Launching Daemon at Sat Jun 27 07:47:16 IST 2026
[2026-06-27 07:47:16,027.027 INFO    ] ================================================
[2026-06-27 07:47:16,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:47:16
[2026-06-27 07:47:16,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:47:16,843.843 INFO    ] Initializing speech engine...
[2026-06-27 07:47:16,848.848 INFO    ] 2026-06-27 07:47:16
[2026-06-27 07:47:17,054.054 INFO    ] 2026-06-27 07:47:17
[2026-06-27 07:47:17,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:47:17,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:47:17,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:47:17,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:47:17,482.482 INFO    ] time= 27/06/2026 07:47:17
[2026-06-27 07:47:17,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:47:17,504.504 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:47:17,572.572 INFO    ] No existing commands found in stream
[2026-06-27 07:47:22,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:47:22,584.584 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-27 07:47:23,499.499 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 07:47:23,500.500 INFO    ] Checking for system updates...
[2026-06-27 07:47:23,522.522 INFO    ] 200
[2026-06-27 07:47:23,523.523 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:47:23,557.557 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:47:23,558.558 INFO    ] No update needed
[2026-06-27 07:47:23,560.560 INFO    ] Checking for camera pi updates...
[2026-06-27 07:47:23,579.579 INFO    ] 200
[2026-06-27 07:47:23,581.581 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:47:23,604.604 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:47:23,643.643 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:47:23,645.645 INFO    ] No camera update needed
[2026-06-27 07:47:23,646.646 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:47:23,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:47:23,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:47:23,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:47:25,693.693 INFO    ] ================================================
[2026-06-27 07:47:25,709.709 INFO    ] Launching Daemon at Sat Jun 27 07:47:25 IST 2026
[2026-06-27 07:47:25,719.719 INFO    ] ================================================
[2026-06-27 07:47:26,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:47:26
[2026-06-27 07:47:26,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:47:26,537.537 INFO    ] Initializing speech engine...
[2026-06-27 07:47:26,541.541 INFO    ] 2026-06-27 07:47:26
[2026-06-27 07:47:26,736.736 INFO    ] 2026-06-27 07:47:26
[2026-06-27 07:47:26,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:47:26,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:47:27,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:47:27,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:47:27,225.225 INFO    ] time= 27/06/2026 07:47:27
[2026-06-27 07:47:27,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:47:27,273.273 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:47:27,345.345 INFO    ] No existing commands found in stream
[2026-06-27 07:47:32,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:47:32,357.357 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-27 07:47:34,069.069 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 07:47:34,070.070 INFO    ] Checking for system updates...
[2026-06-27 07:47:34,091.091 INFO    ] 200
[2026-06-27 07:47:34,092.092 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:47:34,123.123 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:47:34,125.125 INFO    ] No update needed
[2026-06-27 07:47:34,126.126 INFO    ] Checking for camera pi updates...
[2026-06-27 07:47:34,146.146 INFO    ] 200
[2026-06-27 07:47:34,148.148 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:47:34,173.173 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:47:34,216.216 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:47:34,217.217 INFO    ] No camera update needed
[2026-06-27 07:47:34,219.219 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:47:34,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:47:34,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:47:34,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:47:36,265.265 INFO    ] ================================================
[2026-06-27 07:47:36,281.281 INFO    ] Launching Daemon at Sat Jun 27 07:47:36 IST 2026
[2026-06-27 07:47:36,292.292 INFO    ] ================================================
[2026-06-27 07:47:36,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:47:36
[2026-06-27 07:47:36,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:47:37,106.106 INFO    ] Initializing speech engine...
[2026-06-27 07:47:37,110.110 INFO    ] 2026-06-27 07:47:37
[2026-06-27 07:47:37,315.315 INFO    ] 2026-06-27 07:47:37
[2026-06-27 07:47:37,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:47:37,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:47:37,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:47:37,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:47:37,729.729 INFO    ] time= 27/06/2026 07:47:37
[2026-06-27 07:47:37,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:47:37,763.763 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:47:37,853.853 INFO    ] No existing commands found in stream
[2026-06-27 07:47:42,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:47:42,865.865 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-27 07:47:47,138.138 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 07:47:47,140.140 INFO    ] Checking for system updates...
[2026-06-27 07:47:47,161.161 INFO    ] 200
[2026-06-27 07:47:47,162.162 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:47:47,193.193 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:47:47,195.195 INFO    ] No update needed
[2026-06-27 07:47:47,196.196 INFO    ] Checking for camera pi updates...
[2026-06-27 07:47:47,216.216 INFO    ] 200
[2026-06-27 07:47:47,217.217 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:47:47,244.244 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:47:47,280.280 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:47:47,282.282 INFO    ] No camera update needed
[2026-06-27 07:47:47,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:47:47,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:47:47,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:47:47,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:47:49,330.330 INFO    ] ================================================
[2026-06-27 07:47:49,345.345 INFO    ] Launching Daemon at Sat Jun 27 07:47:49 IST 2026
[2026-06-27 07:47:49,356.356 INFO    ] ================================================
[2026-06-27 07:47:49,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:47:49
[2026-06-27 07:47:50,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:47:50,189.189 INFO    ] Initializing speech engine...
[2026-06-27 07:47:50,194.194 INFO    ] 2026-06-27 07:47:50
[2026-06-27 07:47:50,400.400 INFO    ] 2026-06-27 07:47:50
[2026-06-27 07:47:50,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:47:50,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:47:50,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:47:50,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:47:50,819.819 INFO    ] time= 27/06/2026 07:47:50
[2026-06-27 07:47:50,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:47:50,848.848 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:47:50,914.914 INFO    ] No existing commands found in stream
[2026-06-27 07:47:55,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:47:55,927.927 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-27 07:47:59,904.904 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:47:59,906.906 INFO    ] Checking for system updates...
[2026-06-27 07:47:59,927.927 INFO    ] 200
[2026-06-27 07:47:59,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:47:59,960.960 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:47:59,961.961 INFO    ] No update needed
[2026-06-27 07:47:59,962.962 INFO    ] Checking for camera pi updates...
[2026-06-27 07:47:59,982.982 INFO    ] 200
[2026-06-27 07:47:59,984.984 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:48:00,008.008 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:48:00,050.050 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:48:00,051.051 INFO    ] No camera update needed
[2026-06-27 07:48:00,053.053 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:48:00,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:48:00,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:48:00,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:48:02,095.095 INFO    ] ================================================
[2026-06-27 07:48:02,104.104 INFO    ] Launching Daemon at Sat Jun 27 07:48:02 IST 2026
[2026-06-27 07:48:02,110.110 INFO    ] ================================================
[2026-06-27 07:48:02,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:48:02
[2026-06-27 07:48:02,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:48:02,898.898 INFO    ] Initializing speech engine...
[2026-06-27 07:48:02,907.907 INFO    ] 2026-06-27 07:48:02
[2026-06-27 07:48:03,125.125 INFO    ] 2026-06-27 07:48:03
[2026-06-27 07:48:03,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:48:03,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:48:03,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:48:03,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:48:03,569.569 INFO    ] time= 27/06/2026 07:48:03
[2026-06-27 07:48:03,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:48:03,603.603 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:48:03,680.680 INFO    ] No existing commands found in stream
[2026-06-27 07:48:08,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:48:08,692.692 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-27 07:48:10,294.294 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 07:48:10,295.295 INFO    ] Checking for system updates...
[2026-06-27 07:48:10,317.317 INFO    ] 200
[2026-06-27 07:48:10,318.318 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:48:10,349.349 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:48:10,350.350 INFO    ] No update needed
[2026-06-27 07:48:10,352.352 INFO    ] Checking for camera pi updates...
[2026-06-27 07:48:10,374.374 INFO    ] 200
[2026-06-27 07:48:10,375.375 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:48:10,399.399 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:48:10,439.439 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:48:10,440.440 INFO    ] No camera update needed
[2026-06-27 07:48:10,442.442 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:48:10,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:48:10,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:48:10,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:48:12,488.488 INFO    ] ================================================
[2026-06-27 07:48:12,504.504 INFO    ] Launching Daemon at Sat Jun 27 07:48:12 IST 2026
[2026-06-27 07:48:12,515.515 INFO    ] ================================================
[2026-06-27 07:48:12,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:48:12
[2026-06-27 07:48:13,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:48:13,323.323 INFO    ] Initializing speech engine...
[2026-06-27 07:48:13,328.328 INFO    ] 2026-06-27 07:48:13
[2026-06-27 07:48:13,548.548 INFO    ] 2026-06-27 07:48:13
[2026-06-27 07:48:13,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:48:13,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:48:13,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:48:13,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:48:13,995.995 INFO    ] time= 27/06/2026 07:48:13
[2026-06-27 07:48:14,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:48:14,006.006 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:48:14,079.079 INFO    ] No existing commands found in stream
[2026-06-27 07:48:19,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:48:19,090.090 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-27 07:48:23,348.348 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 07:48:23,350.350 INFO    ] Checking for system updates...
[2026-06-27 07:48:23,371.371 INFO    ] 200
[2026-06-27 07:48:23,372.372 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:48:23,402.402 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:48:23,404.404 INFO    ] No update needed
[2026-06-27 07:48:23,405.405 INFO    ] Checking for camera pi updates...
[2026-06-27 07:48:23,424.424 INFO    ] 200
[2026-06-27 07:48:23,426.426 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:48:23,449.449 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:48:23,498.498 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:48:23,500.500 INFO    ] No camera update needed
[2026-06-27 07:48:23,501.501 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:48:23,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:48:23,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:48:23,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:48:25,552.552 INFO    ] ================================================
[2026-06-27 07:48:25,569.569 INFO    ] Launching Daemon at Sat Jun 27 07:48:25 IST 2026
[2026-06-27 07:48:25,580.580 INFO    ] ================================================
[2026-06-27 07:48:25,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:48:25
[2026-06-27 07:48:26,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:48:26,392.392 INFO    ] Initializing speech engine...
[2026-06-27 07:48:26,397.397 INFO    ] 2026-06-27 07:48:26
[2026-06-27 07:48:26,603.603 INFO    ] 2026-06-27 07:48:26
[2026-06-27 07:48:26,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:48:26,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:48:26,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:48:26,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:48:27,021.021 INFO    ] time= 27/06/2026 07:48:26
[2026-06-27 07:48:27,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:48:27,052.052 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:48:27,118.118 INFO    ] No existing commands found in stream
[2026-06-27 07:48:32,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:48:32,129.129 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-27 07:48:33,948.948 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 07:48:33,950.950 INFO    ] Checking for system updates...
[2026-06-27 07:48:33,973.973 INFO    ] 200
[2026-06-27 07:48:33,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:48:34,007.007 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:48:34,008.008 INFO    ] No update needed
[2026-06-27 07:48:34,010.010 INFO    ] Checking for camera pi updates...
[2026-06-27 07:48:34,029.029 INFO    ] 200
[2026-06-27 07:48:34,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:48:34,054.054 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:48:34,204.204 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:48:34,205.205 INFO    ] No camera update needed
[2026-06-27 07:48:34,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:48:34,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:48:34,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:48:34,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:48:36,245.245 INFO    ] ================================================
[2026-06-27 07:48:36,255.255 INFO    ] Launching Daemon at Sat Jun 27 07:48:36 IST 2026
[2026-06-27 07:48:36,261.261 INFO    ] ================================================
[2026-06-27 07:48:36,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:48:36
[2026-06-27 07:48:36,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:48:37,082.082 INFO    ] Initializing speech engine...
[2026-06-27 07:48:37,088.088 INFO    ] 2026-06-27 07:48:37
[2026-06-27 07:48:37,269.269 INFO    ] 2026-06-27 07:48:37
[2026-06-27 07:48:37,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:48:37,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:48:37,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:48:37,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:48:37,575.575 INFO    ] time= 27/06/2026 07:48:37
[2026-06-27 07:48:37,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:48:37,594.594 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:48:37,677.677 INFO    ] No existing commands found in stream
[2026-06-27 07:48:42,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:48:42,711.711 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-27 07:48:46,172.172 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 07:48:46,174.174 INFO    ] Checking for system updates...
[2026-06-27 07:48:46,196.196 INFO    ] 200
[2026-06-27 07:48:46,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:48:46,232.232 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:48:46,234.234 INFO    ] No update needed
[2026-06-27 07:48:46,235.235 INFO    ] Checking for camera pi updates...
[2026-06-27 07:48:46,256.256 INFO    ] 200
[2026-06-27 07:48:46,257.257 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:48:46,286.286 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:48:46,331.331 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:48:46,333.333 INFO    ] No camera update needed
[2026-06-27 07:48:46,334.334 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:48:46,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:48:46,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:48:46,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:48:48,384.384 INFO    ] ================================================
[2026-06-27 07:48:48,402.402 INFO    ] Launching Daemon at Sat Jun 27 07:48:48 IST 2026
[2026-06-27 07:48:48,412.412 INFO    ] ================================================
[2026-06-27 07:48:48,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:48:48
[2026-06-27 07:48:49,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:48:49,208.208 INFO    ] Initializing speech engine...
[2026-06-27 07:48:49,212.212 INFO    ] 2026-06-27 07:48:49
[2026-06-27 07:48:49,419.419 INFO    ] 2026-06-27 07:48:49
[2026-06-27 07:48:49,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:48:49,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:48:49,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:48:49,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:48:49,840.840 INFO    ] time= 27/06/2026 07:48:49
[2026-06-27 07:48:49,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:48:49,870.870 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:48:49,943.943 INFO    ] No existing commands found in stream
[2026-06-27 07:48:54,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:48:54,955.955 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-27 07:48:57,658.658 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:48:57,660.660 INFO    ] Checking for system updates...
[2026-06-27 07:48:57,680.680 INFO    ] 200
[2026-06-27 07:48:57,682.682 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:48:57,713.713 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:48:57,714.714 INFO    ] No update needed
[2026-06-27 07:48:57,715.715 INFO    ] Checking for camera pi updates...
[2026-06-27 07:48:57,735.735 INFO    ] 200
[2026-06-27 07:48:57,736.736 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:48:57,762.762 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:48:57,801.801 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:48:57,802.802 INFO    ] No camera update needed
[2026-06-27 07:48:57,804.804 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:48:57,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:48:57,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:48:57,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:48:59,850.850 INFO    ] ================================================
[2026-06-27 07:48:59,865.865 INFO    ] Launching Daemon at Sat Jun 27 07:48:59 IST 2026
[2026-06-27 07:48:59,875.875 INFO    ] ================================================
[2026-06-27 07:49:00,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:49:00
[2026-06-27 07:49:00,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:49:00,708.708 INFO    ] Initializing speech engine...
[2026-06-27 07:49:00,718.718 INFO    ] 2026-06-27 07:49:00
[2026-06-27 07:49:00,925.925 INFO    ] 2026-06-27 07:49:00
[2026-06-27 07:49:00,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:49:01,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:49:01,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:49:01,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:49:01,349.349 INFO    ] time= 27/06/2026 07:49:01
[2026-06-27 07:49:01,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:49:01,374.374 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:49:01,431.431 INFO    ] No existing commands found in stream
[2026-06-27 07:49:06,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:49:06,442.442 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-27 07:49:09,508.508 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 07:49:09,509.509 INFO    ] Checking for system updates...
[2026-06-27 07:49:09,532.532 INFO    ] 200
[2026-06-27 07:49:09,533.533 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:49:09,564.564 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:49:09,565.565 INFO    ] No update needed
[2026-06-27 07:49:09,566.566 INFO    ] Checking for camera pi updates...
[2026-06-27 07:49:09,587.587 INFO    ] 200
[2026-06-27 07:49:09,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:49:09,611.611 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:49:09,647.647 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:49:09,648.648 INFO    ] No camera update needed
[2026-06-27 07:49:09,649.649 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:49:09,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:49:09,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:49:09,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:49:11,695.695 INFO    ] ================================================
[2026-06-27 07:49:11,710.710 INFO    ] Launching Daemon at Sat Jun 27 07:49:11 IST 2026
[2026-06-27 07:49:11,721.721 INFO    ] ================================================
[2026-06-27 07:49:12,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:49:12
[2026-06-27 07:49:12,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:49:12,510.510 INFO    ] Initializing speech engine...
[2026-06-27 07:49:12,515.515 INFO    ] 2026-06-27 07:49:12
[2026-06-27 07:49:12,719.719 INFO    ] 2026-06-27 07:49:12
[2026-06-27 07:49:12,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:49:12,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:49:12,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:49:13,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:49:13,153.153 INFO    ] time= 27/06/2026 07:49:13
[2026-06-27 07:49:13,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:49:13,164.164 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:49:13,230.230 INFO    ] No existing commands found in stream
[2026-06-27 07:49:18,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:49:18,242.242 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-27 07:49:20,859.859 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:49:20,861.861 INFO    ] Checking for system updates...
[2026-06-27 07:49:20,884.884 INFO    ] 200
[2026-06-27 07:49:20,886.886 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:49:20,916.916 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:49:20,917.917 INFO    ] No update needed
[2026-06-27 07:49:20,919.919 INFO    ] Checking for camera pi updates...
[2026-06-27 07:49:20,938.938 INFO    ] 200
[2026-06-27 07:49:20,940.940 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:49:20,964.964 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:49:21,011.011 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:49:21,012.012 INFO    ] No camera update needed
[2026-06-27 07:49:21,014.014 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:49:21,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:49:21,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:49:21,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:49:23,059.059 INFO    ] ================================================
[2026-06-27 07:49:23,074.074 INFO    ] Launching Daemon at Sat Jun 27 07:49:23 IST 2026
[2026-06-27 07:49:23,086.086 INFO    ] ================================================
[2026-06-27 07:49:23,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:49:23
[2026-06-27 07:49:23,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:49:23,946.946 INFO    ] Initializing speech engine...
[2026-06-27 07:49:23,954.954 INFO    ] 2026-06-27 07:49:23
[2026-06-27 07:49:24,172.172 INFO    ] 2026-06-27 07:49:24
[2026-06-27 07:49:24,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:49:24,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:49:24,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:49:24,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:49:24,596.596 INFO    ] time= 27/06/2026 07:49:24
[2026-06-27 07:49:24,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:49:24,627.627 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:49:24,693.693 INFO    ] No existing commands found in stream
[2026-06-27 07:49:29,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:49:29,707.707 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-27 07:49:33,646.646 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 07:49:33,648.648 INFO    ] Checking for system updates...
[2026-06-27 07:49:33,685.685 INFO    ] 200
[2026-06-27 07:49:33,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:49:33,741.741 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:49:33,743.743 INFO    ] No update needed
[2026-06-27 07:49:33,746.746 INFO    ] Checking for camera pi updates...
[2026-06-27 07:49:33,783.783 INFO    ] 200
[2026-06-27 07:49:33,786.786 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:49:33,827.827 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:49:33,871.871 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:49:33,874.874 INFO    ] No camera update needed
[2026-06-27 07:49:33,876.876 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:49:33,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:49:33,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:49:33,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:49:35,926.926 INFO    ] ================================================
[2026-06-27 07:49:35,941.941 INFO    ] Launching Daemon at Sat Jun 27 07:49:35 IST 2026
[2026-06-27 07:49:35,952.952 INFO    ] ================================================
[2026-06-27 07:49:36,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:49:36
[2026-06-27 07:49:36,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:49:36,784.784 INFO    ] Initializing speech engine...
[2026-06-27 07:49:36,789.789 INFO    ] 2026-06-27 07:49:36
[2026-06-27 07:49:36,995.995 INFO    ] 2026-06-27 07:49:36
[2026-06-27 07:49:37,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:49:37,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:49:37,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:49:37,373.373 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:49:37,422.422 INFO    ] time= 27/06/2026 07:49:37
[2026-06-27 07:49:37,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:49:37,451.451 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:49:37,519.519 INFO    ] No existing commands found in stream
[2026-06-27 07:49:42,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:49:42,531.531 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-27 07:49:46,204.204 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 07:49:46,205.205 INFO    ] Checking for system updates...
[2026-06-27 07:49:46,228.228 INFO    ] 200
[2026-06-27 07:49:46,229.229 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:49:46,263.263 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:49:46,265.265 INFO    ] No update needed
[2026-06-27 07:49:46,267.267 INFO    ] Checking for camera pi updates...
[2026-06-27 07:49:46,286.286 INFO    ] 200
[2026-06-27 07:49:46,288.288 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:49:46,311.311 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:49:46,356.356 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:49:46,358.358 INFO    ] No camera update needed
[2026-06-27 07:49:46,359.359 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:49:46,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:49:46,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:49:46,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:49:48,406.406 INFO    ] ================================================
[2026-06-27 07:49:48,421.421 INFO    ] Launching Daemon at Sat Jun 27 07:49:48 IST 2026
[2026-06-27 07:49:48,433.433 INFO    ] ================================================
[2026-06-27 07:49:48,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:49:48
[2026-06-27 07:49:49,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:49:49,245.245 INFO    ] Initializing speech engine...
[2026-06-27 07:49:49,259.259 INFO    ] 2026-06-27 07:49:49
[2026-06-27 07:49:49,467.467 INFO    ] 2026-06-27 07:49:49
[2026-06-27 07:49:49,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:49:49,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:49:49,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:49:49,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:49:49,884.884 INFO    ] time= 27/06/2026 07:49:49
[2026-06-27 07:49:49,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:49:49,918.918 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:49:49,984.984 INFO    ] No existing commands found in stream
[2026-06-27 07:49:54,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:49:54,997.997 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-27 07:49:56,720.720 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 07:49:56,721.721 INFO    ] Checking for system updates...
[2026-06-27 07:49:56,744.744 INFO    ] 200
[2026-06-27 07:49:56,746.746 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:49:56,776.776 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:49:56,778.778 INFO    ] No update needed
[2026-06-27 07:49:56,779.779 INFO    ] Checking for camera pi updates...
[2026-06-27 07:49:56,799.799 INFO    ] 200
[2026-06-27 07:49:56,800.800 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:49:56,823.823 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:49:56,862.862 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:49:56,864.864 INFO    ] No camera update needed
[2026-06-27 07:49:56,865.865 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:49:56,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:49:56,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:49:56,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:49:58,910.910 INFO    ] ================================================
[2026-06-27 07:49:58,925.925 INFO    ] Launching Daemon at Sat Jun 27 07:49:58 IST 2026
[2026-06-27 07:49:58,937.937 INFO    ] ================================================
[2026-06-27 07:49:59,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:49:59
[2026-06-27 07:49:59,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:49:59,729.729 INFO    ] Initializing speech engine...
[2026-06-27 07:49:59,739.739 INFO    ] 2026-06-27 07:49:59
[2026-06-27 07:49:59,949.949 INFO    ] 2026-06-27 07:49:59
[2026-06-27 07:49:59,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:50:00,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:50:00,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:50:00,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:50:00,365.365 INFO    ] time= 27/06/2026 07:50:00
[2026-06-27 07:50:00,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:50:00,394.394 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:50:00,465.465 INFO    ] No existing commands found in stream
[2026-06-27 07:50:05,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:50:05,482.482 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-27 07:50:09,109.109 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 07:50:09,110.110 INFO    ] Checking for system updates...
[2026-06-27 07:50:09,131.131 INFO    ] 200
[2026-06-27 07:50:09,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:50:09,162.162 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:50:09,164.164 INFO    ] No update needed
[2026-06-27 07:50:09,165.165 INFO    ] Checking for camera pi updates...
[2026-06-27 07:50:09,185.185 INFO    ] 200
[2026-06-27 07:50:09,186.186 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:50:09,213.213 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:50:09,246.246 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:50:09,247.247 INFO    ] No camera update needed
[2026-06-27 07:50:09,249.249 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:50:09,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:50:09,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:50:09,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:50:11,294.294 INFO    ] ================================================
[2026-06-27 07:50:11,309.309 INFO    ] Launching Daemon at Sat Jun 27 07:50:11 IST 2026
[2026-06-27 07:50:11,320.320 INFO    ] ================================================
[2026-06-27 07:50:11,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:50:11
[2026-06-27 07:50:11,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:50:12,113.113 INFO    ] Initializing speech engine...
[2026-06-27 07:50:12,125.125 INFO    ] 2026-06-27 07:50:12
[2026-06-27 07:50:12,332.332 INFO    ] 2026-06-27 07:50:12
[2026-06-27 07:50:12,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:50:12,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:50:12,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:50:12,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:50:12,759.759 INFO    ] time= 27/06/2026 07:50:12
[2026-06-27 07:50:12,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:50:12,788.788 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:50:12,857.857 INFO    ] No existing commands found in stream
[2026-06-27 07:50:17,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:50:17,874.874 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-27 07:50:20,622.622 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 07:50:20,624.624 INFO    ] Checking for system updates...
[2026-06-27 07:50:20,645.645 INFO    ] 200
[2026-06-27 07:50:20,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:50:20,676.676 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:50:20,678.678 INFO    ] No update needed
[2026-06-27 07:50:20,679.679 INFO    ] Checking for camera pi updates...
[2026-06-27 07:50:20,700.700 INFO    ] 200
[2026-06-27 07:50:20,701.701 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:50:20,724.724 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:50:20,761.761 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:50:20,763.763 INFO    ] No camera update needed
[2026-06-27 07:50:20,764.764 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:50:20,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:50:20,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:50:20,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:50:22,809.809 INFO    ] ================================================
[2026-06-27 07:50:22,825.825 INFO    ] Launching Daemon at Sat Jun 27 07:50:22 IST 2026
[2026-06-27 07:50:22,836.836 INFO    ] ================================================
[2026-06-27 07:50:23,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:50:23
[2026-06-27 07:50:23,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:50:23,704.704 INFO    ] Initializing speech engine...
[2026-06-27 07:50:23,715.715 INFO    ] 2026-06-27 07:50:23
[2026-06-27 07:50:23,925.925 INFO    ] 2026-06-27 07:50:23
[2026-06-27 07:50:23,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:50:24,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:50:24,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:50:24,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:50:24,353.353 INFO    ] time= 27/06/2026 07:50:24
[2026-06-27 07:50:24,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:50:24,384.384 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:50:24,475.475 INFO    ] No existing commands found in stream
[2026-06-27 07:50:29,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:50:29,488.488 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-27 07:50:32,965.965 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:50:32,966.966 INFO    ] Checking for system updates...
[2026-06-27 07:50:32,987.987 INFO    ] 200
[2026-06-27 07:50:32,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:50:33,019.019 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:50:33,020.020 INFO    ] No update needed
[2026-06-27 07:50:33,022.022 INFO    ] Checking for camera pi updates...
[2026-06-27 07:50:33,044.044 INFO    ] 200
[2026-06-27 07:50:33,046.046 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:50:33,071.071 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:50:33,092.092 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:50:33,094.094 INFO    ] No camera update needed
[2026-06-27 07:50:33,096.096 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:50:33,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:50:33,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:50:33,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:50:35,141.141 INFO    ] ================================================
[2026-06-27 07:50:35,157.157 INFO    ] Launching Daemon at Sat Jun 27 07:50:35 IST 2026
[2026-06-27 07:50:35,168.168 INFO    ] ================================================
[2026-06-27 07:50:35,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:50:35
[2026-06-27 07:50:35,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:50:35,981.981 INFO    ] Initializing speech engine...
[2026-06-27 07:50:35,993.993 INFO    ] 2026-06-27 07:50:35
[2026-06-27 07:50:36,200.200 INFO    ] 2026-06-27 07:50:36
[2026-06-27 07:50:36,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:50:36,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:50:36,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:50:36,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:50:36,619.619 INFO    ] time= 27/06/2026 07:50:36
[2026-06-27 07:50:36,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:50:36,649.649 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:50:36,716.716 INFO    ] No existing commands found in stream
[2026-06-27 07:50:41,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:50:41,728.728 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-27 07:50:45,509.509 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:50:45,511.511 INFO    ] Checking for system updates...
[2026-06-27 07:50:45,533.533 INFO    ] 200
[2026-06-27 07:50:45,534.534 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:50:45,567.567 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:50:45,568.568 INFO    ] No update needed
[2026-06-27 07:50:45,569.569 INFO    ] Checking for camera pi updates...
[2026-06-27 07:50:45,590.590 INFO    ] 200
[2026-06-27 07:50:45,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:50:45,616.616 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:50:45,768.768 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:50:45,770.770 INFO    ] No camera update needed
[2026-06-27 07:50:45,771.771 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:50:45,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:50:45,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:50:45,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:50:47,817.817 INFO    ] ================================================
[2026-06-27 07:50:47,832.832 INFO    ] Launching Daemon at Sat Jun 27 07:50:47 IST 2026
[2026-06-27 07:50:47,843.843 INFO    ] ================================================
[2026-06-27 07:50:48,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:50:48
[2026-06-27 07:50:48,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:50:48,687.687 INFO    ] Initializing speech engine...
[2026-06-27 07:50:48,692.692 INFO    ] 2026-06-27 07:50:48
[2026-06-27 07:50:48,898.898 INFO    ] 2026-06-27 07:50:48
[2026-06-27 07:50:48,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:50:49,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:50:49,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:50:49,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:50:49,316.316 INFO    ] time= 27/06/2026 07:50:49
[2026-06-27 07:50:49,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:50:49,346.346 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:50:49,413.413 INFO    ] No existing commands found in stream
[2026-06-27 07:50:54,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:50:54,425.425 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-27 07:50:57,594.594 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:50:57,595.595 INFO    ] Checking for system updates...
[2026-06-27 07:50:57,618.618 INFO    ] 200
[2026-06-27 07:50:57,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:50:57,654.654 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:50:57,656.656 INFO    ] No update needed
[2026-06-27 07:50:57,657.657 INFO    ] Checking for camera pi updates...
[2026-06-27 07:50:57,679.679 INFO    ] 200
[2026-06-27 07:50:57,681.681 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:50:57,708.708 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:50:57,741.741 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:50:57,742.742 INFO    ] No camera update needed
[2026-06-27 07:50:57,744.744 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:50:57,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:50:57,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:50:57,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:50:59,790.790 INFO    ] ================================================
[2026-06-27 07:50:59,805.805 INFO    ] Launching Daemon at Sat Jun 27 07:50:59 IST 2026
[2026-06-27 07:50:59,816.816 INFO    ] ================================================
[2026-06-27 07:51:00,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:51:00
[2026-06-27 07:51:00,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:51:00,695.695 INFO    ] Initializing speech engine...
[2026-06-27 07:51:00,705.705 INFO    ] 2026-06-27 07:51:00
[2026-06-27 07:51:00,908.908 INFO    ] 2026-06-27 07:51:00
[2026-06-27 07:51:00,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:51:01,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:51:01,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:51:01,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:51:01,335.335 INFO    ] time= 27/06/2026 07:51:01
[2026-06-27 07:51:01,360.360 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:51:01,366.366 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:51:01,434.434 INFO    ] No existing commands found in stream
[2026-06-27 07:51:06,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:51:06,447.447 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-27 07:51:07,437.437 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 07:51:07,439.439 INFO    ] Checking for system updates...
[2026-06-27 07:51:07,460.460 INFO    ] 200
[2026-06-27 07:51:07,462.462 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:51:07,492.492 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:51:07,494.494 INFO    ] No update needed
[2026-06-27 07:51:07,495.495 INFO    ] Checking for camera pi updates...
[2026-06-27 07:51:07,517.517 INFO    ] 200
[2026-06-27 07:51:07,518.518 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:51:07,547.547 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:51:07,587.587 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:51:07,589.589 INFO    ] No camera update needed
[2026-06-27 07:51:07,590.590 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:51:07,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:51:07,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:51:07,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:51:09,630.630 INFO    ] ================================================
[2026-06-27 07:51:09,645.645 INFO    ] Launching Daemon at Sat Jun 27 07:51:09 IST 2026
[2026-06-27 07:51:09,656.656 INFO    ] ================================================
[2026-06-27 07:51:10,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:51:10
[2026-06-27 07:51:10,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:51:10,498.498 INFO    ] Initializing speech engine...
[2026-06-27 07:51:10,511.511 INFO    ] 2026-06-27 07:51:10
[2026-06-27 07:51:10,726.726 INFO    ] 2026-06-27 07:51:10
[2026-06-27 07:51:10,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:51:10,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:51:10,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:51:11,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:51:11,158.158 INFO    ] time= 27/06/2026 07:51:11
[2026-06-27 07:51:11,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:51:11,181.181 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:51:11,249.249 INFO    ] No existing commands found in stream
[2026-06-27 07:51:16,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:51:16,262.262 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-27 07:51:20,299.299 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:51:20,301.301 INFO    ] Checking for system updates...
[2026-06-27 07:51:20,323.323 INFO    ] 200
[2026-06-27 07:51:20,325.325 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:51:20,361.361 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:51:20,363.363 INFO    ] No update needed
[2026-06-27 07:51:20,365.365 INFO    ] Checking for camera pi updates...
[2026-06-27 07:51:20,384.384 INFO    ] 200
[2026-06-27 07:51:20,386.386 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:51:20,411.411 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:51:20,460.460 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:51:20,462.462 INFO    ] No camera update needed
[2026-06-27 07:51:20,463.463 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:51:20,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:51:20,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:51:20,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:51:22,510.510 INFO    ] ================================================
[2026-06-27 07:51:22,527.527 INFO    ] Launching Daemon at Sat Jun 27 07:51:22 IST 2026
[2026-06-27 07:51:22,538.538 INFO    ] ================================================
[2026-06-27 07:51:22,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:51:22
[2026-06-27 07:51:23,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:51:23,351.351 INFO    ] Initializing speech engine...
[2026-06-27 07:51:23,356.356 INFO    ] 2026-06-27 07:51:23
[2026-06-27 07:51:23,563.563 INFO    ] 2026-06-27 07:51:23
[2026-06-27 07:51:23,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:51:23,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:51:23,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:51:23,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:51:23,981.981 INFO    ] time= 27/06/2026 07:51:23
[2026-06-27 07:51:24,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:51:24,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:51:24,076.076 INFO    ] No existing commands found in stream
[2026-06-27 07:51:29,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:51:29,088.088 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-27 07:51:29,917.917 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 07:51:29,919.919 INFO    ] Checking for system updates...
[2026-06-27 07:51:29,940.940 INFO    ] 200
[2026-06-27 07:51:29,941.941 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:51:29,972.972 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:51:29,974.974 INFO    ] No update needed
[2026-06-27 07:51:29,976.976 INFO    ] Checking for camera pi updates...
[2026-06-27 07:51:29,995.995 INFO    ] 200
[2026-06-27 07:51:29,997.997 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:51:30,020.020 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:51:30,063.063 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:51:30,064.064 INFO    ] No camera update needed
[2026-06-27 07:51:30,066.066 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:51:30,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:51:30,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:51:30,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:51:32,113.113 INFO    ] ================================================
[2026-06-27 07:51:32,135.135 INFO    ] Launching Daemon at Sat Jun 27 07:51:32 IST 2026
[2026-06-27 07:51:32,146.146 INFO    ] ================================================
[2026-06-27 07:51:32,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:51:32
[2026-06-27 07:51:32,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:51:33,012.012 INFO    ] Initializing speech engine...
[2026-06-27 07:51:33,021.021 INFO    ] 2026-06-27 07:51:33
[2026-06-27 07:51:33,247.247 INFO    ] 2026-06-27 07:51:33
[2026-06-27 07:51:33,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:51:33,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:51:33,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:51:33,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:51:33,686.686 INFO    ] time= 27/06/2026 07:51:33
[2026-06-27 07:51:33,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:51:33,734.734 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:51:33,836.836 INFO    ] No existing commands found in stream
[2026-06-27 07:51:38,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:51:38,848.848 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-27 07:51:42,011.011 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:51:42,013.013 INFO    ] Checking for system updates...
[2026-06-27 07:51:42,035.035 INFO    ] 200
[2026-06-27 07:51:42,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:51:42,066.066 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:51:42,068.068 INFO    ] No update needed
[2026-06-27 07:51:42,069.069 INFO    ] Checking for camera pi updates...
[2026-06-27 07:51:42,088.088 INFO    ] 200
[2026-06-27 07:51:42,089.089 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:51:42,113.113 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:51:42,153.153 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:51:42,154.154 INFO    ] No camera update needed
[2026-06-27 07:51:42,156.156 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:51:42,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:51:42,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:51:42,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:51:44,201.201 INFO    ] ================================================
[2026-06-27 07:51:44,216.216 INFO    ] Launching Daemon at Sat Jun 27 07:51:44 IST 2026
[2026-06-27 07:51:44,227.227 INFO    ] ================================================
[2026-06-27 07:51:44,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:51:44
[2026-06-27 07:51:44,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:51:45,044.044 INFO    ] Initializing speech engine...
[2026-06-27 07:51:45,049.049 INFO    ] 2026-06-27 07:51:45
[2026-06-27 07:51:45,261.261 INFO    ] 2026-06-27 07:51:45
[2026-06-27 07:51:45,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:51:45,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:51:45,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:51:45,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:51:45,708.708 INFO    ] time= 27/06/2026 07:51:45
[2026-06-27 07:51:45,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:51:45,770.770 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:51:45,846.846 INFO    ] No existing commands found in stream
[2026-06-27 07:51:50,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:51:50,860.860 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-27 07:51:54,715.715 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 07:51:54,717.717 INFO    ] Checking for system updates...
[2026-06-27 07:51:54,738.738 INFO    ] 200
[2026-06-27 07:51:54,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:51:54,769.769 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:51:54,771.771 INFO    ] No update needed
[2026-06-27 07:51:54,772.772 INFO    ] Checking for camera pi updates...
[2026-06-27 07:51:54,792.792 INFO    ] 200
[2026-06-27 07:51:54,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:51:54,817.817 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:51:54,840.840 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:51:54,842.842 INFO    ] No camera update needed
[2026-06-27 07:51:54,843.843 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:51:54,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:51:54,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:51:54,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:51:56,890.890 INFO    ] ================================================
[2026-06-27 07:51:56,906.906 INFO    ] Launching Daemon at Sat Jun 27 07:51:56 IST 2026
[2026-06-27 07:51:56,916.916 INFO    ] ================================================
[2026-06-27 07:51:57,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:51:57
[2026-06-27 07:51:57,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:51:57,739.739 INFO    ] Initializing speech engine...
[2026-06-27 07:51:57,750.750 INFO    ] 2026-06-27 07:51:57
[2026-06-27 07:51:57,956.956 INFO    ] 2026-06-27 07:51:57
[2026-06-27 07:51:57,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:51:58,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:51:58,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:51:58,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:51:58,378.378 INFO    ] time= 27/06/2026 07:51:58
[2026-06-27 07:51:58,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:51:58,406.406 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:51:58,472.472 INFO    ] No existing commands found in stream
[2026-06-27 07:52:03,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:52:03,483.483 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-27 07:52:07,824.824 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 07:52:07,825.825 INFO    ] Checking for system updates...
[2026-06-27 07:52:07,849.849 INFO    ] 200
[2026-06-27 07:52:07,850.850 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:52:07,880.880 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:52:07,882.882 INFO    ] No update needed
[2026-06-27 07:52:07,883.883 INFO    ] Checking for camera pi updates...
[2026-06-27 07:52:07,903.903 INFO    ] 200
[2026-06-27 07:52:07,904.904 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:52:07,928.928 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:52:07,974.974 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:52:07,975.975 INFO    ] No camera update needed
[2026-06-27 07:52:07,977.977 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:52:07,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:52:07,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:52:07,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:52:10,025.025 INFO    ] ================================================
[2026-06-27 07:52:10,040.040 INFO    ] Launching Daemon at Sat Jun 27 07:52:10 IST 2026
[2026-06-27 07:52:10,051.051 INFO    ] ================================================
[2026-06-27 07:52:10,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:52:10
[2026-06-27 07:52:10,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:52:10,853.853 INFO    ] Initializing speech engine...
[2026-06-27 07:52:10,858.858 INFO    ] 2026-06-27 07:52:10
[2026-06-27 07:52:11,062.062 INFO    ] 2026-06-27 07:52:11
[2026-06-27 07:52:11,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:52:11,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:52:11,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:52:11,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:52:11,482.482 INFO    ] time= 27/06/2026 07:52:11
[2026-06-27 07:52:11,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:52:11,509.509 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:52:11,573.573 INFO    ] No existing commands found in stream
[2026-06-27 07:52:16,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:52:16,587.587 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-27 07:52:18,703.703 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:52:18,705.705 INFO    ] Checking for system updates...
[2026-06-27 07:52:18,725.725 INFO    ] 200
[2026-06-27 07:52:18,727.727 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:52:18,757.757 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:52:18,758.758 INFO    ] No update needed
[2026-06-27 07:52:18,759.759 INFO    ] Checking for camera pi updates...
[2026-06-27 07:52:18,779.779 INFO    ] 200
[2026-06-27 07:52:18,780.780 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:52:18,803.803 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:52:18,849.849 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:52:18,850.850 INFO    ] No camera update needed
[2026-06-27 07:52:18,852.852 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:52:18,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:52:18,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:52:18,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:52:20,898.898 INFO    ] ================================================
[2026-06-27 07:52:20,913.913 INFO    ] Launching Daemon at Sat Jun 27 07:52:20 IST 2026
[2026-06-27 07:52:20,924.924 INFO    ] ================================================
[2026-06-27 07:52:21,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:52:21
[2026-06-27 07:52:21,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:52:21,747.747 INFO    ] Initializing speech engine...
[2026-06-27 07:52:21,752.752 INFO    ] 2026-06-27 07:52:21
[2026-06-27 07:52:21,957.957 INFO    ] 2026-06-27 07:52:21
[2026-06-27 07:52:21,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:52:22,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:52:22,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:52:22,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:52:22,392.392 INFO    ] time= 27/06/2026 07:52:22
[2026-06-27 07:52:22,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:52:22,439.439 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:52:22,519.519 INFO    ] No existing commands found in stream
[2026-06-27 07:52:27,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:52:27,536.536 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-27 07:52:29,424.424 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 07:52:29,425.425 INFO    ] Checking for system updates...
[2026-06-27 07:52:29,447.447 INFO    ] 200
[2026-06-27 07:52:29,448.448 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:52:29,482.482 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:52:29,483.483 INFO    ] No update needed
[2026-06-27 07:52:29,485.485 INFO    ] Checking for camera pi updates...
[2026-06-27 07:52:29,507.507 INFO    ] 200
[2026-06-27 07:52:29,508.508 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:52:29,534.534 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:52:29,571.571 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:52:29,572.572 INFO    ] No camera update needed
[2026-06-27 07:52:29,573.573 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:52:29,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:52:29,578.578 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:52:29,581.581 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:52:31,613.613 INFO    ] ================================================
[2026-06-27 07:52:31,622.622 INFO    ] Launching Daemon at Sat Jun 27 07:52:31 IST 2026
[2026-06-27 07:52:31,629.629 INFO    ] ================================================
[2026-06-27 07:52:31,977.977 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:52:31
[2026-06-27 07:52:32,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:52:32,487.487 INFO    ] Initializing speech engine...
[2026-06-27 07:52:32,494.494 INFO    ] 2026-06-27 07:52:32
[2026-06-27 07:52:32,713.713 INFO    ] 2026-06-27 07:52:32
[2026-06-27 07:52:32,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:52:32,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:52:32,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:52:33,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:52:33,143.143 INFO    ] time= 27/06/2026 07:52:33
[2026-06-27 07:52:33,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:52:33,174.174 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:52:33,241.241 INFO    ] No existing commands found in stream
[2026-06-27 07:52:38,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:52:38,254.254 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-27 07:52:42,479.479 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 07:52:42,481.481 INFO    ] Checking for system updates...
[2026-06-27 07:52:42,501.501 INFO    ] 200
[2026-06-27 07:52:42,502.502 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:52:42,533.533 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:52:42,534.534 INFO    ] No update needed
[2026-06-27 07:52:42,536.536 INFO    ] Checking for camera pi updates...
[2026-06-27 07:52:42,555.555 INFO    ] 200
[2026-06-27 07:52:42,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:52:42,580.580 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:52:42,624.624 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:52:42,625.625 INFO    ] No camera update needed
[2026-06-27 07:52:42,626.626 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:52:42,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:52:42,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:52:42,633.633 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:52:44,671.671 INFO    ] ================================================
[2026-06-27 07:52:44,686.686 INFO    ] Launching Daemon at Sat Jun 27 07:52:44 IST 2026
[2026-06-27 07:52:44,698.698 INFO    ] ================================================
[2026-06-27 07:52:45,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:52:45
[2026-06-27 07:52:45,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:52:45,499.499 INFO    ] Initializing speech engine...
[2026-06-27 07:52:45,514.514 INFO    ] 2026-06-27 07:52:45
[2026-06-27 07:52:45,720.720 INFO    ] 2026-06-27 07:52:45
[2026-06-27 07:52:45,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:52:45,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:52:45,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:52:46,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:52:46,148.148 INFO    ] time= 27/06/2026 07:52:46
[2026-06-27 07:52:46,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:52:46,178.178 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:52:46,246.246 INFO    ] No existing commands found in stream
[2026-06-27 07:52:51,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:52:51,263.263 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-27 07:52:54,380.380 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:52:54,381.381 INFO    ] Checking for system updates...
[2026-06-27 07:52:54,402.402 INFO    ] 200
[2026-06-27 07:52:54,403.403 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:52:54,438.438 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:52:54,439.439 INFO    ] No update needed
[2026-06-27 07:52:54,440.440 INFO    ] Checking for camera pi updates...
[2026-06-27 07:52:54,460.460 INFO    ] 200
[2026-06-27 07:52:54,461.461 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:52:54,484.484 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:52:54,620.620 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:52:54,621.621 INFO    ] No camera update needed
[2026-06-27 07:52:54,623.623 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:52:54,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:52:54,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:52:54,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:52:56,670.670 INFO    ] ================================================
[2026-06-27 07:52:56,686.686 INFO    ] Launching Daemon at Sat Jun 27 07:52:56 IST 2026
[2026-06-27 07:52:56,696.696 INFO    ] ================================================
[2026-06-27 07:52:57,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:52:57
[2026-06-27 07:52:57,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:52:57,487.487 INFO    ] Initializing speech engine...
[2026-06-27 07:52:57,499.499 INFO    ] 2026-06-27 07:52:57
[2026-06-27 07:52:57,706.706 INFO    ] 2026-06-27 07:52:57
[2026-06-27 07:52:57,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:52:57,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:52:57,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:52:58,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:52:58,148.148 INFO    ] time= 27/06/2026 07:52:58
[2026-06-27 07:52:58,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:52:58,156.156 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:52:58,222.222 INFO    ] No existing commands found in stream
[2026-06-27 07:53:03,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:53:03,234.234 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-27 07:53:06,220.220 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:53:06,221.221 INFO    ] Checking for system updates...
[2026-06-27 07:53:06,242.242 INFO    ] 200
[2026-06-27 07:53:06,244.244 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:53:06,277.277 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:53:06,278.278 INFO    ] No update needed
[2026-06-27 07:53:06,280.280 INFO    ] Checking for camera pi updates...
[2026-06-27 07:53:06,299.299 INFO    ] 200
[2026-06-27 07:53:06,300.300 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:53:06,324.324 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:53:06,366.366 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:53:06,368.368 INFO    ] No camera update needed
[2026-06-27 07:53:06,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:53:06,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:53:06,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:53:06,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:53:08,415.415 INFO    ] ================================================
[2026-06-27 07:53:08,431.431 INFO    ] Launching Daemon at Sat Jun 27 07:53:08 IST 2026
[2026-06-27 07:53:08,442.442 INFO    ] ================================================
[2026-06-27 07:53:08,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:53:08
[2026-06-27 07:53:09,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:53:09,330.330 INFO    ] Initializing speech engine...
[2026-06-27 07:53:09,335.335 INFO    ] 2026-06-27 07:53:09
[2026-06-27 07:53:09,548.548 INFO    ] 2026-06-27 07:53:09
[2026-06-27 07:53:09,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:53:09,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:53:09,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:53:09,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:53:09,994.994 INFO    ] time= 27/06/2026 07:53:09
[2026-06-27 07:53:09,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:53:10,001.001 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:53:10,069.069 INFO    ] No existing commands found in stream
[2026-06-27 07:53:15,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:53:15,082.082 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-27 07:53:16,522.522 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 07:53:16,524.524 INFO    ] Checking for system updates...
[2026-06-27 07:53:16,545.545 INFO    ] 200
[2026-06-27 07:53:16,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:53:16,576.576 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:53:16,578.578 INFO    ] No update needed
[2026-06-27 07:53:16,579.579 INFO    ] Checking for camera pi updates...
[2026-06-27 07:53:16,599.599 INFO    ] 200
[2026-06-27 07:53:16,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:53:16,625.625 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:53:16,662.662 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:53:16,663.663 INFO    ] No camera update needed
[2026-06-27 07:53:16,665.665 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:53:16,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:53:16,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:53:16,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:53:18,711.711 INFO    ] ================================================
[2026-06-27 07:53:18,727.727 INFO    ] Launching Daemon at Sat Jun 27 07:53:18 IST 2026
[2026-06-27 07:53:18,737.737 INFO    ] ================================================
[2026-06-27 07:53:19,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:53:19
[2026-06-27 07:53:19,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:53:19,543.543 INFO    ] Initializing speech engine...
[2026-06-27 07:53:19,548.548 INFO    ] 2026-06-27 07:53:19
[2026-06-27 07:53:19,755.755 INFO    ] 2026-06-27 07:53:19
[2026-06-27 07:53:19,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:53:19,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:53:19,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:53:20,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:53:20,180.180 INFO    ] time= 27/06/2026 07:53:20
[2026-06-27 07:53:20,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:53:20,208.208 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:53:20,274.274 INFO    ] No existing commands found in stream
[2026-06-27 07:53:25,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:53:25,288.288 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-27 07:53:26,710.710 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 07:53:26,712.712 INFO    ] Checking for system updates...
[2026-06-27 07:53:26,732.732 INFO    ] 200
[2026-06-27 07:53:26,734.734 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:53:26,765.765 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:53:26,766.766 INFO    ] No update needed
[2026-06-27 07:53:26,768.768 INFO    ] Checking for camera pi updates...
[2026-06-27 07:53:26,787.787 INFO    ] 200
[2026-06-27 07:53:26,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:53:26,814.814 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:53:26,850.850 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:53:26,852.852 INFO    ] No camera update needed
[2026-06-27 07:53:26,853.853 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:53:26,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:53:26,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:53:26,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:53:28,919.919 INFO    ] ================================================
[2026-06-27 07:53:28,935.935 INFO    ] Launching Daemon at Sat Jun 27 07:53:28 IST 2026
[2026-06-27 07:53:28,945.945 INFO    ] ================================================
[2026-06-27 07:53:29,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:53:29
[2026-06-27 07:53:29,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:53:29,747.747 INFO    ] Initializing speech engine...
[2026-06-27 07:53:29,750.750 INFO    ] 2026-06-27 07:53:29
[2026-06-27 07:53:29,980.980 INFO    ] 2026-06-27 07:53:29
[2026-06-27 07:53:30,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:53:30,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:53:30,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:53:30,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:53:30,405.405 INFO    ] time= 27/06/2026 07:53:30
[2026-06-27 07:53:30,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:53:30,456.456 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:53:30,532.532 INFO    ] No existing commands found in stream
[2026-06-27 07:53:35,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:53:35,544.544 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-27 07:53:39,569.569 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:53:39,571.571 INFO    ] Checking for system updates...
[2026-06-27 07:53:39,592.592 INFO    ] 200
[2026-06-27 07:53:39,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:53:39,624.624 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:53:39,626.626 INFO    ] No update needed
[2026-06-27 07:53:39,627.627 INFO    ] Checking for camera pi updates...
[2026-06-27 07:53:39,647.647 INFO    ] 200
[2026-06-27 07:53:39,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:53:39,672.672 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:53:39,719.719 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:53:39,721.721 INFO    ] No camera update needed
[2026-06-27 07:53:39,722.722 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:53:39,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:53:39,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:53:39,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:53:41,767.767 INFO    ] ================================================
[2026-06-27 07:53:41,783.783 INFO    ] Launching Daemon at Sat Jun 27 07:53:41 IST 2026
[2026-06-27 07:53:41,794.794 INFO    ] ================================================
[2026-06-27 07:53:42,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:53:42
[2026-06-27 07:53:42,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:53:42,610.610 INFO    ] Initializing speech engine...
[2026-06-27 07:53:42,615.615 INFO    ] 2026-06-27 07:53:42
[2026-06-27 07:53:42,809.809 INFO    ] 2026-06-27 07:53:42
[2026-06-27 07:53:42,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:53:43,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:53:43,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:53:43,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:53:43,182.182 INFO    ] time= 27/06/2026 07:53:43
[2026-06-27 07:53:43,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:53:43,215.215 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:53:43,307.307 INFO    ] No existing commands found in stream
[2026-06-27 07:53:48,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:53:48,323.323 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-27 07:53:50,892.892 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 07:53:50,894.894 INFO    ] Checking for system updates...
[2026-06-27 07:53:50,915.915 INFO    ] 200
[2026-06-27 07:53:50,916.916 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:53:50,946.946 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:53:50,948.948 INFO    ] No update needed
[2026-06-27 07:53:50,949.949 INFO    ] Checking for camera pi updates...
[2026-06-27 07:53:50,970.970 INFO    ] 200
[2026-06-27 07:53:50,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:53:50,995.995 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:53:51,035.035 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:53:51,037.037 INFO    ] No camera update needed
[2026-06-27 07:53:51,038.038 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:53:51,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:53:51,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:53:51,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:53:53,083.083 INFO    ] ================================================
[2026-06-27 07:53:53,098.098 INFO    ] Launching Daemon at Sat Jun 27 07:53:53 IST 2026
[2026-06-27 07:53:53,109.109 INFO    ] ================================================
[2026-06-27 07:53:53,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:53:53
[2026-06-27 07:53:53,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:53:53,983.983 INFO    ] Initializing speech engine...
[2026-06-27 07:53:53,990.990 INFO    ] 2026-06-27 07:53:53
[2026-06-27 07:53:54,192.192 INFO    ] 2026-06-27 07:53:54
[2026-06-27 07:53:54,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:53:54,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:53:54,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:53:54,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:53:54,593.593 INFO    ] time= 27/06/2026 07:53:54
[2026-06-27 07:53:54,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:53:54,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:53:54,708.708 INFO    ] No existing commands found in stream
[2026-06-27 07:53:59,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:53:59,719.719 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-27 07:54:01,462.462 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 07:54:01,464.464 INFO    ] Checking for system updates...
[2026-06-27 07:54:01,485.485 INFO    ] 200
[2026-06-27 07:54:01,487.487 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:54:01,518.518 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:54:01,519.519 INFO    ] No update needed
[2026-06-27 07:54:01,520.520 INFO    ] Checking for camera pi updates...
[2026-06-27 07:54:01,542.542 INFO    ] 200
[2026-06-27 07:54:01,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:54:01,567.567 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:54:01,603.603 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:54:01,605.605 INFO    ] No camera update needed
[2026-06-27 07:54:01,606.606 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:54:01,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:54:01,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:54:01,613.613 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:54:03,645.645 INFO    ] ================================================
[2026-06-27 07:54:03,660.660 INFO    ] Launching Daemon at Sat Jun 27 07:54:03 IST 2026
[2026-06-27 07:54:03,671.671 INFO    ] ================================================
[2026-06-27 07:54:04,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:54:04
[2026-06-27 07:54:04,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:54:04,467.467 INFO    ] Initializing speech engine...
[2026-06-27 07:54:04,475.475 INFO    ] 2026-06-27 07:54:04
[2026-06-27 07:54:04,689.689 INFO    ] 2026-06-27 07:54:04
[2026-06-27 07:54:04,719.719 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:54:04,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:54:04,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:54:05,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:54:05,113.113 INFO    ] time= 27/06/2026 07:54:05
[2026-06-27 07:54:05,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:54:05,174.174 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:54:05,249.249 INFO    ] No existing commands found in stream
[2026-06-27 07:54:10,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:54:10,262.262 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-27 07:54:11,631.631 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 07:54:11,633.633 INFO    ] Checking for system updates...
[2026-06-27 07:54:11,654.654 INFO    ] 200
[2026-06-27 07:54:11,655.655 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:54:11,685.685 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:54:11,687.687 INFO    ] No update needed
[2026-06-27 07:54:11,688.688 INFO    ] Checking for camera pi updates...
[2026-06-27 07:54:11,708.708 INFO    ] 200
[2026-06-27 07:54:11,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:54:11,732.732 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:54:11,772.772 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:54:11,773.773 INFO    ] No camera update needed
[2026-06-27 07:54:11,775.775 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:54:11,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:54:11,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:54:11,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:54:13,819.819 INFO    ] ================================================
[2026-06-27 07:54:13,835.835 INFO    ] Launching Daemon at Sat Jun 27 07:54:13 IST 2026
[2026-06-27 07:54:13,845.845 INFO    ] ================================================
[2026-06-27 07:54:14,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:54:14
[2026-06-27 07:54:14,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:54:14,634.634 INFO    ] Initializing speech engine...
[2026-06-27 07:54:14,639.639 INFO    ] 2026-06-27 07:54:14
[2026-06-27 07:54:14,842.842 INFO    ] 2026-06-27 07:54:14
[2026-06-27 07:54:14,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:54:15,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:54:15,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:54:15,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:54:15,262.262 INFO    ] time= 27/06/2026 07:54:15
[2026-06-27 07:54:15,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:54:15,289.289 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:54:15,354.354 INFO    ] No existing commands found in stream
[2026-06-27 07:54:20,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:54:20,368.368 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-27 07:54:22,937.937 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 07:54:22,938.938 INFO    ] Checking for system updates...
[2026-06-27 07:54:22,959.959 INFO    ] 200
[2026-06-27 07:54:22,960.960 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:54:22,990.990 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:54:22,992.992 INFO    ] No update needed
[2026-06-27 07:54:22,993.993 INFO    ] Checking for camera pi updates...
[2026-06-27 07:54:23,014.014 INFO    ] 200
[2026-06-27 07:54:23,015.015 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:54:23,038.038 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:54:23,078.078 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:54:23,079.079 INFO    ] No camera update needed
[2026-06-27 07:54:23,080.080 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:54:23,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:54:23,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:54:23,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:54:25,130.130 INFO    ] ================================================
[2026-06-27 07:54:25,145.145 INFO    ] Launching Daemon at Sat Jun 27 07:54:25 IST 2026
[2026-06-27 07:54:25,156.156 INFO    ] ================================================
[2026-06-27 07:54:25,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:54:25
[2026-06-27 07:54:25,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:54:25,946.946 INFO    ] Initializing speech engine...
[2026-06-27 07:54:25,959.959 INFO    ] 2026-06-27 07:54:25
[2026-06-27 07:54:26,166.166 INFO    ] 2026-06-27 07:54:26
[2026-06-27 07:54:26,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:54:26,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:54:26,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:54:26,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:54:26,582.582 INFO    ] time= 27/06/2026 07:54:26
[2026-06-27 07:54:26,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:54:26,615.615 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:54:26,681.681 INFO    ] No existing commands found in stream
[2026-06-27 07:54:31,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:54:31,694.694 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-27 07:54:36,090.090 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:54:36,092.092 INFO    ] Checking for system updates...
[2026-06-27 07:54:36,112.112 INFO    ] 200
[2026-06-27 07:54:36,114.114 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:54:36,144.144 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:54:36,146.146 INFO    ] No update needed
[2026-06-27 07:54:36,147.147 INFO    ] Checking for camera pi updates...
[2026-06-27 07:54:36,167.167 INFO    ] 200
[2026-06-27 07:54:36,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:54:36,193.193 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:54:36,230.230 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:54:36,232.232 INFO    ] No camera update needed
[2026-06-27 07:54:36,233.233 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:54:36,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:54:36,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:54:36,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:54:38,279.279 INFO    ] ================================================
[2026-06-27 07:54:38,294.294 INFO    ] Launching Daemon at Sat Jun 27 07:54:38 IST 2026
[2026-06-27 07:54:38,305.305 INFO    ] ================================================
[2026-06-27 07:54:38,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:54:38
[2026-06-27 07:54:38,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:54:39,117.117 INFO    ] Initializing speech engine...
[2026-06-27 07:54:39,122.122 INFO    ] 2026-06-27 07:54:39
[2026-06-27 07:54:39,340.340 INFO    ] 2026-06-27 07:54:39
[2026-06-27 07:54:39,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:54:39,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:54:39,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:54:39,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:54:39,750.750 INFO    ] time= 27/06/2026 07:54:39
[2026-06-27 07:54:39,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:54:39,795.795 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:54:39,861.861 INFO    ] No existing commands found in stream
[2026-06-27 07:54:44,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:54:44,875.875 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-27 07:54:46,383.383 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:54:46,385.385 INFO    ] Checking for system updates...
[2026-06-27 07:54:46,407.407 INFO    ] 200
[2026-06-27 07:54:46,408.408 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:54:46,441.441 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:54:46,442.442 INFO    ] No update needed
[2026-06-27 07:54:46,443.443 INFO    ] Checking for camera pi updates...
[2026-06-27 07:54:46,463.463 INFO    ] 200
[2026-06-27 07:54:46,464.464 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:54:46,490.490 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:54:46,528.528 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:54:46,530.530 INFO    ] No camera update needed
[2026-06-27 07:54:46,531.531 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:54:46,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:54:46,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:54:46,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:54:48,577.577 INFO    ] ================================================
[2026-06-27 07:54:48,593.593 INFO    ] Launching Daemon at Sat Jun 27 07:54:48 IST 2026
[2026-06-27 07:54:48,605.605 INFO    ] ================================================
[2026-06-27 07:54:48,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:54:48
[2026-06-27 07:54:49,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:54:49,452.452 INFO    ] Initializing speech engine...
[2026-06-27 07:54:49,462.462 INFO    ] 2026-06-27 07:54:49
[2026-06-27 07:54:49,677.677 INFO    ] 2026-06-27 07:54:49
[2026-06-27 07:54:49,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:54:49,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:54:49,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:54:50,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:54:50,106.106 INFO    ] time= 27/06/2026 07:54:50
[2026-06-27 07:54:50,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:54:50,135.135 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:54:50,203.203 INFO    ] No existing commands found in stream
[2026-06-27 07:54:55,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:54:55,221.221 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-27 07:54:58,931.931 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 07:54:58,933.933 INFO    ] Checking for system updates...
[2026-06-27 07:54:58,955.955 INFO    ] 200
[2026-06-27 07:54:58,956.956 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:54:58,989.989 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:54:58,990.990 INFO    ] No update needed
[2026-06-27 07:54:58,992.992 INFO    ] Checking for camera pi updates...
[2026-06-27 07:54:59,014.014 INFO    ] 200
[2026-06-27 07:54:59,016.016 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:54:59,041.041 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:54:59,188.188 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:54:59,189.189 INFO    ] No camera update needed
[2026-06-27 07:54:59,191.191 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:54:59,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:54:59,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:54:59,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:55:01,237.237 INFO    ] ================================================
[2026-06-27 07:55:01,252.252 INFO    ] Launching Daemon at Sat Jun 27 07:55:01 IST 2026
[2026-06-27 07:55:01,264.264 INFO    ] ================================================
[2026-06-27 07:55:01,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:55:01
[2026-06-27 07:55:02,095.095 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:55:02,537.537 INFO    ] Initializing speech engine...
[2026-06-27 07:55:02,550.550 INFO    ] 2026-06-27 07:55:02
[2026-06-27 07:55:02,835.835 INFO    ] 2026-06-27 07:55:02
[2026-06-27 07:55:02,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:55:03,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:55:03,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:55:03,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:55:03,269.269 INFO    ] time= 27/06/2026 07:55:03
[2026-06-27 07:55:03,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:55:03,368.368 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:55:03,421.421 INFO    ] No existing commands found in stream
[2026-06-27 07:55:08,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:55:08,435.435 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-27 07:55:12,244.244 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:55:12,246.246 INFO    ] Checking for system updates...
[2026-06-27 07:55:12,267.267 INFO    ] 200
[2026-06-27 07:55:12,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:55:12,300.300 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:55:12,301.301 INFO    ] No update needed
[2026-06-27 07:55:12,302.302 INFO    ] Checking for camera pi updates...
[2026-06-27 07:55:12,322.322 INFO    ] 200
[2026-06-27 07:55:12,324.324 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:55:12,348.348 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:55:12,385.385 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:55:12,387.387 INFO    ] No camera update needed
[2026-06-27 07:55:12,388.388 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:55:12,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:55:12,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:55:12,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:55:14,434.434 INFO    ] ================================================
[2026-06-27 07:55:14,451.451 INFO    ] Launching Daemon at Sat Jun 27 07:55:14 IST 2026
[2026-06-27 07:55:14,463.463 INFO    ] ================================================
[2026-06-27 07:55:14,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:55:14
[2026-06-27 07:55:15,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:55:15,257.257 INFO    ] Initializing speech engine...
[2026-06-27 07:55:15,267.267 INFO    ] 2026-06-27 07:55:15
[2026-06-27 07:55:15,469.469 INFO    ] 2026-06-27 07:55:15
[2026-06-27 07:55:15,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:55:15,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:55:15,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:55:15,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:55:15,880.880 INFO    ] time= 27/06/2026 07:55:15
[2026-06-27 07:55:15,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:55:15,914.914 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:55:15,985.985 INFO    ] No existing commands found in stream
[2026-06-27 07:55:20,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:55:20,997.997 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-27 07:55:23,957.957 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 07:55:23,958.958 INFO    ] Checking for system updates...
[2026-06-27 07:55:23,979.979 INFO    ] 200
[2026-06-27 07:55:23,980.980 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:55:24,013.013 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:55:24,014.014 INFO    ] No update needed
[2026-06-27 07:55:24,016.016 INFO    ] Checking for camera pi updates...
[2026-06-27 07:55:24,035.035 INFO    ] 200
[2026-06-27 07:55:24,037.037 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:55:24,062.062 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:55:24,109.109 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:55:24,110.110 INFO    ] No camera update needed
[2026-06-27 07:55:24,111.111 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:55:24,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:55:24,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:55:24,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:55:26,160.160 INFO    ] ================================================
[2026-06-27 07:55:26,175.175 INFO    ] Launching Daemon at Sat Jun 27 07:55:26 IST 2026
[2026-06-27 07:55:26,186.186 INFO    ] ================================================
[2026-06-27 07:55:26,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:55:26
[2026-06-27 07:55:26,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:55:27,040.040 INFO    ] Initializing speech engine...
[2026-06-27 07:55:27,048.048 INFO    ] 2026-06-27 07:55:27
[2026-06-27 07:55:27,260.260 INFO    ] 2026-06-27 07:55:27
[2026-06-27 07:55:27,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:55:27,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:55:27,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:55:27,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:55:27,689.689 INFO    ] time= 27/06/2026 07:55:27
[2026-06-27 07:55:27,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:55:27,720.720 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:55:27,788.788 INFO    ] No existing commands found in stream
[2026-06-27 07:55:32,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:55:32,797.797 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-27 07:55:36,105.105 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 07:55:36,107.107 INFO    ] Checking for system updates...
[2026-06-27 07:55:36,130.130 INFO    ] 200
[2026-06-27 07:55:36,131.131 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:55:36,163.163 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:55:36,165.165 INFO    ] No update needed
[2026-06-27 07:55:36,166.166 INFO    ] Checking for camera pi updates...
[2026-06-27 07:55:36,186.186 INFO    ] 200
[2026-06-27 07:55:36,187.187 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:55:36,210.210 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:55:36,250.250 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:55:36,251.251 INFO    ] No camera update needed
[2026-06-27 07:55:36,252.252 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:55:36,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:55:36,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:55:36,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:55:38,298.298 INFO    ] ================================================
[2026-06-27 07:55:38,313.313 INFO    ] Launching Daemon at Sat Jun 27 07:55:38 IST 2026
[2026-06-27 07:55:38,324.324 INFO    ] ================================================
[2026-06-27 07:55:38,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:55:38
[2026-06-27 07:55:38,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:55:39,111.111 INFO    ] Initializing speech engine...
[2026-06-27 07:55:39,116.116 INFO    ] 2026-06-27 07:55:39
[2026-06-27 07:55:39,332.332 INFO    ] 2026-06-27 07:55:39
[2026-06-27 07:55:39,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:55:39,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:55:39,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:55:39,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:55:39,772.772 INFO    ] time= 27/06/2026 07:55:39
[2026-06-27 07:55:39,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:55:39,780.780 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:55:39,850.850 INFO    ] No existing commands found in stream
[2026-06-27 07:55:44,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:55:44,862.862 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-27 07:55:48,411.411 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 07:55:48,412.412 INFO    ] Checking for system updates...
[2026-06-27 07:55:48,435.435 INFO    ] 200
[2026-06-27 07:55:48,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:55:48,474.474 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:55:48,476.476 INFO    ] No update needed
[2026-06-27 07:55:48,477.477 INFO    ] Checking for camera pi updates...
[2026-06-27 07:55:48,497.497 INFO    ] 200
[2026-06-27 07:55:48,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:55:48,524.524 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:55:48,560.560 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:55:48,561.561 INFO    ] No camera update needed
[2026-06-27 07:55:48,562.562 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:55:48,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:55:48,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:55:48,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:55:50,608.608 INFO    ] ================================================
[2026-06-27 07:55:50,624.624 INFO    ] Launching Daemon at Sat Jun 27 07:55:50 IST 2026
[2026-06-27 07:55:50,635.635 INFO    ] ================================================
[2026-06-27 07:55:50,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:55:50
[2026-06-27 07:55:51,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:55:51,444.444 INFO    ] Initializing speech engine...
[2026-06-27 07:55:51,449.449 INFO    ] 2026-06-27 07:55:51
[2026-06-27 07:55:51,657.657 INFO    ] 2026-06-27 07:55:51
[2026-06-27 07:55:51,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:55:51,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:55:51,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:55:52,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:55:52,103.103 INFO    ] time= 27/06/2026 07:55:52
[2026-06-27 07:55:52,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:55:52,164.164 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:55:52,241.241 INFO    ] No existing commands found in stream
[2026-06-27 07:55:57,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:55:57,255.255 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-27 07:55:59,388.388 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 07:55:59,389.389 INFO    ] Checking for system updates...
[2026-06-27 07:55:59,410.410 INFO    ] 200
[2026-06-27 07:55:59,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:55:59,444.444 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:55:59,446.446 INFO    ] No update needed
[2026-06-27 07:55:59,447.447 INFO    ] Checking for camera pi updates...
[2026-06-27 07:55:59,468.468 INFO    ] 200
[2026-06-27 07:55:59,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:55:59,494.494 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:55:59,535.535 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:55:59,536.536 INFO    ] No camera update needed
[2026-06-27 07:55:59,537.537 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:55:59,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:55:59,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:55:59,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:56:01,586.586 INFO    ] ================================================
[2026-06-27 07:56:01,603.603 INFO    ] Launching Daemon at Sat Jun 27 07:56:01 IST 2026
[2026-06-27 07:56:01,615.615 INFO    ] ================================================
[2026-06-27 07:56:01,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:56:01
[2026-06-27 07:56:02,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:56:02,523.523 INFO    ] Initializing speech engine...
[2026-06-27 07:56:02,527.527 INFO    ] 2026-06-27 07:56:02
[2026-06-27 07:56:02,735.735 INFO    ] 2026-06-27 07:56:02
[2026-06-27 07:56:02,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:56:02,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:56:02,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:56:03,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:56:03,193.193 INFO    ] time= 27/06/2026 07:56:03
[2026-06-27 07:56:03,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:56:03,238.238 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:56:03,304.304 INFO    ] No existing commands found in stream
[2026-06-27 07:56:08,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:56:08,317.317 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-27 07:56:10,422.422 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:56:10,423.423 INFO    ] Checking for system updates...
[2026-06-27 07:56:10,444.444 INFO    ] 200
[2026-06-27 07:56:10,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:56:10,476.476 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:56:10,477.477 INFO    ] No update needed
[2026-06-27 07:56:10,478.478 INFO    ] Checking for camera pi updates...
[2026-06-27 07:56:10,498.498 INFO    ] 200
[2026-06-27 07:56:10,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:56:10,523.523 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:56:10,569.569 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:56:10,570.570 INFO    ] No camera update needed
[2026-06-27 07:56:10,572.572 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:56:10,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:56:10,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:56:10,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:56:12,618.618 INFO    ] ================================================
[2026-06-27 07:56:12,634.634 INFO    ] Launching Daemon at Sat Jun 27 07:56:12 IST 2026
[2026-06-27 07:56:12,645.645 INFO    ] ================================================
[2026-06-27 07:56:12,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:56:12
[2026-06-27 07:56:13,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:56:13,444.444 INFO    ] Initializing speech engine...
[2026-06-27 07:56:13,449.449 INFO    ] 2026-06-27 07:56:13
[2026-06-27 07:56:13,660.660 INFO    ] 2026-06-27 07:56:13
[2026-06-27 07:56:13,690.690 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:56:13,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:56:13,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:56:14,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:56:14,080.080 INFO    ] time= 27/06/2026 07:56:14
[2026-06-27 07:56:14,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:56:14,116.116 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:56:14,187.187 INFO    ] No existing commands found in stream
[2026-06-27 07:56:19,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:56:19,200.200 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-27 07:56:23,401.401 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:56:23,402.402 INFO    ] Checking for system updates...
[2026-06-27 07:56:23,427.427 INFO    ] 200
[2026-06-27 07:56:23,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:56:23,459.459 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:56:23,460.460 INFO    ] No update needed
[2026-06-27 07:56:23,462.462 INFO    ] Checking for camera pi updates...
[2026-06-27 07:56:23,482.482 INFO    ] 200
[2026-06-27 07:56:23,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:56:23,510.510 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:56:23,547.547 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:56:23,549.549 INFO    ] No camera update needed
[2026-06-27 07:56:23,550.550 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:56:23,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:56:23,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:56:23,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:56:25,633.633 INFO    ] ================================================
[2026-06-27 07:56:25,648.648 INFO    ] Launching Daemon at Sat Jun 27 07:56:25 IST 2026
[2026-06-27 07:56:25,659.659 INFO    ] ================================================
[2026-06-27 07:56:26,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:56:26
[2026-06-27 07:56:26,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:56:26,513.513 INFO    ] Initializing speech engine...
[2026-06-27 07:56:26,517.517 INFO    ] 2026-06-27 07:56:26
[2026-06-27 07:56:26,727.727 INFO    ] 2026-06-27 07:56:26
[2026-06-27 07:56:26,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:56:26,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:56:26,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:56:27,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:56:27,105.105 INFO    ] time= 27/06/2026 07:56:27
[2026-06-27 07:56:27,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:56:27,155.155 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:56:27,250.250 INFO    ] No existing commands found in stream
[2026-06-27 07:56:32,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:56:32,256.256 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-27 07:56:35,100.100 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:56:35,102.102 INFO    ] Checking for system updates...
[2026-06-27 07:56:35,126.126 INFO    ] 200
[2026-06-27 07:56:35,127.127 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:56:35,158.158 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:56:35,159.159 INFO    ] No update needed
[2026-06-27 07:56:35,161.161 INFO    ] Checking for camera pi updates...
[2026-06-27 07:56:35,180.180 INFO    ] 200
[2026-06-27 07:56:35,182.182 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:56:35,206.206 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:56:35,243.243 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:56:35,245.245 INFO    ] No camera update needed
[2026-06-27 07:56:35,246.246 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:56:35,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:56:35,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:56:35,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:56:37,294.294 INFO    ] ================================================
[2026-06-27 07:56:37,309.309 INFO    ] Launching Daemon at Sat Jun 27 07:56:37 IST 2026
[2026-06-27 07:56:37,320.320 INFO    ] ================================================
[2026-06-27 07:56:37,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:56:37
[2026-06-27 07:56:37,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:56:38,095.095 INFO    ] Initializing speech engine...
[2026-06-27 07:56:38,102.102 INFO    ] 2026-06-27 07:56:38
[2026-06-27 07:56:38,317.317 INFO    ] 2026-06-27 07:56:38
[2026-06-27 07:56:38,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:56:38,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:56:38,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:56:38,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:56:38,737.737 INFO    ] time= 27/06/2026 07:56:38
[2026-06-27 07:56:38,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:56:38,771.771 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:56:38,839.839 INFO    ] No existing commands found in stream
[2026-06-27 07:56:43,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:56:43,849.849 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-27 07:56:47,862.862 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:56:47,863.863 INFO    ] Checking for system updates...
[2026-06-27 07:56:47,884.884 INFO    ] 200
[2026-06-27 07:56:47,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:56:47,919.919 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:56:47,920.920 INFO    ] No update needed
[2026-06-27 07:56:47,921.921 INFO    ] Checking for camera pi updates...
[2026-06-27 07:56:47,941.941 INFO    ] 200
[2026-06-27 07:56:47,942.942 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:56:47,966.966 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:56:48,006.006 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:56:48,007.007 INFO    ] No camera update needed
[2026-06-27 07:56:48,008.008 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:56:48,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:56:48,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:56:48,015.015 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:56:50,053.053 INFO    ] ================================================
[2026-06-27 07:56:50,069.069 INFO    ] Launching Daemon at Sat Jun 27 07:56:50 IST 2026
[2026-06-27 07:56:50,080.080 INFO    ] ================================================
[2026-06-27 07:56:50,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:56:50
[2026-06-27 07:56:50,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:56:50,861.861 INFO    ] Initializing speech engine...
[2026-06-27 07:56:50,865.865 INFO    ] 2026-06-27 07:56:50
[2026-06-27 07:56:51,082.082 INFO    ] 2026-06-27 07:56:51
[2026-06-27 07:56:51,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:56:51,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:56:51,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:56:51,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:56:51,477.477 INFO    ] time= 27/06/2026 07:56:51
[2026-06-27 07:56:51,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:56:51,526.526 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:56:51,596.596 INFO    ] No existing commands found in stream
[2026-06-27 07:56:56,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:56:56,609.609 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-27 07:56:59,945.945 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 07:56:59,946.946 INFO    ] Checking for system updates...
[2026-06-27 07:56:59,969.969 INFO    ] 200
[2026-06-27 07:56:59,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:57:00,001.001 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:57:00,002.002 INFO    ] No update needed
[2026-06-27 07:57:00,003.003 INFO    ] Checking for camera pi updates...
[2026-06-27 07:57:00,024.024 INFO    ] 200
[2026-06-27 07:57:00,025.025 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:57:00,050.050 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:57:00,187.187 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:57:00,188.188 INFO    ] No camera update needed
[2026-06-27 07:57:00,189.189 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:57:00,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:57:00,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:57:00,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:57:02,230.230 INFO    ] ================================================
[2026-06-27 07:57:02,242.242 INFO    ] Launching Daemon at Sat Jun 27 07:57:02 IST 2026
[2026-06-27 07:57:02,250.250 INFO    ] ================================================
[2026-06-27 07:57:02,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:57:02
[2026-06-27 07:57:02,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:57:03,084.084 INFO    ] Initializing speech engine...
[2026-06-27 07:57:03,097.097 INFO    ] 2026-06-27 07:57:03
[2026-06-27 07:57:03,306.306 INFO    ] 2026-06-27 07:57:03
[2026-06-27 07:57:03,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:57:03,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:57:03,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:57:03,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:57:03,712.712 INFO    ] time= 27/06/2026 07:57:03
[2026-06-27 07:57:03,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:57:03,759.759 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:57:03,832.832 INFO    ] No existing commands found in stream
[2026-06-27 07:57:08,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:57:08,844.844 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-27 07:57:12,415.415 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 07:57:12,417.417 INFO    ] Checking for system updates...
[2026-06-27 07:57:12,439.439 INFO    ] 200
[2026-06-27 07:57:12,440.440 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:57:12,470.470 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:57:12,472.472 INFO    ] No update needed
[2026-06-27 07:57:12,473.473 INFO    ] Checking for camera pi updates...
[2026-06-27 07:57:12,493.493 INFO    ] 200
[2026-06-27 07:57:12,494.494 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:57:12,517.517 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:57:12,553.553 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:57:12,554.554 INFO    ] No camera update needed
[2026-06-27 07:57:12,555.555 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:57:12,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:57:12,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:57:12,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:57:14,602.602 INFO    ] ================================================
[2026-06-27 07:57:14,617.617 INFO    ] Launching Daemon at Sat Jun 27 07:57:14 IST 2026
[2026-06-27 07:57:14,628.628 INFO    ] ================================================
[2026-06-27 07:57:14,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:57:14
[2026-06-27 07:57:15,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:57:15,408.408 INFO    ] Initializing speech engine...
[2026-06-27 07:57:15,421.421 INFO    ] 2026-06-27 07:57:15
[2026-06-27 07:57:15,627.627 INFO    ] 2026-06-27 07:57:15
[2026-06-27 07:57:15,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:57:15,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:57:15,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:57:15,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:57:16,045.045 INFO    ] time= 27/06/2026 07:57:16
[2026-06-27 07:57:16,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:57:16,074.074 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:57:16,141.141 INFO    ] No existing commands found in stream
[2026-06-27 07:57:21,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:57:21,158.158 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-27 07:57:23,337.337 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:57:23,339.339 INFO    ] Checking for system updates...
[2026-06-27 07:57:23,360.360 INFO    ] 200
[2026-06-27 07:57:23,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:57:23,394.394 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:57:23,395.395 INFO    ] No update needed
[2026-06-27 07:57:23,396.396 INFO    ] Checking for camera pi updates...
[2026-06-27 07:57:23,416.416 INFO    ] 200
[2026-06-27 07:57:23,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:57:23,441.441 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:57:23,477.477 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:57:23,479.479 INFO    ] No camera update needed
[2026-06-27 07:57:23,480.480 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:57:23,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:57:23,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:57:23,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:57:25,528.528 INFO    ] ================================================
[2026-06-27 07:57:25,544.544 INFO    ] Launching Daemon at Sat Jun 27 07:57:25 IST 2026
[2026-06-27 07:57:25,554.554 INFO    ] ================================================
[2026-06-27 07:57:25,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:57:25
[2026-06-27 07:57:26,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:57:26,372.372 INFO    ] Initializing speech engine...
[2026-06-27 07:57:26,379.379 INFO    ] 2026-06-27 07:57:26
[2026-06-27 07:57:26,593.593 INFO    ] 2026-06-27 07:57:26
[2026-06-27 07:57:26,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:57:26,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:57:26,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:57:27,000.000 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:57:27,024.024 INFO    ] time= 27/06/2026 07:57:27
[2026-06-27 07:57:27,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:57:27,046.046 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:57:27,113.113 INFO    ] No existing commands found in stream
[2026-06-27 07:57:32,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:57:32,123.123 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-27 07:57:35,841.841 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:57:35,842.842 INFO    ] Checking for system updates...
[2026-06-27 07:57:35,865.865 INFO    ] 200
[2026-06-27 07:57:35,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:57:35,900.900 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:57:35,901.901 INFO    ] No update needed
[2026-06-27 07:57:35,902.902 INFO    ] Checking for camera pi updates...
[2026-06-27 07:57:35,922.922 INFO    ] 200
[2026-06-27 07:57:35,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:57:35,948.948 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:57:35,987.987 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:57:35,988.988 INFO    ] No camera update needed
[2026-06-27 07:57:35,989.989 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:57:35,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:57:35,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:57:35,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:57:38,037.037 INFO    ] ================================================
[2026-06-27 07:57:38,052.052 INFO    ] Launching Daemon at Sat Jun 27 07:57:38 IST 2026
[2026-06-27 07:57:38,063.063 INFO    ] ================================================
[2026-06-27 07:57:38,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:57:38
[2026-06-27 07:57:38,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:57:38,877.877 INFO    ] Initializing speech engine...
[2026-06-27 07:57:38,881.881 INFO    ] 2026-06-27 07:57:38
[2026-06-27 07:57:39,088.088 INFO    ] 2026-06-27 07:57:39
[2026-06-27 07:57:39,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:57:39,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:57:39,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:57:39,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:57:39,514.514 INFO    ] time= 27/06/2026 07:57:39
[2026-06-27 07:57:39,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:57:39,543.543 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:57:39,609.609 INFO    ] No existing commands found in stream
[2026-06-27 07:57:44,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:57:44,622.622 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-27 07:57:48,424.424 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:57:48,425.425 INFO    ] Checking for system updates...
[2026-06-27 07:57:48,446.446 INFO    ] 200
[2026-06-27 07:57:48,447.447 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:57:48,477.477 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:57:48,479.479 INFO    ] No update needed
[2026-06-27 07:57:48,480.480 INFO    ] Checking for camera pi updates...
[2026-06-27 07:57:48,500.500 INFO    ] 200
[2026-06-27 07:57:48,501.501 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:57:48,528.528 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:57:48,568.568 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:57:48,569.569 INFO    ] No camera update needed
[2026-06-27 07:57:48,571.571 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:57:48,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:57:48,575.575 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:57:48,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:57:50,619.619 INFO    ] ================================================
[2026-06-27 07:57:50,634.634 INFO    ] Launching Daemon at Sat Jun 27 07:57:50 IST 2026
[2026-06-27 07:57:50,645.645 INFO    ] ================================================
[2026-06-27 07:57:51,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:57:51
[2026-06-27 07:57:51,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:57:51,511.511 INFO    ] Initializing speech engine...
[2026-06-27 07:57:51,517.517 INFO    ] 2026-06-27 07:57:51
[2026-06-27 07:57:51,724.724 INFO    ] 2026-06-27 07:57:51
[2026-06-27 07:57:51,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:57:51,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:57:51,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:57:52,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:57:52,164.164 INFO    ] time= 27/06/2026 07:57:52
[2026-06-27 07:57:52,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:57:52,171.171 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:57:52,238.238 INFO    ] No existing commands found in stream
[2026-06-27 07:57:57,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:57:57,250.250 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-27 07:58:00,118.118 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 07:58:00,120.120 INFO    ] Checking for system updates...
[2026-06-27 07:58:00,141.141 INFO    ] 200
[2026-06-27 07:58:00,142.142 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:58:00,172.172 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:58:00,173.173 INFO    ] No update needed
[2026-06-27 07:58:00,175.175 INFO    ] Checking for camera pi updates...
[2026-06-27 07:58:00,196.196 INFO    ] 200
[2026-06-27 07:58:00,197.197 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:58:00,223.223 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:58:00,264.264 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:58:00,265.265 INFO    ] No camera update needed
[2026-06-27 07:58:00,267.267 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:58:00,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:58:00,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:58:00,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:58:02,311.311 INFO    ] ================================================
[2026-06-27 07:58:02,320.320 INFO    ] Launching Daemon at Sat Jun 27 07:58:02 IST 2026
[2026-06-27 07:58:02,326.326 INFO    ] ================================================
[2026-06-27 07:58:02,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:58:02
[2026-06-27 07:58:03,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:58:03,185.185 INFO    ] Initializing speech engine...
[2026-06-27 07:58:03,200.200 INFO    ] 2026-06-27 07:58:03
[2026-06-27 07:58:03,411.411 INFO    ] 2026-06-27 07:58:03
[2026-06-27 07:58:03,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:58:03,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:58:03,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:58:03,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:58:03,836.836 INFO    ] time= 27/06/2026 07:58:03
[2026-06-27 07:58:03,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:58:03,867.867 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:58:03,935.935 INFO    ] No existing commands found in stream
[2026-06-27 07:58:08,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:58:08,948.948 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-27 07:58:11,481.481 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:58:11,482.482 INFO    ] Checking for system updates...
[2026-06-27 07:58:11,504.504 INFO    ] 200
[2026-06-27 07:58:11,506.506 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:58:11,537.537 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:58:11,538.538 INFO    ] No update needed
[2026-06-27 07:58:11,539.539 INFO    ] Checking for camera pi updates...
[2026-06-27 07:58:11,559.559 INFO    ] 200
[2026-06-27 07:58:11,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:58:11,585.585 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:58:11,626.626 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:58:11,627.627 INFO    ] No camera update needed
[2026-06-27 07:58:11,629.629 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:58:11,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:58:11,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:58:11,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:58:13,674.674 INFO    ] ================================================
[2026-06-27 07:58:13,690.690 INFO    ] Launching Daemon at Sat Jun 27 07:58:13 IST 2026
[2026-06-27 07:58:13,700.700 INFO    ] ================================================
[2026-06-27 07:58:14,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:58:14
[2026-06-27 07:58:14,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:58:14,512.512 INFO    ] Initializing speech engine...
[2026-06-27 07:58:14,517.517 INFO    ] 2026-06-27 07:58:14
[2026-06-27 07:58:14,723.723 INFO    ] 2026-06-27 07:58:14
[2026-06-27 07:58:14,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:58:14,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:58:14,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:58:15,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:58:15,145.145 INFO    ] time= 27/06/2026 07:58:15
[2026-06-27 07:58:15,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:58:15,175.175 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:58:15,243.243 INFO    ] No existing commands found in stream
[2026-06-27 07:58:20,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:58:20,260.260 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-27 07:58:21,003.003 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 07:58:21,004.004 INFO    ] Checking for system updates...
[2026-06-27 07:58:21,025.025 INFO    ] 200
[2026-06-27 07:58:21,027.027 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:58:21,057.057 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:58:21,059.059 INFO    ] No update needed
[2026-06-27 07:58:21,060.060 INFO    ] Checking for camera pi updates...
[2026-06-27 07:58:21,080.080 INFO    ] 200
[2026-06-27 07:58:21,081.081 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:58:21,104.104 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:58:21,145.145 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:58:21,146.146 INFO    ] No camera update needed
[2026-06-27 07:58:21,147.147 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:58:21,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:58:21,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:58:21,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:58:23,194.194 INFO    ] ================================================
[2026-06-27 07:58:23,209.209 INFO    ] Launching Daemon at Sat Jun 27 07:58:23 IST 2026
[2026-06-27 07:58:23,220.220 INFO    ] ================================================
[2026-06-27 07:58:23,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:58:23
[2026-06-27 07:58:23,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:58:24,011.011 INFO    ] Initializing speech engine...
[2026-06-27 07:58:24,020.020 INFO    ] 2026-06-27 07:58:24
[2026-06-27 07:58:24,227.227 INFO    ] 2026-06-27 07:58:24
[2026-06-27 07:58:24,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:58:24,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:58:24,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:58:24,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:58:24,636.636 INFO    ] time= 27/06/2026 07:58:24
[2026-06-27 07:58:24,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:58:24,676.676 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:58:24,748.748 INFO    ] No existing commands found in stream
[2026-06-27 07:58:29,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:58:29,760.760 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-27 07:58:31,728.728 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:58:31,730.730 INFO    ] Checking for system updates...
[2026-06-27 07:58:31,754.754 INFO    ] 200
[2026-06-27 07:58:31,756.756 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:58:31,794.794 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:58:31,795.795 INFO    ] No update needed
[2026-06-27 07:58:31,797.797 INFO    ] Checking for camera pi updates...
[2026-06-27 07:58:31,822.822 INFO    ] 200
[2026-06-27 07:58:31,824.824 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:58:31,856.856 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:58:31,882.882 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:58:31,884.884 INFO    ] No camera update needed
[2026-06-27 07:58:31,886.886 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:58:31,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:58:31,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:58:31,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:58:33,932.932 INFO    ] ================================================
[2026-06-27 07:58:33,947.947 INFO    ] Launching Daemon at Sat Jun 27 07:58:33 IST 2026
[2026-06-27 07:58:33,958.958 INFO    ] ================================================
[2026-06-27 07:58:34,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:58:34
[2026-06-27 07:58:34,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:58:34,759.759 INFO    ] Initializing speech engine...
[2026-06-27 07:58:34,762.762 INFO    ] 2026-06-27 07:58:34
[2026-06-27 07:58:34,955.955 INFO    ] 2026-06-27 07:58:34
[2026-06-27 07:58:35,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:58:35,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:58:35,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:58:35,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:58:35,406.406 INFO    ] time= 27/06/2026 07:58:35
[2026-06-27 07:58:35,444.444 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:58:35,446.446 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:58:35,518.518 INFO    ] No existing commands found in stream
[2026-06-27 07:58:40,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:58:40,532.532 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-27 07:58:42,681.681 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 07:58:42,683.683 INFO    ] Checking for system updates...
[2026-06-27 07:58:42,704.704 INFO    ] 200
[2026-06-27 07:58:42,705.705 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:58:42,736.736 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:58:42,737.737 INFO    ] No update needed
[2026-06-27 07:58:42,738.738 INFO    ] Checking for camera pi updates...
[2026-06-27 07:58:42,758.758 INFO    ] 200
[2026-06-27 07:58:42,759.759 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:58:42,782.782 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:58:42,827.827 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:58:42,828.828 INFO    ] No camera update needed
[2026-06-27 07:58:42,829.829 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:58:42,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:58:42,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:58:42,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:58:44,876.876 INFO    ] ================================================
[2026-06-27 07:58:44,892.892 INFO    ] Launching Daemon at Sat Jun 27 07:58:44 IST 2026
[2026-06-27 07:58:44,903.903 INFO    ] ================================================
[2026-06-27 07:58:45,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:58:45
[2026-06-27 07:58:45,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:58:45,767.767 INFO    ] Initializing speech engine...
[2026-06-27 07:58:45,778.778 INFO    ] 2026-06-27 07:58:45
[2026-06-27 07:58:45,983.983 INFO    ] 2026-06-27 07:58:45
[2026-06-27 07:58:46,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:58:46,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:58:46,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:58:46,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:58:46,400.400 INFO    ] time= 27/06/2026 07:58:46
[2026-06-27 07:58:46,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:58:46,436.436 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:58:46,508.508 INFO    ] No existing commands found in stream
[2026-06-27 07:58:51,532.532 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:58:51,535.535 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-27 07:58:55,894.894 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 07:58:55,896.896 INFO    ] Checking for system updates...
[2026-06-27 07:58:55,917.917 INFO    ] 200
[2026-06-27 07:58:55,918.918 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:58:55,951.951 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:58:55,952.952 INFO    ] No update needed
[2026-06-27 07:58:55,954.954 INFO    ] Checking for camera pi updates...
[2026-06-27 07:58:55,973.973 INFO    ] 200
[2026-06-27 07:58:55,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:58:55,998.998 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:58:56,037.037 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:58:56,039.039 INFO    ] No camera update needed
[2026-06-27 07:58:56,040.040 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:58:56,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:58:56,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:58:56,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:58:58,086.086 INFO    ] ================================================
[2026-06-27 07:58:58,101.101 INFO    ] Launching Daemon at Sat Jun 27 07:58:58 IST 2026
[2026-06-27 07:58:58,111.111 INFO    ] ================================================
[2026-06-27 07:58:58,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:58:58
[2026-06-27 07:58:58,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:58:58,921.921 INFO    ] Initializing speech engine...
[2026-06-27 07:58:58,926.926 INFO    ] 2026-06-27 07:58:58
[2026-06-27 07:58:59,131.131 INFO    ] 2026-06-27 07:58:59
[2026-06-27 07:58:59,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:58:59,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:58:59,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:58:59,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:58:59,549.549 INFO    ] time= 27/06/2026 07:58:59
[2026-06-27 07:58:59,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:58:59,577.577 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:58:59,644.644 INFO    ] No existing commands found in stream
[2026-06-27 07:59:04,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:59:04,656.656 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-27 07:59:07,385.385 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:59:07,387.387 INFO    ] Checking for system updates...
[2026-06-27 07:59:07,407.407 INFO    ] 200
[2026-06-27 07:59:07,409.409 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:59:07,439.439 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:59:07,441.441 INFO    ] No update needed
[2026-06-27 07:59:07,442.442 INFO    ] Checking for camera pi updates...
[2026-06-27 07:59:07,461.461 INFO    ] 200
[2026-06-27 07:59:07,463.463 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:59:07,487.487 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:59:07,632.632 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:59:07,634.634 INFO    ] No camera update needed
[2026-06-27 07:59:07,635.635 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:59:07,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:59:07,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:59:07,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:59:09,681.681 INFO    ] ================================================
[2026-06-27 07:59:09,697.697 INFO    ] Launching Daemon at Sat Jun 27 07:59:09 IST 2026
[2026-06-27 07:59:09,708.708 INFO    ] ================================================
[2026-06-27 07:59:10,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:59:10
[2026-06-27 07:59:10,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:59:10,486.486 INFO    ] Initializing speech engine...
[2026-06-27 07:59:10,499.499 INFO    ] 2026-06-27 07:59:10
[2026-06-27 07:59:10,708.708 INFO    ] 2026-06-27 07:59:10
[2026-06-27 07:59:10,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:59:10,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:59:10,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:59:11,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:59:11,135.135 INFO    ] time= 27/06/2026 07:59:11
[2026-06-27 07:59:11,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:59:11,164.164 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:59:11,230.230 INFO    ] No existing commands found in stream
[2026-06-27 07:59:16,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:59:16,243.243 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-27 07:59:18,779.779 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:59:18,780.780 INFO    ] Checking for system updates...
[2026-06-27 07:59:18,802.802 INFO    ] 200
[2026-06-27 07:59:18,803.803 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:59:18,836.836 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:59:18,837.837 INFO    ] No update needed
[2026-06-27 07:59:18,839.839 INFO    ] Checking for camera pi updates...
[2026-06-27 07:59:18,858.858 INFO    ] 200
[2026-06-27 07:59:18,859.859 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:59:18,883.883 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:59:18,926.926 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:59:18,927.927 INFO    ] No camera update needed
[2026-06-27 07:59:18,929.929 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:59:18,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:59:18,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:59:18,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:59:20,975.975 INFO    ] ================================================
[2026-06-27 07:59:20,991.991 INFO    ] Launching Daemon at Sat Jun 27 07:59:20 IST 2026
[2026-06-27 07:59:21,002.002 INFO    ] ================================================
[2026-06-27 07:59:21,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:59:21
[2026-06-27 07:59:21,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:59:21,843.843 INFO    ] Initializing speech engine...
[2026-06-27 07:59:21,852.852 INFO    ] 2026-06-27 07:59:21
[2026-06-27 07:59:22,059.059 INFO    ] 2026-06-27 07:59:22
[2026-06-27 07:59:22,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:59:22,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:59:22,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:59:22,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:59:22,504.504 INFO    ] time= 27/06/2026 07:59:22
[2026-06-27 07:59:22,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:59:22,511.511 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:59:22,577.577 INFO    ] No existing commands found in stream
[2026-06-27 07:59:27,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:59:27,591.591 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-27 07:59:29,750.750 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 07:59:29,752.752 INFO    ] Checking for system updates...
[2026-06-27 07:59:29,773.773 INFO    ] 200
[2026-06-27 07:59:29,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:59:29,805.805 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:59:29,807.807 INFO    ] No update needed
[2026-06-27 07:59:29,808.808 INFO    ] Checking for camera pi updates...
[2026-06-27 07:59:29,827.827 INFO    ] 200
[2026-06-27 07:59:29,828.828 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:59:29,852.852 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:59:29,890.890 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:59:29,892.892 INFO    ] No camera update needed
[2026-06-27 07:59:29,893.893 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:59:29,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:59:29,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:59:29,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:59:31,931.931 INFO    ] ================================================
[2026-06-27 07:59:31,941.941 INFO    ] Launching Daemon at Sat Jun 27 07:59:31 IST 2026
[2026-06-27 07:59:31,948.948 INFO    ] ================================================
[2026-06-27 07:59:32,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:59:32
[2026-06-27 07:59:32,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:59:32,745.745 INFO    ] Initializing speech engine...
[2026-06-27 07:59:32,753.753 INFO    ] 2026-06-27 07:59:32
[2026-06-27 07:59:32,959.959 INFO    ] 2026-06-27 07:59:32
[2026-06-27 07:59:32,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:59:33,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:59:33,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:59:33,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:59:33,357.357 INFO    ] time= 27/06/2026 07:59:33
[2026-06-27 07:59:33,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:59:33,400.400 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:59:33,471.471 INFO    ] No existing commands found in stream
[2026-06-27 07:59:38,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:59:38,482.482 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-27 07:59:40,347.347 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 07:59:40,348.348 INFO    ] Checking for system updates...
[2026-06-27 07:59:40,370.370 INFO    ] 200
[2026-06-27 07:59:40,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:59:40,408.408 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:59:40,410.410 INFO    ] No update needed
[2026-06-27 07:59:40,411.411 INFO    ] Checking for camera pi updates...
[2026-06-27 07:59:40,430.430 INFO    ] 200
[2026-06-27 07:59:40,432.432 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:59:40,456.456 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:59:40,496.496 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 07:59:40,497.497 INFO    ] No camera update needed
[2026-06-27 07:59:40,498.498 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:59:40,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:59:40,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:59:40,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:59:42,546.546 INFO    ] ================================================
[2026-06-27 07:59:42,562.562 INFO    ] Launching Daemon at Sat Jun 27 07:59:42 IST 2026
[2026-06-27 07:59:42,574.574 INFO    ] ================================================
[2026-06-27 07:59:42,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:59:42
[2026-06-27 07:59:43,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:59:43,386.386 INFO    ] Initializing speech engine...
[2026-06-27 07:59:43,399.399 INFO    ] 2026-06-27 07:59:43
[2026-06-27 07:59:43,606.606 INFO    ] 2026-06-27 07:59:43
[2026-06-27 07:59:43,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:59:43,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:59:43,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:59:43,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:59:44,021.021 INFO    ] time= 27/06/2026 07:59:43
[2026-06-27 07:59:44,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:59:44,052.052 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:59:44,119.119 INFO    ] No existing commands found in stream
[2026-06-27 07:59:49,128.128 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:59:49,130.130 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-27 07:59:50,634.634 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 07:59:50,635.635 INFO    ] Checking for system updates...
[2026-06-27 07:59:50,657.657 INFO    ] 200
[2026-06-27 07:59:50,659.659 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:59:50,692.692 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:59:50,694.694 INFO    ] No update needed
[2026-06-27 07:59:50,695.695 INFO    ] Checking for camera pi updates...
[2026-06-27 07:59:50,715.715 INFO    ] 200
[2026-06-27 07:59:50,717.717 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 07:59:50,742.742 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 07:59:50,780.780 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 07:59:50,782.782 INFO    ] No camera update needed
[2026-06-27 07:59:50,783.783 INFO    ] Script finished. Safe exiting...
[2026-06-27 07:59:50,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 07:59:50,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 07:59:50,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 07:59:52,831.831 INFO    ] ================================================
[2026-06-27 07:59:52,847.847 INFO    ] Launching Daemon at Sat Jun 27 07:59:52 IST 2026
[2026-06-27 07:59:52,857.857 INFO    ] ================================================
[2026-06-27 07:59:53,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 07:59:53
[2026-06-27 07:59:53,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 07:59:53,639.639 INFO    ] Initializing speech engine...
[2026-06-27 07:59:53,649.649 INFO    ] 2026-06-27 07:59:53
[2026-06-27 07:59:53,854.854 INFO    ] 2026-06-27 07:59:53
[2026-06-27 07:59:53,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 07:59:54,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 07:59:54,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 07:59:54,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 07:59:54,267.267 INFO    ] time= 27/06/2026 07:59:54
[2026-06-27 07:59:54,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 07:59:54,305.305 INFO    ] Checking for existing commands in stream...
[2026-06-27 07:59:54,373.373 INFO    ] No existing commands found in stream
[2026-06-27 07:59:59,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 07:59:59,386.386 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-27 08:00:01,131.131 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 08:00:01,133.133 INFO    ] Checking for system updates...
[2026-06-27 08:00:01,155.155 INFO    ] 200
[2026-06-27 08:00:01,156.156 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:00:01,187.187 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:00:01,189.189 INFO    ] No update needed
[2026-06-27 08:00:01,190.190 INFO    ] Checking for camera pi updates...
[2026-06-27 08:00:01,210.210 INFO    ] 200
[2026-06-27 08:00:01,211.211 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:00:01,236.236 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:00:01,266.266 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:00:01,267.267 INFO    ] No camera update needed
[2026-06-27 08:00:01,269.269 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:00:01,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:00:01,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:00:01,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:00:03,336.336 INFO    ] ================================================
[2026-06-27 08:00:03,405.405 INFO    ] Launching Daemon at Sat Jun 27 08:00:03 IST 2026
[2026-06-27 08:00:03,435.435 INFO    ] ================================================
[2026-06-27 08:00:04,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:00:04
[2026-06-27 08:00:04,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:00:04,768.768 INFO    ] Initializing speech engine...
[2026-06-27 08:00:04,774.774 INFO    ] 2026-06-27 08:00:04
[2026-06-27 08:00:04,980.980 INFO    ] 2026-06-27 08:00:04
[2026-06-27 08:00:05,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:00:05,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:00:05,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:00:05,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:00:05,405.405 INFO    ] time= 27/06/2026 08:00:05
[2026-06-27 08:00:05,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:00:05,435.435 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:00:05,503.503 INFO    ] No existing commands found in stream
[2026-06-27 08:00:10,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:00:10,516.516 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-27 08:00:11,281.281 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:00:11,282.282 INFO    ] Checking for system updates...
[2026-06-27 08:00:11,303.303 INFO    ] 200
[2026-06-27 08:00:11,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:00:11,338.338 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:00:11,339.339 INFO    ] No update needed
[2026-06-27 08:00:11,340.340 INFO    ] Checking for camera pi updates...
[2026-06-27 08:00:11,360.360 INFO    ] 200
[2026-06-27 08:00:11,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:00:11,387.387 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:00:11,426.426 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:00:11,427.427 INFO    ] No camera update needed
[2026-06-27 08:00:11,428.428 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:00:11,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:00:11,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:00:11,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:00:13,476.476 INFO    ] ================================================
[2026-06-27 08:00:13,491.491 INFO    ] Launching Daemon at Sat Jun 27 08:00:13 IST 2026
[2026-06-27 08:00:13,502.502 INFO    ] ================================================
[2026-06-27 08:00:13,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:00:13
[2026-06-27 08:00:14,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:00:14,309.309 INFO    ] Initializing speech engine...
[2026-06-27 08:00:14,315.315 INFO    ] 2026-06-27 08:00:14
[2026-06-27 08:00:14,520.520 INFO    ] 2026-06-27 08:00:14
[2026-06-27 08:00:14,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:00:14,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:00:14,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:00:14,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:00:14,946.946 INFO    ] time= 27/06/2026 08:00:14
[2026-06-27 08:00:14,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:00:14,973.973 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:00:15,041.041 INFO    ] No existing commands found in stream
[2026-06-27 08:00:20,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:00:20,052.052 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-27 08:00:21,860.860 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:00:21,861.861 INFO    ] Checking for system updates...
[2026-06-27 08:00:21,882.882 INFO    ] 200
[2026-06-27 08:00:21,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:00:21,914.914 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:00:21,916.916 INFO    ] No update needed
[2026-06-27 08:00:21,917.917 INFO    ] Checking for camera pi updates...
[2026-06-27 08:00:21,939.939 INFO    ] 200
[2026-06-27 08:00:21,940.940 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:00:21,965.965 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:00:22,006.006 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:00:22,008.008 INFO    ] No camera update needed
[2026-06-27 08:00:22,009.009 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:00:22,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:00:22,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:00:22,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:00:24,055.055 INFO    ] ================================================
[2026-06-27 08:00:24,070.070 INFO    ] Launching Daemon at Sat Jun 27 08:00:24 IST 2026
[2026-06-27 08:00:24,082.082 INFO    ] ================================================
[2026-06-27 08:00:24,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:00:24
[2026-06-27 08:00:24,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:00:24,905.905 INFO    ] Initializing speech engine...
[2026-06-27 08:00:24,916.916 INFO    ] 2026-06-27 08:00:24
[2026-06-27 08:00:25,121.121 INFO    ] 2026-06-27 08:00:25
[2026-06-27 08:00:25,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:00:25,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:00:25,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:00:25,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:00:25,561.561 INFO    ] time= 27/06/2026 08:00:25
[2026-06-27 08:00:25,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:00:25,569.569 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:00:25,634.634 INFO    ] No existing commands found in stream
[2026-06-27 08:00:30,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:00:30,648.648 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-27 08:00:31,070.070 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 08:00:31,071.071 INFO    ] Checking for system updates...
[2026-06-27 08:00:31,092.092 INFO    ] 200
[2026-06-27 08:00:31,094.094 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:00:31,125.125 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:00:31,126.126 INFO    ] No update needed
[2026-06-27 08:00:31,128.128 INFO    ] Checking for camera pi updates...
[2026-06-27 08:00:31,148.148 INFO    ] 200
[2026-06-27 08:00:31,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:00:31,173.173 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:00:31,218.218 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:00:31,219.219 INFO    ] No camera update needed
[2026-06-27 08:00:31,220.220 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:00:31,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:00:31,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:00:31,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:00:33,252.252 INFO    ] ================================================
[2026-06-27 08:00:33,260.260 INFO    ] Launching Daemon at Sat Jun 27 08:00:33 IST 2026
[2026-06-27 08:00:33,266.266 INFO    ] ================================================
[2026-06-27 08:00:33,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:00:33
[2026-06-27 08:00:33,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:00:34,075.075 INFO    ] Initializing speech engine...
[2026-06-27 08:00:34,080.080 INFO    ] 2026-06-27 08:00:34
[2026-06-27 08:00:34,286.286 INFO    ] 2026-06-27 08:00:34
[2026-06-27 08:00:34,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:00:34,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:00:34,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:00:34,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:00:34,711.711 INFO    ] time= 27/06/2026 08:00:34
[2026-06-27 08:00:34,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:00:34,741.741 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:00:34,807.807 INFO    ] No existing commands found in stream
[2026-06-27 08:00:39,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:00:39,821.821 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-27 08:00:41,377.377 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 08:00:41,378.378 INFO    ] Checking for system updates...
[2026-06-27 08:00:41,400.400 INFO    ] 200
[2026-06-27 08:00:41,402.402 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:00:41,432.432 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:00:41,433.433 INFO    ] No update needed
[2026-06-27 08:00:41,435.435 INFO    ] Checking for camera pi updates...
[2026-06-27 08:00:41,454.454 INFO    ] 200
[2026-06-27 08:00:41,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:00:41,479.479 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:00:41,519.519 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:00:41,520.520 INFO    ] No camera update needed
[2026-06-27 08:00:41,521.521 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:00:41,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:00:41,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:00:41,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:00:43,559.559 INFO    ] ================================================
[2026-06-27 08:00:43,567.567 INFO    ] Launching Daemon at Sat Jun 27 08:00:43 IST 2026
[2026-06-27 08:00:43,573.573 INFO    ] ================================================
[2026-06-27 08:00:43,923.923 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:00:43
[2026-06-27 08:00:44,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:00:44,382.382 INFO    ] Initializing speech engine...
[2026-06-27 08:00:44,387.387 INFO    ] 2026-06-27 08:00:44
[2026-06-27 08:00:44,593.593 INFO    ] 2026-06-27 08:00:44
[2026-06-27 08:00:44,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:00:44,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:00:44,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:00:44,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:00:45,035.035 INFO    ] time= 27/06/2026 08:00:44
[2026-06-27 08:00:45,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:00:45,075.075 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:00:45,147.147 INFO    ] No existing commands found in stream
[2026-06-27 08:00:50,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:00:50,158.158 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-27 08:00:52,565.565 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 08:00:52,566.566 INFO    ] Checking for system updates...
[2026-06-27 08:00:52,590.590 INFO    ] 200
[2026-06-27 08:00:52,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:00:52,622.622 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:00:52,623.623 INFO    ] No update needed
[2026-06-27 08:00:52,625.625 INFO    ] Checking for camera pi updates...
[2026-06-27 08:00:52,645.645 INFO    ] 200
[2026-06-27 08:00:52,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:00:52,670.670 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:00:52,711.711 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:00:52,712.712 INFO    ] No camera update needed
[2026-06-27 08:00:52,713.713 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:00:52,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:00:52,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:00:52,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:00:54,758.758 INFO    ] ================================================
[2026-06-27 08:00:54,773.773 INFO    ] Launching Daemon at Sat Jun 27 08:00:54 IST 2026
[2026-06-27 08:00:54,784.784 INFO    ] ================================================
[2026-06-27 08:00:55,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:00:55
[2026-06-27 08:00:55,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:00:55,628.628 INFO    ] Initializing speech engine...
[2026-06-27 08:00:55,634.634 INFO    ] 2026-06-27 08:00:55
[2026-06-27 08:00:55,844.844 INFO    ] 2026-06-27 08:00:55
[2026-06-27 08:00:55,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:00:56,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:00:56,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:00:56,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:00:56,271.271 INFO    ] time= 27/06/2026 08:00:56
[2026-06-27 08:00:56,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:00:56,302.302 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:00:56,395.395 INFO    ] No existing commands found in stream
[2026-06-27 08:01:01,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:01:01,410.410 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-27 08:01:02,026.026 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 08:01:02,028.028 INFO    ] Checking for system updates...
[2026-06-27 08:01:02,055.055 INFO    ] 200
[2026-06-27 08:01:02,057.057 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:01:02,095.095 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:01:02,097.097 INFO    ] No update needed
[2026-06-27 08:01:02,099.099 INFO    ] Checking for camera pi updates...
[2026-06-27 08:01:02,125.125 INFO    ] 200
[2026-06-27 08:01:02,128.128 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:01:02,166.166 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:01:02,197.197 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:01:02,199.199 INFO    ] No camera update needed
[2026-06-27 08:01:02,201.201 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:01:02,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:01:02,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:01:02,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:01:04,254.254 INFO    ] ================================================
[2026-06-27 08:01:04,270.270 INFO    ] Launching Daemon at Sat Jun 27 08:01:04 IST 2026
[2026-06-27 08:01:04,281.281 INFO    ] ================================================
[2026-06-27 08:01:04,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:01:04
[2026-06-27 08:01:04,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:01:05,082.082 INFO    ] Initializing speech engine...
[2026-06-27 08:01:05,094.094 INFO    ] 2026-06-27 08:01:05
[2026-06-27 08:01:05,301.301 INFO    ] 2026-06-27 08:01:05
[2026-06-27 08:01:05,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:01:05,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:01:05,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:01:05,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:01:05,724.724 INFO    ] time= 27/06/2026 08:01:05
[2026-06-27 08:01:05,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:01:05,762.762 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:01:05,829.829 INFO    ] No existing commands found in stream
[2026-06-27 08:01:10,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:01:10,841.841 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-27 08:01:13,575.575 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 08:01:13,577.577 INFO    ] Checking for system updates...
[2026-06-27 08:01:13,599.599 INFO    ] 200
[2026-06-27 08:01:13,601.601 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:01:13,633.633 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:01:13,635.635 INFO    ] No update needed
[2026-06-27 08:01:13,636.636 INFO    ] Checking for camera pi updates...
[2026-06-27 08:01:13,656.656 INFO    ] 200
[2026-06-27 08:01:13,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:01:13,682.682 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:01:13,827.827 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:01:13,828.828 INFO    ] No camera update needed
[2026-06-27 08:01:13,830.830 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:01:13,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:01:13,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:01:13,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:01:15,877.877 INFO    ] ================================================
[2026-06-27 08:01:15,892.892 INFO    ] Launching Daemon at Sat Jun 27 08:01:15 IST 2026
[2026-06-27 08:01:15,904.904 INFO    ] ================================================
[2026-06-27 08:01:16,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:01:16
[2026-06-27 08:01:16,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:01:16,708.708 INFO    ] Initializing speech engine...
[2026-06-27 08:01:16,720.720 INFO    ] 2026-06-27 08:01:16
[2026-06-27 08:01:16,927.927 INFO    ] 2026-06-27 08:01:16
[2026-06-27 08:01:16,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:01:17,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:01:17,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:01:17,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:01:17,360.360 INFO    ] time= 27/06/2026 08:01:17
[2026-06-27 08:01:17,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:01:17,395.395 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:01:17,469.469 INFO    ] No existing commands found in stream
[2026-06-27 08:01:22,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:01:22,506.506 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-27 08:01:24,005.005 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:01:24,006.006 INFO    ] Checking for system updates...
[2026-06-27 08:01:24,027.027 INFO    ] 200
[2026-06-27 08:01:24,028.028 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:01:24,059.059 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:01:24,060.060 INFO    ] No update needed
[2026-06-27 08:01:24,062.062 INFO    ] Checking for camera pi updates...
[2026-06-27 08:01:24,081.081 INFO    ] 200
[2026-06-27 08:01:24,082.082 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:01:24,108.108 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:01:24,158.158 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:01:24,159.159 INFO    ] No camera update needed
[2026-06-27 08:01:24,161.161 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:01:24,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:01:24,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:01:24,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:01:26,208.208 INFO    ] ================================================
[2026-06-27 08:01:26,223.223 INFO    ] Launching Daemon at Sat Jun 27 08:01:26 IST 2026
[2026-06-27 08:01:26,234.234 INFO    ] ================================================
[2026-06-27 08:01:26,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:01:26
[2026-06-27 08:01:26,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:01:27,108.108 INFO    ] Initializing speech engine...
[2026-06-27 08:01:27,114.114 INFO    ] 2026-06-27 08:01:27
[2026-06-27 08:01:27,318.318 INFO    ] 2026-06-27 08:01:27
[2026-06-27 08:01:27,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:01:27,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:01:27,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:01:27,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:01:27,667.667 INFO    ] time= 27/06/2026 08:01:27
[2026-06-27 08:01:27,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:01:27,763.763 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:01:27,826.826 INFO    ] No existing commands found in stream
[2026-06-27 08:01:32,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:01:32,839.839 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-27 08:01:34,780.780 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:01:34,781.781 INFO    ] Checking for system updates...
[2026-06-27 08:01:34,803.803 INFO    ] 200
[2026-06-27 08:01:34,805.805 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:01:34,836.836 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:01:34,837.837 INFO    ] No update needed
[2026-06-27 08:01:34,839.839 INFO    ] Checking for camera pi updates...
[2026-06-27 08:01:34,859.859 INFO    ] 200
[2026-06-27 08:01:34,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:01:34,884.884 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:01:34,922.922 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:01:34,924.924 INFO    ] No camera update needed
[2026-06-27 08:01:34,925.925 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:01:34,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:01:34,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:01:34,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:01:36,972.972 INFO    ] ================================================
[2026-06-27 08:01:36,986.986 INFO    ] Launching Daemon at Sat Jun 27 08:01:36 IST 2026
[2026-06-27 08:01:37,997.997 INFO    ] ================================================
[2026-06-27 08:01:37,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:01:37
[2026-06-27 08:01:37,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:01:37,818.818 INFO    ] Initializing speech engine...
[2026-06-27 08:01:37,826.826 INFO    ] 2026-06-27 08:01:37
[2026-06-27 08:01:38,037.037 INFO    ] 2026-06-27 08:01:38
[2026-06-27 08:01:38,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:01:38,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:01:38,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:01:38,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:01:38,452.452 INFO    ] time= 27/06/2026 08:01:38
[2026-06-27 08:01:38,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:01:38,486.486 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:01:38,558.558 INFO    ] No existing commands found in stream
[2026-06-27 08:01:43,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:01:43,570.570 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-27 08:01:44,778.778 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 08:01:44,779.779 INFO    ] Checking for system updates...
[2026-06-27 08:01:44,800.800 INFO    ] 200
[2026-06-27 08:01:44,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:01:44,835.835 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:01:44,836.836 INFO    ] No update needed
[2026-06-27 08:01:44,837.837 INFO    ] Checking for camera pi updates...
[2026-06-27 08:01:44,857.857 INFO    ] 200
[2026-06-27 08:01:44,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:01:44,882.882 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:01:44,923.923 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:01:44,925.925 INFO    ] No camera update needed
[2026-06-27 08:01:44,929.929 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:01:44,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:01:44,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:01:44,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:01:46,968.968 INFO    ] ================================================
[2026-06-27 08:01:46,983.983 INFO    ] Launching Daemon at Sat Jun 27 08:01:46 IST 2026
[2026-06-27 08:01:46,994.994 INFO    ] ================================================
[2026-06-27 08:01:47,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:01:47
[2026-06-27 08:01:47,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:01:47,816.816 INFO    ] Initializing speech engine...
[2026-06-27 08:01:47,821.821 INFO    ] 2026-06-27 08:01:47
[2026-06-27 08:01:48,027.027 INFO    ] 2026-06-27 08:01:48
[2026-06-27 08:01:48,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:01:48,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:01:48,247.247 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:01:48,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:01:48,475.475 INFO    ] time= 27/06/2026 08:01:48
[2026-06-27 08:01:48,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:01:48,483.483 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:01:48,550.550 INFO    ] No existing commands found in stream
[2026-06-27 08:01:53,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:01:53,562.562 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-27 08:01:57,007.007 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 08:01:57,008.008 INFO    ] Checking for system updates...
[2026-06-27 08:01:57,030.030 INFO    ] 200
[2026-06-27 08:01:57,031.031 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:01:57,064.064 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:01:57,066.066 INFO    ] No update needed
[2026-06-27 08:01:57,067.067 INFO    ] Checking for camera pi updates...
[2026-06-27 08:01:57,087.087 INFO    ] 200
[2026-06-27 08:01:57,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:01:57,111.111 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:01:57,152.152 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:01:57,153.153 INFO    ] No camera update needed
[2026-06-27 08:01:57,154.154 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:01:57,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:01:57,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:01:57,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:01:59,203.203 INFO    ] ================================================
[2026-06-27 08:01:59,218.218 INFO    ] Launching Daemon at Sat Jun 27 08:01:59 IST 2026
[2026-06-27 08:01:59,229.229 INFO    ] ================================================
[2026-06-27 08:01:59,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:01:59
[2026-06-27 08:01:59,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:02:00,069.069 INFO    ] Initializing speech engine...
[2026-06-27 08:02:00,076.076 INFO    ] 2026-06-27 08:02:00
[2026-06-27 08:02:00,277.277 INFO    ] 2026-06-27 08:02:00
[2026-06-27 08:02:00,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:02:00,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:02:00,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:02:00,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:02:00,695.695 INFO    ] time= 27/06/2026 08:02:00
[2026-06-27 08:02:00,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:02:00,724.724 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:02:00,791.791 INFO    ] No existing commands found in stream
[2026-06-27 08:02:05,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:02:05,817.817 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-27 08:02:06,318.318 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 08:02:06,320.320 INFO    ] Checking for system updates...
[2026-06-27 08:02:06,344.344 INFO    ] 200
[2026-06-27 08:02:06,346.346 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:02:06,376.376 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:02:06,378.378 INFO    ] No update needed
[2026-06-27 08:02:06,379.379 INFO    ] Checking for camera pi updates...
[2026-06-27 08:02:06,400.400 INFO    ] 200
[2026-06-27 08:02:06,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:02:06,425.425 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:02:06,460.460 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:02:06,462.462 INFO    ] No camera update needed
[2026-06-27 08:02:06,463.463 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:02:06,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:02:06,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:02:06,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:02:08,511.511 INFO    ] ================================================
[2026-06-27 08:02:08,527.527 INFO    ] Launching Daemon at Sat Jun 27 08:02:08 IST 2026
[2026-06-27 08:02:08,538.538 INFO    ] ================================================
[2026-06-27 08:02:08,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:02:08
[2026-06-27 08:02:09,206.206 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:02:09,351.351 INFO    ] Initializing speech engine...
[2026-06-27 08:02:09,357.357 INFO    ] 2026-06-27 08:02:09
[2026-06-27 08:02:09,563.563 INFO    ] 2026-06-27 08:02:09
[2026-06-27 08:02:09,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:02:09,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:02:09,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:02:09,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:02:09,964.964 INFO    ] time= 27/06/2026 08:02:09
[2026-06-27 08:02:10,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:02:10,011.011 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:02:10,084.084 INFO    ] No existing commands found in stream
[2026-06-27 08:02:15,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:02:15,098.098 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-27 08:02:18,465.465 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 08:02:18,466.466 INFO    ] Checking for system updates...
[2026-06-27 08:02:18,488.488 INFO    ] 200
[2026-06-27 08:02:18,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:02:18,522.522 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:02:18,524.524 INFO    ] No update needed
[2026-06-27 08:02:18,525.525 INFO    ] Checking for camera pi updates...
[2026-06-27 08:02:18,545.545 INFO    ] 200
[2026-06-27 08:02:18,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:02:18,570.570 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:02:18,610.610 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:02:18,611.611 INFO    ] No camera update needed
[2026-06-27 08:02:18,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:02:18,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:02:18,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:02:18,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:02:20,659.659 INFO    ] ================================================
[2026-06-27 08:02:20,676.676 INFO    ] Launching Daemon at Sat Jun 27 08:02:20 IST 2026
[2026-06-27 08:02:20,687.687 INFO    ] ================================================
[2026-06-27 08:02:21,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:02:21
[2026-06-27 08:02:21,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:02:21,480.480 INFO    ] Initializing speech engine...
[2026-06-27 08:02:21,488.488 INFO    ] 2026-06-27 08:02:21
[2026-06-27 08:02:21,699.699 INFO    ] 2026-06-27 08:02:21
[2026-06-27 08:02:21,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:02:21,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:02:21,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:02:22,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:02:22,106.106 INFO    ] time= 27/06/2026 08:02:22
[2026-06-27 08:02:22,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:02:22,153.153 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:02:22,223.223 INFO    ] No existing commands found in stream
[2026-06-27 08:02:27,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:02:27,237.237 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-27 08:02:31,525.525 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:02:31,527.527 INFO    ] Checking for system updates...
[2026-06-27 08:02:31,548.548 INFO    ] 200
[2026-06-27 08:02:31,549.549 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:02:31,582.582 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:02:31,584.584 INFO    ] No update needed
[2026-06-27 08:02:31,585.585 INFO    ] Checking for camera pi updates...
[2026-06-27 08:02:31,609.609 INFO    ] 200
[2026-06-27 08:02:31,610.610 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:02:31,634.634 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:02:31,679.679 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:02:31,681.681 INFO    ] No camera update needed
[2026-06-27 08:02:31,683.683 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:02:31,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:02:31,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:02:31,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:02:33,728.728 INFO    ] ================================================
[2026-06-27 08:02:33,744.744 INFO    ] Launching Daemon at Sat Jun 27 08:02:33 IST 2026
[2026-06-27 08:02:33,756.756 INFO    ] ================================================
[2026-06-27 08:02:34,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:02:34
[2026-06-27 08:02:34,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:02:34,629.629 INFO    ] Initializing speech engine...
[2026-06-27 08:02:34,636.636 INFO    ] 2026-06-27 08:02:34
[2026-06-27 08:02:34,847.847 INFO    ] 2026-06-27 08:02:34
[2026-06-27 08:02:34,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:02:35,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:02:35,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:02:35,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:02:35,288.288 INFO    ] time= 27/06/2026 08:02:35
[2026-06-27 08:02:35,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:02:35,319.319 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:02:35,387.387 INFO    ] No existing commands found in stream
[2026-06-27 08:02:40,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:02:40,400.400 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-27 08:02:41,660.660 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 08:02:41,662.662 INFO    ] Checking for system updates...
[2026-06-27 08:02:41,684.684 INFO    ] 200
[2026-06-27 08:02:41,686.686 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:02:41,717.717 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:02:41,719.719 INFO    ] No update needed
[2026-06-27 08:02:41,720.720 INFO    ] Checking for camera pi updates...
[2026-06-27 08:02:41,741.741 INFO    ] 200
[2026-06-27 08:02:41,742.742 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:02:41,770.770 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:02:41,809.809 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:02:41,810.810 INFO    ] No camera update needed
[2026-06-27 08:02:41,811.811 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:02:41,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:02:41,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:02:41,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:02:43,849.849 INFO    ] ================================================
[2026-06-27 08:02:43,858.858 INFO    ] Launching Daemon at Sat Jun 27 08:02:43 IST 2026
[2026-06-27 08:02:43,865.865 INFO    ] ================================================
[2026-06-27 08:02:44,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:02:44
[2026-06-27 08:02:44,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:02:44,625.625 INFO    ] Initializing speech engine...
[2026-06-27 08:02:44,639.639 INFO    ] 2026-06-27 08:02:44
[2026-06-27 08:02:44,861.861 INFO    ] 2026-06-27 08:02:44
[2026-06-27 08:02:44,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:02:45,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:02:45,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:02:45,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:02:45,302.302 INFO    ] time= 27/06/2026 08:02:45
[2026-06-27 08:02:45,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:02:45,337.337 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:02:45,407.407 INFO    ] No existing commands found in stream
[2026-06-27 08:02:50,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:02:50,419.419 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-27 08:02:52,474.474 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 08:02:52,475.475 INFO    ] Checking for system updates...
[2026-06-27 08:02:52,496.496 INFO    ] 200
[2026-06-27 08:02:52,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:02:52,528.528 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:02:52,530.530 INFO    ] No update needed
[2026-06-27 08:02:52,531.531 INFO    ] Checking for camera pi updates...
[2026-06-27 08:02:52,551.551 INFO    ] 200
[2026-06-27 08:02:52,552.552 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:02:52,577.577 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:02:52,612.612 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:02:52,614.614 INFO    ] No camera update needed
[2026-06-27 08:02:52,615.615 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:02:52,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:02:52,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:02:52,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:02:54,661.661 INFO    ] ================================================
[2026-06-27 08:02:54,677.677 INFO    ] Launching Daemon at Sat Jun 27 08:02:54 IST 2026
[2026-06-27 08:02:54,688.688 INFO    ] ================================================
[2026-06-27 08:02:55,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:02:55
[2026-06-27 08:02:55,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:02:55,505.505 INFO    ] Initializing speech engine...
[2026-06-27 08:02:55,510.510 INFO    ] 2026-06-27 08:02:55
[2026-06-27 08:02:55,720.720 INFO    ] 2026-06-27 08:02:55
[2026-06-27 08:02:55,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:02:55,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:02:55,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:02:56,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:02:56,166.166 INFO    ] time= 27/06/2026 08:02:56
[2026-06-27 08:02:56,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:02:56,175.175 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:02:56,243.243 INFO    ] No existing commands found in stream
[2026-06-27 08:03:01,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:03:01,256.256 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-27 08:03:05,088.088 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:03:05,089.089 INFO    ] Checking for system updates...
[2026-06-27 08:03:05,110.110 INFO    ] 200
[2026-06-27 08:03:05,112.112 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:03:05,145.145 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:03:05,147.147 INFO    ] No update needed
[2026-06-27 08:03:05,148.148 INFO    ] Checking for camera pi updates...
[2026-06-27 08:03:05,170.170 INFO    ] 200
[2026-06-27 08:03:05,172.172 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:03:05,196.196 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:03:05,235.235 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:03:05,240.240 INFO    ] No camera update needed
[2026-06-27 08:03:05,241.241 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:03:05,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:03:05,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:03:05,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:03:07,291.291 INFO    ] ================================================
[2026-06-27 08:03:07,307.307 INFO    ] Launching Daemon at Sat Jun 27 08:03:07 IST 2026
[2026-06-27 08:03:07,318.318 INFO    ] ================================================
[2026-06-27 08:03:07,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:03:07
[2026-06-27 08:03:08,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:03:08,155.155 INFO    ] Initializing speech engine...
[2026-06-27 08:03:08,166.166 INFO    ] 2026-06-27 08:03:08
[2026-06-27 08:03:08,370.370 INFO    ] 2026-06-27 08:03:08
[2026-06-27 08:03:08,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:03:08,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:03:08,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:03:08,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:03:08,790.790 INFO    ] time= 27/06/2026 08:03:08
[2026-06-27 08:03:08,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:03:08,823.823 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:03:08,880.880 INFO    ] No existing commands found in stream
[2026-06-27 08:03:13,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:03:13,892.892 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-27 08:03:15,540.540 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:03:15,542.542 INFO    ] Checking for system updates...
[2026-06-27 08:03:15,564.564 INFO    ] 200
[2026-06-27 08:03:15,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:03:15,596.596 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:03:15,598.598 INFO    ] No update needed
[2026-06-27 08:03:15,599.599 INFO    ] Checking for camera pi updates...
[2026-06-27 08:03:15,618.618 INFO    ] 200
[2026-06-27 08:03:15,620.620 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:03:15,643.643 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:03:15,797.797 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:03:15,799.799 INFO    ] No camera update needed
[2026-06-27 08:03:15,800.800 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:03:15,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:03:15,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:03:15,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:03:17,849.849 INFO    ] ================================================
[2026-06-27 08:03:17,865.865 INFO    ] Launching Daemon at Sat Jun 27 08:03:17 IST 2026
[2026-06-27 08:03:17,875.875 INFO    ] ================================================
[2026-06-27 08:03:18,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:03:18
[2026-06-27 08:03:18,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:03:18,700.700 INFO    ] Initializing speech engine...
[2026-06-27 08:03:18,709.709 INFO    ] 2026-06-27 08:03:18
[2026-06-27 08:03:18,935.935 INFO    ] 2026-06-27 08:03:18
[2026-06-27 08:03:18,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:03:19,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:03:19,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:03:19,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:03:19,386.386 INFO    ] time= 27/06/2026 08:03:19
[2026-06-27 08:03:19,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:03:19,420.420 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:03:19,491.491 INFO    ] No existing commands found in stream
[2026-06-27 08:03:24,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:03:24,505.505 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-27 08:03:28,222.222 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:03:28,224.224 INFO    ] Checking for system updates...
[2026-06-27 08:03:28,246.246 INFO    ] 200
[2026-06-27 08:03:28,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:03:28,278.278 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:03:28,280.280 INFO    ] No update needed
[2026-06-27 08:03:28,281.281 INFO    ] Checking for camera pi updates...
[2026-06-27 08:03:28,304.304 INFO    ] 200
[2026-06-27 08:03:28,306.306 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:03:28,329.329 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:03:28,366.366 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:03:28,367.367 INFO    ] No camera update needed
[2026-06-27 08:03:28,368.368 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:03:28,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:03:28,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:03:28,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:03:30,415.415 INFO    ] ================================================
[2026-06-27 08:03:30,430.430 INFO    ] Launching Daemon at Sat Jun 27 08:03:30 IST 2026
[2026-06-27 08:03:30,441.441 INFO    ] ================================================
[2026-06-27 08:03:30,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:03:30
[2026-06-27 08:03:31,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:03:31,290.290 INFO    ] Initializing speech engine...
[2026-06-27 08:03:31,304.304 INFO    ] 2026-06-27 08:03:31
[2026-06-27 08:03:31,526.526 INFO    ] 2026-06-27 08:03:31
[2026-06-27 08:03:31,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:03:31,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:03:31,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:03:31,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:03:31,985.985 INFO    ] time= 27/06/2026 08:03:31
[2026-06-27 08:03:32,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:03:32,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:03:32,107.107 INFO    ] No existing commands found in stream
[2026-06-27 08:03:37,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:03:37,120.120 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-27 08:03:38,378.378 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 08:03:38,379.379 INFO    ] Checking for system updates...
[2026-06-27 08:03:38,401.401 INFO    ] 200
[2026-06-27 08:03:38,403.403 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:03:38,433.433 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:03:38,434.434 INFO    ] No update needed
[2026-06-27 08:03:38,436.436 INFO    ] Checking for camera pi updates...
[2026-06-27 08:03:38,455.455 INFO    ] 200
[2026-06-27 08:03:38,457.457 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:03:38,482.482 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:03:38,522.522 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:03:38,524.524 INFO    ] No camera update needed
[2026-06-27 08:03:38,525.525 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:03:38,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:03:38,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:03:38,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:03:40,573.573 INFO    ] ================================================
[2026-06-27 08:03:40,589.589 INFO    ] Launching Daemon at Sat Jun 27 08:03:40 IST 2026
[2026-06-27 08:03:40,600.600 INFO    ] ================================================
[2026-06-27 08:03:40,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:03:40
[2026-06-27 08:03:41,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:03:41,412.412 INFO    ] Initializing speech engine...
[2026-06-27 08:03:41,421.421 INFO    ] 2026-06-27 08:03:41
[2026-06-27 08:03:41,624.624 INFO    ] 2026-06-27 08:03:41
[2026-06-27 08:03:41,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:03:41,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:03:41,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:03:41,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:03:42,038.038 INFO    ] time= 27/06/2026 08:03:41
[2026-06-27 08:03:42,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:03:42,071.071 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:03:42,136.136 INFO    ] No existing commands found in stream
[2026-06-27 08:03:47,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:03:47,150.150 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-27 08:03:50,338.338 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:03:50,340.340 INFO    ] Checking for system updates...
[2026-06-27 08:03:50,361.361 INFO    ] 200
[2026-06-27 08:03:50,362.362 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:03:50,393.393 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:03:50,395.395 INFO    ] No update needed
[2026-06-27 08:03:50,396.396 INFO    ] Checking for camera pi updates...
[2026-06-27 08:03:50,418.418 INFO    ] 200
[2026-06-27 08:03:50,422.422 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:03:50,454.454 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:03:50,491.491 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:03:50,493.493 INFO    ] No camera update needed
[2026-06-27 08:03:50,494.494 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:03:50,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:03:50,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:03:50,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:03:52,543.543 INFO    ] ================================================
[2026-06-27 08:03:52,558.558 INFO    ] Launching Daemon at Sat Jun 27 08:03:52 IST 2026
[2026-06-27 08:03:52,569.569 INFO    ] ================================================
[2026-06-27 08:03:52,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:03:52
[2026-06-27 08:03:53,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:03:53,454.454 INFO    ] Initializing speech engine...
[2026-06-27 08:03:53,460.460 INFO    ] 2026-06-27 08:03:53
[2026-06-27 08:03:53,669.669 INFO    ] 2026-06-27 08:03:53
[2026-06-27 08:03:53,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:03:53,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:03:53,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:03:54,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:03:54,109.109 INFO    ] time= 27/06/2026 08:03:54
[2026-06-27 08:03:54,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:03:54,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:03:54,184.184 INFO    ] No existing commands found in stream
[2026-06-27 08:03:59,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:03:59,198.198 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-27 08:04:02,984.984 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 08:04:02,986.986 INFO    ] Checking for system updates...
[2026-06-27 08:04:03,012.012 INFO    ] 200
[2026-06-27 08:04:03,014.014 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:04:03,045.045 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:04:03,047.047 INFO    ] No update needed
[2026-06-27 08:04:03,048.048 INFO    ] Checking for camera pi updates...
[2026-06-27 08:04:03,075.075 INFO    ] 200
[2026-06-27 08:04:03,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:04:03,104.104 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:04:03,144.144 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:04:03,145.145 INFO    ] No camera update needed
[2026-06-27 08:04:03,146.146 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:04:03,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:04:03,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:04:03,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:04:05,194.194 INFO    ] ================================================
[2026-06-27 08:04:05,209.209 INFO    ] Launching Daemon at Sat Jun 27 08:04:05 IST 2026
[2026-06-27 08:04:05,220.220 INFO    ] ================================================
[2026-06-27 08:04:05,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:04:05
[2026-06-27 08:04:05,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:04:06,048.048 INFO    ] Initializing speech engine...
[2026-06-27 08:04:06,053.053 INFO    ] 2026-06-27 08:04:06
[2026-06-27 08:04:06,282.282 INFO    ] 2026-06-27 08:04:06
[2026-06-27 08:04:06,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:04:06,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:04:06,483.483 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:04:06,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:04:06,665.665 INFO    ] time= 27/06/2026 08:04:06
[2026-06-27 08:04:06,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:04:06,762.762 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:04:06,837.837 INFO    ] No existing commands found in stream
[2026-06-27 08:04:11,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:04:11,851.851 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-27 08:04:13,754.754 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 08:04:13,755.755 INFO    ] Checking for system updates...
[2026-06-27 08:04:13,777.777 INFO    ] 200
[2026-06-27 08:04:13,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:04:13,811.811 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:04:13,812.812 INFO    ] No update needed
[2026-06-27 08:04:13,814.814 INFO    ] Checking for camera pi updates...
[2026-06-27 08:04:13,837.837 INFO    ] 200
[2026-06-27 08:04:13,839.839 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:04:13,862.862 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:04:13,901.901 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:04:13,902.902 INFO    ] No camera update needed
[2026-06-27 08:04:13,904.904 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:04:13,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:04:13,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:04:13,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:04:15,948.948 INFO    ] ================================================
[2026-06-27 08:04:15,964.964 INFO    ] Launching Daemon at Sat Jun 27 08:04:15 IST 2026
[2026-06-27 08:04:15,975.975 INFO    ] ================================================
[2026-06-27 08:04:16,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:04:16
[2026-06-27 08:04:16,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:04:16,852.852 INFO    ] Initializing speech engine...
[2026-06-27 08:04:16,857.857 INFO    ] 2026-06-27 08:04:16
[2026-06-27 08:04:17,068.068 INFO    ] 2026-06-27 08:04:17
[2026-06-27 08:04:17,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:04:17,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:04:17,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:04:17,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:04:17,515.515 INFO    ] time= 27/06/2026 08:04:17
[2026-06-27 08:04:17,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:04:17,523.523 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:04:17,591.591 INFO    ] No existing commands found in stream
[2026-06-27 08:04:22,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:04:22,603.603 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-27 08:04:26,730.730 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 08:04:26,732.732 INFO    ] Checking for system updates...
[2026-06-27 08:04:26,753.753 INFO    ] 200
[2026-06-27 08:04:26,755.755 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:04:26,788.788 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:04:26,789.789 INFO    ] No update needed
[2026-06-27 08:04:26,790.790 INFO    ] Checking for camera pi updates...
[2026-06-27 08:04:26,810.810 INFO    ] 200
[2026-06-27 08:04:26,811.811 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:04:26,839.839 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:04:26,874.874 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:04:26,875.875 INFO    ] No camera update needed
[2026-06-27 08:04:26,876.876 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:04:26,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:04:26,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:04:26,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:04:28,922.922 INFO    ] ================================================
[2026-06-27 08:04:28,938.938 INFO    ] Launching Daemon at Sat Jun 27 08:04:28 IST 2026
[2026-06-27 08:04:28,951.951 INFO    ] ================================================
[2026-06-27 08:04:29,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:04:29
[2026-06-27 08:04:29,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:04:29,811.811 INFO    ] Initializing speech engine...
[2026-06-27 08:04:29,821.821 INFO    ] 2026-06-27 08:04:29
[2026-06-27 08:04:30,030.030 INFO    ] 2026-06-27 08:04:30
[2026-06-27 08:04:30,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:04:30,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:04:30,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:04:30,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:04:30,474.474 INFO    ] time= 27/06/2026 08:04:30
[2026-06-27 08:04:30,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:04:30,483.483 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:04:30,550.550 INFO    ] No existing commands found in stream
[2026-06-27 08:04:35,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:04:35,563.563 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-27 08:04:38,477.477 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 08:04:38,478.478 INFO    ] Checking for system updates...
[2026-06-27 08:04:38,499.499 INFO    ] 200
[2026-06-27 08:04:38,501.501 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:04:38,535.535 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:04:38,537.537 INFO    ] No update needed
[2026-06-27 08:04:38,538.538 INFO    ] Checking for camera pi updates...
[2026-06-27 08:04:38,557.557 INFO    ] 200
[2026-06-27 08:04:38,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:04:38,584.584 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:04:38,621.621 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:04:38,622.622 INFO    ] No camera update needed
[2026-06-27 08:04:38,623.623 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:04:38,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:04:38,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:04:38,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:04:40,668.668 INFO    ] ================================================
[2026-06-27 08:04:40,684.684 INFO    ] Launching Daemon at Sat Jun 27 08:04:40 IST 2026
[2026-06-27 08:04:40,695.695 INFO    ] ================================================
[2026-06-27 08:04:41,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:04:41
[2026-06-27 08:04:41,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:04:41,500.500 INFO    ] Initializing speech engine...
[2026-06-27 08:04:41,504.504 INFO    ] 2026-06-27 08:04:41
[2026-06-27 08:04:41,720.720 INFO    ] 2026-06-27 08:04:41
[2026-06-27 08:04:41,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:04:41,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:04:41,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:04:42,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:04:42,136.136 INFO    ] time= 27/06/2026 08:04:42
[2026-06-27 08:04:42,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:04:42,170.170 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:04:42,237.237 INFO    ] No existing commands found in stream
[2026-06-27 08:04:47,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:04:47,254.254 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-27 08:04:47,910.910 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 08:04:47,911.911 INFO    ] Checking for system updates...
[2026-06-27 08:04:47,934.934 INFO    ] 200
[2026-06-27 08:04:47,935.935 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:04:47,966.966 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:04:47,967.967 INFO    ] No update needed
[2026-06-27 08:04:47,969.969 INFO    ] Checking for camera pi updates...
[2026-06-27 08:04:47,988.988 INFO    ] 200
[2026-06-27 08:04:47,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:04:48,013.013 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:04:48,046.046 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:04:48,047.047 INFO    ] No camera update needed
[2026-06-27 08:04:48,048.048 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:04:48,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:04:48,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:04:48,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:04:50,097.097 INFO    ] ================================================
[2026-06-27 08:04:50,113.113 INFO    ] Launching Daemon at Sat Jun 27 08:04:50 IST 2026
[2026-06-27 08:04:50,124.124 INFO    ] ================================================
[2026-06-27 08:04:50,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:04:50
[2026-06-27 08:04:50,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:04:50,991.991 INFO    ] Initializing speech engine...
[2026-06-27 08:04:50,997.997 INFO    ] 2026-06-27 08:04:50
[2026-06-27 08:04:51,202.202 INFO    ] 2026-06-27 08:04:51
[2026-06-27 08:04:51,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:04:51,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:04:51,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:04:51,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:04:51,620.620 INFO    ] time= 27/06/2026 08:04:51
[2026-06-27 08:04:51,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:04:51,649.649 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:04:51,715.715 INFO    ] No existing commands found in stream
[2026-06-27 08:04:56,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:04:56,729.729 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-27 08:04:58,225.225 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 08:04:58,226.226 INFO    ] Checking for system updates...
[2026-06-27 08:04:58,249.249 INFO    ] 200
[2026-06-27 08:04:58,250.250 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:04:58,281.281 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:04:58,282.282 INFO    ] No update needed
[2026-06-27 08:04:58,284.284 INFO    ] Checking for camera pi updates...
[2026-06-27 08:04:58,305.305 INFO    ] 200
[2026-06-27 08:04:58,306.306 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:04:58,332.332 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:04:58,367.367 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:04:58,368.368 INFO    ] No camera update needed
[2026-06-27 08:04:58,370.370 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:04:58,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:04:58,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:04:58,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:05:00,417.417 INFO    ] ================================================
[2026-06-27 08:05:00,433.433 INFO    ] Launching Daemon at Sat Jun 27 08:05:00 IST 2026
[2026-06-27 08:05:00,446.446 INFO    ] ================================================
[2026-06-27 08:05:00,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:05:00
[2026-06-27 08:05:01,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:05:01,522.522 INFO    ] Initializing speech engine...
[2026-06-27 08:05:01,551.551 INFO    ] 2026-06-27 08:05:01
[2026-06-27 08:05:01,873.873 INFO    ] 2026-06-27 08:05:01
[2026-06-27 08:05:01,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:05:02,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:05:02,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:05:02,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:05:02,366.366 INFO    ] time= 27/06/2026 08:05:02
[2026-06-27 08:05:02,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:05:02,398.398 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:05:02,471.471 INFO    ] No existing commands found in stream
[2026-06-27 08:05:07,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:05:07,484.484 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-27 08:05:09,751.751 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:05:09,752.752 INFO    ] Checking for system updates...
[2026-06-27 08:05:09,775.775 INFO    ] 200
[2026-06-27 08:05:09,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:05:09,807.807 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:05:09,809.809 INFO    ] No update needed
[2026-06-27 08:05:09,810.810 INFO    ] Checking for camera pi updates...
[2026-06-27 08:05:09,831.831 INFO    ] 200
[2026-06-27 08:05:09,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:05:09,857.857 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:05:09,895.895 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:05:09,896.896 INFO    ] No camera update needed
[2026-06-27 08:05:09,898.898 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:05:09,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:05:09,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:05:09,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:05:11,947.947 INFO    ] ================================================
[2026-06-27 08:05:11,962.962 INFO    ] Launching Daemon at Sat Jun 27 08:05:11 IST 2026
[2026-06-27 08:05:11,974.974 INFO    ] ================================================
[2026-06-27 08:05:12,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:05:12
[2026-06-27 08:05:12,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:05:12,798.798 INFO    ] Initializing speech engine...
[2026-06-27 08:05:12,802.802 INFO    ] 2026-06-27 08:05:12
[2026-06-27 08:05:13,007.007 INFO    ] 2026-06-27 08:05:12
[2026-06-27 08:05:13,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:05:13,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:05:13,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:05:13,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:05:13,461.461 INFO    ] time= 27/06/2026 08:05:13
[2026-06-27 08:05:13,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:05:13,519.519 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:05:13,596.596 INFO    ] No existing commands found in stream
[2026-06-27 08:05:18,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:05:18,608.608 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-27 08:05:19,529.529 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:05:19,530.530 INFO    ] Checking for system updates...
[2026-06-27 08:05:19,553.553 INFO    ] 200
[2026-06-27 08:05:19,555.555 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:05:19,589.589 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:05:19,590.590 INFO    ] No update needed
[2026-06-27 08:05:19,592.592 INFO    ] Checking for camera pi updates...
[2026-06-27 08:05:19,615.615 INFO    ] 200
[2026-06-27 08:05:19,617.617 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:05:19,643.643 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:05:19,783.783 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:05:19,784.784 INFO    ] No camera update needed
[2026-06-27 08:05:19,786.786 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:05:19,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:05:19,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:05:19,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:05:21,834.834 INFO    ] ================================================
[2026-06-27 08:05:21,849.849 INFO    ] Launching Daemon at Sat Jun 27 08:05:21 IST 2026
[2026-06-27 08:05:21,861.861 INFO    ] ================================================
[2026-06-27 08:05:22,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:05:22
[2026-06-27 08:05:22,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:05:22,677.677 INFO    ] Initializing speech engine...
[2026-06-27 08:05:22,684.684 INFO    ] 2026-06-27 08:05:22
[2026-06-27 08:05:22,890.890 INFO    ] 2026-06-27 08:05:22
[2026-06-27 08:05:22,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:05:23,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:05:23,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:05:23,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:05:23,305.305 INFO    ] time= 27/06/2026 08:05:23
[2026-06-27 08:05:23,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:05:23,338.338 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:05:23,406.406 INFO    ] No existing commands found in stream
[2026-06-27 08:05:28,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:05:28,424.424 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-27 08:05:31,075.075 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 08:05:31,077.077 INFO    ] Checking for system updates...
[2026-06-27 08:05:31,098.098 INFO    ] 200
[2026-06-27 08:05:31,099.099 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:05:31,130.130 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:05:31,132.132 INFO    ] No update needed
[2026-06-27 08:05:31,133.133 INFO    ] Checking for camera pi updates...
[2026-06-27 08:05:31,154.154 INFO    ] 200
[2026-06-27 08:05:31,156.156 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:05:31,181.181 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:05:31,225.225 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:05:31,226.226 INFO    ] No camera update needed
[2026-06-27 08:05:31,228.228 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:05:31,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:05:31,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:05:31,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:05:33,268.268 INFO    ] ================================================
[2026-06-27 08:05:33,284.284 INFO    ] Launching Daemon at Sat Jun 27 08:05:33 IST 2026
[2026-06-27 08:05:33,295.295 INFO    ] ================================================
[2026-06-27 08:05:33,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:05:33
[2026-06-27 08:05:33,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:05:34,126.126 INFO    ] Initializing speech engine...
[2026-06-27 08:05:34,133.133 INFO    ] 2026-06-27 08:05:34
[2026-06-27 08:05:34,332.332 INFO    ] 2026-06-27 08:05:34
[2026-06-27 08:05:34,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:05:34,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:05:34,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:05:34,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:05:34,777.777 INFO    ] time= 27/06/2026 08:05:34
[2026-06-27 08:05:34,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:05:34,819.819 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:05:34,891.891 INFO    ] No existing commands found in stream
[2026-06-27 08:05:39,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:05:39,899.899 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-27 08:05:43,220.220 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 08:05:43,221.221 INFO    ] Checking for system updates...
[2026-06-27 08:05:43,243.243 INFO    ] 200
[2026-06-27 08:05:43,245.245 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:05:43,276.276 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:05:43,277.277 INFO    ] No update needed
[2026-06-27 08:05:43,278.278 INFO    ] Checking for camera pi updates...
[2026-06-27 08:05:43,298.298 INFO    ] 200
[2026-06-27 08:05:43,299.299 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:05:43,322.322 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:05:43,367.367 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:05:43,368.368 INFO    ] No camera update needed
[2026-06-27 08:05:43,370.370 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:05:43,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:05:43,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:05:43,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:05:45,416.416 INFO    ] ================================================
[2026-06-27 08:05:45,431.431 INFO    ] Launching Daemon at Sat Jun 27 08:05:45 IST 2026
[2026-06-27 08:05:45,442.442 INFO    ] ================================================
[2026-06-27 08:05:45,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:05:45
[2026-06-27 08:05:46,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:05:46,268.268 INFO    ] Initializing speech engine...
[2026-06-27 08:05:46,273.273 INFO    ] 2026-06-27 08:05:46
[2026-06-27 08:05:46,478.478 INFO    ] 2026-06-27 08:05:46
[2026-06-27 08:05:46,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:05:49,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:05:49,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:05:49,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:05:49,971.971 INFO    ] time= 27/06/2026 08:05:49
[2026-06-27 08:05:49,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:05:49,976.976 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:05:50,025.025 INFO    ] No existing commands found in stream
[2026-06-27 08:05:55,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:05:55,037.037 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-27 08:05:55,542.542 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 08:05:55,544.544 INFO    ] Checking for system updates...
[2026-06-27 08:05:55,566.566 INFO    ] 200
[2026-06-27 08:05:55,568.568 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:05:55,604.604 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:05:55,605.605 INFO    ] No update needed
[2026-06-27 08:05:55,606.606 INFO    ] Checking for camera pi updates...
[2026-06-27 08:05:55,628.628 INFO    ] 200
[2026-06-27 08:05:55,629.629 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:05:55,653.653 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:05:55,687.687 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:05:55,689.689 INFO    ] No camera update needed
[2026-06-27 08:05:55,690.690 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:05:55,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:05:55,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:05:55,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:05:57,739.739 INFO    ] ================================================
[2026-06-27 08:05:57,754.754 INFO    ] Launching Daemon at Sat Jun 27 08:05:57 IST 2026
[2026-06-27 08:05:57,766.766 INFO    ] ================================================
[2026-06-27 08:05:58,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:05:58
[2026-06-27 08:05:58,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:05:58,586.586 INFO    ] Initializing speech engine...
[2026-06-27 08:05:58,591.591 INFO    ] 2026-06-27 08:05:58
[2026-06-27 08:05:58,793.793 INFO    ] 2026-06-27 08:05:58
[2026-06-27 08:05:58,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:05:59,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:05:59,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:05:59,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:05:59,201.201 INFO    ] time= 27/06/2026 08:05:59
[2026-06-27 08:05:59,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:05:59,241.241 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:05:59,338.338 INFO    ] No existing commands found in stream
[2026-06-27 08:06:04,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:06:04,349.349 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-27 08:06:06,362.362 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 08:06:06,363.363 INFO    ] Checking for system updates...
[2026-06-27 08:06:06,385.385 INFO    ] 200
[2026-06-27 08:06:06,387.387 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:06:06,417.417 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:06:06,418.418 INFO    ] No update needed
[2026-06-27 08:06:06,420.420 INFO    ] Checking for camera pi updates...
[2026-06-27 08:06:06,442.442 INFO    ] 200
[2026-06-27 08:06:06,444.444 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:06:06,468.468 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:06:06,506.506 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:06:06,507.507 INFO    ] No camera update needed
[2026-06-27 08:06:06,509.509 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:06:06,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:06:06,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:06:06,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:06:08,556.556 INFO    ] ================================================
[2026-06-27 08:06:08,570.570 INFO    ] Launching Daemon at Sat Jun 27 08:06:08 IST 2026
[2026-06-27 08:06:08,581.581 INFO    ] ================================================
[2026-06-27 08:06:08,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:06:08
[2026-06-27 08:06:09,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:06:09,442.442 INFO    ] Initializing speech engine...
[2026-06-27 08:06:09,447.447 INFO    ] 2026-06-27 08:06:09
[2026-06-27 08:06:09,654.654 INFO    ] 2026-06-27 08:06:09
[2026-06-27 08:06:09,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:06:09,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:06:09,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:06:10,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:06:10,093.093 INFO    ] time= 27/06/2026 08:06:10
[2026-06-27 08:06:10,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:06:10,105.105 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:06:10,172.172 INFO    ] No existing commands found in stream
[2026-06-27 08:06:15,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:06:15,187.187 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-27 08:06:16,942.942 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:06:16,944.944 INFO    ] Checking for system updates...
[2026-06-27 08:06:16,965.965 INFO    ] 200
[2026-06-27 08:06:16,966.966 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:06:16,997.997 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:06:16,999.999 INFO    ] No update needed
[2026-06-27 08:06:17,000.000 INFO    ] Checking for camera pi updates...
[2026-06-27 08:06:17,021.021 INFO    ] 200
[2026-06-27 08:06:17,022.022 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:06:17,048.048 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:06:17,086.086 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:06:17,087.087 INFO    ] No camera update needed
[2026-06-27 08:06:17,089.089 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:06:17,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:06:17,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:06:17,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:06:19,136.136 INFO    ] ================================================
[2026-06-27 08:06:19,151.151 INFO    ] Launching Daemon at Sat Jun 27 08:06:19 IST 2026
[2026-06-27 08:06:19,162.162 INFO    ] ================================================
[2026-06-27 08:06:19,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:06:19
[2026-06-27 08:06:19,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:06:19,985.985 INFO    ] Initializing speech engine...
[2026-06-27 08:06:19,989.989 INFO    ] 2026-06-27 08:06:19
[2026-06-27 08:06:20,195.195 INFO    ] 2026-06-27 08:06:20
[2026-06-27 08:06:20,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:06:20,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:06:20,409.409 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:06:20,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:06:20,614.614 INFO    ] time= 27/06/2026 08:06:20
[2026-06-27 08:06:20,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:06:20,640.640 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:06:20,709.709 INFO    ] No existing commands found in stream
[2026-06-27 08:06:25,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:06:25,719.719 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-27 08:06:26,793.793 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 08:06:26,795.795 INFO    ] Checking for system updates...
[2026-06-27 08:06:26,816.816 INFO    ] 200
[2026-06-27 08:06:26,817.817 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:06:26,848.848 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:06:26,849.849 INFO    ] No update needed
[2026-06-27 08:06:26,850.850 INFO    ] Checking for camera pi updates...
[2026-06-27 08:06:26,871.871 INFO    ] 200
[2026-06-27 08:06:26,872.872 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:06:26,896.896 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:06:26,936.936 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:06:26,937.937 INFO    ] No camera update needed
[2026-06-27 08:06:26,939.939 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:06:26,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:06:26,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:06:26,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:06:28,985.985 INFO    ] ================================================
[2026-06-27 08:06:29,001.001 INFO    ] Launching Daemon at Sat Jun 27 08:06:28 IST 2026
[2026-06-27 08:06:29,011.011 INFO    ] ================================================
[2026-06-27 08:06:29,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:06:29
[2026-06-27 08:06:29,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:06:29,822.822 INFO    ] Initializing speech engine...
[2026-06-27 08:06:29,830.830 INFO    ] 2026-06-27 08:06:29
[2026-06-27 08:06:30,056.056 INFO    ] 2026-06-27 08:06:30
[2026-06-27 08:06:30,087.087 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:06:30,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:06:30,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:06:30,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:06:30,484.484 INFO    ] time= 27/06/2026 08:06:30
[2026-06-27 08:06:30,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:06:30,536.536 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:06:30,611.611 INFO    ] No existing commands found in stream
[2026-06-27 08:06:35,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:06:35,625.625 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-27 08:06:38,107.107 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 08:06:38,108.108 INFO    ] Checking for system updates...
[2026-06-27 08:06:38,129.129 INFO    ] 200
[2026-06-27 08:06:38,130.130 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:06:38,166.166 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:06:38,167.167 INFO    ] No update needed
[2026-06-27 08:06:38,168.168 INFO    ] Checking for camera pi updates...
[2026-06-27 08:06:38,188.188 INFO    ] 200
[2026-06-27 08:06:38,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:06:38,213.213 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:06:38,249.249 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:06:38,250.250 INFO    ] No camera update needed
[2026-06-27 08:06:38,251.251 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:06:38,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:06:38,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:06:38,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:06:40,297.297 INFO    ] ================================================
[2026-06-27 08:06:40,312.312 INFO    ] Launching Daemon at Sat Jun 27 08:06:40 IST 2026
[2026-06-27 08:06:40,323.323 INFO    ] ================================================
[2026-06-27 08:06:40,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:06:40
[2026-06-27 08:06:40,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:06:41,113.113 INFO    ] Initializing speech engine...
[2026-06-27 08:06:41,117.117 INFO    ] 2026-06-27 08:06:41
[2026-06-27 08:06:41,324.324 INFO    ] 2026-06-27 08:06:41
[2026-06-27 08:06:41,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:06:41,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:06:41,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:06:41,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:06:41,749.749 INFO    ] time= 27/06/2026 08:06:41
[2026-06-27 08:06:41,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:06:41,777.777 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:06:41,867.867 INFO    ] No existing commands found in stream
[2026-06-27 08:06:46,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:06:46,885.885 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-27 08:06:51,184.184 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:06:51,186.186 INFO    ] Checking for system updates...
[2026-06-27 08:06:51,213.213 INFO    ] 200
[2026-06-27 08:06:51,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:06:51,250.250 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:06:51,251.251 INFO    ] No update needed
[2026-06-27 08:06:51,253.253 INFO    ] Checking for camera pi updates...
[2026-06-27 08:06:51,272.272 INFO    ] 200
[2026-06-27 08:06:51,274.274 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:06:51,298.298 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:06:51,336.336 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:06:51,337.337 INFO    ] No camera update needed
[2026-06-27 08:06:51,338.338 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:06:51,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:06:51,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:06:51,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:06:53,386.386 INFO    ] ================================================
[2026-06-27 08:06:53,402.402 INFO    ] Launching Daemon at Sat Jun 27 08:06:53 IST 2026
[2026-06-27 08:06:53,413.413 INFO    ] ================================================
[2026-06-27 08:06:53,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:06:53
[2026-06-27 08:06:54,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:06:54,223.223 INFO    ] Initializing speech engine...
[2026-06-27 08:06:54,231.231 INFO    ] 2026-06-27 08:06:54
[2026-06-27 08:06:54,461.461 INFO    ] 2026-06-27 08:06:54
[2026-06-27 08:06:54,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:06:54,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:06:54,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:06:54,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:06:54,894.894 INFO    ] time= 27/06/2026 08:06:54
[2026-06-27 08:06:54,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:06:54,944.944 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:06:55,018.018 INFO    ] No existing commands found in stream
[2026-06-27 08:07:00,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:07:00,035.035 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-27 08:07:00,496.496 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:07:00,498.498 INFO    ] Checking for system updates...
[2026-06-27 08:07:00,518.518 INFO    ] 200
[2026-06-27 08:07:00,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:07:00,553.553 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:07:00,554.554 INFO    ] No update needed
[2026-06-27 08:07:00,555.555 INFO    ] Checking for camera pi updates...
[2026-06-27 08:07:00,575.575 INFO    ] 200
[2026-06-27 08:07:00,576.576 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:07:00,603.603 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:07:00,651.651 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:07:00,653.653 INFO    ] No camera update needed
[2026-06-27 08:07:00,654.654 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:07:00,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:07:00,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:07:00,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:07:02,698.698 INFO    ] ================================================
[2026-06-27 08:07:02,708.708 INFO    ] Launching Daemon at Sat Jun 27 08:07:02 IST 2026
[2026-06-27 08:07:02,714.714 INFO    ] ================================================
[2026-06-27 08:07:03,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:07:03
[2026-06-27 08:07:03,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:07:03,489.489 INFO    ] Initializing speech engine...
[2026-06-27 08:07:03,500.500 INFO    ] 2026-06-27 08:07:03
[2026-06-27 08:07:03,706.706 INFO    ] 2026-06-27 08:07:03
[2026-06-27 08:07:03,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:07:03,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:07:03,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:07:04,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:07:04,133.133 INFO    ] time= 27/06/2026 08:07:04
[2026-06-27 08:07:04,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:07:04,163.163 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:07:04,230.230 INFO    ] No existing commands found in stream
[2026-06-27 08:07:09,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:07:09,244.244 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-27 08:07:09,706.706 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 08:07:09,708.708 INFO    ] Checking for system updates...
[2026-06-27 08:07:09,729.729 INFO    ] 200
[2026-06-27 08:07:09,730.730 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:07:09,763.763 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:07:09,764.764 INFO    ] No update needed
[2026-06-27 08:07:09,766.766 INFO    ] Checking for camera pi updates...
[2026-06-27 08:07:09,788.788 INFO    ] 200
[2026-06-27 08:07:09,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:07:09,813.813 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:07:09,859.859 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:07:09,861.861 INFO    ] No camera update needed
[2026-06-27 08:07:09,862.862 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:07:09,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:07:09,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:07:09,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:07:11,908.908 INFO    ] ================================================
[2026-06-27 08:07:11,923.923 INFO    ] Launching Daemon at Sat Jun 27 08:07:11 IST 2026
[2026-06-27 08:07:11,933.933 INFO    ] ================================================
[2026-06-27 08:07:12,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:07:12
[2026-06-27 08:07:12,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:07:12,748.748 INFO    ] Initializing speech engine...
[2026-06-27 08:07:12,753.753 INFO    ] 2026-06-27 08:07:12
[2026-06-27 08:07:12,957.957 INFO    ] 2026-06-27 08:07:12
[2026-06-27 08:07:12,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:07:13,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:07:13,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:07:13,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:07:13,377.377 INFO    ] time= 27/06/2026 08:07:13
[2026-06-27 08:07:13,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:07:13,407.407 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:07:13,474.474 INFO    ] No existing commands found in stream
[2026-06-27 08:07:18,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:07:18,486.486 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-27 08:07:21,974.974 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 08:07:21,976.976 INFO    ] Checking for system updates...
[2026-06-27 08:07:21,997.997 INFO    ] 200
[2026-06-27 08:07:21,999.999 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:07:22,032.032 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:07:22,033.033 INFO    ] No update needed
[2026-06-27 08:07:22,035.035 INFO    ] Checking for camera pi updates...
[2026-06-27 08:07:22,057.057 INFO    ] 200
[2026-06-27 08:07:22,058.058 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:07:22,083.083 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:07:22,221.221 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:07:22,223.223 INFO    ] No camera update needed
[2026-06-27 08:07:22,224.224 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:07:22,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:07:22,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:07:22,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:07:24,272.272 INFO    ] ================================================
[2026-06-27 08:07:24,288.288 INFO    ] Launching Daemon at Sat Jun 27 08:07:24 IST 2026
[2026-06-27 08:07:24,300.300 INFO    ] ================================================
[2026-06-27 08:07:24,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:07:24
[2026-06-27 08:07:24,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:07:25,127.127 INFO    ] Initializing speech engine...
[2026-06-27 08:07:25,132.132 INFO    ] 2026-06-27 08:07:25
[2026-06-27 08:07:25,337.337 INFO    ] 2026-06-27 08:07:25
[2026-06-27 08:07:25,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:07:25,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:07:25,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:07:25,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:07:25,762.762 INFO    ] time= 27/06/2026 08:07:25
[2026-06-27 08:07:25,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:07:25,792.792 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:07:25,860.860 INFO    ] No existing commands found in stream
[2026-06-27 08:07:30,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:07:30,877.877 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-27 08:07:33,367.367 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 08:07:33,369.369 INFO    ] Checking for system updates...
[2026-06-27 08:07:33,391.391 INFO    ] 200
[2026-06-27 08:07:33,392.392 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:07:33,425.425 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:07:33,427.427 INFO    ] No update needed
[2026-06-27 08:07:33,428.428 INFO    ] Checking for camera pi updates...
[2026-06-27 08:07:33,448.448 INFO    ] 200
[2026-06-27 08:07:33,449.449 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:07:33,473.473 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:07:33,510.510 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:07:33,511.511 INFO    ] No camera update needed
[2026-06-27 08:07:33,513.513 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:07:33,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:07:33,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:07:33,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:07:35,559.559 INFO    ] ================================================
[2026-06-27 08:07:35,574.574 INFO    ] Launching Daemon at Sat Jun 27 08:07:35 IST 2026
[2026-06-27 08:07:35,585.585 INFO    ] ================================================
[2026-06-27 08:07:35,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:07:35
[2026-06-27 08:07:36,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:07:36,360.360 INFO    ] Initializing speech engine...
[2026-06-27 08:07:36,364.364 INFO    ] 2026-06-27 08:07:36
[2026-06-27 08:07:36,596.596 INFO    ] 2026-06-27 08:07:36
[2026-06-27 08:07:36,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:07:36,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:07:36,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:07:36,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:07:37,032.032 INFO    ] time= 27/06/2026 08:07:36
[2026-06-27 08:07:37,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:07:37,072.072 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:07:37,149.149 INFO    ] No existing commands found in stream
[2026-06-27 08:07:42,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:07:42,159.159 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-27 08:07:45,622.622 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 08:07:45,623.623 INFO    ] Checking for system updates...
[2026-06-27 08:07:45,645.645 INFO    ] 200
[2026-06-27 08:07:45,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:07:45,679.679 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:07:45,680.680 INFO    ] No update needed
[2026-06-27 08:07:45,681.681 INFO    ] Checking for camera pi updates...
[2026-06-27 08:07:45,701.701 INFO    ] 200
[2026-06-27 08:07:45,702.702 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:07:45,727.727 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:07:45,767.767 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:07:45,768.768 INFO    ] No camera update needed
[2026-06-27 08:07:45,770.770 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:07:45,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:07:45,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:07:45,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:07:47,816.816 INFO    ] ================================================
[2026-06-27 08:07:47,831.831 INFO    ] Launching Daemon at Sat Jun 27 08:07:47 IST 2026
[2026-06-27 08:07:47,841.841 INFO    ] ================================================
[2026-06-27 08:07:48,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:07:48
[2026-06-27 08:07:48,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:07:48,648.648 INFO    ] Initializing speech engine...
[2026-06-27 08:07:48,651.651 INFO    ] 2026-06-27 08:07:48
[2026-06-27 08:07:48,866.866 INFO    ] 2026-06-27 08:07:48
[2026-06-27 08:07:48,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:07:49,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:07:49,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:07:49,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:07:49,283.283 INFO    ] time= 27/06/2026 08:07:49
[2026-06-27 08:07:49,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:07:49,313.313 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:07:49,404.404 INFO    ] No existing commands found in stream
[2026-06-27 08:07:54,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:07:54,416.416 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-27 08:07:57,593.593 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:07:57,595.595 INFO    ] Checking for system updates...
[2026-06-27 08:07:57,616.616 INFO    ] 200
[2026-06-27 08:07:57,617.617 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:07:57,648.648 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:07:57,650.650 INFO    ] No update needed
[2026-06-27 08:07:57,651.651 INFO    ] Checking for camera pi updates...
[2026-06-27 08:07:57,671.671 INFO    ] 200
[2026-06-27 08:07:57,672.672 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:07:57,696.696 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:07:57,738.738 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:07:57,739.739 INFO    ] No camera update needed
[2026-06-27 08:07:57,741.741 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:07:57,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:07:57,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:07:57,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:07:59,787.787 INFO    ] ================================================
[2026-06-27 08:07:59,802.802 INFO    ] Launching Daemon at Sat Jun 27 08:07:59 IST 2026
[2026-06-27 08:07:59,812.812 INFO    ] ================================================
[2026-06-27 08:08:00,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:08:00
[2026-06-27 08:08:00,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:08:00,631.631 INFO    ] Initializing speech engine...
[2026-06-27 08:08:00,642.642 INFO    ] 2026-06-27 08:08:00
[2026-06-27 08:08:00,847.847 INFO    ] 2026-06-27 08:08:00
[2026-06-27 08:08:00,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:08:00,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:08:01,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:08:01,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:08:01,251.251 INFO    ] time= 27/06/2026 08:08:01
[2026-06-27 08:08:01,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:08:01,256.256 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:08:01,344.344 INFO    ] No existing commands found in stream
[2026-06-27 08:08:06,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:08:06,357.357 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-27 08:08:10,177.177 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:08:10,179.179 INFO    ] Checking for system updates...
[2026-06-27 08:08:10,206.206 INFO    ] 200
[2026-06-27 08:08:10,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:08:10,242.242 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:08:10,244.244 INFO    ] No update needed
[2026-06-27 08:08:10,246.246 INFO    ] Checking for camera pi updates...
[2026-06-27 08:08:10,268.268 INFO    ] 200
[2026-06-27 08:08:10,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:08:10,301.301 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:08:10,342.342 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:08:10,343.343 INFO    ] No camera update needed
[2026-06-27 08:08:10,345.345 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:08:10,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:08:10,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:08:10,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:08:12,380.380 INFO    ] ================================================
[2026-06-27 08:08:12,388.388 INFO    ] Launching Daemon at Sat Jun 27 08:08:12 IST 2026
[2026-06-27 08:08:12,395.395 INFO    ] ================================================
[2026-06-27 08:08:12,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:08:12
[2026-06-27 08:08:13,054.054 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:08:13,209.209 INFO    ] Initializing speech engine...
[2026-06-27 08:08:13,215.215 INFO    ] 2026-06-27 08:08:13
[2026-06-27 08:08:13,426.426 INFO    ] 2026-06-27 08:08:13
[2026-06-27 08:08:13,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:08:13,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:08:13,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:08:13,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:08:13,855.855 INFO    ] time= 27/06/2026 08:08:13
[2026-06-27 08:08:13,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:08:13,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:08:13,955.955 INFO    ] No existing commands found in stream
[2026-06-27 08:08:18,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:08:18,972.972 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-27 08:08:20,918.918 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:08:20,920.920 INFO    ] Checking for system updates...
[2026-06-27 08:08:20,942.942 INFO    ] 200
[2026-06-27 08:08:20,943.943 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:08:20,976.976 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:08:20,977.977 INFO    ] No update needed
[2026-06-27 08:08:20,978.978 INFO    ] Checking for camera pi updates...
[2026-06-27 08:08:20,998.998 INFO    ] 200
[2026-06-27 08:08:20,999.999 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:08:21,022.022 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:08:21,071.071 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:08:21,072.072 INFO    ] No camera update needed
[2026-06-27 08:08:21,074.074 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:08:21,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:08:21,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:08:21,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:08:23,119.119 INFO    ] ================================================
[2026-06-27 08:08:23,135.135 INFO    ] Launching Daemon at Sat Jun 27 08:08:23 IST 2026
[2026-06-27 08:08:23,146.146 INFO    ] ================================================
[2026-06-27 08:08:23,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:08:23
[2026-06-27 08:08:23,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:08:24,007.007 INFO    ] Initializing speech engine...
[2026-06-27 08:08:24,015.015 INFO    ] 2026-06-27 08:08:24
[2026-06-27 08:08:24,223.223 INFO    ] 2026-06-27 08:08:24
[2026-06-27 08:08:24,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:08:24,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:08:24,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:08:24,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:08:24,663.663 INFO    ] time= 27/06/2026 08:08:24
[2026-06-27 08:08:24,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:08:24,671.671 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:08:24,738.738 INFO    ] No existing commands found in stream
[2026-06-27 08:08:29,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:08:29,756.756 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-27 08:08:33,144.144 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:08:33,146.146 INFO    ] Checking for system updates...
[2026-06-27 08:08:33,169.169 INFO    ] 200
[2026-06-27 08:08:33,170.170 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:08:33,201.201 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:08:33,202.202 INFO    ] No update needed
[2026-06-27 08:08:33,204.204 INFO    ] Checking for camera pi updates...
[2026-06-27 08:08:33,227.227 INFO    ] 200
[2026-06-27 08:08:33,228.228 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:08:33,257.257 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:08:33,299.299 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:08:33,300.300 INFO    ] No camera update needed
[2026-06-27 08:08:33,302.302 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:08:33,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:08:33,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:08:33,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:08:35,349.349 INFO    ] ================================================
[2026-06-27 08:08:35,365.365 INFO    ] Launching Daemon at Sat Jun 27 08:08:35 IST 2026
[2026-06-27 08:08:35,376.376 INFO    ] ================================================
[2026-06-27 08:08:35,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:08:35
[2026-06-27 08:08:36,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:08:36,210.210 INFO    ] Initializing speech engine...
[2026-06-27 08:08:36,220.220 INFO    ] 2026-06-27 08:08:36
[2026-06-27 08:08:36,423.423 INFO    ] 2026-06-27 08:08:36
[2026-06-27 08:08:36,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:08:36,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:08:36,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:08:36,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:08:36,845.845 INFO    ] time= 27/06/2026 08:08:36
[2026-06-27 08:08:36,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:08:36,872.872 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:08:36,939.939 INFO    ] No existing commands found in stream
[2026-06-27 08:08:41,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:08:41,951.951 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-27 08:08:45,818.818 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 08:08:45,819.819 INFO    ] Checking for system updates...
[2026-06-27 08:08:45,842.842 INFO    ] 200
[2026-06-27 08:08:45,843.843 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:08:45,874.874 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:08:45,875.875 INFO    ] No update needed
[2026-06-27 08:08:45,877.877 INFO    ] Checking for camera pi updates...
[2026-06-27 08:08:45,898.898 INFO    ] 200
[2026-06-27 08:08:45,899.899 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:08:45,922.922 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:08:45,944.944 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:08:45,945.945 INFO    ] No camera update needed
[2026-06-27 08:08:45,946.946 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:08:45,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:08:45,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:08:45,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:08:47,993.993 INFO    ] ================================================
[2026-06-27 08:08:48,009.009 INFO    ] Launching Daemon at Sat Jun 27 08:08:48 IST 2026
[2026-06-27 08:08:48,022.022 INFO    ] ================================================
[2026-06-27 08:08:48,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:08:48
[2026-06-27 08:08:48,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:08:48,818.818 INFO    ] Initializing speech engine...
[2026-06-27 08:08:48,828.828 INFO    ] 2026-06-27 08:08:48
[2026-06-27 08:08:49,036.036 INFO    ] 2026-06-27 08:08:49
[2026-06-27 08:08:49,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:08:49,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:08:49,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:08:49,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:08:49,452.452 INFO    ] time= 27/06/2026 08:08:49
[2026-06-27 08:08:49,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:08:49,492.492 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:08:49,585.585 INFO    ] No existing commands found in stream
[2026-06-27 08:08:54,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:08:54,602.602 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-27 08:08:57,541.541 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 08:08:57,543.543 INFO    ] Checking for system updates...
[2026-06-27 08:08:57,564.564 INFO    ] 200
[2026-06-27 08:08:57,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:08:57,595.595 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:08:57,597.597 INFO    ] No update needed
[2026-06-27 08:08:57,598.598 INFO    ] Checking for camera pi updates...
[2026-06-27 08:08:57,618.618 INFO    ] 200
[2026-06-27 08:08:57,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:08:57,642.642 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:08:57,677.677 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:08:57,678.678 INFO    ] No camera update needed
[2026-06-27 08:08:57,679.679 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:08:57,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:08:57,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:08:57,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:08:59,732.732 INFO    ] ================================================
[2026-06-27 08:08:59,747.747 INFO    ] Launching Daemon at Sat Jun 27 08:08:59 IST 2026
[2026-06-27 08:08:59,758.758 INFO    ] ================================================
[2026-06-27 08:09:00,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:09:00
[2026-06-27 08:09:00,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:09:00,585.585 INFO    ] Initializing speech engine...
[2026-06-27 08:09:00,589.589 INFO    ] 2026-06-27 08:09:00
[2026-06-27 08:09:00,799.799 INFO    ] 2026-06-27 08:09:00
[2026-06-27 08:09:00,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:09:00,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:09:01,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:09:01,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:09:01,223.223 INFO    ] time= 27/06/2026 08:09:01
[2026-06-27 08:09:01,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:09:01,259.259 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:09:01,327.327 INFO    ] No existing commands found in stream
[2026-06-27 08:09:06,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:09:06,339.339 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-27 08:09:08,981.981 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 08:09:08,983.983 INFO    ] Checking for system updates...
[2026-06-27 08:09:09,005.005 INFO    ] 200
[2026-06-27 08:09:09,006.006 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:09:09,037.037 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:09:09,038.038 INFO    ] No update needed
[2026-06-27 08:09:09,039.039 INFO    ] Checking for camera pi updates...
[2026-06-27 08:09:09,060.060 INFO    ] 200
[2026-06-27 08:09:09,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:09:09,086.086 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:09:09,135.135 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:09:09,137.137 INFO    ] No camera update needed
[2026-06-27 08:09:09,138.138 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:09:09,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:09:09,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:09:09,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:09:11,183.183 INFO    ] ================================================
[2026-06-27 08:09:11,199.199 INFO    ] Launching Daemon at Sat Jun 27 08:09:11 IST 2026
[2026-06-27 08:09:11,210.210 INFO    ] ================================================
[2026-06-27 08:09:11,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:09:11
[2026-06-27 08:09:11,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:09:12,070.070 INFO    ] Initializing speech engine...
[2026-06-27 08:09:12,076.076 INFO    ] 2026-06-27 08:09:12
[2026-06-27 08:09:12,286.286 INFO    ] 2026-06-27 08:09:12
[2026-06-27 08:09:12,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:09:12,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:09:12,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:09:12,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:09:12,695.695 INFO    ] time= 27/06/2026 08:09:12
[2026-06-27 08:09:12,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:09:12,733.733 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:09:12,800.800 INFO    ] No existing commands found in stream
[2026-06-27 08:09:17,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:09:17,811.811 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-27 08:09:19,101.101 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:09:19,102.102 INFO    ] Checking for system updates...
[2026-06-27 08:09:19,124.124 INFO    ] 200
[2026-06-27 08:09:19,126.126 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:09:19,158.158 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:09:19,160.160 INFO    ] No update needed
[2026-06-27 08:09:19,161.161 INFO    ] Checking for camera pi updates...
[2026-06-27 08:09:19,181.181 INFO    ] 200
[2026-06-27 08:09:19,182.182 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:09:19,207.207 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:09:19,249.249 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:09:19,250.250 INFO    ] No camera update needed
[2026-06-27 08:09:19,251.251 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:09:19,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:09:19,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:09:19,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:09:21,299.299 INFO    ] ================================================
[2026-06-27 08:09:21,315.315 INFO    ] Launching Daemon at Sat Jun 27 08:09:21 IST 2026
[2026-06-27 08:09:21,327.327 INFO    ] ================================================
[2026-06-27 08:09:21,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:09:21
[2026-06-27 08:09:21,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:09:22,112.112 INFO    ] Initializing speech engine...
[2026-06-27 08:09:22,122.122 INFO    ] 2026-06-27 08:09:22
[2026-06-27 08:09:22,325.325 INFO    ] 2026-06-27 08:09:22
[2026-06-27 08:09:22,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:09:22,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:09:22,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:09:22,682.682 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:09:22,749.749 INFO    ] time= 27/06/2026 08:09:22
[2026-06-27 08:09:22,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:09:22,779.779 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:09:22,844.844 INFO    ] No existing commands found in stream
[2026-06-27 08:09:27,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:09:27,858.858 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-27 08:09:29,093.093 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:09:29,094.094 INFO    ] Checking for system updates...
[2026-06-27 08:09:29,115.115 INFO    ] 200
[2026-06-27 08:09:29,117.117 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:09:29,149.149 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:09:29,150.150 INFO    ] No update needed
[2026-06-27 08:09:29,152.152 INFO    ] Checking for camera pi updates...
[2026-06-27 08:09:29,172.172 INFO    ] 200
[2026-06-27 08:09:29,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:09:29,197.197 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:09:29,340.340 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:09:29,342.342 INFO    ] No camera update needed
[2026-06-27 08:09:29,343.343 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:09:29,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:09:29,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:09:29,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:09:31,392.392 INFO    ] ================================================
[2026-06-27 08:09:31,409.409 INFO    ] Launching Daemon at Sat Jun 27 08:09:31 IST 2026
[2026-06-27 08:09:31,420.420 INFO    ] ================================================
[2026-06-27 08:09:31,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:09:31
[2026-06-27 08:09:32,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:09:32,283.283 INFO    ] Initializing speech engine...
[2026-06-27 08:09:32,286.286 INFO    ] 2026-06-27 08:09:32
[2026-06-27 08:09:32,516.516 INFO    ] 2026-06-27 08:09:32
[2026-06-27 08:09:32,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:09:32,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:09:32,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:09:32,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:09:32,949.949 INFO    ] time= 27/06/2026 08:09:32
[2026-06-27 08:09:32,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:09:33,003.003 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:09:33,090.090 INFO    ] No existing commands found in stream
[2026-06-27 08:09:38,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:09:38,101.101 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-27 08:09:39,397.397 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 08:09:39,399.399 INFO    ] Checking for system updates...
[2026-06-27 08:09:39,424.424 INFO    ] 200
[2026-06-27 08:09:39,425.425 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:09:39,459.459 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:09:39,460.460 INFO    ] No update needed
[2026-06-27 08:09:39,462.462 INFO    ] Checking for camera pi updates...
[2026-06-27 08:09:39,484.484 INFO    ] 200
[2026-06-27 08:09:39,485.485 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:09:39,510.510 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:09:39,556.556 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:09:39,557.557 INFO    ] No camera update needed
[2026-06-27 08:09:39,559.559 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:09:39,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:09:39,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:09:39,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:09:41,605.605 INFO    ] ================================================
[2026-06-27 08:09:41,621.621 INFO    ] Launching Daemon at Sat Jun 27 08:09:41 IST 2026
[2026-06-27 08:09:41,632.632 INFO    ] ================================================
[2026-06-27 08:09:41,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:09:41
[2026-06-27 08:09:42,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:09:42,407.407 INFO    ] Initializing speech engine...
[2026-06-27 08:09:42,410.410 INFO    ] 2026-06-27 08:09:42
[2026-06-27 08:09:42,630.630 INFO    ] 2026-06-27 08:09:42
[2026-06-27 08:09:42,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:09:42,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:09:42,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:09:42,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:09:43,044.044 INFO    ] time= 27/06/2026 08:09:42
[2026-06-27 08:09:43,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:09:43,080.080 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:09:43,177.177 INFO    ] No existing commands found in stream
[2026-06-27 08:09:48,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:09:48,188.188 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-27 08:09:52,328.328 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:09:52,329.329 INFO    ] Checking for system updates...
[2026-06-27 08:09:52,352.352 INFO    ] 200
[2026-06-27 08:09:52,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:09:52,385.385 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:09:52,386.386 INFO    ] No update needed
[2026-06-27 08:09:52,388.388 INFO    ] Checking for camera pi updates...
[2026-06-27 08:09:52,407.407 INFO    ] 200
[2026-06-27 08:09:52,409.409 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:09:52,434.434 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:09:52,471.471 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:09:52,473.473 INFO    ] No camera update needed
[2026-06-27 08:09:52,474.474 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:09:52,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:09:52,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:09:52,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:09:54,513.513 INFO    ] ================================================
[2026-06-27 08:09:54,521.521 INFO    ] Launching Daemon at Sat Jun 27 08:09:54 IST 2026
[2026-06-27 08:09:54,527.527 INFO    ] ================================================
[2026-06-27 08:09:54,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:09:54
[2026-06-27 08:09:55,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:09:55,341.341 INFO    ] Initializing speech engine...
[2026-06-27 08:09:55,345.345 INFO    ] 2026-06-27 08:09:55
[2026-06-27 08:09:55,553.553 INFO    ] 2026-06-27 08:09:55
[2026-06-27 08:09:55,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:09:55,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:09:55,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:09:55,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:09:56,000.000 INFO    ] time= 27/06/2026 08:09:55
[2026-06-27 08:09:56,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:09:56,007.007 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:09:56,073.073 INFO    ] No existing commands found in stream
[2026-06-27 08:10:01,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:10:01,087.087 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-27 08:10:07,842.842 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 08:10:07,845.845 INFO    ] Checking for system updates...
[2026-06-27 08:10:07,885.885 INFO    ] 200
[2026-06-27 08:10:07,888.888 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:10:07,951.951 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:10:07,953.953 INFO    ] No update needed
[2026-06-27 08:10:07,956.956 INFO    ] Checking for camera pi updates...
[2026-06-27 08:10:07,988.988 INFO    ] 200
[2026-06-27 08:10:07,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:10:08,015.015 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:10:08,054.054 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:10:08,055.055 INFO    ] No camera update needed
[2026-06-27 08:10:08,056.056 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:10:08,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:10:08,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:10:08,063.063 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:10:10,103.103 INFO    ] ================================================
[2026-06-27 08:10:10,119.119 INFO    ] Launching Daemon at Sat Jun 27 08:10:10 IST 2026
[2026-06-27 08:10:10,130.130 INFO    ] ================================================
[2026-06-27 08:10:10,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:10:10
[2026-06-27 08:10:10,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:10:10,921.921 INFO    ] Initializing speech engine...
[2026-06-27 08:10:10,934.934 INFO    ] 2026-06-27 08:10:10
[2026-06-27 08:10:11,143.143 INFO    ] 2026-06-27 08:10:11
[2026-06-27 08:10:11,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:10:11,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:10:11,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:10:11,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:10:11,551.551 INFO    ] time= 27/06/2026 08:10:11
[2026-06-27 08:10:11,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:10:11,592.592 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:10:11,662.662 INFO    ] No existing commands found in stream
[2026-06-27 08:10:16,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:10:16,676.676 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-27 08:10:19,813.813 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:10:19,815.815 INFO    ] Checking for system updates...
[2026-06-27 08:10:19,837.837 INFO    ] 200
[2026-06-27 08:10:19,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:10:19,869.869 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:10:19,870.870 INFO    ] No update needed
[2026-06-27 08:10:19,871.871 INFO    ] Checking for camera pi updates...
[2026-06-27 08:10:19,892.892 INFO    ] 200
[2026-06-27 08:10:19,893.893 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:10:19,918.918 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:10:19,956.956 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:10:19,957.957 INFO    ] No camera update needed
[2026-06-27 08:10:19,958.958 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:10:19,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:10:19,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:10:19,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:10:22,006.006 INFO    ] ================================================
[2026-06-27 08:10:22,023.023 INFO    ] Launching Daemon at Sat Jun 27 08:10:22 IST 2026
[2026-06-27 08:10:22,035.035 INFO    ] ================================================
[2026-06-27 08:10:22,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:10:22
[2026-06-27 08:10:22,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:10:22,839.839 INFO    ] Initializing speech engine...
[2026-06-27 08:10:22,851.851 INFO    ] 2026-06-27 08:10:22
[2026-06-27 08:10:23,059.059 INFO    ] 2026-06-27 08:10:23
[2026-06-27 08:10:23,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:10:23,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:10:23,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:10:23,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:10:23,477.477 INFO    ] time= 27/06/2026 08:10:23
[2026-06-27 08:10:23,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:10:23,508.508 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:10:23,575.575 INFO    ] No existing commands found in stream
[2026-06-27 08:10:28,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:10:28,591.591 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-27 08:10:32,190.190 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:10:32,192.192 INFO    ] Checking for system updates...
[2026-06-27 08:10:32,216.216 INFO    ] 200
[2026-06-27 08:10:32,218.218 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:10:32,254.254 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:10:32,255.255 INFO    ] No update needed
[2026-06-27 08:10:32,257.257 INFO    ] Checking for camera pi updates...
[2026-06-27 08:10:32,280.280 INFO    ] 200
[2026-06-27 08:10:32,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:10:32,311.311 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:10:32,347.347 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:10:32,348.348 INFO    ] No camera update needed
[2026-06-27 08:10:32,350.350 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:10:32,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:10:32,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:10:32,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:10:34,398.398 INFO    ] ================================================
[2026-06-27 08:10:34,413.413 INFO    ] Launching Daemon at Sat Jun 27 08:10:34 IST 2026
[2026-06-27 08:10:34,423.423 INFO    ] ================================================
[2026-06-27 08:10:34,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:10:34
[2026-06-27 08:10:35,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:10:35,202.202 INFO    ] Initializing speech engine...
[2026-06-27 08:10:35,207.207 INFO    ] 2026-06-27 08:10:35
[2026-06-27 08:10:35,413.413 INFO    ] 2026-06-27 08:10:35
[2026-06-27 08:10:35,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:10:35,620.620 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:10:35,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:10:35,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:10:35,832.832 INFO    ] time= 27/06/2026 08:10:35
[2026-06-27 08:10:35,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:10:35,860.860 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:10:35,925.925 INFO    ] No existing commands found in stream
[2026-06-27 08:10:40,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:10:40,938.938 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-27 08:10:41,738.738 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:10:41,739.739 INFO    ] Checking for system updates...
[2026-06-27 08:10:41,760.760 INFO    ] 200
[2026-06-27 08:10:41,761.761 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:10:41,791.791 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:10:41,793.793 INFO    ] No update needed
[2026-06-27 08:10:41,794.794 INFO    ] Checking for camera pi updates...
[2026-06-27 08:10:41,814.814 INFO    ] 200
[2026-06-27 08:10:41,815.815 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:10:41,839.839 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:10:41,880.880 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:10:41,881.881 INFO    ] No camera update needed
[2026-06-27 08:10:41,882.882 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:10:41,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:10:41,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:10:41,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:10:43,928.928 INFO    ] ================================================
[2026-06-27 08:10:43,943.943 INFO    ] Launching Daemon at Sat Jun 27 08:10:43 IST 2026
[2026-06-27 08:10:43,954.954 INFO    ] ================================================
[2026-06-27 08:10:44,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:10:44
[2026-06-27 08:10:44,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:10:44,762.762 INFO    ] Initializing speech engine...
[2026-06-27 08:10:44,771.771 INFO    ] 2026-06-27 08:10:44
[2026-06-27 08:10:44,978.978 INFO    ] 2026-06-27 08:10:44
[2026-06-27 08:10:45,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:10:45,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:10:45,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:10:45,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:10:45,398.398 INFO    ] time= 27/06/2026 08:10:45
[2026-06-27 08:10:45,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:10:45,427.427 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:10:45,494.494 INFO    ] No existing commands found in stream
[2026-06-27 08:10:50,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:10:50,506.506 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-27 08:10:53,143.143 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 08:10:53,145.145 INFO    ] Checking for system updates...
[2026-06-27 08:10:53,166.166 INFO    ] 200
[2026-06-27 08:10:53,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:10:53,205.205 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:10:53,206.206 INFO    ] No update needed
[2026-06-27 08:10:53,208.208 INFO    ] Checking for camera pi updates...
[2026-06-27 08:10:53,228.228 INFO    ] 200
[2026-06-27 08:10:53,229.229 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:10:53,254.254 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:10:53,293.293 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:10:53,295.295 INFO    ] No camera update needed
[2026-06-27 08:10:53,296.296 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:10:53,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:10:53,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:10:53,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:10:55,342.342 INFO    ] ================================================
[2026-06-27 08:10:55,357.357 INFO    ] Launching Daemon at Sat Jun 27 08:10:55 IST 2026
[2026-06-27 08:10:55,368.368 INFO    ] ================================================
[2026-06-27 08:10:55,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:10:55
[2026-06-27 08:10:56,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:10:56,174.174 INFO    ] Initializing speech engine...
[2026-06-27 08:10:56,179.179 INFO    ] 2026-06-27 08:10:56
[2026-06-27 08:10:56,385.385 INFO    ] 2026-06-27 08:10:56
[2026-06-27 08:10:56,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:10:56,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:10:56,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:10:56,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:10:56,810.810 INFO    ] time= 27/06/2026 08:10:56
[2026-06-27 08:10:56,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:10:56,839.839 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:10:56,905.905 INFO    ] No existing commands found in stream
[2026-06-27 08:11:01,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:11:01,917.917 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-27 08:11:02,364.364 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 08:11:02,366.366 INFO    ] Checking for system updates...
[2026-06-27 08:11:02,388.388 INFO    ] 200
[2026-06-27 08:11:02,390.390 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:11:02,421.421 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:11:02,422.422 INFO    ] No update needed
[2026-06-27 08:11:02,424.424 INFO    ] Checking for camera pi updates...
[2026-06-27 08:11:02,444.444 INFO    ] 200
[2026-06-27 08:11:02,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:11:02,470.470 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:11:02,493.493 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:11:02,494.494 INFO    ] No camera update needed
[2026-06-27 08:11:02,495.495 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:11:02,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:11:02,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:11:02,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:11:04,542.542 INFO    ] ================================================
[2026-06-27 08:11:04,557.557 INFO    ] Launching Daemon at Sat Jun 27 08:11:04 IST 2026
[2026-06-27 08:11:04,568.568 INFO    ] ================================================
[2026-06-27 08:11:04,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:11:04
[2026-06-27 08:11:05,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:11:05,401.401 INFO    ] Initializing speech engine...
[2026-06-27 08:11:05,407.407 INFO    ] 2026-06-27 08:11:05
[2026-06-27 08:11:05,618.618 INFO    ] 2026-06-27 08:11:05
[2026-06-27 08:11:05,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:11:05,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:11:05,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:11:05,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:11:06,051.051 INFO    ] time= 27/06/2026 08:11:06
[2026-06-27 08:11:06,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:11:06,078.078 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:11:06,146.146 INFO    ] No existing commands found in stream
[2026-06-27 08:11:11,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:11:11,159.159 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-27 08:11:14,073.073 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:11:14,075.075 INFO    ] Checking for system updates...
[2026-06-27 08:11:14,096.096 INFO    ] 200
[2026-06-27 08:11:14,098.098 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:11:14,131.131 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:11:14,133.133 INFO    ] No update needed
[2026-06-27 08:11:14,134.134 INFO    ] Checking for camera pi updates...
[2026-06-27 08:11:14,158.158 INFO    ] 200
[2026-06-27 08:11:14,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:11:14,187.187 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:11:14,224.224 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:11:14,226.226 INFO    ] No camera update needed
[2026-06-27 08:11:14,227.227 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:11:14,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:11:14,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:11:14,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:11:16,274.274 INFO    ] ================================================
[2026-06-27 08:11:16,289.289 INFO    ] Launching Daemon at Sat Jun 27 08:11:16 IST 2026
[2026-06-27 08:11:16,300.300 INFO    ] ================================================
[2026-06-27 08:11:16,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:11:16
[2026-06-27 08:11:17,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:11:17,188.188 INFO    ] Initializing speech engine...
[2026-06-27 08:11:17,193.193 INFO    ] 2026-06-27 08:11:17
[2026-06-27 08:11:17,402.402 INFO    ] 2026-06-27 08:11:17
[2026-06-27 08:11:17,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:11:17,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:11:17,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:11:17,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:11:17,822.822 INFO    ] time= 27/06/2026 08:11:17
[2026-06-27 08:11:17,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:11:17,853.853 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:11:17,920.920 INFO    ] No existing commands found in stream
[2026-06-27 08:11:22,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:11:22,933.933 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-27 08:11:23,411.411 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 08:11:23,413.413 INFO    ] Checking for system updates...
[2026-06-27 08:11:23,436.436 INFO    ] 200
[2026-06-27 08:11:23,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:11:23,468.468 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:11:23,470.470 INFO    ] No update needed
[2026-06-27 08:11:23,471.471 INFO    ] Checking for camera pi updates...
[2026-06-27 08:11:23,492.492 INFO    ] 200
[2026-06-27 08:11:23,494.494 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:11:23,518.518 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:11:23,558.558 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:11:23,559.559 INFO    ] No camera update needed
[2026-06-27 08:11:23,560.560 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:11:23,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:11:23,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:11:23,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:11:25,608.608 INFO    ] ================================================
[2026-06-27 08:11:25,623.623 INFO    ] Launching Daemon at Sat Jun 27 08:11:25 IST 2026
[2026-06-27 08:11:25,634.634 INFO    ] ================================================
[2026-06-27 08:11:26,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:11:26
[2026-06-27 08:11:26,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:11:26,516.516 INFO    ] Initializing speech engine...
[2026-06-27 08:11:26,521.521 INFO    ] 2026-06-27 08:11:26
[2026-06-27 08:11:26,731.731 INFO    ] 2026-06-27 08:11:26
[2026-06-27 08:11:26,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:11:26,893.893 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:11:26,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:11:27,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:11:27,177.177 INFO    ] time= 27/06/2026 08:11:27
[2026-06-27 08:11:27,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:11:27,185.185 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:11:27,252.252 INFO    ] No existing commands found in stream
[2026-06-27 08:11:32,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:11:32,293.293 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-27 08:11:34,387.387 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:11:34,388.388 INFO    ] Checking for system updates...
[2026-06-27 08:11:34,410.410 INFO    ] 200
[2026-06-27 08:11:34,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:11:34,443.443 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:11:34,445.445 INFO    ] No update needed
[2026-06-27 08:11:34,446.446 INFO    ] Checking for camera pi updates...
[2026-06-27 08:11:34,467.467 INFO    ] 200
[2026-06-27 08:11:34,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:11:34,493.493 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:11:34,531.531 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:11:34,533.533 INFO    ] No camera update needed
[2026-06-27 08:11:34,534.534 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:11:34,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:11:34,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:11:34,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:11:36,582.582 INFO    ] ================================================
[2026-06-27 08:11:36,597.597 INFO    ] Launching Daemon at Sat Jun 27 08:11:36 IST 2026
[2026-06-27 08:11:36,608.608 INFO    ] ================================================
[2026-06-27 08:11:36,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:11:36
[2026-06-27 08:11:37,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:11:37,399.399 INFO    ] Initializing speech engine...
[2026-06-27 08:11:37,402.402 INFO    ] 2026-06-27 08:11:37
[2026-06-27 08:11:37,625.625 INFO    ] 2026-06-27 08:11:37
[2026-06-27 08:11:37,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:11:37,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:11:37,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:11:37,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:11:37,974.974 INFO    ] time= 27/06/2026 08:11:37
[2026-06-27 08:11:37,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:11:38,052.052 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:11:38,161.161 INFO    ] No existing commands found in stream
[2026-06-27 08:11:43,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:11:43,179.179 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-27 08:11:47,099.099 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 08:11:47,101.101 INFO    ] Checking for system updates...
[2026-06-27 08:11:47,123.123 INFO    ] 200
[2026-06-27 08:11:47,125.125 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:11:47,158.158 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:11:47,160.160 INFO    ] No update needed
[2026-06-27 08:11:47,161.161 INFO    ] Checking for camera pi updates...
[2026-06-27 08:11:47,185.185 INFO    ] 200
[2026-06-27 08:11:47,186.186 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:11:47,215.215 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:11:47,256.256 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:11:47,257.257 INFO    ] No camera update needed
[2026-06-27 08:11:47,259.259 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:11:47,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:11:47,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:11:47,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:11:49,307.307 INFO    ] ================================================
[2026-06-27 08:11:49,322.322 INFO    ] Launching Daemon at Sat Jun 27 08:11:49 IST 2026
[2026-06-27 08:11:49,334.334 INFO    ] ================================================
[2026-06-27 08:11:49,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:11:49
[2026-06-27 08:11:49,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:11:50,126.126 INFO    ] Initializing speech engine...
[2026-06-27 08:11:50,133.133 INFO    ] 2026-06-27 08:11:50
[2026-06-27 08:11:50,346.346 INFO    ] 2026-06-27 08:11:50
[2026-06-27 08:11:50,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:11:50,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:11:50,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:11:50,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:11:50,763.763 INFO    ] time= 27/06/2026 08:11:50
[2026-06-27 08:11:50,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:11:50,793.793 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:11:50,860.860 INFO    ] No existing commands found in stream
[2026-06-27 08:11:55,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:11:55,868.868 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-27 08:11:57,920.920 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:11:57,921.921 INFO    ] Checking for system updates...
[2026-06-27 08:11:57,942.942 INFO    ] 200
[2026-06-27 08:11:57,944.944 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:11:57,975.975 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:11:57,976.976 INFO    ] No update needed
[2026-06-27 08:11:57,977.977 INFO    ] Checking for camera pi updates...
[2026-06-27 08:11:57,997.997 INFO    ] 200
[2026-06-27 08:11:57,998.998 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:11:58,026.026 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:11:58,064.064 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:11:58,065.065 INFO    ] No camera update needed
[2026-06-27 08:11:58,067.067 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:11:58,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:11:58,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:11:58,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:12:00,113.113 INFO    ] ================================================
[2026-06-27 08:12:00,129.129 INFO    ] Launching Daemon at Sat Jun 27 08:12:00 IST 2026
[2026-06-27 08:12:00,140.140 INFO    ] ================================================
[2026-06-27 08:12:00,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:12:00
[2026-06-27 08:12:00,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:12:00,926.926 INFO    ] Initializing speech engine...
[2026-06-27 08:12:00,935.935 INFO    ] 2026-06-27 08:12:00
[2026-06-27 08:12:01,142.142 INFO    ] 2026-06-27 08:12:01
[2026-06-27 08:12:01,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:12:01,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:12:01,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:12:01,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:12:01,555.555 INFO    ] time= 27/06/2026 08:12:01
[2026-06-27 08:12:01,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:12:01,573.573 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:12:01,655.655 INFO    ] No existing commands found in stream
[2026-06-27 08:12:06,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:12:06,667.667 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-27 08:12:08,825.825 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 08:12:08,826.826 INFO    ] Checking for system updates...
[2026-06-27 08:12:08,847.847 INFO    ] 200
[2026-06-27 08:12:08,848.848 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:12:08,879.879 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:12:08,880.880 INFO    ] No update needed
[2026-06-27 08:12:08,882.882 INFO    ] Checking for camera pi updates...
[2026-06-27 08:12:08,901.901 INFO    ] 200
[2026-06-27 08:12:08,903.903 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:12:08,928.928 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:12:08,966.966 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:12:08,967.967 INFO    ] No camera update needed
[2026-06-27 08:12:08,969.969 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:12:08,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:12:08,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:12:08,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:12:11,018.018 INFO    ] ================================================
[2026-06-27 08:12:11,034.034 INFO    ] Launching Daemon at Sat Jun 27 08:12:11 IST 2026
[2026-06-27 08:12:11,046.046 INFO    ] ================================================
[2026-06-27 08:12:11,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:12:11
[2026-06-27 08:12:11,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:12:11,892.892 INFO    ] Initializing speech engine...
[2026-06-27 08:12:11,898.898 INFO    ] 2026-06-27 08:12:11
[2026-06-27 08:12:12,108.108 INFO    ] 2026-06-27 08:12:12
[2026-06-27 08:12:12,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:12:12,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:12:12,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:12:12,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:12:12,533.533 INFO    ] time= 27/06/2026 08:12:12
[2026-06-27 08:12:12,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:12:12,561.561 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:12:12,628.628 INFO    ] No existing commands found in stream
[2026-06-27 08:12:17,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:12:17,642.642 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-27 08:12:18,181.181 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:12:18,183.183 INFO    ] Checking for system updates...
[2026-06-27 08:12:18,207.207 INFO    ] 200
[2026-06-27 08:12:18,210.210 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:12:18,241.241 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:12:18,242.242 INFO    ] No update needed
[2026-06-27 08:12:18,244.244 INFO    ] Checking for camera pi updates...
[2026-06-27 08:12:18,265.265 INFO    ] 200
[2026-06-27 08:12:18,266.266 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:12:18,292.292 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:12:18,338.338 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:12:18,339.339 INFO    ] No camera update needed
[2026-06-27 08:12:18,341.341 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:12:18,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:12:18,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:12:18,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:12:20,389.389 INFO    ] ================================================
[2026-06-27 08:12:20,405.405 INFO    ] Launching Daemon at Sat Jun 27 08:12:20 IST 2026
[2026-06-27 08:12:20,416.416 INFO    ] ================================================
[2026-06-27 08:12:20,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:12:20
[2026-06-27 08:12:21,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:12:21,299.299 INFO    ] Initializing speech engine...
[2026-06-27 08:12:21,305.305 INFO    ] 2026-06-27 08:12:21
[2026-06-27 08:12:21,512.512 INFO    ] 2026-06-27 08:12:21
[2026-06-27 08:12:21,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:12:21,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:12:21,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:12:21,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:12:21,935.935 INFO    ] time= 27/06/2026 08:12:21
[2026-06-27 08:12:21,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:12:21,965.965 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:12:22,032.032 INFO    ] No existing commands found in stream
[2026-06-27 08:12:27,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:12:27,051.051 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-27 08:12:29,964.964 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 08:12:29,966.966 INFO    ] Checking for system updates...
[2026-06-27 08:12:29,989.989 INFO    ] 200
[2026-06-27 08:12:29,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:12:30,025.025 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:12:30,027.027 INFO    ] No update needed
[2026-06-27 08:12:30,028.028 INFO    ] Checking for camera pi updates...
[2026-06-27 08:12:30,048.048 INFO    ] 200
[2026-06-27 08:12:30,050.050 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:12:30,075.075 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:12:30,113.113 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:12:30,115.115 INFO    ] No camera update needed
[2026-06-27 08:12:30,116.116 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:12:30,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:12:30,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:12:30,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:12:32,157.157 INFO    ] ================================================
[2026-06-27 08:12:32,166.166 INFO    ] Launching Daemon at Sat Jun 27 08:12:32 IST 2026
[2026-06-27 08:12:32,172.172 INFO    ] ================================================
[2026-06-27 08:12:32,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:12:32
[2026-06-27 08:12:32,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:12:32,995.995 INFO    ] Initializing speech engine...
[2026-06-27 08:12:33,001.001 INFO    ] 2026-06-27 08:12:32
[2026-06-27 08:12:33,211.211 INFO    ] 2026-06-27 08:12:33
[2026-06-27 08:12:33,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:12:33,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:12:33,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:12:33,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:12:33,632.632 INFO    ] time= 27/06/2026 08:12:33
[2026-06-27 08:12:33,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:12:33,662.662 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:12:33,729.729 INFO    ] No existing commands found in stream
[2026-06-27 08:12:38,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:12:38,747.747 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-27 08:12:42,096.096 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:12:42,097.097 INFO    ] Checking for system updates...
[2026-06-27 08:12:42,119.119 INFO    ] 200
[2026-06-27 08:12:42,120.120 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:12:42,154.154 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:12:42,155.155 INFO    ] No update needed
[2026-06-27 08:12:42,157.157 INFO    ] Checking for camera pi updates...
[2026-06-27 08:12:42,181.181 INFO    ] 200
[2026-06-27 08:12:42,183.183 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:12:42,211.211 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:12:42,253.253 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:12:42,255.255 INFO    ] No camera update needed
[2026-06-27 08:12:42,256.256 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:12:42,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:12:42,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:12:42,264.264 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:12:44,304.304 INFO    ] ================================================
[2026-06-27 08:12:44,320.320 INFO    ] Launching Daemon at Sat Jun 27 08:12:44 IST 2026
[2026-06-27 08:12:44,332.332 INFO    ] ================================================
[2026-06-27 08:12:44,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:12:44
[2026-06-27 08:12:45,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:12:45,218.218 INFO    ] Initializing speech engine...
[2026-06-27 08:12:45,224.224 INFO    ] 2026-06-27 08:12:45
[2026-06-27 08:12:45,434.434 INFO    ] 2026-06-27 08:12:45
[2026-06-27 08:12:45,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:12:45,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:12:45,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:12:45,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:12:45,848.848 INFO    ] time= 27/06/2026 08:12:45
[2026-06-27 08:12:45,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:12:45,889.889 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:12:45,954.954 INFO    ] No existing commands found in stream
[2026-06-27 08:12:50,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:12:50,969.969 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-27 08:12:55,115.115 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 08:12:55,117.117 INFO    ] Checking for system updates...
[2026-06-27 08:12:55,138.138 INFO    ] 200
[2026-06-27 08:12:55,139.139 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:12:55,173.173 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:12:55,175.175 INFO    ] No update needed
[2026-06-27 08:12:55,177.177 INFO    ] Checking for camera pi updates...
[2026-06-27 08:12:55,197.197 INFO    ] 200
[2026-06-27 08:12:55,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:12:55,222.222 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:12:55,244.244 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:12:55,246.246 INFO    ] No camera update needed
[2026-06-27 08:12:55,247.247 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:12:55,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:12:55,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:12:55,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:12:57,295.295 INFO    ] ================================================
[2026-06-27 08:12:57,312.312 INFO    ] Launching Daemon at Sat Jun 27 08:12:57 IST 2026
[2026-06-27 08:12:57,324.324 INFO    ] ================================================
[2026-06-27 08:12:57,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:12:57
[2026-06-27 08:12:58,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:12:58,153.153 INFO    ] Initializing speech engine...
[2026-06-27 08:12:58,158.158 INFO    ] 2026-06-27 08:12:58
[2026-06-27 08:12:58,363.363 INFO    ] 2026-06-27 08:12:58
[2026-06-27 08:12:58,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:12:58,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:12:58,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:12:58,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:12:58,764.764 INFO    ] time= 27/06/2026 08:12:58
[2026-06-27 08:12:58,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:12:58,809.809 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:12:58,880.880 INFO    ] No existing commands found in stream
[2026-06-27 08:13:03,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:13:03,891.891 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-27 08:13:07,413.413 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:13:07,414.414 INFO    ] Checking for system updates...
[2026-06-27 08:13:07,437.437 INFO    ] 200
[2026-06-27 08:13:07,438.438 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:13:07,469.469 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:13:07,470.470 INFO    ] No update needed
[2026-06-27 08:13:07,471.471 INFO    ] Checking for camera pi updates...
[2026-06-27 08:13:07,491.491 INFO    ] 200
[2026-06-27 08:13:07,492.492 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:13:07,520.520 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:13:07,560.560 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:13:07,562.562 INFO    ] No camera update needed
[2026-06-27 08:13:07,563.563 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:13:07,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:13:07,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:13:07,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:13:09,611.611 INFO    ] ================================================
[2026-06-27 08:13:09,626.626 INFO    ] Launching Daemon at Sat Jun 27 08:13:09 IST 2026
[2026-06-27 08:13:09,637.637 INFO    ] ================================================
[2026-06-27 08:13:09,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:13:09
[2026-06-27 08:13:10,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:13:10,446.446 INFO    ] Initializing speech engine...
[2026-06-27 08:13:10,458.458 INFO    ] 2026-06-27 08:13:10
[2026-06-27 08:13:10,666.666 INFO    ] 2026-06-27 08:13:10
[2026-06-27 08:13:10,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:13:10,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:13:10,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:13:11,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:13:11,085.085 INFO    ] time= 27/06/2026 08:13:11
[2026-06-27 08:13:11,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:13:11,120.120 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:13:11,186.186 INFO    ] No existing commands found in stream
[2026-06-27 08:13:16,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:13:16,199.199 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-27 08:13:18,693.693 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:13:18,695.695 INFO    ] Checking for system updates...
[2026-06-27 08:13:18,717.717 INFO    ] 200
[2026-06-27 08:13:18,719.719 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:13:18,754.754 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:13:18,755.755 INFO    ] No update needed
[2026-06-27 08:13:18,757.757 INFO    ] Checking for camera pi updates...
[2026-06-27 08:13:18,777.777 INFO    ] 200
[2026-06-27 08:13:18,778.778 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:13:18,804.804 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:13:18,845.845 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:13:18,846.846 INFO    ] No camera update needed
[2026-06-27 08:13:18,848.848 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:13:18,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:13:18,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:13:18,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:13:20,898.898 INFO    ] ================================================
[2026-06-27 08:13:20,914.914 INFO    ] Launching Daemon at Sat Jun 27 08:13:20 IST 2026
[2026-06-27 08:13:20,926.926 INFO    ] ================================================
[2026-06-27 08:13:21,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:13:21
[2026-06-27 08:13:21,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:13:21,808.808 INFO    ] Initializing speech engine...
[2026-06-27 08:13:21,813.813 INFO    ] 2026-06-27 08:13:21
[2026-06-27 08:13:22,024.024 INFO    ] 2026-06-27 08:13:22
[2026-06-27 08:13:22,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:13:22,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:13:22,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:13:22,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:13:22,452.452 INFO    ] time= 27/06/2026 08:13:22
[2026-06-27 08:13:22,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:13:22,482.482 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:13:22,549.549 INFO    ] No existing commands found in stream
[2026-06-27 08:13:27,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:13:27,562.562 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-27 08:13:28,941.941 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 08:13:28,942.942 INFO    ] Checking for system updates...
[2026-06-27 08:13:28,964.964 INFO    ] 200
[2026-06-27 08:13:28,966.966 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:13:28,997.997 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:13:28,998.998 INFO    ] No update needed
[2026-06-27 08:13:29,000.000 INFO    ] Checking for camera pi updates...
[2026-06-27 08:13:29,021.021 INFO    ] 200
[2026-06-27 08:13:29,023.023 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:13:29,047.047 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:13:29,088.088 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:13:29,090.090 INFO    ] No camera update needed
[2026-06-27 08:13:29,091.091 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:13:29,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:13:29,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:13:29,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:13:31,142.142 INFO    ] ================================================
[2026-06-27 08:13:31,159.159 INFO    ] Launching Daemon at Sat Jun 27 08:13:31 IST 2026
[2026-06-27 08:13:31,169.169 INFO    ] ================================================
[2026-06-27 08:13:31,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:13:31
[2026-06-27 08:13:31,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:13:32,018.018 INFO    ] Initializing speech engine...
[2026-06-27 08:13:32,031.031 INFO    ] 2026-06-27 08:13:32
[2026-06-27 08:13:32,225.225 INFO    ] 2026-06-27 08:13:32
[2026-06-27 08:13:32,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:13:32,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:13:32,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:13:32,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:13:32,562.562 INFO    ] time= 27/06/2026 08:13:32
[2026-06-27 08:13:32,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:13:32,572.572 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:13:32,682.682 INFO    ] No existing commands found in stream
[2026-06-27 08:13:37,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:13:37,712.712 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-27 08:13:41,373.373 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 08:13:41,374.374 INFO    ] Checking for system updates...
[2026-06-27 08:13:41,396.396 INFO    ] 200
[2026-06-27 08:13:41,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:13:41,428.428 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:13:41,429.429 INFO    ] No update needed
[2026-06-27 08:13:41,431.431 INFO    ] Checking for camera pi updates...
[2026-06-27 08:13:41,454.454 INFO    ] 200
[2026-06-27 08:13:41,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:13:41,481.481 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:13:41,628.628 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:13:41,630.630 INFO    ] No camera update needed
[2026-06-27 08:13:41,631.631 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:13:41,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:13:41,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:13:41,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:13:43,676.676 INFO    ] ================================================
[2026-06-27 08:13:43,691.691 INFO    ] Launching Daemon at Sat Jun 27 08:13:43 IST 2026
[2026-06-27 08:13:43,702.702 INFO    ] ================================================
[2026-06-27 08:13:44,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:13:44
[2026-06-27 08:13:44,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:13:44,509.509 INFO    ] Initializing speech engine...
[2026-06-27 08:13:44,520.520 INFO    ] 2026-06-27 08:13:44
[2026-06-27 08:13:44,724.724 INFO    ] 2026-06-27 08:13:44
[2026-06-27 08:13:44,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:13:44,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:13:44,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:13:45,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:13:45,147.147 INFO    ] time= 27/06/2026 08:13:45
[2026-06-27 08:13:45,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:13:45,175.175 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:13:45,241.241 INFO    ] No existing commands found in stream
[2026-06-27 08:13:50,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:13:50,253.253 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-27 08:13:52,874.874 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 08:13:52,876.876 INFO    ] Checking for system updates...
[2026-06-27 08:13:52,897.897 INFO    ] 200
[2026-06-27 08:13:52,901.901 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:13:52,939.939 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:13:52,941.941 INFO    ] No update needed
[2026-06-27 08:13:52,942.942 INFO    ] Checking for camera pi updates...
[2026-06-27 08:13:52,962.962 INFO    ] 200
[2026-06-27 08:13:52,964.964 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:13:52,989.989 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:13:53,025.025 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:13:53,026.026 INFO    ] No camera update needed
[2026-06-27 08:13:53,028.028 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:13:53,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:13:53,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:13:53,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:13:55,078.078 INFO    ] ================================================
[2026-06-27 08:13:55,094.094 INFO    ] Launching Daemon at Sat Jun 27 08:13:55 IST 2026
[2026-06-27 08:13:55,106.106 INFO    ] ================================================
[2026-06-27 08:13:55,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:13:55
[2026-06-27 08:13:55,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:13:55,878.878 INFO    ] Initializing speech engine...
[2026-06-27 08:13:55,886.886 INFO    ] 2026-06-27 08:13:55
[2026-06-27 08:13:56,098.098 INFO    ] 2026-06-27 08:13:56
[2026-06-27 08:13:56,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:13:56,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:13:56,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:13:56,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:13:56,508.508 INFO    ] time= 27/06/2026 08:13:56
[2026-06-27 08:13:56,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:13:56,546.546 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:13:56,612.612 INFO    ] No existing commands found in stream
[2026-06-27 08:14:01,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:14:01,623.623 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-27 08:14:03,220.220 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:14:03,222.222 INFO    ] Checking for system updates...
[2026-06-27 08:14:03,243.243 INFO    ] 200
[2026-06-27 08:14:03,244.244 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:14:03,278.278 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:14:03,280.280 INFO    ] No update needed
[2026-06-27 08:14:03,281.281 INFO    ] Checking for camera pi updates...
[2026-06-27 08:14:03,313.313 INFO    ] 200
[2026-06-27 08:14:03,315.315 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:14:03,358.358 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:14:03,396.396 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:14:03,399.399 INFO    ] No camera update needed
[2026-06-27 08:14:03,401.401 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:14:03,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:14:03,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:14:03,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:14:05,459.459 INFO    ] ================================================
[2026-06-27 08:14:05,475.475 INFO    ] Launching Daemon at Sat Jun 27 08:14:05 IST 2026
[2026-06-27 08:14:05,487.487 INFO    ] ================================================
[2026-06-27 08:14:05,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:14:05
[2026-06-27 08:14:06,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:14:06,300.300 INFO    ] Initializing speech engine...
[2026-06-27 08:14:06,305.305 INFO    ] 2026-06-27 08:14:06
[2026-06-27 08:14:06,510.510 INFO    ] 2026-06-27 08:14:06
[2026-06-27 08:14:06,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:14:06,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:14:06,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:14:06,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:14:06,929.929 INFO    ] time= 27/06/2026 08:14:06
[2026-06-27 08:14:06,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:14:06,962.962 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:14:07,029.029 INFO    ] No existing commands found in stream
[2026-06-27 08:14:12,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:14:12,040.040 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-27 08:14:15,619.619 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 08:14:15,620.620 INFO    ] Checking for system updates...
[2026-06-27 08:14:15,643.643 INFO    ] 200
[2026-06-27 08:14:15,645.645 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:14:15,679.679 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:14:15,680.680 INFO    ] No update needed
[2026-06-27 08:14:15,682.682 INFO    ] Checking for camera pi updates...
[2026-06-27 08:14:15,705.705 INFO    ] 200
[2026-06-27 08:14:15,707.707 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:14:15,730.730 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:14:15,766.766 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:14:15,768.768 INFO    ] No camera update needed
[2026-06-27 08:14:15,769.769 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:14:15,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:14:15,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:14:15,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:14:17,817.817 INFO    ] ================================================
[2026-06-27 08:14:17,832.832 INFO    ] Launching Daemon at Sat Jun 27 08:14:17 IST 2026
[2026-06-27 08:14:17,843.843 INFO    ] ================================================
[2026-06-27 08:14:18,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:14:18
[2026-06-27 08:14:18,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:14:18,691.691 INFO    ] Initializing speech engine...
[2026-06-27 08:14:18,697.697 INFO    ] 2026-06-27 08:14:18
[2026-06-27 08:14:18,906.906 INFO    ] 2026-06-27 08:14:18
[2026-06-27 08:14:18,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:14:19,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:14:19,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:14:19,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:14:19,321.321 INFO    ] time= 27/06/2026 08:14:19
[2026-06-27 08:14:19,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:14:19,355.355 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:14:19,423.423 INFO    ] No existing commands found in stream
[2026-06-27 08:14:24,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:14:24,440.440 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-27 08:14:25,576.576 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 08:14:25,577.577 INFO    ] Checking for system updates...
[2026-06-27 08:14:25,598.598 INFO    ] 200
[2026-06-27 08:14:25,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:14:25,630.630 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:14:25,632.632 INFO    ] No update needed
[2026-06-27 08:14:25,633.633 INFO    ] Checking for camera pi updates...
[2026-06-27 08:14:25,654.654 INFO    ] 200
[2026-06-27 08:14:25,655.655 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:14:25,679.679 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:14:25,720.720 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:14:25,722.722 INFO    ] No camera update needed
[2026-06-27 08:14:25,724.724 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:14:25,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:14:25,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:14:25,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:14:27,770.770 INFO    ] ================================================
[2026-06-27 08:14:27,786.786 INFO    ] Launching Daemon at Sat Jun 27 08:14:27 IST 2026
[2026-06-27 08:14:27,796.796 INFO    ] ================================================
[2026-06-27 08:14:28,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:14:28
[2026-06-27 08:14:28,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:14:28,603.603 INFO    ] Initializing speech engine...
[2026-06-27 08:14:28,616.616 INFO    ] 2026-06-27 08:14:28
[2026-06-27 08:14:28,835.835 INFO    ] 2026-06-27 08:14:28
[2026-06-27 08:14:28,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:14:29,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:14:29,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:14:29,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:14:29,260.260 INFO    ] time= 27/06/2026 08:14:29
[2026-06-27 08:14:29,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:14:29,317.317 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:14:29,394.394 INFO    ] No existing commands found in stream
[2026-06-27 08:14:34,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:14:34,406.406 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-27 08:14:36,360.360 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 08:14:36,362.362 INFO    ] Checking for system updates...
[2026-06-27 08:14:36,384.384 INFO    ] 200
[2026-06-27 08:14:36,385.385 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:14:36,418.418 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:14:36,420.420 INFO    ] No update needed
[2026-06-27 08:14:36,421.421 INFO    ] Checking for camera pi updates...
[2026-06-27 08:14:36,441.441 INFO    ] 200
[2026-06-27 08:14:36,443.443 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:14:36,468.468 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:14:36,506.506 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:14:36,507.507 INFO    ] No camera update needed
[2026-06-27 08:14:36,509.509 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:14:36,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:14:36,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:14:36,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:14:38,555.555 INFO    ] ================================================
[2026-06-27 08:14:38,570.570 INFO    ] Launching Daemon at Sat Jun 27 08:14:38 IST 2026
[2026-06-27 08:14:38,580.580 INFO    ] ================================================
[2026-06-27 08:14:38,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:14:38
[2026-06-27 08:14:39,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:14:39,403.403 INFO    ] Initializing speech engine...
[2026-06-27 08:14:39,415.415 INFO    ] 2026-06-27 08:14:39
[2026-06-27 08:14:39,623.623 INFO    ] 2026-06-27 08:14:39
[2026-06-27 08:14:39,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:14:39,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:14:39,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:14:40,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:14:40,068.068 INFO    ] time= 27/06/2026 08:14:40
[2026-06-27 08:14:40,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:14:40,075.075 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:14:40,145.145 INFO    ] No existing commands found in stream
[2026-06-27 08:14:45,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:14:45,158.158 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-27 08:14:48,349.349 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 08:14:48,350.350 INFO    ] Checking for system updates...
[2026-06-27 08:14:48,373.373 INFO    ] 200
[2026-06-27 08:14:48,374.374 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:14:48,406.406 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:14:48,407.407 INFO    ] No update needed
[2026-06-27 08:14:48,408.408 INFO    ] Checking for camera pi updates...
[2026-06-27 08:14:48,428.428 INFO    ] 200
[2026-06-27 08:14:48,430.430 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:14:48,454.454 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:14:48,494.494 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:14:48,495.495 INFO    ] No camera update needed
[2026-06-27 08:14:48,497.497 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:14:48,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:14:48,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:14:48,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:14:50,544.544 INFO    ] ================================================
[2026-06-27 08:14:50,559.559 INFO    ] Launching Daemon at Sat Jun 27 08:14:50 IST 2026
[2026-06-27 08:14:50,570.570 INFO    ] ================================================
[2026-06-27 08:14:50,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:14:50
[2026-06-27 08:14:51,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:14:51,426.426 INFO    ] Initializing speech engine...
[2026-06-27 08:14:51,437.437 INFO    ] 2026-06-27 08:14:51
[2026-06-27 08:14:51,645.645 INFO    ] 2026-06-27 08:14:51
[2026-06-27 08:14:51,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:14:51,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:14:51,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:14:51,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:14:52,061.061 INFO    ] time= 27/06/2026 08:14:52
[2026-06-27 08:14:52,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:14:52,095.095 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:14:52,162.162 INFO    ] No existing commands found in stream
[2026-06-27 08:14:57,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:14:57,180.180 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-27 08:14:59,353.353 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:14:59,355.355 INFO    ] Checking for system updates...
[2026-06-27 08:14:59,376.376 INFO    ] 200
[2026-06-27 08:14:59,377.377 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:14:59,409.409 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:14:59,410.410 INFO    ] No update needed
[2026-06-27 08:14:59,411.411 INFO    ] Checking for camera pi updates...
[2026-06-27 08:14:59,433.433 INFO    ] 200
[2026-06-27 08:14:59,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:14:59,461.461 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:14:59,503.503 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:14:59,505.505 INFO    ] No camera update needed
[2026-06-27 08:14:59,506.506 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:14:59,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:14:59,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:14:59,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:15:01,551.551 INFO    ] ================================================
[2026-06-27 08:15:01,566.566 INFO    ] Launching Daemon at Sat Jun 27 08:15:01 IST 2026
[2026-06-27 08:15:01,577.577 INFO    ] ================================================
[2026-06-27 08:15:01,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:15:01
[2026-06-27 08:15:02,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:15:02,910.910 INFO    ] Initializing speech engine...
[2026-06-27 08:15:02,923.923 INFO    ] 2026-06-27 08:15:02
[2026-06-27 08:15:03,187.187 INFO    ] 2026-06-27 08:15:03
[2026-06-27 08:15:03,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:15:03,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:15:03,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:15:03,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:15:03,636.636 INFO    ] time= 27/06/2026 08:15:03
[2026-06-27 08:15:03,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:15:03,662.662 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:15:03,733.733 INFO    ] No existing commands found in stream
[2026-06-27 08:15:08,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:15:08,745.745 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-27 08:15:09,938.938 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:15:09,940.940 INFO    ] Checking for system updates...
[2026-06-27 08:15:09,961.961 INFO    ] 200
[2026-06-27 08:15:09,962.962 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:15:09,994.994 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:15:09,995.995 INFO    ] No update needed
[2026-06-27 08:15:09,996.996 INFO    ] Checking for camera pi updates...
[2026-06-27 08:15:10,016.016 INFO    ] 200
[2026-06-27 08:15:10,017.017 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:15:10,044.044 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:15:10,079.079 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:15:10,080.080 INFO    ] No camera update needed
[2026-06-27 08:15:10,081.081 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:15:10,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:15:10,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:15:10,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:15:12,126.126 INFO    ] ================================================
[2026-06-27 08:15:12,145.145 INFO    ] Launching Daemon at Sat Jun 27 08:15:12 IST 2026
[2026-06-27 08:15:12,156.156 INFO    ] ================================================
[2026-06-27 08:15:12,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:15:12
[2026-06-27 08:15:12,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:15:12,977.977 INFO    ] Initializing speech engine...
[2026-06-27 08:15:12,986.986 INFO    ] 2026-06-27 08:15:12
[2026-06-27 08:15:13,196.196 INFO    ] 2026-06-27 08:15:13
[2026-06-27 08:15:13,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:15:13,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:15:13,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:15:13,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:15:13,623.623 INFO    ] time= 27/06/2026 08:15:13
[2026-06-27 08:15:13,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:15:13,654.654 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:15:13,722.722 INFO    ] No existing commands found in stream
[2026-06-27 08:15:18,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:15:18,734.734 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-27 08:15:20,510.510 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 08:15:20,511.511 INFO    ] Checking for system updates...
[2026-06-27 08:15:20,532.532 INFO    ] 200
[2026-06-27 08:15:20,534.534 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:15:20,564.564 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:15:20,566.566 INFO    ] No update needed
[2026-06-27 08:15:20,567.567 INFO    ] Checking for camera pi updates...
[2026-06-27 08:15:20,589.589 INFO    ] 200
[2026-06-27 08:15:20,590.590 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:15:20,614.614 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:15:20,655.655 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:15:20,656.656 INFO    ] No camera update needed
[2026-06-27 08:15:20,657.657 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:15:20,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:15:20,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:15:20,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:15:22,704.704 INFO    ] ================================================
[2026-06-27 08:15:22,719.719 INFO    ] Launching Daemon at Sat Jun 27 08:15:22 IST 2026
[2026-06-27 08:15:22,730.730 INFO    ] ================================================
[2026-06-27 08:15:23,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:15:23
[2026-06-27 08:15:23,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:15:23,594.594 INFO    ] Initializing speech engine...
[2026-06-27 08:15:23,603.603 INFO    ] 2026-06-27 08:15:23
[2026-06-27 08:15:23,810.810 INFO    ] 2026-06-27 08:15:23
[2026-06-27 08:15:23,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:15:23,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:15:24,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:15:24,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:15:24,226.226 INFO    ] time= 27/06/2026 08:15:24
[2026-06-27 08:15:24,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:15:24,266.266 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:15:24,332.332 INFO    ] No existing commands found in stream
[2026-06-27 08:15:29,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:15:29,346.346 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-27 08:15:29,883.883 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:15:29,885.885 INFO    ] Checking for system updates...
[2026-06-27 08:15:29,907.907 INFO    ] 200
[2026-06-27 08:15:29,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:15:29,939.939 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:15:29,941.941 INFO    ] No update needed
[2026-06-27 08:15:29,942.942 INFO    ] Checking for camera pi updates...
[2026-06-27 08:15:29,962.962 INFO    ] 200
[2026-06-27 08:15:29,964.964 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:15:29,988.988 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:15:30,023.023 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:15:30,025.025 INFO    ] No camera update needed
[2026-06-27 08:15:30,026.026 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:15:30,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:15:30,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:15:30,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:15:32,075.075 INFO    ] ================================================
[2026-06-27 08:15:32,090.090 INFO    ] Launching Daemon at Sat Jun 27 08:15:32 IST 2026
[2026-06-27 08:15:32,101.101 INFO    ] ================================================
[2026-06-27 08:15:32,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:15:32
[2026-06-27 08:15:32,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:15:32,961.961 INFO    ] Initializing speech engine...
[2026-06-27 08:15:32,967.967 INFO    ] 2026-06-27 08:15:32
[2026-06-27 08:15:33,174.174 INFO    ] 2026-06-27 08:15:33
[2026-06-27 08:15:33,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:15:33,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:15:33,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:15:33,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:15:33,597.597 INFO    ] time= 27/06/2026 08:15:33
[2026-06-27 08:15:33,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:15:33,626.626 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:15:33,694.694 INFO    ] No existing commands found in stream
[2026-06-27 08:15:38,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:15:38,711.711 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-27 08:15:40,699.699 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:15:40,701.701 INFO    ] Checking for system updates...
[2026-06-27 08:15:40,722.722 INFO    ] 200
[2026-06-27 08:15:40,724.724 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:15:40,755.755 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:15:40,756.756 INFO    ] No update needed
[2026-06-27 08:15:40,758.758 INFO    ] Checking for camera pi updates...
[2026-06-27 08:15:40,778.778 INFO    ] 200
[2026-06-27 08:15:40,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:15:40,803.803 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:15:40,840.840 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:15:40,842.842 INFO    ] No camera update needed
[2026-06-27 08:15:40,844.844 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:15:40,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:15:40,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:15:40,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:15:42,892.892 INFO    ] ================================================
[2026-06-27 08:15:42,908.908 INFO    ] Launching Daemon at Sat Jun 27 08:15:42 IST 2026
[2026-06-27 08:15:42,918.918 INFO    ] ================================================
[2026-06-27 08:15:43,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:15:43
[2026-06-27 08:15:43,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:15:43,729.729 INFO    ] Initializing speech engine...
[2026-06-27 08:15:43,737.737 INFO    ] 2026-06-27 08:15:43
[2026-06-27 08:15:43,944.944 INFO    ] 2026-06-27 08:15:43
[2026-06-27 08:15:43,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:15:44,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:15:44,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:15:44,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:15:44,372.372 INFO    ] time= 27/06/2026 08:15:44
[2026-06-27 08:15:44,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:15:44,401.401 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:15:44,469.469 INFO    ] No existing commands found in stream
[2026-06-27 08:15:49,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:15:49,480.480 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-27 08:15:51,008.008 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 08:15:51,009.009 INFO    ] Checking for system updates...
[2026-06-27 08:15:51,032.032 INFO    ] 200
[2026-06-27 08:15:51,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:15:51,066.066 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:15:51,068.068 INFO    ] No update needed
[2026-06-27 08:15:51,069.069 INFO    ] Checking for camera pi updates...
[2026-06-27 08:15:51,089.089 INFO    ] 200
[2026-06-27 08:15:51,090.090 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:15:51,114.114 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:15:51,258.258 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:15:51,259.259 INFO    ] No camera update needed
[2026-06-27 08:15:51,260.260 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:15:51,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:15:51,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:15:51,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:15:53,308.308 INFO    ] ================================================
[2026-06-27 08:15:53,324.324 INFO    ] Launching Daemon at Sat Jun 27 08:15:53 IST 2026
[2026-06-27 08:15:53,335.335 INFO    ] ================================================
[2026-06-27 08:15:53,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:15:53
[2026-06-27 08:15:54,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:15:54,214.214 INFO    ] Initializing speech engine...
[2026-06-27 08:15:54,223.223 INFO    ] 2026-06-27 08:15:54
[2026-06-27 08:15:54,437.437 INFO    ] 2026-06-27 08:15:54
[2026-06-27 08:15:54,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:15:54,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:15:54,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:15:54,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:15:54,864.864 INFO    ] time= 27/06/2026 08:15:54
[2026-06-27 08:15:54,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:15:54,894.894 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:15:54,962.962 INFO    ] No existing commands found in stream
[2026-06-27 08:15:59,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:15:59,980.980 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-27 08:16:01,501.501 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:16:01,502.502 INFO    ] Checking for system updates...
[2026-06-27 08:16:01,524.524 INFO    ] 200
[2026-06-27 08:16:01,525.525 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:16:01,557.557 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:16:01,558.558 INFO    ] No update needed
[2026-06-27 08:16:01,560.560 INFO    ] Checking for camera pi updates...
[2026-06-27 08:16:01,592.592 INFO    ] 200
[2026-06-27 08:16:01,597.597 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:16:01,673.673 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:16:01,716.716 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:16:01,719.719 INFO    ] No camera update needed
[2026-06-27 08:16:01,725.725 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:16:01,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:16:01,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:16:01,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:16:03,771.771 INFO    ] ================================================
[2026-06-27 08:16:03,786.786 INFO    ] Launching Daemon at Sat Jun 27 08:16:03 IST 2026
[2026-06-27 08:16:03,796.796 INFO    ] ================================================
[2026-06-27 08:16:04,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:16:04
[2026-06-27 08:16:04,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:16:04,597.597 INFO    ] Initializing speech engine...
[2026-06-27 08:16:04,601.601 INFO    ] 2026-06-27 08:16:04
[2026-06-27 08:16:04,794.794 INFO    ] 2026-06-27 08:16:04
[2026-06-27 08:16:04,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:16:05,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:16:05,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:16:05,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:16:05,265.265 INFO    ] time= 27/06/2026 08:16:05
[2026-06-27 08:16:05,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:16:05,323.323 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:16:05,402.402 INFO    ] No existing commands found in stream
[2026-06-27 08:16:10,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:16:10,414.414 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-27 08:16:12,606.606 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 08:16:12,607.607 INFO    ] Checking for system updates...
[2026-06-27 08:16:12,628.628 INFO    ] 200
[2026-06-27 08:16:12,629.629 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:16:12,660.660 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:16:12,662.662 INFO    ] No update needed
[2026-06-27 08:16:12,663.663 INFO    ] Checking for camera pi updates...
[2026-06-27 08:16:12,683.683 INFO    ] 200
[2026-06-27 08:16:12,684.684 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:16:12,708.708 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:16:12,746.746 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:16:12,747.747 INFO    ] No camera update needed
[2026-06-27 08:16:12,749.749 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:16:12,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:16:12,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:16:12,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:16:14,794.794 INFO    ] ================================================
[2026-06-27 08:16:14,810.810 INFO    ] Launching Daemon at Sat Jun 27 08:16:14 IST 2026
[2026-06-27 08:16:14,820.820 INFO    ] ================================================
[2026-06-27 08:16:15,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:16:15
[2026-06-27 08:16:15,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:16:15,642.642 INFO    ] Initializing speech engine...
[2026-06-27 08:16:15,650.650 INFO    ] 2026-06-27 08:16:15
[2026-06-27 08:16:15,858.858 INFO    ] 2026-06-27 08:16:15
[2026-06-27 08:16:15,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:16:16,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:16:16,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:16:16,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:16:16,284.284 INFO    ] time= 27/06/2026 08:16:16
[2026-06-27 08:16:16,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:16:16,314.314 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:16:16,381.381 INFO    ] No existing commands found in stream
[2026-06-27 08:16:21,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:16:21,395.395 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-27 08:16:22,685.685 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 08:16:22,687.687 INFO    ] Checking for system updates...
[2026-06-27 08:16:22,708.708 INFO    ] 200
[2026-06-27 08:16:22,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:16:22,739.739 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:16:22,741.741 INFO    ] No update needed
[2026-06-27 08:16:22,742.742 INFO    ] Checking for camera pi updates...
[2026-06-27 08:16:22,762.762 INFO    ] 200
[2026-06-27 08:16:22,763.763 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:16:22,789.789 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:16:22,828.828 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:16:22,829.829 INFO    ] No camera update needed
[2026-06-27 08:16:22,831.831 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:16:22,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:16:22,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:16:22,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:16:24,878.878 INFO    ] ================================================
[2026-06-27 08:16:24,894.894 INFO    ] Launching Daemon at Sat Jun 27 08:16:24 IST 2026
[2026-06-27 08:16:24,905.905 INFO    ] ================================================
[2026-06-27 08:16:25,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:16:25
[2026-06-27 08:16:25,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:16:25,811.811 INFO    ] Initializing speech engine...
[2026-06-27 08:16:25,819.819 INFO    ] 2026-06-27 08:16:25
[2026-06-27 08:16:26,025.025 INFO    ] 2026-06-27 08:16:26
[2026-06-27 08:16:26,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:16:26,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:16:26,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:16:26,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:16:26,455.455 INFO    ] time= 27/06/2026 08:16:26
[2026-06-27 08:16:26,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:16:26,484.484 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:16:26,550.550 INFO    ] No existing commands found in stream
[2026-06-27 08:16:31,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:16:31,565.565 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-27 08:16:34,122.122 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:16:34,124.124 INFO    ] Checking for system updates...
[2026-06-27 08:16:34,145.145 INFO    ] 200
[2026-06-27 08:16:34,146.146 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:16:34,181.181 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:16:34,182.182 INFO    ] No update needed
[2026-06-27 08:16:34,183.183 INFO    ] Checking for camera pi updates...
[2026-06-27 08:16:34,204.204 INFO    ] 200
[2026-06-27 08:16:34,205.205 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:16:34,229.229 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:16:34,265.265 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:16:34,267.267 INFO    ] No camera update needed
[2026-06-27 08:16:34,268.268 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:16:34,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:16:34,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:16:34,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:16:36,314.314 INFO    ] ================================================
[2026-06-27 08:16:36,329.329 INFO    ] Launching Daemon at Sat Jun 27 08:16:36 IST 2026
[2026-06-27 08:16:36,340.340 INFO    ] ================================================
[2026-06-27 08:16:36,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:16:36
[2026-06-27 08:16:37,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:16:37,164.164 INFO    ] Initializing speech engine...
[2026-06-27 08:16:37,169.169 INFO    ] 2026-06-27 08:16:37
[2026-06-27 08:16:37,375.375 INFO    ] 2026-06-27 08:16:37
[2026-06-27 08:16:37,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:16:37,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:16:37,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:16:37,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:16:37,803.803 INFO    ] time= 27/06/2026 08:16:37
[2026-06-27 08:16:37,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:16:37,834.834 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:16:37,900.900 INFO    ] No existing commands found in stream
[2026-06-27 08:16:42,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:16:42,914.914 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-27 08:16:45,978.978 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:16:45,979.979 INFO    ] Checking for system updates...
[2026-06-27 08:16:45,999.999 INFO    ] 200
[2026-06-27 08:16:46,001.001 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:16:46,031.031 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:16:46,033.033 INFO    ] No update needed
[2026-06-27 08:16:46,034.034 INFO    ] Checking for camera pi updates...
[2026-06-27 08:16:46,054.054 INFO    ] 200
[2026-06-27 08:16:46,055.055 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:16:46,081.081 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:16:46,121.121 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:16:46,122.122 INFO    ] No camera update needed
[2026-06-27 08:16:46,124.124 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:16:46,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:16:46,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:16:46,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:16:48,171.171 INFO    ] ================================================
[2026-06-27 08:16:48,186.186 INFO    ] Launching Daemon at Sat Jun 27 08:16:48 IST 2026
[2026-06-27 08:16:48,197.197 INFO    ] ================================================
[2026-06-27 08:16:48,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:16:48
[2026-06-27 08:16:48,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:16:49,006.006 INFO    ] Initializing speech engine...
[2026-06-27 08:16:49,009.009 INFO    ] 2026-06-27 08:16:49
[2026-06-27 08:16:49,229.229 INFO    ] 2026-06-27 08:16:49
[2026-06-27 08:16:49,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:16:49,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:16:49,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:16:49,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:16:49,651.651 INFO    ] time= 27/06/2026 08:16:49
[2026-06-27 08:16:49,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:16:49,684.684 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:16:49,751.751 INFO    ] No existing commands found in stream
[2026-06-27 08:16:54,760.760 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:16:54,763.763 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-27 08:16:56,960.960 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 08:16:56,961.961 INFO    ] Checking for system updates...
[2026-06-27 08:16:56,985.985 INFO    ] 200
[2026-06-27 08:16:56,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:16:57,016.016 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:16:57,018.018 INFO    ] No update needed
[2026-06-27 08:16:57,019.019 INFO    ] Checking for camera pi updates...
[2026-06-27 08:16:57,039.039 INFO    ] 200
[2026-06-27 08:16:57,040.040 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:16:57,066.066 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:16:57,101.101 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:16:57,102.102 INFO    ] No camera update needed
[2026-06-27 08:16:57,103.103 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:16:57,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:16:57,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:16:57,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:16:59,151.151 INFO    ] ================================================
[2026-06-27 08:16:59,166.166 INFO    ] Launching Daemon at Sat Jun 27 08:16:59 IST 2026
[2026-06-27 08:16:59,177.177 INFO    ] ================================================
[2026-06-27 08:16:59,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:16:59
[2026-06-27 08:16:59,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:17:00,009.009 INFO    ] Initializing speech engine...
[2026-06-27 08:17:00,012.012 INFO    ] 2026-06-27 08:17:00
[2026-06-27 08:17:00,219.219 INFO    ] 2026-06-27 08:17:00
[2026-06-27 08:17:00,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:17:00,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:17:00,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:17:00,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:17:00,634.634 INFO    ] time= 27/06/2026 08:17:00
[2026-06-27 08:17:00,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:17:00,662.662 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:17:00,728.728 INFO    ] No existing commands found in stream
[2026-06-27 08:17:05,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:17:05,741.741 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-27 08:17:06,507.507 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 08:17:06,509.509 INFO    ] Checking for system updates...
[2026-06-27 08:17:06,530.530 INFO    ] 200
[2026-06-27 08:17:06,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:17:06,562.562 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:17:06,563.563 INFO    ] No update needed
[2026-06-27 08:17:06,565.565 INFO    ] Checking for camera pi updates...
[2026-06-27 08:17:06,584.584 INFO    ] 200
[2026-06-27 08:17:06,586.586 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:17:06,612.612 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:17:06,648.648 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:17:06,649.649 INFO    ] No camera update needed
[2026-06-27 08:17:06,650.650 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:17:06,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:17:06,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:17:06,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:17:08,697.697 INFO    ] ================================================
[2026-06-27 08:17:08,713.713 INFO    ] Launching Daemon at Sat Jun 27 08:17:08 IST 2026
[2026-06-27 08:17:08,726.726 INFO    ] ================================================
[2026-06-27 08:17:09,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:17:09
[2026-06-27 08:17:09,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:17:09,599.599 INFO    ] Initializing speech engine...
[2026-06-27 08:17:09,604.604 INFO    ] 2026-06-27 08:17:09
[2026-06-27 08:17:09,814.814 INFO    ] 2026-06-27 08:17:09
[2026-06-27 08:17:09,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:17:10,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:17:10,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:17:10,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:17:10,241.241 INFO    ] time= 27/06/2026 08:17:10
[2026-06-27 08:17:10,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:17:10,282.282 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:17:10,383.383 INFO    ] No existing commands found in stream
[2026-06-27 08:17:15,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:17:15,395.395 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-27 08:17:17,803.803 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 08:17:17,805.805 INFO    ] Checking for system updates...
[2026-06-27 08:17:17,827.827 INFO    ] 200
[2026-06-27 08:17:17,828.828 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:17:17,859.859 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:17:17,860.860 INFO    ] No update needed
[2026-06-27 08:17:17,862.862 INFO    ] Checking for camera pi updates...
[2026-06-27 08:17:17,882.882 INFO    ] 200
[2026-06-27 08:17:17,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:17:17,908.908 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:17:17,944.944 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:17:17,945.945 INFO    ] No camera update needed
[2026-06-27 08:17:17,947.947 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:17:17,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:17:17,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:17:17,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:17:19,993.993 INFO    ] ================================================
[2026-06-27 08:17:20,010.010 INFO    ] Launching Daemon at Sat Jun 27 08:17:20 IST 2026
[2026-06-27 08:17:20,022.022 INFO    ] ================================================
[2026-06-27 08:17:20,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:17:20
[2026-06-27 08:17:20,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:17:20,869.869 INFO    ] Initializing speech engine...
[2026-06-27 08:17:20,874.874 INFO    ] 2026-06-27 08:17:20
[2026-06-27 08:17:21,081.081 INFO    ] 2026-06-27 08:17:21
[2026-06-27 08:17:21,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:17:21,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:17:21,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:17:21,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:17:21,501.501 INFO    ] time= 27/06/2026 08:17:21
[2026-06-27 08:17:21,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:17:21,532.532 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:17:21,599.599 INFO    ] No existing commands found in stream
[2026-06-27 08:17:26,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:17:26,613.613 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-27 08:17:29,329.329 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 08:17:29,331.331 INFO    ] Checking for system updates...
[2026-06-27 08:17:29,352.352 INFO    ] 200
[2026-06-27 08:17:29,354.354 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:17:29,385.385 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:17:29,387.387 INFO    ] No update needed
[2026-06-27 08:17:29,388.388 INFO    ] Checking for camera pi updates...
[2026-06-27 08:17:29,409.409 INFO    ] 200
[2026-06-27 08:17:29,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:17:29,434.434 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:17:29,474.474 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:17:29,476.476 INFO    ] No camera update needed
[2026-06-27 08:17:29,477.477 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:17:29,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:17:29,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:17:29,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:17:31,525.525 INFO    ] ================================================
[2026-06-27 08:17:31,542.542 INFO    ] Launching Daemon at Sat Jun 27 08:17:31 IST 2026
[2026-06-27 08:17:31,552.552 INFO    ] ================================================
[2026-06-27 08:17:31,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:17:31
[2026-06-27 08:17:32,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:17:32,482.482 INFO    ] Initializing speech engine...
[2026-06-27 08:17:32,487.487 INFO    ] 2026-06-27 08:17:32
[2026-06-27 08:17:32,705.705 INFO    ] 2026-06-27 08:17:32
[2026-06-27 08:17:32,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:17:32,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:17:32,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:17:33,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:17:33,127.127 INFO    ] time= 27/06/2026 08:17:33
[2026-06-27 08:17:33,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:17:33,157.157 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:17:33,250.250 INFO    ] No existing commands found in stream
[2026-06-27 08:17:38,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:17:38,268.268 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-27 08:17:40,625.625 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:17:40,627.627 INFO    ] Checking for system updates...
[2026-06-27 08:17:40,648.648 INFO    ] 200
[2026-06-27 08:17:40,650.650 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:17:40,681.681 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:17:40,683.683 INFO    ] No update needed
[2026-06-27 08:17:40,684.684 INFO    ] Checking for camera pi updates...
[2026-06-27 08:17:40,704.704 INFO    ] 200
[2026-06-27 08:17:40,706.706 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:17:40,731.731 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:17:40,772.772 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:17:40,773.773 INFO    ] No camera update needed
[2026-06-27 08:17:40,775.775 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:17:40,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:17:40,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:17:40,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:17:42,813.813 INFO    ] ================================================
[2026-06-27 08:17:42,828.828 INFO    ] Launching Daemon at Sat Jun 27 08:17:42 IST 2026
[2026-06-27 08:17:42,839.839 INFO    ] ================================================
[2026-06-27 08:17:43,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:17:43
[2026-06-27 08:17:43,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:17:43,652.652 INFO    ] Initializing speech engine...
[2026-06-27 08:17:43,664.664 INFO    ] 2026-06-27 08:17:43
[2026-06-27 08:17:43,880.880 INFO    ] 2026-06-27 08:17:43
[2026-06-27 08:17:43,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:17:44,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:17:44,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:17:44,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:17:44,300.300 INFO    ] time= 27/06/2026 08:17:44
[2026-06-27 08:17:44,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:17:44,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:17:44,409.409 INFO    ] No existing commands found in stream
[2026-06-27 08:17:49,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:17:49,422.422 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-27 08:17:50,938.938 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 08:17:50,940.940 INFO    ] Checking for system updates...
[2026-06-27 08:17:50,961.961 INFO    ] 200
[2026-06-27 08:17:50,962.962 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:17:50,994.994 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:17:50,996.996 INFO    ] No update needed
[2026-06-27 08:17:50,997.997 INFO    ] Checking for camera pi updates...
[2026-06-27 08:17:51,017.017 INFO    ] 200
[2026-06-27 08:17:51,019.019 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:17:51,043.043 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:17:51,083.083 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:17:51,084.084 INFO    ] No camera update needed
[2026-06-27 08:17:51,086.086 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:17:51,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:17:51,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:17:51,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:17:53,131.131 INFO    ] ================================================
[2026-06-27 08:17:53,147.147 INFO    ] Launching Daemon at Sat Jun 27 08:17:53 IST 2026
[2026-06-27 08:17:53,157.157 INFO    ] ================================================
[2026-06-27 08:17:53,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:17:53
[2026-06-27 08:17:53,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:17:53,976.976 INFO    ] Initializing speech engine...
[2026-06-27 08:17:53,986.986 INFO    ] 2026-06-27 08:17:53
[2026-06-27 08:17:54,192.192 INFO    ] 2026-06-27 08:17:54
[2026-06-27 08:17:54,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:17:54,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:17:54,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:17:54,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:17:54,616.616 INFO    ] time= 27/06/2026 08:17:54
[2026-06-27 08:17:54,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:17:54,645.645 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:17:54,711.711 INFO    ] No existing commands found in stream
[2026-06-27 08:17:59,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:17:59,724.724 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-27 08:18:03,853.853 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 08:18:03,855.855 INFO    ] Checking for system updates...
[2026-06-27 08:18:04,256.256 INFO    ] 200
[2026-06-27 08:18:04,257.257 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:18:04,288.288 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:18:04,290.290 INFO    ] No update needed
[2026-06-27 08:18:04,291.291 INFO    ] Checking for camera pi updates...
[2026-06-27 08:18:04,311.311 INFO    ] 200
[2026-06-27 08:18:04,312.312 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:18:04,345.345 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:18:04,389.389 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:18:04,391.391 INFO    ] No camera update needed
[2026-06-27 08:18:04,394.394 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:18:04,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:18:04,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:18:04,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:18:06,446.446 INFO    ] ================================================
[2026-06-27 08:18:06,460.460 INFO    ] Launching Daemon at Sat Jun 27 08:18:06 IST 2026
[2026-06-27 08:18:06,471.471 INFO    ] ================================================
[2026-06-27 08:18:06,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:18:06
[2026-06-27 08:18:07,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:18:07,294.294 INFO    ] Initializing speech engine...
[2026-06-27 08:18:07,304.304 INFO    ] 2026-06-27 08:18:07
[2026-06-27 08:18:07,507.507 INFO    ] 2026-06-27 08:18:07
[2026-06-27 08:18:07,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:18:07,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:18:07,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:18:07,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:18:07,912.912 INFO    ] time= 27/06/2026 08:18:07
[2026-06-27 08:18:07,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:18:07,952.952 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:18:08,047.047 INFO    ] No existing commands found in stream
[2026-06-27 08:18:13,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:18:13,059.059 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-27 08:18:16,302.302 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:18:16,304.304 INFO    ] Checking for system updates...
[2026-06-27 08:18:16,326.326 INFO    ] 200
[2026-06-27 08:18:16,328.328 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:18:16,359.359 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:18:16,360.360 INFO    ] No update needed
[2026-06-27 08:18:16,362.362 INFO    ] Checking for camera pi updates...
[2026-06-27 08:18:16,383.383 INFO    ] 200
[2026-06-27 08:18:16,385.385 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:18:16,408.408 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:18:16,441.441 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:18:16,442.442 INFO    ] No camera update needed
[2026-06-27 08:18:16,444.444 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:18:16,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:18:16,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:18:16,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:18:18,491.491 INFO    ] ================================================
[2026-06-27 08:18:18,507.507 INFO    ] Launching Daemon at Sat Jun 27 08:18:18 IST 2026
[2026-06-27 08:18:18,517.517 INFO    ] ================================================
[2026-06-27 08:18:18,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:18:18
[2026-06-27 08:18:19,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:18:19,297.297 INFO    ] Initializing speech engine...
[2026-06-27 08:18:19,303.303 INFO    ] 2026-06-27 08:18:19
[2026-06-27 08:18:19,508.508 INFO    ] 2026-06-27 08:18:19
[2026-06-27 08:18:19,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:18:19,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:18:19,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:18:19,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:18:19,928.928 INFO    ] time= 27/06/2026 08:18:19
[2026-06-27 08:18:19,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:18:19,957.957 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:18:20,025.025 INFO    ] No existing commands found in stream
[2026-06-27 08:18:25,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:18:25,037.037 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-27 08:18:28,692.692 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:18:28,694.694 INFO    ] Checking for system updates...
[2026-06-27 08:18:28,715.715 INFO    ] 200
[2026-06-27 08:18:28,717.717 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:18:28,748.748 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:18:28,749.749 INFO    ] No update needed
[2026-06-27 08:18:28,750.750 INFO    ] Checking for camera pi updates...
[2026-06-27 08:18:28,771.771 INFO    ] 200
[2026-06-27 08:18:28,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:18:28,796.796 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:18:28,832.832 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:18:28,833.833 INFO    ] No camera update needed
[2026-06-27 08:18:28,835.835 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:18:28,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:18:28,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:18:28,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:18:30,879.879 INFO    ] ================================================
[2026-06-27 08:18:30,894.894 INFO    ] Launching Daemon at Sat Jun 27 08:18:30 IST 2026
[2026-06-27 08:18:30,905.905 INFO    ] ================================================
[2026-06-27 08:18:31,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:18:31
[2026-06-27 08:18:31,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:18:31,694.694 INFO    ] Initializing speech engine...
[2026-06-27 08:18:31,704.704 INFO    ] 2026-06-27 08:18:31
[2026-06-27 08:18:31,924.924 INFO    ] 2026-06-27 08:18:31
[2026-06-27 08:18:31,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:18:32,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:18:32,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:18:32,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:18:32,398.398 INFO    ] time= 27/06/2026 08:18:32
[2026-06-27 08:18:32,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:18:32,455.455 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:18:32,558.558 INFO    ] No existing commands found in stream
[2026-06-27 08:18:37,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:18:37,576.576 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-27 08:18:40,474.474 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:18:40,476.476 INFO    ] Checking for system updates...
[2026-06-27 08:18:40,497.497 INFO    ] 200
[2026-06-27 08:18:40,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:18:40,532.532 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:18:40,533.533 INFO    ] No update needed
[2026-06-27 08:18:40,535.535 INFO    ] Checking for camera pi updates...
[2026-06-27 08:18:40,556.556 INFO    ] 200
[2026-06-27 08:18:40,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:18:40,580.580 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:18:40,602.602 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:18:40,603.603 INFO    ] No camera update needed
[2026-06-27 08:18:40,605.605 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:18:40,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:18:40,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:18:40,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:18:42,651.651 INFO    ] ================================================
[2026-06-27 08:18:42,666.666 INFO    ] Launching Daemon at Sat Jun 27 08:18:42 IST 2026
[2026-06-27 08:18:42,677.677 INFO    ] ================================================
[2026-06-27 08:18:43,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:18:43
[2026-06-27 08:18:43,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:18:43,538.538 INFO    ] Initializing speech engine...
[2026-06-27 08:18:43,543.543 INFO    ] 2026-06-27 08:18:43
[2026-06-27 08:18:43,751.751 INFO    ] 2026-06-27 08:18:43
[2026-06-27 08:18:43,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:18:43,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:18:43,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:18:44,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:18:44,191.191 INFO    ] time= 27/06/2026 08:18:44
[2026-06-27 08:18:44,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:18:44,202.202 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:18:44,270.270 INFO    ] No existing commands found in stream
[2026-06-27 08:18:49,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:18:49,288.288 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-27 08:18:52,915.915 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 08:18:52,917.917 INFO    ] Checking for system updates...
[2026-06-27 08:18:52,938.938 INFO    ] 200
[2026-06-27 08:18:52,940.940 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:18:52,974.974 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:18:52,975.975 INFO    ] No update needed
[2026-06-27 08:18:52,977.977 INFO    ] Checking for camera pi updates...
[2026-06-27 08:18:52,999.999 INFO    ] 200
[2026-06-27 08:18:53,001.001 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:18:53,026.026 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:18:53,065.065 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:18:53,067.067 INFO    ] No camera update needed
[2026-06-27 08:18:53,068.068 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:18:53,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:18:53,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:18:53,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:18:55,115.115 INFO    ] ================================================
[2026-06-27 08:18:55,130.130 INFO    ] Launching Daemon at Sat Jun 27 08:18:55 IST 2026
[2026-06-27 08:18:55,141.141 INFO    ] ================================================
[2026-06-27 08:18:55,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:18:55
[2026-06-27 08:18:55,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:18:55,954.954 INFO    ] Initializing speech engine...
[2026-06-27 08:18:55,963.963 INFO    ] 2026-06-27 08:18:55
[2026-06-27 08:18:56,193.193 INFO    ] 2026-06-27 08:18:56
[2026-06-27 08:18:56,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:18:56,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:18:56,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:18:56,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:18:56,649.649 INFO    ] time= 27/06/2026 08:18:56
[2026-06-27 08:18:56,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:18:56,695.695 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:18:56,765.765 INFO    ] No existing commands found in stream
[2026-06-27 08:19:01,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:19:01,777.777 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-27 08:19:05,257.257 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 08:19:05,259.259 INFO    ] Checking for system updates...
[2026-06-27 08:19:05,280.280 INFO    ] 200
[2026-06-27 08:19:05,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:19:05,323.323 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:19:05,325.325 INFO    ] No update needed
[2026-06-27 08:19:05,327.327 INFO    ] Checking for camera pi updates...
[2026-06-27 08:19:05,353.353 INFO    ] 200
[2026-06-27 08:19:05,355.355 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:19:05,379.379 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:19:05,420.420 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:19:05,421.421 INFO    ] No camera update needed
[2026-06-27 08:19:05,422.422 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:19:05,424.424 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:19:05,427.427 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:19:05,430.430 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:19:07,469.469 INFO    ] ================================================
[2026-06-27 08:19:07,485.485 INFO    ] Launching Daemon at Sat Jun 27 08:19:07 IST 2026
[2026-06-27 08:19:07,496.496 INFO    ] ================================================
[2026-06-27 08:19:07,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:19:07
[2026-06-27 08:19:08,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:19:08,324.324 INFO    ] Initializing speech engine...
[2026-06-27 08:19:08,327.327 INFO    ] 2026-06-27 08:19:08
[2026-06-27 08:19:08,548.548 INFO    ] 2026-06-27 08:19:08
[2026-06-27 08:19:08,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:19:08,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:19:08,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:19:08,900.900 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:19:08,965.965 INFO    ] time= 27/06/2026 08:19:08
[2026-06-27 08:19:08,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:19:08,999.999 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:19:09,089.089 INFO    ] No existing commands found in stream
[2026-06-27 08:19:14,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:19:14,101.101 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-27 08:19:16,352.352 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 08:19:16,354.354 INFO    ] Checking for system updates...
[2026-06-27 08:19:16,375.375 INFO    ] 200
[2026-06-27 08:19:16,376.376 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:19:16,408.408 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:19:16,410.410 INFO    ] No update needed
[2026-06-27 08:19:16,411.411 INFO    ] Checking for camera pi updates...
[2026-06-27 08:19:16,431.431 INFO    ] 200
[2026-06-27 08:19:16,432.432 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:19:16,457.457 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:19:16,497.497 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:19:16,498.498 INFO    ] No camera update needed
[2026-06-27 08:19:16,499.499 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:19:16,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:19:16,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:19:16,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:19:18,541.541 INFO    ] ================================================
[2026-06-27 08:19:18,552.552 INFO    ] Launching Daemon at Sat Jun 27 08:19:18 IST 2026
[2026-06-27 08:19:18,562.562 INFO    ] ================================================
[2026-06-27 08:19:18,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:19:18
[2026-06-27 08:19:19,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:19:19,308.308 INFO    ] Initializing speech engine...
[2026-06-27 08:19:19,312.312 INFO    ] 2026-06-27 08:19:19
[2026-06-27 08:19:19,530.530 INFO    ] 2026-06-27 08:19:19
[2026-06-27 08:19:19,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:19:19,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:19:19,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:19:19,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:19:20,006.006 INFO    ] time= 27/06/2026 08:19:19
[2026-06-27 08:19:20,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:19:20,035.035 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:19:20,099.099 INFO    ] No existing commands found in stream
[2026-06-27 08:19:25,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:19:25,113.113 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-27 08:19:28,778.778 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 08:19:28,779.779 INFO    ] Checking for system updates...
[2026-06-27 08:19:28,800.800 INFO    ] 200
[2026-06-27 08:19:28,801.801 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:19:28,833.833 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:19:28,834.834 INFO    ] No update needed
[2026-06-27 08:19:28,835.835 INFO    ] Checking for camera pi updates...
[2026-06-27 08:19:28,855.855 INFO    ] 200
[2026-06-27 08:19:28,857.857 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:19:28,898.898 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:19:28,945.945 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:19:28,947.947 INFO    ] No camera update needed
[2026-06-27 08:19:28,950.950 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:19:28,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:19:28,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:19:28,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:19:30,990.990 INFO    ] ================================================
[2026-06-27 08:19:31,998.998 INFO    ] Launching Daemon at Sat Jun 27 08:19:30 IST 2026
[2026-06-27 08:19:31,005.005 INFO    ] ================================================
[2026-06-27 08:19:31,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:19:31
[2026-06-27 08:19:31,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:19:31,865.865 INFO    ] Initializing speech engine...
[2026-06-27 08:19:31,872.872 INFO    ] 2026-06-27 08:19:31
[2026-06-27 08:19:32,081.081 INFO    ] 2026-06-27 08:19:32
[2026-06-27 08:19:32,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:19:32,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:19:32,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:19:32,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:19:32,469.469 INFO    ] time= 27/06/2026 08:19:32
[2026-06-27 08:19:32,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:19:32,561.561 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:19:32,631.631 INFO    ] No existing commands found in stream
[2026-06-27 08:19:37,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:19:37,644.644 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-27 08:19:39,380.380 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:19:39,381.381 INFO    ] Checking for system updates...
[2026-06-27 08:19:39,402.402 INFO    ] 200
[2026-06-27 08:19:39,403.403 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:19:39,434.434 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:19:39,436.436 INFO    ] No update needed
[2026-06-27 08:19:39,437.437 INFO    ] Checking for camera pi updates...
[2026-06-27 08:19:39,456.456 INFO    ] 200
[2026-06-27 08:19:39,457.457 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:19:39,485.485 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:19:39,534.534 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:19:39,536.536 INFO    ] No camera update needed
[2026-06-27 08:19:39,537.537 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:19:39,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:19:39,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:19:39,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:19:41,583.583 INFO    ] ================================================
[2026-06-27 08:19:41,600.600 INFO    ] Launching Daemon at Sat Jun 27 08:19:41 IST 2026
[2026-06-27 08:19:41,610.610 INFO    ] ================================================
[2026-06-27 08:19:41,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:19:41
[2026-06-27 08:19:42,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:19:42,486.486 INFO    ] Initializing speech engine...
[2026-06-27 08:19:42,489.489 INFO    ] 2026-06-27 08:19:42
[2026-06-27 08:19:42,697.697 INFO    ] 2026-06-27 08:19:42
[2026-06-27 08:19:42,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:19:42,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:19:42,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:19:43,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:19:43,126.126 INFO    ] time= 27/06/2026 08:19:43
[2026-06-27 08:19:43,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:19:43,155.155 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:19:43,223.223 INFO    ] No existing commands found in stream
[2026-06-27 08:19:48,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:19:48,235.235 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-27 08:19:52,242.242 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 08:19:52,244.244 INFO    ] Checking for system updates...
[2026-06-27 08:19:52,267.267 INFO    ] 200
[2026-06-27 08:19:52,268.268 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:19:52,301.301 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:19:52,303.303 INFO    ] No update needed
[2026-06-27 08:19:52,304.304 INFO    ] Checking for camera pi updates...
[2026-06-27 08:19:52,325.325 INFO    ] 200
[2026-06-27 08:19:52,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:19:52,351.351 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:19:52,390.390 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:19:52,392.392 INFO    ] No camera update needed
[2026-06-27 08:19:52,393.393 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:19:52,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:19:52,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:19:52,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:19:54,439.439 INFO    ] ================================================
[2026-06-27 08:19:54,454.454 INFO    ] Launching Daemon at Sat Jun 27 08:19:54 IST 2026
[2026-06-27 08:19:54,465.465 INFO    ] ================================================
[2026-06-27 08:19:54,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:19:54
[2026-06-27 08:19:55,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:19:55,288.288 INFO    ] Initializing speech engine...
[2026-06-27 08:19:55,298.298 INFO    ] 2026-06-27 08:19:55
[2026-06-27 08:19:55,514.514 INFO    ] 2026-06-27 08:19:55
[2026-06-27 08:19:55,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:19:55,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:19:55,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:19:55,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:19:55,932.932 INFO    ] time= 27/06/2026 08:19:55
[2026-06-27 08:19:55,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:19:55,967.967 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:19:56,032.032 INFO    ] No existing commands found in stream
[2026-06-27 08:20:01,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:20:01,046.046 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-27 08:20:08,441.441 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:20:08,443.443 INFO    ] Checking for system updates...
[2026-06-27 08:20:08,466.466 INFO    ] 200
[2026-06-27 08:20:08,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:20:08,501.501 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:20:08,502.502 INFO    ] No update needed
[2026-06-27 08:20:08,504.504 INFO    ] Checking for camera pi updates...
[2026-06-27 08:20:08,523.523 INFO    ] 200
[2026-06-27 08:20:08,525.525 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:20:08,550.550 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:20:08,697.697 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:20:08,699.699 INFO    ] No camera update needed
[2026-06-27 08:20:08,700.700 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:20:08,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:20:08,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:20:08,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:20:10,748.748 INFO    ] ================================================
[2026-06-27 08:20:10,764.764 INFO    ] Launching Daemon at Sat Jun 27 08:20:10 IST 2026
[2026-06-27 08:20:10,774.774 INFO    ] ================================================
[2026-06-27 08:20:11,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:20:11
[2026-06-27 08:20:11,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:20:11,546.546 INFO    ] Initializing speech engine...
[2026-06-27 08:20:11,550.550 INFO    ] 2026-06-27 08:20:11
[2026-06-27 08:20:11,768.768 INFO    ] 2026-06-27 08:20:11
[2026-06-27 08:20:11,798.798 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:20:11,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:20:11,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:20:12,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:20:12,195.195 INFO    ] time= 27/06/2026 08:20:12
[2026-06-27 08:20:12,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:20:12,224.224 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:20:12,599.599 INFO    ] No existing commands found in stream
[2026-06-27 08:20:17,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:20:17,621.621 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-27 08:20:19,069.069 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 08:20:19,071.071 INFO    ] Checking for system updates...
[2026-06-27 08:20:19,093.093 INFO    ] 200
[2026-06-27 08:20:19,094.094 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:20:19,125.125 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:20:19,126.126 INFO    ] No update needed
[2026-06-27 08:20:19,128.128 INFO    ] Checking for camera pi updates...
[2026-06-27 08:20:19,147.147 INFO    ] 200
[2026-06-27 08:20:19,148.148 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:20:19,172.172 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:20:19,208.208 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:20:19,209.209 INFO    ] No camera update needed
[2026-06-27 08:20:19,210.210 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:20:19,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:20:19,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:20:19,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:20:21,259.259 INFO    ] ================================================
[2026-06-27 08:20:21,274.274 INFO    ] Launching Daemon at Sat Jun 27 08:20:21 IST 2026
[2026-06-27 08:20:21,285.285 INFO    ] ================================================
[2026-06-27 08:20:21,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:20:21
[2026-06-27 08:20:21,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:20:22,106.106 INFO    ] Initializing speech engine...
[2026-06-27 08:20:22,112.112 INFO    ] 2026-06-27 08:20:22
[2026-06-27 08:20:22,331.331 INFO    ] 2026-06-27 08:20:22
[2026-06-27 08:20:22,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:20:22,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:20:22,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:20:22,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:20:22,763.763 INFO    ] time= 27/06/2026 08:20:22
[2026-06-27 08:20:22,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:20:22,810.810 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:20:22,885.885 INFO    ] No existing commands found in stream
[2026-06-27 08:20:27,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:20:27,898.898 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-27 08:20:29,593.593 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 08:20:29,594.594 INFO    ] Checking for system updates...
[2026-06-27 08:20:29,615.615 INFO    ] 200
[2026-06-27 08:20:29,617.617 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:20:29,647.647 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:20:29,648.648 INFO    ] No update needed
[2026-06-27 08:20:29,649.649 INFO    ] Checking for camera pi updates...
[2026-06-27 08:20:29,672.672 INFO    ] 200
[2026-06-27 08:20:29,674.674 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:20:29,697.697 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:20:29,746.746 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:20:29,747.747 INFO    ] No camera update needed
[2026-06-27 08:20:29,749.749 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:20:29,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:20:29,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:20:29,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:20:31,788.788 INFO    ] ================================================
[2026-06-27 08:20:31,798.798 INFO    ] Launching Daemon at Sat Jun 27 08:20:31 IST 2026
[2026-06-27 08:20:31,804.804 INFO    ] ================================================
[2026-06-27 08:20:32,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:20:32
[2026-06-27 08:20:32,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:20:32,604.604 INFO    ] Initializing speech engine...
[2026-06-27 08:20:32,609.609 INFO    ] 2026-06-27 08:20:32
[2026-06-27 08:20:32,817.817 INFO    ] 2026-06-27 08:20:32
[2026-06-27 08:20:32,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:20:33,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:20:33,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:20:33,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:20:33,243.243 INFO    ] time= 27/06/2026 08:20:33
[2026-06-27 08:20:33,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:20:33,265.265 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:20:33,333.333 INFO    ] No existing commands found in stream
[2026-06-27 08:20:38,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:20:38,351.351 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-27 08:20:40,108.108 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 08:20:40,110.110 INFO    ] Checking for system updates...
[2026-06-27 08:20:40,131.131 INFO    ] 200
[2026-06-27 08:20:40,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:20:40,165.165 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:20:40,166.166 INFO    ] No update needed
[2026-06-27 08:20:40,167.167 INFO    ] Checking for camera pi updates...
[2026-06-27 08:20:40,190.190 INFO    ] 200
[2026-06-27 08:20:40,191.191 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:20:40,216.216 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:20:40,254.254 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:20:40,255.255 INFO    ] No camera update needed
[2026-06-27 08:20:40,256.256 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:20:40,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:20:40,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:20:40,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:20:42,303.303 INFO    ] ================================================
[2026-06-27 08:20:42,318.318 INFO    ] Launching Daemon at Sat Jun 27 08:20:42 IST 2026
[2026-06-27 08:20:42,329.329 INFO    ] ================================================
[2026-06-27 08:20:42,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:20:42
[2026-06-27 08:20:42,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:20:43,135.135 INFO    ] Initializing speech engine...
[2026-06-27 08:20:43,141.141 INFO    ] 2026-06-27 08:20:43
[2026-06-27 08:20:43,358.358 INFO    ] 2026-06-27 08:20:43
[2026-06-27 08:20:43,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:20:43,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:20:43,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:20:43,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:20:43,797.797 INFO    ] time= 27/06/2026 08:20:43
[2026-06-27 08:20:43,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:20:43,827.827 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:20:43,895.895 INFO    ] No existing commands found in stream
[2026-06-27 08:20:48,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:20:48,913.913 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-27 08:20:50,192.192 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 08:20:50,194.194 INFO    ] Checking for system updates...
[2026-06-27 08:20:50,216.216 INFO    ] 200
[2026-06-27 08:20:50,217.217 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:20:50,249.249 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:20:50,251.251 INFO    ] No update needed
[2026-06-27 08:20:50,252.252 INFO    ] Checking for camera pi updates...
[2026-06-27 08:20:50,271.271 INFO    ] 200
[2026-06-27 08:20:50,273.273 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:20:50,298.298 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:20:50,337.337 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:20:50,339.339 INFO    ] No camera update needed
[2026-06-27 08:20:50,340.340 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:20:50,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:20:50,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:20:50,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:20:52,386.386 INFO    ] ================================================
[2026-06-27 08:20:52,401.401 INFO    ] Launching Daemon at Sat Jun 27 08:20:52 IST 2026
[2026-06-27 08:20:52,411.411 INFO    ] ================================================
[2026-06-27 08:20:52,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:20:52
[2026-06-27 08:20:53,117.117 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:20:53,248.248 INFO    ] Initializing speech engine...
[2026-06-27 08:20:53,256.256 INFO    ] 2026-06-27 08:20:53
[2026-06-27 08:20:53,470.470 INFO    ] 2026-06-27 08:20:53
[2026-06-27 08:20:53,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:20:53,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:20:53,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:20:53,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:20:53,887.887 INFO    ] time= 27/06/2026 08:20:53
[2026-06-27 08:20:53,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:20:53,927.927 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:20:53,995.995 INFO    ] No existing commands found in stream
[2026-06-27 08:20:59,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:20:59,007.007 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-27 08:21:03,318.318 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 08:21:03,320.320 INFO    ] Checking for system updates...
[2026-06-27 08:21:03,356.356 INFO    ] 200
[2026-06-27 08:21:03,359.359 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:21:03,400.400 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:21:03,402.402 INFO    ] No update needed
[2026-06-27 08:21:03,403.403 INFO    ] Checking for camera pi updates...
[2026-06-27 08:21:03,424.424 INFO    ] 200
[2026-06-27 08:21:03,425.425 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:21:03,449.449 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:21:03,484.484 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:21:03,485.485 INFO    ] No camera update needed
[2026-06-27 08:21:03,486.486 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:21:03,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:21:03,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:21:03,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:21:05,531.531 INFO    ] ================================================
[2026-06-27 08:21:05,546.546 INFO    ] Launching Daemon at Sat Jun 27 08:21:05 IST 2026
[2026-06-27 08:21:05,558.558 INFO    ] ================================================
[2026-06-27 08:21:05,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:21:05
[2026-06-27 08:21:06,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:21:06,406.406 INFO    ] Initializing speech engine...
[2026-06-27 08:21:06,418.418 INFO    ] 2026-06-27 08:21:06
[2026-06-27 08:21:06,628.628 INFO    ] 2026-06-27 08:21:06
[2026-06-27 08:21:06,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:21:06,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:21:06,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:21:06,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:21:07,054.054 INFO    ] time= 27/06/2026 08:21:06
[2026-06-27 08:21:07,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:21:07,084.084 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:21:07,151.151 INFO    ] No existing commands found in stream
[2026-06-27 08:21:12,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:21:12,165.165 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-27 08:21:13,152.152 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 08:21:13,154.154 INFO    ] Checking for system updates...
[2026-06-27 08:21:13,175.175 INFO    ] 200
[2026-06-27 08:21:13,177.177 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:21:13,207.207 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:21:13,209.209 INFO    ] No update needed
[2026-06-27 08:21:13,210.210 INFO    ] Checking for camera pi updates...
[2026-06-27 08:21:13,230.230 INFO    ] 200
[2026-06-27 08:21:13,231.231 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:21:13,257.257 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:21:13,296.296 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:21:13,298.298 INFO    ] No camera update needed
[2026-06-27 08:21:13,299.299 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:21:13,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:21:13,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:21:13,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:21:15,344.344 INFO    ] ================================================
[2026-06-27 08:21:15,360.360 INFO    ] Launching Daemon at Sat Jun 27 08:21:15 IST 2026
[2026-06-27 08:21:15,371.371 INFO    ] ================================================
[2026-06-27 08:21:15,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:21:15
[2026-06-27 08:21:16,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:21:16,162.162 INFO    ] Initializing speech engine...
[2026-06-27 08:21:16,175.175 INFO    ] 2026-06-27 08:21:16
[2026-06-27 08:21:16,382.382 INFO    ] 2026-06-27 08:21:16
[2026-06-27 08:21:16,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:21:16,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:21:16,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:21:16,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:21:16,787.787 INFO    ] time= 27/06/2026 08:21:16
[2026-06-27 08:21:16,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:21:16,827.827 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:21:16,921.921 INFO    ] No existing commands found in stream
[2026-06-27 08:21:21,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:21:21,933.933 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-27 08:21:23,498.498 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:21:23,499.499 INFO    ] Checking for system updates...
[2026-06-27 08:21:23,526.526 INFO    ] 200
[2026-06-27 08:21:23,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:21:23,558.558 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:21:23,560.560 INFO    ] No update needed
[2026-06-27 08:21:23,561.561 INFO    ] Checking for camera pi updates...
[2026-06-27 08:21:23,580.580 INFO    ] 200
[2026-06-27 08:21:23,582.582 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:21:23,609.609 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:21:23,649.649 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:21:23,650.650 INFO    ] No camera update needed
[2026-06-27 08:21:23,651.651 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:21:23,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:21:23,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:21:23,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:21:25,698.698 INFO    ] ================================================
[2026-06-27 08:21:25,713.713 INFO    ] Launching Daemon at Sat Jun 27 08:21:25 IST 2026
[2026-06-27 08:21:25,724.724 INFO    ] ================================================
[2026-06-27 08:21:26,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:21:26
[2026-06-27 08:21:26,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:21:26,572.572 INFO    ] Initializing speech engine...
[2026-06-27 08:21:26,578.578 INFO    ] 2026-06-27 08:21:26
[2026-06-27 08:21:26,789.789 INFO    ] 2026-06-27 08:21:26
[2026-06-27 08:21:26,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:21:27,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:21:27,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:21:27,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:21:27,198.198 INFO    ] time= 27/06/2026 08:21:27
[2026-06-27 08:21:27,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:21:27,239.239 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:21:27,310.310 INFO    ] No existing commands found in stream
[2026-06-27 08:21:32,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:21:32,322.322 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-27 08:21:35,807.807 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 08:21:35,809.809 INFO    ] Checking for system updates...
[2026-06-27 08:21:35,830.830 INFO    ] 200
[2026-06-27 08:21:35,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:21:35,865.865 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:21:35,866.866 INFO    ] No update needed
[2026-06-27 08:21:35,868.868 INFO    ] Checking for camera pi updates...
[2026-06-27 08:21:35,888.888 INFO    ] 200
[2026-06-27 08:21:35,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:21:35,914.914 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:21:35,953.953 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:21:35,954.954 INFO    ] No camera update needed
[2026-06-27 08:21:35,955.955 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:21:35,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:21:35,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:21:35,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:21:38,002.002 INFO    ] ================================================
[2026-06-27 08:21:38,017.017 INFO    ] Launching Daemon at Sat Jun 27 08:21:38 IST 2026
[2026-06-27 08:21:38,028.028 INFO    ] ================================================
[2026-06-27 08:21:38,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:21:38
[2026-06-27 08:21:38,674.674 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:21:38,806.806 INFO    ] Initializing speech engine...
[2026-06-27 08:21:38,811.811 INFO    ] 2026-06-27 08:21:38
[2026-06-27 08:21:39,030.030 INFO    ] 2026-06-27 08:21:39
[2026-06-27 08:21:39,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:21:39,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:21:39,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:21:39,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:21:39,441.441 INFO    ] time= 27/06/2026 08:21:39
[2026-06-27 08:21:39,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:21:39,482.482 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:21:39,553.553 INFO    ] No existing commands found in stream
[2026-06-27 08:21:44,564.564 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:21:44,566.566 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-27 08:21:45,757.757 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 08:21:45,758.758 INFO    ] Checking for system updates...
[2026-06-27 08:21:45,780.780 INFO    ] 200
[2026-06-27 08:21:45,781.781 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:21:45,812.812 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:21:45,813.813 INFO    ] No update needed
[2026-06-27 08:21:45,815.815 INFO    ] Checking for camera pi updates...
[2026-06-27 08:21:45,835.835 INFO    ] 200
[2026-06-27 08:21:45,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:21:45,862.862 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:21:45,902.902 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:21:45,903.903 INFO    ] No camera update needed
[2026-06-27 08:21:45,905.905 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:21:45,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:21:45,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:21:45,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:21:47,943.943 INFO    ] ================================================
[2026-06-27 08:21:47,958.958 INFO    ] Launching Daemon at Sat Jun 27 08:21:47 IST 2026
[2026-06-27 08:21:47,969.969 INFO    ] ================================================
[2026-06-27 08:21:48,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:21:48
[2026-06-27 08:21:48,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:21:48,791.791 INFO    ] Initializing speech engine...
[2026-06-27 08:21:48,797.797 INFO    ] 2026-06-27 08:21:48
[2026-06-27 08:21:49,001.001 INFO    ] 2026-06-27 08:21:48
[2026-06-27 08:21:49,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:21:49,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:21:49,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:21:49,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:21:49,419.419 INFO    ] time= 27/06/2026 08:21:49
[2026-06-27 08:21:49,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:21:49,448.448 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:21:49,516.516 INFO    ] No existing commands found in stream
[2026-06-27 08:21:54,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:21:54,528.528 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-27 08:21:56,499.499 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 08:21:56,501.501 INFO    ] Checking for system updates...
[2026-06-27 08:21:56,522.522 INFO    ] 200
[2026-06-27 08:21:56,523.523 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:21:56,557.557 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:21:56,558.558 INFO    ] No update needed
[2026-06-27 08:21:56,560.560 INFO    ] Checking for camera pi updates...
[2026-06-27 08:21:56,580.580 INFO    ] 200
[2026-06-27 08:21:56,582.582 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:21:56,606.606 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:21:56,641.641 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:21:56,643.643 INFO    ] No camera update needed
[2026-06-27 08:21:56,644.644 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:21:56,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:21:56,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:21:56,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:21:58,689.689 INFO    ] ================================================
[2026-06-27 08:21:58,705.705 INFO    ] Launching Daemon at Sat Jun 27 08:21:58 IST 2026
[2026-06-27 08:21:58,716.716 INFO    ] ================================================
[2026-06-27 08:21:59,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:21:59
[2026-06-27 08:21:59,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:21:59,602.602 INFO    ] Initializing speech engine...
[2026-06-27 08:21:59,608.608 INFO    ] 2026-06-27 08:21:59
[2026-06-27 08:21:59,819.819 INFO    ] 2026-06-27 08:21:59
[2026-06-27 08:21:59,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:22:00,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:22:00,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:22:00,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:22:00,254.254 INFO    ] time= 27/06/2026 08:22:00
[2026-06-27 08:22:00,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:22:00,342.342 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:22:00,397.397 INFO    ] No existing commands found in stream
[2026-06-27 08:22:05,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:22:05,410.410 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-27 08:22:09,347.347 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 08:22:09,348.348 INFO    ] Checking for system updates...
[2026-06-27 08:22:09,370.370 INFO    ] 200
[2026-06-27 08:22:09,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:22:09,401.401 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:22:09,403.403 INFO    ] No update needed
[2026-06-27 08:22:09,404.404 INFO    ] Checking for camera pi updates...
[2026-06-27 08:22:09,426.426 INFO    ] 200
[2026-06-27 08:22:09,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:22:09,453.453 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:22:09,595.595 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:22:09,597.597 INFO    ] No camera update needed
[2026-06-27 08:22:09,598.598 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:22:09,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:22:09,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:22:09,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:22:11,644.644 INFO    ] ================================================
[2026-06-27 08:22:11,659.659 INFO    ] Launching Daemon at Sat Jun 27 08:22:11 IST 2026
[2026-06-27 08:22:11,670.670 INFO    ] ================================================
[2026-06-27 08:22:12,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:22:12
[2026-06-27 08:22:12,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:22:12,492.492 INFO    ] Initializing speech engine...
[2026-06-27 08:22:12,498.498 INFO    ] 2026-06-27 08:22:12
[2026-06-27 08:22:12,702.702 INFO    ] 2026-06-27 08:22:12
[2026-06-27 08:22:12,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:22:12,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:22:12,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:22:13,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:22:13,141.141 INFO    ] time= 27/06/2026 08:22:13
[2026-06-27 08:22:13,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:22:13,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:22:13,215.215 INFO    ] No existing commands found in stream
[2026-06-27 08:22:18,225.225 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:22:18,227.227 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-27 08:22:19,696.696 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:22:19,698.698 INFO    ] Checking for system updates...
[2026-06-27 08:22:19,721.721 INFO    ] 200
[2026-06-27 08:22:19,722.722 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:22:21,056.056 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:22:21,059.059 INFO    ] No update needed
[2026-06-27 08:22:21,062.062 INFO    ] Checking for camera pi updates...
[2026-06-27 08:22:21,097.097 INFO    ] 200
[2026-06-27 08:22:21,100.100 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:22:21,142.142 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:22:21,168.168 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:22:21,169.169 INFO    ] No camera update needed
[2026-06-27 08:22:21,171.171 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:22:21,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:22:21,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:22:21,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:22:23,218.218 INFO    ] ================================================
[2026-06-27 08:22:23,233.233 INFO    ] Launching Daemon at Sat Jun 27 08:22:23 IST 2026
[2026-06-27 08:22:23,244.244 INFO    ] ================================================
[2026-06-27 08:22:25,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:22:23
[2026-06-27 08:22:25,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:22:25,837.837 INFO    ] Initializing speech engine...
[2026-06-27 08:22:25,843.843 INFO    ] 2026-06-27 08:22:25
[2026-06-27 08:22:26,056.056 INFO    ] 2026-06-27 08:22:26
[2026-06-27 08:22:26,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:22:26,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:22:26,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:22:26,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:22:26,481.481 INFO    ] time= 27/06/2026 08:22:26
[2026-06-27 08:22:26,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:22:26,512.512 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:22:26,605.605 INFO    ] No existing commands found in stream
[2026-06-27 08:22:31,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:22:31,618.618 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-27 08:22:34,183.183 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 08:22:34,185.185 INFO    ] Checking for system updates...
[2026-06-27 08:22:34,207.207 INFO    ] 200
[2026-06-27 08:22:34,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:22:34,240.240 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:22:34,241.241 INFO    ] No update needed
[2026-06-27 08:22:34,242.242 INFO    ] Checking for camera pi updates...
[2026-06-27 08:22:34,262.262 INFO    ] 200
[2026-06-27 08:22:34,263.263 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:22:34,287.287 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:22:34,322.322 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:22:34,324.324 INFO    ] No camera update needed
[2026-06-27 08:22:34,325.325 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:22:34,326.326 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:22:34,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:22:34,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:22:36,371.371 INFO    ] ================================================
[2026-06-27 08:22:36,386.386 INFO    ] Launching Daemon at Sat Jun 27 08:22:36 IST 2026
[2026-06-27 08:22:36,397.397 INFO    ] ================================================
[2026-06-27 08:22:36,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:22:36
[2026-06-27 08:22:37,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:22:37,193.193 INFO    ] Initializing speech engine...
[2026-06-27 08:22:37,198.198 INFO    ] 2026-06-27 08:22:37
[2026-06-27 08:22:37,402.402 INFO    ] 2026-06-27 08:22:37
[2026-06-27 08:22:37,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:22:37,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:22:37,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:22:37,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:22:37,818.818 INFO    ] time= 27/06/2026 08:22:37
[2026-06-27 08:22:37,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:22:37,851.851 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:22:37,918.918 INFO    ] No existing commands found in stream
[2026-06-27 08:22:42,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:22:42,929.929 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-27 08:22:45,518.518 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 08:22:45,519.519 INFO    ] Checking for system updates...
[2026-06-27 08:22:45,541.541 INFO    ] 200
[2026-06-27 08:22:45,542.542 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:22:45,575.575 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:22:45,577.577 INFO    ] No update needed
[2026-06-27 08:22:45,578.578 INFO    ] Checking for camera pi updates...
[2026-06-27 08:22:45,599.599 INFO    ] 200
[2026-06-27 08:22:45,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:22:45,625.625 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:22:45,665.665 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:22:45,666.666 INFO    ] No camera update needed
[2026-06-27 08:22:45,667.667 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:22:45,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:22:45,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:22:45,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:22:47,712.712 INFO    ] ================================================
[2026-06-27 08:22:47,727.727 INFO    ] Launching Daemon at Sat Jun 27 08:22:47 IST 2026
[2026-06-27 08:22:47,739.739 INFO    ] ================================================
[2026-06-27 08:22:48,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:22:48
[2026-06-27 08:22:48,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:22:48,556.556 INFO    ] Initializing speech engine...
[2026-06-27 08:22:48,561.561 INFO    ] 2026-06-27 08:22:48
[2026-06-27 08:22:48,763.763 INFO    ] 2026-06-27 08:22:48
[2026-06-27 08:22:48,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:22:48,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:22:48,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:22:49,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:22:49,179.179 INFO    ] time= 27/06/2026 08:22:49
[2026-06-27 08:22:49,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:22:49,212.212 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:22:49,278.278 INFO    ] No existing commands found in stream
[2026-06-27 08:22:54,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:22:54,295.295 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-27 08:22:57,587.587 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:22:57,588.588 INFO    ] Checking for system updates...
[2026-06-27 08:22:57,609.609 INFO    ] 200
[2026-06-27 08:22:57,610.610 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:22:57,641.641 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:22:57,642.642 INFO    ] No update needed
[2026-06-27 08:22:57,643.643 INFO    ] Checking for camera pi updates...
[2026-06-27 08:22:57,664.664 INFO    ] 200
[2026-06-27 08:22:57,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:22:57,690.690 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:22:57,728.728 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:22:57,729.729 INFO    ] No camera update needed
[2026-06-27 08:22:57,730.730 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:22:57,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:22:57,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:22:57,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:22:59,776.776 INFO    ] ================================================
[2026-06-27 08:22:59,791.791 INFO    ] Launching Daemon at Sat Jun 27 08:22:59 IST 2026
[2026-06-27 08:22:59,803.803 INFO    ] ================================================
[2026-06-27 08:23:00,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:23:00
[2026-06-27 08:23:00,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:23:00,591.591 INFO    ] Initializing speech engine...
[2026-06-27 08:23:00,595.595 INFO    ] 2026-06-27 08:23:00
[2026-06-27 08:23:00,799.799 INFO    ] 2026-06-27 08:23:00
[2026-06-27 08:23:00,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:23:01,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:23:01,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:23:01,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:23:01,228.228 INFO    ] time= 27/06/2026 08:23:01
[2026-06-27 08:23:01,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:23:01,376.376 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:23:01,444.444 INFO    ] No existing commands found in stream
[2026-06-27 08:23:06,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:23:06,460.460 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-27 08:23:09,707.707 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 08:23:09,708.708 INFO    ] Checking for system updates...
[2026-06-27 08:23:09,729.729 INFO    ] 200
[2026-06-27 08:23:09,731.731 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:23:09,764.764 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:23:09,766.766 INFO    ] No update needed
[2026-06-27 08:23:09,767.767 INFO    ] Checking for camera pi updates...
[2026-06-27 08:23:09,788.788 INFO    ] 200
[2026-06-27 08:23:09,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:23:09,815.815 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:23:09,863.863 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:23:09,864.864 INFO    ] No camera update needed
[2026-06-27 08:23:09,866.866 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:23:09,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:23:09,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:23:09,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:23:11,913.913 INFO    ] ================================================
[2026-06-27 08:23:11,929.929 INFO    ] Launching Daemon at Sat Jun 27 08:23:11 IST 2026
[2026-06-27 08:23:11,939.939 INFO    ] ================================================
[2026-06-27 08:23:12,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:23:12
[2026-06-27 08:23:12,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:23:12,744.744 INFO    ] Initializing speech engine...
[2026-06-27 08:23:12,747.747 INFO    ] 2026-06-27 08:23:12
[2026-06-27 08:23:12,966.966 INFO    ] 2026-06-27 08:23:12
[2026-06-27 08:23:12,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:23:13,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:23:13,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:23:13,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:23:13,392.392 INFO    ] time= 27/06/2026 08:23:13
[2026-06-27 08:23:13,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:23:13,422.422 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:23:13,490.490 INFO    ] No existing commands found in stream
[2026-06-27 08:23:18,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:23:18,501.501 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-27 08:23:19,744.744 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 08:23:19,746.746 INFO    ] Checking for system updates...
[2026-06-27 08:23:19,767.767 INFO    ] 200
[2026-06-27 08:23:19,768.768 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:23:19,799.799 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:23:19,801.801 INFO    ] No update needed
[2026-06-27 08:23:19,805.805 INFO    ] Checking for camera pi updates...
[2026-06-27 08:23:19,827.827 INFO    ] 200
[2026-06-27 08:23:19,828.828 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:23:19,852.852 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:23:19,890.890 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:23:19,892.892 INFO    ] No camera update needed
[2026-06-27 08:23:19,894.894 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:23:19,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:23:19,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:23:19,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:23:21,941.941 INFO    ] ================================================
[2026-06-27 08:23:21,956.956 INFO    ] Launching Daemon at Sat Jun 27 08:23:21 IST 2026
[2026-06-27 08:23:21,966.966 INFO    ] ================================================
[2026-06-27 08:23:22,349.349 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:23:22
[2026-06-27 08:23:22,698.698 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:23:22,853.853 INFO    ] Initializing speech engine...
[2026-06-27 08:23:22,859.859 INFO    ] 2026-06-27 08:23:22
[2026-06-27 08:23:23,070.070 INFO    ] 2026-06-27 08:23:23
[2026-06-27 08:23:23,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:23:23,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:23:23,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:23:23,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:23:23,498.498 INFO    ] time= 27/06/2026 08:23:23
[2026-06-27 08:23:23,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:23:23,528.528 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:23:23,596.596 INFO    ] No existing commands found in stream
[2026-06-27 08:23:28,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:23:28,609.609 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-27 08:23:31,982.982 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:23:31,986.986 INFO    ] Checking for system updates...
[2026-06-27 08:23:32,011.011 INFO    ] 200
[2026-06-27 08:23:32,012.012 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:23:32,044.044 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:23:32,045.045 INFO    ] No update needed
[2026-06-27 08:23:32,047.047 INFO    ] Checking for camera pi updates...
[2026-06-27 08:23:32,067.067 INFO    ] 200
[2026-06-27 08:23:32,068.068 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:23:32,092.092 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:23:32,119.119 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:23:32,120.120 INFO    ] No camera update needed
[2026-06-27 08:23:32,122.122 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:23:32,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:23:32,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:23:32,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:23:34,170.170 INFO    ] ================================================
[2026-06-27 08:23:34,185.185 INFO    ] Launching Daemon at Sat Jun 27 08:23:34 IST 2026
[2026-06-27 08:23:34,197.197 INFO    ] ================================================
[2026-06-27 08:23:34,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:23:34
[2026-06-27 08:23:34,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:23:34,996.996 INFO    ] Initializing speech engine...
[2026-06-27 08:23:34,999.999 INFO    ] 2026-06-27 08:23:34
[2026-06-27 08:23:35,219.219 INFO    ] 2026-06-27 08:23:35
[2026-06-27 08:23:35,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:23:35,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:23:35,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:23:35,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:23:35,644.644 INFO    ] time= 27/06/2026 08:23:35
[2026-06-27 08:23:35,668.668 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:23:35,673.673 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:23:35,742.742 INFO    ] No existing commands found in stream
[2026-06-27 08:23:40,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:23:40,754.754 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-27 08:23:43,637.637 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 08:23:43,638.638 INFO    ] Checking for system updates...
[2026-06-27 08:23:43,660.660 INFO    ] 200
[2026-06-27 08:23:43,662.662 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:23:43,695.695 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:23:43,696.696 INFO    ] No update needed
[2026-06-27 08:23:43,697.697 INFO    ] Checking for camera pi updates...
[2026-06-27 08:23:43,718.718 INFO    ] 200
[2026-06-27 08:23:43,720.720 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:23:43,745.745 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:23:43,784.784 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:23:43,786.786 INFO    ] No camera update needed
[2026-06-27 08:23:43,787.787 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:23:43,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:23:43,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:23:43,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:23:45,836.836 INFO    ] ================================================
[2026-06-27 08:23:45,851.851 INFO    ] Launching Daemon at Sat Jun 27 08:23:45 IST 2026
[2026-06-27 08:23:45,863.863 INFO    ] ================================================
[2026-06-27 08:23:46,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:23:46
[2026-06-27 08:23:46,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:23:46,759.759 INFO    ] Initializing speech engine...
[2026-06-27 08:23:46,764.764 INFO    ] 2026-06-27 08:23:46
[2026-06-27 08:23:46,977.977 INFO    ] 2026-06-27 08:23:46
[2026-06-27 08:23:47,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:23:47,194.194 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:23:47,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:23:47,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:23:47,427.427 INFO    ] time= 27/06/2026 08:23:47
[2026-06-27 08:23:47,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:23:47,434.434 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:23:47,503.503 INFO    ] No existing commands found in stream
[2026-06-27 08:23:52,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:23:52,521.521 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-27 08:23:53,865.865 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:23:53,867.867 INFO    ] Checking for system updates...
[2026-06-27 08:23:53,888.888 INFO    ] 200
[2026-06-27 08:23:53,893.893 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:23:53,924.924 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:23:53,926.926 INFO    ] No update needed
[2026-06-27 08:23:53,927.927 INFO    ] Checking for camera pi updates...
[2026-06-27 08:23:53,947.947 INFO    ] 200
[2026-06-27 08:23:53,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:23:53,975.975 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:23:54,001.001 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:23:54,002.002 INFO    ] No camera update needed
[2026-06-27 08:23:54,004.004 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:23:54,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:23:54,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:23:54,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:23:56,053.053 INFO    ] ================================================
[2026-06-27 08:23:56,068.068 INFO    ] Launching Daemon at Sat Jun 27 08:23:56 IST 2026
[2026-06-27 08:23:56,079.079 INFO    ] ================================================
[2026-06-27 08:23:56,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:23:56
[2026-06-27 08:23:56,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:23:56,961.961 INFO    ] Initializing speech engine...
[2026-06-27 08:23:56,967.967 INFO    ] 2026-06-27 08:23:56
[2026-06-27 08:23:57,175.175 INFO    ] 2026-06-27 08:23:57
[2026-06-27 08:23:57,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:23:57,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:23:57,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:23:57,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:23:57,616.616 INFO    ] time= 27/06/2026 08:23:57
[2026-06-27 08:23:57,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:23:57,623.623 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:23:57,689.689 INFO    ] No existing commands found in stream
[2026-06-27 08:24:02,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:24:02,697.697 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-27 08:24:04,778.778 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:24:04,779.779 INFO    ] Checking for system updates...
[2026-06-27 08:24:04,800.800 INFO    ] 200
[2026-06-27 08:24:04,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:24:04,832.832 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:24:04,834.834 INFO    ] No update needed
[2026-06-27 08:24:04,835.835 INFO    ] Checking for camera pi updates...
[2026-06-27 08:24:04,856.856 INFO    ] 200
[2026-06-27 08:24:04,857.857 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:24:04,884.884 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:24:04,923.923 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:24:04,925.925 INFO    ] No camera update needed
[2026-06-27 08:24:04,926.926 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:24:04,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:24:04,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:24:04,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:24:06,973.973 INFO    ] ================================================
[2026-06-27 08:24:06,989.989 INFO    ] Launching Daemon at Sat Jun 27 08:24:06 IST 2026
[2026-06-27 08:24:07,002.002 INFO    ] ================================================
[2026-06-27 08:24:07,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:24:07
[2026-06-27 08:24:07,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:24:07,877.877 INFO    ] Initializing speech engine...
[2026-06-27 08:24:07,884.884 INFO    ] 2026-06-27 08:24:07
[2026-06-27 08:24:08,097.097 INFO    ] 2026-06-27 08:24:08
[2026-06-27 08:24:08,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:24:08,314.314 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:24:08,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:24:08,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:24:08,523.523 INFO    ] time= 27/06/2026 08:24:08
[2026-06-27 08:24:08,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:24:08,552.552 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:24:08,620.620 INFO    ] No existing commands found in stream
[2026-06-27 08:24:13,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:24:13,633.633 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-27 08:24:14,560.560 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:24:14,561.561 INFO    ] Checking for system updates...
[2026-06-27 08:24:14,585.585 INFO    ] 200
[2026-06-27 08:24:14,586.586 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:24:14,620.620 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:24:14,622.622 INFO    ] No update needed
[2026-06-27 08:24:14,623.623 INFO    ] Checking for camera pi updates...
[2026-06-27 08:24:14,643.643 INFO    ] 200
[2026-06-27 08:24:14,645.645 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:24:14,669.669 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:24:14,817.817 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:24:14,819.819 INFO    ] No camera update needed
[2026-06-27 08:24:14,820.820 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:24:14,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:24:14,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:24:14,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:24:16,869.869 INFO    ] ================================================
[2026-06-27 08:24:16,885.885 INFO    ] Launching Daemon at Sat Jun 27 08:24:16 IST 2026
[2026-06-27 08:24:16,897.897 INFO    ] ================================================
[2026-06-27 08:24:17,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:24:17
[2026-06-27 08:24:17,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:24:17,746.746 INFO    ] Initializing speech engine...
[2026-06-27 08:24:17,757.757 INFO    ] 2026-06-27 08:24:17
[2026-06-27 08:24:17,962.962 INFO    ] 2026-06-27 08:24:17
[2026-06-27 08:24:17,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:24:18,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:24:18,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:24:18,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:24:18,379.379 INFO    ] time= 27/06/2026 08:24:18
[2026-06-27 08:24:18,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:24:18,409.409 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:24:18,475.475 INFO    ] No existing commands found in stream
[2026-06-27 08:24:23,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:24:23,488.488 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-27 08:24:25,189.189 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 08:24:25,191.191 INFO    ] Checking for system updates...
[2026-06-27 08:24:25,213.213 INFO    ] 200
[2026-06-27 08:24:25,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:24:25,246.246 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:24:25,248.248 INFO    ] No update needed
[2026-06-27 08:24:25,249.249 INFO    ] Checking for camera pi updates...
[2026-06-27 08:24:25,270.270 INFO    ] 200
[2026-06-27 08:24:25,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:24:25,295.295 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:24:25,335.335 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:24:25,337.337 INFO    ] No camera update needed
[2026-06-27 08:24:25,338.338 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:24:25,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:24:25,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:24:25,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:24:27,385.385 INFO    ] ================================================
[2026-06-27 08:24:27,400.400 INFO    ] Launching Daemon at Sat Jun 27 08:24:27 IST 2026
[2026-06-27 08:24:27,411.411 INFO    ] ================================================
[2026-06-27 08:24:27,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:24:27
[2026-06-27 08:24:28,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:24:28,222.222 INFO    ] Initializing speech engine...
[2026-06-27 08:24:28,230.230 INFO    ] 2026-06-27 08:24:28
[2026-06-27 08:24:28,440.440 INFO    ] 2026-06-27 08:24:28
[2026-06-27 08:24:28,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:24:28,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:24:28,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:24:28,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:24:28,867.867 INFO    ] time= 27/06/2026 08:24:28
[2026-06-27 08:24:28,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:24:28,894.894 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:24:28,962.962 INFO    ] No existing commands found in stream
[2026-06-27 08:24:33,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:24:33,979.979 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-27 08:24:37,312.312 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 08:24:37,314.314 INFO    ] Checking for system updates...
[2026-06-27 08:24:37,336.336 INFO    ] 200
[2026-06-27 08:24:37,338.338 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:24:37,371.371 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:24:37,372.372 INFO    ] No update needed
[2026-06-27 08:24:37,373.373 INFO    ] Checking for camera pi updates...
[2026-06-27 08:24:37,394.394 INFO    ] 200
[2026-06-27 08:24:37,396.396 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:24:37,419.419 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:24:37,456.456 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:24:37,457.457 INFO    ] No camera update needed
[2026-06-27 08:24:37,459.459 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:24:37,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:24:37,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:24:37,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:24:39,506.506 INFO    ] ================================================
[2026-06-27 08:24:39,521.521 INFO    ] Launching Daemon at Sat Jun 27 08:24:39 IST 2026
[2026-06-27 08:24:39,532.532 INFO    ] ================================================
[2026-06-27 08:24:39,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:24:39
[2026-06-27 08:24:40,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:24:40,392.392 INFO    ] Initializing speech engine...
[2026-06-27 08:24:40,396.396 INFO    ] 2026-06-27 08:24:40
[2026-06-27 08:24:40,607.607 INFO    ] 2026-06-27 08:24:40
[2026-06-27 08:24:40,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:24:40,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:24:40,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:24:41,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:24:41,057.057 INFO    ] time= 27/06/2026 08:24:41
[2026-06-27 08:24:41,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:24:41,066.066 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:24:41,134.134 INFO    ] No existing commands found in stream
[2026-06-27 08:24:46,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:24:46,168.168 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-27 08:24:49,218.218 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:24:49,220.220 INFO    ] Checking for system updates...
[2026-06-27 08:24:49,248.248 INFO    ] 200
[2026-06-27 08:24:49,250.250 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:24:49,290.290 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:24:49,293.293 INFO    ] No update needed
[2026-06-27 08:24:49,295.295 INFO    ] Checking for camera pi updates...
[2026-06-27 08:24:49,320.320 INFO    ] 200
[2026-06-27 08:24:49,322.322 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:24:49,350.350 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:24:49,390.390 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:24:49,391.391 INFO    ] No camera update needed
[2026-06-27 08:24:49,393.393 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:24:49,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:24:49,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:24:49,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:24:51,438.438 INFO    ] ================================================
[2026-06-27 08:24:51,453.453 INFO    ] Launching Daemon at Sat Jun 27 08:24:51 IST 2026
[2026-06-27 08:24:51,463.463 INFO    ] ================================================
[2026-06-27 08:24:51,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:24:51
[2026-06-27 08:24:52,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:24:52,243.243 INFO    ] Initializing speech engine...
[2026-06-27 08:24:52,248.248 INFO    ] 2026-06-27 08:24:52
[2026-06-27 08:24:52,454.454 INFO    ] 2026-06-27 08:24:52
[2026-06-27 08:24:52,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:24:52,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:24:52,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:24:52,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:24:52,882.882 INFO    ] time= 27/06/2026 08:24:52
[2026-06-27 08:24:52,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:24:52,946.946 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:24:53,023.023 INFO    ] No existing commands found in stream
[2026-06-27 08:24:58,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:24:58,037.037 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-27 08:24:58,446.446 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 08:24:58,448.448 INFO    ] Checking for system updates...
[2026-06-27 08:24:58,469.469 INFO    ] 200
[2026-06-27 08:24:58,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:24:58,505.505 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:24:58,506.506 INFO    ] No update needed
[2026-06-27 08:24:58,507.507 INFO    ] Checking for camera pi updates...
[2026-06-27 08:24:58,529.529 INFO    ] 200
[2026-06-27 08:24:58,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:24:58,556.556 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:24:58,594.594 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:24:58,595.595 INFO    ] No camera update needed
[2026-06-27 08:24:58,597.597 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:24:58,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:24:58,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:24:58,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:25:00,642.642 INFO    ] ================================================
[2026-06-27 08:25:00,658.658 INFO    ] Launching Daemon at Sat Jun 27 08:25:00 IST 2026
[2026-06-27 08:25:00,670.670 INFO    ] ================================================
[2026-06-27 08:25:01,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:25:01
[2026-06-27 08:25:01,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:25:01,463.463 INFO    ] Initializing speech engine...
[2026-06-27 08:25:01,472.472 INFO    ] 2026-06-27 08:25:01
[2026-06-27 08:25:01,688.688 INFO    ] 2026-06-27 08:25:01
[2026-06-27 08:25:01,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:25:01,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:25:01,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:25:02,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:25:02,068.068 INFO    ] time= 27/06/2026 08:25:02
[2026-06-27 08:25:02,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:25:02,097.097 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:25:02,159.159 INFO    ] No existing commands found in stream
[2026-06-27 08:25:07,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:25:07,171.171 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-27 08:25:10,062.062 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 08:25:10,063.063 INFO    ] Checking for system updates...
[2026-06-27 08:25:10,084.084 INFO    ] 200
[2026-06-27 08:25:10,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:25:10,116.116 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:25:10,117.117 INFO    ] No update needed
[2026-06-27 08:25:10,118.118 INFO    ] Checking for camera pi updates...
[2026-06-27 08:25:10,140.140 INFO    ] 200
[2026-06-27 08:25:10,142.142 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:25:10,165.165 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:25:10,200.200 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:25:10,201.201 INFO    ] No camera update needed
[2026-06-27 08:25:10,202.202 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:25:10,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:25:10,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:25:10,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:25:12,247.247 INFO    ] ================================================
[2026-06-27 08:25:12,263.263 INFO    ] Launching Daemon at Sat Jun 27 08:25:12 IST 2026
[2026-06-27 08:25:12,274.274 INFO    ] ================================================
[2026-06-27 08:25:12,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:25:12
[2026-06-27 08:25:12,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:25:13,067.067 INFO    ] Initializing speech engine...
[2026-06-27 08:25:13,073.073 INFO    ] 2026-06-27 08:25:13
[2026-06-27 08:25:13,277.277 INFO    ] 2026-06-27 08:25:13
[2026-06-27 08:25:13,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:25:13,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:25:13,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:25:13,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:25:13,675.675 INFO    ] time= 27/06/2026 08:25:13
[2026-06-27 08:25:13,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:25:13,720.720 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:25:13,789.789 INFO    ] No existing commands found in stream
[2026-06-27 08:25:18,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:25:18,802.802 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-27 08:25:22,305.305 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 08:25:22,307.307 INFO    ] Checking for system updates...
[2026-06-27 08:25:22,329.329 INFO    ] 200
[2026-06-27 08:25:22,331.331 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:25:22,363.363 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:25:22,364.364 INFO    ] No update needed
[2026-06-27 08:25:22,366.366 INFO    ] Checking for camera pi updates...
[2026-06-27 08:25:22,386.386 INFO    ] 200
[2026-06-27 08:25:22,388.388 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:25:22,412.412 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:25:22,454.454 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:25:22,456.456 INFO    ] No camera update needed
[2026-06-27 08:25:22,457.457 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:25:22,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:25:22,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:25:22,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:25:24,504.504 INFO    ] ================================================
[2026-06-27 08:25:24,519.519 INFO    ] Launching Daemon at Sat Jun 27 08:25:24 IST 2026
[2026-06-27 08:25:24,531.531 INFO    ] ================================================
[2026-06-27 08:25:24,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:25:24
[2026-06-27 08:25:25,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:25:25,357.357 INFO    ] Initializing speech engine...
[2026-06-27 08:25:25,362.362 INFO    ] 2026-06-27 08:25:25
[2026-06-27 08:25:25,568.568 INFO    ] 2026-06-27 08:25:25
[2026-06-27 08:25:25,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:25:25,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:25:25,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:25:25,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:25:25,987.987 INFO    ] time= 27/06/2026 08:25:25
[2026-06-27 08:25:26,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:25:26,015.015 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:25:26,080.080 INFO    ] No existing commands found in stream
[2026-06-27 08:25:31,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:25:31,094.094 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-27 08:25:32,784.784 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:25:32,786.786 INFO    ] Checking for system updates...
[2026-06-27 08:25:32,811.811 INFO    ] 200
[2026-06-27 08:25:32,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:25:32,856.856 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:25:32,857.857 INFO    ] No update needed
[2026-06-27 08:25:32,858.858 INFO    ] Checking for camera pi updates...
[2026-06-27 08:25:32,878.878 INFO    ] 200
[2026-06-27 08:25:32,880.880 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:25:32,905.905 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:25:32,927.927 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:25:32,929.929 INFO    ] No camera update needed
[2026-06-27 08:25:32,930.930 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:25:32,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:25:32,934.934 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:25:32,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:25:34,978.978 INFO    ] ================================================
[2026-06-27 08:25:35,994.994 INFO    ] Launching Daemon at Sat Jun 27 08:25:34 IST 2026
[2026-06-27 08:25:35,006.006 INFO    ] ================================================
[2026-06-27 08:25:35,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:25:35
[2026-06-27 08:25:35,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:25:35,795.795 INFO    ] Initializing speech engine...
[2026-06-27 08:25:35,799.799 INFO    ] 2026-06-27 08:25:35
[2026-06-27 08:25:36,003.003 INFO    ] 2026-06-27 08:25:35
[2026-06-27 08:25:36,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:25:36,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:25:36,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:25:36,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:25:36,427.427 INFO    ] time= 27/06/2026 08:25:36
[2026-06-27 08:25:36,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:25:36,457.457 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:25:36,523.523 INFO    ] No existing commands found in stream
[2026-06-27 08:25:41,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:25:41,536.536 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-27 08:25:43,591.591 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 08:25:43,592.592 INFO    ] Checking for system updates...
[2026-06-27 08:25:43,614.614 INFO    ] 200
[2026-06-27 08:25:43,616.616 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:25:43,646.646 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:25:43,648.648 INFO    ] No update needed
[2026-06-27 08:25:43,649.649 INFO    ] Checking for camera pi updates...
[2026-06-27 08:25:43,668.668 INFO    ] 200
[2026-06-27 08:25:43,670.670 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:25:43,697.697 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:25:43,737.737 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:25:43,738.738 INFO    ] No camera update needed
[2026-06-27 08:25:43,739.739 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:25:43,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:25:43,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:25:43,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:25:45,787.787 INFO    ] ================================================
[2026-06-27 08:25:45,802.802 INFO    ] Launching Daemon at Sat Jun 27 08:25:45 IST 2026
[2026-06-27 08:25:45,813.813 INFO    ] ================================================
[2026-06-27 08:25:46,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:25:46
[2026-06-27 08:25:46,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:25:46,639.639 INFO    ] Initializing speech engine...
[2026-06-27 08:25:46,648.648 INFO    ] 2026-06-27 08:25:46
[2026-06-27 08:25:46,857.857 INFO    ] 2026-06-27 08:25:46
[2026-06-27 08:25:46,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:25:47,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:25:47,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:25:47,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:25:47,275.275 INFO    ] time= 27/06/2026 08:25:47
[2026-06-27 08:25:47,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:25:47,305.305 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:25:47,370.370 INFO    ] No existing commands found in stream
[2026-06-27 08:25:52,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:25:52,383.383 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-27 08:25:53,397.397 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:25:53,399.399 INFO    ] Checking for system updates...
[2026-06-27 08:25:53,426.426 INFO    ] 200
[2026-06-27 08:25:53,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:25:53,460.460 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:25:53,462.462 INFO    ] No update needed
[2026-06-27 08:25:53,463.463 INFO    ] Checking for camera pi updates...
[2026-06-27 08:25:53,484.484 INFO    ] 200
[2026-06-27 08:25:53,485.485 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:25:53,511.511 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:25:53,551.551 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:25:53,552.552 INFO    ] No camera update needed
[2026-06-27 08:25:53,553.553 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:25:53,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:25:53,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:25:53,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:25:55,601.601 INFO    ] ================================================
[2026-06-27 08:25:55,617.617 INFO    ] Launching Daemon at Sat Jun 27 08:25:55 IST 2026
[2026-06-27 08:25:55,628.628 INFO    ] ================================================
[2026-06-27 08:25:55,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:25:55
[2026-06-27 08:25:56,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:25:56,434.434 INFO    ] Initializing speech engine...
[2026-06-27 08:25:56,437.437 INFO    ] 2026-06-27 08:25:56
[2026-06-27 08:25:56,628.628 INFO    ] 2026-06-27 08:25:56
[2026-06-27 08:25:56,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:25:56,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:25:56,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:25:57,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:25:57,116.116 INFO    ] time= 27/06/2026 08:25:57
[2026-06-27 08:25:57,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:25:57,152.152 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:25:57,255.255 INFO    ] No existing commands found in stream
[2026-06-27 08:26:02,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:26:02,266.266 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-27 08:26:04,071.071 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 08:26:04,073.073 INFO    ] Checking for system updates...
[2026-06-27 08:26:04,094.094 INFO    ] 200
[2026-06-27 08:26:04,095.095 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:26:04,125.125 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:26:04,127.127 INFO    ] No update needed
[2026-06-27 08:26:04,128.128 INFO    ] Checking for camera pi updates...
[2026-06-27 08:26:04,149.149 INFO    ] 200
[2026-06-27 08:26:04,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:26:04,174.174 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:26:04,215.215 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:26:04,217.217 INFO    ] No camera update needed
[2026-06-27 08:26:04,218.218 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:26:04,219.219 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:26:04,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:26:04,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:26:06,264.264 INFO    ] ================================================
[2026-06-27 08:26:06,280.280 INFO    ] Launching Daemon at Sat Jun 27 08:26:06 IST 2026
[2026-06-27 08:26:06,291.291 INFO    ] ================================================
[2026-06-27 08:26:06,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:26:06
[2026-06-27 08:26:06,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:26:07,072.072 INFO    ] Initializing speech engine...
[2026-06-27 08:26:07,077.077 INFO    ] 2026-06-27 08:26:07
[2026-06-27 08:26:07,280.280 INFO    ] 2026-06-27 08:26:07
[2026-06-27 08:26:07,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:26:07,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:26:07,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:26:07,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:26:07,716.716 INFO    ] time= 27/06/2026 08:26:07
[2026-06-27 08:26:07,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:26:07,724.724 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:26:07,789.789 INFO    ] No existing commands found in stream
[2026-06-27 08:26:12,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:26:12,803.803 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-27 08:26:15,398.398 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:26:15,399.399 INFO    ] Checking for system updates...
[2026-06-27 08:26:15,424.424 INFO    ] 200
[2026-06-27 08:26:15,426.426 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:26:15,459.459 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:26:15,461.461 INFO    ] No update needed
[2026-06-27 08:26:15,462.462 INFO    ] Checking for camera pi updates...
[2026-06-27 08:26:15,486.486 INFO    ] 200
[2026-06-27 08:26:15,487.487 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:26:15,515.515 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:26:15,553.553 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:26:15,555.555 INFO    ] No camera update needed
[2026-06-27 08:26:15,556.556 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:26:15,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:26:15,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:26:15,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:26:17,602.602 INFO    ] ================================================
[2026-06-27 08:26:17,618.618 INFO    ] Launching Daemon at Sat Jun 27 08:26:17 IST 2026
[2026-06-27 08:26:17,629.629 INFO    ] ================================================
[2026-06-27 08:26:17,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:26:17
[2026-06-27 08:26:18,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:26:18,408.408 INFO    ] Initializing speech engine...
[2026-06-27 08:26:18,416.416 INFO    ] 2026-06-27 08:26:18
[2026-06-27 08:26:18,629.629 INFO    ] 2026-06-27 08:26:18
[2026-06-27 08:26:18,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:26:18,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:26:18,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:26:18,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:26:19,046.046 INFO    ] time= 27/06/2026 08:26:18
[2026-06-27 08:26:19,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:26:19,080.080 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:26:19,146.146 INFO    ] No existing commands found in stream
[2026-06-27 08:26:24,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:26:24,159.159 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-27 08:26:26,272.272 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:26:26,274.274 INFO    ] Checking for system updates...
[2026-06-27 08:26:26,296.296 INFO    ] 200
[2026-06-27 08:26:26,297.297 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:26:26,328.328 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:26:26,329.329 INFO    ] No update needed
[2026-06-27 08:26:26,330.330 INFO    ] Checking for camera pi updates...
[2026-06-27 08:26:26,351.351 INFO    ] 200
[2026-06-27 08:26:26,352.352 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:26:26,376.376 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:26:26,514.514 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:26:26,516.516 INFO    ] No camera update needed
[2026-06-27 08:26:26,517.517 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:26:26,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:26:26,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:26:26,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:26:28,563.563 INFO    ] ================================================
[2026-06-27 08:26:28,579.579 INFO    ] Launching Daemon at Sat Jun 27 08:26:28 IST 2026
[2026-06-27 08:26:28,590.590 INFO    ] ================================================
[2026-06-27 08:26:28,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:26:28
[2026-06-27 08:26:29,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:26:29,407.407 INFO    ] Initializing speech engine...
[2026-06-27 08:26:29,412.412 INFO    ] 2026-06-27 08:26:29
[2026-06-27 08:26:29,630.630 INFO    ] 2026-06-27 08:26:29
[2026-06-27 08:26:29,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:26:29,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:26:29,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:26:29,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:26:30,049.049 INFO    ] time= 27/06/2026 08:26:29
[2026-06-27 08:26:30,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:26:30,075.075 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:26:30,146.146 INFO    ] No existing commands found in stream
[2026-06-27 08:26:35,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:26:35,164.164 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-27 08:26:37,560.560 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 08:26:37,561.561 INFO    ] Checking for system updates...
[2026-06-27 08:26:37,582.582 INFO    ] 200
[2026-06-27 08:26:37,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:26:37,616.616 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:26:37,618.618 INFO    ] No update needed
[2026-06-27 08:26:37,619.619 INFO    ] Checking for camera pi updates...
[2026-06-27 08:26:37,639.639 INFO    ] 200
[2026-06-27 08:26:37,640.640 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:26:37,666.666 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:26:37,704.704 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:26:37,706.706 INFO    ] No camera update needed
[2026-06-27 08:26:37,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:26:37,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:26:37,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:26:37,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:26:39,752.752 INFO    ] ================================================
[2026-06-27 08:26:39,767.767 INFO    ] Launching Daemon at Sat Jun 27 08:26:39 IST 2026
[2026-06-27 08:26:39,778.778 INFO    ] ================================================
[2026-06-27 08:26:40,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:26:40
[2026-06-27 08:26:40,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:26:40,544.544 INFO    ] Initializing speech engine...
[2026-06-27 08:26:40,552.552 INFO    ] 2026-06-27 08:26:40
[2026-06-27 08:26:40,763.763 INFO    ] 2026-06-27 08:26:40
[2026-06-27 08:26:40,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:26:40,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:26:40,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:26:41,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:26:41,177.177 INFO    ] time= 27/06/2026 08:26:41
[2026-06-27 08:26:41,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:26:41,211.211 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:26:41,277.277 INFO    ] No existing commands found in stream
[2026-06-27 08:26:46,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:26:46,289.289 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-27 08:26:47,280.280 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 08:26:47,281.281 INFO    ] Checking for system updates...
[2026-06-27 08:26:47,302.302 INFO    ] 200
[2026-06-27 08:26:47,303.303 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:26:47,337.337 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:26:47,339.339 INFO    ] No update needed
[2026-06-27 08:26:47,340.340 INFO    ] Checking for camera pi updates...
[2026-06-27 08:26:47,361.361 INFO    ] 200
[2026-06-27 08:26:47,362.362 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:26:47,387.387 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:26:47,424.424 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:26:47,426.426 INFO    ] No camera update needed
[2026-06-27 08:26:47,427.427 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:26:47,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:26:47,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:26:47,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:26:49,475.475 INFO    ] ================================================
[2026-06-27 08:26:49,490.490 INFO    ] Launching Daemon at Sat Jun 27 08:26:49 IST 2026
[2026-06-27 08:26:49,500.500 INFO    ] ================================================
[2026-06-27 08:26:49,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:26:49
[2026-06-27 08:26:50,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:26:50,325.325 INFO    ] Initializing speech engine...
[2026-06-27 08:26:50,330.330 INFO    ] 2026-06-27 08:26:50
[2026-06-27 08:26:50,535.535 INFO    ] 2026-06-27 08:26:50
[2026-06-27 08:26:50,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:26:50,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:26:50,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:26:50,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:26:50,956.956 INFO    ] time= 27/06/2026 08:26:50
[2026-06-27 08:26:50,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:26:50,985.985 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:26:51,076.076 INFO    ] No existing commands found in stream
[2026-06-27 08:26:56,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:26:56,087.087 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-27 08:26:56,640.640 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 08:26:56,642.642 INFO    ] Checking for system updates...
[2026-06-27 08:26:56,663.663 INFO    ] 200
[2026-06-27 08:26:56,664.664 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:26:56,696.696 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:26:56,698.698 INFO    ] No update needed
[2026-06-27 08:26:56,699.699 INFO    ] Checking for camera pi updates...
[2026-06-27 08:26:56,719.719 INFO    ] 200
[2026-06-27 08:26:56,720.720 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:26:56,747.747 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:26:56,772.772 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:26:56,773.773 INFO    ] No camera update needed
[2026-06-27 08:26:56,775.775 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:26:56,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:26:56,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:26:56,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:26:58,822.822 INFO    ] ================================================
[2026-06-27 08:26:58,838.838 INFO    ] Launching Daemon at Sat Jun 27 08:26:58 IST 2026
[2026-06-27 08:26:58,849.849 INFO    ] ================================================
[2026-06-27 08:26:59,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:26:59
[2026-06-27 08:26:59,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:26:59,647.647 INFO    ] Initializing speech engine...
[2026-06-27 08:26:59,652.652 INFO    ] 2026-06-27 08:26:59
[2026-06-27 08:26:59,870.870 INFO    ] 2026-06-27 08:26:59
[2026-06-27 08:26:59,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:27:00,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:27:00,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:27:00,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:27:00,295.295 INFO    ] time= 27/06/2026 08:27:00
[2026-06-27 08:27:00,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:27:00,325.325 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:27:00,393.393 INFO    ] No existing commands found in stream
[2026-06-27 08:27:05,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:27:05,405.405 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-27 08:27:09,339.339 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:27:09,340.340 INFO    ] Checking for system updates...
[2026-06-27 08:27:09,362.362 INFO    ] 200
[2026-06-27 08:27:09,363.363 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:27:09,394.394 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:27:09,396.396 INFO    ] No update needed
[2026-06-27 08:27:09,397.397 INFO    ] Checking for camera pi updates...
[2026-06-27 08:27:09,417.417 INFO    ] 200
[2026-06-27 08:27:09,419.419 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:27:09,444.444 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:27:09,481.481 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:27:09,483.483 INFO    ] No camera update needed
[2026-06-27 08:27:09,484.484 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:27:09,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:27:09,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:27:09,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:27:11,533.533 INFO    ] ================================================
[2026-06-27 08:27:11,548.548 INFO    ] Launching Daemon at Sat Jun 27 08:27:11 IST 2026
[2026-06-27 08:27:11,559.559 INFO    ] ================================================
[2026-06-27 08:27:11,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:27:11
[2026-06-27 08:27:12,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:27:12,372.372 INFO    ] Initializing speech engine...
[2026-06-27 08:27:12,382.382 INFO    ] 2026-06-27 08:27:12
[2026-06-27 08:27:12,588.588 INFO    ] 2026-06-27 08:27:12
[2026-06-27 08:27:12,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:27:12,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:27:12,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:27:12,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:27:13,013.013 INFO    ] time= 27/06/2026 08:27:12
[2026-06-27 08:27:13,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:27:13,043.043 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:27:13,111.111 INFO    ] No existing commands found in stream
[2026-06-27 08:27:18,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:27:18,123.123 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-27 08:27:22,185.185 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:27:22,187.187 INFO    ] Checking for system updates...
[2026-06-27 08:27:22,209.209 INFO    ] 200
[2026-06-27 08:27:22,210.210 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:27:22,243.243 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:27:22,244.244 INFO    ] No update needed
[2026-06-27 08:27:22,246.246 INFO    ] Checking for camera pi updates...
[2026-06-27 08:27:22,265.265 INFO    ] 200
[2026-06-27 08:27:22,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:27:22,291.291 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:27:22,335.335 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:27:22,337.337 INFO    ] No camera update needed
[2026-06-27 08:27:22,338.338 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:27:22,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:27:22,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:27:22,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:27:24,384.384 INFO    ] ================================================
[2026-06-27 08:27:24,399.399 INFO    ] Launching Daemon at Sat Jun 27 08:27:24 IST 2026
[2026-06-27 08:27:24,410.410 INFO    ] ================================================
[2026-06-27 08:27:24,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:27:24
[2026-06-27 08:27:25,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:27:25,230.230 INFO    ] Initializing speech engine...
[2026-06-27 08:27:25,233.233 INFO    ] 2026-06-27 08:27:25
[2026-06-27 08:27:25,465.465 INFO    ] 2026-06-27 08:27:25
[2026-06-27 08:27:25,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:27:25,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:27:25,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:27:25,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:27:25,891.891 INFO    ] time= 27/06/2026 08:27:25
[2026-06-27 08:27:25,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:27:25,952.952 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:27:26,025.025 INFO    ] No existing commands found in stream
[2026-06-27 08:27:31,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:27:31,043.043 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-27 08:27:32,577.577 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 08:27:32,580.580 INFO    ] Checking for system updates...
[2026-06-27 08:27:32,620.620 INFO    ] 200
[2026-06-27 08:27:32,623.623 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:27:32,676.676 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:27:32,677.677 INFO    ] No update needed
[2026-06-27 08:27:32,678.678 INFO    ] Checking for camera pi updates...
[2026-06-27 08:27:32,698.698 INFO    ] 200
[2026-06-27 08:27:32,700.700 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:27:32,724.724 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:27:32,746.746 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:27:32,748.748 INFO    ] No camera update needed
[2026-06-27 08:27:32,749.749 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:27:32,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:27:32,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:27:32,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:27:34,796.796 INFO    ] ================================================
[2026-06-27 08:27:34,812.812 INFO    ] Launching Daemon at Sat Jun 27 08:27:34 IST 2026
[2026-06-27 08:27:34,827.827 INFO    ] ================================================
[2026-06-27 08:27:35,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:27:35
[2026-06-27 08:27:35,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:27:35,647.647 INFO    ] Initializing speech engine...
[2026-06-27 08:27:35,653.653 INFO    ] 2026-06-27 08:27:35
[2026-06-27 08:27:35,857.857 INFO    ] 2026-06-27 08:27:35
[2026-06-27 08:27:35,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:27:36,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:27:36,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:27:36,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:27:36,247.247 INFO    ] time= 27/06/2026 08:27:36
[2026-06-27 08:27:36,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:27:36,302.302 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:27:36,373.373 INFO    ] No existing commands found in stream
[2026-06-27 08:27:41,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:27:41,390.390 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-27 08:27:41,773.773 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:27:41,774.774 INFO    ] Checking for system updates...
[2026-06-27 08:27:41,798.798 INFO    ] 200
[2026-06-27 08:27:41,799.799 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:27:41,830.830 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:27:41,831.831 INFO    ] No update needed
[2026-06-27 08:27:41,832.832 INFO    ] Checking for camera pi updates...
[2026-06-27 08:27:41,854.854 INFO    ] 200
[2026-06-27 08:27:41,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:27:41,880.880 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:27:41,919.919 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:27:41,921.921 INFO    ] No camera update needed
[2026-06-27 08:27:41,922.922 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:27:41,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:27:41,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:27:41,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:27:43,968.968 INFO    ] ================================================
[2026-06-27 08:27:43,984.984 INFO    ] Launching Daemon at Sat Jun 27 08:27:43 IST 2026
[2026-06-27 08:27:44,995.995 INFO    ] ================================================
[2026-06-27 08:27:44,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:27:44
[2026-06-27 08:27:44,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:27:44,840.840 INFO    ] Initializing speech engine...
[2026-06-27 08:27:44,846.846 INFO    ] 2026-06-27 08:27:44
[2026-06-27 08:27:45,055.055 INFO    ] 2026-06-27 08:27:45
[2026-06-27 08:27:45,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:27:45,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:27:45,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:27:45,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:27:45,479.479 INFO    ] time= 27/06/2026 08:27:45
[2026-06-27 08:27:45,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:27:45,508.508 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:27:45,574.574 INFO    ] No existing commands found in stream
[2026-06-27 08:27:50,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:27:50,588.588 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-27 08:27:52,789.789 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 08:27:52,791.791 INFO    ] Checking for system updates...
[2026-06-27 08:27:52,813.813 INFO    ] 200
[2026-06-27 08:27:52,815.815 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:27:52,846.846 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:27:52,848.848 INFO    ] No update needed
[2026-06-27 08:27:52,849.849 INFO    ] Checking for camera pi updates...
[2026-06-27 08:27:52,872.872 INFO    ] 200
[2026-06-27 08:27:52,873.873 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:27:52,898.898 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:27:52,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:27:52,941.941 INFO    ] No camera update needed
[2026-06-27 08:27:52,942.942 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:27:52,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:27:52,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:27:52,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:27:54,992.992 INFO    ] ================================================
[2026-06-27 08:27:55,008.008 INFO    ] Launching Daemon at Sat Jun 27 08:27:55 IST 2026
[2026-06-27 08:27:55,019.019 INFO    ] ================================================
[2026-06-27 08:27:55,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:27:55
[2026-06-27 08:27:55,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:27:55,821.821 INFO    ] Initializing speech engine...
[2026-06-27 08:27:55,831.831 INFO    ] 2026-06-27 08:27:55
[2026-06-27 08:27:56,036.036 INFO    ] 2026-06-27 08:27:56
[2026-06-27 08:27:56,066.066 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:27:56,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:27:56,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:27:56,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:27:56,455.455 INFO    ] time= 27/06/2026 08:27:56
[2026-06-27 08:27:56,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:27:56,489.489 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:27:56,555.555 INFO    ] No existing commands found in stream
[2026-06-27 08:28:01,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:28:01,568.568 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-27 08:28:04,286.286 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:28:04,288.288 INFO    ] Checking for system updates...
[2026-06-27 08:28:04,308.308 INFO    ] 200
[2026-06-27 08:28:04,310.310 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:28:04,340.340 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:28:04,342.342 INFO    ] No update needed
[2026-06-27 08:28:04,343.343 INFO    ] Checking for camera pi updates...
[2026-06-27 08:28:04,363.363 INFO    ] 200
[2026-06-27 08:28:04,364.364 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:28:04,388.388 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:28:04,423.423 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:28:04,424.424 INFO    ] No camera update needed
[2026-06-27 08:28:04,425.425 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:28:04,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:28:04,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:28:04,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:28:06,472.472 INFO    ] ================================================
[2026-06-27 08:28:06,488.488 INFO    ] Launching Daemon at Sat Jun 27 08:28:06 IST 2026
[2026-06-27 08:28:06,500.500 INFO    ] ================================================
[2026-06-27 08:28:06,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:28:06
[2026-06-27 08:28:07,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:28:07,295.295 INFO    ] Initializing speech engine...
[2026-06-27 08:28:07,307.307 INFO    ] 2026-06-27 08:28:07
[2026-06-27 08:28:07,513.513 INFO    ] 2026-06-27 08:28:07
[2026-06-27 08:28:07,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:28:07,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:28:07,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:28:07,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:28:07,919.919 INFO    ] time= 27/06/2026 08:28:07
[2026-06-27 08:28:07,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:28:07,959.959 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:28:08,053.053 INFO    ] No existing commands found in stream
[2026-06-27 08:28:13,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:28:13,065.065 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-27 08:28:15,758.758 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:28:15,760.760 INFO    ] Checking for system updates...
[2026-06-27 08:28:15,782.782 INFO    ] 200
[2026-06-27 08:28:15,784.784 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:28:15,820.820 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:28:15,822.822 INFO    ] No update needed
[2026-06-27 08:28:15,823.823 INFO    ] Checking for camera pi updates...
[2026-06-27 08:28:15,846.846 INFO    ] 200
[2026-06-27 08:28:15,847.847 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:28:15,873.873 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:28:15,909.909 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:28:15,910.910 INFO    ] No camera update needed
[2026-06-27 08:28:15,912.912 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:28:15,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:28:15,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:28:15,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:28:17,961.961 INFO    ] ================================================
[2026-06-27 08:28:17,977.977 INFO    ] Launching Daemon at Sat Jun 27 08:28:17 IST 2026
[2026-06-27 08:28:17,988.988 INFO    ] ================================================
[2026-06-27 08:28:18,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:28:18
[2026-06-27 08:28:18,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:28:18,791.791 INFO    ] Initializing speech engine...
[2026-06-27 08:28:18,794.794 INFO    ] 2026-06-27 08:28:18
[2026-06-27 08:28:18,991.991 INFO    ] 2026-06-27 08:28:18
[2026-06-27 08:28:19,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:28:19,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:28:19,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:28:19,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:28:19,449.449 INFO    ] time= 27/06/2026 08:28:19
[2026-06-27 08:28:19,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:28:19,511.511 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:28:19,587.587 INFO    ] No existing commands found in stream
[2026-06-27 08:28:24,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:28:24,600.600 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-27 08:28:25,644.644 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:28:25,646.646 INFO    ] Checking for system updates...
[2026-06-27 08:28:25,666.666 INFO    ] 200
[2026-06-27 08:28:25,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:28:25,700.700 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:28:25,702.702 INFO    ] No update needed
[2026-06-27 08:28:25,703.703 INFO    ] Checking for camera pi updates...
[2026-06-27 08:28:25,722.722 INFO    ] 200
[2026-06-27 08:28:25,724.724 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:28:25,748.748 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:28:25,790.790 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:28:25,791.791 INFO    ] No camera update needed
[2026-06-27 08:28:25,792.792 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:28:25,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:28:25,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:28:25,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:28:27,839.839 INFO    ] ================================================
[2026-06-27 08:28:27,855.855 INFO    ] Launching Daemon at Sat Jun 27 08:28:27 IST 2026
[2026-06-27 08:28:27,866.866 INFO    ] ================================================
[2026-06-27 08:28:28,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:28:28
[2026-06-27 08:28:28,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:28:28,665.665 INFO    ] Initializing speech engine...
[2026-06-27 08:28:28,670.670 INFO    ] 2026-06-27 08:28:28
[2026-06-27 08:28:28,889.889 INFO    ] 2026-06-27 08:28:28
[2026-06-27 08:28:28,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:28:29,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:28:29,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:28:29,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:28:29,333.333 INFO    ] time= 27/06/2026 08:28:29
[2026-06-27 08:28:29,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:28:29,345.345 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:28:29,416.416 INFO    ] No existing commands found in stream
[2026-06-27 08:28:34,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:28:34,429.429 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-27 08:28:38,187.187 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 08:28:38,188.188 INFO    ] Checking for system updates...
[2026-06-27 08:28:38,211.211 INFO    ] 200
[2026-06-27 08:28:38,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:28:38,244.244 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:28:38,246.246 INFO    ] No update needed
[2026-06-27 08:28:38,247.247 INFO    ] Checking for camera pi updates...
[2026-06-27 08:28:38,270.270 INFO    ] 200
[2026-06-27 08:28:38,272.272 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:28:38,298.298 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:28:38,344.344 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:28:38,346.346 INFO    ] No camera update needed
[2026-06-27 08:28:38,347.347 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:28:38,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:28:38,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:28:38,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:28:40,397.397 INFO    ] ================================================
[2026-06-27 08:28:40,413.413 INFO    ] Launching Daemon at Sat Jun 27 08:28:40 IST 2026
[2026-06-27 08:28:40,424.424 INFO    ] ================================================
[2026-06-27 08:28:40,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:28:40
[2026-06-27 08:28:41,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:28:41,296.296 INFO    ] Initializing speech engine...
[2026-06-27 08:28:41,300.300 INFO    ] 2026-06-27 08:28:41
[2026-06-27 08:28:41,510.510 INFO    ] 2026-06-27 08:28:41
[2026-06-27 08:28:41,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:28:41,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:28:41,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:28:41,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:28:41,955.955 INFO    ] time= 27/06/2026 08:28:41
[2026-06-27 08:28:41,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:28:41,962.962 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:28:42,030.030 INFO    ] No existing commands found in stream
[2026-06-27 08:28:47,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:28:47,043.043 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-27 08:28:49,400.400 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:28:49,401.401 INFO    ] Checking for system updates...
[2026-06-27 08:28:49,424.424 INFO    ] 200
[2026-06-27 08:28:49,426.426 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:28:49,456.456 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:28:49,458.458 INFO    ] No update needed
[2026-06-27 08:28:49,459.459 INFO    ] Checking for camera pi updates...
[2026-06-27 08:28:49,481.481 INFO    ] 200
[2026-06-27 08:28:49,482.482 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:28:49,508.508 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:28:49,550.550 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:28:49,552.552 INFO    ] No camera update needed
[2026-06-27 08:28:49,553.553 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:28:49,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:28:49,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:28:49,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:28:51,600.600 INFO    ] ================================================
[2026-06-27 08:28:51,616.616 INFO    ] Launching Daemon at Sat Jun 27 08:28:51 IST 2026
[2026-06-27 08:28:51,627.627 INFO    ] ================================================
[2026-06-27 08:28:51,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:28:51
[2026-06-27 08:28:52,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:28:52,442.442 INFO    ] Initializing speech engine...
[2026-06-27 08:28:52,454.454 INFO    ] 2026-06-27 08:28:52
[2026-06-27 08:28:52,663.663 INFO    ] 2026-06-27 08:28:52
[2026-06-27 08:28:52,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:28:52,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:28:52,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:28:53,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:28:53,085.085 INFO    ] time= 27/06/2026 08:28:53
[2026-06-27 08:28:53,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:28:53,115.115 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:28:53,182.182 INFO    ] No existing commands found in stream
[2026-06-27 08:28:58,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:28:58,194.194 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-27 08:29:00,786.786 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:29:00,787.787 INFO    ] Checking for system updates...
[2026-06-27 08:29:00,808.808 INFO    ] 200
[2026-06-27 08:29:00,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:29:00,840.840 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:29:00,841.841 INFO    ] No update needed
[2026-06-27 08:29:00,843.843 INFO    ] Checking for camera pi updates...
[2026-06-27 08:29:00,862.862 INFO    ] 200
[2026-06-27 08:29:00,864.864 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:29:00,887.887 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:29:00,924.924 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:29:00,926.926 INFO    ] No camera update needed
[2026-06-27 08:29:00,927.927 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:29:00,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:29:00,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:29:00,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:29:02,987.987 INFO    ] ================================================
[2026-06-27 08:29:02,996.996 INFO    ] Launching Daemon at Sat Jun 27 08:29:02 IST 2026
[2026-06-27 08:29:03,002.002 INFO    ] ================================================
[2026-06-27 08:29:03,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:29:03
[2026-06-27 08:29:03,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:29:03,756.756 INFO    ] Initializing speech engine...
[2026-06-27 08:29:03,765.765 INFO    ] 2026-06-27 08:29:03
[2026-06-27 08:29:03,978.978 INFO    ] 2026-06-27 08:29:03
[2026-06-27 08:29:04,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:29:04,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:29:04,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:29:04,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:29:04,394.394 INFO    ] time= 27/06/2026 08:29:04
[2026-06-27 08:29:04,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:29:04,439.439 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:29:04,507.507 INFO    ] No existing commands found in stream
[2026-06-27 08:29:09,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:29:09,519.519 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-27 08:29:11,282.282 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 08:29:11,283.283 INFO    ] Checking for system updates...
[2026-06-27 08:29:11,306.306 INFO    ] 200
[2026-06-27 08:29:11,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:29:11,338.338 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:29:11,339.339 INFO    ] No update needed
[2026-06-27 08:29:11,340.340 INFO    ] Checking for camera pi updates...
[2026-06-27 08:29:11,361.361 INFO    ] 200
[2026-06-27 08:29:11,362.362 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:29:11,386.386 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:29:11,421.421 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:29:11,422.422 INFO    ] No camera update needed
[2026-06-27 08:29:11,424.424 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:29:11,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:29:11,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:29:11,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:29:13,470.470 INFO    ] ================================================
[2026-06-27 08:29:13,485.485 INFO    ] Launching Daemon at Sat Jun 27 08:29:13 IST 2026
[2026-06-27 08:29:13,496.496 INFO    ] ================================================
[2026-06-27 08:29:13,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:29:13
[2026-06-27 08:29:14,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:29:14,311.311 INFO    ] Initializing speech engine...
[2026-06-27 08:29:14,315.315 INFO    ] 2026-06-27 08:29:14
[2026-06-27 08:29:14,532.532 INFO    ] 2026-06-27 08:29:14
[2026-06-27 08:29:14,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:29:14,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:29:14,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:29:14,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:29:14,999.999 INFO    ] time= 27/06/2026 08:29:14
[2026-06-27 08:29:15,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:29:15,035.035 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:29:15,106.106 INFO    ] No existing commands found in stream
[2026-06-27 08:29:20,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:29:20,119.119 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-27 08:29:22,534.534 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 08:29:22,536.536 INFO    ] Checking for system updates...
[2026-06-27 08:29:22,558.558 INFO    ] 200
[2026-06-27 08:29:22,560.560 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:29:22,589.589 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:29:22,591.591 INFO    ] No update needed
[2026-06-27 08:29:22,592.592 INFO    ] Checking for camera pi updates...
[2026-06-27 08:29:22,611.611 INFO    ] 200
[2026-06-27 08:29:22,613.613 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:29:22,636.636 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:29:22,674.674 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:29:22,676.676 INFO    ] No camera update needed
[2026-06-27 08:29:22,677.677 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:29:22,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:29:22,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:29:22,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:29:24,724.724 INFO    ] ================================================
[2026-06-27 08:29:24,739.739 INFO    ] Launching Daemon at Sat Jun 27 08:29:24 IST 2026
[2026-06-27 08:29:24,749.749 INFO    ] ================================================
[2026-06-27 08:29:25,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:29:25
[2026-06-27 08:29:25,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:29:25,545.545 INFO    ] Initializing speech engine...
[2026-06-27 08:29:25,550.550 INFO    ] 2026-06-27 08:29:25
[2026-06-27 08:29:25,756.756 INFO    ] 2026-06-27 08:29:25
[2026-06-27 08:29:25,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:29:25,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:29:25,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:29:26,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:29:26,181.181 INFO    ] time= 27/06/2026 08:29:26
[2026-06-27 08:29:26,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:29:26,210.210 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:29:26,275.275 INFO    ] No existing commands found in stream
[2026-06-27 08:29:31,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:29:31,289.289 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-27 08:29:34,016.016 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 08:29:34,018.018 INFO    ] Checking for system updates...
[2026-06-27 08:29:34,040.040 INFO    ] 200
[2026-06-27 08:29:34,042.042 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:29:34,072.072 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:29:34,073.073 INFO    ] No update needed
[2026-06-27 08:29:34,075.075 INFO    ] Checking for camera pi updates...
[2026-06-27 08:29:34,096.096 INFO    ] 200
[2026-06-27 08:29:34,097.097 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:29:34,121.121 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:29:34,159.159 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:29:34,161.161 INFO    ] No camera update needed
[2026-06-27 08:29:34,162.162 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:29:34,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:29:34,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:29:34,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:29:36,209.209 INFO    ] ================================================
[2026-06-27 08:29:36,224.224 INFO    ] Launching Daemon at Sat Jun 27 08:29:36 IST 2026
[2026-06-27 08:29:36,235.235 INFO    ] ================================================
[2026-06-27 08:29:36,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:29:36
[2026-06-27 08:29:36,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:29:37,037.037 INFO    ] Initializing speech engine...
[2026-06-27 08:29:37,043.043 INFO    ] 2026-06-27 08:29:37
[2026-06-27 08:29:37,249.249 INFO    ] 2026-06-27 08:29:37
[2026-06-27 08:29:37,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:29:37,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:29:37,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:29:37,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:29:37,677.677 INFO    ] time= 27/06/2026 08:29:37
[2026-06-27 08:29:37,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:29:37,708.708 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:29:37,800.800 INFO    ] No existing commands found in stream
[2026-06-27 08:29:42,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:29:42,817.817 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-27 08:29:44,269.269 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:29:44,270.270 INFO    ] Checking for system updates...
[2026-06-27 08:29:44,292.292 INFO    ] 200
[2026-06-27 08:29:44,294.294 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:29:44,324.324 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:29:44,326.326 INFO    ] No update needed
[2026-06-27 08:29:44,327.327 INFO    ] Checking for camera pi updates...
[2026-06-27 08:29:44,346.346 INFO    ] 200
[2026-06-27 08:29:44,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:29:44,371.371 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:29:44,414.414 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:29:44,416.416 INFO    ] No camera update needed
[2026-06-27 08:29:44,417.417 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:29:44,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:29:44,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:29:44,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:29:46,462.462 INFO    ] ================================================
[2026-06-27 08:29:46,477.477 INFO    ] Launching Daemon at Sat Jun 27 08:29:46 IST 2026
[2026-06-27 08:29:46,488.488 INFO    ] ================================================
[2026-06-27 08:29:46,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:29:46
[2026-06-27 08:29:47,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:29:47,303.303 INFO    ] Initializing speech engine...
[2026-06-27 08:29:47,308.308 INFO    ] 2026-06-27 08:29:47
[2026-06-27 08:29:47,512.512 INFO    ] 2026-06-27 08:29:47
[2026-06-27 08:29:47,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:29:47,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:29:47,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:29:47,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:29:47,930.930 INFO    ] time= 27/06/2026 08:29:47
[2026-06-27 08:29:47,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:29:47,960.960 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:29:48,027.027 INFO    ] No existing commands found in stream
[2026-06-27 08:29:53,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:29:53,038.038 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-27 08:29:54,509.509 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 08:29:54,510.510 INFO    ] Checking for system updates...
[2026-06-27 08:29:54,535.535 INFO    ] 200
[2026-06-27 08:29:54,536.536 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:29:54,567.567 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:29:54,569.569 INFO    ] No update needed
[2026-06-27 08:29:54,570.570 INFO    ] Checking for camera pi updates...
[2026-06-27 08:29:54,591.591 INFO    ] 200
[2026-06-27 08:29:54,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:29:54,619.619 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:29:54,650.650 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:29:54,651.651 INFO    ] No camera update needed
[2026-06-27 08:29:54,652.652 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:29:54,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:29:54,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:29:54,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:29:56,699.699 INFO    ] ================================================
[2026-06-27 08:29:56,715.715 INFO    ] Launching Daemon at Sat Jun 27 08:29:56 IST 2026
[2026-06-27 08:29:56,726.726 INFO    ] ================================================
[2026-06-27 08:29:57,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:29:57
[2026-06-27 08:29:57,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:29:57,545.545 INFO    ] Initializing speech engine...
[2026-06-27 08:29:57,549.549 INFO    ] 2026-06-27 08:29:57
[2026-06-27 08:29:57,770.770 INFO    ] 2026-06-27 08:29:57
[2026-06-27 08:29:57,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:29:57,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:29:57,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:29:58,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:29:58,189.189 INFO    ] time= 27/06/2026 08:29:58
[2026-06-27 08:29:58,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:29:58,223.223 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:29:58,293.293 INFO    ] No existing commands found in stream
[2026-06-27 08:30:03,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:30:03,307.307 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-27 08:30:07,835.835 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 08:30:07,837.837 INFO    ] Checking for system updates...
[2026-06-27 08:30:07,878.878 INFO    ] 200
[2026-06-27 08:30:07,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:30:07,933.933 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:30:07,936.936 INFO    ] No update needed
[2026-06-27 08:30:07,938.938 INFO    ] Checking for camera pi updates...
[2026-06-27 08:30:07,972.972 INFO    ] 200
[2026-06-27 08:30:07,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:30:07,999.999 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:30:08,034.034 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:30:08,035.035 INFO    ] No camera update needed
[2026-06-27 08:30:08,036.036 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:30:08,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:30:08,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:30:08,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:30:10,084.084 INFO    ] ================================================
[2026-06-27 08:30:10,099.099 INFO    ] Launching Daemon at Sat Jun 27 08:30:10 IST 2026
[2026-06-27 08:30:10,109.109 INFO    ] ================================================
[2026-06-27 08:30:10,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:30:10
[2026-06-27 08:30:10,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:30:10,919.919 INFO    ] Initializing speech engine...
[2026-06-27 08:30:10,927.927 INFO    ] 2026-06-27 08:30:10
[2026-06-27 08:30:11,140.140 INFO    ] 2026-06-27 08:30:11
[2026-06-27 08:30:11,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:30:11,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:30:11,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:30:11,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:30:11,564.564 INFO    ] time= 27/06/2026 08:30:11
[2026-06-27 08:30:11,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:30:11,594.594 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:30:11,662.662 INFO    ] No existing commands found in stream
[2026-06-27 08:30:16,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:30:16,672.672 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-27 08:30:17,850.850 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 08:30:17,852.852 INFO    ] Checking for system updates...
[2026-06-27 08:30:17,878.878 INFO    ] 200
[2026-06-27 08:30:17,880.880 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-27 08:30:17,882.882 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-27 08:30:17,883.883 INFO    ] Checking for camera pi updates...
[2026-06-27 08:30:17,904.904 INFO    ] 200
[2026-06-27 08:30:17,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-27 08:30:17,908.908 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-27 08:30:17,909.909 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:30:17,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:30:17,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:30:17,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:30:19,950.950 INFO    ] ================================================
[2026-06-27 08:30:19,965.965 INFO    ] Launching Daemon at Sat Jun 27 08:30:19 IST 2026
[2026-06-27 08:30:19,976.976 INFO    ] ================================================
[2026-06-27 08:30:20,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:30:20
[2026-06-27 08:30:20,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:30:20,768.768 INFO    ] Initializing speech engine...
[2026-06-27 08:30:20,772.772 INFO    ] 2026-06-27 08:30:20
[2026-06-27 08:30:20,977.977 INFO    ] 2026-06-27 08:30:20
[2026-06-27 08:30:21,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:30:21,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:30:21,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:30:21,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:30:21,367.367 INFO    ] time= 27/06/2026 08:30:21
[2026-06-27 08:30:21,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:30:21,422.422 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:30:21,517.517 INFO    ] No existing commands found in stream
[2026-06-27 08:30:26,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:30:26,529.529 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-27 08:30:27,633.633 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 08:30:27,635.635 INFO    ] Checking for system updates...
[2026-06-27 08:30:27,656.656 INFO    ] 200
[2026-06-27 08:30:27,657.657 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:30:27,690.690 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:30:27,692.692 INFO    ] No update needed
[2026-06-27 08:30:27,694.694 INFO    ] Checking for camera pi updates...
[2026-06-27 08:30:27,713.713 INFO    ] 200
[2026-06-27 08:30:27,715.715 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:30:27,743.743 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:30:27,782.782 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:30:27,784.784 INFO    ] No camera update needed
[2026-06-27 08:30:27,785.785 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:30:27,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:30:27,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:30:27,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:30:29,830.830 INFO    ] ================================================
[2026-06-27 08:30:29,845.845 INFO    ] Launching Daemon at Sat Jun 27 08:30:29 IST 2026
[2026-06-27 08:30:29,856.856 INFO    ] ================================================
[2026-06-27 08:30:30,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:30:30
[2026-06-27 08:30:30,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:30:30,655.655 INFO    ] Initializing speech engine...
[2026-06-27 08:30:30,660.660 INFO    ] 2026-06-27 08:30:30
[2026-06-27 08:30:30,867.867 INFO    ] 2026-06-27 08:30:30
[2026-06-27 08:30:30,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:30:31,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:30:31,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:30:31,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:30:31,298.298 INFO    ] time= 27/06/2026 08:30:31
[2026-06-27 08:30:31,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:30:31,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:30:31,393.393 INFO    ] No existing commands found in stream
[2026-06-27 08:30:36,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:30:36,420.420 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-27 08:30:38,221.221 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:30:38,223.223 INFO    ] Checking for system updates...
[2026-06-27 08:30:38,244.244 INFO    ] 200
[2026-06-27 08:30:38,245.245 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:30:38,276.276 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:30:38,277.277 INFO    ] No update needed
[2026-06-27 08:30:38,278.278 INFO    ] Checking for camera pi updates...
[2026-06-27 08:30:38,298.298 INFO    ] 200
[2026-06-27 08:30:38,299.299 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:30:38,323.323 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:30:38,462.462 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:30:38,464.464 INFO    ] No camera update needed
[2026-06-27 08:30:38,465.465 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:30:38,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:30:38,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:30:38,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:30:40,510.510 INFO    ] ================================================
[2026-06-27 08:30:40,527.527 INFO    ] Launching Daemon at Sat Jun 27 08:30:40 IST 2026
[2026-06-27 08:30:40,538.538 INFO    ] ================================================
[2026-06-27 08:30:40,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:30:40
[2026-06-27 08:30:41,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:30:41,339.339 INFO    ] Initializing speech engine...
[2026-06-27 08:30:41,345.345 INFO    ] 2026-06-27 08:30:41
[2026-06-27 08:30:41,548.548 INFO    ] 2026-06-27 08:30:41
[2026-06-27 08:30:41,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:30:41,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:30:41,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:30:41,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:30:41,984.984 INFO    ] time= 27/06/2026 08:30:41
[2026-06-27 08:30:41,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:30:41,995.995 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:30:42,062.062 INFO    ] No existing commands found in stream
[2026-06-27 08:30:47,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:30:47,079.079 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-27 08:30:49,276.276 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:30:49,278.278 INFO    ] Checking for system updates...
[2026-06-27 08:30:49,299.299 INFO    ] 200
[2026-06-27 08:30:49,300.300 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:30:49,331.331 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:30:49,332.332 INFO    ] No update needed
[2026-06-27 08:30:49,334.334 INFO    ] Checking for camera pi updates...
[2026-06-27 08:30:49,355.355 INFO    ] 200
[2026-06-27 08:30:49,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:30:49,382.382 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:30:49,419.419 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:30:49,420.420 INFO    ] No camera update needed
[2026-06-27 08:30:49,421.421 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:30:49,422.422 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:30:49,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:30:49,428.428 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:30:51,466.466 INFO    ] ================================================
[2026-06-27 08:30:51,481.481 INFO    ] Launching Daemon at Sat Jun 27 08:30:51 IST 2026
[2026-06-27 08:30:51,492.492 INFO    ] ================================================
[2026-06-27 08:30:51,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:30:51
[2026-06-27 08:30:52,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:30:52,305.305 INFO    ] Initializing speech engine...
[2026-06-27 08:30:52,312.312 INFO    ] 2026-06-27 08:30:52
[2026-06-27 08:30:52,526.526 INFO    ] 2026-06-27 08:30:52
[2026-06-27 08:30:52,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:30:52,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:30:52,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:30:52,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:30:52,956.956 INFO    ] time= 27/06/2026 08:30:52
[2026-06-27 08:30:52,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:30:52,985.985 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:30:53,053.053 INFO    ] No existing commands found in stream
[2026-06-27 08:30:58,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:30:58,065.065 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-27 08:31:00,011.011 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:31:00,013.013 INFO    ] Checking for system updates...
[2026-06-27 08:31:00,034.034 INFO    ] 200
[2026-06-27 08:31:00,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:31:00,069.069 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:31:00,070.070 INFO    ] No update needed
[2026-06-27 08:31:00,072.072 INFO    ] Checking for camera pi updates...
[2026-06-27 08:31:00,091.091 INFO    ] 200
[2026-06-27 08:31:00,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:31:00,116.116 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:31:00,151.151 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:31:00,153.153 INFO    ] No camera update needed
[2026-06-27 08:31:00,154.154 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:31:00,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:31:00,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:31:00,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:31:02,199.199 INFO    ] ================================================
[2026-06-27 08:31:02,215.215 INFO    ] Launching Daemon at Sat Jun 27 08:31:02 IST 2026
[2026-06-27 08:31:02,226.226 INFO    ] ================================================
[2026-06-27 08:31:02,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:31:02
[2026-06-27 08:31:02,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:31:03,094.094 INFO    ] Initializing speech engine...
[2026-06-27 08:31:03,099.099 INFO    ] 2026-06-27 08:31:03
[2026-06-27 08:31:03,304.304 INFO    ] 2026-06-27 08:31:03
[2026-06-27 08:31:03,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:31:03,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:31:03,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:31:03,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:31:03,727.727 INFO    ] time= 27/06/2026 08:31:03
[2026-06-27 08:31:03,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:31:03,756.756 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:31:03,823.823 INFO    ] No existing commands found in stream
[2026-06-27 08:31:08,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:31:08,856.856 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-27 08:31:11,811.811 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:31:11,812.812 INFO    ] Checking for system updates...
[2026-06-27 08:31:11,834.834 INFO    ] 200
[2026-06-27 08:31:11,835.835 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:31:11,868.868 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:31:11,869.869 INFO    ] No update needed
[2026-06-27 08:31:11,871.871 INFO    ] Checking for camera pi updates...
[2026-06-27 08:31:11,891.891 INFO    ] 200
[2026-06-27 08:31:11,893.893 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:31:11,918.918 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:31:11,961.961 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:31:11,962.962 INFO    ] No camera update needed
[2026-06-27 08:31:11,964.964 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:31:11,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:31:11,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:31:11,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:31:14,009.009 INFO    ] ================================================
[2026-06-27 08:31:14,024.024 INFO    ] Launching Daemon at Sat Jun 27 08:31:14 IST 2026
[2026-06-27 08:31:14,035.035 INFO    ] ================================================
[2026-06-27 08:31:14,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:31:14
[2026-06-27 08:31:14,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:31:14,858.858 INFO    ] Initializing speech engine...
[2026-06-27 08:31:14,862.862 INFO    ] 2026-06-27 08:31:14
[2026-06-27 08:31:15,070.070 INFO    ] 2026-06-27 08:31:15
[2026-06-27 08:31:15,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:31:15,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:31:15,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:31:15,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:31:15,469.469 INFO    ] time= 27/06/2026 08:31:15
[2026-06-27 08:31:15,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:31:15,513.513 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:31:15,583.583 INFO    ] No existing commands found in stream
[2026-06-27 08:31:20,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:31:20,595.595 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-27 08:31:23,119.119 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:31:23,120.120 INFO    ] Checking for system updates...
[2026-06-27 08:31:23,143.143 INFO    ] 200
[2026-06-27 08:31:23,144.144 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:31:23,174.174 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:31:23,176.176 INFO    ] No update needed
[2026-06-27 08:31:23,177.177 INFO    ] Checking for camera pi updates...
[2026-06-27 08:31:23,198.198 INFO    ] 200
[2026-06-27 08:31:23,199.199 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:31:23,224.224 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:31:23,264.264 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:31:23,265.265 INFO    ] No camera update needed
[2026-06-27 08:31:23,267.267 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:31:23,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:31:23,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:31:23,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:31:25,312.312 INFO    ] ================================================
[2026-06-27 08:31:25,328.328 INFO    ] Launching Daemon at Sat Jun 27 08:31:25 IST 2026
[2026-06-27 08:31:25,339.339 INFO    ] ================================================
[2026-06-27 08:31:25,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:31:25
[2026-06-27 08:31:25,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:31:26,138.138 INFO    ] Initializing speech engine...
[2026-06-27 08:31:26,144.144 INFO    ] 2026-06-27 08:31:26
[2026-06-27 08:31:26,351.351 INFO    ] 2026-06-27 08:31:26
[2026-06-27 08:31:26,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:31:26,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:31:26,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:31:26,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:31:26,772.772 INFO    ] time= 27/06/2026 08:31:26
[2026-06-27 08:31:26,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:31:26,802.802 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:31:26,868.868 INFO    ] No existing commands found in stream
[2026-06-27 08:31:31,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:31:31,880.880 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-27 08:31:35,369.369 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:31:35,370.370 INFO    ] Checking for system updates...
[2026-06-27 08:31:35,392.392 INFO    ] 200
[2026-06-27 08:31:35,394.394 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:31:35,425.425 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:31:35,427.427 INFO    ] No update needed
[2026-06-27 08:31:35,428.428 INFO    ] Checking for camera pi updates...
[2026-06-27 08:31:35,447.447 INFO    ] 200
[2026-06-27 08:31:35,449.449 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:31:35,477.477 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:31:35,512.512 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:31:35,513.513 INFO    ] No camera update needed
[2026-06-27 08:31:35,515.515 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:31:35,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:31:35,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:31:35,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:31:37,561.561 INFO    ] ================================================
[2026-06-27 08:31:37,577.577 INFO    ] Launching Daemon at Sat Jun 27 08:31:37 IST 2026
[2026-06-27 08:31:37,588.588 INFO    ] ================================================
[2026-06-27 08:31:37,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:31:37
[2026-06-27 08:31:38,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:31:38,405.405 INFO    ] Initializing speech engine...
[2026-06-27 08:31:38,409.409 INFO    ] 2026-06-27 08:31:38
[2026-06-27 08:31:38,630.630 INFO    ] 2026-06-27 08:31:38
[2026-06-27 08:31:38,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:31:38,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:31:38,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:31:38,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:31:39,057.057 INFO    ] time= 27/06/2026 08:31:38
[2026-06-27 08:31:39,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:31:39,088.088 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:31:39,180.180 INFO    ] No existing commands found in stream
[2026-06-27 08:31:44,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:31:44,192.192 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-27 08:31:46,689.689 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 08:31:46,690.690 INFO    ] Checking for system updates...
[2026-06-27 08:31:46,712.712 INFO    ] 200
[2026-06-27 08:31:46,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:31:46,744.744 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:31:46,745.745 INFO    ] No update needed
[2026-06-27 08:31:46,747.747 INFO    ] Checking for camera pi updates...
[2026-06-27 08:31:46,768.768 INFO    ] 200
[2026-06-27 08:31:46,769.769 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:31:46,794.794 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:31:46,831.831 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:31:46,832.832 INFO    ] No camera update needed
[2026-06-27 08:31:46,834.834 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:31:46,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:31:46,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:31:46,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:31:48,880.880 INFO    ] ================================================
[2026-06-27 08:31:48,897.897 INFO    ] Launching Daemon at Sat Jun 27 08:31:48 IST 2026
[2026-06-27 08:31:48,909.909 INFO    ] ================================================
[2026-06-27 08:31:49,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:31:49
[2026-06-27 08:31:49,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:31:49,678.678 INFO    ] Initializing speech engine...
[2026-06-27 08:31:49,685.685 INFO    ] 2026-06-27 08:31:49
[2026-06-27 08:31:49,901.901 INFO    ] 2026-06-27 08:31:49
[2026-06-27 08:31:49,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:31:50,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:31:50,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:31:50,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:31:50,329.329 INFO    ] time= 27/06/2026 08:31:50
[2026-06-27 08:31:50,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:31:50,357.357 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:31:50,423.423 INFO    ] No existing commands found in stream
[2026-06-27 08:31:55,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:31:55,437.437 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-27 08:31:58,697.697 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 08:31:58,698.698 INFO    ] Checking for system updates...
[2026-06-27 08:31:58,720.720 INFO    ] 200
[2026-06-27 08:31:58,722.722 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:31:58,755.755 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:31:58,756.756 INFO    ] No update needed
[2026-06-27 08:31:58,757.757 INFO    ] Checking for camera pi updates...
[2026-06-27 08:31:58,778.778 INFO    ] 200
[2026-06-27 08:31:58,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:31:58,803.803 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:31:58,839.839 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:31:58,841.841 INFO    ] No camera update needed
[2026-06-27 08:31:58,842.842 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:31:58,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:31:58,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:31:58,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:32:00,893.893 INFO    ] ================================================
[2026-06-27 08:32:00,909.909 INFO    ] Launching Daemon at Sat Jun 27 08:32:00 IST 2026
[2026-06-27 08:32:00,920.920 INFO    ] ================================================
[2026-06-27 08:32:01,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:32:01
[2026-06-27 08:32:01,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:32:01,905.905 INFO    ] Initializing speech engine...
[2026-06-27 08:32:01,916.916 INFO    ] 2026-06-27 08:32:01
[2026-06-27 08:32:02,133.133 INFO    ] 2026-06-27 08:32:02
[2026-06-27 08:32:02,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:32:02,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:32:02,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:32:02,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:32:02,564.564 INFO    ] time= 27/06/2026 08:32:02
[2026-06-27 08:32:02,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:32:02,662.662 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:32:02,743.743 INFO    ] No existing commands found in stream
[2026-06-27 08:32:07,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:32:07,757.757 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-27 08:32:09,790.790 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:32:09,791.791 INFO    ] Checking for system updates...
[2026-06-27 08:32:09,813.813 INFO    ] 200
[2026-06-27 08:32:09,815.815 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:32:09,847.847 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:32:09,849.849 INFO    ] No update needed
[2026-06-27 08:32:09,850.850 INFO    ] Checking for camera pi updates...
[2026-06-27 08:32:09,871.871 INFO    ] 200
[2026-06-27 08:32:09,872.872 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:32:09,896.896 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:32:09,934.934 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:32:09,935.935 INFO    ] No camera update needed
[2026-06-27 08:32:09,936.936 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:32:09,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:32:09,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:32:09,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:32:11,984.984 INFO    ] ================================================
[2026-06-27 08:32:12,999.999 INFO    ] Launching Daemon at Sat Jun 27 08:32:11 IST 2026
[2026-06-27 08:32:12,010.010 INFO    ] ================================================
[2026-06-27 08:32:12,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:32:12
[2026-06-27 08:32:12,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:32:12,850.850 INFO    ] Initializing speech engine...
[2026-06-27 08:32:12,861.861 INFO    ] 2026-06-27 08:32:12
[2026-06-27 08:32:13,069.069 INFO    ] 2026-06-27 08:32:13
[2026-06-27 08:32:13,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:32:13,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:32:13,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:32:13,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:32:13,495.495 INFO    ] time= 27/06/2026 08:32:13
[2026-06-27 08:32:13,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:32:13,522.522 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:32:13,594.594 INFO    ] No existing commands found in stream
[2026-06-27 08:32:18,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:32:18,606.606 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-27 08:32:19,303.303 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 08:32:19,305.305 INFO    ] Checking for system updates...
[2026-06-27 08:32:19,327.327 INFO    ] 200
[2026-06-27 08:32:19,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:32:19,363.363 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:32:19,365.365 INFO    ] No update needed
[2026-06-27 08:32:19,367.367 INFO    ] Checking for camera pi updates...
[2026-06-27 08:32:19,388.388 INFO    ] 200
[2026-06-27 08:32:19,389.389 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:32:19,417.417 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:32:19,453.453 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:32:19,455.455 INFO    ] No camera update needed
[2026-06-27 08:32:19,456.456 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:32:19,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:32:19,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:32:19,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:32:21,505.505 INFO    ] ================================================
[2026-06-27 08:32:21,522.522 INFO    ] Launching Daemon at Sat Jun 27 08:32:21 IST 2026
[2026-06-27 08:32:21,533.533 INFO    ] ================================================
[2026-06-27 08:32:21,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:32:21
[2026-06-27 08:32:22,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:32:22,350.350 INFO    ] Initializing speech engine...
[2026-06-27 08:32:22,360.360 INFO    ] 2026-06-27 08:32:22
[2026-06-27 08:32:22,567.567 INFO    ] 2026-06-27 08:32:22
[2026-06-27 08:32:22,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:32:22,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:32:22,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:32:22,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:32:23,013.013 INFO    ] time= 27/06/2026 08:32:22
[2026-06-27 08:32:23,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:32:23,020.020 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:32:23,086.086 INFO    ] No existing commands found in stream
[2026-06-27 08:32:28,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:32:28,099.099 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-27 08:32:28,635.635 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 08:32:28,636.636 INFO    ] Checking for system updates...
[2026-06-27 08:32:28,657.657 INFO    ] 200
[2026-06-27 08:32:28,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:32:28,693.693 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:32:28,695.695 INFO    ] No update needed
[2026-06-27 08:32:28,696.696 INFO    ] Checking for camera pi updates...
[2026-06-27 08:32:28,716.716 INFO    ] 200
[2026-06-27 08:32:28,717.717 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:32:28,743.743 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:32:28,767.767 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:32:28,769.769 INFO    ] No camera update needed
[2026-06-27 08:32:28,770.770 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:32:28,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:32:28,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:32:28,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:32:30,817.817 INFO    ] ================================================
[2026-06-27 08:32:30,833.833 INFO    ] Launching Daemon at Sat Jun 27 08:32:30 IST 2026
[2026-06-27 08:32:30,845.845 INFO    ] ================================================
[2026-06-27 08:32:31,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:32:31
[2026-06-27 08:32:31,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:32:31,670.670 INFO    ] Initializing speech engine...
[2026-06-27 08:32:31,683.683 INFO    ] 2026-06-27 08:32:31
[2026-06-27 08:32:31,877.877 INFO    ] 2026-06-27 08:32:31
[2026-06-27 08:32:31,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:32:32,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:32:32,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:32:32,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:32:32,321.321 INFO    ] time= 27/06/2026 08:32:32
[2026-06-27 08:32:32,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:32:32,372.372 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:32:32,444.444 INFO    ] No existing commands found in stream
[2026-06-27 08:32:37,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:32:37,456.456 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-27 08:32:39,124.124 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:32:39,125.125 INFO    ] Checking for system updates...
[2026-06-27 08:32:39,151.151 INFO    ] 200
[2026-06-27 08:32:39,152.152 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:32:39,186.186 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:32:39,187.187 INFO    ] No update needed
[2026-06-27 08:32:39,188.188 INFO    ] Checking for camera pi updates...
[2026-06-27 08:32:39,208.208 INFO    ] 200
[2026-06-27 08:32:39,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:32:39,234.234 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:32:39,276.276 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:32:39,277.277 INFO    ] No camera update needed
[2026-06-27 08:32:39,278.278 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:32:39,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:32:39,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:32:39,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:32:41,325.325 INFO    ] ================================================
[2026-06-27 08:32:41,341.341 INFO    ] Launching Daemon at Sat Jun 27 08:32:41 IST 2026
[2026-06-27 08:32:41,352.352 INFO    ] ================================================
[2026-06-27 08:32:41,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:32:41
[2026-06-27 08:32:42,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:32:42,147.147 INFO    ] Initializing speech engine...
[2026-06-27 08:32:42,150.150 INFO    ] 2026-06-27 08:32:42
[2026-06-27 08:32:42,353.353 INFO    ] 2026-06-27 08:32:42
[2026-06-27 08:32:42,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:32:42,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:32:42,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:32:42,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:32:42,768.768 INFO    ] time= 27/06/2026 08:32:42
[2026-06-27 08:32:42,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:32:42,801.801 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:32:42,868.868 INFO    ] No existing commands found in stream
[2026-06-27 08:32:47,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:32:47,880.880 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-27 08:32:50,164.164 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 08:32:50,166.166 INFO    ] Checking for system updates...
[2026-06-27 08:32:50,187.187 INFO    ] 200
[2026-06-27 08:32:50,188.188 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:32:50,221.221 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:32:50,223.223 INFO    ] No update needed
[2026-06-27 08:32:50,224.224 INFO    ] Checking for camera pi updates...
[2026-06-27 08:32:50,245.245 INFO    ] 200
[2026-06-27 08:32:50,246.246 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:32:50,272.272 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:32:50,413.413 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:32:50,415.415 INFO    ] No camera update needed
[2026-06-27 08:32:50,416.416 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:32:50,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:32:50,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:32:50,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:32:52,463.463 INFO    ] ================================================
[2026-06-27 08:32:52,479.479 INFO    ] Launching Daemon at Sat Jun 27 08:32:52 IST 2026
[2026-06-27 08:32:52,491.491 INFO    ] ================================================
[2026-06-27 08:32:52,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:32:52
[2026-06-27 08:32:53,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:32:53,300.300 INFO    ] Initializing speech engine...
[2026-06-27 08:32:53,308.308 INFO    ] 2026-06-27 08:32:53
[2026-06-27 08:32:53,521.521 INFO    ] 2026-06-27 08:32:53
[2026-06-27 08:32:53,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:32:53,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:32:53,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:32:53,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:32:53,957.957 INFO    ] time= 27/06/2026 08:32:53
[2026-06-27 08:32:53,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:32:53,968.968 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:32:54,033.033 INFO    ] No existing commands found in stream
[2026-06-27 08:32:59,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:32:59,047.047 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-27 08:33:00,486.486 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 08:33:00,487.487 INFO    ] Checking for system updates...
[2026-06-27 08:33:00,509.509 INFO    ] 200
[2026-06-27 08:33:00,511.511 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:33:00,541.541 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:33:00,543.543 INFO    ] No update needed
[2026-06-27 08:33:00,545.545 INFO    ] Checking for camera pi updates...
[2026-06-27 08:33:00,564.564 INFO    ] 200
[2026-06-27 08:33:00,566.566 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:33:00,591.591 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:33:00,631.631 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:33:00,632.632 INFO    ] No camera update needed
[2026-06-27 08:33:00,633.633 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:33:00,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:33:00,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:33:00,641.641 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:33:02,666.666 INFO    ] ================================================
[2026-06-27 08:33:02,675.675 INFO    ] Launching Daemon at Sat Jun 27 08:33:02 IST 2026
[2026-06-27 08:33:02,681.681 INFO    ] ================================================
[2026-06-27 08:33:03,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:33:03
[2026-06-27 08:33:03,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:33:03,513.513 INFO    ] Initializing speech engine...
[2026-06-27 08:33:03,518.518 INFO    ] 2026-06-27 08:33:03
[2026-06-27 08:33:03,715.715 INFO    ] 2026-06-27 08:33:03
[2026-06-27 08:33:03,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:33:03,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:33:03,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:33:04,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:33:04,197.197 INFO    ] time= 27/06/2026 08:33:04
[2026-06-27 08:33:04,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:33:04,224.224 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:33:04,291.291 INFO    ] No existing commands found in stream
[2026-06-27 08:33:09,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:33:09,303.303 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-27 08:33:11,066.066 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 08:33:11,067.067 INFO    ] Checking for system updates...
[2026-06-27 08:33:11,088.088 INFO    ] 200
[2026-06-27 08:33:11,089.089 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:33:11,124.124 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:33:11,126.126 INFO    ] No update needed
[2026-06-27 08:33:11,127.127 INFO    ] Checking for camera pi updates...
[2026-06-27 08:33:11,147.147 INFO    ] 200
[2026-06-27 08:33:11,148.148 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:33:11,174.174 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:33:11,207.207 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:33:11,209.209 INFO    ] No camera update needed
[2026-06-27 08:33:11,210.210 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:33:11,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:33:11,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:33:11,217.217 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:33:13,256.256 INFO    ] ================================================
[2026-06-27 08:33:13,272.272 INFO    ] Launching Daemon at Sat Jun 27 08:33:13 IST 2026
[2026-06-27 08:33:13,284.284 INFO    ] ================================================
[2026-06-27 08:33:13,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:33:13
[2026-06-27 08:33:13,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:33:14,135.135 INFO    ] Initializing speech engine...
[2026-06-27 08:33:14,143.143 INFO    ] 2026-06-27 08:33:14
[2026-06-27 08:33:14,345.345 INFO    ] 2026-06-27 08:33:14
[2026-06-27 08:33:14,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:33:14,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:33:14,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:33:14,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:33:14,768.768 INFO    ] time= 27/06/2026 08:33:14
[2026-06-27 08:33:14,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:33:14,796.796 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:33:14,862.862 INFO    ] No existing commands found in stream
[2026-06-27 08:33:19,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:33:19,876.876 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-27 08:33:23,168.168 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 08:33:23,169.169 INFO    ] Checking for system updates...
[2026-06-27 08:33:23,191.191 INFO    ] 200
[2026-06-27 08:33:23,193.193 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:33:23,227.227 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:33:23,229.229 INFO    ] No update needed
[2026-06-27 08:33:23,230.230 INFO    ] Checking for camera pi updates...
[2026-06-27 08:33:23,252.252 INFO    ] 200
[2026-06-27 08:33:23,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:33:23,279.279 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:33:23,317.317 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:33:23,319.319 INFO    ] No camera update needed
[2026-06-27 08:33:23,320.320 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:33:23,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:33:23,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:33:23,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:33:25,367.367 INFO    ] ================================================
[2026-06-27 08:33:25,383.383 INFO    ] Launching Daemon at Sat Jun 27 08:33:25 IST 2026
[2026-06-27 08:33:25,394.394 INFO    ] ================================================
[2026-06-27 08:33:25,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:33:25
[2026-06-27 08:33:26,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:33:26,208.208 INFO    ] Initializing speech engine...
[2026-06-27 08:33:26,215.215 INFO    ] 2026-06-27 08:33:26
[2026-06-27 08:33:26,428.428 INFO    ] 2026-06-27 08:33:26
[2026-06-27 08:33:26,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:33:26,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:33:26,651.651 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:33:26,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:33:26,860.860 INFO    ] time= 27/06/2026 08:33:26
[2026-06-27 08:33:26,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:33:26,876.876 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:33:26,944.944 INFO    ] No existing commands found in stream
[2026-06-27 08:33:31,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:33:31,954.954 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-27 08:33:34,219.219 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 08:33:34,220.220 INFO    ] Checking for system updates...
[2026-06-27 08:33:34,242.242 INFO    ] 200
[2026-06-27 08:33:34,244.244 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:33:34,276.276 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:33:34,278.278 INFO    ] No update needed
[2026-06-27 08:33:34,279.279 INFO    ] Checking for camera pi updates...
[2026-06-27 08:33:34,299.299 INFO    ] 200
[2026-06-27 08:33:34,300.300 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:33:34,325.325 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:33:34,363.363 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:33:34,365.365 INFO    ] No camera update needed
[2026-06-27 08:33:34,366.366 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:33:34,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:33:34,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:33:34,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:33:36,419.419 INFO    ] ================================================
[2026-06-27 08:33:36,435.435 INFO    ] Launching Daemon at Sat Jun 27 08:33:36 IST 2026
[2026-06-27 08:33:36,446.446 INFO    ] ================================================
[2026-06-27 08:33:36,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:33:36
[2026-06-27 08:33:37,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:33:37,273.273 INFO    ] Initializing speech engine...
[2026-06-27 08:33:37,278.278 INFO    ] 2026-06-27 08:33:37
[2026-06-27 08:33:37,481.481 INFO    ] 2026-06-27 08:33:37
[2026-06-27 08:33:37,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:33:37,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:33:37,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:33:37,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:33:37,875.875 INFO    ] time= 27/06/2026 08:33:37
[2026-06-27 08:33:37,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:33:37,925.925 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:33:37,995.995 INFO    ] No existing commands found in stream
[2026-06-27 08:33:43,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:33:43,008.008 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-27 08:33:43,409.409 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:33:43,410.410 INFO    ] Checking for system updates...
[2026-06-27 08:33:43,433.433 INFO    ] 200
[2026-06-27 08:33:43,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:33:43,472.472 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:33:43,474.474 INFO    ] No update needed
[2026-06-27 08:33:43,475.475 INFO    ] Checking for camera pi updates...
[2026-06-27 08:33:43,497.497 INFO    ] 200
[2026-06-27 08:33:43,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:33:43,524.524 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:33:43,575.575 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:33:43,576.576 INFO    ] No camera update needed
[2026-06-27 08:33:43,578.578 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:33:43,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:33:43,582.582 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:33:43,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:33:45,624.624 INFO    ] ================================================
[2026-06-27 08:33:45,639.639 INFO    ] Launching Daemon at Sat Jun 27 08:33:45 IST 2026
[2026-06-27 08:33:45,649.649 INFO    ] ================================================
[2026-06-27 08:33:46,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:33:46
[2026-06-27 08:33:46,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:33:46,446.446 INFO    ] Initializing speech engine...
[2026-06-27 08:33:46,455.455 INFO    ] 2026-06-27 08:33:46
[2026-06-27 08:33:46,670.670 INFO    ] 2026-06-27 08:33:46
[2026-06-27 08:33:46,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:33:46,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:33:46,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:33:47,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:33:47,087.087 INFO    ] time= 27/06/2026 08:33:47
[2026-06-27 08:33:47,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:33:47,127.127 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:33:47,196.196 INFO    ] No existing commands found in stream
[2026-06-27 08:33:52,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:33:52,208.208 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-27 08:33:56,447.447 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:33:56,448.448 INFO    ] Checking for system updates...
[2026-06-27 08:33:56,470.470 INFO    ] 200
[2026-06-27 08:33:56,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:33:56,504.504 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:33:56,506.506 INFO    ] No update needed
[2026-06-27 08:33:56,507.507 INFO    ] Checking for camera pi updates...
[2026-06-27 08:33:56,527.527 INFO    ] 200
[2026-06-27 08:33:56,529.529 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:33:56,554.554 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:33:56,595.595 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:33:56,596.596 INFO    ] No camera update needed
[2026-06-27 08:33:56,598.598 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:33:56,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:33:56,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:33:56,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:33:58,643.643 INFO    ] ================================================
[2026-06-27 08:33:58,658.658 INFO    ] Launching Daemon at Sat Jun 27 08:33:58 IST 2026
[2026-06-27 08:33:58,669.669 INFO    ] ================================================
[2026-06-27 08:33:58,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:33:58
[2026-06-27 08:33:59,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:33:59,440.440 INFO    ] Initializing speech engine...
[2026-06-27 08:33:59,445.445 INFO    ] 2026-06-27 08:33:59
[2026-06-27 08:33:59,661.661 INFO    ] 2026-06-27 08:33:59
[2026-06-27 08:33:59,690.690 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:33:59,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:33:59,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:34:00,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:34:00,098.098 INFO    ] time= 27/06/2026 08:34:00
[2026-06-27 08:34:00,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:34:00,109.109 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:34:00,176.176 INFO    ] No existing commands found in stream
[2026-06-27 08:34:05,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:34:05,188.188 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-27 08:34:09,248.248 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 08:34:09,249.249 INFO    ] Checking for system updates...
[2026-06-27 08:34:09,271.271 INFO    ] 200
[2026-06-27 08:34:09,272.272 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:34:09,305.305 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:34:09,306.306 INFO    ] No update needed
[2026-06-27 08:34:09,307.307 INFO    ] Checking for camera pi updates...
[2026-06-27 08:34:09,328.328 INFO    ] 200
[2026-06-27 08:34:09,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:34:09,353.353 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:34:09,389.389 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:34:09,390.390 INFO    ] No camera update needed
[2026-06-27 08:34:09,391.391 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:34:09,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:34:09,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:34:09,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:34:11,437.437 INFO    ] ================================================
[2026-06-27 08:34:11,453.453 INFO    ] Launching Daemon at Sat Jun 27 08:34:11 IST 2026
[2026-06-27 08:34:11,463.463 INFO    ] ================================================
[2026-06-27 08:34:11,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:34:11
[2026-06-27 08:34:12,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:34:12,310.310 INFO    ] Initializing speech engine...
[2026-06-27 08:34:12,314.314 INFO    ] 2026-06-27 08:34:12
[2026-06-27 08:34:12,524.524 INFO    ] 2026-06-27 08:34:12
[2026-06-27 08:34:12,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:34:12,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:34:12,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:34:12,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:34:12,952.952 INFO    ] time= 27/06/2026 08:34:12
[2026-06-27 08:34:12,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:34:13,048.048 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:34:13,105.105 INFO    ] No existing commands found in stream
[2026-06-27 08:34:18,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:34:18,118.118 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-27 08:34:21,000.000 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 08:34:21,001.001 INFO    ] Checking for system updates...
[2026-06-27 08:34:21,023.023 INFO    ] 200
[2026-06-27 08:34:21,025.025 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:34:21,057.057 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:34:21,059.059 INFO    ] No update needed
[2026-06-27 08:34:21,060.060 INFO    ] Checking for camera pi updates...
[2026-06-27 08:34:21,080.080 INFO    ] 200
[2026-06-27 08:34:21,082.082 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:34:21,109.109 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:34:21,143.143 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:34:21,144.144 INFO    ] No camera update needed
[2026-06-27 08:34:21,146.146 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:34:21,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:34:21,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:34:21,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:34:23,184.184 INFO    ] ================================================
[2026-06-27 08:34:23,199.199 INFO    ] Launching Daemon at Sat Jun 27 08:34:23 IST 2026
[2026-06-27 08:34:23,210.210 INFO    ] ================================================
[2026-06-27 08:34:23,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:34:23
[2026-06-27 08:34:23,890.890 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:34:24,041.041 INFO    ] Initializing speech engine...
[2026-06-27 08:34:24,047.047 INFO    ] 2026-06-27 08:34:24
[2026-06-27 08:34:24,257.257 INFO    ] 2026-06-27 08:34:24
[2026-06-27 08:34:24,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:34:24,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:34:24,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:34:24,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:34:24,685.685 INFO    ] time= 27/06/2026 08:34:24
[2026-06-27 08:34:24,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:34:24,714.714 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:34:24,807.807 INFO    ] No existing commands found in stream
[2026-06-27 08:34:29,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:34:29,825.825 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-27 08:34:33,990.990 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 08:34:33,991.991 INFO    ] Checking for system updates...
[2026-06-27 08:34:34,015.015 INFO    ] 200
[2026-06-27 08:34:34,016.016 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:34:34,049.049 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:34:34,050.050 INFO    ] No update needed
[2026-06-27 08:34:34,052.052 INFO    ] Checking for camera pi updates...
[2026-06-27 08:34:34,073.073 INFO    ] 200
[2026-06-27 08:34:34,074.074 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:34:34,101.101 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:34:34,143.143 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:34:34,144.144 INFO    ] No camera update needed
[2026-06-27 08:34:34,146.146 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:34:34,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:34:34,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:34:34,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:34:36,191.191 INFO    ] ================================================
[2026-06-27 08:34:36,207.207 INFO    ] Launching Daemon at Sat Jun 27 08:34:36 IST 2026
[2026-06-27 08:34:36,218.218 INFO    ] ================================================
[2026-06-27 08:34:36,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:34:36
[2026-06-27 08:34:36,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:34:36,997.997 INFO    ] Initializing speech engine...
[2026-06-27 08:34:37,007.007 INFO    ] 2026-06-27 08:34:36
[2026-06-27 08:34:37,213.213 INFO    ] 2026-06-27 08:34:37
[2026-06-27 08:34:37,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:34:37,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:34:37,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:34:37,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:34:37,636.636 INFO    ] time= 27/06/2026 08:34:37
[2026-06-27 08:34:37,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:34:37,666.666 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:34:37,733.733 INFO    ] No existing commands found in stream
[2026-06-27 08:34:42,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:34:42,746.746 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-27 08:34:44,781.781 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 08:34:44,783.783 INFO    ] Checking for system updates...
[2026-06-27 08:34:44,804.804 INFO    ] 200
[2026-06-27 08:34:44,806.806 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:34:44,836.836 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:34:44,838.838 INFO    ] No update needed
[2026-06-27 08:34:44,839.839 INFO    ] Checking for camera pi updates...
[2026-06-27 08:34:44,860.860 INFO    ] 200
[2026-06-27 08:34:44,861.861 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:34:44,889.889 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:34:44,926.926 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:34:44,927.927 INFO    ] No camera update needed
[2026-06-27 08:34:44,928.928 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:34:44,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:34:44,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:34:44,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:34:46,976.976 INFO    ] ================================================
[2026-06-27 08:34:46,992.992 INFO    ] Launching Daemon at Sat Jun 27 08:34:46 IST 2026
[2026-06-27 08:34:47,003.003 INFO    ] ================================================
[2026-06-27 08:34:47,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:34:47
[2026-06-27 08:34:47,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:34:47,816.816 INFO    ] Initializing speech engine...
[2026-06-27 08:34:47,825.825 INFO    ] 2026-06-27 08:34:47
[2026-06-27 08:34:48,044.044 INFO    ] 2026-06-27 08:34:48
[2026-06-27 08:34:48,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:34:48,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:34:48,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:34:48,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:34:48,480.480 INFO    ] time= 27/06/2026 08:34:48
[2026-06-27 08:34:48,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:34:48,515.515 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:34:48,586.586 INFO    ] No existing commands found in stream
[2026-06-27 08:34:53,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:34:53,600.600 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-27 08:34:56,269.269 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 08:34:56,271.271 INFO    ] Checking for system updates...
[2026-06-27 08:34:56,293.293 INFO    ] 200
[2026-06-27 08:34:56,294.294 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:34:56,328.328 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:34:56,329.329 INFO    ] No update needed
[2026-06-27 08:34:56,331.331 INFO    ] Checking for camera pi updates...
[2026-06-27 08:34:56,351.351 INFO    ] 200
[2026-06-27 08:34:56,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:34:56,376.376 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:34:56,522.522 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:34:56,523.523 INFO    ] No camera update needed
[2026-06-27 08:34:56,525.525 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:34:56,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:34:56,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:34:56,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:34:58,571.571 INFO    ] ================================================
[2026-06-27 08:34:58,586.586 INFO    ] Launching Daemon at Sat Jun 27 08:34:58 IST 2026
[2026-06-27 08:34:58,597.597 INFO    ] ================================================
[2026-06-27 08:34:58,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:34:58
[2026-06-27 08:34:59,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:34:59,444.444 INFO    ] Initializing speech engine...
[2026-06-27 08:34:59,454.454 INFO    ] 2026-06-27 08:34:59
[2026-06-27 08:34:59,668.668 INFO    ] 2026-06-27 08:34:59
[2026-06-27 08:34:59,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:34:59,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:34:59,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:35:00,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:35:00,118.118 INFO    ] time= 27/06/2026 08:35:00
[2026-06-27 08:35:00,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:35:00,126.126 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:35:00,193.193 INFO    ] No existing commands found in stream
[2026-06-27 08:35:05,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:35:05,207.207 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-27 08:35:08,259.259 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 08:35:08,260.260 INFO    ] Checking for system updates...
[2026-06-27 08:35:08,282.282 INFO    ] 200
[2026-06-27 08:35:08,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:35:08,316.316 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:35:08,317.317 INFO    ] No update needed
[2026-06-27 08:35:08,319.319 INFO    ] Checking for camera pi updates...
[2026-06-27 08:35:08,340.340 INFO    ] 200
[2026-06-27 08:35:08,341.341 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:35:08,369.369 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:35:08,406.406 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:35:08,407.407 INFO    ] No camera update needed
[2026-06-27 08:35:08,408.408 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:35:08,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:35:08,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:35:08,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:35:10,441.441 INFO    ] ================================================
[2026-06-27 08:35:10,449.449 INFO    ] Launching Daemon at Sat Jun 27 08:35:10 IST 2026
[2026-06-27 08:35:10,455.455 INFO    ] ================================================
[2026-06-27 08:35:10,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:35:10
[2026-06-27 08:35:11,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:35:11,262.262 INFO    ] Initializing speech engine...
[2026-06-27 08:35:11,267.267 INFO    ] 2026-06-27 08:35:11
[2026-06-27 08:35:11,483.483 INFO    ] 2026-06-27 08:35:11
[2026-06-27 08:35:11,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:35:11,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:35:11,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:35:11,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:35:11,914.914 INFO    ] time= 27/06/2026 08:35:11
[2026-06-27 08:35:11,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:35:11,976.976 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:35:12,050.050 INFO    ] No existing commands found in stream
[2026-06-27 08:35:17,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:35:17,064.064 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-27 08:35:19,629.629 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 08:35:19,630.630 INFO    ] Checking for system updates...
[2026-06-27 08:35:19,652.652 INFO    ] 200
[2026-06-27 08:35:19,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:35:19,685.685 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:35:19,687.687 INFO    ] No update needed
[2026-06-27 08:35:19,688.688 INFO    ] Checking for camera pi updates...
[2026-06-27 08:35:19,708.708 INFO    ] 200
[2026-06-27 08:35:19,710.710 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:35:19,733.733 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:35:19,773.773 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:35:19,775.775 INFO    ] No camera update needed
[2026-06-27 08:35:19,776.776 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:35:19,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:35:19,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:35:19,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:35:21,823.823 INFO    ] ================================================
[2026-06-27 08:35:21,838.838 INFO    ] Launching Daemon at Sat Jun 27 08:35:21 IST 2026
[2026-06-27 08:35:21,849.849 INFO    ] ================================================
[2026-06-27 08:35:22,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:35:22
[2026-06-27 08:35:22,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:35:22,663.663 INFO    ] Initializing speech engine...
[2026-06-27 08:35:22,668.668 INFO    ] 2026-06-27 08:35:22
[2026-06-27 08:35:22,876.876 INFO    ] 2026-06-27 08:35:22
[2026-06-27 08:35:22,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:35:23,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:35:23,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:35:23,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:35:23,301.301 INFO    ] time= 27/06/2026 08:35:23
[2026-06-27 08:35:23,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:35:23,331.331 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:35:23,397.397 INFO    ] No existing commands found in stream
[2026-06-27 08:35:28,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:35:28,410.410 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-27 08:35:31,888.888 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 08:35:31,889.889 INFO    ] Checking for system updates...
[2026-06-27 08:35:31,910.910 INFO    ] 200
[2026-06-27 08:35:31,912.912 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:35:31,944.944 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:35:31,946.946 INFO    ] No update needed
[2026-06-27 08:35:31,947.947 INFO    ] Checking for camera pi updates...
[2026-06-27 08:35:31,966.966 INFO    ] 200
[2026-06-27 08:35:31,968.968 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:35:32,001.001 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:35:32,030.030 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:35:32,031.031 INFO    ] No camera update needed
[2026-06-27 08:35:32,033.033 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:35:32,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:35:32,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:35:32,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:35:34,074.074 INFO    ] ================================================
[2026-06-27 08:35:34,090.090 INFO    ] Launching Daemon at Sat Jun 27 08:35:34 IST 2026
[2026-06-27 08:35:34,101.101 INFO    ] ================================================
[2026-06-27 08:35:34,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:35:34
[2026-06-27 08:35:34,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:35:34,902.902 INFO    ] Initializing speech engine...
[2026-06-27 08:35:34,907.907 INFO    ] 2026-06-27 08:35:34
[2026-06-27 08:35:35,111.111 INFO    ] 2026-06-27 08:35:35
[2026-06-27 08:35:35,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:35:35,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:35:35,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:35:35,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:35:35,536.536 INFO    ] time= 27/06/2026 08:35:35
[2026-06-27 08:35:35,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:35:35,564.564 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:35:35,631.631 INFO    ] No existing commands found in stream
[2026-06-27 08:35:40,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:35:40,648.648 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-27 08:35:41,585.585 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 08:35:41,587.587 INFO    ] Checking for system updates...
[2026-06-27 08:35:41,607.607 INFO    ] 200
[2026-06-27 08:35:41,609.609 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:35:41,641.641 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:35:41,643.643 INFO    ] No update needed
[2026-06-27 08:35:41,644.644 INFO    ] Checking for camera pi updates...
[2026-06-27 08:35:41,664.664 INFO    ] 200
[2026-06-27 08:35:41,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:35:41,690.690 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:35:41,726.726 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:35:41,728.728 INFO    ] No camera update needed
[2026-06-27 08:35:41,729.729 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:35:41,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:35:41,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:35:41,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:35:43,775.775 INFO    ] ================================================
[2026-06-27 08:35:43,789.789 INFO    ] Launching Daemon at Sat Jun 27 08:35:43 IST 2026
[2026-06-27 08:35:43,801.801 INFO    ] ================================================
[2026-06-27 08:35:44,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:35:44
[2026-06-27 08:35:44,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:35:44,601.601 INFO    ] Initializing speech engine...
[2026-06-27 08:35:44,613.613 INFO    ] 2026-06-27 08:35:44
[2026-06-27 08:35:44,820.820 INFO    ] 2026-06-27 08:35:44
[2026-06-27 08:35:44,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:35:45,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:35:45,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:35:45,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:35:45,237.237 INFO    ] time= 27/06/2026 08:35:45
[2026-06-27 08:35:45,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:35:45,270.270 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:35:45,337.337 INFO    ] No existing commands found in stream
[2026-06-27 08:35:50,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:35:50,364.364 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-27 08:35:51,611.611 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 08:35:51,612.612 INFO    ] Checking for system updates...
[2026-06-27 08:35:51,634.634 INFO    ] 200
[2026-06-27 08:35:51,636.636 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:35:51,668.668 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:35:51,669.669 INFO    ] No update needed
[2026-06-27 08:35:51,671.671 INFO    ] Checking for camera pi updates...
[2026-06-27 08:35:51,690.690 INFO    ] 200
[2026-06-27 08:35:51,691.691 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:35:51,718.718 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:35:51,757.757 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:35:51,758.758 INFO    ] No camera update needed
[2026-06-27 08:35:51,759.759 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:35:51,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:35:51,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:35:51,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:35:53,806.806 INFO    ] ================================================
[2026-06-27 08:35:53,821.821 INFO    ] Launching Daemon at Sat Jun 27 08:35:53 IST 2026
[2026-06-27 08:35:53,833.833 INFO    ] ================================================
[2026-06-27 08:35:54,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:35:54
[2026-06-27 08:35:54,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:35:54,637.637 INFO    ] Initializing speech engine...
[2026-06-27 08:35:54,641.641 INFO    ] 2026-06-27 08:35:54
[2026-06-27 08:35:54,872.872 INFO    ] 2026-06-27 08:35:54
[2026-06-27 08:35:54,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:35:55,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:35:55,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:35:55,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:35:55,249.249 INFO    ] time= 27/06/2026 08:35:55
[2026-06-27 08:35:55,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:35:55,355.355 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:35:55,433.433 INFO    ] No existing commands found in stream
[2026-06-27 08:36:00,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:36:00,445.445 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-27 08:36:02,211.211 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:36:02,213.213 INFO    ] Checking for system updates...
[2026-06-27 08:36:02,234.234 INFO    ] 200
[2026-06-27 08:36:02,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:36:02,274.274 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:36:02,275.275 INFO    ] No update needed
[2026-06-27 08:36:02,277.277 INFO    ] Checking for camera pi updates...
[2026-06-27 08:36:02,296.296 INFO    ] 200
[2026-06-27 08:36:02,297.297 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:36:02,322.322 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:36:02,348.348 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:36:02,350.350 INFO    ] No camera update needed
[2026-06-27 08:36:02,351.351 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:36:02,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:36:02,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:36:02,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:36:04,398.398 INFO    ] ================================================
[2026-06-27 08:36:04,414.414 INFO    ] Launching Daemon at Sat Jun 27 08:36:04 IST 2026
[2026-06-27 08:36:04,424.424 INFO    ] ================================================
[2026-06-27 08:36:04,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:36:04
[2026-06-27 08:36:05,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:36:05,206.206 INFO    ] Initializing speech engine...
[2026-06-27 08:36:05,215.215 INFO    ] 2026-06-27 08:36:05
[2026-06-27 08:36:05,431.431 INFO    ] 2026-06-27 08:36:05
[2026-06-27 08:36:05,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:36:05,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:36:05,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:36:05,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:36:05,863.863 INFO    ] time= 27/06/2026 08:36:05
[2026-06-27 08:36:05,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:36:05,917.917 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:36:05,991.991 INFO    ] No existing commands found in stream
[2026-06-27 08:36:11,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:36:11,004.004 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-27 08:36:12,358.358 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 08:36:12,360.360 INFO    ] Checking for system updates...
[2026-06-27 08:36:12,382.382 INFO    ] 200
[2026-06-27 08:36:12,383.383 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:36:12,418.418 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:36:12,419.419 INFO    ] No update needed
[2026-06-27 08:36:12,421.421 INFO    ] Checking for camera pi updates...
[2026-06-27 08:36:12,443.443 INFO    ] 200
[2026-06-27 08:36:12,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:36:12,470.470 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:36:12,512.512 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:36:12,513.513 INFO    ] No camera update needed
[2026-06-27 08:36:12,515.515 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:36:12,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:36:12,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:36:12,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:36:14,563.563 INFO    ] ================================================
[2026-06-27 08:36:14,579.579 INFO    ] Launching Daemon at Sat Jun 27 08:36:14 IST 2026
[2026-06-27 08:36:14,590.590 INFO    ] ================================================
[2026-06-27 08:36:14,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:36:14
[2026-06-27 08:36:15,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:36:15,438.438 INFO    ] Initializing speech engine...
[2026-06-27 08:36:15,443.443 INFO    ] 2026-06-27 08:36:15
[2026-06-27 08:36:15,649.649 INFO    ] 2026-06-27 08:36:15
[2026-06-27 08:36:15,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:36:15,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:36:15,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:36:16,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:36:16,100.100 INFO    ] time= 27/06/2026 08:36:16
[2026-06-27 08:36:16,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:36:16,108.108 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:36:16,175.175 INFO    ] No existing commands found in stream
[2026-06-27 08:36:21,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:36:21,189.189 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-27 08:36:24,216.216 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 08:36:24,217.217 INFO    ] Checking for system updates...
[2026-06-27 08:36:24,239.239 INFO    ] 200
[2026-06-27 08:36:24,241.241 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:36:24,272.272 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:36:24,273.273 INFO    ] No update needed
[2026-06-27 08:36:24,275.275 INFO    ] Checking for camera pi updates...
[2026-06-27 08:36:24,296.296 INFO    ] 200
[2026-06-27 08:36:24,297.297 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:36:24,321.321 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:36:24,370.370 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:36:24,371.371 INFO    ] No camera update needed
[2026-06-27 08:36:24,372.372 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:36:24,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:36:24,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:36:24,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:36:26,419.419 INFO    ] ================================================
[2026-06-27 08:36:26,435.435 INFO    ] Launching Daemon at Sat Jun 27 08:36:26 IST 2026
[2026-06-27 08:36:26,445.445 INFO    ] ================================================
[2026-06-27 08:36:26,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:36:26
[2026-06-27 08:36:27,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:36:27,306.306 INFO    ] Initializing speech engine...
[2026-06-27 08:36:27,317.317 INFO    ] 2026-06-27 08:36:27
[2026-06-27 08:36:27,525.525 INFO    ] 2026-06-27 08:36:27
[2026-06-27 08:36:27,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:36:27,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:36:27,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:36:27,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:36:27,956.956 INFO    ] time= 27/06/2026 08:36:27
[2026-06-27 08:36:27,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:36:27,985.985 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:36:28,053.053 INFO    ] No existing commands found in stream
[2026-06-27 08:36:33,063.063 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:36:33,066.066 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-27 08:36:35,301.301 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 08:36:35,303.303 INFO    ] Checking for system updates...
[2026-06-27 08:36:35,337.337 INFO    ] 200
[2026-06-27 08:36:35,339.339 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:36:35,372.372 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:36:35,374.374 INFO    ] No update needed
[2026-06-27 08:36:35,376.376 INFO    ] Checking for camera pi updates...
[2026-06-27 08:36:35,399.399 INFO    ] 200
[2026-06-27 08:36:35,400.400 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:36:35,429.429 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:36:35,469.469 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:36:35,471.471 INFO    ] No camera update needed
[2026-06-27 08:36:35,472.472 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:36:35,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:36:35,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:36:35,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:36:37,520.520 INFO    ] ================================================
[2026-06-27 08:36:37,536.536 INFO    ] Launching Daemon at Sat Jun 27 08:36:37 IST 2026
[2026-06-27 08:36:37,547.547 INFO    ] ================================================
[2026-06-27 08:36:37,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:36:37
[2026-06-27 08:36:38,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:36:38,381.381 INFO    ] Initializing speech engine...
[2026-06-27 08:36:38,392.392 INFO    ] 2026-06-27 08:36:38
[2026-06-27 08:36:38,602.602 INFO    ] 2026-06-27 08:36:38
[2026-06-27 08:36:38,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:36:38,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:36:38,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:36:38,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:36:39,030.030 INFO    ] time= 27/06/2026 08:36:38
[2026-06-27 08:36:39,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:36:39,059.059 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:36:39,127.127 INFO    ] No existing commands found in stream
[2026-06-27 08:36:44,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:36:44,140.140 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-27 08:36:46,561.561 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 08:36:46,563.563 INFO    ] Checking for system updates...
[2026-06-27 08:36:46,585.585 INFO    ] 200
[2026-06-27 08:36:46,587.587 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:36:46,618.618 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:36:46,619.619 INFO    ] No update needed
[2026-06-27 08:36:46,621.621 INFO    ] Checking for camera pi updates...
[2026-06-27 08:36:46,642.642 INFO    ] 200
[2026-06-27 08:36:46,643.643 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:36:46,667.667 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:36:46,708.708 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:36:46,709.709 INFO    ] No camera update needed
[2026-06-27 08:36:46,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:36:46,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:36:46,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:36:46,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:36:48,757.757 INFO    ] ================================================
[2026-06-27 08:36:48,773.773 INFO    ] Launching Daemon at Sat Jun 27 08:36:48 IST 2026
[2026-06-27 08:36:48,784.784 INFO    ] ================================================
[2026-06-27 08:36:49,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:36:49
[2026-06-27 08:36:49,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:36:49,631.631 INFO    ] Initializing speech engine...
[2026-06-27 08:36:49,637.637 INFO    ] 2026-06-27 08:36:49
[2026-06-27 08:36:49,848.848 INFO    ] 2026-06-27 08:36:49
[2026-06-27 08:36:49,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:36:50,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:36:50,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:36:50,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:36:50,298.298 INFO    ] time= 27/06/2026 08:36:50
[2026-06-27 08:36:50,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:36:50,306.306 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:36:50,374.374 INFO    ] No existing commands found in stream
[2026-06-27 08:36:55,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:36:55,402.402 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-27 08:36:58,437.437 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 08:36:58,439.439 INFO    ] Checking for system updates...
[2026-06-27 08:36:58,460.460 INFO    ] 200
[2026-06-27 08:36:58,461.461 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:36:58,493.493 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:36:58,494.494 INFO    ] No update needed
[2026-06-27 08:36:58,496.496 INFO    ] Checking for camera pi updates...
[2026-06-27 08:36:58,515.515 INFO    ] 200
[2026-06-27 08:36:58,517.517 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:36:58,542.542 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:36:58,681.681 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:36:58,682.682 INFO    ] No camera update needed
[2026-06-27 08:36:58,683.683 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:36:58,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:36:58,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:36:58,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:37:00,731.731 INFO    ] ================================================
[2026-06-27 08:37:00,747.747 INFO    ] Launching Daemon at Sat Jun 27 08:37:00 IST 2026
[2026-06-27 08:37:00,758.758 INFO    ] ================================================
[2026-06-27 08:37:01,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:37:01
[2026-06-27 08:37:01,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:37:01,717.717 INFO    ] Initializing speech engine...
[2026-06-27 08:37:01,722.722 INFO    ] 2026-06-27 08:37:01
[2026-06-27 08:37:01,968.968 INFO    ] 2026-06-27 08:37:01
[2026-06-27 08:37:02,004.004 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:37:02,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:37:02,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:37:02,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:37:02,453.453 INFO    ] time= 27/06/2026 08:37:02
[2026-06-27 08:37:02,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:37:02,507.507 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:37:02,580.580 INFO    ] No existing commands found in stream
[2026-06-27 08:37:07,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:37:07,594.594 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-27 08:37:11,467.467 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:37:11,468.468 INFO    ] Checking for system updates...
[2026-06-27 08:37:11,489.489 INFO    ] 200
[2026-06-27 08:37:11,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:37:11,521.521 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:37:11,522.522 INFO    ] No update needed
[2026-06-27 08:37:11,524.524 INFO    ] Checking for camera pi updates...
[2026-06-27 08:37:11,543.543 INFO    ] 200
[2026-06-27 08:37:11,545.545 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:37:11,568.568 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:37:11,618.618 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:37:11,619.619 INFO    ] No camera update needed
[2026-06-27 08:37:11,620.620 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:37:11,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:37:11,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:37:11,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:37:13,667.667 INFO    ] ================================================
[2026-06-27 08:37:13,683.683 INFO    ] Launching Daemon at Sat Jun 27 08:37:13 IST 2026
[2026-06-27 08:37:13,694.694 INFO    ] ================================================
[2026-06-27 08:37:14,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:37:14
[2026-06-27 08:37:14,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:37:14,543.543 INFO    ] Initializing speech engine...
[2026-06-27 08:37:14,548.548 INFO    ] 2026-06-27 08:37:14
[2026-06-27 08:37:14,760.760 INFO    ] 2026-06-27 08:37:14
[2026-06-27 08:37:14,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:37:14,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:37:14,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:37:15,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:37:15,188.188 INFO    ] time= 27/06/2026 08:37:15
[2026-06-27 08:37:15,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:37:15,217.217 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:37:15,285.285 INFO    ] No existing commands found in stream
[2026-06-27 08:37:20,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:37:20,303.303 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-27 08:37:21,343.343 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:37:21,344.344 INFO    ] Checking for system updates...
[2026-06-27 08:37:21,366.366 INFO    ] 200
[2026-06-27 08:37:21,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:37:21,398.398 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:37:21,400.400 INFO    ] No update needed
[2026-06-27 08:37:21,401.401 INFO    ] Checking for camera pi updates...
[2026-06-27 08:37:21,421.421 INFO    ] 200
[2026-06-27 08:37:21,423.423 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:37:21,447.447 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:37:21,487.487 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:37:21,488.488 INFO    ] No camera update needed
[2026-06-27 08:37:21,490.490 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:37:21,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:37:21,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:37:21,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:37:23,536.536 INFO    ] ================================================
[2026-06-27 08:37:23,551.551 INFO    ] Launching Daemon at Sat Jun 27 08:37:23 IST 2026
[2026-06-27 08:37:23,561.561 INFO    ] ================================================
[2026-06-27 08:37:23,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:37:23
[2026-06-27 08:37:24,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:37:24,352.352 INFO    ] Initializing speech engine...
[2026-06-27 08:37:24,358.358 INFO    ] 2026-06-27 08:37:24
[2026-06-27 08:37:24,575.575 INFO    ] 2026-06-27 08:37:24
[2026-06-27 08:37:24,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:37:25,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:37:25,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:37:25,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:37:25,954.954 INFO    ] time= 27/06/2026 08:37:25
[2026-06-27 08:37:25,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:37:25,963.963 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:37:26,059.059 INFO    ] No existing commands found in stream
[2026-06-27 08:37:31,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:37:31,074.074 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-27 08:37:32,970.970 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:37:32,972.972 INFO    ] Checking for system updates...
[2026-06-27 08:37:32,994.994 INFO    ] 200
[2026-06-27 08:37:32,996.996 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:37:33,029.029 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:37:33,030.030 INFO    ] No update needed
[2026-06-27 08:37:33,032.032 INFO    ] Checking for camera pi updates...
[2026-06-27 08:37:33,052.052 INFO    ] 200
[2026-06-27 08:37:33,053.053 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:37:33,079.079 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:37:33,124.124 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:37:33,126.126 INFO    ] No camera update needed
[2026-06-27 08:37:33,127.127 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:37:33,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:37:33,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:37:33,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:37:35,172.172 INFO    ] ================================================
[2026-06-27 08:37:35,187.187 INFO    ] Launching Daemon at Sat Jun 27 08:37:35 IST 2026
[2026-06-27 08:37:35,198.198 INFO    ] ================================================
[2026-06-27 08:37:35,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:37:35
[2026-06-27 08:37:35,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:37:35,995.995 INFO    ] Initializing speech engine...
[2026-06-27 08:37:36,002.002 INFO    ] 2026-06-27 08:37:35
[2026-06-27 08:37:36,218.218 INFO    ] 2026-06-27 08:37:36
[2026-06-27 08:37:36,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:37:36,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:37:36,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:37:36,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:37:36,623.623 INFO    ] time= 27/06/2026 08:37:36
[2026-06-27 08:37:36,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:37:36,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:37:36,739.739 INFO    ] No existing commands found in stream
[2026-06-27 08:37:41,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:37:41,753.753 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-27 08:37:45,100.100 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 08:37:45,101.101 INFO    ] Checking for system updates...
[2026-06-27 08:37:45,122.122 INFO    ] 200
[2026-06-27 08:37:45,123.123 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:37:45,154.154 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:37:45,155.155 INFO    ] No update needed
[2026-06-27 08:37:45,156.156 INFO    ] Checking for camera pi updates...
[2026-06-27 08:37:45,177.177 INFO    ] 200
[2026-06-27 08:37:45,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:37:45,202.202 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:37:45,244.244 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:37:45,246.246 INFO    ] No camera update needed
[2026-06-27 08:37:45,247.247 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:37:45,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:37:45,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:37:45,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:37:47,295.295 INFO    ] ================================================
[2026-06-27 08:37:47,310.310 INFO    ] Launching Daemon at Sat Jun 27 08:37:47 IST 2026
[2026-06-27 08:37:47,320.320 INFO    ] ================================================
[2026-06-27 08:37:47,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:37:47
[2026-06-27 08:37:48,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:37:48,141.141 INFO    ] Initializing speech engine...
[2026-06-27 08:37:48,151.151 INFO    ] 2026-06-27 08:37:48
[2026-06-27 08:37:48,366.366 INFO    ] 2026-06-27 08:37:48
[2026-06-27 08:37:48,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:37:48,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:37:48,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:37:48,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:37:48,821.821 INFO    ] time= 27/06/2026 08:37:48
[2026-06-27 08:37:48,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:37:48,857.857 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:37:48,957.957 INFO    ] No existing commands found in stream
[2026-06-27 08:37:53,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:37:53,968.968 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-27 08:37:54,545.545 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:37:54,546.546 INFO    ] Checking for system updates...
[2026-06-27 08:37:54,567.567 INFO    ] 200
[2026-06-27 08:37:54,569.569 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:37:54,602.602 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:37:54,604.604 INFO    ] No update needed
[2026-06-27 08:37:54,605.605 INFO    ] Checking for camera pi updates...
[2026-06-27 08:37:54,627.627 INFO    ] 200
[2026-06-27 08:37:54,629.629 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:37:54,652.652 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:37:54,678.678 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:37:54,679.679 INFO    ] No camera update needed
[2026-06-27 08:37:54,681.681 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:37:54,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:37:54,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:37:54,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:37:56,730.730 INFO    ] ================================================
[2026-06-27 08:37:56,745.745 INFO    ] Launching Daemon at Sat Jun 27 08:37:56 IST 2026
[2026-06-27 08:37:56,757.757 INFO    ] ================================================
[2026-06-27 08:37:57,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:37:57
[2026-06-27 08:37:57,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:37:57,562.562 INFO    ] Initializing speech engine...
[2026-06-27 08:37:57,571.571 INFO    ] 2026-06-27 08:37:57
[2026-06-27 08:37:57,785.785 INFO    ] 2026-06-27 08:37:57
[2026-06-27 08:37:57,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:37:57,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:37:58,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:37:58,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:37:58,187.187 INFO    ] time= 27/06/2026 08:37:58
[2026-06-27 08:37:58,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:37:58,225.225 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:37:58,297.297 INFO    ] No existing commands found in stream
[2026-06-27 08:38:03,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:38:03,313.313 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-27 08:38:04,786.786 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 08:38:04,787.787 INFO    ] Checking for system updates...
[2026-06-27 08:38:04,810.810 INFO    ] 200
[2026-06-27 08:38:04,811.811 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:38:04,844.844 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:38:04,845.845 INFO    ] No update needed
[2026-06-27 08:38:04,846.846 INFO    ] Checking for camera pi updates...
[2026-06-27 08:38:04,866.866 INFO    ] 200
[2026-06-27 08:38:04,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:38:04,890.890 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:38:04,924.924 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:38:04,925.925 INFO    ] No camera update needed
[2026-06-27 08:38:04,927.927 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:38:04,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:38:04,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:38:04,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:38:06,972.972 INFO    ] ================================================
[2026-06-27 08:38:06,988.988 INFO    ] Launching Daemon at Sat Jun 27 08:38:06 IST 2026
[2026-06-27 08:38:07,999.999 INFO    ] ================================================
[2026-06-27 08:38:07,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:38:07
[2026-06-27 08:38:07,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:38:07,824.824 INFO    ] Initializing speech engine...
[2026-06-27 08:38:07,829.829 INFO    ] 2026-06-27 08:38:07
[2026-06-27 08:38:08,047.047 INFO    ] 2026-06-27 08:38:08
[2026-06-27 08:38:08,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:38:08,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:38:08,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:38:08,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:38:08,493.493 INFO    ] time= 27/06/2026 08:38:08
[2026-06-27 08:38:08,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:38:08,534.534 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:38:08,605.605 INFO    ] No existing commands found in stream
[2026-06-27 08:38:13,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:38:13,618.618 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-27 08:38:15,481.481 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 08:38:15,483.483 INFO    ] Checking for system updates...
[2026-06-27 08:38:15,504.504 INFO    ] 200
[2026-06-27 08:38:15,505.505 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:38:15,538.538 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:38:15,540.540 INFO    ] No update needed
[2026-06-27 08:38:15,541.541 INFO    ] Checking for camera pi updates...
[2026-06-27 08:38:15,564.564 INFO    ] 200
[2026-06-27 08:38:15,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:38:15,589.589 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:38:15,637.637 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:38:15,638.638 INFO    ] No camera update needed
[2026-06-27 08:38:15,640.640 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:38:15,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:38:15,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:38:15,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:38:17,686.686 INFO    ] ================================================
[2026-06-27 08:38:17,701.701 INFO    ] Launching Daemon at Sat Jun 27 08:38:17 IST 2026
[2026-06-27 08:38:17,711.711 INFO    ] ================================================
[2026-06-27 08:38:18,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:38:18
[2026-06-27 08:38:18,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:38:18,526.526 INFO    ] Initializing speech engine...
[2026-06-27 08:38:18,531.531 INFO    ] 2026-06-27 08:38:18
[2026-06-27 08:38:18,744.744 INFO    ] 2026-06-27 08:38:18
[2026-06-27 08:38:18,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:38:18,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:38:19,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:38:19,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:38:19,190.190 INFO    ] time= 27/06/2026 08:38:19
[2026-06-27 08:38:19,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:38:19,289.289 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:38:19,382.382 INFO    ] No existing commands found in stream
[2026-06-27 08:38:24,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:38:24,395.395 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-27 08:38:26,115.115 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 08:38:26,116.116 INFO    ] Checking for system updates...
[2026-06-27 08:38:26,137.137 INFO    ] 200
[2026-06-27 08:38:26,138.138 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:38:26,168.168 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:38:26,170.170 INFO    ] No update needed
[2026-06-27 08:38:26,171.171 INFO    ] Checking for camera pi updates...
[2026-06-27 08:38:26,191.191 INFO    ] 200
[2026-06-27 08:38:26,193.193 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:38:26,216.216 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:38:26,254.254 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:38:26,255.255 INFO    ] No camera update needed
[2026-06-27 08:38:26,256.256 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:38:26,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:38:26,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:38:26,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:38:28,302.302 INFO    ] ================================================
[2026-06-27 08:38:28,318.318 INFO    ] Launching Daemon at Sat Jun 27 08:38:28 IST 2026
[2026-06-27 08:38:28,329.329 INFO    ] ================================================
[2026-06-27 08:38:28,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:38:28
[2026-06-27 08:38:28,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:38:29,126.126 INFO    ] Initializing speech engine...
[2026-06-27 08:38:29,139.139 INFO    ] 2026-06-27 08:38:29
[2026-06-27 08:38:29,347.347 INFO    ] 2026-06-27 08:38:29
[2026-06-27 08:38:29,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:38:29,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:38:29,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:38:29,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:38:29,763.763 INFO    ] time= 27/06/2026 08:38:29
[2026-06-27 08:38:29,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:38:29,795.795 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:38:29,886.886 INFO    ] No existing commands found in stream
[2026-06-27 08:38:34,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:38:34,903.903 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-27 08:38:37,035.035 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 08:38:37,036.036 INFO    ] Checking for system updates...
[2026-06-27 08:38:37,057.057 INFO    ] 200
[2026-06-27 08:38:37,058.058 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:38:37,088.088 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:38:37,090.090 INFO    ] No update needed
[2026-06-27 08:38:37,091.091 INFO    ] Checking for camera pi updates...
[2026-06-27 08:38:37,112.112 INFO    ] 200
[2026-06-27 08:38:37,113.113 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:38:37,137.137 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:38:37,178.178 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:38:37,179.179 INFO    ] No camera update needed
[2026-06-27 08:38:37,180.180 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:38:37,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:38:37,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:38:37,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:38:39,227.227 INFO    ] ================================================
[2026-06-27 08:38:39,242.242 INFO    ] Launching Daemon at Sat Jun 27 08:38:39 IST 2026
[2026-06-27 08:38:39,254.254 INFO    ] ================================================
[2026-06-27 08:38:39,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:38:39
[2026-06-27 08:38:39,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:38:40,078.078 INFO    ] Initializing speech engine...
[2026-06-27 08:38:40,086.086 INFO    ] 2026-06-27 08:38:40
[2026-06-27 08:38:40,299.299 INFO    ] 2026-06-27 08:38:40
[2026-06-27 08:38:40,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:38:40,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:38:40,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:38:40,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:38:40,726.726 INFO    ] time= 27/06/2026 08:38:40
[2026-06-27 08:38:40,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:38:40,748.748 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:38:40,813.813 INFO    ] No existing commands found in stream
[2026-06-27 08:38:45,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:38:45,832.832 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-27 08:38:48,502.502 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 08:38:48,503.503 INFO    ] Checking for system updates...
[2026-06-27 08:38:48,525.525 INFO    ] 200
[2026-06-27 08:38:48,527.527 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:38:48,559.559 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:38:48,561.561 INFO    ] No update needed
[2026-06-27 08:38:48,562.562 INFO    ] Checking for camera pi updates...
[2026-06-27 08:38:48,581.581 INFO    ] 200
[2026-06-27 08:38:48,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:38:48,608.608 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:38:48,646.646 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:38:48,648.648 INFO    ] No camera update needed
[2026-06-27 08:38:48,649.649 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:38:48,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:38:48,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:38:48,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:38:50,697.697 INFO    ] ================================================
[2026-06-27 08:38:50,712.712 INFO    ] Launching Daemon at Sat Jun 27 08:38:50 IST 2026
[2026-06-27 08:38:50,723.723 INFO    ] ================================================
[2026-06-27 08:38:51,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:38:51
[2026-06-27 08:38:51,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:38:51,505.505 INFO    ] Initializing speech engine...
[2026-06-27 08:38:51,509.509 INFO    ] 2026-06-27 08:38:51
[2026-06-27 08:38:51,729.729 INFO    ] 2026-06-27 08:38:51
[2026-06-27 08:38:51,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:38:51,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:38:51,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:38:52,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:38:52,146.146 INFO    ] time= 27/06/2026 08:38:52
[2026-06-27 08:38:52,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:38:52,181.181 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:38:52,253.253 INFO    ] No existing commands found in stream
[2026-06-27 08:38:57,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:38:57,265.265 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-27 08:38:58,449.449 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 08:38:58,450.450 INFO    ] Checking for system updates...
[2026-06-27 08:38:58,472.472 INFO    ] 200
[2026-06-27 08:38:58,474.474 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:38:58,504.504 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:38:58,506.506 INFO    ] No update needed
[2026-06-27 08:38:58,507.507 INFO    ] Checking for camera pi updates...
[2026-06-27 08:38:58,527.527 INFO    ] 200
[2026-06-27 08:38:58,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:38:58,554.554 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:38:58,594.594 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:38:58,596.596 INFO    ] No camera update needed
[2026-06-27 08:38:58,597.597 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:38:58,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:38:58,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:38:58,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:39:00,651.651 INFO    ] ================================================
[2026-06-27 08:39:00,666.666 INFO    ] Launching Daemon at Sat Jun 27 08:39:00 IST 2026
[2026-06-27 08:39:00,677.677 INFO    ] ================================================
[2026-06-27 08:39:01,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:39:01
[2026-06-27 08:39:01,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:39:01,453.453 INFO    ] Initializing speech engine...
[2026-06-27 08:39:01,458.458 INFO    ] 2026-06-27 08:39:01
[2026-06-27 08:39:01,676.676 INFO    ] 2026-06-27 08:39:01
[2026-06-27 08:39:01,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:39:01,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:39:01,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:39:02,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:39:02,079.079 INFO    ] time= 27/06/2026 08:39:02
[2026-06-27 08:39:02,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:39:02,094.094 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:39:02,152.152 INFO    ] No existing commands found in stream
[2026-06-27 08:39:07,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:39:07,163.163 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-27 08:39:11,539.539 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 08:39:11,541.541 INFO    ] Checking for system updates...
[2026-06-27 08:39:11,562.562 INFO    ] 200
[2026-06-27 08:39:11,563.563 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:39:11,593.593 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:39:11,595.595 INFO    ] No update needed
[2026-06-27 08:39:11,596.596 INFO    ] Checking for camera pi updates...
[2026-06-27 08:39:11,617.617 INFO    ] 200
[2026-06-27 08:39:11,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:39:11,643.643 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:39:11,680.680 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:39:11,681.681 INFO    ] No camera update needed
[2026-06-27 08:39:11,682.682 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:39:11,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:39:11,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:39:11,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:39:13,730.730 INFO    ] ================================================
[2026-06-27 08:39:13,745.745 INFO    ] Launching Daemon at Sat Jun 27 08:39:13 IST 2026
[2026-06-27 08:39:13,757.757 INFO    ] ================================================
[2026-06-27 08:39:14,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:39:14
[2026-06-27 08:39:14,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:39:14,616.616 INFO    ] Initializing speech engine...
[2026-06-27 08:39:14,626.626 INFO    ] 2026-06-27 08:39:14
[2026-06-27 08:39:14,836.836 INFO    ] 2026-06-27 08:39:14
[2026-06-27 08:39:14,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:39:15,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:39:15,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:39:15,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:39:15,242.242 INFO    ] time= 27/06/2026 08:39:15
[2026-06-27 08:39:15,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:39:15,287.287 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:39:15,355.355 INFO    ] No existing commands found in stream
[2026-06-27 08:39:20,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:39:20,373.373 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-27 08:39:23,895.895 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 08:39:23,896.896 INFO    ] Checking for system updates...
[2026-06-27 08:39:23,918.918 INFO    ] 200
[2026-06-27 08:39:23,919.919 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:39:23,952.952 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:39:23,953.953 INFO    ] No update needed
[2026-06-27 08:39:23,955.955 INFO    ] Checking for camera pi updates...
[2026-06-27 08:39:23,974.974 INFO    ] 200
[2026-06-27 08:39:23,976.976 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:39:23,999.999 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:39:24,040.040 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:39:24,041.041 INFO    ] No camera update needed
[2026-06-27 08:39:24,042.042 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:39:24,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:39:24,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:39:24,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:39:26,096.096 INFO    ] ================================================
[2026-06-27 08:39:26,112.112 INFO    ] Launching Daemon at Sat Jun 27 08:39:26 IST 2026
[2026-06-27 08:39:26,122.122 INFO    ] ================================================
[2026-06-27 08:39:26,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:39:26
[2026-06-27 08:39:26,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:39:26,948.948 INFO    ] Initializing speech engine...
[2026-06-27 08:39:26,954.954 INFO    ] 2026-06-27 08:39:26
[2026-06-27 08:39:27,158.158 INFO    ] 2026-06-27 08:39:27
[2026-06-27 08:39:27,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:39:27,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:39:27,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:39:27,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:39:27,573.573 INFO    ] time= 27/06/2026 08:39:27
[2026-06-27 08:39:27,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:39:27,606.606 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:39:27,673.673 INFO    ] No existing commands found in stream
[2026-06-27 08:39:32,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:39:32,683.683 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-27 08:39:36,356.356 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:39:36,357.357 INFO    ] Checking for system updates...
[2026-06-27 08:39:36,378.378 INFO    ] 200
[2026-06-27 08:39:36,380.380 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:39:36,411.411 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:39:36,412.412 INFO    ] No update needed
[2026-06-27 08:39:36,413.413 INFO    ] Checking for camera pi updates...
[2026-06-27 08:39:36,435.435 INFO    ] 200
[2026-06-27 08:39:36,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:39:36,462.462 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:39:36,512.512 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:39:36,513.513 INFO    ] No camera update needed
[2026-06-27 08:39:36,515.515 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:39:36,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:39:36,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:39:36,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:39:38,562.562 INFO    ] ================================================
[2026-06-27 08:39:38,577.577 INFO    ] Launching Daemon at Sat Jun 27 08:39:38 IST 2026
[2026-06-27 08:39:38,588.588 INFO    ] ================================================
[2026-06-27 08:39:38,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:39:38
[2026-06-27 08:39:39,252.252 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:39:39,387.387 INFO    ] Initializing speech engine...
[2026-06-27 08:39:39,390.390 INFO    ] 2026-06-27 08:39:39
[2026-06-27 08:39:39,621.621 INFO    ] 2026-06-27 08:39:39
[2026-06-27 08:39:39,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:39:39,853.853 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:39:39,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:39:40,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:39:40,062.062 INFO    ] time= 27/06/2026 08:39:40
[2026-06-27 08:39:40,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:39:40,105.105 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:39:40,181.181 INFO    ] No existing commands found in stream
[2026-06-27 08:39:45,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:39:45,194.194 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-27 08:39:48,815.815 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:39:48,817.817 INFO    ] Checking for system updates...
[2026-06-27 08:39:48,837.837 INFO    ] 200
[2026-06-27 08:39:48,839.839 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:39:48,871.871 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:39:48,873.873 INFO    ] No update needed
[2026-06-27 08:39:48,874.874 INFO    ] Checking for camera pi updates...
[2026-06-27 08:39:48,896.896 INFO    ] 200
[2026-06-27 08:39:48,897.897 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:39:48,920.920 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:39:48,962.962 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:39:48,963.963 INFO    ] No camera update needed
[2026-06-27 08:39:48,964.964 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:39:48,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:39:48,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:39:48,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:39:51,010.010 INFO    ] ================================================
[2026-06-27 08:39:51,026.026 INFO    ] Launching Daemon at Sat Jun 27 08:39:51 IST 2026
[2026-06-27 08:39:51,036.036 INFO    ] ================================================
[2026-06-27 08:39:51,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:39:51
[2026-06-27 08:39:51,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:39:51,833.833 INFO    ] Initializing speech engine...
[2026-06-27 08:39:51,838.838 INFO    ] 2026-06-27 08:39:51
[2026-06-27 08:39:52,043.043 INFO    ] 2026-06-27 08:39:52
[2026-06-27 08:39:52,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:39:52,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:39:52,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:39:52,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:39:52,488.488 INFO    ] time= 27/06/2026 08:39:52
[2026-06-27 08:39:52,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:39:52,520.520 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:39:52,592.592 INFO    ] No existing commands found in stream
[2026-06-27 08:39:57,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:39:57,604.604 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-27 08:39:59,958.958 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:39:59,960.960 INFO    ] Checking for system updates...
[2026-06-27 08:39:59,981.981 INFO    ] 200
[2026-06-27 08:39:59,983.983 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:40:00,013.013 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:40:00,014.014 INFO    ] No update needed
[2026-06-27 08:40:00,016.016 INFO    ] Checking for camera pi updates...
[2026-06-27 08:40:00,035.035 INFO    ] 200
[2026-06-27 08:40:00,037.037 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:40:00,060.060 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:40:00,101.101 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:40:00,102.102 INFO    ] No camera update needed
[2026-06-27 08:40:00,104.104 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:40:00,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:40:00,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:40:00,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:40:02,155.155 INFO    ] ================================================
[2026-06-27 08:40:02,176.176 INFO    ] Launching Daemon at Sat Jun 27 08:40:02 IST 2026
[2026-06-27 08:40:02,186.186 INFO    ] ================================================
[2026-06-27 08:40:02,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:40:02
[2026-06-27 08:40:02,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:40:02,998.998 INFO    ] Initializing speech engine...
[2026-06-27 08:40:03,002.002 INFO    ] 2026-06-27 08:40:02
[2026-06-27 08:40:03,216.216 INFO    ] 2026-06-27 08:40:03
[2026-06-27 08:40:03,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:40:03,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:40:03,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:40:03,582.582 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:40:03,625.625 INFO    ] time= 27/06/2026 08:40:03
[2026-06-27 08:40:03,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:40:03,709.709 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:40:03,820.820 INFO    ] No existing commands found in stream
[2026-06-27 08:40:08,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:40:08,832.832 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-27 08:40:11,529.529 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 08:40:11,531.531 INFO    ] Checking for system updates...
[2026-06-27 08:40:11,551.551 INFO    ] 200
[2026-06-27 08:40:11,553.553 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:40:11,585.585 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:40:11,587.587 INFO    ] No update needed
[2026-06-27 08:40:11,588.588 INFO    ] Checking for camera pi updates...
[2026-06-27 08:40:11,608.608 INFO    ] 200
[2026-06-27 08:40:11,610.610 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:40:11,633.633 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:40:11,670.670 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:40:11,672.672 INFO    ] No camera update needed
[2026-06-27 08:40:11,673.673 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:40:11,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:40:11,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:40:11,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:40:13,721.721 INFO    ] ================================================
[2026-06-27 08:40:13,736.736 INFO    ] Launching Daemon at Sat Jun 27 08:40:13 IST 2026
[2026-06-27 08:40:13,747.747 INFO    ] ================================================
[2026-06-27 08:40:14,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:40:14
[2026-06-27 08:40:14,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:40:14,569.569 INFO    ] Initializing speech engine...
[2026-06-27 08:40:14,578.578 INFO    ] 2026-06-27 08:40:14
[2026-06-27 08:40:14,793.793 INFO    ] 2026-06-27 08:40:14
[2026-06-27 08:40:14,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:40:14,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:40:15,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:40:15,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:40:15,226.226 INFO    ] time= 27/06/2026 08:40:15
[2026-06-27 08:40:15,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:40:15,271.271 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:40:15,346.346 INFO    ] No existing commands found in stream
[2026-06-27 08:40:20,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:40:20,360.360 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-27 08:40:20,841.841 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:40:20,843.843 INFO    ] Checking for system updates...
[2026-06-27 08:40:20,866.866 INFO    ] 200
[2026-06-27 08:40:20,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:40:20,899.899 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:40:20,900.900 INFO    ] No update needed
[2026-06-27 08:40:20,902.902 INFO    ] Checking for camera pi updates...
[2026-06-27 08:40:20,921.921 INFO    ] 200
[2026-06-27 08:40:20,923.923 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:40:20,947.947 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:40:20,976.976 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:40:20,977.977 INFO    ] No camera update needed
[2026-06-27 08:40:20,979.979 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:40:20,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:40:20,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:40:20,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:40:23,026.026 INFO    ] ================================================
[2026-06-27 08:40:23,041.041 INFO    ] Launching Daemon at Sat Jun 27 08:40:23 IST 2026
[2026-06-27 08:40:23,053.053 INFO    ] ================================================
[2026-06-27 08:40:23,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:40:23
[2026-06-27 08:40:23,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:40:23,861.861 INFO    ] Initializing speech engine...
[2026-06-27 08:40:23,867.867 INFO    ] 2026-06-27 08:40:23
[2026-06-27 08:40:24,073.073 INFO    ] 2026-06-27 08:40:24
[2026-06-27 08:40:24,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:40:24,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:40:24,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:40:24,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:40:24,513.513 INFO    ] time= 27/06/2026 08:40:24
[2026-06-27 08:40:24,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:40:24,522.522 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:40:24,589.589 INFO    ] No existing commands found in stream
[2026-06-27 08:40:29,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:40:29,609.609 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-27 08:40:31,486.486 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 08:40:31,488.488 INFO    ] Checking for system updates...
[2026-06-27 08:40:31,511.511 INFO    ] 200
[2026-06-27 08:40:31,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:40:31,547.547 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:40:31,549.549 INFO    ] No update needed
[2026-06-27 08:40:31,551.551 INFO    ] Checking for camera pi updates...
[2026-06-27 08:40:31,574.574 INFO    ] 200
[2026-06-27 08:40:31,576.576 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:40:31,608.608 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:40:31,657.657 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:40:31,659.659 INFO    ] No camera update needed
[2026-06-27 08:40:31,660.660 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:40:31,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:40:31,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:40:31,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:40:33,710.710 INFO    ] ================================================
[2026-06-27 08:40:33,725.725 INFO    ] Launching Daemon at Sat Jun 27 08:40:33 IST 2026
[2026-06-27 08:40:33,735.735 INFO    ] ================================================
[2026-06-27 08:40:34,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:40:34
[2026-06-27 08:40:34,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:40:34,526.526 INFO    ] Initializing speech engine...
[2026-06-27 08:40:34,529.529 INFO    ] 2026-06-27 08:40:34
[2026-06-27 08:40:34,750.750 INFO    ] 2026-06-27 08:40:34
[2026-06-27 08:40:34,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:40:34,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:40:34,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:40:35,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:40:35,201.201 INFO    ] time= 27/06/2026 08:40:35
[2026-06-27 08:40:35,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:40:35,210.210 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:40:35,277.277 INFO    ] No existing commands found in stream
[2026-06-27 08:40:40,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:40:40,294.294 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-27 08:40:43,947.947 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:40:43,949.949 INFO    ] Checking for system updates...
[2026-06-27 08:40:43,971.971 INFO    ] 200
[2026-06-27 08:40:43,973.973 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:40:44,007.007 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:40:44,008.008 INFO    ] No update needed
[2026-06-27 08:40:44,010.010 INFO    ] Checking for camera pi updates...
[2026-06-27 08:40:44,032.032 INFO    ] 200
[2026-06-27 08:40:44,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:40:44,057.057 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:40:44,098.098 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:40:44,099.099 INFO    ] No camera update needed
[2026-06-27 08:40:44,100.100 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:40:44,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:40:44,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:40:44,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:40:46,147.147 INFO    ] ================================================
[2026-06-27 08:40:46,162.162 INFO    ] Launching Daemon at Sat Jun 27 08:40:46 IST 2026
[2026-06-27 08:40:46,172.172 INFO    ] ================================================
[2026-06-27 08:40:46,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:40:46
[2026-06-27 08:40:46,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:40:47,043.043 INFO    ] Initializing speech engine...
[2026-06-27 08:40:47,049.049 INFO    ] 2026-06-27 08:40:47
[2026-06-27 08:40:47,257.257 INFO    ] 2026-06-27 08:40:47
[2026-06-27 08:40:47,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:40:47,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:40:47,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:40:47,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:40:47,678.678 INFO    ] time= 27/06/2026 08:40:47
[2026-06-27 08:40:47,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:40:47,708.708 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:40:47,775.775 INFO    ] No existing commands found in stream
[2026-06-27 08:40:52,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:40:52,793.793 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-27 08:40:53,220.220 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 08:40:53,221.221 INFO    ] Checking for system updates...
[2026-06-27 08:40:53,242.242 INFO    ] 200
[2026-06-27 08:40:53,244.244 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:40:53,275.275 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:40:53,276.276 INFO    ] No update needed
[2026-06-27 08:40:53,278.278 INFO    ] Checking for camera pi updates...
[2026-06-27 08:40:53,297.297 INFO    ] 200
[2026-06-27 08:40:53,299.299 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:40:53,322.322 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:40:53,369.369 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:40:53,370.370 INFO    ] No camera update needed
[2026-06-27 08:40:53,372.372 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:40:53,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:40:53,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:40:53,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:40:55,419.419 INFO    ] ================================================
[2026-06-27 08:40:55,433.433 INFO    ] Launching Daemon at Sat Jun 27 08:40:55 IST 2026
[2026-06-27 08:40:55,445.445 INFO    ] ================================================
[2026-06-27 08:40:55,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:40:55
[2026-06-27 08:40:56,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:40:56,269.269 INFO    ] Initializing speech engine...
[2026-06-27 08:40:56,279.279 INFO    ] 2026-06-27 08:40:56
[2026-06-27 08:40:56,486.486 INFO    ] 2026-06-27 08:40:56
[2026-06-27 08:40:56,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:40:56,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:40:56,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:40:56,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:40:56,905.905 INFO    ] time= 27/06/2026 08:40:56
[2026-06-27 08:40:56,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:40:56,936.936 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:40:57,031.031 INFO    ] No existing commands found in stream
[2026-06-27 08:41:02,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:41:02,037.037 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-27 08:41:03,827.827 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 08:41:03,829.829 INFO    ] Checking for system updates...
[2026-06-27 08:41:03,849.849 INFO    ] 200
[2026-06-27 08:41:03,851.851 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:41:03,881.881 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:41:03,882.882 INFO    ] No update needed
[2026-06-27 08:41:03,884.884 INFO    ] Checking for camera pi updates...
[2026-06-27 08:41:03,904.904 INFO    ] 200
[2026-06-27 08:41:03,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:41:03,930.930 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:41:04,071.071 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:41:04,073.073 INFO    ] No camera update needed
[2026-06-27 08:41:04,074.074 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:41:04,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:41:04,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:41:04,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:41:06,119.119 INFO    ] ================================================
[2026-06-27 08:41:06,134.134 INFO    ] Launching Daemon at Sat Jun 27 08:41:06 IST 2026
[2026-06-27 08:41:06,144.144 INFO    ] ================================================
[2026-06-27 08:41:06,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:41:06
[2026-06-27 08:41:06,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:41:06,911.911 INFO    ] Initializing speech engine...
[2026-06-27 08:41:06,923.923 INFO    ] 2026-06-27 08:41:06
[2026-06-27 08:41:07,129.129 INFO    ] 2026-06-27 08:41:07
[2026-06-27 08:41:07,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:41:07,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:41:07,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:41:07,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:41:07,548.548 INFO    ] time= 27/06/2026 08:41:07
[2026-06-27 08:41:07,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:41:07,576.576 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:41:07,642.642 INFO    ] No existing commands found in stream
[2026-06-27 08:41:12,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:41:12,654.654 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-27 08:41:15,401.401 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:41:15,403.403 INFO    ] Checking for system updates...
[2026-06-27 08:41:15,425.425 INFO    ] 200
[2026-06-27 08:41:15,426.426 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:41:15,457.457 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:41:15,458.458 INFO    ] No update needed
[2026-06-27 08:41:15,460.460 INFO    ] Checking for camera pi updates...
[2026-06-27 08:41:15,480.480 INFO    ] 200
[2026-06-27 08:41:15,481.481 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:41:15,504.504 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:41:15,548.548 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:41:15,549.549 INFO    ] No camera update needed
[2026-06-27 08:41:15,551.551 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:41:15,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:41:15,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:41:15,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:41:17,598.598 INFO    ] ================================================
[2026-06-27 08:41:17,613.613 INFO    ] Launching Daemon at Sat Jun 27 08:41:17 IST 2026
[2026-06-27 08:41:17,624.624 INFO    ] ================================================
[2026-06-27 08:41:17,971.971 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:41:17
[2026-06-27 08:41:18,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:41:18,450.450 INFO    ] Initializing speech engine...
[2026-06-27 08:41:18,456.456 INFO    ] 2026-06-27 08:41:18
[2026-06-27 08:41:18,663.663 INFO    ] 2026-06-27 08:41:18
[2026-06-27 08:41:18,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:41:18,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:41:18,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:41:19,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:41:19,103.103 INFO    ] time= 27/06/2026 08:41:19
[2026-06-27 08:41:19,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:41:19,111.111 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:41:19,177.177 INFO    ] No existing commands found in stream
[2026-06-27 08:41:24,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:41:24,190.190 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-27 08:41:28,248.248 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:41:28,250.250 INFO    ] Checking for system updates...
[2026-06-27 08:41:28,271.271 INFO    ] 200
[2026-06-27 08:41:28,272.272 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:41:28,303.303 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:41:28,304.304 INFO    ] No update needed
[2026-06-27 08:41:28,306.306 INFO    ] Checking for camera pi updates...
[2026-06-27 08:41:28,326.326 INFO    ] 200
[2026-06-27 08:41:28,327.327 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:41:28,352.352 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:41:28,391.391 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:41:28,392.392 INFO    ] No camera update needed
[2026-06-27 08:41:28,394.394 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:41:28,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:41:28,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:41:28,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:41:30,441.441 INFO    ] ================================================
[2026-06-27 08:41:30,456.456 INFO    ] Launching Daemon at Sat Jun 27 08:41:30 IST 2026
[2026-06-27 08:41:30,467.467 INFO    ] ================================================
[2026-06-27 08:41:30,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:41:30
[2026-06-27 08:41:31,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:41:31,279.279 INFO    ] Initializing speech engine...
[2026-06-27 08:41:31,284.284 INFO    ] 2026-06-27 08:41:31
[2026-06-27 08:41:31,502.502 INFO    ] 2026-06-27 08:41:31
[2026-06-27 08:41:31,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:41:31,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:41:31,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:41:31,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:41:31,963.963 INFO    ] time= 27/06/2026 08:41:31
[2026-06-27 08:41:31,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:41:31,984.984 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:41:32,056.056 INFO    ] No existing commands found in stream
[2026-06-27 08:41:37,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:41:37,069.069 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-27 08:41:39,995.995 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:41:39,997.997 INFO    ] Checking for system updates...
[2026-06-27 08:41:40,018.018 INFO    ] 200
[2026-06-27 08:41:40,019.019 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:41:40,054.054 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:41:40,055.055 INFO    ] No update needed
[2026-06-27 08:41:40,056.056 INFO    ] Checking for camera pi updates...
[2026-06-27 08:41:40,077.077 INFO    ] 200
[2026-06-27 08:41:40,078.078 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:41:40,101.101 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:41:40,151.151 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:41:40,152.152 INFO    ] No camera update needed
[2026-06-27 08:41:40,159.159 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:41:40,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:41:40,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:41:40,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:41:42,207.207 INFO    ] ================================================
[2026-06-27 08:41:42,222.222 INFO    ] Launching Daemon at Sat Jun 27 08:41:42 IST 2026
[2026-06-27 08:41:42,233.233 INFO    ] ================================================
[2026-06-27 08:41:42,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:41:42
[2026-06-27 08:41:42,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:41:43,091.091 INFO    ] Initializing speech engine...
[2026-06-27 08:41:43,096.096 INFO    ] 2026-06-27 08:41:43
[2026-06-27 08:41:43,304.304 INFO    ] 2026-06-27 08:41:43
[2026-06-27 08:41:43,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:41:43,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:41:43,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:41:43,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:41:43,724.724 INFO    ] time= 27/06/2026 08:41:43
[2026-06-27 08:41:43,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:41:43,755.755 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:41:43,823.823 INFO    ] No existing commands found in stream
[2026-06-27 08:41:48,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:41:48,836.836 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-27 08:41:50,866.866 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:41:50,867.867 INFO    ] Checking for system updates...
[2026-06-27 08:41:50,889.889 INFO    ] 200
[2026-06-27 08:41:50,890.890 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:41:50,923.923 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:41:50,924.924 INFO    ] No update needed
[2026-06-27 08:41:50,926.926 INFO    ] Checking for camera pi updates...
[2026-06-27 08:41:50,945.945 INFO    ] 200
[2026-06-27 08:41:50,947.947 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:41:50,970.970 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:41:51,016.016 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:41:51,018.018 INFO    ] No camera update needed
[2026-06-27 08:41:51,019.019 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:41:51,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:41:51,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:41:51,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:41:53,066.066 INFO    ] ================================================
[2026-06-27 08:41:53,081.081 INFO    ] Launching Daemon at Sat Jun 27 08:41:53 IST 2026
[2026-06-27 08:41:53,092.092 INFO    ] ================================================
[2026-06-27 08:41:53,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:41:53
[2026-06-27 08:41:53,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:41:53,906.906 INFO    ] Initializing speech engine...
[2026-06-27 08:41:53,911.911 INFO    ] 2026-06-27 08:41:53
[2026-06-27 08:41:54,115.115 INFO    ] 2026-06-27 08:41:54
[2026-06-27 08:41:54,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:41:54,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:41:54,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:41:54,473.473 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:41:54,534.534 INFO    ] time= 27/06/2026 08:41:54
[2026-06-27 08:41:54,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:41:54,564.564 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:41:54,631.631 INFO    ] No existing commands found in stream
[2026-06-27 08:41:59,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:41:59,643.643 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-27 08:42:00,210.210 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 08:42:00,212.212 INFO    ] Checking for system updates...
[2026-06-27 08:42:00,244.244 INFO    ] 200
[2026-06-27 08:42:00,246.246 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:42:00,277.277 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:42:00,278.278 INFO    ] No update needed
[2026-06-27 08:42:00,279.279 INFO    ] Checking for camera pi updates...
[2026-06-27 08:42:00,300.300 INFO    ] 200
[2026-06-27 08:42:00,302.302 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:42:00,328.328 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:42:00,366.366 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:42:00,367.367 INFO    ] No camera update needed
[2026-06-27 08:42:00,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:42:00,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:42:00,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:42:00,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:42:02,412.412 INFO    ] ================================================
[2026-06-27 08:42:02,424.424 INFO    ] Launching Daemon at Sat Jun 27 08:42:02 IST 2026
[2026-06-27 08:42:02,432.432 INFO    ] ================================================
[2026-06-27 08:42:02,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:42:02
[2026-06-27 08:42:03,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:42:03,256.256 INFO    ] Initializing speech engine...
[2026-06-27 08:42:03,271.271 INFO    ] 2026-06-27 08:42:03
[2026-06-27 08:42:03,476.476 INFO    ] 2026-06-27 08:42:03
[2026-06-27 08:42:03,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:42:03,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:42:03,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:42:03,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:42:03,901.901 INFO    ] time= 27/06/2026 08:42:03
[2026-06-27 08:42:03,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:42:03,927.927 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:42:03,998.998 INFO    ] No existing commands found in stream
[2026-06-27 08:42:09,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:42:09,012.012 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-27 08:42:10,481.481 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 08:42:10,482.482 INFO    ] Checking for system updates...
[2026-06-27 08:42:10,504.504 INFO    ] 200
[2026-06-27 08:42:10,505.505 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:42:10,536.536 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:42:10,537.537 INFO    ] No update needed
[2026-06-27 08:42:10,539.539 INFO    ] Checking for camera pi updates...
[2026-06-27 08:42:10,559.559 INFO    ] 200
[2026-06-27 08:42:10,560.560 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:42:10,584.584 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:42:10,631.631 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:42:10,633.633 INFO    ] No camera update needed
[2026-06-27 08:42:10,635.635 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:42:10,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:42:10,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:42:10,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:42:12,682.682 INFO    ] ================================================
[2026-06-27 08:42:12,696.696 INFO    ] Launching Daemon at Sat Jun 27 08:42:12 IST 2026
[2026-06-27 08:42:12,707.707 INFO    ] ================================================
[2026-06-27 08:42:13,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:42:13
[2026-06-27 08:42:13,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:42:13,504.504 INFO    ] Initializing speech engine...
[2026-06-27 08:42:13,517.517 INFO    ] 2026-06-27 08:42:13
[2026-06-27 08:42:13,726.726 INFO    ] 2026-06-27 08:42:13
[2026-06-27 08:42:13,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:42:13,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:42:13,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:42:14,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:42:14,172.172 INFO    ] time= 27/06/2026 08:42:14
[2026-06-27 08:42:14,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:42:14,180.180 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:42:14,248.248 INFO    ] No existing commands found in stream
[2026-06-27 08:42:19,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:42:19,264.264 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-27 08:42:20,686.686 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 08:42:20,687.687 INFO    ] Checking for system updates...
[2026-06-27 08:42:20,709.709 INFO    ] 200
[2026-06-27 08:42:20,710.710 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:42:20,743.743 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:42:20,745.745 INFO    ] No update needed
[2026-06-27 08:42:20,746.746 INFO    ] Checking for camera pi updates...
[2026-06-27 08:42:20,769.769 INFO    ] 200
[2026-06-27 08:42:20,770.770 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:42:20,794.794 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:42:20,844.844 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:42:20,845.845 INFO    ] No camera update needed
[2026-06-27 08:42:20,847.847 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:42:20,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:42:20,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:42:20,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:42:22,893.893 INFO    ] ================================================
[2026-06-27 08:42:22,908.908 INFO    ] Launching Daemon at Sat Jun 27 08:42:22 IST 2026
[2026-06-27 08:42:22,920.920 INFO    ] ================================================
[2026-06-27 08:42:23,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:42:23
[2026-06-27 08:42:23,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:42:23,688.688 INFO    ] Initializing speech engine...
[2026-06-27 08:42:23,693.693 INFO    ] 2026-06-27 08:42:23
[2026-06-27 08:42:23,922.922 INFO    ] 2026-06-27 08:42:23
[2026-06-27 08:42:23,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:42:24,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:42:24,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:42:24,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:42:24,360.360 INFO    ] time= 27/06/2026 08:42:24
[2026-06-27 08:42:24,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:42:24,389.389 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:42:24,455.455 INFO    ] No existing commands found in stream
[2026-06-27 08:42:29,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:42:29,468.468 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-27 08:42:32,011.011 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:42:32,012.012 INFO    ] Checking for system updates...
[2026-06-27 08:42:32,036.036 INFO    ] 200
[2026-06-27 08:42:32,037.037 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:42:32,071.071 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:42:32,073.073 INFO    ] No update needed
[2026-06-27 08:42:32,075.075 INFO    ] Checking for camera pi updates...
[2026-06-27 08:42:32,098.098 INFO    ] 200
[2026-06-27 08:42:32,099.099 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:42:32,131.131 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:42:32,162.162 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:42:32,164.164 INFO    ] No camera update needed
[2026-06-27 08:42:32,166.166 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:42:32,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:42:32,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:42:32,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:42:34,207.207 INFO    ] ================================================
[2026-06-27 08:42:34,223.223 INFO    ] Launching Daemon at Sat Jun 27 08:42:34 IST 2026
[2026-06-27 08:42:34,234.234 INFO    ] ================================================
[2026-06-27 08:42:34,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:42:34
[2026-06-27 08:42:34,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:42:35,074.074 INFO    ] Initializing speech engine...
[2026-06-27 08:42:35,089.089 INFO    ] 2026-06-27 08:42:35
[2026-06-27 08:42:35,298.298 INFO    ] 2026-06-27 08:42:35
[2026-06-27 08:42:35,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:42:35,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:42:35,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:42:35,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:42:35,724.724 INFO    ] time= 27/06/2026 08:42:35
[2026-06-27 08:42:35,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:42:35,747.747 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:42:35,815.815 INFO    ] No existing commands found in stream
[2026-06-27 08:42:40,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:42:40,832.832 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-27 08:42:43,016.016 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 08:42:43,018.018 INFO    ] Checking for system updates...
[2026-06-27 08:42:43,039.039 INFO    ] 200
[2026-06-27 08:42:43,040.040 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:42:43,072.072 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:42:43,073.073 INFO    ] No update needed
[2026-06-27 08:42:43,075.075 INFO    ] Checking for camera pi updates...
[2026-06-27 08:42:43,095.095 INFO    ] 200
[2026-06-27 08:42:43,096.096 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:42:43,120.120 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:42:43,158.158 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:42:43,160.160 INFO    ] No camera update needed
[2026-06-27 08:42:43,161.161 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:42:43,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:42:43,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:42:43,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:42:45,209.209 INFO    ] ================================================
[2026-06-27 08:42:45,225.225 INFO    ] Launching Daemon at Sat Jun 27 08:42:45 IST 2026
[2026-06-27 08:42:45,237.237 INFO    ] ================================================
[2026-06-27 08:42:45,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:42:45
[2026-06-27 08:42:45,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:42:46,038.038 INFO    ] Initializing speech engine...
[2026-06-27 08:42:46,043.043 INFO    ] 2026-06-27 08:42:46
[2026-06-27 08:42:46,249.249 INFO    ] 2026-06-27 08:42:46
[2026-06-27 08:42:46,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:42:46,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:42:46,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:42:46,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:42:46,662.662 INFO    ] time= 27/06/2026 08:42:46
[2026-06-27 08:42:46,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:42:46,703.703 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:42:46,774.774 INFO    ] No existing commands found in stream
[2026-06-27 08:42:51,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:42:51,788.788 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-27 08:42:54,870.870 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 08:42:54,871.871 INFO    ] Checking for system updates...
[2026-06-27 08:42:54,893.893 INFO    ] 200
[2026-06-27 08:42:54,895.895 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:42:54,925.925 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:42:54,926.926 INFO    ] No update needed
[2026-06-27 08:42:54,927.927 INFO    ] Checking for camera pi updates...
[2026-06-27 08:42:54,947.947 INFO    ] 200
[2026-06-27 08:42:54,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:42:54,973.973 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:42:54,998.998 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:42:55,000.000 INFO    ] No camera update needed
[2026-06-27 08:42:55,001.001 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:42:55,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:42:55,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:42:55,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:42:57,050.050 INFO    ] ================================================
[2026-06-27 08:42:57,066.066 INFO    ] Launching Daemon at Sat Jun 27 08:42:57 IST 2026
[2026-06-27 08:42:57,077.077 INFO    ] ================================================
[2026-06-27 08:42:57,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:42:57
[2026-06-27 08:42:57,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:42:57,854.854 INFO    ] Initializing speech engine...
[2026-06-27 08:42:57,867.867 INFO    ] 2026-06-27 08:42:57
[2026-06-27 08:42:58,072.072 INFO    ] 2026-06-27 08:42:58
[2026-06-27 08:42:58,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:42:58,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:42:58,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:42:58,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:42:58,491.491 INFO    ] time= 27/06/2026 08:42:58
[2026-06-27 08:42:58,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:42:58,520.520 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:42:58,586.586 INFO    ] No existing commands found in stream
[2026-06-27 08:43:03,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:43:03,599.599 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-27 08:43:06,214.214 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 08:43:06,216.216 INFO    ] Checking for system updates...
[2026-06-27 08:43:06,236.236 INFO    ] 200
[2026-06-27 08:43:06,238.238 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:43:06,269.269 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:43:06,270.270 INFO    ] No update needed
[2026-06-27 08:43:06,272.272 INFO    ] Checking for camera pi updates...
[2026-06-27 08:43:06,294.294 INFO    ] 200
[2026-06-27 08:43:06,295.295 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:43:06,319.319 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:43:06,459.459 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:43:06,460.460 INFO    ] No camera update needed
[2026-06-27 08:43:06,462.462 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:43:06,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:43:06,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:43:06,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:43:08,510.510 INFO    ] ================================================
[2026-06-27 08:43:08,525.525 INFO    ] Launching Daemon at Sat Jun 27 08:43:08 IST 2026
[2026-06-27 08:43:08,537.537 INFO    ] ================================================
[2026-06-27 08:43:08,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:43:08
[2026-06-27 08:43:09,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:43:09,406.406 INFO    ] Initializing speech engine...
[2026-06-27 08:43:09,412.412 INFO    ] 2026-06-27 08:43:09
[2026-06-27 08:43:09,625.625 INFO    ] 2026-06-27 08:43:09
[2026-06-27 08:43:09,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:43:09,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:43:09,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:43:10,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:43:10,052.052 INFO    ] time= 27/06/2026 08:43:10
[2026-06-27 08:43:10,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:43:10,080.080 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:43:10,148.148 INFO    ] No existing commands found in stream
[2026-06-27 08:43:15,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:43:15,166.166 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-27 08:43:19,430.430 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:43:19,432.432 INFO    ] Checking for system updates...
[2026-06-27 08:43:19,455.455 INFO    ] 200
[2026-06-27 08:43:19,457.457 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:43:19,490.490 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:43:19,492.492 INFO    ] No update needed
[2026-06-27 08:43:19,493.493 INFO    ] Checking for camera pi updates...
[2026-06-27 08:43:19,516.516 INFO    ] 200
[2026-06-27 08:43:19,517.517 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:43:19,541.541 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:43:19,583.583 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:43:19,585.585 INFO    ] No camera update needed
[2026-06-27 08:43:19,586.586 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:43:19,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:43:19,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:43:19,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:43:21,635.635 INFO    ] ================================================
[2026-06-27 08:43:21,651.651 INFO    ] Launching Daemon at Sat Jun 27 08:43:21 IST 2026
[2026-06-27 08:43:21,662.662 INFO    ] ================================================
[2026-06-27 08:43:22,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:43:22
[2026-06-27 08:43:22,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:43:22,457.457 INFO    ] Initializing speech engine...
[2026-06-27 08:43:22,467.467 INFO    ] 2026-06-27 08:43:22
[2026-06-27 08:43:22,672.672 INFO    ] 2026-06-27 08:43:22
[2026-06-27 08:43:22,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:43:22,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:43:22,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:43:23,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:43:23,092.092 INFO    ] time= 27/06/2026 08:43:23
[2026-06-27 08:43:23,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:43:23,120.120 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:43:23,186.186 INFO    ] No existing commands found in stream
[2026-06-27 08:43:28,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:43:28,199.199 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-27 08:43:29,603.603 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:43:29,605.605 INFO    ] Checking for system updates...
[2026-06-27 08:43:29,626.626 INFO    ] 200
[2026-06-27 08:43:29,627.627 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:43:29,659.659 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:43:29,660.660 INFO    ] No update needed
[2026-06-27 08:43:29,662.662 INFO    ] Checking for camera pi updates...
[2026-06-27 08:43:29,681.681 INFO    ] 200
[2026-06-27 08:43:29,683.683 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:43:29,707.707 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:43:29,754.754 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:43:29,755.755 INFO    ] No camera update needed
[2026-06-27 08:43:29,757.757 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:43:29,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:43:29,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:43:29,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:43:31,797.797 INFO    ] ================================================
[2026-06-27 08:43:31,807.807 INFO    ] Launching Daemon at Sat Jun 27 08:43:31 IST 2026
[2026-06-27 08:43:31,814.814 INFO    ] ================================================
[2026-06-27 08:43:32,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:43:32
[2026-06-27 08:43:32,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:43:32,599.599 INFO    ] Initializing speech engine...
[2026-06-27 08:43:32,606.606 INFO    ] 2026-06-27 08:43:32
[2026-06-27 08:43:32,823.823 INFO    ] 2026-06-27 08:43:32
[2026-06-27 08:43:32,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:43:33,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:43:33,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:43:33,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:43:33,252.252 INFO    ] time= 27/06/2026 08:43:33
[2026-06-27 08:43:33,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:43:33,280.280 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:43:33,347.347 INFO    ] No existing commands found in stream
[2026-06-27 08:43:38,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:43:38,363.363 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-27 08:43:40,570.570 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 08:43:40,572.572 INFO    ] Checking for system updates...
[2026-06-27 08:43:40,594.594 INFO    ] 200
[2026-06-27 08:43:40,595.595 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:43:40,626.626 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:43:40,627.627 INFO    ] No update needed
[2026-06-27 08:43:40,629.629 INFO    ] Checking for camera pi updates...
[2026-06-27 08:43:40,652.652 INFO    ] 200
[2026-06-27 08:43:40,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:43:40,685.685 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:43:40,724.724 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:43:40,725.725 INFO    ] No camera update needed
[2026-06-27 08:43:40,726.726 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:43:40,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:43:40,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:43:40,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:43:42,774.774 INFO    ] ================================================
[2026-06-27 08:43:42,790.790 INFO    ] Launching Daemon at Sat Jun 27 08:43:42 IST 2026
[2026-06-27 08:43:42,801.801 INFO    ] ================================================
[2026-06-27 08:43:43,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:43:43
[2026-06-27 08:43:43,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:43:43,597.597 INFO    ] Initializing speech engine...
[2026-06-27 08:43:43,607.607 INFO    ] 2026-06-27 08:43:43
[2026-06-27 08:43:43,810.810 INFO    ] 2026-06-27 08:43:43
[2026-06-27 08:43:43,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:43:44,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:43:44,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:43:44,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:43:44,219.219 INFO    ] time= 27/06/2026 08:43:44
[2026-06-27 08:43:44,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:43:44,264.264 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:43:44,332.332 INFO    ] No existing commands found in stream
[2026-06-27 08:43:49,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:43:49,344.344 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-27 08:43:52,946.946 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 08:43:52,948.948 INFO    ] Checking for system updates...
[2026-06-27 08:43:52,969.969 INFO    ] 200
[2026-06-27 08:43:52,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:43:53,001.001 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:43:53,002.002 INFO    ] No update needed
[2026-06-27 08:43:53,004.004 INFO    ] Checking for camera pi updates...
[2026-06-27 08:43:53,025.025 INFO    ] 200
[2026-06-27 08:43:53,026.026 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:43:53,050.050 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:43:53,097.097 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:43:53,098.098 INFO    ] No camera update needed
[2026-06-27 08:43:53,100.100 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:43:53,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:43:53,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:43:53,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:43:55,147.147 INFO    ] ================================================
[2026-06-27 08:43:55,164.164 INFO    ] Launching Daemon at Sat Jun 27 08:43:55 IST 2026
[2026-06-27 08:43:55,175.175 INFO    ] ================================================
[2026-06-27 08:43:55,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:43:55
[2026-06-27 08:43:55,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:43:56,072.072 INFO    ] Initializing speech engine...
[2026-06-27 08:43:56,078.078 INFO    ] 2026-06-27 08:43:56
[2026-06-27 08:43:56,290.290 INFO    ] 2026-06-27 08:43:56
[2026-06-27 08:43:56,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:43:56,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:43:56,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:43:56,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:43:56,740.740 INFO    ] time= 27/06/2026 08:43:56
[2026-06-27 08:43:56,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:43:56,748.748 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:43:56,816.816 INFO    ] No existing commands found in stream
[2026-06-27 08:44:01,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:44:01,827.827 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-27 08:44:05,006.006 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 08:44:05,007.007 INFO    ] Checking for system updates...
[2026-06-27 08:44:05,028.028 INFO    ] 200
[2026-06-27 08:44:05,029.029 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:44:05,059.059 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:44:05,061.061 INFO    ] No update needed
[2026-06-27 08:44:05,062.062 INFO    ] Checking for camera pi updates...
[2026-06-27 08:44:05,085.085 INFO    ] 200
[2026-06-27 08:44:05,086.086 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:44:05,110.110 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:44:05,155.155 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:44:05,157.157 INFO    ] No camera update needed
[2026-06-27 08:44:05,159.159 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:44:05,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:44:05,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:44:05,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:44:07,205.205 INFO    ] ================================================
[2026-06-27 08:44:07,221.221 INFO    ] Launching Daemon at Sat Jun 27 08:44:07 IST 2026
[2026-06-27 08:44:07,233.233 INFO    ] ================================================
[2026-06-27 08:44:07,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:44:07
[2026-06-27 08:44:07,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:44:08,046.046 INFO    ] Initializing speech engine...
[2026-06-27 08:44:08,051.051 INFO    ] 2026-06-27 08:44:08
[2026-06-27 08:44:08,255.255 INFO    ] 2026-06-27 08:44:08
[2026-06-27 08:44:08,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:44:08,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:44:08,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:44:08,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:44:08,665.665 INFO    ] time= 27/06/2026 08:44:08
[2026-06-27 08:44:08,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:44:08,698.698 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:44:08,770.770 INFO    ] No existing commands found in stream
[2026-06-27 08:44:13,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:44:13,787.787 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-27 08:44:17,503.503 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 08:44:17,504.504 INFO    ] Checking for system updates...
[2026-06-27 08:44:17,527.527 INFO    ] 200
[2026-06-27 08:44:17,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:44:17,563.563 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:44:17,565.565 INFO    ] No update needed
[2026-06-27 08:44:17,567.567 INFO    ] Checking for camera pi updates...
[2026-06-27 08:44:17,586.586 INFO    ] 200
[2026-06-27 08:44:17,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:44:17,613.613 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:44:17,658.658 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:44:17,659.659 INFO    ] No camera update needed
[2026-06-27 08:44:17,661.661 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:44:17,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:44:17,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:44:17,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:44:19,708.708 INFO    ] ================================================
[2026-06-27 08:44:19,724.724 INFO    ] Launching Daemon at Sat Jun 27 08:44:19 IST 2026
[2026-06-27 08:44:19,736.736 INFO    ] ================================================
[2026-06-27 08:44:20,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:44:20
[2026-06-27 08:44:20,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:44:20,584.584 INFO    ] Initializing speech engine...
[2026-06-27 08:44:20,595.595 INFO    ] 2026-06-27 08:44:20
[2026-06-27 08:44:20,805.805 INFO    ] 2026-06-27 08:44:20
[2026-06-27 08:44:20,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:44:21,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:44:21,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:44:21,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:44:21,249.249 INFO    ] time= 27/06/2026 08:44:21
[2026-06-27 08:44:21,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:44:21,257.257 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:44:21,323.323 INFO    ] No existing commands found in stream
[2026-06-27 08:44:26,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:44:26,337.337 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-27 08:44:27,006.006 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 08:44:27,008.008 INFO    ] Checking for system updates...
[2026-06-27 08:44:27,030.030 INFO    ] 200
[2026-06-27 08:44:27,032.032 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:44:27,067.067 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:44:27,068.068 INFO    ] No update needed
[2026-06-27 08:44:27,070.070 INFO    ] Checking for camera pi updates...
[2026-06-27 08:44:27,090.090 INFO    ] 200
[2026-06-27 08:44:27,091.091 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:44:27,115.115 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:44:27,156.156 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:44:27,157.157 INFO    ] No camera update needed
[2026-06-27 08:44:27,159.159 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:44:27,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:44:27,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:44:27,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:44:29,207.207 INFO    ] ================================================
[2026-06-27 08:44:29,223.223 INFO    ] Launching Daemon at Sat Jun 27 08:44:29 IST 2026
[2026-06-27 08:44:29,235.235 INFO    ] ================================================
[2026-06-27 08:44:29,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:44:29
[2026-06-27 08:44:29,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:44:30,072.072 INFO    ] Initializing speech engine...
[2026-06-27 08:44:30,085.085 INFO    ] 2026-06-27 08:44:30
[2026-06-27 08:44:30,299.299 INFO    ] 2026-06-27 08:44:30
[2026-06-27 08:44:30,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:44:30,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:44:30,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:44:30,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:44:30,708.708 INFO    ] time= 27/06/2026 08:44:30
[2026-06-27 08:44:30,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:44:30,759.759 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:44:30,825.825 INFO    ] No existing commands found in stream
[2026-06-27 08:44:35,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:44:35,839.839 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-27 08:44:39,661.661 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:44:39,662.662 INFO    ] Checking for system updates...
[2026-06-27 08:44:39,683.683 INFO    ] 200
[2026-06-27 08:44:39,685.685 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:44:39,719.719 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:44:39,720.720 INFO    ] No update needed
[2026-06-27 08:44:39,721.721 INFO    ] Checking for camera pi updates...
[2026-06-27 08:44:39,744.744 INFO    ] 200
[2026-06-27 08:44:39,745.745 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:44:39,769.769 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:44:39,813.813 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:44:39,815.815 INFO    ] No camera update needed
[2026-06-27 08:44:39,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:44:39,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:44:39,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:44:39,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:44:41,865.865 INFO    ] ================================================
[2026-06-27 08:44:41,880.880 INFO    ] Launching Daemon at Sat Jun 27 08:44:41 IST 2026
[2026-06-27 08:44:41,892.892 INFO    ] ================================================
[2026-06-27 08:44:42,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:44:42
[2026-06-27 08:44:42,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:44:42,736.736 INFO    ] Initializing speech engine...
[2026-06-27 08:44:42,746.746 INFO    ] 2026-06-27 08:44:42
[2026-06-27 08:44:42,955.955 INFO    ] 2026-06-27 08:44:42
[2026-06-27 08:44:42,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:44:43,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:44:43,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:44:43,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:44:43,377.377 INFO    ] time= 27/06/2026 08:44:43
[2026-06-27 08:44:43,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:44:43,407.407 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:44:43,475.475 INFO    ] No existing commands found in stream
[2026-06-27 08:44:48,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:44:48,502.502 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-27 08:44:49,894.894 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 08:44:49,895.895 INFO    ] Checking for system updates...
[2026-06-27 08:44:49,917.917 INFO    ] 200
[2026-06-27 08:44:49,918.918 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:44:49,949.949 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:44:49,951.951 INFO    ] No update needed
[2026-06-27 08:44:49,952.952 INFO    ] Checking for camera pi updates...
[2026-06-27 08:44:49,973.973 INFO    ] 200
[2026-06-27 08:44:49,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:44:49,998.998 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:44:50,049.049 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:44:50,051.051 INFO    ] No camera update needed
[2026-06-27 08:44:50,052.052 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:44:50,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:44:50,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:44:50,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:44:52,103.103 INFO    ] ================================================
[2026-06-27 08:44:52,118.118 INFO    ] Launching Daemon at Sat Jun 27 08:44:52 IST 2026
[2026-06-27 08:44:52,129.129 INFO    ] ================================================
[2026-06-27 08:44:52,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:44:52
[2026-06-27 08:44:52,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:44:52,957.957 INFO    ] Initializing speech engine...
[2026-06-27 08:44:52,962.962 INFO    ] 2026-06-27 08:44:52
[2026-06-27 08:44:53,166.166 INFO    ] 2026-06-27 08:44:53
[2026-06-27 08:44:53,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:44:53,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:44:53,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:44:53,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:44:53,582.582 INFO    ] time= 27/06/2026 08:44:53
[2026-06-27 08:44:53,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:44:53,612.612 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:44:53,680.680 INFO    ] No existing commands found in stream
[2026-06-27 08:44:58,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:44:58,697.697 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-27 08:45:00,005.005 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 08:45:00,006.006 INFO    ] Checking for system updates...
[2026-06-27 08:45:00,027.027 INFO    ] 200
[2026-06-27 08:45:00,029.029 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:45:00,062.062 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:45:00,064.064 INFO    ] No update needed
[2026-06-27 08:45:00,065.065 INFO    ] Checking for camera pi updates...
[2026-06-27 08:45:00,088.088 INFO    ] 200
[2026-06-27 08:45:00,089.089 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:45:00,115.115 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:45:00,153.153 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:45:00,155.155 INFO    ] No camera update needed
[2026-06-27 08:45:00,156.156 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:45:00,158.158 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:45:00,161.161 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:45:00,164.164 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:45:02,205.205 INFO    ] ================================================
[2026-06-27 08:45:02,220.220 INFO    ] Launching Daemon at Sat Jun 27 08:45:02 IST 2026
[2026-06-27 08:45:02,253.253 INFO    ] ================================================
[2026-06-27 08:45:02,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:45:02
[2026-06-27 08:45:03,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:45:03,148.148 INFO    ] Initializing speech engine...
[2026-06-27 08:45:03,151.151 INFO    ] 2026-06-27 08:45:03
[2026-06-27 08:45:03,380.380 INFO    ] 2026-06-27 08:45:03
[2026-06-27 08:45:03,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:45:03,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:45:03,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:45:03,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:45:03,792.792 INFO    ] time= 27/06/2026 08:45:03
[2026-06-27 08:45:03,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:45:03,830.830 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:45:03,898.898 INFO    ] No existing commands found in stream
[2026-06-27 08:45:08,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:45:08,911.911 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-27 08:45:11,753.753 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:45:11,754.754 INFO    ] Checking for system updates...
[2026-06-27 08:45:11,775.775 INFO    ] 200
[2026-06-27 08:45:11,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:45:11,810.810 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:45:11,811.811 INFO    ] No update needed
[2026-06-27 08:45:11,813.813 INFO    ] Checking for camera pi updates...
[2026-06-27 08:45:11,835.835 INFO    ] 200
[2026-06-27 08:45:11,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:45:11,860.860 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:45:12,001.001 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:45:12,002.002 INFO    ] No camera update needed
[2026-06-27 08:45:12,004.004 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:45:12,005.005 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:45:12,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:45:12,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:45:14,049.049 INFO    ] ================================================
[2026-06-27 08:45:14,064.064 INFO    ] Launching Daemon at Sat Jun 27 08:45:14 IST 2026
[2026-06-27 08:45:14,075.075 INFO    ] ================================================
[2026-06-27 08:45:14,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:45:14
[2026-06-27 08:45:14,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:45:14,889.889 INFO    ] Initializing speech engine...
[2026-06-27 08:45:14,899.899 INFO    ] 2026-06-27 08:45:14
[2026-06-27 08:45:15,105.105 INFO    ] 2026-06-27 08:45:15
[2026-06-27 08:45:15,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:45:15,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:45:15,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:45:15,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:45:15,527.527 INFO    ] time= 27/06/2026 08:45:15
[2026-06-27 08:45:15,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:45:15,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:45:15,616.616 INFO    ] No existing commands found in stream
[2026-06-27 08:45:20,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:45:20,633.633 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-27 08:45:22,800.800 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:45:22,801.801 INFO    ] Checking for system updates...
[2026-06-27 08:45:22,823.823 INFO    ] 200
[2026-06-27 08:45:22,824.824 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:45:22,858.858 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:45:22,859.859 INFO    ] No update needed
[2026-06-27 08:45:22,861.861 INFO    ] Checking for camera pi updates...
[2026-06-27 08:45:22,883.883 INFO    ] 200
[2026-06-27 08:45:22,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:45:22,908.908 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:45:22,956.956 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:45:22,957.957 INFO    ] No camera update needed
[2026-06-27 08:45:22,959.959 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:45:22,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:45:22,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:45:22,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:45:25,010.010 INFO    ] ================================================
[2026-06-27 08:45:25,026.026 INFO    ] Launching Daemon at Sat Jun 27 08:45:25 IST 2026
[2026-06-27 08:45:25,038.038 INFO    ] ================================================
[2026-06-27 08:45:25,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:45:25
[2026-06-27 08:45:25,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:45:25,868.868 INFO    ] Initializing speech engine...
[2026-06-27 08:45:25,881.881 INFO    ] 2026-06-27 08:45:25
[2026-06-27 08:45:26,089.089 INFO    ] 2026-06-27 08:45:26
[2026-06-27 08:45:26,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:45:26,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:45:26,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:45:26,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:45:26,507.507 INFO    ] time= 27/06/2026 08:45:26
[2026-06-27 08:45:26,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:45:26,535.535 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:45:26,603.603 INFO    ] No existing commands found in stream
[2026-06-27 08:45:31,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:45:31,625.625 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-27 08:45:35,246.246 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:45:35,247.247 INFO    ] Checking for system updates...
[2026-06-27 08:45:35,268.268 INFO    ] 200
[2026-06-27 08:45:35,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:45:35,300.300 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:45:35,301.301 INFO    ] No update needed
[2026-06-27 08:45:35,303.303 INFO    ] Checking for camera pi updates...
[2026-06-27 08:45:35,323.323 INFO    ] 200
[2026-06-27 08:45:35,324.324 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:45:35,350.350 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:45:35,374.374 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:45:35,375.375 INFO    ] No camera update needed
[2026-06-27 08:45:35,377.377 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:45:35,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:45:35,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:45:35,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:45:37,426.426 INFO    ] ================================================
[2026-06-27 08:45:37,441.441 INFO    ] Launching Daemon at Sat Jun 27 08:45:37 IST 2026
[2026-06-27 08:45:37,451.451 INFO    ] ================================================
[2026-06-27 08:45:37,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:45:37
[2026-06-27 08:45:38,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:45:38,274.274 INFO    ] Initializing speech engine...
[2026-06-27 08:45:38,284.284 INFO    ] 2026-06-27 08:45:38
[2026-06-27 08:45:38,489.489 INFO    ] 2026-06-27 08:45:38
[2026-06-27 08:45:38,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:45:38,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:45:38,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:45:38,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:45:38,905.905 INFO    ] time= 27/06/2026 08:45:38
[2026-06-27 08:45:38,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:45:38,935.935 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:45:39,002.002 INFO    ] No existing commands found in stream
[2026-06-27 08:45:44,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:45:44,014.014 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-27 08:45:46,690.690 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:45:46,692.692 INFO    ] Checking for system updates...
[2026-06-27 08:45:46,713.713 INFO    ] 200
[2026-06-27 08:45:46,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:45:46,750.750 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:45:46,751.751 INFO    ] No update needed
[2026-06-27 08:45:46,753.753 INFO    ] Checking for camera pi updates...
[2026-06-27 08:45:46,773.773 INFO    ] 200
[2026-06-27 08:45:46,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:45:46,800.800 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:45:46,837.837 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:45:46,839.839 INFO    ] No camera update needed
[2026-06-27 08:45:46,840.840 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:45:46,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:45:46,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:45:46,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:45:48,886.886 INFO    ] ================================================
[2026-06-27 08:45:48,902.902 INFO    ] Launching Daemon at Sat Jun 27 08:45:48 IST 2026
[2026-06-27 08:45:48,913.913 INFO    ] ================================================
[2026-06-27 08:45:49,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:45:49
[2026-06-27 08:45:49,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:45:49,692.692 INFO    ] Initializing speech engine...
[2026-06-27 08:45:49,697.697 INFO    ] 2026-06-27 08:45:49
[2026-06-27 08:45:49,901.901 INFO    ] 2026-06-27 08:45:49
[2026-06-27 08:45:49,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:45:50,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:45:50,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:45:50,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:45:50,319.319 INFO    ] time= 27/06/2026 08:45:50
[2026-06-27 08:45:50,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:45:50,346.346 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:45:50,410.410 INFO    ] No existing commands found in stream
[2026-06-27 08:45:55,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:45:55,424.424 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-27 08:45:58,480.480 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 08:45:58,482.482 INFO    ] Checking for system updates...
[2026-06-27 08:45:58,504.504 INFO    ] 200
[2026-06-27 08:45:58,505.505 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:45:58,536.536 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:45:58,537.537 INFO    ] No update needed
[2026-06-27 08:45:58,539.539 INFO    ] Checking for camera pi updates...
[2026-06-27 08:45:58,558.558 INFO    ] 200
[2026-06-27 08:45:58,559.559 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:45:58,587.587 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:45:58,626.626 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:45:58,627.627 INFO    ] No camera update needed
[2026-06-27 08:45:58,628.628 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:45:58,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:45:58,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:45:58,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:46:00,676.676 INFO    ] ================================================
[2026-06-27 08:46:00,691.691 INFO    ] Launching Daemon at Sat Jun 27 08:46:00 IST 2026
[2026-06-27 08:46:00,701.701 INFO    ] ================================================
[2026-06-27 08:46:01,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:46:01
[2026-06-27 08:46:01,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:46:01,690.690 INFO    ] Initializing speech engine...
[2026-06-27 08:46:01,697.697 INFO    ] 2026-06-27 08:46:01
[2026-06-27 08:46:01,929.929 INFO    ] 2026-06-27 08:46:01
[2026-06-27 08:46:01,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:46:02,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:46:02,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:46:02,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:46:02,384.384 INFO    ] time= 27/06/2026 08:46:02
[2026-06-27 08:46:02,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:46:02,436.436 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:46:02,502.502 INFO    ] No existing commands found in stream
[2026-06-27 08:46:07,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:46:07,516.516 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-27 08:46:08,033.033 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 08:46:08,035.035 INFO    ] Checking for system updates...
[2026-06-27 08:46:08,056.056 INFO    ] 200
[2026-06-27 08:46:08,058.058 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:46:08,089.089 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:46:08,090.090 INFO    ] No update needed
[2026-06-27 08:46:08,092.092 INFO    ] Checking for camera pi updates...
[2026-06-27 08:46:08,112.112 INFO    ] 200
[2026-06-27 08:46:08,114.114 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:46:08,139.139 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:46:08,181.181 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:46:08,183.183 INFO    ] No camera update needed
[2026-06-27 08:46:08,184.184 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:46:08,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:46:08,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:46:08,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:46:10,231.231 INFO    ] ================================================
[2026-06-27 08:46:10,247.247 INFO    ] Launching Daemon at Sat Jun 27 08:46:10 IST 2026
[2026-06-27 08:46:10,258.258 INFO    ] ================================================
[2026-06-27 08:46:10,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:46:10
[2026-06-27 08:46:10,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:46:11,113.113 INFO    ] Initializing speech engine...
[2026-06-27 08:46:11,116.116 INFO    ] 2026-06-27 08:46:11
[2026-06-27 08:46:11,326.326 INFO    ] 2026-06-27 08:46:11
[2026-06-27 08:46:11,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:46:11,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:46:11,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:46:11,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:46:11,749.749 INFO    ] time= 27/06/2026 08:46:11
[2026-06-27 08:46:11,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:46:11,778.778 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:46:11,845.845 INFO    ] No existing commands found in stream
[2026-06-27 08:46:16,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:46:16,862.862 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-27 08:46:19,982.982 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:46:19,984.984 INFO    ] Checking for system updates...
[2026-06-27 08:46:20,007.007 INFO    ] 200
[2026-06-27 08:46:20,008.008 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:46:20,042.042 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:46:20,043.043 INFO    ] No update needed
[2026-06-27 08:46:20,045.045 INFO    ] Checking for camera pi updates...
[2026-06-27 08:46:20,067.067 INFO    ] 200
[2026-06-27 08:46:20,068.068 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:46:20,091.091 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:46:20,132.132 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:46:20,134.134 INFO    ] No camera update needed
[2026-06-27 08:46:20,135.135 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:46:20,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:46:20,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:46:20,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:46:22,176.176 INFO    ] ================================================
[2026-06-27 08:46:22,184.184 INFO    ] Launching Daemon at Sat Jun 27 08:46:22 IST 2026
[2026-06-27 08:46:22,190.190 INFO    ] ================================================
[2026-06-27 08:46:22,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:46:22
[2026-06-27 08:46:22,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:46:22,963.963 INFO    ] Initializing speech engine...
[2026-06-27 08:46:22,974.974 INFO    ] 2026-06-27 08:46:22
[2026-06-27 08:46:23,178.178 INFO    ] 2026-06-27 08:46:23
[2026-06-27 08:46:23,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:46:23,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:46:23,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:46:23,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:46:23,587.587 INFO    ] time= 27/06/2026 08:46:23
[2026-06-27 08:46:23,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:46:23,626.626 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:46:23,716.716 INFO    ] No existing commands found in stream
[2026-06-27 08:46:28,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:46:28,733.733 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-27 08:46:30,786.786 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:46:30,787.787 INFO    ] Checking for system updates...
[2026-06-27 08:46:30,809.809 INFO    ] 200
[2026-06-27 08:46:30,810.810 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:46:30,841.841 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:46:30,843.843 INFO    ] No update needed
[2026-06-27 08:46:30,844.844 INFO    ] Checking for camera pi updates...
[2026-06-27 08:46:30,864.864 INFO    ] 200
[2026-06-27 08:46:30,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:46:30,891.891 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:46:30,930.930 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:46:30,931.931 INFO    ] No camera update needed
[2026-06-27 08:46:30,932.932 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:46:30,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:46:30,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:46:30,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:46:32,973.973 INFO    ] ================================================
[2026-06-27 08:46:32,988.988 INFO    ] Launching Daemon at Sat Jun 27 08:46:32 IST 2026
[2026-06-27 08:46:33,000.000 INFO    ] ================================================
[2026-06-27 08:46:33,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:46:33
[2026-06-27 08:46:33,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:46:33,794.794 INFO    ] Initializing speech engine...
[2026-06-27 08:46:33,807.807 INFO    ] 2026-06-27 08:46:33
[2026-06-27 08:46:34,021.021 INFO    ] 2026-06-27 08:46:33
[2026-06-27 08:46:34,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:46:34,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:46:34,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:46:34,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:46:34,439.439 INFO    ] time= 27/06/2026 08:46:34
[2026-06-27 08:46:34,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:46:34,484.484 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:46:34,551.551 INFO    ] No existing commands found in stream
[2026-06-27 08:46:39,562.562 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:46:39,565.565 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-27 08:46:41,196.196 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:46:41,198.198 INFO    ] Checking for system updates...
[2026-06-27 08:46:41,220.220 INFO    ] 200
[2026-06-27 08:46:41,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:46:41,251.251 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:46:41,252.252 INFO    ] No update needed
[2026-06-27 08:46:41,254.254 INFO    ] Checking for camera pi updates...
[2026-06-27 08:46:41,274.274 INFO    ] 200
[2026-06-27 08:46:41,276.276 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:46:41,299.299 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:46:41,326.326 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:46:41,328.328 INFO    ] No camera update needed
[2026-06-27 08:46:41,329.329 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:46:41,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:46:41,333.333 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:46:41,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:46:43,379.379 INFO    ] ================================================
[2026-06-27 08:46:43,395.395 INFO    ] Launching Daemon at Sat Jun 27 08:46:43 IST 2026
[2026-06-27 08:46:43,407.407 INFO    ] ================================================
[2026-06-27 08:46:43,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:46:43
[2026-06-27 08:46:44,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:46:44,218.218 INFO    ] Initializing speech engine...
[2026-06-27 08:46:44,223.223 INFO    ] 2026-06-27 08:46:44
[2026-06-27 08:46:44,439.439 INFO    ] 2026-06-27 08:46:44
[2026-06-27 08:46:44,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:46:44,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:46:44,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:46:44,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:46:44,852.852 INFO    ] time= 27/06/2026 08:46:44
[2026-06-27 08:46:44,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:46:44,885.885 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:46:44,953.953 INFO    ] No existing commands found in stream
[2026-06-27 08:46:49,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:46:49,965.965 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-27 08:46:53,538.538 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 08:46:53,540.540 INFO    ] Checking for system updates...
[2026-06-27 08:46:53,561.561 INFO    ] 200
[2026-06-27 08:46:53,563.563 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:46:53,594.594 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:46:53,596.596 INFO    ] No update needed
[2026-06-27 08:46:53,597.597 INFO    ] Checking for camera pi updates...
[2026-06-27 08:46:53,619.619 INFO    ] 200
[2026-06-27 08:46:53,620.620 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:46:53,644.644 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:46:53,685.685 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:46:53,686.686 INFO    ] No camera update needed
[2026-06-27 08:46:53,687.687 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:46:53,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:46:53,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:46:53,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:46:55,733.733 INFO    ] ================================================
[2026-06-27 08:46:55,749.749 INFO    ] Launching Daemon at Sat Jun 27 08:46:55 IST 2026
[2026-06-27 08:46:55,761.761 INFO    ] ================================================
[2026-06-27 08:46:56,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:46:56
[2026-06-27 08:46:56,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:46:56,587.587 INFO    ] Initializing speech engine...
[2026-06-27 08:46:56,592.592 INFO    ] 2026-06-27 08:46:56
[2026-06-27 08:46:56,797.797 INFO    ] 2026-06-27 08:46:56
[2026-06-27 08:46:56,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:46:57,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:46:57,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:46:57,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:46:57,234.234 INFO    ] time= 27/06/2026 08:46:57
[2026-06-27 08:46:57,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:46:57,241.241 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:46:57,306.306 INFO    ] No existing commands found in stream
[2026-06-27 08:47:02,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:47:02,318.318 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-27 08:47:05,788.788 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 08:47:05,789.789 INFO    ] Checking for system updates...
[2026-06-27 08:47:05,811.811 INFO    ] 200
[2026-06-27 08:47:05,812.812 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:47:05,847.847 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:47:05,849.849 INFO    ] No update needed
[2026-06-27 08:47:05,853.853 INFO    ] Checking for camera pi updates...
[2026-06-27 08:47:05,890.890 INFO    ] 200
[2026-06-27 08:47:05,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:47:05,919.919 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:47:05,959.959 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:47:05,961.961 INFO    ] No camera update needed
[2026-06-27 08:47:05,962.962 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:47:05,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:47:05,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:47:05,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:47:08,010.010 INFO    ] ================================================
[2026-06-27 08:47:08,026.026 INFO    ] Launching Daemon at Sat Jun 27 08:47:08 IST 2026
[2026-06-27 08:47:08,038.038 INFO    ] ================================================
[2026-06-27 08:47:08,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:47:08
[2026-06-27 08:47:08,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:47:08,833.833 INFO    ] Initializing speech engine...
[2026-06-27 08:47:08,842.842 INFO    ] 2026-06-27 08:47:08
[2026-06-27 08:47:09,047.047 INFO    ] 2026-06-27 08:47:09
[2026-06-27 08:47:09,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:47:09,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:47:09,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:47:09,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:47:09,455.455 INFO    ] time= 27/06/2026 08:47:09
[2026-06-27 08:47:09,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:47:09,493.493 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:47:09,560.560 INFO    ] No existing commands found in stream
[2026-06-27 08:47:14,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:47:14,572.572 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-27 08:47:17,967.967 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:47:17,968.968 INFO    ] Checking for system updates...
[2026-06-27 08:47:17,990.990 INFO    ] 200
[2026-06-27 08:47:17,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:47:18,022.022 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:47:18,023.023 INFO    ] No update needed
[2026-06-27 08:47:18,024.024 INFO    ] Checking for camera pi updates...
[2026-06-27 08:47:18,046.046 INFO    ] 200
[2026-06-27 08:47:18,047.047 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:47:18,071.071 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:47:18,211.211 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:47:18,212.212 INFO    ] No camera update needed
[2026-06-27 08:47:18,214.214 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:47:18,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:47:18,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:47:18,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:47:20,260.260 INFO    ] ================================================
[2026-06-27 08:47:20,275.275 INFO    ] Launching Daemon at Sat Jun 27 08:47:20 IST 2026
[2026-06-27 08:47:20,287.287 INFO    ] ================================================
[2026-06-27 08:47:20,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:47:20
[2026-06-27 08:47:20,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:47:21,090.090 INFO    ] Initializing speech engine...
[2026-06-27 08:47:21,103.103 INFO    ] 2026-06-27 08:47:21
[2026-06-27 08:47:21,311.311 INFO    ] 2026-06-27 08:47:21
[2026-06-27 08:47:21,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:47:21,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:47:21,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:47:21,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:47:21,730.730 INFO    ] time= 27/06/2026 08:47:21
[2026-06-27 08:47:21,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:47:21,781.781 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:47:21,890.890 INFO    ] No existing commands found in stream
[2026-06-27 08:47:26,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:47:26,903.903 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-27 08:47:28,225.225 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 08:47:28,227.227 INFO    ] Checking for system updates...
[2026-06-27 08:47:28,249.249 INFO    ] 200
[2026-06-27 08:47:28,250.250 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:47:28,281.281 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:47:28,282.282 INFO    ] No update needed
[2026-06-27 08:47:28,284.284 INFO    ] Checking for camera pi updates...
[2026-06-27 08:47:28,304.304 INFO    ] 200
[2026-06-27 08:47:28,306.306 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:47:28,331.331 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:47:28,373.373 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:47:28,375.375 INFO    ] No camera update needed
[2026-06-27 08:47:28,376.376 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:47:28,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:47:28,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:47:28,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:47:30,421.421 INFO    ] ================================================
[2026-06-27 08:47:30,437.437 INFO    ] Launching Daemon at Sat Jun 27 08:47:30 IST 2026
[2026-06-27 08:47:30,447.447 INFO    ] ================================================
[2026-06-27 08:47:30,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:47:30
[2026-06-27 08:47:31,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:47:31,219.219 INFO    ] Initializing speech engine...
[2026-06-27 08:47:31,231.231 INFO    ] 2026-06-27 08:47:31
[2026-06-27 08:47:31,437.437 INFO    ] 2026-06-27 08:47:31
[2026-06-27 08:47:31,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:47:31,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:47:31,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:47:31,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:47:31,892.892 INFO    ] time= 27/06/2026 08:47:31
[2026-06-27 08:47:31,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:47:31,928.928 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:47:32,004.004 INFO    ] No existing commands found in stream
[2026-06-27 08:47:37,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:47:37,017.017 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-27 08:47:40,395.395 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 08:47:40,397.397 INFO    ] Checking for system updates...
[2026-06-27 08:47:40,418.418 INFO    ] 200
[2026-06-27 08:47:40,419.419 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:47:40,455.455 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:47:40,456.456 INFO    ] No update needed
[2026-06-27 08:47:40,458.458 INFO    ] Checking for camera pi updates...
[2026-06-27 08:47:40,477.477 INFO    ] 200
[2026-06-27 08:47:40,479.479 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:47:40,506.506 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:47:40,544.544 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:47:40,545.545 INFO    ] No camera update needed
[2026-06-27 08:47:40,546.546 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:47:40,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:47:40,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:47:40,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:47:42,597.597 INFO    ] ================================================
[2026-06-27 08:47:42,613.613 INFO    ] Launching Daemon at Sat Jun 27 08:47:42 IST 2026
[2026-06-27 08:47:42,624.624 INFO    ] ================================================
[2026-06-27 08:47:42,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:47:42
[2026-06-27 08:47:43,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:47:43,419.419 INFO    ] Initializing speech engine...
[2026-06-27 08:47:43,426.426 INFO    ] 2026-06-27 08:47:43
[2026-06-27 08:47:43,638.638 INFO    ] 2026-06-27 08:47:43
[2026-06-27 08:47:43,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:47:43,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:47:43,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:47:43,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:47:44,052.052 INFO    ] time= 27/06/2026 08:47:43
[2026-06-27 08:47:44,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:47:44,081.081 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:47:44,152.152 INFO    ] No existing commands found in stream
[2026-06-27 08:47:49,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:47:49,168.168 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-27 08:47:53,005.005 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:47:53,007.007 INFO    ] Checking for system updates...
[2026-06-27 08:47:53,027.027 INFO    ] 200
[2026-06-27 08:47:53,029.029 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:47:53,061.061 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:47:53,063.063 INFO    ] No update needed
[2026-06-27 08:47:53,064.064 INFO    ] Checking for camera pi updates...
[2026-06-27 08:47:53,084.084 INFO    ] 200
[2026-06-27 08:47:53,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:47:53,109.109 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:47:53,156.156 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:47:53,157.157 INFO    ] No camera update needed
[2026-06-27 08:47:53,159.159 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:47:53,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:47:53,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:47:53,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:47:55,204.204 INFO    ] ================================================
[2026-06-27 08:47:55,220.220 INFO    ] Launching Daemon at Sat Jun 27 08:47:55 IST 2026
[2026-06-27 08:47:55,232.232 INFO    ] ================================================
[2026-06-27 08:47:55,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:47:55
[2026-06-27 08:47:55,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:47:56,041.041 INFO    ] Initializing speech engine...
[2026-06-27 08:47:56,051.051 INFO    ] 2026-06-27 08:47:56
[2026-06-27 08:47:56,259.259 INFO    ] 2026-06-27 08:47:56
[2026-06-27 08:47:56,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:47:56,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:47:56,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:47:56,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:47:56,700.700 INFO    ] time= 27/06/2026 08:47:56
[2026-06-27 08:47:56,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:47:56,708.708 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:47:56,773.773 INFO    ] No existing commands found in stream
[2026-06-27 08:48:01,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:48:01,786.786 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-27 08:48:04,928.928 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 08:48:04,929.929 INFO    ] Checking for system updates...
[2026-06-27 08:48:04,950.950 INFO    ] 200
[2026-06-27 08:48:04,952.952 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:48:04,985.985 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:48:04,986.986 INFO    ] No update needed
[2026-06-27 08:48:04,987.987 INFO    ] Checking for camera pi updates...
[2026-06-27 08:48:05,007.007 INFO    ] 200
[2026-06-27 08:48:05,008.008 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:48:05,034.034 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:48:05,070.070 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:48:05,071.071 INFO    ] No camera update needed
[2026-06-27 08:48:05,072.072 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:48:05,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:48:05,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:48:05,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:48:07,118.118 INFO    ] ================================================
[2026-06-27 08:48:07,134.134 INFO    ] Launching Daemon at Sat Jun 27 08:48:07 IST 2026
[2026-06-27 08:48:07,145.145 INFO    ] ================================================
[2026-06-27 08:48:07,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:48:07
[2026-06-27 08:48:07,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:48:07,972.972 INFO    ] Initializing speech engine...
[2026-06-27 08:48:07,977.977 INFO    ] 2026-06-27 08:48:07
[2026-06-27 08:48:08,182.182 INFO    ] 2026-06-27 08:48:08
[2026-06-27 08:48:08,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:48:08,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:48:08,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:48:08,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:48:08,599.599 INFO    ] time= 27/06/2026 08:48:08
[2026-06-27 08:48:08,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:48:08,628.628 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:48:08,696.696 INFO    ] No existing commands found in stream
[2026-06-27 08:48:13,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:48:13,711.711 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-27 08:48:16,027.027 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 08:48:16,028.028 INFO    ] Checking for system updates...
[2026-06-27 08:48:16,049.049 INFO    ] 200
[2026-06-27 08:48:16,050.050 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:48:16,081.081 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:48:16,082.082 INFO    ] No update needed
[2026-06-27 08:48:16,083.083 INFO    ] Checking for camera pi updates...
[2026-06-27 08:48:16,103.103 INFO    ] 200
[2026-06-27 08:48:16,104.104 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:48:16,128.128 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:48:16,167.167 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:48:16,169.169 INFO    ] No camera update needed
[2026-06-27 08:48:16,170.170 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:48:16,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:48:16,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:48:16,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:48:18,218.218 INFO    ] ================================================
[2026-06-27 08:48:18,233.233 INFO    ] Launching Daemon at Sat Jun 27 08:48:18 IST 2026
[2026-06-27 08:48:18,245.245 INFO    ] ================================================
[2026-06-27 08:48:18,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:48:18
[2026-06-27 08:48:18,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:48:19,052.052 INFO    ] Initializing speech engine...
[2026-06-27 08:48:19,065.065 INFO    ] 2026-06-27 08:48:19
[2026-06-27 08:48:19,272.272 INFO    ] 2026-06-27 08:48:19
[2026-06-27 08:48:19,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:48:19,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:48:19,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:48:19,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:48:19,691.691 INFO    ] time= 27/06/2026 08:48:19
[2026-06-27 08:48:19,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:48:19,719.719 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:48:19,786.786 INFO    ] No existing commands found in stream
[2026-06-27 08:48:24,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:48:24,798.798 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-27 08:48:25,805.805 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 08:48:25,807.807 INFO    ] Checking for system updates...
[2026-06-27 08:48:25,829.829 INFO    ] 200
[2026-06-27 08:48:25,831.831 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:48:25,869.869 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:48:25,871.871 INFO    ] No update needed
[2026-06-27 08:48:25,873.873 INFO    ] Checking for camera pi updates...
[2026-06-27 08:48:25,897.897 INFO    ] 200
[2026-06-27 08:48:25,899.899 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:48:25,931.931 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:48:25,981.981 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:48:25,982.982 INFO    ] No camera update needed
[2026-06-27 08:48:25,983.983 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:48:25,985.985 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:48:25,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:48:25,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:48:28,030.030 INFO    ] ================================================
[2026-06-27 08:48:28,046.046 INFO    ] Launching Daemon at Sat Jun 27 08:48:28 IST 2026
[2026-06-27 08:48:28,057.057 INFO    ] ================================================
[2026-06-27 08:48:28,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:48:28
[2026-06-27 08:48:28,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:48:28,860.860 INFO    ] Initializing speech engine...
[2026-06-27 08:48:28,865.865 INFO    ] 2026-06-27 08:48:28
[2026-06-27 08:48:29,079.079 INFO    ] 2026-06-27 08:48:29
[2026-06-27 08:48:29,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:48:29,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:48:29,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:48:29,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:48:29,507.507 INFO    ] time= 27/06/2026 08:48:29
[2026-06-27 08:48:29,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:48:29,558.558 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:48:29,634.634 INFO    ] No existing commands found in stream
[2026-06-27 08:48:34,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:48:34,646.646 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-27 08:48:37,385.385 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 08:48:37,387.387 INFO    ] Checking for system updates...
[2026-06-27 08:48:37,407.407 INFO    ] 200
[2026-06-27 08:48:37,409.409 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:48:37,443.443 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:48:37,445.445 INFO    ] No update needed
[2026-06-27 08:48:37,446.446 INFO    ] Checking for camera pi updates...
[2026-06-27 08:48:37,465.465 INFO    ] 200
[2026-06-27 08:48:37,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:48:37,490.490 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:48:37,530.530 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:48:37,531.531 INFO    ] No camera update needed
[2026-06-27 08:48:37,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:48:37,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:48:37,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:48:37,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:48:39,579.579 INFO    ] ================================================
[2026-06-27 08:48:39,595.595 INFO    ] Launching Daemon at Sat Jun 27 08:48:39 IST 2026
[2026-06-27 08:48:39,607.607 INFO    ] ================================================
[2026-06-27 08:48:39,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:48:39
[2026-06-27 08:48:40,293.293 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:48:40,431.431 INFO    ] Initializing speech engine...
[2026-06-27 08:48:40,442.442 INFO    ] 2026-06-27 08:48:40
[2026-06-27 08:48:40,647.647 INFO    ] 2026-06-27 08:48:40
[2026-06-27 08:48:40,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:48:40,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:48:40,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:48:40,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:48:41,060.060 INFO    ] time= 27/06/2026 08:48:41
[2026-06-27 08:48:41,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:48:41,090.090 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:48:41,161.161 INFO    ] No existing commands found in stream
[2026-06-27 08:48:46,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:48:46,197.197 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-27 08:48:50,570.570 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 08:48:50,571.571 INFO    ] Checking for system updates...
[2026-06-27 08:48:50,592.592 INFO    ] 200
[2026-06-27 08:48:50,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:48:50,627.627 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:48:50,628.628 INFO    ] No update needed
[2026-06-27 08:48:50,629.629 INFO    ] Checking for camera pi updates...
[2026-06-27 08:48:50,650.650 INFO    ] 200
[2026-06-27 08:48:50,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:48:50,675.675 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:48:50,712.712 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:48:50,713.713 INFO    ] No camera update needed
[2026-06-27 08:48:50,714.714 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:48:50,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:48:50,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:48:50,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:48:52,761.761 INFO    ] ================================================
[2026-06-27 08:48:52,776.776 INFO    ] Launching Daemon at Sat Jun 27 08:48:52 IST 2026
[2026-06-27 08:48:52,787.787 INFO    ] ================================================
[2026-06-27 08:48:53,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:48:53
[2026-06-27 08:48:53,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:48:53,584.584 INFO    ] Initializing speech engine...
[2026-06-27 08:48:53,589.589 INFO    ] 2026-06-27 08:48:53
[2026-06-27 08:48:53,794.794 INFO    ] 2026-06-27 08:48:53
[2026-06-27 08:48:53,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:48:54,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:48:54,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:48:54,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:48:54,223.223 INFO    ] time= 27/06/2026 08:48:54
[2026-06-27 08:48:54,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:48:54,250.250 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:48:54,316.316 INFO    ] No existing commands found in stream
[2026-06-27 08:48:59,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:48:59,329.329 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-27 08:49:03,325.325 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 08:49:03,327.327 INFO    ] Checking for system updates...
[2026-06-27 08:49:03,348.348 INFO    ] 200
[2026-06-27 08:49:03,350.350 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:49:03,381.381 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:49:03,382.382 INFO    ] No update needed
[2026-06-27 08:49:03,383.383 INFO    ] Checking for camera pi updates...
[2026-06-27 08:49:03,403.403 INFO    ] 200
[2026-06-27 08:49:03,404.404 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:49:03,429.429 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:49:03,471.471 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:49:03,472.472 INFO    ] No camera update needed
[2026-06-27 08:49:03,474.474 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:49:03,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:49:03,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:49:03,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:49:05,519.519 INFO    ] ================================================
[2026-06-27 08:49:05,536.536 INFO    ] Launching Daemon at Sat Jun 27 08:49:05 IST 2026
[2026-06-27 08:49:05,547.547 INFO    ] ================================================
[2026-06-27 08:49:05,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:49:05
[2026-06-27 08:49:06,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:49:06,327.327 INFO    ] Initializing speech engine...
[2026-06-27 08:49:06,334.334 INFO    ] 2026-06-27 08:49:06
[2026-06-27 08:49:06,544.544 INFO    ] 2026-06-27 08:49:06
[2026-06-27 08:49:06,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:49:06,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:49:06,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:49:06,900.900 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:49:06,954.954 INFO    ] time= 27/06/2026 08:49:06
[2026-06-27 08:49:06,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:49:06,997.997 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:49:07,069.069 INFO    ] No existing commands found in stream
[2026-06-27 08:49:12,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:49:12,081.081 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-27 08:49:12,680.680 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:49:12,682.682 INFO    ] Checking for system updates...
[2026-06-27 08:49:12,704.704 INFO    ] 200
[2026-06-27 08:49:12,706.706 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:49:12,742.742 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:49:12,743.743 INFO    ] No update needed
[2026-06-27 08:49:12,745.745 INFO    ] Checking for camera pi updates...
[2026-06-27 08:49:12,767.767 INFO    ] 200
[2026-06-27 08:49:12,768.768 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:49:12,794.794 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:49:12,831.831 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:49:12,832.832 INFO    ] No camera update needed
[2026-06-27 08:49:12,834.834 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:49:12,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:49:12,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:49:12,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:49:14,881.881 INFO    ] ================================================
[2026-06-27 08:49:14,897.897 INFO    ] Launching Daemon at Sat Jun 27 08:49:14 IST 2026
[2026-06-27 08:49:14,908.908 INFO    ] ================================================
[2026-06-27 08:49:15,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:49:15
[2026-06-27 08:49:15,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:49:15,683.683 INFO    ] Initializing speech engine...
[2026-06-27 08:49:15,687.687 INFO    ] 2026-06-27 08:49:15
[2026-06-27 08:49:15,906.906 INFO    ] 2026-06-27 08:49:15
[2026-06-27 08:49:15,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:49:16,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:49:16,132.132 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:49:16,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:49:16,334.334 INFO    ] time= 27/06/2026 08:49:16
[2026-06-27 08:49:16,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:49:16,363.363 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:49:16,429.429 INFO    ] No existing commands found in stream
[2026-06-27 08:49:21,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:49:21,442.442 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-27 08:49:24,695.695 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 08:49:24,696.696 INFO    ] Checking for system updates...
[2026-06-27 08:49:24,717.717 INFO    ] 200
[2026-06-27 08:49:24,718.718 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:49:24,750.750 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:49:24,751.751 INFO    ] No update needed
[2026-06-27 08:49:24,752.752 INFO    ] Checking for camera pi updates...
[2026-06-27 08:49:24,772.772 INFO    ] 200
[2026-06-27 08:49:24,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:49:24,799.799 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:49:24,936.936 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:49:24,938.938 INFO    ] No camera update needed
[2026-06-27 08:49:24,939.939 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:49:24,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:49:24,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:49:24,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:49:26,987.987 INFO    ] ================================================
[2026-06-27 08:49:27,003.003 INFO    ] Launching Daemon at Sat Jun 27 08:49:26 IST 2026
[2026-06-27 08:49:27,019.019 INFO    ] ================================================
[2026-06-27 08:49:27,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:49:27
[2026-06-27 08:49:27,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:49:27,835.835 INFO    ] Initializing speech engine...
[2026-06-27 08:49:27,840.840 INFO    ] 2026-06-27 08:49:27
[2026-06-27 08:49:28,027.027 INFO    ] 2026-06-27 08:49:28
[2026-06-27 08:49:28,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:49:28,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:49:28,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:49:28,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:49:28,481.481 INFO    ] time= 27/06/2026 08:49:28
[2026-06-27 08:49:28,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:49:28,511.511 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:49:28,611.611 INFO    ] No existing commands found in stream
[2026-06-27 08:49:33,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:49:33,625.625 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-27 08:49:35,486.486 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:49:35,487.487 INFO    ] Checking for system updates...
[2026-06-27 08:49:35,508.508 INFO    ] 200
[2026-06-27 08:49:35,509.509 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:49:35,540.540 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:49:35,541.541 INFO    ] No update needed
[2026-06-27 08:49:35,542.542 INFO    ] Checking for camera pi updates...
[2026-06-27 08:49:35,563.563 INFO    ] 200
[2026-06-27 08:49:35,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:49:35,588.588 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:49:35,635.635 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:49:35,636.636 INFO    ] No camera update needed
[2026-06-27 08:49:35,637.637 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:49:35,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:49:35,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:49:35,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:49:37,685.685 INFO    ] ================================================
[2026-06-27 08:49:37,700.700 INFO    ] Launching Daemon at Sat Jun 27 08:49:37 IST 2026
[2026-06-27 08:49:37,711.711 INFO    ] ================================================
[2026-06-27 08:49:38,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:49:38
[2026-06-27 08:49:38,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:49:38,526.526 INFO    ] Initializing speech engine...
[2026-06-27 08:49:38,532.532 INFO    ] 2026-06-27 08:49:38
[2026-06-27 08:49:38,737.737 INFO    ] 2026-06-27 08:49:38
[2026-06-27 08:49:38,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:49:38,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:49:38,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:49:39,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:49:39,185.185 INFO    ] time= 27/06/2026 08:49:39
[2026-06-27 08:49:39,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:49:39,193.193 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:49:39,260.260 INFO    ] No existing commands found in stream
[2026-06-27 08:49:44,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:49:44,273.273 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-27 08:49:45,859.859 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:49:45,860.860 INFO    ] Checking for system updates...
[2026-06-27 08:49:45,884.884 INFO    ] 200
[2026-06-27 08:49:45,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:49:45,918.918 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:49:45,920.920 INFO    ] No update needed
[2026-06-27 08:49:45,921.921 INFO    ] Checking for camera pi updates...
[2026-06-27 08:49:45,941.941 INFO    ] 200
[2026-06-27 08:49:45,942.942 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:49:45,967.967 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:49:46,007.007 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:49:46,009.009 INFO    ] No camera update needed
[2026-06-27 08:49:46,010.010 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:49:46,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:49:46,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:49:46,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:49:48,060.060 INFO    ] ================================================
[2026-06-27 08:49:48,076.076 INFO    ] Launching Daemon at Sat Jun 27 08:49:48 IST 2026
[2026-06-27 08:49:48,087.087 INFO    ] ================================================
[2026-06-27 08:49:48,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:49:48
[2026-06-27 08:49:48,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:49:48,918.918 INFO    ] Initializing speech engine...
[2026-06-27 08:49:48,924.924 INFO    ] 2026-06-27 08:49:48
[2026-06-27 08:49:49,134.134 INFO    ] 2026-06-27 08:49:49
[2026-06-27 08:49:49,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:49:49,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:49:49,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:49:49,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:49:49,564.564 INFO    ] time= 27/06/2026 08:49:49
[2026-06-27 08:49:49,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:49:49,594.594 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:49:49,661.661 INFO    ] No existing commands found in stream
[2026-06-27 08:49:54,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:49:54,679.679 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-27 08:49:58,784.784 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 08:49:58,785.785 INFO    ] Checking for system updates...
[2026-06-27 08:49:58,806.806 INFO    ] 200
[2026-06-27 08:49:58,808.808 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:49:58,839.839 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:49:58,841.841 INFO    ] No update needed
[2026-06-27 08:49:58,842.842 INFO    ] Checking for camera pi updates...
[2026-06-27 08:49:58,864.864 INFO    ] 200
[2026-06-27 08:49:58,865.865 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:49:58,891.891 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:49:58,930.930 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:49:58,932.932 INFO    ] No camera update needed
[2026-06-27 08:49:58,933.933 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:49:58,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:49:58,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:49:58,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:50:00,982.982 INFO    ] ================================================
[2026-06-27 08:50:01,998.998 INFO    ] Launching Daemon at Sat Jun 27 08:50:00 IST 2026
[2026-06-27 08:50:01,008.008 INFO    ] ================================================
[2026-06-27 08:50:01,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:50:01
[2026-06-27 08:50:01,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:50:02,266.266 INFO    ] Initializing speech engine...
[2026-06-27 08:50:02,268.268 INFO    ] 2026-06-27 08:50:02
[2026-06-27 08:50:02,509.509 INFO    ] 2026-06-27 08:50:02
[2026-06-27 08:50:02,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:50:02,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:50:02,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:50:02,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:50:02,990.990 INFO    ] time= 27/06/2026 08:50:02
[2026-06-27 08:50:02,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:50:02,997.997 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:50:03,065.065 INFO    ] No existing commands found in stream
[2026-06-27 08:50:08,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:50:08,079.079 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-27 08:50:10,815.815 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 08:50:10,816.816 INFO    ] Checking for system updates...
[2026-06-27 08:50:10,838.838 INFO    ] 200
[2026-06-27 08:50:10,840.840 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:50:10,871.871 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:50:10,872.872 INFO    ] No update needed
[2026-06-27 08:50:10,873.873 INFO    ] Checking for camera pi updates...
[2026-06-27 08:50:10,893.893 INFO    ] 200
[2026-06-27 08:50:10,895.895 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:50:10,920.920 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:50:10,965.965 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:50:10,967.967 INFO    ] No camera update needed
[2026-06-27 08:50:10,968.968 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:50:10,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:50:10,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:50:10,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:50:13,015.015 INFO    ] ================================================
[2026-06-27 08:50:13,030.030 INFO    ] Launching Daemon at Sat Jun 27 08:50:13 IST 2026
[2026-06-27 08:50:13,042.042 INFO    ] ================================================
[2026-06-27 08:50:13,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:50:13
[2026-06-27 08:50:13,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:50:13,847.847 INFO    ] Initializing speech engine...
[2026-06-27 08:50:13,852.852 INFO    ] 2026-06-27 08:50:13
[2026-06-27 08:50:14,057.057 INFO    ] 2026-06-27 08:50:14
[2026-06-27 08:50:14,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:50:14,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:50:14,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:50:14,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:50:14,476.476 INFO    ] time= 27/06/2026 08:50:14
[2026-06-27 08:50:14,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:50:14,505.505 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:50:14,572.572 INFO    ] No existing commands found in stream
[2026-06-27 08:50:19,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:50:19,585.585 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-27 08:50:20,025.025 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 08:50:20,026.026 INFO    ] Checking for system updates...
[2026-06-27 08:50:20,047.047 INFO    ] 200
[2026-06-27 08:50:20,049.049 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:50:20,081.081 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:50:20,083.083 INFO    ] No update needed
[2026-06-27 08:50:20,084.084 INFO    ] Checking for camera pi updates...
[2026-06-27 08:50:20,106.106 INFO    ] 200
[2026-06-27 08:50:20,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:50:20,133.133 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:50:20,170.170 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:50:20,171.171 INFO    ] No camera update needed
[2026-06-27 08:50:20,172.172 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:50:20,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:50:20,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:50:20,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:50:22,219.219 INFO    ] ================================================
[2026-06-27 08:50:22,235.235 INFO    ] Launching Daemon at Sat Jun 27 08:50:22 IST 2026
[2026-06-27 08:50:22,246.246 INFO    ] ================================================
[2026-06-27 08:50:22,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:50:22
[2026-06-27 08:50:22,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:50:23,105.105 INFO    ] Initializing speech engine...
[2026-06-27 08:50:23,111.111 INFO    ] 2026-06-27 08:50:23
[2026-06-27 08:50:23,320.320 INFO    ] 2026-06-27 08:50:23
[2026-06-27 08:50:23,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:50:23,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:50:23,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:50:23,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:50:23,746.746 INFO    ] time= 27/06/2026 08:50:23
[2026-06-27 08:50:23,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:50:23,774.774 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:50:23,842.842 INFO    ] No existing commands found in stream
[2026-06-27 08:50:28,426.426 INFO    ] Received new command: ID=1782530428194-0
[2026-06-27 08:50:28,429.429 INFO    ] process_and_cleanup_command: msg_id=1782530428194-0
[2026-06-27 08:50:28,432.432 INFO    ] is_command_expired: timestamp=2026-06-27T03:20:27.811Z, expiry=30s
[2026-06-27 08:50:28,516.516 INFO    ] Command removed from stream: 1782530428194-0. returning for processing...
[2026-06-27 08:50:28,518.518 INFO    ] ***** get_valid_command
[2026-06-27 08:50:28,521.521 INFO    ] {'source': 'webapp', 'timeout': '10', 'command': 'start-order', 'timestamp': '2026-06-27T03:20:27.811Z', 'data': '{"request_id":"start-order-1782530427810-wjagxndv5","orderId":"TM06202304260627084943221","is_vending":false}'}
[2026-06-27 08:50:28,524.524 INFO    ] ***** Parsed command data: {'is_vending': False, 'request_id': 'start-order-1782530427810-wjagxndv5', 'orderId': 'TM06202304260627084943221'}
[2026-06-27 08:50:28,527.527 INFO    ] Handling start order...
[2026-06-27 08:50:28,530.530 INFO    ] handle_start_order_command
[2026-06-27 08:50:28,536.536 INFO    ] _send_start_order_success: request_id=start-order-1782530427810-wjagxndv5, order_id=TM06202304260627084943221
[2026-06-27 08:50:28,539.539 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM06202304
[2026-06-27 08:50:28,604.604 INFO    ] [_send_start_order_success] Message added to stream with ID: 1782530428564-0
[2026-06-27 08:50:28,607.607 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-27 08:50:28,609.609 INFO    ] Checking for system updates...
[2026-06-27 08:50:28,662.662 INFO    ] 200
[2026-06-27 08:50:28,665.665 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:50:28,707.707 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:50:28,708.708 INFO    ] No update needed
[2026-06-27 08:50:28,710.710 INFO    ] Checking for camera pi updates...
[2026-06-27 08:50:28,730.730 INFO    ] 200
[2026-06-27 08:50:28,732.732 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:50:28,757.757 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:50:28,798.798 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:50:28,800.800 INFO    ] No camera update needed
[2026-06-27 08:50:28,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:50:28,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:50:28,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:50:28,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:50:30,847.847 INFO    ] ================================================
[2026-06-27 08:50:30,862.862 INFO    ] Launching Daemon at Sat Jun 27 08:50:30 IST 2026
[2026-06-27 08:50:30,874.874 INFO    ] ================================================
[2026-06-27 08:50:31,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:50:31
[2026-06-27 08:50:31,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:50:31,761.761 INFO    ] Initializing speech engine...
[2026-06-27 08:50:31,769.769 INFO    ] 2026-06-27 08:50:31
[2026-06-27 08:50:32,003.003 INFO    ] 2026-06-27 08:50:31
[2026-06-27 08:50:32,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:50:32,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:50:32,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:50:32,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:50:32,449.449 INFO    ] time= 27/06/2026 08:50:32
[2026-06-27 08:50:32,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:50:32,482.482 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:50:32,551.551 INFO    ] Found 2 existing command(s) in stream
[2026-06-27 08:50:32,558.558 INFO    ] Checking historical command: ID=1782530428564-0
[2026-06-27 08:50:32,578.578 INFO    ] process_and_cleanup_command: msg_id=1782530428564-0
[2026-06-27 08:50:32,585.585 INFO    ] is_command_expired: timestamp=2026-06-27T03:20:28.538026Z, expiry=30s
[2026-06-27 08:50:32,689.689 INFO    ] Command removed from stream: 1782530428564-0. returning for processing...
[2026-06-27 08:50:32,693.693 INFO    ] ***** get_valid_command
[2026-06-27 08:50:32,697.697 INFO    ] {'status': 'success', 'message': 'start-order success', 'message_type': 'command_response', 'timestamp': '2026-06-27T03:20:28.538026Z', 'metadata_request_id': 'start-order-1782530427810-wjagxndv5', 'metadata_order_id': 'TM06202304260627084943221', 'imei': 'TM06202304'}
[2026-06-27 08:50:32,702.702 INFO    ] Checking historical command: ID=1782530430419-0
[2026-06-27 08:50:32,706.706 INFO    ] process_and_cleanup_command: msg_id=1782530430419-0
[2026-06-27 08:50:32,710.710 INFO    ] is_command_expired: timestamp=2026-06-27T03:20:30.016Z, expiry=30s
[2026-06-27 08:50:32,779.779 INFO    ] Command removed from stream: 1782530430419-0. returning for processing...
[2026-06-27 08:50:32,782.782 INFO    ] ***** get_valid_command
[2026-06-27 08:50:32,788.788 INFO    ] {'command': 'process-order', 'data': '{"request_id":"process-order-1782530430015-7l9b2e9x9","orderId":"TM06202304260627084943221","is_vending":false,"accessCode":"13458366"}', 'timestamp': '2026-06-27T03:20:30.016Z', 'source': 'webapp', 'timeout': '60'}
[2026-06-27 08:50:32,791.791 INFO    ] ***** Parsed command data: {'orderId': 'TM06202304260627084943221', 'request_id': 'process-order-1782530430015-7l9b2e9x9', 'accessCode': '13458366', 'is_vending': False}
[2026-06-27 08:50:32,795.795 INFO    ] Handling process order...
[2026-06-27 08:50:32,800.800 INFO    ] Processing process-order command...
[2026-06-27 08:50:32,808.808 INFO    ] 🔍 Lock file Order ID: TM06202304260627084943221, TS: 2026-06-27 08:50:28
[2026-06-27 08:50:32,819.819 INFO    ] ✅ Order lock valid for TM06202304260627084943221
[2026-06-27 08:50:32,823.823 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-27 08:50:32,827.827 INFO    ] processing access code 13458366 for order TM06202304260627084943221
[2026-06-27 08:50:32,834.834 INFO    ] 🔍 Lock file Order ID: TM06202304260627084943221, TS: 2026-06-27 08:50:28
[2026-06-27 08:50:32,839.839 INFO    ] ✅ Order lock valid for TM06202304260627084943221
[2026-06-27 08:50:32,841.841 INFO    ] 2026-06-27 08:50:32
[2026-06-27 08:50:32,913.913 INFO    ] 200
[2026-06-27 08:50:32,915.915 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:50:32,940.940 INFO    ] 13458366
[2026-06-27 08:50:32,966.966 INFO    ] 2026-06-27 08:50:32
[2026-06-27 08:50:32,969.969 INFO    ] session id :578478276
[2026-06-27 08:50:32,972.972 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=13458366&imei=TM06202304&session_id=578478276
[2026-06-27 08:50:33,693.693 INFO    ] 200
[2026-06-27 08:50:33,695.695 INFO    ] {"msg": "Order Data", "data": {"proposed_sku_json": [{"name": "McVities Cashew almond  Cookies 58gm", "mrp": "10", "unit_price": 10, "tray_id": "16", "door_id": "1", "offer_id": "", "offer_desc": "", "image_url": "https://images.tinymart.in/product/4500696-244.webp", "skuid": "4500696", "sku_total": 20, "qty": 2}], "order_id": "TM06202304260627084943221", "invoice_bill": "20", "access_code": "13458366", "bill_amount": "20", "mobile": "9307025019"}, "rstatus": true, "status": true}
[2026-06-27 08:50:33,701.701 INFO    ] 20
[2026-06-27 08:50:33,702.702 INFO    ] TM06202304260627084943221
[2026-06-27 08:50:33,704.704 INFO    ] 9307025019
[2026-06-27 08:50:33,705.705 INFO    ] 2026-06-27 08:50:33
[2026-06-27 08:50:33,706.706 INFO    ] Door Opening for user mobile ending with  five zero one nine 
[2026-06-27 08:50:33,708.708 INFO    ] Door Opening for user mobile ending with  five zero one nine 
[2026-06-27 08:50:33,709.709 INFO    ] e5d34bb554f40ac51d06d9898d86d541
[2026-06-27 08:50:33,711.711 INFO    ] 2026-06-27 08:50:33
[2026-06-27 08:50:33,712.712 INFO    ] playing audio file
[2026-06-27 08:50:33,722.722 INFO    ] 2026-06-27 08:50:33
[2026-06-27 08:50:33,724.724 INFO    ] 2026-06-27 08:50:33
[2026-06-27 08:50:33,726.726 INFO    ] publish_status: order_id=TM06202304260627084943221
[2026-06-27 08:50:33,728.728 INFO    ] [publish_status] Adding message to stream: order:TM06202304260627084943221
[2026-06-27 08:50:33,775.775 INFO    ] [publish_status] Message added to stream with ID: 1782530433736-0
[2026-06-27 08:50:33,777.777 INFO    ] Published to order:TM06202304260627084943221: {'server_response': '{"msg": "Order Data", "rstatus": true, "data": {"bill_amount": "20", "order_id": "TM06202304260627084943221", "invoice_bill": "20", "proposed_sku_json": [{"mrp": "10", "offer_id": "", "tray_id": "16", "door_id": "1", "qty": 2, "unit_price": 10, "sku_total": 20, "skuid": "4500696", "offer_desc": "", "image_url": "https://images.tinymart.in/product/4500696-244.webp", "name": "McVities Cashew almond  Cookies 58gm"}], "mobile": "9307025019", "access_code": "13458366"}, "status": true}', 'order_id': 'TM06202304260627084943221', 'timestamp': '2026-06-27T03:20:33.725498Z', 'server_status': 'order-started'} (ID: 1782530433736-0)
[2026-06-27 08:50:34,167.167 INFO    ] {'server_response': {'msg': 'Order Data', 'rstatus': True, 'data': {'bill_amount': '20', 'order_id': 'TM06202304260627084943221', 'invoice_bill': '20', 'proposed_sku_json': [{'mrp': '10', 'offer_id': '', 'tray_id': '16', 'door_id': '1', 'qty': 2, 'unit_price': 10, 'sku_total': 20, 'skuid': '4500696', 'offer_desc': '', 'image_url': 'https://images.tinymart.in/product/4500696-244.webp', 'name': 'McVities Cashew almond  Cookies 58gm'}], 'mobile': '9307025019', 'access_code': '13458366'}, 'status': True}, 'order_id': 'TM06202304260627084943221', 'server_status': 'order-started'}
[2026-06-27 08:50:34,168.168 INFO    ] 200
[2026-06-27 08:50:34,170.170 INFO    ] {"data":{"server_response":{"msg":"Order Data","rstatus":true,"data":{"bill_amount":"20","order_id":"TM06202304260627084943221","invoice_bill":"20","proposed_sku_json":[{"mrp":"10","offer_id":"","tray_id":"16","door_id":"1","qty":2,"unit_price":10,"sku_total":20,"skuid":"4500696","offer_desc":"","image_url":"https:\/\/images.tinymart.in\/product\/4500696-244.webp","name":"McVities Cashew almond  Cookies 58gm"}],"mobile":"9307025019","access_code":"13458366"},"status":true},"order_id":"TM06202304260627084943221","server_status":"order-started"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-27 08:50:34,172.172 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully'}, 'data': {'server_response': {'msg': 'Order Data', 'rstatus': True, 'data': {'bill_amount': '20', 'order_id': 'TM06202304260627084943221', 'proposed_sku_json': [{'mrp': '10', 'unit_price': 10, 'offer_id': '', 'tray_id': '16', 'qty': 2, 'name': 'McVities Cashew almond  Cookies 58gm', 'door_id': '1', 'sku_total': 20, 'offer_desc': '', 'image_url': 'https://images.tinymart.in/product/4500696-244.webp', 'skuid': '4500696'}], 'invoice_bill': '20', 'mobile': '9307025019', 'access_code': '13458366'}, 'status': True}, 'order_id': 'TM06202304260627084943221', 'server_status': 'order-started'}}
[2026-06-27 08:50:34,173.173 INFO    ] 2026-06-27 08:50:34
[2026-06-27 08:50:34,201.201 INFO    ] 200
[2026-06-27 08:50:34,202.202 INFO    ] True
[2026-06-27 08:50:34,291.291 INFO    ] 200
[2026-06-27 08:50:34,293.293 INFO    ] {"SectionStatus": {"SubHeader": "Please wait while we process your order", "Note": "", "Header": " Your order is under process  ", "UI_Header": ""}, "voiceNote": "Please Wait", "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionMain": {"Header": "Processing Order"}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "rstatus": false, "status": "False"}
[2026-06-27 08:50:34,295.295 INFO    ] {'status': 'False', 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Note': '', 'UI_Header': '', 'Header': ' Your order is under process  '}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait', 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}}
[2026-06-27 08:50:34,296.296 INFO    ] *** process_order ***
[2026-06-27 08:50:35,369.369 INFO    ] 200
[2026-06-27 08:50:35,370.370 INFO    ] {"SectionStatus": {"SubHeader": "Please wait while we process your order", "Note": "", "Header": " Your order is under process  ", "UI_Header": ""}, "voiceNote": "Please Wait", "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionMain": {"Header": "Processing Order"}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "rstatus": false, "status": "False"}
[2026-06-27 08:50:35,372.372 INFO    ] {'status': 'False', 'rstatus': False, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Note': '', 'UI_Header': '', 'Header': ' Your order is under process  '}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait', 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}}
[2026-06-27 08:50:35,373.373 INFO    ] *** process_order ***
[2026-06-27 08:50:36,503.503 INFO    ] 200
[2026-06-27 08:50:36,505.505 INFO    ] {"SectionStatus": {"SubHeader": "Please wait while we process your order", "Note": "", "Header": " Your order is under process  ", "UI_Header": ""}, "voiceNote": "Please Wait", "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionMain": {"Header": "Processing Order"}, "rstatus": true, "delay": 0, "status": "True"}
[2026-06-27 08:50:36,506.506 INFO    ] {'status': 'True', 'rstatus': True, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Note': '', 'UI_Header': '', 'Header': ' Your order is under process  '}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait'}
[2026-06-27 08:50:36,508.508 INFO    ] *** process_order ***
[2026-06-27 08:50:36,509.509 INFO    ] publish_status: order_id=TM06202304260627084943221
[2026-06-27 08:50:36,510.510 INFO    ] [publish_status] Adding message to stream: order:TM06202304260627084943221
[2026-06-27 08:50:36,603.603 INFO    ] [publish_status] Message added to stream with ID: 1782530436564-0
[2026-06-27 08:50:36,604.604 INFO    ] Published to order:TM06202304260627084943221: {'server_response': '{"status": "True", "rstatus": true, "SectionStatus": {"SubHeader": "You can pull the door now.", "Note": "", "UI_Header": "", "Header": " Your order is under process  "}, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "delay": 0, "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Door is open..."}', 'order_id': 'TM06202304260627084943221', 'server_status': 'doorOpened'} (ID: 1782530436564-0)
[2026-06-27 08:50:37,669.669 INFO    ] 2026-06-27 08:50:37
[2026-06-27 08:50:37,671.671 INFO    ] publish_status: order_id=TM06202304260627084943221
[2026-06-27 08:50:37,672.672 INFO    ] [publish_status] Adding message to stream: order:TM06202304260627084943221
[2026-06-27 08:50:37,739.739 INFO    ] [publish_status] Message added to stream with ID: 1782530437700-0
[2026-06-27 08:50:37,742.742 INFO    ] Published to order:TM06202304260627084943221: {'server_response': '{"status": "True", "rstatus": true, "SectionStatus": {"SubHeader": "Please wait while we process your order", "Note": "", "UI_Header": "", "Header": " Your order is under process  "}, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "delay": 0, "SectionMain": {"Header": "Processing Order"}, "voiceNote": "Please Wait"}', 'order_id': 'TM06202304260627084943221', 'timestamp': '2026-06-27T03:20:37.669930Z', 'server_status': 'processOrder'} (ID: 1782530437700-0)
[2026-06-27 08:50:37,871.871 INFO    ] {'server_response': {'status': 'True', 'rstatus': True, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Note': '', 'UI_Header': '', 'Header': ' Your order is under process  '}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait'}, 'order_id': 'TM06202304260627084943221', 'server_status': 'processOrder'}
[2026-06-27 08:50:37,874.874 INFO    ] 200
[2026-06-27 08:50:37,877.877 INFO    ] {"data":{"server_response":{"status":"true","rstatus":true,"SectionStatus":{"SubHeader":"Please wait while we process your order","Note":"","UI_Header":"","Header":" Your order is under process  "},"SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"},"delay":0,"SectionMain":{"Header":"Processing Order"},"voiceNote":"Please Wait"},"order_id":"TM06202304260627084943221","server_status":"processOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-27 08:50:37,880.880 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully'}, 'data': {'server_response': {'status': 'true', 'rstatus': True, 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'Note': '', 'Header': ' Your order is under process  ', 'UI_Header': ''}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'delay': 0, 'SectionMain': {'Header': 'Processing Order'}, 'voiceNote': 'Please Wait'}, 'order_id': 'TM06202304260627084943221', 'server_status': 'processOrder'}}
[2026-06-27 08:50:37,882.882 INFO    ] 2026-06-27 08:50:37
[2026-06-27 08:50:37,885.885 INFO    ] None
[2026-06-27 08:50:37,887.887 INFO    ] Opening Door now
[2026-06-27 08:50:37,890.890 INFO    ] Opening Door now
[2026-06-27 08:50:37,892.892 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-27 08:50:37,895.895 INFO    ] 2026-06-27 08:50:37
[2026-06-27 08:50:37,897.897 INFO    ] playing audio file
[2026-06-27 08:50:37,914.914 INFO    ] 2026-06-27 08:50:37
[2026-06-27 08:50:37,916.916 INFO    ] 2026-06-27 08:50:37
[2026-06-27 08:50:40,954.954 INFO    ] 200
[2026-06-27 08:50:40,955.955 INFO    ] {"SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 1", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW"}, "voiceNote": "Door 1 is open now", "SectionSKU": {"skus": [{"name": "McVities Cashew almond  Cookies 58gm", "qty": 2}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "rstatus": false, "status": "False"}
[2026-06-27 08:50:40,957.957 INFO    ] {'status': 'False', 'rstatus': False, 'SectionStatus': {'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', 'Header': 'Please Close Door 1'}, 'SectionSKU': {'skus': [{'qty': 2, 'name': 'McVities Cashew almond  Cookies 58gm'}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Door 1 is open now', 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}}
[2026-06-27 08:50:44,001.001 INFO    ] 200
[2026-06-27 08:50:44,003.003 INFO    ] {"SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 1", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW"}, "voiceNote": "Please close door 1", "SectionSKU": {"skus": [{"name": "McVities Cashew almond  Cookies 58gm", "qty": 2}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "rstatus": false, "status": "False"}
[2026-06-27 08:50:44,005.005 INFO    ] {'status': 'False', 'rstatus': False, 'SectionStatus': {'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', 'Header': 'Please Close Door 1'}, 'SectionSKU': {'skus': [{'qty': 2, 'name': 'McVities Cashew almond  Cookies 58gm'}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}}
[2026-06-27 08:50:47,040.040 INFO    ] 200
[2026-06-27 08:50:47,042.042 INFO    ] {"SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 1", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW"}, "voiceNote": "Please close door 1", "SectionSKU": {"skus": [{"name": "McVities Cashew almond  Cookies 58gm", "qty": 2}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "rstatus": false, "status": "False"}
[2026-06-27 08:50:47,043.043 INFO    ] Please close door 1
[2026-06-27 08:50:47,045.045 INFO    ] Please close door 1
[2026-06-27 08:50:47,046.046 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-27 08:50:47,048.048 INFO    ] 2026-06-27 08:50:47
[2026-06-27 08:50:47,049.049 INFO    ] playing audio file
[2026-06-27 08:50:47,059.059 INFO    ] 2026-06-27 08:50:47
[2026-06-27 08:50:47,062.062 INFO    ] publish_status: order_id=TM06202304260627084943221
[2026-06-27 08:50:47,063.063 INFO    ] [publish_status] Adding message to stream: order:TM06202304260627084943221
[2026-06-27 08:50:47,154.154 INFO    ] [publish_status] Message added to stream with ID: 1782530447115-0
[2026-06-27 08:50:47,155.155 INFO    ] Published to order:TM06202304260627084943221: {'server_response': '{"status": "False", "rstatus": false, "SectionStatus": {"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", "Header": "Please Close Door 1"}, "SectionSKU": {"skus": [{"qty": 2, "name": "McVities Cashew almond  Cookies 58gm"}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1", "error": {"code": 20001, "data": {}, "umessage": "In Progress", "tmessage": "In Progress"}}', 'order_id': 'TM06202304260627084943221', 'timestamp': '2026-06-27T03:20:47.060948Z', 'server_status': 'OrderStatus'} (ID: 1782530447115-0)
[2026-06-27 08:50:47,561.561 INFO    ] {'server_response': {'status': 'False', 'rstatus': False, 'SectionStatus': {'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', 'Header': 'Please Close Door 1'}, 'SectionSKU': {'skus': [{'qty': 2, 'name': 'McVities Cashew almond  Cookies 58gm'}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}}, 'order_id': 'TM06202304260627084943221', 'server_status': 'OrderStatus'}
[2026-06-27 08:50:47,563.563 INFO    ] 200
[2026-06-27 08:50:47,565.565 INFO    ] {"data":{"server_response":{"status":"false","rstatus":false,"SectionStatus":{"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","Header":"Please Close Door 1"},"SectionSKU":{"skus":[{"qty":2,"name":"McVities Cashew almond  Cookies 58gm"}],"Header":"Pick the below items from the door"},"SectionMain":{"Header":"Door Open"},"voiceNote":"Please close door 1","error":{"code":20001,"data":[],"umessage":"In Progress","tmessage":"In Progress"}},"order_id":"TM06202304260627084943221","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-27 08:50:47,567.567 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully'}, 'data': {'server_response': {'status': 'false', '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 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'SectionSKU': {'skus': [{'qty': 2, 'name': 'McVities Cashew almond  Cookies 58gm'}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'error': {'code': 20001, 'data': [], 'umessage': 'In Progress', 'tmessage': 'In Progress'}}, 'order_id': 'TM06202304260627084943221', 'server_status': 'OrderStatus'}}
[2026-06-27 08:50:47,569.569 INFO    ] {'status': 'False', 'rstatus': False, 'SectionStatus': {'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', 'Header': 'Please Close Door 1'}, 'SectionSKU': {'skus': [{'qty': 2, 'name': 'McVities Cashew almond  Cookies 58gm'}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}}
[2026-06-27 08:50:50,609.609 INFO    ] 200
[2026-06-27 08:50:50,611.611 INFO    ] {"SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 1", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW"}, "voiceNote": "Please close door 1", "SectionSKU": {"skus": [{"name": "McVities Cashew almond  Cookies 58gm", "qty": 2}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "rstatus": false, "status": "False"}
[2026-06-27 08:50:50,613.613 INFO    ] {'status': 'False', 'rstatus': False, 'SectionStatus': {'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', 'Header': 'Please Close Door 1'}, 'SectionSKU': {'skus': [{'qty': 2, 'name': 'McVities Cashew almond  Cookies 58gm'}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}}
[2026-06-27 08:50:53,642.642 INFO    ] 200
[2026-06-27 08:50:53,644.644 INFO    ] {"SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 1", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW"}, "voiceNote": "Please close door 1", "SectionSKU": {"skus": [{"name": "McVities Cashew almond  Cookies 58gm", "qty": 2}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "rstatus": false, "status": "False"}
[2026-06-27 08:50:53,646.646 INFO    ] {'status': 'False', 'rstatus': False, 'SectionStatus': {'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', 'Header': 'Please Close Door 1'}, 'SectionSKU': {'skus': [{'qty': 2, 'name': 'McVities Cashew almond  Cookies 58gm'}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}}
[2026-06-27 08:50:56,690.690 INFO    ] 200
[2026-06-27 08:50:56,692.692 INFO    ] {"SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 1", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW"}, "voiceNote": "Please close door 1", "SectionSKU": {"skus": [{"name": "McVities Cashew almond  Cookies 58gm", "qty": 2}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "rstatus": false, "status": "False"}
[2026-06-27 08:50:56,694.694 INFO    ] Please close door 1
[2026-06-27 08:50:56,696.696 INFO    ] Please close door 1
[2026-06-27 08:50:56,697.697 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-27 08:50:56,698.698 INFO    ] 2026-06-27 08:50:56
[2026-06-27 08:50:56,700.700 INFO    ] playing audio file
[2026-06-27 08:50:56,713.713 INFO    ] 2026-06-27 08:50:56
[2026-06-27 08:50:56,715.715 INFO    ] publish_status: order_id=TM06202304260627084943221
[2026-06-27 08:50:56,717.717 INFO    ] [publish_status] Adding message to stream: order:TM06202304260627084943221
[2026-06-27 08:50:56,808.808 INFO    ] [publish_status] Message added to stream with ID: 1782530456769-0
[2026-06-27 08:50:56,810.810 INFO    ] Published to order:TM06202304260627084943221: {'server_response': '{"status": "False", "rstatus": false, "SectionStatus": {"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", "Header": "Please Close Door 1"}, "SectionSKU": {"skus": [{"qty": 2, "name": "McVities Cashew almond  Cookies 58gm"}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "voiceNote": "Please close door 1", "error": {"code": 20001, "data": {}, "umessage": "In Progress", "tmessage": "In Progress"}}', 'order_id': 'TM06202304260627084943221', 'timestamp': '2026-06-27T03:20:56.714587Z', 'server_status': 'OrderStatus'} (ID: 1782530456769-0)
[2026-06-27 08:50:57,389.389 INFO    ] {'server_response': {'status': 'False', 'rstatus': False, 'SectionStatus': {'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', 'Header': 'Please Close Door 1'}, 'SectionSKU': {'skus': [{'qty': 2, 'name': 'McVities Cashew almond  Cookies 58gm'}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}}, 'order_id': 'TM06202304260627084943221', 'server_status': 'OrderStatus'}
[2026-06-27 08:50:57,391.391 INFO    ] 200
[2026-06-27 08:50:57,394.394 INFO    ] {"data":{"server_response":{"status":"false","rstatus":false,"SectionStatus":{"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","Header":"Please Close Door 1"},"SectionSKU":{"skus":[{"qty":2,"name":"McVities Cashew almond  Cookies 58gm"}],"Header":"Pick the below items from the door"},"SectionMain":{"Header":"Door Open"},"voiceNote":"Please close door 1","error":{"code":20001,"data":[],"umessage":"In Progress","tmessage":"In Progress"}},"order_id":"TM06202304260627084943221","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-27 08:50:57,398.398 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully'}, 'data': {'server_response': {'status': 'false', '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 1', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW'}, 'SectionSKU': {'skus': [{'qty': 2, 'name': 'McVities Cashew almond  Cookies 58gm'}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'error': {'code': 20001, 'data': [], 'umessage': 'In Progress', 'tmessage': 'In Progress'}}, 'order_id': 'TM06202304260627084943221', 'server_status': 'OrderStatus'}}
[2026-06-27 08:50:57,400.400 INFO    ] {'status': 'False', 'rstatus': False, 'SectionStatus': {'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', 'Header': 'Please Close Door 1'}, 'SectionSKU': {'skus': [{'qty': 2, 'name': 'McVities Cashew almond  Cookies 58gm'}], 'Header': 'Pick the below items from the door'}, 'SectionMain': {'Header': 'Door Open'}, 'voiceNote': 'Please close door 1', 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}}
[2026-06-27 08:51:00,438.438 INFO    ] 200
[2026-06-27 08:51:00,439.439 INFO    ] {"SectionStatus": {"SubHeader": "Please wait for invoice to generate", "Note": "If any due amount, clear at https://go.tinymart.in", "Header": " Order is complete ", "UI_Header": ""}, "voiceNote": "Transaction Completed", "SectionSKU": {"skus": [], "Header": "If you like us, tell others... else tell us"}, "SectionMain": {"Header": "Door Closed"}, "rstatus": true, "delay": 100, "status": "True"}
[2026-06-27 08:51:00,441.441 INFO    ] {'status': 'True', 'rstatus': True, 'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': '', 'Header': ' Order is complete '}, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'delay': 100, 'SectionMain': {'Header': 'Door Closed'}, 'voiceNote': 'Transaction Completed'}
[2026-06-27 08:51:00,443.443 INFO    ] 2026-06-27 08:51:00
[2026-06-27 08:51:00,445.445 INFO    ] Order Completed 
[2026-06-27 08:51:00,447.447 INFO    ] Order Completed 
[2026-06-27 08:51:00,448.448 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-27 08:51:00,450.450 INFO    ] 2026-06-27 08:51:00
[2026-06-27 08:51:00,451.451 INFO    ] playing audio file
[2026-06-27 08:51:00,461.461 INFO    ] 2026-06-27 08:51:00
[2026-06-27 08:51:00,462.462 INFO    ] {'status': 'True', 'rstatus': True, 'SectionStatus': {'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': '', 'Header': ' Order is complete '}, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'delay': 100, 'SectionMain': {'Header': 'Door Closed'}, 'voiceNote': 'Transaction Completed'}
[2026-06-27 08:51:00,464.464 INFO    ] 2026-06-27 08:51:00
[2026-06-27 08:51:00,811.811 INFO    ] 200
[2026-06-27 08:51:00,813.813 INFO    ] {"res": "True", "orderId": "TM06202304260627084943221", "total_amount": 20.0, "skus": [{"name": "McVities Bourbon Biiscuit 46gm per peice", "image_url": "https://images.tinymart.in/product/4500695-4594.jpg", "tray_id": "19", "mrp": "10", "qty": 2, "unit_price": "10", "skuid": "4500695", "sku_total": 20.0, "door_id": ""}], "anomaly": 0, "logic": "WBL", "rstatus": true}
[2026-06-27 08:51:00,815.815 INFO    ] {'orderId': 'TM06202304260627084943221', 'anomaly': 0, 'res': 'True', 'logic': 'WBL', 'skus': [{'door_id': '', 'mrp': '10', 'skuid': '4500695', 'tray_id': '19', 'unit_price': '10', 'qty': 2, 'sku_total': 20.0, 'image_url': 'https://images.tinymart.in/product/4500695-4594.jpg', 'name': 'McVities Bourbon Biiscuit 46gm per peice'}], 'rstatus': True, 'total_amount': 20.0}
[2026-06-27 08:51:00,816.816 INFO    ] {'orderId': 'TM06202304260627084943221', 'anomaly': 0, 'res': 'True', 'logic': 'WBL', 'skus': [{'door_id': '', 'mrp': '10', 'skuid': '4500695', 'tray_id': '19', 'unit_price': '10', 'qty': 2, 'sku_total': 20.0, 'image_url': 'https://images.tinymart.in/product/4500695-4594.jpg', 'name': 'McVities Bourbon Biiscuit 46gm per peice'}], 'rstatus': True, 'total_amount': 20.0}
[2026-06-27 08:51:00,817.817 INFO    ] 2026-06-27 08:51:00
[2026-06-27 08:51:00,819.819 INFO    ] 2026-06-27 08:51:00
[2026-06-27 08:51:00,820.820 INFO    ] 20
[2026-06-27 08:51:00,821.821 INFO    ] 2026-06-27 08:51:00
[2026-06-27 08:51:00,822.822 INFO    ] 2026-06-27 08:51:00
[2026-06-27 08:51:00,824.824 INFO    ]  Your Bill Amount is 20
[2026-06-27 08:51:00,825.825 INFO    ]  Your Bill Amount is 20
[2026-06-27 08:51:00,827.827 INFO    ] 69e7720cf62ffa67ab0522541575e508
[2026-06-27 08:51:00,828.828 INFO    ] 2026-06-27 08:51:00
[2026-06-27 08:51:00,830.830 INFO    ] playing audio file
[2026-06-27 08:51:00,840.840 INFO    ] 2026-06-27 08:51:00
[2026-06-27 08:51:00,842.842 INFO    ] 2026-06-27 08:51:00
[2026-06-27 08:51:00,844.844 INFO    ] publish_status: order_id=TM06202304260627084943221
[2026-06-27 08:51:00,845.845 INFO    ] [publish_status] Adding message to stream: order:TM06202304260627084943221
[2026-06-27 08:51:00,907.907 INFO    ] [publish_status] Message added to stream with ID: 1782530460869-0
[2026-06-27 08:51:00,909.909 INFO    ] Published to order:TM06202304260627084943221: {'server_response': '{"orderId": "TM06202304260627084943221", "anomaly": 0, "res": "True", "logic": "WBL", "skus": [{"door_id": "", "mrp": "10", "skuid": "4500695", "tray_id": "19", "unit_price": "10", "qty": 2, "sku_total": 20.0, "image_url": "https://images.tinymart.in/product/4500695-4594.jpg", "name": "McVities Bourbon Biiscuit 46gm per peice"}], "rstatus": true, "total_amount": 20.0}', 'order_id': 'TM06202304260627084943221', 'timestamp': '2026-06-27T03:21:00.842847Z', 'server_status': 'invoiceOrder'} (ID: 1782530460869-0)
[2026-06-27 08:51:01,048.048 INFO    ] {'server_response': {'orderId': 'TM06202304260627084943221', 'anomaly': 0, 'res': 'True', 'logic': 'WBL', 'skus': [{'door_id': '', 'mrp': '10', 'skuid': '4500695', 'tray_id': '19', 'unit_price': '10', 'qty': 2, 'sku_total': 20.0, 'image_url': 'https://images.tinymart.in/product/4500695-4594.jpg', 'name': 'McVities Bourbon Biiscuit 46gm per peice'}], 'rstatus': True, 'total_amount': 20.0}, 'order_id': 'TM06202304260627084943221', 'server_status': 'invoiceOrder'}
[2026-06-27 08:51:01,050.050 INFO    ] 200
[2026-06-27 08:51:01,051.051 INFO    ] {"data":{"server_response":{"orderId":"TM06202304260627084943221","anomaly":0,"res":"true","logic":"WBL","skus":[{"door_id":"","mrp":"10","skuid":"4500695","tray_id":"19","unit_price":"10","qty":2,"sku_total":20,"image_url":"https:\/\/images.tinymart.in\/product\/4500695-4594.jpg","name":"McVities Bourbon Biiscuit 46gm per peice"}],"rstatus":true,"total_amount":20},"order_id":"TM06202304260627084943221","server_status":"invoiceOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-27 08:51:01,052.052 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully'}, 'data': {'server_response': {'orderId': 'TM06202304260627084943221', 'anomaly': 0, 'res': 'true', 'logic': 'WBL', 'skus': [{'mrp': '10', 'skuid': '4500695', 'tray_id': '19', 'unit_price': '10', 'name': 'McVities Bourbon Biiscuit 46gm per peice', 'door_id': '', 'sku_total': 20, 'image_url': 'https://images.tinymart.in/product/4500695-4594.jpg', 'qty': 2}], 'rstatus': True, 'total_amount': 20}, 'order_id': 'TM06202304260627084943221', 'server_status': 'invoiceOrder'}}
[2026-06-27 08:51:01,054.054 INFO    ] {'response': {'status': True, 'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'msg': 'order updated successfully'}, 'data': {'server_response': {'orderId': 'TM06202304260627084943221', 'anomaly': 0, 'res': 'true', 'logic': 'WBL', 'skus': [{'mrp': '10', 'skuid': '4500695', 'tray_id': '19', 'unit_price': '10', 'name': 'McVities Bourbon Biiscuit 46gm per peice', 'door_id': '', 'sku_total': 20, 'image_url': 'https://images.tinymart.in/product/4500695-4594.jpg', 'qty': 2}], 'rstatus': True, 'total_amount': 20}, 'order_id': 'TM06202304260627084943221', 'server_status': 'invoiceOrder'}}
[2026-06-27 08:51:01,055.055 INFO    ] 2026-06-27 08:51:01
[2026-06-27 08:51:05,646.646 INFO    ] 200
[2026-06-27 08:51:05,648.648 INFO    ] {"status": true, "orders_synced": [], "orders_data": [], "orders": [], "order_items": [], "orders_data_synced": [], "tray_synced": ["TM06202304260627084943221", "TM06202304260627084943221", "TM06202304260627084943221", "TM06202304260627084943221", "TM06202304260627084943221", "TM06202304260627084943221", "TM06202304260627084943221", "TM06202304260627084943221", "TM06202304260627084943221", "TM06202304260627084943221", "TM06202304260627084943221", "TM06202304260627084943221", "TM06202304260627084943221", "TM06202304260627084943221", "TM06202304260627084943221", "TM06202304260627084943221", "TM06202304260627084943221", "TM06202304260627084943221", "TM06202304260627084943221", "TM06202304260627084943221", "TM06202304260627084943221", "TM06202304260627084943221", "TM06202304260627084943221", "TM06202304260627084943221", "TM06202304260627084943221", "TM06202304260627084943221", "TM06202304260627084943221", "TM06202304260627084943221", "TM06202304260627084943221", "TM06202304260627084943221", "TM06202304260627084943221", "TM06202304260627084943221", "TM06202304260627084943221"], "tray_sync": [], "order_items_synced": []}
[2026-06-27 08:51:05,649.649 INFO    ] 2026-06-27 08:51:05
[2026-06-27 08:51:05,731.731 INFO    ] 200
[2026-06-27 08:51:05,732.732 INFO    ] True
[2026-06-27 08:51:05,734.734 INFO    ] cleanup_start_order_file_after_processing: order_id=TM06202304260627084943221
[2026-06-27 08:51:05,736.736 INFO    ] start order file deleted
[2026-06-27 08:51:05,737.737 INFO    ] Checking for system updates...
[2026-06-27 08:51:05,762.762 INFO    ] 200
[2026-06-27 08:51:05,764.764 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:51:05,802.802 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:51:05,803.803 INFO    ] No update needed
[2026-06-27 08:51:05,805.805 INFO    ] Checking for camera pi updates...
[2026-06-27 08:51:05,824.824 INFO    ] 200
[2026-06-27 08:51:05,825.825 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:51:05,856.856 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:51:05,884.884 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:51:05,885.885 INFO    ] No camera update needed
[2026-06-27 08:51:05,887.887 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:51:05,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:51:05,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:51:05,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:51:07,929.929 INFO    ] ================================================
[2026-06-27 08:51:07,946.946 INFO    ] Launching Daemon at Sat Jun 27 08:51:07 IST 2026
[2026-06-27 08:51:07,957.957 INFO    ] ================================================
[2026-06-27 08:51:08,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:51:08
[2026-06-27 08:51:08,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:51:08,763.763 INFO    ] Initializing speech engine...
[2026-06-27 08:51:08,771.771 INFO    ] 2026-06-27 08:51:08
[2026-06-27 08:51:08,982.982 INFO    ] 2026-06-27 08:51:08
[2026-06-27 08:51:09,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:51:09,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:51:09,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:51:09,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:51:09,381.381 INFO    ] time= 27/06/2026 08:51:09
[2026-06-27 08:51:09,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:51:09,431.431 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:51:09,502.502 INFO    ] No existing commands found in stream
[2026-06-27 08:51:14,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:51:14,513.513 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-27 08:51:15,256.256 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 08:51:15,257.257 INFO    ] Checking for system updates...
[2026-06-27 08:51:15,279.279 INFO    ] 200
[2026-06-27 08:51:15,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:51:15,311.311 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:51:15,312.312 INFO    ] No update needed
[2026-06-27 08:51:15,314.314 INFO    ] Checking for camera pi updates...
[2026-06-27 08:51:15,336.336 INFO    ] 200
[2026-06-27 08:51:15,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:51:15,362.362 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:51:15,399.399 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:51:15,401.401 INFO    ] No camera update needed
[2026-06-27 08:51:15,402.402 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:51:15,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:51:15,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:51:15,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:51:17,449.449 INFO    ] ================================================
[2026-06-27 08:51:17,464.464 INFO    ] Launching Daemon at Sat Jun 27 08:51:17 IST 2026
[2026-06-27 08:51:17,476.476 INFO    ] ================================================
[2026-06-27 08:51:17,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:51:17
[2026-06-27 08:51:18,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:51:18,277.277 INFO    ] Initializing speech engine...
[2026-06-27 08:51:18,282.282 INFO    ] 2026-06-27 08:51:18
[2026-06-27 08:51:18,498.498 INFO    ] 2026-06-27 08:51:18
[2026-06-27 08:51:18,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:51:18,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:51:18,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:51:18,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:51:18,912.912 INFO    ] time= 27/06/2026 08:51:18
[2026-06-27 08:51:18,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:51:18,946.946 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:51:19,018.018 INFO    ] No existing commands found in stream
[2026-06-27 08:51:24,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:51:24,028.028 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-27 08:51:26,813.813 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:51:26,815.815 INFO    ] Checking for system updates...
[2026-06-27 08:51:26,836.836 INFO    ] 200
[2026-06-27 08:51:26,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-27 08:51:26,838.838 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-27 08:51:26,840.840 INFO    ] Checking for camera pi updates...
[2026-06-27 08:51:29,906.906 INFO    ] 200
[2026-06-27 08:51:29,909.909 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-27 08:51:29,912.912 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-27 08:51:29,914.914 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:51:29,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:51:29,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:51:29,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:51:31,955.955 INFO    ] ================================================
[2026-06-27 08:51:31,964.964 INFO    ] Launching Daemon at Sat Jun 27 08:51:31 IST 2026
[2026-06-27 08:51:31,970.970 INFO    ] ================================================
[2026-06-27 08:51:32,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:51:32
[2026-06-27 08:51:32,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:51:32,736.736 INFO    ] Initializing speech engine...
[2026-06-27 08:51:32,749.749 INFO    ] 2026-06-27 08:51:32
[2026-06-27 08:51:32,973.973 INFO    ] 2026-06-27 08:51:32
[2026-06-27 08:51:33,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:51:33,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:51:33,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:51:33,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:51:33,438.438 INFO    ] time= 27/06/2026 08:51:33
[2026-06-27 08:51:33,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:51:33,472.472 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:51:33,571.571 INFO    ] No existing commands found in stream
[2026-06-27 08:51:38,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:51:38,583.583 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-27 08:51:41,122.122 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:51:41,123.123 INFO    ] Checking for system updates...
[2026-06-27 08:51:41,144.144 INFO    ] 200
[2026-06-27 08:51:41,145.145 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:51:41,176.176 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:51:41,177.177 INFO    ] No update needed
[2026-06-27 08:51:41,178.178 INFO    ] Checking for camera pi updates...
[2026-06-27 08:51:41,201.201 INFO    ] 200
[2026-06-27 08:51:41,203.203 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:51:41,228.228 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:51:41,279.279 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:51:41,280.280 INFO    ] No camera update needed
[2026-06-27 08:51:41,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:51:41,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:51:41,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:51:41,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:51:43,327.327 INFO    ] ================================================
[2026-06-27 08:51:43,343.343 INFO    ] Launching Daemon at Sat Jun 27 08:51:43 IST 2026
[2026-06-27 08:51:43,353.353 INFO    ] ================================================
[2026-06-27 08:51:43,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:51:43
[2026-06-27 08:51:44,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:51:44,205.205 INFO    ] Initializing speech engine...
[2026-06-27 08:51:44,209.209 INFO    ] 2026-06-27 08:51:44
[2026-06-27 08:51:44,417.417 INFO    ] 2026-06-27 08:51:44
[2026-06-27 08:51:44,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:51:44,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:51:44,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:51:44,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:51:44,836.836 INFO    ] time= 27/06/2026 08:51:44
[2026-06-27 08:51:44,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:51:44,865.865 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:51:44,933.933 INFO    ] No existing commands found in stream
[2026-06-27 08:51:49,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:51:49,946.946 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-27 08:51:52,471.471 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:51:52,472.472 INFO    ] Checking for system updates...
[2026-06-27 08:51:52,495.495 INFO    ] 200
[2026-06-27 08:51:52,496.496 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:51:52,530.530 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:51:52,531.531 INFO    ] No update needed
[2026-06-27 08:51:52,533.533 INFO    ] Checking for camera pi updates...
[2026-06-27 08:51:52,553.553 INFO    ] 200
[2026-06-27 08:51:52,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:51:52,580.580 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:51:52,625.625 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:51:52,627.627 INFO    ] No camera update needed
[2026-06-27 08:51:52,628.628 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:51:52,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:51:52,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:51:52,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:51:54,675.675 INFO    ] ================================================
[2026-06-27 08:51:54,690.690 INFO    ] Launching Daemon at Sat Jun 27 08:51:54 IST 2026
[2026-06-27 08:51:54,701.701 INFO    ] ================================================
[2026-06-27 08:51:55,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:51:55
[2026-06-27 08:51:55,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:51:55,512.512 INFO    ] Initializing speech engine...
[2026-06-27 08:51:55,515.515 INFO    ] 2026-06-27 08:51:55
[2026-06-27 08:51:55,733.733 INFO    ] 2026-06-27 08:51:55
[2026-06-27 08:51:55,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:51:55,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:51:55,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:51:56,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:51:56,147.147 INFO    ] time= 27/06/2026 08:51:56
[2026-06-27 08:51:56,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:51:56,180.180 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:51:56,246.246 INFO    ] No existing commands found in stream
[2026-06-27 08:52:01,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:52:01,259.259 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-27 08:52:03,922.922 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 08:52:03,923.923 INFO    ] Checking for system updates...
[2026-06-27 08:52:03,944.944 INFO    ] 200
[2026-06-27 08:52:03,945.945 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:52:03,979.979 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:52:03,980.980 INFO    ] No update needed
[2026-06-27 08:52:03,981.981 INFO    ] Checking for camera pi updates...
[2026-06-27 08:52:04,002.002 INFO    ] 200
[2026-06-27 08:52:04,003.003 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:52:04,029.029 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:52:04,067.067 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:52:04,068.068 INFO    ] No camera update needed
[2026-06-27 08:52:04,070.070 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:52:04,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:52:04,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:52:04,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:52:06,115.115 INFO    ] ================================================
[2026-06-27 08:52:06,131.131 INFO    ] Launching Daemon at Sat Jun 27 08:52:06 IST 2026
[2026-06-27 08:52:06,142.142 INFO    ] ================================================
[2026-06-27 08:52:06,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:52:06
[2026-06-27 08:52:06,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:52:06,936.936 INFO    ] Initializing speech engine...
[2026-06-27 08:52:06,941.941 INFO    ] 2026-06-27 08:52:06
[2026-06-27 08:52:07,149.149 INFO    ] 2026-06-27 08:52:07
[2026-06-27 08:52:07,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:52:07,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:52:07,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:52:07,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:52:07,592.592 INFO    ] time= 27/06/2026 08:52:07
[2026-06-27 08:52:07,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:52:07,600.600 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:52:07,666.666 INFO    ] No existing commands found in stream
[2026-06-27 08:52:12,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:52:12,678.678 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-27 08:52:15,252.252 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 08:52:15,254.254 INFO    ] Checking for system updates...
[2026-06-27 08:52:15,276.276 INFO    ] 200
[2026-06-27 08:52:15,277.277 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:52:15,308.308 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:52:15,309.309 INFO    ] No update needed
[2026-06-27 08:52:15,310.310 INFO    ] Checking for camera pi updates...
[2026-06-27 08:52:15,332.332 INFO    ] 200
[2026-06-27 08:52:15,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:52:15,357.357 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:52:15,395.395 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:52:15,396.396 INFO    ] No camera update needed
[2026-06-27 08:52:15,398.398 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:52:15,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:52:15,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:52:15,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:52:17,444.444 INFO    ] ================================================
[2026-06-27 08:52:17,459.459 INFO    ] Launching Daemon at Sat Jun 27 08:52:17 IST 2026
[2026-06-27 08:52:17,470.470 INFO    ] ================================================
[2026-06-27 08:52:17,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:52:17
[2026-06-27 08:52:18,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:52:18,264.264 INFO    ] Initializing speech engine...
[2026-06-27 08:52:18,274.274 INFO    ] 2026-06-27 08:52:18
[2026-06-27 08:52:18,488.488 INFO    ] 2026-06-27 08:52:18
[2026-06-27 08:52:18,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:52:18,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:52:18,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:52:18,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:52:18,881.881 INFO    ] time= 27/06/2026 08:52:18
[2026-06-27 08:52:18,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:52:18,935.935 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:52:19,002.002 INFO    ] No existing commands found in stream
[2026-06-27 08:52:24,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:52:24,014.014 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-27 08:52:25,926.926 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:52:25,927.927 INFO    ] Checking for system updates...
[2026-06-27 08:52:25,950.950 INFO    ] 200
[2026-06-27 08:52:25,951.951 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:52:25,987.987 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:52:25,989.989 INFO    ] No update needed
[2026-06-27 08:52:25,990.990 INFO    ] Checking for camera pi updates...
[2026-06-27 08:52:26,014.014 INFO    ] 200
[2026-06-27 08:52:26,016.016 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:52:26,039.039 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:52:26,083.083 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:52:26,085.085 INFO    ] No camera update needed
[2026-06-27 08:52:26,086.086 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:52:26,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:52:26,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:52:26,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:52:28,133.133 INFO    ] ================================================
[2026-06-27 08:52:28,148.148 INFO    ] Launching Daemon at Sat Jun 27 08:52:28 IST 2026
[2026-06-27 08:52:28,159.159 INFO    ] ================================================
[2026-06-27 08:52:28,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:52:28
[2026-06-27 08:52:28,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:52:28,979.979 INFO    ] Initializing speech engine...
[2026-06-27 08:52:28,987.987 INFO    ] 2026-06-27 08:52:28
[2026-06-27 08:52:29,201.201 INFO    ] 2026-06-27 08:52:29
[2026-06-27 08:52:29,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:52:29,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:52:29,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:52:29,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:52:29,622.622 INFO    ] time= 27/06/2026 08:52:29
[2026-06-27 08:52:29,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:52:29,652.652 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:52:29,720.720 INFO    ] No existing commands found in stream
[2026-06-27 08:52:34,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:52:34,732.732 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-27 08:52:39,130.130 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 08:52:39,131.131 INFO    ] Checking for system updates...
[2026-06-27 08:52:39,154.154 INFO    ] 200
[2026-06-27 08:52:39,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:52:39,189.189 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:52:39,191.191 INFO    ] No update needed
[2026-06-27 08:52:39,192.192 INFO    ] Checking for camera pi updates...
[2026-06-27 08:52:39,213.213 INFO    ] 200
[2026-06-27 08:52:39,214.214 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:52:39,240.240 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:52:39,286.286 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:52:39,287.287 INFO    ] No camera update needed
[2026-06-27 08:52:39,288.288 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:52:39,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:52:39,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:52:39,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:52:41,334.334 INFO    ] ================================================
[2026-06-27 08:52:41,348.348 INFO    ] Launching Daemon at Sat Jun 27 08:52:41 IST 2026
[2026-06-27 08:52:41,359.359 INFO    ] ================================================
[2026-06-27 08:52:41,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:52:41
[2026-06-27 08:52:42,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:52:42,179.179 INFO    ] Initializing speech engine...
[2026-06-27 08:52:42,182.182 INFO    ] 2026-06-27 08:52:42
[2026-06-27 08:52:42,401.401 INFO    ] 2026-06-27 08:52:42
[2026-06-27 08:52:42,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:52:42,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:52:42,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:52:42,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:52:42,822.822 INFO    ] time= 27/06/2026 08:52:42
[2026-06-27 08:52:42,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:52:42,851.851 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:52:42,919.919 INFO    ] No existing commands found in stream
[2026-06-27 08:52:47,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:52:47,930.930 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-27 08:52:48,537.537 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 08:52:48,538.538 INFO    ] Checking for system updates...
[2026-06-27 08:52:48,560.560 INFO    ] 200
[2026-06-27 08:52:48,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:52:48,592.592 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:52:48,594.594 INFO    ] No update needed
[2026-06-27 08:52:48,595.595 INFO    ] Checking for camera pi updates...
[2026-06-27 08:52:48,616.616 INFO    ] 200
[2026-06-27 08:52:48,617.617 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:52:48,641.641 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:52:48,680.680 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:52:48,681.681 INFO    ] No camera update needed
[2026-06-27 08:52:48,683.683 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:52:48,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:52:48,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:52:48,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:52:50,731.731 INFO    ] ================================================
[2026-06-27 08:52:50,746.746 INFO    ] Launching Daemon at Sat Jun 27 08:52:50 IST 2026
[2026-06-27 08:52:50,757.757 INFO    ] ================================================
[2026-06-27 08:52:51,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:52:51
[2026-06-27 08:52:51,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:52:51,537.537 INFO    ] Initializing speech engine...
[2026-06-27 08:52:51,541.541 INFO    ] 2026-06-27 08:52:51
[2026-06-27 08:52:51,742.742 INFO    ] 2026-06-27 08:52:51
[2026-06-27 08:52:51,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:52:51,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:52:52,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:52:52,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:52:52,221.221 INFO    ] time= 27/06/2026 08:52:52
[2026-06-27 08:52:52,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:52:52,264.264 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:52:52,339.339 INFO    ] No existing commands found in stream
[2026-06-27 08:52:57,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:52:57,352.352 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-27 08:53:00,558.558 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:53:00,560.560 INFO    ] Checking for system updates...
[2026-06-27 08:53:00,581.581 INFO    ] 200
[2026-06-27 08:53:00,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:53:00,614.614 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:53:00,615.615 INFO    ] No update needed
[2026-06-27 08:53:00,617.617 INFO    ] Checking for camera pi updates...
[2026-06-27 08:53:00,636.636 INFO    ] 200
[2026-06-27 08:53:00,637.637 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:53:00,663.663 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:53:00,709.709 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:53:00,711.711 INFO    ] No camera update needed
[2026-06-27 08:53:00,712.712 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:53:00,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:53:00,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:53:00,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:53:02,759.759 INFO    ] ================================================
[2026-06-27 08:53:02,767.767 INFO    ] Launching Daemon at Sat Jun 27 08:53:02 IST 2026
[2026-06-27 08:53:02,773.773 INFO    ] ================================================
[2026-06-27 08:53:03,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:53:03
[2026-06-27 08:53:03,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:53:03,527.527 INFO    ] Initializing speech engine...
[2026-06-27 08:53:03,541.541 INFO    ] 2026-06-27 08:53:03
[2026-06-27 08:53:03,752.752 INFO    ] 2026-06-27 08:53:03
[2026-06-27 08:53:03,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:53:03,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:53:03,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:53:04,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:53:04,167.167 INFO    ] time= 27/06/2026 08:53:04
[2026-06-27 08:53:04,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:53:04,207.207 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:53:04,277.277 INFO    ] No existing commands found in stream
[2026-06-27 08:53:09,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:53:09,291.291 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-27 08:53:12,366.366 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 08:53:12,368.368 INFO    ] Checking for system updates...
[2026-06-27 08:53:12,389.389 INFO    ] 200
[2026-06-27 08:53:12,391.391 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:53:12,423.423 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:53:12,424.424 INFO    ] No update needed
[2026-06-27 08:53:12,426.426 INFO    ] Checking for camera pi updates...
[2026-06-27 08:53:12,445.445 INFO    ] 200
[2026-06-27 08:53:12,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:53:12,471.471 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:53:12,512.512 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:53:12,513.513 INFO    ] No camera update needed
[2026-06-27 08:53:12,515.515 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:53:12,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:53:12,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:53:12,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:53:14,562.562 INFO    ] ================================================
[2026-06-27 08:53:14,578.578 INFO    ] Launching Daemon at Sat Jun 27 08:53:14 IST 2026
[2026-06-27 08:53:14,591.591 INFO    ] ================================================
[2026-06-27 08:53:14,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:53:14
[2026-06-27 08:53:15,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:53:15,379.379 INFO    ] Initializing speech engine...
[2026-06-27 08:53:15,384.384 INFO    ] 2026-06-27 08:53:15
[2026-06-27 08:53:15,593.593 INFO    ] 2026-06-27 08:53:15
[2026-06-27 08:53:15,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:53:15,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:53:15,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:53:15,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:53:16,013.013 INFO    ] time= 27/06/2026 08:53:15
[2026-06-27 08:53:16,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:53:16,043.043 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:53:16,116.116 INFO    ] No existing commands found in stream
[2026-06-27 08:53:21,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:53:21,134.134 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-27 08:53:22,066.066 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 08:53:22,067.067 INFO    ] Checking for system updates...
[2026-06-27 08:53:22,089.089 INFO    ] 200
[2026-06-27 08:53:22,091.091 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:53:22,122.122 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:53:22,123.123 INFO    ] No update needed
[2026-06-27 08:53:22,125.125 INFO    ] Checking for camera pi updates...
[2026-06-27 08:53:22,146.146 INFO    ] 200
[2026-06-27 08:53:22,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:53:22,175.175 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:53:22,216.216 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:53:22,218.218 INFO    ] No camera update needed
[2026-06-27 08:53:22,219.219 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:53:22,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:53:22,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:53:22,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:53:24,265.265 INFO    ] ================================================
[2026-06-27 08:53:24,280.280 INFO    ] Launching Daemon at Sat Jun 27 08:53:24 IST 2026
[2026-06-27 08:53:24,291.291 INFO    ] ================================================
[2026-06-27 08:53:24,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:53:24
[2026-06-27 08:53:24,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:53:25,086.086 INFO    ] Initializing speech engine...
[2026-06-27 08:53:25,094.094 INFO    ] 2026-06-27 08:53:25
[2026-06-27 08:53:25,301.301 INFO    ] 2026-06-27 08:53:25
[2026-06-27 08:53:25,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:53:25,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:53:25,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:53:25,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:53:25,736.736 INFO    ] time= 27/06/2026 08:53:25
[2026-06-27 08:53:25,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:53:25,772.772 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:53:25,839.839 INFO    ] No existing commands found in stream
[2026-06-27 08:53:30,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:53:30,852.852 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-27 08:53:34,075.075 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:53:34,077.077 INFO    ] Checking for system updates...
[2026-06-27 08:53:34,099.099 INFO    ] 200
[2026-06-27 08:53:34,100.100 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:53:34,134.134 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:53:34,135.135 INFO    ] No update needed
[2026-06-27 08:53:34,136.136 INFO    ] Checking for camera pi updates...
[2026-06-27 08:53:34,156.156 INFO    ] 200
[2026-06-27 08:53:34,157.157 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:53:34,183.183 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:53:34,323.323 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:53:34,324.324 INFO    ] No camera update needed
[2026-06-27 08:53:34,325.325 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:53:34,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:53:34,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:53:34,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:53:36,372.372 INFO    ] ================================================
[2026-06-27 08:53:36,387.387 INFO    ] Launching Daemon at Sat Jun 27 08:53:36 IST 2026
[2026-06-27 08:53:36,398.398 INFO    ] ================================================
[2026-06-27 08:53:36,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:53:36
[2026-06-27 08:53:37,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:53:37,220.220 INFO    ] Initializing speech engine...
[2026-06-27 08:53:37,229.229 INFO    ] 2026-06-27 08:53:37
[2026-06-27 08:53:37,438.438 INFO    ] 2026-06-27 08:53:37
[2026-06-27 08:53:37,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:53:37,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:53:37,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:53:37,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:53:37,878.878 INFO    ] time= 27/06/2026 08:53:37
[2026-06-27 08:53:37,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:53:37,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:53:37,953.953 INFO    ] No existing commands found in stream
[2026-06-27 08:53:42,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:53:42,965.965 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-27 08:53:46,931.931 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:53:46,932.932 INFO    ] Checking for system updates...
[2026-06-27 08:53:46,955.955 INFO    ] 200
[2026-06-27 08:53:46,956.956 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:53:46,990.990 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:53:46,992.992 INFO    ] No update needed
[2026-06-27 08:53:46,994.994 INFO    ] Checking for camera pi updates...
[2026-06-27 08:53:47,014.014 INFO    ] 200
[2026-06-27 08:53:47,015.015 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:53:47,040.040 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:53:47,084.084 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:53:47,086.086 INFO    ] No camera update needed
[2026-06-27 08:53:47,087.087 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:53:47,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:53:47,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:53:47,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:53:49,133.133 INFO    ] ================================================
[2026-06-27 08:53:49,148.148 INFO    ] Launching Daemon at Sat Jun 27 08:53:49 IST 2026
[2026-06-27 08:53:49,159.159 INFO    ] ================================================
[2026-06-27 08:53:49,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:53:49
[2026-06-27 08:53:49,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:53:50,023.023 INFO    ] Initializing speech engine...
[2026-06-27 08:53:50,029.029 INFO    ] 2026-06-27 08:53:50
[2026-06-27 08:53:50,240.240 INFO    ] 2026-06-27 08:53:50
[2026-06-27 08:53:50,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:53:50,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:53:50,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:53:50,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:53:50,673.673 INFO    ] time= 27/06/2026 08:53:50
[2026-06-27 08:53:50,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:53:50,695.695 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:53:50,763.763 INFO    ] No existing commands found in stream
[2026-06-27 08:53:55,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:53:55,780.780 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-27 08:53:58,081.081 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 08:53:58,082.082 INFO    ] Checking for system updates...
[2026-06-27 08:53:58,104.104 INFO    ] 200
[2026-06-27 08:53:58,105.105 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:53:58,139.139 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:53:58,141.141 INFO    ] No update needed
[2026-06-27 08:53:58,143.143 INFO    ] Checking for camera pi updates...
[2026-06-27 08:53:58,165.165 INFO    ] 200
[2026-06-27 08:53:58,167.167 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:53:58,193.193 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:53:58,229.229 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:53:58,231.231 INFO    ] No camera update needed
[2026-06-27 08:53:58,232.232 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:53:58,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:53:58,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:53:58,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:54:00,279.279 INFO    ] ================================================
[2026-06-27 08:54:00,295.295 INFO    ] Launching Daemon at Sat Jun 27 08:54:00 IST 2026
[2026-06-27 08:54:00,306.306 INFO    ] ================================================
[2026-06-27 08:54:00,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:54:00
[2026-06-27 08:54:00,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:54:01,073.073 INFO    ] Initializing speech engine...
[2026-06-27 08:54:01,078.078 INFO    ] 2026-06-27 08:54:01
[2026-06-27 08:54:01,297.297 INFO    ] 2026-06-27 08:54:01
[2026-06-27 08:54:01,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:54:01,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:54:01,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:54:01,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:54:01,714.714 INFO    ] time= 27/06/2026 08:54:01
[2026-06-27 08:54:01,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:54:01,754.754 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:54:01,821.821 INFO    ] No existing commands found in stream
[2026-06-27 08:54:06,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:54:06,834.834 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-27 08:54:10,266.266 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:54:10,267.267 INFO    ] Checking for system updates...
[2026-06-27 08:54:10,288.288 INFO    ] 200
[2026-06-27 08:54:10,289.289 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:54:10,320.320 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:54:10,321.321 INFO    ] No update needed
[2026-06-27 08:54:10,323.323 INFO    ] Checking for camera pi updates...
[2026-06-27 08:54:10,343.343 INFO    ] 200
[2026-06-27 08:54:10,344.344 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:54:10,368.368 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:54:10,414.414 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:54:10,415.415 INFO    ] No camera update needed
[2026-06-27 08:54:10,417.417 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:54:10,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:54:10,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:54:10,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:54:12,464.464 INFO    ] ================================================
[2026-06-27 08:54:12,480.480 INFO    ] Launching Daemon at Sat Jun 27 08:54:12 IST 2026
[2026-06-27 08:54:12,491.491 INFO    ] ================================================
[2026-06-27 08:54:12,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:54:12
[2026-06-27 08:54:13,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:54:13,288.288 INFO    ] Initializing speech engine...
[2026-06-27 08:54:13,300.300 INFO    ] 2026-06-27 08:54:13
[2026-06-27 08:54:13,512.512 INFO    ] 2026-06-27 08:54:13
[2026-06-27 08:54:13,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:54:13,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:54:13,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:54:13,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:54:13,905.905 INFO    ] time= 27/06/2026 08:54:13
[2026-06-27 08:54:13,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:54:13,960.960 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:54:14,055.055 INFO    ] No existing commands found in stream
[2026-06-27 08:54:19,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:54:19,067.067 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-27 08:54:22,907.907 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:54:22,909.909 INFO    ] Checking for system updates...
[2026-06-27 08:54:22,929.929 INFO    ] 200
[2026-06-27 08:54:22,931.931 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:54:22,963.963 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:54:22,965.965 INFO    ] No update needed
[2026-06-27 08:54:22,966.966 INFO    ] Checking for camera pi updates...
[2026-06-27 08:54:22,985.985 INFO    ] 200
[2026-06-27 08:54:22,987.987 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:54:23,010.010 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:54:23,056.056 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:54:23,057.057 INFO    ] No camera update needed
[2026-06-27 08:54:23,059.059 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:54:23,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:54:23,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:54:23,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:54:25,106.106 INFO    ] ================================================
[2026-06-27 08:54:25,121.121 INFO    ] Launching Daemon at Sat Jun 27 08:54:25 IST 2026
[2026-06-27 08:54:25,132.132 INFO    ] ================================================
[2026-06-27 08:54:25,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:54:25
[2026-06-27 08:54:25,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:54:25,955.955 INFO    ] Initializing speech engine...
[2026-06-27 08:54:25,960.960 INFO    ] 2026-06-27 08:54:25
[2026-06-27 08:54:26,168.168 INFO    ] 2026-06-27 08:54:26
[2026-06-27 08:54:26,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:54:26,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:54:26,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:54:26,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:54:26,592.592 INFO    ] time= 27/06/2026 08:54:26
[2026-06-27 08:54:26,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:54:26,622.622 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:54:26,688.688 INFO    ] No existing commands found in stream
[2026-06-27 08:54:31,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:54:31,701.701 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-27 08:54:32,576.576 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 08:54:32,578.578 INFO    ] Checking for system updates...
[2026-06-27 08:54:32,602.602 INFO    ] 200
[2026-06-27 08:54:32,604.604 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:54:32,642.642 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:54:32,644.644 INFO    ] No update needed
[2026-06-27 08:54:32,645.645 INFO    ] Checking for camera pi updates...
[2026-06-27 08:54:32,667.667 INFO    ] 200
[2026-06-27 08:54:32,669.669 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:54:32,697.697 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:54:32,729.729 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:54:32,731.731 INFO    ] No camera update needed
[2026-06-27 08:54:32,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:54:32,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:54:32,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:54:32,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:54:34,779.779 INFO    ] ================================================
[2026-06-27 08:54:34,795.795 INFO    ] Launching Daemon at Sat Jun 27 08:54:34 IST 2026
[2026-06-27 08:54:34,806.806 INFO    ] ================================================
[2026-06-27 08:54:35,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:54:35
[2026-06-27 08:54:35,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:54:35,646.646 INFO    ] Initializing speech engine...
[2026-06-27 08:54:35,652.652 INFO    ] 2026-06-27 08:54:35
[2026-06-27 08:54:35,862.862 INFO    ] 2026-06-27 08:54:35
[2026-06-27 08:54:35,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:54:36,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:54:36,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:54:36,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:54:36,269.269 INFO    ] time= 27/06/2026 08:54:36
[2026-06-27 08:54:36,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:54:36,317.317 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:54:36,383.383 INFO    ] No existing commands found in stream
[2026-06-27 08:54:41,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:54:41,397.397 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-27 08:54:43,690.690 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 08:54:43,692.692 INFO    ] Checking for system updates...
[2026-06-27 08:54:43,713.713 INFO    ] 200
[2026-06-27 08:54:43,715.715 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:54:43,746.746 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:54:43,747.747 INFO    ] No update needed
[2026-06-27 08:54:43,749.749 INFO    ] Checking for camera pi updates...
[2026-06-27 08:54:43,769.769 INFO    ] 200
[2026-06-27 08:54:43,770.770 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:54:43,794.794 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:54:43,834.834 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:54:43,835.835 INFO    ] No camera update needed
[2026-06-27 08:54:43,837.837 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:54:43,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:54:43,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:54:43,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:54:45,886.886 INFO    ] ================================================
[2026-06-27 08:54:45,907.907 INFO    ] Launching Daemon at Sat Jun 27 08:54:45 IST 2026
[2026-06-27 08:54:45,918.918 INFO    ] ================================================
[2026-06-27 08:54:46,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:54:46
[2026-06-27 08:54:46,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:54:46,703.703 INFO    ] Initializing speech engine...
[2026-06-27 08:54:46,707.707 INFO    ] 2026-06-27 08:54:46
[2026-06-27 08:54:46,914.914 INFO    ] 2026-06-27 08:54:46
[2026-06-27 08:54:46,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:54:47,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:54:47,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:54:47,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:54:47,321.321 INFO    ] time= 27/06/2026 08:54:47
[2026-06-27 08:54:47,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:54:47,360.360 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:54:47,433.433 INFO    ] No existing commands found in stream
[2026-06-27 08:54:52,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:54:52,445.445 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-27 08:54:55,266.266 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 08:54:55,268.268 INFO    ] Checking for system updates...
[2026-06-27 08:54:55,289.289 INFO    ] 200
[2026-06-27 08:54:55,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:54:55,320.320 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:54:55,322.322 INFO    ] No update needed
[2026-06-27 08:54:55,323.323 INFO    ] Checking for camera pi updates...
[2026-06-27 08:54:55,342.342 INFO    ] 200
[2026-06-27 08:54:55,344.344 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:54:55,367.367 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:54:55,404.404 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:54:55,406.406 INFO    ] No camera update needed
[2026-06-27 08:54:55,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:54:55,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:54:55,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:54:55,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:54:57,452.452 INFO    ] ================================================
[2026-06-27 08:54:57,467.467 INFO    ] Launching Daemon at Sat Jun 27 08:54:57 IST 2026
[2026-06-27 08:54:57,478.478 INFO    ] ================================================
[2026-06-27 08:54:57,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:54:57
[2026-06-27 08:54:58,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:54:58,283.283 INFO    ] Initializing speech engine...
[2026-06-27 08:54:58,288.288 INFO    ] 2026-06-27 08:54:58
[2026-06-27 08:54:58,520.520 INFO    ] 2026-06-27 08:54:58
[2026-06-27 08:54:58,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:54:58,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:54:58,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:54:58,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:54:58,956.956 INFO    ] time= 27/06/2026 08:54:58
[2026-06-27 08:54:58,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:54:58,997.997 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:54:59,072.072 INFO    ] No existing commands found in stream
[2026-06-27 08:55:04,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:55:04,086.086 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-27 08:55:05,256.256 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:55:05,258.258 INFO    ] Checking for system updates...
[2026-06-27 08:55:05,312.312 INFO    ] 200
[2026-06-27 08:55:05,313.313 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:55:05,344.344 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:55:05,345.345 INFO    ] No update needed
[2026-06-27 08:55:05,347.347 INFO    ] Checking for camera pi updates...
[2026-06-27 08:55:05,366.366 INFO    ] 200
[2026-06-27 08:55:05,368.368 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:55:05,391.391 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:55:05,429.429 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:55:05,431.431 INFO    ] No camera update needed
[2026-06-27 08:55:05,432.432 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:55:05,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:55:05,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:55:05,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:55:07,477.477 INFO    ] ================================================
[2026-06-27 08:55:07,494.494 INFO    ] Launching Daemon at Sat Jun 27 08:55:07 IST 2026
[2026-06-27 08:55:07,506.506 INFO    ] ================================================
[2026-06-27 08:55:07,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:55:07
[2026-06-27 08:55:08,206.206 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:55:08,347.347 INFO    ] Initializing speech engine...
[2026-06-27 08:55:08,361.361 INFO    ] 2026-06-27 08:55:08
[2026-06-27 08:55:08,571.571 INFO    ] 2026-06-27 08:55:08
[2026-06-27 08:55:08,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:55:08,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:55:08,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:55:08,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:55:08,984.984 INFO    ] time= 27/06/2026 08:55:08
[2026-06-27 08:55:09,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:55:09,023.023 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:55:09,114.114 INFO    ] No existing commands found in stream
[2026-06-27 08:55:14,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:55:14,132.132 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-27 08:55:14,555.555 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 08:55:14,557.557 INFO    ] Checking for system updates...
[2026-06-27 08:55:14,578.578 INFO    ] 200
[2026-06-27 08:55:14,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:55:14,610.610 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:55:14,611.611 INFO    ] No update needed
[2026-06-27 08:55:14,612.612 INFO    ] Checking for camera pi updates...
[2026-06-27 08:55:14,634.634 INFO    ] 200
[2026-06-27 08:55:14,635.635 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:55:14,659.659 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:55:14,700.700 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:55:14,701.701 INFO    ] No camera update needed
[2026-06-27 08:55:14,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:55:14,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:55:14,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:55:14,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:55:16,748.748 INFO    ] ================================================
[2026-06-27 08:55:16,763.763 INFO    ] Launching Daemon at Sat Jun 27 08:55:16 IST 2026
[2026-06-27 08:55:16,774.774 INFO    ] ================================================
[2026-06-27 08:55:17,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:55:17
[2026-06-27 08:55:17,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:55:17,606.606 INFO    ] Initializing speech engine...
[2026-06-27 08:55:17,610.610 INFO    ] 2026-06-27 08:55:17
[2026-06-27 08:55:17,814.814 INFO    ] 2026-06-27 08:55:17
[2026-06-27 08:55:17,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:55:18,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:55:18,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:55:18,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:55:18,230.230 INFO    ] time= 27/06/2026 08:55:18
[2026-06-27 08:55:18,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:55:18,259.259 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:55:18,326.326 INFO    ] No existing commands found in stream
[2026-06-27 08:55:23,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:55:23,338.338 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-27 08:55:25,936.936 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:55:25,937.937 INFO    ] Checking for system updates...
[2026-06-27 08:55:25,958.958 INFO    ] 200
[2026-06-27 08:55:25,959.959 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:55:25,990.990 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:55:25,992.992 INFO    ] No update needed
[2026-06-27 08:55:25,993.993 INFO    ] Checking for camera pi updates...
[2026-06-27 08:55:26,013.013 INFO    ] 200
[2026-06-27 08:55:26,015.015 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:55:26,038.038 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:55:26,075.075 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:55:26,076.076 INFO    ] No camera update needed
[2026-06-27 08:55:26,078.078 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:55:26,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:55:26,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:55:26,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:55:28,125.125 INFO    ] ================================================
[2026-06-27 08:55:28,141.141 INFO    ] Launching Daemon at Sat Jun 27 08:55:28 IST 2026
[2026-06-27 08:55:28,153.153 INFO    ] ================================================
[2026-06-27 08:55:28,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:55:28
[2026-06-27 08:55:28,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:55:28,932.932 INFO    ] Initializing speech engine...
[2026-06-27 08:55:28,940.940 INFO    ] 2026-06-27 08:55:28
[2026-06-27 08:55:29,148.148 INFO    ] 2026-06-27 08:55:29
[2026-06-27 08:55:29,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:55:29,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:55:29,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:55:29,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:55:29,573.573 INFO    ] time= 27/06/2026 08:55:29
[2026-06-27 08:55:29,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:55:29,601.601 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:55:29,668.668 INFO    ] No existing commands found in stream
[2026-06-27 08:55:34,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:55:34,680.680 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-27 08:55:38,841.841 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 08:55:38,842.842 INFO    ] Checking for system updates...
[2026-06-27 08:55:38,864.864 INFO    ] 200
[2026-06-27 08:55:38,865.865 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:55:38,896.896 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:55:38,898.898 INFO    ] No update needed
[2026-06-27 08:55:38,900.900 INFO    ] Checking for camera pi updates...
[2026-06-27 08:55:38,920.920 INFO    ] 200
[2026-06-27 08:55:38,921.921 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:55:38,947.947 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:55:39,088.088 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:55:39,089.089 INFO    ] No camera update needed
[2026-06-27 08:55:39,090.090 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:55:39,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:55:39,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:55:39,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:55:41,138.138 INFO    ] ================================================
[2026-06-27 08:55:41,154.154 INFO    ] Launching Daemon at Sat Jun 27 08:55:41 IST 2026
[2026-06-27 08:55:41,165.165 INFO    ] ================================================
[2026-06-27 08:55:41,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:55:41
[2026-06-27 08:55:41,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:55:41,963.963 INFO    ] Initializing speech engine...
[2026-06-27 08:55:41,968.968 INFO    ] 2026-06-27 08:55:41
[2026-06-27 08:55:42,172.172 INFO    ] 2026-06-27 08:55:42
[2026-06-27 08:55:42,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:55:42,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:55:42,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:55:42,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:55:42,586.586 INFO    ] time= 27/06/2026 08:55:42
[2026-06-27 08:55:42,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:55:42,625.625 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:55:42,692.692 INFO    ] No existing commands found in stream
[2026-06-27 08:55:47,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:55:47,704.704 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-27 08:55:50,549.549 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 08:55:50,550.550 INFO    ] Checking for system updates...
[2026-06-27 08:55:50,571.571 INFO    ] 200
[2026-06-27 08:55:50,573.573 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:55:50,603.603 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:55:50,605.605 INFO    ] No update needed
[2026-06-27 08:55:50,606.606 INFO    ] Checking for camera pi updates...
[2026-06-27 08:55:50,626.626 INFO    ] 200
[2026-06-27 08:55:50,627.627 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:55:50,652.652 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:55:50,695.695 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:55:50,696.696 INFO    ] No camera update needed
[2026-06-27 08:55:50,697.697 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:55:50,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:55:50,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:55:50,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:55:52,745.745 INFO    ] ================================================
[2026-06-27 08:55:52,761.761 INFO    ] Launching Daemon at Sat Jun 27 08:55:52 IST 2026
[2026-06-27 08:55:52,772.772 INFO    ] ================================================
[2026-06-27 08:55:53,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:55:53
[2026-06-27 08:55:53,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:55:53,632.632 INFO    ] Initializing speech engine...
[2026-06-27 08:55:53,642.642 INFO    ] 2026-06-27 08:55:53
[2026-06-27 08:55:53,853.853 INFO    ] 2026-06-27 08:55:53
[2026-06-27 08:55:53,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:55:54,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:55:54,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:55:54,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:55:54,278.278 INFO    ] time= 27/06/2026 08:55:54
[2026-06-27 08:55:54,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:55:54,305.305 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:55:54,372.372 INFO    ] No existing commands found in stream
[2026-06-27 08:55:59,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:55:59,387.387 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-27 08:56:00,330.330 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 08:56:00,332.332 INFO    ] Checking for system updates...
[2026-06-27 08:56:00,353.353 INFO    ] 200
[2026-06-27 08:56:00,354.354 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:56:00,386.386 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:56:00,387.387 INFO    ] No update needed
[2026-06-27 08:56:00,389.389 INFO    ] Checking for camera pi updates...
[2026-06-27 08:56:00,410.410 INFO    ] 200
[2026-06-27 08:56:00,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:56:00,437.437 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:56:00,479.479 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:56:00,480.480 INFO    ] No camera update needed
[2026-06-27 08:56:00,481.481 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:56:00,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:56:00,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:56:00,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:56:02,522.522 INFO    ] ================================================
[2026-06-27 08:56:02,531.531 INFO    ] Launching Daemon at Sat Jun 27 08:56:02 IST 2026
[2026-06-27 08:56:02,537.537 INFO    ] ================================================
[2026-06-27 08:56:02,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:56:02
[2026-06-27 08:56:03,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:56:03,299.299 INFO    ] Initializing speech engine...
[2026-06-27 08:56:03,307.307 INFO    ] 2026-06-27 08:56:03
[2026-06-27 08:56:03,518.518 INFO    ] 2026-06-27 08:56:03
[2026-06-27 08:56:03,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:56:03,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:56:03,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:56:03,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:56:03,928.928 INFO    ] time= 27/06/2026 08:56:03
[2026-06-27 08:56:03,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:56:03,966.966 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:56:04,032.032 INFO    ] No existing commands found in stream
[2026-06-27 08:56:09,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:56:09,046.046 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-27 08:56:13,199.199 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 08:56:13,200.200 INFO    ] Checking for system updates...
[2026-06-27 08:56:13,223.223 INFO    ] 200
[2026-06-27 08:56:13,225.225 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:56:13,255.255 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:56:13,257.257 INFO    ] No update needed
[2026-06-27 08:56:13,258.258 INFO    ] Checking for camera pi updates...
[2026-06-27 08:56:13,278.278 INFO    ] 200
[2026-06-27 08:56:13,279.279 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:56:13,303.303 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:56:13,350.350 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:56:13,351.351 INFO    ] No camera update needed
[2026-06-27 08:56:13,353.353 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:56:13,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:56:13,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:56:13,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:56:15,402.402 INFO    ] ================================================
[2026-06-27 08:56:15,418.418 INFO    ] Launching Daemon at Sat Jun 27 08:56:15 IST 2026
[2026-06-27 08:56:15,431.431 INFO    ] ================================================
[2026-06-27 08:56:15,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:56:15
[2026-06-27 08:56:16,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:56:16,220.220 INFO    ] Initializing speech engine...
[2026-06-27 08:56:16,230.230 INFO    ] 2026-06-27 08:56:16
[2026-06-27 08:56:16,434.434 INFO    ] 2026-06-27 08:56:16
[2026-06-27 08:56:16,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:56:16,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:56:16,653.653 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:56:16,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:56:16,854.854 INFO    ] time= 27/06/2026 08:56:16
[2026-06-27 08:56:16,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:56:16,884.884 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:56:16,951.951 INFO    ] No existing commands found in stream
[2026-06-27 08:56:21,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:56:21,968.968 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-27 08:56:26,406.406 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 08:56:26,408.408 INFO    ] Checking for system updates...
[2026-06-27 08:56:26,428.428 INFO    ] 200
[2026-06-27 08:56:26,430.430 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:56:26,460.460 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:56:26,461.461 INFO    ] No update needed
[2026-06-27 08:56:26,462.462 INFO    ] Checking for camera pi updates...
[2026-06-27 08:56:26,482.482 INFO    ] 200
[2026-06-27 08:56:26,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:56:26,507.507 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:56:26,543.543 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:56:26,545.545 INFO    ] No camera update needed
[2026-06-27 08:56:26,546.546 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:56:26,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:56:26,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:56:26,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:56:28,593.593 INFO    ] ================================================
[2026-06-27 08:56:28,608.608 INFO    ] Launching Daemon at Sat Jun 27 08:56:28 IST 2026
[2026-06-27 08:56:28,620.620 INFO    ] ================================================
[2026-06-27 08:56:28,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:56:28
[2026-06-27 08:56:29,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:56:29,451.451 INFO    ] Initializing speech engine...
[2026-06-27 08:56:29,459.459 INFO    ] 2026-06-27 08:56:29
[2026-06-27 08:56:29,679.679 INFO    ] 2026-06-27 08:56:29
[2026-06-27 08:56:29,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:56:29,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:56:29,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:56:30,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:56:30,129.129 INFO    ] time= 27/06/2026 08:56:30
[2026-06-27 08:56:30,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:56:30,137.137 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:56:30,204.204 INFO    ] No existing commands found in stream
[2026-06-27 08:56:35,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:56:35,218.218 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-27 08:56:38,602.602 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 08:56:38,604.604 INFO    ] Checking for system updates...
[2026-06-27 08:56:38,625.625 INFO    ] 200
[2026-06-27 08:56:38,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:56:38,657.657 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:56:38,659.659 INFO    ] No update needed
[2026-06-27 08:56:38,660.660 INFO    ] Checking for camera pi updates...
[2026-06-27 08:56:38,680.680 INFO    ] 200
[2026-06-27 08:56:38,682.682 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:56:38,706.706 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:56:38,753.753 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:56:38,754.754 INFO    ] No camera update needed
[2026-06-27 08:56:38,756.756 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:56:38,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:56:38,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:56:38,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:56:40,804.804 INFO    ] ================================================
[2026-06-27 08:56:40,821.821 INFO    ] Launching Daemon at Sat Jun 27 08:56:40 IST 2026
[2026-06-27 08:56:40,833.833 INFO    ] ================================================
[2026-06-27 08:56:41,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:56:41
[2026-06-27 08:56:41,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:56:41,680.680 INFO    ] Initializing speech engine...
[2026-06-27 08:56:41,691.691 INFO    ] 2026-06-27 08:56:41
[2026-06-27 08:56:41,902.902 INFO    ] 2026-06-27 08:56:41
[2026-06-27 08:56:41,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:56:42,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:56:42,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:56:42,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:56:42,319.319 INFO    ] time= 27/06/2026 08:56:42
[2026-06-27 08:56:42,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:56:42,353.353 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:56:42,444.444 INFO    ] No existing commands found in stream
[2026-06-27 08:56:47,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:56:47,461.461 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-27 08:56:49,958.958 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 08:56:49,959.959 INFO    ] Checking for system updates...
[2026-06-27 08:56:49,980.980 INFO    ] 200
[2026-06-27 08:56:49,982.982 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:56:50,012.012 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:56:50,014.014 INFO    ] No update needed
[2026-06-27 08:56:50,015.015 INFO    ] Checking for camera pi updates...
[2026-06-27 08:56:50,034.034 INFO    ] 200
[2026-06-27 08:56:50,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:56:50,061.061 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:56:50,098.098 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:56:50,099.099 INFO    ] No camera update needed
[2026-06-27 08:56:50,100.100 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:56:50,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:56:50,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:56:50,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:56:52,147.147 INFO    ] ================================================
[2026-06-27 08:56:52,162.162 INFO    ] Launching Daemon at Sat Jun 27 08:56:52 IST 2026
[2026-06-27 08:56:52,172.172 INFO    ] ================================================
[2026-06-27 08:56:52,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:56:52
[2026-06-27 08:56:52,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:56:52,971.971 INFO    ] Initializing speech engine...
[2026-06-27 08:56:52,976.976 INFO    ] 2026-06-27 08:56:52
[2026-06-27 08:56:53,180.180 INFO    ] 2026-06-27 08:56:53
[2026-06-27 08:56:53,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:56:53,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:56:53,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:56:53,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:56:53,614.614 INFO    ] time= 27/06/2026 08:56:53
[2026-06-27 08:56:53,620.620 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:56:53,625.625 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:56:53,693.693 INFO    ] No existing commands found in stream
[2026-06-27 08:56:58,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:56:58,705.705 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-27 08:57:02,530.530 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 08:57:02,531.531 INFO    ] Checking for system updates...
[2026-06-27 08:57:02,561.561 INFO    ] 200
[2026-06-27 08:57:02,564.564 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:57:02,601.601 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:57:02,603.603 INFO    ] No update needed
[2026-06-27 08:57:02,606.606 INFO    ] Checking for camera pi updates...
[2026-06-27 08:57:02,636.636 INFO    ] 200
[2026-06-27 08:57:02,638.638 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:57:02,675.675 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:57:02,700.700 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:57:02,703.703 INFO    ] No camera update needed
[2026-06-27 08:57:02,706.706 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:57:02,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:57:02,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:57:02,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:57:04,761.761 INFO    ] ================================================
[2026-06-27 08:57:04,777.777 INFO    ] Launching Daemon at Sat Jun 27 08:57:04 IST 2026
[2026-06-27 08:57:04,788.788 INFO    ] ================================================
[2026-06-27 08:57:05,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:57:05
[2026-06-27 08:57:05,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:57:05,558.558 INFO    ] Initializing speech engine...
[2026-06-27 08:57:05,561.561 INFO    ] 2026-06-27 08:57:05
[2026-06-27 08:57:05,778.778 INFO    ] 2026-06-27 08:57:05
[2026-06-27 08:57:05,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:57:05,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:57:06,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:57:06,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:57:06,238.238 INFO    ] time= 27/06/2026 08:57:06
[2026-06-27 08:57:06,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:57:06,249.249 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:57:06,317.317 INFO    ] No existing commands found in stream
[2026-06-27 08:57:11,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:57:11,334.334 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-27 08:57:14,360.360 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 08:57:14,361.361 INFO    ] Checking for system updates...
[2026-06-27 08:57:14,383.383 INFO    ] 200
[2026-06-27 08:57:14,385.385 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:57:14,416.416 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:57:14,418.418 INFO    ] No update needed
[2026-06-27 08:57:14,419.419 INFO    ] Checking for camera pi updates...
[2026-06-27 08:57:14,440.440 INFO    ] 200
[2026-06-27 08:57:14,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:57:14,470.470 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:57:14,514.514 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:57:14,515.515 INFO    ] No camera update needed
[2026-06-27 08:57:14,517.517 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:57:14,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:57:14,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:57:14,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:57:16,565.565 INFO    ] ================================================
[2026-06-27 08:57:16,580.580 INFO    ] Launching Daemon at Sat Jun 27 08:57:16 IST 2026
[2026-06-27 08:57:16,591.591 INFO    ] ================================================
[2026-06-27 08:57:16,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:57:16
[2026-06-27 08:57:17,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:57:17,377.377 INFO    ] Initializing speech engine...
[2026-06-27 08:57:17,386.386 INFO    ] 2026-06-27 08:57:17
[2026-06-27 08:57:17,592.592 INFO    ] 2026-06-27 08:57:17
[2026-06-27 08:57:17,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:57:17,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:57:17,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:57:17,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:57:18,003.003 INFO    ] time= 27/06/2026 08:57:17
[2026-06-27 08:57:18,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:57:18,041.041 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:57:18,106.106 INFO    ] No existing commands found in stream
[2026-06-27 08:57:23,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:57:23,119.119 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-27 08:57:27,418.418 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 08:57:27,420.420 INFO    ] Checking for system updates...
[2026-06-27 08:57:27,442.442 INFO    ] 200
[2026-06-27 08:57:27,444.444 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:57:27,476.476 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:57:27,478.478 INFO    ] No update needed
[2026-06-27 08:57:27,479.479 INFO    ] Checking for camera pi updates...
[2026-06-27 08:57:27,500.500 INFO    ] 200
[2026-06-27 08:57:27,502.502 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:57:27,530.530 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:57:27,568.568 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:57:27,569.569 INFO    ] No camera update needed
[2026-06-27 08:57:27,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:57:27,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:57:27,575.575 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:57:27,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:57:29,616.616 INFO    ] ================================================
[2026-06-27 08:57:29,632.632 INFO    ] Launching Daemon at Sat Jun 27 08:57:29 IST 2026
[2026-06-27 08:57:29,643.643 INFO    ] ================================================
[2026-06-27 08:57:30,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:57:30
[2026-06-27 08:57:30,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:57:30,518.518 INFO    ] Initializing speech engine...
[2026-06-27 08:57:30,523.523 INFO    ] 2026-06-27 08:57:30
[2026-06-27 08:57:30,731.731 INFO    ] 2026-06-27 08:57:30
[2026-06-27 08:57:30,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:57:30,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:57:30,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:57:31,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:57:31,154.154 INFO    ] time= 27/06/2026 08:57:31
[2026-06-27 08:57:31,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:57:31,180.180 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:57:31,258.258 INFO    ] No existing commands found in stream
[2026-06-27 08:57:36,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:57:36,272.272 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-27 08:57:39,654.654 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 08:57:39,655.655 INFO    ] Checking for system updates...
[2026-06-27 08:57:39,676.676 INFO    ] 200
[2026-06-27 08:57:39,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:57:39,710.710 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:57:39,711.711 INFO    ] No update needed
[2026-06-27 08:57:39,712.712 INFO    ] Checking for camera pi updates...
[2026-06-27 08:57:39,732.732 INFO    ] 200
[2026-06-27 08:57:39,733.733 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:57:39,758.758 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:57:39,798.798 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:57:39,800.800 INFO    ] No camera update needed
[2026-06-27 08:57:39,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:57:39,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:57:39,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:57:39,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:57:41,847.847 INFO    ] ================================================
[2026-06-27 08:57:41,863.863 INFO    ] Launching Daemon at Sat Jun 27 08:57:41 IST 2026
[2026-06-27 08:57:41,874.874 INFO    ] ================================================
[2026-06-27 08:57:42,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:57:42
[2026-06-27 08:57:42,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:57:42,714.714 INFO    ] Initializing speech engine...
[2026-06-27 08:57:42,719.719 INFO    ] 2026-06-27 08:57:42
[2026-06-27 08:57:42,923.923 INFO    ] 2026-06-27 08:57:42
[2026-06-27 08:57:42,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:57:43,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:57:43,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:57:43,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:57:43,329.329 INFO    ] time= 27/06/2026 08:57:43
[2026-06-27 08:57:43,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:57:43,368.368 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:57:43,439.439 INFO    ] No existing commands found in stream
[2026-06-27 08:57:48,448.448 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:57:48,451.451 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-27 08:57:50,555.555 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 08:57:50,557.557 INFO    ] Checking for system updates...
[2026-06-27 08:57:50,578.578 INFO    ] 200
[2026-06-27 08:57:50,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:57:50,614.614 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:57:50,615.615 INFO    ] No update needed
[2026-06-27 08:57:50,616.616 INFO    ] Checking for camera pi updates...
[2026-06-27 08:57:50,637.637 INFO    ] 200
[2026-06-27 08:57:50,638.638 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:57:50,661.661 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:57:50,801.801 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:57:50,803.803 INFO    ] No camera update needed
[2026-06-27 08:57:50,804.804 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:57:50,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:57:50,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:57:50,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:57:52,849.849 INFO    ] ================================================
[2026-06-27 08:57:52,865.865 INFO    ] Launching Daemon at Sat Jun 27 08:57:52 IST 2026
[2026-06-27 08:57:52,876.876 INFO    ] ================================================
[2026-06-27 08:57:53,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:57:53
[2026-06-27 08:57:53,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:57:53,693.693 INFO    ] Initializing speech engine...
[2026-06-27 08:57:53,697.697 INFO    ] 2026-06-27 08:57:53
[2026-06-27 08:57:53,903.903 INFO    ] 2026-06-27 08:57:53
[2026-06-27 08:57:53,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:57:54,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:57:54,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:57:54,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:57:54,339.339 INFO    ] time= 27/06/2026 08:57:54
[2026-06-27 08:57:54,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:57:54,355.355 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:57:54,421.421 INFO    ] No existing commands found in stream
[2026-06-27 08:57:59,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:57:59,434.434 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-27 08:58:00,467.467 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 08:58:00,469.469 INFO    ] Checking for system updates...
[2026-06-27 08:58:00,489.489 INFO    ] 200
[2026-06-27 08:58:00,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:58:00,525.525 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:58:00,527.527 INFO    ] No update needed
[2026-06-27 08:58:00,528.528 INFO    ] Checking for camera pi updates...
[2026-06-27 08:58:00,547.547 INFO    ] 200
[2026-06-27 08:58:00,549.549 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:58:00,575.575 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:58:00,616.616 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:58:00,618.618 INFO    ] No camera update needed
[2026-06-27 08:58:00,619.619 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:58:00,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:58:00,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:58:00,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:58:02,661.661 INFO    ] ================================================
[2026-06-27 08:58:02,677.677 INFO    ] Launching Daemon at Sat Jun 27 08:58:02 IST 2026
[2026-06-27 08:58:02,689.689 INFO    ] ================================================
[2026-06-27 08:58:03,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:58:03
[2026-06-27 08:58:03,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:58:03,495.495 INFO    ] Initializing speech engine...
[2026-06-27 08:58:03,498.498 INFO    ] 2026-06-27 08:58:03
[2026-06-27 08:58:03,704.704 INFO    ] 2026-06-27 08:58:03
[2026-06-27 08:58:03,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:58:03,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:58:03,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:58:04,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:58:04,120.120 INFO    ] time= 27/06/2026 08:58:04
[2026-06-27 08:58:04,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:58:04,153.153 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:58:04,220.220 INFO    ] No existing commands found in stream
[2026-06-27 08:58:09,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:58:09,231.231 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-27 08:58:09,658.658 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 08:58:09,659.659 INFO    ] Checking for system updates...
[2026-06-27 08:58:09,680.680 INFO    ] 200
[2026-06-27 08:58:09,681.681 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:58:09,714.714 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:58:09,715.715 INFO    ] No update needed
[2026-06-27 08:58:09,717.717 INFO    ] Checking for camera pi updates...
[2026-06-27 08:58:09,737.737 INFO    ] 200
[2026-06-27 08:58:09,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:58:09,763.763 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:58:09,800.800 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:58:09,801.801 INFO    ] No camera update needed
[2026-06-27 08:58:09,802.802 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:58:09,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:58:09,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:58:09,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:58:11,853.853 INFO    ] ================================================
[2026-06-27 08:58:11,868.868 INFO    ] Launching Daemon at Sat Jun 27 08:58:11 IST 2026
[2026-06-27 08:58:11,878.878 INFO    ] ================================================
[2026-06-27 08:58:12,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:58:12
[2026-06-27 08:58:12,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:58:12,676.676 INFO    ] Initializing speech engine...
[2026-06-27 08:58:12,682.682 INFO    ] 2026-06-27 08:58:12
[2026-06-27 08:58:12,890.890 INFO    ] 2026-06-27 08:58:12
[2026-06-27 08:58:12,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:58:13,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:58:13,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:58:13,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:58:13,314.314 INFO    ] time= 27/06/2026 08:58:13
[2026-06-27 08:58:13,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:58:13,342.342 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:58:13,407.407 INFO    ] No existing commands found in stream
[2026-06-27 08:58:18,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:58:18,421.421 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-27 08:58:22,500.500 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 08:58:22,502.502 INFO    ] Checking for system updates...
[2026-06-27 08:58:22,523.523 INFO    ] 200
[2026-06-27 08:58:22,524.524 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:58:22,555.555 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:58:22,556.556 INFO    ] No update needed
[2026-06-27 08:58:22,557.557 INFO    ] Checking for camera pi updates...
[2026-06-27 08:58:22,579.579 INFO    ] 200
[2026-06-27 08:58:22,580.580 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:58:22,605.605 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:58:22,641.641 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:58:22,642.642 INFO    ] No camera update needed
[2026-06-27 08:58:22,644.644 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:58:22,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:58:22,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:58:22,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:58:24,689.689 INFO    ] ================================================
[2026-06-27 08:58:24,705.705 INFO    ] Launching Daemon at Sat Jun 27 08:58:24 IST 2026
[2026-06-27 08:58:24,716.716 INFO    ] ================================================
[2026-06-27 08:58:25,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:58:25
[2026-06-27 08:58:25,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:58:25,585.585 INFO    ] Initializing speech engine...
[2026-06-27 08:58:25,595.595 INFO    ] 2026-06-27 08:58:25
[2026-06-27 08:58:25,802.802 INFO    ] 2026-06-27 08:58:25
[2026-06-27 08:58:25,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:58:26,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:58:26,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:58:26,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:58:26,209.209 INFO    ] time= 27/06/2026 08:58:26
[2026-06-27 08:58:26,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:58:26,249.249 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:58:26,321.321 INFO    ] No existing commands found in stream
[2026-06-27 08:58:31,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:58:31,336.336 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-27 08:58:34,686.686 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:58:34,687.687 INFO    ] Checking for system updates...
[2026-06-27 08:58:34,710.710 INFO    ] 200
[2026-06-27 08:58:34,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:58:34,744.744 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:58:34,745.745 INFO    ] No update needed
[2026-06-27 08:58:34,747.747 INFO    ] Checking for camera pi updates...
[2026-06-27 08:58:34,767.767 INFO    ] 200
[2026-06-27 08:58:34,769.769 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:58:34,792.792 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:58:34,833.833 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:58:34,834.834 INFO    ] No camera update needed
[2026-06-27 08:58:34,836.836 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:58:34,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:58:34,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:58:34,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:58:36,882.882 INFO    ] ================================================
[2026-06-27 08:58:36,897.897 INFO    ] Launching Daemon at Sat Jun 27 08:58:36 IST 2026
[2026-06-27 08:58:36,908.908 INFO    ] ================================================
[2026-06-27 08:58:37,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:58:37
[2026-06-27 08:58:37,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:58:37,771.771 INFO    ] Initializing speech engine...
[2026-06-27 08:58:37,778.778 INFO    ] 2026-06-27 08:58:37
[2026-06-27 08:58:37,986.986 INFO    ] 2026-06-27 08:58:37
[2026-06-27 08:58:38,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:58:38,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:58:38,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:58:38,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:58:38,412.412 INFO    ] time= 27/06/2026 08:58:38
[2026-06-27 08:58:38,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:58:38,442.442 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:58:38,534.534 INFO    ] No existing commands found in stream
[2026-06-27 08:58:43,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:58:43,546.546 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-27 08:58:45,246.246 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 08:58:45,248.248 INFO    ] Checking for system updates...
[2026-06-27 08:58:45,302.302 INFO    ] 200
[2026-06-27 08:58:45,304.304 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:58:45,336.336 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:58:45,338.338 INFO    ] No update needed
[2026-06-27 08:58:45,339.339 INFO    ] Checking for camera pi updates...
[2026-06-27 08:58:45,359.359 INFO    ] 200
[2026-06-27 08:58:45,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:58:45,386.386 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:58:45,425.425 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:58:45,427.427 INFO    ] No camera update needed
[2026-06-27 08:58:45,428.428 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:58:45,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:58:45,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:58:45,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:58:47,476.476 INFO    ] ================================================
[2026-06-27 08:58:47,492.492 INFO    ] Launching Daemon at Sat Jun 27 08:58:47 IST 2026
[2026-06-27 08:58:47,503.503 INFO    ] ================================================
[2026-06-27 08:58:47,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:58:47
[2026-06-27 08:58:48,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:58:48,313.313 INFO    ] Initializing speech engine...
[2026-06-27 08:58:48,319.319 INFO    ] 2026-06-27 08:58:48
[2026-06-27 08:58:48,524.524 INFO    ] 2026-06-27 08:58:48
[2026-06-27 08:58:48,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:58:48,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:58:48,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:58:48,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:58:48,945.945 INFO    ] time= 27/06/2026 08:58:48
[2026-06-27 08:58:48,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:58:48,979.979 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:58:49,046.046 INFO    ] No existing commands found in stream
[2026-06-27 08:58:54,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:58:54,057.057 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-27 08:58:56,759.759 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 08:58:56,761.761 INFO    ] Checking for system updates...
[2026-06-27 08:58:56,782.782 INFO    ] 200
[2026-06-27 08:58:56,783.783 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:58:56,816.816 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:58:56,818.818 INFO    ] No update needed
[2026-06-27 08:58:56,819.819 INFO    ] Checking for camera pi updates...
[2026-06-27 08:58:56,839.839 INFO    ] 200
[2026-06-27 08:58:56,841.841 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:58:56,865.865 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:58:56,901.901 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:58:56,902.902 INFO    ] No camera update needed
[2026-06-27 08:58:56,904.904 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:58:56,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:58:56,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:58:56,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:58:58,949.949 INFO    ] ================================================
[2026-06-27 08:58:58,964.964 INFO    ] Launching Daemon at Sat Jun 27 08:58:58 IST 2026
[2026-06-27 08:58:58,975.975 INFO    ] ================================================
[2026-06-27 08:58:59,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:58:59
[2026-06-27 08:58:59,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:58:59,808.808 INFO    ] Initializing speech engine...
[2026-06-27 08:58:59,813.813 INFO    ] 2026-06-27 08:58:59
[2026-06-27 08:59:00,020.020 INFO    ] 2026-06-27 08:59:00
[2026-06-27 08:59:00,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:59:00,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:59:00,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:59:00,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:59:00,442.442 INFO    ] time= 27/06/2026 08:59:00
[2026-06-27 08:59:00,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:59:00,469.469 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:59:00,537.537 INFO    ] No existing commands found in stream
[2026-06-27 08:59:05,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:59:05,552.552 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-27 08:59:06,557.557 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:59:06,558.558 INFO    ] Checking for system updates...
[2026-06-27 08:59:06,587.587 INFO    ] 200
[2026-06-27 08:59:06,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:59:06,619.619 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:59:06,621.621 INFO    ] No update needed
[2026-06-27 08:59:06,622.622 INFO    ] Checking for camera pi updates...
[2026-06-27 08:59:06,645.645 INFO    ] 200
[2026-06-27 08:59:06,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:59:06,671.671 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:59:06,719.719 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:59:06,720.720 INFO    ] No camera update needed
[2026-06-27 08:59:06,722.722 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:59:06,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:59:06,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:59:06,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:59:08,766.766 INFO    ] ================================================
[2026-06-27 08:59:08,781.781 INFO    ] Launching Daemon at Sat Jun 27 08:59:08 IST 2026
[2026-06-27 08:59:08,792.792 INFO    ] ================================================
[2026-06-27 08:59:09,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:59:09
[2026-06-27 08:59:09,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:59:09,570.570 INFO    ] Initializing speech engine...
[2026-06-27 08:59:09,582.582 INFO    ] 2026-06-27 08:59:09
[2026-06-27 08:59:09,788.788 INFO    ] 2026-06-27 08:59:09
[2026-06-27 08:59:09,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:59:10,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:59:10,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:59:10,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:59:10,202.202 INFO    ] time= 27/06/2026 08:59:10
[2026-06-27 08:59:10,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:59:10,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:59:10,301.301 INFO    ] No existing commands found in stream
[2026-06-27 08:59:15,305.305 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:59:15,307.307 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-27 08:59:16,689.689 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 08:59:16,691.691 INFO    ] Checking for system updates...
[2026-06-27 08:59:16,713.713 INFO    ] 200
[2026-06-27 08:59:16,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:59:16,747.747 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:59:16,748.748 INFO    ] No update needed
[2026-06-27 08:59:16,750.750 INFO    ] Checking for camera pi updates...
[2026-06-27 08:59:16,771.771 INFO    ] 200
[2026-06-27 08:59:16,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:59:16,798.798 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:59:16,834.834 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:59:16,835.835 INFO    ] No camera update needed
[2026-06-27 08:59:16,836.836 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:59:16,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:59:16,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:59:16,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:59:18,881.881 INFO    ] ================================================
[2026-06-27 08:59:18,896.896 INFO    ] Launching Daemon at Sat Jun 27 08:59:18 IST 2026
[2026-06-27 08:59:18,907.907 INFO    ] ================================================
[2026-06-27 08:59:19,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:59:19
[2026-06-27 08:59:19,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:59:19,688.688 INFO    ] Initializing speech engine...
[2026-06-27 08:59:19,696.696 INFO    ] 2026-06-27 08:59:19
[2026-06-27 08:59:19,918.918 INFO    ] 2026-06-27 08:59:19
[2026-06-27 08:59:19,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:59:20,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:59:20,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:59:20,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:59:20,363.363 INFO    ] time= 27/06/2026 08:59:20
[2026-06-27 08:59:20,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:59:20,392.392 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:59:20,468.468 INFO    ] No existing commands found in stream
[2026-06-27 08:59:25,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:59:25,480.480 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-27 08:59:25,996.996 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 08:59:25,997.997 INFO    ] Checking for system updates...
[2026-06-27 08:59:26,018.018 INFO    ] 200
[2026-06-27 08:59:26,019.019 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:59:26,052.052 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:59:26,053.053 INFO    ] No update needed
[2026-06-27 08:59:26,054.054 INFO    ] Checking for camera pi updates...
[2026-06-27 08:59:26,075.075 INFO    ] 200
[2026-06-27 08:59:26,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:59:26,101.101 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:59:26,123.123 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:59:26,125.125 INFO    ] No camera update needed
[2026-06-27 08:59:26,126.126 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:59:26,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:59:26,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:59:26,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:59:28,174.174 INFO    ] ================================================
[2026-06-27 08:59:28,190.190 INFO    ] Launching Daemon at Sat Jun 27 08:59:28 IST 2026
[2026-06-27 08:59:28,200.200 INFO    ] ================================================
[2026-06-27 08:59:28,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:59:28
[2026-06-27 08:59:28,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:59:29,003.003 INFO    ] Initializing speech engine...
[2026-06-27 08:59:29,008.008 INFO    ] 2026-06-27 08:59:29
[2026-06-27 08:59:29,214.214 INFO    ] 2026-06-27 08:59:29
[2026-06-27 08:59:29,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:59:29,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:59:29,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:59:29,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:59:29,642.642 INFO    ] time= 27/06/2026 08:59:29
[2026-06-27 08:59:29,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:59:29,658.658 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:59:29,749.749 INFO    ] No existing commands found in stream
[2026-06-27 08:59:34,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:59:34,766.766 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-27 08:59:36,529.529 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 08:59:36,530.530 INFO    ] Checking for system updates...
[2026-06-27 08:59:36,552.552 INFO    ] 200
[2026-06-27 08:59:36,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:59:36,586.586 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:59:36,588.588 INFO    ] No update needed
[2026-06-27 08:59:36,589.589 INFO    ] Checking for camera pi updates...
[2026-06-27 08:59:36,610.610 INFO    ] 200
[2026-06-27 08:59:36,611.611 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:59:36,635.635 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:59:36,672.672 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:59:36,673.673 INFO    ] No camera update needed
[2026-06-27 08:59:36,678.678 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:59:36,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:59:36,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:59:36,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:59:38,726.726 INFO    ] ================================================
[2026-06-27 08:59:38,741.741 INFO    ] Launching Daemon at Sat Jun 27 08:59:38 IST 2026
[2026-06-27 08:59:38,751.751 INFO    ] ================================================
[2026-06-27 08:59:39,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:59:39
[2026-06-27 08:59:39,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:59:39,537.537 INFO    ] Initializing speech engine...
[2026-06-27 08:59:39,541.541 INFO    ] 2026-06-27 08:59:39
[2026-06-27 08:59:39,758.758 INFO    ] 2026-06-27 08:59:39
[2026-06-27 08:59:39,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:59:39,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:59:39,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:59:40,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:59:40,168.168 INFO    ] time= 27/06/2026 08:59:40
[2026-06-27 08:59:40,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:59:40,212.212 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:59:40,305.305 INFO    ] No existing commands found in stream
[2026-06-27 08:59:45,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:59:45,317.317 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-27 08:59:45,731.731 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 08:59:45,733.733 INFO    ] Checking for system updates...
[2026-06-27 08:59:45,754.754 INFO    ] 200
[2026-06-27 08:59:45,756.756 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:59:45,789.789 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:59:45,790.790 INFO    ] No update needed
[2026-06-27 08:59:45,791.791 INFO    ] Checking for camera pi updates...
[2026-06-27 08:59:45,812.812 INFO    ] 200
[2026-06-27 08:59:45,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:59:45,837.837 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:59:45,872.872 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 08:59:45,873.873 INFO    ] No camera update needed
[2026-06-27 08:59:45,874.874 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:59:45,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:59:45,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:59:45,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:59:47,920.920 INFO    ] ================================================
[2026-06-27 08:59:47,935.935 INFO    ] Launching Daemon at Sat Jun 27 08:59:47 IST 2026
[2026-06-27 08:59:47,946.946 INFO    ] ================================================
[2026-06-27 08:59:48,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:59:48
[2026-06-27 08:59:48,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:59:48,801.801 INFO    ] Initializing speech engine...
[2026-06-27 08:59:48,806.806 INFO    ] 2026-06-27 08:59:48
[2026-06-27 08:59:49,016.016 INFO    ] 2026-06-27 08:59:48
[2026-06-27 08:59:49,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:59:49,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:59:49,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:59:49,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:59:49,438.438 INFO    ] time= 27/06/2026 08:59:49
[2026-06-27 08:59:49,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:59:49,469.469 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:59:49,536.536 INFO    ] No existing commands found in stream
[2026-06-27 08:59:54,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 08:59:54,549.549 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-27 08:59:55,999.999 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 08:59:56,000.000 INFO    ] Checking for system updates...
[2026-06-27 08:59:56,022.022 INFO    ] 200
[2026-06-27 08:59:56,023.023 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:59:56,056.056 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:59:56,057.057 INFO    ] No update needed
[2026-06-27 08:59:56,058.058 INFO    ] Checking for camera pi updates...
[2026-06-27 08:59:56,079.079 INFO    ] 200
[2026-06-27 08:59:56,080.080 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 08:59:56,104.104 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 08:59:56,239.239 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 08:59:56,241.241 INFO    ] No camera update needed
[2026-06-27 08:59:56,242.242 INFO    ] Script finished. Safe exiting...
[2026-06-27 08:59:56,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 08:59:56,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 08:59:56,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 08:59:58,287.287 INFO    ] ================================================
[2026-06-27 08:59:58,302.302 INFO    ] Launching Daemon at Sat Jun 27 08:59:58 IST 2026
[2026-06-27 08:59:58,313.313 INFO    ] ================================================
[2026-06-27 08:59:58,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 08:59:58
[2026-06-27 08:59:59,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 08:59:59,170.170 INFO    ] Initializing speech engine...
[2026-06-27 08:59:59,175.175 INFO    ] 2026-06-27 08:59:59
[2026-06-27 08:59:59,384.384 INFO    ] 2026-06-27 08:59:59
[2026-06-27 08:59:59,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 08:59:59,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 08:59:59,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 08:59:59,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 08:59:59,807.807 INFO    ] time= 27/06/2026 08:59:59
[2026-06-27 08:59:59,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 08:59:59,836.836 INFO    ] Checking for existing commands in stream...
[2026-06-27 08:59:59,902.902 INFO    ] No existing commands found in stream
[2026-06-27 09:00:04,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:00:04,913.913 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-27 09:00:10,087.087 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 09:00:10,088.088 INFO    ] Checking for system updates...
[2026-06-27 09:00:10,110.110 INFO    ] 200
[2026-06-27 09:00:10,112.112 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:00:10,146.146 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:00:10,148.148 INFO    ] No update needed
[2026-06-27 09:00:10,149.149 INFO    ] Checking for camera pi updates...
[2026-06-27 09:00:10,169.169 INFO    ] 200
[2026-06-27 09:00:10,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:00:10,195.195 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:00:10,235.235 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:00:10,236.236 INFO    ] No camera update needed
[2026-06-27 09:00:10,237.237 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:00:10,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:00:10,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:00:10,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:00:12,283.283 INFO    ] ================================================
[2026-06-27 09:00:12,298.298 INFO    ] Launching Daemon at Sat Jun 27 09:00:12 IST 2026
[2026-06-27 09:00:12,310.310 INFO    ] ================================================
[2026-06-27 09:00:12,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:00:12
[2026-06-27 09:00:12,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:00:13,106.106 INFO    ] Initializing speech engine...
[2026-06-27 09:00:13,111.111 INFO    ] 2026-06-27 09:00:13
[2026-06-27 09:00:13,316.316 INFO    ] 2026-06-27 09:00:13
[2026-06-27 09:00:13,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:00:13,470.470 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:00:13,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:00:13,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:00:13,742.742 INFO    ] time= 27/06/2026 09:00:13
[2026-06-27 09:00:13,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:00:13,772.772 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:00:13,840.840 INFO    ] No existing commands found in stream
[2026-06-27 09:00:18,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:00:18,857.857 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-27 09:00:20,290.290 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 09:00:20,291.291 INFO    ] Checking for system updates...
[2026-06-27 09:00:20,314.314 INFO    ] 200
[2026-06-27 09:00:20,315.315 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:00:20,347.347 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:00:20,349.349 INFO    ] No update needed
[2026-06-27 09:00:20,350.350 INFO    ] Checking for camera pi updates...
[2026-06-27 09:00:20,374.374 INFO    ] 200
[2026-06-27 09:00:20,375.375 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:00:20,402.402 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:00:20,440.440 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:00:20,441.441 INFO    ] No camera update needed
[2026-06-27 09:00:20,443.443 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:00:20,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:00:20,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:00:20,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:00:22,490.490 INFO    ] ================================================
[2026-06-27 09:00:22,505.505 INFO    ] Launching Daemon at Sat Jun 27 09:00:22 IST 2026
[2026-06-27 09:00:22,516.516 INFO    ] ================================================
[2026-06-27 09:00:22,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:00:22
[2026-06-27 09:00:23,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:00:23,347.347 INFO    ] Initializing speech engine...
[2026-06-27 09:00:23,352.352 INFO    ] 2026-06-27 09:00:23
[2026-06-27 09:00:23,557.557 INFO    ] 2026-06-27 09:00:23
[2026-06-27 09:00:23,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:00:23,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:00:23,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:00:23,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:00:23,980.980 INFO    ] time= 27/06/2026 09:00:23
[2026-06-27 09:00:24,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:00:24,010.010 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:00:24,077.077 INFO    ] No existing commands found in stream
[2026-06-27 09:00:29,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:00:29,100.100 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-27 09:00:32,475.475 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:00:32,478.478 INFO    ] Checking for system updates...
[2026-06-27 09:00:32,505.505 INFO    ] 200
[2026-06-27 09:00:32,506.506 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:00:32,545.545 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:00:32,546.546 INFO    ] No update needed
[2026-06-27 09:00:32,548.548 INFO    ] Checking for camera pi updates...
[2026-06-27 09:00:32,573.573 INFO    ] 200
[2026-06-27 09:00:32,575.575 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:00:32,604.604 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:00:32,627.627 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:00:32,629.629 INFO    ] No camera update needed
[2026-06-27 09:00:32,630.630 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:00:32,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:00:32,636.636 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:00:32,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:00:34,678.678 INFO    ] ================================================
[2026-06-27 09:00:34,696.696 INFO    ] Launching Daemon at Sat Jun 27 09:00:34 IST 2026
[2026-06-27 09:00:34,707.707 INFO    ] ================================================
[2026-06-27 09:00:35,036.036 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:00:35
[2026-06-27 09:00:35,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:00:35,487.487 INFO    ] Initializing speech engine...
[2026-06-27 09:00:35,497.497 INFO    ] 2026-06-27 09:00:35
[2026-06-27 09:00:35,702.702 INFO    ] 2026-06-27 09:00:35
[2026-06-27 09:00:35,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:00:35,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:00:35,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:00:36,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:00:36,122.122 INFO    ] time= 27/06/2026 09:00:36
[2026-06-27 09:00:36,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:00:36,152.152 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:00:36,224.224 INFO    ] No existing commands found in stream
[2026-06-27 09:00:41,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:00:41,241.241 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-27 09:00:43,117.117 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:00:43,118.118 INFO    ] Checking for system updates...
[2026-06-27 09:00:43,140.140 INFO    ] 200
[2026-06-27 09:00:43,141.141 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:00:43,174.174 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:00:43,176.176 INFO    ] No update needed
[2026-06-27 09:00:43,177.177 INFO    ] Checking for camera pi updates...
[2026-06-27 09:00:43,197.197 INFO    ] 200
[2026-06-27 09:00:43,199.199 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:00:43,223.223 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:00:43,265.265 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:00:43,266.266 INFO    ] No camera update needed
[2026-06-27 09:00:43,268.268 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:00:43,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:00:43,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:00:43,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:00:45,316.316 INFO    ] ================================================
[2026-06-27 09:00:45,331.331 INFO    ] Launching Daemon at Sat Jun 27 09:00:45 IST 2026
[2026-06-27 09:00:45,343.343 INFO    ] ================================================
[2026-06-27 09:00:45,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:00:45
[2026-06-27 09:00:46,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:00:46,182.182 INFO    ] Initializing speech engine...
[2026-06-27 09:00:46,187.187 INFO    ] 2026-06-27 09:00:46
[2026-06-27 09:00:46,398.398 INFO    ] 2026-06-27 09:00:46
[2026-06-27 09:00:46,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:00:46,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:00:46,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:00:46,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:00:46,845.845 INFO    ] time= 27/06/2026 09:00:46
[2026-06-27 09:00:46,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:00:46,854.854 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:00:46,920.920 INFO    ] No existing commands found in stream
[2026-06-27 09:00:51,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:00:51,934.934 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-27 09:00:55,147.147 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 09:00:55,149.149 INFO    ] Checking for system updates...
[2026-06-27 09:00:55,171.171 INFO    ] 200
[2026-06-27 09:00:55,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:00:55,207.207 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:00:55,208.208 INFO    ] No update needed
[2026-06-27 09:00:55,209.209 INFO    ] Checking for camera pi updates...
[2026-06-27 09:00:55,229.229 INFO    ] 200
[2026-06-27 09:00:55,231.231 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:00:55,256.256 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:00:55,278.278 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:00:55,280.280 INFO    ] No camera update needed
[2026-06-27 09:00:55,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:00:55,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:00:55,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:00:55,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:00:57,329.329 INFO    ] ================================================
[2026-06-27 09:00:57,345.345 INFO    ] Launching Daemon at Sat Jun 27 09:00:57 IST 2026
[2026-06-27 09:00:57,355.355 INFO    ] ================================================
[2026-06-27 09:00:57,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:00:57
[2026-06-27 09:00:58,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:00:58,151.151 INFO    ] Initializing speech engine...
[2026-06-27 09:00:58,161.161 INFO    ] 2026-06-27 09:00:58
[2026-06-27 09:00:58,365.365 INFO    ] 2026-06-27 09:00:58
[2026-06-27 09:00:58,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:00:58,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:00:58,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:00:58,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:00:58,776.776 INFO    ] time= 27/06/2026 09:00:58
[2026-06-27 09:00:58,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:00:58,815.815 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:00:58,880.880 INFO    ] No existing commands found in stream
[2026-06-27 09:01:03,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:01:03,894.894 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-27 09:01:07,017.017 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:01:07,019.019 INFO    ] Checking for system updates...
[2026-06-27 09:01:07,043.043 INFO    ] 200
[2026-06-27 09:01:07,045.045 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:01:07,085.085 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:01:07,086.086 INFO    ] No update needed
[2026-06-27 09:01:07,088.088 INFO    ] Checking for camera pi updates...
[2026-06-27 09:01:07,109.109 INFO    ] 200
[2026-06-27 09:01:07,110.110 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:01:07,135.135 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:01:07,173.173 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:01:07,175.175 INFO    ] No camera update needed
[2026-06-27 09:01:07,176.176 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:01:07,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:01:07,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:01:07,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:01:09,224.224 INFO    ] ================================================
[2026-06-27 09:01:09,239.239 INFO    ] Launching Daemon at Sat Jun 27 09:01:09 IST 2026
[2026-06-27 09:01:09,251.251 INFO    ] ================================================
[2026-06-27 09:01:09,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:01:09
[2026-06-27 09:01:09,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:01:10,074.074 INFO    ] Initializing speech engine...
[2026-06-27 09:01:10,079.079 INFO    ] 2026-06-27 09:01:10
[2026-06-27 09:01:10,284.284 INFO    ] 2026-06-27 09:01:10
[2026-06-27 09:01:10,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:01:10,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:01:10,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:01:10,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:01:10,726.726 INFO    ] time= 27/06/2026 09:01:10
[2026-06-27 09:01:10,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:01:10,733.733 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:01:10,798.798 INFO    ] No existing commands found in stream
[2026-06-27 09:01:15,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:01:15,812.812 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-27 09:01:19,752.752 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 09:01:19,753.753 INFO    ] Checking for system updates...
[2026-06-27 09:01:19,774.774 INFO    ] 200
[2026-06-27 09:01:19,776.776 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:01:19,806.806 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:01:19,808.808 INFO    ] No update needed
[2026-06-27 09:01:19,809.809 INFO    ] Checking for camera pi updates...
[2026-06-27 09:01:19,828.828 INFO    ] 200
[2026-06-27 09:01:19,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:01:19,853.853 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:01:19,894.894 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:01:19,896.896 INFO    ] No camera update needed
[2026-06-27 09:01:19,897.897 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:01:19,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:01:19,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:01:19,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:01:21,944.944 INFO    ] ================================================
[2026-06-27 09:01:21,960.960 INFO    ] Launching Daemon at Sat Jun 27 09:01:21 IST 2026
[2026-06-27 09:01:21,971.971 INFO    ] ================================================
[2026-06-27 09:01:22,344.344 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:01:22
[2026-06-27 09:01:22,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:01:22,801.801 INFO    ] Initializing speech engine...
[2026-06-27 09:01:22,811.811 INFO    ] 2026-06-27 09:01:22
[2026-06-27 09:01:23,019.019 INFO    ] 2026-06-27 09:01:22
[2026-06-27 09:01:23,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:01:23,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:01:23,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:01:23,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:01:23,436.436 INFO    ] time= 27/06/2026 09:01:23
[2026-06-27 09:01:23,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:01:23,469.469 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:01:23,537.537 INFO    ] No existing commands found in stream
[2026-06-27 09:01:28,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:01:28,554.554 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-27 09:01:30,093.093 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 09:01:30,095.095 INFO    ] Checking for system updates...
[2026-06-27 09:01:30,116.116 INFO    ] 200
[2026-06-27 09:01:30,117.117 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:01:30,149.149 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:01:30,150.150 INFO    ] No update needed
[2026-06-27 09:01:30,152.152 INFO    ] Checking for camera pi updates...
[2026-06-27 09:01:30,173.173 INFO    ] 200
[2026-06-27 09:01:30,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:01:30,198.198 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:01:30,239.239 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:01:30,240.240 INFO    ] No camera update needed
[2026-06-27 09:01:30,242.242 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:01:30,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:01:30,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:01:30,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:01:32,286.286 INFO    ] ================================================
[2026-06-27 09:01:32,296.296 INFO    ] Launching Daemon at Sat Jun 27 09:01:32 IST 2026
[2026-06-27 09:01:32,303.303 INFO    ] ================================================
[2026-06-27 09:01:32,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:01:32
[2026-06-27 09:01:32,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:01:33,088.088 INFO    ] Initializing speech engine...
[2026-06-27 09:01:33,096.096 INFO    ] 2026-06-27 09:01:33
[2026-06-27 09:01:33,305.305 INFO    ] 2026-06-27 09:01:33
[2026-06-27 09:01:33,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:01:33,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:01:33,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:01:33,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:01:33,722.722 INFO    ] time= 27/06/2026 09:01:33
[2026-06-27 09:01:33,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:01:33,758.758 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:01:33,830.830 INFO    ] No existing commands found in stream
[2026-06-27 09:01:38,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:01:38,842.842 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-27 09:01:39,509.509 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 09:01:39,511.511 INFO    ] Checking for system updates...
[2026-06-27 09:01:39,532.532 INFO    ] 200
[2026-06-27 09:01:39,534.534 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:01:39,566.566 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:01:39,567.567 INFO    ] No update needed
[2026-06-27 09:01:39,569.569 INFO    ] Checking for camera pi updates...
[2026-06-27 09:01:39,589.589 INFO    ] 200
[2026-06-27 09:01:39,590.590 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:01:39,616.616 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:01:39,653.653 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:01:39,654.654 INFO    ] No camera update needed
[2026-06-27 09:01:39,656.656 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:01:39,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:01:39,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:01:39,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:01:41,702.702 INFO    ] ================================================
[2026-06-27 09:01:41,718.718 INFO    ] Launching Daemon at Sat Jun 27 09:01:41 IST 2026
[2026-06-27 09:01:41,729.729 INFO    ] ================================================
[2026-06-27 09:01:42,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:01:42
[2026-06-27 09:01:42,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:01:42,522.522 INFO    ] Initializing speech engine...
[2026-06-27 09:01:42,527.527 INFO    ] 2026-06-27 09:01:42
[2026-06-27 09:01:42,744.744 INFO    ] 2026-06-27 09:01:42
[2026-06-27 09:01:42,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:01:42,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:01:42,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:01:43,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:01:43,155.155 INFO    ] time= 27/06/2026 09:01:43
[2026-06-27 09:01:43,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:01:43,190.190 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:01:43,262.262 INFO    ] No existing commands found in stream
[2026-06-27 09:01:48,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:01:48,274.274 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-27 09:01:50,450.450 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:01:50,452.452 INFO    ] Checking for system updates...
[2026-06-27 09:01:50,473.473 INFO    ] 200
[2026-06-27 09:01:50,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:01:50,505.505 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:01:50,507.507 INFO    ] No update needed
[2026-06-27 09:01:50,508.508 INFO    ] Checking for camera pi updates...
[2026-06-27 09:01:50,528.528 INFO    ] 200
[2026-06-27 09:01:50,529.529 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:01:50,553.553 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:01:50,589.589 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:01:50,590.590 INFO    ] No camera update needed
[2026-06-27 09:01:50,592.592 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:01:50,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:01:50,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:01:50,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:01:52,639.639 INFO    ] ================================================
[2026-06-27 09:01:52,655.655 INFO    ] Launching Daemon at Sat Jun 27 09:01:52 IST 2026
[2026-06-27 09:01:52,666.666 INFO    ] ================================================
[2026-06-27 09:01:53,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:01:53
[2026-06-27 09:01:53,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:01:53,544.544 INFO    ] Initializing speech engine...
[2026-06-27 09:01:53,555.555 INFO    ] 2026-06-27 09:01:53
[2026-06-27 09:01:53,762.762 INFO    ] 2026-06-27 09:01:53
[2026-06-27 09:01:53,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:01:53,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:01:53,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:01:54,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:01:54,175.175 INFO    ] time= 27/06/2026 09:01:54
[2026-06-27 09:01:54,208.208 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:01:54,214.214 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:01:54,280.280 INFO    ] No existing commands found in stream
[2026-06-27 09:01:59,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:01:59,295.295 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-27 09:02:01,272.272 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 09:02:01,274.274 INFO    ] Checking for system updates...
[2026-06-27 09:02:01,295.295 INFO    ] 200
[2026-06-27 09:02:01,297.297 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:02:01,331.331 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:02:01,332.332 INFO    ] No update needed
[2026-06-27 09:02:01,334.334 INFO    ] Checking for camera pi updates...
[2026-06-27 09:02:01,354.354 INFO    ] 200
[2026-06-27 09:02:01,355.355 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:02:01,381.381 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:02:01,522.522 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:02:01,523.523 INFO    ] No camera update needed
[2026-06-27 09:02:01,525.525 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:02:01,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:02:01,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:02:01,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:02:03,563.563 INFO    ] ================================================
[2026-06-27 09:02:03,578.578 INFO    ] Launching Daemon at Sat Jun 27 09:02:03 IST 2026
[2026-06-27 09:02:03,589.589 INFO    ] ================================================
[2026-06-27 09:02:03,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:02:03
[2026-06-27 09:02:04,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:02:04,428.428 INFO    ] Initializing speech engine...
[2026-06-27 09:02:04,433.433 INFO    ] 2026-06-27 09:02:04
[2026-06-27 09:02:04,661.661 INFO    ] 2026-06-27 09:02:04
[2026-06-27 09:02:04,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:02:04,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:02:04,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:02:05,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:02:05,078.078 INFO    ] time= 27/06/2026 09:02:05
[2026-06-27 09:02:05,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:02:05,138.138 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:02:05,214.214 INFO    ] No existing commands found in stream
[2026-06-27 09:02:10,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:02:10,226.226 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-27 09:02:13,792.792 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:02:13,794.794 INFO    ] Checking for system updates...
[2026-06-27 09:02:13,815.815 INFO    ] 200
[2026-06-27 09:02:13,817.817 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:02:13,847.847 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:02:13,848.848 INFO    ] No update needed
[2026-06-27 09:02:13,849.849 INFO    ] Checking for camera pi updates...
[2026-06-27 09:02:13,869.869 INFO    ] 200
[2026-06-27 09:02:13,870.870 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:02:13,893.893 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:02:13,932.932 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:02:13,934.934 INFO    ] No camera update needed
[2026-06-27 09:02:13,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:02:13,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:02:13,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:02:13,942.942 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:02:15,981.981 INFO    ] ================================================
[2026-06-27 09:02:16,996.996 INFO    ] Launching Daemon at Sat Jun 27 09:02:15 IST 2026
[2026-06-27 09:02:16,007.007 INFO    ] ================================================
[2026-06-27 09:02:16,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:02:16
[2026-06-27 09:02:16,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:02:16,787.787 INFO    ] Initializing speech engine...
[2026-06-27 09:02:16,792.792 INFO    ] 2026-06-27 09:02:16
[2026-06-27 09:02:16,999.999 INFO    ] 2026-06-27 09:02:16
[2026-06-27 09:02:17,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:02:17,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:02:17,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:02:17,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:02:17,444.444 INFO    ] time= 27/06/2026 09:02:17
[2026-06-27 09:02:17,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:02:17,451.451 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:02:17,517.517 INFO    ] No existing commands found in stream
[2026-06-27 09:02:22,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:02:22,530.530 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-27 09:02:23,681.681 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 09:02:23,682.682 INFO    ] Checking for system updates...
[2026-06-27 09:02:23,704.704 INFO    ] 200
[2026-06-27 09:02:23,705.705 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:02:23,736.736 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:02:23,737.737 INFO    ] No update needed
[2026-06-27 09:02:23,738.738 INFO    ] Checking for camera pi updates...
[2026-06-27 09:02:23,758.758 INFO    ] 200
[2026-06-27 09:02:23,759.759 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:02:23,784.784 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:02:23,826.826 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:02:23,827.827 INFO    ] No camera update needed
[2026-06-27 09:02:23,829.829 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:02:23,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:02:23,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:02:23,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:02:25,875.875 INFO    ] ================================================
[2026-06-27 09:02:25,891.891 INFO    ] Launching Daemon at Sat Jun 27 09:02:25 IST 2026
[2026-06-27 09:02:25,901.901 INFO    ] ================================================
[2026-06-27 09:02:26,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:02:26
[2026-06-27 09:02:26,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:02:26,718.718 INFO    ] Initializing speech engine...
[2026-06-27 09:02:26,728.728 INFO    ] 2026-06-27 09:02:26
[2026-06-27 09:02:26,935.935 INFO    ] 2026-06-27 09:02:26
[2026-06-27 09:02:26,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:02:27,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:02:27,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:02:27,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:02:27,381.381 INFO    ] time= 27/06/2026 09:02:27
[2026-06-27 09:02:27,386.386 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:02:27,392.392 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:02:27,459.459 INFO    ] No existing commands found in stream
[2026-06-27 09:02:32,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:02:32,474.474 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-27 09:02:34,609.609 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 09:02:34,610.610 INFO    ] Checking for system updates...
[2026-06-27 09:02:34,632.632 INFO    ] 200
[2026-06-27 09:02:34,633.633 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:02:34,666.666 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:02:34,668.668 INFO    ] No update needed
[2026-06-27 09:02:34,669.669 INFO    ] Checking for camera pi updates...
[2026-06-27 09:02:34,689.689 INFO    ] 200
[2026-06-27 09:02:34,690.690 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:02:34,715.715 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:02:34,752.752 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:02:34,753.753 INFO    ] No camera update needed
[2026-06-27 09:02:34,754.754 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:02:34,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:02:34,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:02:34,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:02:36,792.792 INFO    ] ================================================
[2026-06-27 09:02:36,801.801 INFO    ] Launching Daemon at Sat Jun 27 09:02:36 IST 2026
[2026-06-27 09:02:36,809.809 INFO    ] ================================================
[2026-06-27 09:02:37,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:02:37
[2026-06-27 09:02:37,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:02:37,581.581 INFO    ] Initializing speech engine...
[2026-06-27 09:02:37,585.585 INFO    ] 2026-06-27 09:02:37
[2026-06-27 09:02:37,814.814 INFO    ] 2026-06-27 09:02:37
[2026-06-27 09:02:37,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:02:38,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:02:38,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:02:38,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:02:38,284.284 INFO    ] time= 27/06/2026 09:02:38
[2026-06-27 09:02:38,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:02:38,292.292 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:02:38,362.362 INFO    ] No existing commands found in stream
[2026-06-27 09:02:43,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:02:43,376.376 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-27 09:02:46,813.813 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 09:02:46,815.815 INFO    ] Checking for system updates...
[2026-06-27 09:02:46,835.835 INFO    ] 200
[2026-06-27 09:02:46,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:02:46,868.868 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:02:46,869.869 INFO    ] No update needed
[2026-06-27 09:02:46,871.871 INFO    ] Checking for camera pi updates...
[2026-06-27 09:02:46,890.890 INFO    ] 200
[2026-06-27 09:02:46,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:02:46,917.917 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:02:46,955.955 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:02:46,956.956 INFO    ] No camera update needed
[2026-06-27 09:02:46,957.957 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:02:46,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:02:46,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:02:46,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:02:49,004.004 INFO    ] ================================================
[2026-06-27 09:02:49,014.014 INFO    ] Launching Daemon at Sat Jun 27 09:02:49 IST 2026
[2026-06-27 09:02:49,021.021 INFO    ] ================================================
[2026-06-27 09:02:49,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:02:49
[2026-06-27 09:02:49,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:02:49,784.784 INFO    ] Initializing speech engine...
[2026-06-27 09:02:49,789.789 INFO    ] 2026-06-27 09:02:49
[2026-06-27 09:02:49,995.995 INFO    ] 2026-06-27 09:02:49
[2026-06-27 09:02:50,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:02:50,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:02:50,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:02:50,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:02:50,408.408 INFO    ] time= 27/06/2026 09:02:50
[2026-06-27 09:02:50,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:02:50,440.440 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:02:50,507.507 INFO    ] No existing commands found in stream
[2026-06-27 09:02:55,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:02:55,519.519 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-27 09:02:56,043.043 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:02:56,045.045 INFO    ] Checking for system updates...
[2026-06-27 09:02:56,067.067 INFO    ] 200
[2026-06-27 09:02:56,068.068 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:02:56,103.103 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:02:56,105.105 INFO    ] No update needed
[2026-06-27 09:02:56,107.107 INFO    ] Checking for camera pi updates...
[2026-06-27 09:02:56,127.127 INFO    ] 200
[2026-06-27 09:02:56,129.129 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:02:56,156.156 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:02:56,196.196 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:02:56,197.197 INFO    ] No camera update needed
[2026-06-27 09:02:56,199.199 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:02:56,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:02:56,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:02:56,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:02:58,246.246 INFO    ] ================================================
[2026-06-27 09:02:58,262.262 INFO    ] Launching Daemon at Sat Jun 27 09:02:58 IST 2026
[2026-06-27 09:02:58,275.275 INFO    ] ================================================
[2026-06-27 09:02:58,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:02:58
[2026-06-27 09:02:58,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:02:59,126.126 INFO    ] Initializing speech engine...
[2026-06-27 09:02:59,131.131 INFO    ] 2026-06-27 09:02:59
[2026-06-27 09:02:59,344.344 INFO    ] 2026-06-27 09:02:59
[2026-06-27 09:02:59,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:02:59,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:02:59,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:02:59,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:02:59,758.758 INFO    ] time= 27/06/2026 09:02:59
[2026-06-27 09:02:59,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:02:59,797.797 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:02:59,864.864 INFO    ] No existing commands found in stream
[2026-06-27 09:03:04,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:03:04,877.877 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-27 09:03:08,791.791 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 09:03:08,793.793 INFO    ] Checking for system updates...
[2026-06-27 09:03:08,814.814 INFO    ] 200
[2026-06-27 09:03:08,816.816 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:03:08,846.846 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:03:08,848.848 INFO    ] No update needed
[2026-06-27 09:03:08,849.849 INFO    ] Checking for camera pi updates...
[2026-06-27 09:03:08,869.869 INFO    ] 200
[2026-06-27 09:03:08,871.871 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:03:08,896.896 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:03:08,936.936 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:03:08,938.938 INFO    ] No camera update needed
[2026-06-27 09:03:08,939.939 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:03:08,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:03:08,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:03:08,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:03:10,985.985 INFO    ] ================================================
[2026-06-27 09:03:11,002.002 INFO    ] Launching Daemon at Sat Jun 27 09:03:10 IST 2026
[2026-06-27 09:03:11,013.013 INFO    ] ================================================
[2026-06-27 09:03:11,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:03:11
[2026-06-27 09:03:11,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:03:11,849.849 INFO    ] Initializing speech engine...
[2026-06-27 09:03:11,855.855 INFO    ] 2026-06-27 09:03:11
[2026-06-27 09:03:12,059.059 INFO    ] 2026-06-27 09:03:12
[2026-06-27 09:03:12,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:03:12,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:03:12,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:03:12,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:03:12,480.480 INFO    ] time= 27/06/2026 09:03:12
[2026-06-27 09:03:12,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:03:12,510.510 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:03:12,577.577 INFO    ] No existing commands found in stream
[2026-06-27 09:03:17,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:03:17,590.590 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-27 09:03:19,379.379 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:03:19,380.380 INFO    ] Checking for system updates...
[2026-06-27 09:03:19,404.404 INFO    ] 200
[2026-06-27 09:03:19,405.405 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:03:19,436.436 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:03:19,437.437 INFO    ] No update needed
[2026-06-27 09:03:19,438.438 INFO    ] Checking for camera pi updates...
[2026-06-27 09:03:19,459.459 INFO    ] 200
[2026-06-27 09:03:19,460.460 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:03:19,485.485 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:03:19,527.527 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:03:19,528.528 INFO    ] No camera update needed
[2026-06-27 09:03:19,529.529 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:03:19,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:03:19,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:03:19,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:03:21,576.576 INFO    ] ================================================
[2026-06-27 09:03:21,591.591 INFO    ] Launching Daemon at Sat Jun 27 09:03:21 IST 2026
[2026-06-27 09:03:21,601.601 INFO    ] ================================================
[2026-06-27 09:03:21,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:03:21
[2026-06-27 09:03:22,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:03:22,475.475 INFO    ] Initializing speech engine...
[2026-06-27 09:03:22,480.480 INFO    ] 2026-06-27 09:03:22
[2026-06-27 09:03:22,689.689 INFO    ] 2026-06-27 09:03:22
[2026-06-27 09:03:22,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:03:22,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:03:22,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:03:23,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:03:23,108.108 INFO    ] time= 27/06/2026 09:03:23
[2026-06-27 09:03:23,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:03:23,138.138 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:03:23,205.205 INFO    ] No existing commands found in stream
[2026-06-27 09:03:28,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:03:28,222.222 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-27 09:03:30,899.899 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:03:30,900.900 INFO    ] Checking for system updates...
[2026-06-27 09:03:30,922.922 INFO    ] 200
[2026-06-27 09:03:30,923.923 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:03:30,954.954 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:03:30,955.955 INFO    ] No update needed
[2026-06-27 09:03:30,956.956 INFO    ] Checking for camera pi updates...
[2026-06-27 09:03:30,979.979 INFO    ] 200
[2026-06-27 09:03:30,981.981 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:03:31,004.004 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:03:31,039.039 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:03:31,040.040 INFO    ] No camera update needed
[2026-06-27 09:03:31,041.041 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:03:31,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:03:31,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:03:31,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:03:33,080.080 INFO    ] ================================================
[2026-06-27 09:03:33,095.095 INFO    ] Launching Daemon at Sat Jun 27 09:03:33 IST 2026
[2026-06-27 09:03:33,106.106 INFO    ] ================================================
[2026-06-27 09:03:33,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:03:33
[2026-06-27 09:03:33,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:03:33,899.899 INFO    ] Initializing speech engine...
[2026-06-27 09:03:33,903.903 INFO    ] 2026-06-27 09:03:33
[2026-06-27 09:03:34,103.103 INFO    ] 2026-06-27 09:03:34
[2026-06-27 09:03:34,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:03:34,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:03:34,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:03:34,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:03:34,499.499 INFO    ] time= 27/06/2026 09:03:34
[2026-06-27 09:03:34,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:03:34,594.594 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:03:34,709.709 INFO    ] No existing commands found in stream
[2026-06-27 09:03:39,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:03:39,725.725 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-27 09:03:40,860.860 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 09:03:40,861.861 INFO    ] Checking for system updates...
[2026-06-27 09:03:40,882.882 INFO    ] 200
[2026-06-27 09:03:40,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:03:40,914.914 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:03:40,916.916 INFO    ] No update needed
[2026-06-27 09:03:40,917.917 INFO    ] Checking for camera pi updates...
[2026-06-27 09:03:40,938.938 INFO    ] 200
[2026-06-27 09:03:40,940.940 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:03:40,967.967 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:03:40,989.989 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:03:40,991.991 INFO    ] No camera update needed
[2026-06-27 09:03:40,992.992 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:03:40,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:03:40,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:03:41,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:03:43,040.040 INFO    ] ================================================
[2026-06-27 09:03:43,055.055 INFO    ] Launching Daemon at Sat Jun 27 09:03:43 IST 2026
[2026-06-27 09:03:43,066.066 INFO    ] ================================================
[2026-06-27 09:03:43,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:03:43
[2026-06-27 09:03:43,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:03:43,916.916 INFO    ] Initializing speech engine...
[2026-06-27 09:03:43,921.921 INFO    ] 2026-06-27 09:03:43
[2026-06-27 09:03:44,129.129 INFO    ] 2026-06-27 09:03:44
[2026-06-27 09:03:44,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:03:44,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:03:44,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:03:44,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:03:44,535.535 INFO    ] time= 27/06/2026 09:03:44
[2026-06-27 09:03:44,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:03:44,581.581 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:03:44,653.653 INFO    ] No existing commands found in stream
[2026-06-27 09:03:49,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:03:49,665.665 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-27 09:03:52,437.437 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:03:52,438.438 INFO    ] Checking for system updates...
[2026-06-27 09:03:52,459.459 INFO    ] 200
[2026-06-27 09:03:52,460.460 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:03:52,494.494 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:03:52,495.495 INFO    ] No update needed
[2026-06-27 09:03:52,496.496 INFO    ] Checking for camera pi updates...
[2026-06-27 09:03:52,516.516 INFO    ] 200
[2026-06-27 09:03:52,517.517 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:03:52,541.541 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:03:52,582.582 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:03:52,583.583 INFO    ] No camera update needed
[2026-06-27 09:03:52,585.585 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:03:52,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:03:52,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:03:52,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:03:54,631.631 INFO    ] ================================================
[2026-06-27 09:03:54,647.647 INFO    ] Launching Daemon at Sat Jun 27 09:03:54 IST 2026
[2026-06-27 09:03:54,657.657 INFO    ] ================================================
[2026-06-27 09:03:54,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:03:54
[2026-06-27 09:03:55,311.311 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:03:55,454.454 INFO    ] Initializing speech engine...
[2026-06-27 09:03:55,460.460 INFO    ] 2026-06-27 09:03:55
[2026-06-27 09:03:55,668.668 INFO    ] 2026-06-27 09:03:55
[2026-06-27 09:03:55,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:03:55,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:03:55,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:03:56,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:03:56,089.089 INFO    ] time= 27/06/2026 09:03:56
[2026-06-27 09:03:56,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:03:56,118.118 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:03:56,183.183 INFO    ] No existing commands found in stream
[2026-06-27 09:04:01,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:04:01,197.197 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-27 09:04:01,741.741 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:04:01,743.743 INFO    ] Checking for system updates...
[2026-06-27 09:04:01,768.768 INFO    ] 200
[2026-06-27 09:04:01,770.770 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:04:01,807.807 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:04:01,809.809 INFO    ] No update needed
[2026-06-27 09:04:01,811.811 INFO    ] Checking for camera pi updates...
[2026-06-27 09:04:01,835.835 INFO    ] 200
[2026-06-27 09:04:01,836.836 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:04:01,865.865 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:04:01,895.895 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:04:01,897.897 INFO    ] No camera update needed
[2026-06-27 09:04:01,900.900 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:04:01,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:04:01,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:04:01,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:04:03,953.953 INFO    ] ================================================
[2026-06-27 09:04:03,970.970 INFO    ] Launching Daemon at Sat Jun 27 09:04:03 IST 2026
[2026-06-27 09:04:03,981.981 INFO    ] ================================================
[2026-06-27 09:04:04,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:04:04
[2026-06-27 09:04:04,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:04:04,776.776 INFO    ] Initializing speech engine...
[2026-06-27 09:04:04,788.788 INFO    ] 2026-06-27 09:04:04
[2026-06-27 09:04:04,997.997 INFO    ] 2026-06-27 09:04:04
[2026-06-27 09:04:05,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:04:05,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:04:05,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:04:05,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:04:05,415.415 INFO    ] time= 27/06/2026 09:04:05
[2026-06-27 09:04:05,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:04:05,448.448 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:04:05,513.513 INFO    ] No existing commands found in stream
[2026-06-27 09:04:10,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:04:10,526.526 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-27 09:04:13,233.233 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:04:13,236.236 INFO    ] Checking for system updates...
[2026-06-27 09:04:13,272.272 INFO    ] 200
[2026-06-27 09:04:13,275.275 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:04:13,321.321 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:04:13,323.323 INFO    ] No update needed
[2026-06-27 09:04:13,324.324 INFO    ] Checking for camera pi updates...
[2026-06-27 09:04:13,344.344 INFO    ] 200
[2026-06-27 09:04:13,345.345 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:04:13,370.370 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:04:13,495.495 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:04:13,496.496 INFO    ] No camera update needed
[2026-06-27 09:04:13,498.498 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:04:13,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:04:13,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:04:13,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:04:15,545.545 INFO    ] ================================================
[2026-06-27 09:04:15,560.560 INFO    ] Launching Daemon at Sat Jun 27 09:04:15 IST 2026
[2026-06-27 09:04:15,571.571 INFO    ] ================================================
[2026-06-27 09:04:15,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:04:15
[2026-06-27 09:04:16,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:04:16,382.382 INFO    ] Initializing speech engine...
[2026-06-27 09:04:16,390.390 INFO    ] 2026-06-27 09:04:16
[2026-06-27 09:04:16,608.608 INFO    ] 2026-06-27 09:04:16
[2026-06-27 09:04:16,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:04:16,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:04:16,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:04:16,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:04:17,017.017 INFO    ] time= 27/06/2026 09:04:16
[2026-06-27 09:04:17,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:04:17,083.083 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:04:17,157.157 INFO    ] No existing commands found in stream
[2026-06-27 09:04:22,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:04:22,171.171 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-27 09:04:22,813.813 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:04:22,814.814 INFO    ] Checking for system updates...
[2026-06-27 09:04:22,835.835 INFO    ] 200
[2026-06-27 09:04:22,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:04:22,867.867 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:04:22,868.868 INFO    ] No update needed
[2026-06-27 09:04:22,870.870 INFO    ] Checking for camera pi updates...
[2026-06-27 09:04:22,889.889 INFO    ] 200
[2026-06-27 09:04:22,890.890 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:04:22,914.914 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:04:22,962.962 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:04:22,964.964 INFO    ] No camera update needed
[2026-06-27 09:04:22,965.965 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:04:22,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:04:22,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:04:22,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:04:25,010.010 INFO    ] ================================================
[2026-06-27 09:04:25,026.026 INFO    ] Launching Daemon at Sat Jun 27 09:04:25 IST 2026
[2026-06-27 09:04:25,037.037 INFO    ] ================================================
[2026-06-27 09:04:25,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:04:25
[2026-06-27 09:04:25,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:04:25,821.821 INFO    ] Initializing speech engine...
[2026-06-27 09:04:25,827.827 INFO    ] 2026-06-27 09:04:25
[2026-06-27 09:04:26,032.032 INFO    ] 2026-06-27 09:04:26
[2026-06-27 09:04:26,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:04:26,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:04:26,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:04:26,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:04:26,450.450 INFO    ] time= 27/06/2026 09:04:26
[2026-06-27 09:04:26,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:04:26,483.483 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:04:26,551.551 INFO    ] No existing commands found in stream
[2026-06-27 09:04:31,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:04:31,559.559 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-27 09:04:35,028.028 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:04:35,030.030 INFO    ] Checking for system updates...
[2026-06-27 09:04:35,051.051 INFO    ] 200
[2026-06-27 09:04:35,053.053 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:04:35,084.084 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:04:35,085.085 INFO    ] No update needed
[2026-06-27 09:04:35,087.087 INFO    ] Checking for camera pi updates...
[2026-06-27 09:04:35,108.108 INFO    ] 200
[2026-06-27 09:04:35,109.109 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:04:35,137.137 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:04:35,178.178 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:04:35,180.180 INFO    ] No camera update needed
[2026-06-27 09:04:35,181.181 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:04:35,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:04:35,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:04:35,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:04:37,228.228 INFO    ] ================================================
[2026-06-27 09:04:37,243.243 INFO    ] Launching Daemon at Sat Jun 27 09:04:37 IST 2026
[2026-06-27 09:04:37,255.255 INFO    ] ================================================
[2026-06-27 09:04:37,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:04:37
[2026-06-27 09:04:37,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:04:38,109.109 INFO    ] Initializing speech engine...
[2026-06-27 09:04:38,115.115 INFO    ] 2026-06-27 09:04:38
[2026-06-27 09:04:38,323.323 INFO    ] 2026-06-27 09:04:38
[2026-06-27 09:04:38,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:04:38,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:04:38,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:04:38,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:04:38,746.746 INFO    ] time= 27/06/2026 09:04:38
[2026-06-27 09:04:38,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:04:38,777.777 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:04:38,844.844 INFO    ] No existing commands found in stream
[2026-06-27 09:04:43,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:04:43,859.859 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-27 09:04:46,985.985 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:04:46,986.986 INFO    ] Checking for system updates...
[2026-06-27 09:04:47,010.010 INFO    ] 200
[2026-06-27 09:04:47,011.011 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:04:47,045.045 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:04:47,047.047 INFO    ] No update needed
[2026-06-27 09:04:47,048.048 INFO    ] Checking for camera pi updates...
[2026-06-27 09:04:47,068.068 INFO    ] 200
[2026-06-27 09:04:47,070.070 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:04:47,094.094 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:04:47,137.137 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:04:47,138.138 INFO    ] No camera update needed
[2026-06-27 09:04:47,140.140 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:04:47,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:04:47,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:04:47,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:04:49,187.187 INFO    ] ================================================
[2026-06-27 09:04:49,202.202 INFO    ] Launching Daemon at Sat Jun 27 09:04:49 IST 2026
[2026-06-27 09:04:49,213.213 INFO    ] ================================================
[2026-06-27 09:04:49,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:04:49
[2026-06-27 09:04:49,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:04:50,044.044 INFO    ] Initializing speech engine...
[2026-06-27 09:04:50,047.047 INFO    ] 2026-06-27 09:04:50
[2026-06-27 09:04:50,246.246 INFO    ] 2026-06-27 09:04:50
[2026-06-27 09:04:50,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:04:50,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:04:50,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:04:50,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:04:50,713.713 INFO    ] time= 27/06/2026 09:04:50
[2026-06-27 09:04:50,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:04:50,770.770 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:04:50,846.846 INFO    ] No existing commands found in stream
[2026-06-27 09:04:55,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:04:55,859.859 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-27 09:04:56,899.899 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 09:04:56,901.901 INFO    ] Checking for system updates...
[2026-06-27 09:04:56,923.923 INFO    ] 200
[2026-06-27 09:04:56,925.925 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:04:56,958.958 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:04:56,959.959 INFO    ] No update needed
[2026-06-27 09:04:56,961.961 INFO    ] Checking for camera pi updates...
[2026-06-27 09:04:56,981.981 INFO    ] 200
[2026-06-27 09:04:56,983.983 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:04:57,007.007 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:04:57,043.043 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:04:57,045.045 INFO    ] No camera update needed
[2026-06-27 09:04:57,046.046 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:04:57,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:04:57,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:04:57,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:04:59,092.092 INFO    ] ================================================
[2026-06-27 09:04:59,108.108 INFO    ] Launching Daemon at Sat Jun 27 09:04:59 IST 2026
[2026-06-27 09:04:59,118.118 INFO    ] ================================================
[2026-06-27 09:04:59,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:04:59
[2026-06-27 09:04:59,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:04:59,928.928 INFO    ] Initializing speech engine...
[2026-06-27 09:04:59,937.937 INFO    ] 2026-06-27 09:04:59
[2026-06-27 09:05:00,142.142 INFO    ] 2026-06-27 09:05:00
[2026-06-27 09:05:00,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:05:00,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:05:00,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:05:00,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:05:00,559.559 INFO    ] time= 27/06/2026 09:05:00
[2026-06-27 09:05:00,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:05:00,589.589 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:05:00,656.656 INFO    ] No existing commands found in stream
[2026-06-27 09:05:05,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:05:05,672.672 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-27 09:05:09,936.936 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 09:05:09,937.937 INFO    ] Checking for system updates...
[2026-06-27 09:05:09,958.958 INFO    ] 200
[2026-06-27 09:05:09,960.960 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:05:09,990.990 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:05:09,992.992 INFO    ] No update needed
[2026-06-27 09:05:09,993.993 INFO    ] Checking for camera pi updates...
[2026-06-27 09:05:10,013.013 INFO    ] 200
[2026-06-27 09:05:10,014.014 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:05:10,038.038 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:05:10,079.079 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:05:10,080.080 INFO    ] No camera update needed
[2026-06-27 09:05:10,082.082 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:05:10,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:05:10,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:05:10,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:05:12,127.127 INFO    ] ================================================
[2026-06-27 09:05:12,142.142 INFO    ] Launching Daemon at Sat Jun 27 09:05:12 IST 2026
[2026-06-27 09:05:12,154.154 INFO    ] ================================================
[2026-06-27 09:05:12,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:05:12
[2026-06-27 09:05:12,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:05:13,027.027 INFO    ] Initializing speech engine...
[2026-06-27 09:05:13,032.032 INFO    ] 2026-06-27 09:05:13
[2026-06-27 09:05:13,255.255 INFO    ] 2026-06-27 09:05:13
[2026-06-27 09:05:13,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:05:13,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:05:13,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:05:13,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:05:13,634.634 INFO    ] time= 27/06/2026 09:05:13
[2026-06-27 09:05:13,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:05:13,735.735 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:05:13,793.793 INFO    ] No existing commands found in stream
[2026-06-27 09:05:18,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:05:18,823.823 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-27 09:05:23,221.221 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 09:05:23,223.223 INFO    ] Checking for system updates...
[2026-06-27 09:05:23,244.244 INFO    ] 200
[2026-06-27 09:05:23,246.246 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:05:23,276.276 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:05:23,278.278 INFO    ] No update needed
[2026-06-27 09:05:23,279.279 INFO    ] Checking for camera pi updates...
[2026-06-27 09:05:23,300.300 INFO    ] 200
[2026-06-27 09:05:23,302.302 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:05:23,327.327 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:05:23,371.371 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:05:23,372.372 INFO    ] No camera update needed
[2026-06-27 09:05:23,374.374 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:05:23,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:05:23,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:05:23,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:05:25,421.421 INFO    ] ================================================
[2026-06-27 09:05:25,437.437 INFO    ] Launching Daemon at Sat Jun 27 09:05:25 IST 2026
[2026-06-27 09:05:25,448.448 INFO    ] ================================================
[2026-06-27 09:05:25,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:05:25
[2026-06-27 09:05:26,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:05:26,253.253 INFO    ] Initializing speech engine...
[2026-06-27 09:05:26,258.258 INFO    ] 2026-06-27 09:05:26
[2026-06-27 09:05:26,463.463 INFO    ] 2026-06-27 09:05:26
[2026-06-27 09:05:26,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:05:26,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:05:26,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:05:26,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:05:26,876.876 INFO    ] time= 27/06/2026 09:05:26
[2026-06-27 09:05:26,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:05:26,909.909 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:05:27,001.001 INFO    ] No existing commands found in stream
[2026-06-27 09:05:32,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:05:32,007.007 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-27 09:05:35,833.833 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:05:35,834.834 INFO    ] Checking for system updates...
[2026-06-27 09:05:35,856.856 INFO    ] 200
[2026-06-27 09:05:35,857.857 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:05:35,888.888 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:05:35,889.889 INFO    ] No update needed
[2026-06-27 09:05:35,891.891 INFO    ] Checking for camera pi updates...
[2026-06-27 09:05:35,910.910 INFO    ] 200
[2026-06-27 09:05:35,912.912 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:05:35,935.935 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:05:35,975.975 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:05:35,977.977 INFO    ] No camera update needed
[2026-06-27 09:05:35,978.978 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:05:35,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:05:35,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:05:35,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:05:38,028.028 INFO    ] ================================================
[2026-06-27 09:05:38,044.044 INFO    ] Launching Daemon at Sat Jun 27 09:05:38 IST 2026
[2026-06-27 09:05:38,056.056 INFO    ] ================================================
[2026-06-27 09:05:38,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:05:38
[2026-06-27 09:05:38,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:05:38,876.876 INFO    ] Initializing speech engine...
[2026-06-27 09:05:38,887.887 INFO    ] 2026-06-27 09:05:38
[2026-06-27 09:05:39,098.098 INFO    ] 2026-06-27 09:05:39
[2026-06-27 09:05:39,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:05:39,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:05:39,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:05:39,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:05:39,524.524 INFO    ] time= 27/06/2026 09:05:39
[2026-06-27 09:05:39,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:05:39,551.551 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:05:39,620.620 INFO    ] No existing commands found in stream
[2026-06-27 09:05:44,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:05:44,637.637 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-27 09:05:45,261.261 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:05:45,262.262 INFO    ] Checking for system updates...
[2026-06-27 09:05:45,283.283 INFO    ] 200
[2026-06-27 09:05:45,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:05:45,315.315 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:05:45,317.317 INFO    ] No update needed
[2026-06-27 09:05:45,318.318 INFO    ] Checking for camera pi updates...
[2026-06-27 09:05:45,338.338 INFO    ] 200
[2026-06-27 09:05:45,339.339 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:05:45,363.363 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:05:45,413.413 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:05:45,415.415 INFO    ] No camera update needed
[2026-06-27 09:05:45,416.416 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:05:45,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:05:45,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:05:45,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:05:47,466.466 INFO    ] ================================================
[2026-06-27 09:05:47,482.482 INFO    ] Launching Daemon at Sat Jun 27 09:05:47 IST 2026
[2026-06-27 09:05:47,493.493 INFO    ] ================================================
[2026-06-27 09:05:47,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:05:47
[2026-06-27 09:05:48,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:05:48,337.337 INFO    ] Initializing speech engine...
[2026-06-27 09:05:48,345.345 INFO    ] 2026-06-27 09:05:48
[2026-06-27 09:05:48,565.565 INFO    ] 2026-06-27 09:05:48
[2026-06-27 09:05:48,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:05:48,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:05:48,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:05:48,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:05:49,015.015 INFO    ] time= 27/06/2026 09:05:48
[2026-06-27 09:05:49,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:05:49,023.023 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:05:49,091.091 INFO    ] No existing commands found in stream
[2026-06-27 09:05:54,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:05:54,109.109 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-27 09:05:56,349.349 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:05:56,351.351 INFO    ] Checking for system updates...
[2026-06-27 09:05:56,372.372 INFO    ] 200
[2026-06-27 09:05:56,373.373 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:05:56,405.405 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:05:56,406.406 INFO    ] No update needed
[2026-06-27 09:05:56,408.408 INFO    ] Checking for camera pi updates...
[2026-06-27 09:05:56,427.427 INFO    ] 200
[2026-06-27 09:05:56,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:05:56,452.452 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:05:56,492.492 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:05:56,494.494 INFO    ] No camera update needed
[2026-06-27 09:05:56,495.495 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:05:56,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:05:56,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:05:56,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:05:58,543.543 INFO    ] ================================================
[2026-06-27 09:05:58,559.559 INFO    ] Launching Daemon at Sat Jun 27 09:05:58 IST 2026
[2026-06-27 09:05:58,571.571 INFO    ] ================================================
[2026-06-27 09:05:58,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:05:58
[2026-06-27 09:05:59,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:05:59,394.394 INFO    ] Initializing speech engine...
[2026-06-27 09:05:59,405.405 INFO    ] 2026-06-27 09:05:59
[2026-06-27 09:05:59,609.609 INFO    ] 2026-06-27 09:05:59
[2026-06-27 09:05:59,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:06:00,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:06:00,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:06:00,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:06:00,629.629 INFO    ] time= 27/06/2026 09:06:00
[2026-06-27 09:06:00,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:06:00,639.639 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:06:00,692.692 INFO    ] No existing commands found in stream
[2026-06-27 09:06:05,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:06:05,706.706 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-27 09:06:06,151.151 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:06:06,153.153 INFO    ] Checking for system updates...
[2026-06-27 09:06:06,175.175 INFO    ] 200
[2026-06-27 09:06:06,176.176 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:06:06,207.207 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:06:06,209.209 INFO    ] No update needed
[2026-06-27 09:06:06,210.210 INFO    ] Checking for camera pi updates...
[2026-06-27 09:06:06,230.230 INFO    ] 200
[2026-06-27 09:06:06,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:06:06,255.255 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:06:06,280.280 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:06:06,282.282 INFO    ] No camera update needed
[2026-06-27 09:06:06,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:06:06,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:06:06,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:06:06,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:06:08,330.330 INFO    ] ================================================
[2026-06-27 09:06:08,345.345 INFO    ] Launching Daemon at Sat Jun 27 09:06:08 IST 2026
[2026-06-27 09:06:08,356.356 INFO    ] ================================================
[2026-06-27 09:06:08,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:06:08
[2026-06-27 09:06:09,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:06:09,149.149 INFO    ] Initializing speech engine...
[2026-06-27 09:06:09,155.155 INFO    ] 2026-06-27 09:06:09
[2026-06-27 09:06:09,352.352 INFO    ] 2026-06-27 09:06:09
[2026-06-27 09:06:09,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:06:09,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:06:09,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:06:09,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:06:09,793.793 INFO    ] time= 27/06/2026 09:06:09
[2026-06-27 09:06:09,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:06:09,800.800 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:06:09,868.868 INFO    ] No existing commands found in stream
[2026-06-27 09:06:14,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:06:14,879.879 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-27 09:06:15,772.772 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:06:15,774.774 INFO    ] Checking for system updates...
[2026-06-27 09:06:15,795.795 INFO    ] 200
[2026-06-27 09:06:15,796.796 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:06:15,830.830 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:06:15,831.831 INFO    ] No update needed
[2026-06-27 09:06:15,832.832 INFO    ] Checking for camera pi updates...
[2026-06-27 09:06:15,852.852 INFO    ] 200
[2026-06-27 09:06:15,854.854 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:06:15,877.877 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:06:16,018.018 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:06:16,019.019 INFO    ] No camera update needed
[2026-06-27 09:06:16,020.020 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:06:16,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:06:16,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:06:16,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:06:18,067.067 INFO    ] ================================================
[2026-06-27 09:06:18,082.082 INFO    ] Launching Daemon at Sat Jun 27 09:06:18 IST 2026
[2026-06-27 09:06:18,092.092 INFO    ] ================================================
[2026-06-27 09:06:18,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:06:18
[2026-06-27 09:06:18,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:06:18,903.903 INFO    ] Initializing speech engine...
[2026-06-27 09:06:18,911.911 INFO    ] 2026-06-27 09:06:18
[2026-06-27 09:06:19,123.123 INFO    ] 2026-06-27 09:06:19
[2026-06-27 09:06:19,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:06:19,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:06:19,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:06:19,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:06:19,563.563 INFO    ] time= 27/06/2026 09:06:19
[2026-06-27 09:06:19,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:06:19,570.570 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:06:19,637.637 INFO    ] No existing commands found in stream
[2026-06-27 09:06:24,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:06:24,649.649 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-27 09:06:26,778.778 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 09:06:26,779.779 INFO    ] Checking for system updates...
[2026-06-27 09:06:26,802.802 INFO    ] 200
[2026-06-27 09:06:26,803.803 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:06:26,837.837 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:06:26,839.839 INFO    ] No update needed
[2026-06-27 09:06:26,840.840 INFO    ] Checking for camera pi updates...
[2026-06-27 09:06:26,860.860 INFO    ] 200
[2026-06-27 09:06:26,862.862 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:06:26,885.885 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:06:26,924.924 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:06:26,925.925 INFO    ] No camera update needed
[2026-06-27 09:06:26,927.927 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:06:26,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:06:26,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:06:26,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:06:28,975.975 INFO    ] ================================================
[2026-06-27 09:06:28,990.990 INFO    ] Launching Daemon at Sat Jun 27 09:06:28 IST 2026
[2026-06-27 09:06:29,001.001 INFO    ] ================================================
[2026-06-27 09:06:29,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:06:29
[2026-06-27 09:06:29,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:06:29,807.807 INFO    ] Initializing speech engine...
[2026-06-27 09:06:29,812.812 INFO    ] 2026-06-27 09:06:29
[2026-06-27 09:06:30,024.024 INFO    ] 2026-06-27 09:06:29
[2026-06-27 09:06:30,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:06:30,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:06:30,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:06:30,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:06:30,466.466 INFO    ] time= 27/06/2026 09:06:30
[2026-06-27 09:06:30,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:06:30,506.506 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:06:30,576.576 INFO    ] No existing commands found in stream
[2026-06-27 09:06:35,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:06:35,589.589 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-27 09:06:39,157.157 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 09:06:39,159.159 INFO    ] Checking for system updates...
[2026-06-27 09:06:39,180.180 INFO    ] 200
[2026-06-27 09:06:39,181.181 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:06:39,212.212 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:06:39,214.214 INFO    ] No update needed
[2026-06-27 09:06:39,215.215 INFO    ] Checking for camera pi updates...
[2026-06-27 09:06:39,235.235 INFO    ] 200
[2026-06-27 09:06:39,237.237 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:06:39,260.260 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:06:39,303.303 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:06:39,305.305 INFO    ] No camera update needed
[2026-06-27 09:06:39,306.306 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:06:39,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:06:39,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:06:39,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:06:41,354.354 INFO    ] ================================================
[2026-06-27 09:06:41,369.369 INFO    ] Launching Daemon at Sat Jun 27 09:06:41 IST 2026
[2026-06-27 09:06:41,380.380 INFO    ] ================================================
[2026-06-27 09:06:41,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:06:41
[2026-06-27 09:06:42,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:06:42,185.185 INFO    ] Initializing speech engine...
[2026-06-27 09:06:42,191.191 INFO    ] 2026-06-27 09:06:42
[2026-06-27 09:06:42,399.399 INFO    ] 2026-06-27 09:06:42
[2026-06-27 09:06:42,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:06:42,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:06:42,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:06:42,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:06:42,818.818 INFO    ] time= 27/06/2026 09:06:42
[2026-06-27 09:06:42,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:06:42,846.846 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:06:42,913.913 INFO    ] No existing commands found in stream
[2026-06-27 09:06:47,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:06:47,941.941 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-27 09:06:50,636.636 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 09:06:50,638.638 INFO    ] Checking for system updates...
[2026-06-27 09:06:50,660.660 INFO    ] 200
[2026-06-27 09:06:50,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:06:50,694.694 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:06:50,696.696 INFO    ] No update needed
[2026-06-27 09:06:50,697.697 INFO    ] Checking for camera pi updates...
[2026-06-27 09:06:50,720.720 INFO    ] 200
[2026-06-27 09:06:50,722.722 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:06:50,748.748 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:06:50,776.776 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:06:50,778.778 INFO    ] No camera update needed
[2026-06-27 09:06:50,779.779 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:06:50,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:06:50,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:06:50,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:06:52,827.827 INFO    ] ================================================
[2026-06-27 09:06:52,842.842 INFO    ] Launching Daemon at Sat Jun 27 09:06:52 IST 2026
[2026-06-27 09:06:52,852.852 INFO    ] ================================================
[2026-06-27 09:06:53,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:06:53
[2026-06-27 09:06:53,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:06:53,659.659 INFO    ] Initializing speech engine...
[2026-06-27 09:06:53,667.667 INFO    ] 2026-06-27 09:06:53
[2026-06-27 09:06:53,880.880 INFO    ] 2026-06-27 09:06:53
[2026-06-27 09:06:53,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:06:54,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:06:54,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:06:54,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:06:54,292.292 INFO    ] time= 27/06/2026 09:06:54
[2026-06-27 09:06:54,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:06:54,333.333 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:06:54,405.405 INFO    ] No existing commands found in stream
[2026-06-27 09:06:59,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:06:59,420.420 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-27 09:07:02,268.268 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:07:02,270.270 INFO    ] Checking for system updates...
[2026-06-27 09:07:02,291.291 INFO    ] 200
[2026-06-27 09:07:02,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:07:02,325.325 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:07:02,326.326 INFO    ] No update needed
[2026-06-27 09:07:02,327.327 INFO    ] Checking for camera pi updates...
[2026-06-27 09:07:02,346.346 INFO    ] 200
[2026-06-27 09:07:02,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:07:02,371.371 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:07:02,395.395 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:07:02,397.397 INFO    ] No camera update needed
[2026-06-27 09:07:02,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:07:02,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:07:02,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:07:02,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:07:04,452.452 INFO    ] ================================================
[2026-06-27 09:07:04,467.467 INFO    ] Launching Daemon at Sat Jun 27 09:07:04 IST 2026
[2026-06-27 09:07:04,478.478 INFO    ] ================================================
[2026-06-27 09:07:04,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:07:04
[2026-06-27 09:07:05,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:07:05,330.330 INFO    ] Initializing speech engine...
[2026-06-27 09:07:05,336.336 INFO    ] 2026-06-27 09:07:05
[2026-06-27 09:07:05,538.538 INFO    ] 2026-06-27 09:07:05
[2026-06-27 09:07:05,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:07:05,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:07:05,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:07:05,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:07:05,987.987 INFO    ] time= 27/06/2026 09:07:05
[2026-06-27 09:07:06,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:07:06,015.015 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:07:06,082.082 INFO    ] No existing commands found in stream
[2026-06-27 09:07:11,097.097 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:07:11,100.100 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-27 09:07:14,188.188 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:07:14,190.190 INFO    ] Checking for system updates...
[2026-06-27 09:07:14,211.211 INFO    ] 200
[2026-06-27 09:07:14,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:07:14,245.245 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:07:14,246.246 INFO    ] No update needed
[2026-06-27 09:07:14,247.247 INFO    ] Checking for camera pi updates...
[2026-06-27 09:07:14,268.268 INFO    ] 200
[2026-06-27 09:07:14,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:07:14,292.292 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:07:14,336.336 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:07:14,338.338 INFO    ] No camera update needed
[2026-06-27 09:07:14,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:07:14,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:07:14,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:07:14,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:07:16,384.384 INFO    ] ================================================
[2026-06-27 09:07:16,398.398 INFO    ] Launching Daemon at Sat Jun 27 09:07:16 IST 2026
[2026-06-27 09:07:16,409.409 INFO    ] ================================================
[2026-06-27 09:07:16,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:07:16
[2026-06-27 09:07:17,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:07:17,217.217 INFO    ] Initializing speech engine...
[2026-06-27 09:07:17,229.229 INFO    ] 2026-06-27 09:07:17
[2026-06-27 09:07:17,434.434 INFO    ] 2026-06-27 09:07:17
[2026-06-27 09:07:17,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:07:17,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:07:17,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:07:17,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:07:17,855.855 INFO    ] time= 27/06/2026 09:07:17
[2026-06-27 09:07:17,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:07:17,885.885 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:07:17,951.951 INFO    ] No existing commands found in stream
[2026-06-27 09:07:22,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:07:22,962.962 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-27 09:07:25,305.305 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:07:25,306.306 INFO    ] Checking for system updates...
[2026-06-27 09:07:25,327.327 INFO    ] 200
[2026-06-27 09:07:25,328.328 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:07:25,358.358 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:07:25,360.360 INFO    ] No update needed
[2026-06-27 09:07:25,361.361 INFO    ] Checking for camera pi updates...
[2026-06-27 09:07:25,383.383 INFO    ] 200
[2026-06-27 09:07:25,384.384 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:07:25,408.408 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:07:25,446.446 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:07:25,447.447 INFO    ] No camera update needed
[2026-06-27 09:07:25,449.449 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:07:25,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:07:25,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:07:25,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:07:27,494.494 INFO    ] ================================================
[2026-06-27 09:07:27,509.509 INFO    ] Launching Daemon at Sat Jun 27 09:07:27 IST 2026
[2026-06-27 09:07:27,520.520 INFO    ] ================================================
[2026-06-27 09:07:27,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:07:27
[2026-06-27 09:07:28,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:07:28,338.338 INFO    ] Initializing speech engine...
[2026-06-27 09:07:28,346.346 INFO    ] 2026-06-27 09:07:28
[2026-06-27 09:07:28,565.565 INFO    ] 2026-06-27 09:07:28
[2026-06-27 09:07:28,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:07:28,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:07:28,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:07:28,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:07:28,998.998 INFO    ] time= 27/06/2026 09:07:28
[2026-06-27 09:07:29,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:07:29,028.028 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:07:29,120.120 INFO    ] No existing commands found in stream
[2026-06-27 09:07:34,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:07:34,138.138 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-27 09:07:35,919.919 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 09:07:35,920.920 INFO    ] Checking for system updates...
[2026-06-27 09:07:35,942.942 INFO    ] 200
[2026-06-27 09:07:35,943.943 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:07:35,974.974 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:07:35,976.976 INFO    ] No update needed
[2026-06-27 09:07:35,977.977 INFO    ] Checking for camera pi updates...
[2026-06-27 09:07:35,997.997 INFO    ] 200
[2026-06-27 09:07:35,999.999 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:07:36,022.022 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:07:36,065.065 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:07:36,066.066 INFO    ] No camera update needed
[2026-06-27 09:07:36,068.068 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:07:36,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:07:36,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:07:36,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:07:38,117.117 INFO    ] ================================================
[2026-06-27 09:07:38,132.132 INFO    ] Launching Daemon at Sat Jun 27 09:07:38 IST 2026
[2026-06-27 09:07:38,143.143 INFO    ] ================================================
[2026-06-27 09:07:38,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:07:38
[2026-06-27 09:07:38,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:07:38,957.957 INFO    ] Initializing speech engine...
[2026-06-27 09:07:38,965.965 INFO    ] 2026-06-27 09:07:38
[2026-06-27 09:07:39,173.173 INFO    ] 2026-06-27 09:07:39
[2026-06-27 09:07:39,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:07:39,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:07:39,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:07:39,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:07:39,593.593 INFO    ] time= 27/06/2026 09:07:39
[2026-06-27 09:07:39,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:07:39,624.624 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:07:39,697.697 INFO    ] No existing commands found in stream
[2026-06-27 09:07:44,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:07:44,708.708 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-27 09:07:48,997.997 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:07:48,998.998 INFO    ] Checking for system updates...
[2026-06-27 09:07:49,021.021 INFO    ] 200
[2026-06-27 09:07:49,022.022 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:07:49,055.055 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:07:49,056.056 INFO    ] No update needed
[2026-06-27 09:07:49,057.057 INFO    ] Checking for camera pi updates...
[2026-06-27 09:07:49,077.077 INFO    ] 200
[2026-06-27 09:07:49,078.078 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:07:49,101.101 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:07:49,143.143 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:07:49,144.144 INFO    ] No camera update needed
[2026-06-27 09:07:49,146.146 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:07:49,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:07:49,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:07:49,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:07:51,191.191 INFO    ] ================================================
[2026-06-27 09:07:51,206.206 INFO    ] Launching Daemon at Sat Jun 27 09:07:51 IST 2026
[2026-06-27 09:07:51,216.216 INFO    ] ================================================
[2026-06-27 09:07:51,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:07:51
[2026-06-27 09:07:51,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:07:52,026.026 INFO    ] Initializing speech engine...
[2026-06-27 09:07:52,034.034 INFO    ] 2026-06-27 09:07:52
[2026-06-27 09:07:52,249.249 INFO    ] 2026-06-27 09:07:52
[2026-06-27 09:07:52,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:07:52,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:07:52,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:07:52,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:07:52,662.662 INFO    ] time= 27/06/2026 09:07:52
[2026-06-27 09:07:52,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:07:52,701.701 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:07:52,767.767 INFO    ] No existing commands found in stream
[2026-06-27 09:07:57,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:07:57,780.780 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-27 09:08:01,633.633 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:08:01,636.636 INFO    ] Checking for system updates...
[2026-06-27 09:08:01,665.665 INFO    ] 200
[2026-06-27 09:08:01,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:08:01,755.755 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:08:01,757.757 INFO    ] No update needed
[2026-06-27 09:08:01,759.759 INFO    ] Checking for camera pi updates...
[2026-06-27 09:08:01,790.790 INFO    ] 200
[2026-06-27 09:08:01,792.792 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:08:01,822.822 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:08:01,870.870 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:08:01,872.872 INFO    ] No camera update needed
[2026-06-27 09:08:01,874.874 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:08:01,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:08:01,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:08:01,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:08:03,908.908 INFO    ] ================================================
[2026-06-27 09:08:03,916.916 INFO    ] Launching Daemon at Sat Jun 27 09:08:03 IST 2026
[2026-06-27 09:08:03,922.922 INFO    ] ================================================
[2026-06-27 09:08:04,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:08:04
[2026-06-27 09:08:04,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:08:04,816.816 INFO    ] Initializing speech engine...
[2026-06-27 09:08:04,820.820 INFO    ] 2026-06-27 09:08:04
[2026-06-27 09:08:05,028.028 INFO    ] 2026-06-27 09:08:05
[2026-06-27 09:08:05,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:08:05,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:08:05,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:08:05,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:08:05,445.445 INFO    ] time= 27/06/2026 09:08:05
[2026-06-27 09:08:05,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:08:05,475.475 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:08:05,565.565 INFO    ] No existing commands found in stream
[2026-06-27 09:08:10,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:08:10,583.583 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-27 09:08:11,489.489 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 09:08:11,491.491 INFO    ] Checking for system updates...
[2026-06-27 09:08:11,513.513 INFO    ] 200
[2026-06-27 09:08:11,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:08:11,551.551 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:08:11,552.552 INFO    ] No update needed
[2026-06-27 09:08:11,554.554 INFO    ] Checking for camera pi updates...
[2026-06-27 09:08:11,576.576 INFO    ] 200
[2026-06-27 09:08:11,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:08:11,601.601 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:08:11,638.638 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:08:11,640.640 INFO    ] No camera update needed
[2026-06-27 09:08:11,641.641 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:08:11,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:08:11,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:08:11,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:08:13,687.687 INFO    ] ================================================
[2026-06-27 09:08:13,702.702 INFO    ] Launching Daemon at Sat Jun 27 09:08:13 IST 2026
[2026-06-27 09:08:13,713.713 INFO    ] ================================================
[2026-06-27 09:08:14,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:08:14
[2026-06-27 09:08:14,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:08:14,522.522 INFO    ] Initializing speech engine...
[2026-06-27 09:08:14,528.528 INFO    ] 2026-06-27 09:08:14
[2026-06-27 09:08:14,734.734 INFO    ] 2026-06-27 09:08:14
[2026-06-27 09:08:14,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:08:14,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:08:14,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:08:15,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:08:15,152.152 INFO    ] time= 27/06/2026 09:08:15
[2026-06-27 09:08:15,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:08:15,182.182 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:08:15,248.248 INFO    ] No existing commands found in stream
[2026-06-27 09:08:20,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:08:20,260.260 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-27 09:08:23,219.219 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:08:23,221.221 INFO    ] Checking for system updates...
[2026-06-27 09:08:23,241.241 INFO    ] 200
[2026-06-27 09:08:23,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:08:23,273.273 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:08:23,275.275 INFO    ] No update needed
[2026-06-27 09:08:23,276.276 INFO    ] Checking for camera pi updates...
[2026-06-27 09:08:23,297.297 INFO    ] 200
[2026-06-27 09:08:23,298.298 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:08:23,327.327 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:08:23,468.468 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:08:23,469.469 INFO    ] No camera update needed
[2026-06-27 09:08:23,471.471 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:08:23,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:08:23,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:08:23,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:08:25,517.517 INFO    ] ================================================
[2026-06-27 09:08:25,532.532 INFO    ] Launching Daemon at Sat Jun 27 09:08:25 IST 2026
[2026-06-27 09:08:25,543.543 INFO    ] ================================================
[2026-06-27 09:08:25,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:08:25
[2026-06-27 09:08:26,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:08:26,335.335 INFO    ] Initializing speech engine...
[2026-06-27 09:08:26,344.344 INFO    ] 2026-06-27 09:08:26
[2026-06-27 09:08:26,548.548 INFO    ] 2026-06-27 09:08:26
[2026-06-27 09:08:26,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:08:26,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:08:26,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:08:26,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:08:26,971.971 INFO    ] time= 27/06/2026 09:08:26
[2026-06-27 09:08:26,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:08:26,999.999 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:08:27,066.066 INFO    ] No existing commands found in stream
[2026-06-27 09:08:32,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:08:32,076.076 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-27 09:08:36,424.424 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:08:36,425.425 INFO    ] Checking for system updates...
[2026-06-27 09:08:36,446.446 INFO    ] 200
[2026-06-27 09:08:36,448.448 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:08:36,478.478 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:08:36,479.479 INFO    ] No update needed
[2026-06-27 09:08:36,481.481 INFO    ] Checking for camera pi updates...
[2026-06-27 09:08:36,504.504 INFO    ] 200
[2026-06-27 09:08:36,505.505 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:08:36,531.531 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:08:36,559.559 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:08:36,560.560 INFO    ] No camera update needed
[2026-06-27 09:08:36,561.561 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:08:36,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:08:36,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:08:36,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:08:38,609.609 INFO    ] ================================================
[2026-06-27 09:08:38,624.624 INFO    ] Launching Daemon at Sat Jun 27 09:08:38 IST 2026
[2026-06-27 09:08:38,635.635 INFO    ] ================================================
[2026-06-27 09:08:38,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:08:38
[2026-06-27 09:08:39,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:08:39,419.419 INFO    ] Initializing speech engine...
[2026-06-27 09:08:39,433.433 INFO    ] 2026-06-27 09:08:39
[2026-06-27 09:08:39,641.641 INFO    ] 2026-06-27 09:08:39
[2026-06-27 09:08:39,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:08:39,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:08:39,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:08:39,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:08:40,061.061 INFO    ] time= 27/06/2026 09:08:40
[2026-06-27 09:08:40,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:08:40,091.091 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:08:40,158.158 INFO    ] No existing commands found in stream
[2026-06-27 09:08:45,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:08:45,175.175 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-27 09:08:48,190.190 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:08:48,192.192 INFO    ] Checking for system updates...
[2026-06-27 09:08:48,213.213 INFO    ] 200
[2026-06-27 09:08:48,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:08:48,246.246 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:08:48,247.247 INFO    ] No update needed
[2026-06-27 09:08:48,249.249 INFO    ] Checking for camera pi updates...
[2026-06-27 09:08:48,269.269 INFO    ] 200
[2026-06-27 09:08:48,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:08:48,294.294 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:08:48,337.337 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:08:48,338.338 INFO    ] No camera update needed
[2026-06-27 09:08:48,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:08:48,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:08:48,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:08:48,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:08:50,385.385 INFO    ] ================================================
[2026-06-27 09:08:50,401.401 INFO    ] Launching Daemon at Sat Jun 27 09:08:50 IST 2026
[2026-06-27 09:08:50,412.412 INFO    ] ================================================
[2026-06-27 09:08:50,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:08:50
[2026-06-27 09:08:51,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:08:51,204.204 INFO    ] Initializing speech engine...
[2026-06-27 09:08:51,208.208 INFO    ] 2026-06-27 09:08:51
[2026-06-27 09:08:51,412.412 INFO    ] 2026-06-27 09:08:51
[2026-06-27 09:08:51,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:08:51,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:08:51,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:08:51,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:08:51,813.813 INFO    ] time= 27/06/2026 09:08:51
[2026-06-27 09:08:51,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:08:51,857.857 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:08:51,929.929 INFO    ] No existing commands found in stream
[2026-06-27 09:08:56,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:08:56,940.940 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-27 09:09:01,062.062 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:09:01,063.063 INFO    ] Checking for system updates...
[2026-06-27 09:09:01,084.084 INFO    ] 200
[2026-06-27 09:09:01,086.086 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:09:01,117.117 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:09:01,119.119 INFO    ] No update needed
[2026-06-27 09:09:01,120.120 INFO    ] Checking for camera pi updates...
[2026-06-27 09:09:01,139.139 INFO    ] 200
[2026-06-27 09:09:01,141.141 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:09:01,164.164 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:09:01,205.205 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:09:01,206.206 INFO    ] No camera update needed
[2026-06-27 09:09:01,208.208 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:09:01,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:09:01,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:09:01,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:09:03,239.239 INFO    ] ================================================
[2026-06-27 09:09:03,248.248 INFO    ] Launching Daemon at Sat Jun 27 09:09:03 IST 2026
[2026-06-27 09:09:03,255.255 INFO    ] ================================================
[2026-06-27 09:09:03,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:09:03
[2026-06-27 09:09:03,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:09:04,076.076 INFO    ] Initializing speech engine...
[2026-06-27 09:09:04,081.081 INFO    ] 2026-06-27 09:09:04
[2026-06-27 09:09:04,287.287 INFO    ] 2026-06-27 09:09:04
[2026-06-27 09:09:04,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:09:04,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:09:04,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:09:04,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:09:04,697.697 INFO    ] time= 27/06/2026 09:09:04
[2026-06-27 09:09:04,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:09:04,731.731 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:09:04,804.804 INFO    ] No existing commands found in stream
[2026-06-27 09:09:09,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:09:09,816.816 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-27 09:09:13,918.918 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:09:13,920.920 INFO    ] Checking for system updates...
[2026-06-27 09:09:13,941.941 INFO    ] 200
[2026-06-27 09:09:13,942.942 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:09:13,975.975 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:09:13,976.976 INFO    ] No update needed
[2026-06-27 09:09:13,977.977 INFO    ] Checking for camera pi updates...
[2026-06-27 09:09:13,997.997 INFO    ] 200
[2026-06-27 09:09:13,998.998 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:09:14,022.022 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:09:14,060.060 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:09:14,061.061 INFO    ] No camera update needed
[2026-06-27 09:09:14,062.062 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:09:14,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:09:14,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:09:14,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:09:16,113.113 INFO    ] ================================================
[2026-06-27 09:09:16,129.129 INFO    ] Launching Daemon at Sat Jun 27 09:09:16 IST 2026
[2026-06-27 09:09:16,141.141 INFO    ] ================================================
[2026-06-27 09:09:16,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:09:16
[2026-06-27 09:09:16,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:09:16,993.993 INFO    ] Initializing speech engine...
[2026-06-27 09:09:16,998.998 INFO    ] 2026-06-27 09:09:16
[2026-06-27 09:09:17,217.217 INFO    ] 2026-06-27 09:09:17
[2026-06-27 09:09:17,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:09:17,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:09:17,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:09:17,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:09:17,645.645 INFO    ] time= 27/06/2026 09:09:17
[2026-06-27 09:09:17,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:09:17,675.675 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:09:17,743.743 INFO    ] No existing commands found in stream
[2026-06-27 09:09:22,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:09:22,755.755 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-27 09:09:23,185.185 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:09:23,186.186 INFO    ] Checking for system updates...
[2026-06-27 09:09:23,208.208 INFO    ] 200
[2026-06-27 09:09:23,210.210 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:09:23,241.241 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:09:23,242.242 INFO    ] No update needed
[2026-06-27 09:09:23,244.244 INFO    ] Checking for camera pi updates...
[2026-06-27 09:09:23,264.264 INFO    ] 200
[2026-06-27 09:09:23,265.265 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:09:23,289.289 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:09:23,335.335 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:09:23,337.337 INFO    ] No camera update needed
[2026-06-27 09:09:23,338.338 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:09:23,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:09:23,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:09:23,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:09:25,388.388 INFO    ] ================================================
[2026-06-27 09:09:25,404.404 INFO    ] Launching Daemon at Sat Jun 27 09:09:25 IST 2026
[2026-06-27 09:09:25,415.415 INFO    ] ================================================
[2026-06-27 09:09:25,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:09:25
[2026-06-27 09:09:26,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:09:26,274.274 INFO    ] Initializing speech engine...
[2026-06-27 09:09:26,279.279 INFO    ] 2026-06-27 09:09:26
[2026-06-27 09:09:26,488.488 INFO    ] 2026-06-27 09:09:26
[2026-06-27 09:09:26,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:09:26,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:09:26,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:09:26,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:09:26,928.928 INFO    ] time= 27/06/2026 09:09:26
[2026-06-27 09:09:26,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:09:26,935.935 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:09:27,003.003 INFO    ] No existing commands found in stream
[2026-06-27 09:09:32,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:09:32,019.019 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-27 09:09:36,212.212 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:09:36,213.213 INFO    ] Checking for system updates...
[2026-06-27 09:09:36,235.235 INFO    ] 200
[2026-06-27 09:09:36,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:09:36,269.269 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:09:36,270.270 INFO    ] No update needed
[2026-06-27 09:09:36,272.272 INFO    ] Checking for camera pi updates...
[2026-06-27 09:09:36,296.296 INFO    ] 200
[2026-06-27 09:09:36,297.297 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:09:36,323.323 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:09:36,362.362 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:09:36,364.364 INFO    ] No camera update needed
[2026-06-27 09:09:36,365.365 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:09:36,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:09:36,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:09:36,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:09:38,411.411 INFO    ] ================================================
[2026-06-27 09:09:38,426.426 INFO    ] Launching Daemon at Sat Jun 27 09:09:38 IST 2026
[2026-06-27 09:09:38,439.439 INFO    ] ================================================
[2026-06-27 09:09:38,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:09:38
[2026-06-27 09:09:39,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:09:39,218.218 INFO    ] Initializing speech engine...
[2026-06-27 09:09:39,226.226 INFO    ] 2026-06-27 09:09:39
[2026-06-27 09:09:39,439.439 INFO    ] 2026-06-27 09:09:39
[2026-06-27 09:09:39,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:09:39,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:09:39,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:09:39,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:09:39,843.843 INFO    ] time= 27/06/2026 09:09:39
[2026-06-27 09:09:39,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:09:39,893.893 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:09:39,962.962 INFO    ] No existing commands found in stream
[2026-06-27 09:09:44,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:09:44,975.975 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-27 09:09:47,340.340 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:09:47,342.342 INFO    ] Checking for system updates...
[2026-06-27 09:09:47,363.363 INFO    ] 200
[2026-06-27 09:09:47,365.365 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:09:47,395.395 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:09:47,397.397 INFO    ] No update needed
[2026-06-27 09:09:47,398.398 INFO    ] Checking for camera pi updates...
[2026-06-27 09:09:47,418.418 INFO    ] 200
[2026-06-27 09:09:47,420.420 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:09:47,445.445 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:09:47,485.485 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:09:47,486.486 INFO    ] No camera update needed
[2026-06-27 09:09:47,488.488 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:09:47,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:09:47,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:09:47,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:09:49,532.532 INFO    ] ================================================
[2026-06-27 09:09:49,547.547 INFO    ] Launching Daemon at Sat Jun 27 09:09:49 IST 2026
[2026-06-27 09:09:49,558.558 INFO    ] ================================================
[2026-06-27 09:09:49,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:09:49
[2026-06-27 09:09:50,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:09:50,415.415 INFO    ] Initializing speech engine...
[2026-06-27 09:09:50,417.417 INFO    ] 2026-06-27 09:09:50
[2026-06-27 09:09:50,623.623 INFO    ] 2026-06-27 09:09:50
[2026-06-27 09:09:50,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:09:50,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:09:50,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:09:51,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:09:51,064.064 INFO    ] time= 27/06/2026 09:09:51
[2026-06-27 09:09:51,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:09:51,121.121 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:09:51,212.212 INFO    ] No existing commands found in stream
[2026-06-27 09:09:56,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:09:56,225.225 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-27 09:09:58,334.334 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:09:58,336.336 INFO    ] Checking for system updates...
[2026-06-27 09:09:58,357.357 INFO    ] 200
[2026-06-27 09:09:58,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:09:58,388.388 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:09:58,389.389 INFO    ] No update needed
[2026-06-27 09:09:58,391.391 INFO    ] Checking for camera pi updates...
[2026-06-27 09:09:58,410.410 INFO    ] 200
[2026-06-27 09:09:58,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:09:58,438.438 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:09:58,478.478 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:09:58,479.479 INFO    ] No camera update needed
[2026-06-27 09:09:58,481.481 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:09:58,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:09:58,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:09:58,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:10:00,526.526 INFO    ] ================================================
[2026-06-27 09:10:00,541.541 INFO    ] Launching Daemon at Sat Jun 27 09:10:00 IST 2026
[2026-06-27 09:10:00,552.552 INFO    ] ================================================
[2026-06-27 09:10:00,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:10:00
[2026-06-27 09:10:01,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:10:01,393.393 INFO    ] Initializing speech engine...
[2026-06-27 09:10:01,399.399 INFO    ] 2026-06-27 09:10:01
[2026-06-27 09:10:01,608.608 INFO    ] 2026-06-27 09:10:01
[2026-06-27 09:10:01,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:10:01,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:10:01,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:10:01,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:10:01,992.992 INFO    ] time= 27/06/2026 09:10:01
[2026-06-27 09:10:02,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:10:02,010.010 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:10:02,076.076 INFO    ] No existing commands found in stream
[2026-06-27 09:10:07,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:10:07,106.106 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-27 09:10:08,964.964 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 09:10:08,966.966 INFO    ] Checking for system updates...
[2026-06-27 09:10:08,990.990 INFO    ] 200
[2026-06-27 09:10:08,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:10:09,027.027 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:10:09,028.028 INFO    ] No update needed
[2026-06-27 09:10:09,030.030 INFO    ] Checking for camera pi updates...
[2026-06-27 09:10:09,051.051 INFO    ] 200
[2026-06-27 09:10:09,052.052 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:10:09,077.077 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:10:09,102.102 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:10:09,103.103 INFO    ] No camera update needed
[2026-06-27 09:10:09,105.105 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:10:09,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:10:09,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:10:09,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:10:11,151.151 INFO    ] ================================================
[2026-06-27 09:10:11,166.166 INFO    ] Launching Daemon at Sat Jun 27 09:10:11 IST 2026
[2026-06-27 09:10:11,176.176 INFO    ] ================================================
[2026-06-27 09:10:11,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:10:11
[2026-06-27 09:10:11,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:10:11,971.971 INFO    ] Initializing speech engine...
[2026-06-27 09:10:11,981.981 INFO    ] 2026-06-27 09:10:11
[2026-06-27 09:10:12,191.191 INFO    ] 2026-06-27 09:10:12
[2026-06-27 09:10:12,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:10:12,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:10:12,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:10:12,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:10:12,614.614 INFO    ] time= 27/06/2026 09:10:12
[2026-06-27 09:10:12,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:10:12,644.644 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:10:12,709.709 INFO    ] No existing commands found in stream
[2026-06-27 09:10:17,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:10:17,723.723 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-27 09:10:21,294.294 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:10:21,296.296 INFO    ] Checking for system updates...
[2026-06-27 09:10:21,316.316 INFO    ] 200
[2026-06-27 09:10:21,318.318 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:10:21,348.348 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:10:21,349.349 INFO    ] No update needed
[2026-06-27 09:10:21,351.351 INFO    ] Checking for camera pi updates...
[2026-06-27 09:10:21,370.370 INFO    ] 200
[2026-06-27 09:10:21,372.372 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:10:21,395.395 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:10:21,436.436 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:10:21,437.437 INFO    ] No camera update needed
[2026-06-27 09:10:21,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:10:21,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:10:21,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:10:21,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:10:23,487.487 INFO    ] ================================================
[2026-06-27 09:10:23,502.502 INFO    ] Launching Daemon at Sat Jun 27 09:10:23 IST 2026
[2026-06-27 09:10:23,514.514 INFO    ] ================================================
[2026-06-27 09:10:23,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:10:23
[2026-06-27 09:10:24,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:10:24,324.324 INFO    ] Initializing speech engine...
[2026-06-27 09:10:24,328.328 INFO    ] 2026-06-27 09:10:24
[2026-06-27 09:10:24,550.550 INFO    ] 2026-06-27 09:10:24
[2026-06-27 09:10:24,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:10:24,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:10:24,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:10:24,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:10:24,993.993 INFO    ] time= 27/06/2026 09:10:24
[2026-06-27 09:10:25,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:10:25,038.038 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:10:25,114.114 INFO    ] No existing commands found in stream
[2026-06-27 09:10:30,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:10:30,126.126 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-27 09:10:30,789.789 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:10:30,791.791 INFO    ] Checking for system updates...
[2026-06-27 09:10:30,812.812 INFO    ] 200
[2026-06-27 09:10:30,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:10:30,843.843 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:10:30,845.845 INFO    ] No update needed
[2026-06-27 09:10:30,846.846 INFO    ] Checking for camera pi updates...
[2026-06-27 09:10:30,866.866 INFO    ] 200
[2026-06-27 09:10:30,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:10:30,891.891 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:10:31,019.019 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:10:31,020.020 INFO    ] No camera update needed
[2026-06-27 09:10:31,021.021 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:10:31,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:10:31,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:10:31,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:10:33,067.067 INFO    ] ================================================
[2026-06-27 09:10:33,082.082 INFO    ] Launching Daemon at Sat Jun 27 09:10:33 IST 2026
[2026-06-27 09:10:33,093.093 INFO    ] ================================================
[2026-06-27 09:10:33,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:10:33
[2026-06-27 09:10:33,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:10:33,963.963 INFO    ] Initializing speech engine...
[2026-06-27 09:10:33,968.968 INFO    ] 2026-06-27 09:10:33
[2026-06-27 09:10:34,159.159 INFO    ] 2026-06-27 09:10:34
[2026-06-27 09:10:34,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:10:34,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:10:34,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:10:34,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:10:34,628.628 INFO    ] time= 27/06/2026 09:10:34
[2026-06-27 09:10:34,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:10:34,641.641 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:10:34,708.708 INFO    ] No existing commands found in stream
[2026-06-27 09:10:39,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:10:39,722.722 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-27 09:10:42,420.420 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 09:10:42,422.422 INFO    ] Checking for system updates...
[2026-06-27 09:10:42,443.443 INFO    ] 200
[2026-06-27 09:10:42,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:10:42,479.479 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:10:42,480.480 INFO    ] No update needed
[2026-06-27 09:10:42,481.481 INFO    ] Checking for camera pi updates...
[2026-06-27 09:10:42,505.505 INFO    ] 200
[2026-06-27 09:10:42,507.507 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:10:42,535.535 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:10:42,576.576 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:10:42,578.578 INFO    ] No camera update needed
[2026-06-27 09:10:42,580.580 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:10:42,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:10:42,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:10:42,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:10:44,628.628 INFO    ] ================================================
[2026-06-27 09:10:44,644.644 INFO    ] Launching Daemon at Sat Jun 27 09:10:44 IST 2026
[2026-06-27 09:10:44,655.655 INFO    ] ================================================
[2026-06-27 09:10:45,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:10:45
[2026-06-27 09:10:45,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:10:45,519.519 INFO    ] Initializing speech engine...
[2026-06-27 09:10:45,528.528 INFO    ] 2026-06-27 09:10:45
[2026-06-27 09:10:45,748.748 INFO    ] 2026-06-27 09:10:45
[2026-06-27 09:10:45,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:10:45,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:10:45,974.974 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:10:46,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:10:46,185.185 INFO    ] time= 27/06/2026 09:10:46
[2026-06-27 09:10:46,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:10:46,220.220 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:10:46,297.297 INFO    ] No existing commands found in stream
[2026-06-27 09:10:51,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:10:51,311.311 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-27 09:10:53,844.844 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:10:53,846.846 INFO    ] Checking for system updates...
[2026-06-27 09:10:53,866.866 INFO    ] 200
[2026-06-27 09:10:53,868.868 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:10:53,899.899 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:10:53,901.901 INFO    ] No update needed
[2026-06-27 09:10:53,902.902 INFO    ] Checking for camera pi updates...
[2026-06-27 09:10:53,922.922 INFO    ] 200
[2026-06-27 09:10:53,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:10:53,947.947 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:10:53,976.976 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:10:53,977.977 INFO    ] No camera update needed
[2026-06-27 09:10:53,978.978 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:10:53,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:10:53,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:10:53,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:10:56,025.025 INFO    ] ================================================
[2026-06-27 09:10:56,041.041 INFO    ] Launching Daemon at Sat Jun 27 09:10:56 IST 2026
[2026-06-27 09:10:56,052.052 INFO    ] ================================================
[2026-06-27 09:10:56,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:10:56
[2026-06-27 09:10:56,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:10:56,876.876 INFO    ] Initializing speech engine...
[2026-06-27 09:10:56,882.882 INFO    ] 2026-06-27 09:10:56
[2026-06-27 09:10:57,089.089 INFO    ] 2026-06-27 09:10:57
[2026-06-27 09:10:57,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:10:57,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:10:57,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:10:57,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:10:57,495.495 INFO    ] time= 27/06/2026 09:10:57
[2026-06-27 09:10:57,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:10:57,540.540 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:10:57,608.608 INFO    ] No existing commands found in stream
[2026-06-27 09:11:02,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:11:02,617.617 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-27 09:11:04,894.894 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 09:11:04,896.896 INFO    ] Checking for system updates...
[2026-06-27 09:11:04,918.918 INFO    ] 200
[2026-06-27 09:11:04,919.919 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:11:04,949.949 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:11:04,951.951 INFO    ] No update needed
[2026-06-27 09:11:04,952.952 INFO    ] Checking for camera pi updates...
[2026-06-27 09:11:04,971.971 INFO    ] 200
[2026-06-27 09:11:04,973.973 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:11:05,001.001 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:11:05,043.043 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:11:05,044.044 INFO    ] No camera update needed
[2026-06-27 09:11:05,045.045 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:11:05,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:11:05,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:11:05,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:11:07,091.091 INFO    ] ================================================
[2026-06-27 09:11:07,107.107 INFO    ] Launching Daemon at Sat Jun 27 09:11:07 IST 2026
[2026-06-27 09:11:07,118.118 INFO    ] ================================================
[2026-06-27 09:11:07,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:11:07
[2026-06-27 09:11:07,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:11:07,926.926 INFO    ] Initializing speech engine...
[2026-06-27 09:11:07,931.931 INFO    ] 2026-06-27 09:11:07
[2026-06-27 09:11:08,160.160 INFO    ] 2026-06-27 09:11:08
[2026-06-27 09:11:08,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:11:08,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:11:08,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:11:08,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:11:08,591.591 INFO    ] time= 27/06/2026 09:11:08
[2026-06-27 09:11:08,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:11:08,635.635 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:11:08,707.707 INFO    ] No existing commands found in stream
[2026-06-27 09:11:13,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:11:13,719.719 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-27 09:11:14,521.521 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 09:11:14,523.523 INFO    ] Checking for system updates...
[2026-06-27 09:11:14,544.544 INFO    ] 200
[2026-06-27 09:11:14,545.545 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:11:14,576.576 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:11:14,577.577 INFO    ] No update needed
[2026-06-27 09:11:14,578.578 INFO    ] Checking for camera pi updates...
[2026-06-27 09:11:14,598.598 INFO    ] 200
[2026-06-27 09:11:14,599.599 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:11:14,624.624 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:11:14,664.664 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:11:14,666.666 INFO    ] No camera update needed
[2026-06-27 09:11:14,667.667 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:11:14,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:11:14,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:11:14,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:11:16,713.713 INFO    ] ================================================
[2026-06-27 09:11:16,728.728 INFO    ] Launching Daemon at Sat Jun 27 09:11:16 IST 2026
[2026-06-27 09:11:16,739.739 INFO    ] ================================================
[2026-06-27 09:11:17,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:11:17
[2026-06-27 09:11:17,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:11:17,529.529 INFO    ] Initializing speech engine...
[2026-06-27 09:11:17,534.534 INFO    ] 2026-06-27 09:11:17
[2026-06-27 09:11:17,760.760 INFO    ] 2026-06-27 09:11:17
[2026-06-27 09:11:17,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:11:17,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:11:17,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:11:18,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:11:18,200.200 INFO    ] time= 27/06/2026 09:11:18
[2026-06-27 09:11:18,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:11:18,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:11:18,310.310 INFO    ] No existing commands found in stream
[2026-06-27 09:11:23,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:11:23,323.323 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-27 09:11:25,611.611 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:11:25,612.612 INFO    ] Checking for system updates...
[2026-06-27 09:11:25,633.633 INFO    ] 200
[2026-06-27 09:11:25,635.635 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:11:25,665.665 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:11:25,666.666 INFO    ] No update needed
[2026-06-27 09:11:25,667.667 INFO    ] Checking for camera pi updates...
[2026-06-27 09:11:25,686.686 INFO    ] 200
[2026-06-27 09:11:25,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:11:25,711.711 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:11:25,751.751 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:11:25,753.753 INFO    ] No camera update needed
[2026-06-27 09:11:25,754.754 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:11:25,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:11:25,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:11:25,761.761 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:11:27,800.800 INFO    ] ================================================
[2026-06-27 09:11:27,816.816 INFO    ] Launching Daemon at Sat Jun 27 09:11:27 IST 2026
[2026-06-27 09:11:27,827.827 INFO    ] ================================================
[2026-06-27 09:11:28,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:11:28
[2026-06-27 09:11:28,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:11:28,617.617 INFO    ] Initializing speech engine...
[2026-06-27 09:11:28,621.621 INFO    ] 2026-06-27 09:11:28
[2026-06-27 09:11:28,836.836 INFO    ] 2026-06-27 09:11:28
[2026-06-27 09:11:28,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:11:29,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:11:29,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:11:29,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:11:29,256.256 INFO    ] time= 27/06/2026 09:11:29
[2026-06-27 09:11:29,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:11:29,352.352 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:11:29,440.440 INFO    ] No existing commands found in stream
[2026-06-27 09:11:34,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:11:34,452.452 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-27 09:11:37,814.814 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 09:11:37,815.815 INFO    ] Checking for system updates...
[2026-06-27 09:11:37,836.836 INFO    ] 200
[2026-06-27 09:11:37,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:11:37,871.871 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:11:37,872.872 INFO    ] No update needed
[2026-06-27 09:11:37,874.874 INFO    ] Checking for camera pi updates...
[2026-06-27 09:11:37,896.896 INFO    ] 200
[2026-06-27 09:11:37,897.897 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:11:37,924.924 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:11:37,962.962 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:11:37,964.964 INFO    ] No camera update needed
[2026-06-27 09:11:37,965.965 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:11:37,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:11:37,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:11:37,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:11:40,011.011 INFO    ] ================================================
[2026-06-27 09:11:40,027.027 INFO    ] Launching Daemon at Sat Jun 27 09:11:40 IST 2026
[2026-06-27 09:11:40,039.039 INFO    ] ================================================
[2026-06-27 09:11:40,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:11:40
[2026-06-27 09:11:40,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:11:40,880.880 INFO    ] Initializing speech engine...
[2026-06-27 09:11:40,884.884 INFO    ] 2026-06-27 09:11:40
[2026-06-27 09:11:41,092.092 INFO    ] 2026-06-27 09:11:41
[2026-06-27 09:11:41,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:11:41,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:11:41,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:11:41,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:11:41,518.518 INFO    ] time= 27/06/2026 09:11:41
[2026-06-27 09:11:41,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:11:41,547.547 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:11:41,615.615 INFO    ] No existing commands found in stream
[2026-06-27 09:11:46,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:11:46,627.627 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-27 09:11:50,315.315 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 09:11:50,316.316 INFO    ] Checking for system updates...
[2026-06-27 09:11:50,337.337 INFO    ] 200
[2026-06-27 09:11:50,338.338 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:11:50,369.369 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:11:50,370.370 INFO    ] No update needed
[2026-06-27 09:11:50,371.371 INFO    ] Checking for camera pi updates...
[2026-06-27 09:11:50,391.391 INFO    ] 200
[2026-06-27 09:11:50,393.393 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:11:50,417.417 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:11:50,460.460 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:11:50,461.461 INFO    ] No camera update needed
[2026-06-27 09:11:50,462.462 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:11:50,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:11:50,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:11:50,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:11:52,509.509 INFO    ] ================================================
[2026-06-27 09:11:52,525.525 INFO    ] Launching Daemon at Sat Jun 27 09:11:52 IST 2026
[2026-06-27 09:11:52,536.536 INFO    ] ================================================
[2026-06-27 09:11:52,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:11:52
[2026-06-27 09:11:53,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:11:53,367.367 INFO    ] Initializing speech engine...
[2026-06-27 09:11:53,373.373 INFO    ] 2026-06-27 09:11:53
[2026-06-27 09:11:53,589.589 INFO    ] 2026-06-27 09:11:53
[2026-06-27 09:11:53,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:11:53,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:11:53,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:11:53,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:11:54,020.020 INFO    ] time= 27/06/2026 09:11:53
[2026-06-27 09:11:54,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:11:54,058.058 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:11:54,132.132 INFO    ] No existing commands found in stream
[2026-06-27 09:11:59,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:11:59,146.146 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-27 09:12:00,295.295 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 09:12:00,296.296 INFO    ] Checking for system updates...
[2026-06-27 09:12:00,320.320 INFO    ] 200
[2026-06-27 09:12:00,322.322 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:12:00,352.352 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:12:00,353.353 INFO    ] No update needed
[2026-06-27 09:12:00,355.355 INFO    ] Checking for camera pi updates...
[2026-06-27 09:12:00,374.374 INFO    ] 200
[2026-06-27 09:12:00,375.375 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:12:00,400.400 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:12:00,447.447 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:12:00,448.448 INFO    ] No camera update needed
[2026-06-27 09:12:00,449.449 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:12:00,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:12:00,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:12:00,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:12:02,485.485 INFO    ] ================================================
[2026-06-27 09:12:02,494.494 INFO    ] Launching Daemon at Sat Jun 27 09:12:02 IST 2026
[2026-06-27 09:12:02,500.500 INFO    ] ================================================
[2026-06-27 09:12:02,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:12:02
[2026-06-27 09:12:03,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:12:03,339.339 INFO    ] Initializing speech engine...
[2026-06-27 09:12:03,344.344 INFO    ] 2026-06-27 09:12:03
[2026-06-27 09:12:03,566.566 INFO    ] 2026-06-27 09:12:03
[2026-06-27 09:12:03,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:12:03,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:12:03,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:12:03,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:12:03,995.995 INFO    ] time= 27/06/2026 09:12:03
[2026-06-27 09:12:04,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:12:04,024.024 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:12:04,092.092 INFO    ] No existing commands found in stream
[2026-06-27 09:12:09,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:12:09,105.105 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-27 09:12:12,247.247 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:12:12,249.249 INFO    ] Checking for system updates...
[2026-06-27 09:12:12,271.271 INFO    ] 200
[2026-06-27 09:12:12,272.272 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:12:12,302.302 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:12:12,304.304 INFO    ] No update needed
[2026-06-27 09:12:12,305.305 INFO    ] Checking for camera pi updates...
[2026-06-27 09:12:12,326.326 INFO    ] 200
[2026-06-27 09:12:12,327.327 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:12:12,354.354 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:12:12,394.394 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:12:12,395.395 INFO    ] No camera update needed
[2026-06-27 09:12:12,396.396 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:12:12,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:12:12,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:12:12,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:12:14,442.442 INFO    ] ================================================
[2026-06-27 09:12:14,462.462 INFO    ] Launching Daemon at Sat Jun 27 09:12:14 IST 2026
[2026-06-27 09:12:14,475.475 INFO    ] ================================================
[2026-06-27 09:12:14,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:12:14
[2026-06-27 09:12:15,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:12:15,318.318 INFO    ] Initializing speech engine...
[2026-06-27 09:12:15,323.323 INFO    ] 2026-06-27 09:12:15
[2026-06-27 09:12:15,533.533 INFO    ] 2026-06-27 09:12:15
[2026-06-27 09:12:15,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:12:15,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:12:15,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:12:15,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:12:15,951.951 INFO    ] time= 27/06/2026 09:12:15
[2026-06-27 09:12:15,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:12:15,992.992 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:12:16,061.061 INFO    ] No existing commands found in stream
[2026-06-27 09:12:21,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:12:21,076.076 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-27 09:12:21,632.632 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:12:21,635.635 INFO    ] Checking for system updates...
[2026-06-27 09:12:21,673.673 INFO    ] 200
[2026-06-27 09:12:21,675.675 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:12:21,729.729 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:12:21,732.732 INFO    ] No update needed
[2026-06-27 09:12:21,734.734 INFO    ] Checking for camera pi updates...
[2026-06-27 09:12:21,763.763 INFO    ] 200
[2026-06-27 09:12:21,764.764 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:12:21,787.787 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:12:21,827.827 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:12:21,828.828 INFO    ] No camera update needed
[2026-06-27 09:12:21,830.830 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:12:21,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:12:21,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:12:21,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:12:23,877.877 INFO    ] ================================================
[2026-06-27 09:12:23,893.893 INFO    ] Launching Daemon at Sat Jun 27 09:12:23 IST 2026
[2026-06-27 09:12:23,904.904 INFO    ] ================================================
[2026-06-27 09:12:24,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:12:24
[2026-06-27 09:12:24,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:12:24,691.691 INFO    ] Initializing speech engine...
[2026-06-27 09:12:24,697.697 INFO    ] 2026-06-27 09:12:24
[2026-06-27 09:12:24,901.901 INFO    ] 2026-06-27 09:12:24
[2026-06-27 09:12:24,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:12:25,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:12:25,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:12:25,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:12:25,319.319 INFO    ] time= 27/06/2026 09:12:25
[2026-06-27 09:12:25,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:12:25,347.347 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:12:25,414.414 INFO    ] No existing commands found in stream
[2026-06-27 09:12:30,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:12:30,424.424 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-27 09:12:34,705.705 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 09:12:34,707.707 INFO    ] Checking for system updates...
[2026-06-27 09:12:34,728.728 INFO    ] 200
[2026-06-27 09:12:34,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:12:34,761.761 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:12:34,762.762 INFO    ] No update needed
[2026-06-27 09:12:34,764.764 INFO    ] Checking for camera pi updates...
[2026-06-27 09:12:34,784.784 INFO    ] 200
[2026-06-27 09:12:34,786.786 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:12:34,809.809 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:12:34,950.950 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:12:34,952.952 INFO    ] No camera update needed
[2026-06-27 09:12:34,953.953 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:12:34,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:12:34,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:12:34,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:12:37,000.000 INFO    ] ================================================
[2026-06-27 09:12:37,016.016 INFO    ] Launching Daemon at Sat Jun 27 09:12:37 IST 2026
[2026-06-27 09:12:37,026.026 INFO    ] ================================================
[2026-06-27 09:12:37,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:12:37
[2026-06-27 09:12:37,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:12:37,842.842 INFO    ] Initializing speech engine...
[2026-06-27 09:12:37,847.847 INFO    ] 2026-06-27 09:12:37
[2026-06-27 09:12:38,053.053 INFO    ] 2026-06-27 09:12:38
[2026-06-27 09:12:38,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:12:38,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:12:38,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:12:38,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:12:38,472.472 INFO    ] time= 27/06/2026 09:12:38
[2026-06-27 09:12:38,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:12:38,501.501 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:12:38,567.567 INFO    ] No existing commands found in stream
[2026-06-27 09:12:43,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:12:43,581.581 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-27 09:12:44,421.421 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 09:12:44,423.423 INFO    ] Checking for system updates...
[2026-06-27 09:12:44,444.444 INFO    ] 200
[2026-06-27 09:12:44,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:12:44,476.476 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:12:44,477.477 INFO    ] No update needed
[2026-06-27 09:12:44,478.478 INFO    ] Checking for camera pi updates...
[2026-06-27 09:12:44,500.500 INFO    ] 200
[2026-06-27 09:12:44,501.501 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:12:44,525.525 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:12:44,562.562 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:12:44,563.563 INFO    ] No camera update needed
[2026-06-27 09:12:44,565.565 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:12:44,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:12:44,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:12:44,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:12:46,614.614 INFO    ] ================================================
[2026-06-27 09:12:46,629.629 INFO    ] Launching Daemon at Sat Jun 27 09:12:46 IST 2026
[2026-06-27 09:12:46,640.640 INFO    ] ================================================
[2026-06-27 09:12:46,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:12:46
[2026-06-27 09:12:47,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:12:47,419.419 INFO    ] Initializing speech engine...
[2026-06-27 09:12:47,426.426 INFO    ] 2026-06-27 09:12:47
[2026-06-27 09:12:47,635.635 INFO    ] 2026-06-27 09:12:47
[2026-06-27 09:12:47,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:12:47,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:12:47,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:12:47,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:12:48,055.055 INFO    ] time= 27/06/2026 09:12:47
[2026-06-27 09:12:48,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:12:48,090.090 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:12:48,158.158 INFO    ] No existing commands found in stream
[2026-06-27 09:12:53,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:12:53,169.169 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-27 09:12:54,950.950 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:12:54,952.952 INFO    ] Checking for system updates...
[2026-06-27 09:12:54,973.973 INFO    ] 200
[2026-06-27 09:12:54,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:12:55,006.006 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:12:55,007.007 INFO    ] No update needed
[2026-06-27 09:12:55,008.008 INFO    ] Checking for camera pi updates...
[2026-06-27 09:12:55,031.031 INFO    ] 200
[2026-06-27 09:12:55,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:12:55,058.058 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:12:55,082.082 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:12:55,084.084 INFO    ] No camera update needed
[2026-06-27 09:12:55,085.085 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:12:55,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:12:55,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:12:55,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:12:57,132.132 INFO    ] ================================================
[2026-06-27 09:12:57,147.147 INFO    ] Launching Daemon at Sat Jun 27 09:12:57 IST 2026
[2026-06-27 09:12:57,157.157 INFO    ] ================================================
[2026-06-27 09:12:57,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:12:57
[2026-06-27 09:12:57,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:12:57,944.944 INFO    ] Initializing speech engine...
[2026-06-27 09:12:57,949.949 INFO    ] 2026-06-27 09:12:57
[2026-06-27 09:12:58,155.155 INFO    ] 2026-06-27 09:12:58
[2026-06-27 09:12:58,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:12:58,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:12:58,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:12:58,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:12:58,577.577 INFO    ] time= 27/06/2026 09:12:58
[2026-06-27 09:12:58,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:12:58,604.604 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:12:58,672.672 INFO    ] No existing commands found in stream
[2026-06-27 09:13:03,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:13:03,679.679 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-27 09:13:04,525.525 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 09:13:04,527.527 INFO    ] Checking for system updates...
[2026-06-27 09:13:04,547.547 INFO    ] 200
[2026-06-27 09:13:04,549.549 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:13:04,579.579 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:13:04,580.580 INFO    ] No update needed
[2026-06-27 09:13:04,581.581 INFO    ] Checking for camera pi updates...
[2026-06-27 09:13:04,600.600 INFO    ] 200
[2026-06-27 09:13:04,602.602 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:13:04,625.625 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:13:04,666.666 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:13:04,668.668 INFO    ] No camera update needed
[2026-06-27 09:13:04,669.669 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:13:04,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:13:04,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:13:04,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:13:06,718.718 INFO    ] ================================================
[2026-06-27 09:13:06,733.733 INFO    ] Launching Daemon at Sat Jun 27 09:13:06 IST 2026
[2026-06-27 09:13:06,744.744 INFO    ] ================================================
[2026-06-27 09:13:07,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:13:07
[2026-06-27 09:13:07,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:13:07,548.548 INFO    ] Initializing speech engine...
[2026-06-27 09:13:07,552.552 INFO    ] 2026-06-27 09:13:07
[2026-06-27 09:13:07,751.751 INFO    ] 2026-06-27 09:13:07
[2026-06-27 09:13:07,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:13:07,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:13:08,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:13:08,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:13:08,219.219 INFO    ] time= 27/06/2026 09:13:08
[2026-06-27 09:13:08,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:13:08,265.265 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:13:08,367.367 INFO    ] No existing commands found in stream
[2026-06-27 09:13:13,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:13:13,379.379 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-27 09:13:15,320.320 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 09:13:15,321.321 INFO    ] Checking for system updates...
[2026-06-27 09:13:15,342.342 INFO    ] 200
[2026-06-27 09:13:15,343.343 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:13:15,374.374 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:13:15,375.375 INFO    ] No update needed
[2026-06-27 09:13:15,376.376 INFO    ] Checking for camera pi updates...
[2026-06-27 09:13:15,396.396 INFO    ] 200
[2026-06-27 09:13:15,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:13:15,421.421 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:13:15,465.465 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:13:15,466.466 INFO    ] No camera update needed
[2026-06-27 09:13:15,467.467 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:13:15,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:13:15,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:13:15,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:13:17,512.512 INFO    ] ================================================
[2026-06-27 09:13:17,527.527 INFO    ] Launching Daemon at Sat Jun 27 09:13:17 IST 2026
[2026-06-27 09:13:17,538.538 INFO    ] ================================================
[2026-06-27 09:13:17,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:13:17
[2026-06-27 09:13:18,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:13:18,337.337 INFO    ] Initializing speech engine...
[2026-06-27 09:13:18,347.347 INFO    ] 2026-06-27 09:13:18
[2026-06-27 09:13:18,559.559 INFO    ] 2026-06-27 09:13:18
[2026-06-27 09:13:18,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:13:18,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:13:18,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:13:18,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:13:19,012.012 INFO    ] time= 27/06/2026 09:13:18
[2026-06-27 09:13:19,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:13:19,045.045 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:13:19,116.116 INFO    ] No existing commands found in stream
[2026-06-27 09:13:24,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:13:24,129.129 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-27 09:13:24,859.859 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:13:24,861.861 INFO    ] Checking for system updates...
[2026-06-27 09:13:24,883.883 INFO    ] 200
[2026-06-27 09:13:24,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:13:24,919.919 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:13:24,921.921 INFO    ] No update needed
[2026-06-27 09:13:24,922.922 INFO    ] Checking for camera pi updates...
[2026-06-27 09:13:24,943.943 INFO    ] 200
[2026-06-27 09:13:24,944.944 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:13:24,969.969 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:13:25,010.010 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:13:25,011.011 INFO    ] No camera update needed
[2026-06-27 09:13:25,013.013 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:13:25,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:13:25,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:13:25,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:13:27,058.058 INFO    ] ================================================
[2026-06-27 09:13:27,072.072 INFO    ] Launching Daemon at Sat Jun 27 09:13:27 IST 2026
[2026-06-27 09:13:27,083.083 INFO    ] ================================================
[2026-06-27 09:13:27,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:13:27
[2026-06-27 09:13:27,718.718 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:13:27,847.847 INFO    ] Initializing speech engine...
[2026-06-27 09:13:27,851.851 INFO    ] 2026-06-27 09:13:27
[2026-06-27 09:13:28,066.066 INFO    ] 2026-06-27 09:13:28
[2026-06-27 09:13:28,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:13:28,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:13:28,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:13:28,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:13:28,482.482 INFO    ] time= 27/06/2026 09:13:28
[2026-06-27 09:13:28,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:13:28,522.522 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:13:28,614.614 INFO    ] No existing commands found in stream
[2026-06-27 09:13:33,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:13:33,625.625 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-27 09:13:35,020.020 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 09:13:35,021.021 INFO    ] Checking for system updates...
[2026-06-27 09:13:35,042.042 INFO    ] 200
[2026-06-27 09:13:35,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:13:35,075.075 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:13:35,076.076 INFO    ] No update needed
[2026-06-27 09:13:35,077.077 INFO    ] Checking for camera pi updates...
[2026-06-27 09:13:35,099.099 INFO    ] 200
[2026-06-27 09:13:35,101.101 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:13:35,125.125 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:13:35,165.165 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:13:35,166.166 INFO    ] No camera update needed
[2026-06-27 09:13:35,168.168 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:13:35,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:13:35,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:13:35,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:13:37,215.215 INFO    ] ================================================
[2026-06-27 09:13:37,230.230 INFO    ] Launching Daemon at Sat Jun 27 09:13:37 IST 2026
[2026-06-27 09:13:37,241.241 INFO    ] ================================================
[2026-06-27 09:13:37,605.605 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:13:37
[2026-06-27 09:13:37,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:13:38,047.047 INFO    ] Initializing speech engine...
[2026-06-27 09:13:38,051.051 INFO    ] 2026-06-27 09:13:38
[2026-06-27 09:13:38,268.268 INFO    ] 2026-06-27 09:13:38
[2026-06-27 09:13:38,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:13:38,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:13:38,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:13:38,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:13:38,671.671 INFO    ] time= 27/06/2026 09:13:38
[2026-06-27 09:13:38,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:13:38,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:13:38,782.782 INFO    ] No existing commands found in stream
[2026-06-27 09:13:43,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:13:43,793.793 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-27 09:13:45,925.925 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:13:45,926.926 INFO    ] Checking for system updates...
[2026-06-27 09:13:45,947.947 INFO    ] 200
[2026-06-27 09:13:45,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:13:45,981.981 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:13:45,982.982 INFO    ] No update needed
[2026-06-27 09:13:45,984.984 INFO    ] Checking for camera pi updates...
[2026-06-27 09:13:46,005.005 INFO    ] 200
[2026-06-27 09:13:46,007.007 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:13:46,032.032 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:13:46,070.070 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:13:46,072.072 INFO    ] No camera update needed
[2026-06-27 09:13:46,073.073 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:13:46,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:13:46,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:13:46,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:13:48,118.118 INFO    ] ================================================
[2026-06-27 09:13:48,133.133 INFO    ] Launching Daemon at Sat Jun 27 09:13:48 IST 2026
[2026-06-27 09:13:48,144.144 INFO    ] ================================================
[2026-06-27 09:13:48,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:13:48
[2026-06-27 09:13:48,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:13:48,975.975 INFO    ] Initializing speech engine...
[2026-06-27 09:13:48,988.988 INFO    ] 2026-06-27 09:13:48
[2026-06-27 09:13:49,194.194 INFO    ] 2026-06-27 09:13:49
[2026-06-27 09:13:49,224.224 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:13:49,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:13:49,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:13:49,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:13:49,615.615 INFO    ] time= 27/06/2026 09:13:49
[2026-06-27 09:13:49,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:13:49,643.643 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:13:49,710.710 INFO    ] No existing commands found in stream
[2026-06-27 09:13:54,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:13:54,722.722 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-27 09:13:57,328.328 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:13:57,329.329 INFO    ] Checking for system updates...
[2026-06-27 09:13:57,350.350 INFO    ] 200
[2026-06-27 09:13:57,351.351 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:13:57,385.385 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:13:57,386.386 INFO    ] No update needed
[2026-06-27 09:13:57,387.387 INFO    ] Checking for camera pi updates...
[2026-06-27 09:13:57,409.409 INFO    ] 200
[2026-06-27 09:13:57,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:13:57,434.434 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:13:57,470.470 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:13:57,472.472 INFO    ] No camera update needed
[2026-06-27 09:13:57,473.473 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:13:57,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:13:57,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:13:57,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:13:59,518.518 INFO    ] ================================================
[2026-06-27 09:13:59,533.533 INFO    ] Launching Daemon at Sat Jun 27 09:13:59 IST 2026
[2026-06-27 09:13:59,544.544 INFO    ] ================================================
[2026-06-27 09:13:59,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:13:59
[2026-06-27 09:14:00,206.206 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:14:00,337.337 INFO    ] Initializing speech engine...
[2026-06-27 09:14:00,340.340 INFO    ] 2026-06-27 09:14:00
[2026-06-27 09:14:00,532.532 INFO    ] 2026-06-27 09:14:00
[2026-06-27 09:14:00,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:14:00,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:14:00,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:14:00,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:14:00,993.993 INFO    ] time= 27/06/2026 09:14:00
[2026-06-27 09:14:01,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:14:01,054.054 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:14:01,130.130 INFO    ] No existing commands found in stream
[2026-06-27 09:14:06,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:14:06,139.139 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-27 09:14:07,767.767 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:14:07,769.769 INFO    ] Checking for system updates...
[2026-06-27 09:14:07,790.790 INFO    ] 200
[2026-06-27 09:14:07,791.791 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:14:07,823.823 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:14:07,824.824 INFO    ] No update needed
[2026-06-27 09:14:07,826.826 INFO    ] Checking for camera pi updates...
[2026-06-27 09:14:07,845.845 INFO    ] 200
[2026-06-27 09:14:07,846.846 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:14:07,869.869 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:14:07,909.909 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:14:07,910.910 INFO    ] No camera update needed
[2026-06-27 09:14:07,911.911 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:14:07,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:14:07,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:14:07,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:14:09,957.957 INFO    ] ================================================
[2026-06-27 09:14:09,972.972 INFO    ] Launching Daemon at Sat Jun 27 09:14:09 IST 2026
[2026-06-27 09:14:09,983.983 INFO    ] ================================================
[2026-06-27 09:14:10,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:14:10
[2026-06-27 09:14:10,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:14:10,822.822 INFO    ] Initializing speech engine...
[2026-06-27 09:14:10,827.827 INFO    ] 2026-06-27 09:14:10
[2026-06-27 09:14:11,031.031 INFO    ] 2026-06-27 09:14:11
[2026-06-27 09:14:11,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:14:11,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:14:11,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:14:11,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:14:11,466.466 INFO    ] time= 27/06/2026 09:14:11
[2026-06-27 09:14:11,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:14:11,477.477 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:14:11,542.542 INFO    ] No existing commands found in stream
[2026-06-27 09:14:16,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:14:16,556.556 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-27 09:14:19,542.542 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:14:19,544.544 INFO    ] Checking for system updates...
[2026-06-27 09:14:19,566.566 INFO    ] 200
[2026-06-27 09:14:19,568.568 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:14:19,601.601 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:14:19,602.602 INFO    ] No update needed
[2026-06-27 09:14:19,603.603 INFO    ] Checking for camera pi updates...
[2026-06-27 09:14:19,623.623 INFO    ] 200
[2026-06-27 09:14:19,624.624 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:14:19,650.650 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:14:19,691.691 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:14:19,693.693 INFO    ] No camera update needed
[2026-06-27 09:14:19,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:14:19,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:14:19,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:14:19,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:14:21,743.743 INFO    ] ================================================
[2026-06-27 09:14:21,758.758 INFO    ] Launching Daemon at Sat Jun 27 09:14:21 IST 2026
[2026-06-27 09:14:21,769.769 INFO    ] ================================================
[2026-06-27 09:14:22,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:14:22
[2026-06-27 09:14:22,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:14:22,571.571 INFO    ] Initializing speech engine...
[2026-06-27 09:14:22,576.576 INFO    ] 2026-06-27 09:14:22
[2026-06-27 09:14:22,783.783 INFO    ] 2026-06-27 09:14:22
[2026-06-27 09:14:22,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:14:22,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:14:23,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:14:23,150.150 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:14:23,209.209 INFO    ] time= 27/06/2026 09:14:23
[2026-06-27 09:14:23,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:14:23,231.231 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:14:23,299.299 INFO    ] No existing commands found in stream
[2026-06-27 09:14:28,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:14:28,317.317 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-27 09:14:32,277.277 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 09:14:32,279.279 INFO    ] Checking for system updates...
[2026-06-27 09:14:32,303.303 INFO    ] 200
[2026-06-27 09:14:32,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:14:32,340.340 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:14:32,342.342 INFO    ] No update needed
[2026-06-27 09:14:32,344.344 INFO    ] Checking for camera pi updates...
[2026-06-27 09:14:32,366.366 INFO    ] 200
[2026-06-27 09:14:32,368.368 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:14:32,398.398 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:14:32,426.426 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:14:32,428.428 INFO    ] No camera update needed
[2026-06-27 09:14:32,429.429 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:14:32,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:14:32,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:14:32,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:14:34,477.477 INFO    ] ================================================
[2026-06-27 09:14:34,492.492 INFO    ] Launching Daemon at Sat Jun 27 09:14:34 IST 2026
[2026-06-27 09:14:34,503.503 INFO    ] ================================================
[2026-06-27 09:14:34,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:14:34
[2026-06-27 09:14:35,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:14:35,268.268 INFO    ] Initializing speech engine...
[2026-06-27 09:14:35,276.276 INFO    ] 2026-06-27 09:14:35
[2026-06-27 09:14:35,489.489 INFO    ] 2026-06-27 09:14:35
[2026-06-27 09:14:35,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:14:35,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:14:35,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:14:35,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:14:35,909.909 INFO    ] time= 27/06/2026 09:14:35
[2026-06-27 09:14:35,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:14:35,938.938 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:14:36,004.004 INFO    ] No existing commands found in stream
[2026-06-27 09:14:41,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:14:41,017.017 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-27 09:14:41,779.779 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 09:14:41,781.781 INFO    ] Checking for system updates...
[2026-06-27 09:14:41,801.801 INFO    ] 200
[2026-06-27 09:14:41,803.803 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:14:41,833.833 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:14:41,835.835 INFO    ] No update needed
[2026-06-27 09:14:41,836.836 INFO    ] Checking for camera pi updates...
[2026-06-27 09:14:41,855.855 INFO    ] 200
[2026-06-27 09:14:41,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:14:41,882.882 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:14:42,026.026 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:14:42,027.027 INFO    ] No camera update needed
[2026-06-27 09:14:42,029.029 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:14:42,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:14:42,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:14:42,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:14:44,075.075 INFO    ] ================================================
[2026-06-27 09:14:44,090.090 INFO    ] Launching Daemon at Sat Jun 27 09:14:44 IST 2026
[2026-06-27 09:14:44,100.100 INFO    ] ================================================
[2026-06-27 09:14:44,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:14:44
[2026-06-27 09:14:44,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:14:44,924.924 INFO    ] Initializing speech engine...
[2026-06-27 09:14:44,930.930 INFO    ] 2026-06-27 09:14:44
[2026-06-27 09:14:45,136.136 INFO    ] 2026-06-27 09:14:45
[2026-06-27 09:14:45,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:14:45,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:14:45,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:14:45,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:14:45,550.550 INFO    ] time= 27/06/2026 09:14:45
[2026-06-27 09:14:45,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:14:45,583.583 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:14:45,650.650 INFO    ] No existing commands found in stream
[2026-06-27 09:14:50,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:14:50,667.667 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-27 09:14:51,476.476 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:14:51,478.478 INFO    ] Checking for system updates...
[2026-06-27 09:14:51,501.501 INFO    ] 200
[2026-06-27 09:14:51,502.502 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:14:51,535.535 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:14:51,537.537 INFO    ] No update needed
[2026-06-27 09:14:51,538.538 INFO    ] Checking for camera pi updates...
[2026-06-27 09:14:51,559.559 INFO    ] 200
[2026-06-27 09:14:51,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:14:51,589.589 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:14:51,627.627 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:14:51,628.628 INFO    ] No camera update needed
[2026-06-27 09:14:51,629.629 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:14:51,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:14:51,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:14:51,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:14:53,677.677 INFO    ] ================================================
[2026-06-27 09:14:53,693.693 INFO    ] Launching Daemon at Sat Jun 27 09:14:53 IST 2026
[2026-06-27 09:14:53,704.704 INFO    ] ================================================
[2026-06-27 09:14:54,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:14:54
[2026-06-27 09:14:54,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:14:54,545.545 INFO    ] Initializing speech engine...
[2026-06-27 09:14:54,552.552 INFO    ] 2026-06-27 09:14:54
[2026-06-27 09:14:54,766.766 INFO    ] 2026-06-27 09:14:54
[2026-06-27 09:14:54,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:14:54,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:14:54,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:14:55,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:14:55,182.182 INFO    ] time= 27/06/2026 09:14:55
[2026-06-27 09:14:55,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:14:55,211.211 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:14:55,277.277 INFO    ] No existing commands found in stream
[2026-06-27 09:15:00,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:15:00,290.290 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-27 09:15:00,765.765 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:15:00,766.766 INFO    ] Checking for system updates...
[2026-06-27 09:15:00,787.787 INFO    ] 200
[2026-06-27 09:15:00,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:15:00,819.819 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:15:00,820.820 INFO    ] No update needed
[2026-06-27 09:15:00,821.821 INFO    ] Checking for camera pi updates...
[2026-06-27 09:15:00,842.842 INFO    ] 200
[2026-06-27 09:15:00,844.844 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:15:00,869.869 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:15:00,907.907 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:15:00,909.909 INFO    ] No camera update needed
[2026-06-27 09:15:00,910.910 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:15:00,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:15:00,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:15:00,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:15:02,950.950 INFO    ] ================================================
[2026-06-27 09:15:02,966.966 INFO    ] Launching Daemon at Sat Jun 27 09:15:02 IST 2026
[2026-06-27 09:15:02,976.976 INFO    ] ================================================
[2026-06-27 09:15:03,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:15:03
[2026-06-27 09:15:03,618.618 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:15:03,761.761 INFO    ] Initializing speech engine...
[2026-06-27 09:15:03,766.766 INFO    ] 2026-06-27 09:15:03
[2026-06-27 09:15:03,972.972 INFO    ] 2026-06-27 09:15:03
[2026-06-27 09:15:04,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:15:04,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:15:04,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:15:04,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:15:04,397.397 INFO    ] time= 27/06/2026 09:15:04
[2026-06-27 09:15:04,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:15:04,427.427 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:15:04,493.493 INFO    ] No existing commands found in stream
[2026-06-27 09:15:09,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:15:09,506.506 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-27 09:15:13,473.473 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:15:13,475.475 INFO    ] Checking for system updates...
[2026-06-27 09:15:13,496.496 INFO    ] 200
[2026-06-27 09:15:13,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:15:13,528.528 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:15:13,530.530 INFO    ] No update needed
[2026-06-27 09:15:13,531.531 INFO    ] Checking for camera pi updates...
[2026-06-27 09:15:13,552.552 INFO    ] 200
[2026-06-27 09:15:13,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:15:13,582.582 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:15:13,619.619 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:15:13,621.621 INFO    ] No camera update needed
[2026-06-27 09:15:13,622.622 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:15:13,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:15:13,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:15:13,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:15:15,671.671 INFO    ] ================================================
[2026-06-27 09:15:15,687.687 INFO    ] Launching Daemon at Sat Jun 27 09:15:15 IST 2026
[2026-06-27 09:15:15,698.698 INFO    ] ================================================
[2026-06-27 09:15:16,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:15:16
[2026-06-27 09:15:16,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:15:16,490.490 INFO    ] Initializing speech engine...
[2026-06-27 09:15:16,498.498 INFO    ] 2026-06-27 09:15:16
[2026-06-27 09:15:16,709.709 INFO    ] 2026-06-27 09:15:16
[2026-06-27 09:15:16,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:15:16,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:15:16,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:15:17,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:15:17,151.151 INFO    ] time= 27/06/2026 09:15:17
[2026-06-27 09:15:17,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:15:17,159.159 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:15:17,224.224 INFO    ] No existing commands found in stream
[2026-06-27 09:15:22,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:15:22,238.238 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-27 09:15:25,086.086 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:15:25,088.088 INFO    ] Checking for system updates...
[2026-06-27 09:15:25,109.109 INFO    ] 200
[2026-06-27 09:15:25,110.110 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:15:25,141.141 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:15:25,143.143 INFO    ] No update needed
[2026-06-27 09:15:25,144.144 INFO    ] Checking for camera pi updates...
[2026-06-27 09:15:25,165.165 INFO    ] 200
[2026-06-27 09:15:25,167.167 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:15:25,192.192 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:15:25,234.234 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:15:25,242.242 INFO    ] No camera update needed
[2026-06-27 09:15:25,244.244 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:15:25,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:15:25,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:15:25,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:15:27,291.291 INFO    ] ================================================
[2026-06-27 09:15:27,307.307 INFO    ] Launching Daemon at Sat Jun 27 09:15:27 IST 2026
[2026-06-27 09:15:27,319.319 INFO    ] ================================================
[2026-06-27 09:15:27,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:15:27
[2026-06-27 09:15:27,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:15:28,124.124 INFO    ] Initializing speech engine...
[2026-06-27 09:15:28,132.132 INFO    ] 2026-06-27 09:15:28
[2026-06-27 09:15:28,347.347 INFO    ] 2026-06-27 09:15:28
[2026-06-27 09:15:28,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:15:28,562.562 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:15:28,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:15:28,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:15:28,771.771 INFO    ] time= 27/06/2026 09:15:28
[2026-06-27 09:15:28,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:15:28,799.799 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:15:28,867.867 INFO    ] No existing commands found in stream
[2026-06-27 09:15:33,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:15:33,879.879 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-27 09:15:34,265.265 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:15:34,266.266 INFO    ] Checking for system updates...
[2026-06-27 09:15:34,287.287 INFO    ] 200
[2026-06-27 09:15:34,288.288 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:15:34,318.318 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:15:34,320.320 INFO    ] No update needed
[2026-06-27 09:15:34,321.321 INFO    ] Checking for camera pi updates...
[2026-06-27 09:15:34,344.344 INFO    ] 200
[2026-06-27 09:15:34,346.346 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:15:34,370.370 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:15:34,398.398 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:15:34,399.399 INFO    ] No camera update needed
[2026-06-27 09:15:34,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:15:34,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:15:34,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:15:34,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:15:36,446.446 INFO    ] ================================================
[2026-06-27 09:15:36,462.462 INFO    ] Launching Daemon at Sat Jun 27 09:15:36 IST 2026
[2026-06-27 09:15:36,474.474 INFO    ] ================================================
[2026-06-27 09:15:36,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:15:36
[2026-06-27 09:15:37,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:15:37,344.344 INFO    ] Initializing speech engine...
[2026-06-27 09:15:37,353.353 INFO    ] 2026-06-27 09:15:37
[2026-06-27 09:15:37,559.559 INFO    ] 2026-06-27 09:15:37
[2026-06-27 09:15:37,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:15:37,776.776 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:15:37,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:15:37,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:15:38,008.008 INFO    ] time= 27/06/2026 09:15:37
[2026-06-27 09:15:38,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:15:38,015.015 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:15:38,084.084 INFO    ] No existing commands found in stream
[2026-06-27 09:15:43,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:15:43,100.100 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-27 09:15:45,240.240 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:15:45,241.241 INFO    ] Checking for system updates...
[2026-06-27 09:15:45,263.263 INFO    ] 200
[2026-06-27 09:15:45,264.264 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:15:45,297.297 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:15:45,299.299 INFO    ] No update needed
[2026-06-27 09:15:45,300.300 INFO    ] Checking for camera pi updates...
[2026-06-27 09:15:45,320.320 INFO    ] 200
[2026-06-27 09:15:45,321.321 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:15:45,348.348 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:15:45,386.386 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:15:45,387.387 INFO    ] No camera update needed
[2026-06-27 09:15:45,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:15:45,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:15:45,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:15:45,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:15:47,435.435 INFO    ] ================================================
[2026-06-27 09:15:47,451.451 INFO    ] Launching Daemon at Sat Jun 27 09:15:47 IST 2026
[2026-06-27 09:15:47,462.462 INFO    ] ================================================
[2026-06-27 09:15:47,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:15:47
[2026-06-27 09:15:48,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:15:48,274.274 INFO    ] Initializing speech engine...
[2026-06-27 09:15:48,280.280 INFO    ] 2026-06-27 09:15:48
[2026-06-27 09:15:48,484.484 INFO    ] 2026-06-27 09:15:48
[2026-06-27 09:15:48,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:15:48,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:15:48,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:15:48,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:15:48,901.901 INFO    ] time= 27/06/2026 09:15:48
[2026-06-27 09:15:48,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:15:48,935.935 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:15:49,000.000 INFO    ] No existing commands found in stream
[2026-06-27 09:15:54,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:15:54,014.014 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-27 09:15:55,013.013 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 09:15:55,014.014 INFO    ] Checking for system updates...
[2026-06-27 09:15:55,035.035 INFO    ] 200
[2026-06-27 09:15:55,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:15:55,067.067 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:15:55,069.069 INFO    ] No update needed
[2026-06-27 09:15:55,070.070 INFO    ] Checking for camera pi updates...
[2026-06-27 09:15:55,091.091 INFO    ] 200
[2026-06-27 09:15:55,101.101 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:15:55,126.126 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:15:55,150.150 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:15:55,152.152 INFO    ] No camera update needed
[2026-06-27 09:15:55,153.153 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:15:55,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:15:55,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:15:55,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:15:57,199.199 INFO    ] ================================================
[2026-06-27 09:15:57,215.215 INFO    ] Launching Daemon at Sat Jun 27 09:15:57 IST 2026
[2026-06-27 09:15:57,226.226 INFO    ] ================================================
[2026-06-27 09:15:57,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:15:57
[2026-06-27 09:15:57,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:15:58,037.037 INFO    ] Initializing speech engine...
[2026-06-27 09:15:58,045.045 INFO    ] 2026-06-27 09:15:58
[2026-06-27 09:15:58,254.254 INFO    ] 2026-06-27 09:15:58
[2026-06-27 09:15:58,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:15:58,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:15:58,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:15:58,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:15:58,656.656 INFO    ] time= 27/06/2026 09:15:58
[2026-06-27 09:15:58,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:15:58,707.707 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:15:58,805.805 INFO    ] No existing commands found in stream
[2026-06-27 09:16:03,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:16:03,815.815 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-27 09:16:06,890.890 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 09:16:06,892.892 INFO    ] Checking for system updates...
[2026-06-27 09:16:06,928.928 INFO    ] 200
[2026-06-27 09:16:06,930.930 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:16:06,961.961 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:16:06,963.963 INFO    ] No update needed
[2026-06-27 09:16:06,964.964 INFO    ] Checking for camera pi updates...
[2026-06-27 09:16:06,985.985 INFO    ] 200
[2026-06-27 09:16:06,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:16:07,012.012 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:16:07,054.054 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:16:07,055.055 INFO    ] No camera update needed
[2026-06-27 09:16:07,057.057 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:16:07,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:16:07,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:16:07,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:16:09,099.099 INFO    ] ================================================
[2026-06-27 09:16:09,108.108 INFO    ] Launching Daemon at Sat Jun 27 09:16:09 IST 2026
[2026-06-27 09:16:09,114.114 INFO    ] ================================================
[2026-06-27 09:16:09,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:16:09
[2026-06-27 09:16:09,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:16:09,966.966 INFO    ] Initializing speech engine...
[2026-06-27 09:16:09,971.971 INFO    ] 2026-06-27 09:16:09
[2026-06-27 09:16:10,184.184 INFO    ] 2026-06-27 09:16:10
[2026-06-27 09:16:10,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:16:10,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:16:10,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:16:10,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:16:10,613.613 INFO    ] time= 27/06/2026 09:16:10
[2026-06-27 09:16:10,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:16:10,644.644 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:16:10,712.712 INFO    ] No existing commands found in stream
[2026-06-27 09:16:15,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:16:15,735.735 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-27 09:16:18,637.637 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 09:16:18,638.638 INFO    ] Checking for system updates...
[2026-06-27 09:16:18,660.660 INFO    ] 200
[2026-06-27 09:16:18,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:16:18,696.696 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:16:18,697.697 INFO    ] No update needed
[2026-06-27 09:16:18,698.698 INFO    ] Checking for camera pi updates...
[2026-06-27 09:16:18,724.724 INFO    ] 200
[2026-06-27 09:16:18,726.726 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:16:18,750.750 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:16:18,785.785 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:16:18,786.786 INFO    ] No camera update needed
[2026-06-27 09:16:18,788.788 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:16:18,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:16:18,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:16:18,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:16:20,835.835 INFO    ] ================================================
[2026-06-27 09:16:20,850.850 INFO    ] Launching Daemon at Sat Jun 27 09:16:20 IST 2026
[2026-06-27 09:16:20,861.861 INFO    ] ================================================
[2026-06-27 09:16:21,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:16:21
[2026-06-27 09:16:21,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:16:21,672.672 INFO    ] Initializing speech engine...
[2026-06-27 09:16:21,677.677 INFO    ] 2026-06-27 09:16:21
[2026-06-27 09:16:21,882.882 INFO    ] 2026-06-27 09:16:21
[2026-06-27 09:16:21,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:16:22,095.095 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:16:22,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:16:22,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:16:22,302.302 INFO    ] time= 27/06/2026 09:16:22
[2026-06-27 09:16:22,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:16:22,329.329 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:16:22,397.397 INFO    ] No existing commands found in stream
[2026-06-27 09:16:27,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:16:27,414.414 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-27 09:16:27,933.933 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 09:16:27,935.935 INFO    ] Checking for system updates...
[2026-06-27 09:16:27,956.956 INFO    ] 200
[2026-06-27 09:16:27,957.957 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:16:27,987.987 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:16:27,989.989 INFO    ] No update needed
[2026-06-27 09:16:27,990.990 INFO    ] Checking for camera pi updates...
[2026-06-27 09:16:28,012.012 INFO    ] 200
[2026-06-27 09:16:28,014.014 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:16:28,039.039 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:16:28,076.076 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:16:28,077.077 INFO    ] No camera update needed
[2026-06-27 09:16:28,079.079 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:16:28,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:16:28,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:16:28,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:16:30,125.125 INFO    ] ================================================
[2026-06-27 09:16:30,140.140 INFO    ] Launching Daemon at Sat Jun 27 09:16:30 IST 2026
[2026-06-27 09:16:30,151.151 INFO    ] ================================================
[2026-06-27 09:16:30,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:16:30
[2026-06-27 09:16:30,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:16:30,986.986 INFO    ] Initializing speech engine...
[2026-06-27 09:16:30,991.991 INFO    ] 2026-06-27 09:16:30
[2026-06-27 09:16:31,197.197 INFO    ] 2026-06-27 09:16:31
[2026-06-27 09:16:31,224.224 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:16:31,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:16:31,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:16:31,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:16:31,622.622 INFO    ] time= 27/06/2026 09:16:31
[2026-06-27 09:16:31,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:16:31,651.651 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:16:31,723.723 INFO    ] No existing commands found in stream
[2026-06-27 09:16:36,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:16:36,738.738 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-27 09:16:41,094.094 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:16:41,095.095 INFO    ] Checking for system updates...
[2026-06-27 09:16:41,117.117 INFO    ] 200
[2026-06-27 09:16:41,118.118 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:16:41,149.149 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:16:41,150.150 INFO    ] No update needed
[2026-06-27 09:16:41,152.152 INFO    ] Checking for camera pi updates...
[2026-06-27 09:16:41,173.173 INFO    ] 200
[2026-06-27 09:16:41,175.175 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:16:41,203.203 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:16:41,246.246 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:16:41,247.247 INFO    ] No camera update needed
[2026-06-27 09:16:41,249.249 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:16:41,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:16:41,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:16:41,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:16:43,297.297 INFO    ] ================================================
[2026-06-27 09:16:43,312.312 INFO    ] Launching Daemon at Sat Jun 27 09:16:43 IST 2026
[2026-06-27 09:16:43,322.322 INFO    ] ================================================
[2026-06-27 09:16:43,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:16:43
[2026-06-27 09:16:43,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:16:44,136.136 INFO    ] Initializing speech engine...
[2026-06-27 09:16:44,142.142 INFO    ] 2026-06-27 09:16:44
[2026-06-27 09:16:44,346.346 INFO    ] 2026-06-27 09:16:44
[2026-06-27 09:16:44,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:16:44,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:16:44,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:16:44,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:16:44,768.768 INFO    ] time= 27/06/2026 09:16:44
[2026-06-27 09:16:44,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:16:44,796.796 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:16:44,861.861 INFO    ] No existing commands found in stream
[2026-06-27 09:16:49,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:16:49,875.875 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-27 09:16:50,865.865 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 09:16:50,867.867 INFO    ] Checking for system updates...
[2026-06-27 09:16:50,887.887 INFO    ] 200
[2026-06-27 09:16:50,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:16:50,921.921 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:16:50,923.923 INFO    ] No update needed
[2026-06-27 09:16:50,924.924 INFO    ] Checking for camera pi updates...
[2026-06-27 09:16:50,944.944 INFO    ] 200
[2026-06-27 09:16:50,945.945 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:16:50,969.969 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:16:51,118.118 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:16:51,120.120 INFO    ] No camera update needed
[2026-06-27 09:16:51,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:16:51,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:16:51,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:16:51,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:16:53,167.167 INFO    ] ================================================
[2026-06-27 09:16:53,183.183 INFO    ] Launching Daemon at Sat Jun 27 09:16:53 IST 2026
[2026-06-27 09:16:53,195.195 INFO    ] ================================================
[2026-06-27 09:16:53,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:16:53
[2026-06-27 09:16:53,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:16:54,079.079 INFO    ] Initializing speech engine...
[2026-06-27 09:16:54,085.085 INFO    ] 2026-06-27 09:16:54
[2026-06-27 09:16:54,295.295 INFO    ] 2026-06-27 09:16:54
[2026-06-27 09:16:54,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:16:54,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:16:54,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:16:54,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:16:54,722.722 INFO    ] time= 27/06/2026 09:16:54
[2026-06-27 09:16:54,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:16:54,752.752 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:16:54,820.820 INFO    ] No existing commands found in stream
[2026-06-27 09:16:59,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:16:59,838.838 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-27 09:17:00,984.984 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:17:00,986.986 INFO    ] Checking for system updates...
[2026-06-27 09:17:01,008.008 INFO    ] 200
[2026-06-27 09:17:01,010.010 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:17:01,044.044 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:17:01,046.046 INFO    ] No update needed
[2026-06-27 09:17:01,047.047 INFO    ] Checking for camera pi updates...
[2026-06-27 09:17:01,067.067 INFO    ] 200
[2026-06-27 09:17:01,069.069 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:17:01,092.092 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:17:01,132.132 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:17:01,134.134 INFO    ] No camera update needed
[2026-06-27 09:17:01,135.135 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:17:01,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:17:01,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:17:01,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:17:03,172.172 INFO    ] ================================================
[2026-06-27 09:17:03,180.180 INFO    ] Launching Daemon at Sat Jun 27 09:17:03 IST 2026
[2026-06-27 09:17:03,187.187 INFO    ] ================================================
[2026-06-27 09:17:03,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:17:03
[2026-06-27 09:17:03,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:17:04,005.005 INFO    ] Initializing speech engine...
[2026-06-27 09:17:04,009.009 INFO    ] 2026-06-27 09:17:04
[2026-06-27 09:17:04,217.217 INFO    ] 2026-06-27 09:17:04
[2026-06-27 09:17:04,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:17:04,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:17:04,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:17:04,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:17:04,641.641 INFO    ] time= 27/06/2026 09:17:04
[2026-06-27 09:17:04,668.668 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:17:04,670.670 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:17:04,743.743 INFO    ] No existing commands found in stream
[2026-06-27 09:17:09,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:17:09,751.751 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-27 09:17:12,166.166 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 09:17:12,168.168 INFO    ] Checking for system updates...
[2026-06-27 09:17:12,190.190 INFO    ] 200
[2026-06-27 09:17:12,192.192 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:17:12,225.225 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:17:12,227.227 INFO    ] No update needed
[2026-06-27 09:17:12,228.228 INFO    ] Checking for camera pi updates...
[2026-06-27 09:17:12,248.248 INFO    ] 200
[2026-06-27 09:17:12,250.250 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:17:12,277.277 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:17:12,317.317 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:17:12,318.318 INFO    ] No camera update needed
[2026-06-27 09:17:12,320.320 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:17:12,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:17:12,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:17:12,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:17:14,368.368 INFO    ] ================================================
[2026-06-27 09:17:14,384.384 INFO    ] Launching Daemon at Sat Jun 27 09:17:14 IST 2026
[2026-06-27 09:17:14,395.395 INFO    ] ================================================
[2026-06-27 09:17:14,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:17:14
[2026-06-27 09:17:15,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:17:15,182.182 INFO    ] Initializing speech engine...
[2026-06-27 09:17:15,192.192 INFO    ] 2026-06-27 09:17:15
[2026-06-27 09:17:15,397.397 INFO    ] 2026-06-27 09:17:15
[2026-06-27 09:17:15,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:17:15,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:17:15,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:17:15,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:17:15,821.821 INFO    ] time= 27/06/2026 09:17:15
[2026-06-27 09:17:15,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:17:15,851.851 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:17:15,920.920 INFO    ] No existing commands found in stream
[2026-06-27 09:17:20,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:17:20,942.942 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-27 09:17:24,781.781 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:17:24,783.783 INFO    ] Checking for system updates...
[2026-06-27 09:17:24,804.804 INFO    ] 200
[2026-06-27 09:17:24,805.805 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:17:24,836.836 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:17:24,838.838 INFO    ] No update needed
[2026-06-27 09:17:24,839.839 INFO    ] Checking for camera pi updates...
[2026-06-27 09:17:24,860.860 INFO    ] 200
[2026-06-27 09:17:24,862.862 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:17:24,888.888 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:17:24,928.928 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:17:24,930.930 INFO    ] No camera update needed
[2026-06-27 09:17:24,931.931 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:17:24,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:17:24,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:17:24,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:17:26,980.980 INFO    ] ================================================
[2026-06-27 09:17:27,995.995 INFO    ] Launching Daemon at Sat Jun 27 09:17:26 IST 2026
[2026-06-27 09:17:27,007.007 INFO    ] ================================================
[2026-06-27 09:17:27,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:17:27
[2026-06-27 09:17:27,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:17:27,809.809 INFO    ] Initializing speech engine...
[2026-06-27 09:17:27,819.819 INFO    ] 2026-06-27 09:17:27
[2026-06-27 09:17:28,024.024 INFO    ] 2026-06-27 09:17:28
[2026-06-27 09:17:28,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:17:28,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:17:28,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:17:28,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:17:28,441.441 INFO    ] time= 27/06/2026 09:17:28
[2026-06-27 09:17:28,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:17:28,471.471 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:17:28,537.537 INFO    ] No existing commands found in stream
[2026-06-27 09:17:33,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:17:33,549.549 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-27 09:17:35,011.011 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:17:35,012.012 INFO    ] Checking for system updates...
[2026-06-27 09:17:35,033.033 INFO    ] 200
[2026-06-27 09:17:35,034.034 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:17:35,065.065 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:17:35,066.066 INFO    ] No update needed
[2026-06-27 09:17:35,067.067 INFO    ] Checking for camera pi updates...
[2026-06-27 09:17:35,087.087 INFO    ] 200
[2026-06-27 09:17:35,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:17:35,114.114 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:17:35,152.152 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:17:35,153.153 INFO    ] No camera update needed
[2026-06-27 09:17:35,155.155 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:17:35,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:17:35,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:17:35,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:17:37,201.201 INFO    ] ================================================
[2026-06-27 09:17:37,217.217 INFO    ] Launching Daemon at Sat Jun 27 09:17:37 IST 2026
[2026-06-27 09:17:37,227.227 INFO    ] ================================================
[2026-06-27 09:17:37,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:17:37
[2026-06-27 09:17:37,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:17:38,053.053 INFO    ] Initializing speech engine...
[2026-06-27 09:17:38,058.058 INFO    ] 2026-06-27 09:17:38
[2026-06-27 09:17:38,264.264 INFO    ] 2026-06-27 09:17:38
[2026-06-27 09:17:38,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:17:38,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:17:38,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:17:38,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:17:38,681.681 INFO    ] time= 27/06/2026 09:17:38
[2026-06-27 09:17:38,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:17:38,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:17:38,783.783 INFO    ] No existing commands found in stream
[2026-06-27 09:17:43,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:17:43,800.800 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-27 09:17:46,591.591 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:17:46,592.592 INFO    ] Checking for system updates...
[2026-06-27 09:17:46,614.614 INFO    ] 200
[2026-06-27 09:17:46,616.616 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:17:46,646.646 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:17:46,648.648 INFO    ] No update needed
[2026-06-27 09:17:46,649.649 INFO    ] Checking for camera pi updates...
[2026-06-27 09:17:46,671.671 INFO    ] 200
[2026-06-27 09:17:46,672.672 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:17:46,699.699 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:17:46,740.740 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:17:46,741.741 INFO    ] No camera update needed
[2026-06-27 09:17:46,747.747 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:17:46,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:17:46,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:17:46,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:17:48,790.790 INFO    ] ================================================
[2026-06-27 09:17:48,807.807 INFO    ] Launching Daemon at Sat Jun 27 09:17:48 IST 2026
[2026-06-27 09:17:48,817.817 INFO    ] ================================================
[2026-06-27 09:17:49,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:17:49
[2026-06-27 09:17:49,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:17:49,627.627 INFO    ] Initializing speech engine...
[2026-06-27 09:17:49,632.632 INFO    ] 2026-06-27 09:17:49
[2026-06-27 09:17:49,837.837 INFO    ] 2026-06-27 09:17:49
[2026-06-27 09:17:49,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:17:50,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:17:50,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:17:50,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:17:50,258.258 INFO    ] time= 27/06/2026 09:17:50
[2026-06-27 09:17:50,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:17:50,285.285 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:17:50,352.352 INFO    ] No existing commands found in stream
[2026-06-27 09:17:55,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:17:55,365.365 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-27 09:17:56,806.806 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 09:17:56,807.807 INFO    ] Checking for system updates...
[2026-06-27 09:17:56,828.828 INFO    ] 200
[2026-06-27 09:17:56,830.830 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:17:56,861.861 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:17:56,862.862 INFO    ] No update needed
[2026-06-27 09:17:56,864.864 INFO    ] Checking for camera pi updates...
[2026-06-27 09:17:56,884.884 INFO    ] 200
[2026-06-27 09:17:56,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:17:56,911.911 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:17:56,949.949 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:17:56,950.950 INFO    ] No camera update needed
[2026-06-27 09:17:56,952.952 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:17:56,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:17:56,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:17:56,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:17:59,000.000 INFO    ] ================================================
[2026-06-27 09:17:59,016.016 INFO    ] Launching Daemon at Sat Jun 27 09:17:59 IST 2026
[2026-06-27 09:17:59,028.028 INFO    ] ================================================
[2026-06-27 09:17:59,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:17:59
[2026-06-27 09:17:59,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:17:59,946.946 INFO    ] Initializing speech engine...
[2026-06-27 09:17:59,952.952 INFO    ] 2026-06-27 09:17:59
[2026-06-27 09:18:00,165.165 INFO    ] 2026-06-27 09:18:00
[2026-06-27 09:18:00,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:18:00,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:18:00,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:18:00,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:18:00,620.620 INFO    ] time= 27/06/2026 09:18:00
[2026-06-27 09:18:00,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:18:00,628.628 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:18:00,696.696 INFO    ] No existing commands found in stream
[2026-06-27 09:18:05,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:18:05,706.706 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-27 09:18:07,166.166 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:18:07,167.167 INFO    ] Checking for system updates...
[2026-06-27 09:18:07,190.190 INFO    ] 200
[2026-06-27 09:18:07,194.194 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:18:07,227.227 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:18:07,228.228 INFO    ] No update needed
[2026-06-27 09:18:07,229.229 INFO    ] Checking for camera pi updates...
[2026-06-27 09:18:07,249.249 INFO    ] 200
[2026-06-27 09:18:07,250.250 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:18:07,274.274 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:18:07,312.312 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:18:07,314.314 INFO    ] No camera update needed
[2026-06-27 09:18:07,315.315 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:18:07,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:18:07,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:18:07,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:18:09,360.360 INFO    ] ================================================
[2026-06-27 09:18:09,375.375 INFO    ] Launching Daemon at Sat Jun 27 09:18:09 IST 2026
[2026-06-27 09:18:09,386.386 INFO    ] ================================================
[2026-06-27 09:18:09,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:18:09
[2026-06-27 09:18:10,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:18:10,184.184 INFO    ] Initializing speech engine...
[2026-06-27 09:18:10,189.189 INFO    ] 2026-06-27 09:18:10
[2026-06-27 09:18:10,393.393 INFO    ] 2026-06-27 09:18:10
[2026-06-27 09:18:10,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:18:10,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:18:10,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:18:10,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:18:10,810.810 INFO    ] time= 27/06/2026 09:18:10
[2026-06-27 09:18:10,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:18:10,839.839 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:18:10,911.911 INFO    ] No existing commands found in stream
[2026-06-27 09:18:15,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:18:15,919.919 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-27 09:18:19,100.100 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 09:18:19,102.102 INFO    ] Checking for system updates...
[2026-06-27 09:18:19,125.125 INFO    ] 200
[2026-06-27 09:18:19,126.126 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:18:19,160.160 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:18:19,161.161 INFO    ] No update needed
[2026-06-27 09:18:19,163.163 INFO    ] Checking for camera pi updates...
[2026-06-27 09:18:19,183.183 INFO    ] 200
[2026-06-27 09:18:19,184.184 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:18:19,208.208 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:18:19,255.255 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:18:19,256.256 INFO    ] No camera update needed
[2026-06-27 09:18:19,258.258 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:18:19,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:18:19,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:18:19,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:18:21,307.307 INFO    ] ================================================
[2026-06-27 09:18:21,324.324 INFO    ] Launching Daemon at Sat Jun 27 09:18:21 IST 2026
[2026-06-27 09:18:21,335.335 INFO    ] ================================================
[2026-06-27 09:18:21,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:18:21
[2026-06-27 09:18:22,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:18:22,217.217 INFO    ] Initializing speech engine...
[2026-06-27 09:18:22,223.223 INFO    ] 2026-06-27 09:18:22
[2026-06-27 09:18:22,434.434 INFO    ] 2026-06-27 09:18:22
[2026-06-27 09:18:22,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:18:22,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:18:22,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:18:22,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:18:22,886.886 INFO    ] time= 27/06/2026 09:18:22
[2026-06-27 09:18:22,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:18:22,894.894 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:18:22,963.963 INFO    ] No existing commands found in stream
[2026-06-27 09:18:27,977.977 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:18:27,981.981 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-27 09:18:31,967.967 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 09:18:31,971.971 INFO    ] Checking for system updates...
[2026-06-27 09:18:31,996.996 INFO    ] 200
[2026-06-27 09:18:31,998.998 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:18:32,029.029 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:18:32,030.030 INFO    ] No update needed
[2026-06-27 09:18:32,032.032 INFO    ] Checking for camera pi updates...
[2026-06-27 09:18:32,053.053 INFO    ] 200
[2026-06-27 09:18:32,055.055 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:18:32,079.079 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:18:32,108.108 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:18:32,109.109 INFO    ] No camera update needed
[2026-06-27 09:18:32,111.111 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:18:32,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:18:32,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:18:32,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:18:34,159.159 INFO    ] ================================================
[2026-06-27 09:18:34,176.176 INFO    ] Launching Daemon at Sat Jun 27 09:18:34 IST 2026
[2026-06-27 09:18:34,187.187 INFO    ] ================================================
[2026-06-27 09:18:34,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:18:34
[2026-06-27 09:18:34,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:18:34,997.997 INFO    ] Initializing speech engine...
[2026-06-27 09:18:35,002.002 INFO    ] 2026-06-27 09:18:34
[2026-06-27 09:18:35,208.208 INFO    ] 2026-06-27 09:18:35
[2026-06-27 09:18:35,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:18:35,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:18:35,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:18:35,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:18:35,622.622 INFO    ] time= 27/06/2026 09:18:35
[2026-06-27 09:18:35,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:18:35,660.660 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:18:35,728.728 INFO    ] No existing commands found in stream
[2026-06-27 09:18:40,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:18:40,740.740 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-27 09:18:42,731.731 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:18:42,732.732 INFO    ] Checking for system updates...
[2026-06-27 09:18:42,753.753 INFO    ] 200
[2026-06-27 09:18:42,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:18:42,788.788 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:18:42,789.789 INFO    ] No update needed
[2026-06-27 09:18:42,791.791 INFO    ] Checking for camera pi updates...
[2026-06-27 09:18:42,811.811 INFO    ] 200
[2026-06-27 09:18:42,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:18:42,836.836 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:18:42,876.876 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:18:42,877.877 INFO    ] No camera update needed
[2026-06-27 09:18:42,878.878 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:18:42,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:18:42,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:18:42,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:18:44,923.923 INFO    ] ================================================
[2026-06-27 09:18:44,939.939 INFO    ] Launching Daemon at Sat Jun 27 09:18:44 IST 2026
[2026-06-27 09:18:44,950.950 INFO    ] ================================================
[2026-06-27 09:18:45,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:18:45
[2026-06-27 09:18:45,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:18:45,765.765 INFO    ] Initializing speech engine...
[2026-06-27 09:18:45,770.770 INFO    ] 2026-06-27 09:18:45
[2026-06-27 09:18:45,965.965 INFO    ] 2026-06-27 09:18:45
[2026-06-27 09:18:46,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:18:46,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:18:46,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:18:46,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:18:46,376.376 INFO    ] time= 27/06/2026 09:18:46
[2026-06-27 09:18:46,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:18:46,471.471 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:18:46,546.546 INFO    ] No existing commands found in stream
[2026-06-27 09:18:51,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:18:51,564.564 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-27 09:18:54,325.325 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:18:54,327.327 INFO    ] Checking for system updates...
[2026-06-27 09:18:54,348.348 INFO    ] 200
[2026-06-27 09:18:54,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:18:54,380.380 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:18:54,381.381 INFO    ] No update needed
[2026-06-27 09:18:54,383.383 INFO    ] Checking for camera pi updates...
[2026-06-27 09:18:54,404.404 INFO    ] 200
[2026-06-27 09:18:54,406.406 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:18:54,429.429 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:18:54,560.560 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:18:54,561.561 INFO    ] No camera update needed
[2026-06-27 09:18:54,562.562 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:18:54,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:18:54,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:18:54,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:18:56,610.610 INFO    ] ================================================
[2026-06-27 09:18:56,626.626 INFO    ] Launching Daemon at Sat Jun 27 09:18:56 IST 2026
[2026-06-27 09:18:56,637.637 INFO    ] ================================================
[2026-06-27 09:18:56,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:18:56
[2026-06-27 09:18:57,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:18:57,409.409 INFO    ] Initializing speech engine...
[2026-06-27 09:18:57,413.413 INFO    ] 2026-06-27 09:18:57
[2026-06-27 09:18:57,630.630 INFO    ] 2026-06-27 09:18:57
[2026-06-27 09:18:57,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:18:57,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:18:57,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:18:57,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:18:58,044.044 INFO    ] time= 27/06/2026 09:18:57
[2026-06-27 09:18:58,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:18:58,076.076 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:18:58,144.144 INFO    ] No existing commands found in stream
[2026-06-27 09:19:03,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:19:03,156.156 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-27 09:19:06,131.131 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 09:19:06,132.132 INFO    ] Checking for system updates...
[2026-06-27 09:19:06,158.158 INFO    ] 200
[2026-06-27 09:19:06,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:19:06,190.190 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:19:06,191.191 INFO    ] No update needed
[2026-06-27 09:19:06,192.192 INFO    ] Checking for camera pi updates...
[2026-06-27 09:19:06,212.212 INFO    ] 200
[2026-06-27 09:19:06,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:19:06,243.243 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:19:06,285.285 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:19:06,286.286 INFO    ] No camera update needed
[2026-06-27 09:19:06,287.287 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:19:06,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:19:06,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:19:06,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:19:08,334.334 INFO    ] ================================================
[2026-06-27 09:19:08,350.350 INFO    ] Launching Daemon at Sat Jun 27 09:19:08 IST 2026
[2026-06-27 09:19:08,361.361 INFO    ] ================================================
[2026-06-27 09:19:08,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:19:08
[2026-06-27 09:19:09,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:19:09,238.238 INFO    ] Initializing speech engine...
[2026-06-27 09:19:09,242.242 INFO    ] 2026-06-27 09:19:09
[2026-06-27 09:19:09,454.454 INFO    ] 2026-06-27 09:19:09
[2026-06-27 09:19:09,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:19:09,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:19:09,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:19:09,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:19:09,888.888 INFO    ] time= 27/06/2026 09:19:09
[2026-06-27 09:19:09,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:19:09,915.915 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:19:10,008.008 INFO    ] No existing commands found in stream
[2026-06-27 09:19:15,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:19:15,036.036 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-27 09:19:16,548.548 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 09:19:16,549.549 INFO    ] Checking for system updates...
[2026-06-27 09:19:16,570.570 INFO    ] 200
[2026-06-27 09:19:16,572.572 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:19:16,602.602 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:19:16,604.604 INFO    ] No update needed
[2026-06-27 09:19:16,605.605 INFO    ] Checking for camera pi updates...
[2026-06-27 09:19:16,625.625 INFO    ] 200
[2026-06-27 09:19:16,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:19:16,650.650 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:19:16,686.686 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:19:16,687.687 INFO    ] No camera update needed
[2026-06-27 09:19:16,689.689 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:19:16,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:19:16,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:19:16,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:19:18,723.723 INFO    ] ================================================
[2026-06-27 09:19:18,732.732 INFO    ] Launching Daemon at Sat Jun 27 09:19:18 IST 2026
[2026-06-27 09:19:18,739.739 INFO    ] ================================================
[2026-06-27 09:19:19,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:19:19
[2026-06-27 09:19:19,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:19:19,550.550 INFO    ] Initializing speech engine...
[2026-06-27 09:19:19,555.555 INFO    ] 2026-06-27 09:19:19
[2026-06-27 09:19:19,758.758 INFO    ] 2026-06-27 09:19:19
[2026-06-27 09:19:19,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:19:19,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:19:19,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:19:20,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:19:20,167.167 INFO    ] time= 27/06/2026 09:19:20
[2026-06-27 09:19:20,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:19:20,206.206 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:19:20,297.297 INFO    ] No existing commands found in stream
[2026-06-27 09:19:25,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:19:25,309.309 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-27 09:19:26,369.369 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 09:19:26,371.371 INFO    ] Checking for system updates...
[2026-06-27 09:19:26,392.392 INFO    ] 200
[2026-06-27 09:19:26,394.394 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:19:26,426.426 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:19:26,427.427 INFO    ] No update needed
[2026-06-27 09:19:26,429.429 INFO    ] Checking for camera pi updates...
[2026-06-27 09:19:26,449.449 INFO    ] 200
[2026-06-27 09:19:26,450.450 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:19:26,474.474 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:19:26,514.514 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:19:26,516.516 INFO    ] No camera update needed
[2026-06-27 09:19:26,517.517 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:19:26,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:19:26,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:19:26,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:19:28,568.568 INFO    ] ================================================
[2026-06-27 09:19:28,584.584 INFO    ] Launching Daemon at Sat Jun 27 09:19:28 IST 2026
[2026-06-27 09:19:28,596.596 INFO    ] ================================================
[2026-06-27 09:19:28,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:19:28
[2026-06-27 09:19:29,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:19:29,489.489 INFO    ] Initializing speech engine...
[2026-06-27 09:19:29,495.495 INFO    ] 2026-06-27 09:19:29
[2026-06-27 09:19:29,705.705 INFO    ] 2026-06-27 09:19:29
[2026-06-27 09:19:29,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:19:29,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:19:29,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:19:30,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:19:30,129.129 INFO    ] time= 27/06/2026 09:19:30
[2026-06-27 09:19:30,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:19:30,158.158 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:19:30,226.226 INFO    ] No existing commands found in stream
[2026-06-27 09:19:35,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:19:35,239.239 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-27 09:19:38,312.312 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 09:19:38,314.314 INFO    ] Checking for system updates...
[2026-06-27 09:19:38,335.335 INFO    ] 200
[2026-06-27 09:19:38,336.336 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:19:38,367.367 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:19:38,368.368 INFO    ] No update needed
[2026-06-27 09:19:38,369.369 INFO    ] Checking for camera pi updates...
[2026-06-27 09:19:38,393.393 INFO    ] 200
[2026-06-27 09:19:38,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:19:38,420.420 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:19:38,468.468 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:19:38,469.469 INFO    ] No camera update needed
[2026-06-27 09:19:38,471.471 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:19:38,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:19:38,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:19:38,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:19:40,518.518 INFO    ] ================================================
[2026-06-27 09:19:40,534.534 INFO    ] Launching Daemon at Sat Jun 27 09:19:40 IST 2026
[2026-06-27 09:19:40,545.545 INFO    ] ================================================
[2026-06-27 09:19:40,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:19:40
[2026-06-27 09:19:41,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:19:41,348.348 INFO    ] Initializing speech engine...
[2026-06-27 09:19:41,361.361 INFO    ] 2026-06-27 09:19:41
[2026-06-27 09:19:41,571.571 INFO    ] 2026-06-27 09:19:41
[2026-06-27 09:19:41,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:19:41,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:19:41,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:19:41,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:19:41,987.987 INFO    ] time= 27/06/2026 09:19:41
[2026-06-27 09:19:42,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:19:42,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:19:42,094.094 INFO    ] No existing commands found in stream
[2026-06-27 09:19:47,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:19:47,108.108 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-27 09:19:49,493.493 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:19:49,494.494 INFO    ] Checking for system updates...
[2026-06-27 09:19:49,515.515 INFO    ] 200
[2026-06-27 09:19:49,516.516 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:19:49,556.556 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:19:49,558.558 INFO    ] No update needed
[2026-06-27 09:19:49,559.559 INFO    ] Checking for camera pi updates...
[2026-06-27 09:19:49,579.579 INFO    ] 200
[2026-06-27 09:19:49,580.580 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:19:49,604.604 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:19:49,643.643 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:19:49,644.644 INFO    ] No camera update needed
[2026-06-27 09:19:49,646.646 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:19:49,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:19:49,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:19:49,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:19:51,694.694 INFO    ] ================================================
[2026-06-27 09:19:51,710.710 INFO    ] Launching Daemon at Sat Jun 27 09:19:51 IST 2026
[2026-06-27 09:19:51,722.722 INFO    ] ================================================
[2026-06-27 09:19:52,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:19:52
[2026-06-27 09:19:52,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:19:52,576.576 INFO    ] Initializing speech engine...
[2026-06-27 09:19:52,581.581 INFO    ] 2026-06-27 09:19:52
[2026-06-27 09:19:52,792.792 INFO    ] 2026-06-27 09:19:52
[2026-06-27 09:19:52,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:19:53,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:19:53,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:19:53,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:19:53,234.234 INFO    ] time= 27/06/2026 09:19:53
[2026-06-27 09:19:53,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:19:53,251.251 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:19:53,319.319 INFO    ] No existing commands found in stream
[2026-06-27 09:19:58,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:19:58,337.337 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-27 09:20:00,714.714 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:20:00,716.716 INFO    ] Checking for system updates...
[2026-06-27 09:20:00,737.737 INFO    ] 200
[2026-06-27 09:20:00,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:20:00,772.772 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:20:00,774.774 INFO    ] No update needed
[2026-06-27 09:20:00,776.776 INFO    ] Checking for camera pi updates...
[2026-06-27 09:20:00,796.796 INFO    ] 200
[2026-06-27 09:20:00,797.797 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:20:00,821.821 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:20:00,858.858 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:20:00,859.859 INFO    ] No camera update needed
[2026-06-27 09:20:00,861.861 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:20:00,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:20:00,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:20:00,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:20:02,923.923 INFO    ] ================================================
[2026-06-27 09:20:02,937.937 INFO    ] Launching Daemon at Sat Jun 27 09:20:02 IST 2026
[2026-06-27 09:20:02,948.948 INFO    ] ================================================
[2026-06-27 09:20:03,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:20:03
[2026-06-27 09:20:03,677.677 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:20:03,832.832 INFO    ] Initializing speech engine...
[2026-06-27 09:20:03,836.836 INFO    ] 2026-06-27 09:20:03
[2026-06-27 09:20:04,049.049 INFO    ] 2026-06-27 09:20:04
[2026-06-27 09:20:04,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:20:04,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:20:04,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:20:04,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:20:04,482.482 INFO    ] time= 27/06/2026 09:20:04
[2026-06-27 09:20:04,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:20:04,505.505 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:20:04,572.572 INFO    ] No existing commands found in stream
[2026-06-27 09:20:09,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:20:09,590.590 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-27 09:20:12,931.931 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 09:20:12,932.932 INFO    ] Checking for system updates...
[2026-06-27 09:20:12,955.955 INFO    ] 200
[2026-06-27 09:20:12,956.956 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:20:12,990.990 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:20:12,992.992 INFO    ] No update needed
[2026-06-27 09:20:12,993.993 INFO    ] Checking for camera pi updates...
[2026-06-27 09:20:13,014.014 INFO    ] 200
[2026-06-27 09:20:13,016.016 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:20:13,040.040 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:20:13,081.081 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:20:13,083.083 INFO    ] No camera update needed
[2026-06-27 09:20:13,084.084 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:20:13,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:20:13,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:20:13,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:20:15,131.131 INFO    ] ================================================
[2026-06-27 09:20:15,147.147 INFO    ] Launching Daemon at Sat Jun 27 09:20:15 IST 2026
[2026-06-27 09:20:15,158.158 INFO    ] ================================================
[2026-06-27 09:20:15,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:20:15
[2026-06-27 09:20:15,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:20:15,955.955 INFO    ] Initializing speech engine...
[2026-06-27 09:20:15,960.960 INFO    ] 2026-06-27 09:20:15
[2026-06-27 09:20:16,179.179 INFO    ] 2026-06-27 09:20:16
[2026-06-27 09:20:16,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:20:16,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:20:16,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:20:16,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:20:16,591.591 INFO    ] time= 27/06/2026 09:20:16
[2026-06-27 09:20:16,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:20:16,640.640 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:20:16,709.709 INFO    ] No existing commands found in stream
[2026-06-27 09:20:21,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:20:21,726.726 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-27 09:20:24,807.807 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:20:24,808.808 INFO    ] Checking for system updates...
[2026-06-27 09:20:24,829.829 INFO    ] 200
[2026-06-27 09:20:24,830.830 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:20:24,860.860 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:20:24,862.862 INFO    ] No update needed
[2026-06-27 09:20:24,863.863 INFO    ] Checking for camera pi updates...
[2026-06-27 09:20:24,883.883 INFO    ] 200
[2026-06-27 09:20:24,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:20:24,908.908 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:20:24,946.946 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:20:24,947.947 INFO    ] No camera update needed
[2026-06-27 09:20:24,949.949 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:20:24,950.950 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:20:24,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:20:24,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:20:27,995.995 INFO    ] ================================================
[2026-06-27 09:20:27,012.012 INFO    ] Launching Daemon at Sat Jun 27 09:20:27 IST 2026
[2026-06-27 09:20:27,023.023 INFO    ] ================================================
[2026-06-27 09:20:27,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:20:27
[2026-06-27 09:20:27,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:20:27,886.886 INFO    ] Initializing speech engine...
[2026-06-27 09:20:27,891.891 INFO    ] 2026-06-27 09:20:27
[2026-06-27 09:20:28,104.104 INFO    ] 2026-06-27 09:20:28
[2026-06-27 09:20:28,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:20:28,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:20:28,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:20:28,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:20:28,556.556 INFO    ] time= 27/06/2026 09:20:28
[2026-06-27 09:20:28,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:20:28,564.564 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:20:28,632.632 INFO    ] No existing commands found in stream
[2026-06-27 09:20:33,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:20:33,645.645 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-27 09:20:36,916.916 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 09:20:36,918.918 INFO    ] Checking for system updates...
[2026-06-27 09:20:36,940.940 INFO    ] 200
[2026-06-27 09:20:36,941.941 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:20:36,972.972 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:20:36,973.973 INFO    ] No update needed
[2026-06-27 09:20:36,975.975 INFO    ] Checking for camera pi updates...
[2026-06-27 09:20:36,994.994 INFO    ] 200
[2026-06-27 09:20:36,996.996 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:20:37,019.019 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:20:37,065.065 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:20:37,067.067 INFO    ] No camera update needed
[2026-06-27 09:20:37,068.068 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:20:37,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:20:37,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:20:37,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:20:39,115.115 INFO    ] ================================================
[2026-06-27 09:20:39,130.130 INFO    ] Launching Daemon at Sat Jun 27 09:20:39 IST 2026
[2026-06-27 09:20:39,142.142 INFO    ] ================================================
[2026-06-27 09:20:39,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:20:39
[2026-06-27 09:20:39,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:20:40,028.028 INFO    ] Initializing speech engine...
[2026-06-27 09:20:40,036.036 INFO    ] 2026-06-27 09:20:40
[2026-06-27 09:20:40,240.240 INFO    ] 2026-06-27 09:20:40
[2026-06-27 09:20:40,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:20:40,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:20:40,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:20:40,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:20:40,662.662 INFO    ] time= 27/06/2026 09:20:40
[2026-06-27 09:20:40,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:20:40,690.690 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:20:40,758.758 INFO    ] No existing commands found in stream
[2026-06-27 09:20:45,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:20:45,777.777 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-27 09:20:48,349.349 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 09:20:48,351.351 INFO    ] Checking for system updates...
[2026-06-27 09:20:48,404.404 INFO    ] 200
[2026-06-27 09:20:48,406.406 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:20:48,436.436 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:20:48,437.437 INFO    ] No update needed
[2026-06-27 09:20:48,439.439 INFO    ] Checking for camera pi updates...
[2026-06-27 09:20:48,459.459 INFO    ] 200
[2026-06-27 09:20:48,460.460 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:20:48,483.483 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:20:48,522.522 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:20:48,523.523 INFO    ] No camera update needed
[2026-06-27 09:20:48,525.525 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:20:48,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:20:48,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:20:48,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:20:50,571.571 INFO    ] ================================================
[2026-06-27 09:20:50,588.588 INFO    ] Launching Daemon at Sat Jun 27 09:20:50 IST 2026
[2026-06-27 09:20:50,598.598 INFO    ] ================================================
[2026-06-27 09:20:50,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:20:50
[2026-06-27 09:20:51,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:20:51,393.393 INFO    ] Initializing speech engine...
[2026-06-27 09:20:51,397.397 INFO    ] 2026-06-27 09:20:51
[2026-06-27 09:20:51,604.604 INFO    ] 2026-06-27 09:20:51
[2026-06-27 09:20:51,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:20:51,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:20:51,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:20:51,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:20:52,057.057 INFO    ] time= 27/06/2026 09:20:52
[2026-06-27 09:20:52,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:20:52,086.086 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:20:52,200.200 INFO    ] No existing commands found in stream
[2026-06-27 09:20:57,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:20:57,212.212 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-27 09:20:57,999.999 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 09:20:58,000.000 INFO    ] Checking for system updates...
[2026-06-27 09:20:58,025.025 INFO    ] 200
[2026-06-27 09:20:58,026.026 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:20:58,058.058 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:20:58,060.060 INFO    ] No update needed
[2026-06-27 09:20:58,061.061 INFO    ] Checking for camera pi updates...
[2026-06-27 09:20:58,081.081 INFO    ] 200
[2026-06-27 09:20:58,082.082 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:20:58,106.106 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:20:58,255.255 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:20:58,256.256 INFO    ] No camera update needed
[2026-06-27 09:20:58,258.258 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:20:58,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:20:58,263.263 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:20:58,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:21:00,306.306 INFO    ] ================================================
[2026-06-27 09:21:00,323.323 INFO    ] Launching Daemon at Sat Jun 27 09:21:00 IST 2026
[2026-06-27 09:21:00,334.334 INFO    ] ================================================
[2026-06-27 09:21:00,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:21:00
[2026-06-27 09:21:00,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:21:01,129.129 INFO    ] Initializing speech engine...
[2026-06-27 09:21:01,132.132 INFO    ] 2026-06-27 09:21:01
[2026-06-27 09:21:01,325.325 INFO    ] 2026-06-27 09:21:01
[2026-06-27 09:21:01,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:21:01,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:21:01,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:21:01,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:21:01,779.779 INFO    ] time= 27/06/2026 09:21:01
[2026-06-27 09:21:01,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:21:01,782.782 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:21:01,837.837 INFO    ] No existing commands found in stream
[2026-06-27 09:21:06,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:21:06,849.849 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-27 09:21:10,181.181 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 09:21:10,182.182 INFO    ] Checking for system updates...
[2026-06-27 09:21:10,203.203 INFO    ] 200
[2026-06-27 09:21:10,205.205 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:21:10,235.235 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:21:10,236.236 INFO    ] No update needed
[2026-06-27 09:21:10,238.238 INFO    ] Checking for camera pi updates...
[2026-06-27 09:21:10,258.258 INFO    ] 200
[2026-06-27 09:21:10,259.259 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:21:10,282.282 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:21:10,327.327 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:21:10,328.328 INFO    ] No camera update needed
[2026-06-27 09:21:10,330.330 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:21:10,331.331 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:21:10,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:21:10,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:21:12,375.375 INFO    ] ================================================
[2026-06-27 09:21:12,391.391 INFO    ] Launching Daemon at Sat Jun 27 09:21:12 IST 2026
[2026-06-27 09:21:12,402.402 INFO    ] ================================================
[2026-06-27 09:21:12,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:21:12
[2026-06-27 09:21:13,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:21:13,213.213 INFO    ] Initializing speech engine...
[2026-06-27 09:21:13,218.218 INFO    ] 2026-06-27 09:21:13
[2026-06-27 09:21:13,422.422 INFO    ] 2026-06-27 09:21:13
[2026-06-27 09:21:13,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:21:13,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:21:13,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:21:13,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:21:13,842.842 INFO    ] time= 27/06/2026 09:21:13
[2026-06-27 09:21:13,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:21:13,869.869 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:21:13,935.935 INFO    ] No existing commands found in stream
[2026-06-27 09:21:18,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:21:18,947.947 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-27 09:21:20,999.999 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 09:21:21,001.001 INFO    ] Checking for system updates...
[2026-06-27 09:21:21,022.022 INFO    ] 200
[2026-06-27 09:21:21,024.024 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:21:21,055.055 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:21:21,057.057 INFO    ] No update needed
[2026-06-27 09:21:21,058.058 INFO    ] Checking for camera pi updates...
[2026-06-27 09:21:21,080.080 INFO    ] 200
[2026-06-27 09:21:21,081.081 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:21:21,105.105 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:21:21,139.139 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:21:21,140.140 INFO    ] No camera update needed
[2026-06-27 09:21:21,141.141 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:21:21,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:21:21,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:21:21,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:21:23,187.187 INFO    ] ================================================
[2026-06-27 09:21:23,202.202 INFO    ] Launching Daemon at Sat Jun 27 09:21:23 IST 2026
[2026-06-27 09:21:23,214.214 INFO    ] ================================================
[2026-06-27 09:21:23,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:21:23
[2026-06-27 09:21:23,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:21:23,992.992 INFO    ] Initializing speech engine...
[2026-06-27 09:21:24,002.002 INFO    ] 2026-06-27 09:21:23
[2026-06-27 09:21:24,210.210 INFO    ] 2026-06-27 09:21:24
[2026-06-27 09:21:24,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:21:24,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:21:24,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:21:24,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:21:24,635.635 INFO    ] time= 27/06/2026 09:21:24
[2026-06-27 09:21:24,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:21:24,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:21:24,731.731 INFO    ] No existing commands found in stream
[2026-06-27 09:21:29,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:21:29,745.745 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-27 09:21:30,165.165 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:21:30,167.167 INFO    ] Checking for system updates...
[2026-06-27 09:21:30,188.188 INFO    ] 200
[2026-06-27 09:21:30,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:21:30,219.219 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:21:30,221.221 INFO    ] No update needed
[2026-06-27 09:21:30,222.222 INFO    ] Checking for camera pi updates...
[2026-06-27 09:21:30,244.244 INFO    ] 200
[2026-06-27 09:21:30,245.245 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:21:30,271.271 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:21:30,310.310 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:21:30,311.311 INFO    ] No camera update needed
[2026-06-27 09:21:30,312.312 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:21:30,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:21:30,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:21:30,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:21:32,358.358 INFO    ] ================================================
[2026-06-27 09:21:32,374.374 INFO    ] Launching Daemon at Sat Jun 27 09:21:32 IST 2026
[2026-06-27 09:21:32,385.385 INFO    ] ================================================
[2026-06-27 09:21:32,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:21:32
[2026-06-27 09:21:33,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:21:33,196.196 INFO    ] Initializing speech engine...
[2026-06-27 09:21:33,200.200 INFO    ] 2026-06-27 09:21:33
[2026-06-27 09:21:33,394.394 INFO    ] 2026-06-27 09:21:33
[2026-06-27 09:21:33,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:21:33,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:21:33,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:21:33,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:21:33,902.902 INFO    ] time= 27/06/2026 09:21:33
[2026-06-27 09:21:33,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:21:33,933.933 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:21:34,007.007 INFO    ] No existing commands found in stream
[2026-06-27 09:21:39,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:21:39,019.019 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-27 09:21:41,362.362 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:21:41,363.363 INFO    ] Checking for system updates...
[2026-06-27 09:21:41,384.384 INFO    ] 200
[2026-06-27 09:21:41,386.386 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:21:41,417.417 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:21:41,418.418 INFO    ] No update needed
[2026-06-27 09:21:41,419.419 INFO    ] Checking for camera pi updates...
[2026-06-27 09:21:41,439.439 INFO    ] 200
[2026-06-27 09:21:41,440.440 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:21:41,468.468 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:21:41,515.515 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:21:41,516.516 INFO    ] No camera update needed
[2026-06-27 09:21:41,517.517 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:21:41,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:21:41,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:21:41,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:21:43,563.563 INFO    ] ================================================
[2026-06-27 09:21:43,580.580 INFO    ] Launching Daemon at Sat Jun 27 09:21:43 IST 2026
[2026-06-27 09:21:43,591.591 INFO    ] ================================================
[2026-06-27 09:21:43,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:21:43
[2026-06-27 09:21:44,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:21:44,394.394 INFO    ] Initializing speech engine...
[2026-06-27 09:21:44,403.403 INFO    ] 2026-06-27 09:21:44
[2026-06-27 09:21:44,607.607 INFO    ] 2026-06-27 09:21:44
[2026-06-27 09:21:44,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:21:44,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:21:44,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:21:44,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:21:45,030.030 INFO    ] time= 27/06/2026 09:21:44
[2026-06-27 09:21:45,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:21:45,059.059 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:21:45,124.124 INFO    ] No existing commands found in stream
[2026-06-27 09:21:50,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:21:50,138.138 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-27 09:21:53,095.095 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:21:53,096.096 INFO    ] Checking for system updates...
[2026-06-27 09:21:53,117.117 INFO    ] 200
[2026-06-27 09:21:53,118.118 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:21:53,149.149 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:21:53,150.150 INFO    ] No update needed
[2026-06-27 09:21:53,152.152 INFO    ] Checking for camera pi updates...
[2026-06-27 09:21:53,171.171 INFO    ] 200
[2026-06-27 09:21:53,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:21:53,196.196 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:21:53,237.237 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:21:53,239.239 INFO    ] No camera update needed
[2026-06-27 09:21:53,240.240 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:21:53,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:21:53,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:21:53,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:21:55,285.285 INFO    ] ================================================
[2026-06-27 09:21:55,300.300 INFO    ] Launching Daemon at Sat Jun 27 09:21:55 IST 2026
[2026-06-27 09:21:55,311.311 INFO    ] ================================================
[2026-06-27 09:21:55,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:21:55
[2026-06-27 09:21:55,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:21:56,110.110 INFO    ] Initializing speech engine...
[2026-06-27 09:21:56,118.118 INFO    ] 2026-06-27 09:21:56
[2026-06-27 09:21:56,327.327 INFO    ] 2026-06-27 09:21:56
[2026-06-27 09:21:56,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:21:56,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:21:56,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:21:56,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:21:56,733.733 INFO    ] time= 27/06/2026 09:21:56
[2026-06-27 09:21:56,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:21:56,771.771 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:21:56,842.842 INFO    ] No existing commands found in stream
[2026-06-27 09:22:01,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:22:01,859.859 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-27 09:22:03,766.766 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:22:03,767.767 INFO    ] Checking for system updates...
[2026-06-27 09:22:03,790.790 INFO    ] 200
[2026-06-27 09:22:03,792.792 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:22:03,822.822 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:22:03,824.824 INFO    ] No update needed
[2026-06-27 09:22:03,825.825 INFO    ] Checking for camera pi updates...
[2026-06-27 09:22:03,845.845 INFO    ] 200
[2026-06-27 09:22:03,846.846 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:22:03,872.872 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:22:03,911.911 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:22:03,913.913 INFO    ] No camera update needed
[2026-06-27 09:22:03,914.914 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:22:03,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:22:03,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:22:03,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:22:05,961.961 INFO    ] ================================================
[2026-06-27 09:22:05,980.980 INFO    ] Launching Daemon at Sat Jun 27 09:22:05 IST 2026
[2026-06-27 09:22:05,991.991 INFO    ] ================================================
[2026-06-27 09:22:06,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:22:06
[2026-06-27 09:22:06,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:22:06,807.807 INFO    ] Initializing speech engine...
[2026-06-27 09:22:06,812.812 INFO    ] 2026-06-27 09:22:06
[2026-06-27 09:22:07,019.019 INFO    ] 2026-06-27 09:22:07
[2026-06-27 09:22:07,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:22:07,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:22:07,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:22:07,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:22:07,427.427 INFO    ] time= 27/06/2026 09:22:07
[2026-06-27 09:22:07,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:22:07,464.464 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:22:07,532.532 INFO    ] No existing commands found in stream
[2026-06-27 09:22:12,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:22:12,544.544 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-27 09:22:15,481.481 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 09:22:15,482.482 INFO    ] Checking for system updates...
[2026-06-27 09:22:15,505.505 INFO    ] 200
[2026-06-27 09:22:15,507.507 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:22:15,544.544 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:22:15,545.545 INFO    ] No update needed
[2026-06-27 09:22:15,547.547 INFO    ] Checking for camera pi updates...
[2026-06-27 09:22:15,568.568 INFO    ] 200
[2026-06-27 09:22:15,569.569 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:22:15,593.593 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:22:15,638.638 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:22:15,640.640 INFO    ] No camera update needed
[2026-06-27 09:22:15,641.641 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:22:15,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:22:15,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:22:15,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:22:17,686.686 INFO    ] ================================================
[2026-06-27 09:22:17,701.701 INFO    ] Launching Daemon at Sat Jun 27 09:22:17 IST 2026
[2026-06-27 09:22:17,712.712 INFO    ] ================================================
[2026-06-27 09:22:18,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:22:18
[2026-06-27 09:22:18,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:22:18,609.609 INFO    ] Initializing speech engine...
[2026-06-27 09:22:18,617.617 INFO    ] 2026-06-27 09:22:18
[2026-06-27 09:22:18,836.836 INFO    ] 2026-06-27 09:22:18
[2026-06-27 09:22:18,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:22:19,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:22:19,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:22:19,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:22:19,275.275 INFO    ] time= 27/06/2026 09:22:19
[2026-06-27 09:22:19,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:22:19,286.286 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:22:19,354.354 INFO    ] No existing commands found in stream
[2026-06-27 09:22:24,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:22:24,382.382 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-27 09:22:26,218.218 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 09:22:26,219.219 INFO    ] Checking for system updates...
[2026-06-27 09:22:26,242.242 INFO    ] 200
[2026-06-27 09:22:26,244.244 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:22:26,275.275 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:22:26,276.276 INFO    ] No update needed
[2026-06-27 09:22:26,277.277 INFO    ] Checking for camera pi updates...
[2026-06-27 09:22:26,300.300 INFO    ] 200
[2026-06-27 09:22:26,302.302 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:22:26,325.325 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:22:26,364.364 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:22:26,365.365 INFO    ] No camera update needed
[2026-06-27 09:22:26,366.366 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:22:26,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:22:26,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:22:26,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:22:28,414.414 INFO    ] ================================================
[2026-06-27 09:22:28,430.430 INFO    ] Launching Daemon at Sat Jun 27 09:22:28 IST 2026
[2026-06-27 09:22:28,441.441 INFO    ] ================================================
[2026-06-27 09:22:28,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:22:28
[2026-06-27 09:22:29,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:22:29,294.294 INFO    ] Initializing speech engine...
[2026-06-27 09:22:29,298.298 INFO    ] 2026-06-27 09:22:29
[2026-06-27 09:22:29,504.504 INFO    ] 2026-06-27 09:22:29
[2026-06-27 09:22:29,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:22:29,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:22:29,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:22:29,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:22:29,927.927 INFO    ] time= 27/06/2026 09:22:29
[2026-06-27 09:22:29,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:22:29,958.958 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:22:30,048.048 INFO    ] No existing commands found in stream
[2026-06-27 09:22:35,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:22:35,060.060 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-27 09:22:37,513.513 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:22:37,515.515 INFO    ] Checking for system updates...
[2026-06-27 09:22:37,537.537 INFO    ] 200
[2026-06-27 09:22:37,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:22:37,569.569 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:22:37,570.570 INFO    ] No update needed
[2026-06-27 09:22:37,571.571 INFO    ] Checking for camera pi updates...
[2026-06-27 09:22:37,592.592 INFO    ] 200
[2026-06-27 09:22:37,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:22:37,618.618 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:22:37,654.654 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:22:37,656.656 INFO    ] No camera update needed
[2026-06-27 09:22:37,657.657 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:22:37,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:22:37,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:22:37,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:22:39,704.704 INFO    ] ================================================
[2026-06-27 09:22:39,719.719 INFO    ] Launching Daemon at Sat Jun 27 09:22:39 IST 2026
[2026-06-27 09:22:39,730.730 INFO    ] ================================================
[2026-06-27 09:22:40,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:22:40
[2026-06-27 09:22:40,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:22:40,552.552 INFO    ] Initializing speech engine...
[2026-06-27 09:22:40,557.557 INFO    ] 2026-06-27 09:22:40
[2026-06-27 09:22:40,764.764 INFO    ] 2026-06-27 09:22:40
[2026-06-27 09:22:40,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:22:40,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:22:40,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:22:41,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:22:41,170.170 INFO    ] time= 27/06/2026 09:22:41
[2026-06-27 09:22:41,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:22:41,209.209 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:22:41,281.281 INFO    ] No existing commands found in stream
[2026-06-27 09:22:46,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:22:46,293.293 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-27 09:22:49,981.981 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:22:49,982.982 INFO    ] Checking for system updates...
[2026-06-27 09:22:50,003.003 INFO    ] 200
[2026-06-27 09:22:50,005.005 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:22:50,035.035 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:22:50,037.037 INFO    ] No update needed
[2026-06-27 09:22:50,038.038 INFO    ] Checking for camera pi updates...
[2026-06-27 09:22:50,059.059 INFO    ] 200
[2026-06-27 09:22:50,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:22:50,084.084 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:22:50,130.130 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:22:50,132.132 INFO    ] No camera update needed
[2026-06-27 09:22:50,133.133 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:22:50,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:22:50,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:22:50,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:22:52,181.181 INFO    ] ================================================
[2026-06-27 09:22:52,197.197 INFO    ] Launching Daemon at Sat Jun 27 09:22:52 IST 2026
[2026-06-27 09:22:52,208.208 INFO    ] ================================================
[2026-06-27 09:22:52,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:22:52
[2026-06-27 09:22:52,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:22:53,019.019 INFO    ] Initializing speech engine...
[2026-06-27 09:22:53,030.030 INFO    ] 2026-06-27 09:22:53
[2026-06-27 09:22:53,235.235 INFO    ] 2026-06-27 09:22:53
[2026-06-27 09:22:53,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:22:53,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:22:53,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:22:53,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:22:53,675.675 INFO    ] time= 27/06/2026 09:22:53
[2026-06-27 09:22:53,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:22:53,683.683 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:22:53,750.750 INFO    ] No existing commands found in stream
[2026-06-27 09:22:58,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:22:58,762.762 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-27 09:23:01,943.943 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:23:01,945.945 INFO    ] Checking for system updates...
[2026-06-27 09:23:01,975.975 INFO    ] 200
[2026-06-27 09:23:01,976.976 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:23:02,014.014 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:23:02,016.016 INFO    ] No update needed
[2026-06-27 09:23:02,018.018 INFO    ] Checking for camera pi updates...
[2026-06-27 09:23:02,042.042 INFO    ] 200
[2026-06-27 09:23:02,044.044 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:23:02,074.074 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:23:02,212.212 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:23:02,213.213 INFO    ] No camera update needed
[2026-06-27 09:23:02,215.215 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:23:02,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:23:02,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:23:02,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:23:04,260.260 INFO    ] ================================================
[2026-06-27 09:23:04,276.276 INFO    ] Launching Daemon at Sat Jun 27 09:23:04 IST 2026
[2026-06-27 09:23:04,287.287 INFO    ] ================================================
[2026-06-27 09:23:04,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:23:04
[2026-06-27 09:23:04,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:23:05,082.082 INFO    ] Initializing speech engine...
[2026-06-27 09:23:05,087.087 INFO    ] 2026-06-27 09:23:05
[2026-06-27 09:23:05,292.292 INFO    ] 2026-06-27 09:23:05
[2026-06-27 09:23:05,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:23:05,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:23:05,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:23:05,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:23:05,755.755 INFO    ] time= 27/06/2026 09:23:05
[2026-06-27 09:23:05,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:23:05,797.797 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:23:05,868.868 INFO    ] No existing commands found in stream
[2026-06-27 09:23:10,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:23:10,881.881 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-27 09:23:12,843.843 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:23:12,844.844 INFO    ] Checking for system updates...
[2026-06-27 09:23:12,865.865 INFO    ] 200
[2026-06-27 09:23:12,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:23:12,897.897 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:23:12,898.898 INFO    ] No update needed
[2026-06-27 09:23:12,899.899 INFO    ] Checking for camera pi updates...
[2026-06-27 09:23:12,919.919 INFO    ] 200
[2026-06-27 09:23:12,920.920 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:23:12,947.947 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:23:12,980.980 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:23:12,982.982 INFO    ] No camera update needed
[2026-06-27 09:23:12,983.983 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:23:12,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:23:12,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:23:12,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:23:15,028.028 INFO    ] ================================================
[2026-06-27 09:23:15,043.043 INFO    ] Launching Daemon at Sat Jun 27 09:23:15 IST 2026
[2026-06-27 09:23:15,054.054 INFO    ] ================================================
[2026-06-27 09:23:15,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:23:15
[2026-06-27 09:23:15,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:23:15,837.837 INFO    ] Initializing speech engine...
[2026-06-27 09:23:15,839.839 INFO    ] 2026-06-27 09:23:15
[2026-06-27 09:23:16,034.034 INFO    ] 2026-06-27 09:23:16
[2026-06-27 09:23:16,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:23:16,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:23:16,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:23:16,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:23:16,488.488 INFO    ] time= 27/06/2026 09:23:16
[2026-06-27 09:23:16,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:23:16,561.561 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:23:16,637.637 INFO    ] No existing commands found in stream
[2026-06-27 09:23:21,648.648 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:23:21,650.650 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-27 09:23:27,862.862 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:23:27,864.864 INFO    ] Checking for system updates...
[2026-06-27 09:23:27,888.888 INFO    ] 200
[2026-06-27 09:23:27,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:23:27,925.925 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:23:27,927.927 INFO    ] No update needed
[2026-06-27 09:23:27,929.929 INFO    ] Checking for camera pi updates...
[2026-06-27 09:23:27,949.949 INFO    ] 200
[2026-06-27 09:23:27,950.950 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:23:27,975.975 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:23:28,018.018 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:23:28,020.020 INFO    ] No camera update needed
[2026-06-27 09:23:28,021.021 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:23:28,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:23:28,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:23:28,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:23:30,069.069 INFO    ] ================================================
[2026-06-27 09:23:30,084.084 INFO    ] Launching Daemon at Sat Jun 27 09:23:30 IST 2026
[2026-06-27 09:23:30,096.096 INFO    ] ================================================
[2026-06-27 09:23:30,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:23:30
[2026-06-27 09:23:30,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:23:30,886.886 INFO    ] Initializing speech engine...
[2026-06-27 09:23:30,894.894 INFO    ] 2026-06-27 09:23:30
[2026-06-27 09:23:31,100.100 INFO    ] 2026-06-27 09:23:31
[2026-06-27 09:23:31,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:23:31,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:23:31,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:23:31,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:23:31,533.533 INFO    ] time= 27/06/2026 09:23:31
[2026-06-27 09:23:31,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:23:31,599.599 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:23:31,675.675 INFO    ] No existing commands found in stream
[2026-06-27 09:23:36,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:23:36,692.692 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-27 09:23:38,043.043 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:23:38,045.045 INFO    ] Checking for system updates...
[2026-06-27 09:23:38,065.065 INFO    ] 200
[2026-06-27 09:23:38,067.067 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:23:38,097.097 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:23:38,099.099 INFO    ] No update needed
[2026-06-27 09:23:38,100.100 INFO    ] Checking for camera pi updates...
[2026-06-27 09:23:38,122.122 INFO    ] 200
[2026-06-27 09:23:38,123.123 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:23:38,148.148 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:23:38,193.193 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:23:38,194.194 INFO    ] No camera update needed
[2026-06-27 09:23:38,195.195 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:23:38,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:23:38,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:23:38,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:23:40,241.241 INFO    ] ================================================
[2026-06-27 09:23:40,256.256 INFO    ] Launching Daemon at Sat Jun 27 09:23:40 IST 2026
[2026-06-27 09:23:40,267.267 INFO    ] ================================================
[2026-06-27 09:23:40,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:23:40
[2026-06-27 09:23:40,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:23:41,142.142 INFO    ] Initializing speech engine...
[2026-06-27 09:23:41,153.153 INFO    ] 2026-06-27 09:23:41
[2026-06-27 09:23:41,356.356 INFO    ] 2026-06-27 09:23:41
[2026-06-27 09:23:41,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:23:41,572.572 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:23:41,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:23:41,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:23:41,785.785 INFO    ] time= 27/06/2026 09:23:41
[2026-06-27 09:23:41,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:23:41,813.813 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:23:41,882.882 INFO    ] No existing commands found in stream
[2026-06-27 09:23:46,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:23:46,896.896 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-27 09:23:49,433.433 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 09:23:49,435.435 INFO    ] Checking for system updates...
[2026-06-27 09:23:49,455.455 INFO    ] 200
[2026-06-27 09:23:49,457.457 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:23:49,487.487 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:23:49,488.488 INFO    ] No update needed
[2026-06-27 09:23:49,489.489 INFO    ] Checking for camera pi updates...
[2026-06-27 09:23:49,510.510 INFO    ] 200
[2026-06-27 09:23:49,512.512 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:23:49,538.538 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:23:49,583.583 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:23:49,585.585 INFO    ] No camera update needed
[2026-06-27 09:23:49,586.586 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:23:49,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:23:49,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:23:49,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:23:51,631.631 INFO    ] ================================================
[2026-06-27 09:23:51,646.646 INFO    ] Launching Daemon at Sat Jun 27 09:23:51 IST 2026
[2026-06-27 09:23:51,657.657 INFO    ] ================================================
[2026-06-27 09:23:52,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:23:52
[2026-06-27 09:23:52,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:23:52,507.507 INFO    ] Initializing speech engine...
[2026-06-27 09:23:52,516.516 INFO    ] 2026-06-27 09:23:52
[2026-06-27 09:23:52,723.723 INFO    ] 2026-06-27 09:23:52
[2026-06-27 09:23:52,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:23:52,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:23:52,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:23:53,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:23:53,142.142 INFO    ] time= 27/06/2026 09:23:53
[2026-06-27 09:23:53,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:23:53,177.177 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:23:53,243.243 INFO    ] No existing commands found in stream
[2026-06-27 09:23:58,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:23:58,256.256 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-27 09:23:58,972.972 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 09:23:58,973.973 INFO    ] Checking for system updates...
[2026-06-27 09:23:58,994.994 INFO    ] 200
[2026-06-27 09:23:58,996.996 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:23:59,027.027 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:23:59,028.028 INFO    ] No update needed
[2026-06-27 09:23:59,029.029 INFO    ] Checking for camera pi updates...
[2026-06-27 09:23:59,049.049 INFO    ] 200
[2026-06-27 09:23:59,050.050 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:23:59,074.074 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:23:59,096.096 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:23:59,097.097 INFO    ] No camera update needed
[2026-06-27 09:23:59,098.098 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:23:59,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:23:59,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:23:59,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:24:01,145.145 INFO    ] ================================================
[2026-06-27 09:24:01,160.160 INFO    ] Launching Daemon at Sat Jun 27 09:24:01 IST 2026
[2026-06-27 09:24:01,171.171 INFO    ] ================================================
[2026-06-27 09:24:01,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:24:01
[2026-06-27 09:24:01,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:24:02,170.170 INFO    ] Initializing speech engine...
[2026-06-27 09:24:02,178.178 INFO    ] 2026-06-27 09:24:02
[2026-06-27 09:24:02,440.440 INFO    ] 2026-06-27 09:24:02
[2026-06-27 09:24:02,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:24:02,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:24:02,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:24:02,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:24:02,863.863 INFO    ] time= 27/06/2026 09:24:02
[2026-06-27 09:24:02,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:24:02,897.897 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:24:02,963.963 INFO    ] No existing commands found in stream
[2026-06-27 09:24:07,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:24:07,976.976 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-27 09:24:12,291.291 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:24:12,292.292 INFO    ] Checking for system updates...
[2026-06-27 09:24:12,314.314 INFO    ] 200
[2026-06-27 09:24:12,315.315 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:24:12,346.346 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:24:12,347.347 INFO    ] No update needed
[2026-06-27 09:24:12,348.348 INFO    ] Checking for camera pi updates...
[2026-06-27 09:24:12,369.369 INFO    ] 200
[2026-06-27 09:24:12,370.370 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:24:12,395.395 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:24:12,433.433 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:24:12,435.435 INFO    ] No camera update needed
[2026-06-27 09:24:12,436.436 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:24:12,437.437 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:24:12,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:24:12,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:24:14,483.483 INFO    ] ================================================
[2026-06-27 09:24:14,498.498 INFO    ] Launching Daemon at Sat Jun 27 09:24:14 IST 2026
[2026-06-27 09:24:14,509.509 INFO    ] ================================================
[2026-06-27 09:24:14,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:24:14
[2026-06-27 09:24:15,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:24:15,316.316 INFO    ] Initializing speech engine...
[2026-06-27 09:24:15,321.321 INFO    ] 2026-06-27 09:24:15
[2026-06-27 09:24:15,524.524 INFO    ] 2026-06-27 09:24:15
[2026-06-27 09:24:15,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:24:15,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:24:15,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:24:15,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:24:15,935.935 INFO    ] time= 27/06/2026 09:24:15
[2026-06-27 09:24:15,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:24:15,973.973 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:24:16,040.040 INFO    ] No existing commands found in stream
[2026-06-27 09:24:21,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:24:21,057.057 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-27 09:24:22,631.631 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 09:24:22,633.633 INFO    ] Checking for system updates...
[2026-06-27 09:24:22,653.653 INFO    ] 200
[2026-06-27 09:24:22,655.655 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:24:22,686.686 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:24:22,687.687 INFO    ] No update needed
[2026-06-27 09:24:22,688.688 INFO    ] Checking for camera pi updates...
[2026-06-27 09:24:22,710.710 INFO    ] 200
[2026-06-27 09:24:22,711.711 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:24:22,736.736 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:24:22,782.782 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:24:22,783.783 INFO    ] No camera update needed
[2026-06-27 09:24:22,784.784 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:24:22,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:24:22,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:24:22,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:24:24,832.832 INFO    ] ================================================
[2026-06-27 09:24:24,846.846 INFO    ] Launching Daemon at Sat Jun 27 09:24:24 IST 2026
[2026-06-27 09:24:24,858.858 INFO    ] ================================================
[2026-06-27 09:24:25,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:24:25
[2026-06-27 09:24:25,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:24:25,666.666 INFO    ] Initializing speech engine...
[2026-06-27 09:24:25,678.678 INFO    ] 2026-06-27 09:24:25
[2026-06-27 09:24:25,886.886 INFO    ] 2026-06-27 09:24:25
[2026-06-27 09:24:25,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:24:26,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:24:26,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:24:26,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:24:26,311.311 INFO    ] time= 27/06/2026 09:24:26
[2026-06-27 09:24:26,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:24:26,339.339 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:24:26,405.405 INFO    ] No existing commands found in stream
[2026-06-27 09:24:31,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:24:31,419.419 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-27 09:24:31,856.856 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 09:24:31,857.857 INFO    ] Checking for system updates...
[2026-06-27 09:24:31,883.883 INFO    ] 200
[2026-06-27 09:24:31,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:24:31,923.923 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:24:31,924.924 INFO    ] No update needed
[2026-06-27 09:24:31,926.926 INFO    ] Checking for camera pi updates...
[2026-06-27 09:24:31,948.948 INFO    ] 200
[2026-06-27 09:24:31,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:24:31,975.975 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:24:32,004.004 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:24:32,006.006 INFO    ] No camera update needed
[2026-06-27 09:24:32,008.008 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:24:32,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:24:32,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:24:32,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:24:34,041.041 INFO    ] ================================================
[2026-06-27 09:24:34,050.050 INFO    ] Launching Daemon at Sat Jun 27 09:24:34 IST 2026
[2026-06-27 09:24:34,056.056 INFO    ] ================================================
[2026-06-27 09:24:34,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:24:34
[2026-06-27 09:24:34,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:24:34,878.878 INFO    ] Initializing speech engine...
[2026-06-27 09:24:34,884.884 INFO    ] 2026-06-27 09:24:34
[2026-06-27 09:24:35,114.114 INFO    ] 2026-06-27 09:24:35
[2026-06-27 09:24:35,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:24:35,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:24:35,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:24:35,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:24:35,526.526 INFO    ] time= 27/06/2026 09:24:35
[2026-06-27 09:24:35,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:24:35,567.567 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:24:35,640.640 INFO    ] No existing commands found in stream
[2026-06-27 09:24:40,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:24:40,652.652 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-27 09:24:43,922.922 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:24:43,924.924 INFO    ] Checking for system updates...
[2026-06-27 09:24:43,946.946 INFO    ] 200
[2026-06-27 09:24:43,947.947 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:24:43,977.977 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:24:43,979.979 INFO    ] No update needed
[2026-06-27 09:24:43,980.980 INFO    ] Checking for camera pi updates...
[2026-06-27 09:24:44,002.002 INFO    ] 200
[2026-06-27 09:24:44,003.003 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:24:44,028.028 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:24:44,067.067 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:24:44,069.069 INFO    ] No camera update needed
[2026-06-27 09:24:44,070.070 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:24:44,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:24:44,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:24:44,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:24:46,117.117 INFO    ] ================================================
[2026-06-27 09:24:46,132.132 INFO    ] Launching Daemon at Sat Jun 27 09:24:46 IST 2026
[2026-06-27 09:24:46,143.143 INFO    ] ================================================
[2026-06-27 09:24:46,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:24:46
[2026-06-27 09:24:46,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:24:46,941.941 INFO    ] Initializing speech engine...
[2026-06-27 09:24:46,950.950 INFO    ] 2026-06-27 09:24:46
[2026-06-27 09:24:47,159.159 INFO    ] 2026-06-27 09:24:47
[2026-06-27 09:24:47,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:24:47,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:24:47,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:24:47,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:24:47,571.571 INFO    ] time= 27/06/2026 09:24:47
[2026-06-27 09:24:47,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:24:47,621.621 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:24:47,729.729 INFO    ] No existing commands found in stream
[2026-06-27 09:24:52,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:24:52,742.742 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-27 09:24:56,181.181 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:24:56,183.183 INFO    ] Checking for system updates...
[2026-06-27 09:24:56,205.205 INFO    ] 200
[2026-06-27 09:24:56,206.206 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:24:56,236.236 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:24:56,238.238 INFO    ] No update needed
[2026-06-27 09:24:56,239.239 INFO    ] Checking for camera pi updates...
[2026-06-27 09:24:56,259.259 INFO    ] 200
[2026-06-27 09:24:56,260.260 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:24:56,285.285 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:24:56,330.330 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:24:56,332.332 INFO    ] No camera update needed
[2026-06-27 09:24:56,333.333 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:24:56,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:24:56,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:24:56,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:24:58,378.378 INFO    ] ================================================
[2026-06-27 09:24:58,395.395 INFO    ] Launching Daemon at Sat Jun 27 09:24:58 IST 2026
[2026-06-27 09:24:58,406.406 INFO    ] ================================================
[2026-06-27 09:24:58,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:24:58
[2026-06-27 09:24:59,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:24:59,208.208 INFO    ] Initializing speech engine...
[2026-06-27 09:24:59,212.212 INFO    ] 2026-06-27 09:24:59
[2026-06-27 09:24:59,403.403 INFO    ] 2026-06-27 09:24:59
[2026-06-27 09:24:59,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:24:59,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:24:59,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:24:59,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:24:59,871.871 INFO    ] time= 27/06/2026 09:24:59
[2026-06-27 09:24:59,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:24:59,928.928 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:25:00,004.004 INFO    ] No existing commands found in stream
[2026-06-27 09:25:05,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:25:05,018.018 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-27 09:25:07,931.931 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:25:07,933.933 INFO    ] Checking for system updates...
[2026-06-27 09:25:07,954.954 INFO    ] 200
[2026-06-27 09:25:07,956.956 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:25:07,986.986 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:25:07,987.987 INFO    ] No update needed
[2026-06-27 09:25:07,989.989 INFO    ] Checking for camera pi updates...
[2026-06-27 09:25:08,011.011 INFO    ] 200
[2026-06-27 09:25:08,012.012 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:25:08,037.037 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:25:08,177.177 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:25:08,179.179 INFO    ] No camera update needed
[2026-06-27 09:25:08,180.180 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:25:08,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:25:08,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:25:08,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:25:10,225.225 INFO    ] ================================================
[2026-06-27 09:25:10,240.240 INFO    ] Launching Daemon at Sat Jun 27 09:25:10 IST 2026
[2026-06-27 09:25:10,251.251 INFO    ] ================================================
[2026-06-27 09:25:10,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:25:10
[2026-06-27 09:25:10,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:25:11,096.096 INFO    ] Initializing speech engine...
[2026-06-27 09:25:11,106.106 INFO    ] 2026-06-27 09:25:11
[2026-06-27 09:25:11,314.314 INFO    ] 2026-06-27 09:25:11
[2026-06-27 09:25:11,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:25:11,526.526 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:25:11,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:25:11,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:25:11,732.732 INFO    ] time= 27/06/2026 09:25:11
[2026-06-27 09:25:11,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:25:11,760.760 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:25:11,827.827 INFO    ] No existing commands found in stream
[2026-06-27 09:25:16,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:25:16,839.839 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-27 09:25:19,947.947 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:25:19,948.948 INFO    ] Checking for system updates...
[2026-06-27 09:25:19,971.971 INFO    ] 200
[2026-06-27 09:25:19,972.972 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:25:20,008.008 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:25:20,009.009 INFO    ] No update needed
[2026-06-27 09:25:20,010.010 INFO    ] Checking for camera pi updates...
[2026-06-27 09:25:20,033.033 INFO    ] 200
[2026-06-27 09:25:20,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:25:20,060.060 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:25:20,099.099 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:25:20,100.100 INFO    ] No camera update needed
[2026-06-27 09:25:20,101.101 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:25:20,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:25:20,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:25:20,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:25:22,148.148 INFO    ] ================================================
[2026-06-27 09:25:22,163.163 INFO    ] Launching Daemon at Sat Jun 27 09:25:22 IST 2026
[2026-06-27 09:25:22,174.174 INFO    ] ================================================
[2026-06-27 09:25:22,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:25:22
[2026-06-27 09:25:22,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:25:23,026.026 INFO    ] Initializing speech engine...
[2026-06-27 09:25:23,029.029 INFO    ] 2026-06-27 09:25:23
[2026-06-27 09:25:23,247.247 INFO    ] 2026-06-27 09:25:23
[2026-06-27 09:25:23,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:25:23,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:25:23,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:25:23,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:25:23,695.695 INFO    ] time= 27/06/2026 09:25:23
[2026-06-27 09:25:23,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:25:23,728.728 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:25:23,799.799 INFO    ] No existing commands found in stream
[2026-06-27 09:25:28,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:25:28,826.826 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-27 09:25:32,337.337 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:25:32,339.339 INFO    ] Checking for system updates...
[2026-06-27 09:25:32,362.362 INFO    ] 200
[2026-06-27 09:25:32,364.364 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:25:32,401.401 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:25:32,402.402 INFO    ] No update needed
[2026-06-27 09:25:32,404.404 INFO    ] Checking for camera pi updates...
[2026-06-27 09:25:32,426.426 INFO    ] 200
[2026-06-27 09:25:32,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:25:32,458.458 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:25:32,491.491 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:25:32,493.493 INFO    ] No camera update needed
[2026-06-27 09:25:32,494.494 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:25:32,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:25:32,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:25:32,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:25:34,542.542 INFO    ] ================================================
[2026-06-27 09:25:34,557.557 INFO    ] Launching Daemon at Sat Jun 27 09:25:34 IST 2026
[2026-06-27 09:25:34,568.568 INFO    ] ================================================
[2026-06-27 09:25:34,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:25:34
[2026-06-27 09:25:35,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:25:35,407.407 INFO    ] Initializing speech engine...
[2026-06-27 09:25:35,413.413 INFO    ] 2026-06-27 09:25:35
[2026-06-27 09:25:35,617.617 INFO    ] 2026-06-27 09:25:35
[2026-06-27 09:25:35,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:25:35,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:25:35,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:25:35,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:25:36,028.028 INFO    ] time= 27/06/2026 09:25:35
[2026-06-27 09:25:36,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:25:36,067.067 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:25:36,134.134 INFO    ] No existing commands found in stream
[2026-06-27 09:25:41,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:25:41,146.146 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-27 09:25:42,607.607 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 09:25:42,608.608 INFO    ] Checking for system updates...
[2026-06-27 09:25:42,631.631 INFO    ] 200
[2026-06-27 09:25:42,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:25:42,668.668 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:25:42,669.669 INFO    ] No update needed
[2026-06-27 09:25:42,671.671 INFO    ] Checking for camera pi updates...
[2026-06-27 09:25:42,695.695 INFO    ] 200
[2026-06-27 09:25:42,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:25:42,724.724 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:25:42,762.762 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:25:42,763.763 INFO    ] No camera update needed
[2026-06-27 09:25:42,765.765 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:25:42,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:25:42,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:25:42,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:25:44,812.812 INFO    ] ================================================
[2026-06-27 09:25:44,827.827 INFO    ] Launching Daemon at Sat Jun 27 09:25:44 IST 2026
[2026-06-27 09:25:44,838.838 INFO    ] ================================================
[2026-06-27 09:25:45,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:25:45
[2026-06-27 09:25:45,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:25:45,629.629 INFO    ] Initializing speech engine...
[2026-06-27 09:25:45,637.637 INFO    ] 2026-06-27 09:25:45
[2026-06-27 09:25:45,852.852 INFO    ] 2026-06-27 09:25:45
[2026-06-27 09:25:45,883.883 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:25:46,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:25:46,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:25:46,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:25:46,296.296 INFO    ] time= 27/06/2026 09:25:46
[2026-06-27 09:25:46,301.301 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:25:46,307.307 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:25:46,375.375 INFO    ] No existing commands found in stream
[2026-06-27 09:25:51,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:25:51,388.388 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-27 09:25:54,858.858 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 09:25:54,859.859 INFO    ] Checking for system updates...
[2026-06-27 09:25:54,881.881 INFO    ] 200
[2026-06-27 09:25:54,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:25:54,912.912 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:25:54,914.914 INFO    ] No update needed
[2026-06-27 09:25:54,915.915 INFO    ] Checking for camera pi updates...
[2026-06-27 09:25:54,937.937 INFO    ] 200
[2026-06-27 09:25:54,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:25:54,963.963 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:25:54,986.986 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:25:54,988.988 INFO    ] No camera update needed
[2026-06-27 09:25:54,989.989 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:25:54,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:25:54,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:25:54,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:25:57,035.035 INFO    ] ================================================
[2026-06-27 09:25:57,050.050 INFO    ] Launching Daemon at Sat Jun 27 09:25:57 IST 2026
[2026-06-27 09:25:57,061.061 INFO    ] ================================================
[2026-06-27 09:25:57,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:25:57
[2026-06-27 09:25:57,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:25:57,852.852 INFO    ] Initializing speech engine...
[2026-06-27 09:25:57,945.945 INFO    ] 2026-06-27 09:25:57
[2026-06-27 09:25:58,185.185 INFO    ] 2026-06-27 09:25:58
[2026-06-27 09:25:58,224.224 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:25:58,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:25:58,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:25:58,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:25:58,645.645 INFO    ] time= 27/06/2026 09:25:58
[2026-06-27 09:25:58,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:25:58,651.651 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:25:58,721.721 INFO    ] No existing commands found in stream
[2026-06-27 09:26:03,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:26:03,734.734 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-27 09:26:04,980.980 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 09:26:04,982.982 INFO    ] Checking for system updates...
[2026-06-27 09:26:05,003.003 INFO    ] 200
[2026-06-27 09:26:05,004.004 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:26:05,037.037 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:26:05,038.038 INFO    ] No update needed
[2026-06-27 09:26:05,039.039 INFO    ] Checking for camera pi updates...
[2026-06-27 09:26:05,060.060 INFO    ] 200
[2026-06-27 09:26:05,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:26:05,086.086 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:26:05,133.133 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:26:05,135.135 INFO    ] No camera update needed
[2026-06-27 09:26:05,136.136 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:26:05,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:26:05,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:26:05,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:26:07,181.181 INFO    ] ================================================
[2026-06-27 09:26:07,197.197 INFO    ] Launching Daemon at Sat Jun 27 09:26:07 IST 2026
[2026-06-27 09:26:07,208.208 INFO    ] ================================================
[2026-06-27 09:26:07,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:26:07
[2026-06-27 09:26:07,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:26:08,025.025 INFO    ] Initializing speech engine...
[2026-06-27 09:26:08,051.051 INFO    ] 2026-06-27 09:26:08
[2026-06-27 09:26:08,236.236 INFO    ] 2026-06-27 09:26:08
[2026-06-27 09:26:08,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:26:08,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:26:08,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:26:08,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:26:08,654.654 INFO    ] time= 27/06/2026 09:26:08
[2026-06-27 09:26:08,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:26:08,684.684 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:26:08,775.775 INFO    ] No existing commands found in stream
[2026-06-27 09:26:13,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:26:13,792.792 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-27 09:26:17,724.724 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:26:17,726.726 INFO    ] Checking for system updates...
[2026-06-27 09:26:17,748.748 INFO    ] 200
[2026-06-27 09:26:17,750.750 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:26:17,783.783 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:26:17,784.784 INFO    ] No update needed
[2026-06-27 09:26:17,786.786 INFO    ] Checking for camera pi updates...
[2026-06-27 09:26:17,806.806 INFO    ] 200
[2026-06-27 09:26:17,808.808 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:26:17,832.832 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:26:17,873.873 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:26:17,875.875 INFO    ] No camera update needed
[2026-06-27 09:26:17,876.876 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:26:17,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:26:17,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:26:17,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:26:19,923.923 INFO    ] ================================================
[2026-06-27 09:26:19,938.938 INFO    ] Launching Daemon at Sat Jun 27 09:26:19 IST 2026
[2026-06-27 09:26:19,950.950 INFO    ] ================================================
[2026-06-27 09:26:20,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:26:20
[2026-06-27 09:26:20,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:26:20,771.771 INFO    ] Initializing speech engine...
[2026-06-27 09:26:20,775.775 INFO    ] 2026-06-27 09:26:20
[2026-06-27 09:26:20,994.994 INFO    ] 2026-06-27 09:26:20
[2026-06-27 09:26:21,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:26:21,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:26:21,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:26:21,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:26:21,413.413 INFO    ] time= 27/06/2026 09:26:21
[2026-06-27 09:26:21,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:26:21,443.443 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:26:21,508.508 INFO    ] No existing commands found in stream
[2026-06-27 09:26:26,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:26:26,521.521 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-27 09:26:28,900.900 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:26:28,901.901 INFO    ] Checking for system updates...
[2026-06-27 09:26:28,923.923 INFO    ] 200
[2026-06-27 09:26:28,925.925 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:26:28,955.955 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:26:28,957.957 INFO    ] No update needed
[2026-06-27 09:26:28,958.958 INFO    ] Checking for camera pi updates...
[2026-06-27 09:26:28,978.978 INFO    ] 200
[2026-06-27 09:26:28,980.980 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:26:29,005.005 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:26:29,042.042 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:26:29,044.044 INFO    ] No camera update needed
[2026-06-27 09:26:29,045.045 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:26:29,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:26:29,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:26:29,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:26:31,090.090 INFO    ] ================================================
[2026-06-27 09:26:31,106.106 INFO    ] Launching Daemon at Sat Jun 27 09:26:31 IST 2026
[2026-06-27 09:26:31,117.117 INFO    ] ================================================
[2026-06-27 09:26:31,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:26:31
[2026-06-27 09:26:31,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:26:31,967.967 INFO    ] Initializing speech engine...
[2026-06-27 09:26:31,970.970 INFO    ] 2026-06-27 09:26:31
[2026-06-27 09:26:32,182.182 INFO    ] 2026-06-27 09:26:32
[2026-06-27 09:26:32,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:26:32,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:26:32,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:26:32,582.582 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:26:32,640.640 INFO    ] time= 27/06/2026 09:26:32
[2026-06-27 09:26:32,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:26:32,685.685 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:26:32,760.760 INFO    ] No existing commands found in stream
[2026-06-27 09:26:37,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:26:37,773.773 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-27 09:26:38,386.386 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:26:38,388.388 INFO    ] Checking for system updates...
[2026-06-27 09:26:38,409.409 INFO    ] 200
[2026-06-27 09:26:38,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:26:38,445.445 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:26:38,447.447 INFO    ] No update needed
[2026-06-27 09:26:38,448.448 INFO    ] Checking for camera pi updates...
[2026-06-27 09:26:38,469.469 INFO    ] 200
[2026-06-27 09:26:38,470.470 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:26:38,495.495 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:26:38,533.533 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:26:38,535.535 INFO    ] No camera update needed
[2026-06-27 09:26:38,536.536 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:26:38,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:26:38,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:26:38,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:26:40,583.583 INFO    ] ================================================
[2026-06-27 09:26:40,598.598 INFO    ] Launching Daemon at Sat Jun 27 09:26:40 IST 2026
[2026-06-27 09:26:40,610.610 INFO    ] ================================================
[2026-06-27 09:26:40,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:26:40
[2026-06-27 09:26:41,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:26:41,389.389 INFO    ] Initializing speech engine...
[2026-06-27 09:26:41,397.397 INFO    ] 2026-06-27 09:26:41
[2026-06-27 09:26:41,606.606 INFO    ] 2026-06-27 09:26:41
[2026-06-27 09:26:41,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:26:41,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:26:41,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:26:41,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:26:42,021.021 INFO    ] time= 27/06/2026 09:26:41
[2026-06-27 09:26:42,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:26:42,066.066 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:26:42,161.161 INFO    ] No existing commands found in stream
[2026-06-27 09:26:47,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:26:47,178.178 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-27 09:26:48,452.452 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 09:26:48,454.454 INFO    ] Checking for system updates...
[2026-06-27 09:26:48,475.475 INFO    ] 200
[2026-06-27 09:26:48,477.477 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:26:48,511.511 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:26:48,512.512 INFO    ] No update needed
[2026-06-27 09:26:48,514.514 INFO    ] Checking for camera pi updates...
[2026-06-27 09:26:48,534.534 INFO    ] 200
[2026-06-27 09:26:48,536.536 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:26:48,559.559 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:26:48,596.596 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:26:48,597.597 INFO    ] No camera update needed
[2026-06-27 09:26:48,599.599 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:26:48,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:26:48,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:26:48,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:26:50,645.645 INFO    ] ================================================
[2026-06-27 09:26:50,661.661 INFO    ] Launching Daemon at Sat Jun 27 09:26:50 IST 2026
[2026-06-27 09:26:50,672.672 INFO    ] ================================================
[2026-06-27 09:26:51,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:26:51
[2026-06-27 09:26:51,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:26:51,460.460 INFO    ] Initializing speech engine...
[2026-06-27 09:26:51,470.470 INFO    ] 2026-06-27 09:26:51
[2026-06-27 09:26:51,676.676 INFO    ] 2026-06-27 09:26:51
[2026-06-27 09:26:51,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:26:51,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:26:51,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:26:52,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:26:52,101.101 INFO    ] time= 27/06/2026 09:26:52
[2026-06-27 09:26:52,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:26:52,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:26:52,195.195 INFO    ] No existing commands found in stream
[2026-06-27 09:26:57,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:26:57,208.208 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-27 09:26:58,757.757 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 09:26:58,759.759 INFO    ] Checking for system updates...
[2026-06-27 09:26:58,789.789 INFO    ] 200
[2026-06-27 09:26:58,791.791 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:26:58,824.824 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:26:58,826.826 INFO    ] No update needed
[2026-06-27 09:26:58,827.827 INFO    ] Checking for camera pi updates...
[2026-06-27 09:26:58,848.848 INFO    ] 200
[2026-06-27 09:26:58,849.849 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:26:58,873.873 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:26:58,911.911 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:26:58,912.912 INFO    ] No camera update needed
[2026-06-27 09:26:58,913.913 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:26:58,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:26:58,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:26:58,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:27:00,958.958 INFO    ] ================================================
[2026-06-27 09:27:00,973.973 INFO    ] Launching Daemon at Sat Jun 27 09:27:00 IST 2026
[2026-06-27 09:27:00,985.985 INFO    ] ================================================
[2026-06-27 09:27:01,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:27:01
[2026-06-27 09:27:01,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:27:01,961.961 INFO    ] Initializing speech engine...
[2026-06-27 09:27:01,971.971 INFO    ] 2026-06-27 09:27:01
[2026-06-27 09:27:02,196.196 INFO    ] 2026-06-27 09:27:02
[2026-06-27 09:27:02,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:27:02,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:27:02,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:27:02,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:27:02,649.649 INFO    ] time= 27/06/2026 09:27:02
[2026-06-27 09:27:02,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:27:02,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:27:02,829.829 INFO    ] No existing commands found in stream
[2026-06-27 09:27:07,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:27:07,843.843 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-27 09:27:11,398.398 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 09:27:11,399.399 INFO    ] Checking for system updates...
[2026-06-27 09:27:11,421.421 INFO    ] 200
[2026-06-27 09:27:11,422.422 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:27:11,453.453 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:27:11,454.454 INFO    ] No update needed
[2026-06-27 09:27:11,455.455 INFO    ] Checking for camera pi updates...
[2026-06-27 09:27:11,475.475 INFO    ] 200
[2026-06-27 09:27:11,476.476 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:27:11,501.501 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:27:11,636.636 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:27:11,637.637 INFO    ] No camera update needed
[2026-06-27 09:27:11,639.639 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:27:11,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:27:11,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:27:11,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:27:13,691.691 INFO    ] ================================================
[2026-06-27 09:27:13,707.707 INFO    ] Launching Daemon at Sat Jun 27 09:27:13 IST 2026
[2026-06-27 09:27:13,718.718 INFO    ] ================================================
[2026-06-27 09:27:14,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:27:14
[2026-06-27 09:27:14,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:27:14,492.492 INFO    ] Initializing speech engine...
[2026-06-27 09:27:14,496.496 INFO    ] 2026-06-27 09:27:14
[2026-06-27 09:27:14,725.725 INFO    ] 2026-06-27 09:27:14
[2026-06-27 09:27:14,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:27:14,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:27:14,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:27:15,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:27:15,171.171 INFO    ] time= 27/06/2026 09:27:15
[2026-06-27 09:27:15,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:27:15,200.200 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:27:15,274.274 INFO    ] No existing commands found in stream
[2026-06-27 09:27:20,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:27:20,288.288 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-27 09:27:24,392.392 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:27:24,394.394 INFO    ] Checking for system updates...
[2026-06-27 09:27:24,415.415 INFO    ] 200
[2026-06-27 09:27:24,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:27:24,449.449 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:27:24,451.451 INFO    ] No update needed
[2026-06-27 09:27:24,452.452 INFO    ] Checking for camera pi updates...
[2026-06-27 09:27:24,471.471 INFO    ] 200
[2026-06-27 09:27:24,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:27:24,496.496 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:27:24,540.540 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:27:24,541.541 INFO    ] No camera update needed
[2026-06-27 09:27:24,543.543 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:27:24,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:27:24,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:27:24,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:27:26,588.588 INFO    ] ================================================
[2026-06-27 09:27:26,604.604 INFO    ] Launching Daemon at Sat Jun 27 09:27:26 IST 2026
[2026-06-27 09:27:26,616.616 INFO    ] ================================================
[2026-06-27 09:27:26,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:27:26
[2026-06-27 09:27:27,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:27:27,382.382 INFO    ] Initializing speech engine...
[2026-06-27 09:27:27,386.386 INFO    ] 2026-06-27 09:27:27
[2026-06-27 09:27:27,614.614 INFO    ] 2026-06-27 09:27:27
[2026-06-27 09:27:27,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:27:27,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:27:27,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:27:27,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:27:28,052.052 INFO    ] time= 27/06/2026 09:27:28
[2026-06-27 09:27:28,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:27:28,094.094 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:27:28,169.169 INFO    ] No existing commands found in stream
[2026-06-27 09:27:33,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:27:33,179.179 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-27 09:27:35,861.861 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:27:35,862.862 INFO    ] Checking for system updates...
[2026-06-27 09:27:35,883.883 INFO    ] 200
[2026-06-27 09:27:35,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:27:35,917.917 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:27:35,918.918 INFO    ] No update needed
[2026-06-27 09:27:35,919.919 INFO    ] Checking for camera pi updates...
[2026-06-27 09:27:35,939.939 INFO    ] 200
[2026-06-27 09:27:35,940.940 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:27:35,965.965 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:27:36,006.006 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:27:36,007.007 INFO    ] No camera update needed
[2026-06-27 09:27:36,008.008 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:27:36,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:27:36,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:27:36,015.015 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:27:38,053.053 INFO    ] ================================================
[2026-06-27 09:27:38,068.068 INFO    ] Launching Daemon at Sat Jun 27 09:27:38 IST 2026
[2026-06-27 09:27:38,080.080 INFO    ] ================================================
[2026-06-27 09:27:38,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:27:38
[2026-06-27 09:27:38,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:27:38,932.932 INFO    ] Initializing speech engine...
[2026-06-27 09:27:38,936.936 INFO    ] 2026-06-27 09:27:38
[2026-06-27 09:27:39,145.145 INFO    ] 2026-06-27 09:27:39
[2026-06-27 09:27:39,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:27:40,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:27:40,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:27:40,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:27:40,525.525 INFO    ] time= 27/06/2026 09:27:40
[2026-06-27 09:27:40,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:27:40,538.538 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:27:40,594.594 INFO    ] No existing commands found in stream
[2026-06-27 09:27:45,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:27:45,605.605 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-27 09:27:49,309.309 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:27:49,310.310 INFO    ] Checking for system updates...
[2026-06-27 09:27:49,331.331 INFO    ] 200
[2026-06-27 09:27:49,332.332 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:27:49,362.362 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:27:49,363.363 INFO    ] No update needed
[2026-06-27 09:27:49,365.365 INFO    ] Checking for camera pi updates...
[2026-06-27 09:27:49,388.388 INFO    ] 200
[2026-06-27 09:27:49,390.390 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:27:49,415.415 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:27:49,454.454 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:27:49,455.455 INFO    ] No camera update needed
[2026-06-27 09:27:49,456.456 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:27:49,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:27:49,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:27:49,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:27:51,501.501 INFO    ] ================================================
[2026-06-27 09:27:51,517.517 INFO    ] Launching Daemon at Sat Jun 27 09:27:51 IST 2026
[2026-06-27 09:27:51,528.528 INFO    ] ================================================
[2026-06-27 09:27:51,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:27:51
[2026-06-27 09:27:52,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:27:52,297.297 INFO    ] Initializing speech engine...
[2026-06-27 09:27:52,301.301 INFO    ] 2026-06-27 09:27:52
[2026-06-27 09:27:52,517.517 INFO    ] 2026-06-27 09:27:52
[2026-06-27 09:27:52,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:27:52,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:27:52,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:27:52,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:27:52,934.934 INFO    ] time= 27/06/2026 09:27:52
[2026-06-27 09:27:52,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:27:52,967.967 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:27:53,037.037 INFO    ] No existing commands found in stream
[2026-06-27 09:27:58,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:27:58,050.050 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-27 09:27:59,228.228 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:27:59,229.229 INFO    ] Checking for system updates...
[2026-06-27 09:27:59,251.251 INFO    ] 200
[2026-06-27 09:27:59,253.253 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:27:59,283.283 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:27:59,285.285 INFO    ] No update needed
[2026-06-27 09:27:59,286.286 INFO    ] Checking for camera pi updates...
[2026-06-27 09:27:59,305.305 INFO    ] 200
[2026-06-27 09:27:59,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:27:59,331.331 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:27:59,371.371 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:27:59,372.372 INFO    ] No camera update needed
[2026-06-27 09:27:59,374.374 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:27:59,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:27:59,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:27:59,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:28:01,419.419 INFO    ] ================================================
[2026-06-27 09:28:01,435.435 INFO    ] Launching Daemon at Sat Jun 27 09:28:01 IST 2026
[2026-06-27 09:28:01,447.447 INFO    ] ================================================
[2026-06-27 09:28:01,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:28:01
[2026-06-27 09:28:02,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:28:02,425.425 INFO    ] Initializing speech engine...
[2026-06-27 09:28:02,431.431 INFO    ] 2026-06-27 09:28:02
[2026-06-27 09:28:02,693.693 INFO    ] 2026-06-27 09:28:02
[2026-06-27 09:28:02,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:28:02,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:28:02,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:28:03,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:28:03,134.134 INFO    ] time= 27/06/2026 09:28:03
[2026-06-27 09:28:03,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:28:03,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:28:03,241.241 INFO    ] No existing commands found in stream
[2026-06-27 09:28:08,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:28:08,253.253 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-27 09:28:11,692.692 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 09:28:11,694.694 INFO    ] Checking for system updates...
[2026-06-27 09:28:11,715.715 INFO    ] 200
[2026-06-27 09:28:11,717.717 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:28:11,749.749 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:28:11,750.750 INFO    ] No update needed
[2026-06-27 09:28:11,751.751 INFO    ] Checking for camera pi updates...
[2026-06-27 09:28:11,770.770 INFO    ] 200
[2026-06-27 09:28:11,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:28:11,797.797 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:28:11,838.838 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:28:11,839.839 INFO    ] No camera update needed
[2026-06-27 09:28:11,840.840 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:28:11,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:28:11,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:28:11,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:28:13,885.885 INFO    ] ================================================
[2026-06-27 09:28:13,901.901 INFO    ] Launching Daemon at Sat Jun 27 09:28:13 IST 2026
[2026-06-27 09:28:13,912.912 INFO    ] ================================================
[2026-06-27 09:28:14,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:28:14
[2026-06-27 09:28:14,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:28:14,718.718 INFO    ] Initializing speech engine...
[2026-06-27 09:28:14,728.728 INFO    ] 2026-06-27 09:28:14
[2026-06-27 09:28:14,934.934 INFO    ] 2026-06-27 09:28:14
[2026-06-27 09:28:14,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:28:15,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:28:15,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:28:15,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:28:15,361.361 INFO    ] time= 27/06/2026 09:28:15
[2026-06-27 09:28:15,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:28:15,389.389 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:28:15,456.456 INFO    ] No existing commands found in stream
[2026-06-27 09:28:20,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:28:20,473.473 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-27 09:28:23,260.260 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:28:23,261.261 INFO    ] Checking for system updates...
[2026-06-27 09:28:23,283.283 INFO    ] 200
[2026-06-27 09:28:23,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:28:23,317.317 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:28:23,318.318 INFO    ] No update needed
[2026-06-27 09:28:23,319.319 INFO    ] Checking for camera pi updates...
[2026-06-27 09:28:23,340.340 INFO    ] 200
[2026-06-27 09:28:23,341.341 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:28:23,364.364 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:28:23,404.404 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:28:23,405.405 INFO    ] No camera update needed
[2026-06-27 09:28:23,406.406 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:28:23,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:28:23,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:28:23,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:28:25,454.454 INFO    ] ================================================
[2026-06-27 09:28:25,472.472 INFO    ] Launching Daemon at Sat Jun 27 09:28:25 IST 2026
[2026-06-27 09:28:25,484.484 INFO    ] ================================================
[2026-06-27 09:28:25,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:28:25
[2026-06-27 09:28:26,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:28:26,291.291 INFO    ] Initializing speech engine...
[2026-06-27 09:28:26,304.304 INFO    ] 2026-06-27 09:28:26
[2026-06-27 09:28:26,510.510 INFO    ] 2026-06-27 09:28:26
[2026-06-27 09:28:26,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:28:26,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:28:26,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:28:26,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:28:26,925.925 INFO    ] time= 27/06/2026 09:28:26
[2026-06-27 09:28:26,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:28:26,958.958 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:28:27,025.025 INFO    ] No existing commands found in stream
[2026-06-27 09:28:32,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:28:32,035.035 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-27 09:28:32,378.378 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 09:28:32,380.380 INFO    ] Checking for system updates...
[2026-06-27 09:28:32,405.405 INFO    ] 200
[2026-06-27 09:28:32,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:28:32,450.450 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:28:32,451.451 INFO    ] No update needed
[2026-06-27 09:28:32,453.453 INFO    ] Checking for camera pi updates...
[2026-06-27 09:28:32,474.474 INFO    ] 200
[2026-06-27 09:28:32,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:28:32,500.500 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:28:32,540.540 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:28:32,542.542 INFO    ] No camera update needed
[2026-06-27 09:28:32,543.543 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:28:32,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:28:32,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:28:32,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:28:34,588.588 INFO    ] ================================================
[2026-06-27 09:28:34,604.604 INFO    ] Launching Daemon at Sat Jun 27 09:28:34 IST 2026
[2026-06-27 09:28:34,615.615 INFO    ] ================================================
[2026-06-27 09:28:35,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:28:35
[2026-06-27 09:28:35,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:28:35,465.465 INFO    ] Initializing speech engine...
[2026-06-27 09:28:35,473.473 INFO    ] 2026-06-27 09:28:35
[2026-06-27 09:28:35,686.686 INFO    ] 2026-06-27 09:28:35
[2026-06-27 09:28:35,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:28:35,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:28:35,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:28:36,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:28:36,090.090 INFO    ] time= 27/06/2026 09:28:36
[2026-06-27 09:28:36,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:28:36,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:28:36,200.200 INFO    ] No existing commands found in stream
[2026-06-27 09:28:41,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:28:41,212.212 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-27 09:28:41,609.609 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 09:28:41,610.610 INFO    ] Checking for system updates...
[2026-06-27 09:28:41,633.633 INFO    ] 200
[2026-06-27 09:28:41,635.635 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:28:41,666.666 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:28:41,668.668 INFO    ] No update needed
[2026-06-27 09:28:41,669.669 INFO    ] Checking for camera pi updates...
[2026-06-27 09:28:41,690.690 INFO    ] 200
[2026-06-27 09:28:41,691.691 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:28:41,719.719 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:28:41,758.758 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:28:41,759.759 INFO    ] No camera update needed
[2026-06-27 09:28:41,761.761 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:28:41,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:28:41,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:28:41,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:28:43,808.808 INFO    ] ================================================
[2026-06-27 09:28:43,824.824 INFO    ] Launching Daemon at Sat Jun 27 09:28:43 IST 2026
[2026-06-27 09:28:43,835.835 INFO    ] ================================================
[2026-06-27 09:28:44,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:28:44
[2026-06-27 09:28:44,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:28:44,671.671 INFO    ] Initializing speech engine...
[2026-06-27 09:28:44,682.682 INFO    ] 2026-06-27 09:28:44
[2026-06-27 09:28:44,885.885 INFO    ] 2026-06-27 09:28:44
[2026-06-27 09:28:44,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:28:45,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:28:45,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:28:45,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:28:45,303.303 INFO    ] time= 27/06/2026 09:28:45
[2026-06-27 09:28:45,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:28:45,333.333 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:28:45,399.399 INFO    ] No existing commands found in stream
[2026-06-27 09:28:50,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:28:50,412.412 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-27 09:28:54,046.046 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:28:54,048.048 INFO    ] Checking for system updates...
[2026-06-27 09:28:54,070.070 INFO    ] 200
[2026-06-27 09:28:54,072.072 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:28:54,104.104 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:28:54,106.106 INFO    ] No update needed
[2026-06-27 09:28:54,107.107 INFO    ] Checking for camera pi updates...
[2026-06-27 09:28:54,127.127 INFO    ] 200
[2026-06-27 09:28:54,128.128 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:28:54,152.152 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:28:54,175.175 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:28:54,176.176 INFO    ] No camera update needed
[2026-06-27 09:28:54,177.177 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:28:54,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:28:54,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:28:54,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:28:56,226.226 INFO    ] ================================================
[2026-06-27 09:28:56,242.242 INFO    ] Launching Daemon at Sat Jun 27 09:28:56 IST 2026
[2026-06-27 09:28:56,253.253 INFO    ] ================================================
[2026-06-27 09:28:56,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:28:56
[2026-06-27 09:28:56,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:28:57,066.066 INFO    ] Initializing speech engine...
[2026-06-27 09:28:57,071.071 INFO    ] 2026-06-27 09:28:57
[2026-06-27 09:28:57,306.306 INFO    ] 2026-06-27 09:28:57
[2026-06-27 09:28:57,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:28:57,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:28:57,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:28:57,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:28:57,759.759 INFO    ] time= 27/06/2026 09:28:57
[2026-06-27 09:28:57,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:28:57,792.792 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:28:57,863.863 INFO    ] No existing commands found in stream
[2026-06-27 09:29:02,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:29:02,875.875 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-27 09:29:06,761.761 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 09:29:06,764.764 INFO    ] Checking for system updates...
[2026-06-27 09:29:06,786.786 INFO    ] 200
[2026-06-27 09:29:06,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:29:06,822.822 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:29:06,823.823 INFO    ] No update needed
[2026-06-27 09:29:06,825.825 INFO    ] Checking for camera pi updates...
[2026-06-27 09:29:06,844.844 INFO    ] 200
[2026-06-27 09:29:06,846.846 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:29:06,869.869 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:29:06,907.907 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:29:06,909.909 INFO    ] No camera update needed
[2026-06-27 09:29:06,910.910 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:29:06,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:29:06,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:29:06,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:29:08,955.955 INFO    ] ================================================
[2026-06-27 09:29:08,971.971 INFO    ] Launching Daemon at Sat Jun 27 09:29:08 IST 2026
[2026-06-27 09:29:08,982.982 INFO    ] ================================================
[2026-06-27 09:29:09,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:29:09
[2026-06-27 09:29:09,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:29:09,797.797 INFO    ] Initializing speech engine...
[2026-06-27 09:29:09,802.802 INFO    ] 2026-06-27 09:29:09
[2026-06-27 09:29:10,006.006 INFO    ] 2026-06-27 09:29:09
[2026-06-27 09:29:10,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:29:10,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:29:10,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:29:10,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:29:10,414.414 INFO    ] time= 27/06/2026 09:29:10
[2026-06-27 09:29:10,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:29:10,453.453 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:29:10,523.523 INFO    ] No existing commands found in stream
[2026-06-27 09:29:15,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:29:15,532.532 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-27 09:29:18,241.241 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:29:18,243.243 INFO    ] Checking for system updates...
[2026-06-27 09:29:18,265.265 INFO    ] 200
[2026-06-27 09:29:18,266.266 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:29:18,298.298 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:29:18,300.300 INFO    ] No update needed
[2026-06-27 09:29:18,301.301 INFO    ] Checking for camera pi updates...
[2026-06-27 09:29:18,321.321 INFO    ] 200
[2026-06-27 09:29:18,323.323 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:29:18,348.348 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:29:18,492.492 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:29:18,493.493 INFO    ] No camera update needed
[2026-06-27 09:29:18,495.495 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:29:18,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:29:18,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:29:18,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:29:20,542.542 INFO    ] ================================================
[2026-06-27 09:29:20,558.558 INFO    ] Launching Daemon at Sat Jun 27 09:29:20 IST 2026
[2026-06-27 09:29:20,569.569 INFO    ] ================================================
[2026-06-27 09:29:20,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:29:20
[2026-06-27 09:29:21,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:29:21,362.362 INFO    ] Initializing speech engine...
[2026-06-27 09:29:21,368.368 INFO    ] 2026-06-27 09:29:21
[2026-06-27 09:29:21,574.574 INFO    ] 2026-06-27 09:29:21
[2026-06-27 09:29:21,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:29:21,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:29:21,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:29:21,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:29:21,992.992 INFO    ] time= 27/06/2026 09:29:21
[2026-06-27 09:29:22,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:29:22,023.023 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:29:22,089.089 INFO    ] No existing commands found in stream
[2026-06-27 09:29:27,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:29:27,101.101 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-27 09:29:30,346.346 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:29:30,347.347 INFO    ] Checking for system updates...
[2026-06-27 09:29:30,369.369 INFO    ] 200
[2026-06-27 09:29:30,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:29:30,404.404 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:29:30,405.405 INFO    ] No update needed
[2026-06-27 09:29:30,406.406 INFO    ] Checking for camera pi updates...
[2026-06-27 09:29:30,427.427 INFO    ] 200
[2026-06-27 09:29:30,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:29:30,455.455 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:29:30,495.495 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:29:30,497.497 INFO    ] No camera update needed
[2026-06-27 09:29:30,498.498 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:29:30,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:29:30,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:29:30,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:29:32,539.539 INFO    ] ================================================
[2026-06-27 09:29:32,548.548 INFO    ] Launching Daemon at Sat Jun 27 09:29:32 IST 2026
[2026-06-27 09:29:32,555.555 INFO    ] ================================================
[2026-06-27 09:29:32,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:29:32
[2026-06-27 09:29:33,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:29:33,399.399 INFO    ] Initializing speech engine...
[2026-06-27 09:29:33,405.405 INFO    ] 2026-06-27 09:29:33
[2026-06-27 09:29:33,615.615 INFO    ] 2026-06-27 09:29:33
[2026-06-27 09:29:33,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:29:33,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:29:33,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:29:33,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:29:34,041.041 INFO    ] time= 27/06/2026 09:29:34
[2026-06-27 09:29:34,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:29:34,070.070 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:29:34,139.139 INFO    ] No existing commands found in stream
[2026-06-27 09:29:39,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:29:39,157.157 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-27 09:29:40,262.262 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 09:29:40,263.263 INFO    ] Checking for system updates...
[2026-06-27 09:29:40,286.286 INFO    ] 200
[2026-06-27 09:29:40,287.287 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:29:40,317.317 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:29:40,318.318 INFO    ] No update needed
[2026-06-27 09:29:40,320.320 INFO    ] Checking for camera pi updates...
[2026-06-27 09:29:40,339.339 INFO    ] 200
[2026-06-27 09:29:40,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:29:40,365.365 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:29:40,402.402 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:29:40,404.404 INFO    ] No camera update needed
[2026-06-27 09:29:40,405.405 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:29:40,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:29:40,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:29:40,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:29:42,450.450 INFO    ] ================================================
[2026-06-27 09:29:42,466.466 INFO    ] Launching Daemon at Sat Jun 27 09:29:42 IST 2026
[2026-06-27 09:29:42,476.476 INFO    ] ================================================
[2026-06-27 09:29:42,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:29:42
[2026-06-27 09:29:43,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:29:43,327.327 INFO    ] Initializing speech engine...
[2026-06-27 09:29:43,332.332 INFO    ] 2026-06-27 09:29:43
[2026-06-27 09:29:43,538.538 INFO    ] 2026-06-27 09:29:43
[2026-06-27 09:29:43,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:29:43,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:29:43,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:29:43,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:29:43,962.962 INFO    ] time= 27/06/2026 09:29:43
[2026-06-27 09:29:43,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:29:43,997.997 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:29:44,066.066 INFO    ] No existing commands found in stream
[2026-06-27 09:29:49,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:29:49,083.083 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-27 09:29:52,602.602 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:29:52,603.603 INFO    ] Checking for system updates...
[2026-06-27 09:29:52,626.626 INFO    ] 200
[2026-06-27 09:29:52,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:29:52,661.661 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:29:52,662.662 INFO    ] No update needed
[2026-06-27 09:29:52,664.664 INFO    ] Checking for camera pi updates...
[2026-06-27 09:29:52,684.684 INFO    ] 200
[2026-06-27 09:29:52,686.686 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:29:52,709.709 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:29:52,750.750 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:29:52,751.751 INFO    ] No camera update needed
[2026-06-27 09:29:52,752.752 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:29:52,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:29:52,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:29:52,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:29:54,797.797 INFO    ] ================================================
[2026-06-27 09:29:54,812.812 INFO    ] Launching Daemon at Sat Jun 27 09:29:54 IST 2026
[2026-06-27 09:29:54,824.824 INFO    ] ================================================
[2026-06-27 09:29:55,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:29:55
[2026-06-27 09:29:55,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:29:55,664.664 INFO    ] Initializing speech engine...
[2026-06-27 09:29:55,676.676 INFO    ] 2026-06-27 09:29:55
[2026-06-27 09:29:55,884.884 INFO    ] 2026-06-27 09:29:55
[2026-06-27 09:29:55,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:29:56,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:29:56,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:29:56,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:29:56,305.305 INFO    ] time= 27/06/2026 09:29:56
[2026-06-27 09:29:56,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:29:56,339.339 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:29:56,406.406 INFO    ] No existing commands found in stream
[2026-06-27 09:30:01,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:30:01,419.419 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-27 09:30:01,942.942 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 09:30:01,955.955 INFO    ] Checking for system updates...
[2026-06-27 09:30:02,003.003 INFO    ] 200
[2026-06-27 09:30:02,005.005 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:30:02,097.097 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:30:02,100.100 INFO    ] No update needed
[2026-06-27 09:30:02,102.102 INFO    ] Checking for camera pi updates...
[2026-06-27 09:30:02,134.134 INFO    ] 200
[2026-06-27 09:30:02,136.136 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:30:02,172.172 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:30:02,207.207 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:30:02,209.209 INFO    ] No camera update needed
[2026-06-27 09:30:02,211.211 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:30:02,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:30:02,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:30:02,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:30:04,257.257 INFO    ] ================================================
[2026-06-27 09:30:04,273.273 INFO    ] Launching Daemon at Sat Jun 27 09:30:04 IST 2026
[2026-06-27 09:30:04,284.284 INFO    ] ================================================
[2026-06-27 09:30:04,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:30:04
[2026-06-27 09:30:04,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:30:05,123.123 INFO    ] Initializing speech engine...
[2026-06-27 09:30:05,129.129 INFO    ] 2026-06-27 09:30:05
[2026-06-27 09:30:05,339.339 INFO    ] 2026-06-27 09:30:05
[2026-06-27 09:30:05,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:30:05,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:30:05,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:30:05,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:30:05,757.757 INFO    ] time= 27/06/2026 09:30:05
[2026-06-27 09:30:05,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:30:05,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:30:05,871.871 INFO    ] No existing commands found in stream
[2026-06-27 09:30:10,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:30:10,901.901 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-27 09:30:13,429.429 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:30:13,431.431 INFO    ] Checking for system updates...
[2026-06-27 09:30:13,454.454 INFO    ] 200
[2026-06-27 09:30:13,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:30:13,488.488 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:30:13,489.489 INFO    ] No update needed
[2026-06-27 09:30:13,490.490 INFO    ] Checking for camera pi updates...
[2026-06-27 09:30:13,511.511 INFO    ] 200
[2026-06-27 09:30:13,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:30:13,537.537 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:30:13,574.574 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:30:13,576.576 INFO    ] No camera update needed
[2026-06-27 09:30:13,577.577 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:30:13,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:30:13,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:30:13,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:30:15,623.623 INFO    ] ================================================
[2026-06-27 09:30:15,639.639 INFO    ] Launching Daemon at Sat Jun 27 09:30:15 IST 2026
[2026-06-27 09:30:15,650.650 INFO    ] ================================================
[2026-06-27 09:30:15,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:30:15
[2026-06-27 09:30:16,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:30:16,447.447 INFO    ] Initializing speech engine...
[2026-06-27 09:30:16,456.456 INFO    ] 2026-06-27 09:30:16
[2026-06-27 09:30:16,664.664 INFO    ] 2026-06-27 09:30:16
[2026-06-27 09:30:16,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:30:16,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:30:16,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:30:17,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:30:17,107.107 INFO    ] time= 27/06/2026 09:30:17
[2026-06-27 09:30:17,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:30:17,115.115 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:30:17,180.180 INFO    ] No existing commands found in stream
[2026-06-27 09:30:22,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:30:22,194.194 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-27 09:30:25,463.463 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:30:25,464.464 INFO    ] Checking for system updates...
[2026-06-27 09:30:25,486.486 INFO    ] 200
[2026-06-27 09:30:25,487.487 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:30:25,518.518 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:30:25,519.519 INFO    ] No update needed
[2026-06-27 09:30:25,521.521 INFO    ] Checking for camera pi updates...
[2026-06-27 09:30:25,542.542 INFO    ] 200
[2026-06-27 09:30:25,543.543 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:30:25,567.567 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:30:25,605.605 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:30:25,607.607 INFO    ] No camera update needed
[2026-06-27 09:30:25,608.608 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:30:25,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:30:25,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:30:25,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:30:27,655.655 INFO    ] ================================================
[2026-06-27 09:30:27,670.670 INFO    ] Launching Daemon at Sat Jun 27 09:30:27 IST 2026
[2026-06-27 09:30:27,682.682 INFO    ] ================================================
[2026-06-27 09:30:28,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:30:28
[2026-06-27 09:30:28,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:30:28,491.491 INFO    ] Initializing speech engine...
[2026-06-27 09:30:28,496.496 INFO    ] 2026-06-27 09:30:28
[2026-06-27 09:30:28,714.714 INFO    ] 2026-06-27 09:30:28
[2026-06-27 09:30:28,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:30:28,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:30:28,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:30:29,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:30:29,155.155 INFO    ] time= 27/06/2026 09:30:29
[2026-06-27 09:30:29,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:30:29,200.200 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:30:29,274.274 INFO    ] No existing commands found in stream
[2026-06-27 09:30:34,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:30:34,286.286 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-27 09:30:38,017.017 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:30:38,019.019 INFO    ] Checking for system updates...
[2026-06-27 09:30:38,040.040 INFO    ] 200
[2026-06-27 09:30:38,041.041 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:30:38,072.072 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:30:38,073.073 INFO    ] No update needed
[2026-06-27 09:30:38,075.075 INFO    ] Checking for camera pi updates...
[2026-06-27 09:30:38,095.095 INFO    ] 200
[2026-06-27 09:30:38,097.097 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:30:38,122.122 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:30:38,168.168 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:30:38,169.169 INFO    ] No camera update needed
[2026-06-27 09:30:38,171.171 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:30:38,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:30:38,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:30:38,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:30:40,219.219 INFO    ] ================================================
[2026-06-27 09:30:40,235.235 INFO    ] Launching Daemon at Sat Jun 27 09:30:40 IST 2026
[2026-06-27 09:30:40,246.246 INFO    ] ================================================
[2026-06-27 09:30:40,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:30:40
[2026-06-27 09:30:40,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:30:41,047.047 INFO    ] Initializing speech engine...
[2026-06-27 09:30:41,055.055 INFO    ] 2026-06-27 09:30:41
[2026-06-27 09:30:41,278.278 INFO    ] 2026-06-27 09:30:41
[2026-06-27 09:30:41,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:30:41,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:30:41,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:30:41,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:30:41,704.704 INFO    ] time= 27/06/2026 09:30:41
[2026-06-27 09:30:41,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:30:41,754.754 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:30:41,829.829 INFO    ] No existing commands found in stream
[2026-06-27 09:30:46,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:30:46,842.842 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-27 09:30:48,073.073 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:30:48,075.075 INFO    ] Checking for system updates...
[2026-06-27 09:30:48,097.097 INFO    ] 200
[2026-06-27 09:30:48,098.098 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:30:48,131.131 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:30:48,133.133 INFO    ] No update needed
[2026-06-27 09:30:48,134.134 INFO    ] Checking for camera pi updates...
[2026-06-27 09:30:48,154.154 INFO    ] 200
[2026-06-27 09:30:48,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:30:48,182.182 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:30:48,223.223 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:30:48,224.224 INFO    ] No camera update needed
[2026-06-27 09:30:48,225.225 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:30:48,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:30:48,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:30:48,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:30:50,271.271 INFO    ] ================================================
[2026-06-27 09:30:50,287.287 INFO    ] Launching Daemon at Sat Jun 27 09:30:50 IST 2026
[2026-06-27 09:30:50,297.297 INFO    ] ================================================
[2026-06-27 09:30:50,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:30:50
[2026-06-27 09:30:50,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:30:51,132.132 INFO    ] Initializing speech engine...
[2026-06-27 09:30:51,143.143 INFO    ] 2026-06-27 09:30:51
[2026-06-27 09:30:51,362.362 INFO    ] 2026-06-27 09:30:51
[2026-06-27 09:30:51,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:30:51,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:30:51,593.593 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:30:51,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:30:51,795.795 INFO    ] time= 27/06/2026 09:30:51
[2026-06-27 09:30:51,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:30:51,841.841 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:30:51,915.915 INFO    ] No existing commands found in stream
[2026-06-27 09:30:56,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:30:56,929.929 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-27 09:31:00,457.457 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:31:00,459.459 INFO    ] Checking for system updates...
[2026-06-27 09:31:00,480.480 INFO    ] 200
[2026-06-27 09:31:00,481.481 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:31:00,514.514 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:31:00,516.516 INFO    ] No update needed
[2026-06-27 09:31:00,517.517 INFO    ] Checking for camera pi updates...
[2026-06-27 09:31:00,539.539 INFO    ] 200
[2026-06-27 09:31:00,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:31:00,565.565 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:31:00,605.605 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:31:00,607.607 INFO    ] No camera update needed
[2026-06-27 09:31:00,608.608 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:31:00,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:31:00,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:31:00,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:31:02,652.652 INFO    ] ================================================
[2026-06-27 09:31:02,666.666 INFO    ] Launching Daemon at Sat Jun 27 09:31:02 IST 2026
[2026-06-27 09:31:02,676.676 INFO    ] ================================================
[2026-06-27 09:31:03,367.367 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:31:03
[2026-06-27 09:31:03,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:31:03,967.967 INFO    ] Initializing speech engine...
[2026-06-27 09:31:03,974.974 INFO    ] 2026-06-27 09:31:03
[2026-06-27 09:31:04,180.180 INFO    ] 2026-06-27 09:31:04
[2026-06-27 09:31:04,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:31:04,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:31:04,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:31:04,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:31:04,651.651 INFO    ] time= 27/06/2026 09:31:04
[2026-06-27 09:31:04,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:31:04,681.681 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:31:04,749.749 INFO    ] No existing commands found in stream
[2026-06-27 09:31:09,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:31:09,761.761 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-27 09:31:10,643.643 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:31:10,645.645 INFO    ] Checking for system updates...
[2026-06-27 09:31:10,667.667 INFO    ] 200
[2026-06-27 09:31:10,669.669 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:31:10,702.702 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:31:10,703.703 INFO    ] No update needed
[2026-06-27 09:31:10,705.705 INFO    ] Checking for camera pi updates...
[2026-06-27 09:31:10,726.726 INFO    ] 200
[2026-06-27 09:31:10,728.728 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:31:10,756.756 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:31:10,794.794 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:31:10,795.795 INFO    ] No camera update needed
[2026-06-27 09:31:10,797.797 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:31:10,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:31:10,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:31:10,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:31:12,845.845 INFO    ] ================================================
[2026-06-27 09:31:12,860.860 INFO    ] Launching Daemon at Sat Jun 27 09:31:12 IST 2026
[2026-06-27 09:31:12,872.872 INFO    ] ================================================
[2026-06-27 09:31:13,194.194 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:31:13
[2026-06-27 09:31:13,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:31:13,644.644 INFO    ] Initializing speech engine...
[2026-06-27 09:31:13,652.652 INFO    ] 2026-06-27 09:31:13
[2026-06-27 09:31:13,863.863 INFO    ] 2026-06-27 09:31:13
[2026-06-27 09:31:13,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:31:14,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:31:14,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:31:14,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:31:14,288.288 INFO    ] time= 27/06/2026 09:31:14
[2026-06-27 09:31:14,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:31:14,316.316 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:31:14,383.383 INFO    ] No existing commands found in stream
[2026-06-27 09:31:19,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:31:19,395.395 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-27 09:31:22,338.338 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 09:31:22,339.339 INFO    ] Checking for system updates...
[2026-06-27 09:31:22,361.361 INFO    ] 200
[2026-06-27 09:31:22,362.362 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:31:22,399.399 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:31:22,400.400 INFO    ] No update needed
[2026-06-27 09:31:22,402.402 INFO    ] Checking for camera pi updates...
[2026-06-27 09:31:22,421.421 INFO    ] 200
[2026-06-27 09:31:22,423.423 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:31:22,448.448 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:31:22,590.590 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:31:22,591.591 INFO    ] No camera update needed
[2026-06-27 09:31:22,592.592 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:31:22,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:31:22,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:31:22,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:31:24,635.635 INFO    ] ================================================
[2026-06-27 09:31:24,654.654 INFO    ] Launching Daemon at Sat Jun 27 09:31:24 IST 2026
[2026-06-27 09:31:24,666.666 INFO    ] ================================================
[2026-06-27 09:31:25,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:31:25
[2026-06-27 09:31:25,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:31:25,547.547 INFO    ] Initializing speech engine...
[2026-06-27 09:31:25,551.551 INFO    ] 2026-06-27 09:31:25
[2026-06-27 09:31:25,770.770 INFO    ] 2026-06-27 09:31:25
[2026-06-27 09:31:25,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:31:25,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:31:25,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:31:26,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:31:26,185.185 INFO    ] time= 27/06/2026 09:31:26
[2026-06-27 09:31:26,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:31:26,226.226 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:31:26,323.323 INFO    ] No existing commands found in stream
[2026-06-27 09:31:31,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:31:31,335.335 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-27 09:31:34,654.654 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:31:34,656.656 INFO    ] Checking for system updates...
[2026-06-27 09:31:34,679.679 INFO    ] 200
[2026-06-27 09:31:34,680.680 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:31:34,719.719 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:31:34,720.720 INFO    ] No update needed
[2026-06-27 09:31:34,722.722 INFO    ] Checking for camera pi updates...
[2026-06-27 09:31:34,744.744 INFO    ] 200
[2026-06-27 09:31:34,746.746 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:31:34,771.771 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:31:34,812.812 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:31:34,814.814 INFO    ] No camera update needed
[2026-06-27 09:31:34,815.815 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:31:34,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:31:34,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:31:34,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:31:36,863.863 INFO    ] ================================================
[2026-06-27 09:31:36,879.879 INFO    ] Launching Daemon at Sat Jun 27 09:31:36 IST 2026
[2026-06-27 09:31:36,890.890 INFO    ] ================================================
[2026-06-27 09:31:37,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:31:37
[2026-06-27 09:31:37,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:31:37,664.664 INFO    ] Initializing speech engine...
[2026-06-27 09:31:37,676.676 INFO    ] 2026-06-27 09:31:37
[2026-06-27 09:31:37,886.886 INFO    ] 2026-06-27 09:31:37
[2026-06-27 09:31:37,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:31:38,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:31:38,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:31:38,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:31:38,311.311 INFO    ] time= 27/06/2026 09:31:38
[2026-06-27 09:31:38,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:31:38,342.342 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:31:38,409.409 INFO    ] No existing commands found in stream
[2026-06-27 09:31:43,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:31:43,421.421 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-27 09:31:44,790.790 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:31:44,791.791 INFO    ] Checking for system updates...
[2026-06-27 09:31:44,812.812 INFO    ] 200
[2026-06-27 09:31:44,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:31:44,846.846 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:31:44,848.848 INFO    ] No update needed
[2026-06-27 09:31:44,849.849 INFO    ] Checking for camera pi updates...
[2026-06-27 09:31:44,868.868 INFO    ] 200
[2026-06-27 09:31:44,869.869 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:31:44,893.893 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:31:44,936.936 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:31:44,937.937 INFO    ] No camera update needed
[2026-06-27 09:31:44,939.939 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:31:44,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:31:44,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:31:44,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:31:46,985.985 INFO    ] ================================================
[2026-06-27 09:31:47,000.000 INFO    ] Launching Daemon at Sat Jun 27 09:31:46 IST 2026
[2026-06-27 09:31:47,012.012 INFO    ] ================================================
[2026-06-27 09:31:47,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:31:47
[2026-06-27 09:31:47,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:31:47,831.831 INFO    ] Initializing speech engine...
[2026-06-27 09:31:47,836.836 INFO    ] 2026-06-27 09:31:47
[2026-06-27 09:31:48,040.040 INFO    ] 2026-06-27 09:31:48
[2026-06-27 09:31:48,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:31:48,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:31:48,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:31:48,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:31:48,457.457 INFO    ] time= 27/06/2026 09:31:48
[2026-06-27 09:31:48,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:31:48,491.491 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:31:48,556.556 INFO    ] No existing commands found in stream
[2026-06-27 09:31:53,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:31:53,569.569 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-27 09:31:54,758.758 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 09:31:54,760.760 INFO    ] Checking for system updates...
[2026-06-27 09:31:54,781.781 INFO    ] 200
[2026-06-27 09:31:54,782.782 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:31:54,815.815 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:31:54,817.817 INFO    ] No update needed
[2026-06-27 09:31:54,818.818 INFO    ] Checking for camera pi updates...
[2026-06-27 09:31:54,839.839 INFO    ] 200
[2026-06-27 09:31:54,840.840 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:31:54,866.866 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:31:54,891.891 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:31:54,893.893 INFO    ] No camera update needed
[2026-06-27 09:31:54,894.894 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:31:54,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:31:54,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:31:54,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:31:56,935.935 INFO    ] ================================================
[2026-06-27 09:31:56,952.952 INFO    ] Launching Daemon at Sat Jun 27 09:31:56 IST 2026
[2026-06-27 09:31:56,963.963 INFO    ] ================================================
[2026-06-27 09:31:57,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:31:57
[2026-06-27 09:31:57,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:31:57,821.821 INFO    ] Initializing speech engine...
[2026-06-27 09:31:57,827.827 INFO    ] 2026-06-27 09:31:57
[2026-06-27 09:31:58,036.036 INFO    ] 2026-06-27 09:31:58
[2026-06-27 09:31:58,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:31:58,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:31:58,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:31:58,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:31:58,461.461 INFO    ] time= 27/06/2026 09:31:58
[2026-06-27 09:31:58,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:31:58,491.491 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:31:58,559.559 INFO    ] No existing commands found in stream
[2026-06-27 09:32:03,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:32:03,577.577 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-27 09:32:04,166.166 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 09:32:04,169.169 INFO    ] Checking for system updates...
[2026-06-27 09:32:04,190.190 INFO    ] 200
[2026-06-27 09:32:04,191.191 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:32:04,223.223 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:32:04,224.224 INFO    ] No update needed
[2026-06-27 09:32:04,225.225 INFO    ] Checking for camera pi updates...
[2026-06-27 09:32:04,245.245 INFO    ] 200
[2026-06-27 09:32:04,246.246 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:32:04,272.272 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:32:04,314.314 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:32:04,315.315 INFO    ] No camera update needed
[2026-06-27 09:32:04,316.316 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:32:04,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:32:04,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:32:04,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:32:06,363.363 INFO    ] ================================================
[2026-06-27 09:32:06,379.379 INFO    ] Launching Daemon at Sat Jun 27 09:32:06 IST 2026
[2026-06-27 09:32:06,390.390 INFO    ] ================================================
[2026-06-27 09:32:06,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:32:06
[2026-06-27 09:32:07,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:32:07,200.200 INFO    ] Initializing speech engine...
[2026-06-27 09:32:07,206.206 INFO    ] 2026-06-27 09:32:07
[2026-06-27 09:32:07,424.424 INFO    ] 2026-06-27 09:32:07
[2026-06-27 09:32:07,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:32:07,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:32:07,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:32:07,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:32:07,866.866 INFO    ] time= 27/06/2026 09:32:07
[2026-06-27 09:32:07,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:32:07,914.914 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:32:07,989.989 INFO    ] No existing commands found in stream
[2026-06-27 09:32:13,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:32:13,003.003 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-27 09:32:15,804.804 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 09:32:15,805.805 INFO    ] Checking for system updates...
[2026-06-27 09:32:15,827.827 INFO    ] 200
[2026-06-27 09:32:15,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:32:15,859.859 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:32:15,861.861 INFO    ] No update needed
[2026-06-27 09:32:15,862.862 INFO    ] Checking for camera pi updates...
[2026-06-27 09:32:15,883.883 INFO    ] 200
[2026-06-27 09:32:15,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:32:15,909.909 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:32:15,946.946 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:32:15,947.947 INFO    ] No camera update needed
[2026-06-27 09:32:15,949.949 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:32:15,950.950 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:32:15,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:32:15,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:32:17,987.987 INFO    ] ================================================
[2026-06-27 09:32:18,004.004 INFO    ] Launching Daemon at Sat Jun 27 09:32:17 IST 2026
[2026-06-27 09:32:18,019.019 INFO    ] ================================================
[2026-06-27 09:32:18,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:32:18
[2026-06-27 09:32:18,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:32:18,873.873 INFO    ] Initializing speech engine...
[2026-06-27 09:32:18,882.882 INFO    ] 2026-06-27 09:32:18
[2026-06-27 09:32:19,105.105 INFO    ] 2026-06-27 09:32:19
[2026-06-27 09:32:19,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:32:19,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:32:19,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:32:19,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:32:19,551.551 INFO    ] time= 27/06/2026 09:32:19
[2026-06-27 09:32:19,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:32:19,592.592 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:32:19,690.690 INFO    ] No existing commands found in stream
[2026-06-27 09:32:24,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:32:24,702.702 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-27 09:32:28,417.417 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 09:32:28,419.419 INFO    ] Checking for system updates...
[2026-06-27 09:32:28,442.442 INFO    ] 200
[2026-06-27 09:32:28,443.443 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:32:28,474.474 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:32:28,476.476 INFO    ] No update needed
[2026-06-27 09:32:28,477.477 INFO    ] Checking for camera pi updates...
[2026-06-27 09:32:28,496.496 INFO    ] 200
[2026-06-27 09:32:28,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:32:28,522.522 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:32:28,559.559 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:32:28,560.560 INFO    ] No camera update needed
[2026-06-27 09:32:28,561.561 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:32:28,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:32:28,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:32:28,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:32:30,601.601 INFO    ] ================================================
[2026-06-27 09:32:30,616.616 INFO    ] Launching Daemon at Sat Jun 27 09:32:30 IST 2026
[2026-06-27 09:32:30,627.627 INFO    ] ================================================
[2026-06-27 09:32:30,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:32:30
[2026-06-27 09:32:31,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:32:31,406.406 INFO    ] Initializing speech engine...
[2026-06-27 09:32:31,411.411 INFO    ] 2026-06-27 09:32:31
[2026-06-27 09:32:31,614.614 INFO    ] 2026-06-27 09:32:31
[2026-06-27 09:32:31,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:32:31,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:32:31,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:32:32,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:32:32,062.062 INFO    ] time= 27/06/2026 09:32:32
[2026-06-27 09:32:32,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:32:32,070.070 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:32:32,137.137 INFO    ] No existing commands found in stream
[2026-06-27 09:32:37,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:32:37,150.150 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-27 09:32:37,601.601 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:32:37,603.603 INFO    ] Checking for system updates...
[2026-06-27 09:32:37,624.624 INFO    ] 200
[2026-06-27 09:32:37,625.625 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:32:37,656.656 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:32:37,658.658 INFO    ] No update needed
[2026-06-27 09:32:37,659.659 INFO    ] Checking for camera pi updates...
[2026-06-27 09:32:37,680.680 INFO    ] 200
[2026-06-27 09:32:37,681.681 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:32:37,705.705 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:32:37,742.742 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:32:37,743.743 INFO    ] No camera update needed
[2026-06-27 09:32:37,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:32:37,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:32:37,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:32:37,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:32:39,794.794 INFO    ] ================================================
[2026-06-27 09:32:39,811.811 INFO    ] Launching Daemon at Sat Jun 27 09:32:39 IST 2026
[2026-06-27 09:32:39,823.823 INFO    ] ================================================
[2026-06-27 09:32:40,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:32:40
[2026-06-27 09:32:40,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:32:40,651.651 INFO    ] Initializing speech engine...
[2026-06-27 09:32:40,654.654 INFO    ] 2026-06-27 09:32:40
[2026-06-27 09:32:40,862.862 INFO    ] 2026-06-27 09:32:40
[2026-06-27 09:32:40,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:32:41,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:32:41,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:32:41,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:32:41,282.282 INFO    ] time= 27/06/2026 09:32:41
[2026-06-27 09:32:41,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:32:41,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:32:41,378.378 INFO    ] No existing commands found in stream
[2026-06-27 09:32:46,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:32:46,392.392 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-27 09:32:49,460.460 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:32:49,462.462 INFO    ] Checking for system updates...
[2026-06-27 09:32:49,484.484 INFO    ] 200
[2026-06-27 09:32:49,485.485 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:32:49,516.516 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:32:49,518.518 INFO    ] No update needed
[2026-06-27 09:32:49,519.519 INFO    ] Checking for camera pi updates...
[2026-06-27 09:32:49,541.541 INFO    ] 200
[2026-06-27 09:32:49,542.542 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:32:49,570.570 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:32:49,607.607 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:32:49,608.608 INFO    ] No camera update needed
[2026-06-27 09:32:49,610.610 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:32:49,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:32:49,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:32:49,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:32:51,655.655 INFO    ] ================================================
[2026-06-27 09:32:51,671.671 INFO    ] Launching Daemon at Sat Jun 27 09:32:51 IST 2026
[2026-06-27 09:32:51,688.688 INFO    ] ================================================
[2026-06-27 09:32:52,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:32:52
[2026-06-27 09:32:52,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:32:52,539.539 INFO    ] Initializing speech engine...
[2026-06-27 09:32:52,550.550 INFO    ] 2026-06-27 09:32:52
[2026-06-27 09:32:52,758.758 INFO    ] 2026-06-27 09:32:52
[2026-06-27 09:32:52,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:32:52,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:32:52,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:32:53,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:32:53,180.180 INFO    ] time= 27/06/2026 09:32:53
[2026-06-27 09:32:53,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:32:53,208.208 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:32:53,274.274 INFO    ] No existing commands found in stream
[2026-06-27 09:32:58,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:32:58,288.288 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-27 09:33:01,425.425 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:33:01,429.429 INFO    ] Checking for system updates...
[2026-06-27 09:33:01,463.463 INFO    ] 200
[2026-06-27 09:33:01,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:33:01,504.504 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:33:01,506.506 INFO    ] No update needed
[2026-06-27 09:33:01,508.508 INFO    ] Checking for camera pi updates...
[2026-06-27 09:33:01,532.532 INFO    ] 200
[2026-06-27 09:33:01,534.534 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:33:01,563.563 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:33:01,590.590 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:33:01,592.592 INFO    ] No camera update needed
[2026-06-27 09:33:01,595.595 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:33:01,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:33:01,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:33:01,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:33:03,648.648 INFO    ] ================================================
[2026-06-27 09:33:03,664.664 INFO    ] Launching Daemon at Sat Jun 27 09:33:03 IST 2026
[2026-06-27 09:33:03,674.674 INFO    ] ================================================
[2026-06-27 09:33:04,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:33:04
[2026-06-27 09:33:04,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:33:04,511.511 INFO    ] Initializing speech engine...
[2026-06-27 09:33:04,517.517 INFO    ] 2026-06-27 09:33:04
[2026-06-27 09:33:04,723.723 INFO    ] 2026-06-27 09:33:04
[2026-06-27 09:33:04,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:33:04,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:33:04,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:33:05,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:33:05,163.163 INFO    ] time= 27/06/2026 09:33:05
[2026-06-27 09:33:05,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:33:05,171.171 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:33:05,238.238 INFO    ] No existing commands found in stream
[2026-06-27 09:33:10,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:33:10,256.256 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-27 09:33:14,439.439 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 09:33:14,440.440 INFO    ] Checking for system updates...
[2026-06-27 09:33:14,463.463 INFO    ] 200
[2026-06-27 09:33:14,465.465 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:33:14,501.501 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:33:14,503.503 INFO    ] No update needed
[2026-06-27 09:33:14,504.504 INFO    ] Checking for camera pi updates...
[2026-06-27 09:33:14,531.531 INFO    ] 200
[2026-06-27 09:33:14,533.533 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:33:14,557.557 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:33:14,585.585 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:33:14,587.587 INFO    ] No camera update needed
[2026-06-27 09:33:14,588.588 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:33:14,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:33:14,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:33:14,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:33:16,637.637 INFO    ] ================================================
[2026-06-27 09:33:16,652.652 INFO    ] Launching Daemon at Sat Jun 27 09:33:16 IST 2026
[2026-06-27 09:33:16,663.663 INFO    ] ================================================
[2026-06-27 09:33:17,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:33:17
[2026-06-27 09:33:17,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:33:17,541.541 INFO    ] Initializing speech engine...
[2026-06-27 09:33:17,556.556 INFO    ] 2026-06-27 09:33:17
[2026-06-27 09:33:17,780.780 INFO    ] 2026-06-27 09:33:17
[2026-06-27 09:33:17,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:33:17,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:33:18,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:33:18,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:33:18,212.212 INFO    ] time= 27/06/2026 09:33:18
[2026-06-27 09:33:18,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:33:18,234.234 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:33:18,301.301 INFO    ] No existing commands found in stream
[2026-06-27 09:33:23,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:33:23,314.314 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-27 09:33:27,025.025 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 09:33:27,026.026 INFO    ] Checking for system updates...
[2026-06-27 09:33:27,047.047 INFO    ] 200
[2026-06-27 09:33:27,048.048 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:33:27,079.079 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:33:27,080.080 INFO    ] No update needed
[2026-06-27 09:33:27,081.081 INFO    ] Checking for camera pi updates...
[2026-06-27 09:33:27,101.101 INFO    ] 200
[2026-06-27 09:33:27,102.102 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:33:27,126.126 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:33:27,251.251 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:33:27,252.252 INFO    ] No camera update needed
[2026-06-27 09:33:27,254.254 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:33:27,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:33:27,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:33:27,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:33:29,292.292 INFO    ] ================================================
[2026-06-27 09:33:29,309.309 INFO    ] Launching Daemon at Sat Jun 27 09:33:29 IST 2026
[2026-06-27 09:33:29,320.320 INFO    ] ================================================
[2026-06-27 09:33:29,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:33:29
[2026-06-27 09:33:29,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:33:30,098.098 INFO    ] Initializing speech engine...
[2026-06-27 09:33:30,108.108 INFO    ] 2026-06-27 09:33:30
[2026-06-27 09:33:30,318.318 INFO    ] 2026-06-27 09:33:30
[2026-06-27 09:33:30,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:33:30,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:33:30,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:33:30,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:33:30,764.764 INFO    ] time= 27/06/2026 09:33:30
[2026-06-27 09:33:30,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:33:30,791.791 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:33:30,908.908 INFO    ] No existing commands found in stream
[2026-06-27 09:33:35,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:33:35,921.921 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-27 09:33:39,681.681 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 09:33:39,683.683 INFO    ] Checking for system updates...
[2026-06-27 09:33:39,705.705 INFO    ] 200
[2026-06-27 09:33:39,707.707 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:33:39,739.739 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:33:39,741.741 INFO    ] No update needed
[2026-06-27 09:33:39,742.742 INFO    ] Checking for camera pi updates...
[2026-06-27 09:33:39,762.762 INFO    ] 200
[2026-06-27 09:33:39,763.763 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:33:39,788.788 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:33:39,829.829 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:33:39,830.830 INFO    ] No camera update needed
[2026-06-27 09:33:39,831.831 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:33:39,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:33:39,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:33:39,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:33:41,877.877 INFO    ] ================================================
[2026-06-27 09:33:41,893.893 INFO    ] Launching Daemon at Sat Jun 27 09:33:41 IST 2026
[2026-06-27 09:33:41,904.904 INFO    ] ================================================
[2026-06-27 09:33:42,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:33:42
[2026-06-27 09:33:42,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:33:42,767.767 INFO    ] Initializing speech engine...
[2026-06-27 09:33:42,770.770 INFO    ] 2026-06-27 09:33:42
[2026-06-27 09:33:42,977.977 INFO    ] 2026-06-27 09:33:42
[2026-06-27 09:33:43,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:33:43,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:33:43,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:33:43,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:33:43,418.418 INFO    ] time= 27/06/2026 09:33:43
[2026-06-27 09:33:43,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:33:43,426.426 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:33:43,492.492 INFO    ] No existing commands found in stream
[2026-06-27 09:33:48,502.502 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:33:48,505.505 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-27 09:33:52,894.894 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 09:33:52,896.896 INFO    ] Checking for system updates...
[2026-06-27 09:33:52,918.918 INFO    ] 200
[2026-06-27 09:33:52,919.919 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:33:52,953.953 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:33:52,954.954 INFO    ] No update needed
[2026-06-27 09:33:52,956.956 INFO    ] Checking for camera pi updates...
[2026-06-27 09:33:52,976.976 INFO    ] 200
[2026-06-27 09:33:52,977.977 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:33:53,001.001 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:33:53,045.045 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:33:53,047.047 INFO    ] No camera update needed
[2026-06-27 09:33:53,048.048 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:33:53,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:33:53,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:33:53,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:33:55,094.094 INFO    ] ================================================
[2026-06-27 09:33:55,110.110 INFO    ] Launching Daemon at Sat Jun 27 09:33:55 IST 2026
[2026-06-27 09:33:55,122.122 INFO    ] ================================================
[2026-06-27 09:33:55,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:33:55
[2026-06-27 09:33:55,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:33:55,988.988 INFO    ] Initializing speech engine...
[2026-06-27 09:33:55,993.993 INFO    ] 2026-06-27 09:33:55
[2026-06-27 09:33:56,201.201 INFO    ] 2026-06-27 09:33:56
[2026-06-27 09:33:56,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:33:56,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:33:56,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:33:56,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:33:56,626.626 INFO    ] time= 27/06/2026 09:33:56
[2026-06-27 09:33:56,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:33:56,655.655 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:33:56,722.722 INFO    ] No existing commands found in stream
[2026-06-27 09:34:01,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:34:01,737.737 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-27 09:34:05,069.069 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 09:34:05,070.070 INFO    ] Checking for system updates...
[2026-06-27 09:34:05,091.091 INFO    ] 200
[2026-06-27 09:34:05,092.092 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:34:05,122.122 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:34:05,123.123 INFO    ] No update needed
[2026-06-27 09:34:05,125.125 INFO    ] Checking for camera pi updates...
[2026-06-27 09:34:05,146.146 INFO    ] 200
[2026-06-27 09:34:05,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:34:05,172.172 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:34:05,209.209 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:34:05,210.210 INFO    ] No camera update needed
[2026-06-27 09:34:05,211.211 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:34:05,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:34:05,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:34:05,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:34:07,257.257 INFO    ] ================================================
[2026-06-27 09:34:07,272.272 INFO    ] Launching Daemon at Sat Jun 27 09:34:07 IST 2026
[2026-06-27 09:34:07,283.283 INFO    ] ================================================
[2026-06-27 09:34:07,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:34:07
[2026-06-27 09:34:07,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:34:08,078.078 INFO    ] Initializing speech engine...
[2026-06-27 09:34:08,088.088 INFO    ] 2026-06-27 09:34:08
[2026-06-27 09:34:08,292.292 INFO    ] 2026-06-27 09:34:08
[2026-06-27 09:34:08,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:34:08,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:34:08,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:34:08,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:34:08,692.692 INFO    ] time= 27/06/2026 09:34:08
[2026-06-27 09:34:08,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:34:08,737.737 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:34:08,808.808 INFO    ] No existing commands found in stream
[2026-06-27 09:34:13,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:34:13,821.821 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-27 09:34:18,107.107 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 09:34:18,109.109 INFO    ] Checking for system updates...
[2026-06-27 09:34:18,146.146 INFO    ] 200
[2026-06-27 09:34:18,149.149 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:34:18,204.204 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:34:18,207.207 INFO    ] No update needed
[2026-06-27 09:34:18,209.209 INFO    ] Checking for camera pi updates...
[2026-06-27 09:34:18,239.239 INFO    ] 200
[2026-06-27 09:34:18,241.241 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:34:18,267.267 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:34:18,309.309 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:34:18,310.310 INFO    ] No camera update needed
[2026-06-27 09:34:18,311.311 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:34:18,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:34:18,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:34:18,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:34:20,359.359 INFO    ] ================================================
[2026-06-27 09:34:20,374.374 INFO    ] Launching Daemon at Sat Jun 27 09:34:20 IST 2026
[2026-06-27 09:34:20,385.385 INFO    ] ================================================
[2026-06-27 09:34:20,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:34:20
[2026-06-27 09:34:21,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:34:21,176.176 INFO    ] Initializing speech engine...
[2026-06-27 09:34:21,180.180 INFO    ] 2026-06-27 09:34:21
[2026-06-27 09:34:21,400.400 INFO    ] 2026-06-27 09:34:21
[2026-06-27 09:34:21,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:34:21,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:34:21,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:34:21,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:34:21,799.799 INFO    ] time= 27/06/2026 09:34:21
[2026-06-27 09:34:21,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:34:21,851.851 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:34:21,923.923 INFO    ] No existing commands found in stream
[2026-06-27 09:34:26,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:34:26,935.935 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-27 09:34:31,106.106 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 09:34:31,108.108 INFO    ] Checking for system updates...
[2026-06-27 09:34:31,129.129 INFO    ] 200
[2026-06-27 09:34:31,131.131 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:34:31,161.161 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:34:31,163.163 INFO    ] No update needed
[2026-06-27 09:34:31,164.164 INFO    ] Checking for camera pi updates...
[2026-06-27 09:34:31,184.184 INFO    ] 200
[2026-06-27 09:34:31,185.185 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:34:31,210.210 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:34:31,250.250 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:34:31,251.251 INFO    ] No camera update needed
[2026-06-27 09:34:31,253.253 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:34:31,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:34:31,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:34:31,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:34:33,292.292 INFO    ] ================================================
[2026-06-27 09:34:33,307.307 INFO    ] Launching Daemon at Sat Jun 27 09:34:33 IST 2026
[2026-06-27 09:34:33,318.318 INFO    ] ================================================
[2026-06-27 09:34:33,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:34:33
[2026-06-27 09:34:34,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:34:34,139.139 INFO    ] Initializing speech engine...
[2026-06-27 09:34:34,152.152 INFO    ] 2026-06-27 09:34:34
[2026-06-27 09:34:34,361.361 INFO    ] 2026-06-27 09:34:34
[2026-06-27 09:34:34,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:34:34,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:34:34,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:34:34,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:34:34,791.791 INFO    ] time= 27/06/2026 09:34:34
[2026-06-27 09:34:34,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:34:34,819.819 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:34:34,887.887 INFO    ] No existing commands found in stream
[2026-06-27 09:34:39,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:34:39,898.898 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-27 09:34:40,876.876 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:34:40,878.878 INFO    ] Checking for system updates...
[2026-06-27 09:34:40,900.900 INFO    ] 200
[2026-06-27 09:34:40,901.901 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:34:40,931.931 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:34:40,933.933 INFO    ] No update needed
[2026-06-27 09:34:40,934.934 INFO    ] Checking for camera pi updates...
[2026-06-27 09:34:40,954.954 INFO    ] 200
[2026-06-27 09:34:40,955.955 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:34:40,979.979 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:34:41,014.014 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:34:41,016.016 INFO    ] No camera update needed
[2026-06-27 09:34:41,017.017 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:34:41,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:34:41,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:34:41,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:34:43,062.062 INFO    ] ================================================
[2026-06-27 09:34:43,077.077 INFO    ] Launching Daemon at Sat Jun 27 09:34:43 IST 2026
[2026-06-27 09:34:43,088.088 INFO    ] ================================================
[2026-06-27 09:34:43,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:34:43
[2026-06-27 09:34:43,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:34:43,912.912 INFO    ] Initializing speech engine...
[2026-06-27 09:34:43,918.918 INFO    ] 2026-06-27 09:34:43
[2026-06-27 09:34:44,122.122 INFO    ] 2026-06-27 09:34:44
[2026-06-27 09:34:44,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:34:44,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:34:44,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:34:44,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:34:44,562.562 INFO    ] time= 27/06/2026 09:34:44
[2026-06-27 09:34:44,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:34:44,569.569 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:34:44,635.635 INFO    ] No existing commands found in stream
[2026-06-27 09:34:49,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:34:49,648.648 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-27 09:34:50,098.098 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 09:34:50,100.100 INFO    ] Checking for system updates...
[2026-06-27 09:34:50,121.121 INFO    ] 200
[2026-06-27 09:34:50,122.122 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:34:50,153.153 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:34:50,154.154 INFO    ] No update needed
[2026-06-27 09:34:50,156.156 INFO    ] Checking for camera pi updates...
[2026-06-27 09:34:50,175.175 INFO    ] 200
[2026-06-27 09:34:50,177.177 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:34:50,200.200 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:34:50,240.240 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:34:50,242.242 INFO    ] No camera update needed
[2026-06-27 09:34:50,243.243 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:34:50,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:34:50,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:34:50,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:34:52,288.288 INFO    ] ================================================
[2026-06-27 09:34:52,304.304 INFO    ] Launching Daemon at Sat Jun 27 09:34:52 IST 2026
[2026-06-27 09:34:52,314.314 INFO    ] ================================================
[2026-06-27 09:34:52,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:34:52
[2026-06-27 09:34:52,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:34:53,123.123 INFO    ] Initializing speech engine...
[2026-06-27 09:34:53,126.126 INFO    ] 2026-06-27 09:34:53
[2026-06-27 09:34:53,322.322 INFO    ] 2026-06-27 09:34:53
[2026-06-27 09:34:53,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:34:53,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:34:53,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:34:53,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:34:53,745.745 INFO    ] time= 27/06/2026 09:34:53
[2026-06-27 09:34:53,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:34:53,830.830 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:34:53,928.928 INFO    ] No existing commands found in stream
[2026-06-27 09:34:58,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:34:58,940.940 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-27 09:35:00,474.474 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:35:00,476.476 INFO    ] Checking for system updates...
[2026-06-27 09:35:00,496.496 INFO    ] 200
[2026-06-27 09:35:00,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:35:00,534.534 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:35:00,535.535 INFO    ] No update needed
[2026-06-27 09:35:00,536.536 INFO    ] Checking for camera pi updates...
[2026-06-27 09:35:00,557.557 INFO    ] 200
[2026-06-27 09:35:00,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:35:00,583.583 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:35:00,619.619 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:35:00,620.620 INFO    ] No camera update needed
[2026-06-27 09:35:00,622.622 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:35:00,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:35:00,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:35:00,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:35:02,661.661 INFO    ] ================================================
[2026-06-27 09:35:02,671.671 INFO    ] Launching Daemon at Sat Jun 27 09:35:02 IST 2026
[2026-06-27 09:35:02,678.678 INFO    ] ================================================
[2026-06-27 09:35:03,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:35:03
[2026-06-27 09:35:03,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:35:03,517.517 INFO    ] Initializing speech engine...
[2026-06-27 09:35:03,524.524 INFO    ] 2026-06-27 09:35:03
[2026-06-27 09:35:03,730.730 INFO    ] 2026-06-27 09:35:03
[2026-06-27 09:35:03,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:35:03,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:35:03,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:35:04,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:35:04,175.175 INFO    ] time= 27/06/2026 09:35:04
[2026-06-27 09:35:04,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:35:04,182.182 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:35:04,249.249 INFO    ] No existing commands found in stream
[2026-06-27 09:35:09,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:35:09,262.262 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-27 09:35:13,102.102 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:35:13,104.104 INFO    ] Checking for system updates...
[2026-06-27 09:35:13,125.125 INFO    ] 200
[2026-06-27 09:35:13,126.126 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:35:13,157.157 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:35:13,159.159 INFO    ] No update needed
[2026-06-27 09:35:13,160.160 INFO    ] Checking for camera pi updates...
[2026-06-27 09:35:13,180.180 INFO    ] 200
[2026-06-27 09:35:13,181.181 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:35:13,205.205 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:35:13,248.248 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:35:13,249.249 INFO    ] No camera update needed
[2026-06-27 09:35:13,251.251 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:35:13,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:35:13,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:35:13,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:35:15,297.297 INFO    ] ================================================
[2026-06-27 09:35:15,313.313 INFO    ] Launching Daemon at Sat Jun 27 09:35:15 IST 2026
[2026-06-27 09:35:15,324.324 INFO    ] ================================================
[2026-06-27 09:35:15,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:35:15
[2026-06-27 09:35:15,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:35:16,115.115 INFO    ] Initializing speech engine...
[2026-06-27 09:35:16,125.125 INFO    ] 2026-06-27 09:35:16
[2026-06-27 09:35:16,330.330 INFO    ] 2026-06-27 09:35:16
[2026-06-27 09:35:16,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:35:16,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:35:16,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:35:16,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:35:16,777.777 INFO    ] time= 27/06/2026 09:35:16
[2026-06-27 09:35:16,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:35:16,785.785 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:35:16,854.854 INFO    ] No existing commands found in stream
[2026-06-27 09:35:21,862.862 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:35:21,865.865 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-27 09:35:23,741.741 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 09:35:23,743.743 INFO    ] Checking for system updates...
[2026-06-27 09:35:23,764.764 INFO    ] 200
[2026-06-27 09:35:23,765.765 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:35:23,799.799 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:35:23,800.800 INFO    ] No update needed
[2026-06-27 09:35:23,801.801 INFO    ] Checking for camera pi updates...
[2026-06-27 09:35:23,822.822 INFO    ] 200
[2026-06-27 09:35:23,824.824 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:35:23,848.848 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:35:23,885.885 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:35:23,886.886 INFO    ] No camera update needed
[2026-06-27 09:35:23,887.887 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:35:23,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:35:23,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:35:23,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:35:25,934.934 INFO    ] ================================================
[2026-06-27 09:35:25,949.949 INFO    ] Launching Daemon at Sat Jun 27 09:35:25 IST 2026
[2026-06-27 09:35:25,961.961 INFO    ] ================================================
[2026-06-27 09:35:26,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:35:26
[2026-06-27 09:35:26,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:35:26,752.752 INFO    ] Initializing speech engine...
[2026-06-27 09:35:26,765.765 INFO    ] 2026-06-27 09:35:26
[2026-06-27 09:35:26,974.974 INFO    ] 2026-06-27 09:35:26
[2026-06-27 09:35:27,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:35:27,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:35:27,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:35:27,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:35:27,391.391 INFO    ] time= 27/06/2026 09:35:27
[2026-06-27 09:35:27,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:35:27,421.421 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:35:27,487.487 INFO    ] No existing commands found in stream
[2026-06-27 09:35:32,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:35:32,498.498 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-27 09:35:36,641.641 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 09:35:36,643.643 INFO    ] Checking for system updates...
[2026-06-27 09:35:36,663.663 INFO    ] 200
[2026-06-27 09:35:36,665.665 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:35:36,698.698 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:35:36,699.699 INFO    ] No update needed
[2026-06-27 09:35:36,700.700 INFO    ] Checking for camera pi updates...
[2026-06-27 09:35:36,719.719 INFO    ] 200
[2026-06-27 09:35:36,721.721 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:35:36,746.746 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:35:36,783.783 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:35:36,784.784 INFO    ] No camera update needed
[2026-06-27 09:35:36,786.786 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:35:36,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:35:36,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:35:36,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:35:38,825.825 INFO    ] ================================================
[2026-06-27 09:35:38,840.840 INFO    ] Launching Daemon at Sat Jun 27 09:35:38 IST 2026
[2026-06-27 09:35:38,852.852 INFO    ] ================================================
[2026-06-27 09:35:39,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:35:39
[2026-06-27 09:35:39,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:35:39,651.651 INFO    ] Initializing speech engine...
[2026-06-27 09:35:39,661.661 INFO    ] 2026-06-27 09:35:39
[2026-06-27 09:35:39,867.867 INFO    ] 2026-06-27 09:35:39
[2026-06-27 09:35:39,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:35:40,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:35:40,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:35:40,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:35:40,291.291 INFO    ] time= 27/06/2026 09:35:40
[2026-06-27 09:35:40,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:35:40,320.320 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:35:40,386.386 INFO    ] No existing commands found in stream
[2026-06-27 09:35:45,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:35:45,399.399 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-27 09:35:49,717.717 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 09:35:49,719.719 INFO    ] Checking for system updates...
[2026-06-27 09:35:49,740.740 INFO    ] 200
[2026-06-27 09:35:49,742.742 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:35:49,773.773 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:35:49,775.775 INFO    ] No update needed
[2026-06-27 09:35:49,776.776 INFO    ] Checking for camera pi updates...
[2026-06-27 09:35:49,796.796 INFO    ] 200
[2026-06-27 09:35:49,798.798 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:35:49,823.823 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:35:49,860.860 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:35:49,862.862 INFO    ] No camera update needed
[2026-06-27 09:35:49,863.863 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:35:49,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:35:49,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:35:49,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:35:51,909.909 INFO    ] ================================================
[2026-06-27 09:35:51,925.925 INFO    ] Launching Daemon at Sat Jun 27 09:35:51 IST 2026
[2026-06-27 09:35:51,936.936 INFO    ] ================================================
[2026-06-27 09:35:52,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:35:52
[2026-06-27 09:35:52,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:35:52,759.759 INFO    ] Initializing speech engine...
[2026-06-27 09:35:52,767.767 INFO    ] 2026-06-27 09:35:52
[2026-06-27 09:35:52,980.980 INFO    ] 2026-06-27 09:35:52
[2026-06-27 09:35:53,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:35:53,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:35:53,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:35:53,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:35:53,422.422 INFO    ] time= 27/06/2026 09:35:53
[2026-06-27 09:35:53,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:35:53,429.429 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:35:53,496.496 INFO    ] No existing commands found in stream
[2026-06-27 09:35:58,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:35:58,508.508 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-27 09:36:01,702.702 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:36:01,704.704 INFO    ] Checking for system updates...
[2026-06-27 09:36:01,739.739 INFO    ] 200
[2026-06-27 09:36:01,741.741 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:36:01,789.789 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:36:01,791.791 INFO    ] No update needed
[2026-06-27 09:36:01,794.794 INFO    ] Checking for camera pi updates...
[2026-06-27 09:36:01,837.837 INFO    ] 200
[2026-06-27 09:36:01,841.841 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:36:01,879.879 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:36:01,927.927 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:36:01,929.929 INFO    ] No camera update needed
[2026-06-27 09:36:01,931.931 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:36:01,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:36:01,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:36:01,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:36:03,980.980 INFO    ] ================================================
[2026-06-27 09:36:04,998.998 INFO    ] Launching Daemon at Sat Jun 27 09:36:03 IST 2026
[2026-06-27 09:36:04,009.009 INFO    ] ================================================
[2026-06-27 09:36:04,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:36:04
[2026-06-27 09:36:04,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:36:04,777.777 INFO    ] Initializing speech engine...
[2026-06-27 09:36:04,785.785 INFO    ] 2026-06-27 09:36:04
[2026-06-27 09:36:04,996.996 INFO    ] 2026-06-27 09:36:04
[2026-06-27 09:36:05,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:36:05,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:36:05,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:36:05,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:36:05,349.349 INFO    ] time= 27/06/2026 09:36:05
[2026-06-27 09:36:05,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:36:05,415.415 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:36:05,542.542 INFO    ] No existing commands found in stream
[2026-06-27 09:36:10,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:36:10,554.554 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-27 09:36:12,292.292 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 09:36:12,293.293 INFO    ] Checking for system updates...
[2026-06-27 09:36:12,317.317 INFO    ] 200
[2026-06-27 09:36:12,318.318 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:36:12,349.349 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:36:12,351.351 INFO    ] No update needed
[2026-06-27 09:36:12,352.352 INFO    ] Checking for camera pi updates...
[2026-06-27 09:36:12,372.372 INFO    ] 200
[2026-06-27 09:36:12,373.373 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:36:12,397.397 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:36:12,436.436 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:36:12,438.438 INFO    ] No camera update needed
[2026-06-27 09:36:12,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:36:12,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:36:12,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:36:12,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:36:14,488.488 INFO    ] ================================================
[2026-06-27 09:36:14,503.503 INFO    ] Launching Daemon at Sat Jun 27 09:36:14 IST 2026
[2026-06-27 09:36:14,514.514 INFO    ] ================================================
[2026-06-27 09:36:14,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:36:14
[2026-06-27 09:36:15,193.193 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:36:15,343.343 INFO    ] Initializing speech engine...
[2026-06-27 09:36:15,349.349 INFO    ] 2026-06-27 09:36:15
[2026-06-27 09:36:15,557.557 INFO    ] 2026-06-27 09:36:15
[2026-06-27 09:36:15,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:36:15,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:36:15,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:36:15,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:36:15,977.977 INFO    ] time= 27/06/2026 09:36:15
[2026-06-27 09:36:16,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:36:16,007.007 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:36:16,072.072 INFO    ] No existing commands found in stream
[2026-06-27 09:36:21,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:36:21,087.087 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-27 09:36:23,927.927 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:36:23,928.928 INFO    ] Checking for system updates...
[2026-06-27 09:36:23,950.950 INFO    ] 200
[2026-06-27 09:36:23,951.951 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:36:23,984.984 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:36:23,986.986 INFO    ] No update needed
[2026-06-27 09:36:23,987.987 INFO    ] Checking for camera pi updates...
[2026-06-27 09:36:24,007.007 INFO    ] 200
[2026-06-27 09:36:24,008.008 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:36:24,033.033 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:36:24,078.078 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:36:24,080.080 INFO    ] No camera update needed
[2026-06-27 09:36:24,081.081 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:36:24,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:36:24,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:36:24,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:36:26,128.128 INFO    ] ================================================
[2026-06-27 09:36:26,144.144 INFO    ] Launching Daemon at Sat Jun 27 09:36:26 IST 2026
[2026-06-27 09:36:26,155.155 INFO    ] ================================================
[2026-06-27 09:36:26,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:36:26
[2026-06-27 09:36:26,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:36:27,024.024 INFO    ] Initializing speech engine...
[2026-06-27 09:36:27,029.029 INFO    ] 2026-06-27 09:36:27
[2026-06-27 09:36:27,237.237 INFO    ] 2026-06-27 09:36:27
[2026-06-27 09:36:27,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:36:27,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:36:27,475.475 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:36:27,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:36:27,665.665 INFO    ] time= 27/06/2026 09:36:27
[2026-06-27 09:36:27,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:36:27,688.688 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:36:27,756.756 INFO    ] No existing commands found in stream
[2026-06-27 09:36:32,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:36:32,779.779 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-27 09:36:34,397.397 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 09:36:34,398.398 INFO    ] Checking for system updates...
[2026-06-27 09:36:34,421.421 INFO    ] 200
[2026-06-27 09:36:34,423.423 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:36:34,454.454 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:36:34,456.456 INFO    ] No update needed
[2026-06-27 09:36:34,457.457 INFO    ] Checking for camera pi updates...
[2026-06-27 09:36:34,478.478 INFO    ] 200
[2026-06-27 09:36:34,480.480 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:36:34,506.506 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:36:34,541.541 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:36:34,543.543 INFO    ] No camera update needed
[2026-06-27 09:36:34,544.544 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:36:34,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:36:34,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:36:34,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:36:36,591.591 INFO    ] ================================================
[2026-06-27 09:36:36,607.607 INFO    ] Launching Daemon at Sat Jun 27 09:36:36 IST 2026
[2026-06-27 09:36:36,618.618 INFO    ] ================================================
[2026-06-27 09:36:36,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:36:36
[2026-06-27 09:36:37,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:36:37,399.399 INFO    ] Initializing speech engine...
[2026-06-27 09:36:37,409.409 INFO    ] 2026-06-27 09:36:37
[2026-06-27 09:36:37,615.615 INFO    ] 2026-06-27 09:36:37
[2026-06-27 09:36:37,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:36:37,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:36:37,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:36:37,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:36:38,032.032 INFO    ] time= 27/06/2026 09:36:37
[2026-06-27 09:36:38,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:36:38,061.061 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:36:38,136.136 INFO    ] No existing commands found in stream
[2026-06-27 09:36:43,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:36:43,153.153 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-27 09:36:46,881.881 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:36:46,882.882 INFO    ] Checking for system updates...
[2026-06-27 09:36:46,903.903 INFO    ] 200
[2026-06-27 09:36:46,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:36:46,935.935 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:36:46,936.936 INFO    ] No update needed
[2026-06-27 09:36:46,938.938 INFO    ] Checking for camera pi updates...
[2026-06-27 09:36:46,960.960 INFO    ] 200
[2026-06-27 09:36:46,962.962 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:36:46,985.985 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:36:47,026.026 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:36:47,028.028 INFO    ] No camera update needed
[2026-06-27 09:36:47,029.029 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:36:47,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:36:47,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:36:47,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:36:49,076.076 INFO    ] ================================================
[2026-06-27 09:36:49,092.092 INFO    ] Launching Daemon at Sat Jun 27 09:36:49 IST 2026
[2026-06-27 09:36:49,102.102 INFO    ] ================================================
[2026-06-27 09:36:49,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:36:49
[2026-06-27 09:36:49,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:36:49,884.884 INFO    ] Initializing speech engine...
[2026-06-27 09:36:49,889.889 INFO    ] 2026-06-27 09:36:49
[2026-06-27 09:36:50,117.117 INFO    ] 2026-06-27 09:36:50
[2026-06-27 09:36:50,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:36:50,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:36:50,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:36:50,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:36:50,545.545 INFO    ] time= 27/06/2026 09:36:50
[2026-06-27 09:36:50,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:36:50,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:36:50,665.665 INFO    ] No existing commands found in stream
[2026-06-27 09:36:55,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:36:55,678.678 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-27 09:36:57,161.161 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 09:36:57,162.162 INFO    ] Checking for system updates...
[2026-06-27 09:36:57,186.186 INFO    ] 200
[2026-06-27 09:36:57,188.188 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:36:57,219.219 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:36:57,220.220 INFO    ] No update needed
[2026-06-27 09:36:57,221.221 INFO    ] Checking for camera pi updates...
[2026-06-27 09:36:57,242.242 INFO    ] 200
[2026-06-27 09:36:57,245.245 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:36:57,270.270 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:36:57,310.310 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:36:57,312.312 INFO    ] No camera update needed
[2026-06-27 09:36:57,313.313 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:36:57,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:36:57,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:36:57,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:36:59,358.358 INFO    ] ================================================
[2026-06-27 09:36:59,374.374 INFO    ] Launching Daemon at Sat Jun 27 09:36:59 IST 2026
[2026-06-27 09:36:59,385.385 INFO    ] ================================================
[2026-06-27 09:36:59,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:36:59
[2026-06-27 09:37:00,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:37:00,222.222 INFO    ] Initializing speech engine...
[2026-06-27 09:37:00,228.228 INFO    ] 2026-06-27 09:37:00
[2026-06-27 09:37:00,437.437 INFO    ] 2026-06-27 09:37:00
[2026-06-27 09:37:00,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:37:00,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:37:00,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:37:00,794.794 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:37:00,858.858 INFO    ] time= 27/06/2026 09:37:00
[2026-06-27 09:37:00,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:37:00,888.888 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:37:00,961.961 INFO    ] No existing commands found in stream
[2026-06-27 09:37:05,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:37:05,974.974 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-27 09:37:07,622.622 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 09:37:07,624.624 INFO    ] Checking for system updates...
[2026-06-27 09:37:07,645.645 INFO    ] 200
[2026-06-27 09:37:07,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:37:07,677.677 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:37:07,678.678 INFO    ] No update needed
[2026-06-27 09:37:07,680.680 INFO    ] Checking for camera pi updates...
[2026-06-27 09:37:07,699.699 INFO    ] 200
[2026-06-27 09:37:07,701.701 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:37:07,724.724 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:37:07,770.770 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:37:07,772.772 INFO    ] No camera update needed
[2026-06-27 09:37:07,773.773 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:37:07,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:37:07,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:37:07,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:37:09,821.821 INFO    ] ================================================
[2026-06-27 09:37:09,837.837 INFO    ] Launching Daemon at Sat Jun 27 09:37:09 IST 2026
[2026-06-27 09:37:09,848.848 INFO    ] ================================================
[2026-06-27 09:37:10,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:37:10
[2026-06-27 09:37:10,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:37:10,653.653 INFO    ] Initializing speech engine...
[2026-06-27 09:37:10,661.661 INFO    ] 2026-06-27 09:37:10
[2026-06-27 09:37:10,884.884 INFO    ] 2026-06-27 09:37:10
[2026-06-27 09:37:10,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:37:11,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:37:11,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:37:11,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:37:11,334.334 INFO    ] time= 27/06/2026 09:37:11
[2026-06-27 09:37:11,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:37:11,363.363 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:37:11,433.433 INFO    ] No existing commands found in stream
[2026-06-27 09:37:16,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:37:16,446.446 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-27 09:37:16,817.817 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:37:16,819.819 INFO    ] Checking for system updates...
[2026-06-27 09:37:16,839.839 INFO    ] 200
[2026-06-27 09:37:16,841.841 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:37:16,871.871 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:37:16,872.872 INFO    ] No update needed
[2026-06-27 09:37:16,874.874 INFO    ] Checking for camera pi updates...
[2026-06-27 09:37:16,894.894 INFO    ] 200
[2026-06-27 09:37:16,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:37:16,919.919 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:37:16,957.957 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:37:16,959.959 INFO    ] No camera update needed
[2026-06-27 09:37:16,960.960 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:37:16,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:37:16,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:37:16,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:37:19,007.007 INFO    ] ================================================
[2026-06-27 09:37:19,023.023 INFO    ] Launching Daemon at Sat Jun 27 09:37:19 IST 2026
[2026-06-27 09:37:19,034.034 INFO    ] ================================================
[2026-06-27 09:37:19,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:37:19
[2026-06-27 09:37:19,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:37:19,863.863 INFO    ] Initializing speech engine...
[2026-06-27 09:37:19,869.869 INFO    ] 2026-06-27 09:37:19
[2026-06-27 09:37:20,080.080 INFO    ] 2026-06-27 09:37:20
[2026-06-27 09:37:20,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:37:20,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:37:20,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:37:20,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:37:20,476.476 INFO    ] time= 27/06/2026 09:37:20
[2026-06-27 09:37:20,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:37:20,530.530 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:37:20,622.622 INFO    ] No existing commands found in stream
[2026-06-27 09:37:25,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:37:25,635.635 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-27 09:37:29,325.325 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:37:29,326.326 INFO    ] Checking for system updates...
[2026-06-27 09:37:29,347.347 INFO    ] 200
[2026-06-27 09:37:29,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:37:29,379.379 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:37:29,381.381 INFO    ] No update needed
[2026-06-27 09:37:29,382.382 INFO    ] Checking for camera pi updates...
[2026-06-27 09:37:29,402.402 INFO    ] 200
[2026-06-27 09:37:29,404.404 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:37:29,427.427 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:37:29,475.475 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:37:29,476.476 INFO    ] No camera update needed
[2026-06-27 09:37:29,477.477 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:37:29,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:37:29,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:37:29,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:37:31,519.519 INFO    ] ================================================
[2026-06-27 09:37:31,529.529 INFO    ] Launching Daemon at Sat Jun 27 09:37:31 IST 2026
[2026-06-27 09:37:31,540.540 INFO    ] ================================================
[2026-06-27 09:37:31,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:37:31
[2026-06-27 09:37:32,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:37:32,372.372 INFO    ] Initializing speech engine...
[2026-06-27 09:37:32,377.377 INFO    ] 2026-06-27 09:37:32
[2026-06-27 09:37:32,587.587 INFO    ] 2026-06-27 09:37:32
[2026-06-27 09:37:32,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:37:33,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:37:33,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:37:33,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:37:33,158.158 INFO    ] time= 27/06/2026 09:37:33
[2026-06-27 09:37:33,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:37:33,163.163 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:37:33,228.228 INFO    ] No existing commands found in stream
[2026-06-27 09:37:38,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:37:38,239.239 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-27 09:37:39,082.082 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:37:39,083.083 INFO    ] Checking for system updates...
[2026-06-27 09:37:39,104.104 INFO    ] 200
[2026-06-27 09:37:39,106.106 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:37:39,138.138 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:37:39,139.139 INFO    ] No update needed
[2026-06-27 09:37:39,141.141 INFO    ] Checking for camera pi updates...
[2026-06-27 09:37:39,161.161 INFO    ] 200
[2026-06-27 09:37:39,162.162 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:37:39,185.185 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:37:39,324.324 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:37:39,326.326 INFO    ] No camera update needed
[2026-06-27 09:37:39,327.327 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:37:39,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:37:39,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:37:39,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:37:41,373.373 INFO    ] ================================================
[2026-06-27 09:37:41,389.389 INFO    ] Launching Daemon at Sat Jun 27 09:37:41 IST 2026
[2026-06-27 09:37:41,401.401 INFO    ] ================================================
[2026-06-27 09:37:41,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:37:41
[2026-06-27 09:37:42,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:37:42,221.221 INFO    ] Initializing speech engine...
[2026-06-27 09:37:42,231.231 INFO    ] 2026-06-27 09:37:42
[2026-06-27 09:37:42,440.440 INFO    ] 2026-06-27 09:37:42
[2026-06-27 09:37:42,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:37:42,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:37:42,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:37:42,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:37:42,885.885 INFO    ] time= 27/06/2026 09:37:42
[2026-06-27 09:37:42,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:37:42,892.892 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:37:42,959.959 INFO    ] No existing commands found in stream
[2026-06-27 09:37:47,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:37:47,971.971 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-27 09:37:49,502.502 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:37:49,503.503 INFO    ] Checking for system updates...
[2026-06-27 09:37:49,525.525 INFO    ] 200
[2026-06-27 09:37:49,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:37:49,557.557 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:37:49,558.558 INFO    ] No update needed
[2026-06-27 09:37:49,559.559 INFO    ] Checking for camera pi updates...
[2026-06-27 09:37:49,581.581 INFO    ] 200
[2026-06-27 09:37:49,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:37:49,606.606 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:37:49,639.639 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:37:49,641.641 INFO    ] No camera update needed
[2026-06-27 09:37:49,642.642 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:37:49,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:37:49,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:37:49,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:37:51,688.688 INFO    ] ================================================
[2026-06-27 09:37:51,703.703 INFO    ] Launching Daemon at Sat Jun 27 09:37:51 IST 2026
[2026-06-27 09:37:51,714.714 INFO    ] ================================================
[2026-06-27 09:37:52,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:37:52
[2026-06-27 09:37:52,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:37:52,578.578 INFO    ] Initializing speech engine...
[2026-06-27 09:37:52,583.583 INFO    ] 2026-06-27 09:37:52
[2026-06-27 09:37:52,791.791 INFO    ] 2026-06-27 09:37:52
[2026-06-27 09:37:52,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:37:53,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:37:53,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:37:53,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:37:53,212.212 INFO    ] time= 27/06/2026 09:37:53
[2026-06-27 09:37:53,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:37:53,242.242 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:37:53,310.310 INFO    ] No existing commands found in stream
[2026-06-27 09:37:58,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:37:58,328.328 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-27 09:38:01,870.870 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:38:01,872.872 INFO    ] Checking for system updates...
[2026-06-27 09:38:01,910.910 INFO    ] 200
[2026-06-27 09:38:01,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:38:01,958.958 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:38:01,960.960 INFO    ] No update needed
[2026-06-27 09:38:01,961.961 INFO    ] Checking for camera pi updates...
[2026-06-27 09:38:01,985.985 INFO    ] 200
[2026-06-27 09:38:01,987.987 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:38:02,022.022 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:38:02,049.049 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:38:02,051.051 INFO    ] No camera update needed
[2026-06-27 09:38:02,054.054 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:38:02,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:38:02,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:38:02,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:38:04,108.108 INFO    ] ================================================
[2026-06-27 09:38:04,123.123 INFO    ] Launching Daemon at Sat Jun 27 09:38:04 IST 2026
[2026-06-27 09:38:04,134.134 INFO    ] ================================================
[2026-06-27 09:38:04,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:38:04
[2026-06-27 09:38:04,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:38:04,922.922 INFO    ] Initializing speech engine...
[2026-06-27 09:38:04,932.932 INFO    ] 2026-06-27 09:38:04
[2026-06-27 09:38:05,155.155 INFO    ] 2026-06-27 09:38:05
[2026-06-27 09:38:05,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:38:05,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:38:05,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:38:05,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:38:05,588.588 INFO    ] time= 27/06/2026 09:38:05
[2026-06-27 09:38:05,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:38:05,639.639 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:38:05,709.709 INFO    ] No existing commands found in stream
[2026-06-27 09:38:10,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:38:10,722.722 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-27 09:38:14,323.323 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 09:38:14,324.324 INFO    ] Checking for system updates...
[2026-06-27 09:38:14,345.345 INFO    ] 200
[2026-06-27 09:38:14,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:38:14,379.379 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:38:14,381.381 INFO    ] No update needed
[2026-06-27 09:38:14,382.382 INFO    ] Checking for camera pi updates...
[2026-06-27 09:38:14,405.405 INFO    ] 200
[2026-06-27 09:38:14,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:38:14,430.430 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:38:14,470.470 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:38:14,472.472 INFO    ] No camera update needed
[2026-06-27 09:38:14,473.473 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:38:14,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:38:14,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:38:14,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:38:16,520.520 INFO    ] ================================================
[2026-06-27 09:38:16,536.536 INFO    ] Launching Daemon at Sat Jun 27 09:38:16 IST 2026
[2026-06-27 09:38:16,547.547 INFO    ] ================================================
[2026-06-27 09:38:16,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:38:16
[2026-06-27 09:38:17,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:38:17,342.342 INFO    ] Initializing speech engine...
[2026-06-27 09:38:17,352.352 INFO    ] 2026-06-27 09:38:17
[2026-06-27 09:38:17,557.557 INFO    ] 2026-06-27 09:38:17
[2026-06-27 09:38:17,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:38:17,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:38:17,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:38:17,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:38:17,957.957 INFO    ] time= 27/06/2026 09:38:17
[2026-06-27 09:38:17,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:38:18,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:38:18,080.080 INFO    ] No existing commands found in stream
[2026-06-27 09:38:23,094.094 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:38:23,097.097 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-27 09:38:24,152.152 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 09:38:24,154.154 INFO    ] Checking for system updates...
[2026-06-27 09:38:24,175.175 INFO    ] 200
[2026-06-27 09:38:24,176.176 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:38:24,207.207 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:38:24,208.208 INFO    ] No update needed
[2026-06-27 09:38:24,210.210 INFO    ] Checking for camera pi updates...
[2026-06-27 09:38:24,231.231 INFO    ] 200
[2026-06-27 09:38:24,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:38:24,258.258 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:38:24,295.295 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:38:24,296.296 INFO    ] No camera update needed
[2026-06-27 09:38:24,298.298 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:38:24,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:38:24,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:38:24,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:38:26,344.344 INFO    ] ================================================
[2026-06-27 09:38:26,360.360 INFO    ] Launching Daemon at Sat Jun 27 09:38:26 IST 2026
[2026-06-27 09:38:26,370.370 INFO    ] ================================================
[2026-06-27 09:38:26,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:38:26
[2026-06-27 09:38:27,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:38:27,229.229 INFO    ] Initializing speech engine...
[2026-06-27 09:38:27,235.235 INFO    ] 2026-06-27 09:38:27
[2026-06-27 09:38:27,437.437 INFO    ] 2026-06-27 09:38:27
[2026-06-27 09:38:27,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:38:27,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:38:27,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:38:27,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:38:27,870.870 INFO    ] time= 27/06/2026 09:38:27
[2026-06-27 09:38:27,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:38:27,881.881 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:38:27,948.948 INFO    ] No existing commands found in stream
[2026-06-27 09:38:32,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:38:32,960.960 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-27 09:38:34,526.526 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:38:34,528.528 INFO    ] Checking for system updates...
[2026-06-27 09:38:34,548.548 INFO    ] 200
[2026-06-27 09:38:34,550.550 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:38:34,580.580 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:38:34,581.581 INFO    ] No update needed
[2026-06-27 09:38:34,583.583 INFO    ] Checking for camera pi updates...
[2026-06-27 09:38:34,603.603 INFO    ] 200
[2026-06-27 09:38:34,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:38:34,628.628 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:38:34,662.662 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:38:34,663.663 INFO    ] No camera update needed
[2026-06-27 09:38:34,665.665 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:38:34,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:38:34,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:38:34,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:38:36,710.710 INFO    ] ================================================
[2026-06-27 09:38:36,726.726 INFO    ] Launching Daemon at Sat Jun 27 09:38:36 IST 2026
[2026-06-27 09:38:36,736.736 INFO    ] ================================================
[2026-06-27 09:38:37,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:38:37
[2026-06-27 09:38:37,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:38:37,602.602 INFO    ] Initializing speech engine...
[2026-06-27 09:38:37,609.609 INFO    ] 2026-06-27 09:38:37
[2026-06-27 09:38:37,816.816 INFO    ] 2026-06-27 09:38:37
[2026-06-27 09:38:37,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:38:38,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:38:38,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:38:38,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:38:38,244.244 INFO    ] time= 27/06/2026 09:38:38
[2026-06-27 09:38:38,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:38:38,274.274 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:38:38,341.341 INFO    ] No existing commands found in stream
[2026-06-27 09:38:43,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:38:43,355.355 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-27 09:38:45,773.773 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 09:38:45,775.775 INFO    ] Checking for system updates...
[2026-06-27 09:38:45,798.798 INFO    ] 200
[2026-06-27 09:38:45,799.799 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:38:45,830.830 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:38:45,832.832 INFO    ] No update needed
[2026-06-27 09:38:45,833.833 INFO    ] Checking for camera pi updates...
[2026-06-27 09:38:45,853.853 INFO    ] 200
[2026-06-27 09:38:45,854.854 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:38:45,878.878 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:38:45,924.924 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:38:45,925.925 INFO    ] No camera update needed
[2026-06-27 09:38:45,927.927 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:38:45,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:38:45,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:38:45,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:38:47,972.972 INFO    ] ================================================
[2026-06-27 09:38:47,988.988 INFO    ] Launching Daemon at Sat Jun 27 09:38:47 IST 2026
[2026-06-27 09:38:48,998.998 INFO    ] ================================================
[2026-06-27 09:38:48,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:38:48
[2026-06-27 09:38:48,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:38:48,825.825 INFO    ] Initializing speech engine...
[2026-06-27 09:38:48,830.830 INFO    ] 2026-06-27 09:38:48
[2026-06-27 09:38:49,040.040 INFO    ] 2026-06-27 09:38:49
[2026-06-27 09:38:49,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:38:49,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:38:49,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:38:49,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:38:49,485.485 INFO    ] time= 27/06/2026 09:38:49
[2026-06-27 09:38:49,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:38:49,493.493 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:38:49,562.562 INFO    ] No existing commands found in stream
[2026-06-27 09:38:54,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:38:54,578.578 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-27 09:38:56,049.049 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:38:56,050.050 INFO    ] Checking for system updates...
[2026-06-27 09:38:56,071.071 INFO    ] 200
[2026-06-27 09:38:56,073.073 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:38:56,105.105 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:38:56,107.107 INFO    ] No update needed
[2026-06-27 09:38:56,109.109 INFO    ] Checking for camera pi updates...
[2026-06-27 09:38:56,129.129 INFO    ] 200
[2026-06-27 09:38:56,130.130 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:38:56,158.158 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:38:56,195.195 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:38:56,197.197 INFO    ] No camera update needed
[2026-06-27 09:38:56,198.198 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:38:56,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:38:56,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:38:56,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:38:58,244.244 INFO    ] ================================================
[2026-06-27 09:38:58,259.259 INFO    ] Launching Daemon at Sat Jun 27 09:38:58 IST 2026
[2026-06-27 09:38:58,270.270 INFO    ] ================================================
[2026-06-27 09:38:58,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:38:58
[2026-06-27 09:38:58,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:38:59,066.066 INFO    ] Initializing speech engine...
[2026-06-27 09:38:59,071.071 INFO    ] 2026-06-27 09:38:59
[2026-06-27 09:38:59,275.275 INFO    ] 2026-06-27 09:38:59
[2026-06-27 09:38:59,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:38:59,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:38:59,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:38:59,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:38:59,679.679 INFO    ] time= 27/06/2026 09:38:59
[2026-06-27 09:38:59,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:38:59,718.718 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:38:59,789.789 INFO    ] No existing commands found in stream
[2026-06-27 09:39:04,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:39:04,801.801 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-27 09:39:05,738.738 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 09:39:05,740.740 INFO    ] Checking for system updates...
[2026-06-27 09:39:05,761.761 INFO    ] 200
[2026-06-27 09:39:05,763.763 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:39:05,794.794 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:39:05,795.795 INFO    ] No update needed
[2026-06-27 09:39:05,797.797 INFO    ] Checking for camera pi updates...
[2026-06-27 09:39:05,816.816 INFO    ] 200
[2026-06-27 09:39:05,818.818 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:39:05,843.843 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:39:05,883.883 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:39:05,885.885 INFO    ] No camera update needed
[2026-06-27 09:39:05,886.886 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:39:05,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:39:05,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:39:05,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:39:07,933.933 INFO    ] ================================================
[2026-06-27 09:39:07,948.948 INFO    ] Launching Daemon at Sat Jun 27 09:39:07 IST 2026
[2026-06-27 09:39:07,959.959 INFO    ] ================================================
[2026-06-27 09:39:08,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:39:08
[2026-06-27 09:39:08,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:39:08,836.836 INFO    ] Initializing speech engine...
[2026-06-27 09:39:08,842.842 INFO    ] 2026-06-27 09:39:08
[2026-06-27 09:39:09,054.054 INFO    ] 2026-06-27 09:39:09
[2026-06-27 09:39:09,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:39:09,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:39:09,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:39:09,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:39:09,479.479 INFO    ] time= 27/06/2026 09:39:09
[2026-06-27 09:39:09,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:39:09,514.514 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:39:09,582.582 INFO    ] No existing commands found in stream
[2026-06-27 09:39:14,597.597 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:39:14,600.600 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-27 09:39:15,657.657 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:39:15,658.658 INFO    ] Checking for system updates...
[2026-06-27 09:39:15,679.679 INFO    ] 200
[2026-06-27 09:39:15,681.681 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:39:15,713.713 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:39:15,715.715 INFO    ] No update needed
[2026-06-27 09:39:15,716.716 INFO    ] Checking for camera pi updates...
[2026-06-27 09:39:15,736.736 INFO    ] 200
[2026-06-27 09:39:15,737.737 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:39:15,760.760 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:39:15,800.800 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:39:15,802.802 INFO    ] No camera update needed
[2026-06-27 09:39:15,803.803 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:39:15,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:39:15,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:39:15,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:39:17,848.848 INFO    ] ================================================
[2026-06-27 09:39:17,863.863 INFO    ] Launching Daemon at Sat Jun 27 09:39:17 IST 2026
[2026-06-27 09:39:17,874.874 INFO    ] ================================================
[2026-06-27 09:39:18,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:39:18
[2026-06-27 09:39:18,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:39:18,686.686 INFO    ] Initializing speech engine...
[2026-06-27 09:39:18,693.693 INFO    ] 2026-06-27 09:39:18
[2026-06-27 09:39:18,906.906 INFO    ] 2026-06-27 09:39:18
[2026-06-27 09:39:18,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:39:19,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:39:19,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:39:19,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:39:19,327.327 INFO    ] time= 27/06/2026 09:39:19
[2026-06-27 09:39:19,348.348 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:39:19,354.354 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:39:19,420.420 INFO    ] No existing commands found in stream
[2026-06-27 09:39:24,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:39:24,429.429 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-27 09:39:25,392.392 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 09:39:25,395.395 INFO    ] Checking for system updates...
[2026-06-27 09:39:25,425.425 INFO    ] 200
[2026-06-27 09:39:25,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-27 09:39:25,428.428 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-27 09:39:25,429.429 INFO    ] Checking for camera pi updates...
[2026-06-27 09:39:25,454.454 INFO    ] 200
[2026-06-27 09:39:25,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-27 09:39:25,457.457 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-27 09:39:25,459.459 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:39:25,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:39:25,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:39:25,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:39:27,490.490 INFO    ] ================================================
[2026-06-27 09:39:27,499.499 INFO    ] Launching Daemon at Sat Jun 27 09:39:27 IST 2026
[2026-06-27 09:39:27,505.505 INFO    ] ================================================
[2026-06-27 09:39:27,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:39:27
[2026-06-27 09:39:28,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:39:28,386.386 INFO    ] Initializing speech engine...
[2026-06-27 09:39:28,397.397 INFO    ] 2026-06-27 09:39:28
[2026-06-27 09:39:28,606.606 INFO    ] 2026-06-27 09:39:28
[2026-06-27 09:39:28,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:39:28,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:39:28,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:39:28,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:39:29,023.023 INFO    ] time= 27/06/2026 09:39:28
[2026-06-27 09:39:29,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:39:29,057.057 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:39:29,125.125 INFO    ] No existing commands found in stream
[2026-06-27 09:39:34,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:39:34,138.138 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-27 09:39:34,642.642 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:39:34,644.644 INFO    ] Checking for system updates...
[2026-06-27 09:39:34,667.667 INFO    ] 200
[2026-06-27 09:39:34,669.669 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:39:34,700.700 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:39:34,702.702 INFO    ] No update needed
[2026-06-27 09:39:34,703.703 INFO    ] Checking for camera pi updates...
[2026-06-27 09:39:34,724.724 INFO    ] 200
[2026-06-27 09:39:34,725.725 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:39:34,749.749 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:39:34,786.786 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:39:34,788.788 INFO    ] No camera update needed
[2026-06-27 09:39:34,789.789 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:39:34,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:39:34,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:39:34,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:39:36,836.836 INFO    ] ================================================
[2026-06-27 09:39:36,851.851 INFO    ] Launching Daemon at Sat Jun 27 09:39:36 IST 2026
[2026-06-27 09:39:36,862.862 INFO    ] ================================================
[2026-06-27 09:39:37,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:39:37
[2026-06-27 09:39:37,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:39:37,649.649 INFO    ] Initializing speech engine...
[2026-06-27 09:39:37,657.657 INFO    ] 2026-06-27 09:39:37
[2026-06-27 09:39:37,873.873 INFO    ] 2026-06-27 09:39:37
[2026-06-27 09:39:37,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:39:38,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:39:38,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:39:38,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:39:38,321.321 INFO    ] time= 27/06/2026 09:39:38
[2026-06-27 09:39:38,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:39:38,329.329 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:39:38,395.395 INFO    ] No existing commands found in stream
[2026-06-27 09:39:43,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:39:43,408.408 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-27 09:39:46,182.182 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:39:46,184.184 INFO    ] Checking for system updates...
[2026-06-27 09:39:46,205.205 INFO    ] 200
[2026-06-27 09:39:46,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:39:46,237.237 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:39:46,238.238 INFO    ] No update needed
[2026-06-27 09:39:46,240.240 INFO    ] Checking for camera pi updates...
[2026-06-27 09:39:46,259.259 INFO    ] 200
[2026-06-27 09:39:46,261.261 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:39:46,285.285 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:39:46,421.421 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:39:46,422.422 INFO    ] No camera update needed
[2026-06-27 09:39:46,424.424 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:39:46,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:39:46,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:39:46,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:39:48,462.462 INFO    ] ================================================
[2026-06-27 09:39:48,471.471 INFO    ] Launching Daemon at Sat Jun 27 09:39:48 IST 2026
[2026-06-27 09:39:48,477.477 INFO    ] ================================================
[2026-06-27 09:39:48,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:39:48
[2026-06-27 09:39:49,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:39:49,338.338 INFO    ] Initializing speech engine...
[2026-06-27 09:39:49,348.348 INFO    ] 2026-06-27 09:39:49
[2026-06-27 09:39:49,559.559 INFO    ] 2026-06-27 09:39:49
[2026-06-27 09:39:49,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:39:49,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:39:49,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:39:49,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:39:49,994.994 INFO    ] time= 27/06/2026 09:39:49
[2026-06-27 09:39:50,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:39:50,011.011 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:39:50,076.076 INFO    ] No existing commands found in stream
[2026-06-27 09:39:55,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:39:55,092.092 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-27 09:39:57,328.328 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 09:39:57,330.330 INFO    ] Checking for system updates...
[2026-06-27 09:39:57,353.353 INFO    ] 200
[2026-06-27 09:39:57,354.354 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:39:57,390.390 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:39:57,392.392 INFO    ] No update needed
[2026-06-27 09:39:57,393.393 INFO    ] Checking for camera pi updates...
[2026-06-27 09:39:57,416.416 INFO    ] 200
[2026-06-27 09:39:57,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:39:57,441.441 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:39:57,490.490 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:39:57,492.492 INFO    ] No camera update needed
[2026-06-27 09:39:57,494.494 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:39:57,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:39:57,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:39:57,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:39:59,541.541 INFO    ] ================================================
[2026-06-27 09:39:59,557.557 INFO    ] Launching Daemon at Sat Jun 27 09:39:59 IST 2026
[2026-06-27 09:39:59,568.568 INFO    ] ================================================
[2026-06-27 09:39:59,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:39:59
[2026-06-27 09:40:00,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:40:00,418.418 INFO    ] Initializing speech engine...
[2026-06-27 09:40:00,425.425 INFO    ] 2026-06-27 09:40:00
[2026-06-27 09:40:00,633.633 INFO    ] 2026-06-27 09:40:00
[2026-06-27 09:40:00,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:40:00,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:40:00,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:40:01,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:40:01,075.075 INFO    ] time= 27/06/2026 09:40:01
[2026-06-27 09:40:01,090.090 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:40:01,112.112 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:40:01,195.195 INFO    ] No existing commands found in stream
[2026-06-27 09:40:06,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:40:06,208.208 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-27 09:40:08,812.812 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 09:40:08,813.813 INFO    ] Checking for system updates...
[2026-06-27 09:40:08,836.836 INFO    ] 200
[2026-06-27 09:40:08,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:40:08,868.868 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:40:08,869.869 INFO    ] No update needed
[2026-06-27 09:40:08,870.870 INFO    ] Checking for camera pi updates...
[2026-06-27 09:40:08,890.890 INFO    ] 200
[2026-06-27 09:40:08,891.891 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:40:08,914.914 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:40:08,948.948 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:40:08,949.949 INFO    ] No camera update needed
[2026-06-27 09:40:08,950.950 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:40:08,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:40:08,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:40:08,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:40:11,996.996 INFO    ] ================================================
[2026-06-27 09:40:11,011.011 INFO    ] Launching Daemon at Sat Jun 27 09:40:11 IST 2026
[2026-06-27 09:40:11,022.022 INFO    ] ================================================
[2026-06-27 09:40:11,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:40:11
[2026-06-27 09:40:11,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:40:11,792.792 INFO    ] Initializing speech engine...
[2026-06-27 09:40:11,797.797 INFO    ] 2026-06-27 09:40:11
[2026-06-27 09:40:12,016.016 INFO    ] 2026-06-27 09:40:11
[2026-06-27 09:40:12,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:40:12,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:40:12,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:40:12,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:40:12,453.453 INFO    ] time= 27/06/2026 09:40:12
[2026-06-27 09:40:12,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:40:12,461.461 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:40:12,526.526 INFO    ] No existing commands found in stream
[2026-06-27 09:40:17,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:40:17,539.539 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-27 09:40:20,964.964 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:40:20,967.967 INFO    ] Checking for system updates...
[2026-06-27 09:40:21,007.007 INFO    ] 200
[2026-06-27 09:40:21,010.010 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:40:21,070.070 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:40:21,073.073 INFO    ] No update needed
[2026-06-27 09:40:21,075.075 INFO    ] Checking for camera pi updates...
[2026-06-27 09:40:21,107.107 INFO    ] 200
[2026-06-27 09:40:21,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:40:21,132.132 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:40:21,168.168 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:40:21,170.170 INFO    ] No camera update needed
[2026-06-27 09:40:21,171.171 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:40:21,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:40:21,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:40:21,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:40:23,217.217 INFO    ] ================================================
[2026-06-27 09:40:23,232.232 INFO    ] Launching Daemon at Sat Jun 27 09:40:23 IST 2026
[2026-06-27 09:40:23,242.242 INFO    ] ================================================
[2026-06-27 09:40:23,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:40:23
[2026-06-27 09:40:23,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:40:24,119.119 INFO    ] Initializing speech engine...
[2026-06-27 09:40:24,124.124 INFO    ] 2026-06-27 09:40:24
[2026-06-27 09:40:24,330.330 INFO    ] 2026-06-27 09:40:24
[2026-06-27 09:40:24,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:40:24,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:40:24,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:40:24,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:40:24,752.752 INFO    ] time= 27/06/2026 09:40:24
[2026-06-27 09:40:24,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:40:24,781.781 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:40:24,872.872 INFO    ] No existing commands found in stream
[2026-06-27 09:40:29,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:40:29,890.890 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-27 09:40:33,379.379 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 09:40:33,381.381 INFO    ] Checking for system updates...
[2026-06-27 09:40:33,402.402 INFO    ] 200
[2026-06-27 09:40:33,403.403 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:40:33,437.437 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:40:33,438.438 INFO    ] No update needed
[2026-06-27 09:40:33,440.440 INFO    ] Checking for camera pi updates...
[2026-06-27 09:40:33,462.462 INFO    ] 200
[2026-06-27 09:40:33,464.464 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:40:33,487.487 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:40:33,510.510 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:40:33,511.511 INFO    ] No camera update needed
[2026-06-27 09:40:33,513.513 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:40:33,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:40:33,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:40:33,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:40:35,560.560 INFO    ] ================================================
[2026-06-27 09:40:35,575.575 INFO    ] Launching Daemon at Sat Jun 27 09:40:35 IST 2026
[2026-06-27 09:40:35,586.586 INFO    ] ================================================
[2026-06-27 09:40:35,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:40:35
[2026-06-27 09:40:36,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:40:36,366.366 INFO    ] Initializing speech engine...
[2026-06-27 09:40:36,373.373 INFO    ] 2026-06-27 09:40:36
[2026-06-27 09:40:36,584.584 INFO    ] 2026-06-27 09:40:36
[2026-06-27 09:40:36,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:40:36,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:40:36,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:40:36,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:40:37,006.006 INFO    ] time= 27/06/2026 09:40:36
[2026-06-27 09:40:37,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:40:37,036.036 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:40:37,103.103 INFO    ] No existing commands found in stream
[2026-06-27 09:40:42,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:40:42,116.116 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-27 09:40:44,711.711 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:40:44,712.712 INFO    ] Checking for system updates...
[2026-06-27 09:40:44,733.733 INFO    ] 200
[2026-06-27 09:40:44,735.735 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:40:44,765.765 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:40:44,766.766 INFO    ] No update needed
[2026-06-27 09:40:44,768.768 INFO    ] Checking for camera pi updates...
[2026-06-27 09:40:44,787.787 INFO    ] 200
[2026-06-27 09:40:44,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:40:44,814.814 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:40:44,856.856 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:40:44,857.857 INFO    ] No camera update needed
[2026-06-27 09:40:44,858.858 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:40:44,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:40:44,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:40:44,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:40:46,905.905 INFO    ] ================================================
[2026-06-27 09:40:46,920.920 INFO    ] Launching Daemon at Sat Jun 27 09:40:46 IST 2026
[2026-06-27 09:40:46,931.931 INFO    ] ================================================
[2026-06-27 09:40:47,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:40:47
[2026-06-27 09:40:47,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:40:47,770.770 INFO    ] Initializing speech engine...
[2026-06-27 09:40:47,775.775 INFO    ] 2026-06-27 09:40:47
[2026-06-27 09:40:47,984.984 INFO    ] 2026-06-27 09:40:47
[2026-06-27 09:40:48,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:40:48,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:40:48,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:40:48,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:40:48,408.408 INFO    ] time= 27/06/2026 09:40:48
[2026-06-27 09:40:48,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:40:48,436.436 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:40:48,502.502 INFO    ] No existing commands found in stream
[2026-06-27 09:40:53,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:40:53,520.520 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-27 09:40:56,623.623 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:40:56,624.624 INFO    ] Checking for system updates...
[2026-06-27 09:40:56,646.646 INFO    ] 200
[2026-06-27 09:40:56,647.647 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:40:56,678.678 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:40:56,679.679 INFO    ] No update needed
[2026-06-27 09:40:56,681.681 INFO    ] Checking for camera pi updates...
[2026-06-27 09:40:56,701.701 INFO    ] 200
[2026-06-27 09:40:56,702.702 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:40:56,728.728 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:40:56,765.765 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:40:56,767.767 INFO    ] No camera update needed
[2026-06-27 09:40:56,768.768 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:40:56,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:40:56,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:40:56,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:40:58,816.816 INFO    ] ================================================
[2026-06-27 09:40:58,832.832 INFO    ] Launching Daemon at Sat Jun 27 09:40:58 IST 2026
[2026-06-27 09:40:58,845.845 INFO    ] ================================================
[2026-06-27 09:40:59,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:40:59
[2026-06-27 09:40:59,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:40:59,655.655 INFO    ] Initializing speech engine...
[2026-06-27 09:40:59,660.660 INFO    ] 2026-06-27 09:40:59
[2026-06-27 09:40:59,865.865 INFO    ] 2026-06-27 09:40:59
[2026-06-27 09:40:59,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:41:00,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:41:00,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:41:00,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:41:00,285.285 INFO    ] time= 27/06/2026 09:41:00
[2026-06-27 09:41:00,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:41:00,313.313 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:41:00,380.380 INFO    ] No existing commands found in stream
[2026-06-27 09:41:05,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:41:05,391.391 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-27 09:41:07,693.693 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:41:07,694.694 INFO    ] Checking for system updates...
[2026-06-27 09:41:07,715.715 INFO    ] 200
[2026-06-27 09:41:07,717.717 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:41:07,747.747 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:41:07,748.748 INFO    ] No update needed
[2026-06-27 09:41:07,749.749 INFO    ] Checking for camera pi updates...
[2026-06-27 09:41:07,770.770 INFO    ] 200
[2026-06-27 09:41:07,771.771 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:41:07,796.796 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:41:07,843.843 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:41:07,845.845 INFO    ] No camera update needed
[2026-06-27 09:41:07,846.846 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:41:07,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:41:07,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:41:07,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:41:09,896.896 INFO    ] ================================================
[2026-06-27 09:41:09,912.912 INFO    ] Launching Daemon at Sat Jun 27 09:41:09 IST 2026
[2026-06-27 09:41:09,923.923 INFO    ] ================================================
[2026-06-27 09:41:10,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:41:10
[2026-06-27 09:41:10,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:41:10,778.778 INFO    ] Initializing speech engine...
[2026-06-27 09:41:10,784.784 INFO    ] 2026-06-27 09:41:10
[2026-06-27 09:41:10,993.993 INFO    ] 2026-06-27 09:41:10
[2026-06-27 09:41:11,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:41:11,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:41:11,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:41:11,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:41:11,411.411 INFO    ] time= 27/06/2026 09:41:11
[2026-06-27 09:41:11,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:41:11,441.441 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:41:11,508.508 INFO    ] No existing commands found in stream
[2026-06-27 09:41:16,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:41:16,521.521 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-27 09:41:19,639.639 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 09:41:19,640.640 INFO    ] Checking for system updates...
[2026-06-27 09:41:19,664.664 INFO    ] 200
[2026-06-27 09:41:19,665.665 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:41:19,699.699 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:41:19,700.700 INFO    ] No update needed
[2026-06-27 09:41:19,702.702 INFO    ] Checking for camera pi updates...
[2026-06-27 09:41:19,722.722 INFO    ] 200
[2026-06-27 09:41:19,723.723 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:41:19,747.747 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:41:19,786.786 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:41:19,787.787 INFO    ] No camera update needed
[2026-06-27 09:41:19,789.789 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:41:19,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:41:19,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:41:19,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:41:21,835.835 INFO    ] ================================================
[2026-06-27 09:41:21,851.851 INFO    ] Launching Daemon at Sat Jun 27 09:41:21 IST 2026
[2026-06-27 09:41:21,862.862 INFO    ] ================================================
[2026-06-27 09:41:22,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:41:22
[2026-06-27 09:41:22,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:41:22,660.660 INFO    ] Initializing speech engine...
[2026-06-27 09:41:22,669.669 INFO    ] 2026-06-27 09:41:22
[2026-06-27 09:41:22,873.873 INFO    ] 2026-06-27 09:41:22
[2026-06-27 09:41:22,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:41:23,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:41:23,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:41:23,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:41:23,313.313 INFO    ] time= 27/06/2026 09:41:23
[2026-06-27 09:41:23,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:41:23,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:41:23,388.388 INFO    ] No existing commands found in stream
[2026-06-27 09:41:28,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:41:28,399.399 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-27 09:41:32,305.305 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:41:32,307.307 INFO    ] Checking for system updates...
[2026-06-27 09:41:32,334.334 INFO    ] 200
[2026-06-27 09:41:32,336.336 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:41:32,370.370 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:41:32,372.372 INFO    ] No update needed
[2026-06-27 09:41:32,373.373 INFO    ] Checking for camera pi updates...
[2026-06-27 09:41:32,398.398 INFO    ] 200
[2026-06-27 09:41:32,399.399 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:41:32,429.429 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:41:32,453.453 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:41:32,455.455 INFO    ] No camera update needed
[2026-06-27 09:41:32,456.456 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:41:32,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:41:32,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:41:32,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:41:34,505.505 INFO    ] ================================================
[2026-06-27 09:41:34,525.525 INFO    ] Launching Daemon at Sat Jun 27 09:41:34 IST 2026
[2026-06-27 09:41:34,537.537 INFO    ] ================================================
[2026-06-27 09:41:34,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:41:34
[2026-06-27 09:41:35,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:41:35,318.318 INFO    ] Initializing speech engine...
[2026-06-27 09:41:35,328.328 INFO    ] 2026-06-27 09:41:35
[2026-06-27 09:41:35,534.534 INFO    ] 2026-06-27 09:41:35
[2026-06-27 09:41:35,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:41:35,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:41:35,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:41:35,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:41:35,958.958 INFO    ] time= 27/06/2026 09:41:35
[2026-06-27 09:41:35,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:41:35,988.988 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:41:36,055.055 INFO    ] No existing commands found in stream
[2026-06-27 09:41:41,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:41:41,067.067 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-27 09:41:42,207.207 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 09:41:42,208.208 INFO    ] Checking for system updates...
[2026-06-27 09:41:42,230.230 INFO    ] 200
[2026-06-27 09:41:42,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:41:42,266.266 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:41:42,268.268 INFO    ] No update needed
[2026-06-27 09:41:42,269.269 INFO    ] Checking for camera pi updates...
[2026-06-27 09:41:42,293.293 INFO    ] 200
[2026-06-27 09:41:42,295.295 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:41:42,326.326 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:41:42,365.365 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:41:42,367.367 INFO    ] No camera update needed
[2026-06-27 09:41:42,368.368 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:41:42,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:41:42,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:41:42,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:41:44,415.415 INFO    ] ================================================
[2026-06-27 09:41:44,431.431 INFO    ] Launching Daemon at Sat Jun 27 09:41:44 IST 2026
[2026-06-27 09:41:44,442.442 INFO    ] ================================================
[2026-06-27 09:41:44,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:41:44
[2026-06-27 09:41:45,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:41:45,301.301 INFO    ] Initializing speech engine...
[2026-06-27 09:41:45,305.305 INFO    ] 2026-06-27 09:41:45
[2026-06-27 09:41:45,512.512 INFO    ] 2026-06-27 09:41:45
[2026-06-27 09:41:45,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:41:45,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:41:45,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:41:45,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:41:45,945.945 INFO    ] time= 27/06/2026 09:41:45
[2026-06-27 09:41:45,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:41:45,978.978 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:41:46,049.049 INFO    ] No existing commands found in stream
[2026-06-27 09:41:51,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:41:51,063.063 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-27 09:41:52,606.606 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 09:41:52,608.608 INFO    ] Checking for system updates...
[2026-06-27 09:41:52,629.629 INFO    ] 200
[2026-06-27 09:41:52,630.630 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:41:52,662.662 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:41:52,663.663 INFO    ] No update needed
[2026-06-27 09:41:52,665.665 INFO    ] Checking for camera pi updates...
[2026-06-27 09:41:52,685.685 INFO    ] 200
[2026-06-27 09:41:52,686.686 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:41:52,710.710 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:41:52,850.850 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:41:52,851.851 INFO    ] No camera update needed
[2026-06-27 09:41:52,853.853 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:41:52,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:41:52,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:41:52,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:41:54,900.900 INFO    ] ================================================
[2026-06-27 09:41:54,916.916 INFO    ] Launching Daemon at Sat Jun 27 09:41:54 IST 2026
[2026-06-27 09:41:54,927.927 INFO    ] ================================================
[2026-06-27 09:41:55,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:41:55
[2026-06-27 09:41:55,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:41:55,725.725 INFO    ] Initializing speech engine...
[2026-06-27 09:41:55,733.733 INFO    ] 2026-06-27 09:41:55
[2026-06-27 09:41:55,946.946 INFO    ] 2026-06-27 09:41:55
[2026-06-27 09:41:55,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:41:56,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:41:56,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:41:56,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:41:56,387.387 INFO    ] time= 27/06/2026 09:41:56
[2026-06-27 09:41:56,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:41:56,398.398 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:41:56,464.464 INFO    ] No existing commands found in stream
[2026-06-27 09:42:01,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:42:01,475.475 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-27 09:42:02,336.336 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:42:02,338.338 INFO    ] Checking for system updates...
[2026-06-27 09:42:02,364.364 INFO    ] 200
[2026-06-27 09:42:02,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:42:02,410.410 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:42:02,411.411 INFO    ] No update needed
[2026-06-27 09:42:02,413.413 INFO    ] Checking for camera pi updates...
[2026-06-27 09:42:02,434.434 INFO    ] 200
[2026-06-27 09:42:02,435.435 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:42:02,460.460 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:42:02,483.483 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:42:02,485.485 INFO    ] No camera update needed
[2026-06-27 09:42:02,486.486 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:42:02,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:42:02,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:42:02,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:42:04,532.532 INFO    ] ================================================
[2026-06-27 09:42:04,548.548 INFO    ] Launching Daemon at Sat Jun 27 09:42:04 IST 2026
[2026-06-27 09:42:04,558.558 INFO    ] ================================================
[2026-06-27 09:42:04,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:42:04
[2026-06-27 09:42:05,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:42:05,372.372 INFO    ] Initializing speech engine...
[2026-06-27 09:42:05,375.375 INFO    ] 2026-06-27 09:42:05
[2026-06-27 09:42:05,613.613 INFO    ] 2026-06-27 09:42:05
[2026-06-27 09:42:05,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:42:05,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:42:05,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:42:05,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:42:06,033.033 INFO    ] time= 27/06/2026 09:42:05
[2026-06-27 09:42:06,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:42:06,061.061 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:42:06,128.128 INFO    ] No existing commands found in stream
[2026-06-27 09:42:11,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:42:11,140.140 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-27 09:42:15,126.126 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:42:15,127.127 INFO    ] Checking for system updates...
[2026-06-27 09:42:15,149.149 INFO    ] 200
[2026-06-27 09:42:15,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:42:15,181.181 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:42:15,182.182 INFO    ] No update needed
[2026-06-27 09:42:15,184.184 INFO    ] Checking for camera pi updates...
[2026-06-27 09:42:15,204.204 INFO    ] 200
[2026-06-27 09:42:15,205.205 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:42:15,229.229 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:42:15,274.274 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:42:15,275.275 INFO    ] No camera update needed
[2026-06-27 09:42:15,277.277 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:42:15,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:42:15,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:42:15,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:42:17,323.323 INFO    ] ================================================
[2026-06-27 09:42:17,339.339 INFO    ] Launching Daemon at Sat Jun 27 09:42:17 IST 2026
[2026-06-27 09:42:17,350.350 INFO    ] ================================================
[2026-06-27 09:42:17,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:42:17
[2026-06-27 09:42:18,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:42:18,209.209 INFO    ] Initializing speech engine...
[2026-06-27 09:42:18,213.213 INFO    ] 2026-06-27 09:42:18
[2026-06-27 09:42:18,419.419 INFO    ] 2026-06-27 09:42:18
[2026-06-27 09:42:18,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:42:18,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:42:18,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:42:18,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:42:18,842.842 INFO    ] time= 27/06/2026 09:42:18
[2026-06-27 09:42:18,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:42:18,881.881 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:42:18,952.952 INFO    ] No existing commands found in stream
[2026-06-27 09:42:23,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:42:23,964.964 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-27 09:42:24,532.532 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:42:24,533.533 INFO    ] Checking for system updates...
[2026-06-27 09:42:24,555.555 INFO    ] 200
[2026-06-27 09:42:24,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:42:24,587.587 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:42:24,589.589 INFO    ] No update needed
[2026-06-27 09:42:24,590.590 INFO    ] Checking for camera pi updates...
[2026-06-27 09:42:24,610.610 INFO    ] 200
[2026-06-27 09:42:24,611.611 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:42:24,635.635 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:42:24,682.682 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:42:24,684.684 INFO    ] No camera update needed
[2026-06-27 09:42:24,686.686 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:42:24,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:42:24,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:42:24,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:42:26,732.732 INFO    ] ================================================
[2026-06-27 09:42:26,748.748 INFO    ] Launching Daemon at Sat Jun 27 09:42:26 IST 2026
[2026-06-27 09:42:26,760.760 INFO    ] ================================================
[2026-06-27 09:42:27,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:42:27
[2026-06-27 09:42:27,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:42:27,572.572 INFO    ] Initializing speech engine...
[2026-06-27 09:42:27,577.577 INFO    ] 2026-06-27 09:42:27
[2026-06-27 09:42:27,791.791 INFO    ] 2026-06-27 09:42:27
[2026-06-27 09:42:27,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:42:28,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:42:28,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:42:28,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:42:28,232.232 INFO    ] time= 27/06/2026 09:42:28
[2026-06-27 09:42:28,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:42:28,269.269 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:42:28,336.336 INFO    ] No existing commands found in stream
[2026-06-27 09:42:33,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:42:33,348.348 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-27 09:42:36,171.171 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:42:36,173.173 INFO    ] Checking for system updates...
[2026-06-27 09:42:36,194.194 INFO    ] 200
[2026-06-27 09:42:36,195.195 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:42:36,225.225 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:42:36,227.227 INFO    ] No update needed
[2026-06-27 09:42:36,228.228 INFO    ] Checking for camera pi updates...
[2026-06-27 09:42:36,248.248 INFO    ] 200
[2026-06-27 09:42:36,250.250 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:42:36,274.274 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:42:36,312.312 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:42:36,313.313 INFO    ] No camera update needed
[2026-06-27 09:42:36,315.315 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:42:36,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:42:36,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:42:36,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:42:38,359.359 INFO    ] ================================================
[2026-06-27 09:42:38,374.374 INFO    ] Launching Daemon at Sat Jun 27 09:42:38 IST 2026
[2026-06-27 09:42:38,385.385 INFO    ] ================================================
[2026-06-27 09:42:38,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:42:38
[2026-06-27 09:42:39,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:42:39,185.185 INFO    ] Initializing speech engine...
[2026-06-27 09:42:39,199.199 INFO    ] 2026-06-27 09:42:39
[2026-06-27 09:42:39,403.403 INFO    ] 2026-06-27 09:42:39
[2026-06-27 09:42:39,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:42:39,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:42:39,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:42:39,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:42:39,823.823 INFO    ] time= 27/06/2026 09:42:39
[2026-06-27 09:42:39,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:42:39,852.852 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:42:39,918.918 INFO    ] No existing commands found in stream
[2026-06-27 09:42:44,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:42:44,930.930 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-27 09:42:49,202.202 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 09:42:49,204.204 INFO    ] Checking for system updates...
[2026-06-27 09:42:49,225.225 INFO    ] 200
[2026-06-27 09:42:49,227.227 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:42:49,258.258 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:42:49,259.259 INFO    ] No update needed
[2026-06-27 09:42:49,261.261 INFO    ] Checking for camera pi updates...
[2026-06-27 09:42:49,281.281 INFO    ] 200
[2026-06-27 09:42:49,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:42:49,306.306 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:42:49,344.344 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:42:49,345.345 INFO    ] No camera update needed
[2026-06-27 09:42:49,347.347 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:42:49,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:42:49,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:42:49,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:42:51,394.394 INFO    ] ================================================
[2026-06-27 09:42:51,409.409 INFO    ] Launching Daemon at Sat Jun 27 09:42:51 IST 2026
[2026-06-27 09:42:51,420.420 INFO    ] ================================================
[2026-06-27 09:42:51,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:42:51
[2026-06-27 09:42:52,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:42:52,218.218 INFO    ] Initializing speech engine...
[2026-06-27 09:42:52,227.227 INFO    ] 2026-06-27 09:42:52
[2026-06-27 09:42:52,442.442 INFO    ] 2026-06-27 09:42:52
[2026-06-27 09:42:52,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:42:52,658.658 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:42:52,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:42:52,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:42:52,842.842 INFO    ] time= 27/06/2026 09:42:52
[2026-06-27 09:42:52,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:42:52,896.896 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:42:52,962.962 INFO    ] No existing commands found in stream
[2026-06-27 09:42:57,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:42:57,975.975 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-27 09:42:59,602.602 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 09:42:59,603.603 INFO    ] Checking for system updates...
[2026-06-27 09:42:59,624.624 INFO    ] 200
[2026-06-27 09:42:59,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:42:59,656.656 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:42:59,657.657 INFO    ] No update needed
[2026-06-27 09:42:59,659.659 INFO    ] Checking for camera pi updates...
[2026-06-27 09:42:59,680.680 INFO    ] 200
[2026-06-27 09:42:59,681.681 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:42:59,707.707 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:42:59,743.743 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:42:59,744.744 INFO    ] No camera update needed
[2026-06-27 09:42:59,746.746 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:42:59,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:42:59,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:42:59,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:43:01,790.790 INFO    ] ================================================
[2026-06-27 09:43:01,803.803 INFO    ] Launching Daemon at Sat Jun 27 09:43:01 IST 2026
[2026-06-27 09:43:01,813.813 INFO    ] ================================================
[2026-06-27 09:43:02,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:43:02
[2026-06-27 09:43:02,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:43:02,693.693 INFO    ] Initializing speech engine...
[2026-06-27 09:43:02,696.696 INFO    ] 2026-06-27 09:43:02
[2026-06-27 09:43:02,915.915 INFO    ] 2026-06-27 09:43:02
[2026-06-27 09:43:02,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:43:03,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:43:03,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:43:03,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:43:03,350.350 INFO    ] time= 27/06/2026 09:43:03
[2026-06-27 09:43:03,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:43:03,391.391 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:43:03,491.491 INFO    ] No existing commands found in stream
[2026-06-27 09:43:08,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:43:08,499.499 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-27 09:43:09,808.808 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 09:43:09,810.810 INFO    ] Checking for system updates...
[2026-06-27 09:43:09,830.830 INFO    ] 200
[2026-06-27 09:43:09,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:43:09,865.865 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:43:09,866.866 INFO    ] No update needed
[2026-06-27 09:43:09,867.867 INFO    ] Checking for camera pi updates...
[2026-06-27 09:43:09,887.887 INFO    ] 200
[2026-06-27 09:43:09,888.888 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:43:09,913.913 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:43:09,966.966 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:43:09,968.968 INFO    ] No camera update needed
[2026-06-27 09:43:09,969.969 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:43:09,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:43:09,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:43:09,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:43:12,016.016 INFO    ] ================================================
[2026-06-27 09:43:12,031.031 INFO    ] Launching Daemon at Sat Jun 27 09:43:12 IST 2026
[2026-06-27 09:43:12,042.042 INFO    ] ================================================
[2026-06-27 09:43:12,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:43:12
[2026-06-27 09:43:12,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:43:12,846.846 INFO    ] Initializing speech engine...
[2026-06-27 09:43:12,851.851 INFO    ] 2026-06-27 09:43:12
[2026-06-27 09:43:13,061.061 INFO    ] 2026-06-27 09:43:13
[2026-06-27 09:43:13,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:43:13,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:43:13,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:43:13,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:43:13,486.486 INFO    ] time= 27/06/2026 09:43:13
[2026-06-27 09:43:13,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:43:13,519.519 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:43:13,591.591 INFO    ] No existing commands found in stream
[2026-06-27 09:43:18,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:43:18,608.608 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-27 09:43:22,688.688 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 09:43:22,694.694 INFO    ] Checking for system updates...
[2026-06-27 09:43:22,722.722 INFO    ] 200
[2026-06-27 09:43:22,723.723 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:43:22,755.755 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:43:22,756.756 INFO    ] No update needed
[2026-06-27 09:43:22,757.757 INFO    ] Checking for camera pi updates...
[2026-06-27 09:43:22,782.782 INFO    ] 200
[2026-06-27 09:43:22,783.783 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:43:22,807.807 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:43:22,846.846 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:43:22,847.847 INFO    ] No camera update needed
[2026-06-27 09:43:22,848.848 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:43:22,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:43:22,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:43:22,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:43:24,896.896 INFO    ] ================================================
[2026-06-27 09:43:24,912.912 INFO    ] Launching Daemon at Sat Jun 27 09:43:24 IST 2026
[2026-06-27 09:43:24,922.922 INFO    ] ================================================
[2026-06-27 09:43:25,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:43:25
[2026-06-27 09:43:25,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:43:25,699.699 INFO    ] Initializing speech engine...
[2026-06-27 09:43:25,710.710 INFO    ] 2026-06-27 09:43:25
[2026-06-27 09:43:25,914.914 INFO    ] 2026-06-27 09:43:25
[2026-06-27 09:43:25,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:43:29,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:43:29,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:43:29,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:43:29,297.297 INFO    ] time= 27/06/2026 09:43:29
[2026-06-27 09:43:29,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:43:29,301.301 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:43:29,351.351 INFO    ] No existing commands found in stream
[2026-06-27 09:43:34,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:43:34,363.363 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-27 09:43:36,408.408 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 09:43:36,410.410 INFO    ] Checking for system updates...
[2026-06-27 09:43:36,431.431 INFO    ] 200
[2026-06-27 09:43:36,432.432 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:43:36,465.465 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:43:36,467.467 INFO    ] No update needed
[2026-06-27 09:43:36,468.468 INFO    ] Checking for camera pi updates...
[2026-06-27 09:43:36,490.490 INFO    ] 200
[2026-06-27 09:43:36,492.492 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:43:36,518.518 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:43:36,566.566 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:43:36,567.567 INFO    ] No camera update needed
[2026-06-27 09:43:36,569.569 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:43:36,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:43:36,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:43:36,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:43:38,618.618 INFO    ] ================================================
[2026-06-27 09:43:38,633.633 INFO    ] Launching Daemon at Sat Jun 27 09:43:38 IST 2026
[2026-06-27 09:43:38,644.644 INFO    ] ================================================
[2026-06-27 09:43:39,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:43:39
[2026-06-27 09:43:39,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:43:39,503.503 INFO    ] Initializing speech engine...
[2026-06-27 09:43:39,507.507 INFO    ] 2026-06-27 09:43:39
[2026-06-27 09:43:39,715.715 INFO    ] 2026-06-27 09:43:39
[2026-06-27 09:43:39,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:43:39,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:43:39,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:43:40,074.074 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:43:40,135.135 INFO    ] time= 27/06/2026 09:43:40
[2026-06-27 09:43:40,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:43:40,166.166 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:43:40,231.231 INFO    ] No existing commands found in stream
[2026-06-27 09:43:45,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:43:45,246.246 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-27 09:43:46,802.802 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 09:43:46,803.803 INFO    ] Checking for system updates...
[2026-06-27 09:43:46,826.826 INFO    ] 200
[2026-06-27 09:43:46,828.828 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:43:46,859.859 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:43:46,860.860 INFO    ] No update needed
[2026-06-27 09:43:46,862.862 INFO    ] Checking for camera pi updates...
[2026-06-27 09:43:46,881.881 INFO    ] 200
[2026-06-27 09:43:46,883.883 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:43:46,906.906 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:43:46,955.955 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:43:46,956.956 INFO    ] No camera update needed
[2026-06-27 09:43:46,957.957 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:43:46,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:43:46,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:43:46,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:43:49,006.006 INFO    ] ================================================
[2026-06-27 09:43:49,021.021 INFO    ] Launching Daemon at Sat Jun 27 09:43:49 IST 2026
[2026-06-27 09:43:49,032.032 INFO    ] ================================================
[2026-06-27 09:43:49,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:43:49
[2026-06-27 09:43:49,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:43:49,841.841 INFO    ] Initializing speech engine...
[2026-06-27 09:43:49,849.849 INFO    ] 2026-06-27 09:43:49
[2026-06-27 09:43:50,062.062 INFO    ] 2026-06-27 09:43:50
[2026-06-27 09:43:50,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:43:50,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:43:50,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:43:50,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:43:50,504.504 INFO    ] time= 27/06/2026 09:43:50
[2026-06-27 09:43:50,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:43:50,512.512 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:43:50,579.579 INFO    ] No existing commands found in stream
[2026-06-27 09:43:55,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:43:55,591.591 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-27 09:43:58,654.654 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:43:58,656.656 INFO    ] Checking for system updates...
[2026-06-27 09:43:58,677.677 INFO    ] 200
[2026-06-27 09:43:58,678.678 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:43:58,709.709 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:43:58,711.711 INFO    ] No update needed
[2026-06-27 09:43:58,712.712 INFO    ] Checking for camera pi updates...
[2026-06-27 09:43:58,732.732 INFO    ] 200
[2026-06-27 09:43:58,733.733 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:43:58,757.757 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:43:58,897.897 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:43:58,898.898 INFO    ] No camera update needed
[2026-06-27 09:43:58,899.899 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:43:58,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:43:58,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:43:58,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:44:00,946.946 INFO    ] ================================================
[2026-06-27 09:44:00,962.962 INFO    ] Launching Daemon at Sat Jun 27 09:44:00 IST 2026
[2026-06-27 09:44:00,973.973 INFO    ] ================================================
[2026-06-27 09:44:01,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:44:01
[2026-06-27 09:44:01,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:44:01,773.773 INFO    ] Initializing speech engine...
[2026-06-27 09:44:01,778.778 INFO    ] 2026-06-27 09:44:01
[2026-06-27 09:44:02,075.075 INFO    ] 2026-06-27 09:44:02
[2026-06-27 09:44:02,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:44:02,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:44:02,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:44:02,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:44:02,442.442 INFO    ] time= 27/06/2026 09:44:02
[2026-06-27 09:44:02,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:44:02,468.468 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:44:02,580.580 INFO    ] No existing commands found in stream
[2026-06-27 09:44:07,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:44:07,599.599 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-27 09:44:08,865.865 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:44:08,866.866 INFO    ] Checking for system updates...
[2026-06-27 09:44:08,887.887 INFO    ] 200
[2026-06-27 09:44:08,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:44:08,921.921 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:44:08,922.922 INFO    ] No update needed
[2026-06-27 09:44:08,924.924 INFO    ] Checking for camera pi updates...
[2026-06-27 09:44:08,946.946 INFO    ] 200
[2026-06-27 09:44:08,947.947 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:44:08,971.971 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:44:09,011.011 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:44:09,012.012 INFO    ] No camera update needed
[2026-06-27 09:44:09,014.014 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:44:09,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:44:09,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:44:09,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:44:11,060.060 INFO    ] ================================================
[2026-06-27 09:44:11,075.075 INFO    ] Launching Daemon at Sat Jun 27 09:44:11 IST 2026
[2026-06-27 09:44:11,086.086 INFO    ] ================================================
[2026-06-27 09:44:11,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:44:11
[2026-06-27 09:44:11,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:44:11,872.872 INFO    ] Initializing speech engine...
[2026-06-27 09:44:11,876.876 INFO    ] 2026-06-27 09:44:11
[2026-06-27 09:44:12,096.096 INFO    ] 2026-06-27 09:44:12
[2026-06-27 09:44:12,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:44:12,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:44:12,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:44:12,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:44:12,524.524 INFO    ] time= 27/06/2026 09:44:12
[2026-06-27 09:44:12,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:44:12,554.554 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:44:12,620.620 INFO    ] No existing commands found in stream
[2026-06-27 09:44:17,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:44:17,633.633 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-27 09:44:19,572.572 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:44:19,573.573 INFO    ] Checking for system updates...
[2026-06-27 09:44:19,594.594 INFO    ] 200
[2026-06-27 09:44:19,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:44:19,626.626 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:44:19,627.627 INFO    ] No update needed
[2026-06-27 09:44:19,628.628 INFO    ] Checking for camera pi updates...
[2026-06-27 09:44:19,650.650 INFO    ] 200
[2026-06-27 09:44:19,652.652 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:44:19,675.675 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:44:19,713.713 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:44:19,715.715 INFO    ] No camera update needed
[2026-06-27 09:44:19,716.716 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:44:19,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:44:19,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:44:19,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:44:21,761.761 INFO    ] ================================================
[2026-06-27 09:44:21,776.776 INFO    ] Launching Daemon at Sat Jun 27 09:44:21 IST 2026
[2026-06-27 09:44:21,787.787 INFO    ] ================================================
[2026-06-27 09:44:22,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:44:22
[2026-06-27 09:44:22,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:44:22,594.594 INFO    ] Initializing speech engine...
[2026-06-27 09:44:22,599.599 INFO    ] 2026-06-27 09:44:22
[2026-06-27 09:44:22,804.804 INFO    ] 2026-06-27 09:44:22
[2026-06-27 09:44:22,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:44:22,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:44:23,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:44:23,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:44:23,206.206 INFO    ] time= 27/06/2026 09:44:23
[2026-06-27 09:44:23,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:44:23,276.276 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:44:23,397.397 INFO    ] No existing commands found in stream
[2026-06-27 09:44:28,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:44:28,410.410 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-27 09:44:31,717.717 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:44:31,718.718 INFO    ] Checking for system updates...
[2026-06-27 09:44:31,740.740 INFO    ] 200
[2026-06-27 09:44:31,741.741 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:44:31,773.773 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:44:31,775.775 INFO    ] No update needed
[2026-06-27 09:44:31,776.776 INFO    ] Checking for camera pi updates...
[2026-06-27 09:44:31,796.796 INFO    ] 200
[2026-06-27 09:44:31,798.798 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:44:31,820.820 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:44:31,846.846 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:44:31,847.847 INFO    ] No camera update needed
[2026-06-27 09:44:31,849.849 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:44:31,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:44:31,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:44:31,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:44:33,891.891 INFO    ] ================================================
[2026-06-27 09:44:33,906.906 INFO    ] Launching Daemon at Sat Jun 27 09:44:33 IST 2026
[2026-06-27 09:44:33,916.916 INFO    ] ================================================
[2026-06-27 09:44:34,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:44:34
[2026-06-27 09:44:34,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:44:34,740.740 INFO    ] Initializing speech engine...
[2026-06-27 09:44:34,750.750 INFO    ] 2026-06-27 09:44:34
[2026-06-27 09:44:34,965.965 INFO    ] 2026-06-27 09:44:34
[2026-06-27 09:44:34,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:44:35,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:44:35,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:44:35,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:44:35,390.390 INFO    ] time= 27/06/2026 09:44:35
[2026-06-27 09:44:35,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:44:35,435.435 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:44:35,526.526 INFO    ] No existing commands found in stream
[2026-06-27 09:44:40,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:44:40,543.543 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-27 09:44:42,352.352 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 09:44:42,354.354 INFO    ] Checking for system updates...
[2026-06-27 09:44:42,376.376 INFO    ] 200
[2026-06-27 09:44:42,377.377 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:44:42,408.408 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:44:42,409.409 INFO    ] No update needed
[2026-06-27 09:44:42,411.411 INFO    ] Checking for camera pi updates...
[2026-06-27 09:44:42,430.430 INFO    ] 200
[2026-06-27 09:44:42,432.432 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:44:42,455.455 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:44:42,505.505 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:44:42,506.506 INFO    ] No camera update needed
[2026-06-27 09:44:42,507.507 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:44:42,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:44:42,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:44:42,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:44:44,552.552 INFO    ] ================================================
[2026-06-27 09:44:44,568.568 INFO    ] Launching Daemon at Sat Jun 27 09:44:44 IST 2026
[2026-06-27 09:44:44,579.579 INFO    ] ================================================
[2026-06-27 09:44:44,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:44:44
[2026-06-27 09:44:45,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:44:45,401.401 INFO    ] Initializing speech engine...
[2026-06-27 09:44:45,409.409 INFO    ] 2026-06-27 09:44:45
[2026-06-27 09:44:45,625.625 INFO    ] 2026-06-27 09:44:45
[2026-06-27 09:44:45,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:44:45,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:44:45,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:44:45,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:44:46,045.045 INFO    ] time= 27/06/2026 09:44:45
[2026-06-27 09:44:46,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:44:46,074.074 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:44:46,141.141 INFO    ] No existing commands found in stream
[2026-06-27 09:44:51,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:44:51,158.158 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-27 09:44:51,621.621 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:44:51,623.623 INFO    ] Checking for system updates...
[2026-06-27 09:44:51,644.644 INFO    ] 200
[2026-06-27 09:44:51,645.645 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:44:51,676.676 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:44:51,678.678 INFO    ] No update needed
[2026-06-27 09:44:51,679.679 INFO    ] Checking for camera pi updates...
[2026-06-27 09:44:51,699.699 INFO    ] 200
[2026-06-27 09:44:51,700.700 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:44:51,724.724 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:44:51,762.762 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:44:51,764.764 INFO    ] No camera update needed
[2026-06-27 09:44:51,765.765 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:44:51,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:44:51,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:44:51,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:44:53,813.813 INFO    ] ================================================
[2026-06-27 09:44:53,828.828 INFO    ] Launching Daemon at Sat Jun 27 09:44:53 IST 2026
[2026-06-27 09:44:53,838.838 INFO    ] ================================================
[2026-06-27 09:44:54,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:44:54
[2026-06-27 09:44:54,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:44:54,664.664 INFO    ] Initializing speech engine...
[2026-06-27 09:44:54,669.669 INFO    ] 2026-06-27 09:44:54
[2026-06-27 09:44:54,863.863 INFO    ] 2026-06-27 09:44:54
[2026-06-27 09:44:54,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:44:55,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:44:55,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:44:55,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:44:55,266.266 INFO    ] time= 27/06/2026 09:44:55
[2026-06-27 09:44:55,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:44:55,305.305 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:44:55,376.376 INFO    ] No existing commands found in stream
[2026-06-27 09:45:00,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:45:00,387.387 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-27 09:45:01,243.243 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:45:01,265.265 INFO    ] Checking for system updates...
[2026-06-27 09:45:01,385.385 INFO    ] 200
[2026-06-27 09:45:01,388.388 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:45:01,557.557 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:45:01,559.559 INFO    ] No update needed
[2026-06-27 09:45:01,566.566 INFO    ] Checking for camera pi updates...
[2026-06-27 09:45:01,666.666 INFO    ] 200
[2026-06-27 09:45:01,674.674 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:45:01,737.737 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:45:01,782.782 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:45:01,787.787 INFO    ] No camera update needed
[2026-06-27 09:45:01,789.789 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:45:01,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:45:01,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:45:01,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:45:03,838.838 INFO    ] ================================================
[2026-06-27 09:45:03,847.847 INFO    ] Launching Daemon at Sat Jun 27 09:45:03 IST 2026
[2026-06-27 09:45:03,852.852 INFO    ] ================================================
[2026-06-27 09:45:04,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:45:04
[2026-06-27 09:45:04,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:45:04,664.664 INFO    ] Initializing speech engine...
[2026-06-27 09:45:04,678.678 INFO    ] 2026-06-27 09:45:04
[2026-06-27 09:45:04,891.891 INFO    ] 2026-06-27 09:45:04
[2026-06-27 09:45:04,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:45:05,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:45:05,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:45:05,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:45:05,343.343 INFO    ] time= 27/06/2026 09:45:05
[2026-06-27 09:45:05,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:45:05,410.410 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:45:05,486.486 INFO    ] No existing commands found in stream
[2026-06-27 09:45:10,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:45:10,500.500 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-27 09:45:11,048.048 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:45:11,050.050 INFO    ] Checking for system updates...
[2026-06-27 09:45:11,071.071 INFO    ] 200
[2026-06-27 09:45:11,072.072 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:45:11,103.103 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:45:11,105.105 INFO    ] No update needed
[2026-06-27 09:45:11,106.106 INFO    ] Checking for camera pi updates...
[2026-06-27 09:45:11,126.126 INFO    ] 200
[2026-06-27 09:45:11,127.127 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:45:11,153.153 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:45:11,189.189 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:45:11,190.190 INFO    ] No camera update needed
[2026-06-27 09:45:11,192.192 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:45:11,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:45:11,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:45:11,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:45:13,240.240 INFO    ] ================================================
[2026-06-27 09:45:13,255.255 INFO    ] Launching Daemon at Sat Jun 27 09:45:13 IST 2026
[2026-06-27 09:45:13,266.266 INFO    ] ================================================
[2026-06-27 09:45:13,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:45:13
[2026-06-27 09:45:13,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:45:14,128.128 INFO    ] Initializing speech engine...
[2026-06-27 09:45:14,135.135 INFO    ] 2026-06-27 09:45:14
[2026-06-27 09:45:14,341.341 INFO    ] 2026-06-27 09:45:14
[2026-06-27 09:45:14,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:45:14,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:45:14,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:45:14,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:45:14,761.761 INFO    ] time= 27/06/2026 09:45:14
[2026-06-27 09:45:14,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:45:14,791.791 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:45:14,858.858 INFO    ] No existing commands found in stream
[2026-06-27 09:45:19,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:45:19,876.876 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-27 09:45:22,656.656 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 09:45:22,657.657 INFO    ] Checking for system updates...
[2026-06-27 09:45:22,679.679 INFO    ] 200
[2026-06-27 09:45:22,680.680 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:45:22,713.713 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:45:22,714.714 INFO    ] No update needed
[2026-06-27 09:45:22,715.715 INFO    ] Checking for camera pi updates...
[2026-06-27 09:45:22,735.735 INFO    ] 200
[2026-06-27 09:45:22,736.736 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:45:22,759.759 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:45:22,795.795 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:45:22,796.796 INFO    ] No camera update needed
[2026-06-27 09:45:22,797.797 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:45:22,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:45:22,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:45:22,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:45:24,842.842 INFO    ] ================================================
[2026-06-27 09:45:24,857.857 INFO    ] Launching Daemon at Sat Jun 27 09:45:24 IST 2026
[2026-06-27 09:45:24,868.868 INFO    ] ================================================
[2026-06-27 09:45:25,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:45:25
[2026-06-27 09:45:25,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:45:25,660.660 INFO    ] Initializing speech engine...
[2026-06-27 09:45:25,667.667 INFO    ] 2026-06-27 09:45:25
[2026-06-27 09:45:25,891.891 INFO    ] 2026-06-27 09:45:25
[2026-06-27 09:45:25,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:45:26,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:45:26,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:45:26,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:45:26,359.359 INFO    ] time= 27/06/2026 09:45:26
[2026-06-27 09:45:26,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:45:26,366.366 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:45:26,436.436 INFO    ] No existing commands found in stream
[2026-06-27 09:45:31,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:45:31,450.450 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-27 09:45:33,987.987 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 09:45:33,988.988 INFO    ] Checking for system updates...
[2026-06-27 09:45:34,009.009 INFO    ] 200
[2026-06-27 09:45:34,010.010 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:45:34,043.043 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:45:34,045.045 INFO    ] No update needed
[2026-06-27 09:45:34,046.046 INFO    ] Checking for camera pi updates...
[2026-06-27 09:45:34,066.066 INFO    ] 200
[2026-06-27 09:45:34,067.067 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:45:34,092.092 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:45:34,137.137 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:45:34,139.139 INFO    ] No camera update needed
[2026-06-27 09:45:34,140.140 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:45:34,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:45:34,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:45:34,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:45:36,185.185 INFO    ] ================================================
[2026-06-27 09:45:36,199.199 INFO    ] Launching Daemon at Sat Jun 27 09:45:36 IST 2026
[2026-06-27 09:45:36,210.210 INFO    ] ================================================
[2026-06-27 09:45:36,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:45:36
[2026-06-27 09:45:36,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:45:36,987.987 INFO    ] Initializing speech engine...
[2026-06-27 09:45:36,995.995 INFO    ] 2026-06-27 09:45:36
[2026-06-27 09:45:37,218.218 INFO    ] 2026-06-27 09:45:37
[2026-06-27 09:45:37,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:45:37,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:45:37,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:45:37,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:45:37,653.653 INFO    ] time= 27/06/2026 09:45:37
[2026-06-27 09:45:37,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:45:37,694.694 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:45:37,767.767 INFO    ] No existing commands found in stream
[2026-06-27 09:45:42,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:45:42,780.780 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-27 09:45:46,065.065 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:45:46,066.066 INFO    ] Checking for system updates...
[2026-06-27 09:45:46,087.087 INFO    ] 200
[2026-06-27 09:45:46,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:45:46,121.121 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:45:46,122.122 INFO    ] No update needed
[2026-06-27 09:45:46,123.123 INFO    ] Checking for camera pi updates...
[2026-06-27 09:45:46,146.146 INFO    ] 200
[2026-06-27 09:45:46,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:45:46,171.171 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:45:46,210.210 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:45:46,212.212 INFO    ] No camera update needed
[2026-06-27 09:45:46,213.213 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:45:46,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:45:46,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:45:46,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:45:48,252.252 INFO    ] ================================================
[2026-06-27 09:45:48,267.267 INFO    ] Launching Daemon at Sat Jun 27 09:45:48 IST 2026
[2026-06-27 09:45:48,278.278 INFO    ] ================================================
[2026-06-27 09:45:48,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:45:48
[2026-06-27 09:45:48,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:45:49,078.078 INFO    ] Initializing speech engine...
[2026-06-27 09:45:49,085.085 INFO    ] 2026-06-27 09:45:49
[2026-06-27 09:45:49,298.298 INFO    ] 2026-06-27 09:45:49
[2026-06-27 09:45:49,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:45:49,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:45:49,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:45:49,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:45:49,714.714 INFO    ] time= 27/06/2026 09:45:49
[2026-06-27 09:45:49,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:45:49,743.743 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:45:49,810.810 INFO    ] No existing commands found in stream
[2026-06-27 09:45:54,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:45:54,822.822 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-27 09:45:58,829.829 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:45:58,830.830 INFO    ] Checking for system updates...
[2026-06-27 09:45:58,853.853 INFO    ] 200
[2026-06-27 09:45:58,854.854 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:45:58,885.885 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:45:58,886.886 INFO    ] No update needed
[2026-06-27 09:45:58,888.888 INFO    ] Checking for camera pi updates...
[2026-06-27 09:45:58,907.907 INFO    ] 200
[2026-06-27 09:45:58,909.909 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:45:58,933.933 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:45:58,978.978 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:45:58,979.979 INFO    ] No camera update needed
[2026-06-27 09:45:58,981.981 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:45:58,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:45:58,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:45:58,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:46:01,027.027 INFO    ] ================================================
[2026-06-27 09:46:01,042.042 INFO    ] Launching Daemon at Sat Jun 27 09:46:01 IST 2026
[2026-06-27 09:46:01,052.052 INFO    ] ================================================
[2026-06-27 09:46:01,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:46:01
[2026-06-27 09:46:01,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:46:02,075.075 INFO    ] Initializing speech engine...
[2026-06-27 09:46:02,077.077 INFO    ] 2026-06-27 09:46:02
[2026-06-27 09:46:02,346.346 INFO    ] 2026-06-27 09:46:02
[2026-06-27 09:46:02,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:46:02,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:46:02,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:46:02,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:46:02,780.780 INFO    ] time= 27/06/2026 09:46:02
[2026-06-27 09:46:02,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:46:02,810.810 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:46:02,862.862 INFO    ] No existing commands found in stream
[2026-06-27 09:46:07,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:46:07,888.888 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-27 09:46:12,127.127 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 09:46:12,129.129 INFO    ] Checking for system updates...
[2026-06-27 09:46:12,150.150 INFO    ] 200
[2026-06-27 09:46:12,151.151 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:46:12,182.182 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:46:12,183.183 INFO    ] No update needed
[2026-06-27 09:46:12,185.185 INFO    ] Checking for camera pi updates...
[2026-06-27 09:46:12,204.204 INFO    ] 200
[2026-06-27 09:46:12,205.205 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:46:12,229.229 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:46:12,265.265 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:46:12,266.266 INFO    ] No camera update needed
[2026-06-27 09:46:12,268.268 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:46:12,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:46:12,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:46:12,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:46:14,312.312 INFO    ] ================================================
[2026-06-27 09:46:14,327.327 INFO    ] Launching Daemon at Sat Jun 27 09:46:14 IST 2026
[2026-06-27 09:46:14,338.338 INFO    ] ================================================
[2026-06-27 09:46:14,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:46:14
[2026-06-27 09:46:15,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:46:15,149.149 INFO    ] Initializing speech engine...
[2026-06-27 09:46:15,154.154 INFO    ] 2026-06-27 09:46:15
[2026-06-27 09:46:15,375.375 INFO    ] 2026-06-27 09:46:15
[2026-06-27 09:46:15,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:46:15,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:46:15,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:46:15,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:46:15,814.814 INFO    ] time= 27/06/2026 09:46:15
[2026-06-27 09:46:15,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:46:15,825.825 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:46:15,891.891 INFO    ] No existing commands found in stream
[2026-06-27 09:46:20,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:46:20,904.904 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-27 09:46:24,942.942 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:46:24,944.944 INFO    ] Checking for system updates...
[2026-06-27 09:46:24,966.966 INFO    ] 200
[2026-06-27 09:46:24,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:46:24,999.999 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:46:25,000.000 INFO    ] No update needed
[2026-06-27 09:46:25,001.001 INFO    ] Checking for camera pi updates...
[2026-06-27 09:46:25,021.021 INFO    ] 200
[2026-06-27 09:46:25,022.022 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:46:25,048.048 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:46:25,088.088 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:46:25,089.089 INFO    ] No camera update needed
[2026-06-27 09:46:25,090.090 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:46:25,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:46:25,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:46:25,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:46:27,135.135 INFO    ] ================================================
[2026-06-27 09:46:27,150.150 INFO    ] Launching Daemon at Sat Jun 27 09:46:27 IST 2026
[2026-06-27 09:46:27,160.160 INFO    ] ================================================
[2026-06-27 09:46:27,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:46:27
[2026-06-27 09:46:27,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:46:28,013.013 INFO    ] Initializing speech engine...
[2026-06-27 09:46:28,018.018 INFO    ] 2026-06-27 09:46:28
[2026-06-27 09:46:28,222.222 INFO    ] 2026-06-27 09:46:28
[2026-06-27 09:46:28,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:46:28,383.383 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:46:28,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:46:28,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:46:28,646.646 INFO    ] time= 27/06/2026 09:46:28
[2026-06-27 09:46:28,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:46:28,675.675 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:46:28,741.741 INFO    ] No existing commands found in stream
[2026-06-27 09:46:33,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:46:33,756.756 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-27 09:46:34,278.278 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 09:46:34,279.279 INFO    ] Checking for system updates...
[2026-06-27 09:46:34,303.303 INFO    ] 200
[2026-06-27 09:46:34,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:46:34,340.340 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:46:34,342.342 INFO    ] No update needed
[2026-06-27 09:46:34,344.344 INFO    ] Checking for camera pi updates...
[2026-06-27 09:46:34,366.366 INFO    ] 200
[2026-06-27 09:46:34,368.368 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:46:34,396.396 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:46:34,436.436 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:46:34,438.438 INFO    ] No camera update needed
[2026-06-27 09:46:34,440.440 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:46:34,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:46:34,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:46:34,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:46:36,475.475 INFO    ] ================================================
[2026-06-27 09:46:36,483.483 INFO    ] Launching Daemon at Sat Jun 27 09:46:36 IST 2026
[2026-06-27 09:46:36,490.490 INFO    ] ================================================
[2026-06-27 09:46:36,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:46:36
[2026-06-27 09:46:37,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:46:37,289.289 INFO    ] Initializing speech engine...
[2026-06-27 09:46:37,294.294 INFO    ] 2026-06-27 09:46:37
[2026-06-27 09:46:37,509.509 INFO    ] 2026-06-27 09:46:37
[2026-06-27 09:46:37,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:46:37,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:46:37,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:46:37,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:46:37,970.970 INFO    ] time= 27/06/2026 09:46:37
[2026-06-27 09:46:37,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:46:38,002.002 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:46:38,075.075 INFO    ] No existing commands found in stream
[2026-06-27 09:46:43,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:46:43,087.087 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-27 09:46:52,287.287 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:46:52,288.288 INFO    ] Checking for system updates...
[2026-06-27 09:46:52,309.309 INFO    ] 200
[2026-06-27 09:46:52,311.311 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:46:52,342.342 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:46:52,343.343 INFO    ] No update needed
[2026-06-27 09:46:52,345.345 INFO    ] Checking for camera pi updates...
[2026-06-27 09:46:52,366.366 INFO    ] 200
[2026-06-27 09:46:52,368.368 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:46:52,393.393 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:46:52,428.428 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:46:52,430.430 INFO    ] No camera update needed
[2026-06-27 09:46:52,431.431 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:46:52,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:46:52,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:46:52,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:46:54,480.480 INFO    ] ================================================
[2026-06-27 09:46:54,499.499 INFO    ] Launching Daemon at Sat Jun 27 09:46:54 IST 2026
[2026-06-27 09:46:54,511.511 INFO    ] ================================================
[2026-06-27 09:46:54,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:46:54
[2026-06-27 09:46:55,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:46:55,321.321 INFO    ] Initializing speech engine...
[2026-06-27 09:46:55,324.324 INFO    ] 2026-06-27 09:46:55
[2026-06-27 09:46:55,519.519 INFO    ] 2026-06-27 09:46:55
[2026-06-27 09:46:55,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:46:55,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:46:55,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:46:55,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:46:55,983.983 INFO    ] time= 27/06/2026 09:46:55
[2026-06-27 09:46:56,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:46:56,040.040 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:46:56,117.117 INFO    ] No existing commands found in stream
[2026-06-27 09:47:01,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:47:01,129.129 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-27 09:47:03,441.441 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 09:47:03,444.444 INFO    ] Checking for system updates...
[2026-06-27 09:47:03,465.465 INFO    ] 200
[2026-06-27 09:47:03,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:47:03,497.497 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:47:03,499.499 INFO    ] No update needed
[2026-06-27 09:47:03,500.500 INFO    ] Checking for camera pi updates...
[2026-06-27 09:47:03,520.520 INFO    ] 200
[2026-06-27 09:47:03,522.522 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:47:03,546.546 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:47:03,585.585 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:47:03,587.587 INFO    ] No camera update needed
[2026-06-27 09:47:03,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:47:03,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:47:03,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:47:03,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:47:05,636.636 INFO    ] ================================================
[2026-06-27 09:47:05,651.651 INFO    ] Launching Daemon at Sat Jun 27 09:47:05 IST 2026
[2026-06-27 09:47:05,663.663 INFO    ] ================================================
[2026-06-27 09:47:06,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:47:06
[2026-06-27 09:47:06,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:47:06,502.502 INFO    ] Initializing speech engine...
[2026-06-27 09:47:06,507.507 INFO    ] 2026-06-27 09:47:06
[2026-06-27 09:47:06,713.713 INFO    ] 2026-06-27 09:47:06
[2026-06-27 09:47:06,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:47:06,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:47:06,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:47:07,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:47:07,133.133 INFO    ] time= 27/06/2026 09:47:07
[2026-06-27 09:47:07,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:47:07,162.162 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:47:07,228.228 INFO    ] No existing commands found in stream
[2026-06-27 09:47:12,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:47:12,256.256 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-27 09:47:13,674.674 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:47:13,676.676 INFO    ] Checking for system updates...
[2026-06-27 09:47:13,697.697 INFO    ] 200
[2026-06-27 09:47:13,699.699 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:47:13,733.733 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:47:13,735.735 INFO    ] No update needed
[2026-06-27 09:47:13,736.736 INFO    ] Checking for camera pi updates...
[2026-06-27 09:47:13,756.756 INFO    ] 200
[2026-06-27 09:47:13,757.757 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:47:13,782.782 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:47:13,823.823 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:47:13,824.824 INFO    ] No camera update needed
[2026-06-27 09:47:13,826.826 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:47:13,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:47:13,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:47:13,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:47:15,873.873 INFO    ] ================================================
[2026-06-27 09:47:15,889.889 INFO    ] Launching Daemon at Sat Jun 27 09:47:15 IST 2026
[2026-06-27 09:47:15,900.900 INFO    ] ================================================
[2026-06-27 09:47:16,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:47:16
[2026-06-27 09:47:16,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:47:16,714.714 INFO    ] Initializing speech engine...
[2026-06-27 09:47:16,724.724 INFO    ] 2026-06-27 09:47:16
[2026-06-27 09:47:16,929.929 INFO    ] 2026-06-27 09:47:16
[2026-06-27 09:47:16,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:47:17,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:47:17,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:47:17,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:47:17,344.344 INFO    ] time= 27/06/2026 09:47:17
[2026-06-27 09:47:17,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:47:17,376.376 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:47:17,443.443 INFO    ] No existing commands found in stream
[2026-06-27 09:47:22,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:47:22,460.460 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-27 09:47:26,191.191 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:47:26,193.193 INFO    ] Checking for system updates...
[2026-06-27 09:47:26,213.213 INFO    ] 200
[2026-06-27 09:47:26,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:47:26,246.246 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:47:26,247.247 INFO    ] No update needed
[2026-06-27 09:47:26,248.248 INFO    ] Checking for camera pi updates...
[2026-06-27 09:47:26,268.268 INFO    ] 200
[2026-06-27 09:47:26,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:47:26,293.293 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:47:26,331.331 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:47:26,332.332 INFO    ] No camera update needed
[2026-06-27 09:47:26,334.334 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:47:26,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:47:26,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:47:26,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:47:28,378.378 INFO    ] ================================================
[2026-06-27 09:47:28,394.394 INFO    ] Launching Daemon at Sat Jun 27 09:47:28 IST 2026
[2026-06-27 09:47:28,405.405 INFO    ] ================================================
[2026-06-27 09:47:28,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:47:28
[2026-06-27 09:47:29,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:47:29,183.183 INFO    ] Initializing speech engine...
[2026-06-27 09:47:29,195.195 INFO    ] 2026-06-27 09:47:29
[2026-06-27 09:47:29,404.404 INFO    ] 2026-06-27 09:47:29
[2026-06-27 09:47:29,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:47:29,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:47:29,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:47:29,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:47:29,834.834 INFO    ] time= 27/06/2026 09:47:29
[2026-06-27 09:47:29,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:47:29,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:47:29,931.931 INFO    ] No existing commands found in stream
[2026-06-27 09:47:34,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:47:34,943.943 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-27 09:47:37,102.102 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:47:37,104.104 INFO    ] Checking for system updates...
[2026-06-27 09:47:37,124.124 INFO    ] 200
[2026-06-27 09:47:37,126.126 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:47:37,157.157 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:47:37,158.158 INFO    ] No update needed
[2026-06-27 09:47:37,159.159 INFO    ] Checking for camera pi updates...
[2026-06-27 09:47:37,179.179 INFO    ] 200
[2026-06-27 09:47:37,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:47:37,203.203 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:47:37,246.246 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:47:37,247.247 INFO    ] No camera update needed
[2026-06-27 09:47:37,248.248 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:47:37,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:47:37,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:47:37,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:47:39,296.296 INFO    ] ================================================
[2026-06-27 09:47:39,311.311 INFO    ] Launching Daemon at Sat Jun 27 09:47:39 IST 2026
[2026-06-27 09:47:39,322.322 INFO    ] ================================================
[2026-06-27 09:47:39,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:47:39
[2026-06-27 09:47:40,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:47:40,154.154 INFO    ] Initializing speech engine...
[2026-06-27 09:47:40,158.158 INFO    ] 2026-06-27 09:47:40
[2026-06-27 09:47:40,351.351 INFO    ] 2026-06-27 09:47:40
[2026-06-27 09:47:40,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:47:40,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:47:40,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:47:40,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:47:40,686.686 INFO    ] time= 27/06/2026 09:47:40
[2026-06-27 09:47:40,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:47:40,689.689 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:47:40,748.748 INFO    ] No existing commands found in stream
[2026-06-27 09:47:45,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:47:45,759.759 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-27 09:47:49,468.468 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 09:47:49,470.470 INFO    ] Checking for system updates...
[2026-06-27 09:47:49,490.490 INFO    ] 200
[2026-06-27 09:47:49,492.492 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:47:49,523.523 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:47:49,524.524 INFO    ] No update needed
[2026-06-27 09:47:49,526.526 INFO    ] Checking for camera pi updates...
[2026-06-27 09:47:49,546.546 INFO    ] 200
[2026-06-27 09:47:49,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:47:49,570.570 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:47:49,609.609 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:47:49,610.610 INFO    ] No camera update needed
[2026-06-27 09:47:49,612.612 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:47:49,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:47:49,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:47:49,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:47:51,657.657 INFO    ] ================================================
[2026-06-27 09:47:51,673.673 INFO    ] Launching Daemon at Sat Jun 27 09:47:51 IST 2026
[2026-06-27 09:47:51,684.684 INFO    ] ================================================
[2026-06-27 09:47:52,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:47:52
[2026-06-27 09:47:52,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:47:52,502.502 INFO    ] Initializing speech engine...
[2026-06-27 09:47:52,507.507 INFO    ] 2026-06-27 09:47:52
[2026-06-27 09:47:52,719.719 INFO    ] 2026-06-27 09:47:52
[2026-06-27 09:47:52,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:47:52,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:47:52,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:47:53,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:47:53,164.164 INFO    ] time= 27/06/2026 09:47:53
[2026-06-27 09:47:53,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:47:53,198.198 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:47:53,270.270 INFO    ] No existing commands found in stream
[2026-06-27 09:47:58,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:47:58,283.283 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-27 09:48:02,092.092 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:48:02,095.095 INFO    ] Checking for system updates...
[2026-06-27 09:48:02,123.123 INFO    ] 200
[2026-06-27 09:48:02,125.125 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:48:02,164.164 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:48:02,166.166 INFO    ] No update needed
[2026-06-27 09:48:02,168.168 INFO    ] Checking for camera pi updates...
[2026-06-27 09:48:02,191.191 INFO    ] 200
[2026-06-27 09:48:02,193.193 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:48:02,222.222 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:48:02,252.252 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:48:02,254.254 INFO    ] No camera update needed
[2026-06-27 09:48:02,256.256 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:48:02,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:48:02,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:48:02,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:48:04,306.306 INFO    ] ================================================
[2026-06-27 09:48:04,321.321 INFO    ] Launching Daemon at Sat Jun 27 09:48:04 IST 2026
[2026-06-27 09:48:04,332.332 INFO    ] ================================================
[2026-06-27 09:48:04,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:48:04
[2026-06-27 09:48:05,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:48:05,162.162 INFO    ] Initializing speech engine...
[2026-06-27 09:48:05,167.167 INFO    ] 2026-06-27 09:48:05
[2026-06-27 09:48:05,376.376 INFO    ] 2026-06-27 09:48:05
[2026-06-27 09:48:05,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:48:05,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:48:05,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:48:05,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:48:05,795.795 INFO    ] time= 27/06/2026 09:48:05
[2026-06-27 09:48:05,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:48:05,825.825 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:48:05,892.892 INFO    ] No existing commands found in stream
[2026-06-27 09:48:10,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:48:10,916.916 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-27 09:48:12,916.916 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:48:12,918.918 INFO    ] Checking for system updates...
[2026-06-27 09:48:12,939.939 INFO    ] 200
[2026-06-27 09:48:12,941.941 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:48:12,972.972 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:48:12,973.973 INFO    ] No update needed
[2026-06-27 09:48:12,975.975 INFO    ] Checking for camera pi updates...
[2026-06-27 09:48:12,995.995 INFO    ] 200
[2026-06-27 09:48:12,996.996 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:48:13,021.021 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:48:13,162.162 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:48:13,163.163 INFO    ] No camera update needed
[2026-06-27 09:48:13,165.165 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:48:13,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:48:13,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:48:13,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:48:15,212.212 INFO    ] ================================================
[2026-06-27 09:48:15,228.228 INFO    ] Launching Daemon at Sat Jun 27 09:48:15 IST 2026
[2026-06-27 09:48:15,238.238 INFO    ] ================================================
[2026-06-27 09:48:15,605.605 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:48:15
[2026-06-27 09:48:15,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:48:16,101.101 INFO    ] Initializing speech engine...
[2026-06-27 09:48:16,107.107 INFO    ] 2026-06-27 09:48:16
[2026-06-27 09:48:16,319.319 INFO    ] 2026-06-27 09:48:16
[2026-06-27 09:48:16,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:48:16,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:48:16,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:48:16,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:48:16,763.763 INFO    ] time= 27/06/2026 09:48:16
[2026-06-27 09:48:16,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:48:16,794.794 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:48:16,862.862 INFO    ] No existing commands found in stream
[2026-06-27 09:48:21,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:48:21,874.874 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-27 09:48:24,874.874 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:48:24,875.875 INFO    ] Checking for system updates...
[2026-06-27 09:48:24,896.896 INFO    ] 200
[2026-06-27 09:48:24,898.898 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:48:24,929.929 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:48:24,930.930 INFO    ] No update needed
[2026-06-27 09:48:24,931.931 INFO    ] Checking for camera pi updates...
[2026-06-27 09:48:24,952.952 INFO    ] 200
[2026-06-27 09:48:24,953.953 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:48:24,977.977 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:48:25,015.015 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:48:25,017.017 INFO    ] No camera update needed
[2026-06-27 09:48:25,018.018 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:48:25,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:48:25,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:48:25,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:48:27,067.067 INFO    ] ================================================
[2026-06-27 09:48:27,082.082 INFO    ] Launching Daemon at Sat Jun 27 09:48:27 IST 2026
[2026-06-27 09:48:27,094.094 INFO    ] ================================================
[2026-06-27 09:48:27,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:48:27
[2026-06-27 09:48:27,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:48:27,911.911 INFO    ] Initializing speech engine...
[2026-06-27 09:48:27,921.921 INFO    ] 2026-06-27 09:48:27
[2026-06-27 09:48:28,125.125 INFO    ] 2026-06-27 09:48:28
[2026-06-27 09:48:28,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:48:28,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:48:28,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:48:28,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:48:28,529.529 INFO    ] time= 27/06/2026 09:48:28
[2026-06-27 09:48:28,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:48:28,568.568 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:48:28,640.640 INFO    ] No existing commands found in stream
[2026-06-27 09:48:33,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:48:33,652.652 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-27 09:48:34,119.119 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 09:48:34,120.120 INFO    ] Checking for system updates...
[2026-06-27 09:48:34,141.141 INFO    ] 200
[2026-06-27 09:48:34,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:48:34,174.174 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:48:34,175.175 INFO    ] No update needed
[2026-06-27 09:48:34,177.177 INFO    ] Checking for camera pi updates...
[2026-06-27 09:48:34,196.196 INFO    ] 200
[2026-06-27 09:48:34,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:48:34,221.221 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:48:34,262.262 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:48:34,264.264 INFO    ] No camera update needed
[2026-06-27 09:48:34,265.265 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:48:34,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:48:34,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:48:34,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:48:36,312.312 INFO    ] ================================================
[2026-06-27 09:48:36,329.329 INFO    ] Launching Daemon at Sat Jun 27 09:48:36 IST 2026
[2026-06-27 09:48:36,340.340 INFO    ] ================================================
[2026-06-27 09:48:36,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:48:36
[2026-06-27 09:48:36,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:48:37,123.123 INFO    ] Initializing speech engine...
[2026-06-27 09:48:37,130.130 INFO    ] 2026-06-27 09:48:37
[2026-06-27 09:48:37,337.337 INFO    ] 2026-06-27 09:48:37
[2026-06-27 09:48:37,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:48:37,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:48:37,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:48:37,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:48:37,746.746 INFO    ] time= 27/06/2026 09:48:37
[2026-06-27 09:48:37,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:48:37,783.783 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:48:37,849.849 INFO    ] No existing commands found in stream
[2026-06-27 09:48:42,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:48:42,862.862 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-27 09:48:47,065.065 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 09:48:47,067.067 INFO    ] Checking for system updates...
[2026-06-27 09:48:47,089.089 INFO    ] 200
[2026-06-27 09:48:47,090.090 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:48:47,120.120 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:48:47,122.122 INFO    ] No update needed
[2026-06-27 09:48:47,123.123 INFO    ] Checking for camera pi updates...
[2026-06-27 09:48:47,144.144 INFO    ] 200
[2026-06-27 09:48:47,145.145 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:48:47,168.168 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:48:47,206.206 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:48:47,207.207 INFO    ] No camera update needed
[2026-06-27 09:48:47,208.208 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:48:47,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:48:47,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:48:47,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:48:49,253.253 INFO    ] ================================================
[2026-06-27 09:48:49,269.269 INFO    ] Launching Daemon at Sat Jun 27 09:48:49 IST 2026
[2026-06-27 09:48:49,279.279 INFO    ] ================================================
[2026-06-27 09:48:49,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:48:49
[2026-06-27 09:48:49,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:48:50,131.131 INFO    ] Initializing speech engine...
[2026-06-27 09:48:50,136.136 INFO    ] 2026-06-27 09:48:50
[2026-06-27 09:48:50,342.342 INFO    ] 2026-06-27 09:48:50
[2026-06-27 09:48:50,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:48:50,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:48:50,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:48:50,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:48:50,782.782 INFO    ] time= 27/06/2026 09:48:50
[2026-06-27 09:48:50,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:48:50,790.790 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:48:50,855.855 INFO    ] No existing commands found in stream
[2026-06-27 09:48:55,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:48:55,870.870 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-27 09:48:59,220.220 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 09:48:59,221.221 INFO    ] Checking for system updates...
[2026-06-27 09:48:59,243.243 INFO    ] 200
[2026-06-27 09:48:59,245.245 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:48:59,277.277 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:48:59,279.279 INFO    ] No update needed
[2026-06-27 09:48:59,280.280 INFO    ] Checking for camera pi updates...
[2026-06-27 09:48:59,302.302 INFO    ] 200
[2026-06-27 09:48:59,303.303 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:48:59,327.327 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:48:59,367.367 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:48:59,368.368 INFO    ] No camera update needed
[2026-06-27 09:48:59,370.370 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:48:59,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:48:59,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:48:59,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:49:01,416.416 INFO    ] ================================================
[2026-06-27 09:49:01,430.430 INFO    ] Launching Daemon at Sat Jun 27 09:49:01 IST 2026
[2026-06-27 09:49:01,441.441 INFO    ] ================================================
[2026-06-27 09:49:01,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:49:01
[2026-06-27 09:49:02,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:49:02,397.397 INFO    ] Initializing speech engine...
[2026-06-27 09:49:02,404.404 INFO    ] 2026-06-27 09:49:02
[2026-06-27 09:49:02,675.675 INFO    ] 2026-06-27 09:49:02
[2026-06-27 09:49:02,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:49:02,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:49:02,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:49:03,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:49:03,057.057 INFO    ] time= 27/06/2026 09:49:03
[2026-06-27 09:49:03,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:49:03,159.159 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:49:03,254.254 INFO    ] No existing commands found in stream
[2026-06-27 09:49:08,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:49:08,268.268 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-27 09:49:12,169.169 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:49:12,170.170 INFO    ] Checking for system updates...
[2026-06-27 09:49:12,191.191 INFO    ] 200
[2026-06-27 09:49:12,192.192 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:49:12,224.224 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:49:12,225.225 INFO    ] No update needed
[2026-06-27 09:49:12,226.226 INFO    ] Checking for camera pi updates...
[2026-06-27 09:49:12,247.247 INFO    ] 200
[2026-06-27 09:49:12,249.249 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:49:12,272.272 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:49:12,312.312 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:49:12,314.314 INFO    ] No camera update needed
[2026-06-27 09:49:12,315.315 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:49:12,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:49:12,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:49:12,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:49:14,361.361 INFO    ] ================================================
[2026-06-27 09:49:14,377.377 INFO    ] Launching Daemon at Sat Jun 27 09:49:14 IST 2026
[2026-06-27 09:49:14,387.387 INFO    ] ================================================
[2026-06-27 09:49:14,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:49:14
[2026-06-27 09:49:15,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:49:15,282.282 INFO    ] Initializing speech engine...
[2026-06-27 09:49:15,294.294 INFO    ] 2026-06-27 09:49:15
[2026-06-27 09:49:15,519.519 INFO    ] 2026-06-27 09:49:15
[2026-06-27 09:49:15,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:49:15,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:49:15,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:49:15,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:49:15,922.922 INFO    ] time= 27/06/2026 09:49:15
[2026-06-27 09:49:15,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:49:15,989.989 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:49:16,061.061 INFO    ] No existing commands found in stream
[2026-06-27 09:49:21,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:49:21,083.083 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-27 09:49:22,402.402 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:49:22,403.403 INFO    ] Checking for system updates...
[2026-06-27 09:49:22,428.428 INFO    ] 200
[2026-06-27 09:49:22,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:49:22,459.459 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:49:22,460.460 INFO    ] No update needed
[2026-06-27 09:49:22,462.462 INFO    ] Checking for camera pi updates...
[2026-06-27 09:49:22,481.481 INFO    ] 200
[2026-06-27 09:49:22,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:49:22,506.506 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:49:22,544.544 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:49:22,546.546 INFO    ] No camera update needed
[2026-06-27 09:49:22,547.547 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:49:22,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:49:22,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:49:22,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:49:24,594.594 INFO    ] ================================================
[2026-06-27 09:49:24,609.609 INFO    ] Launching Daemon at Sat Jun 27 09:49:24 IST 2026
[2026-06-27 09:49:24,619.619 INFO    ] ================================================
[2026-06-27 09:49:24,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:49:24
[2026-06-27 09:49:25,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:49:25,493.493 INFO    ] Initializing speech engine...
[2026-06-27 09:49:25,499.499 INFO    ] 2026-06-27 09:49:25
[2026-06-27 09:49:25,710.710 INFO    ] 2026-06-27 09:49:25
[2026-06-27 09:49:25,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:49:25,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:49:25,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:49:26,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:49:26,047.047 INFO    ] time= 27/06/2026 09:49:26
[2026-06-27 09:49:26,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:49:26,050.050 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:49:26,098.098 INFO    ] No existing commands found in stream
[2026-06-27 09:49:31,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:49:31,110.110 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-27 09:49:34,860.860 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 09:49:34,861.861 INFO    ] Checking for system updates...
[2026-06-27 09:49:34,882.882 INFO    ] 200
[2026-06-27 09:49:34,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:49:34,915.915 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:49:34,916.916 INFO    ] No update needed
[2026-06-27 09:49:34,918.918 INFO    ] Checking for camera pi updates...
[2026-06-27 09:49:34,939.939 INFO    ] 200
[2026-06-27 09:49:34,940.940 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:49:34,967.967 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:49:35,006.006 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:49:35,007.007 INFO    ] No camera update needed
[2026-06-27 09:49:35,009.009 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:49:35,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:49:35,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:49:35,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:49:37,059.059 INFO    ] ================================================
[2026-06-27 09:49:37,075.075 INFO    ] Launching Daemon at Sat Jun 27 09:49:37 IST 2026
[2026-06-27 09:49:37,086.086 INFO    ] ================================================
[2026-06-27 09:49:37,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:49:37
[2026-06-27 09:49:37,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:49:37,881.881 INFO    ] Initializing speech engine...
[2026-06-27 09:49:37,886.886 INFO    ] 2026-06-27 09:49:37
[2026-06-27 09:49:38,092.092 INFO    ] 2026-06-27 09:49:38
[2026-06-27 09:49:38,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:49:38,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:49:38,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:49:38,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:49:38,532.532 INFO    ] time= 27/06/2026 09:49:38
[2026-06-27 09:49:38,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:49:38,539.539 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:49:38,604.604 INFO    ] No existing commands found in stream
[2026-06-27 09:49:43,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:49:43,617.617 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-27 09:49:44,433.433 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:49:44,435.435 INFO    ] Checking for system updates...
[2026-06-27 09:49:44,459.459 INFO    ] 200
[2026-06-27 09:49:44,461.461 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:49:44,492.492 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:49:44,493.493 INFO    ] No update needed
[2026-06-27 09:49:44,495.495 INFO    ] Checking for camera pi updates...
[2026-06-27 09:49:44,515.515 INFO    ] 200
[2026-06-27 09:49:44,516.516 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:49:44,540.540 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:49:44,586.586 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:49:44,588.588 INFO    ] No camera update needed
[2026-06-27 09:49:44,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:49:44,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:49:44,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:49:44,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:49:46,635.635 INFO    ] ================================================
[2026-06-27 09:49:46,651.651 INFO    ] Launching Daemon at Sat Jun 27 09:49:46 IST 2026
[2026-06-27 09:49:46,662.662 INFO    ] ================================================
[2026-06-27 09:49:47,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:49:47
[2026-06-27 09:49:47,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:49:47,457.457 INFO    ] Initializing speech engine...
[2026-06-27 09:49:47,466.466 INFO    ] 2026-06-27 09:49:47
[2026-06-27 09:49:47,672.672 INFO    ] 2026-06-27 09:49:47
[2026-06-27 09:49:47,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:49:47,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:49:47,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:49:48,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:49:48,102.102 INFO    ] time= 27/06/2026 09:49:48
[2026-06-27 09:49:48,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:49:48,118.118 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:49:48,184.184 INFO    ] No existing commands found in stream
[2026-06-27 09:49:53,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:49:53,196.196 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-27 09:49:53,990.990 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:49:53,991.991 INFO    ] Checking for system updates...
[2026-06-27 09:49:54,013.013 INFO    ] 200
[2026-06-27 09:49:54,014.014 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:49:54,048.048 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:49:54,050.050 INFO    ] No update needed
[2026-06-27 09:49:54,051.051 INFO    ] Checking for camera pi updates...
[2026-06-27 09:49:54,074.074 INFO    ] 200
[2026-06-27 09:49:54,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:49:54,102.102 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:49:54,129.129 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:49:54,131.131 INFO    ] No camera update needed
[2026-06-27 09:49:54,132.132 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:49:54,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:49:54,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:49:54,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:49:56,186.186 INFO    ] ================================================
[2026-06-27 09:49:56,201.201 INFO    ] Launching Daemon at Sat Jun 27 09:49:56 IST 2026
[2026-06-27 09:49:56,212.212 INFO    ] ================================================
[2026-06-27 09:49:56,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:49:56
[2026-06-27 09:49:56,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:49:56,996.996 INFO    ] Initializing speech engine...
[2026-06-27 09:49:57,004.004 INFO    ] 2026-06-27 09:49:56
[2026-06-27 09:49:57,210.210 INFO    ] 2026-06-27 09:49:57
[2026-06-27 09:49:57,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:49:57,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:49:57,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:49:57,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:49:57,635.635 INFO    ] time= 27/06/2026 09:49:57
[2026-06-27 09:49:57,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:49:57,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:49:57,732.732 INFO    ] No existing commands found in stream
[2026-06-27 09:50:02,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:50:02,742.742 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-27 09:50:07,853.853 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 09:50:07,855.855 INFO    ] Checking for system updates...
[2026-06-27 09:50:07,897.897 INFO    ] 200
[2026-06-27 09:50:07,899.899 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:50:07,952.952 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:50:07,954.954 INFO    ] No update needed
[2026-06-27 09:50:07,957.957 INFO    ] Checking for camera pi updates...
[2026-06-27 09:50:07,990.990 INFO    ] 200
[2026-06-27 09:50:07,993.993 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:50:08,037.037 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:50:08,078.078 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:50:08,080.080 INFO    ] No camera update needed
[2026-06-27 09:50:08,083.083 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:50:08,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:50:08,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:50:08,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:50:10,135.135 INFO    ] ================================================
[2026-06-27 09:50:10,151.151 INFO    ] Launching Daemon at Sat Jun 27 09:50:10 IST 2026
[2026-06-27 09:50:10,162.162 INFO    ] ================================================
[2026-06-27 09:50:10,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:50:10
[2026-06-27 09:50:10,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:50:10,949.949 INFO    ] Initializing speech engine...
[2026-06-27 09:50:10,954.954 INFO    ] 2026-06-27 09:50:10
[2026-06-27 09:50:11,158.158 INFO    ] 2026-06-27 09:50:11
[2026-06-27 09:50:11,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:50:11,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:50:11,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:50:11,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:50:11,567.567 INFO    ] time= 27/06/2026 09:50:11
[2026-06-27 09:50:11,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:50:11,606.606 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:50:11,671.671 INFO    ] No existing commands found in stream
[2026-06-27 09:50:16,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:50:16,684.684 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-27 09:50:18,269.269 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 09:50:18,270.270 INFO    ] Checking for system updates...
[2026-06-27 09:50:18,291.291 INFO    ] 200
[2026-06-27 09:50:18,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:50:18,326.326 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:50:18,327.327 INFO    ] No update needed
[2026-06-27 09:50:18,329.329 INFO    ] Checking for camera pi updates...
[2026-06-27 09:50:18,348.348 INFO    ] 200
[2026-06-27 09:50:18,350.350 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:50:18,373.373 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:50:18,512.512 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:50:18,514.514 INFO    ] No camera update needed
[2026-06-27 09:50:18,515.515 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:50:18,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:50:18,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:50:18,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:50:20,566.566 INFO    ] ================================================
[2026-06-27 09:50:20,582.582 INFO    ] Launching Daemon at Sat Jun 27 09:50:20 IST 2026
[2026-06-27 09:50:20,594.594 INFO    ] ================================================
[2026-06-27 09:50:20,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:50:20
[2026-06-27 09:50:21,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:50:21,472.472 INFO    ] Initializing speech engine...
[2026-06-27 09:50:21,485.485 INFO    ] 2026-06-27 09:50:21
[2026-06-27 09:50:21,702.702 INFO    ] 2026-06-27 09:50:21
[2026-06-27 09:50:21,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:50:21,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:50:21,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:50:22,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:50:22,154.154 INFO    ] time= 27/06/2026 09:50:22
[2026-06-27 09:50:22,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:50:22,190.190 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:50:22,266.266 INFO    ] No existing commands found in stream
[2026-06-27 09:50:27,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:50:27,280.280 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-27 09:50:30,635.635 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:50:30,636.636 INFO    ] Checking for system updates...
[2026-06-27 09:50:30,657.657 INFO    ] 200
[2026-06-27 09:50:30,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:50:30,692.692 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:50:30,694.694 INFO    ] No update needed
[2026-06-27 09:50:30,695.695 INFO    ] Checking for camera pi updates...
[2026-06-27 09:50:30,715.715 INFO    ] 200
[2026-06-27 09:50:30,716.716 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:50:30,742.742 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:50:30,778.778 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:50:30,779.779 INFO    ] No camera update needed
[2026-06-27 09:50:30,780.780 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:50:30,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:50:30,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:50:30,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:50:32,820.820 INFO    ] ================================================
[2026-06-27 09:50:32,835.835 INFO    ] Launching Daemon at Sat Jun 27 09:50:32 IST 2026
[2026-06-27 09:50:32,846.846 INFO    ] ================================================
[2026-06-27 09:50:33,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:50:33
[2026-06-27 09:50:33,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:50:33,715.715 INFO    ] Initializing speech engine...
[2026-06-27 09:50:33,720.720 INFO    ] 2026-06-27 09:50:33
[2026-06-27 09:50:33,931.931 INFO    ] 2026-06-27 09:50:33
[2026-06-27 09:50:33,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:50:34,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:50:34,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:50:34,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:50:34,354.354 INFO    ] time= 27/06/2026 09:50:34
[2026-06-27 09:50:34,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:50:34,382.382 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:50:34,448.448 INFO    ] No existing commands found in stream
[2026-06-27 09:50:39,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:50:39,463.463 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-27 09:50:43,791.791 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:50:43,793.793 INFO    ] Checking for system updates...
[2026-06-27 09:50:43,814.814 INFO    ] 200
[2026-06-27 09:50:43,815.815 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:50:43,849.849 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:50:43,850.850 INFO    ] No update needed
[2026-06-27 09:50:43,851.851 INFO    ] Checking for camera pi updates...
[2026-06-27 09:50:43,871.871 INFO    ] 200
[2026-06-27 09:50:43,873.873 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:50:43,896.896 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:50:43,938.938 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:50:43,939.939 INFO    ] No camera update needed
[2026-06-27 09:50:43,941.941 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:50:43,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:50:43,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:50:43,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:50:45,988.988 INFO    ] ================================================
[2026-06-27 09:50:46,003.003 INFO    ] Launching Daemon at Sat Jun 27 09:50:45 IST 2026
[2026-06-27 09:50:46,015.015 INFO    ] ================================================
[2026-06-27 09:50:46,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:50:46
[2026-06-27 09:50:46,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:50:46,878.878 INFO    ] Initializing speech engine...
[2026-06-27 09:50:46,882.882 INFO    ] 2026-06-27 09:50:46
[2026-06-27 09:50:47,090.090 INFO    ] 2026-06-27 09:50:47
[2026-06-27 09:50:47,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:50:47,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:50:47,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:50:47,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:50:47,510.510 INFO    ] time= 27/06/2026 09:50:47
[2026-06-27 09:50:47,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:50:47,539.539 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:50:47,606.606 INFO    ] No existing commands found in stream
[2026-06-27 09:50:52,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:50:52,620.620 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-27 09:50:55,158.158 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:50:55,160.160 INFO    ] Checking for system updates...
[2026-06-27 09:50:55,182.182 INFO    ] 200
[2026-06-27 09:50:55,183.183 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:50:55,216.216 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:50:55,217.217 INFO    ] No update needed
[2026-06-27 09:50:55,219.219 INFO    ] Checking for camera pi updates...
[2026-06-27 09:50:55,238.238 INFO    ] 200
[2026-06-27 09:50:55,239.239 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:50:55,263.263 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:50:55,286.286 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:50:55,288.288 INFO    ] No camera update needed
[2026-06-27 09:50:55,289.289 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:50:55,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:50:55,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:50:55,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:50:57,334.334 INFO    ] ================================================
[2026-06-27 09:50:57,350.350 INFO    ] Launching Daemon at Sat Jun 27 09:50:57 IST 2026
[2026-06-27 09:50:57,361.361 INFO    ] ================================================
[2026-06-27 09:50:57,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:50:57
[2026-06-27 09:50:58,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:50:58,171.171 INFO    ] Initializing speech engine...
[2026-06-27 09:50:58,176.176 INFO    ] 2026-06-27 09:50:58
[2026-06-27 09:50:58,383.383 INFO    ] 2026-06-27 09:50:58
[2026-06-27 09:50:58,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:50:58,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:50:58,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:50:58,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:50:58,813.813 INFO    ] time= 27/06/2026 09:50:58
[2026-06-27 09:50:58,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:50:58,841.841 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:50:58,909.909 INFO    ] No existing commands found in stream
[2026-06-27 09:51:03,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:51:03,921.921 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-27 09:51:05,225.225 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:51:05,227.227 INFO    ] Checking for system updates...
[2026-06-27 09:51:05,249.249 INFO    ] 200
[2026-06-27 09:51:05,250.250 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:51:05,283.283 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:51:05,285.285 INFO    ] No update needed
[2026-06-27 09:51:05,286.286 INFO    ] Checking for camera pi updates...
[2026-06-27 09:51:05,305.305 INFO    ] 200
[2026-06-27 09:51:05,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:51:05,332.332 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:51:05,370.370 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:51:05,371.371 INFO    ] No camera update needed
[2026-06-27 09:51:05,372.372 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:51:05,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:51:05,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:51:05,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:51:07,418.418 INFO    ] ================================================
[2026-06-27 09:51:07,434.434 INFO    ] Launching Daemon at Sat Jun 27 09:51:07 IST 2026
[2026-06-27 09:51:07,445.445 INFO    ] ================================================
[2026-06-27 09:51:07,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:51:07
[2026-06-27 09:51:08,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:51:08,264.264 INFO    ] Initializing speech engine...
[2026-06-27 09:51:08,269.269 INFO    ] 2026-06-27 09:51:08
[2026-06-27 09:51:08,473.473 INFO    ] 2026-06-27 09:51:08
[2026-06-27 09:51:08,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:51:08,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:51:08,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:51:08,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:51:08,892.892 INFO    ] time= 27/06/2026 09:51:08
[2026-06-27 09:51:08,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:51:08,921.921 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:51:08,988.988 INFO    ] No existing commands found in stream
[2026-06-27 09:51:13,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:51:14,000.000 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-27 09:51:16,714.714 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:51:16,716.716 INFO    ] Checking for system updates...
[2026-06-27 09:51:16,737.737 INFO    ] 200
[2026-06-27 09:51:16,738.738 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:51:16,769.769 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:51:16,771.771 INFO    ] No update needed
[2026-06-27 09:51:16,772.772 INFO    ] Checking for camera pi updates...
[2026-06-27 09:51:16,792.792 INFO    ] 200
[2026-06-27 09:51:16,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:51:16,818.818 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:51:16,865.865 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:51:16,867.867 INFO    ] No camera update needed
[2026-06-27 09:51:16,868.868 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:51:16,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:51:16,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:51:16,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:51:18,919.919 INFO    ] ================================================
[2026-06-27 09:51:18,936.936 INFO    ] Launching Daemon at Sat Jun 27 09:51:18 IST 2026
[2026-06-27 09:51:18,947.947 INFO    ] ================================================
[2026-06-27 09:51:19,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:51:19
[2026-06-27 09:51:19,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:51:19,768.768 INFO    ] Initializing speech engine...
[2026-06-27 09:51:19,781.781 INFO    ] 2026-06-27 09:51:19
[2026-06-27 09:51:19,989.989 INFO    ] 2026-06-27 09:51:19
[2026-06-27 09:51:20,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:51:20,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:51:20,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:51:20,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:51:20,411.411 INFO    ] time= 27/06/2026 09:51:20
[2026-06-27 09:51:20,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:51:20,440.440 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:51:20,505.505 INFO    ] No existing commands found in stream
[2026-06-27 09:51:25,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:51:25,519.519 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-27 09:51:29,860.860 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 09:51:29,862.862 INFO    ] Checking for system updates...
[2026-06-27 09:51:29,885.885 INFO    ] 200
[2026-06-27 09:51:29,886.886 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:51:29,921.921 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:51:29,922.922 INFO    ] No update needed
[2026-06-27 09:51:29,924.924 INFO    ] Checking for camera pi updates...
[2026-06-27 09:51:29,943.943 INFO    ] 200
[2026-06-27 09:51:29,945.945 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:51:29,971.971 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:51:30,007.007 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:51:30,009.009 INFO    ] No camera update needed
[2026-06-27 09:51:30,010.010 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:51:30,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:51:30,015.015 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:51:30,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:51:32,049.049 INFO    ] ================================================
[2026-06-27 09:51:32,058.058 INFO    ] Launching Daemon at Sat Jun 27 09:51:32 IST 2026
[2026-06-27 09:51:32,065.065 INFO    ] ================================================
[2026-06-27 09:51:32,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:51:32
[2026-06-27 09:51:32,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:51:32,866.866 INFO    ] Initializing speech engine...
[2026-06-27 09:51:32,875.875 INFO    ] 2026-06-27 09:51:32
[2026-06-27 09:51:33,075.075 INFO    ] 2026-06-27 09:51:33
[2026-06-27 09:51:33,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:51:33,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:51:33,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:51:33,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:51:33,528.528 INFO    ] time= 27/06/2026 09:51:33
[2026-06-27 09:51:33,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:51:33,592.592 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:51:33,670.670 INFO    ] No existing commands found in stream
[2026-06-27 09:51:38,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:51:38,687.687 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-27 09:51:40,986.986 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:51:40,988.988 INFO    ] Checking for system updates...
[2026-06-27 09:51:41,008.008 INFO    ] 200
[2026-06-27 09:51:41,010.010 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:51:41,041.041 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:51:41,042.042 INFO    ] No update needed
[2026-06-27 09:51:41,043.043 INFO    ] Checking for camera pi updates...
[2026-06-27 09:51:41,063.063 INFO    ] 200
[2026-06-27 09:51:41,065.065 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:51:41,088.088 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:51:41,126.126 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:51:41,128.128 INFO    ] No camera update needed
[2026-06-27 09:51:41,129.129 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:51:41,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:51:41,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:51:41,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:51:43,175.175 INFO    ] ================================================
[2026-06-27 09:51:43,190.190 INFO    ] Launching Daemon at Sat Jun 27 09:51:43 IST 2026
[2026-06-27 09:51:43,201.201 INFO    ] ================================================
[2026-06-27 09:51:43,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:51:43
[2026-06-27 09:51:43,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:51:44,006.006 INFO    ] Initializing speech engine...
[2026-06-27 09:51:44,020.020 INFO    ] 2026-06-27 09:51:44
[2026-06-27 09:51:44,242.242 INFO    ] 2026-06-27 09:51:44
[2026-06-27 09:51:44,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:51:44,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:51:44,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:51:44,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:51:44,712.712 INFO    ] time= 27/06/2026 09:51:44
[2026-06-27 09:51:44,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:51:44,747.747 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:51:44,813.813 INFO    ] No existing commands found in stream
[2026-06-27 09:51:49,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:51:49,827.827 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-27 09:51:50,559.559 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 09:51:50,560.560 INFO    ] Checking for system updates...
[2026-06-27 09:51:50,583.583 INFO    ] 200
[2026-06-27 09:51:50,585.585 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:51:50,616.616 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:51:50,617.617 INFO    ] No update needed
[2026-06-27 09:51:50,619.619 INFO    ] Checking for camera pi updates...
[2026-06-27 09:51:50,641.641 INFO    ] 200
[2026-06-27 09:51:50,642.642 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:51:50,670.670 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:51:50,708.708 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:51:50,709.709 INFO    ] No camera update needed
[2026-06-27 09:51:50,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:51:50,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:51:50,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:51:50,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:51:52,760.760 INFO    ] ================================================
[2026-06-27 09:51:52,775.775 INFO    ] Launching Daemon at Sat Jun 27 09:51:52 IST 2026
[2026-06-27 09:51:52,786.786 INFO    ] ================================================
[2026-06-27 09:51:53,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:51:53
[2026-06-27 09:51:53,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:51:53,577.577 INFO    ] Initializing speech engine...
[2026-06-27 09:51:53,586.586 INFO    ] 2026-06-27 09:51:53
[2026-06-27 09:51:53,791.791 INFO    ] 2026-06-27 09:51:53
[2026-06-27 09:51:53,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:51:54,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:51:54,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:51:54,156.156 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:51:54,209.209 INFO    ] time= 27/06/2026 09:51:54
[2026-06-27 09:51:54,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:51:54,237.237 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:51:54,304.304 INFO    ] No existing commands found in stream
[2026-06-27 09:51:59,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:51:59,321.321 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-27 09:52:01,971.971 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 09:52:01,972.972 INFO    ] Checking for system updates...
[2026-06-27 09:52:01,994.994 INFO    ] 200
[2026-06-27 09:52:01,996.996 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:52:02,035.035 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:52:02,037.037 INFO    ] No update needed
[2026-06-27 09:52:02,039.039 INFO    ] Checking for camera pi updates...
[2026-06-27 09:52:02,059.059 INFO    ] 200
[2026-06-27 09:52:02,060.060 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:52:02,091.091 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:52:02,123.123 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:52:02,124.124 INFO    ] No camera update needed
[2026-06-27 09:52:02,126.126 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:52:02,127.127 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:52:02,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:52:02,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:52:04,171.171 INFO    ] ================================================
[2026-06-27 09:52:04,186.186 INFO    ] Launching Daemon at Sat Jun 27 09:52:04 IST 2026
[2026-06-27 09:52:04,197.197 INFO    ] ================================================
[2026-06-27 09:52:04,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:52:04
[2026-06-27 09:52:04,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:52:05,097.097 INFO    ] Initializing speech engine...
[2026-06-27 09:52:05,103.103 INFO    ] 2026-06-27 09:52:05
[2026-06-27 09:52:05,325.325 INFO    ] 2026-06-27 09:52:05
[2026-06-27 09:52:05,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:52:05,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:52:05,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:52:05,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:52:05,749.749 INFO    ] time= 27/06/2026 09:52:05
[2026-06-27 09:52:05,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:52:05,779.779 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:52:05,846.846 INFO    ] No existing commands found in stream
[2026-06-27 09:52:10,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:52:10,859.859 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-27 09:52:12,240.240 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 09:52:12,241.241 INFO    ] Checking for system updates...
[2026-06-27 09:52:12,264.264 INFO    ] 200
[2026-06-27 09:52:12,265.265 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:52:12,297.297 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:52:12,298.298 INFO    ] No update needed
[2026-06-27 09:52:12,299.299 INFO    ] Checking for camera pi updates...
[2026-06-27 09:52:12,319.319 INFO    ] 200
[2026-06-27 09:52:12,320.320 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:52:12,346.346 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:52:12,381.381 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:52:12,382.382 INFO    ] No camera update needed
[2026-06-27 09:52:12,383.383 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:52:12,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:52:12,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:52:12,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:52:14,429.429 INFO    ] ================================================
[2026-06-27 09:52:14,444.444 INFO    ] Launching Daemon at Sat Jun 27 09:52:14 IST 2026
[2026-06-27 09:52:14,455.455 INFO    ] ================================================
[2026-06-27 09:52:14,856.856 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:52:14
[2026-06-27 09:52:15,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:52:15,365.365 INFO    ] Initializing speech engine...
[2026-06-27 09:52:15,370.370 INFO    ] 2026-06-27 09:52:15
[2026-06-27 09:52:15,579.579 INFO    ] 2026-06-27 09:52:15
[2026-06-27 09:52:15,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:52:15,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:52:15,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:52:15,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:52:16,016.016 INFO    ] time= 27/06/2026 09:52:15
[2026-06-27 09:52:16,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:52:16,032.032 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:52:16,099.099 INFO    ] No existing commands found in stream
[2026-06-27 09:52:21,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:52:21,110.110 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-27 09:52:23,139.139 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:52:23,141.141 INFO    ] Checking for system updates...
[2026-06-27 09:52:23,163.163 INFO    ] 200
[2026-06-27 09:52:23,165.165 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:52:23,197.197 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:52:23,198.198 INFO    ] No update needed
[2026-06-27 09:52:23,200.200 INFO    ] Checking for camera pi updates...
[2026-06-27 09:52:23,221.221 INFO    ] 200
[2026-06-27 09:52:23,223.223 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:52:23,252.252 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:52:23,396.396 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:52:23,397.397 INFO    ] No camera update needed
[2026-06-27 09:52:23,399.399 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:52:23,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:52:23,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:52:23,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:52:25,447.447 INFO    ] ================================================
[2026-06-27 09:52:25,462.462 INFO    ] Launching Daemon at Sat Jun 27 09:52:25 IST 2026
[2026-06-27 09:52:25,473.473 INFO    ] ================================================
[2026-06-27 09:52:25,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:52:25
[2026-06-27 09:52:26,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:52:26,298.298 INFO    ] Initializing speech engine...
[2026-06-27 09:52:26,306.306 INFO    ] 2026-06-27 09:52:26
[2026-06-27 09:52:26,519.519 INFO    ] 2026-06-27 09:52:26
[2026-06-27 09:52:26,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:52:26,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:52:26,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:52:26,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:52:26,940.940 INFO    ] time= 27/06/2026 09:52:26
[2026-06-27 09:52:26,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:52:26,969.969 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:52:27,035.035 INFO    ] No existing commands found in stream
[2026-06-27 09:52:32,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:52:32,049.049 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-27 09:52:33,657.657 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:52:33,658.658 INFO    ] Checking for system updates...
[2026-06-27 09:52:33,681.681 INFO    ] 200
[2026-06-27 09:52:33,682.682 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:52:33,713.713 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:52:33,714.714 INFO    ] No update needed
[2026-06-27 09:52:33,715.715 INFO    ] Checking for camera pi updates...
[2026-06-27 09:52:33,735.735 INFO    ] 200
[2026-06-27 09:52:33,737.737 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:52:33,760.760 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:52:33,806.806 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:52:33,808.808 INFO    ] No camera update needed
[2026-06-27 09:52:33,809.809 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:52:33,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:52:33,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:52:33,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:52:35,848.848 INFO    ] ================================================
[2026-06-27 09:52:35,864.864 INFO    ] Launching Daemon at Sat Jun 27 09:52:35 IST 2026
[2026-06-27 09:52:35,875.875 INFO    ] ================================================
[2026-06-27 09:52:36,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:52:36
[2026-06-27 09:52:36,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:52:36,762.762 INFO    ] Initializing speech engine...
[2026-06-27 09:52:36,772.772 INFO    ] 2026-06-27 09:52:36
[2026-06-27 09:52:36,978.978 INFO    ] 2026-06-27 09:52:36
[2026-06-27 09:52:37,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:52:37,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:52:37,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:52:37,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:52:37,402.402 INFO    ] time= 27/06/2026 09:52:37
[2026-06-27 09:52:37,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:52:37,432.432 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:52:37,500.500 INFO    ] No existing commands found in stream
[2026-06-27 09:52:42,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:52:42,512.512 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-27 09:52:43,017.017 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:52:43,018.018 INFO    ] Checking for system updates...
[2026-06-27 09:52:43,039.039 INFO    ] 200
[2026-06-27 09:52:43,040.040 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:52:43,071.071 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:52:43,072.072 INFO    ] No update needed
[2026-06-27 09:52:43,074.074 INFO    ] Checking for camera pi updates...
[2026-06-27 09:52:43,094.094 INFO    ] 200
[2026-06-27 09:52:43,095.095 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:52:43,119.119 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:52:43,159.159 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:52:43,160.160 INFO    ] No camera update needed
[2026-06-27 09:52:43,161.161 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:52:43,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:52:43,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:52:43,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:52:45,209.209 INFO    ] ================================================
[2026-06-27 09:52:45,224.224 INFO    ] Launching Daemon at Sat Jun 27 09:52:45 IST 2026
[2026-06-27 09:52:45,235.235 INFO    ] ================================================
[2026-06-27 09:52:45,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:52:45
[2026-06-27 09:52:45,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:52:46,017.017 INFO    ] Initializing speech engine...
[2026-06-27 09:52:46,025.025 INFO    ] 2026-06-27 09:52:46
[2026-06-27 09:52:46,238.238 INFO    ] 2026-06-27 09:52:46
[2026-06-27 09:52:46,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:52:46,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:52:46,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:52:46,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:52:46,661.661 INFO    ] time= 27/06/2026 09:52:46
[2026-06-27 09:52:46,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:52:46,686.686 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:52:46,757.757 INFO    ] No existing commands found in stream
[2026-06-27 09:52:51,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:52:51,770.770 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-27 09:52:54,705.705 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:52:54,706.706 INFO    ] Checking for system updates...
[2026-06-27 09:52:54,729.729 INFO    ] 200
[2026-06-27 09:52:54,730.730 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:52:54,761.761 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:52:54,763.763 INFO    ] No update needed
[2026-06-27 09:52:54,764.764 INFO    ] Checking for camera pi updates...
[2026-06-27 09:52:54,786.786 INFO    ] 200
[2026-06-27 09:52:54,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:52:54,811.811 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:52:54,835.835 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:52:54,837.837 INFO    ] No camera update needed
[2026-06-27 09:52:54,838.838 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:52:54,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:52:54,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:52:54,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:52:56,886.886 INFO    ] ================================================
[2026-06-27 09:52:56,902.902 INFO    ] Launching Daemon at Sat Jun 27 09:52:56 IST 2026
[2026-06-27 09:52:56,912.912 INFO    ] ================================================
[2026-06-27 09:52:57,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:52:57
[2026-06-27 09:52:57,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:52:57,826.826 INFO    ] Initializing speech engine...
[2026-06-27 09:52:57,830.830 INFO    ] 2026-06-27 09:52:57
[2026-06-27 09:52:58,043.043 INFO    ] 2026-06-27 09:52:58
[2026-06-27 09:52:58,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:52:58,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:52:58,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:52:58,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:52:58,405.405 INFO    ] time= 27/06/2026 09:52:58
[2026-06-27 09:52:58,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:52:58,506.506 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:52:58,561.561 INFO    ] No existing commands found in stream
[2026-06-27 09:53:03,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:53:03,570.570 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-27 09:53:04,857.857 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:53:04,859.859 INFO    ] Checking for system updates...
[2026-06-27 09:53:04,880.880 INFO    ] 200
[2026-06-27 09:53:04,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:53:04,913.913 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:53:04,915.915 INFO    ] No update needed
[2026-06-27 09:53:04,916.916 INFO    ] Checking for camera pi updates...
[2026-06-27 09:53:04,939.939 INFO    ] 200
[2026-06-27 09:53:04,940.940 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:53:04,966.966 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:53:05,010.010 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:53:05,011.011 INFO    ] No camera update needed
[2026-06-27 09:53:05,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:53:05,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:53:05,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:53:05,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:53:07,062.062 INFO    ] ================================================
[2026-06-27 09:53:07,078.078 INFO    ] Launching Daemon at Sat Jun 27 09:53:07 IST 2026
[2026-06-27 09:53:07,088.088 INFO    ] ================================================
[2026-06-27 09:53:07,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:53:07
[2026-06-27 09:53:07,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:53:07,894.894 INFO    ] Initializing speech engine...
[2026-06-27 09:53:07,903.903 INFO    ] 2026-06-27 09:53:07
[2026-06-27 09:53:08,107.107 INFO    ] 2026-06-27 09:53:08
[2026-06-27 09:53:08,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:53:08,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:53:08,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:53:08,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:53:08,501.501 INFO    ] time= 27/06/2026 09:53:08
[2026-06-27 09:53:08,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:53:08,552.552 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:53:08,647.647 INFO    ] No existing commands found in stream
[2026-06-27 09:53:13,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:53:13,658.658 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-27 09:53:15,915.915 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:53:15,916.916 INFO    ] Checking for system updates...
[2026-06-27 09:53:15,937.937 INFO    ] 200
[2026-06-27 09:53:15,939.939 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:53:15,972.972 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:53:15,974.974 INFO    ] No update needed
[2026-06-27 09:53:15,976.976 INFO    ] Checking for camera pi updates...
[2026-06-27 09:53:15,996.996 INFO    ] 200
[2026-06-27 09:53:15,998.998 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:53:16,022.022 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:53:16,069.069 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:53:16,070.070 INFO    ] No camera update needed
[2026-06-27 09:53:16,072.072 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:53:16,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:53:16,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:53:16,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:53:18,118.118 INFO    ] ================================================
[2026-06-27 09:53:18,134.134 INFO    ] Launching Daemon at Sat Jun 27 09:53:18 IST 2026
[2026-06-27 09:53:18,144.144 INFO    ] ================================================
[2026-06-27 09:53:18,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:53:18
[2026-06-27 09:53:18,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:53:19,006.006 INFO    ] Initializing speech engine...
[2026-06-27 09:53:19,012.012 INFO    ] 2026-06-27 09:53:19
[2026-06-27 09:53:19,222.222 INFO    ] 2026-06-27 09:53:19
[2026-06-27 09:53:19,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:53:19,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:53:19,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:53:19,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:53:19,665.665 INFO    ] time= 27/06/2026 09:53:19
[2026-06-27 09:53:19,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:53:19,672.672 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:53:19,737.737 INFO    ] No existing commands found in stream
[2026-06-27 09:53:24,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:53:24,750.750 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-27 09:53:28,622.622 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 09:53:28,624.624 INFO    ] Checking for system updates...
[2026-06-27 09:53:28,645.645 INFO    ] 200
[2026-06-27 09:53:28,647.647 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:53:28,678.678 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:53:28,679.679 INFO    ] No update needed
[2026-06-27 09:53:28,681.681 INFO    ] Checking for camera pi updates...
[2026-06-27 09:53:28,701.701 INFO    ] 200
[2026-06-27 09:53:28,703.703 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:53:28,728.728 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:53:28,768.768 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:53:28,770.770 INFO    ] No camera update needed
[2026-06-27 09:53:28,771.771 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:53:28,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:53:28,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:53:28,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:53:30,811.811 INFO    ] ================================================
[2026-06-27 09:53:30,820.820 INFO    ] Launching Daemon at Sat Jun 27 09:53:30 IST 2026
[2026-06-27 09:53:30,827.827 INFO    ] ================================================
[2026-06-27 09:53:31,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:53:31
[2026-06-27 09:53:31,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:53:31,700.700 INFO    ] Initializing speech engine...
[2026-06-27 09:53:31,704.704 INFO    ] 2026-06-27 09:53:31
[2026-06-27 09:53:31,924.924 INFO    ] 2026-06-27 09:53:31
[2026-06-27 09:53:31,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:53:32,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:53:32,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:53:32,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:53:32,265.265 INFO    ] time= 27/06/2026 09:53:32
[2026-06-27 09:53:32,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:53:32,276.276 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:53:32,386.386 INFO    ] No existing commands found in stream
[2026-06-27 09:53:37,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:53:37,402.402 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-27 09:53:40,132.132 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 09:53:40,134.134 INFO    ] Checking for system updates...
[2026-06-27 09:53:40,157.157 INFO    ] 200
[2026-06-27 09:53:40,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:53:40,196.196 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:53:40,198.198 INFO    ] No update needed
[2026-06-27 09:53:40,199.199 INFO    ] Checking for camera pi updates...
[2026-06-27 09:53:40,219.219 INFO    ] 200
[2026-06-27 09:53:40,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:53:40,245.245 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:53:40,283.283 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:53:40,284.284 INFO    ] No camera update needed
[2026-06-27 09:53:40,286.286 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:53:40,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:53:40,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:53:40,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:53:42,331.331 INFO    ] ================================================
[2026-06-27 09:53:42,346.346 INFO    ] Launching Daemon at Sat Jun 27 09:53:42 IST 2026
[2026-06-27 09:53:42,357.357 INFO    ] ================================================
[2026-06-27 09:53:42,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:53:42
[2026-06-27 09:53:43,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:53:43,174.174 INFO    ] Initializing speech engine...
[2026-06-27 09:53:43,188.188 INFO    ] 2026-06-27 09:53:43
[2026-06-27 09:53:43,395.395 INFO    ] 2026-06-27 09:53:43
[2026-06-27 09:53:43,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:53:43,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:53:43,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:53:43,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:53:43,812.812 INFO    ] time= 27/06/2026 09:53:43
[2026-06-27 09:53:43,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:53:43,869.869 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:53:43,972.972 INFO    ] No existing commands found in stream
[2026-06-27 09:53:48,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:53:49,000.000 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-27 09:53:51,518.518 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:53:51,520.520 INFO    ] Checking for system updates...
[2026-06-27 09:53:51,541.541 INFO    ] 200
[2026-06-27 09:53:51,542.542 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:53:51,573.573 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:53:51,574.574 INFO    ] No update needed
[2026-06-27 09:53:51,576.576 INFO    ] Checking for camera pi updates...
[2026-06-27 09:53:51,595.595 INFO    ] 200
[2026-06-27 09:53:51,597.597 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:53:51,620.620 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:53:51,660.660 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:53:51,661.661 INFO    ] No camera update needed
[2026-06-27 09:53:51,662.662 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:53:51,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:53:51,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:53:51,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:53:53,707.707 INFO    ] ================================================
[2026-06-27 09:53:53,722.722 INFO    ] Launching Daemon at Sat Jun 27 09:53:53 IST 2026
[2026-06-27 09:53:53,733.733 INFO    ] ================================================
[2026-06-27 09:53:54,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:53:54
[2026-06-27 09:53:54,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:53:54,520.520 INFO    ] Initializing speech engine...
[2026-06-27 09:53:54,526.526 INFO    ] 2026-06-27 09:53:54
[2026-06-27 09:53:54,730.730 INFO    ] 2026-06-27 09:53:54
[2026-06-27 09:53:54,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:53:54,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:53:54,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:53:55,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:53:55,166.166 INFO    ] time= 27/06/2026 09:53:55
[2026-06-27 09:53:55,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:53:55,177.177 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:53:55,248.248 INFO    ] No existing commands found in stream
[2026-06-27 09:54:00,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:54:00,262.262 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-27 09:54:03,841.841 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:54:03,842.842 INFO    ] Checking for system updates...
[2026-06-27 09:54:03,864.864 INFO    ] 200
[2026-06-27 09:54:03,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:54:03,902.902 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:54:03,903.903 INFO    ] No update needed
[2026-06-27 09:54:03,905.905 INFO    ] Checking for camera pi updates...
[2026-06-27 09:54:03,927.927 INFO    ] 200
[2026-06-27 09:54:03,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:54:03,953.953 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:54:03,976.976 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:54:03,977.977 INFO    ] No camera update needed
[2026-06-27 09:54:03,979.979 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:54:03,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:54:03,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:54:03,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:54:06,018.018 INFO    ] ================================================
[2026-06-27 09:54:06,027.027 INFO    ] Launching Daemon at Sat Jun 27 09:54:06 IST 2026
[2026-06-27 09:54:06,032.032 INFO    ] ================================================
[2026-06-27 09:54:06,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:54:06
[2026-06-27 09:54:06,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:54:06,854.854 INFO    ] Initializing speech engine...
[2026-06-27 09:54:06,860.860 INFO    ] 2026-06-27 09:54:06
[2026-06-27 09:54:07,066.066 INFO    ] 2026-06-27 09:54:07
[2026-06-27 09:54:07,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:54:07,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:54:07,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:54:07,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:54:07,476.476 INFO    ] time= 27/06/2026 09:54:07
[2026-06-27 09:54:07,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:54:07,515.515 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:54:07,581.581 INFO    ] No existing commands found in stream
[2026-06-27 09:54:12,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:54:12,594.594 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-27 09:54:15,477.477 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 09:54:15,478.478 INFO    ] Checking for system updates...
[2026-06-27 09:54:15,499.499 INFO    ] 200
[2026-06-27 09:54:15,500.500 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:54:15,530.530 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:54:15,532.532 INFO    ] No update needed
[2026-06-27 09:54:15,533.533 INFO    ] Checking for camera pi updates...
[2026-06-27 09:54:15,555.555 INFO    ] 200
[2026-06-27 09:54:15,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:54:15,581.581 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:54:15,623.623 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:54:15,624.624 INFO    ] No camera update needed
[2026-06-27 09:54:15,626.626 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:54:15,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:54:15,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:54:15,633.633 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:54:17,671.671 INFO    ] ================================================
[2026-06-27 09:54:17,686.686 INFO    ] Launching Daemon at Sat Jun 27 09:54:17 IST 2026
[2026-06-27 09:54:17,697.697 INFO    ] ================================================
[2026-06-27 09:54:18,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:54:18
[2026-06-27 09:54:18,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:54:18,541.541 INFO    ] Initializing speech engine...
[2026-06-27 09:54:18,545.545 INFO    ] 2026-06-27 09:54:18
[2026-06-27 09:54:18,754.754 INFO    ] 2026-06-27 09:54:18
[2026-06-27 09:54:18,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:54:18,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:54:18,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:54:19,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:54:19,177.177 INFO    ] time= 27/06/2026 09:54:19
[2026-06-27 09:54:19,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:54:19,206.206 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:54:19,271.271 INFO    ] No existing commands found in stream
[2026-06-27 09:54:24,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:54:24,287.287 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-27 09:54:26,452.452 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:54:26,453.453 INFO    ] Checking for system updates...
[2026-06-27 09:54:26,475.475 INFO    ] 200
[2026-06-27 09:54:26,477.477 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:54:26,508.508 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:54:26,509.509 INFO    ] No update needed
[2026-06-27 09:54:26,511.511 INFO    ] Checking for camera pi updates...
[2026-06-27 09:54:26,531.531 INFO    ] 200
[2026-06-27 09:54:26,532.532 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:54:26,557.557 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:54:26,697.697 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:54:26,699.699 INFO    ] No camera update needed
[2026-06-27 09:54:26,700.700 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:54:26,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:54:26,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:54:26,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:54:28,748.748 INFO    ] ================================================
[2026-06-27 09:54:28,763.763 INFO    ] Launching Daemon at Sat Jun 27 09:54:28 IST 2026
[2026-06-27 09:54:28,774.774 INFO    ] ================================================
[2026-06-27 09:54:29,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:54:29
[2026-06-27 09:54:29,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:54:29,560.560 INFO    ] Initializing speech engine...
[2026-06-27 09:54:29,572.572 INFO    ] 2026-06-27 09:54:29
[2026-06-27 09:54:29,781.781 INFO    ] 2026-06-27 09:54:29
[2026-06-27 09:54:29,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:54:29,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:54:30,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:54:30,150.150 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:54:30,204.204 INFO    ] time= 27/06/2026 09:54:30
[2026-06-27 09:54:30,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:54:30,231.231 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:54:30,298.298 INFO    ] No existing commands found in stream
[2026-06-27 09:54:35,307.307 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:54:35,310.310 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-27 09:54:38,155.155 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 09:54:38,156.156 INFO    ] Checking for system updates...
[2026-06-27 09:54:38,185.185 INFO    ] 200
[2026-06-27 09:54:38,186.186 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:54:38,230.230 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:54:38,231.231 INFO    ] No update needed
[2026-06-27 09:54:38,233.233 INFO    ] Checking for camera pi updates...
[2026-06-27 09:54:38,263.263 INFO    ] 200
[2026-06-27 09:54:38,265.265 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:54:38,302.302 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:54:38,347.347 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:54:38,348.348 INFO    ] No camera update needed
[2026-06-27 09:54:38,350.350 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:54:38,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:54:38,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:54:38,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:54:40,406.406 INFO    ] ================================================
[2026-06-27 09:54:40,424.424 INFO    ] Launching Daemon at Sat Jun 27 09:54:40 IST 2026
[2026-06-27 09:54:40,435.435 INFO    ] ================================================
[2026-06-27 09:54:40,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:54:40
[2026-06-27 09:54:41,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:54:41,330.330 INFO    ] Initializing speech engine...
[2026-06-27 09:54:41,336.336 INFO    ] 2026-06-27 09:54:41
[2026-06-27 09:54:41,546.546 INFO    ] 2026-06-27 09:54:41
[2026-06-27 09:54:41,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:54:41,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:54:41,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:54:41,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:54:41,977.977 INFO    ] time= 27/06/2026 09:54:41
[2026-06-27 09:54:42,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:54:42,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:54:42,074.074 INFO    ] No existing commands found in stream
[2026-06-27 09:54:47,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:54:47,089.089 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-27 09:54:47,863.863 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:54:47,865.865 INFO    ] Checking for system updates...
[2026-06-27 09:54:47,886.886 INFO    ] 200
[2026-06-27 09:54:47,888.888 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:54:47,918.918 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:54:47,920.920 INFO    ] No update needed
[2026-06-27 09:54:47,921.921 INFO    ] Checking for camera pi updates...
[2026-06-27 09:54:47,941.941 INFO    ] 200
[2026-06-27 09:54:47,942.942 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:54:47,967.967 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:54:48,006.006 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:54:48,008.008 INFO    ] No camera update needed
[2026-06-27 09:54:48,009.009 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:54:48,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:54:48,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:54:48,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:54:50,056.056 INFO    ] ================================================
[2026-06-27 09:54:50,071.071 INFO    ] Launching Daemon at Sat Jun 27 09:54:50 IST 2026
[2026-06-27 09:54:50,082.082 INFO    ] ================================================
[2026-06-27 09:54:50,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:54:50
[2026-06-27 09:54:50,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:54:50,893.893 INFO    ] Initializing speech engine...
[2026-06-27 09:54:50,897.897 INFO    ] 2026-06-27 09:54:50
[2026-06-27 09:54:51,103.103 INFO    ] 2026-06-27 09:54:51
[2026-06-27 09:54:51,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:54:51,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:54:51,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:54:51,460.460 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:54:51,528.528 INFO    ] time= 27/06/2026 09:54:51
[2026-06-27 09:54:51,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:54:51,558.558 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:54:51,623.623 INFO    ] No existing commands found in stream
[2026-06-27 09:54:56,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:54:56,637.637 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-27 09:54:59,296.296 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:54:59,298.298 INFO    ] Checking for system updates...
[2026-06-27 09:54:59,320.320 INFO    ] 200
[2026-06-27 09:54:59,321.321 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:54:59,352.352 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:54:59,354.354 INFO    ] No update needed
[2026-06-27 09:54:59,356.356 INFO    ] Checking for camera pi updates...
[2026-06-27 09:54:59,377.377 INFO    ] 200
[2026-06-27 09:54:59,378.378 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:54:59,403.403 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:54:59,441.441 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:54:59,442.442 INFO    ] No camera update needed
[2026-06-27 09:54:59,444.444 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:54:59,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:54:59,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:54:59,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:55:01,490.490 INFO    ] ================================================
[2026-06-27 09:55:01,506.506 INFO    ] Launching Daemon at Sat Jun 27 09:55:01 IST 2026
[2026-06-27 09:55:01,518.518 INFO    ] ================================================
[2026-06-27 09:55:01,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:55:01
[2026-06-27 09:55:02,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:55:02,585.585 INFO    ] Initializing speech engine...
[2026-06-27 09:55:02,590.590 INFO    ] 2026-06-27 09:55:02
[2026-06-27 09:55:02,805.805 INFO    ] 2026-06-27 09:55:02
[2026-06-27 09:55:02,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:55:03,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:55:03,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:55:03,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:55:03,338.338 INFO    ] time= 27/06/2026 09:55:03
[2026-06-27 09:55:03,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:55:03,347.347 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:55:03,414.414 INFO    ] No existing commands found in stream
[2026-06-27 09:55:08,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:55:08,442.442 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-27 09:55:10,092.092 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 09:55:10,094.094 INFO    ] Checking for system updates...
[2026-06-27 09:55:10,116.116 INFO    ] 200
[2026-06-27 09:55:10,118.118 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:55:10,150.150 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:55:10,151.151 INFO    ] No update needed
[2026-06-27 09:55:10,152.152 INFO    ] Checking for camera pi updates...
[2026-06-27 09:55:10,173.173 INFO    ] 200
[2026-06-27 09:55:10,175.175 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:55:10,199.199 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:55:10,237.237 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:55:10,238.238 INFO    ] No camera update needed
[2026-06-27 09:55:10,240.240 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:55:10,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:55:10,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:55:10,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:55:12,287.287 INFO    ] ================================================
[2026-06-27 09:55:12,303.303 INFO    ] Launching Daemon at Sat Jun 27 09:55:12 IST 2026
[2026-06-27 09:55:12,315.315 INFO    ] ================================================
[2026-06-27 09:55:12,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:55:12
[2026-06-27 09:55:12,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:55:13,106.106 INFO    ] Initializing speech engine...
[2026-06-27 09:55:13,110.110 INFO    ] 2026-06-27 09:55:13
[2026-06-27 09:55:13,315.315 INFO    ] 2026-06-27 09:55:13
[2026-06-27 09:55:13,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:55:13,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:55:13,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:55:13,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:55:13,756.756 INFO    ] time= 27/06/2026 09:55:13
[2026-06-27 09:55:13,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:55:13,763.763 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:55:13,831.831 INFO    ] No existing commands found in stream
[2026-06-27 09:55:18,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:55:18,842.842 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-27 09:55:20,369.369 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:55:20,371.371 INFO    ] Checking for system updates...
[2026-06-27 09:55:20,393.393 INFO    ] 200
[2026-06-27 09:55:20,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:55:20,425.425 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:55:20,427.427 INFO    ] No update needed
[2026-06-27 09:55:20,428.428 INFO    ] Checking for camera pi updates...
[2026-06-27 09:55:20,448.448 INFO    ] 200
[2026-06-27 09:55:20,449.449 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:55:20,477.477 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:55:20,511.511 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:55:20,512.512 INFO    ] No camera update needed
[2026-06-27 09:55:20,514.514 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:55:20,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:55:20,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:55:20,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:55:22,560.560 INFO    ] ================================================
[2026-06-27 09:55:22,575.575 INFO    ] Launching Daemon at Sat Jun 27 09:55:22 IST 2026
[2026-06-27 09:55:22,586.586 INFO    ] ================================================
[2026-06-27 09:55:22,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:55:22
[2026-06-27 09:55:23,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:55:23,457.457 INFO    ] Initializing speech engine...
[2026-06-27 09:55:23,463.463 INFO    ] 2026-06-27 09:55:23
[2026-06-27 09:55:23,674.674 INFO    ] 2026-06-27 09:55:23
[2026-06-27 09:55:23,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:55:23,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:55:23,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:55:24,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:55:24,095.095 INFO    ] time= 27/06/2026 09:55:24
[2026-06-27 09:55:24,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:55:24,125.125 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:55:24,193.193 INFO    ] No existing commands found in stream
[2026-06-27 09:55:29,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:55:29,206.206 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-27 09:55:32,549.549 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 09:55:32,551.551 INFO    ] Checking for system updates...
[2026-06-27 09:55:32,574.574 INFO    ] 200
[2026-06-27 09:55:32,576.576 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:55:32,613.613 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:55:32,615.615 INFO    ] No update needed
[2026-06-27 09:55:32,618.618 INFO    ] Checking for camera pi updates...
[2026-06-27 09:55:32,642.642 INFO    ] 200
[2026-06-27 09:55:32,644.644 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:55:32,675.675 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:55:32,700.700 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:55:32,702.702 INFO    ] No camera update needed
[2026-06-27 09:55:32,704.704 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:55:32,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:55:32,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:55:32,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:55:34,754.754 INFO    ] ================================================
[2026-06-27 09:55:34,769.769 INFO    ] Launching Daemon at Sat Jun 27 09:55:34 IST 2026
[2026-06-27 09:55:34,780.780 INFO    ] ================================================
[2026-06-27 09:55:35,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:55:35
[2026-06-27 09:55:35,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:55:35,636.636 INFO    ] Initializing speech engine...
[2026-06-27 09:55:35,641.641 INFO    ] 2026-06-27 09:55:35
[2026-06-27 09:55:35,852.852 INFO    ] 2026-06-27 09:55:35
[2026-06-27 09:55:35,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:55:36,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:55:36,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:55:36,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:55:36,272.272 INFO    ] time= 27/06/2026 09:55:36
[2026-06-27 09:55:36,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:55:36,301.301 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:55:36,368.368 INFO    ] No existing commands found in stream
[2026-06-27 09:55:41,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:55:41,386.386 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-27 09:55:44,572.572 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:55:44,574.574 INFO    ] Checking for system updates...
[2026-06-27 09:55:44,595.595 INFO    ] 200
[2026-06-27 09:55:44,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:55:44,628.628 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:55:44,629.629 INFO    ] No update needed
[2026-06-27 09:55:44,631.631 INFO    ] Checking for camera pi updates...
[2026-06-27 09:55:44,651.651 INFO    ] 200
[2026-06-27 09:55:44,652.652 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:55:44,677.677 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:55:44,718.718 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:55:44,719.719 INFO    ] No camera update needed
[2026-06-27 09:55:44,721.721 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:55:44,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:55:44,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:55:44,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:55:46,767.767 INFO    ] ================================================
[2026-06-27 09:55:46,782.782 INFO    ] Launching Daemon at Sat Jun 27 09:55:46 IST 2026
[2026-06-27 09:55:46,793.793 INFO    ] ================================================
[2026-06-27 09:55:47,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:55:47
[2026-06-27 09:55:47,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:55:47,586.586 INFO    ] Initializing speech engine...
[2026-06-27 09:55:47,594.594 INFO    ] 2026-06-27 09:55:47
[2026-06-27 09:55:47,808.808 INFO    ] 2026-06-27 09:55:47
[2026-06-27 09:55:47,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:55:47,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:55:48,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:55:48,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:55:48,225.225 INFO    ] time= 27/06/2026 09:55:48
[2026-06-27 09:55:48,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:55:48,255.255 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:55:48,321.321 INFO    ] No existing commands found in stream
[2026-06-27 09:55:53,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:55:53,333.333 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-27 09:55:56,672.672 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:55:56,674.674 INFO    ] Checking for system updates...
[2026-06-27 09:55:56,696.696 INFO    ] 200
[2026-06-27 09:55:56,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:55:56,728.728 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:55:56,730.730 INFO    ] No update needed
[2026-06-27 09:55:56,731.731 INFO    ] Checking for camera pi updates...
[2026-06-27 09:55:56,752.752 INFO    ] 200
[2026-06-27 09:55:56,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:55:56,777.777 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:55:56,821.821 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:55:56,823.823 INFO    ] No camera update needed
[2026-06-27 09:55:56,824.824 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:55:56,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:55:56,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:55:56,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:55:58,871.871 INFO    ] ================================================
[2026-06-27 09:55:58,886.886 INFO    ] Launching Daemon at Sat Jun 27 09:55:58 IST 2026
[2026-06-27 09:55:58,897.897 INFO    ] ================================================
[2026-06-27 09:55:59,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:55:59
[2026-06-27 09:55:59,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:55:59,769.769 INFO    ] Initializing speech engine...
[2026-06-27 09:55:59,777.777 INFO    ] 2026-06-27 09:55:59
[2026-06-27 09:55:59,985.985 INFO    ] 2026-06-27 09:55:59
[2026-06-27 09:56:00,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:56:00,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:56:00,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:56:00,395.395 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:56:00,427.427 INFO    ] time= 27/06/2026 09:56:00
[2026-06-27 09:56:00,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:56:00,436.436 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:56:00,501.501 INFO    ] No existing commands found in stream
[2026-06-27 09:56:05,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:56:05,519.519 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-27 09:56:09,886.886 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 09:56:09,887.887 INFO    ] Checking for system updates...
[2026-06-27 09:56:09,909.909 INFO    ] 200
[2026-06-27 09:56:09,910.910 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:56:09,942.942 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:56:09,943.943 INFO    ] No update needed
[2026-06-27 09:56:09,945.945 INFO    ] Checking for camera pi updates...
[2026-06-27 09:56:09,965.965 INFO    ] 200
[2026-06-27 09:56:09,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:56:09,991.991 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:56:10,029.029 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:56:10,030.030 INFO    ] No camera update needed
[2026-06-27 09:56:10,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:56:10,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:56:10,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:56:10,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:56:12,079.079 INFO    ] ================================================
[2026-06-27 09:56:12,095.095 INFO    ] Launching Daemon at Sat Jun 27 09:56:12 IST 2026
[2026-06-27 09:56:12,105.105 INFO    ] ================================================
[2026-06-27 09:56:12,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:56:12
[2026-06-27 09:56:12,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:56:12,916.916 INFO    ] Initializing speech engine...
[2026-06-27 09:56:12,920.920 INFO    ] 2026-06-27 09:56:12
[2026-06-27 09:56:13,125.125 INFO    ] 2026-06-27 09:56:13
[2026-06-27 09:56:13,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:56:13,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:56:13,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:56:13,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:56:13,539.539 INFO    ] time= 27/06/2026 09:56:13
[2026-06-27 09:56:13,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:56:13,571.571 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:56:13,637.637 INFO    ] No existing commands found in stream
[2026-06-27 09:56:18,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:56:18,650.650 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-27 09:56:20,225.225 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 09:56:20,226.226 INFO    ] Checking for system updates...
[2026-06-27 09:56:20,248.248 INFO    ] 200
[2026-06-27 09:56:20,250.250 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:56:20,283.283 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:56:20,285.285 INFO    ] No update needed
[2026-06-27 09:56:20,286.286 INFO    ] Checking for camera pi updates...
[2026-06-27 09:56:20,307.307 INFO    ] 200
[2026-06-27 09:56:20,309.309 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:56:20,334.334 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:56:20,382.382 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:56:20,383.383 INFO    ] No camera update needed
[2026-06-27 09:56:20,385.385 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:56:20,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:56:20,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:56:20,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:56:22,430.430 INFO    ] ================================================
[2026-06-27 09:56:22,446.446 INFO    ] Launching Daemon at Sat Jun 27 09:56:22 IST 2026
[2026-06-27 09:56:22,457.457 INFO    ] ================================================
[2026-06-27 09:56:22,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:56:22
[2026-06-27 09:56:23,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:56:23,285.285 INFO    ] Initializing speech engine...
[2026-06-27 09:56:23,291.291 INFO    ] 2026-06-27 09:56:23
[2026-06-27 09:56:23,497.497 INFO    ] 2026-06-27 09:56:23
[2026-06-27 09:56:23,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:56:23,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:56:23,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:56:23,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:56:23,907.907 INFO    ] time= 27/06/2026 09:56:23
[2026-06-27 09:56:23,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:56:23,942.942 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:56:24,014.014 INFO    ] No existing commands found in stream
[2026-06-27 09:56:29,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:56:29,026.026 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-27 09:56:31,676.676 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:56:31,678.678 INFO    ] Checking for system updates...
[2026-06-27 09:56:31,704.704 INFO    ] 200
[2026-06-27 09:56:31,705.705 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:56:31,743.743 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:56:31,745.745 INFO    ] No update needed
[2026-06-27 09:56:31,747.747 INFO    ] Checking for camera pi updates...
[2026-06-27 09:56:31,773.773 INFO    ] 200
[2026-06-27 09:56:31,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:56:31,802.802 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:56:31,932.932 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:56:31,934.934 INFO    ] No camera update needed
[2026-06-27 09:56:31,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:56:31,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:56:31,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:56:31,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:56:33,984.984 INFO    ] ================================================
[2026-06-27 09:56:34,000.000 INFO    ] Launching Daemon at Sat Jun 27 09:56:33 IST 2026
[2026-06-27 09:56:34,011.011 INFO    ] ================================================
[2026-06-27 09:56:34,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:56:34
[2026-06-27 09:56:34,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:56:34,814.814 INFO    ] Initializing speech engine...
[2026-06-27 09:56:34,825.825 INFO    ] 2026-06-27 09:56:34
[2026-06-27 09:56:35,032.032 INFO    ] 2026-06-27 09:56:35
[2026-06-27 09:56:35,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:56:35,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:56:35,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:56:35,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:56:35,456.456 INFO    ] time= 27/06/2026 09:56:35
[2026-06-27 09:56:35,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:56:35,485.485 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:56:35,553.553 INFO    ] No existing commands found in stream
[2026-06-27 09:56:40,562.562 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:56:40,565.565 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-27 09:56:41,647.647 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:56:41,648.648 INFO    ] Checking for system updates...
[2026-06-27 09:56:41,669.669 INFO    ] 200
[2026-06-27 09:56:41,671.671 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:56:41,704.704 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:56:41,705.705 INFO    ] No update needed
[2026-06-27 09:56:41,707.707 INFO    ] Checking for camera pi updates...
[2026-06-27 09:56:41,726.726 INFO    ] 200
[2026-06-27 09:56:41,728.728 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:56:41,751.751 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:56:41,793.793 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:56:41,794.794 INFO    ] No camera update needed
[2026-06-27 09:56:41,796.796 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:56:41,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:56:41,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:56:41,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:56:43,843.843 INFO    ] ================================================
[2026-06-27 09:56:43,858.858 INFO    ] Launching Daemon at Sat Jun 27 09:56:43 IST 2026
[2026-06-27 09:56:43,869.869 INFO    ] ================================================
[2026-06-27 09:56:44,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:56:44
[2026-06-27 09:56:44,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:56:44,676.676 INFO    ] Initializing speech engine...
[2026-06-27 09:56:44,680.680 INFO    ] 2026-06-27 09:56:44
[2026-06-27 09:56:44,874.874 INFO    ] 2026-06-27 09:56:44
[2026-06-27 09:56:44,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:56:45,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:56:45,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:56:45,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:56:45,349.349 INFO    ] time= 27/06/2026 09:56:45
[2026-06-27 09:56:45,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:56:45,383.383 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:56:45,450.450 INFO    ] No existing commands found in stream
[2026-06-27 09:56:50,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:56:50,468.468 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-27 09:56:53,055.055 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 09:56:53,056.056 INFO    ] Checking for system updates...
[2026-06-27 09:56:53,079.079 INFO    ] 200
[2026-06-27 09:56:53,081.081 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:56:53,117.117 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:56:53,119.119 INFO    ] No update needed
[2026-06-27 09:56:53,120.120 INFO    ] Checking for camera pi updates...
[2026-06-27 09:56:53,145.145 INFO    ] 200
[2026-06-27 09:56:53,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:56:53,172.172 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:56:53,210.210 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:56:53,211.211 INFO    ] No camera update needed
[2026-06-27 09:56:53,213.213 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:56:53,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:56:53,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:56:53,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:56:55,260.260 INFO    ] ================================================
[2026-06-27 09:56:55,276.276 INFO    ] Launching Daemon at Sat Jun 27 09:56:55 IST 2026
[2026-06-27 09:56:55,286.286 INFO    ] ================================================
[2026-06-27 09:56:55,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:56:55
[2026-06-27 09:56:56,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:56:56,184.184 INFO    ] Initializing speech engine...
[2026-06-27 09:56:56,191.191 INFO    ] 2026-06-27 09:56:56
[2026-06-27 09:56:56,400.400 INFO    ] 2026-06-27 09:56:56
[2026-06-27 09:56:56,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:56:56,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:56:56,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:56:56,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:56:56,840.840 INFO    ] time= 27/06/2026 09:56:56
[2026-06-27 09:56:56,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:56:56,851.851 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:56:56,918.918 INFO    ] No existing commands found in stream
[2026-06-27 09:57:01,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:57:01,933.933 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-27 09:57:03,241.241 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 09:57:03,243.243 INFO    ] Checking for system updates...
[2026-06-27 09:57:03,265.265 INFO    ] 200
[2026-06-27 09:57:03,266.266 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:57:03,297.297 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:57:03,299.299 INFO    ] No update needed
[2026-06-27 09:57:03,300.300 INFO    ] Checking for camera pi updates...
[2026-06-27 09:57:03,321.321 INFO    ] 200
[2026-06-27 09:57:03,322.322 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:57:03,348.348 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:57:03,398.398 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:57:03,400.400 INFO    ] No camera update needed
[2026-06-27 09:57:03,401.401 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:57:03,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:57:03,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:57:03,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:57:05,449.449 INFO    ] ================================================
[2026-06-27 09:57:05,464.464 INFO    ] Launching Daemon at Sat Jun 27 09:57:05 IST 2026
[2026-06-27 09:57:05,475.475 INFO    ] ================================================
[2026-06-27 09:57:05,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:57:05
[2026-06-27 09:57:06,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:57:06,332.332 INFO    ] Initializing speech engine...
[2026-06-27 09:57:06,354.354 INFO    ] 2026-06-27 09:57:06
[2026-06-27 09:57:06,594.594 INFO    ] 2026-06-27 09:57:06
[2026-06-27 09:57:06,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:57:06,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:57:06,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:57:06,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:57:07,047.047 INFO    ] time= 27/06/2026 09:57:07
[2026-06-27 09:57:07,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:57:07,106.106 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:57:07,186.186 INFO    ] No existing commands found in stream
[2026-06-27 09:57:12,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:57:12,199.199 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-27 09:57:15,468.468 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 09:57:15,470.470 INFO    ] Checking for system updates...
[2026-06-27 09:57:15,491.491 INFO    ] 200
[2026-06-27 09:57:15,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:57:15,527.527 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:57:15,529.529 INFO    ] No update needed
[2026-06-27 09:57:15,530.530 INFO    ] Checking for camera pi updates...
[2026-06-27 09:57:15,557.557 INFO    ] 200
[2026-06-27 09:57:15,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:57:15,587.587 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:57:15,626.626 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:57:15,628.628 INFO    ] No camera update needed
[2026-06-27 09:57:15,629.629 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:57:15,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:57:15,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:57:15,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:57:17,675.675 INFO    ] ================================================
[2026-06-27 09:57:17,690.690 INFO    ] Launching Daemon at Sat Jun 27 09:57:17 IST 2026
[2026-06-27 09:57:17,701.701 INFO    ] ================================================
[2026-06-27 09:57:18,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:57:18
[2026-06-27 09:57:18,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:57:18,495.495 INFO    ] Initializing speech engine...
[2026-06-27 09:57:18,501.501 INFO    ] 2026-06-27 09:57:18
[2026-06-27 09:57:18,707.707 INFO    ] 2026-06-27 09:57:18
[2026-06-27 09:57:18,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:57:18,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:57:18,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:57:19,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:57:19,103.103 INFO    ] time= 27/06/2026 09:57:19
[2026-06-27 09:57:19,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:57:19,160.160 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:57:19,234.234 INFO    ] No existing commands found in stream
[2026-06-27 09:57:24,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:57:24,247.247 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-27 09:57:26,213.213 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:57:26,215.215 INFO    ] Checking for system updates...
[2026-06-27 09:57:26,238.238 INFO    ] 200
[2026-06-27 09:57:26,239.239 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:57:26,273.273 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:57:26,275.275 INFO    ] No update needed
[2026-06-27 09:57:26,276.276 INFO    ] Checking for camera pi updates...
[2026-06-27 09:57:26,297.297 INFO    ] 200
[2026-06-27 09:57:26,298.298 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:57:26,324.324 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:57:26,367.367 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:57:26,369.369 INFO    ] No camera update needed
[2026-06-27 09:57:26,370.370 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:57:26,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:57:26,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:57:26,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:57:28,422.422 INFO    ] ================================================
[2026-06-27 09:57:28,438.438 INFO    ] Launching Daemon at Sat Jun 27 09:57:28 IST 2026
[2026-06-27 09:57:28,448.448 INFO    ] ================================================
[2026-06-27 09:57:28,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:57:28
[2026-06-27 09:57:29,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:57:29,286.286 INFO    ] Initializing speech engine...
[2026-06-27 09:57:29,307.307 INFO    ] 2026-06-27 09:57:29
[2026-06-27 09:57:29,522.522 INFO    ] 2026-06-27 09:57:29
[2026-06-27 09:57:29,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:57:29,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:57:29,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:57:29,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:57:29,958.958 INFO    ] time= 27/06/2026 09:57:29
[2026-06-27 09:57:29,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:57:29,989.989 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:57:30,081.081 INFO    ] No existing commands found in stream
[2026-06-27 09:57:35,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:57:35,095.095 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-27 09:57:37,391.391 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 09:57:37,393.393 INFO    ] Checking for system updates...
[2026-06-27 09:57:37,414.414 INFO    ] 200
[2026-06-27 09:57:37,415.415 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:57:37,446.446 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:57:37,447.447 INFO    ] No update needed
[2026-06-27 09:57:37,449.449 INFO    ] Checking for camera pi updates...
[2026-06-27 09:57:37,468.468 INFO    ] 200
[2026-06-27 09:57:37,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:57:37,495.495 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:57:37,539.539 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:57:37,542.542 INFO    ] No camera update needed
[2026-06-27 09:57:37,544.544 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:57:37,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:57:37,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:57:37,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:57:39,596.596 INFO    ] ================================================
[2026-06-27 09:57:39,612.612 INFO    ] Launching Daemon at Sat Jun 27 09:57:39 IST 2026
[2026-06-27 09:57:39,627.627 INFO    ] ================================================
[2026-06-27 09:57:39,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:57:39
[2026-06-27 09:57:40,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:57:40,428.428 INFO    ] Initializing speech engine...
[2026-06-27 09:57:40,437.437 INFO    ] 2026-06-27 09:57:40
[2026-06-27 09:57:40,649.649 INFO    ] 2026-06-27 09:57:40
[2026-06-27 09:57:40,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:57:40,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:57:40,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:57:41,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:57:41,069.069 INFO    ] time= 27/06/2026 09:57:41
[2026-06-27 09:57:41,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:57:41,099.099 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:57:41,166.166 INFO    ] No existing commands found in stream
[2026-06-27 09:57:46,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:57:46,179.179 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-27 09:57:49,947.947 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 09:57:49,948.948 INFO    ] Checking for system updates...
[2026-06-27 09:57:49,969.969 INFO    ] 200
[2026-06-27 09:57:49,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:57:50,004.004 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:57:50,005.005 INFO    ] No update needed
[2026-06-27 09:57:50,006.006 INFO    ] Checking for camera pi updates...
[2026-06-27 09:57:50,028.028 INFO    ] 200
[2026-06-27 09:57:50,029.029 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:57:50,053.053 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:57:50,095.095 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:57:50,096.096 INFO    ] No camera update needed
[2026-06-27 09:57:50,098.098 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:57:50,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:57:50,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:57:50,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:57:52,148.148 INFO    ] ================================================
[2026-06-27 09:57:52,164.164 INFO    ] Launching Daemon at Sat Jun 27 09:57:52 IST 2026
[2026-06-27 09:57:52,174.174 INFO    ] ================================================
[2026-06-27 09:57:52,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:57:52
[2026-06-27 09:57:52,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:57:52,990.990 INFO    ] Initializing speech engine...
[2026-06-27 09:57:53,001.001 INFO    ] 2026-06-27 09:57:52
[2026-06-27 09:57:53,206.206 INFO    ] 2026-06-27 09:57:53
[2026-06-27 09:57:53,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:57:53,421.421 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:57:53,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:57:53,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:57:53,628.628 INFO    ] time= 27/06/2026 09:57:53
[2026-06-27 09:57:53,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:57:53,657.657 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:57:53,722.722 INFO    ] No existing commands found in stream
[2026-06-27 09:57:58,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:57:58,736.736 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-27 09:58:02,276.276 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 09:58:02,278.278 INFO    ] Checking for system updates...
[2026-06-27 09:58:02,315.315 INFO    ] 200
[2026-06-27 09:58:02,317.317 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:58:02,358.358 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:58:02,360.360 INFO    ] No update needed
[2026-06-27 09:58:02,362.362 INFO    ] Checking for camera pi updates...
[2026-06-27 09:58:02,388.388 INFO    ] 200
[2026-06-27 09:58:02,390.390 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:58:02,421.421 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:58:02,445.445 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:58:02,447.447 INFO    ] No camera update needed
[2026-06-27 09:58:02,449.449 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:58:02,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:58:02,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:58:02,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:58:04,502.502 INFO    ] ================================================
[2026-06-27 09:58:04,517.517 INFO    ] Launching Daemon at Sat Jun 27 09:58:04 IST 2026
[2026-06-27 09:58:04,528.528 INFO    ] ================================================
[2026-06-27 09:58:04,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:58:04
[2026-06-27 09:58:05,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:58:05,306.306 INFO    ] Initializing speech engine...
[2026-06-27 09:58:05,316.316 INFO    ] 2026-06-27 09:58:05
[2026-06-27 09:58:05,522.522 INFO    ] 2026-06-27 09:58:05
[2026-06-27 09:58:05,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:58:05,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:58:05,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:58:05,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:58:05,920.920 INFO    ] time= 27/06/2026 09:58:05
[2026-06-27 09:58:05,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:58:05,977.977 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:58:06,049.049 INFO    ] No existing commands found in stream
[2026-06-27 09:58:11,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:58:11,060.060 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-27 09:58:15,433.433 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 09:58:15,434.434 INFO    ] Checking for system updates...
[2026-06-27 09:58:15,456.456 INFO    ] 200
[2026-06-27 09:58:15,457.457 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:58:15,487.487 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:58:15,489.489 INFO    ] No update needed
[2026-06-27 09:58:15,490.490 INFO    ] Checking for camera pi updates...
[2026-06-27 09:58:15,509.509 INFO    ] 200
[2026-06-27 09:58:15,511.511 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:58:15,538.538 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:58:15,587.587 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:58:15,589.589 INFO    ] No camera update needed
[2026-06-27 09:58:15,590.590 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:58:15,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:58:15,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:58:15,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:58:17,636.636 INFO    ] ================================================
[2026-06-27 09:58:17,652.652 INFO    ] Launching Daemon at Sat Jun 27 09:58:17 IST 2026
[2026-06-27 09:58:17,663.663 INFO    ] ================================================
[2026-06-27 09:58:18,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:58:18
[2026-06-27 09:58:18,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:58:18,568.568 INFO    ] Initializing speech engine...
[2026-06-27 09:58:18,572.572 INFO    ] 2026-06-27 09:58:18
[2026-06-27 09:58:18,782.782 INFO    ] 2026-06-27 09:58:18
[2026-06-27 09:58:18,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:58:18,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:58:19,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:58:19,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:58:19,211.211 INFO    ] time= 27/06/2026 09:58:19
[2026-06-27 09:58:19,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:58:19,241.241 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:58:19,309.309 INFO    ] No existing commands found in stream
[2026-06-27 09:58:24,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:58:24,328.328 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-27 09:58:28,003.003 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:58:28,004.004 INFO    ] Checking for system updates...
[2026-06-27 09:58:28,027.027 INFO    ] 200
[2026-06-27 09:58:28,029.029 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:58:28,062.062 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:58:28,064.064 INFO    ] No update needed
[2026-06-27 09:58:28,065.065 INFO    ] Checking for camera pi updates...
[2026-06-27 09:58:28,085.085 INFO    ] 200
[2026-06-27 09:58:28,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:58:28,111.111 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:58:28,158.158 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:58:28,159.159 INFO    ] No camera update needed
[2026-06-27 09:58:28,161.161 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:58:28,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:58:28,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:58:28,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:58:30,207.207 INFO    ] ================================================
[2026-06-27 09:58:30,222.222 INFO    ] Launching Daemon at Sat Jun 27 09:58:30 IST 2026
[2026-06-27 09:58:30,233.233 INFO    ] ================================================
[2026-06-27 09:58:30,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:58:30
[2026-06-27 09:58:30,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:58:31,110.110 INFO    ] Initializing speech engine...
[2026-06-27 09:58:31,115.115 INFO    ] 2026-06-27 09:58:31
[2026-06-27 09:58:31,309.309 INFO    ] 2026-06-27 09:58:31
[2026-06-27 09:58:31,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:58:31,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:58:31,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:58:31,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:58:31,711.711 INFO    ] time= 27/06/2026 09:58:31
[2026-06-27 09:58:31,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:58:31,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:58:31,902.902 INFO    ] No existing commands found in stream
[2026-06-27 09:58:36,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:58:36,916.916 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-27 09:58:40,835.835 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:58:40,836.836 INFO    ] Checking for system updates...
[2026-06-27 09:58:40,857.857 INFO    ] 200
[2026-06-27 09:58:40,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:58:40,889.889 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:58:40,890.890 INFO    ] No update needed
[2026-06-27 09:58:40,892.892 INFO    ] Checking for camera pi updates...
[2026-06-27 09:58:40,912.912 INFO    ] 200
[2026-06-27 09:58:40,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:58:40,936.936 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:58:41,079.079 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:58:41,081.081 INFO    ] No camera update needed
[2026-06-27 09:58:41,082.082 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:58:41,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:58:41,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:58:41,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:58:43,128.128 INFO    ] ================================================
[2026-06-27 09:58:43,143.143 INFO    ] Launching Daemon at Sat Jun 27 09:58:43 IST 2026
[2026-06-27 09:58:43,155.155 INFO    ] ================================================
[2026-06-27 09:58:43,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:58:43
[2026-06-27 09:58:43,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:58:43,988.988 INFO    ] Initializing speech engine...
[2026-06-27 09:58:43,991.991 INFO    ] 2026-06-27 09:58:43
[2026-06-27 09:58:44,187.187 INFO    ] 2026-06-27 09:58:44
[2026-06-27 09:58:44,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:58:44,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:58:44,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:58:44,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:58:44,659.659 INFO    ] time= 27/06/2026 09:58:44
[2026-06-27 09:58:44,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:58:44,717.717 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:58:44,796.796 INFO    ] No existing commands found in stream
[2026-06-27 09:58:49,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:58:49,808.808 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-27 09:58:52,851.851 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:58:52,852.852 INFO    ] Checking for system updates...
[2026-06-27 09:58:52,873.873 INFO    ] 200
[2026-06-27 09:58:52,875.875 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:58:52,905.905 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:58:52,907.907 INFO    ] No update needed
[2026-06-27 09:58:52,908.908 INFO    ] Checking for camera pi updates...
[2026-06-27 09:58:52,929.929 INFO    ] 200
[2026-06-27 09:58:52,931.931 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:58:52,956.956 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:58:52,995.995 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:58:52,996.996 INFO    ] No camera update needed
[2026-06-27 09:58:52,997.997 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:58:52,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:58:53,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:58:53,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:58:55,043.043 INFO    ] ================================================
[2026-06-27 09:58:55,059.059 INFO    ] Launching Daemon at Sat Jun 27 09:58:55 IST 2026
[2026-06-27 09:58:55,070.070 INFO    ] ================================================
[2026-06-27 09:58:55,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:58:55
[2026-06-27 09:58:55,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:58:55,939.939 INFO    ] Initializing speech engine...
[2026-06-27 09:58:55,943.943 INFO    ] 2026-06-27 09:58:55
[2026-06-27 09:58:56,152.152 INFO    ] 2026-06-27 09:58:56
[2026-06-27 09:58:56,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:58:56,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:58:56,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:58:56,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:58:56,598.598 INFO    ] time= 27/06/2026 09:58:56
[2026-06-27 09:58:56,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:58:56,605.605 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:58:56,673.673 INFO    ] No existing commands found in stream
[2026-06-27 09:59:01,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:59:01,688.688 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-27 09:59:02,313.313 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:59:02,315.315 INFO    ] Checking for system updates...
[2026-06-27 09:59:02,336.336 INFO    ] 200
[2026-06-27 09:59:02,338.338 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:59:02,368.368 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:59:02,370.370 INFO    ] No update needed
[2026-06-27 09:59:02,372.372 INFO    ] Checking for camera pi updates...
[2026-06-27 09:59:02,391.391 INFO    ] 200
[2026-06-27 09:59:02,393.393 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:59:02,419.419 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:59:02,445.445 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:59:02,446.446 INFO    ] No camera update needed
[2026-06-27 09:59:02,448.448 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:59:02,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:59:02,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:59:02,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:59:04,494.494 INFO    ] ================================================
[2026-06-27 09:59:04,510.510 INFO    ] Launching Daemon at Sat Jun 27 09:59:04 IST 2026
[2026-06-27 09:59:04,522.522 INFO    ] ================================================
[2026-06-27 09:59:04,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:59:04
[2026-06-27 09:59:05,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:59:05,354.354 INFO    ] Initializing speech engine...
[2026-06-27 09:59:05,356.356 INFO    ] 2026-06-27 09:59:05
[2026-06-27 09:59:05,563.563 INFO    ] 2026-06-27 09:59:05
[2026-06-27 09:59:05,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:59:05,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:59:05,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:59:05,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:59:05,985.985 INFO    ] time= 27/06/2026 09:59:05
[2026-06-27 09:59:06,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:59:06,019.019 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:59:06,087.087 INFO    ] No existing commands found in stream
[2026-06-27 09:59:11,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:59:11,099.099 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-27 09:59:12,340.340 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 09:59:12,341.341 INFO    ] Checking for system updates...
[2026-06-27 09:59:12,363.363 INFO    ] 200
[2026-06-27 09:59:12,365.365 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:59:12,396.396 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:59:12,397.397 INFO    ] No update needed
[2026-06-27 09:59:12,398.398 INFO    ] Checking for camera pi updates...
[2026-06-27 09:59:12,418.418 INFO    ] 200
[2026-06-27 09:59:12,419.419 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:59:12,443.443 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:59:12,490.490 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:59:12,491.491 INFO    ] No camera update needed
[2026-06-27 09:59:12,493.493 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:59:12,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:59:12,497.497 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:59:12,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:59:14,539.539 INFO    ] ================================================
[2026-06-27 09:59:14,556.556 INFO    ] Launching Daemon at Sat Jun 27 09:59:14 IST 2026
[2026-06-27 09:59:14,567.567 INFO    ] ================================================
[2026-06-27 09:59:14,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:59:14
[2026-06-27 09:59:15,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:59:15,465.465 INFO    ] Initializing speech engine...
[2026-06-27 09:59:15,472.472 INFO    ] 2026-06-27 09:59:15
[2026-06-27 09:59:15,676.676 INFO    ] 2026-06-27 09:59:15
[2026-06-27 09:59:15,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:59:15,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:59:15,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:59:16,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:59:16,122.122 INFO    ] time= 27/06/2026 09:59:16
[2026-06-27 09:59:16,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:59:16,130.130 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:59:16,197.197 INFO    ] No existing commands found in stream
[2026-06-27 09:59:21,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:59:21,215.215 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-27 09:59:21,652.652 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 09:59:21,654.654 INFO    ] Checking for system updates...
[2026-06-27 09:59:21,676.676 INFO    ] 200
[2026-06-27 09:59:21,678.678 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:59:21,711.711 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:59:21,713.713 INFO    ] No update needed
[2026-06-27 09:59:21,714.714 INFO    ] Checking for camera pi updates...
[2026-06-27 09:59:21,735.735 INFO    ] 200
[2026-06-27 09:59:21,736.736 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:59:21,761.761 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:59:21,799.799 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:59:21,801.801 INFO    ] No camera update needed
[2026-06-27 09:59:21,802.802 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:59:21,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:59:21,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:59:21,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:59:23,850.850 INFO    ] ================================================
[2026-06-27 09:59:23,866.866 INFO    ] Launching Daemon at Sat Jun 27 09:59:23 IST 2026
[2026-06-27 09:59:23,878.878 INFO    ] ================================================
[2026-06-27 09:59:24,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:59:24
[2026-06-27 09:59:24,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:59:24,658.658 INFO    ] Initializing speech engine...
[2026-06-27 09:59:24,671.671 INFO    ] 2026-06-27 09:59:24
[2026-06-27 09:59:24,879.879 INFO    ] 2026-06-27 09:59:24
[2026-06-27 09:59:24,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:59:25,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:59:25,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:59:25,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:59:25,319.319 INFO    ] time= 27/06/2026 09:59:25
[2026-06-27 09:59:25,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:59:25,326.326 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:59:25,394.394 INFO    ] No existing commands found in stream
[2026-06-27 09:59:30,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:59:30,411.411 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-27 09:59:32,610.610 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 09:59:32,612.612 INFO    ] Checking for system updates...
[2026-06-27 09:59:32,633.633 INFO    ] 200
[2026-06-27 09:59:32,634.634 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:59:32,665.665 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:59:32,667.667 INFO    ] No update needed
[2026-06-27 09:59:32,668.668 INFO    ] Checking for camera pi updates...
[2026-06-27 09:59:32,692.692 INFO    ] 200
[2026-06-27 09:59:32,694.694 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:59:32,717.717 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:59:32,761.761 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:59:32,762.762 INFO    ] No camera update needed
[2026-06-27 09:59:32,764.764 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:59:32,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:59:32,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:59:32,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:59:34,811.811 INFO    ] ================================================
[2026-06-27 09:59:34,827.827 INFO    ] Launching Daemon at Sat Jun 27 09:59:34 IST 2026
[2026-06-27 09:59:34,838.838 INFO    ] ================================================
[2026-06-27 09:59:35,194.194 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:59:35
[2026-06-27 09:59:35,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:59:35,655.655 INFO    ] Initializing speech engine...
[2026-06-27 09:59:35,660.660 INFO    ] 2026-06-27 09:59:35
[2026-06-27 09:59:35,863.863 INFO    ] 2026-06-27 09:59:35
[2026-06-27 09:59:35,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:59:36,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:59:36,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:59:36,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:59:36,276.276 INFO    ] time= 27/06/2026 09:59:36
[2026-06-27 09:59:36,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:59:36,309.309 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:59:36,375.375 INFO    ] No existing commands found in stream
[2026-06-27 09:59:41,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:59:41,388.388 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-27 09:59:45,338.338 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 09:59:45,339.339 INFO    ] Checking for system updates...
[2026-06-27 09:59:45,360.360 INFO    ] 200
[2026-06-27 09:59:45,362.362 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:59:45,396.396 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:59:45,397.397 INFO    ] No update needed
[2026-06-27 09:59:45,398.398 INFO    ] Checking for camera pi updates...
[2026-06-27 09:59:45,423.423 INFO    ] 200
[2026-06-27 09:59:45,425.425 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:59:45,449.449 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:59:45,498.498 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 09:59:45,499.499 INFO    ] No camera update needed
[2026-06-27 09:59:45,501.501 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:59:45,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:59:45,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:59:45,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:59:47,549.549 INFO    ] ================================================
[2026-06-27 09:59:47,565.565 INFO    ] Launching Daemon at Sat Jun 27 09:59:47 IST 2026
[2026-06-27 09:59:47,576.576 INFO    ] ================================================
[2026-06-27 09:59:47,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:59:47
[2026-06-27 09:59:48,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:59:48,458.458 INFO    ] Initializing speech engine...
[2026-06-27 09:59:48,470.470 INFO    ] 2026-06-27 09:59:48
[2026-06-27 09:59:48,685.685 INFO    ] 2026-06-27 09:59:48
[2026-06-27 09:59:48,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:59:48,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:59:48,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 09:59:49,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 09:59:49,110.110 INFO    ] time= 27/06/2026 09:59:49
[2026-06-27 09:59:49,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 09:59:49,145.145 INFO    ] Checking for existing commands in stream...
[2026-06-27 09:59:49,214.214 INFO    ] No existing commands found in stream
[2026-06-27 09:59:54,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 09:59:54,227.227 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-27 09:59:56,381.381 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 09:59:56,382.382 INFO    ] Checking for system updates...
[2026-06-27 09:59:56,404.404 INFO    ] 200
[2026-06-27 09:59:56,405.405 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:59:56,436.436 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:59:56,438.438 INFO    ] No update needed
[2026-06-27 09:59:56,439.439 INFO    ] Checking for camera pi updates...
[2026-06-27 09:59:56,459.459 INFO    ] 200
[2026-06-27 09:59:56,461.461 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 09:59:56,485.485 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 09:59:56,519.519 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 09:59:56,520.520 INFO    ] No camera update needed
[2026-06-27 09:59:56,521.521 INFO    ] Script finished. Safe exiting...
[2026-06-27 09:59:56,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 09:59:56,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 09:59:56,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 09:59:58,569.569 INFO    ] ================================================
[2026-06-27 09:59:58,585.585 INFO    ] Launching Daemon at Sat Jun 27 09:59:58 IST 2026
[2026-06-27 09:59:58,596.596 INFO    ] ================================================
[2026-06-27 09:59:58,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 09:59:58
[2026-06-27 09:59:59,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 09:59:59,480.480 INFO    ] Initializing speech engine...
[2026-06-27 09:59:59,484.484 INFO    ] 2026-06-27 09:59:59
[2026-06-27 09:59:59,694.694 INFO    ] 2026-06-27 09:59:59
[2026-06-27 09:59:59,723.723 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 09:59:59,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 09:59:59,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:00:00,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:00:00,115.115 INFO    ] time= 27/06/2026 10:00:00
[2026-06-27 10:00:00,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:00:00,145.145 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:00:00,213.213 INFO    ] No existing commands found in stream
[2026-06-27 10:00:05,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:00:05,223.223 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-27 10:00:10,048.048 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 10:00:10,050.050 INFO    ] Checking for system updates...
[2026-06-27 10:00:10,072.072 INFO    ] 200
[2026-06-27 10:00:10,074.074 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:00:10,125.125 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:00:10,128.128 INFO    ] No update needed
[2026-06-27 10:00:10,131.131 INFO    ] Checking for camera pi updates...
[2026-06-27 10:00:10,176.176 INFO    ] 200
[2026-06-27 10:00:10,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:00:10,221.221 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:00:10,263.263 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:00:10,265.265 INFO    ] No camera update needed
[2026-06-27 10:00:10,266.266 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:00:10,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:00:10,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:00:10,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:00:12,314.314 INFO    ] ================================================
[2026-06-27 10:00:12,331.331 INFO    ] Launching Daemon at Sat Jun 27 10:00:12 IST 2026
[2026-06-27 10:00:12,345.345 INFO    ] ================================================
[2026-06-27 10:00:22,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:00:12
[2026-06-27 10:00:23,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:00:23,480.480 INFO    ] Initializing speech engine...
[2026-06-27 10:00:23,491.491 INFO    ] 2026-06-27 10:00:23
[2026-06-27 10:00:23,716.716 INFO    ] 2026-06-27 10:00:23
[2026-06-27 10:00:23,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:00:23,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:00:23,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:00:24,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:00:24,151.151 INFO    ] time= 27/06/2026 10:00:24
[2026-06-27 10:00:24,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:00:24,201.201 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:00:24,295.295 INFO    ] No existing commands found in stream
[2026-06-27 10:00:29,304.304 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:00:29,307.307 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-27 10:00:30,748.748 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 10:00:30,749.749 INFO    ] Checking for system updates...
[2026-06-27 10:00:30,770.770 INFO    ] 200
[2026-06-27 10:00:30,771.771 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:00:30,802.802 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:00:30,803.803 INFO    ] No update needed
[2026-06-27 10:00:30,804.804 INFO    ] Checking for camera pi updates...
[2026-06-27 10:00:30,824.824 INFO    ] 200
[2026-06-27 10:00:30,826.826 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:00:30,849.849 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:00:30,900.900 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:00:30,901.901 INFO    ] No camera update needed
[2026-06-27 10:00:30,902.902 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:00:30,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:00:30,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:00:30,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:00:32,952.952 INFO    ] ================================================
[2026-06-27 10:00:41,873.873 INFO    ] Launching Daemon at Sat Jun 27 10:00:41 IST 2026
[2026-06-27 10:00:41,885.885 INFO    ] ================================================
[2026-06-27 10:00:42,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:00:42
[2026-06-27 10:00:42,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:00:42,867.867 INFO    ] Initializing speech engine...
[2026-06-27 10:00:42,876.876 INFO    ] 2026-06-27 10:00:42
[2026-06-27 10:00:43,095.095 INFO    ] 2026-06-27 10:00:43
[2026-06-27 10:00:44,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:00:44,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:00:44,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:00:44,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:00:44,570.570 INFO    ] time= 27/06/2026 10:00:44
[2026-06-27 10:00:44,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:00:44,572.572 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:00:44,626.626 INFO    ] No existing commands found in stream
[2026-06-27 10:00:49,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:00:49,638.638 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-27 10:00:50,520.520 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:00:50,522.522 INFO    ] Checking for system updates...
[2026-06-27 10:00:50,542.542 INFO    ] 200
[2026-06-27 10:00:50,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:00:50,575.575 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:00:50,576.576 INFO    ] No update needed
[2026-06-27 10:00:50,577.577 INFO    ] Checking for camera pi updates...
[2026-06-27 10:00:50,597.597 INFO    ] 200
[2026-06-27 10:00:50,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:00:50,621.621 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:00:50,756.756 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:00:50,758.758 INFO    ] No camera update needed
[2026-06-27 10:00:50,759.759 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:00:50,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:00:50,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:00:50,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:00:52,804.804 INFO    ] ================================================
[2026-06-27 10:00:52,819.819 INFO    ] Launching Daemon at Sat Jun 27 10:00:52 IST 2026
[2026-06-27 10:00:52,830.830 INFO    ] ================================================
[2026-06-27 10:00:53,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:00:53
[2026-06-27 10:00:53,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:00:53,618.618 INFO    ] Initializing speech engine...
[2026-06-27 10:00:53,632.632 INFO    ] 2026-06-27 10:00:53
[2026-06-27 10:00:53,907.907 INFO    ] 2026-06-27 10:00:53
[2026-06-27 10:00:53,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:00:54,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:00:54,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:00:54,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:00:54,352.352 INFO    ] time= 27/06/2026 10:00:54
[2026-06-27 10:00:54,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:00:54,380.380 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:00:54,477.477 INFO    ] No existing commands found in stream
[2026-06-27 10:00:59,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:00:59,490.490 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-27 10:01:02,402.402 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 10:01:02,404.404 INFO    ] Checking for system updates...
[2026-06-27 10:01:02,429.429 INFO    ] 200
[2026-06-27 10:01:02,431.431 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:01:02,463.463 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:01:02,464.464 INFO    ] No update needed
[2026-06-27 10:01:02,466.466 INFO    ] Checking for camera pi updates...
[2026-06-27 10:01:02,487.487 INFO    ] 200
[2026-06-27 10:01:02,488.488 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:01:02,513.513 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:01:02,537.537 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:01:02,539.539 INFO    ] No camera update needed
[2026-06-27 10:01:02,540.540 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:01:02,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:01:02,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:01:02,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:01:04,588.588 INFO    ] ================================================
[2026-06-27 10:01:04,604.604 INFO    ] Launching Daemon at Sat Jun 27 10:01:04 IST 2026
[2026-06-27 10:01:04,615.615 INFO    ] ================================================
[2026-06-27 10:01:04,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:01:04
[2026-06-27 10:01:05,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:01:05,423.423 INFO    ] Initializing speech engine...
[2026-06-27 10:01:05,426.426 INFO    ] 2026-06-27 10:01:05
[2026-06-27 10:01:05,653.653 INFO    ] 2026-06-27 10:01:05
[2026-06-27 10:01:05,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:01:05,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:01:05,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:01:06,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:01:06,090.090 INFO    ] time= 27/06/2026 10:01:06
[2026-06-27 10:01:06,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:01:06,174.174 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:01:06,256.256 INFO    ] No existing commands found in stream
[2026-06-27 10:01:11,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:01:11,270.270 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-27 10:01:14,612.612 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 10:01:14,615.615 INFO    ] Checking for system updates...
[2026-06-27 10:01:14,653.653 INFO    ] 200
[2026-06-27 10:01:14,656.656 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:01:14,711.711 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:01:14,714.714 INFO    ] No update needed
[2026-06-27 10:01:14,717.717 INFO    ] Checking for camera pi updates...
[2026-06-27 10:01:14,752.752 INFO    ] 200
[2026-06-27 10:01:14,755.755 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:01:14,809.809 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:01:14,856.856 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:01:14,859.859 INFO    ] No camera update needed
[2026-06-27 10:01:14,861.861 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:01:14,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:01:14,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:01:14,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:01:16,909.909 INFO    ] ================================================
[2026-06-27 10:01:16,925.925 INFO    ] Launching Daemon at Sat Jun 27 10:01:16 IST 2026
[2026-06-27 10:01:16,937.937 INFO    ] ================================================
[2026-06-27 10:01:17,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:01:17
[2026-06-27 10:01:17,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:01:17,725.725 INFO    ] Initializing speech engine...
[2026-06-27 10:01:17,728.728 INFO    ] 2026-06-27 10:01:17
[2026-06-27 10:01:17,958.958 INFO    ] 2026-06-27 10:01:17
[2026-06-27 10:01:17,987.987 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:01:18,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:01:18,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:01:18,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:01:18,392.392 INFO    ] time= 27/06/2026 10:01:18
[2026-06-27 10:01:18,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:01:18,439.439 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:01:18,542.542 INFO    ] No existing commands found in stream
[2026-06-27 10:01:23,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:01:23,559.559 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-27 10:01:25,449.449 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 10:01:25,451.451 INFO    ] Checking for system updates...
[2026-06-27 10:01:25,472.472 INFO    ] 200
[2026-06-27 10:01:25,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:01:25,504.504 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:01:25,506.506 INFO    ] No update needed
[2026-06-27 10:01:25,507.507 INFO    ] Checking for camera pi updates...
[2026-06-27 10:01:25,527.527 INFO    ] 200
[2026-06-27 10:01:25,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:01:25,554.554 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:01:25,590.590 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:01:25,592.592 INFO    ] No camera update needed
[2026-06-27 10:01:25,593.593 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:01:25,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:01:25,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:01:25,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:01:27,642.642 INFO    ] ================================================
[2026-06-27 10:01:27,657.657 INFO    ] Launching Daemon at Sat Jun 27 10:01:27 IST 2026
[2026-06-27 10:01:27,668.668 INFO    ] ================================================
[2026-06-27 10:01:27,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:01:27
[2026-06-27 10:01:28,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:01:28,457.457 INFO    ] Initializing speech engine...
[2026-06-27 10:01:28,462.462 INFO    ] 2026-06-27 10:01:28
[2026-06-27 10:01:28,666.666 INFO    ] 2026-06-27 10:01:28
[2026-06-27 10:01:28,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:01:28,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:01:28,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:01:29,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:01:29,083.083 INFO    ] time= 27/06/2026 10:01:29
[2026-06-27 10:01:29,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:01:29,113.113 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:01:29,180.180 INFO    ] No existing commands found in stream
[2026-06-27 10:01:34,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:01:34,197.197 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-27 10:01:35,725.725 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 10:01:35,726.726 INFO    ] Checking for system updates...
[2026-06-27 10:01:35,747.747 INFO    ] 200
[2026-06-27 10:01:35,749.749 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:01:35,782.782 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:01:35,783.783 INFO    ] No update needed
[2026-06-27 10:01:35,785.785 INFO    ] Checking for camera pi updates...
[2026-06-27 10:01:35,804.804 INFO    ] 200
[2026-06-27 10:01:35,806.806 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:01:35,829.829 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:01:35,868.868 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:01:35,870.870 INFO    ] No camera update needed
[2026-06-27 10:01:35,871.871 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:01:35,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:01:35,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:01:35,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:01:37,916.916 INFO    ] ================================================
[2026-06-27 10:01:37,932.932 INFO    ] Launching Daemon at Sat Jun 27 10:01:37 IST 2026
[2026-06-27 10:01:37,943.943 INFO    ] ================================================
[2026-06-27 10:01:38,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:01:38
[2026-06-27 10:01:38,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:01:38,749.749 INFO    ] Initializing speech engine...
[2026-06-27 10:01:38,752.752 INFO    ] 2026-06-27 10:01:38
[2026-06-27 10:01:38,945.945 INFO    ] 2026-06-27 10:01:38
[2026-06-27 10:01:38,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:01:39,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:01:39,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:01:39,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:01:39,438.438 INFO    ] time= 27/06/2026 10:01:39
[2026-06-27 10:01:39,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:01:39,470.470 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:01:39,548.548 INFO    ] No existing commands found in stream
[2026-06-27 10:01:44,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:01:44,586.586 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-27 10:01:48,984.984 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 10:01:48,986.986 INFO    ] Checking for system updates...
[2026-06-27 10:01:49,006.006 INFO    ] 200
[2026-06-27 10:01:49,008.008 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:01:49,038.038 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:01:49,040.040 INFO    ] No update needed
[2026-06-27 10:01:49,041.041 INFO    ] Checking for camera pi updates...
[2026-06-27 10:01:49,060.060 INFO    ] 200
[2026-06-27 10:01:49,062.062 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:01:49,087.087 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:01:49,127.127 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:01:49,128.128 INFO    ] No camera update needed
[2026-06-27 10:01:49,130.130 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:01:49,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:01:49,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:01:49,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:01:51,175.175 INFO    ] ================================================
[2026-06-27 10:01:51,191.191 INFO    ] Launching Daemon at Sat Jun 27 10:01:51 IST 2026
[2026-06-27 10:01:51,202.202 INFO    ] ================================================
[2026-06-27 10:01:51,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:01:51
[2026-06-27 10:01:51,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:01:52,085.085 INFO    ] Initializing speech engine...
[2026-06-27 10:01:52,091.091 INFO    ] 2026-06-27 10:01:52
[2026-06-27 10:01:52,304.304 INFO    ] 2026-06-27 10:01:52
[2026-06-27 10:01:52,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:01:52,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:01:52,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:01:52,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:01:52,745.745 INFO    ] time= 27/06/2026 10:01:52
[2026-06-27 10:01:52,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:01:52,753.753 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:01:52,820.820 INFO    ] No existing commands found in stream
[2026-06-27 10:01:57,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:01:57,834.834 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-27 10:02:00,631.631 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:02:00,633.633 INFO    ] Checking for system updates...
[2026-06-27 10:02:00,655.655 INFO    ] 200
[2026-06-27 10:02:00,657.657 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:02:00,689.689 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:02:00,690.690 INFO    ] No update needed
[2026-06-27 10:02:00,692.692 INFO    ] Checking for camera pi updates...
[2026-06-27 10:02:00,713.713 INFO    ] 200
[2026-06-27 10:02:00,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:02:00,740.740 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:02:00,787.787 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:02:00,788.788 INFO    ] No camera update needed
[2026-06-27 10:02:00,789.789 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:02:00,791.791 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:02:00,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:02:00,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:02:02,839.839 INFO    ] ================================================
[2026-06-27 10:02:02,848.848 INFO    ] Launching Daemon at Sat Jun 27 10:02:02 IST 2026
[2026-06-27 10:02:02,854.854 INFO    ] ================================================
[2026-06-27 10:02:03,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:02:03
[2026-06-27 10:02:03,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:02:03,681.681 INFO    ] Initializing speech engine...
[2026-06-27 10:02:03,686.686 INFO    ] 2026-06-27 10:02:03
[2026-06-27 10:02:03,896.896 INFO    ] 2026-06-27 10:02:03
[2026-06-27 10:02:03,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:02:04,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:02:04,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:02:04,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:02:04,336.336 INFO    ] time= 27/06/2026 10:02:04
[2026-06-27 10:02:04,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:02:04,344.344 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:02:04,411.411 INFO    ] No existing commands found in stream
[2026-06-27 10:02:09,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:02:09,429.429 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-27 10:02:11,908.908 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:02:11,916.916 INFO    ] Checking for system updates...
[2026-06-27 10:02:11,937.937 INFO    ] 200
[2026-06-27 10:02:11,939.939 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:02:11,970.970 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:02:11,972.972 INFO    ] No update needed
[2026-06-27 10:02:11,973.973 INFO    ] Checking for camera pi updates...
[2026-06-27 10:02:11,993.993 INFO    ] 200
[2026-06-27 10:02:11,995.995 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:02:12,020.020 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:02:12,057.057 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:02:12,058.058 INFO    ] No camera update needed
[2026-06-27 10:02:12,059.059 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:02:12,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:02:12,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:02:12,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:02:14,107.107 INFO    ] ================================================
[2026-06-27 10:02:14,122.122 INFO    ] Launching Daemon at Sat Jun 27 10:02:14 IST 2026
[2026-06-27 10:02:14,133.133 INFO    ] ================================================
[2026-06-27 10:02:14,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:02:14
[2026-06-27 10:02:14,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:02:14,939.939 INFO    ] Initializing speech engine...
[2026-06-27 10:02:14,944.944 INFO    ] 2026-06-27 10:02:14
[2026-06-27 10:02:15,148.148 INFO    ] 2026-06-27 10:02:15
[2026-06-27 10:02:15,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:02:15,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:02:15,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:02:15,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:02:15,634.634 INFO    ] time= 27/06/2026 10:02:15
[2026-06-27 10:02:15,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:02:15,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:02:15,737.737 INFO    ] No existing commands found in stream
[2026-06-27 10:02:20,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:02:20,750.750 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-27 10:02:23,358.358 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 10:02:23,359.359 INFO    ] Checking for system updates...
[2026-06-27 10:02:23,382.382 INFO    ] 200
[2026-06-27 10:02:23,384.384 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:02:23,415.415 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:02:23,416.416 INFO    ] No update needed
[2026-06-27 10:02:23,418.418 INFO    ] Checking for camera pi updates...
[2026-06-27 10:02:23,437.437 INFO    ] 200
[2026-06-27 10:02:23,439.439 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:02:23,464.464 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:02:23,493.493 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:02:23,494.494 INFO    ] No camera update needed
[2026-06-27 10:02:23,496.496 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:02:23,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:02:23,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:02:23,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:02:25,543.543 INFO    ] ================================================
[2026-06-27 10:02:25,559.559 INFO    ] Launching Daemon at Sat Jun 27 10:02:25 IST 2026
[2026-06-27 10:02:25,570.570 INFO    ] ================================================
[2026-06-27 10:02:25,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:02:25
[2026-06-27 10:02:26,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:02:26,381.381 INFO    ] Initializing speech engine...
[2026-06-27 10:02:26,384.384 INFO    ] 2026-06-27 10:02:26
[2026-06-27 10:02:26,594.594 INFO    ] 2026-06-27 10:02:26
[2026-06-27 10:02:26,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:02:26,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:02:26,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:02:26,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:02:27,058.058 INFO    ] time= 27/06/2026 10:02:27
[2026-06-27 10:02:27,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:02:27,100.100 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:02:27,178.178 INFO    ] No existing commands found in stream
[2026-06-27 10:02:32,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:02:32,187.187 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-27 10:02:34,747.747 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 10:02:34,748.748 INFO    ] Checking for system updates...
[2026-06-27 10:02:34,770.770 INFO    ] 200
[2026-06-27 10:02:34,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:02:34,802.802 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:02:34,804.804 INFO    ] No update needed
[2026-06-27 10:02:34,805.805 INFO    ] Checking for camera pi updates...
[2026-06-27 10:02:34,826.826 INFO    ] 200
[2026-06-27 10:02:34,827.827 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:02:34,851.851 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:02:34,897.897 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:02:34,899.899 INFO    ] No camera update needed
[2026-06-27 10:02:34,900.900 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:02:34,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:02:34,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:02:34,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:02:36,940.940 INFO    ] ================================================
[2026-06-27 10:02:36,955.955 INFO    ] Launching Daemon at Sat Jun 27 10:02:36 IST 2026
[2026-06-27 10:02:36,966.966 INFO    ] ================================================
[2026-06-27 10:02:37,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:02:37
[2026-06-27 10:02:37,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:02:37,762.762 INFO    ] Initializing speech engine...
[2026-06-27 10:02:37,768.768 INFO    ] 2026-06-27 10:02:37
[2026-06-27 10:02:37,974.974 INFO    ] 2026-06-27 10:02:37
[2026-06-27 10:02:38,004.004 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:02:38,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:02:38,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:02:38,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:02:38,394.394 INFO    ] time= 27/06/2026 10:02:38
[2026-06-27 10:02:38,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:02:38,428.428 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:02:38,494.494 INFO    ] No existing commands found in stream
[2026-06-27 10:02:43,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:02:43,507.507 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-27 10:02:46,200.200 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 10:02:46,201.201 INFO    ] Checking for system updates...
[2026-06-27 10:02:46,224.224 INFO    ] 200
[2026-06-27 10:02:46,225.225 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:02:46,265.265 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:02:46,267.267 INFO    ] No update needed
[2026-06-27 10:02:46,269.269 INFO    ] Checking for camera pi updates...
[2026-06-27 10:02:46,294.294 INFO    ] 200
[2026-06-27 10:02:46,296.296 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:02:46,323.323 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:02:46,346.346 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:02:46,348.348 INFO    ] No camera update needed
[2026-06-27 10:02:46,349.349 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:02:46,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:02:46,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:02:46,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:02:48,399.399 INFO    ] ================================================
[2026-06-27 10:02:48,414.414 INFO    ] Launching Daemon at Sat Jun 27 10:02:48 IST 2026
[2026-06-27 10:02:48,426.426 INFO    ] ================================================
[2026-06-27 10:02:48,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:02:48
[2026-06-27 10:02:49,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:02:49,236.236 INFO    ] Initializing speech engine...
[2026-06-27 10:02:49,240.240 INFO    ] 2026-06-27 10:02:49
[2026-06-27 10:02:49,432.432 INFO    ] 2026-06-27 10:02:49
[2026-06-27 10:02:49,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:02:49,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:02:49,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:02:49,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:02:49,907.907 INFO    ] time= 27/06/2026 10:02:49
[2026-06-27 10:02:49,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:02:49,955.955 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:02:50,030.030 INFO    ] No existing commands found in stream
[2026-06-27 10:02:55,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:02:55,044.044 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-27 10:02:59,078.078 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 10:02:59,080.080 INFO    ] Checking for system updates...
[2026-06-27 10:02:59,101.101 INFO    ] 200
[2026-06-27 10:02:59,102.102 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:02:59,133.133 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:02:59,134.134 INFO    ] No update needed
[2026-06-27 10:02:59,136.136 INFO    ] Checking for camera pi updates...
[2026-06-27 10:02:59,157.157 INFO    ] 200
[2026-06-27 10:02:59,158.158 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:02:59,185.185 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:02:59,329.329 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:02:59,331.331 INFO    ] No camera update needed
[2026-06-27 10:02:59,332.332 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:02:59,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:02:59,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:02:59,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:03:01,380.380 INFO    ] ================================================
[2026-06-27 10:03:01,395.395 INFO    ] Launching Daemon at Sat Jun 27 10:03:01 IST 2026
[2026-06-27 10:03:01,407.407 INFO    ] ================================================
[2026-06-27 10:03:01,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:03:01
[2026-06-27 10:03:02,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:03:02,397.397 INFO    ] Initializing speech engine...
[2026-06-27 10:03:02,400.400 INFO    ] 2026-06-27 10:03:02
[2026-06-27 10:03:02,672.672 INFO    ] 2026-06-27 10:03:02
[2026-06-27 10:03:02,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:03:02,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:03:02,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:03:03,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:03:03,088.088 INFO    ] time= 27/06/2026 10:03:03
[2026-06-27 10:03:03,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:03:03,160.160 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:03:03,235.235 INFO    ] No existing commands found in stream
[2026-06-27 10:03:08,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:03:08,248.248 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-27 10:03:10,155.155 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 10:03:10,157.157 INFO    ] Checking for system updates...
[2026-06-27 10:03:10,177.177 INFO    ] 200
[2026-06-27 10:03:10,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:03:10,211.211 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:03:10,213.213 INFO    ] No update needed
[2026-06-27 10:03:10,214.214 INFO    ] Checking for camera pi updates...
[2026-06-27 10:03:10,234.234 INFO    ] 200
[2026-06-27 10:03:10,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:03:10,259.259 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:03:10,305.305 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:03:10,307.307 INFO    ] No camera update needed
[2026-06-27 10:03:10,308.308 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:03:10,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:03:10,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:03:10,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:03:12,353.353 INFO    ] ================================================
[2026-06-27 10:03:12,368.368 INFO    ] Launching Daemon at Sat Jun 27 10:03:12 IST 2026
[2026-06-27 10:03:12,379.379 INFO    ] ================================================
[2026-06-27 10:03:12,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:03:12
[2026-06-27 10:03:13,116.116 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:03:13,257.257 INFO    ] Initializing speech engine...
[2026-06-27 10:03:13,271.271 INFO    ] 2026-06-27 10:03:13
[2026-06-27 10:03:13,488.488 INFO    ] 2026-06-27 10:03:13
[2026-06-27 10:03:13,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:03:13,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:03:13,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:03:13,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:03:13,924.924 INFO    ] time= 27/06/2026 10:03:13
[2026-06-27 10:03:13,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:03:13,955.955 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:03:14,025.025 INFO    ] No existing commands found in stream
[2026-06-27 10:03:19,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:03:19,038.038 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-27 10:03:21,435.435 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:03:21,437.437 INFO    ] Checking for system updates...
[2026-06-27 10:03:21,458.458 INFO    ] 200
[2026-06-27 10:03:21,459.459 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:03:21,492.492 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:03:21,493.493 INFO    ] No update needed
[2026-06-27 10:03:21,495.495 INFO    ] Checking for camera pi updates...
[2026-06-27 10:03:21,518.518 INFO    ] 200
[2026-06-27 10:03:21,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:03:21,545.545 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:03:21,586.586 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:03:21,587.587 INFO    ] No camera update needed
[2026-06-27 10:03:21,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:03:21,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:03:21,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:03:21,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:03:23,635.635 INFO    ] ================================================
[2026-06-27 10:03:23,655.655 INFO    ] Launching Daemon at Sat Jun 27 10:03:23 IST 2026
[2026-06-27 10:03:23,666.666 INFO    ] ================================================
[2026-06-27 10:03:23,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:03:23
[2026-06-27 10:03:24,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:03:24,452.452 INFO    ] Initializing speech engine...
[2026-06-27 10:03:24,464.464 INFO    ] 2026-06-27 10:03:24
[2026-06-27 10:03:24,676.676 INFO    ] 2026-06-27 10:03:24
[2026-06-27 10:03:24,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:03:24,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:03:24,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:03:25,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:03:25,100.100 INFO    ] time= 27/06/2026 10:03:25
[2026-06-27 10:03:25,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:03:25,131.131 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:03:25,198.198 INFO    ] No existing commands found in stream
[2026-06-27 10:03:30,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:03:30,216.216 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-27 10:03:33,813.813 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:03:33,815.815 INFO    ] Checking for system updates...
[2026-06-27 10:03:33,837.837 INFO    ] 200
[2026-06-27 10:03:33,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:03:33,872.872 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:03:33,874.874 INFO    ] No update needed
[2026-06-27 10:03:33,876.876 INFO    ] Checking for camera pi updates...
[2026-06-27 10:03:33,900.900 INFO    ] 200
[2026-06-27 10:03:33,902.902 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:03:33,936.936 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:03:33,985.985 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:03:33,986.986 INFO    ] No camera update needed
[2026-06-27 10:03:33,987.987 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:03:33,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:03:33,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:03:33,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:03:36,034.034 INFO    ] ================================================
[2026-06-27 10:03:36,050.050 INFO    ] Launching Daemon at Sat Jun 27 10:03:36 IST 2026
[2026-06-27 10:03:36,062.062 INFO    ] ================================================
[2026-06-27 10:03:36,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:03:36
[2026-06-27 10:03:36,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:03:36,846.846 INFO    ] Initializing speech engine...
[2026-06-27 10:03:36,853.853 INFO    ] 2026-06-27 10:03:36
[2026-06-27 10:03:37,065.065 INFO    ] 2026-06-27 10:03:37
[2026-06-27 10:03:37,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:03:37,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:03:37,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:03:37,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:03:37,484.484 INFO    ] time= 27/06/2026 10:03:37
[2026-06-27 10:03:37,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:03:37,514.514 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:03:37,580.580 INFO    ] No existing commands found in stream
[2026-06-27 10:03:42,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:03:42,592.592 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-27 10:03:43,220.220 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:03:43,222.222 INFO    ] Checking for system updates...
[2026-06-27 10:03:43,243.243 INFO    ] 200
[2026-06-27 10:03:43,245.245 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:03:43,276.276 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:03:43,277.277 INFO    ] No update needed
[2026-06-27 10:03:43,279.279 INFO    ] Checking for camera pi updates...
[2026-06-27 10:03:43,298.298 INFO    ] 200
[2026-06-27 10:03:43,300.300 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:03:43,324.324 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:03:43,371.371 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:03:43,373.373 INFO    ] No camera update needed
[2026-06-27 10:03:43,375.375 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:03:43,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:03:43,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:03:43,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:03:45,415.415 INFO    ] ================================================
[2026-06-27 10:03:45,423.423 INFO    ] Launching Daemon at Sat Jun 27 10:03:45 IST 2026
[2026-06-27 10:03:45,429.429 INFO    ] ================================================
[2026-06-27 10:03:45,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:03:45
[2026-06-27 10:03:46,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:03:46,258.258 INFO    ] Initializing speech engine...
[2026-06-27 10:03:46,268.268 INFO    ] 2026-06-27 10:03:46
[2026-06-27 10:03:46,473.473 INFO    ] 2026-06-27 10:03:46
[2026-06-27 10:03:46,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:03:46,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:03:46,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:03:46,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:03:46,887.887 INFO    ] time= 27/06/2026 10:03:46
[2026-06-27 10:03:46,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:03:46,920.920 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:03:47,011.011 INFO    ] No existing commands found in stream
[2026-06-27 10:03:52,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:03:52,033.033 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-27 10:03:52,525.525 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 10:03:52,527.527 INFO    ] Checking for system updates...
[2026-06-27 10:03:52,549.549 INFO    ] 200
[2026-06-27 10:03:52,551.551 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:03:52,587.587 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:03:52,588.588 INFO    ] No update needed
[2026-06-27 10:03:52,590.590 INFO    ] Checking for camera pi updates...
[2026-06-27 10:03:52,611.611 INFO    ] 200
[2026-06-27 10:03:52,613.613 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:03:52,636.636 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:03:52,673.673 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:03:52,674.674 INFO    ] No camera update needed
[2026-06-27 10:03:52,675.675 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:03:52,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:03:52,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:03:52,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:03:54,722.722 INFO    ] ================================================
[2026-06-27 10:03:54,738.738 INFO    ] Launching Daemon at Sat Jun 27 10:03:54 IST 2026
[2026-06-27 10:03:54,749.749 INFO    ] ================================================
[2026-06-27 10:03:55,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:03:55
[2026-06-27 10:03:55,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:03:55,572.572 INFO    ] Initializing speech engine...
[2026-06-27 10:03:55,582.582 INFO    ] 2026-06-27 10:03:55
[2026-06-27 10:03:55,790.790 INFO    ] 2026-06-27 10:03:55
[2026-06-27 10:03:55,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:03:56,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:03:56,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:03:56,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:03:56,210.210 INFO    ] time= 27/06/2026 10:03:56
[2026-06-27 10:03:56,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:03:56,240.240 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:03:56,308.308 INFO    ] No existing commands found in stream
[2026-06-27 10:04:01,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:04:01,341.341 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-27 10:04:04,319.319 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:04:04,320.320 INFO    ] Checking for system updates...
[2026-06-27 10:04:04,342.342 INFO    ] 200
[2026-06-27 10:04:04,344.344 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:04:04,374.374 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:04:04,376.376 INFO    ] No update needed
[2026-06-27 10:04:04,377.377 INFO    ] Checking for camera pi updates...
[2026-06-27 10:04:04,396.396 INFO    ] 200
[2026-06-27 10:04:04,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:04:04,421.421 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:04:04,463.463 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:04:04,465.465 INFO    ] No camera update needed
[2026-06-27 10:04:04,466.466 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:04:04,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:04:04,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:04:04,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:04:06,513.513 INFO    ] ================================================
[2026-06-27 10:04:06,528.528 INFO    ] Launching Daemon at Sat Jun 27 10:04:06 IST 2026
[2026-06-27 10:04:06,539.539 INFO    ] ================================================
[2026-06-27 10:04:06,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:04:06
[2026-06-27 10:04:07,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:04:07,345.345 INFO    ] Initializing speech engine...
[2026-06-27 10:04:07,356.356 INFO    ] 2026-06-27 10:04:07
[2026-06-27 10:04:07,561.561 INFO    ] 2026-06-27 10:04:07
[2026-06-27 10:04:07,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:04:07,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:04:07,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:04:07,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:04:08,010.010 INFO    ] time= 27/06/2026 10:04:07
[2026-06-27 10:04:08,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:04:08,017.017 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:04:08,083.083 INFO    ] No existing commands found in stream
[2026-06-27 10:04:13,094.094 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:04:13,097.097 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-27 10:04:16,957.957 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 10:04:16,958.958 INFO    ] Checking for system updates...
[2026-06-27 10:04:16,979.979 INFO    ] 200
[2026-06-27 10:04:16,980.980 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:04:17,011.011 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:04:17,012.012 INFO    ] No update needed
[2026-06-27 10:04:17,014.014 INFO    ] Checking for camera pi updates...
[2026-06-27 10:04:17,034.034 INFO    ] 200
[2026-06-27 10:04:17,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:04:17,061.061 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:04:17,098.098 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:04:17,099.099 INFO    ] No camera update needed
[2026-06-27 10:04:17,101.101 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:04:17,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:04:17,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:04:17,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:04:19,147.147 INFO    ] ================================================
[2026-06-27 10:04:19,163.163 INFO    ] Launching Daemon at Sat Jun 27 10:04:19 IST 2026
[2026-06-27 10:04:19,174.174 INFO    ] ================================================
[2026-06-27 10:04:19,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:04:19
[2026-06-27 10:04:19,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:04:20,016.016 INFO    ] Initializing speech engine...
[2026-06-27 10:04:20,021.021 INFO    ] 2026-06-27 10:04:20
[2026-06-27 10:04:20,229.229 INFO    ] 2026-06-27 10:04:20
[2026-06-27 10:04:20,258.258 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:04:20,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:04:20,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:04:20,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:04:20,663.663 INFO    ] time= 27/06/2026 10:04:20
[2026-06-27 10:04:20,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:04:20,679.679 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:04:20,747.747 INFO    ] No existing commands found in stream
[2026-06-27 10:04:25,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:04:25,760.760 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-27 10:04:29,089.089 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 10:04:29,091.091 INFO    ] Checking for system updates...
[2026-06-27 10:04:29,112.112 INFO    ] 200
[2026-06-27 10:04:29,113.113 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:04:29,144.144 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:04:29,146.146 INFO    ] No update needed
[2026-06-27 10:04:29,147.147 INFO    ] Checking for camera pi updates...
[2026-06-27 10:04:29,168.168 INFO    ] 200
[2026-06-27 10:04:29,169.169 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:04:29,196.196 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:04:29,242.242 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:04:29,244.244 INFO    ] No camera update needed
[2026-06-27 10:04:29,246.246 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:04:29,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:04:29,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:04:29,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:04:31,292.292 INFO    ] ================================================
[2026-06-27 10:04:31,307.307 INFO    ] Launching Daemon at Sat Jun 27 10:04:31 IST 2026
[2026-06-27 10:04:31,318.318 INFO    ] ================================================
[2026-06-27 10:04:31,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:04:31
[2026-06-27 10:04:32,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:04:32,190.190 INFO    ] Initializing speech engine...
[2026-06-27 10:04:32,194.194 INFO    ] 2026-06-27 10:04:32
[2026-06-27 10:04:32,402.402 INFO    ] 2026-06-27 10:04:32
[2026-06-27 10:04:32,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:04:32,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:04:32,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:04:32,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:04:32,823.823 INFO    ] time= 27/06/2026 10:04:32
[2026-06-27 10:04:32,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:04:32,852.852 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:04:32,919.919 INFO    ] No existing commands found in stream
[2026-06-27 10:04:37,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:04:37,941.941 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-27 10:04:39,878.878 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:04:39,879.879 INFO    ] Checking for system updates...
[2026-06-27 10:04:39,900.900 INFO    ] 200
[2026-06-27 10:04:39,902.902 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:04:39,932.932 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:04:39,933.933 INFO    ] No update needed
[2026-06-27 10:04:39,935.935 INFO    ] Checking for camera pi updates...
[2026-06-27 10:04:39,955.955 INFO    ] 200
[2026-06-27 10:04:39,957.957 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:04:39,982.982 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:04:40,020.020 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:04:40,021.021 INFO    ] No camera update needed
[2026-06-27 10:04:40,023.023 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:04:40,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:04:40,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:04:40,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:04:42,070.070 INFO    ] ================================================
[2026-06-27 10:04:42,085.085 INFO    ] Launching Daemon at Sat Jun 27 10:04:42 IST 2026
[2026-06-27 10:04:42,096.096 INFO    ] ================================================
[2026-06-27 10:04:42,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:04:42
[2026-06-27 10:04:42,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:04:42,949.949 INFO    ] Initializing speech engine...
[2026-06-27 10:04:42,959.959 INFO    ] 2026-06-27 10:04:42
[2026-06-27 10:04:43,173.173 INFO    ] 2026-06-27 10:04:43
[2026-06-27 10:04:43,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:04:43,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:04:43,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:04:43,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:04:43,600.600 INFO    ] time= 27/06/2026 10:04:43
[2026-06-27 10:04:43,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:04:43,635.635 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:04:43,702.702 INFO    ] No existing commands found in stream
[2026-06-27 10:04:48,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:04:48,714.714 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-27 10:04:52,902.902 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 10:04:52,903.903 INFO    ] Checking for system updates...
[2026-06-27 10:04:52,925.925 INFO    ] 200
[2026-06-27 10:04:52,926.926 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:04:52,957.957 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:04:52,959.959 INFO    ] No update needed
[2026-06-27 10:04:52,960.960 INFO    ] Checking for camera pi updates...
[2026-06-27 10:04:52,981.981 INFO    ] 200
[2026-06-27 10:04:52,982.982 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:04:53,008.008 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:04:53,056.056 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:04:53,057.057 INFO    ] No camera update needed
[2026-06-27 10:04:53,059.059 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:04:53,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:04:53,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:04:53,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:04:55,106.106 INFO    ] ================================================
[2026-06-27 10:04:55,125.125 INFO    ] Launching Daemon at Sat Jun 27 10:04:55 IST 2026
[2026-06-27 10:04:55,136.136 INFO    ] ================================================
[2026-06-27 10:04:55,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:04:55
[2026-06-27 10:04:55,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:04:55,936.936 INFO    ] Initializing speech engine...
[2026-06-27 10:04:55,941.941 INFO    ] 2026-06-27 10:04:55
[2026-06-27 10:04:56,148.148 INFO    ] 2026-06-27 10:04:56
[2026-06-27 10:04:56,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:04:56,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:04:56,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:04:56,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:04:56,571.571 INFO    ] time= 27/06/2026 10:04:56
[2026-06-27 10:04:56,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:04:56,602.602 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:04:56,667.667 INFO    ] No existing commands found in stream
[2026-06-27 10:05:01,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:05:01,692.692 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-27 10:05:04,352.352 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:05:04,353.353 INFO    ] Checking for system updates...
[2026-06-27 10:05:04,375.375 INFO    ] 200
[2026-06-27 10:05:04,377.377 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:05:04,407.407 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:05:04,409.409 INFO    ] No update needed
[2026-06-27 10:05:04,410.410 INFO    ] Checking for camera pi updates...
[2026-06-27 10:05:04,429.429 INFO    ] 200
[2026-06-27 10:05:04,431.431 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:05:04,456.456 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:05:04,492.492 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:05:04,494.494 INFO    ] No camera update needed
[2026-06-27 10:05:04,495.495 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:05:04,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:05:04,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:05:04,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:05:06,541.541 INFO    ] ================================================
[2026-06-27 10:05:06,557.557 INFO    ] Launching Daemon at Sat Jun 27 10:05:06 IST 2026
[2026-06-27 10:05:06,568.568 INFO    ] ================================================
[2026-06-27 10:05:06,923.923 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:05:06
[2026-06-27 10:05:07,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:05:07,420.420 INFO    ] Initializing speech engine...
[2026-06-27 10:05:07,426.426 INFO    ] 2026-06-27 10:05:07
[2026-06-27 10:05:07,636.636 INFO    ] 2026-06-27 10:05:07
[2026-06-27 10:05:07,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:05:07,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:05:07,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:05:08,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:05:08,067.067 INFO    ] time= 27/06/2026 10:05:08
[2026-06-27 10:05:08,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:05:08,118.118 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:05:08,188.188 INFO    ] No existing commands found in stream
[2026-06-27 10:05:13,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:05:13,199.199 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-27 10:05:13,825.825 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:05:13,827.827 INFO    ] Checking for system updates...
[2026-06-27 10:05:13,847.847 INFO    ] 200
[2026-06-27 10:05:13,849.849 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:05:13,880.880 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:05:13,881.881 INFO    ] No update needed
[2026-06-27 10:05:13,882.882 INFO    ] Checking for camera pi updates...
[2026-06-27 10:05:13,904.904 INFO    ] 200
[2026-06-27 10:05:13,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:05:13,929.929 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:05:13,969.969 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:05:13,971.971 INFO    ] No camera update needed
[2026-06-27 10:05:13,972.972 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:05:13,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:05:13,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:05:13,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:05:16,018.018 INFO    ] ================================================
[2026-06-27 10:05:16,034.034 INFO    ] Launching Daemon at Sat Jun 27 10:05:16 IST 2026
[2026-06-27 10:05:16,046.046 INFO    ] ================================================
[2026-06-27 10:05:16,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:05:16
[2026-06-27 10:05:16,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:05:16,883.883 INFO    ] Initializing speech engine...
[2026-06-27 10:05:16,887.887 INFO    ] 2026-06-27 10:05:16
[2026-06-27 10:05:17,095.095 INFO    ] 2026-06-27 10:05:17
[2026-06-27 10:05:17,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:05:17,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:05:17,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:05:17,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:05:17,517.517 INFO    ] time= 27/06/2026 10:05:17
[2026-06-27 10:05:17,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:05:17,545.545 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:05:17,613.613 INFO    ] No existing commands found in stream
[2026-06-27 10:05:22,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:05:22,631.631 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-27 10:05:26,607.607 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 10:05:26,608.608 INFO    ] Checking for system updates...
[2026-06-27 10:05:26,629.629 INFO    ] 200
[2026-06-27 10:05:26,630.630 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:05:26,661.661 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:05:26,662.662 INFO    ] No update needed
[2026-06-27 10:05:26,663.663 INFO    ] Checking for camera pi updates...
[2026-06-27 10:05:26,684.684 INFO    ] 200
[2026-06-27 10:05:26,685.685 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:05:26,710.710 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:05:26,748.748 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:05:26,749.749 INFO    ] No camera update needed
[2026-06-27 10:05:26,750.750 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:05:26,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:05:26,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:05:26,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:05:28,796.796 INFO    ] ================================================
[2026-06-27 10:05:28,811.811 INFO    ] Launching Daemon at Sat Jun 27 10:05:28 IST 2026
[2026-06-27 10:05:28,822.822 INFO    ] ================================================
[2026-06-27 10:05:29,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:05:29
[2026-06-27 10:05:29,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:05:29,705.705 INFO    ] Initializing speech engine...
[2026-06-27 10:05:29,710.710 INFO    ] 2026-06-27 10:05:29
[2026-06-27 10:05:29,918.918 INFO    ] 2026-06-27 10:05:29
[2026-06-27 10:05:29,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:05:30,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:05:30,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:05:30,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:05:30,334.334 INFO    ] time= 27/06/2026 10:05:30
[2026-06-27 10:05:30,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:05:30,373.373 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:05:30,440.440 INFO    ] No existing commands found in stream
[2026-06-27 10:05:35,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:05:35,459.459 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-27 10:05:36,189.189 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 10:05:36,190.190 INFO    ] Checking for system updates...
[2026-06-27 10:05:36,211.211 INFO    ] 200
[2026-06-27 10:05:36,212.212 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:05:36,243.243 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:05:36,245.245 INFO    ] No update needed
[2026-06-27 10:05:36,246.246 INFO    ] Checking for camera pi updates...
[2026-06-27 10:05:36,269.269 INFO    ] 200
[2026-06-27 10:05:36,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:05:36,296.296 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:05:36,342.342 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:05:36,344.344 INFO    ] No camera update needed
[2026-06-27 10:05:36,345.345 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:05:36,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:05:36,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:05:36,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:05:38,391.391 INFO    ] ================================================
[2026-06-27 10:05:38,408.408 INFO    ] Launching Daemon at Sat Jun 27 10:05:38 IST 2026
[2026-06-27 10:05:38,419.419 INFO    ] ================================================
[2026-06-27 10:05:38,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:05:38
[2026-06-27 10:05:39,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:05:39,228.228 INFO    ] Initializing speech engine...
[2026-06-27 10:05:39,232.232 INFO    ] 2026-06-27 10:05:39
[2026-06-27 10:05:39,436.436 INFO    ] 2026-06-27 10:05:39
[2026-06-27 10:05:39,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:05:39,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:05:39,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:05:39,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:05:39,783.783 INFO    ] time= 27/06/2026 10:05:39
[2026-06-27 10:05:39,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:05:39,878.878 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:05:39,978.978 INFO    ] No existing commands found in stream
[2026-06-27 10:05:44,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:05:44,992.992 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-27 10:05:46,154.154 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:05:46,156.156 INFO    ] Checking for system updates...
[2026-06-27 10:05:46,178.178 INFO    ] 200
[2026-06-27 10:05:46,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:05:46,211.211 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:05:46,213.213 INFO    ] No update needed
[2026-06-27 10:05:46,214.214 INFO    ] Checking for camera pi updates...
[2026-06-27 10:05:46,234.234 INFO    ] 200
[2026-06-27 10:05:46,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:05:46,262.262 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:05:46,297.297 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:05:46,298.298 INFO    ] No camera update needed
[2026-06-27 10:05:46,300.300 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:05:46,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:05:46,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:05:46,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:05:48,347.347 INFO    ] ================================================
[2026-06-27 10:05:48,363.363 INFO    ] Launching Daemon at Sat Jun 27 10:05:48 IST 2026
[2026-06-27 10:05:48,375.375 INFO    ] ================================================
[2026-06-27 10:05:48,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:05:48
[2026-06-27 10:05:49,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:05:49,201.201 INFO    ] Initializing speech engine...
[2026-06-27 10:05:49,207.207 INFO    ] 2026-06-27 10:05:49
[2026-06-27 10:05:49,420.420 INFO    ] 2026-06-27 10:05:49
[2026-06-27 10:05:49,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:05:49,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:05:49,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:05:49,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:05:49,848.848 INFO    ] time= 27/06/2026 10:05:49
[2026-06-27 10:05:49,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:05:49,900.900 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:05:49,977.977 INFO    ] No existing commands found in stream
[2026-06-27 10:05:54,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:05:54,989.989 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-27 10:05:57,536.536 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:05:57,538.538 INFO    ] Checking for system updates...
[2026-06-27 10:05:57,560.560 INFO    ] 200
[2026-06-27 10:05:57,562.562 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:05:57,592.592 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:05:57,594.594 INFO    ] No update needed
[2026-06-27 10:05:57,595.595 INFO    ] Checking for camera pi updates...
[2026-06-27 10:05:57,618.618 INFO    ] 200
[2026-06-27 10:05:57,620.620 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:05:57,644.644 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:05:57,683.683 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:05:57,685.685 INFO    ] No camera update needed
[2026-06-27 10:05:57,686.686 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:05:57,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:05:57,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:05:57,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:05:59,731.731 INFO    ] ================================================
[2026-06-27 10:05:59,747.747 INFO    ] Launching Daemon at Sat Jun 27 10:05:59 IST 2026
[2026-06-27 10:05:59,758.758 INFO    ] ================================================
[2026-06-27 10:06:00,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:06:00
[2026-06-27 10:06:00,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:06:00,545.545 INFO    ] Initializing speech engine...
[2026-06-27 10:06:00,553.553 INFO    ] 2026-06-27 10:06:00
[2026-06-27 10:06:00,763.763 INFO    ] 2026-06-27 10:06:00
[2026-06-27 10:06:00,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:06:04,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:06:04,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:06:04,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:06:04,325.325 INFO    ] time= 27/06/2026 10:06:04
[2026-06-27 10:06:04,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:06:04,330.330 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:06:04,376.376 INFO    ] No existing commands found in stream
[2026-06-27 10:06:09,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:06:09,388.388 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-27 10:06:11,210.210 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:06:11,211.211 INFO    ] Checking for system updates...
[2026-06-27 10:06:11,234.234 INFO    ] 200
[2026-06-27 10:06:11,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:06:11,272.272 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:06:11,273.273 INFO    ] No update needed
[2026-06-27 10:06:11,275.275 INFO    ] Checking for camera pi updates...
[2026-06-27 10:06:11,297.297 INFO    ] 200
[2026-06-27 10:06:11,299.299 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:06:11,322.322 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:06:11,359.359 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:06:11,361.361 INFO    ] No camera update needed
[2026-06-27 10:06:11,362.362 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:06:11,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:06:11,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:06:11,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:06:13,412.412 INFO    ] ================================================
[2026-06-27 10:06:13,428.428 INFO    ] Launching Daemon at Sat Jun 27 10:06:13 IST 2026
[2026-06-27 10:06:13,439.439 INFO    ] ================================================
[2026-06-27 10:06:13,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:06:13
[2026-06-27 10:06:14,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:06:14,264.264 INFO    ] Initializing speech engine...
[2026-06-27 10:06:14,269.269 INFO    ] 2026-06-27 10:06:14
[2026-06-27 10:06:14,474.474 INFO    ] 2026-06-27 10:06:14
[2026-06-27 10:06:14,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:06:14,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:06:14,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:06:14,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:06:14,888.888 INFO    ] time= 27/06/2026 10:06:14
[2026-06-27 10:06:14,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:06:14,921.921 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:06:15,012.012 INFO    ] No existing commands found in stream
[2026-06-27 10:06:20,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:06:20,034.034 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-27 10:06:21,695.695 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 10:06:21,696.696 INFO    ] Checking for system updates...
[2026-06-27 10:06:21,717.717 INFO    ] 200
[2026-06-27 10:06:21,719.719 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:06:21,752.752 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:06:21,753.753 INFO    ] No update needed
[2026-06-27 10:06:21,754.754 INFO    ] Checking for camera pi updates...
[2026-06-27 10:06:21,776.776 INFO    ] 200
[2026-06-27 10:06:21,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:06:21,800.800 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:06:21,841.841 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:06:21,843.843 INFO    ] No camera update needed
[2026-06-27 10:06:21,844.844 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:06:21,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:06:21,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:06:21,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:06:23,890.890 INFO    ] ================================================
[2026-06-27 10:06:23,908.908 INFO    ] Launching Daemon at Sat Jun 27 10:06:23 IST 2026
[2026-06-27 10:06:23,919.919 INFO    ] ================================================
[2026-06-27 10:06:24,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:06:24
[2026-06-27 10:06:24,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:06:24,731.731 INFO    ] Initializing speech engine...
[2026-06-27 10:06:24,741.741 INFO    ] 2026-06-27 10:06:24
[2026-06-27 10:06:24,949.949 INFO    ] 2026-06-27 10:06:24
[2026-06-27 10:06:24,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:06:25,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:06:25,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:06:25,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:06:25,365.365 INFO    ] time= 27/06/2026 10:06:25
[2026-06-27 10:06:25,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:06:25,405.405 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:06:25,497.497 INFO    ] No existing commands found in stream
[2026-06-27 10:06:30,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:06:30,509.509 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-27 10:06:34,829.829 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 10:06:34,830.830 INFO    ] Checking for system updates...
[2026-06-27 10:06:34,852.852 INFO    ] 200
[2026-06-27 10:06:34,853.853 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:06:34,887.887 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:06:34,888.888 INFO    ] No update needed
[2026-06-27 10:06:34,890.890 INFO    ] Checking for camera pi updates...
[2026-06-27 10:06:34,913.913 INFO    ] 200
[2026-06-27 10:06:34,914.914 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:06:34,938.938 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:06:34,983.983 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:06:34,984.984 INFO    ] No camera update needed
[2026-06-27 10:06:34,986.986 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:06:34,987.987 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:06:34,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:06:34,994.994 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:06:37,035.035 INFO    ] ================================================
[2026-06-27 10:06:37,050.050 INFO    ] Launching Daemon at Sat Jun 27 10:06:37 IST 2026
[2026-06-27 10:06:37,061.061 INFO    ] ================================================
[2026-06-27 10:06:37,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:06:37
[2026-06-27 10:06:37,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:06:37,866.866 INFO    ] Initializing speech engine...
[2026-06-27 10:06:37,875.875 INFO    ] 2026-06-27 10:06:37
[2026-06-27 10:06:38,079.079 INFO    ] 2026-06-27 10:06:38
[2026-06-27 10:06:38,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:06:38,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:06:38,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:06:38,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:06:38,486.486 INFO    ] time= 27/06/2026 10:06:38
[2026-06-27 10:06:38,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:06:38,525.525 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:06:38,620.620 INFO    ] No existing commands found in stream
[2026-06-27 10:06:43,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:06:43,637.637 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-27 10:06:45,059.059 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 10:06:45,060.060 INFO    ] Checking for system updates...
[2026-06-27 10:06:45,082.082 INFO    ] 200
[2026-06-27 10:06:45,084.084 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:06:45,114.114 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:06:45,116.116 INFO    ] No update needed
[2026-06-27 10:06:45,117.117 INFO    ] Checking for camera pi updates...
[2026-06-27 10:06:45,136.136 INFO    ] 200
[2026-06-27 10:06:45,138.138 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:06:45,162.162 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:06:45,197.197 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:06:45,198.198 INFO    ] No camera update needed
[2026-06-27 10:06:45,199.199 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:06:45,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:06:45,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:06:45,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:06:47,240.240 INFO    ] ================================================
[2026-06-27 10:06:47,256.256 INFO    ] Launching Daemon at Sat Jun 27 10:06:47 IST 2026
[2026-06-27 10:06:47,268.268 INFO    ] ================================================
[2026-06-27 10:06:47,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:06:47
[2026-06-27 10:06:47,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:06:48,050.050 INFO    ] Initializing speech engine...
[2026-06-27 10:06:48,054.054 INFO    ] 2026-06-27 10:06:48
[2026-06-27 10:06:48,248.248 INFO    ] 2026-06-27 10:06:48
[2026-06-27 10:06:48,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:06:48,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:06:48,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:06:48,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:06:48,704.704 INFO    ] time= 27/06/2026 10:06:48
[2026-06-27 10:06:48,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:06:48,734.734 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:06:48,801.801 INFO    ] No existing commands found in stream
[2026-06-27 10:06:53,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:06:53,812.812 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-27 10:06:54,558.558 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 10:06:54,559.559 INFO    ] Checking for system updates...
[2026-06-27 10:06:54,580.580 INFO    ] 200
[2026-06-27 10:06:54,581.581 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:06:54,612.612 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:06:54,614.614 INFO    ] No update needed
[2026-06-27 10:06:54,616.616 INFO    ] Checking for camera pi updates...
[2026-06-27 10:06:54,635.635 INFO    ] 200
[2026-06-27 10:06:54,636.636 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:06:54,659.659 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:06:54,690.690 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:06:54,692.692 INFO    ] No camera update needed
[2026-06-27 10:06:54,693.693 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:06:54,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:06:54,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:06:54,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:06:56,738.738 INFO    ] ================================================
[2026-06-27 10:06:56,753.753 INFO    ] Launching Daemon at Sat Jun 27 10:06:56 IST 2026
[2026-06-27 10:06:56,764.764 INFO    ] ================================================
[2026-06-27 10:06:57,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:06:57
[2026-06-27 10:06:57,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:06:57,588.588 INFO    ] Initializing speech engine...
[2026-06-27 10:06:57,593.593 INFO    ] 2026-06-27 10:06:57
[2026-06-27 10:06:57,799.799 INFO    ] 2026-06-27 10:06:57
[2026-06-27 10:06:57,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:06:58,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:06:58,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:06:58,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:06:58,187.187 INFO    ] time= 27/06/2026 10:06:58
[2026-06-27 10:06:58,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:06:58,241.241 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:06:58,306.306 INFO    ] No existing commands found in stream
[2026-06-27 10:07:03,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:07:03,318.318 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-27 10:07:07,710.710 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:07:07,712.712 INFO    ] Checking for system updates...
[2026-06-27 10:07:07,733.733 INFO    ] 200
[2026-06-27 10:07:07,734.734 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:07:07,765.765 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:07:07,766.766 INFO    ] No update needed
[2026-06-27 10:07:07,767.767 INFO    ] Checking for camera pi updates...
[2026-06-27 10:07:07,788.788 INFO    ] 200
[2026-06-27 10:07:07,790.790 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:07:07,815.815 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:07:07,951.951 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:07:07,953.953 INFO    ] No camera update needed
[2026-06-27 10:07:07,954.954 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:07:07,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:07:07,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:07:07,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:07:10,003.003 INFO    ] ================================================
[2026-06-27 10:07:10,019.019 INFO    ] Launching Daemon at Sat Jun 27 10:07:10 IST 2026
[2026-06-27 10:07:10,029.029 INFO    ] ================================================
[2026-06-27 10:07:10,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:07:10
[2026-06-27 10:07:10,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:07:10,821.821 INFO    ] Initializing speech engine...
[2026-06-27 10:07:10,825.825 INFO    ] 2026-06-27 10:07:10
[2026-06-27 10:07:11,021.021 INFO    ] 2026-06-27 10:07:11
[2026-06-27 10:07:11,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:07:11,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:07:11,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:07:11,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:07:11,489.489 INFO    ] time= 27/06/2026 10:07:11
[2026-06-27 10:07:11,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:07:11,553.553 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:07:11,657.657 INFO    ] No existing commands found in stream
[2026-06-27 10:07:16,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:07:16,669.669 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-27 10:07:17,631.631 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 10:07:17,632.632 INFO    ] Checking for system updates...
[2026-06-27 10:07:17,656.656 INFO    ] 200
[2026-06-27 10:07:17,657.657 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:07:17,688.688 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:07:17,690.690 INFO    ] No update needed
[2026-06-27 10:07:17,691.691 INFO    ] Checking for camera pi updates...
[2026-06-27 10:07:17,711.711 INFO    ] 200
[2026-06-27 10:07:17,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:07:17,737.737 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:07:17,778.778 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:07:17,779.779 INFO    ] No camera update needed
[2026-06-27 10:07:17,780.780 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:07:17,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:07:17,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:07:17,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:07:19,827.827 INFO    ] ================================================
[2026-06-27 10:07:19,843.843 INFO    ] Launching Daemon at Sat Jun 27 10:07:19 IST 2026
[2026-06-27 10:07:19,853.853 INFO    ] ================================================
[2026-06-27 10:07:20,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:07:20
[2026-06-27 10:07:20,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:07:20,729.729 INFO    ] Initializing speech engine...
[2026-06-27 10:07:20,741.741 INFO    ] 2026-06-27 10:07:20
[2026-06-27 10:07:20,950.950 INFO    ] 2026-06-27 10:07:20
[2026-06-27 10:07:20,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:07:21,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:07:21,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:07:21,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:07:21,360.360 INFO    ] time= 27/06/2026 10:07:21
[2026-06-27 10:07:21,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:07:21,398.398 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:07:21,466.466 INFO    ] No existing commands found in stream
[2026-06-27 10:07:26,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:07:26,480.480 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-27 10:07:30,809.809 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 10:07:30,811.811 INFO    ] Checking for system updates...
[2026-06-27 10:07:30,835.835 INFO    ] 200
[2026-06-27 10:07:30,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:07:30,867.867 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:07:30,868.868 INFO    ] No update needed
[2026-06-27 10:07:30,870.870 INFO    ] Checking for camera pi updates...
[2026-06-27 10:07:30,891.891 INFO    ] 200
[2026-06-27 10:07:30,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:07:30,918.918 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:07:30,955.955 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:07:30,957.957 INFO    ] No camera update needed
[2026-06-27 10:07:30,958.958 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:07:30,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:07:30,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:07:30,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:07:33,998.998 INFO    ] ================================================
[2026-06-27 10:07:33,013.013 INFO    ] Launching Daemon at Sat Jun 27 10:07:33 IST 2026
[2026-06-27 10:07:33,025.025 INFO    ] ================================================
[2026-06-27 10:07:33,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:07:33
[2026-06-27 10:07:33,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:07:33,835.835 INFO    ] Initializing speech engine...
[2026-06-27 10:07:33,853.853 INFO    ] 2026-06-27 10:07:33
[2026-06-27 10:07:34,096.096 INFO    ] 2026-06-27 10:07:34
[2026-06-27 10:07:34,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:07:34,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:07:34,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:07:34,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:07:34,542.542 INFO    ] time= 27/06/2026 10:07:34
[2026-06-27 10:07:34,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:07:34,590.590 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:07:34,663.663 INFO    ] Found 1 existing command(s) in stream
[2026-06-27 10:07:34,666.666 INFO    ] Checking historical command: ID=1782535051885-0
[2026-06-27 10:07:34,668.668 INFO    ] process_and_cleanup_command: msg_id=1782535051885-0
[2026-06-27 10:07:34,696.696 INFO    ] is_command_expired: timestamp=2026-06-27T04:37:32.060Z, expiry=30s
[2026-06-27 10:07:34,815.815 INFO    ] Command removed from stream: 1782535051885-0. returning for processing...
[2026-06-27 10:07:34,818.818 INFO    ] ***** get_valid_command
[2026-06-27 10:07:34,822.822 INFO    ] {'timestamp': '2026-06-27T04:37:32.060Z', 'data': '{"request_id":"start-order-1782535052060-37p5or0x0","orderId":"TM06202304260627100637913","is_vending":false}', 'source': 'webapp', 'timeout': '10', 'command': 'start-order'}
[2026-06-27 10:07:34,826.826 INFO    ] ***** Parsed command data: {'request_id': 'start-order-1782535052060-37p5or0x0', 'is_vending': False, 'orderId': 'TM06202304260627100637913'}
[2026-06-27 10:07:34,830.830 INFO    ] Handling start order...
[2026-06-27 10:07:34,833.833 INFO    ] handle_start_order_command
[2026-06-27 10:07:34,840.840 INFO    ] _send_start_order_success: request_id=start-order-1782535052060-37p5or0x0, order_id=TM06202304260627100637913
[2026-06-27 10:07:34,844.844 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM06202304
[2026-06-27 10:07:34,902.902 INFO    ] [_send_start_order_success] Message added to stream with ID: 1782535054862-0
[2026-06-27 10:07:34,905.905 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-27 10:07:34,908.908 INFO    ] Checking for system updates...
[2026-06-27 10:07:34,937.937 INFO    ] 200
[2026-06-27 10:07:34,940.940 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:07:35,031.031 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:07:35,035.035 INFO    ] No update needed
[2026-06-27 10:07:35,066.066 INFO    ] Checking for camera pi updates...
[2026-06-27 10:07:35,098.098 INFO    ] 200
[2026-06-27 10:07:35,100.100 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:07:35,177.177 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:07:35,225.225 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:07:35,227.227 INFO    ] No camera update needed
[2026-06-27 10:07:35,230.230 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:07:35,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:07:35,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:07:35,246.246 INFO    ] Thread: Thread-1, daemon=True, alive=True
[2026-06-27 10:07:35,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:07:37,285.285 INFO    ] ================================================
[2026-06-27 10:07:37,300.300 INFO    ] Launching Daemon at Sat Jun 27 10:07:37 IST 2026
[2026-06-27 10:07:37,311.311 INFO    ] ================================================
[2026-06-27 10:07:37,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:07:37
[2026-06-27 10:07:38,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:07:38,198.198 INFO    ] Initializing speech engine...
[2026-06-27 10:07:38,208.208 INFO    ] 2026-06-27 10:07:38
[2026-06-27 10:07:38,422.422 INFO    ] 2026-06-27 10:07:38
[2026-06-27 10:07:38,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:07:38,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:07:38,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:07:38,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:07:38,851.851 INFO    ] time= 27/06/2026 10:07:38
[2026-06-27 10:07:38,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:07:38,880.880 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:07:38,949.949 INFO    ] Found 2 existing command(s) in stream
[2026-06-27 10:07:38,952.952 INFO    ] Checking historical command: ID=1782535054862-0
[2026-06-27 10:07:38,978.978 INFO    ] process_and_cleanup_command: msg_id=1782535054862-0
[2026-06-27 10:07:38,980.980 INFO    ] is_command_expired: timestamp=2026-06-27T04:37:34.841911Z, expiry=30s
[2026-06-27 10:07:39,093.093 INFO    ] Command removed from stream: 1782535054862-0. returning for processing...
[2026-06-27 10:07:39,097.097 INFO    ] ***** get_valid_command
[2026-06-27 10:07:39,102.102 INFO    ] {'timestamp': '2026-06-27T04:37:34.841911Z', 'metadata_request_id': 'start-order-1782535052060-37p5or0x0', 'metadata_order_id': 'TM06202304260627100637913', 'message_type': 'command_response', 'status': 'success', 'imei': 'TM06202304', 'message': 'start-order success'}
[2026-06-27 10:07:39,106.106 INFO    ] Checking historical command: ID=1782535056275-0
[2026-06-27 10:07:39,110.110 INFO    ] process_and_cleanup_command: msg_id=1782535056275-0
[2026-06-27 10:07:39,115.115 INFO    ] is_command_expired: timestamp=2026-06-27T04:37:36.434Z, expiry=30s
[2026-06-27 10:07:39,163.163 INFO    ] Command removed from stream: 1782535056275-0. returning for processing...
[2026-06-27 10:07:39,167.167 INFO    ] ***** get_valid_command
[2026-06-27 10:07:39,170.170 INFO    ] {'command': 'process-order', 'data': '{"request_id":"process-order-1782535056434-wcs2fig5r","orderId":"TM06202304260627100637913","is_vending":false,"accessCode":"64171531"}', 'timeout': '60', 'timestamp': '2026-06-27T04:37:36.434Z', 'source': 'webapp'}
[2026-06-27 10:07:39,173.173 INFO    ] ***** Parsed command data: {'accessCode': '64171531', 'is_vending': False, 'orderId': 'TM06202304260627100637913', 'request_id': 'process-order-1782535056434-wcs2fig5r'}
[2026-06-27 10:07:39,177.177 INFO    ] Handling process order...
[2026-06-27 10:07:39,180.180 INFO    ] Processing process-order command...
[2026-06-27 10:07:39,184.184 INFO    ] 🔍 Lock file Order ID: TM06202304260627100637913, TS: 2026-06-27 10:07:34
[2026-06-27 10:07:39,194.194 INFO    ] ✅ Order lock valid for TM06202304260627100637913
[2026-06-27 10:07:39,198.198 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-27 10:07:39,201.201 INFO    ] processing access code 64171531 for order TM06202304260627100637913
[2026-06-27 10:07:39,205.205 INFO    ] 🔍 Lock file Order ID: TM06202304260627100637913, TS: 2026-06-27 10:07:34
[2026-06-27 10:07:39,209.209 INFO    ] ✅ Order lock valid for TM06202304260627100637913
[2026-06-27 10:07:39,212.212 INFO    ] 2026-06-27 10:07:39
[2026-06-27 10:07:39,242.242 INFO    ] 200
[2026-06-27 10:07:39,248.248 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:07:39,253.253 INFO    ] 64171531
[2026-06-27 10:07:39,259.259 INFO    ] 2026-06-27 10:07:39
[2026-06-27 10:07:39,264.264 INFO    ] session id :835636507
[2026-06-27 10:07:39,268.268 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=64171531&imei=TM06202304&session_id=835636507
[2026-06-27 10:07:39,955.955 INFO    ] 200
[2026-06-27 10:07:39,961.961 INFO    ] {"msg": "Order Data", "data": {"proposed_sku_json": [{"name": "MaxVita Indian Style Cream and onion Potato Chips 40gms", "mrp": "20", "unit_price": 20, "tray_id": "13", "door_id": "1", "offer_id": "", "offer_desc": "", "image_url": "https://images.tinymart.in/product/4500713-9506.jpg", "skuid": "4500713", "sku_total": 20, "qty": 1}], "order_id": "TM06202304260627100637913", "invoice_bill": "20", "access_code": "64171531", "bill_amount": "20", "mobile": "7676696731"}, "rstatus": true, "status": true}
[2026-06-27 10:07:39,971.971 INFO    ] 20
[2026-06-27 10:07:39,980.980 INFO    ] TM06202304260627100637913
[2026-06-27 10:07:39,985.985 INFO    ] 7676696731
[2026-06-27 10:07:39,989.989 INFO    ] 2026-06-27 10:07:39
[2026-06-27 10:07:39,994.994 INFO    ] Door Opening for user mobile ending with  six seven three one 
[2026-06-27 10:07:39,995.995 INFO    ] Door Opening for user mobile ending with  six seven three one 
[2026-06-27 10:07:39,997.997 INFO    ] 759eed616881959ad0a5d356e96daf89
[2026-06-27 10:07:39,998.998 INFO    ] 2026-06-27 10:07:39
[2026-06-27 10:07:39,999.999 INFO    ] playing audio file
[2026-06-27 10:07:40,010.010 INFO    ] 2026-06-27 10:07:40
[2026-06-27 10:07:40,012.012 INFO    ] 2026-06-27 10:07:40
[2026-06-27 10:07:40,014.014 INFO    ] publish_status: order_id=TM06202304260627100637913
[2026-06-27 10:07:40,016.016 INFO    ] [publish_status] Adding message to stream: order:TM06202304260627100637913
[2026-06-27 10:07:40,079.079 INFO    ] [publish_status] Message added to stream with ID: 1782535060032-0
[2026-06-27 10:07:40,080.080 INFO    ] Published to order:TM06202304260627100637913: {'server_response': '{"data": {"mobile": "7676696731", "order_id": "TM06202304260627100637913", "proposed_sku_json": [{"tray_id": "13", "offer_desc": "", "skuid": "4500713", "unit_price": 20, "door_id": "1", "offer_id": "", "mrp": "20", "sku_total": 20, "image_url": "https://images.tinymart.in/product/4500713-9506.jpg", "qty": 1, "name": "MaxVita Indian Style Cream and onion Potato Chips 40gms"}], "bill_amount": "20", "invoice_bill": "20", "access_code": "64171531"}, "rstatus": true, "status": true, "msg": "Order Data"}', 'timestamp': '2026-06-27T04:37:40.013215Z', 'order_id': 'TM06202304260627100637913', 'server_status': 'order-started'} (ID: 1782535060032-0)
[2026-06-27 10:07:40,451.451 INFO    ] {'server_response': {'data': {'mobile': '7676696731', 'order_id': 'TM06202304260627100637913', 'proposed_sku_json': [{'tray_id': '13', 'offer_desc': '', 'skuid': '4500713', 'unit_price': 20, 'door_id': '1', 'offer_id': '', 'mrp': '20', 'sku_total': 20, 'image_url': 'https://images.tinymart.in/product/4500713-9506.jpg', 'qty': 1, 'name': 'MaxVita Indian Style Cream and onion Potato Chips 40gms'}], 'bill_amount': '20', 'invoice_bill': '20', 'access_code': '64171531'}, 'rstatus': True, 'status': True, 'msg': 'Order Data'}, 'order_id': 'TM06202304260627100637913', 'server_status': 'order-started'}
[2026-06-27 10:07:40,453.453 INFO    ] 200
[2026-06-27 10:07:40,454.454 INFO    ] {"data":{"server_response":{"data":{"mobile":"7676696731","order_id":"TM06202304260627100637913","proposed_sku_json":[{"tray_id":"13","offer_desc":"","skuid":"4500713","unit_price":20,"door_id":"1","offer_id":"","mrp":"20","sku_total":20,"image_url":"https:\/\/images.tinymart.in\/product\/4500713-9506.jpg","qty":1,"name":"MaxVita Indian Style Cream and onion Potato Chips 40gms"}],"bill_amount":"20","invoice_bill":"20","access_code":"64171531"},"rstatus":true,"status":true,"msg":"Order Data"},"order_id":"TM06202304260627100637913","server_status":"order-started"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-27 10:07:40,456.456 INFO    ] {'data': {'server_response': {'data': {'mobile': '7676696731', 'order_id': 'TM06202304260627100637913', 'proposed_sku_json': [{'tray_id': '13', 'offer_desc': '', 'unit_price': 20, 'door_id': '1', 'offer_id': '', 'mrp': '20', 'sku_total': 20, 'skuid': '4500713', 'qty': 1, 'name': 'MaxVita Indian Style Cream and onion Potato Chips 40gms', 'image_url': 'https://images.tinymart.in/product/4500713-9506.jpg'}], 'bill_amount': '20', 'invoice_bill': '20', 'access_code': '64171531'}, 'rstatus': True, 'status': True, 'msg': 'Order Data'}, 'order_id': 'TM06202304260627100637913', 'server_status': 'order-started'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-27 10:07:40,458.458 INFO    ] 2026-06-27 10:07:40
[2026-06-27 10:07:40,484.484 INFO    ] 200
[2026-06-27 10:07:40,486.486 INFO    ] True
[2026-06-27 10:07:40,576.576 INFO    ] 200
[2026-06-27 10:07:40,578.578 INFO    ] {"SectionStatus": {"SubHeader": "Please wait while we process your order", "Note": "", "Header": " Your order is under process  ", "UI_Header": ""}, "voiceNote": "Please Wait", "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionMain": {"Header": "Processing Order"}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "rstatus": false, "status": "False"}
[2026-06-27 10:07:40,580.580 INFO    ] {'rstatus': False, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'Note': '', 'UI_Header': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'status': 'False', 'error': {'data': {}, 'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress'}}
[2026-06-27 10:07:40,582.582 INFO    ] *** process_order ***
[2026-06-27 10:07:41,651.651 INFO    ] 200
[2026-06-27 10:07:41,653.653 INFO    ] {"SectionStatus": {"SubHeader": "Please wait while we process your order", "Note": "", "Header": " Your order is under process  ", "UI_Header": ""}, "voiceNote": "Please Wait", "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionMain": {"Header": "Processing Order"}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "rstatus": false, "status": "False"}
[2026-06-27 10:07:41,655.655 INFO    ] {'rstatus': False, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'Note': '', 'UI_Header': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'status': 'False', 'error': {'data': {}, 'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress'}}
[2026-06-27 10:07:41,656.656 INFO    ] *** process_order ***
[2026-06-27 10:07:42,767.767 INFO    ] 200
[2026-06-27 10:07:42,768.768 INFO    ] {"SectionStatus": {"SubHeader": "Please wait while we process your order", "Note": "", "Header": " Your order is under process  ", "UI_Header": ""}, "voiceNote": "Please Wait", "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionMain": {"Header": "Processing Order"}, "rstatus": true, "delay": 0, "status": "True"}
[2026-06-27 10:07:42,770.770 INFO    ] {'rstatus': True, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'Note': '', 'UI_Header': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'status': 'True', 'delay': 0}
[2026-06-27 10:07:42,771.771 INFO    ] *** process_order ***
[2026-06-27 10:07:42,773.773 INFO    ] publish_status: order_id=TM06202304260627100637913
[2026-06-27 10:07:42,774.774 INFO    ] [publish_status] Adding message to stream: order:TM06202304260627100637913
[2026-06-27 10:07:42,854.854 INFO    ] [publish_status] Message added to stream with ID: 1782535062817-0
[2026-06-27 10:07:42,855.855 INFO    ] Published to order:TM06202304260627100637913: {'server_response': '{"rstatus": true, "voiceNote": "Door is open...", "status": "True", "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"Note": "", "UI_Header": "", "Header": " Your order is under process  ", "SubHeader": "You can pull the door now."}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "delay": 0}', 'order_id': 'TM06202304260627100637913', 'server_status': 'doorOpened'} (ID: 1782535062817-0)
[2026-06-27 10:07:43,905.905 INFO    ] 2026-06-27 10:07:43
[2026-06-27 10:07:43,909.909 INFO    ] publish_status: order_id=TM06202304260627100637913
[2026-06-27 10:07:43,911.911 INFO    ] [publish_status] Adding message to stream: order:TM06202304260627100637913
[2026-06-27 10:07:43,990.990 INFO    ] [publish_status] Message added to stream with ID: 1782535063952-0
[2026-06-27 10:07:43,993.993 INFO    ] Published to order:TM06202304260627100637913: {'server_response': '{"rstatus": true, "voiceNote": "Please Wait", "SectionMain": {"Header": "Processing Order"}, "SectionStatus": {"Note": "", "UI_Header": "", "Header": " Your order is under process  ", "SubHeader": "Please wait while we process your order"}, "SectionSKU": {"Header": "Thank you for bearing with us :)", "skus": []}, "status": "True", "delay": 0}', 'timestamp': '2026-06-27T04:37:43.907213Z', 'order_id': 'TM06202304260627100637913', 'server_status': 'processOrder'} (ID: 1782535063952-0)
[2026-06-27 10:07:44,118.118 INFO    ] {'server_response': {'rstatus': True, 'voiceNote': 'Please Wait', 'SectionMain': {'Header': 'Processing Order'}, 'SectionStatus': {'Note': '', 'UI_Header': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'status': 'True', 'delay': 0}, 'order_id': 'TM06202304260627100637913', 'server_status': 'processOrder'}
[2026-06-27 10:07:44,119.119 INFO    ] 200
[2026-06-27 10:07:44,121.121 INFO    ] {"data":{"server_response":{"rstatus":true,"voiceNote":"Please Wait","SectionMain":{"Header":"Processing Order"},"SectionStatus":{"Note":"","UI_Header":"","Header":" Your order is under process  ","SubHeader":"Please wait while we process your order"},"SectionSKU":{"Header":"Thank you for bearing with us :)","skus":[]},"status":"true","delay":0},"order_id":"TM06202304260627100637913","server_status":"processOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-27 10:07:44,122.122 INFO    ] {'data': {'server_response': {'rstatus': True, 'voiceNote': 'Please Wait', 'SectionStatus': {'Note': '', 'UI_Header': '', 'Header': ' Your order is under process  ', 'SubHeader': 'Please wait while we process your order'}, 'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'Header': 'Thank you for bearing with us :)', 'skus': []}, 'status': 'true', 'delay': 0}, 'order_id': 'TM06202304260627100637913', 'server_status': 'processOrder'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-27 10:07:44,124.124 INFO    ] 2026-06-27 10:07:44
[2026-06-27 10:07:44,125.125 INFO    ] None
[2026-06-27 10:07:44,126.126 INFO    ] Opening Door now
[2026-06-27 10:07:44,128.128 INFO    ] Opening Door now
[2026-06-27 10:07:44,129.129 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-27 10:07:44,130.130 INFO    ] 2026-06-27 10:07:44
[2026-06-27 10:07:44,132.132 INFO    ] playing audio file
[2026-06-27 10:07:44,143.143 INFO    ] 2026-06-27 10:07:44
[2026-06-27 10:07:44,145.145 INFO    ] 2026-06-27 10:07:44
[2026-06-27 10:07:47,191.191 INFO    ] 200
[2026-06-27 10:07:47,192.192 INFO    ] {"SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 1", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW"}, "voiceNote": "Door 1 is open now", "SectionSKU": {"skus": [{"name": "MaxVita Indian Style Cream and onion Potato Chips 40gms", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "rstatus": false, "status": "False"}
[2026-06-27 10:07:47,194.194 INFO    ] {'rstatus': False, 'voiceNote': 'Door 1 is open now', 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'MaxVita Indian Style Cream and onion Potato Chips 40gms'}]}, 'status': 'False', 'error': {'data': {}, 'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress'}}
[2026-06-27 10:07:50,240.240 INFO    ] 200
[2026-06-27 10:07:50,242.242 INFO    ] {"SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 1", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW"}, "voiceNote": "Please close door 1", "SectionSKU": {"skus": [{"name": "MaxVita Indian Style Cream and onion Potato Chips 40gms", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "rstatus": false, "status": "False"}
[2026-06-27 10:07:50,244.244 INFO    ] {'rstatus': False, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'MaxVita Indian Style Cream and onion Potato Chips 40gms'}]}, 'status': 'False', 'error': {'data': {}, 'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress'}}
[2026-06-27 10:07:53,283.283 INFO    ] 200
[2026-06-27 10:07:53,284.284 INFO    ] {"SectionStatus": {"SubHeader": "Please Pick the Products and close the door", "Note": "Please Close the door after picking up products", "Header": "Please Close Door 1", "UI_Header": "DOOR 1\nIS \nOPEN \nNOW"}, "voiceNote": "Please close door 1", "SectionSKU": {"skus": [{"name": "MaxVita Indian Style Cream and onion Potato Chips 40gms", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "rstatus": false, "status": "False"}
[2026-06-27 10:07:53,286.286 INFO    ] Please close door 1
[2026-06-27 10:07:53,287.287 INFO    ] Please close door 1
[2026-06-27 10:07:53,289.289 INFO    ] 787c302d53ab591e55c034b99c7aadd2
[2026-06-27 10:07:53,290.290 INFO    ] 2026-06-27 10:07:53
[2026-06-27 10:07:53,292.292 INFO    ] playing audio file
[2026-06-27 10:07:53,302.302 INFO    ] 2026-06-27 10:07:53
[2026-06-27 10:07:53,304.304 INFO    ] publish_status: order_id=TM06202304260627100637913
[2026-06-27 10:07:53,305.305 INFO    ] [publish_status] Adding message to stream: order:TM06202304260627100637913
[2026-06-27 10:07:53,365.365 INFO    ] [publish_status] Message added to stream with ID: 1782535073328-0
[2026-06-27 10:07:53,366.366 INFO    ] Published to order:TM06202304260627100637913: {'server_response': '{"rstatus": false, "voiceNote": "Please close door 1", "SectionMain": {"Header": "Door Open"}, "SectionStatus": {"Note": "Please Close the door after picking up products", "UI_Header": "DOOR 1\\nIS \\nOPEN \\nNOW", "Header": "Please Close Door 1", "SubHeader": "Please Pick the Products and close the door"}, "SectionSKU": {"Header": "Pick the below items from the door", "skus": [{"qty": 1, "name": "MaxVita Indian Style Cream and onion Potato Chips 40gms"}]}, "status": "False", "error": {"data": {}, "umessage": "In Progress", "code": 20001, "tmessage": "In Progress"}}', 'timestamp': '2026-06-27T04:37:53.303181Z', 'order_id': 'TM06202304260627100637913', 'server_status': 'OrderStatus'} (ID: 1782535073328-0)
[2026-06-27 10:07:53,743.743 INFO    ] {'server_response': {'rstatus': False, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'MaxVita Indian Style Cream and onion Potato Chips 40gms'}]}, 'status': 'False', 'error': {'data': {}, 'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress'}}, 'order_id': 'TM06202304260627100637913', 'server_status': 'OrderStatus'}
[2026-06-27 10:07:53,745.745 INFO    ] 200
[2026-06-27 10:07:53,747.747 INFO    ] {"data":{"server_response":{"rstatus":false,"voiceNote":"Please close door 1","SectionMain":{"Header":"Door Open"},"SectionStatus":{"Note":"Please Close the door after picking up products","UI_Header":"DOOR 1\nIS \nOPEN \nNOW","Header":"Please Close Door 1","SubHeader":"Please Pick the Products and close the door"},"SectionSKU":{"Header":"Pick the below items from the door","skus":[{"qty":1,"name":"MaxVita Indian Style Cream and onion Potato Chips 40gms"}]},"status":"false","error":{"data":[],"umessage":"In Progress","code":20001,"tmessage":"In Progress"}},"order_id":"TM06202304260627100637913","server_status":"OrderStatus"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-27 10:07:53,748.748 INFO    ] {'data': {'server_response': {'rstatus': False, 'voiceNote': 'Please close door 1', 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door'}, 'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'MaxVita Indian Style Cream and onion Potato Chips 40gms'}]}, 'status': 'false', 'error': {'data': [], 'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress'}}, 'order_id': 'TM06202304260627100637913', 'server_status': 'OrderStatus'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-27 10:07:53,750.750 INFO    ] {'rstatus': False, 'voiceNote': 'Please close door 1', 'SectionMain': {'Header': 'Door Open'}, 'SectionStatus': {'Note': 'Please Close the door after picking up products', 'UI_Header': 'DOOR 1\nIS \nOPEN \nNOW', 'Header': 'Please Close Door 1', 'SubHeader': 'Please Pick the Products and close the door'}, 'SectionSKU': {'Header': 'Pick the below items from the door', 'skus': [{'qty': 1, 'name': 'MaxVita Indian Style Cream and onion Potato Chips 40gms'}]}, 'status': 'False', 'error': {'data': {}, 'umessage': 'In Progress', 'code': 20001, 'tmessage': 'In Progress'}}
[2026-06-27 10:07:56,792.792 INFO    ] 200
[2026-06-27 10:07:56,794.794 INFO    ] {"SectionStatus": {"SubHeader": "Please wait for invoice to generate", "Note": "If any due amount, clear at https://go.tinymart.in", "Header": " Order is complete ", "UI_Header": ""}, "voiceNote": "Transaction Completed", "SectionSKU": {"skus": [], "Header": "If you like us, tell others... else tell us"}, "SectionMain": {"Header": "Door Closed"}, "rstatus": true, "delay": 100, "status": "True"}
[2026-06-27 10:07:56,796.796 INFO    ] {'rstatus': True, 'voiceNote': 'Transaction Completed', 'SectionMain': {'Header': 'Door Closed'}, 'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': '', 'Header': ' Order is complete ', 'SubHeader': 'Please wait for invoice to generate'}, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'status': 'True', 'delay': 100}
[2026-06-27 10:07:56,798.798 INFO    ] 2026-06-27 10:07:56
[2026-06-27 10:07:56,799.799 INFO    ] Order Completed 
[2026-06-27 10:07:56,801.801 INFO    ] Order Completed 
[2026-06-27 10:07:56,803.803 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-27 10:07:56,808.808 INFO    ] 2026-06-27 10:07:56
[2026-06-27 10:07:56,810.810 INFO    ] playing audio file
[2026-06-27 10:07:56,822.822 INFO    ] 2026-06-27 10:07:56
[2026-06-27 10:07:56,824.824 INFO    ] {'rstatus': True, 'voiceNote': 'Transaction Completed', 'SectionMain': {'Header': 'Door Closed'}, 'SectionStatus': {'Note': 'If any due amount, clear at https://go.tinymart.in', 'UI_Header': '', 'Header': ' Order is complete ', 'SubHeader': 'Please wait for invoice to generate'}, 'SectionSKU': {'Header': 'If you like us, tell others... else tell us', 'skus': []}, 'status': 'True', 'delay': 100}
[2026-06-27 10:07:56,827.827 INFO    ] 2026-06-27 10:07:56
[2026-06-27 10:07:57,237.237 INFO    ] 200
[2026-06-27 10:07:57,239.239 INFO    ] {"res": "True", "orderId": "TM06202304260627100637913", "total_amount": 20.0, "skus": [{"name": "MaxVita Indian Style Cream and onion Potato Chips 40gms per peice", "image_url": "https://images.tinymart.in/product/4500713-9506.jpg", "tray_id": "13", "mrp": "20", "qty": 1, "unit_price": "20", "skuid": "4500713", "sku_total": 20.0, "door_id": ""}], "anomaly": 0, "logic": "WBL", "rstatus": true}
[2026-06-27 10:07:57,241.241 INFO    ] {'rstatus': True, 'res': 'True', 'anomaly': 0, 'skus': [{'tray_id': '13', 'unit_price': '20', 'sku_total': 20.0, 'image_url': 'https://images.tinymart.in/product/4500713-9506.jpg', 'mrp': '20', 'door_id': '', 'skuid': '4500713', 'qty': 1, 'name': 'MaxVita Indian Style Cream and onion Potato Chips 40gms per peice'}], 'orderId': 'TM06202304260627100637913', 'total_amount': 20.0, 'logic': 'WBL'}
[2026-06-27 10:07:57,242.242 INFO    ] {'rstatus': True, 'res': 'True', 'anomaly': 0, 'skus': [{'tray_id': '13', 'unit_price': '20', 'sku_total': 20.0, 'image_url': 'https://images.tinymart.in/product/4500713-9506.jpg', 'mrp': '20', 'door_id': '', 'skuid': '4500713', 'qty': 1, 'name': 'MaxVita Indian Style Cream and onion Potato Chips 40gms per peice'}], 'orderId': 'TM06202304260627100637913', 'total_amount': 20.0, 'logic': 'WBL'}
[2026-06-27 10:07:57,244.244 INFO    ] 2026-06-27 10:07:57
[2026-06-27 10:07:57,246.246 INFO    ] 2026-06-27 10:07:57
[2026-06-27 10:07:57,247.247 INFO    ] 20
[2026-06-27 10:07:57,249.249 INFO    ] 2026-06-27 10:07:57
[2026-06-27 10:07:57,250.250 INFO    ] 2026-06-27 10:07:57
[2026-06-27 10:07:57,251.251 INFO    ]  Your Bill Amount is 20
[2026-06-27 10:07:57,253.253 INFO    ]  Your Bill Amount is 20
[2026-06-27 10:07:57,254.254 INFO    ] 69e7720cf62ffa67ab0522541575e508
[2026-06-27 10:07:57,256.256 INFO    ] 2026-06-27 10:07:57
[2026-06-27 10:07:57,257.257 INFO    ] playing audio file
[2026-06-27 10:07:57,267.267 INFO    ] 2026-06-27 10:07:57
[2026-06-27 10:07:57,269.269 INFO    ] 2026-06-27 10:07:57
[2026-06-27 10:07:57,271.271 INFO    ] publish_status: order_id=TM06202304260627100637913
[2026-06-27 10:07:57,273.273 INFO    ] [publish_status] Adding message to stream: order:TM06202304260627100637913
[2026-06-27 10:07:57,328.328 INFO    ] [publish_status] Message added to stream with ID: 1782535077292-0
[2026-06-27 10:07:57,330.330 INFO    ] Published to order:TM06202304260627100637913: {'server_response': '{"rstatus": true, "res": "True", "anomaly": 0, "skus": [{"tray_id": "13", "unit_price": "20", "sku_total": 20.0, "image_url": "https://images.tinymart.in/product/4500713-9506.jpg", "mrp": "20", "door_id": "", "skuid": "4500713", "qty": 1, "name": "MaxVita Indian Style Cream and onion Potato Chips 40gms per peice"}], "orderId": "TM06202304260627100637913", "total_amount": 20.0, "logic": "WBL"}', 'timestamp': '2026-06-27T04:37:57.270335Z', 'order_id': 'TM06202304260627100637913', 'server_status': 'invoiceOrder'} (ID: 1782535077292-0)
[2026-06-27 10:07:57,459.459 INFO    ] {'server_response': {'rstatus': True, 'res': 'True', 'anomaly': 0, 'skus': [{'tray_id': '13', 'unit_price': '20', 'sku_total': 20.0, 'image_url': 'https://images.tinymart.in/product/4500713-9506.jpg', 'mrp': '20', 'door_id': '', 'skuid': '4500713', 'qty': 1, 'name': 'MaxVita Indian Style Cream and onion Potato Chips 40gms per peice'}], 'orderId': 'TM06202304260627100637913', 'total_amount': 20.0, 'logic': 'WBL'}, 'order_id': 'TM06202304260627100637913', 'server_status': 'invoiceOrder'}
[2026-06-27 10:07:57,462.462 INFO    ] 200
[2026-06-27 10:07:57,466.466 INFO    ] {"data":{"server_response":{"rstatus":true,"res":"true","anomaly":0,"skus":[{"tray_id":"13","unit_price":"20","sku_total":20,"image_url":"https:\/\/images.tinymart.in\/product\/4500713-9506.jpg","mrp":"20","door_id":"","skuid":"4500713","qty":1,"name":"MaxVita Indian Style Cream and onion Potato Chips 40gms per peice"}],"orderId":"TM06202304260627100637913","total_amount":20,"logic":"WBL"},"order_id":"TM06202304260627100637913","server_status":"invoiceOrder"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-27 10:07:57,470.470 INFO    ] {'data': {'server_response': {'rstatus': True, 'res': 'true', 'anomaly': 0, 'orderId': 'TM06202304260627100637913', 'total_amount': 20, 'skus': [{'tray_id': '13', 'unit_price': '20', 'sku_total': 20, 'image_url': 'https://images.tinymart.in/product/4500713-9506.jpg', 'mrp': '20', 'door_id': '', 'skuid': '4500713', 'qty': 1, 'name': 'MaxVita Indian Style Cream and onion Potato Chips 40gms per peice'}], 'logic': 'WBL'}, 'order_id': 'TM06202304260627100637913', 'server_status': 'invoiceOrder'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-27 10:07:57,473.473 INFO    ] {'data': {'server_response': {'rstatus': True, 'res': 'true', 'anomaly': 0, 'orderId': 'TM06202304260627100637913', 'total_amount': 20, 'skus': [{'tray_id': '13', 'unit_price': '20', 'sku_total': 20, 'image_url': 'https://images.tinymart.in/product/4500713-9506.jpg', 'mrp': '20', 'door_id': '', 'skuid': '4500713', 'qty': 1, 'name': 'MaxVita Indian Style Cream and onion Potato Chips 40gms per peice'}], 'logic': 'WBL'}, 'order_id': 'TM06202304260627100637913', 'server_status': 'invoiceOrder'}, 'response': {'data': 'order updated successfully', 'code': 'ORDER_EXISTS', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-27 10:07:57,476.476 INFO    ] 2026-06-27 10:07:57
[2026-06-27 10:07:58,903.903 INFO    ] 200
[2026-06-27 10:07:58,905.905 INFO    ] {"status": true, "orders_synced": [], "orders_data": [], "orders": [], "order_items": [], "orders_data_synced": [], "tray_synced": ["TM06202304260627100637913", "TM06202304260627100637913", "TM06202304260627100637913", "TM06202304260627100637913", "TM06202304260627100637913", "TM06202304260627100637913", "TM06202304260627100637913", "TM06202304260627100637913", "TM06202304260627100637913", "TM06202304260627100637913", "TM06202304260627100637913", "TM06202304260627100637913", "TM06202304260627100637913", "TM06202304260627100637913", "TM06202304260627100637913", "TM06202304260627100637913", "TM06202304260627100637913", "TM06202304260627100637913", "TM06202304260627100637913", "TM06202304260627100637913", "TM06202304260627100637913", "TM06202304260627100637913", "TM06202304260627100637913", "TM06202304260627100637913", "TM06202304260627100637913", "TM06202304260627100637913", "TM06202304260627100637913", "TM06202304260627100637913", "TM06202304260627100637913", "TM06202304260627100637913", "TM06202304260627100637913", "TM06202304260627100637913", "TM06202304260627100637913"], "tray_sync": [], "order_items_synced": []}
[2026-06-27 10:07:58,907.907 INFO    ] 2026-06-27 10:07:58
[2026-06-27 10:07:58,987.987 INFO    ] 200
[2026-06-27 10:07:58,988.988 INFO    ] True
[2026-06-27 10:07:58,990.990 INFO    ] cleanup_start_order_file_after_processing: order_id=TM06202304260627100637913
[2026-06-27 10:07:58,992.992 INFO    ] start order file deleted
[2026-06-27 10:07:58,994.994 INFO    ] Checking for system updates...
[2026-06-27 10:07:59,017.017 INFO    ] 200
[2026-06-27 10:07:59,019.019 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:07:59,055.055 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:07:59,056.056 INFO    ] No update needed
[2026-06-27 10:07:59,059.059 INFO    ] Checking for camera pi updates...
[2026-06-27 10:07:59,079.079 INFO    ] 200
[2026-06-27 10:07:59,080.080 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:07:59,107.107 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:07:59,134.134 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:07:59,136.136 INFO    ] No camera update needed
[2026-06-27 10:07:59,137.137 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:07:59,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:07:59,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:07:59,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:08:01,186.186 INFO    ] ================================================
[2026-06-27 10:08:01,202.202 INFO    ] Launching Daemon at Sat Jun 27 10:08:01 IST 2026
[2026-06-27 10:08:01,212.212 INFO    ] ================================================
[2026-06-27 10:08:01,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:08:01
[2026-06-27 10:08:01,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:08:02,182.182 INFO    ] Initializing speech engine...
[2026-06-27 10:08:02,214.214 INFO    ] 2026-06-27 10:08:02
[2026-06-27 10:08:02,472.472 INFO    ] 2026-06-27 10:08:02
[2026-06-27 10:08:02,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:08:02,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:08:02,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:08:02,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:08:02,938.938 INFO    ] time= 27/06/2026 10:08:02
[2026-06-27 10:08:02,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:08:03,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:08:03,107.107 INFO    ] No existing commands found in stream
[2026-06-27 10:08:08,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:08:08,119.119 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-27 10:08:12,119.119 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:08:12,121.121 INFO    ] Checking for system updates...
[2026-06-27 10:08:12,144.144 INFO    ] 200
[2026-06-27 10:08:12,146.146 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:08:12,180.180 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:08:12,182.182 INFO    ] No update needed
[2026-06-27 10:08:12,184.184 INFO    ] Checking for camera pi updates...
[2026-06-27 10:08:12,204.204 INFO    ] 200
[2026-06-27 10:08:12,206.206 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:08:12,232.232 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:08:12,277.277 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:08:12,279.279 INFO    ] No camera update needed
[2026-06-27 10:08:12,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:08:12,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:08:12,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:08:12,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:08:14,330.330 INFO    ] ================================================
[2026-06-27 10:08:14,346.346 INFO    ] Launching Daemon at Sat Jun 27 10:08:14 IST 2026
[2026-06-27 10:08:14,357.357 INFO    ] ================================================
[2026-06-27 10:08:14,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:08:14
[2026-06-27 10:08:15,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:08:15,134.134 INFO    ] Initializing speech engine...
[2026-06-27 10:08:15,137.137 INFO    ] 2026-06-27 10:08:15
[2026-06-27 10:08:15,354.354 INFO    ] 2026-06-27 10:08:15
[2026-06-27 10:08:15,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:08:15,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:08:15,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:08:15,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:08:15,764.764 INFO    ] time= 27/06/2026 10:08:15
[2026-06-27 10:08:15,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:08:15,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:08:15,868.868 INFO    ] No existing commands found in stream
[2026-06-27 10:08:20,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:08:20,881.881 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-27 10:08:24,644.644 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 10:08:24,646.646 INFO    ] Checking for system updates...
[2026-06-27 10:08:24,666.666 INFO    ] 200
[2026-06-27 10:08:24,668.668 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:08:24,698.698 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:08:24,700.700 INFO    ] No update needed
[2026-06-27 10:08:24,701.701 INFO    ] Checking for camera pi updates...
[2026-06-27 10:08:24,720.720 INFO    ] 200
[2026-06-27 10:08:24,722.722 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:08:24,747.747 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:08:24,785.785 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:08:24,787.787 INFO    ] No camera update needed
[2026-06-27 10:08:24,788.788 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:08:24,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:08:24,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:08:24,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:08:26,834.834 INFO    ] ================================================
[2026-06-27 10:08:26,849.849 INFO    ] Launching Daemon at Sat Jun 27 10:08:26 IST 2026
[2026-06-27 10:08:26,860.860 INFO    ] ================================================
[2026-06-27 10:08:27,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:08:27
[2026-06-27 10:08:27,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:08:27,663.663 INFO    ] Initializing speech engine...
[2026-06-27 10:08:27,669.669 INFO    ] 2026-06-27 10:08:27
[2026-06-27 10:08:27,873.873 INFO    ] 2026-06-27 10:08:27
[2026-06-27 10:08:27,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:08:28,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:08:28,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:08:28,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:08:28,305.305 INFO    ] time= 27/06/2026 10:08:28
[2026-06-27 10:08:28,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:08:28,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:08:28,387.387 INFO    ] No existing commands found in stream
[2026-06-27 10:08:33,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:08:33,400.400 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-27 10:08:36,100.100 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 10:08:36,101.101 INFO    ] Checking for system updates...
[2026-06-27 10:08:36,123.123 INFO    ] 200
[2026-06-27 10:08:36,125.125 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:08:36,158.158 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:08:36,159.159 INFO    ] No update needed
[2026-06-27 10:08:36,160.160 INFO    ] Checking for camera pi updates...
[2026-06-27 10:08:36,180.180 INFO    ] 200
[2026-06-27 10:08:36,181.181 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:08:36,205.205 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:08:36,252.252 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:08:36,253.253 INFO    ] No camera update needed
[2026-06-27 10:08:36,255.255 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:08:36,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:08:36,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:08:36,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:08:38,304.304 INFO    ] ================================================
[2026-06-27 10:08:38,319.319 INFO    ] Launching Daemon at Sat Jun 27 10:08:38 IST 2026
[2026-06-27 10:08:38,330.330 INFO    ] ================================================
[2026-06-27 10:08:38,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:08:38
[2026-06-27 10:08:39,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:08:39,199.199 INFO    ] Initializing speech engine...
[2026-06-27 10:08:39,213.213 INFO    ] 2026-06-27 10:08:39
[2026-06-27 10:08:39,424.424 INFO    ] 2026-06-27 10:08:39
[2026-06-27 10:08:39,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:08:39,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:08:39,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:08:39,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:08:39,852.852 INFO    ] time= 27/06/2026 10:08:39
[2026-06-27 10:08:39,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:08:39,881.881 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:08:39,948.948 INFO    ] No existing commands found in stream
[2026-06-27 10:08:44,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:08:44,960.960 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-27 10:08:46,039.039 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 10:08:46,041.041 INFO    ] Checking for system updates...
[2026-06-27 10:08:46,064.064 INFO    ] 200
[2026-06-27 10:08:46,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:08:46,096.096 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:08:46,098.098 INFO    ] No update needed
[2026-06-27 10:08:46,099.099 INFO    ] Checking for camera pi updates...
[2026-06-27 10:08:46,119.119 INFO    ] 200
[2026-06-27 10:08:46,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:08:46,145.145 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:08:46,184.184 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:08:46,186.186 INFO    ] No camera update needed
[2026-06-27 10:08:46,187.187 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:08:46,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:08:46,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:08:46,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:08:48,235.235 INFO    ] ================================================
[2026-06-27 10:08:48,250.250 INFO    ] Launching Daemon at Sat Jun 27 10:08:48 IST 2026
[2026-06-27 10:08:48,260.260 INFO    ] ================================================
[2026-06-27 10:08:48,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:08:48
[2026-06-27 10:08:48,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:08:49,112.112 INFO    ] Initializing speech engine...
[2026-06-27 10:08:49,118.118 INFO    ] 2026-06-27 10:08:49
[2026-06-27 10:08:49,347.347 INFO    ] 2026-06-27 10:08:49
[2026-06-27 10:08:49,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:08:49,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:08:49,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:08:49,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:08:49,814.814 INFO    ] time= 27/06/2026 10:08:49
[2026-06-27 10:08:49,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:08:49,857.857 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:08:49,934.934 INFO    ] No existing commands found in stream
[2026-06-27 10:08:54,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:08:54,948.948 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-27 10:08:58,348.348 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:08:58,350.350 INFO    ] Checking for system updates...
[2026-06-27 10:08:58,372.372 INFO    ] 200
[2026-06-27 10:08:58,374.374 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:08:58,407.407 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:08:58,408.408 INFO    ] No update needed
[2026-06-27 10:08:58,410.410 INFO    ] Checking for camera pi updates...
[2026-06-27 10:08:58,431.431 INFO    ] 200
[2026-06-27 10:08:58,432.432 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:08:58,457.457 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:08:58,497.497 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:08:58,498.498 INFO    ] No camera update needed
[2026-06-27 10:08:58,499.499 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:08:58,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:08:58,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:08:58,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:09:00,547.547 INFO    ] ================================================
[2026-06-27 10:09:00,564.564 INFO    ] Launching Daemon at Sat Jun 27 10:09:00 IST 2026
[2026-06-27 10:09:00,575.575 INFO    ] ================================================
[2026-06-27 10:09:00,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:09:00
[2026-06-27 10:09:01,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:09:01,595.595 INFO    ] Initializing speech engine...
[2026-06-27 10:09:01,602.602 INFO    ] 2026-06-27 10:09:01
[2026-06-27 10:09:01,856.856 INFO    ] 2026-06-27 10:09:01
[2026-06-27 10:09:01,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:09:02,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:09:02,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:09:02,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:09:02,341.341 INFO    ] time= 27/06/2026 10:09:02
[2026-06-27 10:09:02,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:09:02,395.395 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:09:02,472.472 INFO    ] No existing commands found in stream
[2026-06-27 10:09:07,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:09:07,485.485 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-27 10:09:09,168.168 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 10:09:09,170.170 INFO    ] Checking for system updates...
[2026-06-27 10:09:09,191.191 INFO    ] 200
[2026-06-27 10:09:09,192.192 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:09:09,222.222 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:09:09,224.224 INFO    ] No update needed
[2026-06-27 10:09:09,225.225 INFO    ] Checking for camera pi updates...
[2026-06-27 10:09:09,244.244 INFO    ] 200
[2026-06-27 10:09:09,246.246 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:09:09,271.271 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:09:09,412.412 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:09:09,414.414 INFO    ] No camera update needed
[2026-06-27 10:09:09,415.415 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:09:09,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:09:09,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:09:09,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:09:11,461.461 INFO    ] ================================================
[2026-06-27 10:09:11,477.477 INFO    ] Launching Daemon at Sat Jun 27 10:09:11 IST 2026
[2026-06-27 10:09:11,488.488 INFO    ] ================================================
[2026-06-27 10:09:11,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:09:11
[2026-06-27 10:09:12,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:09:12,310.310 INFO    ] Initializing speech engine...
[2026-06-27 10:09:12,315.315 INFO    ] 2026-06-27 10:09:12
[2026-06-27 10:09:12,522.522 INFO    ] 2026-06-27 10:09:12
[2026-06-27 10:09:12,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:09:12,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:09:12,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:09:12,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:09:12,935.935 INFO    ] time= 27/06/2026 10:09:12
[2026-06-27 10:09:12,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:09:12,970.970 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:09:13,042.042 INFO    ] No existing commands found in stream
[2026-06-27 10:09:18,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:09:18,054.054 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-27 10:09:20,042.042 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 10:09:20,043.043 INFO    ] Checking for system updates...
[2026-06-27 10:09:20,064.064 INFO    ] 200
[2026-06-27 10:09:20,065.065 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:09:20,095.095 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:09:20,097.097 INFO    ] No update needed
[2026-06-27 10:09:20,098.098 INFO    ] Checking for camera pi updates...
[2026-06-27 10:09:20,119.119 INFO    ] 200
[2026-06-27 10:09:20,120.120 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:09:20,146.146 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:09:20,185.185 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:09:20,186.186 INFO    ] No camera update needed
[2026-06-27 10:09:20,187.187 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:09:20,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:09:20,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:09:20,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:09:22,235.235 INFO    ] ================================================
[2026-06-27 10:09:22,252.252 INFO    ] Launching Daemon at Sat Jun 27 10:09:22 IST 2026
[2026-06-27 10:09:22,263.263 INFO    ] ================================================
[2026-06-27 10:09:22,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:09:22
[2026-06-27 10:09:22,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:09:23,115.115 INFO    ] Initializing speech engine...
[2026-06-27 10:09:23,121.121 INFO    ] 2026-06-27 10:09:23
[2026-06-27 10:09:23,331.331 INFO    ] 2026-06-27 10:09:23
[2026-06-27 10:09:23,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:09:23,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:09:23,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:09:23,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:09:23,751.751 INFO    ] time= 27/06/2026 10:09:23
[2026-06-27 10:09:23,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:09:23,782.782 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:09:23,849.849 INFO    ] No existing commands found in stream
[2026-06-27 10:09:28,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:09:28,867.867 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-27 10:09:33,266.266 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:09:33,268.268 INFO    ] Checking for system updates...
[2026-06-27 10:09:33,290.290 INFO    ] 200
[2026-06-27 10:09:33,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:09:33,324.324 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:09:33,326.326 INFO    ] No update needed
[2026-06-27 10:09:33,327.327 INFO    ] Checking for camera pi updates...
[2026-06-27 10:09:33,347.347 INFO    ] 200
[2026-06-27 10:09:33,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:09:33,373.373 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:09:33,415.415 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:09:33,416.416 INFO    ] No camera update needed
[2026-06-27 10:09:33,418.418 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:09:33,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:09:33,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:09:33,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:09:35,465.465 INFO    ] ================================================
[2026-06-27 10:09:35,480.480 INFO    ] Launching Daemon at Sat Jun 27 10:09:35 IST 2026
[2026-06-27 10:09:35,491.491 INFO    ] ================================================
[2026-06-27 10:09:35,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:09:35
[2026-06-27 10:09:36,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:09:36,314.314 INFO    ] Initializing speech engine...
[2026-06-27 10:09:36,321.321 INFO    ] 2026-06-27 10:09:36
[2026-06-27 10:09:36,534.534 INFO    ] 2026-06-27 10:09:36
[2026-06-27 10:09:36,564.564 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:09:36,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:09:36,749.749 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:09:36,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:09:36,936.936 INFO    ] time= 27/06/2026 10:09:36
[2026-06-27 10:09:36,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:09:36,981.981 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:09:37,051.051 INFO    ] No existing commands found in stream
[2026-06-27 10:09:42,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:09:42,064.064 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-27 10:09:42,845.845 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 10:09:42,846.846 INFO    ] Checking for system updates...
[2026-06-27 10:09:42,867.867 INFO    ] 200
[2026-06-27 10:09:42,868.868 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:09:42,903.903 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:09:42,905.905 INFO    ] No update needed
[2026-06-27 10:09:42,906.906 INFO    ] Checking for camera pi updates...
[2026-06-27 10:09:42,925.925 INFO    ] 200
[2026-06-27 10:09:42,927.927 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:09:42,950.950 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:09:42,986.986 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:09:42,987.987 INFO    ] No camera update needed
[2026-06-27 10:09:42,988.988 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:09:42,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:09:42,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:09:42,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:09:45,035.035 INFO    ] ================================================
[2026-06-27 10:09:45,051.051 INFO    ] Launching Daemon at Sat Jun 27 10:09:45 IST 2026
[2026-06-27 10:09:45,062.062 INFO    ] ================================================
[2026-06-27 10:09:45,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:09:45
[2026-06-27 10:09:45,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:09:45,950.950 INFO    ] Initializing speech engine...
[2026-06-27 10:09:45,955.955 INFO    ] 2026-06-27 10:09:45
[2026-06-27 10:09:46,165.165 INFO    ] 2026-06-27 10:09:46
[2026-06-27 10:09:46,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:09:46,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:09:46,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:09:46,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:09:46,575.575 INFO    ] time= 27/06/2026 10:09:46
[2026-06-27 10:09:46,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:09:46,612.612 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:09:46,680.680 INFO    ] No existing commands found in stream
[2026-06-27 10:09:51,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:09:51,692.692 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-27 10:09:53,400.400 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:09:53,401.401 INFO    ] Checking for system updates...
[2026-06-27 10:09:53,425.425 INFO    ] 200
[2026-06-27 10:09:53,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-27 10:09:53,428.428 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-27 10:09:53,429.429 INFO    ] Checking for camera pi updates...
[2026-06-27 10:09:53,450.450 INFO    ] 200
[2026-06-27 10:09:53,452.452 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-27 10:09:53,453.453 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-27 10:09:53,454.454 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:09:53,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:09:53,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:09:53,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:09:55,502.502 INFO    ] ================================================
[2026-06-27 10:09:55,518.518 INFO    ] Launching Daemon at Sat Jun 27 10:09:55 IST 2026
[2026-06-27 10:09:55,530.530 INFO    ] ================================================
[2026-06-27 10:09:55,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:09:55
[2026-06-27 10:09:56,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:09:56,351.351 INFO    ] Initializing speech engine...
[2026-06-27 10:09:56,356.356 INFO    ] 2026-06-27 10:09:56
[2026-06-27 10:09:56,547.547 INFO    ] 2026-06-27 10:09:56
[2026-06-27 10:09:56,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:09:56,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:09:56,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:09:56,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:09:57,025.025 INFO    ] time= 27/06/2026 10:09:56
[2026-06-27 10:09:57,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:09:57,079.079 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:09:57,157.157 INFO    ] No existing commands found in stream
[2026-06-27 10:10:02,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:10:02,183.183 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-27 10:10:08,479.479 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 10:10:08,480.480 INFO    ] Checking for system updates...
[2026-06-27 10:10:08,501.501 INFO    ] 200
[2026-06-27 10:10:08,502.502 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:10:08,535.535 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:10:08,537.537 INFO    ] No update needed
[2026-06-27 10:10:08,538.538 INFO    ] Checking for camera pi updates...
[2026-06-27 10:10:08,557.557 INFO    ] 200
[2026-06-27 10:10:08,559.559 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:10:08,582.582 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:10:08,623.623 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:10:08,624.624 INFO    ] No camera update needed
[2026-06-27 10:10:08,625.625 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:10:08,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:10:08,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:10:08,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:10:10,672.672 INFO    ] ================================================
[2026-06-27 10:10:10,687.687 INFO    ] Launching Daemon at Sat Jun 27 10:10:10 IST 2026
[2026-06-27 10:10:10,699.699 INFO    ] ================================================
[2026-06-27 10:10:11,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:10:11
[2026-06-27 10:10:11,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:10:11,551.551 INFO    ] Initializing speech engine...
[2026-06-27 10:10:11,557.557 INFO    ] 2026-06-27 10:10:11
[2026-06-27 10:10:11,766.766 INFO    ] 2026-06-27 10:10:11
[2026-06-27 10:10:11,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:10:11,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:10:11,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:10:12,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:10:12,182.182 INFO    ] time= 27/06/2026 10:10:12
[2026-06-27 10:10:12,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:10:12,216.216 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:10:12,281.281 INFO    ] No existing commands found in stream
[2026-06-27 10:10:17,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:10:17,296.296 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-27 10:10:19,680.680 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 10:10:19,682.682 INFO    ] Checking for system updates...
[2026-06-27 10:10:19,705.705 INFO    ] 200
[2026-06-27 10:10:19,706.706 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:10:19,742.742 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:10:19,744.744 INFO    ] No update needed
[2026-06-27 10:10:19,745.745 INFO    ] Checking for camera pi updates...
[2026-06-27 10:10:19,768.768 INFO    ] 200
[2026-06-27 10:10:19,769.769 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:10:19,795.795 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:10:19,837.837 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:10:19,838.838 INFO    ] No camera update needed
[2026-06-27 10:10:19,840.840 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:10:19,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:10:19,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:10:19,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:10:21,886.886 INFO    ] ================================================
[2026-06-27 10:10:21,901.901 INFO    ] Launching Daemon at Sat Jun 27 10:10:21 IST 2026
[2026-06-27 10:10:21,912.912 INFO    ] ================================================
[2026-06-27 10:10:22,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:10:22
[2026-06-27 10:10:22,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:10:22,766.766 INFO    ] Initializing speech engine...
[2026-06-27 10:10:22,772.772 INFO    ] 2026-06-27 10:10:22
[2026-06-27 10:10:22,982.982 INFO    ] 2026-06-27 10:10:22
[2026-06-27 10:10:23,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:10:23,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:10:23,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:10:23,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:10:23,425.425 INFO    ] time= 27/06/2026 10:10:23
[2026-06-27 10:10:23,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:10:23,433.433 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:10:23,500.500 INFO    ] No existing commands found in stream
[2026-06-27 10:10:28,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:10:28,518.518 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-27 10:10:29,097.097 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 10:10:29,098.098 INFO    ] Checking for system updates...
[2026-06-27 10:10:29,119.119 INFO    ] 200
[2026-06-27 10:10:29,120.120 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:10:29,153.153 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:10:29,155.155 INFO    ] No update needed
[2026-06-27 10:10:29,156.156 INFO    ] Checking for camera pi updates...
[2026-06-27 10:10:29,175.175 INFO    ] 200
[2026-06-27 10:10:29,177.177 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:10:29,201.201 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:10:29,249.249 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:10:29,250.250 INFO    ] No camera update needed
[2026-06-27 10:10:29,252.252 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:10:29,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:10:29,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:10:29,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:10:31,299.299 INFO    ] ================================================
[2026-06-27 10:10:31,314.314 INFO    ] Launching Daemon at Sat Jun 27 10:10:31 IST 2026
[2026-06-27 10:10:31,325.325 INFO    ] ================================================
[2026-06-27 10:10:31,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:10:31
[2026-06-27 10:10:32,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:10:32,166.166 INFO    ] Initializing speech engine...
[2026-06-27 10:10:32,170.170 INFO    ] 2026-06-27 10:10:32
[2026-06-27 10:10:32,396.396 INFO    ] 2026-06-27 10:10:32
[2026-06-27 10:10:32,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:10:32,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:10:32,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:10:32,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:10:32,848.848 INFO    ] time= 27/06/2026 10:10:32
[2026-06-27 10:10:32,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:10:32,879.879 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:10:32,946.946 INFO    ] No existing commands found in stream
[2026-06-27 10:10:37,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:10:37,960.960 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-27 10:10:40,084.084 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 10:10:40,086.086 INFO    ] Checking for system updates...
[2026-06-27 10:10:40,108.108 INFO    ] 200
[2026-06-27 10:10:40,110.110 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:10:40,142.142 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:10:40,143.143 INFO    ] No update needed
[2026-06-27 10:10:40,145.145 INFO    ] Checking for camera pi updates...
[2026-06-27 10:10:40,165.165 INFO    ] 200
[2026-06-27 10:10:40,167.167 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:10:40,191.191 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:10:40,229.229 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:10:40,231.231 INFO    ] No camera update needed
[2026-06-27 10:10:40,232.232 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:10:40,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:10:40,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:10:40,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:10:42,284.284 INFO    ] ================================================
[2026-06-27 10:10:42,299.299 INFO    ] Launching Daemon at Sat Jun 27 10:10:42 IST 2026
[2026-06-27 10:10:42,309.309 INFO    ] ================================================
[2026-06-27 10:10:42,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:10:42
[2026-06-27 10:10:42,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:10:43,098.098 INFO    ] Initializing speech engine...
[2026-06-27 10:10:43,107.107 INFO    ] 2026-06-27 10:10:43
[2026-06-27 10:10:43,302.302 INFO    ] 2026-06-27 10:10:43
[2026-06-27 10:10:43,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:10:43,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:10:43,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:10:43,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:10:43,591.591 INFO    ] time= 27/06/2026 10:10:43
[2026-06-27 10:10:43,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:10:43,597.597 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:10:43,669.669 INFO    ] No existing commands found in stream
[2026-06-27 10:10:48,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:10:48,706.706 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-27 10:10:51,551.551 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 10:10:51,553.553 INFO    ] Checking for system updates...
[2026-06-27 10:10:51,575.575 INFO    ] 200
[2026-06-27 10:10:51,577.577 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:10:51,607.607 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:10:51,608.608 INFO    ] No update needed
[2026-06-27 10:10:51,609.609 INFO    ] Checking for camera pi updates...
[2026-06-27 10:10:51,630.630 INFO    ] 200
[2026-06-27 10:10:51,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:10:51,655.655 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:10:51,692.692 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:10:51,693.693 INFO    ] No camera update needed
[2026-06-27 10:10:51,695.695 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:10:51,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:10:51,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:10:51,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:10:53,740.740 INFO    ] ================================================
[2026-06-27 10:10:53,755.755 INFO    ] Launching Daemon at Sat Jun 27 10:10:53 IST 2026
[2026-06-27 10:10:53,766.766 INFO    ] ================================================
[2026-06-27 10:10:54,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:10:54
[2026-06-27 10:10:54,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:10:54,628.628 INFO    ] Initializing speech engine...
[2026-06-27 10:10:54,641.641 INFO    ] 2026-06-27 10:10:54
[2026-06-27 10:10:54,869.869 INFO    ] 2026-06-27 10:10:54
[2026-06-27 10:10:54,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:10:55,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:10:55,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:10:55,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:10:55,287.287 INFO    ] time= 27/06/2026 10:10:55
[2026-06-27 10:10:55,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:10:55,327.327 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:10:55,395.395 INFO    ] No existing commands found in stream
[2026-06-27 10:11:00,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:11:00,408.408 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-27 10:11:04,660.660 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 10:11:04,661.661 INFO    ] Checking for system updates...
[2026-06-27 10:11:04,683.683 INFO    ] 200
[2026-06-27 10:11:04,685.685 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:11:04,716.716 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:11:04,718.718 INFO    ] No update needed
[2026-06-27 10:11:04,719.719 INFO    ] Checking for camera pi updates...
[2026-06-27 10:11:04,740.740 INFO    ] 200
[2026-06-27 10:11:04,741.741 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:11:04,765.765 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:11:04,800.800 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:11:04,801.801 INFO    ] No camera update needed
[2026-06-27 10:11:04,802.802 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:11:04,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:11:04,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:11:04,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:11:06,849.849 INFO    ] ================================================
[2026-06-27 10:11:06,864.864 INFO    ] Launching Daemon at Sat Jun 27 10:11:06 IST 2026
[2026-06-27 10:11:06,875.875 INFO    ] ================================================
[2026-06-27 10:11:07,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:11:07
[2026-06-27 10:11:07,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:11:07,677.677 INFO    ] Initializing speech engine...
[2026-06-27 10:11:07,686.686 INFO    ] 2026-06-27 10:11:07
[2026-06-27 10:11:07,893.893 INFO    ] 2026-06-27 10:11:07
[2026-06-27 10:11:07,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:11:08,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:11:08,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:11:08,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:11:08,335.335 INFO    ] time= 27/06/2026 10:11:08
[2026-06-27 10:11:08,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:11:08,346.346 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:11:08,412.412 INFO    ] No existing commands found in stream
[2026-06-27 10:11:13,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:11:13,426.426 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-27 10:11:14,818.818 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:11:14,820.820 INFO    ] Checking for system updates...
[2026-06-27 10:11:14,841.841 INFO    ] 200
[2026-06-27 10:11:14,842.842 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:11:14,877.877 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:11:14,878.878 INFO    ] No update needed
[2026-06-27 10:11:14,880.880 INFO    ] Checking for camera pi updates...
[2026-06-27 10:11:14,901.901 INFO    ] 200
[2026-06-27 10:11:14,902.902 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:11:14,925.925 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:11:15,069.069 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:11:15,071.071 INFO    ] No camera update needed
[2026-06-27 10:11:15,072.072 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:11:15,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:11:15,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:11:15,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:11:17,117.117 INFO    ] ================================================
[2026-06-27 10:11:17,132.132 INFO    ] Launching Daemon at Sat Jun 27 10:11:17 IST 2026
[2026-06-27 10:11:17,143.143 INFO    ] ================================================
[2026-06-27 10:11:17,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:11:17
[2026-06-27 10:11:17,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:11:17,956.956 INFO    ] Initializing speech engine...
[2026-06-27 10:11:17,961.961 INFO    ] 2026-06-27 10:11:17
[2026-06-27 10:11:18,166.166 INFO    ] 2026-06-27 10:11:18
[2026-06-27 10:11:18,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:11:18,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:11:18,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:11:18,510.510 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:11:18,570.570 INFO    ] time= 27/06/2026 10:11:18
[2026-06-27 10:11:18,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:11:18,611.611 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:11:18,681.681 INFO    ] No existing commands found in stream
[2026-06-27 10:11:23,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:11:23,695.695 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-27 10:11:26,522.522 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:11:26,523.523 INFO    ] Checking for system updates...
[2026-06-27 10:11:26,544.544 INFO    ] 200
[2026-06-27 10:11:26,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:11:26,579.579 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:11:26,580.580 INFO    ] No update needed
[2026-06-27 10:11:26,582.582 INFO    ] Checking for camera pi updates...
[2026-06-27 10:11:26,602.602 INFO    ] 200
[2026-06-27 10:11:26,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:11:26,627.627 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:11:26,676.676 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:11:26,677.677 INFO    ] No camera update needed
[2026-06-27 10:11:26,679.679 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:11:26,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:11:26,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:11:26,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:11:28,725.725 INFO    ] ================================================
[2026-06-27 10:11:28,741.741 INFO    ] Launching Daemon at Sat Jun 27 10:11:28 IST 2026
[2026-06-27 10:11:28,751.751 INFO    ] ================================================
[2026-06-27 10:11:29,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:11:29
[2026-06-27 10:11:29,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:11:29,566.566 INFO    ] Initializing speech engine...
[2026-06-27 10:11:29,571.571 INFO    ] 2026-06-27 10:11:29
[2026-06-27 10:11:29,777.777 INFO    ] 2026-06-27 10:11:29
[2026-06-27 10:11:29,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:11:29,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:11:29,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:11:30,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:11:30,181.181 INFO    ] time= 27/06/2026 10:11:30
[2026-06-27 10:11:30,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:11:30,225.225 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:11:30,292.292 INFO    ] No existing commands found in stream
[2026-06-27 10:11:35,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:11:35,305.305 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-27 10:11:38,620.620 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:11:38,621.621 INFO    ] Checking for system updates...
[2026-06-27 10:11:38,642.642 INFO    ] 200
[2026-06-27 10:11:38,643.643 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:11:38,674.674 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:11:38,675.675 INFO    ] No update needed
[2026-06-27 10:11:38,677.677 INFO    ] Checking for camera pi updates...
[2026-06-27 10:11:38,696.696 INFO    ] 200
[2026-06-27 10:11:38,697.697 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:11:38,721.721 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:11:38,761.761 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:11:38,763.763 INFO    ] No camera update needed
[2026-06-27 10:11:38,765.765 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:11:38,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:11:38,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:11:38,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:11:40,810.810 INFO    ] ================================================
[2026-06-27 10:11:40,826.826 INFO    ] Launching Daemon at Sat Jun 27 10:11:40 IST 2026
[2026-06-27 10:11:40,837.837 INFO    ] ================================================
[2026-06-27 10:11:41,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:11:41
[2026-06-27 10:11:41,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:11:41,633.633 INFO    ] Initializing speech engine...
[2026-06-27 10:11:41,638.638 INFO    ] 2026-06-27 10:11:41
[2026-06-27 10:11:41,857.857 INFO    ] 2026-06-27 10:11:41
[2026-06-27 10:11:41,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:11:42,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:11:42,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:11:42,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:11:42,280.280 INFO    ] time= 27/06/2026 10:11:42
[2026-06-27 10:11:42,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:11:42,310.310 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:11:42,377.377 INFO    ] No existing commands found in stream
[2026-06-27 10:11:47,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:11:47,390.390 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-27 10:11:49,937.937 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:11:49,938.938 INFO    ] Checking for system updates...
[2026-06-27 10:11:49,960.960 INFO    ] 200
[2026-06-27 10:11:49,961.961 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:11:49,992.992 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:11:49,994.994 INFO    ] No update needed
[2026-06-27 10:11:49,995.995 INFO    ] Checking for camera pi updates...
[2026-06-27 10:11:50,015.015 INFO    ] 200
[2026-06-27 10:11:50,016.016 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:11:50,045.045 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:11:50,094.094 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:11:50,096.096 INFO    ] No camera update needed
[2026-06-27 10:11:50,097.097 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:11:50,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:11:50,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:11:50,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:11:52,144.144 INFO    ] ================================================
[2026-06-27 10:11:52,159.159 INFO    ] Launching Daemon at Sat Jun 27 10:11:52 IST 2026
[2026-06-27 10:11:52,170.170 INFO    ] ================================================
[2026-06-27 10:11:52,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:11:52
[2026-06-27 10:11:52,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:11:52,947.947 INFO    ] Initializing speech engine...
[2026-06-27 10:11:52,954.954 INFO    ] 2026-06-27 10:11:52
[2026-06-27 10:11:53,169.169 INFO    ] 2026-06-27 10:11:53
[2026-06-27 10:11:53,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:11:53,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:11:53,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:11:53,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:11:53,578.578 INFO    ] time= 27/06/2026 10:11:53
[2026-06-27 10:11:53,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:11:53,624.624 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:11:53,703.703 INFO    ] No existing commands found in stream
[2026-06-27 10:11:58,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:11:58,717.717 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-27 10:12:00,104.104 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 10:12:00,106.106 INFO    ] Checking for system updates...
[2026-06-27 10:12:00,129.129 INFO    ] 200
[2026-06-27 10:12:00,130.130 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:12:00,160.160 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:12:00,162.162 INFO    ] No update needed
[2026-06-27 10:12:00,163.163 INFO    ] Checking for camera pi updates...
[2026-06-27 10:12:00,185.185 INFO    ] 200
[2026-06-27 10:12:00,186.186 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:12:00,210.210 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:12:00,250.250 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:12:00,252.252 INFO    ] No camera update needed
[2026-06-27 10:12:00,253.253 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:12:00,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:12:00,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:12:00,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:12:02,294.294 INFO    ] ================================================
[2026-06-27 10:12:02,304.304 INFO    ] Launching Daemon at Sat Jun 27 10:12:02 IST 2026
[2026-06-27 10:12:02,310.310 INFO    ] ================================================
[2026-06-27 10:12:02,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:12:02
[2026-06-27 10:12:02,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:12:03,091.091 INFO    ] Initializing speech engine...
[2026-06-27 10:12:03,103.103 INFO    ] 2026-06-27 10:12:03
[2026-06-27 10:12:03,313.313 INFO    ] 2026-06-27 10:12:03
[2026-06-27 10:12:03,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:12:03,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:12:03,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:12:03,682.682 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:12:03,735.735 INFO    ] time= 27/06/2026 10:12:03
[2026-06-27 10:12:03,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:12:03,765.765 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:12:03,832.832 INFO    ] No existing commands found in stream
[2026-06-27 10:12:08,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:12:08,843.843 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-27 10:12:13,226.226 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:12:13,228.228 INFO    ] Checking for system updates...
[2026-06-27 10:12:13,249.249 INFO    ] 200
[2026-06-27 10:12:13,250.250 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:12:13,280.280 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:12:13,282.282 INFO    ] No update needed
[2026-06-27 10:12:13,283.283 INFO    ] Checking for camera pi updates...
[2026-06-27 10:12:13,304.304 INFO    ] 200
[2026-06-27 10:12:13,306.306 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:12:13,330.330 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:12:13,367.367 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:12:13,369.369 INFO    ] No camera update needed
[2026-06-27 10:12:13,370.370 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:12:13,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:12:13,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:12:13,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:12:15,417.417 INFO    ] ================================================
[2026-06-27 10:12:15,432.432 INFO    ] Launching Daemon at Sat Jun 27 10:12:15 IST 2026
[2026-06-27 10:12:15,443.443 INFO    ] ================================================
[2026-06-27 10:12:15,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:12:15
[2026-06-27 10:12:16,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:12:16,248.248 INFO    ] Initializing speech engine...
[2026-06-27 10:12:16,253.253 INFO    ] 2026-06-27 10:12:16
[2026-06-27 10:12:16,447.447 INFO    ] 2026-06-27 10:12:16
[2026-06-27 10:12:16,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:12:16,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:12:16,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:12:16,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:12:16,919.919 INFO    ] time= 27/06/2026 10:12:16
[2026-06-27 10:12:16,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:12:16,977.977 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:12:17,054.054 INFO    ] No existing commands found in stream
[2026-06-27 10:12:22,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:12:22,068.068 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-27 10:12:25,802.802 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 10:12:25,804.804 INFO    ] Checking for system updates...
[2026-06-27 10:12:25,826.826 INFO    ] 200
[2026-06-27 10:12:25,828.828 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:12:25,859.859 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:12:25,861.861 INFO    ] No update needed
[2026-06-27 10:12:25,862.862 INFO    ] Checking for camera pi updates...
[2026-06-27 10:12:25,885.885 INFO    ] 200
[2026-06-27 10:12:25,886.886 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:12:25,910.910 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:12:25,950.950 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:12:25,951.951 INFO    ] No camera update needed
[2026-06-27 10:12:25,953.953 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:12:25,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:12:25,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:12:25,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:12:28,000.000 INFO    ] ================================================
[2026-06-27 10:12:28,015.015 INFO    ] Launching Daemon at Sat Jun 27 10:12:28 IST 2026
[2026-06-27 10:12:28,026.026 INFO    ] ================================================
[2026-06-27 10:12:28,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:12:28
[2026-06-27 10:12:28,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:12:28,892.892 INFO    ] Initializing speech engine...
[2026-06-27 10:12:28,896.896 INFO    ] 2026-06-27 10:12:28
[2026-06-27 10:12:29,111.111 INFO    ] 2026-06-27 10:12:29
[2026-06-27 10:12:29,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:12:29,328.328 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:12:29,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:12:29,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:12:29,521.521 INFO    ] time= 27/06/2026 10:12:29
[2026-06-27 10:12:29,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:12:29,565.565 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:12:29,632.632 INFO    ] No existing commands found in stream
[2026-06-27 10:12:34,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:12:34,650.650 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-27 10:12:37,964.964 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:12:37,965.965 INFO    ] Checking for system updates...
[2026-06-27 10:12:37,987.987 INFO    ] 200
[2026-06-27 10:12:37,988.988 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:12:38,019.019 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:12:38,020.020 INFO    ] No update needed
[2026-06-27 10:12:38,022.022 INFO    ] Checking for camera pi updates...
[2026-06-27 10:12:38,044.044 INFO    ] 200
[2026-06-27 10:12:38,045.045 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:12:38,071.071 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:12:38,124.124 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:12:38,125.125 INFO    ] No camera update needed
[2026-06-27 10:12:38,127.127 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:12:38,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:12:38,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:12:38,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:12:40,174.174 INFO    ] ================================================
[2026-06-27 10:12:40,190.190 INFO    ] Launching Daemon at Sat Jun 27 10:12:40 IST 2026
[2026-06-27 10:12:40,200.200 INFO    ] ================================================
[2026-06-27 10:12:40,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:12:40
[2026-06-27 10:12:40,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:12:41,008.008 INFO    ] Initializing speech engine...
[2026-06-27 10:12:41,019.019 INFO    ] 2026-06-27 10:12:41
[2026-06-27 10:12:41,225.225 INFO    ] 2026-06-27 10:12:41
[2026-06-27 10:12:41,254.254 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:12:41,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:12:41,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:12:41,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:12:41,639.639 INFO    ] time= 27/06/2026 10:12:41
[2026-06-27 10:12:41,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:12:41,674.674 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:12:41,762.762 INFO    ] No existing commands found in stream
[2026-06-27 10:12:46,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:12:46,778.778 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-27 10:12:48,286.286 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 10:12:48,288.288 INFO    ] Checking for system updates...
[2026-06-27 10:12:48,309.309 INFO    ] 200
[2026-06-27 10:12:48,310.310 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:12:48,345.345 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:12:48,346.346 INFO    ] No update needed
[2026-06-27 10:12:48,347.347 INFO    ] Checking for camera pi updates...
[2026-06-27 10:12:48,367.367 INFO    ] 200
[2026-06-27 10:12:48,368.368 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:12:48,392.392 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:12:48,429.429 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:12:48,430.430 INFO    ] No camera update needed
[2026-06-27 10:12:48,432.432 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:12:48,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:12:48,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:12:48,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:12:50,480.480 INFO    ] ================================================
[2026-06-27 10:12:50,496.496 INFO    ] Launching Daemon at Sat Jun 27 10:12:50 IST 2026
[2026-06-27 10:12:50,507.507 INFO    ] ================================================
[2026-06-27 10:12:50,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:12:50
[2026-06-27 10:12:51,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:12:51,342.342 INFO    ] Initializing speech engine...
[2026-06-27 10:12:51,348.348 INFO    ] 2026-06-27 10:12:51
[2026-06-27 10:12:51,555.555 INFO    ] 2026-06-27 10:12:51
[2026-06-27 10:12:51,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:12:51,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:12:51,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:12:51,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:12:51,975.975 INFO    ] time= 27/06/2026 10:12:51
[2026-06-27 10:12:52,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:12:52,006.006 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:12:52,073.073 INFO    ] No existing commands found in stream
[2026-06-27 10:12:57,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:12:57,086.086 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-27 10:13:00,139.139 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:13:00,141.141 INFO    ] Checking for system updates...
[2026-06-27 10:13:00,162.162 INFO    ] 200
[2026-06-27 10:13:00,163.163 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:13:00,198.198 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:13:00,199.199 INFO    ] No update needed
[2026-06-27 10:13:00,201.201 INFO    ] Checking for camera pi updates...
[2026-06-27 10:13:00,220.220 INFO    ] 200
[2026-06-27 10:13:00,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:13:00,247.247 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:13:00,285.285 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:13:00,287.287 INFO    ] No camera update needed
[2026-06-27 10:13:00,288.288 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:13:00,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:13:00,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:13:00,295.295 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:13:02,332.332 INFO    ] ================================================
[2026-06-27 10:13:02,345.345 INFO    ] Launching Daemon at Sat Jun 27 10:13:02 IST 2026
[2026-06-27 10:13:02,356.356 INFO    ] ================================================
[2026-06-27 10:13:02,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:13:02
[2026-06-27 10:13:03,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:13:03,196.196 INFO    ] Initializing speech engine...
[2026-06-27 10:13:03,207.207 INFO    ] 2026-06-27 10:13:03
[2026-06-27 10:13:03,410.410 INFO    ] 2026-06-27 10:13:03
[2026-06-27 10:13:03,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:13:03,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:13:03,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:13:03,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:13:03,828.828 INFO    ] time= 27/06/2026 10:13:03
[2026-06-27 10:13:03,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:13:03,856.856 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:13:03,924.924 INFO    ] No existing commands found in stream
[2026-06-27 10:13:08,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:13:08,936.936 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-27 10:13:13,312.312 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 10:13:13,314.314 INFO    ] Checking for system updates...
[2026-06-27 10:13:13,336.336 INFO    ] 200
[2026-06-27 10:13:13,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:13:13,369.369 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:13:13,370.370 INFO    ] No update needed
[2026-06-27 10:13:13,372.372 INFO    ] Checking for camera pi updates...
[2026-06-27 10:13:13,391.391 INFO    ] 200
[2026-06-27 10:13:13,393.393 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:13:13,418.418 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:13:13,456.456 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:13:13,457.457 INFO    ] No camera update needed
[2026-06-27 10:13:13,459.459 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:13:13,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:13:13,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:13:13,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:13:15,506.506 INFO    ] ================================================
[2026-06-27 10:13:15,520.520 INFO    ] Launching Daemon at Sat Jun 27 10:13:15 IST 2026
[2026-06-27 10:13:15,531.531 INFO    ] ================================================
[2026-06-27 10:13:15,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:13:15
[2026-06-27 10:13:16,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:13:16,346.346 INFO    ] Initializing speech engine...
[2026-06-27 10:13:16,351.351 INFO    ] 2026-06-27 10:13:16
[2026-06-27 10:13:16,557.557 INFO    ] 2026-06-27 10:13:16
[2026-06-27 10:13:16,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:13:16,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:13:16,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:13:16,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:13:16,998.998 INFO    ] time= 27/06/2026 10:13:16
[2026-06-27 10:13:17,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:13:17,006.006 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:13:17,073.073 INFO    ] No existing commands found in stream
[2026-06-27 10:13:22,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:13:22,088.088 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-27 10:13:24,913.913 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 10:13:24,915.915 INFO    ] Checking for system updates...
[2026-06-27 10:13:24,936.936 INFO    ] 200
[2026-06-27 10:13:24,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:13:24,971.971 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:13:24,972.972 INFO    ] No update needed
[2026-06-27 10:13:24,974.974 INFO    ] Checking for camera pi updates...
[2026-06-27 10:13:24,998.998 INFO    ] 200
[2026-06-27 10:13:25,000.000 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:13:25,036.036 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:13:25,178.178 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:13:25,180.180 INFO    ] No camera update needed
[2026-06-27 10:13:25,181.181 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:13:25,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:13:25,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:13:25,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:13:27,228.228 INFO    ] ================================================
[2026-06-27 10:13:27,243.243 INFO    ] Launching Daemon at Sat Jun 27 10:13:27 IST 2026
[2026-06-27 10:13:27,254.254 INFO    ] ================================================
[2026-06-27 10:13:27,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:13:27
[2026-06-27 10:13:27,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:13:28,070.070 INFO    ] Initializing speech engine...
[2026-06-27 10:13:28,081.081 INFO    ] 2026-06-27 10:13:28
[2026-06-27 10:13:28,283.283 INFO    ] 2026-06-27 10:13:28
[2026-06-27 10:13:28,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:13:28,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:13:28,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:13:28,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:13:28,705.705 INFO    ] time= 27/06/2026 10:13:28
[2026-06-27 10:13:28,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:13:28,734.734 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:13:28,802.802 INFO    ] No existing commands found in stream
[2026-06-27 10:13:33,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:13:33,813.813 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-27 10:13:35,995.995 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 10:13:35,996.996 INFO    ] Checking for system updates...
[2026-06-27 10:13:36,020.020 INFO    ] 200
[2026-06-27 10:13:36,021.021 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:13:36,055.055 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:13:36,057.057 INFO    ] No update needed
[2026-06-27 10:13:36,058.058 INFO    ] Checking for camera pi updates...
[2026-06-27 10:13:36,078.078 INFO    ] 200
[2026-06-27 10:13:36,079.079 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:13:36,105.105 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:13:36,142.142 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:13:36,144.144 INFO    ] No camera update needed
[2026-06-27 10:13:36,146.146 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:13:36,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:13:36,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:13:36,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:13:38,193.193 INFO    ] ================================================
[2026-06-27 10:13:38,208.208 INFO    ] Launching Daemon at Sat Jun 27 10:13:38 IST 2026
[2026-06-27 10:13:38,219.219 INFO    ] ================================================
[2026-06-27 10:13:38,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:13:38
[2026-06-27 10:13:38,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:13:39,062.062 INFO    ] Initializing speech engine...
[2026-06-27 10:13:39,066.066 INFO    ] 2026-06-27 10:13:39
[2026-06-27 10:13:39,263.263 INFO    ] 2026-06-27 10:13:39
[2026-06-27 10:13:39,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:13:39,470.470 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:13:39,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:13:39,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:13:39,756.756 INFO    ] time= 27/06/2026 10:13:39
[2026-06-27 10:13:39,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:13:39,793.793 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:13:39,870.870 INFO    ] No existing commands found in stream
[2026-06-27 10:13:44,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:13:44,884.884 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-27 10:13:47,237.237 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:13:47,239.239 INFO    ] Checking for system updates...
[2026-06-27 10:13:47,261.261 INFO    ] 200
[2026-06-27 10:13:47,262.262 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:13:47,294.294 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:13:47,295.295 INFO    ] No update needed
[2026-06-27 10:13:47,297.297 INFO    ] Checking for camera pi updates...
[2026-06-27 10:13:47,319.319 INFO    ] 200
[2026-06-27 10:13:47,320.320 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:13:47,345.345 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:13:47,398.398 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:13:47,400.400 INFO    ] No camera update needed
[2026-06-27 10:13:47,401.401 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:13:47,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:13:47,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:13:47,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:13:49,451.451 INFO    ] ================================================
[2026-06-27 10:13:49,466.466 INFO    ] Launching Daemon at Sat Jun 27 10:13:49 IST 2026
[2026-06-27 10:13:49,478.478 INFO    ] ================================================
[2026-06-27 10:13:49,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:13:49
[2026-06-27 10:13:50,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:13:50,334.334 INFO    ] Initializing speech engine...
[2026-06-27 10:13:50,341.341 INFO    ] 2026-06-27 10:13:50
[2026-06-27 10:13:50,551.551 INFO    ] 2026-06-27 10:13:50
[2026-06-27 10:13:50,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:13:50,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:13:50,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:13:50,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:13:50,973.973 INFO    ] time= 27/06/2026 10:13:50
[2026-06-27 10:13:50,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:13:51,001.001 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:13:51,067.067 INFO    ] No existing commands found in stream
[2026-06-27 10:13:56,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:13:56,080.080 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-27 10:13:58,309.309 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 10:13:58,310.310 INFO    ] Checking for system updates...
[2026-06-27 10:13:58,335.335 INFO    ] 200
[2026-06-27 10:13:58,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:13:58,371.371 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:13:58,372.372 INFO    ] No update needed
[2026-06-27 10:13:58,373.373 INFO    ] Checking for camera pi updates...
[2026-06-27 10:13:58,393.393 INFO    ] 200
[2026-06-27 10:13:58,394.394 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:13:58,418.418 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:13:58,458.458 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:13:58,460.460 INFO    ] No camera update needed
[2026-06-27 10:13:58,461.461 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:13:58,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:13:58,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:13:58,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:14:00,506.506 INFO    ] ================================================
[2026-06-27 10:14:00,522.522 INFO    ] Launching Daemon at Sat Jun 27 10:14:00 IST 2026
[2026-06-27 10:14:00,533.533 INFO    ] ================================================
[2026-06-27 10:14:00,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:14:00
[2026-06-27 10:14:01,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:14:01,569.569 INFO    ] Initializing speech engine...
[2026-06-27 10:14:01,581.581 INFO    ] 2026-06-27 10:14:01
[2026-06-27 10:14:01,858.858 INFO    ] 2026-06-27 10:14:01
[2026-06-27 10:14:01,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:14:02,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:14:02,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:14:02,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:14:02,238.238 INFO    ] time= 27/06/2026 10:14:02
[2026-06-27 10:14:02,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:14:02,305.305 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:14:02,384.384 INFO    ] No existing commands found in stream
[2026-06-27 10:14:07,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:14:07,397.397 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-27 10:14:10,609.609 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 10:14:10,610.610 INFO    ] Checking for system updates...
[2026-06-27 10:14:10,631.631 INFO    ] 200
[2026-06-27 10:14:10,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:14:10,662.662 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:14:10,664.664 INFO    ] No update needed
[2026-06-27 10:14:10,665.665 INFO    ] Checking for camera pi updates...
[2026-06-27 10:14:10,685.685 INFO    ] 200
[2026-06-27 10:14:10,686.686 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:14:10,709.709 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:14:10,745.745 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:14:10,747.747 INFO    ] No camera update needed
[2026-06-27 10:14:10,748.748 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:14:10,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:14:10,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:14:10,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:14:12,795.795 INFO    ] ================================================
[2026-06-27 10:14:12,810.810 INFO    ] Launching Daemon at Sat Jun 27 10:14:12 IST 2026
[2026-06-27 10:14:12,821.821 INFO    ] ================================================
[2026-06-27 10:14:13,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:14:13
[2026-06-27 10:14:13,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:14:13,635.635 INFO    ] Initializing speech engine...
[2026-06-27 10:14:13,642.642 INFO    ] 2026-06-27 10:14:13
[2026-06-27 10:14:13,849.849 INFO    ] 2026-06-27 10:14:13
[2026-06-27 10:14:13,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:14:14,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:14:14,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:14:14,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:14:14,288.288 INFO    ] time= 27/06/2026 10:14:14
[2026-06-27 10:14:14,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:14:14,299.299 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:14:14,365.365 INFO    ] No existing commands found in stream
[2026-06-27 10:14:19,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:14:19,377.377 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-27 10:14:21,368.368 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 10:14:21,370.370 INFO    ] Checking for system updates...
[2026-06-27 10:14:21,391.391 INFO    ] 200
[2026-06-27 10:14:21,393.393 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:14:21,423.423 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:14:21,425.425 INFO    ] No update needed
[2026-06-27 10:14:21,426.426 INFO    ] Checking for camera pi updates...
[2026-06-27 10:14:21,448.448 INFO    ] 200
[2026-06-27 10:14:21,449.449 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:14:21,477.477 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:14:21,519.519 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:14:21,520.520 INFO    ] No camera update needed
[2026-06-27 10:14:21,521.521 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:14:21,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:14:21,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:14:21,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:14:23,568.568 INFO    ] ================================================
[2026-06-27 10:14:23,584.584 INFO    ] Launching Daemon at Sat Jun 27 10:14:23 IST 2026
[2026-06-27 10:14:23,598.598 INFO    ] ================================================
[2026-06-27 10:14:23,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:14:23
[2026-06-27 10:14:24,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:14:24,374.374 INFO    ] Initializing speech engine...
[2026-06-27 10:14:24,377.377 INFO    ] 2026-06-27 10:14:24
[2026-06-27 10:14:24,571.571 INFO    ] 2026-06-27 10:14:24
[2026-06-27 10:14:24,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:14:24,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:14:24,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:14:24,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:14:24,996.996 INFO    ] time= 27/06/2026 10:14:24
[2026-06-27 10:14:25,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:14:25,079.079 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:14:25,180.180 INFO    ] No existing commands found in stream
[2026-06-27 10:14:30,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:14:30,194.194 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-27 10:14:32,468.468 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 10:14:32,470.470 INFO    ] Checking for system updates...
[2026-06-27 10:14:32,491.491 INFO    ] 200
[2026-06-27 10:14:32,492.492 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:14:32,525.525 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:14:32,527.527 INFO    ] No update needed
[2026-06-27 10:14:32,528.528 INFO    ] Checking for camera pi updates...
[2026-06-27 10:14:32,548.548 INFO    ] 200
[2026-06-27 10:14:32,550.550 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:14:32,573.573 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:14:32,606.606 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:14:32,607.607 INFO    ] No camera update needed
[2026-06-27 10:14:32,609.609 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:14:32,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:14:32,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:14:32,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:14:34,658.658 INFO    ] ================================================
[2026-06-27 10:14:34,673.673 INFO    ] Launching Daemon at Sat Jun 27 10:14:34 IST 2026
[2026-06-27 10:14:34,684.684 INFO    ] ================================================
[2026-06-27 10:14:35,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:14:35
[2026-06-27 10:14:35,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:14:35,575.575 INFO    ] Initializing speech engine...
[2026-06-27 10:14:35,585.585 INFO    ] 2026-06-27 10:14:35
[2026-06-27 10:14:35,796.796 INFO    ] 2026-06-27 10:14:35
[2026-06-27 10:14:35,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:14:36,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:14:36,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:14:36,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:14:36,220.220 INFO    ] time= 27/06/2026 10:14:36
[2026-06-27 10:14:36,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:14:36,250.250 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:14:36,315.315 INFO    ] No existing commands found in stream
[2026-06-27 10:14:41,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:14:41,329.329 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-27 10:14:45,540.540 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 10:14:45,542.542 INFO    ] Checking for system updates...
[2026-06-27 10:14:45,563.563 INFO    ] 200
[2026-06-27 10:14:45,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:14:45,596.596 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:14:45,598.598 INFO    ] No update needed
[2026-06-27 10:14:45,599.599 INFO    ] Checking for camera pi updates...
[2026-06-27 10:14:45,619.619 INFO    ] 200
[2026-06-27 10:14:45,620.620 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:14:45,647.647 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:14:45,687.687 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:14:45,689.689 INFO    ] No camera update needed
[2026-06-27 10:14:45,690.690 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:14:45,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:14:45,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:14:45,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:14:47,736.736 INFO    ] ================================================
[2026-06-27 10:14:47,751.751 INFO    ] Launching Daemon at Sat Jun 27 10:14:47 IST 2026
[2026-06-27 10:14:47,762.762 INFO    ] ================================================
[2026-06-27 10:14:48,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:14:48
[2026-06-27 10:14:48,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:14:48,582.582 INFO    ] Initializing speech engine...
[2026-06-27 10:14:48,588.588 INFO    ] 2026-06-27 10:14:48
[2026-06-27 10:14:48,790.790 INFO    ] 2026-06-27 10:14:48
[2026-06-27 10:14:48,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:14:49,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:14:49,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:14:49,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:14:49,210.210 INFO    ] time= 27/06/2026 10:14:49
[2026-06-27 10:14:49,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:14:49,241.241 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:14:49,309.309 INFO    ] No existing commands found in stream
[2026-06-27 10:14:54,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:14:54,326.326 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-27 10:14:54,958.958 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 10:14:54,960.960 INFO    ] Checking for system updates...
[2026-06-27 10:14:54,980.980 INFO    ] 200
[2026-06-27 10:14:54,982.982 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:14:55,015.015 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:14:55,016.016 INFO    ] No update needed
[2026-06-27 10:14:55,018.018 INFO    ] Checking for camera pi updates...
[2026-06-27 10:14:55,037.037 INFO    ] 200
[2026-06-27 10:14:55,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:14:55,065.065 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:14:55,089.089 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:14:55,091.091 INFO    ] No camera update needed
[2026-06-27 10:14:55,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:14:55,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:14:55,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:14:55,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:14:57,139.139 INFO    ] ================================================
[2026-06-27 10:14:57,155.155 INFO    ] Launching Daemon at Sat Jun 27 10:14:57 IST 2026
[2026-06-27 10:14:57,166.166 INFO    ] ================================================
[2026-06-27 10:14:57,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:14:57
[2026-06-27 10:14:57,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:14:57,942.942 INFO    ] Initializing speech engine...
[2026-06-27 10:14:57,950.950 INFO    ] 2026-06-27 10:14:57
[2026-06-27 10:14:58,156.156 INFO    ] 2026-06-27 10:14:58
[2026-06-27 10:14:58,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:14:58,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:14:58,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:14:58,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:14:58,588.588 INFO    ] time= 27/06/2026 10:14:58
[2026-06-27 10:14:58,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:14:58,620.620 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:14:58,692.692 INFO    ] No existing commands found in stream
[2026-06-27 10:15:03,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:15:03,706.706 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-27 10:15:07,200.200 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 10:15:07,202.202 INFO    ] Checking for system updates...
[2026-06-27 10:15:07,222.222 INFO    ] 200
[2026-06-27 10:15:07,224.224 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:15:07,255.255 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:15:07,256.256 INFO    ] No update needed
[2026-06-27 10:15:07,258.258 INFO    ] Checking for camera pi updates...
[2026-06-27 10:15:07,277.277 INFO    ] 200
[2026-06-27 10:15:07,278.278 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:15:07,303.303 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:15:07,344.344 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:15:07,345.345 INFO    ] No camera update needed
[2026-06-27 10:15:07,346.346 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:15:07,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:15:07,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:15:07,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:15:09,395.395 INFO    ] ================================================
[2026-06-27 10:15:09,410.410 INFO    ] Launching Daemon at Sat Jun 27 10:15:09 IST 2026
[2026-06-27 10:15:09,421.421 INFO    ] ================================================
[2026-06-27 10:15:09,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:15:09
[2026-06-27 10:15:10,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:15:10,256.256 INFO    ] Initializing speech engine...
[2026-06-27 10:15:10,260.260 INFO    ] 2026-06-27 10:15:10
[2026-06-27 10:15:10,467.467 INFO    ] 2026-06-27 10:15:10
[2026-06-27 10:15:10,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:15:10,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:15:10,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:15:10,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:15:10,906.906 INFO    ] time= 27/06/2026 10:15:10
[2026-06-27 10:15:10,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:15:10,915.915 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:15:10,981.981 INFO    ] No existing commands found in stream
[2026-06-27 10:15:15,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:15:15,993.993 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-27 10:15:18,948.948 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:15:18,949.949 INFO    ] Checking for system updates...
[2026-06-27 10:15:18,970.970 INFO    ] 200
[2026-06-27 10:15:18,972.972 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:15:19,005.005 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:15:19,006.006 INFO    ] No update needed
[2026-06-27 10:15:19,007.007 INFO    ] Checking for camera pi updates...
[2026-06-27 10:15:19,028.028 INFO    ] 200
[2026-06-27 10:15:19,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:15:19,055.055 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:15:19,096.096 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:15:19,097.097 INFO    ] No camera update needed
[2026-06-27 10:15:19,099.099 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:15:19,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:15:19,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:15:19,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:15:21,146.146 INFO    ] ================================================
[2026-06-27 10:15:21,161.161 INFO    ] Launching Daemon at Sat Jun 27 10:15:21 IST 2026
[2026-06-27 10:15:21,172.172 INFO    ] ================================================
[2026-06-27 10:15:21,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:15:21
[2026-06-27 10:15:21,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:15:22,048.048 INFO    ] Initializing speech engine...
[2026-06-27 10:15:22,054.054 INFO    ] 2026-06-27 10:15:22
[2026-06-27 10:15:22,266.266 INFO    ] 2026-06-27 10:15:22
[2026-06-27 10:15:22,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:15:22,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:15:22,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:15:22,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:15:22,691.691 INFO    ] time= 27/06/2026 10:15:22
[2026-06-27 10:15:22,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:15:22,722.722 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:15:22,789.789 INFO    ] No existing commands found in stream
[2026-06-27 10:15:27,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:15:27,804.804 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-27 10:15:30,119.119 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 10:15:30,120.120 INFO    ] Checking for system updates...
[2026-06-27 10:15:30,142.142 INFO    ] 200
[2026-06-27 10:15:30,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:15:30,176.176 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:15:30,177.177 INFO    ] No update needed
[2026-06-27 10:15:30,178.178 INFO    ] Checking for camera pi updates...
[2026-06-27 10:15:30,199.199 INFO    ] 200
[2026-06-27 10:15:30,200.200 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:15:30,226.226 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:15:30,366.366 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:15:30,368.368 INFO    ] No camera update needed
[2026-06-27 10:15:30,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:15:30,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:15:30,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:15:30,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:15:32,408.408 INFO    ] ================================================
[2026-06-27 10:15:32,417.417 INFO    ] Launching Daemon at Sat Jun 27 10:15:32 IST 2026
[2026-06-27 10:15:32,424.424 INFO    ] ================================================
[2026-06-27 10:15:32,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:15:32
[2026-06-27 10:15:33,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:15:33,232.232 INFO    ] Initializing speech engine...
[2026-06-27 10:15:33,237.237 INFO    ] 2026-06-27 10:15:33
[2026-06-27 10:15:33,445.445 INFO    ] 2026-06-27 10:15:33
[2026-06-27 10:15:33,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:15:33,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:15:33,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:15:33,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:15:33,855.855 INFO    ] time= 27/06/2026 10:15:33
[2026-06-27 10:15:33,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:15:33,894.894 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:15:33,965.965 INFO    ] No existing commands found in stream
[2026-06-27 10:15:38,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:15:38,977.977 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-27 10:15:39,443.443 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:15:39,445.445 INFO    ] Checking for system updates...
[2026-06-27 10:15:39,466.466 INFO    ] 200
[2026-06-27 10:15:39,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:15:39,500.500 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:15:39,501.501 INFO    ] No update needed
[2026-06-27 10:15:39,503.503 INFO    ] Checking for camera pi updates...
[2026-06-27 10:15:39,523.523 INFO    ] 200
[2026-06-27 10:15:39,524.524 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:15:39,548.548 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:15:39,586.586 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:15:39,588.588 INFO    ] No camera update needed
[2026-06-27 10:15:39,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:15:39,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:15:39,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:15:39,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:15:41,634.634 INFO    ] ================================================
[2026-06-27 10:15:41,649.649 INFO    ] Launching Daemon at Sat Jun 27 10:15:41 IST 2026
[2026-06-27 10:15:41,660.660 INFO    ] ================================================
[2026-06-27 10:15:42,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:15:42
[2026-06-27 10:15:42,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:15:42,481.481 INFO    ] Initializing speech engine...
[2026-06-27 10:15:42,491.491 INFO    ] 2026-06-27 10:15:42
[2026-06-27 10:15:42,698.698 INFO    ] 2026-06-27 10:15:42
[2026-06-27 10:15:42,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:15:42,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:15:42,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:15:43,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:15:43,132.132 INFO    ] time= 27/06/2026 10:15:43
[2026-06-27 10:15:43,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:15:43,149.149 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:15:43,216.216 INFO    ] No existing commands found in stream
[2026-06-27 10:15:48,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:15:48,233.233 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-27 10:15:49,480.480 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 10:15:49,482.482 INFO    ] Checking for system updates...
[2026-06-27 10:15:49,505.505 INFO    ] 200
[2026-06-27 10:15:49,506.506 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:15:49,540.540 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:15:49,541.541 INFO    ] No update needed
[2026-06-27 10:15:49,542.542 INFO    ] Checking for camera pi updates...
[2026-06-27 10:15:49,563.563 INFO    ] 200
[2026-06-27 10:15:49,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:15:49,589.589 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:15:49,630.630 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:15:49,631.631 INFO    ] No camera update needed
[2026-06-27 10:15:49,632.632 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:15:49,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:15:49,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:15:49,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:15:51,679.679 INFO    ] ================================================
[2026-06-27 10:15:51,696.696 INFO    ] Launching Daemon at Sat Jun 27 10:15:51 IST 2026
[2026-06-27 10:15:51,706.706 INFO    ] ================================================
[2026-06-27 10:15:52,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:15:52
[2026-06-27 10:15:52,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:15:52,521.521 INFO    ] Initializing speech engine...
[2026-06-27 10:15:52,531.531 INFO    ] 2026-06-27 10:15:52
[2026-06-27 10:15:52,737.737 INFO    ] 2026-06-27 10:15:52
[2026-06-27 10:15:52,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:15:52,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:15:52,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:15:53,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:15:53,144.144 INFO    ] time= 27/06/2026 10:15:53
[2026-06-27 10:15:53,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:15:53,182.182 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:15:53,247.247 INFO    ] No existing commands found in stream
[2026-06-27 10:15:58,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:15:58,259.259 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-27 10:16:00,157.157 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 10:16:00,158.158 INFO    ] Checking for system updates...
[2026-06-27 10:16:00,179.179 INFO    ] 200
[2026-06-27 10:16:00,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:16:00,210.210 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:16:00,212.212 INFO    ] No update needed
[2026-06-27 10:16:00,213.213 INFO    ] Checking for camera pi updates...
[2026-06-27 10:16:00,234.234 INFO    ] 200
[2026-06-27 10:16:00,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:16:00,260.260 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:16:00,302.302 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:16:00,304.304 INFO    ] No camera update needed
[2026-06-27 10:16:00,305.305 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:16:00,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:16:00,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:16:00,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:16:02,344.344 INFO    ] ================================================
[2026-06-27 10:16:02,352.352 INFO    ] Launching Daemon at Sat Jun 27 10:16:02 IST 2026
[2026-06-27 10:16:02,358.358 INFO    ] ================================================
[2026-06-27 10:16:02,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:16:02
[2026-06-27 10:16:03,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:16:03,181.181 INFO    ] Initializing speech engine...
[2026-06-27 10:16:03,192.192 INFO    ] 2026-06-27 10:16:03
[2026-06-27 10:16:03,402.402 INFO    ] 2026-06-27 10:16:03
[2026-06-27 10:16:03,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:16:03,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:16:03,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:16:03,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:16:03,851.851 INFO    ] time= 27/06/2026 10:16:03
[2026-06-27 10:16:03,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:16:03,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:16:03,932.932 INFO    ] No existing commands found in stream
[2026-06-27 10:16:08,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:16:08,945.945 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-27 10:16:09,628.628 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 10:16:09,629.629 INFO    ] Checking for system updates...
[2026-06-27 10:16:09,652.652 INFO    ] 200
[2026-06-27 10:16:09,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:16:09,685.685 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:16:09,686.686 INFO    ] No update needed
[2026-06-27 10:16:09,688.688 INFO    ] Checking for camera pi updates...
[2026-06-27 10:16:09,707.707 INFO    ] 200
[2026-06-27 10:16:09,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:16:09,734.734 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:16:09,775.775 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:16:09,777.777 INFO    ] No camera update needed
[2026-06-27 10:16:09,779.779 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:16:09,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:16:09,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:16:09,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:16:11,826.826 INFO    ] ================================================
[2026-06-27 10:16:11,842.842 INFO    ] Launching Daemon at Sat Jun 27 10:16:11 IST 2026
[2026-06-27 10:16:11,853.853 INFO    ] ================================================
[2026-06-27 10:16:12,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:16:12
[2026-06-27 10:16:12,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:16:12,666.666 INFO    ] Initializing speech engine...
[2026-06-27 10:16:12,671.671 INFO    ] 2026-06-27 10:16:12
[2026-06-27 10:16:12,891.891 INFO    ] 2026-06-27 10:16:12
[2026-06-27 10:16:12,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:16:13,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:16:13,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:16:13,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:16:13,359.359 INFO    ] time= 27/06/2026 10:16:13
[2026-06-27 10:16:13,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:16:13,390.390 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:16:13,463.463 INFO    ] No existing commands found in stream
[2026-06-27 10:16:18,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:16:18,484.484 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-27 10:16:21,092.092 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:16:21,094.094 INFO    ] Checking for system updates...
[2026-06-27 10:16:21,114.114 INFO    ] 200
[2026-06-27 10:16:21,116.116 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:16:21,146.146 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:16:21,147.147 INFO    ] No update needed
[2026-06-27 10:16:21,149.149 INFO    ] Checking for camera pi updates...
[2026-06-27 10:16:21,169.169 INFO    ] 200
[2026-06-27 10:16:21,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:16:21,194.194 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:16:21,235.235 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:16:21,236.236 INFO    ] No camera update needed
[2026-06-27 10:16:21,237.237 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:16:21,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:16:21,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:16:21,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:16:23,284.284 INFO    ] ================================================
[2026-06-27 10:16:23,299.299 INFO    ] Launching Daemon at Sat Jun 27 10:16:23 IST 2026
[2026-06-27 10:16:23,309.309 INFO    ] ================================================
[2026-06-27 10:16:23,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:16:23
[2026-06-27 10:16:23,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:16:24,126.126 INFO    ] Initializing speech engine...
[2026-06-27 10:16:24,133.133 INFO    ] 2026-06-27 10:16:24
[2026-06-27 10:16:24,348.348 INFO    ] 2026-06-27 10:16:24
[2026-06-27 10:16:24,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:16:24,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:16:24,574.574 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:16:24,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:16:24,777.777 INFO    ] time= 27/06/2026 10:16:24
[2026-06-27 10:16:24,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:16:24,805.805 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:16:24,872.872 INFO    ] No existing commands found in stream
[2026-06-27 10:16:29,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:16:29,886.886 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-27 10:16:31,777.777 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:16:31,779.779 INFO    ] Checking for system updates...
[2026-06-27 10:16:31,802.802 INFO    ] 200
[2026-06-27 10:16:31,804.804 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:16:31,842.842 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:16:31,844.844 INFO    ] No update needed
[2026-06-27 10:16:31,845.845 INFO    ] Checking for camera pi updates...
[2026-06-27 10:16:31,868.868 INFO    ] 200
[2026-06-27 10:16:31,869.869 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:16:31,899.899 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:16:31,925.925 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:16:31,927.927 INFO    ] No camera update needed
[2026-06-27 10:16:31,929.929 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:16:31,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:16:31,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:16:31,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:16:33,975.975 INFO    ] ================================================
[2026-06-27 10:16:33,990.990 INFO    ] Launching Daemon at Sat Jun 27 10:16:33 IST 2026
[2026-06-27 10:16:34,001.001 INFO    ] ================================================
[2026-06-27 10:16:34,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:16:34
[2026-06-27 10:16:34,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:16:34,847.847 INFO    ] Initializing speech engine...
[2026-06-27 10:16:34,852.852 INFO    ] 2026-06-27 10:16:34
[2026-06-27 10:16:35,056.056 INFO    ] 2026-06-27 10:16:35
[2026-06-27 10:16:35,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:16:35,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:16:35,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:16:35,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:16:35,468.468 INFO    ] time= 27/06/2026 10:16:35
[2026-06-27 10:16:35,500.500 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:16:35,507.507 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:16:35,597.597 INFO    ] No existing commands found in stream
[2026-06-27 10:16:40,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:16:40,608.608 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-27 10:16:44,073.073 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 10:16:44,075.075 INFO    ] Checking for system updates...
[2026-06-27 10:16:44,096.096 INFO    ] 200
[2026-06-27 10:16:44,097.097 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:16:44,127.127 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:16:44,129.129 INFO    ] No update needed
[2026-06-27 10:16:44,130.130 INFO    ] Checking for camera pi updates...
[2026-06-27 10:16:44,149.149 INFO    ] 200
[2026-06-27 10:16:44,151.151 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:16:44,177.177 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:16:44,213.213 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:16:44,215.215 INFO    ] No camera update needed
[2026-06-27 10:16:44,216.216 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:16:44,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:16:44,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:16:44,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:16:46,262.262 INFO    ] ================================================
[2026-06-27 10:16:46,277.277 INFO    ] Launching Daemon at Sat Jun 27 10:16:46 IST 2026
[2026-06-27 10:16:46,288.288 INFO    ] ================================================
[2026-06-27 10:16:46,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:16:46
[2026-06-27 10:16:46,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:16:47,075.075 INFO    ] Initializing speech engine...
[2026-06-27 10:16:47,078.078 INFO    ] 2026-06-27 10:16:47
[2026-06-27 10:16:47,283.283 INFO    ] 2026-06-27 10:16:47
[2026-06-27 10:16:47,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:16:47,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:16:47,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:16:47,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:16:47,752.752 INFO    ] time= 27/06/2026 10:16:47
[2026-06-27 10:16:47,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:16:47,793.793 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:16:47,895.895 INFO    ] No existing commands found in stream
[2026-06-27 10:16:52,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:16:52,907.907 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-27 10:16:55,809.809 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 10:16:55,810.810 INFO    ] Checking for system updates...
[2026-06-27 10:16:55,831.831 INFO    ] 200
[2026-06-27 10:16:55,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:16:55,866.866 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:16:55,867.867 INFO    ] No update needed
[2026-06-27 10:16:55,868.868 INFO    ] Checking for camera pi updates...
[2026-06-27 10:16:55,891.891 INFO    ] 200
[2026-06-27 10:16:55,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:16:55,923.923 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:16:55,964.964 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:16:55,965.965 INFO    ] No camera update needed
[2026-06-27 10:16:55,967.967 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:16:55,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:16:55,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:16:55,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:16:58,014.014 INFO    ] ================================================
[2026-06-27 10:16:58,029.029 INFO    ] Launching Daemon at Sat Jun 27 10:16:58 IST 2026
[2026-06-27 10:16:58,040.040 INFO    ] ================================================
[2026-06-27 10:16:58,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:16:58
[2026-06-27 10:16:58,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:16:58,876.876 INFO    ] Initializing speech engine...
[2026-06-27 10:16:58,882.882 INFO    ] 2026-06-27 10:16:58
[2026-06-27 10:16:59,087.087 INFO    ] 2026-06-27 10:16:59
[2026-06-27 10:16:59,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:16:59,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:16:59,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:16:59,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:16:59,513.513 INFO    ] time= 27/06/2026 10:16:59
[2026-06-27 10:16:59,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:16:59,543.543 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:16:59,611.611 INFO    ] No existing commands found in stream
[2026-06-27 10:17:04,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:17:04,623.623 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-27 10:17:07,896.896 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:17:07,898.898 INFO    ] Checking for system updates...
[2026-06-27 10:17:07,918.918 INFO    ] 200
[2026-06-27 10:17:07,920.920 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:17:07,950.950 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:17:07,952.952 INFO    ] No update needed
[2026-06-27 10:17:07,954.954 INFO    ] Checking for camera pi updates...
[2026-06-27 10:17:07,975.975 INFO    ] 200
[2026-06-27 10:17:07,976.976 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:17:08,001.001 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:17:08,038.038 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:17:08,039.039 INFO    ] No camera update needed
[2026-06-27 10:17:08,041.041 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:17:08,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:17:08,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:17:08,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:17:10,088.088 INFO    ] ================================================
[2026-06-27 10:17:10,103.103 INFO    ] Launching Daemon at Sat Jun 27 10:17:10 IST 2026
[2026-06-27 10:17:10,114.114 INFO    ] ================================================
[2026-06-27 10:17:10,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:17:10
[2026-06-27 10:17:10,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:17:10,881.881 INFO    ] Initializing speech engine...
[2026-06-27 10:17:10,891.891 INFO    ] 2026-06-27 10:17:10
[2026-06-27 10:17:11,097.097 INFO    ] 2026-06-27 10:17:11
[2026-06-27 10:17:11,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:17:11,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:17:11,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:17:11,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:17:11,515.515 INFO    ] time= 27/06/2026 10:17:11
[2026-06-27 10:17:11,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:17:11,544.544 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:17:11,612.612 INFO    ] No existing commands found in stream
[2026-06-27 10:17:16,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:17:16,624.624 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-27 10:17:19,323.323 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:17:19,325.325 INFO    ] Checking for system updates...
[2026-06-27 10:17:19,346.346 INFO    ] 200
[2026-06-27 10:17:19,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:17:19,378.378 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:17:19,379.379 INFO    ] No update needed
[2026-06-27 10:17:19,381.381 INFO    ] Checking for camera pi updates...
[2026-06-27 10:17:19,400.400 INFO    ] 200
[2026-06-27 10:17:19,402.402 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:17:19,426.426 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:17:19,466.466 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:17:19,468.468 INFO    ] No camera update needed
[2026-06-27 10:17:19,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:17:19,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:17:19,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:17:19,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:17:21,516.516 INFO    ] ================================================
[2026-06-27 10:17:21,531.531 INFO    ] Launching Daemon at Sat Jun 27 10:17:21 IST 2026
[2026-06-27 10:17:21,542.542 INFO    ] ================================================
[2026-06-27 10:17:21,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:17:21
[2026-06-27 10:17:22,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:17:22,354.354 INFO    ] Initializing speech engine...
[2026-06-27 10:17:22,359.359 INFO    ] 2026-06-27 10:17:22
[2026-06-27 10:17:22,573.573 INFO    ] 2026-06-27 10:17:22
[2026-06-27 10:17:22,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:17:22,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:17:22,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:17:22,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:17:22,980.980 INFO    ] time= 27/06/2026 10:17:22
[2026-06-27 10:17:23,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:17:23,035.035 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:17:23,106.106 INFO    ] No existing commands found in stream
[2026-06-27 10:17:28,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:17:28,119.119 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-27 10:17:31,867.867 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 10:17:31,869.869 INFO    ] Checking for system updates...
[2026-06-27 10:17:31,896.896 INFO    ] 200
[2026-06-27 10:17:31,898.898 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:17:31,938.938 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:17:31,939.939 INFO    ] No update needed
[2026-06-27 10:17:31,941.941 INFO    ] Checking for camera pi updates...
[2026-06-27 10:17:31,963.963 INFO    ] 200
[2026-06-27 10:17:31,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:17:31,992.992 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:17:32,119.119 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:17:32,121.121 INFO    ] No camera update needed
[2026-06-27 10:17:32,122.122 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:17:32,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:17:32,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:17:32,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:17:34,171.171 INFO    ] ================================================
[2026-06-27 10:17:34,186.186 INFO    ] Launching Daemon at Sat Jun 27 10:17:34 IST 2026
[2026-06-27 10:17:34,197.197 INFO    ] ================================================
[2026-06-27 10:17:34,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:17:34
[2026-06-27 10:17:34,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:17:34,985.985 INFO    ] Initializing speech engine...
[2026-06-27 10:17:34,998.998 INFO    ] 2026-06-27 10:17:34
[2026-06-27 10:17:35,217.217 INFO    ] 2026-06-27 10:17:35
[2026-06-27 10:17:35,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:17:35,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:17:35,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:17:35,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:17:35,670.670 INFO    ] time= 27/06/2026 10:17:35
[2026-06-27 10:17:35,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:17:35,701.701 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:17:35,770.770 INFO    ] No existing commands found in stream
[2026-06-27 10:17:40,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:17:40,784.784 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-27 10:17:42,268.268 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 10:17:42,270.270 INFO    ] Checking for system updates...
[2026-06-27 10:17:42,291.291 INFO    ] 200
[2026-06-27 10:17:42,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:17:42,323.323 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:17:42,325.325 INFO    ] No update needed
[2026-06-27 10:17:42,326.326 INFO    ] Checking for camera pi updates...
[2026-06-27 10:17:42,348.348 INFO    ] 200
[2026-06-27 10:17:42,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:17:42,372.372 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:17:42,417.417 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:17:42,419.419 INFO    ] No camera update needed
[2026-06-27 10:17:42,420.420 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:17:42,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:17:42,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:17:42,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:17:44,466.466 INFO    ] ================================================
[2026-06-27 10:17:44,481.481 INFO    ] Launching Daemon at Sat Jun 27 10:17:44 IST 2026
[2026-06-27 10:17:44,492.492 INFO    ] ================================================
[2026-06-27 10:17:44,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:17:44
[2026-06-27 10:17:45,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:17:45,296.296 INFO    ] Initializing speech engine...
[2026-06-27 10:17:45,301.301 INFO    ] 2026-06-27 10:17:45
[2026-06-27 10:17:45,518.518 INFO    ] 2026-06-27 10:17:45
[2026-06-27 10:17:45,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:17:45,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:17:45,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:17:45,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:17:45,944.944 INFO    ] time= 27/06/2026 10:17:45
[2026-06-27 10:17:45,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:17:45,974.974 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:17:46,065.065 INFO    ] No existing commands found in stream
[2026-06-27 10:17:51,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:17:51,082.082 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-27 10:17:53,030.030 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 10:17:53,031.031 INFO    ] Checking for system updates...
[2026-06-27 10:17:53,052.052 INFO    ] 200
[2026-06-27 10:17:53,054.054 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:17:53,084.084 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:17:53,085.085 INFO    ] No update needed
[2026-06-27 10:17:53,086.086 INFO    ] Checking for camera pi updates...
[2026-06-27 10:17:53,107.107 INFO    ] 200
[2026-06-27 10:17:53,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:17:53,131.131 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:17:53,172.172 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:17:53,174.174 INFO    ] No camera update needed
[2026-06-27 10:17:53,175.175 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:17:53,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:17:53,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:17:53,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:17:55,222.222 INFO    ] ================================================
[2026-06-27 10:17:55,237.237 INFO    ] Launching Daemon at Sat Jun 27 10:17:55 IST 2026
[2026-06-27 10:17:55,248.248 INFO    ] ================================================
[2026-06-27 10:17:55,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:17:55
[2026-06-27 10:17:55,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:17:56,024.024 INFO    ] Initializing speech engine...
[2026-06-27 10:17:56,029.029 INFO    ] 2026-06-27 10:17:56
[2026-06-27 10:17:56,233.233 INFO    ] 2026-06-27 10:17:56
[2026-06-27 10:17:56,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:17:56,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:17:56,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:17:56,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:17:56,684.684 INFO    ] time= 27/06/2026 10:17:56
[2026-06-27 10:17:56,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:17:56,740.740 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:17:56,816.816 INFO    ] No existing commands found in stream
[2026-06-27 10:18:01,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:18:01,845.845 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-27 10:18:05,067.067 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:18:05,069.069 INFO    ] Checking for system updates...
[2026-06-27 10:18:05,090.090 INFO    ] 200
[2026-06-27 10:18:05,091.091 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:18:05,121.121 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:18:05,122.122 INFO    ] No update needed
[2026-06-27 10:18:05,124.124 INFO    ] Checking for camera pi updates...
[2026-06-27 10:18:05,145.145 INFO    ] 200
[2026-06-27 10:18:05,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:18:05,170.170 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:18:05,212.212 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:18:05,213.213 INFO    ] No camera update needed
[2026-06-27 10:18:05,214.214 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:18:05,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:18:05,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:18:05,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:18:07,259.259 INFO    ] ================================================
[2026-06-27 10:18:07,275.275 INFO    ] Launching Daemon at Sat Jun 27 10:18:07 IST 2026
[2026-06-27 10:18:07,285.285 INFO    ] ================================================
[2026-06-27 10:18:07,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:18:07
[2026-06-27 10:18:07,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:18:08,079.079 INFO    ] Initializing speech engine...
[2026-06-27 10:18:08,085.085 INFO    ] 2026-06-27 10:18:08
[2026-06-27 10:18:08,287.287 INFO    ] 2026-06-27 10:18:08
[2026-06-27 10:18:08,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:18:08,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:18:08,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:18:08,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:18:08,713.713 INFO    ] time= 27/06/2026 10:18:08
[2026-06-27 10:18:08,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:18:08,739.739 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:18:08,805.805 INFO    ] No existing commands found in stream
[2026-06-27 10:18:13,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:18:13,819.819 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-27 10:18:14,958.958 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:18:14,959.959 INFO    ] Checking for system updates...
[2026-06-27 10:18:14,980.980 INFO    ] 200
[2026-06-27 10:18:14,981.981 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:18:15,014.014 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:18:15,015.015 INFO    ] No update needed
[2026-06-27 10:18:15,016.016 INFO    ] Checking for camera pi updates...
[2026-06-27 10:18:15,036.036 INFO    ] 200
[2026-06-27 10:18:15,037.037 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:18:15,060.060 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:18:15,099.099 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:18:15,101.101 INFO    ] No camera update needed
[2026-06-27 10:18:15,102.102 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:18:15,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:18:15,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:18:15,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:18:17,147.147 INFO    ] ================================================
[2026-06-27 10:18:17,162.162 INFO    ] Launching Daemon at Sat Jun 27 10:18:17 IST 2026
[2026-06-27 10:18:17,173.173 INFO    ] ================================================
[2026-06-27 10:18:17,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:18:17
[2026-06-27 10:18:17,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:18:17,978.978 INFO    ] Initializing speech engine...
[2026-06-27 10:18:17,984.984 INFO    ] 2026-06-27 10:18:17
[2026-06-27 10:18:18,191.191 INFO    ] 2026-06-27 10:18:18
[2026-06-27 10:18:18,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:18:18,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:18:18,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:18:18,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:18:18,552.552 INFO    ] time= 27/06/2026 10:18:18
[2026-06-27 10:18:18,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:18:18,620.620 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:18:18,711.711 INFO    ] No existing commands found in stream
[2026-06-27 10:18:23,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:18:23,725.725 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-27 10:18:27,560.560 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 10:18:27,561.561 INFO    ] Checking for system updates...
[2026-06-27 10:18:27,582.582 INFO    ] 200
[2026-06-27 10:18:27,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:18:27,615.615 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:18:27,616.616 INFO    ] No update needed
[2026-06-27 10:18:27,617.617 INFO    ] Checking for camera pi updates...
[2026-06-27 10:18:27,637.637 INFO    ] 200
[2026-06-27 10:18:27,638.638 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:18:27,661.661 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:18:27,703.703 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:18:27,704.704 INFO    ] No camera update needed
[2026-06-27 10:18:27,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:18:27,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:18:27,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:18:27,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:18:29,752.752 INFO    ] ================================================
[2026-06-27 10:18:29,768.768 INFO    ] Launching Daemon at Sat Jun 27 10:18:29 IST 2026
[2026-06-27 10:18:29,779.779 INFO    ] ================================================
[2026-06-27 10:18:30,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:18:30
[2026-06-27 10:18:30,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:18:30,556.556 INFO    ] Initializing speech engine...
[2026-06-27 10:18:30,560.560 INFO    ] 2026-06-27 10:18:30
[2026-06-27 10:18:30,777.777 INFO    ] 2026-06-27 10:18:30
[2026-06-27 10:18:30,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:18:30,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:18:30,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:18:31,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:18:31,197.197 INFO    ] time= 27/06/2026 10:18:31
[2026-06-27 10:18:31,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:18:31,228.228 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:18:31,296.296 INFO    ] No existing commands found in stream
[2026-06-27 10:18:36,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:18:36,334.334 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-27 10:18:40,124.124 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 10:18:40,125.125 INFO    ] Checking for system updates...
[2026-06-27 10:18:40,146.146 INFO    ] 200
[2026-06-27 10:18:40,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:18:40,178.178 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:18:40,179.179 INFO    ] No update needed
[2026-06-27 10:18:40,180.180 INFO    ] Checking for camera pi updates...
[2026-06-27 10:18:40,202.202 INFO    ] 200
[2026-06-27 10:18:40,203.203 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:18:40,226.226 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:18:40,265.265 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:18:40,267.267 INFO    ] No camera update needed
[2026-06-27 10:18:40,268.268 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:18:40,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:18:40,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:18:40,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:18:42,313.313 INFO    ] ================================================
[2026-06-27 10:18:42,328.328 INFO    ] Launching Daemon at Sat Jun 27 10:18:42 IST 2026
[2026-06-27 10:18:42,339.339 INFO    ] ================================================
[2026-06-27 10:18:42,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:18:42
[2026-06-27 10:18:42,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:18:43,132.132 INFO    ] Initializing speech engine...
[2026-06-27 10:18:43,142.142 INFO    ] 2026-06-27 10:18:43
[2026-06-27 10:18:43,347.347 INFO    ] 2026-06-27 10:18:43
[2026-06-27 10:18:43,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:18:43,500.500 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:18:43,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:18:43,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:18:43,739.739 INFO    ] time= 27/06/2026 10:18:43
[2026-06-27 10:18:43,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:18:43,794.794 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:18:43,865.865 INFO    ] No existing commands found in stream
[2026-06-27 10:18:48,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:18:48,877.877 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-27 10:18:51,756.756 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:18:51,758.758 INFO    ] Checking for system updates...
[2026-06-27 10:18:51,779.779 INFO    ] 200
[2026-06-27 10:18:51,780.780 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:18:51,813.813 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:18:51,814.814 INFO    ] No update needed
[2026-06-27 10:18:51,816.816 INFO    ] Checking for camera pi updates...
[2026-06-27 10:18:51,838.838 INFO    ] 200
[2026-06-27 10:18:51,840.840 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:18:51,863.863 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:18:51,901.901 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:18:51,902.902 INFO    ] No camera update needed
[2026-06-27 10:18:51,903.903 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:18:51,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:18:51,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:18:51,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:18:53,950.950 INFO    ] ================================================
[2026-06-27 10:18:53,966.966 INFO    ] Launching Daemon at Sat Jun 27 10:18:53 IST 2026
[2026-06-27 10:18:53,977.977 INFO    ] ================================================
[2026-06-27 10:18:54,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:18:54
[2026-06-27 10:18:54,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:18:54,838.838 INFO    ] Initializing speech engine...
[2026-06-27 10:18:54,842.842 INFO    ] 2026-06-27 10:18:54
[2026-06-27 10:18:55,048.048 INFO    ] 2026-06-27 10:18:55
[2026-06-27 10:18:55,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:18:55,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:18:55,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:18:55,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:18:55,470.470 INFO    ] time= 27/06/2026 10:18:55
[2026-06-27 10:18:55,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:18:55,499.499 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:18:55,565.565 INFO    ] No existing commands found in stream
[2026-06-27 10:19:00,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:19:00,590.590 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-27 10:19:02,093.093 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:19:02,097.097 INFO    ] Checking for system updates...
[2026-06-27 10:19:02,127.127 INFO    ] 200
[2026-06-27 10:19:02,128.128 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:19:02,159.159 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:19:02,161.161 INFO    ] No update needed
[2026-06-27 10:19:02,164.164 INFO    ] Checking for camera pi updates...
[2026-06-27 10:19:02,192.192 INFO    ] 200
[2026-06-27 10:19:02,193.193 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:19:02,220.220 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:19:02,246.246 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:19:02,247.247 INFO    ] No camera update needed
[2026-06-27 10:19:02,249.249 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:19:02,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:19:02,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:19:02,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:19:04,286.286 INFO    ] ================================================
[2026-06-27 10:19:04,295.295 INFO    ] Launching Daemon at Sat Jun 27 10:19:04 IST 2026
[2026-06-27 10:19:04,301.301 INFO    ] ================================================
[2026-06-27 10:19:04,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:19:04
[2026-06-27 10:19:04,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:19:05,115.115 INFO    ] Initializing speech engine...
[2026-06-27 10:19:05,120.120 INFO    ] 2026-06-27 10:19:05
[2026-06-27 10:19:05,324.324 INFO    ] 2026-06-27 10:19:05
[2026-06-27 10:19:05,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:19:05,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:19:05,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:19:05,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:19:05,763.763 INFO    ] time= 27/06/2026 10:19:05
[2026-06-27 10:19:05,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:19:05,799.799 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:19:05,865.865 INFO    ] No existing commands found in stream
[2026-06-27 10:19:10,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:19:10,880.880 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-27 10:19:11,688.688 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:19:11,690.690 INFO    ] Checking for system updates...
[2026-06-27 10:19:11,711.711 INFO    ] 200
[2026-06-27 10:19:11,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:19:11,743.743 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:19:11,745.745 INFO    ] No update needed
[2026-06-27 10:19:11,746.746 INFO    ] Checking for camera pi updates...
[2026-06-27 10:19:11,766.766 INFO    ] 200
[2026-06-27 10:19:11,767.767 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:19:11,790.790 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:19:11,824.824 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:19:11,826.826 INFO    ] No camera update needed
[2026-06-27 10:19:11,827.827 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:19:11,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:19:11,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:19:11,834.834 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:19:13,875.875 INFO    ] ================================================
[2026-06-27 10:19:13,891.891 INFO    ] Launching Daemon at Sat Jun 27 10:19:13 IST 2026
[2026-06-27 10:19:13,901.901 INFO    ] ================================================
[2026-06-27 10:19:14,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:19:14
[2026-06-27 10:19:14,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:19:14,699.699 INFO    ] Initializing speech engine...
[2026-06-27 10:19:14,704.704 INFO    ] 2026-06-27 10:19:14
[2026-06-27 10:19:14,934.934 INFO    ] 2026-06-27 10:19:14
[2026-06-27 10:19:14,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:19:15,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:19:15,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:19:15,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:19:15,361.361 INFO    ] time= 27/06/2026 10:19:15
[2026-06-27 10:19:15,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:19:15,412.412 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:19:15,487.487 INFO    ] No existing commands found in stream
[2026-06-27 10:19:20,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:19:20,500.500 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-27 10:19:20,883.883 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:19:20,885.885 INFO    ] Checking for system updates...
[2026-06-27 10:19:20,907.907 INFO    ] 200
[2026-06-27 10:19:20,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:19:20,941.941 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:19:20,942.942 INFO    ] No update needed
[2026-06-27 10:19:20,944.944 INFO    ] Checking for camera pi updates...
[2026-06-27 10:19:20,963.963 INFO    ] 200
[2026-06-27 10:19:20,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:19:20,988.988 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:19:21,029.029 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:19:21,031.031 INFO    ] No camera update needed
[2026-06-27 10:19:21,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:19:21,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:19:21,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:19:21,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:19:23,079.079 INFO    ] ================================================
[2026-06-27 10:19:23,094.094 INFO    ] Launching Daemon at Sat Jun 27 10:19:23 IST 2026
[2026-06-27 10:19:23,106.106 INFO    ] ================================================
[2026-06-27 10:19:23,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:19:23
[2026-06-27 10:19:23,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:19:23,951.951 INFO    ] Initializing speech engine...
[2026-06-27 10:19:23,956.956 INFO    ] 2026-06-27 10:19:23
[2026-06-27 10:19:24,164.164 INFO    ] 2026-06-27 10:19:24
[2026-06-27 10:19:24,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:19:24,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:19:24,386.386 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:19:24,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:19:24,602.602 INFO    ] time= 27/06/2026 10:19:24
[2026-06-27 10:19:24,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:19:24,613.613 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:19:24,679.679 INFO    ] No existing commands found in stream
[2026-06-27 10:19:29,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:19:29,693.693 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-27 10:19:32,317.317 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:19:32,318.318 INFO    ] Checking for system updates...
[2026-06-27 10:19:32,339.339 INFO    ] 200
[2026-06-27 10:19:32,341.341 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:19:32,374.374 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:19:32,376.376 INFO    ] No update needed
[2026-06-27 10:19:32,377.377 INFO    ] Checking for camera pi updates...
[2026-06-27 10:19:32,400.400 INFO    ] 200
[2026-06-27 10:19:32,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:19:32,426.426 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:19:32,452.452 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:19:32,453.453 INFO    ] No camera update needed
[2026-06-27 10:19:32,455.455 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:19:32,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:19:32,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:19:32,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:19:34,503.503 INFO    ] ================================================
[2026-06-27 10:19:34,519.519 INFO    ] Launching Daemon at Sat Jun 27 10:19:34 IST 2026
[2026-06-27 10:19:34,530.530 INFO    ] ================================================
[2026-06-27 10:19:34,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:19:34
[2026-06-27 10:19:35,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:19:35,324.324 INFO    ] Initializing speech engine...
[2026-06-27 10:19:35,334.334 INFO    ] 2026-06-27 10:19:35
[2026-06-27 10:19:35,540.540 INFO    ] 2026-06-27 10:19:35
[2026-06-27 10:19:35,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:19:35,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:19:35,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:19:35,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:19:35,957.957 INFO    ] time= 27/06/2026 10:19:35
[2026-06-27 10:19:35,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:19:35,987.987 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:19:36,054.054 INFO    ] No existing commands found in stream
[2026-06-27 10:19:41,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:19:41,067.067 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-27 10:19:43,821.821 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:19:43,823.823 INFO    ] Checking for system updates...
[2026-06-27 10:19:43,844.844 INFO    ] 200
[2026-06-27 10:19:43,845.845 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:19:43,876.876 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:19:43,878.878 INFO    ] No update needed
[2026-06-27 10:19:43,879.879 INFO    ] Checking for camera pi updates...
[2026-06-27 10:19:43,901.901 INFO    ] 200
[2026-06-27 10:19:43,902.902 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:19:43,925.925 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:19:44,064.064 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:19:44,065.065 INFO    ] No camera update needed
[2026-06-27 10:19:44,066.066 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:19:44,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:19:44,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:19:44,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:19:46,115.115 INFO    ] ================================================
[2026-06-27 10:19:46,131.131 INFO    ] Launching Daemon at Sat Jun 27 10:19:46 IST 2026
[2026-06-27 10:19:46,142.142 INFO    ] ================================================
[2026-06-27 10:19:46,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:19:46
[2026-06-27 10:19:46,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:19:46,996.996 INFO    ] Initializing speech engine...
[2026-06-27 10:19:47,001.001 INFO    ] 2026-06-27 10:19:46
[2026-06-27 10:19:47,210.210 INFO    ] 2026-06-27 10:19:47
[2026-06-27 10:19:47,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:19:47,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:19:47,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:19:47,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:19:47,631.631 INFO    ] time= 27/06/2026 10:19:47
[2026-06-27 10:19:47,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:19:47,661.661 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:19:47,728.728 INFO    ] No existing commands found in stream
[2026-06-27 10:19:52,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:19:52,746.746 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-27 10:19:55,729.729 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:19:55,731.731 INFO    ] Checking for system updates...
[2026-06-27 10:19:55,755.755 INFO    ] 200
[2026-06-27 10:19:55,757.757 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:19:55,787.787 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:19:55,789.789 INFO    ] No update needed
[2026-06-27 10:19:55,790.790 INFO    ] Checking for camera pi updates...
[2026-06-27 10:19:55,810.810 INFO    ] 200
[2026-06-27 10:19:55,812.812 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:19:55,836.836 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:19:55,859.859 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:19:55,860.860 INFO    ] No camera update needed
[2026-06-27 10:19:55,862.862 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:19:55,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:19:55,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:19:55,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:19:57,910.910 INFO    ] ================================================
[2026-06-27 10:19:57,926.926 INFO    ] Launching Daemon at Sat Jun 27 10:19:57 IST 2026
[2026-06-27 10:19:57,937.937 INFO    ] ================================================
[2026-06-27 10:19:58,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:19:58
[2026-06-27 10:19:58,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:19:58,748.748 INFO    ] Initializing speech engine...
[2026-06-27 10:19:58,753.753 INFO    ] 2026-06-27 10:19:58
[2026-06-27 10:19:58,957.957 INFO    ] 2026-06-27 10:19:58
[2026-06-27 10:19:58,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:19:59,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:19:59,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:19:59,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:19:59,365.365 INFO    ] time= 27/06/2026 10:19:59
[2026-06-27 10:19:59,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:19:59,403.403 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:19:59,470.470 INFO    ] No existing commands found in stream
[2026-06-27 10:20:04,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:20:04,481.481 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-27 10:20:08,129.129 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 10:20:08,131.131 INFO    ] Checking for system updates...
[2026-06-27 10:20:08,152.152 INFO    ] 200
[2026-06-27 10:20:08,154.154 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:20:08,184.184 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:20:08,186.186 INFO    ] No update needed
[2026-06-27 10:20:08,187.187 INFO    ] Checking for camera pi updates...
[2026-06-27 10:20:08,209.209 INFO    ] 200
[2026-06-27 10:20:08,211.211 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:20:08,239.239 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:20:08,279.279 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:20:08,281.281 INFO    ] No camera update needed
[2026-06-27 10:20:08,282.282 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:20:08,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:20:08,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:20:08,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:20:10,332.332 INFO    ] ================================================
[2026-06-27 10:20:10,347.347 INFO    ] Launching Daemon at Sat Jun 27 10:20:10 IST 2026
[2026-06-27 10:20:10,358.358 INFO    ] ================================================
[2026-06-27 10:20:10,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:20:10
[2026-06-27 10:20:11,054.054 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:20:11,192.192 INFO    ] Initializing speech engine...
[2026-06-27 10:20:11,201.201 INFO    ] 2026-06-27 10:20:11
[2026-06-27 10:20:11,410.410 INFO    ] 2026-06-27 10:20:11
[2026-06-27 10:20:11,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:20:11,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:20:11,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:20:11,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:20:11,833.833 INFO    ] time= 27/06/2026 10:20:11
[2026-06-27 10:20:11,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:20:11,866.866 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:20:11,957.957 INFO    ] No existing commands found in stream
[2026-06-27 10:20:16,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:20:16,974.974 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-27 10:20:18,127.127 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 10:20:18,128.128 INFO    ] Checking for system updates...
[2026-06-27 10:20:18,149.149 INFO    ] 200
[2026-06-27 10:20:18,151.151 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:20:18,181.181 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:20:18,182.182 INFO    ] No update needed
[2026-06-27 10:20:18,184.184 INFO    ] Checking for camera pi updates...
[2026-06-27 10:20:18,204.204 INFO    ] 200
[2026-06-27 10:20:18,205.205 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:20:18,230.230 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:20:18,271.271 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:20:18,272.272 INFO    ] No camera update needed
[2026-06-27 10:20:18,273.273 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:20:18,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:20:18,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:20:18,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:20:20,319.319 INFO    ] ================================================
[2026-06-27 10:20:20,335.335 INFO    ] Launching Daemon at Sat Jun 27 10:20:20 IST 2026
[2026-06-27 10:20:20,346.346 INFO    ] ================================================
[2026-06-27 10:20:20,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:20:20
[2026-06-27 10:20:21,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:20:21,181.181 INFO    ] Initializing speech engine...
[2026-06-27 10:20:21,187.187 INFO    ] 2026-06-27 10:20:21
[2026-06-27 10:20:21,396.396 INFO    ] 2026-06-27 10:20:21
[2026-06-27 10:20:21,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:20:21,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:20:21,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:20:21,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:20:21,727.727 INFO    ] time= 27/06/2026 10:20:21
[2026-06-27 10:20:21,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:20:21,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:20:21,782.782 INFO    ] No existing commands found in stream
[2026-06-27 10:20:26,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:20:26,805.805 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-27 10:20:27,450.450 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:20:27,452.452 INFO    ] Checking for system updates...
[2026-06-27 10:20:27,473.473 INFO    ] 200
[2026-06-27 10:20:27,474.474 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:20:27,505.505 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:20:27,507.507 INFO    ] No update needed
[2026-06-27 10:20:27,508.508 INFO    ] Checking for camera pi updates...
[2026-06-27 10:20:27,528.528 INFO    ] 200
[2026-06-27 10:20:27,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:20:27,553.553 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:20:27,592.592 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:20:27,594.594 INFO    ] No camera update needed
[2026-06-27 10:20:27,595.595 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:20:27,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:20:27,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:20:27,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:20:29,643.643 INFO    ] ================================================
[2026-06-27 10:20:29,659.659 INFO    ] Launching Daemon at Sat Jun 27 10:20:29 IST 2026
[2026-06-27 10:20:29,671.671 INFO    ] ================================================
[2026-06-27 10:20:30,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:20:30
[2026-06-27 10:20:30,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:20:30,545.545 INFO    ] Initializing speech engine...
[2026-06-27 10:20:30,558.558 INFO    ] 2026-06-27 10:20:30
[2026-06-27 10:20:30,770.770 INFO    ] 2026-06-27 10:20:30
[2026-06-27 10:20:30,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:20:30,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:20:30,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:20:31,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:20:31,193.193 INFO    ] time= 27/06/2026 10:20:31
[2026-06-27 10:20:31,215.215 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:20:31,222.222 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:20:31,312.312 INFO    ] No existing commands found in stream
[2026-06-27 10:20:36,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:20:36,325.325 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-27 10:20:40,691.691 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 10:20:40,692.692 INFO    ] Checking for system updates...
[2026-06-27 10:20:40,714.714 INFO    ] 200
[2026-06-27 10:20:40,716.716 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:20:40,748.748 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:20:40,750.750 INFO    ] No update needed
[2026-06-27 10:20:40,751.751 INFO    ] Checking for camera pi updates...
[2026-06-27 10:20:40,771.771 INFO    ] 200
[2026-06-27 10:20:40,773.773 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:20:40,796.796 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:20:40,835.835 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:20:40,836.836 INFO    ] No camera update needed
[2026-06-27 10:20:40,837.837 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:20:40,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:20:40,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:20:40,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:20:42,883.883 INFO    ] ================================================
[2026-06-27 10:20:42,902.902 INFO    ] Launching Daemon at Sat Jun 27 10:20:42 IST 2026
[2026-06-27 10:20:42,913.913 INFO    ] ================================================
[2026-06-27 10:20:43,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:20:43
[2026-06-27 10:20:43,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:20:43,725.725 INFO    ] Initializing speech engine...
[2026-06-27 10:20:43,738.738 INFO    ] 2026-06-27 10:20:43
[2026-06-27 10:20:43,956.956 INFO    ] 2026-06-27 10:20:43
[2026-06-27 10:20:43,987.987 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:20:44,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:20:44,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:20:44,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:20:44,391.391 INFO    ] time= 27/06/2026 10:20:44
[2026-06-27 10:20:44,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:20:44,441.441 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:20:44,511.511 INFO    ] No existing commands found in stream
[2026-06-27 10:20:49,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:20:49,524.524 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-27 10:20:50,434.434 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:20:50,436.436 INFO    ] Checking for system updates...
[2026-06-27 10:20:50,456.456 INFO    ] 200
[2026-06-27 10:20:50,458.458 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:20:50,488.488 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:20:50,489.489 INFO    ] No update needed
[2026-06-27 10:20:50,490.490 INFO    ] Checking for camera pi updates...
[2026-06-27 10:20:50,511.511 INFO    ] 200
[2026-06-27 10:20:50,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:20:50,537.537 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:20:50,577.577 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:20:50,579.579 INFO    ] No camera update needed
[2026-06-27 10:20:50,580.580 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:20:50,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:20:50,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:20:50,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:20:52,627.627 INFO    ] ================================================
[2026-06-27 10:20:52,643.643 INFO    ] Launching Daemon at Sat Jun 27 10:20:52 IST 2026
[2026-06-27 10:20:52,654.654 INFO    ] ================================================
[2026-06-27 10:20:53,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:20:53
[2026-06-27 10:20:53,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:20:53,507.507 INFO    ] Initializing speech engine...
[2026-06-27 10:20:53,521.521 INFO    ] 2026-06-27 10:20:53
[2026-06-27 10:20:53,768.768 INFO    ] 2026-06-27 10:20:53
[2026-06-27 10:20:53,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:20:53,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:20:53,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:20:54,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:20:54,208.208 INFO    ] time= 27/06/2026 10:20:54
[2026-06-27 10:20:54,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:20:54,215.215 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:20:54,282.282 INFO    ] No existing commands found in stream
[2026-06-27 10:20:59,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:20:59,299.299 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-27 10:21:00,787.787 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 10:21:00,788.788 INFO    ] Checking for system updates...
[2026-06-27 10:21:00,809.809 INFO    ] 200
[2026-06-27 10:21:00,810.810 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:21:00,851.851 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:21:00,853.853 INFO    ] No update needed
[2026-06-27 10:21:00,855.855 INFO    ] Checking for camera pi updates...
[2026-06-27 10:21:00,877.877 INFO    ] 200
[2026-06-27 10:21:00,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:21:00,906.906 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:21:00,946.946 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:21:00,948.948 INFO    ] No camera update needed
[2026-06-27 10:21:00,950.950 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:21:00,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:21:00,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:21:00,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:21:02,986.986 INFO    ] ================================================
[2026-06-27 10:21:02,995.995 INFO    ] Launching Daemon at Sat Jun 27 10:21:02 IST 2026
[2026-06-27 10:21:03,001.001 INFO    ] ================================================
[2026-06-27 10:21:03,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:21:03
[2026-06-27 10:21:03,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:21:03,800.800 INFO    ] Initializing speech engine...
[2026-06-27 10:21:03,805.805 INFO    ] 2026-06-27 10:21:03
[2026-06-27 10:21:04,028.028 INFO    ] 2026-06-27 10:21:04
[2026-06-27 10:21:04,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:21:04,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:21:04,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:21:04,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:21:04,472.472 INFO    ] time= 27/06/2026 10:21:04
[2026-06-27 10:21:04,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:21:04,511.511 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:21:04,578.578 INFO    ] No existing commands found in stream
[2026-06-27 10:21:09,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:21:09,592.592 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-27 10:21:10,239.239 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 10:21:10,240.240 INFO    ] Checking for system updates...
[2026-06-27 10:21:10,261.261 INFO    ] 200
[2026-06-27 10:21:10,262.262 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:21:10,293.293 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:21:10,294.294 INFO    ] No update needed
[2026-06-27 10:21:10,295.295 INFO    ] Checking for camera pi updates...
[2026-06-27 10:21:10,315.315 INFO    ] 200
[2026-06-27 10:21:10,317.317 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:21:10,340.340 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:21:10,377.377 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:21:10,379.379 INFO    ] No camera update needed
[2026-06-27 10:21:10,380.380 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:21:10,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:21:10,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:21:10,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:21:12,427.427 INFO    ] ================================================
[2026-06-27 10:21:12,443.443 INFO    ] Launching Daemon at Sat Jun 27 10:21:12 IST 2026
[2026-06-27 10:21:12,453.453 INFO    ] ================================================
[2026-06-27 10:21:12,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:21:12
[2026-06-27 10:21:13,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:21:13,290.290 INFO    ] Initializing speech engine...
[2026-06-27 10:21:13,295.295 INFO    ] 2026-06-27 10:21:13
[2026-06-27 10:21:13,497.497 INFO    ] 2026-06-27 10:21:13
[2026-06-27 10:21:13,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:21:13,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:21:13,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:21:13,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:21:13,915.915 INFO    ] time= 27/06/2026 10:21:13
[2026-06-27 10:21:13,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:21:13,949.949 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:21:14,014.014 INFO    ] No existing commands found in stream
[2026-06-27 10:21:19,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:21:19,027.027 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-27 10:21:21,958.958 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 10:21:21,959.959 INFO    ] Checking for system updates...
[2026-06-27 10:21:21,980.980 INFO    ] 200
[2026-06-27 10:21:21,981.981 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:21:22,012.012 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:21:22,014.014 INFO    ] No update needed
[2026-06-27 10:21:22,015.015 INFO    ] Checking for camera pi updates...
[2026-06-27 10:21:22,035.035 INFO    ] 200
[2026-06-27 10:21:22,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:21:22,064.064 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:21:22,101.101 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:21:22,103.103 INFO    ] No camera update needed
[2026-06-27 10:21:22,105.105 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:21:22,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:21:22,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:21:22,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:21:24,153.153 INFO    ] ================================================
[2026-06-27 10:21:24,168.168 INFO    ] Launching Daemon at Sat Jun 27 10:21:24 IST 2026
[2026-06-27 10:21:24,180.180 INFO    ] ================================================
[2026-06-27 10:21:24,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:21:24
[2026-06-27 10:21:24,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:21:25,032.032 INFO    ] Initializing speech engine...
[2026-06-27 10:21:25,038.038 INFO    ] 2026-06-27 10:21:25
[2026-06-27 10:21:25,245.245 INFO    ] 2026-06-27 10:21:25
[2026-06-27 10:21:25,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:21:25,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:21:25,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:21:25,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:21:25,660.660 INFO    ] time= 27/06/2026 10:21:25
[2026-06-27 10:21:25,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:21:25,693.693 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:21:25,783.783 INFO    ] No existing commands found in stream
[2026-06-27 10:21:30,793.793 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:21:30,796.796 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-27 10:21:31,767.767 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 10:21:31,769.769 INFO    ] Checking for system updates...
[2026-06-27 10:21:31,792.792 INFO    ] 200
[2026-06-27 10:21:31,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:21:31,833.833 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:21:31,835.835 INFO    ] No update needed
[2026-06-27 10:21:31,837.837 INFO    ] Checking for camera pi updates...
[2026-06-27 10:21:31,864.864 INFO    ] 200
[2026-06-27 10:21:31,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:21:31,896.896 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:21:31,924.924 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:21:31,925.925 INFO    ] No camera update needed
[2026-06-27 10:21:31,927.927 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:21:31,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:21:31,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:21:31,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:21:33,975.975 INFO    ] ================================================
[2026-06-27 10:21:33,990.990 INFO    ] Launching Daemon at Sat Jun 27 10:21:33 IST 2026
[2026-06-27 10:21:34,002.002 INFO    ] ================================================
[2026-06-27 10:21:34,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:21:34
[2026-06-27 10:21:34,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:21:34,872.872 INFO    ] Initializing speech engine...
[2026-06-27 10:21:34,878.878 INFO    ] 2026-06-27 10:21:34
[2026-06-27 10:21:35,088.088 INFO    ] 2026-06-27 10:21:35
[2026-06-27 10:21:35,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:21:35,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:21:35,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:21:35,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:21:35,515.515 INFO    ] time= 27/06/2026 10:21:35
[2026-06-27 10:21:35,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:21:35,541.541 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:21:35,614.614 INFO    ] No existing commands found in stream
[2026-06-27 10:21:40,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:21:40,651.651 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-27 10:21:42,313.313 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:21:42,315.315 INFO    ] Checking for system updates...
[2026-06-27 10:21:42,336.336 INFO    ] 200
[2026-06-27 10:21:42,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:21:42,370.370 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:21:42,371.371 INFO    ] No update needed
[2026-06-27 10:21:42,373.373 INFO    ] Checking for camera pi updates...
[2026-06-27 10:21:42,393.393 INFO    ] 200
[2026-06-27 10:21:42,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:21:42,420.420 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:21:42,461.461 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:21:42,463.463 INFO    ] No camera update needed
[2026-06-27 10:21:42,464.464 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:21:42,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:21:42,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:21:42,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:21:44,512.512 INFO    ] ================================================
[2026-06-27 10:21:44,528.528 INFO    ] Launching Daemon at Sat Jun 27 10:21:44 IST 2026
[2026-06-27 10:21:44,539.539 INFO    ] ================================================
[2026-06-27 10:21:44,904.904 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:21:44
[2026-06-27 10:21:45,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:21:45,347.347 INFO    ] Initializing speech engine...
[2026-06-27 10:21:45,351.351 INFO    ] 2026-06-27 10:21:45
[2026-06-27 10:21:45,569.569 INFO    ] 2026-06-27 10:21:45
[2026-06-27 10:21:45,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:21:45,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:21:45,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:21:45,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:21:45,998.998 INFO    ] time= 27/06/2026 10:21:45
[2026-06-27 10:21:46,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:21:46,026.026 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:21:46,093.093 INFO    ] No existing commands found in stream
[2026-06-27 10:21:51,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:21:51,106.106 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-27 10:21:54,784.784 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 10:21:54,785.785 INFO    ] Checking for system updates...
[2026-06-27 10:21:54,806.806 INFO    ] 200
[2026-06-27 10:21:54,807.807 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:21:54,837.837 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:21:54,839.839 INFO    ] No update needed
[2026-06-27 10:21:54,840.840 INFO    ] Checking for camera pi updates...
[2026-06-27 10:21:54,859.859 INFO    ] 200
[2026-06-27 10:21:54,861.861 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:21:54,885.885 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:21:55,009.009 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:21:55,010.010 INFO    ] No camera update needed
[2026-06-27 10:21:55,011.011 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:21:55,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:21:55,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:21:55,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:21:57,057.057 INFO    ] ================================================
[2026-06-27 10:21:57,081.081 INFO    ] Launching Daemon at Sat Jun 27 10:21:57 IST 2026
[2026-06-27 10:21:57,092.092 INFO    ] ================================================
[2026-06-27 10:21:57,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:21:57
[2026-06-27 10:21:57,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:21:57,891.891 INFO    ] Initializing speech engine...
[2026-06-27 10:21:57,896.896 INFO    ] 2026-06-27 10:21:57
[2026-06-27 10:21:58,101.101 INFO    ] 2026-06-27 10:21:58
[2026-06-27 10:21:58,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:21:58,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:21:58,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:21:58,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:21:58,545.545 INFO    ] time= 27/06/2026 10:21:58
[2026-06-27 10:21:58,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:21:58,552.552 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:21:58,619.619 INFO    ] No existing commands found in stream
[2026-06-27 10:22:03,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:22:03,630.630 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-27 10:22:07,654.654 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:22:07,655.655 INFO    ] Checking for system updates...
[2026-06-27 10:22:07,676.676 INFO    ] 200
[2026-06-27 10:22:07,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:22:07,707.707 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:22:07,709.709 INFO    ] No update needed
[2026-06-27 10:22:07,710.710 INFO    ] Checking for camera pi updates...
[2026-06-27 10:22:07,729.729 INFO    ] 200
[2026-06-27 10:22:07,731.731 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:22:07,754.754 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:22:07,803.803 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:22:07,805.805 INFO    ] No camera update needed
[2026-06-27 10:22:07,806.806 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:22:07,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:22:07,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:22:07,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:22:09,855.855 INFO    ] ================================================
[2026-06-27 10:22:09,871.871 INFO    ] Launching Daemon at Sat Jun 27 10:22:09 IST 2026
[2026-06-27 10:22:09,883.883 INFO    ] ================================================
[2026-06-27 10:22:10,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:22:10
[2026-06-27 10:22:10,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:22:10,686.686 INFO    ] Initializing speech engine...
[2026-06-27 10:22:10,691.691 INFO    ] 2026-06-27 10:22:10
[2026-06-27 10:22:10,897.897 INFO    ] 2026-06-27 10:22:10
[2026-06-27 10:22:10,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:22:11,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:22:11,118.118 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:22:11,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:22:11,321.321 INFO    ] time= 27/06/2026 10:22:11
[2026-06-27 10:22:11,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:22:11,351.351 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:22:11,423.423 INFO    ] No existing commands found in stream
[2026-06-27 10:22:16,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:22:16,435.435 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-27 10:22:19,322.322 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 10:22:19,324.324 INFO    ] Checking for system updates...
[2026-06-27 10:22:19,345.345 INFO    ] 200
[2026-06-27 10:22:19,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:22:19,378.378 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:22:19,379.379 INFO    ] No update needed
[2026-06-27 10:22:19,381.381 INFO    ] Checking for camera pi updates...
[2026-06-27 10:22:19,402.402 INFO    ] 200
[2026-06-27 10:22:19,403.403 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:22:19,426.426 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:22:19,450.450 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:22:19,451.451 INFO    ] No camera update needed
[2026-06-27 10:22:19,453.453 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:22:19,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:22:19,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:22:19,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:22:21,499.499 INFO    ] ================================================
[2026-06-27 10:22:21,515.515 INFO    ] Launching Daemon at Sat Jun 27 10:22:21 IST 2026
[2026-06-27 10:22:21,528.528 INFO    ] ================================================
[2026-06-27 10:22:21,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:22:21
[2026-06-27 10:22:22,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:22:22,306.306 INFO    ] Initializing speech engine...
[2026-06-27 10:22:22,309.309 INFO    ] 2026-06-27 10:22:22
[2026-06-27 10:22:22,526.526 INFO    ] 2026-06-27 10:22:22
[2026-06-27 10:22:22,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:22:22,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:22:22,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:22:22,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:22:22,967.967 INFO    ] time= 27/06/2026 10:22:22
[2026-06-27 10:22:22,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:22:22,975.975 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:22:23,040.040 INFO    ] No existing commands found in stream
[2026-06-27 10:22:28,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:22:28,053.053 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-27 10:22:31,247.247 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 10:22:31,248.248 INFO    ] Checking for system updates...
[2026-06-27 10:22:31,269.269 INFO    ] 200
[2026-06-27 10:22:31,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:22:31,302.302 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:22:31,303.303 INFO    ] No update needed
[2026-06-27 10:22:31,305.305 INFO    ] Checking for camera pi updates...
[2026-06-27 10:22:31,324.324 INFO    ] 200
[2026-06-27 10:22:31,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:22:31,351.351 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:22:31,376.376 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:22:31,377.377 INFO    ] No camera update needed
[2026-06-27 10:22:31,378.378 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:22:31,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:22:31,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:22:31,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:22:33,418.418 INFO    ] ================================================
[2026-06-27 10:22:33,433.433 INFO    ] Launching Daemon at Sat Jun 27 10:22:33 IST 2026
[2026-06-27 10:22:33,444.444 INFO    ] ================================================
[2026-06-27 10:22:33,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:22:33
[2026-06-27 10:22:34,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:22:34,299.299 INFO    ] Initializing speech engine...
[2026-06-27 10:22:34,304.304 INFO    ] 2026-06-27 10:22:34
[2026-06-27 10:22:34,515.515 INFO    ] 2026-06-27 10:22:34
[2026-06-27 10:22:34,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:22:34,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:22:34,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:22:34,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:22:34,938.938 INFO    ] time= 27/06/2026 10:22:34
[2026-06-27 10:22:34,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:22:34,966.966 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:22:35,032.032 INFO    ] No existing commands found in stream
[2026-06-27 10:22:40,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:22:40,043.043 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-27 10:22:40,478.478 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:22:40,479.479 INFO    ] Checking for system updates...
[2026-06-27 10:22:40,500.500 INFO    ] 200
[2026-06-27 10:22:40,501.501 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:22:40,534.534 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:22:40,535.535 INFO    ] No update needed
[2026-06-27 10:22:40,537.537 INFO    ] Checking for camera pi updates...
[2026-06-27 10:22:40,558.558 INFO    ] 200
[2026-06-27 10:22:40,560.560 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:22:40,583.583 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:22:40,620.620 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:22:40,621.621 INFO    ] No camera update needed
[2026-06-27 10:22:40,623.623 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:22:40,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:22:40,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:22:40,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:22:42,668.668 INFO    ] ================================================
[2026-06-27 10:22:42,685.685 INFO    ] Launching Daemon at Sat Jun 27 10:22:42 IST 2026
[2026-06-27 10:22:42,697.697 INFO    ] ================================================
[2026-06-27 10:22:43,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:22:43
[2026-06-27 10:22:43,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:22:43,504.504 INFO    ] Initializing speech engine...
[2026-06-27 10:22:43,509.509 INFO    ] 2026-06-27 10:22:43
[2026-06-27 10:22:43,714.714 INFO    ] 2026-06-27 10:22:43
[2026-06-27 10:22:43,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:22:43,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:22:43,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:22:44,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:22:44,132.132 INFO    ] time= 27/06/2026 10:22:44
[2026-06-27 10:22:44,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:22:44,162.162 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:22:44,229.229 INFO    ] No existing commands found in stream
[2026-06-27 10:22:49,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:22:49,241.241 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-27 10:22:53,203.203 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 10:22:53,206.206 INFO    ] Checking for system updates...
[2026-06-27 10:22:53,241.241 INFO    ] 200
[2026-06-27 10:22:53,244.244 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:22:53,297.297 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:22:53,299.299 INFO    ] No update needed
[2026-06-27 10:22:53,302.302 INFO    ] Checking for camera pi updates...
[2026-06-27 10:22:53,326.326 INFO    ] 200
[2026-06-27 10:22:53,327.327 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:22:53,352.352 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:22:53,391.391 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:22:53,393.393 INFO    ] No camera update needed
[2026-06-27 10:22:53,394.394 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:22:53,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:22:53,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:22:53,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:22:55,441.441 INFO    ] ================================================
[2026-06-27 10:22:55,457.457 INFO    ] Launching Daemon at Sat Jun 27 10:22:55 IST 2026
[2026-06-27 10:22:55,468.468 INFO    ] ================================================
[2026-06-27 10:22:55,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:22:55
[2026-06-27 10:22:56,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:22:56,254.254 INFO    ] Initializing speech engine...
[2026-06-27 10:22:56,262.262 INFO    ] 2026-06-27 10:22:56
[2026-06-27 10:22:56,474.474 INFO    ] 2026-06-27 10:22:56
[2026-06-27 10:22:56,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:22:56,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:22:56,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:22:56,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:22:56,893.893 INFO    ] time= 27/06/2026 10:22:56
[2026-06-27 10:22:56,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:22:56,922.922 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:22:56,987.987 INFO    ] No existing commands found in stream
[2026-06-27 10:23:01,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:23:01,997.997 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-27 10:23:03,848.848 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:23:03,850.850 INFO    ] Checking for system updates...
[2026-06-27 10:23:03,871.871 INFO    ] 200
[2026-06-27 10:23:03,872.872 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:23:03,904.904 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:23:03,905.905 INFO    ] No update needed
[2026-06-27 10:23:03,907.907 INFO    ] Checking for camera pi updates...
[2026-06-27 10:23:03,927.927 INFO    ] 200
[2026-06-27 10:23:03,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:23:03,952.952 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:23:03,989.989 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:23:03,990.990 INFO    ] No camera update needed
[2026-06-27 10:23:03,992.992 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:23:03,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:23:03,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:23:04,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:23:06,042.042 INFO    ] ================================================
[2026-06-27 10:23:06,061.061 INFO    ] Launching Daemon at Sat Jun 27 10:23:06 IST 2026
[2026-06-27 10:23:06,073.073 INFO    ] ================================================
[2026-06-27 10:23:06,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:23:06
[2026-06-27 10:23:06,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:23:06,912.912 INFO    ] Initializing speech engine...
[2026-06-27 10:23:06,915.915 INFO    ] 2026-06-27 10:23:06
[2026-06-27 10:23:07,136.136 INFO    ] 2026-06-27 10:23:07
[2026-06-27 10:23:07,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:23:07,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:23:07,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:23:07,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:23:07,493.493 INFO    ] time= 27/06/2026 10:23:07
[2026-06-27 10:23:07,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:23:07,585.585 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:23:07,656.656 INFO    ] No existing commands found in stream
[2026-06-27 10:23:12,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:23:12,669.669 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-27 10:23:13,217.217 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:23:13,218.218 INFO    ] Checking for system updates...
[2026-06-27 10:23:13,242.242 INFO    ] 200
[2026-06-27 10:23:13,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:23:13,277.277 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:23:13,278.278 INFO    ] No update needed
[2026-06-27 10:23:13,280.280 INFO    ] Checking for camera pi updates...
[2026-06-27 10:23:13,299.299 INFO    ] 200
[2026-06-27 10:23:13,300.300 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:23:13,324.324 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:23:13,364.364 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:23:13,365.365 INFO    ] No camera update needed
[2026-06-27 10:23:13,367.367 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:23:13,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:23:13,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:23:13,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:23:15,414.414 INFO    ] ================================================
[2026-06-27 10:23:15,430.430 INFO    ] Launching Daemon at Sat Jun 27 10:23:15 IST 2026
[2026-06-27 10:23:15,442.442 INFO    ] ================================================
[2026-06-27 10:23:15,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:23:15
[2026-06-27 10:23:16,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:23:16,246.246 INFO    ] Initializing speech engine...
[2026-06-27 10:23:16,249.249 INFO    ] 2026-06-27 10:23:16
[2026-06-27 10:23:16,443.443 INFO    ] 2026-06-27 10:23:16
[2026-06-27 10:23:16,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:23:16,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:23:16,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:23:16,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:23:16,910.910 INFO    ] time= 27/06/2026 10:23:16
[2026-06-27 10:23:16,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:23:16,973.973 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:23:17,076.076 INFO    ] No existing commands found in stream
[2026-06-27 10:23:22,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:23:22,088.088 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-27 10:23:22,848.848 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 10:23:22,850.850 INFO    ] Checking for system updates...
[2026-06-27 10:23:22,874.874 INFO    ] 200
[2026-06-27 10:23:22,876.876 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:23:22,909.909 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:23:22,910.910 INFO    ] No update needed
[2026-06-27 10:23:22,912.912 INFO    ] Checking for camera pi updates...
[2026-06-27 10:23:22,934.934 INFO    ] 200
[2026-06-27 10:23:22,936.936 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:23:22,960.960 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:23:22,994.994 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:23:22,996.996 INFO    ] No camera update needed
[2026-06-27 10:23:22,997.997 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:23:22,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:23:23,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:23:23,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:23:25,044.044 INFO    ] ================================================
[2026-06-27 10:23:25,063.063 INFO    ] Launching Daemon at Sat Jun 27 10:23:25 IST 2026
[2026-06-27 10:23:25,075.075 INFO    ] ================================================
[2026-06-27 10:23:25,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:23:25
[2026-06-27 10:23:25,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:23:25,914.914 INFO    ] Initializing speech engine...
[2026-06-27 10:23:25,919.919 INFO    ] 2026-06-27 10:23:25
[2026-06-27 10:23:26,125.125 INFO    ] 2026-06-27 10:23:26
[2026-06-27 10:23:26,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:23:26,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:23:26,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:23:26,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:23:26,538.538 INFO    ] time= 27/06/2026 10:23:26
[2026-06-27 10:23:26,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:23:26,566.566 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:23:26,636.636 INFO    ] No existing commands found in stream
[2026-06-27 10:23:31,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:23:31,650.650 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-27 10:23:33,759.759 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 10:23:33,761.761 INFO    ] Checking for system updates...
[2026-06-27 10:23:33,782.782 INFO    ] 200
[2026-06-27 10:23:33,783.783 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:23:33,816.816 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:23:33,817.817 INFO    ] No update needed
[2026-06-27 10:23:33,819.819 INFO    ] Checking for camera pi updates...
[2026-06-27 10:23:33,838.838 INFO    ] 200
[2026-06-27 10:23:33,839.839 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:23:33,863.863 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:23:33,907.907 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:23:33,908.908 INFO    ] No camera update needed
[2026-06-27 10:23:33,909.909 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:23:33,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:23:33,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:23:33,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:23:35,956.956 INFO    ] ================================================
[2026-06-27 10:23:35,973.973 INFO    ] Launching Daemon at Sat Jun 27 10:23:35 IST 2026
[2026-06-27 10:23:35,985.985 INFO    ] ================================================
[2026-06-27 10:23:36,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:23:36
[2026-06-27 10:23:36,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:23:36,869.869 INFO    ] Initializing speech engine...
[2026-06-27 10:23:36,873.873 INFO    ] 2026-06-27 10:23:36
[2026-06-27 10:23:37,083.083 INFO    ] 2026-06-27 10:23:37
[2026-06-27 10:23:37,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:23:37,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:23:37,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:23:37,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:23:37,525.525 INFO    ] time= 27/06/2026 10:23:37
[2026-06-27 10:23:37,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:23:37,533.533 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:23:37,599.599 INFO    ] No existing commands found in stream
[2026-06-27 10:23:42,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:23:42,610.610 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-27 10:23:45,681.681 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:23:45,683.683 INFO    ] Checking for system updates...
[2026-06-27 10:23:45,703.703 INFO    ] 200
[2026-06-27 10:23:45,705.705 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:23:45,736.736 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:23:45,737.737 INFO    ] No update needed
[2026-06-27 10:23:45,739.739 INFO    ] Checking for camera pi updates...
[2026-06-27 10:23:45,760.760 INFO    ] 200
[2026-06-27 10:23:45,763.763 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:23:45,811.811 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:23:45,855.855 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:23:45,858.858 INFO    ] No camera update needed
[2026-06-27 10:23:45,860.860 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:23:45,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:23:45,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:23:45,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:23:47,906.906 INFO    ] ================================================
[2026-06-27 10:23:47,921.921 INFO    ] Launching Daemon at Sat Jun 27 10:23:47 IST 2026
[2026-06-27 10:23:47,932.932 INFO    ] ================================================
[2026-06-27 10:23:48,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:23:48
[2026-06-27 10:23:48,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:23:48,721.721 INFO    ] Initializing speech engine...
[2026-06-27 10:23:48,729.729 INFO    ] 2026-06-27 10:23:48
[2026-06-27 10:23:48,947.947 INFO    ] 2026-06-27 10:23:48
[2026-06-27 10:23:48,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:23:49,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:23:49,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:23:49,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:23:49,372.372 INFO    ] time= 27/06/2026 10:23:49
[2026-06-27 10:23:49,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:23:49,410.410 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:23:49,482.482 INFO    ] No existing commands found in stream
[2026-06-27 10:23:54,493.493 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:23:54,496.496 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-27 10:23:58,024.024 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:23:58,025.025 INFO    ] Checking for system updates...
[2026-06-27 10:23:58,046.046 INFO    ] 200
[2026-06-27 10:23:58,047.047 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:23:58,078.078 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:23:58,079.079 INFO    ] No update needed
[2026-06-27 10:23:58,080.080 INFO    ] Checking for camera pi updates...
[2026-06-27 10:23:58,100.100 INFO    ] 200
[2026-06-27 10:23:58,101.101 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:23:58,125.125 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:23:58,267.267 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:23:58,268.268 INFO    ] No camera update needed
[2026-06-27 10:23:58,270.270 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:23:58,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:23:58,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:23:58,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:24:00,310.310 INFO    ] ================================================
[2026-06-27 10:24:00,326.326 INFO    ] Launching Daemon at Sat Jun 27 10:24:00 IST 2026
[2026-06-27 10:24:00,337.337 INFO    ] ================================================
[2026-06-27 10:24:00,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:24:00
[2026-06-27 10:24:01,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:24:01,131.131 INFO    ] Initializing speech engine...
[2026-06-27 10:24:01,136.136 INFO    ] 2026-06-27 10:24:01
[2026-06-27 10:24:01,414.414 INFO    ] 2026-06-27 10:24:01
[2026-06-27 10:24:01,448.448 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:24:01,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:24:01,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:24:01,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:24:01,908.908 INFO    ] time= 27/06/2026 10:24:01
[2026-06-27 10:24:01,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:24:02,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:24:02,105.105 INFO    ] No existing commands found in stream
[2026-06-27 10:24:07,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:24:07,122.122 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-27 10:24:10,809.809 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 10:24:10,811.811 INFO    ] Checking for system updates...
[2026-06-27 10:24:10,838.838 INFO    ] 200
[2026-06-27 10:24:10,839.839 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:24:10,876.876 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:24:10,878.878 INFO    ] No update needed
[2026-06-27 10:24:10,879.879 INFO    ] Checking for camera pi updates...
[2026-06-27 10:24:10,906.906 INFO    ] 200
[2026-06-27 10:24:10,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:24:10,937.937 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:24:10,974.974 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:24:10,976.976 INFO    ] No camera update needed
[2026-06-27 10:24:10,978.978 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:24:10,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:24:10,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:24:10,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:24:13,019.019 INFO    ] ================================================
[2026-06-27 10:24:13,237.237 INFO    ] Launching Daemon at Sat Jun 27 10:24:13 IST 2026
[2026-06-27 10:24:13,248.248 INFO    ] ================================================
[2026-06-27 10:24:14,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:24:13
[2026-06-27 10:24:15,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:24:15,208.208 INFO    ] Initializing speech engine...
[2026-06-27 10:24:15,215.215 INFO    ] 2026-06-27 10:24:15
[2026-06-27 10:24:15,423.423 INFO    ] 2026-06-27 10:24:15
[2026-06-27 10:24:15,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:24:15,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:24:15,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:24:15,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:24:15,867.867 INFO    ] time= 27/06/2026 10:24:15
[2026-06-27 10:24:15,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:24:15,874.874 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:24:15,941.941 INFO    ] No existing commands found in stream
[2026-06-27 10:24:20,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:24:20,954.954 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-27 10:24:23,009.009 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:24:23,010.010 INFO    ] Checking for system updates...
[2026-06-27 10:24:23,033.033 INFO    ] 200
[2026-06-27 10:24:23,034.034 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:24:23,065.065 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:24:23,067.067 INFO    ] No update needed
[2026-06-27 10:24:23,068.068 INFO    ] Checking for camera pi updates...
[2026-06-27 10:24:23,088.088 INFO    ] 200
[2026-06-27 10:24:23,090.090 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:24:23,114.114 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:24:23,150.150 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:24:23,152.152 INFO    ] No camera update needed
[2026-06-27 10:24:23,153.153 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:24:23,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:24:23,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:24:23,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:24:25,199.199 INFO    ] ================================================
[2026-06-27 10:24:25,215.215 INFO    ] Launching Daemon at Sat Jun 27 10:24:25 IST 2026
[2026-06-27 10:24:25,225.225 INFO    ] ================================================
[2026-06-27 10:24:25,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:24:25
[2026-06-27 10:24:25,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:24:26,056.056 INFO    ] Initializing speech engine...
[2026-06-27 10:24:26,062.062 INFO    ] 2026-06-27 10:24:26
[2026-06-27 10:24:26,266.266 INFO    ] 2026-06-27 10:24:26
[2026-06-27 10:24:26,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:24:26,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:24:26,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:24:26,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:24:26,661.661 INFO    ] time= 27/06/2026 10:24:26
[2026-06-27 10:24:26,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:24:26,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:24:26,781.781 INFO    ] No existing commands found in stream
[2026-06-27 10:24:31,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:24:31,792.792 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-27 10:24:34,768.768 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 10:24:34,769.769 INFO    ] Checking for system updates...
[2026-06-27 10:24:34,790.790 INFO    ] 200
[2026-06-27 10:24:34,791.791 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:24:34,824.824 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:24:34,826.826 INFO    ] No update needed
[2026-06-27 10:24:34,827.827 INFO    ] Checking for camera pi updates...
[2026-06-27 10:24:34,848.848 INFO    ] 200
[2026-06-27 10:24:34,849.849 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:24:34,872.872 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:24:34,918.918 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:24:34,919.919 INFO    ] No camera update needed
[2026-06-27 10:24:34,921.921 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:24:34,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:24:34,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:24:34,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:24:36,969.969 INFO    ] ================================================
[2026-06-27 10:24:36,984.984 INFO    ] Launching Daemon at Sat Jun 27 10:24:36 IST 2026
[2026-06-27 10:24:37,995.995 INFO    ] ================================================
[2026-06-27 10:24:37,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:24:37
[2026-06-27 10:24:37,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:24:37,813.813 INFO    ] Initializing speech engine...
[2026-06-27 10:24:37,818.818 INFO    ] 2026-06-27 10:24:37
[2026-06-27 10:24:38,022.022 INFO    ] 2026-06-27 10:24:38
[2026-06-27 10:24:38,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:24:38,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:24:38,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:24:38,460.460 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:24:38,484.484 INFO    ] time= 27/06/2026 10:24:38
[2026-06-27 10:24:38,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:24:38,491.491 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:24:38,556.556 INFO    ] No existing commands found in stream
[2026-06-27 10:24:43,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:24:43,571.571 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-27 10:24:47,366.366 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 10:24:47,368.368 INFO    ] Checking for system updates...
[2026-06-27 10:24:47,389.389 INFO    ] 200
[2026-06-27 10:24:47,391.391 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:24:47,422.422 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:24:47,423.423 INFO    ] No update needed
[2026-06-27 10:24:47,425.425 INFO    ] Checking for camera pi updates...
[2026-06-27 10:24:47,444.444 INFO    ] 200
[2026-06-27 10:24:47,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:24:47,469.469 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:24:47,509.509 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:24:47,511.511 INFO    ] No camera update needed
[2026-06-27 10:24:47,512.512 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:24:47,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:24:47,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:24:47,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:24:49,558.558 INFO    ] ================================================
[2026-06-27 10:24:49,573.573 INFO    ] Launching Daemon at Sat Jun 27 10:24:49 IST 2026
[2026-06-27 10:24:49,584.584 INFO    ] ================================================
[2026-06-27 10:24:49,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:24:49
[2026-06-27 10:24:50,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:24:50,385.385 INFO    ] Initializing speech engine...
[2026-06-27 10:24:50,389.389 INFO    ] 2026-06-27 10:24:50
[2026-06-27 10:24:50,595.595 INFO    ] 2026-06-27 10:24:50
[2026-06-27 10:24:50,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:24:50,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:24:50,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:24:51,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:24:51,036.036 INFO    ] time= 27/06/2026 10:24:51
[2026-06-27 10:24:51,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:24:51,044.044 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:24:51,109.109 INFO    ] No existing commands found in stream
[2026-06-27 10:24:56,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:24:56,119.119 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-27 10:24:58,396.396 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 10:24:58,405.405 INFO    ] Checking for system updates...
[2026-06-27 10:24:58,426.426 INFO    ] 200
[2026-06-27 10:24:58,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:24:58,459.459 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:24:58,460.460 INFO    ] No update needed
[2026-06-27 10:24:58,461.461 INFO    ] Checking for camera pi updates...
[2026-06-27 10:24:58,481.481 INFO    ] 200
[2026-06-27 10:24:58,482.482 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:24:58,510.510 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:24:58,547.547 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:24:58,549.549 INFO    ] No camera update needed
[2026-06-27 10:24:58,550.550 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:24:58,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:24:58,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:24:58,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:25:00,597.597 INFO    ] ================================================
[2026-06-27 10:25:00,613.613 INFO    ] Launching Daemon at Sat Jun 27 10:25:00 IST 2026
[2026-06-27 10:25:00,623.623 INFO    ] ================================================
[2026-06-27 10:25:00,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:25:00
[2026-06-27 10:25:01,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:25:01,406.406 INFO    ] Initializing speech engine...
[2026-06-27 10:25:01,414.414 INFO    ] 2026-06-27 10:25:01
[2026-06-27 10:25:01,626.626 INFO    ] 2026-06-27 10:25:01
[2026-06-27 10:25:01,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:25:01,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:25:01,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:25:02,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:25:02,029.029 INFO    ] time= 27/06/2026 10:25:02
[2026-06-27 10:25:02,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:25:02,039.039 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:25:02,121.121 INFO    ] No existing commands found in stream
[2026-06-27 10:25:07,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:25:07,143.143 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-27 10:25:10,836.836 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 10:25:10,837.837 INFO    ] Checking for system updates...
[2026-06-27 10:25:10,859.859 INFO    ] 200
[2026-06-27 10:25:10,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:25:10,891.891 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:25:10,892.892 INFO    ] No update needed
[2026-06-27 10:25:10,894.894 INFO    ] Checking for camera pi updates...
[2026-06-27 10:25:10,913.913 INFO    ] 200
[2026-06-27 10:25:10,915.915 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:25:10,938.938 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:25:10,974.974 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:25:10,976.976 INFO    ] No camera update needed
[2026-06-27 10:25:10,977.977 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:25:10,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:25:10,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:25:10,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:25:13,025.025 INFO    ] ================================================
[2026-06-27 10:25:13,040.040 INFO    ] Launching Daemon at Sat Jun 27 10:25:13 IST 2026
[2026-06-27 10:25:13,050.050 INFO    ] ================================================
[2026-06-27 10:25:13,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:25:13
[2026-06-27 10:25:13,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:25:13,883.883 INFO    ] Initializing speech engine...
[2026-06-27 10:25:13,898.898 INFO    ] 2026-06-27 10:25:13
[2026-06-27 10:25:14,146.146 INFO    ] 2026-06-27 10:25:14
[2026-06-27 10:25:14,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:25:14,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:25:14,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:25:14,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:25:14,585.585 INFO    ] time= 27/06/2026 10:25:14
[2026-06-27 10:25:14,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:25:14,593.593 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:25:14,659.659 INFO    ] No existing commands found in stream
[2026-06-27 10:25:19,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:25:19,673.673 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-27 10:25:22,683.683 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 10:25:22,685.685 INFO    ] Checking for system updates...
[2026-06-27 10:25:22,707.707 INFO    ] 200
[2026-06-27 10:25:22,708.708 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:25:22,739.739 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:25:22,740.740 INFO    ] No update needed
[2026-06-27 10:25:22,742.742 INFO    ] Checking for camera pi updates...
[2026-06-27 10:25:22,762.762 INFO    ] 200
[2026-06-27 10:25:22,764.764 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:25:22,789.789 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:25:22,829.829 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:25:22,830.830 INFO    ] No camera update needed
[2026-06-27 10:25:22,831.831 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:25:22,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:25:22,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:25:22,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:25:24,876.876 INFO    ] ================================================
[2026-06-27 10:25:24,892.892 INFO    ] Launching Daemon at Sat Jun 27 10:25:24 IST 2026
[2026-06-27 10:25:24,904.904 INFO    ] ================================================
[2026-06-27 10:25:25,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:25:25
[2026-06-27 10:25:25,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:25:25,685.685 INFO    ] Initializing speech engine...
[2026-06-27 10:25:25,688.688 INFO    ] 2026-06-27 10:25:25
[2026-06-27 10:25:25,907.907 INFO    ] 2026-06-27 10:25:25
[2026-06-27 10:25:25,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:25:26,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:25:26,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:25:26,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:25:26,355.355 INFO    ] time= 27/06/2026 10:25:26
[2026-06-27 10:25:26,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:25:26,362.362 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:25:26,430.430 INFO    ] No existing commands found in stream
[2026-06-27 10:25:31,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:25:31,443.443 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-27 10:25:34,783.783 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:25:34,785.785 INFO    ] Checking for system updates...
[2026-06-27 10:25:34,806.806 INFO    ] 200
[2026-06-27 10:25:34,807.807 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:25:34,840.840 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:25:34,841.841 INFO    ] No update needed
[2026-06-27 10:25:34,843.843 INFO    ] Checking for camera pi updates...
[2026-06-27 10:25:34,865.865 INFO    ] 200
[2026-06-27 10:25:34,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:25:34,891.891 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:25:34,934.934 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:25:34,936.936 INFO    ] No camera update needed
[2026-06-27 10:25:34,937.937 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:25:34,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:25:34,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:25:34,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:25:36,984.984 INFO    ] ================================================
[2026-06-27 10:25:37,000.000 INFO    ] Launching Daemon at Sat Jun 27 10:25:36 IST 2026
[2026-06-27 10:25:37,011.011 INFO    ] ================================================
[2026-06-27 10:25:37,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:25:37
[2026-06-27 10:25:37,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:25:37,820.820 INFO    ] Initializing speech engine...
[2026-06-27 10:25:37,826.826 INFO    ] 2026-06-27 10:25:37
[2026-06-27 10:25:38,040.040 INFO    ] 2026-06-27 10:25:38
[2026-06-27 10:25:38,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:25:38,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:25:38,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:25:38,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:25:38,461.461 INFO    ] time= 27/06/2026 10:25:38
[2026-06-27 10:25:38,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:25:38,495.495 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:25:38,561.561 INFO    ] No existing commands found in stream
[2026-06-27 10:25:43,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:25:43,574.574 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-27 10:25:45,126.126 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 10:25:45,128.128 INFO    ] Checking for system updates...
[2026-06-27 10:25:45,149.149 INFO    ] 200
[2026-06-27 10:25:45,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:25:45,180.180 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:25:45,182.182 INFO    ] No update needed
[2026-06-27 10:25:45,183.183 INFO    ] Checking for camera pi updates...
[2026-06-27 10:25:45,202.202 INFO    ] 200
[2026-06-27 10:25:45,204.204 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:25:45,228.228 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:25:45,270.270 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:25:45,271.271 INFO    ] No camera update needed
[2026-06-27 10:25:45,272.272 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:25:45,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:25:45,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:25:45,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:25:47,317.317 INFO    ] ================================================
[2026-06-27 10:25:47,333.333 INFO    ] Launching Daemon at Sat Jun 27 10:25:47 IST 2026
[2026-06-27 10:25:47,345.345 INFO    ] ================================================
[2026-06-27 10:25:47,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:25:47
[2026-06-27 10:25:48,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:25:48,164.164 INFO    ] Initializing speech engine...
[2026-06-27 10:25:48,170.170 INFO    ] 2026-06-27 10:25:48
[2026-06-27 10:25:48,374.374 INFO    ] 2026-06-27 10:25:48
[2026-06-27 10:25:48,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:25:48,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:25:48,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:25:48,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:25:48,795.795 INFO    ] time= 27/06/2026 10:25:48
[2026-06-27 10:25:48,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:25:48,825.825 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:25:48,890.890 INFO    ] No existing commands found in stream
[2026-06-27 10:25:53,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:25:53,903.903 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-27 10:25:55,233.233 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 10:25:55,235.235 INFO    ] Checking for system updates...
[2026-06-27 10:25:55,257.257 INFO    ] 200
[2026-06-27 10:25:55,259.259 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:25:55,289.289 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:25:55,291.291 INFO    ] No update needed
[2026-06-27 10:25:55,292.292 INFO    ] Checking for camera pi updates...
[2026-06-27 10:25:55,313.313 INFO    ] 200
[2026-06-27 10:25:55,314.314 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:25:55,340.340 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:25:55,425.425 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:25:55,426.426 INFO    ] No camera update needed
[2026-06-27 10:25:55,428.428 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:25:55,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:25:55,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:25:55,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:25:57,473.473 INFO    ] ================================================
[2026-06-27 10:25:57,489.489 INFO    ] Launching Daemon at Sat Jun 27 10:25:57 IST 2026
[2026-06-27 10:25:57,500.500 INFO    ] ================================================
[2026-06-27 10:25:57,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:25:57
[2026-06-27 10:25:58,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:25:58,299.299 INFO    ] Initializing speech engine...
[2026-06-27 10:25:58,311.311 INFO    ] 2026-06-27 10:25:58
[2026-06-27 10:25:58,519.519 INFO    ] 2026-06-27 10:25:58
[2026-06-27 10:25:58,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:25:58,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:25:58,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:25:58,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:25:58,935.935 INFO    ] time= 27/06/2026 10:25:58
[2026-06-27 10:25:58,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:25:58,974.974 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:25:59,042.042 INFO    ] No existing commands found in stream
[2026-06-27 10:26:04,051.051 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:26:04,054.054 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-27 10:26:07,328.328 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 10:26:07,329.329 INFO    ] Checking for system updates...
[2026-06-27 10:26:07,351.351 INFO    ] 200
[2026-06-27 10:26:07,352.352 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:26:07,385.385 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:26:07,387.387 INFO    ] No update needed
[2026-06-27 10:26:07,388.388 INFO    ] Checking for camera pi updates...
[2026-06-27 10:26:07,408.408 INFO    ] 200
[2026-06-27 10:26:07,409.409 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:26:07,432.432 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:26:07,474.474 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:26:07,475.475 INFO    ] No camera update needed
[2026-06-27 10:26:07,477.477 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:26:07,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:26:07,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:26:07,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:26:09,523.523 INFO    ] ================================================
[2026-06-27 10:26:09,538.538 INFO    ] Launching Daemon at Sat Jun 27 10:26:09 IST 2026
[2026-06-27 10:26:09,549.549 INFO    ] ================================================
[2026-06-27 10:26:09,923.923 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:26:09
[2026-06-27 10:26:10,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:26:10,383.383 INFO    ] Initializing speech engine...
[2026-06-27 10:26:10,387.387 INFO    ] 2026-06-27 10:26:10
[2026-06-27 10:26:10,592.592 INFO    ] 2026-06-27 10:26:10
[2026-06-27 10:26:10,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:26:10,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:26:10,770.770 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:26:10,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:26:11,012.012 INFO    ] time= 27/06/2026 10:26:10
[2026-06-27 10:26:11,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:26:11,042.042 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:26:11,125.125 INFO    ] No existing commands found in stream
[2026-06-27 10:26:16,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:26:16,159.159 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-27 10:26:18,012.012 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 10:26:18,014.014 INFO    ] Checking for system updates...
[2026-06-27 10:26:18,034.034 INFO    ] 200
[2026-06-27 10:26:18,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:26:18,070.070 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:26:18,072.072 INFO    ] No update needed
[2026-06-27 10:26:18,073.073 INFO    ] Checking for camera pi updates...
[2026-06-27 10:26:18,094.094 INFO    ] 200
[2026-06-27 10:26:18,096.096 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:26:18,120.120 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:26:18,158.158 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:26:18,160.160 INFO    ] No camera update needed
[2026-06-27 10:26:18,161.161 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:26:18,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:26:18,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:26:18,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:26:20,206.206 INFO    ] ================================================
[2026-06-27 10:26:20,222.222 INFO    ] Launching Daemon at Sat Jun 27 10:26:20 IST 2026
[2026-06-27 10:26:20,232.232 INFO    ] ================================================
[2026-06-27 10:26:20,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:26:20
[2026-06-27 10:26:20,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:26:21,024.024 INFO    ] Initializing speech engine...
[2026-06-27 10:26:21,029.029 INFO    ] 2026-06-27 10:26:21
[2026-06-27 10:26:21,234.234 INFO    ] 2026-06-27 10:26:21
[2026-06-27 10:26:21,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:26:21,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:26:21,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:26:21,582.582 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:26:21,633.633 INFO    ] time= 27/06/2026 10:26:21
[2026-06-27 10:26:21,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:26:21,683.683 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:26:21,756.756 INFO    ] No existing commands found in stream
[2026-06-27 10:26:26,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:26:26,768.768 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-27 10:26:29,505.505 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 10:26:29,507.507 INFO    ] Checking for system updates...
[2026-06-27 10:26:29,528.528 INFO    ] 200
[2026-06-27 10:26:29,529.529 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:26:29,559.559 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:26:29,561.561 INFO    ] No update needed
[2026-06-27 10:26:29,562.562 INFO    ] Checking for camera pi updates...
[2026-06-27 10:26:29,583.583 INFO    ] 200
[2026-06-27 10:26:29,584.584 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:26:29,609.609 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:26:29,645.645 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:26:29,647.647 INFO    ] No camera update needed
[2026-06-27 10:26:29,648.648 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:26:29,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:26:29,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:26:29,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:26:31,687.687 INFO    ] ================================================
[2026-06-27 10:26:31,696.696 INFO    ] Launching Daemon at Sat Jun 27 10:26:31 IST 2026
[2026-06-27 10:26:31,703.703 INFO    ] ================================================
[2026-06-27 10:26:32,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:26:32
[2026-06-27 10:26:32,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:26:32,571.571 INFO    ] Initializing speech engine...
[2026-06-27 10:26:32,577.577 INFO    ] 2026-06-27 10:26:32
[2026-06-27 10:26:32,786.786 INFO    ] 2026-06-27 10:26:32
[2026-06-27 10:26:32,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:26:32,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:26:33,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:26:33,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:26:33,227.227 INFO    ] time= 27/06/2026 10:26:33
[2026-06-27 10:26:33,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:26:33,234.234 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:26:33,302.302 INFO    ] No existing commands found in stream
[2026-06-27 10:26:38,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:26:38,319.319 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-27 10:26:41,843.843 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:26:41,844.844 INFO    ] Checking for system updates...
[2026-06-27 10:26:41,866.866 INFO    ] 200
[2026-06-27 10:26:41,868.868 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:26:41,901.901 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:26:41,903.903 INFO    ] No update needed
[2026-06-27 10:26:41,904.904 INFO    ] Checking for camera pi updates...
[2026-06-27 10:26:41,925.925 INFO    ] 200
[2026-06-27 10:26:41,926.926 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:26:41,950.950 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:26:41,994.994 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:26:41,996.996 INFO    ] No camera update needed
[2026-06-27 10:26:41,997.997 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:26:41,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:26:42,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:26:42,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:26:44,043.043 INFO    ] ================================================
[2026-06-27 10:26:44,059.059 INFO    ] Launching Daemon at Sat Jun 27 10:26:44 IST 2026
[2026-06-27 10:26:44,069.069 INFO    ] ================================================
[2026-06-27 10:26:44,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:26:44
[2026-06-27 10:26:44,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:26:44,922.922 INFO    ] Initializing speech engine...
[2026-06-27 10:26:44,930.930 INFO    ] 2026-06-27 10:26:44
[2026-06-27 10:26:45,150.150 INFO    ] 2026-06-27 10:26:45
[2026-06-27 10:26:45,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:26:45,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:26:45,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:26:45,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:26:45,574.574 INFO    ] time= 27/06/2026 10:26:45
[2026-06-27 10:26:45,602.602 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:26:45,609.609 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:26:45,677.677 INFO    ] No existing commands found in stream
[2026-06-27 10:26:50,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:26:50,690.690 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-27 10:26:53,626.626 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 10:26:53,627.627 INFO    ] Checking for system updates...
[2026-06-27 10:26:53,649.649 INFO    ] 200
[2026-06-27 10:26:53,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:26:53,683.683 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:26:53,685.685 INFO    ] No update needed
[2026-06-27 10:26:53,686.686 INFO    ] Checking for camera pi updates...
[2026-06-27 10:26:53,706.706 INFO    ] 200
[2026-06-27 10:26:53,707.707 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:26:53,731.731 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:26:53,775.775 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:26:53,777.777 INFO    ] No camera update needed
[2026-06-27 10:26:53,778.778 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:26:53,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:26:53,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:26:53,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:26:55,823.823 INFO    ] ================================================
[2026-06-27 10:26:55,838.838 INFO    ] Launching Daemon at Sat Jun 27 10:26:55 IST 2026
[2026-06-27 10:26:55,849.849 INFO    ] ================================================
[2026-06-27 10:26:56,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:26:56
[2026-06-27 10:26:56,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:26:56,634.634 INFO    ] Initializing speech engine...
[2026-06-27 10:26:56,646.646 INFO    ] 2026-06-27 10:26:56
[2026-06-27 10:26:56,851.851 INFO    ] 2026-06-27 10:26:56
[2026-06-27 10:26:56,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:26:57,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:26:57,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:26:57,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:26:57,248.248 INFO    ] time= 27/06/2026 10:26:57
[2026-06-27 10:26:57,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:26:57,298.298 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:26:57,368.368 INFO    ] No existing commands found in stream
[2026-06-27 10:27:02,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:27:02,377.377 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-27 10:27:05,252.252 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:27:05,254.254 INFO    ] Checking for system updates...
[2026-06-27 10:27:05,276.276 INFO    ] 200
[2026-06-27 10:27:05,278.278 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:27:05,311.311 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:27:05,312.312 INFO    ] No update needed
[2026-06-27 10:27:05,314.314 INFO    ] Checking for camera pi updates...
[2026-06-27 10:27:05,337.337 INFO    ] 200
[2026-06-27 10:27:05,339.339 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:27:05,365.365 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:27:05,403.403 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:27:05,404.404 INFO    ] No camera update needed
[2026-06-27 10:27:05,406.406 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:27:05,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:27:05,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:27:05,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:27:07,454.454 INFO    ] ================================================
[2026-06-27 10:27:07,469.469 INFO    ] Launching Daemon at Sat Jun 27 10:27:07 IST 2026
[2026-06-27 10:27:07,480.480 INFO    ] ================================================
[2026-06-27 10:27:07,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:27:07
[2026-06-27 10:27:08,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:27:08,289.289 INFO    ] Initializing speech engine...
[2026-06-27 10:27:08,303.303 INFO    ] 2026-06-27 10:27:08
[2026-06-27 10:27:08,524.524 INFO    ] 2026-06-27 10:27:08
[2026-06-27 10:27:08,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:27:08,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:27:08,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:27:08,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:27:08,969.969 INFO    ] time= 27/06/2026 10:27:08
[2026-06-27 10:27:08,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:27:09,014.014 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:27:09,090.090 INFO    ] No existing commands found in stream
[2026-06-27 10:27:14,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:27:14,105.105 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-27 10:27:15,551.551 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:27:15,552.552 INFO    ] Checking for system updates...
[2026-06-27 10:27:15,573.573 INFO    ] 200
[2026-06-27 10:27:15,575.575 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:27:15,606.606 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:27:15,608.608 INFO    ] No update needed
[2026-06-27 10:27:15,609.609 INFO    ] Checking for camera pi updates...
[2026-06-27 10:27:15,630.630 INFO    ] 200
[2026-06-27 10:27:15,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:27:15,659.659 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:27:15,696.696 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:27:15,698.698 INFO    ] No camera update needed
[2026-06-27 10:27:15,699.699 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:27:15,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:27:15,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:27:15,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:27:17,746.746 INFO    ] ================================================
[2026-06-27 10:27:17,762.762 INFO    ] Launching Daemon at Sat Jun 27 10:27:17 IST 2026
[2026-06-27 10:27:17,773.773 INFO    ] ================================================
[2026-06-27 10:27:18,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:27:18
[2026-06-27 10:27:18,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:27:18,581.581 INFO    ] Initializing speech engine...
[2026-06-27 10:27:18,592.592 INFO    ] 2026-06-27 10:27:18
[2026-06-27 10:27:18,798.798 INFO    ] 2026-06-27 10:27:18
[2026-06-27 10:27:18,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:27:19,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:27:19,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:27:19,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:27:19,185.185 INFO    ] time= 27/06/2026 10:27:19
[2026-06-27 10:27:19,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:27:19,246.246 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:27:19,317.317 INFO    ] No existing commands found in stream
[2026-06-27 10:27:24,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:27:24,330.330 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-27 10:27:28,287.287 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 10:27:28,288.288 INFO    ] Checking for system updates...
[2026-06-27 10:27:28,311.311 INFO    ] 200
[2026-06-27 10:27:28,312.312 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:27:28,347.347 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:27:28,349.349 INFO    ] No update needed
[2026-06-27 10:27:28,350.350 INFO    ] Checking for camera pi updates...
[2026-06-27 10:27:28,372.372 INFO    ] 200
[2026-06-27 10:27:28,374.374 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:27:28,399.399 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:27:28,436.436 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:27:28,438.438 INFO    ] No camera update needed
[2026-06-27 10:27:28,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:27:28,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:27:28,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:27:28,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:27:30,490.490 INFO    ] ================================================
[2026-06-27 10:27:30,506.506 INFO    ] Launching Daemon at Sat Jun 27 10:27:30 IST 2026
[2026-06-27 10:27:30,517.517 INFO    ] ================================================
[2026-06-27 10:27:30,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:27:30
[2026-06-27 10:27:31,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:27:31,294.294 INFO    ] Initializing speech engine...
[2026-06-27 10:27:31,297.297 INFO    ] 2026-06-27 10:27:31
[2026-06-27 10:27:31,503.503 INFO    ] 2026-06-27 10:27:31
[2026-06-27 10:27:31,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:27:31,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:27:31,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:27:31,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:27:32,016.016 INFO    ] time= 27/06/2026 10:27:31
[2026-06-27 10:27:32,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:27:32,053.053 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:27:32,131.131 INFO    ] No existing commands found in stream
[2026-06-27 10:27:37,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:27:37,143.143 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-27 10:27:39,472.472 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:27:39,474.474 INFO    ] Checking for system updates...
[2026-06-27 10:27:39,496.496 INFO    ] 200
[2026-06-27 10:27:39,497.497 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:27:39,531.531 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:27:39,532.532 INFO    ] No update needed
[2026-06-27 10:27:39,534.534 INFO    ] Checking for camera pi updates...
[2026-06-27 10:27:39,554.554 INFO    ] 200
[2026-06-27 10:27:39,555.555 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:27:39,579.579 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:27:39,616.616 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:27:39,618.618 INFO    ] No camera update needed
[2026-06-27 10:27:39,619.619 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:27:39,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:27:39,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:27:39,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:27:41,667.667 INFO    ] ================================================
[2026-06-27 10:27:41,682.682 INFO    ] Launching Daemon at Sat Jun 27 10:27:41 IST 2026
[2026-06-27 10:27:41,692.692 INFO    ] ================================================
[2026-06-27 10:27:42,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:27:42
[2026-06-27 10:27:42,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:27:42,502.502 INFO    ] Initializing speech engine...
[2026-06-27 10:27:42,507.507 INFO    ] 2026-06-27 10:27:42
[2026-06-27 10:27:42,712.712 INFO    ] 2026-06-27 10:27:42
[2026-06-27 10:27:42,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:27:42,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:27:42,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:27:43,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:27:43,110.110 INFO    ] time= 27/06/2026 10:27:43
[2026-06-27 10:27:43,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:27:43,154.154 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:27:43,226.226 INFO    ] No existing commands found in stream
[2026-06-27 10:27:48,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:27:48,238.238 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-27 10:27:50,982.982 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 10:27:50,983.983 INFO    ] Checking for system updates...
[2026-06-27 10:27:51,004.004 INFO    ] 200
[2026-06-27 10:27:51,005.005 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:27:51,036.036 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:27:51,037.037 INFO    ] No update needed
[2026-06-27 10:27:51,039.039 INFO    ] Checking for camera pi updates...
[2026-06-27 10:27:51,060.060 INFO    ] 200
[2026-06-27 10:27:51,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:27:51,084.084 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:27:51,125.125 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:27:51,126.126 INFO    ] No camera update needed
[2026-06-27 10:27:51,128.128 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:27:51,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:27:51,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:27:51,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:27:53,176.176 INFO    ] ================================================
[2026-06-27 10:27:53,191.191 INFO    ] Launching Daemon at Sat Jun 27 10:27:53 IST 2026
[2026-06-27 10:27:53,201.201 INFO    ] ================================================
[2026-06-27 10:27:53,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:27:53
[2026-06-27 10:27:53,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:27:53,988.988 INFO    ] Initializing speech engine...
[2026-06-27 10:27:54,002.002 INFO    ] 2026-06-27 10:27:53
[2026-06-27 10:27:54,211.211 INFO    ] 2026-06-27 10:27:54
[2026-06-27 10:27:54,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:27:54,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:27:54,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:27:54,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:27:54,650.650 INFO    ] time= 27/06/2026 10:27:54
[2026-06-27 10:27:54,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:27:54,657.657 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:27:54,723.723 INFO    ] No existing commands found in stream
[2026-06-27 10:27:59,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:27:59,737.737 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-27 10:28:00,330.330 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:28:00,334.334 INFO    ] Checking for system updates...
[2026-06-27 10:28:00,357.357 INFO    ] 200
[2026-06-27 10:28:00,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:28:00,392.392 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:28:00,394.394 INFO    ] No update needed
[2026-06-27 10:28:00,395.395 INFO    ] Checking for camera pi updates...
[2026-06-27 10:28:00,417.417 INFO    ] 200
[2026-06-27 10:28:00,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:28:00,444.444 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:28:00,479.479 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:28:00,481.481 INFO    ] No camera update needed
[2026-06-27 10:28:00,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:28:00,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:28:00,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:28:00,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:28:02,523.523 INFO    ] ================================================
[2026-06-27 10:28:02,535.535 INFO    ] Launching Daemon at Sat Jun 27 10:28:02 IST 2026
[2026-06-27 10:28:02,544.544 INFO    ] ================================================
[2026-06-27 10:28:02,923.923 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:28:02
[2026-06-27 10:28:03,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:28:03,382.382 INFO    ] Initializing speech engine...
[2026-06-27 10:28:03,392.392 INFO    ] 2026-06-27 10:28:03
[2026-06-27 10:28:03,582.582 INFO    ] 2026-06-27 10:28:03
[2026-06-27 10:28:03,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:28:03,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:28:03,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:28:04,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:28:04,048.048 INFO    ] time= 27/06/2026 10:28:04
[2026-06-27 10:28:04,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:28:04,111.111 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:28:04,186.186 INFO    ] No existing commands found in stream
[2026-06-27 10:28:09,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:28:09,200.200 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-27 10:28:14,571.571 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:28:14,573.573 INFO    ] Checking for system updates...
[2026-06-27 10:28:14,610.610 INFO    ] 200
[2026-06-27 10:28:14,613.613 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:28:14,665.665 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:28:14,668.668 INFO    ] No update needed
[2026-06-27 10:28:14,670.670 INFO    ] Checking for camera pi updates...
[2026-06-27 10:28:14,695.695 INFO    ] 200
[2026-06-27 10:28:14,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:28:14,720.720 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:28:14,859.859 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:28:14,860.860 INFO    ] No camera update needed
[2026-06-27 10:28:14,861.861 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:28:14,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:28:14,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:28:14,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:28:16,909.909 INFO    ] ================================================
[2026-06-27 10:28:16,925.925 INFO    ] Launching Daemon at Sat Jun 27 10:28:16 IST 2026
[2026-06-27 10:28:16,935.935 INFO    ] ================================================
[2026-06-27 10:28:17,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:28:17
[2026-06-27 10:28:17,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:28:17,798.798 INFO    ] Initializing speech engine...
[2026-06-27 10:28:17,802.802 INFO    ] 2026-06-27 10:28:17
[2026-06-27 10:28:18,019.019 INFO    ] 2026-06-27 10:28:17
[2026-06-27 10:28:18,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:28:18,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:28:18,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:28:18,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:28:18,463.463 INFO    ] time= 27/06/2026 10:28:18
[2026-06-27 10:28:18,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:28:18,470.470 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:28:18,537.537 INFO    ] No existing commands found in stream
[2026-06-27 10:28:23,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:28:23,549.549 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-27 10:28:24,305.305 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:28:24,306.306 INFO    ] Checking for system updates...
[2026-06-27 10:28:24,329.329 INFO    ] 200
[2026-06-27 10:28:24,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:28:24,367.367 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:28:24,368.368 INFO    ] No update needed
[2026-06-27 10:28:24,370.370 INFO    ] Checking for camera pi updates...
[2026-06-27 10:28:24,393.393 INFO    ] 200
[2026-06-27 10:28:24,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:28:24,418.418 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:28:24,457.457 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:28:24,459.459 INFO    ] No camera update needed
[2026-06-27 10:28:24,460.460 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:28:24,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:28:24,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:28:24,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:28:26,506.506 INFO    ] ================================================
[2026-06-27 10:28:26,522.522 INFO    ] Launching Daemon at Sat Jun 27 10:28:26 IST 2026
[2026-06-27 10:28:26,533.533 INFO    ] ================================================
[2026-06-27 10:28:26,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:28:26
[2026-06-27 10:28:27,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:28:27,307.307 INFO    ] Initializing speech engine...
[2026-06-27 10:28:27,319.319 INFO    ] 2026-06-27 10:28:27
[2026-06-27 10:28:27,526.526 INFO    ] 2026-06-27 10:28:27
[2026-06-27 10:28:27,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:28:27,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:28:27,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:28:27,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:28:27,915.915 INFO    ] time= 27/06/2026 10:28:27
[2026-06-27 10:28:27,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:28:27,973.973 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:28:28,040.040 INFO    ] No existing commands found in stream
[2026-06-27 10:28:33,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:28:33,049.049 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-27 10:28:34,959.959 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 10:28:34,961.961 INFO    ] Checking for system updates...
[2026-06-27 10:28:34,981.981 INFO    ] 200
[2026-06-27 10:28:34,982.982 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:28:35,016.016 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:28:35,017.017 INFO    ] No update needed
[2026-06-27 10:28:35,018.018 INFO    ] Checking for camera pi updates...
[2026-06-27 10:28:35,039.039 INFO    ] 200
[2026-06-27 10:28:35,041.041 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:28:35,065.065 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:28:35,101.101 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:28:35,102.102 INFO    ] No camera update needed
[2026-06-27 10:28:35,103.103 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:28:35,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:28:35,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:28:35,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:28:37,148.148 INFO    ] ================================================
[2026-06-27 10:28:37,163.163 INFO    ] Launching Daemon at Sat Jun 27 10:28:37 IST 2026
[2026-06-27 10:28:37,174.174 INFO    ] ================================================
[2026-06-27 10:28:37,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:28:37
[2026-06-27 10:28:37,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:28:37,983.983 INFO    ] Initializing speech engine...
[2026-06-27 10:28:37,987.987 INFO    ] 2026-06-27 10:28:37
[2026-06-27 10:28:38,192.192 INFO    ] 2026-06-27 10:28:38
[2026-06-27 10:28:38,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:28:38,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:28:38,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:28:38,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:28:38,608.608 INFO    ] time= 27/06/2026 10:28:38
[2026-06-27 10:28:38,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:28:38,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:28:38,705.705 INFO    ] No existing commands found in stream
[2026-06-27 10:28:43,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:28:43,722.722 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-27 10:28:47,192.192 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:28:47,194.194 INFO    ] Checking for system updates...
[2026-06-27 10:28:47,215.215 INFO    ] 200
[2026-06-27 10:28:47,216.216 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:28:47,249.249 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:28:47,251.251 INFO    ] No update needed
[2026-06-27 10:28:47,253.253 INFO    ] Checking for camera pi updates...
[2026-06-27 10:28:47,272.272 INFO    ] 200
[2026-06-27 10:28:47,274.274 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:28:47,299.299 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:28:47,334.334 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:28:47,336.336 INFO    ] No camera update needed
[2026-06-27 10:28:47,337.337 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:28:47,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:28:47,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:28:47,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:28:49,388.388 INFO    ] ================================================
[2026-06-27 10:28:49,402.402 INFO    ] Launching Daemon at Sat Jun 27 10:28:49 IST 2026
[2026-06-27 10:28:49,414.414 INFO    ] ================================================
[2026-06-27 10:28:49,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:28:49
[2026-06-27 10:28:50,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:28:50,195.195 INFO    ] Initializing speech engine...
[2026-06-27 10:28:50,200.200 INFO    ] 2026-06-27 10:28:50
[2026-06-27 10:28:50,403.403 INFO    ] 2026-06-27 10:28:50
[2026-06-27 10:28:50,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:28:50,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:28:50,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:28:50,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:28:50,817.817 INFO    ] time= 27/06/2026 10:28:50
[2026-06-27 10:28:50,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:28:50,850.850 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:28:50,917.917 INFO    ] No existing commands found in stream
[2026-06-27 10:28:55,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:28:55,934.934 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-27 10:28:59,472.472 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 10:28:59,474.474 INFO    ] Checking for system updates...
[2026-06-27 10:28:59,516.516 INFO    ] 200
[2026-06-27 10:28:59,518.518 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:28:59,555.555 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:28:59,556.556 INFO    ] No update needed
[2026-06-27 10:28:59,557.557 INFO    ] Checking for camera pi updates...
[2026-06-27 10:28:59,577.577 INFO    ] 200
[2026-06-27 10:28:59,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:28:59,603.603 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:28:59,643.643 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:28:59,644.644 INFO    ] No camera update needed
[2026-06-27 10:28:59,645.645 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:28:59,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:28:59,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:28:59,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:29:01,712.712 INFO    ] ================================================
[2026-06-27 10:29:01,746.746 INFO    ] Launching Daemon at Sat Jun 27 10:29:01 IST 2026
[2026-06-27 10:29:01,763.763 INFO    ] ================================================
[2026-06-27 10:29:02,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:29:02
[2026-06-27 10:29:02,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:29:02,728.728 INFO    ] Initializing speech engine...
[2026-06-27 10:29:02,732.732 INFO    ] 2026-06-27 10:29:02
[2026-06-27 10:29:02,931.931 INFO    ] 2026-06-27 10:29:02
[2026-06-27 10:29:02,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:29:03,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:29:03,183.183 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:29:03,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:29:03,407.407 INFO    ] time= 27/06/2026 10:29:03
[2026-06-27 10:29:03,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:29:03,475.475 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:29:03,588.588 INFO    ] No existing commands found in stream
[2026-06-27 10:29:08,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:29:08,601.601 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-27 10:29:09,535.535 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 10:29:09,536.536 INFO    ] Checking for system updates...
[2026-06-27 10:29:09,566.566 INFO    ] 200
[2026-06-27 10:29:09,568.568 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:29:09,601.601 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:29:09,602.602 INFO    ] No update needed
[2026-06-27 10:29:09,604.604 INFO    ] Checking for camera pi updates...
[2026-06-27 10:29:09,623.623 INFO    ] 200
[2026-06-27 10:29:09,625.625 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:29:09,651.651 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:29:09,687.687 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:29:09,689.689 INFO    ] No camera update needed
[2026-06-27 10:29:09,690.690 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:29:09,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:29:09,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:29:09,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:29:11,738.738 INFO    ] ================================================
[2026-06-27 10:29:11,754.754 INFO    ] Launching Daemon at Sat Jun 27 10:29:11 IST 2026
[2026-06-27 10:29:11,765.765 INFO    ] ================================================
[2026-06-27 10:29:12,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:29:12
[2026-06-27 10:29:12,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:29:12,571.571 INFO    ] Initializing speech engine...
[2026-06-27 10:29:12,575.575 INFO    ] 2026-06-27 10:29:12
[2026-06-27 10:29:12,779.779 INFO    ] 2026-06-27 10:29:12
[2026-06-27 10:29:12,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:29:13,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:29:13,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:29:13,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:29:13,239.239 INFO    ] time= 27/06/2026 10:29:13
[2026-06-27 10:29:13,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:29:13,291.291 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:29:13,369.369 INFO    ] No existing commands found in stream
[2026-06-27 10:29:18,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:29:18,379.379 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-27 10:29:20,320.320 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:29:20,321.321 INFO    ] Checking for system updates...
[2026-06-27 10:29:20,342.342 INFO    ] 200
[2026-06-27 10:29:20,344.344 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:29:20,375.375 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:29:20,376.376 INFO    ] No update needed
[2026-06-27 10:29:20,377.377 INFO    ] Checking for camera pi updates...
[2026-06-27 10:29:20,399.399 INFO    ] 200
[2026-06-27 10:29:20,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:29:20,427.427 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:29:20,470.470 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:29:20,472.472 INFO    ] No camera update needed
[2026-06-27 10:29:20,473.473 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:29:20,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:29:20,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:29:20,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:29:22,520.520 INFO    ] ================================================
[2026-06-27 10:29:22,536.536 INFO    ] Launching Daemon at Sat Jun 27 10:29:22 IST 2026
[2026-06-27 10:29:22,547.547 INFO    ] ================================================
[2026-06-27 10:29:22,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:29:22
[2026-06-27 10:29:23,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:29:23,333.333 INFO    ] Initializing speech engine...
[2026-06-27 10:29:23,337.337 INFO    ] 2026-06-27 10:29:23
[2026-06-27 10:29:23,530.530 INFO    ] 2026-06-27 10:29:23
[2026-06-27 10:29:23,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:29:23,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:29:23,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:29:23,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:29:24,010.010 INFO    ] time= 27/06/2026 10:29:23
[2026-06-27 10:29:24,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:29:24,045.045 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:29:24,112.112 INFO    ] No existing commands found in stream
[2026-06-27 10:29:29,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:29:29,124.124 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-27 10:29:30,229.229 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 10:29:30,230.230 INFO    ] Checking for system updates...
[2026-06-27 10:29:30,251.251 INFO    ] 200
[2026-06-27 10:29:30,252.252 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:29:30,286.286 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:29:30,287.287 INFO    ] No update needed
[2026-06-27 10:29:30,289.289 INFO    ] Checking for camera pi updates...
[2026-06-27 10:29:30,308.308 INFO    ] 200
[2026-06-27 10:29:30,310.310 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:29:30,335.335 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:29:30,371.371 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:29:30,372.372 INFO    ] No camera update needed
[2026-06-27 10:29:30,374.374 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:29:30,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:29:30,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:29:30,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:29:32,412.412 INFO    ] ================================================
[2026-06-27 10:29:32,423.423 INFO    ] Launching Daemon at Sat Jun 27 10:29:32 IST 2026
[2026-06-27 10:29:32,429.429 INFO    ] ================================================
[2026-06-27 10:29:32,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:29:32
[2026-06-27 10:29:33,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:29:33,196.196 INFO    ] Initializing speech engine...
[2026-06-27 10:29:33,209.209 INFO    ] 2026-06-27 10:29:33
[2026-06-27 10:29:33,429.429 INFO    ] 2026-06-27 10:29:33
[2026-06-27 10:29:33,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:29:33,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:29:33,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:29:33,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:29:33,856.856 INFO    ] time= 27/06/2026 10:29:33
[2026-06-27 10:29:33,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:29:33,913.913 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:29:33,989.989 INFO    ] No existing commands found in stream
[2026-06-27 10:29:39,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:29:39,002.002 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-27 10:29:40,360.360 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 10:29:40,361.361 INFO    ] Checking for system updates...
[2026-06-27 10:29:40,382.382 INFO    ] 200
[2026-06-27 10:29:40,384.384 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:29:40,415.415 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:29:40,417.417 INFO    ] No update needed
[2026-06-27 10:29:40,418.418 INFO    ] Checking for camera pi updates...
[2026-06-27 10:29:40,438.438 INFO    ] 200
[2026-06-27 10:29:40,440.440 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:29:40,465.465 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:29:40,508.508 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:29:40,510.510 INFO    ] No camera update needed
[2026-06-27 10:29:40,511.511 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:29:40,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:29:40,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:29:40,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:29:42,558.558 INFO    ] ================================================
[2026-06-27 10:29:42,576.576 INFO    ] Launching Daemon at Sat Jun 27 10:29:42 IST 2026
[2026-06-27 10:29:42,591.591 INFO    ] ================================================
[2026-06-27 10:29:42,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:29:42
[2026-06-27 10:29:43,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:29:43,472.472 INFO    ] Initializing speech engine...
[2026-06-27 10:29:43,477.477 INFO    ] 2026-06-27 10:29:43
[2026-06-27 10:29:43,685.685 INFO    ] 2026-06-27 10:29:43
[2026-06-27 10:29:43,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:29:43,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:29:43,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:29:44,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:29:44,107.107 INFO    ] time= 27/06/2026 10:29:44
[2026-06-27 10:29:44,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:29:44,142.142 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:29:44,249.249 INFO    ] No existing commands found in stream
[2026-06-27 10:29:49,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:29:49,263.263 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-27 10:29:50,420.420 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:29:50,421.421 INFO    ] Checking for system updates...
[2026-06-27 10:29:50,443.443 INFO    ] 200
[2026-06-27 10:29:50,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:29:50,478.478 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:29:50,479.479 INFO    ] No update needed
[2026-06-27 10:29:50,481.481 INFO    ] Checking for camera pi updates...
[2026-06-27 10:29:50,503.503 INFO    ] 200
[2026-06-27 10:29:50,505.505 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:29:50,529.529 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:29:50,571.571 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:29:50,573.573 INFO    ] No camera update needed
[2026-06-27 10:29:50,575.575 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:29:50,576.576 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:29:50,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:29:50,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:29:52,621.621 INFO    ] ================================================
[2026-06-27 10:29:52,637.637 INFO    ] Launching Daemon at Sat Jun 27 10:29:52 IST 2026
[2026-06-27 10:29:52,648.648 INFO    ] ================================================
[2026-06-27 10:29:53,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:29:53
[2026-06-27 10:29:53,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:29:53,456.456 INFO    ] Initializing speech engine...
[2026-06-27 10:29:53,466.466 INFO    ] 2026-06-27 10:29:53
[2026-06-27 10:29:53,670.670 INFO    ] 2026-06-27 10:29:53
[2026-06-27 10:29:53,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:29:53,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:29:53,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:29:54,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:29:54,108.108 INFO    ] time= 27/06/2026 10:29:54
[2026-06-27 10:29:54,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:29:54,115.115 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:29:54,181.181 INFO    ] No existing commands found in stream
[2026-06-27 10:29:59,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:29:59,195.195 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-27 10:30:06,236.236 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:30:06,237.237 INFO    ] Checking for system updates...
[2026-06-27 10:30:06,258.258 INFO    ] 200
[2026-06-27 10:30:06,259.259 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:30:06,290.290 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:30:06,291.291 INFO    ] No update needed
[2026-06-27 10:30:06,293.293 INFO    ] Checking for camera pi updates...
[2026-06-27 10:30:06,314.314 INFO    ] 200
[2026-06-27 10:30:06,316.316 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:30:06,339.339 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:30:06,381.381 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:30:06,383.383 INFO    ] No camera update needed
[2026-06-27 10:30:06,384.384 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:30:06,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:30:06,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:30:06,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:30:08,431.431 INFO    ] ================================================
[2026-06-27 10:30:08,446.446 INFO    ] Launching Daemon at Sat Jun 27 10:30:08 IST 2026
[2026-06-27 10:30:08,457.457 INFO    ] ================================================
[2026-06-27 10:30:08,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:30:08
[2026-06-27 10:30:09,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:30:09,313.313 INFO    ] Initializing speech engine...
[2026-06-27 10:30:09,325.325 INFO    ] 2026-06-27 10:30:09
[2026-06-27 10:30:09,533.533 INFO    ] 2026-06-27 10:30:09
[2026-06-27 10:30:09,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:30:09,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:30:09,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:30:09,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:30:09,955.955 INFO    ] time= 27/06/2026 10:30:09
[2026-06-27 10:30:09,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:30:09,997.997 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:30:10,073.073 INFO    ] No existing commands found in stream
[2026-06-27 10:30:15,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:30:15,087.087 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-27 10:30:16,246.246 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 10:30:16,247.247 INFO    ] Checking for system updates...
[2026-06-27 10:30:16,272.272 INFO    ] 200
[2026-06-27 10:30:16,275.275 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:30:16,306.306 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:30:16,307.307 INFO    ] No update needed
[2026-06-27 10:30:16,308.308 INFO    ] Checking for camera pi updates...
[2026-06-27 10:30:16,328.328 INFO    ] 200
[2026-06-27 10:30:16,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:30:16,352.352 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:30:16,491.491 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:30:16,492.492 INFO    ] No camera update needed
[2026-06-27 10:30:16,494.494 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:30:16,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:30:16,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:30:16,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:30:18,539.539 INFO    ] ================================================
[2026-06-27 10:30:18,555.555 INFO    ] Launching Daemon at Sat Jun 27 10:30:18 IST 2026
[2026-06-27 10:30:18,566.566 INFO    ] ================================================
[2026-06-27 10:30:18,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:30:18
[2026-06-27 10:30:19,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:30:19,367.367 INFO    ] Initializing speech engine...
[2026-06-27 10:30:19,372.372 INFO    ] 2026-06-27 10:30:19
[2026-06-27 10:30:19,578.578 INFO    ] 2026-06-27 10:30:19
[2026-06-27 10:30:19,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:30:19,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:30:19,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:30:19,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:30:20,024.024 INFO    ] time= 27/06/2026 10:30:20
[2026-06-27 10:30:20,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:30:20,031.031 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:30:20,098.098 INFO    ] No existing commands found in stream
[2026-06-27 10:30:25,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:30:25,111.111 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-27 10:30:26,810.810 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:30:26,812.812 INFO    ] Checking for system updates...
[2026-06-27 10:30:26,833.833 INFO    ] 200
[2026-06-27 10:30:26,834.834 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:30:26,865.865 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:30:26,866.866 INFO    ] No update needed
[2026-06-27 10:30:26,868.868 INFO    ] Checking for camera pi updates...
[2026-06-27 10:30:26,887.887 INFO    ] 200
[2026-06-27 10:30:26,888.888 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:30:26,912.912 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:30:26,947.947 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:30:26,949.949 INFO    ] No camera update needed
[2026-06-27 10:30:26,950.950 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:30:26,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:30:26,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:30:26,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:30:29,996.996 INFO    ] ================================================
[2026-06-27 10:30:29,012.012 INFO    ] Launching Daemon at Sat Jun 27 10:30:29 IST 2026
[2026-06-27 10:30:29,022.022 INFO    ] ================================================
[2026-06-27 10:30:29,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:30:29
[2026-06-27 10:30:29,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:30:29,834.834 INFO    ] Initializing speech engine...
[2026-06-27 10:30:29,838.838 INFO    ] 2026-06-27 10:30:29
[2026-06-27 10:30:30,059.059 INFO    ] 2026-06-27 10:30:30
[2026-06-27 10:30:30,087.087 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:30:30,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:30:30,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:30:30,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:30:30,481.481 INFO    ] time= 27/06/2026 10:30:30
[2026-06-27 10:30:30,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:30:30,511.511 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:30:30,578.578 INFO    ] No existing commands found in stream
[2026-06-27 10:30:35,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:30:35,592.592 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-27 10:30:39,858.858 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:30:39,860.860 INFO    ] Checking for system updates...
[2026-06-27 10:30:39,881.881 INFO    ] 200
[2026-06-27 10:30:39,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:30:39,917.917 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:30:39,919.919 INFO    ] No update needed
[2026-06-27 10:30:39,921.921 INFO    ] Checking for camera pi updates...
[2026-06-27 10:30:39,944.944 INFO    ] 200
[2026-06-27 10:30:39,945.945 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:30:39,968.968 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:30:40,015.015 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:30:40,016.016 INFO    ] No camera update needed
[2026-06-27 10:30:40,017.017 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:30:40,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:30:40,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:30:40,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:30:42,064.064 INFO    ] ================================================
[2026-06-27 10:30:42,079.079 INFO    ] Launching Daemon at Sat Jun 27 10:30:42 IST 2026
[2026-06-27 10:30:42,090.090 INFO    ] ================================================
[2026-06-27 10:30:42,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:30:42
[2026-06-27 10:30:42,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:30:42,862.862 INFO    ] Initializing speech engine...
[2026-06-27 10:30:42,866.866 INFO    ] 2026-06-27 10:30:42
[2026-06-27 10:30:43,082.082 INFO    ] 2026-06-27 10:30:43
[2026-06-27 10:30:43,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:30:43,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:30:43,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:30:43,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:30:43,506.506 INFO    ] time= 27/06/2026 10:30:43
[2026-06-27 10:30:43,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:30:43,536.536 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:30:43,603.603 INFO    ] No existing commands found in stream
[2026-06-27 10:30:48,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:30:48,616.616 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-27 10:30:53,014.014 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:30:53,015.015 INFO    ] Checking for system updates...
[2026-06-27 10:30:53,036.036 INFO    ] 200
[2026-06-27 10:30:53,037.037 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:30:53,071.071 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:30:53,073.073 INFO    ] No update needed
[2026-06-27 10:30:53,074.074 INFO    ] Checking for camera pi updates...
[2026-06-27 10:30:53,093.093 INFO    ] 200
[2026-06-27 10:30:53,095.095 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:30:53,120.120 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:30:53,157.157 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:30:53,158.158 INFO    ] No camera update needed
[2026-06-27 10:30:53,159.159 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:30:53,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:30:53,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:30:53,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:30:55,205.205 INFO    ] ================================================
[2026-06-27 10:30:55,221.221 INFO    ] Launching Daemon at Sat Jun 27 10:30:55 IST 2026
[2026-06-27 10:30:55,233.233 INFO    ] ================================================
[2026-06-27 10:30:55,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:30:55
[2026-06-27 10:30:55,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:30:56,019.019 INFO    ] Initializing speech engine...
[2026-06-27 10:30:56,029.029 INFO    ] 2026-06-27 10:30:56
[2026-06-27 10:30:56,233.233 INFO    ] 2026-06-27 10:30:56
[2026-06-27 10:30:56,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:30:56,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:30:56,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:30:56,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:30:56,655.655 INFO    ] time= 27/06/2026 10:30:56
[2026-06-27 10:30:56,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:30:56,684.684 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:30:56,751.751 INFO    ] No existing commands found in stream
[2026-06-27 10:31:01,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:31:01,761.761 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-27 10:31:02,850.850 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 10:31:02,852.852 INFO    ] Checking for system updates...
[2026-06-27 10:31:02,878.878 INFO    ] 200
[2026-06-27 10:31:02,880.880 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:31:02,914.914 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:31:02,915.915 INFO    ] No update needed
[2026-06-27 10:31:02,916.916 INFO    ] Checking for camera pi updates...
[2026-06-27 10:31:02,936.936 INFO    ] 200
[2026-06-27 10:31:02,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:31:02,961.961 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:31:03,000.000 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:31:03,002.002 INFO    ] No camera update needed
[2026-06-27 10:31:03,003.003 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:31:03,005.005 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:31:03,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:31:03,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:31:05,052.052 INFO    ] ================================================
[2026-06-27 10:31:05,069.069 INFO    ] Launching Daemon at Sat Jun 27 10:31:05 IST 2026
[2026-06-27 10:31:05,080.080 INFO    ] ================================================
[2026-06-27 10:31:05,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:31:05
[2026-06-27 10:31:05,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:31:05,969.969 INFO    ] Initializing speech engine...
[2026-06-27 10:31:05,974.974 INFO    ] 2026-06-27 10:31:05
[2026-06-27 10:31:06,182.182 INFO    ] 2026-06-27 10:31:06
[2026-06-27 10:31:06,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:31:06,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:31:06,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:31:06,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:31:06,623.623 INFO    ] time= 27/06/2026 10:31:06
[2026-06-27 10:31:06,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:31:06,631.631 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:31:06,698.698 INFO    ] No existing commands found in stream
[2026-06-27 10:31:11,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:31:11,717.717 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-27 10:31:12,224.224 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:31:12,225.225 INFO    ] Checking for system updates...
[2026-06-27 10:31:12,246.246 INFO    ] 200
[2026-06-27 10:31:12,248.248 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:31:12,282.282 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:31:12,283.283 INFO    ] No update needed
[2026-06-27 10:31:12,285.285 INFO    ] Checking for camera pi updates...
[2026-06-27 10:31:12,306.306 INFO    ] 200
[2026-06-27 10:31:12,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:31:12,332.332 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:31:12,379.379 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:31:12,380.380 INFO    ] No camera update needed
[2026-06-27 10:31:12,381.381 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:31:12,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:31:12,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:31:12,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:31:14,428.428 INFO    ] ================================================
[2026-06-27 10:31:14,443.443 INFO    ] Launching Daemon at Sat Jun 27 10:31:14 IST 2026
[2026-06-27 10:31:14,455.455 INFO    ] ================================================
[2026-06-27 10:31:14,804.804 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:31:14
[2026-06-27 10:31:15,121.121 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:31:15,261.261 INFO    ] Initializing speech engine...
[2026-06-27 10:31:15,272.272 INFO    ] 2026-06-27 10:31:15
[2026-06-27 10:31:15,479.479 INFO    ] 2026-06-27 10:31:15
[2026-06-27 10:31:15,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:31:15,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:31:15,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:31:15,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:31:15,905.905 INFO    ] time= 27/06/2026 10:31:15
[2026-06-27 10:31:15,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:31:15,931.931 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:31:15,998.998 INFO    ] No existing commands found in stream
[2026-06-27 10:31:21,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:31:21,009.009 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-27 10:31:24,597.597 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 10:31:24,599.599 INFO    ] Checking for system updates...
[2026-06-27 10:31:24,621.621 INFO    ] 200
[2026-06-27 10:31:24,622.622 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:31:24,653.653 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:31:24,654.654 INFO    ] No update needed
[2026-06-27 10:31:24,656.656 INFO    ] Checking for camera pi updates...
[2026-06-27 10:31:24,675.675 INFO    ] 200
[2026-06-27 10:31:24,676.676 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:31:24,700.700 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:31:24,742.742 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:31:24,744.744 INFO    ] No camera update needed
[2026-06-27 10:31:24,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:31:24,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:31:24,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:31:24,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:31:26,791.791 INFO    ] ================================================
[2026-06-27 10:31:26,806.806 INFO    ] Launching Daemon at Sat Jun 27 10:31:26 IST 2026
[2026-06-27 10:31:26,818.818 INFO    ] ================================================
[2026-06-27 10:31:27,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:31:27
[2026-06-27 10:31:27,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:31:27,606.606 INFO    ] Initializing speech engine...
[2026-06-27 10:31:27,617.617 INFO    ] 2026-06-27 10:31:27
[2026-06-27 10:31:27,822.822 INFO    ] 2026-06-27 10:31:27
[2026-06-27 10:31:27,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:31:28,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:31:28,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:31:28,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:31:28,240.240 INFO    ] time= 27/06/2026 10:31:28
[2026-06-27 10:31:28,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:31:28,270.270 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:31:28,337.337 INFO    ] No existing commands found in stream
[2026-06-27 10:31:33,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:31:33,349.349 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-27 10:31:34,139.139 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 10:31:34,141.141 INFO    ] Checking for system updates...
[2026-06-27 10:31:34,164.164 INFO    ] 200
[2026-06-27 10:31:34,166.166 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:31:34,197.197 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:31:34,198.198 INFO    ] No update needed
[2026-06-27 10:31:34,200.200 INFO    ] Checking for camera pi updates...
[2026-06-27 10:31:34,220.220 INFO    ] 200
[2026-06-27 10:31:34,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:31:34,248.248 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:31:34,289.289 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:31:34,291.291 INFO    ] No camera update needed
[2026-06-27 10:31:34,292.292 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:31:34,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:31:34,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:31:34,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:31:36,341.341 INFO    ] ================================================
[2026-06-27 10:31:36,357.357 INFO    ] Launching Daemon at Sat Jun 27 10:31:36 IST 2026
[2026-06-27 10:31:36,368.368 INFO    ] ================================================
[2026-06-27 10:31:36,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:31:36
[2026-06-27 10:31:37,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:31:37,267.267 INFO    ] Initializing speech engine...
[2026-06-27 10:31:37,268.268 INFO    ] 2026-06-27 10:31:37
[2026-06-27 10:31:37,487.487 INFO    ] 2026-06-27 10:31:37
[2026-06-27 10:31:37,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:31:37,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:31:37,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:31:37,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:31:37,918.918 INFO    ] time= 27/06/2026 10:31:37
[2026-06-27 10:31:37,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:31:37,948.948 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:31:38,040.040 INFO    ] No existing commands found in stream
[2026-06-27 10:31:43,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:31:43,058.058 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-27 10:31:46,437.437 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:31:46,439.439 INFO    ] Checking for system updates...
[2026-06-27 10:31:46,462.462 INFO    ] 200
[2026-06-27 10:31:46,463.463 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:31:46,502.502 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:31:46,504.504 INFO    ] No update needed
[2026-06-27 10:31:46,506.506 INFO    ] Checking for camera pi updates...
[2026-06-27 10:31:46,530.530 INFO    ] 200
[2026-06-27 10:31:46,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:31:46,560.560 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:31:46,598.598 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:31:46,600.600 INFO    ] No camera update needed
[2026-06-27 10:31:46,601.601 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:31:46,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:31:46,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:31:46,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:31:48,642.642 INFO    ] ================================================
[2026-06-27 10:31:48,651.651 INFO    ] Launching Daemon at Sat Jun 27 10:31:48 IST 2026
[2026-06-27 10:31:48,657.657 INFO    ] ================================================
[2026-06-27 10:31:48,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:31:48
[2026-06-27 10:31:49,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:31:49,414.414 INFO    ] Initializing speech engine...
[2026-06-27 10:31:49,419.419 INFO    ] 2026-06-27 10:31:49
[2026-06-27 10:31:49,625.625 INFO    ] 2026-06-27 10:31:49
[2026-06-27 10:31:49,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:31:49,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:31:49,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:31:50,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:31:50,052.052 INFO    ] time= 27/06/2026 10:31:50
[2026-06-27 10:31:50,075.075 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:31:50,081.081 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:31:50,148.148 INFO    ] No existing commands found in stream
[2026-06-27 10:31:55,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:31:55,161.161 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-27 10:31:58,309.309 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 10:31:58,310.310 INFO    ] Checking for system updates...
[2026-06-27 10:31:58,332.332 INFO    ] 200
[2026-06-27 10:31:58,333.333 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:31:58,367.367 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:31:58,368.368 INFO    ] No update needed
[2026-06-27 10:31:58,369.369 INFO    ] Checking for camera pi updates...
[2026-06-27 10:31:58,389.389 INFO    ] 200
[2026-06-27 10:31:58,391.391 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:31:58,416.416 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:31:58,449.449 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:31:58,451.451 INFO    ] No camera update needed
[2026-06-27 10:31:58,452.452 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:31:58,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:31:58,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:31:58,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:32:00,501.501 INFO    ] ================================================
[2026-06-27 10:32:00,518.518 INFO    ] Launching Daemon at Sat Jun 27 10:32:00 IST 2026
[2026-06-27 10:32:00,530.530 INFO    ] ================================================
[2026-06-27 10:32:00,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:32:00
[2026-06-27 10:32:01,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:32:01,323.323 INFO    ] Initializing speech engine...
[2026-06-27 10:32:01,336.336 INFO    ] 2026-06-27 10:32:01
[2026-06-27 10:32:01,547.547 INFO    ] 2026-06-27 10:32:01
[2026-06-27 10:32:01,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:32:01,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:32:01,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:32:01,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:32:01,975.975 INFO    ] time= 27/06/2026 10:32:01
[2026-06-27 10:32:01,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:32:01,995.995 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:32:02,064.064 INFO    ] No existing commands found in stream
[2026-06-27 10:32:07,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:32:07,076.076 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-27 10:32:10,175.175 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 10:32:10,176.176 INFO    ] Checking for system updates...
[2026-06-27 10:32:10,201.201 INFO    ] 200
[2026-06-27 10:32:10,203.203 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:32:10,261.261 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:32:10,263.263 INFO    ] No update needed
[2026-06-27 10:32:10,270.270 INFO    ] Checking for camera pi updates...
[2026-06-27 10:32:10,295.295 INFO    ] 200
[2026-06-27 10:32:10,297.297 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:32:10,321.321 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:32:10,360.360 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:32:10,361.361 INFO    ] No camera update needed
[2026-06-27 10:32:10,363.363 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:32:10,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:32:10,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:32:10,370.370 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:32:12,410.410 INFO    ] ================================================
[2026-06-27 10:32:12,426.426 INFO    ] Launching Daemon at Sat Jun 27 10:32:12 IST 2026
[2026-06-27 10:32:12,437.437 INFO    ] ================================================
[2026-06-27 10:32:12,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:32:12
[2026-06-27 10:32:13,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:32:13,280.280 INFO    ] Initializing speech engine...
[2026-06-27 10:32:13,284.284 INFO    ] 2026-06-27 10:32:13
[2026-06-27 10:32:13,479.479 INFO    ] 2026-06-27 10:32:13
[2026-06-27 10:32:13,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:32:13,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:32:13,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:32:13,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:32:13,986.986 INFO    ] time= 27/06/2026 10:32:13
[2026-06-27 10:32:14,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:32:14,019.019 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:32:14,120.120 INFO    ] No existing commands found in stream
[2026-06-27 10:32:19,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:32:19,132.132 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-27 10:32:23,245.245 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 10:32:23,247.247 INFO    ] Checking for system updates...
[2026-06-27 10:32:23,268.268 INFO    ] 200
[2026-06-27 10:32:23,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:32:23,304.304 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:32:23,305.305 INFO    ] No update needed
[2026-06-27 10:32:23,307.307 INFO    ] Checking for camera pi updates...
[2026-06-27 10:32:23,327.327 INFO    ] 200
[2026-06-27 10:32:23,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:32:23,353.353 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:32:23,477.477 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:32:23,478.478 INFO    ] No camera update needed
[2026-06-27 10:32:23,480.480 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:32:23,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:32:23,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:32:23,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:32:25,529.529 INFO    ] ================================================
[2026-06-27 10:32:25,545.545 INFO    ] Launching Daemon at Sat Jun 27 10:32:25 IST 2026
[2026-06-27 10:32:25,557.557 INFO    ] ================================================
[2026-06-27 10:32:25,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:32:25
[2026-06-27 10:32:26,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:32:26,429.429 INFO    ] Initializing speech engine...
[2026-06-27 10:32:26,435.435 INFO    ] 2026-06-27 10:32:26
[2026-06-27 10:32:26,646.646 INFO    ] 2026-06-27 10:32:26
[2026-06-27 10:32:26,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:32:26,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:32:26,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:32:27,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:32:27,088.088 INFO    ] time= 27/06/2026 10:32:27
[2026-06-27 10:32:27,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:32:27,095.095 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:32:27,162.162 INFO    ] No existing commands found in stream
[2026-06-27 10:32:32,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:32:32,189.189 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-27 10:32:34,184.184 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 10:32:34,186.186 INFO    ] Checking for system updates...
[2026-06-27 10:32:34,206.206 INFO    ] 200
[2026-06-27 10:32:34,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:32:34,238.238 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:32:34,240.240 INFO    ] No update needed
[2026-06-27 10:32:34,241.241 INFO    ] Checking for camera pi updates...
[2026-06-27 10:32:34,260.260 INFO    ] 200
[2026-06-27 10:32:34,262.262 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:32:34,287.287 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:32:34,336.336 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:32:34,338.338 INFO    ] No camera update needed
[2026-06-27 10:32:34,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:32:34,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:32:34,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:32:34,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:32:36,386.386 INFO    ] ================================================
[2026-06-27 10:32:36,402.402 INFO    ] Launching Daemon at Sat Jun 27 10:32:36 IST 2026
[2026-06-27 10:32:36,412.412 INFO    ] ================================================
[2026-06-27 10:32:36,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:32:36
[2026-06-27 10:32:37,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:32:37,203.203 INFO    ] Initializing speech engine...
[2026-06-27 10:32:37,207.207 INFO    ] 2026-06-27 10:32:37
[2026-06-27 10:32:37,425.425 INFO    ] 2026-06-27 10:32:37
[2026-06-27 10:32:37,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:32:37,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:32:37,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:32:37,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:32:37,843.843 INFO    ] time= 27/06/2026 10:32:37
[2026-06-27 10:32:37,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:32:37,870.870 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:32:37,937.937 INFO    ] No existing commands found in stream
[2026-06-27 10:32:42,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:32:42,948.948 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-27 10:32:45,438.438 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 10:32:45,440.440 INFO    ] Checking for system updates...
[2026-06-27 10:32:45,463.463 INFO    ] 200
[2026-06-27 10:32:45,464.464 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:32:45,497.497 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:32:45,499.499 INFO    ] No update needed
[2026-06-27 10:32:45,500.500 INFO    ] Checking for camera pi updates...
[2026-06-27 10:32:45,519.519 INFO    ] 200
[2026-06-27 10:32:45,521.521 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:32:45,544.544 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:32:45,593.593 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:32:45,595.595 INFO    ] No camera update needed
[2026-06-27 10:32:45,596.596 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:32:45,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:32:45,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:32:45,603.603 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:32:47,644.644 INFO    ] ================================================
[2026-06-27 10:32:47,660.660 INFO    ] Launching Daemon at Sat Jun 27 10:32:47 IST 2026
[2026-06-27 10:32:47,671.671 INFO    ] ================================================
[2026-06-27 10:32:48,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:32:48
[2026-06-27 10:32:48,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:32:48,478.478 INFO    ] Initializing speech engine...
[2026-06-27 10:32:48,488.488 INFO    ] 2026-06-27 10:32:48
[2026-06-27 10:32:48,692.692 INFO    ] 2026-06-27 10:32:48
[2026-06-27 10:32:48,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:32:48,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:32:48,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:32:49,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:32:49,110.110 INFO    ] time= 27/06/2026 10:32:49
[2026-06-27 10:32:49,133.133 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:32:49,139.139 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:32:49,206.206 INFO    ] No existing commands found in stream
[2026-06-27 10:32:54,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:32:54,223.223 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-27 10:32:58,514.514 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 10:32:58,516.516 INFO    ] Checking for system updates...
[2026-06-27 10:32:58,537.537 INFO    ] 200
[2026-06-27 10:32:58,539.539 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:32:58,569.569 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:32:58,571.571 INFO    ] No update needed
[2026-06-27 10:32:58,572.572 INFO    ] Checking for camera pi updates...
[2026-06-27 10:32:58,593.593 INFO    ] 200
[2026-06-27 10:32:58,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:32:58,620.620 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:32:58,661.661 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:32:58,663.663 INFO    ] No camera update needed
[2026-06-27 10:32:58,665.665 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:32:58,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:32:58,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:32:58,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:33:00,706.706 INFO    ] ================================================
[2026-06-27 10:33:00,715.715 INFO    ] Launching Daemon at Sat Jun 27 10:33:00 IST 2026
[2026-06-27 10:33:00,721.721 INFO    ] ================================================
[2026-06-27 10:33:01,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:33:01
[2026-06-27 10:33:01,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:33:01,526.526 INFO    ] Initializing speech engine...
[2026-06-27 10:33:01,532.532 INFO    ] 2026-06-27 10:33:01
[2026-06-27 10:33:01,802.802 INFO    ] 2026-06-27 10:33:01
[2026-06-27 10:33:01,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:33:01,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:33:01,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:33:02,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:33:02,160.160 INFO    ] time= 27/06/2026 10:33:02
[2026-06-27 10:33:02,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:33:02,244.244 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:33:02,361.361 INFO    ] No existing commands found in stream
[2026-06-27 10:33:07,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:33:07,400.400 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-27 10:33:09,110.110 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 10:33:09,111.111 INFO    ] Checking for system updates...
[2026-06-27 10:33:09,134.134 INFO    ] 200
[2026-06-27 10:33:09,135.135 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:33:09,166.166 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:33:09,167.167 INFO    ] No update needed
[2026-06-27 10:33:09,168.168 INFO    ] Checking for camera pi updates...
[2026-06-27 10:33:09,189.189 INFO    ] 200
[2026-06-27 10:33:09,191.191 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:33:09,216.216 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:33:09,255.255 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:33:09,256.256 INFO    ] No camera update needed
[2026-06-27 10:33:09,258.258 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:33:09,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:33:09,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:33:09,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:33:11,306.306 INFO    ] ================================================
[2026-06-27 10:33:11,322.322 INFO    ] Launching Daemon at Sat Jun 27 10:33:11 IST 2026
[2026-06-27 10:33:11,333.333 INFO    ] ================================================
[2026-06-27 10:33:11,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:33:11
[2026-06-27 10:33:12,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:33:12,164.164 INFO    ] Initializing speech engine...
[2026-06-27 10:33:12,169.169 INFO    ] 2026-06-27 10:33:12
[2026-06-27 10:33:12,374.374 INFO    ] 2026-06-27 10:33:12
[2026-06-27 10:33:12,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:33:12,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:33:12,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:33:12,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:33:12,811.811 INFO    ] time= 27/06/2026 10:33:12
[2026-06-27 10:33:12,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:33:12,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:33:12,886.886 INFO    ] No existing commands found in stream
[2026-06-27 10:33:17,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:33:17,897.897 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-27 10:33:21,478.478 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 10:33:21,480.480 INFO    ] Checking for system updates...
[2026-06-27 10:33:21,502.502 INFO    ] 200
[2026-06-27 10:33:21,503.503 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:33:21,538.538 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:33:21,540.540 INFO    ] No update needed
[2026-06-27 10:33:21,541.541 INFO    ] Checking for camera pi updates...
[2026-06-27 10:33:21,562.562 INFO    ] 200
[2026-06-27 10:33:21,563.563 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:33:21,587.587 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:33:21,626.626 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:33:21,628.628 INFO    ] No camera update needed
[2026-06-27 10:33:21,629.629 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:33:21,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:33:21,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:33:21,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:33:23,677.677 INFO    ] ================================================
[2026-06-27 10:33:23,693.693 INFO    ] Launching Daemon at Sat Jun 27 10:33:23 IST 2026
[2026-06-27 10:33:23,705.705 INFO    ] ================================================
[2026-06-27 10:33:24,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:33:24
[2026-06-27 10:33:24,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:33:24,513.513 INFO    ] Initializing speech engine...
[2026-06-27 10:33:24,518.518 INFO    ] 2026-06-27 10:33:24
[2026-06-27 10:33:24,723.723 INFO    ] 2026-06-27 10:33:24
[2026-06-27 10:33:24,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:33:24,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:33:24,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:33:25,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:33:25,160.160 INFO    ] time= 27/06/2026 10:33:25
[2026-06-27 10:33:25,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:33:25,167.167 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:33:25,234.234 INFO    ] No existing commands found in stream
[2026-06-27 10:33:30,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:33:30,250.250 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-27 10:33:33,290.290 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 10:33:33,293.293 INFO    ] Checking for system updates...
[2026-06-27 10:33:33,337.337 INFO    ] 200
[2026-06-27 10:33:33,339.339 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:33:33,394.394 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:33:33,396.396 INFO    ] No update needed
[2026-06-27 10:33:33,398.398 INFO    ] Checking for camera pi updates...
[2026-06-27 10:33:33,432.432 INFO    ] 200
[2026-06-27 10:33:33,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:33:33,458.458 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:33:33,496.496 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:33:33,498.498 INFO    ] No camera update needed
[2026-06-27 10:33:33,499.499 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:33:33,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:33:33,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:33:33,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:33:35,549.549 INFO    ] ================================================
[2026-06-27 10:33:35,565.565 INFO    ] Launching Daemon at Sat Jun 27 10:33:35 IST 2026
[2026-06-27 10:33:35,576.576 INFO    ] ================================================
[2026-06-27 10:33:35,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:33:35
[2026-06-27 10:33:36,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:33:36,398.398 INFO    ] Initializing speech engine...
[2026-06-27 10:33:36,403.403 INFO    ] 2026-06-27 10:33:36
[2026-06-27 10:33:36,621.621 INFO    ] 2026-06-27 10:33:36
[2026-06-27 10:33:36,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:33:36,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:33:36,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:33:37,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:33:37,068.068 INFO    ] time= 27/06/2026 10:33:37
[2026-06-27 10:33:37,075.075 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:33:37,076.076 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:33:37,143.143 INFO    ] No existing commands found in stream
[2026-06-27 10:33:42,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:33:42,156.156 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-27 10:33:46,248.248 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 10:33:46,249.249 INFO    ] Checking for system updates...
[2026-06-27 10:33:46,272.272 INFO    ] 200
[2026-06-27 10:33:46,273.273 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:33:46,307.307 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:33:46,308.308 INFO    ] No update needed
[2026-06-27 10:33:46,309.309 INFO    ] Checking for camera pi updates...
[2026-06-27 10:33:46,329.329 INFO    ] 200
[2026-06-27 10:33:46,331.331 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:33:46,355.355 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:33:46,401.401 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:33:46,403.403 INFO    ] No camera update needed
[2026-06-27 10:33:46,404.404 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:33:46,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:33:46,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:33:46,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:33:48,454.454 INFO    ] ================================================
[2026-06-27 10:33:48,470.470 INFO    ] Launching Daemon at Sat Jun 27 10:33:48 IST 2026
[2026-06-27 10:33:48,481.481 INFO    ] ================================================
[2026-06-27 10:33:48,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:33:48
[2026-06-27 10:33:49,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:33:49,287.287 INFO    ] Initializing speech engine...
[2026-06-27 10:33:49,292.292 INFO    ] 2026-06-27 10:33:49
[2026-06-27 10:33:49,502.502 INFO    ] 2026-06-27 10:33:49
[2026-06-27 10:33:49,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:33:49,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:33:49,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:33:49,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:33:49,937.937 INFO    ] time= 27/06/2026 10:33:49
[2026-06-27 10:33:49,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:33:49,996.996 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:33:50,074.074 INFO    ] No existing commands found in stream
[2026-06-27 10:33:55,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:33:55,087.087 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-27 10:33:56,101.101 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 10:33:56,102.102 INFO    ] Checking for system updates...
[2026-06-27 10:33:56,123.123 INFO    ] 200
[2026-06-27 10:33:56,125.125 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:33:56,156.156 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:33:56,158.158 INFO    ] No update needed
[2026-06-27 10:33:56,159.159 INFO    ] Checking for camera pi updates...
[2026-06-27 10:33:56,180.180 INFO    ] 200
[2026-06-27 10:33:56,182.182 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:33:56,208.208 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:33:56,242.242 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:33:56,243.243 INFO    ] No camera update needed
[2026-06-27 10:33:56,245.245 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:33:56,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:33:56,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:33:56,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:33:58,293.293 INFO    ] ================================================
[2026-06-27 10:33:58,308.308 INFO    ] Launching Daemon at Sat Jun 27 10:33:58 IST 2026
[2026-06-27 10:33:58,319.319 INFO    ] ================================================
[2026-06-27 10:33:58,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:33:58
[2026-06-27 10:33:59,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:33:59,178.178 INFO    ] Initializing speech engine...
[2026-06-27 10:33:59,184.184 INFO    ] 2026-06-27 10:33:59
[2026-06-27 10:33:59,397.397 INFO    ] 2026-06-27 10:33:59
[2026-06-27 10:33:59,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:33:59,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:33:59,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:33:59,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:33:59,845.845 INFO    ] time= 27/06/2026 10:33:59
[2026-06-27 10:33:59,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:33:59,853.853 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:33:59,921.921 INFO    ] No existing commands found in stream
[2026-06-27 10:34:04,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:34:04,939.939 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-27 10:34:07,970.970 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:34:07,972.972 INFO    ] Checking for system updates...
[2026-06-27 10:34:07,992.992 INFO    ] 200
[2026-06-27 10:34:07,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:34:08,024.024 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:34:08,026.026 INFO    ] No update needed
[2026-06-27 10:34:08,027.027 INFO    ] Checking for camera pi updates...
[2026-06-27 10:34:08,048.048 INFO    ] 200
[2026-06-27 10:34:08,049.049 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:34:08,072.072 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:34:08,119.119 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:34:08,121.121 INFO    ] No camera update needed
[2026-06-27 10:34:08,122.122 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:34:08,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:34:08,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:34:08,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:34:10,167.167 INFO    ] ================================================
[2026-06-27 10:34:10,183.183 INFO    ] Launching Daemon at Sat Jun 27 10:34:10 IST 2026
[2026-06-27 10:34:10,194.194 INFO    ] ================================================
[2026-06-27 10:34:10,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:34:10
[2026-06-27 10:34:10,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:34:11,030.030 INFO    ] Initializing speech engine...
[2026-06-27 10:34:11,034.034 INFO    ] 2026-06-27 10:34:11
[2026-06-27 10:34:11,254.254 INFO    ] 2026-06-27 10:34:11
[2026-06-27 10:34:11,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:34:11,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:34:11,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:34:11,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:34:11,680.680 INFO    ] time= 27/06/2026 10:34:11
[2026-06-27 10:34:11,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:34:11,707.707 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:34:11,776.776 INFO    ] No existing commands found in stream
[2026-06-27 10:34:16,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:34:16,787.787 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-27 10:34:21,131.131 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:34:21,132.132 INFO    ] Checking for system updates...
[2026-06-27 10:34:21,154.154 INFO    ] 200
[2026-06-27 10:34:21,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:34:21,186.186 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:34:21,187.187 INFO    ] No update needed
[2026-06-27 10:34:21,189.189 INFO    ] Checking for camera pi updates...
[2026-06-27 10:34:21,208.208 INFO    ] 200
[2026-06-27 10:34:21,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:34:21,233.233 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:34:21,275.275 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:34:21,277.277 INFO    ] No camera update needed
[2026-06-27 10:34:21,278.278 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:34:21,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:34:21,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:34:21,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:34:23,324.324 INFO    ] ================================================
[2026-06-27 10:34:23,340.340 INFO    ] Launching Daemon at Sat Jun 27 10:34:23 IST 2026
[2026-06-27 10:34:23,352.352 INFO    ] ================================================
[2026-06-27 10:34:23,726.726 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:34:23
[2026-06-27 10:34:24,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:34:24,199.199 INFO    ] Initializing speech engine...
[2026-06-27 10:34:24,213.213 INFO    ] 2026-06-27 10:34:24
[2026-06-27 10:34:24,432.432 INFO    ] 2026-06-27 10:34:24
[2026-06-27 10:34:24,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:34:24,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:34:24,667.667 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:34:24,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:34:24,874.874 INFO    ] time= 27/06/2026 10:34:24
[2026-06-27 10:34:24,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:34:24,915.915 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:34:25,018.018 INFO    ] No existing commands found in stream
[2026-06-27 10:34:30,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:34:30,030.030 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-27 10:34:31,773.773 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:34:31,775.775 INFO    ] Checking for system updates...
[2026-06-27 10:34:31,795.795 INFO    ] 200
[2026-06-27 10:34:31,797.797 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:34:31,827.827 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:34:31,829.829 INFO    ] No update needed
[2026-06-27 10:34:31,830.830 INFO    ] Checking for camera pi updates...
[2026-06-27 10:34:31,853.853 INFO    ] 200
[2026-06-27 10:34:31,854.854 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:34:31,877.877 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:34:32,018.018 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:34:32,019.019 INFO    ] No camera update needed
[2026-06-27 10:34:32,021.021 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:34:32,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:34:32,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:34:32,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:34:34,067.067 INFO    ] ================================================
[2026-06-27 10:34:34,083.083 INFO    ] Launching Daemon at Sat Jun 27 10:34:34 IST 2026
[2026-06-27 10:34:34,096.096 INFO    ] ================================================
[2026-06-27 10:34:34,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:34:34
[2026-06-27 10:34:34,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:34:34,911.911 INFO    ] Initializing speech engine...
[2026-06-27 10:34:34,923.923 INFO    ] 2026-06-27 10:34:34
[2026-06-27 10:34:35,133.133 INFO    ] 2026-06-27 10:34:35
[2026-06-27 10:34:35,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:34:36,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:34:36,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:34:36,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:34:36,526.526 INFO    ] time= 27/06/2026 10:34:36
[2026-06-27 10:34:36,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:34:36,544.544 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:34:36,607.607 INFO    ] No existing commands found in stream
[2026-06-27 10:34:41,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:34:41,618.618 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-27 10:34:45,425.425 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:34:45,426.426 INFO    ] Checking for system updates...
[2026-06-27 10:34:45,448.448 INFO    ] 200
[2026-06-27 10:34:45,449.449 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:34:45,480.480 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:34:45,481.481 INFO    ] No update needed
[2026-06-27 10:34:45,483.483 INFO    ] Checking for camera pi updates...
[2026-06-27 10:34:45,503.503 INFO    ] 200
[2026-06-27 10:34:45,505.505 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:34:45,529.529 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:34:45,563.563 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:34:45,564.564 INFO    ] No camera update needed
[2026-06-27 10:34:45,566.566 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:34:45,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:34:45,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:34:45,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:34:47,615.615 INFO    ] ================================================
[2026-06-27 10:34:47,630.630 INFO    ] Launching Daemon at Sat Jun 27 10:34:47 IST 2026
[2026-06-27 10:34:47,642.642 INFO    ] ================================================
[2026-06-27 10:34:47,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:34:47
[2026-06-27 10:34:48,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:34:48,447.447 INFO    ] Initializing speech engine...
[2026-06-27 10:34:48,453.453 INFO    ] 2026-06-27 10:34:48
[2026-06-27 10:34:48,658.658 INFO    ] 2026-06-27 10:34:48
[2026-06-27 10:34:48,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:34:48,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:34:48,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:34:49,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:34:49,098.098 INFO    ] time= 27/06/2026 10:34:49
[2026-06-27 10:34:49,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:34:49,105.105 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:34:49,173.173 INFO    ] No existing commands found in stream
[2026-06-27 10:34:54,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:34:54,185.185 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-27 10:34:57,096.096 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 10:34:57,098.098 INFO    ] Checking for system updates...
[2026-06-27 10:34:57,119.119 INFO    ] 200
[2026-06-27 10:34:57,120.120 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:34:57,151.151 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:34:57,153.153 INFO    ] No update needed
[2026-06-27 10:34:57,154.154 INFO    ] Checking for camera pi updates...
[2026-06-27 10:34:57,175.175 INFO    ] 200
[2026-06-27 10:34:57,177.177 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:34:57,203.203 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:34:57,245.245 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:34:57,246.246 INFO    ] No camera update needed
[2026-06-27 10:34:57,248.248 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:34:57,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:34:57,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:34:57,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:34:59,299.299 INFO    ] ================================================
[2026-06-27 10:34:59,314.314 INFO    ] Launching Daemon at Sat Jun 27 10:34:59 IST 2026
[2026-06-27 10:34:59,326.326 INFO    ] ================================================
[2026-06-27 10:34:59,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:34:59
[2026-06-27 10:35:00,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:35:00,177.177 INFO    ] Initializing speech engine...
[2026-06-27 10:35:00,190.190 INFO    ] 2026-06-27 10:35:00
[2026-06-27 10:35:00,402.402 INFO    ] 2026-06-27 10:35:00
[2026-06-27 10:35:00,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:35:00,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:35:00,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:35:00,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:35:00,862.862 INFO    ] time= 27/06/2026 10:35:00
[2026-06-27 10:35:00,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:35:00,883.883 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:35:00,974.974 INFO    ] No existing commands found in stream
[2026-06-27 10:35:05,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:35:05,989.989 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-27 10:35:06,910.910 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:35:06,911.911 INFO    ] Checking for system updates...
[2026-06-27 10:35:06,933.933 INFO    ] 200
[2026-06-27 10:35:06,935.935 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:35:06,966.966 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:35:06,968.968 INFO    ] No update needed
[2026-06-27 10:35:06,969.969 INFO    ] Checking for camera pi updates...
[2026-06-27 10:35:06,989.989 INFO    ] 200
[2026-06-27 10:35:06,990.990 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:35:07,015.015 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:35:07,055.055 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:35:07,056.056 INFO    ] No camera update needed
[2026-06-27 10:35:07,058.058 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:35:07,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:35:07,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:35:07,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:35:09,106.106 INFO    ] ================================================
[2026-06-27 10:35:09,122.122 INFO    ] Launching Daemon at Sat Jun 27 10:35:09 IST 2026
[2026-06-27 10:35:09,133.133 INFO    ] ================================================
[2026-06-27 10:35:09,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:35:09
[2026-06-27 10:35:09,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:35:09,990.990 INFO    ] Initializing speech engine...
[2026-06-27 10:35:09,994.994 INFO    ] 2026-06-27 10:35:09
[2026-06-27 10:35:10,210.210 INFO    ] 2026-06-27 10:35:10
[2026-06-27 10:35:10,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:35:10,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:35:10,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:35:10,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:35:10,686.686 INFO    ] time= 27/06/2026 10:35:10
[2026-06-27 10:35:10,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:35:10,716.716 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:35:10,788.788 INFO    ] No existing commands found in stream
[2026-06-27 10:35:15,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:35:15,830.830 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-27 10:35:16,757.757 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 10:35:16,758.758 INFO    ] Checking for system updates...
[2026-06-27 10:35:16,782.782 INFO    ] 200
[2026-06-27 10:35:16,784.784 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:35:16,818.818 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:35:16,820.820 INFO    ] No update needed
[2026-06-27 10:35:16,821.821 INFO    ] Checking for camera pi updates...
[2026-06-27 10:35:16,845.845 INFO    ] 200
[2026-06-27 10:35:16,847.847 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:35:16,874.874 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:35:16,919.919 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:35:16,921.921 INFO    ] No camera update needed
[2026-06-27 10:35:16,922.922 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:35:16,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:35:16,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:35:16,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:35:18,972.972 INFO    ] ================================================
[2026-06-27 10:35:18,987.987 INFO    ] Launching Daemon at Sat Jun 27 10:35:18 IST 2026
[2026-06-27 10:35:19,998.998 INFO    ] ================================================
[2026-06-27 10:35:19,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:35:19
[2026-06-27 10:35:19,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:35:19,830.830 INFO    ] Initializing speech engine...
[2026-06-27 10:35:19,837.837 INFO    ] 2026-06-27 10:35:19
[2026-06-27 10:35:20,046.046 INFO    ] 2026-06-27 10:35:20
[2026-06-27 10:35:20,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:35:20,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:35:20,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:35:20,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:35:20,488.488 INFO    ] time= 27/06/2026 10:35:20
[2026-06-27 10:35:20,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:35:20,495.495 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:35:20,563.563 INFO    ] No existing commands found in stream
[2026-06-27 10:35:25,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:35:25,581.581 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-27 10:35:27,947.947 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:35:27,949.949 INFO    ] Checking for system updates...
[2026-06-27 10:35:27,970.970 INFO    ] 200
[2026-06-27 10:35:27,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:35:28,003.003 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:35:28,005.005 INFO    ] No update needed
[2026-06-27 10:35:28,006.006 INFO    ] Checking for camera pi updates...
[2026-06-27 10:35:28,026.026 INFO    ] 200
[2026-06-27 10:35:28,028.028 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:35:28,052.052 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:35:28,098.098 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:35:28,100.100 INFO    ] No camera update needed
[2026-06-27 10:35:28,101.101 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:35:28,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:35:28,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:35:28,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:35:30,147.147 INFO    ] ================================================
[2026-06-27 10:35:30,163.163 INFO    ] Launching Daemon at Sat Jun 27 10:35:30 IST 2026
[2026-06-27 10:35:30,174.174 INFO    ] ================================================
[2026-06-27 10:35:30,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:35:30
[2026-06-27 10:35:30,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:35:30,977.977 INFO    ] Initializing speech engine...
[2026-06-27 10:35:30,990.990 INFO    ] 2026-06-27 10:35:30
[2026-06-27 10:35:31,201.201 INFO    ] 2026-06-27 10:35:31
[2026-06-27 10:35:31,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:35:31,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:35:31,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:35:31,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:35:31,660.660 INFO    ] time= 27/06/2026 10:35:31
[2026-06-27 10:35:31,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:35:31,684.684 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:35:31,756.756 INFO    ] No existing commands found in stream
[2026-06-27 10:35:36,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:35:36,768.768 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-27 10:35:38,909.909 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:35:38,910.910 INFO    ] Checking for system updates...
[2026-06-27 10:35:38,931.931 INFO    ] 200
[2026-06-27 10:35:38,932.932 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:35:38,963.963 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:35:38,965.965 INFO    ] No update needed
[2026-06-27 10:35:38,966.966 INFO    ] Checking for camera pi updates...
[2026-06-27 10:35:38,986.986 INFO    ] 200
[2026-06-27 10:35:38,987.987 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:35:39,011.011 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:35:39,047.047 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:35:39,049.049 INFO    ] No camera update needed
[2026-06-27 10:35:39,050.050 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:35:39,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:35:39,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:35:39,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:35:41,098.098 INFO    ] ================================================
[2026-06-27 10:35:41,114.114 INFO    ] Launching Daemon at Sat Jun 27 10:35:41 IST 2026
[2026-06-27 10:35:41,125.125 INFO    ] ================================================
[2026-06-27 10:35:41,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:35:41
[2026-06-27 10:35:41,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:35:41,959.959 INFO    ] Initializing speech engine...
[2026-06-27 10:35:41,969.969 INFO    ] 2026-06-27 10:35:41
[2026-06-27 10:35:42,178.178 INFO    ] 2026-06-27 10:35:42
[2026-06-27 10:35:42,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:35:42,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:35:42,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:35:42,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:35:42,619.619 INFO    ] time= 27/06/2026 10:35:42
[2026-06-27 10:35:42,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:35:42,672.672 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:35:42,790.790 INFO    ] No existing commands found in stream
[2026-06-27 10:35:47,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:35:47,803.803 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-27 10:35:50,380.380 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 10:35:50,382.382 INFO    ] Checking for system updates...
[2026-06-27 10:35:50,404.404 INFO    ] 200
[2026-06-27 10:35:50,405.405 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:35:50,438.438 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:35:50,440.440 INFO    ] No update needed
[2026-06-27 10:35:50,441.441 INFO    ] Checking for camera pi updates...
[2026-06-27 10:35:50,462.462 INFO    ] 200
[2026-06-27 10:35:50,463.463 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:35:50,488.488 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:35:50,522.522 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:35:50,525.525 INFO    ] No camera update needed
[2026-06-27 10:35:50,526.526 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:35:50,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:35:50,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:35:50,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:35:52,572.572 INFO    ] ================================================
[2026-06-27 10:35:52,588.588 INFO    ] Launching Daemon at Sat Jun 27 10:35:52 IST 2026
[2026-06-27 10:35:52,599.599 INFO    ] ================================================
[2026-06-27 10:35:52,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:35:52
[2026-06-27 10:35:53,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:35:53,384.384 INFO    ] Initializing speech engine...
[2026-06-27 10:35:53,396.396 INFO    ] 2026-06-27 10:35:53
[2026-06-27 10:35:53,604.604 INFO    ] 2026-06-27 10:35:53
[2026-06-27 10:35:53,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:35:53,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:35:53,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:35:54,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:35:54,044.044 INFO    ] time= 27/06/2026 10:35:54
[2026-06-27 10:35:54,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:35:54,051.051 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:35:54,116.116 INFO    ] No existing commands found in stream
[2026-06-27 10:35:59,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:35:59,129.129 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-27 10:36:00,382.382 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 10:36:00,384.384 INFO    ] Checking for system updates...
[2026-06-27 10:36:00,406.406 INFO    ] 200
[2026-06-27 10:36:00,408.408 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:36:00,439.439 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:36:00,440.440 INFO    ] No update needed
[2026-06-27 10:36:00,441.441 INFO    ] Checking for camera pi updates...
[2026-06-27 10:36:00,464.464 INFO    ] 200
[2026-06-27 10:36:00,465.465 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:36:00,491.491 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:36:00,529.529 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:36:00,530.530 INFO    ] No camera update needed
[2026-06-27 10:36:00,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:36:00,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:36:00,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:36:00,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:36:02,577.577 INFO    ] ================================================
[2026-06-27 10:36:02,588.588 INFO    ] Launching Daemon at Sat Jun 27 10:36:02 IST 2026
[2026-06-27 10:36:02,600.600 INFO    ] ================================================
[2026-06-27 10:36:02,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:36:02
[2026-06-27 10:36:03,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:36:03,403.403 INFO    ] Initializing speech engine...
[2026-06-27 10:36:03,412.412 INFO    ] 2026-06-27 10:36:03
[2026-06-27 10:36:03,618.618 INFO    ] 2026-06-27 10:36:03
[2026-06-27 10:36:03,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:36:03,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:36:03,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:36:04,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:36:04,062.062 INFO    ] time= 27/06/2026 10:36:04
[2026-06-27 10:36:04,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:36:04,070.070 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:36:04,136.136 INFO    ] No existing commands found in stream
[2026-06-27 10:36:09,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:36:09,150.150 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-27 10:36:09,920.920 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 10:36:09,922.922 INFO    ] Checking for system updates...
[2026-06-27 10:36:09,943.943 INFO    ] 200
[2026-06-27 10:36:09,944.944 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:36:09,977.977 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:36:09,979.979 INFO    ] No update needed
[2026-06-27 10:36:09,980.980 INFO    ] Checking for camera pi updates...
[2026-06-27 10:36:10,001.001 INFO    ] 200
[2026-06-27 10:36:10,002.002 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:36:10,027.027 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:36:10,064.064 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:36:10,065.065 INFO    ] No camera update needed
[2026-06-27 10:36:10,067.067 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:36:10,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:36:10,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:36:10,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:36:12,113.113 INFO    ] ================================================
[2026-06-27 10:36:12,128.128 INFO    ] Launching Daemon at Sat Jun 27 10:36:12 IST 2026
[2026-06-27 10:36:12,139.139 INFO    ] ================================================
[2026-06-27 10:36:12,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:36:12
[2026-06-27 10:36:12,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:36:12,970.970 INFO    ] Initializing speech engine...
[2026-06-27 10:36:12,979.979 INFO    ] 2026-06-27 10:36:12
[2026-06-27 10:36:13,185.185 INFO    ] 2026-06-27 10:36:13
[2026-06-27 10:36:13,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:36:13,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:36:13,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:36:13,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:36:13,620.620 INFO    ] time= 27/06/2026 10:36:13
[2026-06-27 10:36:13,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:36:13,631.631 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:36:13,699.699 INFO    ] No existing commands found in stream
[2026-06-27 10:36:18,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:36:18,709.709 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-27 10:36:23,017.017 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:36:23,019.019 INFO    ] Checking for system updates...
[2026-06-27 10:36:23,041.041 INFO    ] 200
[2026-06-27 10:36:23,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:36:23,074.074 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:36:23,075.075 INFO    ] No update needed
[2026-06-27 10:36:23,077.077 INFO    ] Checking for camera pi updates...
[2026-06-27 10:36:23,097.097 INFO    ] 200
[2026-06-27 10:36:23,098.098 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:36:23,121.121 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:36:23,158.158 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:36:23,159.159 INFO    ] No camera update needed
[2026-06-27 10:36:23,161.161 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:36:23,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:36:23,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:36:23,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:36:25,209.209 INFO    ] ================================================
[2026-06-27 10:36:25,224.224 INFO    ] Launching Daemon at Sat Jun 27 10:36:25 IST 2026
[2026-06-27 10:36:25,235.235 INFO    ] ================================================
[2026-06-27 10:36:25,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:36:25
[2026-06-27 10:36:25,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:36:26,111.111 INFO    ] Initializing speech engine...
[2026-06-27 10:36:26,117.117 INFO    ] 2026-06-27 10:36:26
[2026-06-27 10:36:26,326.326 INFO    ] 2026-06-27 10:36:26
[2026-06-27 10:36:26,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:36:26,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:36:26,549.549 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:36:26,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:36:26,768.768 INFO    ] time= 27/06/2026 10:36:26
[2026-06-27 10:36:26,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:36:26,775.775 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:36:26,842.842 INFO    ] No existing commands found in stream
[2026-06-27 10:36:31,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:36:31,861.861 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-27 10:36:34,019.019 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 10:36:34,021.021 INFO    ] Checking for system updates...
[2026-06-27 10:36:34,043.043 INFO    ] 200
[2026-06-27 10:36:34,045.045 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:36:34,077.077 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:36:34,079.079 INFO    ] No update needed
[2026-06-27 10:36:34,080.080 INFO    ] Checking for camera pi updates...
[2026-06-27 10:36:34,099.099 INFO    ] 200
[2026-06-27 10:36:34,101.101 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:36:34,125.125 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:36:34,268.268 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:36:34,269.269 INFO    ] No camera update needed
[2026-06-27 10:36:34,271.271 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:36:34,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:36:34,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:36:34,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:36:36,317.317 INFO    ] ================================================
[2026-06-27 10:36:36,333.333 INFO    ] Launching Daemon at Sat Jun 27 10:36:36 IST 2026
[2026-06-27 10:36:36,344.344 INFO    ] ================================================
[2026-06-27 10:36:36,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:36:36
[2026-06-27 10:36:37,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:36:37,191.191 INFO    ] Initializing speech engine...
[2026-06-27 10:36:37,201.201 INFO    ] 2026-06-27 10:36:37
[2026-06-27 10:36:37,409.409 INFO    ] 2026-06-27 10:36:37
[2026-06-27 10:36:37,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:36:37,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:36:37,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:36:37,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:36:37,828.828 INFO    ] time= 27/06/2026 10:36:37
[2026-06-27 10:36:37,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:36:37,857.857 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:36:37,924.924 INFO    ] No existing commands found in stream
[2026-06-27 10:36:42,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:36:42,952.952 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-27 10:36:44,538.538 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:36:44,539.539 INFO    ] Checking for system updates...
[2026-06-27 10:36:44,562.562 INFO    ] 200
[2026-06-27 10:36:44,563.563 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:36:44,599.599 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:36:44,600.600 INFO    ] No update needed
[2026-06-27 10:36:44,602.602 INFO    ] Checking for camera pi updates...
[2026-06-27 10:36:44,622.622 INFO    ] 200
[2026-06-27 10:36:44,624.624 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:36:44,648.648 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:36:44,699.699 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:36:44,700.700 INFO    ] No camera update needed
[2026-06-27 10:36:44,701.701 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:36:44,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:36:44,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:36:44,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:36:46,747.747 INFO    ] ================================================
[2026-06-27 10:36:46,763.763 INFO    ] Launching Daemon at Sat Jun 27 10:36:46 IST 2026
[2026-06-27 10:36:46,774.774 INFO    ] ================================================
[2026-06-27 10:36:47,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:36:47
[2026-06-27 10:36:47,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:36:47,551.551 INFO    ] Initializing speech engine...
[2026-06-27 10:36:47,555.555 INFO    ] 2026-06-27 10:36:47
[2026-06-27 10:36:47,777.777 INFO    ] 2026-06-27 10:36:47
[2026-06-27 10:36:47,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:36:47,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:36:48,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:36:48,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:36:48,203.203 INFO    ] time= 27/06/2026 10:36:48
[2026-06-27 10:36:48,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:36:48,231.231 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:36:48,298.298 INFO    ] No existing commands found in stream
[2026-06-27 10:36:53,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:36:53,311.311 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-27 10:36:54,586.586 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:36:54,587.587 INFO    ] Checking for system updates...
[2026-06-27 10:36:54,609.609 INFO    ] 200
[2026-06-27 10:36:54,610.610 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:36:54,642.642 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:36:54,643.643 INFO    ] No update needed
[2026-06-27 10:36:54,645.645 INFO    ] Checking for camera pi updates...
[2026-06-27 10:36:54,664.664 INFO    ] 200
[2026-06-27 10:36:54,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:36:54,690.690 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:36:54,717.717 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:36:54,718.718 INFO    ] No camera update needed
[2026-06-27 10:36:54,719.719 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:36:54,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:36:54,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:36:54,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:36:56,767.767 INFO    ] ================================================
[2026-06-27 10:36:56,783.783 INFO    ] Launching Daemon at Sat Jun 27 10:36:56 IST 2026
[2026-06-27 10:36:56,794.794 INFO    ] ================================================
[2026-06-27 10:36:57,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:36:57
[2026-06-27 10:36:57,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:36:57,681.681 INFO    ] Initializing speech engine...
[2026-06-27 10:36:57,684.684 INFO    ] 2026-06-27 10:36:57
[2026-06-27 10:36:57,894.894 INFO    ] 2026-06-27 10:36:57
[2026-06-27 10:36:57,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:36:58,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:36:58,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:36:58,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:36:58,320.320 INFO    ] time= 27/06/2026 10:36:58
[2026-06-27 10:36:58,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:36:58,349.349 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:36:58,418.418 INFO    ] No existing commands found in stream
[2026-06-27 10:37:03,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:37:03,430.430 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-27 10:37:05,102.102 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:37:05,104.104 INFO    ] Checking for system updates...
[2026-06-27 10:37:05,124.124 INFO    ] 200
[2026-06-27 10:37:05,126.126 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:37:05,158.158 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:37:05,160.160 INFO    ] No update needed
[2026-06-27 10:37:05,161.161 INFO    ] Checking for camera pi updates...
[2026-06-27 10:37:05,188.188 INFO    ] 200
[2026-06-27 10:37:05,190.190 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:37:05,219.219 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:37:05,256.256 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:37:05,258.258 INFO    ] No camera update needed
[2026-06-27 10:37:05,260.260 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:37:05,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:37:05,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:37:05,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:37:07,295.295 INFO    ] ================================================
[2026-06-27 10:37:07,304.304 INFO    ] Launching Daemon at Sat Jun 27 10:37:07 IST 2026
[2026-06-27 10:37:07,310.310 INFO    ] ================================================
[2026-06-27 10:37:07,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:37:07
[2026-06-27 10:37:07,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:37:08,096.096 INFO    ] Initializing speech engine...
[2026-06-27 10:37:08,099.099 INFO    ] 2026-06-27 10:37:08
[2026-06-27 10:37:08,320.320 INFO    ] 2026-06-27 10:37:08
[2026-06-27 10:37:08,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:37:08,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:37:08,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:37:08,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:37:08,743.743 INFO    ] time= 27/06/2026 10:37:08
[2026-06-27 10:37:08,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:37:08,770.770 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:37:08,837.837 INFO    ] No existing commands found in stream
[2026-06-27 10:37:13,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:37:13,849.849 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-27 10:37:16,978.978 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 10:37:16,980.980 INFO    ] Checking for system updates...
[2026-06-27 10:37:17,001.001 INFO    ] 200
[2026-06-27 10:37:17,002.002 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:37:17,034.034 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:37:17,036.036 INFO    ] No update needed
[2026-06-27 10:37:17,037.037 INFO    ] Checking for camera pi updates...
[2026-06-27 10:37:17,057.057 INFO    ] 200
[2026-06-27 10:37:17,058.058 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:37:17,082.082 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:37:17,119.119 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:37:17,121.121 INFO    ] No camera update needed
[2026-06-27 10:37:17,122.122 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:37:17,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:37:17,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:37:17,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:37:19,169.169 INFO    ] ================================================
[2026-06-27 10:37:19,185.185 INFO    ] Launching Daemon at Sat Jun 27 10:37:19 IST 2026
[2026-06-27 10:37:19,196.196 INFO    ] ================================================
[2026-06-27 10:37:19,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:37:19
[2026-06-27 10:37:19,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:37:20,039.039 INFO    ] Initializing speech engine...
[2026-06-27 10:37:20,051.051 INFO    ] 2026-06-27 10:37:20
[2026-06-27 10:37:20,264.264 INFO    ] 2026-06-27 10:37:20
[2026-06-27 10:37:20,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:37:20,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:37:20,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:37:20,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:37:20,711.711 INFO    ] time= 27/06/2026 10:37:20
[2026-06-27 10:37:20,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:37:20,718.718 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:37:20,786.786 INFO    ] No existing commands found in stream
[2026-06-27 10:37:25,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:37:25,803.803 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-27 10:37:26,232.232 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 10:37:26,233.233 INFO    ] Checking for system updates...
[2026-06-27 10:37:26,256.256 INFO    ] 200
[2026-06-27 10:37:26,257.257 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:37:26,291.291 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:37:26,292.292 INFO    ] No update needed
[2026-06-27 10:37:26,294.294 INFO    ] Checking for camera pi updates...
[2026-06-27 10:37:26,313.313 INFO    ] 200
[2026-06-27 10:37:26,315.315 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:37:26,338.338 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:37:26,373.373 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:37:26,375.375 INFO    ] No camera update needed
[2026-06-27 10:37:26,376.376 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:37:26,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:37:26,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:37:26,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:37:28,424.424 INFO    ] ================================================
[2026-06-27 10:37:28,440.440 INFO    ] Launching Daemon at Sat Jun 27 10:37:28 IST 2026
[2026-06-27 10:37:28,452.452 INFO    ] ================================================
[2026-06-27 10:37:28,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:37:28
[2026-06-27 10:37:29,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:37:29,304.304 INFO    ] Initializing speech engine...
[2026-06-27 10:37:29,311.311 INFO    ] 2026-06-27 10:37:29
[2026-06-27 10:37:29,531.531 INFO    ] 2026-06-27 10:37:29
[2026-06-27 10:37:29,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:37:29,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:37:29,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:37:29,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:37:29,954.954 INFO    ] time= 27/06/2026 10:37:29
[2026-06-27 10:37:29,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:37:29,983.983 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:37:30,050.050 INFO    ] No existing commands found in stream
[2026-06-27 10:37:35,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:37:35,063.063 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-27 10:37:37,268.268 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 10:37:37,270.270 INFO    ] Checking for system updates...
[2026-06-27 10:37:37,293.293 INFO    ] 200
[2026-06-27 10:37:37,295.295 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:37:37,326.326 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:37:37,327.327 INFO    ] No update needed
[2026-06-27 10:37:37,328.328 INFO    ] Checking for camera pi updates...
[2026-06-27 10:37:37,348.348 INFO    ] 200
[2026-06-27 10:37:37,350.350 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:37:37,373.373 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:37:37,420.420 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:37:37,422.422 INFO    ] No camera update needed
[2026-06-27 10:37:37,423.423 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:37:37,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:37:37,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:37:37,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:37:39,471.471 INFO    ] ================================================
[2026-06-27 10:37:39,487.487 INFO    ] Launching Daemon at Sat Jun 27 10:37:39 IST 2026
[2026-06-27 10:37:39,499.499 INFO    ] ================================================
[2026-06-27 10:37:39,874.874 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:37:39
[2026-06-27 10:37:40,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:37:40,371.371 INFO    ] Initializing speech engine...
[2026-06-27 10:37:40,374.374 INFO    ] 2026-06-27 10:37:40
[2026-06-27 10:37:40,586.586 INFO    ] 2026-06-27 10:37:40
[2026-06-27 10:37:40,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:37:41,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:37:41,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:37:41,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:37:41,399.399 INFO    ] time= 27/06/2026 10:37:41
[2026-06-27 10:37:41,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:37:41,428.428 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:37:41,498.498 INFO    ] No existing commands found in stream
[2026-06-27 10:37:46,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:37:46,511.511 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-27 10:37:50,119.119 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:37:50,120.120 INFO    ] Checking for system updates...
[2026-06-27 10:37:50,143.143 INFO    ] 200
[2026-06-27 10:37:50,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:37:50,178.178 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:37:50,180.180 INFO    ] No update needed
[2026-06-27 10:37:50,181.181 INFO    ] Checking for camera pi updates...
[2026-06-27 10:37:50,203.203 INFO    ] 200
[2026-06-27 10:37:50,204.204 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:37:50,229.229 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:37:50,278.278 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:37:50,280.280 INFO    ] No camera update needed
[2026-06-27 10:37:50,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:37:50,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:37:50,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:37:50,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:37:52,331.331 INFO    ] ================================================
[2026-06-27 10:37:52,353.353 INFO    ] Launching Daemon at Sat Jun 27 10:37:52 IST 2026
[2026-06-27 10:37:52,365.365 INFO    ] ================================================
[2026-06-27 10:37:52,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:37:52
[2026-06-27 10:37:53,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:37:53,226.226 INFO    ] Initializing speech engine...
[2026-06-27 10:37:53,232.232 INFO    ] 2026-06-27 10:37:53
[2026-06-27 10:37:53,441.441 INFO    ] 2026-06-27 10:37:53
[2026-06-27 10:37:53,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:37:53,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:37:53,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:37:53,848.848 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:37:53,881.881 INFO    ] time= 27/06/2026 10:37:53
[2026-06-27 10:37:53,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:37:53,888.888 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:37:53,956.956 INFO    ] No existing commands found in stream
[2026-06-27 10:37:58,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:37:58,969.969 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-27 10:38:03,538.538 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:38:03,540.540 INFO    ] Checking for system updates...
[2026-06-27 10:38:03,561.561 INFO    ] 200
[2026-06-27 10:38:03,562.562 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:38:03,595.595 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:38:03,596.596 INFO    ] No update needed
[2026-06-27 10:38:03,598.598 INFO    ] Checking for camera pi updates...
[2026-06-27 10:38:03,617.617 INFO    ] 200
[2026-06-27 10:38:03,618.618 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:38:03,641.641 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:38:03,680.680 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:38:03,681.681 INFO    ] No camera update needed
[2026-06-27 10:38:03,682.682 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:38:03,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:38:03,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:38:03,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:38:05,732.732 INFO    ] ================================================
[2026-06-27 10:38:05,751.751 INFO    ] Launching Daemon at Sat Jun 27 10:38:05 IST 2026
[2026-06-27 10:38:05,764.764 INFO    ] ================================================
[2026-06-27 10:38:06,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:38:06
[2026-06-27 10:38:06,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:38:06,584.584 INFO    ] Initializing speech engine...
[2026-06-27 10:38:06,593.593 INFO    ] 2026-06-27 10:38:06
[2026-06-27 10:38:06,814.814 INFO    ] 2026-06-27 10:38:06
[2026-06-27 10:38:06,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:38:07,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:38:07,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:38:07,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:38:07,242.242 INFO    ] time= 27/06/2026 10:38:07
[2026-06-27 10:38:07,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:38:07,272.272 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:38:07,340.340 INFO    ] No existing commands found in stream
[2026-06-27 10:38:12,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:38:12,354.354 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-27 10:38:14,568.568 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:38:14,569.569 INFO    ] Checking for system updates...
[2026-06-27 10:38:14,590.590 INFO    ] 200
[2026-06-27 10:38:14,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:38:14,626.626 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:38:14,627.627 INFO    ] No update needed
[2026-06-27 10:38:14,629.629 INFO    ] Checking for camera pi updates...
[2026-06-27 10:38:14,648.648 INFO    ] 200
[2026-06-27 10:38:14,650.650 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:38:14,674.674 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:38:14,715.715 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:38:14,716.716 INFO    ] No camera update needed
[2026-06-27 10:38:14,717.717 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:38:14,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:38:14,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:38:14,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:38:16,765.765 INFO    ] ================================================
[2026-06-27 10:38:16,780.780 INFO    ] Launching Daemon at Sat Jun 27 10:38:16 IST 2026
[2026-06-27 10:38:16,791.791 INFO    ] ================================================
[2026-06-27 10:38:17,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:38:17
[2026-06-27 10:38:17,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:38:17,605.605 INFO    ] Initializing speech engine...
[2026-06-27 10:38:17,610.610 INFO    ] 2026-06-27 10:38:17
[2026-06-27 10:38:17,817.817 INFO    ] 2026-06-27 10:38:17
[2026-06-27 10:38:17,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:38:17,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:38:18,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:38:18,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:38:18,258.258 INFO    ] time= 27/06/2026 10:38:18
[2026-06-27 10:38:18,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:38:18,266.266 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:38:18,332.332 INFO    ] No existing commands found in stream
[2026-06-27 10:38:23,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:38:23,345.345 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-27 10:38:24,321.321 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 10:38:24,323.323 INFO    ] Checking for system updates...
[2026-06-27 10:38:24,345.345 INFO    ] 200
[2026-06-27 10:38:24,346.346 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:38:24,377.377 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:38:24,379.379 INFO    ] No update needed
[2026-06-27 10:38:24,380.380 INFO    ] Checking for camera pi updates...
[2026-06-27 10:38:24,399.399 INFO    ] 200
[2026-06-27 10:38:24,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:38:24,426.426 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:38:24,474.474 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:38:24,476.476 INFO    ] No camera update needed
[2026-06-27 10:38:24,477.477 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:38:24,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:38:24,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:38:24,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:38:26,524.524 INFO    ] ================================================
[2026-06-27 10:38:26,540.540 INFO    ] Launching Daemon at Sat Jun 27 10:38:26 IST 2026
[2026-06-27 10:38:26,551.551 INFO    ] ================================================
[2026-06-27 10:38:26,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:38:26
[2026-06-27 10:38:27,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:38:27,371.371 INFO    ] Initializing speech engine...
[2026-06-27 10:38:27,378.378 INFO    ] 2026-06-27 10:38:27
[2026-06-27 10:38:27,607.607 INFO    ] 2026-06-27 10:38:27
[2026-06-27 10:38:27,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:38:27,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:38:27,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:38:28,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:38:28,060.060 INFO    ] time= 27/06/2026 10:38:28
[2026-06-27 10:38:28,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:38:28,093.093 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:38:28,162.162 INFO    ] No existing commands found in stream
[2026-06-27 10:38:33,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:38:33,176.176 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-27 10:38:33,761.761 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:38:33,763.763 INFO    ] Checking for system updates...
[2026-06-27 10:38:33,784.784 INFO    ] 200
[2026-06-27 10:38:33,785.785 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:38:33,817.817 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:38:33,819.819 INFO    ] No update needed
[2026-06-27 10:38:33,820.820 INFO    ] Checking for camera pi updates...
[2026-06-27 10:38:33,839.839 INFO    ] 200
[2026-06-27 10:38:33,840.840 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:38:33,867.867 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:38:33,905.905 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:38:33,906.906 INFO    ] No camera update needed
[2026-06-27 10:38:33,907.907 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:38:33,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:38:33,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:38:33,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:38:35,954.954 INFO    ] ================================================
[2026-06-27 10:38:35,969.969 INFO    ] Launching Daemon at Sat Jun 27 10:38:35 IST 2026
[2026-06-27 10:38:35,980.980 INFO    ] ================================================
[2026-06-27 10:38:36,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:38:36
[2026-06-27 10:38:36,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:38:36,829.829 INFO    ] Initializing speech engine...
[2026-06-27 10:38:36,833.833 INFO    ] 2026-06-27 10:38:36
[2026-06-27 10:38:37,042.042 INFO    ] 2026-06-27 10:38:37
[2026-06-27 10:38:37,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:38:37,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:38:37,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:38:37,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:38:37,471.471 INFO    ] time= 27/06/2026 10:38:37
[2026-06-27 10:38:37,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:38:37,493.493 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:38:37,558.558 INFO    ] No existing commands found in stream
[2026-06-27 10:38:42,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:38:42,572.572 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-27 10:38:45,524.524 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:38:45,525.525 INFO    ] Checking for system updates...
[2026-06-27 10:38:45,547.547 INFO    ] 200
[2026-06-27 10:38:45,549.549 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:38:45,582.582 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:38:45,583.583 INFO    ] No update needed
[2026-06-27 10:38:45,585.585 INFO    ] Checking for camera pi updates...
[2026-06-27 10:38:45,605.605 INFO    ] 200
[2026-06-27 10:38:45,607.607 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:38:45,630.630 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:38:45,770.770 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:38:45,771.771 INFO    ] No camera update needed
[2026-06-27 10:38:45,772.772 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:38:45,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:38:45,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:38:45,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:38:47,819.819 INFO    ] ================================================
[2026-06-27 10:38:47,835.835 INFO    ] Launching Daemon at Sat Jun 27 10:38:47 IST 2026
[2026-06-27 10:38:47,847.847 INFO    ] ================================================
[2026-06-27 10:38:48,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:38:48
[2026-06-27 10:38:48,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:38:48,718.718 INFO    ] Initializing speech engine...
[2026-06-27 10:38:48,723.723 INFO    ] 2026-06-27 10:38:48
[2026-06-27 10:38:48,934.934 INFO    ] 2026-06-27 10:38:48
[2026-06-27 10:38:48,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:38:49,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:38:49,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:38:49,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:38:49,384.384 INFO    ] time= 27/06/2026 10:38:49
[2026-06-27 10:38:49,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:38:49,392.392 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:38:49,460.460 INFO    ] No existing commands found in stream
[2026-06-27 10:38:54,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:38:54,477.477 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-27 10:38:59,704.704 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:38:59,706.706 INFO    ] Checking for system updates...
[2026-06-27 10:38:59,728.728 INFO    ] 200
[2026-06-27 10:38:59,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:38:59,761.761 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:38:59,762.762 INFO    ] No update needed
[2026-06-27 10:38:59,764.764 INFO    ] Checking for camera pi updates...
[2026-06-27 10:38:59,784.784 INFO    ] 200
[2026-06-27 10:38:59,785.785 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:38:59,809.809 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:38:59,846.846 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:38:59,848.848 INFO    ] No camera update needed
[2026-06-27 10:38:59,849.849 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:38:59,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:38:59,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:38:59,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:39:01,905.905 INFO    ] ================================================
[2026-06-27 10:39:01,930.930 INFO    ] Launching Daemon at Sat Jun 27 10:39:01 IST 2026
[2026-06-27 10:39:01,954.954 INFO    ] ================================================
[2026-06-27 10:39:02,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:39:02
[2026-06-27 10:39:02,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:39:02,893.893 INFO    ] Initializing speech engine...
[2026-06-27 10:39:02,903.903 INFO    ] 2026-06-27 10:39:02
[2026-06-27 10:39:03,112.112 INFO    ] 2026-06-27 10:39:03
[2026-06-27 10:39:03,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:39:03,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:39:03,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:39:03,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:39:03,493.493 INFO    ] time= 27/06/2026 10:39:03
[2026-06-27 10:39:03,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:39:03,579.579 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:39:03,677.677 INFO    ] No existing commands found in stream
[2026-06-27 10:39:08,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:39:08,689.689 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-27 10:39:12,920.920 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:39:12,922.922 INFO    ] Checking for system updates...
[2026-06-27 10:39:12,942.942 INFO    ] 200
[2026-06-27 10:39:12,944.944 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:39:12,975.975 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:39:12,976.976 INFO    ] No update needed
[2026-06-27 10:39:12,978.978 INFO    ] Checking for camera pi updates...
[2026-06-27 10:39:12,998.998 INFO    ] 200
[2026-06-27 10:39:12,999.999 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:39:13,027.027 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:39:13,066.066 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:39:13,067.067 INFO    ] No camera update needed
[2026-06-27 10:39:13,069.069 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:39:13,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:39:13,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:39:13,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:39:15,115.115 INFO    ] ================================================
[2026-06-27 10:39:15,130.130 INFO    ] Launching Daemon at Sat Jun 27 10:39:15 IST 2026
[2026-06-27 10:39:15,141.141 INFO    ] ================================================
[2026-06-27 10:39:15,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:39:15
[2026-06-27 10:39:15,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:39:15,940.940 INFO    ] Initializing speech engine...
[2026-06-27 10:39:15,952.952 INFO    ] 2026-06-27 10:39:15
[2026-06-27 10:39:16,160.160 INFO    ] 2026-06-27 10:39:16
[2026-06-27 10:39:16,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:39:16,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:39:16,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:39:16,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:39:16,582.582 INFO    ] time= 27/06/2026 10:39:16
[2026-06-27 10:39:16,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:39:16,611.611 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:39:16,677.677 INFO    ] No existing commands found in stream
[2026-06-27 10:39:21,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:39:21,689.689 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-27 10:39:22,616.616 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 10:39:22,617.617 INFO    ] Checking for system updates...
[2026-06-27 10:39:22,638.638 INFO    ] 200
[2026-06-27 10:39:22,640.640 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:39:22,673.673 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:39:22,675.675 INFO    ] No update needed
[2026-06-27 10:39:22,677.677 INFO    ] Checking for camera pi updates...
[2026-06-27 10:39:22,696.696 INFO    ] 200
[2026-06-27 10:39:22,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:39:22,722.722 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:39:22,765.765 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:39:22,766.766 INFO    ] No camera update needed
[2026-06-27 10:39:22,767.767 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:39:22,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:39:22,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:39:22,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:39:24,817.817 INFO    ] ================================================
[2026-06-27 10:39:24,832.832 INFO    ] Launching Daemon at Sat Jun 27 10:39:24 IST 2026
[2026-06-27 10:39:24,844.844 INFO    ] ================================================
[2026-06-27 10:39:25,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:39:25
[2026-06-27 10:39:25,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:39:25,686.686 INFO    ] Initializing speech engine...
[2026-06-27 10:39:25,694.694 INFO    ] 2026-06-27 10:39:25
[2026-06-27 10:39:25,882.882 INFO    ] 2026-06-27 10:39:25
[2026-06-27 10:39:25,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:39:26,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:39:26,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:39:26,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:39:26,390.390 INFO    ] time= 27/06/2026 10:39:26
[2026-06-27 10:39:26,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:39:26,419.419 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:39:26,492.492 INFO    ] No existing commands found in stream
[2026-06-27 10:39:31,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:39:31,504.504 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-27 10:39:32,567.567 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:39:32,571.571 INFO    ] Checking for system updates...
[2026-06-27 10:39:32,599.599 INFO    ] 200
[2026-06-27 10:39:32,601.601 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:39:32,635.635 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:39:32,637.637 INFO    ] No update needed
[2026-06-27 10:39:32,638.638 INFO    ] Checking for camera pi updates...
[2026-06-27 10:39:32,657.657 INFO    ] 200
[2026-06-27 10:39:32,659.659 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:39:32,682.682 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:39:32,711.711 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:39:32,713.713 INFO    ] No camera update needed
[2026-06-27 10:39:32,714.714 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:39:32,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:39:32,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:39:32,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:39:34,761.761 INFO    ] ================================================
[2026-06-27 10:39:34,777.777 INFO    ] Launching Daemon at Sat Jun 27 10:39:34 IST 2026
[2026-06-27 10:39:34,789.789 INFO    ] ================================================
[2026-06-27 10:39:35,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:39:35
[2026-06-27 10:39:35,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:39:35,619.619 INFO    ] Initializing speech engine...
[2026-06-27 10:39:35,628.628 INFO    ] 2026-06-27 10:39:35
[2026-06-27 10:39:35,829.829 INFO    ] 2026-06-27 10:39:35
[2026-06-27 10:39:35,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:39:36,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:39:36,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:39:36,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:39:36,294.294 INFO    ] time= 27/06/2026 10:39:36
[2026-06-27 10:39:36,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:39:36,380.380 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:39:36,487.487 INFO    ] No existing commands found in stream
[2026-06-27 10:39:41,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:39:41,501.501 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-27 10:39:44,701.701 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:39:44,703.703 INFO    ] Checking for system updates...
[2026-06-27 10:39:44,726.726 INFO    ] 200
[2026-06-27 10:39:44,727.727 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:39:44,760.760 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:39:44,761.761 INFO    ] No update needed
[2026-06-27 10:39:44,763.763 INFO    ] Checking for camera pi updates...
[2026-06-27 10:39:44,784.784 INFO    ] 200
[2026-06-27 10:39:44,786.786 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:39:44,814.814 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:39:44,855.855 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:39:44,857.857 INFO    ] No camera update needed
[2026-06-27 10:39:44,858.858 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:39:44,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:39:44,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:39:44,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:39:46,907.907 INFO    ] ================================================
[2026-06-27 10:39:46,923.923 INFO    ] Launching Daemon at Sat Jun 27 10:39:46 IST 2026
[2026-06-27 10:39:46,935.935 INFO    ] ================================================
[2026-06-27 10:39:47,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:39:47
[2026-06-27 10:39:47,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:39:47,735.735 INFO    ] Initializing speech engine...
[2026-06-27 10:39:47,740.740 INFO    ] 2026-06-27 10:39:47
[2026-06-27 10:39:47,945.945 INFO    ] 2026-06-27 10:39:47
[2026-06-27 10:39:47,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:39:48,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:39:48,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:39:48,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:39:48,386.386 INFO    ] time= 27/06/2026 10:39:48
[2026-06-27 10:39:48,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:39:48,393.393 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:39:48,459.459 INFO    ] No existing commands found in stream
[2026-06-27 10:39:53,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:39:53,473.473 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-27 10:39:57,187.187 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:39:57,188.188 INFO    ] Checking for system updates...
[2026-06-27 10:39:57,209.209 INFO    ] 200
[2026-06-27 10:39:57,211.211 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:39:57,241.241 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:39:57,245.245 INFO    ] No update needed
[2026-06-27 10:39:57,246.246 INFO    ] Checking for camera pi updates...
[2026-06-27 10:39:57,266.266 INFO    ] 200
[2026-06-27 10:39:57,268.268 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:39:57,291.291 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:39:57,328.328 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:39:57,329.329 INFO    ] No camera update needed
[2026-06-27 10:39:57,330.330 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:39:57,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:39:57,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:39:57,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:39:59,377.377 INFO    ] ================================================
[2026-06-27 10:39:59,392.392 INFO    ] Launching Daemon at Sat Jun 27 10:39:59 IST 2026
[2026-06-27 10:39:59,404.404 INFO    ] ================================================
[2026-06-27 10:39:59,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:39:59
[2026-06-27 10:40:00,083.083 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:40:00,218.218 INFO    ] Initializing speech engine...
[2026-06-27 10:40:00,230.230 INFO    ] 2026-06-27 10:40:00
[2026-06-27 10:40:00,438.438 INFO    ] 2026-06-27 10:40:00
[2026-06-27 10:40:00,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:40:00,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:40:00,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:40:00,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:40:00,875.875 INFO    ] time= 27/06/2026 10:40:00
[2026-06-27 10:40:00,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:40:00,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:40:00,951.951 INFO    ] No existing commands found in stream
[2026-06-27 10:40:05,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:40:05,965.965 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-27 10:40:09,538.538 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:40:09,539.539 INFO    ] Checking for system updates...
[2026-06-27 10:40:09,560.560 INFO    ] 200
[2026-06-27 10:40:09,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:40:09,592.592 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:40:09,593.593 INFO    ] No update needed
[2026-06-27 10:40:09,595.595 INFO    ] Checking for camera pi updates...
[2026-06-27 10:40:09,616.616 INFO    ] 200
[2026-06-27 10:40:09,617.617 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:40:09,640.640 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:40:09,679.679 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:40:09,680.680 INFO    ] No camera update needed
[2026-06-27 10:40:09,682.682 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:40:09,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:40:09,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:40:09,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:40:11,727.727 INFO    ] ================================================
[2026-06-27 10:40:11,743.743 INFO    ] Launching Daemon at Sat Jun 27 10:40:11 IST 2026
[2026-06-27 10:40:11,754.754 INFO    ] ================================================
[2026-06-27 10:40:12,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:40:12
[2026-06-27 10:40:12,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:40:12,539.539 INFO    ] Initializing speech engine...
[2026-06-27 10:40:12,551.551 INFO    ] 2026-06-27 10:40:12
[2026-06-27 10:40:12,756.756 INFO    ] 2026-06-27 10:40:12
[2026-06-27 10:40:12,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:40:12,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:40:12,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:40:13,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:40:13,176.176 INFO    ] time= 27/06/2026 10:40:13
[2026-06-27 10:40:13,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:40:13,204.204 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:40:13,270.270 INFO    ] No existing commands found in stream
[2026-06-27 10:40:18,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:40:18,287.287 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-27 10:40:19,898.898 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 10:40:19,899.899 INFO    ] Checking for system updates...
[2026-06-27 10:40:19,920.920 INFO    ] 200
[2026-06-27 10:40:19,922.922 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:40:19,955.955 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:40:19,957.957 INFO    ] No update needed
[2026-06-27 10:40:19,958.958 INFO    ] Checking for camera pi updates...
[2026-06-27 10:40:19,977.977 INFO    ] 200
[2026-06-27 10:40:19,979.979 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:40:20,004.004 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:40:20,044.044 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:40:20,046.046 INFO    ] No camera update needed
[2026-06-27 10:40:20,047.047 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:40:20,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:40:20,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:40:20,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:40:22,093.093 INFO    ] ================================================
[2026-06-27 10:40:22,112.112 INFO    ] Launching Daemon at Sat Jun 27 10:40:22 IST 2026
[2026-06-27 10:40:22,125.125 INFO    ] ================================================
[2026-06-27 10:40:22,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:40:22
[2026-06-27 10:40:22,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:40:22,920.920 INFO    ] Initializing speech engine...
[2026-06-27 10:40:22,930.930 INFO    ] 2026-06-27 10:40:22
[2026-06-27 10:40:23,135.135 INFO    ] 2026-06-27 10:40:23
[2026-06-27 10:40:23,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:40:23,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:40:23,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:40:23,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:40:23,562.562 INFO    ] time= 27/06/2026 10:40:23
[2026-06-27 10:40:23,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:40:23,592.592 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:40:23,660.660 INFO    ] No existing commands found in stream
[2026-06-27 10:40:28,669.669 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:40:28,672.672 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-27 10:40:29,711.711 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 10:40:29,713.713 INFO    ] Checking for system updates...
[2026-06-27 10:40:29,736.736 INFO    ] 200
[2026-06-27 10:40:29,738.738 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:40:29,768.768 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:40:29,769.769 INFO    ] No update needed
[2026-06-27 10:40:29,770.770 INFO    ] Checking for camera pi updates...
[2026-06-27 10:40:29,790.790 INFO    ] 200
[2026-06-27 10:40:29,791.791 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:40:29,817.817 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:40:29,858.858 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:40:29,859.859 INFO    ] No camera update needed
[2026-06-27 10:40:29,861.861 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:40:29,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:40:29,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:40:29,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:40:31,902.902 INFO    ] ================================================
[2026-06-27 10:40:31,911.911 INFO    ] Launching Daemon at Sat Jun 27 10:40:31 IST 2026
[2026-06-27 10:40:31,918.918 INFO    ] ================================================
[2026-06-27 10:40:32,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:40:32
[2026-06-27 10:40:32,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:40:32,705.705 INFO    ] Initializing speech engine...
[2026-06-27 10:40:32,717.717 INFO    ] 2026-06-27 10:40:32
[2026-06-27 10:40:32,923.923 INFO    ] 2026-06-27 10:40:32
[2026-06-27 10:40:32,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:40:33,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:40:33,144.144 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:40:33,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:40:33,363.363 INFO    ] time= 27/06/2026 10:40:33
[2026-06-27 10:40:33,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:40:33,370.370 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:40:33,436.436 INFO    ] No existing commands found in stream
[2026-06-27 10:40:38,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:40:38,449.449 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-27 10:40:41,574.574 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:40:41,575.575 INFO    ] Checking for system updates...
[2026-06-27 10:40:41,597.597 INFO    ] 200
[2026-06-27 10:40:41,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:40:41,631.631 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:40:41,633.633 INFO    ] No update needed
[2026-06-27 10:40:41,634.634 INFO    ] Checking for camera pi updates...
[2026-06-27 10:40:41,654.654 INFO    ] 200
[2026-06-27 10:40:41,656.656 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:40:41,680.680 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:40:41,720.720 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:40:41,721.721 INFO    ] No camera update needed
[2026-06-27 10:40:41,722.722 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:40:41,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:40:41,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:40:41,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:40:43,770.770 INFO    ] ================================================
[2026-06-27 10:40:43,786.786 INFO    ] Launching Daemon at Sat Jun 27 10:40:43 IST 2026
[2026-06-27 10:40:43,797.797 INFO    ] ================================================
[2026-06-27 10:40:44,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:40:44
[2026-06-27 10:40:44,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:40:44,600.600 INFO    ] Initializing speech engine...
[2026-06-27 10:40:44,607.607 INFO    ] 2026-06-27 10:40:44
[2026-06-27 10:40:44,813.813 INFO    ] 2026-06-27 10:40:44
[2026-06-27 10:40:44,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:40:45,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:40:45,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:40:45,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:40:45,232.232 INFO    ] time= 27/06/2026 10:40:45
[2026-06-27 10:40:45,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:40:45,263.263 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:40:45,330.330 INFO    ] No existing commands found in stream
[2026-06-27 10:40:50,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:40:50,348.348 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-27 10:40:52,120.120 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 10:40:52,122.122 INFO    ] Checking for system updates...
[2026-06-27 10:40:52,144.144 INFO    ] 200
[2026-06-27 10:40:52,146.146 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:40:52,178.178 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:40:52,179.179 INFO    ] No update needed
[2026-06-27 10:40:52,181.181 INFO    ] Checking for camera pi updates...
[2026-06-27 10:40:52,202.202 INFO    ] 200
[2026-06-27 10:40:52,205.205 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:40:52,236.236 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:40:52,386.386 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:40:52,388.388 INFO    ] No camera update needed
[2026-06-27 10:40:52,390.390 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:40:52,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:40:52,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:40:52,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:40:54,437.437 INFO    ] ================================================
[2026-06-27 10:40:54,452.452 INFO    ] Launching Daemon at Sat Jun 27 10:40:54 IST 2026
[2026-06-27 10:40:54,463.463 INFO    ] ================================================
[2026-06-27 10:40:54,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:40:54
[2026-06-27 10:40:55,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:40:55,300.300 INFO    ] Initializing speech engine...
[2026-06-27 10:40:55,304.304 INFO    ] 2026-06-27 10:40:55
[2026-06-27 10:40:55,515.515 INFO    ] 2026-06-27 10:40:55
[2026-06-27 10:40:55,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:40:55,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:40:55,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:40:55,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:40:55,962.962 INFO    ] time= 27/06/2026 10:40:55
[2026-06-27 10:40:56,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:40:56,021.021 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:40:56,116.116 INFO    ] No existing commands found in stream
[2026-06-27 10:41:01,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:41:01,128.128 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-27 10:41:02,317.317 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:41:02,319.319 INFO    ] Checking for system updates...
[2026-06-27 10:41:02,343.343 INFO    ] 200
[2026-06-27 10:41:02,345.345 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:41:02,382.382 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:41:02,384.384 INFO    ] No update needed
[2026-06-27 10:41:02,386.386 INFO    ] Checking for camera pi updates...
[2026-06-27 10:41:02,413.413 INFO    ] 200
[2026-06-27 10:41:02,415.415 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:41:02,448.448 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:41:02,477.477 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:41:02,479.479 INFO    ] No camera update needed
[2026-06-27 10:41:02,481.481 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:41:02,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:41:02,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:41:02,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:41:04,534.534 INFO    ] ================================================
[2026-06-27 10:41:04,550.550 INFO    ] Launching Daemon at Sat Jun 27 10:41:04 IST 2026
[2026-06-27 10:41:04,561.561 INFO    ] ================================================
[2026-06-27 10:41:04,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:41:04
[2026-06-27 10:41:05,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:41:05,415.415 INFO    ] Initializing speech engine...
[2026-06-27 10:41:05,420.420 INFO    ] 2026-06-27 10:41:05
[2026-06-27 10:41:05,627.627 INFO    ] 2026-06-27 10:41:05
[2026-06-27 10:41:05,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:41:05,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:41:05,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:41:06,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:41:06,071.071 INFO    ] time= 27/06/2026 10:41:06
[2026-06-27 10:41:06,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:41:06,082.082 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:41:06,149.149 INFO    ] No existing commands found in stream
[2026-06-27 10:41:11,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:41:11,166.166 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-27 10:41:14,210.210 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:41:14,211.211 INFO    ] Checking for system updates...
[2026-06-27 10:41:14,235.235 INFO    ] 200
[2026-06-27 10:41:14,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:41:14,267.267 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:41:14,268.268 INFO    ] No update needed
[2026-06-27 10:41:14,270.270 INFO    ] Checking for camera pi updates...
[2026-06-27 10:41:14,289.289 INFO    ] 200
[2026-06-27 10:41:14,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:41:14,314.314 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:41:14,351.351 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:41:14,353.353 INFO    ] No camera update needed
[2026-06-27 10:41:14,354.354 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:41:14,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:41:14,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:41:14,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:41:16,403.403 INFO    ] ================================================
[2026-06-27 10:41:16,419.419 INFO    ] Launching Daemon at Sat Jun 27 10:41:16 IST 2026
[2026-06-27 10:41:16,430.430 INFO    ] ================================================
[2026-06-27 10:41:16,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:41:16
[2026-06-27 10:41:17,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:41:17,231.231 INFO    ] Initializing speech engine...
[2026-06-27 10:41:17,236.236 INFO    ] 2026-06-27 10:41:17
[2026-06-27 10:41:17,442.442 INFO    ] 2026-06-27 10:41:17
[2026-06-27 10:41:17,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:41:17,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:41:17,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:41:17,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:41:17,881.881 INFO    ] time= 27/06/2026 10:41:17
[2026-06-27 10:41:17,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:41:17,888.888 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:41:17,954.954 INFO    ] No existing commands found in stream
[2026-06-27 10:41:22,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:41:22,967.967 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-27 10:41:24,882.882 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:41:24,883.883 INFO    ] Checking for system updates...
[2026-06-27 10:41:24,904.904 INFO    ] 200
[2026-06-27 10:41:24,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:41:24,936.936 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:41:24,938.938 INFO    ] No update needed
[2026-06-27 10:41:24,939.939 INFO    ] Checking for camera pi updates...
[2026-06-27 10:41:24,958.958 INFO    ] 200
[2026-06-27 10:41:24,960.960 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:41:24,985.985 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:41:25,024.024 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:41:25,025.025 INFO    ] No camera update needed
[2026-06-27 10:41:25,027.027 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:41:25,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:41:25,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:41:25,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:41:27,074.074 INFO    ] ================================================
[2026-06-27 10:41:27,090.090 INFO    ] Launching Daemon at Sat Jun 27 10:41:27 IST 2026
[2026-06-27 10:41:27,101.101 INFO    ] ================================================
[2026-06-27 10:41:27,451.451 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:41:27
[2026-06-27 10:41:27,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:41:27,896.896 INFO    ] Initializing speech engine...
[2026-06-27 10:41:27,910.910 INFO    ] 2026-06-27 10:41:27
[2026-06-27 10:41:28,119.119 INFO    ] 2026-06-27 10:41:28
[2026-06-27 10:41:28,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:41:28,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:41:28,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:41:28,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:41:28,515.515 INFO    ] time= 27/06/2026 10:41:28
[2026-06-27 10:41:28,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:41:28,571.571 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:41:28,663.663 INFO    ] No existing commands found in stream
[2026-06-27 10:41:33,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:41:33,681.681 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-27 10:41:36,828.828 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 10:41:36,829.829 INFO    ] Checking for system updates...
[2026-06-27 10:41:36,849.849 INFO    ] 200
[2026-06-27 10:41:36,851.851 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:41:36,882.882 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:41:36,883.883 INFO    ] No update needed
[2026-06-27 10:41:36,885.885 INFO    ] Checking for camera pi updates...
[2026-06-27 10:41:36,905.905 INFO    ] 200
[2026-06-27 10:41:36,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:41:36,929.929 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:41:36,975.975 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:41:36,976.976 INFO    ] No camera update needed
[2026-06-27 10:41:36,977.977 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:41:36,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:41:36,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:41:36,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:41:39,022.022 INFO    ] ================================================
[2026-06-27 10:41:39,036.036 INFO    ] Launching Daemon at Sat Jun 27 10:41:39 IST 2026
[2026-06-27 10:41:39,047.047 INFO    ] ================================================
[2026-06-27 10:41:39,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:41:39
[2026-06-27 10:41:39,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:41:39,813.813 INFO    ] Initializing speech engine...
[2026-06-27 10:41:39,818.818 INFO    ] 2026-06-27 10:41:39
[2026-06-27 10:41:40,037.037 INFO    ] 2026-06-27 10:41:40
[2026-06-27 10:41:40,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:41:40,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:41:40,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:41:40,460.460 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:41:40,485.485 INFO    ] time= 27/06/2026 10:41:40
[2026-06-27 10:41:40,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:41:40,493.493 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:41:40,560.560 INFO    ] No existing commands found in stream
[2026-06-27 10:41:45,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:41:45,577.577 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-27 10:41:47,786.786 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 10:41:47,787.787 INFO    ] Checking for system updates...
[2026-06-27 10:41:47,808.808 INFO    ] 200
[2026-06-27 10:41:47,810.810 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:41:47,840.840 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:41:47,842.842 INFO    ] No update needed
[2026-06-27 10:41:47,843.843 INFO    ] Checking for camera pi updates...
[2026-06-27 10:41:47,863.863 INFO    ] 200
[2026-06-27 10:41:47,864.864 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:41:47,888.888 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:41:47,928.928 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:41:47,930.930 INFO    ] No camera update needed
[2026-06-27 10:41:47,931.931 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:41:47,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:41:47,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:41:47,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:41:49,976.976 INFO    ] ================================================
[2026-06-27 10:41:49,992.992 INFO    ] Launching Daemon at Sat Jun 27 10:41:49 IST 2026
[2026-06-27 10:41:50,003.003 INFO    ] ================================================
[2026-06-27 10:41:50,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:41:50
[2026-06-27 10:41:50,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:41:50,884.884 INFO    ] Initializing speech engine...
[2026-06-27 10:41:50,888.888 INFO    ] 2026-06-27 10:41:50
[2026-06-27 10:41:51,097.097 INFO    ] 2026-06-27 10:41:51
[2026-06-27 10:41:51,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:41:51,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:41:51,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:41:51,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:41:51,518.518 INFO    ] time= 27/06/2026 10:41:51
[2026-06-27 10:41:51,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:41:51,545.545 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:41:51,612.612 INFO    ] No existing commands found in stream
[2026-06-27 10:41:56,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:41:56,631.631 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-27 10:41:57,584.584 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 10:41:57,585.585 INFO    ] Checking for system updates...
[2026-06-27 10:41:57,608.608 INFO    ] 200
[2026-06-27 10:41:57,610.610 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:41:57,644.644 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:41:57,645.645 INFO    ] No update needed
[2026-06-27 10:41:57,647.647 INFO    ] Checking for camera pi updates...
[2026-06-27 10:41:57,668.668 INFO    ] 200
[2026-06-27 10:41:57,669.669 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:41:57,696.696 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:41:57,736.736 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:41:57,737.737 INFO    ] No camera update needed
[2026-06-27 10:41:57,739.739 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:41:57,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:41:57,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:41:57,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:41:59,788.788 INFO    ] ================================================
[2026-06-27 10:41:59,804.804 INFO    ] Launching Daemon at Sat Jun 27 10:41:59 IST 2026
[2026-06-27 10:41:59,814.814 INFO    ] ================================================
[2026-06-27 10:42:00,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:42:00
[2026-06-27 10:42:00,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:42:00,679.679 INFO    ] Initializing speech engine...
[2026-06-27 10:42:00,685.685 INFO    ] 2026-06-27 10:42:00
[2026-06-27 10:42:00,895.895 INFO    ] 2026-06-27 10:42:00
[2026-06-27 10:42:00,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:42:01,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:42:01,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:42:01,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:42:01,302.302 INFO    ] time= 27/06/2026 10:42:01
[2026-06-27 10:42:01,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:42:01,313.313 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:42:01,368.368 INFO    ] No existing commands found in stream
[2026-06-27 10:42:06,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:42:06,380.380 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-27 10:42:09,243.243 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 10:42:09,245.245 INFO    ] Checking for system updates...
[2026-06-27 10:42:09,266.266 INFO    ] 200
[2026-06-27 10:42:09,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:42:09,301.301 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:42:09,302.302 INFO    ] No update needed
[2026-06-27 10:42:09,304.304 INFO    ] Checking for camera pi updates...
[2026-06-27 10:42:09,324.324 INFO    ] 200
[2026-06-27 10:42:09,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:42:09,350.350 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:42:09,387.387 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:42:09,388.388 INFO    ] No camera update needed
[2026-06-27 10:42:09,390.390 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:42:09,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:42:09,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:42:09,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:42:11,439.439 INFO    ] ================================================
[2026-06-27 10:42:11,455.455 INFO    ] Launching Daemon at Sat Jun 27 10:42:11 IST 2026
[2026-06-27 10:42:11,466.466 INFO    ] ================================================
[2026-06-27 10:42:11,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:42:11
[2026-06-27 10:42:12,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:42:12,276.276 INFO    ] Initializing speech engine...
[2026-06-27 10:42:12,280.280 INFO    ] 2026-06-27 10:42:12
[2026-06-27 10:42:12,496.496 INFO    ] 2026-06-27 10:42:12
[2026-06-27 10:42:12,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:42:12,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:42:12,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:42:12,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:42:12,934.934 INFO    ] time= 27/06/2026 10:42:12
[2026-06-27 10:42:12,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:42:12,983.983 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:42:13,061.061 INFO    ] No existing commands found in stream
[2026-06-27 10:42:18,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:42:18,073.073 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-27 10:42:20,900.900 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 10:42:20,901.901 INFO    ] Checking for system updates...
[2026-06-27 10:42:20,926.926 INFO    ] 200
[2026-06-27 10:42:20,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:42:20,961.961 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:42:20,963.963 INFO    ] No update needed
[2026-06-27 10:42:20,965.965 INFO    ] Checking for camera pi updates...
[2026-06-27 10:42:20,986.986 INFO    ] 200
[2026-06-27 10:42:20,988.988 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:42:21,011.011 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:42:21,050.050 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:42:21,051.051 INFO    ] No camera update needed
[2026-06-27 10:42:21,052.052 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:42:21,054.054 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:42:21,057.057 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:42:21,060.060 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:42:23,101.101 INFO    ] ================================================
[2026-06-27 10:42:23,116.116 INFO    ] Launching Daemon at Sat Jun 27 10:42:23 IST 2026
[2026-06-27 10:42:23,127.127 INFO    ] ================================================
[2026-06-27 10:42:23,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:42:23
[2026-06-27 10:42:23,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:42:24,013.013 INFO    ] Initializing speech engine...
[2026-06-27 10:42:24,018.018 INFO    ] 2026-06-27 10:42:24
[2026-06-27 10:42:24,225.225 INFO    ] 2026-06-27 10:42:24
[2026-06-27 10:42:24,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:42:24,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:42:24,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:42:24,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:42:24,649.649 INFO    ] time= 27/06/2026 10:42:24
[2026-06-27 10:42:24,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:42:24,677.677 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:42:24,743.743 INFO    ] No existing commands found in stream
[2026-06-27 10:42:29,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:42:29,758.758 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-27 10:42:32,397.397 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 10:42:32,398.398 INFO    ] Checking for system updates...
[2026-06-27 10:42:32,421.421 INFO    ] 200
[2026-06-27 10:42:32,422.422 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:42:32,453.453 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:42:32,455.455 INFO    ] No update needed
[2026-06-27 10:42:32,456.456 INFO    ] Checking for camera pi updates...
[2026-06-27 10:42:32,475.475 INFO    ] 200
[2026-06-27 10:42:32,477.477 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:42:32,500.500 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:42:32,523.523 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:42:32,525.525 INFO    ] No camera update needed
[2026-06-27 10:42:32,526.526 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:42:32,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:42:32,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:42:32,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:42:34,572.572 INFO    ] ================================================
[2026-06-27 10:42:34,588.588 INFO    ] Launching Daemon at Sat Jun 27 10:42:34 IST 2026
[2026-06-27 10:42:34,599.599 INFO    ] ================================================
[2026-06-27 10:42:34,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:42:34
[2026-06-27 10:42:35,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:42:35,408.408 INFO    ] Initializing speech engine...
[2026-06-27 10:42:35,416.416 INFO    ] 2026-06-27 10:42:35
[2026-06-27 10:42:35,629.629 INFO    ] 2026-06-27 10:42:35
[2026-06-27 10:42:35,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:42:35,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:42:35,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:42:35,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:42:36,026.026 INFO    ] time= 27/06/2026 10:42:35
[2026-06-27 10:42:36,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:42:36,078.078 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:42:36,149.149 INFO    ] No existing commands found in stream
[2026-06-27 10:42:41,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:42:41,161.161 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-27 10:42:44,667.667 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 10:42:44,669.669 INFO    ] Checking for system updates...
[2026-06-27 10:42:44,689.689 INFO    ] 200
[2026-06-27 10:42:44,691.691 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:42:44,722.722 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:42:44,724.724 INFO    ] No update needed
[2026-06-27 10:42:44,725.725 INFO    ] Checking for camera pi updates...
[2026-06-27 10:42:44,745.745 INFO    ] 200
[2026-06-27 10:42:44,746.746 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:42:44,772.772 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:42:44,818.818 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:42:44,820.820 INFO    ] No camera update needed
[2026-06-27 10:42:44,821.821 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:42:44,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:42:44,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:42:44,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:42:46,869.869 INFO    ] ================================================
[2026-06-27 10:42:46,885.885 INFO    ] Launching Daemon at Sat Jun 27 10:42:46 IST 2026
[2026-06-27 10:42:46,896.896 INFO    ] ================================================
[2026-06-27 10:42:47,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:42:47
[2026-06-27 10:42:47,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:42:47,704.704 INFO    ] Initializing speech engine...
[2026-06-27 10:42:47,709.709 INFO    ] 2026-06-27 10:42:47
[2026-06-27 10:42:47,914.914 INFO    ] 2026-06-27 10:42:47
[2026-06-27 10:42:47,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:42:48,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:42:48,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:42:48,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:42:48,333.333 INFO    ] time= 27/06/2026 10:42:48
[2026-06-27 10:42:48,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:42:48,363.363 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:42:48,430.430 INFO    ] No existing commands found in stream
[2026-06-27 10:42:53,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:42:53,442.442 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-27 10:42:56,980.980 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 10:42:56,982.982 INFO    ] Checking for system updates...
[2026-06-27 10:42:57,003.003 INFO    ] 200
[2026-06-27 10:42:57,005.005 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:42:57,036.036 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:42:57,038.038 INFO    ] No update needed
[2026-06-27 10:42:57,039.039 INFO    ] Checking for camera pi updates...
[2026-06-27 10:42:57,059.059 INFO    ] 200
[2026-06-27 10:42:57,060.060 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:42:57,084.084 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:42:57,224.224 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:42:57,226.226 INFO    ] No camera update needed
[2026-06-27 10:42:57,227.227 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:42:57,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:42:57,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:42:57,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:42:59,279.279 INFO    ] ================================================
[2026-06-27 10:42:59,295.295 INFO    ] Launching Daemon at Sat Jun 27 10:42:59 IST 2026
[2026-06-27 10:42:59,307.307 INFO    ] ================================================
[2026-06-27 10:42:59,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:42:59
[2026-06-27 10:43:00,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:43:00,185.185 INFO    ] Initializing speech engine...
[2026-06-27 10:43:00,192.192 INFO    ] 2026-06-27 10:43:00
[2026-06-27 10:43:00,398.398 INFO    ] 2026-06-27 10:43:00
[2026-06-27 10:43:00,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:43:00,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:43:00,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:43:00,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:43:00,845.845 INFO    ] time= 27/06/2026 10:43:00
[2026-06-27 10:43:00,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:43:00,853.853 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:43:00,921.921 INFO    ] No existing commands found in stream
[2026-06-27 10:43:05,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:43:05,940.940 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-27 10:43:08,870.870 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:43:08,872.872 INFO    ] Checking for system updates...
[2026-06-27 10:43:08,895.895 INFO    ] 200
[2026-06-27 10:43:08,897.897 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:43:08,928.928 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:43:08,930.930 INFO    ] No update needed
[2026-06-27 10:43:08,931.931 INFO    ] Checking for camera pi updates...
[2026-06-27 10:43:08,951.951 INFO    ] 200
[2026-06-27 10:43:08,953.953 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:43:08,977.977 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:43:09,014.014 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:43:09,016.016 INFO    ] No camera update needed
[2026-06-27 10:43:09,017.017 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:43:09,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:43:09,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:43:09,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:43:11,065.065 INFO    ] ================================================
[2026-06-27 10:43:11,080.080 INFO    ] Launching Daemon at Sat Jun 27 10:43:11 IST 2026
[2026-06-27 10:43:11,091.091 INFO    ] ================================================
[2026-06-27 10:43:11,486.486 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:43:11
[2026-06-27 10:43:11,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:43:11,985.985 INFO    ] Initializing speech engine...
[2026-06-27 10:43:11,991.991 INFO    ] 2026-06-27 10:43:11
[2026-06-27 10:43:12,202.202 INFO    ] 2026-06-27 10:43:12
[2026-06-27 10:43:12,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:43:12,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:43:12,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:43:12,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:43:12,649.649 INFO    ] time= 27/06/2026 10:43:12
[2026-06-27 10:43:12,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:43:12,657.657 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:43:12,730.730 INFO    ] No existing commands found in stream
[2026-06-27 10:43:17,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:43:17,739.739 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-27 10:43:21,853.853 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 10:43:21,855.855 INFO    ] Checking for system updates...
[2026-06-27 10:43:21,877.877 INFO    ] 200
[2026-06-27 10:43:21,878.878 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:43:21,912.912 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:43:21,914.914 INFO    ] No update needed
[2026-06-27 10:43:21,916.916 INFO    ] Checking for camera pi updates...
[2026-06-27 10:43:21,936.936 INFO    ] 200
[2026-06-27 10:43:21,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:43:21,963.963 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:43:22,004.004 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:43:22,006.006 INFO    ] No camera update needed
[2026-06-27 10:43:22,007.007 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:43:22,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:43:22,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:43:22,015.015 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:43:24,056.056 INFO    ] ================================================
[2026-06-27 10:43:24,073.073 INFO    ] Launching Daemon at Sat Jun 27 10:43:24 IST 2026
[2026-06-27 10:43:24,084.084 INFO    ] ================================================
[2026-06-27 10:43:24,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:43:24
[2026-06-27 10:43:24,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:43:24,888.888 INFO    ] Initializing speech engine...
[2026-06-27 10:43:24,900.900 INFO    ] 2026-06-27 10:43:24
[2026-06-27 10:43:25,124.124 INFO    ] 2026-06-27 10:43:25
[2026-06-27 10:43:25,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:43:25,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:43:25,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:43:25,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:43:25,565.565 INFO    ] time= 27/06/2026 10:43:25
[2026-06-27 10:43:25,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:43:25,618.618 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:43:25,695.695 INFO    ] No existing commands found in stream
[2026-06-27 10:43:30,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:43:30,709.709 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-27 10:43:33,292.292 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:43:33,293.293 INFO    ] Checking for system updates...
[2026-06-27 10:43:33,314.314 INFO    ] 200
[2026-06-27 10:43:33,316.316 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:43:33,346.346 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:43:33,348.348 INFO    ] No update needed
[2026-06-27 10:43:33,349.349 INFO    ] Checking for camera pi updates...
[2026-06-27 10:43:33,370.370 INFO    ] 200
[2026-06-27 10:43:33,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:43:33,397.397 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:43:33,437.437 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:43:33,438.438 INFO    ] No camera update needed
[2026-06-27 10:43:33,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:43:33,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:43:33,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:43:33,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:43:35,487.487 INFO    ] ================================================
[2026-06-27 10:43:35,503.503 INFO    ] Launching Daemon at Sat Jun 27 10:43:35 IST 2026
[2026-06-27 10:43:35,514.514 INFO    ] ================================================
[2026-06-27 10:43:35,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:43:35
[2026-06-27 10:43:36,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:43:36,311.311 INFO    ] Initializing speech engine...
[2026-06-27 10:43:36,322.322 INFO    ] 2026-06-27 10:43:36
[2026-06-27 10:43:36,531.531 INFO    ] 2026-06-27 10:43:36
[2026-06-27 10:43:36,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:43:36,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:43:36,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:43:36,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:43:36,976.976 INFO    ] time= 27/06/2026 10:43:36
[2026-06-27 10:43:36,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:43:36,984.984 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:43:37,050.050 INFO    ] No existing commands found in stream
[2026-06-27 10:43:42,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:43:42,065.065 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-27 10:43:43,665.665 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:43:43,667.667 INFO    ] Checking for system updates...
[2026-06-27 10:43:43,689.689 INFO    ] 200
[2026-06-27 10:43:43,690.690 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:43:43,721.721 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:43:43,723.723 INFO    ] No update needed
[2026-06-27 10:43:43,725.725 INFO    ] Checking for camera pi updates...
[2026-06-27 10:43:43,745.745 INFO    ] 200
[2026-06-27 10:43:43,747.747 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:43:43,771.771 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:43:43,812.812 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:43:43,814.814 INFO    ] No camera update needed
[2026-06-27 10:43:43,815.815 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:43:43,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:43:43,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:43:43,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:43:45,862.862 INFO    ] ================================================
[2026-06-27 10:43:45,877.877 INFO    ] Launching Daemon at Sat Jun 27 10:43:45 IST 2026
[2026-06-27 10:43:45,888.888 INFO    ] ================================================
[2026-06-27 10:43:46,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:43:46
[2026-06-27 10:43:46,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:43:46,710.710 INFO    ] Initializing speech engine...
[2026-06-27 10:43:46,720.720 INFO    ] 2026-06-27 10:43:46
[2026-06-27 10:43:46,925.925 INFO    ] 2026-06-27 10:43:46
[2026-06-27 10:43:46,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:43:47,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:43:47,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:43:47,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:43:47,362.362 INFO    ] time= 27/06/2026 10:43:47
[2026-06-27 10:43:47,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:43:47,369.369 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:43:47,438.438 INFO    ] No existing commands found in stream
[2026-06-27 10:43:52,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:43:52,450.450 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-27 10:43:54,330.330 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 10:43:54,331.331 INFO    ] Checking for system updates...
[2026-06-27 10:43:54,353.353 INFO    ] 200
[2026-06-27 10:43:54,355.355 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:43:54,386.386 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:43:54,387.387 INFO    ] No update needed
[2026-06-27 10:43:54,389.389 INFO    ] Checking for camera pi updates...
[2026-06-27 10:43:54,409.409 INFO    ] 200
[2026-06-27 10:43:54,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:43:54,434.434 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:43:54,458.458 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:43:54,460.460 INFO    ] No camera update needed
[2026-06-27 10:43:54,461.461 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:43:54,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:43:54,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:43:54,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:43:56,507.507 INFO    ] ================================================
[2026-06-27 10:43:56,522.522 INFO    ] Launching Daemon at Sat Jun 27 10:43:56 IST 2026
[2026-06-27 10:43:56,534.534 INFO    ] ================================================
[2026-06-27 10:43:56,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:43:56
[2026-06-27 10:43:57,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:43:57,347.347 INFO    ] Initializing speech engine...
[2026-06-27 10:43:57,352.352 INFO    ] 2026-06-27 10:43:57
[2026-06-27 10:43:57,555.555 INFO    ] 2026-06-27 10:43:57
[2026-06-27 10:43:57,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:43:57,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:43:57,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:43:57,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:43:57,998.998 INFO    ] time= 27/06/2026 10:43:57
[2026-06-27 10:43:58,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:43:58,005.005 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:43:58,069.069 INFO    ] No existing commands found in stream
[2026-06-27 10:44:03,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:44:03,082.082 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-27 10:44:06,292.292 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:44:06,293.293 INFO    ] Checking for system updates...
[2026-06-27 10:44:06,315.315 INFO    ] 200
[2026-06-27 10:44:06,317.317 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:44:06,347.347 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:44:06,349.349 INFO    ] No update needed
[2026-06-27 10:44:06,350.350 INFO    ] Checking for camera pi updates...
[2026-06-27 10:44:06,369.369 INFO    ] 200
[2026-06-27 10:44:06,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:44:06,395.395 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:44:06,431.431 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:44:06,432.432 INFO    ] No camera update needed
[2026-06-27 10:44:06,433.433 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:44:06,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:44:06,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:44:06,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:44:08,484.484 INFO    ] ================================================
[2026-06-27 10:44:08,500.500 INFO    ] Launching Daemon at Sat Jun 27 10:44:08 IST 2026
[2026-06-27 10:44:08,511.511 INFO    ] ================================================
[2026-06-27 10:44:08,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:44:08
[2026-06-27 10:44:09,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:44:09,325.325 INFO    ] Initializing speech engine...
[2026-06-27 10:44:09,330.330 INFO    ] 2026-06-27 10:44:09
[2026-06-27 10:44:09,532.532 INFO    ] 2026-06-27 10:44:09
[2026-06-27 10:44:09,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:44:09,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:44:09,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:44:09,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:44:09,975.975 INFO    ] time= 27/06/2026 10:44:09
[2026-06-27 10:44:09,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:44:09,981.981 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:44:10,049.049 INFO    ] No existing commands found in stream
[2026-06-27 10:44:15,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:44:15,061.061 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-27 10:44:18,348.348 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 10:44:18,350.350 INFO    ] Checking for system updates...
[2026-06-27 10:44:18,370.370 INFO    ] 200
[2026-06-27 10:44:18,372.372 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:44:18,404.404 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:44:18,405.405 INFO    ] No update needed
[2026-06-27 10:44:18,407.407 INFO    ] Checking for camera pi updates...
[2026-06-27 10:44:18,426.426 INFO    ] 200
[2026-06-27 10:44:18,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:44:18,451.451 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:44:18,492.492 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:44:18,494.494 INFO    ] No camera update needed
[2026-06-27 10:44:18,495.495 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:44:18,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:44:18,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:44:18,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:44:20,541.541 INFO    ] ================================================
[2026-06-27 10:44:20,557.557 INFO    ] Launching Daemon at Sat Jun 27 10:44:20 IST 2026
[2026-06-27 10:44:20,568.568 INFO    ] ================================================
[2026-06-27 10:44:20,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:44:20
[2026-06-27 10:44:21,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:44:21,369.369 INFO    ] Initializing speech engine...
[2026-06-27 10:44:21,374.374 INFO    ] 2026-06-27 10:44:21
[2026-06-27 10:44:21,578.578 INFO    ] 2026-06-27 10:44:21
[2026-06-27 10:44:21,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:44:21,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:44:21,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:44:21,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:44:22,035.035 INFO    ] time= 27/06/2026 10:44:21
[2026-06-27 10:44:22,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:44:22,098.098 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:44:22,169.169 INFO    ] No existing commands found in stream
[2026-06-27 10:44:27,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:44:27,179.179 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-27 10:44:29,691.691 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 10:44:29,692.692 INFO    ] Checking for system updates...
[2026-06-27 10:44:29,714.714 INFO    ] 200
[2026-06-27 10:44:29,716.716 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:44:29,747.747 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:44:29,748.748 INFO    ] No update needed
[2026-06-27 10:44:29,750.750 INFO    ] Checking for camera pi updates...
[2026-06-27 10:44:29,770.770 INFO    ] 200
[2026-06-27 10:44:29,771.771 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:44:29,797.797 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:44:29,833.833 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:44:29,835.835 INFO    ] No camera update needed
[2026-06-27 10:44:29,836.836 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:44:29,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:44:29,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:44:29,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:44:31,875.875 INFO    ] ================================================
[2026-06-27 10:44:31,884.884 INFO    ] Launching Daemon at Sat Jun 27 10:44:31 IST 2026
[2026-06-27 10:44:31,890.890 INFO    ] ================================================
[2026-06-27 10:44:32,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:44:32
[2026-06-27 10:44:32,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:44:32,707.707 INFO    ] Initializing speech engine...
[2026-06-27 10:44:32,713.713 INFO    ] 2026-06-27 10:44:32
[2026-06-27 10:44:32,917.917 INFO    ] 2026-06-27 10:44:32
[2026-06-27 10:44:32,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:44:33,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:44:33,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:44:33,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:44:33,358.358 INFO    ] time= 27/06/2026 10:44:33
[2026-06-27 10:44:33,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:44:33,366.366 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:44:33,433.433 INFO    ] No existing commands found in stream
[2026-06-27 10:44:38,447.447 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:44:38,450.450 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-27 10:44:40,376.376 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 10:44:40,378.378 INFO    ] Checking for system updates...
[2026-06-27 10:44:40,399.399 INFO    ] 200
[2026-06-27 10:44:40,400.400 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:44:40,433.433 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:44:40,434.434 INFO    ] No update needed
[2026-06-27 10:44:40,436.436 INFO    ] Checking for camera pi updates...
[2026-06-27 10:44:40,458.458 INFO    ] 200
[2026-06-27 10:44:40,459.459 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:44:40,485.485 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:44:40,522.522 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:44:40,523.523 INFO    ] No camera update needed
[2026-06-27 10:44:40,524.524 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:44:40,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:44:40,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:44:40,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:44:42,571.571 INFO    ] ================================================
[2026-06-27 10:44:42,587.587 INFO    ] Launching Daemon at Sat Jun 27 10:44:42 IST 2026
[2026-06-27 10:44:42,598.598 INFO    ] ================================================
[2026-06-27 10:44:42,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:44:42
[2026-06-27 10:44:43,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:44:43,416.416 INFO    ] Initializing speech engine...
[2026-06-27 10:44:43,425.425 INFO    ] 2026-06-27 10:44:43
[2026-06-27 10:44:43,628.628 INFO    ] 2026-06-27 10:44:43
[2026-06-27 10:44:43,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:44:43,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:44:43,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:44:43,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:44:44,048.048 INFO    ] time= 27/06/2026 10:44:44
[2026-06-27 10:44:44,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:44:44,077.077 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:44:44,144.144 INFO    ] No existing commands found in stream
[2026-06-27 10:44:49,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:44:49,156.156 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-27 10:44:51,107.107 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 10:44:51,109.109 INFO    ] Checking for system updates...
[2026-06-27 10:44:51,129.129 INFO    ] 200
[2026-06-27 10:44:51,131.131 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:44:51,165.165 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:44:51,167.167 INFO    ] No update needed
[2026-06-27 10:44:51,168.168 INFO    ] Checking for camera pi updates...
[2026-06-27 10:44:51,188.188 INFO    ] 200
[2026-06-27 10:44:51,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:44:51,213.213 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:44:51,249.249 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:44:51,250.250 INFO    ] No camera update needed
[2026-06-27 10:44:51,252.252 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:44:51,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:44:51,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:44:51,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:44:53,299.299 INFO    ] ================================================
[2026-06-27 10:44:53,315.315 INFO    ] Launching Daemon at Sat Jun 27 10:44:53 IST 2026
[2026-06-27 10:44:53,326.326 INFO    ] ================================================
[2026-06-27 10:44:53,693.693 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:44:53
[2026-06-27 10:44:54,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:44:54,176.176 INFO    ] Initializing speech engine...
[2026-06-27 10:44:54,189.189 INFO    ] 2026-06-27 10:44:54
[2026-06-27 10:44:54,401.401 INFO    ] 2026-06-27 10:44:54
[2026-06-27 10:44:54,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:44:54,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:44:54,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:44:54,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:44:54,822.822 INFO    ] time= 27/06/2026 10:44:54
[2026-06-27 10:44:54,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:44:54,850.850 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:44:54,918.918 INFO    ] No existing commands found in stream
[2026-06-27 10:44:59,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:44:59,941.941 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-27 10:45:01,776.776 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:45:01,780.780 INFO    ] Checking for system updates...
[2026-06-27 10:45:01,854.854 INFO    ] 200
[2026-06-27 10:45:01,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:45:02,108.108 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:45:02,110.110 INFO    ] No update needed
[2026-06-27 10:45:02,115.115 INFO    ] Checking for camera pi updates...
[2026-06-27 10:45:02,157.157 INFO    ] 200
[2026-06-27 10:45:02,164.164 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:45:02,231.231 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:45:02,374.374 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:45:02,376.376 INFO    ] No camera update needed
[2026-06-27 10:45:02,378.378 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:45:02,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:45:02,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:45:02,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:45:04,420.420 INFO    ] ================================================
[2026-06-27 10:45:04,436.436 INFO    ] Launching Daemon at Sat Jun 27 10:45:04 IST 2026
[2026-06-27 10:45:04,447.447 INFO    ] ================================================
[2026-06-27 10:45:04,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:45:04
[2026-06-27 10:45:05,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:45:05,234.234 INFO    ] Initializing speech engine...
[2026-06-27 10:45:05,244.244 INFO    ] 2026-06-27 10:45:05
[2026-06-27 10:45:05,453.453 INFO    ] 2026-06-27 10:45:05
[2026-06-27 10:45:05,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:45:05,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:45:05,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:45:05,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:45:05,899.899 INFO    ] time= 27/06/2026 10:45:05
[2026-06-27 10:45:05,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:45:05,906.906 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:45:05,972.972 INFO    ] No existing commands found in stream
[2026-06-27 10:45:10,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:45:10,984.984 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-27 10:45:11,448.448 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:45:11,449.449 INFO    ] Checking for system updates...
[2026-06-27 10:45:11,470.470 INFO    ] 200
[2026-06-27 10:45:11,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:45:11,503.503 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:45:11,505.505 INFO    ] No update needed
[2026-06-27 10:45:11,506.506 INFO    ] Checking for camera pi updates...
[2026-06-27 10:45:11,526.526 INFO    ] 200
[2026-06-27 10:45:11,527.527 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:45:11,550.550 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:45:11,578.578 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:45:11,579.579 INFO    ] No camera update needed
[2026-06-27 10:45:11,580.580 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:45:11,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:45:11,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:45:11,587.587 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:45:13,625.625 INFO    ] ================================================
[2026-06-27 10:45:13,641.641 INFO    ] Launching Daemon at Sat Jun 27 10:45:13 IST 2026
[2026-06-27 10:45:13,652.652 INFO    ] ================================================
[2026-06-27 10:45:13,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:45:13
[2026-06-27 10:45:14,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:45:14,432.432 INFO    ] Initializing speech engine...
[2026-06-27 10:45:14,437.437 INFO    ] 2026-06-27 10:45:14
[2026-06-27 10:45:14,640.640 INFO    ] 2026-06-27 10:45:14
[2026-06-27 10:45:14,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:45:14,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:45:14,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:45:14,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:45:15,044.044 INFO    ] time= 27/06/2026 10:45:14
[2026-06-27 10:45:15,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:45:15,082.082 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:45:15,153.153 INFO    ] No existing commands found in stream
[2026-06-27 10:45:20,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:45:20,180.180 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-27 10:45:22,819.819 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 10:45:22,820.820 INFO    ] Checking for system updates...
[2026-06-27 10:45:22,841.841 INFO    ] 200
[2026-06-27 10:45:22,843.843 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:45:22,873.873 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:45:22,875.875 INFO    ] No update needed
[2026-06-27 10:45:22,876.876 INFO    ] Checking for camera pi updates...
[2026-06-27 10:45:22,896.896 INFO    ] 200
[2026-06-27 10:45:22,897.897 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:45:22,921.921 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:45:22,961.961 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:45:22,962.962 INFO    ] No camera update needed
[2026-06-27 10:45:22,964.964 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:45:22,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:45:22,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:45:22,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:45:25,009.009 INFO    ] ================================================
[2026-06-27 10:45:25,025.025 INFO    ] Launching Daemon at Sat Jun 27 10:45:25 IST 2026
[2026-06-27 10:45:25,035.035 INFO    ] ================================================
[2026-06-27 10:45:25,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:45:25
[2026-06-27 10:45:25,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:45:25,910.910 INFO    ] Initializing speech engine...
[2026-06-27 10:45:25,915.915 INFO    ] 2026-06-27 10:45:25
[2026-06-27 10:45:26,122.122 INFO    ] 2026-06-27 10:45:26
[2026-06-27 10:45:26,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:45:26,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:45:26,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:45:26,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:45:26,563.563 INFO    ] time= 27/06/2026 10:45:26
[2026-06-27 10:45:26,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:45:26,570.570 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:45:26,636.636 INFO    ] No existing commands found in stream
[2026-06-27 10:45:31,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:45:31,655.655 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-27 10:45:32,821.821 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:45:32,823.823 INFO    ] Checking for system updates...
[2026-06-27 10:45:32,844.844 INFO    ] 200
[2026-06-27 10:45:32,845.845 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:45:32,879.879 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:45:32,881.881 INFO    ] No update needed
[2026-06-27 10:45:32,882.882 INFO    ] Checking for camera pi updates...
[2026-06-27 10:45:32,903.903 INFO    ] 200
[2026-06-27 10:45:32,904.904 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:45:32,928.928 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:45:32,955.955 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:45:32,956.956 INFO    ] No camera update needed
[2026-06-27 10:45:32,957.957 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:45:32,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:45:32,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:45:32,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:45:35,005.005 INFO    ] ================================================
[2026-06-27 10:45:35,020.020 INFO    ] Launching Daemon at Sat Jun 27 10:45:35 IST 2026
[2026-06-27 10:45:35,031.031 INFO    ] ================================================
[2026-06-27 10:45:35,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:45:35
[2026-06-27 10:45:35,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:45:35,856.856 INFO    ] Initializing speech engine...
[2026-06-27 10:45:35,860.860 INFO    ] 2026-06-27 10:45:35
[2026-06-27 10:45:36,088.088 INFO    ] 2026-06-27 10:45:36
[2026-06-27 10:45:36,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:45:36,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:45:36,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:45:36,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:45:36,505.505 INFO    ] time= 27/06/2026 10:45:36
[2026-06-27 10:45:36,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:45:36,566.566 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:45:36,668.668 INFO    ] No existing commands found in stream
[2026-06-27 10:45:41,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:45:41,679.679 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-27 10:45:45,458.458 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:45:45,459.459 INFO    ] Checking for system updates...
[2026-06-27 10:45:45,481.481 INFO    ] 200
[2026-06-27 10:45:45,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:45:45,514.514 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:45:45,515.515 INFO    ] No update needed
[2026-06-27 10:45:45,517.517 INFO    ] Checking for camera pi updates...
[2026-06-27 10:45:45,536.536 INFO    ] 200
[2026-06-27 10:45:45,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:45:45,561.561 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:45:45,603.603 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:45:45,605.605 INFO    ] No camera update needed
[2026-06-27 10:45:45,606.606 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:45:45,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:45:45,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:45:45,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:45:47,655.655 INFO    ] ================================================
[2026-06-27 10:45:47,670.670 INFO    ] Launching Daemon at Sat Jun 27 10:45:47 IST 2026
[2026-06-27 10:45:47,682.682 INFO    ] ================================================
[2026-06-27 10:45:48,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:45:48
[2026-06-27 10:45:48,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:45:48,466.466 INFO    ] Initializing speech engine...
[2026-06-27 10:45:48,471.471 INFO    ] 2026-06-27 10:45:48
[2026-06-27 10:45:48,677.677 INFO    ] 2026-06-27 10:45:48
[2026-06-27 10:45:48,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:45:48,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:45:48,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:45:49,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:45:49,118.118 INFO    ] time= 27/06/2026 10:45:49
[2026-06-27 10:45:49,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:45:49,148.148 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:45:49,217.217 INFO    ] No existing commands found in stream
[2026-06-27 10:45:54,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:45:54,231.231 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-27 10:45:57,256.256 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 10:45:57,258.258 INFO    ] Checking for system updates...
[2026-06-27 10:45:57,278.278 INFO    ] 200
[2026-06-27 10:45:57,280.280 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:45:57,313.313 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:45:57,315.315 INFO    ] No update needed
[2026-06-27 10:45:57,316.316 INFO    ] Checking for camera pi updates...
[2026-06-27 10:45:57,335.335 INFO    ] 200
[2026-06-27 10:45:57,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:45:57,360.360 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:45:57,398.398 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:45:57,399.399 INFO    ] No camera update needed
[2026-06-27 10:45:57,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:45:57,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:45:57,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:45:57,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:45:59,448.448 INFO    ] ================================================
[2026-06-27 10:45:59,464.464 INFO    ] Launching Daemon at Sat Jun 27 10:45:59 IST 2026
[2026-06-27 10:45:59,474.474 INFO    ] ================================================
[2026-06-27 10:45:59,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:45:59
[2026-06-27 10:46:00,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:46:00,328.328 INFO    ] Initializing speech engine...
[2026-06-27 10:46:00,332.332 INFO    ] 2026-06-27 10:46:00
[2026-06-27 10:46:00,538.538 INFO    ] 2026-06-27 10:46:00
[2026-06-27 10:46:00,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:46:00,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:46:00,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:46:00,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:46:00,974.974 INFO    ] time= 27/06/2026 10:46:00
[2026-06-27 10:46:00,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:46:00,991.991 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:46:01,057.057 INFO    ] No existing commands found in stream
[2026-06-27 10:46:06,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:46:06,067.067 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-27 10:46:09,987.987 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:46:09,989.989 INFO    ] Checking for system updates...
[2026-06-27 10:46:10,014.014 INFO    ] 200
[2026-06-27 10:46:10,015.015 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:46:10,049.049 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:46:10,051.051 INFO    ] No update needed
[2026-06-27 10:46:10,052.052 INFO    ] Checking for camera pi updates...
[2026-06-27 10:46:10,074.074 INFO    ] 200
[2026-06-27 10:46:10,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:46:10,102.102 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:46:10,149.149 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:46:10,151.151 INFO    ] No camera update needed
[2026-06-27 10:46:10,153.153 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:46:10,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:46:10,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:46:10,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:46:12,188.188 INFO    ] ================================================
[2026-06-27 10:46:12,198.198 INFO    ] Launching Daemon at Sat Jun 27 10:46:12 IST 2026
[2026-06-27 10:46:12,204.204 INFO    ] ================================================
[2026-06-27 10:46:12,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:46:12
[2026-06-27 10:46:12,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:46:12,979.979 INFO    ] Initializing speech engine...
[2026-06-27 10:46:12,984.984 INFO    ] 2026-06-27 10:46:12
[2026-06-27 10:46:13,207.207 INFO    ] 2026-06-27 10:46:13
[2026-06-27 10:46:13,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:46:13,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:46:13,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:46:13,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:46:13,607.607 INFO    ] time= 27/06/2026 10:46:13
[2026-06-27 10:46:13,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:46:13,659.659 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:46:13,731.731 INFO    ] No existing commands found in stream
[2026-06-27 10:46:18,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:46:18,741.741 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-27 10:46:22,192.192 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 10:46:22,194.194 INFO    ] Checking for system updates...
[2026-06-27 10:46:22,215.215 INFO    ] 200
[2026-06-27 10:46:22,216.216 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:46:22,246.246 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:46:22,248.248 INFO    ] No update needed
[2026-06-27 10:46:22,249.249 INFO    ] Checking for camera pi updates...
[2026-06-27 10:46:22,269.269 INFO    ] 200
[2026-06-27 10:46:22,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:46:22,294.294 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:46:22,334.334 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:46:22,336.336 INFO    ] No camera update needed
[2026-06-27 10:46:22,337.337 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:46:22,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:46:22,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:46:22,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:46:24,382.382 INFO    ] ================================================
[2026-06-27 10:46:24,398.398 INFO    ] Launching Daemon at Sat Jun 27 10:46:24 IST 2026
[2026-06-27 10:46:24,409.409 INFO    ] ================================================
[2026-06-27 10:46:24,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:46:24
[2026-06-27 10:46:25,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:46:25,191.191 INFO    ] Initializing speech engine...
[2026-06-27 10:46:25,195.195 INFO    ] 2026-06-27 10:46:25
[2026-06-27 10:46:25,400.400 INFO    ] 2026-06-27 10:46:25
[2026-06-27 10:46:25,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:46:25,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:46:25,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:46:25,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:46:25,812.812 INFO    ] time= 27/06/2026 10:46:25
[2026-06-27 10:46:25,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:46:25,918.918 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:46:25,995.995 INFO    ] No existing commands found in stream
[2026-06-27 10:46:31,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:46:31,009.009 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-27 10:46:34,056.056 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 10:46:34,057.057 INFO    ] Checking for system updates...
[2026-06-27 10:46:34,079.079 INFO    ] 200
[2026-06-27 10:46:34,080.080 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:46:34,111.111 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:46:34,113.113 INFO    ] No update needed
[2026-06-27 10:46:34,115.115 INFO    ] Checking for camera pi updates...
[2026-06-27 10:46:34,136.136 INFO    ] 200
[2026-06-27 10:46:34,137.137 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:46:34,161.161 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:46:34,204.204 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:46:34,206.206 INFO    ] No camera update needed
[2026-06-27 10:46:34,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:46:34,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:46:34,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:46:34,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:46:36,256.256 INFO    ] ================================================
[2026-06-27 10:46:36,271.271 INFO    ] Launching Daemon at Sat Jun 27 10:46:36 IST 2026
[2026-06-27 10:46:36,282.282 INFO    ] ================================================
[2026-06-27 10:46:36,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:46:36
[2026-06-27 10:46:36,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:46:37,091.091 INFO    ] Initializing speech engine...
[2026-06-27 10:46:37,102.102 INFO    ] 2026-06-27 10:46:37
[2026-06-27 10:46:37,307.307 INFO    ] 2026-06-27 10:46:37
[2026-06-27 10:46:37,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:46:37,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:46:37,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:46:37,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:46:37,703.703 INFO    ] time= 27/06/2026 10:46:37
[2026-06-27 10:46:37,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:46:37,753.753 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:46:37,808.808 INFO    ] No existing commands found in stream
[2026-06-27 10:46:42,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:46:42,819.819 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-27 10:46:46,157.157 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:46:46,159.159 INFO    ] Checking for system updates...
[2026-06-27 10:46:46,181.181 INFO    ] 200
[2026-06-27 10:46:46,182.182 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:46:46,213.213 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:46:46,215.215 INFO    ] No update needed
[2026-06-27 10:46:46,217.217 INFO    ] Checking for camera pi updates...
[2026-06-27 10:46:46,236.236 INFO    ] 200
[2026-06-27 10:46:46,237.237 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:46:46,261.261 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:46:46,296.296 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:46:46,298.298 INFO    ] No camera update needed
[2026-06-27 10:46:46,299.299 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:46:46,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:46:46,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:46:46,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:46:48,346.346 INFO    ] ================================================
[2026-06-27 10:46:48,361.361 INFO    ] Launching Daemon at Sat Jun 27 10:46:48 IST 2026
[2026-06-27 10:46:48,372.372 INFO    ] ================================================
[2026-06-27 10:46:48,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:46:48
[2026-06-27 10:46:49,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:46:49,250.250 INFO    ] Initializing speech engine...
[2026-06-27 10:46:49,256.256 INFO    ] 2026-06-27 10:46:49
[2026-06-27 10:46:49,464.464 INFO    ] 2026-06-27 10:46:49
[2026-06-27 10:46:49,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:46:49,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:46:49,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:46:49,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:46:49,884.884 INFO    ] time= 27/06/2026 10:46:49
[2026-06-27 10:46:49,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:46:49,914.914 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:46:49,982.982 INFO    ] No existing commands found in stream
[2026-06-27 10:46:54,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:46:54,999.999 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-27 10:46:56,017.017 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 10:46:56,019.019 INFO    ] Checking for system updates...
[2026-06-27 10:46:56,041.041 INFO    ] 200
[2026-06-27 10:46:56,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:46:56,074.074 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:46:56,076.076 INFO    ] No update needed
[2026-06-27 10:46:56,077.077 INFO    ] Checking for camera pi updates...
[2026-06-27 10:46:56,098.098 INFO    ] 200
[2026-06-27 10:46:56,100.100 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:46:56,124.124 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:46:56,164.164 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:46:56,165.165 INFO    ] No camera update needed
[2026-06-27 10:46:56,167.167 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:46:56,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:46:56,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:46:56,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:46:58,216.216 INFO    ] ================================================
[2026-06-27 10:46:58,231.231 INFO    ] Launching Daemon at Sat Jun 27 10:46:58 IST 2026
[2026-06-27 10:46:58,245.245 INFO    ] ================================================
[2026-06-27 10:46:58,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:46:58
[2026-06-27 10:46:58,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:46:59,032.032 INFO    ] Initializing speech engine...
[2026-06-27 10:46:59,037.037 INFO    ] 2026-06-27 10:46:59
[2026-06-27 10:46:59,230.230 INFO    ] 2026-06-27 10:46:59
[2026-06-27 10:46:59,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:46:59,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:46:59,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:46:59,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:46:59,732.732 INFO    ] time= 27/06/2026 10:46:59
[2026-06-27 10:46:59,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:46:59,760.760 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:46:59,837.837 INFO    ] No existing commands found in stream
[2026-06-27 10:47:04,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:47:04,850.850 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-27 10:47:05,409.409 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:47:05,411.411 INFO    ] Checking for system updates...
[2026-06-27 10:47:05,432.432 INFO    ] 200
[2026-06-27 10:47:05,433.433 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:47:05,465.465 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:47:05,466.466 INFO    ] No update needed
[2026-06-27 10:47:05,468.468 INFO    ] Checking for camera pi updates...
[2026-06-27 10:47:05,488.488 INFO    ] 200
[2026-06-27 10:47:05,490.490 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:47:05,513.513 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:47:05,676.676 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:47:05,678.678 INFO    ] No camera update needed
[2026-06-27 10:47:05,679.679 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:47:05,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:47:05,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:47:05,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:47:07,726.726 INFO    ] ================================================
[2026-06-27 10:47:07,742.742 INFO    ] Launching Daemon at Sat Jun 27 10:47:07 IST 2026
[2026-06-27 10:47:07,753.753 INFO    ] ================================================
[2026-06-27 10:47:08,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:47:08
[2026-06-27 10:47:08,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:47:08,633.633 INFO    ] Initializing speech engine...
[2026-06-27 10:47:08,638.638 INFO    ] 2026-06-27 10:47:08
[2026-06-27 10:47:08,840.840 INFO    ] 2026-06-27 10:47:08
[2026-06-27 10:47:08,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:47:09,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:47:09,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:47:09,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:47:09,262.262 INFO    ] time= 27/06/2026 10:47:09
[2026-06-27 10:47:09,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:47:09,297.297 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:47:09,365.365 INFO    ] No existing commands found in stream
[2026-06-27 10:47:14,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:47:14,385.385 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-27 10:47:15,285.285 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 10:47:15,287.287 INFO    ] Checking for system updates...
[2026-06-27 10:47:15,311.311 INFO    ] 200
[2026-06-27 10:47:15,313.313 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:47:15,349.349 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:47:15,350.350 INFO    ] No update needed
[2026-06-27 10:47:15,352.352 INFO    ] Checking for camera pi updates...
[2026-06-27 10:47:15,378.378 INFO    ] 200
[2026-06-27 10:47:15,379.379 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:47:15,406.406 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:47:15,453.453 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:47:15,454.454 INFO    ] No camera update needed
[2026-06-27 10:47:15,456.456 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:47:15,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:47:15,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:47:15,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:47:17,501.501 INFO    ] ================================================
[2026-06-27 10:47:17,516.516 INFO    ] Launching Daemon at Sat Jun 27 10:47:17 IST 2026
[2026-06-27 10:47:17,528.528 INFO    ] ================================================
[2026-06-27 10:47:17,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:47:17
[2026-06-27 10:47:18,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:47:18,339.339 INFO    ] Initializing speech engine...
[2026-06-27 10:47:18,349.349 INFO    ] 2026-06-27 10:47:18
[2026-06-27 10:47:18,558.558 INFO    ] 2026-06-27 10:47:18
[2026-06-27 10:47:18,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:47:18,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:47:18,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:47:18,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:47:19,002.002 INFO    ] time= 27/06/2026 10:47:18
[2026-06-27 10:47:19,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:47:19,036.036 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:47:19,104.104 INFO    ] No existing commands found in stream
[2026-06-27 10:47:24,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:47:24,116.116 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-27 10:47:26,358.358 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:47:26,360.360 INFO    ] Checking for system updates...
[2026-06-27 10:47:26,381.381 INFO    ] 200
[2026-06-27 10:47:26,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:47:26,414.414 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:47:26,415.415 INFO    ] No update needed
[2026-06-27 10:47:26,416.416 INFO    ] Checking for camera pi updates...
[2026-06-27 10:47:26,436.436 INFO    ] 200
[2026-06-27 10:47:26,438.438 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:47:26,462.462 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:47:26,500.500 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:47:26,502.502 INFO    ] No camera update needed
[2026-06-27 10:47:26,503.503 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:47:26,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:47:26,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:47:26,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:47:28,557.557 INFO    ] ================================================
[2026-06-27 10:47:28,574.574 INFO    ] Launching Daemon at Sat Jun 27 10:47:28 IST 2026
[2026-06-27 10:47:28,585.585 INFO    ] ================================================
[2026-06-27 10:47:28,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:47:28
[2026-06-27 10:47:29,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:47:29,368.368 INFO    ] Initializing speech engine...
[2026-06-27 10:47:29,371.371 INFO    ] 2026-06-27 10:47:29
[2026-06-27 10:47:29,590.590 INFO    ] 2026-06-27 10:47:29
[2026-06-27 10:47:29,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:47:29,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:47:29,815.815 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:47:29,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:47:30,015.015 INFO    ] time= 27/06/2026 10:47:29
[2026-06-27 10:47:30,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:47:30,044.044 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:47:30,110.110 INFO    ] No existing commands found in stream
[2026-06-27 10:47:35,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:47:35,123.123 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-27 10:47:35,818.818 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 10:47:35,819.819 INFO    ] Checking for system updates...
[2026-06-27 10:47:35,840.840 INFO    ] 200
[2026-06-27 10:47:35,841.841 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:47:35,872.872 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:47:35,874.874 INFO    ] No update needed
[2026-06-27 10:47:35,875.875 INFO    ] Checking for camera pi updates...
[2026-06-27 10:47:35,895.895 INFO    ] 200
[2026-06-27 10:47:35,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:47:35,920.920 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:47:35,953.953 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:47:35,955.955 INFO    ] No camera update needed
[2026-06-27 10:47:35,956.956 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:47:35,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:47:35,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:47:35,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:47:38,009.009 INFO    ] ================================================
[2026-06-27 10:47:38,025.025 INFO    ] Launching Daemon at Sat Jun 27 10:47:38 IST 2026
[2026-06-27 10:47:38,036.036 INFO    ] ================================================
[2026-06-27 10:47:38,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:47:38
[2026-06-27 10:47:38,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:47:38,842.842 INFO    ] Initializing speech engine...
[2026-06-27 10:47:38,847.847 INFO    ] 2026-06-27 10:47:38
[2026-06-27 10:47:39,040.040 INFO    ] 2026-06-27 10:47:39
[2026-06-27 10:47:39,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:47:39,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:47:39,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:47:39,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:47:39,465.465 INFO    ] time= 27/06/2026 10:47:39
[2026-06-27 10:47:39,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:47:39,568.568 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:47:39,650.650 INFO    ] No existing commands found in stream
[2026-06-27 10:47:44,661.661 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:47:44,664.664 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-27 10:47:45,517.517 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:47:45,518.518 INFO    ] Checking for system updates...
[2026-06-27 10:47:45,539.539 INFO    ] 200
[2026-06-27 10:47:45,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:47:45,573.573 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:47:45,574.574 INFO    ] No update needed
[2026-06-27 10:47:45,576.576 INFO    ] Checking for camera pi updates...
[2026-06-27 10:47:45,596.596 INFO    ] 200
[2026-06-27 10:47:45,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:47:45,621.621 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:47:45,660.660 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:47:45,661.661 INFO    ] No camera update needed
[2026-06-27 10:47:45,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:47:45,664.664 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:47:45,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:47:45,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:47:47,711.711 INFO    ] ================================================
[2026-06-27 10:47:47,726.726 INFO    ] Launching Daemon at Sat Jun 27 10:47:47 IST 2026
[2026-06-27 10:47:47,737.737 INFO    ] ================================================
[2026-06-27 10:47:48,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:47:48
[2026-06-27 10:47:48,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:47:48,536.536 INFO    ] Initializing speech engine...
[2026-06-27 10:47:48,541.541 INFO    ] 2026-06-27 10:47:48
[2026-06-27 10:47:48,750.750 INFO    ] 2026-06-27 10:47:48
[2026-06-27 10:47:48,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:47:49,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:47:49,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:47:49,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:47:49,218.218 INFO    ] time= 27/06/2026 10:47:49
[2026-06-27 10:47:49,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:47:49,262.262 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:47:49,339.339 INFO    ] No existing commands found in stream
[2026-06-27 10:47:54,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:47:54,352.352 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-27 10:47:57,869.869 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 10:47:57,870.870 INFO    ] Checking for system updates...
[2026-06-27 10:47:57,891.891 INFO    ] 200
[2026-06-27 10:47:57,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:47:57,924.924 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:47:57,925.925 INFO    ] No update needed
[2026-06-27 10:47:57,927.927 INFO    ] Checking for camera pi updates...
[2026-06-27 10:47:57,947.947 INFO    ] 200
[2026-06-27 10:47:57,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:47:57,972.972 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:47:58,019.019 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:47:58,021.021 INFO    ] No camera update needed
[2026-06-27 10:47:58,022.022 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:47:58,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:47:58,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:47:58,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:48:00,071.071 INFO    ] ================================================
[2026-06-27 10:48:00,087.087 INFO    ] Launching Daemon at Sat Jun 27 10:48:00 IST 2026
[2026-06-27 10:48:00,099.099 INFO    ] ================================================
[2026-06-27 10:48:00,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:48:00
[2026-06-27 10:48:00,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:48:00,898.898 INFO    ] Initializing speech engine...
[2026-06-27 10:48:00,903.903 INFO    ] 2026-06-27 10:48:00
[2026-06-27 10:48:01,108.108 INFO    ] 2026-06-27 10:48:01
[2026-06-27 10:48:01,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:48:01,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:48:01,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:48:01,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:48:01,527.527 INFO    ] time= 27/06/2026 10:48:01
[2026-06-27 10:48:01,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:48:01,555.555 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:48:01,622.622 INFO    ] No existing commands found in stream
[2026-06-27 10:48:06,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:48:06,639.639 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-27 10:48:08,669.669 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 10:48:08,670.670 INFO    ] Checking for system updates...
[2026-06-27 10:48:08,717.717 INFO    ] 200
[2026-06-27 10:48:08,718.718 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:48:08,752.752 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:48:08,753.753 INFO    ] No update needed
[2026-06-27 10:48:08,755.755 INFO    ] Checking for camera pi updates...
[2026-06-27 10:48:08,775.775 INFO    ] 200
[2026-06-27 10:48:08,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:48:08,801.801 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:48:08,840.840 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:48:08,841.841 INFO    ] No camera update needed
[2026-06-27 10:48:08,843.843 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:48:08,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:48:08,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:48:08,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:48:10,889.889 INFO    ] ================================================
[2026-06-27 10:48:10,904.904 INFO    ] Launching Daemon at Sat Jun 27 10:48:10 IST 2026
[2026-06-27 10:48:10,915.915 INFO    ] ================================================
[2026-06-27 10:48:11,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:48:11
[2026-06-27 10:48:11,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:48:11,788.788 INFO    ] Initializing speech engine...
[2026-06-27 10:48:11,795.795 INFO    ] 2026-06-27 10:48:11
[2026-06-27 10:48:12,007.007 INFO    ] 2026-06-27 10:48:11
[2026-06-27 10:48:12,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:48:12,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:48:12,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:48:12,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:48:12,427.427 INFO    ] time= 27/06/2026 10:48:12
[2026-06-27 10:48:12,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:48:12,456.456 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:48:12,532.532 INFO    ] No existing commands found in stream
[2026-06-27 10:48:17,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:48:17,547.547 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-27 10:48:20,833.833 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:48:20,835.835 INFO    ] Checking for system updates...
[2026-06-27 10:48:20,855.855 INFO    ] 200
[2026-06-27 10:48:20,857.857 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:48:20,888.888 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:48:20,889.889 INFO    ] No update needed
[2026-06-27 10:48:20,890.890 INFO    ] Checking for camera pi updates...
[2026-06-27 10:48:20,910.910 INFO    ] 200
[2026-06-27 10:48:20,911.911 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:48:20,935.935 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:48:20,987.987 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:48:20,988.988 INFO    ] No camera update needed
[2026-06-27 10:48:20,989.989 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:48:20,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:48:20,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:48:20,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:48:23,036.036 INFO    ] ================================================
[2026-06-27 10:48:23,052.052 INFO    ] Launching Daemon at Sat Jun 27 10:48:23 IST 2026
[2026-06-27 10:48:23,064.064 INFO    ] ================================================
[2026-06-27 10:48:23,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:48:23
[2026-06-27 10:48:23,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:48:23,945.945 INFO    ] Initializing speech engine...
[2026-06-27 10:48:23,950.950 INFO    ] 2026-06-27 10:48:23
[2026-06-27 10:48:24,166.166 INFO    ] 2026-06-27 10:48:24
[2026-06-27 10:48:24,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:48:24,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:48:24,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:48:24,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:48:24,593.593 INFO    ] time= 27/06/2026 10:48:24
[2026-06-27 10:48:24,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:48:24,624.624 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:48:24,692.692 INFO    ] No existing commands found in stream
[2026-06-27 10:48:29,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:48:29,705.705 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-27 10:48:34,046.046 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:48:34,048.048 INFO    ] Checking for system updates...
[2026-06-27 10:48:34,070.070 INFO    ] 200
[2026-06-27 10:48:34,071.071 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:48:34,102.102 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:48:34,103.103 INFO    ] No update needed
[2026-06-27 10:48:34,105.105 INFO    ] Checking for camera pi updates...
[2026-06-27 10:48:34,124.124 INFO    ] 200
[2026-06-27 10:48:34,126.126 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:48:34,149.149 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:48:34,198.198 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:48:34,200.200 INFO    ] No camera update needed
[2026-06-27 10:48:34,201.201 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:48:34,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:48:34,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:48:34,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:48:36,248.248 INFO    ] ================================================
[2026-06-27 10:48:36,264.264 INFO    ] Launching Daemon at Sat Jun 27 10:48:36 IST 2026
[2026-06-27 10:48:36,275.275 INFO    ] ================================================
[2026-06-27 10:48:36,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:48:36
[2026-06-27 10:48:36,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:48:37,069.069 INFO    ] Initializing speech engine...
[2026-06-27 10:48:37,072.072 INFO    ] 2026-06-27 10:48:37
[2026-06-27 10:48:37,267.267 INFO    ] 2026-06-27 10:48:37
[2026-06-27 10:48:37,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:48:37,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:48:37,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:48:37,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:48:37,745.745 INFO    ] time= 27/06/2026 10:48:37
[2026-06-27 10:48:37,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:48:37,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:48:37,903.903 INFO    ] No existing commands found in stream
[2026-06-27 10:48:42,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:48:42,919.919 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-27 10:48:44,657.657 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 10:48:44,659.659 INFO    ] Checking for system updates...
[2026-06-27 10:48:44,680.680 INFO    ] 200
[2026-06-27 10:48:44,681.681 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:48:44,714.714 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:48:44,716.716 INFO    ] No update needed
[2026-06-27 10:48:44,717.717 INFO    ] Checking for camera pi updates...
[2026-06-27 10:48:44,736.736 INFO    ] 200
[2026-06-27 10:48:44,738.738 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:48:44,761.761 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:48:44,803.803 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:48:44,806.806 INFO    ] No camera update needed
[2026-06-27 10:48:44,808.808 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:48:44,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:48:44,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:48:44,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:48:46,863.863 INFO    ] ================================================
[2026-06-27 10:48:46,879.879 INFO    ] Launching Daemon at Sat Jun 27 10:48:46 IST 2026
[2026-06-27 10:48:46,890.890 INFO    ] ================================================
[2026-06-27 10:48:47,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:48:47
[2026-06-27 10:48:47,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:48:47,758.758 INFO    ] Initializing speech engine...
[2026-06-27 10:48:47,765.765 INFO    ] 2026-06-27 10:48:47
[2026-06-27 10:48:47,976.976 INFO    ] 2026-06-27 10:48:47
[2026-06-27 10:48:48,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:48:48,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:48:48,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:48:48,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:48:48,406.406 INFO    ] time= 27/06/2026 10:48:48
[2026-06-27 10:48:48,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:48:48,435.435 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:48:48,503.503 INFO    ] No existing commands found in stream
[2026-06-27 10:48:53,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:48:53,531.531 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-27 10:48:54,049.049 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:48:54,051.051 INFO    ] Checking for system updates...
[2026-06-27 10:48:54,072.072 INFO    ] 200
[2026-06-27 10:48:54,074.074 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:48:54,105.105 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:48:54,106.106 INFO    ] No update needed
[2026-06-27 10:48:54,108.108 INFO    ] Checking for camera pi updates...
[2026-06-27 10:48:54,129.129 INFO    ] 200
[2026-06-27 10:48:54,130.130 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:48:54,155.155 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:48:54,178.178 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:48:54,180.180 INFO    ] No camera update needed
[2026-06-27 10:48:54,181.181 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:48:54,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:48:54,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:48:54,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:48:56,229.229 INFO    ] ================================================
[2026-06-27 10:48:56,245.245 INFO    ] Launching Daemon at Sat Jun 27 10:48:56 IST 2026
[2026-06-27 10:48:56,255.255 INFO    ] ================================================
[2026-06-27 10:48:56,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:48:56
[2026-06-27 10:48:56,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:48:57,145.145 INFO    ] Initializing speech engine...
[2026-06-27 10:48:57,151.151 INFO    ] 2026-06-27 10:48:57
[2026-06-27 10:48:57,362.362 INFO    ] 2026-06-27 10:48:57
[2026-06-27 10:48:57,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:48:57,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:48:57,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:48:57,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:48:57,783.783 INFO    ] time= 27/06/2026 10:48:57
[2026-06-27 10:48:57,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:48:57,816.816 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:48:57,907.907 INFO    ] No existing commands found in stream
[2026-06-27 10:49:02,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:49:02,925.925 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-27 10:49:05,963.963 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 10:49:05,964.964 INFO    ] Checking for system updates...
[2026-06-27 10:49:05,985.985 INFO    ] 200
[2026-06-27 10:49:05,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:49:06,019.019 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:49:06,021.021 INFO    ] No update needed
[2026-06-27 10:49:06,022.022 INFO    ] Checking for camera pi updates...
[2026-06-27 10:49:06,042.042 INFO    ] 200
[2026-06-27 10:49:06,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:49:06,068.068 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:49:06,105.105 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:49:06,106.106 INFO    ] No camera update needed
[2026-06-27 10:49:06,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:49:06,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:49:06,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:49:06,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:49:08,156.156 INFO    ] ================================================
[2026-06-27 10:49:08,171.171 INFO    ] Launching Daemon at Sat Jun 27 10:49:08 IST 2026
[2026-06-27 10:49:08,182.182 INFO    ] ================================================
[2026-06-27 10:49:08,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:49:08
[2026-06-27 10:49:08,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:49:09,050.050 INFO    ] Initializing speech engine...
[2026-06-27 10:49:09,054.054 INFO    ] 2026-06-27 10:49:09
[2026-06-27 10:49:09,263.263 INFO    ] 2026-06-27 10:49:09
[2026-06-27 10:49:09,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:49:09,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:49:09,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:49:09,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:49:09,692.692 INFO    ] time= 27/06/2026 10:49:09
[2026-06-27 10:49:09,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:49:09,721.721 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:49:09,790.790 INFO    ] No existing commands found in stream
[2026-06-27 10:49:14,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:49:14,802.802 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-27 10:49:16,615.615 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 10:49:16,617.617 INFO    ] Checking for system updates...
[2026-06-27 10:49:16,638.638 INFO    ] 200
[2026-06-27 10:49:16,639.639 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:49:16,673.673 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:49:16,675.675 INFO    ] No update needed
[2026-06-27 10:49:16,677.677 INFO    ] Checking for camera pi updates...
[2026-06-27 10:49:16,697.697 INFO    ] 200
[2026-06-27 10:49:16,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:49:16,722.722 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:49:16,862.862 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:49:16,864.864 INFO    ] No camera update needed
[2026-06-27 10:49:16,865.865 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:49:16,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:49:16,870.870 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:49:16,873.873 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:49:18,915.915 INFO    ] ================================================
[2026-06-27 10:49:18,931.931 INFO    ] Launching Daemon at Sat Jun 27 10:49:18 IST 2026
[2026-06-27 10:49:18,942.942 INFO    ] ================================================
[2026-06-27 10:49:19,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:49:19
[2026-06-27 10:49:19,677.677 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:49:19,833.833 INFO    ] Initializing speech engine...
[2026-06-27 10:49:19,838.838 INFO    ] 2026-06-27 10:49:19
[2026-06-27 10:49:20,046.046 INFO    ] 2026-06-27 10:49:20
[2026-06-27 10:49:20,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:49:20,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:49:20,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:49:20,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:49:20,495.495 INFO    ] time= 27/06/2026 10:49:20
[2026-06-27 10:49:20,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:49:20,503.503 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:49:20,571.571 INFO    ] No existing commands found in stream
[2026-06-27 10:49:25,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:49:25,584.584 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-27 10:49:26,788.788 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 10:49:26,790.790 INFO    ] Checking for system updates...
[2026-06-27 10:49:26,810.810 INFO    ] 200
[2026-06-27 10:49:26,812.812 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:49:26,842.842 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:49:26,844.844 INFO    ] No update needed
[2026-06-27 10:49:26,845.845 INFO    ] Checking for camera pi updates...
[2026-06-27 10:49:26,864.864 INFO    ] 200
[2026-06-27 10:49:26,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:49:26,892.892 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:49:26,931.931 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:49:26,933.933 INFO    ] No camera update needed
[2026-06-27 10:49:26,934.934 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:49:26,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:49:26,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:49:26,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:49:28,982.982 INFO    ] ================================================
[2026-06-27 10:49:29,006.006 INFO    ] Launching Daemon at Sat Jun 27 10:49:29 IST 2026
[2026-06-27 10:49:29,018.018 INFO    ] ================================================
[2026-06-27 10:49:29,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:49:29
[2026-06-27 10:49:29,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:49:29,847.847 INFO    ] Initializing speech engine...
[2026-06-27 10:49:29,853.853 INFO    ] 2026-06-27 10:49:29
[2026-06-27 10:49:30,063.063 INFO    ] 2026-06-27 10:49:30
[2026-06-27 10:49:30,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:49:30,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:49:30,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:49:30,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:49:30,472.472 INFO    ] time= 27/06/2026 10:49:30
[2026-06-27 10:49:30,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:49:30,522.522 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:49:30,590.590 INFO    ] No existing commands found in stream
[2026-06-27 10:49:35,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:49:35,599.599 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-27 10:49:36,140.140 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 10:49:36,142.142 INFO    ] Checking for system updates...
[2026-06-27 10:49:36,164.164 INFO    ] 200
[2026-06-27 10:49:36,166.166 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:49:36,197.197 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:49:36,198.198 INFO    ] No update needed
[2026-06-27 10:49:36,200.200 INFO    ] Checking for camera pi updates...
[2026-06-27 10:49:36,222.222 INFO    ] 200
[2026-06-27 10:49:36,223.223 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:49:36,248.248 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:49:36,299.299 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:49:36,300.300 INFO    ] No camera update needed
[2026-06-27 10:49:36,302.302 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:49:36,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:49:36,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:49:36,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:49:38,350.350 INFO    ] ================================================
[2026-06-27 10:49:38,365.365 INFO    ] Launching Daemon at Sat Jun 27 10:49:38 IST 2026
[2026-06-27 10:49:38,376.376 INFO    ] ================================================
[2026-06-27 10:49:38,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:49:38
[2026-06-27 10:49:39,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:49:39,206.206 INFO    ] Initializing speech engine...
[2026-06-27 10:49:39,218.218 INFO    ] 2026-06-27 10:49:39
[2026-06-27 10:49:39,431.431 INFO    ] 2026-06-27 10:49:39
[2026-06-27 10:49:39,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:49:39,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:49:39,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:49:39,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:49:39,861.861 INFO    ] time= 27/06/2026 10:49:39
[2026-06-27 10:49:39,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:49:39,892.892 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:49:39,958.958 INFO    ] No existing commands found in stream
[2026-06-27 10:49:44,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:49:44,972.972 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-27 10:49:48,905.905 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 10:49:48,907.907 INFO    ] Checking for system updates...
[2026-06-27 10:49:48,928.928 INFO    ] 200
[2026-06-27 10:49:48,930.930 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:49:48,961.961 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:49:48,962.962 INFO    ] No update needed
[2026-06-27 10:49:48,963.963 INFO    ] Checking for camera pi updates...
[2026-06-27 10:49:48,983.983 INFO    ] 200
[2026-06-27 10:49:48,985.985 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:49:49,009.009 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:49:49,056.056 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:49:49,057.057 INFO    ] No camera update needed
[2026-06-27 10:49:49,058.058 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:49:49,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:49:49,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:49:49,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:49:51,109.109 INFO    ] ================================================
[2026-06-27 10:49:51,124.124 INFO    ] Launching Daemon at Sat Jun 27 10:49:51 IST 2026
[2026-06-27 10:49:51,135.135 INFO    ] ================================================
[2026-06-27 10:49:51,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:49:51
[2026-06-27 10:49:51,824.824 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:49:51,963.963 INFO    ] Initializing speech engine...
[2026-06-27 10:49:51,967.967 INFO    ] 2026-06-27 10:49:51
[2026-06-27 10:49:52,190.190 INFO    ] 2026-06-27 10:49:52
[2026-06-27 10:49:52,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:49:52,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:49:52,409.409 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:49:52,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:49:52,617.617 INFO    ] time= 27/06/2026 10:49:52
[2026-06-27 10:49:52,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:49:52,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:49:52,714.714 INFO    ] No existing commands found in stream
[2026-06-27 10:49:57,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:49:57,729.729 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-27 10:50:01,371.371 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:50:01,372.372 INFO    ] Checking for system updates...
[2026-06-27 10:50:01,394.394 INFO    ] 200
[2026-06-27 10:50:01,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:50:01,426.426 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:50:01,427.427 INFO    ] No update needed
[2026-06-27 10:50:01,429.429 INFO    ] Checking for camera pi updates...
[2026-06-27 10:50:01,448.448 INFO    ] 200
[2026-06-27 10:50:01,450.450 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:50:01,478.478 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:50:01,501.501 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:50:01,502.502 INFO    ] No camera update needed
[2026-06-27 10:50:01,504.504 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:50:01,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:50:01,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:50:01,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:50:03,546.546 INFO    ] ================================================
[2026-06-27 10:50:03,561.561 INFO    ] Launching Daemon at Sat Jun 27 10:50:03 IST 2026
[2026-06-27 10:50:03,572.572 INFO    ] ================================================
[2026-06-27 10:50:03,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:50:03
[2026-06-27 10:50:04,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:50:04,392.392 INFO    ] Initializing speech engine...
[2026-06-27 10:50:04,402.402 INFO    ] 2026-06-27 10:50:04
[2026-06-27 10:50:04,620.620 INFO    ] 2026-06-27 10:50:04
[2026-06-27 10:50:04,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:50:04,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:50:04,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:50:05,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:50:05,068.068 INFO    ] time= 27/06/2026 10:50:05
[2026-06-27 10:50:05,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:50:05,104.104 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:50:05,182.182 INFO    ] No existing commands found in stream
[2026-06-27 10:50:10,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:50:10,199.199 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-27 10:50:12,255.255 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 10:50:12,257.257 INFO    ] Checking for system updates...
[2026-06-27 10:50:12,278.278 INFO    ] 200
[2026-06-27 10:50:12,279.279 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:50:12,311.311 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:50:12,312.312 INFO    ] No update needed
[2026-06-27 10:50:12,314.314 INFO    ] Checking for camera pi updates...
[2026-06-27 10:50:12,335.335 INFO    ] 200
[2026-06-27 10:50:12,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:50:12,361.361 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:50:12,401.401 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:50:12,402.402 INFO    ] No camera update needed
[2026-06-27 10:50:12,404.404 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:50:12,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:50:12,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:50:12,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:50:14,449.449 INFO    ] ================================================
[2026-06-27 10:50:14,465.465 INFO    ] Launching Daemon at Sat Jun 27 10:50:14 IST 2026
[2026-06-27 10:50:14,476.476 INFO    ] ================================================
[2026-06-27 10:50:14,856.856 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:50:14
[2026-06-27 10:50:15,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:50:15,335.335 INFO    ] Initializing speech engine...
[2026-06-27 10:50:15,343.343 INFO    ] 2026-06-27 10:50:15
[2026-06-27 10:50:15,561.561 INFO    ] 2026-06-27 10:50:15
[2026-06-27 10:50:15,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:50:15,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:50:15,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:50:15,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:50:15,982.982 INFO    ] time= 27/06/2026 10:50:15
[2026-06-27 10:50:16,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:50:16,012.012 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:50:16,078.078 INFO    ] No existing commands found in stream
[2026-06-27 10:50:21,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:50:21,092.092 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-27 10:50:21,866.866 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 10:50:21,867.867 INFO    ] Checking for system updates...
[2026-06-27 10:50:21,890.890 INFO    ] 200
[2026-06-27 10:50:21,891.891 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:50:21,926.926 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:50:21,927.927 INFO    ] No update needed
[2026-06-27 10:50:21,929.929 INFO    ] Checking for camera pi updates...
[2026-06-27 10:50:21,948.948 INFO    ] 200
[2026-06-27 10:50:21,950.950 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:50:21,974.974 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:50:22,016.016 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:50:22,017.017 INFO    ] No camera update needed
[2026-06-27 10:50:22,019.019 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:50:22,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:50:22,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:50:22,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:50:24,067.067 INFO    ] ================================================
[2026-06-27 10:50:24,082.082 INFO    ] Launching Daemon at Sat Jun 27 10:50:24 IST 2026
[2026-06-27 10:50:24,093.093 INFO    ] ================================================
[2026-06-27 10:50:24,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:50:24
[2026-06-27 10:50:24,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:50:24,908.908 INFO    ] Initializing speech engine...
[2026-06-27 10:50:24,918.918 INFO    ] 2026-06-27 10:50:24
[2026-06-27 10:50:25,125.125 INFO    ] 2026-06-27 10:50:25
[2026-06-27 10:50:25,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:50:25,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:50:25,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:50:25,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:50:25,519.519 INFO    ] time= 27/06/2026 10:50:25
[2026-06-27 10:50:25,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:50:25,522.522 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:50:25,572.572 INFO    ] No existing commands found in stream
[2026-06-27 10:50:30,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:50:30,585.585 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-27 10:50:33,019.019 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:50:33,021.021 INFO    ] Checking for system updates...
[2026-06-27 10:50:33,042.042 INFO    ] 200
[2026-06-27 10:50:33,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:50:33,076.076 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:50:33,078.078 INFO    ] No update needed
[2026-06-27 10:50:33,079.079 INFO    ] Checking for camera pi updates...
[2026-06-27 10:50:33,099.099 INFO    ] 200
[2026-06-27 10:50:33,100.100 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:50:33,124.124 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:50:33,145.145 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:50:33,147.147 INFO    ] No camera update needed
[2026-06-27 10:50:33,148.148 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:50:33,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:50:33,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:50:33,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:50:35,193.193 INFO    ] ================================================
[2026-06-27 10:50:35,209.209 INFO    ] Launching Daemon at Sat Jun 27 10:50:35 IST 2026
[2026-06-27 10:50:35,220.220 INFO    ] ================================================
[2026-06-27 10:50:35,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:50:35
[2026-06-27 10:50:35,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:50:36,003.003 INFO    ] Initializing speech engine...
[2026-06-27 10:50:36,012.012 INFO    ] 2026-06-27 10:50:36
[2026-06-27 10:50:36,216.216 INFO    ] 2026-06-27 10:50:36
[2026-06-27 10:50:36,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:50:36,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:50:36,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:50:36,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:50:36,636.636 INFO    ] time= 27/06/2026 10:50:36
[2026-06-27 10:50:36,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:50:36,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:50:36,733.733 INFO    ] No existing commands found in stream
[2026-06-27 10:50:41,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:50:41,745.745 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-27 10:50:44,226.226 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:50:44,227.227 INFO    ] Checking for system updates...
[2026-06-27 10:50:44,248.248 INFO    ] 200
[2026-06-27 10:50:44,250.250 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:50:44,280.280 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:50:44,282.282 INFO    ] No update needed
[2026-06-27 10:50:44,283.283 INFO    ] Checking for camera pi updates...
[2026-06-27 10:50:44,310.310 INFO    ] 200
[2026-06-27 10:50:44,311.311 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:50:44,334.334 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:50:44,376.376 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:50:44,377.377 INFO    ] No camera update needed
[2026-06-27 10:50:44,378.378 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:50:44,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:50:44,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:50:44,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:50:46,423.423 INFO    ] ================================================
[2026-06-27 10:50:46,439.439 INFO    ] Launching Daemon at Sat Jun 27 10:50:46 IST 2026
[2026-06-27 10:50:46,451.451 INFO    ] ================================================
[2026-06-27 10:50:46,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:50:46
[2026-06-27 10:50:47,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:50:47,258.258 INFO    ] Initializing speech engine...
[2026-06-27 10:50:47,268.268 INFO    ] 2026-06-27 10:50:47
[2026-06-27 10:50:47,473.473 INFO    ] 2026-06-27 10:50:47
[2026-06-27 10:50:47,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:50:47,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:50:47,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:50:47,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:50:47,921.921 INFO    ] time= 27/06/2026 10:50:47
[2026-06-27 10:50:47,926.926 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:50:47,928.928 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:50:47,995.995 INFO    ] No existing commands found in stream
[2026-06-27 10:50:53,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:50:53,007.007 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-27 10:50:54,035.035 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 10:50:54,036.036 INFO    ] Checking for system updates...
[2026-06-27 10:50:54,057.057 INFO    ] 200
[2026-06-27 10:50:54,058.058 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:50:54,090.090 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:50:54,091.091 INFO    ] No update needed
[2026-06-27 10:50:54,092.092 INFO    ] Checking for camera pi updates...
[2026-06-27 10:50:54,115.115 INFO    ] 200
[2026-06-27 10:50:54,116.116 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:50:54,141.141 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:50:54,165.165 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:50:54,167.167 INFO    ] No camera update needed
[2026-06-27 10:50:54,168.168 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:50:54,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:50:54,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:50:54,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:50:56,215.215 INFO    ] ================================================
[2026-06-27 10:50:56,231.231 INFO    ] Launching Daemon at Sat Jun 27 10:50:56 IST 2026
[2026-06-27 10:50:56,242.242 INFO    ] ================================================
[2026-06-27 10:50:56,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:50:56
[2026-06-27 10:50:56,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:50:57,013.013 INFO    ] Initializing speech engine...
[2026-06-27 10:50:57,018.018 INFO    ] 2026-06-27 10:50:57
[2026-06-27 10:50:57,248.248 INFO    ] 2026-06-27 10:50:57
[2026-06-27 10:50:57,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:50:57,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:50:57,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:50:57,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:50:57,675.675 INFO    ] time= 27/06/2026 10:50:57
[2026-06-27 10:50:57,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:50:57,704.704 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:50:57,770.770 INFO    ] No existing commands found in stream
[2026-06-27 10:51:02,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:51:02,783.783 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-27 10:51:06,209.209 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:51:06,211.211 INFO    ] Checking for system updates...
[2026-06-27 10:51:06,232.232 INFO    ] 200
[2026-06-27 10:51:06,234.234 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:51:06,267.267 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:51:06,268.268 INFO    ] No update needed
[2026-06-27 10:51:06,270.270 INFO    ] Checking for camera pi updates...
[2026-06-27 10:51:06,292.292 INFO    ] 200
[2026-06-27 10:51:06,293.293 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:51:06,317.317 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:51:06,357.357 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:51:06,359.359 INFO    ] No camera update needed
[2026-06-27 10:51:06,360.360 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:51:06,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:51:06,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:51:06,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:51:08,408.408 INFO    ] ================================================
[2026-06-27 10:51:08,423.423 INFO    ] Launching Daemon at Sat Jun 27 10:51:08 IST 2026
[2026-06-27 10:51:08,434.434 INFO    ] ================================================
[2026-06-27 10:51:08,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:51:08
[2026-06-27 10:51:09,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:51:09,253.253 INFO    ] Initializing speech engine...
[2026-06-27 10:51:09,257.257 INFO    ] 2026-06-27 10:51:09
[2026-06-27 10:51:09,470.470 INFO    ] 2026-06-27 10:51:09
[2026-06-27 10:51:09,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:51:09,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:51:09,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:51:09,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:51:09,916.916 INFO    ] time= 27/06/2026 10:51:09
[2026-06-27 10:51:09,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:51:09,949.949 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:51:10,046.046 INFO    ] No existing commands found in stream
[2026-06-27 10:51:15,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:51:15,058.058 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-27 10:51:16,110.110 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 10:51:16,111.111 INFO    ] Checking for system updates...
[2026-06-27 10:51:16,132.132 INFO    ] 200
[2026-06-27 10:51:16,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:51:16,164.164 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:51:16,166.166 INFO    ] No update needed
[2026-06-27 10:51:16,167.167 INFO    ] Checking for camera pi updates...
[2026-06-27 10:51:16,186.186 INFO    ] 200
[2026-06-27 10:51:16,188.188 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:51:16,211.211 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:51:16,250.250 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:51:16,251.251 INFO    ] No camera update needed
[2026-06-27 10:51:16,252.252 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:51:16,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:51:16,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:51:16,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:51:18,298.298 INFO    ] ================================================
[2026-06-27 10:51:18,314.314 INFO    ] Launching Daemon at Sat Jun 27 10:51:18 IST 2026
[2026-06-27 10:51:18,324.324 INFO    ] ================================================
[2026-06-27 10:51:18,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:51:18
[2026-06-27 10:51:19,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:51:19,180.180 INFO    ] Initializing speech engine...
[2026-06-27 10:51:19,186.186 INFO    ] 2026-06-27 10:51:19
[2026-06-27 10:51:19,394.394 INFO    ] 2026-06-27 10:51:19
[2026-06-27 10:51:19,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:51:19,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:51:19,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:51:19,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:51:19,839.839 INFO    ] time= 27/06/2026 10:51:19
[2026-06-27 10:51:19,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:51:19,847.847 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:51:19,914.914 INFO    ] No existing commands found in stream
[2026-06-27 10:51:24,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:51:24,928.928 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-27 10:51:28,261.261 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:51:28,263.263 INFO    ] Checking for system updates...
[2026-06-27 10:51:28,285.285 INFO    ] 200
[2026-06-27 10:51:28,287.287 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:51:28,320.320 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:51:28,321.321 INFO    ] No update needed
[2026-06-27 10:51:28,322.322 INFO    ] Checking for camera pi updates...
[2026-06-27 10:51:28,342.342 INFO    ] 200
[2026-06-27 10:51:28,343.343 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:51:28,368.368 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:51:28,510.510 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:51:28,512.512 INFO    ] No camera update needed
[2026-06-27 10:51:28,513.513 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:51:28,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:51:28,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:51:28,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:51:30,561.561 INFO    ] ================================================
[2026-06-27 10:51:30,577.577 INFO    ] Launching Daemon at Sat Jun 27 10:51:30 IST 2026
[2026-06-27 10:51:30,588.588 INFO    ] ================================================
[2026-06-27 10:51:30,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:51:30
[2026-06-27 10:51:31,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:51:31,471.471 INFO    ] Initializing speech engine...
[2026-06-27 10:51:31,485.485 INFO    ] 2026-06-27 10:51:31
[2026-06-27 10:51:31,738.738 INFO    ] 2026-06-27 10:51:31
[2026-06-27 10:51:31,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:51:31,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:51:31,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:51:32,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:51:32,191.191 INFO    ] time= 27/06/2026 10:51:32
[2026-06-27 10:51:32,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:51:32,219.219 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:51:32,286.286 INFO    ] No existing commands found in stream
[2026-06-27 10:51:37,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:51:37,355.355 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-27 10:51:39,792.792 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 10:51:39,794.794 INFO    ] Checking for system updates...
[2026-06-27 10:51:39,816.816 INFO    ] 200
[2026-06-27 10:51:39,817.817 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:51:39,847.847 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:51:39,849.849 INFO    ] No update needed
[2026-06-27 10:51:39,850.850 INFO    ] Checking for camera pi updates...
[2026-06-27 10:51:39,870.870 INFO    ] 200
[2026-06-27 10:51:39,871.871 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:51:39,896.896 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:51:39,937.937 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:51:39,939.939 INFO    ] No camera update needed
[2026-06-27 10:51:39,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:51:39,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:51:39,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:51:39,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:51:41,989.989 INFO    ] ================================================
[2026-06-27 10:51:42,005.005 INFO    ] Launching Daemon at Sat Jun 27 10:51:41 IST 2026
[2026-06-27 10:51:42,016.016 INFO    ] ================================================
[2026-06-27 10:51:42,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:51:42
[2026-06-27 10:51:42,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:51:42,807.807 INFO    ] Initializing speech engine...
[2026-06-27 10:51:42,811.811 INFO    ] 2026-06-27 10:51:42
[2026-06-27 10:51:43,016.016 INFO    ] 2026-06-27 10:51:42
[2026-06-27 10:51:43,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:51:43,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:51:43,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:51:43,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:51:43,433.433 INFO    ] time= 27/06/2026 10:51:43
[2026-06-27 10:51:43,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:51:43,460.460 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:51:43,525.525 INFO    ] No existing commands found in stream
[2026-06-27 10:51:48,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:51:48,539.539 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-27 10:51:52,752.752 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 10:51:52,753.753 INFO    ] Checking for system updates...
[2026-06-27 10:51:52,774.774 INFO    ] 200
[2026-06-27 10:51:52,776.776 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:51:52,806.806 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:51:52,808.808 INFO    ] No update needed
[2026-06-27 10:51:52,809.809 INFO    ] Checking for camera pi updates...
[2026-06-27 10:51:52,830.830 INFO    ] 200
[2026-06-27 10:51:52,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:51:52,859.859 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:51:52,900.900 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:51:52,901.901 INFO    ] No camera update needed
[2026-06-27 10:51:52,902.902 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:51:52,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:51:52,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:51:52,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:51:54,948.948 INFO    ] ================================================
[2026-06-27 10:51:54,962.962 INFO    ] Launching Daemon at Sat Jun 27 10:51:54 IST 2026
[2026-06-27 10:51:54,973.973 INFO    ] ================================================
[2026-06-27 10:51:55,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:51:55
[2026-06-27 10:51:55,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:51:55,803.803 INFO    ] Initializing speech engine...
[2026-06-27 10:51:55,812.812 INFO    ] 2026-06-27 10:51:55
[2026-06-27 10:51:56,026.026 INFO    ] 2026-06-27 10:51:56
[2026-06-27 10:51:56,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:51:56,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:51:56,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:51:56,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:51:56,443.443 INFO    ] time= 27/06/2026 10:51:56
[2026-06-27 10:51:56,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:51:56,482.482 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:51:56,550.550 INFO    ] No existing commands found in stream
[2026-06-27 10:52:01,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:52:01,560.560 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-27 10:52:03,254.254 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 10:52:03,256.256 INFO    ] Checking for system updates...
[2026-06-27 10:52:03,278.278 INFO    ] 200
[2026-06-27 10:52:03,279.279 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:52:03,310.310 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:52:03,311.311 INFO    ] No update needed
[2026-06-27 10:52:03,312.312 INFO    ] Checking for camera pi updates...
[2026-06-27 10:52:03,332.332 INFO    ] 200
[2026-06-27 10:52:03,333.333 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:52:03,357.357 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:52:03,379.379 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:52:03,380.380 INFO    ] No camera update needed
[2026-06-27 10:52:03,381.381 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:52:03,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:52:03,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:52:03,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:52:05,427.427 INFO    ] ================================================
[2026-06-27 10:52:05,442.442 INFO    ] Launching Daemon at Sat Jun 27 10:52:05 IST 2026
[2026-06-27 10:52:05,453.453 INFO    ] ================================================
[2026-06-27 10:52:05,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:52:05
[2026-06-27 10:52:06,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:52:06,261.261 INFO    ] Initializing speech engine...
[2026-06-27 10:52:06,265.265 INFO    ] 2026-06-27 10:52:06
[2026-06-27 10:52:06,486.486 INFO    ] 2026-06-27 10:52:06
[2026-06-27 10:52:06,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:52:06,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:52:06,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:52:06,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:52:06,933.933 INFO    ] time= 27/06/2026 10:52:06
[2026-06-27 10:52:06,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:52:06,985.985 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:52:07,063.063 INFO    ] No existing commands found in stream
[2026-06-27 10:52:12,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:52:12,074.074 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-27 10:52:16,100.100 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:52:16,102.102 INFO    ] Checking for system updates...
[2026-06-27 10:52:16,124.124 INFO    ] 200
[2026-06-27 10:52:16,126.126 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:52:16,160.160 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:52:16,162.162 INFO    ] No update needed
[2026-06-27 10:52:16,163.163 INFO    ] Checking for camera pi updates...
[2026-06-27 10:52:16,188.188 INFO    ] 200
[2026-06-27 10:52:16,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:52:16,213.213 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:52:16,252.252 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:52:16,254.254 INFO    ] No camera update needed
[2026-06-27 10:52:16,255.255 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:52:16,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:52:16,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:52:16,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:52:18,306.306 INFO    ] ================================================
[2026-06-27 10:52:18,321.321 INFO    ] Launching Daemon at Sat Jun 27 10:52:18 IST 2026
[2026-06-27 10:52:18,333.333 INFO    ] ================================================
[2026-06-27 10:52:18,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:52:18
[2026-06-27 10:52:19,054.054 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:52:19,206.206 INFO    ] Initializing speech engine...
[2026-06-27 10:52:19,212.212 INFO    ] 2026-06-27 10:52:19
[2026-06-27 10:52:19,426.426 INFO    ] 2026-06-27 10:52:19
[2026-06-27 10:52:19,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:52:19,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:52:19,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:52:19,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:52:19,855.855 INFO    ] time= 27/06/2026 10:52:19
[2026-06-27 10:52:19,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:52:19,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:52:19,979.979 INFO    ] No existing commands found in stream
[2026-06-27 10:52:25,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:52:25,015.015 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-27 10:52:27,891.891 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:52:27,892.892 INFO    ] Checking for system updates...
[2026-06-27 10:52:27,916.916 INFO    ] 200
[2026-06-27 10:52:27,917.917 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:52:27,950.950 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:52:27,951.951 INFO    ] No update needed
[2026-06-27 10:52:27,953.953 INFO    ] Checking for camera pi updates...
[2026-06-27 10:52:27,974.974 INFO    ] 200
[2026-06-27 10:52:27,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:52:27,999.999 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:52:28,021.021 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:52:28,022.022 INFO    ] No camera update needed
[2026-06-27 10:52:28,024.024 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:52:28,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:52:28,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:52:28,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:52:30,067.067 INFO    ] ================================================
[2026-06-27 10:52:30,076.076 INFO    ] Launching Daemon at Sat Jun 27 10:52:30 IST 2026
[2026-06-27 10:52:30,082.082 INFO    ] ================================================
[2026-06-27 10:52:30,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:52:30
[2026-06-27 10:52:30,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:52:30,900.900 INFO    ] Initializing speech engine...
[2026-06-27 10:52:30,905.905 INFO    ] 2026-06-27 10:52:30
[2026-06-27 10:52:31,115.115 INFO    ] 2026-06-27 10:52:31
[2026-06-27 10:52:31,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:52:31,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:52:31,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:52:31,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:52:31,554.554 INFO    ] time= 27/06/2026 10:52:31
[2026-06-27 10:52:31,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:52:31,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:52:31,661.661 INFO    ] No existing commands found in stream
[2026-06-27 10:52:36,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:52:36,680.680 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-27 10:52:37,954.954 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 10:52:37,956.956 INFO    ] Checking for system updates...
[2026-06-27 10:52:37,977.977 INFO    ] 200
[2026-06-27 10:52:37,979.979 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:52:38,009.009 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:52:38,010.010 INFO    ] No update needed
[2026-06-27 10:52:38,012.012 INFO    ] Checking for camera pi updates...
[2026-06-27 10:52:38,031.031 INFO    ] 200
[2026-06-27 10:52:38,032.032 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:52:38,056.056 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:52:38,091.091 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:52:38,092.092 INFO    ] No camera update needed
[2026-06-27 10:52:38,094.094 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:52:38,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:52:38,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:52:38,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:52:40,142.142 INFO    ] ================================================
[2026-06-27 10:52:40,157.157 INFO    ] Launching Daemon at Sat Jun 27 10:52:40 IST 2026
[2026-06-27 10:52:40,167.167 INFO    ] ================================================
[2026-06-27 10:52:40,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:52:40
[2026-06-27 10:52:40,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:52:40,993.993 INFO    ] Initializing speech engine...
[2026-06-27 10:52:40,998.998 INFO    ] 2026-06-27 10:52:40
[2026-06-27 10:52:41,204.204 INFO    ] 2026-06-27 10:52:41
[2026-06-27 10:52:41,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:52:41,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:52:41,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:52:41,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:52:41,628.628 INFO    ] time= 27/06/2026 10:52:41
[2026-06-27 10:52:41,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:52:41,658.658 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:52:41,726.726 INFO    ] No existing commands found in stream
[2026-06-27 10:52:46,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:52:46,738.738 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-27 10:52:48,014.014 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:52:48,016.016 INFO    ] Checking for system updates...
[2026-06-27 10:52:48,036.036 INFO    ] 200
[2026-06-27 10:52:48,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:52:48,068.068 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:52:48,069.069 INFO    ] No update needed
[2026-06-27 10:52:48,070.070 INFO    ] Checking for camera pi updates...
[2026-06-27 10:52:48,091.091 INFO    ] 200
[2026-06-27 10:52:48,092.092 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:52:48,118.118 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:52:48,156.156 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:52:48,157.157 INFO    ] No camera update needed
[2026-06-27 10:52:48,158.158 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:52:48,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:52:48,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:52:48,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:52:50,204.204 INFO    ] ================================================
[2026-06-27 10:52:50,219.219 INFO    ] Launching Daemon at Sat Jun 27 10:52:50 IST 2026
[2026-06-27 10:52:50,230.230 INFO    ] ================================================
[2026-06-27 10:52:50,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:52:50
[2026-06-27 10:52:50,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:52:51,038.038 INFO    ] Initializing speech engine...
[2026-06-27 10:52:51,043.043 INFO    ] 2026-06-27 10:52:51
[2026-06-27 10:52:51,277.277 INFO    ] 2026-06-27 10:52:51
[2026-06-27 10:52:51,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:52:51,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:52:51,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:52:51,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:52:51,712.712 INFO    ] time= 27/06/2026 10:52:51
[2026-06-27 10:52:51,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:52:51,759.759 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:52:51,836.836 INFO    ] No existing commands found in stream
[2026-06-27 10:52:56,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:52:56,848.848 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-27 10:52:57,551.551 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 10:52:57,552.552 INFO    ] Checking for system updates...
[2026-06-27 10:52:57,573.573 INFO    ] 200
[2026-06-27 10:52:57,575.575 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:52:57,608.608 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:52:57,609.609 INFO    ] No update needed
[2026-06-27 10:52:57,610.610 INFO    ] Checking for camera pi updates...
[2026-06-27 10:52:57,630.630 INFO    ] 200
[2026-06-27 10:52:57,631.631 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:52:57,656.656 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:52:57,697.697 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:52:57,698.698 INFO    ] No camera update needed
[2026-06-27 10:52:57,699.699 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:52:57,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:52:57,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:52:57,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:52:59,746.746 INFO    ] ================================================
[2026-06-27 10:52:59,762.762 INFO    ] Launching Daemon at Sat Jun 27 10:52:59 IST 2026
[2026-06-27 10:52:59,778.778 INFO    ] ================================================
[2026-06-27 10:53:00,124.124 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:53:00
[2026-06-27 10:53:00,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:53:00,580.580 INFO    ] Initializing speech engine...
[2026-06-27 10:53:00,590.590 INFO    ] 2026-06-27 10:53:00
[2026-06-27 10:53:00,797.797 INFO    ] 2026-06-27 10:53:00
[2026-06-27 10:53:00,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:53:01,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:53:01,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:53:01,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:53:01,210.210 INFO    ] time= 27/06/2026 10:53:01
[2026-06-27 10:53:01,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:53:01,249.249 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:53:01,318.318 INFO    ] No existing commands found in stream
[2026-06-27 10:53:06,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:53:06,329.329 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-27 10:53:10,037.037 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:53:10,039.039 INFO    ] Checking for system updates...
[2026-06-27 10:53:10,060.060 INFO    ] 200
[2026-06-27 10:53:10,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:53:10,093.093 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:53:10,095.095 INFO    ] No update needed
[2026-06-27 10:53:10,096.096 INFO    ] Checking for camera pi updates...
[2026-06-27 10:53:10,116.116 INFO    ] 200
[2026-06-27 10:53:10,118.118 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:53:10,142.142 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:53:10,179.179 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:53:10,181.181 INFO    ] No camera update needed
[2026-06-27 10:53:10,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:53:10,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:53:10,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:53:10,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:53:12,227.227 INFO    ] ================================================
[2026-06-27 10:53:12,242.242 INFO    ] Launching Daemon at Sat Jun 27 10:53:12 IST 2026
[2026-06-27 10:53:12,253.253 INFO    ] ================================================
[2026-06-27 10:53:12,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:53:12
[2026-06-27 10:53:12,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:53:13,133.133 INFO    ] Initializing speech engine...
[2026-06-27 10:53:13,140.140 INFO    ] 2026-06-27 10:53:13
[2026-06-27 10:53:13,341.341 INFO    ] 2026-06-27 10:53:13
[2026-06-27 10:53:13,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:53:13,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:53:13,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:53:13,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:53:13,761.761 INFO    ] time= 27/06/2026 10:53:13
[2026-06-27 10:53:13,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:53:13,791.791 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:53:13,881.881 INFO    ] No existing commands found in stream
[2026-06-27 10:53:18,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:53:18,898.898 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-27 10:53:22,417.417 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:53:22,419.419 INFO    ] Checking for system updates...
[2026-06-27 10:53:22,442.442 INFO    ] 200
[2026-06-27 10:53:22,443.443 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:53:22,475.475 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:53:22,476.476 INFO    ] No update needed
[2026-06-27 10:53:22,478.478 INFO    ] Checking for camera pi updates...
[2026-06-27 10:53:22,498.498 INFO    ] 200
[2026-06-27 10:53:22,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:53:22,523.523 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:53:22,569.569 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:53:22,571.571 INFO    ] No camera update needed
[2026-06-27 10:53:22,572.572 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:53:22,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:53:22,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:53:22,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:53:24,620.620 INFO    ] ================================================
[2026-06-27 10:53:24,636.636 INFO    ] Launching Daemon at Sat Jun 27 10:53:24 IST 2026
[2026-06-27 10:53:24,647.647 INFO    ] ================================================
[2026-06-27 10:53:25,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:53:25
[2026-06-27 10:53:25,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:53:25,490.490 INFO    ] Initializing speech engine...
[2026-06-27 10:53:25,493.493 INFO    ] 2026-06-27 10:53:25
[2026-06-27 10:53:25,714.714 INFO    ] 2026-06-27 10:53:25
[2026-06-27 10:53:25,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:53:25,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:53:25,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:53:26,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:53:26,141.141 INFO    ] time= 27/06/2026 10:53:26
[2026-06-27 10:53:26,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:53:26,171.171 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:53:26,239.239 INFO    ] No existing commands found in stream
[2026-06-27 10:53:31,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:53:31,251.251 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-27 10:53:32,122.122 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 10:53:32,124.124 INFO    ] Checking for system updates...
[2026-06-27 10:53:32,148.148 INFO    ] 200
[2026-06-27 10:53:32,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:53:32,191.191 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:53:32,192.192 INFO    ] No update needed
[2026-06-27 10:53:32,194.194 INFO    ] Checking for camera pi updates...
[2026-06-27 10:53:32,221.221 INFO    ] 200
[2026-06-27 10:53:32,223.223 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:53:32,250.250 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:53:32,387.387 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:53:32,389.389 INFO    ] No camera update needed
[2026-06-27 10:53:32,391.391 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:53:32,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:53:32,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:53:32,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:53:34,441.441 INFO    ] ================================================
[2026-06-27 10:53:34,457.457 INFO    ] Launching Daemon at Sat Jun 27 10:53:34 IST 2026
[2026-06-27 10:53:34,468.468 INFO    ] ================================================
[2026-06-27 10:53:34,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:53:34
[2026-06-27 10:53:35,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:53:35,316.316 INFO    ] Initializing speech engine...
[2026-06-27 10:53:35,322.322 INFO    ] 2026-06-27 10:53:35
[2026-06-27 10:53:35,533.533 INFO    ] 2026-06-27 10:53:35
[2026-06-27 10:53:35,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:53:35,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:53:35,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:53:35,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:53:35,961.961 INFO    ] time= 27/06/2026 10:53:35
[2026-06-27 10:53:35,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:53:35,991.991 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:53:36,059.059 INFO    ] No existing commands found in stream
[2026-06-27 10:53:41,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:53:41,072.072 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-27 10:53:41,697.697 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 10:53:41,699.699 INFO    ] Checking for system updates...
[2026-06-27 10:53:41,720.720 INFO    ] 200
[2026-06-27 10:53:41,721.721 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:53:41,752.752 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:53:41,754.754 INFO    ] No update needed
[2026-06-27 10:53:41,756.756 INFO    ] Checking for camera pi updates...
[2026-06-27 10:53:41,776.776 INFO    ] 200
[2026-06-27 10:53:41,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:53:41,802.802 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:53:41,841.841 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:53:41,842.842 INFO    ] No camera update needed
[2026-06-27 10:53:41,844.844 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:53:41,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:53:41,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:53:41,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:53:43,893.893 INFO    ] ================================================
[2026-06-27 10:53:43,909.909 INFO    ] Launching Daemon at Sat Jun 27 10:53:43 IST 2026
[2026-06-27 10:53:43,920.920 INFO    ] ================================================
[2026-06-27 10:53:44,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:53:44
[2026-06-27 10:53:44,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:53:44,795.795 INFO    ] Initializing speech engine...
[2026-06-27 10:53:44,808.808 INFO    ] 2026-06-27 10:53:44
[2026-06-27 10:53:45,024.024 INFO    ] 2026-06-27 10:53:44
[2026-06-27 10:53:45,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:53:45,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:53:45,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:53:45,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:53:45,445.445 INFO    ] time= 27/06/2026 10:53:45
[2026-06-27 10:53:45,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:53:45,475.475 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:53:45,542.542 INFO    ] No existing commands found in stream
[2026-06-27 10:53:50,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:53:50,555.555 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-27 10:53:52,761.761 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 10:53:52,762.762 INFO    ] Checking for system updates...
[2026-06-27 10:53:52,784.784 INFO    ] 200
[2026-06-27 10:53:52,785.785 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:53:52,816.816 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:53:52,817.817 INFO    ] No update needed
[2026-06-27 10:53:52,819.819 INFO    ] Checking for camera pi updates...
[2026-06-27 10:53:52,839.839 INFO    ] 200
[2026-06-27 10:53:52,840.840 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:53:52,864.864 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:53:52,907.907 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:53:52,908.908 INFO    ] No camera update needed
[2026-06-27 10:53:52,910.910 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:53:52,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:53:52,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:53:52,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:53:54,958.958 INFO    ] ================================================
[2026-06-27 10:53:54,974.974 INFO    ] Launching Daemon at Sat Jun 27 10:53:54 IST 2026
[2026-06-27 10:53:54,986.986 INFO    ] ================================================
[2026-06-27 10:53:55,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:53:55
[2026-06-27 10:53:55,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:53:55,794.794 INFO    ] Initializing speech engine...
[2026-06-27 10:53:55,797.797 INFO    ] 2026-06-27 10:53:55
[2026-06-27 10:53:56,017.017 INFO    ] 2026-06-27 10:53:55
[2026-06-27 10:53:56,046.046 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:53:56,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:53:56,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:53:56,395.395 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:53:56,444.444 INFO    ] time= 27/06/2026 10:53:56
[2026-06-27 10:53:56,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:53:56,473.473 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:53:56,539.539 INFO    ] No existing commands found in stream
[2026-06-27 10:54:01,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:54:01,547.547 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-27 10:54:04,274.274 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 10:54:04,276.276 INFO    ] Checking for system updates...
[2026-06-27 10:54:04,297.297 INFO    ] 200
[2026-06-27 10:54:04,298.298 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:54:04,328.328 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:54:04,329.329 INFO    ] No update needed
[2026-06-27 10:54:04,331.331 INFO    ] Checking for camera pi updates...
[2026-06-27 10:54:04,350.350 INFO    ] 200
[2026-06-27 10:54:04,351.351 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:54:04,375.375 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:54:04,412.412 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:54:04,414.414 INFO    ] No camera update needed
[2026-06-27 10:54:04,415.415 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:54:04,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:54:04,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:54:04,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:54:06,462.462 INFO    ] ================================================
[2026-06-27 10:54:06,477.477 INFO    ] Launching Daemon at Sat Jun 27 10:54:06 IST 2026
[2026-06-27 10:54:06,488.488 INFO    ] ================================================
[2026-06-27 10:54:06,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:54:06
[2026-06-27 10:54:07,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:54:07,295.295 INFO    ] Initializing speech engine...
[2026-06-27 10:54:07,299.299 INFO    ] 2026-06-27 10:54:07
[2026-06-27 10:54:07,519.519 INFO    ] 2026-06-27 10:54:07
[2026-06-27 10:54:07,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:54:07,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:54:07,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:54:07,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:54:07,926.926 INFO    ] time= 27/06/2026 10:54:07
[2026-06-27 10:54:07,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:54:07,973.973 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:54:08,046.046 INFO    ] No existing commands found in stream
[2026-06-27 10:54:13,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:54:13,058.058 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-27 10:54:16,734.734 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:54:16,736.736 INFO    ] Checking for system updates...
[2026-06-27 10:54:16,758.758 INFO    ] 200
[2026-06-27 10:54:16,759.759 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:54:16,790.790 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:54:16,791.791 INFO    ] No update needed
[2026-06-27 10:54:16,793.793 INFO    ] Checking for camera pi updates...
[2026-06-27 10:54:16,812.812 INFO    ] 200
[2026-06-27 10:54:16,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:54:16,837.837 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:54:16,874.874 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:54:16,876.876 INFO    ] No camera update needed
[2026-06-27 10:54:16,877.877 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:54:16,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:54:16,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:54:16,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:54:18,926.926 INFO    ] ================================================
[2026-06-27 10:54:18,941.941 INFO    ] Launching Daemon at Sat Jun 27 10:54:18 IST 2026
[2026-06-27 10:54:18,952.952 INFO    ] ================================================
[2026-06-27 10:54:19,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:54:19
[2026-06-27 10:54:19,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:54:19,833.833 INFO    ] Initializing speech engine...
[2026-06-27 10:54:19,838.838 INFO    ] 2026-06-27 10:54:19
[2026-06-27 10:54:20,047.047 INFO    ] 2026-06-27 10:54:20
[2026-06-27 10:54:20,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:54:20,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:54:20,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:54:20,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:54:20,469.469 INFO    ] time= 27/06/2026 10:54:20
[2026-06-27 10:54:20,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:54:20,497.497 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:54:20,564.564 INFO    ] No existing commands found in stream
[2026-06-27 10:54:25,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:54:25,576.576 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-27 10:54:26,079.079 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:54:26,081.081 INFO    ] Checking for system updates...
[2026-06-27 10:54:26,107.107 INFO    ] 200
[2026-06-27 10:54:26,109.109 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:54:26,139.139 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:54:26,141.141 INFO    ] No update needed
[2026-06-27 10:54:26,142.142 INFO    ] Checking for camera pi updates...
[2026-06-27 10:54:26,162.162 INFO    ] 200
[2026-06-27 10:54:26,164.164 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:54:26,188.188 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:54:26,225.225 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:54:26,227.227 INFO    ] No camera update needed
[2026-06-27 10:54:26,228.228 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:54:26,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:54:26,233.233 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:54:26,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:54:28,275.275 INFO    ] ================================================
[2026-06-27 10:54:28,290.290 INFO    ] Launching Daemon at Sat Jun 27 10:54:28 IST 2026
[2026-06-27 10:54:28,300.300 INFO    ] ================================================
[2026-06-27 10:54:28,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:54:28
[2026-06-27 10:54:28,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:54:29,096.096 INFO    ] Initializing speech engine...
[2026-06-27 10:54:29,106.106 INFO    ] 2026-06-27 10:54:29
[2026-06-27 10:54:29,310.310 INFO    ] 2026-06-27 10:54:29
[2026-06-27 10:54:29,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:54:29,523.523 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:54:29,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:54:29,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:54:29,727.727 INFO    ] time= 27/06/2026 10:54:29
[2026-06-27 10:54:29,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:54:29,760.760 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:54:29,827.827 INFO    ] No existing commands found in stream
[2026-06-27 10:54:34,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:54:34,844.844 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-27 10:54:37,320.320 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 10:54:37,321.321 INFO    ] Checking for system updates...
[2026-06-27 10:54:37,342.342 INFO    ] 200
[2026-06-27 10:54:37,344.344 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:54:37,375.375 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:54:37,376.376 INFO    ] No update needed
[2026-06-27 10:54:37,377.377 INFO    ] Checking for camera pi updates...
[2026-06-27 10:54:37,398.398 INFO    ] 200
[2026-06-27 10:54:37,399.399 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:54:37,423.423 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:54:37,460.460 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:54:37,462.462 INFO    ] No camera update needed
[2026-06-27 10:54:37,463.463 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:54:37,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:54:37,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:54:37,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:54:39,511.511 INFO    ] ================================================
[2026-06-27 10:54:39,527.527 INFO    ] Launching Daemon at Sat Jun 27 10:54:39 IST 2026
[2026-06-27 10:54:39,537.537 INFO    ] ================================================
[2026-06-27 10:54:39,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:54:39
[2026-06-27 10:54:40,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:54:40,324.324 INFO    ] Initializing speech engine...
[2026-06-27 10:54:40,327.327 INFO    ] 2026-06-27 10:54:40
[2026-06-27 10:54:40,544.544 INFO    ] 2026-06-27 10:54:40
[2026-06-27 10:54:40,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:54:40,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:54:40,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:54:40,896.896 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:54:40,950.950 INFO    ] time= 27/06/2026 10:54:40
[2026-06-27 10:54:40,987.987 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:54:40,989.989 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:54:41,059.059 INFO    ] No existing commands found in stream
[2026-06-27 10:54:46,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:54:46,072.072 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-27 10:54:46,733.733 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:54:46,735.735 INFO    ] Checking for system updates...
[2026-06-27 10:54:46,756.756 INFO    ] 200
[2026-06-27 10:54:46,757.757 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:54:46,788.788 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:54:46,790.790 INFO    ] No update needed
[2026-06-27 10:54:46,791.791 INFO    ] Checking for camera pi updates...
[2026-06-27 10:54:46,811.811 INFO    ] 200
[2026-06-27 10:54:46,812.812 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:54:46,838.838 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:54:46,884.884 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:54:46,886.886 INFO    ] No camera update needed
[2026-06-27 10:54:46,887.887 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:54:46,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:54:46,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:54:46,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:54:48,935.935 INFO    ] ================================================
[2026-06-27 10:54:48,951.951 INFO    ] Launching Daemon at Sat Jun 27 10:54:48 IST 2026
[2026-06-27 10:54:48,961.961 INFO    ] ================================================
[2026-06-27 10:54:49,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:54:49
[2026-06-27 10:54:49,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:54:49,838.838 INFO    ] Initializing speech engine...
[2026-06-27 10:54:49,843.843 INFO    ] 2026-06-27 10:54:49
[2026-06-27 10:54:50,048.048 INFO    ] 2026-06-27 10:54:50
[2026-06-27 10:54:50,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:54:50,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:54:50,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:54:50,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:54:50,454.454 INFO    ] time= 27/06/2026 10:54:50
[2026-06-27 10:54:50,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:54:50,492.492 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:54:50,562.562 INFO    ] No existing commands found in stream
[2026-06-27 10:54:55,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:54:55,576.576 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-27 10:54:59,013.013 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 10:54:59,015.015 INFO    ] Checking for system updates...
[2026-06-27 10:54:59,036.036 INFO    ] 200
[2026-06-27 10:54:59,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:54:59,068.068 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:54:59,070.070 INFO    ] No update needed
[2026-06-27 10:54:59,071.071 INFO    ] Checking for camera pi updates...
[2026-06-27 10:54:59,091.091 INFO    ] 200
[2026-06-27 10:54:59,092.092 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:54:59,118.118 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:54:59,155.155 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:54:59,157.157 INFO    ] No camera update needed
[2026-06-27 10:54:59,158.158 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:54:59,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:54:59,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:54:59,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:55:01,205.205 INFO    ] ================================================
[2026-06-27 10:55:01,220.220 INFO    ] Launching Daemon at Sat Jun 27 10:55:01 IST 2026
[2026-06-27 10:55:01,231.231 INFO    ] ================================================
[2026-06-27 10:55:01,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:55:01
[2026-06-27 10:55:02,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:55:02,312.312 INFO    ] Initializing speech engine...
[2026-06-27 10:55:02,318.318 INFO    ] 2026-06-27 10:55:02
[2026-06-27 10:55:02,537.537 INFO    ] 2026-06-27 10:55:02
[2026-06-27 10:55:02,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:55:02,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:55:02,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:55:02,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:55:03,041.041 INFO    ] time= 27/06/2026 10:55:02
[2026-06-27 10:55:03,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:55:03,083.083 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:55:03,160.160 INFO    ] No existing commands found in stream
[2026-06-27 10:55:08,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:55:08,173.173 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-27 10:55:12,449.449 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:55:12,451.451 INFO    ] Checking for system updates...
[2026-06-27 10:55:12,471.471 INFO    ] 200
[2026-06-27 10:55:12,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:55:12,504.504 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:55:12,505.505 INFO    ] No update needed
[2026-06-27 10:55:12,506.506 INFO    ] Checking for camera pi updates...
[2026-06-27 10:55:12,526.526 INFO    ] 200
[2026-06-27 10:55:12,527.527 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:55:12,552.552 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:55:12,599.599 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:55:12,600.600 INFO    ] No camera update needed
[2026-06-27 10:55:12,601.601 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:55:12,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:55:12,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:55:12,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:55:14,649.649 INFO    ] ================================================
[2026-06-27 10:55:14,665.665 INFO    ] Launching Daemon at Sat Jun 27 10:55:14 IST 2026
[2026-06-27 10:55:14,676.676 INFO    ] ================================================
[2026-06-27 10:55:15,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:55:15
[2026-06-27 10:55:15,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:55:15,473.473 INFO    ] Initializing speech engine...
[2026-06-27 10:55:15,483.483 INFO    ] 2026-06-27 10:55:15
[2026-06-27 10:55:15,689.689 INFO    ] 2026-06-27 10:55:15
[2026-06-27 10:55:15,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:55:15,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:55:15,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:55:16,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:55:16,106.106 INFO    ] time= 27/06/2026 10:55:16
[2026-06-27 10:55:16,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:55:16,135.135 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:55:16,202.202 INFO    ] No existing commands found in stream
[2026-06-27 10:55:21,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:55:21,214.214 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-27 10:55:22,292.292 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 10:55:22,293.293 INFO    ] Checking for system updates...
[2026-06-27 10:55:22,314.314 INFO    ] 200
[2026-06-27 10:55:22,315.315 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:55:22,345.345 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:55:22,347.347 INFO    ] No update needed
[2026-06-27 10:55:22,348.348 INFO    ] Checking for camera pi updates...
[2026-06-27 10:55:22,367.367 INFO    ] 200
[2026-06-27 10:55:22,369.369 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:55:22,393.393 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:55:22,430.430 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:55:22,432.432 INFO    ] No camera update needed
[2026-06-27 10:55:22,433.433 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:55:22,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:55:22,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:55:22,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:55:24,479.479 INFO    ] ================================================
[2026-06-27 10:55:24,495.495 INFO    ] Launching Daemon at Sat Jun 27 10:55:24 IST 2026
[2026-06-27 10:55:24,506.506 INFO    ] ================================================
[2026-06-27 10:55:24,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:55:24
[2026-06-27 10:55:25,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:55:25,303.303 INFO    ] Initializing speech engine...
[2026-06-27 10:55:25,308.308 INFO    ] 2026-06-27 10:55:25
[2026-06-27 10:55:25,512.512 INFO    ] 2026-06-27 10:55:25
[2026-06-27 10:55:25,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:55:25,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:55:25,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:55:25,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:55:25,942.942 INFO    ] time= 27/06/2026 10:55:25
[2026-06-27 10:55:25,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:55:25,958.958 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:55:26,023.023 INFO    ] No existing commands found in stream
[2026-06-27 10:55:31,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:55:31,036.036 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-27 10:55:34,584.584 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 10:55:34,585.585 INFO    ] Checking for system updates...
[2026-06-27 10:55:34,607.607 INFO    ] 200
[2026-06-27 10:55:34,608.608 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:55:34,641.641 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:55:34,643.643 INFO    ] No update needed
[2026-06-27 10:55:34,644.644 INFO    ] Checking for camera pi updates...
[2026-06-27 10:55:34,666.666 INFO    ] 200
[2026-06-27 10:55:34,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:55:34,691.691 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:55:34,830.830 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:55:34,832.832 INFO    ] No camera update needed
[2026-06-27 10:55:34,833.833 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:55:34,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:55:34,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:55:34,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:55:36,878.878 INFO    ] ================================================
[2026-06-27 10:55:36,895.895 INFO    ] Launching Daemon at Sat Jun 27 10:55:36 IST 2026
[2026-06-27 10:55:36,906.906 INFO    ] ================================================
[2026-06-27 10:55:37,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:55:37
[2026-06-27 10:55:37,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:55:37,746.746 INFO    ] Initializing speech engine...
[2026-06-27 10:55:37,753.753 INFO    ] 2026-06-27 10:55:37
[2026-06-27 10:55:37,961.961 INFO    ] 2026-06-27 10:55:37
[2026-06-27 10:55:37,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:55:38,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:55:38,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:55:38,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:55:38,381.381 INFO    ] time= 27/06/2026 10:55:38
[2026-06-27 10:55:38,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:55:38,410.410 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:55:38,477.477 INFO    ] No existing commands found in stream
[2026-06-27 10:55:43,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:55:43,490.490 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-27 10:55:46,887.887 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 10:55:46,889.889 INFO    ] Checking for system updates...
[2026-06-27 10:55:46,909.909 INFO    ] 200
[2026-06-27 10:55:46,911.911 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:55:46,941.941 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:55:46,943.943 INFO    ] No update needed
[2026-06-27 10:55:46,944.944 INFO    ] Checking for camera pi updates...
[2026-06-27 10:55:46,965.965 INFO    ] 200
[2026-06-27 10:55:46,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:55:46,991.991 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:55:47,028.028 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:55:47,030.030 INFO    ] No camera update needed
[2026-06-27 10:55:47,031.031 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:55:47,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:55:47,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:55:47,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:55:49,078.078 INFO    ] ================================================
[2026-06-27 10:55:49,094.094 INFO    ] Launching Daemon at Sat Jun 27 10:55:49 IST 2026
[2026-06-27 10:55:49,109.109 INFO    ] ================================================
[2026-06-27 10:55:49,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:55:49
[2026-06-27 10:55:49,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:55:49,919.919 INFO    ] Initializing speech engine...
[2026-06-27 10:55:49,927.927 INFO    ] 2026-06-27 10:55:49
[2026-06-27 10:55:50,141.141 INFO    ] 2026-06-27 10:55:50
[2026-06-27 10:55:50,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:55:50,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:55:50,367.367 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:55:50,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:55:50,541.541 INFO    ] time= 27/06/2026 10:55:50
[2026-06-27 10:55:50,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:55:50,592.592 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:55:50,688.688 INFO    ] No existing commands found in stream
[2026-06-27 10:55:55,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:55:55,699.699 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-27 10:55:56,127.127 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:55:56,129.129 INFO    ] Checking for system updates...
[2026-06-27 10:55:56,149.149 INFO    ] 200
[2026-06-27 10:55:56,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:55:56,182.182 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:55:56,184.184 INFO    ] No update needed
[2026-06-27 10:55:56,186.186 INFO    ] Checking for camera pi updates...
[2026-06-27 10:55:56,206.206 INFO    ] 200
[2026-06-27 10:55:56,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:55:56,231.231 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:55:56,271.271 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:55:56,273.273 INFO    ] No camera update needed
[2026-06-27 10:55:56,274.274 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:55:56,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:55:56,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:55:56,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:55:58,320.320 INFO    ] ================================================
[2026-06-27 10:55:58,338.338 INFO    ] Launching Daemon at Sat Jun 27 10:55:58 IST 2026
[2026-06-27 10:55:58,351.351 INFO    ] ================================================
[2026-06-27 10:55:58,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:55:58
[2026-06-27 10:55:59,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:55:59,155.155 INFO    ] Initializing speech engine...
[2026-06-27 10:55:59,160.160 INFO    ] 2026-06-27 10:55:59
[2026-06-27 10:55:59,366.366 INFO    ] 2026-06-27 10:55:59
[2026-06-27 10:55:59,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:55:59,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:55:59,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:55:59,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:55:59,787.787 INFO    ] time= 27/06/2026 10:55:59
[2026-06-27 10:55:59,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:55:59,821.821 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:55:59,890.890 INFO    ] No existing commands found in stream
[2026-06-27 10:56:04,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:56:04,907.907 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-27 10:56:07,502.502 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 10:56:07,504.504 INFO    ] Checking for system updates...
[2026-06-27 10:56:07,525.525 INFO    ] 200
[2026-06-27 10:56:07,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:56:07,557.557 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:56:07,558.558 INFO    ] No update needed
[2026-06-27 10:56:07,559.559 INFO    ] Checking for camera pi updates...
[2026-06-27 10:56:07,579.579 INFO    ] 200
[2026-06-27 10:56:07,580.580 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:56:07,603.603 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:56:07,640.640 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:56:07,641.641 INFO    ] No camera update needed
[2026-06-27 10:56:07,642.642 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:56:07,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:56:07,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:56:07,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:56:09,691.691 INFO    ] ================================================
[2026-06-27 10:56:09,707.707 INFO    ] Launching Daemon at Sat Jun 27 10:56:09 IST 2026
[2026-06-27 10:56:09,718.718 INFO    ] ================================================
[2026-06-27 10:56:10,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:56:10
[2026-06-27 10:56:10,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:56:10,538.538 INFO    ] Initializing speech engine...
[2026-06-27 10:56:10,546.546 INFO    ] 2026-06-27 10:56:10
[2026-06-27 10:56:10,760.760 INFO    ] 2026-06-27 10:56:10
[2026-06-27 10:56:10,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:56:10,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:56:10,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:56:11,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:56:11,173.173 INFO    ] time= 27/06/2026 10:56:11
[2026-06-27 10:56:11,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:56:11,212.212 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:56:11,278.278 INFO    ] No existing commands found in stream
[2026-06-27 10:56:16,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:56:16,289.289 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-27 10:56:17,234.234 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 10:56:17,235.235 INFO    ] Checking for system updates...
[2026-06-27 10:56:17,256.256 INFO    ] 200
[2026-06-27 10:56:17,257.257 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:56:17,288.288 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:56:17,289.289 INFO    ] No update needed
[2026-06-27 10:56:17,291.291 INFO    ] Checking for camera pi updates...
[2026-06-27 10:56:17,310.310 INFO    ] 200
[2026-06-27 10:56:17,311.311 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:56:17,334.334 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:56:17,371.371 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:56:17,372.372 INFO    ] No camera update needed
[2026-06-27 10:56:17,374.374 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:56:17,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:56:17,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:56:17,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:56:19,423.423 INFO    ] ================================================
[2026-06-27 10:56:19,438.438 INFO    ] Launching Daemon at Sat Jun 27 10:56:19 IST 2026
[2026-06-27 10:56:19,450.450 INFO    ] ================================================
[2026-06-27 10:56:19,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:56:19
[2026-06-27 10:56:20,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:56:20,252.252 INFO    ] Initializing speech engine...
[2026-06-27 10:56:20,265.265 INFO    ] 2026-06-27 10:56:20
[2026-06-27 10:56:20,471.471 INFO    ] 2026-06-27 10:56:20
[2026-06-27 10:56:20,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:56:20,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:56:20,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:56:20,818.818 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:56:20,886.886 INFO    ] time= 27/06/2026 10:56:20
[2026-06-27 10:56:20,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:56:20,919.919 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:56:20,986.986 INFO    ] No existing commands found in stream
[2026-06-27 10:56:26,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:56:26,002.002 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-27 10:56:29,609.609 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:56:29,610.610 INFO    ] Checking for system updates...
[2026-06-27 10:56:29,632.632 INFO    ] 200
[2026-06-27 10:56:29,633.633 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:56:29,664.664 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:56:29,666.666 INFO    ] No update needed
[2026-06-27 10:56:29,667.667 INFO    ] Checking for camera pi updates...
[2026-06-27 10:56:29,689.689 INFO    ] 200
[2026-06-27 10:56:29,690.690 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:56:29,718.718 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:56:29,758.758 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:56:29,760.760 INFO    ] No camera update needed
[2026-06-27 10:56:29,761.761 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:56:29,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:56:29,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:56:29,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:56:31,807.807 INFO    ] ================================================
[2026-06-27 10:56:31,822.822 INFO    ] Launching Daemon at Sat Jun 27 10:56:31 IST 2026
[2026-06-27 10:56:31,833.833 INFO    ] ================================================
[2026-06-27 10:56:32,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:56:32
[2026-06-27 10:56:32,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:56:32,760.760 INFO    ] Initializing speech engine...
[2026-06-27 10:56:32,764.764 INFO    ] 2026-06-27 10:56:32
[2026-06-27 10:56:32,971.971 INFO    ] 2026-06-27 10:56:32
[2026-06-27 10:56:33,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:56:33,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:56:33,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:56:33,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:56:33,388.388 INFO    ] time= 27/06/2026 10:56:33
[2026-06-27 10:56:33,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:56:33,421.421 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:56:33,512.512 INFO    ] No existing commands found in stream
[2026-06-27 10:56:38,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:56:38,525.525 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-27 10:56:39,753.753 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 10:56:39,755.755 INFO    ] Checking for system updates...
[2026-06-27 10:56:39,776.776 INFO    ] 200
[2026-06-27 10:56:39,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:56:39,808.808 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:56:39,809.809 INFO    ] No update needed
[2026-06-27 10:56:39,811.811 INFO    ] Checking for camera pi updates...
[2026-06-27 10:56:39,830.830 INFO    ] 200
[2026-06-27 10:56:39,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:56:39,857.857 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:56:39,897.897 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:56:39,898.898 INFO    ] No camera update needed
[2026-06-27 10:56:39,899.899 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:56:39,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:56:39,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:56:39,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:56:41,944.944 INFO    ] ================================================
[2026-06-27 10:56:41,959.959 INFO    ] Launching Daemon at Sat Jun 27 10:56:41 IST 2026
[2026-06-27 10:56:41,970.970 INFO    ] ================================================
[2026-06-27 10:56:42,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:56:42
[2026-06-27 10:56:42,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:56:42,775.775 INFO    ] Initializing speech engine...
[2026-06-27 10:56:42,781.781 INFO    ] 2026-06-27 10:56:42
[2026-06-27 10:56:42,986.986 INFO    ] 2026-06-27 10:56:42
[2026-06-27 10:56:43,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:56:43,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:56:43,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:56:43,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:56:43,323.323 INFO    ] time= 27/06/2026 10:56:43
[2026-06-27 10:56:43,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:56:43,325.325 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:56:43,377.377 INFO    ] No existing commands found in stream
[2026-06-27 10:56:48,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:56:48,399.399 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-27 10:56:51,470.470 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:56:51,472.472 INFO    ] Checking for system updates...
[2026-06-27 10:56:51,492.492 INFO    ] 200
[2026-06-27 10:56:51,494.494 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:56:51,524.524 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:56:51,526.526 INFO    ] No update needed
[2026-06-27 10:56:51,527.527 INFO    ] Checking for camera pi updates...
[2026-06-27 10:56:51,546.546 INFO    ] 200
[2026-06-27 10:56:51,548.548 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:56:51,572.572 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:56:51,612.612 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:56:51,614.614 INFO    ] No camera update needed
[2026-06-27 10:56:51,615.615 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:56:51,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:56:51,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:56:51,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:56:53,661.661 INFO    ] ================================================
[2026-06-27 10:56:53,676.676 INFO    ] Launching Daemon at Sat Jun 27 10:56:53 IST 2026
[2026-06-27 10:56:53,687.687 INFO    ] ================================================
[2026-06-27 10:56:54,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:56:54
[2026-06-27 10:56:54,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:56:54,554.554 INFO    ] Initializing speech engine...
[2026-06-27 10:56:54,560.560 INFO    ] 2026-06-27 10:56:54
[2026-06-27 10:56:54,768.768 INFO    ] 2026-06-27 10:56:54
[2026-06-27 10:56:54,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:56:54,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:56:54,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:56:55,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:56:55,208.208 INFO    ] time= 27/06/2026 10:56:55
[2026-06-27 10:56:55,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:56:55,216.216 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:56:55,283.283 INFO    ] No existing commands found in stream
[2026-06-27 10:57:00,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:57:00,297.297 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-27 10:57:03,761.761 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 10:57:03,762.762 INFO    ] Checking for system updates...
[2026-06-27 10:57:03,786.786 INFO    ] 200
[2026-06-27 10:57:03,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:57:03,818.818 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:57:03,819.819 INFO    ] No update needed
[2026-06-27 10:57:03,821.821 INFO    ] Checking for camera pi updates...
[2026-06-27 10:57:03,842.842 INFO    ] 200
[2026-06-27 10:57:03,844.844 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:57:03,872.872 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:57:03,916.916 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:57:03,918.918 INFO    ] No camera update needed
[2026-06-27 10:57:03,919.919 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:57:03,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:57:03,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:57:03,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:57:05,968.968 INFO    ] ================================================
[2026-06-27 10:57:05,983.983 INFO    ] Launching Daemon at Sat Jun 27 10:57:05 IST 2026
[2026-06-27 10:57:05,994.994 INFO    ] ================================================
[2026-06-27 10:57:06,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:57:06
[2026-06-27 10:57:06,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:57:06,853.853 INFO    ] Initializing speech engine...
[2026-06-27 10:57:06,861.861 INFO    ] 2026-06-27 10:57:06
[2026-06-27 10:57:07,068.068 INFO    ] 2026-06-27 10:57:07
[2026-06-27 10:57:07,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:57:07,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:57:07,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:57:07,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:57:07,504.504 INFO    ] time= 27/06/2026 10:57:07
[2026-06-27 10:57:07,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:57:07,520.520 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:57:07,587.587 INFO    ] No existing commands found in stream
[2026-06-27 10:57:12,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:57:12,599.599 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-27 10:57:14,302.302 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 10:57:14,303.303 INFO    ] Checking for system updates...
[2026-06-27 10:57:14,326.326 INFO    ] 200
[2026-06-27 10:57:14,327.327 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:57:14,357.357 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:57:14,358.358 INFO    ] No update needed
[2026-06-27 10:57:14,360.360 INFO    ] Checking for camera pi updates...
[2026-06-27 10:57:14,384.384 INFO    ] 200
[2026-06-27 10:57:14,385.385 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:57:14,410.410 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:57:14,456.456 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:57:14,457.457 INFO    ] No camera update needed
[2026-06-27 10:57:14,459.459 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:57:14,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:57:14,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:57:14,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:57:16,504.504 INFO    ] ================================================
[2026-06-27 10:57:16,521.521 INFO    ] Launching Daemon at Sat Jun 27 10:57:16 IST 2026
[2026-06-27 10:57:16,531.531 INFO    ] ================================================
[2026-06-27 10:57:16,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:57:16
[2026-06-27 10:57:17,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:57:17,365.365 INFO    ] Initializing speech engine...
[2026-06-27 10:57:17,371.371 INFO    ] 2026-06-27 10:57:17
[2026-06-27 10:57:17,576.576 INFO    ] 2026-06-27 10:57:17
[2026-06-27 10:57:17,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:57:17,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:57:17,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:57:17,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:57:17,986.986 INFO    ] time= 27/06/2026 10:57:17
[2026-06-27 10:57:18,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:57:18,020.020 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:57:18,090.090 INFO    ] No existing commands found in stream
[2026-06-27 10:57:23,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:57:23,099.099 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-27 10:57:23,971.971 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:57:23,972.972 INFO    ] Checking for system updates...
[2026-06-27 10:57:23,995.995 INFO    ] 200
[2026-06-27 10:57:23,996.996 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:57:24,027.027 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:57:24,028.028 INFO    ] No update needed
[2026-06-27 10:57:24,030.030 INFO    ] Checking for camera pi updates...
[2026-06-27 10:57:24,052.052 INFO    ] 200
[2026-06-27 10:57:24,053.053 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:57:24,079.079 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:57:24,113.113 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:57:24,114.114 INFO    ] No camera update needed
[2026-06-27 10:57:24,116.116 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:57:24,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:57:24,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:57:24,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:57:26,164.164 INFO    ] ================================================
[2026-06-27 10:57:26,179.179 INFO    ] Launching Daemon at Sat Jun 27 10:57:26 IST 2026
[2026-06-27 10:57:26,190.190 INFO    ] ================================================
[2026-06-27 10:57:26,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:57:26
[2026-06-27 10:57:26,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:57:27,014.014 INFO    ] Initializing speech engine...
[2026-06-27 10:57:27,019.019 INFO    ] 2026-06-27 10:57:27
[2026-06-27 10:57:27,223.223 INFO    ] 2026-06-27 10:57:27
[2026-06-27 10:57:27,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:57:27,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:57:27,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:57:27,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:57:27,634.634 INFO    ] time= 27/06/2026 10:57:27
[2026-06-27 10:57:27,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:57:27,672.672 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:57:27,738.738 INFO    ] No existing commands found in stream
[2026-06-27 10:57:32,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:57:32,751.751 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-27 10:57:33,917.917 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:57:33,919.919 INFO    ] Checking for system updates...
[2026-06-27 10:57:33,939.939 INFO    ] 200
[2026-06-27 10:57:33,941.941 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:57:33,976.976 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:57:33,978.978 INFO    ] No update needed
[2026-06-27 10:57:33,979.979 INFO    ] Checking for camera pi updates...
[2026-06-27 10:57:33,999.999 INFO    ] 200
[2026-06-27 10:57:34,000.000 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:57:34,024.024 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:57:34,061.061 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:57:34,062.062 INFO    ] No camera update needed
[2026-06-27 10:57:34,064.064 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:57:34,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:57:34,068.068 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:57:34,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:57:36,109.109 INFO    ] ================================================
[2026-06-27 10:57:36,124.124 INFO    ] Launching Daemon at Sat Jun 27 10:57:36 IST 2026
[2026-06-27 10:57:36,135.135 INFO    ] ================================================
[2026-06-27 10:57:36,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:57:36
[2026-06-27 10:57:36,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:57:36,895.895 INFO    ] Initializing speech engine...
[2026-06-27 10:57:36,900.900 INFO    ] 2026-06-27 10:57:36
[2026-06-27 10:57:37,119.119 INFO    ] 2026-06-27 10:57:37
[2026-06-27 10:57:37,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:57:37,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:57:37,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:57:37,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:57:37,525.525 INFO    ] time= 27/06/2026 10:57:37
[2026-06-27 10:57:37,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:57:37,587.587 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:57:37,663.663 INFO    ] No existing commands found in stream
[2026-06-27 10:57:42,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:57:42,677.677 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-27 10:57:46,469.469 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 10:57:46,471.471 INFO    ] Checking for system updates...
[2026-06-27 10:57:46,491.491 INFO    ] 200
[2026-06-27 10:57:46,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:57:46,526.526 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:57:46,527.527 INFO    ] No update needed
[2026-06-27 10:57:46,528.528 INFO    ] Checking for camera pi updates...
[2026-06-27 10:57:46,549.549 INFO    ] 200
[2026-06-27 10:57:46,550.550 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:57:46,573.573 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:57:46,716.716 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:57:46,718.718 INFO    ] No camera update needed
[2026-06-27 10:57:46,719.719 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:57:46,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:57:46,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:57:46,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:57:48,765.765 INFO    ] ================================================
[2026-06-27 10:57:48,780.780 INFO    ] Launching Daemon at Sat Jun 27 10:57:48 IST 2026
[2026-06-27 10:57:48,791.791 INFO    ] ================================================
[2026-06-27 10:57:49,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:57:49
[2026-06-27 10:57:49,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:57:49,560.560 INFO    ] Initializing speech engine...
[2026-06-27 10:57:49,565.565 INFO    ] 2026-06-27 10:57:49
[2026-06-27 10:57:49,797.797 INFO    ] 2026-06-27 10:57:49
[2026-06-27 10:57:49,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:57:49,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:57:50,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:57:50,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:57:50,233.233 INFO    ] time= 27/06/2026 10:57:50
[2026-06-27 10:57:50,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:57:50,281.281 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:57:50,358.358 INFO    ] No existing commands found in stream
[2026-06-27 10:57:55,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:57:55,396.396 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-27 10:57:57,401.401 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 10:57:57,403.403 INFO    ] Checking for system updates...
[2026-06-27 10:57:57,425.425 INFO    ] 200
[2026-06-27 10:57:57,426.426 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:57:57,457.457 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:57:57,459.459 INFO    ] No update needed
[2026-06-27 10:57:57,460.460 INFO    ] Checking for camera pi updates...
[2026-06-27 10:57:57,481.481 INFO    ] 200
[2026-06-27 10:57:57,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:57:57,508.508 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:57:57,550.550 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:57:57,552.552 INFO    ] No camera update needed
[2026-06-27 10:57:57,553.553 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:57:57,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:57:57,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:57:57,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:57:59,600.600 INFO    ] ================================================
[2026-06-27 10:57:59,615.615 INFO    ] Launching Daemon at Sat Jun 27 10:57:59 IST 2026
[2026-06-27 10:57:59,626.626 INFO    ] ================================================
[2026-06-27 10:58:00,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:58:00
[2026-06-27 10:58:00,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:58:00,515.515 INFO    ] Initializing speech engine...
[2026-06-27 10:58:00,521.521 INFO    ] 2026-06-27 10:58:00
[2026-06-27 10:58:00,729.729 INFO    ] 2026-06-27 10:58:00
[2026-06-27 10:58:00,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:58:00,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:58:00,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:58:01,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:58:01,157.157 INFO    ] time= 27/06/2026 10:58:01
[2026-06-27 10:58:01,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:58:01,184.184 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:58:01,251.251 INFO    ] No existing commands found in stream
[2026-06-27 10:58:06,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:58:06,264.264 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-27 10:58:10,145.145 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:58:10,146.146 INFO    ] Checking for system updates...
[2026-06-27 10:58:10,168.168 INFO    ] 200
[2026-06-27 10:58:10,169.169 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:58:10,203.203 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:58:10,205.205 INFO    ] No update needed
[2026-06-27 10:58:10,206.206 INFO    ] Checking for camera pi updates...
[2026-06-27 10:58:10,226.226 INFO    ] 200
[2026-06-27 10:58:10,227.227 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:58:10,253.253 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:58:10,300.300 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:58:10,302.302 INFO    ] No camera update needed
[2026-06-27 10:58:10,303.303 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:58:10,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:58:10,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:58:10,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:58:12,350.350 INFO    ] ================================================
[2026-06-27 10:58:12,366.366 INFO    ] Launching Daemon at Sat Jun 27 10:58:12 IST 2026
[2026-06-27 10:58:12,376.376 INFO    ] ================================================
[2026-06-27 10:58:12,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:58:12
[2026-06-27 10:58:13,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:58:13,167.167 INFO    ] Initializing speech engine...
[2026-06-27 10:58:13,172.172 INFO    ] 2026-06-27 10:58:13
[2026-06-27 10:58:13,376.376 INFO    ] 2026-06-27 10:58:13
[2026-06-27 10:58:13,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:58:13,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:58:13,598.598 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:58:13,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:58:13,796.796 INFO    ] time= 27/06/2026 10:58:13
[2026-06-27 10:58:13,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:58:13,824.824 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:58:13,890.890 INFO    ] No existing commands found in stream
[2026-06-27 10:58:18,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:58:18,899.899 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-27 10:58:20,827.827 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 10:58:20,829.829 INFO    ] Checking for system updates...
[2026-06-27 10:58:20,849.849 INFO    ] 200
[2026-06-27 10:58:20,850.850 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:58:20,883.883 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:58:20,885.885 INFO    ] No update needed
[2026-06-27 10:58:20,886.886 INFO    ] Checking for camera pi updates...
[2026-06-27 10:58:20,906.906 INFO    ] 200
[2026-06-27 10:58:20,907.907 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:58:20,930.930 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:58:20,971.971 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:58:20,972.972 INFO    ] No camera update needed
[2026-06-27 10:58:20,973.973 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:58:20,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:58:20,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:58:20,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:58:23,020.020 INFO    ] ================================================
[2026-06-27 10:58:23,035.035 INFO    ] Launching Daemon at Sat Jun 27 10:58:23 IST 2026
[2026-06-27 10:58:23,046.046 INFO    ] ================================================
[2026-06-27 10:58:23,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:58:23
[2026-06-27 10:58:23,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:58:23,834.834 INFO    ] Initializing speech engine...
[2026-06-27 10:58:23,839.839 INFO    ] 2026-06-27 10:58:23
[2026-06-27 10:58:24,048.048 INFO    ] 2026-06-27 10:58:24
[2026-06-27 10:58:24,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:58:24,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:58:24,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:58:24,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:58:24,473.473 INFO    ] time= 27/06/2026 10:58:24
[2026-06-27 10:58:24,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:58:24,503.503 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:58:24,570.570 INFO    ] No existing commands found in stream
[2026-06-27 10:58:29,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:58:29,583.583 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-27 10:58:32,229.229 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 10:58:32,231.231 INFO    ] Checking for system updates...
[2026-06-27 10:58:32,254.254 INFO    ] 200
[2026-06-27 10:58:32,256.256 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:58:32,294.294 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:58:32,296.296 INFO    ] No update needed
[2026-06-27 10:58:32,298.298 INFO    ] Checking for camera pi updates...
[2026-06-27 10:58:32,328.328 INFO    ] 200
[2026-06-27 10:58:32,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:58:32,358.358 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:58:32,385.385 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:58:32,387.387 INFO    ] No camera update needed
[2026-06-27 10:58:32,388.388 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:58:32,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:58:32,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:58:32,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:58:34,436.436 INFO    ] ================================================
[2026-06-27 10:58:34,451.451 INFO    ] Launching Daemon at Sat Jun 27 10:58:34 IST 2026
[2026-06-27 10:58:34,462.462 INFO    ] ================================================
[2026-06-27 10:58:34,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:58:34
[2026-06-27 10:58:35,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:58:35,266.266 INFO    ] Initializing speech engine...
[2026-06-27 10:58:35,271.271 INFO    ] 2026-06-27 10:58:35
[2026-06-27 10:58:35,479.479 INFO    ] 2026-06-27 10:58:35
[2026-06-27 10:58:35,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:58:35,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:58:35,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:58:35,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:58:35,936.936 INFO    ] time= 27/06/2026 10:58:35
[2026-06-27 10:58:35,981.981 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:58:35,983.983 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:58:36,058.058 INFO    ] No existing commands found in stream
[2026-06-27 10:58:41,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:58:41,071.071 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-27 10:58:41,965.965 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:58:41,967.967 INFO    ] Checking for system updates...
[2026-06-27 10:58:41,988.988 INFO    ] 200
[2026-06-27 10:58:41,990.990 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:58:42,020.020 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:58:42,022.022 INFO    ] No update needed
[2026-06-27 10:58:42,023.023 INFO    ] Checking for camera pi updates...
[2026-06-27 10:58:42,043.043 INFO    ] 200
[2026-06-27 10:58:42,045.045 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:58:42,070.070 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:58:42,104.104 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:58:42,106.106 INFO    ] No camera update needed
[2026-06-27 10:58:42,107.107 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:58:42,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:58:42,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:58:42,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:58:44,155.155 INFO    ] ================================================
[2026-06-27 10:58:44,170.170 INFO    ] Launching Daemon at Sat Jun 27 10:58:44 IST 2026
[2026-06-27 10:58:44,180.180 INFO    ] ================================================
[2026-06-27 10:58:44,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:58:44
[2026-06-27 10:58:44,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:58:44,983.983 INFO    ] Initializing speech engine...
[2026-06-27 10:58:44,986.986 INFO    ] 2026-06-27 10:58:44
[2026-06-27 10:58:45,204.204 INFO    ] 2026-06-27 10:58:45
[2026-06-27 10:58:45,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:58:45,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:58:45,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:58:45,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:58:45,645.645 INFO    ] time= 27/06/2026 10:58:45
[2026-06-27 10:58:45,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:58:45,652.652 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:58:45,718.718 INFO    ] No existing commands found in stream
[2026-06-27 10:58:50,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:58:50,735.735 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-27 10:58:51,970.970 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 10:58:51,972.972 INFO    ] Checking for system updates...
[2026-06-27 10:58:51,994.994 INFO    ] 200
[2026-06-27 10:58:51,996.996 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:58:52,027.027 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:58:52,029.029 INFO    ] No update needed
[2026-06-27 10:58:52,030.030 INFO    ] Checking for camera pi updates...
[2026-06-27 10:58:52,051.051 INFO    ] 200
[2026-06-27 10:58:52,053.053 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:58:52,077.077 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:58:52,119.119 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:58:52,120.120 INFO    ] No camera update needed
[2026-06-27 10:58:52,122.122 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:58:52,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:58:52,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:58:52,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:58:54,168.168 INFO    ] ================================================
[2026-06-27 10:58:54,184.184 INFO    ] Launching Daemon at Sat Jun 27 10:58:54 IST 2026
[2026-06-27 10:58:54,194.194 INFO    ] ================================================
[2026-06-27 10:58:54,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:58:54
[2026-06-27 10:58:54,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:58:55,069.069 INFO    ] Initializing speech engine...
[2026-06-27 10:58:55,074.074 INFO    ] 2026-06-27 10:58:55
[2026-06-27 10:58:55,283.283 INFO    ] 2026-06-27 10:58:55
[2026-06-27 10:58:55,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:58:55,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:58:55,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:58:55,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:58:55,696.696 INFO    ] time= 27/06/2026 10:58:55
[2026-06-27 10:58:55,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:58:55,734.734 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:58:55,803.803 INFO    ] No existing commands found in stream
[2026-06-27 10:59:00,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:59:00,821.821 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-27 10:59:05,150.150 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 10:59:05,152.152 INFO    ] Checking for system updates...
[2026-06-27 10:59:05,175.175 INFO    ] 200
[2026-06-27 10:59:05,177.177 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:59:05,208.208 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:59:05,210.210 INFO    ] No update needed
[2026-06-27 10:59:05,211.211 INFO    ] Checking for camera pi updates...
[2026-06-27 10:59:05,231.231 INFO    ] 200
[2026-06-27 10:59:05,233.233 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:59:05,257.257 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:59:05,294.294 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:59:05,296.296 INFO    ] No camera update needed
[2026-06-27 10:59:05,297.297 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:59:05,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:59:05,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:59:05,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:59:07,347.347 INFO    ] ================================================
[2026-06-27 10:59:07,363.363 INFO    ] Launching Daemon at Sat Jun 27 10:59:07 IST 2026
[2026-06-27 10:59:07,374.374 INFO    ] ================================================
[2026-06-27 10:59:07,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:59:07
[2026-06-27 10:59:08,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:59:08,195.195 INFO    ] Initializing speech engine...
[2026-06-27 10:59:08,201.201 INFO    ] 2026-06-27 10:59:08
[2026-06-27 10:59:08,406.406 INFO    ] 2026-06-27 10:59:08
[2026-06-27 10:59:08,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:59:08,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:59:08,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:59:08,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:59:08,826.826 INFO    ] time= 27/06/2026 10:59:08
[2026-06-27 10:59:08,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:59:08,855.855 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:59:08,922.922 INFO    ] No existing commands found in stream
[2026-06-27 10:59:13,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:59:13,934.934 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-27 10:59:14,395.395 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:59:14,396.396 INFO    ] Checking for system updates...
[2026-06-27 10:59:14,418.418 INFO    ] 200
[2026-06-27 10:59:14,419.419 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:59:14,450.450 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:59:14,451.451 INFO    ] No update needed
[2026-06-27 10:59:14,453.453 INFO    ] Checking for camera pi updates...
[2026-06-27 10:59:14,472.472 INFO    ] 200
[2026-06-27 10:59:14,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:59:14,497.497 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:59:14,535.535 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:59:14,536.536 INFO    ] No camera update needed
[2026-06-27 10:59:14,537.537 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:59:14,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:59:14,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:59:14,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:59:16,584.584 INFO    ] ================================================
[2026-06-27 10:59:16,600.600 INFO    ] Launching Daemon at Sat Jun 27 10:59:16 IST 2026
[2026-06-27 10:59:16,611.611 INFO    ] ================================================
[2026-06-27 10:59:16,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:59:16
[2026-06-27 10:59:17,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:59:17,427.427 INFO    ] Initializing speech engine...
[2026-06-27 10:59:17,436.436 INFO    ] 2026-06-27 10:59:17
[2026-06-27 10:59:17,648.648 INFO    ] 2026-06-27 10:59:17
[2026-06-27 10:59:17,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:59:17,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:59:17,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:59:18,044.044 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:59:18,083.083 INFO    ] time= 27/06/2026 10:59:18
[2026-06-27 10:59:18,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:59:18,094.094 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:59:18,160.160 INFO    ] No existing commands found in stream
[2026-06-27 10:59:23,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:59:23,172.172 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-27 10:59:27,127.127 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 10:59:27,129.129 INFO    ] Checking for system updates...
[2026-06-27 10:59:27,150.150 INFO    ] 200
[2026-06-27 10:59:27,152.152 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:59:27,184.184 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:59:27,186.186 INFO    ] No update needed
[2026-06-27 10:59:27,187.187 INFO    ] Checking for camera pi updates...
[2026-06-27 10:59:27,207.207 INFO    ] 200
[2026-06-27 10:59:27,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:59:27,232.232 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:59:27,278.278 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:59:27,280.280 INFO    ] No camera update needed
[2026-06-27 10:59:27,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:59:27,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:59:27,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:59:27,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:59:29,330.330 INFO    ] ================================================
[2026-06-27 10:59:29,345.345 INFO    ] Launching Daemon at Sat Jun 27 10:59:29 IST 2026
[2026-06-27 10:59:29,356.356 INFO    ] ================================================
[2026-06-27 10:59:29,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:59:29
[2026-06-27 10:59:30,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:59:30,201.201 INFO    ] Initializing speech engine...
[2026-06-27 10:59:30,207.207 INFO    ] 2026-06-27 10:59:30
[2026-06-27 10:59:30,417.417 INFO    ] 2026-06-27 10:59:30
[2026-06-27 10:59:30,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:59:30,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:59:30,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:59:30,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:59:30,837.837 INFO    ] time= 27/06/2026 10:59:30
[2026-06-27 10:59:30,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:59:30,867.867 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:59:30,932.932 INFO    ] No existing commands found in stream
[2026-06-27 10:59:35,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:59:35,947.947 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-27 10:59:36,456.456 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 10:59:36,457.457 INFO    ] Checking for system updates...
[2026-06-27 10:59:36,479.479 INFO    ] 200
[2026-06-27 10:59:36,480.480 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:59:36,511.511 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:59:36,512.512 INFO    ] No update needed
[2026-06-27 10:59:36,514.514 INFO    ] Checking for camera pi updates...
[2026-06-27 10:59:36,534.534 INFO    ] 200
[2026-06-27 10:59:36,535.535 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:59:36,559.559 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:59:36,596.596 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 10:59:36,598.598 INFO    ] No camera update needed
[2026-06-27 10:59:36,599.599 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:59:36,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:59:36,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:59:36,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:59:38,648.648 INFO    ] ================================================
[2026-06-27 10:59:38,664.664 INFO    ] Launching Daemon at Sat Jun 27 10:59:38 IST 2026
[2026-06-27 10:59:38,675.675 INFO    ] ================================================
[2026-06-27 10:59:39,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:59:39
[2026-06-27 10:59:39,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:59:39,489.489 INFO    ] Initializing speech engine...
[2026-06-27 10:59:39,502.502 INFO    ] 2026-06-27 10:59:39
[2026-06-27 10:59:39,708.708 INFO    ] 2026-06-27 10:59:39
[2026-06-27 10:59:39,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:59:39,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:59:39,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:59:40,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:59:40,125.125 INFO    ] time= 27/06/2026 10:59:40
[2026-06-27 10:59:40,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:59:40,154.154 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:59:40,221.221 INFO    ] No existing commands found in stream
[2026-06-27 10:59:45,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:59:45,233.233 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-27 10:59:48,495.495 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 10:59:48,497.497 INFO    ] Checking for system updates...
[2026-06-27 10:59:48,521.521 INFO    ] 200
[2026-06-27 10:59:48,523.523 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:59:48,569.569 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:59:48,570.570 INFO    ] No update needed
[2026-06-27 10:59:48,572.572 INFO    ] Checking for camera pi updates...
[2026-06-27 10:59:48,601.601 INFO    ] 200
[2026-06-27 10:59:48,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 10:59:48,630.630 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 10:59:48,771.771 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 10:59:48,772.772 INFO    ] No camera update needed
[2026-06-27 10:59:48,774.774 INFO    ] Script finished. Safe exiting...
[2026-06-27 10:59:48,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 10:59:48,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 10:59:48,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 10:59:50,820.820 INFO    ] ================================================
[2026-06-27 10:59:50,835.835 INFO    ] Launching Daemon at Sat Jun 27 10:59:50 IST 2026
[2026-06-27 10:59:50,846.846 INFO    ] ================================================
[2026-06-27 10:59:51,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 10:59:51
[2026-06-27 10:59:51,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 10:59:51,659.659 INFO    ] Initializing speech engine...
[2026-06-27 10:59:51,666.666 INFO    ] 2026-06-27 10:59:51
[2026-06-27 10:59:51,874.874 INFO    ] 2026-06-27 10:59:51
[2026-06-27 10:59:51,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 10:59:52,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 10:59:52,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 10:59:52,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 10:59:52,303.303 INFO    ] time= 27/06/2026 10:59:52
[2026-06-27 10:59:52,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 10:59:52,334.334 INFO    ] Checking for existing commands in stream...
[2026-06-27 10:59:52,403.403 INFO    ] No existing commands found in stream
[2026-06-27 10:59:57,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 10:59:57,416.416 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-27 11:00:01,707.707 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 11:00:01,710.710 INFO    ] Checking for system updates...
[2026-06-27 11:00:01,861.861 INFO    ] 200
[2026-06-27 11:00:01,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:00:02,164.164 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:00:02,166.166 INFO    ] No update needed
[2026-06-27 11:00:02,168.168 INFO    ] Checking for camera pi updates...
[2026-06-27 11:00:02,323.323 INFO    ] 200
[2026-06-27 11:00:02,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:00:02,568.568 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:00:02,831.831 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:00:02,833.833 INFO    ] No camera update needed
[2026-06-27 11:00:02,836.836 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:00:02,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:00:02,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:00:02,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:00:04,914.914 INFO    ] ================================================
[2026-06-27 11:00:04,922.922 INFO    ] Launching Daemon at Sat Jun 27 11:00:04 IST 2026
[2026-06-27 11:00:04,929.929 INFO    ] ================================================
[2026-06-27 11:00:05,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:00:05
[2026-06-27 11:00:05,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:00:05,724.724 INFO    ] Initializing speech engine...
[2026-06-27 11:00:05,727.727 INFO    ] 2026-06-27 11:00:05
[2026-06-27 11:00:05,931.931 INFO    ] 2026-06-27 11:00:05
[2026-06-27 11:00:05,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:00:06,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:00:06,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:00:06,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:00:06,322.322 INFO    ] time= 27/06/2026 11:00:06
[2026-06-27 11:00:06,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:00:06,381.381 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:00:06,454.454 INFO    ] No existing commands found in stream
[2026-06-27 11:00:11,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:00:11,466.466 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-27 11:00:12,702.702 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 11:00:12,703.703 INFO    ] Checking for system updates...
[2026-06-27 11:00:12,726.726 INFO    ] 200
[2026-06-27 11:00:12,727.727 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:00:12,759.759 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:00:12,760.760 INFO    ] No update needed
[2026-06-27 11:00:12,762.762 INFO    ] Checking for camera pi updates...
[2026-06-27 11:00:12,781.781 INFO    ] 200
[2026-06-27 11:00:12,783.783 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:00:12,806.806 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:00:12,848.848 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:00:12,849.849 INFO    ] No camera update needed
[2026-06-27 11:00:12,850.850 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:00:12,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:00:12,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:00:12,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:00:14,896.896 INFO    ] ================================================
[2026-06-27 11:00:14,918.918 INFO    ] Launching Daemon at Sat Jun 27 11:00:14 IST 2026
[2026-06-27 11:00:14,929.929 INFO    ] ================================================
[2026-06-27 11:00:15,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:00:15
[2026-06-27 11:00:15,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:00:15,791.791 INFO    ] Initializing speech engine...
[2026-06-27 11:00:15,795.795 INFO    ] 2026-06-27 11:00:15
[2026-06-27 11:00:16,003.003 INFO    ] 2026-06-27 11:00:15
[2026-06-27 11:00:16,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:00:16,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:00:16,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:00:16,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:00:16,444.444 INFO    ] time= 27/06/2026 11:00:16
[2026-06-27 11:00:16,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:00:16,460.460 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:00:16,528.528 INFO    ] No existing commands found in stream
[2026-06-27 11:00:21,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:00:21,547.547 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-27 11:00:23,973.973 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 11:00:23,975.975 INFO    ] Checking for system updates...
[2026-06-27 11:00:23,995.995 INFO    ] 200
[2026-06-27 11:00:23,997.997 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:00:24,027.027 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:00:24,029.029 INFO    ] No update needed
[2026-06-27 11:00:24,030.030 INFO    ] Checking for camera pi updates...
[2026-06-27 11:00:24,053.053 INFO    ] 200
[2026-06-27 11:00:24,055.055 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:00:24,081.081 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:00:24,122.122 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:00:24,124.124 INFO    ] No camera update needed
[2026-06-27 11:00:24,125.125 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:00:24,127.127 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:00:24,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:00:24,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:00:26,173.173 INFO    ] ================================================
[2026-06-27 11:00:26,189.189 INFO    ] Launching Daemon at Sat Jun 27 11:00:26 IST 2026
[2026-06-27 11:00:26,200.200 INFO    ] ================================================
[2026-06-27 11:00:26,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:00:26
[2026-06-27 11:00:26,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:00:26,980.980 INFO    ] Initializing speech engine...
[2026-06-27 11:00:26,988.988 INFO    ] 2026-06-27 11:00:26
[2026-06-27 11:00:27,195.195 INFO    ] 2026-06-27 11:00:27
[2026-06-27 11:00:27,224.224 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:00:27,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:00:27,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:00:27,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:00:27,620.620 INFO    ] time= 27/06/2026 11:00:27
[2026-06-27 11:00:27,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:00:27,641.641 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:00:27,709.709 INFO    ] No existing commands found in stream
[2026-06-27 11:00:32,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:00:32,716.716 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-27 11:00:34,002.002 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 11:00:34,004.004 INFO    ] Checking for system updates...
[2026-06-27 11:00:34,025.025 INFO    ] 200
[2026-06-27 11:00:34,027.027 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:00:34,057.057 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:00:34,058.058 INFO    ] No update needed
[2026-06-27 11:00:34,060.060 INFO    ] Checking for camera pi updates...
[2026-06-27 11:00:34,080.080 INFO    ] 200
[2026-06-27 11:00:34,081.081 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:00:34,105.105 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:00:34,141.141 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:00:34,143.143 INFO    ] No camera update needed
[2026-06-27 11:00:34,144.144 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:00:34,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:00:34,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:00:34,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:00:36,193.193 INFO    ] ================================================
[2026-06-27 11:00:36,209.209 INFO    ] Launching Daemon at Sat Jun 27 11:00:36 IST 2026
[2026-06-27 11:00:36,220.220 INFO    ] ================================================
[2026-06-27 11:00:36,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:00:36
[2026-06-27 11:00:36,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:00:37,095.095 INFO    ] Initializing speech engine...
[2026-06-27 11:00:37,099.099 INFO    ] 2026-06-27 11:00:37
[2026-06-27 11:00:37,308.308 INFO    ] 2026-06-27 11:00:37
[2026-06-27 11:00:37,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:00:37,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:00:37,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:00:37,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:00:37,730.730 INFO    ] time= 27/06/2026 11:00:37
[2026-06-27 11:00:37,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:00:37,762.762 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:00:37,832.832 INFO    ] No existing commands found in stream
[2026-06-27 11:00:42,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:00:42,849.849 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-27 11:00:46,627.627 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:00:46,630.630 INFO    ] Checking for system updates...
[2026-06-27 11:00:46,652.652 INFO    ] 200
[2026-06-27 11:00:46,654.654 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:00:46,684.684 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:00:46,685.685 INFO    ] No update needed
[2026-06-27 11:00:46,687.687 INFO    ] Checking for camera pi updates...
[2026-06-27 11:00:46,708.708 INFO    ] 200
[2026-06-27 11:00:46,710.710 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:00:46,734.734 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:00:46,780.780 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:00:46,782.782 INFO    ] No camera update needed
[2026-06-27 11:00:46,783.783 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:00:46,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:00:46,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:00:46,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:00:48,829.829 INFO    ] ================================================
[2026-06-27 11:00:48,845.845 INFO    ] Launching Daemon at Sat Jun 27 11:00:48 IST 2026
[2026-06-27 11:00:48,856.856 INFO    ] ================================================
[2026-06-27 11:00:49,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:00:49
[2026-06-27 11:00:49,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:00:49,734.734 INFO    ] Initializing speech engine...
[2026-06-27 11:00:49,742.742 INFO    ] 2026-06-27 11:00:49
[2026-06-27 11:00:49,962.962 INFO    ] 2026-06-27 11:00:49
[2026-06-27 11:00:49,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:00:50,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:00:50,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:00:50,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:00:50,386.386 INFO    ] time= 27/06/2026 11:00:50
[2026-06-27 11:00:50,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:00:50,413.413 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:00:50,481.481 INFO    ] No existing commands found in stream
[2026-06-27 11:00:55,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:00:55,499.499 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-27 11:00:56,078.078 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 11:00:56,080.080 INFO    ] Checking for system updates...
[2026-06-27 11:00:56,101.101 INFO    ] 200
[2026-06-27 11:00:56,103.103 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:00:56,136.136 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:00:56,137.137 INFO    ] No update needed
[2026-06-27 11:00:56,139.139 INFO    ] Checking for camera pi updates...
[2026-06-27 11:00:56,162.162 INFO    ] 200
[2026-06-27 11:00:56,164.164 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:00:56,188.188 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:00:56,226.226 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:00:56,228.228 INFO    ] No camera update needed
[2026-06-27 11:00:56,229.229 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:00:56,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:00:56,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:00:56,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:00:58,277.277 INFO    ] ================================================
[2026-06-27 11:00:58,292.292 INFO    ] Launching Daemon at Sat Jun 27 11:00:58 IST 2026
[2026-06-27 11:00:58,303.303 INFO    ] ================================================
[2026-06-27 11:00:58,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:00:58
[2026-06-27 11:00:59,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:00:59,165.165 INFO    ] Initializing speech engine...
[2026-06-27 11:00:59,170.170 INFO    ] 2026-06-27 11:00:59
[2026-06-27 11:00:59,380.380 INFO    ] 2026-06-27 11:00:59
[2026-06-27 11:00:59,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:00:59,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:00:59,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:00:59,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:00:59,824.824 INFO    ] time= 27/06/2026 11:00:59
[2026-06-27 11:00:59,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:00:59,835.835 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:00:59,902.902 INFO    ] No existing commands found in stream
[2026-06-27 11:01:04,922.922 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:01:04,926.926 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-27 11:01:07,895.895 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 11:01:07,897.897 INFO    ] Checking for system updates...
[2026-06-27 11:01:07,918.918 INFO    ] 200
[2026-06-27 11:01:07,919.919 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:01:07,953.953 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:01:07,955.955 INFO    ] No update needed
[2026-06-27 11:01:07,956.956 INFO    ] Checking for camera pi updates...
[2026-06-27 11:01:07,977.977 INFO    ] 200
[2026-06-27 11:01:07,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:01:08,002.002 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:01:08,025.025 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:01:08,026.026 INFO    ] No camera update needed
[2026-06-27 11:01:08,028.028 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:01:08,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:01:08,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:01:08,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:01:10,083.083 INFO    ] ================================================
[2026-06-27 11:01:10,100.100 INFO    ] Launching Daemon at Sat Jun 27 11:01:10 IST 2026
[2026-06-27 11:01:10,111.111 INFO    ] ================================================
[2026-06-27 11:01:10,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:01:10
[2026-06-27 11:01:10,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:01:10,938.938 INFO    ] Initializing speech engine...
[2026-06-27 11:01:10,943.943 INFO    ] 2026-06-27 11:01:10
[2026-06-27 11:01:11,148.148 INFO    ] 2026-06-27 11:01:11
[2026-06-27 11:01:11,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:01:11,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:01:11,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:01:11,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:01:11,587.587 INFO    ] time= 27/06/2026 11:01:11
[2026-06-27 11:01:11,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:01:11,595.595 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:01:11,663.663 INFO    ] No existing commands found in stream
[2026-06-27 11:01:16,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:01:16,675.675 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-27 11:01:20,998.998 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 11:01:21,000.000 INFO    ] Checking for system updates...
[2026-06-27 11:01:21,021.021 INFO    ] 200
[2026-06-27 11:01:21,022.022 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:01:21,054.054 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:01:21,056.056 INFO    ] No update needed
[2026-06-27 11:01:21,057.057 INFO    ] Checking for camera pi updates...
[2026-06-27 11:01:21,077.077 INFO    ] 200
[2026-06-27 11:01:21,079.079 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:01:21,104.104 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:01:21,140.140 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:01:21,141.141 INFO    ] No camera update needed
[2026-06-27 11:01:21,142.142 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:01:21,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:01:21,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:01:21,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:01:23,189.189 INFO    ] ================================================
[2026-06-27 11:01:23,206.206 INFO    ] Launching Daemon at Sat Jun 27 11:01:23 IST 2026
[2026-06-27 11:01:23,217.217 INFO    ] ================================================
[2026-06-27 11:01:23,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:01:23
[2026-06-27 11:01:23,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:01:24,001.001 INFO    ] Initializing speech engine...
[2026-06-27 11:01:24,009.009 INFO    ] 2026-06-27 11:01:24
[2026-06-27 11:01:24,218.218 INFO    ] 2026-06-27 11:01:24
[2026-06-27 11:01:24,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:01:24,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:01:24,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:01:24,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:01:24,665.665 INFO    ] time= 27/06/2026 11:01:24
[2026-06-27 11:01:24,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:01:24,676.676 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:01:24,745.745 INFO    ] No existing commands found in stream
[2026-06-27 11:01:29,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:01:29,758.758 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-27 11:01:30,176.176 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 11:01:30,177.177 INFO    ] Checking for system updates...
[2026-06-27 11:01:30,199.199 INFO    ] 200
[2026-06-27 11:01:30,200.200 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:01:30,231.231 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:01:30,233.233 INFO    ] No update needed
[2026-06-27 11:01:30,234.234 INFO    ] Checking for camera pi updates...
[2026-06-27 11:01:30,254.254 INFO    ] 200
[2026-06-27 11:01:30,256.256 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:01:30,280.280 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:01:30,326.326 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:01:30,328.328 INFO    ] No camera update needed
[2026-06-27 11:01:30,329.329 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:01:30,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:01:30,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:01:30,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:01:32,375.375 INFO    ] ================================================
[2026-06-27 11:01:32,391.391 INFO    ] Launching Daemon at Sat Jun 27 11:01:32 IST 2026
[2026-06-27 11:01:32,402.402 INFO    ] ================================================
[2026-06-27 11:01:32,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:01:32
[2026-06-27 11:01:33,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:01:33,208.208 INFO    ] Initializing speech engine...
[2026-06-27 11:01:33,220.220 INFO    ] 2026-06-27 11:01:33
[2026-06-27 11:01:33,428.428 INFO    ] 2026-06-27 11:01:33
[2026-06-27 11:01:33,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:01:33,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:01:33,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:01:33,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:01:33,852.852 INFO    ] time= 27/06/2026 11:01:33
[2026-06-27 11:01:33,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:01:33,883.883 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:01:33,951.951 INFO    ] No existing commands found in stream
[2026-06-27 11:01:38,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:01:38,963.963 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-27 11:01:41,350.350 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 11:01:41,351.351 INFO    ] Checking for system updates...
[2026-06-27 11:01:41,372.372 INFO    ] 200
[2026-06-27 11:01:41,374.374 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:01:41,406.406 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:01:41,407.407 INFO    ] No update needed
[2026-06-27 11:01:41,408.408 INFO    ] Checking for camera pi updates...
[2026-06-27 11:01:41,428.428 INFO    ] 200
[2026-06-27 11:01:41,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:01:41,454.454 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:01:41,496.496 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:01:41,497.497 INFO    ] No camera update needed
[2026-06-27 11:01:41,498.498 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:01:41,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:01:41,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:01:41,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:01:43,548.548 INFO    ] ================================================
[2026-06-27 11:01:43,563.563 INFO    ] Launching Daemon at Sat Jun 27 11:01:43 IST 2026
[2026-06-27 11:01:43,574.574 INFO    ] ================================================
[2026-06-27 11:01:43,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:01:43
[2026-06-27 11:01:44,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:01:44,417.417 INFO    ] Initializing speech engine...
[2026-06-27 11:01:44,422.422 INFO    ] 2026-06-27 11:01:44
[2026-06-27 11:01:44,630.630 INFO    ] 2026-06-27 11:01:44
[2026-06-27 11:01:44,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:01:44,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:01:44,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:01:45,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:01:45,052.052 INFO    ] time= 27/06/2026 11:01:45
[2026-06-27 11:01:45,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:01:45,080.080 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:01:45,147.147 INFO    ] No existing commands found in stream
[2026-06-27 11:01:50,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:01:50,165.165 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-27 11:01:51,485.485 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 11:01:51,486.486 INFO    ] Checking for system updates...
[2026-06-27 11:01:51,507.507 INFO    ] 200
[2026-06-27 11:01:51,508.508 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:01:51,538.538 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:01:51,540.540 INFO    ] No update needed
[2026-06-27 11:01:51,541.541 INFO    ] Checking for camera pi updates...
[2026-06-27 11:01:51,561.561 INFO    ] 200
[2026-06-27 11:01:51,563.563 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:01:51,586.586 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:01:51,735.735 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:01:51,736.736 INFO    ] No camera update needed
[2026-06-27 11:01:51,737.737 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:01:51,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:01:51,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:01:51,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:01:53,783.783 INFO    ] ================================================
[2026-06-27 11:01:53,798.798 INFO    ] Launching Daemon at Sat Jun 27 11:01:53 IST 2026
[2026-06-27 11:01:53,808.808 INFO    ] ================================================
[2026-06-27 11:01:54,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:01:54
[2026-06-27 11:01:54,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:01:54,620.620 INFO    ] Initializing speech engine...
[2026-06-27 11:01:54,625.625 INFO    ] 2026-06-27 11:01:54
[2026-06-27 11:01:54,845.845 INFO    ] 2026-06-27 11:01:54
[2026-06-27 11:01:54,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:01:55,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:01:55,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:01:55,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:01:55,252.252 INFO    ] time= 27/06/2026 11:01:55
[2026-06-27 11:01:55,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:01:55,293.293 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:01:55,389.389 INFO    ] No existing commands found in stream
[2026-06-27 11:02:00,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:02:00,399.399 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-27 11:02:03,120.120 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 11:02:03,122.122 INFO    ] Checking for system updates...
[2026-06-27 11:02:03,143.143 INFO    ] 200
[2026-06-27 11:02:03,145.145 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:02:03,175.175 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:02:03,176.176 INFO    ] No update needed
[2026-06-27 11:02:03,177.177 INFO    ] Checking for camera pi updates...
[2026-06-27 11:02:03,200.200 INFO    ] 200
[2026-06-27 11:02:03,201.201 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:02:03,227.227 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:02:03,259.259 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:02:03,261.261 INFO    ] No camera update needed
[2026-06-27 11:02:03,263.263 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:02:03,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:02:03,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:02:03,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:02:05,318.318 INFO    ] ================================================
[2026-06-27 11:02:05,333.333 INFO    ] Launching Daemon at Sat Jun 27 11:02:05 IST 2026
[2026-06-27 11:02:05,343.343 INFO    ] ================================================
[2026-06-27 11:02:05,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:02:05
[2026-06-27 11:02:06,001.001 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:02:06,131.131 INFO    ] Initializing speech engine...
[2026-06-27 11:02:06,135.135 INFO    ] 2026-06-27 11:02:06
[2026-06-27 11:02:06,354.354 INFO    ] 2026-06-27 11:02:06
[2026-06-27 11:02:06,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:02:06,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:02:06,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:02:06,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:02:06,804.804 INFO    ] time= 27/06/2026 11:02:06
[2026-06-27 11:02:06,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:02:06,811.811 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:02:06,879.879 INFO    ] No existing commands found in stream
[2026-06-27 11:02:11,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:02:11,888.888 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-27 11:02:16,232.232 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 11:02:16,234.234 INFO    ] Checking for system updates...
[2026-06-27 11:02:16,256.256 INFO    ] 200
[2026-06-27 11:02:16,257.257 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:02:16,287.287 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:02:16,289.289 INFO    ] No update needed
[2026-06-27 11:02:16,290.290 INFO    ] Checking for camera pi updates...
[2026-06-27 11:02:16,309.309 INFO    ] 200
[2026-06-27 11:02:16,311.311 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:02:16,334.334 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:02:16,372.372 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:02:16,374.374 INFO    ] No camera update needed
[2026-06-27 11:02:16,375.375 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:02:16,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:02:16,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:02:16,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:02:18,412.412 INFO    ] ================================================
[2026-06-27 11:02:18,421.421 INFO    ] Launching Daemon at Sat Jun 27 11:02:18 IST 2026
[2026-06-27 11:02:18,427.427 INFO    ] ================================================
[2026-06-27 11:02:18,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:02:18
[2026-06-27 11:02:19,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:02:19,218.218 INFO    ] Initializing speech engine...
[2026-06-27 11:02:19,222.222 INFO    ] 2026-06-27 11:02:19
[2026-06-27 11:02:19,441.441 INFO    ] 2026-06-27 11:02:19
[2026-06-27 11:02:19,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:02:19,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:02:19,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:02:19,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:02:19,879.879 INFO    ] time= 27/06/2026 11:02:19
[2026-06-27 11:02:19,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:02:19,896.896 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:02:19,962.962 INFO    ] No existing commands found in stream
[2026-06-27 11:02:24,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:02:24,975.975 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-27 11:02:27,167.167 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 11:02:27,169.169 INFO    ] Checking for system updates...
[2026-06-27 11:02:27,189.189 INFO    ] 200
[2026-06-27 11:02:27,191.191 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:02:27,221.221 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:02:27,222.222 INFO    ] No update needed
[2026-06-27 11:02:27,224.224 INFO    ] Checking for camera pi updates...
[2026-06-27 11:02:27,244.244 INFO    ] 200
[2026-06-27 11:02:27,245.245 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:02:27,269.269 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:02:27,290.290 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:02:27,291.291 INFO    ] No camera update needed
[2026-06-27 11:02:27,293.293 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:02:27,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:02:27,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:02:27,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:02:29,341.341 INFO    ] ================================================
[2026-06-27 11:02:29,356.356 INFO    ] Launching Daemon at Sat Jun 27 11:02:29 IST 2026
[2026-06-27 11:02:29,367.367 INFO    ] ================================================
[2026-06-27 11:02:29,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:02:29
[2026-06-27 11:02:30,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:02:30,157.157 INFO    ] Initializing speech engine...
[2026-06-27 11:02:30,166.166 INFO    ] 2026-06-27 11:02:30
[2026-06-27 11:02:30,375.375 INFO    ] 2026-06-27 11:02:30
[2026-06-27 11:02:30,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:02:30,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:02:30,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:02:30,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:02:30,793.793 INFO    ] time= 27/06/2026 11:02:30
[2026-06-27 11:02:30,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:02:30,834.834 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:02:30,900.900 INFO    ] No existing commands found in stream
[2026-06-27 11:02:35,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:02:35,913.913 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-27 11:02:39,148.148 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 11:02:39,150.150 INFO    ] Checking for system updates...
[2026-06-27 11:02:39,171.171 INFO    ] 200
[2026-06-27 11:02:39,172.172 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:02:39,205.205 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:02:39,206.206 INFO    ] No update needed
[2026-06-27 11:02:39,207.207 INFO    ] Checking for camera pi updates...
[2026-06-27 11:02:39,228.228 INFO    ] 200
[2026-06-27 11:02:39,230.230 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:02:39,253.253 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:02:39,300.300 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:02:39,302.302 INFO    ] No camera update needed
[2026-06-27 11:02:39,303.303 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:02:39,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:02:39,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:02:39,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:02:41,350.350 INFO    ] ================================================
[2026-06-27 11:02:41,365.365 INFO    ] Launching Daemon at Sat Jun 27 11:02:41 IST 2026
[2026-06-27 11:02:41,376.376 INFO    ] ================================================
[2026-06-27 11:02:41,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:02:41
[2026-06-27 11:02:42,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:02:42,186.186 INFO    ] Initializing speech engine...
[2026-06-27 11:02:42,191.191 INFO    ] 2026-06-27 11:02:42
[2026-06-27 11:02:42,397.397 INFO    ] 2026-06-27 11:02:42
[2026-06-27 11:02:42,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:02:42,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:02:42,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:02:42,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:02:42,820.820 INFO    ] time= 27/06/2026 11:02:42
[2026-06-27 11:02:42,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:02:42,850.850 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:02:42,918.918 INFO    ] No existing commands found in stream
[2026-06-27 11:02:47,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:02:47,929.929 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-27 11:02:51,570.570 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 11:02:51,572.572 INFO    ] Checking for system updates...
[2026-06-27 11:02:51,592.592 INFO    ] 200
[2026-06-27 11:02:51,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:02:51,624.624 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:02:51,626.626 INFO    ] No update needed
[2026-06-27 11:02:51,627.627 INFO    ] Checking for camera pi updates...
[2026-06-27 11:02:51,647.647 INFO    ] 200
[2026-06-27 11:02:51,649.649 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:02:51,672.672 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:02:51,711.711 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:02:51,713.713 INFO    ] No camera update needed
[2026-06-27 11:02:51,714.714 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:02:51,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:02:51,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:02:51,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:02:53,761.761 INFO    ] ================================================
[2026-06-27 11:02:53,776.776 INFO    ] Launching Daemon at Sat Jun 27 11:02:53 IST 2026
[2026-06-27 11:02:53,787.787 INFO    ] ================================================
[2026-06-27 11:02:54,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:02:54
[2026-06-27 11:02:54,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:02:54,640.640 INFO    ] Initializing speech engine...
[2026-06-27 11:02:54,649.649 INFO    ] 2026-06-27 11:02:54
[2026-06-27 11:02:54,868.868 INFO    ] 2026-06-27 11:02:54
[2026-06-27 11:02:54,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:02:55,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:02:55,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:02:55,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:02:55,298.298 INFO    ] time= 27/06/2026 11:02:55
[2026-06-27 11:02:55,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:02:55,349.349 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:02:55,424.424 INFO    ] No existing commands found in stream
[2026-06-27 11:03:00,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:03:00,436.436 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-27 11:03:04,125.125 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 11:03:04,127.127 INFO    ] Checking for system updates...
[2026-06-27 11:03:04,151.151 INFO    ] 200
[2026-06-27 11:03:04,152.152 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:03:04,183.183 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:03:04,185.185 INFO    ] No update needed
[2026-06-27 11:03:04,186.186 INFO    ] Checking for camera pi updates...
[2026-06-27 11:03:04,206.206 INFO    ] 200
[2026-06-27 11:03:04,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:03:04,231.231 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:03:04,277.277 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:03:04,278.278 INFO    ] No camera update needed
[2026-06-27 11:03:04,280.280 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:03:04,281.281 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:03:04,284.284 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:03:04,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:03:06,326.326 INFO    ] ================================================
[2026-06-27 11:03:06,342.342 INFO    ] Launching Daemon at Sat Jun 27 11:03:06 IST 2026
[2026-06-27 11:03:06,353.353 INFO    ] ================================================
[2026-06-27 11:03:06,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:03:06
[2026-06-27 11:03:07,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:03:07,172.172 INFO    ] Initializing speech engine...
[2026-06-27 11:03:07,184.184 INFO    ] 2026-06-27 11:03:07
[2026-06-27 11:03:07,392.392 INFO    ] 2026-06-27 11:03:07
[2026-06-27 11:03:07,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:03:07,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:03:07,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:03:07,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:03:07,837.837 INFO    ] time= 27/06/2026 11:03:07
[2026-06-27 11:03:07,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:03:07,845.845 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:03:07,912.912 INFO    ] No existing commands found in stream
[2026-06-27 11:03:12,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:03:12,924.924 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-27 11:03:15,996.996 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 11:03:15,997.997 INFO    ] Checking for system updates...
[2026-06-27 11:03:16,018.018 INFO    ] 200
[2026-06-27 11:03:16,019.019 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:03:16,050.050 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:03:16,051.051 INFO    ] No update needed
[2026-06-27 11:03:16,053.053 INFO    ] Checking for camera pi updates...
[2026-06-27 11:03:16,074.074 INFO    ] 200
[2026-06-27 11:03:16,075.075 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:03:16,098.098 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:03:16,135.135 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:03:16,136.136 INFO    ] No camera update needed
[2026-06-27 11:03:16,138.138 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:03:16,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:03:16,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:03:16,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:03:18,185.185 INFO    ] ================================================
[2026-06-27 11:03:18,201.201 INFO    ] Launching Daemon at Sat Jun 27 11:03:18 IST 2026
[2026-06-27 11:03:18,212.212 INFO    ] ================================================
[2026-06-27 11:03:18,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:03:18
[2026-06-27 11:03:18,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:03:19,025.025 INFO    ] Initializing speech engine...
[2026-06-27 11:03:19,033.033 INFO    ] 2026-06-27 11:03:19
[2026-06-27 11:03:19,256.256 INFO    ] 2026-06-27 11:03:19
[2026-06-27 11:03:19,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:03:19,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:03:19,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:03:19,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:03:19,696.696 INFO    ] time= 27/06/2026 11:03:19
[2026-06-27 11:03:19,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:03:19,735.735 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:03:19,788.788 INFO    ] No existing commands found in stream
[2026-06-27 11:03:24,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:03:24,799.799 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-27 11:03:26,182.182 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 11:03:26,184.184 INFO    ] Checking for system updates...
[2026-06-27 11:03:26,206.206 INFO    ] 200
[2026-06-27 11:03:26,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:03:26,237.237 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:03:26,239.239 INFO    ] No update needed
[2026-06-27 11:03:26,240.240 INFO    ] Checking for camera pi updates...
[2026-06-27 11:03:26,260.260 INFO    ] 200
[2026-06-27 11:03:26,261.261 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:03:26,286.286 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:03:26,332.332 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:03:26,333.333 INFO    ] No camera update needed
[2026-06-27 11:03:26,335.335 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:03:26,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:03:26,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:03:26,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:03:28,384.384 INFO    ] ================================================
[2026-06-27 11:03:28,400.400 INFO    ] Launching Daemon at Sat Jun 27 11:03:28 IST 2026
[2026-06-27 11:03:28,412.412 INFO    ] ================================================
[2026-06-27 11:03:28,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:03:28
[2026-06-27 11:03:29,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:03:29,193.193 INFO    ] Initializing speech engine...
[2026-06-27 11:03:29,203.203 INFO    ] 2026-06-27 11:03:29
[2026-06-27 11:03:29,416.416 INFO    ] 2026-06-27 11:03:29
[2026-06-27 11:03:29,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:03:29,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:03:29,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:03:29,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:03:29,836.836 INFO    ] time= 27/06/2026 11:03:29
[2026-06-27 11:03:29,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:03:29,869.869 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:03:29,936.936 INFO    ] No existing commands found in stream
[2026-06-27 11:03:34,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:03:34,948.948 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-27 11:03:37,933.933 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 11:03:37,935.935 INFO    ] Checking for system updates...
[2026-06-27 11:03:37,956.956 INFO    ] 200
[2026-06-27 11:03:37,957.957 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:03:37,987.987 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:03:37,988.988 INFO    ] No update needed
[2026-06-27 11:03:37,990.990 INFO    ] Checking for camera pi updates...
[2026-06-27 11:03:38,009.009 INFO    ] 200
[2026-06-27 11:03:38,010.010 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:03:38,035.035 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:03:38,076.076 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:03:38,077.077 INFO    ] No camera update needed
[2026-06-27 11:03:38,078.078 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:03:38,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:03:38,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:03:38,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:03:40,125.125 INFO    ] ================================================
[2026-06-27 11:03:40,140.140 INFO    ] Launching Daemon at Sat Jun 27 11:03:40 IST 2026
[2026-06-27 11:03:40,151.151 INFO    ] ================================================
[2026-06-27 11:03:40,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:03:40
[2026-06-27 11:03:40,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:03:40,927.927 INFO    ] Initializing speech engine...
[2026-06-27 11:03:40,931.931 INFO    ] 2026-06-27 11:03:40
[2026-06-27 11:03:41,150.150 INFO    ] 2026-06-27 11:03:41
[2026-06-27 11:03:41,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:03:41,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:03:41,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:03:41,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:03:41,569.569 INFO    ] time= 27/06/2026 11:03:41
[2026-06-27 11:03:41,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:03:41,603.603 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:03:41,669.669 INFO    ] No existing commands found in stream
[2026-06-27 11:03:46,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:03:46,679.679 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-27 11:03:47,888.888 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 11:03:47,890.890 INFO    ] Checking for system updates...
[2026-06-27 11:03:47,910.910 INFO    ] 200
[2026-06-27 11:03:47,911.911 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:03:47,942.942 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:03:47,944.944 INFO    ] No update needed
[2026-06-27 11:03:47,945.945 INFO    ] Checking for camera pi updates...
[2026-06-27 11:03:47,965.965 INFO    ] 200
[2026-06-27 11:03:47,966.966 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:03:47,992.992 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:03:48,030.030 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:03:48,031.031 INFO    ] No camera update needed
[2026-06-27 11:03:48,033.033 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:03:48,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:03:48,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:03:48,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:03:50,081.081 INFO    ] ================================================
[2026-06-27 11:03:50,097.097 INFO    ] Launching Daemon at Sat Jun 27 11:03:50 IST 2026
[2026-06-27 11:03:50,107.107 INFO    ] ================================================
[2026-06-27 11:03:50,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:03:50
[2026-06-27 11:03:50,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:03:50,904.904 INFO    ] Initializing speech engine...
[2026-06-27 11:03:50,909.909 INFO    ] 2026-06-27 11:03:50
[2026-06-27 11:03:51,112.112 INFO    ] 2026-06-27 11:03:51
[2026-06-27 11:03:51,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:03:51,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:03:51,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:03:51,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:03:51,507.507 INFO    ] time= 27/06/2026 11:03:51
[2026-06-27 11:03:51,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:03:51,557.557 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:03:51,627.627 INFO    ] No existing commands found in stream
[2026-06-27 11:03:56,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:03:56,663.663 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-27 11:03:57,631.631 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:03:57,633.633 INFO    ] Checking for system updates...
[2026-06-27 11:03:57,655.655 INFO    ] 200
[2026-06-27 11:03:57,656.656 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:03:57,687.687 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:03:57,688.688 INFO    ] No update needed
[2026-06-27 11:03:57,689.689 INFO    ] Checking for camera pi updates...
[2026-06-27 11:03:57,709.709 INFO    ] 200
[2026-06-27 11:03:57,710.710 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:03:57,734.734 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:03:57,877.877 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:03:57,878.878 INFO    ] No camera update needed
[2026-06-27 11:03:57,879.879 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:03:57,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:03:57,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:03:57,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:03:59,927.927 INFO    ] ================================================
[2026-06-27 11:03:59,943.943 INFO    ] Launching Daemon at Sat Jun 27 11:03:59 IST 2026
[2026-06-27 11:03:59,953.953 INFO    ] ================================================
[2026-06-27 11:04:00,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:04:00
[2026-06-27 11:04:00,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:04:00,799.799 INFO    ] Initializing speech engine...
[2026-06-27 11:04:00,804.804 INFO    ] 2026-06-27 11:04:00
[2026-06-27 11:04:01,011.011 INFO    ] 2026-06-27 11:04:00
[2026-06-27 11:04:01,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:04:01,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:04:01,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:04:01,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:04:01,494.494 INFO    ] time= 27/06/2026 11:04:01
[2026-06-27 11:04:01,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:04:01,595.595 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:04:01,719.719 INFO    ] No existing commands found in stream
[2026-06-27 11:04:06,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:04:06,734.734 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-27 11:04:08,180.180 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 11:04:08,181.181 INFO    ] Checking for system updates...
[2026-06-27 11:04:08,203.203 INFO    ] 200
[2026-06-27 11:04:08,205.205 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:04:08,235.235 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:04:08,236.236 INFO    ] No update needed
[2026-06-27 11:04:08,238.238 INFO    ] Checking for camera pi updates...
[2026-06-27 11:04:08,257.257 INFO    ] 200
[2026-06-27 11:04:08,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:04:08,283.283 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:04:08,318.318 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:04:08,320.320 INFO    ] No camera update needed
[2026-06-27 11:04:08,321.321 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:04:08,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:04:08,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:04:08,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:04:10,368.368 INFO    ] ================================================
[2026-06-27 11:04:10,383.383 INFO    ] Launching Daemon at Sat Jun 27 11:04:10 IST 2026
[2026-06-27 11:04:10,394.394 INFO    ] ================================================
[2026-06-27 11:04:10,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:04:10
[2026-06-27 11:04:11,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:04:11,178.178 INFO    ] Initializing speech engine...
[2026-06-27 11:04:11,188.188 INFO    ] 2026-06-27 11:04:11
[2026-06-27 11:04:11,394.394 INFO    ] 2026-06-27 11:04:11
[2026-06-27 11:04:11,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:04:11,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:04:11,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:04:11,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:04:11,815.815 INFO    ] time= 27/06/2026 11:04:11
[2026-06-27 11:04:11,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:04:11,843.843 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:04:11,910.910 INFO    ] No existing commands found in stream
[2026-06-27 11:04:16,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:04:16,921.921 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-27 11:04:20,985.985 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 11:04:20,987.987 INFO    ] Checking for system updates...
[2026-06-27 11:04:21,007.007 INFO    ] 200
[2026-06-27 11:04:21,009.009 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:04:21,039.039 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:04:21,040.040 INFO    ] No update needed
[2026-06-27 11:04:21,042.042 INFO    ] Checking for camera pi updates...
[2026-06-27 11:04:21,062.062 INFO    ] 200
[2026-06-27 11:04:21,064.064 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:04:21,087.087 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:04:21,132.132 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:04:21,134.134 INFO    ] No camera update needed
[2026-06-27 11:04:21,135.135 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:04:21,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:04:21,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:04:21,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:04:23,182.182 INFO    ] ================================================
[2026-06-27 11:04:23,197.197 INFO    ] Launching Daemon at Sat Jun 27 11:04:23 IST 2026
[2026-06-27 11:04:23,208.208 INFO    ] ================================================
[2026-06-27 11:04:23,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:04:23
[2026-06-27 11:04:23,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:04:24,021.021 INFO    ] Initializing speech engine...
[2026-06-27 11:04:24,034.034 INFO    ] 2026-06-27 11:04:24
[2026-06-27 11:04:24,254.254 INFO    ] 2026-06-27 11:04:24
[2026-06-27 11:04:24,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:04:24,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:04:24,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:04:24,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:04:24,700.700 INFO    ] time= 27/06/2026 11:04:24
[2026-06-27 11:04:24,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:04:24,734.734 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:04:24,805.805 INFO    ] No existing commands found in stream
[2026-06-27 11:04:29,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:04:29,832.832 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-27 11:04:33,730.730 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 11:04:33,732.732 INFO    ] Checking for system updates...
[2026-06-27 11:04:33,753.753 INFO    ] 200
[2026-06-27 11:04:33,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:04:33,785.785 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:04:33,786.786 INFO    ] No update needed
[2026-06-27 11:04:33,787.787 INFO    ] Checking for camera pi updates...
[2026-06-27 11:04:33,807.807 INFO    ] 200
[2026-06-27 11:04:33,808.808 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:04:33,831.831 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:04:33,870.870 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:04:33,871.871 INFO    ] No camera update needed
[2026-06-27 11:04:33,872.872 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:04:33,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:04:33,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:04:33,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:04:35,917.917 INFO    ] ================================================
[2026-06-27 11:04:35,933.933 INFO    ] Launching Daemon at Sat Jun 27 11:04:35 IST 2026
[2026-06-27 11:04:35,944.944 INFO    ] ================================================
[2026-06-27 11:04:36,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:04:36
[2026-06-27 11:04:36,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:04:36,768.768 INFO    ] Initializing speech engine...
[2026-06-27 11:04:36,781.781 INFO    ] 2026-06-27 11:04:36
[2026-06-27 11:04:37,005.005 INFO    ] 2026-06-27 11:04:36
[2026-06-27 11:04:37,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:04:37,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:04:37,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:04:37,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:04:37,446.446 INFO    ] time= 27/06/2026 11:04:37
[2026-06-27 11:04:37,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:04:37,491.491 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:04:37,594.594 INFO    ] No existing commands found in stream
[2026-06-27 11:04:42,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:04:42,606.606 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-27 11:04:46,592.592 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:04:46,594.594 INFO    ] Checking for system updates...
[2026-06-27 11:04:46,616.616 INFO    ] 200
[2026-06-27 11:04:46,617.617 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:04:46,648.648 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:04:46,649.649 INFO    ] No update needed
[2026-06-27 11:04:46,651.651 INFO    ] Checking for camera pi updates...
[2026-06-27 11:04:46,670.670 INFO    ] 200
[2026-06-27 11:04:46,671.671 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:04:46,695.695 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:04:46,736.736 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:04:46,738.738 INFO    ] No camera update needed
[2026-06-27 11:04:46,739.739 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:04:46,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:04:46,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:04:46,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:04:48,788.788 INFO    ] ================================================
[2026-06-27 11:04:48,808.808 INFO    ] Launching Daemon at Sat Jun 27 11:04:48 IST 2026
[2026-06-27 11:04:48,819.819 INFO    ] ================================================
[2026-06-27 11:04:49,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:04:49
[2026-06-27 11:04:49,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:04:49,660.660 INFO    ] Initializing speech engine...
[2026-06-27 11:04:49,664.664 INFO    ] 2026-06-27 11:04:49
[2026-06-27 11:04:49,871.871 INFO    ] 2026-06-27 11:04:49
[2026-06-27 11:04:49,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:04:50,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:04:50,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:04:50,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:04:50,292.292 INFO    ] time= 27/06/2026 11:04:50
[2026-06-27 11:04:50,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:04:50,320.320 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:04:50,387.387 INFO    ] No existing commands found in stream
[2026-06-27 11:04:55,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:04:55,406.406 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-27 11:04:58,396.396 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 11:04:58,398.398 INFO    ] Checking for system updates...
[2026-06-27 11:04:58,426.426 INFO    ] 200
[2026-06-27 11:04:58,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-27 11:04:58,429.429 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-27 11:04:58,430.430 INFO    ] Checking for camera pi updates...
[2026-06-27 11:04:58,452.452 INFO    ] 200
[2026-06-27 11:04:58,454.454 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-27 11:04:58,456.456 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-27 11:04:58,457.457 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:04:58,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:04:58,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:04:58,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:05:00,505.505 INFO    ] ================================================
[2026-06-27 11:05:00,521.521 INFO    ] Launching Daemon at Sat Jun 27 11:05:00 IST 2026
[2026-06-27 11:05:00,533.533 INFO    ] ================================================
[2026-06-27 11:05:00,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:05:00
[2026-06-27 11:05:01,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:05:01,364.364 INFO    ] Initializing speech engine...
[2026-06-27 11:05:01,369.369 INFO    ] 2026-06-27 11:05:01
[2026-06-27 11:05:01,574.574 INFO    ] 2026-06-27 11:05:01
[2026-06-27 11:05:01,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:05:01,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:05:01,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:05:01,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:05:01,948.948 INFO    ] time= 27/06/2026 11:05:01
[2026-06-27 11:05:01,951.951 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:05:01,953.953 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:05:02,031.031 INFO    ] No existing commands found in stream
[2026-06-27 11:05:07,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:05:07,038.038 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-27 11:05:08,380.380 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 11:05:08,382.382 INFO    ] Checking for system updates...
[2026-06-27 11:05:08,404.404 INFO    ] 200
[2026-06-27 11:05:08,406.406 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:05:08,438.438 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:05:08,439.439 INFO    ] No update needed
[2026-06-27 11:05:08,441.441 INFO    ] Checking for camera pi updates...
[2026-06-27 11:05:08,462.462 INFO    ] 200
[2026-06-27 11:05:08,464.464 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:05:08,487.487 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:05:08,526.526 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:05:08,528.528 INFO    ] No camera update needed
[2026-06-27 11:05:08,529.529 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:05:08,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:05:08,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:05:08,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:05:10,575.575 INFO    ] ================================================
[2026-06-27 11:05:10,591.591 INFO    ] Launching Daemon at Sat Jun 27 11:05:10 IST 2026
[2026-06-27 11:05:10,603.603 INFO    ] ================================================
[2026-06-27 11:05:10,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:05:10
[2026-06-27 11:05:11,303.303 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:05:11,454.454 INFO    ] Initializing speech engine...
[2026-06-27 11:05:11,460.460 INFO    ] 2026-06-27 11:05:11
[2026-06-27 11:05:11,669.669 INFO    ] 2026-06-27 11:05:11
[2026-06-27 11:05:11,698.698 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:05:11,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:05:11,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:05:12,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:05:12,093.093 INFO    ] time= 27/06/2026 11:05:12
[2026-06-27 11:05:12,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:05:12,120.120 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:05:12,186.186 INFO    ] No existing commands found in stream
[2026-06-27 11:05:17,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:05:17,201.201 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-27 11:05:19,942.942 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 11:05:19,944.944 INFO    ] Checking for system updates...
[2026-06-27 11:05:19,965.965 INFO    ] 200
[2026-06-27 11:05:19,966.966 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:05:19,998.998 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:05:19,999.999 INFO    ] No update needed
[2026-06-27 11:05:20,001.001 INFO    ] Checking for camera pi updates...
[2026-06-27 11:05:20,022.022 INFO    ] 200
[2026-06-27 11:05:20,024.024 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:05:20,048.048 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:05:20,082.082 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:05:20,083.083 INFO    ] No camera update needed
[2026-06-27 11:05:20,085.085 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:05:20,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:05:20,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:05:20,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:05:22,132.132 INFO    ] ================================================
[2026-06-27 11:05:22,148.148 INFO    ] Launching Daemon at Sat Jun 27 11:05:22 IST 2026
[2026-06-27 11:05:22,158.158 INFO    ] ================================================
[2026-06-27 11:05:22,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:05:22
[2026-06-27 11:05:22,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:05:22,962.962 INFO    ] Initializing speech engine...
[2026-06-27 11:05:22,972.972 INFO    ] 2026-06-27 11:05:22
[2026-06-27 11:05:23,180.180 INFO    ] 2026-06-27 11:05:23
[2026-06-27 11:05:23,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:05:23,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:05:23,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:05:23,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:05:23,597.597 INFO    ] time= 27/06/2026 11:05:23
[2026-06-27 11:05:23,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:05:23,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:05:23,703.703 INFO    ] No existing commands found in stream
[2026-06-27 11:05:28,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:05:28,733.733 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-27 11:05:32,297.297 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 11:05:32,299.299 INFO    ] Checking for system updates...
[2026-06-27 11:05:32,324.324 INFO    ] 200
[2026-06-27 11:05:32,325.325 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:05:32,362.362 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:05:32,364.364 INFO    ] No update needed
[2026-06-27 11:05:32,366.366 INFO    ] Checking for camera pi updates...
[2026-06-27 11:05:32,387.387 INFO    ] 200
[2026-06-27 11:05:32,389.389 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:05:32,414.414 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:05:32,440.440 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:05:32,442.442 INFO    ] No camera update needed
[2026-06-27 11:05:32,443.443 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:05:32,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:05:32,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:05:32,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:05:34,490.490 INFO    ] ================================================
[2026-06-27 11:05:34,506.506 INFO    ] Launching Daemon at Sat Jun 27 11:05:34 IST 2026
[2026-06-27 11:05:34,517.517 INFO    ] ================================================
[2026-06-27 11:05:34,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:05:34
[2026-06-27 11:05:35,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:05:35,333.333 INFO    ] Initializing speech engine...
[2026-06-27 11:05:35,338.338 INFO    ] 2026-06-27 11:05:35
[2026-06-27 11:05:35,543.543 INFO    ] 2026-06-27 11:05:35
[2026-06-27 11:05:35,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:05:35,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:05:35,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:05:35,942.942 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:05:35,977.977 INFO    ] time= 27/06/2026 11:05:35
[2026-06-27 11:05:35,987.987 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:05:35,993.993 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:05:36,058.058 INFO    ] No existing commands found in stream
[2026-06-27 11:05:41,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:05:41,072.072 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-27 11:05:43,640.640 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:05:43,641.641 INFO    ] Checking for system updates...
[2026-06-27 11:05:43,662.662 INFO    ] 200
[2026-06-27 11:05:43,663.663 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:05:43,694.694 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:05:43,695.695 INFO    ] No update needed
[2026-06-27 11:05:43,696.696 INFO    ] Checking for camera pi updates...
[2026-06-27 11:05:43,717.717 INFO    ] 200
[2026-06-27 11:05:43,718.718 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:05:43,743.743 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:05:43,777.777 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:05:43,779.779 INFO    ] No camera update needed
[2026-06-27 11:05:43,780.780 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:05:43,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:05:43,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:05:43,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:05:45,827.827 INFO    ] ================================================
[2026-06-27 11:05:45,843.843 INFO    ] Launching Daemon at Sat Jun 27 11:05:45 IST 2026
[2026-06-27 11:05:45,854.854 INFO    ] ================================================
[2026-06-27 11:05:46,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:05:46
[2026-06-27 11:05:46,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:05:46,705.705 INFO    ] Initializing speech engine...
[2026-06-27 11:05:46,715.715 INFO    ] 2026-06-27 11:05:46
[2026-06-27 11:05:46,924.924 INFO    ] 2026-06-27 11:05:46
[2026-06-27 11:05:46,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:05:47,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:05:47,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:05:47,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:05:47,345.345 INFO    ] time= 27/06/2026 11:05:47
[2026-06-27 11:05:47,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:05:47,373.373 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:05:47,441.441 INFO    ] No existing commands found in stream
[2026-06-27 11:05:52,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:05:52,469.469 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-27 11:05:56,521.521 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 11:05:56,523.523 INFO    ] Checking for system updates...
[2026-06-27 11:05:56,548.548 INFO    ] 200
[2026-06-27 11:05:56,549.549 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:05:56,580.580 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:05:56,581.581 INFO    ] No update needed
[2026-06-27 11:05:56,582.582 INFO    ] Checking for camera pi updates...
[2026-06-27 11:05:56,603.603 INFO    ] 200
[2026-06-27 11:05:56,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:05:56,630.630 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:05:56,672.672 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:05:56,674.674 INFO    ] No camera update needed
[2026-06-27 11:05:56,675.675 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:05:56,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:05:56,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:05:56,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:05:58,722.722 INFO    ] ================================================
[2026-06-27 11:05:58,738.738 INFO    ] Launching Daemon at Sat Jun 27 11:05:58 IST 2026
[2026-06-27 11:05:58,748.748 INFO    ] ================================================
[2026-06-27 11:05:59,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:05:59
[2026-06-27 11:05:59,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:05:59,529.529 INFO    ] Initializing speech engine...
[2026-06-27 11:05:59,533.533 INFO    ] 2026-06-27 11:05:59
[2026-06-27 11:05:59,763.763 INFO    ] 2026-06-27 11:05:59
[2026-06-27 11:05:59,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:05:59,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:05:59,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:06:00,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:06:00,193.193 INFO    ] time= 27/06/2026 11:06:00
[2026-06-27 11:06:00,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:06:00,239.239 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:06:00,314.314 INFO    ] No existing commands found in stream
[2026-06-27 11:06:05,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:06:05,327.327 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-27 11:06:07,044.044 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:06:07,046.046 INFO    ] Checking for system updates...
[2026-06-27 11:06:07,066.066 INFO    ] 200
[2026-06-27 11:06:07,068.068 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:06:07,099.099 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:06:07,100.100 INFO    ] No update needed
[2026-06-27 11:06:07,102.102 INFO    ] Checking for camera pi updates...
[2026-06-27 11:06:07,123.123 INFO    ] 200
[2026-06-27 11:06:07,125.125 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:06:07,149.149 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:06:07,199.199 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:06:07,200.200 INFO    ] No camera update needed
[2026-06-27 11:06:07,201.201 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:06:07,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:06:07,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:06:07,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:06:09,247.247 INFO    ] ================================================
[2026-06-27 11:06:09,263.263 INFO    ] Launching Daemon at Sat Jun 27 11:06:09 IST 2026
[2026-06-27 11:06:09,274.274 INFO    ] ================================================
[2026-06-27 11:06:09,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:06:09
[2026-06-27 11:06:09,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:06:10,102.102 INFO    ] Initializing speech engine...
[2026-06-27 11:06:10,116.116 INFO    ] 2026-06-27 11:06:10
[2026-06-27 11:06:10,323.323 INFO    ] 2026-06-27 11:06:10
[2026-06-27 11:06:10,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:06:13,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:06:13,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:06:13,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:06:13,896.896 INFO    ] time= 27/06/2026 11:06:13
[2026-06-27 11:06:13,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:06:13,901.901 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:06:13,951.951 INFO    ] No existing commands found in stream
[2026-06-27 11:06:18,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:06:18,963.963 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-27 11:06:22,170.170 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:06:22,171.171 INFO    ] Checking for system updates...
[2026-06-27 11:06:22,193.193 INFO    ] 200
[2026-06-27 11:06:22,195.195 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:06:22,229.229 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:06:22,230.230 INFO    ] No update needed
[2026-06-27 11:06:22,231.231 INFO    ] Checking for camera pi updates...
[2026-06-27 11:06:22,251.251 INFO    ] 200
[2026-06-27 11:06:22,252.252 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:06:22,276.276 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:06:22,313.313 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:06:22,314.314 INFO    ] No camera update needed
[2026-06-27 11:06:22,315.315 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:06:22,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:06:22,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:06:22,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:06:24,364.364 INFO    ] ================================================
[2026-06-27 11:06:24,380.380 INFO    ] Launching Daemon at Sat Jun 27 11:06:24 IST 2026
[2026-06-27 11:06:24,390.390 INFO    ] ================================================
[2026-06-27 11:06:24,754.754 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:06:24
[2026-06-27 11:06:25,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:06:25,205.205 INFO    ] Initializing speech engine...
[2026-06-27 11:06:25,213.213 INFO    ] 2026-06-27 11:06:25
[2026-06-27 11:06:25,420.420 INFO    ] 2026-06-27 11:06:25
[2026-06-27 11:06:25,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:06:25,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:06:25,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:06:25,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:06:25,860.860 INFO    ] time= 27/06/2026 11:06:25
[2026-06-27 11:06:25,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:06:25,868.868 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:06:25,933.933 INFO    ] No existing commands found in stream
[2026-06-27 11:06:30,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:06:30,947.947 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-27 11:06:35,298.298 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 11:06:35,300.300 INFO    ] Checking for system updates...
[2026-06-27 11:06:35,320.320 INFO    ] 200
[2026-06-27 11:06:35,321.321 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:06:35,352.352 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:06:35,353.353 INFO    ] No update needed
[2026-06-27 11:06:35,354.354 INFO    ] Checking for camera pi updates...
[2026-06-27 11:06:35,375.375 INFO    ] 200
[2026-06-27 11:06:35,377.377 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:06:35,402.402 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:06:35,436.436 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:06:35,437.437 INFO    ] No camera update needed
[2026-06-27 11:06:35,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:06:35,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:06:35,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:06:35,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:06:37,486.486 INFO    ] ================================================
[2026-06-27 11:06:37,502.502 INFO    ] Launching Daemon at Sat Jun 27 11:06:37 IST 2026
[2026-06-27 11:06:37,512.512 INFO    ] ================================================
[2026-06-27 11:06:37,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:06:37
[2026-06-27 11:06:38,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:06:38,294.294 INFO    ] Initializing speech engine...
[2026-06-27 11:06:38,307.307 INFO    ] 2026-06-27 11:06:38
[2026-06-27 11:06:38,514.514 INFO    ] 2026-06-27 11:06:38
[2026-06-27 11:06:38,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:06:38,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:06:38,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:06:38,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:06:38,868.868 INFO    ] time= 27/06/2026 11:06:38
[2026-06-27 11:06:38,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:06:38,959.959 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:06:39,028.028 INFO    ] No existing commands found in stream
[2026-06-27 11:06:44,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:06:44,041.041 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-27 11:06:45,831.831 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 11:06:45,832.832 INFO    ] Checking for system updates...
[2026-06-27 11:06:45,855.855 INFO    ] 200
[2026-06-27 11:06:45,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:06:45,887.887 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:06:45,889.889 INFO    ] No update needed
[2026-06-27 11:06:45,890.890 INFO    ] Checking for camera pi updates...
[2026-06-27 11:06:45,910.910 INFO    ] 200
[2026-06-27 11:06:45,912.912 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:06:45,937.937 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:06:45,975.975 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:06:45,976.976 INFO    ] No camera update needed
[2026-06-27 11:06:45,978.978 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:06:45,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:06:45,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:06:45,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:06:48,029.029 INFO    ] ================================================
[2026-06-27 11:06:48,044.044 INFO    ] Launching Daemon at Sat Jun 27 11:06:48 IST 2026
[2026-06-27 11:06:48,055.055 INFO    ] ================================================
[2026-06-27 11:06:48,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:06:48
[2026-06-27 11:06:48,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:06:48,831.831 INFO    ] Initializing speech engine...
[2026-06-27 11:06:48,841.841 INFO    ] 2026-06-27 11:06:48
[2026-06-27 11:06:49,043.043 INFO    ] 2026-06-27 11:06:49
[2026-06-27 11:06:49,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:06:49,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:06:49,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:06:49,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:06:49,472.472 INFO    ] time= 27/06/2026 11:06:49
[2026-06-27 11:06:49,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:06:49,501.501 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:06:49,568.568 INFO    ] No existing commands found in stream
[2026-06-27 11:06:54,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:06:54,580.580 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-27 11:06:57,477.477 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 11:06:57,479.479 INFO    ] Checking for system updates...
[2026-06-27 11:06:57,501.501 INFO    ] 200
[2026-06-27 11:06:57,502.502 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:06:57,533.533 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:06:57,534.534 INFO    ] No update needed
[2026-06-27 11:06:57,535.535 INFO    ] Checking for camera pi updates...
[2026-06-27 11:06:57,555.555 INFO    ] 200
[2026-06-27 11:06:57,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:06:57,581.581 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:06:57,633.633 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:06:57,635.635 INFO    ] No camera update needed
[2026-06-27 11:06:57,636.636 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:06:57,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:06:57,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:06:57,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:06:59,684.684 INFO    ] ================================================
[2026-06-27 11:06:59,699.699 INFO    ] Launching Daemon at Sat Jun 27 11:06:59 IST 2026
[2026-06-27 11:06:59,711.711 INFO    ] ================================================
[2026-06-27 11:07:00,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:07:00
[2026-06-27 11:07:00,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:07:00,540.540 INFO    ] Initializing speech engine...
[2026-06-27 11:07:00,547.547 INFO    ] 2026-06-27 11:07:00
[2026-06-27 11:07:00,751.751 INFO    ] 2026-06-27 11:07:00
[2026-06-27 11:07:00,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:07:00,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:07:00,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:07:01,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:07:01,180.180 INFO    ] time= 27/06/2026 11:07:01
[2026-06-27 11:07:01,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:07:01,209.209 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:07:01,278.278 INFO    ] No existing commands found in stream
[2026-06-27 11:07:06,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:07:06,289.289 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-27 11:07:07,033.033 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 11:07:07,034.034 INFO    ] Checking for system updates...
[2026-06-27 11:07:07,056.056 INFO    ] 200
[2026-06-27 11:07:07,057.057 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:07:07,088.088 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:07:07,089.089 INFO    ] No update needed
[2026-06-27 11:07:07,091.091 INFO    ] Checking for camera pi updates...
[2026-06-27 11:07:07,113.113 INFO    ] 200
[2026-06-27 11:07:07,115.115 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:07:07,138.138 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:07:07,176.176 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:07:07,178.178 INFO    ] No camera update needed
[2026-06-27 11:07:07,179.179 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:07:07,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:07:07,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:07:07,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:07:09,225.225 INFO    ] ================================================
[2026-06-27 11:07:09,240.240 INFO    ] Launching Daemon at Sat Jun 27 11:07:09 IST 2026
[2026-06-27 11:07:09,251.251 INFO    ] ================================================
[2026-06-27 11:07:09,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:07:09
[2026-06-27 11:07:09,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:07:10,135.135 INFO    ] Initializing speech engine...
[2026-06-27 11:07:10,141.141 INFO    ] 2026-06-27 11:07:10
[2026-06-27 11:07:10,346.346 INFO    ] 2026-06-27 11:07:10
[2026-06-27 11:07:10,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:07:10,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:07:10,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:07:10,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:07:10,758.758 INFO    ] time= 27/06/2026 11:07:10
[2026-06-27 11:07:10,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:07:10,795.795 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:07:10,864.864 INFO    ] No existing commands found in stream
[2026-06-27 11:07:15,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:07:15,881.881 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-27 11:07:18,587.587 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 11:07:18,588.588 INFO    ] Checking for system updates...
[2026-06-27 11:07:18,610.610 INFO    ] 200
[2026-06-27 11:07:18,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:07:18,645.645 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:07:18,647.647 INFO    ] No update needed
[2026-06-27 11:07:18,648.648 INFO    ] Checking for camera pi updates...
[2026-06-27 11:07:18,668.668 INFO    ] 200
[2026-06-27 11:07:18,669.669 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:07:18,694.694 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:07:18,738.738 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:07:18,739.739 INFO    ] No camera update needed
[2026-06-27 11:07:18,741.741 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:07:18,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:07:18,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:07:18,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:07:20,787.787 INFO    ] ================================================
[2026-06-27 11:07:20,802.802 INFO    ] Launching Daemon at Sat Jun 27 11:07:20 IST 2026
[2026-06-27 11:07:20,813.813 INFO    ] ================================================
[2026-06-27 11:07:21,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:07:21
[2026-06-27 11:07:21,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:07:21,601.601 INFO    ] Initializing speech engine...
[2026-06-27 11:07:21,612.612 INFO    ] 2026-06-27 11:07:21
[2026-06-27 11:07:21,815.815 INFO    ] 2026-06-27 11:07:21
[2026-06-27 11:07:21,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:07:22,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:07:22,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:07:22,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:07:22,234.234 INFO    ] time= 27/06/2026 11:07:22
[2026-06-27 11:07:22,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:07:22,264.264 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:07:22,353.353 INFO    ] No existing commands found in stream
[2026-06-27 11:07:27,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:07:27,365.365 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-27 11:07:28,190.190 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:07:28,191.191 INFO    ] Checking for system updates...
[2026-06-27 11:07:28,214.214 INFO    ] 200
[2026-06-27 11:07:28,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:07:28,248.248 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:07:28,249.249 INFO    ] No update needed
[2026-06-27 11:07:28,250.250 INFO    ] Checking for camera pi updates...
[2026-06-27 11:07:28,272.272 INFO    ] 200
[2026-06-27 11:07:28,273.273 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:07:28,297.297 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:07:28,340.340 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:07:28,341.341 INFO    ] No camera update needed
[2026-06-27 11:07:28,343.343 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:07:28,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:07:28,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:07:28,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:07:30,390.390 INFO    ] ================================================
[2026-06-27 11:07:30,405.405 INFO    ] Launching Daemon at Sat Jun 27 11:07:30 IST 2026
[2026-06-27 11:07:30,416.416 INFO    ] ================================================
[2026-06-27 11:07:30,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:07:30
[2026-06-27 11:07:31,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:07:31,223.223 INFO    ] Initializing speech engine...
[2026-06-27 11:07:31,233.233 INFO    ] 2026-06-27 11:07:31
[2026-06-27 11:07:31,437.437 INFO    ] 2026-06-27 11:07:31
[2026-06-27 11:07:31,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:07:31,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:07:31,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:07:31,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:07:31,913.913 INFO    ] time= 27/06/2026 11:07:31
[2026-06-27 11:07:31,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:07:31,922.922 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:07:31,990.990 INFO    ] No existing commands found in stream
[2026-06-27 11:07:37,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:07:37,004.004 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-27 11:07:38,930.930 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 11:07:38,931.931 INFO    ] Checking for system updates...
[2026-06-27 11:07:38,952.952 INFO    ] 200
[2026-06-27 11:07:38,954.954 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:07:38,984.984 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:07:38,985.985 INFO    ] No update needed
[2026-06-27 11:07:38,987.987 INFO    ] Checking for camera pi updates...
[2026-06-27 11:07:39,006.006 INFO    ] 200
[2026-06-27 11:07:39,007.007 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:07:39,033.033 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:07:39,075.075 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:07:39,076.076 INFO    ] No camera update needed
[2026-06-27 11:07:39,078.078 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:07:39,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:07:39,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:07:39,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:07:41,124.124 INFO    ] ================================================
[2026-06-27 11:07:41,140.140 INFO    ] Launching Daemon at Sat Jun 27 11:07:41 IST 2026
[2026-06-27 11:07:41,150.150 INFO    ] ================================================
[2026-06-27 11:07:41,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:07:41
[2026-06-27 11:07:41,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:07:41,961.961 INFO    ] Initializing speech engine...
[2026-06-27 11:07:41,973.973 INFO    ] 2026-06-27 11:07:41
[2026-06-27 11:07:42,181.181 INFO    ] 2026-06-27 11:07:42
[2026-06-27 11:07:42,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:07:42,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:07:42,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:07:42,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:07:42,604.604 INFO    ] time= 27/06/2026 11:07:42
[2026-06-27 11:07:42,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:07:42,631.631 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:07:42,699.699 INFO    ] No existing commands found in stream
[2026-06-27 11:07:47,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:07:47,726.726 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-27 11:07:48,509.509 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 11:07:48,510.510 INFO    ] Checking for system updates...
[2026-06-27 11:07:48,531.531 INFO    ] 200
[2026-06-27 11:07:48,532.532 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:07:48,565.565 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:07:48,566.566 INFO    ] No update needed
[2026-06-27 11:07:48,567.567 INFO    ] Checking for camera pi updates...
[2026-06-27 11:07:48,590.590 INFO    ] 200
[2026-06-27 11:07:48,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:07:48,615.615 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:07:48,648.648 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:07:48,650.650 INFO    ] No camera update needed
[2026-06-27 11:07:48,651.651 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:07:48,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:07:48,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:07:48,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:07:50,696.696 INFO    ] ================================================
[2026-06-27 11:07:50,712.712 INFO    ] Launching Daemon at Sat Jun 27 11:07:50 IST 2026
[2026-06-27 11:07:50,722.722 INFO    ] ================================================
[2026-06-27 11:07:51,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:07:51
[2026-06-27 11:07:51,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:07:51,548.548 INFO    ] Initializing speech engine...
[2026-06-27 11:07:51,553.553 INFO    ] 2026-06-27 11:07:51
[2026-06-27 11:07:51,758.758 INFO    ] 2026-06-27 11:07:51
[2026-06-27 11:07:51,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:07:51,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:07:51,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:07:52,116.116 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:07:52,178.178 INFO    ] time= 27/06/2026 11:07:52
[2026-06-27 11:07:52,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:07:52,207.207 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:07:52,273.273 INFO    ] No existing commands found in stream
[2026-06-27 11:07:57,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:07:57,286.286 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-27 11:08:01,163.163 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 11:08:01,165.165 INFO    ] Checking for system updates...
[2026-06-27 11:08:01,186.186 INFO    ] 200
[2026-06-27 11:08:01,188.188 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:08:01,219.219 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:08:01,221.221 INFO    ] No update needed
[2026-06-27 11:08:01,222.222 INFO    ] Checking for camera pi updates...
[2026-06-27 11:08:01,242.242 INFO    ] 200
[2026-06-27 11:08:01,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:08:01,268.268 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:08:01,316.316 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:08:01,317.317 INFO    ] No camera update needed
[2026-06-27 11:08:01,318.318 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:08:01,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:08:01,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:08:01,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:08:03,360.360 INFO    ] ================================================
[2026-06-27 11:08:03,375.375 INFO    ] Launching Daemon at Sat Jun 27 11:08:03 IST 2026
[2026-06-27 11:08:03,385.385 INFO    ] ================================================
[2026-06-27 11:08:03,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:08:03
[2026-06-27 11:08:04,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:08:04,186.186 INFO    ] Initializing speech engine...
[2026-06-27 11:08:04,191.191 INFO    ] 2026-06-27 11:08:04
[2026-06-27 11:08:04,396.396 INFO    ] 2026-06-27 11:08:04
[2026-06-27 11:08:04,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:08:04,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:08:04,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:08:04,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:08:04,832.832 INFO    ] time= 27/06/2026 11:08:04
[2026-06-27 11:08:04,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:08:04,867.867 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:08:04,934.934 INFO    ] No existing commands found in stream
[2026-06-27 11:08:09,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:08:09,948.948 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-27 11:08:14,215.215 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 11:08:14,216.216 INFO    ] Checking for system updates...
[2026-06-27 11:08:14,238.238 INFO    ] 200
[2026-06-27 11:08:14,239.239 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:08:14,269.269 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:08:14,271.271 INFO    ] No update needed
[2026-06-27 11:08:14,272.272 INFO    ] Checking for camera pi updates...
[2026-06-27 11:08:14,293.293 INFO    ] 200
[2026-06-27 11:08:14,294.294 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:08:14,319.319 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:08:14,459.459 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:08:14,461.461 INFO    ] No camera update needed
[2026-06-27 11:08:14,462.462 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:08:14,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:08:14,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:08:14,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:08:16,510.510 INFO    ] ================================================
[2026-06-27 11:08:16,525.525 INFO    ] Launching Daemon at Sat Jun 27 11:08:16 IST 2026
[2026-06-27 11:08:16,536.536 INFO    ] ================================================
[2026-06-27 11:08:16,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:08:16
[2026-06-27 11:08:17,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:08:17,326.326 INFO    ] Initializing speech engine...
[2026-06-27 11:08:17,335.335 INFO    ] 2026-06-27 11:08:17
[2026-06-27 11:08:17,550.550 INFO    ] 2026-06-27 11:08:17
[2026-06-27 11:08:17,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:08:17,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:08:17,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:08:17,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:08:17,955.955 INFO    ] time= 27/06/2026 11:08:17
[2026-06-27 11:08:17,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:08:18,001.001 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:08:18,073.073 INFO    ] No existing commands found in stream
[2026-06-27 11:08:23,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:08:23,085.085 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-27 11:08:23,470.470 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 11:08:23,471.471 INFO    ] Checking for system updates...
[2026-06-27 11:08:23,492.492 INFO    ] 200
[2026-06-27 11:08:23,494.494 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:08:23,525.525 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:08:23,526.526 INFO    ] No update needed
[2026-06-27 11:08:23,527.527 INFO    ] Checking for camera pi updates...
[2026-06-27 11:08:23,547.547 INFO    ] 200
[2026-06-27 11:08:23,548.548 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:08:23,571.571 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:08:23,619.619 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:08:23,620.620 INFO    ] No camera update needed
[2026-06-27 11:08:23,621.621 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:08:23,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:08:23,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:08:23,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:08:25,667.667 INFO    ] ================================================
[2026-06-27 11:08:25,683.683 INFO    ] Launching Daemon at Sat Jun 27 11:08:25 IST 2026
[2026-06-27 11:08:25,694.694 INFO    ] ================================================
[2026-06-27 11:08:26,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:08:26
[2026-06-27 11:08:26,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:08:26,486.486 INFO    ] Initializing speech engine...
[2026-06-27 11:08:26,491.491 INFO    ] 2026-06-27 11:08:26
[2026-06-27 11:08:26,696.696 INFO    ] 2026-06-27 11:08:26
[2026-06-27 11:08:26,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:08:26,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:08:26,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:08:27,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:08:27,113.113 INFO    ] time= 27/06/2026 11:08:27
[2026-06-27 11:08:27,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:08:27,142.142 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:08:27,208.208 INFO    ] No existing commands found in stream
[2026-06-27 11:08:32,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:08:32,217.217 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-27 11:08:33,918.918 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:08:33,920.920 INFO    ] Checking for system updates...
[2026-06-27 11:08:33,942.942 INFO    ] 200
[2026-06-27 11:08:33,943.943 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:08:33,976.976 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:08:33,977.977 INFO    ] No update needed
[2026-06-27 11:08:33,978.978 INFO    ] Checking for camera pi updates...
[2026-06-27 11:08:33,998.998 INFO    ] 200
[2026-06-27 11:08:33,999.999 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:08:34,022.022 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:08:34,062.062 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:08:34,064.064 INFO    ] No camera update needed
[2026-06-27 11:08:34,065.065 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:08:34,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:08:34,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:08:34,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:08:36,111.111 INFO    ] ================================================
[2026-06-27 11:08:36,127.127 INFO    ] Launching Daemon at Sat Jun 27 11:08:36 IST 2026
[2026-06-27 11:08:36,141.141 INFO    ] ================================================
[2026-06-27 11:08:36,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:08:36
[2026-06-27 11:08:36,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:08:36,958.958 INFO    ] Initializing speech engine...
[2026-06-27 11:08:36,962.962 INFO    ] 2026-06-27 11:08:36
[2026-06-27 11:08:37,165.165 INFO    ] 2026-06-27 11:08:37
[2026-06-27 11:08:37,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:08:37,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:08:37,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:08:37,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:08:37,559.559 INFO    ] time= 27/06/2026 11:08:37
[2026-06-27 11:08:37,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:08:37,615.615 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:08:37,710.710 INFO    ] No existing commands found in stream
[2026-06-27 11:08:42,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:08:42,722.722 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-27 11:08:43,698.698 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 11:08:43,699.699 INFO    ] Checking for system updates...
[2026-06-27 11:08:43,720.720 INFO    ] 200
[2026-06-27 11:08:43,722.722 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:08:43,755.755 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:08:43,756.756 INFO    ] No update needed
[2026-06-27 11:08:43,758.758 INFO    ] Checking for camera pi updates...
[2026-06-27 11:08:43,778.778 INFO    ] 200
[2026-06-27 11:08:43,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:08:43,805.805 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:08:43,846.846 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:08:43,847.847 INFO    ] No camera update needed
[2026-06-27 11:08:43,849.849 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:08:43,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:08:43,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:08:43,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:08:45,895.895 INFO    ] ================================================
[2026-06-27 11:08:45,910.910 INFO    ] Launching Daemon at Sat Jun 27 11:08:45 IST 2026
[2026-06-27 11:08:45,920.920 INFO    ] ================================================
[2026-06-27 11:08:46,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:08:46
[2026-06-27 11:08:46,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:08:46,722.722 INFO    ] Initializing speech engine...
[2026-06-27 11:08:46,725.725 INFO    ] 2026-06-27 11:08:46
[2026-06-27 11:08:46,918.918 INFO    ] 2026-06-27 11:08:46
[2026-06-27 11:08:46,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:08:47,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:08:47,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:08:47,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:08:47,334.334 INFO    ] time= 27/06/2026 11:08:47
[2026-06-27 11:08:47,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:08:47,420.420 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:08:47,516.516 INFO    ] No existing commands found in stream
[2026-06-27 11:08:52,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:08:52,562.562 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-27 11:08:56,755.755 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 11:08:56,757.757 INFO    ] Checking for system updates...
[2026-06-27 11:08:56,778.778 INFO    ] 200
[2026-06-27 11:08:56,780.780 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:08:56,810.810 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:08:56,812.812 INFO    ] No update needed
[2026-06-27 11:08:56,813.813 INFO    ] Checking for camera pi updates...
[2026-06-27 11:08:56,834.834 INFO    ] 200
[2026-06-27 11:08:56,836.836 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:08:56,859.859 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:08:56,896.896 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:08:56,898.898 INFO    ] No camera update needed
[2026-06-27 11:08:56,899.899 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:08:56,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:08:56,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:08:56,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:08:58,946.946 INFO    ] ================================================
[2026-06-27 11:08:58,961.961 INFO    ] Launching Daemon at Sat Jun 27 11:08:58 IST 2026
[2026-06-27 11:08:58,972.972 INFO    ] ================================================
[2026-06-27 11:08:59,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:08:59
[2026-06-27 11:08:59,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:08:59,787.787 INFO    ] Initializing speech engine...
[2026-06-27 11:08:59,800.800 INFO    ] 2026-06-27 11:08:59
[2026-06-27 11:09:00,021.021 INFO    ] 2026-06-27 11:08:59
[2026-06-27 11:09:00,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:09:00,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:09:00,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:09:00,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:09:00,478.478 INFO    ] time= 27/06/2026 11:09:00
[2026-06-27 11:09:00,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:09:00,510.510 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:09:00,609.609 INFO    ] No existing commands found in stream
[2026-06-27 11:09:05,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:09:05,621.621 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-27 11:09:06,927.927 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 11:09:06,928.928 INFO    ] Checking for system updates...
[2026-06-27 11:09:06,949.949 INFO    ] 200
[2026-06-27 11:09:06,951.951 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:09:06,983.983 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:09:06,985.985 INFO    ] No update needed
[2026-06-27 11:09:06,986.986 INFO    ] Checking for camera pi updates...
[2026-06-27 11:09:07,006.006 INFO    ] 200
[2026-06-27 11:09:07,007.007 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:09:07,031.031 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:09:07,074.074 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:09:07,076.076 INFO    ] No camera update needed
[2026-06-27 11:09:07,077.077 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:09:07,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:09:07,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:09:07,084.084 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:09:09,122.122 INFO    ] ================================================
[2026-06-27 11:09:09,139.139 INFO    ] Launching Daemon at Sat Jun 27 11:09:09 IST 2026
[2026-06-27 11:09:09,150.150 INFO    ] ================================================
[2026-06-27 11:09:09,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:09:09
[2026-06-27 11:09:09,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:09:10,021.021 INFO    ] Initializing speech engine...
[2026-06-27 11:09:10,027.027 INFO    ] 2026-06-27 11:09:10
[2026-06-27 11:09:10,237.237 INFO    ] 2026-06-27 11:09:10
[2026-06-27 11:09:10,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:09:10,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:09:10,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:09:10,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:09:10,668.668 INFO    ] time= 27/06/2026 11:09:10
[2026-06-27 11:09:10,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:09:10,698.698 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:09:10,765.765 INFO    ] No existing commands found in stream
[2026-06-27 11:09:15,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:09:15,779.779 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-27 11:09:16,770.770 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 11:09:16,772.772 INFO    ] Checking for system updates...
[2026-06-27 11:09:16,795.795 INFO    ] 200
[2026-06-27 11:09:16,796.796 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:09:16,828.828 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:09:16,830.830 INFO    ] No update needed
[2026-06-27 11:09:16,831.831 INFO    ] Checking for camera pi updates...
[2026-06-27 11:09:16,851.851 INFO    ] 200
[2026-06-27 11:09:16,853.853 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:09:16,877.877 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:09:16,920.920 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:09:16,921.921 INFO    ] No camera update needed
[2026-06-27 11:09:16,923.923 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:09:16,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:09:16,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:09:16,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:09:18,969.969 INFO    ] ================================================
[2026-06-27 11:09:18,984.984 INFO    ] Launching Daemon at Sat Jun 27 11:09:18 IST 2026
[2026-06-27 11:09:19,995.995 INFO    ] ================================================
[2026-06-27 11:09:19,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:09:19
[2026-06-27 11:09:19,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:09:19,810.810 INFO    ] Initializing speech engine...
[2026-06-27 11:09:19,814.814 INFO    ] 2026-06-27 11:09:19
[2026-06-27 11:09:20,045.045 INFO    ] 2026-06-27 11:09:20
[2026-06-27 11:09:20,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:09:20,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:09:20,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:09:20,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:09:20,465.465 INFO    ] time= 27/06/2026 11:09:20
[2026-06-27 11:09:20,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:09:20,526.526 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:09:20,601.601 INFO    ] No existing commands found in stream
[2026-06-27 11:09:25,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:09:25,615.615 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-27 11:09:25,997.997 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 11:09:25,999.999 INFO    ] Checking for system updates...
[2026-06-27 11:09:26,020.020 INFO    ] 200
[2026-06-27 11:09:26,021.021 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:09:26,054.054 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:09:26,055.055 INFO    ] No update needed
[2026-06-27 11:09:26,057.057 INFO    ] Checking for camera pi updates...
[2026-06-27 11:09:26,077.077 INFO    ] 200
[2026-06-27 11:09:26,078.078 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:09:26,101.101 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:09:26,142.142 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:09:26,143.143 INFO    ] No camera update needed
[2026-06-27 11:09:26,145.145 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:09:26,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:09:26,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:09:26,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:09:28,182.182 INFO    ] ================================================
[2026-06-27 11:09:28,190.190 INFO    ] Launching Daemon at Sat Jun 27 11:09:28 IST 2026
[2026-06-27 11:09:28,196.196 INFO    ] ================================================
[2026-06-27 11:09:28,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:09:28
[2026-06-27 11:09:28,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:09:29,017.017 INFO    ] Initializing speech engine...
[2026-06-27 11:09:29,022.022 INFO    ] 2026-06-27 11:09:29
[2026-06-27 11:09:29,226.226 INFO    ] 2026-06-27 11:09:29
[2026-06-27 11:09:29,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:09:29,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:09:29,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:09:29,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:09:29,674.674 INFO    ] time= 27/06/2026 11:09:29
[2026-06-27 11:09:29,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:09:29,681.681 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:09:29,748.748 INFO    ] No existing commands found in stream
[2026-06-27 11:09:34,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:09:34,759.759 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-27 11:09:38,922.922 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 11:09:38,923.923 INFO    ] Checking for system updates...
[2026-06-27 11:09:38,944.944 INFO    ] 200
[2026-06-27 11:09:38,946.946 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:09:38,976.976 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:09:38,978.978 INFO    ] No update needed
[2026-06-27 11:09:38,979.979 INFO    ] Checking for camera pi updates...
[2026-06-27 11:09:39,000.000 INFO    ] 200
[2026-06-27 11:09:39,001.001 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:09:39,026.026 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:09:39,075.075 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:09:39,077.077 INFO    ] No camera update needed
[2026-06-27 11:09:39,078.078 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:09:39,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:09:39,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:09:39,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:09:41,125.125 INFO    ] ================================================
[2026-06-27 11:09:41,140.140 INFO    ] Launching Daemon at Sat Jun 27 11:09:41 IST 2026
[2026-06-27 11:09:41,151.151 INFO    ] ================================================
[2026-06-27 11:09:41,510.510 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:09:41
[2026-06-27 11:09:41,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:09:41,965.965 INFO    ] Initializing speech engine...
[2026-06-27 11:09:41,970.970 INFO    ] 2026-06-27 11:09:41
[2026-06-27 11:09:42,176.176 INFO    ] 2026-06-27 11:09:42
[2026-06-27 11:09:42,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:09:42,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:09:42,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:09:42,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:09:42,600.600 INFO    ] time= 27/06/2026 11:09:42
[2026-06-27 11:09:42,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:09:42,631.631 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:09:42,702.702 INFO    ] No existing commands found in stream
[2026-06-27 11:09:47,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:09:47,716.716 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-27 11:09:51,422.422 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 11:09:51,424.424 INFO    ] Checking for system updates...
[2026-06-27 11:09:51,444.444 INFO    ] 200
[2026-06-27 11:09:51,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:09:51,481.481 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:09:51,482.482 INFO    ] No update needed
[2026-06-27 11:09:51,484.484 INFO    ] Checking for camera pi updates...
[2026-06-27 11:09:51,503.503 INFO    ] 200
[2026-06-27 11:09:51,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:09:51,531.531 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:09:51,566.566 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:09:51,568.568 INFO    ] No camera update needed
[2026-06-27 11:09:51,569.569 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:09:51,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:09:51,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:09:51,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:09:53,615.615 INFO    ] ================================================
[2026-06-27 11:09:53,652.652 INFO    ] Launching Daemon at Sat Jun 27 11:09:53 IST 2026
[2026-06-27 11:09:53,665.665 INFO    ] ================================================
[2026-06-27 11:09:54,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:09:54
[2026-06-27 11:09:54,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:09:54,512.512 INFO    ] Initializing speech engine...
[2026-06-27 11:09:54,517.517 INFO    ] 2026-06-27 11:09:54
[2026-06-27 11:09:54,725.725 INFO    ] 2026-06-27 11:09:54
[2026-06-27 11:09:54,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:09:54,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:09:54,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:09:55,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:09:55,166.166 INFO    ] time= 27/06/2026 11:09:55
[2026-06-27 11:09:55,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:09:55,174.174 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:09:55,240.240 INFO    ] No existing commands found in stream
[2026-06-27 11:10:00,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:10:00,254.254 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-27 11:10:03,405.405 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 11:10:03,407.407 INFO    ] Checking for system updates...
[2026-06-27 11:10:03,428.428 INFO    ] 200
[2026-06-27 11:10:03,430.430 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:10:03,461.461 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:10:03,463.463 INFO    ] No update needed
[2026-06-27 11:10:03,464.464 INFO    ] Checking for camera pi updates...
[2026-06-27 11:10:03,486.486 INFO    ] 200
[2026-06-27 11:10:03,487.487 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:10:03,516.516 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:10:03,555.555 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:10:03,556.556 INFO    ] No camera update needed
[2026-06-27 11:10:03,558.558 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:10:03,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:10:03,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:10:03,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:10:05,604.604 INFO    ] ================================================
[2026-06-27 11:10:05,620.620 INFO    ] Launching Daemon at Sat Jun 27 11:10:05 IST 2026
[2026-06-27 11:10:05,630.630 INFO    ] ================================================
[2026-06-27 11:10:05,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:10:05
[2026-06-27 11:10:06,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:10:06,427.427 INFO    ] Initializing speech engine...
[2026-06-27 11:10:06,431.431 INFO    ] 2026-06-27 11:10:06
[2026-06-27 11:10:06,648.648 INFO    ] 2026-06-27 11:10:06
[2026-06-27 11:10:06,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:10:06,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:10:06,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:10:07,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:10:07,087.087 INFO    ] time= 27/06/2026 11:10:07
[2026-06-27 11:10:07,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:10:07,094.094 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:10:07,159.159 INFO    ] No existing commands found in stream
[2026-06-27 11:10:12,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:10:12,173.173 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-27 11:10:13,697.697 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 11:10:13,699.699 INFO    ] Checking for system updates...
[2026-06-27 11:10:13,730.730 INFO    ] 200
[2026-06-27 11:10:13,731.731 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:10:13,765.765 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:10:13,766.766 INFO    ] No update needed
[2026-06-27 11:10:13,768.768 INFO    ] Checking for camera pi updates...
[2026-06-27 11:10:13,791.791 INFO    ] 200
[2026-06-27 11:10:13,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:10:13,820.820 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:10:13,869.869 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:10:13,871.871 INFO    ] No camera update needed
[2026-06-27 11:10:13,872.872 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:10:13,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:10:13,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:10:13,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:10:15,919.919 INFO    ] ================================================
[2026-06-27 11:10:15,934.934 INFO    ] Launching Daemon at Sat Jun 27 11:10:15 IST 2026
[2026-06-27 11:10:15,946.946 INFO    ] ================================================
[2026-06-27 11:10:16,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:10:16
[2026-06-27 11:10:16,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:10:16,744.744 INFO    ] Initializing speech engine...
[2026-06-27 11:10:16,748.748 INFO    ] 2026-06-27 11:10:16
[2026-06-27 11:10:16,952.952 INFO    ] 2026-06-27 11:10:16
[2026-06-27 11:10:16,987.987 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:10:17,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:10:17,193.193 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:10:17,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:10:17,397.397 INFO    ] time= 27/06/2026 11:10:17
[2026-06-27 11:10:17,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:10:17,442.442 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:10:17,513.513 INFO    ] No existing commands found in stream
[2026-06-27 11:10:22,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:10:22,525.525 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-27 11:10:26,787.787 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 11:10:26,789.789 INFO    ] Checking for system updates...
[2026-06-27 11:10:26,810.810 INFO    ] 200
[2026-06-27 11:10:26,811.811 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:10:26,842.842 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:10:26,844.844 INFO    ] No update needed
[2026-06-27 11:10:26,845.845 INFO    ] Checking for camera pi updates...
[2026-06-27 11:10:26,866.866 INFO    ] 200
[2026-06-27 11:10:26,868.868 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:10:26,893.893 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:10:27,035.035 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:10:27,037.037 INFO    ] No camera update needed
[2026-06-27 11:10:27,038.038 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:10:27,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:10:27,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:10:27,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:10:29,084.084 INFO    ] ================================================
[2026-06-27 11:10:29,100.100 INFO    ] Launching Daemon at Sat Jun 27 11:10:29 IST 2026
[2026-06-27 11:10:29,111.111 INFO    ] ================================================
[2026-06-27 11:10:29,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:10:29
[2026-06-27 11:10:29,754.754 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:10:29,896.896 INFO    ] Initializing speech engine...
[2026-06-27 11:10:29,901.901 INFO    ] 2026-06-27 11:10:29
[2026-06-27 11:10:30,106.106 INFO    ] 2026-06-27 11:10:30
[2026-06-27 11:10:30,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:10:30,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:10:30,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:10:30,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:10:30,522.522 INFO    ] time= 27/06/2026 11:10:30
[2026-06-27 11:10:30,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:10:30,551.551 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:10:30,615.615 INFO    ] No existing commands found in stream
[2026-06-27 11:10:35,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:10:35,629.629 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-27 11:10:39,915.915 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 11:10:39,916.916 INFO    ] Checking for system updates...
[2026-06-27 11:10:39,937.937 INFO    ] 200
[2026-06-27 11:10:39,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:10:39,971.971 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:10:39,972.972 INFO    ] No update needed
[2026-06-27 11:10:39,974.974 INFO    ] Checking for camera pi updates...
[2026-06-27 11:10:39,993.993 INFO    ] 200
[2026-06-27 11:10:39,995.995 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:10:40,020.020 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:10:40,058.058 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:10:40,060.060 INFO    ] No camera update needed
[2026-06-27 11:10:40,061.061 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:10:40,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:10:40,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:10:40,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:10:42,109.109 INFO    ] ================================================
[2026-06-27 11:10:42,124.124 INFO    ] Launching Daemon at Sat Jun 27 11:10:42 IST 2026
[2026-06-27 11:10:42,134.134 INFO    ] ================================================
[2026-06-27 11:10:42,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:10:42
[2026-06-27 11:10:42,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:10:43,009.009 INFO    ] Initializing speech engine...
[2026-06-27 11:10:43,015.015 INFO    ] 2026-06-27 11:10:43
[2026-06-27 11:10:43,226.226 INFO    ] 2026-06-27 11:10:43
[2026-06-27 11:10:43,254.254 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:10:43,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:10:43,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:10:43,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:10:43,647.647 INFO    ] time= 27/06/2026 11:10:43
[2026-06-27 11:10:43,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:10:43,676.676 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:10:43,744.744 INFO    ] No existing commands found in stream
[2026-06-27 11:10:48,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:10:48,756.756 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-27 11:10:51,028.028 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 11:10:51,029.029 INFO    ] Checking for system updates...
[2026-06-27 11:10:51,051.051 INFO    ] 200
[2026-06-27 11:10:51,053.053 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:10:51,089.089 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:10:51,090.090 INFO    ] No update needed
[2026-06-27 11:10:51,091.091 INFO    ] Checking for camera pi updates...
[2026-06-27 11:10:51,114.114 INFO    ] 200
[2026-06-27 11:10:51,115.115 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:10:51,141.141 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:10:51,188.188 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:10:51,190.190 INFO    ] No camera update needed
[2026-06-27 11:10:51,191.191 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:10:51,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:10:51,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:10:51,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:10:53,238.238 INFO    ] ================================================
[2026-06-27 11:10:53,253.253 INFO    ] Launching Daemon at Sat Jun 27 11:10:53 IST 2026
[2026-06-27 11:10:53,266.266 INFO    ] ================================================
[2026-06-27 11:10:53,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:10:53
[2026-06-27 11:10:53,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:10:54,085.085 INFO    ] Initializing speech engine...
[2026-06-27 11:10:54,089.089 INFO    ] 2026-06-27 11:10:54
[2026-06-27 11:10:54,292.292 INFO    ] 2026-06-27 11:10:54
[2026-06-27 11:10:54,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:10:54,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:10:54,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:10:54,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:10:54,733.733 INFO    ] time= 27/06/2026 11:10:54
[2026-06-27 11:10:54,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:10:54,740.740 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:10:54,804.804 INFO    ] No existing commands found in stream
[2026-06-27 11:10:59,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:10:59,818.818 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-27 11:11:01,336.336 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 11:11:01,337.337 INFO    ] Checking for system updates...
[2026-06-27 11:11:01,358.358 INFO    ] 200
[2026-06-27 11:11:01,360.360 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:11:01,390.390 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:11:01,391.391 INFO    ] No update needed
[2026-06-27 11:11:01,392.392 INFO    ] Checking for camera pi updates...
[2026-06-27 11:11:01,412.412 INFO    ] 200
[2026-06-27 11:11:01,413.413 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:11:01,437.437 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:11:01,463.463 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:11:01,465.465 INFO    ] No camera update needed
[2026-06-27 11:11:01,466.466 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:11:01,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:11:01,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:11:01,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:11:03,506.506 INFO    ] ================================================
[2026-06-27 11:11:03,521.521 INFO    ] Launching Daemon at Sat Jun 27 11:11:03 IST 2026
[2026-06-27 11:11:03,532.532 INFO    ] ================================================
[2026-06-27 11:11:03,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:11:03
[2026-06-27 11:11:04,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:11:04,411.411 INFO    ] Initializing speech engine...
[2026-06-27 11:11:04,421.421 INFO    ] 2026-06-27 11:11:04
[2026-06-27 11:11:04,631.631 INFO    ] 2026-06-27 11:11:04
[2026-06-27 11:11:04,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:11:04,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:11:04,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:11:05,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:11:05,069.069 INFO    ] time= 27/06/2026 11:11:05
[2026-06-27 11:11:05,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:11:05,076.076 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:11:05,142.142 INFO    ] No existing commands found in stream
[2026-06-27 11:11:10,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:11:10,155.155 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-27 11:11:12,040.040 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 11:11:12,042.042 INFO    ] Checking for system updates...
[2026-06-27 11:11:12,063.063 INFO    ] 200
[2026-06-27 11:11:12,065.065 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:11:12,096.096 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:11:12,097.097 INFO    ] No update needed
[2026-06-27 11:11:12,098.098 INFO    ] Checking for camera pi updates...
[2026-06-27 11:11:12,120.120 INFO    ] 200
[2026-06-27 11:11:12,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:11:12,149.149 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:11:12,194.194 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:11:12,196.196 INFO    ] No camera update needed
[2026-06-27 11:11:12,197.197 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:11:12,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:11:12,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:11:12,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:11:14,245.245 INFO    ] ================================================
[2026-06-27 11:11:14,261.261 INFO    ] Launching Daemon at Sat Jun 27 11:11:14 IST 2026
[2026-06-27 11:11:14,272.272 INFO    ] ================================================
[2026-06-27 11:11:14,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:11:14
[2026-06-27 11:11:14,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:11:15,138.138 INFO    ] Initializing speech engine...
[2026-06-27 11:11:15,146.146 INFO    ] 2026-06-27 11:11:15
[2026-06-27 11:11:15,361.361 INFO    ] 2026-06-27 11:11:15
[2026-06-27 11:11:15,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:11:15,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:11:15,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:11:15,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:11:15,812.812 INFO    ] time= 27/06/2026 11:11:15
[2026-06-27 11:11:15,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:11:15,821.821 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:11:15,889.889 INFO    ] No existing commands found in stream
[2026-06-27 11:11:20,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:11:20,907.907 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-27 11:11:23,754.754 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 11:11:23,755.755 INFO    ] Checking for system updates...
[2026-06-27 11:11:23,778.778 INFO    ] 200
[2026-06-27 11:11:23,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:11:23,813.813 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:11:23,815.815 INFO    ] No update needed
[2026-06-27 11:11:23,816.816 INFO    ] Checking for camera pi updates...
[2026-06-27 11:11:23,836.836 INFO    ] 200
[2026-06-27 11:11:23,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:11:23,861.861 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:11:23,902.902 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:11:23,904.904 INFO    ] No camera update needed
[2026-06-27 11:11:23,905.905 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:11:23,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:11:23,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:11:23,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:11:25,952.952 INFO    ] ================================================
[2026-06-27 11:11:25,969.969 INFO    ] Launching Daemon at Sat Jun 27 11:11:25 IST 2026
[2026-06-27 11:11:25,980.980 INFO    ] ================================================
[2026-06-27 11:11:26,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:11:26
[2026-06-27 11:11:26,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:11:26,787.787 INFO    ] Initializing speech engine...
[2026-06-27 11:11:26,792.792 INFO    ] 2026-06-27 11:11:26
[2026-06-27 11:11:26,998.998 INFO    ] 2026-06-27 11:11:26
[2026-06-27 11:11:27,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:11:27,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:11:27,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:11:27,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:11:27,416.416 INFO    ] time= 27/06/2026 11:11:27
[2026-06-27 11:11:27,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:11:27,446.446 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:11:27,513.513 INFO    ] No existing commands found in stream
[2026-06-27 11:11:32,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:11:32,523.523 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-27 11:11:34,318.318 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 11:11:34,319.319 INFO    ] Checking for system updates...
[2026-06-27 11:11:34,342.342 INFO    ] 200
[2026-06-27 11:11:34,343.343 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:11:34,374.374 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:11:34,376.376 INFO    ] No update needed
[2026-06-27 11:11:34,377.377 INFO    ] Checking for camera pi updates...
[2026-06-27 11:11:34,399.399 INFO    ] 200
[2026-06-27 11:11:34,400.400 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:11:34,426.426 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:11:34,473.473 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:11:34,475.475 INFO    ] No camera update needed
[2026-06-27 11:11:34,476.476 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:11:34,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:11:34,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:11:34,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:11:36,524.524 INFO    ] ================================================
[2026-06-27 11:11:36,540.540 INFO    ] Launching Daemon at Sat Jun 27 11:11:36 IST 2026
[2026-06-27 11:11:36,552.552 INFO    ] ================================================
[2026-06-27 11:11:36,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:11:36
[2026-06-27 11:11:37,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:11:37,375.375 INFO    ] Initializing speech engine...
[2026-06-27 11:11:37,380.380 INFO    ] 2026-06-27 11:11:37
[2026-06-27 11:11:37,583.583 INFO    ] 2026-06-27 11:11:37
[2026-06-27 11:11:37,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:11:37,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:11:37,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:11:37,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:11:38,001.001 INFO    ] time= 27/06/2026 11:11:37
[2026-06-27 11:11:38,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:11:38,031.031 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:11:38,122.122 INFO    ] No existing commands found in stream
[2026-06-27 11:11:43,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:11:43,133.133 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-27 11:11:46,165.165 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 11:11:46,166.166 INFO    ] Checking for system updates...
[2026-06-27 11:11:46,187.187 INFO    ] 200
[2026-06-27 11:11:46,188.188 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:11:46,222.222 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:11:46,223.223 INFO    ] No update needed
[2026-06-27 11:11:46,224.224 INFO    ] Checking for camera pi updates...
[2026-06-27 11:11:46,245.245 INFO    ] 200
[2026-06-27 11:11:46,246.246 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:11:46,270.270 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:11:46,310.310 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:11:46,312.312 INFO    ] No camera update needed
[2026-06-27 11:11:46,313.313 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:11:46,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:11:46,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:11:46,320.320 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:11:48,363.363 INFO    ] ================================================
[2026-06-27 11:11:48,378.378 INFO    ] Launching Daemon at Sat Jun 27 11:11:48 IST 2026
[2026-06-27 11:11:48,389.389 INFO    ] ================================================
[2026-06-27 11:11:48,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:11:48
[2026-06-27 11:11:49,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:11:49,180.180 INFO    ] Initializing speech engine...
[2026-06-27 11:11:49,191.191 INFO    ] 2026-06-27 11:11:49
[2026-06-27 11:11:49,409.409 INFO    ] 2026-06-27 11:11:49
[2026-06-27 11:11:49,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:11:49,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:11:49,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:11:49,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:11:49,837.837 INFO    ] time= 27/06/2026 11:11:49
[2026-06-27 11:11:49,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:11:49,896.896 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:11:49,972.972 INFO    ] No existing commands found in stream
[2026-06-27 11:11:54,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:11:54,986.986 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-27 11:11:57,178.178 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 11:11:57,179.179 INFO    ] Checking for system updates...
[2026-06-27 11:11:57,200.200 INFO    ] 200
[2026-06-27 11:11:57,202.202 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:11:57,232.232 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:11:57,234.234 INFO    ] No update needed
[2026-06-27 11:11:57,235.235 INFO    ] Checking for camera pi updates...
[2026-06-27 11:11:57,255.255 INFO    ] 200
[2026-06-27 11:11:57,257.257 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:11:57,280.280 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:11:57,317.317 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:11:57,319.319 INFO    ] No camera update needed
[2026-06-27 11:11:57,320.320 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:11:57,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:11:57,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:11:57,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:11:59,367.367 INFO    ] ================================================
[2026-06-27 11:11:59,382.382 INFO    ] Launching Daemon at Sat Jun 27 11:11:59 IST 2026
[2026-06-27 11:11:59,393.393 INFO    ] ================================================
[2026-06-27 11:11:59,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:11:59
[2026-06-27 11:12:00,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:12:00,193.193 INFO    ] Initializing speech engine...
[2026-06-27 11:12:00,198.198 INFO    ] 2026-06-27 11:12:00
[2026-06-27 11:12:00,404.404 INFO    ] 2026-06-27 11:12:00
[2026-06-27 11:12:00,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:12:00,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:12:00,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:12:00,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:12:00,819.819 INFO    ] time= 27/06/2026 11:12:00
[2026-06-27 11:12:00,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:12:00,858.858 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:12:00,926.926 INFO    ] No existing commands found in stream
[2026-06-27 11:12:05,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:12:05,938.938 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-27 11:12:07,401.401 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:12:07,402.402 INFO    ] Checking for system updates...
[2026-06-27 11:12:07,423.423 INFO    ] 200
[2026-06-27 11:12:07,425.425 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:12:07,457.457 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:12:07,459.459 INFO    ] No update needed
[2026-06-27 11:12:07,460.460 INFO    ] Checking for camera pi updates...
[2026-06-27 11:12:07,482.482 INFO    ] 200
[2026-06-27 11:12:07,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:12:07,509.509 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:12:07,544.544 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:12:07,545.545 INFO    ] No camera update needed
[2026-06-27 11:12:07,547.547 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:12:07,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:12:07,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:12:07,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:12:09,595.595 INFO    ] ================================================
[2026-06-27 11:12:09,610.610 INFO    ] Launching Daemon at Sat Jun 27 11:12:09 IST 2026
[2026-06-27 11:12:09,621.621 INFO    ] ================================================
[2026-06-27 11:12:10,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:12:10
[2026-06-27 11:12:10,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:12:10,500.500 INFO    ] Initializing speech engine...
[2026-06-27 11:12:10,508.508 INFO    ] 2026-06-27 11:12:10
[2026-06-27 11:12:10,721.721 INFO    ] 2026-06-27 11:12:10
[2026-06-27 11:12:10,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:12:10,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:12:10,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:12:11,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:12:11,145.145 INFO    ] time= 27/06/2026 11:12:11
[2026-06-27 11:12:11,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:12:11,172.172 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:12:11,240.240 INFO    ] No existing commands found in stream
[2026-06-27 11:12:16,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:12:16,259.259 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-27 11:12:17,199.199 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 11:12:17,200.200 INFO    ] Checking for system updates...
[2026-06-27 11:12:17,221.221 INFO    ] 200
[2026-06-27 11:12:17,223.223 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:12:17,257.257 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:12:17,258.258 INFO    ] No update needed
[2026-06-27 11:12:17,260.260 INFO    ] Checking for camera pi updates...
[2026-06-27 11:12:17,283.283 INFO    ] 200
[2026-06-27 11:12:17,285.285 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:12:17,308.308 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:12:17,351.351 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:12:17,353.353 INFO    ] No camera update needed
[2026-06-27 11:12:17,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:12:17,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:12:17,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:12:17,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:12:19,403.403 INFO    ] ================================================
[2026-06-27 11:12:19,418.418 INFO    ] Launching Daemon at Sat Jun 27 11:12:19 IST 2026
[2026-06-27 11:12:19,429.429 INFO    ] ================================================
[2026-06-27 11:12:19,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:12:19
[2026-06-27 11:12:20,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:12:20,220.220 INFO    ] Initializing speech engine...
[2026-06-27 11:12:20,230.230 INFO    ] 2026-06-27 11:12:20
[2026-06-27 11:12:20,436.436 INFO    ] 2026-06-27 11:12:20
[2026-06-27 11:12:20,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:12:20,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:12:20,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:12:20,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:12:20,841.841 INFO    ] time= 27/06/2026 11:12:20
[2026-06-27 11:12:20,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:12:20,887.887 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:12:20,958.958 INFO    ] No existing commands found in stream
[2026-06-27 11:12:25,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:12:25,971.971 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-27 11:12:27,155.155 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 11:12:27,156.156 INFO    ] Checking for system updates...
[2026-06-27 11:12:27,177.177 INFO    ] 200
[2026-06-27 11:12:27,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:12:27,208.208 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:12:27,210.210 INFO    ] No update needed
[2026-06-27 11:12:27,211.211 INFO    ] Checking for camera pi updates...
[2026-06-27 11:12:27,231.231 INFO    ] 200
[2026-06-27 11:12:27,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:12:27,258.258 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:12:27,403.403 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:12:27,404.404 INFO    ] No camera update needed
[2026-06-27 11:12:27,406.406 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:12:27,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:12:27,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:12:27,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:12:29,445.445 INFO    ] ================================================
[2026-06-27 11:12:29,454.454 INFO    ] Launching Daemon at Sat Jun 27 11:12:29 IST 2026
[2026-06-27 11:12:29,460.460 INFO    ] ================================================
[2026-06-27 11:12:29,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:12:29
[2026-06-27 11:12:30,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:12:30,242.242 INFO    ] Initializing speech engine...
[2026-06-27 11:12:30,254.254 INFO    ] 2026-06-27 11:12:30
[2026-06-27 11:12:30,465.465 INFO    ] 2026-06-27 11:12:30
[2026-06-27 11:12:30,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:12:30,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:12:30,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:12:30,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:12:30,886.886 INFO    ] time= 27/06/2026 11:12:30
[2026-06-27 11:12:30,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:12:30,920.920 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:12:30,987.987 INFO    ] No existing commands found in stream
[2026-06-27 11:12:35,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:12:36,000.000 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-27 11:12:38,394.394 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 11:12:38,396.396 INFO    ] Checking for system updates...
[2026-06-27 11:12:38,417.417 INFO    ] 200
[2026-06-27 11:12:38,419.419 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:12:38,450.450 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:12:38,451.451 INFO    ] No update needed
[2026-06-27 11:12:38,453.453 INFO    ] Checking for camera pi updates...
[2026-06-27 11:12:38,474.474 INFO    ] 200
[2026-06-27 11:12:38,476.476 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:12:38,502.502 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:12:38,541.541 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:12:38,542.542 INFO    ] No camera update needed
[2026-06-27 11:12:38,544.544 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:12:38,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:12:38,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:12:38,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:12:40,582.582 INFO    ] ================================================
[2026-06-27 11:12:40,591.591 INFO    ] Launching Daemon at Sat Jun 27 11:12:40 IST 2026
[2026-06-27 11:12:40,597.597 INFO    ] ================================================
[2026-06-27 11:12:40,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:12:40
[2026-06-27 11:12:41,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:12:41,483.483 INFO    ] Initializing speech engine...
[2026-06-27 11:12:41,490.490 INFO    ] 2026-06-27 11:12:41
[2026-06-27 11:12:41,702.702 INFO    ] 2026-06-27 11:12:41
[2026-06-27 11:12:41,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:12:41,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:12:41,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:12:42,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:12:42,127.127 INFO    ] time= 27/06/2026 11:12:42
[2026-06-27 11:12:42,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:12:42,155.155 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:12:42,221.221 INFO    ] No existing commands found in stream
[2026-06-27 11:12:47,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:12:47,237.237 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-27 11:12:49,878.878 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 11:12:49,879.879 INFO    ] Checking for system updates...
[2026-06-27 11:12:49,901.901 INFO    ] 200
[2026-06-27 11:12:49,903.903 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:12:49,933.933 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:12:49,934.934 INFO    ] No update needed
[2026-06-27 11:12:49,936.936 INFO    ] Checking for camera pi updates...
[2026-06-27 11:12:49,956.956 INFO    ] 200
[2026-06-27 11:12:49,957.957 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:12:49,981.981 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:12:50,022.022 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:12:50,023.023 INFO    ] No camera update needed
[2026-06-27 11:12:50,025.025 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:12:50,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:12:50,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:12:50,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:12:52,071.071 INFO    ] ================================================
[2026-06-27 11:12:52,087.087 INFO    ] Launching Daemon at Sat Jun 27 11:12:52 IST 2026
[2026-06-27 11:12:52,098.098 INFO    ] ================================================
[2026-06-27 11:12:52,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:12:52
[2026-06-27 11:12:52,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:12:52,921.921 INFO    ] Initializing speech engine...
[2026-06-27 11:12:52,926.926 INFO    ] 2026-06-27 11:12:52
[2026-06-27 11:12:53,132.132 INFO    ] 2026-06-27 11:12:53
[2026-06-27 11:12:53,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:12:53,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:12:53,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:12:53,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:12:53,551.551 INFO    ] time= 27/06/2026 11:12:53
[2026-06-27 11:12:53,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:12:53,585.585 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:12:53,676.676 INFO    ] No existing commands found in stream
[2026-06-27 11:12:58,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:12:58,688.688 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-27 11:13:00,170.170 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 11:13:00,172.172 INFO    ] Checking for system updates...
[2026-06-27 11:13:00,195.195 INFO    ] 200
[2026-06-27 11:13:00,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:13:00,230.230 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:13:00,231.231 INFO    ] No update needed
[2026-06-27 11:13:00,233.233 INFO    ] Checking for camera pi updates...
[2026-06-27 11:13:00,254.254 INFO    ] 200
[2026-06-27 11:13:00,256.256 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:13:00,282.282 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:13:00,323.323 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:13:00,325.325 INFO    ] No camera update needed
[2026-06-27 11:13:00,326.326 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:13:00,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:13:00,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:13:00,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:13:02,369.369 INFO    ] ================================================
[2026-06-27 11:13:02,385.385 INFO    ] Launching Daemon at Sat Jun 27 11:13:02 IST 2026
[2026-06-27 11:13:02,394.394 INFO    ] ================================================
[2026-06-27 11:13:02,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:13:02
[2026-06-27 11:13:03,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:13:03,179.179 INFO    ] Initializing speech engine...
[2026-06-27 11:13:03,180.180 INFO    ] 2026-06-27 11:13:03
[2026-06-27 11:13:03,367.367 INFO    ] 2026-06-27 11:13:03
[2026-06-27 11:13:03,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:13:03,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:13:03,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:13:03,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:13:03,822.822 INFO    ] time= 27/06/2026 11:13:03
[2026-06-27 11:13:03,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:13:03,855.855 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:13:03,921.921 INFO    ] No existing commands found in stream
[2026-06-27 11:13:08,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:13:08,935.935 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-27 11:13:09,700.700 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 11:13:09,702.702 INFO    ] Checking for system updates...
[2026-06-27 11:13:09,727.727 INFO    ] 200
[2026-06-27 11:13:09,728.728 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:13:09,759.759 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:13:09,761.761 INFO    ] No update needed
[2026-06-27 11:13:09,762.762 INFO    ] Checking for camera pi updates...
[2026-06-27 11:13:09,786.786 INFO    ] 200
[2026-06-27 11:13:09,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:13:09,812.812 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:13:09,852.852 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:13:09,854.854 INFO    ] No camera update needed
[2026-06-27 11:13:09,855.855 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:13:09,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:13:09,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:13:09,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:13:11,901.901 INFO    ] ================================================
[2026-06-27 11:13:11,916.916 INFO    ] Launching Daemon at Sat Jun 27 11:13:11 IST 2026
[2026-06-27 11:13:11,927.927 INFO    ] ================================================
[2026-06-27 11:13:12,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:13:12
[2026-06-27 11:13:12,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:13:12,729.729 INFO    ] Initializing speech engine...
[2026-06-27 11:13:12,738.738 INFO    ] 2026-06-27 11:13:12
[2026-06-27 11:13:12,954.954 INFO    ] 2026-06-27 11:13:12
[2026-06-27 11:13:12,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:13:13,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:13:13,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:13:13,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:13:13,368.368 INFO    ] time= 27/06/2026 11:13:13
[2026-06-27 11:13:13,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:13:13,404.404 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:13:13,476.476 INFO    ] No existing commands found in stream
[2026-06-27 11:13:18,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:13:18,487.487 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-27 11:13:20,278.278 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 11:13:20,280.280 INFO    ] Checking for system updates...
[2026-06-27 11:13:20,301.301 INFO    ] 200
[2026-06-27 11:13:20,303.303 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:13:20,333.333 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:13:20,335.335 INFO    ] No update needed
[2026-06-27 11:13:20,336.336 INFO    ] Checking for camera pi updates...
[2026-06-27 11:13:20,357.357 INFO    ] 200
[2026-06-27 11:13:20,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:13:20,385.385 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:13:20,428.428 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:13:20,430.430 INFO    ] No camera update needed
[2026-06-27 11:13:20,431.431 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:13:20,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:13:20,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:13:20,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:13:22,477.477 INFO    ] ================================================
[2026-06-27 11:13:22,492.492 INFO    ] Launching Daemon at Sat Jun 27 11:13:22 IST 2026
[2026-06-27 11:13:22,503.503 INFO    ] ================================================
[2026-06-27 11:13:22,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:13:22
[2026-06-27 11:13:23,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:13:23,342.342 INFO    ] Initializing speech engine...
[2026-06-27 11:13:23,353.353 INFO    ] 2026-06-27 11:13:23
[2026-06-27 11:13:23,551.551 INFO    ] 2026-06-27 11:13:23
[2026-06-27 11:13:23,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:13:23,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:13:23,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:13:23,958.958 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:13:24,011.011 INFO    ] time= 27/06/2026 11:13:23
[2026-06-27 11:13:24,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:13:24,040.040 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:13:24,107.107 INFO    ] No existing commands found in stream
[2026-06-27 11:13:29,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:13:29,123.123 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-27 11:13:33,210.210 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:13:33,212.212 INFO    ] Checking for system updates...
[2026-06-27 11:13:33,234.234 INFO    ] 200
[2026-06-27 11:13:33,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:13:33,267.267 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:13:33,269.269 INFO    ] No update needed
[2026-06-27 11:13:33,270.270 INFO    ] Checking for camera pi updates...
[2026-06-27 11:13:33,291.291 INFO    ] 200
[2026-06-27 11:13:33,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:13:33,319.319 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:13:33,341.341 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:13:33,343.343 INFO    ] No camera update needed
[2026-06-27 11:13:33,344.344 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:13:33,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:13:33,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:13:33,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:13:35,392.392 INFO    ] ================================================
[2026-06-27 11:13:35,408.408 INFO    ] Launching Daemon at Sat Jun 27 11:13:35 IST 2026
[2026-06-27 11:13:35,418.418 INFO    ] ================================================
[2026-06-27 11:13:35,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:13:35
[2026-06-27 11:13:36,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:13:36,223.223 INFO    ] Initializing speech engine...
[2026-06-27 11:13:36,228.228 INFO    ] 2026-06-27 11:13:36
[2026-06-27 11:13:36,432.432 INFO    ] 2026-06-27 11:13:36
[2026-06-27 11:13:36,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:13:36,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:13:36,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:13:36,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:13:36,850.850 INFO    ] time= 27/06/2026 11:13:36
[2026-06-27 11:13:36,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:13:36,880.880 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:13:36,947.947 INFO    ] No existing commands found in stream
[2026-06-27 11:13:41,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:13:41,964.964 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-27 11:13:46,182.182 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 11:13:46,184.184 INFO    ] Checking for system updates...
[2026-06-27 11:13:46,206.206 INFO    ] 200
[2026-06-27 11:13:46,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:13:46,238.238 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:13:46,240.240 INFO    ] No update needed
[2026-06-27 11:13:46,241.241 INFO    ] Checking for camera pi updates...
[2026-06-27 11:13:46,262.262 INFO    ] 200
[2026-06-27 11:13:46,264.264 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:13:46,288.288 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:13:46,328.328 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:13:46,330.330 INFO    ] No camera update needed
[2026-06-27 11:13:46,331.331 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:13:46,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:13:46,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:13:46,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:13:48,379.379 INFO    ] ================================================
[2026-06-27 11:13:48,394.394 INFO    ] Launching Daemon at Sat Jun 27 11:13:48 IST 2026
[2026-06-27 11:13:48,405.405 INFO    ] ================================================
[2026-06-27 11:13:48,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:13:48
[2026-06-27 11:13:49,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:13:49,178.178 INFO    ] Initializing speech engine...
[2026-06-27 11:13:49,191.191 INFO    ] 2026-06-27 11:13:49
[2026-06-27 11:13:49,396.396 INFO    ] 2026-06-27 11:13:49
[2026-06-27 11:13:49,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:13:49,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:13:49,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:13:49,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:13:49,815.815 INFO    ] time= 27/06/2026 11:13:49
[2026-06-27 11:13:49,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:13:49,844.844 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:13:49,911.911 INFO    ] No existing commands found in stream
[2026-06-27 11:13:54,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:13:54,922.922 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-27 11:13:56,560.560 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 11:13:56,561.561 INFO    ] Checking for system updates...
[2026-06-27 11:13:56,582.582 INFO    ] 200
[2026-06-27 11:13:56,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:13:56,614.614 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:13:56,615.615 INFO    ] No update needed
[2026-06-27 11:13:56,617.617 INFO    ] Checking for camera pi updates...
[2026-06-27 11:13:56,636.636 INFO    ] 200
[2026-06-27 11:13:56,638.638 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:13:56,661.661 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:13:56,698.698 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:13:56,699.699 INFO    ] No camera update needed
[2026-06-27 11:13:56,700.700 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:13:56,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:13:56,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:13:56,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:13:58,746.746 INFO    ] ================================================
[2026-06-27 11:13:58,761.761 INFO    ] Launching Daemon at Sat Jun 27 11:13:58 IST 2026
[2026-06-27 11:13:58,771.771 INFO    ] ================================================
[2026-06-27 11:13:59,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:13:59
[2026-06-27 11:13:59,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:13:59,543.543 INFO    ] Initializing speech engine...
[2026-06-27 11:13:59,555.555 INFO    ] 2026-06-27 11:13:59
[2026-06-27 11:13:59,764.764 INFO    ] 2026-06-27 11:13:59
[2026-06-27 11:13:59,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:13:59,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:13:59,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:14:00,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:14:00,205.205 INFO    ] time= 27/06/2026 11:14:00
[2026-06-27 11:14:00,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:14:00,212.212 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:14:00,278.278 INFO    ] No existing commands found in stream
[2026-06-27 11:14:05,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:14:05,291.291 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-27 11:14:06,848.848 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:14:06,850.850 INFO    ] Checking for system updates...
[2026-06-27 11:14:06,872.872 INFO    ] 200
[2026-06-27 11:14:06,873.873 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:14:06,907.907 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:14:06,908.908 INFO    ] No update needed
[2026-06-27 11:14:06,910.910 INFO    ] Checking for camera pi updates...
[2026-06-27 11:14:06,932.932 INFO    ] 200
[2026-06-27 11:14:06,934.934 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:14:06,961.961 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:14:06,999.999 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:14:07,001.001 INFO    ] No camera update needed
[2026-06-27 11:14:07,002.002 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:14:07,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:14:07,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:14:07,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:14:09,049.049 INFO    ] ================================================
[2026-06-27 11:14:09,064.064 INFO    ] Launching Daemon at Sat Jun 27 11:14:09 IST 2026
[2026-06-27 11:14:09,075.075 INFO    ] ================================================
[2026-06-27 11:14:09,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:14:09
[2026-06-27 11:14:09,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:14:09,868.868 INFO    ] Initializing speech engine...
[2026-06-27 11:14:09,872.872 INFO    ] 2026-06-27 11:14:09
[2026-06-27 11:14:10,091.091 INFO    ] 2026-06-27 11:14:10
[2026-06-27 11:14:10,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:14:10,305.305 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:14:10,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:14:10,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:14:10,528.528 INFO    ] time= 27/06/2026 11:14:10
[2026-06-27 11:14:10,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:14:10,544.544 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:14:10,610.610 INFO    ] No existing commands found in stream
[2026-06-27 11:14:15,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:14:15,623.623 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-27 11:14:18,936.936 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:14:18,938.938 INFO    ] Checking for system updates...
[2026-06-27 11:14:18,959.959 INFO    ] 200
[2026-06-27 11:14:18,961.961 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:14:18,996.996 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:14:18,998.998 INFO    ] No update needed
[2026-06-27 11:14:18,999.999 INFO    ] Checking for camera pi updates...
[2026-06-27 11:14:19,018.018 INFO    ] 200
[2026-06-27 11:14:19,020.020 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:14:19,043.043 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:14:19,083.083 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:14:19,085.085 INFO    ] No camera update needed
[2026-06-27 11:14:19,086.086 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:14:19,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:14:19,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:14:19,093.093 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:14:21,133.133 INFO    ] ================================================
[2026-06-27 11:14:21,149.149 INFO    ] Launching Daemon at Sat Jun 27 11:14:21 IST 2026
[2026-06-27 11:14:21,160.160 INFO    ] ================================================
[2026-06-27 11:14:21,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:14:21
[2026-06-27 11:14:21,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:14:21,987.987 INFO    ] Initializing speech engine...
[2026-06-27 11:14:21,992.992 INFO    ] 2026-06-27 11:14:21
[2026-06-27 11:14:22,201.201 INFO    ] 2026-06-27 11:14:22
[2026-06-27 11:14:22,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:14:22,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:14:22,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:14:22,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:14:22,639.639 INFO    ] time= 27/06/2026 11:14:22
[2026-06-27 11:14:22,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:14:22,692.692 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:14:22,769.769 INFO    ] No existing commands found in stream
[2026-06-27 11:14:27,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:14:27,783.783 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-27 11:14:29,515.515 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 11:14:29,517.517 INFO    ] Checking for system updates...
[2026-06-27 11:14:29,537.537 INFO    ] 200
[2026-06-27 11:14:29,539.539 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:14:29,570.570 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:14:29,571.571 INFO    ] No update needed
[2026-06-27 11:14:29,573.573 INFO    ] Checking for camera pi updates...
[2026-06-27 11:14:29,592.592 INFO    ] 200
[2026-06-27 11:14:29,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:14:29,620.620 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:14:29,757.757 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:14:29,758.758 INFO    ] No camera update needed
[2026-06-27 11:14:29,760.760 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:14:29,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:14:29,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:14:29,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:14:31,807.807 INFO    ] ================================================
[2026-06-27 11:14:31,823.823 INFO    ] Launching Daemon at Sat Jun 27 11:14:31 IST 2026
[2026-06-27 11:14:31,834.834 INFO    ] ================================================
[2026-06-27 11:14:32,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:14:32
[2026-06-27 11:14:32,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:14:32,715.715 INFO    ] Initializing speech engine...
[2026-06-27 11:14:32,723.723 INFO    ] 2026-06-27 11:14:32
[2026-06-27 11:14:32,934.934 INFO    ] 2026-06-27 11:14:32
[2026-06-27 11:14:32,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:14:33,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:14:33,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:14:33,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:14:33,339.339 INFO    ] time= 27/06/2026 11:14:33
[2026-06-27 11:14:33,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:14:33,382.382 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:14:33,448.448 INFO    ] No existing commands found in stream
[2026-06-27 11:14:38,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:14:38,461.461 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-27 11:14:41,068.068 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 11:14:41,070.070 INFO    ] Checking for system updates...
[2026-06-27 11:14:41,091.091 INFO    ] 200
[2026-06-27 11:14:41,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:14:41,124.124 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:14:41,125.125 INFO    ] No update needed
[2026-06-27 11:14:41,126.126 INFO    ] Checking for camera pi updates...
[2026-06-27 11:14:41,147.147 INFO    ] 200
[2026-06-27 11:14:41,149.149 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:14:41,173.173 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:14:41,210.210 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:14:41,211.211 INFO    ] No camera update needed
[2026-06-27 11:14:41,212.212 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:14:41,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:14:41,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:14:41,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:14:43,260.260 INFO    ] ================================================
[2026-06-27 11:14:43,276.276 INFO    ] Launching Daemon at Sat Jun 27 11:14:43 IST 2026
[2026-06-27 11:14:43,286.286 INFO    ] ================================================
[2026-06-27 11:14:43,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:14:43
[2026-06-27 11:14:43,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:14:44,151.151 INFO    ] Initializing speech engine...
[2026-06-27 11:14:44,154.154 INFO    ] 2026-06-27 11:14:44
[2026-06-27 11:14:44,363.363 INFO    ] 2026-06-27 11:14:44
[2026-06-27 11:14:44,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:14:44,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:14:44,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:14:44,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:14:44,809.809 INFO    ] time= 27/06/2026 11:14:44
[2026-06-27 11:14:44,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:14:44,813.813 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:14:44,880.880 INFO    ] No existing commands found in stream
[2026-06-27 11:14:49,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:14:49,898.898 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-27 11:14:50,860.860 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 11:14:50,862.862 INFO    ] Checking for system updates...
[2026-06-27 11:14:50,885.885 INFO    ] 200
[2026-06-27 11:14:50,886.886 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:14:50,916.916 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:14:50,917.917 INFO    ] No update needed
[2026-06-27 11:14:50,919.919 INFO    ] Checking for camera pi updates...
[2026-06-27 11:14:50,938.938 INFO    ] 200
[2026-06-27 11:14:50,939.939 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:14:50,963.963 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:14:50,999.999 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:14:51,000.000 INFO    ] No camera update needed
[2026-06-27 11:14:51,002.002 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:14:51,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:14:51,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:14:51,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:14:53,048.048 INFO    ] ================================================
[2026-06-27 11:14:53,063.063 INFO    ] Launching Daemon at Sat Jun 27 11:14:53 IST 2026
[2026-06-27 11:14:53,074.074 INFO    ] ================================================
[2026-06-27 11:14:53,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:14:53
[2026-06-27 11:14:53,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:14:53,894.894 INFO    ] Initializing speech engine...
[2026-06-27 11:14:53,905.905 INFO    ] 2026-06-27 11:14:53
[2026-06-27 11:14:54,110.110 INFO    ] 2026-06-27 11:14:54
[2026-06-27 11:14:54,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:14:54,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:14:54,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:14:54,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:14:54,521.521 INFO    ] time= 27/06/2026 11:14:54
[2026-06-27 11:14:54,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:14:54,558.558 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:14:54,625.625 INFO    ] No existing commands found in stream
[2026-06-27 11:14:59,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:14:59,637.637 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-27 11:15:02,510.510 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 11:15:02,512.512 INFO    ] Checking for system updates...
[2026-06-27 11:15:02,534.534 INFO    ] 200
[2026-06-27 11:15:02,535.535 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:15:02,573.573 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:15:02,574.574 INFO    ] No update needed
[2026-06-27 11:15:02,576.576 INFO    ] Checking for camera pi updates...
[2026-06-27 11:15:02,599.599 INFO    ] 200
[2026-06-27 11:15:02,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:15:02,624.624 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:15:02,650.650 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:15:02,652.652 INFO    ] No camera update needed
[2026-06-27 11:15:02,653.653 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:15:02,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:15:02,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:15:02,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:15:04,700.700 INFO    ] ================================================
[2026-06-27 11:15:04,717.717 INFO    ] Launching Daemon at Sat Jun 27 11:15:04 IST 2026
[2026-06-27 11:15:04,728.728 INFO    ] ================================================
[2026-06-27 11:15:05,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:15:05
[2026-06-27 11:15:05,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:15:05,573.573 INFO    ] Initializing speech engine...
[2026-06-27 11:15:05,585.585 INFO    ] 2026-06-27 11:15:05
[2026-06-27 11:15:05,775.775 INFO    ] 2026-06-27 11:15:05
[2026-06-27 11:15:05,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:15:05,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:15:06,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:15:06,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:15:06,236.236 INFO    ] time= 27/06/2026 11:15:06
[2026-06-27 11:15:06,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:15:06,269.269 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:15:06,336.336 INFO    ] No existing commands found in stream
[2026-06-27 11:15:11,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:15:11,349.349 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-27 11:15:12,852.852 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 11:15:12,854.854 INFO    ] Checking for system updates...
[2026-06-27 11:15:12,876.876 INFO    ] 200
[2026-06-27 11:15:12,878.878 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:15:12,909.909 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:15:12,910.910 INFO    ] No update needed
[2026-06-27 11:15:12,912.912 INFO    ] Checking for camera pi updates...
[2026-06-27 11:15:12,931.931 INFO    ] 200
[2026-06-27 11:15:12,933.933 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:15:12,957.957 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:15:12,992.992 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:15:12,993.993 INFO    ] No camera update needed
[2026-06-27 11:15:12,995.995 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:15:12,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:15:12,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:15:13,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:15:15,041.041 INFO    ] ================================================
[2026-06-27 11:15:15,056.056 INFO    ] Launching Daemon at Sat Jun 27 11:15:15 IST 2026
[2026-06-27 11:15:15,068.068 INFO    ] ================================================
[2026-06-27 11:15:15,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:15:15
[2026-06-27 11:15:15,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:15:15,843.843 INFO    ] Initializing speech engine...
[2026-06-27 11:15:15,852.852 INFO    ] 2026-06-27 11:15:15
[2026-06-27 11:15:16,079.079 INFO    ] 2026-06-27 11:15:16
[2026-06-27 11:15:16,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:15:16,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:15:16,315.315 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:15:16,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:15:16,528.528 INFO    ] time= 27/06/2026 11:15:16
[2026-06-27 11:15:16,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:15:16,571.571 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:15:16,651.651 INFO    ] No existing commands found in stream
[2026-06-27 11:15:21,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:15:21,665.665 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-27 11:15:22,757.757 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 11:15:22,758.758 INFO    ] Checking for system updates...
[2026-06-27 11:15:22,779.779 INFO    ] 200
[2026-06-27 11:15:22,780.780 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:15:22,813.813 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:15:22,815.815 INFO    ] No update needed
[2026-06-27 11:15:22,816.816 INFO    ] Checking for camera pi updates...
[2026-06-27 11:15:22,837.837 INFO    ] 200
[2026-06-27 11:15:22,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:15:22,862.862 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:15:22,901.901 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:15:22,903.903 INFO    ] No camera update needed
[2026-06-27 11:15:22,904.904 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:15:22,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:15:22,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:15:22,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:15:24,953.953 INFO    ] ================================================
[2026-06-27 11:15:24,969.969 INFO    ] Launching Daemon at Sat Jun 27 11:15:24 IST 2026
[2026-06-27 11:15:24,985.985 INFO    ] ================================================
[2026-06-27 11:15:25,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:15:25
[2026-06-27 11:15:25,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:15:25,786.786 INFO    ] Initializing speech engine...
[2026-06-27 11:15:25,798.798 INFO    ] 2026-06-27 11:15:25
[2026-06-27 11:15:26,021.021 INFO    ] 2026-06-27 11:15:25
[2026-06-27 11:15:26,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:15:26,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:15:26,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:15:26,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:15:26,501.501 INFO    ] time= 27/06/2026 11:15:26
[2026-06-27 11:15:26,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:15:26,509.509 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:15:26,580.580 INFO    ] No existing commands found in stream
[2026-06-27 11:15:31,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:15:31,589.589 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-27 11:15:35,526.526 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:15:35,528.528 INFO    ] Checking for system updates...
[2026-06-27 11:15:35,549.549 INFO    ] 200
[2026-06-27 11:15:35,550.550 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:15:35,583.583 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:15:35,585.585 INFO    ] No update needed
[2026-06-27 11:15:35,586.586 INFO    ] Checking for camera pi updates...
[2026-06-27 11:15:35,606.606 INFO    ] 200
[2026-06-27 11:15:35,607.607 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:15:35,631.631 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:15:35,676.676 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:15:35,677.677 INFO    ] No camera update needed
[2026-06-27 11:15:35,678.678 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:15:35,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:15:35,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:15:35,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:15:37,725.725 INFO    ] ================================================
[2026-06-27 11:15:37,740.740 INFO    ] Launching Daemon at Sat Jun 27 11:15:37 IST 2026
[2026-06-27 11:15:37,751.751 INFO    ] ================================================
[2026-06-27 11:15:38,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:15:38
[2026-06-27 11:15:38,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:15:38,557.557 INFO    ] Initializing speech engine...
[2026-06-27 11:15:38,561.561 INFO    ] 2026-06-27 11:15:38
[2026-06-27 11:15:38,779.779 INFO    ] 2026-06-27 11:15:38
[2026-06-27 11:15:38,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:15:38,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:15:39,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:15:39,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:15:39,227.227 INFO    ] time= 27/06/2026 11:15:39
[2026-06-27 11:15:39,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:15:39,234.234 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:15:39,300.300 INFO    ] No existing commands found in stream
[2026-06-27 11:15:44,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:15:44,311.311 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-27 11:15:48,619.619 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 11:15:48,621.621 INFO    ] Checking for system updates...
[2026-06-27 11:15:48,642.642 INFO    ] 200
[2026-06-27 11:15:48,643.643 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:15:48,673.673 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:15:48,675.675 INFO    ] No update needed
[2026-06-27 11:15:48,676.676 INFO    ] Checking for camera pi updates...
[2026-06-27 11:15:48,696.696 INFO    ] 200
[2026-06-27 11:15:48,697.697 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:15:48,723.723 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:15:48,757.757 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:15:48,758.758 INFO    ] No camera update needed
[2026-06-27 11:15:48,759.759 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:15:48,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:15:48,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:15:48,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:15:50,805.805 INFO    ] ================================================
[2026-06-27 11:15:50,821.821 INFO    ] Launching Daemon at Sat Jun 27 11:15:50 IST 2026
[2026-06-27 11:15:50,831.831 INFO    ] ================================================
[2026-06-27 11:15:51,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:15:51
[2026-06-27 11:15:51,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:15:51,624.624 INFO    ] Initializing speech engine...
[2026-06-27 11:15:51,634.634 INFO    ] 2026-06-27 11:15:51
[2026-06-27 11:15:51,840.840 INFO    ] 2026-06-27 11:15:51
[2026-06-27 11:15:51,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:15:52,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:15:52,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:15:52,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:15:52,252.252 INFO    ] time= 27/06/2026 11:15:52
[2026-06-27 11:15:52,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:15:52,293.293 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:15:52,364.364 INFO    ] No existing commands found in stream
[2026-06-27 11:15:57,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:15:57,377.377 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-27 11:16:01,364.364 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:16:01,366.366 INFO    ] Checking for system updates...
[2026-06-27 11:16:01,386.386 INFO    ] 200
[2026-06-27 11:16:01,388.388 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:16:01,421.421 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:16:01,423.423 INFO    ] No update needed
[2026-06-27 11:16:01,424.424 INFO    ] Checking for camera pi updates...
[2026-06-27 11:16:01,444.444 INFO    ] 200
[2026-06-27 11:16:01,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:16:01,468.468 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:16:01,508.508 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:16:01,509.509 INFO    ] No camera update needed
[2026-06-27 11:16:01,510.510 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:16:01,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:16:01,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:16:01,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:16:03,551.551 INFO    ] ================================================
[2026-06-27 11:16:03,567.567 INFO    ] Launching Daemon at Sat Jun 27 11:16:03 IST 2026
[2026-06-27 11:16:03,578.578 INFO    ] ================================================
[2026-06-27 11:16:03,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:16:03
[2026-06-27 11:16:04,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:16:04,379.379 INFO    ] Initializing speech engine...
[2026-06-27 11:16:04,388.388 INFO    ] 2026-06-27 11:16:04
[2026-06-27 11:16:04,603.603 INFO    ] 2026-06-27 11:16:04
[2026-06-27 11:16:04,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:16:04,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:16:04,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:16:05,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:16:05,045.045 INFO    ] time= 27/06/2026 11:16:05
[2026-06-27 11:16:05,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:16:05,056.056 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:16:05,123.123 INFO    ] No existing commands found in stream
[2026-06-27 11:16:10,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:16:10,159.159 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-27 11:16:12,844.844 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 11:16:12,846.846 INFO    ] Checking for system updates...
[2026-06-27 11:16:12,867.867 INFO    ] 200
[2026-06-27 11:16:12,868.868 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:16:12,899.899 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:16:12,900.900 INFO    ] No update needed
[2026-06-27 11:16:12,902.902 INFO    ] Checking for camera pi updates...
[2026-06-27 11:16:12,921.921 INFO    ] 200
[2026-06-27 11:16:12,923.923 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:16:12,948.948 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:16:12,985.985 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:16:12,986.986 INFO    ] No camera update needed
[2026-06-27 11:16:12,987.987 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:16:12,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:16:12,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:16:12,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:16:15,035.035 INFO    ] ================================================
[2026-06-27 11:16:15,050.050 INFO    ] Launching Daemon at Sat Jun 27 11:16:15 IST 2026
[2026-06-27 11:16:15,061.061 INFO    ] ================================================
[2026-06-27 11:16:15,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:16:15
[2026-06-27 11:16:15,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:16:15,879.879 INFO    ] Initializing speech engine...
[2026-06-27 11:16:15,883.883 INFO    ] 2026-06-27 11:16:15
[2026-06-27 11:16:16,102.102 INFO    ] 2026-06-27 11:16:16
[2026-06-27 11:16:16,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:16:16,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:16:16,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:16:16,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:16:16,511.511 INFO    ] time= 27/06/2026 11:16:16
[2026-06-27 11:16:16,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:16:16,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:16:16,623.623 INFO    ] No existing commands found in stream
[2026-06-27 11:16:21,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:16:21,635.635 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-27 11:16:24,312.312 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:16:24,314.314 INFO    ] Checking for system updates...
[2026-06-27 11:16:24,336.336 INFO    ] 200
[2026-06-27 11:16:24,338.338 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:16:24,370.370 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:16:24,372.372 INFO    ] No update needed
[2026-06-27 11:16:24,373.373 INFO    ] Checking for camera pi updates...
[2026-06-27 11:16:24,393.393 INFO    ] 200
[2026-06-27 11:16:24,394.394 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:16:24,419.419 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:16:24,458.458 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:16:24,459.459 INFO    ] No camera update needed
[2026-06-27 11:16:24,460.460 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:16:24,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:16:24,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:16:24,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:16:26,507.507 INFO    ] ================================================
[2026-06-27 11:16:26,522.522 INFO    ] Launching Daemon at Sat Jun 27 11:16:26 IST 2026
[2026-06-27 11:16:26,533.533 INFO    ] ================================================
[2026-06-27 11:16:26,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:16:26
[2026-06-27 11:16:27,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:16:27,353.353 INFO    ] Initializing speech engine...
[2026-06-27 11:16:27,359.359 INFO    ] 2026-06-27 11:16:27
[2026-06-27 11:16:27,563.563 INFO    ] 2026-06-27 11:16:27
[2026-06-27 11:16:27,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:16:27,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:16:27,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:16:27,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:16:28,003.003 INFO    ] time= 27/06/2026 11:16:27
[2026-06-27 11:16:28,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:16:28,011.011 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:16:28,078.078 INFO    ] No existing commands found in stream
[2026-06-27 11:16:33,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:16:33,089.089 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-27 11:16:35,686.686 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 11:16:35,687.687 INFO    ] Checking for system updates...
[2026-06-27 11:16:35,710.710 INFO    ] 200
[2026-06-27 11:16:35,711.711 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:16:35,742.742 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:16:35,743.743 INFO    ] No update needed
[2026-06-27 11:16:35,745.745 INFO    ] Checking for camera pi updates...
[2026-06-27 11:16:35,767.767 INFO    ] 200
[2026-06-27 11:16:35,768.768 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:16:35,793.793 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:16:35,832.832 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:16:35,834.834 INFO    ] No camera update needed
[2026-06-27 11:16:35,835.835 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:16:35,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:16:35,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:16:35,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:16:37,882.882 INFO    ] ================================================
[2026-06-27 11:16:37,899.899 INFO    ] Launching Daemon at Sat Jun 27 11:16:37 IST 2026
[2026-06-27 11:16:37,911.911 INFO    ] ================================================
[2026-06-27 11:16:38,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:16:38
[2026-06-27 11:16:38,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:16:38,711.711 INFO    ] Initializing speech engine...
[2026-06-27 11:16:38,724.724 INFO    ] 2026-06-27 11:16:38
[2026-06-27 11:16:38,945.945 INFO    ] 2026-06-27 11:16:38
[2026-06-27 11:16:38,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:16:39,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:16:39,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:16:39,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:16:39,398.398 INFO    ] time= 27/06/2026 11:16:39
[2026-06-27 11:16:39,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:16:39,429.429 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:16:39,501.501 INFO    ] No existing commands found in stream
[2026-06-27 11:16:44,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:16:44,513.513 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-27 11:16:46,381.381 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 11:16:46,383.383 INFO    ] Checking for system updates...
[2026-06-27 11:16:46,404.404 INFO    ] 200
[2026-06-27 11:16:46,405.405 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:16:46,435.435 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:16:46,437.437 INFO    ] No update needed
[2026-06-27 11:16:46,438.438 INFO    ] Checking for camera pi updates...
[2026-06-27 11:16:46,459.459 INFO    ] 200
[2026-06-27 11:16:46,460.460 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:16:46,483.483 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:16:46,518.518 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:16:46,519.519 INFO    ] No camera update needed
[2026-06-27 11:16:46,521.521 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:16:46,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:16:46,525.525 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:16:46,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:16:48,568.568 INFO    ] ================================================
[2026-06-27 11:16:48,584.584 INFO    ] Launching Daemon at Sat Jun 27 11:16:48 IST 2026
[2026-06-27 11:16:48,596.596 INFO    ] ================================================
[2026-06-27 11:16:48,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:16:48
[2026-06-27 11:16:49,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:16:49,403.403 INFO    ] Initializing speech engine...
[2026-06-27 11:16:49,417.417 INFO    ] 2026-06-27 11:16:49
[2026-06-27 11:16:49,635.635 INFO    ] 2026-06-27 11:16:49
[2026-06-27 11:16:49,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:16:49,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:16:49,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:16:50,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:16:50,076.076 INFO    ] time= 27/06/2026 11:16:50
[2026-06-27 11:16:50,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:16:50,118.118 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:16:50,194.194 INFO    ] No existing commands found in stream
[2026-06-27 11:16:55,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:16:55,207.207 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-27 11:16:56,674.674 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 11:16:56,675.675 INFO    ] Checking for system updates...
[2026-06-27 11:16:56,697.697 INFO    ] 200
[2026-06-27 11:16:56,699.699 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:16:56,729.729 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:16:56,731.731 INFO    ] No update needed
[2026-06-27 11:16:56,732.732 INFO    ] Checking for camera pi updates...
[2026-06-27 11:16:56,753.753 INFO    ] 200
[2026-06-27 11:16:56,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:16:56,779.779 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:16:56,825.825 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:16:56,826.826 INFO    ] No camera update needed
[2026-06-27 11:16:56,828.828 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:16:56,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:16:56,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:16:56,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:16:58,877.877 INFO    ] ================================================
[2026-06-27 11:16:58,893.893 INFO    ] Launching Daemon at Sat Jun 27 11:16:58 IST 2026
[2026-06-27 11:16:58,904.904 INFO    ] ================================================
[2026-06-27 11:16:59,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:16:59
[2026-06-27 11:16:59,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:16:59,699.699 INFO    ] Initializing speech engine...
[2026-06-27 11:16:59,704.704 INFO    ] 2026-06-27 11:16:59
[2026-06-27 11:16:59,924.924 INFO    ] 2026-06-27 11:16:59
[2026-06-27 11:16:59,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:17:00,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:17:00,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:17:00,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:17:00,335.335 INFO    ] time= 27/06/2026 11:17:00
[2026-06-27 11:17:00,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:17:00,380.380 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:17:00,448.448 INFO    ] No existing commands found in stream
[2026-06-27 11:17:05,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:17:05,462.462 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-27 11:17:05,878.878 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 11:17:05,880.880 INFO    ] Checking for system updates...
[2026-06-27 11:17:05,902.902 INFO    ] 200
[2026-06-27 11:17:05,903.903 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:17:05,933.933 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:17:05,935.935 INFO    ] No update needed
[2026-06-27 11:17:05,936.936 INFO    ] Checking for camera pi updates...
[2026-06-27 11:17:05,956.956 INFO    ] 200
[2026-06-27 11:17:05,957.957 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:17:05,981.981 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:17:06,018.018 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:17:06,020.020 INFO    ] No camera update needed
[2026-06-27 11:17:06,021.021 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:17:06,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:17:06,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:17:06,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:17:08,067.067 INFO    ] ================================================
[2026-06-27 11:17:08,083.083 INFO    ] Launching Daemon at Sat Jun 27 11:17:08 IST 2026
[2026-06-27 11:17:08,094.094 INFO    ] ================================================
[2026-06-27 11:17:08,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:17:08
[2026-06-27 11:17:08,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:17:08,923.923 INFO    ] Initializing speech engine...
[2026-06-27 11:17:08,933.933 INFO    ] 2026-06-27 11:17:08
[2026-06-27 11:17:09,141.141 INFO    ] 2026-06-27 11:17:09
[2026-06-27 11:17:09,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:17:09,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:17:09,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:17:09,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:17:09,584.584 INFO    ] time= 27/06/2026 11:17:09
[2026-06-27 11:17:09,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:17:09,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:17:09,659.659 INFO    ] No existing commands found in stream
[2026-06-27 11:17:14,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:17:14,671.671 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-27 11:17:18,146.146 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 11:17:18,147.147 INFO    ] Checking for system updates...
[2026-06-27 11:17:18,169.169 INFO    ] 200
[2026-06-27 11:17:18,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:17:18,202.202 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:17:18,204.204 INFO    ] No update needed
[2026-06-27 11:17:18,205.205 INFO    ] Checking for camera pi updates...
[2026-06-27 11:17:18,226.226 INFO    ] 200
[2026-06-27 11:17:18,227.227 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:17:18,252.252 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:17:18,292.292 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:17:18,294.294 INFO    ] No camera update needed
[2026-06-27 11:17:18,295.295 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:17:18,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:17:18,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:17:18,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:17:20,342.342 INFO    ] ================================================
[2026-06-27 11:17:20,357.357 INFO    ] Launching Daemon at Sat Jun 27 11:17:20 IST 2026
[2026-06-27 11:17:20,368.368 INFO    ] ================================================
[2026-06-27 11:17:20,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:17:20
[2026-06-27 11:17:21,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:17:21,153.153 INFO    ] Initializing speech engine...
[2026-06-27 11:17:21,166.166 INFO    ] 2026-06-27 11:17:21
[2026-06-27 11:17:21,373.373 INFO    ] 2026-06-27 11:17:21
[2026-06-27 11:17:21,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:17:21,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:17:21,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:17:21,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:17:21,815.815 INFO    ] time= 27/06/2026 11:17:21
[2026-06-27 11:17:21,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:17:21,822.822 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:17:21,889.889 INFO    ] No existing commands found in stream
[2026-06-27 11:17:26,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:17:26,901.901 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-27 11:17:30,755.755 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 11:17:30,756.756 INFO    ] Checking for system updates...
[2026-06-27 11:17:30,777.777 INFO    ] 200
[2026-06-27 11:17:30,778.778 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:17:30,809.809 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:17:30,810.810 INFO    ] No update needed
[2026-06-27 11:17:30,811.811 INFO    ] Checking for camera pi updates...
[2026-06-27 11:17:30,832.832 INFO    ] 200
[2026-06-27 11:17:30,834.834 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:17:30,857.857 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:17:30,897.897 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:17:30,898.898 INFO    ] No camera update needed
[2026-06-27 11:17:30,899.899 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:17:30,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:17:30,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:17:30,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:17:32,939.939 INFO    ] ================================================
[2026-06-27 11:17:32,954.954 INFO    ] Launching Daemon at Sat Jun 27 11:17:32 IST 2026
[2026-06-27 11:17:32,965.965 INFO    ] ================================================
[2026-06-27 11:17:33,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:17:33
[2026-06-27 11:17:33,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:17:33,757.757 INFO    ] Initializing speech engine...
[2026-06-27 11:17:33,767.767 INFO    ] 2026-06-27 11:17:33
[2026-06-27 11:17:33,973.973 INFO    ] 2026-06-27 11:17:33
[2026-06-27 11:17:34,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:17:34,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:17:34,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:17:34,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:17:34,396.396 INFO    ] time= 27/06/2026 11:17:34
[2026-06-27 11:17:34,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:17:34,424.424 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:17:34,489.489 INFO    ] No existing commands found in stream
[2026-06-27 11:17:39,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:17:39,502.502 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-27 11:17:39,896.896 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 11:17:39,897.897 INFO    ] Checking for system updates...
[2026-06-27 11:17:39,918.918 INFO    ] 200
[2026-06-27 11:17:39,919.919 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:17:39,951.951 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:17:39,953.953 INFO    ] No update needed
[2026-06-27 11:17:39,954.954 INFO    ] Checking for camera pi updates...
[2026-06-27 11:17:39,974.974 INFO    ] 200
[2026-06-27 11:17:39,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:17:40,000.000 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:17:40,038.038 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:17:40,040.040 INFO    ] No camera update needed
[2026-06-27 11:17:40,041.041 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:17:40,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:17:40,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:17:40,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:17:42,087.087 INFO    ] ================================================
[2026-06-27 11:17:42,102.102 INFO    ] Launching Daemon at Sat Jun 27 11:17:42 IST 2026
[2026-06-27 11:17:42,113.113 INFO    ] ================================================
[2026-06-27 11:17:42,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:17:42
[2026-06-27 11:17:42,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:17:42,918.918 INFO    ] Initializing speech engine...
[2026-06-27 11:17:42,923.923 INFO    ] 2026-06-27 11:17:42
[2026-06-27 11:17:43,152.152 INFO    ] 2026-06-27 11:17:43
[2026-06-27 11:17:43,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:17:43,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:17:43,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:17:43,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:17:43,607.607 INFO    ] time= 27/06/2026 11:17:43
[2026-06-27 11:17:43,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:17:43,635.635 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:17:43,713.713 INFO    ] No existing commands found in stream
[2026-06-27 11:17:48,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:17:48,725.725 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-27 11:17:50,108.108 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:17:50,109.109 INFO    ] Checking for system updates...
[2026-06-27 11:17:50,130.130 INFO    ] 200
[2026-06-27 11:17:50,131.131 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:17:50,164.164 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:17:50,165.165 INFO    ] No update needed
[2026-06-27 11:17:50,167.167 INFO    ] Checking for camera pi updates...
[2026-06-27 11:17:50,187.187 INFO    ] 200
[2026-06-27 11:17:50,188.188 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:17:50,214.214 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:17:50,251.251 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:17:50,252.252 INFO    ] No camera update needed
[2026-06-27 11:17:50,254.254 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:17:50,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:17:50,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:17:50,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:17:52,300.300 INFO    ] ================================================
[2026-06-27 11:17:52,315.315 INFO    ] Launching Daemon at Sat Jun 27 11:17:52 IST 2026
[2026-06-27 11:17:52,325.325 INFO    ] ================================================
[2026-06-27 11:17:52,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:17:52
[2026-06-27 11:17:53,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:17:53,174.174 INFO    ] Initializing speech engine...
[2026-06-27 11:17:53,177.177 INFO    ] 2026-06-27 11:17:53
[2026-06-27 11:17:53,385.385 INFO    ] 2026-06-27 11:17:53
[2026-06-27 11:17:53,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:17:53,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:17:53,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:17:53,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:17:53,807.807 INFO    ] time= 27/06/2026 11:17:53
[2026-06-27 11:17:53,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:17:53,839.839 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:17:53,906.906 INFO    ] No existing commands found in stream
[2026-06-27 11:17:58,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:17:58,918.918 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-27 11:18:02,193.193 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 11:18:02,195.195 INFO    ] Checking for system updates...
[2026-06-27 11:18:02,222.222 INFO    ] 200
[2026-06-27 11:18:02,224.224 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:18:02,261.261 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:18:02,263.263 INFO    ] No update needed
[2026-06-27 11:18:02,266.266 INFO    ] Checking for camera pi updates...
[2026-06-27 11:18:02,289.289 INFO    ] 200
[2026-06-27 11:18:02,291.291 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:18:02,323.323 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:18:02,350.350 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:18:02,352.352 INFO    ] No camera update needed
[2026-06-27 11:18:02,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:18:02,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:18:02,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:18:02,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:18:04,407.407 INFO    ] ================================================
[2026-06-27 11:18:04,422.422 INFO    ] Launching Daemon at Sat Jun 27 11:18:04 IST 2026
[2026-06-27 11:18:04,434.434 INFO    ] ================================================
[2026-06-27 11:18:04,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:18:04
[2026-06-27 11:18:05,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:18:05,221.221 INFO    ] Initializing speech engine...
[2026-06-27 11:18:05,231.231 INFO    ] 2026-06-27 11:18:05
[2026-06-27 11:18:05,436.436 INFO    ] 2026-06-27 11:18:05
[2026-06-27 11:18:05,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:18:05,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:18:05,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:18:05,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:18:05,865.865 INFO    ] time= 27/06/2026 11:18:05
[2026-06-27 11:18:05,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:18:05,900.900 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:18:05,992.992 INFO    ] No existing commands found in stream
[2026-06-27 11:18:11,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:18:11,004.004 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-27 11:18:13,265.265 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 11:18:13,267.267 INFO    ] Checking for system updates...
[2026-06-27 11:18:13,306.306 INFO    ] 200
[2026-06-27 11:18:13,309.309 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:18:13,367.367 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:18:13,369.369 INFO    ] No update needed
[2026-06-27 11:18:13,372.372 INFO    ] Checking for camera pi updates...
[2026-06-27 11:18:13,393.393 INFO    ] 200
[2026-06-27 11:18:13,394.394 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:18:13,419.419 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:18:13,457.457 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:18:13,459.459 INFO    ] No camera update needed
[2026-06-27 11:18:13,460.460 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:18:13,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:18:13,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:18:13,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:18:15,506.506 INFO    ] ================================================
[2026-06-27 11:18:15,522.522 INFO    ] Launching Daemon at Sat Jun 27 11:18:15 IST 2026
[2026-06-27 11:18:15,532.532 INFO    ] ================================================
[2026-06-27 11:18:15,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:18:15
[2026-06-27 11:18:16,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:18:16,367.367 INFO    ] Initializing speech engine...
[2026-06-27 11:18:16,372.372 INFO    ] 2026-06-27 11:18:16
[2026-06-27 11:18:16,576.576 INFO    ] 2026-06-27 11:18:16
[2026-06-27 11:18:16,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:18:16,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:18:16,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:18:16,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:18:16,986.986 INFO    ] time= 27/06/2026 11:18:16
[2026-06-27 11:18:17,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:18:17,024.024 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:18:17,091.091 INFO    ] No existing commands found in stream
[2026-06-27 11:18:22,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:18:22,118.118 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-27 11:18:25,100.100 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:18:25,101.101 INFO    ] Checking for system updates...
[2026-06-27 11:18:25,124.124 INFO    ] 200
[2026-06-27 11:18:25,126.126 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:18:25,159.159 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:18:25,161.161 INFO    ] No update needed
[2026-06-27 11:18:25,162.162 INFO    ] Checking for camera pi updates...
[2026-06-27 11:18:25,183.183 INFO    ] 200
[2026-06-27 11:18:25,185.185 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:18:25,210.210 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:18:25,256.256 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:18:25,258.258 INFO    ] No camera update needed
[2026-06-27 11:18:25,259.259 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:18:25,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:18:25,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:18:25,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:18:27,306.306 INFO    ] ================================================
[2026-06-27 11:18:27,321.321 INFO    ] Launching Daemon at Sat Jun 27 11:18:27 IST 2026
[2026-06-27 11:18:27,333.333 INFO    ] ================================================
[2026-06-27 11:18:27,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:18:27
[2026-06-27 11:18:28,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:18:28,135.135 INFO    ] Initializing speech engine...
[2026-06-27 11:18:28,138.138 INFO    ] 2026-06-27 11:18:28
[2026-06-27 11:18:28,358.358 INFO    ] 2026-06-27 11:18:28
[2026-06-27 11:18:28,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:18:28,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:18:28,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:18:28,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:18:28,697.697 INFO    ] time= 27/06/2026 11:18:28
[2026-06-27 11:18:28,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:18:28,699.699 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:18:28,753.753 INFO    ] No existing commands found in stream
[2026-06-27 11:18:33,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:18:33,786.786 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-27 11:18:35,320.320 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 11:18:35,321.321 INFO    ] Checking for system updates...
[2026-06-27 11:18:35,342.342 INFO    ] 200
[2026-06-27 11:18:35,344.344 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:18:35,374.374 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:18:35,376.376 INFO    ] No update needed
[2026-06-27 11:18:35,377.377 INFO    ] Checking for camera pi updates...
[2026-06-27 11:18:35,399.399 INFO    ] 200
[2026-06-27 11:18:35,400.400 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:18:35,425.425 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:18:35,565.565 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:18:35,566.566 INFO    ] No camera update needed
[2026-06-27 11:18:35,567.567 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:18:35,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:18:35,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:18:35,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:18:37,613.613 INFO    ] ================================================
[2026-06-27 11:18:37,628.628 INFO    ] Launching Daemon at Sat Jun 27 11:18:37 IST 2026
[2026-06-27 11:18:37,640.640 INFO    ] ================================================
[2026-06-27 11:18:38,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:18:38
[2026-06-27 11:18:38,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:18:38,467.467 INFO    ] Initializing speech engine...
[2026-06-27 11:18:38,473.473 INFO    ] 2026-06-27 11:18:38
[2026-06-27 11:18:38,677.677 INFO    ] 2026-06-27 11:18:38
[2026-06-27 11:18:38,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:18:38,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:18:38,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:18:39,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:18:39,083.083 INFO    ] time= 27/06/2026 11:18:39
[2026-06-27 11:18:39,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:18:39,127.127 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:18:39,222.222 INFO    ] No existing commands found in stream
[2026-06-27 11:18:44,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:18:44,231.231 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-27 11:18:46,694.694 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 11:18:46,696.696 INFO    ] Checking for system updates...
[2026-06-27 11:18:46,718.718 INFO    ] 200
[2026-06-27 11:18:46,719.719 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:18:46,752.752 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:18:46,754.754 INFO    ] No update needed
[2026-06-27 11:18:46,755.755 INFO    ] Checking for camera pi updates...
[2026-06-27 11:18:46,775.775 INFO    ] 200
[2026-06-27 11:18:46,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:18:46,800.800 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:18:46,839.839 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:18:46,840.840 INFO    ] No camera update needed
[2026-06-27 11:18:46,841.841 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:18:46,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:18:46,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:18:46,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:18:48,872.872 INFO    ] ================================================
[2026-06-27 11:18:48,881.881 INFO    ] Launching Daemon at Sat Jun 27 11:18:48 IST 2026
[2026-06-27 11:18:48,887.887 INFO    ] ================================================
[2026-06-27 11:18:49,194.194 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:18:49
[2026-06-27 11:18:49,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:18:49,667.667 INFO    ] Initializing speech engine...
[2026-06-27 11:18:49,675.675 INFO    ] 2026-06-27 11:18:49
[2026-06-27 11:18:49,886.886 INFO    ] 2026-06-27 11:18:49
[2026-06-27 11:18:49,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:18:50,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:18:50,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:18:50,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:18:50,306.306 INFO    ] time= 27/06/2026 11:18:50
[2026-06-27 11:18:50,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:18:50,335.335 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:18:50,402.402 INFO    ] No existing commands found in stream
[2026-06-27 11:18:55,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:18:55,419.419 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-27 11:18:56,380.380 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 11:18:56,381.381 INFO    ] Checking for system updates...
[2026-06-27 11:18:56,403.403 INFO    ] 200
[2026-06-27 11:18:56,404.404 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:18:56,435.435 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:18:56,436.436 INFO    ] No update needed
[2026-06-27 11:18:56,438.438 INFO    ] Checking for camera pi updates...
[2026-06-27 11:18:56,458.458 INFO    ] 200
[2026-06-27 11:18:56,459.459 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:18:56,482.482 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:18:56,524.524 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:18:56,526.526 INFO    ] No camera update needed
[2026-06-27 11:18:56,527.527 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:18:56,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:18:56,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:18:56,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:18:58,575.575 INFO    ] ================================================
[2026-06-27 11:18:58,591.591 INFO    ] Launching Daemon at Sat Jun 27 11:18:58 IST 2026
[2026-06-27 11:18:58,602.602 INFO    ] ================================================
[2026-06-27 11:18:58,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:18:58
[2026-06-27 11:18:59,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:18:59,419.419 INFO    ] Initializing speech engine...
[2026-06-27 11:18:59,424.424 INFO    ] 2026-06-27 11:18:59
[2026-06-27 11:18:59,629.629 INFO    ] 2026-06-27 11:18:59
[2026-06-27 11:18:59,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:18:59,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:18:59,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:18:59,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:19:00,047.047 INFO    ] time= 27/06/2026 11:18:59
[2026-06-27 11:19:00,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:19:00,076.076 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:19:00,143.143 INFO    ] No existing commands found in stream
[2026-06-27 11:19:05,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:19:05,155.155 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-27 11:19:08,308.308 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 11:19:08,309.309 INFO    ] Checking for system updates...
[2026-06-27 11:19:08,331.331 INFO    ] 200
[2026-06-27 11:19:08,333.333 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:19:08,364.364 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:19:08,366.366 INFO    ] No update needed
[2026-06-27 11:19:08,367.367 INFO    ] Checking for camera pi updates...
[2026-06-27 11:19:08,387.387 INFO    ] 200
[2026-06-27 11:19:08,389.389 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:19:08,415.415 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:19:08,458.458 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:19:08,460.460 INFO    ] No camera update needed
[2026-06-27 11:19:08,461.461 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:19:08,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:19:08,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:19:08,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:19:10,507.507 INFO    ] ================================================
[2026-06-27 11:19:10,523.523 INFO    ] Launching Daemon at Sat Jun 27 11:19:10 IST 2026
[2026-06-27 11:19:10,534.534 INFO    ] ================================================
[2026-06-27 11:19:10,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:19:10
[2026-06-27 11:19:11,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:19:11,340.340 INFO    ] Initializing speech engine...
[2026-06-27 11:19:11,344.344 INFO    ] 2026-06-27 11:19:11
[2026-06-27 11:19:11,571.571 INFO    ] 2026-06-27 11:19:11
[2026-06-27 11:19:11,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:19:11,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:19:11,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:19:11,942.942 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:19:12,005.005 INFO    ] time= 27/06/2026 11:19:11
[2026-06-27 11:19:12,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:19:12,035.035 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:19:12,102.102 INFO    ] No existing commands found in stream
[2026-06-27 11:19:17,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:19:17,120.120 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-27 11:19:20,122.122 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 11:19:20,123.123 INFO    ] Checking for system updates...
[2026-06-27 11:19:20,145.145 INFO    ] 200
[2026-06-27 11:19:20,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:19:20,179.179 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:19:20,180.180 INFO    ] No update needed
[2026-06-27 11:19:20,182.182 INFO    ] Checking for camera pi updates...
[2026-06-27 11:19:20,203.203 INFO    ] 200
[2026-06-27 11:19:20,205.205 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:19:20,228.228 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:19:20,266.266 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:19:20,268.268 INFO    ] No camera update needed
[2026-06-27 11:19:20,269.269 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:19:20,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:19:20,273.273 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:19:20,276.276 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:19:22,316.316 INFO    ] ================================================
[2026-06-27 11:19:22,331.331 INFO    ] Launching Daemon at Sat Jun 27 11:19:22 IST 2026
[2026-06-27 11:19:22,342.342 INFO    ] ================================================
[2026-06-27 11:19:22,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:19:22
[2026-06-27 11:19:22,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:19:23,129.129 INFO    ] Initializing speech engine...
[2026-06-27 11:19:23,139.139 INFO    ] 2026-06-27 11:19:23
[2026-06-27 11:19:23,347.347 INFO    ] 2026-06-27 11:19:23
[2026-06-27 11:19:23,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:19:23,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:19:23,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:19:23,723.723 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:19:23,772.772 INFO    ] time= 27/06/2026 11:19:23
[2026-06-27 11:19:23,794.794 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:19:23,800.800 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:19:23,867.867 INFO    ] No existing commands found in stream
[2026-06-27 11:19:28,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:19:28,879.879 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-27 11:19:30,659.659 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 11:19:30,661.661 INFO    ] Checking for system updates...
[2026-06-27 11:19:30,682.682 INFO    ] 200
[2026-06-27 11:19:30,683.683 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:19:30,716.716 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:19:30,717.717 INFO    ] No update needed
[2026-06-27 11:19:30,719.719 INFO    ] Checking for camera pi updates...
[2026-06-27 11:19:30,738.738 INFO    ] 200
[2026-06-27 11:19:30,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:19:30,765.765 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:19:30,813.813 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:19:30,815.815 INFO    ] No camera update needed
[2026-06-27 11:19:30,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:19:30,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:19:30,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:19:30,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:19:32,855.855 INFO    ] ================================================
[2026-06-27 11:19:32,863.863 INFO    ] Launching Daemon at Sat Jun 27 11:19:32 IST 2026
[2026-06-27 11:19:32,869.869 INFO    ] ================================================
[2026-06-27 11:19:33,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:19:33
[2026-06-27 11:19:33,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:19:33,672.672 INFO    ] Initializing speech engine...
[2026-06-27 11:19:33,677.677 INFO    ] 2026-06-27 11:19:33
[2026-06-27 11:19:33,884.884 INFO    ] 2026-06-27 11:19:33
[2026-06-27 11:19:33,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:19:34,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:19:34,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:19:34,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:19:34,307.307 INFO    ] time= 27/06/2026 11:19:34
[2026-06-27 11:19:34,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:19:34,336.336 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:19:34,403.403 INFO    ] No existing commands found in stream
[2026-06-27 11:19:39,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:19:39,416.416 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-27 11:19:39,950.950 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 11:19:39,951.951 INFO    ] Checking for system updates...
[2026-06-27 11:19:39,972.972 INFO    ] 200
[2026-06-27 11:19:39,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:19:40,006.006 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:19:40,007.007 INFO    ] No update needed
[2026-06-27 11:19:40,008.008 INFO    ] Checking for camera pi updates...
[2026-06-27 11:19:40,030.030 INFO    ] 200
[2026-06-27 11:19:40,032.032 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:19:40,055.055 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:19:40,097.097 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:19:40,099.099 INFO    ] No camera update needed
[2026-06-27 11:19:40,100.100 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:19:40,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:19:40,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:19:40,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:19:42,146.146 INFO    ] ================================================
[2026-06-27 11:19:42,161.161 INFO    ] Launching Daemon at Sat Jun 27 11:19:42 IST 2026
[2026-06-27 11:19:42,172.172 INFO    ] ================================================
[2026-06-27 11:19:42,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:19:42
[2026-06-27 11:19:42,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:19:43,004.004 INFO    ] Initializing speech engine...
[2026-06-27 11:19:43,013.013 INFO    ] 2026-06-27 11:19:43
[2026-06-27 11:19:43,220.220 INFO    ] 2026-06-27 11:19:43
[2026-06-27 11:19:43,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:19:43,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:19:43,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:19:43,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:19:43,632.632 INFO    ] time= 27/06/2026 11:19:43
[2026-06-27 11:19:43,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:19:43,671.671 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:19:43,739.739 INFO    ] No existing commands found in stream
[2026-06-27 11:19:48,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:19:48,752.752 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-27 11:19:50,935.935 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 11:19:50,937.937 INFO    ] Checking for system updates...
[2026-06-27 11:19:50,958.958 INFO    ] 200
[2026-06-27 11:19:50,962.962 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:19:51,000.000 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:19:51,001.001 INFO    ] No update needed
[2026-06-27 11:19:51,002.002 INFO    ] Checking for camera pi updates...
[2026-06-27 11:19:51,022.022 INFO    ] 200
[2026-06-27 11:19:51,024.024 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:19:51,048.048 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:19:51,083.083 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:19:51,085.085 INFO    ] No camera update needed
[2026-06-27 11:19:51,086.086 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:19:51,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:19:51,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:19:51,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:19:53,134.134 INFO    ] ================================================
[2026-06-27 11:19:53,149.149 INFO    ] Launching Daemon at Sat Jun 27 11:19:53 IST 2026
[2026-06-27 11:19:53,161.161 INFO    ] ================================================
[2026-06-27 11:19:53,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:19:53
[2026-06-27 11:19:53,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:19:53,957.957 INFO    ] Initializing speech engine...
[2026-06-27 11:19:53,963.963 INFO    ] 2026-06-27 11:19:53
[2026-06-27 11:19:54,167.167 INFO    ] 2026-06-27 11:19:54
[2026-06-27 11:19:54,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:19:54,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:19:54,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:19:54,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:19:54,582.582 INFO    ] time= 27/06/2026 11:19:54
[2026-06-27 11:19:54,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:19:54,616.616 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:19:54,684.684 INFO    ] No existing commands found in stream
[2026-06-27 11:19:59,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:19:59,696.696 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-27 11:20:02,594.594 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 11:20:02,596.596 INFO    ] Checking for system updates...
[2026-06-27 11:20:02,616.616 INFO    ] 200
[2026-06-27 11:20:02,618.618 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:20:02,652.652 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:20:02,653.653 INFO    ] No update needed
[2026-06-27 11:20:02,655.655 INFO    ] Checking for camera pi updates...
[2026-06-27 11:20:02,674.674 INFO    ] 200
[2026-06-27 11:20:02,676.676 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:20:02,702.702 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:20:02,834.834 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:20:02,836.836 INFO    ] No camera update needed
[2026-06-27 11:20:02,837.837 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:20:02,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:20:02,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:20:02,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:20:04,883.883 INFO    ] ================================================
[2026-06-27 11:20:04,898.898 INFO    ] Launching Daemon at Sat Jun 27 11:20:04 IST 2026
[2026-06-27 11:20:04,908.908 INFO    ] ================================================
[2026-06-27 11:20:05,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:20:05
[2026-06-27 11:20:05,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:20:05,734.734 INFO    ] Initializing speech engine...
[2026-06-27 11:20:05,739.739 INFO    ] 2026-06-27 11:20:05
[2026-06-27 11:20:05,947.947 INFO    ] 2026-06-27 11:20:05
[2026-06-27 11:20:05,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:20:06,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:20:06,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:20:06,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:20:06,366.366 INFO    ] time= 27/06/2026 11:20:06
[2026-06-27 11:20:06,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:20:06,399.399 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:20:06,466.466 INFO    ] No existing commands found in stream
[2026-06-27 11:20:11,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:20:11,483.483 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-27 11:20:12,540.540 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 11:20:12,541.541 INFO    ] Checking for system updates...
[2026-06-27 11:20:12,562.562 INFO    ] 200
[2026-06-27 11:20:12,564.564 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:20:12,595.595 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:20:12,596.596 INFO    ] No update needed
[2026-06-27 11:20:12,597.597 INFO    ] Checking for camera pi updates...
[2026-06-27 11:20:12,621.621 INFO    ] 200
[2026-06-27 11:20:12,622.622 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:20:12,646.646 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:20:12,687.687 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:20:12,688.688 INFO    ] No camera update needed
[2026-06-27 11:20:12,690.690 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:20:12,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:20:12,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:20:12,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:20:14,729.729 INFO    ] ================================================
[2026-06-27 11:20:14,744.744 INFO    ] Launching Daemon at Sat Jun 27 11:20:14 IST 2026
[2026-06-27 11:20:14,755.755 INFO    ] ================================================
[2026-06-27 11:20:15,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:20:15
[2026-06-27 11:20:15,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:20:15,549.549 INFO    ] Initializing speech engine...
[2026-06-27 11:20:15,558.558 INFO    ] 2026-06-27 11:20:15
[2026-06-27 11:20:15,774.774 INFO    ] 2026-06-27 11:20:15
[2026-06-27 11:20:15,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:20:15,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:20:16,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:20:16,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:20:16,188.188 INFO    ] time= 27/06/2026 11:20:16
[2026-06-27 11:20:16,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:20:16,252.252 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:20:16,324.324 INFO    ] No existing commands found in stream
[2026-06-27 11:20:21,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:20:21,336.336 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-27 11:20:23,476.476 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:20:23,477.477 INFO    ] Checking for system updates...
[2026-06-27 11:20:23,499.499 INFO    ] 200
[2026-06-27 11:20:23,500.500 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:20:23,530.530 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:20:23,532.532 INFO    ] No update needed
[2026-06-27 11:20:23,533.533 INFO    ] Checking for camera pi updates...
[2026-06-27 11:20:23,553.553 INFO    ] 200
[2026-06-27 11:20:23,555.555 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:20:23,579.579 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:20:23,617.617 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:20:23,619.619 INFO    ] No camera update needed
[2026-06-27 11:20:23,620.620 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:20:23,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:20:23,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:20:23,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:20:25,665.665 INFO    ] ================================================
[2026-06-27 11:20:25,680.680 INFO    ] Launching Daemon at Sat Jun 27 11:20:25 IST 2026
[2026-06-27 11:20:25,691.691 INFO    ] ================================================
[2026-06-27 11:20:26,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:20:26
[2026-06-27 11:20:26,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:20:26,552.552 INFO    ] Initializing speech engine...
[2026-06-27 11:20:26,563.563 INFO    ] 2026-06-27 11:20:26
[2026-06-27 11:20:26,772.772 INFO    ] 2026-06-27 11:20:26
[2026-06-27 11:20:26,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:20:26,987.987 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:20:26,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:20:27,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:20:27,196.196 INFO    ] time= 27/06/2026 11:20:27
[2026-06-27 11:20:27,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:20:27,225.225 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:20:27,291.291 INFO    ] No existing commands found in stream
[2026-06-27 11:20:32,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:20:32,305.305 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-27 11:20:33,671.671 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 11:20:33,672.672 INFO    ] Checking for system updates...
[2026-06-27 11:20:33,696.696 INFO    ] 200
[2026-06-27 11:20:33,697.697 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:20:33,728.728 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:20:33,729.729 INFO    ] No update needed
[2026-06-27 11:20:33,730.730 INFO    ] Checking for camera pi updates...
[2026-06-27 11:20:33,750.750 INFO    ] 200
[2026-06-27 11:20:33,751.751 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:20:33,775.775 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:20:33,821.821 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:20:33,822.822 INFO    ] No camera update needed
[2026-06-27 11:20:33,824.824 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:20:33,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:20:33,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:20:33,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:20:35,871.871 INFO    ] ================================================
[2026-06-27 11:20:35,887.887 INFO    ] Launching Daemon at Sat Jun 27 11:20:35 IST 2026
[2026-06-27 11:20:35,898.898 INFO    ] ================================================
[2026-06-27 11:20:36,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:20:36
[2026-06-27 11:20:36,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:20:36,684.684 INFO    ] Initializing speech engine...
[2026-06-27 11:20:36,690.690 INFO    ] 2026-06-27 11:20:36
[2026-06-27 11:20:36,894.894 INFO    ] 2026-06-27 11:20:36
[2026-06-27 11:20:36,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:20:37,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:20:37,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:20:37,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:20:37,289.289 INFO    ] time= 27/06/2026 11:20:37
[2026-06-27 11:20:37,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:20:37,338.338 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:20:37,410.410 INFO    ] No existing commands found in stream
[2026-06-27 11:20:42,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:20:42,419.419 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-27 11:20:46,128.128 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:20:46,129.129 INFO    ] Checking for system updates...
[2026-06-27 11:20:46,150.150 INFO    ] 200
[2026-06-27 11:20:46,151.151 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:20:46,193.193 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:20:46,194.194 INFO    ] No update needed
[2026-06-27 11:20:46,196.196 INFO    ] Checking for camera pi updates...
[2026-06-27 11:20:46,218.218 INFO    ] 200
[2026-06-27 11:20:46,219.219 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:20:46,243.243 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:20:46,391.391 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:20:46,392.392 INFO    ] No camera update needed
[2026-06-27 11:20:46,394.394 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:20:46,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:20:46,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:20:46,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:20:48,440.440 INFO    ] ================================================
[2026-06-27 11:20:48,456.456 INFO    ] Launching Daemon at Sat Jun 27 11:20:48 IST 2026
[2026-06-27 11:20:48,468.468 INFO    ] ================================================
[2026-06-27 11:20:48,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:20:48
[2026-06-27 11:20:49,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:20:49,280.280 INFO    ] Initializing speech engine...
[2026-06-27 11:20:49,290.290 INFO    ] 2026-06-27 11:20:49
[2026-06-27 11:20:49,494.494 INFO    ] 2026-06-27 11:20:49
[2026-06-27 11:20:49,523.523 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:20:49,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:20:49,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:20:49,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:20:49,936.936 INFO    ] time= 27/06/2026 11:20:49
[2026-06-27 11:20:49,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:20:49,943.943 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:20:50,009.009 INFO    ] No existing commands found in stream
[2026-06-27 11:20:55,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:20:55,022.022 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-27 11:20:55,583.583 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 11:20:55,584.584 INFO    ] Checking for system updates...
[2026-06-27 11:20:55,605.605 INFO    ] 200
[2026-06-27 11:20:55,606.606 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:20:55,638.638 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:20:55,639.639 INFO    ] No update needed
[2026-06-27 11:20:55,641.641 INFO    ] Checking for camera pi updates...
[2026-06-27 11:20:55,661.661 INFO    ] 200
[2026-06-27 11:20:55,663.663 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:20:55,686.686 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:20:55,709.709 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:20:55,710.710 INFO    ] No camera update needed
[2026-06-27 11:20:55,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:20:55,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:20:55,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:20:55,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:20:57,757.757 INFO    ] ================================================
[2026-06-27 11:20:57,773.773 INFO    ] Launching Daemon at Sat Jun 27 11:20:57 IST 2026
[2026-06-27 11:20:57,784.784 INFO    ] ================================================
[2026-06-27 11:20:58,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:20:58
[2026-06-27 11:20:58,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:20:58,589.589 INFO    ] Initializing speech engine...
[2026-06-27 11:20:58,601.601 INFO    ] 2026-06-27 11:20:58
[2026-06-27 11:20:58,810.810 INFO    ] 2026-06-27 11:20:58
[2026-06-27 11:20:58,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:20:59,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:20:59,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:20:59,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:20:59,257.257 INFO    ] time= 27/06/2026 11:20:59
[2026-06-27 11:20:59,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:20:59,265.265 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:20:59,331.331 INFO    ] No existing commands found in stream
[2026-06-27 11:21:04,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:21:04,345.345 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-27 11:21:06,215.215 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:21:06,216.216 INFO    ] Checking for system updates...
[2026-06-27 11:21:06,241.241 INFO    ] 200
[2026-06-27 11:21:06,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:21:06,279.279 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:21:06,281.281 INFO    ] No update needed
[2026-06-27 11:21:06,282.282 INFO    ] Checking for camera pi updates...
[2026-06-27 11:21:06,302.302 INFO    ] 200
[2026-06-27 11:21:06,303.303 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:21:06,327.327 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:21:06,376.376 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:21:06,378.378 INFO    ] No camera update needed
[2026-06-27 11:21:06,379.379 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:21:06,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:21:06,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:21:06,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:21:08,425.425 INFO    ] ================================================
[2026-06-27 11:21:08,441.441 INFO    ] Launching Daemon at Sat Jun 27 11:21:08 IST 2026
[2026-06-27 11:21:08,452.452 INFO    ] ================================================
[2026-06-27 11:21:08,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:21:08
[2026-06-27 11:21:09,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:21:09,277.277 INFO    ] Initializing speech engine...
[2026-06-27 11:21:09,288.288 INFO    ] 2026-06-27 11:21:09
[2026-06-27 11:21:09,492.492 INFO    ] 2026-06-27 11:21:09
[2026-06-27 11:21:09,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:21:09,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:21:09,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:21:09,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:21:09,914.914 INFO    ] time= 27/06/2026 11:21:09
[2026-06-27 11:21:09,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:21:09,941.941 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:21:10,007.007 INFO    ] No existing commands found in stream
[2026-06-27 11:21:15,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:21:15,020.020 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-27 11:21:16,881.881 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:21:16,882.882 INFO    ] Checking for system updates...
[2026-06-27 11:21:16,904.904 INFO    ] 200
[2026-06-27 11:21:16,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:21:16,936.936 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:21:16,937.937 INFO    ] No update needed
[2026-06-27 11:21:16,938.938 INFO    ] Checking for camera pi updates...
[2026-06-27 11:21:16,959.959 INFO    ] 200
[2026-06-27 11:21:16,960.960 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:21:16,983.983 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:21:17,019.019 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:21:17,021.021 INFO    ] No camera update needed
[2026-06-27 11:21:17,022.022 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:21:17,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:21:17,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:21:17,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:21:19,069.069 INFO    ] ================================================
[2026-06-27 11:21:19,085.085 INFO    ] Launching Daemon at Sat Jun 27 11:21:19 IST 2026
[2026-06-27 11:21:19,096.096 INFO    ] ================================================
[2026-06-27 11:21:19,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:21:19
[2026-06-27 11:21:19,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:21:19,922.922 INFO    ] Initializing speech engine...
[2026-06-27 11:21:19,931.931 INFO    ] 2026-06-27 11:21:19
[2026-06-27 11:21:20,137.137 INFO    ] 2026-06-27 11:21:20
[2026-06-27 11:21:20,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:21:20,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:21:20,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:21:20,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:21:20,554.554 INFO    ] time= 27/06/2026 11:21:20
[2026-06-27 11:21:20,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:21:20,584.584 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:21:20,675.675 INFO    ] No existing commands found in stream
[2026-06-27 11:21:25,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:21:25,687.687 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-27 11:21:30,023.023 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 11:21:30,024.024 INFO    ] Checking for system updates...
[2026-06-27 11:21:30,045.045 INFO    ] 200
[2026-06-27 11:21:30,046.046 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:21:30,076.076 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:21:30,078.078 INFO    ] No update needed
[2026-06-27 11:21:30,079.079 INFO    ] Checking for camera pi updates...
[2026-06-27 11:21:30,099.099 INFO    ] 200
[2026-06-27 11:21:30,100.100 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:21:30,124.124 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:21:30,164.164 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:21:30,166.166 INFO    ] No camera update needed
[2026-06-27 11:21:30,167.167 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:21:30,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:21:30,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:21:30,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:21:32,206.206 INFO    ] ================================================
[2026-06-27 11:21:32,216.216 INFO    ] Launching Daemon at Sat Jun 27 11:21:32 IST 2026
[2026-06-27 11:21:32,223.223 INFO    ] ================================================
[2026-06-27 11:21:32,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:21:32
[2026-06-27 11:21:32,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:21:32,983.983 INFO    ] Initializing speech engine...
[2026-06-27 11:21:32,992.992 INFO    ] 2026-06-27 11:21:32
[2026-06-27 11:21:33,202.202 INFO    ] 2026-06-27 11:21:33
[2026-06-27 11:21:33,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:21:33,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:21:33,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:21:33,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:21:33,619.619 INFO    ] time= 27/06/2026 11:21:33
[2026-06-27 11:21:33,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:21:33,649.649 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:21:33,715.715 INFO    ] No existing commands found in stream
[2026-06-27 11:21:38,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:21:38,728.728 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-27 11:21:39,598.598 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 11:21:39,599.599 INFO    ] Checking for system updates...
[2026-06-27 11:21:39,622.622 INFO    ] 200
[2026-06-27 11:21:39,624.624 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:21:39,657.657 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:21:39,658.658 INFO    ] No update needed
[2026-06-27 11:21:39,659.659 INFO    ] Checking for camera pi updates...
[2026-06-27 11:21:39,681.681 INFO    ] 200
[2026-06-27 11:21:39,682.682 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:21:39,709.709 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:21:39,744.744 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:21:39,745.745 INFO    ] No camera update needed
[2026-06-27 11:21:39,747.747 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:21:39,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:21:39,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:21:39,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:21:41,796.796 INFO    ] ================================================
[2026-06-27 11:21:41,812.812 INFO    ] Launching Daemon at Sat Jun 27 11:21:41 IST 2026
[2026-06-27 11:21:41,823.823 INFO    ] ================================================
[2026-06-27 11:21:42,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:21:42
[2026-06-27 11:21:42,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:21:42,620.620 INFO    ] Initializing speech engine...
[2026-06-27 11:21:42,624.624 INFO    ] 2026-06-27 11:21:42
[2026-06-27 11:21:42,855.855 INFO    ] 2026-06-27 11:21:42
[2026-06-27 11:21:42,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:21:43,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:21:43,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:21:43,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:21:43,278.278 INFO    ] time= 27/06/2026 11:21:43
[2026-06-27 11:21:43,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:21:43,334.334 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:21:43,411.411 INFO    ] No existing commands found in stream
[2026-06-27 11:21:48,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:21:48,422.422 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-27 11:21:51,545.545 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 11:21:51,547.547 INFO    ] Checking for system updates...
[2026-06-27 11:21:51,567.567 INFO    ] 200
[2026-06-27 11:21:51,569.569 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:21:51,599.599 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:21:51,600.600 INFO    ] No update needed
[2026-06-27 11:21:51,602.602 INFO    ] Checking for camera pi updates...
[2026-06-27 11:21:51,621.621 INFO    ] 200
[2026-06-27 11:21:51,623.623 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:21:51,646.646 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:21:51,685.685 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:21:51,687.687 INFO    ] No camera update needed
[2026-06-27 11:21:51,688.688 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:21:51,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:21:51,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:21:51,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:21:53,736.736 INFO    ] ================================================
[2026-06-27 11:21:53,751.751 INFO    ] Launching Daemon at Sat Jun 27 11:21:53 IST 2026
[2026-06-27 11:21:53,762.762 INFO    ] ================================================
[2026-06-27 11:21:54,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:21:54
[2026-06-27 11:21:54,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:21:54,577.577 INFO    ] Initializing speech engine...
[2026-06-27 11:21:54,585.585 INFO    ] 2026-06-27 11:21:54
[2026-06-27 11:21:54,804.804 INFO    ] 2026-06-27 11:21:54
[2026-06-27 11:21:54,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:21:55,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:21:55,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:21:55,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:21:55,205.205 INFO    ] time= 27/06/2026 11:21:55
[2026-06-27 11:21:55,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:21:55,283.283 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:21:55,352.352 INFO    ] No existing commands found in stream
[2026-06-27 11:22:00,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:22:00,366.366 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-27 11:22:05,043.043 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 11:22:05,044.044 INFO    ] Checking for system updates...
[2026-06-27 11:22:05,066.066 INFO    ] 200
[2026-06-27 11:22:05,067.067 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:22:05,099.099 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:22:05,101.101 INFO    ] No update needed
[2026-06-27 11:22:05,102.102 INFO    ] Checking for camera pi updates...
[2026-06-27 11:22:05,124.124 INFO    ] 200
[2026-06-27 11:22:05,126.126 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:22:05,150.150 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:22:05,193.193 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:22:05,195.195 INFO    ] No camera update needed
[2026-06-27 11:22:05,197.197 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:22:05,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:22:05,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:22:05,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:22:07,248.248 INFO    ] ================================================
[2026-06-27 11:22:07,263.263 INFO    ] Launching Daemon at Sat Jun 27 11:22:07 IST 2026
[2026-06-27 11:22:07,274.274 INFO    ] ================================================
[2026-06-27 11:22:07,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:22:07
[2026-06-27 11:22:07,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:22:08,101.101 INFO    ] Initializing speech engine...
[2026-06-27 11:22:08,105.105 INFO    ] 2026-06-27 11:22:08
[2026-06-27 11:22:08,310.310 INFO    ] 2026-06-27 11:22:08
[2026-06-27 11:22:08,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:22:08,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:22:08,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:22:08,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:22:08,734.734 INFO    ] time= 27/06/2026 11:22:08
[2026-06-27 11:22:08,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:22:08,763.763 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:22:08,830.830 INFO    ] No existing commands found in stream
[2026-06-27 11:22:13,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:22:13,842.842 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-27 11:22:17,564.564 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 11:22:17,565.565 INFO    ] Checking for system updates...
[2026-06-27 11:22:17,586.586 INFO    ] 200
[2026-06-27 11:22:17,587.587 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:22:17,620.620 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:22:17,621.621 INFO    ] No update needed
[2026-06-27 11:22:17,622.622 INFO    ] Checking for camera pi updates...
[2026-06-27 11:22:17,642.642 INFO    ] 200
[2026-06-27 11:22:17,643.643 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:22:17,669.669 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:22:17,705.705 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:22:17,707.707 INFO    ] No camera update needed
[2026-06-27 11:22:17,708.708 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:22:17,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:22:17,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:22:17,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:22:19,755.755 INFO    ] ================================================
[2026-06-27 11:22:19,771.771 INFO    ] Launching Daemon at Sat Jun 27 11:22:19 IST 2026
[2026-06-27 11:22:19,782.782 INFO    ] ================================================
[2026-06-27 11:22:20,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:22:20
[2026-06-27 11:22:20,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:22:20,588.588 INFO    ] Initializing speech engine...
[2026-06-27 11:22:20,598.598 INFO    ] 2026-06-27 11:22:20
[2026-06-27 11:22:20,804.804 INFO    ] 2026-06-27 11:22:20
[2026-06-27 11:22:20,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:22:21,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:22:21,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:22:21,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:22:21,231.231 INFO    ] time= 27/06/2026 11:22:21
[2026-06-27 11:22:21,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:22:21,253.253 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:22:21,318.318 INFO    ] No existing commands found in stream
[2026-06-27 11:22:26,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:22:26,332.332 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-27 11:22:29,688.688 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 11:22:29,689.689 INFO    ] Checking for system updates...
[2026-06-27 11:22:29,710.710 INFO    ] 200
[2026-06-27 11:22:29,711.711 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:22:29,741.741 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:22:29,742.742 INFO    ] No update needed
[2026-06-27 11:22:29,744.744 INFO    ] Checking for camera pi updates...
[2026-06-27 11:22:29,764.764 INFO    ] 200
[2026-06-27 11:22:29,765.765 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:22:29,790.790 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:22:29,830.830 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:22:29,831.831 INFO    ] No camera update needed
[2026-06-27 11:22:29,833.833 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:22:29,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:22:29,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:22:29,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:22:31,872.872 INFO    ] ================================================
[2026-06-27 11:22:31,880.880 INFO    ] Launching Daemon at Sat Jun 27 11:22:31 IST 2026
[2026-06-27 11:22:31,886.886 INFO    ] ================================================
[2026-06-27 11:22:32,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:22:32
[2026-06-27 11:22:32,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:22:32,694.694 INFO    ] Initializing speech engine...
[2026-06-27 11:22:32,704.704 INFO    ] 2026-06-27 11:22:32
[2026-06-27 11:22:32,908.908 INFO    ] 2026-06-27 11:22:32
[2026-06-27 11:22:32,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:22:33,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:22:33,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:22:33,284.284 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:22:33,328.328 INFO    ] time= 27/06/2026 11:22:33
[2026-06-27 11:22:33,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:22:33,355.355 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:22:33,421.421 INFO    ] No existing commands found in stream
[2026-06-27 11:22:38,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:22:38,433.433 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-27 11:22:39,744.744 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 11:22:39,745.745 INFO    ] Checking for system updates...
[2026-06-27 11:22:39,767.767 INFO    ] 200
[2026-06-27 11:22:39,769.769 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:22:39,800.800 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:22:39,801.801 INFO    ] No update needed
[2026-06-27 11:22:39,802.802 INFO    ] Checking for camera pi updates...
[2026-06-27 11:22:39,823.823 INFO    ] 200
[2026-06-27 11:22:39,824.824 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:22:39,849.849 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:22:39,889.889 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:22:39,890.890 INFO    ] No camera update needed
[2026-06-27 11:22:39,891.891 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:22:39,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:22:39,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:22:39,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:22:41,939.939 INFO    ] ================================================
[2026-06-27 11:22:41,954.954 INFO    ] Launching Daemon at Sat Jun 27 11:22:41 IST 2026
[2026-06-27 11:22:41,965.965 INFO    ] ================================================
[2026-06-27 11:22:42,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:22:42
[2026-06-27 11:22:42,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:22:42,836.836 INFO    ] Initializing speech engine...
[2026-06-27 11:22:42,840.840 INFO    ] 2026-06-27 11:22:42
[2026-06-27 11:22:43,047.047 INFO    ] 2026-06-27 11:22:43
[2026-06-27 11:22:43,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:22:43,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:22:43,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:22:43,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:22:43,466.466 INFO    ] time= 27/06/2026 11:22:43
[2026-06-27 11:22:43,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:22:43,494.494 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:22:43,561.561 INFO    ] No existing commands found in stream
[2026-06-27 11:22:48,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:22:48,575.575 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-27 11:22:49,468.468 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 11:22:49,469.469 INFO    ] Checking for system updates...
[2026-06-27 11:22:49,492.492 INFO    ] 200
[2026-06-27 11:22:49,494.494 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:22:49,529.529 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:22:49,531.531 INFO    ] No update needed
[2026-06-27 11:22:49,533.533 INFO    ] Checking for camera pi updates...
[2026-06-27 11:22:49,564.564 INFO    ] 200
[2026-06-27 11:22:49,566.566 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:22:49,605.605 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:22:49,750.750 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:22:49,751.751 INFO    ] No camera update needed
[2026-06-27 11:22:49,752.752 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:22:49,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:22:49,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:22:49,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:22:51,798.798 INFO    ] ================================================
[2026-06-27 11:22:51,814.814 INFO    ] Launching Daemon at Sat Jun 27 11:22:51 IST 2026
[2026-06-27 11:22:51,824.824 INFO    ] ================================================
[2026-06-27 11:22:52,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:22:52
[2026-06-27 11:22:52,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:22:52,590.590 INFO    ] Initializing speech engine...
[2026-06-27 11:22:52,594.594 INFO    ] 2026-06-27 11:22:52
[2026-06-27 11:22:52,815.815 INFO    ] 2026-06-27 11:22:52
[2026-06-27 11:22:52,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:22:53,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:22:53,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:22:53,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:22:53,262.262 INFO    ] time= 27/06/2026 11:22:53
[2026-06-27 11:22:53,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:22:53,269.269 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:22:53,335.335 INFO    ] No existing commands found in stream
[2026-06-27 11:22:58,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:22:58,349.349 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-27 11:23:01,553.553 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:23:01,555.555 INFO    ] Checking for system updates...
[2026-06-27 11:23:01,584.584 INFO    ] 200
[2026-06-27 11:23:01,585.585 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:23:01,624.624 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:23:01,626.626 INFO    ] No update needed
[2026-06-27 11:23:01,628.628 INFO    ] Checking for camera pi updates...
[2026-06-27 11:23:01,655.655 INFO    ] 200
[2026-06-27 11:23:01,657.657 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:23:01,693.693 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:23:01,742.742 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:23:01,744.744 INFO    ] No camera update needed
[2026-06-27 11:23:01,747.747 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:23:01,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:23:01,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:23:01,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:23:03,799.799 INFO    ] ================================================
[2026-06-27 11:23:03,814.814 INFO    ] Launching Daemon at Sat Jun 27 11:23:03 IST 2026
[2026-06-27 11:23:03,824.824 INFO    ] ================================================
[2026-06-27 11:23:04,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:23:04
[2026-06-27 11:23:04,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:23:04,588.588 INFO    ] Initializing speech engine...
[2026-06-27 11:23:04,596.596 INFO    ] 2026-06-27 11:23:04
[2026-06-27 11:23:04,809.809 INFO    ] 2026-06-27 11:23:04
[2026-06-27 11:23:04,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:23:05,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:23:05,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:23:05,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:23:05,256.256 INFO    ] time= 27/06/2026 11:23:05
[2026-06-27 11:23:05,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:23:05,264.264 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:23:05,331.331 INFO    ] No existing commands found in stream
[2026-06-27 11:23:10,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:23:10,343.343 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-27 11:23:12,003.003 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 11:23:12,004.004 INFO    ] Checking for system updates...
[2026-06-27 11:23:12,026.026 INFO    ] 200
[2026-06-27 11:23:12,027.027 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:23:12,060.060 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:23:12,061.061 INFO    ] No update needed
[2026-06-27 11:23:12,063.063 INFO    ] Checking for camera pi updates...
[2026-06-27 11:23:12,086.086 INFO    ] 200
[2026-06-27 11:23:12,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:23:12,111.111 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:23:12,148.148 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:23:12,150.150 INFO    ] No camera update needed
[2026-06-27 11:23:12,151.151 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:23:12,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:23:12,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:23:12,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:23:14,199.199 INFO    ] ================================================
[2026-06-27 11:23:14,214.214 INFO    ] Launching Daemon at Sat Jun 27 11:23:14 IST 2026
[2026-06-27 11:23:14,225.225 INFO    ] ================================================
[2026-06-27 11:23:14,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:23:14
[2026-06-27 11:23:14,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:23:15,080.080 INFO    ] Initializing speech engine...
[2026-06-27 11:23:15,090.090 INFO    ] 2026-06-27 11:23:15
[2026-06-27 11:23:15,298.298 INFO    ] 2026-06-27 11:23:15
[2026-06-27 11:23:15,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:23:15,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:23:15,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:23:15,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:23:15,710.710 INFO    ] time= 27/06/2026 11:23:15
[2026-06-27 11:23:15,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:23:15,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:23:15,786.786 INFO    ] No existing commands found in stream
[2026-06-27 11:23:20,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:23:20,799.799 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-27 11:23:23,640.640 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:23:23,642.642 INFO    ] Checking for system updates...
[2026-06-27 11:23:23,665.665 INFO    ] 200
[2026-06-27 11:23:23,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:23:23,696.696 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:23:23,698.698 INFO    ] No update needed
[2026-06-27 11:23:23,699.699 INFO    ] Checking for camera pi updates...
[2026-06-27 11:23:23,721.721 INFO    ] 200
[2026-06-27 11:23:23,722.722 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:23:23,748.748 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:23:23,786.786 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:23:23,788.788 INFO    ] No camera update needed
[2026-06-27 11:23:23,789.789 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:23:23,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:23:23,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:23:23,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:23:25,835.835 INFO    ] ================================================
[2026-06-27 11:23:25,850.850 INFO    ] Launching Daemon at Sat Jun 27 11:23:25 IST 2026
[2026-06-27 11:23:25,861.861 INFO    ] ================================================
[2026-06-27 11:23:26,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:23:26
[2026-06-27 11:23:26,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:23:26,720.720 INFO    ] Initializing speech engine...
[2026-06-27 11:23:26,729.729 INFO    ] 2026-06-27 11:23:26
[2026-06-27 11:23:26,938.938 INFO    ] 2026-06-27 11:23:26
[2026-06-27 11:23:26,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:23:27,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:23:27,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:23:27,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:23:27,358.358 INFO    ] time= 27/06/2026 11:23:27
[2026-06-27 11:23:27,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:23:27,388.388 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:23:27,453.453 INFO    ] No existing commands found in stream
[2026-06-27 11:23:32,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:23:32,468.468 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-27 11:23:36,471.471 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 11:23:36,473.473 INFO    ] Checking for system updates...
[2026-06-27 11:23:36,494.494 INFO    ] 200
[2026-06-27 11:23:36,495.495 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:23:36,528.528 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:23:36,530.530 INFO    ] No update needed
[2026-06-27 11:23:36,531.531 INFO    ] Checking for camera pi updates...
[2026-06-27 11:23:36,551.551 INFO    ] 200
[2026-06-27 11:23:36,552.552 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:23:36,576.576 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:23:36,613.613 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:23:36,614.614 INFO    ] No camera update needed
[2026-06-27 11:23:36,616.616 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:23:36,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:23:36,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:23:36,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:23:38,661.661 INFO    ] ================================================
[2026-06-27 11:23:38,676.676 INFO    ] Launching Daemon at Sat Jun 27 11:23:38 IST 2026
[2026-06-27 11:23:38,687.687 INFO    ] ================================================
[2026-06-27 11:23:39,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:23:39
[2026-06-27 11:23:39,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:23:39,478.478 INFO    ] Initializing speech engine...
[2026-06-27 11:23:39,485.485 INFO    ] 2026-06-27 11:23:39
[2026-06-27 11:23:39,698.698 INFO    ] 2026-06-27 11:23:39
[2026-06-27 11:23:39,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:23:39,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:23:39,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:23:40,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:23:40,124.124 INFO    ] time= 27/06/2026 11:23:40
[2026-06-27 11:23:40,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:23:40,155.155 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:23:40,222.222 INFO    ] No existing commands found in stream
[2026-06-27 11:23:45,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:23:45,239.239 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-27 11:23:49,578.578 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:23:49,579.579 INFO    ] Checking for system updates...
[2026-06-27 11:23:49,600.600 INFO    ] 200
[2026-06-27 11:23:49,601.601 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:23:49,631.631 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:23:49,633.633 INFO    ] No update needed
[2026-06-27 11:23:49,634.634 INFO    ] Checking for camera pi updates...
[2026-06-27 11:23:49,654.654 INFO    ] 200
[2026-06-27 11:23:49,655.655 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:23:49,678.678 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:23:49,727.727 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:23:49,729.729 INFO    ] No camera update needed
[2026-06-27 11:23:49,730.730 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:23:49,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:23:49,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:23:49,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:23:51,776.776 INFO    ] ================================================
[2026-06-27 11:23:51,792.792 INFO    ] Launching Daemon at Sat Jun 27 11:23:51 IST 2026
[2026-06-27 11:23:51,802.802 INFO    ] ================================================
[2026-06-27 11:23:52,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:23:52
[2026-06-27 11:23:52,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:23:52,633.633 INFO    ] Initializing speech engine...
[2026-06-27 11:23:52,638.638 INFO    ] 2026-06-27 11:23:52
[2026-06-27 11:23:52,860.860 INFO    ] 2026-06-27 11:23:52
[2026-06-27 11:23:52,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:23:53,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:23:53,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:23:53,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:23:53,309.309 INFO    ] time= 27/06/2026 11:23:53
[2026-06-27 11:23:53,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:23:53,316.316 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:23:53,383.383 INFO    ] No existing commands found in stream
[2026-06-27 11:23:58,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:23:58,397.397 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-27 11:24:01,092.092 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 11:24:01,094.094 INFO    ] Checking for system updates...
[2026-06-27 11:24:01,116.116 INFO    ] 200
[2026-06-27 11:24:01,117.117 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:24:01,148.148 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:24:01,149.149 INFO    ] No update needed
[2026-06-27 11:24:01,151.151 INFO    ] Checking for camera pi updates...
[2026-06-27 11:24:01,176.176 INFO    ] 200
[2026-06-27 11:24:01,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:24:01,201.201 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:24:01,243.243 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:24:01,245.245 INFO    ] No camera update needed
[2026-06-27 11:24:01,246.246 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:24:01,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:24:01,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:24:01,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:24:03,287.287 INFO    ] ================================================
[2026-06-27 11:24:03,302.302 INFO    ] Launching Daemon at Sat Jun 27 11:24:03 IST 2026
[2026-06-27 11:24:03,312.312 INFO    ] ================================================
[2026-06-27 11:24:03,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:24:03
[2026-06-27 11:24:03,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:24:04,098.098 INFO    ] Initializing speech engine...
[2026-06-27 11:24:04,102.102 INFO    ] 2026-06-27 11:24:04
[2026-06-27 11:24:04,331.331 INFO    ] 2026-06-27 11:24:04
[2026-06-27 11:24:04,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:24:04,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:24:04,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:24:04,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:24:04,766.766 INFO    ] time= 27/06/2026 11:24:04
[2026-06-27 11:24:04,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:24:04,778.778 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:24:04,832.832 INFO    ] No existing commands found in stream
[2026-06-27 11:24:09,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:24:09,844.844 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-27 11:24:11,574.574 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:24:11,575.575 INFO    ] Checking for system updates...
[2026-06-27 11:24:11,596.596 INFO    ] 200
[2026-06-27 11:24:11,597.597 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:24:11,627.627 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:24:11,628.628 INFO    ] No update needed
[2026-06-27 11:24:11,629.629 INFO    ] Checking for camera pi updates...
[2026-06-27 11:24:11,649.649 INFO    ] 200
[2026-06-27 11:24:11,650.650 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:24:11,674.674 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:24:11,707.707 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:24:11,708.708 INFO    ] No camera update needed
[2026-06-27 11:24:11,710.710 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:24:11,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:24:11,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:24:11,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:24:13,755.755 INFO    ] ================================================
[2026-06-27 11:24:13,771.771 INFO    ] Launching Daemon at Sat Jun 27 11:24:13 IST 2026
[2026-06-27 11:24:13,782.782 INFO    ] ================================================
[2026-06-27 11:24:14,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:24:14
[2026-06-27 11:24:14,439.439 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:24:14,568.568 INFO    ] Initializing speech engine...
[2026-06-27 11:24:14,573.573 INFO    ] 2026-06-27 11:24:14
[2026-06-27 11:24:14,792.792 INFO    ] 2026-06-27 11:24:14
[2026-06-27 11:24:14,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:24:15,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:24:15,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:24:15,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:24:15,214.214 INFO    ] time= 27/06/2026 11:24:15
[2026-06-27 11:24:15,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:24:15,244.244 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:24:15,310.310 INFO    ] No existing commands found in stream
[2026-06-27 11:24:20,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:24:20,319.319 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-27 11:24:22,944.944 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:24:22,946.946 INFO    ] Checking for system updates...
[2026-06-27 11:24:22,967.967 INFO    ] 200
[2026-06-27 11:24:22,969.969 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:24:23,002.002 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:24:23,004.004 INFO    ] No update needed
[2026-06-27 11:24:23,005.005 INFO    ] Checking for camera pi updates...
[2026-06-27 11:24:23,026.026 INFO    ] 200
[2026-06-27 11:24:23,027.027 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:24:23,051.051 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:24:23,090.090 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:24:23,091.091 INFO    ] No camera update needed
[2026-06-27 11:24:23,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:24:23,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:24:23,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:24:23,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:24:25,138.138 INFO    ] ================================================
[2026-06-27 11:24:25,153.153 INFO    ] Launching Daemon at Sat Jun 27 11:24:25 IST 2026
[2026-06-27 11:24:25,165.165 INFO    ] ================================================
[2026-06-27 11:24:25,520.520 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:24:25
[2026-06-27 11:24:25,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:24:25,971.971 INFO    ] Initializing speech engine...
[2026-06-27 11:24:25,983.983 INFO    ] 2026-06-27 11:24:25
[2026-06-27 11:24:26,192.192 INFO    ] 2026-06-27 11:24:26
[2026-06-27 11:24:26,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:24:26,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:24:26,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:24:26,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:24:26,609.609 INFO    ] time= 27/06/2026 11:24:26
[2026-06-27 11:24:26,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:24:26,639.639 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:24:26,705.705 INFO    ] No existing commands found in stream
[2026-06-27 11:24:31,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:24:31,717.717 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-27 11:24:34,144.144 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 11:24:34,145.145 INFO    ] Checking for system updates...
[2026-06-27 11:24:34,166.166 INFO    ] 200
[2026-06-27 11:24:34,167.167 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:24:34,198.198 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:24:34,199.199 INFO    ] No update needed
[2026-06-27 11:24:34,200.200 INFO    ] Checking for camera pi updates...
[2026-06-27 11:24:34,220.220 INFO    ] 200
[2026-06-27 11:24:34,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:24:34,244.244 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:24:34,280.280 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:24:34,282.282 INFO    ] No camera update needed
[2026-06-27 11:24:34,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:24:34,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:24:34,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:24:34,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:24:36,330.330 INFO    ] ================================================
[2026-06-27 11:24:36,346.346 INFO    ] Launching Daemon at Sat Jun 27 11:24:36 IST 2026
[2026-06-27 11:24:36,358.358 INFO    ] ================================================
[2026-06-27 11:24:36,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:24:36
[2026-06-27 11:24:36,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:24:37,146.146 INFO    ] Initializing speech engine...
[2026-06-27 11:24:37,151.151 INFO    ] 2026-06-27 11:24:37
[2026-06-27 11:24:37,356.356 INFO    ] 2026-06-27 11:24:37
[2026-06-27 11:24:37,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:24:37,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:24:37,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:24:37,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:24:37,776.776 INFO    ] time= 27/06/2026 11:24:37
[2026-06-27 11:24:37,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:24:37,806.806 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:24:37,897.897 INFO    ] No existing commands found in stream
[2026-06-27 11:24:42,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:24:42,915.915 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-27 11:24:46,509.509 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 11:24:46,511.511 INFO    ] Checking for system updates...
[2026-06-27 11:24:46,536.536 INFO    ] 200
[2026-06-27 11:24:46,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:24:46,592.592 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:24:46,594.594 INFO    ] No update needed
[2026-06-27 11:24:46,596.596 INFO    ] Checking for camera pi updates...
[2026-06-27 11:24:46,617.617 INFO    ] 200
[2026-06-27 11:24:46,618.618 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:24:46,644.644 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:24:46,694.694 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:24:46,695.695 INFO    ] No camera update needed
[2026-06-27 11:24:46,697.697 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:24:46,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:24:46,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:24:46,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:24:48,746.746 INFO    ] ================================================
[2026-06-27 11:24:48,761.761 INFO    ] Launching Daemon at Sat Jun 27 11:24:48 IST 2026
[2026-06-27 11:24:48,773.773 INFO    ] ================================================
[2026-06-27 11:24:49,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:24:49
[2026-06-27 11:24:49,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:24:49,557.557 INFO    ] Initializing speech engine...
[2026-06-27 11:24:49,565.565 INFO    ] 2026-06-27 11:24:49
[2026-06-27 11:24:49,777.777 INFO    ] 2026-06-27 11:24:49
[2026-06-27 11:24:49,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:24:49,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:24:49,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:24:50,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:24:50,194.194 INFO    ] time= 27/06/2026 11:24:50
[2026-06-27 11:24:50,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:24:50,224.224 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:24:50,291.291 INFO    ] No existing commands found in stream
[2026-06-27 11:24:55,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:24:55,303.303 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-27 11:24:56,294.294 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:24:56,295.295 INFO    ] Checking for system updates...
[2026-06-27 11:24:56,317.317 INFO    ] 200
[2026-06-27 11:24:56,318.318 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:24:56,351.351 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:24:56,353.353 INFO    ] No update needed
[2026-06-27 11:24:56,354.354 INFO    ] Checking for camera pi updates...
[2026-06-27 11:24:56,376.376 INFO    ] 200
[2026-06-27 11:24:56,378.378 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:24:56,401.401 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:24:56,541.541 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:24:56,542.542 INFO    ] No camera update needed
[2026-06-27 11:24:56,544.544 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:24:56,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:24:56,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:24:56,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:24:58,590.590 INFO    ] ================================================
[2026-06-27 11:24:58,606.606 INFO    ] Launching Daemon at Sat Jun 27 11:24:58 IST 2026
[2026-06-27 11:24:58,617.617 INFO    ] ================================================
[2026-06-27 11:24:58,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:24:58
[2026-06-27 11:24:59,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:24:59,388.388 INFO    ] Initializing speech engine...
[2026-06-27 11:24:59,392.392 INFO    ] 2026-06-27 11:24:59
[2026-06-27 11:24:59,585.585 INFO    ] 2026-06-27 11:24:59
[2026-06-27 11:24:59,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:24:59,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:24:59,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:24:59,994.994 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:25:00,052.052 INFO    ] time= 27/06/2026 11:24:59
[2026-06-27 11:25:00,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:25:00,096.096 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:25:00,175.175 INFO    ] No existing commands found in stream
[2026-06-27 11:25:05,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:25:05,197.197 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-27 11:25:08,041.041 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 11:25:08,043.043 INFO    ] Checking for system updates...
[2026-06-27 11:25:08,064.064 INFO    ] 200
[2026-06-27 11:25:08,065.065 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:25:08,096.096 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:25:08,097.097 INFO    ] No update needed
[2026-06-27 11:25:08,098.098 INFO    ] Checking for camera pi updates...
[2026-06-27 11:25:08,119.119 INFO    ] 200
[2026-06-27 11:25:08,120.120 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:25:08,143.143 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:25:08,180.180 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:25:08,181.181 INFO    ] No camera update needed
[2026-06-27 11:25:08,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:25:08,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:25:08,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:25:08,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:25:10,227.227 INFO    ] ================================================
[2026-06-27 11:25:10,242.242 INFO    ] Launching Daemon at Sat Jun 27 11:25:10 IST 2026
[2026-06-27 11:25:10,253.253 INFO    ] ================================================
[2026-06-27 11:25:10,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:25:10
[2026-06-27 11:25:10,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:25:11,077.077 INFO    ] Initializing speech engine...
[2026-06-27 11:25:11,080.080 INFO    ] 2026-06-27 11:25:11
[2026-06-27 11:25:11,306.306 INFO    ] 2026-06-27 11:25:11
[2026-06-27 11:25:11,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:25:11,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:25:11,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:25:11,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:25:11,747.747 INFO    ] time= 27/06/2026 11:25:11
[2026-06-27 11:25:11,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:25:11,773.773 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:25:11,848.848 INFO    ] No existing commands found in stream
[2026-06-27 11:25:16,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:25:16,860.860 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-27 11:25:19,563.563 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 11:25:19,564.564 INFO    ] Checking for system updates...
[2026-06-27 11:25:19,585.585 INFO    ] 200
[2026-06-27 11:25:19,586.586 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:25:19,619.619 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:25:19,620.620 INFO    ] No update needed
[2026-06-27 11:25:19,622.622 INFO    ] Checking for camera pi updates...
[2026-06-27 11:25:19,641.641 INFO    ] 200
[2026-06-27 11:25:19,642.642 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:25:19,667.667 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:25:19,704.704 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:25:19,705.705 INFO    ] No camera update needed
[2026-06-27 11:25:19,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:25:19,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:25:19,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:25:19,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:25:21,752.752 INFO    ] ================================================
[2026-06-27 11:25:21,769.769 INFO    ] Launching Daemon at Sat Jun 27 11:25:21 IST 2026
[2026-06-27 11:25:21,780.780 INFO    ] ================================================
[2026-06-27 11:25:22,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:25:22
[2026-06-27 11:25:22,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:25:22,592.592 INFO    ] Initializing speech engine...
[2026-06-27 11:25:22,597.597 INFO    ] 2026-06-27 11:25:22
[2026-06-27 11:25:22,802.802 INFO    ] 2026-06-27 11:25:22
[2026-06-27 11:25:22,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:25:23,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:25:23,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:25:23,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:25:23,246.246 INFO    ] time= 27/06/2026 11:25:23
[2026-06-27 11:25:23,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:25:23,257.257 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:25:23,326.326 INFO    ] No existing commands found in stream
[2026-06-27 11:25:28,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:25:28,338.338 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-27 11:25:32,485.485 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 11:25:32,487.487 INFO    ] Checking for system updates...
[2026-06-27 11:25:32,508.508 INFO    ] 200
[2026-06-27 11:25:32,509.509 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:25:32,540.540 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:25:32,542.542 INFO    ] No update needed
[2026-06-27 11:25:32,543.543 INFO    ] Checking for camera pi updates...
[2026-06-27 11:25:32,564.564 INFO    ] 200
[2026-06-27 11:25:32,566.566 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:25:32,593.593 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:25:32,615.615 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:25:32,616.616 INFO    ] No camera update needed
[2026-06-27 11:25:32,618.618 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:25:32,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:25:32,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:25:32,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:25:34,667.667 INFO    ] ================================================
[2026-06-27 11:25:34,682.682 INFO    ] Launching Daemon at Sat Jun 27 11:25:34 IST 2026
[2026-06-27 11:25:34,693.693 INFO    ] ================================================
[2026-06-27 11:25:35,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:25:35
[2026-06-27 11:25:35,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:25:35,529.529 INFO    ] Initializing speech engine...
[2026-06-27 11:25:35,535.535 INFO    ] 2026-06-27 11:25:35
[2026-06-27 11:25:35,745.745 INFO    ] 2026-06-27 11:25:35
[2026-06-27 11:25:35,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:25:35,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:25:35,974.974 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:25:36,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:25:36,174.174 INFO    ] time= 27/06/2026 11:25:36
[2026-06-27 11:25:36,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:25:36,204.204 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:25:36,272.272 INFO    ] No existing commands found in stream
[2026-06-27 11:25:41,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:25:41,285.285 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-27 11:25:43,254.254 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:25:43,256.256 INFO    ] Checking for system updates...
[2026-06-27 11:25:43,277.277 INFO    ] 200
[2026-06-27 11:25:43,278.278 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:25:43,311.311 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:25:43,312.312 INFO    ] No update needed
[2026-06-27 11:25:43,314.314 INFO    ] Checking for camera pi updates...
[2026-06-27 11:25:43,334.334 INFO    ] 200
[2026-06-27 11:25:43,336.336 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:25:43,359.359 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:25:43,397.397 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:25:43,398.398 INFO    ] No camera update needed
[2026-06-27 11:25:43,399.399 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:25:43,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:25:43,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:25:43,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:25:45,449.449 INFO    ] ================================================
[2026-06-27 11:25:45,465.465 INFO    ] Launching Daemon at Sat Jun 27 11:25:45 IST 2026
[2026-06-27 11:25:45,478.478 INFO    ] ================================================
[2026-06-27 11:25:45,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:25:45
[2026-06-27 11:25:46,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:25:46,303.303 INFO    ] Initializing speech engine...
[2026-06-27 11:25:46,308.308 INFO    ] 2026-06-27 11:25:46
[2026-06-27 11:25:46,512.512 INFO    ] 2026-06-27 11:25:46
[2026-06-27 11:25:46,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:25:46,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:25:46,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:25:46,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:25:46,951.951 INFO    ] time= 27/06/2026 11:25:46
[2026-06-27 11:25:46,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:25:46,959.959 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:25:47,026.026 INFO    ] No existing commands found in stream
[2026-06-27 11:25:52,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:25:52,038.038 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-27 11:25:56,042.042 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 11:25:56,043.043 INFO    ] Checking for system updates...
[2026-06-27 11:25:56,065.065 INFO    ] 200
[2026-06-27 11:25:56,067.067 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:25:56,098.098 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:25:56,099.099 INFO    ] No update needed
[2026-06-27 11:25:56,100.100 INFO    ] Checking for camera pi updates...
[2026-06-27 11:25:56,120.120 INFO    ] 200
[2026-06-27 11:25:56,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:25:56,145.145 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:25:56,186.186 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:25:56,187.187 INFO    ] No camera update needed
[2026-06-27 11:25:56,188.188 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:25:56,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:25:56,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:25:56,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:25:58,235.235 INFO    ] ================================================
[2026-06-27 11:25:58,258.258 INFO    ] Launching Daemon at Sat Jun 27 11:25:58 IST 2026
[2026-06-27 11:25:58,270.270 INFO    ] ================================================
[2026-06-27 11:25:58,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:25:58
[2026-06-27 11:25:58,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:25:59,094.094 INFO    ] Initializing speech engine...
[2026-06-27 11:25:59,104.104 INFO    ] 2026-06-27 11:25:59
[2026-06-27 11:25:59,308.308 INFO    ] 2026-06-27 11:25:59
[2026-06-27 11:25:59,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:25:59,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:25:59,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:25:59,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:25:59,723.723 INFO    ] time= 27/06/2026 11:25:59
[2026-06-27 11:25:59,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:25:59,756.756 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:25:59,823.823 INFO    ] No existing commands found in stream
[2026-06-27 11:26:04,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:26:04,835.835 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-27 11:26:07,166.166 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 11:26:07,168.168 INFO    ] Checking for system updates...
[2026-06-27 11:26:07,188.188 INFO    ] 200
[2026-06-27 11:26:07,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:26:07,220.220 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:26:07,221.221 INFO    ] No update needed
[2026-06-27 11:26:07,223.223 INFO    ] Checking for camera pi updates...
[2026-06-27 11:26:07,245.245 INFO    ] 200
[2026-06-27 11:26:07,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:26:07,272.272 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:26:07,307.307 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:26:07,309.309 INFO    ] No camera update needed
[2026-06-27 11:26:07,310.310 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:26:07,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:26:07,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:26:07,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:26:09,356.356 INFO    ] ================================================
[2026-06-27 11:26:09,372.372 INFO    ] Launching Daemon at Sat Jun 27 11:26:09 IST 2026
[2026-06-27 11:26:09,383.383 INFO    ] ================================================
[2026-06-27 11:26:09,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:26:09
[2026-06-27 11:26:10,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:26:10,187.187 INFO    ] Initializing speech engine...
[2026-06-27 11:26:10,192.192 INFO    ] 2026-06-27 11:26:10
[2026-06-27 11:26:10,413.413 INFO    ] 2026-06-27 11:26:10
[2026-06-27 11:26:10,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:26:10,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:26:10,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:26:10,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:26:10,811.811 INFO    ] time= 27/06/2026 11:26:10
[2026-06-27 11:26:10,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:26:10,855.855 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:26:10,925.925 INFO    ] No existing commands found in stream
[2026-06-27 11:26:15,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:26:15,938.938 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-27 11:26:17,838.838 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 11:26:17,840.840 INFO    ] Checking for system updates...
[2026-06-27 11:26:17,861.861 INFO    ] 200
[2026-06-27 11:26:17,862.862 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:26:17,893.893 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:26:17,895.895 INFO    ] No update needed
[2026-06-27 11:26:17,896.896 INFO    ] Checking for camera pi updates...
[2026-06-27 11:26:17,916.916 INFO    ] 200
[2026-06-27 11:26:17,918.918 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:26:17,941.941 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:26:17,986.986 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:26:17,988.988 INFO    ] No camera update needed
[2026-06-27 11:26:17,989.989 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:26:17,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:26:17,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:26:17,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:26:20,038.038 INFO    ] ================================================
[2026-06-27 11:26:20,054.054 INFO    ] Launching Daemon at Sat Jun 27 11:26:20 IST 2026
[2026-06-27 11:26:20,066.066 INFO    ] ================================================
[2026-06-27 11:26:20,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:26:20
[2026-06-27 11:26:20,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:26:20,861.861 INFO    ] Initializing speech engine...
[2026-06-27 11:26:20,872.872 INFO    ] 2026-06-27 11:26:20
[2026-06-27 11:26:21,077.077 INFO    ] 2026-06-27 11:26:21
[2026-06-27 11:26:21,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:26:21,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:26:21,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:26:21,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:26:21,517.517 INFO    ] time= 27/06/2026 11:26:21
[2026-06-27 11:26:21,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:26:21,524.524 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:26:21,592.592 INFO    ] No existing commands found in stream
[2026-06-27 11:26:26,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:26:26,604.604 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-27 11:26:28,381.381 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 11:26:28,383.383 INFO    ] Checking for system updates...
[2026-06-27 11:26:28,404.404 INFO    ] 200
[2026-06-27 11:26:28,405.405 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:26:28,435.435 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:26:28,437.437 INFO    ] No update needed
[2026-06-27 11:26:28,438.438 INFO    ] Checking for camera pi updates...
[2026-06-27 11:26:28,458.458 INFO    ] 200
[2026-06-27 11:26:28,459.459 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:26:28,483.483 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:26:28,520.520 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:26:28,521.521 INFO    ] No camera update needed
[2026-06-27 11:26:28,523.523 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:26:28,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:26:28,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:26:28,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:26:30,569.569 INFO    ] ================================================
[2026-06-27 11:26:30,586.586 INFO    ] Launching Daemon at Sat Jun 27 11:26:30 IST 2026
[2026-06-27 11:26:30,597.597 INFO    ] ================================================
[2026-06-27 11:26:30,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:26:30
[2026-06-27 11:26:31,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:26:31,400.400 INFO    ] Initializing speech engine...
[2026-06-27 11:26:31,411.411 INFO    ] 2026-06-27 11:26:31
[2026-06-27 11:26:31,629.629 INFO    ] 2026-06-27 11:26:31
[2026-06-27 11:26:31,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:26:31,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:26:31,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:26:32,003.003 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:26:32,075.075 INFO    ] time= 27/06/2026 11:26:32
[2026-06-27 11:26:32,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:26:32,112.112 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:26:32,182.182 INFO    ] No existing commands found in stream
[2026-06-27 11:26:37,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:26:37,196.196 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-27 11:26:40,812.812 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 11:26:40,813.813 INFO    ] Checking for system updates...
[2026-06-27 11:26:40,834.834 INFO    ] 200
[2026-06-27 11:26:40,835.835 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:26:40,866.866 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:26:40,867.867 INFO    ] No update needed
[2026-06-27 11:26:40,868.868 INFO    ] Checking for camera pi updates...
[2026-06-27 11:26:40,888.888 INFO    ] 200
[2026-06-27 11:26:40,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:26:40,915.915 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:26:40,952.952 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:26:40,953.953 INFO    ] No camera update needed
[2026-06-27 11:26:40,955.955 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:26:40,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:26:40,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:26:40,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:26:43,002.002 INFO    ] ================================================
[2026-06-27 11:26:43,018.018 INFO    ] Launching Daemon at Sat Jun 27 11:26:43 IST 2026
[2026-06-27 11:26:43,029.029 INFO    ] ================================================
[2026-06-27 11:26:43,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:26:43
[2026-06-27 11:26:43,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:26:43,827.827 INFO    ] Initializing speech engine...
[2026-06-27 11:26:43,832.832 INFO    ] 2026-06-27 11:26:43
[2026-06-27 11:26:44,049.049 INFO    ] 2026-06-27 11:26:44
[2026-06-27 11:26:44,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:26:44,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:26:44,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:26:44,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:26:44,459.459 INFO    ] time= 27/06/2026 11:26:44
[2026-06-27 11:26:44,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:26:44,497.497 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:26:44,563.563 INFO    ] No existing commands found in stream
[2026-06-27 11:26:49,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:26:49,575.575 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-27 11:26:50,532.532 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 11:26:50,533.533 INFO    ] Checking for system updates...
[2026-06-27 11:26:50,555.555 INFO    ] 200
[2026-06-27 11:26:50,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:26:50,587.587 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:26:50,589.589 INFO    ] No update needed
[2026-06-27 11:26:50,590.590 INFO    ] Checking for camera pi updates...
[2026-06-27 11:26:50,610.610 INFO    ] 200
[2026-06-27 11:26:50,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:26:50,636.636 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:26:50,674.674 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:26:50,676.676 INFO    ] No camera update needed
[2026-06-27 11:26:50,677.677 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:26:50,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:26:50,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:26:50,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:26:52,724.724 INFO    ] ================================================
[2026-06-27 11:26:52,740.740 INFO    ] Launching Daemon at Sat Jun 27 11:26:52 IST 2026
[2026-06-27 11:26:52,752.752 INFO    ] ================================================
[2026-06-27 11:26:53,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:26:53
[2026-06-27 11:26:53,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:26:53,628.628 INFO    ] Initializing speech engine...
[2026-06-27 11:26:53,633.633 INFO    ] 2026-06-27 11:26:53
[2026-06-27 11:26:53,836.836 INFO    ] 2026-06-27 11:26:53
[2026-06-27 11:26:53,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:26:54,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:26:54,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:26:54,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:26:54,234.234 INFO    ] time= 27/06/2026 11:26:54
[2026-06-27 11:26:54,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:26:54,278.278 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:26:54,373.373 INFO    ] No existing commands found in stream
[2026-06-27 11:26:59,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:26:59,390.390 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-27 11:27:01,887.887 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 11:27:01,889.889 INFO    ] Checking for system updates...
[2026-06-27 11:27:01,923.923 INFO    ] 200
[2026-06-27 11:27:01,926.926 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:27:01,977.977 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:27:01,979.979 INFO    ] No update needed
[2026-06-27 11:27:01,981.981 INFO    ] Checking for camera pi updates...
[2026-06-27 11:27:02,047.047 INFO    ] 200
[2026-06-27 11:27:02,049.049 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:27:02,089.089 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:27:02,186.186 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:27:02,188.188 INFO    ] No camera update needed
[2026-06-27 11:27:02,190.190 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:27:02,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:27:02,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:27:02,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:27:04,241.241 INFO    ] ================================================
[2026-06-27 11:27:04,257.257 INFO    ] Launching Daemon at Sat Jun 27 11:27:04 IST 2026
[2026-06-27 11:27:04,268.268 INFO    ] ================================================
[2026-06-27 11:27:04,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:27:04
[2026-06-27 11:27:04,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:27:05,038.038 INFO    ] Initializing speech engine...
[2026-06-27 11:27:05,042.042 INFO    ] 2026-06-27 11:27:05
[2026-06-27 11:27:05,263.263 INFO    ] 2026-06-27 11:27:05
[2026-06-27 11:27:05,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:27:05,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:27:05,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:27:05,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:27:05,704.704 INFO    ] time= 27/06/2026 11:27:05
[2026-06-27 11:27:05,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:27:05,747.747 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:27:05,814.814 INFO    ] No existing commands found in stream
[2026-06-27 11:27:10,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:27:10,826.826 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-27 11:27:13,501.501 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 11:27:13,502.502 INFO    ] Checking for system updates...
[2026-06-27 11:27:13,524.524 INFO    ] 200
[2026-06-27 11:27:13,525.525 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:27:13,556.556 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:27:13,558.558 INFO    ] No update needed
[2026-06-27 11:27:13,559.559 INFO    ] Checking for camera pi updates...
[2026-06-27 11:27:13,578.578 INFO    ] 200
[2026-06-27 11:27:13,580.580 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:27:13,603.603 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:27:13,646.646 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:27:13,647.647 INFO    ] No camera update needed
[2026-06-27 11:27:13,648.648 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:27:13,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:27:13,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:27:13,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:27:15,695.695 INFO    ] ================================================
[2026-06-27 11:27:15,711.711 INFO    ] Launching Daemon at Sat Jun 27 11:27:15 IST 2026
[2026-06-27 11:27:15,722.722 INFO    ] ================================================
[2026-06-27 11:27:16,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:27:16
[2026-06-27 11:27:16,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:27:16,543.543 INFO    ] Initializing speech engine...
[2026-06-27 11:27:16,549.549 INFO    ] 2026-06-27 11:27:16
[2026-06-27 11:27:16,754.754 INFO    ] 2026-06-27 11:27:16
[2026-06-27 11:27:16,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:27:16,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:27:16,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:27:17,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:27:17,176.176 INFO    ] time= 27/06/2026 11:27:17
[2026-06-27 11:27:17,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:27:17,203.203 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:27:17,270.270 INFO    ] No existing commands found in stream
[2026-06-27 11:27:22,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:27:22,288.288 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-27 11:27:23,383.383 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 11:27:23,384.384 INFO    ] Checking for system updates...
[2026-06-27 11:27:23,405.405 INFO    ] 200
[2026-06-27 11:27:23,406.406 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:27:23,436.436 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:27:23,438.438 INFO    ] No update needed
[2026-06-27 11:27:23,439.439 INFO    ] Checking for camera pi updates...
[2026-06-27 11:27:23,458.458 INFO    ] 200
[2026-06-27 11:27:23,460.460 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:27:23,485.485 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:27:23,530.530 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:27:23,531.531 INFO    ] No camera update needed
[2026-06-27 11:27:23,533.533 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:27:23,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:27:23,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:27:23,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:27:25,579.579 INFO    ] ================================================
[2026-06-27 11:27:25,595.595 INFO    ] Launching Daemon at Sat Jun 27 11:27:25 IST 2026
[2026-06-27 11:27:25,605.605 INFO    ] ================================================
[2026-06-27 11:27:25,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:27:25
[2026-06-27 11:27:26,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:27:26,414.414 INFO    ] Initializing speech engine...
[2026-06-27 11:27:26,422.422 INFO    ] 2026-06-27 11:27:26
[2026-06-27 11:27:26,635.635 INFO    ] 2026-06-27 11:27:26
[2026-06-27 11:27:26,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:27:26,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:27:26,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:27:27,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:27:27,092.092 INFO    ] time= 27/06/2026 11:27:27
[2026-06-27 11:27:27,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:27:27,099.099 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:27:27,169.169 INFO    ] No existing commands found in stream
[2026-06-27 11:27:32,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:27:32,176.176 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-27 11:27:34,444.444 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 11:27:34,445.445 INFO    ] Checking for system updates...
[2026-06-27 11:27:34,466.466 INFO    ] 200
[2026-06-27 11:27:34,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:27:34,501.501 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:27:34,502.502 INFO    ] No update needed
[2026-06-27 11:27:34,503.503 INFO    ] Checking for camera pi updates...
[2026-06-27 11:27:34,524.524 INFO    ] 200
[2026-06-27 11:27:34,525.525 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:27:34,549.549 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:27:34,585.585 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:27:34,586.586 INFO    ] No camera update needed
[2026-06-27 11:27:34,587.587 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:27:34,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:27:34,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:27:34,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:27:36,634.634 INFO    ] ================================================
[2026-06-27 11:27:36,649.649 INFO    ] Launching Daemon at Sat Jun 27 11:27:36 IST 2026
[2026-06-27 11:27:36,660.660 INFO    ] ================================================
[2026-06-27 11:27:37,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:27:37
[2026-06-27 11:27:37,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:27:37,508.508 INFO    ] Initializing speech engine...
[2026-06-27 11:27:37,514.514 INFO    ] 2026-06-27 11:27:37
[2026-06-27 11:27:37,776.776 INFO    ] 2026-06-27 11:27:37
[2026-06-27 11:27:37,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:27:38,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:27:38,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:27:38,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:27:38,213.213 INFO    ] time= 27/06/2026 11:27:38
[2026-06-27 11:27:38,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:27:38,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:27:38,334.334 INFO    ] No existing commands found in stream
[2026-06-27 11:27:43,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:27:43,348.348 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-27 11:27:47,487.487 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:27:47,488.488 INFO    ] Checking for system updates...
[2026-06-27 11:27:47,510.510 INFO    ] 200
[2026-06-27 11:27:47,511.511 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:27:47,542.542 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:27:47,544.544 INFO    ] No update needed
[2026-06-27 11:27:47,545.545 INFO    ] Checking for camera pi updates...
[2026-06-27 11:27:47,565.565 INFO    ] 200
[2026-06-27 11:27:47,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:27:47,590.590 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:27:47,632.632 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:27:47,633.633 INFO    ] No camera update needed
[2026-06-27 11:27:47,635.635 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:27:47,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:27:47,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:27:47,641.641 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:27:49,680.680 INFO    ] ================================================
[2026-06-27 11:27:49,696.696 INFO    ] Launching Daemon at Sat Jun 27 11:27:49 IST 2026
[2026-06-27 11:27:49,707.707 INFO    ] ================================================
[2026-06-27 11:27:50,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:27:50
[2026-06-27 11:27:50,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:27:50,519.519 INFO    ] Initializing speech engine...
[2026-06-27 11:27:50,532.532 INFO    ] 2026-06-27 11:27:50
[2026-06-27 11:27:50,740.740 INFO    ] 2026-06-27 11:27:50
[2026-06-27 11:27:50,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:27:50,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:27:50,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:27:51,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:27:51,180.180 INFO    ] time= 27/06/2026 11:27:51
[2026-06-27 11:27:51,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:27:51,187.187 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:27:51,254.254 INFO    ] No existing commands found in stream
[2026-06-27 11:27:56,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:27:56,266.266 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-27 11:27:56,657.657 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 11:27:56,658.658 INFO    ] Checking for system updates...
[2026-06-27 11:27:56,679.679 INFO    ] 200
[2026-06-27 11:27:56,680.680 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:27:56,711.711 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:27:56,712.712 INFO    ] No update needed
[2026-06-27 11:27:56,714.714 INFO    ] Checking for camera pi updates...
[2026-06-27 11:27:56,733.733 INFO    ] 200
[2026-06-27 11:27:56,735.735 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:27:56,761.761 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:27:56,799.799 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:27:56,801.801 INFO    ] No camera update needed
[2026-06-27 11:27:56,802.802 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:27:56,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:27:56,807.807 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:27:56,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:27:58,850.850 INFO    ] ================================================
[2026-06-27 11:27:58,865.865 INFO    ] Launching Daemon at Sat Jun 27 11:27:58 IST 2026
[2026-06-27 11:27:58,877.877 INFO    ] ================================================
[2026-06-27 11:27:59,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:27:59
[2026-06-27 11:27:59,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:27:59,705.705 INFO    ] Initializing speech engine...
[2026-06-27 11:27:59,714.714 INFO    ] 2026-06-27 11:27:59
[2026-06-27 11:27:59,927.927 INFO    ] 2026-06-27 11:27:59
[2026-06-27 11:27:59,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:28:00,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:28:00,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:28:00,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:28:00,350.350 INFO    ] time= 27/06/2026 11:28:00
[2026-06-27 11:28:00,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:28:00,380.380 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:28:00,448.448 INFO    ] No existing commands found in stream
[2026-06-27 11:28:05,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:28:05,484.484 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-27 11:28:06,181.181 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 11:28:06,183.183 INFO    ] Checking for system updates...
[2026-06-27 11:28:06,204.204 INFO    ] 200
[2026-06-27 11:28:06,206.206 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:28:06,236.236 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:28:06,238.238 INFO    ] No update needed
[2026-06-27 11:28:06,239.239 INFO    ] Checking for camera pi updates...
[2026-06-27 11:28:06,260.260 INFO    ] 200
[2026-06-27 11:28:06,261.261 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:28:06,288.288 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:28:06,335.335 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:28:06,336.336 INFO    ] No camera update needed
[2026-06-27 11:28:06,337.337 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:28:06,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:28:06,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:28:06,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:28:08,385.385 INFO    ] ================================================
[2026-06-27 11:28:08,400.400 INFO    ] Launching Daemon at Sat Jun 27 11:28:08 IST 2026
[2026-06-27 11:28:08,411.411 INFO    ] ================================================
[2026-06-27 11:28:08,754.754 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:28:08
[2026-06-27 11:28:09,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:28:09,213.213 INFO    ] Initializing speech engine...
[2026-06-27 11:28:09,217.217 INFO    ] 2026-06-27 11:28:09
[2026-06-27 11:28:09,424.424 INFO    ] 2026-06-27 11:28:09
[2026-06-27 11:28:09,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:28:09,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:28:09,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:28:09,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:28:09,870.870 INFO    ] time= 27/06/2026 11:28:09
[2026-06-27 11:28:09,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:28:09,877.877 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:28:09,945.945 INFO    ] No existing commands found in stream
[2026-06-27 11:28:14,954.954 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:28:14,957.957 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-27 11:28:18,802.802 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 11:28:18,803.803 INFO    ] Checking for system updates...
[2026-06-27 11:28:18,825.825 INFO    ] 200
[2026-06-27 11:28:18,826.826 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:28:18,856.856 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:28:18,858.858 INFO    ] No update needed
[2026-06-27 11:28:18,859.859 INFO    ] Checking for camera pi updates...
[2026-06-27 11:28:18,879.879 INFO    ] 200
[2026-06-27 11:28:18,880.880 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:28:18,903.903 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:28:18,945.945 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:28:18,947.947 INFO    ] No camera update needed
[2026-06-27 11:28:18,948.948 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:28:18,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:28:18,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:28:18,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:28:21,995.995 INFO    ] ================================================
[2026-06-27 11:28:21,017.017 INFO    ] Launching Daemon at Sat Jun 27 11:28:21 IST 2026
[2026-06-27 11:28:21,029.029 INFO    ] ================================================
[2026-06-27 11:28:21,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:28:21
[2026-06-27 11:28:21,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:28:21,879.879 INFO    ] Initializing speech engine...
[2026-06-27 11:28:21,884.884 INFO    ] 2026-06-27 11:28:21
[2026-06-27 11:28:22,093.093 INFO    ] 2026-06-27 11:28:22
[2026-06-27 11:28:22,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:28:22,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:28:22,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:28:22,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:28:22,537.537 INFO    ] time= 27/06/2026 11:28:22
[2026-06-27 11:28:22,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:28:22,549.549 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:28:22,617.617 INFO    ] No existing commands found in stream
[2026-06-27 11:28:27,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:28:27,635.635 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-27 11:28:29,806.806 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:28:29,808.808 INFO    ] Checking for system updates...
[2026-06-27 11:28:29,832.832 INFO    ] 200
[2026-06-27 11:28:29,834.834 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:28:29,866.866 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:28:29,868.868 INFO    ] No update needed
[2026-06-27 11:28:29,869.869 INFO    ] Checking for camera pi updates...
[2026-06-27 11:28:29,889.889 INFO    ] 200
[2026-06-27 11:28:29,890.890 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:28:29,914.914 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:28:29,951.951 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:28:29,953.953 INFO    ] No camera update needed
[2026-06-27 11:28:29,954.954 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:28:29,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:28:29,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:28:29,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:28:31,993.993 INFO    ] ================================================
[2026-06-27 11:28:32,002.002 INFO    ] Launching Daemon at Sat Jun 27 11:28:31 IST 2026
[2026-06-27 11:28:32,008.008 INFO    ] ================================================
[2026-06-27 11:28:32,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:28:32
[2026-06-27 11:28:32,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:28:32,827.827 INFO    ] Initializing speech engine...
[2026-06-27 11:28:32,832.832 INFO    ] 2026-06-27 11:28:32
[2026-06-27 11:28:33,025.025 INFO    ] 2026-06-27 11:28:33
[2026-06-27 11:28:33,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:28:33,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:28:33,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:28:33,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:28:33,461.461 INFO    ] time= 27/06/2026 11:28:33
[2026-06-27 11:28:33,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:28:33,490.490 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:28:33,557.557 INFO    ] No existing commands found in stream
[2026-06-27 11:28:38,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:28:38,569.569 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-27 11:28:40,464.464 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 11:28:40,465.465 INFO    ] Checking for system updates...
[2026-06-27 11:28:40,486.486 INFO    ] 200
[2026-06-27 11:28:40,487.487 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:28:40,520.520 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:28:40,521.521 INFO    ] No update needed
[2026-06-27 11:28:40,522.522 INFO    ] Checking for camera pi updates...
[2026-06-27 11:28:40,542.542 INFO    ] 200
[2026-06-27 11:28:40,543.543 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:28:40,566.566 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:28:40,612.612 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:28:40,614.614 INFO    ] No camera update needed
[2026-06-27 11:28:40,615.615 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:28:40,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:28:40,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:28:40,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:28:42,664.664 INFO    ] ================================================
[2026-06-27 11:28:42,680.680 INFO    ] Launching Daemon at Sat Jun 27 11:28:42 IST 2026
[2026-06-27 11:28:42,691.691 INFO    ] ================================================
[2026-06-27 11:28:43,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:28:43
[2026-06-27 11:28:43,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:28:43,491.491 INFO    ] Initializing speech engine...
[2026-06-27 11:28:43,504.504 INFO    ] 2026-06-27 11:28:43
[2026-06-27 11:28:43,709.709 INFO    ] 2026-06-27 11:28:43
[2026-06-27 11:28:43,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:28:43,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:28:43,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:28:44,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:28:44,128.128 INFO    ] time= 27/06/2026 11:28:44
[2026-06-27 11:28:44,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:28:44,156.156 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:28:44,223.223 INFO    ] No existing commands found in stream
[2026-06-27 11:28:49,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:28:49,235.235 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-27 11:28:51,227.227 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 11:28:51,228.228 INFO    ] Checking for system updates...
[2026-06-27 11:28:51,249.249 INFO    ] 200
[2026-06-27 11:28:51,251.251 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:28:51,282.282 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:28:51,283.283 INFO    ] No update needed
[2026-06-27 11:28:51,285.285 INFO    ] Checking for camera pi updates...
[2026-06-27 11:28:51,304.304 INFO    ] 200
[2026-06-27 11:28:51,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:28:51,329.329 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:28:51,369.369 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:28:51,370.370 INFO    ] No camera update needed
[2026-06-27 11:28:51,371.371 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:28:51,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:28:51,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:28:51,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:28:53,418.418 INFO    ] ================================================
[2026-06-27 11:28:53,434.434 INFO    ] Launching Daemon at Sat Jun 27 11:28:53 IST 2026
[2026-06-27 11:28:53,445.445 INFO    ] ================================================
[2026-06-27 11:28:53,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:28:53
[2026-06-27 11:28:54,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:28:54,231.231 INFO    ] Initializing speech engine...
[2026-06-27 11:28:54,237.237 INFO    ] 2026-06-27 11:28:54
[2026-06-27 11:28:54,440.440 INFO    ] 2026-06-27 11:28:54
[2026-06-27 11:28:54,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:28:54,651.651 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:28:54,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:28:54,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:28:54,877.877 INFO    ] time= 27/06/2026 11:28:54
[2026-06-27 11:28:54,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:28:54,884.884 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:28:54,951.951 INFO    ] No existing commands found in stream
[2026-06-27 11:28:59,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:28:59,968.968 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-27 11:29:01,836.836 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 11:29:01,838.838 INFO    ] Checking for system updates...
[2026-06-27 11:29:01,870.870 INFO    ] 200
[2026-06-27 11:29:01,872.872 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:29:01,924.924 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:29:01,926.926 INFO    ] No update needed
[2026-06-27 11:29:01,929.929 INFO    ] Checking for camera pi updates...
[2026-06-27 11:29:01,957.957 INFO    ] 200
[2026-06-27 11:29:01,959.959 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:29:01,991.991 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:29:02,018.018 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:29:02,020.020 INFO    ] No camera update needed
[2026-06-27 11:29:02,022.022 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:29:02,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:29:02,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:29:02,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:29:04,075.075 INFO    ] ================================================
[2026-06-27 11:29:04,091.091 INFO    ] Launching Daemon at Sat Jun 27 11:29:04 IST 2026
[2026-06-27 11:29:04,102.102 INFO    ] ================================================
[2026-06-27 11:29:04,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:29:04
[2026-06-27 11:29:04,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:29:04,915.915 INFO    ] Initializing speech engine...
[2026-06-27 11:29:04,920.920 INFO    ] 2026-06-27 11:29:04
[2026-06-27 11:29:05,123.123 INFO    ] 2026-06-27 11:29:05
[2026-06-27 11:29:05,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:29:05,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:29:05,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:29:05,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:29:05,543.543 INFO    ] time= 27/06/2026 11:29:05
[2026-06-27 11:29:05,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:29:05,571.571 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:29:05,638.638 INFO    ] No existing commands found in stream
[2026-06-27 11:29:10,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:29:10,650.650 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-27 11:29:12,881.881 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 11:29:12,883.883 INFO    ] Checking for system updates...
[2026-06-27 11:29:12,903.903 INFO    ] 200
[2026-06-27 11:29:12,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:29:12,935.935 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:29:12,937.937 INFO    ] No update needed
[2026-06-27 11:29:12,938.938 INFO    ] Checking for camera pi updates...
[2026-06-27 11:29:12,959.959 INFO    ] 200
[2026-06-27 11:29:12,960.960 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:29:12,984.984 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:29:13,123.123 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:29:13,124.124 INFO    ] No camera update needed
[2026-06-27 11:29:13,126.126 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:29:13,127.127 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:29:13,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:29:13,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:29:15,174.174 INFO    ] ================================================
[2026-06-27 11:29:15,190.190 INFO    ] Launching Daemon at Sat Jun 27 11:29:15 IST 2026
[2026-06-27 11:29:15,201.201 INFO    ] ================================================
[2026-06-27 11:29:15,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:29:15
[2026-06-27 11:29:15,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:29:16,004.004 INFO    ] Initializing speech engine...
[2026-06-27 11:29:16,007.007 INFO    ] 2026-06-27 11:29:16
[2026-06-27 11:29:16,238.238 INFO    ] 2026-06-27 11:29:16
[2026-06-27 11:29:16,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:29:16,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:29:16,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:29:16,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:29:16,677.677 INFO    ] time= 27/06/2026 11:29:16
[2026-06-27 11:29:16,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:29:16,718.718 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:29:16,794.794 INFO    ] No existing commands found in stream
[2026-06-27 11:29:21,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:29:21,807.807 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-27 11:29:23,048.048 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:29:23,049.049 INFO    ] Checking for system updates...
[2026-06-27 11:29:23,070.070 INFO    ] 200
[2026-06-27 11:29:23,071.071 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:29:23,102.102 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:29:23,103.103 INFO    ] No update needed
[2026-06-27 11:29:23,104.104 INFO    ] Checking for camera pi updates...
[2026-06-27 11:29:23,126.126 INFO    ] 200
[2026-06-27 11:29:23,129.129 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:29:23,156.156 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:29:23,205.205 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:29:23,206.206 INFO    ] No camera update needed
[2026-06-27 11:29:23,208.208 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:29:23,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:29:23,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:29:23,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:29:25,254.254 INFO    ] ================================================
[2026-06-27 11:29:25,270.270 INFO    ] Launching Daemon at Sat Jun 27 11:29:25 IST 2026
[2026-06-27 11:29:25,282.282 INFO    ] ================================================
[2026-06-27 11:29:25,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:29:25
[2026-06-27 11:29:25,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:29:26,112.112 INFO    ] Initializing speech engine...
[2026-06-27 11:29:26,122.122 INFO    ] 2026-06-27 11:29:26
[2026-06-27 11:29:26,326.326 INFO    ] 2026-06-27 11:29:26
[2026-06-27 11:29:26,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:29:26,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:29:26,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:29:26,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:29:26,766.766 INFO    ] time= 27/06/2026 11:29:26
[2026-06-27 11:29:26,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:29:26,773.773 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:29:26,840.840 INFO    ] No existing commands found in stream
[2026-06-27 11:29:31,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:29:31,847.847 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-27 11:29:34,280.280 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 11:29:34,282.282 INFO    ] Checking for system updates...
[2026-06-27 11:29:34,303.303 INFO    ] 200
[2026-06-27 11:29:34,304.304 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:29:34,335.335 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:29:34,336.336 INFO    ] No update needed
[2026-06-27 11:29:34,338.338 INFO    ] Checking for camera pi updates...
[2026-06-27 11:29:34,358.358 INFO    ] 200
[2026-06-27 11:29:34,360.360 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:29:34,384.384 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:29:34,425.425 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:29:34,427.427 INFO    ] No camera update needed
[2026-06-27 11:29:34,428.428 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:29:34,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:29:34,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:29:34,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:29:36,475.475 INFO    ] ================================================
[2026-06-27 11:29:36,490.490 INFO    ] Launching Daemon at Sat Jun 27 11:29:36 IST 2026
[2026-06-27 11:29:36,501.501 INFO    ] ================================================
[2026-06-27 11:29:36,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:29:36
[2026-06-27 11:29:37,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:29:37,326.326 INFO    ] Initializing speech engine...
[2026-06-27 11:29:37,335.335 INFO    ] 2026-06-27 11:29:37
[2026-06-27 11:29:37,556.556 INFO    ] 2026-06-27 11:29:37
[2026-06-27 11:29:37,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:29:37,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:29:37,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:29:37,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:29:37,986.986 INFO    ] time= 27/06/2026 11:29:37
[2026-06-27 11:29:38,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:29:38,014.014 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:29:38,081.081 INFO    ] No existing commands found in stream
[2026-06-27 11:29:43,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:29:43,094.094 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-27 11:29:47,091.091 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 11:29:47,092.092 INFO    ] Checking for system updates...
[2026-06-27 11:29:47,113.113 INFO    ] 200
[2026-06-27 11:29:47,115.115 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:29:47,148.148 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:29:47,150.150 INFO    ] No update needed
[2026-06-27 11:29:47,151.151 INFO    ] Checking for camera pi updates...
[2026-06-27 11:29:47,170.170 INFO    ] 200
[2026-06-27 11:29:47,172.172 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:29:47,195.195 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:29:47,233.233 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:29:47,234.234 INFO    ] No camera update needed
[2026-06-27 11:29:47,236.236 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:29:47,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:29:47,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:29:47,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:29:49,281.281 INFO    ] ================================================
[2026-06-27 11:29:49,297.297 INFO    ] Launching Daemon at Sat Jun 27 11:29:49 IST 2026
[2026-06-27 11:29:49,309.309 INFO    ] ================================================
[2026-06-27 11:29:49,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:29:49
[2026-06-27 11:29:50,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:29:50,172.172 INFO    ] Initializing speech engine...
[2026-06-27 11:29:50,177.177 INFO    ] 2026-06-27 11:29:50
[2026-06-27 11:29:50,384.384 INFO    ] 2026-06-27 11:29:50
[2026-06-27 11:29:50,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:29:50,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:29:50,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:29:50,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:29:50,827.827 INFO    ] time= 27/06/2026 11:29:50
[2026-06-27 11:29:50,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:29:50,835.835 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:29:50,902.902 INFO    ] No existing commands found in stream
[2026-06-27 11:29:55,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:29:55,919.919 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-27 11:29:59,566.566 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 11:29:59,568.568 INFO    ] Checking for system updates...
[2026-06-27 11:29:59,591.591 INFO    ] 200
[2026-06-27 11:29:59,592.592 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:29:59,625.625 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:29:59,626.626 INFO    ] No update needed
[2026-06-27 11:29:59,628.628 INFO    ] Checking for camera pi updates...
[2026-06-27 11:29:59,647.647 INFO    ] 200
[2026-06-27 11:29:59,649.649 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:29:59,672.672 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:29:59,717.717 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:29:59,718.718 INFO    ] No camera update needed
[2026-06-27 11:29:59,720.720 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:29:59,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:29:59,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:29:59,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:30:01,778.778 INFO    ] ================================================
[2026-06-27 11:30:01,820.820 INFO    ] Launching Daemon at Sat Jun 27 11:30:01 IST 2026
[2026-06-27 11:30:01,850.850 INFO    ] ================================================
[2026-06-27 11:30:02,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:30:02
[2026-06-27 11:30:03,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:30:03,290.290 INFO    ] Initializing speech engine...
[2026-06-27 11:30:03,294.294 INFO    ] 2026-06-27 11:30:03
[2026-06-27 11:30:03,528.528 INFO    ] 2026-06-27 11:30:03
[2026-06-27 11:30:03,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:30:03,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:30:03,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:30:03,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:30:03,967.967 INFO    ] time= 27/06/2026 11:30:03
[2026-06-27 11:30:03,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:30:03,984.984 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:30:04,053.053 INFO    ] No existing commands found in stream
[2026-06-27 11:30:09,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:30:09,065.065 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-27 11:30:11,340.340 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 11:30:11,342.342 INFO    ] Checking for system updates...
[2026-06-27 11:30:11,364.364 INFO    ] 200
[2026-06-27 11:30:11,365.365 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:30:11,397.397 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:30:11,399.399 INFO    ] No update needed
[2026-06-27 11:30:11,400.400 INFO    ] Checking for camera pi updates...
[2026-06-27 11:30:11,419.419 INFO    ] 200
[2026-06-27 11:30:11,421.421 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:30:11,445.445 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:30:11,486.486 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:30:11,487.487 INFO    ] No camera update needed
[2026-06-27 11:30:11,488.488 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:30:11,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:30:11,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:30:11,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:30:13,535.535 INFO    ] ================================================
[2026-06-27 11:30:13,551.551 INFO    ] Launching Daemon at Sat Jun 27 11:30:13 IST 2026
[2026-06-27 11:30:13,562.562 INFO    ] ================================================
[2026-06-27 11:30:13,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:30:13
[2026-06-27 11:30:14,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:30:14,381.381 INFO    ] Initializing speech engine...
[2026-06-27 11:30:14,387.387 INFO    ] 2026-06-27 11:30:14
[2026-06-27 11:30:14,590.590 INFO    ] 2026-06-27 11:30:14
[2026-06-27 11:30:14,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:30:14,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:30:14,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:30:14,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:30:14,996.996 INFO    ] time= 27/06/2026 11:30:14
[2026-06-27 11:30:15,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:30:15,034.034 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:30:15,104.104 INFO    ] No existing commands found in stream
[2026-06-27 11:30:20,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:30:20,117.117 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-27 11:30:23,158.158 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 11:30:23,159.159 INFO    ] Checking for system updates...
[2026-06-27 11:30:23,180.180 INFO    ] 200
[2026-06-27 11:30:23,182.182 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:30:23,212.212 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:30:23,214.214 INFO    ] No update needed
[2026-06-27 11:30:23,215.215 INFO    ] Checking for camera pi updates...
[2026-06-27 11:30:23,235.235 INFO    ] 200
[2026-06-27 11:30:23,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:30:23,259.259 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:30:23,297.297 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:30:23,298.298 INFO    ] No camera update needed
[2026-06-27 11:30:23,299.299 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:30:23,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:30:23,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:30:23,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:30:25,347.347 INFO    ] ================================================
[2026-06-27 11:30:25,363.363 INFO    ] Launching Daemon at Sat Jun 27 11:30:25 IST 2026
[2026-06-27 11:30:25,374.374 INFO    ] ================================================
[2026-06-27 11:30:25,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:30:25
[2026-06-27 11:30:26,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:30:26,169.169 INFO    ] Initializing speech engine...
[2026-06-27 11:30:26,172.172 INFO    ] 2026-06-27 11:30:26
[2026-06-27 11:30:26,375.375 INFO    ] 2026-06-27 11:30:26
[2026-06-27 11:30:26,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:30:26,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:30:26,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:30:26,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:30:26,792.792 INFO    ] time= 27/06/2026 11:30:26
[2026-06-27 11:30:26,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:30:26,822.822 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:30:26,888.888 INFO    ] No existing commands found in stream
[2026-06-27 11:30:31,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:30:31,900.900 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-27 11:30:35,045.045 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 11:30:35,046.046 INFO    ] Checking for system updates...
[2026-06-27 11:30:35,067.067 INFO    ] 200
[2026-06-27 11:30:35,068.068 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:30:35,099.099 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:30:35,100.100 INFO    ] No update needed
[2026-06-27 11:30:35,101.101 INFO    ] Checking for camera pi updates...
[2026-06-27 11:30:35,122.122 INFO    ] 200
[2026-06-27 11:30:35,124.124 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:30:35,148.148 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:30:35,172.172 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:30:35,173.173 INFO    ] No camera update needed
[2026-06-27 11:30:35,175.175 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:30:35,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:30:35,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:30:35,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:30:37,221.221 INFO    ] ================================================
[2026-06-27 11:30:37,236.236 INFO    ] Launching Daemon at Sat Jun 27 11:30:37 IST 2026
[2026-06-27 11:30:37,248.248 INFO    ] ================================================
[2026-06-27 11:30:37,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:30:37
[2026-06-27 11:30:37,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:30:38,033.033 INFO    ] Initializing speech engine...
[2026-06-27 11:30:38,039.039 INFO    ] 2026-06-27 11:30:38
[2026-06-27 11:30:38,243.243 INFO    ] 2026-06-27 11:30:38
[2026-06-27 11:30:38,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:30:38,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:30:38,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:30:38,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:30:38,691.691 INFO    ] time= 27/06/2026 11:30:38
[2026-06-27 11:30:38,696.696 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:30:38,698.698 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:30:38,764.764 INFO    ] No existing commands found in stream
[2026-06-27 11:30:43,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:30:43,778.778 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-27 11:30:46,625.625 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 11:30:46,627.627 INFO    ] Checking for system updates...
[2026-06-27 11:30:46,648.648 INFO    ] 200
[2026-06-27 11:30:46,649.649 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:30:46,682.682 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:30:46,684.684 INFO    ] No update needed
[2026-06-27 11:30:46,685.685 INFO    ] Checking for camera pi updates...
[2026-06-27 11:30:46,704.704 INFO    ] 200
[2026-06-27 11:30:46,706.706 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:30:46,730.730 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:30:46,776.776 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:30:46,778.778 INFO    ] No camera update needed
[2026-06-27 11:30:46,779.779 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:30:46,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:30:46,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:30:46,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:30:48,827.827 INFO    ] ================================================
[2026-06-27 11:30:48,843.843 INFO    ] Launching Daemon at Sat Jun 27 11:30:48 IST 2026
[2026-06-27 11:30:48,854.854 INFO    ] ================================================
[2026-06-27 11:30:49,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:30:49
[2026-06-27 11:30:49,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:30:49,694.694 INFO    ] Initializing speech engine...
[2026-06-27 11:30:49,698.698 INFO    ] 2026-06-27 11:30:49
[2026-06-27 11:30:49,916.916 INFO    ] 2026-06-27 11:30:49
[2026-06-27 11:30:49,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:30:50,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:30:50,142.142 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:30:50,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:30:50,329.329 INFO    ] time= 27/06/2026 11:30:50
[2026-06-27 11:30:50,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:30:50,368.368 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:30:50,460.460 INFO    ] No existing commands found in stream
[2026-06-27 11:30:55,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:30:55,477.477 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-27 11:30:56,473.473 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 11:30:56,475.475 INFO    ] Checking for system updates...
[2026-06-27 11:30:56,496.496 INFO    ] 200
[2026-06-27 11:30:56,497.497 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:30:56,529.529 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:30:56,530.530 INFO    ] No update needed
[2026-06-27 11:30:56,532.532 INFO    ] Checking for camera pi updates...
[2026-06-27 11:30:56,555.555 INFO    ] 200
[2026-06-27 11:30:56,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:30:56,583.583 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:30:56,620.620 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:30:56,622.622 INFO    ] No camera update needed
[2026-06-27 11:30:56,623.623 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:30:56,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:30:56,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:30:56,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:30:58,669.669 INFO    ] ================================================
[2026-06-27 11:30:58,685.685 INFO    ] Launching Daemon at Sat Jun 27 11:30:58 IST 2026
[2026-06-27 11:30:58,695.695 INFO    ] ================================================
[2026-06-27 11:30:59,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:30:59
[2026-06-27 11:30:59,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:30:59,474.474 INFO    ] Initializing speech engine...
[2026-06-27 11:30:59,487.487 INFO    ] 2026-06-27 11:30:59
[2026-06-27 11:30:59,694.694 INFO    ] 2026-06-27 11:30:59
[2026-06-27 11:30:59,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:30:59,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:30:59,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:31:00,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:31:00,135.135 INFO    ] time= 27/06/2026 11:31:00
[2026-06-27 11:31:00,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:31:00,143.143 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:31:00,210.210 INFO    ] No existing commands found in stream
[2026-06-27 11:31:05,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:31:05,221.221 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-27 11:31:09,644.644 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 11:31:09,645.645 INFO    ] Checking for system updates...
[2026-06-27 11:31:09,667.667 INFO    ] 200
[2026-06-27 11:31:09,669.669 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:31:09,702.702 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:31:09,704.704 INFO    ] No update needed
[2026-06-27 11:31:09,705.705 INFO    ] Checking for camera pi updates...
[2026-06-27 11:31:09,725.725 INFO    ] 200
[2026-06-27 11:31:09,727.727 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:31:09,751.751 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:31:09,796.796 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:31:09,798.798 INFO    ] No camera update needed
[2026-06-27 11:31:09,799.799 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:31:09,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:31:09,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:31:09,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:31:11,839.839 INFO    ] ================================================
[2026-06-27 11:31:11,847.847 INFO    ] Launching Daemon at Sat Jun 27 11:31:11 IST 2026
[2026-06-27 11:31:11,853.853 INFO    ] ================================================
[2026-06-27 11:31:12,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:31:12
[2026-06-27 11:31:12,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:31:12,663.663 INFO    ] Initializing speech engine...
[2026-06-27 11:31:12,668.668 INFO    ] 2026-06-27 11:31:12
[2026-06-27 11:31:12,872.872 INFO    ] 2026-06-27 11:31:12
[2026-06-27 11:31:12,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:31:13,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:31:13,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:31:13,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:31:13,313.313 INFO    ] time= 27/06/2026 11:31:13
[2026-06-27 11:31:13,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:31:13,320.320 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:31:13,385.385 INFO    ] No existing commands found in stream
[2026-06-27 11:31:18,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:31:18,399.399 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-27 11:31:22,641.641 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 11:31:22,642.642 INFO    ] Checking for system updates...
[2026-06-27 11:31:22,664.664 INFO    ] 200
[2026-06-27 11:31:22,665.665 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:31:22,696.696 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:31:22,698.698 INFO    ] No update needed
[2026-06-27 11:31:22,699.699 INFO    ] Checking for camera pi updates...
[2026-06-27 11:31:22,719.719 INFO    ] 200
[2026-06-27 11:31:22,720.720 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:31:22,746.746 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:31:22,897.897 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:31:22,898.898 INFO    ] No camera update needed
[2026-06-27 11:31:22,900.900 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:31:22,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:31:22,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:31:22,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:31:24,947.947 INFO    ] ================================================
[2026-06-27 11:31:24,962.962 INFO    ] Launching Daemon at Sat Jun 27 11:31:24 IST 2026
[2026-06-27 11:31:24,973.973 INFO    ] ================================================
[2026-06-27 11:31:25,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:31:25
[2026-06-27 11:31:25,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:31:25,854.854 INFO    ] Initializing speech engine...
[2026-06-27 11:31:25,862.862 INFO    ] 2026-06-27 11:31:25
[2026-06-27 11:31:26,080.080 INFO    ] 2026-06-27 11:31:26
[2026-06-27 11:31:26,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:31:26,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:31:26,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:31:26,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:31:26,524.524 INFO    ] time= 27/06/2026 11:31:26
[2026-06-27 11:31:26,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:31:26,531.531 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:31:26,597.597 INFO    ] No existing commands found in stream
[2026-06-27 11:31:31,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:31:31,611.611 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-27 11:31:32,771.771 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:31:32,773.773 INFO    ] Checking for system updates...
[2026-06-27 11:31:32,794.794 INFO    ] 200
[2026-06-27 11:31:32,796.796 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:31:32,829.829 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:31:32,831.831 INFO    ] No update needed
[2026-06-27 11:31:32,833.833 INFO    ] Checking for camera pi updates...
[2026-06-27 11:31:32,855.855 INFO    ] 200
[2026-06-27 11:31:32,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:31:32,881.881 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:31:32,920.920 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:31:32,921.921 INFO    ] No camera update needed
[2026-06-27 11:31:32,922.922 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:31:32,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:31:32,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:31:32,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:31:34,970.970 INFO    ] ================================================
[2026-06-27 11:31:34,985.985 INFO    ] Launching Daemon at Sat Jun 27 11:31:34 IST 2026
[2026-06-27 11:31:35,996.996 INFO    ] ================================================
[2026-06-27 11:31:35,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:31:35
[2026-06-27 11:31:35,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:31:35,818.818 INFO    ] Initializing speech engine...
[2026-06-27 11:31:35,823.823 INFO    ] 2026-06-27 11:31:35
[2026-06-27 11:31:36,015.015 INFO    ] 2026-06-27 11:31:36
[2026-06-27 11:31:36,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:31:36,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:31:36,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:31:36,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:31:36,493.493 INFO    ] time= 27/06/2026 11:31:36
[2026-06-27 11:31:36,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:31:36,540.540 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:31:36,644.644 INFO    ] No existing commands found in stream
[2026-06-27 11:31:41,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:31:41,655.655 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-27 11:31:42,188.188 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 11:31:42,190.190 INFO    ] Checking for system updates...
[2026-06-27 11:31:42,211.211 INFO    ] 200
[2026-06-27 11:31:42,212.212 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:31:42,245.245 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:31:42,246.246 INFO    ] No update needed
[2026-06-27 11:31:42,247.247 INFO    ] Checking for camera pi updates...
[2026-06-27 11:31:42,267.267 INFO    ] 200
[2026-06-27 11:31:42,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:31:42,292.292 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:31:42,329.329 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:31:42,330.330 INFO    ] No camera update needed
[2026-06-27 11:31:42,331.331 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:31:42,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:31:42,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:31:42,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:31:44,378.378 INFO    ] ================================================
[2026-06-27 11:31:44,394.394 INFO    ] Launching Daemon at Sat Jun 27 11:31:44 IST 2026
[2026-06-27 11:31:44,405.405 INFO    ] ================================================
[2026-06-27 11:31:44,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:31:44
[2026-06-27 11:31:45,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:31:45,245.245 INFO    ] Initializing speech engine...
[2026-06-27 11:31:45,250.250 INFO    ] 2026-06-27 11:31:45
[2026-06-27 11:31:45,456.456 INFO    ] 2026-06-27 11:31:45
[2026-06-27 11:31:45,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:31:45,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:31:45,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:31:45,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:31:45,898.898 INFO    ] time= 27/06/2026 11:31:45
[2026-06-27 11:31:45,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:31:45,907.907 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:31:45,974.974 INFO    ] No existing commands found in stream
[2026-06-27 11:31:50,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:31:50,986.986 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-27 11:31:53,297.297 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 11:31:53,299.299 INFO    ] Checking for system updates...
[2026-06-27 11:31:53,319.319 INFO    ] 200
[2026-06-27 11:31:53,321.321 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:31:53,352.352 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:31:53,353.353 INFO    ] No update needed
[2026-06-27 11:31:53,355.355 INFO    ] Checking for camera pi updates...
[2026-06-27 11:31:53,375.375 INFO    ] 200
[2026-06-27 11:31:53,377.377 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:31:53,400.400 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:31:53,434.434 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:31:53,436.436 INFO    ] No camera update needed
[2026-06-27 11:31:53,437.437 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:31:53,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:31:53,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:31:53,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:31:55,491.491 INFO    ] ================================================
[2026-06-27 11:31:55,507.507 INFO    ] Launching Daemon at Sat Jun 27 11:31:55 IST 2026
[2026-06-27 11:31:55,517.517 INFO    ] ================================================
[2026-06-27 11:31:55,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:31:55
[2026-06-27 11:31:56,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:31:56,322.322 INFO    ] Initializing speech engine...
[2026-06-27 11:31:56,328.328 INFO    ] 2026-06-27 11:31:56
[2026-06-27 11:31:56,531.531 INFO    ] 2026-06-27 11:31:56
[2026-06-27 11:31:56,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:31:56,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:31:56,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:31:56,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:31:56,952.952 INFO    ] time= 27/06/2026 11:31:56
[2026-06-27 11:31:56,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:31:56,978.978 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:31:57,073.073 INFO    ] No existing commands found in stream
[2026-06-27 11:32:02,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:32:02,084.084 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-27 11:32:03,120.120 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 11:32:03,122.122 INFO    ] Checking for system updates...
[2026-06-27 11:32:03,144.144 INFO    ] 200
[2026-06-27 11:32:03,145.145 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:32:03,176.176 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:32:03,178.178 INFO    ] No update needed
[2026-06-27 11:32:03,179.179 INFO    ] Checking for camera pi updates...
[2026-06-27 11:32:03,199.199 INFO    ] 200
[2026-06-27 11:32:03,200.200 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:32:03,224.224 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:32:03,247.247 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:32:03,248.248 INFO    ] No camera update needed
[2026-06-27 11:32:03,249.249 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:32:03,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:32:03,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:32:03,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:32:05,297.297 INFO    ] ================================================
[2026-06-27 11:32:05,313.313 INFO    ] Launching Daemon at Sat Jun 27 11:32:05 IST 2026
[2026-06-27 11:32:05,324.324 INFO    ] ================================================
[2026-06-27 11:32:05,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:32:05
[2026-06-27 11:32:05,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:32:06,124.124 INFO    ] Initializing speech engine...
[2026-06-27 11:32:06,135.135 INFO    ] 2026-06-27 11:32:06
[2026-06-27 11:32:06,361.361 INFO    ] 2026-06-27 11:32:06
[2026-06-27 11:32:06,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:32:06,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:32:06,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:32:06,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:32:06,844.844 INFO    ] time= 27/06/2026 11:32:06
[2026-06-27 11:32:06,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:32:06,851.851 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:32:06,918.918 INFO    ] No existing commands found in stream
[2026-06-27 11:32:11,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:32:11,930.930 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-27 11:32:15,343.343 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 11:32:15,344.344 INFO    ] Checking for system updates...
[2026-06-27 11:32:15,366.366 INFO    ] 200
[2026-06-27 11:32:15,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:32:15,397.397 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:32:15,399.399 INFO    ] No update needed
[2026-06-27 11:32:15,400.400 INFO    ] Checking for camera pi updates...
[2026-06-27 11:32:15,421.421 INFO    ] 200
[2026-06-27 11:32:15,422.422 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:32:15,445.445 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:32:15,482.482 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:32:15,483.483 INFO    ] No camera update needed
[2026-06-27 11:32:15,485.485 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:32:15,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:32:15,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:32:15,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:32:17,523.523 INFO    ] ================================================
[2026-06-27 11:32:17,539.539 INFO    ] Launching Daemon at Sat Jun 27 11:32:17 IST 2026
[2026-06-27 11:32:17,550.550 INFO    ] ================================================
[2026-06-27 11:32:17,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:32:17
[2026-06-27 11:32:18,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:32:18,417.417 INFO    ] Initializing speech engine...
[2026-06-27 11:32:18,426.426 INFO    ] 2026-06-27 11:32:18
[2026-06-27 11:32:18,660.660 INFO    ] 2026-06-27 11:32:18
[2026-06-27 11:32:18,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:32:18,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:32:18,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:32:19,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:32:19,134.134 INFO    ] time= 27/06/2026 11:32:19
[2026-06-27 11:32:19,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:32:19,142.142 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:32:19,211.211 INFO    ] No existing commands found in stream
[2026-06-27 11:32:24,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:32:24,223.223 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-27 11:32:27,520.520 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 11:32:27,521.521 INFO    ] Checking for system updates...
[2026-06-27 11:32:27,542.542 INFO    ] 200
[2026-06-27 11:32:27,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:32:27,576.576 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:32:27,577.577 INFO    ] No update needed
[2026-06-27 11:32:27,578.578 INFO    ] Checking for camera pi updates...
[2026-06-27 11:32:27,598.598 INFO    ] 200
[2026-06-27 11:32:27,599.599 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:32:27,625.625 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:32:27,671.671 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:32:27,672.672 INFO    ] No camera update needed
[2026-06-27 11:32:27,674.674 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:32:27,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:32:27,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:32:27,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:32:29,721.721 INFO    ] ================================================
[2026-06-27 11:32:29,737.737 INFO    ] Launching Daemon at Sat Jun 27 11:32:29 IST 2026
[2026-06-27 11:32:29,748.748 INFO    ] ================================================
[2026-06-27 11:32:30,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:32:30
[2026-06-27 11:32:30,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:32:30,548.548 INFO    ] Initializing speech engine...
[2026-06-27 11:32:30,551.551 INFO    ] 2026-06-27 11:32:30
[2026-06-27 11:32:30,744.744 INFO    ] 2026-06-27 11:32:30
[2026-06-27 11:32:30,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:32:30,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:32:31,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:32:31,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:32:31,222.222 INFO    ] time= 27/06/2026 11:32:31
[2026-06-27 11:32:31,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:32:31,269.269 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:32:31,345.345 INFO    ] No existing commands found in stream
[2026-06-27 11:32:36,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:32:36,359.359 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-27 11:32:36,875.875 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 11:32:36,877.877 INFO    ] Checking for system updates...
[2026-06-27 11:32:36,898.898 INFO    ] 200
[2026-06-27 11:32:36,899.899 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:32:36,932.932 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:32:36,933.933 INFO    ] No update needed
[2026-06-27 11:32:36,935.935 INFO    ] Checking for camera pi updates...
[2026-06-27 11:32:36,954.954 INFO    ] 200
[2026-06-27 11:32:36,955.955 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:32:36,979.979 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:32:37,023.023 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:32:37,024.024 INFO    ] No camera update needed
[2026-06-27 11:32:37,026.026 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:32:37,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:32:37,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:32:37,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:32:39,071.071 INFO    ] ================================================
[2026-06-27 11:32:39,086.086 INFO    ] Launching Daemon at Sat Jun 27 11:32:39 IST 2026
[2026-06-27 11:32:39,097.097 INFO    ] ================================================
[2026-06-27 11:32:39,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:32:39
[2026-06-27 11:32:39,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:32:39,896.896 INFO    ] Initializing speech engine...
[2026-06-27 11:32:39,905.905 INFO    ] 2026-06-27 11:32:39
[2026-06-27 11:32:40,118.118 INFO    ] 2026-06-27 11:32:40
[2026-06-27 11:32:40,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:32:40,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:32:40,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:32:40,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:32:40,554.554 INFO    ] time= 27/06/2026 11:32:40
[2026-06-27 11:32:40,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:32:40,565.565 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:32:40,632.632 INFO    ] No existing commands found in stream
[2026-06-27 11:32:45,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:32:45,642.642 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-27 11:32:46,195.195 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 11:32:46,197.197 INFO    ] Checking for system updates...
[2026-06-27 11:32:46,219.219 INFO    ] 200
[2026-06-27 11:32:46,220.220 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:32:46,250.250 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:32:46,251.251 INFO    ] No update needed
[2026-06-27 11:32:46,253.253 INFO    ] Checking for camera pi updates...
[2026-06-27 11:32:46,272.272 INFO    ] 200
[2026-06-27 11:32:46,273.273 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:32:46,296.296 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:32:46,332.332 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:32:46,334.334 INFO    ] No camera update needed
[2026-06-27 11:32:46,335.335 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:32:46,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:32:46,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:32:46,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:32:48,374.374 INFO    ] ================================================
[2026-06-27 11:32:48,391.391 INFO    ] Launching Daemon at Sat Jun 27 11:32:48 IST 2026
[2026-06-27 11:32:48,403.403 INFO    ] ================================================
[2026-06-27 11:32:48,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:32:48
[2026-06-27 11:32:49,062.062 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:32:49,191.191 INFO    ] Initializing speech engine...
[2026-06-27 11:32:49,194.194 INFO    ] 2026-06-27 11:32:49
[2026-06-27 11:32:49,414.414 INFO    ] 2026-06-27 11:32:49
[2026-06-27 11:32:49,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:32:49,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:32:49,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:32:49,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:32:49,855.855 INFO    ] time= 27/06/2026 11:32:49
[2026-06-27 11:32:49,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:32:49,862.862 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:32:49,927.927 INFO    ] No existing commands found in stream
[2026-06-27 11:32:54,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:32:54,940.940 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-27 11:32:58,892.892 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 11:32:58,893.893 INFO    ] Checking for system updates...
[2026-06-27 11:32:58,914.914 INFO    ] 200
[2026-06-27 11:32:58,916.916 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:32:58,946.946 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:32:58,947.947 INFO    ] No update needed
[2026-06-27 11:32:58,949.949 INFO    ] Checking for camera pi updates...
[2026-06-27 11:32:58,968.968 INFO    ] 200
[2026-06-27 11:32:58,969.969 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:32:58,993.993 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:32:59,028.028 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:32:59,029.029 INFO    ] No camera update needed
[2026-06-27 11:32:59,031.031 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:32:59,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:32:59,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:32:59,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:33:01,079.079 INFO    ] ================================================
[2026-06-27 11:33:01,094.094 INFO    ] Launching Daemon at Sat Jun 27 11:33:01 IST 2026
[2026-06-27 11:33:01,104.104 INFO    ] ================================================
[2026-06-27 11:33:01,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:33:01
[2026-06-27 11:33:01,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:33:02,094.094 INFO    ] Initializing speech engine...
[2026-06-27 11:33:02,098.098 INFO    ] 2026-06-27 11:33:02
[2026-06-27 11:33:02,320.320 INFO    ] 2026-06-27 11:33:02
[2026-06-27 11:33:02,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:33:02,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:33:02,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:33:02,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:33:02,808.808 INFO    ] time= 27/06/2026 11:33:02
[2026-06-27 11:33:02,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:33:02,860.860 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:33:02,931.931 INFO    ] No existing commands found in stream
[2026-06-27 11:33:07,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:33:07,944.944 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-27 11:33:09,023.023 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 11:33:09,025.025 INFO    ] Checking for system updates...
[2026-06-27 11:33:09,047.047 INFO    ] 200
[2026-06-27 11:33:09,048.048 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:33:09,079.079 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:33:09,080.080 INFO    ] No update needed
[2026-06-27 11:33:09,082.082 INFO    ] Checking for camera pi updates...
[2026-06-27 11:33:09,101.101 INFO    ] 200
[2026-06-27 11:33:09,102.102 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:33:09,127.127 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:33:09,172.172 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:33:09,173.173 INFO    ] No camera update needed
[2026-06-27 11:33:09,174.174 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:33:09,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:33:09,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:33:09,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:33:11,220.220 INFO    ] ================================================
[2026-06-27 11:33:11,235.235 INFO    ] Launching Daemon at Sat Jun 27 11:33:11 IST 2026
[2026-06-27 11:33:11,245.245 INFO    ] ================================================
[2026-06-27 11:33:11,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:33:11
[2026-06-27 11:33:11,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:33:12,116.116 INFO    ] Initializing speech engine...
[2026-06-27 11:33:12,122.122 INFO    ] 2026-06-27 11:33:12
[2026-06-27 11:33:12,330.330 INFO    ] 2026-06-27 11:33:12
[2026-06-27 11:33:12,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:33:12,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:33:12,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:33:12,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:33:12,749.749 INFO    ] time= 27/06/2026 11:33:12
[2026-06-27 11:33:12,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:33:12,779.779 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:33:12,847.847 INFO    ] No existing commands found in stream
[2026-06-27 11:33:17,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:33:17,875.875 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-27 11:33:19,991.991 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:33:19,992.992 INFO    ] Checking for system updates...
[2026-06-27 11:33:20,014.014 INFO    ] 200
[2026-06-27 11:33:20,016.016 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:33:20,047.047 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:33:20,048.048 INFO    ] No update needed
[2026-06-27 11:33:20,049.049 INFO    ] Checking for camera pi updates...
[2026-06-27 11:33:20,070.070 INFO    ] 200
[2026-06-27 11:33:20,072.072 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:33:20,095.095 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:33:20,133.133 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:33:20,135.135 INFO    ] No camera update needed
[2026-06-27 11:33:20,136.136 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:33:20,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:33:20,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:33:20,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:33:22,182.182 INFO    ] ================================================
[2026-06-27 11:33:22,197.197 INFO    ] Launching Daemon at Sat Jun 27 11:33:22 IST 2026
[2026-06-27 11:33:22,208.208 INFO    ] ================================================
[2026-06-27 11:33:22,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:33:22
[2026-06-27 11:33:22,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:33:23,077.077 INFO    ] Initializing speech engine...
[2026-06-27 11:33:23,092.092 INFO    ] 2026-06-27 11:33:23
[2026-06-27 11:33:23,303.303 INFO    ] 2026-06-27 11:33:23
[2026-06-27 11:33:23,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:33:23,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:33:23,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:33:23,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:33:23,726.726 INFO    ] time= 27/06/2026 11:33:23
[2026-06-27 11:33:23,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:33:23,753.753 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:33:23,818.818 INFO    ] No existing commands found in stream
[2026-06-27 11:33:28,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:33:28,833.833 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-27 11:33:29,358.358 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 11:33:29,360.360 INFO    ] Checking for system updates...
[2026-06-27 11:33:29,381.381 INFO    ] 200
[2026-06-27 11:33:29,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:33:29,417.417 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:33:29,418.418 INFO    ] No update needed
[2026-06-27 11:33:29,420.420 INFO    ] Checking for camera pi updates...
[2026-06-27 11:33:29,440.440 INFO    ] 200
[2026-06-27 11:33:29,442.442 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:33:29,465.465 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:33:29,608.608 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:33:29,609.609 INFO    ] No camera update needed
[2026-06-27 11:33:29,611.611 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:33:29,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:33:29,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:33:29,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:33:31,650.650 INFO    ] ================================================
[2026-06-27 11:33:31,660.660 INFO    ] Launching Daemon at Sat Jun 27 11:33:31 IST 2026
[2026-06-27 11:33:31,667.667 INFO    ] ================================================
[2026-06-27 11:33:32,033.033 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:33:32
[2026-06-27 11:33:32,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:33:32,496.496 INFO    ] Initializing speech engine...
[2026-06-27 11:33:32,509.509 INFO    ] 2026-06-27 11:33:32
[2026-06-27 11:33:32,730.730 INFO    ] 2026-06-27 11:33:32
[2026-06-27 11:33:32,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:33:32,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:33:32,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:33:33,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:33:33,158.158 INFO    ] time= 27/06/2026 11:33:33
[2026-06-27 11:33:33,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:33:33,216.216 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:33:33,291.291 INFO    ] No existing commands found in stream
[2026-06-27 11:33:38,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:33:38,305.305 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-27 11:33:42,580.580 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 11:33:42,581.581 INFO    ] Checking for system updates...
[2026-06-27 11:33:42,602.602 INFO    ] 200
[2026-06-27 11:33:42,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:33:42,636.636 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:33:42,637.637 INFO    ] No update needed
[2026-06-27 11:33:42,639.639 INFO    ] Checking for camera pi updates...
[2026-06-27 11:33:42,658.658 INFO    ] 200
[2026-06-27 11:33:42,660.660 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:33:42,683.683 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:33:42,729.729 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:33:42,730.730 INFO    ] No camera update needed
[2026-06-27 11:33:42,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:33:42,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:33:42,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:33:42,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:33:44,777.777 INFO    ] ================================================
[2026-06-27 11:33:44,792.792 INFO    ] Launching Daemon at Sat Jun 27 11:33:44 IST 2026
[2026-06-27 11:33:44,803.803 INFO    ] ================================================
[2026-06-27 11:33:45,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:33:45
[2026-06-27 11:33:45,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:33:45,630.630 INFO    ] Initializing speech engine...
[2026-06-27 11:33:45,635.635 INFO    ] 2026-06-27 11:33:45
[2026-06-27 11:33:45,840.840 INFO    ] 2026-06-27 11:33:45
[2026-06-27 11:33:45,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:33:46,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:33:46,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:33:46,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:33:46,260.260 INFO    ] time= 27/06/2026 11:33:46
[2026-06-27 11:33:46,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:33:46,289.289 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:33:46,356.356 INFO    ] No existing commands found in stream
[2026-06-27 11:33:51,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:33:51,369.369 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-27 11:33:55,257.257 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 11:33:55,258.258 INFO    ] Checking for system updates...
[2026-06-27 11:33:55,279.279 INFO    ] 200
[2026-06-27 11:33:55,280.280 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:33:55,315.315 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:33:55,317.317 INFO    ] No update needed
[2026-06-27 11:33:55,318.318 INFO    ] Checking for camera pi updates...
[2026-06-27 11:33:55,337.337 INFO    ] 200
[2026-06-27 11:33:55,338.338 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:33:55,364.364 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:33:55,401.401 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:33:55,402.402 INFO    ] No camera update needed
[2026-06-27 11:33:55,403.403 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:33:55,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:33:55,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:33:55,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:33:57,450.450 INFO    ] ================================================
[2026-06-27 11:33:57,465.465 INFO    ] Launching Daemon at Sat Jun 27 11:33:57 IST 2026
[2026-06-27 11:33:57,476.476 INFO    ] ================================================
[2026-06-27 11:33:57,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:33:57
[2026-06-27 11:33:58,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:33:58,319.319 INFO    ] Initializing speech engine...
[2026-06-27 11:33:58,324.324 INFO    ] 2026-06-27 11:33:58
[2026-06-27 11:33:58,533.533 INFO    ] 2026-06-27 11:33:58
[2026-06-27 11:33:58,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:33:58,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:33:58,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:33:58,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:33:58,976.976 INFO    ] time= 27/06/2026 11:33:58
[2026-06-27 11:33:58,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:33:58,983.983 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:33:59,052.052 INFO    ] No existing commands found in stream
[2026-06-27 11:34:04,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:34:04,069.069 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-27 11:34:04,889.889 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 11:34:04,890.890 INFO    ] Checking for system updates...
[2026-06-27 11:34:04,911.911 INFO    ] 200
[2026-06-27 11:34:04,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:34:04,944.944 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:34:04,946.946 INFO    ] No update needed
[2026-06-27 11:34:04,947.947 INFO    ] Checking for camera pi updates...
[2026-06-27 11:34:04,967.967 INFO    ] 200
[2026-06-27 11:34:04,968.968 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:34:04,996.996 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:34:05,036.036 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:34:05,038.038 INFO    ] No camera update needed
[2026-06-27 11:34:05,039.039 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:34:05,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:34:05,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:34:05,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:34:07,088.088 INFO    ] ================================================
[2026-06-27 11:34:07,103.103 INFO    ] Launching Daemon at Sat Jun 27 11:34:07 IST 2026
[2026-06-27 11:34:07,114.114 INFO    ] ================================================
[2026-06-27 11:34:07,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:34:07
[2026-06-27 11:34:07,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:34:07,930.930 INFO    ] Initializing speech engine...
[2026-06-27 11:34:07,936.936 INFO    ] 2026-06-27 11:34:07
[2026-06-27 11:34:08,139.139 INFO    ] 2026-06-27 11:34:08
[2026-06-27 11:34:08,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:34:08,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:34:08,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:34:08,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:34:08,557.557 INFO    ] time= 27/06/2026 11:34:08
[2026-06-27 11:34:08,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:34:08,584.584 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:34:08,651.651 INFO    ] No existing commands found in stream
[2026-06-27 11:34:13,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:34:13,657.657 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-27 11:34:17,251.251 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 11:34:17,252.252 INFO    ] Checking for system updates...
[2026-06-27 11:34:17,273.273 INFO    ] 200
[2026-06-27 11:34:17,275.275 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:34:17,308.308 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:34:17,310.310 INFO    ] No update needed
[2026-06-27 11:34:17,312.312 INFO    ] Checking for camera pi updates...
[2026-06-27 11:34:17,331.331 INFO    ] 200
[2026-06-27 11:34:17,332.332 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:34:17,358.358 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:34:17,397.397 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:34:17,398.398 INFO    ] No camera update needed
[2026-06-27 11:34:17,399.399 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:34:17,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:34:17,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:34:17,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:34:19,440.440 INFO    ] ================================================
[2026-06-27 11:34:19,456.456 INFO    ] Launching Daemon at Sat Jun 27 11:34:19 IST 2026
[2026-06-27 11:34:19,467.467 INFO    ] ================================================
[2026-06-27 11:34:19,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:34:19
[2026-06-27 11:34:20,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:34:20,283.283 INFO    ] Initializing speech engine...
[2026-06-27 11:34:20,287.287 INFO    ] 2026-06-27 11:34:20
[2026-06-27 11:34:20,489.489 INFO    ] 2026-06-27 11:34:20
[2026-06-27 11:34:20,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:34:20,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:34:20,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:34:20,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:34:20,904.904 INFO    ] time= 27/06/2026 11:34:20
[2026-06-27 11:34:20,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:34:20,997.997 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:34:21,131.131 INFO    ] No existing commands found in stream
[2026-06-27 11:34:26,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:34:26,144.144 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-27 11:34:26,847.847 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 11:34:26,849.849 INFO    ] Checking for system updates...
[2026-06-27 11:34:26,869.869 INFO    ] 200
[2026-06-27 11:34:26,871.871 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:34:26,901.901 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:34:26,902.902 INFO    ] No update needed
[2026-06-27 11:34:26,903.903 INFO    ] Checking for camera pi updates...
[2026-06-27 11:34:26,923.923 INFO    ] 200
[2026-06-27 11:34:26,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:34:26,949.949 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:34:26,990.990 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:34:26,991.991 INFO    ] No camera update needed
[2026-06-27 11:34:26,992.992 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:34:26,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:34:26,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:34:26,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:34:29,037.037 INFO    ] ================================================
[2026-06-27 11:34:29,053.053 INFO    ] Launching Daemon at Sat Jun 27 11:34:29 IST 2026
[2026-06-27 11:34:29,064.064 INFO    ] ================================================
[2026-06-27 11:34:29,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:34:29
[2026-06-27 11:34:29,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:34:29,944.944 INFO    ] Initializing speech engine...
[2026-06-27 11:34:29,953.953 INFO    ] 2026-06-27 11:34:29
[2026-06-27 11:34:30,166.166 INFO    ] 2026-06-27 11:34:30
[2026-06-27 11:34:30,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:34:30,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:34:30,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:34:30,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:34:30,605.605 INFO    ] time= 27/06/2026 11:34:30
[2026-06-27 11:34:30,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:34:30,613.613 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:34:30,680.680 INFO    ] No existing commands found in stream
[2026-06-27 11:34:35,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:34:35,691.691 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-27 11:34:37,099.099 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 11:34:37,100.100 INFO    ] Checking for system updates...
[2026-06-27 11:34:37,145.145 INFO    ] 200
[2026-06-27 11:34:37,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:34:37,185.185 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:34:37,186.186 INFO    ] No update needed
[2026-06-27 11:34:37,188.188 INFO    ] Checking for camera pi updates...
[2026-06-27 11:34:37,207.207 INFO    ] 200
[2026-06-27 11:34:37,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:34:37,235.235 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:34:37,275.275 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:34:37,277.277 INFO    ] No camera update needed
[2026-06-27 11:34:37,278.278 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:34:37,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:34:37,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:34:37,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:34:39,324.324 INFO    ] ================================================
[2026-06-27 11:34:39,339.339 INFO    ] Launching Daemon at Sat Jun 27 11:34:39 IST 2026
[2026-06-27 11:34:39,351.351 INFO    ] ================================================
[2026-06-27 11:34:39,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:34:39
[2026-06-27 11:34:40,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:34:40,151.151 INFO    ] Initializing speech engine...
[2026-06-27 11:34:40,157.157 INFO    ] 2026-06-27 11:34:40
[2026-06-27 11:34:40,362.362 INFO    ] 2026-06-27 11:34:40
[2026-06-27 11:34:40,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:34:40,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:34:40,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:34:40,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:34:40,799.799 INFO    ] time= 27/06/2026 11:34:40
[2026-06-27 11:34:40,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:34:40,806.806 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:34:40,873.873 INFO    ] No existing commands found in stream
[2026-06-27 11:34:45,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:34:45,886.886 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-27 11:34:46,823.823 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 11:34:46,825.825 INFO    ] Checking for system updates...
[2026-06-27 11:34:46,846.846 INFO    ] 200
[2026-06-27 11:34:46,847.847 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:34:46,878.878 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:34:46,879.879 INFO    ] No update needed
[2026-06-27 11:34:46,880.880 INFO    ] Checking for camera pi updates...
[2026-06-27 11:34:46,900.900 INFO    ] 200
[2026-06-27 11:34:46,901.901 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:34:46,925.925 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:34:46,964.964 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:34:46,966.966 INFO    ] No camera update needed
[2026-06-27 11:34:46,967.967 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:34:46,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:34:46,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:34:46,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:34:49,014.014 INFO    ] ================================================
[2026-06-27 11:34:49,030.030 INFO    ] Launching Daemon at Sat Jun 27 11:34:49 IST 2026
[2026-06-27 11:34:49,040.040 INFO    ] ================================================
[2026-06-27 11:34:49,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:34:49
[2026-06-27 11:34:49,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:34:49,845.845 INFO    ] Initializing speech engine...
[2026-06-27 11:34:49,849.849 INFO    ] 2026-06-27 11:34:49
[2026-06-27 11:34:50,069.069 INFO    ] 2026-06-27 11:34:50
[2026-06-27 11:34:50,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:34:50,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:34:50,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:34:50,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:34:50,488.488 INFO    ] time= 27/06/2026 11:34:50
[2026-06-27 11:34:50,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:34:50,528.528 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:34:50,596.596 INFO    ] No existing commands found in stream
[2026-06-27 11:34:55,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:34:55,613.613 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-27 11:34:56,367.367 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 11:34:56,368.368 INFO    ] Checking for system updates...
[2026-06-27 11:34:56,389.389 INFO    ] 200
[2026-06-27 11:34:56,391.391 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:34:56,421.421 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:34:56,422.422 INFO    ] No update needed
[2026-06-27 11:34:56,424.424 INFO    ] Checking for camera pi updates...
[2026-06-27 11:34:56,443.443 INFO    ] 200
[2026-06-27 11:34:56,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:34:56,468.468 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:34:56,512.512 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:34:56,514.514 INFO    ] No camera update needed
[2026-06-27 11:34:56,515.515 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:34:56,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:34:56,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:34:56,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:34:58,560.560 INFO    ] ================================================
[2026-06-27 11:34:58,575.575 INFO    ] Launching Daemon at Sat Jun 27 11:34:58 IST 2026
[2026-06-27 11:34:58,586.586 INFO    ] ================================================
[2026-06-27 11:34:58,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:34:58
[2026-06-27 11:34:59,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:34:59,403.403 INFO    ] Initializing speech engine...
[2026-06-27 11:34:59,408.408 INFO    ] 2026-06-27 11:34:59
[2026-06-27 11:34:59,615.615 INFO    ] 2026-06-27 11:34:59
[2026-06-27 11:34:59,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:34:59,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:34:59,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:34:59,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:35:00,041.041 INFO    ] time= 27/06/2026 11:34:59
[2026-06-27 11:35:00,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:35:00,072.072 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:35:00,139.139 INFO    ] No existing commands found in stream
[2026-06-27 11:35:05,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:35:05,148.148 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-27 11:35:06,953.953 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 11:35:06,955.955 INFO    ] Checking for system updates...
[2026-06-27 11:35:06,977.977 INFO    ] 200
[2026-06-27 11:35:06,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_ON_BATTERY", "status": true}
[2026-06-27 11:35:06,979.979 INFO    ] Machine not idle (state: STATE_ON_BATTERY), skipping update check
[2026-06-27 11:35:06,981.981 INFO    ] Checking for camera pi updates...
[2026-06-27 11:35:07,003.003 INFO    ] 200
[2026-06-27 11:35:07,005.005 INFO    ] {"msg": "Status of machine", "state": "STATE_ON_BATTERY", "status": true}
[2026-06-27 11:35:07,007.007 INFO    ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check
[2026-06-27 11:35:07,008.008 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:35:07,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:35:07,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:35:07,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:35:09,056.056 INFO    ] ================================================
[2026-06-27 11:35:09,071.071 INFO    ] Launching Daemon at Sat Jun 27 11:35:09 IST 2026
[2026-06-27 11:35:09,083.083 INFO    ] ================================================
[2026-06-27 11:35:09,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:35:09
[2026-06-27 11:35:09,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:35:09,917.917 INFO    ] Initializing speech engine...
[2026-06-27 11:35:09,931.931 INFO    ] 2026-06-27 11:35:09
[2026-06-27 11:35:10,160.160 INFO    ] 2026-06-27 11:35:10
[2026-06-27 11:35:10,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:35:10,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:35:10,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:35:10,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:35:10,547.547 INFO    ] time= 27/06/2026 11:35:10
[2026-06-27 11:35:10,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:35:10,551.551 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:35:10,615.615 INFO    ] No existing commands found in stream
[2026-06-27 11:35:15,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:35:15,627.627 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-27 11:35:18,489.489 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 11:35:18,490.490 INFO    ] Checking for system updates...
[2026-06-27 11:35:18,512.512 INFO    ] 200
[2026-06-27 11:35:18,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:35:18,546.546 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:35:18,548.548 INFO    ] No update needed
[2026-06-27 11:35:18,549.549 INFO    ] Checking for camera pi updates...
[2026-06-27 11:35:18,569.569 INFO    ] 200
[2026-06-27 11:35:18,571.571 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:35:18,596.596 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:35:18,639.639 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:35:18,640.640 INFO    ] No camera update needed
[2026-06-27 11:35:18,642.642 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:35:18,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:35:18,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:35:18,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:35:20,692.692 INFO    ] ================================================
[2026-06-27 11:35:20,708.708 INFO    ] Launching Daemon at Sat Jun 27 11:35:20 IST 2026
[2026-06-27 11:35:20,720.720 INFO    ] ================================================
[2026-06-27 11:35:21,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:35:21
[2026-06-27 11:35:21,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:35:21,539.539 INFO    ] Initializing speech engine...
[2026-06-27 11:35:21,545.545 INFO    ] 2026-06-27 11:35:21
[2026-06-27 11:35:21,762.762 INFO    ] 2026-06-27 11:35:21
[2026-06-27 11:35:21,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:35:21,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:35:21,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:35:22,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:35:22,214.214 INFO    ] time= 27/06/2026 11:35:22
[2026-06-27 11:35:22,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:35:22,246.246 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:35:22,322.322 INFO    ] No existing commands found in stream
[2026-06-27 11:35:27,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:35:27,336.336 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-27 11:35:30,457.457 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 11:35:30,459.459 INFO    ] Checking for system updates...
[2026-06-27 11:35:30,481.481 INFO    ] 200
[2026-06-27 11:35:30,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:35:30,514.514 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:35:30,515.515 INFO    ] No update needed
[2026-06-27 11:35:30,517.517 INFO    ] Checking for camera pi updates...
[2026-06-27 11:35:30,538.538 INFO    ] 200
[2026-06-27 11:35:30,539.539 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:35:30,563.563 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:35:30,707.707 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:35:30,708.708 INFO    ] No camera update needed
[2026-06-27 11:35:30,709.709 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:35:30,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:35:30,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:35:30,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:35:32,750.750 INFO    ] ================================================
[2026-06-27 11:35:32,759.759 INFO    ] Launching Daemon at Sat Jun 27 11:35:32 IST 2026
[2026-06-27 11:35:32,767.767 INFO    ] ================================================
[2026-06-27 11:35:33,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:35:33
[2026-06-27 11:35:33,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:35:33,602.602 INFO    ] Initializing speech engine...
[2026-06-27 11:35:33,608.608 INFO    ] 2026-06-27 11:35:33
[2026-06-27 11:35:33,810.810 INFO    ] 2026-06-27 11:35:33
[2026-06-27 11:35:33,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:35:34,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:35:34,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:35:34,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:35:34,252.252 INFO    ] time= 27/06/2026 11:35:34
[2026-06-27 11:35:34,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:35:34,259.259 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:35:34,327.327 INFO    ] No existing commands found in stream
[2026-06-27 11:35:39,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:35:39,339.339 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-27 11:35:41,117.117 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 11:35:41,119.119 INFO    ] Checking for system updates...
[2026-06-27 11:35:41,140.140 INFO    ] 200
[2026-06-27 11:35:41,141.141 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:35:41,174.174 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:35:41,175.175 INFO    ] No update needed
[2026-06-27 11:35:41,177.177 INFO    ] Checking for camera pi updates...
[2026-06-27 11:35:41,197.197 INFO    ] 200
[2026-06-27 11:35:41,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:35:41,223.223 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:35:41,265.265 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:35:41,266.266 INFO    ] No camera update needed
[2026-06-27 11:35:41,267.267 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:35:41,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:35:41,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:35:41,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:35:43,315.315 INFO    ] ================================================
[2026-06-27 11:35:43,330.330 INFO    ] Launching Daemon at Sat Jun 27 11:35:43 IST 2026
[2026-06-27 11:35:43,341.341 INFO    ] ================================================
[2026-06-27 11:35:43,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:35:43
[2026-06-27 11:35:44,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:35:44,162.162 INFO    ] Initializing speech engine...
[2026-06-27 11:35:44,168.168 INFO    ] 2026-06-27 11:35:44
[2026-06-27 11:35:44,372.372 INFO    ] 2026-06-27 11:35:44
[2026-06-27 11:35:44,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:35:44,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:35:44,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:35:44,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:35:44,794.794 INFO    ] time= 27/06/2026 11:35:44
[2026-06-27 11:35:44,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:35:44,821.821 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:35:44,892.892 INFO    ] No existing commands found in stream
[2026-06-27 11:35:49,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:35:49,905.905 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-27 11:35:52,692.692 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 11:35:52,694.694 INFO    ] Checking for system updates...
[2026-06-27 11:35:52,715.715 INFO    ] 200
[2026-06-27 11:35:52,717.717 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:35:52,747.747 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:35:52,749.749 INFO    ] No update needed
[2026-06-27 11:35:52,750.750 INFO    ] Checking for camera pi updates...
[2026-06-27 11:35:52,769.769 INFO    ] 200
[2026-06-27 11:35:52,770.770 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:35:52,794.794 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:35:52,820.820 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:35:52,821.821 INFO    ] No camera update needed
[2026-06-27 11:35:52,822.822 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:35:52,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:35:52,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:35:52,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:35:54,868.868 INFO    ] ================================================
[2026-06-27 11:35:54,884.884 INFO    ] Launching Daemon at Sat Jun 27 11:35:54 IST 2026
[2026-06-27 11:35:54,894.894 INFO    ] ================================================
[2026-06-27 11:35:55,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:35:55
[2026-06-27 11:35:55,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:35:55,676.676 INFO    ] Initializing speech engine...
[2026-06-27 11:35:55,681.681 INFO    ] 2026-06-27 11:35:55
[2026-06-27 11:35:55,887.887 INFO    ] 2026-06-27 11:35:55
[2026-06-27 11:35:55,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:35:56,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:35:56,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:35:56,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:35:56,301.301 INFO    ] time= 27/06/2026 11:35:56
[2026-06-27 11:35:56,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:35:56,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:35:56,434.434 INFO    ] No existing commands found in stream
[2026-06-27 11:36:01,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:36:01,445.445 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-27 11:36:04,390.390 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 11:36:04,391.391 INFO    ] Checking for system updates...
[2026-06-27 11:36:04,412.412 INFO    ] 200
[2026-06-27 11:36:04,414.414 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:36:04,447.447 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:36:04,449.449 INFO    ] No update needed
[2026-06-27 11:36:04,450.450 INFO    ] Checking for camera pi updates...
[2026-06-27 11:36:04,472.472 INFO    ] 200
[2026-06-27 11:36:04,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:36:04,500.500 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:36:04,539.539 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:36:04,540.540 INFO    ] No camera update needed
[2026-06-27 11:36:04,541.541 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:36:04,543.543 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:36:04,546.546 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:36:04,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:36:06,593.593 INFO    ] ================================================
[2026-06-27 11:36:06,608.608 INFO    ] Launching Daemon at Sat Jun 27 11:36:06 IST 2026
[2026-06-27 11:36:06,619.619 INFO    ] ================================================
[2026-06-27 11:36:06,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:36:06
[2026-06-27 11:36:07,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:36:07,431.431 INFO    ] Initializing speech engine...
[2026-06-27 11:36:07,434.434 INFO    ] 2026-06-27 11:36:07
[2026-06-27 11:36:07,634.634 INFO    ] 2026-06-27 11:36:07
[2026-06-27 11:36:07,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:36:07,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:36:07,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:36:08,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:36:08,116.116 INFO    ] time= 27/06/2026 11:36:08
[2026-06-27 11:36:08,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:36:08,159.159 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:36:08,237.237 INFO    ] No existing commands found in stream
[2026-06-27 11:36:13,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:36:13,250.250 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-27 11:36:15,520.520 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:36:15,522.522 INFO    ] Checking for system updates...
[2026-06-27 11:36:15,543.543 INFO    ] 200
[2026-06-27 11:36:15,545.545 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:36:15,577.577 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:36:15,579.579 INFO    ] No update needed
[2026-06-27 11:36:15,580.580 INFO    ] Checking for camera pi updates...
[2026-06-27 11:36:15,602.602 INFO    ] 200
[2026-06-27 11:36:15,604.604 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:36:15,627.627 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:36:15,664.664 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:36:15,666.666 INFO    ] No camera update needed
[2026-06-27 11:36:15,667.667 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:36:15,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:36:15,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:36:15,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:36:17,715.715 INFO    ] ================================================
[2026-06-27 11:36:17,732.732 INFO    ] Launching Daemon at Sat Jun 27 11:36:17 IST 2026
[2026-06-27 11:36:17,743.743 INFO    ] ================================================
[2026-06-27 11:36:18,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:36:18
[2026-06-27 11:36:18,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:36:18,540.540 INFO    ] Initializing speech engine...
[2026-06-27 11:36:18,545.545 INFO    ] 2026-06-27 11:36:18
[2026-06-27 11:36:18,749.749 INFO    ] 2026-06-27 11:36:18
[2026-06-27 11:36:18,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:36:18,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:36:18,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:36:19,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:36:19,182.182 INFO    ] time= 27/06/2026 11:36:19
[2026-06-27 11:36:19,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:36:19,198.198 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:36:19,265.265 INFO    ] No existing commands found in stream
[2026-06-27 11:36:24,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:36:24,282.282 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-27 11:36:26,205.205 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 11:36:26,206.206 INFO    ] Checking for system updates...
[2026-06-27 11:36:26,227.227 INFO    ] 200
[2026-06-27 11:36:26,228.228 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:36:26,263.263 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:36:26,264.264 INFO    ] No update needed
[2026-06-27 11:36:26,266.266 INFO    ] Checking for camera pi updates...
[2026-06-27 11:36:26,285.285 INFO    ] 200
[2026-06-27 11:36:26,287.287 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:36:26,311.311 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:36:26,348.348 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:36:26,349.349 INFO    ] No camera update needed
[2026-06-27 11:36:26,351.351 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:36:26,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:36:26,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:36:26,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:36:28,397.397 INFO    ] ================================================
[2026-06-27 11:36:28,413.413 INFO    ] Launching Daemon at Sat Jun 27 11:36:28 IST 2026
[2026-06-27 11:36:28,424.424 INFO    ] ================================================
[2026-06-27 11:36:28,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:36:28
[2026-06-27 11:36:29,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:36:29,275.275 INFO    ] Initializing speech engine...
[2026-06-27 11:36:29,281.281 INFO    ] 2026-06-27 11:36:29
[2026-06-27 11:36:29,494.494 INFO    ] 2026-06-27 11:36:29
[2026-06-27 11:36:29,523.523 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:36:29,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:36:29,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:36:29,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:36:29,922.922 INFO    ] time= 27/06/2026 11:36:29
[2026-06-27 11:36:29,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:36:29,951.951 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:36:30,019.019 INFO    ] No existing commands found in stream
[2026-06-27 11:36:35,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:36:35,032.032 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-27 11:36:37,459.459 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 11:36:37,461.461 INFO    ] Checking for system updates...
[2026-06-27 11:36:37,482.482 INFO    ] 200
[2026-06-27 11:36:37,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:36:37,518.518 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:36:37,519.519 INFO    ] No update needed
[2026-06-27 11:36:37,521.521 INFO    ] Checking for camera pi updates...
[2026-06-27 11:36:37,541.541 INFO    ] 200
[2026-06-27 11:36:37,543.543 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:36:37,567.567 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:36:37,610.610 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:36:37,612.612 INFO    ] No camera update needed
[2026-06-27 11:36:37,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:36:37,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:36:37,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:36:37,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:36:39,660.660 INFO    ] ================================================
[2026-06-27 11:36:39,675.675 INFO    ] Launching Daemon at Sat Jun 27 11:36:39 IST 2026
[2026-06-27 11:36:39,686.686 INFO    ] ================================================
[2026-06-27 11:36:40,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:36:40
[2026-06-27 11:36:40,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:36:40,463.463 INFO    ] Initializing speech engine...
[2026-06-27 11:36:40,473.473 INFO    ] 2026-06-27 11:36:40
[2026-06-27 11:36:40,676.676 INFO    ] 2026-06-27 11:36:40
[2026-06-27 11:36:40,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:36:40,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:36:40,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:36:41,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:36:41,115.115 INFO    ] time= 27/06/2026 11:36:41
[2026-06-27 11:36:41,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:36:41,122.122 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:36:41,189.189 INFO    ] No existing commands found in stream
[2026-06-27 11:36:46,199.199 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:36:46,201.201 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-27 11:36:48,383.383 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:36:48,385.385 INFO    ] Checking for system updates...
[2026-06-27 11:36:48,405.405 INFO    ] 200
[2026-06-27 11:36:48,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:36:48,437.437 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:36:48,439.439 INFO    ] No update needed
[2026-06-27 11:36:48,440.440 INFO    ] Checking for camera pi updates...
[2026-06-27 11:36:48,459.459 INFO    ] 200
[2026-06-27 11:36:48,461.461 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:36:48,489.489 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:36:48,529.529 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:36:48,530.530 INFO    ] No camera update needed
[2026-06-27 11:36:48,531.531 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:36:48,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:36:48,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:36:48,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:36:50,577.577 INFO    ] ================================================
[2026-06-27 11:36:50,592.592 INFO    ] Launching Daemon at Sat Jun 27 11:36:50 IST 2026
[2026-06-27 11:36:50,603.603 INFO    ] ================================================
[2026-06-27 11:36:50,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:36:50
[2026-06-27 11:36:51,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:36:51,499.499 INFO    ] Initializing speech engine...
[2026-06-27 11:36:51,510.510 INFO    ] 2026-06-27 11:36:51
[2026-06-27 11:36:51,721.721 INFO    ] 2026-06-27 11:36:51
[2026-06-27 11:36:51,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:36:51,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:36:51,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:36:52,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:36:52,145.145 INFO    ] time= 27/06/2026 11:36:52
[2026-06-27 11:36:52,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:36:52,173.173 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:36:52,241.241 INFO    ] No existing commands found in stream
[2026-06-27 11:36:57,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:36:57,259.259 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-27 11:36:59,394.394 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:36:59,395.395 INFO    ] Checking for system updates...
[2026-06-27 11:36:59,417.417 INFO    ] 200
[2026-06-27 11:36:59,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:36:59,452.452 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:36:59,453.453 INFO    ] No update needed
[2026-06-27 11:36:59,454.454 INFO    ] Checking for camera pi updates...
[2026-06-27 11:36:59,474.474 INFO    ] 200
[2026-06-27 11:36:59,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:36:59,499.499 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:36:59,539.539 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:36:59,541.541 INFO    ] No camera update needed
[2026-06-27 11:36:59,542.542 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:36:59,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:36:59,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:36:59,550.550 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:37:01,588.588 INFO    ] ================================================
[2026-06-27 11:37:01,603.603 INFO    ] Launching Daemon at Sat Jun 27 11:37:01 IST 2026
[2026-06-27 11:37:01,624.624 INFO    ] ================================================
[2026-06-27 11:37:02,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:37:02
[2026-06-27 11:37:02,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:37:02,621.621 INFO    ] Initializing speech engine...
[2026-06-27 11:37:02,625.625 INFO    ] 2026-06-27 11:37:02
[2026-06-27 11:37:02,822.822 INFO    ] 2026-06-27 11:37:02
[2026-06-27 11:37:02,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:37:03,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:37:03,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:37:03,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:37:03,304.304 INFO    ] time= 27/06/2026 11:37:03
[2026-06-27 11:37:03,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:37:03,326.326 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:37:03,391.391 INFO    ] No existing commands found in stream
[2026-06-27 11:37:08,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:37:08,405.405 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-27 11:37:09,574.574 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 11:37:09,576.576 INFO    ] Checking for system updates...
[2026-06-27 11:37:09,599.599 INFO    ] 200
[2026-06-27 11:37:09,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:37:09,633.633 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:37:09,635.635 INFO    ] No update needed
[2026-06-27 11:37:09,636.636 INFO    ] Checking for camera pi updates...
[2026-06-27 11:37:09,655.655 INFO    ] 200
[2026-06-27 11:37:09,657.657 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:37:09,682.682 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:37:09,723.723 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:37:09,724.724 INFO    ] No camera update needed
[2026-06-27 11:37:09,725.725 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:37:09,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:37:09,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:37:09,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:37:11,774.774 INFO    ] ================================================
[2026-06-27 11:37:11,789.789 INFO    ] Launching Daemon at Sat Jun 27 11:37:11 IST 2026
[2026-06-27 11:37:11,800.800 INFO    ] ================================================
[2026-06-27 11:37:12,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:37:12
[2026-06-27 11:37:12,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:37:12,617.617 INFO    ] Initializing speech engine...
[2026-06-27 11:37:12,622.622 INFO    ] 2026-06-27 11:37:12
[2026-06-27 11:37:12,829.829 INFO    ] 2026-06-27 11:37:12
[2026-06-27 11:37:12,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:37:13,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:37:13,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:37:13,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:37:13,249.249 INFO    ] time= 27/06/2026 11:37:13
[2026-06-27 11:37:13,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:37:13,278.278 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:37:13,343.343 INFO    ] No existing commands found in stream
[2026-06-27 11:37:18,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:37:18,356.356 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-27 11:37:21,095.095 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 11:37:21,096.096 INFO    ] Checking for system updates...
[2026-06-27 11:37:21,118.118 INFO    ] 200
[2026-06-27 11:37:21,120.120 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:37:21,150.150 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:37:21,151.151 INFO    ] No update needed
[2026-06-27 11:37:21,153.153 INFO    ] Checking for camera pi updates...
[2026-06-27 11:37:21,172.172 INFO    ] 200
[2026-06-27 11:37:21,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:37:21,197.197 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:37:21,237.237 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:37:21,238.238 INFO    ] No camera update needed
[2026-06-27 11:37:21,239.239 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:37:21,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:37:21,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:37:21,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:37:23,286.286 INFO    ] ================================================
[2026-06-27 11:37:23,302.302 INFO    ] Launching Daemon at Sat Jun 27 11:37:23 IST 2026
[2026-06-27 11:37:23,313.313 INFO    ] ================================================
[2026-06-27 11:37:23,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:37:23
[2026-06-27 11:37:23,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:37:24,111.111 INFO    ] Initializing speech engine...
[2026-06-27 11:37:24,116.116 INFO    ] 2026-06-27 11:37:24
[2026-06-27 11:37:24,326.326 INFO    ] 2026-06-27 11:37:24
[2026-06-27 11:37:24,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:37:24,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:37:24,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:37:24,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:37:24,763.763 INFO    ] time= 27/06/2026 11:37:24
[2026-06-27 11:37:24,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:37:24,836.836 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:37:24,913.913 INFO    ] No existing commands found in stream
[2026-06-27 11:37:29,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:37:29,926.926 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-27 11:37:31,970.970 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 11:37:31,972.972 INFO    ] Checking for system updates...
[2026-06-27 11:37:31,996.996 INFO    ] 200
[2026-06-27 11:37:31,997.997 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:37:32,037.037 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:37:32,039.039 INFO    ] No update needed
[2026-06-27 11:37:32,041.041 INFO    ] Checking for camera pi updates...
[2026-06-27 11:37:32,067.067 INFO    ] 200
[2026-06-27 11:37:32,069.069 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:37:32,097.097 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:37:32,122.122 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:37:32,124.124 INFO    ] No camera update needed
[2026-06-27 11:37:32,126.126 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:37:32,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:37:32,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:37:32,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:37:34,178.178 INFO    ] ================================================
[2026-06-27 11:37:34,194.194 INFO    ] Launching Daemon at Sat Jun 27 11:37:34 IST 2026
[2026-06-27 11:37:34,206.206 INFO    ] ================================================
[2026-06-27 11:37:34,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:37:34
[2026-06-27 11:37:34,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:37:35,058.058 INFO    ] Initializing speech engine...
[2026-06-27 11:37:35,069.069 INFO    ] 2026-06-27 11:37:35
[2026-06-27 11:37:35,279.279 INFO    ] 2026-06-27 11:37:35
[2026-06-27 11:37:35,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:37:35,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:37:35,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:37:35,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:37:35,704.704 INFO    ] time= 27/06/2026 11:37:35
[2026-06-27 11:37:35,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:37:35,731.731 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:37:35,799.799 INFO    ] No existing commands found in stream
[2026-06-27 11:37:40,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:37:40,817.817 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-27 11:37:41,533.533 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:37:41,535.535 INFO    ] Checking for system updates...
[2026-06-27 11:37:41,557.557 INFO    ] 200
[2026-06-27 11:37:41,559.559 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:37:41,592.592 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:37:41,594.594 INFO    ] No update needed
[2026-06-27 11:37:41,595.595 INFO    ] Checking for camera pi updates...
[2026-06-27 11:37:41,617.617 INFO    ] 200
[2026-06-27 11:37:41,618.618 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:37:41,645.645 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:37:41,789.789 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:37:41,790.790 INFO    ] No camera update needed
[2026-06-27 11:37:41,792.792 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:37:41,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:37:41,797.797 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:37:41,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:37:43,839.839 INFO    ] ================================================
[2026-06-27 11:37:43,855.855 INFO    ] Launching Daemon at Sat Jun 27 11:37:43 IST 2026
[2026-06-27 11:37:43,865.865 INFO    ] ================================================
[2026-06-27 11:37:44,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:37:44
[2026-06-27 11:37:44,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:37:44,643.643 INFO    ] Initializing speech engine...
[2026-06-27 11:37:44,656.656 INFO    ] 2026-06-27 11:37:44
[2026-06-27 11:37:44,879.879 INFO    ] 2026-06-27 11:37:44
[2026-06-27 11:37:44,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:37:45,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:37:45,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:37:45,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:37:45,310.310 INFO    ] time= 27/06/2026 11:37:45
[2026-06-27 11:37:45,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:37:45,369.369 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:37:45,456.456 INFO    ] No existing commands found in stream
[2026-06-27 11:37:50,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:37:50,468.468 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-27 11:37:50,925.925 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 11:37:50,927.927 INFO    ] Checking for system updates...
[2026-06-27 11:37:50,961.961 INFO    ] 200
[2026-06-27 11:37:50,963.963 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:37:51,017.017 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:37:51,020.020 INFO    ] No update needed
[2026-06-27 11:37:51,022.022 INFO    ] Checking for camera pi updates...
[2026-06-27 11:37:51,061.061 INFO    ] 200
[2026-06-27 11:37:51,064.064 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:37:51,112.112 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:37:51,160.160 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:37:51,162.162 INFO    ] No camera update needed
[2026-06-27 11:37:51,163.163 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:37:51,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:37:51,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:37:51,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:37:53,208.208 INFO    ] ================================================
[2026-06-27 11:37:53,223.223 INFO    ] Launching Daemon at Sat Jun 27 11:37:53 IST 2026
[2026-06-27 11:37:53,234.234 INFO    ] ================================================
[2026-06-27 11:37:53,586.586 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:37:53
[2026-06-27 11:37:53,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:37:54,084.084 INFO    ] Initializing speech engine...
[2026-06-27 11:37:54,088.088 INFO    ] 2026-06-27 11:37:54
[2026-06-27 11:37:54,296.296 INFO    ] 2026-06-27 11:37:54
[2026-06-27 11:37:54,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:37:54,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:37:54,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:37:54,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:37:54,718.718 INFO    ] time= 27/06/2026 11:37:54
[2026-06-27 11:37:54,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:37:54,746.746 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:37:54,813.813 INFO    ] No existing commands found in stream
[2026-06-27 11:37:59,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:37:59,831.831 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-27 11:38:02,331.331 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:38:02,332.332 INFO    ] Checking for system updates...
[2026-06-27 11:38:02,355.355 INFO    ] 200
[2026-06-27 11:38:02,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:38:02,391.391 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:38:02,392.392 INFO    ] No update needed
[2026-06-27 11:38:02,394.394 INFO    ] Checking for camera pi updates...
[2026-06-27 11:38:02,417.417 INFO    ] 200
[2026-06-27 11:38:02,419.419 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:38:02,445.445 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:38:02,471.471 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:38:02,472.472 INFO    ] No camera update needed
[2026-06-27 11:38:02,474.474 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:38:02,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:38:02,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:38:02,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:38:04,521.521 INFO    ] ================================================
[2026-06-27 11:38:04,537.537 INFO    ] Launching Daemon at Sat Jun 27 11:38:04 IST 2026
[2026-06-27 11:38:04,549.549 INFO    ] ================================================
[2026-06-27 11:38:04,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:38:04
[2026-06-27 11:38:05,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:38:05,431.431 INFO    ] Initializing speech engine...
[2026-06-27 11:38:05,435.435 INFO    ] 2026-06-27 11:38:05
[2026-06-27 11:38:05,647.647 INFO    ] 2026-06-27 11:38:05
[2026-06-27 11:38:05,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:38:05,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:38:05,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:38:06,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:38:06,091.091 INFO    ] time= 27/06/2026 11:38:06
[2026-06-27 11:38:06,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:38:06,098.098 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:38:06,163.163 INFO    ] No existing commands found in stream
[2026-06-27 11:38:11,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:38:11,178.178 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-27 11:38:14,230.230 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 11:38:14,232.232 INFO    ] Checking for system updates...
[2026-06-27 11:38:14,257.257 INFO    ] 200
[2026-06-27 11:38:14,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:38:14,290.290 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:38:14,292.292 INFO    ] No update needed
[2026-06-27 11:38:14,293.293 INFO    ] Checking for camera pi updates...
[2026-06-27 11:38:14,313.313 INFO    ] 200
[2026-06-27 11:38:14,315.315 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:38:14,339.339 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:38:14,386.386 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:38:14,388.388 INFO    ] No camera update needed
[2026-06-27 11:38:14,390.390 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:38:14,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:38:14,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:38:14,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:38:16,436.436 INFO    ] ================================================
[2026-06-27 11:38:16,452.452 INFO    ] Launching Daemon at Sat Jun 27 11:38:16 IST 2026
[2026-06-27 11:38:16,463.463 INFO    ] ================================================
[2026-06-27 11:38:16,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:38:16
[2026-06-27 11:38:17,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:38:17,353.353 INFO    ] Initializing speech engine...
[2026-06-27 11:38:17,358.358 INFO    ] 2026-06-27 11:38:17
[2026-06-27 11:38:17,567.567 INFO    ] 2026-06-27 11:38:17
[2026-06-27 11:38:17,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:38:17,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:38:17,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:38:17,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:38:17,987.987 INFO    ] time= 27/06/2026 11:38:17
[2026-06-27 11:38:18,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:38:18,018.018 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:38:18,083.083 INFO    ] No existing commands found in stream
[2026-06-27 11:38:23,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:38:23,098.098 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-27 11:38:27,041.041 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 11:38:27,042.042 INFO    ] Checking for system updates...
[2026-06-27 11:38:27,067.067 INFO    ] 200
[2026-06-27 11:38:27,068.068 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:38:27,099.099 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:38:27,100.100 INFO    ] No update needed
[2026-06-27 11:38:27,101.101 INFO    ] Checking for camera pi updates...
[2026-06-27 11:38:27,121.121 INFO    ] 200
[2026-06-27 11:38:27,122.122 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:38:27,145.145 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:38:27,170.170 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:38:27,171.171 INFO    ] No camera update needed
[2026-06-27 11:38:27,173.173 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:38:27,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:38:27,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:38:27,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:38:29,219.219 INFO    ] ================================================
[2026-06-27 11:38:29,235.235 INFO    ] Launching Daemon at Sat Jun 27 11:38:29 IST 2026
[2026-06-27 11:38:29,247.247 INFO    ] ================================================
[2026-06-27 11:38:29,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:38:29
[2026-06-27 11:38:29,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:38:30,125.125 INFO    ] Initializing speech engine...
[2026-06-27 11:38:30,129.129 INFO    ] 2026-06-27 11:38:30
[2026-06-27 11:38:30,337.337 INFO    ] 2026-06-27 11:38:30
[2026-06-27 11:38:30,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:38:30,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:38:30,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:38:30,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:38:30,760.760 INFO    ] time= 27/06/2026 11:38:30
[2026-06-27 11:38:30,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:38:30,799.799 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:38:30,866.866 INFO    ] No existing commands found in stream
[2026-06-27 11:38:35,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:38:35,891.891 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-27 11:38:38,705.705 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 11:38:38,707.707 INFO    ] Checking for system updates...
[2026-06-27 11:38:38,729.729 INFO    ] 200
[2026-06-27 11:38:38,731.731 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:38:38,764.764 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:38:38,765.765 INFO    ] No update needed
[2026-06-27 11:38:38,766.766 INFO    ] Checking for camera pi updates...
[2026-06-27 11:38:38,786.786 INFO    ] 200
[2026-06-27 11:38:38,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:38:38,815.815 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:38:38,851.851 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:38:38,852.852 INFO    ] No camera update needed
[2026-06-27 11:38:38,854.854 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:38:38,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:38:38,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:38:38,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:38:40,903.903 INFO    ] ================================================
[2026-06-27 11:38:40,919.919 INFO    ] Launching Daemon at Sat Jun 27 11:38:40 IST 2026
[2026-06-27 11:38:40,930.930 INFO    ] ================================================
[2026-06-27 11:38:41,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:38:41
[2026-06-27 11:38:41,593.593 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:38:41,725.725 INFO    ] Initializing speech engine...
[2026-06-27 11:38:41,730.730 INFO    ] 2026-06-27 11:38:41
[2026-06-27 11:38:41,948.948 INFO    ] 2026-06-27 11:38:41
[2026-06-27 11:38:41,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:38:42,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:38:42,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:38:42,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:38:42,379.379 INFO    ] time= 27/06/2026 11:38:42
[2026-06-27 11:38:42,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:38:42,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:38:42,508.508 INFO    ] No existing commands found in stream
[2026-06-27 11:38:47,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:38:47,519.519 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-27 11:38:50,979.979 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:38:50,980.980 INFO    ] Checking for system updates...
[2026-06-27 11:38:51,001.001 INFO    ] 200
[2026-06-27 11:38:51,002.002 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:38:51,037.037 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:38:51,038.038 INFO    ] No update needed
[2026-06-27 11:38:51,039.039 INFO    ] Checking for camera pi updates...
[2026-06-27 11:38:51,060.060 INFO    ] 200
[2026-06-27 11:38:51,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:38:51,085.085 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:38:51,127.127 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:38:51,129.129 INFO    ] No camera update needed
[2026-06-27 11:38:51,130.130 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:38:51,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:38:51,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:38:51,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:38:53,180.180 INFO    ] ================================================
[2026-06-27 11:38:53,195.195 INFO    ] Launching Daemon at Sat Jun 27 11:38:53 IST 2026
[2026-06-27 11:38:53,206.206 INFO    ] ================================================
[2026-06-27 11:38:53,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:38:53
[2026-06-27 11:38:53,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:38:53,997.997 INFO    ] Initializing speech engine...
[2026-06-27 11:38:54,002.002 INFO    ] 2026-06-27 11:38:53
[2026-06-27 11:38:54,232.232 INFO    ] 2026-06-27 11:38:54
[2026-06-27 11:38:54,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:38:54,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:38:54,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:38:54,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:38:54,663.663 INFO    ] time= 27/06/2026 11:38:54
[2026-06-27 11:38:54,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:38:54,715.715 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:38:54,791.791 INFO    ] No existing commands found in stream
[2026-06-27 11:38:59,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:38:59,804.804 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-27 11:39:01,755.755 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 11:39:01,757.757 INFO    ] Checking for system updates...
[2026-06-27 11:39:01,784.784 INFO    ] 200
[2026-06-27 11:39:01,786.786 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:39:01,829.829 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:39:01,831.831 INFO    ] No update needed
[2026-06-27 11:39:01,834.834 INFO    ] Checking for camera pi updates...
[2026-06-27 11:39:01,862.862 INFO    ] 200
[2026-06-27 11:39:01,865.865 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:39:01,905.905 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:39:01,931.931 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:39:01,933.933 INFO    ] No camera update needed
[2026-06-27 11:39:01,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:39:01,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:39:01,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:39:01,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:39:03,985.985 INFO    ] ================================================
[2026-06-27 11:39:04,000.000 INFO    ] Launching Daemon at Sat Jun 27 11:39:03 IST 2026
[2026-06-27 11:39:04,011.011 INFO    ] ================================================
[2026-06-27 11:39:04,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:39:04
[2026-06-27 11:39:04,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:39:04,819.819 INFO    ] Initializing speech engine...
[2026-06-27 11:39:04,827.827 INFO    ] 2026-06-27 11:39:04
[2026-06-27 11:39:05,042.042 INFO    ] 2026-06-27 11:39:05
[2026-06-27 11:39:05,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:39:05,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:39:05,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:39:05,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:39:05,484.484 INFO    ] time= 27/06/2026 11:39:05
[2026-06-27 11:39:05,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:39:05,491.491 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:39:05,558.558 INFO    ] No existing commands found in stream
[2026-06-27 11:39:10,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:39:10,571.571 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-27 11:39:11,893.893 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 11:39:11,895.895 INFO    ] Checking for system updates...
[2026-06-27 11:39:11,916.916 INFO    ] 200
[2026-06-27 11:39:11,918.918 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:39:11,948.948 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:39:11,950.950 INFO    ] No update needed
[2026-06-27 11:39:11,951.951 INFO    ] Checking for camera pi updates...
[2026-06-27 11:39:11,971.971 INFO    ] 200
[2026-06-27 11:39:11,973.973 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:39:11,998.998 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:39:12,034.034 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:39:12,036.036 INFO    ] No camera update needed
[2026-06-27 11:39:12,037.037 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:39:12,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:39:12,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:39:12,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:39:14,086.086 INFO    ] ================================================
[2026-06-27 11:39:14,102.102 INFO    ] Launching Daemon at Sat Jun 27 11:39:14 IST 2026
[2026-06-27 11:39:14,113.113 INFO    ] ================================================
[2026-06-27 11:39:14,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:39:14
[2026-06-27 11:39:14,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:39:14,976.976 INFO    ] Initializing speech engine...
[2026-06-27 11:39:14,980.980 INFO    ] 2026-06-27 11:39:14
[2026-06-27 11:39:15,190.190 INFO    ] 2026-06-27 11:39:15
[2026-06-27 11:39:15,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:39:15,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:39:15,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:39:15,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:39:15,636.636 INFO    ] time= 27/06/2026 11:39:15
[2026-06-27 11:39:15,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:39:15,643.643 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:39:15,710.710 INFO    ] No existing commands found in stream
[2026-06-27 11:39:20,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:39:20,723.723 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-27 11:39:24,600.600 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 11:39:24,602.602 INFO    ] Checking for system updates...
[2026-06-27 11:39:24,640.640 INFO    ] 200
[2026-06-27 11:39:24,643.643 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:39:24,698.698 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:39:24,701.701 INFO    ] No update needed
[2026-06-27 11:39:24,704.704 INFO    ] Checking for camera pi updates...
[2026-06-27 11:39:24,743.743 INFO    ] 200
[2026-06-27 11:39:24,744.744 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:39:24,771.771 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:39:24,814.814 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:39:24,816.816 INFO    ] No camera update needed
[2026-06-27 11:39:24,817.817 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:39:24,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:39:24,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:39:24,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:39:26,866.866 INFO    ] ================================================
[2026-06-27 11:39:26,881.881 INFO    ] Launching Daemon at Sat Jun 27 11:39:26 IST 2026
[2026-06-27 11:39:26,892.892 INFO    ] ================================================
[2026-06-27 11:39:27,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:39:27
[2026-06-27 11:39:27,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:39:27,695.695 INFO    ] Initializing speech engine...
[2026-06-27 11:39:27,699.699 INFO    ] 2026-06-27 11:39:27
[2026-06-27 11:39:27,904.904 INFO    ] 2026-06-27 11:39:27
[2026-06-27 11:39:27,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:39:28,117.117 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:39:28,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:39:28,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:39:28,323.323 INFO    ] time= 27/06/2026 11:39:28
[2026-06-27 11:39:28,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:39:28,351.351 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:39:28,416.416 INFO    ] No existing commands found in stream
[2026-06-27 11:39:33,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:39:33,429.429 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-27 11:39:37,016.016 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 11:39:37,018.018 INFO    ] Checking for system updates...
[2026-06-27 11:39:37,040.040 INFO    ] 200
[2026-06-27 11:39:37,041.041 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:39:37,071.071 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:39:37,072.072 INFO    ] No update needed
[2026-06-27 11:39:37,074.074 INFO    ] Checking for camera pi updates...
[2026-06-27 11:39:37,095.095 INFO    ] 200
[2026-06-27 11:39:37,096.096 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:39:37,121.121 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:39:37,160.160 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:39:37,161.161 INFO    ] No camera update needed
[2026-06-27 11:39:37,162.162 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:39:37,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:39:37,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:39:37,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:39:39,211.211 INFO    ] ================================================
[2026-06-27 11:39:39,227.227 INFO    ] Launching Daemon at Sat Jun 27 11:39:39 IST 2026
[2026-06-27 11:39:39,238.238 INFO    ] ================================================
[2026-06-27 11:39:39,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:39:39
[2026-06-27 11:39:39,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:39:40,094.094 INFO    ] Initializing speech engine...
[2026-06-27 11:39:40,100.100 INFO    ] 2026-06-27 11:39:40
[2026-06-27 11:39:40,310.310 INFO    ] 2026-06-27 11:39:40
[2026-06-27 11:39:40,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:39:40,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:39:40,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:39:40,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:39:40,732.732 INFO    ] time= 27/06/2026 11:39:40
[2026-06-27 11:39:40,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:39:40,761.761 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:39:40,828.828 INFO    ] No existing commands found in stream
[2026-06-27 11:39:45,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:39:45,846.846 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-27 11:39:48,498.498 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 11:39:48,500.500 INFO    ] Checking for system updates...
[2026-06-27 11:39:48,521.521 INFO    ] 200
[2026-06-27 11:39:48,522.522 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:39:48,568.568 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:39:48,571.571 INFO    ] No update needed
[2026-06-27 11:39:48,574.574 INFO    ] Checking for camera pi updates...
[2026-06-27 11:39:48,614.614 INFO    ] 200
[2026-06-27 11:39:48,618.618 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:39:48,651.651 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:39:48,793.793 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:39:48,794.794 INFO    ] No camera update needed
[2026-06-27 11:39:48,796.796 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:39:48,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:39:48,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:39:48,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:39:50,843.843 INFO    ] ================================================
[2026-06-27 11:39:50,860.860 INFO    ] Launching Daemon at Sat Jun 27 11:39:50 IST 2026
[2026-06-27 11:39:50,871.871 INFO    ] ================================================
[2026-06-27 11:39:51,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:39:51
[2026-06-27 11:39:51,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:39:51,674.674 INFO    ] Initializing speech engine...
[2026-06-27 11:39:51,679.679 INFO    ] 2026-06-27 11:39:51
[2026-06-27 11:39:51,884.884 INFO    ] 2026-06-27 11:39:51
[2026-06-27 11:39:51,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:39:52,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:39:52,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:39:52,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:39:52,302.302 INFO    ] time= 27/06/2026 11:39:52
[2026-06-27 11:39:52,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:39:52,332.332 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:39:52,423.423 INFO    ] No existing commands found in stream
[2026-06-27 11:39:57,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:39:57,440.440 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-27 11:39:59,787.787 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 11:39:59,789.789 INFO    ] Checking for system updates...
[2026-06-27 11:39:59,809.809 INFO    ] 200
[2026-06-27 11:39:59,811.811 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:39:59,847.847 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:39:59,849.849 INFO    ] No update needed
[2026-06-27 11:39:59,850.850 INFO    ] Checking for camera pi updates...
[2026-06-27 11:39:59,872.872 INFO    ] 200
[2026-06-27 11:39:59,873.873 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:39:59,896.896 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:39:59,938.938 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:39:59,939.939 INFO    ] No camera update needed
[2026-06-27 11:39:59,941.941 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:39:59,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:39:59,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:39:59,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:40:02,025.025 INFO    ] ================================================
[2026-06-27 11:40:02,050.050 INFO    ] Launching Daemon at Sat Jun 27 11:40:02 IST 2026
[2026-06-27 11:40:02,071.071 INFO    ] ================================================
[2026-06-27 11:40:02,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:40:02
[2026-06-27 11:40:02,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:40:03,150.150 INFO    ] Initializing speech engine...
[2026-06-27 11:40:03,156.156 INFO    ] 2026-06-27 11:40:03
[2026-06-27 11:40:03,365.365 INFO    ] 2026-06-27 11:40:03
[2026-06-27 11:40:03,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:40:03,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:40:03,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:40:03,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:40:03,785.785 INFO    ] time= 27/06/2026 11:40:03
[2026-06-27 11:40:03,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:40:03,813.813 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:40:03,880.880 INFO    ] No existing commands found in stream
[2026-06-27 11:40:08,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:40:08,892.892 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-27 11:40:19,746.746 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-06-27 11:40:19,786.786 INFO    ] ('HTTPSConnectionPool(host=\'neuustore.com\', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM06202304 (Caused by ReadTimeoutError("HTTPSConnectionPool(host=\'neuustore.com\', port=443): Read timed out. (read timeout=5)",))',)
[2026-06-27 11:40:19,795.795 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM06202304 (Caused by ReadTimeoutError("HTTPSConnectionPool(host='neuustore.com', port=443): Read timed out. (read timeout=5)",))
[2026-06-27 11:40:19,815.815 INFO    ] None
[2026-06-27 11:40:19,817.817 INFO    ] Checking for system updates...
[2026-06-27 11:40:19,858.858 INFO    ] 200
[2026-06-27 11:40:19,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:40:19,891.891 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:40:19,892.892 INFO    ] No update needed
[2026-06-27 11:40:19,894.894 INFO    ] Checking for camera pi updates...
[2026-06-27 11:40:19,914.914 INFO    ] 200
[2026-06-27 11:40:19,916.916 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:40:19,939.939 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:40:19,986.986 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:40:19,987.987 INFO    ] No camera update needed
[2026-06-27 11:40:19,988.988 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:40:19,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:40:19,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:40:19,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:40:22,037.037 INFO    ] ================================================
[2026-06-27 11:40:22,054.054 INFO    ] Launching Daemon at Sat Jun 27 11:40:22 IST 2026
[2026-06-27 11:40:22,066.066 INFO    ] ================================================
[2026-06-27 11:40:22,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:40:22
[2026-06-27 11:40:22,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:40:22,904.904 INFO    ] Initializing speech engine...
[2026-06-27 11:40:22,909.909 INFO    ] 2026-06-27 11:40:22
[2026-06-27 11:40:23,117.117 INFO    ] 2026-06-27 11:40:23
[2026-06-27 11:40:23,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:40:23,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:40:23,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:40:23,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:40:23,557.557 INFO    ] time= 27/06/2026 11:40:23
[2026-06-27 11:40:23,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:40:23,564.564 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:40:23,632.632 INFO    ] No existing commands found in stream
[2026-06-27 11:40:28,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:40:28,648.648 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-27 11:40:30,072.072 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 11:40:30,074.074 INFO    ] Checking for system updates...
[2026-06-27 11:40:30,095.095 INFO    ] 200
[2026-06-27 11:40:30,096.096 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:40:30,132.132 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:40:30,133.133 INFO    ] No update needed
[2026-06-27 11:40:30,134.134 INFO    ] Checking for camera pi updates...
[2026-06-27 11:40:30,155.155 INFO    ] 200
[2026-06-27 11:40:30,157.157 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:40:30,180.180 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:40:30,218.218 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:40:30,220.220 INFO    ] No camera update needed
[2026-06-27 11:40:30,221.221 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:40:30,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:40:30,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:40:30,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:40:32,260.260 INFO    ] ================================================
[2026-06-27 11:40:32,270.270 INFO    ] Launching Daemon at Sat Jun 27 11:40:32 IST 2026
[2026-06-27 11:40:32,278.278 INFO    ] ================================================
[2026-06-27 11:40:32,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:40:32
[2026-06-27 11:40:32,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:40:33,076.076 INFO    ] Initializing speech engine...
[2026-06-27 11:40:33,081.081 INFO    ] 2026-06-27 11:40:33
[2026-06-27 11:40:33,288.288 INFO    ] 2026-06-27 11:40:33
[2026-06-27 11:40:33,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:40:33,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:40:33,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:40:33,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:40:33,711.711 INFO    ] time= 27/06/2026 11:40:33
[2026-06-27 11:40:33,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:40:33,741.741 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:40:33,808.808 INFO    ] No existing commands found in stream
[2026-06-27 11:40:38,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:40:38,821.821 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-27 11:40:39,609.609 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 11:40:39,610.610 INFO    ] Checking for system updates...
[2026-06-27 11:40:39,631.631 INFO    ] 200
[2026-06-27 11:40:39,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:40:39,663.663 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:40:39,664.664 INFO    ] No update needed
[2026-06-27 11:40:39,665.665 INFO    ] Checking for camera pi updates...
[2026-06-27 11:40:39,685.685 INFO    ] 200
[2026-06-27 11:40:39,686.686 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:40:39,710.710 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:40:39,746.746 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:40:39,747.747 INFO    ] No camera update needed
[2026-06-27 11:40:39,748.748 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:40:39,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:40:39,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:40:39,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:40:41,794.794 INFO    ] ================================================
[2026-06-27 11:40:41,809.809 INFO    ] Launching Daemon at Sat Jun 27 11:40:41 IST 2026
[2026-06-27 11:40:41,821.821 INFO    ] ================================================
[2026-06-27 11:40:42,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:40:42
[2026-06-27 11:40:42,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:40:42,629.629 INFO    ] Initializing speech engine...
[2026-06-27 11:40:42,639.639 INFO    ] 2026-06-27 11:40:42
[2026-06-27 11:40:42,844.844 INFO    ] 2026-06-27 11:40:42
[2026-06-27 11:40:42,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:40:43,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:40:43,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:40:43,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:40:43,264.264 INFO    ] time= 27/06/2026 11:40:43
[2026-06-27 11:40:43,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:40:43,292.292 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:40:43,360.360 INFO    ] No existing commands found in stream
[2026-06-27 11:40:48,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:40:48,377.377 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-27 11:40:51,500.500 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 11:40:51,501.501 INFO    ] Checking for system updates...
[2026-06-27 11:40:51,523.523 INFO    ] 200
[2026-06-27 11:40:51,524.524 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:40:51,557.557 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:40:51,558.558 INFO    ] No update needed
[2026-06-27 11:40:51,560.560 INFO    ] Checking for camera pi updates...
[2026-06-27 11:40:51,580.580 INFO    ] 200
[2026-06-27 11:40:51,581.581 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:40:51,607.607 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:40:51,644.644 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:40:51,646.646 INFO    ] No camera update needed
[2026-06-27 11:40:51,647.647 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:40:51,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:40:51,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:40:51,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:40:53,693.693 INFO    ] ================================================
[2026-06-27 11:40:53,710.710 INFO    ] Launching Daemon at Sat Jun 27 11:40:53 IST 2026
[2026-06-27 11:40:53,721.721 INFO    ] ================================================
[2026-06-27 11:40:54,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:40:54
[2026-06-27 11:40:54,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:40:54,615.615 INFO    ] Initializing speech engine...
[2026-06-27 11:40:54,620.620 INFO    ] 2026-06-27 11:40:54
[2026-06-27 11:40:54,832.832 INFO    ] 2026-06-27 11:40:54
[2026-06-27 11:40:54,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:40:55,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:40:55,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:40:55,239.239 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:40:55,284.284 INFO    ] time= 27/06/2026 11:40:55
[2026-06-27 11:40:55,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:40:55,292.292 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:40:55,361.361 INFO    ] No existing commands found in stream
[2026-06-27 11:41:00,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:41:00,376.376 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-27 11:41:04,430.430 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 11:41:04,432.432 INFO    ] Checking for system updates...
[2026-06-27 11:41:04,455.455 INFO    ] 200
[2026-06-27 11:41:04,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:41:04,489.489 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:41:04,491.491 INFO    ] No update needed
[2026-06-27 11:41:04,492.492 INFO    ] Checking for camera pi updates...
[2026-06-27 11:41:04,512.512 INFO    ] 200
[2026-06-27 11:41:04,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:41:04,538.538 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:41:04,576.576 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:41:04,578.578 INFO    ] No camera update needed
[2026-06-27 11:41:04,579.579 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:41:04,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:41:04,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:41:04,587.587 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:41:06,625.625 INFO    ] ================================================
[2026-06-27 11:41:06,640.640 INFO    ] Launching Daemon at Sat Jun 27 11:41:06 IST 2026
[2026-06-27 11:41:06,651.651 INFO    ] ================================================
[2026-06-27 11:41:07,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:41:07
[2026-06-27 11:41:07,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:41:07,473.473 INFO    ] Initializing speech engine...
[2026-06-27 11:41:07,478.478 INFO    ] 2026-06-27 11:41:07
[2026-06-27 11:41:07,685.685 INFO    ] 2026-06-27 11:41:07
[2026-06-27 11:41:07,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:41:07,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:41:07,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:41:08,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:41:08,107.107 INFO    ] time= 27/06/2026 11:41:08
[2026-06-27 11:41:08,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:41:08,134.134 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:41:08,200.200 INFO    ] No existing commands found in stream
[2026-06-27 11:41:13,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:41:13,214.214 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-27 11:41:14,640.640 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 11:41:14,642.642 INFO    ] Checking for system updates...
[2026-06-27 11:41:14,662.662 INFO    ] 200
[2026-06-27 11:41:14,664.664 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:41:14,699.699 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:41:14,701.701 INFO    ] No update needed
[2026-06-27 11:41:14,702.702 INFO    ] Checking for camera pi updates...
[2026-06-27 11:41:14,722.722 INFO    ] 200
[2026-06-27 11:41:14,723.723 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:41:14,748.748 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:41:14,788.788 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:41:14,789.789 INFO    ] No camera update needed
[2026-06-27 11:41:14,791.791 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:41:14,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:41:14,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:41:14,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:41:16,840.840 INFO    ] ================================================
[2026-06-27 11:41:16,856.856 INFO    ] Launching Daemon at Sat Jun 27 11:41:16 IST 2026
[2026-06-27 11:41:16,867.867 INFO    ] ================================================
[2026-06-27 11:41:17,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:41:17
[2026-06-27 11:41:17,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:41:17,742.742 INFO    ] Initializing speech engine...
[2026-06-27 11:41:17,747.747 INFO    ] 2026-06-27 11:41:17
[2026-06-27 11:41:17,958.958 INFO    ] 2026-06-27 11:41:17
[2026-06-27 11:41:17,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:41:18,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:41:18,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:41:18,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:41:18,381.381 INFO    ] time= 27/06/2026 11:41:18
[2026-06-27 11:41:18,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:41:18,415.415 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:41:18,484.484 INFO    ] No existing commands found in stream
[2026-06-27 11:41:23,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:41:23,497.497 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-27 11:41:24,879.879 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 11:41:24,881.881 INFO    ] Checking for system updates...
[2026-06-27 11:41:24,902.902 INFO    ] 200
[2026-06-27 11:41:24,904.904 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:41:24,937.937 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:41:24,938.938 INFO    ] No update needed
[2026-06-27 11:41:24,940.940 INFO    ] Checking for camera pi updates...
[2026-06-27 11:41:24,963.963 INFO    ] 200
[2026-06-27 11:41:24,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:41:24,991.991 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:41:25,029.029 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:41:25,031.031 INFO    ] No camera update needed
[2026-06-27 11:41:25,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:41:25,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:41:25,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:41:25,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:41:27,080.080 INFO    ] ================================================
[2026-06-27 11:41:27,096.096 INFO    ] Launching Daemon at Sat Jun 27 11:41:27 IST 2026
[2026-06-27 11:41:27,107.107 INFO    ] ================================================
[2026-06-27 11:41:27,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:41:27
[2026-06-27 11:41:27,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:41:27,919.919 INFO    ] Initializing speech engine...
[2026-06-27 11:41:27,929.929 INFO    ] 2026-06-27 11:41:27
[2026-06-27 11:41:28,140.140 INFO    ] 2026-06-27 11:41:28
[2026-06-27 11:41:28,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:41:28,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:41:28,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:41:28,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:41:28,593.593 INFO    ] time= 27/06/2026 11:41:28
[2026-06-27 11:41:28,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:41:28,625.625 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:41:28,702.702 INFO    ] No existing commands found in stream
[2026-06-27 11:41:33,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:41:33,715.715 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-27 11:41:37,571.571 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 11:41:37,573.573 INFO    ] Checking for system updates...
[2026-06-27 11:41:37,594.594 INFO    ] 200
[2026-06-27 11:41:37,595.595 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:41:37,626.626 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:41:37,627.627 INFO    ] No update needed
[2026-06-27 11:41:37,629.629 INFO    ] Checking for camera pi updates...
[2026-06-27 11:41:37,648.648 INFO    ] 200
[2026-06-27 11:41:37,649.649 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:41:37,673.673 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:41:37,714.714 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:41:37,715.715 INFO    ] No camera update needed
[2026-06-27 11:41:37,716.716 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:41:37,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:41:37,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:41:37,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:41:39,763.763 INFO    ] ================================================
[2026-06-27 11:41:39,779.779 INFO    ] Launching Daemon at Sat Jun 27 11:41:39 IST 2026
[2026-06-27 11:41:39,789.789 INFO    ] ================================================
[2026-06-27 11:41:40,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:41:40
[2026-06-27 11:41:40,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:41:40,637.637 INFO    ] Initializing speech engine...
[2026-06-27 11:41:40,642.642 INFO    ] 2026-06-27 11:41:40
[2026-06-27 11:41:40,850.850 INFO    ] 2026-06-27 11:41:40
[2026-06-27 11:41:40,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:41:41,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:41:41,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:41:41,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:41:41,261.261 INFO    ] time= 27/06/2026 11:41:41
[2026-06-27 11:41:41,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:41:41,306.306 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:41:41,389.389 INFO    ] No existing commands found in stream
[2026-06-27 11:41:46,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:41:46,401.401 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-27 11:41:50,326.326 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 11:41:50,327.327 INFO    ] Checking for system updates...
[2026-06-27 11:41:50,351.351 INFO    ] 200
[2026-06-27 11:41:50,352.352 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:41:50,385.385 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:41:50,387.387 INFO    ] No update needed
[2026-06-27 11:41:50,388.388 INFO    ] Checking for camera pi updates...
[2026-06-27 11:41:50,409.409 INFO    ] 200
[2026-06-27 11:41:50,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:41:50,434.434 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:41:50,468.468 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:41:50,469.469 INFO    ] No camera update needed
[2026-06-27 11:41:50,470.470 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:41:50,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:41:50,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:41:50,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:41:52,509.509 INFO    ] ================================================
[2026-06-27 11:41:52,525.525 INFO    ] Launching Daemon at Sat Jun 27 11:41:52 IST 2026
[2026-06-27 11:41:52,535.535 INFO    ] ================================================
[2026-06-27 11:41:52,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:41:52
[2026-06-27 11:41:53,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:41:53,418.418 INFO    ] Initializing speech engine...
[2026-06-27 11:41:53,424.424 INFO    ] 2026-06-27 11:41:53
[2026-06-27 11:41:53,636.636 INFO    ] 2026-06-27 11:41:53
[2026-06-27 11:41:53,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:41:53,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:41:53,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:41:54,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:41:54,088.088 INFO    ] time= 27/06/2026 11:41:54
[2026-06-27 11:41:54,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:41:54,095.095 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:41:54,164.164 INFO    ] No existing commands found in stream
[2026-06-27 11:41:59,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:41:59,177.177 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-27 11:42:02,246.246 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 11:42:02,248.248 INFO    ] Checking for system updates...
[2026-06-27 11:42:02,278.278 INFO    ] 200
[2026-06-27 11:42:02,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:42:02,322.322 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:42:02,324.324 INFO    ] No update needed
[2026-06-27 11:42:02,326.326 INFO    ] Checking for camera pi updates...
[2026-06-27 11:42:02,352.352 INFO    ] 200
[2026-06-27 11:42:02,354.354 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:42:02,387.387 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:42:02,517.517 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:42:02,519.519 INFO    ] No camera update needed
[2026-06-27 11:42:02,521.521 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:42:02,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:42:02,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:42:02,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:42:04,576.576 INFO    ] ================================================
[2026-06-27 11:42:04,592.592 INFO    ] Launching Daemon at Sat Jun 27 11:42:04 IST 2026
[2026-06-27 11:42:04,602.602 INFO    ] ================================================
[2026-06-27 11:42:04,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:42:04
[2026-06-27 11:42:05,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:42:05,438.438 INFO    ] Initializing speech engine...
[2026-06-27 11:42:05,443.443 INFO    ] 2026-06-27 11:42:05
[2026-06-27 11:42:05,648.648 INFO    ] 2026-06-27 11:42:05
[2026-06-27 11:42:05,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:42:05,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:42:05,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:42:05,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:42:06,056.056 INFO    ] time= 27/06/2026 11:42:06
[2026-06-27 11:42:06,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:42:06,110.110 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:42:06,187.187 INFO    ] No existing commands found in stream
[2026-06-27 11:42:11,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:42:11,201.201 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-27 11:42:12,461.461 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 11:42:12,462.462 INFO    ] Checking for system updates...
[2026-06-27 11:42:12,483.483 INFO    ] 200
[2026-06-27 11:42:12,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:42:12,515.515 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:42:12,517.517 INFO    ] No update needed
[2026-06-27 11:42:12,518.518 INFO    ] Checking for camera pi updates...
[2026-06-27 11:42:12,539.539 INFO    ] 200
[2026-06-27 11:42:12,540.540 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:42:12,563.563 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:42:12,605.605 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:42:12,606.606 INFO    ] No camera update needed
[2026-06-27 11:42:12,608.608 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:42:12,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:42:12,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:42:12,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:42:14,655.655 INFO    ] ================================================
[2026-06-27 11:42:14,671.671 INFO    ] Launching Daemon at Sat Jun 27 11:42:14 IST 2026
[2026-06-27 11:42:14,682.682 INFO    ] ================================================
[2026-06-27 11:42:15,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:42:15
[2026-06-27 11:42:15,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:42:15,484.484 INFO    ] Initializing speech engine...
[2026-06-27 11:42:15,495.495 INFO    ] 2026-06-27 11:42:15
[2026-06-27 11:42:15,712.712 INFO    ] 2026-06-27 11:42:15
[2026-06-27 11:42:15,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:42:15,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:42:15,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:42:16,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:42:16,169.169 INFO    ] time= 27/06/2026 11:42:16
[2026-06-27 11:42:16,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:42:16,199.199 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:42:16,275.275 INFO    ] No existing commands found in stream
[2026-06-27 11:42:21,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:42:21,288.288 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-27 11:42:22,106.106 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 11:42:22,108.108 INFO    ] Checking for system updates...
[2026-06-27 11:42:22,130.130 INFO    ] 200
[2026-06-27 11:42:22,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:42:22,165.165 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:42:22,166.166 INFO    ] No update needed
[2026-06-27 11:42:22,168.168 INFO    ] Checking for camera pi updates...
[2026-06-27 11:42:22,195.195 INFO    ] 200
[2026-06-27 11:42:22,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:42:22,220.220 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:42:22,261.261 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:42:22,262.262 INFO    ] No camera update needed
[2026-06-27 11:42:22,264.264 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:42:22,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:42:22,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:42:22,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:42:24,313.313 INFO    ] ================================================
[2026-06-27 11:42:24,328.328 INFO    ] Launching Daemon at Sat Jun 27 11:42:24 IST 2026
[2026-06-27 11:42:24,339.339 INFO    ] ================================================
[2026-06-27 11:42:24,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:42:24
[2026-06-27 11:42:25,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:42:25,259.259 INFO    ] Initializing speech engine...
[2026-06-27 11:42:25,264.264 INFO    ] 2026-06-27 11:42:25
[2026-06-27 11:42:25,471.471 INFO    ] 2026-06-27 11:42:25
[2026-06-27 11:42:25,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:42:25,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:42:25,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:42:25,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:42:25,891.891 INFO    ] time= 27/06/2026 11:42:25
[2026-06-27 11:42:25,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:42:25,922.922 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:42:25,990.990 INFO    ] No existing commands found in stream
[2026-06-27 11:42:31,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:42:31,003.003 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-27 11:42:32,332.332 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 11:42:32,334.334 INFO    ] Checking for system updates...
[2026-06-27 11:42:32,358.358 INFO    ] 200
[2026-06-27 11:42:32,359.359 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:42:32,397.397 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:42:32,398.398 INFO    ] No update needed
[2026-06-27 11:42:32,400.400 INFO    ] Checking for camera pi updates...
[2026-06-27 11:42:32,422.422 INFO    ] 200
[2026-06-27 11:42:32,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:42:32,452.452 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:42:32,479.479 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:42:32,481.481 INFO    ] No camera update needed
[2026-06-27 11:42:32,483.483 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:42:32,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:42:32,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:42:32,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:42:34,531.531 INFO    ] ================================================
[2026-06-27 11:42:34,546.546 INFO    ] Launching Daemon at Sat Jun 27 11:42:34 IST 2026
[2026-06-27 11:42:34,557.557 INFO    ] ================================================
[2026-06-27 11:42:34,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:42:34
[2026-06-27 11:42:35,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:42:35,432.432 INFO    ] Initializing speech engine...
[2026-06-27 11:42:35,440.440 INFO    ] 2026-06-27 11:42:35
[2026-06-27 11:42:35,658.658 INFO    ] 2026-06-27 11:42:35
[2026-06-27 11:42:35,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:42:35,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:42:35,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:42:36,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:42:36,100.100 INFO    ] time= 27/06/2026 11:42:36
[2026-06-27 11:42:36,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:42:36,107.107 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:42:36,176.176 INFO    ] No existing commands found in stream
[2026-06-27 11:42:41,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:42:41,194.194 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-27 11:42:43,878.878 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:42:43,879.879 INFO    ] Checking for system updates...
[2026-06-27 11:42:43,901.901 INFO    ] 200
[2026-06-27 11:42:43,902.902 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:42:43,936.936 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:42:43,937.937 INFO    ] No update needed
[2026-06-27 11:42:43,938.938 INFO    ] Checking for camera pi updates...
[2026-06-27 11:42:43,961.961 INFO    ] 200
[2026-06-27 11:42:43,962.962 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:42:43,986.986 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:42:44,028.028 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:42:44,029.029 INFO    ] No camera update needed
[2026-06-27 11:42:44,031.031 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:42:44,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:42:44,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:42:44,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:42:46,071.071 INFO    ] ================================================
[2026-06-27 11:42:46,087.087 INFO    ] Launching Daemon at Sat Jun 27 11:42:46 IST 2026
[2026-06-27 11:42:46,098.098 INFO    ] ================================================
[2026-06-27 11:42:46,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:42:46
[2026-06-27 11:42:46,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:42:46,897.897 INFO    ] Initializing speech engine...
[2026-06-27 11:42:46,901.901 INFO    ] 2026-06-27 11:42:46
[2026-06-27 11:42:47,124.124 INFO    ] 2026-06-27 11:42:47
[2026-06-27 11:42:47,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:42:47,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:42:47,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:42:47,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:42:47,587.587 INFO    ] time= 27/06/2026 11:42:47
[2026-06-27 11:42:47,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:42:47,619.619 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:42:47,693.693 INFO    ] No existing commands found in stream
[2026-06-27 11:42:52,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:42:52,705.705 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-27 11:42:57,019.019 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 11:42:57,021.021 INFO    ] Checking for system updates...
[2026-06-27 11:42:57,043.043 INFO    ] 200
[2026-06-27 11:42:57,044.044 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:42:57,076.076 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:42:57,077.077 INFO    ] No update needed
[2026-06-27 11:42:57,078.078 INFO    ] Checking for camera pi updates...
[2026-06-27 11:42:57,098.098 INFO    ] 200
[2026-06-27 11:42:57,099.099 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:42:57,122.122 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:42:57,159.159 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:42:57,161.161 INFO    ] No camera update needed
[2026-06-27 11:42:57,162.162 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:42:57,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:42:57,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:42:57,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:42:59,208.208 INFO    ] ================================================
[2026-06-27 11:42:59,224.224 INFO    ] Launching Daemon at Sat Jun 27 11:42:59 IST 2026
[2026-06-27 11:42:59,234.234 INFO    ] ================================================
[2026-06-27 11:42:59,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:42:59
[2026-06-27 11:42:59,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:43:00,011.011 INFO    ] Initializing speech engine...
[2026-06-27 11:43:00,021.021 INFO    ] 2026-06-27 11:43:00
[2026-06-27 11:43:00,227.227 INFO    ] 2026-06-27 11:43:00
[2026-06-27 11:43:00,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:43:00,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:43:00,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:43:00,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:43:00,683.683 INFO    ] time= 27/06/2026 11:43:00
[2026-06-27 11:43:00,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:43:00,715.715 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:43:00,787.787 INFO    ] No existing commands found in stream
[2026-06-27 11:43:05,798.798 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:43:05,801.801 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-27 11:43:06,989.989 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 11:43:06,991.991 INFO    ] Checking for system updates...
[2026-06-27 11:43:07,012.012 INFO    ] 200
[2026-06-27 11:43:07,014.014 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:43:07,045.045 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:43:07,047.047 INFO    ] No update needed
[2026-06-27 11:43:07,048.048 INFO    ] Checking for camera pi updates...
[2026-06-27 11:43:07,068.068 INFO    ] 200
[2026-06-27 11:43:07,070.070 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:43:07,102.102 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:43:07,148.148 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:43:07,151.151 INFO    ] No camera update needed
[2026-06-27 11:43:07,153.153 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:43:07,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:43:07,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:43:07,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:43:09,211.211 INFO    ] ================================================
[2026-06-27 11:43:09,226.226 INFO    ] Launching Daemon at Sat Jun 27 11:43:09 IST 2026
[2026-06-27 11:43:09,236.236 INFO    ] ================================================
[2026-06-27 11:43:09,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:43:09
[2026-06-27 11:43:09,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:43:10,056.056 INFO    ] Initializing speech engine...
[2026-06-27 11:43:10,062.062 INFO    ] 2026-06-27 11:43:10
[2026-06-27 11:43:10,274.274 INFO    ] 2026-06-27 11:43:10
[2026-06-27 11:43:10,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:43:10,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:43:10,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:43:10,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:43:10,708.708 INFO    ] time= 27/06/2026 11:43:10
[2026-06-27 11:43:10,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:43:10,737.737 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:43:10,806.806 INFO    ] No existing commands found in stream
[2026-06-27 11:43:15,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:43:15,820.820 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-27 11:43:17,212.212 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 11:43:17,214.214 INFO    ] Checking for system updates...
[2026-06-27 11:43:17,235.235 INFO    ] 200
[2026-06-27 11:43:17,237.237 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:43:17,268.268 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:43:17,269.269 INFO    ] No update needed
[2026-06-27 11:43:17,271.271 INFO    ] Checking for camera pi updates...
[2026-06-27 11:43:17,292.292 INFO    ] 200
[2026-06-27 11:43:17,294.294 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:43:17,318.318 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:43:17,358.358 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:43:17,360.360 INFO    ] No camera update needed
[2026-06-27 11:43:17,361.361 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:43:17,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:43:17,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:43:17,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:43:19,409.409 INFO    ] ================================================
[2026-06-27 11:43:19,425.425 INFO    ] Launching Daemon at Sat Jun 27 11:43:19 IST 2026
[2026-06-27 11:43:19,435.435 INFO    ] ================================================
[2026-06-27 11:43:19,803.803 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:43:19
[2026-06-27 11:43:20,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:43:20,265.265 INFO    ] Initializing speech engine...
[2026-06-27 11:43:20,273.273 INFO    ] 2026-06-27 11:43:20
[2026-06-27 11:43:20,478.478 INFO    ] 2026-06-27 11:43:20
[2026-06-27 11:43:20,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:43:20,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:43:20,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:43:20,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:43:20,897.897 INFO    ] time= 27/06/2026 11:43:20
[2026-06-27 11:43:20,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:43:20,925.925 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:43:20,992.992 INFO    ] No existing commands found in stream
[2026-06-27 11:43:26,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:43:26,004.004 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-27 11:43:30,255.255 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 11:43:30,256.256 INFO    ] Checking for system updates...
[2026-06-27 11:43:30,277.277 INFO    ] 200
[2026-06-27 11:43:30,278.278 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:43:30,309.309 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:43:30,310.310 INFO    ] No update needed
[2026-06-27 11:43:30,312.312 INFO    ] Checking for camera pi updates...
[2026-06-27 11:43:30,334.334 INFO    ] 200
[2026-06-27 11:43:30,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:43:30,361.361 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:43:30,402.402 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:43:30,403.403 INFO    ] No camera update needed
[2026-06-27 11:43:30,405.405 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:43:30,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:43:30,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:43:30,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:43:32,446.446 INFO    ] ================================================
[2026-06-27 11:43:32,461.461 INFO    ] Launching Daemon at Sat Jun 27 11:43:32 IST 2026
[2026-06-27 11:43:32,472.472 INFO    ] ================================================
[2026-06-27 11:43:32,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:43:32
[2026-06-27 11:43:33,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:43:33,271.271 INFO    ] Initializing speech engine...
[2026-06-27 11:43:33,281.281 INFO    ] 2026-06-27 11:43:33
[2026-06-27 11:43:33,485.485 INFO    ] 2026-06-27 11:43:33
[2026-06-27 11:43:33,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:43:33,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:43:33,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:43:33,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:43:33,922.922 INFO    ] time= 27/06/2026 11:43:33
[2026-06-27 11:43:33,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:43:33,929.929 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:43:33,998.998 INFO    ] No existing commands found in stream
[2026-06-27 11:43:39,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:43:39,011.011 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-27 11:43:40,986.986 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 11:43:40,988.988 INFO    ] Checking for system updates...
[2026-06-27 11:43:41,009.009 INFO    ] 200
[2026-06-27 11:43:41,011.011 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:43:41,042.042 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:43:41,043.043 INFO    ] No update needed
[2026-06-27 11:43:41,045.045 INFO    ] Checking for camera pi updates...
[2026-06-27 11:43:41,065.065 INFO    ] 200
[2026-06-27 11:43:41,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:43:41,089.089 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:43:41,126.126 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:43:41,128.128 INFO    ] No camera update needed
[2026-06-27 11:43:41,129.129 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:43:41,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:43:41,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:43:41,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:43:43,175.175 INFO    ] ================================================
[2026-06-27 11:43:43,190.190 INFO    ] Launching Daemon at Sat Jun 27 11:43:43 IST 2026
[2026-06-27 11:43:43,201.201 INFO    ] ================================================
[2026-06-27 11:43:43,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:43:43
[2026-06-27 11:43:43,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:43:43,999.999 INFO    ] Initializing speech engine...
[2026-06-27 11:43:44,003.003 INFO    ] 2026-06-27 11:43:44
[2026-06-27 11:43:44,223.223 INFO    ] 2026-06-27 11:43:44
[2026-06-27 11:43:44,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:43:44,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:43:44,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:43:44,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:43:44,640.640 INFO    ] time= 27/06/2026 11:43:44
[2026-06-27 11:43:44,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:43:44,676.676 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:43:44,748.748 INFO    ] No existing commands found in stream
[2026-06-27 11:43:49,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:43:49,760.760 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-27 11:43:50,599.599 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 11:43:50,601.601 INFO    ] Checking for system updates...
[2026-06-27 11:43:50,621.621 INFO    ] 200
[2026-06-27 11:43:50,623.623 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:43:50,655.655 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:43:50,656.656 INFO    ] No update needed
[2026-06-27 11:43:50,658.658 INFO    ] Checking for camera pi updates...
[2026-06-27 11:43:50,677.677 INFO    ] 200
[2026-06-27 11:43:50,678.678 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:43:50,704.704 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:43:50,744.744 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:43:50,746.746 INFO    ] No camera update needed
[2026-06-27 11:43:50,747.747 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:43:50,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:43:50,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:43:50,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:43:52,792.792 INFO    ] ================================================
[2026-06-27 11:43:52,807.807 INFO    ] Launching Daemon at Sat Jun 27 11:43:52 IST 2026
[2026-06-27 11:43:52,819.819 INFO    ] ================================================
[2026-06-27 11:43:53,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:43:53
[2026-06-27 11:43:53,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:43:53,613.613 INFO    ] Initializing speech engine...
[2026-06-27 11:43:53,623.623 INFO    ] 2026-06-27 11:43:53
[2026-06-27 11:43:53,825.825 INFO    ] 2026-06-27 11:43:53
[2026-06-27 11:43:53,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:43:54,038.038 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:43:54,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:43:54,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:43:54,242.242 INFO    ] time= 27/06/2026 11:43:54
[2026-06-27 11:43:54,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:43:54,272.272 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:43:54,338.338 INFO    ] No existing commands found in stream
[2026-06-27 11:43:59,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:43:59,356.356 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-27 11:44:00,679.679 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 11:44:00,680.680 INFO    ] Checking for system updates...
[2026-06-27 11:44:00,701.701 INFO    ] 200
[2026-06-27 11:44:00,702.702 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:44:00,733.733 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:44:00,734.734 INFO    ] No update needed
[2026-06-27 11:44:00,735.735 INFO    ] Checking for camera pi updates...
[2026-06-27 11:44:00,756.756 INFO    ] 200
[2026-06-27 11:44:00,758.758 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:44:00,782.782 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:44:00,822.822 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:44:00,823.823 INFO    ] No camera update needed
[2026-06-27 11:44:00,825.825 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:44:00,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:44:00,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:44:00,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:44:02,857.857 INFO    ] ================================================
[2026-06-27 11:44:02,866.866 INFO    ] Launching Daemon at Sat Jun 27 11:44:02 IST 2026
[2026-06-27 11:44:02,872.872 INFO    ] ================================================
[2026-06-27 11:44:03,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:44:03
[2026-06-27 11:44:03,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:44:03,669.669 INFO    ] Initializing speech engine...
[2026-06-27 11:44:03,681.681 INFO    ] 2026-06-27 11:44:03
[2026-06-27 11:44:03,890.890 INFO    ] 2026-06-27 11:44:03
[2026-06-27 11:44:03,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:44:04,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:44:04,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:44:04,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:44:04,298.298 INFO    ] time= 27/06/2026 11:44:04
[2026-06-27 11:44:04,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:44:04,338.338 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:44:04,433.433 INFO    ] No existing commands found in stream
[2026-06-27 11:44:09,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:44:09,445.445 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-27 11:44:10,195.195 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 11:44:10,196.196 INFO    ] Checking for system updates...
[2026-06-27 11:44:10,217.217 INFO    ] 200
[2026-06-27 11:44:10,219.219 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:44:10,249.249 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:44:10,250.250 INFO    ] No update needed
[2026-06-27 11:44:10,252.252 INFO    ] Checking for camera pi updates...
[2026-06-27 11:44:10,273.273 INFO    ] 200
[2026-06-27 11:44:10,274.274 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:44:10,299.299 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:44:10,445.445 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:44:10,446.446 INFO    ] No camera update needed
[2026-06-27 11:44:10,448.448 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:44:10,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:44:10,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:44:10,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:44:12,496.496 INFO    ] ================================================
[2026-06-27 11:44:12,511.511 INFO    ] Launching Daemon at Sat Jun 27 11:44:12 IST 2026
[2026-06-27 11:44:12,522.522 INFO    ] ================================================
[2026-06-27 11:44:12,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:44:12
[2026-06-27 11:44:13,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:44:13,374.374 INFO    ] Initializing speech engine...
[2026-06-27 11:44:13,379.379 INFO    ] 2026-06-27 11:44:13
[2026-06-27 11:44:13,590.590 INFO    ] 2026-06-27 11:44:13
[2026-06-27 11:44:13,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:44:13,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:44:13,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:44:13,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:44:14,039.039 INFO    ] time= 27/06/2026 11:44:14
[2026-06-27 11:44:14,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:44:14,048.048 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:44:14,116.116 INFO    ] No existing commands found in stream
[2026-06-27 11:44:19,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:44:19,139.139 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-27 11:44:21,926.926 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:44:21,927.927 INFO    ] Checking for system updates...
[2026-06-27 11:44:21,949.949 INFO    ] 200
[2026-06-27 11:44:21,950.950 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:44:21,984.984 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:44:21,986.986 INFO    ] No update needed
[2026-06-27 11:44:21,987.987 INFO    ] Checking for camera pi updates...
[2026-06-27 11:44:22,014.014 INFO    ] 200
[2026-06-27 11:44:22,016.016 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:44:22,043.043 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:44:22,083.083 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:44:22,085.085 INFO    ] No camera update needed
[2026-06-27 11:44:22,086.086 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:44:22,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:44:22,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:44:22,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:44:24,134.134 INFO    ] ================================================
[2026-06-27 11:44:24,150.150 INFO    ] Launching Daemon at Sat Jun 27 11:44:24 IST 2026
[2026-06-27 11:44:24,161.161 INFO    ] ================================================
[2026-06-27 11:44:24,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:44:24
[2026-06-27 11:44:24,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:44:25,030.030 INFO    ] Initializing speech engine...
[2026-06-27 11:44:25,037.037 INFO    ] 2026-06-27 11:44:25
[2026-06-27 11:44:25,245.245 INFO    ] 2026-06-27 11:44:25
[2026-06-27 11:44:25,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:44:25,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:44:25,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:44:25,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:44:25,666.666 INFO    ] time= 27/06/2026 11:44:25
[2026-06-27 11:44:25,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:44:25,697.697 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:44:25,765.765 INFO    ] No existing commands found in stream
[2026-06-27 11:44:30,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:44:30,778.778 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-27 11:44:32,499.499 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 11:44:32,502.502 INFO    ] Checking for system updates...
[2026-06-27 11:44:32,540.540 INFO    ] 200
[2026-06-27 11:44:32,542.542 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:44:32,596.596 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:44:32,599.599 INFO    ] No update needed
[2026-06-27 11:44:32,601.601 INFO    ] Checking for camera pi updates...
[2026-06-27 11:44:32,635.635 INFO    ] 200
[2026-06-27 11:44:32,637.637 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:44:32,679.679 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:44:32,705.705 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:44:32,706.706 INFO    ] No camera update needed
[2026-06-27 11:44:32,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:44:32,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:44:32,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:44:32,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:44:34,754.754 INFO    ] ================================================
[2026-06-27 11:44:34,770.770 INFO    ] Launching Daemon at Sat Jun 27 11:44:34 IST 2026
[2026-06-27 11:44:34,782.782 INFO    ] ================================================
[2026-06-27 11:44:35,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:44:35
[2026-06-27 11:44:35,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:44:35,634.634 INFO    ] Initializing speech engine...
[2026-06-27 11:44:35,647.647 INFO    ] 2026-06-27 11:44:35
[2026-06-27 11:44:35,863.863 INFO    ] 2026-06-27 11:44:35
[2026-06-27 11:44:35,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:44:36,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:44:36,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:44:36,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:44:36,306.306 INFO    ] time= 27/06/2026 11:44:36
[2026-06-27 11:44:36,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:44:36,314.314 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:44:36,380.380 INFO    ] No existing commands found in stream
[2026-06-27 11:44:41,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:44:41,398.398 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-27 11:44:45,064.064 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:44:45,066.066 INFO    ] Checking for system updates...
[2026-06-27 11:44:45,087.087 INFO    ] 200
[2026-06-27 11:44:45,089.089 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:44:45,123.123 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:44:45,124.124 INFO    ] No update needed
[2026-06-27 11:44:45,126.126 INFO    ] Checking for camera pi updates...
[2026-06-27 11:44:45,150.150 INFO    ] 200
[2026-06-27 11:44:45,151.151 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:44:45,178.178 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:44:45,217.217 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:44:45,218.218 INFO    ] No camera update needed
[2026-06-27 11:44:45,220.220 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:44:45,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:44:45,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:44:45,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:44:47,267.267 INFO    ] ================================================
[2026-06-27 11:44:47,283.283 INFO    ] Launching Daemon at Sat Jun 27 11:44:47 IST 2026
[2026-06-27 11:44:47,294.294 INFO    ] ================================================
[2026-06-27 11:44:47,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:44:47
[2026-06-27 11:44:48,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:44:48,166.166 INFO    ] Initializing speech engine...
[2026-06-27 11:44:48,176.176 INFO    ] 2026-06-27 11:44:48
[2026-06-27 11:44:48,387.387 INFO    ] 2026-06-27 11:44:48
[2026-06-27 11:44:48,416.416 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:44:48,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:44:48,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:44:48,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:44:48,833.833 INFO    ] time= 27/06/2026 11:44:48
[2026-06-27 11:44:48,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:44:48,837.837 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:44:48,904.904 INFO    ] No existing commands found in stream
[2026-06-27 11:44:53,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:44:53,922.922 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-27 11:44:56,603.603 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 11:44:56,604.604 INFO    ] Checking for system updates...
[2026-06-27 11:44:56,627.627 INFO    ] 200
[2026-06-27 11:44:56,629.629 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:44:56,663.663 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:44:56,664.664 INFO    ] No update needed
[2026-06-27 11:44:56,666.666 INFO    ] Checking for camera pi updates...
[2026-06-27 11:44:56,686.686 INFO    ] 200
[2026-06-27 11:44:56,687.687 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:44:56,715.715 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:44:56,752.752 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:44:56,754.754 INFO    ] No camera update needed
[2026-06-27 11:44:56,756.756 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:44:56,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:44:56,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:44:56,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:44:58,803.803 INFO    ] ================================================
[2026-06-27 11:44:58,819.819 INFO    ] Launching Daemon at Sat Jun 27 11:44:58 IST 2026
[2026-06-27 11:44:58,831.831 INFO    ] ================================================
[2026-06-27 11:44:59,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:44:59
[2026-06-27 11:44:59,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:44:59,636.636 INFO    ] Initializing speech engine...
[2026-06-27 11:44:59,641.641 INFO    ] 2026-06-27 11:44:59
[2026-06-27 11:44:59,834.834 INFO    ] 2026-06-27 11:44:59
[2026-06-27 11:44:59,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:45:00,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:45:00,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:45:00,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:45:00,307.307 INFO    ] time= 27/06/2026 11:45:00
[2026-06-27 11:45:00,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:45:00,365.365 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:45:00,444.444 INFO    ] No existing commands found in stream
[2026-06-27 11:45:05,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:45:05,456.456 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-27 11:45:08,974.974 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 11:45:08,975.975 INFO    ] Checking for system updates...
[2026-06-27 11:45:08,996.996 INFO    ] 200
[2026-06-27 11:45:08,998.998 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:45:09,031.031 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:45:09,032.032 INFO    ] No update needed
[2026-06-27 11:45:09,033.033 INFO    ] Checking for camera pi updates...
[2026-06-27 11:45:09,054.054 INFO    ] 200
[2026-06-27 11:45:09,056.056 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:45:09,079.079 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:45:09,117.117 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:45:09,118.118 INFO    ] No camera update needed
[2026-06-27 11:45:09,119.119 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:45:09,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:45:09,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:45:09,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:45:11,167.167 INFO    ] ================================================
[2026-06-27 11:45:11,184.184 INFO    ] Launching Daemon at Sat Jun 27 11:45:11 IST 2026
[2026-06-27 11:45:11,195.195 INFO    ] ================================================
[2026-06-27 11:45:11,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:45:11
[2026-06-27 11:45:11,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:45:12,039.039 INFO    ] Initializing speech engine...
[2026-06-27 11:45:12,044.044 INFO    ] 2026-06-27 11:45:12
[2026-06-27 11:45:12,255.255 INFO    ] 2026-06-27 11:45:12
[2026-06-27 11:45:12,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:45:12,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:45:12,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:45:12,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:45:12,680.680 INFO    ] time= 27/06/2026 11:45:12
[2026-06-27 11:45:12,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:45:12,711.711 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:45:12,779.779 INFO    ] No existing commands found in stream
[2026-06-27 11:45:17,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:45:17,793.793 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-27 11:45:20,559.559 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:45:20,561.561 INFO    ] Checking for system updates...
[2026-06-27 11:45:20,584.584 INFO    ] 200
[2026-06-27 11:45:20,585.585 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:45:20,619.619 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:45:20,620.620 INFO    ] No update needed
[2026-06-27 11:45:20,621.621 INFO    ] Checking for camera pi updates...
[2026-06-27 11:45:20,641.641 INFO    ] 200
[2026-06-27 11:45:20,642.642 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:45:20,666.666 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:45:20,715.715 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:45:20,717.717 INFO    ] No camera update needed
[2026-06-27 11:45:20,718.718 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:45:20,719.719 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:45:20,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:45:20,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:45:22,765.765 INFO    ] ================================================
[2026-06-27 11:45:22,781.781 INFO    ] Launching Daemon at Sat Jun 27 11:45:22 IST 2026
[2026-06-27 11:45:22,793.793 INFO    ] ================================================
[2026-06-27 11:45:23,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:45:23
[2026-06-27 11:45:23,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:45:23,620.620 INFO    ] Initializing speech engine...
[2026-06-27 11:45:23,634.634 INFO    ] 2026-06-27 11:45:23
[2026-06-27 11:45:23,842.842 INFO    ] 2026-06-27 11:45:23
[2026-06-27 11:45:23,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:45:24,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:45:24,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:45:24,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:45:24,282.282 INFO    ] time= 27/06/2026 11:45:24
[2026-06-27 11:45:24,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:45:24,290.290 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:45:24,357.357 INFO    ] No existing commands found in stream
[2026-06-27 11:45:29,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:45:29,369.369 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-27 11:45:31,546.546 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:45:31,547.547 INFO    ] Checking for system updates...
[2026-06-27 11:45:31,568.568 INFO    ] 200
[2026-06-27 11:45:31,569.569 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:45:31,601.601 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:45:31,602.602 INFO    ] No update needed
[2026-06-27 11:45:31,603.603 INFO    ] Checking for camera pi updates...
[2026-06-27 11:45:31,623.623 INFO    ] 200
[2026-06-27 11:45:31,624.624 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:45:31,648.648 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:45:31,708.708 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:45:31,709.709 INFO    ] No camera update needed
[2026-06-27 11:45:31,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:45:31,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:45:31,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:45:31,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:45:33,750.750 INFO    ] ================================================
[2026-06-27 11:45:33,766.766 INFO    ] Launching Daemon at Sat Jun 27 11:45:33 IST 2026
[2026-06-27 11:45:33,777.777 INFO    ] ================================================
[2026-06-27 11:45:34,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:45:34
[2026-06-27 11:45:34,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:45:34,597.597 INFO    ] Initializing speech engine...
[2026-06-27 11:45:34,607.607 INFO    ] 2026-06-27 11:45:34
[2026-06-27 11:45:34,815.815 INFO    ] 2026-06-27 11:45:34
[2026-06-27 11:45:34,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:45:35,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:45:35,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:45:35,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:45:35,254.254 INFO    ] time= 27/06/2026 11:45:35
[2026-06-27 11:45:35,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:45:35,262.262 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:45:35,329.329 INFO    ] No existing commands found in stream
[2026-06-27 11:45:40,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:45:40,346.346 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-27 11:45:43,502.502 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:45:43,504.504 INFO    ] Checking for system updates...
[2026-06-27 11:45:43,527.527 INFO    ] 200
[2026-06-27 11:45:43,529.529 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:45:43,565.565 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:45:43,566.566 INFO    ] No update needed
[2026-06-27 11:45:43,568.568 INFO    ] Checking for camera pi updates...
[2026-06-27 11:45:43,593.593 INFO    ] 200
[2026-06-27 11:45:43,595.595 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:45:43,625.625 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:45:43,666.666 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:45:43,667.667 INFO    ] No camera update needed
[2026-06-27 11:45:43,668.668 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:45:43,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:45:43,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:45:43,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:45:45,709.709 INFO    ] ================================================
[2026-06-27 11:45:45,725.725 INFO    ] Launching Daemon at Sat Jun 27 11:45:45 IST 2026
[2026-06-27 11:45:45,734.734 INFO    ] ================================================
[2026-06-27 11:45:46,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:45:46
[2026-06-27 11:45:46,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:45:46,505.505 INFO    ] Initializing speech engine...
[2026-06-27 11:45:46,519.519 INFO    ] 2026-06-27 11:45:46
[2026-06-27 11:45:46,719.719 INFO    ] 2026-06-27 11:45:46
[2026-06-27 11:45:46,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:45:46,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:45:46,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:45:47,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:45:47,187.187 INFO    ] time= 27/06/2026 11:45:47
[2026-06-27 11:45:47,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:45:47,217.217 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:45:47,285.285 INFO    ] No existing commands found in stream
[2026-06-27 11:45:52,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:45:52,303.303 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-27 11:45:53,491.491 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 11:45:53,493.493 INFO    ] Checking for system updates...
[2026-06-27 11:45:53,514.514 INFO    ] 200
[2026-06-27 11:45:53,516.516 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:45:53,547.547 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:45:53,549.549 INFO    ] No update needed
[2026-06-27 11:45:53,550.550 INFO    ] Checking for camera pi updates...
[2026-06-27 11:45:53,570.570 INFO    ] 200
[2026-06-27 11:45:53,572.572 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:45:53,596.596 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:45:53,632.632 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:45:53,633.633 INFO    ] No camera update needed
[2026-06-27 11:45:53,635.635 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:45:53,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:45:53,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:45:53,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:45:55,683.683 INFO    ] ================================================
[2026-06-27 11:45:55,699.699 INFO    ] Launching Daemon at Sat Jun 27 11:45:55 IST 2026
[2026-06-27 11:45:55,710.710 INFO    ] ================================================
[2026-06-27 11:45:56,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:45:56
[2026-06-27 11:45:56,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:45:56,503.503 INFO    ] Initializing speech engine...
[2026-06-27 11:45:56,508.508 INFO    ] 2026-06-27 11:45:56
[2026-06-27 11:45:56,712.712 INFO    ] 2026-06-27 11:45:56
[2026-06-27 11:45:56,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:45:56,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:45:56,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:45:57,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:45:57,152.152 INFO    ] time= 27/06/2026 11:45:57
[2026-06-27 11:45:57,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:45:57,159.159 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:45:57,225.225 INFO    ] No existing commands found in stream
[2026-06-27 11:46:02,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:46:02,236.236 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-27 11:46:02,587.587 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 11:46:02,588.588 INFO    ] Checking for system updates...
[2026-06-27 11:46:02,610.610 INFO    ] 200
[2026-06-27 11:46:02,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:46:02,643.643 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:46:02,645.645 INFO    ] No update needed
[2026-06-27 11:46:02,646.646 INFO    ] Checking for camera pi updates...
[2026-06-27 11:46:02,666.666 INFO    ] 200
[2026-06-27 11:46:02,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:46:02,691.691 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:46:02,712.712 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:46:02,714.714 INFO    ] No camera update needed
[2026-06-27 11:46:02,715.715 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:46:02,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:46:02,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:46:02,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:46:04,764.764 INFO    ] ================================================
[2026-06-27 11:46:04,779.779 INFO    ] Launching Daemon at Sat Jun 27 11:46:04 IST 2026
[2026-06-27 11:46:04,791.791 INFO    ] ================================================
[2026-06-27 11:46:05,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:46:05
[2026-06-27 11:46:05,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:46:05,609.609 INFO    ] Initializing speech engine...
[2026-06-27 11:46:05,614.614 INFO    ] 2026-06-27 11:46:05
[2026-06-27 11:46:05,832.832 INFO    ] 2026-06-27 11:46:05
[2026-06-27 11:46:05,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:46:06,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:46:06,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:46:06,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:46:06,257.257 INFO    ] time= 27/06/2026 11:46:06
[2026-06-27 11:46:06,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:46:06,287.287 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:46:06,353.353 INFO    ] No existing commands found in stream
[2026-06-27 11:46:11,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:46:11,367.367 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-27 11:46:14,482.482 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 11:46:14,484.484 INFO    ] Checking for system updates...
[2026-06-27 11:46:14,504.504 INFO    ] 200
[2026-06-27 11:46:14,506.506 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:46:14,540.540 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:46:14,541.541 INFO    ] No update needed
[2026-06-27 11:46:14,542.542 INFO    ] Checking for camera pi updates...
[2026-06-27 11:46:14,562.562 INFO    ] 200
[2026-06-27 11:46:14,563.563 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:46:14,586.586 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:46:14,730.730 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:46:14,731.731 INFO    ] No camera update needed
[2026-06-27 11:46:14,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:46:14,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:46:14,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:46:14,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:46:16,779.779 INFO    ] ================================================
[2026-06-27 11:46:16,795.795 INFO    ] Launching Daemon at Sat Jun 27 11:46:16 IST 2026
[2026-06-27 11:46:16,806.806 INFO    ] ================================================
[2026-06-27 11:46:17,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:46:17
[2026-06-27 11:46:17,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:46:17,685.685 INFO    ] Initializing speech engine...
[2026-06-27 11:46:17,691.691 INFO    ] 2026-06-27 11:46:17
[2026-06-27 11:46:17,902.902 INFO    ] 2026-06-27 11:46:17
[2026-06-27 11:46:17,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:46:18,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:46:18,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:46:18,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:46:18,352.352 INFO    ] time= 27/06/2026 11:46:18
[2026-06-27 11:46:18,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:46:18,359.359 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:46:18,428.428 INFO    ] No existing commands found in stream
[2026-06-27 11:46:23,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:46:23,445.445 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-27 11:46:26,156.156 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:46:26,157.157 INFO    ] Checking for system updates...
[2026-06-27 11:46:26,178.178 INFO    ] 200
[2026-06-27 11:46:26,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:46:26,210.210 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:46:26,211.211 INFO    ] No update needed
[2026-06-27 11:46:26,213.213 INFO    ] Checking for camera pi updates...
[2026-06-27 11:46:26,234.234 INFO    ] 200
[2026-06-27 11:46:26,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:46:26,264.264 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:46:26,302.302 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:46:26,303.303 INFO    ] No camera update needed
[2026-06-27 11:46:26,306.306 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:46:26,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:46:26,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:46:26,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:46:28,358.358 INFO    ] ================================================
[2026-06-27 11:46:28,374.374 INFO    ] Launching Daemon at Sat Jun 27 11:46:28 IST 2026
[2026-06-27 11:46:28,385.385 INFO    ] ================================================
[2026-06-27 11:46:28,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:46:28
[2026-06-27 11:46:29,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:46:29,233.233 INFO    ] Initializing speech engine...
[2026-06-27 11:46:29,239.239 INFO    ] 2026-06-27 11:46:29
[2026-06-27 11:46:29,448.448 INFO    ] 2026-06-27 11:46:29
[2026-06-27 11:46:29,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:46:29,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:46:29,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:46:29,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:46:29,876.876 INFO    ] time= 27/06/2026 11:46:29
[2026-06-27 11:46:29,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:46:29,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:46:29,975.975 INFO    ] No existing commands found in stream
[2026-06-27 11:46:34,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:46:34,990.990 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-27 11:46:38,969.969 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:46:38,971.971 INFO    ] Checking for system updates...
[2026-06-27 11:46:38,992.992 INFO    ] 200
[2026-06-27 11:46:38,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:46:39,024.024 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:46:39,026.026 INFO    ] No update needed
[2026-06-27 11:46:39,027.027 INFO    ] Checking for camera pi updates...
[2026-06-27 11:46:39,047.047 INFO    ] 200
[2026-06-27 11:46:39,049.049 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:46:39,073.073 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:46:39,120.120 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:46:39,121.121 INFO    ] No camera update needed
[2026-06-27 11:46:39,122.122 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:46:39,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:46:39,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:46:39,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:46:41,170.170 INFO    ] ================================================
[2026-06-27 11:46:41,186.186 INFO    ] Launching Daemon at Sat Jun 27 11:46:41 IST 2026
[2026-06-27 11:46:41,197.197 INFO    ] ================================================
[2026-06-27 11:46:41,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:46:41
[2026-06-27 11:46:41,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:46:42,007.007 INFO    ] Initializing speech engine...
[2026-06-27 11:46:42,012.012 INFO    ] 2026-06-27 11:46:42
[2026-06-27 11:46:42,218.218 INFO    ] 2026-06-27 11:46:42
[2026-06-27 11:46:42,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:46:42,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:46:42,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:46:42,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:46:42,637.637 INFO    ] time= 27/06/2026 11:46:42
[2026-06-27 11:46:42,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:46:42,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:46:42,756.756 INFO    ] No existing commands found in stream
[2026-06-27 11:46:47,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:46:47,773.773 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-27 11:46:49,088.088 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:46:49,090.090 INFO    ] Checking for system updates...
[2026-06-27 11:46:49,112.112 INFO    ] 200
[2026-06-27 11:46:49,113.113 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:46:49,144.144 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:46:49,145.145 INFO    ] No update needed
[2026-06-27 11:46:49,146.146 INFO    ] Checking for camera pi updates...
[2026-06-27 11:46:49,166.166 INFO    ] 200
[2026-06-27 11:46:49,167.167 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:46:49,191.191 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:46:49,245.245 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:46:49,246.246 INFO    ] No camera update needed
[2026-06-27 11:46:49,247.247 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:46:49,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:46:49,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:46:49,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:46:51,294.294 INFO    ] ================================================
[2026-06-27 11:46:51,309.309 INFO    ] Launching Daemon at Sat Jun 27 11:46:51 IST 2026
[2026-06-27 11:46:51,321.321 INFO    ] ================================================
[2026-06-27 11:46:51,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:46:51
[2026-06-27 11:46:52,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:46:52,147.147 INFO    ] Initializing speech engine...
[2026-06-27 11:46:52,152.152 INFO    ] 2026-06-27 11:46:52
[2026-06-27 11:46:52,356.356 INFO    ] 2026-06-27 11:46:52
[2026-06-27 11:46:52,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:46:52,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:46:52,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:46:52,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:46:52,772.772 INFO    ] time= 27/06/2026 11:46:52
[2026-06-27 11:46:52,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:46:52,805.805 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:46:52,871.871 INFO    ] No existing commands found in stream
[2026-06-27 11:46:57,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:46:57,883.883 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-27 11:47:01,960.960 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 11:47:01,962.962 INFO    ] Checking for system updates...
[2026-06-27 11:47:02,016.016 INFO    ] 200
[2026-06-27 11:47:02,019.019 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:47:02,065.065 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:47:02,067.067 INFO    ] No update needed
[2026-06-27 11:47:02,069.069 INFO    ] Checking for camera pi updates...
[2026-06-27 11:47:02,095.095 INFO    ] 200
[2026-06-27 11:47:02,097.097 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:47:02,128.128 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:47:02,156.156 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:47:02,158.158 INFO    ] No camera update needed
[2026-06-27 11:47:02,160.160 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:47:02,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:47:02,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:47:02,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:47:04,210.210 INFO    ] ================================================
[2026-06-27 11:47:04,226.226 INFO    ] Launching Daemon at Sat Jun 27 11:47:04 IST 2026
[2026-06-27 11:47:04,237.237 INFO    ] ================================================
[2026-06-27 11:47:04,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:47:04
[2026-06-27 11:47:04,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:47:05,015.015 INFO    ] Initializing speech engine...
[2026-06-27 11:47:05,020.020 INFO    ] 2026-06-27 11:47:05
[2026-06-27 11:47:05,223.223 INFO    ] 2026-06-27 11:47:05
[2026-06-27 11:47:05,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:47:05,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:47:05,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:47:05,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:47:05,660.660 INFO    ] time= 27/06/2026 11:47:05
[2026-06-27 11:47:05,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:47:05,667.667 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:47:05,734.734 INFO    ] No existing commands found in stream
[2026-06-27 11:47:10,743.743 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:47:10,746.746 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-27 11:47:11,689.689 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 11:47:11,691.691 INFO    ] Checking for system updates...
[2026-06-27 11:47:11,727.727 INFO    ] 200
[2026-06-27 11:47:11,730.730 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:47:11,782.782 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:47:11,785.785 INFO    ] No update needed
[2026-06-27 11:47:11,787.787 INFO    ] Checking for camera pi updates...
[2026-06-27 11:47:11,821.821 INFO    ] 200
[2026-06-27 11:47:11,823.823 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:47:11,860.860 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:47:11,898.898 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:47:11,899.899 INFO    ] No camera update needed
[2026-06-27 11:47:11,900.900 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:47:11,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:47:11,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:47:11,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:47:13,947.947 INFO    ] ================================================
[2026-06-27 11:47:13,963.963 INFO    ] Launching Daemon at Sat Jun 27 11:47:13 IST 2026
[2026-06-27 11:47:13,974.974 INFO    ] ================================================
[2026-06-27 11:47:14,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:47:14
[2026-06-27 11:47:14,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:47:14,787.787 INFO    ] Initializing speech engine...
[2026-06-27 11:47:14,792.792 INFO    ] 2026-06-27 11:47:14
[2026-06-27 11:47:15,007.007 INFO    ] 2026-06-27 11:47:14
[2026-06-27 11:47:15,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:47:15,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:47:15,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:47:15,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:47:15,446.446 INFO    ] time= 27/06/2026 11:47:15
[2026-06-27 11:47:15,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:47:15,454.454 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:47:15,520.520 INFO    ] No existing commands found in stream
[2026-06-27 11:47:20,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:47:20,533.533 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-27 11:47:22,519.519 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 11:47:22,520.520 INFO    ] Checking for system updates...
[2026-06-27 11:47:22,541.541 INFO    ] 200
[2026-06-27 11:47:22,542.542 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:47:22,575.575 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:47:22,576.576 INFO    ] No update needed
[2026-06-27 11:47:22,578.578 INFO    ] Checking for camera pi updates...
[2026-06-27 11:47:22,597.597 INFO    ] 200
[2026-06-27 11:47:22,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:47:22,621.621 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:47:22,663.663 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:47:22,665.665 INFO    ] No camera update needed
[2026-06-27 11:47:22,666.666 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:47:22,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:47:22,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:47:22,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:47:24,720.720 INFO    ] ================================================
[2026-06-27 11:47:24,735.735 INFO    ] Launching Daemon at Sat Jun 27 11:47:24 IST 2026
[2026-06-27 11:47:24,746.746 INFO    ] ================================================
[2026-06-27 11:47:25,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:47:25
[2026-06-27 11:47:25,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:47:25,568.568 INFO    ] Initializing speech engine...
[2026-06-27 11:47:25,577.577 INFO    ] 2026-06-27 11:47:25
[2026-06-27 11:47:25,780.780 INFO    ] 2026-06-27 11:47:25
[2026-06-27 11:47:25,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:47:25,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:47:26,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:47:26,124.124 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:47:26,180.180 INFO    ] time= 27/06/2026 11:47:26
[2026-06-27 11:47:26,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:47:26,228.228 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:47:26,295.295 INFO    ] No existing commands found in stream
[2026-06-27 11:47:31,304.304 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:47:31,308.308 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-27 11:47:32,305.305 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 11:47:32,307.307 INFO    ] Checking for system updates...
[2026-06-27 11:47:32,334.334 INFO    ] 200
[2026-06-27 11:47:32,336.336 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:47:32,367.367 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:47:32,369.369 INFO    ] No update needed
[2026-06-27 11:47:32,370.370 INFO    ] Checking for camera pi updates...
[2026-06-27 11:47:32,391.391 INFO    ] 200
[2026-06-27 11:47:32,392.392 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:47:32,416.416 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:47:32,443.443 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:47:32,445.445 INFO    ] No camera update needed
[2026-06-27 11:47:32,446.446 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:47:32,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:47:32,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:47:32,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:47:34,496.496 INFO    ] ================================================
[2026-06-27 11:47:34,512.512 INFO    ] Launching Daemon at Sat Jun 27 11:47:34 IST 2026
[2026-06-27 11:47:34,523.523 INFO    ] ================================================
[2026-06-27 11:47:34,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:47:34
[2026-06-27 11:47:35,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:47:35,404.404 INFO    ] Initializing speech engine...
[2026-06-27 11:47:35,409.409 INFO    ] 2026-06-27 11:47:35
[2026-06-27 11:47:35,619.619 INFO    ] 2026-06-27 11:47:35
[2026-06-27 11:47:35,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:47:35,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:47:35,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:47:35,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:47:36,037.037 INFO    ] time= 27/06/2026 11:47:35
[2026-06-27 11:47:36,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:47:36,070.070 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:47:36,138.138 INFO    ] No existing commands found in stream
[2026-06-27 11:47:41,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:47:41,161.161 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-27 11:47:44,409.409 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:47:44,411.411 INFO    ] Checking for system updates...
[2026-06-27 11:47:44,434.434 INFO    ] 200
[2026-06-27 11:47:44,435.435 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:47:44,468.468 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:47:44,470.470 INFO    ] No update needed
[2026-06-27 11:47:44,471.471 INFO    ] Checking for camera pi updates...
[2026-06-27 11:47:44,492.492 INFO    ] 200
[2026-06-27 11:47:44,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:47:44,518.518 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:47:44,568.568 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:47:44,569.569 INFO    ] No camera update needed
[2026-06-27 11:47:44,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:47:44,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:47:44,575.575 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:47:44,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:47:46,609.609 INFO    ] ================================================
[2026-06-27 11:47:46,618.618 INFO    ] Launching Daemon at Sat Jun 27 11:47:46 IST 2026
[2026-06-27 11:47:46,624.624 INFO    ] ================================================
[2026-06-27 11:47:46,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:47:46
[2026-06-27 11:47:47,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:47:47,422.422 INFO    ] Initializing speech engine...
[2026-06-27 11:47:47,428.428 INFO    ] 2026-06-27 11:47:47
[2026-06-27 11:47:47,650.650 INFO    ] 2026-06-27 11:47:47
[2026-06-27 11:47:47,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:47:47,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:47:47,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:47:48,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:47:48,105.105 INFO    ] time= 27/06/2026 11:47:48
[2026-06-27 11:47:48,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:47:48,133.133 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:47:48,209.209 INFO    ] No existing commands found in stream
[2026-06-27 11:47:53,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:47:53,222.222 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-27 11:47:53,891.891 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:47:53,892.892 INFO    ] Checking for system updates...
[2026-06-27 11:47:53,914.914 INFO    ] 200
[2026-06-27 11:47:53,915.915 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:47:53,945.945 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:47:53,946.946 INFO    ] No update needed
[2026-06-27 11:47:53,948.948 INFO    ] Checking for camera pi updates...
[2026-06-27 11:47:53,969.969 INFO    ] 200
[2026-06-27 11:47:53,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:47:53,994.994 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:47:54,037.037 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:47:54,038.038 INFO    ] No camera update needed
[2026-06-27 11:47:54,040.040 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:47:54,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:47:54,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:47:54,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:47:56,089.089 INFO    ] ================================================
[2026-06-27 11:47:56,105.105 INFO    ] Launching Daemon at Sat Jun 27 11:47:56 IST 2026
[2026-06-27 11:47:56,116.116 INFO    ] ================================================
[2026-06-27 11:47:56,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:47:56
[2026-06-27 11:47:56,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:47:56,918.918 INFO    ] Initializing speech engine...
[2026-06-27 11:47:56,928.928 INFO    ] 2026-06-27 11:47:56
[2026-06-27 11:47:57,133.133 INFO    ] 2026-06-27 11:47:57
[2026-06-27 11:47:57,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:47:57,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:47:57,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:47:57,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:47:57,573.573 INFO    ] time= 27/06/2026 11:47:57
[2026-06-27 11:47:57,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:47:57,580.580 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:47:57,648.648 INFO    ] No existing commands found in stream
[2026-06-27 11:48:02,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:48:02,657.657 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-27 11:48:05,358.358 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 11:48:05,360.360 INFO    ] Checking for system updates...
[2026-06-27 11:48:05,382.382 INFO    ] 200
[2026-06-27 11:48:05,384.384 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:48:05,416.416 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:48:05,418.418 INFO    ] No update needed
[2026-06-27 11:48:05,419.419 INFO    ] Checking for camera pi updates...
[2026-06-27 11:48:05,440.440 INFO    ] 200
[2026-06-27 11:48:05,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:48:05,466.466 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:48:05,489.489 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:48:05,490.490 INFO    ] No camera update needed
[2026-06-27 11:48:05,492.492 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:48:05,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:48:05,497.497 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:48:05,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:48:07,539.539 INFO    ] ================================================
[2026-06-27 11:48:07,554.554 INFO    ] Launching Daemon at Sat Jun 27 11:48:07 IST 2026
[2026-06-27 11:48:07,565.565 INFO    ] ================================================
[2026-06-27 11:48:07,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:48:07
[2026-06-27 11:48:08,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:48:08,411.411 INFO    ] Initializing speech engine...
[2026-06-27 11:48:08,415.415 INFO    ] 2026-06-27 11:48:08
[2026-06-27 11:48:08,639.639 INFO    ] 2026-06-27 11:48:08
[2026-06-27 11:48:08,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:48:08,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:48:08,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:48:09,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:48:09,058.058 INFO    ] time= 27/06/2026 11:48:09
[2026-06-27 11:48:09,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:48:09,088.088 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:48:09,156.156 INFO    ] No existing commands found in stream
[2026-06-27 11:48:14,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:48:14,174.174 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-27 11:48:18,182.182 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 11:48:18,184.184 INFO    ] Checking for system updates...
[2026-06-27 11:48:18,206.206 INFO    ] 200
[2026-06-27 11:48:18,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:48:18,242.242 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:48:18,243.243 INFO    ] No update needed
[2026-06-27 11:48:18,245.245 INFO    ] Checking for camera pi updates...
[2026-06-27 11:48:18,265.265 INFO    ] 200
[2026-06-27 11:48:18,266.266 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:48:18,290.290 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:48:18,435.435 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:48:18,436.436 INFO    ] No camera update needed
[2026-06-27 11:48:18,438.438 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:48:18,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:48:18,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:48:18,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:48:20,487.487 INFO    ] ================================================
[2026-06-27 11:48:20,502.502 INFO    ] Launching Daemon at Sat Jun 27 11:48:20 IST 2026
[2026-06-27 11:48:20,514.514 INFO    ] ================================================
[2026-06-27 11:48:20,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:48:20
[2026-06-27 11:48:21,190.190 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:48:21,329.329 INFO    ] Initializing speech engine...
[2026-06-27 11:48:21,339.339 INFO    ] 2026-06-27 11:48:21
[2026-06-27 11:48:21,546.546 INFO    ] 2026-06-27 11:48:21
[2026-06-27 11:48:21,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:48:21,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:48:21,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:48:21,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:48:21,978.978 INFO    ] time= 27/06/2026 11:48:21
[2026-06-27 11:48:22,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:48:22,007.007 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:48:22,073.073 INFO    ] No existing commands found in stream
[2026-06-27 11:48:27,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:48:27,086.086 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-27 11:48:27,763.763 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 11:48:27,765.765 INFO    ] Checking for system updates...
[2026-06-27 11:48:27,786.786 INFO    ] 200
[2026-06-27 11:48:27,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:48:27,818.818 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:48:27,819.819 INFO    ] No update needed
[2026-06-27 11:48:27,820.820 INFO    ] Checking for camera pi updates...
[2026-06-27 11:48:27,841.841 INFO    ] 200
[2026-06-27 11:48:27,843.843 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:48:27,868.868 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:48:27,906.906 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:48:27,907.907 INFO    ] No camera update needed
[2026-06-27 11:48:27,908.908 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:48:27,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:48:27,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:48:27,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:48:29,958.958 INFO    ] ================================================
[2026-06-27 11:48:29,973.973 INFO    ] Launching Daemon at Sat Jun 27 11:48:29 IST 2026
[2026-06-27 11:48:29,984.984 INFO    ] ================================================
[2026-06-27 11:48:30,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:48:30
[2026-06-27 11:48:30,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:48:30,792.792 INFO    ] Initializing speech engine...
[2026-06-27 11:48:30,801.801 INFO    ] 2026-06-27 11:48:30
[2026-06-27 11:48:31,026.026 INFO    ] 2026-06-27 11:48:30
[2026-06-27 11:48:31,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:48:31,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:48:31,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:48:31,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:48:31,474.474 INFO    ] time= 27/06/2026 11:48:31
[2026-06-27 11:48:31,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:48:31,486.486 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:48:31,551.551 INFO    ] No existing commands found in stream
[2026-06-27 11:48:36,562.562 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:48:36,565.565 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-27 11:48:38,369.369 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 11:48:38,370.370 INFO    ] Checking for system updates...
[2026-06-27 11:48:38,392.392 INFO    ] 200
[2026-06-27 11:48:38,394.394 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:48:38,427.427 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:48:38,429.429 INFO    ] No update needed
[2026-06-27 11:48:38,430.430 INFO    ] Checking for camera pi updates...
[2026-06-27 11:48:38,450.450 INFO    ] 200
[2026-06-27 11:48:38,452.452 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:48:38,475.475 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:48:38,516.516 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:48:38,517.517 INFO    ] No camera update needed
[2026-06-27 11:48:38,519.519 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:48:38,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:48:38,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:48:38,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:48:40,564.564 INFO    ] ================================================
[2026-06-27 11:48:40,580.580 INFO    ] Launching Daemon at Sat Jun 27 11:48:40 IST 2026
[2026-06-27 11:48:40,590.590 INFO    ] ================================================
[2026-06-27 11:48:40,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:48:40
[2026-06-27 11:48:41,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:48:41,400.400 INFO    ] Initializing speech engine...
[2026-06-27 11:48:41,406.406 INFO    ] 2026-06-27 11:48:41
[2026-06-27 11:48:41,610.610 INFO    ] 2026-06-27 11:48:41
[2026-06-27 11:48:41,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:48:41,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:48:41,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:48:41,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:48:42,030.030 INFO    ] time= 27/06/2026 11:48:41
[2026-06-27 11:48:42,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:48:42,058.058 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:48:42,123.123 INFO    ] No existing commands found in stream
[2026-06-27 11:48:47,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:48:47,137.137 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-27 11:48:51,517.517 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 11:48:51,518.518 INFO    ] Checking for system updates...
[2026-06-27 11:48:51,539.539 INFO    ] 200
[2026-06-27 11:48:51,540.540 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:48:51,574.574 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:48:51,575.575 INFO    ] No update needed
[2026-06-27 11:48:51,576.576 INFO    ] Checking for camera pi updates...
[2026-06-27 11:48:51,596.596 INFO    ] 200
[2026-06-27 11:48:51,597.597 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:48:51,620.620 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:48:51,670.670 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:48:51,671.671 INFO    ] No camera update needed
[2026-06-27 11:48:51,673.673 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:48:51,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:48:51,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:48:51,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:48:53,718.718 INFO    ] ================================================
[2026-06-27 11:48:53,733.733 INFO    ] Launching Daemon at Sat Jun 27 11:48:53 IST 2026
[2026-06-27 11:48:53,743.743 INFO    ] ================================================
[2026-06-27 11:48:54,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:48:54
[2026-06-27 11:48:54,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:48:54,512.512 INFO    ] Initializing speech engine...
[2026-06-27 11:48:54,517.517 INFO    ] 2026-06-27 11:48:54
[2026-06-27 11:48:54,732.732 INFO    ] 2026-06-27 11:48:54
[2026-06-27 11:48:54,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:48:54,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:48:54,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:48:55,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:48:55,150.150 INFO    ] time= 27/06/2026 11:48:55
[2026-06-27 11:48:55,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:48:55,178.178 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:48:55,245.245 INFO    ] No existing commands found in stream
[2026-06-27 11:49:00,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:49:00,262.262 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-27 11:49:01,487.487 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 11:49:01,489.489 INFO    ] Checking for system updates...
[2026-06-27 11:49:01,517.517 INFO    ] 200
[2026-06-27 11:49:01,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:49:01,568.568 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:49:01,570.570 INFO    ] No update needed
[2026-06-27 11:49:01,572.572 INFO    ] Checking for camera pi updates...
[2026-06-27 11:49:01,602.602 INFO    ] 200
[2026-06-27 11:49:01,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:49:01,647.647 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:49:01,680.680 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:49:01,682.682 INFO    ] No camera update needed
[2026-06-27 11:49:01,684.684 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:49:01,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:49:01,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:49:01,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:49:03,734.734 INFO    ] ================================================
[2026-06-27 11:49:03,752.752 INFO    ] Launching Daemon at Sat Jun 27 11:49:03 IST 2026
[2026-06-27 11:49:03,763.763 INFO    ] ================================================
[2026-06-27 11:49:04,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:49:04
[2026-06-27 11:49:04,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:49:04,571.571 INFO    ] Initializing speech engine...
[2026-06-27 11:49:04,577.577 INFO    ] 2026-06-27 11:49:04
[2026-06-27 11:49:04,782.782 INFO    ] 2026-06-27 11:49:04
[2026-06-27 11:49:04,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:49:04,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:49:04,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:49:05,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:49:05,157.157 INFO    ] time= 27/06/2026 11:49:05
[2026-06-27 11:49:05,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:49:05,229.229 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:49:05,325.325 INFO    ] No existing commands found in stream
[2026-06-27 11:49:10,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:49:10,341.341 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-27 11:49:11,354.354 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 11:49:11,356.356 INFO    ] Checking for system updates...
[2026-06-27 11:49:11,376.376 INFO    ] 200
[2026-06-27 11:49:11,378.378 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:49:11,408.408 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:49:11,410.410 INFO    ] No update needed
[2026-06-27 11:49:11,411.411 INFO    ] Checking for camera pi updates...
[2026-06-27 11:49:11,430.430 INFO    ] 200
[2026-06-27 11:49:11,432.432 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:49:11,459.459 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:49:11,499.499 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:49:11,500.500 INFO    ] No camera update needed
[2026-06-27 11:49:11,502.502 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:49:11,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:49:11,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:49:11,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:49:13,549.549 INFO    ] ================================================
[2026-06-27 11:49:13,565.565 INFO    ] Launching Daemon at Sat Jun 27 11:49:13 IST 2026
[2026-06-27 11:49:13,576.576 INFO    ] ================================================
[2026-06-27 11:49:13,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:49:13
[2026-06-27 11:49:14,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:49:14,350.350 INFO    ] Initializing speech engine...
[2026-06-27 11:49:14,359.359 INFO    ] 2026-06-27 11:49:14
[2026-06-27 11:49:14,571.571 INFO    ] 2026-06-27 11:49:14
[2026-06-27 11:49:14,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:49:14,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:49:14,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:49:14,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:49:15,010.010 INFO    ] time= 27/06/2026 11:49:14
[2026-06-27 11:49:15,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:49:15,017.017 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:49:15,084.084 INFO    ] No existing commands found in stream
[2026-06-27 11:49:20,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:49:20,096.096 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-27 11:49:22,850.850 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 11:49:22,851.851 INFO    ] Checking for system updates...
[2026-06-27 11:49:22,872.872 INFO    ] 200
[2026-06-27 11:49:22,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:49:22,907.907 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:49:22,909.909 INFO    ] No update needed
[2026-06-27 11:49:22,910.910 INFO    ] Checking for camera pi updates...
[2026-06-27 11:49:22,934.934 INFO    ] 200
[2026-06-27 11:49:22,935.935 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:49:22,962.962 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:49:23,002.002 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:49:23,004.004 INFO    ] No camera update needed
[2026-06-27 11:49:23,005.005 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:49:23,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:49:23,010.010 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:49:23,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:49:25,053.053 INFO    ] ================================================
[2026-06-27 11:49:25,069.069 INFO    ] Launching Daemon at Sat Jun 27 11:49:25 IST 2026
[2026-06-27 11:49:25,079.079 INFO    ] ================================================
[2026-06-27 11:49:25,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:49:25
[2026-06-27 11:49:25,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:49:25,907.907 INFO    ] Initializing speech engine...
[2026-06-27 11:49:25,920.920 INFO    ] 2026-06-27 11:49:25
[2026-06-27 11:49:26,127.127 INFO    ] 2026-06-27 11:49:26
[2026-06-27 11:49:26,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:49:26,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:49:26,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:49:26,485.485 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:49:26,547.547 INFO    ] time= 27/06/2026 11:49:26
[2026-06-27 11:49:26,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:49:26,577.577 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:49:26,645.645 INFO    ] No existing commands found in stream
[2026-06-27 11:49:31,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:49:31,655.655 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-27 11:49:35,447.447 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 11:49:35,449.449 INFO    ] Checking for system updates...
[2026-06-27 11:49:35,476.476 INFO    ] 200
[2026-06-27 11:49:35,477.477 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:49:35,511.511 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:49:35,513.513 INFO    ] No update needed
[2026-06-27 11:49:35,514.514 INFO    ] Checking for camera pi updates...
[2026-06-27 11:49:35,535.535 INFO    ] 200
[2026-06-27 11:49:35,536.536 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:49:35,562.562 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:49:35,602.602 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:49:35,604.604 INFO    ] No camera update needed
[2026-06-27 11:49:35,605.605 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:49:35,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:49:35,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:49:35,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:49:37,650.650 INFO    ] ================================================
[2026-06-27 11:49:37,665.665 INFO    ] Launching Daemon at Sat Jun 27 11:49:37 IST 2026
[2026-06-27 11:49:37,676.676 INFO    ] ================================================
[2026-06-27 11:49:38,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:49:38
[2026-06-27 11:49:38,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:49:38,532.532 INFO    ] Initializing speech engine...
[2026-06-27 11:49:38,537.537 INFO    ] 2026-06-27 11:49:38
[2026-06-27 11:49:38,743.743 INFO    ] 2026-06-27 11:49:38
[2026-06-27 11:49:38,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:49:38,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:49:38,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:49:39,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:49:39,162.162 INFO    ] time= 27/06/2026 11:49:39
[2026-06-27 11:49:39,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:49:39,195.195 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:49:39,261.261 INFO    ] No existing commands found in stream
[2026-06-27 11:49:44,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:49:44,276.276 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-27 11:49:46,855.855 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 11:49:46,856.856 INFO    ] Checking for system updates...
[2026-06-27 11:49:46,877.877 INFO    ] 200
[2026-06-27 11:49:46,878.878 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:49:46,909.909 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:49:46,910.910 INFO    ] No update needed
[2026-06-27 11:49:46,911.911 INFO    ] Checking for camera pi updates...
[2026-06-27 11:49:46,933.933 INFO    ] 200
[2026-06-27 11:49:46,934.934 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:49:46,958.958 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:49:46,998.998 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:49:47,000.000 INFO    ] No camera update needed
[2026-06-27 11:49:47,001.001 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:49:47,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:49:47,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:49:47,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:49:49,049.049 INFO    ] ================================================
[2026-06-27 11:49:49,065.065 INFO    ] Launching Daemon at Sat Jun 27 11:49:49 IST 2026
[2026-06-27 11:49:49,076.076 INFO    ] ================================================
[2026-06-27 11:49:49,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:49:49
[2026-06-27 11:49:49,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:49:49,876.876 INFO    ] Initializing speech engine...
[2026-06-27 11:49:49,880.880 INFO    ] 2026-06-27 11:49:49
[2026-06-27 11:49:50,098.098 INFO    ] 2026-06-27 11:49:50
[2026-06-27 11:49:50,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:49:50,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:49:50,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:49:50,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:49:50,541.541 INFO    ] time= 27/06/2026 11:49:50
[2026-06-27 11:49:50,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:49:50,553.553 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:49:50,620.620 INFO    ] No existing commands found in stream
[2026-06-27 11:49:55,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:49:55,633.633 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-27 11:49:56,307.307 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:49:56,308.308 INFO    ] Checking for system updates...
[2026-06-27 11:49:56,330.330 INFO    ] 200
[2026-06-27 11:49:56,332.332 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:49:56,365.365 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:49:56,366.366 INFO    ] No update needed
[2026-06-27 11:49:56,371.371 INFO    ] Checking for camera pi updates...
[2026-06-27 11:49:56,390.390 INFO    ] 200
[2026-06-27 11:49:56,392.392 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:49:56,419.419 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:49:56,458.458 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:49:56,460.460 INFO    ] No camera update needed
[2026-06-27 11:49:56,461.461 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:49:56,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:49:56,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:49:56,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:49:58,509.509 INFO    ] ================================================
[2026-06-27 11:49:58,525.525 INFO    ] Launching Daemon at Sat Jun 27 11:49:58 IST 2026
[2026-06-27 11:49:58,536.536 INFO    ] ================================================
[2026-06-27 11:49:58,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:49:58
[2026-06-27 11:49:59,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:49:59,391.391 INFO    ] Initializing speech engine...
[2026-06-27 11:49:59,396.396 INFO    ] 2026-06-27 11:49:59
[2026-06-27 11:49:59,606.606 INFO    ] 2026-06-27 11:49:59
[2026-06-27 11:49:59,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:49:59,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:49:59,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:49:59,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:50:00,026.026 INFO    ] time= 27/06/2026 11:49:59
[2026-06-27 11:50:00,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:50:00,055.055 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:50:00,123.123 INFO    ] No existing commands found in stream
[2026-06-27 11:50:05,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:50:05,140.140 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-27 11:50:09,499.499 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 11:50:09,501.501 INFO    ] Checking for system updates...
[2026-06-27 11:50:09,522.522 INFO    ] 200
[2026-06-27 11:50:09,524.524 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:50:09,555.555 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:50:09,557.557 INFO    ] No update needed
[2026-06-27 11:50:09,558.558 INFO    ] Checking for camera pi updates...
[2026-06-27 11:50:09,578.578 INFO    ] 200
[2026-06-27 11:50:09,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:50:09,605.605 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:50:09,652.652 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:50:09,654.654 INFO    ] No camera update needed
[2026-06-27 11:50:09,655.655 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:50:09,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:50:09,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:50:09,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:50:11,706.706 INFO    ] ================================================
[2026-06-27 11:50:11,721.721 INFO    ] Launching Daemon at Sat Jun 27 11:50:11 IST 2026
[2026-06-27 11:50:11,732.732 INFO    ] ================================================
[2026-06-27 11:50:12,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:50:12
[2026-06-27 11:50:12,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:50:12,541.541 INFO    ] Initializing speech engine...
[2026-06-27 11:50:12,545.545 INFO    ] 2026-06-27 11:50:12
[2026-06-27 11:50:12,764.764 INFO    ] 2026-06-27 11:50:12
[2026-06-27 11:50:12,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:50:12,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:50:12,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:50:13,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:50:13,194.194 INFO    ] time= 27/06/2026 11:50:13
[2026-06-27 11:50:13,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:50:13,222.222 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:50:13,290.290 INFO    ] No existing commands found in stream
[2026-06-27 11:50:18,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:50:18,299.299 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-27 11:50:19,683.683 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 11:50:19,685.685 INFO    ] Checking for system updates...
[2026-06-27 11:50:19,707.707 INFO    ] 200
[2026-06-27 11:50:19,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:50:19,742.742 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:50:19,744.744 INFO    ] No update needed
[2026-06-27 11:50:19,745.745 INFO    ] Checking for camera pi updates...
[2026-06-27 11:50:19,766.766 INFO    ] 200
[2026-06-27 11:50:19,768.768 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:50:19,795.795 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:50:19,941.941 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:50:19,943.943 INFO    ] No camera update needed
[2026-06-27 11:50:19,946.946 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:50:19,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:50:19,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:50:19,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:50:22,000.000 INFO    ] ================================================
[2026-06-27 11:50:22,017.017 INFO    ] Launching Daemon at Sat Jun 27 11:50:22 IST 2026
[2026-06-27 11:50:22,028.028 INFO    ] ================================================
[2026-06-27 11:50:22,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:50:22
[2026-06-27 11:50:22,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:50:22,875.875 INFO    ] Initializing speech engine...
[2026-06-27 11:50:22,880.880 INFO    ] 2026-06-27 11:50:22
[2026-06-27 11:50:23,089.089 INFO    ] 2026-06-27 11:50:23
[2026-06-27 11:50:23,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:50:23,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:50:23,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:50:23,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:50:23,450.450 INFO    ] time= 27/06/2026 11:50:23
[2026-06-27 11:50:23,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:50:23,453.453 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:50:23,550.550 INFO    ] No existing commands found in stream
[2026-06-27 11:50:28,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:50:28,570.570 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-27 11:50:29,194.194 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:50:29,196.196 INFO    ] Checking for system updates...
[2026-06-27 11:50:29,218.218 INFO    ] 200
[2026-06-27 11:50:29,220.220 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:50:29,250.250 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:50:29,252.252 INFO    ] No update needed
[2026-06-27 11:50:29,253.253 INFO    ] Checking for camera pi updates...
[2026-06-27 11:50:29,273.273 INFO    ] 200
[2026-06-27 11:50:29,275.275 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:50:29,299.299 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:50:29,337.337 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:50:29,339.339 INFO    ] No camera update needed
[2026-06-27 11:50:29,340.340 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:50:29,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:50:29,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:50:29,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:50:31,390.390 INFO    ] ================================================
[2026-06-27 11:50:31,406.406 INFO    ] Launching Daemon at Sat Jun 27 11:50:31 IST 2026
[2026-06-27 11:50:31,416.416 INFO    ] ================================================
[2026-06-27 11:50:31,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:50:31
[2026-06-27 11:50:32,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:50:32,326.326 INFO    ] Initializing speech engine...
[2026-06-27 11:50:32,337.337 INFO    ] 2026-06-27 11:50:32
[2026-06-27 11:50:32,542.542 INFO    ] 2026-06-27 11:50:32
[2026-06-27 11:50:32,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:50:32,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:50:32,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:50:32,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:50:32,983.983 INFO    ] time= 27/06/2026 11:50:32
[2026-06-27 11:50:32,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:50:32,990.990 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:50:33,058.058 INFO    ] No existing commands found in stream
[2026-06-27 11:50:38,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:50:38,072.072 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-27 11:50:41,788.788 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 11:50:41,790.790 INFO    ] Checking for system updates...
[2026-06-27 11:50:41,812.812 INFO    ] 200
[2026-06-27 11:50:41,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:50:41,846.846 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:50:41,848.848 INFO    ] No update needed
[2026-06-27 11:50:41,849.849 INFO    ] Checking for camera pi updates...
[2026-06-27 11:50:41,870.870 INFO    ] 200
[2026-06-27 11:50:41,871.871 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:50:41,896.896 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:50:41,933.933 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:50:41,935.935 INFO    ] No camera update needed
[2026-06-27 11:50:41,936.936 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:50:41,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:50:41,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:50:41,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:50:43,983.983 INFO    ] ================================================
[2026-06-27 11:50:44,998.998 INFO    ] Launching Daemon at Sat Jun 27 11:50:43 IST 2026
[2026-06-27 11:50:44,009.009 INFO    ] ================================================
[2026-06-27 11:50:44,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:50:44
[2026-06-27 11:50:44,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:50:44,821.821 INFO    ] Initializing speech engine...
[2026-06-27 11:50:44,826.826 INFO    ] 2026-06-27 11:50:44
[2026-06-27 11:50:45,030.030 INFO    ] 2026-06-27 11:50:45
[2026-06-27 11:50:45,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:50:45,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:50:45,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:50:45,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:50:45,448.448 INFO    ] time= 27/06/2026 11:50:45
[2026-06-27 11:50:45,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:50:45,477.477 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:50:45,543.543 INFO    ] No existing commands found in stream
[2026-06-27 11:50:50,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:50:50,555.555 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-27 11:50:52,488.488 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 11:50:52,489.489 INFO    ] Checking for system updates...
[2026-06-27 11:50:52,511.511 INFO    ] 200
[2026-06-27 11:50:52,512.512 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:50:52,543.543 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:50:52,544.544 INFO    ] No update needed
[2026-06-27 11:50:52,546.546 INFO    ] Checking for camera pi updates...
[2026-06-27 11:50:52,565.565 INFO    ] 200
[2026-06-27 11:50:52,566.566 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:50:52,589.589 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:50:52,627.627 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:50:52,629.629 INFO    ] No camera update needed
[2026-06-27 11:50:52,630.630 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:50:52,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:50:52,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:50:52,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:50:54,678.678 INFO    ] ================================================
[2026-06-27 11:50:54,694.694 INFO    ] Launching Daemon at Sat Jun 27 11:50:54 IST 2026
[2026-06-27 11:50:54,706.706 INFO    ] ================================================
[2026-06-27 11:50:55,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:50:55
[2026-06-27 11:50:55,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:50:55,541.541 INFO    ] Initializing speech engine...
[2026-06-27 11:50:55,547.547 INFO    ] 2026-06-27 11:50:55
[2026-06-27 11:50:55,758.758 INFO    ] 2026-06-27 11:50:55
[2026-06-27 11:50:55,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:50:55,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:50:55,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:50:56,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:50:56,203.203 INFO    ] time= 27/06/2026 11:50:56
[2026-06-27 11:50:56,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:50:56,214.214 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:50:56,282.282 INFO    ] No existing commands found in stream
[2026-06-27 11:51:01,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:51:01,300.300 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-27 11:51:02,074.074 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 11:51:02,078.078 INFO    ] Checking for system updates...
[2026-06-27 11:51:02,121.121 INFO    ] 200
[2026-06-27 11:51:02,125.125 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:51:02,185.185 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:51:02,187.187 INFO    ] No update needed
[2026-06-27 11:51:02,190.190 INFO    ] Checking for camera pi updates...
[2026-06-27 11:51:02,235.235 INFO    ] 200
[2026-06-27 11:51:02,246.246 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:51:02,285.285 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:51:02,328.328 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:51:02,330.330 INFO    ] No camera update needed
[2026-06-27 11:51:02,332.332 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:51:02,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:51:02,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:51:02,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:51:04,384.384 INFO    ] ================================================
[2026-06-27 11:51:04,400.400 INFO    ] Launching Daemon at Sat Jun 27 11:51:04 IST 2026
[2026-06-27 11:51:04,411.411 INFO    ] ================================================
[2026-06-27 11:51:04,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:51:04
[2026-06-27 11:51:05,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:51:05,222.222 INFO    ] Initializing speech engine...
[2026-06-27 11:51:05,231.231 INFO    ] 2026-06-27 11:51:05
[2026-06-27 11:51:05,451.451 INFO    ] 2026-06-27 11:51:05
[2026-06-27 11:51:05,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:51:05,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:51:05,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:51:05,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:51:05,907.907 INFO    ] time= 27/06/2026 11:51:05
[2026-06-27 11:51:05,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:51:05,939.939 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:51:06,010.010 INFO    ] No existing commands found in stream
[2026-06-27 11:51:11,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:51:11,020.020 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-27 11:51:15,081.081 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:51:15,083.083 INFO    ] Checking for system updates...
[2026-06-27 11:51:15,105.105 INFO    ] 200
[2026-06-27 11:51:15,106.106 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:51:15,137.137 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:51:15,138.138 INFO    ] No update needed
[2026-06-27 11:51:15,139.139 INFO    ] Checking for camera pi updates...
[2026-06-27 11:51:15,160.160 INFO    ] 200
[2026-06-27 11:51:15,161.161 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:51:15,185.185 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:51:15,223.223 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:51:15,225.225 INFO    ] No camera update needed
[2026-06-27 11:51:15,226.226 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:51:15,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:51:15,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:51:15,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:51:17,272.272 INFO    ] ================================================
[2026-06-27 11:51:17,288.288 INFO    ] Launching Daemon at Sat Jun 27 11:51:17 IST 2026
[2026-06-27 11:51:17,299.299 INFO    ] ================================================
[2026-06-27 11:51:17,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:51:17
[2026-06-27 11:51:17,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:51:18,104.104 INFO    ] Initializing speech engine...
[2026-06-27 11:51:18,109.109 INFO    ] 2026-06-27 11:51:18
[2026-06-27 11:51:18,321.321 INFO    ] 2026-06-27 11:51:18
[2026-06-27 11:51:18,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:51:18,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:51:18,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:51:18,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:51:18,780.780 INFO    ] time= 27/06/2026 11:51:18
[2026-06-27 11:51:18,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:51:18,817.817 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:51:18,917.917 INFO    ] No existing commands found in stream
[2026-06-27 11:51:23,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:51:23,929.929 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-27 11:51:25,830.830 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:51:25,832.832 INFO    ] Checking for system updates...
[2026-06-27 11:51:25,852.852 INFO    ] 200
[2026-06-27 11:51:25,854.854 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:51:25,885.885 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:51:25,886.886 INFO    ] No update needed
[2026-06-27 11:51:25,888.888 INFO    ] Checking for camera pi updates...
[2026-06-27 11:51:25,909.909 INFO    ] 200
[2026-06-27 11:51:25,910.910 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:51:25,934.934 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:51:25,972.972 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:51:25,974.974 INFO    ] No camera update needed
[2026-06-27 11:51:25,975.975 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:51:25,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:51:25,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:51:25,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:51:28,023.023 INFO    ] ================================================
[2026-06-27 11:51:28,039.039 INFO    ] Launching Daemon at Sat Jun 27 11:51:28 IST 2026
[2026-06-27 11:51:28,051.051 INFO    ] ================================================
[2026-06-27 11:51:28,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:51:28
[2026-06-27 11:51:28,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:51:28,834.834 INFO    ] Initializing speech engine...
[2026-06-27 11:51:28,838.838 INFO    ] 2026-06-27 11:51:28
[2026-06-27 11:51:29,055.055 INFO    ] 2026-06-27 11:51:29
[2026-06-27 11:51:29,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:51:29,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:51:29,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:51:29,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:51:29,467.467 INFO    ] time= 27/06/2026 11:51:29
[2026-06-27 11:51:29,500.500 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:51:29,506.506 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:51:29,573.573 INFO    ] No existing commands found in stream
[2026-06-27 11:51:34,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:51:34,590.590 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-27 11:51:38,383.383 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 11:51:38,384.384 INFO    ] Checking for system updates...
[2026-06-27 11:51:38,405.405 INFO    ] 200
[2026-06-27 11:51:38,406.406 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:51:38,437.437 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:51:38,438.438 INFO    ] No update needed
[2026-06-27 11:51:38,439.439 INFO    ] Checking for camera pi updates...
[2026-06-27 11:51:38,460.460 INFO    ] 200
[2026-06-27 11:51:38,462.462 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:51:38,487.487 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:51:38,523.523 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:51:38,525.525 INFO    ] No camera update needed
[2026-06-27 11:51:38,526.526 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:51:38,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:51:38,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:51:38,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:51:40,573.573 INFO    ] ================================================
[2026-06-27 11:51:40,588.588 INFO    ] Launching Daemon at Sat Jun 27 11:51:40 IST 2026
[2026-06-27 11:51:40,600.600 INFO    ] ================================================
[2026-06-27 11:51:40,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:51:40
[2026-06-27 11:51:41,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:51:41,497.497 INFO    ] Initializing speech engine...
[2026-06-27 11:51:41,505.505 INFO    ] 2026-06-27 11:51:41
[2026-06-27 11:51:41,709.709 INFO    ] 2026-06-27 11:51:41
[2026-06-27 11:51:41,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:51:41,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:51:41,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:51:42,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:51:42,130.130 INFO    ] time= 27/06/2026 11:51:42
[2026-06-27 11:51:42,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:51:42,158.158 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:51:42,226.226 INFO    ] No existing commands found in stream
[2026-06-27 11:51:47,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:51:47,244.244 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-27 11:51:50,591.591 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 11:51:50,592.592 INFO    ] Checking for system updates...
[2026-06-27 11:51:50,613.613 INFO    ] 200
[2026-06-27 11:51:50,615.615 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:51:50,648.648 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:51:50,650.650 INFO    ] No update needed
[2026-06-27 11:51:50,652.652 INFO    ] Checking for camera pi updates...
[2026-06-27 11:51:50,674.674 INFO    ] 200
[2026-06-27 11:51:50,675.675 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:51:50,701.701 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:51:50,742.742 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:51:50,743.743 INFO    ] No camera update needed
[2026-06-27 11:51:50,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:51:50,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:51:50,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:51:50,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:51:52,792.792 INFO    ] ================================================
[2026-06-27 11:51:52,807.807 INFO    ] Launching Daemon at Sat Jun 27 11:51:52 IST 2026
[2026-06-27 11:51:52,818.818 INFO    ] ================================================
[2026-06-27 11:51:53,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:51:53
[2026-06-27 11:51:53,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:51:53,632.632 INFO    ] Initializing speech engine...
[2026-06-27 11:51:53,636.636 INFO    ] 2026-06-27 11:51:53
[2026-06-27 11:51:53,840.840 INFO    ] 2026-06-27 11:51:53
[2026-06-27 11:51:53,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:51:54,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:51:54,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:51:54,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:51:54,261.261 INFO    ] time= 27/06/2026 11:51:54
[2026-06-27 11:51:54,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:51:54,289.289 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:51:54,357.357 INFO    ] No existing commands found in stream
[2026-06-27 11:51:59,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:51:59,369.369 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-27 11:52:00,710.710 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 11:52:00,712.712 INFO    ] Checking for system updates...
[2026-06-27 11:52:00,733.733 INFO    ] 200
[2026-06-27 11:52:00,735.735 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:52:00,769.769 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:52:00,771.771 INFO    ] No update needed
[2026-06-27 11:52:00,772.772 INFO    ] Checking for camera pi updates...
[2026-06-27 11:52:00,793.793 INFO    ] 200
[2026-06-27 11:52:00,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:52:00,818.818 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:52:00,859.859 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:52:00,861.861 INFO    ] No camera update needed
[2026-06-27 11:52:00,862.862 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:52:00,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:52:00,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:52:00,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:52:02,897.897 INFO    ] ================================================
[2026-06-27 11:52:02,906.906 INFO    ] Launching Daemon at Sat Jun 27 11:52:02 IST 2026
[2026-06-27 11:52:02,911.911 INFO    ] ================================================
[2026-06-27 11:52:03,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:52:03
[2026-06-27 11:52:03,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:52:03,672.672 INFO    ] Initializing speech engine...
[2026-06-27 11:52:03,677.677 INFO    ] 2026-06-27 11:52:03
[2026-06-27 11:52:03,888.888 INFO    ] 2026-06-27 11:52:03
[2026-06-27 11:52:03,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:52:04,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:52:04,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:52:04,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:52:04,308.308 INFO    ] time= 27/06/2026 11:52:04
[2026-06-27 11:52:04,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:52:04,348.348 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:52:04,445.445 INFO    ] No existing commands found in stream
[2026-06-27 11:52:09,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:52:09,457.457 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-27 11:52:11,389.389 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 11:52:11,390.390 INFO    ] Checking for system updates...
[2026-06-27 11:52:11,411.411 INFO    ] 200
[2026-06-27 11:52:11,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:52:11,443.443 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:52:11,445.445 INFO    ] No update needed
[2026-06-27 11:52:11,446.446 INFO    ] Checking for camera pi updates...
[2026-06-27 11:52:11,466.466 INFO    ] 200
[2026-06-27 11:52:11,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:52:11,490.490 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:52:11,527.527 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:52:11,528.528 INFO    ] No camera update needed
[2026-06-27 11:52:11,529.529 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:52:11,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:52:11,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:52:11,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:52:13,576.576 INFO    ] ================================================
[2026-06-27 11:52:13,592.592 INFO    ] Launching Daemon at Sat Jun 27 11:52:13 IST 2026
[2026-06-27 11:52:13,604.604 INFO    ] ================================================
[2026-06-27 11:52:13,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:52:13
[2026-06-27 11:52:14,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:52:14,405.405 INFO    ] Initializing speech engine...
[2026-06-27 11:52:14,410.410 INFO    ] 2026-06-27 11:52:14
[2026-06-27 11:52:14,616.616 INFO    ] 2026-06-27 11:52:14
[2026-06-27 11:52:14,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:52:14,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:52:14,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:52:14,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:52:15,042.042 INFO    ] time= 27/06/2026 11:52:14
[2026-06-27 11:52:15,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:52:15,073.073 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:52:15,142.142 INFO    ] No existing commands found in stream
[2026-06-27 11:52:20,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:52:20,159.159 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-27 11:52:21,088.088 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 11:52:21,090.090 INFO    ] Checking for system updates...
[2026-06-27 11:52:21,111.111 INFO    ] 200
[2026-06-27 11:52:21,112.112 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:52:21,143.143 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:52:21,145.145 INFO    ] No update needed
[2026-06-27 11:52:21,146.146 INFO    ] Checking for camera pi updates...
[2026-06-27 11:52:21,167.167 INFO    ] 200
[2026-06-27 11:52:21,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:52:21,193.193 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:52:21,342.342 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:52:21,343.343 INFO    ] No camera update needed
[2026-06-27 11:52:21,344.344 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:52:21,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:52:21,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:52:21,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:52:23,390.390 INFO    ] ================================================
[2026-06-27 11:52:23,406.406 INFO    ] Launching Daemon at Sat Jun 27 11:52:23 IST 2026
[2026-06-27 11:52:23,417.417 INFO    ] ================================================
[2026-06-27 11:52:23,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:52:23
[2026-06-27 11:52:24,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:52:24,246.246 INFO    ] Initializing speech engine...
[2026-06-27 11:52:24,255.255 INFO    ] 2026-06-27 11:52:24
[2026-06-27 11:52:24,469.469 INFO    ] 2026-06-27 11:52:24
[2026-06-27 11:52:24,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:52:24,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:52:24,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:52:24,848.848 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:52:24,904.904 INFO    ] time= 27/06/2026 11:52:24
[2026-06-27 11:52:24,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:52:24,957.957 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:52:25,033.033 INFO    ] No existing commands found in stream
[2026-06-27 11:52:30,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:52:30,047.047 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-27 11:52:33,025.025 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:52:33,026.026 INFO    ] Checking for system updates...
[2026-06-27 11:52:33,047.047 INFO    ] 200
[2026-06-27 11:52:33,048.048 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:52:33,081.081 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:52:33,083.083 INFO    ] No update needed
[2026-06-27 11:52:33,084.084 INFO    ] Checking for camera pi updates...
[2026-06-27 11:52:33,105.105 INFO    ] 200
[2026-06-27 11:52:33,106.106 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:52:33,130.130 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:52:33,165.165 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:52:33,167.167 INFO    ] No camera update needed
[2026-06-27 11:52:33,168.168 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:52:33,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:52:33,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:52:33,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:52:35,214.214 INFO    ] ================================================
[2026-06-27 11:52:35,229.229 INFO    ] Launching Daemon at Sat Jun 27 11:52:35 IST 2026
[2026-06-27 11:52:35,240.240 INFO    ] ================================================
[2026-06-27 11:52:35,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:52:35
[2026-06-27 11:52:35,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:52:36,073.073 INFO    ] Initializing speech engine...
[2026-06-27 11:52:36,078.078 INFO    ] 2026-06-27 11:52:36
[2026-06-27 11:52:36,284.284 INFO    ] 2026-06-27 11:52:36
[2026-06-27 11:52:36,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:52:36,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:52:36,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:52:36,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:52:36,726.726 INFO    ] time= 27/06/2026 11:52:36
[2026-06-27 11:52:36,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:52:36,734.734 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:52:36,806.806 INFO    ] No existing commands found in stream
[2026-06-27 11:52:41,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:52:41,819.819 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-27 11:52:44,052.052 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 11:52:44,054.054 INFO    ] Checking for system updates...
[2026-06-27 11:52:44,076.076 INFO    ] 200
[2026-06-27 11:52:44,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:52:44,109.109 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:52:44,110.110 INFO    ] No update needed
[2026-06-27 11:52:44,112.112 INFO    ] Checking for camera pi updates...
[2026-06-27 11:52:44,134.134 INFO    ] 200
[2026-06-27 11:52:44,136.136 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:52:44,160.160 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:52:44,182.182 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:52:44,183.183 INFO    ] No camera update needed
[2026-06-27 11:52:44,185.185 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:52:44,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:52:44,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:52:44,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:52:46,231.231 INFO    ] ================================================
[2026-06-27 11:52:46,246.246 INFO    ] Launching Daemon at Sat Jun 27 11:52:46 IST 2026
[2026-06-27 11:52:46,257.257 INFO    ] ================================================
[2026-06-27 11:52:46,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:52:46
[2026-06-27 11:52:46,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:52:47,063.063 INFO    ] Initializing speech engine...
[2026-06-27 11:52:47,066.066 INFO    ] 2026-06-27 11:52:47
[2026-06-27 11:52:47,288.288 INFO    ] 2026-06-27 11:52:47
[2026-06-27 11:52:47,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:52:47,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:52:47,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:52:47,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:52:47,706.706 INFO    ] time= 27/06/2026 11:52:47
[2026-06-27 11:52:47,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:52:47,736.736 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:52:47,804.804 INFO    ] No existing commands found in stream
[2026-06-27 11:52:52,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:52:52,820.820 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-27 11:52:56,046.046 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 11:52:56,047.047 INFO    ] Checking for system updates...
[2026-06-27 11:52:56,068.068 INFO    ] 200
[2026-06-27 11:52:56,069.069 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:52:56,105.105 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:52:56,107.107 INFO    ] No update needed
[2026-06-27 11:52:56,108.108 INFO    ] Checking for camera pi updates...
[2026-06-27 11:52:56,129.129 INFO    ] 200
[2026-06-27 11:52:56,130.130 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:52:56,156.156 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:52:56,180.180 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:52:56,182.182 INFO    ] No camera update needed
[2026-06-27 11:52:56,183.183 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:52:56,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:52:56,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:52:56,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:52:58,228.228 INFO    ] ================================================
[2026-06-27 11:52:58,243.243 INFO    ] Launching Daemon at Sat Jun 27 11:52:58 IST 2026
[2026-06-27 11:52:58,255.255 INFO    ] ================================================
[2026-06-27 11:52:58,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:52:58
[2026-06-27 11:52:58,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:52:59,085.085 INFO    ] Initializing speech engine...
[2026-06-27 11:52:59,089.089 INFO    ] 2026-06-27 11:52:59
[2026-06-27 11:52:59,292.292 INFO    ] 2026-06-27 11:52:59
[2026-06-27 11:52:59,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:52:59,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:52:59,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:52:59,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:52:59,714.714 INFO    ] time= 27/06/2026 11:52:59
[2026-06-27 11:52:59,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:52:59,741.741 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:52:59,808.808 INFO    ] No existing commands found in stream
[2026-06-27 11:53:04,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:53:04,820.820 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-27 11:53:05,351.351 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 11:53:05,353.353 INFO    ] Checking for system updates...
[2026-06-27 11:53:05,373.373 INFO    ] 200
[2026-06-27 11:53:05,375.375 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:53:05,405.405 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:53:05,406.406 INFO    ] No update needed
[2026-06-27 11:53:05,408.408 INFO    ] Checking for camera pi updates...
[2026-06-27 11:53:05,429.429 INFO    ] 200
[2026-06-27 11:53:05,431.431 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:53:05,455.455 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:53:05,492.492 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:53:05,493.493 INFO    ] No camera update needed
[2026-06-27 11:53:05,495.495 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:53:05,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:53:05,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:53:05,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:53:07,541.541 INFO    ] ================================================
[2026-06-27 11:53:07,556.556 INFO    ] Launching Daemon at Sat Jun 27 11:53:07 IST 2026
[2026-06-27 11:53:07,568.568 INFO    ] ================================================
[2026-06-27 11:53:07,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:53:07
[2026-06-27 11:53:08,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:53:08,348.348 INFO    ] Initializing speech engine...
[2026-06-27 11:53:08,358.358 INFO    ] 2026-06-27 11:53:08
[2026-06-27 11:53:08,567.567 INFO    ] 2026-06-27 11:53:08
[2026-06-27 11:53:08,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:53:08,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:53:08,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:53:08,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:53:08,951.951 INFO    ] time= 27/06/2026 11:53:08
[2026-06-27 11:53:08,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:53:08,990.990 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:53:09,091.091 INFO    ] No existing commands found in stream
[2026-06-27 11:53:14,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:53:14,105.105 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-27 11:53:17,591.591 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:53:17,593.593 INFO    ] Checking for system updates...
[2026-06-27 11:53:17,614.614 INFO    ] 200
[2026-06-27 11:53:17,615.615 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:53:17,646.646 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:53:17,647.647 INFO    ] No update needed
[2026-06-27 11:53:17,648.648 INFO    ] Checking for camera pi updates...
[2026-06-27 11:53:17,668.668 INFO    ] 200
[2026-06-27 11:53:17,669.669 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:53:17,695.695 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:53:17,742.742 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:53:17,743.743 INFO    ] No camera update needed
[2026-06-27 11:53:17,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:53:17,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:53:17,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:53:17,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:53:19,789.789 INFO    ] ================================================
[2026-06-27 11:53:19,805.805 INFO    ] Launching Daemon at Sat Jun 27 11:53:19 IST 2026
[2026-06-27 11:53:19,815.815 INFO    ] ================================================
[2026-06-27 11:53:20,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:53:20
[2026-06-27 11:53:20,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:53:20,615.615 INFO    ] Initializing speech engine...
[2026-06-27 11:53:20,620.620 INFO    ] 2026-06-27 11:53:20
[2026-06-27 11:53:20,826.826 INFO    ] 2026-06-27 11:53:20
[2026-06-27 11:53:20,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:53:21,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:53:21,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:53:21,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:53:21,248.248 INFO    ] time= 27/06/2026 11:53:21
[2026-06-27 11:53:21,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:53:21,276.276 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:53:21,341.341 INFO    ] No existing commands found in stream
[2026-06-27 11:53:26,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:53:26,355.355 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-27 11:53:30,451.451 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 11:53:30,452.452 INFO    ] Checking for system updates...
[2026-06-27 11:53:30,475.475 INFO    ] 200
[2026-06-27 11:53:30,476.476 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:53:30,510.510 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:53:30,511.511 INFO    ] No update needed
[2026-06-27 11:53:30,513.513 INFO    ] Checking for camera pi updates...
[2026-06-27 11:53:30,533.533 INFO    ] 200
[2026-06-27 11:53:30,534.534 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:53:30,557.557 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:53:30,579.579 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:53:30,581.581 INFO    ] No camera update needed
[2026-06-27 11:53:30,582.582 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:53:30,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:53:30,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:53:30,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:53:32,622.622 INFO    ] ================================================
[2026-06-27 11:53:32,630.630 INFO    ] Launching Daemon at Sat Jun 27 11:53:32 IST 2026
[2026-06-27 11:53:32,636.636 INFO    ] ================================================
[2026-06-27 11:53:32,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:53:32
[2026-06-27 11:53:33,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:53:33,447.447 INFO    ] Initializing speech engine...
[2026-06-27 11:53:33,451.451 INFO    ] 2026-06-27 11:53:33
[2026-06-27 11:53:33,670.670 INFO    ] 2026-06-27 11:53:33
[2026-06-27 11:53:33,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:53:33,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:53:33,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:53:34,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:53:34,134.134 INFO    ] time= 27/06/2026 11:53:34
[2026-06-27 11:53:34,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:53:34,189.189 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:53:34,268.268 INFO    ] No existing commands found in stream
[2026-06-27 11:53:39,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:53:39,280.280 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-27 11:53:40,347.347 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:53:40,348.348 INFO    ] Checking for system updates...
[2026-06-27 11:53:40,369.369 INFO    ] 200
[2026-06-27 11:53:40,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:53:40,401.401 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:53:40,403.403 INFO    ] No update needed
[2026-06-27 11:53:40,404.404 INFO    ] Checking for camera pi updates...
[2026-06-27 11:53:40,425.425 INFO    ] 200
[2026-06-27 11:53:40,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:53:40,450.450 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:53:40,488.488 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:53:40,489.489 INFO    ] No camera update needed
[2026-06-27 11:53:40,490.490 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:53:40,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:53:40,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:53:40,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:53:42,537.537 INFO    ] ================================================
[2026-06-27 11:53:42,552.552 INFO    ] Launching Daemon at Sat Jun 27 11:53:42 IST 2026
[2026-06-27 11:53:42,562.562 INFO    ] ================================================
[2026-06-27 11:53:42,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:53:42
[2026-06-27 11:53:43,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:53:43,385.385 INFO    ] Initializing speech engine...
[2026-06-27 11:53:43,389.389 INFO    ] 2026-06-27 11:53:43
[2026-06-27 11:53:43,596.596 INFO    ] 2026-06-27 11:53:43
[2026-06-27 11:53:43,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:53:43,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:53:43,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:53:44,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:53:44,044.044 INFO    ] time= 27/06/2026 11:53:44
[2026-06-27 11:53:44,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:53:44,051.051 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:53:44,108.108 INFO    ] No existing commands found in stream
[2026-06-27 11:53:49,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:53:49,119.119 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-27 11:53:50,300.300 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:53:50,302.302 INFO    ] Checking for system updates...
[2026-06-27 11:53:50,324.324 INFO    ] 200
[2026-06-27 11:53:50,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:53:50,359.359 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:53:50,360.360 INFO    ] No update needed
[2026-06-27 11:53:50,361.361 INFO    ] Checking for camera pi updates...
[2026-06-27 11:53:50,381.381 INFO    ] 200
[2026-06-27 11:53:50,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:53:50,407.407 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:53:50,445.445 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:53:50,446.446 INFO    ] No camera update needed
[2026-06-27 11:53:50,447.447 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:53:50,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:53:50,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:53:50,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:53:52,494.494 INFO    ] ================================================
[2026-06-27 11:53:52,510.510 INFO    ] Launching Daemon at Sat Jun 27 11:53:52 IST 2026
[2026-06-27 11:53:52,523.523 INFO    ] ================================================
[2026-06-27 11:53:52,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:53:52
[2026-06-27 11:53:53,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:53:53,334.334 INFO    ] Initializing speech engine...
[2026-06-27 11:53:53,338.338 INFO    ] 2026-06-27 11:53:53
[2026-06-27 11:53:53,543.543 INFO    ] 2026-06-27 11:53:53
[2026-06-27 11:53:53,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:53:53,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:53:53,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:53:53,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:53:53,951.951 INFO    ] time= 27/06/2026 11:53:53
[2026-06-27 11:53:53,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:53:53,995.995 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:53:54,062.062 INFO    ] No existing commands found in stream
[2026-06-27 11:53:59,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:53:59,075.075 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-27 11:53:59,869.869 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 11:53:59,870.870 INFO    ] Checking for system updates...
[2026-06-27 11:53:59,892.892 INFO    ] 200
[2026-06-27 11:53:59,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:53:59,924.924 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:53:59,926.926 INFO    ] No update needed
[2026-06-27 11:53:59,927.927 INFO    ] Checking for camera pi updates...
[2026-06-27 11:53:59,949.949 INFO    ] 200
[2026-06-27 11:53:59,950.950 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:53:59,975.975 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:54:00,017.017 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:54:00,018.018 INFO    ] No camera update needed
[2026-06-27 11:54:00,020.020 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:54:00,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:54:00,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:54:00,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:54:02,069.069 INFO    ] ================================================
[2026-06-27 11:54:02,080.080 INFO    ] Launching Daemon at Sat Jun 27 11:54:02 IST 2026
[2026-06-27 11:54:02,088.088 INFO    ] ================================================
[2026-06-27 11:54:02,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:54:02
[2026-06-27 11:54:02,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:54:03,008.008 INFO    ] Initializing speech engine...
[2026-06-27 11:54:03,018.018 INFO    ] 2026-06-27 11:54:03
[2026-06-27 11:54:03,224.224 INFO    ] 2026-06-27 11:54:03
[2026-06-27 11:54:03,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:54:03,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:54:03,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:54:03,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:54:03,642.642 INFO    ] time= 27/06/2026 11:54:03
[2026-06-27 11:54:03,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:54:03,670.670 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:54:03,759.759 INFO    ] No existing commands found in stream
[2026-06-27 11:54:08,774.774 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:54:08,777.777 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-27 11:54:12,992.992 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 11:54:12,993.993 INFO    ] Checking for system updates...
[2026-06-27 11:54:13,014.014 INFO    ] 200
[2026-06-27 11:54:13,015.015 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:54:13,046.046 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:54:13,047.047 INFO    ] No update needed
[2026-06-27 11:54:13,049.049 INFO    ] Checking for camera pi updates...
[2026-06-27 11:54:13,071.071 INFO    ] 200
[2026-06-27 11:54:13,073.073 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:54:13,097.097 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:54:13,134.134 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:54:13,135.135 INFO    ] No camera update needed
[2026-06-27 11:54:13,137.137 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:54:13,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:54:13,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:54:13,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:54:15,185.185 INFO    ] ================================================
[2026-06-27 11:54:15,201.201 INFO    ] Launching Daemon at Sat Jun 27 11:54:15 IST 2026
[2026-06-27 11:54:15,212.212 INFO    ] ================================================
[2026-06-27 11:54:15,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:54:15
[2026-06-27 11:54:15,890.890 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:54:16,031.031 INFO    ] Initializing speech engine...
[2026-06-27 11:54:16,039.039 INFO    ] 2026-06-27 11:54:16
[2026-06-27 11:54:16,256.256 INFO    ] 2026-06-27 11:54:16
[2026-06-27 11:54:16,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:54:16,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:54:16,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:54:16,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:54:16,707.707 INFO    ] time= 27/06/2026 11:54:16
[2026-06-27 11:54:16,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:54:16,735.735 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:54:16,809.809 INFO    ] No existing commands found in stream
[2026-06-27 11:54:21,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:54:21,823.823 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-27 11:54:26,294.294 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:54:26,295.295 INFO    ] Checking for system updates...
[2026-06-27 11:54:26,319.319 INFO    ] 200
[2026-06-27 11:54:26,320.320 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:54:26,353.353 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:54:26,354.354 INFO    ] No update needed
[2026-06-27 11:54:26,355.355 INFO    ] Checking for camera pi updates...
[2026-06-27 11:54:26,376.376 INFO    ] 200
[2026-06-27 11:54:26,377.377 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:54:26,401.401 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:54:26,549.549 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:54:26,550.550 INFO    ] No camera update needed
[2026-06-27 11:54:26,551.551 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:54:26,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:54:26,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:54:26,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:54:28,599.599 INFO    ] ================================================
[2026-06-27 11:54:28,616.616 INFO    ] Launching Daemon at Sat Jun 27 11:54:28 IST 2026
[2026-06-27 11:54:28,627.627 INFO    ] ================================================
[2026-06-27 11:54:28,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:54:28
[2026-06-27 11:54:29,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:54:29,470.470 INFO    ] Initializing speech engine...
[2026-06-27 11:54:29,480.480 INFO    ] 2026-06-27 11:54:29
[2026-06-27 11:54:29,689.689 INFO    ] 2026-06-27 11:54:29
[2026-06-27 11:54:29,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:54:29,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:54:29,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:54:30,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:54:30,129.129 INFO    ] time= 27/06/2026 11:54:30
[2026-06-27 11:54:30,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:54:30,138.138 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:54:30,204.204 INFO    ] No existing commands found in stream
[2026-06-27 11:54:35,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:54:35,221.221 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-27 11:54:37,403.403 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 11:54:37,405.405 INFO    ] Checking for system updates...
[2026-06-27 11:54:37,427.427 INFO    ] 200
[2026-06-27 11:54:37,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:54:37,462.462 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:54:37,464.464 INFO    ] No update needed
[2026-06-27 11:54:37,465.465 INFO    ] Checking for camera pi updates...
[2026-06-27 11:54:37,485.485 INFO    ] 200
[2026-06-27 11:54:37,487.487 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:54:37,512.512 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:54:37,553.553 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:54:37,555.555 INFO    ] No camera update needed
[2026-06-27 11:54:37,556.556 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:54:37,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:54:37,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:54:37,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:54:39,604.604 INFO    ] ================================================
[2026-06-27 11:54:39,621.621 INFO    ] Launching Daemon at Sat Jun 27 11:54:39 IST 2026
[2026-06-27 11:54:39,633.633 INFO    ] ================================================
[2026-06-27 11:54:39,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:54:39
[2026-06-27 11:54:40,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:54:40,409.409 INFO    ] Initializing speech engine...
[2026-06-27 11:54:40,421.421 INFO    ] 2026-06-27 11:54:40
[2026-06-27 11:54:40,630.630 INFO    ] 2026-06-27 11:54:40
[2026-06-27 11:54:40,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:54:40,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:54:40,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:54:41,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:54:41,080.080 INFO    ] time= 27/06/2026 11:54:41
[2026-06-27 11:54:41,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:54:41,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:54:41,154.154 INFO    ] No existing commands found in stream
[2026-06-27 11:54:46,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:54:46,168.168 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-27 11:54:48,335.335 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 11:54:48,337.337 INFO    ] Checking for system updates...
[2026-06-27 11:54:48,358.358 INFO    ] 200
[2026-06-27 11:54:48,359.359 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:54:48,392.392 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:54:48,394.394 INFO    ] No update needed
[2026-06-27 11:54:48,395.395 INFO    ] Checking for camera pi updates...
[2026-06-27 11:54:48,418.418 INFO    ] 200
[2026-06-27 11:54:48,419.419 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:54:48,443.443 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:54:48,486.486 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:54:48,487.487 INFO    ] No camera update needed
[2026-06-27 11:54:48,489.489 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:54:48,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:54:48,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:54:48,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:54:50,534.534 INFO    ] ================================================
[2026-06-27 11:54:50,550.550 INFO    ] Launching Daemon at Sat Jun 27 11:54:50 IST 2026
[2026-06-27 11:54:50,561.561 INFO    ] ================================================
[2026-06-27 11:54:50,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:54:50
[2026-06-27 11:54:51,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:54:51,358.358 INFO    ] Initializing speech engine...
[2026-06-27 11:54:51,362.362 INFO    ] 2026-06-27 11:54:51
[2026-06-27 11:54:51,572.572 INFO    ] 2026-06-27 11:54:51
[2026-06-27 11:54:51,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:54:51,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:54:51,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:54:51,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:54:52,012.012 INFO    ] time= 27/06/2026 11:54:51
[2026-06-27 11:54:52,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:54:52,074.074 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:54:52,150.150 INFO    ] No existing commands found in stream
[2026-06-27 11:54:57,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:54:57,162.162 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-27 11:54:57,638.638 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 11:54:57,639.639 INFO    ] Checking for system updates...
[2026-06-27 11:54:57,661.661 INFO    ] 200
[2026-06-27 11:54:57,663.663 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:54:57,695.695 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:54:57,696.696 INFO    ] No update needed
[2026-06-27 11:54:57,698.698 INFO    ] Checking for camera pi updates...
[2026-06-27 11:54:57,717.717 INFO    ] 200
[2026-06-27 11:54:57,718.718 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:54:57,742.742 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:54:57,781.781 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:54:57,782.782 INFO    ] No camera update needed
[2026-06-27 11:54:57,784.784 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:54:57,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:54:57,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:54:57,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:54:59,832.832 INFO    ] ================================================
[2026-06-27 11:54:59,848.848 INFO    ] Launching Daemon at Sat Jun 27 11:54:59 IST 2026
[2026-06-27 11:54:59,860.860 INFO    ] ================================================
[2026-06-27 11:55:00,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:55:00
[2026-06-27 11:55:00,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:55:00,654.654 INFO    ] Initializing speech engine...
[2026-06-27 11:55:00,664.664 INFO    ] 2026-06-27 11:55:00
[2026-06-27 11:55:00,871.871 INFO    ] 2026-06-27 11:55:00
[2026-06-27 11:55:00,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:55:01,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:55:01,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:55:01,243.243 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:55:01,249.249 INFO    ] time= 27/06/2026 11:55:01
[2026-06-27 11:55:01,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:55:01,256.256 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:55:01,324.324 INFO    ] No existing commands found in stream
[2026-06-27 11:55:06,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:55:06,341.341 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-27 11:55:07,908.908 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 11:55:07,909.909 INFO    ] Checking for system updates...
[2026-06-27 11:55:07,930.930 INFO    ] 200
[2026-06-27 11:55:07,931.931 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:55:07,963.963 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:55:07,965.965 INFO    ] No update needed
[2026-06-27 11:55:07,966.966 INFO    ] Checking for camera pi updates...
[2026-06-27 11:55:07,985.985 INFO    ] 200
[2026-06-27 11:55:07,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:55:08,012.012 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:55:08,056.056 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:55:08,058.058 INFO    ] No camera update needed
[2026-06-27 11:55:08,059.059 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:55:08,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:55:08,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:55:08,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:55:10,104.104 INFO    ] ================================================
[2026-06-27 11:55:10,120.120 INFO    ] Launching Daemon at Sat Jun 27 11:55:10 IST 2026
[2026-06-27 11:55:10,130.130 INFO    ] ================================================
[2026-06-27 11:55:10,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:55:10
[2026-06-27 11:55:10,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:55:10,975.975 INFO    ] Initializing speech engine...
[2026-06-27 11:55:10,981.981 INFO    ] 2026-06-27 11:55:10
[2026-06-27 11:55:11,187.187 INFO    ] 2026-06-27 11:55:11
[2026-06-27 11:55:11,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:55:11,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:55:11,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:55:11,555.555 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:55:11,608.608 INFO    ] time= 27/06/2026 11:55:11
[2026-06-27 11:55:11,631.631 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:55:11,637.637 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:55:11,705.705 INFO    ] No existing commands found in stream
[2026-06-27 11:55:16,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:55:16,719.719 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-27 11:55:19,392.392 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 11:55:19,394.394 INFO    ] Checking for system updates...
[2026-06-27 11:55:19,416.416 INFO    ] 200
[2026-06-27 11:55:19,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:55:19,454.454 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:55:19,455.455 INFO    ] No update needed
[2026-06-27 11:55:19,457.457 INFO    ] Checking for camera pi updates...
[2026-06-27 11:55:19,483.483 INFO    ] 200
[2026-06-27 11:55:19,485.485 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:55:19,508.508 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:55:19,548.548 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:55:19,550.550 INFO    ] No camera update needed
[2026-06-27 11:55:19,551.551 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:55:19,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:55:19,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:55:19,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:55:21,598.598 INFO    ] ================================================
[2026-06-27 11:55:21,614.614 INFO    ] Launching Daemon at Sat Jun 27 11:55:21 IST 2026
[2026-06-27 11:55:21,625.625 INFO    ] ================================================
[2026-06-27 11:55:21,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:55:21
[2026-06-27 11:55:22,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:55:22,404.404 INFO    ] Initializing speech engine...
[2026-06-27 11:55:22,413.413 INFO    ] 2026-06-27 11:55:22
[2026-06-27 11:55:22,619.619 INFO    ] 2026-06-27 11:55:22
[2026-06-27 11:55:22,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:55:22,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:55:22,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:55:23,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:55:23,060.060 INFO    ] time= 27/06/2026 11:55:23
[2026-06-27 11:55:23,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:55:23,067.067 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:55:23,134.134 INFO    ] No existing commands found in stream
[2026-06-27 11:55:28,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:55:28,161.161 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-27 11:55:30,932.932 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 11:55:30,934.934 INFO    ] Checking for system updates...
[2026-06-27 11:55:30,955.955 INFO    ] 200
[2026-06-27 11:55:30,956.956 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:55:30,988.988 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:55:30,989.989 INFO    ] No update needed
[2026-06-27 11:55:30,991.991 INFO    ] Checking for camera pi updates...
[2026-06-27 11:55:31,011.011 INFO    ] 200
[2026-06-27 11:55:31,012.012 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:55:31,035.035 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:55:31,077.077 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:55:31,078.078 INFO    ] No camera update needed
[2026-06-27 11:55:31,079.079 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:55:31,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:55:31,084.084 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:55:31,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:55:33,119.119 INFO    ] ================================================
[2026-06-27 11:55:33,134.134 INFO    ] Launching Daemon at Sat Jun 27 11:55:33 IST 2026
[2026-06-27 11:55:33,145.145 INFO    ] ================================================
[2026-06-27 11:55:33,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:55:33
[2026-06-27 11:55:33,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:55:33,933.933 INFO    ] Initializing speech engine...
[2026-06-27 11:55:33,945.945 INFO    ] 2026-06-27 11:55:33
[2026-06-27 11:55:34,162.162 INFO    ] 2026-06-27 11:55:34
[2026-06-27 11:55:34,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:55:34,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:55:34,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:55:34,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:55:34,612.612 INFO    ] time= 27/06/2026 11:55:34
[2026-06-27 11:55:34,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:55:34,639.639 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:55:34,707.707 INFO    ] No existing commands found in stream
[2026-06-27 11:55:39,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:55:39,719.719 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-27 11:55:42,607.607 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 11:55:42,609.609 INFO    ] Checking for system updates...
[2026-06-27 11:55:42,631.631 INFO    ] 200
[2026-06-27 11:55:42,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:55:42,662.662 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:55:42,664.664 INFO    ] No update needed
[2026-06-27 11:55:42,665.665 INFO    ] Checking for camera pi updates...
[2026-06-27 11:55:42,685.685 INFO    ] 200
[2026-06-27 11:55:42,687.687 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:55:42,713.713 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:55:42,764.764 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:55:42,766.766 INFO    ] No camera update needed
[2026-06-27 11:55:42,767.767 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:55:42,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:55:42,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:55:42,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:55:44,812.812 INFO    ] ================================================
[2026-06-27 11:55:44,828.828 INFO    ] Launching Daemon at Sat Jun 27 11:55:44 IST 2026
[2026-06-27 11:55:44,840.840 INFO    ] ================================================
[2026-06-27 11:55:45,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:55:45
[2026-06-27 11:55:45,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:55:45,610.610 INFO    ] Initializing speech engine...
[2026-06-27 11:55:45,613.613 INFO    ] 2026-06-27 11:55:45
[2026-06-27 11:55:45,842.842 INFO    ] 2026-06-27 11:55:45
[2026-06-27 11:55:45,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:55:46,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:55:46,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:55:46,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:55:46,291.291 INFO    ] time= 27/06/2026 11:55:46
[2026-06-27 11:55:46,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:55:46,323.323 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:55:46,392.392 INFO    ] No existing commands found in stream
[2026-06-27 11:55:51,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:55:51,406.406 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-27 11:55:52,209.209 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 11:55:52,211.211 INFO    ] Checking for system updates...
[2026-06-27 11:55:52,232.232 INFO    ] 200
[2026-06-27 11:55:52,234.234 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:55:52,264.264 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:55:52,266.266 INFO    ] No update needed
[2026-06-27 11:55:52,267.267 INFO    ] Checking for camera pi updates...
[2026-06-27 11:55:52,288.288 INFO    ] 200
[2026-06-27 11:55:52,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:55:52,315.315 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:55:52,349.349 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:55:52,350.350 INFO    ] No camera update needed
[2026-06-27 11:55:52,351.351 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:55:52,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:55:52,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:55:52,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:55:54,397.397 INFO    ] ================================================
[2026-06-27 11:55:54,412.412 INFO    ] Launching Daemon at Sat Jun 27 11:55:54 IST 2026
[2026-06-27 11:55:54,423.423 INFO    ] ================================================
[2026-06-27 11:55:54,754.754 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:55:54
[2026-06-27 11:55:55,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:55:55,196.196 INFO    ] Initializing speech engine...
[2026-06-27 11:55:55,200.200 INFO    ] 2026-06-27 11:55:55
[2026-06-27 11:55:55,419.419 INFO    ] 2026-06-27 11:55:55
[2026-06-27 11:55:55,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:55:55,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:55:55,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:55:55,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:55:55,866.866 INFO    ] time= 27/06/2026 11:55:55
[2026-06-27 11:55:55,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:55:55,874.874 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:55:55,942.942 INFO    ] No existing commands found in stream
[2026-06-27 11:56:00,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:56:00,954.954 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-27 11:56:03,614.614 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:56:03,615.615 INFO    ] Checking for system updates...
[2026-06-27 11:56:03,636.636 INFO    ] 200
[2026-06-27 11:56:03,637.637 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:56:03,668.668 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:56:03,669.669 INFO    ] No update needed
[2026-06-27 11:56:03,670.670 INFO    ] Checking for camera pi updates...
[2026-06-27 11:56:03,691.691 INFO    ] 200
[2026-06-27 11:56:03,692.692 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:56:03,715.715 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:56:03,761.761 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:56:03,762.762 INFO    ] No camera update needed
[2026-06-27 11:56:03,764.764 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:56:03,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:56:03,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:56:03,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:56:05,808.808 INFO    ] ================================================
[2026-06-27 11:56:05,824.824 INFO    ] Launching Daemon at Sat Jun 27 11:56:05 IST 2026
[2026-06-27 11:56:05,834.834 INFO    ] ================================================
[2026-06-27 11:56:06,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:56:06
[2026-06-27 11:56:06,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:56:06,641.641 INFO    ] Initializing speech engine...
[2026-06-27 11:56:06,646.646 INFO    ] 2026-06-27 11:56:06
[2026-06-27 11:56:06,851.851 INFO    ] 2026-06-27 11:56:06
[2026-06-27 11:56:06,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:56:07,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:56:07,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:56:07,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:56:07,274.274 INFO    ] time= 27/06/2026 11:56:07
[2026-06-27 11:56:07,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:56:07,302.302 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:56:07,370.370 INFO    ] No existing commands found in stream
[2026-06-27 11:56:12,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:56:12,382.382 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-27 11:56:15,691.691 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 11:56:15,692.692 INFO    ] Checking for system updates...
[2026-06-27 11:56:15,714.714 INFO    ] 200
[2026-06-27 11:56:15,716.716 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:56:15,748.748 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:56:15,749.749 INFO    ] No update needed
[2026-06-27 11:56:15,751.751 INFO    ] Checking for camera pi updates...
[2026-06-27 11:56:15,773.773 INFO    ] 200
[2026-06-27 11:56:15,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:56:15,800.800 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:56:15,836.836 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:56:15,838.838 INFO    ] No camera update needed
[2026-06-27 11:56:15,839.839 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:56:15,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:56:15,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:56:15,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:56:17,886.886 INFO    ] ================================================
[2026-06-27 11:56:17,902.902 INFO    ] Launching Daemon at Sat Jun 27 11:56:17 IST 2026
[2026-06-27 11:56:17,913.913 INFO    ] ================================================
[2026-06-27 11:56:18,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:56:18
[2026-06-27 11:56:18,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:56:18,739.739 INFO    ] Initializing speech engine...
[2026-06-27 11:56:18,749.749 INFO    ] 2026-06-27 11:56:18
[2026-06-27 11:56:18,955.955 INFO    ] 2026-06-27 11:56:18
[2026-06-27 11:56:18,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:56:19,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:56:19,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:56:19,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:56:19,381.381 INFO    ] time= 27/06/2026 11:56:19
[2026-06-27 11:56:19,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:56:19,410.410 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:56:19,476.476 INFO    ] No existing commands found in stream
[2026-06-27 11:56:24,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:56:24,489.489 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-27 11:56:26,085.085 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:56:26,087.087 INFO    ] Checking for system updates...
[2026-06-27 11:56:26,109.109 INFO    ] 200
[2026-06-27 11:56:26,111.111 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:56:26,147.147 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:56:26,148.148 INFO    ] No update needed
[2026-06-27 11:56:26,149.149 INFO    ] Checking for camera pi updates...
[2026-06-27 11:56:26,173.173 INFO    ] 200
[2026-06-27 11:56:26,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:56:26,203.203 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:56:26,242.242 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:56:26,244.244 INFO    ] No camera update needed
[2026-06-27 11:56:26,245.245 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:56:26,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:56:26,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:56:26,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:56:28,294.294 INFO    ] ================================================
[2026-06-27 11:56:28,310.310 INFO    ] Launching Daemon at Sat Jun 27 11:56:28 IST 2026
[2026-06-27 11:56:28,322.322 INFO    ] ================================================
[2026-06-27 11:56:28,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:56:28
[2026-06-27 11:56:29,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:56:29,147.147 INFO    ] Initializing speech engine...
[2026-06-27 11:56:29,151.151 INFO    ] 2026-06-27 11:56:29
[2026-06-27 11:56:29,355.355 INFO    ] 2026-06-27 11:56:29
[2026-06-27 11:56:29,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:56:29,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:56:29,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:56:29,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:56:29,797.797 INFO    ] time= 27/06/2026 11:56:29
[2026-06-27 11:56:29,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:56:29,805.805 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:56:29,869.869 INFO    ] No existing commands found in stream
[2026-06-27 11:56:34,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:56:34,882.882 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-27 11:56:37,785.785 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:56:37,787.787 INFO    ] Checking for system updates...
[2026-06-27 11:56:37,808.808 INFO    ] 200
[2026-06-27 11:56:37,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:56:37,841.841 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:56:37,843.843 INFO    ] No update needed
[2026-06-27 11:56:37,844.844 INFO    ] Checking for camera pi updates...
[2026-06-27 11:56:37,864.864 INFO    ] 200
[2026-06-27 11:56:37,865.865 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:56:37,888.888 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:56:37,925.925 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:56:37,926.926 INFO    ] No camera update needed
[2026-06-27 11:56:37,927.927 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:56:37,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:56:37,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:56:37,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:56:39,976.976 INFO    ] ================================================
[2026-06-27 11:56:39,992.992 INFO    ] Launching Daemon at Sat Jun 27 11:56:39 IST 2026
[2026-06-27 11:56:40,003.003 INFO    ] ================================================
[2026-06-27 11:56:40,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:56:40
[2026-06-27 11:56:40,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:56:40,852.852 INFO    ] Initializing speech engine...
[2026-06-27 11:56:40,856.856 INFO    ] 2026-06-27 11:56:40
[2026-06-27 11:56:41,065.065 INFO    ] 2026-06-27 11:56:41
[2026-06-27 11:56:41,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:56:41,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:56:41,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:56:41,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:56:41,515.515 INFO    ] time= 27/06/2026 11:56:41
[2026-06-27 11:56:41,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:56:41,522.522 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:56:41,590.590 INFO    ] No existing commands found in stream
[2026-06-27 11:56:46,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:56:46,608.608 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-27 11:56:50,420.420 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 11:56:50,421.421 INFO    ] Checking for system updates...
[2026-06-27 11:56:50,444.444 INFO    ] 200
[2026-06-27 11:56:50,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:56:50,477.477 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:56:50,478.478 INFO    ] No update needed
[2026-06-27 11:56:50,479.479 INFO    ] Checking for camera pi updates...
[2026-06-27 11:56:50,498.498 INFO    ] 200
[2026-06-27 11:56:50,500.500 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:56:50,523.523 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:56:50,560.560 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:56:50,561.561 INFO    ] No camera update needed
[2026-06-27 11:56:50,563.563 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:56:50,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:56:50,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:56:50,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:56:52,609.609 INFO    ] ================================================
[2026-06-27 11:56:52,624.624 INFO    ] Launching Daemon at Sat Jun 27 11:56:52 IST 2026
[2026-06-27 11:56:52,635.635 INFO    ] ================================================
[2026-06-27 11:56:53,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:56:53
[2026-06-27 11:56:53,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:56:53,494.494 INFO    ] Initializing speech engine...
[2026-06-27 11:56:53,499.499 INFO    ] 2026-06-27 11:56:53
[2026-06-27 11:56:53,708.708 INFO    ] 2026-06-27 11:56:53
[2026-06-27 11:56:53,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:56:53,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:56:53,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:56:54,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:56:54,037.037 INFO    ] time= 27/06/2026 11:56:54
[2026-06-27 11:56:54,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:56:54,039.039 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:56:54,095.095 INFO    ] No existing commands found in stream
[2026-06-27 11:56:59,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:56:59,107.107 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-27 11:57:02,933.933 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 11:57:02,935.935 INFO    ] Checking for system updates...
[2026-06-27 11:57:02,956.956 INFO    ] 200
[2026-06-27 11:57:02,957.957 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:57:02,988.988 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:57:02,990.990 INFO    ] No update needed
[2026-06-27 11:57:02,991.991 INFO    ] Checking for camera pi updates...
[2026-06-27 11:57:03,013.013 INFO    ] 200
[2026-06-27 11:57:03,014.014 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:57:03,039.039 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:57:03,061.061 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:57:03,062.062 INFO    ] No camera update needed
[2026-06-27 11:57:03,064.064 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:57:03,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:57:03,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:57:03,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:57:05,116.116 INFO    ] ================================================
[2026-06-27 11:57:05,131.131 INFO    ] Launching Daemon at Sat Jun 27 11:57:05 IST 2026
[2026-06-27 11:57:05,142.142 INFO    ] ================================================
[2026-06-27 11:57:05,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:57:05
[2026-06-27 11:57:05,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:57:06,006.006 INFO    ] Initializing speech engine...
[2026-06-27 11:57:06,014.014 INFO    ] 2026-06-27 11:57:06
[2026-06-27 11:57:06,227.227 INFO    ] 2026-06-27 11:57:06
[2026-06-27 11:57:06,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:57:06,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:57:06,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:57:06,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:57:06,669.669 INFO    ] time= 27/06/2026 11:57:06
[2026-06-27 11:57:06,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:57:06,681.681 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:57:06,748.748 INFO    ] No existing commands found in stream
[2026-06-27 11:57:11,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:57:11,760.760 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-27 11:57:12,378.378 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 11:57:12,379.379 INFO    ] Checking for system updates...
[2026-06-27 11:57:12,400.400 INFO    ] 200
[2026-06-27 11:57:12,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:57:12,434.434 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:57:12,435.435 INFO    ] No update needed
[2026-06-27 11:57:12,437.437 INFO    ] Checking for camera pi updates...
[2026-06-27 11:57:12,458.458 INFO    ] 200
[2026-06-27 11:57:12,459.459 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:57:12,483.483 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:57:12,519.519 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:57:12,521.521 INFO    ] No camera update needed
[2026-06-27 11:57:12,522.522 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:57:12,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:57:12,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:57:12,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:57:14,570.570 INFO    ] ================================================
[2026-06-27 11:57:14,585.585 INFO    ] Launching Daemon at Sat Jun 27 11:57:14 IST 2026
[2026-06-27 11:57:14,597.597 INFO    ] ================================================
[2026-06-27 11:57:14,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:57:14
[2026-06-27 11:57:15,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:57:15,383.383 INFO    ] Initializing speech engine...
[2026-06-27 11:57:15,392.392 INFO    ] 2026-06-27 11:57:15
[2026-06-27 11:57:15,610.610 INFO    ] 2026-06-27 11:57:15
[2026-06-27 11:57:15,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:57:15,839.839 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:57:15,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:57:15,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:57:16,045.045 INFO    ] time= 27/06/2026 11:57:15
[2026-06-27 11:57:16,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:57:16,091.091 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:57:16,193.193 INFO    ] No existing commands found in stream
[2026-06-27 11:57:21,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:57:21,205.205 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-27 11:57:21,798.798 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 11:57:21,800.800 INFO    ] Checking for system updates...
[2026-06-27 11:57:21,821.821 INFO    ] 200
[2026-06-27 11:57:21,823.823 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:57:21,856.856 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:57:21,857.857 INFO    ] No update needed
[2026-06-27 11:57:21,858.858 INFO    ] Checking for camera pi updates...
[2026-06-27 11:57:21,878.878 INFO    ] 200
[2026-06-27 11:57:21,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:57:21,904.904 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:57:21,942.942 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:57:21,943.943 INFO    ] No camera update needed
[2026-06-27 11:57:21,945.945 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:57:21,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:57:21,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:57:21,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:57:23,990.990 INFO    ] ================================================
[2026-06-27 11:57:24,005.005 INFO    ] Launching Daemon at Sat Jun 27 11:57:24 IST 2026
[2026-06-27 11:57:24,016.016 INFO    ] ================================================
[2026-06-27 11:57:24,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:57:24
[2026-06-27 11:57:24,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:57:24,803.803 INFO    ] Initializing speech engine...
[2026-06-27 11:57:24,813.813 INFO    ] 2026-06-27 11:57:24
[2026-06-27 11:57:25,017.017 INFO    ] 2026-06-27 11:57:24
[2026-06-27 11:57:25,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:57:25,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:57:25,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:57:25,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:57:25,437.437 INFO    ] time= 27/06/2026 11:57:25
[2026-06-27 11:57:25,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:57:25,471.471 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:57:25,563.563 INFO    ] No existing commands found in stream
[2026-06-27 11:57:30,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:57:30,576.576 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-27 11:57:32,105.105 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 11:57:32,107.107 INFO    ] Checking for system updates...
[2026-06-27 11:57:32,130.130 INFO    ] 200
[2026-06-27 11:57:32,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:57:32,167.167 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:57:32,169.169 INFO    ] No update needed
[2026-06-27 11:57:32,171.171 INFO    ] Checking for camera pi updates...
[2026-06-27 11:57:32,194.194 INFO    ] 200
[2026-06-27 11:57:32,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:57:32,221.221 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:57:32,252.252 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:57:32,253.253 INFO    ] No camera update needed
[2026-06-27 11:57:32,255.255 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:57:32,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:57:32,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:57:32,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:57:34,302.302 INFO    ] ================================================
[2026-06-27 11:57:34,317.317 INFO    ] Launching Daemon at Sat Jun 27 11:57:34 IST 2026
[2026-06-27 11:57:34,328.328 INFO    ] ================================================
[2026-06-27 11:57:34,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:57:34
[2026-06-27 11:57:35,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:57:35,161.161 INFO    ] Initializing speech engine...
[2026-06-27 11:57:35,166.166 INFO    ] 2026-06-27 11:57:35
[2026-06-27 11:57:35,371.371 INFO    ] 2026-06-27 11:57:35
[2026-06-27 11:57:35,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:57:35,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:57:35,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:57:35,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:57:35,811.811 INFO    ] time= 27/06/2026 11:57:35
[2026-06-27 11:57:35,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:57:35,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:57:35,885.885 INFO    ] No existing commands found in stream
[2026-06-27 11:57:40,899.899 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:57:40,902.902 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-27 11:57:43,314.314 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 11:57:43,315.315 INFO    ] Checking for system updates...
[2026-06-27 11:57:43,338.338 INFO    ] 200
[2026-06-27 11:57:43,339.339 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:57:43,371.371 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:57:43,373.373 INFO    ] No update needed
[2026-06-27 11:57:43,374.374 INFO    ] Checking for camera pi updates...
[2026-06-27 11:57:43,394.394 INFO    ] 200
[2026-06-27 11:57:43,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:57:43,418.418 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:57:43,454.454 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:57:43,455.455 INFO    ] No camera update needed
[2026-06-27 11:57:43,456.456 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:57:43,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:57:43,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:57:43,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:57:45,503.503 INFO    ] ================================================
[2026-06-27 11:57:45,518.518 INFO    ] Launching Daemon at Sat Jun 27 11:57:45 IST 2026
[2026-06-27 11:57:45,529.529 INFO    ] ================================================
[2026-06-27 11:57:45,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:57:45
[2026-06-27 11:57:46,166.166 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:57:46,300.300 INFO    ] Initializing speech engine...
[2026-06-27 11:57:46,305.305 INFO    ] 2026-06-27 11:57:46
[2026-06-27 11:57:46,534.534 INFO    ] 2026-06-27 11:57:46
[2026-06-27 11:57:46,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:57:46,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:57:46,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:57:46,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:57:46,987.987 INFO    ] time= 27/06/2026 11:57:46
[2026-06-27 11:57:47,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:57:47,019.019 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:57:47,091.091 INFO    ] No existing commands found in stream
[2026-06-27 11:57:52,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:57:52,103.103 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-27 11:57:54,104.104 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 11:57:54,106.106 INFO    ] Checking for system updates...
[2026-06-27 11:57:54,127.127 INFO    ] 200
[2026-06-27 11:57:54,129.129 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:57:54,159.159 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:57:54,160.160 INFO    ] No update needed
[2026-06-27 11:57:54,162.162 INFO    ] Checking for camera pi updates...
[2026-06-27 11:57:54,183.183 INFO    ] 200
[2026-06-27 11:57:54,185.185 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:57:54,210.210 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:57:54,236.236 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:57:54,238.238 INFO    ] No camera update needed
[2026-06-27 11:57:54,239.239 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:57:54,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:57:54,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:57:54,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:57:56,285.285 INFO    ] ================================================
[2026-06-27 11:57:56,300.300 INFO    ] Launching Daemon at Sat Jun 27 11:57:56 IST 2026
[2026-06-27 11:57:56,311.311 INFO    ] ================================================
[2026-06-27 11:57:56,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:57:56
[2026-06-27 11:57:56,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:57:57,094.094 INFO    ] Initializing speech engine...
[2026-06-27 11:57:57,100.100 INFO    ] 2026-06-27 11:57:57
[2026-06-27 11:57:57,304.304 INFO    ] 2026-06-27 11:57:57
[2026-06-27 11:57:57,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:57:57,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:57:57,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:57:57,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:57:57,753.753 INFO    ] time= 27/06/2026 11:57:57
[2026-06-27 11:57:57,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:57:57,760.760 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:57:57,826.826 INFO    ] No existing commands found in stream
[2026-06-27 11:58:02,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:58:02,836.836 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-27 11:58:05,882.882 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 11:58:05,884.884 INFO    ] Checking for system updates...
[2026-06-27 11:58:05,906.906 INFO    ] 200
[2026-06-27 11:58:05,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:58:05,949.949 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:58:05,951.951 INFO    ] No update needed
[2026-06-27 11:58:05,953.953 INFO    ] Checking for camera pi updates...
[2026-06-27 11:58:05,977.977 INFO    ] 200
[2026-06-27 11:58:05,979.979 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:58:06,003.003 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:58:06,054.054 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:58:06,056.056 INFO    ] No camera update needed
[2026-06-27 11:58:06,057.057 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:58:06,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:58:06,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:58:06,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:58:08,102.102 INFO    ] ================================================
[2026-06-27 11:58:08,118.118 INFO    ] Launching Daemon at Sat Jun 27 11:58:08 IST 2026
[2026-06-27 11:58:08,129.129 INFO    ] ================================================
[2026-06-27 11:58:08,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:58:08
[2026-06-27 11:58:08,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:58:08,929.929 INFO    ] Initializing speech engine...
[2026-06-27 11:58:08,936.936 INFO    ] 2026-06-27 11:58:08
[2026-06-27 11:58:09,151.151 INFO    ] 2026-06-27 11:58:09
[2026-06-27 11:58:09,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:58:09,305.305 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:58:09,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:58:09,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:58:09,578.578 INFO    ] time= 27/06/2026 11:58:09
[2026-06-27 11:58:09,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:58:09,606.606 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:58:09,673.673 INFO    ] No existing commands found in stream
[2026-06-27 11:58:14,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:58:14,686.686 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-27 11:58:17,779.779 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:58:17,781.781 INFO    ] Checking for system updates...
[2026-06-27 11:58:17,801.801 INFO    ] 200
[2026-06-27 11:58:17,803.803 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:58:17,833.833 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:58:17,835.835 INFO    ] No update needed
[2026-06-27 11:58:17,836.836 INFO    ] Checking for camera pi updates...
[2026-06-27 11:58:17,859.859 INFO    ] 200
[2026-06-27 11:58:17,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:58:17,884.884 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:58:17,924.924 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:58:17,925.925 INFO    ] No camera update needed
[2026-06-27 11:58:17,927.927 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:58:17,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:58:17,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:58:17,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:58:19,973.973 INFO    ] ================================================
[2026-06-27 11:58:19,988.988 INFO    ] Launching Daemon at Sat Jun 27 11:58:19 IST 2026
[2026-06-27 11:58:20,999.999 INFO    ] ================================================
[2026-06-27 11:58:20,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:58:20
[2026-06-27 11:58:20,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:58:20,800.800 INFO    ] Initializing speech engine...
[2026-06-27 11:58:20,812.812 INFO    ] 2026-06-27 11:58:20
[2026-06-27 11:58:21,026.026 INFO    ] 2026-06-27 11:58:21
[2026-06-27 11:58:21,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:58:21,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:58:21,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:58:21,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:58:21,452.452 INFO    ] time= 27/06/2026 11:58:21
[2026-06-27 11:58:21,475.475 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:58:21,481.481 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:58:21,547.547 INFO    ] No existing commands found in stream
[2026-06-27 11:58:26,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:58:26,560.560 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-27 11:58:27,348.348 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 11:58:27,349.349 INFO    ] Checking for system updates...
[2026-06-27 11:58:27,372.372 INFO    ] 200
[2026-06-27 11:58:27,373.373 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:58:27,404.404 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:58:27,406.406 INFO    ] No update needed
[2026-06-27 11:58:27,407.407 INFO    ] Checking for camera pi updates...
[2026-06-27 11:58:27,427.427 INFO    ] 200
[2026-06-27 11:58:27,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:58:27,454.454 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:58:27,492.492 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:58:27,493.493 INFO    ] No camera update needed
[2026-06-27 11:58:27,495.495 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:58:27,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:58:27,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:58:27,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:58:29,541.541 INFO    ] ================================================
[2026-06-27 11:58:29,556.556 INFO    ] Launching Daemon at Sat Jun 27 11:58:29 IST 2026
[2026-06-27 11:58:29,567.567 INFO    ] ================================================
[2026-06-27 11:58:29,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:58:29
[2026-06-27 11:58:30,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:58:30,377.377 INFO    ] Initializing speech engine...
[2026-06-27 11:58:30,383.383 INFO    ] 2026-06-27 11:58:30
[2026-06-27 11:58:30,592.592 INFO    ] 2026-06-27 11:58:30
[2026-06-27 11:58:30,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:58:30,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:58:30,814.814 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:58:31,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:58:31,034.034 INFO    ] time= 27/06/2026 11:58:31
[2026-06-27 11:58:31,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:58:31,040.040 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:58:31,108.108 INFO    ] No existing commands found in stream
[2026-06-27 11:58:36,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:58:36,119.119 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-27 11:58:39,263.263 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 11:58:39,264.264 INFO    ] Checking for system updates...
[2026-06-27 11:58:39,286.286 INFO    ] 200
[2026-06-27 11:58:39,287.287 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:58:39,317.317 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:58:39,319.319 INFO    ] No update needed
[2026-06-27 11:58:39,320.320 INFO    ] Checking for camera pi updates...
[2026-06-27 11:58:39,339.339 INFO    ] 200
[2026-06-27 11:58:39,341.341 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:58:39,364.364 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:58:39,502.502 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:58:39,504.504 INFO    ] No camera update needed
[2026-06-27 11:58:39,505.505 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:58:39,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:58:39,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:58:39,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:58:41,552.552 INFO    ] ================================================
[2026-06-27 11:58:41,567.567 INFO    ] Launching Daemon at Sat Jun 27 11:58:41 IST 2026
[2026-06-27 11:58:41,578.578 INFO    ] ================================================
[2026-06-27 11:58:41,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:58:41
[2026-06-27 11:58:42,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:58:42,376.376 INFO    ] Initializing speech engine...
[2026-06-27 11:58:42,388.388 INFO    ] 2026-06-27 11:58:42
[2026-06-27 11:58:42,594.594 INFO    ] 2026-06-27 11:58:42
[2026-06-27 11:58:42,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:58:42,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:58:42,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:58:43,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:58:43,032.032 INFO    ] time= 27/06/2026 11:58:43
[2026-06-27 11:58:43,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:58:43,039.039 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:58:43,107.107 INFO    ] No existing commands found in stream
[2026-06-27 11:58:48,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:58:48,119.119 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-27 11:58:48,815.815 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 11:58:48,816.816 INFO    ] Checking for system updates...
[2026-06-27 11:58:48,837.837 INFO    ] 200
[2026-06-27 11:58:48,839.839 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:58:48,872.872 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:58:48,873.873 INFO    ] No update needed
[2026-06-27 11:58:48,874.874 INFO    ] Checking for camera pi updates...
[2026-06-27 11:58:48,894.894 INFO    ] 200
[2026-06-27 11:58:48,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:58:48,919.919 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:58:48,959.959 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:58:48,960.960 INFO    ] No camera update needed
[2026-06-27 11:58:48,962.962 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:58:48,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:58:48,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:58:48,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:58:51,009.009 INFO    ] ================================================
[2026-06-27 11:58:51,026.026 INFO    ] Launching Daemon at Sat Jun 27 11:58:51 IST 2026
[2026-06-27 11:58:51,036.036 INFO    ] ================================================
[2026-06-27 11:58:51,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:58:51
[2026-06-27 11:58:51,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:58:51,854.854 INFO    ] Initializing speech engine...
[2026-06-27 11:58:51,858.858 INFO    ] 2026-06-27 11:58:51
[2026-06-27 11:58:52,055.055 INFO    ] 2026-06-27 11:58:52
[2026-06-27 11:58:52,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:58:52,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:58:52,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:58:52,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:58:52,542.542 INFO    ] time= 27/06/2026 11:58:52
[2026-06-27 11:58:52,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:58:52,574.574 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:58:52,644.644 INFO    ] No existing commands found in stream
[2026-06-27 11:58:57,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:58:57,658.658 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-27 11:59:00,663.663 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 11:59:00,664.664 INFO    ] Checking for system updates...
[2026-06-27 11:59:00,686.686 INFO    ] 200
[2026-06-27 11:59:00,687.687 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:59:00,717.717 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:59:00,719.719 INFO    ] No update needed
[2026-06-27 11:59:00,720.720 INFO    ] Checking for camera pi updates...
[2026-06-27 11:59:00,739.739 INFO    ] 200
[2026-06-27 11:59:00,741.741 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:59:00,766.766 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:59:00,804.804 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:59:00,805.805 INFO    ] No camera update needed
[2026-06-27 11:59:00,806.806 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:59:00,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:59:00,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:59:00,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:59:02,846.846 INFO    ] ================================================
[2026-06-27 11:59:02,855.855 INFO    ] Launching Daemon at Sat Jun 27 11:59:02 IST 2026
[2026-06-27 11:59:02,861.861 INFO    ] ================================================
[2026-06-27 11:59:03,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:59:03
[2026-06-27 11:59:03,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:59:03,686.686 INFO    ] Initializing speech engine...
[2026-06-27 11:59:03,697.697 INFO    ] 2026-06-27 11:59:03
[2026-06-27 11:59:03,910.910 INFO    ] 2026-06-27 11:59:03
[2026-06-27 11:59:03,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:59:04,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:59:04,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:59:04,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:59:04,342.342 INFO    ] time= 27/06/2026 11:59:04
[2026-06-27 11:59:04,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:59:04,364.364 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:59:04,431.431 INFO    ] No existing commands found in stream
[2026-06-27 11:59:09,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:59:09,445.445 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-27 11:59:13,417.417 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 11:59:13,419.419 INFO    ] Checking for system updates...
[2026-06-27 11:59:13,440.440 INFO    ] 200
[2026-06-27 11:59:13,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:59:13,474.474 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:59:13,476.476 INFO    ] No update needed
[2026-06-27 11:59:13,477.477 INFO    ] Checking for camera pi updates...
[2026-06-27 11:59:13,497.497 INFO    ] 200
[2026-06-27 11:59:13,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:59:13,522.522 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:59:13,563.563 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:59:13,565.565 INFO    ] No camera update needed
[2026-06-27 11:59:13,566.566 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:59:13,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:59:13,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:59:13,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:59:15,612.612 INFO    ] ================================================
[2026-06-27 11:59:15,628.628 INFO    ] Launching Daemon at Sat Jun 27 11:59:15 IST 2026
[2026-06-27 11:59:15,639.639 INFO    ] ================================================
[2026-06-27 11:59:15,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:59:15
[2026-06-27 11:59:16,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:59:16,439.439 INFO    ] Initializing speech engine...
[2026-06-27 11:59:16,444.444 INFO    ] 2026-06-27 11:59:16
[2026-06-27 11:59:16,649.649 INFO    ] 2026-06-27 11:59:16
[2026-06-27 11:59:16,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:59:16,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:59:16,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:59:17,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:59:17,088.088 INFO    ] time= 27/06/2026 11:59:17
[2026-06-27 11:59:17,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:59:17,095.095 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:59:17,163.163 INFO    ] No existing commands found in stream
[2026-06-27 11:59:22,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:59:22,182.182 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-27 11:59:25,700.700 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 11:59:25,701.701 INFO    ] Checking for system updates...
[2026-06-27 11:59:25,722.722 INFO    ] 200
[2026-06-27 11:59:25,723.723 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:59:25,755.755 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:59:25,756.756 INFO    ] No update needed
[2026-06-27 11:59:25,757.757 INFO    ] Checking for camera pi updates...
[2026-06-27 11:59:25,778.778 INFO    ] 200
[2026-06-27 11:59:25,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:59:25,805.805 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:59:25,852.852 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 11:59:25,853.853 INFO    ] No camera update needed
[2026-06-27 11:59:25,854.854 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:59:25,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:59:25,858.858 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:59:25,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:59:27,901.901 INFO    ] ================================================
[2026-06-27 11:59:27,917.917 INFO    ] Launching Daemon at Sat Jun 27 11:59:27 IST 2026
[2026-06-27 11:59:27,928.928 INFO    ] ================================================
[2026-06-27 11:59:28,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:59:28
[2026-06-27 11:59:28,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:59:28,739.739 INFO    ] Initializing speech engine...
[2026-06-27 11:59:28,744.744 INFO    ] 2026-06-27 11:59:28
[2026-06-27 11:59:28,970.970 INFO    ] 2026-06-27 11:59:28
[2026-06-27 11:59:29,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:59:29,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:59:29,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:59:29,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:59:29,380.380 INFO    ] time= 27/06/2026 11:59:29
[2026-06-27 11:59:29,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:59:29,422.422 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:59:29,513.513 INFO    ] No existing commands found in stream
[2026-06-27 11:59:34,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:59:34,525.525 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-27 11:59:41,629.629 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 11:59:41,630.630 INFO    ] Checking for system updates...
[2026-06-27 11:59:41,652.652 INFO    ] 200
[2026-06-27 11:59:41,654.654 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:59:41,687.687 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:59:41,688.688 INFO    ] No update needed
[2026-06-27 11:59:41,690.690 INFO    ] Checking for camera pi updates...
[2026-06-27 11:59:41,713.713 INFO    ] 200
[2026-06-27 11:59:41,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:59:41,738.738 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:59:41,779.779 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:59:41,781.781 INFO    ] No camera update needed
[2026-06-27 11:59:41,782.782 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:59:41,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:59:41,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:59:41,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:59:43,830.830 INFO    ] ================================================
[2026-06-27 11:59:43,845.845 INFO    ] Launching Daemon at Sat Jun 27 11:59:43 IST 2026
[2026-06-27 11:59:43,855.855 INFO    ] ================================================
[2026-06-27 11:59:44,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:59:44
[2026-06-27 11:59:44,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:59:44,681.681 INFO    ] Initializing speech engine...
[2026-06-27 11:59:44,685.685 INFO    ] 2026-06-27 11:59:44
[2026-06-27 11:59:44,887.887 INFO    ] 2026-06-27 11:59:44
[2026-06-27 11:59:44,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:59:45,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:59:45,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:59:45,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:59:45,305.305 INFO    ] time= 27/06/2026 11:59:45
[2026-06-27 11:59:45,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:59:45,334.334 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:59:45,400.400 INFO    ] No existing commands found in stream
[2026-06-27 11:59:50,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 11:59:50,413.413 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-27 11:59:54,733.733 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 11:59:54,735.735 INFO    ] Checking for system updates...
[2026-06-27 11:59:54,756.756 INFO    ] 200
[2026-06-27 11:59:54,757.757 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:59:54,787.787 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:59:54,789.789 INFO    ] No update needed
[2026-06-27 11:59:54,790.790 INFO    ] Checking for camera pi updates...
[2026-06-27 11:59:54,809.809 INFO    ] 200
[2026-06-27 11:59:54,810.810 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 11:59:54,836.836 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 11:59:54,870.870 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 11:59:54,872.872 INFO    ] No camera update needed
[2026-06-27 11:59:54,873.873 INFO    ] Script finished. Safe exiting...
[2026-06-27 11:59:54,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 11:59:54,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 11:59:54,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 11:59:56,920.920 INFO    ] ================================================
[2026-06-27 11:59:56,935.935 INFO    ] Launching Daemon at Sat Jun 27 11:59:56 IST 2026
[2026-06-27 11:59:56,946.946 INFO    ] ================================================
[2026-06-27 11:59:57,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 11:59:57
[2026-06-27 11:59:57,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 11:59:57,748.748 INFO    ] Initializing speech engine...
[2026-06-27 11:59:57,756.756 INFO    ] 2026-06-27 11:59:57
[2026-06-27 11:59:57,969.969 INFO    ] 2026-06-27 11:59:57
[2026-06-27 11:59:57,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 11:59:58,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 11:59:58,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 11:59:58,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 11:59:58,365.365 INFO    ] time= 27/06/2026 11:59:58
[2026-06-27 11:59:58,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 11:59:58,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-27 11:59:58,497.497 INFO    ] No existing commands found in stream
[2026-06-27 12:00:03,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:00:03,508.508 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-27 12:00:09,119.119 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 12:00:09,121.121 INFO    ] Checking for system updates...
[2026-06-27 12:00:09,159.159 INFO    ] 200
[2026-06-27 12:00:09,161.161 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:00:09,222.222 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:00:09,225.225 INFO    ] No update needed
[2026-06-27 12:00:09,227.227 INFO    ] Checking for camera pi updates...
[2026-06-27 12:00:09,258.258 INFO    ] 200
[2026-06-27 12:00:09,259.259 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:00:09,284.284 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:00:09,320.320 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:00:09,322.322 INFO    ] No camera update needed
[2026-06-27 12:00:09,323.323 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:00:09,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:00:09,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:00:09,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:00:11,370.370 INFO    ] ================================================
[2026-06-27 12:00:11,385.385 INFO    ] Launching Daemon at Sat Jun 27 12:00:11 IST 2026
[2026-06-27 12:00:11,396.396 INFO    ] ================================================
[2026-06-27 12:00:11,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:00:11
[2026-06-27 12:00:12,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:00:12,197.197 INFO    ] Initializing speech engine...
[2026-06-27 12:00:12,207.207 INFO    ] 2026-06-27 12:00:12
[2026-06-27 12:00:12,417.417 INFO    ] 2026-06-27 12:00:12
[2026-06-27 12:00:12,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:00:12,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:00:12,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:00:12,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:00:12,856.856 INFO    ] time= 27/06/2026 12:00:12
[2026-06-27 12:00:12,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:00:12,888.888 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:00:12,959.959 INFO    ] No existing commands found in stream
[2026-06-27 12:00:17,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:00:17,972.972 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-27 12:00:18,989.989 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 12:00:18,990.990 INFO    ] Checking for system updates...
[2026-06-27 12:00:19,011.011 INFO    ] 200
[2026-06-27 12:00:19,012.012 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:00:19,042.042 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:00:19,044.044 INFO    ] No update needed
[2026-06-27 12:00:19,045.045 INFO    ] Checking for camera pi updates...
[2026-06-27 12:00:19,068.068 INFO    ] 200
[2026-06-27 12:00:19,070.070 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:00:19,095.095 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:00:19,133.133 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:00:19,134.134 INFO    ] No camera update needed
[2026-06-27 12:00:19,136.136 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:00:19,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:00:19,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:00:19,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:00:21,177.177 INFO    ] ================================================
[2026-06-27 12:00:21,192.192 INFO    ] Launching Daemon at Sat Jun 27 12:00:21 IST 2026
[2026-06-27 12:00:21,203.203 INFO    ] ================================================
[2026-06-27 12:00:21,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:00:21
[2026-06-27 12:00:21,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:00:22,066.066 INFO    ] Initializing speech engine...
[2026-06-27 12:00:22,071.071 INFO    ] 2026-06-27 12:00:22
[2026-06-27 12:00:22,281.281 INFO    ] 2026-06-27 12:00:22
[2026-06-27 12:00:22,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:00:22,500.500 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:00:22,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:00:22,645.645 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:00:22,707.707 INFO    ] time= 27/06/2026 12:00:22
[2026-06-27 12:00:22,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:00:22,739.739 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:00:22,807.807 INFO    ] No existing commands found in stream
[2026-06-27 12:00:27,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:00:27,820.820 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-27 12:00:29,965.965 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 12:00:29,967.967 INFO    ] Checking for system updates...
[2026-06-27 12:00:29,990.990 INFO    ] 200
[2026-06-27 12:00:29,992.992 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:00:30,025.025 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:00:30,027.027 INFO    ] No update needed
[2026-06-27 12:00:30,028.028 INFO    ] Checking for camera pi updates...
[2026-06-27 12:00:30,048.048 INFO    ] 200
[2026-06-27 12:00:30,050.050 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:00:30,075.075 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:00:30,117.117 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:00:30,118.118 INFO    ] No camera update needed
[2026-06-27 12:00:30,119.119 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:00:30,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:00:30,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:00:30,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:00:32,161.161 INFO    ] ================================================
[2026-06-27 12:00:32,171.171 INFO    ] Launching Daemon at Sat Jun 27 12:00:32 IST 2026
[2026-06-27 12:00:32,178.178 INFO    ] ================================================
[2026-06-27 12:00:32,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:00:32
[2026-06-27 12:00:32,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:00:33,000.000 INFO    ] Initializing speech engine...
[2026-06-27 12:00:33,010.010 INFO    ] 2026-06-27 12:00:33
[2026-06-27 12:00:33,218.218 INFO    ] 2026-06-27 12:00:33
[2026-06-27 12:00:33,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:00:33,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:00:33,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:00:33,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:00:33,668.668 INFO    ] time= 27/06/2026 12:00:33
[2026-06-27 12:00:33,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:00:33,675.675 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:00:33,743.743 INFO    ] No existing commands found in stream
[2026-06-27 12:00:38,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:00:38,758.758 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-27 12:00:40,471.471 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:00:40,472.472 INFO    ] Checking for system updates...
[2026-06-27 12:00:40,497.497 INFO    ] 200
[2026-06-27 12:00:40,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:00:40,531.531 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:00:40,533.533 INFO    ] No update needed
[2026-06-27 12:00:40,534.534 INFO    ] Checking for camera pi updates...
[2026-06-27 12:00:40,557.557 INFO    ] 200
[2026-06-27 12:00:40,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:00:40,582.582 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:00:40,628.628 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:00:40,630.630 INFO    ] No camera update needed
[2026-06-27 12:00:40,631.631 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:00:40,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:00:40,636.636 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:00:40,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:00:42,679.679 INFO    ] ================================================
[2026-06-27 12:00:42,695.695 INFO    ] Launching Daemon at Sat Jun 27 12:00:42 IST 2026
[2026-06-27 12:00:42,706.706 INFO    ] ================================================
[2026-06-27 12:00:43,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:00:43
[2026-06-27 12:00:43,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:00:43,551.551 INFO    ] Initializing speech engine...
[2026-06-27 12:00:43,556.556 INFO    ] 2026-06-27 12:00:43
[2026-06-27 12:00:43,771.771 INFO    ] 2026-06-27 12:00:43
[2026-06-27 12:00:43,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:00:44,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:00:44,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:00:44,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:00:44,218.218 INFO    ] time= 27/06/2026 12:00:44
[2026-06-27 12:00:44,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:00:44,222.222 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:00:44,288.288 INFO    ] No existing commands found in stream
[2026-06-27 12:00:49,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:00:49,306.306 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-27 12:00:50,969.969 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:00:50,971.971 INFO    ] Checking for system updates...
[2026-06-27 12:00:50,992.992 INFO    ] 200
[2026-06-27 12:00:50,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:00:51,025.025 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:00:51,026.026 INFO    ] No update needed
[2026-06-27 12:00:51,028.028 INFO    ] Checking for camera pi updates...
[2026-06-27 12:00:51,049.049 INFO    ] 200
[2026-06-27 12:00:51,050.050 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:00:51,079.079 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:00:51,218.218 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:00:51,219.219 INFO    ] No camera update needed
[2026-06-27 12:00:51,221.221 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:00:51,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:00:51,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:00:51,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:00:53,267.267 INFO    ] ================================================
[2026-06-27 12:00:53,284.284 INFO    ] Launching Daemon at Sat Jun 27 12:00:53 IST 2026
[2026-06-27 12:00:53,295.295 INFO    ] ================================================
[2026-06-27 12:00:53,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:00:53
[2026-06-27 12:00:54,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:00:54,168.168 INFO    ] Initializing speech engine...
[2026-06-27 12:00:54,174.174 INFO    ] 2026-06-27 12:00:54
[2026-06-27 12:00:54,384.384 INFO    ] 2026-06-27 12:00:54
[2026-06-27 12:00:54,416.416 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:00:54,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:00:54,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:00:54,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:00:54,811.811 INFO    ] time= 27/06/2026 12:00:54
[2026-06-27 12:00:54,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:00:54,845.845 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:00:54,918.918 INFO    ] No existing commands found in stream
[2026-06-27 12:00:59,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:00:59,930.930 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-27 12:01:03,794.794 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 12:01:03,796.796 INFO    ] Checking for system updates...
[2026-06-27 12:01:03,818.818 INFO    ] 200
[2026-06-27 12:01:03,819.819 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:01:03,854.854 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:01:03,855.855 INFO    ] No update needed
[2026-06-27 12:01:03,857.857 INFO    ] Checking for camera pi updates...
[2026-06-27 12:01:03,877.877 INFO    ] 200
[2026-06-27 12:01:03,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:01:03,902.902 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:01:03,943.943 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:01:03,945.945 INFO    ] No camera update needed
[2026-06-27 12:01:03,946.946 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:01:03,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:01:03,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:01:03,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:01:05,993.993 INFO    ] ================================================
[2026-06-27 12:01:06,008.008 INFO    ] Launching Daemon at Sat Jun 27 12:01:06 IST 2026
[2026-06-27 12:01:06,020.020 INFO    ] ================================================
[2026-06-27 12:01:06,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:01:06
[2026-06-27 12:01:06,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:01:06,820.820 INFO    ] Initializing speech engine...
[2026-06-27 12:01:06,826.826 INFO    ] 2026-06-27 12:01:06
[2026-06-27 12:01:07,067.067 INFO    ] 2026-06-27 12:01:07
[2026-06-27 12:01:07,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:01:07,284.284 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:01:07,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:01:07,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:01:07,515.515 INFO    ] time= 27/06/2026 12:01:07
[2026-06-27 12:01:07,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:01:07,522.522 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:01:07,616.616 INFO    ] No existing commands found in stream
[2026-06-27 12:01:12,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:01:12,628.628 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-27 12:01:13,243.243 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:01:13,245.245 INFO    ] Checking for system updates...
[2026-06-27 12:01:13,265.265 INFO    ] 200
[2026-06-27 12:01:13,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:01:13,297.297 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:01:13,299.299 INFO    ] No update needed
[2026-06-27 12:01:13,300.300 INFO    ] Checking for camera pi updates...
[2026-06-27 12:01:13,321.321 INFO    ] 200
[2026-06-27 12:01:13,322.322 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:01:13,351.351 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:01:13,397.397 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:01:13,398.398 INFO    ] No camera update needed
[2026-06-27 12:01:13,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:01:13,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:01:13,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:01:13,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:01:15,438.438 INFO    ] ================================================
[2026-06-27 12:01:15,454.454 INFO    ] Launching Daemon at Sat Jun 27 12:01:15 IST 2026
[2026-06-27 12:01:15,465.465 INFO    ] ================================================
[2026-06-27 12:01:15,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:01:15
[2026-06-27 12:01:16,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:01:16,332.332 INFO    ] Initializing speech engine...
[2026-06-27 12:01:16,337.337 INFO    ] 2026-06-27 12:01:16
[2026-06-27 12:01:16,548.548 INFO    ] 2026-06-27 12:01:16
[2026-06-27 12:01:16,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:01:16,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:01:16,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:01:16,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:01:16,978.978 INFO    ] time= 27/06/2026 12:01:16
[2026-06-27 12:01:17,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:01:17,006.006 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:01:17,075.075 INFO    ] No existing commands found in stream
[2026-06-27 12:01:22,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:01:22,110.110 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-27 12:01:23,350.350 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 12:01:23,351.351 INFO    ] Checking for system updates...
[2026-06-27 12:01:23,373.373 INFO    ] 200
[2026-06-27 12:01:23,374.374 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:01:23,405.405 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:01:23,407.407 INFO    ] No update needed
[2026-06-27 12:01:23,408.408 INFO    ] Checking for camera pi updates...
[2026-06-27 12:01:23,428.428 INFO    ] 200
[2026-06-27 12:01:23,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:01:23,453.453 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:01:23,495.495 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:01:23,496.496 INFO    ] No camera update needed
[2026-06-27 12:01:23,498.498 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:01:23,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:01:23,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:01:23,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:01:25,529.529 INFO    ] ================================================
[2026-06-27 12:01:25,537.537 INFO    ] Launching Daemon at Sat Jun 27 12:01:25 IST 2026
[2026-06-27 12:01:25,544.544 INFO    ] ================================================
[2026-06-27 12:01:25,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:01:25
[2026-06-27 12:01:26,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:01:26,310.310 INFO    ] Initializing speech engine...
[2026-06-27 12:01:26,318.318 INFO    ] 2026-06-27 12:01:26
[2026-06-27 12:01:26,516.516 INFO    ] 2026-06-27 12:01:26
[2026-06-27 12:01:26,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:01:26,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:01:26,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:01:27,007.007 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:01:27,018.018 INFO    ] time= 27/06/2026 12:01:27
[2026-06-27 12:01:27,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:01:27,079.079 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:01:27,210.210 INFO    ] No existing commands found in stream
[2026-06-27 12:01:32,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:01:32,223.223 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-27 12:01:35,428.428 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:01:35,429.429 INFO    ] Checking for system updates...
[2026-06-27 12:01:35,451.451 INFO    ] 200
[2026-06-27 12:01:35,452.452 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:01:35,486.486 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:01:35,488.488 INFO    ] No update needed
[2026-06-27 12:01:35,489.489 INFO    ] Checking for camera pi updates...
[2026-06-27 12:01:35,508.508 INFO    ] 200
[2026-06-27 12:01:35,510.510 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:01:35,533.533 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:01:35,566.566 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:01:35,567.567 INFO    ] No camera update needed
[2026-06-27 12:01:35,568.568 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:01:35,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:01:35,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:01:35,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:01:37,616.616 INFO    ] ================================================
[2026-06-27 12:01:37,632.632 INFO    ] Launching Daemon at Sat Jun 27 12:01:37 IST 2026
[2026-06-27 12:01:37,644.644 INFO    ] ================================================
[2026-06-27 12:01:38,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:01:38
[2026-06-27 12:01:38,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:01:38,533.533 INFO    ] Initializing speech engine...
[2026-06-27 12:01:38,543.543 INFO    ] 2026-06-27 12:01:38
[2026-06-27 12:01:38,759.759 INFO    ] 2026-06-27 12:01:38
[2026-06-27 12:01:38,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:01:38,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:01:38,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:01:39,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:01:39,212.212 INFO    ] time= 27/06/2026 12:01:39
[2026-06-27 12:01:39,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:01:39,219.219 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:01:39,311.311 INFO    ] No existing commands found in stream
[2026-06-27 12:01:44,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:01:44,330.330 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-27 12:01:48,077.077 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 12:01:48,079.079 INFO    ] Checking for system updates...
[2026-06-27 12:01:48,101.101 INFO    ] 200
[2026-06-27 12:01:48,102.102 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:01:48,136.136 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:01:48,137.137 INFO    ] No update needed
[2026-06-27 12:01:48,139.139 INFO    ] Checking for camera pi updates...
[2026-06-27 12:01:48,158.158 INFO    ] 200
[2026-06-27 12:01:48,160.160 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:01:48,183.183 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:01:48,221.221 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:01:48,223.223 INFO    ] No camera update needed
[2026-06-27 12:01:48,224.224 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:01:48,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:01:48,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:01:48,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:01:50,272.272 INFO    ] ================================================
[2026-06-27 12:01:50,287.287 INFO    ] Launching Daemon at Sat Jun 27 12:01:50 IST 2026
[2026-06-27 12:01:50,298.298 INFO    ] ================================================
[2026-06-27 12:01:50,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:01:50
[2026-06-27 12:01:50,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:01:51,090.090 INFO    ] Initializing speech engine...
[2026-06-27 12:01:51,094.094 INFO    ] 2026-06-27 12:01:51
[2026-06-27 12:01:51,289.289 INFO    ] 2026-06-27 12:01:51
[2026-06-27 12:01:51,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:01:51,500.500 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:01:51,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:01:51,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:01:51,777.777 INFO    ] time= 27/06/2026 12:01:51
[2026-06-27 12:01:51,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:01:51,825.825 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:01:51,902.902 INFO    ] No existing commands found in stream
[2026-06-27 12:01:56,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:01:56,915.915 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-27 12:01:59,168.168 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:01:59,170.170 INFO    ] Checking for system updates...
[2026-06-27 12:01:59,191.191 INFO    ] 200
[2026-06-27 12:01:59,192.192 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:01:59,224.224 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:01:59,226.226 INFO    ] No update needed
[2026-06-27 12:01:59,227.227 INFO    ] Checking for camera pi updates...
[2026-06-27 12:01:59,246.246 INFO    ] 200
[2026-06-27 12:01:59,248.248 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:01:59,271.271 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:01:59,312.312 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:01:59,313.313 INFO    ] No camera update needed
[2026-06-27 12:01:59,314.314 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:01:59,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:01:59,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:01:59,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:02:01,360.360 INFO    ] ================================================
[2026-06-27 12:02:01,381.381 INFO    ] Launching Daemon at Sat Jun 27 12:02:01 IST 2026
[2026-06-27 12:02:01,401.401 INFO    ] ================================================
[2026-06-27 12:02:01,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:02:01
[2026-06-27 12:02:02,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:02:02,405.405 INFO    ] Initializing speech engine...
[2026-06-27 12:02:02,419.419 INFO    ] 2026-06-27 12:02:02
[2026-06-27 12:02:02,638.638 INFO    ] 2026-06-27 12:02:02
[2026-06-27 12:02:02,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:02:02,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:02:02,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:02:03,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:02:03,080.080 INFO    ] time= 27/06/2026 12:02:03
[2026-06-27 12:02:03,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:02:03,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:02:03,156.156 INFO    ] No existing commands found in stream
[2026-06-27 12:02:08,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:02:08,169.169 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-27 12:02:10,558.558 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 12:02:10,560.560 INFO    ] Checking for system updates...
[2026-06-27 12:02:10,581.581 INFO    ] 200
[2026-06-27 12:02:10,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:02:10,616.616 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:02:10,618.618 INFO    ] No update needed
[2026-06-27 12:02:10,619.619 INFO    ] Checking for camera pi updates...
[2026-06-27 12:02:10,639.639 INFO    ] 200
[2026-06-27 12:02:10,640.640 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:02:10,666.666 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:02:10,717.717 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:02:10,718.718 INFO    ] No camera update needed
[2026-06-27 12:02:10,719.719 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:02:10,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:02:10,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:02:10,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:02:12,752.752 INFO    ] ================================================
[2026-06-27 12:02:12,760.760 INFO    ] Launching Daemon at Sat Jun 27 12:02:12 IST 2026
[2026-06-27 12:02:12,767.767 INFO    ] ================================================
[2026-06-27 12:02:13,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:02:13
[2026-06-27 12:02:13,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:02:13,583.583 INFO    ] Initializing speech engine...
[2026-06-27 12:02:13,588.588 INFO    ] 2026-06-27 12:02:13
[2026-06-27 12:02:13,799.799 INFO    ] 2026-06-27 12:02:13
[2026-06-27 12:02:13,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:02:14,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:02:14,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:02:14,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:02:14,280.280 INFO    ] time= 27/06/2026 12:02:14
[2026-06-27 12:02:14,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:02:14,298.298 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:02:14,373.373 INFO    ] No existing commands found in stream
[2026-06-27 12:02:19,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:02:19,390.390 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-27 12:02:21,045.045 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 12:02:21,047.047 INFO    ] Checking for system updates...
[2026-06-27 12:02:21,069.069 INFO    ] 200
[2026-06-27 12:02:21,070.070 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:02:21,101.101 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:02:21,102.102 INFO    ] No update needed
[2026-06-27 12:02:21,104.104 INFO    ] Checking for camera pi updates...
[2026-06-27 12:02:21,124.124 INFO    ] 200
[2026-06-27 12:02:21,125.125 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:02:21,149.149 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:02:21,187.187 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:02:21,188.188 INFO    ] No camera update needed
[2026-06-27 12:02:21,190.190 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:02:21,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:02:21,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:02:21,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:02:23,240.240 INFO    ] ================================================
[2026-06-27 12:02:23,256.256 INFO    ] Launching Daemon at Sat Jun 27 12:02:23 IST 2026
[2026-06-27 12:02:23,268.268 INFO    ] ================================================
[2026-06-27 12:02:23,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:02:23
[2026-06-27 12:02:23,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:02:24,116.116 INFO    ] Initializing speech engine...
[2026-06-27 12:02:24,122.122 INFO    ] 2026-06-27 12:02:24
[2026-06-27 12:02:24,327.327 INFO    ] 2026-06-27 12:02:24
[2026-06-27 12:02:24,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:02:24,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:02:24,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:02:24,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:02:24,769.769 INFO    ] time= 27/06/2026 12:02:24
[2026-06-27 12:02:24,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:02:24,777.777 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:02:24,843.843 INFO    ] No existing commands found in stream
[2026-06-27 12:02:29,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:02:29,857.857 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-27 12:02:31,363.363 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 12:02:31,365.365 INFO    ] Checking for system updates...
[2026-06-27 12:02:31,388.388 INFO    ] 200
[2026-06-27 12:02:31,389.389 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:02:31,423.423 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:02:31,424.424 INFO    ] No update needed
[2026-06-27 12:02:31,426.426 INFO    ] Checking for camera pi updates...
[2026-06-27 12:02:31,447.447 INFO    ] 200
[2026-06-27 12:02:31,448.448 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:02:31,474.474 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:02:31,502.502 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:02:31,504.504 INFO    ] No camera update needed
[2026-06-27 12:02:31,506.506 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:02:31,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:02:31,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:02:31,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:02:33,550.550 INFO    ] ================================================
[2026-06-27 12:02:33,567.567 INFO    ] Launching Daemon at Sat Jun 27 12:02:33 IST 2026
[2026-06-27 12:02:33,579.579 INFO    ] ================================================
[2026-06-27 12:02:33,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:02:33
[2026-06-27 12:02:34,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:02:34,349.349 INFO    ] Initializing speech engine...
[2026-06-27 12:02:34,354.354 INFO    ] 2026-06-27 12:02:34
[2026-06-27 12:02:34,570.570 INFO    ] 2026-06-27 12:02:34
[2026-06-27 12:02:34,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:02:34,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:02:34,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:02:34,984.984 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:02:35,009.009 INFO    ] time= 27/06/2026 12:02:34
[2026-06-27 12:02:35,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:02:35,016.016 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:02:35,081.081 INFO    ] No existing commands found in stream
[2026-06-27 12:02:40,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:02:40,092.092 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-27 12:02:41,798.798 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 12:02:41,800.800 INFO    ] Checking for system updates...
[2026-06-27 12:02:41,822.822 INFO    ] 200
[2026-06-27 12:02:41,824.824 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:02:41,858.858 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:02:41,860.860 INFO    ] No update needed
[2026-06-27 12:02:41,861.861 INFO    ] Checking for camera pi updates...
[2026-06-27 12:02:41,882.882 INFO    ] 200
[2026-06-27 12:02:41,883.883 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:02:41,907.907 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:02:41,946.946 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:02:41,948.948 INFO    ] No camera update needed
[2026-06-27 12:02:41,949.949 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:02:41,950.950 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:02:41,953.953 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:02:41,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:02:44,995.995 INFO    ] ================================================
[2026-06-27 12:02:44,011.011 INFO    ] Launching Daemon at Sat Jun 27 12:02:44 IST 2026
[2026-06-27 12:02:44,023.023 INFO    ] ================================================
[2026-06-27 12:02:44,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:02:44
[2026-06-27 12:02:44,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:02:44,906.906 INFO    ] Initializing speech engine...
[2026-06-27 12:02:44,911.911 INFO    ] 2026-06-27 12:02:44
[2026-06-27 12:02:45,118.118 INFO    ] 2026-06-27 12:02:45
[2026-06-27 12:02:45,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:02:45,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:02:45,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:02:45,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:02:45,542.542 INFO    ] time= 27/06/2026 12:02:45
[2026-06-27 12:02:45,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:02:45,569.569 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:02:45,637.637 INFO    ] No existing commands found in stream
[2026-06-27 12:02:50,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:02:50,650.650 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-27 12:02:53,173.173 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:02:53,175.175 INFO    ] Checking for system updates...
[2026-06-27 12:02:53,197.197 INFO    ] 200
[2026-06-27 12:02:53,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:02:53,229.229 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:02:53,230.230 INFO    ] No update needed
[2026-06-27 12:02:53,232.232 INFO    ] Checking for camera pi updates...
[2026-06-27 12:02:53,253.253 INFO    ] 200
[2026-06-27 12:02:53,255.255 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:02:53,282.282 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:02:53,422.422 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:02:53,424.424 INFO    ] No camera update needed
[2026-06-27 12:02:53,425.425 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:02:53,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:02:53,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:02:53,433.433 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:02:55,474.474 INFO    ] ================================================
[2026-06-27 12:02:55,491.491 INFO    ] Launching Daemon at Sat Jun 27 12:02:55 IST 2026
[2026-06-27 12:02:55,502.502 INFO    ] ================================================
[2026-06-27 12:02:55,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:02:55
[2026-06-27 12:02:56,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:02:56,302.302 INFO    ] Initializing speech engine...
[2026-06-27 12:02:56,311.311 INFO    ] 2026-06-27 12:02:56
[2026-06-27 12:02:56,527.527 INFO    ] 2026-06-27 12:02:56
[2026-06-27 12:02:56,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:02:56,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:02:56,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:02:56,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:02:56,958.958 INFO    ] time= 27/06/2026 12:02:56
[2026-06-27 12:02:56,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:02:56,986.986 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:02:57,055.055 INFO    ] No existing commands found in stream
[2026-06-27 12:03:02,063.063 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:03:02,065.065 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-27 12:03:04,453.453 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:03:04,456.456 INFO    ] Checking for system updates...
[2026-06-27 12:03:04,478.478 INFO    ] 200
[2026-06-27 12:03:04,480.480 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:03:04,514.514 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:03:04,516.516 INFO    ] No update needed
[2026-06-27 12:03:04,517.517 INFO    ] Checking for camera pi updates...
[2026-06-27 12:03:04,539.539 INFO    ] 200
[2026-06-27 12:03:04,540.540 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:03:04,567.567 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:03:04,605.605 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:03:04,606.606 INFO    ] No camera update needed
[2026-06-27 12:03:04,608.608 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:03:04,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:03:04,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:03:04,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:03:06,656.656 INFO    ] ================================================
[2026-06-27 12:03:06,672.672 INFO    ] Launching Daemon at Sat Jun 27 12:03:06 IST 2026
[2026-06-27 12:03:06,684.684 INFO    ] ================================================
[2026-06-27 12:03:07,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:03:07
[2026-06-27 12:03:07,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:03:07,477.477 INFO    ] Initializing speech engine...
[2026-06-27 12:03:07,488.488 INFO    ] 2026-06-27 12:03:07
[2026-06-27 12:03:07,702.702 INFO    ] 2026-06-27 12:03:07
[2026-06-27 12:03:07,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:03:07,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:03:07,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:03:08,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:03:08,141.141 INFO    ] time= 27/06/2026 12:03:08
[2026-06-27 12:03:08,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:03:08,183.183 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:03:08,255.255 INFO    ] No existing commands found in stream
[2026-06-27 12:03:13,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:03:13,268.268 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-27 12:03:14,380.380 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 12:03:14,382.382 INFO    ] Checking for system updates...
[2026-06-27 12:03:14,408.408 INFO    ] 200
[2026-06-27 12:03:14,409.409 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:03:14,444.444 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:03:14,446.446 INFO    ] No update needed
[2026-06-27 12:03:14,447.447 INFO    ] Checking for camera pi updates...
[2026-06-27 12:03:14,466.466 INFO    ] 200
[2026-06-27 12:03:14,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:03:14,491.491 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:03:14,527.527 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:03:14,529.529 INFO    ] No camera update needed
[2026-06-27 12:03:14,530.530 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:03:14,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:03:14,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:03:14,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:03:16,578.578 INFO    ] ================================================
[2026-06-27 12:03:16,595.595 INFO    ] Launching Daemon at Sat Jun 27 12:03:16 IST 2026
[2026-06-27 12:03:16,606.606 INFO    ] ================================================
[2026-06-27 12:03:16,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:03:16
[2026-06-27 12:03:17,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:03:17,489.489 INFO    ] Initializing speech engine...
[2026-06-27 12:03:17,495.495 INFO    ] 2026-06-27 12:03:17
[2026-06-27 12:03:17,710.710 INFO    ] 2026-06-27 12:03:17
[2026-06-27 12:03:17,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:03:17,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:03:17,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:03:18,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:03:18,155.155 INFO    ] time= 27/06/2026 12:03:18
[2026-06-27 12:03:18,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:03:18,162.162 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:03:18,230.230 INFO    ] No existing commands found in stream
[2026-06-27 12:03:23,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:03:23,258.258 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-27 12:03:24,814.814 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:03:24,816.816 INFO    ] Checking for system updates...
[2026-06-27 12:03:24,837.837 INFO    ] 200
[2026-06-27 12:03:24,839.839 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:03:24,873.873 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:03:24,875.875 INFO    ] No update needed
[2026-06-27 12:03:24,876.876 INFO    ] Checking for camera pi updates...
[2026-06-27 12:03:24,899.899 INFO    ] 200
[2026-06-27 12:03:24,900.900 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:03:24,925.925 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:03:24,975.975 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:03:24,976.976 INFO    ] No camera update needed
[2026-06-27 12:03:24,977.977 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:03:24,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:03:24,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:03:24,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:03:27,026.026 INFO    ] ================================================
[2026-06-27 12:03:27,041.041 INFO    ] Launching Daemon at Sat Jun 27 12:03:27 IST 2026
[2026-06-27 12:03:27,053.053 INFO    ] ================================================
[2026-06-27 12:03:27,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:03:27
[2026-06-27 12:03:27,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:03:27,866.866 INFO    ] Initializing speech engine...
[2026-06-27 12:03:27,878.878 INFO    ] 2026-06-27 12:03:27
[2026-06-27 12:03:28,087.087 INFO    ] 2026-06-27 12:03:28
[2026-06-27 12:03:28,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:03:28,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:03:28,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:03:28,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:03:28,528.528 INFO    ] time= 27/06/2026 12:03:28
[2026-06-27 12:03:28,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:03:28,536.536 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:03:28,602.602 INFO    ] No existing commands found in stream
[2026-06-27 12:03:33,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:03:33,620.620 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-27 12:03:35,747.747 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 12:03:35,748.748 INFO    ] Checking for system updates...
[2026-06-27 12:03:35,770.770 INFO    ] 200
[2026-06-27 12:03:35,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:03:35,806.806 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:03:35,808.808 INFO    ] No update needed
[2026-06-27 12:03:35,809.809 INFO    ] Checking for camera pi updates...
[2026-06-27 12:03:35,832.832 INFO    ] 200
[2026-06-27 12:03:35,834.834 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:03:35,860.860 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:03:35,901.901 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:03:35,902.902 INFO    ] No camera update needed
[2026-06-27 12:03:35,904.904 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:03:35,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:03:35,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:03:35,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:03:37,951.951 INFO    ] ================================================
[2026-06-27 12:03:37,967.967 INFO    ] Launching Daemon at Sat Jun 27 12:03:37 IST 2026
[2026-06-27 12:03:37,983.983 INFO    ] ================================================
[2026-06-27 12:03:38,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:03:38
[2026-06-27 12:03:38,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:03:38,786.786 INFO    ] Initializing speech engine...
[2026-06-27 12:03:38,792.792 INFO    ] 2026-06-27 12:03:38
[2026-06-27 12:03:38,996.996 INFO    ] 2026-06-27 12:03:38
[2026-06-27 12:03:39,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:03:39,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:03:39,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:03:39,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:03:39,443.443 INFO    ] time= 27/06/2026 12:03:39
[2026-06-27 12:03:39,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:03:39,450.450 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:03:39,516.516 INFO    ] No existing commands found in stream
[2026-06-27 12:03:44,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:03:44,529.529 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-27 12:03:46,105.105 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 12:03:46,106.106 INFO    ] Checking for system updates...
[2026-06-27 12:03:46,131.131 INFO    ] 200
[2026-06-27 12:03:46,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:03:46,162.162 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:03:46,164.164 INFO    ] No update needed
[2026-06-27 12:03:46,165.165 INFO    ] Checking for camera pi updates...
[2026-06-27 12:03:46,185.185 INFO    ] 200
[2026-06-27 12:03:46,187.187 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:03:46,210.210 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:03:46,252.252 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:03:46,253.253 INFO    ] No camera update needed
[2026-06-27 12:03:46,255.255 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:03:46,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:03:46,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:03:46,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:03:48,301.301 INFO    ] ================================================
[2026-06-27 12:03:48,317.317 INFO    ] Launching Daemon at Sat Jun 27 12:03:48 IST 2026
[2026-06-27 12:03:48,329.329 INFO    ] ================================================
[2026-06-27 12:03:48,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:03:48
[2026-06-27 12:03:48,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:03:49,129.129 INFO    ] Initializing speech engine...
[2026-06-27 12:03:49,133.133 INFO    ] 2026-06-27 12:03:49
[2026-06-27 12:03:49,351.351 INFO    ] 2026-06-27 12:03:49
[2026-06-27 12:03:49,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:03:49,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:03:49,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:03:49,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:03:49,809.809 INFO    ] time= 27/06/2026 12:03:49
[2026-06-27 12:03:49,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:03:49,868.868 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:03:49,945.945 INFO    ] No existing commands found in stream
[2026-06-27 12:03:54,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:03:54,958.958 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-27 12:03:58,397.397 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 12:03:58,399.399 INFO    ] Checking for system updates...
[2026-06-27 12:03:58,424.424 INFO    ] 200
[2026-06-27 12:03:58,425.425 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:03:58,455.455 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:03:58,456.456 INFO    ] No update needed
[2026-06-27 12:03:58,458.458 INFO    ] Checking for camera pi updates...
[2026-06-27 12:03:58,481.481 INFO    ] 200
[2026-06-27 12:03:58,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:03:58,508.508 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:03:58,544.544 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:03:58,546.546 INFO    ] No camera update needed
[2026-06-27 12:03:58,547.547 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:03:58,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:03:58,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:03:58,554.554 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:04:00,594.594 INFO    ] ================================================
[2026-06-27 12:04:00,609.609 INFO    ] Launching Daemon at Sat Jun 27 12:04:00 IST 2026
[2026-06-27 12:04:00,621.621 INFO    ] ================================================
[2026-06-27 12:04:00,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:04:00
[2026-06-27 12:04:01,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:04:01,409.409 INFO    ] Initializing speech engine...
[2026-06-27 12:04:01,416.416 INFO    ] 2026-06-27 12:04:01
[2026-06-27 12:04:01,629.629 INFO    ] 2026-06-27 12:04:01
[2026-06-27 12:04:01,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:04:01,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:04:01,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:04:02,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:04:02,142.142 INFO    ] time= 27/06/2026 12:04:02
[2026-06-27 12:04:02,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:04:02,224.224 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:04:02,383.383 INFO    ] No existing commands found in stream
[2026-06-27 12:04:07,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:04:07,398.398 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-27 12:04:10,128.128 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:04:10,130.130 INFO    ] Checking for system updates...
[2026-06-27 12:04:10,152.152 INFO    ] 200
[2026-06-27 12:04:10,153.153 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:04:10,187.187 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:04:10,188.188 INFO    ] No update needed
[2026-06-27 12:04:10,189.189 INFO    ] Checking for camera pi updates...
[2026-06-27 12:04:10,210.210 INFO    ] 200
[2026-06-27 12:04:10,212.212 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:04:10,235.235 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:04:10,285.285 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:04:10,286.286 INFO    ] No camera update needed
[2026-06-27 12:04:10,287.287 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:04:10,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:04:10,292.292 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:04:10,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:04:12,335.335 INFO    ] ================================================
[2026-06-27 12:04:12,351.351 INFO    ] Launching Daemon at Sat Jun 27 12:04:12 IST 2026
[2026-06-27 12:04:12,362.362 INFO    ] ================================================
[2026-06-27 12:04:12,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:04:12
[2026-06-27 12:04:13,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:04:13,163.163 INFO    ] Initializing speech engine...
[2026-06-27 12:04:13,171.171 INFO    ] 2026-06-27 12:04:13
[2026-06-27 12:04:13,389.389 INFO    ] 2026-06-27 12:04:13
[2026-06-27 12:04:13,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:04:13,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:04:13,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:04:13,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:04:13,836.836 INFO    ] time= 27/06/2026 12:04:13
[2026-06-27 12:04:13,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:04:13,843.843 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:04:13,912.912 INFO    ] No existing commands found in stream
[2026-06-27 12:04:18,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:04:18,924.924 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-27 12:04:20,469.469 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:04:20,471.471 INFO    ] Checking for system updates...
[2026-06-27 12:04:20,495.495 INFO    ] 200
[2026-06-27 12:04:20,496.496 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:04:20,526.526 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:04:20,528.528 INFO    ] No update needed
[2026-06-27 12:04:20,529.529 INFO    ] Checking for camera pi updates...
[2026-06-27 12:04:20,550.550 INFO    ] 200
[2026-06-27 12:04:20,551.551 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:04:20,576.576 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:04:20,616.616 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:04:20,617.617 INFO    ] No camera update needed
[2026-06-27 12:04:20,618.618 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:04:20,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:04:20,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:04:20,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:04:22,663.663 INFO    ] ================================================
[2026-06-27 12:04:22,679.679 INFO    ] Launching Daemon at Sat Jun 27 12:04:22 IST 2026
[2026-06-27 12:04:22,690.690 INFO    ] ================================================
[2026-06-27 12:04:23,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:04:23
[2026-06-27 12:04:23,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:04:23,599.599 INFO    ] Initializing speech engine...
[2026-06-27 12:04:23,605.605 INFO    ] 2026-06-27 12:04:23
[2026-06-27 12:04:23,820.820 INFO    ] 2026-06-27 12:04:23
[2026-06-27 12:04:23,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:04:24,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:04:24,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:04:24,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:04:24,276.276 INFO    ] time= 27/06/2026 12:04:24
[2026-06-27 12:04:24,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:04:24,280.280 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:04:24,349.349 INFO    ] No existing commands found in stream
[2026-06-27 12:04:29,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:04:29,361.361 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-27 12:04:32,995.995 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 12:04:32,996.996 INFO    ] Checking for system updates...
[2026-06-27 12:04:33,019.019 INFO    ] 200
[2026-06-27 12:04:33,020.020 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:04:33,051.051 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:04:33,052.052 INFO    ] No update needed
[2026-06-27 12:04:33,054.054 INFO    ] Checking for camera pi updates...
[2026-06-27 12:04:33,075.075 INFO    ] 200
[2026-06-27 12:04:33,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:04:33,101.101 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:04:33,123.123 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:04:33,124.124 INFO    ] No camera update needed
[2026-06-27 12:04:33,125.125 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:04:33,127.127 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:04:33,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:04:33,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:04:35,172.172 INFO    ] ================================================
[2026-06-27 12:04:35,187.187 INFO    ] Launching Daemon at Sat Jun 27 12:04:35 IST 2026
[2026-06-27 12:04:35,197.197 INFO    ] ================================================
[2026-06-27 12:04:35,566.566 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:04:35
[2026-06-27 12:04:35,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:04:36,012.012 INFO    ] Initializing speech engine...
[2026-06-27 12:04:36,025.025 INFO    ] 2026-06-27 12:04:36
[2026-06-27 12:04:36,233.233 INFO    ] 2026-06-27 12:04:36
[2026-06-27 12:04:36,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:04:36,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:04:36,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:04:36,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:04:36,645.645 INFO    ] time= 27/06/2026 12:04:36
[2026-06-27 12:04:36,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:04:36,678.678 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:04:36,745.745 INFO    ] No existing commands found in stream
[2026-06-27 12:04:41,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:04:41,767.767 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-27 12:04:43,997.997 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:04:43,998.998 INFO    ] Checking for system updates...
[2026-06-27 12:04:44,019.019 INFO    ] 200
[2026-06-27 12:04:44,021.021 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:04:44,051.051 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:04:44,053.053 INFO    ] No update needed
[2026-06-27 12:04:44,054.054 INFO    ] Checking for camera pi updates...
[2026-06-27 12:04:44,075.075 INFO    ] 200
[2026-06-27 12:04:44,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:04:44,099.099 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:04:44,137.137 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:04:44,139.139 INFO    ] No camera update needed
[2026-06-27 12:04:44,140.140 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:04:44,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:04:44,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:04:44,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:04:46,179.179 INFO    ] ================================================
[2026-06-27 12:04:46,194.194 INFO    ] Launching Daemon at Sat Jun 27 12:04:46 IST 2026
[2026-06-27 12:04:46,205.205 INFO    ] ================================================
[2026-06-27 12:04:46,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:04:46
[2026-06-27 12:04:46,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:04:47,029.029 INFO    ] Initializing speech engine...
[2026-06-27 12:04:47,034.034 INFO    ] 2026-06-27 12:04:47
[2026-06-27 12:04:47,247.247 INFO    ] 2026-06-27 12:04:47
[2026-06-27 12:04:47,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:04:47,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:04:47,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:04:47,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:04:47,698.698 INFO    ] time= 27/06/2026 12:04:47
[2026-06-27 12:04:47,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:04:47,705.705 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:04:47,773.773 INFO    ] No existing commands found in stream
[2026-06-27 12:04:52,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:04:52,787.787 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-27 12:04:56,485.485 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 12:04:56,487.487 INFO    ] Checking for system updates...
[2026-06-27 12:04:56,510.510 INFO    ] 200
[2026-06-27 12:04:56,511.511 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:04:56,545.545 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:04:56,547.547 INFO    ] No update needed
[2026-06-27 12:04:56,548.548 INFO    ] Checking for camera pi updates...
[2026-06-27 12:04:56,573.573 INFO    ] 200
[2026-06-27 12:04:56,574.574 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:04:56,603.603 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:04:56,747.747 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:04:56,748.748 INFO    ] No camera update needed
[2026-06-27 12:04:56,750.750 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:04:56,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:04:56,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:04:56,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:04:58,801.801 INFO    ] ================================================
[2026-06-27 12:04:58,817.817 INFO    ] Launching Daemon at Sat Jun 27 12:04:58 IST 2026
[2026-06-27 12:04:58,828.828 INFO    ] ================================================
[2026-06-27 12:04:59,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:04:59
[2026-06-27 12:04:59,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:04:59,630.630 INFO    ] Initializing speech engine...
[2026-06-27 12:04:59,635.635 INFO    ] 2026-06-27 12:04:59
[2026-06-27 12:04:59,830.830 INFO    ] 2026-06-27 12:04:59
[2026-06-27 12:04:59,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:05:00,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:05:00,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:05:00,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:05:00,286.286 INFO    ] time= 27/06/2026 12:05:00
[2026-06-27 12:05:00,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:05:00,314.314 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:05:00,382.382 INFO    ] No existing commands found in stream
[2026-06-27 12:05:05,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:05:05,394.394 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-27 12:05:07,577.577 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 12:05:07,578.578 INFO    ] Checking for system updates...
[2026-06-27 12:05:07,601.601 INFO    ] 200
[2026-06-27 12:05:07,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:05:07,636.636 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:05:07,637.637 INFO    ] No update needed
[2026-06-27 12:05:07,638.638 INFO    ] Checking for camera pi updates...
[2026-06-27 12:05:07,658.658 INFO    ] 200
[2026-06-27 12:05:07,659.659 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:05:07,684.684 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:05:07,722.722 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:05:07,723.723 INFO    ] No camera update needed
[2026-06-27 12:05:07,725.725 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:05:07,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:05:07,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:05:07,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:05:09,772.772 INFO    ] ================================================
[2026-06-27 12:05:09,787.787 INFO    ] Launching Daemon at Sat Jun 27 12:05:09 IST 2026
[2026-06-27 12:05:09,800.800 INFO    ] ================================================
[2026-06-27 12:05:10,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:05:10
[2026-06-27 12:05:10,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:05:10,579.579 INFO    ] Initializing speech engine...
[2026-06-27 12:05:10,587.587 INFO    ] 2026-06-27 12:05:10
[2026-06-27 12:05:10,783.783 INFO    ] 2026-06-27 12:05:10
[2026-06-27 12:05:10,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:05:10,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:05:11,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:05:11,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:05:11,253.253 INFO    ] time= 27/06/2026 12:05:11
[2026-06-27 12:05:11,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:05:11,311.311 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:05:11,388.388 INFO    ] No existing commands found in stream
[2026-06-27 12:05:16,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:05:16,401.401 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-27 12:05:18,395.395 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 12:05:18,396.396 INFO    ] Checking for system updates...
[2026-06-27 12:05:18,418.418 INFO    ] 200
[2026-06-27 12:05:18,420.420 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:05:18,450.450 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:05:18,451.451 INFO    ] No update needed
[2026-06-27 12:05:18,452.452 INFO    ] Checking for camera pi updates...
[2026-06-27 12:05:18,472.472 INFO    ] 200
[2026-06-27 12:05:18,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:05:18,497.497 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:05:18,537.537 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:05:18,538.538 INFO    ] No camera update needed
[2026-06-27 12:05:18,540.540 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:05:18,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:05:18,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:05:18,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:05:20,585.585 INFO    ] ================================================
[2026-06-27 12:05:20,601.601 INFO    ] Launching Daemon at Sat Jun 27 12:05:20 IST 2026
[2026-06-27 12:05:20,612.612 INFO    ] ================================================
[2026-06-27 12:05:21,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:05:21
[2026-06-27 12:05:21,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:05:21,511.511 INFO    ] Initializing speech engine...
[2026-06-27 12:05:21,517.517 INFO    ] 2026-06-27 12:05:21
[2026-06-27 12:05:21,725.725 INFO    ] 2026-06-27 12:05:21
[2026-06-27 12:05:21,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:05:21,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:05:21,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:05:22,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:05:22,146.146 INFO    ] time= 27/06/2026 12:05:22
[2026-06-27 12:05:22,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:05:22,175.175 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:05:22,242.242 INFO    ] No existing commands found in stream
[2026-06-27 12:05:27,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:05:27,255.255 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-27 12:05:28,247.247 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:05:28,249.249 INFO    ] Checking for system updates...
[2026-06-27 12:05:28,271.271 INFO    ] 200
[2026-06-27 12:05:28,272.272 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:05:28,303.303 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:05:28,304.304 INFO    ] No update needed
[2026-06-27 12:05:28,306.306 INFO    ] Checking for camera pi updates...
[2026-06-27 12:05:28,327.327 INFO    ] 200
[2026-06-27 12:05:28,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:05:28,354.354 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:05:28,400.400 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:05:28,402.402 INFO    ] No camera update needed
[2026-06-27 12:05:28,403.403 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:05:28,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:05:28,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:05:28,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:05:30,450.450 INFO    ] ================================================
[2026-06-27 12:05:30,466.466 INFO    ] Launching Daemon at Sat Jun 27 12:05:30 IST 2026
[2026-06-27 12:05:30,477.477 INFO    ] ================================================
[2026-06-27 12:05:30,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:05:30
[2026-06-27 12:05:31,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:05:31,266.266 INFO    ] Initializing speech engine...
[2026-06-27 12:05:31,271.271 INFO    ] 2026-06-27 12:05:31
[2026-06-27 12:05:31,467.467 INFO    ] 2026-06-27 12:05:31
[2026-06-27 12:05:31,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:05:31,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:05:31,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:05:31,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:05:31,984.984 INFO    ] time= 27/06/2026 12:05:31
[2026-06-27 12:05:32,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:05:32,042.042 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:05:32,124.124 INFO    ] No existing commands found in stream
[2026-06-27 12:05:37,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:05:37,138.138 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-27 12:05:39,768.768 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 12:05:39,769.769 INFO    ] Checking for system updates...
[2026-06-27 12:05:39,792.792 INFO    ] 200
[2026-06-27 12:05:39,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:05:39,825.825 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:05:39,827.827 INFO    ] No update needed
[2026-06-27 12:05:39,828.828 INFO    ] Checking for camera pi updates...
[2026-06-27 12:05:39,850.850 INFO    ] 200
[2026-06-27 12:05:39,852.852 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:05:39,880.880 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:05:39,930.930 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:05:39,931.931 INFO    ] No camera update needed
[2026-06-27 12:05:39,933.933 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:05:39,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:05:39,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:05:39,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:05:41,982.982 INFO    ] ================================================
[2026-06-27 12:05:42,998.998 INFO    ] Launching Daemon at Sat Jun 27 12:05:41 IST 2026
[2026-06-27 12:05:42,011.011 INFO    ] ================================================
[2026-06-27 12:05:42,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:05:42
[2026-06-27 12:05:42,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:05:42,817.817 INFO    ] Initializing speech engine...
[2026-06-27 12:05:42,822.822 INFO    ] 2026-06-27 12:05:42
[2026-06-27 12:05:43,035.035 INFO    ] 2026-06-27 12:05:43
[2026-06-27 12:05:43,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:05:43,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:05:43,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:05:43,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:05:43,476.476 INFO    ] time= 27/06/2026 12:05:43
[2026-06-27 12:05:43,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:05:43,529.529 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:05:43,633.633 INFO    ] No existing commands found in stream
[2026-06-27 12:05:48,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:05:48,645.645 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-27 12:05:50,487.487 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:05:50,489.489 INFO    ] Checking for system updates...
[2026-06-27 12:05:50,509.509 INFO    ] 200
[2026-06-27 12:05:50,511.511 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:05:50,542.542 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:05:50,543.543 INFO    ] No update needed
[2026-06-27 12:05:50,545.545 INFO    ] Checking for camera pi updates...
[2026-06-27 12:05:50,567.567 INFO    ] 200
[2026-06-27 12:05:50,568.568 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:05:50,594.594 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:05:50,628.628 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:05:50,629.629 INFO    ] No camera update needed
[2026-06-27 12:05:50,631.631 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:05:50,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:05:50,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:05:50,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:05:52,677.677 INFO    ] ================================================
[2026-06-27 12:05:52,695.695 INFO    ] Launching Daemon at Sat Jun 27 12:05:52 IST 2026
[2026-06-27 12:05:52,706.706 INFO    ] ================================================
[2026-06-27 12:05:53,091.091 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:05:53
[2026-06-27 12:05:53,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:05:53,593.593 INFO    ] Initializing speech engine...
[2026-06-27 12:05:53,600.600 INFO    ] 2026-06-27 12:05:53
[2026-06-27 12:05:53,807.807 INFO    ] 2026-06-27 12:05:53
[2026-06-27 12:05:53,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:05:53,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:05:54,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:05:54,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:05:54,239.239 INFO    ] time= 27/06/2026 12:05:54
[2026-06-27 12:05:54,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:05:54,269.269 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:05:54,342.342 INFO    ] No existing commands found in stream
[2026-06-27 12:05:59,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:05:59,360.360 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-27 12:06:02,154.154 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 12:06:02,156.156 INFO    ] Checking for system updates...
[2026-06-27 12:06:02,184.184 INFO    ] 200
[2026-06-27 12:06:02,186.186 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:06:02,223.223 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:06:02,225.225 INFO    ] No update needed
[2026-06-27 12:06:02,226.226 INFO    ] Checking for camera pi updates...
[2026-06-27 12:06:02,250.250 INFO    ] 200
[2026-06-27 12:06:02,252.252 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:06:02,281.281 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:06:02,317.317 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:06:02,320.320 INFO    ] No camera update needed
[2026-06-27 12:06:02,323.323 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:06:02,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:06:02,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:06:02,338.338 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:06:04,380.380 INFO    ] ================================================
[2026-06-27 12:06:04,397.397 INFO    ] Launching Daemon at Sat Jun 27 12:06:04 IST 2026
[2026-06-27 12:06:04,408.408 INFO    ] ================================================
[2026-06-27 12:06:04,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:06:04
[2026-06-27 12:06:05,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:06:05,202.202 INFO    ] Initializing speech engine...
[2026-06-27 12:06:05,215.215 INFO    ] 2026-06-27 12:06:05
[2026-06-27 12:06:05,423.423 INFO    ] 2026-06-27 12:06:05
[2026-06-27 12:06:05,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:06:05,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:06:05,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:06:05,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:06:05,881.881 INFO    ] time= 27/06/2026 12:06:05
[2026-06-27 12:06:05,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:06:05,889.889 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:06:05,955.955 INFO    ] No existing commands found in stream
[2026-06-27 12:06:10,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:06:10,968.968 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-27 12:06:12,379.379 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 12:06:12,380.380 INFO    ] Checking for system updates...
[2026-06-27 12:06:12,401.401 INFO    ] 200
[2026-06-27 12:06:12,402.402 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:06:12,436.436 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:06:12,437.437 INFO    ] No update needed
[2026-06-27 12:06:12,439.439 INFO    ] Checking for camera pi updates...
[2026-06-27 12:06:12,458.458 INFO    ] 200
[2026-06-27 12:06:12,459.459 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:06:12,485.485 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:06:12,531.531 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:06:12,532.532 INFO    ] No camera update needed
[2026-06-27 12:06:12,534.534 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:06:12,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:06:12,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:06:12,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:06:14,580.580 INFO    ] ================================================
[2026-06-27 12:06:14,596.596 INFO    ] Launching Daemon at Sat Jun 27 12:06:14 IST 2026
[2026-06-27 12:06:14,607.607 INFO    ] ================================================
[2026-06-27 12:06:14,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:06:14
[2026-06-27 12:06:15,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:06:15,404.404 INFO    ] Initializing speech engine...
[2026-06-27 12:06:15,410.410 INFO    ] 2026-06-27 12:06:15
[2026-06-27 12:06:15,616.616 INFO    ] 2026-06-27 12:06:15
[2026-06-27 12:06:15,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:06:16,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:06:16,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:06:16,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:06:16,544.544 INFO    ] time= 27/06/2026 12:06:16
[2026-06-27 12:06:16,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:06:16,551.551 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:06:16,632.632 INFO    ] No existing commands found in stream
[2026-06-27 12:06:21,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:06:21,645.645 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-27 12:06:25,326.326 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 12:06:25,327.327 INFO    ] Checking for system updates...
[2026-06-27 12:06:25,348.348 INFO    ] 200
[2026-06-27 12:06:25,350.350 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:06:25,384.384 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:06:25,386.386 INFO    ] No update needed
[2026-06-27 12:06:25,387.387 INFO    ] Checking for camera pi updates...
[2026-06-27 12:06:25,407.407 INFO    ] 200
[2026-06-27 12:06:25,409.409 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:06:25,435.435 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:06:25,473.473 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:06:25,475.475 INFO    ] No camera update needed
[2026-06-27 12:06:25,476.476 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:06:25,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:06:25,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:06:25,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:06:27,524.524 INFO    ] ================================================
[2026-06-27 12:06:27,540.540 INFO    ] Launching Daemon at Sat Jun 27 12:06:27 IST 2026
[2026-06-27 12:06:27,551.551 INFO    ] ================================================
[2026-06-27 12:06:27,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:06:27
[2026-06-27 12:06:28,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:06:28,357.357 INFO    ] Initializing speech engine...
[2026-06-27 12:06:28,361.361 INFO    ] 2026-06-27 12:06:28
[2026-06-27 12:06:28,563.563 INFO    ] 2026-06-27 12:06:28
[2026-06-27 12:06:28,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:06:28,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:06:28,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:06:28,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:06:28,983.983 INFO    ] time= 27/06/2026 12:06:28
[2026-06-27 12:06:29,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:06:29,013.013 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:06:29,080.080 INFO    ] No existing commands found in stream
[2026-06-27 12:06:34,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:06:34,098.098 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-27 12:06:38,427.427 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 12:06:38,429.429 INFO    ] Checking for system updates...
[2026-06-27 12:06:38,450.450 INFO    ] 200
[2026-06-27 12:06:38,451.451 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:06:38,483.483 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:06:38,484.484 INFO    ] No update needed
[2026-06-27 12:06:38,486.486 INFO    ] Checking for camera pi updates...
[2026-06-27 12:06:38,506.506 INFO    ] 200
[2026-06-27 12:06:38,507.507 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:06:38,531.531 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:06:38,567.567 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:06:38,568.568 INFO    ] No camera update needed
[2026-06-27 12:06:38,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:06:38,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:06:38,575.575 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:06:38,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:06:40,618.618 INFO    ] ================================================
[2026-06-27 12:06:40,634.634 INFO    ] Launching Daemon at Sat Jun 27 12:06:40 IST 2026
[2026-06-27 12:06:40,645.645 INFO    ] ================================================
[2026-06-27 12:06:41,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:06:41
[2026-06-27 12:06:41,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:06:41,542.542 INFO    ] Initializing speech engine...
[2026-06-27 12:06:41,548.548 INFO    ] 2026-06-27 12:06:41
[2026-06-27 12:06:41,760.760 INFO    ] 2026-06-27 12:06:41
[2026-06-27 12:06:41,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:06:41,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:06:41,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:06:42,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:06:42,209.209 INFO    ] time= 27/06/2026 12:06:42
[2026-06-27 12:06:42,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:06:42,216.216 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:06:42,285.285 INFO    ] No existing commands found in stream
[2026-06-27 12:06:47,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:06:47,303.303 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-27 12:06:50,695.695 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:06:50,697.697 INFO    ] Checking for system updates...
[2026-06-27 12:06:50,719.719 INFO    ] 200
[2026-06-27 12:06:50,721.721 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:06:50,755.755 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:06:50,756.756 INFO    ] No update needed
[2026-06-27 12:06:50,758.758 INFO    ] Checking for camera pi updates...
[2026-06-27 12:06:50,778.778 INFO    ] 200
[2026-06-27 12:06:50,780.780 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:06:50,804.804 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:06:50,851.851 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:06:50,853.853 INFO    ] No camera update needed
[2026-06-27 12:06:50,854.854 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:06:50,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:06:50,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:06:50,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:06:52,897.897 INFO    ] ================================================
[2026-06-27 12:06:52,913.913 INFO    ] Launching Daemon at Sat Jun 27 12:06:52 IST 2026
[2026-06-27 12:06:52,925.925 INFO    ] ================================================
[2026-06-27 12:06:53,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:06:53
[2026-06-27 12:06:53,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:06:53,727.727 INFO    ] Initializing speech engine...
[2026-06-27 12:06:53,732.732 INFO    ] 2026-06-27 12:06:53
[2026-06-27 12:06:53,939.939 INFO    ] 2026-06-27 12:06:53
[2026-06-27 12:06:53,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:06:54,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:06:54,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:06:54,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:06:54,357.357 INFO    ] time= 27/06/2026 12:06:54
[2026-06-27 12:06:54,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:06:54,391.391 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:06:54,458.458 INFO    ] No existing commands found in stream
[2026-06-27 12:06:59,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:06:59,469.469 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-27 12:07:00,546.546 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 12:07:00,547.547 INFO    ] Checking for system updates...
[2026-06-27 12:07:00,568.568 INFO    ] 200
[2026-06-27 12:07:00,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:07:00,600.600 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:07:00,601.601 INFO    ] No update needed
[2026-06-27 12:07:00,603.603 INFO    ] Checking for camera pi updates...
[2026-06-27 12:07:00,622.622 INFO    ] 200
[2026-06-27 12:07:00,623.623 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:07:00,647.647 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:07:00,789.789 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:07:00,790.790 INFO    ] No camera update needed
[2026-06-27 12:07:00,792.792 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:07:00,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:07:00,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:07:00,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:07:02,849.849 INFO    ] ================================================
[2026-06-27 12:07:02,859.859 INFO    ] Launching Daemon at Sat Jun 27 12:07:02 IST 2026
[2026-06-27 12:07:02,865.865 INFO    ] ================================================
[2026-06-27 12:07:03,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:07:03
[2026-06-27 12:07:03,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:07:03,624.624 INFO    ] Initializing speech engine...
[2026-06-27 12:07:03,628.628 INFO    ] 2026-06-27 12:07:03
[2026-06-27 12:07:03,836.836 INFO    ] 2026-06-27 12:07:03
[2026-06-27 12:07:03,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:07:04,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:07:04,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:07:04,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:07:04,281.281 INFO    ] time= 27/06/2026 12:07:04
[2026-06-27 12:07:04,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:07:04,288.288 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:07:04,357.357 INFO    ] No existing commands found in stream
[2026-06-27 12:07:09,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:07:09,374.374 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-27 12:07:12,053.053 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 12:07:12,055.055 INFO    ] Checking for system updates...
[2026-06-27 12:07:12,078.078 INFO    ] 200
[2026-06-27 12:07:12,079.079 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:07:12,110.110 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:07:12,111.111 INFO    ] No update needed
[2026-06-27 12:07:12,112.112 INFO    ] Checking for camera pi updates...
[2026-06-27 12:07:12,133.133 INFO    ] 200
[2026-06-27 12:07:12,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:07:12,157.157 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:07:12,195.195 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:07:12,196.196 INFO    ] No camera update needed
[2026-06-27 12:07:12,198.198 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:07:12,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:07:12,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:07:12,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:07:14,243.243 INFO    ] ================================================
[2026-06-27 12:07:14,260.260 INFO    ] Launching Daemon at Sat Jun 27 12:07:14 IST 2026
[2026-06-27 12:07:14,271.271 INFO    ] ================================================
[2026-06-27 12:07:14,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:07:14
[2026-06-27 12:07:15,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:07:15,160.160 INFO    ] Initializing speech engine...
[2026-06-27 12:07:15,165.165 INFO    ] 2026-06-27 12:07:15
[2026-06-27 12:07:15,378.378 INFO    ] 2026-06-27 12:07:15
[2026-06-27 12:07:15,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:07:15,594.594 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:07:15,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:07:15,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:07:15,807.807 INFO    ] time= 27/06/2026 12:07:15
[2026-06-27 12:07:15,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:07:15,836.836 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:07:15,904.904 INFO    ] No existing commands found in stream
[2026-06-27 12:07:20,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:07:20,917.917 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-27 12:07:22,132.132 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:07:22,134.134 INFO    ] Checking for system updates...
[2026-06-27 12:07:22,155.155 INFO    ] 200
[2026-06-27 12:07:22,157.157 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:07:22,187.187 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:07:22,189.189 INFO    ] No update needed
[2026-06-27 12:07:22,190.190 INFO    ] Checking for camera pi updates...
[2026-06-27 12:07:22,210.210 INFO    ] 200
[2026-06-27 12:07:22,211.211 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:07:22,234.234 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:07:22,281.281 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:07:22,283.283 INFO    ] No camera update needed
[2026-06-27 12:07:22,284.284 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:07:22,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:07:22,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:07:22,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:07:24,331.331 INFO    ] ================================================
[2026-06-27 12:07:24,346.346 INFO    ] Launching Daemon at Sat Jun 27 12:07:24 IST 2026
[2026-06-27 12:07:24,358.358 INFO    ] ================================================
[2026-06-27 12:07:24,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:07:24
[2026-06-27 12:07:25,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:07:25,162.162 INFO    ] Initializing speech engine...
[2026-06-27 12:07:25,165.165 INFO    ] 2026-06-27 12:07:25
[2026-06-27 12:07:25,377.377 INFO    ] 2026-06-27 12:07:25
[2026-06-27 12:07:25,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:07:25,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:07:25,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:07:25,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:07:25,828.828 INFO    ] time= 27/06/2026 12:07:25
[2026-06-27 12:07:25,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:07:25,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:07:25,899.899 INFO    ] No existing commands found in stream
[2026-06-27 12:07:30,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:07:30,912.912 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-27 12:07:34,978.978 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:07:34,980.980 INFO    ] Checking for system updates...
[2026-06-27 12:07:35,001.001 INFO    ] 200
[2026-06-27 12:07:35,002.002 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:07:35,033.033 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:07:35,035.035 INFO    ] No update needed
[2026-06-27 12:07:35,036.036 INFO    ] Checking for camera pi updates...
[2026-06-27 12:07:35,056.056 INFO    ] 200
[2026-06-27 12:07:35,057.057 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:07:35,085.085 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:07:35,126.126 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:07:35,127.127 INFO    ] No camera update needed
[2026-06-27 12:07:35,128.128 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:07:35,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:07:35,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:07:35,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:07:37,174.174 INFO    ] ================================================
[2026-06-27 12:07:37,191.191 INFO    ] Launching Daemon at Sat Jun 27 12:07:37 IST 2026
[2026-06-27 12:07:37,202.202 INFO    ] ================================================
[2026-06-27 12:07:37,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:07:37
[2026-06-27 12:07:37,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:07:37,983.983 INFO    ] Initializing speech engine...
[2026-06-27 12:07:37,989.989 INFO    ] 2026-06-27 12:07:37
[2026-06-27 12:07:38,182.182 INFO    ] 2026-06-27 12:07:38
[2026-06-27 12:07:38,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:07:38,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:07:38,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:07:38,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:07:38,666.666 INFO    ] time= 27/06/2026 12:07:38
[2026-06-27 12:07:38,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:07:38,705.705 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:07:38,776.776 INFO    ] No existing commands found in stream
[2026-06-27 12:07:43,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:07:43,788.788 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-27 12:07:45,350.350 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 12:07:45,351.351 INFO    ] Checking for system updates...
[2026-06-27 12:07:45,374.374 INFO    ] 200
[2026-06-27 12:07:45,376.376 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:07:45,408.408 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:07:45,409.409 INFO    ] No update needed
[2026-06-27 12:07:45,411.411 INFO    ] Checking for camera pi updates...
[2026-06-27 12:07:45,431.431 INFO    ] 200
[2026-06-27 12:07:45,432.432 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:07:45,456.456 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:07:45,496.496 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:07:45,497.497 INFO    ] No camera update needed
[2026-06-27 12:07:45,499.499 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:07:45,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:07:45,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:07:45,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:07:47,546.546 INFO    ] ================================================
[2026-06-27 12:07:47,562.562 INFO    ] Launching Daemon at Sat Jun 27 12:07:47 IST 2026
[2026-06-27 12:07:47,572.572 INFO    ] ================================================
[2026-06-27 12:07:47,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:07:47
[2026-06-27 12:07:48,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:07:48,372.372 INFO    ] Initializing speech engine...
[2026-06-27 12:07:48,385.385 INFO    ] 2026-06-27 12:07:48
[2026-06-27 12:07:48,595.595 INFO    ] 2026-06-27 12:07:48
[2026-06-27 12:07:48,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:07:48,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:07:48,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:07:48,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:07:49,002.002 INFO    ] time= 27/06/2026 12:07:48
[2026-06-27 12:07:49,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:07:49,047.047 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:07:49,144.144 INFO    ] No existing commands found in stream
[2026-06-27 12:07:54,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:07:54,156.156 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-27 12:07:54,772.772 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 12:07:54,773.773 INFO    ] Checking for system updates...
[2026-06-27 12:07:54,794.794 INFO    ] 200
[2026-06-27 12:07:54,796.796 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:07:54,826.826 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:07:54,827.827 INFO    ] No update needed
[2026-06-27 12:07:54,828.828 INFO    ] Checking for camera pi updates...
[2026-06-27 12:07:54,849.849 INFO    ] 200
[2026-06-27 12:07:54,851.851 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:07:54,874.874 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:07:54,898.898 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:07:54,899.899 INFO    ] No camera update needed
[2026-06-27 12:07:54,901.901 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:07:54,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:07:54,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:07:54,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:07:56,948.948 INFO    ] ================================================
[2026-06-27 12:07:56,963.963 INFO    ] Launching Daemon at Sat Jun 27 12:07:56 IST 2026
[2026-06-27 12:07:56,974.974 INFO    ] ================================================
[2026-06-27 12:07:57,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:07:57
[2026-06-27 12:07:57,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:07:57,764.764 INFO    ] Initializing speech engine...
[2026-06-27 12:07:57,773.773 INFO    ] 2026-06-27 12:07:57
[2026-06-27 12:07:57,988.988 INFO    ] 2026-06-27 12:07:57
[2026-06-27 12:07:58,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:07:58,202.202 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:07:58,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:07:58,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:07:58,405.405 INFO    ] time= 27/06/2026 12:07:58
[2026-06-27 12:07:58,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:07:58,439.439 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:07:58,529.529 INFO    ] No existing commands found in stream
[2026-06-27 12:08:03,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:08:03,541.541 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-27 12:08:05,824.824 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 12:08:05,826.826 INFO    ] Checking for system updates...
[2026-06-27 12:08:05,847.847 INFO    ] 200
[2026-06-27 12:08:05,849.849 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:08:05,881.881 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:08:05,883.883 INFO    ] No update needed
[2026-06-27 12:08:05,884.884 INFO    ] Checking for camera pi updates...
[2026-06-27 12:08:05,903.903 INFO    ] 200
[2026-06-27 12:08:05,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:08:05,930.930 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:08:05,967.967 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:08:05,968.968 INFO    ] No camera update needed
[2026-06-27 12:08:05,970.970 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:08:05,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:08:05,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:08:05,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:08:08,016.016 INFO    ] ================================================
[2026-06-27 12:08:08,032.032 INFO    ] Launching Daemon at Sat Jun 27 12:08:08 IST 2026
[2026-06-27 12:08:08,042.042 INFO    ] ================================================
[2026-06-27 12:08:08,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:08:08
[2026-06-27 12:08:08,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:08:08,844.844 INFO    ] Initializing speech engine...
[2026-06-27 12:08:08,853.853 INFO    ] 2026-06-27 12:08:08
[2026-06-27 12:08:09,058.058 INFO    ] 2026-06-27 12:08:09
[2026-06-27 12:08:09,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:08:09,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:08:09,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:08:09,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:08:09,500.500 INFO    ] time= 27/06/2026 12:08:09
[2026-06-27 12:08:09,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:08:09,507.507 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:08:09,575.575 INFO    ] No existing commands found in stream
[2026-06-27 12:08:14,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:08:14,588.588 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-27 12:08:16,070.070 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 12:08:16,072.072 INFO    ] Checking for system updates...
[2026-06-27 12:08:16,093.093 INFO    ] 200
[2026-06-27 12:08:16,094.094 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:08:16,125.125 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:08:16,126.126 INFO    ] No update needed
[2026-06-27 12:08:16,128.128 INFO    ] Checking for camera pi updates...
[2026-06-27 12:08:16,149.149 INFO    ] 200
[2026-06-27 12:08:16,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:08:16,177.177 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:08:16,218.218 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:08:16,219.219 INFO    ] No camera update needed
[2026-06-27 12:08:16,221.221 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:08:16,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:08:16,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:08:16,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:08:18,270.270 INFO    ] ================================================
[2026-06-27 12:08:18,285.285 INFO    ] Launching Daemon at Sat Jun 27 12:08:18 IST 2026
[2026-06-27 12:08:18,296.296 INFO    ] ================================================
[2026-06-27 12:08:18,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:08:18
[2026-06-27 12:08:18,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:08:19,067.067 INFO    ] Initializing speech engine...
[2026-06-27 12:08:19,070.070 INFO    ] 2026-06-27 12:08:19
[2026-06-27 12:08:19,288.288 INFO    ] 2026-06-27 12:08:19
[2026-06-27 12:08:19,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:08:19,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:08:19,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:08:19,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:08:19,736.736 INFO    ] time= 27/06/2026 12:08:19
[2026-06-27 12:08:19,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:08:19,743.743 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:08:19,812.812 INFO    ] No existing commands found in stream
[2026-06-27 12:08:24,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:08:24,828.828 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-27 12:08:28,020.020 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 12:08:28,022.022 INFO    ] Checking for system updates...
[2026-06-27 12:08:28,044.044 INFO    ] 200
[2026-06-27 12:08:28,046.046 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:08:28,077.077 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:08:28,078.078 INFO    ] No update needed
[2026-06-27 12:08:28,079.079 INFO    ] Checking for camera pi updates...
[2026-06-27 12:08:28,099.099 INFO    ] 200
[2026-06-27 12:08:28,101.101 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:08:28,124.124 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:08:28,167.167 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:08:28,169.169 INFO    ] No camera update needed
[2026-06-27 12:08:28,170.170 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:08:28,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:08:28,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:08:28,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:08:30,216.216 INFO    ] ================================================
[2026-06-27 12:08:30,232.232 INFO    ] Launching Daemon at Sat Jun 27 12:08:30 IST 2026
[2026-06-27 12:08:30,242.242 INFO    ] ================================================
[2026-06-27 12:08:30,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:08:30
[2026-06-27 12:08:30,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:08:31,011.011 INFO    ] Initializing speech engine...
[2026-06-27 12:08:31,015.015 INFO    ] 2026-06-27 12:08:31
[2026-06-27 12:08:31,233.233 INFO    ] 2026-06-27 12:08:31
[2026-06-27 12:08:31,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:08:31,445.445 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:08:31,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:08:31,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:08:31,643.643 INFO    ] time= 27/06/2026 12:08:31
[2026-06-27 12:08:31,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:08:31,681.681 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:08:31,748.748 INFO    ] No existing commands found in stream
[2026-06-27 12:08:36,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:08:36,759.759 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-27 12:08:39,511.511 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 12:08:39,513.513 INFO    ] Checking for system updates...
[2026-06-27 12:08:39,536.536 INFO    ] 200
[2026-06-27 12:08:39,537.537 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:08:39,571.571 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:08:39,572.572 INFO    ] No update needed
[2026-06-27 12:08:39,574.574 INFO    ] Checking for camera pi updates...
[2026-06-27 12:08:39,594.594 INFO    ] 200
[2026-06-27 12:08:39,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:08:39,620.620 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:08:39,664.664 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:08:39,666.666 INFO    ] No camera update needed
[2026-06-27 12:08:39,667.667 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:08:39,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:08:39,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:08:39,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:08:41,714.714 INFO    ] ================================================
[2026-06-27 12:08:41,730.730 INFO    ] Launching Daemon at Sat Jun 27 12:08:41 IST 2026
[2026-06-27 12:08:41,741.741 INFO    ] ================================================
[2026-06-27 12:08:42,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:08:42
[2026-06-27 12:08:42,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:08:42,549.549 INFO    ] Initializing speech engine...
[2026-06-27 12:08:42,552.552 INFO    ] 2026-06-27 12:08:42
[2026-06-27 12:08:42,774.774 INFO    ] 2026-06-27 12:08:42
[2026-06-27 12:08:42,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:08:42,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:08:43,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:08:43,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:08:43,202.202 INFO    ] time= 27/06/2026 12:08:43
[2026-06-27 12:08:43,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:08:43,230.230 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:08:43,299.299 INFO    ] No existing commands found in stream
[2026-06-27 12:08:48,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:08:48,316.316 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-27 12:08:48,799.799 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:08:48,801.801 INFO    ] Checking for system updates...
[2026-06-27 12:08:48,825.825 INFO    ] 200
[2026-06-27 12:08:48,826.826 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:08:48,869.869 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:08:48,871.871 INFO    ] No update needed
[2026-06-27 12:08:48,872.872 INFO    ] Checking for camera pi updates...
[2026-06-27 12:08:48,892.892 INFO    ] 200
[2026-06-27 12:08:48,893.893 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:08:48,917.917 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:08:48,956.956 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:08:48,957.957 INFO    ] No camera update needed
[2026-06-27 12:08:48,958.958 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:08:48,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:08:48,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:08:48,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:08:51,005.005 INFO    ] ================================================
[2026-06-27 12:08:51,020.020 INFO    ] Launching Daemon at Sat Jun 27 12:08:51 IST 2026
[2026-06-27 12:08:51,031.031 INFO    ] ================================================
[2026-06-27 12:08:51,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:08:51
[2026-06-27 12:08:51,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:08:51,866.866 INFO    ] Initializing speech engine...
[2026-06-27 12:08:51,871.871 INFO    ] 2026-06-27 12:08:51
[2026-06-27 12:08:52,076.076 INFO    ] 2026-06-27 12:08:52
[2026-06-27 12:08:52,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:08:52,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:08:52,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:08:52,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:08:52,497.497 INFO    ] time= 27/06/2026 12:08:52
[2026-06-27 12:08:52,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:08:52,525.525 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:08:52,593.593 INFO    ] No existing commands found in stream
[2026-06-27 12:08:57,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:08:57,609.609 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-27 12:09:01,044.044 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:09:01,046.046 INFO    ] Checking for system updates...
[2026-06-27 12:09:01,067.067 INFO    ] 200
[2026-06-27 12:09:01,068.068 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:09:01,102.102 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:09:01,103.103 INFO    ] No update needed
[2026-06-27 12:09:01,105.105 INFO    ] Checking for camera pi updates...
[2026-06-27 12:09:01,131.131 INFO    ] 200
[2026-06-27 12:09:01,133.133 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:09:01,197.197 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:09:01,229.229 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:09:01,232.232 INFO    ] No camera update needed
[2026-06-27 12:09:01,239.239 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:09:01,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:09:01,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:09:01,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:09:03,300.300 INFO    ] ================================================
[2026-06-27 12:09:03,315.315 INFO    ] Launching Daemon at Sat Jun 27 12:09:03 IST 2026
[2026-06-27 12:09:03,326.326 INFO    ] ================================================
[2026-06-27 12:09:03,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:09:03
[2026-06-27 12:09:04,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:09:04,144.144 INFO    ] Initializing speech engine...
[2026-06-27 12:09:04,157.157 INFO    ] 2026-06-27 12:09:04
[2026-06-27 12:09:04,376.376 INFO    ] 2026-06-27 12:09:04
[2026-06-27 12:09:04,407.407 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:09:04,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:09:04,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:09:04,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:09:04,844.844 INFO    ] time= 27/06/2026 12:09:04
[2026-06-27 12:09:04,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:09:04,861.861 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:09:04,932.932 INFO    ] No existing commands found in stream
[2026-06-27 12:09:09,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:09:09,946.946 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-27 12:09:10,810.810 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:09:10,812.812 INFO    ] Checking for system updates...
[2026-06-27 12:09:10,833.833 INFO    ] 200
[2026-06-27 12:09:10,834.834 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:09:10,864.864 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:09:10,866.866 INFO    ] No update needed
[2026-06-27 12:09:10,867.867 INFO    ] Checking for camera pi updates...
[2026-06-27 12:09:10,886.886 INFO    ] 200
[2026-06-27 12:09:10,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:09:10,913.913 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:09:10,959.959 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:09:10,960.960 INFO    ] No camera update needed
[2026-06-27 12:09:10,961.961 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:09:10,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:09:10,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:09:10,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:09:13,008.008 INFO    ] ================================================
[2026-06-27 12:09:13,023.023 INFO    ] Launching Daemon at Sat Jun 27 12:09:13 IST 2026
[2026-06-27 12:09:13,035.035 INFO    ] ================================================
[2026-06-27 12:09:13,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:09:13
[2026-06-27 12:09:13,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:09:13,848.848 INFO    ] Initializing speech engine...
[2026-06-27 12:09:13,853.853 INFO    ] 2026-06-27 12:09:13
[2026-06-27 12:09:14,048.048 INFO    ] 2026-06-27 12:09:14
[2026-06-27 12:09:14,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:09:14,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:09:14,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:09:14,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:09:14,525.525 INFO    ] time= 27/06/2026 12:09:14
[2026-06-27 12:09:14,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:09:14,572.572 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:09:14,651.651 INFO    ] No existing commands found in stream
[2026-06-27 12:09:19,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:09:19,678.678 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-27 12:09:21,880.880 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:09:21,882.882 INFO    ] Checking for system updates...
[2026-06-27 12:09:21,902.902 INFO    ] 200
[2026-06-27 12:09:21,904.904 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:09:21,934.934 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:09:21,936.936 INFO    ] No update needed
[2026-06-27 12:09:21,937.937 INFO    ] Checking for camera pi updates...
[2026-06-27 12:09:21,957.957 INFO    ] 200
[2026-06-27 12:09:21,958.958 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:09:21,982.982 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:09:22,017.017 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:09:22,018.018 INFO    ] No camera update needed
[2026-06-27 12:09:22,020.020 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:09:22,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:09:22,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:09:22,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:09:24,067.067 INFO    ] ================================================
[2026-06-27 12:09:24,082.082 INFO    ] Launching Daemon at Sat Jun 27 12:09:24 IST 2026
[2026-06-27 12:09:24,094.094 INFO    ] ================================================
[2026-06-27 12:09:24,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:09:24
[2026-06-27 12:09:24,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:09:24,909.909 INFO    ] Initializing speech engine...
[2026-06-27 12:09:24,917.917 INFO    ] 2026-06-27 12:09:24
[2026-06-27 12:09:25,131.131 INFO    ] 2026-06-27 12:09:25
[2026-06-27 12:09:25,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:09:25,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:09:25,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:09:25,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:09:25,533.533 INFO    ] time= 27/06/2026 12:09:25
[2026-06-27 12:09:25,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:09:25,585.585 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:09:25,657.657 INFO    ] No existing commands found in stream
[2026-06-27 12:09:30,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:09:30,689.689 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-27 12:09:31,415.415 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:09:31,417.417 INFO    ] Checking for system updates...
[2026-06-27 12:09:31,440.440 INFO    ] 200
[2026-06-27 12:09:31,442.442 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:09:31,476.476 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:09:31,477.477 INFO    ] No update needed
[2026-06-27 12:09:31,479.479 INFO    ] Checking for camera pi updates...
[2026-06-27 12:09:31,501.501 INFO    ] 200
[2026-06-27 12:09:31,502.502 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:09:31,531.531 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:09:31,570.570 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:09:31,571.571 INFO    ] No camera update needed
[2026-06-27 12:09:31,573.573 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:09:31,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:09:31,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:09:31,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:09:33,615.615 INFO    ] ================================================
[2026-06-27 12:09:33,630.630 INFO    ] Launching Daemon at Sat Jun 27 12:09:33 IST 2026
[2026-06-27 12:09:33,640.640 INFO    ] ================================================
[2026-06-27 12:09:33,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:09:33
[2026-06-27 12:09:34,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:09:34,481.481 INFO    ] Initializing speech engine...
[2026-06-27 12:09:34,492.492 INFO    ] 2026-06-27 12:09:34
[2026-06-27 12:09:34,701.701 INFO    ] 2026-06-27 12:09:34
[2026-06-27 12:09:34,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:09:34,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:09:34,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:09:35,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:09:35,129.129 INFO    ] time= 27/06/2026 12:09:35
[2026-06-27 12:09:35,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:09:35,157.157 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:09:35,224.224 INFO    ] No existing commands found in stream
[2026-06-27 12:09:40,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:09:40,237.237 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-27 12:09:42,377.377 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:09:42,378.378 INFO    ] Checking for system updates...
[2026-06-27 12:09:42,401.401 INFO    ] 200
[2026-06-27 12:09:42,402.402 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:09:42,433.433 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:09:42,436.436 INFO    ] No update needed
[2026-06-27 12:09:42,438.438 INFO    ] Checking for camera pi updates...
[2026-06-27 12:09:42,457.457 INFO    ] 200
[2026-06-27 12:09:42,459.459 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:09:42,484.484 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:09:42,524.524 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:09:42,525.525 INFO    ] No camera update needed
[2026-06-27 12:09:42,527.527 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:09:42,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:09:42,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:09:42,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:09:44,573.573 INFO    ] ================================================
[2026-06-27 12:09:44,589.589 INFO    ] Launching Daemon at Sat Jun 27 12:09:44 IST 2026
[2026-06-27 12:09:44,600.600 INFO    ] ================================================
[2026-06-27 12:09:44,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:09:44
[2026-06-27 12:09:45,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:09:45,393.393 INFO    ] Initializing speech engine...
[2026-06-27 12:09:45,400.400 INFO    ] 2026-06-27 12:09:45
[2026-06-27 12:09:45,604.604 INFO    ] 2026-06-27 12:09:45
[2026-06-27 12:09:45,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:09:45,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:09:45,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:09:45,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:09:46,024.024 INFO    ] time= 27/06/2026 12:09:45
[2026-06-27 12:09:46,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:09:46,053.053 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:09:46,118.118 INFO    ] No existing commands found in stream
[2026-06-27 12:09:51,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:09:51,131.131 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-27 12:09:52,625.625 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 12:09:52,626.626 INFO    ] Checking for system updates...
[2026-06-27 12:09:52,647.647 INFO    ] 200
[2026-06-27 12:09:52,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:09:52,678.678 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:09:52,680.680 INFO    ] No update needed
[2026-06-27 12:09:52,681.681 INFO    ] Checking for camera pi updates...
[2026-06-27 12:09:52,701.701 INFO    ] 200
[2026-06-27 12:09:52,702.702 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:09:52,726.726 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:09:52,768.768 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:09:52,770.770 INFO    ] No camera update needed
[2026-06-27 12:09:52,771.771 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:09:52,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:09:52,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:09:52,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:09:54,818.818 INFO    ] ================================================
[2026-06-27 12:09:54,834.834 INFO    ] Launching Daemon at Sat Jun 27 12:09:54 IST 2026
[2026-06-27 12:09:54,845.845 INFO    ] ================================================
[2026-06-27 12:09:55,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:09:55
[2026-06-27 12:09:55,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:09:55,675.675 INFO    ] Initializing speech engine...
[2026-06-27 12:09:55,680.680 INFO    ] 2026-06-27 12:09:55
[2026-06-27 12:09:55,910.910 INFO    ] 2026-06-27 12:09:55
[2026-06-27 12:09:55,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:09:56,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:09:56,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:09:56,333.333 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:09:56,382.382 INFO    ] time= 27/06/2026 12:09:56
[2026-06-27 12:09:56,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:09:56,395.395 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:09:56,466.466 INFO    ] No existing commands found in stream
[2026-06-27 12:10:01,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:10:01,479.479 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-27 12:10:02,427.427 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 12:10:02,429.429 INFO    ] Checking for system updates...
[2026-06-27 12:10:02,459.459 INFO    ] 200
[2026-06-27 12:10:02,461.461 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:10:02,501.501 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:10:02,503.503 INFO    ] No update needed
[2026-06-27 12:10:02,505.505 INFO    ] Checking for camera pi updates...
[2026-06-27 12:10:02,526.526 INFO    ] 200
[2026-06-27 12:10:02,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:10:02,562.562 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:10:02,621.621 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:10:02,623.623 INFO    ] No camera update needed
[2026-06-27 12:10:02,624.624 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:10:02,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:10:02,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:10:02,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:10:04,680.680 INFO    ] ================================================
[2026-06-27 12:10:04,695.695 INFO    ] Launching Daemon at Sat Jun 27 12:10:04 IST 2026
[2026-06-27 12:10:04,706.706 INFO    ] ================================================
[2026-06-27 12:10:05,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:10:05
[2026-06-27 12:10:05,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:10:05,484.484 INFO    ] Initializing speech engine...
[2026-06-27 12:10:05,494.494 INFO    ] 2026-06-27 12:10:05
[2026-06-27 12:10:05,714.714 INFO    ] 2026-06-27 12:10:05
[2026-06-27 12:10:05,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:10:05,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:10:05,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:10:06,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:10:06,134.134 INFO    ] time= 27/06/2026 12:10:06
[2026-06-27 12:10:06,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:10:06,163.163 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:10:06,229.229 INFO    ] No existing commands found in stream
[2026-06-27 12:10:11,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:10:11,241.241 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-27 12:10:14,046.046 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 12:10:14,047.047 INFO    ] Checking for system updates...
[2026-06-27 12:10:14,070.070 INFO    ] 200
[2026-06-27 12:10:14,071.071 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:10:14,104.104 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:10:14,106.106 INFO    ] No update needed
[2026-06-27 12:10:14,108.108 INFO    ] Checking for camera pi updates...
[2026-06-27 12:10:14,128.128 INFO    ] 200
[2026-06-27 12:10:14,130.130 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:10:14,154.154 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:10:14,200.200 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:10:14,201.201 INFO    ] No camera update needed
[2026-06-27 12:10:14,203.203 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:10:14,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:10:14,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:10:14,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:10:16,250.250 INFO    ] ================================================
[2026-06-27 12:10:16,266.266 INFO    ] Launching Daemon at Sat Jun 27 12:10:16 IST 2026
[2026-06-27 12:10:16,277.277 INFO    ] ================================================
[2026-06-27 12:10:16,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:10:16
[2026-06-27 12:10:16,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:10:17,090.090 INFO    ] Initializing speech engine...
[2026-06-27 12:10:17,096.096 INFO    ] 2026-06-27 12:10:17
[2026-06-27 12:10:17,298.298 INFO    ] 2026-06-27 12:10:17
[2026-06-27 12:10:17,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:10:17,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:10:17,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:10:17,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:10:17,738.738 INFO    ] time= 27/06/2026 12:10:17
[2026-06-27 12:10:17,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:10:17,746.746 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:10:17,813.813 INFO    ] No existing commands found in stream
[2026-06-27 12:10:22,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:10:22,825.825 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-27 12:10:25,983.983 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 12:10:25,985.985 INFO    ] Checking for system updates...
[2026-06-27 12:10:26,006.006 INFO    ] 200
[2026-06-27 12:10:26,007.007 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:10:26,037.037 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:10:26,039.039 INFO    ] No update needed
[2026-06-27 12:10:26,040.040 INFO    ] Checking for camera pi updates...
[2026-06-27 12:10:26,060.060 INFO    ] 200
[2026-06-27 12:10:26,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:10:26,085.085 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:10:26,119.119 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:10:26,120.120 INFO    ] No camera update needed
[2026-06-27 12:10:26,122.122 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:10:26,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:10:26,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:10:26,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:10:28,168.168 INFO    ] ================================================
[2026-06-27 12:10:28,184.184 INFO    ] Launching Daemon at Sat Jun 27 12:10:28 IST 2026
[2026-06-27 12:10:28,195.195 INFO    ] ================================================
[2026-06-27 12:10:28,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:10:28
[2026-06-27 12:10:28,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:10:28,987.987 INFO    ] Initializing speech engine...
[2026-06-27 12:10:28,994.994 INFO    ] 2026-06-27 12:10:28
[2026-06-27 12:10:29,206.206 INFO    ] 2026-06-27 12:10:29
[2026-06-27 12:10:29,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:10:29,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:10:29,430.430 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:10:29,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:10:29,671.671 INFO    ] time= 27/06/2026 12:10:29
[2026-06-27 12:10:29,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:10:29,679.679 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:10:29,748.748 INFO    ] No existing commands found in stream
[2026-06-27 12:10:34,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:10:34,762.762 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-27 12:10:35,552.552 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:10:35,554.554 INFO    ] Checking for system updates...
[2026-06-27 12:10:35,576.576 INFO    ] 200
[2026-06-27 12:10:35,577.577 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:10:35,610.610 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:10:35,612.612 INFO    ] No update needed
[2026-06-27 12:10:35,613.613 INFO    ] Checking for camera pi updates...
[2026-06-27 12:10:35,633.633 INFO    ] 200
[2026-06-27 12:10:35,635.635 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:10:35,658.658 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:10:35,699.699 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:10:35,700.700 INFO    ] No camera update needed
[2026-06-27 12:10:35,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:10:35,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:10:35,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:10:35,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:10:37,749.749 INFO    ] ================================================
[2026-06-27 12:10:37,765.765 INFO    ] Launching Daemon at Sat Jun 27 12:10:37 IST 2026
[2026-06-27 12:10:37,776.776 INFO    ] ================================================
[2026-06-27 12:10:38,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:10:38
[2026-06-27 12:10:38,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:10:38,625.625 INFO    ] Initializing speech engine...
[2026-06-27 12:10:38,633.633 INFO    ] 2026-06-27 12:10:38
[2026-06-27 12:10:38,844.844 INFO    ] 2026-06-27 12:10:38
[2026-06-27 12:10:38,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:10:39,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:10:39,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:10:39,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:10:39,199.199 INFO    ] time= 27/06/2026 12:10:39
[2026-06-27 12:10:39,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:10:39,299.299 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:10:39,397.397 INFO    ] No existing commands found in stream
[2026-06-27 12:10:44,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:10:44,415.415 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-27 12:10:46,776.776 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 12:10:46,777.777 INFO    ] Checking for system updates...
[2026-06-27 12:10:46,799.799 INFO    ] 200
[2026-06-27 12:10:46,800.800 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:10:46,831.831 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:10:46,833.833 INFO    ] No update needed
[2026-06-27 12:10:46,834.834 INFO    ] Checking for camera pi updates...
[2026-06-27 12:10:46,854.854 INFO    ] 200
[2026-06-27 12:10:46,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:10:46,880.880 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:10:46,917.917 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:10:46,918.918 INFO    ] No camera update needed
[2026-06-27 12:10:46,920.920 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:10:46,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:10:46,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:10:46,928.928 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:10:48,968.968 INFO    ] ================================================
[2026-06-27 12:10:48,984.984 INFO    ] Launching Daemon at Sat Jun 27 12:10:48 IST 2026
[2026-06-27 12:10:49,999.999 INFO    ] ================================================
[2026-06-27 12:10:49,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:10:49
[2026-06-27 12:10:49,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:10:49,806.806 INFO    ] Initializing speech engine...
[2026-06-27 12:10:49,818.818 INFO    ] 2026-06-27 12:10:49
[2026-06-27 12:10:50,024.024 INFO    ] 2026-06-27 12:10:50
[2026-06-27 12:10:50,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:10:50,237.237 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:10:50,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:10:50,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:10:50,444.444 INFO    ] time= 27/06/2026 12:10:50
[2026-06-27 12:10:50,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:10:50,472.472 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:10:50,538.538 INFO    ] No existing commands found in stream
[2026-06-27 12:10:55,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:10:55,550.550 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-27 12:10:57,601.601 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 12:10:57,602.602 INFO    ] Checking for system updates...
[2026-06-27 12:10:57,623.623 INFO    ] 200
[2026-06-27 12:10:57,624.624 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:10:57,655.655 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:10:57,656.656 INFO    ] No update needed
[2026-06-27 12:10:57,657.657 INFO    ] Checking for camera pi updates...
[2026-06-27 12:10:57,676.676 INFO    ] 200
[2026-06-27 12:10:57,678.678 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:10:57,701.701 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:10:57,738.738 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:10:57,739.739 INFO    ] No camera update needed
[2026-06-27 12:10:57,741.741 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:10:57,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:10:57,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:10:57,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:10:59,786.786 INFO    ] ================================================
[2026-06-27 12:10:59,801.801 INFO    ] Launching Daemon at Sat Jun 27 12:10:59 IST 2026
[2026-06-27 12:10:59,814.814 INFO    ] ================================================
[2026-06-27 12:11:00,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:11:00
[2026-06-27 12:11:00,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:11:00,620.620 INFO    ] Initializing speech engine...
[2026-06-27 12:11:00,629.629 INFO    ] 2026-06-27 12:11:00
[2026-06-27 12:11:00,844.844 INFO    ] 2026-06-27 12:11:00
[2026-06-27 12:11:00,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:11:00,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:11:01,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:11:01,262.262 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:11:01,292.292 INFO    ] time= 27/06/2026 12:11:01
[2026-06-27 12:11:01,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:11:01,300.300 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:11:01,365.365 INFO    ] No existing commands found in stream
[2026-06-27 12:11:06,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:11:06,375.375 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-27 12:11:06,916.916 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 12:11:06,918.918 INFO    ] Checking for system updates...
[2026-06-27 12:11:06,939.939 INFO    ] 200
[2026-06-27 12:11:06,940.940 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:11:06,973.973 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:11:06,974.974 INFO    ] No update needed
[2026-06-27 12:11:06,976.976 INFO    ] Checking for camera pi updates...
[2026-06-27 12:11:06,995.995 INFO    ] 200
[2026-06-27 12:11:06,997.997 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:11:07,021.021 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:11:07,170.170 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:11:07,172.172 INFO    ] No camera update needed
[2026-06-27 12:11:07,173.173 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:11:07,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:11:07,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:11:07,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:11:09,219.219 INFO    ] ================================================
[2026-06-27 12:11:09,235.235 INFO    ] Launching Daemon at Sat Jun 27 12:11:09 IST 2026
[2026-06-27 12:11:09,246.246 INFO    ] ================================================
[2026-06-27 12:11:09,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:11:09
[2026-06-27 12:11:09,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:11:10,043.043 INFO    ] Initializing speech engine...
[2026-06-27 12:11:10,055.055 INFO    ] 2026-06-27 12:11:10
[2026-06-27 12:11:10,263.263 INFO    ] 2026-06-27 12:11:10
[2026-06-27 12:11:10,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:11:10,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:11:10,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:11:10,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:11:10,699.699 INFO    ] time= 27/06/2026 12:11:10
[2026-06-27 12:11:10,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:11:10,715.715 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:11:10,780.780 INFO    ] No existing commands found in stream
[2026-06-27 12:11:15,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:11:15,794.794 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-27 12:11:19,399.399 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 12:11:19,401.401 INFO    ] Checking for system updates...
[2026-06-27 12:11:19,422.422 INFO    ] 200
[2026-06-27 12:11:19,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:11:19,462.462 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:11:19,463.463 INFO    ] No update needed
[2026-06-27 12:11:19,465.465 INFO    ] Checking for camera pi updates...
[2026-06-27 12:11:19,484.484 INFO    ] 200
[2026-06-27 12:11:19,486.486 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:11:19,511.511 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:11:19,557.557 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:11:19,558.558 INFO    ] No camera update needed
[2026-06-27 12:11:19,559.559 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:11:19,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:11:19,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:11:19,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:11:21,605.605 INFO    ] ================================================
[2026-06-27 12:11:21,621.621 INFO    ] Launching Daemon at Sat Jun 27 12:11:21 IST 2026
[2026-06-27 12:11:21,633.633 INFO    ] ================================================
[2026-06-27 12:11:21,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:11:21
[2026-06-27 12:11:22,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:11:22,479.479 INFO    ] Initializing speech engine...
[2026-06-27 12:11:22,489.489 INFO    ] 2026-06-27 12:11:22
[2026-06-27 12:11:22,699.699 INFO    ] 2026-06-27 12:11:22
[2026-06-27 12:11:22,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:11:22,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:11:22,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:11:23,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:11:23,139.139 INFO    ] time= 27/06/2026 12:11:23
[2026-06-27 12:11:23,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:11:23,147.147 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:11:23,214.214 INFO    ] No existing commands found in stream
[2026-06-27 12:11:28,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:11:28,227.227 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-27 12:11:31,780.780 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 12:11:31,781.781 INFO    ] Checking for system updates...
[2026-06-27 12:11:31,805.805 INFO    ] 200
[2026-06-27 12:11:31,807.807 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:11:31,851.851 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:11:31,853.853 INFO    ] No update needed
[2026-06-27 12:11:31,855.855 INFO    ] Checking for camera pi updates...
[2026-06-27 12:11:31,877.877 INFO    ] 200
[2026-06-27 12:11:31,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:11:31,906.906 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:11:31,950.950 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:11:31,952.952 INFO    ] No camera update needed
[2026-06-27 12:11:31,954.954 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:11:31,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:11:31,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:11:31,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:11:34,002.002 INFO    ] ================================================
[2026-06-27 12:11:34,018.018 INFO    ] Launching Daemon at Sat Jun 27 12:11:34 IST 2026
[2026-06-27 12:11:34,029.029 INFO    ] ================================================
[2026-06-27 12:11:34,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:11:34
[2026-06-27 12:11:34,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:11:34,847.847 INFO    ] Initializing speech engine...
[2026-06-27 12:11:34,857.857 INFO    ] 2026-06-27 12:11:34
[2026-06-27 12:11:35,063.063 INFO    ] 2026-06-27 12:11:35
[2026-06-27 12:11:35,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:11:35,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:11:35,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:11:35,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:11:35,510.510 INFO    ] time= 27/06/2026 12:11:35
[2026-06-27 12:11:35,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:11:35,517.517 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:11:35,585.585 INFO    ] No existing commands found in stream
[2026-06-27 12:11:40,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:11:40,602.602 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-27 12:11:44,450.450 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:11:44,451.451 INFO    ] Checking for system updates...
[2026-06-27 12:11:44,474.474 INFO    ] 200
[2026-06-27 12:11:44,476.476 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:11:44,506.506 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:11:44,507.507 INFO    ] No update needed
[2026-06-27 12:11:44,508.508 INFO    ] Checking for camera pi updates...
[2026-06-27 12:11:44,531.531 INFO    ] 200
[2026-06-27 12:11:44,532.532 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:11:44,563.563 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:11:44,610.610 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:11:44,611.611 INFO    ] No camera update needed
[2026-06-27 12:11:44,612.612 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:11:44,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:11:44,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:11:44,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:11:46,660.660 INFO    ] ================================================
[2026-06-27 12:11:46,675.675 INFO    ] Launching Daemon at Sat Jun 27 12:11:46 IST 2026
[2026-06-27 12:11:46,686.686 INFO    ] ================================================
[2026-06-27 12:11:47,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:11:47
[2026-06-27 12:11:47,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:11:47,541.541 INFO    ] Initializing speech engine...
[2026-06-27 12:11:47,547.547 INFO    ] 2026-06-27 12:11:47
[2026-06-27 12:11:47,753.753 INFO    ] 2026-06-27 12:11:47
[2026-06-27 12:11:47,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:11:47,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:11:47,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:11:48,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:11:48,174.174 INFO    ] time= 27/06/2026 12:11:48
[2026-06-27 12:11:48,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:11:48,203.203 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:11:48,271.271 INFO    ] No existing commands found in stream
[2026-06-27 12:11:53,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:11:53,285.285 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-27 12:11:55,332.332 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:11:55,334.334 INFO    ] Checking for system updates...
[2026-06-27 12:11:55,355.355 INFO    ] 200
[2026-06-27 12:11:55,356.356 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:11:55,389.389 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:11:55,391.391 INFO    ] No update needed
[2026-06-27 12:11:55,392.392 INFO    ] Checking for camera pi updates...
[2026-06-27 12:11:55,412.412 INFO    ] 200
[2026-06-27 12:11:55,413.413 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:11:55,438.438 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:11:55,462.462 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:11:55,464.464 INFO    ] No camera update needed
[2026-06-27 12:11:55,465.465 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:11:55,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:11:55,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:11:55,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:11:57,511.511 INFO    ] ================================================
[2026-06-27 12:11:57,526.526 INFO    ] Launching Daemon at Sat Jun 27 12:11:57 IST 2026
[2026-06-27 12:11:57,537.537 INFO    ] ================================================
[2026-06-27 12:11:57,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:11:57
[2026-06-27 12:11:58,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:11:58,378.378 INFO    ] Initializing speech engine...
[2026-06-27 12:11:58,386.386 INFO    ] 2026-06-27 12:11:58
[2026-06-27 12:11:58,604.604 INFO    ] 2026-06-27 12:11:58
[2026-06-27 12:11:58,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:11:58,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:11:58,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:11:58,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:11:59,022.022 INFO    ] time= 27/06/2026 12:11:58
[2026-06-27 12:11:59,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:11:59,056.056 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:11:59,123.123 INFO    ] No existing commands found in stream
[2026-06-27 12:12:04,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:12:04,136.136 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-27 12:12:05,813.813 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 12:12:05,815.815 INFO    ] Checking for system updates...
[2026-06-27 12:12:05,836.836 INFO    ] 200
[2026-06-27 12:12:05,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:12:05,869.869 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:12:05,870.870 INFO    ] No update needed
[2026-06-27 12:12:05,872.872 INFO    ] Checking for camera pi updates...
[2026-06-27 12:12:05,893.893 INFO    ] 200
[2026-06-27 12:12:05,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:12:05,920.920 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:12:05,960.960 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:12:05,962.962 INFO    ] No camera update needed
[2026-06-27 12:12:05,963.963 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:12:05,964.964 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:12:05,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:12:05,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:12:08,013.013 INFO    ] ================================================
[2026-06-27 12:12:08,028.028 INFO    ] Launching Daemon at Sat Jun 27 12:12:08 IST 2026
[2026-06-27 12:12:08,039.039 INFO    ] ================================================
[2026-06-27 12:12:08,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:12:08
[2026-06-27 12:12:08,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:12:08,852.852 INFO    ] Initializing speech engine...
[2026-06-27 12:12:08,860.860 INFO    ] 2026-06-27 12:12:08
[2026-06-27 12:12:09,088.088 INFO    ] 2026-06-27 12:12:09
[2026-06-27 12:12:09,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:12:09,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:12:09,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:12:09,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:12:09,516.516 INFO    ] time= 27/06/2026 12:12:09
[2026-06-27 12:12:09,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:12:09,579.579 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:12:09,658.658 INFO    ] No existing commands found in stream
[2026-06-27 12:12:14,668.668 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:12:14,671.671 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-27 12:12:18,011.011 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:12:18,012.012 INFO    ] Checking for system updates...
[2026-06-27 12:12:18,036.036 INFO    ] 200
[2026-06-27 12:12:18,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:12:18,070.070 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:12:18,072.072 INFO    ] No update needed
[2026-06-27 12:12:18,073.073 INFO    ] Checking for camera pi updates...
[2026-06-27 12:12:18,092.092 INFO    ] 200
[2026-06-27 12:12:18,094.094 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:12:18,119.119 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:12:18,159.159 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:12:18,160.160 INFO    ] No camera update needed
[2026-06-27 12:12:18,162.162 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:12:18,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:12:18,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:12:18,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:12:20,209.209 INFO    ] ================================================
[2026-06-27 12:12:20,224.224 INFO    ] Launching Daemon at Sat Jun 27 12:12:20 IST 2026
[2026-06-27 12:12:20,236.236 INFO    ] ================================================
[2026-06-27 12:12:20,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:12:20
[2026-06-27 12:12:20,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:12:21,043.043 INFO    ] Initializing speech engine...
[2026-06-27 12:12:21,056.056 INFO    ] 2026-06-27 12:12:21
[2026-06-27 12:12:21,270.270 INFO    ] 2026-06-27 12:12:21
[2026-06-27 12:12:21,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:12:21,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:12:21,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:12:21,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:12:21,650.650 INFO    ] time= 27/06/2026 12:12:21
[2026-06-27 12:12:21,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:12:21,751.751 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:12:21,822.822 INFO    ] No existing commands found in stream
[2026-06-27 12:12:26,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:12:26,835.835 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-27 12:12:29,823.823 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 12:12:29,824.824 INFO    ] Checking for system updates...
[2026-06-27 12:12:29,846.846 INFO    ] 200
[2026-06-27 12:12:29,848.848 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:12:29,879.879 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:12:29,881.881 INFO    ] No update needed
[2026-06-27 12:12:29,882.882 INFO    ] Checking for camera pi updates...
[2026-06-27 12:12:29,903.903 INFO    ] 200
[2026-06-27 12:12:29,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:12:29,931.931 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:12:29,977.977 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:12:29,978.978 INFO    ] No camera update needed
[2026-06-27 12:12:29,980.980 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:12:29,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:12:29,985.985 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:12:29,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:12:32,029.029 INFO    ] ================================================
[2026-06-27 12:12:32,045.045 INFO    ] Launching Daemon at Sat Jun 27 12:12:32 IST 2026
[2026-06-27 12:12:32,056.056 INFO    ] ================================================
[2026-06-27 12:12:32,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:12:32
[2026-06-27 12:12:32,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:12:32,923.923 INFO    ] Initializing speech engine...
[2026-06-27 12:12:32,932.932 INFO    ] 2026-06-27 12:12:32
[2026-06-27 12:12:33,159.159 INFO    ] 2026-06-27 12:12:33
[2026-06-27 12:12:33,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:12:33,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:12:33,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:12:33,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:12:33,595.595 INFO    ] time= 27/06/2026 12:12:33
[2026-06-27 12:12:33,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:12:33,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:12:33,727.727 INFO    ] No existing commands found in stream
[2026-06-27 12:12:38,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:12:38,739.739 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-27 12:12:41,024.024 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 12:12:41,027.027 INFO    ] Checking for system updates...
[2026-06-27 12:12:41,048.048 INFO    ] 200
[2026-06-27 12:12:41,049.049 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:12:41,080.080 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:12:41,082.082 INFO    ] No update needed
[2026-06-27 12:12:41,083.083 INFO    ] Checking for camera pi updates...
[2026-06-27 12:12:41,103.103 INFO    ] 200
[2026-06-27 12:12:41,105.105 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:12:41,129.129 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:12:41,175.175 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:12:41,176.176 INFO    ] No camera update needed
[2026-06-27 12:12:41,178.178 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:12:41,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:12:41,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:12:41,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:12:43,227.227 INFO    ] ================================================
[2026-06-27 12:12:43,243.243 INFO    ] Launching Daemon at Sat Jun 27 12:12:43 IST 2026
[2026-06-27 12:12:43,254.254 INFO    ] ================================================
[2026-06-27 12:12:43,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:12:43
[2026-06-27 12:12:43,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:12:44,137.137 INFO    ] Initializing speech engine...
[2026-06-27 12:12:44,145.145 INFO    ] 2026-06-27 12:12:44
[2026-06-27 12:12:44,348.348 INFO    ] 2026-06-27 12:12:44
[2026-06-27 12:12:44,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:12:44,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:12:44,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:12:44,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:12:44,774.774 INFO    ] time= 27/06/2026 12:12:44
[2026-06-27 12:12:44,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:12:44,802.802 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:12:44,874.874 INFO    ] No existing commands found in stream
[2026-06-27 12:12:49,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:12:49,886.886 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-27 12:12:54,134.134 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:12:54,136.136 INFO    ] Checking for system updates...
[2026-06-27 12:12:54,158.158 INFO    ] 200
[2026-06-27 12:12:54,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:12:54,192.192 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:12:54,194.194 INFO    ] No update needed
[2026-06-27 12:12:54,195.195 INFO    ] Checking for camera pi updates...
[2026-06-27 12:12:54,216.216 INFO    ] 200
[2026-06-27 12:12:54,217.217 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:12:54,240.240 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:12:54,274.274 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:12:54,275.275 INFO    ] No camera update needed
[2026-06-27 12:12:54,277.277 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:12:54,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:12:54,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:12:54,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:12:56,323.323 INFO    ] ================================================
[2026-06-27 12:12:56,340.340 INFO    ] Launching Daemon at Sat Jun 27 12:12:56 IST 2026
[2026-06-27 12:12:56,351.351 INFO    ] ================================================
[2026-06-27 12:12:56,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:12:56
[2026-06-27 12:12:57,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:12:57,155.155 INFO    ] Initializing speech engine...
[2026-06-27 12:12:57,159.159 INFO    ] 2026-06-27 12:12:57
[2026-06-27 12:12:57,354.354 INFO    ] 2026-06-27 12:12:57
[2026-06-27 12:12:57,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:12:57,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:12:57,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:12:57,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:12:57,847.847 INFO    ] time= 27/06/2026 12:12:57
[2026-06-27 12:12:57,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:12:57,880.880 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:12:57,951.951 INFO    ] No existing commands found in stream
[2026-06-27 12:13:02,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:13:02,965.965 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-27 12:13:03,711.711 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:13:03,713.713 INFO    ] Checking for system updates...
[2026-06-27 12:13:03,735.735 INFO    ] 200
[2026-06-27 12:13:03,736.736 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:13:03,766.766 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:13:03,768.768 INFO    ] No update needed
[2026-06-27 12:13:03,769.769 INFO    ] Checking for camera pi updates...
[2026-06-27 12:13:03,791.791 INFO    ] 200
[2026-06-27 12:13:03,792.792 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:13:03,816.816 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:13:03,854.854 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:13:03,855.855 INFO    ] No camera update needed
[2026-06-27 12:13:03,857.857 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:13:03,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:13:03,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:13:03,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:13:05,906.906 INFO    ] ================================================
[2026-06-27 12:13:05,922.922 INFO    ] Launching Daemon at Sat Jun 27 12:13:05 IST 2026
[2026-06-27 12:13:05,932.932 INFO    ] ================================================
[2026-06-27 12:13:06,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:13:06
[2026-06-27 12:13:06,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:13:06,729.729 INFO    ] Initializing speech engine...
[2026-06-27 12:13:06,734.734 INFO    ] 2026-06-27 12:13:06
[2026-06-27 12:13:06,945.945 INFO    ] 2026-06-27 12:13:06
[2026-06-27 12:13:06,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:13:07,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:13:07,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:13:07,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:13:07,419.419 INFO    ] time= 27/06/2026 12:13:07
[2026-06-27 12:13:07,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:13:07,452.452 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:13:07,523.523 INFO    ] No existing commands found in stream
[2026-06-27 12:13:12,532.532 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:13:12,535.535 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-27 12:13:16,950.950 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 12:13:16,952.952 INFO    ] Checking for system updates...
[2026-06-27 12:13:16,974.974 INFO    ] 200
[2026-06-27 12:13:16,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:13:17,008.008 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:13:17,009.009 INFO    ] No update needed
[2026-06-27 12:13:17,011.011 INFO    ] Checking for camera pi updates...
[2026-06-27 12:13:17,034.034 INFO    ] 200
[2026-06-27 12:13:17,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:13:17,063.063 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:13:17,204.204 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:13:17,206.206 INFO    ] No camera update needed
[2026-06-27 12:13:17,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:13:17,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:13:17,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:13:17,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:13:19,246.246 INFO    ] ================================================
[2026-06-27 12:13:19,254.254 INFO    ] Launching Daemon at Sat Jun 27 12:13:19 IST 2026
[2026-06-27 12:13:19,262.262 INFO    ] ================================================
[2026-06-27 12:13:19,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:13:19
[2026-06-27 12:13:19,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:13:20,068.068 INFO    ] Initializing speech engine...
[2026-06-27 12:13:20,076.076 INFO    ] 2026-06-27 12:13:20
[2026-06-27 12:13:20,287.287 INFO    ] 2026-06-27 12:13:20
[2026-06-27 12:13:20,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:13:20,500.500 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:13:20,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:13:20,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:13:20,707.707 INFO    ] time= 27/06/2026 12:13:20
[2026-06-27 12:13:20,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:13:20,737.737 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:13:20,804.804 INFO    ] No existing commands found in stream
[2026-06-27 12:13:25,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:13:25,816.816 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-27 12:13:29,180.180 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 12:13:29,182.182 INFO    ] Checking for system updates...
[2026-06-27 12:13:29,202.202 INFO    ] 200
[2026-06-27 12:13:29,204.204 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:13:29,234.234 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:13:29,236.236 INFO    ] No update needed
[2026-06-27 12:13:29,237.237 INFO    ] Checking for camera pi updates...
[2026-06-27 12:13:29,256.256 INFO    ] 200
[2026-06-27 12:13:29,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:13:29,283.283 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:13:29,332.332 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:13:29,333.333 INFO    ] No camera update needed
[2026-06-27 12:13:29,334.334 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:13:29,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:13:29,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:13:29,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:13:31,381.381 INFO    ] ================================================
[2026-06-27 12:13:31,398.398 INFO    ] Launching Daemon at Sat Jun 27 12:13:31 IST 2026
[2026-06-27 12:13:31,410.410 INFO    ] ================================================
[2026-06-27 12:13:31,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:13:31
[2026-06-27 12:13:32,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:13:32,244.244 INFO    ] Initializing speech engine...
[2026-06-27 12:13:32,249.249 INFO    ] 2026-06-27 12:13:32
[2026-06-27 12:13:32,476.476 INFO    ] 2026-06-27 12:13:32
[2026-06-27 12:13:32,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:13:32,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:13:32,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:13:32,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:13:32,923.923 INFO    ] time= 27/06/2026 12:13:32
[2026-06-27 12:13:32,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:13:32,949.949 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:13:33,023.023 INFO    ] No existing commands found in stream
[2026-06-27 12:13:38,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:13:38,036.036 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-27 12:13:41,306.306 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 12:13:41,307.307 INFO    ] Checking for system updates...
[2026-06-27 12:13:41,328.328 INFO    ] 200
[2026-06-27 12:13:41,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:13:41,361.361 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:13:41,363.363 INFO    ] No update needed
[2026-06-27 12:13:41,364.364 INFO    ] Checking for camera pi updates...
[2026-06-27 12:13:41,384.384 INFO    ] 200
[2026-06-27 12:13:41,386.386 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:13:41,411.411 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:13:41,456.456 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:13:41,457.457 INFO    ] No camera update needed
[2026-06-27 12:13:41,459.459 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:13:41,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:13:41,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:13:41,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:13:43,504.504 INFO    ] ================================================
[2026-06-27 12:13:43,519.519 INFO    ] Launching Daemon at Sat Jun 27 12:13:43 IST 2026
[2026-06-27 12:13:43,529.529 INFO    ] ================================================
[2026-06-27 12:13:43,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:13:43
[2026-06-27 12:13:44,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:13:44,329.329 INFO    ] Initializing speech engine...
[2026-06-27 12:13:44,333.333 INFO    ] 2026-06-27 12:13:44
[2026-06-27 12:13:44,538.538 INFO    ] 2026-06-27 12:13:44
[2026-06-27 12:13:44,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:13:44,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:13:44,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:13:44,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:13:44,955.955 INFO    ] time= 27/06/2026 12:13:44
[2026-06-27 12:13:44,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:13:44,985.985 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:13:45,076.076 INFO    ] No existing commands found in stream
[2026-06-27 12:13:50,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:13:50,090.090 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-27 12:13:51,889.889 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 12:13:51,891.891 INFO    ] Checking for system updates...
[2026-06-27 12:13:51,912.912 INFO    ] 200
[2026-06-27 12:13:51,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:13:51,945.945 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:13:51,947.947 INFO    ] No update needed
[2026-06-27 12:13:51,948.948 INFO    ] Checking for camera pi updates...
[2026-06-27 12:13:51,970.970 INFO    ] 200
[2026-06-27 12:13:51,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:13:51,995.995 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:13:52,042.042 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:13:52,043.043 INFO    ] No camera update needed
[2026-06-27 12:13:52,044.044 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:13:52,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:13:52,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:13:52,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:13:54,091.091 INFO    ] ================================================
[2026-06-27 12:13:54,106.106 INFO    ] Launching Daemon at Sat Jun 27 12:13:54 IST 2026
[2026-06-27 12:13:54,117.117 INFO    ] ================================================
[2026-06-27 12:13:54,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:13:54
[2026-06-27 12:13:54,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:13:54,932.932 INFO    ] Initializing speech engine...
[2026-06-27 12:13:54,936.936 INFO    ] 2026-06-27 12:13:54
[2026-06-27 12:13:55,141.141 INFO    ] 2026-06-27 12:13:55
[2026-06-27 12:13:55,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:13:55,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:13:55,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:13:55,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:13:55,569.569 INFO    ] time= 27/06/2026 12:13:55
[2026-06-27 12:13:55,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:13:55,585.585 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:13:55,652.652 INFO    ] No existing commands found in stream
[2026-06-27 12:14:00,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:14:00,669.669 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-27 12:14:01,497.497 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 12:14:01,500.500 INFO    ] Checking for system updates...
[2026-06-27 12:14:01,547.547 INFO    ] 200
[2026-06-27 12:14:01,550.550 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:14:01,616.616 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:14:01,619.619 INFO    ] No update needed
[2026-06-27 12:14:01,621.621 INFO    ] Checking for camera pi updates...
[2026-06-27 12:14:01,659.659 INFO    ] 200
[2026-06-27 12:14:01,662.662 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:14:01,711.711 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:14:01,750.750 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:14:01,752.752 INFO    ] No camera update needed
[2026-06-27 12:14:01,755.755 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:14:01,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:14:01,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:14:01,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:14:03,808.808 INFO    ] ================================================
[2026-06-27 12:14:03,823.823 INFO    ] Launching Daemon at Sat Jun 27 12:14:03 IST 2026
[2026-06-27 12:14:03,833.833 INFO    ] ================================================
[2026-06-27 12:14:04,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:14:04
[2026-06-27 12:14:04,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:14:04,703.703 INFO    ] Initializing speech engine...
[2026-06-27 12:14:04,707.707 INFO    ] 2026-06-27 12:14:04
[2026-06-27 12:14:04,940.940 INFO    ] 2026-06-27 12:14:04
[2026-06-27 12:14:04,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:14:05,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:14:05,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:14:05,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:14:05,365.365 INFO    ] time= 27/06/2026 12:14:05
[2026-06-27 12:14:05,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:14:05,394.394 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:14:05,462.462 INFO    ] No existing commands found in stream
[2026-06-27 12:14:10,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:14:10,476.476 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-27 12:14:12,701.701 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 12:14:12,702.702 INFO    ] Checking for system updates...
[2026-06-27 12:14:12,724.724 INFO    ] 200
[2026-06-27 12:14:12,725.725 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:14:12,758.758 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:14:12,759.759 INFO    ] No update needed
[2026-06-27 12:14:12,760.760 INFO    ] Checking for camera pi updates...
[2026-06-27 12:14:12,779.779 INFO    ] 200
[2026-06-27 12:14:12,781.781 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:14:12,805.805 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:14:12,841.841 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:14:12,842.842 INFO    ] No camera update needed
[2026-06-27 12:14:12,843.843 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:14:12,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:14:12,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:14:12,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:14:14,888.888 INFO    ] ================================================
[2026-06-27 12:14:14,904.904 INFO    ] Launching Daemon at Sat Jun 27 12:14:14 IST 2026
[2026-06-27 12:14:14,915.915 INFO    ] ================================================
[2026-06-27 12:14:15,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:14:15
[2026-06-27 12:14:15,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:14:15,777.777 INFO    ] Initializing speech engine...
[2026-06-27 12:14:15,782.782 INFO    ] 2026-06-27 12:14:15
[2026-06-27 12:14:15,991.991 INFO    ] 2026-06-27 12:14:15
[2026-06-27 12:14:16,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:14:16,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:14:16,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:14:16,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:14:16,411.411 INFO    ] time= 27/06/2026 12:14:16
[2026-06-27 12:14:16,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:14:16,439.439 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:14:16,507.507 INFO    ] No existing commands found in stream
[2026-06-27 12:14:21,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:14:21,535.535 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-27 12:14:24,615.615 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:14:24,616.616 INFO    ] Checking for system updates...
[2026-06-27 12:14:24,637.637 INFO    ] 200
[2026-06-27 12:14:24,639.639 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:14:24,670.670 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:14:24,671.671 INFO    ] No update needed
[2026-06-27 12:14:24,673.673 INFO    ] Checking for camera pi updates...
[2026-06-27 12:14:24,692.692 INFO    ] 200
[2026-06-27 12:14:24,694.694 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:14:24,719.719 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:14:24,760.760 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:14:24,762.762 INFO    ] No camera update needed
[2026-06-27 12:14:24,763.763 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:14:24,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:14:24,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:14:24,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:14:26,809.809 INFO    ] ================================================
[2026-06-27 12:14:26,824.824 INFO    ] Launching Daemon at Sat Jun 27 12:14:26 IST 2026
[2026-06-27 12:14:26,835.835 INFO    ] ================================================
[2026-06-27 12:14:27,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:14:27
[2026-06-27 12:14:27,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:14:27,691.691 INFO    ] Initializing speech engine...
[2026-06-27 12:14:27,695.695 INFO    ] 2026-06-27 12:14:27
[2026-06-27 12:14:27,915.915 INFO    ] 2026-06-27 12:14:27
[2026-06-27 12:14:27,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:14:28,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:14:28,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:14:28,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:14:28,357.357 INFO    ] time= 27/06/2026 12:14:28
[2026-06-27 12:14:28,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:14:28,365.365 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:14:28,431.431 INFO    ] No existing commands found in stream
[2026-06-27 12:14:33,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:14:33,446.446 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-27 12:14:35,991.991 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 12:14:35,993.993 INFO    ] Checking for system updates...
[2026-06-27 12:14:36,014.014 INFO    ] 200
[2026-06-27 12:14:36,016.016 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:14:36,046.046 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:14:36,047.047 INFO    ] No update needed
[2026-06-27 12:14:36,049.049 INFO    ] Checking for camera pi updates...
[2026-06-27 12:14:36,068.068 INFO    ] 200
[2026-06-27 12:14:36,070.070 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:14:36,095.095 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:14:36,133.133 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:14:36,134.134 INFO    ] No camera update needed
[2026-06-27 12:14:36,136.136 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:14:36,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:14:36,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:14:36,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:14:38,181.181 INFO    ] ================================================
[2026-06-27 12:14:38,196.196 INFO    ] Launching Daemon at Sat Jun 27 12:14:38 IST 2026
[2026-06-27 12:14:38,207.207 INFO    ] ================================================
[2026-06-27 12:14:38,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:14:38
[2026-06-27 12:14:38,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:14:39,073.073 INFO    ] Initializing speech engine...
[2026-06-27 12:14:39,078.078 INFO    ] 2026-06-27 12:14:39
[2026-06-27 12:14:39,283.283 INFO    ] 2026-06-27 12:14:39
[2026-06-27 12:14:39,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:14:39,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:14:39,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:14:39,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:14:39,683.683 INFO    ] time= 27/06/2026 12:14:39
[2026-06-27 12:14:39,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:14:39,729.729 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:14:39,799.799 INFO    ] No existing commands found in stream
[2026-06-27 12:14:44,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:14:44,812.812 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-27 12:14:47,150.150 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:14:47,152.152 INFO    ] Checking for system updates...
[2026-06-27 12:14:47,178.178 INFO    ] 200
[2026-06-27 12:14:47,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:14:47,210.210 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:14:47,211.211 INFO    ] No update needed
[2026-06-27 12:14:47,212.212 INFO    ] Checking for camera pi updates...
[2026-06-27 12:14:47,233.233 INFO    ] 200
[2026-06-27 12:14:47,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:14:47,258.258 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:14:47,304.304 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:14:47,306.306 INFO    ] No camera update needed
[2026-06-27 12:14:47,307.307 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:14:47,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:14:47,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:14:47,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:14:49,354.354 INFO    ] ================================================
[2026-06-27 12:14:49,369.369 INFO    ] Launching Daemon at Sat Jun 27 12:14:49 IST 2026
[2026-06-27 12:14:49,379.379 INFO    ] ================================================
[2026-06-27 12:14:49,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:14:49
[2026-06-27 12:14:50,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:14:50,181.181 INFO    ] Initializing speech engine...
[2026-06-27 12:14:50,186.186 INFO    ] 2026-06-27 12:14:50
[2026-06-27 12:14:50,394.394 INFO    ] 2026-06-27 12:14:50
[2026-06-27 12:14:50,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:14:50,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:14:50,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:14:50,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:14:50,813.813 INFO    ] time= 27/06/2026 12:14:50
[2026-06-27 12:14:50,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:14:50,842.842 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:14:50,910.910 INFO    ] No existing commands found in stream
[2026-06-27 12:14:55,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:14:55,922.922 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-27 12:14:58,144.144 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 12:14:58,146.146 INFO    ] Checking for system updates...
[2026-06-27 12:14:58,166.166 INFO    ] 200
[2026-06-27 12:14:58,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:14:58,198.198 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:14:58,199.199 INFO    ] No update needed
[2026-06-27 12:14:58,201.201 INFO    ] Checking for camera pi updates...
[2026-06-27 12:14:58,221.221 INFO    ] 200
[2026-06-27 12:14:58,223.223 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:14:58,246.246 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:14:58,284.284 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:14:58,285.285 INFO    ] No camera update needed
[2026-06-27 12:14:58,287.287 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:14:58,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:14:58,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:14:58,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:15:00,333.333 INFO    ] ================================================
[2026-06-27 12:15:00,348.348 INFO    ] Launching Daemon at Sat Jun 27 12:15:00 IST 2026
[2026-06-27 12:15:00,359.359 INFO    ] ================================================
[2026-06-27 12:15:00,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:15:00
[2026-06-27 12:15:01,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:15:01,208.208 INFO    ] Initializing speech engine...
[2026-06-27 12:15:01,214.214 INFO    ] 2026-06-27 12:15:01
[2026-06-27 12:15:01,423.423 INFO    ] 2026-06-27 12:15:01
[2026-06-27 12:15:01,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:15:01,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:15:01,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:15:01,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:15:01,863.863 INFO    ] time= 27/06/2026 12:15:01
[2026-06-27 12:15:01,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:15:01,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:15:01,955.955 INFO    ] No existing commands found in stream
[2026-06-27 12:15:06,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:15:06,968.968 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-27 12:15:10,705.705 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 12:15:10,706.706 INFO    ] Checking for system updates...
[2026-06-27 12:15:10,729.729 INFO    ] 200
[2026-06-27 12:15:10,730.730 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:15:10,760.760 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:15:10,762.762 INFO    ] No update needed
[2026-06-27 12:15:10,763.763 INFO    ] Checking for camera pi updates...
[2026-06-27 12:15:10,785.785 INFO    ] 200
[2026-06-27 12:15:10,786.786 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:15:10,809.809 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:15:10,855.855 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:15:10,857.857 INFO    ] No camera update needed
[2026-06-27 12:15:10,858.858 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:15:10,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:15:10,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:15:10,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:15:12,903.903 INFO    ] ================================================
[2026-06-27 12:15:12,919.919 INFO    ] Launching Daemon at Sat Jun 27 12:15:12 IST 2026
[2026-06-27 12:15:12,929.929 INFO    ] ================================================
[2026-06-27 12:15:13,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:15:13
[2026-06-27 12:15:13,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:15:13,709.709 INFO    ] Initializing speech engine...
[2026-06-27 12:15:13,716.716 INFO    ] 2026-06-27 12:15:13
[2026-06-27 12:15:13,925.925 INFO    ] 2026-06-27 12:15:13
[2026-06-27 12:15:13,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:15:14,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:15:14,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:15:14,303.303 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:15:14,352.352 INFO    ] time= 27/06/2026 12:15:14
[2026-06-27 12:15:14,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:15:14,381.381 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:15:14,449.449 INFO    ] No existing commands found in stream
[2026-06-27 12:15:19,458.458 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:15:19,461.461 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-27 12:15:21,839.839 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 12:15:21,841.841 INFO    ] Checking for system updates...
[2026-06-27 12:15:21,862.862 INFO    ] 200
[2026-06-27 12:15:21,863.863 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:15:21,893.893 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:15:21,895.895 INFO    ] No update needed
[2026-06-27 12:15:21,896.896 INFO    ] Checking for camera pi updates...
[2026-06-27 12:15:21,917.917 INFO    ] 200
[2026-06-27 12:15:21,918.918 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:15:21,941.941 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:15:22,106.106 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:15:22,107.107 INFO    ] No camera update needed
[2026-06-27 12:15:22,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:15:22,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:15:22,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:15:22,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:15:24,153.153 INFO    ] ================================================
[2026-06-27 12:15:24,169.169 INFO    ] Launching Daemon at Sat Jun 27 12:15:24 IST 2026
[2026-06-27 12:15:24,179.179 INFO    ] ================================================
[2026-06-27 12:15:24,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:15:24
[2026-06-27 12:15:24,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:15:25,005.005 INFO    ] Initializing speech engine...
[2026-06-27 12:15:25,009.009 INFO    ] 2026-06-27 12:15:25
[2026-06-27 12:15:25,213.213 INFO    ] 2026-06-27 12:15:25
[2026-06-27 12:15:25,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:15:25,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:15:25,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:15:25,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:15:25,633.633 INFO    ] time= 27/06/2026 12:15:25
[2026-06-27 12:15:25,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:15:25,661.661 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:15:25,728.728 INFO    ] No existing commands found in stream
[2026-06-27 12:15:30,737.737 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:15:30,740.740 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-27 12:15:34,905.905 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 12:15:34,906.906 INFO    ] Checking for system updates...
[2026-06-27 12:15:34,931.931 INFO    ] 200
[2026-06-27 12:15:34,932.932 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:15:34,963.963 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:15:34,965.965 INFO    ] No update needed
[2026-06-27 12:15:34,966.966 INFO    ] Checking for camera pi updates...
[2026-06-27 12:15:34,987.987 INFO    ] 200
[2026-06-27 12:15:34,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:15:35,016.016 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:15:35,054.054 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:15:35,056.056 INFO    ] No camera update needed
[2026-06-27 12:15:35,057.057 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:15:35,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:15:35,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:15:35,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:15:37,096.096 INFO    ] ================================================
[2026-06-27 12:15:37,105.105 INFO    ] Launching Daemon at Sat Jun 27 12:15:37 IST 2026
[2026-06-27 12:15:37,112.112 INFO    ] ================================================
[2026-06-27 12:15:37,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:15:37
[2026-06-27 12:15:37,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:15:37,918.918 INFO    ] Initializing speech engine...
[2026-06-27 12:15:37,924.924 INFO    ] 2026-06-27 12:15:37
[2026-06-27 12:15:38,126.126 INFO    ] 2026-06-27 12:15:38
[2026-06-27 12:15:38,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:15:38,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:15:38,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:15:38,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:15:38,546.546 INFO    ] time= 27/06/2026 12:15:38
[2026-06-27 12:15:38,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:15:38,573.573 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:15:38,640.640 INFO    ] No existing commands found in stream
[2026-06-27 12:15:43,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:15:43,652.652 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-27 12:15:46,246.246 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:15:46,248.248 INFO    ] Checking for system updates...
[2026-06-27 12:15:46,268.268 INFO    ] 200
[2026-06-27 12:15:46,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:15:46,302.302 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:15:46,303.303 INFO    ] No update needed
[2026-06-27 12:15:46,305.305 INFO    ] Checking for camera pi updates...
[2026-06-27 12:15:46,325.325 INFO    ] 200
[2026-06-27 12:15:46,327.327 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:15:46,350.350 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:15:46,388.388 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:15:46,389.389 INFO    ] No camera update needed
[2026-06-27 12:15:46,390.390 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:15:46,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:15:46,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:15:46,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:15:48,436.436 INFO    ] ================================================
[2026-06-27 12:15:48,451.451 INFO    ] Launching Daemon at Sat Jun 27 12:15:48 IST 2026
[2026-06-27 12:15:48,462.462 INFO    ] ================================================
[2026-06-27 12:15:48,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:15:48
[2026-06-27 12:15:49,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:15:49,273.273 INFO    ] Initializing speech engine...
[2026-06-27 12:15:49,278.278 INFO    ] 2026-06-27 12:15:49
[2026-06-27 12:15:49,494.494 INFO    ] 2026-06-27 12:15:49
[2026-06-27 12:15:49,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:15:49,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:15:49,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:15:49,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:15:49,901.901 INFO    ] time= 27/06/2026 12:15:49
[2026-06-27 12:15:49,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:15:49,941.941 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:15:50,013.013 INFO    ] No existing commands found in stream
[2026-06-27 12:15:55,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:15:55,025.025 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-27 12:15:59,199.199 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 12:15:59,201.201 INFO    ] Checking for system updates...
[2026-06-27 12:15:59,223.223 INFO    ] 200
[2026-06-27 12:15:59,224.224 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:15:59,255.255 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:15:59,256.256 INFO    ] No update needed
[2026-06-27 12:15:59,257.257 INFO    ] Checking for camera pi updates...
[2026-06-27 12:15:59,277.277 INFO    ] 200
[2026-06-27 12:15:59,279.279 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:15:59,303.303 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:15:59,344.344 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:15:59,345.345 INFO    ] No camera update needed
[2026-06-27 12:15:59,347.347 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:15:59,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:15:59,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:15:59,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:16:01,398.398 INFO    ] ================================================
[2026-06-27 12:16:01,416.416 INFO    ] Launching Daemon at Sat Jun 27 12:16:01 IST 2026
[2026-06-27 12:16:01,429.429 INFO    ] ================================================
[2026-06-27 12:16:01,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:16:01
[2026-06-27 12:16:02,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:16:02,304.304 INFO    ] Initializing speech engine...
[2026-06-27 12:16:02,312.312 INFO    ] 2026-06-27 12:16:02
[2026-06-27 12:16:02,530.530 INFO    ] 2026-06-27 12:16:02
[2026-06-27 12:16:02,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:16:02,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:16:02,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:16:02,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:16:02,936.936 INFO    ] time= 27/06/2026 12:16:02
[2026-06-27 12:16:02,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:16:02,976.976 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:16:03,048.048 INFO    ] No existing commands found in stream
[2026-06-27 12:16:08,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:16:08,065.065 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-27 12:16:09,331.331 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 12:16:09,333.333 INFO    ] Checking for system updates...
[2026-06-27 12:16:09,355.355 INFO    ] 200
[2026-06-27 12:16:09,356.356 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:16:09,387.387 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:16:09,388.388 INFO    ] No update needed
[2026-06-27 12:16:09,389.389 INFO    ] Checking for camera pi updates...
[2026-06-27 12:16:09,409.409 INFO    ] 200
[2026-06-27 12:16:09,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:16:09,435.435 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:16:09,473.473 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:16:09,475.475 INFO    ] No camera update needed
[2026-06-27 12:16:09,476.476 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:16:09,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:16:09,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:16:09,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:16:11,526.526 INFO    ] ================================================
[2026-06-27 12:16:11,541.541 INFO    ] Launching Daemon at Sat Jun 27 12:16:11 IST 2026
[2026-06-27 12:16:11,552.552 INFO    ] ================================================
[2026-06-27 12:16:11,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:16:11
[2026-06-27 12:16:12,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:16:12,391.391 INFO    ] Initializing speech engine...
[2026-06-27 12:16:12,402.402 INFO    ] 2026-06-27 12:16:12
[2026-06-27 12:16:12,611.611 INFO    ] 2026-06-27 12:16:12
[2026-06-27 12:16:12,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:16:12,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:16:12,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:16:12,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:16:13,028.028 INFO    ] time= 27/06/2026 12:16:12
[2026-06-27 12:16:13,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:16:13,061.061 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:16:13,151.151 INFO    ] No existing commands found in stream
[2026-06-27 12:16:18,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:16:18,169.169 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-27 12:16:20,810.810 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:16:20,812.812 INFO    ] Checking for system updates...
[2026-06-27 12:16:20,833.833 INFO    ] 200
[2026-06-27 12:16:20,834.834 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:16:20,867.867 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:16:20,868.868 INFO    ] No update needed
[2026-06-27 12:16:20,869.869 INFO    ] Checking for camera pi updates...
[2026-06-27 12:16:20,890.890 INFO    ] 200
[2026-06-27 12:16:20,891.891 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:16:20,917.917 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:16:20,964.964 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:16:20,965.965 INFO    ] No camera update needed
[2026-06-27 12:16:20,967.967 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:16:20,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:16:20,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:16:20,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:16:23,017.017 INFO    ] ================================================
[2026-06-27 12:16:23,032.032 INFO    ] Launching Daemon at Sat Jun 27 12:16:23 IST 2026
[2026-06-27 12:16:23,043.043 INFO    ] ================================================
[2026-06-27 12:16:23,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:16:23
[2026-06-27 12:16:23,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:16:23,849.849 INFO    ] Initializing speech engine...
[2026-06-27 12:16:23,855.855 INFO    ] 2026-06-27 12:16:23
[2026-06-27 12:16:24,065.065 INFO    ] 2026-06-27 12:16:24
[2026-06-27 12:16:24,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:16:24,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:16:24,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:16:24,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:16:24,513.513 INFO    ] time= 27/06/2026 12:16:24
[2026-06-27 12:16:24,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:16:24,520.520 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:16:24,589.589 INFO    ] No existing commands found in stream
[2026-06-27 12:16:29,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:16:29,602.602 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-27 12:16:30,743.743 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 12:16:30,744.744 INFO    ] Checking for system updates...
[2026-06-27 12:16:30,766.766 INFO    ] 200
[2026-06-27 12:16:30,767.767 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:16:30,800.800 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:16:30,801.801 INFO    ] No update needed
[2026-06-27 12:16:30,803.803 INFO    ] Checking for camera pi updates...
[2026-06-27 12:16:30,822.822 INFO    ] 200
[2026-06-27 12:16:30,824.824 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:16:30,847.847 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:16:30,894.894 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:16:30,895.895 INFO    ] No camera update needed
[2026-06-27 12:16:30,896.896 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:16:30,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:16:30,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:16:30,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:16:32,936.936 INFO    ] ================================================
[2026-06-27 12:16:32,951.951 INFO    ] Launching Daemon at Sat Jun 27 12:16:32 IST 2026
[2026-06-27 12:16:32,961.961 INFO    ] ================================================
[2026-06-27 12:16:33,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:16:33
[2026-06-27 12:16:33,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:16:33,726.726 INFO    ] Initializing speech engine...
[2026-06-27 12:16:33,729.729 INFO    ] 2026-06-27 12:16:33
[2026-06-27 12:16:33,948.948 INFO    ] 2026-06-27 12:16:33
[2026-06-27 12:16:33,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:16:34,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:16:34,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:16:34,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:16:34,394.394 INFO    ] time= 27/06/2026 12:16:34
[2026-06-27 12:16:34,400.400 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:16:34,401.401 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:16:34,468.468 INFO    ] No existing commands found in stream
[2026-06-27 12:16:39,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:16:39,481.481 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-27 12:16:41,429.429 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 12:16:41,431.431 INFO    ] Checking for system updates...
[2026-06-27 12:16:41,453.453 INFO    ] 200
[2026-06-27 12:16:41,455.455 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:16:41,487.487 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:16:41,490.490 INFO    ] No update needed
[2026-06-27 12:16:41,491.491 INFO    ] Checking for camera pi updates...
[2026-06-27 12:16:41,511.511 INFO    ] 200
[2026-06-27 12:16:41,512.512 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:16:41,539.539 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:16:41,580.580 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:16:41,581.581 INFO    ] No camera update needed
[2026-06-27 12:16:41,583.583 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:16:41,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:16:41,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:16:41,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:16:43,629.629 INFO    ] ================================================
[2026-06-27 12:16:43,644.644 INFO    ] Launching Daemon at Sat Jun 27 12:16:43 IST 2026
[2026-06-27 12:16:43,655.655 INFO    ] ================================================
[2026-06-27 12:16:44,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:16:44
[2026-06-27 12:16:44,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:16:44,467.467 INFO    ] Initializing speech engine...
[2026-06-27 12:16:44,480.480 INFO    ] 2026-06-27 12:16:44
[2026-06-27 12:16:44,697.697 INFO    ] 2026-06-27 12:16:44
[2026-06-27 12:16:44,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:16:44,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:16:44,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:16:45,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:16:45,143.143 INFO    ] time= 27/06/2026 12:16:45
[2026-06-27 12:16:45,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:16:45,174.174 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:16:45,243.243 INFO    ] No existing commands found in stream
[2026-06-27 12:16:50,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:16:50,257.257 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-27 12:16:50,717.717 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 12:16:50,719.719 INFO    ] Checking for system updates...
[2026-06-27 12:16:50,739.739 INFO    ] 200
[2026-06-27 12:16:50,741.741 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:16:50,777.777 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:16:50,778.778 INFO    ] No update needed
[2026-06-27 12:16:50,780.780 INFO    ] Checking for camera pi updates...
[2026-06-27 12:16:50,803.803 INFO    ] 200
[2026-06-27 12:16:50,804.804 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:16:50,831.831 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:16:50,869.869 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:16:50,870.870 INFO    ] No camera update needed
[2026-06-27 12:16:50,872.872 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:16:50,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:16:50,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:16:50,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:16:52,918.918 INFO    ] ================================================
[2026-06-27 12:16:52,933.933 INFO    ] Launching Daemon at Sat Jun 27 12:16:52 IST 2026
[2026-06-27 12:16:52,944.944 INFO    ] ================================================
[2026-06-27 12:16:53,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:16:53
[2026-06-27 12:16:53,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:16:53,734.734 INFO    ] Initializing speech engine...
[2026-06-27 12:16:53,742.742 INFO    ] 2026-06-27 12:16:53
[2026-06-27 12:16:53,959.959 INFO    ] 2026-06-27 12:16:53
[2026-06-27 12:16:53,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:16:54,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:16:54,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:16:54,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:16:54,378.378 INFO    ] time= 27/06/2026 12:16:54
[2026-06-27 12:16:54,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:16:54,428.428 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:16:54,528.528 INFO    ] No existing commands found in stream
[2026-06-27 12:16:59,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:16:59,539.539 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-27 12:17:02,851.851 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 12:17:02,853.853 INFO    ] Checking for system updates...
[2026-06-27 12:17:02,879.879 INFO    ] 200
[2026-06-27 12:17:02,880.880 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:17:02,910.910 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:17:02,912.912 INFO    ] No update needed
[2026-06-27 12:17:02,913.913 INFO    ] Checking for camera pi updates...
[2026-06-27 12:17:02,935.935 INFO    ] 200
[2026-06-27 12:17:02,936.936 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:17:02,975.975 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:17:03,004.004 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:17:03,007.007 INFO    ] No camera update needed
[2026-06-27 12:17:03,010.010 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:17:03,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:17:03,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:17:03,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:17:05,063.063 INFO    ] ================================================
[2026-06-27 12:17:05,078.078 INFO    ] Launching Daemon at Sat Jun 27 12:17:05 IST 2026
[2026-06-27 12:17:05,089.089 INFO    ] ================================================
[2026-06-27 12:17:05,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:17:05
[2026-06-27 12:17:05,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:17:05,918.918 INFO    ] Initializing speech engine...
[2026-06-27 12:17:05,926.926 INFO    ] 2026-06-27 12:17:05
[2026-06-27 12:17:06,143.143 INFO    ] 2026-06-27 12:17:06
[2026-06-27 12:17:06,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:17:06,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:17:06,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:17:06,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:17:06,580.580 INFO    ] time= 27/06/2026 12:17:06
[2026-06-27 12:17:06,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:17:06,596.596 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:17:06,662.662 INFO    ] No existing commands found in stream
[2026-06-27 12:17:11,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:17:11,676.676 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-27 12:17:15,162.162 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:17:15,163.163 INFO    ] Checking for system updates...
[2026-06-27 12:17:15,185.185 INFO    ] 200
[2026-06-27 12:17:15,187.187 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:17:15,222.222 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:17:15,223.223 INFO    ] No update needed
[2026-06-27 12:17:15,225.225 INFO    ] Checking for camera pi updates...
[2026-06-27 12:17:15,247.247 INFO    ] 200
[2026-06-27 12:17:15,248.248 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:17:15,273.273 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:17:15,309.309 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:17:15,310.310 INFO    ] No camera update needed
[2026-06-27 12:17:15,312.312 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:17:15,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:17:15,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:17:15,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:17:17,359.359 INFO    ] ================================================
[2026-06-27 12:17:17,375.375 INFO    ] Launching Daemon at Sat Jun 27 12:17:17 IST 2026
[2026-06-27 12:17:17,385.385 INFO    ] ================================================
[2026-06-27 12:17:17,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:17:17
[2026-06-27 12:17:18,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:17:18,195.195 INFO    ] Initializing speech engine...
[2026-06-27 12:17:18,201.201 INFO    ] 2026-06-27 12:17:18
[2026-06-27 12:17:18,407.407 INFO    ] 2026-06-27 12:17:18
[2026-06-27 12:17:18,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:17:18,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:17:18,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:17:18,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:17:18,834.834 INFO    ] time= 27/06/2026 12:17:18
[2026-06-27 12:17:18,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:17:18,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:17:18,930.930 INFO    ] No existing commands found in stream
[2026-06-27 12:17:23,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:17:23,941.941 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-27 12:17:25,452.452 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:17:25,454.454 INFO    ] Checking for system updates...
[2026-06-27 12:17:25,475.475 INFO    ] 200
[2026-06-27 12:17:25,476.476 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:17:25,507.507 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:17:25,508.508 INFO    ] No update needed
[2026-06-27 12:17:25,509.509 INFO    ] Checking for camera pi updates...
[2026-06-27 12:17:25,529.529 INFO    ] 200
[2026-06-27 12:17:25,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:17:25,555.555 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:17:25,694.694 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:17:25,696.696 INFO    ] No camera update needed
[2026-06-27 12:17:25,697.697 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:17:25,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:17:25,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:17:25,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:17:27,742.742 INFO    ] ================================================
[2026-06-27 12:17:27,757.757 INFO    ] Launching Daemon at Sat Jun 27 12:17:27 IST 2026
[2026-06-27 12:17:27,768.768 INFO    ] ================================================
[2026-06-27 12:17:28,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:17:28
[2026-06-27 12:17:28,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:17:28,641.641 INFO    ] Initializing speech engine...
[2026-06-27 12:17:28,646.646 INFO    ] 2026-06-27 12:17:28
[2026-06-27 12:17:28,853.853 INFO    ] 2026-06-27 12:17:28
[2026-06-27 12:17:28,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:17:29,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:17:29,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:17:29,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:17:29,273.273 INFO    ] time= 27/06/2026 12:17:29
[2026-06-27 12:17:29,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:17:29,303.303 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:17:29,370.370 INFO    ] No existing commands found in stream
[2026-06-27 12:17:34,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:17:34,388.388 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-27 12:17:38,326.326 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:17:38,327.327 INFO    ] Checking for system updates...
[2026-06-27 12:17:38,348.348 INFO    ] 200
[2026-06-27 12:17:38,350.350 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:17:38,382.382 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:17:38,383.383 INFO    ] No update needed
[2026-06-27 12:17:38,385.385 INFO    ] Checking for camera pi updates...
[2026-06-27 12:17:38,405.405 INFO    ] 200
[2026-06-27 12:17:38,406.406 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:17:38,430.430 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:17:38,466.466 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:17:38,467.467 INFO    ] No camera update needed
[2026-06-27 12:17:38,468.468 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:17:38,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:17:38,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:17:38,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:17:40,514.514 INFO    ] ================================================
[2026-06-27 12:17:40,529.529 INFO    ] Launching Daemon at Sat Jun 27 12:17:40 IST 2026
[2026-06-27 12:17:40,540.540 INFO    ] ================================================
[2026-06-27 12:17:40,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:17:40
[2026-06-27 12:17:41,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:17:41,367.367 INFO    ] Initializing speech engine...
[2026-06-27 12:17:41,383.383 INFO    ] 2026-06-27 12:17:41
[2026-06-27 12:17:41,623.623 INFO    ] 2026-06-27 12:17:41
[2026-06-27 12:17:41,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:17:41,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:17:41,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:17:41,994.994 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:17:42,055.055 INFO    ] time= 27/06/2026 12:17:41
[2026-06-27 12:17:42,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:17:42,095.095 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:17:42,196.196 INFO    ] No existing commands found in stream
[2026-06-27 12:17:47,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:17:47,208.208 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-27 12:17:48,287.287 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 12:17:48,289.289 INFO    ] Checking for system updates...
[2026-06-27 12:17:48,310.310 INFO    ] 200
[2026-06-27 12:17:48,312.312 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:17:48,342.342 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:17:48,343.343 INFO    ] No update needed
[2026-06-27 12:17:48,345.345 INFO    ] Checking for camera pi updates...
[2026-06-27 12:17:48,364.364 INFO    ] 200
[2026-06-27 12:17:48,365.365 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:17:48,390.390 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:17:48,434.434 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:17:48,435.435 INFO    ] No camera update needed
[2026-06-27 12:17:48,436.436 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:17:48,437.437 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:17:48,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:17:48,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:17:50,482.482 INFO    ] ================================================
[2026-06-27 12:17:50,497.497 INFO    ] Launching Daemon at Sat Jun 27 12:17:50 IST 2026
[2026-06-27 12:17:50,508.508 INFO    ] ================================================
[2026-06-27 12:17:50,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:17:50
[2026-06-27 12:17:51,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:17:51,316.316 INFO    ] Initializing speech engine...
[2026-06-27 12:17:51,320.320 INFO    ] 2026-06-27 12:17:51
[2026-06-27 12:17:51,517.517 INFO    ] 2026-06-27 12:17:51
[2026-06-27 12:17:51,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:17:51,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:17:51,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:17:51,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:17:51,955.955 INFO    ] time= 27/06/2026 12:17:51
[2026-06-27 12:17:52,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:17:52,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:17:52,128.128 INFO    ] No existing commands found in stream
[2026-06-27 12:17:57,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:17:57,145.145 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-27 12:17:59,655.655 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 12:17:59,656.656 INFO    ] Checking for system updates...
[2026-06-27 12:17:59,677.677 INFO    ] 200
[2026-06-27 12:17:59,678.678 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:17:59,709.709 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:17:59,710.710 INFO    ] No update needed
[2026-06-27 12:17:59,711.711 INFO    ] Checking for camera pi updates...
[2026-06-27 12:17:59,731.731 INFO    ] 200
[2026-06-27 12:17:59,732.732 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:17:59,755.755 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:17:59,795.795 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:17:59,796.796 INFO    ] No camera update needed
[2026-06-27 12:17:59,797.797 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:17:59,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:17:59,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:17:59,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:18:01,840.840 INFO    ] ================================================
[2026-06-27 12:18:01,857.857 INFO    ] Launching Daemon at Sat Jun 27 12:18:01 IST 2026
[2026-06-27 12:18:01,868.868 INFO    ] ================================================
[2026-06-27 12:18:02,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:18:02
[2026-06-27 12:18:02,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:18:02,779.779 INFO    ] Initializing speech engine...
[2026-06-27 12:18:02,784.784 INFO    ] 2026-06-27 12:18:02
[2026-06-27 12:18:02,999.999 INFO    ] 2026-06-27 12:18:02
[2026-06-27 12:18:03,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:18:03,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:18:03,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:18:03,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:18:03,413.413 INFO    ] time= 27/06/2026 12:18:03
[2026-06-27 12:18:03,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:18:03,447.447 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:18:03,519.519 INFO    ] No existing commands found in stream
[2026-06-27 12:18:08,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:18:08,531.531 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-27 12:18:09,395.395 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:18:09,396.396 INFO    ] Checking for system updates...
[2026-06-27 12:18:09,417.417 INFO    ] 200
[2026-06-27 12:18:09,419.419 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:18:09,451.451 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:18:09,452.452 INFO    ] No update needed
[2026-06-27 12:18:09,453.453 INFO    ] Checking for camera pi updates...
[2026-06-27 12:18:09,474.474 INFO    ] 200
[2026-06-27 12:18:09,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:18:09,498.498 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:18:09,536.536 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:18:09,537.537 INFO    ] No camera update needed
[2026-06-27 12:18:09,538.538 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:18:09,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:18:09,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:18:09,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:18:11,584.584 INFO    ] ================================================
[2026-06-27 12:18:11,599.599 INFO    ] Launching Daemon at Sat Jun 27 12:18:11 IST 2026
[2026-06-27 12:18:11,611.611 INFO    ] ================================================
[2026-06-27 12:18:11,962.962 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:18:11
[2026-06-27 12:18:12,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:18:12,419.419 INFO    ] Initializing speech engine...
[2026-06-27 12:18:12,425.425 INFO    ] 2026-06-27 12:18:12
[2026-06-27 12:18:12,631.631 INFO    ] 2026-06-27 12:18:12
[2026-06-27 12:18:12,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:18:12,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:18:12,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:18:13,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:18:13,060.060 INFO    ] time= 27/06/2026 12:18:13
[2026-06-27 12:18:13,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:18:13,088.088 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:18:13,154.154 INFO    ] No existing commands found in stream
[2026-06-27 12:18:18,165.165 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:18:18,168.168 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-27 12:18:18,562.562 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:18:18,564.564 INFO    ] Checking for system updates...
[2026-06-27 12:18:18,585.585 INFO    ] 200
[2026-06-27 12:18:18,587.587 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:18:18,617.617 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:18:18,618.618 INFO    ] No update needed
[2026-06-27 12:18:18,620.620 INFO    ] Checking for camera pi updates...
[2026-06-27 12:18:18,639.639 INFO    ] 200
[2026-06-27 12:18:18,641.641 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:18:18,664.664 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:18:18,714.714 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:18:18,716.716 INFO    ] No camera update needed
[2026-06-27 12:18:18,717.717 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:18:18,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:18:18,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:18:18,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:18:20,763.763 INFO    ] ================================================
[2026-06-27 12:18:20,778.778 INFO    ] Launching Daemon at Sat Jun 27 12:18:20 IST 2026
[2026-06-27 12:18:20,789.789 INFO    ] ================================================
[2026-06-27 12:18:21,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:18:21
[2026-06-27 12:18:21,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:18:21,650.650 INFO    ] Initializing speech engine...
[2026-06-27 12:18:21,656.656 INFO    ] 2026-06-27 12:18:21
[2026-06-27 12:18:21,863.863 INFO    ] 2026-06-27 12:18:21
[2026-06-27 12:18:21,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:18:22,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:18:22,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:18:22,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:18:22,284.284 INFO    ] time= 27/06/2026 12:18:22
[2026-06-27 12:18:22,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:18:22,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:18:22,380.380 INFO    ] No existing commands found in stream
[2026-06-27 12:18:27,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:18:27,407.407 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-27 12:18:30,243.243 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:18:30,245.245 INFO    ] Checking for system updates...
[2026-06-27 12:18:30,266.266 INFO    ] 200
[2026-06-27 12:18:30,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:18:30,300.300 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:18:30,301.301 INFO    ] No update needed
[2026-06-27 12:18:30,302.302 INFO    ] Checking for camera pi updates...
[2026-06-27 12:18:30,325.325 INFO    ] 200
[2026-06-27 12:18:30,327.327 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:18:30,351.351 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:18:30,387.387 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:18:30,388.388 INFO    ] No camera update needed
[2026-06-27 12:18:30,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:18:30,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:18:30,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:18:30,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:18:32,428.428 INFO    ] ================================================
[2026-06-27 12:18:32,437.437 INFO    ] Launching Daemon at Sat Jun 27 12:18:32 IST 2026
[2026-06-27 12:18:32,444.444 INFO    ] ================================================
[2026-06-27 12:18:32,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:18:32
[2026-06-27 12:18:33,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:18:33,218.218 INFO    ] Initializing speech engine...
[2026-06-27 12:18:33,228.228 INFO    ] 2026-06-27 12:18:33
[2026-06-27 12:18:33,434.434 INFO    ] 2026-06-27 12:18:33
[2026-06-27 12:18:33,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:18:33,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:18:33,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:18:33,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:18:33,858.858 INFO    ] time= 27/06/2026 12:18:33
[2026-06-27 12:18:33,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:18:33,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:18:33,954.954 INFO    ] No existing commands found in stream
[2026-06-27 12:18:38,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:18:38,966.966 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-27 12:18:40,031.031 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 12:18:40,033.033 INFO    ] Checking for system updates...
[2026-06-27 12:18:40,055.055 INFO    ] 200
[2026-06-27 12:18:40,056.056 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:18:40,088.088 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:18:40,089.089 INFO    ] No update needed
[2026-06-27 12:18:40,091.091 INFO    ] Checking for camera pi updates...
[2026-06-27 12:18:40,110.110 INFO    ] 200
[2026-06-27 12:18:40,114.114 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:18:40,138.138 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:18:40,173.173 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:18:40,175.175 INFO    ] No camera update needed
[2026-06-27 12:18:40,176.176 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:18:40,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:18:40,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:18:40,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:18:42,221.221 INFO    ] ================================================
[2026-06-27 12:18:42,236.236 INFO    ] Launching Daemon at Sat Jun 27 12:18:42 IST 2026
[2026-06-27 12:18:42,247.247 INFO    ] ================================================
[2026-06-27 12:18:42,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:18:42
[2026-06-27 12:18:42,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:18:43,134.134 INFO    ] Initializing speech engine...
[2026-06-27 12:18:43,138.138 INFO    ] 2026-06-27 12:18:43
[2026-06-27 12:18:43,343.343 INFO    ] 2026-06-27 12:18:43
[2026-06-27 12:18:43,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:18:43,556.556 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:18:43,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:18:43,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:18:43,762.762 INFO    ] time= 27/06/2026 12:18:43
[2026-06-27 12:18:43,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:18:43,791.791 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:18:43,858.858 INFO    ] No existing commands found in stream
[2026-06-27 12:18:48,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:18:48,870.870 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-27 12:18:49,681.681 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:18:49,682.682 INFO    ] Checking for system updates...
[2026-06-27 12:18:49,704.704 INFO    ] 200
[2026-06-27 12:18:49,705.705 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:18:49,740.740 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:18:49,741.741 INFO    ] No update needed
[2026-06-27 12:18:49,743.743 INFO    ] Checking for camera pi updates...
[2026-06-27 12:18:49,762.762 INFO    ] 200
[2026-06-27 12:18:49,763.763 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:18:49,787.787 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:18:49,823.823 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:18:49,824.824 INFO    ] No camera update needed
[2026-06-27 12:18:49,826.826 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:18:49,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:18:49,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:18:49,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:18:51,873.873 INFO    ] ================================================
[2026-06-27 12:18:51,888.888 INFO    ] Launching Daemon at Sat Jun 27 12:18:51 IST 2026
[2026-06-27 12:18:51,899.899 INFO    ] ================================================
[2026-06-27 12:18:52,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:18:52
[2026-06-27 12:18:52,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:18:52,763.763 INFO    ] Initializing speech engine...
[2026-06-27 12:18:52,768.768 INFO    ] 2026-06-27 12:18:52
[2026-06-27 12:18:52,976.976 INFO    ] 2026-06-27 12:18:52
[2026-06-27 12:18:53,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:18:53,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:18:53,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:18:53,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:18:53,384.384 INFO    ] time= 27/06/2026 12:18:53
[2026-06-27 12:18:53,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:18:53,424.424 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:18:53,519.519 INFO    ] No existing commands found in stream
[2026-06-27 12:18:58,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:18:58,537.537 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-27 12:18:59,447.447 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:18:59,449.449 INFO    ] Checking for system updates...
[2026-06-27 12:18:59,470.470 INFO    ] 200
[2026-06-27 12:18:59,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:18:59,504.504 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:18:59,505.505 INFO    ] No update needed
[2026-06-27 12:18:59,507.507 INFO    ] Checking for camera pi updates...
[2026-06-27 12:18:59,526.526 INFO    ] 200
[2026-06-27 12:18:59,527.527 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:18:59,550.550 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:18:59,598.598 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:18:59,599.599 INFO    ] No camera update needed
[2026-06-27 12:18:59,600.600 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:18:59,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:18:59,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:18:59,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:19:01,647.647 INFO    ] ================================================
[2026-06-27 12:19:01,662.662 INFO    ] Launching Daemon at Sat Jun 27 12:19:01 IST 2026
[2026-06-27 12:19:01,673.673 INFO    ] ================================================
[2026-06-27 12:19:02,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:19:02
[2026-06-27 12:19:02,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:19:02,708.708 INFO    ] Initializing speech engine...
[2026-06-27 12:19:02,718.718 INFO    ] 2026-06-27 12:19:02
[2026-06-27 12:19:02,979.979 INFO    ] 2026-06-27 12:19:02
[2026-06-27 12:19:03,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:19:03,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:19:03,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:19:03,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:19:03,405.405 INFO    ] time= 27/06/2026 12:19:03
[2026-06-27 12:19:03,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:19:03,449.449 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:19:03,516.516 INFO    ] No existing commands found in stream
[2026-06-27 12:19:08,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:19:08,528.528 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-27 12:19:12,185.185 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 12:19:12,187.187 INFO    ] Checking for system updates...
[2026-06-27 12:19:12,208.208 INFO    ] 200
[2026-06-27 12:19:12,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:19:12,240.240 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:19:12,241.241 INFO    ] No update needed
[2026-06-27 12:19:12,243.243 INFO    ] Checking for camera pi updates...
[2026-06-27 12:19:12,262.262 INFO    ] 200
[2026-06-27 12:19:12,264.264 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:19:12,288.288 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:19:12,329.329 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:19:12,330.330 INFO    ] No camera update needed
[2026-06-27 12:19:12,331.331 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:19:12,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:19:12,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:19:12,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:19:14,378.378 INFO    ] ================================================
[2026-06-27 12:19:14,392.392 INFO    ] Launching Daemon at Sat Jun 27 12:19:14 IST 2026
[2026-06-27 12:19:14,403.403 INFO    ] ================================================
[2026-06-27 12:19:14,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:19:14
[2026-06-27 12:19:15,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:19:15,246.246 INFO    ] Initializing speech engine...
[2026-06-27 12:19:15,259.259 INFO    ] 2026-06-27 12:19:15
[2026-06-27 12:19:15,465.465 INFO    ] 2026-06-27 12:19:15
[2026-06-27 12:19:15,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:19:15,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:19:15,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:19:15,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:19:15,905.905 INFO    ] time= 27/06/2026 12:19:15
[2026-06-27 12:19:15,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:19:15,912.912 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:19:15,979.979 INFO    ] No existing commands found in stream
[2026-06-27 12:19:20,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:19:20,991.991 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-27 12:19:24,322.322 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 12:19:24,325.325 INFO    ] Checking for system updates...
[2026-06-27 12:19:24,362.362 INFO    ] 200
[2026-06-27 12:19:24,365.365 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:19:24,418.418 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:19:24,419.419 INFO    ] No update needed
[2026-06-27 12:19:24,421.421 INFO    ] Checking for camera pi updates...
[2026-06-27 12:19:24,441.441 INFO    ] 200
[2026-06-27 12:19:24,442.442 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:19:24,467.467 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:19:24,506.506 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:19:24,508.508 INFO    ] No camera update needed
[2026-06-27 12:19:24,509.509 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:19:24,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:19:24,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:19:24,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:19:26,557.557 INFO    ] ================================================
[2026-06-27 12:19:26,572.572 INFO    ] Launching Daemon at Sat Jun 27 12:19:26 IST 2026
[2026-06-27 12:19:26,583.583 INFO    ] ================================================
[2026-06-27 12:19:26,961.961 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:19:26
[2026-06-27 12:19:27,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:19:27,449.449 INFO    ] Initializing speech engine...
[2026-06-27 12:19:27,455.455 INFO    ] 2026-06-27 12:19:27
[2026-06-27 12:19:27,663.663 INFO    ] 2026-06-27 12:19:27
[2026-06-27 12:19:27,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:19:27,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:19:27,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:19:28,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:19:28,083.083 INFO    ] time= 27/06/2026 12:19:28
[2026-06-27 12:19:28,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:19:28,113.113 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:19:28,180.180 INFO    ] No existing commands found in stream
[2026-06-27 12:19:33,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:19:33,193.193 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-27 12:19:36,404.404 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 12:19:36,405.405 INFO    ] Checking for system updates...
[2026-06-27 12:19:36,426.426 INFO    ] 200
[2026-06-27 12:19:36,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:19:36,462.462 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:19:36,463.463 INFO    ] No update needed
[2026-06-27 12:19:36,465.465 INFO    ] Checking for camera pi updates...
[2026-06-27 12:19:36,486.486 INFO    ] 200
[2026-06-27 12:19:36,487.487 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:19:36,513.513 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:19:36,559.559 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:19:36,560.560 INFO    ] No camera update needed
[2026-06-27 12:19:36,562.562 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:19:36,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:19:36,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:19:36,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:19:38,609.609 INFO    ] ================================================
[2026-06-27 12:19:38,625.625 INFO    ] Launching Daemon at Sat Jun 27 12:19:38 IST 2026
[2026-06-27 12:19:38,635.635 INFO    ] ================================================
[2026-06-27 12:19:39,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:19:38
[2026-06-27 12:19:39,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:19:39,483.483 INFO    ] Initializing speech engine...
[2026-06-27 12:19:39,488.488 INFO    ] 2026-06-27 12:19:39
[2026-06-27 12:19:39,697.697 INFO    ] 2026-06-27 12:19:39
[2026-06-27 12:19:39,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:19:39,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:19:39,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:19:40,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:19:40,119.119 INFO    ] time= 27/06/2026 12:19:40
[2026-06-27 12:19:40,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:19:40,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:19:40,218.218 INFO    ] No existing commands found in stream
[2026-06-27 12:19:45,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:19:45,236.236 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-27 12:19:49,433.433 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:19:49,434.434 INFO    ] Checking for system updates...
[2026-06-27 12:19:49,456.456 INFO    ] 200
[2026-06-27 12:19:49,457.457 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:19:49,488.488 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:19:49,489.489 INFO    ] No update needed
[2026-06-27 12:19:49,490.490 INFO    ] Checking for camera pi updates...
[2026-06-27 12:19:49,512.512 INFO    ] 200
[2026-06-27 12:19:49,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:19:49,538.538 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:19:49,575.575 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:19:49,576.576 INFO    ] No camera update needed
[2026-06-27 12:19:49,578.578 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:19:49,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:19:49,582.582 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:19:49,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:19:51,624.624 INFO    ] ================================================
[2026-06-27 12:19:51,639.639 INFO    ] Launching Daemon at Sat Jun 27 12:19:51 IST 2026
[2026-06-27 12:19:51,650.650 INFO    ] ================================================
[2026-06-27 12:19:52,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:19:52
[2026-06-27 12:19:52,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:19:52,488.488 INFO    ] Initializing speech engine...
[2026-06-27 12:19:52,493.493 INFO    ] 2026-06-27 12:19:52
[2026-06-27 12:19:52,700.700 INFO    ] 2026-06-27 12:19:52
[2026-06-27 12:19:52,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:19:52,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:19:52,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:19:53,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:19:53,119.119 INFO    ] time= 27/06/2026 12:19:53
[2026-06-27 12:19:53,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:19:53,149.149 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:19:53,221.221 INFO    ] No existing commands found in stream
[2026-06-27 12:19:58,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:19:58,251.251 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-27 12:20:01,170.170 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 12:20:01,172.172 INFO    ] Checking for system updates...
[2026-06-27 12:20:01,192.192 INFO    ] 200
[2026-06-27 12:20:01,194.194 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:20:01,249.249 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:20:01,254.254 INFO    ] No update needed
[2026-06-27 12:20:01,259.259 INFO    ] Checking for camera pi updates...
[2026-06-27 12:20:01,368.368 INFO    ] 200
[2026-06-27 12:20:01,391.391 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:20:01,517.517 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:20:01,560.560 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:20:01,562.562 INFO    ] No camera update needed
[2026-06-27 12:20:01,565.565 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:20:01,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:20:01,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:20:01,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:20:03,619.619 INFO    ] ================================================
[2026-06-27 12:20:03,634.634 INFO    ] Launching Daemon at Sat Jun 27 12:20:03 IST 2026
[2026-06-27 12:20:03,645.645 INFO    ] ================================================
[2026-06-27 12:20:03,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:20:03
[2026-06-27 12:20:04,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:20:04,415.415 INFO    ] Initializing speech engine...
[2026-06-27 12:20:04,425.425 INFO    ] 2026-06-27 12:20:04
[2026-06-27 12:20:04,632.632 INFO    ] 2026-06-27 12:20:04
[2026-06-27 12:20:04,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:20:04,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:20:04,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:20:04,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:20:05,052.052 INFO    ] time= 27/06/2026 12:20:04
[2026-06-27 12:20:05,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:20:05,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:20:05,155.155 INFO    ] No existing commands found in stream
[2026-06-27 12:20:10,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:20:10,167.167 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-27 12:20:11,142.142 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:20:11,144.144 INFO    ] Checking for system updates...
[2026-06-27 12:20:11,165.165 INFO    ] 200
[2026-06-27 12:20:11,166.166 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:20:11,197.197 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:20:11,198.198 INFO    ] No update needed
[2026-06-27 12:20:11,199.199 INFO    ] Checking for camera pi updates...
[2026-06-27 12:20:11,220.220 INFO    ] 200
[2026-06-27 12:20:11,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:20:11,248.248 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:20:11,288.288 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:20:11,290.290 INFO    ] No camera update needed
[2026-06-27 12:20:11,291.291 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:20:11,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:20:11,295.295 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:20:11,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:20:13,338.338 INFO    ] ================================================
[2026-06-27 12:20:13,353.353 INFO    ] Launching Daemon at Sat Jun 27 12:20:13 IST 2026
[2026-06-27 12:20:13,363.363 INFO    ] ================================================
[2026-06-27 12:20:13,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:20:13
[2026-06-27 12:20:13,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:20:14,142.142 INFO    ] Initializing speech engine...
[2026-06-27 12:20:14,147.147 INFO    ] 2026-06-27 12:20:14
[2026-06-27 12:20:14,352.352 INFO    ] 2026-06-27 12:20:14
[2026-06-27 12:20:14,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:20:14,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:20:14,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:20:14,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:20:14,764.764 INFO    ] time= 27/06/2026 12:20:14
[2026-06-27 12:20:14,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:20:14,802.802 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:20:14,868.868 INFO    ] No existing commands found in stream
[2026-06-27 12:20:19,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:20:19,881.881 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-27 12:20:24,230.230 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 12:20:24,231.231 INFO    ] Checking for system updates...
[2026-06-27 12:20:24,252.252 INFO    ] 200
[2026-06-27 12:20:24,253.253 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:20:24,286.286 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:20:24,287.287 INFO    ] No update needed
[2026-06-27 12:20:24,288.288 INFO    ] Checking for camera pi updates...
[2026-06-27 12:20:24,308.308 INFO    ] 200
[2026-06-27 12:20:24,309.309 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:20:24,336.336 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:20:24,371.371 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:20:24,373.373 INFO    ] No camera update needed
[2026-06-27 12:20:24,374.374 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:20:24,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:20:24,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:20:24,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:20:26,423.423 INFO    ] ================================================
[2026-06-27 12:20:26,438.438 INFO    ] Launching Daemon at Sat Jun 27 12:20:26 IST 2026
[2026-06-27 12:20:26,449.449 INFO    ] ================================================
[2026-06-27 12:20:26,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:20:26
[2026-06-27 12:20:27,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:20:27,256.256 INFO    ] Initializing speech engine...
[2026-06-27 12:20:27,260.260 INFO    ] 2026-06-27 12:20:27
[2026-06-27 12:20:27,473.473 INFO    ] 2026-06-27 12:20:27
[2026-06-27 12:20:27,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:20:27,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:20:27,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:20:27,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:20:27,933.933 INFO    ] time= 27/06/2026 12:20:27
[2026-06-27 12:20:27,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:20:27,969.969 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:20:28,072.072 INFO    ] No existing commands found in stream
[2026-06-27 12:20:33,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:20:33,084.084 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-27 12:20:35,315.315 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:20:35,317.317 INFO    ] Checking for system updates...
[2026-06-27 12:20:35,338.338 INFO    ] 200
[2026-06-27 12:20:35,339.339 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:20:35,372.372 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:20:35,373.373 INFO    ] No update needed
[2026-06-27 12:20:35,375.375 INFO    ] Checking for camera pi updates...
[2026-06-27 12:20:35,394.394 INFO    ] 200
[2026-06-27 12:20:35,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:20:35,418.418 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:20:35,459.459 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:20:35,460.460 INFO    ] No camera update needed
[2026-06-27 12:20:35,461.461 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:20:35,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:20:35,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:20:35,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:20:37,507.507 INFO    ] ================================================
[2026-06-27 12:20:37,522.522 INFO    ] Launching Daemon at Sat Jun 27 12:20:37 IST 2026
[2026-06-27 12:20:37,533.533 INFO    ] ================================================
[2026-06-27 12:20:37,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:20:37
[2026-06-27 12:20:38,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:20:38,317.317 INFO    ] Initializing speech engine...
[2026-06-27 12:20:38,325.325 INFO    ] 2026-06-27 12:20:38
[2026-06-27 12:20:38,538.538 INFO    ] 2026-06-27 12:20:38
[2026-06-27 12:20:38,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:20:38,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:20:38,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:20:38,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:20:38,962.962 INFO    ] time= 27/06/2026 12:20:38
[2026-06-27 12:20:38,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:20:38,989.989 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:20:39,054.054 INFO    ] No existing commands found in stream
[2026-06-27 12:20:44,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:20:44,067.067 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-27 12:20:45,068.068 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:20:45,069.069 INFO    ] Checking for system updates...
[2026-06-27 12:20:45,090.090 INFO    ] 200
[2026-06-27 12:20:45,092.092 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:20:45,124.124 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:20:45,126.126 INFO    ] No update needed
[2026-06-27 12:20:45,127.127 INFO    ] Checking for camera pi updates...
[2026-06-27 12:20:45,150.150 INFO    ] 200
[2026-06-27 12:20:45,152.152 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:20:45,176.176 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:20:45,211.211 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:20:45,212.212 INFO    ] No camera update needed
[2026-06-27 12:20:45,213.213 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:20:45,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:20:45,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:20:45,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:20:47,261.261 INFO    ] ================================================
[2026-06-27 12:20:47,277.277 INFO    ] Launching Daemon at Sat Jun 27 12:20:47 IST 2026
[2026-06-27 12:20:47,289.289 INFO    ] ================================================
[2026-06-27 12:20:47,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:20:47
[2026-06-27 12:20:47,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:20:48,129.129 INFO    ] Initializing speech engine...
[2026-06-27 12:20:48,142.142 INFO    ] 2026-06-27 12:20:48
[2026-06-27 12:20:48,353.353 INFO    ] 2026-06-27 12:20:48
[2026-06-27 12:20:48,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:20:48,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:20:48,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:20:48,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:20:48,776.776 INFO    ] time= 27/06/2026 12:20:48
[2026-06-27 12:20:48,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:20:48,805.805 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:20:48,876.876 INFO    ] No existing commands found in stream
[2026-06-27 12:20:53,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:20:53,888.888 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-27 12:20:56,747.747 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:20:56,749.749 INFO    ] Checking for system updates...
[2026-06-27 12:20:56,771.771 INFO    ] 200
[2026-06-27 12:20:56,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:20:56,805.805 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:20:56,806.806 INFO    ] No update needed
[2026-06-27 12:20:56,808.808 INFO    ] Checking for camera pi updates...
[2026-06-27 12:20:56,827.827 INFO    ] 200
[2026-06-27 12:20:56,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:20:56,852.852 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:20:56,902.902 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:20:56,904.904 INFO    ] No camera update needed
[2026-06-27 12:20:56,906.906 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:20:56,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:20:56,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:20:56,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:20:58,954.954 INFO    ] ================================================
[2026-06-27 12:20:58,970.970 INFO    ] Launching Daemon at Sat Jun 27 12:20:58 IST 2026
[2026-06-27 12:20:58,981.981 INFO    ] ================================================
[2026-06-27 12:20:59,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:20:59
[2026-06-27 12:20:59,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:20:59,771.771 INFO    ] Initializing speech engine...
[2026-06-27 12:20:59,779.779 INFO    ] 2026-06-27 12:20:59
[2026-06-27 12:20:59,996.996 INFO    ] 2026-06-27 12:20:59
[2026-06-27 12:21:00,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:21:00,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:21:00,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:21:00,352.352 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:21:00,412.412 INFO    ] time= 27/06/2026 12:21:00
[2026-06-27 12:21:00,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:21:00,443.443 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:21:00,510.510 INFO    ] No existing commands found in stream
[2026-06-27 12:21:05,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:21:05,522.522 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-27 12:21:09,725.725 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 12:21:09,727.727 INFO    ] Checking for system updates...
[2026-06-27 12:21:09,754.754 INFO    ] 200
[2026-06-27 12:21:09,756.756 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:21:09,791.791 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:21:09,793.793 INFO    ] No update needed
[2026-06-27 12:21:09,795.795 INFO    ] Checking for camera pi updates...
[2026-06-27 12:21:09,817.817 INFO    ] 200
[2026-06-27 12:21:09,819.819 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:21:09,847.847 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:21:09,886.886 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:21:09,888.888 INFO    ] No camera update needed
[2026-06-27 12:21:09,890.890 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:21:09,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:21:09,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:21:09,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:21:11,931.931 INFO    ] ================================================
[2026-06-27 12:21:11,947.947 INFO    ] Launching Daemon at Sat Jun 27 12:21:11 IST 2026
[2026-06-27 12:21:11,958.958 INFO    ] ================================================
[2026-06-27 12:21:12,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:21:12
[2026-06-27 12:21:12,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:21:12,826.826 INFO    ] Initializing speech engine...
[2026-06-27 12:21:12,831.831 INFO    ] 2026-06-27 12:21:12
[2026-06-27 12:21:13,043.043 INFO    ] 2026-06-27 12:21:13
[2026-06-27 12:21:13,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:21:13,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:21:13,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:21:13,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:21:13,486.486 INFO    ] time= 27/06/2026 12:21:13
[2026-06-27 12:21:13,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:21:13,527.527 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:21:13,593.593 INFO    ] No existing commands found in stream
[2026-06-27 12:21:18,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:21:18,607.607 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-27 12:21:22,775.775 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 12:21:22,776.776 INFO    ] Checking for system updates...
[2026-06-27 12:21:22,797.797 INFO    ] 200
[2026-06-27 12:21:22,798.798 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:21:22,830.830 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:21:22,832.832 INFO    ] No update needed
[2026-06-27 12:21:22,833.833 INFO    ] Checking for camera pi updates...
[2026-06-27 12:21:22,853.853 INFO    ] 200
[2026-06-27 12:21:22,854.854 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:21:22,877.877 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:21:22,918.918 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:21:22,919.919 INFO    ] No camera update needed
[2026-06-27 12:21:22,921.921 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:21:22,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:21:22,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:21:22,928.928 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:21:24,966.966 INFO    ] ================================================
[2026-06-27 12:21:24,982.982 INFO    ] Launching Daemon at Sat Jun 27 12:21:24 IST 2026
[2026-06-27 12:21:24,993.993 INFO    ] ================================================
[2026-06-27 12:21:25,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:21:25
[2026-06-27 12:21:25,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:21:25,832.832 INFO    ] Initializing speech engine...
[2026-06-27 12:21:25,835.835 INFO    ] 2026-06-27 12:21:25
[2026-06-27 12:21:26,064.064 INFO    ] 2026-06-27 12:21:26
[2026-06-27 12:21:26,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:21:26,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:21:26,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:21:26,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:21:26,494.494 INFO    ] time= 27/06/2026 12:21:26
[2026-06-27 12:21:26,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:21:26,516.516 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:21:26,581.581 INFO    ] No existing commands found in stream
[2026-06-27 12:21:31,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:21:31,595.595 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-27 12:21:33,927.927 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 12:21:33,928.928 INFO    ] Checking for system updates...
[2026-06-27 12:21:33,949.949 INFO    ] 200
[2026-06-27 12:21:33,950.950 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:21:33,981.981 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:21:33,982.982 INFO    ] No update needed
[2026-06-27 12:21:33,984.984 INFO    ] Checking for camera pi updates...
[2026-06-27 12:21:34,003.003 INFO    ] 200
[2026-06-27 12:21:34,005.005 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:21:34,028.028 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:21:34,175.175 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:21:34,176.176 INFO    ] No camera update needed
[2026-06-27 12:21:34,178.178 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:21:34,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:21:34,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:21:34,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:21:36,225.225 INFO    ] ================================================
[2026-06-27 12:21:36,241.241 INFO    ] Launching Daemon at Sat Jun 27 12:21:36 IST 2026
[2026-06-27 12:21:36,252.252 INFO    ] ================================================
[2026-06-27 12:21:36,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:21:36
[2026-06-27 12:21:36,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:21:37,083.083 INFO    ] Initializing speech engine...
[2026-06-27 12:21:37,089.089 INFO    ] 2026-06-27 12:21:37
[2026-06-27 12:21:37,293.293 INFO    ] 2026-06-27 12:21:37
[2026-06-27 12:21:37,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:21:37,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:21:37,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:21:37,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:21:37,718.718 INFO    ] time= 27/06/2026 12:21:37
[2026-06-27 12:21:37,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:21:37,747.747 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:21:37,817.817 INFO    ] No existing commands found in stream
[2026-06-27 12:21:42,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:21:42,830.830 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-27 12:21:46,996.996 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 12:21:46,997.997 INFO    ] Checking for system updates...
[2026-06-27 12:21:47,020.020 INFO    ] 200
[2026-06-27 12:21:47,021.021 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:21:47,051.051 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:21:47,052.052 INFO    ] No update needed
[2026-06-27 12:21:47,053.053 INFO    ] Checking for camera pi updates...
[2026-06-27 12:21:47,073.073 INFO    ] 200
[2026-06-27 12:21:47,074.074 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:21:47,097.097 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:21:47,136.136 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:21:47,137.137 INFO    ] No camera update needed
[2026-06-27 12:21:47,138.138 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:21:47,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:21:47,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:21:47,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:21:49,186.186 INFO    ] ================================================
[2026-06-27 12:21:49,202.202 INFO    ] Launching Daemon at Sat Jun 27 12:21:49 IST 2026
[2026-06-27 12:21:49,212.212 INFO    ] ================================================
[2026-06-27 12:21:49,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:21:49
[2026-06-27 12:21:49,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:21:49,996.996 INFO    ] Initializing speech engine...
[2026-06-27 12:21:49,999.999 INFO    ] 2026-06-27 12:21:49
[2026-06-27 12:21:50,191.191 INFO    ] 2026-06-27 12:21:50
[2026-06-27 12:21:50,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:21:50,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:21:50,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:21:50,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:21:50,645.645 INFO    ] time= 27/06/2026 12:21:50
[2026-06-27 12:21:50,668.668 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:21:50,674.674 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:21:50,739.739 INFO    ] No existing commands found in stream
[2026-06-27 12:21:55,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:21:55,749.749 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-27 12:21:57,048.048 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 12:21:57,050.050 INFO    ] Checking for system updates...
[2026-06-27 12:21:57,071.071 INFO    ] 200
[2026-06-27 12:21:57,072.072 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:21:57,105.105 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:21:57,106.106 INFO    ] No update needed
[2026-06-27 12:21:57,108.108 INFO    ] Checking for camera pi updates...
[2026-06-27 12:21:57,130.130 INFO    ] 200
[2026-06-27 12:21:57,131.131 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:21:57,155.155 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:21:57,197.197 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:21:57,199.199 INFO    ] No camera update needed
[2026-06-27 12:21:57,200.200 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:21:57,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:21:57,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:21:57,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:21:59,249.249 INFO    ] ================================================
[2026-06-27 12:21:59,264.264 INFO    ] Launching Daemon at Sat Jun 27 12:21:59 IST 2026
[2026-06-27 12:21:59,275.275 INFO    ] ================================================
[2026-06-27 12:21:59,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:21:59
[2026-06-27 12:21:59,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:22:00,113.113 INFO    ] Initializing speech engine...
[2026-06-27 12:22:00,122.122 INFO    ] 2026-06-27 12:22:00
[2026-06-27 12:22:00,336.336 INFO    ] 2026-06-27 12:22:00
[2026-06-27 12:22:00,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:22:00,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:22:00,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:22:00,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:22:00,743.743 INFO    ] time= 27/06/2026 12:22:00
[2026-06-27 12:22:00,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:22:00,783.783 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:22:00,855.855 INFO    ] No existing commands found in stream
[2026-06-27 12:22:05,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:22:05,872.872 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-27 12:22:08,866.866 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 12:22:08,868.868 INFO    ] Checking for system updates...
[2026-06-27 12:22:08,906.906 INFO    ] 200
[2026-06-27 12:22:08,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:22:08,940.940 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:22:08,941.941 INFO    ] No update needed
[2026-06-27 12:22:08,942.942 INFO    ] Checking for camera pi updates...
[2026-06-27 12:22:08,965.965 INFO    ] 200
[2026-06-27 12:22:08,966.966 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:22:08,993.993 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:22:09,031.031 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:22:09,032.032 INFO    ] No camera update needed
[2026-06-27 12:22:09,034.034 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:22:09,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:22:09,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:22:09,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:22:11,080.080 INFO    ] ================================================
[2026-06-27 12:22:11,095.095 INFO    ] Launching Daemon at Sat Jun 27 12:22:11 IST 2026
[2026-06-27 12:22:11,106.106 INFO    ] ================================================
[2026-06-27 12:22:11,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:22:11
[2026-06-27 12:22:11,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:22:11,966.966 INFO    ] Initializing speech engine...
[2026-06-27 12:22:11,972.972 INFO    ] 2026-06-27 12:22:11
[2026-06-27 12:22:12,179.179 INFO    ] 2026-06-27 12:22:12
[2026-06-27 12:22:12,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:22:12,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:22:12,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:22:12,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:22:12,602.602 INFO    ] time= 27/06/2026 12:22:12
[2026-06-27 12:22:12,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:22:12,633.633 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:22:12,700.700 INFO    ] No existing commands found in stream
[2026-06-27 12:22:17,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:22:17,709.709 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-27 12:22:20,591.591 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 12:22:20,592.592 INFO    ] Checking for system updates...
[2026-06-27 12:22:20,614.614 INFO    ] 200
[2026-06-27 12:22:20,615.615 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:22:20,651.651 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:22:20,652.652 INFO    ] No update needed
[2026-06-27 12:22:20,654.654 INFO    ] Checking for camera pi updates...
[2026-06-27 12:22:20,677.677 INFO    ] 200
[2026-06-27 12:22:20,678.678 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:22:20,701.701 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:22:20,739.739 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:22:20,740.740 INFO    ] No camera update needed
[2026-06-27 12:22:20,742.742 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:22:20,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:22:20,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:22:20,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:22:22,789.789 INFO    ] ================================================
[2026-06-27 12:22:22,804.804 INFO    ] Launching Daemon at Sat Jun 27 12:22:22 IST 2026
[2026-06-27 12:22:22,815.815 INFO    ] ================================================
[2026-06-27 12:22:23,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:22:23
[2026-06-27 12:22:23,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:22:23,603.603 INFO    ] Initializing speech engine...
[2026-06-27 12:22:23,608.608 INFO    ] 2026-06-27 12:22:23
[2026-06-27 12:22:23,826.826 INFO    ] 2026-06-27 12:22:23
[2026-06-27 12:22:23,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:22:24,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:22:24,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:22:24,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:22:24,244.244 INFO    ] time= 27/06/2026 12:22:24
[2026-06-27 12:22:24,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:22:24,279.279 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:22:24,346.346 INFO    ] No existing commands found in stream
[2026-06-27 12:22:29,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:22:29,358.358 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-27 12:22:31,003.003 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 12:22:31,005.005 INFO    ] Checking for system updates...
[2026-06-27 12:22:31,026.026 INFO    ] 200
[2026-06-27 12:22:31,027.027 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:22:31,059.059 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:22:31,060.060 INFO    ] No update needed
[2026-06-27 12:22:31,062.062 INFO    ] Checking for camera pi updates...
[2026-06-27 12:22:31,082.082 INFO    ] 200
[2026-06-27 12:22:31,083.083 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:22:31,107.107 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:22:31,140.140 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:22:31,142.142 INFO    ] No camera update needed
[2026-06-27 12:22:31,143.143 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:22:31,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:22:31,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:22:31,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:22:33,174.174 INFO    ] ================================================
[2026-06-27 12:22:33,182.182 INFO    ] Launching Daemon at Sat Jun 27 12:22:33 IST 2026
[2026-06-27 12:22:33,188.188 INFO    ] ================================================
[2026-06-27 12:22:33,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:22:33
[2026-06-27 12:22:33,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:22:33,985.985 INFO    ] Initializing speech engine...
[2026-06-27 12:22:33,998.998 INFO    ] 2026-06-27 12:22:33
[2026-06-27 12:22:34,215.215 INFO    ] 2026-06-27 12:22:34
[2026-06-27 12:22:34,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:22:34,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:22:34,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:22:34,582.582 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:22:34,645.645 INFO    ] time= 27/06/2026 12:22:34
[2026-06-27 12:22:34,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:22:34,680.680 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:22:34,741.741 INFO    ] No existing commands found in stream
[2026-06-27 12:22:39,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:22:39,752.752 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-27 12:22:41,650.650 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:22:41,652.652 INFO    ] Checking for system updates...
[2026-06-27 12:22:41,673.673 INFO    ] 200
[2026-06-27 12:22:41,674.674 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:22:41,707.707 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:22:41,708.708 INFO    ] No update needed
[2026-06-27 12:22:41,709.709 INFO    ] Checking for camera pi updates...
[2026-06-27 12:22:41,728.728 INFO    ] 200
[2026-06-27 12:22:41,730.730 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:22:41,754.754 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:22:41,799.799 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:22:41,800.800 INFO    ] No camera update needed
[2026-06-27 12:22:41,802.802 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:22:41,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:22:41,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:22:41,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:22:43,849.849 INFO    ] ================================================
[2026-06-27 12:22:43,864.864 INFO    ] Launching Daemon at Sat Jun 27 12:22:43 IST 2026
[2026-06-27 12:22:43,875.875 INFO    ] ================================================
[2026-06-27 12:22:44,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:22:44
[2026-06-27 12:22:44,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:22:44,668.668 INFO    ] Initializing speech engine...
[2026-06-27 12:22:44,671.671 INFO    ] 2026-06-27 12:22:44
[2026-06-27 12:22:44,871.871 INFO    ] 2026-06-27 12:22:44
[2026-06-27 12:22:44,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:22:45,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:22:45,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:22:45,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:22:45,281.281 INFO    ] time= 27/06/2026 12:22:45
[2026-06-27 12:22:45,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:22:45,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:22:45,431.431 INFO    ] No existing commands found in stream
[2026-06-27 12:22:50,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:22:50,442.442 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-27 12:22:51,447.447 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 12:22:51,449.449 INFO    ] Checking for system updates...
[2026-06-27 12:22:51,470.470 INFO    ] 200
[2026-06-27 12:22:51,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:22:51,501.501 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:22:51,503.503 INFO    ] No update needed
[2026-06-27 12:22:51,504.504 INFO    ] Checking for camera pi updates...
[2026-06-27 12:22:51,525.525 INFO    ] 200
[2026-06-27 12:22:51,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:22:51,549.549 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:22:51,584.584 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:22:51,585.585 INFO    ] No camera update needed
[2026-06-27 12:22:51,587.587 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:22:51,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:22:51,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:22:51,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:22:53,634.634 INFO    ] ================================================
[2026-06-27 12:22:53,648.648 INFO    ] Launching Daemon at Sat Jun 27 12:22:53 IST 2026
[2026-06-27 12:22:53,659.659 INFO    ] ================================================
[2026-06-27 12:22:53,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:22:53
[2026-06-27 12:22:54,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:22:54,435.435 INFO    ] Initializing speech engine...
[2026-06-27 12:22:54,438.438 INFO    ] 2026-06-27 12:22:54
[2026-06-27 12:22:54,656.656 INFO    ] 2026-06-27 12:22:54
[2026-06-27 12:22:54,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:22:54,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:22:54,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:22:55,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:22:55,095.095 INFO    ] time= 27/06/2026 12:22:55
[2026-06-27 12:22:55,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:22:55,101.101 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:22:55,168.168 INFO    ] No existing commands found in stream
[2026-06-27 12:23:00,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:23:00,181.181 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-27 12:23:02,348.348 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 12:23:02,350.350 INFO    ] Checking for system updates...
[2026-06-27 12:23:02,377.377 INFO    ] 200
[2026-06-27 12:23:02,378.378 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:23:02,416.416 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:23:02,418.418 INFO    ] No update needed
[2026-06-27 12:23:02,420.420 INFO    ] Checking for camera pi updates...
[2026-06-27 12:23:02,447.447 INFO    ] 200
[2026-06-27 12:23:02,450.450 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:23:02,502.502 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:23:02,531.531 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:23:02,533.533 INFO    ] No camera update needed
[2026-06-27 12:23:02,535.535 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:23:02,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:23:02,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:23:02,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:23:04,585.585 INFO    ] ================================================
[2026-06-27 12:23:04,600.600 INFO    ] Launching Daemon at Sat Jun 27 12:23:04 IST 2026
[2026-06-27 12:23:04,611.611 INFO    ] ================================================
[2026-06-27 12:23:04,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:23:04
[2026-06-27 12:23:05,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:23:05,431.431 INFO    ] Initializing speech engine...
[2026-06-27 12:23:05,436.436 INFO    ] 2026-06-27 12:23:05
[2026-06-27 12:23:05,640.640 INFO    ] 2026-06-27 12:23:05
[2026-06-27 12:23:05,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:23:05,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:23:05,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:23:06,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:23:06,080.080 INFO    ] time= 27/06/2026 12:23:06
[2026-06-27 12:23:06,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:23:06,088.088 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:23:06,159.159 INFO    ] No existing commands found in stream
[2026-06-27 12:23:11,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:23:11,181.181 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-27 12:23:11,965.965 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:23:11,966.966 INFO    ] Checking for system updates...
[2026-06-27 12:23:11,987.987 INFO    ] 200
[2026-06-27 12:23:11,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:23:12,019.019 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:23:12,021.021 INFO    ] No update needed
[2026-06-27 12:23:12,022.022 INFO    ] Checking for camera pi updates...
[2026-06-27 12:23:12,041.041 INFO    ] 200
[2026-06-27 12:23:12,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:23:12,066.066 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:23:12,110.110 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:23:12,112.112 INFO    ] No camera update needed
[2026-06-27 12:23:12,117.117 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:23:12,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:23:12,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:23:12,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:23:14,165.165 INFO    ] ================================================
[2026-06-27 12:23:14,181.181 INFO    ] Launching Daemon at Sat Jun 27 12:23:14 IST 2026
[2026-06-27 12:23:14,191.191 INFO    ] ================================================
[2026-06-27 12:23:14,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:23:14
[2026-06-27 12:23:14,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:23:15,021.021 INFO    ] Initializing speech engine...
[2026-06-27 12:23:15,035.035 INFO    ] 2026-06-27 12:23:15
[2026-06-27 12:23:15,240.240 INFO    ] 2026-06-27 12:23:15
[2026-06-27 12:23:15,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:23:15,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:23:15,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:23:15,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:23:15,659.659 INFO    ] time= 27/06/2026 12:23:15
[2026-06-27 12:23:15,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:23:15,689.689 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:23:15,755.755 INFO    ] No existing commands found in stream
[2026-06-27 12:23:20,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:23:20,768.768 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-27 12:23:23,287.287 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 12:23:23,289.289 INFO    ] Checking for system updates...
[2026-06-27 12:23:23,309.309 INFO    ] 200
[2026-06-27 12:23:23,311.311 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:23:23,343.343 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:23:23,344.344 INFO    ] No update needed
[2026-06-27 12:23:23,346.346 INFO    ] Checking for camera pi updates...
[2026-06-27 12:23:23,365.365 INFO    ] 200
[2026-06-27 12:23:23,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:23:23,393.393 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:23:23,428.428 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:23:23,429.429 INFO    ] No camera update needed
[2026-06-27 12:23:23,430.430 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:23:23,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:23:23,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:23:23,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:23:25,475.475 INFO    ] ================================================
[2026-06-27 12:23:25,491.491 INFO    ] Launching Daemon at Sat Jun 27 12:23:25 IST 2026
[2026-06-27 12:23:25,501.501 INFO    ] ================================================
[2026-06-27 12:23:25,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:23:25
[2026-06-27 12:23:26,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:23:26,304.304 INFO    ] Initializing speech engine...
[2026-06-27 12:23:26,309.309 INFO    ] 2026-06-27 12:23:26
[2026-06-27 12:23:26,512.512 INFO    ] 2026-06-27 12:23:26
[2026-06-27 12:23:26,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:23:26,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:23:26,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:23:26,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:23:26,934.934 INFO    ] time= 27/06/2026 12:23:26
[2026-06-27 12:23:26,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:23:26,964.964 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:23:27,032.032 INFO    ] No existing commands found in stream
[2026-06-27 12:23:32,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:23:32,044.044 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-27 12:23:34,521.521 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:23:34,523.523 INFO    ] Checking for system updates...
[2026-06-27 12:23:34,546.546 INFO    ] 200
[2026-06-27 12:23:34,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-27 12:23:34,549.549 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-27 12:23:34,550.550 INFO    ] Checking for camera pi updates...
[2026-06-27 12:23:34,578.578 INFO    ] 200
[2026-06-27 12:23:34,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-27 12:23:34,580.580 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-27 12:23:34,582.582 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:23:34,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:23:34,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:23:34,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:23:36,614.614 INFO    ] ================================================
[2026-06-27 12:23:36,625.625 INFO    ] Launching Daemon at Sat Jun 27 12:23:36 IST 2026
[2026-06-27 12:23:36,637.637 INFO    ] ================================================
[2026-06-27 12:23:36,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:23:36
[2026-06-27 12:23:37,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:23:37,449.449 INFO    ] Initializing speech engine...
[2026-06-27 12:23:37,454.454 INFO    ] 2026-06-27 12:23:37
[2026-06-27 12:23:37,674.674 INFO    ] 2026-06-27 12:23:37
[2026-06-27 12:23:37,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:23:37,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:23:37,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:23:38,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:23:38,067.067 INFO    ] time= 27/06/2026 12:23:38
[2026-06-27 12:23:38,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:23:38,116.116 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:23:38,187.187 INFO    ] No existing commands found in stream
[2026-06-27 12:23:43,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:23:43,199.199 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-27 12:23:46,872.872 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:23:46,873.873 INFO    ] Checking for system updates...
[2026-06-27 12:23:46,895.895 INFO    ] 200
[2026-06-27 12:23:46,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:23:46,928.928 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:23:46,929.929 INFO    ] No update needed
[2026-06-27 12:23:46,930.930 INFO    ] Checking for camera pi updates...
[2026-06-27 12:23:46,950.950 INFO    ] 200
[2026-06-27 12:23:46,951.951 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:23:46,978.978 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:23:47,118.118 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:23:47,119.119 INFO    ] No camera update needed
[2026-06-27 12:23:47,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:23:47,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:23:47,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:23:47,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:23:49,167.167 INFO    ] ================================================
[2026-06-27 12:23:49,182.182 INFO    ] Launching Daemon at Sat Jun 27 12:23:49 IST 2026
[2026-06-27 12:23:49,193.193 INFO    ] ================================================
[2026-06-27 12:23:49,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:23:49
[2026-06-27 12:23:49,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:23:50,015.015 INFO    ] Initializing speech engine...
[2026-06-27 12:23:50,021.021 INFO    ] 2026-06-27 12:23:50
[2026-06-27 12:23:50,230.230 INFO    ] 2026-06-27 12:23:50
[2026-06-27 12:23:50,259.259 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:23:50,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:23:50,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:23:50,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:23:50,653.653 INFO    ] time= 27/06/2026 12:23:50
[2026-06-27 12:23:50,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:23:50,681.681 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:23:50,748.748 INFO    ] No existing commands found in stream
[2026-06-27 12:23:55,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:23:55,776.776 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-27 12:23:56,787.787 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 12:23:56,789.789 INFO    ] Checking for system updates...
[2026-06-27 12:23:56,813.813 INFO    ] 200
[2026-06-27 12:23:56,814.814 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:23:56,845.845 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:23:56,846.846 INFO    ] No update needed
[2026-06-27 12:23:56,848.848 INFO    ] Checking for camera pi updates...
[2026-06-27 12:23:56,868.868 INFO    ] 200
[2026-06-27 12:23:56,870.870 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:23:56,894.894 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:23:56,944.944 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:23:56,946.946 INFO    ] No camera update needed
[2026-06-27 12:23:56,947.947 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:23:56,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:23:56,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:23:56,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:23:59,994.994 INFO    ] ================================================
[2026-06-27 12:23:59,010.010 INFO    ] Launching Daemon at Sat Jun 27 12:23:59 IST 2026
[2026-06-27 12:23:59,021.021 INFO    ] ================================================
[2026-06-27 12:23:59,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:23:59
[2026-06-27 12:23:59,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:23:59,806.806 INFO    ] Initializing speech engine...
[2026-06-27 12:23:59,816.816 INFO    ] 2026-06-27 12:23:59
[2026-06-27 12:24:00,022.022 INFO    ] 2026-06-27 12:24:00
[2026-06-27 12:24:00,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:24:00,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:24:00,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:24:00,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:24:00,456.456 INFO    ] time= 27/06/2026 12:24:00
[2026-06-27 12:24:00,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:24:00,508.508 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:24:00,612.612 INFO    ] No existing commands found in stream
[2026-06-27 12:24:05,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:24:05,639.639 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-27 12:24:09,785.785 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 12:24:09,787.787 INFO    ] Checking for system updates...
[2026-06-27 12:24:09,807.807 INFO    ] 200
[2026-06-27 12:24:09,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:24:09,842.842 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:24:09,843.843 INFO    ] No update needed
[2026-06-27 12:24:09,845.845 INFO    ] Checking for camera pi updates...
[2026-06-27 12:24:09,864.864 INFO    ] 200
[2026-06-27 12:24:09,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:24:09,889.889 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:24:09,931.931 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:24:09,932.932 INFO    ] No camera update needed
[2026-06-27 12:24:09,934.934 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:24:09,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:24:09,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:24:09,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:24:11,980.980 INFO    ] ================================================
[2026-06-27 12:24:12,996.996 INFO    ] Launching Daemon at Sat Jun 27 12:24:11 IST 2026
[2026-06-27 12:24:12,007.007 INFO    ] ================================================
[2026-06-27 12:24:12,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:24:12
[2026-06-27 12:24:12,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:24:12,802.802 INFO    ] Initializing speech engine...
[2026-06-27 12:24:12,805.805 INFO    ] 2026-06-27 12:24:12
[2026-06-27 12:24:13,016.016 INFO    ] 2026-06-27 12:24:12
[2026-06-27 12:24:13,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:24:13,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:24:13,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:24:13,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:24:13,468.468 INFO    ] time= 27/06/2026 12:24:13
[2026-06-27 12:24:13,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:24:13,530.530 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:24:13,602.602 INFO    ] No existing commands found in stream
[2026-06-27 12:24:18,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:24:18,616.616 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-27 12:24:21,928.928 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 12:24:21,929.929 INFO    ] Checking for system updates...
[2026-06-27 12:24:21,949.949 INFO    ] 200
[2026-06-27 12:24:21,951.951 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:24:21,981.981 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:24:21,982.982 INFO    ] No update needed
[2026-06-27 12:24:21,984.984 INFO    ] Checking for camera pi updates...
[2026-06-27 12:24:22,004.004 INFO    ] 200
[2026-06-27 12:24:22,006.006 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:24:22,029.029 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:24:22,070.070 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:24:22,071.071 INFO    ] No camera update needed
[2026-06-27 12:24:22,072.072 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:24:22,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:24:22,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:24:22,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:24:24,117.117 INFO    ] ================================================
[2026-06-27 12:24:24,133.133 INFO    ] Launching Daemon at Sat Jun 27 12:24:24 IST 2026
[2026-06-27 12:24:24,144.144 INFO    ] ================================================
[2026-06-27 12:24:24,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:24:24
[2026-06-27 12:24:24,804.804 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:24:24,957.957 INFO    ] Initializing speech engine...
[2026-06-27 12:24:24,962.962 INFO    ] 2026-06-27 12:24:24
[2026-06-27 12:24:25,160.160 INFO    ] 2026-06-27 12:24:25
[2026-06-27 12:24:25,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:24:25,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:24:25,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:24:25,585.585 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:24:25,653.653 INFO    ] time= 27/06/2026 12:24:25
[2026-06-27 12:24:25,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:24:25,687.687 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:24:25,756.756 INFO    ] No existing commands found in stream
[2026-06-27 12:24:30,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:24:30,768.768 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-27 12:24:33,039.039 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:24:33,041.041 INFO    ] Checking for system updates...
[2026-06-27 12:24:33,061.061 INFO    ] 200
[2026-06-27 12:24:33,063.063 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:24:33,093.093 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:24:33,095.095 INFO    ] No update needed
[2026-06-27 12:24:33,096.096 INFO    ] Checking for camera pi updates...
[2026-06-27 12:24:33,117.117 INFO    ] 200
[2026-06-27 12:24:33,118.118 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:24:33,142.142 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:24:33,180.180 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:24:33,181.181 INFO    ] No camera update needed
[2026-06-27 12:24:33,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:24:33,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:24:33,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:24:33,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:24:35,231.231 INFO    ] ================================================
[2026-06-27 12:24:35,246.246 INFO    ] Launching Daemon at Sat Jun 27 12:24:35 IST 2026
[2026-06-27 12:24:35,258.258 INFO    ] ================================================
[2026-06-27 12:24:35,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:24:35
[2026-06-27 12:24:35,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:24:36,062.062 INFO    ] Initializing speech engine...
[2026-06-27 12:24:36,070.070 INFO    ] 2026-06-27 12:24:36
[2026-06-27 12:24:36,286.286 INFO    ] 2026-06-27 12:24:36
[2026-06-27 12:24:36,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:24:36,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:24:36,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:24:36,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:24:36,801.801 INFO    ] time= 27/06/2026 12:24:36
[2026-06-27 12:24:36,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:24:36,828.828 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:24:36,926.926 INFO    ] No existing commands found in stream
[2026-06-27 12:24:41,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:24:41,939.939 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-27 12:24:44,431.431 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:24:44,433.433 INFO    ] Checking for system updates...
[2026-06-27 12:24:44,454.454 INFO    ] 200
[2026-06-27 12:24:44,455.455 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:24:44,488.488 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:24:44,489.489 INFO    ] No update needed
[2026-06-27 12:24:44,490.490 INFO    ] Checking for camera pi updates...
[2026-06-27 12:24:44,510.510 INFO    ] 200
[2026-06-27 12:24:44,511.511 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:24:44,536.536 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:24:44,580.580 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:24:44,581.581 INFO    ] No camera update needed
[2026-06-27 12:24:44,583.583 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:24:44,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:24:44,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:24:44,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:24:46,630.630 INFO    ] ================================================
[2026-06-27 12:24:46,646.646 INFO    ] Launching Daemon at Sat Jun 27 12:24:46 IST 2026
[2026-06-27 12:24:46,656.656 INFO    ] ================================================
[2026-06-27 12:24:46,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:24:46
[2026-06-27 12:24:47,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:24:47,445.445 INFO    ] Initializing speech engine...
[2026-06-27 12:24:47,450.450 INFO    ] 2026-06-27 12:24:47
[2026-06-27 12:24:47,654.654 INFO    ] 2026-06-27 12:24:47
[2026-06-27 12:24:47,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:24:47,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:24:47,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:24:48,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:24:48,071.071 INFO    ] time= 27/06/2026 12:24:48
[2026-06-27 12:24:48,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:24:48,100.100 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:24:48,167.167 INFO    ] No existing commands found in stream
[2026-06-27 12:24:53,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:24:53,179.179 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-27 12:24:55,686.686 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:24:55,688.688 INFO    ] Checking for system updates...
[2026-06-27 12:24:55,709.709 INFO    ] 200
[2026-06-27 12:24:55,710.710 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:24:55,741.741 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:24:55,742.742 INFO    ] No update needed
[2026-06-27 12:24:55,744.744 INFO    ] Checking for camera pi updates...
[2026-06-27 12:24:55,764.764 INFO    ] 200
[2026-06-27 12:24:55,765.765 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:24:55,789.789 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:24:55,815.815 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:24:55,816.816 INFO    ] No camera update needed
[2026-06-27 12:24:55,817.817 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:24:55,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:24:55,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:24:55,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:24:57,869.869 INFO    ] ================================================
[2026-06-27 12:24:57,885.885 INFO    ] Launching Daemon at Sat Jun 27 12:24:57 IST 2026
[2026-06-27 12:24:57,895.895 INFO    ] ================================================
[2026-06-27 12:24:58,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:24:58
[2026-06-27 12:24:58,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:24:58,717.717 INFO    ] Initializing speech engine...
[2026-06-27 12:24:58,725.725 INFO    ] 2026-06-27 12:24:58
[2026-06-27 12:24:58,932.932 INFO    ] 2026-06-27 12:24:58
[2026-06-27 12:24:58,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:24:59,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:24:59,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:24:59,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:24:59,371.371 INFO    ] time= 27/06/2026 12:24:59
[2026-06-27 12:24:59,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:24:59,382.382 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:24:59,449.449 INFO    ] No existing commands found in stream
[2026-06-27 12:25:04,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:25:04,466.466 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-27 12:25:08,444.444 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 12:25:08,446.446 INFO    ] Checking for system updates...
[2026-06-27 12:25:08,468.468 INFO    ] 200
[2026-06-27 12:25:08,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:25:08,502.502 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:25:08,504.504 INFO    ] No update needed
[2026-06-27 12:25:08,505.505 INFO    ] Checking for camera pi updates...
[2026-06-27 12:25:08,524.524 INFO    ] 200
[2026-06-27 12:25:08,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:25:08,553.553 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:25:08,599.599 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:25:08,601.601 INFO    ] No camera update needed
[2026-06-27 12:25:08,602.602 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:25:08,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:25:08,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:25:08,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:25:10,648.648 INFO    ] ================================================
[2026-06-27 12:25:10,664.664 INFO    ] Launching Daemon at Sat Jun 27 12:25:10 IST 2026
[2026-06-27 12:25:10,675.675 INFO    ] ================================================
[2026-06-27 12:25:11,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:25:11
[2026-06-27 12:25:11,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:25:11,498.498 INFO    ] Initializing speech engine...
[2026-06-27 12:25:11,503.503 INFO    ] 2026-06-27 12:25:11
[2026-06-27 12:25:11,709.709 INFO    ] 2026-06-27 12:25:11
[2026-06-27 12:25:11,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:25:11,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:25:11,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:25:12,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:25:12,147.147 INFO    ] time= 27/06/2026 12:25:12
[2026-06-27 12:25:12,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:25:12,158.158 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:25:12,225.225 INFO    ] No existing commands found in stream
[2026-06-27 12:25:17,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:25:17,238.238 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-27 12:25:19,333.333 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 12:25:19,334.334 INFO    ] Checking for system updates...
[2026-06-27 12:25:19,355.355 INFO    ] 200
[2026-06-27 12:25:19,356.356 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:25:19,386.386 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:25:19,388.388 INFO    ] No update needed
[2026-06-27 12:25:19,389.389 INFO    ] Checking for camera pi updates...
[2026-06-27 12:25:19,408.408 INFO    ] 200
[2026-06-27 12:25:19,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:25:19,433.433 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:25:19,467.467 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:25:19,468.468 INFO    ] No camera update needed
[2026-06-27 12:25:19,470.470 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:25:19,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:25:19,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:25:19,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:25:21,516.516 INFO    ] ================================================
[2026-06-27 12:25:21,531.531 INFO    ] Launching Daemon at Sat Jun 27 12:25:21 IST 2026
[2026-06-27 12:25:21,542.542 INFO    ] ================================================
[2026-06-27 12:25:21,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:25:21
[2026-06-27 12:25:22,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:25:22,331.331 INFO    ] Initializing speech engine...
[2026-06-27 12:25:22,341.341 INFO    ] 2026-06-27 12:25:22
[2026-06-27 12:25:22,547.547 INFO    ] 2026-06-27 12:25:22
[2026-06-27 12:25:22,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:25:22,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:25:22,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:25:22,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:25:22,978.978 INFO    ] time= 27/06/2026 12:25:22
[2026-06-27 12:25:22,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:25:23,005.005 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:25:23,072.072 INFO    ] No existing commands found in stream
[2026-06-27 12:25:28,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:25:28,085.085 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-27 12:25:31,841.841 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 12:25:31,843.843 INFO    ] Checking for system updates...
[2026-06-27 12:25:31,865.865 INFO    ] 200
[2026-06-27 12:25:31,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:25:31,905.905 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:25:31,906.906 INFO    ] No update needed
[2026-06-27 12:25:31,908.908 INFO    ] Checking for camera pi updates...
[2026-06-27 12:25:31,932.932 INFO    ] 200
[2026-06-27 12:25:31,934.934 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:25:31,966.966 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:25:31,991.991 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:25:31,993.993 INFO    ] No camera update needed
[2026-06-27 12:25:31,995.995 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:25:31,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:25:32,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:25:32,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:25:34,035.035 INFO    ] ================================================
[2026-06-27 12:25:34,050.050 INFO    ] Launching Daemon at Sat Jun 27 12:25:34 IST 2026
[2026-06-27 12:25:34,061.061 INFO    ] ================================================
[2026-06-27 12:25:34,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:25:34
[2026-06-27 12:25:34,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:25:34,853.853 INFO    ] Initializing speech engine...
[2026-06-27 12:25:34,863.863 INFO    ] 2026-06-27 12:25:34
[2026-06-27 12:25:35,066.066 INFO    ] 2026-06-27 12:25:35
[2026-06-27 12:25:35,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:25:35,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:25:35,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:25:35,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:25:35,497.497 INFO    ] time= 27/06/2026 12:25:35
[2026-06-27 12:25:35,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:25:35,514.514 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:25:35,581.581 INFO    ] No existing commands found in stream
[2026-06-27 12:25:40,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:25:40,598.598 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-27 12:25:41,784.784 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 12:25:41,785.785 INFO    ] Checking for system updates...
[2026-06-27 12:25:41,807.807 INFO    ] 200
[2026-06-27 12:25:41,808.808 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:25:41,839.839 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:25:41,840.840 INFO    ] No update needed
[2026-06-27 12:25:41,841.841 INFO    ] Checking for camera pi updates...
[2026-06-27 12:25:41,862.862 INFO    ] 200
[2026-06-27 12:25:41,863.863 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:25:41,886.886 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:25:41,923.923 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:25:41,924.924 INFO    ] No camera update needed
[2026-06-27 12:25:41,926.926 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:25:41,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:25:41,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:25:41,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:25:43,971.971 INFO    ] ================================================
[2026-06-27 12:25:43,987.987 INFO    ] Launching Daemon at Sat Jun 27 12:25:43 IST 2026
[2026-06-27 12:25:44,997.997 INFO    ] ================================================
[2026-06-27 12:25:44,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:25:44
[2026-06-27 12:25:44,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:25:44,776.776 INFO    ] Initializing speech engine...
[2026-06-27 12:25:44,780.780 INFO    ] 2026-06-27 12:25:44
[2026-06-27 12:25:44,986.986 INFO    ] 2026-06-27 12:25:44
[2026-06-27 12:25:45,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:25:45,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:25:45,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:25:45,391.391 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:25:45,426.426 INFO    ] time= 27/06/2026 12:25:45
[2026-06-27 12:25:45,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:25:45,443.443 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:25:45,509.509 INFO    ] No existing commands found in stream
[2026-06-27 12:25:50,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:25:50,522.522 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-27 12:25:51,393.393 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 12:25:51,395.395 INFO    ] Checking for system updates...
[2026-06-27 12:25:51,415.415 INFO    ] 200
[2026-06-27 12:25:51,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:25:51,447.447 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:25:51,448.448 INFO    ] No update needed
[2026-06-27 12:25:51,449.449 INFO    ] Checking for camera pi updates...
[2026-06-27 12:25:51,468.468 INFO    ] 200
[2026-06-27 12:25:51,470.470 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:25:51,493.493 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:25:51,633.633 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:25:51,634.634 INFO    ] No camera update needed
[2026-06-27 12:25:51,636.636 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:25:51,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:25:51,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:25:51,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:25:53,681.681 INFO    ] ================================================
[2026-06-27 12:25:53,697.697 INFO    ] Launching Daemon at Sat Jun 27 12:25:53 IST 2026
[2026-06-27 12:25:53,707.707 INFO    ] ================================================
[2026-06-27 12:25:54,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:25:54
[2026-06-27 12:25:54,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:25:54,594.594 INFO    ] Initializing speech engine...
[2026-06-27 12:25:54,598.598 INFO    ] 2026-06-27 12:25:54
[2026-06-27 12:25:54,806.806 INFO    ] 2026-06-27 12:25:54
[2026-06-27 12:25:54,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:25:55,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:25:55,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:25:55,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:25:55,223.223 INFO    ] time= 27/06/2026 12:25:55
[2026-06-27 12:25:55,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:25:55,252.252 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:25:55,317.317 INFO    ] No existing commands found in stream
[2026-06-27 12:26:00,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:26:00,330.330 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-27 12:26:03,566.566 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 12:26:03,567.567 INFO    ] Checking for system updates...
[2026-06-27 12:26:03,588.588 INFO    ] 200
[2026-06-27 12:26:03,589.589 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:26:03,622.622 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:26:03,623.623 INFO    ] No update needed
[2026-06-27 12:26:03,625.625 INFO    ] Checking for camera pi updates...
[2026-06-27 12:26:03,645.645 INFO    ] 200
[2026-06-27 12:26:03,647.647 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:26:03,670.670 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:26:03,707.707 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:26:03,708.708 INFO    ] No camera update needed
[2026-06-27 12:26:03,709.709 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:26:03,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:26:03,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:26:03,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:26:05,756.756 INFO    ] ================================================
[2026-06-27 12:26:05,770.770 INFO    ] Launching Daemon at Sat Jun 27 12:26:05 IST 2026
[2026-06-27 12:26:05,781.781 INFO    ] ================================================
[2026-06-27 12:26:06,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:26:06
[2026-06-27 12:26:06,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:26:06,592.592 INFO    ] Initializing speech engine...
[2026-06-27 12:26:06,601.601 INFO    ] 2026-06-27 12:26:06
[2026-06-27 12:26:06,825.825 INFO    ] 2026-06-27 12:26:06
[2026-06-27 12:26:06,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:26:07,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:26:07,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:26:07,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:26:07,260.260 INFO    ] time= 27/06/2026 12:26:07
[2026-06-27 12:26:07,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:26:07,299.299 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:26:07,374.374 INFO    ] No existing commands found in stream
[2026-06-27 12:26:12,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:26:12,387.387 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-27 12:26:13,851.851 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 12:26:13,852.852 INFO    ] Checking for system updates...
[2026-06-27 12:26:13,873.873 INFO    ] 200
[2026-06-27 12:26:13,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:26:13,905.905 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:26:13,906.906 INFO    ] No update needed
[2026-06-27 12:26:13,907.907 INFO    ] Checking for camera pi updates...
[2026-06-27 12:26:13,927.927 INFO    ] 200
[2026-06-27 12:26:13,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:26:13,951.951 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:26:13,992.992 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:26:13,993.993 INFO    ] No camera update needed
[2026-06-27 12:26:13,994.994 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:26:13,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:26:13,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:26:14,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:26:16,040.040 INFO    ] ================================================
[2026-06-27 12:26:16,055.055 INFO    ] Launching Daemon at Sat Jun 27 12:26:16 IST 2026
[2026-06-27 12:26:16,065.065 INFO    ] ================================================
[2026-06-27 12:26:16,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:26:16
[2026-06-27 12:26:16,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:26:16,891.891 INFO    ] Initializing speech engine...
[2026-06-27 12:26:16,901.901 INFO    ] 2026-06-27 12:26:16
[2026-06-27 12:26:17,106.106 INFO    ] 2026-06-27 12:26:17
[2026-06-27 12:26:17,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:26:17,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:26:17,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:26:17,460.460 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:26:17,527.527 INFO    ] time= 27/06/2026 12:26:17
[2026-06-27 12:26:17,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:26:17,557.557 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:26:17,625.625 INFO    ] No existing commands found in stream
[2026-06-27 12:26:22,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:26:22,637.637 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-27 12:26:26,659.659 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 12:26:26,661.661 INFO    ] Checking for system updates...
[2026-06-27 12:26:26,684.684 INFO    ] 200
[2026-06-27 12:26:26,686.686 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:26:26,716.716 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:26:26,718.718 INFO    ] No update needed
[2026-06-27 12:26:26,719.719 INFO    ] Checking for camera pi updates...
[2026-06-27 12:26:26,740.740 INFO    ] 200
[2026-06-27 12:26:26,741.741 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:26:26,764.764 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:26:26,801.801 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:26:26,802.802 INFO    ] No camera update needed
[2026-06-27 12:26:26,803.803 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:26:26,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:26:26,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:26:26,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:26:28,853.853 INFO    ] ================================================
[2026-06-27 12:26:28,868.868 INFO    ] Launching Daemon at Sat Jun 27 12:26:28 IST 2026
[2026-06-27 12:26:28,880.880 INFO    ] ================================================
[2026-06-27 12:26:29,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:26:29
[2026-06-27 12:26:29,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:26:29,686.686 INFO    ] Initializing speech engine...
[2026-06-27 12:26:29,696.696 INFO    ] 2026-06-27 12:26:29
[2026-06-27 12:26:29,899.899 INFO    ] 2026-06-27 12:26:29
[2026-06-27 12:26:29,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:26:30,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:26:30,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:26:30,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:26:30,342.342 INFO    ] time= 27/06/2026 12:26:30
[2026-06-27 12:26:30,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:26:30,349.349 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:26:30,416.416 INFO    ] No existing commands found in stream
[2026-06-27 12:26:35,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:26:35,428.428 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-27 12:26:38,871.871 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 12:26:38,873.873 INFO    ] Checking for system updates...
[2026-06-27 12:26:38,895.895 INFO    ] 200
[2026-06-27 12:26:38,897.897 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:26:38,929.929 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:26:38,931.931 INFO    ] No update needed
[2026-06-27 12:26:38,932.932 INFO    ] Checking for camera pi updates...
[2026-06-27 12:26:38,952.952 INFO    ] 200
[2026-06-27 12:26:38,953.953 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:26:38,978.978 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:26:39,017.017 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:26:39,019.019 INFO    ] No camera update needed
[2026-06-27 12:26:39,020.020 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:26:39,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:26:39,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:26:39,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:26:41,066.066 INFO    ] ================================================
[2026-06-27 12:26:41,080.080 INFO    ] Launching Daemon at Sat Jun 27 12:26:41 IST 2026
[2026-06-27 12:26:41,091.091 INFO    ] ================================================
[2026-06-27 12:26:41,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:26:41
[2026-06-27 12:26:41,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:26:41,951.951 INFO    ] Initializing speech engine...
[2026-06-27 12:26:41,957.957 INFO    ] 2026-06-27 12:26:41
[2026-06-27 12:26:42,166.166 INFO    ] 2026-06-27 12:26:42
[2026-06-27 12:26:42,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:26:42,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:26:42,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:26:42,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:26:42,592.592 INFO    ] time= 27/06/2026 12:26:42
[2026-06-27 12:26:42,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:26:42,622.622 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:26:42,690.690 INFO    ] No existing commands found in stream
[2026-06-27 12:26:47,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:26:47,702.702 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-27 12:26:49,188.188 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 12:26:49,190.190 INFO    ] Checking for system updates...
[2026-06-27 12:26:49,211.211 INFO    ] 200
[2026-06-27 12:26:49,212.212 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:26:49,245.245 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:26:49,246.246 INFO    ] No update needed
[2026-06-27 12:26:49,248.248 INFO    ] Checking for camera pi updates...
[2026-06-27 12:26:49,267.267 INFO    ] 200
[2026-06-27 12:26:49,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:26:49,292.292 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:26:49,326.326 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:26:49,328.328 INFO    ] No camera update needed
[2026-06-27 12:26:49,329.329 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:26:49,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:26:49,334.334 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:26:49,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:26:51,376.376 INFO    ] ================================================
[2026-06-27 12:26:51,391.391 INFO    ] Launching Daemon at Sat Jun 27 12:26:51 IST 2026
[2026-06-27 12:26:51,402.402 INFO    ] ================================================
[2026-06-27 12:26:51,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:26:51
[2026-06-27 12:26:52,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:26:52,273.273 INFO    ] Initializing speech engine...
[2026-06-27 12:26:52,278.278 INFO    ] 2026-06-27 12:26:52
[2026-06-27 12:26:52,489.489 INFO    ] 2026-06-27 12:26:52
[2026-06-27 12:26:52,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:26:52,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:26:52,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:26:52,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:26:52,937.937 INFO    ] time= 27/06/2026 12:26:52
[2026-06-27 12:26:52,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:26:52,945.945 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:26:53,038.038 INFO    ] No existing commands found in stream
[2026-06-27 12:26:58,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:26:58,056.056 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-27 12:27:00,256.256 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:27:00,258.258 INFO    ] Checking for system updates...
[2026-06-27 12:27:00,279.279 INFO    ] 200
[2026-06-27 12:27:00,280.280 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:27:00,312.312 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:27:00,314.314 INFO    ] No update needed
[2026-06-27 12:27:00,315.315 INFO    ] Checking for camera pi updates...
[2026-06-27 12:27:00,335.335 INFO    ] 200
[2026-06-27 12:27:00,336.336 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:27:00,361.361 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:27:00,397.397 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:27:00,398.398 INFO    ] No camera update needed
[2026-06-27 12:27:00,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:27:00,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:27:00,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:27:00,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:27:02,441.441 INFO    ] ================================================
[2026-06-27 12:27:02,453.453 INFO    ] Launching Daemon at Sat Jun 27 12:27:02 IST 2026
[2026-06-27 12:27:02,461.461 INFO    ] ================================================
[2026-06-27 12:27:02,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:27:02
[2026-06-27 12:27:03,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:27:03,315.315 INFO    ] Initializing speech engine...
[2026-06-27 12:27:03,320.320 INFO    ] 2026-06-27 12:27:03
[2026-06-27 12:27:03,526.526 INFO    ] 2026-06-27 12:27:03
[2026-06-27 12:27:03,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:27:03,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:27:03,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:27:03,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:27:03,951.951 INFO    ] time= 27/06/2026 12:27:03
[2026-06-27 12:27:03,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:27:03,981.981 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:27:04,049.049 INFO    ] No existing commands found in stream
[2026-06-27 12:27:09,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:27:09,060.060 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-27 12:27:13,074.074 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:27:13,075.075 INFO    ] Checking for system updates...
[2026-06-27 12:27:13,097.097 INFO    ] 200
[2026-06-27 12:27:13,099.099 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:27:13,132.132 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:27:13,134.134 INFO    ] No update needed
[2026-06-27 12:27:13,135.135 INFO    ] Checking for camera pi updates...
[2026-06-27 12:27:13,155.155 INFO    ] 200
[2026-06-27 12:27:13,156.156 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:27:13,182.182 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:27:13,220.220 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:27:13,221.221 INFO    ] No camera update needed
[2026-06-27 12:27:13,223.223 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:27:13,224.224 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:27:13,227.227 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:27:13,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:27:15,268.268 INFO    ] ================================================
[2026-06-27 12:27:15,284.284 INFO    ] Launching Daemon at Sat Jun 27 12:27:15 IST 2026
[2026-06-27 12:27:15,295.295 INFO    ] ================================================
[2026-06-27 12:27:15,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:27:15
[2026-06-27 12:27:15,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:27:16,104.104 INFO    ] Initializing speech engine...
[2026-06-27 12:27:16,114.114 INFO    ] 2026-06-27 12:27:16
[2026-06-27 12:27:16,319.319 INFO    ] 2026-06-27 12:27:16
[2026-06-27 12:27:16,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:27:16,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:27:16,540.540 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:27:16,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:27:16,732.732 INFO    ] time= 27/06/2026 12:27:16
[2026-06-27 12:27:16,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:27:16,784.784 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:27:16,859.859 INFO    ] No existing commands found in stream
[2026-06-27 12:27:21,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:27:21,873.873 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-27 12:27:23,625.625 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 12:27:23,627.627 INFO    ] Checking for system updates...
[2026-06-27 12:27:23,648.648 INFO    ] 200
[2026-06-27 12:27:23,650.650 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:27:23,683.683 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:27:23,684.684 INFO    ] No update needed
[2026-06-27 12:27:23,686.686 INFO    ] Checking for camera pi updates...
[2026-06-27 12:27:23,708.708 INFO    ] 200
[2026-06-27 12:27:23,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:27:23,734.734 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:27:23,773.773 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:27:23,775.775 INFO    ] No camera update needed
[2026-06-27 12:27:23,776.776 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:27:23,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:27:23,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:27:23,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:27:25,824.824 INFO    ] ================================================
[2026-06-27 12:27:25,840.840 INFO    ] Launching Daemon at Sat Jun 27 12:27:25 IST 2026
[2026-06-27 12:27:25,851.851 INFO    ] ================================================
[2026-06-27 12:27:26,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:27:26
[2026-06-27 12:27:26,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:27:26,722.722 INFO    ] Initializing speech engine...
[2026-06-27 12:27:26,728.728 INFO    ] 2026-06-27 12:27:26
[2026-06-27 12:27:26,937.937 INFO    ] 2026-06-27 12:27:26
[2026-06-27 12:27:26,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:27:27,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:27:27,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:27:27,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:27:27,378.378 INFO    ] time= 27/06/2026 12:27:27
[2026-06-27 12:27:27,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:27:27,396.396 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:27:27,464.464 INFO    ] No existing commands found in stream
[2026-06-27 12:27:32,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:27:32,474.474 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-27 12:27:33,969.969 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 12:27:33,971.971 INFO    ] Checking for system updates...
[2026-06-27 12:27:33,993.993 INFO    ] 200
[2026-06-27 12:27:33,995.995 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:27:34,027.027 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:27:34,029.029 INFO    ] No update needed
[2026-06-27 12:27:34,030.030 INFO    ] Checking for camera pi updates...
[2026-06-27 12:27:34,054.054 INFO    ] 200
[2026-06-27 12:27:34,055.055 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:27:34,081.081 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:27:34,122.122 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:27:34,123.123 INFO    ] No camera update needed
[2026-06-27 12:27:34,125.125 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:27:34,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:27:34,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:27:34,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:27:36,173.173 INFO    ] ================================================
[2026-06-27 12:27:36,188.188 INFO    ] Launching Daemon at Sat Jun 27 12:27:36 IST 2026
[2026-06-27 12:27:36,199.199 INFO    ] ================================================
[2026-06-27 12:27:36,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:27:36
[2026-06-27 12:27:36,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:27:36,975.975 INFO    ] Initializing speech engine...
[2026-06-27 12:27:36,985.985 INFO    ] 2026-06-27 12:27:36
[2026-06-27 12:27:37,193.193 INFO    ] 2026-06-27 12:27:37
[2026-06-27 12:27:37,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:27:37,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:27:37,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:27:37,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:27:37,664.664 INFO    ] time= 27/06/2026 12:27:37
[2026-06-27 12:27:37,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:27:37,674.674 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:27:37,791.791 INFO    ] No existing commands found in stream
[2026-06-27 12:27:42,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:27:42,804.804 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-27 12:27:45,137.137 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:27:45,138.138 INFO    ] Checking for system updates...
[2026-06-27 12:27:45,159.159 INFO    ] 200
[2026-06-27 12:27:45,160.160 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:27:45,192.192 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:27:45,194.194 INFO    ] No update needed
[2026-06-27 12:27:45,195.195 INFO    ] Checking for camera pi updates...
[2026-06-27 12:27:45,215.215 INFO    ] 200
[2026-06-27 12:27:45,216.216 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:27:45,240.240 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:27:45,280.280 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:27:45,282.282 INFO    ] No camera update needed
[2026-06-27 12:27:45,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:27:45,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:27:45,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:27:45,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:27:47,329.329 INFO    ] ================================================
[2026-06-27 12:27:47,344.344 INFO    ] Launching Daemon at Sat Jun 27 12:27:47 IST 2026
[2026-06-27 12:27:47,354.354 INFO    ] ================================================
[2026-06-27 12:27:47,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:27:47
[2026-06-27 12:27:48,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:27:48,190.190 INFO    ] Initializing speech engine...
[2026-06-27 12:27:48,202.202 INFO    ] 2026-06-27 12:27:48
[2026-06-27 12:27:48,407.407 INFO    ] 2026-06-27 12:27:48
[2026-06-27 12:27:48,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:27:48,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:27:48,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:27:48,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:27:48,853.853 INFO    ] time= 27/06/2026 12:27:48
[2026-06-27 12:27:48,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:27:48,860.860 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:27:48,928.928 INFO    ] No existing commands found in stream
[2026-06-27 12:27:53,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:27:53,941.941 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-27 12:27:54,407.407 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 12:27:54,408.408 INFO    ] Checking for system updates...
[2026-06-27 12:27:54,429.429 INFO    ] 200
[2026-06-27 12:27:54,430.430 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:27:54,463.463 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:27:54,465.465 INFO    ] No update needed
[2026-06-27 12:27:54,466.466 INFO    ] Checking for camera pi updates...
[2026-06-27 12:27:54,490.490 INFO    ] 200
[2026-06-27 12:27:54,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:27:54,518.518 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:27:54,644.644 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:27:54,646.646 INFO    ] No camera update needed
[2026-06-27 12:27:54,647.647 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:27:54,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:27:54,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:27:54,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:27:56,695.695 INFO    ] ================================================
[2026-06-27 12:27:56,710.710 INFO    ] Launching Daemon at Sat Jun 27 12:27:56 IST 2026
[2026-06-27 12:27:56,720.720 INFO    ] ================================================
[2026-06-27 12:27:57,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:27:57
[2026-06-27 12:27:57,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:27:57,515.515 INFO    ] Initializing speech engine...
[2026-06-27 12:27:57,519.519 INFO    ] 2026-06-27 12:27:57
[2026-06-27 12:27:57,724.724 INFO    ] 2026-06-27 12:27:57
[2026-06-27 12:27:57,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:27:57,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:27:57,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:27:58,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:27:58,143.143 INFO    ] time= 27/06/2026 12:27:58
[2026-06-27 12:27:58,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:27:58,173.173 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:27:58,241.241 INFO    ] No existing commands found in stream
[2026-06-27 12:28:03,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:28:03,254.254 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-27 12:28:03,810.810 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:28:03,812.812 INFO    ] Checking for system updates...
[2026-06-27 12:28:03,833.833 INFO    ] 200
[2026-06-27 12:28:03,834.834 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:28:03,865.865 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:28:03,867.867 INFO    ] No update needed
[2026-06-27 12:28:03,868.868 INFO    ] Checking for camera pi updates...
[2026-06-27 12:28:03,888.888 INFO    ] 200
[2026-06-27 12:28:03,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:28:03,915.915 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:28:03,955.955 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:28:03,956.956 INFO    ] No camera update needed
[2026-06-27 12:28:03,958.958 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:28:03,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:28:03,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:28:03,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:28:06,005.005 INFO    ] ================================================
[2026-06-27 12:28:06,020.020 INFO    ] Launching Daemon at Sat Jun 27 12:28:06 IST 2026
[2026-06-27 12:28:06,031.031 INFO    ] ================================================
[2026-06-27 12:28:06,381.381 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:28:06
[2026-06-27 12:28:06,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:28:06,838.838 INFO    ] Initializing speech engine...
[2026-06-27 12:28:06,843.843 INFO    ] 2026-06-27 12:28:06
[2026-06-27 12:28:07,051.051 INFO    ] 2026-06-27 12:28:07
[2026-06-27 12:28:07,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:28:07,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:28:07,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:28:07,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:28:07,497.497 INFO    ] time= 27/06/2026 12:28:07
[2026-06-27 12:28:07,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:28:07,504.504 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:28:07,570.570 INFO    ] No existing commands found in stream
[2026-06-27 12:28:12,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:28:12,583.583 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-27 12:28:14,505.505 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 12:28:14,507.507 INFO    ] Checking for system updates...
[2026-06-27 12:28:14,529.529 INFO    ] 200
[2026-06-27 12:28:14,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:28:14,563.563 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:28:14,564.564 INFO    ] No update needed
[2026-06-27 12:28:14,565.565 INFO    ] Checking for camera pi updates...
[2026-06-27 12:28:14,585.585 INFO    ] 200
[2026-06-27 12:28:14,586.586 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:28:14,614.614 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:28:14,652.652 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:28:14,653.653 INFO    ] No camera update needed
[2026-06-27 12:28:14,654.654 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:28:14,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:28:14,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:28:14,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:28:16,706.706 INFO    ] ================================================
[2026-06-27 12:28:16,721.721 INFO    ] Launching Daemon at Sat Jun 27 12:28:16 IST 2026
[2026-06-27 12:28:16,732.732 INFO    ] ================================================
[2026-06-27 12:28:17,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:28:17
[2026-06-27 12:28:17,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:28:17,540.540 INFO    ] Initializing speech engine...
[2026-06-27 12:28:17,545.545 INFO    ] 2026-06-27 12:28:17
[2026-06-27 12:28:17,748.748 INFO    ] 2026-06-27 12:28:17
[2026-06-27 12:28:17,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:28:17,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:28:17,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:28:18,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:28:18,152.152 INFO    ] time= 27/06/2026 12:28:18
[2026-06-27 12:28:18,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:28:18,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:28:18,262.262 INFO    ] No existing commands found in stream
[2026-06-27 12:28:23,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:28:23,274.274 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-27 12:28:25,251.251 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:28:25,252.252 INFO    ] Checking for system updates...
[2026-06-27 12:28:25,274.274 INFO    ] 200
[2026-06-27 12:28:25,275.275 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:28:25,308.308 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:28:25,310.310 INFO    ] No update needed
[2026-06-27 12:28:25,311.311 INFO    ] Checking for camera pi updates...
[2026-06-27 12:28:25,334.334 INFO    ] 200
[2026-06-27 12:28:25,336.336 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:28:25,360.360 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:28:25,403.403 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:28:25,405.405 INFO    ] No camera update needed
[2026-06-27 12:28:25,406.406 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:28:25,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:28:25,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:28:25,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:28:27,453.453 INFO    ] ================================================
[2026-06-27 12:28:27,468.468 INFO    ] Launching Daemon at Sat Jun 27 12:28:27 IST 2026
[2026-06-27 12:28:27,479.479 INFO    ] ================================================
[2026-06-27 12:28:27,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:28:27
[2026-06-27 12:28:28,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:28:28,287.287 INFO    ] Initializing speech engine...
[2026-06-27 12:28:28,292.292 INFO    ] 2026-06-27 12:28:28
[2026-06-27 12:28:28,518.518 INFO    ] 2026-06-27 12:28:28
[2026-06-27 12:28:28,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:28:28,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:28:28,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:28:28,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:28:28,936.936 INFO    ] time= 27/06/2026 12:28:28
[2026-06-27 12:28:28,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:28:28,976.976 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:28:29,044.044 INFO    ] No existing commands found in stream
[2026-06-27 12:28:34,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:28:34,062.062 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-27 12:28:35,075.075 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:28:35,076.076 INFO    ] Checking for system updates...
[2026-06-27 12:28:35,097.097 INFO    ] 200
[2026-06-27 12:28:35,099.099 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:28:35,129.129 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:28:35,131.131 INFO    ] No update needed
[2026-06-27 12:28:35,132.132 INFO    ] Checking for camera pi updates...
[2026-06-27 12:28:35,153.153 INFO    ] 200
[2026-06-27 12:28:35,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:28:35,181.181 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:28:35,221.221 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:28:35,223.223 INFO    ] No camera update needed
[2026-06-27 12:28:35,224.224 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:28:35,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:28:35,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:28:35,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:28:37,270.270 INFO    ] ================================================
[2026-06-27 12:28:37,285.285 INFO    ] Launching Daemon at Sat Jun 27 12:28:37 IST 2026
[2026-06-27 12:28:37,296.296 INFO    ] ================================================
[2026-06-27 12:28:37,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:28:37
[2026-06-27 12:28:37,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:28:38,091.091 INFO    ] Initializing speech engine...
[2026-06-27 12:28:38,096.096 INFO    ] 2026-06-27 12:28:38
[2026-06-27 12:28:38,300.300 INFO    ] 2026-06-27 12:28:38
[2026-06-27 12:28:38,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:28:38,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:28:38,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:28:38,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:28:38,721.721 INFO    ] time= 27/06/2026 12:28:38
[2026-06-27 12:28:38,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:28:38,748.748 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:28:38,815.815 INFO    ] No existing commands found in stream
[2026-06-27 12:28:43,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:28:43,832.832 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-27 12:28:48,119.119 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:28:48,121.121 INFO    ] Checking for system updates...
[2026-06-27 12:28:48,143.143 INFO    ] 200
[2026-06-27 12:28:48,145.145 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:28:48,175.175 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:28:48,177.177 INFO    ] No update needed
[2026-06-27 12:28:48,178.178 INFO    ] Checking for camera pi updates...
[2026-06-27 12:28:48,198.198 INFO    ] 200
[2026-06-27 12:28:48,200.200 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:28:48,224.224 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:28:48,263.263 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:28:48,265.265 INFO    ] No camera update needed
[2026-06-27 12:28:48,266.266 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:28:48,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:28:48,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:28:48,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:28:50,314.314 INFO    ] ================================================
[2026-06-27 12:28:50,329.329 INFO    ] Launching Daemon at Sat Jun 27 12:28:50 IST 2026
[2026-06-27 12:28:50,340.340 INFO    ] ================================================
[2026-06-27 12:28:50,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:28:50
[2026-06-27 12:28:50,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:28:51,126.126 INFO    ] Initializing speech engine...
[2026-06-27 12:28:51,131.131 INFO    ] 2026-06-27 12:28:51
[2026-06-27 12:28:51,338.338 INFO    ] 2026-06-27 12:28:51
[2026-06-27 12:28:51,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:28:51,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:28:51,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:28:51,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:28:51,769.769 INFO    ] time= 27/06/2026 12:28:51
[2026-06-27 12:28:51,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:28:51,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:28:51,863.863 INFO    ] No existing commands found in stream
[2026-06-27 12:28:56,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:28:56,877.877 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-27 12:28:57,655.655 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 12:28:57,656.656 INFO    ] Checking for system updates...
[2026-06-27 12:28:57,677.677 INFO    ] 200
[2026-06-27 12:28:57,678.678 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:28:57,708.708 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:28:57,709.709 INFO    ] No update needed
[2026-06-27 12:28:57,711.711 INFO    ] Checking for camera pi updates...
[2026-06-27 12:28:57,730.730 INFO    ] 200
[2026-06-27 12:28:57,731.731 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:28:57,754.754 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:28:57,792.792 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:28:57,793.793 INFO    ] No camera update needed
[2026-06-27 12:28:57,795.795 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:28:57,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:28:57,799.799 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:28:57,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:28:59,844.844 INFO    ] ================================================
[2026-06-27 12:28:59,859.859 INFO    ] Launching Daemon at Sat Jun 27 12:28:59 IST 2026
[2026-06-27 12:28:59,870.870 INFO    ] ================================================
[2026-06-27 12:29:00,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:29:00
[2026-06-27 12:29:00,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:29:00,652.652 INFO    ] Initializing speech engine...
[2026-06-27 12:29:00,660.660 INFO    ] 2026-06-27 12:29:00
[2026-06-27 12:29:00,881.881 INFO    ] 2026-06-27 12:29:00
[2026-06-27 12:29:00,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:29:01,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:29:01,120.120 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:29:01,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:29:01,336.336 INFO    ] time= 27/06/2026 12:29:01
[2026-06-27 12:29:01,360.360 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:29:01,366.366 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:29:01,435.435 INFO    ] No existing commands found in stream
[2026-06-27 12:29:06,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:29:06,452.452 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-27 12:29:10,670.670 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:29:10,672.672 INFO    ] Checking for system updates...
[2026-06-27 12:29:10,694.694 INFO    ] 200
[2026-06-27 12:29:10,695.695 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:29:10,725.725 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:29:10,727.727 INFO    ] No update needed
[2026-06-27 12:29:10,728.728 INFO    ] Checking for camera pi updates...
[2026-06-27 12:29:10,749.749 INFO    ] 200
[2026-06-27 12:29:10,750.750 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:29:10,775.775 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:29:10,814.814 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:29:10,815.815 INFO    ] No camera update needed
[2026-06-27 12:29:10,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:29:10,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:29:10,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:29:10,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:29:12,861.861 INFO    ] ================================================
[2026-06-27 12:29:12,876.876 INFO    ] Launching Daemon at Sat Jun 27 12:29:12 IST 2026
[2026-06-27 12:29:12,887.887 INFO    ] ================================================
[2026-06-27 12:29:13,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:29:13
[2026-06-27 12:29:13,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:29:13,727.727 INFO    ] Initializing speech engine...
[2026-06-27 12:29:13,735.735 INFO    ] 2026-06-27 12:29:13
[2026-06-27 12:29:13,947.947 INFO    ] 2026-06-27 12:29:13
[2026-06-27 12:29:13,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:29:14,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:29:14,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:29:14,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:29:14,351.351 INFO    ] time= 27/06/2026 12:29:14
[2026-06-27 12:29:14,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:29:14,390.390 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:29:14,461.461 INFO    ] No existing commands found in stream
[2026-06-27 12:29:19,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:29:19,474.474 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-27 12:29:22,614.614 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 12:29:22,616.616 INFO    ] Checking for system updates...
[2026-06-27 12:29:22,638.638 INFO    ] 200
[2026-06-27 12:29:22,639.639 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:29:22,670.670 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:29:22,671.671 INFO    ] No update needed
[2026-06-27 12:29:22,672.672 INFO    ] Checking for camera pi updates...
[2026-06-27 12:29:22,691.691 INFO    ] 200
[2026-06-27 12:29:22,693.693 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:29:22,716.716 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:29:22,756.756 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:29:22,757.757 INFO    ] No camera update needed
[2026-06-27 12:29:22,759.759 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:29:22,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:29:22,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:29:22,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:29:24,805.805 INFO    ] ================================================
[2026-06-27 12:29:24,820.820 INFO    ] Launching Daemon at Sat Jun 27 12:29:24 IST 2026
[2026-06-27 12:29:24,831.831 INFO    ] ================================================
[2026-06-27 12:29:25,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:29:25
[2026-06-27 12:29:25,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:29:25,615.615 INFO    ] Initializing speech engine...
[2026-06-27 12:29:25,618.618 INFO    ] 2026-06-27 12:29:25
[2026-06-27 12:29:25,835.835 INFO    ] 2026-06-27 12:29:25
[2026-06-27 12:29:25,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:29:26,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:29:26,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:29:26,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:29:26,271.271 INFO    ] time= 27/06/2026 12:29:26
[2026-06-27 12:29:26,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:29:26,279.279 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:29:26,346.346 INFO    ] No existing commands found in stream
[2026-06-27 12:29:31,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:29:31,358.358 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-27 12:29:34,838.838 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 12:29:34,839.839 INFO    ] Checking for system updates...
[2026-06-27 12:29:34,860.860 INFO    ] 200
[2026-06-27 12:29:34,861.861 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:29:34,894.894 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:29:34,896.896 INFO    ] No update needed
[2026-06-27 12:29:34,898.898 INFO    ] Checking for camera pi updates...
[2026-06-27 12:29:34,917.917 INFO    ] 200
[2026-06-27 12:29:34,918.918 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:29:34,946.946 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:29:34,987.987 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:29:34,988.988 INFO    ] No camera update needed
[2026-06-27 12:29:34,989.989 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:29:34,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:29:34,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:29:34,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:29:37,035.035 INFO    ] ================================================
[2026-06-27 12:29:37,051.051 INFO    ] Launching Daemon at Sat Jun 27 12:29:37 IST 2026
[2026-06-27 12:29:37,061.061 INFO    ] ================================================
[2026-06-27 12:29:37,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:29:37
[2026-06-27 12:29:37,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:29:37,886.886 INFO    ] Initializing speech engine...
[2026-06-27 12:29:37,891.891 INFO    ] 2026-06-27 12:29:37
[2026-06-27 12:29:38,097.097 INFO    ] 2026-06-27 12:29:38
[2026-06-27 12:29:38,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:29:38,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:29:38,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:29:38,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:29:38,541.541 INFO    ] time= 27/06/2026 12:29:38
[2026-06-27 12:29:38,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:29:38,549.549 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:29:38,615.615 INFO    ] No existing commands found in stream
[2026-06-27 12:29:43,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:29:43,628.628 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-27 12:29:47,095.095 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 12:29:47,097.097 INFO    ] Checking for system updates...
[2026-06-27 12:29:47,119.119 INFO    ] 200
[2026-06-27 12:29:47,120.120 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:29:47,153.153 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:29:47,154.154 INFO    ] No update needed
[2026-06-27 12:29:47,156.156 INFO    ] Checking for camera pi updates...
[2026-06-27 12:29:47,176.176 INFO    ] 200
[2026-06-27 12:29:47,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:29:47,201.201 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:29:47,246.246 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:29:47,247.247 INFO    ] No camera update needed
[2026-06-27 12:29:47,248.248 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:29:47,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:29:47,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:29:47,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:29:49,295.295 INFO    ] ================================================
[2026-06-27 12:29:49,310.310 INFO    ] Launching Daemon at Sat Jun 27 12:29:49 IST 2026
[2026-06-27 12:29:49,321.321 INFO    ] ================================================
[2026-06-27 12:29:49,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:29:49
[2026-06-27 12:29:49,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:29:50,127.127 INFO    ] Initializing speech engine...
[2026-06-27 12:29:50,139.139 INFO    ] 2026-06-27 12:29:50
[2026-06-27 12:29:50,324.324 INFO    ] 2026-06-27 12:29:50
[2026-06-27 12:29:50,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:29:50,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:29:50,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:29:50,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:29:50,796.796 INFO    ] time= 27/06/2026 12:29:50
[2026-06-27 12:29:50,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:29:50,848.848 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:29:50,925.925 INFO    ] No existing commands found in stream
[2026-06-27 12:29:55,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:29:55,938.938 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-27 12:29:58,881.881 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 12:29:58,882.882 INFO    ] Checking for system updates...
[2026-06-27 12:29:58,904.904 INFO    ] 200
[2026-06-27 12:29:58,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:29:58,938.938 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:29:58,940.940 INFO    ] No update needed
[2026-06-27 12:29:58,941.941 INFO    ] Checking for camera pi updates...
[2026-06-27 12:29:58,964.964 INFO    ] 200
[2026-06-27 12:29:58,966.966 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:29:58,991.991 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:29:59,131.131 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:29:59,132.132 INFO    ] No camera update needed
[2026-06-27 12:29:59,134.134 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:29:59,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:29:59,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:29:59,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:30:01,180.180 INFO    ] ================================================
[2026-06-27 12:30:01,196.196 INFO    ] Launching Daemon at Sat Jun 27 12:30:01 IST 2026
[2026-06-27 12:30:01,207.207 INFO    ] ================================================
[2026-06-27 12:30:01,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:30:01
[2026-06-27 12:30:02,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:30:02,765.765 INFO    ] Initializing speech engine...
[2026-06-27 12:30:02,775.775 INFO    ] 2026-06-27 12:30:02
[2026-06-27 12:30:03,087.087 INFO    ] 2026-06-27 12:30:03
[2026-06-27 12:30:03,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:30:03,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:30:03,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:30:03,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:30:03,545.545 INFO    ] time= 27/06/2026 12:30:03
[2026-06-27 12:30:03,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:30:03,572.572 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:30:03,668.668 INFO    ] No existing commands found in stream
[2026-06-27 12:30:08,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:30:08,681.681 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-27 12:30:09,966.966 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 12:30:09,968.968 INFO    ] Checking for system updates...
[2026-06-27 12:30:09,990.990 INFO    ] 200
[2026-06-27 12:30:09,992.992 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:30:10,026.026 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:30:10,028.028 INFO    ] No update needed
[2026-06-27 12:30:10,030.030 INFO    ] Checking for camera pi updates...
[2026-06-27 12:30:10,051.051 INFO    ] 200
[2026-06-27 12:30:10,052.052 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:30:10,078.078 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:30:10,118.118 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:30:10,120.120 INFO    ] No camera update needed
[2026-06-27 12:30:10,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:30:10,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:30:10,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:30:10,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:30:12,167.167 INFO    ] ================================================
[2026-06-27 12:30:12,189.189 INFO    ] Launching Daemon at Sat Jun 27 12:30:12 IST 2026
[2026-06-27 12:30:12,200.200 INFO    ] ================================================
[2026-06-27 12:30:12,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:30:12
[2026-06-27 12:30:12,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:30:12,995.995 INFO    ] Initializing speech engine...
[2026-06-27 12:30:12,999.999 INFO    ] 2026-06-27 12:30:12
[2026-06-27 12:30:13,203.203 INFO    ] 2026-06-27 12:30:13
[2026-06-27 12:30:13,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:30:13,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:30:13,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:30:13,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:30:13,623.623 INFO    ] time= 27/06/2026 12:30:13
[2026-06-27 12:30:13,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:30:13,653.653 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:30:13,719.719 INFO    ] No existing commands found in stream
[2026-06-27 12:30:18,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:30:18,729.729 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-27 12:30:22,859.859 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 12:30:22,860.860 INFO    ] Checking for system updates...
[2026-06-27 12:30:22,881.881 INFO    ] 200
[2026-06-27 12:30:22,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:30:22,915.915 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:30:22,917.917 INFO    ] No update needed
[2026-06-27 12:30:22,918.918 INFO    ] Checking for camera pi updates...
[2026-06-27 12:30:22,938.938 INFO    ] 200
[2026-06-27 12:30:22,939.939 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:30:22,962.962 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:30:22,998.998 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:30:22,999.999 INFO    ] No camera update needed
[2026-06-27 12:30:23,001.001 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:30:23,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:30:23,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:30:23,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:30:25,049.049 INFO    ] ================================================
[2026-06-27 12:30:25,064.064 INFO    ] Launching Daemon at Sat Jun 27 12:30:25 IST 2026
[2026-06-27 12:30:25,075.075 INFO    ] ================================================
[2026-06-27 12:30:25,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:30:25
[2026-06-27 12:30:25,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:30:25,923.923 INFO    ] Initializing speech engine...
[2026-06-27 12:30:25,932.932 INFO    ] 2026-06-27 12:30:25
[2026-06-27 12:30:26,180.180 INFO    ] 2026-06-27 12:30:26
[2026-06-27 12:30:26,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:30:26,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:30:26,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:30:26,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:30:26,651.651 INFO    ] time= 27/06/2026 12:30:26
[2026-06-27 12:30:26,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:30:26,669.669 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:30:26,742.742 INFO    ] No existing commands found in stream
[2026-06-27 12:30:31,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:30:31,754.754 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-27 12:30:34,861.861 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 12:30:34,863.863 INFO    ] Checking for system updates...
[2026-06-27 12:30:34,885.885 INFO    ] 200
[2026-06-27 12:30:34,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:30:34,920.920 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:30:34,922.922 INFO    ] No update needed
[2026-06-27 12:30:34,923.923 INFO    ] Checking for camera pi updates...
[2026-06-27 12:30:34,943.943 INFO    ] 200
[2026-06-27 12:30:34,944.944 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:30:34,968.968 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:30:35,007.007 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:30:35,009.009 INFO    ] No camera update needed
[2026-06-27 12:30:35,010.010 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:30:35,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:30:35,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:30:35,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:30:37,056.056 INFO    ] ================================================
[2026-06-27 12:30:37,071.071 INFO    ] Launching Daemon at Sat Jun 27 12:30:37 IST 2026
[2026-06-27 12:30:37,082.082 INFO    ] ================================================
[2026-06-27 12:30:37,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:30:37
[2026-06-27 12:30:37,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:30:37,877.877 INFO    ] Initializing speech engine...
[2026-06-27 12:30:37,886.886 INFO    ] 2026-06-27 12:30:37
[2026-06-27 12:30:38,096.096 INFO    ] 2026-06-27 12:30:38
[2026-06-27 12:30:38,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:30:38,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:30:38,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:30:38,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:30:38,543.543 INFO    ] time= 27/06/2026 12:30:38
[2026-06-27 12:30:38,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:30:38,551.551 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:30:38,618.618 INFO    ] No existing commands found in stream
[2026-06-27 12:30:43,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:30:43,635.635 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-27 12:30:47,049.049 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:30:47,051.051 INFO    ] Checking for system updates...
[2026-06-27 12:30:47,074.074 INFO    ] 200
[2026-06-27 12:30:47,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:30:47,109.109 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:30:47,111.111 INFO    ] No update needed
[2026-06-27 12:30:47,112.112 INFO    ] Checking for camera pi updates...
[2026-06-27 12:30:47,132.132 INFO    ] 200
[2026-06-27 12:30:47,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:30:47,160.160 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:30:47,196.196 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:30:47,197.197 INFO    ] No camera update needed
[2026-06-27 12:30:47,198.198 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:30:47,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:30:47,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:30:47,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:30:49,245.245 INFO    ] ================================================
[2026-06-27 12:30:49,260.260 INFO    ] Launching Daemon at Sat Jun 27 12:30:49 IST 2026
[2026-06-27 12:30:49,271.271 INFO    ] ================================================
[2026-06-27 12:30:49,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:30:49
[2026-06-27 12:30:49,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:30:50,068.068 INFO    ] Initializing speech engine...
[2026-06-27 12:30:50,072.072 INFO    ] 2026-06-27 12:30:50
[2026-06-27 12:30:50,267.267 INFO    ] 2026-06-27 12:30:50
[2026-06-27 12:30:50,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:30:50,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:30:50,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:30:50,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:30:50,733.733 INFO    ] time= 27/06/2026 12:30:50
[2026-06-27 12:30:50,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:30:50,763.763 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:30:50,831.831 INFO    ] No existing commands found in stream
[2026-06-27 12:30:55,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:30:55,848.848 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-27 12:30:56,859.859 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 12:30:56,860.860 INFO    ] Checking for system updates...
[2026-06-27 12:30:56,882.882 INFO    ] 200
[2026-06-27 12:30:56,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:30:56,915.915 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:30:56,916.916 INFO    ] No update needed
[2026-06-27 12:30:56,918.918 INFO    ] Checking for camera pi updates...
[2026-06-27 12:30:56,937.937 INFO    ] 200
[2026-06-27 12:30:56,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:30:56,962.962 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:30:57,003.003 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:30:57,005.005 INFO    ] No camera update needed
[2026-06-27 12:30:57,006.006 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:30:57,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:30:57,010.010 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:30:57,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:30:59,037.037 INFO    ] ================================================
[2026-06-27 12:30:59,046.046 INFO    ] Launching Daemon at Sat Jun 27 12:30:59 IST 2026
[2026-06-27 12:30:59,052.052 INFO    ] ================================================
[2026-06-27 12:30:59,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:30:59
[2026-06-27 12:30:59,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:30:59,845.845 INFO    ] Initializing speech engine...
[2026-06-27 12:30:59,855.855 INFO    ] 2026-06-27 12:30:59
[2026-06-27 12:31:00,064.064 INFO    ] 2026-06-27 12:31:00
[2026-06-27 12:31:00,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:31:00,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:31:00,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:31:00,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:31:00,505.505 INFO    ] time= 27/06/2026 12:31:00
[2026-06-27 12:31:00,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:31:00,535.535 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:31:00,603.603 INFO    ] No existing commands found in stream
[2026-06-27 12:31:05,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:31:05,613.613 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-27 12:31:08,191.191 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 12:31:08,193.193 INFO    ] Checking for system updates...
[2026-06-27 12:31:08,214.214 INFO    ] 200
[2026-06-27 12:31:08,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:31:08,248.248 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:31:08,250.250 INFO    ] No update needed
[2026-06-27 12:31:08,251.251 INFO    ] Checking for camera pi updates...
[2026-06-27 12:31:08,270.270 INFO    ] 200
[2026-06-27 12:31:08,272.272 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:31:08,299.299 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:31:08,338.338 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:31:08,340.340 INFO    ] No camera update needed
[2026-06-27 12:31:08,341.341 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:31:08,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:31:08,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:31:08,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:31:10,387.387 INFO    ] ================================================
[2026-06-27 12:31:10,403.403 INFO    ] Launching Daemon at Sat Jun 27 12:31:10 IST 2026
[2026-06-27 12:31:10,414.414 INFO    ] ================================================
[2026-06-27 12:31:10,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:31:10
[2026-06-27 12:31:11,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:31:11,216.216 INFO    ] Initializing speech engine...
[2026-06-27 12:31:11,220.220 INFO    ] 2026-06-27 12:31:11
[2026-06-27 12:31:11,438.438 INFO    ] 2026-06-27 12:31:11
[2026-06-27 12:31:11,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:31:11,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:31:11,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:31:11,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:31:11,823.823 INFO    ] time= 27/06/2026 12:31:11
[2026-06-27 12:31:11,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:31:11,884.884 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:31:11,954.954 INFO    ] No existing commands found in stream
[2026-06-27 12:31:16,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:31:16,968.968 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-27 12:31:20,066.066 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 12:31:20,067.067 INFO    ] Checking for system updates...
[2026-06-27 12:31:20,088.088 INFO    ] 200
[2026-06-27 12:31:20,089.089 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:31:20,119.119 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:31:20,121.121 INFO    ] No update needed
[2026-06-27 12:31:20,122.122 INFO    ] Checking for camera pi updates...
[2026-06-27 12:31:20,143.143 INFO    ] 200
[2026-06-27 12:31:20,145.145 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:31:20,168.168 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:31:20,205.205 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:31:20,206.206 INFO    ] No camera update needed
[2026-06-27 12:31:20,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:31:20,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:31:20,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:31:20,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:31:22,254.254 INFO    ] ================================================
[2026-06-27 12:31:22,271.271 INFO    ] Launching Daemon at Sat Jun 27 12:31:22 IST 2026
[2026-06-27 12:31:22,282.282 INFO    ] ================================================
[2026-06-27 12:31:22,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:31:22
[2026-06-27 12:31:22,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:31:23,086.086 INFO    ] Initializing speech engine...
[2026-06-27 12:31:23,090.090 INFO    ] 2026-06-27 12:31:23
[2026-06-27 12:31:23,297.297 INFO    ] 2026-06-27 12:31:23
[2026-06-27 12:31:23,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:31:23,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:31:23,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:31:23,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:31:23,715.715 INFO    ] time= 27/06/2026 12:31:23
[2026-06-27 12:31:23,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:31:23,743.743 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:31:23,809.809 INFO    ] No existing commands found in stream
[2026-06-27 12:31:28,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:31:28,822.822 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-27 12:31:32,354.354 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 12:31:32,356.356 INFO    ] Checking for system updates...
[2026-06-27 12:31:32,394.394 INFO    ] 200
[2026-06-27 12:31:32,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:31:32,452.452 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:31:32,454.454 INFO    ] No update needed
[2026-06-27 12:31:32,457.457 INFO    ] Checking for camera pi updates...
[2026-06-27 12:31:32,488.488 INFO    ] 200
[2026-06-27 12:31:32,490.490 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:31:32,514.514 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:31:32,541.541 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:31:32,543.543 INFO    ] No camera update needed
[2026-06-27 12:31:32,544.544 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:31:32,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:31:32,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:31:32,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:31:34,590.590 INFO    ] ================================================
[2026-06-27 12:31:34,606.606 INFO    ] Launching Daemon at Sat Jun 27 12:31:34 IST 2026
[2026-06-27 12:31:34,617.617 INFO    ] ================================================
[2026-06-27 12:31:34,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:31:34
[2026-06-27 12:31:35,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:31:35,441.441 INFO    ] Initializing speech engine...
[2026-06-27 12:31:35,451.451 INFO    ] 2026-06-27 12:31:35
[2026-06-27 12:31:35,656.656 INFO    ] 2026-06-27 12:31:35
[2026-06-27 12:31:35,684.684 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:31:35,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:31:35,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:31:36,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:31:36,097.097 INFO    ] time= 27/06/2026 12:31:36
[2026-06-27 12:31:36,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:31:36,104.104 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:31:36,170.170 INFO    ] No existing commands found in stream
[2026-06-27 12:31:41,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:31:41,184.184 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-27 12:31:45,040.040 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 12:31:45,041.041 INFO    ] Checking for system updates...
[2026-06-27 12:31:45,064.064 INFO    ] 200
[2026-06-27 12:31:45,065.065 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:31:45,096.096 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:31:45,097.097 INFO    ] No update needed
[2026-06-27 12:31:45,099.099 INFO    ] Checking for camera pi updates...
[2026-06-27 12:31:45,120.120 INFO    ] 200
[2026-06-27 12:31:45,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:31:45,146.146 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:31:45,183.183 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:31:45,184.184 INFO    ] No camera update needed
[2026-06-27 12:31:45,186.186 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:31:45,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:31:45,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:31:45,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:31:47,238.238 INFO    ] ================================================
[2026-06-27 12:31:47,253.253 INFO    ] Launching Daemon at Sat Jun 27 12:31:47 IST 2026
[2026-06-27 12:31:47,264.264 INFO    ] ================================================
[2026-06-27 12:31:47,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:31:47
[2026-06-27 12:31:47,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:31:48,038.038 INFO    ] Initializing speech engine...
[2026-06-27 12:31:48,042.042 INFO    ] 2026-06-27 12:31:48
[2026-06-27 12:31:48,261.261 INFO    ] 2026-06-27 12:31:48
[2026-06-27 12:31:48,291.291 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:31:48,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:31:48,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:31:48,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:31:48,686.686 INFO    ] time= 27/06/2026 12:31:48
[2026-06-27 12:31:48,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:31:48,721.721 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:31:48,790.790 INFO    ] No existing commands found in stream
[2026-06-27 12:31:53,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:31:53,807.807 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-27 12:31:56,368.368 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:31:56,370.370 INFO    ] Checking for system updates...
[2026-06-27 12:31:56,390.390 INFO    ] 200
[2026-06-27 12:31:56,392.392 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:31:56,425.425 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:31:56,427.427 INFO    ] No update needed
[2026-06-27 12:31:56,428.428 INFO    ] Checking for camera pi updates...
[2026-06-27 12:31:56,448.448 INFO    ] 200
[2026-06-27 12:31:56,450.450 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:31:56,473.473 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:31:56,509.509 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:31:56,510.510 INFO    ] No camera update needed
[2026-06-27 12:31:56,512.512 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:31:56,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:31:56,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:31:56,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:31:58,558.558 INFO    ] ================================================
[2026-06-27 12:31:58,574.574 INFO    ] Launching Daemon at Sat Jun 27 12:31:58 IST 2026
[2026-06-27 12:31:58,586.586 INFO    ] ================================================
[2026-06-27 12:31:58,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:31:58
[2026-06-27 12:31:59,267.267 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:31:59,422.422 INFO    ] Initializing speech engine...
[2026-06-27 12:31:59,428.428 INFO    ] 2026-06-27 12:31:59
[2026-06-27 12:31:59,637.637 INFO    ] 2026-06-27 12:31:59
[2026-06-27 12:31:59,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:31:59,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:31:59,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:32:00,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:32:00,083.083 INFO    ] time= 27/06/2026 12:32:00
[2026-06-27 12:32:00,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:32:00,090.090 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:32:00,158.158 INFO    ] No existing commands found in stream
[2026-06-27 12:32:05,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:32:05,176.176 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-27 12:32:06,209.209 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:32:06,211.211 INFO    ] Checking for system updates...
[2026-06-27 12:32:06,232.232 INFO    ] 200
[2026-06-27 12:32:06,233.233 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:32:06,265.265 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:32:06,266.266 INFO    ] No update needed
[2026-06-27 12:32:06,267.267 INFO    ] Checking for camera pi updates...
[2026-06-27 12:32:06,289.289 INFO    ] 200
[2026-06-27 12:32:06,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:32:06,316.316 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:32:06,357.357 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:32:06,358.358 INFO    ] No camera update needed
[2026-06-27 12:32:06,360.360 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:32:06,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:32:06,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:32:06,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:32:08,407.407 INFO    ] ================================================
[2026-06-27 12:32:08,423.423 INFO    ] Launching Daemon at Sat Jun 27 12:32:08 IST 2026
[2026-06-27 12:32:08,434.434 INFO    ] ================================================
[2026-06-27 12:32:08,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:32:08
[2026-06-27 12:32:09,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:32:09,239.239 INFO    ] Initializing speech engine...
[2026-06-27 12:32:09,253.253 INFO    ] 2026-06-27 12:32:09
[2026-06-27 12:32:09,466.466 INFO    ] 2026-06-27 12:32:09
[2026-06-27 12:32:09,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:32:09,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:32:09,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:32:09,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:32:09,897.897 INFO    ] time= 27/06/2026 12:32:09
[2026-06-27 12:32:09,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:32:09,928.928 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:32:09,996.996 INFO    ] No existing commands found in stream
[2026-06-27 12:32:15,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:32:15,014.014 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-27 12:32:17,589.589 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 12:32:17,590.590 INFO    ] Checking for system updates...
[2026-06-27 12:32:17,612.612 INFO    ] 200
[2026-06-27 12:32:17,614.614 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:32:17,644.644 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:32:17,645.645 INFO    ] No update needed
[2026-06-27 12:32:17,646.646 INFO    ] Checking for camera pi updates...
[2026-06-27 12:32:17,668.668 INFO    ] 200
[2026-06-27 12:32:17,669.669 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:32:17,696.696 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:32:17,741.741 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:32:17,743.743 INFO    ] No camera update needed
[2026-06-27 12:32:17,744.744 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:32:17,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:32:17,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:32:17,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:32:19,791.791 INFO    ] ================================================
[2026-06-27 12:32:19,807.807 INFO    ] Launching Daemon at Sat Jun 27 12:32:19 IST 2026
[2026-06-27 12:32:19,818.818 INFO    ] ================================================
[2026-06-27 12:32:20,164.164 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:32:20
[2026-06-27 12:32:20,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:32:20,621.621 INFO    ] Initializing speech engine...
[2026-06-27 12:32:20,626.626 INFO    ] 2026-06-27 12:32:20
[2026-06-27 12:32:20,832.832 INFO    ] 2026-06-27 12:32:20
[2026-06-27 12:32:20,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:32:21,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:32:21,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:32:21,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:32:21,257.257 INFO    ] time= 27/06/2026 12:32:21
[2026-06-27 12:32:21,280.280 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:32:21,285.285 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:32:21,353.353 INFO    ] No existing commands found in stream
[2026-06-27 12:32:26,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:32:26,365.365 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-27 12:32:28,121.121 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 12:32:28,123.123 INFO    ] Checking for system updates...
[2026-06-27 12:32:28,145.145 INFO    ] 200
[2026-06-27 12:32:28,146.146 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:32:28,177.177 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:32:28,178.178 INFO    ] No update needed
[2026-06-27 12:32:28,180.180 INFO    ] Checking for camera pi updates...
[2026-06-27 12:32:28,199.199 INFO    ] 200
[2026-06-27 12:32:28,200.200 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:32:28,224.224 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:32:28,265.265 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:32:28,266.266 INFO    ] No camera update needed
[2026-06-27 12:32:28,267.267 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:32:28,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:32:28,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:32:28,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:32:30,315.315 INFO    ] ================================================
[2026-06-27 12:32:30,330.330 INFO    ] Launching Daemon at Sat Jun 27 12:32:30 IST 2026
[2026-06-27 12:32:30,341.341 INFO    ] ================================================
[2026-06-27 12:32:30,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:32:30
[2026-06-27 12:32:31,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:32:31,233.233 INFO    ] Initializing speech engine...
[2026-06-27 12:32:31,237.237 INFO    ] 2026-06-27 12:32:31
[2026-06-27 12:32:31,446.446 INFO    ] 2026-06-27 12:32:31
[2026-06-27 12:32:31,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:32:31,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:32:31,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:32:31,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:32:31,894.894 INFO    ] time= 27/06/2026 12:32:31
[2026-06-27 12:32:31,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:32:31,938.938 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:32:32,009.009 INFO    ] No existing commands found in stream
[2026-06-27 12:32:37,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:32:37,027.027 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-27 12:32:39,366.366 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 12:32:39,367.367 INFO    ] Checking for system updates...
[2026-06-27 12:32:39,389.389 INFO    ] 200
[2026-06-27 12:32:39,390.390 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:32:39,421.421 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:32:39,422.422 INFO    ] No update needed
[2026-06-27 12:32:39,424.424 INFO    ] Checking for camera pi updates...
[2026-06-27 12:32:39,444.444 INFO    ] 200
[2026-06-27 12:32:39,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:32:39,471.471 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:32:39,508.508 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:32:39,510.510 INFO    ] No camera update needed
[2026-06-27 12:32:39,511.511 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:32:39,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:32:39,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:32:39,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:32:41,558.558 INFO    ] ================================================
[2026-06-27 12:32:41,574.574 INFO    ] Launching Daemon at Sat Jun 27 12:32:41 IST 2026
[2026-06-27 12:32:41,585.585 INFO    ] ================================================
[2026-06-27 12:32:41,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:32:41
[2026-06-27 12:32:42,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:32:42,442.442 INFO    ] Initializing speech engine...
[2026-06-27 12:32:42,447.447 INFO    ] 2026-06-27 12:32:42
[2026-06-27 12:32:42,654.654 INFO    ] 2026-06-27 12:32:42
[2026-06-27 12:32:42,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:32:42,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:32:42,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:32:43,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:32:43,074.074 INFO    ] time= 27/06/2026 12:32:43
[2026-06-27 12:32:43,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:32:43,103.103 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:32:43,171.171 INFO    ] No existing commands found in stream
[2026-06-27 12:32:48,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:32:48,189.189 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-27 12:32:49,991.991 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 12:32:49,993.993 INFO    ] Checking for system updates...
[2026-06-27 12:32:50,014.014 INFO    ] 200
[2026-06-27 12:32:50,016.016 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:32:50,049.049 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:32:50,051.051 INFO    ] No update needed
[2026-06-27 12:32:50,052.052 INFO    ] Checking for camera pi updates...
[2026-06-27 12:32:50,077.077 INFO    ] 200
[2026-06-27 12:32:50,078.078 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:32:50,104.104 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:32:50,128.128 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:32:50,130.130 INFO    ] No camera update needed
[2026-06-27 12:32:50,131.131 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:32:50,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:32:50,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:32:50,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:32:52,178.178 INFO    ] ================================================
[2026-06-27 12:32:52,194.194 INFO    ] Launching Daemon at Sat Jun 27 12:32:52 IST 2026
[2026-06-27 12:32:52,205.205 INFO    ] ================================================
[2026-06-27 12:32:52,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:32:52
[2026-06-27 12:32:52,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:32:53,052.052 INFO    ] Initializing speech engine...
[2026-06-27 12:32:53,063.063 INFO    ] 2026-06-27 12:32:53
[2026-06-27 12:32:53,273.273 INFO    ] 2026-06-27 12:32:53
[2026-06-27 12:32:53,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:32:53,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:32:53,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:32:53,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:32:53,702.702 INFO    ] time= 27/06/2026 12:32:53
[2026-06-27 12:32:53,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:32:53,732.732 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:32:53,800.800 INFO    ] No existing commands found in stream
[2026-06-27 12:32:58,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:32:58,818.818 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-27 12:33:01,504.504 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:33:01,505.505 INFO    ] Checking for system updates...
[2026-06-27 12:33:01,526.526 INFO    ] 200
[2026-06-27 12:33:01,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:33:01,558.558 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:33:01,560.560 INFO    ] No update needed
[2026-06-27 12:33:01,561.561 INFO    ] Checking for camera pi updates...
[2026-06-27 12:33:01,581.581 INFO    ] 200
[2026-06-27 12:33:01,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:33:01,607.607 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:33:01,642.642 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:33:01,644.644 INFO    ] No camera update needed
[2026-06-27 12:33:01,645.645 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:33:01,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:33:01,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:33:01,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:33:03,685.685 INFO    ] ================================================
[2026-06-27 12:33:03,701.701 INFO    ] Launching Daemon at Sat Jun 27 12:33:03 IST 2026
[2026-06-27 12:33:03,712.712 INFO    ] ================================================
[2026-06-27 12:33:04,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:33:04
[2026-06-27 12:33:04,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:33:04,581.581 INFO    ] Initializing speech engine...
[2026-06-27 12:33:04,590.590 INFO    ] 2026-06-27 12:33:04
[2026-06-27 12:33:04,805.805 INFO    ] 2026-06-27 12:33:04
[2026-06-27 12:33:04,834.834 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:33:05,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:33:05,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:33:05,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:33:05,235.235 INFO    ] time= 27/06/2026 12:33:05
[2026-06-27 12:33:05,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:33:05,263.263 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:33:05,330.330 INFO    ] No existing commands found in stream
[2026-06-27 12:33:10,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:33:10,348.348 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-27 12:33:13,449.449 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 12:33:13,451.451 INFO    ] Checking for system updates...
[2026-06-27 12:33:13,474.474 INFO    ] 200
[2026-06-27 12:33:13,476.476 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:33:13,510.510 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:33:13,511.511 INFO    ] No update needed
[2026-06-27 12:33:13,513.513 INFO    ] Checking for camera pi updates...
[2026-06-27 12:33:13,533.533 INFO    ] 200
[2026-06-27 12:33:13,534.534 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:33:13,560.560 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:33:13,599.599 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:33:13,600.600 INFO    ] No camera update needed
[2026-06-27 12:33:13,602.602 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:33:13,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:33:13,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:33:13,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:33:15,658.658 INFO    ] ================================================
[2026-06-27 12:33:15,675.675 INFO    ] Launching Daemon at Sat Jun 27 12:33:15 IST 2026
[2026-06-27 12:33:15,686.686 INFO    ] ================================================
[2026-06-27 12:33:16,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:33:16
[2026-06-27 12:33:16,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:33:16,489.489 INFO    ] Initializing speech engine...
[2026-06-27 12:33:16,494.494 INFO    ] 2026-06-27 12:33:16
[2026-06-27 12:33:16,699.699 INFO    ] 2026-06-27 12:33:16
[2026-06-27 12:33:16,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:33:16,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:33:16,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:33:17,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:33:17,138.138 INFO    ] time= 27/06/2026 12:33:17
[2026-06-27 12:33:17,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:33:17,149.149 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:33:17,214.214 INFO    ] No existing commands found in stream
[2026-06-27 12:33:22,225.225 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:33:22,228.228 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-27 12:33:26,133.133 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 12:33:26,135.135 INFO    ] Checking for system updates...
[2026-06-27 12:33:26,156.156 INFO    ] 200
[2026-06-27 12:33:26,158.158 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:33:26,189.189 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:33:26,190.190 INFO    ] No update needed
[2026-06-27 12:33:26,192.192 INFO    ] Checking for camera pi updates...
[2026-06-27 12:33:26,212.212 INFO    ] 200
[2026-06-27 12:33:26,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:33:26,237.237 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:33:26,285.285 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:33:26,286.286 INFO    ] No camera update needed
[2026-06-27 12:33:26,288.288 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:33:26,289.289 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:33:26,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:33:26,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:33:28,338.338 INFO    ] ================================================
[2026-06-27 12:33:28,354.354 INFO    ] Launching Daemon at Sat Jun 27 12:33:28 IST 2026
[2026-06-27 12:33:28,366.366 INFO    ] ================================================
[2026-06-27 12:33:28,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:33:28
[2026-06-27 12:33:29,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:33:29,185.185 INFO    ] Initializing speech engine...
[2026-06-27 12:33:29,189.189 INFO    ] 2026-06-27 12:33:29
[2026-06-27 12:33:29,407.407 INFO    ] 2026-06-27 12:33:29
[2026-06-27 12:33:29,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:33:29,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:33:29,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:33:29,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:33:29,829.829 INFO    ] time= 27/06/2026 12:33:29
[2026-06-27 12:33:29,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:33:29,858.858 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:33:29,925.925 INFO    ] No existing commands found in stream
[2026-06-27 12:33:34,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:33:34,941.941 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-27 12:33:36,684.684 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 12:33:36,687.687 INFO    ] Checking for system updates...
[2026-06-27 12:33:36,708.708 INFO    ] 200
[2026-06-27 12:33:36,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:33:36,740.740 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:33:36,741.741 INFO    ] No update needed
[2026-06-27 12:33:36,742.742 INFO    ] Checking for camera pi updates...
[2026-06-27 12:33:36,762.762 INFO    ] 200
[2026-06-27 12:33:36,764.764 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:33:36,787.787 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:33:36,834.834 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:33:36,835.835 INFO    ] No camera update needed
[2026-06-27 12:33:36,836.836 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:33:36,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:33:36,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:33:36,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:33:38,884.884 INFO    ] ================================================
[2026-06-27 12:33:38,900.900 INFO    ] Launching Daemon at Sat Jun 27 12:33:38 IST 2026
[2026-06-27 12:33:38,911.911 INFO    ] ================================================
[2026-06-27 12:33:39,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:33:39
[2026-06-27 12:33:39,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:33:39,713.713 INFO    ] Initializing speech engine...
[2026-06-27 12:33:39,719.719 INFO    ] 2026-06-27 12:33:39
[2026-06-27 12:33:39,927.927 INFO    ] 2026-06-27 12:33:39
[2026-06-27 12:33:39,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:33:40,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:33:40,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:33:40,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:33:40,368.368 INFO    ] time= 27/06/2026 12:33:40
[2026-06-27 12:33:40,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:33:40,376.376 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:33:40,443.443 INFO    ] No existing commands found in stream
[2026-06-27 12:33:45,453.453 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:33:45,456.456 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-27 12:33:46,074.074 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 12:33:46,075.075 INFO    ] Checking for system updates...
[2026-06-27 12:33:46,098.098 INFO    ] 200
[2026-06-27 12:33:46,099.099 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:33:46,132.132 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:33:46,134.134 INFO    ] No update needed
[2026-06-27 12:33:46,136.136 INFO    ] Checking for camera pi updates...
[2026-06-27 12:33:46,156.156 INFO    ] 200
[2026-06-27 12:33:46,157.157 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:33:46,180.180 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:33:46,217.217 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:33:46,218.218 INFO    ] No camera update needed
[2026-06-27 12:33:46,220.220 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:33:46,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:33:46,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:33:46,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:33:48,265.265 INFO    ] ================================================
[2026-06-27 12:33:48,281.281 INFO    ] Launching Daemon at Sat Jun 27 12:33:48 IST 2026
[2026-06-27 12:33:48,293.293 INFO    ] ================================================
[2026-06-27 12:33:48,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:33:48
[2026-06-27 12:33:48,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:33:49,130.130 INFO    ] Initializing speech engine...
[2026-06-27 12:33:49,140.140 INFO    ] 2026-06-27 12:33:49
[2026-06-27 12:33:49,360.360 INFO    ] 2026-06-27 12:33:49
[2026-06-27 12:33:49,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:33:49,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:33:49,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:33:49,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:33:49,807.807 INFO    ] time= 27/06/2026 12:33:49
[2026-06-27 12:33:49,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:33:49,854.854 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:33:49,929.929 INFO    ] No existing commands found in stream
[2026-06-27 12:33:54,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:33:54,941.941 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-27 12:33:56,416.416 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 12:33:56,417.417 INFO    ] Checking for system updates...
[2026-06-27 12:33:56,438.438 INFO    ] 200
[2026-06-27 12:33:56,439.439 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:33:56,470.470 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:33:56,471.471 INFO    ] No update needed
[2026-06-27 12:33:56,472.472 INFO    ] Checking for camera pi updates...
[2026-06-27 12:33:56,492.492 INFO    ] 200
[2026-06-27 12:33:56,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:33:56,517.517 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:33:56,558.558 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:33:56,559.559 INFO    ] No camera update needed
[2026-06-27 12:33:56,560.560 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:33:56,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:33:56,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:33:56,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:33:58,606.606 INFO    ] ================================================
[2026-06-27 12:33:58,621.621 INFO    ] Launching Daemon at Sat Jun 27 12:33:58 IST 2026
[2026-06-27 12:33:58,632.632 INFO    ] ================================================
[2026-06-27 12:33:58,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:33:58
[2026-06-27 12:33:59,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:33:59,444.444 INFO    ] Initializing speech engine...
[2026-06-27 12:33:59,449.449 INFO    ] 2026-06-27 12:33:59
[2026-06-27 12:33:59,654.654 INFO    ] 2026-06-27 12:33:59
[2026-06-27 12:33:59,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:33:59,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:33:59,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:34:00,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:34:00,071.071 INFO    ] time= 27/06/2026 12:34:00
[2026-06-27 12:34:00,095.095 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:34:00,100.100 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:34:00,168.168 INFO    ] No existing commands found in stream
[2026-06-27 12:34:05,177.177 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:34:05,180.180 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-27 12:34:06,720.720 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 12:34:06,722.722 INFO    ] Checking for system updates...
[2026-06-27 12:34:06,743.743 INFO    ] 200
[2026-06-27 12:34:06,744.744 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:34:06,775.775 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:34:06,777.777 INFO    ] No update needed
[2026-06-27 12:34:06,778.778 INFO    ] Checking for camera pi updates...
[2026-06-27 12:34:06,799.799 INFO    ] 200
[2026-06-27 12:34:06,800.800 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:34:06,826.826 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:34:06,963.963 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:34:06,965.965 INFO    ] No camera update needed
[2026-06-27 12:34:06,966.966 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:34:06,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:34:06,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:34:06,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:34:09,014.014 INFO    ] ================================================
[2026-06-27 12:34:09,030.030 INFO    ] Launching Daemon at Sat Jun 27 12:34:09 IST 2026
[2026-06-27 12:34:09,041.041 INFO    ] ================================================
[2026-06-27 12:34:09,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:34:09
[2026-06-27 12:34:09,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:34:09,860.860 INFO    ] Initializing speech engine...
[2026-06-27 12:34:09,865.865 INFO    ] 2026-06-27 12:34:09
[2026-06-27 12:34:10,060.060 INFO    ] 2026-06-27 12:34:10
[2026-06-27 12:34:10,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:34:10,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:34:10,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:34:10,481.481 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:34:10,543.543 INFO    ] time= 27/06/2026 12:34:10
[2026-06-27 12:34:10,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:34:10,590.590 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:34:10,665.665 INFO    ] No existing commands found in stream
[2026-06-27 12:34:15,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:34:15,679.679 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-27 12:34:18,292.292 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 12:34:18,294.294 INFO    ] Checking for system updates...
[2026-06-27 12:34:18,315.315 INFO    ] 200
[2026-06-27 12:34:18,316.316 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:34:18,346.346 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:34:18,348.348 INFO    ] No update needed
[2026-06-27 12:34:18,349.349 INFO    ] Checking for camera pi updates...
[2026-06-27 12:34:18,369.369 INFO    ] 200
[2026-06-27 12:34:18,370.370 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:34:18,394.394 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:34:18,427.427 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:34:18,428.428 INFO    ] No camera update needed
[2026-06-27 12:34:18,430.430 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:34:18,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:34:18,434.434 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:34:18,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:34:20,475.475 INFO    ] ================================================
[2026-06-27 12:34:20,490.490 INFO    ] Launching Daemon at Sat Jun 27 12:34:20 IST 2026
[2026-06-27 12:34:20,501.501 INFO    ] ================================================
[2026-06-27 12:34:20,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:34:20
[2026-06-27 12:34:21,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:34:21,298.298 INFO    ] Initializing speech engine...
[2026-06-27 12:34:21,303.303 INFO    ] 2026-06-27 12:34:21
[2026-06-27 12:34:21,508.508 INFO    ] 2026-06-27 12:34:21
[2026-06-27 12:34:21,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:34:21,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:34:21,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:34:21,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:34:21,911.911 INFO    ] time= 27/06/2026 12:34:21
[2026-06-27 12:34:21,945.945 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:34:21,950.950 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:34:22,022.022 INFO    ] No existing commands found in stream
[2026-06-27 12:34:27,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:34:27,038.038 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-27 12:34:27,759.759 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 12:34:27,761.761 INFO    ] Checking for system updates...
[2026-06-27 12:34:27,781.781 INFO    ] 200
[2026-06-27 12:34:27,783.783 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:34:27,813.813 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:34:27,814.814 INFO    ] No update needed
[2026-06-27 12:34:27,816.816 INFO    ] Checking for camera pi updates...
[2026-06-27 12:34:27,837.837 INFO    ] 200
[2026-06-27 12:34:27,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:34:27,864.864 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:34:27,903.903 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:34:27,905.905 INFO    ] No camera update needed
[2026-06-27 12:34:27,906.906 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:34:27,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:34:27,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:34:27,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:34:29,952.952 INFO    ] ================================================
[2026-06-27 12:34:29,967.967 INFO    ] Launching Daemon at Sat Jun 27 12:34:29 IST 2026
[2026-06-27 12:34:29,978.978 INFO    ] ================================================
[2026-06-27 12:34:30,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:34:30
[2026-06-27 12:34:30,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:34:30,793.793 INFO    ] Initializing speech engine...
[2026-06-27 12:34:30,804.804 INFO    ] 2026-06-27 12:34:30
[2026-06-27 12:34:31,010.010 INFO    ] 2026-06-27 12:34:30
[2026-06-27 12:34:31,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:34:31,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:34:31,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:34:31,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:34:31,437.437 INFO    ] time= 27/06/2026 12:34:31
[2026-06-27 12:34:31,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:34:31,467.467 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:34:31,535.535 INFO    ] No existing commands found in stream
[2026-06-27 12:34:36,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:34:36,547.547 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-27 12:34:40,501.501 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:34:40,503.503 INFO    ] Checking for system updates...
[2026-06-27 12:34:40,523.523 INFO    ] 200
[2026-06-27 12:34:40,525.525 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:34:40,555.555 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:34:40,556.556 INFO    ] No update needed
[2026-06-27 12:34:40,558.558 INFO    ] Checking for camera pi updates...
[2026-06-27 12:34:40,577.577 INFO    ] 200
[2026-06-27 12:34:40,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:34:40,601.601 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:34:40,648.648 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:34:40,649.649 INFO    ] No camera update needed
[2026-06-27 12:34:40,651.651 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:34:40,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:34:40,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:34:40,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:34:42,698.698 INFO    ] ================================================
[2026-06-27 12:34:42,714.714 INFO    ] Launching Daemon at Sat Jun 27 12:34:42 IST 2026
[2026-06-27 12:34:42,724.724 INFO    ] ================================================
[2026-06-27 12:34:43,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:34:43
[2026-06-27 12:34:43,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:34:43,533.533 INFO    ] Initializing speech engine...
[2026-06-27 12:34:43,538.538 INFO    ] 2026-06-27 12:34:43
[2026-06-27 12:34:43,747.747 INFO    ] 2026-06-27 12:34:43
[2026-06-27 12:34:43,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:34:43,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:34:43,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:34:44,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:34:44,170.170 INFO    ] time= 27/06/2026 12:34:44
[2026-06-27 12:34:44,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:34:44,200.200 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:34:44,265.265 INFO    ] No existing commands found in stream
[2026-06-27 12:34:49,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:34:49,279.279 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-27 12:34:52,130.130 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 12:34:52,132.132 INFO    ] Checking for system updates...
[2026-06-27 12:34:52,153.153 INFO    ] 200
[2026-06-27 12:34:52,154.154 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:34:52,185.185 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:34:52,186.186 INFO    ] No update needed
[2026-06-27 12:34:52,188.188 INFO    ] Checking for camera pi updates...
[2026-06-27 12:34:52,210.210 INFO    ] 200
[2026-06-27 12:34:52,211.211 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:34:52,235.235 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:34:52,284.284 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:34:52,286.286 INFO    ] No camera update needed
[2026-06-27 12:34:52,287.287 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:34:52,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:34:52,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:34:52,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:34:54,335.335 INFO    ] ================================================
[2026-06-27 12:34:54,351.351 INFO    ] Launching Daemon at Sat Jun 27 12:34:54 IST 2026
[2026-06-27 12:34:54,362.362 INFO    ] ================================================
[2026-06-27 12:34:54,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:34:54
[2026-06-27 12:34:55,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:34:55,198.198 INFO    ] Initializing speech engine...
[2026-06-27 12:34:55,202.202 INFO    ] 2026-06-27 12:34:55
[2026-06-27 12:34:55,421.421 INFO    ] 2026-06-27 12:34:55
[2026-06-27 12:34:55,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:34:55,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:34:55,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:34:55,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:34:55,849.849 INFO    ] time= 27/06/2026 12:34:55
[2026-06-27 12:34:55,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:34:55,880.880 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:34:55,946.946 INFO    ] No existing commands found in stream
[2026-06-27 12:35:00,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:35:00,959.959 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-27 12:35:04,197.197 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:35:04,199.199 INFO    ] Checking for system updates...
[2026-06-27 12:35:04,220.220 INFO    ] 200
[2026-06-27 12:35:04,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:35:04,251.251 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:35:04,253.253 INFO    ] No update needed
[2026-06-27 12:35:04,254.254 INFO    ] Checking for camera pi updates...
[2026-06-27 12:35:04,276.276 INFO    ] 200
[2026-06-27 12:35:04,277.277 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:35:04,301.301 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:35:04,337.337 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:35:04,338.338 INFO    ] No camera update needed
[2026-06-27 12:35:04,340.340 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:35:04,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:35:04,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:35:04,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:35:06,389.389 INFO    ] ================================================
[2026-06-27 12:35:06,405.405 INFO    ] Launching Daemon at Sat Jun 27 12:35:06 IST 2026
[2026-06-27 12:35:06,416.416 INFO    ] ================================================
[2026-06-27 12:35:06,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:35:06
[2026-06-27 12:35:07,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:35:07,202.202 INFO    ] Initializing speech engine...
[2026-06-27 12:35:07,208.208 INFO    ] 2026-06-27 12:35:07
[2026-06-27 12:35:07,415.415 INFO    ] 2026-06-27 12:35:07
[2026-06-27 12:35:07,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:35:07,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:35:07,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:35:07,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:35:07,861.861 INFO    ] time= 27/06/2026 12:35:07
[2026-06-27 12:35:07,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:35:07,873.873 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:35:07,940.940 INFO    ] No existing commands found in stream
[2026-06-27 12:35:12,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:35:12,953.953 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-27 12:35:16,764.764 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:35:16,767.767 INFO    ] Checking for system updates...
[2026-06-27 12:35:16,802.802 INFO    ] 200
[2026-06-27 12:35:16,805.805 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:35:16,856.856 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:35:16,858.858 INFO    ] No update needed
[2026-06-27 12:35:16,859.859 INFO    ] Checking for camera pi updates...
[2026-06-27 12:35:16,879.879 INFO    ] 200
[2026-06-27 12:35:16,880.880 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:35:16,903.903 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:35:16,941.941 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:35:16,943.943 INFO    ] No camera update needed
[2026-06-27 12:35:16,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:35:16,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:35:16,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:35:16,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:35:18,991.991 INFO    ] ================================================
[2026-06-27 12:35:19,006.006 INFO    ] Launching Daemon at Sat Jun 27 12:35:19 IST 2026
[2026-06-27 12:35:19,017.017 INFO    ] ================================================
[2026-06-27 12:35:19,370.370 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:35:19
[2026-06-27 12:35:19,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:35:19,813.813 INFO    ] Initializing speech engine...
[2026-06-27 12:35:19,816.816 INFO    ] 2026-06-27 12:35:19
[2026-06-27 12:35:20,039.039 INFO    ] 2026-06-27 12:35:20
[2026-06-27 12:35:20,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:35:20,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:35:20,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:35:20,400.400 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:35:20,469.469 INFO    ] time= 27/06/2026 12:35:20
[2026-06-27 12:35:20,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:35:20,500.500 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:35:20,567.567 INFO    ] No existing commands found in stream
[2026-06-27 12:35:25,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:35:25,581.581 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-27 12:35:27,516.516 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 12:35:27,517.517 INFO    ] Checking for system updates...
[2026-06-27 12:35:27,539.539 INFO    ] 200
[2026-06-27 12:35:27,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:35:27,574.574 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:35:27,575.575 INFO    ] No update needed
[2026-06-27 12:35:27,577.577 INFO    ] Checking for camera pi updates...
[2026-06-27 12:35:27,596.596 INFO    ] 200
[2026-06-27 12:35:27,597.597 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:35:27,620.620 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:35:27,658.658 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:35:27,660.660 INFO    ] No camera update needed
[2026-06-27 12:35:27,661.661 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:35:27,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:35:27,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:35:27,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:35:29,709.709 INFO    ] ================================================
[2026-06-27 12:35:29,724.724 INFO    ] Launching Daemon at Sat Jun 27 12:35:29 IST 2026
[2026-06-27 12:35:29,735.735 INFO    ] ================================================
[2026-06-27 12:35:30,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:35:30
[2026-06-27 12:35:30,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:35:30,532.532 INFO    ] Initializing speech engine...
[2026-06-27 12:35:30,537.537 INFO    ] 2026-06-27 12:35:30
[2026-06-27 12:35:30,743.743 INFO    ] 2026-06-27 12:35:30
[2026-06-27 12:35:30,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:35:30,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:35:30,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:35:31,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:35:31,182.182 INFO    ] time= 27/06/2026 12:35:31
[2026-06-27 12:35:31,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:35:31,190.190 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:35:31,256.256 INFO    ] No existing commands found in stream
[2026-06-27 12:35:36,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:35:36,269.269 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-27 12:35:39,147.147 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 12:35:39,149.149 INFO    ] Checking for system updates...
[2026-06-27 12:35:39,169.169 INFO    ] 200
[2026-06-27 12:35:39,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:35:39,204.204 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:35:39,205.205 INFO    ] No update needed
[2026-06-27 12:35:39,206.206 INFO    ] Checking for camera pi updates...
[2026-06-27 12:35:39,226.226 INFO    ] 200
[2026-06-27 12:35:39,227.227 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:35:39,251.251 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:35:39,288.288 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:35:39,290.290 INFO    ] No camera update needed
[2026-06-27 12:35:39,291.291 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:35:39,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:35:39,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:35:39,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:35:41,339.339 INFO    ] ================================================
[2026-06-27 12:35:41,355.355 INFO    ] Launching Daemon at Sat Jun 27 12:35:41 IST 2026
[2026-06-27 12:35:41,366.366 INFO    ] ================================================
[2026-06-27 12:35:41,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:35:41
[2026-06-27 12:35:42,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:35:42,216.216 INFO    ] Initializing speech engine...
[2026-06-27 12:35:42,221.221 INFO    ] 2026-06-27 12:35:42
[2026-06-27 12:35:42,427.427 INFO    ] 2026-06-27 12:35:42
[2026-06-27 12:35:42,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:35:42,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:35:42,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:35:42,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:35:42,838.838 INFO    ] time= 27/06/2026 12:35:42
[2026-06-27 12:35:42,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:35:42,873.873 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:35:42,944.944 INFO    ] No existing commands found in stream
[2026-06-27 12:35:47,954.954 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:35:47,957.957 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-27 12:35:51,044.044 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:35:51,046.046 INFO    ] Checking for system updates...
[2026-06-27 12:35:51,067.067 INFO    ] 200
[2026-06-27 12:35:51,069.069 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:35:51,102.102 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:35:51,103.103 INFO    ] No update needed
[2026-06-27 12:35:51,105.105 INFO    ] Checking for camera pi updates...
[2026-06-27 12:35:51,127.127 INFO    ] 200
[2026-06-27 12:35:51,128.128 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:35:51,157.157 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:35:51,208.208 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:35:51,209.209 INFO    ] No camera update needed
[2026-06-27 12:35:51,211.211 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:35:51,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:35:51,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:35:51,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:35:53,259.259 INFO    ] ================================================
[2026-06-27 12:35:53,274.274 INFO    ] Launching Daemon at Sat Jun 27 12:35:53 IST 2026
[2026-06-27 12:35:53,285.285 INFO    ] ================================================
[2026-06-27 12:35:53,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:35:53
[2026-06-27 12:35:54,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:35:54,154.154 INFO    ] Initializing speech engine...
[2026-06-27 12:35:54,159.159 INFO    ] 2026-06-27 12:35:54
[2026-06-27 12:35:54,366.366 INFO    ] 2026-06-27 12:35:54
[2026-06-27 12:35:54,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:35:54,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:35:54,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:35:54,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:35:54,788.788 INFO    ] time= 27/06/2026 12:35:54
[2026-06-27 12:35:54,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:35:54,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:35:54,883.883 INFO    ] No existing commands found in stream
[2026-06-27 12:35:59,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:35:59,898.898 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-27 12:36:04,012.012 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 12:36:04,014.014 INFO    ] Checking for system updates...
[2026-06-27 12:36:04,036.036 INFO    ] 200
[2026-06-27 12:36:04,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:36:04,069.069 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:36:04,071.071 INFO    ] No update needed
[2026-06-27 12:36:04,072.072 INFO    ] Checking for camera pi updates...
[2026-06-27 12:36:04,093.093 INFO    ] 200
[2026-06-27 12:36:04,095.095 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:36:04,119.119 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:36:04,169.169 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:36:04,170.170 INFO    ] No camera update needed
[2026-06-27 12:36:04,171.171 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:36:04,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:36:04,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:36:04,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:36:06,217.217 INFO    ] ================================================
[2026-06-27 12:36:06,232.232 INFO    ] Launching Daemon at Sat Jun 27 12:36:06 IST 2026
[2026-06-27 12:36:06,244.244 INFO    ] ================================================
[2026-06-27 12:36:06,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:36:06
[2026-06-27 12:36:06,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:36:07,053.053 INFO    ] Initializing speech engine...
[2026-06-27 12:36:07,059.059 INFO    ] 2026-06-27 12:36:07
[2026-06-27 12:36:07,273.273 INFO    ] 2026-06-27 12:36:07
[2026-06-27 12:36:07,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:36:07,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:36:07,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:36:07,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:36:07,701.701 INFO    ] time= 27/06/2026 12:36:07
[2026-06-27 12:36:07,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:36:07,731.731 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:36:07,799.799 INFO    ] No existing commands found in stream
[2026-06-27 12:36:12,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:36:12,812.812 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-27 12:36:15,941.941 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:36:15,943.943 INFO    ] Checking for system updates...
[2026-06-27 12:36:15,965.965 INFO    ] 200
[2026-06-27 12:36:15,966.966 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:36:15,997.997 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:36:15,999.999 INFO    ] No update needed
[2026-06-27 12:36:16,000.000 INFO    ] Checking for camera pi updates...
[2026-06-27 12:36:16,020.020 INFO    ] 200
[2026-06-27 12:36:16,022.022 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:36:16,046.046 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:36:16,189.189 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:36:16,191.191 INFO    ] No camera update needed
[2026-06-27 12:36:16,192.192 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:36:16,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:36:16,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:36:16,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:36:18,238.238 INFO    ] ================================================
[2026-06-27 12:36:18,253.253 INFO    ] Launching Daemon at Sat Jun 27 12:36:18 IST 2026
[2026-06-27 12:36:18,264.264 INFO    ] ================================================
[2026-06-27 12:36:18,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:36:18
[2026-06-27 12:36:18,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:36:19,085.085 INFO    ] Initializing speech engine...
[2026-06-27 12:36:19,090.090 INFO    ] 2026-06-27 12:36:19
[2026-06-27 12:36:19,297.297 INFO    ] 2026-06-27 12:36:19
[2026-06-27 12:36:19,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:36:19,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:36:19,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:36:19,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:36:19,705.705 INFO    ] time= 27/06/2026 12:36:19
[2026-06-27 12:36:19,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:36:19,751.751 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:36:19,822.822 INFO    ] No existing commands found in stream
[2026-06-27 12:36:24,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:36:24,836.836 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-27 12:36:28,742.742 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:36:28,743.743 INFO    ] Checking for system updates...
[2026-06-27 12:36:28,764.764 INFO    ] 200
[2026-06-27 12:36:28,766.766 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:36:28,796.796 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:36:28,797.797 INFO    ] No update needed
[2026-06-27 12:36:28,799.799 INFO    ] Checking for camera pi updates...
[2026-06-27 12:36:28,818.818 INFO    ] 200
[2026-06-27 12:36:28,819.819 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:36:28,845.845 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:36:28,883.883 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:36:28,885.885 INFO    ] No camera update needed
[2026-06-27 12:36:28,886.886 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:36:28,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:36:28,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:36:28,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:36:30,931.931 INFO    ] ================================================
[2026-06-27 12:36:30,946.946 INFO    ] Launching Daemon at Sat Jun 27 12:36:30 IST 2026
[2026-06-27 12:36:30,958.958 INFO    ] ================================================
[2026-06-27 12:36:31,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:36:31
[2026-06-27 12:36:31,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:36:31,816.816 INFO    ] Initializing speech engine...
[2026-06-27 12:36:31,824.824 INFO    ] 2026-06-27 12:36:31
[2026-06-27 12:36:32,061.061 INFO    ] 2026-06-27 12:36:32
[2026-06-27 12:36:32,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:36:32,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:36:32,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:36:32,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:36:32,497.497 INFO    ] time= 27/06/2026 12:36:32
[2026-06-27 12:36:32,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:36:32,543.543 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:36:32,635.635 INFO    ] No existing commands found in stream
[2026-06-27 12:36:37,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:36:37,653.653 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-27 12:36:41,665.665 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:36:41,667.667 INFO    ] Checking for system updates...
[2026-06-27 12:36:41,688.688 INFO    ] 200
[2026-06-27 12:36:41,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:36:41,722.722 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:36:41,723.723 INFO    ] No update needed
[2026-06-27 12:36:41,725.725 INFO    ] Checking for camera pi updates...
[2026-06-27 12:36:41,745.745 INFO    ] 200
[2026-06-27 12:36:41,746.746 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:36:41,770.770 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:36:41,806.806 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:36:41,808.808 INFO    ] No camera update needed
[2026-06-27 12:36:41,809.809 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:36:41,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:36:41,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:36:41,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:36:43,857.857 INFO    ] ================================================
[2026-06-27 12:36:43,873.873 INFO    ] Launching Daemon at Sat Jun 27 12:36:43 IST 2026
[2026-06-27 12:36:43,884.884 INFO    ] ================================================
[2026-06-27 12:36:44,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:36:44
[2026-06-27 12:36:44,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:36:44,686.686 INFO    ] Initializing speech engine...
[2026-06-27 12:36:44,695.695 INFO    ] 2026-06-27 12:36:44
[2026-06-27 12:36:44,901.901 INFO    ] 2026-06-27 12:36:44
[2026-06-27 12:36:44,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:36:45,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:36:45,121.121 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:36:45,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:36:45,320.320 INFO    ] time= 27/06/2026 12:36:45
[2026-06-27 12:36:45,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:36:45,349.349 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:36:45,416.416 INFO    ] No existing commands found in stream
[2026-06-27 12:36:50,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:36:50,428.428 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-27 12:36:53,446.446 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 12:36:53,447.447 INFO    ] Checking for system updates...
[2026-06-27 12:36:53,468.468 INFO    ] 200
[2026-06-27 12:36:53,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:36:53,503.503 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:36:53,504.504 INFO    ] No update needed
[2026-06-27 12:36:53,506.506 INFO    ] Checking for camera pi updates...
[2026-06-27 12:36:53,525.525 INFO    ] 200
[2026-06-27 12:36:53,527.527 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:36:53,550.550 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:36:53,590.590 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:36:53,592.592 INFO    ] No camera update needed
[2026-06-27 12:36:53,593.593 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:36:53,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:36:53,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:36:53,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:36:55,640.640 INFO    ] ================================================
[2026-06-27 12:36:55,655.655 INFO    ] Launching Daemon at Sat Jun 27 12:36:55 IST 2026
[2026-06-27 12:36:55,665.665 INFO    ] ================================================
[2026-06-27 12:36:56,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:36:56
[2026-06-27 12:36:56,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:36:56,478.478 INFO    ] Initializing speech engine...
[2026-06-27 12:36:56,487.487 INFO    ] 2026-06-27 12:36:56
[2026-06-27 12:36:56,692.692 INFO    ] 2026-06-27 12:36:56
[2026-06-27 12:36:56,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:36:56,907.907 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:36:56,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:36:57,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:36:57,134.134 INFO    ] time= 27/06/2026 12:36:57
[2026-06-27 12:36:57,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:36:57,142.142 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:36:57,209.209 INFO    ] No existing commands found in stream
[2026-06-27 12:37:02,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:37:02,217.217 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-27 12:37:06,565.565 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:37:06,566.566 INFO    ] Checking for system updates...
[2026-06-27 12:37:06,587.587 INFO    ] 200
[2026-06-27 12:37:06,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:37:06,621.621 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:37:06,623.623 INFO    ] No update needed
[2026-06-27 12:37:06,624.624 INFO    ] Checking for camera pi updates...
[2026-06-27 12:37:06,644.644 INFO    ] 200
[2026-06-27 12:37:06,645.645 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:37:06,670.670 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:37:06,716.716 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:37:06,718.718 INFO    ] No camera update needed
[2026-06-27 12:37:06,719.719 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:37:06,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:37:06,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:37:06,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:37:08,766.766 INFO    ] ================================================
[2026-06-27 12:37:08,781.781 INFO    ] Launching Daemon at Sat Jun 27 12:37:08 IST 2026
[2026-06-27 12:37:08,792.792 INFO    ] ================================================
[2026-06-27 12:37:09,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:37:09
[2026-06-27 12:37:09,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:37:09,586.586 INFO    ] Initializing speech engine...
[2026-06-27 12:37:09,591.591 INFO    ] 2026-06-27 12:37:09
[2026-06-27 12:37:09,797.797 INFO    ] 2026-06-27 12:37:09
[2026-06-27 12:37:09,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:37:10,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:37:10,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:37:10,146.146 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:37:10,212.212 INFO    ] time= 27/06/2026 12:37:10
[2026-06-27 12:37:10,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:37:10,246.246 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:37:10,312.312 INFO    ] No existing commands found in stream
[2026-06-27 12:37:15,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:37:15,325.325 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-27 12:37:15,838.838 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 12:37:15,840.840 INFO    ] Checking for system updates...
[2026-06-27 12:37:15,862.862 INFO    ] 200
[2026-06-27 12:37:15,863.863 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:37:15,894.894 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:37:15,896.896 INFO    ] No update needed
[2026-06-27 12:37:15,897.897 INFO    ] Checking for camera pi updates...
[2026-06-27 12:37:15,917.917 INFO    ] 200
[2026-06-27 12:37:15,918.918 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:37:15,943.943 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:37:15,994.994 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:37:15,996.996 INFO    ] No camera update needed
[2026-06-27 12:37:15,997.997 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:37:15,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:37:16,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:37:16,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:37:18,045.045 INFO    ] ================================================
[2026-06-27 12:37:18,064.064 INFO    ] Launching Daemon at Sat Jun 27 12:37:18 IST 2026
[2026-06-27 12:37:18,075.075 INFO    ] ================================================
[2026-06-27 12:37:18,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:37:18
[2026-06-27 12:37:18,812.812 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:37:18,951.951 INFO    ] Initializing speech engine...
[2026-06-27 12:37:18,964.964 INFO    ] 2026-06-27 12:37:18
[2026-06-27 12:37:19,187.187 INFO    ] 2026-06-27 12:37:19
[2026-06-27 12:37:19,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:37:19,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:37:19,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:37:19,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:37:19,626.626 INFO    ] time= 27/06/2026 12:37:19
[2026-06-27 12:37:19,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:37:19,673.673 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:37:19,751.751 INFO    ] No existing commands found in stream
[2026-06-27 12:37:24,760.760 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:37:24,763.763 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-27 12:37:28,511.511 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 12:37:28,513.513 INFO    ] Checking for system updates...
[2026-06-27 12:37:28,535.535 INFO    ] 200
[2026-06-27 12:37:28,536.536 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:37:28,566.566 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:37:28,568.568 INFO    ] No update needed
[2026-06-27 12:37:28,569.569 INFO    ] Checking for camera pi updates...
[2026-06-27 12:37:28,588.588 INFO    ] 200
[2026-06-27 12:37:28,590.590 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:37:28,617.617 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:37:28,657.657 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:37:28,659.659 INFO    ] No camera update needed
[2026-06-27 12:37:28,660.660 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:37:28,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:37:28,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:37:28,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:37:30,725.725 INFO    ] ================================================
[2026-06-27 12:37:30,740.740 INFO    ] Launching Daemon at Sat Jun 27 12:37:30 IST 2026
[2026-06-27 12:37:30,751.751 INFO    ] ================================================
[2026-06-27 12:37:31,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:37:31
[2026-06-27 12:37:31,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:37:31,573.573 INFO    ] Initializing speech engine...
[2026-06-27 12:37:31,578.578 INFO    ] 2026-06-27 12:37:31
[2026-06-27 12:37:31,779.779 INFO    ] 2026-06-27 12:37:31
[2026-06-27 12:37:31,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:37:32,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:37:32,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:37:32,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:37:32,261.261 INFO    ] time= 27/06/2026 12:37:32
[2026-06-27 12:37:32,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:37:32,310.310 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:37:32,380.380 INFO    ] No existing commands found in stream
[2026-06-27 12:37:37,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:37:37,397.397 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-27 12:37:39,633.633 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 12:37:39,635.635 INFO    ] Checking for system updates...
[2026-06-27 12:37:39,657.657 INFO    ] 200
[2026-06-27 12:37:39,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:37:39,689.689 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:37:39,690.690 INFO    ] No update needed
[2026-06-27 12:37:39,692.692 INFO    ] Checking for camera pi updates...
[2026-06-27 12:37:39,712.712 INFO    ] 200
[2026-06-27 12:37:39,713.713 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:37:39,738.738 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:37:39,780.780 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:37:39,781.781 INFO    ] No camera update needed
[2026-06-27 12:37:39,782.782 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:37:39,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:37:39,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:37:39,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:37:41,829.829 INFO    ] ================================================
[2026-06-27 12:37:41,845.845 INFO    ] Launching Daemon at Sat Jun 27 12:37:41 IST 2026
[2026-06-27 12:37:41,855.855 INFO    ] ================================================
[2026-06-27 12:37:42,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:37:42
[2026-06-27 12:37:42,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:37:42,669.669 INFO    ] Initializing speech engine...
[2026-06-27 12:37:42,677.677 INFO    ] 2026-06-27 12:37:42
[2026-06-27 12:37:42,890.890 INFO    ] 2026-06-27 12:37:42
[2026-06-27 12:37:42,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:37:43,104.104 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:37:43,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:37:43,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:37:43,330.330 INFO    ] time= 27/06/2026 12:37:43
[2026-06-27 12:37:43,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:37:43,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:37:43,408.408 INFO    ] No existing commands found in stream
[2026-06-27 12:37:48,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:37:48,420.420 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-27 12:37:50,747.747 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:37:50,748.748 INFO    ] Checking for system updates...
[2026-06-27 12:37:50,770.770 INFO    ] 200
[2026-06-27 12:37:50,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:37:50,803.803 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:37:50,804.804 INFO    ] No update needed
[2026-06-27 12:37:50,805.805 INFO    ] Checking for camera pi updates...
[2026-06-27 12:37:50,829.829 INFO    ] 200
[2026-06-27 12:37:50,830.830 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:37:50,854.854 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:37:50,890.890 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:37:50,892.892 INFO    ] No camera update needed
[2026-06-27 12:37:50,893.893 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:37:50,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:37:50,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:37:50,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:37:52,938.938 INFO    ] ================================================
[2026-06-27 12:37:52,954.954 INFO    ] Launching Daemon at Sat Jun 27 12:37:52 IST 2026
[2026-06-27 12:37:52,965.965 INFO    ] ================================================
[2026-06-27 12:37:53,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:37:53
[2026-06-27 12:37:53,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:37:53,764.764 INFO    ] Initializing speech engine...
[2026-06-27 12:37:53,774.774 INFO    ] 2026-06-27 12:37:53
[2026-06-27 12:37:53,981.981 INFO    ] 2026-06-27 12:37:53
[2026-06-27 12:37:54,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:37:55,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:37:55,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:37:55,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:37:55,391.391 INFO    ] time= 27/06/2026 12:37:55
[2026-06-27 12:37:55,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:37:55,398.398 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:37:55,446.446 INFO    ] No existing commands found in stream
[2026-06-27 12:38:00,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:38:00,457.457 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-27 12:38:01,799.799 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:38:01,801.801 INFO    ] Checking for system updates...
[2026-06-27 12:38:01,822.822 INFO    ] 200
[2026-06-27 12:38:01,823.823 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:38:01,854.854 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:38:01,856.856 INFO    ] No update needed
[2026-06-27 12:38:01,857.857 INFO    ] Checking for camera pi updates...
[2026-06-27 12:38:01,887.887 INFO    ] 200
[2026-06-27 12:38:01,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:38:01,951.951 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:38:02,000.000 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:38:02,002.002 INFO    ] No camera update needed
[2026-06-27 12:38:02,005.005 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:38:02,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:38:02,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:38:02,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:38:04,054.054 INFO    ] ================================================
[2026-06-27 12:38:04,069.069 INFO    ] Launching Daemon at Sat Jun 27 12:38:04 IST 2026
[2026-06-27 12:38:04,080.080 INFO    ] ================================================
[2026-06-27 12:38:04,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:38:04
[2026-06-27 12:38:04,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:38:04,925.925 INFO    ] Initializing speech engine...
[2026-06-27 12:38:04,935.935 INFO    ] 2026-06-27 12:38:04
[2026-06-27 12:38:05,144.144 INFO    ] 2026-06-27 12:38:05
[2026-06-27 12:38:05,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:38:05,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:38:05,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:38:05,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:38:05,587.587 INFO    ] time= 27/06/2026 12:38:05
[2026-06-27 12:38:05,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:38:05,657.657 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:38:05,782.782 INFO    ] No existing commands found in stream
[2026-06-27 12:38:10,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:38:10,796.796 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-27 12:38:14,198.198 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 12:38:14,199.199 INFO    ] Checking for system updates...
[2026-06-27 12:38:14,220.220 INFO    ] 200
[2026-06-27 12:38:14,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:38:14,254.254 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:38:14,256.256 INFO    ] No update needed
[2026-06-27 12:38:14,257.257 INFO    ] Checking for camera pi updates...
[2026-06-27 12:38:14,280.280 INFO    ] 200
[2026-06-27 12:38:14,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:38:14,309.309 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:38:14,356.356 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:38:14,358.358 INFO    ] No camera update needed
[2026-06-27 12:38:14,359.359 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:38:14,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:38:14,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:38:14,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:38:16,407.407 INFO    ] ================================================
[2026-06-27 12:38:16,423.423 INFO    ] Launching Daemon at Sat Jun 27 12:38:16 IST 2026
[2026-06-27 12:38:16,434.434 INFO    ] ================================================
[2026-06-27 12:38:16,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:38:16
[2026-06-27 12:38:17,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:38:17,243.243 INFO    ] Initializing speech engine...
[2026-06-27 12:38:17,249.249 INFO    ] 2026-06-27 12:38:17
[2026-06-27 12:38:17,458.458 INFO    ] 2026-06-27 12:38:17
[2026-06-27 12:38:17,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:38:17,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:38:17,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:38:17,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:38:17,878.878 INFO    ] time= 27/06/2026 12:38:17
[2026-06-27 12:38:17,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:38:17,909.909 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:38:17,998.998 INFO    ] No existing commands found in stream
[2026-06-27 12:38:23,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:38:23,009.009 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-27 12:38:23,412.412 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:38:23,414.414 INFO    ] Checking for system updates...
[2026-06-27 12:38:23,435.435 INFO    ] 200
[2026-06-27 12:38:23,436.436 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:38:23,466.466 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:38:23,467.467 INFO    ] No update needed
[2026-06-27 12:38:23,469.469 INFO    ] Checking for camera pi updates...
[2026-06-27 12:38:23,488.488 INFO    ] 200
[2026-06-27 12:38:23,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:38:23,512.512 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:38:23,656.656 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:38:23,657.657 INFO    ] No camera update needed
[2026-06-27 12:38:23,658.658 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:38:23,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:38:23,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:38:23,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:38:25,701.701 INFO    ] ================================================
[2026-06-27 12:38:25,717.717 INFO    ] Launching Daemon at Sat Jun 27 12:38:25 IST 2026
[2026-06-27 12:38:25,728.728 INFO    ] ================================================
[2026-06-27 12:38:26,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:38:26
[2026-06-27 12:38:26,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:38:26,496.496 INFO    ] Initializing speech engine...
[2026-06-27 12:38:26,504.504 INFO    ] 2026-06-27 12:38:26
[2026-06-27 12:38:26,717.717 INFO    ] 2026-06-27 12:38:26
[2026-06-27 12:38:26,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:38:26,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:38:26,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:38:27,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:38:27,132.132 INFO    ] time= 27/06/2026 12:38:27
[2026-06-27 12:38:27,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:38:27,162.162 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:38:27,252.252 INFO    ] No existing commands found in stream
[2026-06-27 12:38:32,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:38:32,257.257 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-27 12:38:33,554.554 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:38:33,556.556 INFO    ] Checking for system updates...
[2026-06-27 12:38:33,576.576 INFO    ] 200
[2026-06-27 12:38:33,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:38:33,610.610 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:38:33,612.612 INFO    ] No update needed
[2026-06-27 12:38:33,613.613 INFO    ] Checking for camera pi updates...
[2026-06-27 12:38:33,633.633 INFO    ] 200
[2026-06-27 12:38:33,634.634 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:38:33,660.660 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:38:33,704.704 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:38:33,706.706 INFO    ] No camera update needed
[2026-06-27 12:38:33,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:38:33,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:38:33,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:38:33,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:38:35,755.755 INFO    ] ================================================
[2026-06-27 12:38:35,771.771 INFO    ] Launching Daemon at Sat Jun 27 12:38:35 IST 2026
[2026-06-27 12:38:35,782.782 INFO    ] ================================================
[2026-06-27 12:38:36,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:38:36
[2026-06-27 12:38:36,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:38:36,586.586 INFO    ] Initializing speech engine...
[2026-06-27 12:38:36,591.591 INFO    ] 2026-06-27 12:38:36
[2026-06-27 12:38:36,795.795 INFO    ] 2026-06-27 12:38:36
[2026-06-27 12:38:36,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:38:37,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:38:37,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:38:37,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:38:37,212.212 INFO    ] time= 27/06/2026 12:38:37
[2026-06-27 12:38:37,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:38:37,245.245 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:38:37,312.312 INFO    ] No existing commands found in stream
[2026-06-27 12:38:42,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:38:42,325.325 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-27 12:38:44,507.507 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:38:44,509.509 INFO    ] Checking for system updates...
[2026-06-27 12:38:44,530.530 INFO    ] 200
[2026-06-27 12:38:44,532.532 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:38:44,562.562 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:38:44,564.564 INFO    ] No update needed
[2026-06-27 12:38:44,565.565 INFO    ] Checking for camera pi updates...
[2026-06-27 12:38:44,585.585 INFO    ] 200
[2026-06-27 12:38:44,586.586 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:38:44,610.610 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:38:44,649.649 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:38:44,650.650 INFO    ] No camera update needed
[2026-06-27 12:38:44,652.652 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:38:44,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:38:44,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:38:44,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:38:46,700.700 INFO    ] ================================================
[2026-06-27 12:38:46,716.716 INFO    ] Launching Daemon at Sat Jun 27 12:38:46 IST 2026
[2026-06-27 12:38:46,726.726 INFO    ] ================================================
[2026-06-27 12:38:47,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:38:47
[2026-06-27 12:38:47,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:38:47,594.594 INFO    ] Initializing speech engine...
[2026-06-27 12:38:47,600.600 INFO    ] 2026-06-27 12:38:47
[2026-06-27 12:38:47,810.810 INFO    ] 2026-06-27 12:38:47
[2026-06-27 12:38:47,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:38:48,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:38:48,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:38:48,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:38:48,233.233 INFO    ] time= 27/06/2026 12:38:48
[2026-06-27 12:38:48,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:38:48,262.262 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:38:48,329.329 INFO    ] No existing commands found in stream
[2026-06-27 12:38:53,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:38:53,340.340 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-27 12:38:55,162.162 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:38:55,165.165 INFO    ] Checking for system updates...
[2026-06-27 12:38:55,203.203 INFO    ] 200
[2026-06-27 12:38:55,205.205 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:38:55,238.238 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:38:55,240.240 INFO    ] No update needed
[2026-06-27 12:38:55,241.241 INFO    ] Checking for camera pi updates...
[2026-06-27 12:38:55,261.261 INFO    ] 200
[2026-06-27 12:38:55,263.263 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:38:55,286.286 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:38:55,308.308 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:38:55,310.310 INFO    ] No camera update needed
[2026-06-27 12:38:55,311.311 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:38:55,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:38:55,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:38:55,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:38:57,351.351 INFO    ] ================================================
[2026-06-27 12:38:57,361.361 INFO    ] Launching Daemon at Sat Jun 27 12:38:57 IST 2026
[2026-06-27 12:38:57,368.368 INFO    ] ================================================
[2026-06-27 12:38:57,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:38:57
[2026-06-27 12:38:58,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:38:58,189.189 INFO    ] Initializing speech engine...
[2026-06-27 12:38:58,203.203 INFO    ] 2026-06-27 12:38:58
[2026-06-27 12:38:58,426.426 INFO    ] 2026-06-27 12:38:58
[2026-06-27 12:38:58,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:38:58,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:38:58,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:38:58,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:38:58,841.841 INFO    ] time= 27/06/2026 12:38:58
[2026-06-27 12:38:58,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:38:58,879.879 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:38:58,946.946 INFO    ] No existing commands found in stream
[2026-06-27 12:39:03,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:39:03,958.958 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-27 12:39:07,815.815 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 12:39:07,816.816 INFO    ] Checking for system updates...
[2026-06-27 12:39:07,837.837 INFO    ] 200
[2026-06-27 12:39:07,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:39:07,868.868 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:39:07,870.870 INFO    ] No update needed
[2026-06-27 12:39:07,871.871 INFO    ] Checking for camera pi updates...
[2026-06-27 12:39:07,890.890 INFO    ] 200
[2026-06-27 12:39:07,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:39:07,915.915 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:39:07,954.954 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:39:07,956.956 INFO    ] No camera update needed
[2026-06-27 12:39:07,957.957 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:39:07,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:39:07,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:39:07,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:39:10,004.004 INFO    ] ================================================
[2026-06-27 12:39:10,018.018 INFO    ] Launching Daemon at Sat Jun 27 12:39:10 IST 2026
[2026-06-27 12:39:10,029.029 INFO    ] ================================================
[2026-06-27 12:39:10,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:39:10
[2026-06-27 12:39:10,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:39:10,841.841 INFO    ] Initializing speech engine...
[2026-06-27 12:39:10,849.849 INFO    ] 2026-06-27 12:39:10
[2026-06-27 12:39:11,069.069 INFO    ] 2026-06-27 12:39:11
[2026-06-27 12:39:11,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:39:11,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:39:11,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:39:11,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:39:11,490.490 INFO    ] time= 27/06/2026 12:39:11
[2026-06-27 12:39:11,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:39:11,531.531 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:39:11,598.598 INFO    ] No existing commands found in stream
[2026-06-27 12:39:16,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:39:16,611.611 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-27 12:39:17,122.122 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 12:39:17,124.124 INFO    ] Checking for system updates...
[2026-06-27 12:39:17,148.148 INFO    ] 200
[2026-06-27 12:39:17,149.149 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:39:17,181.181 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:39:17,183.183 INFO    ] No update needed
[2026-06-27 12:39:17,184.184 INFO    ] Checking for camera pi updates...
[2026-06-27 12:39:17,204.204 INFO    ] 200
[2026-06-27 12:39:17,205.205 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:39:17,228.228 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:39:17,265.265 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:39:17,266.266 INFO    ] No camera update needed
[2026-06-27 12:39:17,268.268 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:39:17,269.269 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:39:17,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:39:17,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:39:19,314.314 INFO    ] ================================================
[2026-06-27 12:39:19,330.330 INFO    ] Launching Daemon at Sat Jun 27 12:39:19 IST 2026
[2026-06-27 12:39:19,346.346 INFO    ] ================================================
[2026-06-27 12:39:19,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:39:19
[2026-06-27 12:39:20,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:39:20,152.152 INFO    ] Initializing speech engine...
[2026-06-27 12:39:20,158.158 INFO    ] 2026-06-27 12:39:20
[2026-06-27 12:39:20,361.361 INFO    ] 2026-06-27 12:39:20
[2026-06-27 12:39:20,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:39:20,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:39:20,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:39:20,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:39:20,782.782 INFO    ] time= 27/06/2026 12:39:20
[2026-06-27 12:39:20,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:39:20,809.809 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:39:20,874.874 INFO    ] No existing commands found in stream
[2026-06-27 12:39:25,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:39:25,888.888 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-27 12:39:27,142.142 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:39:27,143.143 INFO    ] Checking for system updates...
[2026-06-27 12:39:27,164.164 INFO    ] 200
[2026-06-27 12:39:27,166.166 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:39:27,198.198 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:39:27,199.199 INFO    ] No update needed
[2026-06-27 12:39:27,201.201 INFO    ] Checking for camera pi updates...
[2026-06-27 12:39:27,220.220 INFO    ] 200
[2026-06-27 12:39:27,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:39:27,245.245 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:39:27,294.294 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:39:27,296.296 INFO    ] No camera update needed
[2026-06-27 12:39:27,297.297 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:39:27,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:39:27,301.301 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:39:27,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:39:29,342.342 INFO    ] ================================================
[2026-06-27 12:39:29,357.357 INFO    ] Launching Daemon at Sat Jun 27 12:39:29 IST 2026
[2026-06-27 12:39:29,367.367 INFO    ] ================================================
[2026-06-27 12:39:29,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:39:29
[2026-06-27 12:39:30,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:39:30,158.158 INFO    ] Initializing speech engine...
[2026-06-27 12:39:30,168.168 INFO    ] 2026-06-27 12:39:30
[2026-06-27 12:39:30,371.371 INFO    ] 2026-06-27 12:39:30
[2026-06-27 12:39:30,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:39:30,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:39:30,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:39:30,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:39:30,792.792 INFO    ] time= 27/06/2026 12:39:30
[2026-06-27 12:39:30,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:39:30,820.820 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:39:30,885.885 INFO    ] No existing commands found in stream
[2026-06-27 12:39:35,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:39:35,898.898 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-27 12:39:39,233.233 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:39:39,234.234 INFO    ] Checking for system updates...
[2026-06-27 12:39:39,255.255 INFO    ] 200
[2026-06-27 12:39:39,257.257 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:39:39,289.289 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:39:39,290.290 INFO    ] No update needed
[2026-06-27 12:39:39,292.292 INFO    ] Checking for camera pi updates...
[2026-06-27 12:39:39,311.311 INFO    ] 200
[2026-06-27 12:39:39,312.312 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:39:39,338.338 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:39:39,376.376 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:39:39,377.377 INFO    ] No camera update needed
[2026-06-27 12:39:39,378.378 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:39:39,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:39:39,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:39:39,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:39:41,425.425 INFO    ] ================================================
[2026-06-27 12:39:41,440.440 INFO    ] Launching Daemon at Sat Jun 27 12:39:41 IST 2026
[2026-06-27 12:39:41,451.451 INFO    ] ================================================
[2026-06-27 12:39:41,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:39:41
[2026-06-27 12:39:42,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:39:42,267.267 INFO    ] Initializing speech engine...
[2026-06-27 12:39:42,274.274 INFO    ] 2026-06-27 12:39:42
[2026-06-27 12:39:42,486.486 INFO    ] 2026-06-27 12:39:42
[2026-06-27 12:39:42,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:39:42,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:39:42,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:39:42,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:39:42,903.903 INFO    ] time= 27/06/2026 12:39:42
[2026-06-27 12:39:42,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:39:42,933.933 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:39:43,000.000 INFO    ] No existing commands found in stream
[2026-06-27 12:39:48,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:39:48,015.015 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-27 12:39:49,382.382 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 12:39:49,384.384 INFO    ] Checking for system updates...
[2026-06-27 12:39:49,405.405 INFO    ] 200
[2026-06-27 12:39:49,406.406 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:39:49,436.436 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:39:49,438.438 INFO    ] No update needed
[2026-06-27 12:39:49,439.439 INFO    ] Checking for camera pi updates...
[2026-06-27 12:39:49,461.461 INFO    ] 200
[2026-06-27 12:39:49,462.462 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:39:49,487.487 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:39:49,534.534 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:39:49,535.535 INFO    ] No camera update needed
[2026-06-27 12:39:49,536.536 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:39:49,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:39:49,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:39:49,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:39:51,582.582 INFO    ] ================================================
[2026-06-27 12:39:51,597.597 INFO    ] Launching Daemon at Sat Jun 27 12:39:51 IST 2026
[2026-06-27 12:39:51,607.607 INFO    ] ================================================
[2026-06-27 12:39:51,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:39:51
[2026-06-27 12:39:52,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:39:52,445.445 INFO    ] Initializing speech engine...
[2026-06-27 12:39:52,459.459 INFO    ] 2026-06-27 12:39:52
[2026-06-27 12:39:52,672.672 INFO    ] 2026-06-27 12:39:52
[2026-06-27 12:39:52,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:39:52,839.839 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:39:52,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:39:53,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:39:53,097.097 INFO    ] time= 27/06/2026 12:39:53
[2026-06-27 12:39:53,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:39:53,132.132 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:39:53,200.200 INFO    ] No existing commands found in stream
[2026-06-27 12:39:58,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:39:58,208.208 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-27 12:40:00,556.556 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 12:40:00,558.558 INFO    ] Checking for system updates...
[2026-06-27 12:40:00,581.581 INFO    ] 200
[2026-06-27 12:40:00,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:40:00,617.617 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:40:00,619.619 INFO    ] No update needed
[2026-06-27 12:40:00,621.621 INFO    ] Checking for camera pi updates...
[2026-06-27 12:40:00,644.644 INFO    ] 200
[2026-06-27 12:40:00,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:40:00,673.673 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:40:00,713.713 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:40:00,715.715 INFO    ] No camera update needed
[2026-06-27 12:40:00,716.716 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:40:00,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:40:00,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:40:00,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:40:02,757.757 INFO    ] ================================================
[2026-06-27 12:40:02,766.766 INFO    ] Launching Daemon at Sat Jun 27 12:40:02 IST 2026
[2026-06-27 12:40:02,772.772 INFO    ] ================================================
[2026-06-27 12:40:03,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:40:03
[2026-06-27 12:40:03,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:40:03,573.573 INFO    ] Initializing speech engine...
[2026-06-27 12:40:03,576.576 INFO    ] 2026-06-27 12:40:03
[2026-06-27 12:40:03,787.787 INFO    ] 2026-06-27 12:40:03
[2026-06-27 12:40:03,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:40:03,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:40:04,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:40:04,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:40:04,210.210 INFO    ] time= 27/06/2026 12:40:04
[2026-06-27 12:40:04,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:40:04,240.240 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:40:04,309.309 INFO    ] No existing commands found in stream
[2026-06-27 12:40:09,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:40:09,320.320 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-27 12:40:11,605.605 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:40:11,606.606 INFO    ] Checking for system updates...
[2026-06-27 12:40:11,627.627 INFO    ] 200
[2026-06-27 12:40:11,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:40:11,660.660 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:40:11,662.662 INFO    ] No update needed
[2026-06-27 12:40:11,663.663 INFO    ] Checking for camera pi updates...
[2026-06-27 12:40:11,683.683 INFO    ] 200
[2026-06-27 12:40:11,684.684 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:40:11,709.709 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:40:11,749.749 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:40:11,750.750 INFO    ] No camera update needed
[2026-06-27 12:40:11,751.751 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:40:11,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:40:11,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:40:11,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:40:13,797.797 INFO    ] ================================================
[2026-06-27 12:40:13,813.813 INFO    ] Launching Daemon at Sat Jun 27 12:40:13 IST 2026
[2026-06-27 12:40:13,824.824 INFO    ] ================================================
[2026-06-27 12:40:14,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:40:14
[2026-06-27 12:40:14,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:40:14,639.639 INFO    ] Initializing speech engine...
[2026-06-27 12:40:14,644.644 INFO    ] 2026-06-27 12:40:14
[2026-06-27 12:40:14,849.849 INFO    ] 2026-06-27 12:40:14
[2026-06-27 12:40:14,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:40:15,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:40:15,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:40:15,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:40:15,259.259 INFO    ] time= 27/06/2026 12:40:15
[2026-06-27 12:40:15,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:40:15,293.293 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:40:15,365.365 INFO    ] No existing commands found in stream
[2026-06-27 12:40:20,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:40:20,378.378 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-27 12:40:21,119.119 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 12:40:21,121.121 INFO    ] Checking for system updates...
[2026-06-27 12:40:21,151.151 INFO    ] 200
[2026-06-27 12:40:21,153.153 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:40:21,183.183 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:40:21,184.184 INFO    ] No update needed
[2026-06-27 12:40:21,186.186 INFO    ] Checking for camera pi updates...
[2026-06-27 12:40:21,206.206 INFO    ] 200
[2026-06-27 12:40:21,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:40:21,233.233 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:40:21,279.279 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:40:21,280.280 INFO    ] No camera update needed
[2026-06-27 12:40:21,282.282 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:40:21,283.283 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:40:21,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:40:21,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:40:23,330.330 INFO    ] ================================================
[2026-06-27 12:40:23,345.345 INFO    ] Launching Daemon at Sat Jun 27 12:40:23 IST 2026
[2026-06-27 12:40:23,356.356 INFO    ] ================================================
[2026-06-27 12:40:23,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:40:23
[2026-06-27 12:40:24,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:40:24,215.215 INFO    ] Initializing speech engine...
[2026-06-27 12:40:24,223.223 INFO    ] 2026-06-27 12:40:24
[2026-06-27 12:40:24,428.428 INFO    ] 2026-06-27 12:40:24
[2026-06-27 12:40:24,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:40:24,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:40:24,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:40:24,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:40:24,847.847 INFO    ] time= 27/06/2026 12:40:24
[2026-06-27 12:40:24,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:40:24,887.887 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:40:24,956.956 INFO    ] No existing commands found in stream
[2026-06-27 12:40:29,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:40:29,968.968 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-27 12:40:31,648.648 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 12:40:31,650.650 INFO    ] Checking for system updates...
[2026-06-27 12:40:31,675.675 INFO    ] 200
[2026-06-27 12:40:31,676.676 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:40:31,711.711 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:40:31,712.712 INFO    ] No update needed
[2026-06-27 12:40:31,714.714 INFO    ] Checking for camera pi updates...
[2026-06-27 12:40:31,742.742 INFO    ] 200
[2026-06-27 12:40:31,744.744 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:40:31,780.780 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:40:31,920.920 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:40:31,922.922 INFO    ] No camera update needed
[2026-06-27 12:40:31,923.923 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:40:31,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:40:31,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:40:31,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:40:33,971.971 INFO    ] ================================================
[2026-06-27 12:40:33,986.986 INFO    ] Launching Daemon at Sat Jun 27 12:40:33 IST 2026
[2026-06-27 12:40:34,998.998 INFO    ] ================================================
[2026-06-27 12:40:34,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:40:34
[2026-06-27 12:40:34,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:40:34,787.787 INFO    ] Initializing speech engine...
[2026-06-27 12:40:34,791.791 INFO    ] 2026-06-27 12:40:34
[2026-06-27 12:40:35,010.010 INFO    ] 2026-06-27 12:40:34
[2026-06-27 12:40:35,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:40:35,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:40:35,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:40:35,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:40:35,419.419 INFO    ] time= 27/06/2026 12:40:35
[2026-06-27 12:40:35,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:40:35,463.463 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:40:35,529.529 INFO    ] No existing commands found in stream
[2026-06-27 12:40:40,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:40:40,542.542 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-27 12:40:41,421.421 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 12:40:41,422.422 INFO    ] Checking for system updates...
[2026-06-27 12:40:41,443.443 INFO    ] 200
[2026-06-27 12:40:41,444.444 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:40:41,474.474 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:40:41,476.476 INFO    ] No update needed
[2026-06-27 12:40:41,477.477 INFO    ] Checking for camera pi updates...
[2026-06-27 12:40:41,498.498 INFO    ] 200
[2026-06-27 12:40:41,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:40:41,523.523 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:40:41,565.565 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:40:41,566.566 INFO    ] No camera update needed
[2026-06-27 12:40:41,568.568 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:40:41,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:40:41,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:40:41,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:40:43,615.615 INFO    ] ================================================
[2026-06-27 12:40:43,631.631 INFO    ] Launching Daemon at Sat Jun 27 12:40:43 IST 2026
[2026-06-27 12:40:43,641.641 INFO    ] ================================================
[2026-06-27 12:40:44,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:40:44
[2026-06-27 12:40:44,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:40:44,494.494 INFO    ] Initializing speech engine...
[2026-06-27 12:40:44,498.498 INFO    ] 2026-06-27 12:40:44
[2026-06-27 12:40:44,707.707 INFO    ] 2026-06-27 12:40:44
[2026-06-27 12:40:44,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:40:44,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:40:44,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:40:45,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:40:45,130.130 INFO    ] time= 27/06/2026 12:40:45
[2026-06-27 12:40:45,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:40:45,163.163 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:40:45,232.232 INFO    ] No existing commands found in stream
[2026-06-27 12:40:50,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:40:50,245.245 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-27 12:40:52,803.803 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 12:40:52,805.805 INFO    ] Checking for system updates...
[2026-06-27 12:40:52,826.826 INFO    ] 200
[2026-06-27 12:40:52,827.827 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:40:52,858.858 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:40:52,859.859 INFO    ] No update needed
[2026-06-27 12:40:52,861.861 INFO    ] Checking for camera pi updates...
[2026-06-27 12:40:52,882.882 INFO    ] 200
[2026-06-27 12:40:52,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:40:52,908.908 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:40:52,945.945 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:40:52,946.946 INFO    ] No camera update needed
[2026-06-27 12:40:52,947.947 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:40:52,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:40:52,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:40:52,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:40:54,994.994 INFO    ] ================================================
[2026-06-27 12:40:55,010.010 INFO    ] Launching Daemon at Sat Jun 27 12:40:55 IST 2026
[2026-06-27 12:40:55,021.021 INFO    ] ================================================
[2026-06-27 12:40:55,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:40:55
[2026-06-27 12:40:55,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:40:55,813.813 INFO    ] Initializing speech engine...
[2026-06-27 12:40:55,818.818 INFO    ] 2026-06-27 12:40:55
[2026-06-27 12:40:56,023.023 INFO    ] 2026-06-27 12:40:56
[2026-06-27 12:40:56,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:40:56,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:40:56,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:40:56,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:40:56,445.445 INFO    ] time= 27/06/2026 12:40:56
[2026-06-27 12:40:56,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:40:56,475.475 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:40:56,542.542 INFO    ] No existing commands found in stream
[2026-06-27 12:41:01,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:41:01,559.559 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-27 12:41:04,714.714 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 12:41:04,715.715 INFO    ] Checking for system updates...
[2026-06-27 12:41:04,737.737 INFO    ] 200
[2026-06-27 12:41:04,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:41:04,769.769 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:41:04,770.770 INFO    ] No update needed
[2026-06-27 12:41:04,772.772 INFO    ] Checking for camera pi updates...
[2026-06-27 12:41:04,791.791 INFO    ] 200
[2026-06-27 12:41:04,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:41:04,818.818 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:41:04,853.853 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:41:04,855.855 INFO    ] No camera update needed
[2026-06-27 12:41:04,856.856 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:41:04,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:41:04,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:41:04,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:41:06,904.904 INFO    ] ================================================
[2026-06-27 12:41:06,919.919 INFO    ] Launching Daemon at Sat Jun 27 12:41:06 IST 2026
[2026-06-27 12:41:06,931.931 INFO    ] ================================================
[2026-06-27 12:41:07,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:41:07
[2026-06-27 12:41:07,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:41:07,757.757 INFO    ] Initializing speech engine...
[2026-06-27 12:41:07,763.763 INFO    ] 2026-06-27 12:41:07
[2026-06-27 12:41:07,965.965 INFO    ] 2026-06-27 12:41:07
[2026-06-27 12:41:07,994.994 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:41:08,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:41:08,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:41:08,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:41:08,370.370 INFO    ] time= 27/06/2026 12:41:08
[2026-06-27 12:41:08,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:41:08,409.409 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:41:08,479.479 INFO    ] No existing commands found in stream
[2026-06-27 12:41:13,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:41:13,489.489 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-27 12:41:17,030.030 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 12:41:17,031.031 INFO    ] Checking for system updates...
[2026-06-27 12:41:17,052.052 INFO    ] 200
[2026-06-27 12:41:17,053.053 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:41:17,084.084 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:41:17,085.085 INFO    ] No update needed
[2026-06-27 12:41:17,086.086 INFO    ] Checking for camera pi updates...
[2026-06-27 12:41:17,106.106 INFO    ] 200
[2026-06-27 12:41:17,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:41:17,130.130 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:41:17,170.170 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:41:17,171.171 INFO    ] No camera update needed
[2026-06-27 12:41:17,173.173 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:41:17,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:41:17,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:41:17,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:41:19,221.221 INFO    ] ================================================
[2026-06-27 12:41:19,237.237 INFO    ] Launching Daemon at Sat Jun 27 12:41:19 IST 2026
[2026-06-27 12:41:19,248.248 INFO    ] ================================================
[2026-06-27 12:41:19,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:41:19
[2026-06-27 12:41:19,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:41:20,024.024 INFO    ] Initializing speech engine...
[2026-06-27 12:41:20,033.033 INFO    ] 2026-06-27 12:41:20
[2026-06-27 12:41:20,244.244 INFO    ] 2026-06-27 12:41:20
[2026-06-27 12:41:20,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:41:20,457.457 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:41:20,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:41:20,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:41:20,685.685 INFO    ] time= 27/06/2026 12:41:20
[2026-06-27 12:41:20,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:41:20,693.693 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:41:20,760.760 INFO    ] No existing commands found in stream
[2026-06-27 12:41:25,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:41:25,772.772 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-27 12:41:30,138.138 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 12:41:30,139.139 INFO    ] Checking for system updates...
[2026-06-27 12:41:30,161.161 INFO    ] 200
[2026-06-27 12:41:30,163.163 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:41:30,193.193 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:41:30,195.195 INFO    ] No update needed
[2026-06-27 12:41:30,196.196 INFO    ] Checking for camera pi updates...
[2026-06-27 12:41:30,216.216 INFO    ] 200
[2026-06-27 12:41:30,217.217 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:41:30,242.242 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:41:30,280.280 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:41:30,281.281 INFO    ] No camera update needed
[2026-06-27 12:41:30,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:41:30,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:41:30,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:41:30,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:41:32,322.322 INFO    ] ================================================
[2026-06-27 12:41:32,331.331 INFO    ] Launching Daemon at Sat Jun 27 12:41:32 IST 2026
[2026-06-27 12:41:32,338.338 INFO    ] ================================================
[2026-06-27 12:41:32,666.666 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:41:32
[2026-06-27 12:41:32,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:41:33,119.119 INFO    ] Initializing speech engine...
[2026-06-27 12:41:33,131.131 INFO    ] 2026-06-27 12:41:33
[2026-06-27 12:41:33,339.339 INFO    ] 2026-06-27 12:41:33
[2026-06-27 12:41:33,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:41:33,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:41:33,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:41:33,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:41:33,751.751 INFO    ] time= 27/06/2026 12:41:33
[2026-06-27 12:41:33,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:41:33,785.785 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:41:33,855.855 INFO    ] No existing commands found in stream
[2026-06-27 12:41:38,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:41:38,868.868 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-27 12:41:41,170.170 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:41:41,172.172 INFO    ] Checking for system updates...
[2026-06-27 12:41:41,192.192 INFO    ] 200
[2026-06-27 12:41:41,194.194 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:41:41,224.224 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:41:41,226.226 INFO    ] No update needed
[2026-06-27 12:41:41,227.227 INFO    ] Checking for camera pi updates...
[2026-06-27 12:41:41,248.248 INFO    ] 200
[2026-06-27 12:41:41,249.249 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:41:41,275.275 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:41:41,321.321 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:41:41,322.322 INFO    ] No camera update needed
[2026-06-27 12:41:41,324.324 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:41:41,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:41:41,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:41:41,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:41:43,369.369 INFO    ] ================================================
[2026-06-27 12:41:43,385.385 INFO    ] Launching Daemon at Sat Jun 27 12:41:43 IST 2026
[2026-06-27 12:41:43,396.396 INFO    ] ================================================
[2026-06-27 12:41:43,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:41:43
[2026-06-27 12:41:44,054.054 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:41:44,192.192 INFO    ] Initializing speech engine...
[2026-06-27 12:41:44,202.202 INFO    ] 2026-06-27 12:41:44
[2026-06-27 12:41:44,406.406 INFO    ] 2026-06-27 12:41:44
[2026-06-27 12:41:44,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:41:44,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:41:44,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:41:44,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:41:44,811.811 INFO    ] time= 27/06/2026 12:41:44
[2026-06-27 12:41:44,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:41:44,850.850 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:41:44,920.920 INFO    ] No existing commands found in stream
[2026-06-27 12:41:49,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:41:49,934.934 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-27 12:41:52,219.219 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:41:52,220.220 INFO    ] Checking for system updates...
[2026-06-27 12:41:52,242.242 INFO    ] 200
[2026-06-27 12:41:52,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:41:52,275.275 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:41:52,276.276 INFO    ] No update needed
[2026-06-27 12:41:52,277.277 INFO    ] Checking for camera pi updates...
[2026-06-27 12:41:52,297.297 INFO    ] 200
[2026-06-27 12:41:52,299.299 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:41:52,323.323 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:41:52,364.364 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:41:52,366.366 INFO    ] No camera update needed
[2026-06-27 12:41:52,367.367 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:41:52,369.369 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:41:52,372.372 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:41:52,375.375 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:41:54,413.413 INFO    ] ================================================
[2026-06-27 12:41:54,429.429 INFO    ] Launching Daemon at Sat Jun 27 12:41:54 IST 2026
[2026-06-27 12:41:54,441.441 INFO    ] ================================================
[2026-06-27 12:41:54,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:41:54
[2026-06-27 12:41:55,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:41:55,241.241 INFO    ] Initializing speech engine...
[2026-06-27 12:41:55,246.246 INFO    ] 2026-06-27 12:41:55
[2026-06-27 12:41:55,466.466 INFO    ] 2026-06-27 12:41:55
[2026-06-27 12:41:55,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:41:55,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:41:55,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:41:55,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:41:55,902.902 INFO    ] time= 27/06/2026 12:41:55
[2026-06-27 12:41:55,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:41:55,943.943 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:41:56,019.019 INFO    ] No existing commands found in stream
[2026-06-27 12:42:01,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:42:01,031.031 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-27 12:42:03,660.660 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 12:42:03,662.662 INFO    ] Checking for system updates...
[2026-06-27 12:42:03,703.703 INFO    ] 200
[2026-06-27 12:42:03,706.706 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:42:03,767.767 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:42:03,770.770 INFO    ] No update needed
[2026-06-27 12:42:03,772.772 INFO    ] Checking for camera pi updates...
[2026-06-27 12:42:03,809.809 INFO    ] 200
[2026-06-27 12:42:03,812.812 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:42:03,838.838 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:42:03,879.879 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:42:03,880.880 INFO    ] No camera update needed
[2026-06-27 12:42:03,882.882 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:42:03,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:42:03,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:42:03,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:42:05,929.929 INFO    ] ================================================
[2026-06-27 12:42:05,944.944 INFO    ] Launching Daemon at Sat Jun 27 12:42:05 IST 2026
[2026-06-27 12:42:05,955.955 INFO    ] ================================================
[2026-06-27 12:42:06,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:42:06
[2026-06-27 12:42:06,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:42:06,777.777 INFO    ] Initializing speech engine...
[2026-06-27 12:42:06,780.780 INFO    ] 2026-06-27 12:42:06
[2026-06-27 12:42:06,997.997 INFO    ] 2026-06-27 12:42:06
[2026-06-27 12:42:07,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:42:07,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:42:07,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:42:07,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:42:07,402.402 INFO    ] time= 27/06/2026 12:42:07
[2026-06-27 12:42:07,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:42:07,445.445 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:42:07,513.513 INFO    ] No existing commands found in stream
[2026-06-27 12:42:12,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:42:12,525.525 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-27 12:42:12,923.923 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:42:12,925.925 INFO    ] Checking for system updates...
[2026-06-27 12:42:12,945.945 INFO    ] 200
[2026-06-27 12:42:12,947.947 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:42:12,977.977 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:42:12,978.978 INFO    ] No update needed
[2026-06-27 12:42:12,980.980 INFO    ] Checking for camera pi updates...
[2026-06-27 12:42:12,999.999 INFO    ] 200
[2026-06-27 12:42:13,000.000 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:42:13,024.024 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:42:13,060.060 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:42:13,062.062 INFO    ] No camera update needed
[2026-06-27 12:42:13,063.063 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:42:13,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:42:13,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:42:13,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:42:15,109.109 INFO    ] ================================================
[2026-06-27 12:42:15,125.125 INFO    ] Launching Daemon at Sat Jun 27 12:42:15 IST 2026
[2026-06-27 12:42:15,136.136 INFO    ] ================================================
[2026-06-27 12:42:15,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:42:15
[2026-06-27 12:42:15,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:42:15,952.952 INFO    ] Initializing speech engine...
[2026-06-27 12:42:15,957.957 INFO    ] 2026-06-27 12:42:15
[2026-06-27 12:42:16,162.162 INFO    ] 2026-06-27 12:42:16
[2026-06-27 12:42:16,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:42:16,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:42:16,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:42:16,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:42:16,581.581 INFO    ] time= 27/06/2026 12:42:16
[2026-06-27 12:42:16,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:42:16,611.611 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:42:16,678.678 INFO    ] No existing commands found in stream
[2026-06-27 12:42:21,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:42:21,690.690 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-27 12:42:23,548.548 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 12:42:23,550.550 INFO    ] Checking for system updates...
[2026-06-27 12:42:23,571.571 INFO    ] 200
[2026-06-27 12:42:23,572.572 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:42:23,611.611 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:42:23,612.612 INFO    ] No update needed
[2026-06-27 12:42:23,613.613 INFO    ] Checking for camera pi updates...
[2026-06-27 12:42:23,633.633 INFO    ] 200
[2026-06-27 12:42:23,634.634 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:42:23,657.657 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:42:23,697.697 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:42:23,699.699 INFO    ] No camera update needed
[2026-06-27 12:42:23,700.700 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:42:23,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:42:23,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:42:23,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:42:25,745.745 INFO    ] ================================================
[2026-06-27 12:42:25,760.760 INFO    ] Launching Daemon at Sat Jun 27 12:42:25 IST 2026
[2026-06-27 12:42:25,771.771 INFO    ] ================================================
[2026-06-27 12:42:26,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:42:26
[2026-06-27 12:42:26,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:42:26,561.561 INFO    ] Initializing speech engine...
[2026-06-27 12:42:26,571.571 INFO    ] 2026-06-27 12:42:26
[2026-06-27 12:42:26,776.776 INFO    ] 2026-06-27 12:42:26
[2026-06-27 12:42:26,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:42:26,987.987 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:42:26,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:42:27,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:42:27,193.193 INFO    ] time= 27/06/2026 12:42:27
[2026-06-27 12:42:27,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:42:27,223.223 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:42:27,290.290 INFO    ] No existing commands found in stream
[2026-06-27 12:42:32,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:42:32,305.305 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-27 12:42:36,188.188 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:42:36,190.190 INFO    ] Checking for system updates...
[2026-06-27 12:42:36,211.211 INFO    ] 200
[2026-06-27 12:42:36,212.212 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:42:36,243.243 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:42:36,244.244 INFO    ] No update needed
[2026-06-27 12:42:36,246.246 INFO    ] Checking for camera pi updates...
[2026-06-27 12:42:36,265.265 INFO    ] 200
[2026-06-27 12:42:36,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:42:36,291.291 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:42:36,435.435 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:42:36,437.437 INFO    ] No camera update needed
[2026-06-27 12:42:36,438.438 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:42:36,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:42:36,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:42:36,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:42:38,483.483 INFO    ] ================================================
[2026-06-27 12:42:38,498.498 INFO    ] Launching Daemon at Sat Jun 27 12:42:38 IST 2026
[2026-06-27 12:42:38,508.508 INFO    ] ================================================
[2026-06-27 12:42:38,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:42:38
[2026-06-27 12:42:39,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:42:39,315.315 INFO    ] Initializing speech engine...
[2026-06-27 12:42:39,320.320 INFO    ] 2026-06-27 12:42:39
[2026-06-27 12:42:39,522.522 INFO    ] 2026-06-27 12:42:39
[2026-06-27 12:42:39,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:42:39,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:42:39,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:42:39,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:42:39,939.939 INFO    ] time= 27/06/2026 12:42:39
[2026-06-27 12:42:39,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:42:39,969.969 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:42:40,035.035 INFO    ] No existing commands found in stream
[2026-06-27 12:42:45,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:42:45,048.048 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-27 12:42:47,694.694 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:42:47,695.695 INFO    ] Checking for system updates...
[2026-06-27 12:42:47,716.716 INFO    ] 200
[2026-06-27 12:42:47,717.717 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:42:47,747.747 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:42:47,749.749 INFO    ] No update needed
[2026-06-27 12:42:47,750.750 INFO    ] Checking for camera pi updates...
[2026-06-27 12:42:47,769.769 INFO    ] 200
[2026-06-27 12:42:47,771.771 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:42:47,794.794 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:42:47,817.817 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:42:47,818.818 INFO    ] No camera update needed
[2026-06-27 12:42:47,819.819 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:42:47,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:42:47,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:42:47,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:42:49,864.864 INFO    ] ================================================
[2026-06-27 12:42:49,880.880 INFO    ] Launching Daemon at Sat Jun 27 12:42:49 IST 2026
[2026-06-27 12:42:49,891.891 INFO    ] ================================================
[2026-06-27 12:42:50,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:42:50
[2026-06-27 12:42:50,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:42:50,671.671 INFO    ] Initializing speech engine...
[2026-06-27 12:42:50,675.675 INFO    ] 2026-06-27 12:42:50
[2026-06-27 12:42:50,879.879 INFO    ] 2026-06-27 12:42:50
[2026-06-27 12:42:50,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:42:51,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:42:51,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:42:51,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:42:51,292.292 INFO    ] time= 27/06/2026 12:42:51
[2026-06-27 12:42:51,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:42:51,326.326 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:42:51,392.392 INFO    ] No existing commands found in stream
[2026-06-27 12:42:56,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:42:56,404.404 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-27 12:42:59,031.031 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:42:59,032.032 INFO    ] Checking for system updates...
[2026-06-27 12:42:59,054.054 INFO    ] 200
[2026-06-27 12:42:59,055.055 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:42:59,086.086 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:42:59,087.087 INFO    ] No update needed
[2026-06-27 12:42:59,088.088 INFO    ] Checking for camera pi updates...
[2026-06-27 12:42:59,108.108 INFO    ] 200
[2026-06-27 12:42:59,109.109 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:42:59,135.135 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:42:59,181.181 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:42:59,182.182 INFO    ] No camera update needed
[2026-06-27 12:42:59,183.183 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:42:59,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:42:59,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:42:59,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:43:01,265.265 INFO    ] ================================================
[2026-06-27 12:43:01,295.295 INFO    ] Launching Daemon at Sat Jun 27 12:43:01 IST 2026
[2026-06-27 12:43:01,306.306 INFO    ] ================================================
[2026-06-27 12:43:01,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:43:01
[2026-06-27 12:43:02,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:43:02,274.274 INFO    ] Initializing speech engine...
[2026-06-27 12:43:02,278.278 INFO    ] 2026-06-27 12:43:02
[2026-06-27 12:43:02,478.478 INFO    ] 2026-06-27 12:43:02
[2026-06-27 12:43:02,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:43:02,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:43:02,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:43:02,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:43:02,911.911 INFO    ] time= 27/06/2026 12:43:02
[2026-06-27 12:43:02,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:43:02,961.961 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:43:03,032.032 INFO    ] No existing commands found in stream
[2026-06-27 12:43:08,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:43:08,044.044 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-27 12:43:09,149.149 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 12:43:09,150.150 INFO    ] Checking for system updates...
[2026-06-27 12:43:09,172.172 INFO    ] 200
[2026-06-27 12:43:09,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:43:09,203.203 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:43:09,205.205 INFO    ] No update needed
[2026-06-27 12:43:09,206.206 INFO    ] Checking for camera pi updates...
[2026-06-27 12:43:09,226.226 INFO    ] 200
[2026-06-27 12:43:09,227.227 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:43:09,250.250 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:43:09,299.299 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:43:09,300.300 INFO    ] No camera update needed
[2026-06-27 12:43:09,302.302 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:43:09,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:43:09,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:43:09,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:43:11,347.347 INFO    ] ================================================
[2026-06-27 12:43:11,363.363 INFO    ] Launching Daemon at Sat Jun 27 12:43:11 IST 2026
[2026-06-27 12:43:11,374.374 INFO    ] ================================================
[2026-06-27 12:43:11,754.754 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:43:11
[2026-06-27 12:43:12,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:43:12,242.242 INFO    ] Initializing speech engine...
[2026-06-27 12:43:12,247.247 INFO    ] 2026-06-27 12:43:12
[2026-06-27 12:43:12,455.455 INFO    ] 2026-06-27 12:43:12
[2026-06-27 12:43:12,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:43:12,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:43:12,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:43:12,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:43:12,866.866 INFO    ] time= 27/06/2026 12:43:12
[2026-06-27 12:43:12,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:43:12,905.905 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:43:12,974.974 INFO    ] No existing commands found in stream
[2026-06-27 12:43:17,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:43:17,992.992 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-27 12:43:22,250.250 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 12:43:22,251.251 INFO    ] Checking for system updates...
[2026-06-27 12:43:22,274.274 INFO    ] 200
[2026-06-27 12:43:22,276.276 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:43:22,306.306 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:43:22,307.307 INFO    ] No update needed
[2026-06-27 12:43:22,308.308 INFO    ] Checking for camera pi updates...
[2026-06-27 12:43:22,329.329 INFO    ] 200
[2026-06-27 12:43:22,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:43:22,353.353 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:43:22,395.395 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:43:22,396.396 INFO    ] No camera update needed
[2026-06-27 12:43:22,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:43:22,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:43:22,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:43:22,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:43:24,444.444 INFO    ] ================================================
[2026-06-27 12:43:24,459.459 INFO    ] Launching Daemon at Sat Jun 27 12:43:24 IST 2026
[2026-06-27 12:43:24,470.470 INFO    ] ================================================
[2026-06-27 12:43:24,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:43:24
[2026-06-27 12:43:25,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:43:25,256.256 INFO    ] Initializing speech engine...
[2026-06-27 12:43:25,269.269 INFO    ] 2026-06-27 12:43:25
[2026-06-27 12:43:25,488.488 INFO    ] 2026-06-27 12:43:25
[2026-06-27 12:43:25,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:43:25,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:43:25,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:43:25,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:43:25,939.939 INFO    ] time= 27/06/2026 12:43:25
[2026-06-27 12:43:25,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:43:25,968.968 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:43:26,043.043 INFO    ] No existing commands found in stream
[2026-06-27 12:43:31,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:43:31,056.056 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-27 12:43:31,745.745 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:43:31,747.747 INFO    ] Checking for system updates...
[2026-06-27 12:43:31,774.774 INFO    ] 200
[2026-06-27 12:43:31,776.776 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:43:31,810.810 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:43:31,812.812 INFO    ] No update needed
[2026-06-27 12:43:31,814.814 INFO    ] Checking for camera pi updates...
[2026-06-27 12:43:31,838.838 INFO    ] 200
[2026-06-27 12:43:31,840.840 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:43:31,869.869 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:43:31,892.892 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:43:31,894.894 INFO    ] No camera update needed
[2026-06-27 12:43:31,895.895 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:43:31,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:43:31,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:43:31,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:43:33,942.942 INFO    ] ================================================
[2026-06-27 12:43:33,957.957 INFO    ] Launching Daemon at Sat Jun 27 12:43:33 IST 2026
[2026-06-27 12:43:33,968.968 INFO    ] ================================================
[2026-06-27 12:43:34,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:43:34
[2026-06-27 12:43:34,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:43:34,791.791 INFO    ] Initializing speech engine...
[2026-06-27 12:43:34,797.797 INFO    ] 2026-06-27 12:43:34
[2026-06-27 12:43:35,000.000 INFO    ] 2026-06-27 12:43:34
[2026-06-27 12:43:35,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:43:35,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:43:35,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:43:35,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:43:35,422.422 INFO    ] time= 27/06/2026 12:43:35
[2026-06-27 12:43:35,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:43:35,452.452 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:43:35,518.518 INFO    ] No existing commands found in stream
[2026-06-27 12:43:40,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:43:40,531.531 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-27 12:43:43,741.741 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 12:43:43,743.743 INFO    ] Checking for system updates...
[2026-06-27 12:43:43,764.764 INFO    ] 200
[2026-06-27 12:43:43,766.766 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:43:43,797.797 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:43:43,798.798 INFO    ] No update needed
[2026-06-27 12:43:43,800.800 INFO    ] Checking for camera pi updates...
[2026-06-27 12:43:43,819.819 INFO    ] 200
[2026-06-27 12:43:43,820.820 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:43:43,846.846 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:43:43,883.883 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:43:43,884.884 INFO    ] No camera update needed
[2026-06-27 12:43:43,885.885 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:43:43,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:43:43,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:43:43,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:43:45,932.932 INFO    ] ================================================
[2026-06-27 12:43:45,948.948 INFO    ] Launching Daemon at Sat Jun 27 12:43:45 IST 2026
[2026-06-27 12:43:45,958.958 INFO    ] ================================================
[2026-06-27 12:43:46,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:43:46
[2026-06-27 12:43:46,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:43:46,766.766 INFO    ] Initializing speech engine...
[2026-06-27 12:43:46,771.771 INFO    ] 2026-06-27 12:43:46
[2026-06-27 12:43:46,975.975 INFO    ] 2026-06-27 12:43:46
[2026-06-27 12:43:47,004.004 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:43:47,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:43:47,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:43:47,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:43:47,390.390 INFO    ] time= 27/06/2026 12:43:47
[2026-06-27 12:43:47,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:43:47,425.425 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:43:47,497.497 INFO    ] No existing commands found in stream
[2026-06-27 12:43:52,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:43:52,514.514 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-27 12:43:54,650.650 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 12:43:54,652.652 INFO    ] Checking for system updates...
[2026-06-27 12:43:54,673.673 INFO    ] 200
[2026-06-27 12:43:54,674.674 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:43:54,708.708 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:43:54,709.709 INFO    ] No update needed
[2026-06-27 12:43:54,710.710 INFO    ] Checking for camera pi updates...
[2026-06-27 12:43:54,730.730 INFO    ] 200
[2026-06-27 12:43:54,731.731 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:43:54,755.755 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:43:54,779.779 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:43:54,780.780 INFO    ] No camera update needed
[2026-06-27 12:43:54,782.782 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:43:54,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:43:54,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:43:54,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:43:56,834.834 INFO    ] ================================================
[2026-06-27 12:43:56,850.850 INFO    ] Launching Daemon at Sat Jun 27 12:43:56 IST 2026
[2026-06-27 12:43:56,860.860 INFO    ] ================================================
[2026-06-27 12:43:57,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:43:57
[2026-06-27 12:43:57,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:43:57,743.743 INFO    ] Initializing speech engine...
[2026-06-27 12:43:57,749.749 INFO    ] 2026-06-27 12:43:57
[2026-06-27 12:43:57,959.959 INFO    ] 2026-06-27 12:43:57
[2026-06-27 12:43:57,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:43:58,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:43:58,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:43:58,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:43:58,389.389 INFO    ] time= 27/06/2026 12:43:58
[2026-06-27 12:43:58,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:43:58,420.420 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:43:58,487.487 INFO    ] No existing commands found in stream
[2026-06-27 12:44:03,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:44:03,501.501 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-27 12:44:07,864.864 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 12:44:07,866.866 INFO    ] Checking for system updates...
[2026-06-27 12:44:07,888.888 INFO    ] 200
[2026-06-27 12:44:07,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:44:07,922.922 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:44:07,924.924 INFO    ] No update needed
[2026-06-27 12:44:07,925.925 INFO    ] Checking for camera pi updates...
[2026-06-27 12:44:07,945.945 INFO    ] 200
[2026-06-27 12:44:07,946.946 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:44:07,972.972 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:44:08,022.022 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:44:08,023.023 INFO    ] No camera update needed
[2026-06-27 12:44:08,024.024 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:44:08,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:44:08,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:44:08,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:44:10,076.076 INFO    ] ================================================
[2026-06-27 12:44:10,091.091 INFO    ] Launching Daemon at Sat Jun 27 12:44:10 IST 2026
[2026-06-27 12:44:10,102.102 INFO    ] ================================================
[2026-06-27 12:44:10,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:44:10
[2026-06-27 12:44:10,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:44:10,953.953 INFO    ] Initializing speech engine...
[2026-06-27 12:44:10,958.958 INFO    ] 2026-06-27 12:44:10
[2026-06-27 12:44:11,168.168 INFO    ] 2026-06-27 12:44:11
[2026-06-27 12:44:11,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:44:11,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:44:11,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:44:11,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:44:11,597.597 INFO    ] time= 27/06/2026 12:44:11
[2026-06-27 12:44:11,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:44:11,626.626 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:44:11,693.693 INFO    ] No existing commands found in stream
[2026-06-27 12:44:16,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:44:16,706.706 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-27 12:44:20,046.046 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 12:44:20,047.047 INFO    ] Checking for system updates...
[2026-06-27 12:44:20,068.068 INFO    ] 200
[2026-06-27 12:44:20,069.069 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:44:20,102.102 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:44:20,104.104 INFO    ] No update needed
[2026-06-27 12:44:20,105.105 INFO    ] Checking for camera pi updates...
[2026-06-27 12:44:20,126.126 INFO    ] 200
[2026-06-27 12:44:20,128.128 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:44:20,153.153 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:44:20,186.186 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:44:20,187.187 INFO    ] No camera update needed
[2026-06-27 12:44:20,189.189 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:44:20,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:44:20,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:44:20,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:44:22,234.234 INFO    ] ================================================
[2026-06-27 12:44:22,249.249 INFO    ] Launching Daemon at Sat Jun 27 12:44:22 IST 2026
[2026-06-27 12:44:22,260.260 INFO    ] ================================================
[2026-06-27 12:44:22,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:44:22
[2026-06-27 12:44:22,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:44:23,057.057 INFO    ] Initializing speech engine...
[2026-06-27 12:44:23,061.061 INFO    ] 2026-06-27 12:44:23
[2026-06-27 12:44:23,254.254 INFO    ] 2026-06-27 12:44:23
[2026-06-27 12:44:23,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:44:23,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:44:23,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:44:23,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:44:23,727.727 INFO    ] time= 27/06/2026 12:44:23
[2026-06-27 12:44:23,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:44:23,784.784 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:44:23,860.860 INFO    ] No existing commands found in stream
[2026-06-27 12:44:28,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:44:28,873.873 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-27 12:44:32,849.849 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 12:44:32,851.851 INFO    ] Checking for system updates...
[2026-06-27 12:44:32,873.873 INFO    ] 200
[2026-06-27 12:44:32,875.875 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:44:32,908.908 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:44:32,909.909 INFO    ] No update needed
[2026-06-27 12:44:32,910.910 INFO    ] Checking for camera pi updates...
[2026-06-27 12:44:32,931.931 INFO    ] 200
[2026-06-27 12:44:32,932.932 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:44:32,958.958 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:44:33,004.004 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:44:33,006.006 INFO    ] No camera update needed
[2026-06-27 12:44:33,007.007 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:44:33,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:44:33,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:44:33,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:44:35,052.052 INFO    ] ================================================
[2026-06-27 12:44:35,067.067 INFO    ] Launching Daemon at Sat Jun 27 12:44:35 IST 2026
[2026-06-27 12:44:35,078.078 INFO    ] ================================================
[2026-06-27 12:44:35,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:44:35
[2026-06-27 12:44:35,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:44:35,855.855 INFO    ] Initializing speech engine...
[2026-06-27 12:44:35,867.867 INFO    ] 2026-06-27 12:44:35
[2026-06-27 12:44:36,076.076 INFO    ] 2026-06-27 12:44:36
[2026-06-27 12:44:36,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:44:36,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:44:36,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:44:36,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:44:36,481.481 INFO    ] time= 27/06/2026 12:44:36
[2026-06-27 12:44:36,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:44:36,526.526 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:44:36,596.596 INFO    ] No existing commands found in stream
[2026-06-27 12:44:41,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:44:41,609.609 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-27 12:44:43,420.420 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:44:43,421.421 INFO    ] Checking for system updates...
[2026-06-27 12:44:43,443.443 INFO    ] 200
[2026-06-27 12:44:43,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:44:43,475.475 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:44:43,476.476 INFO    ] No update needed
[2026-06-27 12:44:43,478.478 INFO    ] Checking for camera pi updates...
[2026-06-27 12:44:43,497.497 INFO    ] 200
[2026-06-27 12:44:43,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:44:43,522.522 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:44:43,663.663 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:44:43,664.664 INFO    ] No camera update needed
[2026-06-27 12:44:43,666.666 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:44:43,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:44:43,670.670 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:44:43,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:44:45,712.712 INFO    ] ================================================
[2026-06-27 12:44:45,728.728 INFO    ] Launching Daemon at Sat Jun 27 12:44:45 IST 2026
[2026-06-27 12:44:45,738.738 INFO    ] ================================================
[2026-06-27 12:44:46,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:44:46
[2026-06-27 12:44:46,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:44:46,561.561 INFO    ] Initializing speech engine...
[2026-06-27 12:44:46,566.566 INFO    ] 2026-06-27 12:44:46
[2026-06-27 12:44:46,769.769 INFO    ] 2026-06-27 12:44:46
[2026-06-27 12:44:46,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:44:46,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:44:46,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:44:47,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:44:47,188.188 INFO    ] time= 27/06/2026 12:44:47
[2026-06-27 12:44:47,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:44:47,216.216 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:44:47,282.282 INFO    ] No existing commands found in stream
[2026-06-27 12:44:52,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:44:52,295.295 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-27 12:44:52,795.795 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:44:52,796.796 INFO    ] Checking for system updates...
[2026-06-27 12:44:52,818.818 INFO    ] 200
[2026-06-27 12:44:52,819.819 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:44:52,854.854 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:44:52,855.855 INFO    ] No update needed
[2026-06-27 12:44:52,857.857 INFO    ] Checking for camera pi updates...
[2026-06-27 12:44:52,878.878 INFO    ] 200
[2026-06-27 12:44:52,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:44:52,902.902 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:44:52,939.939 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:44:52,940.940 INFO    ] No camera update needed
[2026-06-27 12:44:52,941.941 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:44:52,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:44:52,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:44:52,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:44:54,987.987 INFO    ] ================================================
[2026-06-27 12:44:55,003.003 INFO    ] Launching Daemon at Sat Jun 27 12:44:54 IST 2026
[2026-06-27 12:44:55,015.015 INFO    ] ================================================
[2026-06-27 12:44:55,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:44:55
[2026-06-27 12:44:55,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:44:55,819.819 INFO    ] Initializing speech engine...
[2026-06-27 12:44:55,832.832 INFO    ] 2026-06-27 12:44:55
[2026-06-27 12:44:56,042.042 INFO    ] 2026-06-27 12:44:56
[2026-06-27 12:44:56,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:44:56,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:44:56,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:44:56,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:44:56,464.464 INFO    ] time= 27/06/2026 12:44:56
[2026-06-27 12:44:56,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:44:56,495.495 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:44:56,560.560 INFO    ] No existing commands found in stream
[2026-06-27 12:45:01,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:45:01,575.575 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-27 12:45:04,715.715 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:45:04,716.716 INFO    ] Checking for system updates...
[2026-06-27 12:45:04,739.739 INFO    ] 200
[2026-06-27 12:45:04,740.740 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:45:04,770.770 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:45:04,772.772 INFO    ] No update needed
[2026-06-27 12:45:04,773.773 INFO    ] Checking for camera pi updates...
[2026-06-27 12:45:04,795.795 INFO    ] 200
[2026-06-27 12:45:04,796.796 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:45:04,820.820 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:45:04,843.843 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:45:04,845.845 INFO    ] No camera update needed
[2026-06-27 12:45:04,846.846 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:45:04,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:45:04,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:45:04,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:45:06,892.892 INFO    ] ================================================
[2026-06-27 12:45:06,908.908 INFO    ] Launching Daemon at Sat Jun 27 12:45:06 IST 2026
[2026-06-27 12:45:06,920.920 INFO    ] ================================================
[2026-06-27 12:45:07,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:45:07
[2026-06-27 12:45:07,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:45:07,690.690 INFO    ] Initializing speech engine...
[2026-06-27 12:45:07,702.702 INFO    ] 2026-06-27 12:45:07
[2026-06-27 12:45:07,911.911 INFO    ] 2026-06-27 12:45:07
[2026-06-27 12:45:07,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:45:08,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:45:08,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:45:08,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:45:08,332.332 INFO    ] time= 27/06/2026 12:45:08
[2026-06-27 12:45:08,360.360 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:45:08,366.366 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:45:08,434.434 INFO    ] No existing commands found in stream
[2026-06-27 12:45:13,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:45:13,467.467 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-27 12:45:16,952.952 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 12:45:16,953.953 INFO    ] Checking for system updates...
[2026-06-27 12:45:16,976.976 INFO    ] 200
[2026-06-27 12:45:16,977.977 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:45:17,007.007 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:45:17,008.008 INFO    ] No update needed
[2026-06-27 12:45:17,010.010 INFO    ] Checking for camera pi updates...
[2026-06-27 12:45:17,030.030 INFO    ] 200
[2026-06-27 12:45:17,032.032 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:45:17,057.057 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:45:17,105.105 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:45:17,107.107 INFO    ] No camera update needed
[2026-06-27 12:45:17,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:45:17,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:45:17,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:45:17,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:45:19,153.153 INFO    ] ================================================
[2026-06-27 12:45:19,169.169 INFO    ] Launching Daemon at Sat Jun 27 12:45:19 IST 2026
[2026-06-27 12:45:19,181.181 INFO    ] ================================================
[2026-06-27 12:45:19,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:45:19
[2026-06-27 12:45:19,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:45:19,994.994 INFO    ] Initializing speech engine...
[2026-06-27 12:45:20,000.000 INFO    ] 2026-06-27 12:45:19
[2026-06-27 12:45:20,209.209 INFO    ] 2026-06-27 12:45:20
[2026-06-27 12:45:20,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:45:20,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:45:20,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:45:20,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:45:20,628.628 INFO    ] time= 27/06/2026 12:45:20
[2026-06-27 12:45:20,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:45:20,668.668 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:45:20,736.736 INFO    ] No existing commands found in stream
[2026-06-27 12:45:25,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:45:25,748.748 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-27 12:45:28,772.772 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 12:45:28,773.773 INFO    ] Checking for system updates...
[2026-06-27 12:45:28,795.795 INFO    ] 200
[2026-06-27 12:45:28,797.797 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:45:28,830.830 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:45:28,831.831 INFO    ] No update needed
[2026-06-27 12:45:28,832.832 INFO    ] Checking for camera pi updates...
[2026-06-27 12:45:28,856.856 INFO    ] 200
[2026-06-27 12:45:28,857.857 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:45:28,881.881 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:45:28,922.922 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:45:28,923.923 INFO    ] No camera update needed
[2026-06-27 12:45:28,924.924 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:45:28,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:45:28,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:45:28,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:45:30,969.969 INFO    ] ================================================
[2026-06-27 12:45:30,985.985 INFO    ] Launching Daemon at Sat Jun 27 12:45:30 IST 2026
[2026-06-27 12:45:31,996.996 INFO    ] ================================================
[2026-06-27 12:45:31,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:45:31
[2026-06-27 12:45:31,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:45:31,832.832 INFO    ] Initializing speech engine...
[2026-06-27 12:45:31,846.846 INFO    ] 2026-06-27 12:45:31
[2026-06-27 12:45:32,055.055 INFO    ] 2026-06-27 12:45:32
[2026-06-27 12:45:32,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:45:32,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:45:32,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:45:32,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:45:32,515.515 INFO    ] time= 27/06/2026 12:45:32
[2026-06-27 12:45:32,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:45:32,551.551 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:45:32,646.646 INFO    ] No existing commands found in stream
[2026-06-27 12:45:37,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:45:37,675.675 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-27 12:45:40,686.686 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:45:40,688.688 INFO    ] Checking for system updates...
[2026-06-27 12:45:40,709.709 INFO    ] 200
[2026-06-27 12:45:40,711.711 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:45:40,741.741 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:45:40,743.743 INFO    ] No update needed
[2026-06-27 12:45:40,745.745 INFO    ] Checking for camera pi updates...
[2026-06-27 12:45:40,765.765 INFO    ] 200
[2026-06-27 12:45:40,766.766 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:45:40,792.792 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:45:40,843.843 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:45:40,844.844 INFO    ] No camera update needed
[2026-06-27 12:45:40,846.846 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:45:40,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:45:40,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:45:40,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:45:42,897.897 INFO    ] ================================================
[2026-06-27 12:45:42,914.914 INFO    ] Launching Daemon at Sat Jun 27 12:45:42 IST 2026
[2026-06-27 12:45:42,926.926 INFO    ] ================================================
[2026-06-27 12:45:43,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:45:43
[2026-06-27 12:45:43,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:45:43,794.794 INFO    ] Initializing speech engine...
[2026-06-27 12:45:43,800.800 INFO    ] 2026-06-27 12:45:43
[2026-06-27 12:45:44,009.009 INFO    ] 2026-06-27 12:45:43
[2026-06-27 12:45:44,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:45:44,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:45:44,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:45:44,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:45:44,449.449 INFO    ] time= 27/06/2026 12:45:44
[2026-06-27 12:45:44,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:45:44,457.457 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:45:44,524.524 INFO    ] No existing commands found in stream
[2026-06-27 12:45:49,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:45:49,537.537 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-27 12:45:52,575.575 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 12:45:52,577.577 INFO    ] Checking for system updates...
[2026-06-27 12:45:52,600.600 INFO    ] 200
[2026-06-27 12:45:52,602.602 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:45:52,637.637 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:45:52,639.639 INFO    ] No update needed
[2026-06-27 12:45:52,640.640 INFO    ] Checking for camera pi updates...
[2026-06-27 12:45:52,665.665 INFO    ] 200
[2026-06-27 12:45:52,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:45:52,693.693 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:45:52,732.732 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:45:52,734.734 INFO    ] No camera update needed
[2026-06-27 12:45:52,735.735 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:45:52,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:45:52,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:45:52,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:45:54,788.788 INFO    ] ================================================
[2026-06-27 12:45:54,803.803 INFO    ] Launching Daemon at Sat Jun 27 12:45:54 IST 2026
[2026-06-27 12:45:54,814.814 INFO    ] ================================================
[2026-06-27 12:45:55,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:45:55
[2026-06-27 12:45:55,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:45:55,647.647 INFO    ] Initializing speech engine...
[2026-06-27 12:45:55,655.655 INFO    ] 2026-06-27 12:45:55
[2026-06-27 12:45:55,870.870 INFO    ] 2026-06-27 12:45:55
[2026-06-27 12:45:55,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:45:56,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:45:56,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:45:56,248.248 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:45:56,297.297 INFO    ] time= 27/06/2026 12:45:56
[2026-06-27 12:45:56,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:45:56,326.326 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:45:56,394.394 INFO    ] No existing commands found in stream
[2026-06-27 12:46:01,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:46:01,409.409 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-27 12:46:01,938.938 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:46:01,940.940 INFO    ] Checking for system updates...
[2026-06-27 12:46:01,967.967 INFO    ] 200
[2026-06-27 12:46:01,969.969 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:46:02,008.008 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:46:02,009.009 INFO    ] No update needed
[2026-06-27 12:46:02,011.011 INFO    ] Checking for camera pi updates...
[2026-06-27 12:46:02,037.037 INFO    ] 200
[2026-06-27 12:46:02,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:46:02,067.067 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:46:02,110.110 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:46:02,112.112 INFO    ] No camera update needed
[2026-06-27 12:46:02,114.114 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:46:02,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:46:02,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:46:02,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:46:04,164.164 INFO    ] ================================================
[2026-06-27 12:46:04,180.180 INFO    ] Launching Daemon at Sat Jun 27 12:46:04 IST 2026
[2026-06-27 12:46:04,192.192 INFO    ] ================================================
[2026-06-27 12:46:04,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:46:04
[2026-06-27 12:46:04,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:46:04,991.991 INFO    ] Initializing speech engine...
[2026-06-27 12:46:05,003.003 INFO    ] 2026-06-27 12:46:04
[2026-06-27 12:46:05,212.212 INFO    ] 2026-06-27 12:46:05
[2026-06-27 12:46:05,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:46:05,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:46:05,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:46:05,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:46:05,666.666 INFO    ] time= 27/06/2026 12:46:05
[2026-06-27 12:46:05,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:46:05,674.674 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:46:05,741.741 INFO    ] No existing commands found in stream
[2026-06-27 12:46:10,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:46:10,753.753 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-27 12:46:12,279.279 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:46:12,281.281 INFO    ] Checking for system updates...
[2026-06-27 12:46:12,302.302 INFO    ] 200
[2026-06-27 12:46:12,303.303 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:46:12,336.336 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:46:12,338.338 INFO    ] No update needed
[2026-06-27 12:46:12,339.339 INFO    ] Checking for camera pi updates...
[2026-06-27 12:46:12,363.363 INFO    ] 200
[2026-06-27 12:46:12,364.364 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:46:12,389.389 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:46:12,428.428 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:46:12,429.429 INFO    ] No camera update needed
[2026-06-27 12:46:12,430.430 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:46:12,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:46:12,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:46:12,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:46:14,477.477 INFO    ] ================================================
[2026-06-27 12:46:14,492.492 INFO    ] Launching Daemon at Sat Jun 27 12:46:14 IST 2026
[2026-06-27 12:46:14,502.502 INFO    ] ================================================
[2026-06-27 12:46:14,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:46:14
[2026-06-27 12:46:15,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:46:15,307.307 INFO    ] Initializing speech engine...
[2026-06-27 12:46:15,311.311 INFO    ] 2026-06-27 12:46:15
[2026-06-27 12:46:15,516.516 INFO    ] 2026-06-27 12:46:15
[2026-06-27 12:46:15,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:46:15,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:46:15,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:46:15,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:46:15,932.932 INFO    ] time= 27/06/2026 12:46:15
[2026-06-27 12:46:15,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:46:15,962.962 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:46:16,029.029 INFO    ] No existing commands found in stream
[2026-06-27 12:46:21,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:46:21,040.040 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-27 12:46:23,902.902 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 12:46:23,903.903 INFO    ] Checking for system updates...
[2026-06-27 12:46:23,925.925 INFO    ] 200
[2026-06-27 12:46:23,927.927 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:46:23,959.959 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:46:23,961.961 INFO    ] No update needed
[2026-06-27 12:46:23,962.962 INFO    ] Checking for camera pi updates...
[2026-06-27 12:46:23,983.983 INFO    ] 200
[2026-06-27 12:46:23,984.984 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:46:24,010.010 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:46:24,057.057 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:46:24,058.058 INFO    ] No camera update needed
[2026-06-27 12:46:24,060.060 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:46:24,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:46:24,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:46:24,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:46:26,106.106 INFO    ] ================================================
[2026-06-27 12:46:26,121.121 INFO    ] Launching Daemon at Sat Jun 27 12:46:26 IST 2026
[2026-06-27 12:46:26,132.132 INFO    ] ================================================
[2026-06-27 12:46:26,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:46:26
[2026-06-27 12:46:26,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:46:26,913.913 INFO    ] Initializing speech engine...
[2026-06-27 12:46:26,926.926 INFO    ] 2026-06-27 12:46:26
[2026-06-27 12:46:27,121.121 INFO    ] 2026-06-27 12:46:27
[2026-06-27 12:46:27,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:46:27,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:46:27,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:46:27,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:46:27,628.628 INFO    ] time= 27/06/2026 12:46:27
[2026-06-27 12:46:27,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:46:27,666.666 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:46:27,737.737 INFO    ] No existing commands found in stream
[2026-06-27 12:46:32,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:46:32,765.765 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-27 12:46:33,580.580 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 12:46:33,582.582 INFO    ] Checking for system updates...
[2026-06-27 12:46:33,603.603 INFO    ] 200
[2026-06-27 12:46:33,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:46:33,641.641 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:46:33,642.642 INFO    ] No update needed
[2026-06-27 12:46:33,643.643 INFO    ] Checking for camera pi updates...
[2026-06-27 12:46:33,663.663 INFO    ] 200
[2026-06-27 12:46:33,664.664 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:46:33,690.690 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:46:33,724.724 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:46:33,725.725 INFO    ] No camera update needed
[2026-06-27 12:46:33,726.726 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:46:33,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:46:33,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:46:33,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:46:35,774.774 INFO    ] ================================================
[2026-06-27 12:46:35,789.789 INFO    ] Launching Daemon at Sat Jun 27 12:46:35 IST 2026
[2026-06-27 12:46:35,800.800 INFO    ] ================================================
[2026-06-27 12:46:36,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:46:36
[2026-06-27 12:46:36,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:46:36,607.607 INFO    ] Initializing speech engine...
[2026-06-27 12:46:36,612.612 INFO    ] 2026-06-27 12:46:36
[2026-06-27 12:46:36,817.817 INFO    ] 2026-06-27 12:46:36
[2026-06-27 12:46:36,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:46:37,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:46:37,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:46:37,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:46:37,236.236 INFO    ] time= 27/06/2026 12:46:37
[2026-06-27 12:46:37,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:46:37,265.265 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:46:37,331.331 INFO    ] No existing commands found in stream
[2026-06-27 12:46:42,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:46:42,348.348 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-27 12:46:43,109.109 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 12:46:43,111.111 INFO    ] Checking for system updates...
[2026-06-27 12:46:43,132.132 INFO    ] 200
[2026-06-27 12:46:43,133.133 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:46:43,164.164 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:46:43,166.166 INFO    ] No update needed
[2026-06-27 12:46:43,167.167 INFO    ] Checking for camera pi updates...
[2026-06-27 12:46:43,188.188 INFO    ] 200
[2026-06-27 12:46:43,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:46:43,215.215 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:46:43,254.254 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:46:43,255.255 INFO    ] No camera update needed
[2026-06-27 12:46:43,256.256 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:46:43,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:46:43,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:46:43,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:46:45,301.301 INFO    ] ================================================
[2026-06-27 12:46:45,317.317 INFO    ] Launching Daemon at Sat Jun 27 12:46:45 IST 2026
[2026-06-27 12:46:45,328.328 INFO    ] ================================================
[2026-06-27 12:46:45,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:46:45
[2026-06-27 12:46:46,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:46:46,156.156 INFO    ] Initializing speech engine...
[2026-06-27 12:46:46,161.161 INFO    ] 2026-06-27 12:46:46
[2026-06-27 12:46:46,366.366 INFO    ] 2026-06-27 12:46:46
[2026-06-27 12:46:46,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:46:46,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:46:46,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:46:46,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:46:46,781.781 INFO    ] time= 27/06/2026 12:46:46
[2026-06-27 12:46:46,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:46:46,815.815 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:46:46,882.882 INFO    ] No existing commands found in stream
[2026-06-27 12:46:51,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:46:51,893.893 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-27 12:46:52,574.574 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 12:46:52,575.575 INFO    ] Checking for system updates...
[2026-06-27 12:46:52,597.597 INFO    ] 200
[2026-06-27 12:46:52,599.599 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:46:52,629.629 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:46:52,630.630 INFO    ] No update needed
[2026-06-27 12:46:52,632.632 INFO    ] Checking for camera pi updates...
[2026-06-27 12:46:52,651.651 INFO    ] 200
[2026-06-27 12:46:52,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:46:52,677.677 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:46:52,827.827 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:46:52,829.829 INFO    ] No camera update needed
[2026-06-27 12:46:52,830.830 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:46:52,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:46:52,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:46:52,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:46:54,878.878 INFO    ] ================================================
[2026-06-27 12:46:54,893.893 INFO    ] Launching Daemon at Sat Jun 27 12:46:54 IST 2026
[2026-06-27 12:46:54,904.904 INFO    ] ================================================
[2026-06-27 12:46:55,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:46:55
[2026-06-27 12:46:55,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:46:55,756.756 INFO    ] Initializing speech engine...
[2026-06-27 12:46:55,768.768 INFO    ] 2026-06-27 12:46:55
[2026-06-27 12:46:55,977.977 INFO    ] 2026-06-27 12:46:55
[2026-06-27 12:46:56,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:46:56,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:46:56,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:46:56,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:46:56,402.402 INFO    ] time= 27/06/2026 12:46:56
[2026-06-27 12:46:56,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:46:56,431.431 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:46:56,497.497 INFO    ] No existing commands found in stream
[2026-06-27 12:47:01,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:47:01,510.510 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-27 12:47:05,277.277 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 12:47:05,279.279 INFO    ] Checking for system updates...
[2026-06-27 12:47:05,302.302 INFO    ] 200
[2026-06-27 12:47:05,304.304 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:47:05,334.334 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:47:05,336.336 INFO    ] No update needed
[2026-06-27 12:47:05,337.337 INFO    ] Checking for camera pi updates...
[2026-06-27 12:47:05,358.358 INFO    ] 200
[2026-06-27 12:47:05,359.359 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:47:05,385.385 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:47:05,421.421 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:47:05,422.422 INFO    ] No camera update needed
[2026-06-27 12:47:05,424.424 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:47:05,425.425 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:47:05,428.428 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:47:05,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:47:07,470.470 INFO    ] ================================================
[2026-06-27 12:47:07,486.486 INFO    ] Launching Daemon at Sat Jun 27 12:47:07 IST 2026
[2026-06-27 12:47:07,497.497 INFO    ] ================================================
[2026-06-27 12:47:07,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:47:07
[2026-06-27 12:47:08,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:47:08,326.326 INFO    ] Initializing speech engine...
[2026-06-27 12:47:08,336.336 INFO    ] 2026-06-27 12:47:08
[2026-06-27 12:47:08,541.541 INFO    ] 2026-06-27 12:47:08
[2026-06-27 12:47:08,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:47:08,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:47:08,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:47:08,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:47:08,962.962 INFO    ] time= 27/06/2026 12:47:08
[2026-06-27 12:47:08,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:47:08,990.990 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:47:09,057.057 INFO    ] No existing commands found in stream
[2026-06-27 12:47:14,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:47:14,074.074 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-27 12:47:17,007.007 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 12:47:17,008.008 INFO    ] Checking for system updates...
[2026-06-27 12:47:17,030.030 INFO    ] 200
[2026-06-27 12:47:17,032.032 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:47:17,065.065 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:47:17,066.066 INFO    ] No update needed
[2026-06-27 12:47:17,067.067 INFO    ] Checking for camera pi updates...
[2026-06-27 12:47:17,091.091 INFO    ] 200
[2026-06-27 12:47:17,092.092 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:47:17,120.120 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:47:17,157.157 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:47:17,158.158 INFO    ] No camera update needed
[2026-06-27 12:47:17,159.159 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:47:17,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:47:17,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:47:17,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:47:19,206.206 INFO    ] ================================================
[2026-06-27 12:47:19,221.221 INFO    ] Launching Daemon at Sat Jun 27 12:47:19 IST 2026
[2026-06-27 12:47:19,231.231 INFO    ] ================================================
[2026-06-27 12:47:19,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:47:19
[2026-06-27 12:47:19,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:47:20,050.050 INFO    ] Initializing speech engine...
[2026-06-27 12:47:20,061.061 INFO    ] 2026-06-27 12:47:20
[2026-06-27 12:47:20,266.266 INFO    ] 2026-06-27 12:47:20
[2026-06-27 12:47:20,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:47:20,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:47:20,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:47:20,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:47:20,676.676 INFO    ] time= 27/06/2026 12:47:20
[2026-06-27 12:47:20,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:47:20,715.715 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:47:20,788.788 INFO    ] No existing commands found in stream
[2026-06-27 12:47:25,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:47:25,805.805 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-27 12:47:26,258.258 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 12:47:26,259.259 INFO    ] Checking for system updates...
[2026-06-27 12:47:26,280.280 INFO    ] 200
[2026-06-27 12:47:26,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:47:26,312.312 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:47:26,313.313 INFO    ] No update needed
[2026-06-27 12:47:26,315.315 INFO    ] Checking for camera pi updates...
[2026-06-27 12:47:26,336.336 INFO    ] 200
[2026-06-27 12:47:26,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:47:26,361.361 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:47:26,401.401 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:47:26,402.402 INFO    ] No camera update needed
[2026-06-27 12:47:26,404.404 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:47:26,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:47:26,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:47:26,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:47:28,451.451 INFO    ] ================================================
[2026-06-27 12:47:28,467.467 INFO    ] Launching Daemon at Sat Jun 27 12:47:28 IST 2026
[2026-06-27 12:47:28,478.478 INFO    ] ================================================
[2026-06-27 12:47:28,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:47:28
[2026-06-27 12:47:29,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:47:29,296.296 INFO    ] Initializing speech engine...
[2026-06-27 12:47:29,302.302 INFO    ] 2026-06-27 12:47:29
[2026-06-27 12:47:29,507.507 INFO    ] 2026-06-27 12:47:29
[2026-06-27 12:47:29,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:47:29,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:47:29,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:47:29,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:47:29,926.926 INFO    ] time= 27/06/2026 12:47:29
[2026-06-27 12:47:29,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:47:29,956.956 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:47:30,022.022 INFO    ] No existing commands found in stream
[2026-06-27 12:47:35,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:47:35,036.036 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-27 12:47:36,545.545 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 12:47:36,547.547 INFO    ] Checking for system updates...
[2026-06-27 12:47:36,569.569 INFO    ] 200
[2026-06-27 12:47:36,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:47:36,603.603 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:47:36,605.605 INFO    ] No update needed
[2026-06-27 12:47:36,606.606 INFO    ] Checking for camera pi updates...
[2026-06-27 12:47:36,627.627 INFO    ] 200
[2026-06-27 12:47:36,629.629 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:47:36,654.654 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:47:36,691.691 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:47:36,693.693 INFO    ] No camera update needed
[2026-06-27 12:47:36,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:47:36,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:47:36,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:47:36,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:47:38,742.742 INFO    ] ================================================
[2026-06-27 12:47:38,759.759 INFO    ] Launching Daemon at Sat Jun 27 12:47:38 IST 2026
[2026-06-27 12:47:38,770.770 INFO    ] ================================================
[2026-06-27 12:47:39,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:47:39
[2026-06-27 12:47:39,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:47:39,557.557 INFO    ] Initializing speech engine...
[2026-06-27 12:47:39,567.567 INFO    ] 2026-06-27 12:47:39
[2026-06-27 12:47:39,774.774 INFO    ] 2026-06-27 12:47:39
[2026-06-27 12:47:39,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:47:39,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:47:39,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:47:40,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:47:40,186.186 INFO    ] time= 27/06/2026 12:47:40
[2026-06-27 12:47:40,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:47:40,243.243 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:47:40,372.372 INFO    ] No existing commands found in stream
[2026-06-27 12:47:45,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:47:45,384.384 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-27 12:47:49,538.538 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 12:47:49,539.539 INFO    ] Checking for system updates...
[2026-06-27 12:47:49,563.563 INFO    ] 200
[2026-06-27 12:47:49,564.564 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:47:49,595.595 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:47:49,596.596 INFO    ] No update needed
[2026-06-27 12:47:49,598.598 INFO    ] Checking for camera pi updates...
[2026-06-27 12:47:49,618.618 INFO    ] 200
[2026-06-27 12:47:49,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:47:49,643.643 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:47:49,677.677 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:47:49,678.678 INFO    ] No camera update needed
[2026-06-27 12:47:49,679.679 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:47:49,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:47:49,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:47:49,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:47:51,725.725 INFO    ] ================================================
[2026-06-27 12:47:51,742.742 INFO    ] Launching Daemon at Sat Jun 27 12:47:51 IST 2026
[2026-06-27 12:47:51,753.753 INFO    ] ================================================
[2026-06-27 12:47:52,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:47:52
[2026-06-27 12:47:52,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:47:52,615.615 INFO    ] Initializing speech engine...
[2026-06-27 12:47:52,619.619 INFO    ] 2026-06-27 12:47:52
[2026-06-27 12:47:52,827.827 INFO    ] 2026-06-27 12:47:52
[2026-06-27 12:47:52,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:47:53,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:47:53,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:47:53,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:47:53,245.245 INFO    ] time= 27/06/2026 12:47:53
[2026-06-27 12:47:53,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:47:53,280.280 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:47:53,346.346 INFO    ] No existing commands found in stream
[2026-06-27 12:47:58,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:47:58,365.365 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-27 12:48:02,364.364 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 12:48:02,366.366 INFO    ] Checking for system updates...
[2026-06-27 12:48:02,395.395 INFO    ] 200
[2026-06-27 12:48:02,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:48:02,435.435 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:48:02,437.437 INFO    ] No update needed
[2026-06-27 12:48:02,439.439 INFO    ] Checking for camera pi updates...
[2026-06-27 12:48:02,466.466 INFO    ] 200
[2026-06-27 12:48:02,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:48:02,499.499 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:48:02,533.533 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:48:02,535.535 INFO    ] No camera update needed
[2026-06-27 12:48:02,537.537 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:48:02,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:48:02,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:48:02,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:48:04,588.588 INFO    ] ================================================
[2026-06-27 12:48:04,604.604 INFO    ] Launching Daemon at Sat Jun 27 12:48:04 IST 2026
[2026-06-27 12:48:04,616.616 INFO    ] ================================================
[2026-06-27 12:48:05,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:48:05
[2026-06-27 12:48:05,354.354 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:48:05,505.505 INFO    ] Initializing speech engine...
[2026-06-27 12:48:05,511.511 INFO    ] 2026-06-27 12:48:05
[2026-06-27 12:48:05,720.720 INFO    ] 2026-06-27 12:48:05
[2026-06-27 12:48:05,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:48:05,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:48:05,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:48:06,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:48:06,163.163 INFO    ] time= 27/06/2026 12:48:06
[2026-06-27 12:48:06,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:48:06,205.205 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:48:06,281.281 INFO    ] No existing commands found in stream
[2026-06-27 12:48:11,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:48:11,294.294 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-27 12:48:13,982.982 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:48:13,983.983 INFO    ] Checking for system updates...
[2026-06-27 12:48:14,006.006 INFO    ] 200
[2026-06-27 12:48:14,007.007 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:48:14,038.038 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:48:14,039.039 INFO    ] No update needed
[2026-06-27 12:48:14,041.041 INFO    ] Checking for camera pi updates...
[2026-06-27 12:48:14,062.062 INFO    ] 200
[2026-06-27 12:48:14,064.064 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:48:14,088.088 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:48:14,129.129 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:48:14,130.130 INFO    ] No camera update needed
[2026-06-27 12:48:14,131.131 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:48:14,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:48:14,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:48:14,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:48:16,177.177 INFO    ] ================================================
[2026-06-27 12:48:16,192.192 INFO    ] Launching Daemon at Sat Jun 27 12:48:16 IST 2026
[2026-06-27 12:48:16,203.203 INFO    ] ================================================
[2026-06-27 12:48:16,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:48:16
[2026-06-27 12:48:16,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:48:17,081.081 INFO    ] Initializing speech engine...
[2026-06-27 12:48:17,091.091 INFO    ] 2026-06-27 12:48:17
[2026-06-27 12:48:17,303.303 INFO    ] 2026-06-27 12:48:17
[2026-06-27 12:48:17,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:48:17,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:48:17,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:48:17,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:48:17,727.727 INFO    ] time= 27/06/2026 12:48:17
[2026-06-27 12:48:17,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:48:17,754.754 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:48:17,823.823 INFO    ] No existing commands found in stream
[2026-06-27 12:48:22,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:48:22,836.836 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-27 12:48:26,207.207 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:48:26,208.208 INFO    ] Checking for system updates...
[2026-06-27 12:48:26,230.230 INFO    ] 200
[2026-06-27 12:48:26,231.231 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:48:26,262.262 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:48:26,264.264 INFO    ] No update needed
[2026-06-27 12:48:26,266.266 INFO    ] Checking for camera pi updates...
[2026-06-27 12:48:26,285.285 INFO    ] 200
[2026-06-27 12:48:26,287.287 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:48:26,312.312 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:48:26,354.354 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:48:26,356.356 INFO    ] No camera update needed
[2026-06-27 12:48:26,357.357 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:48:26,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:48:26,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:48:26,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:48:28,402.402 INFO    ] ================================================
[2026-06-27 12:48:28,418.418 INFO    ] Launching Daemon at Sat Jun 27 12:48:28 IST 2026
[2026-06-27 12:48:28,430.430 INFO    ] ================================================
[2026-06-27 12:48:28,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:48:28
[2026-06-27 12:48:29,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:48:29,247.247 INFO    ] Initializing speech engine...
[2026-06-27 12:48:29,257.257 INFO    ] 2026-06-27 12:48:29
[2026-06-27 12:48:29,475.475 INFO    ] 2026-06-27 12:48:29
[2026-06-27 12:48:29,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:48:29,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:48:29,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:48:29,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:48:29,921.921 INFO    ] time= 27/06/2026 12:48:29
[2026-06-27 12:48:29,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:48:29,961.961 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:48:30,058.058 INFO    ] No existing commands found in stream
[2026-06-27 12:48:35,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:48:35,070.070 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-27 12:48:36,928.928 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 12:48:36,929.929 INFO    ] Checking for system updates...
[2026-06-27 12:48:36,952.952 INFO    ] 200
[2026-06-27 12:48:36,953.953 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:48:36,986.986 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:48:36,988.988 INFO    ] No update needed
[2026-06-27 12:48:36,989.989 INFO    ] Checking for camera pi updates...
[2026-06-27 12:48:37,010.010 INFO    ] 200
[2026-06-27 12:48:37,011.011 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:48:37,035.035 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:48:37,078.078 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:48:37,079.079 INFO    ] No camera update needed
[2026-06-27 12:48:37,081.081 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:48:37,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:48:37,085.085 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:48:37,088.088 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:48:39,128.128 INFO    ] ================================================
[2026-06-27 12:48:39,144.144 INFO    ] Launching Daemon at Sat Jun 27 12:48:39 IST 2026
[2026-06-27 12:48:39,155.155 INFO    ] ================================================
[2026-06-27 12:48:39,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:48:39
[2026-06-27 12:48:39,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:48:40,034.034 INFO    ] Initializing speech engine...
[2026-06-27 12:48:40,038.038 INFO    ] 2026-06-27 12:48:40
[2026-06-27 12:48:40,248.248 INFO    ] 2026-06-27 12:48:40
[2026-06-27 12:48:40,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:48:40,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:48:40,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:48:40,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:48:40,692.692 INFO    ] time= 27/06/2026 12:48:40
[2026-06-27 12:48:40,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:48:40,700.700 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:48:40,767.767 INFO    ] No existing commands found in stream
[2026-06-27 12:48:45,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:48:45,785.785 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-27 12:48:46,277.277 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:48:46,278.278 INFO    ] Checking for system updates...
[2026-06-27 12:48:46,299.299 INFO    ] 200
[2026-06-27 12:48:46,301.301 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:48:46,331.331 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:48:46,332.332 INFO    ] No update needed
[2026-06-27 12:48:46,334.334 INFO    ] Checking for camera pi updates...
[2026-06-27 12:48:46,354.354 INFO    ] 200
[2026-06-27 12:48:46,356.356 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:48:46,379.379 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:48:46,419.419 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:48:46,420.420 INFO    ] No camera update needed
[2026-06-27 12:48:46,422.422 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:48:46,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:48:46,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:48:46,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:48:48,470.470 INFO    ] ================================================
[2026-06-27 12:48:48,486.486 INFO    ] Launching Daemon at Sat Jun 27 12:48:48 IST 2026
[2026-06-27 12:48:48,497.497 INFO    ] ================================================
[2026-06-27 12:48:48,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:48:48
[2026-06-27 12:48:49,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:48:49,294.294 INFO    ] Initializing speech engine...
[2026-06-27 12:48:49,300.300 INFO    ] 2026-06-27 12:48:49
[2026-06-27 12:48:49,507.507 INFO    ] 2026-06-27 12:48:49
[2026-06-27 12:48:49,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:48:49,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:48:49,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:48:49,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:48:49,922.922 INFO    ] time= 27/06/2026 12:48:49
[2026-06-27 12:48:49,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:48:49,955.955 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:48:50,022.022 INFO    ] No existing commands found in stream
[2026-06-27 12:48:55,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:48:55,034.034 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-27 12:48:56,353.353 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 12:48:56,355.355 INFO    ] Checking for system updates...
[2026-06-27 12:48:56,377.377 INFO    ] 200
[2026-06-27 12:48:56,378.378 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:48:56,411.411 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:48:56,413.413 INFO    ] No update needed
[2026-06-27 12:48:56,414.414 INFO    ] Checking for camera pi updates...
[2026-06-27 12:48:56,434.434 INFO    ] 200
[2026-06-27 12:48:56,436.436 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:48:56,460.460 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:48:56,605.605 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:48:56,606.606 INFO    ] No camera update needed
[2026-06-27 12:48:56,608.608 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:48:56,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:48:56,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:48:56,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:48:58,654.654 INFO    ] ================================================
[2026-06-27 12:48:58,669.669 INFO    ] Launching Daemon at Sat Jun 27 12:48:58 IST 2026
[2026-06-27 12:48:58,680.680 INFO    ] ================================================
[2026-06-27 12:48:59,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:48:59
[2026-06-27 12:48:59,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:48:59,513.513 INFO    ] Initializing speech engine...
[2026-06-27 12:48:59,517.517 INFO    ] 2026-06-27 12:48:59
[2026-06-27 12:48:59,721.721 INFO    ] 2026-06-27 12:48:59
[2026-06-27 12:48:59,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:48:59,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:48:59,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:49:00,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:49:00,147.147 INFO    ] time= 27/06/2026 12:49:00
[2026-06-27 12:49:00,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:49:00,169.169 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:49:00,235.235 INFO    ] No existing commands found in stream
[2026-06-27 12:49:05,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:49:05,248.248 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-27 12:49:06,574.574 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 12:49:06,575.575 INFO    ] Checking for system updates...
[2026-06-27 12:49:06,596.596 INFO    ] 200
[2026-06-27 12:49:06,597.597 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:49:06,628.628 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:49:06,629.629 INFO    ] No update needed
[2026-06-27 12:49:06,630.630 INFO    ] Checking for camera pi updates...
[2026-06-27 12:49:06,650.650 INFO    ] 200
[2026-06-27 12:49:06,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:49:06,674.674 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:49:06,725.725 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:49:06,726.726 INFO    ] No camera update needed
[2026-06-27 12:49:06,727.727 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:49:06,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:49:06,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:49:06,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:49:08,773.773 INFO    ] ================================================
[2026-06-27 12:49:08,789.789 INFO    ] Launching Daemon at Sat Jun 27 12:49:08 IST 2026
[2026-06-27 12:49:08,800.800 INFO    ] ================================================
[2026-06-27 12:49:09,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:49:09
[2026-06-27 12:49:09,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:49:09,648.648 INFO    ] Initializing speech engine...
[2026-06-27 12:49:09,654.654 INFO    ] 2026-06-27 12:49:09
[2026-06-27 12:49:09,861.861 INFO    ] 2026-06-27 12:49:09
[2026-06-27 12:49:09,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:49:10,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:49:10,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:49:10,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:49:10,280.280 INFO    ] time= 27/06/2026 12:49:10
[2026-06-27 12:49:10,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:49:10,311.311 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:49:10,378.378 INFO    ] No existing commands found in stream
[2026-06-27 12:49:15,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:49:15,396.396 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-27 12:49:19,238.238 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 12:49:19,239.239 INFO    ] Checking for system updates...
[2026-06-27 12:49:19,262.262 INFO    ] 200
[2026-06-27 12:49:19,263.263 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:49:19,296.296 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:49:19,298.298 INFO    ] No update needed
[2026-06-27 12:49:19,299.299 INFO    ] Checking for camera pi updates...
[2026-06-27 12:49:19,319.319 INFO    ] 200
[2026-06-27 12:49:19,320.320 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:49:19,343.343 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:49:19,386.386 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:49:19,388.388 INFO    ] No camera update needed
[2026-06-27 12:49:19,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:49:19,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:49:19,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:49:19,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:49:21,436.436 INFO    ] ================================================
[2026-06-27 12:49:21,451.451 INFO    ] Launching Daemon at Sat Jun 27 12:49:21 IST 2026
[2026-06-27 12:49:21,462.462 INFO    ] ================================================
[2026-06-27 12:49:21,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:49:21
[2026-06-27 12:49:22,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:49:22,302.302 INFO    ] Initializing speech engine...
[2026-06-27 12:49:22,309.309 INFO    ] 2026-06-27 12:49:22
[2026-06-27 12:49:22,516.516 INFO    ] 2026-06-27 12:49:22
[2026-06-27 12:49:22,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:49:22,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:49:22,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:49:22,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:49:22,962.962 INFO    ] time= 27/06/2026 12:49:22
[2026-06-27 12:49:22,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:49:22,971.971 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:49:23,037.037 INFO    ] No existing commands found in stream
[2026-06-27 12:49:28,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:49:28,069.069 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-27 12:49:30,023.023 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:49:30,024.024 INFO    ] Checking for system updates...
[2026-06-27 12:49:30,046.046 INFO    ] 200
[2026-06-27 12:49:30,048.048 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:49:30,086.086 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:49:30,088.088 INFO    ] No update needed
[2026-06-27 12:49:30,090.090 INFO    ] Checking for camera pi updates...
[2026-06-27 12:49:30,118.118 INFO    ] 200
[2026-06-27 12:49:30,120.120 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:49:30,160.160 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:49:30,194.194 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:49:30,196.196 INFO    ] No camera update needed
[2026-06-27 12:49:30,197.197 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:49:30,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:49:30,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:49:30,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:49:32,247.247 INFO    ] ================================================
[2026-06-27 12:49:32,265.265 INFO    ] Launching Daemon at Sat Jun 27 12:49:32 IST 2026
[2026-06-27 12:49:32,271.271 INFO    ] ================================================
[2026-06-27 12:49:32,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:49:32
[2026-06-27 12:49:32,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:49:33,065.065 INFO    ] Initializing speech engine...
[2026-06-27 12:49:33,066.066 INFO    ] 2026-06-27 12:49:33
[2026-06-27 12:49:33,295.295 INFO    ] 2026-06-27 12:49:33
[2026-06-27 12:49:33,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:49:33,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:49:33,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:49:33,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:49:33,728.728 INFO    ] time= 27/06/2026 12:49:33
[2026-06-27 12:49:33,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:49:33,767.767 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:49:33,841.841 INFO    ] No existing commands found in stream
[2026-06-27 12:49:38,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:49:38,853.853 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-27 12:49:41,128.128 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 12:49:41,129.129 INFO    ] Checking for system updates...
[2026-06-27 12:49:41,153.153 INFO    ] 200
[2026-06-27 12:49:41,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:49:41,185.185 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:49:41,187.187 INFO    ] No update needed
[2026-06-27 12:49:41,188.188 INFO    ] Checking for camera pi updates...
[2026-06-27 12:49:41,207.207 INFO    ] 200
[2026-06-27 12:49:41,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:49:41,232.232 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:49:41,275.275 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:49:41,277.277 INFO    ] No camera update needed
[2026-06-27 12:49:41,278.278 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:49:41,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:49:41,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:49:41,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:49:43,331.331 INFO    ] ================================================
[2026-06-27 12:49:43,346.346 INFO    ] Launching Daemon at Sat Jun 27 12:49:43 IST 2026
[2026-06-27 12:49:43,357.357 INFO    ] ================================================
[2026-06-27 12:49:43,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:49:43
[2026-06-27 12:49:44,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:49:44,161.161 INFO    ] Initializing speech engine...
[2026-06-27 12:49:44,166.166 INFO    ] 2026-06-27 12:49:44
[2026-06-27 12:49:44,371.371 INFO    ] 2026-06-27 12:49:44
[2026-06-27 12:49:44,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:49:44,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:49:44,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:49:44,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:49:44,787.787 INFO    ] time= 27/06/2026 12:49:44
[2026-06-27 12:49:44,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:49:44,815.815 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:49:44,881.881 INFO    ] No existing commands found in stream
[2026-06-27 12:49:49,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:49:49,893.893 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-27 12:49:51,591.591 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:49:51,593.593 INFO    ] Checking for system updates...
[2026-06-27 12:49:51,614.614 INFO    ] 200
[2026-06-27 12:49:51,615.615 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:49:51,648.648 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:49:51,649.649 INFO    ] No update needed
[2026-06-27 12:49:51,650.650 INFO    ] Checking for camera pi updates...
[2026-06-27 12:49:51,673.673 INFO    ] 200
[2026-06-27 12:49:51,674.674 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:49:51,698.698 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:49:51,736.736 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:49:51,737.737 INFO    ] No camera update needed
[2026-06-27 12:49:51,738.738 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:49:51,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:49:51,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:49:51,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:49:53,785.785 INFO    ] ================================================
[2026-06-27 12:49:53,800.800 INFO    ] Launching Daemon at Sat Jun 27 12:49:53 IST 2026
[2026-06-27 12:49:53,811.811 INFO    ] ================================================
[2026-06-27 12:49:54,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:49:54
[2026-06-27 12:49:54,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:49:54,591.591 INFO    ] Initializing speech engine...
[2026-06-27 12:49:54,604.604 INFO    ] 2026-06-27 12:49:54
[2026-06-27 12:49:54,820.820 INFO    ] 2026-06-27 12:49:54
[2026-06-27 12:49:54,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:49:55,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:49:55,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:49:55,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:49:55,249.249 INFO    ] time= 27/06/2026 12:49:55
[2026-06-27 12:49:55,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:49:55,294.294 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:49:55,368.368 INFO    ] No existing commands found in stream
[2026-06-27 12:50:00,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:50:00,381.381 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-27 12:50:06,568.568 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 12:50:06,571.571 INFO    ] Checking for system updates...
[2026-06-27 12:50:06,613.613 INFO    ] 200
[2026-06-27 12:50:06,616.616 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:50:06,669.669 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:50:06,671.671 INFO    ] No update needed
[2026-06-27 12:50:06,674.674 INFO    ] Checking for camera pi updates...
[2026-06-27 12:50:06,707.707 INFO    ] 200
[2026-06-27 12:50:06,710.710 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:50:06,739.739 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:50:06,786.786 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:50:06,787.787 INFO    ] No camera update needed
[2026-06-27 12:50:06,788.788 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:50:06,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:50:06,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:50:06,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:50:08,834.834 INFO    ] ================================================
[2026-06-27 12:50:08,850.850 INFO    ] Launching Daemon at Sat Jun 27 12:50:08 IST 2026
[2026-06-27 12:50:08,860.860 INFO    ] ================================================
[2026-06-27 12:50:09,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:50:09
[2026-06-27 12:50:09,544.544 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:50:09,694.694 INFO    ] Initializing speech engine...
[2026-06-27 12:50:09,700.700 INFO    ] 2026-06-27 12:50:09
[2026-06-27 12:50:09,906.906 INFO    ] 2026-06-27 12:50:09
[2026-06-27 12:50:09,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:50:10,122.122 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:50:10,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:50:10,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:50:10,330.330 INFO    ] time= 27/06/2026 12:50:10
[2026-06-27 12:50:10,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:50:10,360.360 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:50:10,425.425 INFO    ] No existing commands found in stream
[2026-06-27 12:50:15,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:50:15,439.439 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-27 12:50:18,629.629 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:50:18,630.630 INFO    ] Checking for system updates...
[2026-06-27 12:50:18,666.666 INFO    ] 200
[2026-06-27 12:50:18,668.668 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:50:18,699.699 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:50:18,700.700 INFO    ] No update needed
[2026-06-27 12:50:18,701.701 INFO    ] Checking for camera pi updates...
[2026-06-27 12:50:18,721.721 INFO    ] 200
[2026-06-27 12:50:18,722.722 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:50:18,747.747 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:50:18,786.786 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:50:18,787.787 INFO    ] No camera update needed
[2026-06-27 12:50:18,789.789 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:50:18,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:50:18,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:50:18,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:50:20,836.836 INFO    ] ================================================
[2026-06-27 12:50:20,851.851 INFO    ] Launching Daemon at Sat Jun 27 12:50:20 IST 2026
[2026-06-27 12:50:20,862.862 INFO    ] ================================================
[2026-06-27 12:50:21,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:50:21
[2026-06-27 12:50:21,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:50:21,652.652 INFO    ] Initializing speech engine...
[2026-06-27 12:50:21,657.657 INFO    ] 2026-06-27 12:50:21
[2026-06-27 12:50:21,859.859 INFO    ] 2026-06-27 12:50:21
[2026-06-27 12:50:21,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:50:22,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:50:22,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:50:22,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:50:22,278.278 INFO    ] time= 27/06/2026 12:50:22
[2026-06-27 12:50:22,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:50:22,308.308 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:50:22,375.375 INFO    ] No existing commands found in stream
[2026-06-27 12:50:27,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:50:27,387.387 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-27 12:50:29,121.121 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:50:29,122.122 INFO    ] Checking for system updates...
[2026-06-27 12:50:29,143.143 INFO    ] 200
[2026-06-27 12:50:29,144.144 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:50:29,175.175 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:50:29,176.176 INFO    ] No update needed
[2026-06-27 12:50:29,178.178 INFO    ] Checking for camera pi updates...
[2026-06-27 12:50:29,201.201 INFO    ] 200
[2026-06-27 12:50:29,202.202 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:50:29,225.225 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:50:29,275.275 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:50:29,277.277 INFO    ] No camera update needed
[2026-06-27 12:50:29,278.278 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:50:29,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:50:29,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:50:29,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:50:31,323.323 INFO    ] ================================================
[2026-06-27 12:50:31,338.338 INFO    ] Launching Daemon at Sat Jun 27 12:50:31 IST 2026
[2026-06-27 12:50:31,349.349 INFO    ] ================================================
[2026-06-27 12:50:31,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:50:31
[2026-06-27 12:50:32,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:50:32,268.268 INFO    ] Initializing speech engine...
[2026-06-27 12:50:32,274.274 INFO    ] 2026-06-27 12:50:32
[2026-06-27 12:50:32,484.484 INFO    ] 2026-06-27 12:50:32
[2026-06-27 12:50:32,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:50:32,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:50:32,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:50:32,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:50:32,887.887 INFO    ] time= 27/06/2026 12:50:32
[2026-06-27 12:50:32,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:50:32,938.938 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:50:33,011.011 INFO    ] No existing commands found in stream
[2026-06-27 12:50:38,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:50:38,024.024 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-27 12:50:40,371.371 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 12:50:40,372.372 INFO    ] Checking for system updates...
[2026-06-27 12:50:40,394.394 INFO    ] 200
[2026-06-27 12:50:40,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:50:40,429.429 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:50:40,430.430 INFO    ] No update needed
[2026-06-27 12:50:40,432.432 INFO    ] Checking for camera pi updates...
[2026-06-27 12:50:40,454.454 INFO    ] 200
[2026-06-27 12:50:40,455.455 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:50:40,479.479 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:50:40,518.518 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:50:40,520.520 INFO    ] No camera update needed
[2026-06-27 12:50:40,521.521 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:50:40,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:50:40,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:50:40,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:50:42,567.567 INFO    ] ================================================
[2026-06-27 12:50:42,582.582 INFO    ] Launching Daemon at Sat Jun 27 12:50:42 IST 2026
[2026-06-27 12:50:42,593.593 INFO    ] ================================================
[2026-06-27 12:50:42,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:50:42
[2026-06-27 12:50:43,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:50:43,410.410 INFO    ] Initializing speech engine...
[2026-06-27 12:50:43,420.420 INFO    ] 2026-06-27 12:50:43
[2026-06-27 12:50:43,626.626 INFO    ] 2026-06-27 12:50:43
[2026-06-27 12:50:43,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:50:43,838.838 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:50:43,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:50:43,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:50:44,046.046 INFO    ] time= 27/06/2026 12:50:44
[2026-06-27 12:50:44,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:50:44,075.075 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:50:44,141.141 INFO    ] No existing commands found in stream
[2026-06-27 12:50:49,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:50:49,153.153 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-27 12:50:50,753.753 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:50:50,754.754 INFO    ] Checking for system updates...
[2026-06-27 12:50:50,775.775 INFO    ] 200
[2026-06-27 12:50:50,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:50:50,807.807 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:50:50,808.808 INFO    ] No update needed
[2026-06-27 12:50:50,809.809 INFO    ] Checking for camera pi updates...
[2026-06-27 12:50:50,831.831 INFO    ] 200
[2026-06-27 12:50:50,833.833 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:50:50,857.857 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:50:50,893.893 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:50:50,895.895 INFO    ] No camera update needed
[2026-06-27 12:50:50,896.896 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:50:50,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:50:50,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:50:50,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:50:52,941.941 INFO    ] ================================================
[2026-06-27 12:50:52,957.957 INFO    ] Launching Daemon at Sat Jun 27 12:50:52 IST 2026
[2026-06-27 12:50:52,968.968 INFO    ] ================================================
[2026-06-27 12:50:53,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:50:53
[2026-06-27 12:50:53,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:50:53,785.785 INFO    ] Initializing speech engine...
[2026-06-27 12:50:53,798.798 INFO    ] 2026-06-27 12:50:53
[2026-06-27 12:50:54,018.018 INFO    ] 2026-06-27 12:50:53
[2026-06-27 12:50:54,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:50:54,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:50:54,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:50:54,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:50:54,462.462 INFO    ] time= 27/06/2026 12:50:54
[2026-06-27 12:50:54,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:50:54,498.498 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:50:54,573.573 INFO    ] No existing commands found in stream
[2026-06-27 12:50:59,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:50:59,587.587 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-27 12:51:00,404.404 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:51:00,405.405 INFO    ] Checking for system updates...
[2026-06-27 12:51:00,426.426 INFO    ] 200
[2026-06-27 12:51:00,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:51:00,459.459 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:51:00,460.460 INFO    ] No update needed
[2026-06-27 12:51:00,461.461 INFO    ] Checking for camera pi updates...
[2026-06-27 12:51:00,482.482 INFO    ] 200
[2026-06-27 12:51:00,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:51:00,507.507 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:51:00,647.647 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:51:00,649.649 INFO    ] No camera update needed
[2026-06-27 12:51:00,650.650 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:51:00,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:51:00,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:51:00,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:51:02,689.689 INFO    ] ================================================
[2026-06-27 12:51:02,698.698 INFO    ] Launching Daemon at Sat Jun 27 12:51:02 IST 2026
[2026-06-27 12:51:02,704.704 INFO    ] ================================================
[2026-06-27 12:51:03,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:51:03
[2026-06-27 12:51:03,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:51:03,472.472 INFO    ] Initializing speech engine...
[2026-06-27 12:51:03,477.477 INFO    ] 2026-06-27 12:51:03
[2026-06-27 12:51:03,693.693 INFO    ] 2026-06-27 12:51:03
[2026-06-27 12:51:03,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:51:03,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:51:03,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:51:04,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:51:04,108.108 INFO    ] time= 27/06/2026 12:51:04
[2026-06-27 12:51:04,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:51:04,136.136 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:51:04,201.201 INFO    ] No existing commands found in stream
[2026-06-27 12:51:09,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:51:09,214.214 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-27 12:51:13,036.036 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 12:51:13,037.037 INFO    ] Checking for system updates...
[2026-06-27 12:51:13,059.059 INFO    ] 200
[2026-06-27 12:51:13,060.060 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:51:13,090.090 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:51:13,092.092 INFO    ] No update needed
[2026-06-27 12:51:13,093.093 INFO    ] Checking for camera pi updates...
[2026-06-27 12:51:13,113.113 INFO    ] 200
[2026-06-27 12:51:13,115.115 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:51:13,138.138 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:51:13,179.179 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:51:13,181.181 INFO    ] No camera update needed
[2026-06-27 12:51:13,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:51:13,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:51:13,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:51:13,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:51:15,229.229 INFO    ] ================================================
[2026-06-27 12:51:15,244.244 INFO    ] Launching Daemon at Sat Jun 27 12:51:15 IST 2026
[2026-06-27 12:51:15,255.255 INFO    ] ================================================
[2026-06-27 12:51:15,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:51:15
[2026-06-27 12:51:15,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:51:16,086.086 INFO    ] Initializing speech engine...
[2026-06-27 12:51:16,090.090 INFO    ] 2026-06-27 12:51:16
[2026-06-27 12:51:16,295.295 INFO    ] 2026-06-27 12:51:16
[2026-06-27 12:51:16,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:51:16,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:51:16,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:51:16,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:51:16,714.714 INFO    ] time= 27/06/2026 12:51:16
[2026-06-27 12:51:16,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:51:16,743.743 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:51:16,810.810 INFO    ] No existing commands found in stream
[2026-06-27 12:51:21,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:51:21,822.822 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-27 12:51:25,043.043 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:51:25,045.045 INFO    ] Checking for system updates...
[2026-06-27 12:51:25,067.067 INFO    ] 200
[2026-06-27 12:51:25,068.068 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:51:25,101.101 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:51:25,102.102 INFO    ] No update needed
[2026-06-27 12:51:25,103.103 INFO    ] Checking for camera pi updates...
[2026-06-27 12:51:25,130.130 INFO    ] 200
[2026-06-27 12:51:25,131.131 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:51:25,161.161 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:51:25,213.213 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:51:25,215.215 INFO    ] No camera update needed
[2026-06-27 12:51:25,217.217 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:51:25,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:51:25,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:51:25,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:51:27,259.259 INFO    ] ================================================
[2026-06-27 12:51:27,275.275 INFO    ] Launching Daemon at Sat Jun 27 12:51:27 IST 2026
[2026-06-27 12:51:27,288.288 INFO    ] ================================================
[2026-06-27 12:51:27,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:51:27
[2026-06-27 12:51:28,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:51:28,166.166 INFO    ] Initializing speech engine...
[2026-06-27 12:51:28,172.172 INFO    ] 2026-06-27 12:51:28
[2026-06-27 12:51:28,379.379 INFO    ] 2026-06-27 12:51:28
[2026-06-27 12:51:28,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:51:28,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:51:28,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:51:28,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:51:28,806.806 INFO    ] time= 27/06/2026 12:51:28
[2026-06-27 12:51:28,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:51:28,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:51:28,965.965 INFO    ] No existing commands found in stream
[2026-06-27 12:51:33,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:51:33,977.977 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-27 12:51:35,771.771 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 12:51:35,772.772 INFO    ] Checking for system updates...
[2026-06-27 12:51:35,794.794 INFO    ] 200
[2026-06-27 12:51:35,795.795 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:51:35,828.828 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:51:35,829.829 INFO    ] No update needed
[2026-06-27 12:51:35,830.830 INFO    ] Checking for camera pi updates...
[2026-06-27 12:51:35,850.850 INFO    ] 200
[2026-06-27 12:51:35,851.851 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:51:35,875.875 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:51:35,912.912 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:51:35,914.914 INFO    ] No camera update needed
[2026-06-27 12:51:35,915.915 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:51:35,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:51:35,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:51:35,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:51:37,965.965 INFO    ] ================================================
[2026-06-27 12:51:37,980.980 INFO    ] Launching Daemon at Sat Jun 27 12:51:37 IST 2026
[2026-06-27 12:51:37,991.991 INFO    ] ================================================
[2026-06-27 12:51:38,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:51:38
[2026-06-27 12:51:38,698.698 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:51:38,853.853 INFO    ] Initializing speech engine...
[2026-06-27 12:51:38,859.859 INFO    ] 2026-06-27 12:51:38
[2026-06-27 12:51:39,067.067 INFO    ] 2026-06-27 12:51:39
[2026-06-27 12:51:39,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:51:39,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:51:39,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:51:39,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:51:39,489.489 INFO    ] time= 27/06/2026 12:51:39
[2026-06-27 12:51:39,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:51:39,518.518 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:51:39,585.585 INFO    ] No existing commands found in stream
[2026-06-27 12:51:44,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:51:44,602.602 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-27 12:51:46,884.884 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 12:51:46,886.886 INFO    ] Checking for system updates...
[2026-06-27 12:51:46,908.908 INFO    ] 200
[2026-06-27 12:51:46,909.909 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:51:46,942.942 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:51:46,944.944 INFO    ] No update needed
[2026-06-27 12:51:46,945.945 INFO    ] Checking for camera pi updates...
[2026-06-27 12:51:46,966.966 INFO    ] 200
[2026-06-27 12:51:46,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:51:46,990.990 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:51:47,037.037 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:51:47,038.038 INFO    ] No camera update needed
[2026-06-27 12:51:47,040.040 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:51:47,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:51:47,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:51:47,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:51:49,085.085 INFO    ] ================================================
[2026-06-27 12:51:49,100.100 INFO    ] Launching Daemon at Sat Jun 27 12:51:49 IST 2026
[2026-06-27 12:51:49,111.111 INFO    ] ================================================
[2026-06-27 12:51:49,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:51:49
[2026-06-27 12:51:49,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:51:49,902.902 INFO    ] Initializing speech engine...
[2026-06-27 12:51:49,914.914 INFO    ] 2026-06-27 12:51:49
[2026-06-27 12:51:50,120.120 INFO    ] 2026-06-27 12:51:50
[2026-06-27 12:51:50,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:51:50,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:51:50,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:51:50,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:51:50,537.537 INFO    ] time= 27/06/2026 12:51:50
[2026-06-27 12:51:50,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:51:50,567.567 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:51:50,634.634 INFO    ] No existing commands found in stream
[2026-06-27 12:51:55,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:51:55,646.646 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-27 12:51:58,344.344 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:51:58,346.346 INFO    ] Checking for system updates...
[2026-06-27 12:51:58,369.369 INFO    ] 200
[2026-06-27 12:51:58,370.370 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:51:58,400.400 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:51:58,401.401 INFO    ] No update needed
[2026-06-27 12:51:58,403.403 INFO    ] Checking for camera pi updates...
[2026-06-27 12:51:58,422.422 INFO    ] 200
[2026-06-27 12:51:58,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:51:58,447.447 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:51:58,487.487 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:51:58,488.488 INFO    ] No camera update needed
[2026-06-27 12:51:58,490.490 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:51:58,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:51:58,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:51:58,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:52:00,539.539 INFO    ] ================================================
[2026-06-27 12:52:00,554.554 INFO    ] Launching Daemon at Sat Jun 27 12:52:00 IST 2026
[2026-06-27 12:52:00,565.565 INFO    ] ================================================
[2026-06-27 12:52:00,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:52:00
[2026-06-27 12:52:01,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:52:01,339.339 INFO    ] Initializing speech engine...
[2026-06-27 12:52:01,345.345 INFO    ] 2026-06-27 12:52:01
[2026-06-27 12:52:01,556.556 INFO    ] 2026-06-27 12:52:01
[2026-06-27 12:52:01,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:52:01,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:52:01,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:52:01,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:52:01,965.965 INFO    ] time= 27/06/2026 12:52:01
[2026-06-27 12:52:01,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:52:01,985.985 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:52:02,105.105 INFO    ] No existing commands found in stream
[2026-06-27 12:52:07,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:52:07,123.123 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-27 12:52:08,877.877 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:52:08,878.878 INFO    ] Checking for system updates...
[2026-06-27 12:52:08,899.899 INFO    ] 200
[2026-06-27 12:52:08,901.901 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:52:08,938.938 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:52:08,939.939 INFO    ] No update needed
[2026-06-27 12:52:08,941.941 INFO    ] Checking for camera pi updates...
[2026-06-27 12:52:08,961.961 INFO    ] 200
[2026-06-27 12:52:08,963.963 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:52:08,988.988 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:52:09,024.024 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:52:09,026.026 INFO    ] No camera update needed
[2026-06-27 12:52:09,027.027 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:52:09,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:52:09,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:52:09,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:52:11,073.073 INFO    ] ================================================
[2026-06-27 12:52:11,088.088 INFO    ] Launching Daemon at Sat Jun 27 12:52:11 IST 2026
[2026-06-27 12:52:11,099.099 INFO    ] ================================================
[2026-06-27 12:52:11,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:52:11
[2026-06-27 12:52:11,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:52:11,921.921 INFO    ] Initializing speech engine...
[2026-06-27 12:52:11,929.929 INFO    ] 2026-06-27 12:52:11
[2026-06-27 12:52:12,140.140 INFO    ] 2026-06-27 12:52:12
[2026-06-27 12:52:12,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:52:12,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:52:12,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:52:12,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:52:12,549.549 INFO    ] time= 27/06/2026 12:52:12
[2026-06-27 12:52:12,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:52:12,587.587 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:52:12,654.654 INFO    ] No existing commands found in stream
[2026-06-27 12:52:17,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:52:17,667.667 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-27 12:52:20,055.055 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:52:20,056.056 INFO    ] Checking for system updates...
[2026-06-27 12:52:20,077.077 INFO    ] 200
[2026-06-27 12:52:20,079.079 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:52:20,508.508 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:52:20,510.510 INFO    ] No update needed
[2026-06-27 12:52:20,511.511 INFO    ] Checking for camera pi updates...
[2026-06-27 12:52:20,543.543 INFO    ] 200
[2026-06-27 12:52:20,545.545 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:52:20,586.586 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:52:20,613.613 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:52:20,615.615 INFO    ] No camera update needed
[2026-06-27 12:52:20,617.617 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:52:20,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:52:20,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:52:20,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:52:22,665.665 INFO    ] ================================================
[2026-06-27 12:52:22,680.680 INFO    ] Launching Daemon at Sat Jun 27 12:52:22 IST 2026
[2026-06-27 12:52:22,691.691 INFO    ] ================================================
[2026-06-27 12:52:23,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:52:23
[2026-06-27 12:52:23,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:52:23,470.470 INFO    ] Initializing speech engine...
[2026-06-27 12:52:23,482.482 INFO    ] 2026-06-27 12:52:23
[2026-06-27 12:52:23,689.689 INFO    ] 2026-06-27 12:52:23
[2026-06-27 12:52:23,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:52:23,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:52:23,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:52:24,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:52:24,090.090 INFO    ] time= 27/06/2026 12:52:24
[2026-06-27 12:52:24,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:52:24,137.137 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:52:24,204.204 INFO    ] No existing commands found in stream
[2026-06-27 12:52:29,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:52:29,214.214 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-27 12:52:30,335.335 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:52:30,336.336 INFO    ] Checking for system updates...
[2026-06-27 12:52:30,361.361 INFO    ] 200
[2026-06-27 12:52:30,363.363 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:52:30,399.399 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:52:30,401.401 INFO    ] No update needed
[2026-06-27 12:52:30,402.402 INFO    ] Checking for camera pi updates...
[2026-06-27 12:52:30,426.426 INFO    ] 200
[2026-06-27 12:52:30,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:52:30,456.456 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:52:30,480.480 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:52:30,482.482 INFO    ] No camera update needed
[2026-06-27 12:52:30,483.483 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:52:30,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:52:30,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:52:30,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:52:32,517.517 INFO    ] ================================================
[2026-06-27 12:52:32,527.527 INFO    ] Launching Daemon at Sat Jun 27 12:52:32 IST 2026
[2026-06-27 12:52:32,534.534 INFO    ] ================================================
[2026-06-27 12:52:32,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:52:32
[2026-06-27 12:52:33,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:52:33,361.361 INFO    ] Initializing speech engine...
[2026-06-27 12:52:33,372.372 INFO    ] 2026-06-27 12:52:33
[2026-06-27 12:52:33,583.583 INFO    ] 2026-06-27 12:52:33
[2026-06-27 12:52:33,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:52:33,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:52:33,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:52:33,942.942 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:52:34,013.013 INFO    ] time= 27/06/2026 12:52:33
[2026-06-27 12:52:34,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:52:34,044.044 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:52:34,111.111 INFO    ] No existing commands found in stream
[2026-06-27 12:52:39,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:52:39,125.125 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-27 12:52:43,427.427 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:52:43,428.428 INFO    ] Checking for system updates...
[2026-06-27 12:52:43,450.450 INFO    ] 200
[2026-06-27 12:52:43,451.451 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:52:43,484.484 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:52:43,485.485 INFO    ] No update needed
[2026-06-27 12:52:43,486.486 INFO    ] Checking for camera pi updates...
[2026-06-27 12:52:43,507.507 INFO    ] 200
[2026-06-27 12:52:43,509.509 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:52:43,534.534 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:52:43,579.579 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:52:43,581.581 INFO    ] No camera update needed
[2026-06-27 12:52:43,582.582 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:52:43,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:52:43,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:52:43,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:52:45,627.627 INFO    ] ================================================
[2026-06-27 12:52:45,641.641 INFO    ] Launching Daemon at Sat Jun 27 12:52:45 IST 2026
[2026-06-27 12:52:45,652.652 INFO    ] ================================================
[2026-06-27 12:52:45,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:52:45
[2026-06-27 12:52:46,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:52:46,425.425 INFO    ] Initializing speech engine...
[2026-06-27 12:52:46,433.433 INFO    ] 2026-06-27 12:52:46
[2026-06-27 12:52:46,653.653 INFO    ] 2026-06-27 12:52:46
[2026-06-27 12:52:46,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:52:46,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:52:46,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:52:47,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:52:47,081.081 INFO    ] time= 27/06/2026 12:52:47
[2026-06-27 12:52:47,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:52:47,132.132 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:52:47,207.207 INFO    ] No existing commands found in stream
[2026-06-27 12:52:52,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:52:52,221.221 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-27 12:52:55,013.013 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:52:55,014.014 INFO    ] Checking for system updates...
[2026-06-27 12:52:55,036.036 INFO    ] 200
[2026-06-27 12:52:55,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:52:55,068.068 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:52:55,069.069 INFO    ] No update needed
[2026-06-27 12:52:55,070.070 INFO    ] Checking for camera pi updates...
[2026-06-27 12:52:55,091.091 INFO    ] 200
[2026-06-27 12:52:55,092.092 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:52:55,115.115 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:52:55,138.138 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:52:55,140.140 INFO    ] No camera update needed
[2026-06-27 12:52:55,141.141 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:52:55,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:52:55,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:52:55,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:52:57,186.186 INFO    ] ================================================
[2026-06-27 12:52:57,201.201 INFO    ] Launching Daemon at Sat Jun 27 12:52:57 IST 2026
[2026-06-27 12:52:57,211.211 INFO    ] ================================================
[2026-06-27 12:52:57,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:52:57
[2026-06-27 12:52:57,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:52:58,002.002 INFO    ] Initializing speech engine...
[2026-06-27 12:52:58,012.012 INFO    ] 2026-06-27 12:52:58
[2026-06-27 12:52:58,218.218 INFO    ] 2026-06-27 12:52:58
[2026-06-27 12:52:58,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:52:58,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:52:58,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:52:58,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:52:58,631.631 INFO    ] time= 27/06/2026 12:52:58
[2026-06-27 12:52:58,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:52:58,672.672 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:52:58,769.769 INFO    ] No existing commands found in stream
[2026-06-27 12:53:03,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:53:03,780.780 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-27 12:53:05,049.049 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:53:05,050.050 INFO    ] Checking for system updates...
[2026-06-27 12:53:05,073.073 INFO    ] 200
[2026-06-27 12:53:05,074.074 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:53:05,107.107 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:53:05,108.108 INFO    ] No update needed
[2026-06-27 12:53:05,110.110 INFO    ] Checking for camera pi updates...
[2026-06-27 12:53:05,129.129 INFO    ] 200
[2026-06-27 12:53:05,130.130 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:53:05,155.155 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:53:05,294.294 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:53:05,295.295 INFO    ] No camera update needed
[2026-06-27 12:53:05,297.297 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:53:05,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:53:05,301.301 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:53:05,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:53:07,343.343 INFO    ] ================================================
[2026-06-27 12:53:07,359.359 INFO    ] Launching Daemon at Sat Jun 27 12:53:07 IST 2026
[2026-06-27 12:53:07,370.370 INFO    ] ================================================
[2026-06-27 12:53:07,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:53:07
[2026-06-27 12:53:08,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:53:08,202.202 INFO    ] Initializing speech engine...
[2026-06-27 12:53:08,208.208 INFO    ] 2026-06-27 12:53:08
[2026-06-27 12:53:08,416.416 INFO    ] 2026-06-27 12:53:08
[2026-06-27 12:53:08,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:53:08,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:53:08,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:53:08,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:53:08,836.836 INFO    ] time= 27/06/2026 12:53:08
[2026-06-27 12:53:08,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:53:08,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:53:08,931.931 INFO    ] No existing commands found in stream
[2026-06-27 12:53:13,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:53:13,943.943 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-27 12:53:16,995.995 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:53:16,997.997 INFO    ] Checking for system updates...
[2026-06-27 12:53:17,018.018 INFO    ] 200
[2026-06-27 12:53:17,020.020 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:53:17,053.053 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:53:17,055.055 INFO    ] No update needed
[2026-06-27 12:53:17,056.056 INFO    ] Checking for camera pi updates...
[2026-06-27 12:53:17,077.077 INFO    ] 200
[2026-06-27 12:53:17,078.078 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:53:17,105.105 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:53:17,138.138 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:53:17,140.140 INFO    ] No camera update needed
[2026-06-27 12:53:17,141.141 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:53:17,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:53:17,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:53:17,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:53:19,187.187 INFO    ] ================================================
[2026-06-27 12:53:19,202.202 INFO    ] Launching Daemon at Sat Jun 27 12:53:19 IST 2026
[2026-06-27 12:53:19,213.213 INFO    ] ================================================
[2026-06-27 12:53:19,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:53:19
[2026-06-27 12:53:19,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:53:20,018.018 INFO    ] Initializing speech engine...
[2026-06-27 12:53:20,022.022 INFO    ] 2026-06-27 12:53:20
[2026-06-27 12:53:20,224.224 INFO    ] 2026-06-27 12:53:20
[2026-06-27 12:53:20,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:53:20,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:53:20,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:53:20,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:53:20,690.690 INFO    ] time= 27/06/2026 12:53:20
[2026-06-27 12:53:20,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:53:20,731.731 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:53:20,806.806 INFO    ] No existing commands found in stream
[2026-06-27 12:53:25,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:53:25,819.819 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-27 12:53:29,055.055 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 12:53:29,057.057 INFO    ] Checking for system updates...
[2026-06-27 12:53:29,077.077 INFO    ] 200
[2026-06-27 12:53:29,078.078 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:53:29,111.111 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:53:29,112.112 INFO    ] No update needed
[2026-06-27 12:53:29,113.113 INFO    ] Checking for camera pi updates...
[2026-06-27 12:53:29,134.134 INFO    ] 200
[2026-06-27 12:53:29,135.135 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:53:29,160.160 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:53:29,197.197 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:53:29,198.198 INFO    ] No camera update needed
[2026-06-27 12:53:29,200.200 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:53:29,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:53:29,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:53:29,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:53:31,247.247 INFO    ] ================================================
[2026-06-27 12:53:31,266.266 INFO    ] Launching Daemon at Sat Jun 27 12:53:31 IST 2026
[2026-06-27 12:53:31,278.278 INFO    ] ================================================
[2026-06-27 12:53:31,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:53:31
[2026-06-27 12:53:31,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:53:32,101.101 INFO    ] Initializing speech engine...
[2026-06-27 12:53:32,109.109 INFO    ] 2026-06-27 12:53:32
[2026-06-27 12:53:32,320.320 INFO    ] 2026-06-27 12:53:32
[2026-06-27 12:53:32,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:53:32,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:53:32,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:53:32,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:53:32,742.742 INFO    ] time= 27/06/2026 12:53:32
[2026-06-27 12:53:32,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:53:32,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:53:32,834.834 INFO    ] No existing commands found in stream
[2026-06-27 12:53:37,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:53:37,848.848 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-27 12:53:39,375.375 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 12:53:39,376.376 INFO    ] Checking for system updates...
[2026-06-27 12:53:39,398.398 INFO    ] 200
[2026-06-27 12:53:39,399.399 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:53:39,431.431 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:53:39,433.433 INFO    ] No update needed
[2026-06-27 12:53:39,434.434 INFO    ] Checking for camera pi updates...
[2026-06-27 12:53:39,455.455 INFO    ] 200
[2026-06-27 12:53:39,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:53:39,481.481 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:53:39,526.526 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:53:39,527.527 INFO    ] No camera update needed
[2026-06-27 12:53:39,528.528 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:53:39,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:53:39,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:53:39,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:53:41,575.575 INFO    ] ================================================
[2026-06-27 12:53:41,590.590 INFO    ] Launching Daemon at Sat Jun 27 12:53:41 IST 2026
[2026-06-27 12:53:41,601.601 INFO    ] ================================================
[2026-06-27 12:53:41,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:53:41
[2026-06-27 12:53:42,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:53:42,468.468 INFO    ] Initializing speech engine...
[2026-06-27 12:53:42,474.474 INFO    ] 2026-06-27 12:53:42
[2026-06-27 12:53:42,681.681 INFO    ] 2026-06-27 12:53:42
[2026-06-27 12:53:42,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:53:42,895.895 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:53:42,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:53:43,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:53:43,087.087 INFO    ] time= 27/06/2026 12:53:43
[2026-06-27 12:53:43,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:53:43,131.131 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:53:43,199.199 INFO    ] No existing commands found in stream
[2026-06-27 12:53:48,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:53:48,217.217 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-27 12:53:52,459.459 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 12:53:52,460.460 INFO    ] Checking for system updates...
[2026-06-27 12:53:52,484.484 INFO    ] 200
[2026-06-27 12:53:52,485.485 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:53:52,518.518 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:53:52,519.519 INFO    ] No update needed
[2026-06-27 12:53:52,520.520 INFO    ] Checking for camera pi updates...
[2026-06-27 12:53:52,539.539 INFO    ] 200
[2026-06-27 12:53:52,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:53:52,567.567 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:53:52,606.606 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:53:52,607.607 INFO    ] No camera update needed
[2026-06-27 12:53:52,609.609 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:53:52,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:53:52,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:53:52,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:53:54,655.655 INFO    ] ================================================
[2026-06-27 12:53:54,670.670 INFO    ] Launching Daemon at Sat Jun 27 12:53:54 IST 2026
[2026-06-27 12:53:54,681.681 INFO    ] ================================================
[2026-06-27 12:53:55,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:53:55
[2026-06-27 12:53:55,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:53:55,514.514 INFO    ] Initializing speech engine...
[2026-06-27 12:53:55,519.519 INFO    ] 2026-06-27 12:53:55
[2026-06-27 12:53:55,723.723 INFO    ] 2026-06-27 12:53:55
[2026-06-27 12:53:55,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:53:55,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:53:55,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:53:56,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:53:56,136.136 INFO    ] time= 27/06/2026 12:53:56
[2026-06-27 12:53:56,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:53:56,169.169 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:53:56,235.235 INFO    ] No existing commands found in stream
[2026-06-27 12:54:01,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:54:01,248.248 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-27 12:54:05,557.557 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:54:05,558.558 INFO    ] Checking for system updates...
[2026-06-27 12:54:05,580.580 INFO    ] 200
[2026-06-27 12:54:05,582.582 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:54:05,617.617 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:54:05,618.618 INFO    ] No update needed
[2026-06-27 12:54:05,619.619 INFO    ] Checking for camera pi updates...
[2026-06-27 12:54:05,640.640 INFO    ] 200
[2026-06-27 12:54:05,641.641 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:54:05,665.665 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:54:05,717.717 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:54:05,718.718 INFO    ] No camera update needed
[2026-06-27 12:54:05,719.719 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:54:05,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:54:05,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:54:05,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:54:07,765.765 INFO    ] ================================================
[2026-06-27 12:54:07,780.780 INFO    ] Launching Daemon at Sat Jun 27 12:54:07 IST 2026
[2026-06-27 12:54:07,790.790 INFO    ] ================================================
[2026-06-27 12:54:08,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:54:08
[2026-06-27 12:54:08,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:54:08,582.582 INFO    ] Initializing speech engine...
[2026-06-27 12:54:08,587.587 INFO    ] 2026-06-27 12:54:08
[2026-06-27 12:54:08,792.792 INFO    ] 2026-06-27 12:54:08
[2026-06-27 12:54:08,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:54:08,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:54:09,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:54:09,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:54:09,211.211 INFO    ] time= 27/06/2026 12:54:09
[2026-06-27 12:54:09,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:54:09,240.240 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:54:09,305.305 INFO    ] No existing commands found in stream
[2026-06-27 12:54:14,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:54:14,324.324 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-27 12:54:17,837.837 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 12:54:17,839.839 INFO    ] Checking for system updates...
[2026-06-27 12:54:17,860.860 INFO    ] 200
[2026-06-27 12:54:17,862.862 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:54:17,895.895 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:54:17,896.896 INFO    ] No update needed
[2026-06-27 12:54:17,898.898 INFO    ] Checking for camera pi updates...
[2026-06-27 12:54:17,917.917 INFO    ] 200
[2026-06-27 12:54:17,919.919 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:54:17,943.943 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:54:17,985.985 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:54:17,987.987 INFO    ] No camera update needed
[2026-06-27 12:54:17,988.988 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:54:17,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:54:17,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:54:17,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:54:20,036.036 INFO    ] ================================================
[2026-06-27 12:54:20,051.051 INFO    ] Launching Daemon at Sat Jun 27 12:54:20 IST 2026
[2026-06-27 12:54:20,063.063 INFO    ] ================================================
[2026-06-27 12:54:20,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:54:20
[2026-06-27 12:54:20,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:54:20,877.877 INFO    ] Initializing speech engine...
[2026-06-27 12:54:20,882.882 INFO    ] 2026-06-27 12:54:20
[2026-06-27 12:54:21,086.086 INFO    ] 2026-06-27 12:54:21
[2026-06-27 12:54:21,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:54:21,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:54:21,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:54:21,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:54:21,502.502 INFO    ] time= 27/06/2026 12:54:21
[2026-06-27 12:54:21,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:54:21,532.532 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:54:21,598.598 INFO    ] No existing commands found in stream
[2026-06-27 12:54:26,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:54:26,616.616 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-27 12:54:30,297.297 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 12:54:30,299.299 INFO    ] Checking for system updates...
[2026-06-27 12:54:30,321.321 INFO    ] 200
[2026-06-27 12:54:30,322.322 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:54:30,354.354 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:54:30,356.356 INFO    ] No update needed
[2026-06-27 12:54:30,357.357 INFO    ] Checking for camera pi updates...
[2026-06-27 12:54:30,379.379 INFO    ] 200
[2026-06-27 12:54:30,380.380 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:54:30,403.403 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:54:30,438.438 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:54:30,440.440 INFO    ] No camera update needed
[2026-06-27 12:54:30,441.441 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:54:30,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:54:30,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:54:30,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:54:32,488.488 INFO    ] ================================================
[2026-06-27 12:54:32,503.503 INFO    ] Launching Daemon at Sat Jun 27 12:54:32 IST 2026
[2026-06-27 12:54:32,514.514 INFO    ] ================================================
[2026-06-27 12:54:32,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:54:32
[2026-06-27 12:54:33,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:54:33,390.390 INFO    ] Initializing speech engine...
[2026-06-27 12:54:33,396.396 INFO    ] 2026-06-27 12:54:33
[2026-06-27 12:54:33,603.603 INFO    ] 2026-06-27 12:54:33
[2026-06-27 12:54:33,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:54:33,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:54:33,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:54:33,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:54:34,025.025 INFO    ] time= 27/06/2026 12:54:33
[2026-06-27 12:54:34,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:54:34,054.054 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:54:34,119.119 INFO    ] No existing commands found in stream
[2026-06-27 12:54:39,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:54:39,133.133 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-27 12:54:39,760.760 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:54:39,761.761 INFO    ] Checking for system updates...
[2026-06-27 12:54:39,784.784 INFO    ] 200
[2026-06-27 12:54:39,785.785 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:54:39,821.821 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:54:39,823.823 INFO    ] No update needed
[2026-06-27 12:54:39,824.824 INFO    ] Checking for camera pi updates...
[2026-06-27 12:54:39,847.847 INFO    ] 200
[2026-06-27 12:54:39,849.849 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:54:39,876.876 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:54:39,915.915 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:54:39,916.916 INFO    ] No camera update needed
[2026-06-27 12:54:39,918.918 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:54:39,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:54:39,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:54:39,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:54:41,965.965 INFO    ] ================================================
[2026-06-27 12:54:41,980.980 INFO    ] Launching Daemon at Sat Jun 27 12:54:41 IST 2026
[2026-06-27 12:54:41,991.991 INFO    ] ================================================
[2026-06-27 12:54:42,360.360 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:54:42
[2026-06-27 12:54:42,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:54:42,848.848 INFO    ] Initializing speech engine...
[2026-06-27 12:54:42,854.854 INFO    ] 2026-06-27 12:54:42
[2026-06-27 12:54:43,063.063 INFO    ] 2026-06-27 12:54:43
[2026-06-27 12:54:43,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:54:43,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:54:43,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:54:43,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:54:43,501.501 INFO    ] time= 27/06/2026 12:54:43
[2026-06-27 12:54:43,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:54:43,512.512 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:54:43,580.580 INFO    ] No existing commands found in stream
[2026-06-27 12:54:48,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:54:48,590.590 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-27 12:54:50,726.726 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:54:50,728.728 INFO    ] Checking for system updates...
[2026-06-27 12:54:50,749.749 INFO    ] 200
[2026-06-27 12:54:50,750.750 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:54:50,781.781 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:54:50,783.783 INFO    ] No update needed
[2026-06-27 12:54:50,784.784 INFO    ] Checking for camera pi updates...
[2026-06-27 12:54:50,805.805 INFO    ] 200
[2026-06-27 12:54:50,806.806 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:54:50,830.830 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:54:50,870.870 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:54:50,871.871 INFO    ] No camera update needed
[2026-06-27 12:54:50,872.872 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:54:50,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:54:50,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:54:50,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:54:52,919.919 INFO    ] ================================================
[2026-06-27 12:54:52,934.934 INFO    ] Launching Daemon at Sat Jun 27 12:54:52 IST 2026
[2026-06-27 12:54:52,946.946 INFO    ] ================================================
[2026-06-27 12:54:53,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:54:53
[2026-06-27 12:54:53,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:54:53,802.802 INFO    ] Initializing speech engine...
[2026-06-27 12:54:53,807.807 INFO    ] 2026-06-27 12:54:53
[2026-06-27 12:54:54,017.017 INFO    ] 2026-06-27 12:54:53
[2026-06-27 12:54:54,046.046 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:54:54,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:54:54,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:54:54,395.395 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:54:54,443.443 INFO    ] time= 27/06/2026 12:54:54
[2026-06-27 12:54:54,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:54:54,471.471 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:54:54,539.539 INFO    ] No existing commands found in stream
[2026-06-27 12:54:59,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:54:59,574.574 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-27 12:55:02,123.123 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:55:02,125.125 INFO    ] Checking for system updates...
[2026-06-27 12:55:02,155.155 INFO    ] 200
[2026-06-27 12:55:02,157.157 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:55:02,200.200 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:55:02,202.202 INFO    ] No update needed
[2026-06-27 12:55:02,204.204 INFO    ] Checking for camera pi updates...
[2026-06-27 12:55:02,230.230 INFO    ] 200
[2026-06-27 12:55:02,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:55:02,265.265 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:55:02,300.300 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:55:02,303.303 INFO    ] No camera update needed
[2026-06-27 12:55:02,306.306 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:55:02,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:55:02,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:55:02,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:55:04,362.362 INFO    ] ================================================
[2026-06-27 12:55:04,377.377 INFO    ] Launching Daemon at Sat Jun 27 12:55:04 IST 2026
[2026-06-27 12:55:04,388.388 INFO    ] ================================================
[2026-06-27 12:55:04,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:55:04
[2026-06-27 12:55:05,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:55:05,210.210 INFO    ] Initializing speech engine...
[2026-06-27 12:55:05,220.220 INFO    ] 2026-06-27 12:55:05
[2026-06-27 12:55:05,427.427 INFO    ] 2026-06-27 12:55:05
[2026-06-27 12:55:05,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:55:05,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:55:05,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:55:05,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:55:05,860.860 INFO    ] time= 27/06/2026 12:55:05
[2026-06-27 12:55:05,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:55:05,889.889 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:55:05,954.954 INFO    ] No existing commands found in stream
[2026-06-27 12:55:10,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:55:10,968.968 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-27 12:55:11,796.796 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 12:55:11,798.798 INFO    ] Checking for system updates...
[2026-06-27 12:55:11,818.818 INFO    ] 200
[2026-06-27 12:55:11,820.820 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:55:11,850.850 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:55:11,851.851 INFO    ] No update needed
[2026-06-27 12:55:11,852.852 INFO    ] Checking for camera pi updates...
[2026-06-27 12:55:11,874.874 INFO    ] 200
[2026-06-27 12:55:11,876.876 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:55:11,899.899 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:55:12,048.048 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:55:12,050.050 INFO    ] No camera update needed
[2026-06-27 12:55:12,051.051 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:55:12,052.052 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:55:12,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:55:12,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:55:14,097.097 INFO    ] ================================================
[2026-06-27 12:55:14,111.111 INFO    ] Launching Daemon at Sat Jun 27 12:55:14 IST 2026
[2026-06-27 12:55:14,122.122 INFO    ] ================================================
[2026-06-27 12:55:14,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:55:14
[2026-06-27 12:55:14,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:55:14,897.897 INFO    ] Initializing speech engine...
[2026-06-27 12:55:14,911.911 INFO    ] 2026-06-27 12:55:14
[2026-06-27 12:55:15,131.131 INFO    ] 2026-06-27 12:55:15
[2026-06-27 12:55:15,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:55:15,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:55:15,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:55:15,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:55:15,563.563 INFO    ] time= 27/06/2026 12:55:15
[2026-06-27 12:55:15,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:55:15,615.615 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:55:15,691.691 INFO    ] No existing commands found in stream
[2026-06-27 12:55:20,701.701 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:55:20,704.704 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-27 12:55:24,853.853 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:55:24,855.855 INFO    ] Checking for system updates...
[2026-06-27 12:55:24,875.875 INFO    ] 200
[2026-06-27 12:55:24,877.877 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:55:24,907.907 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:55:24,908.908 INFO    ] No update needed
[2026-06-27 12:55:24,910.910 INFO    ] Checking for camera pi updates...
[2026-06-27 12:55:24,929.929 INFO    ] 200
[2026-06-27 12:55:24,930.930 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:55:24,956.956 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:55:25,002.002 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:55:25,003.003 INFO    ] No camera update needed
[2026-06-27 12:55:25,005.005 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:55:25,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:55:25,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:55:25,011.011 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:55:27,051.051 INFO    ] ================================================
[2026-06-27 12:55:27,066.066 INFO    ] Launching Daemon at Sat Jun 27 12:55:27 IST 2026
[2026-06-27 12:55:27,077.077 INFO    ] ================================================
[2026-06-27 12:55:27,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:55:27
[2026-06-27 12:55:27,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:55:27,893.893 INFO    ] Initializing speech engine...
[2026-06-27 12:55:27,903.903 INFO    ] 2026-06-27 12:55:27
[2026-06-27 12:55:28,177.177 INFO    ] 2026-06-27 12:55:28
[2026-06-27 12:55:28,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:55:28,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:55:28,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:55:28,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:55:28,625.625 INFO    ] time= 27/06/2026 12:55:28
[2026-06-27 12:55:28,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:55:28,660.660 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:55:28,735.735 INFO    ] No existing commands found in stream
[2026-06-27 12:55:33,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:55:33,749.749 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-27 12:55:34,880.880 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:55:34,881.881 INFO    ] Checking for system updates...
[2026-06-27 12:55:34,902.902 INFO    ] 200
[2026-06-27 12:55:34,904.904 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:55:34,937.937 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:55:34,938.938 INFO    ] No update needed
[2026-06-27 12:55:34,940.940 INFO    ] Checking for camera pi updates...
[2026-06-27 12:55:34,959.959 INFO    ] 200
[2026-06-27 12:55:34,961.961 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:55:34,986.986 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:55:35,023.023 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:55:35,025.025 INFO    ] No camera update needed
[2026-06-27 12:55:35,026.026 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:55:35,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:55:35,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:55:35,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:55:37,073.073 INFO    ] ================================================
[2026-06-27 12:55:37,088.088 INFO    ] Launching Daemon at Sat Jun 27 12:55:37 IST 2026
[2026-06-27 12:55:37,098.098 INFO    ] ================================================
[2026-06-27 12:55:37,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:55:37
[2026-06-27 12:55:37,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:55:37,887.887 INFO    ] Initializing speech engine...
[2026-06-27 12:55:37,897.897 INFO    ] 2026-06-27 12:55:37
[2026-06-27 12:55:38,103.103 INFO    ] 2026-06-27 12:55:38
[2026-06-27 12:55:38,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:55:38,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:55:38,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:55:38,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:55:38,529.529 INFO    ] time= 27/06/2026 12:55:38
[2026-06-27 12:55:38,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:55:38,559.559 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:55:38,628.628 INFO    ] No existing commands found in stream
[2026-06-27 12:55:43,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:55:43,645.645 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-27 12:55:45,933.933 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 12:55:45,934.934 INFO    ] Checking for system updates...
[2026-06-27 12:55:45,959.959 INFO    ] 200
[2026-06-27 12:55:45,960.960 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:55:45,993.993 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:55:45,995.995 INFO    ] No update needed
[2026-06-27 12:55:45,997.997 INFO    ] Checking for camera pi updates...
[2026-06-27 12:55:46,017.017 INFO    ] 200
[2026-06-27 12:55:46,018.018 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:55:46,044.044 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:55:46,089.089 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:55:46,091.091 INFO    ] No camera update needed
[2026-06-27 12:55:46,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:55:46,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:55:46,097.097 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:55:46,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:55:48,138.138 INFO    ] ================================================
[2026-06-27 12:55:48,153.153 INFO    ] Launching Daemon at Sat Jun 27 12:55:48 IST 2026
[2026-06-27 12:55:48,164.164 INFO    ] ================================================
[2026-06-27 12:55:48,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:55:48
[2026-06-27 12:55:48,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:55:49,018.018 INFO    ] Initializing speech engine...
[2026-06-27 12:55:49,022.022 INFO    ] 2026-06-27 12:55:49
[2026-06-27 12:55:49,215.215 INFO    ] 2026-06-27 12:55:49
[2026-06-27 12:55:49,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:55:49,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:55:49,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:55:49,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:55:49,664.664 INFO    ] time= 27/06/2026 12:55:49
[2026-06-27 12:55:49,688.688 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:55:49,694.694 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:55:49,761.761 INFO    ] No existing commands found in stream
[2026-06-27 12:55:54,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:55:54,779.779 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-27 12:55:55,671.671 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:55:55,672.672 INFO    ] Checking for system updates...
[2026-06-27 12:55:55,694.694 INFO    ] 200
[2026-06-27 12:55:55,695.695 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:55:55,726.726 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:55:55,728.728 INFO    ] No update needed
[2026-06-27 12:55:55,729.729 INFO    ] Checking for camera pi updates...
[2026-06-27 12:55:55,750.750 INFO    ] 200
[2026-06-27 12:55:55,752.752 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:55:55,778.778 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:55:55,818.818 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:55:55,819.819 INFO    ] No camera update needed
[2026-06-27 12:55:55,821.821 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:55:55,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:55:55,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:55:55,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:55:57,868.868 INFO    ] ================================================
[2026-06-27 12:55:57,884.884 INFO    ] Launching Daemon at Sat Jun 27 12:55:57 IST 2026
[2026-06-27 12:55:57,894.894 INFO    ] ================================================
[2026-06-27 12:55:58,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:55:58
[2026-06-27 12:55:58,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:55:58,799.799 INFO    ] Initializing speech engine...
[2026-06-27 12:55:58,803.803 INFO    ] 2026-06-27 12:55:58
[2026-06-27 12:55:59,012.012 INFO    ] 2026-06-27 12:55:58
[2026-06-27 12:55:59,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:55:59,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:55:59,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:55:59,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:55:59,440.440 INFO    ] time= 27/06/2026 12:55:59
[2026-06-27 12:55:59,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:55:59,470.470 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:55:59,538.538 INFO    ] No existing commands found in stream
[2026-06-27 12:56:04,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:56:04,556.556 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-27 12:56:06,805.805 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:56:06,807.807 INFO    ] Checking for system updates...
[2026-06-27 12:56:06,829.829 INFO    ] 200
[2026-06-27 12:56:06,831.831 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:56:06,864.864 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:56:06,866.866 INFO    ] No update needed
[2026-06-27 12:56:06,867.867 INFO    ] Checking for camera pi updates...
[2026-06-27 12:56:06,887.887 INFO    ] 200
[2026-06-27 12:56:06,888.888 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:56:06,911.911 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:56:06,949.949 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:56:06,951.951 INFO    ] No camera update needed
[2026-06-27 12:56:06,952.952 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:56:06,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:56:06,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:56:06,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:56:09,999.999 INFO    ] ================================================
[2026-06-27 12:56:09,014.014 INFO    ] Launching Daemon at Sat Jun 27 12:56:09 IST 2026
[2026-06-27 12:56:09,025.025 INFO    ] ================================================
[2026-06-27 12:56:09,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:56:09
[2026-06-27 12:56:09,698.698 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:56:09,829.829 INFO    ] Initializing speech engine...
[2026-06-27 12:56:09,837.837 INFO    ] 2026-06-27 12:56:09
[2026-06-27 12:56:10,052.052 INFO    ] 2026-06-27 12:56:10
[2026-06-27 12:56:10,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:56:10,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:56:10,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:56:10,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:56:10,479.479 INFO    ] time= 27/06/2026 12:56:10
[2026-06-27 12:56:10,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:56:10,508.508 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:56:10,575.575 INFO    ] No existing commands found in stream
[2026-06-27 12:56:15,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:56:15,587.587 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-27 12:56:16,048.048 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 12:56:16,049.049 INFO    ] Checking for system updates...
[2026-06-27 12:56:16,070.070 INFO    ] 200
[2026-06-27 12:56:16,071.071 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:56:16,101.101 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:56:16,103.103 INFO    ] No update needed
[2026-06-27 12:56:16,104.104 INFO    ] Checking for camera pi updates...
[2026-06-27 12:56:16,124.124 INFO    ] 200
[2026-06-27 12:56:16,126.126 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:56:16,149.149 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:56:16,194.194 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:56:16,195.195 INFO    ] No camera update needed
[2026-06-27 12:56:16,197.197 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:56:16,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:56:16,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:56:16,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:56:18,249.249 INFO    ] ================================================
[2026-06-27 12:56:18,265.265 INFO    ] Launching Daemon at Sat Jun 27 12:56:18 IST 2026
[2026-06-27 12:56:18,275.275 INFO    ] ================================================
[2026-06-27 12:56:18,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:56:18
[2026-06-27 12:56:18,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:56:19,053.053 INFO    ] Initializing speech engine...
[2026-06-27 12:56:19,063.063 INFO    ] 2026-06-27 12:56:19
[2026-06-27 12:56:19,249.249 INFO    ] 2026-06-27 12:56:19
[2026-06-27 12:56:19,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:56:19,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:56:19,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:56:19,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:56:19,679.679 INFO    ] time= 27/06/2026 12:56:19
[2026-06-27 12:56:19,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:56:19,729.729 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:56:19,796.796 INFO    ] No existing commands found in stream
[2026-06-27 12:56:24,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:56:24,813.813 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-27 12:56:26,790.790 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:56:26,791.791 INFO    ] Checking for system updates...
[2026-06-27 12:56:26,814.814 INFO    ] 200
[2026-06-27 12:56:26,816.816 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:56:26,847.847 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:56:26,848.848 INFO    ] No update needed
[2026-06-27 12:56:26,849.849 INFO    ] Checking for camera pi updates...
[2026-06-27 12:56:26,870.870 INFO    ] 200
[2026-06-27 12:56:26,871.871 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:56:26,894.894 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:56:26,941.941 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:56:26,942.942 INFO    ] No camera update needed
[2026-06-27 12:56:26,943.943 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:56:26,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:56:26,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:56:26,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:56:28,990.990 INFO    ] ================================================
[2026-06-27 12:56:29,006.006 INFO    ] Launching Daemon at Sat Jun 27 12:56:29 IST 2026
[2026-06-27 12:56:29,017.017 INFO    ] ================================================
[2026-06-27 12:56:29,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:56:29
[2026-06-27 12:56:29,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:56:29,792.792 INFO    ] Initializing speech engine...
[2026-06-27 12:56:29,797.797 INFO    ] 2026-06-27 12:56:29
[2026-06-27 12:56:30,000.000 INFO    ] 2026-06-27 12:56:29
[2026-06-27 12:56:30,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:56:30,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:56:30,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:56:30,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:56:30,384.384 INFO    ] time= 27/06/2026 12:56:30
[2026-06-27 12:56:30,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:56:30,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:56:30,605.605 INFO    ] No existing commands found in stream
[2026-06-27 12:56:35,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:56:35,616.616 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-27 12:56:37,671.671 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:56:37,672.672 INFO    ] Checking for system updates...
[2026-06-27 12:56:37,695.695 INFO    ] 200
[2026-06-27 12:56:37,697.697 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:56:37,727.727 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:56:37,729.729 INFO    ] No update needed
[2026-06-27 12:56:37,730.730 INFO    ] Checking for camera pi updates...
[2026-06-27 12:56:37,750.750 INFO    ] 200
[2026-06-27 12:56:37,751.751 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:56:37,775.775 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:56:37,821.821 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:56:37,823.823 INFO    ] No camera update needed
[2026-06-27 12:56:37,824.824 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:56:37,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:56:37,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:56:37,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:56:39,872.872 INFO    ] ================================================
[2026-06-27 12:56:39,887.887 INFO    ] Launching Daemon at Sat Jun 27 12:56:39 IST 2026
[2026-06-27 12:56:39,898.898 INFO    ] ================================================
[2026-06-27 12:56:40,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:56:40
[2026-06-27 12:56:40,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:56:40,696.696 INFO    ] Initializing speech engine...
[2026-06-27 12:56:40,704.704 INFO    ] 2026-06-27 12:56:40
[2026-06-27 12:56:40,917.917 INFO    ] 2026-06-27 12:56:40
[2026-06-27 12:56:40,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:56:41,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:56:41,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:56:41,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:56:41,344.344 INFO    ] time= 27/06/2026 12:56:41
[2026-06-27 12:56:41,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:56:41,373.373 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:56:41,446.446 INFO    ] No existing commands found in stream
[2026-06-27 12:56:46,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:56:46,459.459 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-27 12:56:50,764.764 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 12:56:50,766.766 INFO    ] Checking for system updates...
[2026-06-27 12:56:50,787.787 INFO    ] 200
[2026-06-27 12:56:50,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:56:50,819.819 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:56:50,821.821 INFO    ] No update needed
[2026-06-27 12:56:50,822.822 INFO    ] Checking for camera pi updates...
[2026-06-27 12:56:50,842.842 INFO    ] 200
[2026-06-27 12:56:50,845.845 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:56:50,870.870 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:56:50,906.906 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:56:50,907.907 INFO    ] No camera update needed
[2026-06-27 12:56:50,909.909 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:56:50,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:56:50,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:56:50,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:56:52,957.957 INFO    ] ================================================
[2026-06-27 12:56:52,973.973 INFO    ] Launching Daemon at Sat Jun 27 12:56:52 IST 2026
[2026-06-27 12:56:52,983.983 INFO    ] ================================================
[2026-06-27 12:56:53,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:56:53
[2026-06-27 12:56:53,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:56:53,809.809 INFO    ] Initializing speech engine...
[2026-06-27 12:56:53,813.813 INFO    ] 2026-06-27 12:56:53
[2026-06-27 12:56:54,019.019 INFO    ] 2026-06-27 12:56:54
[2026-06-27 12:56:54,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:56:54,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:56:54,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:56:54,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:56:54,444.444 INFO    ] time= 27/06/2026 12:56:54
[2026-06-27 12:56:54,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:56:54,470.470 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:56:54,540.540 INFO    ] No existing commands found in stream
[2026-06-27 12:56:59,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:56:59,554.554 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-27 12:57:01,984.984 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 12:57:01,986.986 INFO    ] Checking for system updates...
[2026-06-27 12:57:02,034.034 INFO    ] 200
[2026-06-27 12:57:02,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:57:02,100.100 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:57:02,104.104 INFO    ] No update needed
[2026-06-27 12:57:02,107.107 INFO    ] Checking for camera pi updates...
[2026-06-27 12:57:02,140.140 INFO    ] 200
[2026-06-27 12:57:02,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:57:02,215.215 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:57:02,255.255 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:57:02,257.257 INFO    ] No camera update needed
[2026-06-27 12:57:02,259.259 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:57:02,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:57:02,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:57:02,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:57:04,310.310 INFO    ] ================================================
[2026-06-27 12:57:04,326.326 INFO    ] Launching Daemon at Sat Jun 27 12:57:04 IST 2026
[2026-06-27 12:57:04,337.337 INFO    ] ================================================
[2026-06-27 12:57:04,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:57:04
[2026-06-27 12:57:04,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:57:05,142.142 INFO    ] Initializing speech engine...
[2026-06-27 12:57:05,147.147 INFO    ] 2026-06-27 12:57:05
[2026-06-27 12:57:05,353.353 INFO    ] 2026-06-27 12:57:05
[2026-06-27 12:57:05,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:57:05,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:57:05,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:57:05,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:57:05,773.773 INFO    ] time= 27/06/2026 12:57:05
[2026-06-27 12:57:05,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:57:05,803.803 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:57:05,870.870 INFO    ] No existing commands found in stream
[2026-06-27 12:57:10,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:57:10,882.882 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-27 12:57:14,113.113 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:57:14,114.114 INFO    ] Checking for system updates...
[2026-06-27 12:57:14,136.136 INFO    ] 200
[2026-06-27 12:57:14,137.137 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:57:14,167.167 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:57:14,169.169 INFO    ] No update needed
[2026-06-27 12:57:14,170.170 INFO    ] Checking for camera pi updates...
[2026-06-27 12:57:14,189.189 INFO    ] 200
[2026-06-27 12:57:14,191.191 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:57:14,214.214 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:57:14,353.353 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:57:14,355.355 INFO    ] No camera update needed
[2026-06-27 12:57:14,356.356 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:57:14,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:57:14,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:57:14,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:57:16,403.403 INFO    ] ================================================
[2026-06-27 12:57:16,419.419 INFO    ] Launching Daemon at Sat Jun 27 12:57:16 IST 2026
[2026-06-27 12:57:16,430.430 INFO    ] ================================================
[2026-06-27 12:57:16,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:57:16
[2026-06-27 12:57:17,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:57:17,222.222 INFO    ] Initializing speech engine...
[2026-06-27 12:57:17,226.226 INFO    ] 2026-06-27 12:57:17
[2026-06-27 12:57:17,432.432 INFO    ] 2026-06-27 12:57:17
[2026-06-27 12:57:17,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:57:17,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:57:17,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:57:17,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:57:17,842.842 INFO    ] time= 27/06/2026 12:57:17
[2026-06-27 12:57:17,874.874 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:57:17,876.876 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:57:17,947.947 INFO    ] No existing commands found in stream
[2026-06-27 12:57:22,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:57:22,964.964 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-27 12:57:25,875.875 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 12:57:25,876.876 INFO    ] Checking for system updates...
[2026-06-27 12:57:25,898.898 INFO    ] 200
[2026-06-27 12:57:25,900.900 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:57:25,931.931 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:57:25,932.932 INFO    ] No update needed
[2026-06-27 12:57:25,934.934 INFO    ] Checking for camera pi updates...
[2026-06-27 12:57:25,953.953 INFO    ] 200
[2026-06-27 12:57:25,955.955 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:57:25,978.978 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:57:26,017.017 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:57:26,019.019 INFO    ] No camera update needed
[2026-06-27 12:57:26,020.020 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:57:26,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:57:26,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:57:26,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:57:28,065.065 INFO    ] ================================================
[2026-06-27 12:57:28,081.081 INFO    ] Launching Daemon at Sat Jun 27 12:57:28 IST 2026
[2026-06-27 12:57:28,092.092 INFO    ] ================================================
[2026-06-27 12:57:28,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:57:28
[2026-06-27 12:57:28,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:57:28,884.884 INFO    ] Initializing speech engine...
[2026-06-27 12:57:28,889.889 INFO    ] 2026-06-27 12:57:28
[2026-06-27 12:57:29,093.093 INFO    ] 2026-06-27 12:57:29
[2026-06-27 12:57:29,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:57:29,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:57:29,315.315 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:57:29,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:57:29,513.513 INFO    ] time= 27/06/2026 12:57:29
[2026-06-27 12:57:29,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:57:29,543.543 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:57:29,609.609 INFO    ] No existing commands found in stream
[2026-06-27 12:57:34,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:57:34,622.622 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-27 12:57:38,558.558 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:57:38,560.560 INFO    ] Checking for system updates...
[2026-06-27 12:57:38,581.581 INFO    ] 200
[2026-06-27 12:57:38,582.582 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:57:38,612.612 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:57:38,613.613 INFO    ] No update needed
[2026-06-27 12:57:38,615.615 INFO    ] Checking for camera pi updates...
[2026-06-27 12:57:38,635.635 INFO    ] 200
[2026-06-27 12:57:38,636.636 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:57:38,660.660 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:57:38,705.705 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:57:38,706.706 INFO    ] No camera update needed
[2026-06-27 12:57:38,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:57:38,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:57:38,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:57:38,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:57:40,755.755 INFO    ] ================================================
[2026-06-27 12:57:40,771.771 INFO    ] Launching Daemon at Sat Jun 27 12:57:40 IST 2026
[2026-06-27 12:57:40,781.781 INFO    ] ================================================
[2026-06-27 12:57:41,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:57:41
[2026-06-27 12:57:41,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:57:41,591.591 INFO    ] Initializing speech engine...
[2026-06-27 12:57:41,596.596 INFO    ] 2026-06-27 12:57:41
[2026-06-27 12:57:41,799.799 INFO    ] 2026-06-27 12:57:41
[2026-06-27 12:57:41,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:57:42,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:57:42,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:57:42,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:57:42,207.207 INFO    ] time= 27/06/2026 12:57:42
[2026-06-27 12:57:42,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:57:42,246.246 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:57:42,336.336 INFO    ] No existing commands found in stream
[2026-06-27 12:57:47,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:57:47,348.348 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-27 12:57:50,894.894 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 12:57:50,896.896 INFO    ] Checking for system updates...
[2026-06-27 12:57:50,916.916 INFO    ] 200
[2026-06-27 12:57:50,918.918 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:57:50,948.948 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:57:50,950.950 INFO    ] No update needed
[2026-06-27 12:57:50,951.951 INFO    ] Checking for camera pi updates...
[2026-06-27 12:57:50,971.971 INFO    ] 200
[2026-06-27 12:57:50,973.973 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:57:50,997.997 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:57:51,042.042 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:57:51,044.044 INFO    ] No camera update needed
[2026-06-27 12:57:51,045.045 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:57:51,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:57:51,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:57:51,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:57:53,094.094 INFO    ] ================================================
[2026-06-27 12:57:53,109.109 INFO    ] Launching Daemon at Sat Jun 27 12:57:53 IST 2026
[2026-06-27 12:57:53,121.121 INFO    ] ================================================
[2026-06-27 12:57:53,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:57:53
[2026-06-27 12:57:53,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:57:54,010.010 INFO    ] Initializing speech engine...
[2026-06-27 12:57:54,016.016 INFO    ] 2026-06-27 12:57:54
[2026-06-27 12:57:54,227.227 INFO    ] 2026-06-27 12:57:54
[2026-06-27 12:57:54,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:57:54,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:57:54,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:57:54,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:57:54,651.651 INFO    ] time= 27/06/2026 12:57:54
[2026-06-27 12:57:54,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:57:54,679.679 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:57:54,746.746 INFO    ] No existing commands found in stream
[2026-06-27 12:57:59,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:57:59,760.760 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-27 12:58:01,690.690 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:58:01,692.692 INFO    ] Checking for system updates...
[2026-06-27 12:58:01,719.719 INFO    ] 200
[2026-06-27 12:58:01,721.721 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:58:01,761.761 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:58:01,764.764 INFO    ] No update needed
[2026-06-27 12:58:01,766.766 INFO    ] Checking for camera pi updates...
[2026-06-27 12:58:01,792.792 INFO    ] 200
[2026-06-27 12:58:01,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:58:01,824.824 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:58:01,856.856 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:58:01,858.858 INFO    ] No camera update needed
[2026-06-27 12:58:01,860.860 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:58:01,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:58:01,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:58:01,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:58:03,912.912 INFO    ] ================================================
[2026-06-27 12:58:03,928.928 INFO    ] Launching Daemon at Sat Jun 27 12:58:03 IST 2026
[2026-06-27 12:58:03,939.939 INFO    ] ================================================
[2026-06-27 12:58:04,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:58:04
[2026-06-27 12:58:04,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:58:04,763.763 INFO    ] Initializing speech engine...
[2026-06-27 12:58:04,767.767 INFO    ] 2026-06-27 12:58:04
[2026-06-27 12:58:04,979.979 INFO    ] 2026-06-27 12:58:04
[2026-06-27 12:58:05,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:58:05,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:58:05,206.206 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:58:05,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:58:05,417.417 INFO    ] time= 27/06/2026 12:58:05
[2026-06-27 12:58:05,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:58:05,448.448 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:58:05,571.571 INFO    ] No existing commands found in stream
[2026-06-27 12:58:10,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:58:10,585.585 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-27 12:58:13,179.179 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 12:58:13,181.181 INFO    ] Checking for system updates...
[2026-06-27 12:58:13,202.202 INFO    ] 200
[2026-06-27 12:58:13,204.204 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:58:13,235.235 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:58:13,236.236 INFO    ] No update needed
[2026-06-27 12:58:13,237.237 INFO    ] Checking for camera pi updates...
[2026-06-27 12:58:13,257.257 INFO    ] 200
[2026-06-27 12:58:13,259.259 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:58:13,284.284 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:58:13,330.330 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:58:13,331.331 INFO    ] No camera update needed
[2026-06-27 12:58:13,333.333 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:58:13,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:58:13,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:58:13,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:58:15,379.379 INFO    ] ================================================
[2026-06-27 12:58:15,395.395 INFO    ] Launching Daemon at Sat Jun 27 12:58:15 IST 2026
[2026-06-27 12:58:15,405.405 INFO    ] ================================================
[2026-06-27 12:58:15,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:58:15
[2026-06-27 12:58:16,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:58:16,249.249 INFO    ] Initializing speech engine...
[2026-06-27 12:58:16,254.254 INFO    ] 2026-06-27 12:58:16
[2026-06-27 12:58:16,462.462 INFO    ] 2026-06-27 12:58:16
[2026-06-27 12:58:16,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:58:16,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:58:16,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:58:16,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:58:16,885.885 INFO    ] time= 27/06/2026 12:58:16
[2026-06-27 12:58:16,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:58:16,913.913 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:58:16,979.979 INFO    ] No existing commands found in stream
[2026-06-27 12:58:21,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:58:21,993.993 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-27 12:58:23,419.419 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:58:23,420.420 INFO    ] Checking for system updates...
[2026-06-27 12:58:23,442.442 INFO    ] 200
[2026-06-27 12:58:23,444.444 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:58:23,474.474 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:58:23,476.476 INFO    ] No update needed
[2026-06-27 12:58:23,477.477 INFO    ] Checking for camera pi updates...
[2026-06-27 12:58:23,496.496 INFO    ] 200
[2026-06-27 12:58:23,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:58:23,522.522 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:58:23,562.562 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:58:23,564.564 INFO    ] No camera update needed
[2026-06-27 12:58:23,565.565 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:58:23,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:58:23,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:58:23,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:58:25,610.610 INFO    ] ================================================
[2026-06-27 12:58:25,625.625 INFO    ] Launching Daemon at Sat Jun 27 12:58:25 IST 2026
[2026-06-27 12:58:25,636.636 INFO    ] ================================================
[2026-06-27 12:58:25,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:58:25
[2026-06-27 12:58:26,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:58:26,413.413 INFO    ] Initializing speech engine...
[2026-06-27 12:58:26,419.419 INFO    ] 2026-06-27 12:58:26
[2026-06-27 12:58:26,622.622 INFO    ] 2026-06-27 12:58:26
[2026-06-27 12:58:26,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:58:26,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:58:26,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:58:26,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:58:27,030.030 INFO    ] time= 27/06/2026 12:58:26
[2026-06-27 12:58:27,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:58:27,064.064 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:58:27,160.160 INFO    ] No existing commands found in stream
[2026-06-27 12:58:32,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:58:32,171.171 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-27 12:58:35,383.383 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 12:58:35,385.385 INFO    ] Checking for system updates...
[2026-06-27 12:58:35,405.405 INFO    ] 200
[2026-06-27 12:58:35,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:58:35,437.437 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:58:35,438.438 INFO    ] No update needed
[2026-06-27 12:58:35,439.439 INFO    ] Checking for camera pi updates...
[2026-06-27 12:58:35,459.459 INFO    ] 200
[2026-06-27 12:58:35,460.460 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:58:35,483.483 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:58:35,524.524 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:58:35,525.525 INFO    ] No camera update needed
[2026-06-27 12:58:35,526.526 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:58:35,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:58:35,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:58:35,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:58:37,573.573 INFO    ] ================================================
[2026-06-27 12:58:37,588.588 INFO    ] Launching Daemon at Sat Jun 27 12:58:37 IST 2026
[2026-06-27 12:58:37,599.599 INFO    ] ================================================
[2026-06-27 12:58:37,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:58:37
[2026-06-27 12:58:38,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:58:38,390.390 INFO    ] Initializing speech engine...
[2026-06-27 12:58:38,400.400 INFO    ] 2026-06-27 12:58:38
[2026-06-27 12:58:38,605.605 INFO    ] 2026-06-27 12:58:38
[2026-06-27 12:58:38,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:58:38,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:58:38,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:58:38,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:58:39,002.002 INFO    ] time= 27/06/2026 12:58:38
[2026-06-27 12:58:39,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:58:39,052.052 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:58:39,122.122 INFO    ] No existing commands found in stream
[2026-06-27 12:58:44,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:58:44,136.136 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-27 12:58:44,852.852 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 12:58:44,854.854 INFO    ] Checking for system updates...
[2026-06-27 12:58:44,875.875 INFO    ] 200
[2026-06-27 12:58:44,877.877 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:58:44,908.908 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:58:44,909.909 INFO    ] No update needed
[2026-06-27 12:58:44,910.910 INFO    ] Checking for camera pi updates...
[2026-06-27 12:58:44,930.930 INFO    ] 200
[2026-06-27 12:58:44,931.931 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:58:44,955.955 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:58:44,988.988 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:58:44,989.989 INFO    ] No camera update needed
[2026-06-27 12:58:44,990.990 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:58:44,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:58:44,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:58:44,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:58:47,035.035 INFO    ] ================================================
[2026-06-27 12:58:47,050.050 INFO    ] Launching Daemon at Sat Jun 27 12:58:47 IST 2026
[2026-06-27 12:58:47,061.061 INFO    ] ================================================
[2026-06-27 12:58:47,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:58:47
[2026-06-27 12:58:47,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:58:47,857.857 INFO    ] Initializing speech engine...
[2026-06-27 12:58:47,862.862 INFO    ] 2026-06-27 12:58:47
[2026-06-27 12:58:48,066.066 INFO    ] 2026-06-27 12:58:48
[2026-06-27 12:58:48,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:58:48,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:58:48,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:58:48,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:58:48,465.465 INFO    ] time= 27/06/2026 12:58:48
[2026-06-27 12:58:48,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:58:48,509.509 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:58:48,580.580 INFO    ] No existing commands found in stream
[2026-06-27 12:58:53,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:58:53,592.592 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-27 12:58:57,149.149 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 12:58:57,150.150 INFO    ] Checking for system updates...
[2026-06-27 12:58:57,171.171 INFO    ] 200
[2026-06-27 12:58:57,172.172 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:58:57,203.203 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:58:57,204.204 INFO    ] No update needed
[2026-06-27 12:58:57,206.206 INFO    ] Checking for camera pi updates...
[2026-06-27 12:58:57,227.227 INFO    ] 200
[2026-06-27 12:58:57,229.229 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:58:57,252.252 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:58:57,298.298 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:58:57,299.299 INFO    ] No camera update needed
[2026-06-27 12:58:57,301.301 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:58:57,302.302 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:58:57,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:58:57,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:58:59,346.346 INFO    ] ================================================
[2026-06-27 12:58:59,363.363 INFO    ] Launching Daemon at Sat Jun 27 12:58:59 IST 2026
[2026-06-27 12:58:59,375.375 INFO    ] ================================================
[2026-06-27 12:58:59,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:58:59
[2026-06-27 12:59:00,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:59:00,175.175 INFO    ] Initializing speech engine...
[2026-06-27 12:59:00,180.180 INFO    ] 2026-06-27 12:59:00
[2026-06-27 12:59:00,385.385 INFO    ] 2026-06-27 12:59:00
[2026-06-27 12:59:00,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:59:00,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:59:00,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:59:00,727.727 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:59:00,788.788 INFO    ] time= 27/06/2026 12:59:00
[2026-06-27 12:59:00,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:59:00,827.827 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:59:00,898.898 INFO    ] No existing commands found in stream
[2026-06-27 12:59:05,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:59:05,910.910 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-27 12:59:09,024.024 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 12:59:09,026.026 INFO    ] Checking for system updates...
[2026-06-27 12:59:09,047.047 INFO    ] 200
[2026-06-27 12:59:09,048.048 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:59:09,081.081 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:59:09,082.082 INFO    ] No update needed
[2026-06-27 12:59:09,084.084 INFO    ] Checking for camera pi updates...
[2026-06-27 12:59:09,105.105 INFO    ] 200
[2026-06-27 12:59:09,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:59:09,130.130 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:59:09,165.165 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 12:59:09,166.166 INFO    ] No camera update needed
[2026-06-27 12:59:09,168.168 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:59:09,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:59:09,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:59:09,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:59:11,215.215 INFO    ] ================================================
[2026-06-27 12:59:11,231.231 INFO    ] Launching Daemon at Sat Jun 27 12:59:11 IST 2026
[2026-06-27 12:59:11,242.242 INFO    ] ================================================
[2026-06-27 12:59:11,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:59:11
[2026-06-27 12:59:11,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:59:12,030.030 INFO    ] Initializing speech engine...
[2026-06-27 12:59:12,039.039 INFO    ] 2026-06-27 12:59:12
[2026-06-27 12:59:12,264.264 INFO    ] 2026-06-27 12:59:12
[2026-06-27 12:59:12,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:59:12,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:59:12,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:59:12,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:59:12,720.720 INFO    ] time= 27/06/2026 12:59:12
[2026-06-27 12:59:12,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:59:12,751.751 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:59:12,821.821 INFO    ] No existing commands found in stream
[2026-06-27 12:59:17,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:59:17,835.835 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-27 12:59:19,780.780 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 12:59:19,781.781 INFO    ] Checking for system updates...
[2026-06-27 12:59:19,803.803 INFO    ] 200
[2026-06-27 12:59:19,804.804 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:59:19,838.838 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:59:19,839.839 INFO    ] No update needed
[2026-06-27 12:59:19,840.840 INFO    ] Checking for camera pi updates...
[2026-06-27 12:59:19,860.860 INFO    ] 200
[2026-06-27 12:59:19,861.861 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:59:19,884.884 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:59:20,022.022 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:59:20,023.023 INFO    ] No camera update needed
[2026-06-27 12:59:20,024.024 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:59:20,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:59:20,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:59:20,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:59:22,073.073 INFO    ] ================================================
[2026-06-27 12:59:22,089.089 INFO    ] Launching Daemon at Sat Jun 27 12:59:22 IST 2026
[2026-06-27 12:59:22,100.100 INFO    ] ================================================
[2026-06-27 12:59:22,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:59:22
[2026-06-27 12:59:22,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:59:22,910.910 INFO    ] Initializing speech engine...
[2026-06-27 12:59:22,916.916 INFO    ] 2026-06-27 12:59:22
[2026-06-27 12:59:23,120.120 INFO    ] 2026-06-27 12:59:23
[2026-06-27 12:59:23,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:59:23,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:59:23,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:59:23,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:59:23,560.560 INFO    ] time= 27/06/2026 12:59:23
[2026-06-27 12:59:23,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:59:23,568.568 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:59:23,634.634 INFO    ] No existing commands found in stream
[2026-06-27 12:59:28,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:59:28,647.647 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-27 12:59:31,840.840 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:59:31,842.842 INFO    ] Checking for system updates...
[2026-06-27 12:59:31,871.871 INFO    ] 200
[2026-06-27 12:59:31,873.873 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:59:31,907.907 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:59:31,909.909 INFO    ] No update needed
[2026-06-27 12:59:31,911.911 INFO    ] Checking for camera pi updates...
[2026-06-27 12:59:31,933.933 INFO    ] 200
[2026-06-27 12:59:31,935.935 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:59:31,965.965 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:59:32,002.002 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:59:32,003.003 INFO    ] No camera update needed
[2026-06-27 12:59:32,005.005 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:59:32,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:59:32,010.010 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:59:32,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:59:34,055.055 INFO    ] ================================================
[2026-06-27 12:59:34,070.070 INFO    ] Launching Daemon at Sat Jun 27 12:59:34 IST 2026
[2026-06-27 12:59:34,081.081 INFO    ] ================================================
[2026-06-27 12:59:34,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:59:34
[2026-06-27 12:59:34,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:59:34,873.873 INFO    ] Initializing speech engine...
[2026-06-27 12:59:34,878.878 INFO    ] 2026-06-27 12:59:34
[2026-06-27 12:59:35,093.093 INFO    ] 2026-06-27 12:59:35
[2026-06-27 12:59:35,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:59:35,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:59:35,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:59:35,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:59:35,507.507 INFO    ] time= 27/06/2026 12:59:35
[2026-06-27 12:59:35,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:59:35,552.552 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:59:35,653.653 INFO    ] No existing commands found in stream
[2026-06-27 12:59:40,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:59:40,669.669 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-27 12:59:44,840.840 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 12:59:44,841.841 INFO    ] Checking for system updates...
[2026-06-27 12:59:44,862.862 INFO    ] 200
[2026-06-27 12:59:44,864.864 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:59:44,894.894 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:59:44,895.895 INFO    ] No update needed
[2026-06-27 12:59:44,896.896 INFO    ] Checking for camera pi updates...
[2026-06-27 12:59:44,917.917 INFO    ] 200
[2026-06-27 12:59:44,919.919 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:59:44,945.945 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:59:44,987.987 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:59:44,988.988 INFO    ] No camera update needed
[2026-06-27 12:59:44,989.989 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:59:44,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:59:44,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:59:44,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:59:47,036.036 INFO    ] ================================================
[2026-06-27 12:59:47,052.052 INFO    ] Launching Daemon at Sat Jun 27 12:59:47 IST 2026
[2026-06-27 12:59:47,063.063 INFO    ] ================================================
[2026-06-27 12:59:47,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:59:47
[2026-06-27 12:59:47,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:59:47,841.841 INFO    ] Initializing speech engine...
[2026-06-27 12:59:47,854.854 INFO    ] 2026-06-27 12:59:47
[2026-06-27 12:59:48,064.064 INFO    ] 2026-06-27 12:59:48
[2026-06-27 12:59:48,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:59:48,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:59:48,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:59:48,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:59:48,468.468 INFO    ] time= 27/06/2026 12:59:48
[2026-06-27 12:59:48,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:59:48,518.518 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:59:48,585.585 INFO    ] No existing commands found in stream
[2026-06-27 12:59:53,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 12:59:53,597.597 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-27 12:59:55,890.890 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 12:59:55,892.892 INFO    ] Checking for system updates...
[2026-06-27 12:59:55,912.912 INFO    ] 200
[2026-06-27 12:59:55,914.914 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:59:55,948.948 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:59:55,949.949 INFO    ] No update needed
[2026-06-27 12:59:55,951.951 INFO    ] Checking for camera pi updates...
[2026-06-27 12:59:55,974.974 INFO    ] 200
[2026-06-27 12:59:55,976.976 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 12:59:55,999.999 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 12:59:56,034.034 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 12:59:56,036.036 INFO    ] No camera update needed
[2026-06-27 12:59:56,037.037 INFO    ] Script finished. Safe exiting...
[2026-06-27 12:59:56,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 12:59:56,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 12:59:56,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 12:59:58,084.084 INFO    ] ================================================
[2026-06-27 12:59:58,100.100 INFO    ] Launching Daemon at Sat Jun 27 12:59:58 IST 2026
[2026-06-27 12:59:58,111.111 INFO    ] ================================================
[2026-06-27 12:59:58,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 12:59:58
[2026-06-27 12:59:58,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 12:59:58,915.915 INFO    ] Initializing speech engine...
[2026-06-27 12:59:58,920.920 INFO    ] 2026-06-27 12:59:58
[2026-06-27 12:59:59,125.125 INFO    ] 2026-06-27 12:59:59
[2026-06-27 12:59:59,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 12:59:59,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 12:59:59,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 12:59:59,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 12:59:59,543.543 INFO    ] time= 27/06/2026 12:59:59
[2026-06-27 12:59:59,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 12:59:59,572.572 INFO    ] Checking for existing commands in stream...
[2026-06-27 12:59:59,639.639 INFO    ] No existing commands found in stream
[2026-06-27 13:00:04,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:00:04,648.648 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-27 13:00:08,346.346 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 13:00:08,349.349 INFO    ] Checking for system updates...
[2026-06-27 13:00:08,390.390 INFO    ] 200
[2026-06-27 13:00:08,393.393 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:00:08,456.456 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:00:08,459.459 INFO    ] No update needed
[2026-06-27 13:00:08,462.462 INFO    ] Checking for camera pi updates...
[2026-06-27 13:00:08,484.484 INFO    ] 200
[2026-06-27 13:00:08,485.485 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:00:08,509.509 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:00:08,555.555 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:00:08,557.557 INFO    ] No camera update needed
[2026-06-27 13:00:08,558.558 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:00:08,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:00:08,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:00:08,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:00:10,607.607 INFO    ] ================================================
[2026-06-27 13:00:10,623.623 INFO    ] Launching Daemon at Sat Jun 27 13:00:10 IST 2026
[2026-06-27 13:00:10,634.634 INFO    ] ================================================
[2026-06-27 13:00:10,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:00:10
[2026-06-27 13:00:11,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:00:11,422.422 INFO    ] Initializing speech engine...
[2026-06-27 13:00:11,427.427 INFO    ] 2026-06-27 13:00:11
[2026-06-27 13:00:11,630.630 INFO    ] 2026-06-27 13:00:11
[2026-06-27 13:00:11,662.662 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:00:11,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:00:11,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:00:12,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:00:12,095.095 INFO    ] time= 27/06/2026 13:00:12
[2026-06-27 13:00:12,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:00:12,141.141 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:00:12,216.216 INFO    ] No existing commands found in stream
[2026-06-27 13:00:17,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:00:17,229.229 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-27 13:00:21,246.246 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 13:00:21,247.247 INFO    ] Checking for system updates...
[2026-06-27 13:00:21,270.270 INFO    ] 200
[2026-06-27 13:00:21,272.272 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:00:21,304.304 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:00:21,306.306 INFO    ] No update needed
[2026-06-27 13:00:21,307.307 INFO    ] Checking for camera pi updates...
[2026-06-27 13:00:21,327.327 INFO    ] 200
[2026-06-27 13:00:21,328.328 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:00:21,354.354 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:00:21,398.398 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:00:21,400.400 INFO    ] No camera update needed
[2026-06-27 13:00:21,401.401 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:00:21,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:00:21,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:00:21,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:00:23,451.451 INFO    ] ================================================
[2026-06-27 13:00:23,467.467 INFO    ] Launching Daemon at Sat Jun 27 13:00:23 IST 2026
[2026-06-27 13:00:23,478.478 INFO    ] ================================================
[2026-06-27 13:00:23,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:00:23
[2026-06-27 13:00:24,124.124 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:00:24,263.263 INFO    ] Initializing speech engine...
[2026-06-27 13:00:24,272.272 INFO    ] 2026-06-27 13:00:24
[2026-06-27 13:00:24,478.478 INFO    ] 2026-06-27 13:00:24
[2026-06-27 13:00:24,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:00:24,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:00:24,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:00:24,849.849 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:00:24,914.914 INFO    ] time= 27/06/2026 13:00:24
[2026-06-27 13:00:24,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:00:24,963.963 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:00:25,080.080 INFO    ] No existing commands found in stream
[2026-06-27 13:00:30,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:00:30,092.092 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-27 13:00:31,154.154 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 13:00:31,155.155 INFO    ] Checking for system updates...
[2026-06-27 13:00:31,176.176 INFO    ] 200
[2026-06-27 13:00:31,177.177 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:00:31,210.210 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:00:31,212.212 INFO    ] No update needed
[2026-06-27 13:00:31,213.213 INFO    ] Checking for camera pi updates...
[2026-06-27 13:00:31,234.234 INFO    ] 200
[2026-06-27 13:00:31,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:00:31,258.258 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:00:31,300.300 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:00:31,301.301 INFO    ] No camera update needed
[2026-06-27 13:00:31,302.302 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:00:31,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:00:31,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:00:31,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:00:33,334.334 INFO    ] ================================================
[2026-06-27 13:00:33,342.342 INFO    ] Launching Daemon at Sat Jun 27 13:00:33 IST 2026
[2026-06-27 13:00:33,348.348 INFO    ] ================================================
[2026-06-27 13:00:33,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:00:33
[2026-06-27 13:00:34,050.050 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:00:34,184.184 INFO    ] Initializing speech engine...
[2026-06-27 13:00:34,189.189 INFO    ] 2026-06-27 13:00:34
[2026-06-27 13:00:34,412.412 INFO    ] 2026-06-27 13:00:34
[2026-06-27 13:00:34,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:00:34,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:00:34,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:00:34,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:00:34,864.864 INFO    ] time= 27/06/2026 13:00:34
[2026-06-27 13:00:34,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:00:34,905.905 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:00:34,981.981 INFO    ] No existing commands found in stream
[2026-06-27 13:00:39,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:00:39,995.995 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-27 13:00:42,154.154 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 13:00:42,155.155 INFO    ] Checking for system updates...
[2026-06-27 13:00:42,176.176 INFO    ] 200
[2026-06-27 13:00:42,177.177 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:00:42,207.207 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:00:42,208.208 INFO    ] No update needed
[2026-06-27 13:00:42,210.210 INFO    ] Checking for camera pi updates...
[2026-06-27 13:00:42,229.229 INFO    ] 200
[2026-06-27 13:00:42,231.231 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:00:42,256.256 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:00:42,296.296 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:00:42,297.297 INFO    ] No camera update needed
[2026-06-27 13:00:42,299.299 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:00:42,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:00:42,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:00:42,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:00:44,345.345 INFO    ] ================================================
[2026-06-27 13:00:44,361.361 INFO    ] Launching Daemon at Sat Jun 27 13:00:44 IST 2026
[2026-06-27 13:00:44,373.373 INFO    ] ================================================
[2026-06-27 13:00:44,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:00:44
[2026-06-27 13:00:45,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:00:45,256.256 INFO    ] Initializing speech engine...
[2026-06-27 13:00:45,261.261 INFO    ] 2026-06-27 13:00:45
[2026-06-27 13:00:45,473.473 INFO    ] 2026-06-27 13:00:45
[2026-06-27 13:00:45,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:00:45,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:00:45,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:00:45,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:00:45,899.899 INFO    ] time= 27/06/2026 13:00:45
[2026-06-27 13:00:45,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:00:45,935.935 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:00:46,004.004 INFO    ] No existing commands found in stream
[2026-06-27 13:00:51,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:00:51,022.022 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-27 13:00:51,975.975 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 13:00:51,977.977 INFO    ] Checking for system updates...
[2026-06-27 13:00:51,998.998 INFO    ] 200
[2026-06-27 13:00:51,999.999 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:00:52,030.030 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:00:52,032.032 INFO    ] No update needed
[2026-06-27 13:00:52,033.033 INFO    ] Checking for camera pi updates...
[2026-06-27 13:00:52,053.053 INFO    ] 200
[2026-06-27 13:00:52,055.055 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:00:52,079.079 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:00:52,127.127 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:00:52,129.129 INFO    ] No camera update needed
[2026-06-27 13:00:52,130.130 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:00:52,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:00:52,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:00:52,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:00:54,178.178 INFO    ] ================================================
[2026-06-27 13:00:54,194.194 INFO    ] Launching Daemon at Sat Jun 27 13:00:54 IST 2026
[2026-06-27 13:00:54,206.206 INFO    ] ================================================
[2026-06-27 13:00:54,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:00:54
[2026-06-27 13:00:54,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:00:55,087.087 INFO    ] Initializing speech engine...
[2026-06-27 13:00:55,093.093 INFO    ] 2026-06-27 13:00:55
[2026-06-27 13:00:55,302.302 INFO    ] 2026-06-27 13:00:55
[2026-06-27 13:00:55,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:00:55,517.517 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:00:55,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:00:55,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:00:55,731.731 INFO    ] time= 27/06/2026 13:00:55
[2026-06-27 13:00:55,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:00:55,753.753 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:00:55,821.821 INFO    ] No existing commands found in stream
[2026-06-27 13:01:00,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:01:00,833.833 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-27 13:01:03,722.722 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 13:01:03,723.723 INFO    ] Checking for system updates...
[2026-06-27 13:01:03,745.745 INFO    ] 200
[2026-06-27 13:01:03,747.747 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:01:03,778.778 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:01:03,779.779 INFO    ] No update needed
[2026-06-27 13:01:03,780.780 INFO    ] Checking for camera pi updates...
[2026-06-27 13:01:03,800.800 INFO    ] 200
[2026-06-27 13:01:03,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:01:03,827.827 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:01:03,861.861 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:01:03,862.862 INFO    ] No camera update needed
[2026-06-27 13:01:03,864.864 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:01:03,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:01:03,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:01:03,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:01:05,903.903 INFO    ] ================================================
[2026-06-27 13:01:05,912.912 INFO    ] Launching Daemon at Sat Jun 27 13:01:05 IST 2026
[2026-06-27 13:01:05,919.919 INFO    ] ================================================
[2026-06-27 13:01:06,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:01:06
[2026-06-27 13:01:06,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:01:06,802.802 INFO    ] Initializing speech engine...
[2026-06-27 13:01:06,807.807 INFO    ] 2026-06-27 13:01:06
[2026-06-27 13:01:07,013.013 INFO    ] 2026-06-27 13:01:06
[2026-06-27 13:01:07,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:01:07,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:01:07,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:01:07,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:01:07,454.454 INFO    ] time= 27/06/2026 13:01:07
[2026-06-27 13:01:07,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:01:07,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:01:07,529.529 INFO    ] No existing commands found in stream
[2026-06-27 13:01:12,539.539 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:01:12,542.542 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-27 13:01:16,538.538 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 13:01:16,539.539 INFO    ] Checking for system updates...
[2026-06-27 13:01:16,560.560 INFO    ] 200
[2026-06-27 13:01:16,562.562 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:01:16,596.596 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:01:16,597.597 INFO    ] No update needed
[2026-06-27 13:01:16,599.599 INFO    ] Checking for camera pi updates...
[2026-06-27 13:01:16,621.621 INFO    ] 200
[2026-06-27 13:01:16,622.622 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:01:16,647.647 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:01:16,686.686 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:01:16,688.688 INFO    ] No camera update needed
[2026-06-27 13:01:16,689.689 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:01:16,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:01:16,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:01:16,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:01:18,738.738 INFO    ] ================================================
[2026-06-27 13:01:18,755.755 INFO    ] Launching Daemon at Sat Jun 27 13:01:18 IST 2026
[2026-06-27 13:01:18,767.767 INFO    ] ================================================
[2026-06-27 13:01:19,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:01:19
[2026-06-27 13:01:19,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:01:19,614.614 INFO    ] Initializing speech engine...
[2026-06-27 13:01:19,619.619 INFO    ] 2026-06-27 13:01:19
[2026-06-27 13:01:19,829.829 INFO    ] 2026-06-27 13:01:19
[2026-06-27 13:01:19,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:01:20,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:01:20,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:01:20,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:01:20,232.232 INFO    ] time= 27/06/2026 13:01:20
[2026-06-27 13:01:20,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:01:20,276.276 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:01:20,348.348 INFO    ] No existing commands found in stream
[2026-06-27 13:01:25,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:01:25,361.361 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-27 13:01:29,070.070 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 13:01:29,071.071 INFO    ] Checking for system updates...
[2026-06-27 13:01:29,092.092 INFO    ] 200
[2026-06-27 13:01:29,094.094 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:01:29,129.129 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:01:29,130.130 INFO    ] No update needed
[2026-06-27 13:01:29,131.131 INFO    ] Checking for camera pi updates...
[2026-06-27 13:01:29,156.156 INFO    ] 200
[2026-06-27 13:01:29,158.158 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:01:29,181.181 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:01:29,331.331 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:01:29,332.332 INFO    ] No camera update needed
[2026-06-27 13:01:29,334.334 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:01:29,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:01:29,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:01:29,341.341 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:01:31,382.382 INFO    ] ================================================
[2026-06-27 13:01:31,398.398 INFO    ] Launching Daemon at Sat Jun 27 13:01:31 IST 2026
[2026-06-27 13:01:31,409.409 INFO    ] ================================================
[2026-06-27 13:01:31,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:01:31
[2026-06-27 13:01:32,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:01:32,316.316 INFO    ] Initializing speech engine...
[2026-06-27 13:01:32,321.321 INFO    ] 2026-06-27 13:01:32
[2026-06-27 13:01:32,555.555 INFO    ] 2026-06-27 13:01:32
[2026-06-27 13:01:32,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:01:32,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:01:32,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:01:32,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:01:33,001.001 INFO    ] time= 27/06/2026 13:01:32
[2026-06-27 13:01:33,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:01:33,053.053 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:01:33,131.131 INFO    ] No existing commands found in stream
[2026-06-27 13:01:38,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:01:38,143.143 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-27 13:01:38,769.769 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 13:01:38,770.770 INFO    ] Checking for system updates...
[2026-06-27 13:01:38,792.792 INFO    ] 200
[2026-06-27 13:01:38,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:01:38,825.825 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:01:38,826.826 INFO    ] No update needed
[2026-06-27 13:01:38,827.827 INFO    ] Checking for camera pi updates...
[2026-06-27 13:01:38,847.847 INFO    ] 200
[2026-06-27 13:01:38,848.848 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:01:38,872.872 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:01:38,917.917 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:01:38,918.918 INFO    ] No camera update needed
[2026-06-27 13:01:38,920.920 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:01:38,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:01:38,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:01:38,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:01:40,965.965 INFO    ] ================================================
[2026-06-27 13:01:40,981.981 INFO    ] Launching Daemon at Sat Jun 27 13:01:40 IST 2026
[2026-06-27 13:01:40,992.992 INFO    ] ================================================
[2026-06-27 13:01:41,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:01:41
[2026-06-27 13:01:41,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:01:41,775.775 INFO    ] Initializing speech engine...
[2026-06-27 13:01:41,787.787 INFO    ] 2026-06-27 13:01:41
[2026-06-27 13:01:41,993.993 INFO    ] 2026-06-27 13:01:41
[2026-06-27 13:01:42,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:01:42,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:01:42,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:01:42,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:01:42,412.412 INFO    ] time= 27/06/2026 13:01:42
[2026-06-27 13:01:42,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:01:42,441.441 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:01:42,506.506 INFO    ] No existing commands found in stream
[2026-06-27 13:01:47,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:01:47,519.519 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-27 13:01:49,529.529 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 13:01:49,530.530 INFO    ] Checking for system updates...
[2026-06-27 13:01:49,553.553 INFO    ] 200
[2026-06-27 13:01:49,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:01:49,584.584 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:01:49,586.586 INFO    ] No update needed
[2026-06-27 13:01:49,587.587 INFO    ] Checking for camera pi updates...
[2026-06-27 13:01:49,607.607 INFO    ] 200
[2026-06-27 13:01:49,609.609 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:01:49,634.634 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:01:49,672.672 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:01:49,673.673 INFO    ] No camera update needed
[2026-06-27 13:01:49,674.674 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:01:49,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:01:49,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:01:49,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:01:51,721.721 INFO    ] ================================================
[2026-06-27 13:01:51,737.737 INFO    ] Launching Daemon at Sat Jun 27 13:01:51 IST 2026
[2026-06-27 13:01:51,749.749 INFO    ] ================================================
[2026-06-27 13:01:52,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:01:52
[2026-06-27 13:01:52,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:01:52,558.558 INFO    ] Initializing speech engine...
[2026-06-27 13:01:52,566.566 INFO    ] 2026-06-27 13:01:52
[2026-06-27 13:01:52,779.779 INFO    ] 2026-06-27 13:01:52
[2026-06-27 13:01:52,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:01:52,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:01:53,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:01:53,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:01:53,202.202 INFO    ] time= 27/06/2026 13:01:53
[2026-06-27 13:01:53,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:01:53,230.230 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:01:53,297.297 INFO    ] No existing commands found in stream
[2026-06-27 13:01:58,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:01:58,309.309 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-27 13:01:59,037.037 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 13:01:59,039.039 INFO    ] Checking for system updates...
[2026-06-27 13:01:59,061.061 INFO    ] 200
[2026-06-27 13:01:59,063.063 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:01:59,094.094 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:01:59,095.095 INFO    ] No update needed
[2026-06-27 13:01:59,097.097 INFO    ] Checking for camera pi updates...
[2026-06-27 13:01:59,116.116 INFO    ] 200
[2026-06-27 13:01:59,117.117 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:01:59,141.141 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:01:59,180.180 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:01:59,181.181 INFO    ] No camera update needed
[2026-06-27 13:01:59,183.183 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:01:59,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:01:59,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:01:59,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:02:01,232.232 INFO    ] ================================================
[2026-06-27 13:02:01,248.248 INFO    ] Launching Daemon at Sat Jun 27 13:02:01 IST 2026
[2026-06-27 13:02:01,261.261 INFO    ] ================================================
[2026-06-27 13:02:01,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:02:01
[2026-06-27 13:02:02,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:02:02,233.233 INFO    ] Initializing speech engine...
[2026-06-27 13:02:02,239.239 INFO    ] 2026-06-27 13:02:02
[2026-06-27 13:02:02,494.494 INFO    ] 2026-06-27 13:02:02
[2026-06-27 13:02:02,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:02:02,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:02:02,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:02:02,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:02:02,968.968 INFO    ] time= 27/06/2026 13:02:02
[2026-06-27 13:02:03,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:02:03,018.018 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:02:03,092.092 INFO    ] No existing commands found in stream
[2026-06-27 13:02:08,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:02:08,106.106 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-27 13:02:10,762.762 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 13:02:10,764.764 INFO    ] Checking for system updates...
[2026-06-27 13:02:10,785.785 INFO    ] 200
[2026-06-27 13:02:10,786.786 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:02:10,817.817 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:02:10,818.818 INFO    ] No update needed
[2026-06-27 13:02:10,820.820 INFO    ] Checking for camera pi updates...
[2026-06-27 13:02:10,841.841 INFO    ] 200
[2026-06-27 13:02:10,842.842 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:02:10,868.868 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:02:10,909.909 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:02:10,910.910 INFO    ] No camera update needed
[2026-06-27 13:02:10,911.911 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:02:10,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:02:10,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:02:10,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:02:12,957.957 INFO    ] ================================================
[2026-06-27 13:02:12,973.973 INFO    ] Launching Daemon at Sat Jun 27 13:02:12 IST 2026
[2026-06-27 13:02:12,984.984 INFO    ] ================================================
[2026-06-27 13:02:13,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:02:13
[2026-06-27 13:02:13,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:02:13,761.761 INFO    ] Initializing speech engine...
[2026-06-27 13:02:13,766.766 INFO    ] 2026-06-27 13:02:13
[2026-06-27 13:02:13,983.983 INFO    ] 2026-06-27 13:02:13
[2026-06-27 13:02:14,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:02:14,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:02:14,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:02:14,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:02:14,411.411 INFO    ] time= 27/06/2026 13:02:14
[2026-06-27 13:02:14,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:02:14,440.440 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:02:14,508.508 INFO    ] No existing commands found in stream
[2026-06-27 13:02:19,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:02:19,520.520 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-27 13:02:21,265.265 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 13:02:21,266.266 INFO    ] Checking for system updates...
[2026-06-27 13:02:21,288.288 INFO    ] 200
[2026-06-27 13:02:21,289.289 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:02:21,321.321 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:02:21,322.322 INFO    ] No update needed
[2026-06-27 13:02:21,324.324 INFO    ] Checking for camera pi updates...
[2026-06-27 13:02:21,346.346 INFO    ] 200
[2026-06-27 13:02:21,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:02:21,370.370 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:02:21,409.409 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:02:21,410.410 INFO    ] No camera update needed
[2026-06-27 13:02:21,412.412 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:02:21,413.413 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:02:21,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:02:21,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:02:23,459.459 INFO    ] ================================================
[2026-06-27 13:02:23,475.475 INFO    ] Launching Daemon at Sat Jun 27 13:02:23 IST 2026
[2026-06-27 13:02:23,486.486 INFO    ] ================================================
[2026-06-27 13:02:23,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:02:23
[2026-06-27 13:02:24,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:02:24,315.315 INFO    ] Initializing speech engine...
[2026-06-27 13:02:24,320.320 INFO    ] 2026-06-27 13:02:24
[2026-06-27 13:02:24,527.527 INFO    ] 2026-06-27 13:02:24
[2026-06-27 13:02:24,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:02:24,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:02:24,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:02:24,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:02:24,932.932 INFO    ] time= 27/06/2026 13:02:24
[2026-06-27 13:02:24,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:02:24,978.978 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:02:25,050.050 INFO    ] No existing commands found in stream
[2026-06-27 13:02:30,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:02:30,062.062 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-27 13:02:33,185.185 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 13:02:33,187.187 INFO    ] Checking for system updates...
[2026-06-27 13:02:33,208.208 INFO    ] 200
[2026-06-27 13:02:33,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:02:33,242.242 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:02:33,244.244 INFO    ] No update needed
[2026-06-27 13:02:33,245.245 INFO    ] Checking for camera pi updates...
[2026-06-27 13:02:33,265.265 INFO    ] 200
[2026-06-27 13:02:33,266.266 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:02:33,290.290 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:02:33,338.338 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:02:33,339.339 INFO    ] No camera update needed
[2026-06-27 13:02:33,340.340 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:02:33,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:02:33,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:02:33,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:02:35,387.387 INFO    ] ================================================
[2026-06-27 13:02:35,403.403 INFO    ] Launching Daemon at Sat Jun 27 13:02:35 IST 2026
[2026-06-27 13:02:35,414.414 INFO    ] ================================================
[2026-06-27 13:02:35,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:02:35
[2026-06-27 13:02:36,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:02:36,312.312 INFO    ] Initializing speech engine...
[2026-06-27 13:02:36,317.317 INFO    ] 2026-06-27 13:02:36
[2026-06-27 13:02:36,531.531 INFO    ] 2026-06-27 13:02:36
[2026-06-27 13:02:36,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:02:36,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:02:36,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:02:36,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:02:36,959.959 INFO    ] time= 27/06/2026 13:02:36
[2026-06-27 13:02:36,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:02:36,988.988 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:02:37,053.053 INFO    ] No existing commands found in stream
[2026-06-27 13:02:42,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:02:42,069.069 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-27 13:02:45,850.850 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 13:02:45,852.852 INFO    ] Checking for system updates...
[2026-06-27 13:02:45,874.874 INFO    ] 200
[2026-06-27 13:02:45,876.876 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:02:45,912.912 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:02:45,914.914 INFO    ] No update needed
[2026-06-27 13:02:45,916.916 INFO    ] Checking for camera pi updates...
[2026-06-27 13:02:45,937.937 INFO    ] 200
[2026-06-27 13:02:45,939.939 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:02:45,967.967 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:02:46,016.016 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:02:46,018.018 INFO    ] No camera update needed
[2026-06-27 13:02:46,019.019 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:02:46,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:02:46,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:02:46,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:02:48,069.069 INFO    ] ================================================
[2026-06-27 13:02:48,085.085 INFO    ] Launching Daemon at Sat Jun 27 13:02:48 IST 2026
[2026-06-27 13:02:48,097.097 INFO    ] ================================================
[2026-06-27 13:02:48,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:02:48
[2026-06-27 13:02:48,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:02:48,996.996 INFO    ] Initializing speech engine...
[2026-06-27 13:02:49,001.001 INFO    ] 2026-06-27 13:02:48
[2026-06-27 13:02:49,213.213 INFO    ] 2026-06-27 13:02:49
[2026-06-27 13:02:49,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:02:49,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:02:49,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:02:49,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:02:49,636.636 INFO    ] time= 27/06/2026 13:02:49
[2026-06-27 13:02:49,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:02:49,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:02:49,732.732 INFO    ] No existing commands found in stream
[2026-06-27 13:02:54,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:02:54,745.745 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-27 13:02:59,110.110 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 13:02:59,112.112 INFO    ] Checking for system updates...
[2026-06-27 13:02:59,134.134 INFO    ] 200
[2026-06-27 13:02:59,136.136 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:02:59,166.166 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:02:59,167.167 INFO    ] No update needed
[2026-06-27 13:02:59,169.169 INFO    ] Checking for camera pi updates...
[2026-06-27 13:02:59,188.188 INFO    ] 200
[2026-06-27 13:02:59,190.190 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:02:59,217.217 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:02:59,256.256 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:02:59,257.257 INFO    ] No camera update needed
[2026-06-27 13:02:59,258.258 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:02:59,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:02:59,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:02:59,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:03:01,306.306 INFO    ] ================================================
[2026-06-27 13:03:01,333.333 INFO    ] Launching Daemon at Sat Jun 27 13:03:01 IST 2026
[2026-06-27 13:03:01,348.348 INFO    ] ================================================
[2026-06-27 13:03:01,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:03:01
[2026-06-27 13:03:02,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:03:02,365.365 INFO    ] Initializing speech engine...
[2026-06-27 13:03:02,369.369 INFO    ] 2026-06-27 13:03:02
[2026-06-27 13:03:02,576.576 INFO    ] 2026-06-27 13:03:02
[2026-06-27 13:03:02,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:03:02,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:03:02,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:03:02,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:03:02,997.997 INFO    ] time= 27/06/2026 13:03:02
[2026-06-27 13:03:03,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:03:03,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:03:03,093.093 INFO    ] No existing commands found in stream
[2026-06-27 13:03:08,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:03:08,108.108 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-27 13:03:12,194.194 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:03:12,196.196 INFO    ] Checking for system updates...
[2026-06-27 13:03:12,219.219 INFO    ] 200
[2026-06-27 13:03:12,220.220 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:03:12,253.253 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:03:12,255.255 INFO    ] No update needed
[2026-06-27 13:03:12,256.256 INFO    ] Checking for camera pi updates...
[2026-06-27 13:03:12,278.278 INFO    ] 200
[2026-06-27 13:03:12,280.280 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:03:12,304.304 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:03:12,351.351 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:03:12,353.353 INFO    ] No camera update needed
[2026-06-27 13:03:12,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:03:12,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:03:12,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:03:12,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:03:14,404.404 INFO    ] ================================================
[2026-06-27 13:03:14,420.420 INFO    ] Launching Daemon at Sat Jun 27 13:03:14 IST 2026
[2026-06-27 13:03:14,432.432 INFO    ] ================================================
[2026-06-27 13:03:14,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:03:14
[2026-06-27 13:03:15,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:03:15,228.228 INFO    ] Initializing speech engine...
[2026-06-27 13:03:15,236.236 INFO    ] 2026-06-27 13:03:15
[2026-06-27 13:03:15,444.444 INFO    ] 2026-06-27 13:03:15
[2026-06-27 13:03:15,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:03:15,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:03:15,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:03:15,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:03:15,786.786 INFO    ] time= 27/06/2026 13:03:15
[2026-06-27 13:03:15,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:03:15,881.881 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:03:15,983.983 INFO    ] No existing commands found in stream
[2026-06-27 13:03:20,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:03:20,997.997 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-27 13:03:25,282.282 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 13:03:25,284.284 INFO    ] Checking for system updates...
[2026-06-27 13:03:25,309.309 INFO    ] 200
[2026-06-27 13:03:25,311.311 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:03:25,341.341 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:03:25,342.342 INFO    ] No update needed
[2026-06-27 13:03:25,345.345 INFO    ] Checking for camera pi updates...
[2026-06-27 13:03:25,364.364 INFO    ] 200
[2026-06-27 13:03:25,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:03:25,391.391 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:03:25,428.428 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:03:25,429.429 INFO    ] No camera update needed
[2026-06-27 13:03:25,431.431 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:03:25,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:03:25,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:03:25,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:03:27,484.484 INFO    ] ================================================
[2026-06-27 13:03:27,499.499 INFO    ] Launching Daemon at Sat Jun 27 13:03:27 IST 2026
[2026-06-27 13:03:27,511.511 INFO    ] ================================================
[2026-06-27 13:03:27,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:03:27
[2026-06-27 13:03:28,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:03:28,293.293 INFO    ] Initializing speech engine...
[2026-06-27 13:03:28,307.307 INFO    ] 2026-06-27 13:03:28
[2026-06-27 13:03:28,532.532 INFO    ] 2026-06-27 13:03:28
[2026-06-27 13:03:28,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:03:28,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:03:28,719.719 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:03:28,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:03:28,918.918 INFO    ] time= 27/06/2026 13:03:28
[2026-06-27 13:03:28,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:03:29,005.005 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:03:29,102.102 INFO    ] No existing commands found in stream
[2026-06-27 13:03:34,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:03:34,115.115 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-27 13:03:36,799.799 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 13:03:36,801.801 INFO    ] Checking for system updates...
[2026-06-27 13:03:36,822.822 INFO    ] 200
[2026-06-27 13:03:36,823.823 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:03:36,861.861 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:03:36,862.862 INFO    ] No update needed
[2026-06-27 13:03:36,864.864 INFO    ] Checking for camera pi updates...
[2026-06-27 13:03:36,884.884 INFO    ] 200
[2026-06-27 13:03:36,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:03:36,912.912 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:03:36,952.952 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:03:36,954.954 INFO    ] No camera update needed
[2026-06-27 13:03:36,955.955 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:03:36,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:03:36,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:03:36,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:03:39,002.002 INFO    ] ================================================
[2026-06-27 13:03:39,019.019 INFO    ] Launching Daemon at Sat Jun 27 13:03:39 IST 2026
[2026-06-27 13:03:39,030.030 INFO    ] ================================================
[2026-06-27 13:03:39,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:03:39
[2026-06-27 13:03:39,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:03:39,930.930 INFO    ] Initializing speech engine...
[2026-06-27 13:03:39,938.938 INFO    ] 2026-06-27 13:03:39
[2026-06-27 13:03:40,143.143 INFO    ] 2026-06-27 13:03:40
[2026-06-27 13:03:40,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:03:40,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:03:40,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:03:40,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:03:40,568.568 INFO    ] time= 27/06/2026 13:03:40
[2026-06-27 13:03:40,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:03:40,599.599 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:03:40,667.667 INFO    ] No existing commands found in stream
[2026-06-27 13:03:45,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:03:45,690.690 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-27 13:03:47,388.388 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:03:47,389.389 INFO    ] Checking for system updates...
[2026-06-27 13:03:47,410.410 INFO    ] 200
[2026-06-27 13:03:47,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:03:47,442.442 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:03:47,444.444 INFO    ] No update needed
[2026-06-27 13:03:47,445.445 INFO    ] Checking for camera pi updates...
[2026-06-27 13:03:47,465.465 INFO    ] 200
[2026-06-27 13:03:47,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:03:47,492.492 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:03:47,531.531 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:03:47,532.532 INFO    ] No camera update needed
[2026-06-27 13:03:47,534.534 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:03:47,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:03:47,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:03:47,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:03:49,580.580 INFO    ] ================================================
[2026-06-27 13:03:49,596.596 INFO    ] Launching Daemon at Sat Jun 27 13:03:49 IST 2026
[2026-06-27 13:03:49,607.607 INFO    ] ================================================
[2026-06-27 13:03:49,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:03:49
[2026-06-27 13:03:50,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:03:50,440.440 INFO    ] Initializing speech engine...
[2026-06-27 13:03:50,445.445 INFO    ] 2026-06-27 13:03:50
[2026-06-27 13:03:50,650.650 INFO    ] 2026-06-27 13:03:50
[2026-06-27 13:03:50,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:03:50,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:03:50,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:03:51,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:03:51,068.068 INFO    ] time= 27/06/2026 13:03:51
[2026-06-27 13:03:51,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:03:51,097.097 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:03:51,188.188 INFO    ] No existing commands found in stream
[2026-06-27 13:03:56,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:03:56,205.205 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-27 13:03:56,964.964 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 13:03:56,966.966 INFO    ] Checking for system updates...
[2026-06-27 13:03:56,986.986 INFO    ] 200
[2026-06-27 13:03:56,988.988 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:03:57,018.018 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:03:57,019.019 INFO    ] No update needed
[2026-06-27 13:03:57,021.021 INFO    ] Checking for camera pi updates...
[2026-06-27 13:03:57,041.041 INFO    ] 200
[2026-06-27 13:03:57,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:03:57,068.068 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:03:57,105.105 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:03:57,107.107 INFO    ] No camera update needed
[2026-06-27 13:03:57,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:03:57,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:03:57,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:03:57,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:03:59,155.155 INFO    ] ================================================
[2026-06-27 13:03:59,171.171 INFO    ] Launching Daemon at Sat Jun 27 13:03:59 IST 2026
[2026-06-27 13:03:59,182.182 INFO    ] ================================================
[2026-06-27 13:03:59,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:03:59
[2026-06-27 13:03:59,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:03:59,983.983 INFO    ] Initializing speech engine...
[2026-06-27 13:03:59,988.988 INFO    ] 2026-06-27 13:03:59
[2026-06-27 13:04:00,209.209 INFO    ] 2026-06-27 13:04:00
[2026-06-27 13:04:00,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:04:00,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:04:00,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:04:00,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:04:00,609.609 INFO    ] time= 27/06/2026 13:04:00
[2026-06-27 13:04:00,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:04:00,660.660 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:04:00,732.732 INFO    ] No existing commands found in stream
[2026-06-27 13:04:05,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:04:05,744.744 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-27 13:04:09,741.741 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 13:04:09,742.742 INFO    ] Checking for system updates...
[2026-06-27 13:04:09,765.765 INFO    ] 200
[2026-06-27 13:04:09,766.766 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:04:09,796.796 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:04:09,798.798 INFO    ] No update needed
[2026-06-27 13:04:09,799.799 INFO    ] Checking for camera pi updates...
[2026-06-27 13:04:09,820.820 INFO    ] 200
[2026-06-27 13:04:09,821.821 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:04:09,844.844 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:04:09,881.881 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:04:09,883.883 INFO    ] No camera update needed
[2026-06-27 13:04:09,884.884 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:04:09,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:04:09,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:04:09,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:04:11,931.931 INFO    ] ================================================
[2026-06-27 13:04:11,948.948 INFO    ] Launching Daemon at Sat Jun 27 13:04:11 IST 2026
[2026-06-27 13:04:11,960.960 INFO    ] ================================================
[2026-06-27 13:04:12,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:04:12
[2026-06-27 13:04:12,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:04:12,762.762 INFO    ] Initializing speech engine...
[2026-06-27 13:04:12,770.770 INFO    ] 2026-06-27 13:04:12
[2026-06-27 13:04:12,979.979 INFO    ] 2026-06-27 13:04:12
[2026-06-27 13:04:13,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:04:13,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:04:13,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:04:13,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:04:13,407.407 INFO    ] time= 27/06/2026 13:04:13
[2026-06-27 13:04:13,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:04:13,436.436 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:04:13,504.504 INFO    ] No existing commands found in stream
[2026-06-27 13:04:18,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:04:18,517.517 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-27 13:04:22,586.586 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 13:04:22,587.587 INFO    ] Checking for system updates...
[2026-06-27 13:04:22,610.610 INFO    ] 200
[2026-06-27 13:04:22,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:04:22,643.643 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:04:22,644.644 INFO    ] No update needed
[2026-06-27 13:04:22,646.646 INFO    ] Checking for camera pi updates...
[2026-06-27 13:04:22,666.666 INFO    ] 200
[2026-06-27 13:04:22,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:04:22,693.693 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:04:22,733.733 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:04:22,735.735 INFO    ] No camera update needed
[2026-06-27 13:04:22,736.736 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:04:22,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:04:22,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:04:22,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:04:24,781.781 INFO    ] ================================================
[2026-06-27 13:04:24,796.796 INFO    ] Launching Daemon at Sat Jun 27 13:04:24 IST 2026
[2026-06-27 13:04:24,807.807 INFO    ] ================================================
[2026-06-27 13:04:25,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:04:25
[2026-06-27 13:04:25,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:04:25,707.707 INFO    ] Initializing speech engine...
[2026-06-27 13:04:25,711.711 INFO    ] 2026-06-27 13:04:25
[2026-06-27 13:04:25,920.920 INFO    ] 2026-06-27 13:04:25
[2026-06-27 13:04:25,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:04:26,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:04:26,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:04:26,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:04:26,365.365 INFO    ] time= 27/06/2026 13:04:26
[2026-06-27 13:04:26,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:04:26,372.372 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:04:26,440.440 INFO    ] No existing commands found in stream
[2026-06-27 13:04:31,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:04:31,458.458 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-27 13:04:33,481.481 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 13:04:33,483.483 INFO    ] Checking for system updates...
[2026-06-27 13:04:33,505.505 INFO    ] 200
[2026-06-27 13:04:33,507.507 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:04:33,538.538 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:04:33,539.539 INFO    ] No update needed
[2026-06-27 13:04:33,541.541 INFO    ] Checking for camera pi updates...
[2026-06-27 13:04:33,563.563 INFO    ] 200
[2026-06-27 13:04:33,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:04:33,591.591 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:04:33,616.616 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:04:33,618.618 INFO    ] No camera update needed
[2026-06-27 13:04:33,619.619 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:04:33,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:04:33,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:04:33,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:04:35,668.668 INFO    ] ================================================
[2026-06-27 13:04:35,684.684 INFO    ] Launching Daemon at Sat Jun 27 13:04:35 IST 2026
[2026-06-27 13:04:35,694.694 INFO    ] ================================================
[2026-06-27 13:04:36,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:04:36
[2026-06-27 13:04:36,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:04:36,497.497 INFO    ] Initializing speech engine...
[2026-06-27 13:04:36,510.510 INFO    ] 2026-06-27 13:04:36
[2026-06-27 13:04:36,722.722 INFO    ] 2026-06-27 13:04:36
[2026-06-27 13:04:36,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:04:36,936.936 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:04:36,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:04:37,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:04:37,141.141 INFO    ] time= 27/06/2026 13:04:37
[2026-06-27 13:04:37,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:04:37,172.172 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:04:37,238.238 INFO    ] No existing commands found in stream
[2026-06-27 13:04:42,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:04:42,252.252 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-27 13:04:45,965.965 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:04:45,966.966 INFO    ] Checking for system updates...
[2026-06-27 13:04:45,988.988 INFO    ] 200
[2026-06-27 13:04:45,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:04:46,023.023 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:04:46,025.025 INFO    ] No update needed
[2026-06-27 13:04:46,027.027 INFO    ] Checking for camera pi updates...
[2026-06-27 13:04:46,047.047 INFO    ] 200
[2026-06-27 13:04:46,048.048 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:04:46,075.075 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:04:46,116.116 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:04:46,117.117 INFO    ] No camera update needed
[2026-06-27 13:04:46,119.119 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:04:46,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:04:46,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:04:46,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:04:48,167.167 INFO    ] ================================================
[2026-06-27 13:04:48,183.183 INFO    ] Launching Daemon at Sat Jun 27 13:04:48 IST 2026
[2026-06-27 13:04:48,194.194 INFO    ] ================================================
[2026-06-27 13:04:48,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:04:48
[2026-06-27 13:04:48,948.948 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:04:49,104.104 INFO    ] Initializing speech engine...
[2026-06-27 13:04:49,108.108 INFO    ] 2026-06-27 13:04:49
[2026-06-27 13:04:49,320.320 INFO    ] 2026-06-27 13:04:49
[2026-06-27 13:04:49,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:04:49,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:04:49,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:04:49,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:04:49,746.746 INFO    ] time= 27/06/2026 13:04:49
[2026-06-27 13:04:49,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:04:49,775.775 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:04:49,843.843 INFO    ] No existing commands found in stream
[2026-06-27 13:04:54,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:04:54,857.857 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-27 13:04:58,475.475 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 13:04:58,476.476 INFO    ] Checking for system updates...
[2026-06-27 13:04:58,497.497 INFO    ] 200
[2026-06-27 13:04:58,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:04:58,531.531 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:04:58,532.532 INFO    ] No update needed
[2026-06-27 13:04:58,533.533 INFO    ] Checking for camera pi updates...
[2026-06-27 13:04:58,555.555 INFO    ] 200
[2026-06-27 13:04:58,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:04:58,585.585 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:04:58,629.629 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:04:58,631.631 INFO    ] No camera update needed
[2026-06-27 13:04:58,632.632 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:04:58,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:04:58,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:04:58,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:05:00,680.680 INFO    ] ================================================
[2026-06-27 13:05:00,696.696 INFO    ] Launching Daemon at Sat Jun 27 13:05:00 IST 2026
[2026-06-27 13:05:00,708.708 INFO    ] ================================================
[2026-06-27 13:05:01,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:05:01
[2026-06-27 13:05:01,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:05:01,502.502 INFO    ] Initializing speech engine...
[2026-06-27 13:05:01,508.508 INFO    ] 2026-06-27 13:05:01
[2026-06-27 13:05:01,695.695 INFO    ] 2026-06-27 13:05:01
[2026-06-27 13:05:01,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:05:02,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:05:02,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:05:02,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:05:02,235.235 INFO    ] time= 27/06/2026 13:05:02
[2026-06-27 13:05:02,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:05:02,276.276 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:05:02,385.385 INFO    ] No existing commands found in stream
[2026-06-27 13:05:07,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:05:07,427.427 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-27 13:05:08,235.235 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:05:08,236.236 INFO    ] Checking for system updates...
[2026-06-27 13:05:08,257.257 INFO    ] 200
[2026-06-27 13:05:08,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:05:08,289.289 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:05:08,290.290 INFO    ] No update needed
[2026-06-27 13:05:08,291.291 INFO    ] Checking for camera pi updates...
[2026-06-27 13:05:08,311.311 INFO    ] 200
[2026-06-27 13:05:08,312.312 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:05:08,339.339 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:05:08,379.379 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:05:08,380.380 INFO    ] No camera update needed
[2026-06-27 13:05:08,382.382 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:05:08,383.383 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:05:08,386.386 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:05:08,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:05:10,429.429 INFO    ] ================================================
[2026-06-27 13:05:10,445.445 INFO    ] Launching Daemon at Sat Jun 27 13:05:10 IST 2026
[2026-06-27 13:05:10,456.456 INFO    ] ================================================
[2026-06-27 13:05:10,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:05:10
[2026-06-27 13:05:11,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:05:11,268.268 INFO    ] Initializing speech engine...
[2026-06-27 13:05:11,273.273 INFO    ] 2026-06-27 13:05:11
[2026-06-27 13:05:11,479.479 INFO    ] 2026-06-27 13:05:11
[2026-06-27 13:05:11,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:05:11,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:05:11,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:05:11,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:05:11,918.918 INFO    ] time= 27/06/2026 13:05:11
[2026-06-27 13:05:11,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:05:11,925.925 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:05:11,990.990 INFO    ] No existing commands found in stream
[2026-06-27 13:05:16,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:05:17,000.000 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-27 13:05:19,926.926 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 13:05:19,928.928 INFO    ] Checking for system updates...
[2026-06-27 13:05:19,953.953 INFO    ] 200
[2026-06-27 13:05:19,954.954 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:05:19,988.988 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:05:19,989.989 INFO    ] No update needed
[2026-06-27 13:05:19,990.990 INFO    ] Checking for camera pi updates...
[2026-06-27 13:05:20,010.010 INFO    ] 200
[2026-06-27 13:05:20,011.011 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:05:20,040.040 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:05:20,086.086 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:05:20,087.087 INFO    ] No camera update needed
[2026-06-27 13:05:20,089.089 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:05:20,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:05:20,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:05:20,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:05:22,139.139 INFO    ] ================================================
[2026-06-27 13:05:22,154.154 INFO    ] Launching Daemon at Sat Jun 27 13:05:22 IST 2026
[2026-06-27 13:05:22,165.165 INFO    ] ================================================
[2026-06-27 13:05:22,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:05:22
[2026-06-27 13:05:22,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:05:22,962.962 INFO    ] Initializing speech engine...
[2026-06-27 13:05:22,967.967 INFO    ] 2026-06-27 13:05:22
[2026-06-27 13:05:23,176.176 INFO    ] 2026-06-27 13:05:23
[2026-06-27 13:05:23,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:05:23,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:05:23,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:05:23,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:05:23,596.596 INFO    ] time= 27/06/2026 13:05:23
[2026-06-27 13:05:23,631.631 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:05:23,637.637 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:05:23,705.705 INFO    ] No existing commands found in stream
[2026-06-27 13:05:28,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:05:28,722.722 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-27 13:05:30,753.753 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 13:05:30,755.755 INFO    ] Checking for system updates...
[2026-06-27 13:05:30,777.777 INFO    ] 200
[2026-06-27 13:05:30,778.778 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:05:30,812.812 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:05:30,814.814 INFO    ] No update needed
[2026-06-27 13:05:30,815.815 INFO    ] Checking for camera pi updates...
[2026-06-27 13:05:30,836.836 INFO    ] 200
[2026-06-27 13:05:30,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:05:30,860.860 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:05:30,902.902 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:05:30,904.904 INFO    ] No camera update needed
[2026-06-27 13:05:30,905.905 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:05:30,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:05:30,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:05:30,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:05:32,951.951 INFO    ] ================================================
[2026-06-27 13:05:32,967.967 INFO    ] Launching Daemon at Sat Jun 27 13:05:32 IST 2026
[2026-06-27 13:05:32,978.978 INFO    ] ================================================
[2026-06-27 13:05:33,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:05:33
[2026-06-27 13:05:33,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:05:33,791.791 INFO    ] Initializing speech engine...
[2026-06-27 13:05:33,800.800 INFO    ] 2026-06-27 13:05:33
[2026-06-27 13:05:34,004.004 INFO    ] 2026-06-27 13:05:33
[2026-06-27 13:05:34,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:05:34,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:05:34,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:05:34,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:05:34,428.428 INFO    ] time= 27/06/2026 13:05:34
[2026-06-27 13:05:34,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:05:34,454.454 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:05:34,520.520 INFO    ] No existing commands found in stream
[2026-06-27 13:05:39,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:05:39,533.533 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-27 13:05:40,657.657 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 13:05:40,658.658 INFO    ] Checking for system updates...
[2026-06-27 13:05:40,681.681 INFO    ] 200
[2026-06-27 13:05:40,682.682 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:05:40,712.712 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:05:40,714.714 INFO    ] No update needed
[2026-06-27 13:05:40,715.715 INFO    ] Checking for camera pi updates...
[2026-06-27 13:05:40,735.735 INFO    ] 200
[2026-06-27 13:05:40,736.736 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:05:40,759.759 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:05:40,894.894 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:05:40,896.896 INFO    ] No camera update needed
[2026-06-27 13:05:40,897.897 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:05:40,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:05:40,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:05:40,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:05:42,945.945 INFO    ] ================================================
[2026-06-27 13:05:42,960.960 INFO    ] Launching Daemon at Sat Jun 27 13:05:42 IST 2026
[2026-06-27 13:05:42,971.971 INFO    ] ================================================
[2026-06-27 13:05:43,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:05:43
[2026-06-27 13:05:43,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:05:43,764.764 INFO    ] Initializing speech engine...
[2026-06-27 13:05:43,769.769 INFO    ] 2026-06-27 13:05:43
[2026-06-27 13:05:43,977.977 INFO    ] 2026-06-27 13:05:43
[2026-06-27 13:05:44,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:05:44,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:05:44,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:05:44,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:05:44,402.402 INFO    ] time= 27/06/2026 13:05:44
[2026-06-27 13:05:44,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:05:44,432.432 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:05:44,500.500 INFO    ] No existing commands found in stream
[2026-06-27 13:05:49,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:05:49,512.512 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-27 13:05:53,274.274 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 13:05:53,275.275 INFO    ] Checking for system updates...
[2026-06-27 13:05:53,298.298 INFO    ] 200
[2026-06-27 13:05:53,300.300 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:05:53,335.335 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:05:53,336.336 INFO    ] No update needed
[2026-06-27 13:05:53,338.338 INFO    ] Checking for camera pi updates...
[2026-06-27 13:05:53,358.358 INFO    ] 200
[2026-06-27 13:05:53,359.359 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:05:53,383.383 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:05:53,432.432 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:05:53,433.433 INFO    ] No camera update needed
[2026-06-27 13:05:53,435.435 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:05:53,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:05:53,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:05:53,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:05:55,467.467 INFO    ] ================================================
[2026-06-27 13:05:55,476.476 INFO    ] Launching Daemon at Sat Jun 27 13:05:55 IST 2026
[2026-06-27 13:05:55,482.482 INFO    ] ================================================
[2026-06-27 13:05:55,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:05:55
[2026-06-27 13:05:56,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:05:56,291.291 INFO    ] Initializing speech engine...
[2026-06-27 13:05:56,297.297 INFO    ] 2026-06-27 13:05:56
[2026-06-27 13:05:56,502.502 INFO    ] 2026-06-27 13:05:56
[2026-06-27 13:05:56,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:05:56,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:05:56,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:05:56,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:05:56,945.945 INFO    ] time= 27/06/2026 13:05:56
[2026-06-27 13:05:56,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:05:56,952.952 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:05:57,018.018 INFO    ] No existing commands found in stream
[2026-06-27 13:06:02,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:06:02,033.033 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-27 13:06:06,253.253 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 13:06:06,255.255 INFO    ] Checking for system updates...
[2026-06-27 13:06:06,277.277 INFO    ] 200
[2026-06-27 13:06:06,278.278 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:06:06,308.308 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:06:06,310.310 INFO    ] No update needed
[2026-06-27 13:06:06,311.311 INFO    ] Checking for camera pi updates...
[2026-06-27 13:06:06,330.330 INFO    ] 200
[2026-06-27 13:06:06,332.332 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:06:06,355.355 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:06:06,394.394 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:06:06,395.395 INFO    ] No camera update needed
[2026-06-27 13:06:06,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:06:06,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:06:06,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:06:06,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:06:08,442.442 INFO    ] ================================================
[2026-06-27 13:06:08,457.457 INFO    ] Launching Daemon at Sat Jun 27 13:06:08 IST 2026
[2026-06-27 13:06:08,468.468 INFO    ] ================================================
[2026-06-27 13:06:08,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:06:08
[2026-06-27 13:06:09,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:06:09,267.267 INFO    ] Initializing speech engine...
[2026-06-27 13:06:09,277.277 INFO    ] 2026-06-27 13:06:09
[2026-06-27 13:06:09,482.482 INFO    ] 2026-06-27 13:06:09
[2026-06-27 13:06:09,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:06:09,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:06:09,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:06:09,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:06:09,922.922 INFO    ] time= 27/06/2026 13:06:09
[2026-06-27 13:06:09,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:06:09,929.929 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:06:09,996.996 INFO    ] No existing commands found in stream
[2026-06-27 13:06:15,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:06:15,008.008 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-27 13:06:16,229.229 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 13:06:16,231.231 INFO    ] Checking for system updates...
[2026-06-27 13:06:16,253.253 INFO    ] 200
[2026-06-27 13:06:16,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:06:16,287.287 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:06:16,288.288 INFO    ] No update needed
[2026-06-27 13:06:16,289.289 INFO    ] Checking for camera pi updates...
[2026-06-27 13:06:16,309.309 INFO    ] 200
[2026-06-27 13:06:16,311.311 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:06:16,335.335 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:06:16,370.370 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:06:16,372.372 INFO    ] No camera update needed
[2026-06-27 13:06:16,373.373 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:06:16,375.375 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:06:16,378.378 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:06:16,381.381 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:06:18,422.422 INFO    ] ================================================
[2026-06-27 13:06:18,438.438 INFO    ] Launching Daemon at Sat Jun 27 13:06:18 IST 2026
[2026-06-27 13:06:18,448.448 INFO    ] ================================================
[2026-06-27 13:06:18,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:06:18
[2026-06-27 13:06:19,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:06:19,282.282 INFO    ] Initializing speech engine...
[2026-06-27 13:06:19,290.290 INFO    ] 2026-06-27 13:06:19
[2026-06-27 13:06:19,498.498 INFO    ] 2026-06-27 13:06:19
[2026-06-27 13:06:19,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:06:20,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:06:20,212.212 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:06:20,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:06:20,334.334 INFO    ] time= 27/06/2026 13:06:20
[2026-06-27 13:06:20,337.337 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:06:20,339.339 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:06:20,400.400 INFO    ] No existing commands found in stream
[2026-06-27 13:06:25,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:06:25,414.414 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-27 13:06:25,940.940 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 13:06:25,941.941 INFO    ] Checking for system updates...
[2026-06-27 13:06:25,964.964 INFO    ] 200
[2026-06-27 13:06:25,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:06:25,999.999 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:06:26,000.000 INFO    ] No update needed
[2026-06-27 13:06:26,002.002 INFO    ] Checking for camera pi updates...
[2026-06-27 13:06:26,021.021 INFO    ] 200
[2026-06-27 13:06:26,023.023 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:06:26,047.047 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:06:26,085.085 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:06:26,087.087 INFO    ] No camera update needed
[2026-06-27 13:06:26,088.088 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:06:26,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:06:26,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:06:26,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:06:28,140.140 INFO    ] ================================================
[2026-06-27 13:06:28,155.155 INFO    ] Launching Daemon at Sat Jun 27 13:06:28 IST 2026
[2026-06-27 13:06:28,166.166 INFO    ] ================================================
[2026-06-27 13:06:28,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:06:28
[2026-06-27 13:06:28,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:06:29,036.036 INFO    ] Initializing speech engine...
[2026-06-27 13:06:29,042.042 INFO    ] 2026-06-27 13:06:29
[2026-06-27 13:06:29,258.258 INFO    ] 2026-06-27 13:06:29
[2026-06-27 13:06:29,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:06:29,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:06:29,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:06:29,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:06:29,706.706 INFO    ] time= 27/06/2026 13:06:29
[2026-06-27 13:06:29,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:06:29,714.714 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:06:29,781.781 INFO    ] No existing commands found in stream
[2026-06-27 13:06:34,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:06:34,795.795 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-27 13:06:38,968.968 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 13:06:38,969.969 INFO    ] Checking for system updates...
[2026-06-27 13:06:38,990.990 INFO    ] 200
[2026-06-27 13:06:38,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:06:39,024.024 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:06:39,025.025 INFO    ] No update needed
[2026-06-27 13:06:39,027.027 INFO    ] Checking for camera pi updates...
[2026-06-27 13:06:39,046.046 INFO    ] 200
[2026-06-27 13:06:39,048.048 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:06:39,071.071 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:06:39,112.112 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:06:39,114.114 INFO    ] No camera update needed
[2026-06-27 13:06:39,115.115 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:06:39,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:06:39,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:06:39,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:06:41,160.160 INFO    ] ================================================
[2026-06-27 13:06:41,175.175 INFO    ] Launching Daemon at Sat Jun 27 13:06:41 IST 2026
[2026-06-27 13:06:41,186.186 INFO    ] ================================================
[2026-06-27 13:06:41,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:06:41
[2026-06-27 13:06:41,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:06:42,069.069 INFO    ] Initializing speech engine...
[2026-06-27 13:06:42,079.079 INFO    ] 2026-06-27 13:06:42
[2026-06-27 13:06:42,292.292 INFO    ] 2026-06-27 13:06:42
[2026-06-27 13:06:42,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:06:42,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:06:42,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:06:42,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:06:42,719.719 INFO    ] time= 27/06/2026 13:06:42
[2026-06-27 13:06:42,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:06:42,751.751 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:06:42,819.819 INFO    ] No existing commands found in stream
[2026-06-27 13:06:47,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:06:47,838.838 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-27 13:06:48,326.326 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 13:06:48,328.328 INFO    ] Checking for system updates...
[2026-06-27 13:06:48,350.350 INFO    ] 200
[2026-06-27 13:06:48,351.351 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:06:48,383.383 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:06:48,384.384 INFO    ] No update needed
[2026-06-27 13:06:48,386.386 INFO    ] Checking for camera pi updates...
[2026-06-27 13:06:48,407.407 INFO    ] 200
[2026-06-27 13:06:48,409.409 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:06:48,432.432 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:06:48,478.478 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:06:48,479.479 INFO    ] No camera update needed
[2026-06-27 13:06:48,481.481 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:06:48,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:06:48,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:06:48,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:06:50,526.526 INFO    ] ================================================
[2026-06-27 13:06:50,541.541 INFO    ] Launching Daemon at Sat Jun 27 13:06:50 IST 2026
[2026-06-27 13:06:50,552.552 INFO    ] ================================================
[2026-06-27 13:06:50,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:06:50
[2026-06-27 13:06:51,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:06:51,357.357 INFO    ] Initializing speech engine...
[2026-06-27 13:06:51,366.366 INFO    ] 2026-06-27 13:06:51
[2026-06-27 13:06:51,577.577 INFO    ] 2026-06-27 13:06:51
[2026-06-27 13:06:51,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:06:51,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:06:51,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:06:51,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:06:51,976.976 INFO    ] time= 27/06/2026 13:06:51
[2026-06-27 13:06:52,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:06:52,021.021 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:06:52,090.090 INFO    ] No existing commands found in stream
[2026-06-27 13:06:57,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:06:57,102.102 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-27 13:07:00,349.349 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:07:00,351.351 INFO    ] Checking for system updates...
[2026-06-27 13:07:00,371.371 INFO    ] 200
[2026-06-27 13:07:00,373.373 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:07:00,409.409 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:07:00,411.411 INFO    ] No update needed
[2026-06-27 13:07:00,412.412 INFO    ] Checking for camera pi updates...
[2026-06-27 13:07:00,439.439 INFO    ] 200
[2026-06-27 13:07:00,440.440 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:07:00,486.486 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:07:00,530.530 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:07:00,532.532 INFO    ] No camera update needed
[2026-06-27 13:07:00,535.535 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:07:00,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:07:00,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:07:00,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:07:02,578.578 INFO    ] ================================================
[2026-06-27 13:07:02,586.586 INFO    ] Launching Daemon at Sat Jun 27 13:07:02 IST 2026
[2026-06-27 13:07:02,592.592 INFO    ] ================================================
[2026-06-27 13:07:02,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:07:02
[2026-06-27 13:07:03,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:07:03,367.367 INFO    ] Initializing speech engine...
[2026-06-27 13:07:03,372.372 INFO    ] 2026-06-27 13:07:03
[2026-06-27 13:07:03,576.576 INFO    ] 2026-06-27 13:07:03
[2026-06-27 13:07:03,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:07:03,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:07:03,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:07:03,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:07:04,016.016 INFO    ] time= 27/06/2026 13:07:03
[2026-06-27 13:07:04,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:07:04,024.024 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:07:04,090.090 INFO    ] No existing commands found in stream
[2026-06-27 13:07:09,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:07:09,107.107 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-27 13:07:12,201.201 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 13:07:12,203.203 INFO    ] Checking for system updates...
[2026-06-27 13:07:12,224.224 INFO    ] 200
[2026-06-27 13:07:12,226.226 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:07:12,259.259 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:07:12,260.260 INFO    ] No update needed
[2026-06-27 13:07:12,262.262 INFO    ] Checking for camera pi updates...
[2026-06-27 13:07:12,283.283 INFO    ] 200
[2026-06-27 13:07:12,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:07:12,308.308 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:07:12,356.356 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:07:12,358.358 INFO    ] No camera update needed
[2026-06-27 13:07:12,359.359 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:07:12,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:07:12,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:07:12,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:07:14,407.407 INFO    ] ================================================
[2026-06-27 13:07:14,422.422 INFO    ] Launching Daemon at Sat Jun 27 13:07:14 IST 2026
[2026-06-27 13:07:14,434.434 INFO    ] ================================================
[2026-06-27 13:07:14,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:07:14
[2026-06-27 13:07:15,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:07:15,328.328 INFO    ] Initializing speech engine...
[2026-06-27 13:07:15,334.334 INFO    ] 2026-06-27 13:07:15
[2026-06-27 13:07:15,540.540 INFO    ] 2026-06-27 13:07:15
[2026-06-27 13:07:15,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:07:15,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:07:15,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:07:15,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:07:15,962.962 INFO    ] time= 27/06/2026 13:07:15
[2026-06-27 13:07:15,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:07:15,991.991 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:07:16,058.058 INFO    ] No existing commands found in stream
[2026-06-27 13:07:21,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:07:21,086.086 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-27 13:07:23,826.826 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 13:07:23,828.828 INFO    ] Checking for system updates...
[2026-06-27 13:07:23,849.849 INFO    ] 200
[2026-06-27 13:07:23,850.850 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:07:23,881.881 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:07:23,882.882 INFO    ] No update needed
[2026-06-27 13:07:23,884.884 INFO    ] Checking for camera pi updates...
[2026-06-27 13:07:23,905.905 INFO    ] 200
[2026-06-27 13:07:23,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:07:23,935.935 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:07:23,973.973 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:07:23,974.974 INFO    ] No camera update needed
[2026-06-27 13:07:23,976.976 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:07:23,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:07:23,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:07:23,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:07:26,022.022 INFO    ] ================================================
[2026-06-27 13:07:26,044.044 INFO    ] Launching Daemon at Sat Jun 27 13:07:26 IST 2026
[2026-06-27 13:07:26,055.055 INFO    ] ================================================
[2026-06-27 13:07:26,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:07:26
[2026-06-27 13:07:26,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:07:26,868.868 INFO    ] Initializing speech engine...
[2026-06-27 13:07:26,873.873 INFO    ] 2026-06-27 13:07:26
[2026-06-27 13:07:27,077.077 INFO    ] 2026-06-27 13:07:27
[2026-06-27 13:07:27,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:07:27,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:07:27,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:07:27,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:07:27,497.497 INFO    ] time= 27/06/2026 13:07:27
[2026-06-27 13:07:27,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:07:27,527.527 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:07:27,594.594 INFO    ] No existing commands found in stream
[2026-06-27 13:07:32,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:07:32,606.606 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-27 13:07:34,151.151 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 13:07:34,153.153 INFO    ] Checking for system updates...
[2026-06-27 13:07:34,175.175 INFO    ] 200
[2026-06-27 13:07:34,176.176 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:07:34,207.207 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:07:34,209.209 INFO    ] No update needed
[2026-06-27 13:07:34,210.210 INFO    ] Checking for camera pi updates...
[2026-06-27 13:07:34,230.230 INFO    ] 200
[2026-06-27 13:07:34,231.231 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:07:34,257.257 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:07:34,296.296 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:07:34,298.298 INFO    ] No camera update needed
[2026-06-27 13:07:34,299.299 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:07:34,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:07:34,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:07:34,307.307 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:07:36,345.345 INFO    ] ================================================
[2026-06-27 13:07:36,360.360 INFO    ] Launching Daemon at Sat Jun 27 13:07:36 IST 2026
[2026-06-27 13:07:36,370.370 INFO    ] ================================================
[2026-06-27 13:07:36,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:07:36
[2026-06-27 13:07:37,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:07:37,243.243 INFO    ] Initializing speech engine...
[2026-06-27 13:07:37,247.247 INFO    ] 2026-06-27 13:07:37
[2026-06-27 13:07:37,454.454 INFO    ] 2026-06-27 13:07:37
[2026-06-27 13:07:37,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:07:37,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:07:37,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:07:37,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:07:37,881.881 INFO    ] time= 27/06/2026 13:07:37
[2026-06-27 13:07:37,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:07:37,909.909 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:07:37,976.976 INFO    ] No existing commands found in stream
[2026-06-27 13:07:42,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:07:42,990.990 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-27 13:07:43,393.393 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 13:07:43,395.395 INFO    ] Checking for system updates...
[2026-06-27 13:07:43,416.416 INFO    ] 200
[2026-06-27 13:07:43,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:07:43,448.448 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:07:43,450.450 INFO    ] No update needed
[2026-06-27 13:07:43,451.451 INFO    ] Checking for camera pi updates...
[2026-06-27 13:07:43,471.471 INFO    ] 200
[2026-06-27 13:07:43,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:07:43,497.497 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:07:43,637.637 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:07:43,638.638 INFO    ] No camera update needed
[2026-06-27 13:07:43,640.640 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:07:43,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:07:43,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:07:43,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:07:45,687.687 INFO    ] ================================================
[2026-06-27 13:07:45,703.703 INFO    ] Launching Daemon at Sat Jun 27 13:07:45 IST 2026
[2026-06-27 13:07:45,714.714 INFO    ] ================================================
[2026-06-27 13:07:46,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:07:46
[2026-06-27 13:07:46,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:07:46,577.577 INFO    ] Initializing speech engine...
[2026-06-27 13:07:46,587.587 INFO    ] 2026-06-27 13:07:46
[2026-06-27 13:07:46,793.793 INFO    ] 2026-06-27 13:07:46
[2026-06-27 13:07:46,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:07:47,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:07:47,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:07:47,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:07:47,210.210 INFO    ] time= 27/06/2026 13:07:47
[2026-06-27 13:07:47,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:07:47,243.243 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:07:47,310.310 INFO    ] No existing commands found in stream
[2026-06-27 13:07:52,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:07:52,322.322 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-27 13:07:54,831.831 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 13:07:54,833.833 INFO    ] Checking for system updates...
[2026-06-27 13:07:54,854.854 INFO    ] 200
[2026-06-27 13:07:54,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:07:54,888.888 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:07:54,889.889 INFO    ] No update needed
[2026-06-27 13:07:54,891.891 INFO    ] Checking for camera pi updates...
[2026-06-27 13:07:54,913.913 INFO    ] 200
[2026-06-27 13:07:54,915.915 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:07:54,938.938 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:07:54,975.975 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:07:54,976.976 INFO    ] No camera update needed
[2026-06-27 13:07:54,978.978 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:07:54,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:07:54,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:07:54,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:07:57,026.026 INFO    ] ================================================
[2026-06-27 13:07:57,042.042 INFO    ] Launching Daemon at Sat Jun 27 13:07:57 IST 2026
[2026-06-27 13:07:57,054.054 INFO    ] ================================================
[2026-06-27 13:07:57,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:07:57
[2026-06-27 13:07:57,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:07:57,839.839 INFO    ] Initializing speech engine...
[2026-06-27 13:07:57,844.844 INFO    ] 2026-06-27 13:07:57
[2026-06-27 13:07:58,063.063 INFO    ] 2026-06-27 13:07:58
[2026-06-27 13:07:58,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:07:58,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:07:58,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:07:58,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:07:58,514.514 INFO    ] time= 27/06/2026 13:07:58
[2026-06-27 13:07:58,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:07:58,522.522 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:07:58,589.589 INFO    ] No existing commands found in stream
[2026-06-27 13:08:03,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:08:03,601.601 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-27 13:08:07,550.550 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 13:08:07,551.551 INFO    ] Checking for system updates...
[2026-06-27 13:08:07,572.572 INFO    ] 200
[2026-06-27 13:08:07,574.574 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:08:07,606.606 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:08:07,607.607 INFO    ] No update needed
[2026-06-27 13:08:07,609.609 INFO    ] Checking for camera pi updates...
[2026-06-27 13:08:07,629.629 INFO    ] 200
[2026-06-27 13:08:07,630.630 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:08:07,653.653 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:08:07,691.691 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:08:07,692.692 INFO    ] No camera update needed
[2026-06-27 13:08:07,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:08:07,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:08:07,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:08:07,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:08:09,740.740 INFO    ] ================================================
[2026-06-27 13:08:09,756.756 INFO    ] Launching Daemon at Sat Jun 27 13:08:09 IST 2026
[2026-06-27 13:08:09,766.766 INFO    ] ================================================
[2026-06-27 13:08:10,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:08:10
[2026-06-27 13:08:10,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:08:10,576.576 INFO    ] Initializing speech engine...
[2026-06-27 13:08:10,582.582 INFO    ] 2026-06-27 13:08:10
[2026-06-27 13:08:10,796.796 INFO    ] 2026-06-27 13:08:10
[2026-06-27 13:08:10,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:08:10,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:08:11,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:08:11,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:08:11,238.238 INFO    ] time= 27/06/2026 13:08:11
[2026-06-27 13:08:11,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:08:11,278.278 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:08:11,350.350 INFO    ] No existing commands found in stream
[2026-06-27 13:08:16,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:08:16,363.363 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-27 13:08:19,841.841 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 13:08:19,843.843 INFO    ] Checking for system updates...
[2026-06-27 13:08:19,864.864 INFO    ] 200
[2026-06-27 13:08:19,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:08:19,898.898 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:08:19,900.900 INFO    ] No update needed
[2026-06-27 13:08:19,901.901 INFO    ] Checking for camera pi updates...
[2026-06-27 13:08:19,921.921 INFO    ] 200
[2026-06-27 13:08:19,923.923 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:08:19,946.946 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:08:19,982.982 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:08:19,984.984 INFO    ] No camera update needed
[2026-06-27 13:08:19,985.985 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:08:19,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:08:19,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:08:19,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:08:22,033.033 INFO    ] ================================================
[2026-06-27 13:08:22,049.049 INFO    ] Launching Daemon at Sat Jun 27 13:08:22 IST 2026
[2026-06-27 13:08:22,060.060 INFO    ] ================================================
[2026-06-27 13:08:22,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:08:22
[2026-06-27 13:08:22,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:08:22,873.873 INFO    ] Initializing speech engine...
[2026-06-27 13:08:22,877.877 INFO    ] 2026-06-27 13:08:22
[2026-06-27 13:08:23,097.097 INFO    ] 2026-06-27 13:08:23
[2026-06-27 13:08:23,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:08:23,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:08:23,315.315 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:08:23,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:08:23,543.543 INFO    ] time= 27/06/2026 13:08:23
[2026-06-27 13:08:23,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:08:23,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:08:23,618.618 INFO    ] No existing commands found in stream
[2026-06-27 13:08:28,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:08:28,629.629 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-27 13:08:32,885.885 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 13:08:32,887.887 INFO    ] Checking for system updates...
[2026-06-27 13:08:32,907.907 INFO    ] 200
[2026-06-27 13:08:32,909.909 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:08:32,939.939 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:08:32,941.941 INFO    ] No update needed
[2026-06-27 13:08:32,942.942 INFO    ] Checking for camera pi updates...
[2026-06-27 13:08:32,962.962 INFO    ] 200
[2026-06-27 13:08:32,963.963 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:08:32,989.989 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:08:33,022.022 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:08:33,024.024 INFO    ] No camera update needed
[2026-06-27 13:08:33,026.026 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:08:33,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:08:33,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:08:33,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:08:35,074.074 INFO    ] ================================================
[2026-06-27 13:08:35,089.089 INFO    ] Launching Daemon at Sat Jun 27 13:08:35 IST 2026
[2026-06-27 13:08:35,100.100 INFO    ] ================================================
[2026-06-27 13:08:35,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:08:35
[2026-06-27 13:08:35,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:08:35,886.886 INFO    ] Initializing speech engine...
[2026-06-27 13:08:35,898.898 INFO    ] 2026-06-27 13:08:35
[2026-06-27 13:08:36,106.106 INFO    ] 2026-06-27 13:08:36
[2026-06-27 13:08:36,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:08:36,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:08:36,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:08:36,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:08:36,540.540 INFO    ] time= 27/06/2026 13:08:36
[2026-06-27 13:08:36,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:08:36,551.551 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:08:36,619.619 INFO    ] No existing commands found in stream
[2026-06-27 13:08:41,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:08:41,636.636 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-27 13:08:43,935.935 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:08:43,936.936 INFO    ] Checking for system updates...
[2026-06-27 13:08:43,957.957 INFO    ] 200
[2026-06-27 13:08:43,958.958 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:08:43,989.989 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:08:43,990.990 INFO    ] No update needed
[2026-06-27 13:08:43,991.991 INFO    ] Checking for camera pi updates...
[2026-06-27 13:08:44,010.010 INFO    ] 200
[2026-06-27 13:08:44,012.012 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:08:44,039.039 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:08:44,077.077 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:08:44,078.078 INFO    ] No camera update needed
[2026-06-27 13:08:44,079.079 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:08:44,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:08:44,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:08:44,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:08:46,124.124 INFO    ] ================================================
[2026-06-27 13:08:46,139.139 INFO    ] Launching Daemon at Sat Jun 27 13:08:46 IST 2026
[2026-06-27 13:08:46,150.150 INFO    ] ================================================
[2026-06-27 13:08:46,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:08:46
[2026-06-27 13:08:46,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:08:46,998.998 INFO    ] Initializing speech engine...
[2026-06-27 13:08:47,011.011 INFO    ] 2026-06-27 13:08:47
[2026-06-27 13:08:47,264.264 INFO    ] 2026-06-27 13:08:47
[2026-06-27 13:08:47,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:08:47,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:08:47,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:08:47,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:08:47,691.691 INFO    ] time= 27/06/2026 13:08:47
[2026-06-27 13:08:47,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:08:47,720.720 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:08:47,787.787 INFO    ] No existing commands found in stream
[2026-06-27 13:08:52,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:08:52,804.804 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-27 13:08:56,424.424 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 13:08:56,425.425 INFO    ] Checking for system updates...
[2026-06-27 13:08:56,446.446 INFO    ] 200
[2026-06-27 13:08:56,447.447 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:08:56,477.477 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:08:56,479.479 INFO    ] No update needed
[2026-06-27 13:08:56,480.480 INFO    ] Checking for camera pi updates...
[2026-06-27 13:08:56,500.500 INFO    ] 200
[2026-06-27 13:08:56,501.501 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:08:56,526.526 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:08:56,567.567 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:08:56,568.568 INFO    ] No camera update needed
[2026-06-27 13:08:56,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:08:56,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:08:56,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:08:56,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:08:58,618.618 INFO    ] ================================================
[2026-06-27 13:08:58,633.633 INFO    ] Launching Daemon at Sat Jun 27 13:08:58 IST 2026
[2026-06-27 13:08:58,644.644 INFO    ] ================================================
[2026-06-27 13:08:58,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:08:58
[2026-06-27 13:08:59,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:08:59,448.448 INFO    ] Initializing speech engine...
[2026-06-27 13:08:59,455.455 INFO    ] 2026-06-27 13:08:59
[2026-06-27 13:08:59,668.668 INFO    ] 2026-06-27 13:08:59
[2026-06-27 13:08:59,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:08:59,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:08:59,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:09:00,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:09:00,090.090 INFO    ] time= 27/06/2026 13:09:00
[2026-06-27 13:09:00,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:09:00,120.120 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:09:00,188.188 INFO    ] No existing commands found in stream
[2026-06-27 13:09:05,202.202 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:09:05,205.205 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-27 13:09:08,576.576 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 13:09:08,578.578 INFO    ] Checking for system updates...
[2026-06-27 13:09:08,598.598 INFO    ] 200
[2026-06-27 13:09:08,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:09:08,630.630 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:09:08,632.632 INFO    ] No update needed
[2026-06-27 13:09:08,634.634 INFO    ] Checking for camera pi updates...
[2026-06-27 13:09:08,653.653 INFO    ] 200
[2026-06-27 13:09:08,655.655 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:09:08,679.679 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:09:08,725.725 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:09:08,726.726 INFO    ] No camera update needed
[2026-06-27 13:09:08,727.727 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:09:08,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:09:08,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:09:08,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:09:10,775.775 INFO    ] ================================================
[2026-06-27 13:09:10,790.790 INFO    ] Launching Daemon at Sat Jun 27 13:09:10 IST 2026
[2026-06-27 13:09:10,802.802 INFO    ] ================================================
[2026-06-27 13:09:11,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:09:11
[2026-06-27 13:09:11,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:09:11,605.605 INFO    ] Initializing speech engine...
[2026-06-27 13:09:11,611.611 INFO    ] 2026-06-27 13:09:11
[2026-06-27 13:09:11,816.816 INFO    ] 2026-06-27 13:09:11
[2026-06-27 13:09:11,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:09:12,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:09:12,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:09:12,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:09:12,239.239 INFO    ] time= 27/06/2026 13:09:12
[2026-06-27 13:09:12,264.264 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:09:12,269.269 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:09:12,338.338 INFO    ] No existing commands found in stream
[2026-06-27 13:09:17,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:09:17,350.350 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-27 13:09:17,999.999 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 13:09:18,000.000 INFO    ] Checking for system updates...
[2026-06-27 13:09:18,021.021 INFO    ] 200
[2026-06-27 13:09:18,023.023 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:09:18,055.055 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:09:18,056.056 INFO    ] No update needed
[2026-06-27 13:09:18,058.058 INFO    ] Checking for camera pi updates...
[2026-06-27 13:09:18,077.077 INFO    ] 200
[2026-06-27 13:09:18,078.078 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:09:18,103.103 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:09:18,147.147 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:09:18,148.148 INFO    ] No camera update needed
[2026-06-27 13:09:18,149.149 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:09:18,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:09:18,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:09:18,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:09:20,198.198 INFO    ] ================================================
[2026-06-27 13:09:20,213.213 INFO    ] Launching Daemon at Sat Jun 27 13:09:20 IST 2026
[2026-06-27 13:09:20,223.223 INFO    ] ================================================
[2026-06-27 13:09:20,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:09:20
[2026-06-27 13:09:20,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:09:21,025.025 INFO    ] Initializing speech engine...
[2026-06-27 13:09:21,036.036 INFO    ] 2026-06-27 13:09:21
[2026-06-27 13:09:21,242.242 INFO    ] 2026-06-27 13:09:21
[2026-06-27 13:09:21,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:09:21,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:09:21,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:09:21,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:09:21,658.658 INFO    ] time= 27/06/2026 13:09:21
[2026-06-27 13:09:21,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:09:21,687.687 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:09:21,754.754 INFO    ] No existing commands found in stream
[2026-06-27 13:09:26,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:09:26,766.766 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-27 13:09:29,168.168 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 13:09:29,169.169 INFO    ] Checking for system updates...
[2026-06-27 13:09:29,190.190 INFO    ] 200
[2026-06-27 13:09:29,192.192 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:09:29,223.223 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:09:29,225.225 INFO    ] No update needed
[2026-06-27 13:09:29,226.226 INFO    ] Checking for camera pi updates...
[2026-06-27 13:09:29,246.246 INFO    ] 200
[2026-06-27 13:09:29,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:09:29,271.271 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:09:29,312.312 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:09:29,314.314 INFO    ] No camera update needed
[2026-06-27 13:09:29,316.316 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:09:29,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:09:29,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:09:29,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:09:31,363.363 INFO    ] ================================================
[2026-06-27 13:09:31,378.378 INFO    ] Launching Daemon at Sat Jun 27 13:09:31 IST 2026
[2026-06-27 13:09:31,389.389 INFO    ] ================================================
[2026-06-27 13:09:31,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:09:31
[2026-06-27 13:09:32,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:09:32,280.280 INFO    ] Initializing speech engine...
[2026-06-27 13:09:32,289.289 INFO    ] 2026-06-27 13:09:32
[2026-06-27 13:09:32,514.514 INFO    ] 2026-06-27 13:09:32
[2026-06-27 13:09:32,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:09:32,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:09:32,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:09:32,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:09:32,951.951 INFO    ] time= 27/06/2026 13:09:32
[2026-06-27 13:09:32,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:09:32,985.985 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:09:33,053.053 INFO    ] No existing commands found in stream
[2026-06-27 13:09:38,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:09:38,066.066 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-27 13:09:41,848.848 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:09:41,849.849 INFO    ] Checking for system updates...
[2026-06-27 13:09:41,871.871 INFO    ] 200
[2026-06-27 13:09:41,873.873 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:09:41,906.906 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:09:41,908.908 INFO    ] No update needed
[2026-06-27 13:09:41,909.909 INFO    ] Checking for camera pi updates...
[2026-06-27 13:09:41,932.932 INFO    ] 200
[2026-06-27 13:09:41,934.934 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:09:41,961.961 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:09:41,999.999 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:09:42,000.000 INFO    ] No camera update needed
[2026-06-27 13:09:42,002.002 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:09:42,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:09:42,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:09:42,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:09:44,049.049 INFO    ] ================================================
[2026-06-27 13:09:44,064.064 INFO    ] Launching Daemon at Sat Jun 27 13:09:44 IST 2026
[2026-06-27 13:09:44,074.074 INFO    ] ================================================
[2026-06-27 13:09:44,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:09:44
[2026-06-27 13:09:44,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:09:44,930.930 INFO    ] Initializing speech engine...
[2026-06-27 13:09:44,935.935 INFO    ] 2026-06-27 13:09:44
[2026-06-27 13:09:45,145.145 INFO    ] 2026-06-27 13:09:45
[2026-06-27 13:09:45,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:09:45,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:09:45,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:09:45,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:09:45,565.565 INFO    ] time= 27/06/2026 13:09:45
[2026-06-27 13:09:45,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:09:45,598.598 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:09:45,667.667 INFO    ] No existing commands found in stream
[2026-06-27 13:09:50,681.681 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:09:50,685.685 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-27 13:09:51,546.546 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:09:51,548.548 INFO    ] Checking for system updates...
[2026-06-27 13:09:51,570.570 INFO    ] 200
[2026-06-27 13:09:51,571.571 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:09:51,608.608 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:09:51,610.610 INFO    ] No update needed
[2026-06-27 13:09:51,611.611 INFO    ] Checking for camera pi updates...
[2026-06-27 13:09:51,631.631 INFO    ] 200
[2026-06-27 13:09:51,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:09:51,657.657 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:09:51,801.801 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:09:51,802.802 INFO    ] No camera update needed
[2026-06-27 13:09:51,804.804 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:09:51,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:09:51,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:09:51,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:09:53,851.851 INFO    ] ================================================
[2026-06-27 13:09:53,866.866 INFO    ] Launching Daemon at Sat Jun 27 13:09:53 IST 2026
[2026-06-27 13:09:53,877.877 INFO    ] ================================================
[2026-06-27 13:09:54,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:09:54
[2026-06-27 13:09:54,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:09:54,718.718 INFO    ] Initializing speech engine...
[2026-06-27 13:09:54,724.724 INFO    ] 2026-06-27 13:09:54
[2026-06-27 13:09:54,933.933 INFO    ] 2026-06-27 13:09:54
[2026-06-27 13:09:54,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:09:55,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:09:55,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:09:55,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:09:55,342.342 INFO    ] time= 27/06/2026 13:09:55
[2026-06-27 13:09:55,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:09:55,385.385 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:09:55,452.452 INFO    ] No existing commands found in stream
[2026-06-27 13:10:00,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:10:00,470.470 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-27 13:10:06,584.584 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 13:10:06,586.586 INFO    ] Checking for system updates...
[2026-06-27 13:10:06,607.607 INFO    ] 200
[2026-06-27 13:10:06,608.608 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:10:06,641.641 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:10:06,643.643 INFO    ] No update needed
[2026-06-27 13:10:06,644.644 INFO    ] Checking for camera pi updates...
[2026-06-27 13:10:06,667.667 INFO    ] 200
[2026-06-27 13:10:06,668.668 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:10:06,692.692 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:10:06,732.732 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:10:06,734.734 INFO    ] No camera update needed
[2026-06-27 13:10:06,735.735 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:10:06,737.737 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:10:06,740.740 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:10:06,743.743 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:10:08,782.782 INFO    ] ================================================
[2026-06-27 13:10:08,797.797 INFO    ] Launching Daemon at Sat Jun 27 13:10:08 IST 2026
[2026-06-27 13:10:08,808.808 INFO    ] ================================================
[2026-06-27 13:10:09,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:10:09
[2026-06-27 13:10:09,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:10:09,607.607 INFO    ] Initializing speech engine...
[2026-06-27 13:10:09,616.616 INFO    ] 2026-06-27 13:10:09
[2026-06-27 13:10:09,821.821 INFO    ] 2026-06-27 13:10:09
[2026-06-27 13:10:09,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:10:09,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:10:10,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:10:10,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:10:10,244.244 INFO    ] time= 27/06/2026 13:10:10
[2026-06-27 13:10:10,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:10:10,274.274 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:10:10,340.340 INFO    ] No existing commands found in stream
[2026-06-27 13:10:15,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:10:15,353.353 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-27 13:10:19,639.639 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 13:10:19,640.640 INFO    ] Checking for system updates...
[2026-06-27 13:10:19,662.662 INFO    ] 200
[2026-06-27 13:10:19,663.663 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:10:19,694.694 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:10:19,696.696 INFO    ] No update needed
[2026-06-27 13:10:19,697.697 INFO    ] Checking for camera pi updates...
[2026-06-27 13:10:19,717.717 INFO    ] 200
[2026-06-27 13:10:19,718.718 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:10:19,742.742 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:10:19,783.783 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:10:19,785.785 INFO    ] No camera update needed
[2026-06-27 13:10:19,786.786 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:10:19,787.787 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:10:19,790.790 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:10:19,793.793 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:10:21,831.831 INFO    ] ================================================
[2026-06-27 13:10:21,846.846 INFO    ] Launching Daemon at Sat Jun 27 13:10:21 IST 2026
[2026-06-27 13:10:21,857.857 INFO    ] ================================================
[2026-06-27 13:10:22,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:10:22
[2026-06-27 13:10:22,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:10:22,703.703 INFO    ] Initializing speech engine...
[2026-06-27 13:10:22,708.708 INFO    ] 2026-06-27 13:10:22
[2026-06-27 13:10:22,918.918 INFO    ] 2026-06-27 13:10:22
[2026-06-27 13:10:22,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:10:23,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:10:23,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:10:23,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:10:23,339.339 INFO    ] time= 27/06/2026 13:10:23
[2026-06-27 13:10:23,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:10:23,369.369 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:10:23,436.436 INFO    ] No existing commands found in stream
[2026-06-27 13:10:28,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:10:28,449.449 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-27 13:10:31,562.562 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 13:10:31,564.564 INFO    ] Checking for system updates...
[2026-06-27 13:10:31,591.591 INFO    ] 200
[2026-06-27 13:10:31,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:10:31,636.636 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:10:31,638.638 INFO    ] No update needed
[2026-06-27 13:10:31,640.640 INFO    ] Checking for camera pi updates...
[2026-06-27 13:10:31,664.664 INFO    ] 200
[2026-06-27 13:10:31,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:10:31,693.693 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:10:31,727.727 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:10:31,729.729 INFO    ] No camera update needed
[2026-06-27 13:10:31,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:10:31,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:10:31,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:10:31,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:10:33,780.780 INFO    ] ================================================
[2026-06-27 13:10:33,795.795 INFO    ] Launching Daemon at Sat Jun 27 13:10:33 IST 2026
[2026-06-27 13:10:33,806.806 INFO    ] ================================================
[2026-06-27 13:10:34,133.133 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:10:34
[2026-06-27 13:10:34,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:10:34,594.594 INFO    ] Initializing speech engine...
[2026-06-27 13:10:34,605.605 INFO    ] 2026-06-27 13:10:34
[2026-06-27 13:10:34,822.822 INFO    ] 2026-06-27 13:10:34
[2026-06-27 13:10:34,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:10:35,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:10:35,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:10:35,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:10:35,271.271 INFO    ] time= 27/06/2026 13:10:35
[2026-06-27 13:10:35,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:10:35,303.303 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:10:35,373.373 INFO    ] No existing commands found in stream
[2026-06-27 13:10:40,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:10:40,387.387 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-27 13:10:44,528.528 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 13:10:44,530.530 INFO    ] Checking for system updates...
[2026-06-27 13:10:44,552.552 INFO    ] 200
[2026-06-27 13:10:44,553.553 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:10:44,585.585 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:10:44,586.586 INFO    ] No update needed
[2026-06-27 13:10:44,588.588 INFO    ] Checking for camera pi updates...
[2026-06-27 13:10:44,607.607 INFO    ] 200
[2026-06-27 13:10:44,609.609 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:10:44,632.632 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:10:44,669.669 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:10:44,671.671 INFO    ] No camera update needed
[2026-06-27 13:10:44,672.672 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:10:44,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:10:44,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:10:44,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:10:46,722.722 INFO    ] ================================================
[2026-06-27 13:10:46,737.737 INFO    ] Launching Daemon at Sat Jun 27 13:10:46 IST 2026
[2026-06-27 13:10:46,747.747 INFO    ] ================================================
[2026-06-27 13:10:47,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:10:47
[2026-06-27 13:10:47,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:10:47,591.591 INFO    ] Initializing speech engine...
[2026-06-27 13:10:47,604.604 INFO    ] 2026-06-27 13:10:47
[2026-06-27 13:10:47,816.816 INFO    ] 2026-06-27 13:10:47
[2026-06-27 13:10:47,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:10:48,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:10:48,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:10:48,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:10:48,255.255 INFO    ] time= 27/06/2026 13:10:48
[2026-06-27 13:10:48,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:10:48,262.262 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:10:48,330.330 INFO    ] No existing commands found in stream
[2026-06-27 13:10:53,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:10:53,347.347 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-27 13:10:54,921.921 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 13:10:54,923.923 INFO    ] Checking for system updates...
[2026-06-27 13:10:54,945.945 INFO    ] 200
[2026-06-27 13:10:54,946.946 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:10:54,977.977 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:10:54,979.979 INFO    ] No update needed
[2026-06-27 13:10:54,980.980 INFO    ] Checking for camera pi updates...
[2026-06-27 13:10:55,000.000 INFO    ] 200
[2026-06-27 13:10:55,002.002 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:10:55,025.025 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:10:55,054.054 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:10:55,056.056 INFO    ] No camera update needed
[2026-06-27 13:10:55,057.057 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:10:55,058.058 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:10:55,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:10:55,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:10:57,103.103 INFO    ] ================================================
[2026-06-27 13:10:57,118.118 INFO    ] Launching Daemon at Sat Jun 27 13:10:57 IST 2026
[2026-06-27 13:10:57,129.129 INFO    ] ================================================
[2026-06-27 13:10:57,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:10:57
[2026-06-27 13:10:57,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:10:57,962.962 INFO    ] Initializing speech engine...
[2026-06-27 13:10:57,967.967 INFO    ] 2026-06-27 13:10:57
[2026-06-27 13:10:58,171.171 INFO    ] 2026-06-27 13:10:58
[2026-06-27 13:10:58,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:10:58,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:10:58,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:10:58,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:10:58,592.592 INFO    ] time= 27/06/2026 13:10:58
[2026-06-27 13:10:58,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:10:58,622.622 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:10:58,689.689 INFO    ] No existing commands found in stream
[2026-06-27 13:11:03,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:11:03,701.701 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-27 13:11:06,955.955 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 13:11:06,957.957 INFO    ] Checking for system updates...
[2026-06-27 13:11:06,977.977 INFO    ] 200
[2026-06-27 13:11:06,979.979 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:11:07,011.011 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:11:07,012.012 INFO    ] No update needed
[2026-06-27 13:11:07,014.014 INFO    ] Checking for camera pi updates...
[2026-06-27 13:11:07,034.034 INFO    ] 200
[2026-06-27 13:11:07,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:11:07,058.058 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:11:07,095.095 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:11:07,096.096 INFO    ] No camera update needed
[2026-06-27 13:11:07,097.097 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:11:07,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:11:07,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:11:07,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:11:09,143.143 INFO    ] ================================================
[2026-06-27 13:11:09,158.158 INFO    ] Launching Daemon at Sat Jun 27 13:11:09 IST 2026
[2026-06-27 13:11:09,169.169 INFO    ] ================================================
[2026-06-27 13:11:09,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:11:09
[2026-06-27 13:11:09,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:11:10,025.025 INFO    ] Initializing speech engine...
[2026-06-27 13:11:10,037.037 INFO    ] 2026-06-27 13:11:10
[2026-06-27 13:11:10,252.252 INFO    ] 2026-06-27 13:11:10
[2026-06-27 13:11:10,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:11:10,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:11:10,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:11:10,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:11:10,683.683 INFO    ] time= 27/06/2026 13:11:10
[2026-06-27 13:11:10,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:11:10,728.728 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:11:10,804.804 INFO    ] No existing commands found in stream
[2026-06-27 13:11:15,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:11:15,816.816 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-27 13:11:18,791.791 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 13:11:18,793.793 INFO    ] Checking for system updates...
[2026-06-27 13:11:18,814.814 INFO    ] 200
[2026-06-27 13:11:18,815.815 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:11:18,848.848 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:11:18,850.850 INFO    ] No update needed
[2026-06-27 13:11:18,851.851 INFO    ] Checking for camera pi updates...
[2026-06-27 13:11:18,874.874 INFO    ] 200
[2026-06-27 13:11:18,875.875 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:11:18,899.899 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:11:18,941.941 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:11:18,943.943 INFO    ] No camera update needed
[2026-06-27 13:11:18,945.945 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:11:18,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:11:18,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:11:18,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:11:20,991.991 INFO    ] ================================================
[2026-06-27 13:11:21,006.006 INFO    ] Launching Daemon at Sat Jun 27 13:11:21 IST 2026
[2026-06-27 13:11:21,017.017 INFO    ] ================================================
[2026-06-27 13:11:21,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:11:21
[2026-06-27 13:11:21,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:11:21,829.829 INFO    ] Initializing speech engine...
[2026-06-27 13:11:21,833.833 INFO    ] 2026-06-27 13:11:21
[2026-06-27 13:11:22,040.040 INFO    ] 2026-06-27 13:11:22
[2026-06-27 13:11:22,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:11:22,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:11:22,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:11:22,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:11:22,446.446 INFO    ] time= 27/06/2026 13:11:22
[2026-06-27 13:11:22,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:11:22,485.485 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:11:22,557.557 INFO    ] No existing commands found in stream
[2026-06-27 13:11:27,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:11:27,575.575 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-27 13:11:29,462.462 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 13:11:29,463.463 INFO    ] Checking for system updates...
[2026-06-27 13:11:29,485.485 INFO    ] 200
[2026-06-27 13:11:29,486.486 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:11:29,517.517 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:11:29,518.518 INFO    ] No update needed
[2026-06-27 13:11:29,520.520 INFO    ] Checking for camera pi updates...
[2026-06-27 13:11:29,540.540 INFO    ] 200
[2026-06-27 13:11:29,542.542 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:11:29,568.568 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:11:29,605.605 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:11:29,606.606 INFO    ] No camera update needed
[2026-06-27 13:11:29,608.608 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:11:29,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:11:29,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:11:29,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:11:31,657.657 INFO    ] ================================================
[2026-06-27 13:11:31,676.676 INFO    ] Launching Daemon at Sat Jun 27 13:11:31 IST 2026
[2026-06-27 13:11:31,690.690 INFO    ] ================================================
[2026-06-27 13:11:32,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:11:32
[2026-06-27 13:11:32,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:11:32,586.586 INFO    ] Initializing speech engine...
[2026-06-27 13:11:32,592.592 INFO    ] 2026-06-27 13:11:32
[2026-06-27 13:11:32,798.798 INFO    ] 2026-06-27 13:11:32
[2026-06-27 13:11:32,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:11:33,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:11:33,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:11:33,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:11:33,222.222 INFO    ] time= 27/06/2026 13:11:33
[2026-06-27 13:11:33,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:11:33,250.250 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:11:33,317.317 INFO    ] No existing commands found in stream
[2026-06-27 13:11:38,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:11:38,335.335 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-27 13:11:41,609.609 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 13:11:41,611.611 INFO    ] Checking for system updates...
[2026-06-27 13:11:41,633.633 INFO    ] 200
[2026-06-27 13:11:41,635.635 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:11:41,666.666 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:11:41,668.668 INFO    ] No update needed
[2026-06-27 13:11:41,669.669 INFO    ] Checking for camera pi updates...
[2026-06-27 13:11:41,689.689 INFO    ] 200
[2026-06-27 13:11:41,690.690 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:11:41,714.714 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:11:41,760.760 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:11:41,761.761 INFO    ] No camera update needed
[2026-06-27 13:11:41,762.762 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:11:41,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:11:41,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:11:41,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:11:43,810.810 INFO    ] ================================================
[2026-06-27 13:11:43,825.825 INFO    ] Launching Daemon at Sat Jun 27 13:11:43 IST 2026
[2026-06-27 13:11:43,836.836 INFO    ] ================================================
[2026-06-27 13:11:44,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:11:44
[2026-06-27 13:11:44,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:11:44,722.722 INFO    ] Initializing speech engine...
[2026-06-27 13:11:44,728.728 INFO    ] 2026-06-27 13:11:44
[2026-06-27 13:11:44,939.939 INFO    ] 2026-06-27 13:11:44
[2026-06-27 13:11:44,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:11:45,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:11:45,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:11:45,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:11:45,364.364 INFO    ] time= 27/06/2026 13:11:45
[2026-06-27 13:11:45,389.389 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:11:45,395.395 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:11:45,465.465 INFO    ] No existing commands found in stream
[2026-06-27 13:11:50,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:11:50,477.477 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-27 13:11:53,200.200 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 13:11:53,201.201 INFO    ] Checking for system updates...
[2026-06-27 13:11:53,224.224 INFO    ] 200
[2026-06-27 13:11:53,226.226 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:11:53,258.258 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:11:53,259.259 INFO    ] No update needed
[2026-06-27 13:11:53,260.260 INFO    ] Checking for camera pi updates...
[2026-06-27 13:11:53,280.280 INFO    ] 200
[2026-06-27 13:11:53,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:11:53,306.306 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:11:53,455.455 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:11:53,456.456 INFO    ] No camera update needed
[2026-06-27 13:11:53,457.457 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:11:53,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:11:53,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:11:53,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:11:55,506.506 INFO    ] ================================================
[2026-06-27 13:11:55,521.521 INFO    ] Launching Daemon at Sat Jun 27 13:11:55 IST 2026
[2026-06-27 13:11:55,533.533 INFO    ] ================================================
[2026-06-27 13:11:55,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:11:55
[2026-06-27 13:11:56,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:11:56,369.369 INFO    ] Initializing speech engine...
[2026-06-27 13:11:56,374.374 INFO    ] 2026-06-27 13:11:56
[2026-06-27 13:11:56,575.575 INFO    ] 2026-06-27 13:11:56
[2026-06-27 13:11:56,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:11:56,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:11:56,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:11:56,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:11:57,031.031 INFO    ] time= 27/06/2026 13:11:56
[2026-06-27 13:11:57,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:11:57,061.061 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:11:57,128.128 INFO    ] No existing commands found in stream
[2026-06-27 13:12:02,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:12:02,138.138 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-27 13:12:04,887.887 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 13:12:04,889.889 INFO    ] Checking for system updates...
[2026-06-27 13:12:04,927.927 INFO    ] 200
[2026-06-27 13:12:04,929.929 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:12:04,959.959 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:12:04,961.961 INFO    ] No update needed
[2026-06-27 13:12:04,962.962 INFO    ] Checking for camera pi updates...
[2026-06-27 13:12:04,982.982 INFO    ] 200
[2026-06-27 13:12:04,983.983 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:12:05,007.007 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:12:05,044.044 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:12:05,046.046 INFO    ] No camera update needed
[2026-06-27 13:12:05,047.047 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:12:05,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:12:05,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:12:05,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:12:07,095.095 INFO    ] ================================================
[2026-06-27 13:12:07,111.111 INFO    ] Launching Daemon at Sat Jun 27 13:12:07 IST 2026
[2026-06-27 13:12:07,122.122 INFO    ] ================================================
[2026-06-27 13:12:07,486.486 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:12:07
[2026-06-27 13:12:07,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:12:07,970.970 INFO    ] Initializing speech engine...
[2026-06-27 13:12:07,976.976 INFO    ] 2026-06-27 13:12:07
[2026-06-27 13:12:08,180.180 INFO    ] 2026-06-27 13:12:08
[2026-06-27 13:12:08,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:12:08,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:12:08,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:12:08,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:12:08,599.599 INFO    ] time= 27/06/2026 13:12:08
[2026-06-27 13:12:08,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:12:08,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:12:08,696.696 INFO    ] No existing commands found in stream
[2026-06-27 13:12:13,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:12:13,709.709 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-27 13:12:14,540.540 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 13:12:14,541.541 INFO    ] Checking for system updates...
[2026-06-27 13:12:14,562.562 INFO    ] 200
[2026-06-27 13:12:14,564.564 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:12:14,594.594 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:12:14,595.595 INFO    ] No update needed
[2026-06-27 13:12:14,597.597 INFO    ] Checking for camera pi updates...
[2026-06-27 13:12:14,616.616 INFO    ] 200
[2026-06-27 13:12:14,617.617 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:12:14,641.641 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:12:14,680.680 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:12:14,682.682 INFO    ] No camera update needed
[2026-06-27 13:12:14,683.683 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:12:14,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:12:14,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:12:14,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:12:16,728.728 INFO    ] ================================================
[2026-06-27 13:12:16,744.744 INFO    ] Launching Daemon at Sat Jun 27 13:12:16 IST 2026
[2026-06-27 13:12:16,756.756 INFO    ] ================================================
[2026-06-27 13:12:17,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:12:17
[2026-06-27 13:12:17,446.446 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:12:17,590.590 INFO    ] Initializing speech engine...
[2026-06-27 13:12:17,596.596 INFO    ] 2026-06-27 13:12:17
[2026-06-27 13:12:17,798.798 INFO    ] 2026-06-27 13:12:17
[2026-06-27 13:12:17,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:12:18,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:12:18,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:12:18,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:12:18,237.237 INFO    ] time= 27/06/2026 13:12:18
[2026-06-27 13:12:18,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:12:18,244.244 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:12:18,309.309 INFO    ] No existing commands found in stream
[2026-06-27 13:12:23,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:12:23,323.323 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-27 13:12:23,957.957 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:12:23,959.959 INFO    ] Checking for system updates...
[2026-06-27 13:12:23,980.980 INFO    ] 200
[2026-06-27 13:12:23,981.981 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:12:24,014.014 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:12:24,015.015 INFO    ] No update needed
[2026-06-27 13:12:24,017.017 INFO    ] Checking for camera pi updates...
[2026-06-27 13:12:24,036.036 INFO    ] 200
[2026-06-27 13:12:24,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:12:24,061.061 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:12:24,101.101 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:12:24,103.103 INFO    ] No camera update needed
[2026-06-27 13:12:24,104.104 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:12:24,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:12:24,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:12:24,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:12:26,150.150 INFO    ] ================================================
[2026-06-27 13:12:26,166.166 INFO    ] Launching Daemon at Sat Jun 27 13:12:26 IST 2026
[2026-06-27 13:12:26,177.177 INFO    ] ================================================
[2026-06-27 13:12:26,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:12:26
[2026-06-27 13:12:26,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:12:27,048.048 INFO    ] Initializing speech engine...
[2026-06-27 13:12:27,052.052 INFO    ] 2026-06-27 13:12:27
[2026-06-27 13:12:27,259.259 INFO    ] 2026-06-27 13:12:27
[2026-06-27 13:12:27,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:12:27,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:12:27,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:12:27,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:12:27,674.674 INFO    ] time= 27/06/2026 13:12:27
[2026-06-27 13:12:27,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:12:27,718.718 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:12:27,786.786 INFO    ] No existing commands found in stream
[2026-06-27 13:12:32,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:12:32,803.803 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-27 13:12:36,437.437 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 13:12:36,438.438 INFO    ] Checking for system updates...
[2026-06-27 13:12:36,459.459 INFO    ] 200
[2026-06-27 13:12:36,460.460 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:12:36,493.493 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:12:36,494.494 INFO    ] No update needed
[2026-06-27 13:12:36,495.495 INFO    ] Checking for camera pi updates...
[2026-06-27 13:12:36,517.517 INFO    ] 200
[2026-06-27 13:12:36,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:12:36,542.542 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:12:36,570.570 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:12:36,571.571 INFO    ] No camera update needed
[2026-06-27 13:12:36,573.573 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:12:36,574.574 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:12:36,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:12:36,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:12:38,619.619 INFO    ] ================================================
[2026-06-27 13:12:38,635.635 INFO    ] Launching Daemon at Sat Jun 27 13:12:38 IST 2026
[2026-06-27 13:12:38,646.646 INFO    ] ================================================
[2026-06-27 13:12:39,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:12:39
[2026-06-27 13:12:39,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:12:39,501.501 INFO    ] Initializing speech engine...
[2026-06-27 13:12:39,505.505 INFO    ] 2026-06-27 13:12:39
[2026-06-27 13:12:39,711.711 INFO    ] 2026-06-27 13:12:39
[2026-06-27 13:12:39,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:12:39,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:12:39,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:12:40,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:12:40,128.128 INFO    ] time= 27/06/2026 13:12:40
[2026-06-27 13:12:40,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:12:40,160.160 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:12:40,227.227 INFO    ] No existing commands found in stream
[2026-06-27 13:12:45,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:12:45,245.245 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-27 13:12:47,242.242 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:12:47,243.243 INFO    ] Checking for system updates...
[2026-06-27 13:12:47,265.265 INFO    ] 200
[2026-06-27 13:12:47,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:12:47,297.297 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:12:47,299.299 INFO    ] No update needed
[2026-06-27 13:12:47,300.300 INFO    ] Checking for camera pi updates...
[2026-06-27 13:12:47,319.319 INFO    ] 200
[2026-06-27 13:12:47,321.321 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:12:47,344.344 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:12:47,380.380 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:12:47,381.381 INFO    ] No camera update needed
[2026-06-27 13:12:47,383.383 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:12:47,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:12:47,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:12:47,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:12:49,428.428 INFO    ] ================================================
[2026-06-27 13:12:49,443.443 INFO    ] Launching Daemon at Sat Jun 27 13:12:49 IST 2026
[2026-06-27 13:12:49,455.455 INFO    ] ================================================
[2026-06-27 13:12:49,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:12:49
[2026-06-27 13:12:50,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:12:50,262.262 INFO    ] Initializing speech engine...
[2026-06-27 13:12:50,272.272 INFO    ] 2026-06-27 13:12:50
[2026-06-27 13:12:50,478.478 INFO    ] 2026-06-27 13:12:50
[2026-06-27 13:12:50,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:12:50,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:12:50,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:12:50,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:12:50,894.894 INFO    ] time= 27/06/2026 13:12:50
[2026-06-27 13:12:50,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:12:50,924.924 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:12:51,014.014 INFO    ] No existing commands found in stream
[2026-06-27 13:12:56,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:12:56,026.026 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-27 13:13:00,164.164 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 13:13:00,166.166 INFO    ] Checking for system updates...
[2026-06-27 13:13:00,189.189 INFO    ] 200
[2026-06-27 13:13:00,190.190 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:13:00,220.220 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:13:00,221.221 INFO    ] No update needed
[2026-06-27 13:13:00,223.223 INFO    ] Checking for camera pi updates...
[2026-06-27 13:13:00,242.242 INFO    ] 200
[2026-06-27 13:13:00,244.244 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:13:00,267.267 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:13:00,308.308 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:13:00,309.309 INFO    ] No camera update needed
[2026-06-27 13:13:00,310.310 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:13:00,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:13:00,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:13:00,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:13:02,352.352 INFO    ] ================================================
[2026-06-27 13:13:02,364.364 INFO    ] Launching Daemon at Sat Jun 27 13:13:02 IST 2026
[2026-06-27 13:13:02,372.372 INFO    ] ================================================
[2026-06-27 13:13:02,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:13:02
[2026-06-27 13:13:03,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:13:03,251.251 INFO    ] Initializing speech engine...
[2026-06-27 13:13:03,260.260 INFO    ] 2026-06-27 13:13:03
[2026-06-27 13:13:03,480.480 INFO    ] 2026-06-27 13:13:03
[2026-06-27 13:13:03,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:13:03,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:13:03,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:13:03,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:13:03,928.928 INFO    ] time= 27/06/2026 13:13:03
[2026-06-27 13:13:03,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:13:03,962.962 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:13:04,029.029 INFO    ] No existing commands found in stream
[2026-06-27 13:13:09,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:13:09,041.041 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-27 13:13:12,881.881 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 13:13:12,883.883 INFO    ] Checking for system updates...
[2026-06-27 13:13:12,903.903 INFO    ] 200
[2026-06-27 13:13:12,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:13:12,935.935 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:13:12,937.937 INFO    ] No update needed
[2026-06-27 13:13:12,938.938 INFO    ] Checking for camera pi updates...
[2026-06-27 13:13:12,958.958 INFO    ] 200
[2026-06-27 13:13:12,959.959 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:13:12,983.983 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:13:13,019.019 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:13:13,021.021 INFO    ] No camera update needed
[2026-06-27 13:13:13,022.022 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:13:13,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:13:13,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:13:13,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:13:15,068.068 INFO    ] ================================================
[2026-06-27 13:13:15,084.084 INFO    ] Launching Daemon at Sat Jun 27 13:13:15 IST 2026
[2026-06-27 13:13:15,095.095 INFO    ] ================================================
[2026-06-27 13:13:15,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:13:15
[2026-06-27 13:13:15,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:13:15,923.923 INFO    ] Initializing speech engine...
[2026-06-27 13:13:15,928.928 INFO    ] 2026-06-27 13:13:15
[2026-06-27 13:13:16,133.133 INFO    ] 2026-06-27 13:13:16
[2026-06-27 13:13:16,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:13:16,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:13:16,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:13:16,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:13:16,552.552 INFO    ] time= 27/06/2026 13:13:16
[2026-06-27 13:13:16,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:13:16,579.579 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:13:16,645.645 INFO    ] No existing commands found in stream
[2026-06-27 13:13:21,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:13:21,657.657 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-27 13:13:23,145.145 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 13:13:23,146.146 INFO    ] Checking for system updates...
[2026-06-27 13:13:23,167.167 INFO    ] 200
[2026-06-27 13:13:23,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:13:23,198.198 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:13:23,200.200 INFO    ] No update needed
[2026-06-27 13:13:23,201.201 INFO    ] Checking for camera pi updates...
[2026-06-27 13:13:23,223.223 INFO    ] 200
[2026-06-27 13:13:23,224.224 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:13:23,248.248 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:13:23,288.288 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:13:23,290.290 INFO    ] No camera update needed
[2026-06-27 13:13:23,291.291 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:13:23,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:13:23,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:13:23,298.298 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:13:25,336.336 INFO    ] ================================================
[2026-06-27 13:13:25,352.352 INFO    ] Launching Daemon at Sat Jun 27 13:13:25 IST 2026
[2026-06-27 13:13:25,364.364 INFO    ] ================================================
[2026-06-27 13:13:25,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:13:25
[2026-06-27 13:13:26,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:13:26,176.176 INFO    ] Initializing speech engine...
[2026-06-27 13:13:26,181.181 INFO    ] 2026-06-27 13:13:26
[2026-06-27 13:13:26,394.394 INFO    ] 2026-06-27 13:13:26
[2026-06-27 13:13:26,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:13:26,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:13:26,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:13:26,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:13:26,824.824 INFO    ] time= 27/06/2026 13:13:26
[2026-06-27 13:13:26,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:13:26,851.851 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:13:26,917.917 INFO    ] No existing commands found in stream
[2026-06-27 13:13:31,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:13:31,934.934 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-27 13:13:34,400.400 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:13:34,402.402 INFO    ] Checking for system updates...
[2026-06-27 13:13:34,423.423 INFO    ] 200
[2026-06-27 13:13:34,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:13:34,454.454 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:13:34,456.456 INFO    ] No update needed
[2026-06-27 13:13:34,457.457 INFO    ] Checking for camera pi updates...
[2026-06-27 13:13:34,477.477 INFO    ] 200
[2026-06-27 13:13:34,479.479 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:13:34,502.502 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:13:34,547.547 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:13:34,548.548 INFO    ] No camera update needed
[2026-06-27 13:13:34,550.550 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:13:34,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:13:34,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:13:34,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:13:36,597.597 INFO    ] ================================================
[2026-06-27 13:13:36,612.612 INFO    ] Launching Daemon at Sat Jun 27 13:13:36 IST 2026
[2026-06-27 13:13:36,623.623 INFO    ] ================================================
[2026-06-27 13:13:36,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:13:36
[2026-06-27 13:13:37,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:13:37,433.433 INFO    ] Initializing speech engine...
[2026-06-27 13:13:37,443.443 INFO    ] 2026-06-27 13:13:37
[2026-06-27 13:13:37,646.646 INFO    ] 2026-06-27 13:13:37
[2026-06-27 13:13:37,675.675 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:13:37,857.857 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:13:37,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:13:38,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:13:38,063.063 INFO    ] time= 27/06/2026 13:13:38
[2026-06-27 13:13:38,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:13:38,092.092 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:13:38,157.157 INFO    ] No existing commands found in stream
[2026-06-27 13:13:43,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:13:43,170.170 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-27 13:13:43,945.945 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 13:13:43,946.946 INFO    ] Checking for system updates...
[2026-06-27 13:13:43,967.967 INFO    ] 200
[2026-06-27 13:13:43,969.969 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:13:43,999.999 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:13:44,001.001 INFO    ] No update needed
[2026-06-27 13:13:44,002.002 INFO    ] Checking for camera pi updates...
[2026-06-27 13:13:44,022.022 INFO    ] 200
[2026-06-27 13:13:44,023.023 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:13:44,047.047 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:13:44,086.086 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:13:44,088.088 INFO    ] No camera update needed
[2026-06-27 13:13:44,090.090 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:13:44,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:13:44,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:13:44,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:13:46,137.137 INFO    ] ================================================
[2026-06-27 13:13:46,153.153 INFO    ] Launching Daemon at Sat Jun 27 13:13:46 IST 2026
[2026-06-27 13:13:46,164.164 INFO    ] ================================================
[2026-06-27 13:13:46,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:13:46
[2026-06-27 13:13:46,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:13:46,947.947 INFO    ] Initializing speech engine...
[2026-06-27 13:13:46,954.954 INFO    ] 2026-06-27 13:13:46
[2026-06-27 13:13:47,166.166 INFO    ] 2026-06-27 13:13:47
[2026-06-27 13:13:47,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:13:47,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:13:47,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:13:47,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:13:47,607.607 INFO    ] time= 27/06/2026 13:13:47
[2026-06-27 13:13:47,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:13:47,614.614 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:13:47,680.680 INFO    ] No existing commands found in stream
[2026-06-27 13:13:52,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:13:52,693.693 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-27 13:13:55,658.658 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 13:13:55,659.659 INFO    ] Checking for system updates...
[2026-06-27 13:13:55,680.680 INFO    ] 200
[2026-06-27 13:13:55,682.682 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:13:55,712.712 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:13:55,714.714 INFO    ] No update needed
[2026-06-27 13:13:55,715.715 INFO    ] Checking for camera pi updates...
[2026-06-27 13:13:55,735.735 INFO    ] 200
[2026-06-27 13:13:55,737.737 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:13:55,760.760 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:13:55,905.905 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:13:55,906.906 INFO    ] No camera update needed
[2026-06-27 13:13:55,907.907 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:13:55,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:13:55,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:13:55,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:13:57,953.953 INFO    ] ================================================
[2026-06-27 13:13:57,968.968 INFO    ] Launching Daemon at Sat Jun 27 13:13:57 IST 2026
[2026-06-27 13:13:57,979.979 INFO    ] ================================================
[2026-06-27 13:13:58,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:13:58
[2026-06-27 13:13:58,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:13:58,807.807 INFO    ] Initializing speech engine...
[2026-06-27 13:13:58,812.812 INFO    ] 2026-06-27 13:13:58
[2026-06-27 13:13:59,002.002 INFO    ] 2026-06-27 13:13:59
[2026-06-27 13:13:59,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:13:59,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:13:59,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:13:59,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:13:59,448.448 INFO    ] time= 27/06/2026 13:13:59
[2026-06-27 13:13:59,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:13:59,478.478 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:13:59,544.544 INFO    ] No existing commands found in stream
[2026-06-27 13:14:04,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:14:04,557.557 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-27 13:14:08,568.568 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 13:14:08,569.569 INFO    ] Checking for system updates...
[2026-06-27 13:14:08,591.591 INFO    ] 200
[2026-06-27 13:14:08,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:14:08,625.625 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:14:08,627.627 INFO    ] No update needed
[2026-06-27 13:14:08,628.628 INFO    ] Checking for camera pi updates...
[2026-06-27 13:14:08,650.650 INFO    ] 200
[2026-06-27 13:14:08,652.652 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:14:08,676.676 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:14:08,714.714 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:14:08,715.715 INFO    ] No camera update needed
[2026-06-27 13:14:08,716.716 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:14:08,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:14:08,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:14:08,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:14:10,764.764 INFO    ] ================================================
[2026-06-27 13:14:10,779.779 INFO    ] Launching Daemon at Sat Jun 27 13:14:10 IST 2026
[2026-06-27 13:14:10,789.789 INFO    ] ================================================
[2026-06-27 13:14:11,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:14:11
[2026-06-27 13:14:11,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:14:11,573.573 INFO    ] Initializing speech engine...
[2026-06-27 13:14:11,583.583 INFO    ] 2026-06-27 13:14:11
[2026-06-27 13:14:11,789.789 INFO    ] 2026-06-27 13:14:11
[2026-06-27 13:14:11,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:14:12,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:14:12,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:14:12,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:14:12,187.187 INFO    ] time= 27/06/2026 13:14:12
[2026-06-27 13:14:12,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:14:12,237.237 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:14:12,309.309 INFO    ] No existing commands found in stream
[2026-06-27 13:14:17,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:14:17,320.320 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-27 13:14:20,846.846 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 13:14:20,847.847 INFO    ] Checking for system updates...
[2026-06-27 13:14:20,868.868 INFO    ] 200
[2026-06-27 13:14:20,869.869 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:14:20,899.899 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:14:20,900.900 INFO    ] No update needed
[2026-06-27 13:14:20,902.902 INFO    ] Checking for camera pi updates...
[2026-06-27 13:14:20,921.921 INFO    ] 200
[2026-06-27 13:14:20,922.922 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:14:20,948.948 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:14:20,997.997 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:14:20,998.998 INFO    ] No camera update needed
[2026-06-27 13:14:20,999.999 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:14:21,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:14:21,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:14:21,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:14:23,046.046 INFO    ] ================================================
[2026-06-27 13:14:23,060.060 INFO    ] Launching Daemon at Sat Jun 27 13:14:23 IST 2026
[2026-06-27 13:14:23,071.071 INFO    ] ================================================
[2026-06-27 13:14:23,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:14:23
[2026-06-27 13:14:23,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:14:23,874.874 INFO    ] Initializing speech engine...
[2026-06-27 13:14:23,879.879 INFO    ] 2026-06-27 13:14:23
[2026-06-27 13:14:24,085.085 INFO    ] 2026-06-27 13:14:24
[2026-06-27 13:14:24,114.114 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:14:24,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:14:24,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:14:24,460.460 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:14:24,510.510 INFO    ] time= 27/06/2026 13:14:24
[2026-06-27 13:14:24,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:14:24,537.537 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:14:24,630.630 INFO    ] No existing commands found in stream
[2026-06-27 13:14:29,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:14:29,642.642 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-27 13:14:32,047.047 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 13:14:32,048.048 INFO    ] Checking for system updates...
[2026-06-27 13:14:32,069.069 INFO    ] 200
[2026-06-27 13:14:32,070.070 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:14:32,104.104 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:14:32,105.105 INFO    ] No update needed
[2026-06-27 13:14:32,106.106 INFO    ] Checking for camera pi updates...
[2026-06-27 13:14:32,126.126 INFO    ] 200
[2026-06-27 13:14:32,127.127 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:14:32,150.150 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:14:32,176.176 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:14:32,177.177 INFO    ] No camera update needed
[2026-06-27 13:14:32,179.179 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:14:32,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:14:32,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:14:32,185.185 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:14:34,224.224 INFO    ] ================================================
[2026-06-27 13:14:34,240.240 INFO    ] Launching Daemon at Sat Jun 27 13:14:34 IST 2026
[2026-06-27 13:14:34,250.250 INFO    ] ================================================
[2026-06-27 13:14:34,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:14:34
[2026-06-27 13:14:34,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:14:35,066.066 INFO    ] Initializing speech engine...
[2026-06-27 13:14:35,071.071 INFO    ] 2026-06-27 13:14:35
[2026-06-27 13:14:35,287.287 INFO    ] 2026-06-27 13:14:35
[2026-06-27 13:14:35,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:14:35,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:14:35,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:14:35,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:14:35,726.726 INFO    ] time= 27/06/2026 13:14:35
[2026-06-27 13:14:35,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:14:35,733.733 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:14:35,799.799 INFO    ] No existing commands found in stream
[2026-06-27 13:14:40,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:14:40,811.811 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-27 13:14:41,430.430 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 13:14:41,432.432 INFO    ] Checking for system updates...
[2026-06-27 13:14:41,454.454 INFO    ] 200
[2026-06-27 13:14:41,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:14:41,488.488 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:14:41,490.490 INFO    ] No update needed
[2026-06-27 13:14:41,491.491 INFO    ] Checking for camera pi updates...
[2026-06-27 13:14:41,511.511 INFO    ] 200
[2026-06-27 13:14:41,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:14:41,536.536 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:14:41,580.580 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:14:41,581.581 INFO    ] No camera update needed
[2026-06-27 13:14:41,583.583 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:14:41,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:14:41,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:14:41,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:14:43,629.629 INFO    ] ================================================
[2026-06-27 13:14:43,643.643 INFO    ] Launching Daemon at Sat Jun 27 13:14:43 IST 2026
[2026-06-27 13:14:43,654.654 INFO    ] ================================================
[2026-06-27 13:14:44,014.014 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:14:44
[2026-06-27 13:14:44,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:14:44,492.492 INFO    ] Initializing speech engine...
[2026-06-27 13:14:44,498.498 INFO    ] 2026-06-27 13:14:44
[2026-06-27 13:14:44,710.710 INFO    ] 2026-06-27 13:14:44
[2026-06-27 13:14:44,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:14:44,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:14:44,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:14:45,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:14:45,131.131 INFO    ] time= 27/06/2026 13:14:45
[2026-06-27 13:14:45,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:14:45,167.167 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:14:45,235.235 INFO    ] No existing commands found in stream
[2026-06-27 13:14:50,250.250 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:14:50,252.252 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-27 13:14:51,165.165 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 13:14:51,167.167 INFO    ] Checking for system updates...
[2026-06-27 13:14:51,187.187 INFO    ] 200
[2026-06-27 13:14:51,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:14:51,219.219 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:14:51,221.221 INFO    ] No update needed
[2026-06-27 13:14:51,222.222 INFO    ] Checking for camera pi updates...
[2026-06-27 13:14:51,242.242 INFO    ] 200
[2026-06-27 13:14:51,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:14:51,267.267 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:14:51,306.306 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:14:51,307.307 INFO    ] No camera update needed
[2026-06-27 13:14:51,309.309 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:14:51,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:14:51,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:14:51,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:14:53,354.354 INFO    ] ================================================
[2026-06-27 13:14:53,369.369 INFO    ] Launching Daemon at Sat Jun 27 13:14:53 IST 2026
[2026-06-27 13:14:53,379.379 INFO    ] ================================================
[2026-06-27 13:14:53,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:14:53
[2026-06-27 13:14:54,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:14:54,175.175 INFO    ] Initializing speech engine...
[2026-06-27 13:14:54,187.187 INFO    ] 2026-06-27 13:14:54
[2026-06-27 13:14:54,393.393 INFO    ] 2026-06-27 13:14:54
[2026-06-27 13:14:54,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:14:54,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:14:54,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:14:54,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:14:54,833.833 INFO    ] time= 27/06/2026 13:14:54
[2026-06-27 13:14:54,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:14:54,840.840 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:14:54,907.907 INFO    ] No existing commands found in stream
[2026-06-27 13:14:59,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:14:59,924.924 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-27 13:15:04,522.522 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 13:15:04,523.523 INFO    ] Checking for system updates...
[2026-06-27 13:15:04,545.545 INFO    ] 200
[2026-06-27 13:15:04,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:15:04,577.577 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:15:04,579.579 INFO    ] No update needed
[2026-06-27 13:15:04,580.580 INFO    ] Checking for camera pi updates...
[2026-06-27 13:15:04,606.606 INFO    ] 200
[2026-06-27 13:15:04,608.608 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:15:04,633.633 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:15:04,677.677 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:15:04,679.679 INFO    ] No camera update needed
[2026-06-27 13:15:04,680.680 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:15:04,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:15:04,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:15:04,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:15:06,728.728 INFO    ] ================================================
[2026-06-27 13:15:06,744.744 INFO    ] Launching Daemon at Sat Jun 27 13:15:06 IST 2026
[2026-06-27 13:15:06,754.754 INFO    ] ================================================
[2026-06-27 13:15:07,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:15:07
[2026-06-27 13:15:07,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:15:07,544.544 INFO    ] Initializing speech engine...
[2026-06-27 13:15:07,552.552 INFO    ] 2026-06-27 13:15:07
[2026-06-27 13:15:07,760.760 INFO    ] 2026-06-27 13:15:07
[2026-06-27 13:15:07,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:15:07,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:15:07,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:15:08,130.130 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:15:08,189.189 INFO    ] time= 27/06/2026 13:15:08
[2026-06-27 13:15:08,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:15:08,218.218 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:15:08,284.284 INFO    ] No existing commands found in stream
[2026-06-27 13:15:13,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:15:13,298.298 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-27 13:15:14,902.902 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 13:15:14,904.904 INFO    ] Checking for system updates...
[2026-06-27 13:15:14,926.926 INFO    ] 200
[2026-06-27 13:15:14,927.927 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:15:14,958.958 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:15:14,959.959 INFO    ] No update needed
[2026-06-27 13:15:14,961.961 INFO    ] Checking for camera pi updates...
[2026-06-27 13:15:14,981.981 INFO    ] 200
[2026-06-27 13:15:14,982.982 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:15:15,007.007 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:15:15,045.045 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:15:15,047.047 INFO    ] No camera update needed
[2026-06-27 13:15:15,048.048 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:15:15,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:15:15,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:15:15,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:15:17,089.089 INFO    ] ================================================
[2026-06-27 13:15:17,098.098 INFO    ] Launching Daemon at Sat Jun 27 13:15:17 IST 2026
[2026-06-27 13:15:17,105.105 INFO    ] ================================================
[2026-06-27 13:15:17,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:15:17
[2026-06-27 13:15:17,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:15:17,900.900 INFO    ] Initializing speech engine...
[2026-06-27 13:15:17,911.911 INFO    ] 2026-06-27 13:15:17
[2026-06-27 13:15:18,128.128 INFO    ] 2026-06-27 13:15:18
[2026-06-27 13:15:18,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:15:18,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:15:18,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:15:18,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:15:18,545.545 INFO    ] time= 27/06/2026 13:15:18
[2026-06-27 13:15:18,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:15:18,575.575 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:15:18,642.642 INFO    ] No existing commands found in stream
[2026-06-27 13:15:23,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:15:23,659.659 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-27 13:15:24,635.635 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:15:24,636.636 INFO    ] Checking for system updates...
[2026-06-27 13:15:24,659.659 INFO    ] 200
[2026-06-27 13:15:24,660.660 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:15:24,695.695 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:15:24,696.696 INFO    ] No update needed
[2026-06-27 13:15:24,698.698 INFO    ] Checking for camera pi updates...
[2026-06-27 13:15:24,717.717 INFO    ] 200
[2026-06-27 13:15:24,719.719 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:15:24,742.742 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:15:24,764.764 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:15:24,765.765 INFO    ] No camera update needed
[2026-06-27 13:15:24,766.766 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:15:24,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:15:24,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:15:24,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:15:26,814.814 INFO    ] ================================================
[2026-06-27 13:15:26,829.829 INFO    ] Launching Daemon at Sat Jun 27 13:15:26 IST 2026
[2026-06-27 13:15:26,840.840 INFO    ] ================================================
[2026-06-27 13:15:27,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:15:27
[2026-06-27 13:15:27,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:15:27,638.638 INFO    ] Initializing speech engine...
[2026-06-27 13:15:27,645.645 INFO    ] 2026-06-27 13:15:27
[2026-06-27 13:15:27,857.857 INFO    ] 2026-06-27 13:15:27
[2026-06-27 13:15:27,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:15:28,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:15:28,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:15:28,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:15:28,272.272 INFO    ] time= 27/06/2026 13:15:28
[2026-06-27 13:15:28,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:15:28,304.304 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:15:28,371.371 INFO    ] No existing commands found in stream
[2026-06-27 13:15:33,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:15:33,383.383 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-27 13:15:37,182.182 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:15:37,183.183 INFO    ] Checking for system updates...
[2026-06-27 13:15:37,204.204 INFO    ] 200
[2026-06-27 13:15:37,206.206 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:15:37,236.236 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:15:37,237.237 INFO    ] No update needed
[2026-06-27 13:15:37,239.239 INFO    ] Checking for camera pi updates...
[2026-06-27 13:15:37,261.261 INFO    ] 200
[2026-06-27 13:15:37,262.262 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:15:37,288.288 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:15:37,326.326 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:15:37,327.327 INFO    ] No camera update needed
[2026-06-27 13:15:37,329.329 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:15:37,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:15:37,333.333 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:15:37,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:15:39,376.376 INFO    ] ================================================
[2026-06-27 13:15:39,391.391 INFO    ] Launching Daemon at Sat Jun 27 13:15:39 IST 2026
[2026-06-27 13:15:39,402.402 INFO    ] ================================================
[2026-06-27 13:15:39,800.800 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:15:39
[2026-06-27 13:15:40,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:15:40,300.300 INFO    ] Initializing speech engine...
[2026-06-27 13:15:40,306.306 INFO    ] 2026-06-27 13:15:40
[2026-06-27 13:15:40,518.518 INFO    ] 2026-06-27 13:15:40
[2026-06-27 13:15:40,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:15:40,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:15:40,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:15:40,879.879 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:15:40,947.947 INFO    ] time= 27/06/2026 13:15:40
[2026-06-27 13:15:40,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:15:40,979.979 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:15:41,048.048 INFO    ] No existing commands found in stream
[2026-06-27 13:15:46,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:15:46,066.066 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-27 13:15:48,989.989 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 13:15:48,990.990 INFO    ] Checking for system updates...
[2026-06-27 13:15:49,012.012 INFO    ] 200
[2026-06-27 13:15:49,014.014 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:15:49,046.046 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:15:49,047.047 INFO    ] No update needed
[2026-06-27 13:15:49,049.049 INFO    ] Checking for camera pi updates...
[2026-06-27 13:15:49,068.068 INFO    ] 200
[2026-06-27 13:15:49,070.070 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:15:49,094.094 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:15:49,131.131 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:15:49,133.133 INFO    ] No camera update needed
[2026-06-27 13:15:49,135.135 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:15:49,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:15:49,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:15:49,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:15:51,182.182 INFO    ] ================================================
[2026-06-27 13:15:51,197.197 INFO    ] Launching Daemon at Sat Jun 27 13:15:51 IST 2026
[2026-06-27 13:15:51,208.208 INFO    ] ================================================
[2026-06-27 13:15:51,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:15:51
[2026-06-27 13:15:51,927.927 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:15:52,067.067 INFO    ] Initializing speech engine...
[2026-06-27 13:15:52,075.075 INFO    ] 2026-06-27 13:15:52
[2026-06-27 13:15:52,291.291 INFO    ] 2026-06-27 13:15:52
[2026-06-27 13:15:52,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:15:52,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:15:52,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:15:52,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:15:52,710.710 INFO    ] time= 27/06/2026 13:15:52
[2026-06-27 13:15:52,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:15:52,738.738 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:15:52,806.806 INFO    ] No existing commands found in stream
[2026-06-27 13:15:57,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:15:57,818.818 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-27 13:16:00,000.000 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 13:16:00,002.002 INFO    ] Checking for system updates...
[2026-06-27 13:16:00,025.025 INFO    ] 200
[2026-06-27 13:16:00,027.027 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:16:00,057.057 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:16:00,059.059 INFO    ] No update needed
[2026-06-27 13:16:00,060.060 INFO    ] Checking for camera pi updates...
[2026-06-27 13:16:00,080.080 INFO    ] 200
[2026-06-27 13:16:00,081.081 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:16:00,104.104 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:16:00,250.250 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:16:00,252.252 INFO    ] No camera update needed
[2026-06-27 13:16:00,253.253 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:16:00,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:16:00,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:16:00,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:16:02,296.296 INFO    ] ================================================
[2026-06-27 13:16:02,307.307 INFO    ] Launching Daemon at Sat Jun 27 13:16:02 IST 2026
[2026-06-27 13:16:02,316.316 INFO    ] ================================================
[2026-06-27 13:16:02,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:16:02
[2026-06-27 13:16:03,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:16:03,152.152 INFO    ] Initializing speech engine...
[2026-06-27 13:16:03,161.161 INFO    ] 2026-06-27 13:16:03
[2026-06-27 13:16:03,386.386 INFO    ] 2026-06-27 13:16:03
[2026-06-27 13:16:03,416.416 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:16:03,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:16:03,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:16:03,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:16:03,809.809 INFO    ] time= 27/06/2026 13:16:03
[2026-06-27 13:16:03,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:16:03,866.866 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:16:03,941.941 INFO    ] No existing commands found in stream
[2026-06-27 13:16:08,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:16:08,955.955 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-27 13:16:12,170.170 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:16:12,171.171 INFO    ] Checking for system updates...
[2026-06-27 13:16:12,192.192 INFO    ] 200
[2026-06-27 13:16:12,193.193 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:16:12,226.226 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:16:12,227.227 INFO    ] No update needed
[2026-06-27 13:16:12,229.229 INFO    ] Checking for camera pi updates...
[2026-06-27 13:16:12,249.249 INFO    ] 200
[2026-06-27 13:16:12,250.250 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:16:12,274.274 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:16:12,312.312 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:16:12,314.314 INFO    ] No camera update needed
[2026-06-27 13:16:12,315.315 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:16:12,317.317 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:16:12,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:16:12,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:16:14,363.363 INFO    ] ================================================
[2026-06-27 13:16:14,379.379 INFO    ] Launching Daemon at Sat Jun 27 13:16:14 IST 2026
[2026-06-27 13:16:14,389.389 INFO    ] ================================================
[2026-06-27 13:16:14,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:16:14
[2026-06-27 13:16:15,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:16:15,185.185 INFO    ] Initializing speech engine...
[2026-06-27 13:16:15,190.190 INFO    ] 2026-06-27 13:16:15
[2026-06-27 13:16:15,398.398 INFO    ] 2026-06-27 13:16:15
[2026-06-27 13:16:15,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:16:15,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:16:15,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:16:15,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:16:15,815.815 INFO    ] time= 27/06/2026 13:16:15
[2026-06-27 13:16:15,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:16:15,864.864 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:16:15,931.931 INFO    ] No existing commands found in stream
[2026-06-27 13:16:20,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:16:20,943.943 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-27 13:16:24,456.456 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 13:16:24,459.459 INFO    ] Checking for system updates...
[2026-06-27 13:16:24,495.495 INFO    ] 200
[2026-06-27 13:16:24,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:16:24,551.551 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:16:24,553.553 INFO    ] No update needed
[2026-06-27 13:16:24,556.556 INFO    ] Checking for camera pi updates...
[2026-06-27 13:16:24,589.589 INFO    ] 200
[2026-06-27 13:16:24,592.592 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:16:24,623.623 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:16:24,669.669 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:16:24,670.670 INFO    ] No camera update needed
[2026-06-27 13:16:24,671.671 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:16:24,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:16:24,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:16:24,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:16:26,718.718 INFO    ] ================================================
[2026-06-27 13:16:26,734.734 INFO    ] Launching Daemon at Sat Jun 27 13:16:26 IST 2026
[2026-06-27 13:16:26,744.744 INFO    ] ================================================
[2026-06-27 13:16:27,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:16:27
[2026-06-27 13:16:27,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:16:27,577.577 INFO    ] Initializing speech engine...
[2026-06-27 13:16:27,582.582 INFO    ] 2026-06-27 13:16:27
[2026-06-27 13:16:27,787.787 INFO    ] 2026-06-27 13:16:27
[2026-06-27 13:16:27,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:16:28,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:16:28,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:16:28,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:16:28,206.206 INFO    ] time= 27/06/2026 13:16:28
[2026-06-27 13:16:28,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:16:28,236.236 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:16:28,301.301 INFO    ] No existing commands found in stream
[2026-06-27 13:16:33,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:16:33,312.312 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-27 13:16:37,009.009 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 13:16:37,010.010 INFO    ] Checking for system updates...
[2026-06-27 13:16:37,031.031 INFO    ] 200
[2026-06-27 13:16:37,032.032 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:16:37,065.065 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:16:37,067.067 INFO    ] No update needed
[2026-06-27 13:16:37,068.068 INFO    ] Checking for camera pi updates...
[2026-06-27 13:16:37,089.089 INFO    ] 200
[2026-06-27 13:16:37,090.090 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:16:37,114.114 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:16:37,157.157 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:16:37,158.158 INFO    ] No camera update needed
[2026-06-27 13:16:37,159.159 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:16:37,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:16:37,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:16:37,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:16:39,206.206 INFO    ] ================================================
[2026-06-27 13:16:39,221.221 INFO    ] Launching Daemon at Sat Jun 27 13:16:39 IST 2026
[2026-06-27 13:16:39,232.232 INFO    ] ================================================
[2026-06-27 13:16:39,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:16:39
[2026-06-27 13:16:39,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:16:40,009.009 INFO    ] Initializing speech engine...
[2026-06-27 13:16:40,013.013 INFO    ] 2026-06-27 13:16:40
[2026-06-27 13:16:40,224.224 INFO    ] 2026-06-27 13:16:40
[2026-06-27 13:16:40,252.252 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:16:40,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:16:40,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:16:40,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:16:40,652.652 INFO    ] time= 27/06/2026 13:16:40
[2026-06-27 13:16:40,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:16:40,728.728 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:16:40,805.805 INFO    ] No existing commands found in stream
[2026-06-27 13:16:45,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:16:45,817.817 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-27 13:16:48,960.960 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 13:16:48,967.967 INFO    ] Checking for system updates...
[2026-06-27 13:16:48,996.996 INFO    ] 200
[2026-06-27 13:16:48,997.997 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:16:49,032.032 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:16:49,033.033 INFO    ] No update needed
[2026-06-27 13:16:49,035.035 INFO    ] Checking for camera pi updates...
[2026-06-27 13:16:49,057.057 INFO    ] 200
[2026-06-27 13:16:49,059.059 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:16:49,091.091 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:16:49,129.129 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:16:49,131.131 INFO    ] No camera update needed
[2026-06-27 13:16:49,132.132 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:16:49,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:16:49,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:16:49,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:16:51,179.179 INFO    ] ================================================
[2026-06-27 13:16:51,188.188 INFO    ] Launching Daemon at Sat Jun 27 13:16:51 IST 2026
[2026-06-27 13:16:51,204.204 INFO    ] ================================================
[2026-06-27 13:16:51,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:16:51
[2026-06-27 13:16:51,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:16:52,023.023 INFO    ] Initializing speech engine...
[2026-06-27 13:16:52,028.028 INFO    ] 2026-06-27 13:16:52
[2026-06-27 13:16:52,231.231 INFO    ] 2026-06-27 13:16:52
[2026-06-27 13:16:52,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:16:52,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:16:52,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:16:52,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:16:52,669.669 INFO    ] time= 27/06/2026 13:16:52
[2026-06-27 13:16:52,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:16:52,707.707 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:16:52,774.774 INFO    ] No existing commands found in stream
[2026-06-27 13:16:57,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:16:57,785.785 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-27 13:17:00,087.087 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 13:17:00,088.088 INFO    ] Checking for system updates...
[2026-06-27 13:17:00,111.111 INFO    ] 200
[2026-06-27 13:17:00,112.112 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:17:00,143.143 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:17:00,145.145 INFO    ] No update needed
[2026-06-27 13:17:00,147.147 INFO    ] Checking for camera pi updates...
[2026-06-27 13:17:00,166.166 INFO    ] 200
[2026-06-27 13:17:00,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:17:00,191.191 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:17:00,239.239 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:17:00,240.240 INFO    ] No camera update needed
[2026-06-27 13:17:00,242.242 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:17:00,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:17:00,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:17:00,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:17:02,283.283 INFO    ] ================================================
[2026-06-27 13:17:02,292.292 INFO    ] Launching Daemon at Sat Jun 27 13:17:02 IST 2026
[2026-06-27 13:17:02,298.298 INFO    ] ================================================
[2026-06-27 13:17:02,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:17:02
[2026-06-27 13:17:02,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:17:03,116.116 INFO    ] Initializing speech engine...
[2026-06-27 13:17:03,125.125 INFO    ] 2026-06-27 13:17:03
[2026-06-27 13:17:03,337.337 INFO    ] 2026-06-27 13:17:03
[2026-06-27 13:17:03,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:17:03,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:17:03,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:17:03,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:17:03,768.768 INFO    ] time= 27/06/2026 13:17:03
[2026-06-27 13:17:03,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:17:03,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:17:03,866.866 INFO    ] No existing commands found in stream
[2026-06-27 13:17:08,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:17:08,894.894 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-27 13:17:10,270.270 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 13:17:10,272.272 INFO    ] Checking for system updates...
[2026-06-27 13:17:10,294.294 INFO    ] 200
[2026-06-27 13:17:10,295.295 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:17:10,328.328 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:17:10,329.329 INFO    ] No update needed
[2026-06-27 13:17:10,331.331 INFO    ] Checking for camera pi updates...
[2026-06-27 13:17:10,354.354 INFO    ] 200
[2026-06-27 13:17:10,356.356 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:17:10,382.382 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:17:10,421.421 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:17:10,422.422 INFO    ] No camera update needed
[2026-06-27 13:17:10,424.424 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:17:10,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:17:10,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:17:10,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:17:12,472.472 INFO    ] ================================================
[2026-06-27 13:17:12,488.488 INFO    ] Launching Daemon at Sat Jun 27 13:17:12 IST 2026
[2026-06-27 13:17:12,500.500 INFO    ] ================================================
[2026-06-27 13:17:12,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:17:12
[2026-06-27 13:17:13,186.186 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:17:13,324.324 INFO    ] Initializing speech engine...
[2026-06-27 13:17:13,331.331 INFO    ] 2026-06-27 13:17:13
[2026-06-27 13:17:13,538.538 INFO    ] 2026-06-27 13:17:13
[2026-06-27 13:17:13,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:17:13,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:17:13,753.753 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:17:13,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:17:13,953.953 INFO    ] time= 27/06/2026 13:17:13
[2026-06-27 13:17:13,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:17:13,986.986 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:17:14,054.054 INFO    ] No existing commands found in stream
[2026-06-27 13:17:19,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:17:19,071.071 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-27 13:17:20,404.404 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 13:17:20,405.405 INFO    ] Checking for system updates...
[2026-06-27 13:17:20,427.427 INFO    ] 200
[2026-06-27 13:17:20,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:17:20,462.462 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:17:20,463.463 INFO    ] No update needed
[2026-06-27 13:17:20,465.465 INFO    ] Checking for camera pi updates...
[2026-06-27 13:17:20,487.487 INFO    ] 200
[2026-06-27 13:17:20,488.488 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:17:20,513.513 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:17:20,553.553 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:17:20,555.555 INFO    ] No camera update needed
[2026-06-27 13:17:20,556.556 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:17:20,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:17:20,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:17:20,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:17:22,604.604 INFO    ] ================================================
[2026-06-27 13:17:22,619.619 INFO    ] Launching Daemon at Sat Jun 27 13:17:22 IST 2026
[2026-06-27 13:17:22,631.631 INFO    ] ================================================
[2026-06-27 13:17:22,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:17:22
[2026-06-27 13:17:23,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:17:23,445.445 INFO    ] Initializing speech engine...
[2026-06-27 13:17:23,453.453 INFO    ] 2026-06-27 13:17:23
[2026-06-27 13:17:23,661.661 INFO    ] 2026-06-27 13:17:23
[2026-06-27 13:17:23,690.690 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:17:23,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:17:23,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:17:24,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:17:24,068.068 INFO    ] time= 27/06/2026 13:17:24
[2026-06-27 13:17:24,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:17:24,107.107 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:17:24,178.178 INFO    ] No existing commands found in stream
[2026-06-27 13:17:29,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:17:29,190.190 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-27 13:17:32,357.357 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 13:17:32,360.360 INFO    ] Checking for system updates...
[2026-06-27 13:17:32,398.398 INFO    ] 200
[2026-06-27 13:17:32,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:17:32,464.464 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:17:32,467.467 INFO    ] No update needed
[2026-06-27 13:17:32,471.471 INFO    ] Checking for camera pi updates...
[2026-06-27 13:17:32,505.505 INFO    ] 200
[2026-06-27 13:17:32,507.507 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:17:32,531.531 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:17:32,555.555 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:17:32,556.556 INFO    ] No camera update needed
[2026-06-27 13:17:32,558.558 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:17:32,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:17:32,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:17:32,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:17:34,606.606 INFO    ] ================================================
[2026-06-27 13:17:34,622.622 INFO    ] Launching Daemon at Sat Jun 27 13:17:34 IST 2026
[2026-06-27 13:17:34,632.632 INFO    ] ================================================
[2026-06-27 13:17:34,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:17:34
[2026-06-27 13:17:35,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:17:35,446.446 INFO    ] Initializing speech engine...
[2026-06-27 13:17:35,452.452 INFO    ] 2026-06-27 13:17:35
[2026-06-27 13:17:35,658.658 INFO    ] 2026-06-27 13:17:35
[2026-06-27 13:17:35,688.688 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:17:35,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:17:35,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:17:36,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:17:36,084.084 INFO    ] time= 27/06/2026 13:17:36
[2026-06-27 13:17:36,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:17:36,114.114 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:17:36,182.182 INFO    ] No existing commands found in stream
[2026-06-27 13:17:41,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:17:41,194.194 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-27 13:17:45,642.642 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 13:17:45,644.644 INFO    ] Checking for system updates...
[2026-06-27 13:17:45,665.665 INFO    ] 200
[2026-06-27 13:17:45,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:17:45,697.697 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:17:45,698.698 INFO    ] No update needed
[2026-06-27 13:17:45,699.699 INFO    ] Checking for camera pi updates...
[2026-06-27 13:17:45,719.719 INFO    ] 200
[2026-06-27 13:17:45,720.720 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:17:45,744.744 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:17:45,789.789 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:17:45,790.790 INFO    ] No camera update needed
[2026-06-27 13:17:45,791.791 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:17:45,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:17:45,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:17:45,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:17:47,836.836 INFO    ] ================================================
[2026-06-27 13:17:47,851.851 INFO    ] Launching Daemon at Sat Jun 27 13:17:47 IST 2026
[2026-06-27 13:17:47,863.863 INFO    ] ================================================
[2026-06-27 13:17:48,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:17:48
[2026-06-27 13:17:48,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:17:48,738.738 INFO    ] Initializing speech engine...
[2026-06-27 13:17:48,748.748 INFO    ] 2026-06-27 13:17:48
[2026-06-27 13:17:48,956.956 INFO    ] 2026-06-27 13:17:48
[2026-06-27 13:17:48,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:17:49,110.110 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:17:49,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:17:49,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:17:49,384.384 INFO    ] time= 27/06/2026 13:17:49
[2026-06-27 13:17:49,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:17:49,413.413 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:17:49,480.480 INFO    ] No existing commands found in stream
[2026-06-27 13:17:54,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:17:54,489.489 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-27 13:17:55,310.310 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 13:17:55,311.311 INFO    ] Checking for system updates...
[2026-06-27 13:17:55,334.334 INFO    ] 200
[2026-06-27 13:17:55,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:17:55,368.368 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:17:55,370.370 INFO    ] No update needed
[2026-06-27 13:17:55,371.371 INFO    ] Checking for camera pi updates...
[2026-06-27 13:17:55,390.390 INFO    ] 200
[2026-06-27 13:17:55,392.392 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:17:55,415.415 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:17:55,442.442 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:17:55,443.443 INFO    ] No camera update needed
[2026-06-27 13:17:55,445.445 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:17:55,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:17:55,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:17:55,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:17:57,492.492 INFO    ] ================================================
[2026-06-27 13:17:57,507.507 INFO    ] Launching Daemon at Sat Jun 27 13:17:57 IST 2026
[2026-06-27 13:17:57,518.518 INFO    ] ================================================
[2026-06-27 13:17:57,874.874 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:17:57
[2026-06-27 13:17:58,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:17:58,318.318 INFO    ] Initializing speech engine...
[2026-06-27 13:17:58,321.321 INFO    ] 2026-06-27 13:17:58
[2026-06-27 13:17:58,540.540 INFO    ] 2026-06-27 13:17:58
[2026-06-27 13:17:58,569.569 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:17:58,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:17:58,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:17:58,888.888 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:17:58,944.944 INFO    ] time= 27/06/2026 13:17:58
[2026-06-27 13:17:58,973.973 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:17:58,989.989 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:17:59,060.060 INFO    ] No existing commands found in stream
[2026-06-27 13:18:04,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:18:04,073.073 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-27 13:18:07,834.834 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 13:18:07,836.836 INFO    ] Checking for system updates...
[2026-06-27 13:18:07,858.858 INFO    ] 200
[2026-06-27 13:18:07,859.859 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:18:07,895.895 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:18:07,896.896 INFO    ] No update needed
[2026-06-27 13:18:07,897.897 INFO    ] Checking for camera pi updates...
[2026-06-27 13:18:07,917.917 INFO    ] 200
[2026-06-27 13:18:07,919.919 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:18:07,943.943 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:18:07,989.989 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:18:07,990.990 INFO    ] No camera update needed
[2026-06-27 13:18:07,992.992 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:18:07,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:18:07,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:18:07,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:18:10,037.037 INFO    ] ================================================
[2026-06-27 13:18:10,052.052 INFO    ] Launching Daemon at Sat Jun 27 13:18:10 IST 2026
[2026-06-27 13:18:10,064.064 INFO    ] ================================================
[2026-06-27 13:18:10,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:18:10
[2026-06-27 13:18:10,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:18:10,933.933 INFO    ] Initializing speech engine...
[2026-06-27 13:18:10,937.937 INFO    ] 2026-06-27 13:18:10
[2026-06-27 13:18:11,147.147 INFO    ] 2026-06-27 13:18:11
[2026-06-27 13:18:11,176.176 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:18:11,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:18:11,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:18:11,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:18:11,590.590 INFO    ] time= 27/06/2026 13:18:11
[2026-06-27 13:18:11,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:18:11,597.597 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:18:11,665.665 INFO    ] No existing commands found in stream
[2026-06-27 13:18:16,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:18:16,678.678 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-27 13:18:20,183.183 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:18:20,185.185 INFO    ] Checking for system updates...
[2026-06-27 13:18:20,206.206 INFO    ] 200
[2026-06-27 13:18:20,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:18:20,238.238 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:18:20,239.239 INFO    ] No update needed
[2026-06-27 13:18:20,240.240 INFO    ] Checking for camera pi updates...
[2026-06-27 13:18:20,261.261 INFO    ] 200
[2026-06-27 13:18:20,263.263 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:18:20,290.290 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:18:20,328.328 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:18:20,330.330 INFO    ] No camera update needed
[2026-06-27 13:18:20,331.331 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:18:20,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:18:20,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:18:20,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:18:22,382.382 INFO    ] ================================================
[2026-06-27 13:18:22,398.398 INFO    ] Launching Daemon at Sat Jun 27 13:18:22 IST 2026
[2026-06-27 13:18:22,409.409 INFO    ] ================================================
[2026-06-27 13:18:22,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:18:22
[2026-06-27 13:18:23,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:18:23,190.190 INFO    ] Initializing speech engine...
[2026-06-27 13:18:23,205.205 INFO    ] 2026-06-27 13:18:23
[2026-06-27 13:18:23,416.416 INFO    ] 2026-06-27 13:18:23
[2026-06-27 13:18:23,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:18:23,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:18:23,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:18:23,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:18:23,867.867 INFO    ] time= 27/06/2026 13:18:23
[2026-06-27 13:18:23,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:18:23,900.900 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:18:23,971.971 INFO    ] No existing commands found in stream
[2026-06-27 13:18:28,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:18:28,984.984 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-27 13:18:30,600.600 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:18:30,602.602 INFO    ] Checking for system updates...
[2026-06-27 13:18:30,623.623 INFO    ] 200
[2026-06-27 13:18:30,624.624 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:18:30,655.655 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:18:30,656.656 INFO    ] No update needed
[2026-06-27 13:18:30,657.657 INFO    ] Checking for camera pi updates...
[2026-06-27 13:18:30,677.677 INFO    ] 200
[2026-06-27 13:18:30,678.678 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:18:30,701.701 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:18:30,744.744 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:18:30,745.745 INFO    ] No camera update needed
[2026-06-27 13:18:30,746.746 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:18:30,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:18:30,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:18:30,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:18:32,786.786 INFO    ] ================================================
[2026-06-27 13:18:32,802.802 INFO    ] Launching Daemon at Sat Jun 27 13:18:32 IST 2026
[2026-06-27 13:18:32,813.813 INFO    ] ================================================
[2026-06-27 13:18:33,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:18:33
[2026-06-27 13:18:33,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:18:33,652.652 INFO    ] Initializing speech engine...
[2026-06-27 13:18:33,658.658 INFO    ] 2026-06-27 13:18:33
[2026-06-27 13:18:33,861.861 INFO    ] 2026-06-27 13:18:33
[2026-06-27 13:18:33,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:18:34,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:18:34,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:18:34,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:18:34,280.280 INFO    ] time= 27/06/2026 13:18:34
[2026-06-27 13:18:34,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:18:34,309.309 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:18:34,375.375 INFO    ] No existing commands found in stream
[2026-06-27 13:18:39,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:18:39,388.388 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-27 13:18:42,809.809 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 13:18:42,810.810 INFO    ] Checking for system updates...
[2026-06-27 13:18:42,831.831 INFO    ] 200
[2026-06-27 13:18:42,833.833 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:18:42,868.868 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:18:42,869.869 INFO    ] No update needed
[2026-06-27 13:18:42,871.871 INFO    ] Checking for camera pi updates...
[2026-06-27 13:18:42,890.890 INFO    ] 200
[2026-06-27 13:18:42,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:18:42,916.916 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:18:42,954.954 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:18:42,955.955 INFO    ] No camera update needed
[2026-06-27 13:18:42,956.956 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:18:42,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:18:42,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:18:42,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:18:45,001.001 INFO    ] ================================================
[2026-06-27 13:18:45,017.017 INFO    ] Launching Daemon at Sat Jun 27 13:18:45 IST 2026
[2026-06-27 13:18:45,028.028 INFO    ] ================================================
[2026-06-27 13:18:45,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:18:45
[2026-06-27 13:18:45,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:18:45,864.864 INFO    ] Initializing speech engine...
[2026-06-27 13:18:45,869.869 INFO    ] 2026-06-27 13:18:45
[2026-06-27 13:18:46,074.074 INFO    ] 2026-06-27 13:18:46
[2026-06-27 13:18:46,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:18:46,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:18:46,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:18:46,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:18:46,492.492 INFO    ] time= 27/06/2026 13:18:46
[2026-06-27 13:18:46,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:18:46,521.521 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:18:46,611.611 INFO    ] No existing commands found in stream
[2026-06-27 13:18:51,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:18:51,628.628 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-27 13:18:54,533.533 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 13:18:54,534.534 INFO    ] Checking for system updates...
[2026-06-27 13:18:54,555.555 INFO    ] 200
[2026-06-27 13:18:54,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:18:54,590.590 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:18:54,591.591 INFO    ] No update needed
[2026-06-27 13:18:54,593.593 INFO    ] Checking for camera pi updates...
[2026-06-27 13:18:54,614.614 INFO    ] 200
[2026-06-27 13:18:54,616.616 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:18:54,641.641 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:18:54,670.670 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:18:54,672.672 INFO    ] No camera update needed
[2026-06-27 13:18:54,673.673 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:18:54,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:18:54,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:18:54,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:18:56,720.720 INFO    ] ================================================
[2026-06-27 13:18:56,736.736 INFO    ] Launching Daemon at Sat Jun 27 13:18:56 IST 2026
[2026-06-27 13:18:56,747.747 INFO    ] ================================================
[2026-06-27 13:18:57,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:18:57
[2026-06-27 13:18:57,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:18:57,561.561 INFO    ] Initializing speech engine...
[2026-06-27 13:18:57,576.576 INFO    ] 2026-06-27 13:18:57
[2026-06-27 13:18:57,784.784 INFO    ] 2026-06-27 13:18:57
[2026-06-27 13:18:57,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:18:57,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:18:58,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:18:58,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:18:58,206.206 INFO    ] time= 27/06/2026 13:18:58
[2026-06-27 13:18:58,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:18:58,233.233 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:18:58,300.300 INFO    ] No existing commands found in stream
[2026-06-27 13:19:03,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:19:03,317.317 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-27 13:19:04,657.657 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 13:19:04,658.658 INFO    ] Checking for system updates...
[2026-06-27 13:19:04,679.679 INFO    ] 200
[2026-06-27 13:19:04,680.680 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:19:04,712.712 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:19:04,714.714 INFO    ] No update needed
[2026-06-27 13:19:04,716.716 INFO    ] Checking for camera pi updates...
[2026-06-27 13:19:04,738.738 INFO    ] 200
[2026-06-27 13:19:04,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:19:04,763.763 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:19:04,812.812 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:19:04,814.814 INFO    ] No camera update needed
[2026-06-27 13:19:04,815.815 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:19:04,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:19:04,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:19:04,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:19:06,863.863 INFO    ] ================================================
[2026-06-27 13:19:06,879.879 INFO    ] Launching Daemon at Sat Jun 27 13:19:06 IST 2026
[2026-06-27 13:19:06,890.890 INFO    ] ================================================
[2026-06-27 13:19:07,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:19:07
[2026-06-27 13:19:07,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:19:07,681.681 INFO    ] Initializing speech engine...
[2026-06-27 13:19:07,686.686 INFO    ] 2026-06-27 13:19:07
[2026-06-27 13:19:07,910.910 INFO    ] 2026-06-27 13:19:07
[2026-06-27 13:19:07,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:19:08,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:19:08,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:19:08,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:19:08,330.330 INFO    ] time= 27/06/2026 13:19:08
[2026-06-27 13:19:08,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:19:08,378.378 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:19:08,454.454 INFO    ] No existing commands found in stream
[2026-06-27 13:19:13,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:19:13,466.466 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-27 13:19:17,803.803 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:19:17,804.804 INFO    ] Checking for system updates...
[2026-06-27 13:19:17,826.826 INFO    ] 200
[2026-06-27 13:19:17,827.827 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:19:17,857.857 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:19:17,859.859 INFO    ] No update needed
[2026-06-27 13:19:17,860.860 INFO    ] Checking for camera pi updates...
[2026-06-27 13:19:17,879.879 INFO    ] 200
[2026-06-27 13:19:17,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:19:17,904.904 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:19:17,950.950 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:19:17,951.951 INFO    ] No camera update needed
[2026-06-27 13:19:17,952.952 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:19:17,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:19:17,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:19:17,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:19:20,998.998 INFO    ] ================================================
[2026-06-27 13:19:20,014.014 INFO    ] Launching Daemon at Sat Jun 27 13:19:20 IST 2026
[2026-06-27 13:19:20,026.026 INFO    ] ================================================
[2026-06-27 13:19:20,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:19:20
[2026-06-27 13:19:20,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:19:20,848.848 INFO    ] Initializing speech engine...
[2026-06-27 13:19:20,860.860 INFO    ] 2026-06-27 13:19:20
[2026-06-27 13:19:21,065.065 INFO    ] 2026-06-27 13:19:21
[2026-06-27 13:19:21,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:19:21,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:19:21,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:19:21,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:19:21,484.484 INFO    ] time= 27/06/2026 13:19:21
[2026-06-27 13:19:21,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:19:21,512.512 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:19:21,603.603 INFO    ] No existing commands found in stream
[2026-06-27 13:19:26,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:19:26,615.615 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-27 13:19:27,026.026 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 13:19:27,028.028 INFO    ] Checking for system updates...
[2026-06-27 13:19:27,048.048 INFO    ] 200
[2026-06-27 13:19:27,050.050 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:19:27,080.080 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:19:27,082.082 INFO    ] No update needed
[2026-06-27 13:19:27,083.083 INFO    ] Checking for camera pi updates...
[2026-06-27 13:19:27,105.105 INFO    ] 200
[2026-06-27 13:19:27,106.106 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:19:27,130.130 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:19:27,168.168 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:19:27,170.170 INFO    ] No camera update needed
[2026-06-27 13:19:27,171.171 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:19:27,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:19:27,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:19:27,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:19:29,219.219 INFO    ] ================================================
[2026-06-27 13:19:29,236.236 INFO    ] Launching Daemon at Sat Jun 27 13:19:29 IST 2026
[2026-06-27 13:19:29,247.247 INFO    ] ================================================
[2026-06-27 13:19:29,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:19:29
[2026-06-27 13:19:29,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:19:30,026.026 INFO    ] Initializing speech engine...
[2026-06-27 13:19:30,031.031 INFO    ] 2026-06-27 13:19:30
[2026-06-27 13:19:30,254.254 INFO    ] 2026-06-27 13:19:30
[2026-06-27 13:19:30,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:19:30,467.467 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:19:30,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:19:30,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:19:30,667.667 INFO    ] time= 27/06/2026 13:19:30
[2026-06-27 13:19:30,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:19:30,703.703 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:19:30,769.769 INFO    ] No existing commands found in stream
[2026-06-27 13:19:35,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:19:35,783.783 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-27 13:19:38,797.797 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 13:19:38,799.799 INFO    ] Checking for system updates...
[2026-06-27 13:19:38,825.825 INFO    ] 200
[2026-06-27 13:19:38,826.826 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:19:38,860.860 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:19:38,862.862 INFO    ] No update needed
[2026-06-27 13:19:38,864.864 INFO    ] Checking for camera pi updates...
[2026-06-27 13:19:38,886.886 INFO    ] 200
[2026-06-27 13:19:38,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:19:38,916.916 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:19:38,957.957 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:19:38,959.959 INFO    ] No camera update needed
[2026-06-27 13:19:38,960.960 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:19:38,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:19:38,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:19:38,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:19:41,008.008 INFO    ] ================================================
[2026-06-27 13:19:41,023.023 INFO    ] Launching Daemon at Sat Jun 27 13:19:41 IST 2026
[2026-06-27 13:19:41,034.034 INFO    ] ================================================
[2026-06-27 13:19:41,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:19:41
[2026-06-27 13:19:41,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:19:41,859.859 INFO    ] Initializing speech engine...
[2026-06-27 13:19:41,870.870 INFO    ] 2026-06-27 13:19:41
[2026-06-27 13:19:42,076.076 INFO    ] 2026-06-27 13:19:42
[2026-06-27 13:19:42,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:19:42,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:19:42,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:19:42,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:19:42,498.498 INFO    ] time= 27/06/2026 13:19:42
[2026-06-27 13:19:42,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:19:42,525.525 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:19:42,592.592 INFO    ] No existing commands found in stream
[2026-06-27 13:19:47,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:19:47,605.605 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-27 13:19:50,254.254 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 13:19:50,255.255 INFO    ] Checking for system updates...
[2026-06-27 13:19:50,276.276 INFO    ] 200
[2026-06-27 13:19:50,278.278 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:19:50,308.308 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:19:50,309.309 INFO    ] No update needed
[2026-06-27 13:19:50,310.310 INFO    ] Checking for camera pi updates...
[2026-06-27 13:19:50,332.332 INFO    ] 200
[2026-06-27 13:19:50,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:19:50,357.357 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:19:50,393.393 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:19:50,395.395 INFO    ] No camera update needed
[2026-06-27 13:19:50,396.396 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:19:50,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:19:50,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:19:50,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:19:52,442.442 INFO    ] ================================================
[2026-06-27 13:19:52,458.458 INFO    ] Launching Daemon at Sat Jun 27 13:19:52 IST 2026
[2026-06-27 13:19:52,469.469 INFO    ] ================================================
[2026-06-27 13:19:52,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:19:52
[2026-06-27 13:19:53,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:19:53,299.299 INFO    ] Initializing speech engine...
[2026-06-27 13:19:53,309.309 INFO    ] 2026-06-27 13:19:53
[2026-06-27 13:19:53,515.515 INFO    ] 2026-06-27 13:19:53
[2026-06-27 13:19:53,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:19:53,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:19:53,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:19:53,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:19:53,929.929 INFO    ] time= 27/06/2026 13:19:53
[2026-06-27 13:19:53,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:19:53,962.962 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:19:54,028.028 INFO    ] No existing commands found in stream
[2026-06-27 13:19:59,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:19:59,040.040 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-27 13:20:01,160.160 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 13:20:01,161.161 INFO    ] Checking for system updates...
[2026-06-27 13:20:01,184.184 INFO    ] 200
[2026-06-27 13:20:01,186.186 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:20:01,216.216 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:20:01,218.218 INFO    ] No update needed
[2026-06-27 13:20:01,219.219 INFO    ] Checking for camera pi updates...
[2026-06-27 13:20:01,238.238 INFO    ] 200
[2026-06-27 13:20:01,240.240 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:20:01,263.263 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:20:01,335.335 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:20:01,337.337 INFO    ] No camera update needed
[2026-06-27 13:20:01,338.338 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:20:01,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:20:01,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:20:01,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:20:03,380.380 INFO    ] ================================================
[2026-06-27 13:20:03,395.395 INFO    ] Launching Daemon at Sat Jun 27 13:20:03 IST 2026
[2026-06-27 13:20:03,406.406 INFO    ] ================================================
[2026-06-27 13:20:03,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:20:03
[2026-06-27 13:20:04,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:20:04,209.209 INFO    ] Initializing speech engine...
[2026-06-27 13:20:04,219.219 INFO    ] 2026-06-27 13:20:04
[2026-06-27 13:20:04,422.422 INFO    ] 2026-06-27 13:20:04
[2026-06-27 13:20:04,451.451 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:20:04,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:20:04,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:20:04,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:20:04,839.839 INFO    ] time= 27/06/2026 13:20:04
[2026-06-27 13:20:04,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:20:04,890.890 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:20:04,967.967 INFO    ] No existing commands found in stream
[2026-06-27 13:20:09,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:20:09,981.981 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-27 13:20:13,266.266 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:20:13,267.267 INFO    ] Checking for system updates...
[2026-06-27 13:20:13,288.288 INFO    ] 200
[2026-06-27 13:20:13,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:20:13,320.320 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:20:13,321.321 INFO    ] No update needed
[2026-06-27 13:20:13,323.323 INFO    ] Checking for camera pi updates...
[2026-06-27 13:20:13,344.344 INFO    ] 200
[2026-06-27 13:20:13,346.346 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:20:13,370.370 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:20:13,510.510 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:20:13,511.511 INFO    ] No camera update needed
[2026-06-27 13:20:13,512.512 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:20:13,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:20:13,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:20:13,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:20:15,560.560 INFO    ] ================================================
[2026-06-27 13:20:15,575.575 INFO    ] Launching Daemon at Sat Jun 27 13:20:15 IST 2026
[2026-06-27 13:20:15,586.586 INFO    ] ================================================
[2026-06-27 13:20:15,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:20:15
[2026-06-27 13:20:16,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:20:16,391.391 INFO    ] Initializing speech engine...
[2026-06-27 13:20:16,395.395 INFO    ] 2026-06-27 13:20:16
[2026-06-27 13:20:16,604.604 INFO    ] 2026-06-27 13:20:16
[2026-06-27 13:20:16,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:20:16,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:20:16,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:20:17,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:20:17,078.078 INFO    ] time= 27/06/2026 13:20:17
[2026-06-27 13:20:17,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:20:17,105.105 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:20:17,180.180 INFO    ] No existing commands found in stream
[2026-06-27 13:20:22,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:20:22,194.194 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-27 13:20:26,132.132 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 13:20:26,135.135 INFO    ] Checking for system updates...
[2026-06-27 13:20:26,171.171 INFO    ] 200
[2026-06-27 13:20:26,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:20:26,238.238 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:20:26,240.240 INFO    ] No update needed
[2026-06-27 13:20:26,242.242 INFO    ] Checking for camera pi updates...
[2026-06-27 13:20:26,262.262 INFO    ] 200
[2026-06-27 13:20:26,264.264 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:20:26,292.292 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:20:26,337.337 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:20:26,338.338 INFO    ] No camera update needed
[2026-06-27 13:20:26,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:20:26,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:20:26,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:20:26,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:20:28,385.385 INFO    ] ================================================
[2026-06-27 13:20:28,400.400 INFO    ] Launching Daemon at Sat Jun 27 13:20:28 IST 2026
[2026-06-27 13:20:28,411.411 INFO    ] ================================================
[2026-06-27 13:20:28,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:20:28
[2026-06-27 13:20:29,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:20:29,212.212 INFO    ] Initializing speech engine...
[2026-06-27 13:20:29,217.217 INFO    ] 2026-06-27 13:20:29
[2026-06-27 13:20:29,435.435 INFO    ] 2026-06-27 13:20:29
[2026-06-27 13:20:29,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:20:29,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:20:29,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:20:29,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:20:29,857.857 INFO    ] time= 27/06/2026 13:20:29
[2026-06-27 13:20:29,880.880 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:20:29,886.886 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:20:29,953.953 INFO    ] No existing commands found in stream
[2026-06-27 13:20:34,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:20:34,966.966 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-27 13:20:37,762.762 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 13:20:37,763.763 INFO    ] Checking for system updates...
[2026-06-27 13:20:37,785.785 INFO    ] 200
[2026-06-27 13:20:37,786.786 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:20:37,817.817 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:20:37,818.818 INFO    ] No update needed
[2026-06-27 13:20:37,820.820 INFO    ] Checking for camera pi updates...
[2026-06-27 13:20:37,842.842 INFO    ] 200
[2026-06-27 13:20:37,843.843 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:20:37,867.867 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:20:37,908.908 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:20:37,909.909 INFO    ] No camera update needed
[2026-06-27 13:20:37,910.910 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:20:37,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:20:37,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:20:37,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:20:39,959.959 INFO    ] ================================================
[2026-06-27 13:20:39,974.974 INFO    ] Launching Daemon at Sat Jun 27 13:20:39 IST 2026
[2026-06-27 13:20:39,984.984 INFO    ] ================================================
[2026-06-27 13:20:40,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:20:40
[2026-06-27 13:20:40,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:20:40,854.854 INFO    ] Initializing speech engine...
[2026-06-27 13:20:40,858.858 INFO    ] 2026-06-27 13:20:40
[2026-06-27 13:20:41,067.067 INFO    ] 2026-06-27 13:20:41
[2026-06-27 13:20:41,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:20:41,284.284 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:20:41,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:20:41,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:20:41,491.491 INFO    ] time= 27/06/2026 13:20:41
[2026-06-27 13:20:41,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:20:41,520.520 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:20:41,587.587 INFO    ] No existing commands found in stream
[2026-06-27 13:20:46,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:20:46,602.602 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-27 13:20:47,693.693 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 13:20:47,695.695 INFO    ] Checking for system updates...
[2026-06-27 13:20:47,716.716 INFO    ] 200
[2026-06-27 13:20:47,717.717 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:20:47,748.748 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:20:47,749.749 INFO    ] No update needed
[2026-06-27 13:20:47,750.750 INFO    ] Checking for camera pi updates...
[2026-06-27 13:20:47,772.772 INFO    ] 200
[2026-06-27 13:20:47,773.773 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:20:47,797.797 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:20:47,835.835 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:20:47,836.836 INFO    ] No camera update needed
[2026-06-27 13:20:47,838.838 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:20:47,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:20:47,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:20:47,845.845 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:20:49,882.882 INFO    ] ================================================
[2026-06-27 13:20:49,897.897 INFO    ] Launching Daemon at Sat Jun 27 13:20:49 IST 2026
[2026-06-27 13:20:49,908.908 INFO    ] ================================================
[2026-06-27 13:20:50,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:20:50
[2026-06-27 13:20:50,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:20:50,722.722 INFO    ] Initializing speech engine...
[2026-06-27 13:20:50,725.725 INFO    ] 2026-06-27 13:20:50
[2026-06-27 13:20:50,930.930 INFO    ] 2026-06-27 13:20:50
[2026-06-27 13:20:50,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:20:51,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:20:51,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:20:51,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:20:51,397.397 INFO    ] time= 27/06/2026 13:20:51
[2026-06-27 13:20:51,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:20:51,444.444 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:20:51,520.520 INFO    ] No existing commands found in stream
[2026-06-27 13:20:56,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:20:56,529.529 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-27 13:21:00,043.043 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 13:21:00,045.045 INFO    ] Checking for system updates...
[2026-06-27 13:21:00,068.068 INFO    ] 200
[2026-06-27 13:21:00,069.069 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:21:00,100.100 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:21:00,101.101 INFO    ] No update needed
[2026-06-27 13:21:00,102.102 INFO    ] Checking for camera pi updates...
[2026-06-27 13:21:00,122.122 INFO    ] 200
[2026-06-27 13:21:00,123.123 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:21:00,147.147 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:21:00,196.196 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:21:00,197.197 INFO    ] No camera update needed
[2026-06-27 13:21:00,198.198 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:21:00,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:21:00,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:21:00,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:21:02,246.246 INFO    ] ================================================
[2026-06-27 13:21:02,256.256 INFO    ] Launching Daemon at Sat Jun 27 13:21:02 IST 2026
[2026-06-27 13:21:02,263.263 INFO    ] ================================================
[2026-06-27 13:21:02,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:21:02
[2026-06-27 13:21:02,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:21:03,030.030 INFO    ] Initializing speech engine...
[2026-06-27 13:21:03,035.035 INFO    ] 2026-06-27 13:21:03
[2026-06-27 13:21:03,263.263 INFO    ] 2026-06-27 13:21:03
[2026-06-27 13:21:03,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:21:03,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:21:03,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:21:03,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:21:03,705.705 INFO    ] time= 27/06/2026 13:21:03
[2026-06-27 13:21:03,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:21:03,744.744 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:21:03,816.816 INFO    ] No existing commands found in stream
[2026-06-27 13:21:08,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:21:08,828.828 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-27 13:21:11,541.541 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 13:21:11,543.543 INFO    ] Checking for system updates...
[2026-06-27 13:21:11,566.566 INFO    ] 200
[2026-06-27 13:21:11,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:21:11,600.600 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:21:11,601.601 INFO    ] No update needed
[2026-06-27 13:21:11,603.603 INFO    ] Checking for camera pi updates...
[2026-06-27 13:21:11,624.624 INFO    ] 200
[2026-06-27 13:21:11,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:21:11,650.650 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:21:11,673.673 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:21:11,675.675 INFO    ] No camera update needed
[2026-06-27 13:21:11,676.676 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:21:11,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:21:11,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:21:11,683.683 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:21:13,722.722 INFO    ] ================================================
[2026-06-27 13:21:13,737.737 INFO    ] Launching Daemon at Sat Jun 27 13:21:13 IST 2026
[2026-06-27 13:21:13,748.748 INFO    ] ================================================
[2026-06-27 13:21:14,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:21:14
[2026-06-27 13:21:14,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:21:14,568.568 INFO    ] Initializing speech engine...
[2026-06-27 13:21:14,573.573 INFO    ] 2026-06-27 13:21:14
[2026-06-27 13:21:14,778.778 INFO    ] 2026-06-27 13:21:14
[2026-06-27 13:21:14,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:21:14,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:21:14,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:21:15,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:21:15,196.196 INFO    ] time= 27/06/2026 13:21:15
[2026-06-27 13:21:15,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:21:15,226.226 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:21:15,292.292 INFO    ] No existing commands found in stream
[2026-06-27 13:21:20,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:21:20,306.306 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-27 13:21:22,436.436 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:21:22,437.437 INFO    ] Checking for system updates...
[2026-06-27 13:21:22,457.457 INFO    ] 200
[2026-06-27 13:21:22,459.459 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:21:22,491.491 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:21:22,492.492 INFO    ] No update needed
[2026-06-27 13:21:22,494.494 INFO    ] Checking for camera pi updates...
[2026-06-27 13:21:22,515.515 INFO    ] 200
[2026-06-27 13:21:22,516.516 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:21:22,540.540 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:21:22,587.587 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:21:22,588.588 INFO    ] No camera update needed
[2026-06-27 13:21:22,590.590 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:21:22,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:21:22,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:21:22,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:21:24,638.638 INFO    ] ================================================
[2026-06-27 13:21:24,655.655 INFO    ] Launching Daemon at Sat Jun 27 13:21:24 IST 2026
[2026-06-27 13:21:24,665.665 INFO    ] ================================================
[2026-06-27 13:21:24,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:21:24
[2026-06-27 13:21:25,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:21:25,455.455 INFO    ] Initializing speech engine...
[2026-06-27 13:21:25,465.465 INFO    ] 2026-06-27 13:21:25
[2026-06-27 13:21:25,669.669 INFO    ] 2026-06-27 13:21:25
[2026-06-27 13:21:25,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:21:25,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:21:25,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:21:26,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:21:26,084.084 INFO    ] time= 27/06/2026 13:21:26
[2026-06-27 13:21:26,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:21:26,114.114 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:21:26,179.179 INFO    ] No existing commands found in stream
[2026-06-27 13:21:31,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:21:31,193.193 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-27 13:21:33,444.444 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 13:21:33,445.445 INFO    ] Checking for system updates...
[2026-06-27 13:21:33,466.466 INFO    ] 200
[2026-06-27 13:21:33,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:21:33,498.498 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:21:33,499.499 INFO    ] No update needed
[2026-06-27 13:21:33,500.500 INFO    ] Checking for camera pi updates...
[2026-06-27 13:21:33,521.521 INFO    ] 200
[2026-06-27 13:21:33,522.522 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:21:33,545.545 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:21:33,583.583 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:21:33,584.584 INFO    ] No camera update needed
[2026-06-27 13:21:33,585.585 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:21:33,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:21:33,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:21:33,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:21:35,631.631 INFO    ] ================================================
[2026-06-27 13:21:35,647.647 INFO    ] Launching Daemon at Sat Jun 27 13:21:35 IST 2026
[2026-06-27 13:21:35,658.658 INFO    ] ================================================
[2026-06-27 13:21:36,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:21:36
[2026-06-27 13:21:36,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:21:36,457.457 INFO    ] Initializing speech engine...
[2026-06-27 13:21:36,465.465 INFO    ] 2026-06-27 13:21:36
[2026-06-27 13:21:36,678.678 INFO    ] 2026-06-27 13:21:36
[2026-06-27 13:21:36,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:21:36,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:21:36,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:21:37,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:21:37,099.099 INFO    ] time= 27/06/2026 13:21:37
[2026-06-27 13:21:37,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:21:37,126.126 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:21:37,194.194 INFO    ] No existing commands found in stream
[2026-06-27 13:21:42,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:21:42,221.221 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-27 13:21:45,830.830 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:21:45,831.831 INFO    ] Checking for system updates...
[2026-06-27 13:21:45,852.852 INFO    ] 200
[2026-06-27 13:21:45,853.853 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:21:45,886.886 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:21:45,887.887 INFO    ] No update needed
[2026-06-27 13:21:45,889.889 INFO    ] Checking for camera pi updates...
[2026-06-27 13:21:45,908.908 INFO    ] 200
[2026-06-27 13:21:45,910.910 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:21:45,934.934 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:21:45,977.977 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:21:45,978.978 INFO    ] No camera update needed
[2026-06-27 13:21:45,980.980 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:21:45,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:21:45,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:21:45,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:21:48,029.029 INFO    ] ================================================
[2026-06-27 13:21:48,044.044 INFO    ] Launching Daemon at Sat Jun 27 13:21:48 IST 2026
[2026-06-27 13:21:48,055.055 INFO    ] ================================================
[2026-06-27 13:21:48,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:21:48
[2026-06-27 13:21:48,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:21:48,882.882 INFO    ] Initializing speech engine...
[2026-06-27 13:21:48,887.887 INFO    ] 2026-06-27 13:21:48
[2026-06-27 13:21:49,091.091 INFO    ] 2026-06-27 13:21:49
[2026-06-27 13:21:49,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:21:49,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:21:49,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:21:49,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:21:49,532.532 INFO    ] time= 27/06/2026 13:21:49
[2026-06-27 13:21:49,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:21:49,540.540 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:21:49,607.607 INFO    ] No existing commands found in stream
[2026-06-27 13:21:54,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:21:54,619.619 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-27 13:21:57,611.611 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:21:57,612.612 INFO    ] Checking for system updates...
[2026-06-27 13:21:57,633.633 INFO    ] 200
[2026-06-27 13:21:57,635.635 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:21:57,666.666 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:21:57,667.667 INFO    ] No update needed
[2026-06-27 13:21:57,669.669 INFO    ] Checking for camera pi updates...
[2026-06-27 13:21:57,690.690 INFO    ] 200
[2026-06-27 13:21:57,692.692 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:21:57,730.730 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:21:57,771.771 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:21:57,773.773 INFO    ] No camera update needed
[2026-06-27 13:21:57,775.775 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:21:57,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:21:57,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:21:57,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:21:59,816.816 INFO    ] ================================================
[2026-06-27 13:21:59,832.832 INFO    ] Launching Daemon at Sat Jun 27 13:21:59 IST 2026
[2026-06-27 13:21:59,843.843 INFO    ] ================================================
[2026-06-27 13:22:00,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:22:00
[2026-06-27 13:22:00,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:22:00,701.701 INFO    ] Initializing speech engine...
[2026-06-27 13:22:00,706.706 INFO    ] 2026-06-27 13:22:00
[2026-06-27 13:22:00,916.916 INFO    ] 2026-06-27 13:22:00
[2026-06-27 13:22:00,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:22:01,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:22:01,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:22:01,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:22:01,343.343 INFO    ] time= 27/06/2026 13:22:01
[2026-06-27 13:22:01,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:22:01,404.404 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:22:01,533.533 INFO    ] No existing commands found in stream
[2026-06-27 13:22:06,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:22:06,546.546 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-27 13:22:09,567.567 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:22:09,569.569 INFO    ] Checking for system updates...
[2026-06-27 13:22:09,589.589 INFO    ] 200
[2026-06-27 13:22:09,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:22:09,625.625 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:22:09,626.626 INFO    ] No update needed
[2026-06-27 13:22:09,628.628 INFO    ] Checking for camera pi updates...
[2026-06-27 13:22:09,647.647 INFO    ] 200
[2026-06-27 13:22:09,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:22:09,672.672 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:22:09,713.713 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:22:09,715.715 INFO    ] No camera update needed
[2026-06-27 13:22:09,716.716 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:22:09,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:22:09,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:22:09,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:22:11,762.762 INFO    ] ================================================
[2026-06-27 13:22:11,778.778 INFO    ] Launching Daemon at Sat Jun 27 13:22:11 IST 2026
[2026-06-27 13:22:11,790.790 INFO    ] ================================================
[2026-06-27 13:22:12,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:22:12
[2026-06-27 13:22:12,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:22:12,608.608 INFO    ] Initializing speech engine...
[2026-06-27 13:22:12,618.618 INFO    ] 2026-06-27 13:22:12
[2026-06-27 13:22:12,823.823 INFO    ] 2026-06-27 13:22:12
[2026-06-27 13:22:12,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:22:13,035.035 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:22:13,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:22:13,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:22:13,241.241 INFO    ] time= 27/06/2026 13:22:13
[2026-06-27 13:22:13,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:22:13,270.270 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:22:13,338.338 INFO    ] No existing commands found in stream
[2026-06-27 13:22:18,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:22:18,350.350 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-27 13:22:22,137.137 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 13:22:22,139.139 INFO    ] Checking for system updates...
[2026-06-27 13:22:22,170.170 INFO    ] 200
[2026-06-27 13:22:22,172.172 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:22:22,204.204 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:22:22,205.205 INFO    ] No update needed
[2026-06-27 13:22:22,206.206 INFO    ] Checking for camera pi updates...
[2026-06-27 13:22:22,227.227 INFO    ] 200
[2026-06-27 13:22:22,228.228 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:22:22,254.254 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:22:22,394.394 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:22:22,395.395 INFO    ] No camera update needed
[2026-06-27 13:22:22,396.396 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:22:22,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:22:22,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:22:22,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:22:24,442.442 INFO    ] ================================================
[2026-06-27 13:22:24,457.457 INFO    ] Launching Daemon at Sat Jun 27 13:22:24 IST 2026
[2026-06-27 13:22:24,469.469 INFO    ] ================================================
[2026-06-27 13:22:24,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:22:24
[2026-06-27 13:22:25,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:22:25,252.252 INFO    ] Initializing speech engine...
[2026-06-27 13:22:25,263.263 INFO    ] 2026-06-27 13:22:25
[2026-06-27 13:22:25,479.479 INFO    ] 2026-06-27 13:22:25
[2026-06-27 13:22:25,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:22:25,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:22:25,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:22:25,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:22:25,920.920 INFO    ] time= 27/06/2026 13:22:25
[2026-06-27 13:22:25,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:22:25,953.953 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:22:26,053.053 INFO    ] No existing commands found in stream
[2026-06-27 13:22:31,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:22:31,061.061 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-27 13:22:34,544.544 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 13:22:34,545.545 INFO    ] Checking for system updates...
[2026-06-27 13:22:34,566.566 INFO    ] 200
[2026-06-27 13:22:34,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:22:34,599.599 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:22:34,600.600 INFO    ] No update needed
[2026-06-27 13:22:34,602.602 INFO    ] Checking for camera pi updates...
[2026-06-27 13:22:34,624.624 INFO    ] 200
[2026-06-27 13:22:34,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:22:34,650.650 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:22:34,689.689 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:22:34,690.690 INFO    ] No camera update needed
[2026-06-27 13:22:34,691.691 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:22:34,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:22:34,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:22:34,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:22:36,738.738 INFO    ] ================================================
[2026-06-27 13:22:36,753.753 INFO    ] Launching Daemon at Sat Jun 27 13:22:36 IST 2026
[2026-06-27 13:22:36,764.764 INFO    ] ================================================
[2026-06-27 13:22:37,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:22:37
[2026-06-27 13:22:37,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:22:37,574.574 INFO    ] Initializing speech engine...
[2026-06-27 13:22:37,579.579 INFO    ] 2026-06-27 13:22:37
[2026-06-27 13:22:37,785.785 INFO    ] 2026-06-27 13:22:37
[2026-06-27 13:22:37,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:22:38,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:22:38,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:22:38,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:22:38,209.209 INFO    ] time= 27/06/2026 13:22:38
[2026-06-27 13:22:38,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:22:38,239.239 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:22:38,307.307 INFO    ] No existing commands found in stream
[2026-06-27 13:22:43,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:22:43,319.319 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-27 13:22:45,298.298 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 13:22:45,300.300 INFO    ] Checking for system updates...
[2026-06-27 13:22:45,322.322 INFO    ] 200
[2026-06-27 13:22:45,323.323 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:22:45,356.356 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:22:45,357.357 INFO    ] No update needed
[2026-06-27 13:22:45,359.359 INFO    ] Checking for camera pi updates...
[2026-06-27 13:22:45,381.381 INFO    ] 200
[2026-06-27 13:22:45,383.383 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:22:45,408.408 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:22:45,448.448 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:22:45,450.450 INFO    ] No camera update needed
[2026-06-27 13:22:45,451.451 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:22:45,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:22:45,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:22:45,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:22:47,499.499 INFO    ] ================================================
[2026-06-27 13:22:47,515.515 INFO    ] Launching Daemon at Sat Jun 27 13:22:47 IST 2026
[2026-06-27 13:22:47,526.526 INFO    ] ================================================
[2026-06-27 13:22:47,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:22:47
[2026-06-27 13:22:48,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:22:48,356.356 INFO    ] Initializing speech engine...
[2026-06-27 13:22:48,361.361 INFO    ] 2026-06-27 13:22:48
[2026-06-27 13:22:48,576.576 INFO    ] 2026-06-27 13:22:48
[2026-06-27 13:22:48,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:22:48,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:22:48,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:22:48,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:22:49,016.016 INFO    ] time= 27/06/2026 13:22:48
[2026-06-27 13:22:49,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:22:49,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:22:49,094.094 INFO    ] No existing commands found in stream
[2026-06-27 13:22:54,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:22:54,106.106 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-27 13:22:56,503.503 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:22:56,505.505 INFO    ] Checking for system updates...
[2026-06-27 13:22:56,527.527 INFO    ] 200
[2026-06-27 13:22:56,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:22:56,560.560 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:22:56,562.562 INFO    ] No update needed
[2026-06-27 13:22:56,563.563 INFO    ] Checking for camera pi updates...
[2026-06-27 13:22:56,587.587 INFO    ] 200
[2026-06-27 13:22:56,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:22:56,619.619 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:22:56,654.654 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:22:56,656.656 INFO    ] No camera update needed
[2026-06-27 13:22:56,657.657 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:22:56,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:22:56,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:22:56,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:22:58,703.703 INFO    ] ================================================
[2026-06-27 13:22:58,719.719 INFO    ] Launching Daemon at Sat Jun 27 13:22:58 IST 2026
[2026-06-27 13:22:58,730.730 INFO    ] ================================================
[2026-06-27 13:22:59,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:22:59
[2026-06-27 13:22:59,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:22:59,519.519 INFO    ] Initializing speech engine...
[2026-06-27 13:22:59,529.529 INFO    ] 2026-06-27 13:22:59
[2026-06-27 13:22:59,736.736 INFO    ] 2026-06-27 13:22:59
[2026-06-27 13:22:59,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:22:59,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:22:59,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:23:00,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:23:00,157.157 INFO    ] time= 27/06/2026 13:23:00
[2026-06-27 13:23:00,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:23:00,187.187 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:23:00,255.255 INFO    ] No existing commands found in stream
[2026-06-27 13:23:05,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:23:05,267.267 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-27 13:23:07,981.981 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 13:23:07,983.983 INFO    ] Checking for system updates...
[2026-06-27 13:23:08,005.005 INFO    ] 200
[2026-06-27 13:23:08,006.006 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:23:08,037.037 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:23:08,038.038 INFO    ] No update needed
[2026-06-27 13:23:08,039.039 INFO    ] Checking for camera pi updates...
[2026-06-27 13:23:08,060.060 INFO    ] 200
[2026-06-27 13:23:08,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:23:08,085.085 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:23:08,118.118 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:23:08,119.119 INFO    ] No camera update needed
[2026-06-27 13:23:08,120.120 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:23:08,121.121 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:23:08,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:23:08,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:23:10,165.165 INFO    ] ================================================
[2026-06-27 13:23:10,181.181 INFO    ] Launching Daemon at Sat Jun 27 13:23:10 IST 2026
[2026-06-27 13:23:10,192.192 INFO    ] ================================================
[2026-06-27 13:23:10,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:23:10
[2026-06-27 13:23:10,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:23:11,016.016 INFO    ] Initializing speech engine...
[2026-06-27 13:23:11,021.021 INFO    ] 2026-06-27 13:23:11
[2026-06-27 13:23:11,226.226 INFO    ] 2026-06-27 13:23:11
[2026-06-27 13:23:11,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:23:11,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:23:11,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:23:11,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:23:11,639.639 INFO    ] time= 27/06/2026 13:23:11
[2026-06-27 13:23:11,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:23:11,673.673 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:23:11,740.740 INFO    ] No existing commands found in stream
[2026-06-27 13:23:16,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:23:16,751.751 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-27 13:23:20,864.864 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 13:23:20,865.865 INFO    ] Checking for system updates...
[2026-06-27 13:23:20,887.887 INFO    ] 200
[2026-06-27 13:23:20,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:23:20,919.919 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:23:20,920.920 INFO    ] No update needed
[2026-06-27 13:23:20,921.921 INFO    ] Checking for camera pi updates...
[2026-06-27 13:23:20,942.942 INFO    ] 200
[2026-06-27 13:23:20,944.944 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:23:20,969.969 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:23:21,008.008 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:23:21,010.010 INFO    ] No camera update needed
[2026-06-27 13:23:21,011.011 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:23:21,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:23:21,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:23:21,018.018 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:23:23,059.059 INFO    ] ================================================
[2026-06-27 13:23:23,075.075 INFO    ] Launching Daemon at Sat Jun 27 13:23:23 IST 2026
[2026-06-27 13:23:23,086.086 INFO    ] ================================================
[2026-06-27 13:23:23,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:23:23
[2026-06-27 13:23:23,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:23:23,882.882 INFO    ] Initializing speech engine...
[2026-06-27 13:23:23,888.888 INFO    ] 2026-06-27 13:23:23
[2026-06-27 13:23:24,088.088 INFO    ] 2026-06-27 13:23:24
[2026-06-27 13:23:24,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:23:24,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:23:24,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:23:24,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:23:24,505.505 INFO    ] time= 27/06/2026 13:23:24
[2026-06-27 13:23:24,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:23:24,539.539 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:23:24,606.606 INFO    ] No existing commands found in stream
[2026-06-27 13:23:29,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:23:29,618.618 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-27 13:23:33,333.333 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 13:23:33,334.334 INFO    ] Checking for system updates...
[2026-06-27 13:23:33,355.355 INFO    ] 200
[2026-06-27 13:23:33,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:23:33,387.387 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:23:33,388.388 INFO    ] No update needed
[2026-06-27 13:23:33,390.390 INFO    ] Checking for camera pi updates...
[2026-06-27 13:23:33,412.412 INFO    ] 200
[2026-06-27 13:23:33,413.413 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:23:33,448.448 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:23:33,475.475 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:23:33,478.478 INFO    ] No camera update needed
[2026-06-27 13:23:33,481.481 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:23:33,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:23:33,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:23:33,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:23:35,537.537 INFO    ] ================================================
[2026-06-27 13:23:35,555.555 INFO    ] Launching Daemon at Sat Jun 27 13:23:35 IST 2026
[2026-06-27 13:23:35,567.567 INFO    ] ================================================
[2026-06-27 13:23:35,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:23:35
[2026-06-27 13:23:36,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:23:36,376.376 INFO    ] Initializing speech engine...
[2026-06-27 13:23:36,380.380 INFO    ] 2026-06-27 13:23:36
[2026-06-27 13:23:36,596.596 INFO    ] 2026-06-27 13:23:36
[2026-06-27 13:23:36,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:23:36,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:23:36,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:23:36,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:23:37,015.015 INFO    ] time= 27/06/2026 13:23:36
[2026-06-27 13:23:37,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:23:37,044.044 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:23:37,110.110 INFO    ] No existing commands found in stream
[2026-06-27 13:23:42,119.119 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:23:42,121.121 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-27 13:23:44,645.645 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:23:44,646.646 INFO    ] Checking for system updates...
[2026-06-27 13:23:44,667.667 INFO    ] 200
[2026-06-27 13:23:44,669.669 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:23:44,702.702 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:23:44,703.703 INFO    ] No update needed
[2026-06-27 13:23:44,705.705 INFO    ] Checking for camera pi updates...
[2026-06-27 13:23:44,724.724 INFO    ] 200
[2026-06-27 13:23:44,725.725 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:23:44,750.750 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:23:44,791.791 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:23:44,792.792 INFO    ] No camera update needed
[2026-06-27 13:23:44,794.794 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:23:44,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:23:44,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:23:44,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:23:46,840.840 INFO    ] ================================================
[2026-06-27 13:23:46,856.856 INFO    ] Launching Daemon at Sat Jun 27 13:23:46 IST 2026
[2026-06-27 13:23:46,867.867 INFO    ] ================================================
[2026-06-27 13:23:47,194.194 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:23:47
[2026-06-27 13:23:47,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:23:47,658.658 INFO    ] Initializing speech engine...
[2026-06-27 13:23:47,666.666 INFO    ] 2026-06-27 13:23:47
[2026-06-27 13:23:47,884.884 INFO    ] 2026-06-27 13:23:47
[2026-06-27 13:23:47,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:23:48,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:23:48,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:23:48,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:23:48,315.315 INFO    ] time= 27/06/2026 13:23:48
[2026-06-27 13:23:48,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:23:48,342.342 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:23:48,409.409 INFO    ] No existing commands found in stream
[2026-06-27 13:23:53,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:23:53,423.423 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-27 13:23:57,665.665 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 13:23:57,666.666 INFO    ] Checking for system updates...
[2026-06-27 13:23:57,689.689 INFO    ] 200
[2026-06-27 13:23:57,690.690 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:23:57,723.723 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:23:57,724.724 INFO    ] No update needed
[2026-06-27 13:23:57,726.726 INFO    ] Checking for camera pi updates...
[2026-06-27 13:23:57,745.745 INFO    ] 200
[2026-06-27 13:23:57,747.747 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:23:57,770.770 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:23:57,807.807 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:23:57,808.808 INFO    ] No camera update needed
[2026-06-27 13:23:57,809.809 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:23:57,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:23:57,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:23:57,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:23:59,856.856 INFO    ] ================================================
[2026-06-27 13:23:59,872.872 INFO    ] Launching Daemon at Sat Jun 27 13:23:59 IST 2026
[2026-06-27 13:23:59,883.883 INFO    ] ================================================
[2026-06-27 13:24:00,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:24:00
[2026-06-27 13:24:00,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:24:00,664.664 INFO    ] Initializing speech engine...
[2026-06-27 13:24:00,669.669 INFO    ] 2026-06-27 13:24:00
[2026-06-27 13:24:00,889.889 INFO    ] 2026-06-27 13:24:00
[2026-06-27 13:24:00,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:24:01,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:24:01,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:24:01,241.241 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:24:01,309.309 INFO    ] time= 27/06/2026 13:24:01
[2026-06-27 13:24:01,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:24:01,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:24:01,415.415 INFO    ] No existing commands found in stream
[2026-06-27 13:24:06,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:24:06,429.429 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-27 13:24:07,405.405 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:24:07,407.407 INFO    ] Checking for system updates...
[2026-06-27 13:24:07,427.427 INFO    ] 200
[2026-06-27 13:24:07,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:24:07,464.464 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:24:07,465.465 INFO    ] No update needed
[2026-06-27 13:24:07,467.467 INFO    ] Checking for camera pi updates...
[2026-06-27 13:24:07,486.486 INFO    ] 200
[2026-06-27 13:24:07,487.487 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:24:07,512.512 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:24:07,553.553 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:24:07,554.554 INFO    ] No camera update needed
[2026-06-27 13:24:07,556.556 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:24:07,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:24:07,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:24:07,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:24:09,604.604 INFO    ] ================================================
[2026-06-27 13:24:09,620.620 INFO    ] Launching Daemon at Sat Jun 27 13:24:09 IST 2026
[2026-06-27 13:24:09,631.631 INFO    ] ================================================
[2026-06-27 13:24:09,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:24:09
[2026-06-27 13:24:10,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:24:10,424.424 INFO    ] Initializing speech engine...
[2026-06-27 13:24:10,429.429 INFO    ] 2026-06-27 13:24:10
[2026-06-27 13:24:10,636.636 INFO    ] 2026-06-27 13:24:10
[2026-06-27 13:24:10,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:24:10,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:24:10,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:24:11,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:24:11,061.061 INFO    ] time= 27/06/2026 13:24:11
[2026-06-27 13:24:11,083.083 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:24:11,090.090 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:24:11,156.156 INFO    ] No existing commands found in stream
[2026-06-27 13:24:16,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:24:16,169.169 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-27 13:24:19,817.817 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:24:19,818.818 INFO    ] Checking for system updates...
[2026-06-27 13:24:19,839.839 INFO    ] 200
[2026-06-27 13:24:19,840.840 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:24:19,873.873 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:24:19,875.875 INFO    ] No update needed
[2026-06-27 13:24:19,876.876 INFO    ] Checking for camera pi updates...
[2026-06-27 13:24:19,896.896 INFO    ] 200
[2026-06-27 13:24:19,898.898 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:24:19,922.922 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:24:19,966.966 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:24:19,968.968 INFO    ] No camera update needed
[2026-06-27 13:24:19,969.969 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:24:19,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:24:19,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:24:19,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:24:22,015.015 INFO    ] ================================================
[2026-06-27 13:24:22,030.030 INFO    ] Launching Daemon at Sat Jun 27 13:24:22 IST 2026
[2026-06-27 13:24:22,042.042 INFO    ] ================================================
[2026-06-27 13:24:22,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:24:22
[2026-06-27 13:24:22,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:24:22,852.852 INFO    ] Initializing speech engine...
[2026-06-27 13:24:22,862.862 INFO    ] 2026-06-27 13:24:22
[2026-06-27 13:24:23,077.077 INFO    ] 2026-06-27 13:24:23
[2026-06-27 13:24:23,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:24:23,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:24:23,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:24:23,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:24:23,439.439 INFO    ] time= 27/06/2026 13:24:23
[2026-06-27 13:24:23,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:24:23,534.534 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:24:23,647.647 INFO    ] No existing commands found in stream
[2026-06-27 13:24:28,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:24:28,660.660 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-27 13:24:30,644.644 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 13:24:30,646.646 INFO    ] Checking for system updates...
[2026-06-27 13:24:30,669.669 INFO    ] 200
[2026-06-27 13:24:30,670.670 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:24:30,703.703 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:24:30,705.705 INFO    ] No update needed
[2026-06-27 13:24:30,706.706 INFO    ] Checking for camera pi updates...
[2026-06-27 13:24:30,727.727 INFO    ] 200
[2026-06-27 13:24:30,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:24:30,754.754 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:24:30,895.895 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:24:30,896.896 INFO    ] No camera update needed
[2026-06-27 13:24:30,897.897 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:24:30,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:24:30,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:24:30,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:24:32,942.942 INFO    ] ================================================
[2026-06-27 13:24:32,958.958 INFO    ] Launching Daemon at Sat Jun 27 13:24:32 IST 2026
[2026-06-27 13:24:32,970.970 INFO    ] ================================================
[2026-06-27 13:24:33,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:24:33
[2026-06-27 13:24:33,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:24:33,764.764 INFO    ] Initializing speech engine...
[2026-06-27 13:24:33,778.778 INFO    ] 2026-06-27 13:24:33
[2026-06-27 13:24:33,984.984 INFO    ] 2026-06-27 13:24:33
[2026-06-27 13:24:34,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:24:34,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:24:34,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:24:34,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:24:34,408.408 INFO    ] time= 27/06/2026 13:24:34
[2026-06-27 13:24:34,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:24:34,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:24:34,495.495 INFO    ] No existing commands found in stream
[2026-06-27 13:24:39,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:24:39,508.508 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-27 13:24:43,540.540 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 13:24:43,541.541 INFO    ] Checking for system updates...
[2026-06-27 13:24:43,564.564 INFO    ] 200
[2026-06-27 13:24:43,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:24:43,596.596 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:24:43,597.597 INFO    ] No update needed
[2026-06-27 13:24:43,598.598 INFO    ] Checking for camera pi updates...
[2026-06-27 13:24:43,619.619 INFO    ] 200
[2026-06-27 13:24:43,620.620 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:24:43,644.644 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:24:43,683.683 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:24:43,685.685 INFO    ] No camera update needed
[2026-06-27 13:24:43,686.686 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:24:43,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:24:43,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:24:43,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:24:45,733.733 INFO    ] ================================================
[2026-06-27 13:24:45,749.749 INFO    ] Launching Daemon at Sat Jun 27 13:24:45 IST 2026
[2026-06-27 13:24:45,761.761 INFO    ] ================================================
[2026-06-27 13:24:46,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:24:46
[2026-06-27 13:24:46,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:24:46,541.541 INFO    ] Initializing speech engine...
[2026-06-27 13:24:46,545.545 INFO    ] 2026-06-27 13:24:46
[2026-06-27 13:24:46,737.737 INFO    ] 2026-06-27 13:24:46
[2026-06-27 13:24:46,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:24:46,972.972 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:24:47,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:24:47,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:24:47,152.152 INFO    ] time= 27/06/2026 13:24:47
[2026-06-27 13:24:47,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:24:47,232.232 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:24:47,325.325 INFO    ] No existing commands found in stream
[2026-06-27 13:24:52,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:24:52,338.338 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-27 13:24:54,402.402 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:24:54,404.404 INFO    ] Checking for system updates...
[2026-06-27 13:24:54,427.427 INFO    ] 200
[2026-06-27 13:24:54,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:24:54,464.464 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:24:54,465.465 INFO    ] No update needed
[2026-06-27 13:24:54,467.467 INFO    ] Checking for camera pi updates...
[2026-06-27 13:24:54,488.488 INFO    ] 200
[2026-06-27 13:24:54,490.490 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:24:54,517.517 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:24:54,548.548 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:24:54,550.550 INFO    ] No camera update needed
[2026-06-27 13:24:54,551.551 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:24:54,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:24:54,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:24:54,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:24:56,598.598 INFO    ] ================================================
[2026-06-27 13:24:56,614.614 INFO    ] Launching Daemon at Sat Jun 27 13:24:56 IST 2026
[2026-06-27 13:24:56,625.625 INFO    ] ================================================
[2026-06-27 13:24:56,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:24:56
[2026-06-27 13:24:57,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:24:57,429.429 INFO    ] Initializing speech engine...
[2026-06-27 13:24:57,433.433 INFO    ] 2026-06-27 13:24:57
[2026-06-27 13:24:57,652.652 INFO    ] 2026-06-27 13:24:57
[2026-06-27 13:24:57,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:24:57,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:24:57,878.878 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:24:58,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:24:58,096.096 INFO    ] time= 27/06/2026 13:24:58
[2026-06-27 13:24:58,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:24:58,107.107 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:24:58,176.176 INFO    ] No existing commands found in stream
[2026-06-27 13:25:03,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:25:03,187.187 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-27 13:25:07,545.545 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 13:25:07,546.546 INFO    ] Checking for system updates...
[2026-06-27 13:25:07,568.568 INFO    ] 200
[2026-06-27 13:25:07,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:25:07,602.602 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:25:07,604.604 INFO    ] No update needed
[2026-06-27 13:25:07,605.605 INFO    ] Checking for camera pi updates...
[2026-06-27 13:25:07,627.627 INFO    ] 200
[2026-06-27 13:25:07,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:25:07,655.655 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:25:07,694.694 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:25:07,695.695 INFO    ] No camera update needed
[2026-06-27 13:25:07,696.696 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:25:07,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:25:07,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:25:07,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:25:09,744.744 INFO    ] ================================================
[2026-06-27 13:25:09,760.760 INFO    ] Launching Daemon at Sat Jun 27 13:25:09 IST 2026
[2026-06-27 13:25:09,771.771 INFO    ] ================================================
[2026-06-27 13:25:10,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:25:10
[2026-06-27 13:25:10,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:25:10,646.646 INFO    ] Initializing speech engine...
[2026-06-27 13:25:10,651.651 INFO    ] 2026-06-27 13:25:10
[2026-06-27 13:25:10,856.856 INFO    ] 2026-06-27 13:25:10
[2026-06-27 13:25:10,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:25:11,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:25:11,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:25:11,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:25:11,302.302 INFO    ] time= 27/06/2026 13:25:11
[2026-06-27 13:25:11,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:25:11,310.310 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:25:11,377.377 INFO    ] No existing commands found in stream
[2026-06-27 13:25:16,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:25:16,390.390 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-27 13:25:18,528.528 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 13:25:18,529.529 INFO    ] Checking for system updates...
[2026-06-27 13:25:18,551.551 INFO    ] 200
[2026-06-27 13:25:18,553.553 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:25:18,585.585 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:25:18,586.586 INFO    ] No update needed
[2026-06-27 13:25:18,588.588 INFO    ] Checking for camera pi updates...
[2026-06-27 13:25:18,608.608 INFO    ] 200
[2026-06-27 13:25:18,610.610 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:25:18,634.634 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:25:18,668.668 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:25:18,670.670 INFO    ] No camera update needed
[2026-06-27 13:25:18,671.671 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:25:18,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:25:18,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:25:18,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:25:20,717.717 INFO    ] ================================================
[2026-06-27 13:25:20,734.734 INFO    ] Launching Daemon at Sat Jun 27 13:25:20 IST 2026
[2026-06-27 13:25:20,745.745 INFO    ] ================================================
[2026-06-27 13:25:21,075.075 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:25:21
[2026-06-27 13:25:21,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:25:21,538.538 INFO    ] Initializing speech engine...
[2026-06-27 13:25:21,543.543 INFO    ] 2026-06-27 13:25:21
[2026-06-27 13:25:21,748.748 INFO    ] 2026-06-27 13:25:21
[2026-06-27 13:25:21,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:25:21,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:25:21,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:25:22,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:25:22,170.170 INFO    ] time= 27/06/2026 13:25:22
[2026-06-27 13:25:22,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:25:22,197.197 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:25:22,263.263 INFO    ] No existing commands found in stream
[2026-06-27 13:25:27,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:25:27,277.277 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-27 13:25:31,405.405 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 13:25:31,407.407 INFO    ] Checking for system updates...
[2026-06-27 13:25:31,430.430 INFO    ] 200
[2026-06-27 13:25:31,432.432 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:25:31,477.477 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:25:31,478.478 INFO    ] No update needed
[2026-06-27 13:25:31,480.480 INFO    ] Checking for camera pi updates...
[2026-06-27 13:25:31,514.514 INFO    ] 200
[2026-06-27 13:25:31,516.516 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:25:31,541.541 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:25:31,582.582 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:25:31,583.583 INFO    ] No camera update needed
[2026-06-27 13:25:31,585.585 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:25:31,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:25:31,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:25:31,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:25:33,624.624 INFO    ] ================================================
[2026-06-27 13:25:33,641.641 INFO    ] Launching Daemon at Sat Jun 27 13:25:33 IST 2026
[2026-06-27 13:25:33,652.652 INFO    ] ================================================
[2026-06-27 13:25:33,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:25:33
[2026-06-27 13:25:34,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:25:34,454.454 INFO    ] Initializing speech engine...
[2026-06-27 13:25:34,466.466 INFO    ] 2026-06-27 13:25:34
[2026-06-27 13:25:34,675.675 INFO    ] 2026-06-27 13:25:34
[2026-06-27 13:25:34,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:25:34,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:25:34,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:25:35,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:25:35,094.094 INFO    ] time= 27/06/2026 13:25:35
[2026-06-27 13:25:35,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:25:35,124.124 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:25:35,191.191 INFO    ] No existing commands found in stream
[2026-06-27 13:25:40,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:25:40,203.203 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-27 13:25:41,650.650 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 13:25:41,651.651 INFO    ] Checking for system updates...
[2026-06-27 13:25:41,674.674 INFO    ] 200
[2026-06-27 13:25:41,675.675 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:25:41,708.708 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:25:41,709.709 INFO    ] No update needed
[2026-06-27 13:25:41,711.711 INFO    ] Checking for camera pi updates...
[2026-06-27 13:25:41,731.731 INFO    ] 200
[2026-06-27 13:25:41,733.733 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:25:41,756.756 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:25:41,792.792 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:25:41,794.794 INFO    ] No camera update needed
[2026-06-27 13:25:41,795.795 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:25:41,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:25:41,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:25:41,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:25:43,840.840 INFO    ] ================================================
[2026-06-27 13:25:43,856.856 INFO    ] Launching Daemon at Sat Jun 27 13:25:43 IST 2026
[2026-06-27 13:25:43,869.869 INFO    ] ================================================
[2026-06-27 13:25:44,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:25:44
[2026-06-27 13:25:44,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:25:44,677.677 INFO    ] Initializing speech engine...
[2026-06-27 13:25:44,682.682 INFO    ] 2026-06-27 13:25:44
[2026-06-27 13:25:44,886.886 INFO    ] 2026-06-27 13:25:44
[2026-06-27 13:25:44,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:25:45,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:25:45,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:25:45,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:25:45,325.325 INFO    ] time= 27/06/2026 13:25:45
[2026-06-27 13:25:45,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:25:45,332.332 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:25:45,401.401 INFO    ] No existing commands found in stream
[2026-06-27 13:25:50,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:25:50,422.422 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-27 13:25:53,444.444 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 13:25:53,446.446 INFO    ] Checking for system updates...
[2026-06-27 13:25:53,466.466 INFO    ] 200
[2026-06-27 13:25:53,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:25:53,499.499 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:25:53,500.500 INFO    ] No update needed
[2026-06-27 13:25:53,502.502 INFO    ] Checking for camera pi updates...
[2026-06-27 13:25:53,521.521 INFO    ] 200
[2026-06-27 13:25:53,522.522 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:25:53,547.547 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:25:53,585.585 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:25:53,586.586 INFO    ] No camera update needed
[2026-06-27 13:25:53,587.587 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:25:53,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:25:53,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:25:53,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:25:55,634.634 INFO    ] ================================================
[2026-06-27 13:25:55,649.649 INFO    ] Launching Daemon at Sat Jun 27 13:25:55 IST 2026
[2026-06-27 13:25:55,661.661 INFO    ] ================================================
[2026-06-27 13:25:56,011.011 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:25:56
[2026-06-27 13:25:56,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:25:56,468.468 INFO    ] Initializing speech engine...
[2026-06-27 13:25:56,478.478 INFO    ] 2026-06-27 13:25:56
[2026-06-27 13:25:56,683.683 INFO    ] 2026-06-27 13:25:56
[2026-06-27 13:25:56,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:25:56,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:25:56,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:25:57,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:25:57,108.108 INFO    ] time= 27/06/2026 13:25:57
[2026-06-27 13:25:57,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:25:57,137.137 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:25:57,204.204 INFO    ] No existing commands found in stream
[2026-06-27 13:26:02,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:26:02,213.213 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-27 13:26:04,924.924 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 13:26:04,926.926 INFO    ] Checking for system updates...
[2026-06-27 13:26:04,947.947 INFO    ] 200
[2026-06-27 13:26:04,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:26:04,981.981 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:26:04,982.982 INFO    ] No update needed
[2026-06-27 13:26:04,984.984 INFO    ] Checking for camera pi updates...
[2026-06-27 13:26:05,004.004 INFO    ] 200
[2026-06-27 13:26:05,006.006 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:26:05,030.030 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:26:05,079.079 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:26:05,080.080 INFO    ] No camera update needed
[2026-06-27 13:26:05,082.082 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:26:05,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:26:05,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:26:05,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:26:07,132.132 INFO    ] ================================================
[2026-06-27 13:26:07,148.148 INFO    ] Launching Daemon at Sat Jun 27 13:26:07 IST 2026
[2026-06-27 13:26:07,159.159 INFO    ] ================================================
[2026-06-27 13:26:07,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:26:07
[2026-06-27 13:26:07,803.803 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:26:07,941.941 INFO    ] Initializing speech engine...
[2026-06-27 13:26:07,951.951 INFO    ] 2026-06-27 13:26:07
[2026-06-27 13:26:08,157.157 INFO    ] 2026-06-27 13:26:08
[2026-06-27 13:26:08,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:26:08,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:26:08,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:26:08,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:26:08,582.582 INFO    ] time= 27/06/2026 13:26:08
[2026-06-27 13:26:08,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:26:08,610.610 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:26:08,676.676 INFO    ] No existing commands found in stream
[2026-06-27 13:26:13,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:26:13,689.689 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-27 13:26:16,500.500 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:26:16,501.501 INFO    ] Checking for system updates...
[2026-06-27 13:26:16,522.522 INFO    ] 200
[2026-06-27 13:26:16,524.524 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:26:16,554.554 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:26:16,556.556 INFO    ] No update needed
[2026-06-27 13:26:16,557.557 INFO    ] Checking for camera pi updates...
[2026-06-27 13:26:16,577.577 INFO    ] 200
[2026-06-27 13:26:16,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:26:16,601.601 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:26:16,643.643 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:26:16,645.645 INFO    ] No camera update needed
[2026-06-27 13:26:16,646.646 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:26:16,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:26:16,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:26:16,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:26:18,692.692 INFO    ] ================================================
[2026-06-27 13:26:18,707.707 INFO    ] Launching Daemon at Sat Jun 27 13:26:18 IST 2026
[2026-06-27 13:26:18,718.718 INFO    ] ================================================
[2026-06-27 13:26:19,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:26:19
[2026-06-27 13:26:19,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:26:19,534.534 INFO    ] Initializing speech engine...
[2026-06-27 13:26:19,540.540 INFO    ] 2026-06-27 13:26:19
[2026-06-27 13:26:19,743.743 INFO    ] 2026-06-27 13:26:19
[2026-06-27 13:26:19,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:26:19,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:26:19,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:26:20,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:26:20,179.179 INFO    ] time= 27/06/2026 13:26:20
[2026-06-27 13:26:20,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:26:20,190.190 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:26:20,257.257 INFO    ] No existing commands found in stream
[2026-06-27 13:26:25,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:26:25,269.269 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-27 13:26:28,807.807 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 13:26:28,808.808 INFO    ] Checking for system updates...
[2026-06-27 13:26:28,830.830 INFO    ] 200
[2026-06-27 13:26:28,831.831 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:26:28,861.861 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:26:28,863.863 INFO    ] No update needed
[2026-06-27 13:26:28,864.864 INFO    ] Checking for camera pi updates...
[2026-06-27 13:26:28,884.884 INFO    ] 200
[2026-06-27 13:26:28,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:26:28,908.908 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:26:28,945.945 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:26:28,946.946 INFO    ] No camera update needed
[2026-06-27 13:26:28,948.948 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:26:28,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:26:28,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:26:28,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:26:30,994.994 INFO    ] ================================================
[2026-06-27 13:26:31,010.010 INFO    ] Launching Daemon at Sat Jun 27 13:26:31 IST 2026
[2026-06-27 13:26:31,021.021 INFO    ] ================================================
[2026-06-27 13:26:31,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:26:31
[2026-06-27 13:26:31,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:26:31,905.905 INFO    ] Initializing speech engine...
[2026-06-27 13:26:31,919.919 INFO    ] 2026-06-27 13:26:31
[2026-06-27 13:26:32,120.120 INFO    ] 2026-06-27 13:26:32
[2026-06-27 13:26:32,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:26:32,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:26:32,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:26:32,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:26:32,577.577 INFO    ] time= 27/06/2026 13:26:32
[2026-06-27 13:26:32,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:26:32,618.618 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:26:32,686.686 INFO    ] No existing commands found in stream
[2026-06-27 13:26:37,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:26:37,704.704 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-27 13:26:38,545.545 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 13:26:38,546.546 INFO    ] Checking for system updates...
[2026-06-27 13:26:38,568.568 INFO    ] 200
[2026-06-27 13:26:38,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:26:38,606.606 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:26:38,607.607 INFO    ] No update needed
[2026-06-27 13:26:38,608.608 INFO    ] Checking for camera pi updates...
[2026-06-27 13:26:38,631.631 INFO    ] 200
[2026-06-27 13:26:38,633.633 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:26:38,659.659 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:26:38,797.797 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:26:38,799.799 INFO    ] No camera update needed
[2026-06-27 13:26:38,800.800 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:26:38,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:26:38,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:26:38,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:26:40,848.848 INFO    ] ================================================
[2026-06-27 13:26:40,863.863 INFO    ] Launching Daemon at Sat Jun 27 13:26:40 IST 2026
[2026-06-27 13:26:40,874.874 INFO    ] ================================================
[2026-06-27 13:26:41,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:26:41
[2026-06-27 13:26:41,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:26:41,724.724 INFO    ] Initializing speech engine...
[2026-06-27 13:26:41,729.729 INFO    ] 2026-06-27 13:26:41
[2026-06-27 13:26:41,940.940 INFO    ] 2026-06-27 13:26:41
[2026-06-27 13:26:41,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:26:42,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:26:42,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:26:42,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:26:42,362.362 INFO    ] time= 27/06/2026 13:26:42
[2026-06-27 13:26:42,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:26:42,396.396 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:26:42,464.464 INFO    ] No existing commands found in stream
[2026-06-27 13:26:47,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:26:47,482.482 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-27 13:26:49,447.447 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:26:49,449.449 INFO    ] Checking for system updates...
[2026-06-27 13:26:49,471.471 INFO    ] 200
[2026-06-27 13:26:49,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:26:49,503.503 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:26:49,505.505 INFO    ] No update needed
[2026-06-27 13:26:49,507.507 INFO    ] Checking for camera pi updates...
[2026-06-27 13:26:49,526.526 INFO    ] 200
[2026-06-27 13:26:49,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:26:49,551.551 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:26:49,591.591 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:26:49,593.593 INFO    ] No camera update needed
[2026-06-27 13:26:49,594.594 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:26:49,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:26:49,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:26:49,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:26:51,645.645 INFO    ] ================================================
[2026-06-27 13:26:51,661.661 INFO    ] Launching Daemon at Sat Jun 27 13:26:51 IST 2026
[2026-06-27 13:26:51,673.673 INFO    ] ================================================
[2026-06-27 13:26:52,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:26:52
[2026-06-27 13:26:52,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:26:52,527.527 INFO    ] Initializing speech engine...
[2026-06-27 13:26:52,532.532 INFO    ] 2026-06-27 13:26:52
[2026-06-27 13:26:52,737.737 INFO    ] 2026-06-27 13:26:52
[2026-06-27 13:26:52,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:26:52,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:26:52,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:26:53,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:26:53,157.157 INFO    ] time= 27/06/2026 13:26:53
[2026-06-27 13:26:53,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:26:53,186.186 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:26:53,276.276 INFO    ] No existing commands found in stream
[2026-06-27 13:26:58,285.285 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:26:58,288.288 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-27 13:27:01,931.931 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:27:01,934.934 INFO    ] Checking for system updates...
[2026-06-27 13:27:01,960.960 INFO    ] 200
[2026-06-27 13:27:01,962.962 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:27:02,008.008 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:27:02,010.010 INFO    ] No update needed
[2026-06-27 13:27:02,012.012 INFO    ] Checking for camera pi updates...
[2026-06-27 13:27:02,043.043 INFO    ] 200
[2026-06-27 13:27:02,046.046 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:27:02,086.086 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:27:02,114.114 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:27:02,116.116 INFO    ] No camera update needed
[2026-06-27 13:27:02,118.118 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:27:02,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:27:02,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:27:02,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:27:04,168.168 INFO    ] ================================================
[2026-06-27 13:27:04,184.184 INFO    ] Launching Daemon at Sat Jun 27 13:27:04 IST 2026
[2026-06-27 13:27:04,194.194 INFO    ] ================================================
[2026-06-27 13:27:04,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:27:04
[2026-06-27 13:27:04,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:27:04,980.980 INFO    ] Initializing speech engine...
[2026-06-27 13:27:04,987.987 INFO    ] 2026-06-27 13:27:04
[2026-06-27 13:27:05,201.201 INFO    ] 2026-06-27 13:27:05
[2026-06-27 13:27:05,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:27:05,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:27:05,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:27:05,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:27:05,628.628 INFO    ] time= 27/06/2026 13:27:05
[2026-06-27 13:27:05,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:27:05,657.657 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:27:05,724.724 INFO    ] No existing commands found in stream
[2026-06-27 13:27:10,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:27:10,736.736 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-27 13:27:14,231.231 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:27:14,233.233 INFO    ] Checking for system updates...
[2026-06-27 13:27:14,255.255 INFO    ] 200
[2026-06-27 13:27:14,256.256 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:27:14,286.286 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:27:14,287.287 INFO    ] No update needed
[2026-06-27 13:27:14,289.289 INFO    ] Checking for camera pi updates...
[2026-06-27 13:27:14,308.308 INFO    ] 200
[2026-06-27 13:27:14,309.309 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:27:14,336.336 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:27:14,375.375 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:27:14,376.376 INFO    ] No camera update needed
[2026-06-27 13:27:14,378.378 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:27:14,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:27:14,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:27:14,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:27:16,424.424 INFO    ] ================================================
[2026-06-27 13:27:16,439.439 INFO    ] Launching Daemon at Sat Jun 27 13:27:16 IST 2026
[2026-06-27 13:27:16,450.450 INFO    ] ================================================
[2026-06-27 13:27:16,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:27:16
[2026-06-27 13:27:17,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:27:17,256.256 INFO    ] Initializing speech engine...
[2026-06-27 13:27:17,266.266 INFO    ] 2026-06-27 13:27:17
[2026-06-27 13:27:17,472.472 INFO    ] 2026-06-27 13:27:17
[2026-06-27 13:27:17,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:27:17,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:27:17,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:27:17,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:27:17,894.894 INFO    ] time= 27/06/2026 13:27:17
[2026-06-27 13:27:17,922.922 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:27:17,924.924 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:27:17,997.997 INFO    ] No existing commands found in stream
[2026-06-27 13:27:23,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:27:23,008.008 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-27 13:27:25,349.349 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 13:27:25,351.351 INFO    ] Checking for system updates...
[2026-06-27 13:27:25,371.371 INFO    ] 200
[2026-06-27 13:27:25,373.373 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:27:25,405.405 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:27:25,406.406 INFO    ] No update needed
[2026-06-27 13:27:25,407.407 INFO    ] Checking for camera pi updates...
[2026-06-27 13:27:25,428.428 INFO    ] 200
[2026-06-27 13:27:25,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:27:25,453.453 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:27:25,497.497 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:27:25,499.499 INFO    ] No camera update needed
[2026-06-27 13:27:25,500.500 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:27:25,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:27:25,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:27:25,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:27:27,547.547 INFO    ] ================================================
[2026-06-27 13:27:27,562.562 INFO    ] Launching Daemon at Sat Jun 27 13:27:27 IST 2026
[2026-06-27 13:27:27,573.573 INFO    ] ================================================
[2026-06-27 13:27:27,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:27:27
[2026-06-27 13:27:28,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:27:28,385.385 INFO    ] Initializing speech engine...
[2026-06-27 13:27:28,390.390 INFO    ] 2026-06-27 13:27:28
[2026-06-27 13:27:28,595.595 INFO    ] 2026-06-27 13:27:28
[2026-06-27 13:27:28,625.625 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:27:28,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:27:28,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:27:29,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:27:29,039.039 INFO    ] time= 27/06/2026 13:27:29
[2026-06-27 13:27:29,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:27:29,046.046 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:27:29,112.112 INFO    ] No existing commands found in stream
[2026-06-27 13:27:34,122.122 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:27:34,125.125 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-27 13:27:38,400.400 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 13:27:38,401.401 INFO    ] Checking for system updates...
[2026-06-27 13:27:38,422.422 INFO    ] 200
[2026-06-27 13:27:38,423.423 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:27:38,456.456 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:27:38,457.457 INFO    ] No update needed
[2026-06-27 13:27:38,458.458 INFO    ] Checking for camera pi updates...
[2026-06-27 13:27:38,477.477 INFO    ] 200
[2026-06-27 13:27:38,479.479 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:27:38,502.502 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:27:38,544.544 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:27:38,545.545 INFO    ] No camera update needed
[2026-06-27 13:27:38,546.546 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:27:38,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:27:38,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:27:38,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:27:40,593.593 INFO    ] ================================================
[2026-06-27 13:27:40,609.609 INFO    ] Launching Daemon at Sat Jun 27 13:27:40 IST 2026
[2026-06-27 13:27:40,619.619 INFO    ] ================================================
[2026-06-27 13:27:40,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:27:40
[2026-06-27 13:27:41,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:27:41,411.411 INFO    ] Initializing speech engine...
[2026-06-27 13:27:41,423.423 INFO    ] 2026-06-27 13:27:41
[2026-06-27 13:27:41,630.630 INFO    ] 2026-06-27 13:27:41
[2026-06-27 13:27:41,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:27:41,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:27:41,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:27:41,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:27:42,054.054 INFO    ] time= 27/06/2026 13:27:41
[2026-06-27 13:27:42,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:27:42,085.085 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:27:42,153.153 INFO    ] No existing commands found in stream
[2026-06-27 13:27:47,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:27:47,185.185 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-27 13:27:47,683.683 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 13:27:47,684.684 INFO    ] Checking for system updates...
[2026-06-27 13:27:47,705.705 INFO    ] 200
[2026-06-27 13:27:47,706.706 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:27:47,736.736 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:27:47,738.738 INFO    ] No update needed
[2026-06-27 13:27:47,739.739 INFO    ] Checking for camera pi updates...
[2026-06-27 13:27:47,762.762 INFO    ] 200
[2026-06-27 13:27:47,763.763 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:27:47,789.789 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:27:47,830.830 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:27:47,832.832 INFO    ] No camera update needed
[2026-06-27 13:27:47,833.833 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:27:47,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:27:47,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:27:47,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:27:49,879.879 INFO    ] ================================================
[2026-06-27 13:27:49,901.901 INFO    ] Launching Daemon at Sat Jun 27 13:27:49 IST 2026
[2026-06-27 13:27:49,912.912 INFO    ] ================================================
[2026-06-27 13:27:50,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:27:50
[2026-06-27 13:27:50,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:27:50,708.708 INFO    ] Initializing speech engine...
[2026-06-27 13:27:50,717.717 INFO    ] 2026-06-27 13:27:50
[2026-06-27 13:27:50,940.940 INFO    ] 2026-06-27 13:27:50
[2026-06-27 13:27:50,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:27:51,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:27:51,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:27:51,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:27:51,368.368 INFO    ] time= 27/06/2026 13:27:51
[2026-06-27 13:27:51,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:27:51,420.420 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:27:51,496.496 INFO    ] No existing commands found in stream
[2026-06-27 13:27:56,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:27:56,508.508 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-27 13:27:58,403.403 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 13:27:58,405.405 INFO    ] Checking for system updates...
[2026-06-27 13:27:58,426.426 INFO    ] 200
[2026-06-27 13:27:58,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:27:58,459.459 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:27:58,461.461 INFO    ] No update needed
[2026-06-27 13:27:58,462.462 INFO    ] Checking for camera pi updates...
[2026-06-27 13:27:58,483.483 INFO    ] 200
[2026-06-27 13:27:58,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:27:58,508.508 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:27:58,542.542 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:27:58,543.543 INFO    ] No camera update needed
[2026-06-27 13:27:58,545.545 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:27:58,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:27:58,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:27:58,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:28:00,589.589 INFO    ] ================================================
[2026-06-27 13:28:00,605.605 INFO    ] Launching Daemon at Sat Jun 27 13:28:00 IST 2026
[2026-06-27 13:28:00,616.616 INFO    ] ================================================
[2026-06-27 13:28:00,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:28:00
[2026-06-27 13:28:01,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:28:01,484.484 INFO    ] Initializing speech engine...
[2026-06-27 13:28:01,489.489 INFO    ] 2026-06-27 13:28:01
[2026-06-27 13:28:01,699.699 INFO    ] 2026-06-27 13:28:01
[2026-06-27 13:28:01,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:28:01,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:28:01,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:28:02,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:28:02,058.058 INFO    ] time= 27/06/2026 13:28:02
[2026-06-27 13:28:02,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:28:02,063.063 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:28:02,139.139 INFO    ] No existing commands found in stream
[2026-06-27 13:28:07,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:28:07,150.150 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-27 13:28:11,458.458 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 13:28:11,459.459 INFO    ] Checking for system updates...
[2026-06-27 13:28:11,480.480 INFO    ] 200
[2026-06-27 13:28:11,481.481 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:28:11,514.514 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:28:11,515.515 INFO    ] No update needed
[2026-06-27 13:28:11,517.517 INFO    ] Checking for camera pi updates...
[2026-06-27 13:28:11,536.536 INFO    ] 200
[2026-06-27 13:28:11,537.537 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:28:11,560.560 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:28:11,597.597 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:28:11,599.599 INFO    ] No camera update needed
[2026-06-27 13:28:11,600.600 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:28:11,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:28:11,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:28:11,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:28:13,648.648 INFO    ] ================================================
[2026-06-27 13:28:13,664.664 INFO    ] Launching Daemon at Sat Jun 27 13:28:13 IST 2026
[2026-06-27 13:28:13,675.675 INFO    ] ================================================
[2026-06-27 13:28:14,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:28:14
[2026-06-27 13:28:14,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:28:14,505.505 INFO    ] Initializing speech engine...
[2026-06-27 13:28:14,510.510 INFO    ] 2026-06-27 13:28:14
[2026-06-27 13:28:14,717.717 INFO    ] 2026-06-27 13:28:14
[2026-06-27 13:28:14,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:28:14,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:28:14,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:28:15,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:28:15,144.144 INFO    ] time= 27/06/2026 13:28:15
[2026-06-27 13:28:15,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:28:15,166.166 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:28:15,231.231 INFO    ] No existing commands found in stream
[2026-06-27 13:28:20,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:28:20,246.246 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-27 13:28:23,261.261 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 13:28:23,262.262 INFO    ] Checking for system updates...
[2026-06-27 13:28:23,285.285 INFO    ] 200
[2026-06-27 13:28:23,286.286 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:28:23,319.319 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:28:23,321.321 INFO    ] No update needed
[2026-06-27 13:28:23,322.322 INFO    ] Checking for camera pi updates...
[2026-06-27 13:28:23,343.343 INFO    ] 200
[2026-06-27 13:28:23,345.345 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:28:23,369.369 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:28:23,406.406 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:28:23,407.407 INFO    ] No camera update needed
[2026-06-27 13:28:23,409.409 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:28:23,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:28:23,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:28:23,416.416 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:28:25,463.463 INFO    ] ================================================
[2026-06-27 13:28:25,479.479 INFO    ] Launching Daemon at Sat Jun 27 13:28:25 IST 2026
[2026-06-27 13:28:25,489.489 INFO    ] ================================================
[2026-06-27 13:28:25,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:28:25
[2026-06-27 13:28:26,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:28:26,339.339 INFO    ] Initializing speech engine...
[2026-06-27 13:28:26,343.343 INFO    ] 2026-06-27 13:28:26
[2026-06-27 13:28:26,550.550 INFO    ] 2026-06-27 13:28:26
[2026-06-27 13:28:26,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:28:26,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:28:26,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:28:26,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:28:26,970.970 INFO    ] time= 27/06/2026 13:28:26
[2026-06-27 13:28:26,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:28:26,997.997 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:28:27,062.062 INFO    ] No existing commands found in stream
[2026-06-27 13:28:32,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:28:32,074.074 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-27 13:28:35,907.907 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 13:28:35,909.909 INFO    ] Checking for system updates...
[2026-06-27 13:28:35,930.930 INFO    ] 200
[2026-06-27 13:28:35,932.932 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:28:35,962.962 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:28:35,964.964 INFO    ] No update needed
[2026-06-27 13:28:35,965.965 INFO    ] Checking for camera pi updates...
[2026-06-27 13:28:35,985.985 INFO    ] 200
[2026-06-27 13:28:35,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:28:36,011.011 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:28:36,047.047 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:28:36,048.048 INFO    ] No camera update needed
[2026-06-27 13:28:36,050.050 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:28:36,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:28:36,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:28:36,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:28:38,098.098 INFO    ] ================================================
[2026-06-27 13:28:38,112.112 INFO    ] Launching Daemon at Sat Jun 27 13:28:38 IST 2026
[2026-06-27 13:28:38,123.123 INFO    ] ================================================
[2026-06-27 13:28:38,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:28:38
[2026-06-27 13:28:38,821.821 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:28:38,973.973 INFO    ] Initializing speech engine...
[2026-06-27 13:28:38,978.978 INFO    ] 2026-06-27 13:28:38
[2026-06-27 13:28:39,190.190 INFO    ] 2026-06-27 13:28:39
[2026-06-27 13:28:39,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:28:39,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:28:39,409.409 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:28:39,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:28:39,617.617 INFO    ] time= 27/06/2026 13:28:39
[2026-06-27 13:28:39,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:28:39,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:28:39,716.716 INFO    ] No existing commands found in stream
[2026-06-27 13:28:44,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:28:44,730.730 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-27 13:28:48,401.401 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 13:28:48,403.403 INFO    ] Checking for system updates...
[2026-06-27 13:28:48,425.425 INFO    ] 200
[2026-06-27 13:28:48,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:28:48,457.457 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:28:48,459.459 INFO    ] No update needed
[2026-06-27 13:28:48,460.460 INFO    ] Checking for camera pi updates...
[2026-06-27 13:28:48,480.480 INFO    ] 200
[2026-06-27 13:28:48,481.481 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:28:48,506.506 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:28:48,659.659 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:28:48,661.661 INFO    ] No camera update needed
[2026-06-27 13:28:48,662.662 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:28:48,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:28:48,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:28:48,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:28:50,709.709 INFO    ] ================================================
[2026-06-27 13:28:50,727.727 INFO    ] Launching Daemon at Sat Jun 27 13:28:50 IST 2026
[2026-06-27 13:28:50,738.738 INFO    ] ================================================
[2026-06-27 13:28:51,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:28:51
[2026-06-27 13:28:51,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:28:51,565.565 INFO    ] Initializing speech engine...
[2026-06-27 13:28:51,573.573 INFO    ] 2026-06-27 13:28:51
[2026-06-27 13:28:51,781.781 INFO    ] 2026-06-27 13:28:51
[2026-06-27 13:28:51,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:28:51,997.997 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:28:52,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:28:52,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:28:52,203.203 INFO    ] time= 27/06/2026 13:28:52
[2026-06-27 13:28:52,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:28:52,233.233 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:28:52,300.300 INFO    ] No existing commands found in stream
[2026-06-27 13:28:57,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:28:57,311.311 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-27 13:29:00,399.399 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 13:29:00,401.401 INFO    ] Checking for system updates...
[2026-06-27 13:29:00,421.421 INFO    ] 200
[2026-06-27 13:29:00,423.423 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:29:00,453.453 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:29:00,454.454 INFO    ] No update needed
[2026-06-27 13:29:00,456.456 INFO    ] Checking for camera pi updates...
[2026-06-27 13:29:00,475.475 INFO    ] 200
[2026-06-27 13:29:00,476.476 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:29:00,501.501 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:29:00,538.538 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:29:00,540.540 INFO    ] No camera update needed
[2026-06-27 13:29:00,541.541 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:29:00,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:29:00,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:29:00,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:29:02,572.572 INFO    ] ================================================
[2026-06-27 13:29:02,585.585 INFO    ] Launching Daemon at Sat Jun 27 13:29:02 IST 2026
[2026-06-27 13:29:02,595.595 INFO    ] ================================================
[2026-06-27 13:29:02,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:29:02
[2026-06-27 13:29:03,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:29:03,454.454 INFO    ] Initializing speech engine...
[2026-06-27 13:29:03,459.459 INFO    ] 2026-06-27 13:29:03
[2026-06-27 13:29:03,667.667 INFO    ] 2026-06-27 13:29:03
[2026-06-27 13:29:03,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:29:03,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:29:03,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:29:04,048.048 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:29:04,093.093 INFO    ] time= 27/06/2026 13:29:04
[2026-06-27 13:29:04,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:29:04,120.120 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:29:04,211.211 INFO    ] No existing commands found in stream
[2026-06-27 13:29:09,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:29:09,229.229 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-27 13:29:10,389.389 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 13:29:10,390.390 INFO    ] Checking for system updates...
[2026-06-27 13:29:10,411.411 INFO    ] 200
[2026-06-27 13:29:10,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:29:10,443.443 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:29:10,445.445 INFO    ] No update needed
[2026-06-27 13:29:10,446.446 INFO    ] Checking for camera pi updates...
[2026-06-27 13:29:10,466.466 INFO    ] 200
[2026-06-27 13:29:10,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:29:10,491.491 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:29:10,530.530 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:29:10,531.531 INFO    ] No camera update needed
[2026-06-27 13:29:10,533.533 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:29:10,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:29:10,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:29:10,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:29:12,580.580 INFO    ] ================================================
[2026-06-27 13:29:12,595.595 INFO    ] Launching Daemon at Sat Jun 27 13:29:12 IST 2026
[2026-06-27 13:29:12,606.606 INFO    ] ================================================
[2026-06-27 13:29:12,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:29:12
[2026-06-27 13:29:13,286.286 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:29:13,430.430 INFO    ] Initializing speech engine...
[2026-06-27 13:29:13,438.438 INFO    ] 2026-06-27 13:29:13
[2026-06-27 13:29:13,679.679 INFO    ] 2026-06-27 13:29:13
[2026-06-27 13:29:13,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:29:13,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:29:13,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:29:14,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:29:14,124.124 INFO    ] time= 27/06/2026 13:29:14
[2026-06-27 13:29:14,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:29:14,180.180 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:29:14,257.257 INFO    ] No existing commands found in stream
[2026-06-27 13:29:19,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:29:19,274.274 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-27 13:29:21,591.591 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 13:29:21,592.592 INFO    ] Checking for system updates...
[2026-06-27 13:29:21,614.614 INFO    ] 200
[2026-06-27 13:29:21,616.616 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:29:21,648.648 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:29:21,649.649 INFO    ] No update needed
[2026-06-27 13:29:21,651.651 INFO    ] Checking for camera pi updates...
[2026-06-27 13:29:21,670.670 INFO    ] 200
[2026-06-27 13:29:21,671.671 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:29:21,695.695 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:29:21,730.730 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:29:21,731.731 INFO    ] No camera update needed
[2026-06-27 13:29:21,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:29:21,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:29:21,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:29:21,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:29:23,779.779 INFO    ] ================================================
[2026-06-27 13:29:23,794.794 INFO    ] Launching Daemon at Sat Jun 27 13:29:23 IST 2026
[2026-06-27 13:29:23,805.805 INFO    ] ================================================
[2026-06-27 13:29:24,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:29:24
[2026-06-27 13:29:24,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:29:24,604.604 INFO    ] Initializing speech engine...
[2026-06-27 13:29:24,610.610 INFO    ] 2026-06-27 13:29:24
[2026-06-27 13:29:24,813.813 INFO    ] 2026-06-27 13:29:24
[2026-06-27 13:29:24,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:29:25,025.025 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:29:25,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:29:25,163.163 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:29:25,228.228 INFO    ] time= 27/06/2026 13:29:25
[2026-06-27 13:29:25,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:29:25,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:29:25,326.326 INFO    ] No existing commands found in stream
[2026-06-27 13:29:30,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:29:30,338.338 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-27 13:29:31,124.124 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 13:29:31,125.125 INFO    ] Checking for system updates...
[2026-06-27 13:29:31,147.147 INFO    ] 200
[2026-06-27 13:29:31,149.149 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:29:31,191.191 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:29:31,194.194 INFO    ] No update needed
[2026-06-27 13:29:31,196.196 INFO    ] Checking for camera pi updates...
[2026-06-27 13:29:31,221.221 INFO    ] 200
[2026-06-27 13:29:31,223.223 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:29:31,250.250 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:29:31,293.293 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:29:31,295.295 INFO    ] No camera update needed
[2026-06-27 13:29:31,297.297 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:29:31,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:29:31,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:29:31,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:29:33,339.339 INFO    ] ================================================
[2026-06-27 13:29:33,354.354 INFO    ] Launching Daemon at Sat Jun 27 13:29:33 IST 2026
[2026-06-27 13:29:33,364.364 INFO    ] ================================================
[2026-06-27 13:29:33,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:29:33
[2026-06-27 13:29:34,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:29:34,170.170 INFO    ] Initializing speech engine...
[2026-06-27 13:29:34,175.175 INFO    ] 2026-06-27 13:29:34
[2026-06-27 13:29:34,379.379 INFO    ] 2026-06-27 13:29:34
[2026-06-27 13:29:34,407.407 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:29:34,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:29:34,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:29:37,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:29:37,858.858 INFO    ] time= 27/06/2026 13:29:37
[2026-06-27 13:29:37,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:29:37,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:29:37,925.925 INFO    ] No existing commands found in stream
[2026-06-27 13:29:42,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:29:42,937.937 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-27 13:29:46,907.907 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 13:29:46,909.909 INFO    ] Checking for system updates...
[2026-06-27 13:29:46,930.930 INFO    ] 200
[2026-06-27 13:29:46,931.931 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:29:46,962.962 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:29:46,963.963 INFO    ] No update needed
[2026-06-27 13:29:46,965.965 INFO    ] Checking for camera pi updates...
[2026-06-27 13:29:46,984.984 INFO    ] 200
[2026-06-27 13:29:46,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:29:47,011.011 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:29:47,052.052 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:29:47,054.054 INFO    ] No camera update needed
[2026-06-27 13:29:47,055.055 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:29:47,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:29:47,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:29:47,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:29:49,103.103 INFO    ] ================================================
[2026-06-27 13:29:49,118.118 INFO    ] Launching Daemon at Sat Jun 27 13:29:49 IST 2026
[2026-06-27 13:29:49,129.129 INFO    ] ================================================
[2026-06-27 13:29:49,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:29:49
[2026-06-27 13:29:49,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:29:49,984.984 INFO    ] Initializing speech engine...
[2026-06-27 13:29:49,990.990 INFO    ] 2026-06-27 13:29:49
[2026-06-27 13:29:50,199.199 INFO    ] 2026-06-27 13:29:50
[2026-06-27 13:29:50,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:29:50,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:29:50,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:29:50,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:29:50,629.629 INFO    ] time= 27/06/2026 13:29:50
[2026-06-27 13:29:50,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:29:50,657.657 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:29:50,726.726 INFO    ] No existing commands found in stream
[2026-06-27 13:29:55,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:29:55,739.739 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-27 13:29:56,574.574 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 13:29:56,576.576 INFO    ] Checking for system updates...
[2026-06-27 13:29:56,597.597 INFO    ] 200
[2026-06-27 13:29:56,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:29:56,629.629 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:29:56,630.630 INFO    ] No update needed
[2026-06-27 13:29:56,632.632 INFO    ] Checking for camera pi updates...
[2026-06-27 13:29:56,652.652 INFO    ] 200
[2026-06-27 13:29:56,654.654 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:29:56,677.677 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:29:56,716.716 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:29:56,718.718 INFO    ] No camera update needed
[2026-06-27 13:29:56,719.719 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:29:56,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:29:56,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:29:56,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:29:58,766.766 INFO    ] ================================================
[2026-06-27 13:29:58,781.781 INFO    ] Launching Daemon at Sat Jun 27 13:29:58 IST 2026
[2026-06-27 13:29:58,792.792 INFO    ] ================================================
[2026-06-27 13:29:59,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:29:59
[2026-06-27 13:29:59,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:29:59,659.659 INFO    ] Initializing speech engine...
[2026-06-27 13:29:59,668.668 INFO    ] 2026-06-27 13:29:59
[2026-06-27 13:29:59,879.879 INFO    ] 2026-06-27 13:29:59
[2026-06-27 13:29:59,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:30:00,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:30:00,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:30:00,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:30:00,300.300 INFO    ] time= 27/06/2026 13:30:00
[2026-06-27 13:30:00,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:30:00,329.329 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:30:00,394.394 INFO    ] No existing commands found in stream
[2026-06-27 13:30:05,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:30:05,409.409 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-27 13:30:08,063.063 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 13:30:08,064.064 INFO    ] Checking for system updates...
[2026-06-27 13:30:08,085.085 INFO    ] 200
[2026-06-27 13:30:08,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:30:08,119.119 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:30:08,121.121 INFO    ] No update needed
[2026-06-27 13:30:08,122.122 INFO    ] Checking for camera pi updates...
[2026-06-27 13:30:08,144.144 INFO    ] 200
[2026-06-27 13:30:08,146.146 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:30:08,169.169 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:30:08,213.213 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:30:08,215.215 INFO    ] No camera update needed
[2026-06-27 13:30:08,216.216 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:30:08,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:30:08,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:30:08,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:30:10,263.263 INFO    ] ================================================
[2026-06-27 13:30:10,279.279 INFO    ] Launching Daemon at Sat Jun 27 13:30:10 IST 2026
[2026-06-27 13:30:10,289.289 INFO    ] ================================================
[2026-06-27 13:30:10,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:30:10
[2026-06-27 13:30:10,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:30:11,072.072 INFO    ] Initializing speech engine...
[2026-06-27 13:30:11,085.085 INFO    ] 2026-06-27 13:30:11
[2026-06-27 13:30:11,296.296 INFO    ] 2026-06-27 13:30:11
[2026-06-27 13:30:11,327.327 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:30:11,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:30:11,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:30:11,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:30:11,709.709 INFO    ] time= 27/06/2026 13:30:11
[2026-06-27 13:30:11,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:30:11,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:30:11,823.823 INFO    ] No existing commands found in stream
[2026-06-27 13:30:16,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:30:16,835.835 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-27 13:30:20,391.391 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 13:30:20,393.393 INFO    ] Checking for system updates...
[2026-06-27 13:30:20,414.414 INFO    ] 200
[2026-06-27 13:30:20,415.415 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:30:20,448.448 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:30:20,449.449 INFO    ] No update needed
[2026-06-27 13:30:20,450.450 INFO    ] Checking for camera pi updates...
[2026-06-27 13:30:20,470.470 INFO    ] 200
[2026-06-27 13:30:20,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:30:20,494.494 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:30:20,535.535 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:30:20,536.536 INFO    ] No camera update needed
[2026-06-27 13:30:20,537.537 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:30:20,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:30:20,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:30:20,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:30:22,584.584 INFO    ] ================================================
[2026-06-27 13:30:22,599.599 INFO    ] Launching Daemon at Sat Jun 27 13:30:22 IST 2026
[2026-06-27 13:30:22,610.610 INFO    ] ================================================
[2026-06-27 13:30:22,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:30:22
[2026-06-27 13:30:23,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:30:23,409.409 INFO    ] Initializing speech engine...
[2026-06-27 13:30:23,421.421 INFO    ] 2026-06-27 13:30:23
[2026-06-27 13:30:23,636.636 INFO    ] 2026-06-27 13:30:23
[2026-06-27 13:30:23,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:30:23,853.853 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:30:23,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:30:24,009.009 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:30:24,064.064 INFO    ] time= 27/06/2026 13:30:24
[2026-06-27 13:30:24,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:30:24,093.093 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:30:24,161.161 INFO    ] No existing commands found in stream
[2026-06-27 13:30:29,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:30:29,197.197 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-27 13:30:32,139.139 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 13:30:32,141.141 INFO    ] Checking for system updates...
[2026-06-27 13:30:32,171.171 INFO    ] 200
[2026-06-27 13:30:32,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:30:32,213.213 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:30:32,214.214 INFO    ] No update needed
[2026-06-27 13:30:32,216.216 INFO    ] Checking for camera pi updates...
[2026-06-27 13:30:32,236.236 INFO    ] 200
[2026-06-27 13:30:32,237.237 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:30:32,261.261 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:30:32,298.298 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:30:32,300.300 INFO    ] No camera update needed
[2026-06-27 13:30:32,301.301 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:30:32,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:30:32,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:30:32,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:30:34,347.347 INFO    ] ================================================
[2026-06-27 13:30:34,362.362 INFO    ] Launching Daemon at Sat Jun 27 13:30:34 IST 2026
[2026-06-27 13:30:34,373.373 INFO    ] ================================================
[2026-06-27 13:30:34,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:30:34
[2026-06-27 13:30:35,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:30:35,220.220 INFO    ] Initializing speech engine...
[2026-06-27 13:30:35,226.226 INFO    ] 2026-06-27 13:30:35
[2026-06-27 13:30:35,435.435 INFO    ] 2026-06-27 13:30:35
[2026-06-27 13:30:35,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:30:35,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:30:35,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:30:35,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:30:35,865.865 INFO    ] time= 27/06/2026 13:30:35
[2026-06-27 13:30:35,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:30:35,893.893 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:30:35,961.961 INFO    ] No existing commands found in stream
[2026-06-27 13:30:40,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:30:40,971.971 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-27 13:30:43,161.161 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 13:30:43,162.162 INFO    ] Checking for system updates...
[2026-06-27 13:30:43,183.183 INFO    ] 200
[2026-06-27 13:30:43,185.185 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:30:43,215.215 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:30:43,216.216 INFO    ] No update needed
[2026-06-27 13:30:43,217.217 INFO    ] Checking for camera pi updates...
[2026-06-27 13:30:43,238.238 INFO    ] 200
[2026-06-27 13:30:43,239.239 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:30:43,262.262 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:30:43,300.300 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:30:43,301.301 INFO    ] No camera update needed
[2026-06-27 13:30:43,302.302 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:30:43,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:30:43,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:30:43,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:30:45,347.347 INFO    ] ================================================
[2026-06-27 13:30:45,362.362 INFO    ] Launching Daemon at Sat Jun 27 13:30:45 IST 2026
[2026-06-27 13:30:45,373.373 INFO    ] ================================================
[2026-06-27 13:30:45,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:30:45
[2026-06-27 13:30:46,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:30:46,200.200 INFO    ] Initializing speech engine...
[2026-06-27 13:30:46,206.206 INFO    ] 2026-06-27 13:30:46
[2026-06-27 13:30:46,409.409 INFO    ] 2026-06-27 13:30:46
[2026-06-27 13:30:46,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:30:46,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:30:46,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:30:46,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:30:46,850.850 INFO    ] time= 27/06/2026 13:30:46
[2026-06-27 13:30:46,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:30:46,857.857 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:30:46,924.924 INFO    ] No existing commands found in stream
[2026-06-27 13:30:51,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:30:51,937.937 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-27 13:30:55,911.911 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 13:30:55,913.913 INFO    ] Checking for system updates...
[2026-06-27 13:30:55,935.935 INFO    ] 200
[2026-06-27 13:30:55,936.936 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:30:55,966.966 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:30:55,967.967 INFO    ] No update needed
[2026-06-27 13:30:55,969.969 INFO    ] Checking for camera pi updates...
[2026-06-27 13:30:55,988.988 INFO    ] 200
[2026-06-27 13:30:55,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:30:56,014.014 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:30:56,138.138 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:30:56,139.139 INFO    ] No camera update needed
[2026-06-27 13:30:56,140.140 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:30:56,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:30:56,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:30:56,148.148 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:30:58,188.188 INFO    ] ================================================
[2026-06-27 13:30:58,203.203 INFO    ] Launching Daemon at Sat Jun 27 13:30:58 IST 2026
[2026-06-27 13:30:58,220.220 INFO    ] ================================================
[2026-06-27 13:30:58,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:30:58
[2026-06-27 13:30:58,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:30:59,039.039 INFO    ] Initializing speech engine...
[2026-06-27 13:30:59,045.045 INFO    ] 2026-06-27 13:30:59
[2026-06-27 13:30:59,248.248 INFO    ] 2026-06-27 13:30:59
[2026-06-27 13:30:59,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:30:59,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:30:59,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:30:59,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:30:59,687.687 INFO    ] time= 27/06/2026 13:30:59
[2026-06-27 13:30:59,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:30:59,694.694 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:30:59,761.761 INFO    ] No existing commands found in stream
[2026-06-27 13:31:04,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:31:04,778.778 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-27 13:31:05,994.994 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:31:05,996.996 INFO    ] Checking for system updates...
[2026-06-27 13:31:06,019.019 INFO    ] 200
[2026-06-27 13:31:06,020.020 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:31:06,053.053 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:31:06,054.054 INFO    ] No update needed
[2026-06-27 13:31:06,055.055 INFO    ] Checking for camera pi updates...
[2026-06-27 13:31:06,080.080 INFO    ] 200
[2026-06-27 13:31:06,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:31:06,116.116 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:31:06,157.157 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:31:06,158.158 INFO    ] No camera update needed
[2026-06-27 13:31:06,159.159 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:31:06,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:31:06,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:31:06,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:31:08,205.205 INFO    ] ================================================
[2026-06-27 13:31:08,220.220 INFO    ] Launching Daemon at Sat Jun 27 13:31:08 IST 2026
[2026-06-27 13:31:08,231.231 INFO    ] ================================================
[2026-06-27 13:31:08,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:31:08
[2026-06-27 13:31:08,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:31:09,080.080 INFO    ] Initializing speech engine...
[2026-06-27 13:31:09,085.085 INFO    ] 2026-06-27 13:31:09
[2026-06-27 13:31:09,294.294 INFO    ] 2026-06-27 13:31:09
[2026-06-27 13:31:09,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:31:09,512.512 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:31:09,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:31:09,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:31:09,724.724 INFO    ] time= 27/06/2026 13:31:09
[2026-06-27 13:31:09,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:31:09,751.751 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:31:09,819.819 INFO    ] No existing commands found in stream
[2026-06-27 13:31:14,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:31:14,856.856 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-27 13:31:17,350.350 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 13:31:17,351.351 INFO    ] Checking for system updates...
[2026-06-27 13:31:17,372.372 INFO    ] 200
[2026-06-27 13:31:17,374.374 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:31:17,407.407 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:31:17,408.408 INFO    ] No update needed
[2026-06-27 13:31:17,410.410 INFO    ] Checking for camera pi updates...
[2026-06-27 13:31:17,432.432 INFO    ] 200
[2026-06-27 13:31:17,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:31:17,459.459 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:31:17,496.496 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:31:17,497.497 INFO    ] No camera update needed
[2026-06-27 13:31:17,498.498 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:31:17,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:31:17,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:31:17,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:31:19,548.548 INFO    ] ================================================
[2026-06-27 13:31:19,563.563 INFO    ] Launching Daemon at Sat Jun 27 13:31:19 IST 2026
[2026-06-27 13:31:19,575.575 INFO    ] ================================================
[2026-06-27 13:31:19,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:31:19
[2026-06-27 13:31:20,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:31:20,360.360 INFO    ] Initializing speech engine...
[2026-06-27 13:31:20,369.369 INFO    ] 2026-06-27 13:31:20
[2026-06-27 13:31:20,584.584 INFO    ] 2026-06-27 13:31:20
[2026-06-27 13:31:20,613.613 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:31:20,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:31:20,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:31:21,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:31:21,029.029 INFO    ] time= 27/06/2026 13:31:21
[2026-06-27 13:31:21,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:31:21,036.036 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:31:21,102.102 INFO    ] No existing commands found in stream
[2026-06-27 13:31:26,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:31:26,115.115 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-27 13:31:29,037.037 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 13:31:29,038.038 INFO    ] Checking for system updates...
[2026-06-27 13:31:29,059.059 INFO    ] 200
[2026-06-27 13:31:29,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:31:29,093.093 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:31:29,094.094 INFO    ] No update needed
[2026-06-27 13:31:29,095.095 INFO    ] Checking for camera pi updates...
[2026-06-27 13:31:29,116.116 INFO    ] 200
[2026-06-27 13:31:29,117.117 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:31:29,142.142 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:31:29,182.182 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:31:29,184.184 INFO    ] No camera update needed
[2026-06-27 13:31:29,185.185 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:31:29,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:31:29,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:31:29,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:31:31,232.232 INFO    ] ================================================
[2026-06-27 13:31:31,248.248 INFO    ] Launching Daemon at Sat Jun 27 13:31:31 IST 2026
[2026-06-27 13:31:31,258.258 INFO    ] ================================================
[2026-06-27 13:31:31,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:31:31
[2026-06-27 13:31:31,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:31:32,079.079 INFO    ] Initializing speech engine...
[2026-06-27 13:31:32,092.092 INFO    ] 2026-06-27 13:31:32
[2026-06-27 13:31:32,288.288 INFO    ] 2026-06-27 13:31:32
[2026-06-27 13:31:32,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:31:32,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:31:32,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:31:32,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:31:32,841.841 INFO    ] time= 27/06/2026 13:31:32
[2026-06-27 13:31:32,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:31:32,889.889 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:31:32,964.964 INFO    ] No existing commands found in stream
[2026-06-27 13:31:37,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:31:37,978.978 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-27 13:31:40,076.076 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 13:31:40,078.078 INFO    ] Checking for system updates...
[2026-06-27 13:31:40,098.098 INFO    ] 200
[2026-06-27 13:31:40,100.100 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:31:40,131.131 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:31:40,132.132 INFO    ] No update needed
[2026-06-27 13:31:40,133.133 INFO    ] Checking for camera pi updates...
[2026-06-27 13:31:40,154.154 INFO    ] 200
[2026-06-27 13:31:40,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:31:40,180.180 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:31:40,217.217 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:31:40,218.218 INFO    ] No camera update needed
[2026-06-27 13:31:40,219.219 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:31:40,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:31:40,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:31:40,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:31:42,266.266 INFO    ] ================================================
[2026-06-27 13:31:42,282.282 INFO    ] Launching Daemon at Sat Jun 27 13:31:42 IST 2026
[2026-06-27 13:31:42,292.292 INFO    ] ================================================
[2026-06-27 13:31:42,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:31:42
[2026-06-27 13:31:42,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:31:43,102.102 INFO    ] Initializing speech engine...
[2026-06-27 13:31:43,107.107 INFO    ] 2026-06-27 13:31:43
[2026-06-27 13:31:43,312.312 INFO    ] 2026-06-27 13:31:43
[2026-06-27 13:31:43,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:31:43,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:31:43,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:31:43,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:31:43,756.756 INFO    ] time= 27/06/2026 13:31:43
[2026-06-27 13:31:43,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:31:43,762.762 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:31:43,829.829 INFO    ] No existing commands found in stream
[2026-06-27 13:31:48,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:31:48,844.844 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-27 13:31:56,693.693 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 13:31:56,695.695 INFO    ] Checking for system updates...
[2026-06-27 13:31:56,718.718 INFO    ] 200
[2026-06-27 13:31:56,719.719 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:31:56,753.753 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:31:56,754.754 INFO    ] No update needed
[2026-06-27 13:31:56,756.756 INFO    ] Checking for camera pi updates...
[2026-06-27 13:31:56,776.776 INFO    ] 200
[2026-06-27 13:31:56,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:31:56,801.801 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:32:06,832.832 INFO    ] Error during camera update process: HTTPConnectionPool(host='tmcam06202304.local', port=8100): Max retries exceeded with url: /isUpdateNeeded (Caused by ConnectTimeoutError(<urllib3.connection.HTTPConnection object at 0x73d363d0>, 'Connection to tmcam06202304.local timed out. (connect timeout=5)'))
[2026-06-27 13:32:06,875.875 INFO    ] Failed to send camera update completion message after exception: local variable 'update_complete_header' referenced before assignment
[2026-06-27 13:32:06,886.886 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:32:06,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:32:06,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:32:06,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:32:08,942.942 INFO    ] ================================================
[2026-06-27 13:32:08,957.957 INFO    ] Launching Daemon at Sat Jun 27 13:32:08 IST 2026
[2026-06-27 13:32:08,968.968 INFO    ] ================================================
[2026-06-27 13:32:09,324.324 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:32:09
[2026-06-27 13:32:09,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:32:09,783.783 INFO    ] Initializing speech engine...
[2026-06-27 13:32:09,792.792 INFO    ] 2026-06-27 13:32:09
[2026-06-27 13:32:10,010.010 INFO    ] 2026-06-27 13:32:09
[2026-06-27 13:32:10,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:32:10,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:32:10,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:32:10,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:32:10,451.451 INFO    ] time= 27/06/2026 13:32:10
[2026-06-27 13:32:10,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:32:10,480.480 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:32:10,572.572 INFO    ] No existing commands found in stream
[2026-06-27 13:32:15,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:32:15,584.584 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-27 13:32:18,278.278 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 13:32:18,279.279 INFO    ] Checking for system updates...
[2026-06-27 13:32:18,300.300 INFO    ] 200
[2026-06-27 13:32:18,301.301 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:32:18,331.331 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:32:18,333.333 INFO    ] No update needed
[2026-06-27 13:32:18,334.334 INFO    ] Checking for camera pi updates...
[2026-06-27 13:32:18,355.355 INFO    ] 200
[2026-06-27 13:32:18,356.356 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:32:18,379.379 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:32:18,424.424 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:32:18,426.426 INFO    ] No camera update needed
[2026-06-27 13:32:18,427.427 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:32:18,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:32:18,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:32:18,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:32:20,472.472 INFO    ] ================================================
[2026-06-27 13:32:20,487.487 INFO    ] Launching Daemon at Sat Jun 27 13:32:20 IST 2026
[2026-06-27 13:32:20,498.498 INFO    ] ================================================
[2026-06-27 13:32:20,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:32:20
[2026-06-27 13:32:21,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:32:21,300.300 INFO    ] Initializing speech engine...
[2026-06-27 13:32:21,311.311 INFO    ] 2026-06-27 13:32:21
[2026-06-27 13:32:21,528.528 INFO    ] 2026-06-27 13:32:21
[2026-06-27 13:32:21,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:32:21,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:32:21,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:32:21,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:32:22,005.005 INFO    ] time= 27/06/2026 13:32:21
[2026-06-27 13:32:22,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:32:22,008.008 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:32:22,105.105 INFO    ] No existing commands found in stream
[2026-06-27 13:32:27,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:32:27,117.117 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-27 13:32:31,059.059 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 13:32:31,060.060 INFO    ] Checking for system updates...
[2026-06-27 13:32:31,081.081 INFO    ] 200
[2026-06-27 13:32:31,082.082 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:32:31,112.112 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:32:31,113.113 INFO    ] No update needed
[2026-06-27 13:32:31,115.115 INFO    ] Checking for camera pi updates...
[2026-06-27 13:32:31,135.135 INFO    ] 200
[2026-06-27 13:32:31,136.136 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:32:31,159.159 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:32:31,197.197 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:32:31,198.198 INFO    ] No camera update needed
[2026-06-27 13:32:31,199.199 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:32:31,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:32:31,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:32:31,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:32:33,239.239 INFO    ] ================================================
[2026-06-27 13:32:33,256.256 INFO    ] Launching Daemon at Sat Jun 27 13:32:33 IST 2026
[2026-06-27 13:32:33,267.267 INFO    ] ================================================
[2026-06-27 13:32:33,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:32:33
[2026-06-27 13:32:33,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:32:34,068.068 INFO    ] Initializing speech engine...
[2026-06-27 13:32:34,074.074 INFO    ] 2026-06-27 13:32:34
[2026-06-27 13:32:34,277.277 INFO    ] 2026-06-27 13:32:34
[2026-06-27 13:32:34,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:32:34,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:32:34,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:32:34,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:32:34,719.719 INFO    ] time= 27/06/2026 13:32:34
[2026-06-27 13:32:34,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:32:34,722.722 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:32:34,907.907 INFO    ] No existing commands found in stream
[2026-06-27 13:32:39,917.917 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:32:39,919.919 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-27 13:32:42,756.756 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 13:32:42,757.757 INFO    ] Checking for system updates...
[2026-06-27 13:32:42,779.779 INFO    ] 200
[2026-06-27 13:32:42,781.781 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:32:42,811.811 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:32:42,813.813 INFO    ] No update needed
[2026-06-27 13:32:42,814.814 INFO    ] Checking for camera pi updates...
[2026-06-27 13:32:42,836.836 INFO    ] 200
[2026-06-27 13:32:42,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:32:42,864.864 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:32:42,907.907 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:32:42,909.909 INFO    ] No camera update needed
[2026-06-27 13:32:42,910.910 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:32:42,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:32:42,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:32:42,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:32:44,958.958 INFO    ] ================================================
[2026-06-27 13:32:44,972.972 INFO    ] Launching Daemon at Sat Jun 27 13:32:44 IST 2026
[2026-06-27 13:32:44,983.983 INFO    ] ================================================
[2026-06-27 13:32:45,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:32:45
[2026-06-27 13:32:45,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:32:45,751.751 INFO    ] Initializing speech engine...
[2026-06-27 13:32:45,756.756 INFO    ] 2026-06-27 13:32:45
[2026-06-27 13:32:45,975.975 INFO    ] 2026-06-27 13:32:45
[2026-06-27 13:32:46,004.004 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:32:46,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:32:46,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:32:46,419.419 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:32:46,425.425 INFO    ] time= 27/06/2026 13:32:46
[2026-06-27 13:32:46,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:32:46,428.428 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:32:46,520.520 INFO    ] No existing commands found in stream
[2026-06-27 13:32:51,534.534 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:32:51,537.537 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-27 13:32:52,697.697 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:32:52,699.699 INFO    ] Checking for system updates...
[2026-06-27 13:32:52,719.719 INFO    ] 200
[2026-06-27 13:32:52,721.721 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:32:52,753.753 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:32:52,755.755 INFO    ] No update needed
[2026-06-27 13:32:52,756.756 INFO    ] Checking for camera pi updates...
[2026-06-27 13:32:52,776.776 INFO    ] 200
[2026-06-27 13:32:52,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:32:52,802.802 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:32:52,843.843 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:32:52,844.844 INFO    ] No camera update needed
[2026-06-27 13:32:52,846.846 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:32:52,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:32:52,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:32:52,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:32:54,890.890 INFO    ] ================================================
[2026-06-27 13:32:54,905.905 INFO    ] Launching Daemon at Sat Jun 27 13:32:54 IST 2026
[2026-06-27 13:32:54,916.916 INFO    ] ================================================
[2026-06-27 13:32:55,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:32:55
[2026-06-27 13:32:55,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:32:55,698.698 INFO    ] Initializing speech engine...
[2026-06-27 13:32:55,712.712 INFO    ] 2026-06-27 13:32:55
[2026-06-27 13:32:55,931.931 INFO    ] 2026-06-27 13:32:55
[2026-06-27 13:32:55,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:32:56,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:32:56,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:32:56,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:32:56,409.409 INFO    ] time= 27/06/2026 13:32:56
[2026-06-27 13:32:56,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:32:56,413.413 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:32:56,537.537 INFO    ] No existing commands found in stream
[2026-06-27 13:33:01,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:33:01,549.549 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-27 13:33:05,350.350 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:33:05,351.351 INFO    ] Checking for system updates...
[2026-06-27 13:33:05,372.372 INFO    ] 200
[2026-06-27 13:33:05,374.374 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:33:05,404.404 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:33:05,406.406 INFO    ] No update needed
[2026-06-27 13:33:05,407.407 INFO    ] Checking for camera pi updates...
[2026-06-27 13:33:05,428.428 INFO    ] 200
[2026-06-27 13:33:05,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:33:05,453.453 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:33:05,497.497 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:33:05,498.498 INFO    ] No camera update needed
[2026-06-27 13:33:05,499.499 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:33:05,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:33:05,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:33:05,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:33:07,547.547 INFO    ] ================================================
[2026-06-27 13:33:07,562.562 INFO    ] Launching Daemon at Sat Jun 27 13:33:07 IST 2026
[2026-06-27 13:33:07,573.573 INFO    ] ================================================
[2026-06-27 13:33:07,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:33:07
[2026-06-27 13:33:08,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:33:08,419.419 INFO    ] Initializing speech engine...
[2026-06-27 13:33:08,425.425 INFO    ] 2026-06-27 13:33:08
[2026-06-27 13:33:08,634.634 INFO    ] 2026-06-27 13:33:08
[2026-06-27 13:33:08,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:33:08,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:33:08,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:33:09,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:33:09,080.080 INFO    ] time= 27/06/2026 13:33:09
[2026-06-27 13:33:09,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:33:09,084.084 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:33:09,176.176 INFO    ] No existing commands found in stream
[2026-06-27 13:33:14,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:33:14,193.193 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-27 13:33:18,146.146 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 13:33:18,148.148 INFO    ] Checking for system updates...
[2026-06-27 13:33:18,170.170 INFO    ] 200
[2026-06-27 13:33:18,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:33:18,201.201 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:33:18,203.203 INFO    ] No update needed
[2026-06-27 13:33:18,204.204 INFO    ] Checking for camera pi updates...
[2026-06-27 13:33:18,224.224 INFO    ] 200
[2026-06-27 13:33:18,225.225 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:33:18,250.250 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:33:18,293.293 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:33:18,295.295 INFO    ] No camera update needed
[2026-06-27 13:33:18,296.296 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:33:18,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:33:18,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:33:18,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:33:20,342.342 INFO    ] ================================================
[2026-06-27 13:33:20,356.356 INFO    ] Launching Daemon at Sat Jun 27 13:33:20 IST 2026
[2026-06-27 13:33:20,367.367 INFO    ] ================================================
[2026-06-27 13:33:20,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:33:20
[2026-06-27 13:33:21,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:33:21,191.191 INFO    ] Initializing speech engine...
[2026-06-27 13:33:21,206.206 INFO    ] 2026-06-27 13:33:21
[2026-06-27 13:33:21,446.446 INFO    ] 2026-06-27 13:33:21
[2026-06-27 13:33:21,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:33:21,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:33:21,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:33:21,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:33:21,956.956 INFO    ] time= 27/06/2026 13:33:21
[2026-06-27 13:33:21,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:33:21,984.984 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:33:22,091.091 INFO    ] No existing commands found in stream
[2026-06-27 13:33:27,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:33:27,099.099 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-27 13:33:28,344.344 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 13:33:28,346.346 INFO    ] Checking for system updates...
[2026-06-27 13:33:28,368.368 INFO    ] 200
[2026-06-27 13:33:28,370.370 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:33:28,403.403 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:33:28,404.404 INFO    ] No update needed
[2026-06-27 13:33:28,406.406 INFO    ] Checking for camera pi updates...
[2026-06-27 13:33:28,426.426 INFO    ] 200
[2026-06-27 13:33:28,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:33:28,451.451 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:33:28,495.495 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:33:28,497.497 INFO    ] No camera update needed
[2026-06-27 13:33:28,498.498 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:33:28,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:33:28,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:33:28,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:33:30,545.545 INFO    ] ================================================
[2026-06-27 13:33:30,567.567 INFO    ] Launching Daemon at Sat Jun 27 13:33:30 IST 2026
[2026-06-27 13:33:30,578.578 INFO    ] ================================================
[2026-06-27 13:33:30,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:33:30
[2026-06-27 13:33:31,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:33:31,384.384 INFO    ] Initializing speech engine...
[2026-06-27 13:33:31,389.389 INFO    ] 2026-06-27 13:33:31
[2026-06-27 13:33:31,605.605 INFO    ] 2026-06-27 13:33:31
[2026-06-27 13:33:31,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:33:31,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:33:31,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:33:32,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:33:32,074.074 INFO    ] time= 27/06/2026 13:33:32
[2026-06-27 13:33:32,084.084 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:33:32,086.086 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:33:32,181.181 INFO    ] No existing commands found in stream
[2026-06-27 13:33:37,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:33:37,208.208 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-27 13:33:40,254.254 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 13:33:40,256.256 INFO    ] Checking for system updates...
[2026-06-27 13:33:40,276.276 INFO    ] 200
[2026-06-27 13:33:40,278.278 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:33:40,310.310 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:33:40,311.311 INFO    ] No update needed
[2026-06-27 13:33:40,312.312 INFO    ] Checking for camera pi updates...
[2026-06-27 13:33:40,333.333 INFO    ] 200
[2026-06-27 13:33:40,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:33:40,358.358 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:33:40,406.406 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:33:40,407.407 INFO    ] No camera update needed
[2026-06-27 13:33:40,409.409 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:33:40,410.410 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:33:40,413.413 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:33:40,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:33:42,454.454 INFO    ] ================================================
[2026-06-27 13:33:42,470.470 INFO    ] Launching Daemon at Sat Jun 27 13:33:42 IST 2026
[2026-06-27 13:33:42,480.480 INFO    ] ================================================
[2026-06-27 13:33:42,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:33:42
[2026-06-27 13:33:43,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:33:43,353.353 INFO    ] Initializing speech engine...
[2026-06-27 13:33:43,359.359 INFO    ] 2026-06-27 13:33:43
[2026-06-27 13:33:43,560.560 INFO    ] 2026-06-27 13:33:43
[2026-06-27 13:33:43,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:33:43,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:33:43,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:33:43,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:33:44,018.018 INFO    ] time= 27/06/2026 13:33:43
[2026-06-27 13:33:44,023.023 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:33:44,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:33:44,116.116 INFO    ] No existing commands found in stream
[2026-06-27 13:33:49,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:33:49,145.145 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-27 13:33:51,655.655 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:33:51,657.657 INFO    ] Checking for system updates...
[2026-06-27 13:33:51,679.679 INFO    ] 200
[2026-06-27 13:33:51,681.681 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:33:51,714.714 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:33:51,715.715 INFO    ] No update needed
[2026-06-27 13:33:51,717.717 INFO    ] Checking for camera pi updates...
[2026-06-27 13:33:51,738.738 INFO    ] 200
[2026-06-27 13:33:51,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:33:51,765.765 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:33:51,819.819 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:33:51,820.820 INFO    ] No camera update needed
[2026-06-27 13:33:51,822.822 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:33:51,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:33:51,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:33:51,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:33:53,870.870 INFO    ] ================================================
[2026-06-27 13:33:53,885.885 INFO    ] Launching Daemon at Sat Jun 27 13:33:53 IST 2026
[2026-06-27 13:33:53,895.895 INFO    ] ================================================
[2026-06-27 13:33:54,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:33:54
[2026-06-27 13:33:54,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:33:54,757.757 INFO    ] Initializing speech engine...
[2026-06-27 13:33:54,763.763 INFO    ] 2026-06-27 13:33:54
[2026-06-27 13:33:54,970.970 INFO    ] 2026-06-27 13:33:54
[2026-06-27 13:33:54,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:33:55,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:33:55,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:33:55,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:33:55,480.480 INFO    ] time= 27/06/2026 13:33:55
[2026-06-27 13:33:55,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:33:55,507.507 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:33:55,623.623 INFO    ] No existing commands found in stream
[2026-06-27 13:34:00,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:34:00,638.638 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-27 13:34:02,225.225 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 13:34:02,228.228 INFO    ] Checking for system updates...
[2026-06-27 13:34:02,255.255 INFO    ] 200
[2026-06-27 13:34:02,257.257 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:34:02,300.300 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:34:02,302.302 INFO    ] No update needed
[2026-06-27 13:34:02,304.304 INFO    ] Checking for camera pi updates...
[2026-06-27 13:34:02,333.333 INFO    ] 200
[2026-06-27 13:34:02,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:34:02,367.367 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:34:02,399.399 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:34:02,401.401 INFO    ] No camera update needed
[2026-06-27 13:34:02,404.404 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:34:02,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:34:02,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:34:02,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:34:04,459.459 INFO    ] ================================================
[2026-06-27 13:34:04,474.474 INFO    ] Launching Daemon at Sat Jun 27 13:34:04 IST 2026
[2026-06-27 13:34:04,485.485 INFO    ] ================================================
[2026-06-27 13:34:04,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:34:04
[2026-06-27 13:34:05,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:34:05,294.294 INFO    ] Initializing speech engine...
[2026-06-27 13:34:05,302.302 INFO    ] 2026-06-27 13:34:05
[2026-06-27 13:34:05,515.515 INFO    ] 2026-06-27 13:34:05
[2026-06-27 13:34:05,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:34:05,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:34:05,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:34:05,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:34:05,967.967 INFO    ] time= 27/06/2026 13:34:05
[2026-06-27 13:34:05,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:34:05,975.975 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:34:06,066.066 INFO    ] No existing commands found in stream
[2026-06-27 13:34:11,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:34:11,083.083 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-27 13:34:12,939.939 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 13:34:12,941.941 INFO    ] Checking for system updates...
[2026-06-27 13:34:12,963.963 INFO    ] 200
[2026-06-27 13:34:12,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:34:12,995.995 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:34:12,996.996 INFO    ] No update needed
[2026-06-27 13:34:12,998.998 INFO    ] Checking for camera pi updates...
[2026-06-27 13:34:13,019.019 INFO    ] 200
[2026-06-27 13:34:13,020.020 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:34:13,043.043 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:34:13,082.082 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:34:13,084.084 INFO    ] No camera update needed
[2026-06-27 13:34:13,085.085 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:34:13,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:34:13,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:34:13,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:34:15,130.130 INFO    ] ================================================
[2026-06-27 13:34:15,146.146 INFO    ] Launching Daemon at Sat Jun 27 13:34:15 IST 2026
[2026-06-27 13:34:15,156.156 INFO    ] ================================================
[2026-06-27 13:34:15,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:34:15
[2026-06-27 13:34:15,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:34:15,964.964 INFO    ] Initializing speech engine...
[2026-06-27 13:34:15,972.972 INFO    ] 2026-06-27 13:34:15
[2026-06-27 13:34:16,185.185 INFO    ] 2026-06-27 13:34:16
[2026-06-27 13:34:16,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:34:16,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:34:16,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:34:16,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:34:16,609.609 INFO    ] time= 27/06/2026 13:34:16
[2026-06-27 13:34:16,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:34:16,639.639 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:34:16,708.708 INFO    ] No existing commands found in stream
[2026-06-27 13:34:21,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:34:21,744.744 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-27 13:34:23,224.224 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:34:23,225.225 INFO    ] Checking for system updates...
[2026-06-27 13:34:23,246.246 INFO    ] 200
[2026-06-27 13:34:23,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:34:23,278.278 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:34:23,279.279 INFO    ] No update needed
[2026-06-27 13:34:23,280.280 INFO    ] Checking for camera pi updates...
[2026-06-27 13:34:23,300.300 INFO    ] 200
[2026-06-27 13:34:23,301.301 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:34:23,327.327 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:34:23,469.469 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:34:23,470.470 INFO    ] No camera update needed
[2026-06-27 13:34:23,471.471 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:34:23,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:34:23,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:34:23,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:34:25,519.519 INFO    ] ================================================
[2026-06-27 13:34:25,534.534 INFO    ] Launching Daemon at Sat Jun 27 13:34:25 IST 2026
[2026-06-27 13:34:25,544.544 INFO    ] ================================================
[2026-06-27 13:34:25,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:34:25
[2026-06-27 13:34:26,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:34:26,325.325 INFO    ] Initializing speech engine...
[2026-06-27 13:34:26,333.333 INFO    ] 2026-06-27 13:34:26
[2026-06-27 13:34:26,520.520 INFO    ] 2026-06-27 13:34:26
[2026-06-27 13:34:26,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:34:26,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:34:26,778.778 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:34:26,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:34:27,019.019 INFO    ] time= 27/06/2026 13:34:26
[2026-06-27 13:34:27,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:34:27,049.049 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:34:27,122.122 INFO    ] No existing commands found in stream
[2026-06-27 13:34:32,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:34:32,133.133 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-27 13:34:33,346.346 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 13:34:33,347.347 INFO    ] Checking for system updates...
[2026-06-27 13:34:33,368.368 INFO    ] 200
[2026-06-27 13:34:33,370.370 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:34:33,405.405 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:34:33,406.406 INFO    ] No update needed
[2026-06-27 13:34:33,408.408 INFO    ] Checking for camera pi updates...
[2026-06-27 13:34:33,427.427 INFO    ] 200
[2026-06-27 13:34:33,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:34:33,454.454 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:34:33,481.481 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:34:33,482.482 INFO    ] No camera update needed
[2026-06-27 13:34:33,484.484 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:34:33,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:34:33,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:34:33,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:34:35,530.530 INFO    ] ================================================
[2026-06-27 13:34:35,545.545 INFO    ] Launching Daemon at Sat Jun 27 13:34:35 IST 2026
[2026-06-27 13:34:35,556.556 INFO    ] ================================================
[2026-06-27 13:34:35,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:34:35
[2026-06-27 13:34:36,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:34:36,385.385 INFO    ] Initializing speech engine...
[2026-06-27 13:34:36,390.390 INFO    ] 2026-06-27 13:34:36
[2026-06-27 13:34:36,594.594 INFO    ] 2026-06-27 13:34:36
[2026-06-27 13:34:36,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:34:36,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:34:36,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:34:37,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:34:37,037.037 INFO    ] time= 27/06/2026 13:34:37
[2026-06-27 13:34:37,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:34:37,041.041 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:34:37,132.132 INFO    ] No existing commands found in stream
[2026-06-27 13:34:42,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:34:42,154.154 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-27 13:34:42,692.692 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 13:34:42,694.694 INFO    ] Checking for system updates...
[2026-06-27 13:34:42,715.715 INFO    ] 200
[2026-06-27 13:34:42,717.717 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:34:42,751.751 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:34:42,752.752 INFO    ] No update needed
[2026-06-27 13:34:42,754.754 INFO    ] Checking for camera pi updates...
[2026-06-27 13:34:42,774.774 INFO    ] 200
[2026-06-27 13:34:42,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:34:42,800.800 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:34:42,843.843 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:34:42,845.845 INFO    ] No camera update needed
[2026-06-27 13:34:42,846.846 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:34:42,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:34:42,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:34:42,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:34:44,894.894 INFO    ] ================================================
[2026-06-27 13:34:44,910.910 INFO    ] Launching Daemon at Sat Jun 27 13:34:44 IST 2026
[2026-06-27 13:34:44,920.920 INFO    ] ================================================
[2026-06-27 13:34:45,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:34:45
[2026-06-27 13:34:45,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:34:45,732.732 INFO    ] Initializing speech engine...
[2026-06-27 13:34:45,736.736 INFO    ] 2026-06-27 13:34:45
[2026-06-27 13:34:45,956.956 INFO    ] 2026-06-27 13:34:45
[2026-06-27 13:34:45,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:34:46,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:34:46,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:34:46,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:34:46,519.519 INFO    ] time= 27/06/2026 13:34:46
[2026-06-27 13:34:46,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:34:46,525.525 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:34:46,612.612 INFO    ] No existing commands found in stream
[2026-06-27 13:34:51,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:34:51,624.624 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-27 13:34:52,705.705 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 13:34:52,706.706 INFO    ] Checking for system updates...
[2026-06-27 13:34:52,727.727 INFO    ] 200
[2026-06-27 13:34:52,728.728 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:34:52,760.760 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:34:52,761.761 INFO    ] No update needed
[2026-06-27 13:34:52,762.762 INFO    ] Checking for camera pi updates...
[2026-06-27 13:34:52,783.783 INFO    ] 200
[2026-06-27 13:34:52,785.785 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:34:52,808.808 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:34:52,851.851 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:34:52,852.852 INFO    ] No camera update needed
[2026-06-27 13:34:52,853.853 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:34:52,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:34:52,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:34:52,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:34:54,901.901 INFO    ] ================================================
[2026-06-27 13:34:54,916.916 INFO    ] Launching Daemon at Sat Jun 27 13:34:54 IST 2026
[2026-06-27 13:34:54,926.926 INFO    ] ================================================
[2026-06-27 13:34:55,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:34:55
[2026-06-27 13:34:55,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:34:55,728.728 INFO    ] Initializing speech engine...
[2026-06-27 13:34:55,732.732 INFO    ] 2026-06-27 13:34:55
[2026-06-27 13:34:55,950.950 INFO    ] 2026-06-27 13:34:55
[2026-06-27 13:34:55,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:34:56,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:34:56,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:34:56,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:34:56,400.400 INFO    ] time= 27/06/2026 13:34:56
[2026-06-27 13:34:56,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:34:56,403.403 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:34:56,495.495 INFO    ] No existing commands found in stream
[2026-06-27 13:35:01,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:35:01,506.506 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-27 13:35:04,466.466 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 13:35:04,468.468 INFO    ] Checking for system updates...
[2026-06-27 13:35:04,493.493 INFO    ] 200
[2026-06-27 13:35:04,494.494 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:35:04,532.532 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:35:04,533.533 INFO    ] No update needed
[2026-06-27 13:35:04,535.535 INFO    ] Checking for camera pi updates...
[2026-06-27 13:35:04,558.558 INFO    ] 200
[2026-06-27 13:35:04,559.559 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:35:04,583.583 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:35:04,634.634 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:35:04,635.635 INFO    ] No camera update needed
[2026-06-27 13:35:04,636.636 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:35:04,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:35:04,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:35:04,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:35:06,684.684 INFO    ] ================================================
[2026-06-27 13:35:06,699.699 INFO    ] Launching Daemon at Sat Jun 27 13:35:06 IST 2026
[2026-06-27 13:35:06,709.709 INFO    ] ================================================
[2026-06-27 13:35:07,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:35:07
[2026-06-27 13:35:07,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:35:07,494.494 INFO    ] Initializing speech engine...
[2026-06-27 13:35:07,507.507 INFO    ] 2026-06-27 13:35:07
[2026-06-27 13:35:07,728.728 INFO    ] 2026-06-27 13:35:07
[2026-06-27 13:35:07,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:35:07,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:35:07,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:35:08,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:35:08,164.164 INFO    ] time= 27/06/2026 13:35:08
[2026-06-27 13:35:08,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:35:08,212.212 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:35:08,287.287 INFO    ] No existing commands found in stream
[2026-06-27 13:35:13,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:35:13,301.301 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-27 13:35:17,155.155 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 13:35:17,157.157 INFO    ] Checking for system updates...
[2026-06-27 13:35:17,177.177 INFO    ] 200
[2026-06-27 13:35:17,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:35:17,209.209 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:35:17,211.211 INFO    ] No update needed
[2026-06-27 13:35:17,212.212 INFO    ] Checking for camera pi updates...
[2026-06-27 13:35:17,233.233 INFO    ] 200
[2026-06-27 13:35:17,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:35:17,258.258 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:35:17,301.301 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:35:17,302.302 INFO    ] No camera update needed
[2026-06-27 13:35:17,304.304 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:35:17,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:35:17,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:35:17,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:35:19,354.354 INFO    ] ================================================
[2026-06-27 13:35:19,369.369 INFO    ] Launching Daemon at Sat Jun 27 13:35:19 IST 2026
[2026-06-27 13:35:19,380.380 INFO    ] ================================================
[2026-06-27 13:35:19,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:35:19
[2026-06-27 13:35:20,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:35:20,255.255 INFO    ] Initializing speech engine...
[2026-06-27 13:35:20,259.259 INFO    ] 2026-06-27 13:35:20
[2026-06-27 13:35:20,468.468 INFO    ] 2026-06-27 13:35:20
[2026-06-27 13:35:20,498.498 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:35:20,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:35:20,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:35:20,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:35:20,913.913 INFO    ] time= 27/06/2026 13:35:20
[2026-06-27 13:35:20,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:35:20,921.921 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:35:20,988.988 INFO    ] No existing commands found in stream
[2026-06-27 13:35:26,002.002 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:35:26,006.006 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-27 13:35:29,250.250 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 13:35:29,252.252 INFO    ] Checking for system updates...
[2026-06-27 13:35:29,273.273 INFO    ] 200
[2026-06-27 13:35:29,275.275 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:35:29,308.308 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:35:29,310.310 INFO    ] No update needed
[2026-06-27 13:35:29,311.311 INFO    ] Checking for camera pi updates...
[2026-06-27 13:35:29,333.333 INFO    ] 200
[2026-06-27 13:35:29,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:35:29,359.359 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:35:29,397.397 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:35:29,399.399 INFO    ] No camera update needed
[2026-06-27 13:35:29,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:35:29,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:35:29,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:35:29,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:35:31,449.449 INFO    ] ================================================
[2026-06-27 13:35:31,464.464 INFO    ] Launching Daemon at Sat Jun 27 13:35:31 IST 2026
[2026-06-27 13:35:31,475.475 INFO    ] ================================================
[2026-06-27 13:35:31,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:35:31
[2026-06-27 13:35:32,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:35:32,298.298 INFO    ] Initializing speech engine...
[2026-06-27 13:35:32,310.310 INFO    ] 2026-06-27 13:35:32
[2026-06-27 13:35:32,516.516 INFO    ] 2026-06-27 13:35:32
[2026-06-27 13:35:32,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:35:32,759.759 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:35:32,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:35:32,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:35:33,013.013 INFO    ] time= 27/06/2026 13:35:32
[2026-06-27 13:35:33,037.037 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:35:33,043.043 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:35:33,110.110 INFO    ] No existing commands found in stream
[2026-06-27 13:35:38,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:35:38,124.124 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-27 13:35:39,748.748 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:35:39,750.750 INFO    ] Checking for system updates...
[2026-06-27 13:35:39,771.771 INFO    ] 200
[2026-06-27 13:35:39,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:35:39,802.802 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:35:39,804.804 INFO    ] No update needed
[2026-06-27 13:35:39,805.805 INFO    ] Checking for camera pi updates...
[2026-06-27 13:35:39,825.825 INFO    ] 200
[2026-06-27 13:35:39,826.826 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:35:39,850.850 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:35:39,892.892 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:35:39,893.893 INFO    ] No camera update needed
[2026-06-27 13:35:39,895.895 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:35:39,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:35:39,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:35:39,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:35:41,940.940 INFO    ] ================================================
[2026-06-27 13:35:41,956.956 INFO    ] Launching Daemon at Sat Jun 27 13:35:41 IST 2026
[2026-06-27 13:35:41,967.967 INFO    ] ================================================
[2026-06-27 13:35:42,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:35:42
[2026-06-27 13:35:42,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:35:42,852.852 INFO    ] Initializing speech engine...
[2026-06-27 13:35:42,857.857 INFO    ] 2026-06-27 13:35:42
[2026-06-27 13:35:43,067.067 INFO    ] 2026-06-27 13:35:43
[2026-06-27 13:35:43,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:35:43,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:35:43,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:35:43,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:35:43,489.489 INFO    ] time= 27/06/2026 13:35:43
[2026-06-27 13:35:43,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:35:43,518.518 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:35:43,609.609 INFO    ] No existing commands found in stream
[2026-06-27 13:35:48,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:35:48,627.627 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-27 13:35:51,191.191 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 13:35:51,192.192 INFO    ] Checking for system updates...
[2026-06-27 13:35:51,214.214 INFO    ] 200
[2026-06-27 13:35:51,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:35:51,245.245 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:35:51,247.247 INFO    ] No update needed
[2026-06-27 13:35:51,248.248 INFO    ] Checking for camera pi updates...
[2026-06-27 13:35:51,269.269 INFO    ] 200
[2026-06-27 13:35:51,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:35:51,298.298 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:35:51,343.343 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:35:51,345.345 INFO    ] No camera update needed
[2026-06-27 13:35:51,346.346 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:35:51,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:35:51,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:35:51,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:35:53,391.391 INFO    ] ================================================
[2026-06-27 13:35:53,406.406 INFO    ] Launching Daemon at Sat Jun 27 13:35:53 IST 2026
[2026-06-27 13:35:53,417.417 INFO    ] ================================================
[2026-06-27 13:35:53,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:35:53
[2026-06-27 13:35:54,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:35:54,286.286 INFO    ] Initializing speech engine...
[2026-06-27 13:35:54,292.292 INFO    ] 2026-06-27 13:35:54
[2026-06-27 13:35:54,500.500 INFO    ] 2026-06-27 13:35:54
[2026-06-27 13:35:54,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:35:54,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:35:54,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:35:54,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:35:54,947.947 INFO    ] time= 27/06/2026 13:35:54
[2026-06-27 13:35:54,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:35:54,955.955 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:35:55,023.023 INFO    ] No existing commands found in stream
[2026-06-27 13:36:00,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:36:00,041.041 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-27 13:36:01,009.009 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 13:36:01,011.011 INFO    ] Checking for system updates...
[2026-06-27 13:36:01,034.034 INFO    ] 200
[2026-06-27 13:36:01,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:36:01,068.068 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:36:01,070.070 INFO    ] No update needed
[2026-06-27 13:36:01,071.071 INFO    ] Checking for camera pi updates...
[2026-06-27 13:36:01,090.090 INFO    ] 200
[2026-06-27 13:36:01,092.092 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:36:01,115.115 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:36:01,158.158 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:36:01,160.160 INFO    ] No camera update needed
[2026-06-27 13:36:01,161.161 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:36:01,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:36:01,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:36:01,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:36:03,202.202 INFO    ] ================================================
[2026-06-27 13:36:03,218.218 INFO    ] Launching Daemon at Sat Jun 27 13:36:03 IST 2026
[2026-06-27 13:36:03,229.229 INFO    ] ================================================
[2026-06-27 13:36:03,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:36:03
[2026-06-27 13:36:03,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:36:04,122.122 INFO    ] Initializing speech engine...
[2026-06-27 13:36:04,128.128 INFO    ] 2026-06-27 13:36:04
[2026-06-27 13:36:04,339.339 INFO    ] 2026-06-27 13:36:04
[2026-06-27 13:36:04,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:36:04,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:36:04,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:36:04,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:36:04,795.795 INFO    ] time= 27/06/2026 13:36:04
[2026-06-27 13:36:04,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:36:04,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:36:04,892.892 INFO    ] No existing commands found in stream
[2026-06-27 13:36:09,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:36:09,910.910 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-27 13:36:11,748.748 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 13:36:11,750.750 INFO    ] Checking for system updates...
[2026-06-27 13:36:11,772.772 INFO    ] 200
[2026-06-27 13:36:11,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:36:11,806.806 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:36:11,807.807 INFO    ] No update needed
[2026-06-27 13:36:11,809.809 INFO    ] Checking for camera pi updates...
[2026-06-27 13:36:11,830.830 INFO    ] 200
[2026-06-27 13:36:11,831.831 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:36:11,860.860 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:36:11,900.900 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:36:11,901.901 INFO    ] No camera update needed
[2026-06-27 13:36:11,903.903 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:36:11,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:36:11,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:36:11,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:36:13,950.950 INFO    ] ================================================
[2026-06-27 13:36:13,966.966 INFO    ] Launching Daemon at Sat Jun 27 13:36:13 IST 2026
[2026-06-27 13:36:13,978.978 INFO    ] ================================================
[2026-06-27 13:36:14,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:36:14
[2026-06-27 13:36:14,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:36:14,784.784 INFO    ] Initializing speech engine...
[2026-06-27 13:36:14,789.789 INFO    ] 2026-06-27 13:36:14
[2026-06-27 13:36:14,996.996 INFO    ] 2026-06-27 13:36:14
[2026-06-27 13:36:15,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:36:15,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:36:15,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:36:15,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:36:15,446.446 INFO    ] time= 27/06/2026 13:36:15
[2026-06-27 13:36:15,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:36:15,449.449 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:36:15,541.541 INFO    ] No existing commands found in stream
[2026-06-27 13:36:20,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:36:20,553.553 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-27 13:36:22,769.769 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:36:22,771.771 INFO    ] Checking for system updates...
[2026-06-27 13:36:22,794.794 INFO    ] 200
[2026-06-27 13:36:22,795.795 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:36:22,829.829 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:36:22,830.830 INFO    ] No update needed
[2026-06-27 13:36:22,832.832 INFO    ] Checking for camera pi updates...
[2026-06-27 13:36:22,854.854 INFO    ] 200
[2026-06-27 13:36:22,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:36:22,879.879 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:36:22,921.921 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:36:22,922.922 INFO    ] No camera update needed
[2026-06-27 13:36:22,924.924 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:36:22,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:36:22,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:36:22,932.932 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:36:24,973.973 INFO    ] ================================================
[2026-06-27 13:36:24,993.993 INFO    ] Launching Daemon at Sat Jun 27 13:36:24 IST 2026
[2026-06-27 13:36:25,005.005 INFO    ] ================================================
[2026-06-27 13:36:25,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:36:25
[2026-06-27 13:36:25,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:36:25,809.809 INFO    ] Initializing speech engine...
[2026-06-27 13:36:25,814.814 INFO    ] 2026-06-27 13:36:25
[2026-06-27 13:36:26,018.018 INFO    ] 2026-06-27 13:36:25
[2026-06-27 13:36:26,046.046 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:36:26,305.305 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:36:26,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:36:26,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:36:26,525.525 INFO    ] time= 27/06/2026 13:36:26
[2026-06-27 13:36:26,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:36:26,552.552 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:36:26,648.648 INFO    ] No existing commands found in stream
[2026-06-27 13:36:31,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:36:31,659.659 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-27 13:36:35,852.852 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 13:36:35,853.853 INFO    ] Checking for system updates...
[2026-06-27 13:36:35,874.874 INFO    ] 200
[2026-06-27 13:36:35,876.876 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:36:35,909.909 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:36:35,911.911 INFO    ] No update needed
[2026-06-27 13:36:35,912.912 INFO    ] Checking for camera pi updates...
[2026-06-27 13:36:35,932.932 INFO    ] 200
[2026-06-27 13:36:35,934.934 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:36:35,958.958 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:36:36,005.005 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:36:36,007.007 INFO    ] No camera update needed
[2026-06-27 13:36:36,008.008 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:36:36,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:36:36,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:36:36,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:36:38,055.055 INFO    ] ================================================
[2026-06-27 13:36:38,070.070 INFO    ] Launching Daemon at Sat Jun 27 13:36:38 IST 2026
[2026-06-27 13:36:38,080.080 INFO    ] ================================================
[2026-06-27 13:36:38,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:36:38
[2026-06-27 13:36:38,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:36:38,949.949 INFO    ] Initializing speech engine...
[2026-06-27 13:36:38,960.960 INFO    ] 2026-06-27 13:36:38
[2026-06-27 13:36:39,171.171 INFO    ] 2026-06-27 13:36:39
[2026-06-27 13:36:39,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:36:39,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:36:39,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:36:39,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:36:39,739.739 INFO    ] time= 27/06/2026 13:36:39
[2026-06-27 13:36:39,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:36:39,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:36:39,829.829 INFO    ] No existing commands found in stream
[2026-06-27 13:36:44,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:36:44,842.842 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-27 13:36:46,298.298 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 13:36:46,300.300 INFO    ] Checking for system updates...
[2026-06-27 13:36:46,321.321 INFO    ] 200
[2026-06-27 13:36:46,322.322 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:36:46,353.353 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:36:46,355.355 INFO    ] No update needed
[2026-06-27 13:36:46,356.356 INFO    ] Checking for camera pi updates...
[2026-06-27 13:36:46,376.376 INFO    ] 200
[2026-06-27 13:36:46,378.378 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:36:46,404.404 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:36:46,445.445 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:36:46,446.446 INFO    ] No camera update needed
[2026-06-27 13:36:46,447.447 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:36:46,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:36:46,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:36:46,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:36:48,494.494 INFO    ] ================================================
[2026-06-27 13:36:48,509.509 INFO    ] Launching Daemon at Sat Jun 27 13:36:48 IST 2026
[2026-06-27 13:36:48,520.520 INFO    ] ================================================
[2026-06-27 13:36:48,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:36:48
[2026-06-27 13:36:49,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:36:49,316.316 INFO    ] Initializing speech engine...
[2026-06-27 13:36:49,321.321 INFO    ] 2026-06-27 13:36:49
[2026-06-27 13:36:49,507.507 INFO    ] 2026-06-27 13:36:49
[2026-06-27 13:36:49,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:36:49,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:36:49,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:36:49,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:36:50,016.016 INFO    ] time= 27/06/2026 13:36:49
[2026-06-27 13:36:50,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:36:50,023.023 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:36:50,123.123 INFO    ] No existing commands found in stream
[2026-06-27 13:36:55,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:36:55,135.135 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-27 13:36:58,008.008 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 13:36:58,009.009 INFO    ] Checking for system updates...
[2026-06-27 13:36:58,030.030 INFO    ] 200
[2026-06-27 13:36:58,032.032 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:36:58,065.065 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:36:58,066.066 INFO    ] No update needed
[2026-06-27 13:36:58,068.068 INFO    ] Checking for camera pi updates...
[2026-06-27 13:36:58,087.087 INFO    ] 200
[2026-06-27 13:36:58,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:36:58,114.114 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:36:58,159.159 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:36:58,161.161 INFO    ] No camera update needed
[2026-06-27 13:36:58,163.163 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:36:58,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:36:58,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:36:58,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:37:00,210.210 INFO    ] ================================================
[2026-06-27 13:37:00,225.225 INFO    ] Launching Daemon at Sat Jun 27 13:37:00 IST 2026
[2026-06-27 13:37:00,235.235 INFO    ] ================================================
[2026-06-27 13:37:00,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:37:00
[2026-06-27 13:37:00,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:37:01,104.104 INFO    ] Initializing speech engine...
[2026-06-27 13:37:01,112.112 INFO    ] 2026-06-27 13:37:01
[2026-06-27 13:37:01,331.331 INFO    ] 2026-06-27 13:37:01
[2026-06-27 13:37:01,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:37:01,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:37:01,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:37:01,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:37:01,819.819 INFO    ] time= 27/06/2026 13:37:01
[2026-06-27 13:37:01,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:37:01,824.824 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:37:01,965.965 INFO    ] No existing commands found in stream
[2026-06-27 13:37:06,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:37:06,979.979 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-27 13:37:09,741.741 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 13:37:09,743.743 INFO    ] Checking for system updates...
[2026-06-27 13:37:09,764.764 INFO    ] 200
[2026-06-27 13:37:09,765.765 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:37:09,799.799 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:37:09,800.800 INFO    ] No update needed
[2026-06-27 13:37:09,801.801 INFO    ] Checking for camera pi updates...
[2026-06-27 13:37:09,821.821 INFO    ] 200
[2026-06-27 13:37:09,822.822 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:37:09,845.845 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:37:09,892.892 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:37:09,893.893 INFO    ] No camera update needed
[2026-06-27 13:37:09,895.895 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:37:09,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:37:09,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:37:09,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:37:11,940.940 INFO    ] ================================================
[2026-06-27 13:37:11,956.956 INFO    ] Launching Daemon at Sat Jun 27 13:37:11 IST 2026
[2026-06-27 13:37:11,966.966 INFO    ] ================================================
[2026-06-27 13:37:12,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:37:12
[2026-06-27 13:37:12,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:37:12,767.767 INFO    ] Initializing speech engine...
[2026-06-27 13:37:12,772.772 INFO    ] 2026-06-27 13:37:12
[2026-06-27 13:37:12,978.978 INFO    ] 2026-06-27 13:37:12
[2026-06-27 13:37:13,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:37:13,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:37:13,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:37:13,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:37:13,421.421 INFO    ] time= 27/06/2026 13:37:13
[2026-06-27 13:37:13,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:37:13,425.425 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:37:13,542.542 INFO    ] No existing commands found in stream
[2026-06-27 13:37:18,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:37:18,554.554 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-27 13:37:21,167.167 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 13:37:21,168.168 INFO    ] Checking for system updates...
[2026-06-27 13:37:21,190.190 INFO    ] 200
[2026-06-27 13:37:21,192.192 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:37:21,222.222 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:37:21,223.223 INFO    ] No update needed
[2026-06-27 13:37:21,225.225 INFO    ] Checking for camera pi updates...
[2026-06-27 13:37:21,248.248 INFO    ] 200
[2026-06-27 13:37:21,249.249 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:37:21,273.273 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:37:21,325.325 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:37:21,326.326 INFO    ] No camera update needed
[2026-06-27 13:37:21,327.327 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:37:21,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:37:21,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:37:21,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:37:23,374.374 INFO    ] ================================================
[2026-06-27 13:37:23,389.389 INFO    ] Launching Daemon at Sat Jun 27 13:37:23 IST 2026
[2026-06-27 13:37:23,400.400 INFO    ] ================================================
[2026-06-27 13:37:23,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:37:23
[2026-06-27 13:37:24,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:37:24,242.242 INFO    ] Initializing speech engine...
[2026-06-27 13:37:24,247.247 INFO    ] 2026-06-27 13:37:24
[2026-06-27 13:37:24,456.456 INFO    ] 2026-06-27 13:37:24
[2026-06-27 13:37:24,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:37:24,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:37:24,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:37:24,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:37:24,992.992 INFO    ] time= 27/06/2026 13:37:24
[2026-06-27 13:37:24,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:37:25,020.020 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:37:25,120.120 INFO    ] No existing commands found in stream
[2026-06-27 13:37:30,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:37:30,133.133 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-27 13:37:30,535.535 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 13:37:30,537.537 INFO    ] Checking for system updates...
[2026-06-27 13:37:30,558.558 INFO    ] 200
[2026-06-27 13:37:30,559.559 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:37:30,590.590 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:37:30,591.591 INFO    ] No update needed
[2026-06-27 13:37:30,593.593 INFO    ] Checking for camera pi updates...
[2026-06-27 13:37:30,612.612 INFO    ] 200
[2026-06-27 13:37:30,614.614 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:37:30,637.637 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:37:30,679.679 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:37:30,680.680 INFO    ] No camera update needed
[2026-06-27 13:37:30,682.682 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:37:30,683.683 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:37:30,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:37:30,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:37:32,731.731 INFO    ] ================================================
[2026-06-27 13:37:32,748.748 INFO    ] Launching Daemon at Sat Jun 27 13:37:32 IST 2026
[2026-06-27 13:37:32,759.759 INFO    ] ================================================
[2026-06-27 13:37:33,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:37:33
[2026-06-27 13:37:33,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:37:33,607.607 INFO    ] Initializing speech engine...
[2026-06-27 13:37:33,613.613 INFO    ] 2026-06-27 13:37:33
[2026-06-27 13:37:33,824.824 INFO    ] 2026-06-27 13:37:33
[2026-06-27 13:37:33,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:37:34,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:37:34,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:37:34,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:37:34,275.275 INFO    ] time= 27/06/2026 13:37:34
[2026-06-27 13:37:34,280.280 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:37:34,282.282 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:37:34,350.350 INFO    ] No existing commands found in stream
[2026-06-27 13:37:39,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:37:39,386.386 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-27 13:37:40,950.950 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 13:37:40,951.951 INFO    ] Checking for system updates...
[2026-06-27 13:37:40,974.974 INFO    ] 200
[2026-06-27 13:37:40,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:37:41,007.007 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:37:41,008.008 INFO    ] No update needed
[2026-06-27 13:37:41,010.010 INFO    ] Checking for camera pi updates...
[2026-06-27 13:37:41,029.029 INFO    ] 200
[2026-06-27 13:37:41,031.031 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:37:41,054.054 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:37:41,097.097 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:37:41,098.098 INFO    ] No camera update needed
[2026-06-27 13:37:41,099.099 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:37:41,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:37:41,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:37:41,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:37:43,151.151 INFO    ] ================================================
[2026-06-27 13:37:43,166.166 INFO    ] Launching Daemon at Sat Jun 27 13:37:43 IST 2026
[2026-06-27 13:37:43,178.178 INFO    ] ================================================
[2026-06-27 13:37:43,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:37:43
[2026-06-27 13:37:43,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:37:44,005.005 INFO    ] Initializing speech engine...
[2026-06-27 13:37:44,010.010 INFO    ] 2026-06-27 13:37:44
[2026-06-27 13:37:44,215.215 INFO    ] 2026-06-27 13:37:44
[2026-06-27 13:37:44,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:37:44,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:37:44,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:37:44,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:37:44,656.656 INFO    ] time= 27/06/2026 13:37:44
[2026-06-27 13:37:44,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:37:44,663.663 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:37:44,731.731 INFO    ] No existing commands found in stream
[2026-06-27 13:37:49,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:37:49,766.766 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-27 13:37:52,366.366 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:37:52,367.367 INFO    ] Checking for system updates...
[2026-06-27 13:37:52,388.388 INFO    ] 200
[2026-06-27 13:37:52,389.389 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:37:52,422.422 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:37:52,423.423 INFO    ] No update needed
[2026-06-27 13:37:52,425.425 INFO    ] Checking for camera pi updates...
[2026-06-27 13:37:52,444.444 INFO    ] 200
[2026-06-27 13:37:52,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:37:52,469.469 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:37:52,497.497 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:37:52,498.498 INFO    ] No camera update needed
[2026-06-27 13:37:52,499.499 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:37:52,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:37:52,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:37:52,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:37:54,546.546 INFO    ] ================================================
[2026-06-27 13:37:54,562.562 INFO    ] Launching Daemon at Sat Jun 27 13:37:54 IST 2026
[2026-06-27 13:37:54,573.573 INFO    ] ================================================
[2026-06-27 13:37:54,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:37:54
[2026-06-27 13:37:55,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:37:55,373.373 INFO    ] Initializing speech engine...
[2026-06-27 13:37:55,378.378 INFO    ] 2026-06-27 13:37:55
[2026-06-27 13:37:55,597.597 INFO    ] 2026-06-27 13:37:55
[2026-06-27 13:37:55,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:37:55,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:37:56,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:37:56,172.172 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:37:56,175.175 INFO    ] time= 27/06/2026 13:37:56
[2026-06-27 13:37:56,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:37:56,194.194 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:37:56,299.299 INFO    ] No existing commands found in stream
[2026-06-27 13:38:01,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:38:01,312.312 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-27 13:38:04,938.938 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 13:38:04,939.939 INFO    ] Checking for system updates...
[2026-06-27 13:38:04,960.960 INFO    ] 200
[2026-06-27 13:38:04,961.961 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:38:04,992.992 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:38:04,993.993 INFO    ] No update needed
[2026-06-27 13:38:04,995.995 INFO    ] Checking for camera pi updates...
[2026-06-27 13:38:05,015.015 INFO    ] 200
[2026-06-27 13:38:05,017.017 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:38:05,040.040 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:38:05,086.086 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:38:05,088.088 INFO    ] No camera update needed
[2026-06-27 13:38:05,089.089 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:38:05,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:38:05,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:38:05,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:38:07,143.143 INFO    ] ================================================
[2026-06-27 13:38:07,158.158 INFO    ] Launching Daemon at Sat Jun 27 13:38:07 IST 2026
[2026-06-27 13:38:07,169.169 INFO    ] ================================================
[2026-06-27 13:38:07,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:38:07
[2026-06-27 13:38:07,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:38:07,966.966 INFO    ] Initializing speech engine...
[2026-06-27 13:38:07,974.974 INFO    ] 2026-06-27 13:38:07
[2026-06-27 13:38:08,188.188 INFO    ] 2026-06-27 13:38:08
[2026-06-27 13:38:08,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:38:08,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:38:08,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:38:08,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:38:08,635.635 INFO    ] time= 27/06/2026 13:38:08
[2026-06-27 13:38:08,640.640 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:38:08,642.642 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:38:08,708.708 INFO    ] No existing commands found in stream
[2026-06-27 13:38:13,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:38:13,722.722 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-27 13:38:17,388.388 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 13:38:17,389.389 INFO    ] Checking for system updates...
[2026-06-27 13:38:17,410.410 INFO    ] 200
[2026-06-27 13:38:17,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:38:17,445.445 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:38:17,446.446 INFO    ] No update needed
[2026-06-27 13:38:17,447.447 INFO    ] Checking for camera pi updates...
[2026-06-27 13:38:17,467.467 INFO    ] 200
[2026-06-27 13:38:17,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:38:17,493.493 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:38:17,536.536 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:38:17,537.537 INFO    ] No camera update needed
[2026-06-27 13:38:17,539.539 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:38:17,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:38:17,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:38:17,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:38:19,585.585 INFO    ] ================================================
[2026-06-27 13:38:19,601.601 INFO    ] Launching Daemon at Sat Jun 27 13:38:19 IST 2026
[2026-06-27 13:38:19,612.612 INFO    ] ================================================
[2026-06-27 13:38:19,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:38:19
[2026-06-27 13:38:20,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:38:20,443.443 INFO    ] Initializing speech engine...
[2026-06-27 13:38:20,453.453 INFO    ] 2026-06-27 13:38:20
[2026-06-27 13:38:20,655.655 INFO    ] 2026-06-27 13:38:20
[2026-06-27 13:38:20,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:38:20,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:38:20,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:38:21,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:38:21,096.096 INFO    ] time= 27/06/2026 13:38:21
[2026-06-27 13:38:21,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:38:21,103.103 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:38:21,194.194 INFO    ] No existing commands found in stream
[2026-06-27 13:38:26,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:38:26,206.206 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-27 13:38:26,873.873 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 13:38:26,875.875 INFO    ] Checking for system updates...
[2026-06-27 13:38:26,896.896 INFO    ] 200
[2026-06-27 13:38:26,897.897 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:38:26,928.928 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:38:26,930.930 INFO    ] No update needed
[2026-06-27 13:38:26,931.931 INFO    ] Checking for camera pi updates...
[2026-06-27 13:38:26,951.951 INFO    ] 200
[2026-06-27 13:38:26,952.952 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:38:26,978.978 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:38:27,021.021 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:38:27,022.022 INFO    ] No camera update needed
[2026-06-27 13:38:27,024.024 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:38:27,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:38:27,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:38:27,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:38:29,069.069 INFO    ] ================================================
[2026-06-27 13:38:29,085.085 INFO    ] Launching Daemon at Sat Jun 27 13:38:29 IST 2026
[2026-06-27 13:38:29,096.096 INFO    ] ================================================
[2026-06-27 13:38:29,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:38:29
[2026-06-27 13:38:29,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:38:29,900.900 INFO    ] Initializing speech engine...
[2026-06-27 13:38:29,906.906 INFO    ] 2026-06-27 13:38:29
[2026-06-27 13:38:30,109.109 INFO    ] 2026-06-27 13:38:30
[2026-06-27 13:38:30,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:38:30,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:38:30,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:38:30,535.535 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:38:30,551.551 INFO    ] time= 27/06/2026 13:38:30
[2026-06-27 13:38:30,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:38:30,558.558 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:38:30,626.626 INFO    ] No existing commands found in stream
[2026-06-27 13:38:35,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:38:35,643.643 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-27 13:38:36,925.925 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 13:38:36,927.927 INFO    ] Checking for system updates...
[2026-06-27 13:38:36,948.948 INFO    ] 200
[2026-06-27 13:38:36,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:38:36,979.979 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:38:36,981.981 INFO    ] No update needed
[2026-06-27 13:38:36,982.982 INFO    ] Checking for camera pi updates...
[2026-06-27 13:38:37,001.001 INFO    ] 200
[2026-06-27 13:38:37,003.003 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:38:37,027.027 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:38:37,181.181 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:38:37,183.183 INFO    ] No camera update needed
[2026-06-27 13:38:37,184.184 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:38:37,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:38:37,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:38:37,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:38:39,230.230 INFO    ] ================================================
[2026-06-27 13:38:39,246.246 INFO    ] Launching Daemon at Sat Jun 27 13:38:39 IST 2026
[2026-06-27 13:38:39,257.257 INFO    ] ================================================
[2026-06-27 13:38:39,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:38:39
[2026-06-27 13:38:39,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:38:40,074.074 INFO    ] Initializing speech engine...
[2026-06-27 13:38:40,084.084 INFO    ] 2026-06-27 13:38:40
[2026-06-27 13:38:40,296.296 INFO    ] 2026-06-27 13:38:40
[2026-06-27 13:38:40,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:38:40,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:38:40,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:38:40,693.693 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:38:40,737.737 INFO    ] time= 27/06/2026 13:38:40
[2026-06-27 13:38:40,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:38:40,744.744 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:38:40,835.835 INFO    ] No existing commands found in stream
[2026-06-27 13:38:45,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:38:45,846.846 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-27 13:38:49,894.894 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:38:49,896.896 INFO    ] Checking for system updates...
[2026-06-27 13:38:49,918.918 INFO    ] 200
[2026-06-27 13:38:49,920.920 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:38:49,952.952 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:38:49,953.953 INFO    ] No update needed
[2026-06-27 13:38:49,955.955 INFO    ] Checking for camera pi updates...
[2026-06-27 13:38:49,975.975 INFO    ] 200
[2026-06-27 13:38:49,976.976 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:38:49,999.999 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:38:50,045.045 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:38:50,047.047 INFO    ] No camera update needed
[2026-06-27 13:38:50,048.048 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:38:50,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:38:50,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:38:50,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:38:52,095.095 INFO    ] ================================================
[2026-06-27 13:38:52,110.110 INFO    ] Launching Daemon at Sat Jun 27 13:38:52 IST 2026
[2026-06-27 13:38:52,122.122 INFO    ] ================================================
[2026-06-27 13:38:52,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:38:52
[2026-06-27 13:38:52,770.770 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:38:52,900.900 INFO    ] Initializing speech engine...
[2026-06-27 13:38:52,904.904 INFO    ] 2026-06-27 13:38:52
[2026-06-27 13:38:53,122.122 INFO    ] 2026-06-27 13:38:53
[2026-06-27 13:38:53,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:38:53,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:38:53,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:38:53,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:38:53,570.570 INFO    ] time= 27/06/2026 13:38:53
[2026-06-27 13:38:53,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:38:53,577.577 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:38:53,669.669 INFO    ] No existing commands found in stream
[2026-06-27 13:38:58,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:38:58,686.686 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-27 13:39:00,609.609 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:39:00,611.611 INFO    ] Checking for system updates...
[2026-06-27 13:39:00,632.632 INFO    ] 200
[2026-06-27 13:39:00,634.634 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:39:00,664.664 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:39:00,666.666 INFO    ] No update needed
[2026-06-27 13:39:00,667.667 INFO    ] Checking for camera pi updates...
[2026-06-27 13:39:00,686.686 INFO    ] 200
[2026-06-27 13:39:00,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:39:00,711.711 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:39:00,755.755 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:39:00,756.756 INFO    ] No camera update needed
[2026-06-27 13:39:00,758.758 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:39:00,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:39:00,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:39:00,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:39:02,800.800 INFO    ] ================================================
[2026-06-27 13:39:02,815.815 INFO    ] Launching Daemon at Sat Jun 27 13:39:02 IST 2026
[2026-06-27 13:39:02,826.826 INFO    ] ================================================
[2026-06-27 13:39:03,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:39:03
[2026-06-27 13:39:03,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:39:03,664.664 INFO    ] Initializing speech engine...
[2026-06-27 13:39:03,669.669 INFO    ] 2026-06-27 13:39:03
[2026-06-27 13:39:03,875.875 INFO    ] 2026-06-27 13:39:03
[2026-06-27 13:39:03,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:39:04,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:39:04,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:39:04,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:39:04,434.434 INFO    ] time= 27/06/2026 13:39:04
[2026-06-27 13:39:04,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:39:04,441.441 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:39:04,559.559 INFO    ] No existing commands found in stream
[2026-06-27 13:39:09,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:39:09,573.573 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-27 13:39:13,133.133 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 13:39:13,135.135 INFO    ] Checking for system updates...
[2026-06-27 13:39:13,156.156 INFO    ] 200
[2026-06-27 13:39:13,158.158 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:39:13,190.190 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:39:13,191.191 INFO    ] No update needed
[2026-06-27 13:39:13,193.193 INFO    ] Checking for camera pi updates...
[2026-06-27 13:39:13,230.230 INFO    ] 200
[2026-06-27 13:39:13,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:39:13,255.255 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:39:13,299.299 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:39:13,300.300 INFO    ] No camera update needed
[2026-06-27 13:39:13,301.301 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:39:13,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:39:13,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:39:13,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:39:15,348.348 INFO    ] ================================================
[2026-06-27 13:39:15,364.364 INFO    ] Launching Daemon at Sat Jun 27 13:39:15 IST 2026
[2026-06-27 13:39:15,375.375 INFO    ] ================================================
[2026-06-27 13:39:15,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:39:15
[2026-06-27 13:39:16,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:39:16,229.229 INFO    ] Initializing speech engine...
[2026-06-27 13:39:16,239.239 INFO    ] 2026-06-27 13:39:16
[2026-06-27 13:39:16,449.449 INFO    ] 2026-06-27 13:39:16
[2026-06-27 13:39:16,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:39:16,660.660 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:39:16,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:39:16,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:39:16,867.867 INFO    ] time= 27/06/2026 13:39:16
[2026-06-27 13:39:16,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:39:16,895.895 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:39:16,986.986 INFO    ] No existing commands found in stream
[2026-06-27 13:39:22,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:39:22,002.002 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-27 13:39:25,771.771 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 13:39:25,772.772 INFO    ] Checking for system updates...
[2026-06-27 13:39:25,794.794 INFO    ] 200
[2026-06-27 13:39:25,795.795 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:39:25,825.825 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:39:25,827.827 INFO    ] No update needed
[2026-06-27 13:39:25,828.828 INFO    ] Checking for camera pi updates...
[2026-06-27 13:39:25,847.847 INFO    ] 200
[2026-06-27 13:39:25,849.849 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:39:25,872.872 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:39:25,914.914 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:39:25,916.916 INFO    ] No camera update needed
[2026-06-27 13:39:25,917.917 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:39:25,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:39:27,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:39:27,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:39:30,000.000 INFO    ] ================================================
[2026-06-27 13:39:30,016.016 INFO    ] Launching Daemon at Sat Jun 27 13:39:30 IST 2026
[2026-06-27 13:39:30,026.026 INFO    ] ================================================
[2026-06-27 13:39:30,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:39:30
[2026-06-27 13:39:30,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:39:30,849.849 INFO    ] Initializing speech engine...
[2026-06-27 13:39:30,861.861 INFO    ] 2026-06-27 13:39:30
[2026-06-27 13:39:31,068.068 INFO    ] 2026-06-27 13:39:31
[2026-06-27 13:39:31,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:39:31,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:39:31,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:39:31,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:39:31,654.654 INFO    ] time= 27/06/2026 13:39:31
[2026-06-27 13:39:31,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:39:31,691.691 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:39:31,813.813 INFO    ] No existing commands found in stream
[2026-06-27 13:39:36,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:39:36,827.827 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-27 13:39:38,627.627 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 13:39:38,628.628 INFO    ] Checking for system updates...
[2026-06-27 13:39:38,650.650 INFO    ] 200
[2026-06-27 13:39:38,652.652 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:39:38,684.684 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:39:38,685.685 INFO    ] No update needed
[2026-06-27 13:39:38,686.686 INFO    ] Checking for camera pi updates...
[2026-06-27 13:39:38,707.707 INFO    ] 200
[2026-06-27 13:39:38,708.708 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:39:38,732.732 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:39:38,785.785 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:39:38,787.787 INFO    ] No camera update needed
[2026-06-27 13:39:38,788.788 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:39:38,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:39:38,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:39:38,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:39:40,834.834 INFO    ] ================================================
[2026-06-27 13:39:40,849.849 INFO    ] Launching Daemon at Sat Jun 27 13:39:40 IST 2026
[2026-06-27 13:39:40,860.860 INFO    ] ================================================
[2026-06-27 13:39:41,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:39:41
[2026-06-27 13:39:41,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:39:41,644.644 INFO    ] Initializing speech engine...
[2026-06-27 13:39:41,649.649 INFO    ] 2026-06-27 13:39:41
[2026-06-27 13:39:41,873.873 INFO    ] 2026-06-27 13:39:41
[2026-06-27 13:39:41,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:39:42,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:39:42,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:39:42,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:39:42,339.339 INFO    ] time= 27/06/2026 13:39:42
[2026-06-27 13:39:42,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:39:42,346.346 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:39:42,442.442 INFO    ] No existing commands found in stream
[2026-06-27 13:39:47,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:39:47,459.459 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-27 13:39:51,442.442 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 13:39:51,444.444 INFO    ] Checking for system updates...
[2026-06-27 13:39:51,486.486 INFO    ] 200
[2026-06-27 13:39:51,487.487 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:39:51,519.519 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:39:51,520.520 INFO    ] No update needed
[2026-06-27 13:39:51,521.521 INFO    ] Checking for camera pi updates...
[2026-06-27 13:39:51,541.541 INFO    ] 200
[2026-06-27 13:39:51,542.542 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:39:51,566.566 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:39:51,612.612 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:39:51,613.613 INFO    ] No camera update needed
[2026-06-27 13:39:51,614.614 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:39:51,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:39:51,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:39:51,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:39:53,658.658 INFO    ] ================================================
[2026-06-27 13:39:53,674.674 INFO    ] Launching Daemon at Sat Jun 27 13:39:53 IST 2026
[2026-06-27 13:39:53,685.685 INFO    ] ================================================
[2026-06-27 13:39:54,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:39:54
[2026-06-27 13:39:54,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:39:54,514.514 INFO    ] Initializing speech engine...
[2026-06-27 13:39:54,520.520 INFO    ] 2026-06-27 13:39:54
[2026-06-27 13:39:54,729.729 INFO    ] 2026-06-27 13:39:54
[2026-06-27 13:39:54,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:39:54,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:39:54,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:39:55,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:39:55,179.179 INFO    ] time= 27/06/2026 13:39:55
[2026-06-27 13:39:55,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:39:55,183.183 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:39:55,299.299 INFO    ] No existing commands found in stream
[2026-06-27 13:40:00,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:40:00,312.312 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-27 13:40:04,402.402 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 13:40:04,404.404 INFO    ] Checking for system updates...
[2026-06-27 13:40:04,426.426 INFO    ] 200
[2026-06-27 13:40:04,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:40:04,460.460 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:40:04,461.461 INFO    ] No update needed
[2026-06-27 13:40:04,463.463 INFO    ] Checking for camera pi updates...
[2026-06-27 13:40:04,486.486 INFO    ] 200
[2026-06-27 13:40:04,488.488 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:40:04,515.515 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:40:04,566.566 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:40:04,568.568 INFO    ] No camera update needed
[2026-06-27 13:40:04,569.569 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:40:04,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:40:04,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:40:04,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:40:06,616.616 INFO    ] ================================================
[2026-06-27 13:40:06,631.631 INFO    ] Launching Daemon at Sat Jun 27 13:40:06 IST 2026
[2026-06-27 13:40:06,642.642 INFO    ] ================================================
[2026-06-27 13:40:07,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:40:07
[2026-06-27 13:40:07,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:40:07,491.491 INFO    ] Initializing speech engine...
[2026-06-27 13:40:07,497.497 INFO    ] 2026-06-27 13:40:07
[2026-06-27 13:40:07,702.702 INFO    ] 2026-06-27 13:40:07
[2026-06-27 13:40:07,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:40:07,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:40:07,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:40:08,074.074 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:40:08,122.122 INFO    ] time= 27/06/2026 13:40:08
[2026-06-27 13:40:08,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:40:08,151.151 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:40:08,241.241 INFO    ] No existing commands found in stream
[2026-06-27 13:40:13,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:40:13,265.265 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-27 13:40:14,213.213 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 13:40:14,215.215 INFO    ] Checking for system updates...
[2026-06-27 13:40:14,235.235 INFO    ] 200
[2026-06-27 13:40:14,237.237 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:40:14,272.272 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:40:14,274.274 INFO    ] No update needed
[2026-06-27 13:40:14,275.275 INFO    ] Checking for camera pi updates...
[2026-06-27 13:40:14,295.295 INFO    ] 200
[2026-06-27 13:40:14,297.297 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:40:14,320.320 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:40:14,376.376 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:40:14,377.377 INFO    ] No camera update needed
[2026-06-27 13:40:14,378.378 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:40:14,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:40:14,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:40:14,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:40:16,425.425 INFO    ] ================================================
[2026-06-27 13:40:16,441.441 INFO    ] Launching Daemon at Sat Jun 27 13:40:16 IST 2026
[2026-06-27 13:40:16,452.452 INFO    ] ================================================
[2026-06-27 13:40:16,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:40:16
[2026-06-27 13:40:17,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:40:17,310.310 INFO    ] Initializing speech engine...
[2026-06-27 13:40:17,315.315 INFO    ] 2026-06-27 13:40:17
[2026-06-27 13:40:17,526.526 INFO    ] 2026-06-27 13:40:17
[2026-06-27 13:40:17,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:40:17,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:40:17,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:40:17,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:40:17,973.973 INFO    ] time= 27/06/2026 13:40:17
[2026-06-27 13:40:17,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:40:17,980.980 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:40:18,073.073 INFO    ] No existing commands found in stream
[2026-06-27 13:40:23,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:40:23,090.090 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-27 13:40:24,225.225 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 13:40:24,226.226 INFO    ] Checking for system updates...
[2026-06-27 13:40:24,247.247 INFO    ] 200
[2026-06-27 13:40:24,249.249 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:40:24,279.279 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:40:24,281.281 INFO    ] No update needed
[2026-06-27 13:40:24,282.282 INFO    ] Checking for camera pi updates...
[2026-06-27 13:40:24,302.302 INFO    ] 200
[2026-06-27 13:40:24,304.304 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:40:24,328.328 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:40:24,371.371 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:40:24,373.373 INFO    ] No camera update needed
[2026-06-27 13:40:24,374.374 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:40:24,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:40:24,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:40:24,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:40:26,420.420 INFO    ] ================================================
[2026-06-27 13:40:26,435.435 INFO    ] Launching Daemon at Sat Jun 27 13:40:26 IST 2026
[2026-06-27 13:40:26,447.447 INFO    ] ================================================
[2026-06-27 13:40:26,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:40:26
[2026-06-27 13:40:27,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:40:27,261.261 INFO    ] Initializing speech engine...
[2026-06-27 13:40:27,266.266 INFO    ] 2026-06-27 13:40:27
[2026-06-27 13:40:27,484.484 INFO    ] 2026-06-27 13:40:27
[2026-06-27 13:40:27,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:40:27,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:40:27,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:40:27,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:40:27,932.932 INFO    ] time= 27/06/2026 13:40:27
[2026-06-27 13:40:27,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:40:27,940.940 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:40:28,032.032 INFO    ] No existing commands found in stream
[2026-06-27 13:40:33,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:40:33,049.049 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-27 13:40:34,681.681 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:40:34,682.682 INFO    ] Checking for system updates...
[2026-06-27 13:40:34,704.704 INFO    ] 200
[2026-06-27 13:40:34,706.706 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:40:34,738.738 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:40:34,739.739 INFO    ] No update needed
[2026-06-27 13:40:34,740.740 INFO    ] Checking for camera pi updates...
[2026-06-27 13:40:34,760.760 INFO    ] 200
[2026-06-27 13:40:34,761.761 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:40:34,785.785 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:40:34,838.838 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:40:34,839.839 INFO    ] No camera update needed
[2026-06-27 13:40:34,840.840 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:40:34,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:40:34,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:40:34,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:40:36,887.887 INFO    ] ================================================
[2026-06-27 13:40:36,904.904 INFO    ] Launching Daemon at Sat Jun 27 13:40:36 IST 2026
[2026-06-27 13:40:36,916.916 INFO    ] ================================================
[2026-06-27 13:40:37,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:40:37
[2026-06-27 13:40:37,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:40:37,705.705 INFO    ] Initializing speech engine...
[2026-06-27 13:40:37,709.709 INFO    ] 2026-06-27 13:40:37
[2026-06-27 13:40:37,900.900 INFO    ] 2026-06-27 13:40:37
[2026-06-27 13:40:37,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:40:38,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:40:38,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:40:38,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:40:38,371.371 INFO    ] time= 27/06/2026 13:40:38
[2026-06-27 13:40:38,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:40:38,422.422 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:40:38,498.498 INFO    ] No existing commands found in stream
[2026-06-27 13:40:43,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:40:43,509.509 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-27 13:40:47,055.055 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 13:40:47,056.056 INFO    ] Checking for system updates...
[2026-06-27 13:40:47,078.078 INFO    ] 200
[2026-06-27 13:40:47,080.080 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:40:47,110.110 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:40:47,112.112 INFO    ] No update needed
[2026-06-27 13:40:47,113.113 INFO    ] Checking for camera pi updates...
[2026-06-27 13:40:47,133.133 INFO    ] 200
[2026-06-27 13:40:47,135.135 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:40:47,158.158 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:40:47,305.305 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:40:47,306.306 INFO    ] No camera update needed
[2026-06-27 13:40:47,307.307 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:40:47,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:40:47,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:40:47,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:40:49,353.353 INFO    ] ================================================
[2026-06-27 13:40:49,369.369 INFO    ] Launching Daemon at Sat Jun 27 13:40:49 IST 2026
[2026-06-27 13:40:49,381.381 INFO    ] ================================================
[2026-06-27 13:40:49,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:40:49
[2026-06-27 13:40:50,054.054 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:40:50,187.187 INFO    ] Initializing speech engine...
[2026-06-27 13:40:50,192.192 INFO    ] 2026-06-27 13:40:50
[2026-06-27 13:40:50,422.422 INFO    ] 2026-06-27 13:40:50
[2026-06-27 13:40:50,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:40:50,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:40:50,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:40:50,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:40:50,904.904 INFO    ] time= 27/06/2026 13:40:50
[2026-06-27 13:40:50,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:40:50,911.911 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:40:50,984.984 INFO    ] No existing commands found in stream
[2026-06-27 13:40:55,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:40:55,996.996 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-27 13:40:58,735.735 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 13:40:58,737.737 INFO    ] Checking for system updates...
[2026-06-27 13:40:58,782.782 INFO    ] 200
[2026-06-27 13:40:58,784.784 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:40:58,814.814 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:40:58,815.815 INFO    ] No update needed
[2026-06-27 13:40:58,817.817 INFO    ] Checking for camera pi updates...
[2026-06-27 13:40:58,836.836 INFO    ] 200
[2026-06-27 13:40:58,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:40:58,861.861 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:40:58,903.903 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:40:58,905.905 INFO    ] No camera update needed
[2026-06-27 13:40:58,906.906 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:40:58,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:40:58,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:40:58,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:41:00,951.951 INFO    ] ================================================
[2026-06-27 13:41:00,967.967 INFO    ] Launching Daemon at Sat Jun 27 13:41:00 IST 2026
[2026-06-27 13:41:00,978.978 INFO    ] ================================================
[2026-06-27 13:41:01,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:41:01
[2026-06-27 13:41:01,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:41:01,801.801 INFO    ] Initializing speech engine...
[2026-06-27 13:41:01,810.810 INFO    ] 2026-06-27 13:41:01
[2026-06-27 13:41:02,016.016 INFO    ] 2026-06-27 13:41:02
[2026-06-27 13:41:02,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:41:02,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:41:02,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:41:02,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:41:02,436.436 INFO    ] time= 27/06/2026 13:41:02
[2026-06-27 13:41:02,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:41:02,466.466 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:41:02,598.598 INFO    ] No existing commands found in stream
[2026-06-27 13:41:07,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:41:07,629.629 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-27 13:41:09,615.615 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:41:09,616.616 INFO    ] Checking for system updates...
[2026-06-27 13:41:09,637.637 INFO    ] 200
[2026-06-27 13:41:09,639.639 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:41:09,669.669 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:41:09,670.670 INFO    ] No update needed
[2026-06-27 13:41:09,672.672 INFO    ] Checking for camera pi updates...
[2026-06-27 13:41:09,692.692 INFO    ] 200
[2026-06-27 13:41:09,694.694 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:41:09,718.718 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:41:09,768.768 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:41:09,770.770 INFO    ] No camera update needed
[2026-06-27 13:41:09,771.771 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:41:09,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:41:09,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:41:09,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:41:11,819.819 INFO    ] ================================================
[2026-06-27 13:41:11,834.834 INFO    ] Launching Daemon at Sat Jun 27 13:41:11 IST 2026
[2026-06-27 13:41:11,846.846 INFO    ] ================================================
[2026-06-27 13:41:12,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:41:12
[2026-06-27 13:41:12,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:41:12,698.698 INFO    ] Initializing speech engine...
[2026-06-27 13:41:12,708.708 INFO    ] 2026-06-27 13:41:12
[2026-06-27 13:41:12,920.920 INFO    ] 2026-06-27 13:41:12
[2026-06-27 13:41:12,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:41:13,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:41:13,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:41:13,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:41:13,487.487 INFO    ] time= 27/06/2026 13:41:13
[2026-06-27 13:41:13,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:41:13,499.499 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:41:13,614.614 INFO    ] No existing commands found in stream
[2026-06-27 13:41:18,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:41:18,628.628 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-27 13:41:20,028.028 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:41:20,030.030 INFO    ] Checking for system updates...
[2026-06-27 13:41:20,051.051 INFO    ] 200
[2026-06-27 13:41:20,052.052 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:41:20,083.083 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:41:20,085.085 INFO    ] No update needed
[2026-06-27 13:41:20,086.086 INFO    ] Checking for camera pi updates...
[2026-06-27 13:41:20,105.105 INFO    ] 200
[2026-06-27 13:41:20,106.106 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:41:20,130.130 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:41:20,182.182 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:41:20,184.184 INFO    ] No camera update needed
[2026-06-27 13:41:20,185.185 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:41:20,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:41:20,189.189 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:41:20,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:41:22,231.231 INFO    ] ================================================
[2026-06-27 13:41:22,247.247 INFO    ] Launching Daemon at Sat Jun 27 13:41:22 IST 2026
[2026-06-27 13:41:22,258.258 INFO    ] ================================================
[2026-06-27 13:41:22,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:41:22
[2026-06-27 13:41:22,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:41:23,032.032 INFO    ] Initializing speech engine...
[2026-06-27 13:41:23,038.038 INFO    ] 2026-06-27 13:41:23
[2026-06-27 13:41:23,240.240 INFO    ] 2026-06-27 13:41:23
[2026-06-27 13:41:23,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:41:23,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:41:23,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:41:23,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:41:23,756.756 INFO    ] time= 27/06/2026 13:41:23
[2026-06-27 13:41:23,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:41:23,782.782 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:41:23,879.879 INFO    ] No existing commands found in stream
[2026-06-27 13:41:28,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:41:28,892.892 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-27 13:41:29,810.810 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:41:29,811.811 INFO    ] Checking for system updates...
[2026-06-27 13:41:29,832.832 INFO    ] 200
[2026-06-27 13:41:29,834.834 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:41:29,868.868 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:41:29,870.870 INFO    ] No update needed
[2026-06-27 13:41:29,871.871 INFO    ] Checking for camera pi updates...
[2026-06-27 13:41:29,895.895 INFO    ] 200
[2026-06-27 13:41:29,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:41:29,923.923 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:41:29,979.979 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:41:29,980.980 INFO    ] No camera update needed
[2026-06-27 13:41:29,982.982 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:41:29,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:41:29,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:41:29,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:41:32,030.030 INFO    ] ================================================
[2026-06-27 13:41:32,048.048 INFO    ] Launching Daemon at Sat Jun 27 13:41:32 IST 2026
[2026-06-27 13:41:32,056.056 INFO    ] ================================================
[2026-06-27 13:41:32,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:41:32
[2026-06-27 13:41:32,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:41:32,877.877 INFO    ] Initializing speech engine...
[2026-06-27 13:41:32,882.882 INFO    ] 2026-06-27 13:41:32
[2026-06-27 13:41:33,103.103 INFO    ] 2026-06-27 13:41:33
[2026-06-27 13:41:33,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:41:33,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:41:33,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:41:33,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:41:33,545.545 INFO    ] time= 27/06/2026 13:41:33
[2026-06-27 13:41:33,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:41:33,552.552 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:41:33,643.643 INFO    ] No existing commands found in stream
[2026-06-27 13:41:38,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:41:38,660.660 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-27 13:41:40,759.759 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 13:41:40,761.761 INFO    ] Checking for system updates...
[2026-06-27 13:41:40,781.781 INFO    ] 200
[2026-06-27 13:41:40,783.783 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:41:40,815.815 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:41:40,817.817 INFO    ] No update needed
[2026-06-27 13:41:40,818.818 INFO    ] Checking for camera pi updates...
[2026-06-27 13:41:40,839.839 INFO    ] 200
[2026-06-27 13:41:40,840.840 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:41:40,863.863 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:41:40,909.909 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:41:40,910.910 INFO    ] No camera update needed
[2026-06-27 13:41:40,911.911 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:41:40,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:41:40,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:41:40,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:41:42,958.958 INFO    ] ================================================
[2026-06-27 13:41:42,974.974 INFO    ] Launching Daemon at Sat Jun 27 13:41:42 IST 2026
[2026-06-27 13:41:42,985.985 INFO    ] ================================================
[2026-06-27 13:41:43,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:41:43
[2026-06-27 13:41:43,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:41:43,835.835 INFO    ] Initializing speech engine...
[2026-06-27 13:41:43,845.845 INFO    ] 2026-06-27 13:41:43
[2026-06-27 13:41:44,054.054 INFO    ] 2026-06-27 13:41:44
[2026-06-27 13:41:44,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:41:44,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:41:44,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:41:44,474.474 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:41:44,498.498 INFO    ] time= 27/06/2026 13:41:44
[2026-06-27 13:41:44,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:41:44,506.506 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:41:44,596.596 INFO    ] No existing commands found in stream
[2026-06-27 13:41:49,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:41:49,614.614 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-27 13:41:54,200.200 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 13:41:54,202.202 INFO    ] Checking for system updates...
[2026-06-27 13:41:54,223.223 INFO    ] 200
[2026-06-27 13:41:54,224.224 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:41:54,255.255 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:41:54,257.257 INFO    ] No update needed
[2026-06-27 13:41:54,258.258 INFO    ] Checking for camera pi updates...
[2026-06-27 13:41:54,278.278 INFO    ] 200
[2026-06-27 13:41:54,279.279 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:41:54,303.303 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:41:54,335.335 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:41:54,337.337 INFO    ] No camera update needed
[2026-06-27 13:41:54,338.338 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:41:54,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:41:54,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:41:54,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:41:56,386.386 INFO    ] ================================================
[2026-06-27 13:41:56,402.402 INFO    ] Launching Daemon at Sat Jun 27 13:41:56 IST 2026
[2026-06-27 13:41:56,413.413 INFO    ] ================================================
[2026-06-27 13:41:56,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:41:56
[2026-06-27 13:41:57,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:41:57,280.280 INFO    ] Initializing speech engine...
[2026-06-27 13:41:57,286.286 INFO    ] 2026-06-27 13:41:57
[2026-06-27 13:41:57,495.495 INFO    ] 2026-06-27 13:41:57
[2026-06-27 13:41:57,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:41:57,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:41:57,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:41:57,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:41:57,938.938 INFO    ] time= 27/06/2026 13:41:57
[2026-06-27 13:41:57,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:41:57,945.945 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:41:58,012.012 INFO    ] No existing commands found in stream
[2026-06-27 13:42:03,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:42:03,025.025 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-27 13:42:06,040.040 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:42:06,041.041 INFO    ] Checking for system updates...
[2026-06-27 13:42:06,063.063 INFO    ] 200
[2026-06-27 13:42:06,064.064 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:42:06,095.095 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:42:06,097.097 INFO    ] No update needed
[2026-06-27 13:42:06,098.098 INFO    ] Checking for camera pi updates...
[2026-06-27 13:42:06,118.118 INFO    ] 200
[2026-06-27 13:42:06,119.119 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:42:06,144.144 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:42:06,188.188 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:42:06,190.190 INFO    ] No camera update needed
[2026-06-27 13:42:06,191.191 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:42:06,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:42:06,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:42:06,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:42:08,240.240 INFO    ] ================================================
[2026-06-27 13:42:08,255.255 INFO    ] Launching Daemon at Sat Jun 27 13:42:08 IST 2026
[2026-06-27 13:42:08,267.267 INFO    ] ================================================
[2026-06-27 13:42:08,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:42:08
[2026-06-27 13:42:08,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:42:09,077.077 INFO    ] Initializing speech engine...
[2026-06-27 13:42:09,082.082 INFO    ] 2026-06-27 13:42:09
[2026-06-27 13:42:09,286.286 INFO    ] 2026-06-27 13:42:09
[2026-06-27 13:42:09,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:42:09,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:42:09,505.505 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:42:09,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:42:09,720.720 INFO    ] time= 27/06/2026 13:42:09
[2026-06-27 13:42:09,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:42:09,736.736 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:42:09,802.802 INFO    ] No existing commands found in stream
[2026-06-27 13:42:14,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:42:14,816.816 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-27 13:42:16,452.452 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:42:16,454.454 INFO    ] Checking for system updates...
[2026-06-27 13:42:16,475.475 INFO    ] 200
[2026-06-27 13:42:16,476.476 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:42:16,508.508 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:42:16,509.509 INFO    ] No update needed
[2026-06-27 13:42:16,510.510 INFO    ] Checking for camera pi updates...
[2026-06-27 13:42:16,530.530 INFO    ] 200
[2026-06-27 13:42:16,532.532 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:42:16,555.555 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:42:16,591.591 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:42:16,592.592 INFO    ] No camera update needed
[2026-06-27 13:42:16,594.594 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:42:16,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:42:16,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:42:16,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:42:18,640.640 INFO    ] ================================================
[2026-06-27 13:42:18,656.656 INFO    ] Launching Daemon at Sat Jun 27 13:42:18 IST 2026
[2026-06-27 13:42:18,667.667 INFO    ] ================================================
[2026-06-27 13:42:19,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:42:19
[2026-06-27 13:42:19,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:42:19,500.500 INFO    ] Initializing speech engine...
[2026-06-27 13:42:19,505.505 INFO    ] 2026-06-27 13:42:19
[2026-06-27 13:42:19,711.711 INFO    ] 2026-06-27 13:42:19
[2026-06-27 13:42:19,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:42:19,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:42:19,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:42:20,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:42:20,153.153 INFO    ] time= 27/06/2026 13:42:20
[2026-06-27 13:42:20,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:42:20,160.160 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:42:20,251.251 INFO    ] No existing commands found in stream
[2026-06-27 13:42:25,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:42:25,268.268 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-27 13:42:28,498.498 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 13:42:28,500.500 INFO    ] Checking for system updates...
[2026-06-27 13:42:28,521.521 INFO    ] 200
[2026-06-27 13:42:28,523.523 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:42:28,554.554 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:42:28,555.555 INFO    ] No update needed
[2026-06-27 13:42:28,557.557 INFO    ] Checking for camera pi updates...
[2026-06-27 13:42:28,578.578 INFO    ] 200
[2026-06-27 13:42:28,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:42:28,608.608 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:42:28,648.648 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:42:28,650.650 INFO    ] No camera update needed
[2026-06-27 13:42:28,651.651 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:42:28,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:42:28,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:42:28,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:42:30,700.700 INFO    ] ================================================
[2026-06-27 13:42:30,715.715 INFO    ] Launching Daemon at Sat Jun 27 13:42:30 IST 2026
[2026-06-27 13:42:30,726.726 INFO    ] ================================================
[2026-06-27 13:42:31,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:42:31
[2026-06-27 13:42:31,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:42:31,577.577 INFO    ] Initializing speech engine...
[2026-06-27 13:42:31,585.585 INFO    ] 2026-06-27 13:42:31
[2026-06-27 13:42:31,820.820 INFO    ] 2026-06-27 13:42:31
[2026-06-27 13:42:31,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:42:32,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:42:32,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:42:32,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:42:32,166.166 INFO    ] time= 27/06/2026 13:42:32
[2026-06-27 13:42:32,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:42:32,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:42:32,242.242 INFO    ] No existing commands found in stream
[2026-06-27 13:42:37,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:42:37,254.254 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-27 13:42:38,318.318 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 13:42:38,320.320 INFO    ] Checking for system updates...
[2026-06-27 13:42:38,341.341 INFO    ] 200
[2026-06-27 13:42:38,342.342 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:42:38,373.373 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:42:38,374.374 INFO    ] No update needed
[2026-06-27 13:42:38,375.375 INFO    ] Checking for camera pi updates...
[2026-06-27 13:42:38,395.395 INFO    ] 200
[2026-06-27 13:42:38,396.396 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:42:38,421.421 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:42:38,477.477 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:42:38,478.478 INFO    ] No camera update needed
[2026-06-27 13:42:38,480.480 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:42:38,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:42:38,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:42:38,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:42:40,527.527 INFO    ] ================================================
[2026-06-27 13:42:40,543.543 INFO    ] Launching Daemon at Sat Jun 27 13:42:40 IST 2026
[2026-06-27 13:42:40,554.554 INFO    ] ================================================
[2026-06-27 13:42:40,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:42:40
[2026-06-27 13:42:41,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:42:41,394.394 INFO    ] Initializing speech engine...
[2026-06-27 13:42:41,405.405 INFO    ] 2026-06-27 13:42:41
[2026-06-27 13:42:41,619.619 INFO    ] 2026-06-27 13:42:41
[2026-06-27 13:42:41,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:42:41,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:42:41,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:42:41,986.986 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:42:42,044.044 INFO    ] time= 27/06/2026 13:42:41
[2026-06-27 13:42:42,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:42:42,073.073 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:42:42,141.141 INFO    ] No existing commands found in stream
[2026-06-27 13:42:47,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:42:47,154.154 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-27 13:42:48,346.346 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 13:42:48,348.348 INFO    ] Checking for system updates...
[2026-06-27 13:42:48,369.369 INFO    ] 200
[2026-06-27 13:42:48,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:42:48,401.401 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:42:48,402.402 INFO    ] No update needed
[2026-06-27 13:42:48,404.404 INFO    ] Checking for camera pi updates...
[2026-06-27 13:42:48,423.423 INFO    ] 200
[2026-06-27 13:42:48,425.425 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:42:48,450.450 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:42:48,599.599 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:42:48,600.600 INFO    ] No camera update needed
[2026-06-27 13:42:48,602.602 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:42:48,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:42:48,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:42:48,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:42:50,649.649 INFO    ] ================================================
[2026-06-27 13:42:50,666.666 INFO    ] Launching Daemon at Sat Jun 27 13:42:50 IST 2026
[2026-06-27 13:42:50,676.676 INFO    ] ================================================
[2026-06-27 13:42:51,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:42:51
[2026-06-27 13:42:51,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:42:51,466.466 INFO    ] Initializing speech engine...
[2026-06-27 13:42:51,469.469 INFO    ] 2026-06-27 13:42:51
[2026-06-27 13:42:51,690.690 INFO    ] 2026-06-27 13:42:51
[2026-06-27 13:42:51,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:42:51,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:42:51,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:42:52,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:42:52,135.135 INFO    ] time= 27/06/2026 13:42:52
[2026-06-27 13:42:52,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:42:52,141.141 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:42:52,234.234 INFO    ] No existing commands found in stream
[2026-06-27 13:42:57,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:42:57,246.246 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-27 13:43:01,157.157 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 13:43:01,159.159 INFO    ] Checking for system updates...
[2026-06-27 13:43:01,180.180 INFO    ] 200
[2026-06-27 13:43:01,181.181 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:43:01,212.212 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:43:01,213.213 INFO    ] No update needed
[2026-06-27 13:43:01,214.214 INFO    ] Checking for camera pi updates...
[2026-06-27 13:43:01,235.235 INFO    ] 200
[2026-06-27 13:43:01,237.237 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:43:01,261.261 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:43:01,324.324 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:43:01,325.325 INFO    ] No camera update needed
[2026-06-27 13:43:01,326.326 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:43:01,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:43:01,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:43:01,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:43:03,368.368 INFO    ] ================================================
[2026-06-27 13:43:03,385.385 INFO    ] Launching Daemon at Sat Jun 27 13:43:03 IST 2026
[2026-06-27 13:43:03,396.396 INFO    ] ================================================
[2026-06-27 13:43:03,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:43:03
[2026-06-27 13:43:04,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:43:04,246.246 INFO    ] Initializing speech engine...
[2026-06-27 13:43:04,256.256 INFO    ] 2026-06-27 13:43:04
[2026-06-27 13:43:04,462.462 INFO    ] 2026-06-27 13:43:04
[2026-06-27 13:43:04,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:43:04,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:43:04,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:43:04,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:43:04,912.912 INFO    ] time= 27/06/2026 13:43:04
[2026-06-27 13:43:04,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:43:04,915.915 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:43:05,033.033 INFO    ] No existing commands found in stream
[2026-06-27 13:43:10,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:43:10,045.045 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-27 13:43:12,957.957 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 13:43:12,958.958 INFO    ] Checking for system updates...
[2026-06-27 13:43:12,980.980 INFO    ] 200
[2026-06-27 13:43:12,982.982 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:43:13,012.012 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:43:13,014.014 INFO    ] No update needed
[2026-06-27 13:43:13,015.015 INFO    ] Checking for camera pi updates...
[2026-06-27 13:43:13,035.035 INFO    ] 200
[2026-06-27 13:43:13,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:43:13,060.060 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:43:13,105.105 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:43:13,107.107 INFO    ] No camera update needed
[2026-06-27 13:43:13,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:43:13,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:43:13,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:43:13,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:43:15,154.154 INFO    ] ================================================
[2026-06-27 13:43:15,170.170 INFO    ] Launching Daemon at Sat Jun 27 13:43:15 IST 2026
[2026-06-27 13:43:15,182.182 INFO    ] ================================================
[2026-06-27 13:43:15,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:43:15
[2026-06-27 13:43:15,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:43:16,007.007 INFO    ] Initializing speech engine...
[2026-06-27 13:43:16,012.012 INFO    ] 2026-06-27 13:43:16
[2026-06-27 13:43:16,217.217 INFO    ] 2026-06-27 13:43:16
[2026-06-27 13:43:16,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:43:16,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:43:16,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:43:16,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:43:16,656.656 INFO    ] time= 27/06/2026 13:43:16
[2026-06-27 13:43:16,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:43:16,729.729 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:43:16,848.848 INFO    ] No existing commands found in stream
[2026-06-27 13:43:21,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:43:21,861.861 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-27 13:43:22,727.727 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 13:43:22,729.729 INFO    ] Checking for system updates...
[2026-06-27 13:43:22,750.750 INFO    ] 200
[2026-06-27 13:43:22,752.752 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:43:22,784.784 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:43:22,785.785 INFO    ] No update needed
[2026-06-27 13:43:22,787.787 INFO    ] Checking for camera pi updates...
[2026-06-27 13:43:22,808.808 INFO    ] 200
[2026-06-27 13:43:22,810.810 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:43:22,833.833 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:43:22,876.876 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:43:22,877.877 INFO    ] No camera update needed
[2026-06-27 13:43:22,879.879 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:43:22,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:43:22,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:43:22,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:43:24,925.925 INFO    ] ================================================
[2026-06-27 13:43:24,940.940 INFO    ] Launching Daemon at Sat Jun 27 13:43:24 IST 2026
[2026-06-27 13:43:24,952.952 INFO    ] ================================================
[2026-06-27 13:43:25,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:43:25
[2026-06-27 13:43:25,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:43:25,771.771 INFO    ] Initializing speech engine...
[2026-06-27 13:43:25,776.776 INFO    ] 2026-06-27 13:43:25
[2026-06-27 13:43:25,981.981 INFO    ] 2026-06-27 13:43:25
[2026-06-27 13:43:26,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:43:26,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:43:26,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:43:26,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:43:26,508.508 INFO    ] time= 27/06/2026 13:43:26
[2026-06-27 13:43:26,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:43:26,526.526 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:43:26,633.633 INFO    ] No existing commands found in stream
[2026-06-27 13:43:31,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:43:31,650.650 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-27 13:43:36,084.084 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 13:43:36,086.086 INFO    ] Checking for system updates...
[2026-06-27 13:43:36,107.107 INFO    ] 200
[2026-06-27 13:43:36,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:43:36,141.141 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:43:36,142.142 INFO    ] No update needed
[2026-06-27 13:43:36,143.143 INFO    ] Checking for camera pi updates...
[2026-06-27 13:43:36,164.164 INFO    ] 200
[2026-06-27 13:43:36,166.166 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:43:36,189.189 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:43:36,226.226 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:43:36,228.228 INFO    ] No camera update needed
[2026-06-27 13:43:36,229.229 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:43:36,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:43:36,233.233 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:43:36,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:43:38,277.277 INFO    ] ================================================
[2026-06-27 13:43:38,293.293 INFO    ] Launching Daemon at Sat Jun 27 13:43:38 IST 2026
[2026-06-27 13:43:38,304.304 INFO    ] ================================================
[2026-06-27 13:43:38,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:43:38
[2026-06-27 13:43:39,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:43:39,195.195 INFO    ] Initializing speech engine...
[2026-06-27 13:43:39,200.200 INFO    ] 2026-06-27 13:43:39
[2026-06-27 13:43:39,416.416 INFO    ] 2026-06-27 13:43:39
[2026-06-27 13:43:39,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:43:39,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:43:39,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:43:39,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:43:39,848.848 INFO    ] time= 27/06/2026 13:43:39
[2026-06-27 13:43:39,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:43:39,878.878 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:43:39,970.970 INFO    ] No existing commands found in stream
[2026-06-27 13:43:44,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:43:44,988.988 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-27 13:43:47,997.997 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 13:43:47,998.998 INFO    ] Checking for system updates...
[2026-06-27 13:43:48,021.021 INFO    ] 200
[2026-06-27 13:43:48,023.023 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:43:48,053.053 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:43:48,055.055 INFO    ] No update needed
[2026-06-27 13:43:48,056.056 INFO    ] Checking for camera pi updates...
[2026-06-27 13:43:48,076.076 INFO    ] 200
[2026-06-27 13:43:48,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:43:48,100.100 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:43:48,142.142 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:43:48,144.144 INFO    ] No camera update needed
[2026-06-27 13:43:48,145.145 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:43:48,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:43:48,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:43:48,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:43:50,191.191 INFO    ] ================================================
[2026-06-27 13:43:50,207.207 INFO    ] Launching Daemon at Sat Jun 27 13:43:50 IST 2026
[2026-06-27 13:43:50,219.219 INFO    ] ================================================
[2026-06-27 13:43:50,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:43:50
[2026-06-27 13:43:50,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:43:51,068.068 INFO    ] Initializing speech engine...
[2026-06-27 13:43:51,073.073 INFO    ] 2026-06-27 13:43:51
[2026-06-27 13:43:51,286.286 INFO    ] 2026-06-27 13:43:51
[2026-06-27 13:43:51,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:43:51,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:43:51,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:43:51,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:43:51,733.733 INFO    ] time= 27/06/2026 13:43:51
[2026-06-27 13:43:51,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:43:51,742.742 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:43:51,809.809 INFO    ] No existing commands found in stream
[2026-06-27 13:43:56,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:43:56,830.830 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-27 13:43:57,687.687 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 13:43:57,689.689 INFO    ] Checking for system updates...
[2026-06-27 13:43:57,710.710 INFO    ] 200
[2026-06-27 13:43:57,711.711 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:43:57,746.746 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:43:57,748.748 INFO    ] No update needed
[2026-06-27 13:43:57,749.749 INFO    ] Checking for camera pi updates...
[2026-06-27 13:43:57,770.770 INFO    ] 200
[2026-06-27 13:43:57,771.771 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:43:57,795.795 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:43:57,847.847 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:43:57,849.849 INFO    ] No camera update needed
[2026-06-27 13:43:57,850.850 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:43:57,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:43:57,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:43:57,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:43:59,897.897 INFO    ] ================================================
[2026-06-27 13:43:59,912.912 INFO    ] Launching Daemon at Sat Jun 27 13:43:59 IST 2026
[2026-06-27 13:43:59,923.923 INFO    ] ================================================
[2026-06-27 13:44:00,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:44:00
[2026-06-27 13:44:00,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:44:00,779.779 INFO    ] Initializing speech engine...
[2026-06-27 13:44:00,785.785 INFO    ] 2026-06-27 13:44:00
[2026-06-27 13:44:00,996.996 INFO    ] 2026-06-27 13:44:00
[2026-06-27 13:44:01,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:44:01,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:44:01,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:44:01,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:44:01,439.439 INFO    ] time= 27/06/2026 13:44:01
[2026-06-27 13:44:01,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:44:01,450.450 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:44:01,543.543 INFO    ] No existing commands found in stream
[2026-06-27 13:44:06,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:44:06,571.571 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-27 13:44:09,482.482 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 13:44:09,484.484 INFO    ] Checking for system updates...
[2026-06-27 13:44:09,505.505 INFO    ] 200
[2026-06-27 13:44:09,507.507 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:44:09,538.538 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:44:09,540.540 INFO    ] No update needed
[2026-06-27 13:44:09,541.541 INFO    ] Checking for camera pi updates...
[2026-06-27 13:44:09,562.562 INFO    ] 200
[2026-06-27 13:44:09,563.563 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:44:09,586.586 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:44:09,638.638 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:44:09,639.639 INFO    ] No camera update needed
[2026-06-27 13:44:09,641.641 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:44:09,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:44:09,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:44:09,648.648 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:44:11,691.691 INFO    ] ================================================
[2026-06-27 13:44:11,707.707 INFO    ] Launching Daemon at Sat Jun 27 13:44:11 IST 2026
[2026-06-27 13:44:11,718.718 INFO    ] ================================================
[2026-06-27 13:44:12,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:44:12
[2026-06-27 13:44:12,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:44:12,503.503 INFO    ] Initializing speech engine...
[2026-06-27 13:44:12,508.508 INFO    ] 2026-06-27 13:44:12
[2026-06-27 13:44:12,712.712 INFO    ] 2026-06-27 13:44:12
[2026-06-27 13:44:12,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:44:12,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:44:12,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:44:13,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:44:13,157.157 INFO    ] time= 27/06/2026 13:44:13
[2026-06-27 13:44:13,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:44:13,161.161 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:44:13,251.251 INFO    ] No existing commands found in stream
[2026-06-27 13:44:18,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:44:18,263.263 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-27 13:44:21,236.236 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 13:44:21,238.238 INFO    ] Checking for system updates...
[2026-06-27 13:44:21,258.258 INFO    ] 200
[2026-06-27 13:44:21,259.259 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:44:21,290.290 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:44:21,292.292 INFO    ] No update needed
[2026-06-27 13:44:21,293.293 INFO    ] Checking for camera pi updates...
[2026-06-27 13:44:21,318.318 INFO    ] 200
[2026-06-27 13:44:21,319.319 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:44:21,345.345 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:44:21,396.396 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:44:21,398.398 INFO    ] No camera update needed
[2026-06-27 13:44:21,399.399 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:44:21,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:44:21,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:44:21,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:44:23,447.447 INFO    ] ================================================
[2026-06-27 13:44:23,462.462 INFO    ] Launching Daemon at Sat Jun 27 13:44:23 IST 2026
[2026-06-27 13:44:23,473.473 INFO    ] ================================================
[2026-06-27 13:44:23,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:44:23
[2026-06-27 13:44:24,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:44:24,335.335 INFO    ] Initializing speech engine...
[2026-06-27 13:44:24,342.342 INFO    ] 2026-06-27 13:44:24
[2026-06-27 13:44:24,554.554 INFO    ] 2026-06-27 13:44:24
[2026-06-27 13:44:24,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:44:24,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:44:24,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:44:25,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:44:25,007.007 INFO    ] time= 27/06/2026 13:44:25
[2026-06-27 13:44:25,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:44:25,061.061 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:44:25,198.198 INFO    ] No existing commands found in stream
[2026-06-27 13:44:30,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:44:30,212.212 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-27 13:44:31,445.445 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 13:44:31,447.447 INFO    ] Checking for system updates...
[2026-06-27 13:44:31,469.469 INFO    ] 200
[2026-06-27 13:44:31,470.470 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:44:31,504.504 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:44:31,505.505 INFO    ] No update needed
[2026-06-27 13:44:31,507.507 INFO    ] Checking for camera pi updates...
[2026-06-27 13:44:31,531.531 INFO    ] 200
[2026-06-27 13:44:31,532.532 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:44:31,560.560 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:44:31,600.600 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:44:31,602.602 INFO    ] No camera update needed
[2026-06-27 13:44:31,603.603 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:44:31,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:44:31,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:44:31,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:44:33,645.645 INFO    ] ================================================
[2026-06-27 13:44:33,661.661 INFO    ] Launching Daemon at Sat Jun 27 13:44:33 IST 2026
[2026-06-27 13:44:33,672.672 INFO    ] ================================================
[2026-06-27 13:44:34,040.040 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:44:34
[2026-06-27 13:44:34,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:44:34,504.504 INFO    ] Initializing speech engine...
[2026-06-27 13:44:34,508.508 INFO    ] 2026-06-27 13:44:34
[2026-06-27 13:44:34,715.715 INFO    ] 2026-06-27 13:44:34
[2026-06-27 13:44:34,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:44:34,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:44:34,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:44:35,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:44:35,157.157 INFO    ] time= 27/06/2026 13:44:35
[2026-06-27 13:44:35,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:44:35,165.165 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:44:35,255.255 INFO    ] No existing commands found in stream
[2026-06-27 13:44:40,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:44:40,272.272 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-27 13:44:42,566.566 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 13:44:42,568.568 INFO    ] Checking for system updates...
[2026-06-27 13:44:42,590.590 INFO    ] 200
[2026-06-27 13:44:42,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:44:42,625.625 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:44:42,626.626 INFO    ] No update needed
[2026-06-27 13:44:42,628.628 INFO    ] Checking for camera pi updates...
[2026-06-27 13:44:42,652.652 INFO    ] 200
[2026-06-27 13:44:42,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:44:42,678.678 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:44:42,725.725 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:44:42,727.727 INFO    ] No camera update needed
[2026-06-27 13:44:42,728.728 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:44:42,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:44:42,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:44:42,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:44:44,779.779 INFO    ] ================================================
[2026-06-27 13:44:44,796.796 INFO    ] Launching Daemon at Sat Jun 27 13:44:44 IST 2026
[2026-06-27 13:44:44,807.807 INFO    ] ================================================
[2026-06-27 13:44:45,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:44:45
[2026-06-27 13:44:45,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:44:45,588.588 INFO    ] Initializing speech engine...
[2026-06-27 13:44:45,596.596 INFO    ] 2026-06-27 13:44:45
[2026-06-27 13:44:45,812.812 INFO    ] 2026-06-27 13:44:45
[2026-06-27 13:44:45,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:44:45,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:44:46,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:44:46,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:44:46,262.262 INFO    ] time= 27/06/2026 13:44:46
[2026-06-27 13:44:46,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:44:46,265.265 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:44:46,333.333 INFO    ] No existing commands found in stream
[2026-06-27 13:44:51,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:44:51,345.345 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-27 13:44:55,381.381 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 13:44:55,382.382 INFO    ] Checking for system updates...
[2026-06-27 13:44:55,404.404 INFO    ] 200
[2026-06-27 13:44:55,406.406 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:44:55,440.440 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:44:55,441.441 INFO    ] No update needed
[2026-06-27 13:44:55,442.442 INFO    ] Checking for camera pi updates...
[2026-06-27 13:44:55,464.464 INFO    ] 200
[2026-06-27 13:44:55,465.465 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:44:55,490.490 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:44:55,614.614 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:44:55,616.616 INFO    ] No camera update needed
[2026-06-27 13:44:55,617.617 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:44:55,618.618 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:44:55,621.621 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:44:55,624.624 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:44:57,664.664 INFO    ] ================================================
[2026-06-27 13:44:57,679.679 INFO    ] Launching Daemon at Sat Jun 27 13:44:57 IST 2026
[2026-06-27 13:44:57,690.690 INFO    ] ================================================
[2026-06-27 13:44:58,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:44:58
[2026-06-27 13:44:58,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:44:58,494.494 INFO    ] Initializing speech engine...
[2026-06-27 13:44:58,498.498 INFO    ] 2026-06-27 13:44:58
[2026-06-27 13:44:58,717.717 INFO    ] 2026-06-27 13:44:58
[2026-06-27 13:44:58,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:44:58,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:44:58,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:44:59,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:44:59,168.168 INFO    ] time= 27/06/2026 13:44:59
[2026-06-27 13:44:59,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:44:59,175.175 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:44:59,266.266 INFO    ] No existing commands found in stream
[2026-06-27 13:45:04,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:45:04,278.278 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-27 13:45:08,405.405 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 13:45:08,407.407 INFO    ] Checking for system updates...
[2026-06-27 13:45:08,428.428 INFO    ] 200
[2026-06-27 13:45:08,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:45:08,459.459 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:45:08,461.461 INFO    ] No update needed
[2026-06-27 13:45:08,463.463 INFO    ] Checking for camera pi updates...
[2026-06-27 13:45:08,482.482 INFO    ] 200
[2026-06-27 13:45:08,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:45:08,507.507 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:45:08,550.550 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:45:08,552.552 INFO    ] No camera update needed
[2026-06-27 13:45:08,553.553 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:45:08,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:45:08,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:45:08,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:45:10,599.599 INFO    ] ================================================
[2026-06-27 13:45:10,614.614 INFO    ] Launching Daemon at Sat Jun 27 13:45:10 IST 2026
[2026-06-27 13:45:10,625.625 INFO    ] ================================================
[2026-06-27 13:45:10,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:45:10
[2026-06-27 13:45:11,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:45:11,438.438 INFO    ] Initializing speech engine...
[2026-06-27 13:45:11,443.443 INFO    ] 2026-06-27 13:45:11
[2026-06-27 13:45:11,640.640 INFO    ] 2026-06-27 13:45:11
[2026-06-27 13:45:11,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:45:11,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:45:11,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:45:12,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:45:12,123.123 INFO    ] time= 27/06/2026 13:45:12
[2026-06-27 13:45:12,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:45:12,189.189 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:45:12,320.320 INFO    ] No existing commands found in stream
[2026-06-27 13:45:17,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:45:17,333.333 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-27 13:45:18,424.424 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 13:45:18,425.425 INFO    ] Checking for system updates...
[2026-06-27 13:45:18,447.447 INFO    ] 200
[2026-06-27 13:45:18,449.449 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:45:18,483.483 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:45:18,484.484 INFO    ] No update needed
[2026-06-27 13:45:18,486.486 INFO    ] Checking for camera pi updates...
[2026-06-27 13:45:18,505.505 INFO    ] 200
[2026-06-27 13:45:18,507.507 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:45:18,532.532 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:45:18,573.573 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:45:18,575.575 INFO    ] No camera update needed
[2026-06-27 13:45:18,576.576 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:45:18,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:45:18,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:45:18,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:45:20,621.621 INFO    ] ================================================
[2026-06-27 13:45:20,637.637 INFO    ] Launching Daemon at Sat Jun 27 13:45:20 IST 2026
[2026-06-27 13:45:20,648.648 INFO    ] ================================================
[2026-06-27 13:45:20,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:45:20
[2026-06-27 13:45:21,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:45:21,427.427 INFO    ] Initializing speech engine...
[2026-06-27 13:45:21,432.432 INFO    ] 2026-06-27 13:45:21
[2026-06-27 13:45:21,650.650 INFO    ] 2026-06-27 13:45:21
[2026-06-27 13:45:21,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:45:21,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:45:21,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:45:22,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:45:22,076.076 INFO    ] time= 27/06/2026 13:45:22
[2026-06-27 13:45:22,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:45:22,104.104 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:45:22,196.196 INFO    ] No existing commands found in stream
[2026-06-27 13:45:27,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:45:27,209.209 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-27 13:45:29,128.128 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 13:45:29,130.130 INFO    ] Checking for system updates...
[2026-06-27 13:45:29,151.151 INFO    ] 200
[2026-06-27 13:45:29,152.152 INFO    ] {"msg": "Status of machine", "state": "STATE_ON_BATTERY", "status": true}
[2026-06-27 13:45:29,153.153 INFO    ] Machine not idle (state: STATE_ON_BATTERY), skipping update check
[2026-06-27 13:45:29,155.155 INFO    ] Checking for camera pi updates...
[2026-06-27 13:45:29,176.176 INFO    ] 200
[2026-06-27 13:45:29,177.177 INFO    ] {"msg": "Status of machine", "state": "STATE_ON_BATTERY", "status": true}
[2026-06-27 13:45:29,179.179 INFO    ] Machine not idle (state: STATE_ON_BATTERY), skipping camera update check
[2026-06-27 13:45:29,180.180 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:45:29,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:45:29,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:45:29,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:45:31,226.226 INFO    ] ================================================
[2026-06-27 13:45:31,241.241 INFO    ] Launching Daemon at Sat Jun 27 13:45:31 IST 2026
[2026-06-27 13:45:31,252.252 INFO    ] ================================================
[2026-06-27 13:45:31,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:45:31
[2026-06-27 13:45:31,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:45:32,075.075 INFO    ] Initializing speech engine...
[2026-06-27 13:45:32,083.083 INFO    ] 2026-06-27 13:45:32
[2026-06-27 13:45:32,306.306 INFO    ] 2026-06-27 13:45:32
[2026-06-27 13:45:32,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:45:32,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:45:32,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:45:32,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:45:32,817.817 INFO    ] time= 27/06/2026 13:45:32
[2026-06-27 13:45:32,819.819 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:45:32,821.821 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:45:32,917.917 INFO    ] No existing commands found in stream
[2026-06-27 13:45:37,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:45:37,935.935 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-27 13:45:39,024.024 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 13:45:39,026.026 INFO    ] Checking for system updates...
[2026-06-27 13:45:39,048.048 INFO    ] 200
[2026-06-27 13:45:39,049.049 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:45:39,083.083 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:45:39,085.085 INFO    ] No update needed
[2026-06-27 13:45:39,086.086 INFO    ] Checking for camera pi updates...
[2026-06-27 13:45:39,109.109 INFO    ] 200
[2026-06-27 13:45:39,111.111 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:45:39,137.137 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:45:39,189.189 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:45:39,191.191 INFO    ] No camera update needed
[2026-06-27 13:45:39,192.192 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:45:39,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:45:39,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:45:39,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:45:41,240.240 INFO    ] ================================================
[2026-06-27 13:45:41,256.256 INFO    ] Launching Daemon at Sat Jun 27 13:45:41 IST 2026
[2026-06-27 13:45:41,266.266 INFO    ] ================================================
[2026-06-27 13:45:41,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:45:41
[2026-06-27 13:45:41,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:45:42,057.057 INFO    ] Initializing speech engine...
[2026-06-27 13:45:42,062.062 INFO    ] 2026-06-27 13:45:42
[2026-06-27 13:45:42,266.266 INFO    ] 2026-06-27 13:45:42
[2026-06-27 13:45:42,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:45:42,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:45:42,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:45:42,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:45:42,817.817 INFO    ] time= 27/06/2026 13:45:42
[2026-06-27 13:45:42,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:45:42,846.846 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:45:42,951.951 INFO    ] No existing commands found in stream
[2026-06-27 13:45:47,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:45:47,964.964 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-27 13:45:50,236.236 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 13:45:50,238.238 INFO    ] Checking for system updates...
[2026-06-27 13:45:50,260.260 INFO    ] 200
[2026-06-27 13:45:50,261.261 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:45:50,292.292 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:45:50,294.294 INFO    ] No update needed
[2026-06-27 13:45:50,295.295 INFO    ] Checking for camera pi updates...
[2026-06-27 13:45:50,315.315 INFO    ] 200
[2026-06-27 13:45:50,317.317 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:45:50,344.344 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:45:50,397.397 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:45:50,398.398 INFO    ] No camera update needed
[2026-06-27 13:45:50,399.399 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:45:50,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:45:50,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:45:50,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:45:52,446.446 INFO    ] ================================================
[2026-06-27 13:45:52,462.462 INFO    ] Launching Daemon at Sat Jun 27 13:45:52 IST 2026
[2026-06-27 13:45:52,472.472 INFO    ] ================================================
[2026-06-27 13:45:52,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:45:52
[2026-06-27 13:45:53,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:45:53,265.265 INFO    ] Initializing speech engine...
[2026-06-27 13:45:53,270.270 INFO    ] 2026-06-27 13:45:53
[2026-06-27 13:45:53,477.477 INFO    ] 2026-06-27 13:45:53
[2026-06-27 13:45:53,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:45:53,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:45:53,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:45:53,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:45:53,926.926 INFO    ] time= 27/06/2026 13:45:53
[2026-06-27 13:45:53,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:45:53,934.934 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:45:54,003.003 INFO    ] No existing commands found in stream
[2026-06-27 13:45:59,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:45:59,019.019 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-27 13:46:01,360.360 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 13:46:01,362.362 INFO    ] Checking for system updates...
[2026-06-27 13:46:01,384.384 INFO    ] 200
[2026-06-27 13:46:01,386.386 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:46:01,417.417 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:46:01,418.418 INFO    ] No update needed
[2026-06-27 13:46:01,419.419 INFO    ] Checking for camera pi updates...
[2026-06-27 13:46:01,440.440 INFO    ] 200
[2026-06-27 13:46:01,442.442 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:46:01,468.468 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:46:01,499.499 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:46:01,500.500 INFO    ] No camera update needed
[2026-06-27 13:46:01,502.502 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:46:01,503.503 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:46:01,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:46:01,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:46:03,544.544 INFO    ] ================================================
[2026-06-27 13:46:03,560.560 INFO    ] Launching Daemon at Sat Jun 27 13:46:03 IST 2026
[2026-06-27 13:46:03,571.571 INFO    ] ================================================
[2026-06-27 13:46:03,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:46:03
[2026-06-27 13:46:04,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:46:04,361.361 INFO    ] Initializing speech engine...
[2026-06-27 13:46:04,371.371 INFO    ] 2026-06-27 13:46:04
[2026-06-27 13:46:04,590.590 INFO    ] 2026-06-27 13:46:04
[2026-06-27 13:46:04,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:46:04,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:46:04,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:46:04,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:46:05,034.034 INFO    ] time= 27/06/2026 13:46:04
[2026-06-27 13:46:05,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:46:05,076.076 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:46:05,152.152 INFO    ] No existing commands found in stream
[2026-06-27 13:46:10,163.163 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:46:10,166.166 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-27 13:46:13,994.994 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 13:46:13,996.996 INFO    ] Checking for system updates...
[2026-06-27 13:46:14,017.017 INFO    ] 200
[2026-06-27 13:46:14,018.018 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:46:14,049.049 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:46:14,051.051 INFO    ] No update needed
[2026-06-27 13:46:14,052.052 INFO    ] Checking for camera pi updates...
[2026-06-27 13:46:14,073.073 INFO    ] 200
[2026-06-27 13:46:14,074.074 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:46:14,098.098 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:46:14,135.135 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:46:14,137.137 INFO    ] No camera update needed
[2026-06-27 13:46:14,138.138 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:46:14,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:46:14,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:46:14,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:46:16,184.184 INFO    ] ================================================
[2026-06-27 13:46:16,200.200 INFO    ] Launching Daemon at Sat Jun 27 13:46:16 IST 2026
[2026-06-27 13:46:16,211.211 INFO    ] ================================================
[2026-06-27 13:46:16,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:46:16
[2026-06-27 13:46:16,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:46:16,991.991 INFO    ] Initializing speech engine...
[2026-06-27 13:46:16,995.995 INFO    ] 2026-06-27 13:46:16
[2026-06-27 13:46:17,216.216 INFO    ] 2026-06-27 13:46:17
[2026-06-27 13:46:17,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:46:17,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:46:17,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:46:17,583.583 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:46:17,641.641 INFO    ] time= 27/06/2026 13:46:17
[2026-06-27 13:46:17,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:46:17,671.671 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:46:17,739.739 INFO    ] No existing commands found in stream
[2026-06-27 13:46:22,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:46:22,749.749 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-27 13:46:25,754.754 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:46:25,756.756 INFO    ] Checking for system updates...
[2026-06-27 13:46:25,777.777 INFO    ] 200
[2026-06-27 13:46:25,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:46:25,811.811 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:46:25,813.813 INFO    ] No update needed
[2026-06-27 13:46:25,814.814 INFO    ] Checking for camera pi updates...
[2026-06-27 13:46:25,836.836 INFO    ] 200
[2026-06-27 13:46:25,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:46:25,860.860 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:46:25,908.908 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:46:25,909.909 INFO    ] No camera update needed
[2026-06-27 13:46:25,910.910 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:46:25,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:46:25,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:46:25,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:46:27,956.956 INFO    ] ================================================
[2026-06-27 13:46:27,972.972 INFO    ] Launching Daemon at Sat Jun 27 13:46:27 IST 2026
[2026-06-27 13:46:27,982.982 INFO    ] ================================================
[2026-06-27 13:46:28,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:46:28
[2026-06-27 13:46:28,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:46:28,828.828 INFO    ] Initializing speech engine...
[2026-06-27 13:46:28,838.838 INFO    ] 2026-06-27 13:46:28
[2026-06-27 13:46:29,043.043 INFO    ] 2026-06-27 13:46:29
[2026-06-27 13:46:29,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:46:29,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:46:29,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:46:29,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:46:29,486.486 INFO    ] time= 27/06/2026 13:46:29
[2026-06-27 13:46:29,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:46:29,493.493 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:46:29,609.609 INFO    ] No existing commands found in stream
[2026-06-27 13:46:34,618.618 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:46:34,621.621 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-27 13:46:35,524.524 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 13:46:35,525.525 INFO    ] Checking for system updates...
[2026-06-27 13:46:35,547.547 INFO    ] 200
[2026-06-27 13:46:35,549.549 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:46:35,580.580 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:46:35,581.581 INFO    ] No update needed
[2026-06-27 13:46:35,582.582 INFO    ] Checking for camera pi updates...
[2026-06-27 13:46:35,602.602 INFO    ] 200
[2026-06-27 13:46:35,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:46:35,629.629 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:46:35,656.656 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:46:35,657.657 INFO    ] No camera update needed
[2026-06-27 13:46:35,658.658 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:46:35,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:46:35,662.662 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:46:35,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:46:37,704.704 INFO    ] ================================================
[2026-06-27 13:46:37,719.719 INFO    ] Launching Daemon at Sat Jun 27 13:46:37 IST 2026
[2026-06-27 13:46:37,730.730 INFO    ] ================================================
[2026-06-27 13:46:38,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:46:38
[2026-06-27 13:46:38,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:46:38,552.552 INFO    ] Initializing speech engine...
[2026-06-27 13:46:38,557.557 INFO    ] 2026-06-27 13:46:38
[2026-06-27 13:46:38,760.760 INFO    ] 2026-06-27 13:46:38
[2026-06-27 13:46:38,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:46:38,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:46:38,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:46:39,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:46:39,173.173 INFO    ] time= 27/06/2026 13:46:39
[2026-06-27 13:46:39,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:46:39,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:46:39,333.333 INFO    ] No existing commands found in stream
[2026-06-27 13:46:44,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:46:44,345.345 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-27 13:46:46,794.794 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 13:46:46,796.796 INFO    ] Checking for system updates...
[2026-06-27 13:46:46,817.817 INFO    ] 200
[2026-06-27 13:46:46,818.818 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:46:46,851.851 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:46:46,852.852 INFO    ] No update needed
[2026-06-27 13:46:46,853.853 INFO    ] Checking for camera pi updates...
[2026-06-27 13:46:46,876.876 INFO    ] 200
[2026-06-27 13:46:46,877.877 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:46:46,901.901 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:46:46,952.952 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:46:46,954.954 INFO    ] No camera update needed
[2026-06-27 13:46:46,955.955 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:46:46,956.956 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:46:46,959.959 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:46:46,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:46:49,002.002 INFO    ] ================================================
[2026-06-27 13:46:49,017.017 INFO    ] Launching Daemon at Sat Jun 27 13:46:49 IST 2026
[2026-06-27 13:46:49,029.029 INFO    ] ================================================
[2026-06-27 13:46:49,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:46:49
[2026-06-27 13:46:49,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:46:49,876.876 INFO    ] Initializing speech engine...
[2026-06-27 13:46:49,881.881 INFO    ] 2026-06-27 13:46:49
[2026-06-27 13:46:50,094.094 INFO    ] 2026-06-27 13:46:50
[2026-06-27 13:46:50,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:46:50,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:46:50,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:46:50,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:46:50,541.541 INFO    ] time= 27/06/2026 13:46:50
[2026-06-27 13:46:50,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:46:50,548.548 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:46:50,617.617 INFO    ] No existing commands found in stream
[2026-06-27 13:46:55,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:46:55,634.634 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-27 13:46:58,154.154 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 13:46:58,156.156 INFO    ] Checking for system updates...
[2026-06-27 13:46:58,177.177 INFO    ] 200
[2026-06-27 13:46:58,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:46:58,211.211 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:46:58,212.212 INFO    ] No update needed
[2026-06-27 13:46:58,214.214 INFO    ] Checking for camera pi updates...
[2026-06-27 13:46:58,234.234 INFO    ] 200
[2026-06-27 13:46:58,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:46:58,260.260 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:46:58,401.401 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:46:58,403.403 INFO    ] No camera update needed
[2026-06-27 13:46:58,404.404 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:46:58,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:46:58,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:46:58,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:47:00,450.450 INFO    ] ================================================
[2026-06-27 13:47:00,466.466 INFO    ] Launching Daemon at Sat Jun 27 13:47:00 IST 2026
[2026-06-27 13:47:00,478.478 INFO    ] ================================================
[2026-06-27 13:47:00,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:47:00
[2026-06-27 13:47:01,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:47:01,500.500 INFO    ] Initializing speech engine...
[2026-06-27 13:47:01,526.526 INFO    ] 2026-06-27 13:47:01
[2026-06-27 13:47:01,846.846 INFO    ] 2026-06-27 13:47:01
[2026-06-27 13:47:01,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:47:02,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:47:02,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:47:02,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:47:02,289.289 INFO    ] time= 27/06/2026 13:47:02
[2026-06-27 13:47:02,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:47:02,295.295 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:47:02,370.370 INFO    ] No existing commands found in stream
[2026-06-27 13:47:07,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:47:07,380.380 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-27 13:47:11,476.476 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 13:47:11,478.478 INFO    ] Checking for system updates...
[2026-06-27 13:47:11,499.499 INFO    ] 200
[2026-06-27 13:47:11,501.501 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:47:11,535.535 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:47:11,536.536 INFO    ] No update needed
[2026-06-27 13:47:11,537.537 INFO    ] Checking for camera pi updates...
[2026-06-27 13:47:11,558.558 INFO    ] 200
[2026-06-27 13:47:11,560.560 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:47:11,583.583 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:47:11,624.624 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:47:11,625.625 INFO    ] No camera update needed
[2026-06-27 13:47:11,627.627 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:47:11,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:47:11,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:47:11,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:47:13,675.675 INFO    ] ================================================
[2026-06-27 13:47:13,690.690 INFO    ] Launching Daemon at Sat Jun 27 13:47:13 IST 2026
[2026-06-27 13:47:13,701.701 INFO    ] ================================================
[2026-06-27 13:47:14,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:47:14
[2026-06-27 13:47:14,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:47:14,516.516 INFO    ] Initializing speech engine...
[2026-06-27 13:47:14,519.519 INFO    ] 2026-06-27 13:47:14
[2026-06-27 13:47:14,739.739 INFO    ] 2026-06-27 13:47:14
[2026-06-27 13:47:14,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:47:14,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:47:14,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:47:15,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:47:15,187.187 INFO    ] time= 27/06/2026 13:47:15
[2026-06-27 13:47:15,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:47:15,193.193 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:47:15,261.261 INFO    ] No existing commands found in stream
[2026-06-27 13:47:20,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:47:20,267.267 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-27 13:47:23,087.087 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 13:47:23,088.088 INFO    ] Checking for system updates...
[2026-06-27 13:47:23,109.109 INFO    ] 200
[2026-06-27 13:47:23,110.110 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:47:23,144.144 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:47:23,146.146 INFO    ] No update needed
[2026-06-27 13:47:23,147.147 INFO    ] Checking for camera pi updates...
[2026-06-27 13:47:23,168.168 INFO    ] 200
[2026-06-27 13:47:23,170.170 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:47:23,194.194 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:47:23,236.236 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:47:23,237.237 INFO    ] No camera update needed
[2026-06-27 13:47:23,238.238 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:47:23,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:47:23,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:47:23,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:47:25,285.285 INFO    ] ================================================
[2026-06-27 13:47:25,301.301 INFO    ] Launching Daemon at Sat Jun 27 13:47:25 IST 2026
[2026-06-27 13:47:25,312.312 INFO    ] ================================================
[2026-06-27 13:47:25,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:47:25
[2026-06-27 13:47:25,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:47:26,100.100 INFO    ] Initializing speech engine...
[2026-06-27 13:47:26,105.105 INFO    ] 2026-06-27 13:47:26
[2026-06-27 13:47:26,326.326 INFO    ] 2026-06-27 13:47:26
[2026-06-27 13:47:26,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:47:26,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:47:26,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:47:26,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:47:26,776.776 INFO    ] time= 27/06/2026 13:47:26
[2026-06-27 13:47:26,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:47:26,783.783 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:47:26,851.851 INFO    ] No existing commands found in stream
[2026-06-27 13:47:31,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:47:31,866.866 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-27 13:47:33,200.200 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 13:47:33,201.201 INFO    ] Checking for system updates...
[2026-06-27 13:47:33,223.223 INFO    ] 200
[2026-06-27 13:47:33,224.224 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:47:33,255.255 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:47:33,256.256 INFO    ] No update needed
[2026-06-27 13:47:33,258.258 INFO    ] Checking for camera pi updates...
[2026-06-27 13:47:33,277.277 INFO    ] 200
[2026-06-27 13:47:33,279.279 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:47:33,303.303 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:47:33,330.330 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:47:33,332.332 INFO    ] No camera update needed
[2026-06-27 13:47:33,333.333 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:47:33,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:47:33,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:47:33,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:47:35,379.379 INFO    ] ================================================
[2026-06-27 13:47:35,397.397 INFO    ] Launching Daemon at Sat Jun 27 13:47:35 IST 2026
[2026-06-27 13:47:35,408.408 INFO    ] ================================================
[2026-06-27 13:47:35,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:47:35
[2026-06-27 13:47:36,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:47:36,213.213 INFO    ] Initializing speech engine...
[2026-06-27 13:47:36,216.216 INFO    ] 2026-06-27 13:47:36
[2026-06-27 13:47:36,436.436 INFO    ] 2026-06-27 13:47:36
[2026-06-27 13:47:36,466.466 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:47:36,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:47:36,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:47:36,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:47:36,888.888 INFO    ] time= 27/06/2026 13:47:36
[2026-06-27 13:47:36,890.890 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:47:36,892.892 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:47:37,010.010 INFO    ] No existing commands found in stream
[2026-06-27 13:47:42,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:47:42,022.022 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-27 13:47:44,212.212 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 13:47:44,214.214 INFO    ] Checking for system updates...
[2026-06-27 13:47:44,234.234 INFO    ] 200
[2026-06-27 13:47:44,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:47:44,266.266 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:47:44,267.267 INFO    ] No update needed
[2026-06-27 13:47:44,269.269 INFO    ] Checking for camera pi updates...
[2026-06-27 13:47:44,291.291 INFO    ] 200
[2026-06-27 13:47:44,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:47:44,317.317 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:47:44,347.347 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:47:44,348.348 INFO    ] No camera update needed
[2026-06-27 13:47:44,349.349 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:47:44,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:47:44,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:47:44,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:47:46,396.396 INFO    ] ================================================
[2026-06-27 13:47:46,412.412 INFO    ] Launching Daemon at Sat Jun 27 13:47:46 IST 2026
[2026-06-27 13:47:46,423.423 INFO    ] ================================================
[2026-06-27 13:47:46,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:47:46
[2026-06-27 13:47:47,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:47:47,254.254 INFO    ] Initializing speech engine...
[2026-06-27 13:47:47,259.259 INFO    ] 2026-06-27 13:47:47
[2026-06-27 13:47:47,475.475 INFO    ] 2026-06-27 13:47:47
[2026-06-27 13:47:47,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:47:47,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:47:47,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:47:47,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:47:47,951.951 INFO    ] time= 27/06/2026 13:47:47
[2026-06-27 13:47:47,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:47:47,958.958 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:47:48,056.056 INFO    ] No existing commands found in stream
[2026-06-27 13:47:53,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:47:53,073.073 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-27 13:47:54,954.954 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:47:54,955.955 INFO    ] Checking for system updates...
[2026-06-27 13:47:54,977.977 INFO    ] 200
[2026-06-27 13:47:54,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:47:55,011.011 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:47:55,012.012 INFO    ] No update needed
[2026-06-27 13:47:55,014.014 INFO    ] Checking for camera pi updates...
[2026-06-27 13:47:55,035.035 INFO    ] 200
[2026-06-27 13:47:55,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:47:55,059.059 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:47:55,087.087 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:47:55,088.088 INFO    ] No camera update needed
[2026-06-27 13:47:55,090.090 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:47:55,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:47:55,094.094 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:47:55,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:47:57,137.137 INFO    ] ================================================
[2026-06-27 13:47:57,152.152 INFO    ] Launching Daemon at Sat Jun 27 13:47:57 IST 2026
[2026-06-27 13:47:57,165.165 INFO    ] ================================================
[2026-06-27 13:47:57,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:47:57
[2026-06-27 13:47:57,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:47:58,005.005 INFO    ] Initializing speech engine...
[2026-06-27 13:47:58,011.011 INFO    ] 2026-06-27 13:47:58
[2026-06-27 13:47:58,215.215 INFO    ] 2026-06-27 13:47:58
[2026-06-27 13:47:58,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:47:58,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:47:58,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:47:59,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:47:59,046.046 INFO    ] time= 27/06/2026 13:47:59
[2026-06-27 13:47:59,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:47:59,051.051 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:47:59,223.223 INFO    ] No existing commands found in stream
[2026-06-27 13:48:04,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:48:04,236.236 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-27 13:48:04,953.953 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 13:48:04,955.955 INFO    ] Checking for system updates...
[2026-06-27 13:48:04,977.977 INFO    ] 200
[2026-06-27 13:48:04,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:48:05,008.008 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:48:05,010.010 INFO    ] No update needed
[2026-06-27 13:48:05,011.011 INFO    ] Checking for camera pi updates...
[2026-06-27 13:48:05,030.030 INFO    ] 200
[2026-06-27 13:48:05,031.031 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:48:05,055.055 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:48:05,107.107 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:48:05,109.109 INFO    ] No camera update needed
[2026-06-27 13:48:05,110.110 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:48:05,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:48:05,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:48:05,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:48:07,158.158 INFO    ] ================================================
[2026-06-27 13:48:07,175.175 INFO    ] Launching Daemon at Sat Jun 27 13:48:07 IST 2026
[2026-06-27 13:48:07,187.187 INFO    ] ================================================
[2026-06-27 13:48:07,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:48:07
[2026-06-27 13:48:07,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:48:08,006.006 INFO    ] Initializing speech engine...
[2026-06-27 13:48:08,018.018 INFO    ] 2026-06-27 13:48:08
[2026-06-27 13:48:08,231.231 INFO    ] 2026-06-27 13:48:08
[2026-06-27 13:48:08,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:48:08,583.583 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:48:08,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:48:08,803.803 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:48:08,805.805 INFO    ] time= 27/06/2026 13:48:08
[2026-06-27 13:48:08,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:48:08,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:48:08,958.958 INFO    ] No existing commands found in stream
[2026-06-27 13:48:13,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:48:13,972.972 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-27 13:48:15,020.020 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 13:48:15,022.022 INFO    ] Checking for system updates...
[2026-06-27 13:48:15,044.044 INFO    ] 200
[2026-06-27 13:48:15,045.045 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:48:15,078.078 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:48:15,080.080 INFO    ] No update needed
[2026-06-27 13:48:15,081.081 INFO    ] Checking for camera pi updates...
[2026-06-27 13:48:15,102.102 INFO    ] 200
[2026-06-27 13:48:15,104.104 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:48:15,129.129 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:48:15,171.171 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:48:15,172.172 INFO    ] No camera update needed
[2026-06-27 13:48:15,174.174 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:48:15,175.175 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:48:15,178.178 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:48:15,181.181 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:48:17,220.220 INFO    ] ================================================
[2026-06-27 13:48:17,236.236 INFO    ] Launching Daemon at Sat Jun 27 13:48:17 IST 2026
[2026-06-27 13:48:17,247.247 INFO    ] ================================================
[2026-06-27 13:48:17,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:48:17
[2026-06-27 13:48:17,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:48:18,045.045 INFO    ] Initializing speech engine...
[2026-06-27 13:48:18,050.050 INFO    ] 2026-06-27 13:48:18
[2026-06-27 13:48:18,255.255 INFO    ] 2026-06-27 13:48:18
[2026-06-27 13:48:18,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:48:18,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:48:18,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:48:18,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:48:18,740.740 INFO    ] time= 27/06/2026 13:48:18
[2026-06-27 13:48:18,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:48:18,747.747 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:48:18,820.820 INFO    ] No existing commands found in stream
[2026-06-27 13:48:23,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:48:23,833.833 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-27 13:48:27,113.113 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 13:48:27,115.115 INFO    ] Checking for system updates...
[2026-06-27 13:48:27,136.136 INFO    ] 200
[2026-06-27 13:48:27,138.138 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:48:27,171.171 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:48:27,172.172 INFO    ] No update needed
[2026-06-27 13:48:27,174.174 INFO    ] Checking for camera pi updates...
[2026-06-27 13:48:27,195.195 INFO    ] 200
[2026-06-27 13:48:27,197.197 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:48:27,221.221 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:48:27,263.263 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:48:27,264.264 INFO    ] No camera update needed
[2026-06-27 13:48:27,266.266 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:48:27,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:48:27,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:48:27,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:48:29,313.313 INFO    ] ================================================
[2026-06-27 13:48:29,329.329 INFO    ] Launching Daemon at Sat Jun 27 13:48:29 IST 2026
[2026-06-27 13:48:29,340.340 INFO    ] ================================================
[2026-06-27 13:48:29,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:48:29
[2026-06-27 13:48:30,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:48:30,175.175 INFO    ] Initializing speech engine...
[2026-06-27 13:48:30,185.185 INFO    ] 2026-06-27 13:48:30
[2026-06-27 13:48:30,392.392 INFO    ] 2026-06-27 13:48:30
[2026-06-27 13:48:30,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:48:30,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:48:30,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:48:30,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:48:30,906.906 INFO    ] time= 27/06/2026 13:48:30
[2026-06-27 13:48:30,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:48:30,933.933 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:48:31,029.029 INFO    ] No existing commands found in stream
[2026-06-27 13:48:36,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:48:36,042.042 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-27 13:48:38,498.498 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 13:48:38,500.500 INFO    ] Checking for system updates...
[2026-06-27 13:48:38,539.539 INFO    ] 200
[2026-06-27 13:48:38,542.542 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:48:38,577.577 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:48:38,578.578 INFO    ] No update needed
[2026-06-27 13:48:38,579.579 INFO    ] Checking for camera pi updates...
[2026-06-27 13:48:38,599.599 INFO    ] 200
[2026-06-27 13:48:38,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:48:38,623.623 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:48:38,665.665 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:48:38,666.666 INFO    ] No camera update needed
[2026-06-27 13:48:38,667.667 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:48:38,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:48:38,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:48:38,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:48:40,714.714 INFO    ] ================================================
[2026-06-27 13:48:40,730.730 INFO    ] Launching Daemon at Sat Jun 27 13:48:40 IST 2026
[2026-06-27 13:48:40,740.740 INFO    ] ================================================
[2026-06-27 13:48:41,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:48:41
[2026-06-27 13:48:41,402.402 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:48:41,543.543 INFO    ] Initializing speech engine...
[2026-06-27 13:48:41,553.553 INFO    ] 2026-06-27 13:48:41
[2026-06-27 13:48:41,758.758 INFO    ] 2026-06-27 13:48:41
[2026-06-27 13:48:41,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:48:41,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:48:41,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:48:42,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:48:42,201.201 INFO    ] time= 27/06/2026 13:48:42
[2026-06-27 13:48:42,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:48:42,209.209 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:48:42,299.299 INFO    ] No existing commands found in stream
[2026-06-27 13:48:47,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:48:47,311.311 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-27 13:48:51,003.003 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 13:48:51,006.006 INFO    ] Checking for system updates...
[2026-06-27 13:48:51,046.046 INFO    ] 200
[2026-06-27 13:48:51,049.049 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:48:51,109.109 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:48:51,112.112 INFO    ] No update needed
[2026-06-27 13:48:51,114.114 INFO    ] Checking for camera pi updates...
[2026-06-27 13:48:51,146.146 INFO    ] 200
[2026-06-27 13:48:51,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:48:51,172.172 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:48:51,226.226 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:48:51,227.227 INFO    ] No camera update needed
[2026-06-27 13:48:51,228.228 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:48:51,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:48:51,233.233 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:48:51,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:48:53,276.276 INFO    ] ================================================
[2026-06-27 13:48:53,291.291 INFO    ] Launching Daemon at Sat Jun 27 13:48:53 IST 2026
[2026-06-27 13:48:53,302.302 INFO    ] ================================================
[2026-06-27 13:48:53,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:48:53
[2026-06-27 13:48:53,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:48:54,097.097 INFO    ] Initializing speech engine...
[2026-06-27 13:48:54,100.100 INFO    ] 2026-06-27 13:48:54
[2026-06-27 13:48:54,320.320 INFO    ] 2026-06-27 13:48:54
[2026-06-27 13:48:54,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:48:54,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:48:54,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:48:54,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:48:54,769.769 INFO    ] time= 27/06/2026 13:48:54
[2026-06-27 13:48:54,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:48:54,776.776 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:48:54,846.846 INFO    ] No existing commands found in stream
[2026-06-27 13:48:59,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:48:59,857.857 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-27 13:49:03,884.884 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 13:49:03,885.885 INFO    ] Checking for system updates...
[2026-06-27 13:49:03,907.907 INFO    ] 200
[2026-06-27 13:49:03,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:49:03,939.939 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:49:03,940.940 INFO    ] No update needed
[2026-06-27 13:49:03,942.942 INFO    ] Checking for camera pi updates...
[2026-06-27 13:49:03,979.979 INFO    ] 200
[2026-06-27 13:49:03,981.981 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:49:04,008.008 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:49:04,047.047 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:49:04,048.048 INFO    ] No camera update needed
[2026-06-27 13:49:04,050.050 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:49:04,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:49:04,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:49:04,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:49:06,100.100 INFO    ] ================================================
[2026-06-27 13:49:06,115.115 INFO    ] Launching Daemon at Sat Jun 27 13:49:06 IST 2026
[2026-06-27 13:49:06,126.126 INFO    ] ================================================
[2026-06-27 13:49:06,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:49:06
[2026-06-27 13:49:06,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:49:06,959.959 INFO    ] Initializing speech engine...
[2026-06-27 13:49:06,969.969 INFO    ] 2026-06-27 13:49:06
[2026-06-27 13:49:07,174.174 INFO    ] 2026-06-27 13:49:07
[2026-06-27 13:49:07,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:49:07,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:49:07,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:49:07,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:49:07,704.704 INFO    ] time= 27/06/2026 13:49:07
[2026-06-27 13:49:07,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:49:07,733.733 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:49:07,810.810 INFO    ] No existing commands found in stream
[2026-06-27 13:49:12,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:49:12,822.822 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-27 13:49:13,737.737 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 13:49:13,739.739 INFO    ] Checking for system updates...
[2026-06-27 13:49:13,761.761 INFO    ] 200
[2026-06-27 13:49:13,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:49:13,796.796 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:49:13,797.797 INFO    ] No update needed
[2026-06-27 13:49:13,798.798 INFO    ] Checking for camera pi updates...
[2026-06-27 13:49:13,820.820 INFO    ] 200
[2026-06-27 13:49:13,821.821 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:49:13,847.847 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:49:13,888.888 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:49:13,889.889 INFO    ] No camera update needed
[2026-06-27 13:49:13,891.891 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:49:13,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:49:13,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:49:13,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:49:15,938.938 INFO    ] ================================================
[2026-06-27 13:49:15,954.954 INFO    ] Launching Daemon at Sat Jun 27 13:49:15 IST 2026
[2026-06-27 13:49:15,965.965 INFO    ] ================================================
[2026-06-27 13:49:16,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:49:16
[2026-06-27 13:49:16,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:49:16,821.821 INFO    ] Initializing speech engine...
[2026-06-27 13:49:16,826.826 INFO    ] 2026-06-27 13:49:16
[2026-06-27 13:49:17,037.037 INFO    ] 2026-06-27 13:49:17
[2026-06-27 13:49:17,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:49:17,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:49:17,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:49:17,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:49:17,490.490 INFO    ] time= 27/06/2026 13:49:17
[2026-06-27 13:49:17,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:49:17,494.494 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:49:17,612.612 INFO    ] No existing commands found in stream
[2026-06-27 13:49:22,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:49:22,626.626 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-27 13:49:25,889.889 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 13:49:25,890.890 INFO    ] Checking for system updates...
[2026-06-27 13:49:25,912.912 INFO    ] 200
[2026-06-27 13:49:25,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:49:25,944.944 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:49:25,946.946 INFO    ] No update needed
[2026-06-27 13:49:25,947.947 INFO    ] Checking for camera pi updates...
[2026-06-27 13:49:25,967.967 INFO    ] 200
[2026-06-27 13:49:25,969.969 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:49:25,994.994 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:49:26,020.020 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:49:26,022.022 INFO    ] No camera update needed
[2026-06-27 13:49:26,023.023 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:49:26,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:49:26,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:49:26,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:49:28,067.067 INFO    ] ================================================
[2026-06-27 13:49:28,076.076 INFO    ] Launching Daemon at Sat Jun 27 13:49:28 IST 2026
[2026-06-27 13:49:28,083.083 INFO    ] ================================================
[2026-06-27 13:49:28,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:49:28
[2026-06-27 13:49:28,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:49:28,927.927 INFO    ] Initializing speech engine...
[2026-06-27 13:49:28,932.932 INFO    ] 2026-06-27 13:49:28
[2026-06-27 13:49:29,137.137 INFO    ] 2026-06-27 13:49:29
[2026-06-27 13:49:29,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:49:29,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:49:29,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:49:29,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:49:29,501.501 INFO    ] time= 27/06/2026 13:49:29
[2026-06-27 13:49:29,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:49:29,589.589 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:49:29,678.678 INFO    ] No existing commands found in stream
[2026-06-27 13:49:34,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:49:34,690.690 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-27 13:49:37,721.721 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 13:49:37,722.722 INFO    ] Checking for system updates...
[2026-06-27 13:49:37,746.746 INFO    ] 200
[2026-06-27 13:49:37,747.747 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:49:37,782.782 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:49:37,783.783 INFO    ] No update needed
[2026-06-27 13:49:37,784.784 INFO    ] Checking for camera pi updates...
[2026-06-27 13:49:37,805.805 INFO    ] 200
[2026-06-27 13:49:37,806.806 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:49:37,829.829 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:49:37,875.875 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:49:37,876.876 INFO    ] No camera update needed
[2026-06-27 13:49:37,877.877 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:49:37,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:49:37,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:49:37,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:49:39,925.925 INFO    ] ================================================
[2026-06-27 13:49:39,940.940 INFO    ] Launching Daemon at Sat Jun 27 13:49:39 IST 2026
[2026-06-27 13:49:39,951.951 INFO    ] ================================================
[2026-06-27 13:49:40,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:49:40
[2026-06-27 13:49:40,626.626 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:49:40,757.757 INFO    ] Initializing speech engine...
[2026-06-27 13:49:40,760.760 INFO    ] 2026-06-27 13:49:40
[2026-06-27 13:49:40,978.978 INFO    ] 2026-06-27 13:49:40
[2026-06-27 13:49:41,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:49:41,194.194 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:49:41,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:49:41,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:49:41,492.492 INFO    ] time= 27/06/2026 13:49:41
[2026-06-27 13:49:41,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:49:41,520.520 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:49:41,616.616 INFO    ] No existing commands found in stream
[2026-06-27 13:49:46,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:49:46,629.629 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-27 13:49:49,538.538 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 13:49:49,540.540 INFO    ] Checking for system updates...
[2026-06-27 13:49:49,561.561 INFO    ] 200
[2026-06-27 13:49:49,562.562 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:49:49,594.594 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:49:49,595.595 INFO    ] No update needed
[2026-06-27 13:49:49,597.597 INFO    ] Checking for camera pi updates...
[2026-06-27 13:49:49,617.617 INFO    ] 200
[2026-06-27 13:49:49,618.618 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:49:49,644.644 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:49:49,687.687 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:49:49,688.688 INFO    ] No camera update needed
[2026-06-27 13:49:49,690.690 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:49:49,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:49:49,695.695 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:49:49,698.698 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:49:51,738.738 INFO    ] ================================================
[2026-06-27 13:49:51,753.753 INFO    ] Launching Daemon at Sat Jun 27 13:49:51 IST 2026
[2026-06-27 13:49:51,764.764 INFO    ] ================================================
[2026-06-27 13:49:52,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:49:52
[2026-06-27 13:49:52,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:49:52,586.586 INFO    ] Initializing speech engine...
[2026-06-27 13:49:52,592.592 INFO    ] 2026-06-27 13:49:52
[2026-06-27 13:49:52,802.802 INFO    ] 2026-06-27 13:49:52
[2026-06-27 13:49:52,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:49:53,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:49:53,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:49:53,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:49:53,233.233 INFO    ] time= 27/06/2026 13:49:53
[2026-06-27 13:49:53,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:49:53,255.255 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:49:53,322.322 INFO    ] No existing commands found in stream
[2026-06-27 13:49:58,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:49:58,336.336 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-27 13:49:59,957.957 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 13:49:59,958.958 INFO    ] Checking for system updates...
[2026-06-27 13:49:59,981.981 INFO    ] 200
[2026-06-27 13:49:59,983.983 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:50:00,017.017 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:50:00,019.019 INFO    ] No update needed
[2026-06-27 13:50:00,020.020 INFO    ] Checking for camera pi updates...
[2026-06-27 13:50:00,045.045 INFO    ] 200
[2026-06-27 13:50:00,046.046 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:50:00,075.075 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:50:00,131.131 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:50:00,132.132 INFO    ] No camera update needed
[2026-06-27 13:50:00,134.134 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:50:00,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:50:00,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:50:00,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:50:02,203.203 INFO    ] ================================================
[2026-06-27 13:50:02,225.225 INFO    ] Launching Daemon at Sat Jun 27 13:50:02 IST 2026
[2026-06-27 13:50:02,245.245 INFO    ] ================================================
[2026-06-27 13:50:02,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:50:02
[2026-06-27 13:50:03,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:50:03,410.410 INFO    ] Initializing speech engine...
[2026-06-27 13:50:03,414.414 INFO    ] 2026-06-27 13:50:03
[2026-06-27 13:50:03,615.615 INFO    ] 2026-06-27 13:50:03
[2026-06-27 13:50:03,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:50:03,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:50:03,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:50:04,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:50:04,108.108 INFO    ] time= 27/06/2026 13:50:04
[2026-06-27 13:50:04,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:50:04,146.146 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:50:04,225.225 INFO    ] No existing commands found in stream
[2026-06-27 13:50:09,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:50:09,262.262 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-27 13:50:11,312.312 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 13:50:11,313.313 INFO    ] Checking for system updates...
[2026-06-27 13:50:11,335.335 INFO    ] 200
[2026-06-27 13:50:11,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:50:11,368.368 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:50:11,370.370 INFO    ] No update needed
[2026-06-27 13:50:11,371.371 INFO    ] Checking for camera pi updates...
[2026-06-27 13:50:11,392.392 INFO    ] 200
[2026-06-27 13:50:11,394.394 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:50:11,420.420 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:50:11,463.463 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:50:11,465.465 INFO    ] No camera update needed
[2026-06-27 13:50:11,466.466 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:50:11,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:50:11,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:50:11,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:50:13,515.515 INFO    ] ================================================
[2026-06-27 13:50:13,530.530 INFO    ] Launching Daemon at Sat Jun 27 13:50:13 IST 2026
[2026-06-27 13:50:13,541.541 INFO    ] ================================================
[2026-06-27 13:50:13,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:50:13
[2026-06-27 13:50:14,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:50:14,350.350 INFO    ] Initializing speech engine...
[2026-06-27 13:50:14,364.364 INFO    ] 2026-06-27 13:50:14
[2026-06-27 13:50:14,585.585 INFO    ] 2026-06-27 13:50:14
[2026-06-27 13:50:14,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:50:14,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:50:14,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:50:14,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:50:15,027.027 INFO    ] time= 27/06/2026 13:50:14
[2026-06-27 13:50:15,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:50:15,076.076 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:50:15,180.180 INFO    ] No existing commands found in stream
[2026-06-27 13:50:20,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:50:20,192.192 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-27 13:50:23,032.032 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:50:23,034.034 INFO    ] Checking for system updates...
[2026-06-27 13:50:23,055.055 INFO    ] 200
[2026-06-27 13:50:23,056.056 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:50:23,089.089 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:50:23,090.090 INFO    ] No update needed
[2026-06-27 13:50:23,092.092 INFO    ] Checking for camera pi updates...
[2026-06-27 13:50:23,113.113 INFO    ] 200
[2026-06-27 13:50:23,115.115 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:50:23,140.140 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:50:23,184.184 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:50:23,186.186 INFO    ] No camera update needed
[2026-06-27 13:50:23,187.187 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:50:23,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:50:23,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:50:23,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:50:25,235.235 INFO    ] ================================================
[2026-06-27 13:50:25,250.250 INFO    ] Launching Daemon at Sat Jun 27 13:50:25 IST 2026
[2026-06-27 13:50:25,261.261 INFO    ] ================================================
[2026-06-27 13:50:25,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:50:25
[2026-06-27 13:50:25,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:50:26,073.073 INFO    ] Initializing speech engine...
[2026-06-27 13:50:26,078.078 INFO    ] 2026-06-27 13:50:26
[2026-06-27 13:50:26,294.294 INFO    ] 2026-06-27 13:50:26
[2026-06-27 13:50:26,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:50:26,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:50:26,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:50:26,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:50:26,719.719 INFO    ] time= 27/06/2026 13:50:26
[2026-06-27 13:50:26,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:50:26,750.750 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:50:26,818.818 INFO    ] No existing commands found in stream
[2026-06-27 13:50:31,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:50:31,836.836 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-27 13:50:36,192.192 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 13:50:36,194.194 INFO    ] Checking for system updates...
[2026-06-27 13:50:36,221.221 INFO    ] 200
[2026-06-27 13:50:36,223.223 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:50:36,256.256 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:50:36,258.258 INFO    ] No update needed
[2026-06-27 13:50:36,259.259 INFO    ] Checking for camera pi updates...
[2026-06-27 13:50:36,282.282 INFO    ] 200
[2026-06-27 13:50:36,283.283 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:50:36,307.307 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:50:36,351.351 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:50:36,352.352 INFO    ] No camera update needed
[2026-06-27 13:50:36,354.354 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:50:36,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:50:36,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:50:36,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:50:38,403.403 INFO    ] ================================================
[2026-06-27 13:50:38,418.418 INFO    ] Launching Daemon at Sat Jun 27 13:50:38 IST 2026
[2026-06-27 13:50:38,429.429 INFO    ] ================================================
[2026-06-27 13:50:38,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:50:38
[2026-06-27 13:50:39,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:50:39,193.193 INFO    ] Initializing speech engine...
[2026-06-27 13:50:39,198.198 INFO    ] 2026-06-27 13:50:39
[2026-06-27 13:50:39,419.419 INFO    ] 2026-06-27 13:50:39
[2026-06-27 13:50:39,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:50:39,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:50:39,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:50:39,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:50:39,866.866 INFO    ] time= 27/06/2026 13:50:39
[2026-06-27 13:50:39,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:50:39,874.874 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:50:39,966.966 INFO    ] No existing commands found in stream
[2026-06-27 13:50:44,975.975 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:50:44,978.978 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-27 13:50:47,046.046 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 13:50:47,048.048 INFO    ] Checking for system updates...
[2026-06-27 13:50:47,069.069 INFO    ] 200
[2026-06-27 13:50:47,070.070 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:50:47,104.104 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:50:47,105.105 INFO    ] No update needed
[2026-06-27 13:50:47,107.107 INFO    ] Checking for camera pi updates...
[2026-06-27 13:50:47,127.127 INFO    ] 200
[2026-06-27 13:50:47,129.129 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:50:47,154.154 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:50:47,195.195 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:50:47,197.197 INFO    ] No camera update needed
[2026-06-27 13:50:47,198.198 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:50:47,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:50:47,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:50:47,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:50:49,244.244 INFO    ] ================================================
[2026-06-27 13:50:49,259.259 INFO    ] Launching Daemon at Sat Jun 27 13:50:49 IST 2026
[2026-06-27 13:50:49,270.270 INFO    ] ================================================
[2026-06-27 13:50:49,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:50:49
[2026-06-27 13:50:49,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:50:50,050.050 INFO    ] Initializing speech engine...
[2026-06-27 13:50:50,059.059 INFO    ] 2026-06-27 13:50:50
[2026-06-27 13:50:50,268.268 INFO    ] 2026-06-27 13:50:50
[2026-06-27 13:50:50,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:50:50,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:50:50,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:50:50,645.645 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:50:50,694.694 INFO    ] time= 27/06/2026 13:50:50
[2026-06-27 13:50:50,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:50:50,722.722 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:50:50,814.814 INFO    ] No existing commands found in stream
[2026-06-27 13:50:55,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:50:55,831.831 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-27 13:51:00,150.150 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 13:51:00,152.152 INFO    ] Checking for system updates...
[2026-06-27 13:51:00,172.172 INFO    ] 200
[2026-06-27 13:51:00,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:51:00,207.207 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:51:00,209.209 INFO    ] No update needed
[2026-06-27 13:51:00,210.210 INFO    ] Checking for camera pi updates...
[2026-06-27 13:51:00,230.230 INFO    ] 200
[2026-06-27 13:51:00,231.231 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:51:00,256.256 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:51:00,302.302 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:51:00,303.303 INFO    ] No camera update needed
[2026-06-27 13:51:00,304.304 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:51:00,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:51:00,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:51:00,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:51:02,347.347 INFO    ] ================================================
[2026-06-27 13:51:02,364.364 INFO    ] Launching Daemon at Sat Jun 27 13:51:02 IST 2026
[2026-06-27 13:51:02,374.374 INFO    ] ================================================
[2026-06-27 13:51:02,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:51:02
[2026-06-27 13:51:03,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:51:03,178.178 INFO    ] Initializing speech engine...
[2026-06-27 13:51:03,191.191 INFO    ] 2026-06-27 13:51:03
[2026-06-27 13:51:03,410.410 INFO    ] 2026-06-27 13:51:03
[2026-06-27 13:51:03,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:51:03,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:51:03,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:51:03,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:51:03,863.863 INFO    ] time= 27/06/2026 13:51:03
[2026-06-27 13:51:03,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:51:03,891.891 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:51:03,967.967 INFO    ] No existing commands found in stream
[2026-06-27 13:51:08,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:51:08,984.984 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-27 13:51:10,412.412 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:51:10,413.413 INFO    ] Checking for system updates...
[2026-06-27 13:51:10,434.434 INFO    ] 200
[2026-06-27 13:51:10,436.436 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:51:10,469.469 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:51:10,471.471 INFO    ] No update needed
[2026-06-27 13:51:10,472.472 INFO    ] Checking for camera pi updates...
[2026-06-27 13:51:10,496.496 INFO    ] 200
[2026-06-27 13:51:10,497.497 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:51:10,524.524 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:51:10,676.676 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:51:10,677.677 INFO    ] No camera update needed
[2026-06-27 13:51:10,679.679 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:51:10,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:51:10,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:51:10,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:51:12,726.726 INFO    ] ================================================
[2026-06-27 13:51:12,741.741 INFO    ] Launching Daemon at Sat Jun 27 13:51:12 IST 2026
[2026-06-27 13:51:12,752.752 INFO    ] ================================================
[2026-06-27 13:51:13,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:51:13
[2026-06-27 13:51:13,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:51:13,557.557 INFO    ] Initializing speech engine...
[2026-06-27 13:51:13,562.562 INFO    ] 2026-06-27 13:51:13
[2026-06-27 13:51:13,767.767 INFO    ] 2026-06-27 13:51:13
[2026-06-27 13:51:13,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:51:14,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:51:14,116.116 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:51:14,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:51:14,288.288 INFO    ] time= 27/06/2026 13:51:14
[2026-06-27 13:51:14,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:51:14,315.315 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:51:14,410.410 INFO    ] No existing commands found in stream
[2026-06-27 13:51:19,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:51:19,423.423 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-27 13:51:20,031.031 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 13:51:20,033.033 INFO    ] Checking for system updates...
[2026-06-27 13:51:20,055.055 INFO    ] 200
[2026-06-27 13:51:20,057.057 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:51:20,089.089 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:51:20,091.091 INFO    ] No update needed
[2026-06-27 13:51:20,092.092 INFO    ] Checking for camera pi updates...
[2026-06-27 13:51:20,112.112 INFO    ] 200
[2026-06-27 13:51:20,114.114 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:51:20,139.139 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:51:20,180.180 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:51:20,181.181 INFO    ] No camera update needed
[2026-06-27 13:51:20,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:51:20,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:51:20,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:51:20,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:51:22,231.231 INFO    ] ================================================
[2026-06-27 13:51:22,246.246 INFO    ] Launching Daemon at Sat Jun 27 13:51:22 IST 2026
[2026-06-27 13:51:22,257.257 INFO    ] ================================================
[2026-06-27 13:51:22,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:51:22
[2026-06-27 13:51:22,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:51:23,082.082 INFO    ] Initializing speech engine...
[2026-06-27 13:51:23,086.086 INFO    ] 2026-06-27 13:51:23
[2026-06-27 13:51:23,288.288 INFO    ] 2026-06-27 13:51:23
[2026-06-27 13:51:23,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:51:23,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:51:23,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:51:23,765.765 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:51:23,791.791 INFO    ] time= 27/06/2026 13:51:23
[2026-06-27 13:51:23,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:51:23,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:51:23,895.895 INFO    ] No existing commands found in stream
[2026-06-27 13:51:28,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:51:28,912.912 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-27 13:51:31,559.559 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 13:51:31,560.560 INFO    ] Checking for system updates...
[2026-06-27 13:51:31,581.581 INFO    ] 200
[2026-06-27 13:51:31,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:51:31,613.613 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:51:31,615.615 INFO    ] No update needed
[2026-06-27 13:51:31,616.616 INFO    ] Checking for camera pi updates...
[2026-06-27 13:51:31,635.635 INFO    ] 200
[2026-06-27 13:51:31,637.637 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:51:31,678.678 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:51:31,705.705 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:51:31,707.707 INFO    ] No camera update needed
[2026-06-27 13:51:31,709.709 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:51:31,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:51:31,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:51:31,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:51:33,758.758 INFO    ] ================================================
[2026-06-27 13:51:33,774.774 INFO    ] Launching Daemon at Sat Jun 27 13:51:33 IST 2026
[2026-06-27 13:51:33,785.785 INFO    ] ================================================
[2026-06-27 13:51:34,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:51:34
[2026-06-27 13:51:34,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:51:34,623.623 INFO    ] Initializing speech engine...
[2026-06-27 13:51:34,636.636 INFO    ] 2026-06-27 13:51:34
[2026-06-27 13:51:34,850.850 INFO    ] 2026-06-27 13:51:34
[2026-06-27 13:51:34,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:51:35,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:51:35,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:51:35,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:51:35,304.304 INFO    ] time= 27/06/2026 13:51:35
[2026-06-27 13:51:35,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:51:35,308.308 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:51:35,375.375 INFO    ] No existing commands found in stream
[2026-06-27 13:51:40,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:51:40,389.389 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-27 13:51:41,566.566 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 13:51:41,568.568 INFO    ] Checking for system updates...
[2026-06-27 13:51:41,589.589 INFO    ] 200
[2026-06-27 13:51:41,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:51:41,624.624 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:51:41,625.625 INFO    ] No update needed
[2026-06-27 13:51:41,626.626 INFO    ] Checking for camera pi updates...
[2026-06-27 13:51:41,649.649 INFO    ] 200
[2026-06-27 13:51:41,650.650 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:51:41,674.674 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:51:41,720.720 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:51:41,722.722 INFO    ] No camera update needed
[2026-06-27 13:51:41,723.723 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:51:41,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:51:41,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:51:41,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:51:43,770.770 INFO    ] ================================================
[2026-06-27 13:51:43,785.785 INFO    ] Launching Daemon at Sat Jun 27 13:51:43 IST 2026
[2026-06-27 13:51:43,795.795 INFO    ] ================================================
[2026-06-27 13:51:44,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:51:44
[2026-06-27 13:51:44,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:51:44,566.566 INFO    ] Initializing speech engine...
[2026-06-27 13:51:44,571.571 INFO    ] 2026-06-27 13:51:44
[2026-06-27 13:51:44,762.762 INFO    ] 2026-06-27 13:51:44
[2026-06-27 13:51:44,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:51:45,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:51:45,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:51:45,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:51:45,355.355 INFO    ] time= 27/06/2026 13:51:45
[2026-06-27 13:51:45,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:51:45,384.384 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:51:45,507.507 INFO    ] No existing commands found in stream
[2026-06-27 13:51:50,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:51:50,519.519 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-27 13:51:51,046.046 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:51:51,048.048 INFO    ] Checking for system updates...
[2026-06-27 13:51:51,069.069 INFO    ] 200
[2026-06-27 13:51:51,070.070 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:51:51,102.102 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:51:51,104.104 INFO    ] No update needed
[2026-06-27 13:51:51,105.105 INFO    ] Checking for camera pi updates...
[2026-06-27 13:51:51,126.126 INFO    ] 200
[2026-06-27 13:51:51,128.128 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:51:51,151.151 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:51:51,198.198 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:51:51,199.199 INFO    ] No camera update needed
[2026-06-27 13:51:51,201.201 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:51:51,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:51:51,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:51:51,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:51:53,248.248 INFO    ] ================================================
[2026-06-27 13:51:53,263.263 INFO    ] Launching Daemon at Sat Jun 27 13:51:53 IST 2026
[2026-06-27 13:51:53,275.275 INFO    ] ================================================
[2026-06-27 13:51:53,600.600 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:51:53
[2026-06-27 13:51:53,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:51:54,044.044 INFO    ] Initializing speech engine...
[2026-06-27 13:51:54,049.049 INFO    ] 2026-06-27 13:51:54
[2026-06-27 13:51:54,267.267 INFO    ] 2026-06-27 13:51:54
[2026-06-27 13:51:54,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:51:54,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:51:54,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:51:54,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:51:54,716.716 INFO    ] time= 27/06/2026 13:51:54
[2026-06-27 13:51:54,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:51:54,723.723 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:51:54,815.815 INFO    ] No existing commands found in stream
[2026-06-27 13:51:59,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:51:59,827.827 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-27 13:52:03,831.831 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:52:03,832.832 INFO    ] Checking for system updates...
[2026-06-27 13:52:03,854.854 INFO    ] 200
[2026-06-27 13:52:03,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:52:03,888.888 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:52:03,889.889 INFO    ] No update needed
[2026-06-27 13:52:03,891.891 INFO    ] Checking for camera pi updates...
[2026-06-27 13:52:03,910.910 INFO    ] 200
[2026-06-27 13:52:03,911.911 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:52:03,935.935 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:52:04,039.039 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:52:04,041.041 INFO    ] No camera update needed
[2026-06-27 13:52:04,042.042 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:52:04,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:52:04,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:52:04,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:52:06,090.090 INFO    ] ================================================
[2026-06-27 13:52:06,107.107 INFO    ] Launching Daemon at Sat Jun 27 13:52:06 IST 2026
[2026-06-27 13:52:06,116.116 INFO    ] ================================================
[2026-06-27 13:52:06,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:52:06
[2026-06-27 13:52:06,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:52:06,936.936 INFO    ] Initializing speech engine...
[2026-06-27 13:52:06,941.941 INFO    ] 2026-06-27 13:52:06
[2026-06-27 13:52:07,153.153 INFO    ] 2026-06-27 13:52:07
[2026-06-27 13:52:07,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:52:07,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:52:07,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:52:07,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:52:07,607.607 INFO    ] time= 27/06/2026 13:52:07
[2026-06-27 13:52:07,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:52:07,615.615 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:52:07,684.684 INFO    ] No existing commands found in stream
[2026-06-27 13:52:12,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:52:12,720.720 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-27 13:52:15,194.194 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:52:15,196.196 INFO    ] Checking for system updates...
[2026-06-27 13:52:15,221.221 INFO    ] 200
[2026-06-27 13:52:15,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:52:15,254.254 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:52:15,256.256 INFO    ] No update needed
[2026-06-27 13:52:15,257.257 INFO    ] Checking for camera pi updates...
[2026-06-27 13:52:15,278.278 INFO    ] 200
[2026-06-27 13:52:15,279.279 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:52:15,302.302 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:52:15,344.344 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:52:15,346.346 INFO    ] No camera update needed
[2026-06-27 13:52:15,347.347 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:52:15,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:52:15,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:52:15,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:52:17,394.394 INFO    ] ================================================
[2026-06-27 13:52:17,410.410 INFO    ] Launching Daemon at Sat Jun 27 13:52:17 IST 2026
[2026-06-27 13:52:17,422.422 INFO    ] ================================================
[2026-06-27 13:52:17,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:52:17
[2026-06-27 13:52:18,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:52:18,243.243 INFO    ] Initializing speech engine...
[2026-06-27 13:52:18,248.248 INFO    ] 2026-06-27 13:52:18
[2026-06-27 13:52:18,451.451 INFO    ] 2026-06-27 13:52:18
[2026-06-27 13:52:18,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:52:18,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:52:18,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:52:18,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:52:18,900.900 INFO    ] time= 27/06/2026 13:52:18
[2026-06-27 13:52:18,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:52:18,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:52:18,971.971 INFO    ] No existing commands found in stream
[2026-06-27 13:52:23,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:52:23,989.989 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-27 13:52:28,110.110 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 13:52:28,111.111 INFO    ] Checking for system updates...
[2026-06-27 13:52:28,133.133 INFO    ] 200
[2026-06-27 13:52:28,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:52:28,165.165 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:52:28,166.166 INFO    ] No update needed
[2026-06-27 13:52:28,168.168 INFO    ] Checking for camera pi updates...
[2026-06-27 13:52:28,189.189 INFO    ] 200
[2026-06-27 13:52:28,190.190 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:52:28,213.213 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:52:28,263.263 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:52:28,264.264 INFO    ] No camera update needed
[2026-06-27 13:52:28,266.266 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:52:28,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:52:28,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:52:28,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:52:30,311.311 INFO    ] ================================================
[2026-06-27 13:52:30,327.327 INFO    ] Launching Daemon at Sat Jun 27 13:52:30 IST 2026
[2026-06-27 13:52:30,339.339 INFO    ] ================================================
[2026-06-27 13:52:30,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:52:30
[2026-06-27 13:52:30,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:52:31,130.130 INFO    ] Initializing speech engine...
[2026-06-27 13:52:31,134.134 INFO    ] 2026-06-27 13:52:31
[2026-06-27 13:52:31,327.327 INFO    ] 2026-06-27 13:52:31
[2026-06-27 13:52:31,373.373 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:52:31,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:52:31,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:52:31,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:52:31,843.843 INFO    ] time= 27/06/2026 13:52:31
[2026-06-27 13:52:31,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:52:31,851.851 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:52:31,925.925 INFO    ] No existing commands found in stream
[2026-06-27 13:52:36,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:52:36,939.939 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-27 13:52:38,430.430 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 13:52:38,432.432 INFO    ] Checking for system updates...
[2026-06-27 13:52:38,454.454 INFO    ] 200
[2026-06-27 13:52:38,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:52:38,488.488 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:52:38,489.489 INFO    ] No update needed
[2026-06-27 13:52:38,490.490 INFO    ] Checking for camera pi updates...
[2026-06-27 13:52:38,513.513 INFO    ] 200
[2026-06-27 13:52:38,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:52:38,538.538 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:52:38,588.588 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:52:38,589.589 INFO    ] No camera update needed
[2026-06-27 13:52:38,591.591 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:52:38,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:52:38,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:52:38,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:52:40,637.637 INFO    ] ================================================
[2026-06-27 13:52:40,654.654 INFO    ] Launching Daemon at Sat Jun 27 13:52:40 IST 2026
[2026-06-27 13:52:40,665.665 INFO    ] ================================================
[2026-06-27 13:52:41,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:52:41
[2026-06-27 13:52:41,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:52:41,463.463 INFO    ] Initializing speech engine...
[2026-06-27 13:52:41,467.467 INFO    ] 2026-06-27 13:52:41
[2026-06-27 13:52:41,675.675 INFO    ] 2026-06-27 13:52:41
[2026-06-27 13:52:41,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:52:41,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:52:41,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:52:42,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:52:42,109.109 INFO    ] time= 27/06/2026 13:52:42
[2026-06-27 13:52:42,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:52:42,140.140 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:52:42,206.206 INFO    ] No existing commands found in stream
[2026-06-27 13:52:47,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:52:47,219.219 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-27 13:52:50,206.206 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 13:52:50,208.208 INFO    ] Checking for system updates...
[2026-06-27 13:52:50,229.229 INFO    ] 200
[2026-06-27 13:52:50,230.230 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:52:50,263.263 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:52:50,265.265 INFO    ] No update needed
[2026-06-27 13:52:50,266.266 INFO    ] Checking for camera pi updates...
[2026-06-27 13:52:50,290.290 INFO    ] 200
[2026-06-27 13:52:50,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:52:50,319.319 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:52:50,364.364 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:52:50,365.365 INFO    ] No camera update needed
[2026-06-27 13:52:50,367.367 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:52:50,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:52:50,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:52:50,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:52:52,417.417 INFO    ] ================================================
[2026-06-27 13:52:52,434.434 INFO    ] Launching Daemon at Sat Jun 27 13:52:52 IST 2026
[2026-06-27 13:52:52,445.445 INFO    ] ================================================
[2026-06-27 13:52:52,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:52:52
[2026-06-27 13:52:53,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:52:53,299.299 INFO    ] Initializing speech engine...
[2026-06-27 13:52:53,305.305 INFO    ] 2026-06-27 13:52:53
[2026-06-27 13:52:53,513.513 INFO    ] 2026-06-27 13:52:53
[2026-06-27 13:52:53,542.542 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:52:53,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:52:53,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:52:53,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:52:53,953.953 INFO    ] time= 27/06/2026 13:52:53
[2026-06-27 13:52:53,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:52:54,008.008 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:52:54,094.094 INFO    ] No existing commands found in stream
[2026-06-27 13:52:59,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:52:59,111.111 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-27 13:53:02,996.996 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 13:53:02,997.997 INFO    ] Checking for system updates...
[2026-06-27 13:53:03,020.020 INFO    ] 200
[2026-06-27 13:53:03,021.021 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:53:03,055.055 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:53:03,057.057 INFO    ] No update needed
[2026-06-27 13:53:03,058.058 INFO    ] Checking for camera pi updates...
[2026-06-27 13:53:03,078.078 INFO    ] 200
[2026-06-27 13:53:03,079.079 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:53:03,104.104 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:53:03,132.132 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:53:03,134.134 INFO    ] No camera update needed
[2026-06-27 13:53:03,135.135 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:53:03,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:53:03,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:53:03,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:53:05,184.184 INFO    ] ================================================
[2026-06-27 13:53:05,199.199 INFO    ] Launching Daemon at Sat Jun 27 13:53:05 IST 2026
[2026-06-27 13:53:05,210.210 INFO    ] ================================================
[2026-06-27 13:53:05,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:53:05
[2026-06-27 13:53:05,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:53:06,055.055 INFO    ] Initializing speech engine...
[2026-06-27 13:53:06,060.060 INFO    ] 2026-06-27 13:53:06
[2026-06-27 13:53:06,267.267 INFO    ] 2026-06-27 13:53:06
[2026-06-27 13:53:06,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:53:06,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:53:06,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:53:06,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:53:06,687.687 INFO    ] time= 27/06/2026 13:53:06
[2026-06-27 13:53:06,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:53:06,716.716 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:53:06,806.806 INFO    ] No existing commands found in stream
[2026-06-27 13:53:11,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:53:11,818.818 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-27 13:53:13,535.535 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:53:13,536.536 INFO    ] Checking for system updates...
[2026-06-27 13:53:13,557.557 INFO    ] 200
[2026-06-27 13:53:13,559.559 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:53:13,592.592 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:53:13,593.593 INFO    ] No update needed
[2026-06-27 13:53:13,595.595 INFO    ] Checking for camera pi updates...
[2026-06-27 13:53:13,615.615 INFO    ] 200
[2026-06-27 13:53:13,616.616 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:53:13,642.642 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:53:13,781.781 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:53:13,783.783 INFO    ] No camera update needed
[2026-06-27 13:53:13,784.784 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:53:13,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:53:13,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:53:13,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:53:15,832.832 INFO    ] ================================================
[2026-06-27 13:53:15,847.847 INFO    ] Launching Daemon at Sat Jun 27 13:53:15 IST 2026
[2026-06-27 13:53:15,858.858 INFO    ] ================================================
[2026-06-27 13:53:16,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:53:16
[2026-06-27 13:53:16,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:53:16,663.663 INFO    ] Initializing speech engine...
[2026-06-27 13:53:16,668.668 INFO    ] 2026-06-27 13:53:16
[2026-06-27 13:53:16,873.873 INFO    ] 2026-06-27 13:53:16
[2026-06-27 13:53:16,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:53:17,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:53:17,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:53:17,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:53:17,291.291 INFO    ] time= 27/06/2026 13:53:17
[2026-06-27 13:53:17,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:53:17,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:53:17,388.388 INFO    ] No existing commands found in stream
[2026-06-27 13:53:22,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:53:22,399.399 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-27 13:53:26,655.655 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 13:53:26,657.657 INFO    ] Checking for system updates...
[2026-06-27 13:53:26,678.678 INFO    ] 200
[2026-06-27 13:53:26,679.679 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:53:26,713.713 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:53:26,715.715 INFO    ] No update needed
[2026-06-27 13:53:26,716.716 INFO    ] Checking for camera pi updates...
[2026-06-27 13:53:26,737.737 INFO    ] 200
[2026-06-27 13:53:26,738.738 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:53:26,761.761 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:53:26,804.804 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:53:26,806.806 INFO    ] No camera update needed
[2026-06-27 13:53:26,807.807 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:53:26,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:53:26,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:53:26,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:53:28,852.852 INFO    ] ================================================
[2026-06-27 13:53:28,869.869 INFO    ] Launching Daemon at Sat Jun 27 13:53:28 IST 2026
[2026-06-27 13:53:28,881.881 INFO    ] ================================================
[2026-06-27 13:53:29,221.221 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:53:29
[2026-06-27 13:53:29,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:53:29,673.673 INFO    ] Initializing speech engine...
[2026-06-27 13:53:29,679.679 INFO    ] 2026-06-27 13:53:29
[2026-06-27 13:53:29,881.881 INFO    ] 2026-06-27 13:53:29
[2026-06-27 13:53:29,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:53:30,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:53:30,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:53:30,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:53:30,324.324 INFO    ] time= 27/06/2026 13:53:30
[2026-06-27 13:53:30,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:53:30,327.327 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:53:30,417.417 INFO    ] No existing commands found in stream
[2026-06-27 13:53:35,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:53:35,433.433 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-27 13:53:39,869.869 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 13:53:39,870.870 INFO    ] Checking for system updates...
[2026-06-27 13:53:39,891.891 INFO    ] 200
[2026-06-27 13:53:39,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:53:39,922.922 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:53:39,924.924 INFO    ] No update needed
[2026-06-27 13:53:39,925.925 INFO    ] Checking for camera pi updates...
[2026-06-27 13:53:39,945.945 INFO    ] 200
[2026-06-27 13:53:39,947.947 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:53:39,970.970 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:53:40,017.017 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:53:40,018.018 INFO    ] No camera update needed
[2026-06-27 13:53:40,019.019 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:53:40,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:53:40,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:53:40,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:53:42,068.068 INFO    ] ================================================
[2026-06-27 13:53:42,083.083 INFO    ] Launching Daemon at Sat Jun 27 13:53:42 IST 2026
[2026-06-27 13:53:42,094.094 INFO    ] ================================================
[2026-06-27 13:53:42,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:53:42
[2026-06-27 13:53:42,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:53:42,885.885 INFO    ] Initializing speech engine...
[2026-06-27 13:53:42,889.889 INFO    ] 2026-06-27 13:53:42
[2026-06-27 13:53:43,082.082 INFO    ] 2026-06-27 13:53:43
[2026-06-27 13:53:43,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:53:43,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:53:43,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:53:43,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:53:43,558.558 INFO    ] time= 27/06/2026 13:53:43
[2026-06-27 13:53:43,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:53:43,611.611 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:53:43,687.687 INFO    ] No existing commands found in stream
[2026-06-27 13:53:48,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:53:48,700.700 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-27 13:53:50,029.029 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 13:53:50,031.031 INFO    ] Checking for system updates...
[2026-06-27 13:53:50,054.054 INFO    ] 200
[2026-06-27 13:53:50,056.056 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:53:50,087.087 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:53:50,088.088 INFO    ] No update needed
[2026-06-27 13:53:50,090.090 INFO    ] Checking for camera pi updates...
[2026-06-27 13:53:50,111.111 INFO    ] 200
[2026-06-27 13:53:50,113.113 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:53:50,140.140 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:53:50,188.188 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:53:50,189.189 INFO    ] No camera update needed
[2026-06-27 13:53:50,190.190 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:53:50,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:53:50,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:53:50,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:53:52,231.231 INFO    ] ================================================
[2026-06-27 13:53:52,240.240 INFO    ] Launching Daemon at Sat Jun 27 13:53:52 IST 2026
[2026-06-27 13:53:52,246.246 INFO    ] ================================================
[2026-06-27 13:53:52,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:53:52
[2026-06-27 13:53:52,865.865 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:53:52,998.998 INFO    ] Initializing speech engine...
[2026-06-27 13:53:53,003.003 INFO    ] 2026-06-27 13:53:53
[2026-06-27 13:53:53,233.233 INFO    ] 2026-06-27 13:53:53
[2026-06-27 13:53:53,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:53:53,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:53:53,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:53:53,562.562 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:53:53,618.618 INFO    ] time= 27/06/2026 13:53:53
[2026-06-27 13:53:53,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:53:53,702.702 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:53:53,821.821 INFO    ] No existing commands found in stream
[2026-06-27 13:53:58,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:53:58,836.836 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-27 13:54:02,003.003 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 13:54:02,005.005 INFO    ] Checking for system updates...
[2026-06-27 13:54:02,034.034 INFO    ] 200
[2026-06-27 13:54:02,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:54:02,076.076 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:54:02,078.078 INFO    ] No update needed
[2026-06-27 13:54:02,080.080 INFO    ] Checking for camera pi updates...
[2026-06-27 13:54:02,104.104 INFO    ] 200
[2026-06-27 13:54:02,106.106 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:54:02,134.134 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:54:02,162.162 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:54:02,165.165 INFO    ] No camera update needed
[2026-06-27 13:54:02,167.167 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:54:02,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:54:02,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:54:02,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:54:04,211.211 INFO    ] ================================================
[2026-06-27 13:54:04,220.220 INFO    ] Launching Daemon at Sat Jun 27 13:54:04 IST 2026
[2026-06-27 13:54:04,226.226 INFO    ] ================================================
[2026-06-27 13:54:04,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:54:04
[2026-06-27 13:54:04,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:54:05,034.034 INFO    ] Initializing speech engine...
[2026-06-27 13:54:05,040.040 INFO    ] 2026-06-27 13:54:05
[2026-06-27 13:54:05,250.250 INFO    ] 2026-06-27 13:54:05
[2026-06-27 13:54:05,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:54:05,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:54:05,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:54:05,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:54:05,677.677 INFO    ] time= 27/06/2026 13:54:05
[2026-06-27 13:54:05,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:54:05,719.719 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:54:05,812.812 INFO    ] No existing commands found in stream
[2026-06-27 13:54:10,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:54:10,824.824 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-27 13:54:12,869.869 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:54:12,870.870 INFO    ] Checking for system updates...
[2026-06-27 13:54:12,892.892 INFO    ] 200
[2026-06-27 13:54:12,893.893 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:54:12,927.927 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:54:12,928.928 INFO    ] No update needed
[2026-06-27 13:54:12,929.929 INFO    ] Checking for camera pi updates...
[2026-06-27 13:54:12,954.954 INFO    ] 200
[2026-06-27 13:54:12,955.955 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:54:12,981.981 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:54:13,024.024 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:54:13,025.025 INFO    ] No camera update needed
[2026-06-27 13:54:13,027.027 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:54:13,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:54:13,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:54:13,035.035 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:54:15,075.075 INFO    ] ================================================
[2026-06-27 13:54:15,091.091 INFO    ] Launching Daemon at Sat Jun 27 13:54:15 IST 2026
[2026-06-27 13:54:15,102.102 INFO    ] ================================================
[2026-06-27 13:54:15,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:54:15
[2026-06-27 13:54:15,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:54:15,888.888 INFO    ] Initializing speech engine...
[2026-06-27 13:54:15,894.894 INFO    ] 2026-06-27 13:54:15
[2026-06-27 13:54:16,125.125 INFO    ] 2026-06-27 13:54:16
[2026-06-27 13:54:16,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:54:16,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:54:16,367.367 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:54:16,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:54:16,561.561 INFO    ] time= 27/06/2026 13:54:16
[2026-06-27 13:54:16,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:54:16,610.610 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:54:16,687.687 INFO    ] No existing commands found in stream
[2026-06-27 13:54:21,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:54:21,699.699 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-27 13:54:25,800.800 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 13:54:25,802.802 INFO    ] Checking for system updates...
[2026-06-27 13:54:25,823.823 INFO    ] 200
[2026-06-27 13:54:25,824.824 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:54:25,857.857 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:54:25,859.859 INFO    ] No update needed
[2026-06-27 13:54:25,860.860 INFO    ] Checking for camera pi updates...
[2026-06-27 13:54:25,880.880 INFO    ] 200
[2026-06-27 13:54:25,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:54:25,907.907 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:54:25,943.943 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:54:25,945.945 INFO    ] No camera update needed
[2026-06-27 13:54:25,946.946 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:54:25,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:54:25,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:54:25,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:54:27,987.987 INFO    ] ================================================
[2026-06-27 13:54:28,003.003 INFO    ] Launching Daemon at Sat Jun 27 13:54:27 IST 2026
[2026-06-27 13:54:28,014.014 INFO    ] ================================================
[2026-06-27 13:54:28,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:54:28
[2026-06-27 13:54:28,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:54:28,879.879 INFO    ] Initializing speech engine...
[2026-06-27 13:54:28,885.885 INFO    ] 2026-06-27 13:54:28
[2026-06-27 13:54:29,092.092 INFO    ] 2026-06-27 13:54:29
[2026-06-27 13:54:29,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:54:29,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:54:29,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:54:29,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:54:29,552.552 INFO    ] time= 27/06/2026 13:54:29
[2026-06-27 13:54:29,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:54:29,558.558 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:54:29,645.645 INFO    ] No existing commands found in stream
[2026-06-27 13:54:34,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:54:34,658.658 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-27 13:54:38,229.229 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 13:54:38,230.230 INFO    ] Checking for system updates...
[2026-06-27 13:54:38,252.252 INFO    ] 200
[2026-06-27 13:54:38,253.253 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:54:38,284.284 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:54:38,286.286 INFO    ] No update needed
[2026-06-27 13:54:38,287.287 INFO    ] Checking for camera pi updates...
[2026-06-27 13:54:38,307.307 INFO    ] 200
[2026-06-27 13:54:38,309.309 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:54:38,334.334 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:54:38,360.360 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:54:38,362.362 INFO    ] No camera update needed
[2026-06-27 13:54:38,363.363 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:54:38,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:54:38,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:54:38,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:54:40,410.410 INFO    ] ================================================
[2026-06-27 13:54:40,426.426 INFO    ] Launching Daemon at Sat Jun 27 13:54:40 IST 2026
[2026-06-27 13:54:40,437.437 INFO    ] ================================================
[2026-06-27 13:54:40,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:54:40
[2026-06-27 13:54:41,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:54:41,270.270 INFO    ] Initializing speech engine...
[2026-06-27 13:54:41,281.281 INFO    ] 2026-06-27 13:54:41
[2026-06-27 13:54:41,492.492 INFO    ] 2026-06-27 13:54:41
[2026-06-27 13:54:41,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:54:41,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:54:41,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:54:41,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:54:41,943.943 INFO    ] time= 27/06/2026 13:54:41
[2026-06-27 13:54:41,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:54:41,950.950 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:54:42,042.042 INFO    ] No existing commands found in stream
[2026-06-27 13:54:47,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:54:47,071.071 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-27 13:54:50,005.005 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 13:54:50,006.006 INFO    ] Checking for system updates...
[2026-06-27 13:54:50,027.027 INFO    ] 200
[2026-06-27 13:54:50,029.029 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:54:50,062.062 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:54:50,064.064 INFO    ] No update needed
[2026-06-27 13:54:50,065.065 INFO    ] Checking for camera pi updates...
[2026-06-27 13:54:50,085.085 INFO    ] 200
[2026-06-27 13:54:50,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:54:50,111.111 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:54:50,150.150 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:54:50,151.151 INFO    ] No camera update needed
[2026-06-27 13:54:50,153.153 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:54:50,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:54:50,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:54:50,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:54:52,201.201 INFO    ] ================================================
[2026-06-27 13:54:52,216.216 INFO    ] Launching Daemon at Sat Jun 27 13:54:52 IST 2026
[2026-06-27 13:54:52,227.227 INFO    ] ================================================
[2026-06-27 13:54:52,591.591 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:54:52
[2026-06-27 13:54:52,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:54:53,050.050 INFO    ] Initializing speech engine...
[2026-06-27 13:54:53,061.061 INFO    ] 2026-06-27 13:54:53
[2026-06-27 13:54:53,273.273 INFO    ] 2026-06-27 13:54:53
[2026-06-27 13:54:53,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:54:53,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:54:53,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:54:53,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:54:53,725.725 INFO    ] time= 27/06/2026 13:54:53
[2026-06-27 13:54:53,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:54:53,733.733 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:54:53,800.800 INFO    ] No existing commands found in stream
[2026-06-27 13:54:58,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:54:58,815.815 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-27 13:54:59,270.270 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 13:54:59,271.271 INFO    ] Checking for system updates...
[2026-06-27 13:54:59,294.294 INFO    ] 200
[2026-06-27 13:54:59,296.296 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:54:59,327.327 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:54:59,328.328 INFO    ] No update needed
[2026-06-27 13:54:59,330.330 INFO    ] Checking for camera pi updates...
[2026-06-27 13:54:59,351.351 INFO    ] 200
[2026-06-27 13:54:59,352.352 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:54:59,386.386 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:54:59,432.432 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:54:59,433.433 INFO    ] No camera update needed
[2026-06-27 13:54:59,435.435 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:54:59,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:54:59,440.440 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:54:59,443.443 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:55:01,483.483 INFO    ] ================================================
[2026-06-27 13:55:01,499.499 INFO    ] Launching Daemon at Sat Jun 27 13:55:01 IST 2026
[2026-06-27 13:55:01,510.510 INFO    ] ================================================
[2026-06-27 13:55:02,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:55:02
[2026-06-27 13:55:02,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:55:02,603.603 INFO    ] Initializing speech engine...
[2026-06-27 13:55:02,611.611 INFO    ] 2026-06-27 13:55:02
[2026-06-27 13:55:02,837.837 INFO    ] 2026-06-27 13:55:02
[2026-06-27 13:55:02,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:55:03,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:55:03,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:55:03,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:55:03,322.322 INFO    ] time= 27/06/2026 13:55:03
[2026-06-27 13:55:03,328.328 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:55:03,330.330 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:55:03,420.420 INFO    ] No existing commands found in stream
[2026-06-27 13:55:08,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:55:08,428.428 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-27 13:55:10,527.527 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 13:55:10,528.528 INFO    ] Checking for system updates...
[2026-06-27 13:55:10,549.549 INFO    ] 200
[2026-06-27 13:55:10,550.550 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:55:10,581.581 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:55:10,582.582 INFO    ] No update needed
[2026-06-27 13:55:10,584.584 INFO    ] Checking for camera pi updates...
[2026-06-27 13:55:10,605.605 INFO    ] 200
[2026-06-27 13:55:10,606.606 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:55:10,630.630 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:55:10,676.676 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:55:10,678.678 INFO    ] No camera update needed
[2026-06-27 13:55:10,679.679 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:55:10,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:55:10,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:55:10,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:55:12,725.725 INFO    ] ================================================
[2026-06-27 13:55:12,740.740 INFO    ] Launching Daemon at Sat Jun 27 13:55:12 IST 2026
[2026-06-27 13:55:12,751.751 INFO    ] ================================================
[2026-06-27 13:55:13,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:55:13
[2026-06-27 13:55:13,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:55:13,572.572 INFO    ] Initializing speech engine...
[2026-06-27 13:55:13,578.578 INFO    ] 2026-06-27 13:55:13
[2026-06-27 13:55:13,785.785 INFO    ] 2026-06-27 13:55:13
[2026-06-27 13:55:13,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:55:14,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:55:14,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:55:14,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:55:14,207.207 INFO    ] time= 27/06/2026 13:55:14
[2026-06-27 13:55:14,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:55:14,236.236 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:55:14,328.328 INFO    ] No existing commands found in stream
[2026-06-27 13:55:19,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:55:19,339.339 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-27 13:55:21,735.735 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:55:21,736.736 INFO    ] Checking for system updates...
[2026-06-27 13:55:21,756.756 INFO    ] 200
[2026-06-27 13:55:21,758.758 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:55:21,788.788 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:55:21,790.790 INFO    ] No update needed
[2026-06-27 13:55:21,791.791 INFO    ] Checking for camera pi updates...
[2026-06-27 13:55:21,811.811 INFO    ] 200
[2026-06-27 13:55:21,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:55:21,837.837 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:55:21,978.978 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:55:21,980.980 INFO    ] No camera update needed
[2026-06-27 13:55:21,981.981 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:55:21,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:55:21,985.985 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:55:21,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:55:24,027.027 INFO    ] ================================================
[2026-06-27 13:55:24,042.042 INFO    ] Launching Daemon at Sat Jun 27 13:55:24 IST 2026
[2026-06-27 13:55:24,054.054 INFO    ] ================================================
[2026-06-27 13:55:24,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:55:24
[2026-06-27 13:55:24,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:55:24,900.900 INFO    ] Initializing speech engine...
[2026-06-27 13:55:24,906.906 INFO    ] 2026-06-27 13:55:24
[2026-06-27 13:55:25,108.108 INFO    ] 2026-06-27 13:55:25
[2026-06-27 13:55:25,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:55:25,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:55:25,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:55:25,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:55:25,550.550 INFO    ] time= 27/06/2026 13:55:25
[2026-06-27 13:55:25,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:55:25,557.557 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:55:25,645.645 INFO    ] No existing commands found in stream
[2026-06-27 13:55:30,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:55:30,657.657 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-27 13:55:33,469.469 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:55:33,470.470 INFO    ] Checking for system updates...
[2026-06-27 13:55:33,491.491 INFO    ] 200
[2026-06-27 13:55:33,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:55:33,524.524 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:55:33,525.525 INFO    ] No update needed
[2026-06-27 13:55:33,526.526 INFO    ] Checking for camera pi updates...
[2026-06-27 13:55:33,546.546 INFO    ] 200
[2026-06-27 13:55:33,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:55:33,572.572 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:55:33,617.617 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:55:33,618.618 INFO    ] No camera update needed
[2026-06-27 13:55:33,620.620 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:55:33,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:55:33,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:55:33,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:55:35,667.667 INFO    ] ================================================
[2026-06-27 13:55:35,682.682 INFO    ] Launching Daemon at Sat Jun 27 13:55:35 IST 2026
[2026-06-27 13:55:35,693.693 INFO    ] ================================================
[2026-06-27 13:55:36,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:55:36
[2026-06-27 13:55:36,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:55:36,508.508 INFO    ] Initializing speech engine...
[2026-06-27 13:55:36,512.512 INFO    ] 2026-06-27 13:55:36
[2026-06-27 13:55:36,741.741 INFO    ] 2026-06-27 13:55:36
[2026-06-27 13:55:36,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:55:36,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:55:36,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:55:37,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:55:37,176.176 INFO    ] time= 27/06/2026 13:55:37
[2026-06-27 13:55:37,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:55:37,221.221 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:55:37,291.291 INFO    ] No existing commands found in stream
[2026-06-27 13:55:42,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:55:42,305.305 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-27 13:55:44,457.457 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 13:55:44,458.458 INFO    ] Checking for system updates...
[2026-06-27 13:55:44,480.480 INFO    ] 200
[2026-06-27 13:55:44,481.481 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:55:44,512.512 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:55:44,514.514 INFO    ] No update needed
[2026-06-27 13:55:44,515.515 INFO    ] Checking for camera pi updates...
[2026-06-27 13:55:44,545.545 INFO    ] 200
[2026-06-27 13:55:44,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:55:44,569.569 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:55:44,614.614 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:55:44,615.615 INFO    ] No camera update needed
[2026-06-27 13:55:44,616.616 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:55:44,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:55:44,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:55:44,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:55:46,662.662 INFO    ] ================================================
[2026-06-27 13:55:46,678.678 INFO    ] Launching Daemon at Sat Jun 27 13:55:46 IST 2026
[2026-06-27 13:55:46,690.690 INFO    ] ================================================
[2026-06-27 13:55:47,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:55:47
[2026-06-27 13:55:47,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:55:47,488.488 INFO    ] Initializing speech engine...
[2026-06-27 13:55:47,492.492 INFO    ] 2026-06-27 13:55:47
[2026-06-27 13:55:47,714.714 INFO    ] 2026-06-27 13:55:47
[2026-06-27 13:55:47,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:55:47,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:55:47,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:55:48,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:55:48,161.161 INFO    ] time= 27/06/2026 13:55:48
[2026-06-27 13:55:48,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:55:48,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:55:48,314.314 INFO    ] No existing commands found in stream
[2026-06-27 13:55:53,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:55:53,326.326 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-27 13:55:54,369.369 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:55:54,371.371 INFO    ] Checking for system updates...
[2026-06-27 13:55:54,411.411 INFO    ] 200
[2026-06-27 13:55:54,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:55:54,446.446 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:55:54,448.448 INFO    ] No update needed
[2026-06-27 13:55:54,449.449 INFO    ] Checking for camera pi updates...
[2026-06-27 13:55:54,469.469 INFO    ] 200
[2026-06-27 13:55:54,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:55:54,494.494 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:55:54,523.523 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:55:54,524.524 INFO    ] No camera update needed
[2026-06-27 13:55:54,526.526 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:55:54,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:55:54,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:55:54,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:55:56,571.571 INFO    ] ================================================
[2026-06-27 13:55:56,586.586 INFO    ] Launching Daemon at Sat Jun 27 13:55:56 IST 2026
[2026-06-27 13:55:56,597.597 INFO    ] ================================================
[2026-06-27 13:55:56,925.925 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:55:56
[2026-06-27 13:55:57,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:55:57,375.375 INFO    ] Initializing speech engine...
[2026-06-27 13:55:57,385.385 INFO    ] 2026-06-27 13:55:57
[2026-06-27 13:55:57,591.591 INFO    ] 2026-06-27 13:55:57
[2026-06-27 13:55:57,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:55:57,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:55:57,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:55:58,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:55:58,038.038 INFO    ] time= 27/06/2026 13:55:58
[2026-06-27 13:55:58,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:55:58,041.041 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:55:58,132.132 INFO    ] No existing commands found in stream
[2026-06-27 13:56:03,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:56:03,144.144 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-27 13:56:07,318.318 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 13:56:07,320.320 INFO    ] Checking for system updates...
[2026-06-27 13:56:07,342.342 INFO    ] 200
[2026-06-27 13:56:07,344.344 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:56:07,374.374 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:56:07,376.376 INFO    ] No update needed
[2026-06-27 13:56:07,377.377 INFO    ] Checking for camera pi updates...
[2026-06-27 13:56:07,397.397 INFO    ] 200
[2026-06-27 13:56:07,399.399 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:56:07,422.422 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:56:07,466.466 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:56:07,468.468 INFO    ] No camera update needed
[2026-06-27 13:56:07,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:56:07,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:56:07,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:56:07,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:56:09,515.515 INFO    ] ================================================
[2026-06-27 13:56:09,531.531 INFO    ] Launching Daemon at Sat Jun 27 13:56:09 IST 2026
[2026-06-27 13:56:09,542.542 INFO    ] ================================================
[2026-06-27 13:56:09,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:56:09
[2026-06-27 13:56:10,211.211 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:56:10,348.348 INFO    ] Initializing speech engine...
[2026-06-27 13:56:10,361.361 INFO    ] 2026-06-27 13:56:10
[2026-06-27 13:56:10,580.580 INFO    ] 2026-06-27 13:56:10
[2026-06-27 13:56:10,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:56:10,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:56:10,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:56:11,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:56:11,057.057 INFO    ] time= 27/06/2026 13:56:11
[2026-06-27 13:56:11,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:56:11,064.064 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:56:11,134.134 INFO    ] No existing commands found in stream
[2026-06-27 13:56:16,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:56:16,148.148 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-27 13:56:18,837.837 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 13:56:18,839.839 INFO    ] Checking for system updates...
[2026-06-27 13:56:18,859.859 INFO    ] 200
[2026-06-27 13:56:18,861.861 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:56:18,891.891 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:56:18,893.893 INFO    ] No update needed
[2026-06-27 13:56:18,894.894 INFO    ] Checking for camera pi updates...
[2026-06-27 13:56:18,915.915 INFO    ] 200
[2026-06-27 13:56:18,916.916 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:56:18,941.941 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:56:18,983.983 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:56:18,984.984 INFO    ] No camera update needed
[2026-06-27 13:56:18,986.986 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:56:18,987.987 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:56:18,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:56:18,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:56:21,031.031 INFO    ] ================================================
[2026-06-27 13:56:21,046.046 INFO    ] Launching Daemon at Sat Jun 27 13:56:21 IST 2026
[2026-06-27 13:56:21,057.057 INFO    ] ================================================
[2026-06-27 13:56:21,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:56:21
[2026-06-27 13:56:21,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:56:21,831.831 INFO    ] Initializing speech engine...
[2026-06-27 13:56:21,835.835 INFO    ] 2026-06-27 13:56:21
[2026-06-27 13:56:22,028.028 INFO    ] 2026-06-27 13:56:22
[2026-06-27 13:56:22,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:56:22,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:56:22,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:56:22,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:56:22,499.499 INFO    ] time= 27/06/2026 13:56:22
[2026-06-27 13:56:22,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:56:22,555.555 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:56:22,654.654 INFO    ] No existing commands found in stream
[2026-06-27 13:56:27,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:56:27,665.665 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-27 13:56:29,254.254 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 13:56:29,255.255 INFO    ] Checking for system updates...
[2026-06-27 13:56:29,277.277 INFO    ] 200
[2026-06-27 13:56:29,278.278 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:56:29,309.309 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:56:29,311.311 INFO    ] No update needed
[2026-06-27 13:56:29,312.312 INFO    ] Checking for camera pi updates...
[2026-06-27 13:56:29,333.333 INFO    ] 200
[2026-06-27 13:56:29,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:56:29,361.361 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:56:29,391.391 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:56:29,392.392 INFO    ] No camera update needed
[2026-06-27 13:56:29,394.394 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:56:29,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:56:29,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:56:29,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:56:31,447.447 INFO    ] ================================================
[2026-06-27 13:56:31,464.464 INFO    ] Launching Daemon at Sat Jun 27 13:56:31 IST 2026
[2026-06-27 13:56:31,476.476 INFO    ] ================================================
[2026-06-27 13:56:31,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:56:31
[2026-06-27 13:56:32,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:56:32,307.307 INFO    ] Initializing speech engine...
[2026-06-27 13:56:32,310.310 INFO    ] 2026-06-27 13:56:32
[2026-06-27 13:56:32,507.507 INFO    ] 2026-06-27 13:56:32
[2026-06-27 13:56:32,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:56:32,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:56:32,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:56:33,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:56:33,024.024 INFO    ] time= 27/06/2026 13:56:33
[2026-06-27 13:56:33,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:56:33,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:56:33,125.125 INFO    ] No existing commands found in stream
[2026-06-27 13:56:38,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:56:38,137.137 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-27 13:56:41,574.574 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 13:56:41,576.576 INFO    ] Checking for system updates...
[2026-06-27 13:56:41,597.597 INFO    ] 200
[2026-06-27 13:56:41,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:56:41,631.631 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:56:41,633.633 INFO    ] No update needed
[2026-06-27 13:56:41,634.634 INFO    ] Checking for camera pi updates...
[2026-06-27 13:56:41,655.655 INFO    ] 200
[2026-06-27 13:56:41,656.656 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:56:41,680.680 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:56:41,706.706 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:56:41,708.708 INFO    ] No camera update needed
[2026-06-27 13:56:41,709.709 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:56:41,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:56:41,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:56:41,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:56:43,756.756 INFO    ] ================================================
[2026-06-27 13:56:43,771.771 INFO    ] Launching Daemon at Sat Jun 27 13:56:43 IST 2026
[2026-06-27 13:56:43,783.783 INFO    ] ================================================
[2026-06-27 13:56:44,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:56:44
[2026-06-27 13:56:44,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:56:44,604.604 INFO    ] Initializing speech engine...
[2026-06-27 13:56:44,612.612 INFO    ] 2026-06-27 13:56:44
[2026-06-27 13:56:44,830.830 INFO    ] 2026-06-27 13:56:44
[2026-06-27 13:56:44,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:56:45,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:56:45,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:56:45,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:56:45,275.275 INFO    ] time= 27/06/2026 13:56:45
[2026-06-27 13:56:45,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:56:45,283.283 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:56:45,374.374 INFO    ] No existing commands found in stream
[2026-06-27 13:56:50,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:56:50,402.402 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-27 13:56:52,437.437 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 13:56:52,438.438 INFO    ] Checking for system updates...
[2026-06-27 13:56:52,459.459 INFO    ] 200
[2026-06-27 13:56:52,461.461 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:56:52,495.495 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:56:52,496.496 INFO    ] No update needed
[2026-06-27 13:56:52,498.498 INFO    ] Checking for camera pi updates...
[2026-06-27 13:56:52,521.521 INFO    ] 200
[2026-06-27 13:56:52,523.523 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:56:52,551.551 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:56:52,594.594 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:56:52,595.595 INFO    ] No camera update needed
[2026-06-27 13:56:52,597.597 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:56:52,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:56:52,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:56:52,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:56:54,644.644 INFO    ] ================================================
[2026-06-27 13:56:54,660.660 INFO    ] Launching Daemon at Sat Jun 27 13:56:54 IST 2026
[2026-06-27 13:56:54,671.671 INFO    ] ================================================
[2026-06-27 13:56:55,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:56:55
[2026-06-27 13:56:55,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:56:55,490.490 INFO    ] Initializing speech engine...
[2026-06-27 13:56:55,497.497 INFO    ] 2026-06-27 13:56:55
[2026-06-27 13:56:55,704.704 INFO    ] 2026-06-27 13:56:55
[2026-06-27 13:56:55,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:56:55,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:56:55,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:56:56,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:56:56,147.147 INFO    ] time= 27/06/2026 13:56:56
[2026-06-27 13:56:56,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:56:56,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:56:56,241.241 INFO    ] No existing commands found in stream
[2026-06-27 13:57:01,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:57:01,257.257 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-27 13:57:05,588.588 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 13:57:05,589.589 INFO    ] Checking for system updates...
[2026-06-27 13:57:05,611.611 INFO    ] 200
[2026-06-27 13:57:05,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:57:05,647.647 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:57:05,649.649 INFO    ] No update needed
[2026-06-27 13:57:05,652.652 INFO    ] Checking for camera pi updates...
[2026-06-27 13:57:05,680.680 INFO    ] 200
[2026-06-27 13:57:05,682.682 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:57:05,712.712 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:57:05,760.760 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:57:05,761.761 INFO    ] No camera update needed
[2026-06-27 13:57:05,763.763 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:57:05,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:57:05,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:57:05,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:57:07,811.811 INFO    ] ================================================
[2026-06-27 13:57:07,826.826 INFO    ] Launching Daemon at Sat Jun 27 13:57:07 IST 2026
[2026-06-27 13:57:07,837.837 INFO    ] ================================================
[2026-06-27 13:57:08,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:57:08
[2026-06-27 13:57:08,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:57:08,615.615 INFO    ] Initializing speech engine...
[2026-06-27 13:57:08,627.627 INFO    ] 2026-06-27 13:57:08
[2026-06-27 13:57:08,836.836 INFO    ] 2026-06-27 13:57:08
[2026-06-27 13:57:08,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:57:09,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:57:09,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:57:09,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:57:09,248.248 INFO    ] time= 27/06/2026 13:57:09
[2026-06-27 13:57:09,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:57:09,288.288 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:57:09,361.361 INFO    ] No existing commands found in stream
[2026-06-27 13:57:14,369.369 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:57:14,372.372 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-27 13:57:17,886.886 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:57:17,887.887 INFO    ] Checking for system updates...
[2026-06-27 13:57:17,908.908 INFO    ] 200
[2026-06-27 13:57:17,909.909 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:57:17,940.940 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:57:17,941.941 INFO    ] No update needed
[2026-06-27 13:57:17,942.942 INFO    ] Checking for camera pi updates...
[2026-06-27 13:57:17,962.962 INFO    ] 200
[2026-06-27 13:57:17,963.963 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:57:17,988.988 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:57:18,029.029 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:57:18,030.030 INFO    ] No camera update needed
[2026-06-27 13:57:18,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:57:18,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:57:18,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:57:18,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:57:20,081.081 INFO    ] ================================================
[2026-06-27 13:57:20,096.096 INFO    ] Launching Daemon at Sat Jun 27 13:57:20 IST 2026
[2026-06-27 13:57:20,106.106 INFO    ] ================================================
[2026-06-27 13:57:20,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:57:20
[2026-06-27 13:57:20,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:57:20,938.938 INFO    ] Initializing speech engine...
[2026-06-27 13:57:20,948.948 INFO    ] 2026-06-27 13:57:20
[2026-06-27 13:57:21,153.153 INFO    ] 2026-06-27 13:57:21
[2026-06-27 13:57:21,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:57:21,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:57:21,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:57:21,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:57:21,596.596 INFO    ] time= 27/06/2026 13:57:21
[2026-06-27 13:57:21,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:57:21,599.599 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:57:21,665.665 INFO    ] No existing commands found in stream
[2026-06-27 13:57:26,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:57:26,677.677 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-27 13:57:27,524.524 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:57:27,525.525 INFO    ] Checking for system updates...
[2026-06-27 13:57:27,548.548 INFO    ] 200
[2026-06-27 13:57:27,550.550 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:57:27,580.580 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:57:27,582.582 INFO    ] No update needed
[2026-06-27 13:57:27,583.583 INFO    ] Checking for camera pi updates...
[2026-06-27 13:57:27,604.604 INFO    ] 200
[2026-06-27 13:57:27,606.606 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:57:27,631.631 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:57:27,774.774 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:57:27,776.776 INFO    ] No camera update needed
[2026-06-27 13:57:27,777.777 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:57:27,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:57:27,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:57:27,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:57:29,823.823 INFO    ] ================================================
[2026-06-27 13:57:29,838.838 INFO    ] Launching Daemon at Sat Jun 27 13:57:29 IST 2026
[2026-06-27 13:57:29,849.849 INFO    ] ================================================
[2026-06-27 13:57:30,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:57:30
[2026-06-27 13:57:30,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:57:30,649.649 INFO    ] Initializing speech engine...
[2026-06-27 13:57:30,654.654 INFO    ] 2026-06-27 13:57:30
[2026-06-27 13:57:30,871.871 INFO    ] 2026-06-27 13:57:30
[2026-06-27 13:57:30,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:57:31,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:57:31,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:57:31,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:57:31,450.450 INFO    ] time= 27/06/2026 13:57:31
[2026-06-27 13:57:31,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:57:31,456.456 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:57:31,548.548 INFO    ] No existing commands found in stream
[2026-06-27 13:57:36,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:57:36,561.561 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-27 13:57:37,149.149 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 13:57:37,150.150 INFO    ] Checking for system updates...
[2026-06-27 13:57:37,174.174 INFO    ] 200
[2026-06-27 13:57:37,176.176 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:57:37,206.206 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:57:37,207.207 INFO    ] No update needed
[2026-06-27 13:57:37,209.209 INFO    ] Checking for camera pi updates...
[2026-06-27 13:57:37,228.228 INFO    ] 200
[2026-06-27 13:57:37,230.230 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:57:37,254.254 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:57:37,304.304 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:57:37,306.306 INFO    ] No camera update needed
[2026-06-27 13:57:37,307.307 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:57:37,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:57:37,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:57:37,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:57:39,355.355 INFO    ] ================================================
[2026-06-27 13:57:39,370.370 INFO    ] Launching Daemon at Sat Jun 27 13:57:39 IST 2026
[2026-06-27 13:57:39,381.381 INFO    ] ================================================
[2026-06-27 13:57:39,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:57:39
[2026-06-27 13:57:40,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:57:40,225.225 INFO    ] Initializing speech engine...
[2026-06-27 13:57:40,228.228 INFO    ] 2026-06-27 13:57:40
[2026-06-27 13:57:40,448.448 INFO    ] 2026-06-27 13:57:40
[2026-06-27 13:57:40,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:57:40,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:57:40,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:57:40,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:57:40,893.893 INFO    ] time= 27/06/2026 13:57:40
[2026-06-27 13:57:40,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:57:40,900.900 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:57:40,968.968 INFO    ] No existing commands found in stream
[2026-06-27 13:57:45,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:57:45,985.985 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-27 13:57:49,634.634 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 13:57:49,635.635 INFO    ] Checking for system updates...
[2026-06-27 13:57:49,656.656 INFO    ] 200
[2026-06-27 13:57:49,657.657 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:57:49,687.687 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:57:49,689.689 INFO    ] No update needed
[2026-06-27 13:57:49,690.690 INFO    ] Checking for camera pi updates...
[2026-06-27 13:57:49,710.710 INFO    ] 200
[2026-06-27 13:57:49,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:57:49,736.736 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:57:49,780.780 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:57:49,781.781 INFO    ] No camera update needed
[2026-06-27 13:57:49,782.782 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:57:49,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:57:49,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:57:49,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:57:51,828.828 INFO    ] ================================================
[2026-06-27 13:57:51,843.843 INFO    ] Launching Daemon at Sat Jun 27 13:57:51 IST 2026
[2026-06-27 13:57:51,854.854 INFO    ] ================================================
[2026-06-27 13:57:52,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:57:52
[2026-06-27 13:57:52,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:57:52,651.651 INFO    ] Initializing speech engine...
[2026-06-27 13:57:52,661.661 INFO    ] 2026-06-27 13:57:52
[2026-06-27 13:57:52,867.867 INFO    ] 2026-06-27 13:57:52
[2026-06-27 13:57:52,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:57:53,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:57:53,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:57:53,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:57:53,504.504 INFO    ] time= 27/06/2026 13:57:53
[2026-06-27 13:57:53,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:57:53,511.511 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:57:53,677.677 INFO    ] No existing commands found in stream
[2026-06-27 13:57:58,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:57:58,690.690 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-27 13:58:00,147.147 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 13:58:00,148.148 INFO    ] Checking for system updates...
[2026-06-27 13:58:00,170.170 INFO    ] 200
[2026-06-27 13:58:00,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:58:00,204.204 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:58:00,205.205 INFO    ] No update needed
[2026-06-27 13:58:00,207.207 INFO    ] Checking for camera pi updates...
[2026-06-27 13:58:00,227.227 INFO    ] 200
[2026-06-27 13:58:00,229.229 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:58:00,252.252 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:58:00,295.295 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:58:00,296.296 INFO    ] No camera update needed
[2026-06-27 13:58:00,298.298 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:58:00,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:58:00,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:58:00,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:58:02,339.339 INFO    ] ================================================
[2026-06-27 13:58:02,350.350 INFO    ] Launching Daemon at Sat Jun 27 13:58:02 IST 2026
[2026-06-27 13:58:02,358.358 INFO    ] ================================================
[2026-06-27 13:58:02,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:58:02
[2026-06-27 13:58:03,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:58:03,191.191 INFO    ] Initializing speech engine...
[2026-06-27 13:58:03,197.197 INFO    ] 2026-06-27 13:58:03
[2026-06-27 13:58:03,402.402 INFO    ] 2026-06-27 13:58:03
[2026-06-27 13:58:03,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:58:03,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:58:03,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:58:03,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:58:03,822.822 INFO    ] time= 27/06/2026 13:58:03
[2026-06-27 13:58:03,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:58:03,851.851 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:58:03,919.919 INFO    ] No existing commands found in stream
[2026-06-27 13:58:08,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:58:08,936.936 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-27 13:58:12,880.880 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 13:58:12,882.882 INFO    ] Checking for system updates...
[2026-06-27 13:58:12,903.903 INFO    ] 200
[2026-06-27 13:58:12,904.904 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:58:12,937.937 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:58:12,939.939 INFO    ] No update needed
[2026-06-27 13:58:12,940.940 INFO    ] Checking for camera pi updates...
[2026-06-27 13:58:12,960.960 INFO    ] 200
[2026-06-27 13:58:12,961.961 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:58:12,985.985 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:58:13,026.026 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:58:13,027.027 INFO    ] No camera update needed
[2026-06-27 13:58:13,028.028 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:58:13,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:58:13,033.033 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:58:13,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:58:15,075.075 INFO    ] ================================================
[2026-06-27 13:58:15,090.090 INFO    ] Launching Daemon at Sat Jun 27 13:58:15 IST 2026
[2026-06-27 13:58:15,101.101 INFO    ] ================================================
[2026-06-27 13:58:15,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:58:15
[2026-06-27 13:58:15,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:58:15,908.908 INFO    ] Initializing speech engine...
[2026-06-27 13:58:15,916.916 INFO    ] 2026-06-27 13:58:15
[2026-06-27 13:58:16,130.130 INFO    ] 2026-06-27 13:58:16
[2026-06-27 13:58:16,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:58:16,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:58:16,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:58:16,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:58:16,645.645 INFO    ] time= 27/06/2026 13:58:16
[2026-06-27 13:58:16,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:58:16,672.672 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:58:16,768.768 INFO    ] No existing commands found in stream
[2026-06-27 13:58:21,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:58:21,781.781 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-27 13:58:24,227.227 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:58:24,228.228 INFO    ] Checking for system updates...
[2026-06-27 13:58:24,250.250 INFO    ] 200
[2026-06-27 13:58:24,251.251 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:58:24,284.284 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:58:24,285.285 INFO    ] No update needed
[2026-06-27 13:58:24,287.287 INFO    ] Checking for camera pi updates...
[2026-06-27 13:58:24,307.307 INFO    ] 200
[2026-06-27 13:58:24,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:58:24,333.333 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:58:24,372.372 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:58:24,373.373 INFO    ] No camera update needed
[2026-06-27 13:58:24,375.375 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:58:24,376.376 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:58:24,379.379 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:58:24,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:58:26,420.420 INFO    ] ================================================
[2026-06-27 13:58:26,437.437 INFO    ] Launching Daemon at Sat Jun 27 13:58:26 IST 2026
[2026-06-27 13:58:26,448.448 INFO    ] ================================================
[2026-06-27 13:58:26,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:58:26
[2026-06-27 13:58:27,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:58:27,228.228 INFO    ] Initializing speech engine...
[2026-06-27 13:58:27,233.233 INFO    ] 2026-06-27 13:58:27
[2026-06-27 13:58:27,436.436 INFO    ] 2026-06-27 13:58:27
[2026-06-27 13:58:27,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:58:27,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:58:27,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:58:27,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:58:27,876.876 INFO    ] time= 27/06/2026 13:58:27
[2026-06-27 13:58:27,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:58:27,879.879 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:58:27,969.969 INFO    ] No existing commands found in stream
[2026-06-27 13:58:32,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:58:32,986.986 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-27 13:58:34,757.757 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 13:58:34,759.759 INFO    ] Checking for system updates...
[2026-06-27 13:58:34,779.779 INFO    ] 200
[2026-06-27 13:58:34,781.781 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:58:34,813.813 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:58:34,814.814 INFO    ] No update needed
[2026-06-27 13:58:34,816.816 INFO    ] Checking for camera pi updates...
[2026-06-27 13:58:34,835.835 INFO    ] 200
[2026-06-27 13:58:34,836.836 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:58:34,860.860 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:58:34,903.903 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:58:34,905.905 INFO    ] No camera update needed
[2026-06-27 13:58:34,906.906 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:58:34,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:58:34,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:58:34,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:58:36,953.953 INFO    ] ================================================
[2026-06-27 13:58:36,968.968 INFO    ] Launching Daemon at Sat Jun 27 13:58:36 IST 2026
[2026-06-27 13:58:36,979.979 INFO    ] ================================================
[2026-06-27 13:58:37,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:58:37
[2026-06-27 13:58:37,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:58:37,792.792 INFO    ] Initializing speech engine...
[2026-06-27 13:58:37,798.798 INFO    ] 2026-06-27 13:58:37
[2026-06-27 13:58:38,012.012 INFO    ] 2026-06-27 13:58:37
[2026-06-27 13:58:38,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:58:38,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:58:38,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:58:38,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:58:38,493.493 INFO    ] time= 27/06/2026 13:58:38
[2026-06-27 13:58:38,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:58:38,497.497 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:58:38,568.568 INFO    ] No existing commands found in stream
[2026-06-27 13:58:43,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:58:43,580.580 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-27 13:58:45,496.496 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:58:45,497.497 INFO    ] Checking for system updates...
[2026-06-27 13:58:45,519.519 INFO    ] 200
[2026-06-27 13:58:45,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:58:45,551.551 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:58:45,552.552 INFO    ] No update needed
[2026-06-27 13:58:45,554.554 INFO    ] Checking for camera pi updates...
[2026-06-27 13:58:45,574.574 INFO    ] 200
[2026-06-27 13:58:45,575.575 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:58:45,600.600 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:58:45,652.652 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:58:45,654.654 INFO    ] No camera update needed
[2026-06-27 13:58:45,655.655 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:58:45,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:58:45,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:58:45,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:58:47,701.701 INFO    ] ================================================
[2026-06-27 13:58:47,716.716 INFO    ] Launching Daemon at Sat Jun 27 13:58:47 IST 2026
[2026-06-27 13:58:47,727.727 INFO    ] ================================================
[2026-06-27 13:58:48,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:58:48
[2026-06-27 13:58:48,389.389 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:58:48,533.533 INFO    ] Initializing speech engine...
[2026-06-27 13:58:48,538.538 INFO    ] 2026-06-27 13:58:48
[2026-06-27 13:58:48,741.741 INFO    ] 2026-06-27 13:58:48
[2026-06-27 13:58:48,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:58:48,956.956 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:58:48,966.966 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:58:49,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:58:49,181.181 INFO    ] time= 27/06/2026 13:58:49
[2026-06-27 13:58:49,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:58:49,188.188 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:58:49,279.279 INFO    ] No existing commands found in stream
[2026-06-27 13:58:54,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:58:54,290.290 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-27 13:58:54,907.907 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 13:58:54,909.909 INFO    ] Checking for system updates...
[2026-06-27 13:58:54,930.930 INFO    ] 200
[2026-06-27 13:58:54,932.932 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:58:54,968.968 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:58:54,969.969 INFO    ] No update needed
[2026-06-27 13:58:54,970.970 INFO    ] Checking for camera pi updates...
[2026-06-27 13:58:54,991.991 INFO    ] 200
[2026-06-27 13:58:54,992.992 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:58:55,017.017 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:58:55,047.047 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:58:55,048.048 INFO    ] No camera update needed
[2026-06-27 13:58:55,050.050 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:58:55,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:58:55,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:58:55,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:58:57,097.097 INFO    ] ================================================
[2026-06-27 13:58:57,113.113 INFO    ] Launching Daemon at Sat Jun 27 13:58:57 IST 2026
[2026-06-27 13:58:57,124.124 INFO    ] ================================================
[2026-06-27 13:58:57,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:58:57
[2026-06-27 13:58:57,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:58:57,923.923 INFO    ] Initializing speech engine...
[2026-06-27 13:58:57,928.928 INFO    ] 2026-06-27 13:58:57
[2026-06-27 13:58:58,132.132 INFO    ] 2026-06-27 13:58:58
[2026-06-27 13:58:58,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:58:58,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:58:58,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:58:58,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:58:58,550.550 INFO    ] time= 27/06/2026 13:58:58
[2026-06-27 13:58:58,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:58:58,579.579 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:58:58,646.646 INFO    ] No existing commands found in stream
[2026-06-27 13:59:03,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:59:03,663.663 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-27 13:59:07,836.836 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:59:07,838.838 INFO    ] Checking for system updates...
[2026-06-27 13:59:07,858.858 INFO    ] 200
[2026-06-27 13:59:07,859.859 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:59:07,890.890 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:59:07,891.891 INFO    ] No update needed
[2026-06-27 13:59:07,892.892 INFO    ] Checking for camera pi updates...
[2026-06-27 13:59:07,913.913 INFO    ] 200
[2026-06-27 13:59:07,915.915 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:59:07,938.938 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:59:07,976.976 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:59:07,977.977 INFO    ] No camera update needed
[2026-06-27 13:59:07,979.979 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:59:07,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:59:07,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:59:07,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:59:10,024.024 INFO    ] ================================================
[2026-06-27 13:59:10,039.039 INFO    ] Launching Daemon at Sat Jun 27 13:59:10 IST 2026
[2026-06-27 13:59:10,050.050 INFO    ] ================================================
[2026-06-27 13:59:10,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:59:10
[2026-06-27 13:59:10,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:59:10,936.936 INFO    ] Initializing speech engine...
[2026-06-27 13:59:10,941.941 INFO    ] 2026-06-27 13:59:10
[2026-06-27 13:59:11,147.147 INFO    ] 2026-06-27 13:59:11
[2026-06-27 13:59:11,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:59:11,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:59:11,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:59:11,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:59:11,586.586 INFO    ] time= 27/06/2026 13:59:11
[2026-06-27 13:59:11,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:59:11,593.593 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:59:11,684.684 INFO    ] No existing commands found in stream
[2026-06-27 13:59:16,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:59:16,700.700 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-27 13:59:17,876.876 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 13:59:17,877.877 INFO    ] Checking for system updates...
[2026-06-27 13:59:17,901.901 INFO    ] 200
[2026-06-27 13:59:17,902.902 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:59:17,935.935 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:59:17,937.937 INFO    ] No update needed
[2026-06-27 13:59:17,938.938 INFO    ] Checking for camera pi updates...
[2026-06-27 13:59:17,962.962 INFO    ] 200
[2026-06-27 13:59:17,964.964 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:59:17,989.989 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:59:18,040.040 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:59:18,042.042 INFO    ] No camera update needed
[2026-06-27 13:59:18,043.043 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:59:18,045.045 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:59:18,048.048 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:59:18,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:59:20,089.089 INFO    ] ================================================
[2026-06-27 13:59:20,104.104 INFO    ] Launching Daemon at Sat Jun 27 13:59:20 IST 2026
[2026-06-27 13:59:20,115.115 INFO    ] ================================================
[2026-06-27 13:59:20,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:59:20
[2026-06-27 13:59:20,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:59:20,911.911 INFO    ] Initializing speech engine...
[2026-06-27 13:59:20,916.916 INFO    ] 2026-06-27 13:59:20
[2026-06-27 13:59:21,120.120 INFO    ] 2026-06-27 13:59:21
[2026-06-27 13:59:21,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:59:21,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:59:21,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:59:21,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:59:21,556.556 INFO    ] time= 27/06/2026 13:59:21
[2026-06-27 13:59:21,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:59:21,567.567 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:59:21,658.658 INFO    ] No existing commands found in stream
[2026-06-27 13:59:26,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:59:26,670.670 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-27 13:59:27,907.907 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:59:27,909.909 INFO    ] Checking for system updates...
[2026-06-27 13:59:27,930.930 INFO    ] 200
[2026-06-27 13:59:27,932.932 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:59:27,962.962 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:59:27,963.963 INFO    ] No update needed
[2026-06-27 13:59:27,964.964 INFO    ] Checking for camera pi updates...
[2026-06-27 13:59:27,985.985 INFO    ] 200
[2026-06-27 13:59:27,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:59:28,010.010 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:59:28,052.052 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 13:59:28,053.053 INFO    ] No camera update needed
[2026-06-27 13:59:28,055.055 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:59:28,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:59:28,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:59:28,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:59:30,100.100 INFO    ] ================================================
[2026-06-27 13:59:30,115.115 INFO    ] Launching Daemon at Sat Jun 27 13:59:30 IST 2026
[2026-06-27 13:59:30,126.126 INFO    ] ================================================
[2026-06-27 13:59:30,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:59:30
[2026-06-27 13:59:30,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:59:30,912.912 INFO    ] Initializing speech engine...
[2026-06-27 13:59:30,920.920 INFO    ] 2026-06-27 13:59:30
[2026-06-27 13:59:31,140.140 INFO    ] 2026-06-27 13:59:31
[2026-06-27 13:59:31,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:59:31,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:59:31,374.374 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:59:31,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:59:31,604.604 INFO    ] time= 27/06/2026 13:59:31
[2026-06-27 13:59:31,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:59:31,611.611 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:59:31,680.680 INFO    ] No existing commands found in stream
[2026-06-27 13:59:36,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:59:36,692.692 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-27 13:59:37,432.432 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 13:59:37,433.433 INFO    ] Checking for system updates...
[2026-06-27 13:59:37,454.454 INFO    ] 200
[2026-06-27 13:59:37,455.455 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:59:37,487.487 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:59:37,488.488 INFO    ] No update needed
[2026-06-27 13:59:37,490.490 INFO    ] Checking for camera pi updates...
[2026-06-27 13:59:37,509.509 INFO    ] 200
[2026-06-27 13:59:37,510.510 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:59:37,536.536 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:59:37,579.579 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:59:37,580.580 INFO    ] No camera update needed
[2026-06-27 13:59:37,581.581 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:59:37,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:59:37,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:59:37,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:59:39,628.628 INFO    ] ================================================
[2026-06-27 13:59:39,644.644 INFO    ] Launching Daemon at Sat Jun 27 13:59:39 IST 2026
[2026-06-27 13:59:39,655.655 INFO    ] ================================================
[2026-06-27 13:59:40,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:59:40
[2026-06-27 13:59:40,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:59:40,492.492 INFO    ] Initializing speech engine...
[2026-06-27 13:59:40,497.497 INFO    ] 2026-06-27 13:59:40
[2026-06-27 13:59:40,704.704 INFO    ] 2026-06-27 13:59:40
[2026-06-27 13:59:40,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:59:40,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:59:40,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:59:41,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:59:41,143.143 INFO    ] time= 27/06/2026 13:59:41
[2026-06-27 13:59:41,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:59:41,186.186 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:59:41,276.276 INFO    ] No existing commands found in stream
[2026-06-27 13:59:46,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:59:46,288.288 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-27 13:59:47,787.787 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 13:59:47,788.788 INFO    ] Checking for system updates...
[2026-06-27 13:59:47,809.809 INFO    ] 200
[2026-06-27 13:59:47,811.811 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:59:47,841.841 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:59:47,842.842 INFO    ] No update needed
[2026-06-27 13:59:47,844.844 INFO    ] Checking for camera pi updates...
[2026-06-27 13:59:47,865.865 INFO    ] 200
[2026-06-27 13:59:47,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 13:59:47,891.891 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 13:59:47,942.942 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 13:59:47,944.944 INFO    ] No camera update needed
[2026-06-27 13:59:47,945.945 INFO    ] Script finished. Safe exiting...
[2026-06-27 13:59:47,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 13:59:47,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 13:59:47,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 13:59:49,990.990 INFO    ] ================================================
[2026-06-27 13:59:50,006.006 INFO    ] Launching Daemon at Sat Jun 27 13:59:50 IST 2026
[2026-06-27 13:59:50,016.016 INFO    ] ================================================
[2026-06-27 13:59:50,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 13:59:50
[2026-06-27 13:59:50,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 13:59:50,794.794 INFO    ] Initializing speech engine...
[2026-06-27 13:59:50,803.803 INFO    ] 2026-06-27 13:59:50
[2026-06-27 13:59:51,016.016 INFO    ] 2026-06-27 13:59:50
[2026-06-27 13:59:51,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 13:59:51,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 13:59:51,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 13:59:51,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 13:59:51,312.312 INFO    ] time= 27/06/2026 13:59:51
[2026-06-27 13:59:51,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 13:59:51,338.338 INFO    ] Checking for existing commands in stream...
[2026-06-27 13:59:51,463.463 INFO    ] No existing commands found in stream
[2026-06-27 13:59:56,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 13:59:56,482.482 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-27 14:00:00,067.067 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 14:00:00,069.069 INFO    ] Checking for system updates...
[2026-06-27 14:00:00,090.090 INFO    ] 200
[2026-06-27 14:00:00,091.091 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:00:00,124.124 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:00:00,125.125 INFO    ] No update needed
[2026-06-27 14:00:00,126.126 INFO    ] Checking for camera pi updates...
[2026-06-27 14:00:00,146.146 INFO    ] 200
[2026-06-27 14:00:00,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:00:00,170.170 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:00:00,225.225 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:00:00,226.226 INFO    ] No camera update needed
[2026-06-27 14:00:00,227.227 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:00:00,228.228 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:00:00,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:00:00,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:00:02,331.331 INFO    ] ================================================
[2026-06-27 14:00:02,397.397 INFO    ] Launching Daemon at Sat Jun 27 14:00:02 IST 2026
[2026-06-27 14:00:02,431.431 INFO    ] ================================================
[2026-06-27 14:00:03,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:00:03
[2026-06-27 14:00:04,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:00:04,346.346 INFO    ] Initializing speech engine...
[2026-06-27 14:00:04,359.359 INFO    ] 2026-06-27 14:00:04
[2026-06-27 14:00:04,576.576 INFO    ] 2026-06-27 14:00:04
[2026-06-27 14:00:04,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:00:04,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:00:04,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:00:05,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:00:05,048.048 INFO    ] time= 27/06/2026 14:00:05
[2026-06-27 14:00:05,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:00:05,061.061 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:00:05,132.132 INFO    ] No existing commands found in stream
[2026-06-27 14:00:10,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:00:10,143.143 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-27 14:00:12,186.186 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 14:00:12,188.188 INFO    ] Checking for system updates...
[2026-06-27 14:00:12,210.210 INFO    ] 200
[2026-06-27 14:00:12,211.211 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:00:12,242.242 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:00:12,243.243 INFO    ] No update needed
[2026-06-27 14:00:12,244.244 INFO    ] Checking for camera pi updates...
[2026-06-27 14:00:12,264.264 INFO    ] 200
[2026-06-27 14:00:12,266.266 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:00:12,289.289 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:00:12,339.339 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:00:12,341.341 INFO    ] No camera update needed
[2026-06-27 14:00:12,342.342 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:00:12,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:00:12,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:00:12,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:00:14,388.388 INFO    ] ================================================
[2026-06-27 14:00:14,403.403 INFO    ] Launching Daemon at Sat Jun 27 14:00:14 IST 2026
[2026-06-27 14:00:14,414.414 INFO    ] ================================================
[2026-06-27 14:00:14,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:00:14
[2026-06-27 14:00:15,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:00:15,211.211 INFO    ] Initializing speech engine...
[2026-06-27 14:00:15,216.216 INFO    ] 2026-06-27 14:00:15
[2026-06-27 14:00:15,419.419 INFO    ] 2026-06-27 14:00:15
[2026-06-27 14:00:15,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:00:15,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:00:15,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:00:15,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:00:15,866.866 INFO    ] time= 27/06/2026 14:00:15
[2026-06-27 14:00:15,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:00:15,869.869 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:00:15,984.984 INFO    ] No existing commands found in stream
[2026-06-27 14:00:20,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:00:20,996.996 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-27 14:00:21,717.717 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:00:21,719.719 INFO    ] Checking for system updates...
[2026-06-27 14:00:21,739.739 INFO    ] 200
[2026-06-27 14:00:21,741.741 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:00:21,774.774 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:00:21,775.775 INFO    ] No update needed
[2026-06-27 14:00:21,777.777 INFO    ] Checking for camera pi updates...
[2026-06-27 14:00:21,796.796 INFO    ] 200
[2026-06-27 14:00:21,797.797 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:00:21,821.821 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:00:21,865.865 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:00:21,867.867 INFO    ] No camera update needed
[2026-06-27 14:00:21,868.868 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:00:21,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:00:21,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:00:21,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:00:23,913.913 INFO    ] ================================================
[2026-06-27 14:00:23,929.929 INFO    ] Launching Daemon at Sat Jun 27 14:00:23 IST 2026
[2026-06-27 14:00:23,941.941 INFO    ] ================================================
[2026-06-27 14:00:24,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:00:24
[2026-06-27 14:00:24,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:00:24,747.747 INFO    ] Initializing speech engine...
[2026-06-27 14:00:24,752.752 INFO    ] 2026-06-27 14:00:24
[2026-06-27 14:00:24,970.970 INFO    ] 2026-06-27 14:00:24
[2026-06-27 14:00:25,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:00:25,225.225 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:00:25,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:00:25,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:00:25,445.445 INFO    ] time= 27/06/2026 14:00:25
[2026-06-27 14:00:25,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:00:25,453.453 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:00:25,550.550 INFO    ] No existing commands found in stream
[2026-06-27 14:00:30,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:00:30,572.572 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-27 14:00:33,875.875 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 14:00:33,876.876 INFO    ] Checking for system updates...
[2026-06-27 14:00:33,898.898 INFO    ] 200
[2026-06-27 14:00:33,900.900 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:00:33,933.933 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:00:33,934.934 INFO    ] No update needed
[2026-06-27 14:00:33,936.936 INFO    ] Checking for camera pi updates...
[2026-06-27 14:00:33,956.956 INFO    ] 200
[2026-06-27 14:00:33,957.957 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:00:33,980.980 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:00:34,038.038 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:00:34,039.039 INFO    ] No camera update needed
[2026-06-27 14:00:34,040.040 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:00:34,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:00:34,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:00:34,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:00:36,086.086 INFO    ] ================================================
[2026-06-27 14:00:36,101.101 INFO    ] Launching Daemon at Sat Jun 27 14:00:36 IST 2026
[2026-06-27 14:00:36,112.112 INFO    ] ================================================
[2026-06-27 14:00:36,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:00:36
[2026-06-27 14:00:36,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:00:36,942.942 INFO    ] Initializing speech engine...
[2026-06-27 14:00:36,948.948 INFO    ] 2026-06-27 14:00:36
[2026-06-27 14:00:37,158.158 INFO    ] 2026-06-27 14:00:37
[2026-06-27 14:00:37,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:00:37,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:00:37,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:00:37,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:00:37,609.609 INFO    ] time= 27/06/2026 14:00:37
[2026-06-27 14:00:37,611.611 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:00:37,613.613 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:00:37,681.681 INFO    ] No existing commands found in stream
[2026-06-27 14:00:42,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:00:42,698.698 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-27 14:00:45,270.270 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 14:00:45,272.272 INFO    ] Checking for system updates...
[2026-06-27 14:00:45,293.293 INFO    ] 200
[2026-06-27 14:00:45,295.295 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:00:45,325.325 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:00:45,326.326 INFO    ] No update needed
[2026-06-27 14:00:45,327.327 INFO    ] Checking for camera pi updates...
[2026-06-27 14:00:45,347.347 INFO    ] 200
[2026-06-27 14:00:45,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:00:45,372.372 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:00:45,415.415 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:00:45,416.416 INFO    ] No camera update needed
[2026-06-27 14:00:45,417.417 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:00:45,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:00:45,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:00:45,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:00:47,463.463 INFO    ] ================================================
[2026-06-27 14:00:47,478.478 INFO    ] Launching Daemon at Sat Jun 27 14:00:47 IST 2026
[2026-06-27 14:00:47,490.490 INFO    ] ================================================
[2026-06-27 14:00:47,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:00:47
[2026-06-27 14:00:48,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:00:48,288.288 INFO    ] Initializing speech engine...
[2026-06-27 14:00:48,292.292 INFO    ] 2026-06-27 14:00:48
[2026-06-27 14:00:48,512.512 INFO    ] 2026-06-27 14:00:48
[2026-06-27 14:00:48,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:00:48,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:00:48,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:00:48,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:00:48,961.961 INFO    ] time= 27/06/2026 14:00:48
[2026-06-27 14:00:48,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:00:48,968.968 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:00:49,036.036 INFO    ] No existing commands found in stream
[2026-06-27 14:00:54,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:00:54,063.063 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-27 14:00:56,186.186 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 14:00:56,188.188 INFO    ] Checking for system updates...
[2026-06-27 14:00:56,209.209 INFO    ] 200
[2026-06-27 14:00:56,210.210 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:00:56,245.245 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:00:56,246.246 INFO    ] No update needed
[2026-06-27 14:00:56,247.247 INFO    ] Checking for camera pi updates...
[2026-06-27 14:00:56,267.267 INFO    ] 200
[2026-06-27 14:00:56,268.268 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:00:56,293.293 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:00:56,321.321 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:00:56,322.322 INFO    ] No camera update needed
[2026-06-27 14:00:56,323.323 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:00:56,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:00:56,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:00:56,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:00:58,370.370 INFO    ] ================================================
[2026-06-27 14:00:58,385.385 INFO    ] Launching Daemon at Sat Jun 27 14:00:58 IST 2026
[2026-06-27 14:00:58,395.395 INFO    ] ================================================
[2026-06-27 14:00:58,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:00:58
[2026-06-27 14:00:59,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:00:59,179.179 INFO    ] Initializing speech engine...
[2026-06-27 14:00:59,187.187 INFO    ] 2026-06-27 14:00:59
[2026-06-27 14:00:59,398.398 INFO    ] 2026-06-27 14:00:59
[2026-06-27 14:00:59,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:00:59,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:00:59,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:00:59,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:00:59,819.819 INFO    ] time= 27/06/2026 14:00:59
[2026-06-27 14:00:59,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:00:59,847.847 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:00:59,938.938 INFO    ] No existing commands found in stream
[2026-06-27 14:01:04,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:01:04,955.955 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-27 14:01:07,654.654 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:01:07,656.656 INFO    ] Checking for system updates...
[2026-06-27 14:01:07,676.676 INFO    ] 200
[2026-06-27 14:01:07,678.678 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:01:07,712.712 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:01:07,713.713 INFO    ] No update needed
[2026-06-27 14:01:07,715.715 INFO    ] Checking for camera pi updates...
[2026-06-27 14:01:07,734.734 INFO    ] 200
[2026-06-27 14:01:07,736.736 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:01:07,759.759 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:01:07,810.810 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:01:07,812.812 INFO    ] No camera update needed
[2026-06-27 14:01:07,813.813 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:01:07,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:01:07,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:01:07,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:01:09,859.859 INFO    ] ================================================
[2026-06-27 14:01:09,875.875 INFO    ] Launching Daemon at Sat Jun 27 14:01:09 IST 2026
[2026-06-27 14:01:09,886.886 INFO    ] ================================================
[2026-06-27 14:01:10,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:01:10
[2026-06-27 14:01:10,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:01:10,742.742 INFO    ] Initializing speech engine...
[2026-06-27 14:01:10,748.748 INFO    ] 2026-06-27 14:01:10
[2026-06-27 14:01:10,961.961 INFO    ] 2026-06-27 14:01:10
[2026-06-27 14:01:10,990.990 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:01:11,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:01:11,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:01:11,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:01:11,412.412 INFO    ] time= 27/06/2026 14:01:11
[2026-06-27 14:01:11,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:01:11,419.419 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:01:11,511.511 INFO    ] No existing commands found in stream
[2026-06-27 14:01:16,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:01:16,539.539 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-27 14:01:18,711.711 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 14:01:18,713.713 INFO    ] Checking for system updates...
[2026-06-27 14:01:18,736.736 INFO    ] 200
[2026-06-27 14:01:18,737.737 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:01:18,768.768 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:01:18,770.770 INFO    ] No update needed
[2026-06-27 14:01:18,771.771 INFO    ] Checking for camera pi updates...
[2026-06-27 14:01:18,791.791 INFO    ] 200
[2026-06-27 14:01:18,792.792 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:01:18,817.817 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:01:18,858.858 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:01:18,859.859 INFO    ] No camera update needed
[2026-06-27 14:01:18,864.864 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:01:18,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:01:18,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:01:18,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:01:20,914.914 INFO    ] ================================================
[2026-06-27 14:01:20,930.930 INFO    ] Launching Daemon at Sat Jun 27 14:01:20 IST 2026
[2026-06-27 14:01:20,941.941 INFO    ] ================================================
[2026-06-27 14:01:21,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:01:21
[2026-06-27 14:01:21,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:01:21,770.770 INFO    ] Initializing speech engine...
[2026-06-27 14:01:21,780.780 INFO    ] 2026-06-27 14:01:21
[2026-06-27 14:01:21,989.989 INFO    ] 2026-06-27 14:01:21
[2026-06-27 14:01:22,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:01:22,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:01:22,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:01:22,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:01:22,436.436 INFO    ] time= 27/06/2026 14:01:22
[2026-06-27 14:01:22,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:01:22,443.443 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:01:22,537.537 INFO    ] No existing commands found in stream
[2026-06-27 14:01:27,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:01:27,554.554 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-27 14:01:30,238.238 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:01:30,240.240 INFO    ] Checking for system updates...
[2026-06-27 14:01:30,262.262 INFO    ] 200
[2026-06-27 14:01:30,263.263 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:01:30,296.296 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:01:30,297.297 INFO    ] No update needed
[2026-06-27 14:01:30,298.298 INFO    ] Checking for camera pi updates...
[2026-06-27 14:01:30,318.318 INFO    ] 200
[2026-06-27 14:01:30,319.319 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:01:30,344.344 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:01:30,385.385 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:01:30,387.387 INFO    ] No camera update needed
[2026-06-27 14:01:30,388.388 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:01:30,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:01:30,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:01:30,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:01:32,428.428 INFO    ] ================================================
[2026-06-27 14:01:32,437.437 INFO    ] Launching Daemon at Sat Jun 27 14:01:32 IST 2026
[2026-06-27 14:01:32,444.444 INFO    ] ================================================
[2026-06-27 14:01:32,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:01:32
[2026-06-27 14:01:33,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:01:33,244.244 INFO    ] Initializing speech engine...
[2026-06-27 14:01:33,252.252 INFO    ] 2026-06-27 14:01:33
[2026-06-27 14:01:33,467.467 INFO    ] 2026-06-27 14:01:33
[2026-06-27 14:01:33,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:01:33,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:01:33,686.686 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:01:33,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:01:33,915.915 INFO    ] time= 27/06/2026 14:01:33
[2026-06-27 14:01:33,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:01:33,922.922 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:01:33,989.989 INFO    ] No existing commands found in stream
[2026-06-27 14:01:38,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:01:39,001.001 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-27 14:01:41,546.546 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 14:01:41,547.547 INFO    ] Checking for system updates...
[2026-06-27 14:01:41,568.568 INFO    ] 200
[2026-06-27 14:01:41,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:01:41,600.600 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:01:41,602.602 INFO    ] No update needed
[2026-06-27 14:01:41,603.603 INFO    ] Checking for camera pi updates...
[2026-06-27 14:01:41,625.625 INFO    ] 200
[2026-06-27 14:01:41,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:01:41,650.650 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:01:41,793.793 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:01:41,795.795 INFO    ] No camera update needed
[2026-06-27 14:01:41,796.796 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:01:41,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:01:41,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:01:41,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:01:43,845.845 INFO    ] ================================================
[2026-06-27 14:01:43,861.861 INFO    ] Launching Daemon at Sat Jun 27 14:01:43 IST 2026
[2026-06-27 14:01:43,872.872 INFO    ] ================================================
[2026-06-27 14:01:44,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:01:44
[2026-06-27 14:01:44,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:01:44,728.728 INFO    ] Initializing speech engine...
[2026-06-27 14:01:44,738.738 INFO    ] 2026-06-27 14:01:44
[2026-06-27 14:01:44,948.948 INFO    ] 2026-06-27 14:01:44
[2026-06-27 14:01:44,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:01:45,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:01:45,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:01:45,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:01:45,367.367 INFO    ] time= 27/06/2026 14:01:45
[2026-06-27 14:01:45,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:01:45,396.396 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:01:45,486.486 INFO    ] No existing commands found in stream
[2026-06-27 14:01:50,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:01:50,504.504 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-27 14:01:53,001.001 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:01:53,002.002 INFO    ] Checking for system updates...
[2026-06-27 14:01:53,025.025 INFO    ] 200
[2026-06-27 14:01:53,027.027 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:01:53,058.058 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:01:53,059.059 INFO    ] No update needed
[2026-06-27 14:01:53,061.061 INFO    ] Checking for camera pi updates...
[2026-06-27 14:01:53,082.082 INFO    ] 200
[2026-06-27 14:01:53,084.084 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:01:53,111.111 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:01:53,163.163 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:01:53,165.165 INFO    ] No camera update needed
[2026-06-27 14:01:53,166.166 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:01:53,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:01:53,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:01:53,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:01:55,210.210 INFO    ] ================================================
[2026-06-27 14:01:55,223.223 INFO    ] Launching Daemon at Sat Jun 27 14:01:55 IST 2026
[2026-06-27 14:01:55,230.230 INFO    ] ================================================
[2026-06-27 14:01:55,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:01:55
[2026-06-27 14:01:55,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:01:56,065.065 INFO    ] Initializing speech engine...
[2026-06-27 14:01:56,070.070 INFO    ] 2026-06-27 14:01:56
[2026-06-27 14:01:56,276.276 INFO    ] 2026-06-27 14:01:56
[2026-06-27 14:01:56,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:01:56,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:01:56,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:01:56,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:01:56,722.722 INFO    ] time= 27/06/2026 14:01:56
[2026-06-27 14:01:56,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:01:56,729.729 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:01:56,820.820 INFO    ] No existing commands found in stream
[2026-06-27 14:02:01,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:02:01,827.827 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-27 14:02:05,957.957 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:02:05,958.958 INFO    ] Checking for system updates...
[2026-06-27 14:02:05,979.979 INFO    ] 200
[2026-06-27 14:02:05,981.981 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:02:06,011.011 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:02:06,012.012 INFO    ] No update needed
[2026-06-27 14:02:06,014.014 INFO    ] Checking for camera pi updates...
[2026-06-27 14:02:06,036.036 INFO    ] 200
[2026-06-27 14:02:06,037.037 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:02:06,060.060 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:02:06,101.101 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:02:06,103.103 INFO    ] No camera update needed
[2026-06-27 14:02:06,104.104 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:02:06,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:02:06,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:02:06,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:02:08,151.151 INFO    ] ================================================
[2026-06-27 14:02:08,166.166 INFO    ] Launching Daemon at Sat Jun 27 14:02:08 IST 2026
[2026-06-27 14:02:08,179.179 INFO    ] ================================================
[2026-06-27 14:02:08,509.509 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:02:08
[2026-06-27 14:02:08,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:02:08,960.960 INFO    ] Initializing speech engine...
[2026-06-27 14:02:08,968.968 INFO    ] 2026-06-27 14:02:08
[2026-06-27 14:02:09,177.177 INFO    ] 2026-06-27 14:02:09
[2026-06-27 14:02:09,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:02:09,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:02:09,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:02:09,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:02:09,627.627 INFO    ] time= 27/06/2026 14:02:09
[2026-06-27 14:02:09,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:02:09,634.634 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:02:09,725.725 INFO    ] No existing commands found in stream
[2026-06-27 14:02:14,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:02:14,742.742 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-27 14:02:17,550.550 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:02:17,551.551 INFO    ] Checking for system updates...
[2026-06-27 14:02:17,572.572 INFO    ] 200
[2026-06-27 14:02:17,573.573 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:02:17,607.607 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:02:17,608.608 INFO    ] No update needed
[2026-06-27 14:02:17,609.609 INFO    ] Checking for camera pi updates...
[2026-06-27 14:02:17,631.631 INFO    ] 200
[2026-06-27 14:02:17,633.633 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:02:17,658.658 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:02:17,701.701 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:02:17,703.703 INFO    ] No camera update needed
[2026-06-27 14:02:17,704.704 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:02:17,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:02:17,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:02:17,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:02:19,751.751 INFO    ] ================================================
[2026-06-27 14:02:19,767.767 INFO    ] Launching Daemon at Sat Jun 27 14:02:19 IST 2026
[2026-06-27 14:02:19,778.778 INFO    ] ================================================
[2026-06-27 14:02:20,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:02:20
[2026-06-27 14:02:20,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:02:20,602.602 INFO    ] Initializing speech engine...
[2026-06-27 14:02:20,616.616 INFO    ] 2026-06-27 14:02:20
[2026-06-27 14:02:20,827.827 INFO    ] 2026-06-27 14:02:20
[2026-06-27 14:02:20,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:02:21,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:02:21,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:02:21,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:02:21,269.269 INFO    ] time= 27/06/2026 14:02:21
[2026-06-27 14:02:21,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:02:21,277.277 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:02:21,368.368 INFO    ] No existing commands found in stream
[2026-06-27 14:02:26,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:02:26,387.387 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-27 14:02:27,676.676 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:02:27,677.677 INFO    ] Checking for system updates...
[2026-06-27 14:02:27,700.700 INFO    ] 200
[2026-06-27 14:02:27,701.701 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:02:27,735.735 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:02:27,736.736 INFO    ] No update needed
[2026-06-27 14:02:27,738.738 INFO    ] Checking for camera pi updates...
[2026-06-27 14:02:27,757.757 INFO    ] 200
[2026-06-27 14:02:27,759.759 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:02:27,782.782 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:02:27,826.826 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:02:27,827.827 INFO    ] No camera update needed
[2026-06-27 14:02:27,829.829 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:02:27,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:02:27,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:02:27,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:02:29,877.877 INFO    ] ================================================
[2026-06-27 14:02:29,892.892 INFO    ] Launching Daemon at Sat Jun 27 14:02:29 IST 2026
[2026-06-27 14:02:29,902.902 INFO    ] ================================================
[2026-06-27 14:02:30,305.305 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:02:30
[2026-06-27 14:02:30,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:02:30,787.787 INFO    ] Initializing speech engine...
[2026-06-27 14:02:30,798.798 INFO    ] 2026-06-27 14:02:30
[2026-06-27 14:02:31,006.006 INFO    ] 2026-06-27 14:02:30
[2026-06-27 14:02:31,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:02:31,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:02:31,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:02:31,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:02:31,460.460 INFO    ] time= 27/06/2026 14:02:31
[2026-06-27 14:02:31,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:02:31,532.532 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:02:31,599.599 INFO    ] No existing commands found in stream
[2026-06-27 14:02:36,611.611 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:02:36,614.614 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-27 14:02:37,128.128 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 14:02:37,130.130 INFO    ] Checking for system updates...
[2026-06-27 14:02:37,152.152 INFO    ] 200
[2026-06-27 14:02:37,153.153 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:02:37,197.197 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:02:37,198.198 INFO    ] No update needed
[2026-06-27 14:02:37,200.200 INFO    ] Checking for camera pi updates...
[2026-06-27 14:02:37,221.221 INFO    ] 200
[2026-06-27 14:02:37,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:02:37,258.258 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:02:37,307.307 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:02:37,308.308 INFO    ] No camera update needed
[2026-06-27 14:02:37,310.310 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:02:37,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:02:37,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:02:37,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:02:39,355.355 INFO    ] ================================================
[2026-06-27 14:02:39,370.370 INFO    ] Launching Daemon at Sat Jun 27 14:02:39 IST 2026
[2026-06-27 14:02:39,381.381 INFO    ] ================================================
[2026-06-27 14:02:39,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:02:39
[2026-06-27 14:02:40,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:02:40,182.182 INFO    ] Initializing speech engine...
[2026-06-27 14:02:40,186.186 INFO    ] 2026-06-27 14:02:40
[2026-06-27 14:02:40,406.406 INFO    ] 2026-06-27 14:02:40
[2026-06-27 14:02:40,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:02:40,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:02:40,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:02:40,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:02:40,830.830 INFO    ] time= 27/06/2026 14:02:40
[2026-06-27 14:02:40,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:02:40,859.859 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:02:40,926.926 INFO    ] No existing commands found in stream
[2026-06-27 14:02:45,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:02:45,944.944 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-27 14:02:50,395.395 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 14:02:50,397.397 INFO    ] Checking for system updates...
[2026-06-27 14:02:50,419.419 INFO    ] 200
[2026-06-27 14:02:50,420.420 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:02:50,453.453 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:02:50,455.455 INFO    ] No update needed
[2026-06-27 14:02:50,456.456 INFO    ] Checking for camera pi updates...
[2026-06-27 14:02:50,476.476 INFO    ] 200
[2026-06-27 14:02:50,478.478 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:02:50,501.501 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:02:50,546.546 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:02:50,547.547 INFO    ] No camera update needed
[2026-06-27 14:02:50,548.548 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:02:50,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:02:50,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:02:50,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:02:52,597.597 INFO    ] ================================================
[2026-06-27 14:02:52,612.612 INFO    ] Launching Daemon at Sat Jun 27 14:02:52 IST 2026
[2026-06-27 14:02:52,623.623 INFO    ] ================================================
[2026-06-27 14:02:52,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:02:52
[2026-06-27 14:02:53,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:02:53,429.429 INFO    ] Initializing speech engine...
[2026-06-27 14:02:53,434.434 INFO    ] 2026-06-27 14:02:53
[2026-06-27 14:02:53,638.638 INFO    ] 2026-06-27 14:02:53
[2026-06-27 14:02:53,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:02:53,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:02:53,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:02:54,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:02:54,146.146 INFO    ] time= 27/06/2026 14:02:54
[2026-06-27 14:02:54,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:02:54,173.173 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:02:54,270.270 INFO    ] No existing commands found in stream
[2026-06-27 14:02:59,280.280 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:02:59,284.284 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-27 14:03:00,000.000 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:03:00,002.002 INFO    ] Checking for system updates...
[2026-06-27 14:03:00,024.024 INFO    ] 200
[2026-06-27 14:03:00,025.025 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:03:00,058.058 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:03:00,060.060 INFO    ] No update needed
[2026-06-27 14:03:00,061.061 INFO    ] Checking for camera pi updates...
[2026-06-27 14:03:00,083.083 INFO    ] 200
[2026-06-27 14:03:00,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:03:00,109.109 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:03:00,158.158 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:03:00,160.160 INFO    ] No camera update needed
[2026-06-27 14:03:00,161.161 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:03:00,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:03:00,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:03:00,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:03:02,202.202 INFO    ] ================================================
[2026-06-27 14:03:02,216.216 INFO    ] Launching Daemon at Sat Jun 27 14:03:02 IST 2026
[2026-06-27 14:03:02,225.225 INFO    ] ================================================
[2026-06-27 14:03:02,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:03:02
[2026-06-27 14:03:02,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:03:03,051.051 INFO    ] Initializing speech engine...
[2026-06-27 14:03:03,056.056 INFO    ] 2026-06-27 14:03:03
[2026-06-27 14:03:03,285.285 INFO    ] 2026-06-27 14:03:03
[2026-06-27 14:03:03,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:03:03,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:03:03,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:03:03,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:03:03,764.764 INFO    ] time= 27/06/2026 14:03:03
[2026-06-27 14:03:03,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:03:03,771.771 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:03:03,868.868 INFO    ] No existing commands found in stream
[2026-06-27 14:03:08,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:03:08,880.880 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-27 14:03:09,323.323 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:03:09,324.324 INFO    ] Checking for system updates...
[2026-06-27 14:03:09,346.346 INFO    ] 200
[2026-06-27 14:03:09,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:03:09,379.379 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:03:09,380.380 INFO    ] No update needed
[2026-06-27 14:03:09,382.382 INFO    ] Checking for camera pi updates...
[2026-06-27 14:03:09,402.402 INFO    ] 200
[2026-06-27 14:03:09,404.404 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:03:09,427.427 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:03:09,452.452 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:03:09,454.454 INFO    ] No camera update needed
[2026-06-27 14:03:09,455.455 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:03:09,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:03:09,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:03:09,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:03:11,500.500 INFO    ] ================================================
[2026-06-27 14:03:11,516.516 INFO    ] Launching Daemon at Sat Jun 27 14:03:11 IST 2026
[2026-06-27 14:03:11,526.526 INFO    ] ================================================
[2026-06-27 14:03:11,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:03:11
[2026-06-27 14:03:12,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:03:12,298.298 INFO    ] Initializing speech engine...
[2026-06-27 14:03:12,308.308 INFO    ] 2026-06-27 14:03:12
[2026-06-27 14:03:12,511.511 INFO    ] 2026-06-27 14:03:12
[2026-06-27 14:03:12,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:03:12,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:03:12,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:03:13,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:03:13,020.020 INFO    ] time= 27/06/2026 14:03:13
[2026-06-27 14:03:13,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:03:13,047.047 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:03:13,145.145 INFO    ] No existing commands found in stream
[2026-06-27 14:03:18,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:03:18,158.158 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-27 14:03:18,718.718 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:03:18,719.719 INFO    ] Checking for system updates...
[2026-06-27 14:03:18,740.740 INFO    ] 200
[2026-06-27 14:03:18,741.741 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:03:18,774.774 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:03:18,775.775 INFO    ] No update needed
[2026-06-27 14:03:18,777.777 INFO    ] Checking for camera pi updates...
[2026-06-27 14:03:18,796.796 INFO    ] 200
[2026-06-27 14:03:18,798.798 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:03:18,822.822 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:03:18,868.868 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:03:18,869.869 INFO    ] No camera update needed
[2026-06-27 14:03:18,870.870 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:03:18,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:03:18,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:03:18,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:03:20,916.916 INFO    ] ================================================
[2026-06-27 14:03:20,931.931 INFO    ] Launching Daemon at Sat Jun 27 14:03:20 IST 2026
[2026-06-27 14:03:20,942.942 INFO    ] ================================================
[2026-06-27 14:03:21,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:03:21
[2026-06-27 14:03:21,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:03:21,791.791 INFO    ] Initializing speech engine...
[2026-06-27 14:03:21,801.801 INFO    ] 2026-06-27 14:03:21
[2026-06-27 14:03:22,011.011 INFO    ] 2026-06-27 14:03:21
[2026-06-27 14:03:22,039.039 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:03:22,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:03:22,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:03:22,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:03:22,519.519 INFO    ] time= 27/06/2026 14:03:22
[2026-06-27 14:03:22,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:03:22,547.547 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:03:22,644.644 INFO    ] No existing commands found in stream
[2026-06-27 14:03:27,653.653 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:03:27,656.656 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-27 14:03:30,225.225 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 14:03:30,227.227 INFO    ] Checking for system updates...
[2026-06-27 14:03:30,248.248 INFO    ] 200
[2026-06-27 14:03:30,250.250 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:03:30,283.283 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:03:30,285.285 INFO    ] No update needed
[2026-06-27 14:03:30,286.286 INFO    ] Checking for camera pi updates...
[2026-06-27 14:03:30,309.309 INFO    ] 200
[2026-06-27 14:03:30,310.310 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:03:30,335.335 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:03:30,377.377 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:03:30,378.378 INFO    ] No camera update needed
[2026-06-27 14:03:30,379.379 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:03:30,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:03:30,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:03:30,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:03:32,418.418 INFO    ] ================================================
[2026-06-27 14:03:32,427.427 INFO    ] Launching Daemon at Sat Jun 27 14:03:32 IST 2026
[2026-06-27 14:03:32,433.433 INFO    ] ================================================
[2026-06-27 14:03:32,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:03:32
[2026-06-27 14:03:33,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:03:33,187.187 INFO    ] Initializing speech engine...
[2026-06-27 14:03:33,192.192 INFO    ] 2026-06-27 14:03:33
[2026-06-27 14:03:33,395.395 INFO    ] 2026-06-27 14:03:33
[2026-06-27 14:03:33,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:03:33,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:03:33,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:03:33,900.900 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:03:33,904.904 INFO    ] time= 27/06/2026 14:03:33
[2026-06-27 14:03:33,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:03:33,931.931 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:03:34,060.060 INFO    ] No existing commands found in stream
[2026-06-27 14:03:39,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:03:39,073.073 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-27 14:03:40,909.909 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:03:40,911.911 INFO    ] Checking for system updates...
[2026-06-27 14:03:40,932.932 INFO    ] 200
[2026-06-27 14:03:40,933.933 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:03:40,966.966 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:03:40,967.967 INFO    ] No update needed
[2026-06-27 14:03:40,968.968 INFO    ] Checking for camera pi updates...
[2026-06-27 14:03:40,988.988 INFO    ] 200
[2026-06-27 14:03:40,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:03:41,012.012 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:03:41,038.038 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:03:41,040.040 INFO    ] No camera update needed
[2026-06-27 14:03:41,041.041 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:03:41,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:03:41,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:03:41,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:03:43,087.087 INFO    ] ================================================
[2026-06-27 14:03:43,103.103 INFO    ] Launching Daemon at Sat Jun 27 14:03:43 IST 2026
[2026-06-27 14:03:43,114.114 INFO    ] ================================================
[2026-06-27 14:03:43,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:03:43
[2026-06-27 14:03:43,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:03:43,979.979 INFO    ] Initializing speech engine...
[2026-06-27 14:03:43,985.985 INFO    ] 2026-06-27 14:03:43
[2026-06-27 14:03:44,195.195 INFO    ] 2026-06-27 14:03:44
[2026-06-27 14:03:44,224.224 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:03:44,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:03:44,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:03:44,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:03:44,636.636 INFO    ] time= 27/06/2026 14:03:44
[2026-06-27 14:03:44,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:03:44,645.645 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:03:44,712.712 INFO    ] No existing commands found in stream
[2026-06-27 14:03:49,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:03:49,730.730 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-27 14:03:52,427.427 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:03:52,428.428 INFO    ] Checking for system updates...
[2026-06-27 14:03:52,450.450 INFO    ] 200
[2026-06-27 14:03:52,452.452 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:03:52,483.483 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:03:52,485.485 INFO    ] No update needed
[2026-06-27 14:03:52,486.486 INFO    ] Checking for camera pi updates...
[2026-06-27 14:03:52,507.507 INFO    ] 200
[2026-06-27 14:03:52,508.508 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:03:52,531.531 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:03:52,685.685 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:03:52,686.686 INFO    ] No camera update needed
[2026-06-27 14:03:52,687.687 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:03:52,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:03:52,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:03:52,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:03:54,734.734 INFO    ] ================================================
[2026-06-27 14:03:54,749.749 INFO    ] Launching Daemon at Sat Jun 27 14:03:54 IST 2026
[2026-06-27 14:03:54,759.759 INFO    ] ================================================
[2026-06-27 14:03:55,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:03:55
[2026-06-27 14:03:55,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:03:55,548.548 INFO    ] Initializing speech engine...
[2026-06-27 14:03:55,556.556 INFO    ] 2026-06-27 14:03:55
[2026-06-27 14:03:55,773.773 INFO    ] 2026-06-27 14:03:55
[2026-06-27 14:03:55,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:03:55,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:03:55,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:03:56,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:03:56,181.181 INFO    ] time= 27/06/2026 14:03:56
[2026-06-27 14:03:56,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:03:56,219.219 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:03:56,284.284 INFO    ] No existing commands found in stream
[2026-06-27 14:04:01,295.295 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:04:01,298.298 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-27 14:04:02,784.784 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:04:02,786.786 INFO    ] Checking for system updates...
[2026-06-27 14:04:02,807.807 INFO    ] 200
[2026-06-27 14:04:02,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:04:02,841.841 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:04:02,843.843 INFO    ] No update needed
[2026-06-27 14:04:02,845.845 INFO    ] Checking for camera pi updates...
[2026-06-27 14:04:02,872.872 INFO    ] 200
[2026-06-27 14:04:02,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:04:02,904.904 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:04:02,950.950 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:04:02,951.951 INFO    ] No camera update needed
[2026-06-27 14:04:02,952.952 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:04:02,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:04:02,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:04:02,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:04:05,999.999 INFO    ] ================================================
[2026-06-27 14:04:05,014.014 INFO    ] Launching Daemon at Sat Jun 27 14:04:05 IST 2026
[2026-06-27 14:04:05,025.025 INFO    ] ================================================
[2026-06-27 14:04:05,354.354 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:04:05
[2026-06-27 14:04:05,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:04:05,798.798 INFO    ] Initializing speech engine...
[2026-06-27 14:04:05,803.803 INFO    ] 2026-06-27 14:04:05
[2026-06-27 14:04:06,005.005 INFO    ] 2026-06-27 14:04:06
[2026-06-27 14:04:06,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:04:06,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:04:06,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:04:06,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:04:06,510.510 INFO    ] time= 27/06/2026 14:04:06
[2026-06-27 14:04:06,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:04:06,518.518 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:04:06,608.608 INFO    ] No existing commands found in stream
[2026-06-27 14:04:11,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:04:11,627.627 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-27 14:04:15,115.115 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 14:04:15,116.116 INFO    ] Checking for system updates...
[2026-06-27 14:04:15,138.138 INFO    ] 200
[2026-06-27 14:04:15,140.140 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:04:15,171.171 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:04:15,173.173 INFO    ] No update needed
[2026-06-27 14:04:15,174.174 INFO    ] Checking for camera pi updates...
[2026-06-27 14:04:15,195.195 INFO    ] 200
[2026-06-27 14:04:15,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:04:15,220.220 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:04:15,259.259 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:04:15,260.260 INFO    ] No camera update needed
[2026-06-27 14:04:15,261.261 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:04:15,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:04:15,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:04:15,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:04:17,309.309 INFO    ] ================================================
[2026-06-27 14:04:17,324.324 INFO    ] Launching Daemon at Sat Jun 27 14:04:17 IST 2026
[2026-06-27 14:04:17,335.335 INFO    ] ================================================
[2026-06-27 14:04:17,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:04:17
[2026-06-27 14:04:18,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:04:18,138.138 INFO    ] Initializing speech engine...
[2026-06-27 14:04:18,145.145 INFO    ] 2026-06-27 14:04:18
[2026-06-27 14:04:18,368.368 INFO    ] 2026-06-27 14:04:18
[2026-06-27 14:04:18,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:04:18,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:04:18,605.605 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:04:18,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:04:18,793.793 INFO    ] time= 27/06/2026 14:04:18
[2026-06-27 14:04:18,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:04:18,842.842 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:04:18,918.918 INFO    ] No existing commands found in stream
[2026-06-27 14:04:23,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:04:23,929.929 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-27 14:04:25,785.785 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 14:04:25,786.786 INFO    ] Checking for system updates...
[2026-06-27 14:04:25,808.808 INFO    ] 200
[2026-06-27 14:04:25,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:04:25,842.842 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:04:25,843.843 INFO    ] No update needed
[2026-06-27 14:04:25,844.844 INFO    ] Checking for camera pi updates...
[2026-06-27 14:04:25,865.865 INFO    ] 200
[2026-06-27 14:04:25,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:04:25,890.890 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:04:25,936.936 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:04:25,937.937 INFO    ] No camera update needed
[2026-06-27 14:04:25,938.938 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:04:25,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:04:25,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:04:25,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:04:27,984.984 INFO    ] ================================================
[2026-06-27 14:04:28,999.999 INFO    ] Launching Daemon at Sat Jun 27 14:04:27 IST 2026
[2026-06-27 14:04:28,010.010 INFO    ] ================================================
[2026-06-27 14:04:28,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:04:28
[2026-06-27 14:04:28,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:04:28,821.821 INFO    ] Initializing speech engine...
[2026-06-27 14:04:28,833.833 INFO    ] 2026-06-27 14:04:28
[2026-06-27 14:04:29,065.065 INFO    ] 2026-06-27 14:04:29
[2026-06-27 14:04:29,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:04:29,338.338 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:04:29,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:04:29,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:04:29,581.581 INFO    ] time= 27/06/2026 14:04:29
[2026-06-27 14:04:29,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:04:29,588.588 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:04:29,685.685 INFO    ] No existing commands found in stream
[2026-06-27 14:04:34,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:04:34,697.697 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-27 14:04:36,585.585 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:04:36,586.586 INFO    ] Checking for system updates...
[2026-06-27 14:04:36,607.607 INFO    ] 200
[2026-06-27 14:04:36,609.609 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:04:36,639.639 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:04:36,641.641 INFO    ] No update needed
[2026-06-27 14:04:36,642.642 INFO    ] Checking for camera pi updates...
[2026-06-27 14:04:36,661.661 INFO    ] 200
[2026-06-27 14:04:36,663.663 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:04:36,689.689 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:04:36,731.731 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:04:36,733.733 INFO    ] No camera update needed
[2026-06-27 14:04:36,734.734 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:04:36,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:04:36,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:04:36,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:04:38,781.781 INFO    ] ================================================
[2026-06-27 14:04:38,796.796 INFO    ] Launching Daemon at Sat Jun 27 14:04:38 IST 2026
[2026-06-27 14:04:38,807.807 INFO    ] ================================================
[2026-06-27 14:04:39,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:04:39
[2026-06-27 14:04:39,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:04:39,673.673 INFO    ] Initializing speech engine...
[2026-06-27 14:04:39,679.679 INFO    ] 2026-06-27 14:04:39
[2026-06-27 14:04:39,886.886 INFO    ] 2026-06-27 14:04:39
[2026-06-27 14:04:39,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:04:40,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:04:40,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:04:40,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:04:40,332.332 INFO    ] time= 27/06/2026 14:04:40
[2026-06-27 14:04:40,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:04:40,339.339 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:04:40,407.407 INFO    ] No existing commands found in stream
[2026-06-27 14:04:45,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:04:45,420.420 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-27 14:04:47,044.044 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:04:47,046.046 INFO    ] Checking for system updates...
[2026-06-27 14:04:47,068.068 INFO    ] 200
[2026-06-27 14:04:47,070.070 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:04:47,103.103 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:04:47,105.105 INFO    ] No update needed
[2026-06-27 14:04:47,106.106 INFO    ] Checking for camera pi updates...
[2026-06-27 14:04:47,125.125 INFO    ] 200
[2026-06-27 14:04:47,127.127 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:04:47,150.150 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:04:47,192.192 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:04:47,194.194 INFO    ] No camera update needed
[2026-06-27 14:04:47,195.195 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:04:47,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:04:47,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:04:47,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:04:49,241.241 INFO    ] ================================================
[2026-06-27 14:04:49,257.257 INFO    ] Launching Daemon at Sat Jun 27 14:04:49 IST 2026
[2026-06-27 14:04:49,268.268 INFO    ] ================================================
[2026-06-27 14:04:49,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:04:49
[2026-06-27 14:04:49,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:04:50,095.095 INFO    ] Initializing speech engine...
[2026-06-27 14:04:50,103.103 INFO    ] 2026-06-27 14:04:50
[2026-06-27 14:04:50,361.361 INFO    ] 2026-06-27 14:04:50
[2026-06-27 14:04:50,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:04:50,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:04:50,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:04:50,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:04:50,810.810 INFO    ] time= 27/06/2026 14:04:50
[2026-06-27 14:04:50,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:04:50,813.813 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:04:50,905.905 INFO    ] No existing commands found in stream
[2026-06-27 14:04:55,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:04:55,917.917 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-27 14:04:56,593.593 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:04:56,594.594 INFO    ] Checking for system updates...
[2026-06-27 14:04:56,616.616 INFO    ] 200
[2026-06-27 14:04:56,617.617 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:04:56,647.647 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:04:56,648.648 INFO    ] No update needed
[2026-06-27 14:04:56,650.650 INFO    ] Checking for camera pi updates...
[2026-06-27 14:04:56,672.672 INFO    ] 200
[2026-06-27 14:04:56,673.673 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:04:56,697.697 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:04:56,738.738 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:04:56,740.740 INFO    ] No camera update needed
[2026-06-27 14:04:56,741.741 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:04:56,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:04:56,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:04:56,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:04:58,793.793 INFO    ] ================================================
[2026-06-27 14:04:58,808.808 INFO    ] Launching Daemon at Sat Jun 27 14:04:58 IST 2026
[2026-06-27 14:04:58,819.819 INFO    ] ================================================
[2026-06-27 14:04:59,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:04:59
[2026-06-27 14:04:59,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:04:59,673.673 INFO    ] Initializing speech engine...
[2026-06-27 14:04:59,679.679 INFO    ] 2026-06-27 14:04:59
[2026-06-27 14:04:59,886.886 INFO    ] 2026-06-27 14:04:59
[2026-06-27 14:04:59,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:05:00,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:05:00,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:05:00,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:05:00,332.332 INFO    ] time= 27/06/2026 14:05:00
[2026-06-27 14:05:00,334.334 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:05:00,397.397 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:05:00,519.519 INFO    ] No existing commands found in stream
[2026-06-27 14:05:05,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:05:05,530.530 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-27 14:05:06,668.668 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:05:06,670.670 INFO    ] Checking for system updates...
[2026-06-27 14:05:06,692.692 INFO    ] 200
[2026-06-27 14:05:06,694.694 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:05:06,728.728 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:05:06,729.729 INFO    ] No update needed
[2026-06-27 14:05:06,730.730 INFO    ] Checking for camera pi updates...
[2026-06-27 14:05:06,752.752 INFO    ] 200
[2026-06-27 14:05:06,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:05:06,779.779 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:05:06,809.809 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:05:06,810.810 INFO    ] No camera update needed
[2026-06-27 14:05:06,812.812 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:05:06,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:05:06,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:05:06,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:05:08,861.861 INFO    ] ================================================
[2026-06-27 14:05:08,876.876 INFO    ] Launching Daemon at Sat Jun 27 14:05:08 IST 2026
[2026-06-27 14:05:08,887.887 INFO    ] ================================================
[2026-06-27 14:05:09,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:05:09
[2026-06-27 14:05:09,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:05:09,658.658 INFO    ] Initializing speech engine...
[2026-06-27 14:05:09,667.667 INFO    ] 2026-06-27 14:05:09
[2026-06-27 14:05:09,880.880 INFO    ] 2026-06-27 14:05:09
[2026-06-27 14:05:09,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:05:10,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:05:10,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:05:10,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:05:10,324.324 INFO    ] time= 27/06/2026 14:05:10
[2026-06-27 14:05:10,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:05:10,335.335 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:05:10,427.427 INFO    ] No existing commands found in stream
[2026-06-27 14:05:15,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:05:15,444.444 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-27 14:05:15,906.906 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 14:05:15,908.908 INFO    ] Checking for system updates...
[2026-06-27 14:05:15,929.929 INFO    ] 200
[2026-06-27 14:05:15,931.931 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:05:15,964.964 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:05:15,966.966 INFO    ] No update needed
[2026-06-27 14:05:15,967.967 INFO    ] Checking for camera pi updates...
[2026-06-27 14:05:15,990.990 INFO    ] 200
[2026-06-27 14:05:15,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:05:16,015.015 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:05:16,060.060 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:05:16,062.062 INFO    ] No camera update needed
[2026-06-27 14:05:16,063.063 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:05:16,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:05:16,068.068 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:05:16,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:05:18,111.111 INFO    ] ================================================
[2026-06-27 14:05:18,127.127 INFO    ] Launching Daemon at Sat Jun 27 14:05:18 IST 2026
[2026-06-27 14:05:18,138.138 INFO    ] ================================================
[2026-06-27 14:05:18,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:05:18
[2026-06-27 14:05:18,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:05:18,953.953 INFO    ] Initializing speech engine...
[2026-06-27 14:05:18,956.956 INFO    ] 2026-06-27 14:05:18
[2026-06-27 14:05:19,166.166 INFO    ] 2026-06-27 14:05:19
[2026-06-27 14:05:19,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:05:19,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:05:19,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:05:19,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:05:19,611.611 INFO    ] time= 27/06/2026 14:05:19
[2026-06-27 14:05:19,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:05:19,614.614 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:05:19,706.706 INFO    ] No existing commands found in stream
[2026-06-27 14:05:24,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:05:24,734.734 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-27 14:05:25,225.225 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 14:05:25,227.227 INFO    ] Checking for system updates...
[2026-06-27 14:05:25,248.248 INFO    ] 200
[2026-06-27 14:05:25,250.250 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:05:25,281.281 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:05:25,282.282 INFO    ] No update needed
[2026-06-27 14:05:25,284.284 INFO    ] Checking for camera pi updates...
[2026-06-27 14:05:25,305.305 INFO    ] 200
[2026-06-27 14:05:25,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:05:25,333.333 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:05:25,372.372 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:05:25,374.374 INFO    ] No camera update needed
[2026-06-27 14:05:25,375.375 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:05:25,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:05:25,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:05:25,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:05:27,423.423 INFO    ] ================================================
[2026-06-27 14:05:27,438.438 INFO    ] Launching Daemon at Sat Jun 27 14:05:27 IST 2026
[2026-06-27 14:05:27,449.449 INFO    ] ================================================
[2026-06-27 14:05:27,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:05:27
[2026-06-27 14:05:28,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:05:28,284.284 INFO    ] Initializing speech engine...
[2026-06-27 14:05:28,292.292 INFO    ] 2026-06-27 14:05:28
[2026-06-27 14:05:28,507.507 INFO    ] 2026-06-27 14:05:28
[2026-06-27 14:05:28,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:05:28,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:05:28,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:05:28,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:05:28,954.954 INFO    ] time= 27/06/2026 14:05:28
[2026-06-27 14:05:28,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:05:28,961.961 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:05:29,028.028 INFO    ] No existing commands found in stream
[2026-06-27 14:05:34,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:05:34,040.040 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-27 14:05:38,024.024 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 14:05:38,026.026 INFO    ] Checking for system updates...
[2026-06-27 14:05:38,046.046 INFO    ] 200
[2026-06-27 14:05:38,048.048 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:05:38,079.079 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:05:38,080.080 INFO    ] No update needed
[2026-06-27 14:05:38,081.081 INFO    ] Checking for camera pi updates...
[2026-06-27 14:05:38,101.101 INFO    ] 200
[2026-06-27 14:05:38,102.102 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:05:38,128.128 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:05:38,169.169 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:05:38,170.170 INFO    ] No camera update needed
[2026-06-27 14:05:38,171.171 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:05:38,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:05:38,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:05:38,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:05:40,218.218 INFO    ] ================================================
[2026-06-27 14:05:40,233.233 INFO    ] Launching Daemon at Sat Jun 27 14:05:40 IST 2026
[2026-06-27 14:05:40,244.244 INFO    ] ================================================
[2026-06-27 14:05:40,646.646 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:05:40
[2026-06-27 14:05:40,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:05:41,150.150 INFO    ] Initializing speech engine...
[2026-06-27 14:05:41,156.156 INFO    ] 2026-06-27 14:05:41
[2026-06-27 14:05:41,368.368 INFO    ] 2026-06-27 14:05:41
[2026-06-27 14:05:41,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:05:41,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:05:41,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:05:41,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:05:41,888.888 INFO    ] time= 27/06/2026 14:05:41
[2026-06-27 14:05:41,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:05:41,944.944 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:05:42,039.039 INFO    ] No existing commands found in stream
[2026-06-27 14:05:47,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:05:47,050.050 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-27 14:05:51,106.106 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:05:51,107.107 INFO    ] Checking for system updates...
[2026-06-27 14:05:51,129.129 INFO    ] 200
[2026-06-27 14:05:51,131.131 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:05:51,162.162 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:05:51,164.164 INFO    ] No update needed
[2026-06-27 14:05:51,165.165 INFO    ] Checking for camera pi updates...
[2026-06-27 14:05:51,186.186 INFO    ] 200
[2026-06-27 14:05:51,187.187 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:05:51,211.211 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:05:51,254.254 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:05:51,256.256 INFO    ] No camera update needed
[2026-06-27 14:05:51,257.257 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:05:51,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:05:51,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:05:51,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:05:53,303.303 INFO    ] ================================================
[2026-06-27 14:05:53,318.318 INFO    ] Launching Daemon at Sat Jun 27 14:05:53 IST 2026
[2026-06-27 14:05:53,330.330 INFO    ] ================================================
[2026-06-27 14:05:53,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:05:53
[2026-06-27 14:05:53,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:05:54,107.107 INFO    ] Initializing speech engine...
[2026-06-27 14:05:54,118.118 INFO    ] 2026-06-27 14:05:54
[2026-06-27 14:05:54,321.321 INFO    ] 2026-06-27 14:05:54
[2026-06-27 14:05:54,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:05:54,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:05:54,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:05:54,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:05:54,745.745 INFO    ] time= 27/06/2026 14:05:54
[2026-06-27 14:05:54,767.767 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:05:54,773.773 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:05:54,838.838 INFO    ] No existing commands found in stream
[2026-06-27 14:05:59,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:05:59,851.851 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-27 14:06:04,250.250 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:06:04,251.251 INFO    ] Checking for system updates...
[2026-06-27 14:06:04,272.272 INFO    ] 200
[2026-06-27 14:06:04,273.273 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:06:04,304.304 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:06:04,305.305 INFO    ] No update needed
[2026-06-27 14:06:04,307.307 INFO    ] Checking for camera pi updates...
[2026-06-27 14:06:04,328.328 INFO    ] 200
[2026-06-27 14:06:04,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:06:04,354.354 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:06:04,380.380 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:06:04,381.381 INFO    ] No camera update needed
[2026-06-27 14:06:04,383.383 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:06:04,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:06:04,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:06:04,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:06:06,428.428 INFO    ] ================================================
[2026-06-27 14:06:06,443.443 INFO    ] Launching Daemon at Sat Jun 27 14:06:06 IST 2026
[2026-06-27 14:06:06,454.454 INFO    ] ================================================
[2026-06-27 14:06:06,786.786 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:06:06
[2026-06-27 14:06:07,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:06:07,242.242 INFO    ] Initializing speech engine...
[2026-06-27 14:06:07,253.253 INFO    ] 2026-06-27 14:06:07
[2026-06-27 14:06:07,456.456 INFO    ] 2026-06-27 14:06:07
[2026-06-27 14:06:07,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:06:07,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:06:07,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:06:07,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:06:07,897.897 INFO    ] time= 27/06/2026 14:06:07
[2026-06-27 14:06:07,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:06:07,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:06:07,995.995 INFO    ] No existing commands found in stream
[2026-06-27 14:06:13,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:06:13,007.007 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-27 14:06:13,996.996 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 14:06:13,997.997 INFO    ] Checking for system updates...
[2026-06-27 14:06:14,019.019 INFO    ] 200
[2026-06-27 14:06:14,021.021 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:06:14,055.055 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:06:14,056.056 INFO    ] No update needed
[2026-06-27 14:06:14,057.057 INFO    ] Checking for camera pi updates...
[2026-06-27 14:06:14,077.077 INFO    ] 200
[2026-06-27 14:06:14,079.079 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:06:14,102.102 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:06:14,158.158 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:06:14,159.159 INFO    ] No camera update needed
[2026-06-27 14:06:14,161.161 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:06:14,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:06:14,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:06:14,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:06:16,210.210 INFO    ] ================================================
[2026-06-27 14:06:16,225.225 INFO    ] Launching Daemon at Sat Jun 27 14:06:16 IST 2026
[2026-06-27 14:06:16,236.236 INFO    ] ================================================
[2026-06-27 14:06:16,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:06:16
[2026-06-27 14:06:16,940.940 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:06:17,083.083 INFO    ] Initializing speech engine...
[2026-06-27 14:06:17,088.088 INFO    ] 2026-06-27 14:06:17
[2026-06-27 14:06:17,290.290 INFO    ] 2026-06-27 14:06:17
[2026-06-27 14:06:17,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:06:17,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:06:17,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:06:17,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:06:17,732.732 INFO    ] time= 27/06/2026 14:06:17
[2026-06-27 14:06:17,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:06:17,739.739 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:06:17,804.804 INFO    ] No existing commands found in stream
[2026-06-27 14:06:22,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:06:22,818.818 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-27 14:06:25,266.266 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:06:25,267.267 INFO    ] Checking for system updates...
[2026-06-27 14:06:25,289.289 INFO    ] 200
[2026-06-27 14:06:25,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:06:25,324.324 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:06:25,325.325 INFO    ] No update needed
[2026-06-27 14:06:25,326.326 INFO    ] Checking for camera pi updates...
[2026-06-27 14:06:25,349.349 INFO    ] 200
[2026-06-27 14:06:25,350.350 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:06:25,374.374 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:06:25,431.431 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:06:25,432.432 INFO    ] No camera update needed
[2026-06-27 14:06:25,434.434 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:06:25,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:06:25,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:06:25,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:06:27,481.481 INFO    ] ================================================
[2026-06-27 14:06:27,496.496 INFO    ] Launching Daemon at Sat Jun 27 14:06:27 IST 2026
[2026-06-27 14:06:27,508.508 INFO    ] ================================================
[2026-06-27 14:06:27,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:06:27
[2026-06-27 14:06:28,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:06:28,307.307 INFO    ] Initializing speech engine...
[2026-06-27 14:06:28,316.316 INFO    ] 2026-06-27 14:06:28
[2026-06-27 14:06:28,525.525 INFO    ] 2026-06-27 14:06:28
[2026-06-27 14:06:28,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:06:28,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:06:28,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:06:29,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:06:29,043.043 INFO    ] time= 27/06/2026 14:06:29
[2026-06-27 14:06:29,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:06:29,071.071 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:06:29,168.168 INFO    ] No existing commands found in stream
[2026-06-27 14:06:34,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:06:34,179.179 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-27 14:06:37,734.734 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:06:37,736.736 INFO    ] Checking for system updates...
[2026-06-27 14:06:37,756.756 INFO    ] 200
[2026-06-27 14:06:37,758.758 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:06:37,790.790 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:06:37,792.792 INFO    ] No update needed
[2026-06-27 14:06:37,793.793 INFO    ] Checking for camera pi updates...
[2026-06-27 14:06:37,813.813 INFO    ] 200
[2026-06-27 14:06:37,814.814 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:06:37,837.837 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:06:37,881.881 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:06:37,882.882 INFO    ] No camera update needed
[2026-06-27 14:06:37,884.884 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:06:37,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:06:37,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:06:37,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:06:39,930.930 INFO    ] ================================================
[2026-06-27 14:06:39,945.945 INFO    ] Launching Daemon at Sat Jun 27 14:06:39 IST 2026
[2026-06-27 14:06:39,956.956 INFO    ] ================================================
[2026-06-27 14:06:40,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:06:40
[2026-06-27 14:06:40,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:06:40,743.743 INFO    ] Initializing speech engine...
[2026-06-27 14:06:40,756.756 INFO    ] 2026-06-27 14:06:40
[2026-06-27 14:06:40,974.974 INFO    ] 2026-06-27 14:06:40
[2026-06-27 14:06:41,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:06:41,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:06:41,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:06:41,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:06:41,400.400 INFO    ] time= 27/06/2026 14:06:41
[2026-06-27 14:06:41,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:06:41,457.457 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:06:41,532.532 INFO    ] No existing commands found in stream
[2026-06-27 14:06:46,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:06:46,546.546 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-27 14:06:48,246.246 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:06:48,247.247 INFO    ] Checking for system updates...
[2026-06-27 14:06:48,268.268 INFO    ] 200
[2026-06-27 14:06:48,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:06:48,301.301 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:06:48,303.303 INFO    ] No update needed
[2026-06-27 14:06:48,304.304 INFO    ] Checking for camera pi updates...
[2026-06-27 14:06:48,324.324 INFO    ] 200
[2026-06-27 14:06:48,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:06:48,349.349 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:06:48,401.401 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:06:48,403.403 INFO    ] No camera update needed
[2026-06-27 14:06:48,404.404 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:06:48,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:06:48,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:06:48,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:06:50,451.451 INFO    ] ================================================
[2026-06-27 14:06:50,467.467 INFO    ] Launching Daemon at Sat Jun 27 14:06:50 IST 2026
[2026-06-27 14:06:50,479.479 INFO    ] ================================================
[2026-06-27 14:06:50,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:06:50
[2026-06-27 14:06:51,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:06:51,296.296 INFO    ] Initializing speech engine...
[2026-06-27 14:06:51,301.301 INFO    ] 2026-06-27 14:06:51
[2026-06-27 14:06:51,506.506 INFO    ] 2026-06-27 14:06:51
[2026-06-27 14:06:51,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:06:51,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:06:51,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:06:51,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:06:51,946.946 INFO    ] time= 27/06/2026 14:06:51
[2026-06-27 14:06:51,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:06:51,949.949 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:06:52,038.038 INFO    ] No existing commands found in stream
[2026-06-27 14:06:57,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:06:57,056.056 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-27 14:07:00,075.075 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:07:00,076.076 INFO    ] Checking for system updates...
[2026-06-27 14:07:00,098.098 INFO    ] 200
[2026-06-27 14:07:00,099.099 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:07:00,129.129 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:07:00,131.131 INFO    ] No update needed
[2026-06-27 14:07:00,132.132 INFO    ] Checking for camera pi updates...
[2026-06-27 14:07:00,151.151 INFO    ] 200
[2026-06-27 14:07:00,153.153 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:07:00,176.176 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:07:00,218.218 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:07:00,219.219 INFO    ] No camera update needed
[2026-06-27 14:07:00,220.220 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:07:00,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:07:00,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:07:00,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:07:02,262.262 INFO    ] ================================================
[2026-06-27 14:07:02,275.275 INFO    ] Launching Daemon at Sat Jun 27 14:07:02 IST 2026
[2026-06-27 14:07:02,283.283 INFO    ] ================================================
[2026-06-27 14:07:02,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:07:02
[2026-06-27 14:07:03,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:07:03,146.146 INFO    ] Initializing speech engine...
[2026-06-27 14:07:03,151.151 INFO    ] 2026-06-27 14:07:03
[2026-06-27 14:07:03,336.336 INFO    ] 2026-06-27 14:07:03
[2026-06-27 14:07:03,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:07:03,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:07:03,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:07:03,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:07:03,771.771 INFO    ] time= 27/06/2026 14:07:03
[2026-06-27 14:07:03,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:07:03,809.809 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:07:03,876.876 INFO    ] No existing commands found in stream
[2026-06-27 14:07:08,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:07:08,899.899 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-27 14:07:09,494.494 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:07:09,495.495 INFO    ] Checking for system updates...
[2026-06-27 14:07:09,516.516 INFO    ] 200
[2026-06-27 14:07:09,517.517 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:07:09,550.550 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:07:09,552.552 INFO    ] No update needed
[2026-06-27 14:07:09,553.553 INFO    ] Checking for camera pi updates...
[2026-06-27 14:07:09,572.572 INFO    ] 200
[2026-06-27 14:07:09,574.574 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:07:09,597.597 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:07:09,651.651 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:07:09,652.652 INFO    ] No camera update needed
[2026-06-27 14:07:09,653.653 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:07:09,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:07:09,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:07:09,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:07:11,701.701 INFO    ] ================================================
[2026-06-27 14:07:11,719.719 INFO    ] Launching Daemon at Sat Jun 27 14:07:11 IST 2026
[2026-06-27 14:07:11,730.730 INFO    ] ================================================
[2026-06-27 14:07:12,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:07:12
[2026-06-27 14:07:12,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:07:12,512.512 INFO    ] Initializing speech engine...
[2026-06-27 14:07:12,522.522 INFO    ] 2026-06-27 14:07:12
[2026-06-27 14:07:12,726.726 INFO    ] 2026-06-27 14:07:12
[2026-06-27 14:07:12,755.755 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:07:12,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:07:12,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:07:13,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:07:13,167.167 INFO    ] time= 27/06/2026 14:07:13
[2026-06-27 14:07:13,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:07:13,201.201 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:07:13,320.320 INFO    ] No existing commands found in stream
[2026-06-27 14:07:18,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:07:18,333.333 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-27 14:07:20,679.679 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:07:20,681.681 INFO    ] Checking for system updates...
[2026-06-27 14:07:20,702.702 INFO    ] 200
[2026-06-27 14:07:20,704.704 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:07:20,735.735 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:07:20,736.736 INFO    ] No update needed
[2026-06-27 14:07:20,738.738 INFO    ] Checking for camera pi updates...
[2026-06-27 14:07:20,759.759 INFO    ] 200
[2026-06-27 14:07:20,760.760 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:07:20,786.786 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:07:20,830.830 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:07:20,831.831 INFO    ] No camera update needed
[2026-06-27 14:07:20,833.833 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:07:20,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:07:20,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:07:20,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:07:22,879.879 INFO    ] ================================================
[2026-06-27 14:07:22,894.894 INFO    ] Launching Daemon at Sat Jun 27 14:07:22 IST 2026
[2026-06-27 14:07:22,904.904 INFO    ] ================================================
[2026-06-27 14:07:23,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:07:23
[2026-06-27 14:07:23,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:07:23,704.704 INFO    ] Initializing speech engine...
[2026-06-27 14:07:23,708.708 INFO    ] 2026-06-27 14:07:23
[2026-06-27 14:07:23,927.927 INFO    ] 2026-06-27 14:07:23
[2026-06-27 14:07:23,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:07:24,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:07:24,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:07:24,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:07:24,373.373 INFO    ] time= 27/06/2026 14:07:24
[2026-06-27 14:07:24,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:07:24,380.380 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:07:24,448.448 INFO    ] No existing commands found in stream
[2026-06-27 14:07:29,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:07:29,460.460 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-27 14:07:32,692.692 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:07:32,694.694 INFO    ] Checking for system updates...
[2026-06-27 14:07:32,726.726 INFO    ] 200
[2026-06-27 14:07:32,728.728 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:07:32,783.783 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:07:32,786.786 INFO    ] No update needed
[2026-06-27 14:07:32,789.789 INFO    ] Checking for camera pi updates...
[2026-06-27 14:07:32,829.829 INFO    ] 200
[2026-06-27 14:07:32,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:07:32,875.875 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:07:32,906.906 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:07:32,907.907 INFO    ] No camera update needed
[2026-06-27 14:07:32,908.908 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:07:32,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:07:32,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:07:32,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:07:34,956.956 INFO    ] ================================================
[2026-06-27 14:07:34,971.971 INFO    ] Launching Daemon at Sat Jun 27 14:07:34 IST 2026
[2026-06-27 14:07:34,982.982 INFO    ] ================================================
[2026-06-27 14:07:35,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:07:35
[2026-06-27 14:07:35,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:07:35,759.759 INFO    ] Initializing speech engine...
[2026-06-27 14:07:35,766.766 INFO    ] 2026-06-27 14:07:35
[2026-06-27 14:07:35,982.982 INFO    ] 2026-06-27 14:07:35
[2026-06-27 14:07:36,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:07:36,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:07:36,207.207 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:07:36,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:07:36,426.426 INFO    ] time= 27/06/2026 14:07:36
[2026-06-27 14:07:36,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:07:36,433.433 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:07:36,501.501 INFO    ] No existing commands found in stream
[2026-06-27 14:07:41,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:07:41,528.528 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-27 14:07:43,036.036 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 14:07:43,038.038 INFO    ] Checking for system updates...
[2026-06-27 14:07:43,060.060 INFO    ] 200
[2026-06-27 14:07:43,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:07:43,092.092 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:07:43,093.093 INFO    ] No update needed
[2026-06-27 14:07:43,095.095 INFO    ] Checking for camera pi updates...
[2026-06-27 14:07:43,115.115 INFO    ] 200
[2026-06-27 14:07:43,116.116 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:07:43,139.139 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:07:43,181.181 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:07:43,182.182 INFO    ] No camera update needed
[2026-06-27 14:07:43,184.184 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:07:43,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:07:43,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:07:43,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:07:45,229.229 INFO    ] ================================================
[2026-06-27 14:07:45,245.245 INFO    ] Launching Daemon at Sat Jun 27 14:07:45 IST 2026
[2026-06-27 14:07:45,257.257 INFO    ] ================================================
[2026-06-27 14:07:45,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:07:45
[2026-06-27 14:07:45,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:07:46,073.073 INFO    ] Initializing speech engine...
[2026-06-27 14:07:46,078.078 INFO    ] 2026-06-27 14:07:46
[2026-06-27 14:07:46,296.296 INFO    ] 2026-06-27 14:07:46
[2026-06-27 14:07:46,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:07:46,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:07:46,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:07:46,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:07:46,737.737 INFO    ] time= 27/06/2026 14:07:46
[2026-06-27 14:07:46,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:07:46,744.744 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:07:46,834.834 INFO    ] No existing commands found in stream
[2026-06-27 14:07:51,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:07:51,846.846 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-27 14:07:55,426.426 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 14:07:55,427.427 INFO    ] Checking for system updates...
[2026-06-27 14:07:55,448.448 INFO    ] 200
[2026-06-27 14:07:55,450.450 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:07:55,483.483 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:07:55,485.485 INFO    ] No update needed
[2026-06-27 14:07:55,486.486 INFO    ] Checking for camera pi updates...
[2026-06-27 14:07:55,507.507 INFO    ] 200
[2026-06-27 14:07:55,509.509 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:07:55,533.533 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:07:55,566.566 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:07:55,568.568 INFO    ] No camera update needed
[2026-06-27 14:07:55,569.569 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:07:55,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:07:55,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:07:55,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:07:57,615.615 INFO    ] ================================================
[2026-06-27 14:07:57,630.630 INFO    ] Launching Daemon at Sat Jun 27 14:07:57 IST 2026
[2026-06-27 14:07:57,641.641 INFO    ] ================================================
[2026-06-27 14:07:57,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:07:57
[2026-06-27 14:07:58,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:07:58,430.430 INFO    ] Initializing speech engine...
[2026-06-27 14:07:58,438.438 INFO    ] 2026-06-27 14:07:58
[2026-06-27 14:07:58,651.651 INFO    ] 2026-06-27 14:07:58
[2026-06-27 14:07:58,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:07:58,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:07:58,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:07:59,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:07:59,073.073 INFO    ] time= 27/06/2026 14:07:59
[2026-06-27 14:07:59,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:07:59,102.102 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:07:59,169.169 INFO    ] No existing commands found in stream
[2026-06-27 14:08:04,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:08:04,197.197 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-27 14:08:06,120.120 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:08:06,121.121 INFO    ] Checking for system updates...
[2026-06-27 14:08:06,142.142 INFO    ] 200
[2026-06-27 14:08:06,144.144 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:08:06,175.175 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:08:06,176.176 INFO    ] No update needed
[2026-06-27 14:08:06,178.178 INFO    ] Checking for camera pi updates...
[2026-06-27 14:08:06,199.199 INFO    ] 200
[2026-06-27 14:08:06,200.200 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:08:06,224.224 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:08:06,368.368 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:08:06,370.370 INFO    ] No camera update needed
[2026-06-27 14:08:06,371.371 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:08:06,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:08:06,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:08:06,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:08:08,417.417 INFO    ] ================================================
[2026-06-27 14:08:08,433.433 INFO    ] Launching Daemon at Sat Jun 27 14:08:08 IST 2026
[2026-06-27 14:08:08,444.444 INFO    ] ================================================
[2026-06-27 14:08:08,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:08:08
[2026-06-27 14:08:09,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:08:09,249.249 INFO    ] Initializing speech engine...
[2026-06-27 14:08:09,255.255 INFO    ] 2026-06-27 14:08:09
[2026-06-27 14:08:09,465.465 INFO    ] 2026-06-27 14:08:09
[2026-06-27 14:08:09,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:08:09,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:08:09,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:08:09,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:08:09,978.978 INFO    ] time= 27/06/2026 14:08:09
[2026-06-27 14:08:10,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:08:10,006.006 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:08:10,126.126 INFO    ] No existing commands found in stream
[2026-06-27 14:08:15,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:08:15,140.140 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-27 14:08:18,785.785 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 14:08:18,787.787 INFO    ] Checking for system updates...
[2026-06-27 14:08:18,807.807 INFO    ] 200
[2026-06-27 14:08:18,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:08:18,840.840 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:08:18,841.841 INFO    ] No update needed
[2026-06-27 14:08:18,843.843 INFO    ] Checking for camera pi updates...
[2026-06-27 14:08:18,862.862 INFO    ] 200
[2026-06-27 14:08:18,863.863 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:08:18,888.888 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:08:18,945.945 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:08:18,947.947 INFO    ] No camera update needed
[2026-06-27 14:08:18,948.948 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:08:18,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:08:18,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:08:18,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:08:20,993.993 INFO    ] ================================================
[2026-06-27 14:08:21,008.008 INFO    ] Launching Daemon at Sat Jun 27 14:08:21 IST 2026
[2026-06-27 14:08:21,019.019 INFO    ] ================================================
[2026-06-27 14:08:21,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:08:21
[2026-06-27 14:08:21,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:08:21,831.831 INFO    ] Initializing speech engine...
[2026-06-27 14:08:21,837.837 INFO    ] 2026-06-27 14:08:21
[2026-06-27 14:08:22,039.039 INFO    ] 2026-06-27 14:08:22
[2026-06-27 14:08:22,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:08:22,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:08:22,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:08:22,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:08:22,457.457 INFO    ] time= 27/06/2026 14:08:22
[2026-06-27 14:08:22,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:08:22,487.487 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:08:22,578.578 INFO    ] No existing commands found in stream
[2026-06-27 14:08:27,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:08:27,588.588 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-27 14:08:29,962.962 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 14:08:29,964.964 INFO    ] Checking for system updates...
[2026-06-27 14:08:29,985.985 INFO    ] 200
[2026-06-27 14:08:29,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:08:30,016.016 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:08:30,018.018 INFO    ] No update needed
[2026-06-27 14:08:30,019.019 INFO    ] Checking for camera pi updates...
[2026-06-27 14:08:30,040.040 INFO    ] 200
[2026-06-27 14:08:30,042.042 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:08:30,065.065 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:08:30,111.111 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:08:30,113.113 INFO    ] No camera update needed
[2026-06-27 14:08:30,114.114 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:08:30,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:08:30,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:08:30,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:08:32,159.159 INFO    ] ================================================
[2026-06-27 14:08:32,175.175 INFO    ] Launching Daemon at Sat Jun 27 14:08:32 IST 2026
[2026-06-27 14:08:32,185.185 INFO    ] ================================================
[2026-06-27 14:08:32,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:08:32
[2026-06-27 14:08:32,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:08:33,025.025 INFO    ] Initializing speech engine...
[2026-06-27 14:08:33,030.030 INFO    ] 2026-06-27 14:08:33
[2026-06-27 14:08:33,241.241 INFO    ] 2026-06-27 14:08:33
[2026-06-27 14:08:33,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:08:33,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:08:33,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:08:33,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:08:33,806.806 INFO    ] time= 27/06/2026 14:08:33
[2026-06-27 14:08:33,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:08:33,812.812 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:08:33,904.904 INFO    ] No existing commands found in stream
[2026-06-27 14:08:38,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:08:38,919.919 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-27 14:08:43,108.108 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:08:43,109.109 INFO    ] Checking for system updates...
[2026-06-27 14:08:43,131.131 INFO    ] 200
[2026-06-27 14:08:43,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:08:43,166.166 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:08:43,168.168 INFO    ] No update needed
[2026-06-27 14:08:43,169.169 INFO    ] Checking for camera pi updates...
[2026-06-27 14:08:43,188.188 INFO    ] 200
[2026-06-27 14:08:43,190.190 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:08:43,213.213 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:08:43,256.256 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:08:43,257.257 INFO    ] No camera update needed
[2026-06-27 14:08:43,258.258 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:08:43,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:08:43,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:08:43,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:08:45,304.304 INFO    ] ================================================
[2026-06-27 14:08:45,319.319 INFO    ] Launching Daemon at Sat Jun 27 14:08:45 IST 2026
[2026-06-27 14:08:45,330.330 INFO    ] ================================================
[2026-06-27 14:08:45,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:08:45
[2026-06-27 14:08:45,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:08:46,135.135 INFO    ] Initializing speech engine...
[2026-06-27 14:08:46,144.144 INFO    ] 2026-06-27 14:08:46
[2026-06-27 14:08:46,352.352 INFO    ] 2026-06-27 14:08:46
[2026-06-27 14:08:46,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:08:46,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:08:46,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:08:46,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:08:46,799.799 INFO    ] time= 27/06/2026 14:08:46
[2026-06-27 14:08:46,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:08:46,806.806 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:08:46,898.898 INFO    ] No existing commands found in stream
[2026-06-27 14:08:51,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:08:51,909.909 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-27 14:08:55,162.162 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 14:08:55,164.164 INFO    ] Checking for system updates...
[2026-06-27 14:08:55,187.187 INFO    ] 200
[2026-06-27 14:08:55,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:08:55,219.219 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:08:55,220.220 INFO    ] No update needed
[2026-06-27 14:08:55,221.221 INFO    ] Checking for camera pi updates...
[2026-06-27 14:08:55,241.241 INFO    ] 200
[2026-06-27 14:08:55,242.242 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:08:55,268.268 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:08:55,295.295 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:08:55,297.297 INFO    ] No camera update needed
[2026-06-27 14:08:55,298.298 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:08:55,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:08:55,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:08:55,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:08:57,345.345 INFO    ] ================================================
[2026-06-27 14:08:57,360.360 INFO    ] Launching Daemon at Sat Jun 27 14:08:57 IST 2026
[2026-06-27 14:08:57,371.371 INFO    ] ================================================
[2026-06-27 14:08:57,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:08:57
[2026-06-27 14:08:58,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:08:58,234.234 INFO    ] Initializing speech engine...
[2026-06-27 14:08:58,238.238 INFO    ] 2026-06-27 14:08:58
[2026-06-27 14:08:58,449.449 INFO    ] 2026-06-27 14:08:58
[2026-06-27 14:08:58,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:08:58,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:08:58,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:08:58,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:08:58,897.897 INFO    ] time= 27/06/2026 14:08:58
[2026-06-27 14:08:58,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:08:58,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:08:58,996.996 INFO    ] No existing commands found in stream
[2026-06-27 14:09:04,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:09:04,014.014 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-27 14:09:05,332.332 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:09:05,333.333 INFO    ] Checking for system updates...
[2026-06-27 14:09:05,354.354 INFO    ] 200
[2026-06-27 14:09:05,356.356 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:09:05,391.391 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:09:05,392.392 INFO    ] No update needed
[2026-06-27 14:09:05,393.393 INFO    ] Checking for camera pi updates...
[2026-06-27 14:09:05,413.413 INFO    ] 200
[2026-06-27 14:09:05,415.415 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:09:05,438.438 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:09:05,480.480 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:09:05,481.481 INFO    ] No camera update needed
[2026-06-27 14:09:05,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:09:05,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:09:05,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:09:05,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:09:07,529.529 INFO    ] ================================================
[2026-06-27 14:09:07,544.544 INFO    ] Launching Daemon at Sat Jun 27 14:09:07 IST 2026
[2026-06-27 14:09:07,554.554 INFO    ] ================================================
[2026-06-27 14:09:07,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:09:07
[2026-06-27 14:09:08,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:09:08,424.424 INFO    ] Initializing speech engine...
[2026-06-27 14:09:08,431.431 INFO    ] 2026-06-27 14:09:08
[2026-06-27 14:09:08,641.641 INFO    ] 2026-06-27 14:09:08
[2026-06-27 14:09:08,673.673 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:09:08,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:09:08,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:09:09,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:09:09,096.096 INFO    ] time= 27/06/2026 14:09:09
[2026-06-27 14:09:09,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:09:09,100.100 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:09:09,219.219 INFO    ] No existing commands found in stream
[2026-06-27 14:09:14,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:09:14,233.233 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-27 14:09:18,477.477 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 14:09:18,479.479 INFO    ] Checking for system updates...
[2026-06-27 14:09:18,501.501 INFO    ] 200
[2026-06-27 14:09:18,503.503 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:09:18,533.533 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:09:18,534.534 INFO    ] No update needed
[2026-06-27 14:09:18,536.536 INFO    ] Checking for camera pi updates...
[2026-06-27 14:09:18,555.555 INFO    ] 200
[2026-06-27 14:09:18,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:09:18,581.581 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:09:18,620.620 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:09:18,621.621 INFO    ] No camera update needed
[2026-06-27 14:09:18,623.623 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:09:18,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:09:18,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:09:18,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:09:20,667.667 INFO    ] ================================================
[2026-06-27 14:09:20,683.683 INFO    ] Launching Daemon at Sat Jun 27 14:09:20 IST 2026
[2026-06-27 14:09:20,694.694 INFO    ] ================================================
[2026-06-27 14:09:21,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:09:21
[2026-06-27 14:09:21,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:09:21,464.464 INFO    ] Initializing speech engine...
[2026-06-27 14:09:21,472.472 INFO    ] 2026-06-27 14:09:21
[2026-06-27 14:09:21,685.685 INFO    ] 2026-06-27 14:09:21
[2026-06-27 14:09:21,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:09:21,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:09:22,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:09:22,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:09:22,217.217 INFO    ] time= 27/06/2026 14:09:22
[2026-06-27 14:09:22,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:09:22,246.246 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:09:22,318.318 INFO    ] No existing commands found in stream
[2026-06-27 14:09:27,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:09:27,329.329 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-27 14:09:29,730.730 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:09:29,732.732 INFO    ] Checking for system updates...
[2026-06-27 14:09:29,754.754 INFO    ] 200
[2026-06-27 14:09:29,756.756 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:09:29,786.786 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:09:29,787.787 INFO    ] No update needed
[2026-06-27 14:09:29,788.788 INFO    ] Checking for camera pi updates...
[2026-06-27 14:09:29,808.808 INFO    ] 200
[2026-06-27 14:09:29,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:09:29,837.837 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:09:29,879.879 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:09:29,881.881 INFO    ] No camera update needed
[2026-06-27 14:09:29,882.882 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:09:29,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:09:29,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:09:29,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:09:31,914.914 INFO    ] ================================================
[2026-06-27 14:09:31,924.924 INFO    ] Launching Daemon at Sat Jun 27 14:09:31 IST 2026
[2026-06-27 14:09:31,931.931 INFO    ] ================================================
[2026-06-27 14:09:32,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:09:32
[2026-06-27 14:09:32,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:09:32,718.718 INFO    ] Initializing speech engine...
[2026-06-27 14:09:32,727.727 INFO    ] 2026-06-27 14:09:32
[2026-06-27 14:09:32,936.936 INFO    ] 2026-06-27 14:09:32
[2026-06-27 14:09:32,964.964 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:09:33,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:09:33,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:09:33,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:09:33,368.368 INFO    ] time= 27/06/2026 14:09:33
[2026-06-27 14:09:33,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:09:33,399.399 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:09:33,497.497 INFO    ] No existing commands found in stream
[2026-06-27 14:09:38,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:09:38,840.840 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-27 14:09:42,680.680 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 14:09:42,682.682 INFO    ] Checking for system updates...
[2026-06-27 14:09:42,704.704 INFO    ] 200
[2026-06-27 14:09:42,705.705 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:09:42,735.735 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:09:42,737.737 INFO    ] No update needed
[2026-06-27 14:09:42,738.738 INFO    ] Checking for camera pi updates...
[2026-06-27 14:09:42,757.757 INFO    ] 200
[2026-06-27 14:09:42,759.759 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:09:42,785.785 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:09:42,830.830 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:09:42,832.832 INFO    ] No camera update needed
[2026-06-27 14:09:42,968.968 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:09:42,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:09:42,972.972 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:09:42,975.975 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:09:45,017.017 INFO    ] ================================================
[2026-06-27 14:09:45,033.033 INFO    ] Launching Daemon at Sat Jun 27 14:09:45 IST 2026
[2026-06-27 14:09:45,045.045 INFO    ] ================================================
[2026-06-27 14:09:45,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:09:45
[2026-06-27 14:09:45,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:09:45,936.936 INFO    ] Initializing speech engine...
[2026-06-27 14:09:45,942.942 INFO    ] 2026-06-27 14:09:45
[2026-06-27 14:09:46,152.152 INFO    ] 2026-06-27 14:09:46
[2026-06-27 14:09:46,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:09:46,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:09:46,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:09:46,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:09:46,593.593 INFO    ] time= 27/06/2026 14:09:46
[2026-06-27 14:09:46,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:09:46,601.601 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:09:46,669.669 INFO    ] No existing commands found in stream
[2026-06-27 14:09:51,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:09:51,687.687 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-27 14:09:52,405.405 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:09:52,407.407 INFO    ] Checking for system updates...
[2026-06-27 14:09:52,430.430 INFO    ] 200
[2026-06-27 14:09:52,431.431 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:09:52,464.464 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:09:52,466.466 INFO    ] No update needed
[2026-06-27 14:09:52,467.467 INFO    ] Checking for camera pi updates...
[2026-06-27 14:09:52,487.487 INFO    ] 200
[2026-06-27 14:09:52,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:09:52,516.516 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:09:52,562.562 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:09:52,563.563 INFO    ] No camera update needed
[2026-06-27 14:09:52,564.564 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:09:52,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:09:52,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:09:52,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:09:54,610.610 INFO    ] ================================================
[2026-06-27 14:09:54,625.625 INFO    ] Launching Daemon at Sat Jun 27 14:09:54 IST 2026
[2026-06-27 14:09:54,636.636 INFO    ] ================================================
[2026-06-27 14:09:54,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:09:54
[2026-06-27 14:09:55,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:09:55,450.450 INFO    ] Initializing speech engine...
[2026-06-27 14:09:55,460.460 INFO    ] 2026-06-27 14:09:55
[2026-06-27 14:09:55,665.665 INFO    ] 2026-06-27 14:09:55
[2026-06-27 14:09:55,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:09:55,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:09:55,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:09:56,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:09:56,102.102 INFO    ] time= 27/06/2026 14:09:56
[2026-06-27 14:09:56,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:09:56,110.110 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:09:56,200.200 INFO    ] No existing commands found in stream
[2026-06-27 14:10:01,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:10:01,217.217 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-27 14:10:02,477.477 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:10:02,480.480 INFO    ] Checking for system updates...
[2026-06-27 14:10:02,516.516 INFO    ] 200
[2026-06-27 14:10:02,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:10:02,569.569 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:10:02,571.571 INFO    ] No update needed
[2026-06-27 14:10:02,573.573 INFO    ] Checking for camera pi updates...
[2026-06-27 14:10:02,601.601 INFO    ] 200
[2026-06-27 14:10:02,604.604 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:10:02,649.649 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:10:02,712.712 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:10:02,716.716 INFO    ] No camera update needed
[2026-06-27 14:10:02,720.720 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:10:02,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:10:02,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:10:02,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:10:04,778.778 INFO    ] ================================================
[2026-06-27 14:10:04,795.795 INFO    ] Launching Daemon at Sat Jun 27 14:10:04 IST 2026
[2026-06-27 14:10:04,806.806 INFO    ] ================================================
[2026-06-27 14:10:05,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:10:05
[2026-06-27 14:10:05,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:10:05,644.644 INFO    ] Initializing speech engine...
[2026-06-27 14:10:05,651.651 INFO    ] 2026-06-27 14:10:05
[2026-06-27 14:10:05,860.860 INFO    ] 2026-06-27 14:10:05
[2026-06-27 14:10:05,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:10:06,078.078 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:10:06,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:10:06,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:10:06,300.300 INFO    ] time= 27/06/2026 14:10:06
[2026-06-27 14:10:06,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:10:06,328.328 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:10:06,420.420 INFO    ] No existing commands found in stream
[2026-06-27 14:10:11,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:10:11,429.429 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-27 14:10:12,175.175 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:10:12,177.177 INFO    ] Checking for system updates...
[2026-06-27 14:10:12,199.199 INFO    ] 200
[2026-06-27 14:10:12,201.201 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:10:12,231.231 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:10:12,232.232 INFO    ] No update needed
[2026-06-27 14:10:12,234.234 INFO    ] Checking for camera pi updates...
[2026-06-27 14:10:12,254.254 INFO    ] 200
[2026-06-27 14:10:12,255.255 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:10:12,280.280 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:10:12,423.423 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:10:12,424.424 INFO    ] No camera update needed
[2026-06-27 14:10:12,426.426 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:10:12,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:10:12,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:10:12,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:10:14,472.472 INFO    ] ================================================
[2026-06-27 14:10:14,487.487 INFO    ] Launching Daemon at Sat Jun 27 14:10:14 IST 2026
[2026-06-27 14:10:14,498.498 INFO    ] ================================================
[2026-06-27 14:10:14,856.856 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:10:14
[2026-06-27 14:10:15,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:10:15,314.314 INFO    ] Initializing speech engine...
[2026-06-27 14:10:15,319.319 INFO    ] 2026-06-27 14:10:15
[2026-06-27 14:10:15,528.528 INFO    ] 2026-06-27 14:10:15
[2026-06-27 14:10:15,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:10:15,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:10:15,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:10:16,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:10:16,040.040 INFO    ] time= 27/06/2026 14:10:16
[2026-06-27 14:10:16,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:10:16,067.067 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:10:16,166.166 INFO    ] No existing commands found in stream
[2026-06-27 14:10:21,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:10:21,178.178 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-27 14:10:24,508.508 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:10:24,509.509 INFO    ] Checking for system updates...
[2026-06-27 14:10:24,530.530 INFO    ] 200
[2026-06-27 14:10:24,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:10:24,562.562 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:10:24,563.563 INFO    ] No update needed
[2026-06-27 14:10:24,565.565 INFO    ] Checking for camera pi updates...
[2026-06-27 14:10:24,586.586 INFO    ] 200
[2026-06-27 14:10:24,587.587 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:10:24,612.612 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:10:24,657.657 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:10:24,658.658 INFO    ] No camera update needed
[2026-06-27 14:10:24,659.659 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:10:24,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:10:24,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:10:24,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:10:26,705.705 INFO    ] ================================================
[2026-06-27 14:10:26,720.720 INFO    ] Launching Daemon at Sat Jun 27 14:10:26 IST 2026
[2026-06-27 14:10:26,731.731 INFO    ] ================================================
[2026-06-27 14:10:27,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:10:27
[2026-06-27 14:10:27,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:10:27,522.522 INFO    ] Initializing speech engine...
[2026-06-27 14:10:27,532.532 INFO    ] 2026-06-27 14:10:27
[2026-06-27 14:10:27,739.739 INFO    ] 2026-06-27 14:10:27
[2026-06-27 14:10:27,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:10:27,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:10:27,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:10:28,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:10:28,190.190 INFO    ] time= 27/06/2026 14:10:28
[2026-06-27 14:10:28,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:10:28,193.193 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:10:28,261.261 INFO    ] No existing commands found in stream
[2026-06-27 14:10:33,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:10:33,297.297 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-27 14:10:35,906.906 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 14:10:35,907.907 INFO    ] Checking for system updates...
[2026-06-27 14:10:35,928.928 INFO    ] 200
[2026-06-27 14:10:35,929.929 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:10:35,959.959 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:10:35,961.961 INFO    ] No update needed
[2026-06-27 14:10:35,962.962 INFO    ] Checking for camera pi updates...
[2026-06-27 14:10:35,983.983 INFO    ] 200
[2026-06-27 14:10:35,984.984 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:10:36,008.008 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:10:36,069.069 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:10:36,071.071 INFO    ] No camera update needed
[2026-06-27 14:10:36,072.072 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:10:36,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:10:36,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:10:36,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:10:38,119.119 INFO    ] ================================================
[2026-06-27 14:10:38,135.135 INFO    ] Launching Daemon at Sat Jun 27 14:10:38 IST 2026
[2026-06-27 14:10:38,146.146 INFO    ] ================================================
[2026-06-27 14:10:38,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:10:38
[2026-06-27 14:10:38,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:10:38,956.956 INFO    ] Initializing speech engine...
[2026-06-27 14:10:38,970.970 INFO    ] 2026-06-27 14:10:38
[2026-06-27 14:10:39,155.155 INFO    ] 2026-06-27 14:10:39
[2026-06-27 14:10:39,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:10:39,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:10:39,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:10:39,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:10:39,637.637 INFO    ] time= 27/06/2026 14:10:39
[2026-06-27 14:10:39,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:10:39,645.645 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:10:39,735.735 INFO    ] No existing commands found in stream
[2026-06-27 14:10:44,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:10:44,753.753 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-27 14:10:47,015.015 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:10:47,017.017 INFO    ] Checking for system updates...
[2026-06-27 14:10:47,039.039 INFO    ] 200
[2026-06-27 14:10:47,041.041 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:10:47,072.072 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:10:47,073.073 INFO    ] No update needed
[2026-06-27 14:10:47,075.075 INFO    ] Checking for camera pi updates...
[2026-06-27 14:10:47,096.096 INFO    ] 200
[2026-06-27 14:10:47,097.097 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:10:47,124.124 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:10:47,170.170 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:10:47,171.171 INFO    ] No camera update needed
[2026-06-27 14:10:47,172.172 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:10:47,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:10:47,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:10:47,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:10:49,221.221 INFO    ] ================================================
[2026-06-27 14:10:49,236.236 INFO    ] Launching Daemon at Sat Jun 27 14:10:49 IST 2026
[2026-06-27 14:10:49,247.247 INFO    ] ================================================
[2026-06-27 14:10:49,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:10:49
[2026-06-27 14:10:49,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:10:50,080.080 INFO    ] Initializing speech engine...
[2026-06-27 14:10:50,085.085 INFO    ] 2026-06-27 14:10:50
[2026-06-27 14:10:50,291.291 INFO    ] 2026-06-27 14:10:50
[2026-06-27 14:10:50,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:10:50,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:10:50,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:10:50,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:10:50,728.728 INFO    ] time= 27/06/2026 14:10:50
[2026-06-27 14:10:50,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:10:50,740.740 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:10:50,807.807 INFO    ] No existing commands found in stream
[2026-06-27 14:10:55,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:10:55,818.818 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-27 14:10:59,198.198 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:10:59,199.199 INFO    ] Checking for system updates...
[2026-06-27 14:10:59,220.220 INFO    ] 200
[2026-06-27 14:10:59,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:10:59,258.258 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:10:59,260.260 INFO    ] No update needed
[2026-06-27 14:10:59,261.261 INFO    ] Checking for camera pi updates...
[2026-06-27 14:10:59,282.282 INFO    ] 200
[2026-06-27 14:10:59,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:10:59,309.309 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:10:59,353.353 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:10:59,355.355 INFO    ] No camera update needed
[2026-06-27 14:10:59,356.356 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:10:59,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:10:59,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:10:59,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:11:01,406.406 INFO    ] ================================================
[2026-06-27 14:11:01,425.425 INFO    ] Launching Daemon at Sat Jun 27 14:11:01 IST 2026
[2026-06-27 14:11:01,440.440 INFO    ] ================================================
[2026-06-27 14:11:01,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:11:01
[2026-06-27 14:11:02,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:11:02,362.362 INFO    ] Initializing speech engine...
[2026-06-27 14:11:02,374.374 INFO    ] 2026-06-27 14:11:02
[2026-06-27 14:11:02,594.594 INFO    ] 2026-06-27 14:11:02
[2026-06-27 14:11:02,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:11:02,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:11:02,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:11:03,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:11:03,088.088 INFO    ] time= 27/06/2026 14:11:03
[2026-06-27 14:11:03,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:11:03,096.096 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:11:03,163.163 INFO    ] No existing commands found in stream
[2026-06-27 14:11:08,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:11:08,176.176 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-27 14:11:09,964.964 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:11:09,966.966 INFO    ] Checking for system updates...
[2026-06-27 14:11:09,987.987 INFO    ] 200
[2026-06-27 14:11:09,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:11:10,022.022 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:11:10,024.024 INFO    ] No update needed
[2026-06-27 14:11:10,025.025 INFO    ] Checking for camera pi updates...
[2026-06-27 14:11:10,045.045 INFO    ] 200
[2026-06-27 14:11:10,046.046 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:11:10,069.069 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:11:10,118.118 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:11:10,119.119 INFO    ] No camera update needed
[2026-06-27 14:11:10,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:11:10,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:11:10,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:11:10,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:11:12,166.166 INFO    ] ================================================
[2026-06-27 14:11:12,182.182 INFO    ] Launching Daemon at Sat Jun 27 14:11:12 IST 2026
[2026-06-27 14:11:12,193.193 INFO    ] ================================================
[2026-06-27 14:11:12,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:11:12
[2026-06-27 14:11:12,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:11:12,972.972 INFO    ] Initializing speech engine...
[2026-06-27 14:11:12,977.977 INFO    ] 2026-06-27 14:11:12
[2026-06-27 14:11:13,172.172 INFO    ] 2026-06-27 14:11:13
[2026-06-27 14:11:13,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:11:13,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:11:13,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:11:13,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:11:13,702.702 INFO    ] time= 27/06/2026 14:11:13
[2026-06-27 14:11:13,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:11:13,706.706 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:11:13,804.804 INFO    ] No existing commands found in stream
[2026-06-27 14:11:18,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:11:18,816.816 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-27 14:11:19,677.677 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 14:11:19,678.678 INFO    ] Checking for system updates...
[2026-06-27 14:11:19,699.699 INFO    ] 200
[2026-06-27 14:11:19,701.701 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:11:19,734.734 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:11:19,735.735 INFO    ] No update needed
[2026-06-27 14:11:19,737.737 INFO    ] Checking for camera pi updates...
[2026-06-27 14:11:19,756.756 INFO    ] 200
[2026-06-27 14:11:19,757.757 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:11:19,786.786 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:11:19,812.812 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:11:19,813.813 INFO    ] No camera update needed
[2026-06-27 14:11:19,814.814 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:11:19,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:11:19,819.819 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:11:19,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:11:21,861.861 INFO    ] ================================================
[2026-06-27 14:11:21,876.876 INFO    ] Launching Daemon at Sat Jun 27 14:11:21 IST 2026
[2026-06-27 14:11:21,887.887 INFO    ] ================================================
[2026-06-27 14:11:22,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:11:22
[2026-06-27 14:11:22,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:11:22,711.711 INFO    ] Initializing speech engine...
[2026-06-27 14:11:22,722.722 INFO    ] 2026-06-27 14:11:22
[2026-06-27 14:11:22,928.928 INFO    ] 2026-06-27 14:11:22
[2026-06-27 14:11:22,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:11:23,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:11:23,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:11:23,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:11:23,443.443 INFO    ] time= 27/06/2026 14:11:23
[2026-06-27 14:11:23,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:11:23,490.490 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:11:23,584.584 INFO    ] No existing commands found in stream
[2026-06-27 14:11:28,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:11:28,597.597 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-27 14:11:31,549.549 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:11:31,551.551 INFO    ] Checking for system updates...
[2026-06-27 14:11:31,580.580 INFO    ] 200
[2026-06-27 14:11:31,582.582 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:11:31,625.625 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:11:31,627.627 INFO    ] No update needed
[2026-06-27 14:11:31,628.628 INFO    ] Checking for camera pi updates...
[2026-06-27 14:11:31,651.651 INFO    ] 200
[2026-06-27 14:11:31,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:11:31,681.681 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:11:31,710.710 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:11:31,712.712 INFO    ] No camera update needed
[2026-06-27 14:11:31,714.714 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:11:31,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:11:31,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:11:31,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:11:33,766.766 INFO    ] ================================================
[2026-06-27 14:11:33,782.782 INFO    ] Launching Daemon at Sat Jun 27 14:11:33 IST 2026
[2026-06-27 14:11:33,792.792 INFO    ] ================================================
[2026-06-27 14:11:34,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:11:34
[2026-06-27 14:11:34,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:11:34,665.665 INFO    ] Initializing speech engine...
[2026-06-27 14:11:34,670.670 INFO    ] 2026-06-27 14:11:34
[2026-06-27 14:11:34,876.876 INFO    ] 2026-06-27 14:11:34
[2026-06-27 14:11:34,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:11:35,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:11:35,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:11:35,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:11:35,446.446 INFO    ] time= 27/06/2026 14:11:35
[2026-06-27 14:11:35,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:11:35,450.450 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:11:35,557.557 INFO    ] No existing commands found in stream
[2026-06-27 14:11:40,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:11:40,570.570 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-27 14:11:43,988.988 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 14:11:43,989.989 INFO    ] Checking for system updates...
[2026-06-27 14:11:44,012.012 INFO    ] 200
[2026-06-27 14:11:44,013.013 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:11:44,043.043 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:11:44,045.045 INFO    ] No update needed
[2026-06-27 14:11:44,046.046 INFO    ] Checking for camera pi updates...
[2026-06-27 14:11:44,065.065 INFO    ] 200
[2026-06-27 14:11:44,067.067 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:11:44,092.092 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:11:44,143.143 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:11:44,145.145 INFO    ] No camera update needed
[2026-06-27 14:11:44,146.146 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:11:44,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:11:44,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:11:44,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:11:46,191.191 INFO    ] ================================================
[2026-06-27 14:11:46,207.207 INFO    ] Launching Daemon at Sat Jun 27 14:11:46 IST 2026
[2026-06-27 14:11:46,217.217 INFO    ] ================================================
[2026-06-27 14:11:46,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:11:46
[2026-06-27 14:11:46,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:11:47,029.029 INFO    ] Initializing speech engine...
[2026-06-27 14:11:47,037.037 INFO    ] 2026-06-27 14:11:47
[2026-06-27 14:11:47,246.246 INFO    ] 2026-06-27 14:11:47
[2026-06-27 14:11:47,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:11:47,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:11:47,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:11:47,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:11:47,693.693 INFO    ] time= 27/06/2026 14:11:47
[2026-06-27 14:11:47,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:11:47,696.696 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:11:47,787.787 INFO    ] No existing commands found in stream
[2026-06-27 14:11:52,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:11:52,804.804 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-27 14:11:53,925.925 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 14:11:53,927.927 INFO    ] Checking for system updates...
[2026-06-27 14:11:53,948.948 INFO    ] 200
[2026-06-27 14:11:53,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:11:53,979.979 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:11:53,981.981 INFO    ] No update needed
[2026-06-27 14:11:53,982.982 INFO    ] Checking for camera pi updates...
[2026-06-27 14:11:54,004.004 INFO    ] 200
[2026-06-27 14:11:54,006.006 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:11:54,031.031 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:11:54,131.131 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:11:54,133.133 INFO    ] No camera update needed
[2026-06-27 14:11:54,134.134 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:11:54,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:11:54,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:11:54,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:11:56,180.180 INFO    ] ================================================
[2026-06-27 14:11:56,196.196 INFO    ] Launching Daemon at Sat Jun 27 14:11:56 IST 2026
[2026-06-27 14:11:56,207.207 INFO    ] ================================================
[2026-06-27 14:11:56,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:11:56
[2026-06-27 14:11:56,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:11:57,009.009 INFO    ] Initializing speech engine...
[2026-06-27 14:11:57,012.012 INFO    ] 2026-06-27 14:11:57
[2026-06-27 14:11:57,209.209 INFO    ] 2026-06-27 14:11:57
[2026-06-27 14:11:57,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:11:57,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:11:57,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:11:57,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:11:57,736.736 INFO    ] time= 27/06/2026 14:11:57
[2026-06-27 14:11:57,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:11:57,744.744 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:11:57,844.844 INFO    ] No existing commands found in stream
[2026-06-27 14:12:02,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:12:02,853.853 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-27 14:12:07,127.127 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 14:12:07,128.128 INFO    ] Checking for system updates...
[2026-06-27 14:12:07,149.149 INFO    ] 200
[2026-06-27 14:12:07,151.151 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:12:07,184.184 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:12:07,185.185 INFO    ] No update needed
[2026-06-27 14:12:07,187.187 INFO    ] Checking for camera pi updates...
[2026-06-27 14:12:07,208.208 INFO    ] 200
[2026-06-27 14:12:07,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:12:07,237.237 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:12:07,263.263 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:12:07,264.264 INFO    ] No camera update needed
[2026-06-27 14:12:07,266.266 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:12:07,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:12:07,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:12:07,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:12:09,313.313 INFO    ] ================================================
[2026-06-27 14:12:09,328.328 INFO    ] Launching Daemon at Sat Jun 27 14:12:09 IST 2026
[2026-06-27 14:12:09,339.339 INFO    ] ================================================
[2026-06-27 14:12:09,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:12:09
[2026-06-27 14:12:09,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:12:10,135.135 INFO    ] Initializing speech engine...
[2026-06-27 14:12:10,139.139 INFO    ] 2026-06-27 14:12:10
[2026-06-27 14:12:10,346.346 INFO    ] 2026-06-27 14:12:10
[2026-06-27 14:12:10,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:12:10,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:12:10,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:12:10,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:12:10,755.755 INFO    ] time= 27/06/2026 14:12:10
[2026-06-27 14:12:10,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:12:10,796.796 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:12:10,892.892 INFO    ] No existing commands found in stream
[2026-06-27 14:12:15,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:12:15,908.908 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-27 14:12:18,347.347 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 14:12:18,348.348 INFO    ] Checking for system updates...
[2026-06-27 14:12:18,370.370 INFO    ] 200
[2026-06-27 14:12:18,372.372 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:12:18,402.402 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:12:18,404.404 INFO    ] No update needed
[2026-06-27 14:12:18,405.405 INFO    ] Checking for camera pi updates...
[2026-06-27 14:12:18,425.425 INFO    ] 200
[2026-06-27 14:12:18,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:12:18,451.451 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:12:18,581.581 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:12:18,583.583 INFO    ] No camera update needed
[2026-06-27 14:12:18,585.585 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:12:18,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:12:18,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:12:18,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:12:20,636.636 INFO    ] ================================================
[2026-06-27 14:12:20,651.651 INFO    ] Launching Daemon at Sat Jun 27 14:12:20 IST 2026
[2026-06-27 14:12:20,662.662 INFO    ] ================================================
[2026-06-27 14:12:21,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:12:21
[2026-06-27 14:12:21,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:12:21,469.469 INFO    ] Initializing speech engine...
[2026-06-27 14:12:21,474.474 INFO    ] 2026-06-27 14:12:21
[2026-06-27 14:12:21,679.679 INFO    ] 2026-06-27 14:12:21
[2026-06-27 14:12:21,707.707 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:12:21,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:12:21,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:12:22,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:12:22,098.098 INFO    ] time= 27/06/2026 14:12:22
[2026-06-27 14:12:22,119.119 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:12:22,125.125 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:12:22,215.215 INFO    ] No existing commands found in stream
[2026-06-27 14:12:27,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:12:27,227.227 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-27 14:12:29,877.877 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:12:29,879.879 INFO    ] Checking for system updates...
[2026-06-27 14:12:29,900.900 INFO    ] 200
[2026-06-27 14:12:29,901.901 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:12:29,932.932 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:12:29,933.933 INFO    ] No update needed
[2026-06-27 14:12:29,934.934 INFO    ] Checking for camera pi updates...
[2026-06-27 14:12:29,954.954 INFO    ] 200
[2026-06-27 14:12:29,956.956 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:12:29,981.981 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:12:30,011.011 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:12:30,012.012 INFO    ] No camera update needed
[2026-06-27 14:12:30,013.013 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:12:30,015.015 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:12:30,018.018 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:12:30,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:12:32,046.046 INFO    ] ================================================
[2026-06-27 14:12:32,056.056 INFO    ] Launching Daemon at Sat Jun 27 14:12:32 IST 2026
[2026-06-27 14:12:32,062.062 INFO    ] ================================================
[2026-06-27 14:12:32,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:12:32
[2026-06-27 14:12:32,710.710 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:12:32,846.846 INFO    ] Initializing speech engine...
[2026-06-27 14:12:32,850.850 INFO    ] 2026-06-27 14:12:32
[2026-06-27 14:12:33,063.063 INFO    ] 2026-06-27 14:12:33
[2026-06-27 14:12:33,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:12:33,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:12:33,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:12:33,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:12:33,574.574 INFO    ] time= 27/06/2026 14:12:33
[2026-06-27 14:12:33,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:12:33,627.627 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:12:33,706.706 INFO    ] No existing commands found in stream
[2026-06-27 14:12:38,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:12:38,718.718 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-27 14:12:41,068.068 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:12:41,070.070 INFO    ] Checking for system updates...
[2026-06-27 14:12:41,092.092 INFO    ] 200
[2026-06-27 14:12:41,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:12:41,124.124 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:12:41,126.126 INFO    ] No update needed
[2026-06-27 14:12:41,127.127 INFO    ] Checking for camera pi updates...
[2026-06-27 14:12:41,148.148 INFO    ] 200
[2026-06-27 14:12:41,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:12:41,176.176 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:12:41,221.221 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:12:41,222.222 INFO    ] No camera update needed
[2026-06-27 14:12:41,224.224 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:12:41,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:12:41,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:12:41,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:12:43,271.271 INFO    ] ================================================
[2026-06-27 14:12:43,286.286 INFO    ] Launching Daemon at Sat Jun 27 14:12:43 IST 2026
[2026-06-27 14:12:43,297.297 INFO    ] ================================================
[2026-06-27 14:12:43,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:12:43
[2026-06-27 14:12:43,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:12:44,126.126 INFO    ] Initializing speech engine...
[2026-06-27 14:12:44,130.130 INFO    ] 2026-06-27 14:12:44
[2026-06-27 14:12:44,348.348 INFO    ] 2026-06-27 14:12:44
[2026-06-27 14:12:44,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:12:44,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:12:44,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:12:44,721.721 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:12:44,771.771 INFO    ] time= 27/06/2026 14:12:44
[2026-06-27 14:12:44,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:12:44,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:12:44,876.876 INFO    ] No existing commands found in stream
[2026-06-27 14:12:49,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:12:49,888.888 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-27 14:12:52,627.627 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:12:52,629.629 INFO    ] Checking for system updates...
[2026-06-27 14:12:52,650.650 INFO    ] 200
[2026-06-27 14:12:52,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:12:52,685.685 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:12:52,686.686 INFO    ] No update needed
[2026-06-27 14:12:52,688.688 INFO    ] Checking for camera pi updates...
[2026-06-27 14:12:52,708.708 INFO    ] 200
[2026-06-27 14:12:52,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:12:52,733.733 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:12:52,779.779 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:12:52,780.780 INFO    ] No camera update needed
[2026-06-27 14:12:52,782.782 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:12:52,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:12:52,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:12:52,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:12:54,829.829 INFO    ] ================================================
[2026-06-27 14:12:54,844.844 INFO    ] Launching Daemon at Sat Jun 27 14:12:54 IST 2026
[2026-06-27 14:12:54,855.855 INFO    ] ================================================
[2026-06-27 14:12:55,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:12:55
[2026-06-27 14:12:55,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:12:55,646.646 INFO    ] Initializing speech engine...
[2026-06-27 14:12:55,650.650 INFO    ] 2026-06-27 14:12:55
[2026-06-27 14:12:55,853.853 INFO    ] 2026-06-27 14:12:55
[2026-06-27 14:12:55,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:12:56,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:12:56,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:12:56,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:12:56,371.371 INFO    ] time= 27/06/2026 14:12:56
[2026-06-27 14:12:56,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:12:56,379.379 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:12:56,478.478 INFO    ] No existing commands found in stream
[2026-06-27 14:13:01,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:13:01,489.489 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-27 14:13:04,229.229 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:13:04,230.230 INFO    ] Checking for system updates...
[2026-06-27 14:13:04,251.251 INFO    ] 200
[2026-06-27 14:13:04,252.252 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:13:04,286.286 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:13:04,288.288 INFO    ] No update needed
[2026-06-27 14:13:04,289.289 INFO    ] Checking for camera pi updates...
[2026-06-27 14:13:04,308.308 INFO    ] 200
[2026-06-27 14:13:04,309.309 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:13:04,333.333 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:13:04,373.373 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:13:04,375.375 INFO    ] No camera update needed
[2026-06-27 14:13:04,376.376 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:13:04,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:13:04,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:13:04,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:13:06,421.421 INFO    ] ================================================
[2026-06-27 14:13:06,436.436 INFO    ] Launching Daemon at Sat Jun 27 14:13:06 IST 2026
[2026-06-27 14:13:06,447.447 INFO    ] ================================================
[2026-06-27 14:13:06,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:13:06
[2026-06-27 14:13:07,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:13:07,328.328 INFO    ] Initializing speech engine...
[2026-06-27 14:13:07,333.333 INFO    ] 2026-06-27 14:13:07
[2026-06-27 14:13:07,542.542 INFO    ] 2026-06-27 14:13:07
[2026-06-27 14:13:07,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:13:07,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:13:07,785.785 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:13:07,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:13:07,992.992 INFO    ] time= 27/06/2026 14:13:07
[2026-06-27 14:13:07,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:13:07,996.996 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:13:08,113.113 INFO    ] No existing commands found in stream
[2026-06-27 14:13:13,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:13:13,126.126 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-27 14:13:16,588.588 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:13:16,590.590 INFO    ] Checking for system updates...
[2026-06-27 14:13:16,611.611 INFO    ] 200
[2026-06-27 14:13:16,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:13:16,643.643 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:13:16,645.645 INFO    ] No update needed
[2026-06-27 14:13:16,646.646 INFO    ] Checking for camera pi updates...
[2026-06-27 14:13:16,666.666 INFO    ] 200
[2026-06-27 14:13:16,668.668 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:13:16,691.691 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:13:16,717.717 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:13:16,719.719 INFO    ] No camera update needed
[2026-06-27 14:13:16,720.720 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:13:16,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:13:16,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:13:16,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:13:18,768.768 INFO    ] ================================================
[2026-06-27 14:13:18,783.783 INFO    ] Launching Daemon at Sat Jun 27 14:13:18 IST 2026
[2026-06-27 14:13:18,794.794 INFO    ] ================================================
[2026-06-27 14:13:19,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:13:19
[2026-06-27 14:13:19,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:13:19,613.613 INFO    ] Initializing speech engine...
[2026-06-27 14:13:19,624.624 INFO    ] 2026-06-27 14:13:19
[2026-06-27 14:13:19,832.832 INFO    ] 2026-06-27 14:13:19
[2026-06-27 14:13:19,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:13:20,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:13:20,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:13:20,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:13:20,275.275 INFO    ] time= 27/06/2026 14:13:20
[2026-06-27 14:13:20,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:13:20,286.286 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:13:20,378.378 INFO    ] No existing commands found in stream
[2026-06-27 14:13:25,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:13:25,396.396 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-27 14:13:29,028.028 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:13:29,030.030 INFO    ] Checking for system updates...
[2026-06-27 14:13:29,051.051 INFO    ] 200
[2026-06-27 14:13:29,052.052 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:13:29,086.086 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:13:29,088.088 INFO    ] No update needed
[2026-06-27 14:13:29,089.089 INFO    ] Checking for camera pi updates...
[2026-06-27 14:13:29,111.111 INFO    ] 200
[2026-06-27 14:13:29,112.112 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:13:29,136.136 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:13:29,182.182 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:13:29,184.184 INFO    ] No camera update needed
[2026-06-27 14:13:29,185.185 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:13:29,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:13:29,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:13:29,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:13:31,234.234 INFO    ] ================================================
[2026-06-27 14:13:31,250.250 INFO    ] Launching Daemon at Sat Jun 27 14:13:31 IST 2026
[2026-06-27 14:13:31,262.262 INFO    ] ================================================
[2026-06-27 14:13:31,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:13:31
[2026-06-27 14:13:31,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:13:32,087.087 INFO    ] Initializing speech engine...
[2026-06-27 14:13:32,093.093 INFO    ] 2026-06-27 14:13:32
[2026-06-27 14:13:32,305.305 INFO    ] 2026-06-27 14:13:32
[2026-06-27 14:13:32,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:13:32,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:13:32,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:13:32,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:13:32,823.823 INFO    ] time= 27/06/2026 14:13:32
[2026-06-27 14:13:32,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:13:32,865.865 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:13:32,969.969 INFO    ] No existing commands found in stream
[2026-06-27 14:13:37,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:13:37,981.981 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-27 14:13:39,954.954 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:13:39,955.955 INFO    ] Checking for system updates...
[2026-06-27 14:13:39,977.977 INFO    ] 200
[2026-06-27 14:13:39,979.979 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:13:40,010.010 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:13:40,012.012 INFO    ] No update needed
[2026-06-27 14:13:40,013.013 INFO    ] Checking for camera pi updates...
[2026-06-27 14:13:40,034.034 INFO    ] 200
[2026-06-27 14:13:40,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:13:40,059.059 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:13:40,087.087 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:13:40,089.089 INFO    ] No camera update needed
[2026-06-27 14:13:40,090.090 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:13:40,091.091 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:13:40,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:13:40,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:13:42,137.137 INFO    ] ================================================
[2026-06-27 14:13:42,153.153 INFO    ] Launching Daemon at Sat Jun 27 14:13:42 IST 2026
[2026-06-27 14:13:42,164.164 INFO    ] ================================================
[2026-06-27 14:13:42,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:13:42
[2026-06-27 14:13:42,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:13:42,948.948 INFO    ] Initializing speech engine...
[2026-06-27 14:13:42,952.952 INFO    ] 2026-06-27 14:13:42
[2026-06-27 14:13:43,158.158 INFO    ] 2026-06-27 14:13:43
[2026-06-27 14:13:43,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:13:43,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:13:43,421.421 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:13:43,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:13:43,630.630 INFO    ] time= 27/06/2026 14:13:43
[2026-06-27 14:13:43,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:13:43,660.660 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:13:43,726.726 INFO    ] No existing commands found in stream
[2026-06-27 14:13:48,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:13:48,739.739 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-27 14:13:52,247.247 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 14:13:52,248.248 INFO    ] Checking for system updates...
[2026-06-27 14:13:52,270.270 INFO    ] 200
[2026-06-27 14:13:52,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:13:52,302.302 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:13:52,303.303 INFO    ] No update needed
[2026-06-27 14:13:52,304.304 INFO    ] Checking for camera pi updates...
[2026-06-27 14:13:52,327.327 INFO    ] 200
[2026-06-27 14:13:52,328.328 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:13:52,351.351 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:13:52,399.399 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:13:52,400.400 INFO    ] No camera update needed
[2026-06-27 14:13:52,402.402 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:13:52,403.403 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:13:52,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:13:52,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:13:54,447.447 INFO    ] ================================================
[2026-06-27 14:13:54,462.462 INFO    ] Launching Daemon at Sat Jun 27 14:13:54 IST 2026
[2026-06-27 14:13:54,473.473 INFO    ] ================================================
[2026-06-27 14:13:54,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:13:54
[2026-06-27 14:13:55,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:13:55,257.257 INFO    ] Initializing speech engine...
[2026-06-27 14:13:55,261.261 INFO    ] 2026-06-27 14:13:55
[2026-06-27 14:13:55,471.471 INFO    ] 2026-06-27 14:13:55
[2026-06-27 14:13:55,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:13:55,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:13:55,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:13:55,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:13:55,971.971 INFO    ] time= 27/06/2026 14:13:55
[2026-06-27 14:13:55,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:13:55,979.979 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:13:56,077.077 INFO    ] No existing commands found in stream
[2026-06-27 14:14:01,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:14:01,091.091 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-27 14:14:05,209.209 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:14:05,210.210 INFO    ] Checking for system updates...
[2026-06-27 14:14:05,231.231 INFO    ] 200
[2026-06-27 14:14:05,233.233 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:14:05,263.263 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:14:05,265.265 INFO    ] No update needed
[2026-06-27 14:14:05,266.266 INFO    ] Checking for camera pi updates...
[2026-06-27 14:14:05,287.287 INFO    ] 200
[2026-06-27 14:14:05,288.288 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:14:05,311.311 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:14:05,357.357 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:14:05,358.358 INFO    ] No camera update needed
[2026-06-27 14:14:05,359.359 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:14:05,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:14:05,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:14:05,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:14:07,405.405 INFO    ] ================================================
[2026-06-27 14:14:07,420.420 INFO    ] Launching Daemon at Sat Jun 27 14:14:07 IST 2026
[2026-06-27 14:14:07,431.431 INFO    ] ================================================
[2026-06-27 14:14:07,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:14:07
[2026-06-27 14:14:08,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:14:08,302.302 INFO    ] Initializing speech engine...
[2026-06-27 14:14:08,308.308 INFO    ] 2026-06-27 14:14:08
[2026-06-27 14:14:08,516.516 INFO    ] 2026-06-27 14:14:08
[2026-06-27 14:14:08,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:14:08,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:14:08,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:14:08,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:14:08,959.959 INFO    ] time= 27/06/2026 14:14:08
[2026-06-27 14:14:08,966.966 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:14:08,967.967 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:14:09,058.058 INFO    ] No existing commands found in stream
[2026-06-27 14:14:14,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:14:14,076.076 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-27 14:14:18,410.410 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 14:14:18,411.411 INFO    ] Checking for system updates...
[2026-06-27 14:14:18,432.432 INFO    ] 200
[2026-06-27 14:14:18,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:14:18,464.464 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:14:18,466.466 INFO    ] No update needed
[2026-06-27 14:14:18,467.467 INFO    ] Checking for camera pi updates...
[2026-06-27 14:14:18,487.487 INFO    ] 200
[2026-06-27 14:14:18,488.488 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:14:18,511.511 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:14:18,554.554 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:14:18,555.555 INFO    ] No camera update needed
[2026-06-27 14:14:18,557.557 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:14:18,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:14:18,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:14:18,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:14:20,602.602 INFO    ] ================================================
[2026-06-27 14:14:20,617.617 INFO    ] Launching Daemon at Sat Jun 27 14:14:20 IST 2026
[2026-06-27 14:14:20,628.628 INFO    ] ================================================
[2026-06-27 14:14:20,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:14:20
[2026-06-27 14:14:21,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:14:21,489.489 INFO    ] Initializing speech engine...
[2026-06-27 14:14:21,494.494 INFO    ] 2026-06-27 14:14:21
[2026-06-27 14:14:21,703.703 INFO    ] 2026-06-27 14:14:21
[2026-06-27 14:14:21,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:14:21,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:14:21,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:14:22,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:14:22,149.149 INFO    ] time= 27/06/2026 14:14:22
[2026-06-27 14:14:22,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:14:22,198.198 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:14:22,340.340 INFO    ] No existing commands found in stream
[2026-06-27 14:14:27,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:14:27,353.353 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-27 14:14:30,399.399 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:14:30,401.401 INFO    ] Checking for system updates...
[2026-06-27 14:14:30,424.424 INFO    ] 200
[2026-06-27 14:14:30,425.425 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:14:30,458.458 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:14:30,460.460 INFO    ] No update needed
[2026-06-27 14:14:30,461.461 INFO    ] Checking for camera pi updates...
[2026-06-27 14:14:30,481.481 INFO    ] 200
[2026-06-27 14:14:30,482.482 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:14:30,510.510 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:14:30,659.659 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:14:30,660.660 INFO    ] No camera update needed
[2026-06-27 14:14:30,661.661 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:14:30,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:14:30,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:14:30,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:14:32,700.700 INFO    ] ================================================
[2026-06-27 14:14:32,715.715 INFO    ] Launching Daemon at Sat Jun 27 14:14:32 IST 2026
[2026-06-27 14:14:32,726.726 INFO    ] ================================================
[2026-06-27 14:14:33,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:14:33
[2026-06-27 14:14:33,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:14:33,575.575 INFO    ] Initializing speech engine...
[2026-06-27 14:14:33,579.579 INFO    ] 2026-06-27 14:14:33
[2026-06-27 14:14:33,788.788 INFO    ] 2026-06-27 14:14:33
[2026-06-27 14:14:33,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:14:34,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:14:34,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:14:34,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:14:34,222.222 INFO    ] time= 27/06/2026 14:14:34
[2026-06-27 14:14:34,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:14:34,253.253 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:14:34,321.321 INFO    ] No existing commands found in stream
[2026-06-27 14:14:39,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:14:39,334.334 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-27 14:14:42,479.479 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 14:14:42,480.480 INFO    ] Checking for system updates...
[2026-06-27 14:14:42,501.501 INFO    ] 200
[2026-06-27 14:14:42,503.503 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:14:42,536.536 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:14:42,537.537 INFO    ] No update needed
[2026-06-27 14:14:42,539.539 INFO    ] Checking for camera pi updates...
[2026-06-27 14:14:42,558.558 INFO    ] 200
[2026-06-27 14:14:42,560.560 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:14:42,584.584 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:14:42,640.640 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:14:42,641.641 INFO    ] No camera update needed
[2026-06-27 14:14:42,643.643 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:14:42,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:14:42,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:14:42,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:14:44,689.689 INFO    ] ================================================
[2026-06-27 14:14:44,704.704 INFO    ] Launching Daemon at Sat Jun 27 14:14:44 IST 2026
[2026-06-27 14:14:44,714.714 INFO    ] ================================================
[2026-06-27 14:14:45,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:14:45
[2026-06-27 14:14:45,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:14:45,502.502 INFO    ] Initializing speech engine...
[2026-06-27 14:14:45,507.507 INFO    ] 2026-06-27 14:14:45
[2026-06-27 14:14:45,711.711 INFO    ] 2026-06-27 14:14:45
[2026-06-27 14:14:45,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:14:45,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:14:45,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:14:46,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:14:46,151.151 INFO    ] time= 27/06/2026 14:14:46
[2026-06-27 14:14:46,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:14:46,158.158 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:14:46,248.248 INFO    ] No existing commands found in stream
[2026-06-27 14:14:51,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:14:51,265.265 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-27 14:14:52,030.030 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:14:52,031.031 INFO    ] Checking for system updates...
[2026-06-27 14:14:52,052.052 INFO    ] 200
[2026-06-27 14:14:52,053.053 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:14:52,084.084 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:14:52,085.085 INFO    ] No update needed
[2026-06-27 14:14:52,086.086 INFO    ] Checking for camera pi updates...
[2026-06-27 14:14:52,106.106 INFO    ] 200
[2026-06-27 14:14:52,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:14:52,133.133 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:14:52,167.167 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:14:52,168.168 INFO    ] No camera update needed
[2026-06-27 14:14:52,170.170 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:14:52,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:14:52,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:14:52,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:14:54,220.220 INFO    ] ================================================
[2026-06-27 14:14:54,235.235 INFO    ] Launching Daemon at Sat Jun 27 14:14:54 IST 2026
[2026-06-27 14:14:54,245.245 INFO    ] ================================================
[2026-06-27 14:14:54,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:14:54
[2026-06-27 14:14:54,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:14:55,068.068 INFO    ] Initializing speech engine...
[2026-06-27 14:14:55,073.073 INFO    ] 2026-06-27 14:14:55
[2026-06-27 14:14:55,280.280 INFO    ] 2026-06-27 14:14:55
[2026-06-27 14:14:55,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:14:55,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:14:55,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:14:55,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:14:55,697.697 INFO    ] time= 27/06/2026 14:14:55
[2026-06-27 14:14:55,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:14:55,731.731 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:14:55,798.798 INFO    ] No existing commands found in stream
[2026-06-27 14:15:00,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:15:00,816.816 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-27 14:15:04,883.883 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 14:15:04,884.884 INFO    ] Checking for system updates...
[2026-06-27 14:15:04,907.907 INFO    ] 200
[2026-06-27 14:15:04,909.909 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:15:04,944.944 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:15:04,946.946 INFO    ] No update needed
[2026-06-27 14:15:04,948.948 INFO    ] Checking for camera pi updates...
[2026-06-27 14:15:04,968.968 INFO    ] 200
[2026-06-27 14:15:04,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:15:04,994.994 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:15:05,038.038 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:15:05,040.040 INFO    ] No camera update needed
[2026-06-27 14:15:05,041.041 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:15:05,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:15:05,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:15:05,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:15:07,086.086 INFO    ] ================================================
[2026-06-27 14:15:07,102.102 INFO    ] Launching Daemon at Sat Jun 27 14:15:07 IST 2026
[2026-06-27 14:15:07,112.112 INFO    ] ================================================
[2026-06-27 14:15:07,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:15:07
[2026-06-27 14:15:07,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:15:07,926.926 INFO    ] Initializing speech engine...
[2026-06-27 14:15:07,934.934 INFO    ] 2026-06-27 14:15:07
[2026-06-27 14:15:08,141.141 INFO    ] 2026-06-27 14:15:08
[2026-06-27 14:15:08,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:15:08,364.364 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:15:08,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:15:08,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:15:08,560.560 INFO    ] time= 27/06/2026 14:15:08
[2026-06-27 14:15:08,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:15:08,590.590 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:15:08,682.682 INFO    ] No existing commands found in stream
[2026-06-27 14:15:13,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:15:13,699.699 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-27 14:15:16,682.682 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 14:15:16,684.684 INFO    ] Checking for system updates...
[2026-06-27 14:15:16,706.706 INFO    ] 200
[2026-06-27 14:15:16,707.707 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:15:16,738.738 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:15:16,740.740 INFO    ] No update needed
[2026-06-27 14:15:16,741.741 INFO    ] Checking for camera pi updates...
[2026-06-27 14:15:16,761.761 INFO    ] 200
[2026-06-27 14:15:16,763.763 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:15:16,787.787 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:15:16,826.826 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:15:16,827.827 INFO    ] No camera update needed
[2026-06-27 14:15:16,829.829 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:15:16,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:15:16,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:15:16,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:15:18,875.875 INFO    ] ================================================
[2026-06-27 14:15:18,890.890 INFO    ] Launching Daemon at Sat Jun 27 14:15:18 IST 2026
[2026-06-27 14:15:18,900.900 INFO    ] ================================================
[2026-06-27 14:15:19,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:15:19
[2026-06-27 14:15:19,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:15:19,699.699 INFO    ] Initializing speech engine...
[2026-06-27 14:15:19,705.705 INFO    ] 2026-06-27 14:15:19
[2026-06-27 14:15:19,909.909 INFO    ] 2026-06-27 14:15:19
[2026-06-27 14:15:19,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:15:20,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:15:20,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:15:20,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:15:20,349.349 INFO    ] time= 27/06/2026 14:15:20
[2026-06-27 14:15:20,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:15:20,356.356 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:15:20,448.448 INFO    ] No existing commands found in stream
[2026-06-27 14:15:25,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:15:25,465.465 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-27 14:15:28,561.561 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:15:28,562.562 INFO    ] Checking for system updates...
[2026-06-27 14:15:28,583.583 INFO    ] 200
[2026-06-27 14:15:28,585.585 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:15:28,615.615 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:15:28,616.616 INFO    ] No update needed
[2026-06-27 14:15:28,618.618 INFO    ] Checking for camera pi updates...
[2026-06-27 14:15:28,638.638 INFO    ] 200
[2026-06-27 14:15:28,639.639 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:15:28,665.665 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:15:28,714.714 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:15:28,715.715 INFO    ] No camera update needed
[2026-06-27 14:15:28,717.717 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:15:28,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:15:28,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:15:28,724.724 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:15:30,763.763 INFO    ] ================================================
[2026-06-27 14:15:30,778.778 INFO    ] Launching Daemon at Sat Jun 27 14:15:30 IST 2026
[2026-06-27 14:15:30,789.789 INFO    ] ================================================
[2026-06-27 14:15:31,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:15:31
[2026-06-27 14:15:31,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:15:31,621.621 INFO    ] Initializing speech engine...
[2026-06-27 14:15:31,628.628 INFO    ] 2026-06-27 14:15:31
[2026-06-27 14:15:31,823.823 INFO    ] 2026-06-27 14:15:31
[2026-06-27 14:15:31,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:15:32,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:15:32,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:15:32,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:15:32,363.363 INFO    ] time= 27/06/2026 14:15:32
[2026-06-27 14:15:32,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:15:32,371.371 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:15:32,441.441 INFO    ] No existing commands found in stream
[2026-06-27 14:15:37,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:15:37,453.453 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-27 14:15:41,432.432 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 14:15:41,433.433 INFO    ] Checking for system updates...
[2026-06-27 14:15:41,454.454 INFO    ] 200
[2026-06-27 14:15:41,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:15:41,488.488 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:15:41,489.489 INFO    ] No update needed
[2026-06-27 14:15:41,490.490 INFO    ] Checking for camera pi updates...
[2026-06-27 14:15:41,510.510 INFO    ] 200
[2026-06-27 14:15:41,512.512 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:15:41,535.535 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:15:41,577.577 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:15:41,579.579 INFO    ] No camera update needed
[2026-06-27 14:15:41,580.580 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:15:41,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:15:41,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:15:41,587.587 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:15:43,625.625 INFO    ] ================================================
[2026-06-27 14:15:43,641.641 INFO    ] Launching Daemon at Sat Jun 27 14:15:43 IST 2026
[2026-06-27 14:15:43,651.651 INFO    ] ================================================
[2026-06-27 14:15:44,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:15:44
[2026-06-27 14:15:44,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:15:44,454.454 INFO    ] Initializing speech engine...
[2026-06-27 14:15:44,458.458 INFO    ] 2026-06-27 14:15:44
[2026-06-27 14:15:44,677.677 INFO    ] 2026-06-27 14:15:44
[2026-06-27 14:15:44,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:15:44,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:15:45,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:15:45,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:15:45,187.187 INFO    ] time= 27/06/2026 14:15:45
[2026-06-27 14:15:45,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:15:45,213.213 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:15:45,310.310 INFO    ] No existing commands found in stream
[2026-06-27 14:15:50,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:15:50,319.319 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-27 14:15:51,927.927 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 14:15:51,929.929 INFO    ] Checking for system updates...
[2026-06-27 14:15:51,951.951 INFO    ] 200
[2026-06-27 14:15:51,952.952 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:15:51,984.984 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:15:51,985.985 INFO    ] No update needed
[2026-06-27 14:15:51,987.987 INFO    ] Checking for camera pi updates...
[2026-06-27 14:15:52,007.007 INFO    ] 200
[2026-06-27 14:15:52,008.008 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:15:52,035.035 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:15:52,086.086 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:15:52,087.087 INFO    ] No camera update needed
[2026-06-27 14:15:52,089.089 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:15:52,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:15:52,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:15:52,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:15:54,135.135 INFO    ] ================================================
[2026-06-27 14:15:54,150.150 INFO    ] Launching Daemon at Sat Jun 27 14:15:54 IST 2026
[2026-06-27 14:15:54,160.160 INFO    ] ================================================
[2026-06-27 14:15:54,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:15:54
[2026-06-27 14:15:54,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:15:54,956.956 INFO    ] Initializing speech engine...
[2026-06-27 14:15:54,961.961 INFO    ] 2026-06-27 14:15:54
[2026-06-27 14:15:55,165.165 INFO    ] 2026-06-27 14:15:55
[2026-06-27 14:15:55,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:15:55,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:15:55,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:15:55,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:15:55,579.579 INFO    ] time= 27/06/2026 14:15:55
[2026-06-27 14:15:55,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:15:55,634.634 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:15:55,739.739 INFO    ] No existing commands found in stream
[2026-06-27 14:16:00,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:16:00,762.762 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-27 14:16:03,073.073 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 14:16:03,074.074 INFO    ] Checking for system updates...
[2026-06-27 14:16:03,096.096 INFO    ] 200
[2026-06-27 14:16:03,098.098 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:16:03,128.128 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:16:03,129.129 INFO    ] No update needed
[2026-06-27 14:16:03,131.131 INFO    ] Checking for camera pi updates...
[2026-06-27 14:16:03,150.150 INFO    ] 200
[2026-06-27 14:16:03,152.152 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:16:03,176.176 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:16:03,225.225 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:16:03,228.228 INFO    ] No camera update needed
[2026-06-27 14:16:03,230.230 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:16:03,232.232 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:16:03,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:16:03,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:16:05,284.284 INFO    ] ================================================
[2026-06-27 14:16:05,300.300 INFO    ] Launching Daemon at Sat Jun 27 14:16:05 IST 2026
[2026-06-27 14:16:05,316.316 INFO    ] ================================================
[2026-06-27 14:16:05,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:16:05
[2026-06-27 14:16:06,043.043 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:16:06,193.193 INFO    ] Initializing speech engine...
[2026-06-27 14:16:06,199.199 INFO    ] 2026-06-27 14:16:06
[2026-06-27 14:16:06,409.409 INFO    ] 2026-06-27 14:16:06
[2026-06-27 14:16:06,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:16:06,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:16:06,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:16:06,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:16:06,855.855 INFO    ] time= 27/06/2026 14:16:06
[2026-06-27 14:16:06,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:16:06,862.862 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:16:06,930.930 INFO    ] No existing commands found in stream
[2026-06-27 14:16:11,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:16:11,942.942 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-27 14:16:12,843.843 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:16:12,845.845 INFO    ] Checking for system updates...
[2026-06-27 14:16:12,867.867 INFO    ] 200
[2026-06-27 14:16:12,868.868 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:16:12,899.899 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:16:12,901.901 INFO    ] No update needed
[2026-06-27 14:16:12,902.902 INFO    ] Checking for camera pi updates...
[2026-06-27 14:16:12,922.922 INFO    ] 200
[2026-06-27 14:16:12,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:16:12,949.949 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:16:12,994.994 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:16:12,996.996 INFO    ] No camera update needed
[2026-06-27 14:16:12,999.999 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:16:13,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:16:13,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:16:13,007.007 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:16:15,047.047 INFO    ] ================================================
[2026-06-27 14:16:15,063.063 INFO    ] Launching Daemon at Sat Jun 27 14:16:15 IST 2026
[2026-06-27 14:16:15,073.073 INFO    ] ================================================
[2026-06-27 14:16:15,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:16:15
[2026-06-27 14:16:15,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:16:15,856.856 INFO    ] Initializing speech engine...
[2026-06-27 14:16:15,864.864 INFO    ] 2026-06-27 14:16:15
[2026-06-27 14:16:16,077.077 INFO    ] 2026-06-27 14:16:16
[2026-06-27 14:16:16,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:16:16,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:16:16,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:16:16,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:16:16,508.508 INFO    ] time= 27/06/2026 14:16:16
[2026-06-27 14:16:16,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:16:16,535.535 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:16:16,627.627 INFO    ] No existing commands found in stream
[2026-06-27 14:16:21,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:16:21,638.638 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-27 14:16:25,228.228 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 14:16:25,229.229 INFO    ] Checking for system updates...
[2026-06-27 14:16:25,250.250 INFO    ] 200
[2026-06-27 14:16:25,251.251 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:16:25,281.281 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:16:25,283.283 INFO    ] No update needed
[2026-06-27 14:16:25,284.284 INFO    ] Checking for camera pi updates...
[2026-06-27 14:16:25,305.305 INFO    ] 200
[2026-06-27 14:16:25,306.306 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:16:25,330.330 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:16:25,374.374 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:16:25,376.376 INFO    ] No camera update needed
[2026-06-27 14:16:25,378.378 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:16:25,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:16:25,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:16:25,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:16:27,424.424 INFO    ] ================================================
[2026-06-27 14:16:27,439.439 INFO    ] Launching Daemon at Sat Jun 27 14:16:27 IST 2026
[2026-06-27 14:16:27,453.453 INFO    ] ================================================
[2026-06-27 14:16:27,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:16:27
[2026-06-27 14:16:28,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:16:28,272.272 INFO    ] Initializing speech engine...
[2026-06-27 14:16:28,277.277 INFO    ] 2026-06-27 14:16:28
[2026-06-27 14:16:28,485.485 INFO    ] 2026-06-27 14:16:28
[2026-06-27 14:16:28,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:16:28,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:16:28,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:16:29,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:16:29,046.046 INFO    ] time= 27/06/2026 14:16:29
[2026-06-27 14:16:29,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:16:29,050.050 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:16:29,144.144 INFO    ] No existing commands found in stream
[2026-06-27 14:16:34,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:16:34,157.157 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-27 14:16:36,175.175 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 14:16:36,177.177 INFO    ] Checking for system updates...
[2026-06-27 14:16:36,199.199 INFO    ] 200
[2026-06-27 14:16:36,200.200 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:16:36,231.231 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:16:36,232.232 INFO    ] No update needed
[2026-06-27 14:16:36,234.234 INFO    ] Checking for camera pi updates...
[2026-06-27 14:16:36,254.254 INFO    ] 200
[2026-06-27 14:16:36,256.256 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:16:36,279.279 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:16:36,405.405 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:16:36,407.407 INFO    ] No camera update needed
[2026-06-27 14:16:36,408.408 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:16:36,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:16:36,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:16:36,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:16:38,454.454 INFO    ] ================================================
[2026-06-27 14:16:38,469.469 INFO    ] Launching Daemon at Sat Jun 27 14:16:38 IST 2026
[2026-06-27 14:16:38,480.480 INFO    ] ================================================
[2026-06-27 14:16:38,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:16:38
[2026-06-27 14:16:39,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:16:39,341.341 INFO    ] Initializing speech engine...
[2026-06-27 14:16:39,347.347 INFO    ] 2026-06-27 14:16:39
[2026-06-27 14:16:39,556.556 INFO    ] 2026-06-27 14:16:39
[2026-06-27 14:16:39,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:16:39,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:16:39,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:16:39,976.976 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:16:40,000.000 INFO    ] time= 27/06/2026 14:16:39
[2026-06-27 14:16:40,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:16:40,007.007 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:16:40,098.098 INFO    ] No existing commands found in stream
[2026-06-27 14:16:45,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:16:45,117.117 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-27 14:16:47,673.673 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:16:47,675.675 INFO    ] Checking for system updates...
[2026-06-27 14:16:47,696.696 INFO    ] 200
[2026-06-27 14:16:47,697.697 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:16:47,728.728 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:16:47,730.730 INFO    ] No update needed
[2026-06-27 14:16:47,731.731 INFO    ] Checking for camera pi updates...
[2026-06-27 14:16:47,753.753 INFO    ] 200
[2026-06-27 14:16:47,755.755 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:16:47,779.779 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:16:47,822.822 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:16:47,823.823 INFO    ] No camera update needed
[2026-06-27 14:16:47,825.825 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:16:47,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:16:47,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:16:47,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:16:49,873.873 INFO    ] ================================================
[2026-06-27 14:16:49,888.888 INFO    ] Launching Daemon at Sat Jun 27 14:16:49 IST 2026
[2026-06-27 14:16:49,903.903 INFO    ] ================================================
[2026-06-27 14:16:50,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:16:50
[2026-06-27 14:16:50,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:16:50,778.778 INFO    ] Initializing speech engine...
[2026-06-27 14:16:50,782.782 INFO    ] 2026-06-27 14:16:50
[2026-06-27 14:16:50,990.990 INFO    ] 2026-06-27 14:16:50
[2026-06-27 14:16:51,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:16:51,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:16:51,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:16:51,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:16:51,503.503 INFO    ] time= 27/06/2026 14:16:51
[2026-06-27 14:16:51,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:16:51,554.554 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:16:51,663.663 INFO    ] No existing commands found in stream
[2026-06-27 14:16:56,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:16:56,677.677 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-27 14:16:59,773.773 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 14:16:59,775.775 INFO    ] Checking for system updates...
[2026-06-27 14:16:59,796.796 INFO    ] 200
[2026-06-27 14:16:59,798.798 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:16:59,831.831 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:16:59,832.832 INFO    ] No update needed
[2026-06-27 14:16:59,834.834 INFO    ] Checking for camera pi updates...
[2026-06-27 14:16:59,853.853 INFO    ] 200
[2026-06-27 14:16:59,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:16:59,880.880 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:16:59,906.906 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:16:59,907.907 INFO    ] No camera update needed
[2026-06-27 14:16:59,908.908 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:16:59,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:16:59,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:16:59,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:17:01,961.961 INFO    ] ================================================
[2026-06-27 14:17:02,982.982 INFO    ] Launching Daemon at Sat Jun 27 14:17:01 IST 2026
[2026-06-27 14:17:02,018.018 INFO    ] ================================================
[2026-06-27 14:17:02,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:17:02
[2026-06-27 14:17:02,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:17:03,006.006 INFO    ] Initializing speech engine...
[2026-06-27 14:17:03,013.013 INFO    ] 2026-06-27 14:17:03
[2026-06-27 14:17:03,243.243 INFO    ] 2026-06-27 14:17:03
[2026-06-27 14:17:03,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:17:03,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:17:03,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:17:03,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:17:03,675.675 INFO    ] time= 27/06/2026 14:17:03
[2026-06-27 14:17:03,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:17:03,720.720 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:17:03,822.822 INFO    ] No existing commands found in stream
[2026-06-27 14:17:08,831.831 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:17:08,834.834 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-27 14:17:09,682.682 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:17:09,683.683 INFO    ] Checking for system updates...
[2026-06-27 14:17:09,705.705 INFO    ] 200
[2026-06-27 14:17:09,706.706 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:17:09,738.738 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:17:09,740.740 INFO    ] No update needed
[2026-06-27 14:17:09,741.741 INFO    ] Checking for camera pi updates...
[2026-06-27 14:17:09,761.761 INFO    ] 200
[2026-06-27 14:17:09,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:17:09,786.786 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:17:09,830.830 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:17:09,832.832 INFO    ] No camera update needed
[2026-06-27 14:17:09,833.833 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:17:09,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:17:09,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:17:09,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:17:11,879.879 INFO    ] ================================================
[2026-06-27 14:17:11,894.894 INFO    ] Launching Daemon at Sat Jun 27 14:17:11 IST 2026
[2026-06-27 14:17:11,905.905 INFO    ] ================================================
[2026-06-27 14:17:12,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:17:12
[2026-06-27 14:17:12,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:17:12,760.760 INFO    ] Initializing speech engine...
[2026-06-27 14:17:12,769.769 INFO    ] 2026-06-27 14:17:12
[2026-06-27 14:17:12,994.994 INFO    ] 2026-06-27 14:17:12
[2026-06-27 14:17:13,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:17:13,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:17:13,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:17:13,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:17:13,473.473 INFO    ] time= 27/06/2026 14:17:13
[2026-06-27 14:17:13,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:17:13,476.476 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:17:13,547.547 INFO    ] No existing commands found in stream
[2026-06-27 14:17:18,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:17:18,561.561 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-27 14:17:21,467.467 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 14:17:21,469.469 INFO    ] Checking for system updates...
[2026-06-27 14:17:21,489.489 INFO    ] 200
[2026-06-27 14:17:21,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:17:21,521.521 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:17:21,522.522 INFO    ] No update needed
[2026-06-27 14:17:21,524.524 INFO    ] Checking for camera pi updates...
[2026-06-27 14:17:21,544.544 INFO    ] 200
[2026-06-27 14:17:21,545.545 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:17:21,571.571 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:17:21,612.612 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:17:21,614.614 INFO    ] No camera update needed
[2026-06-27 14:17:21,615.615 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:17:21,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:17:21,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:17:21,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:17:23,662.662 INFO    ] ================================================
[2026-06-27 14:17:23,677.677 INFO    ] Launching Daemon at Sat Jun 27 14:17:23 IST 2026
[2026-06-27 14:17:23,687.687 INFO    ] ================================================
[2026-06-27 14:17:24,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:17:24
[2026-06-27 14:17:24,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:17:24,508.508 INFO    ] Initializing speech engine...
[2026-06-27 14:17:24,518.518 INFO    ] 2026-06-27 14:17:24
[2026-06-27 14:17:24,723.723 INFO    ] 2026-06-27 14:17:24
[2026-06-27 14:17:24,751.751 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:17:24,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:17:24,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:17:25,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:17:25,168.168 INFO    ] time= 27/06/2026 14:17:25
[2026-06-27 14:17:25,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:17:25,180.180 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:17:25,247.247 INFO    ] No existing commands found in stream
[2026-06-27 14:17:30,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:17:30,258.258 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-27 14:17:34,406.406 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:17:34,407.407 INFO    ] Checking for system updates...
[2026-06-27 14:17:34,428.428 INFO    ] 200
[2026-06-27 14:17:34,430.430 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:17:34,463.463 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:17:34,464.464 INFO    ] No update needed
[2026-06-27 14:17:34,466.466 INFO    ] Checking for camera pi updates...
[2026-06-27 14:17:34,486.486 INFO    ] 200
[2026-06-27 14:17:34,488.488 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:17:34,512.512 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:17:34,542.542 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:17:34,544.544 INFO    ] No camera update needed
[2026-06-27 14:17:34,545.545 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:17:34,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:17:34,549.549 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:17:34,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:17:36,593.593 INFO    ] ================================================
[2026-06-27 14:17:36,608.608 INFO    ] Launching Daemon at Sat Jun 27 14:17:36 IST 2026
[2026-06-27 14:17:36,619.619 INFO    ] ================================================
[2026-06-27 14:17:36,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:17:36
[2026-06-27 14:17:37,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:17:37,497.497 INFO    ] Initializing speech engine...
[2026-06-27 14:17:37,501.501 INFO    ] 2026-06-27 14:17:37
[2026-06-27 14:17:37,708.708 INFO    ] 2026-06-27 14:17:37
[2026-06-27 14:17:37,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:17:37,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:17:37,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:17:38,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:17:38,153.153 INFO    ] time= 27/06/2026 14:17:38
[2026-06-27 14:17:38,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:17:38,161.161 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:17:38,252.252 INFO    ] No existing commands found in stream
[2026-06-27 14:17:43,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:17:43,266.266 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-27 14:17:44,389.389 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 14:17:44,391.391 INFO    ] Checking for system updates...
[2026-06-27 14:17:44,412.412 INFO    ] 200
[2026-06-27 14:17:44,414.414 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:17:44,446.446 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:17:44,448.448 INFO    ] No update needed
[2026-06-27 14:17:44,449.449 INFO    ] Checking for camera pi updates...
[2026-06-27 14:17:44,469.469 INFO    ] 200
[2026-06-27 14:17:44,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:17:44,496.496 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:17:44,544.544 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:17:44,546.546 INFO    ] No camera update needed
[2026-06-27 14:17:44,547.547 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:17:44,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:17:44,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:17:44,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:17:46,599.599 INFO    ] ================================================
[2026-06-27 14:17:46,614.614 INFO    ] Launching Daemon at Sat Jun 27 14:17:46 IST 2026
[2026-06-27 14:17:46,625.625 INFO    ] ================================================
[2026-06-27 14:17:47,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:17:46
[2026-06-27 14:17:47,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:17:47,495.495 INFO    ] Initializing speech engine...
[2026-06-27 14:17:47,500.500 INFO    ] 2026-06-27 14:17:47
[2026-06-27 14:17:47,708.708 INFO    ] 2026-06-27 14:17:47
[2026-06-27 14:17:47,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:17:47,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:17:48,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:17:48,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:17:48,165.165 INFO    ] time= 27/06/2026 14:17:48
[2026-06-27 14:17:48,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:17:48,169.169 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:17:48,237.237 INFO    ] No existing commands found in stream
[2026-06-27 14:17:53,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:17:53,273.273 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-27 14:17:55,599.599 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 14:17:55,600.600 INFO    ] Checking for system updates...
[2026-06-27 14:17:55,622.622 INFO    ] 200
[2026-06-27 14:17:55,623.623 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:17:55,654.654 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:17:55,655.655 INFO    ] No update needed
[2026-06-27 14:17:55,657.657 INFO    ] Checking for camera pi updates...
[2026-06-27 14:17:55,677.677 INFO    ] 200
[2026-06-27 14:17:55,678.678 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:17:55,705.705 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:17:55,734.734 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:17:55,736.736 INFO    ] No camera update needed
[2026-06-27 14:17:55,737.737 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:17:55,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:17:55,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:17:55,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:17:57,784.784 INFO    ] ================================================
[2026-06-27 14:17:57,799.799 INFO    ] Launching Daemon at Sat Jun 27 14:17:57 IST 2026
[2026-06-27 14:17:57,809.809 INFO    ] ================================================
[2026-06-27 14:17:58,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:17:58
[2026-06-27 14:17:58,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:17:58,641.641 INFO    ] Initializing speech engine...
[2026-06-27 14:17:58,643.643 INFO    ] 2026-06-27 14:17:58
[2026-06-27 14:17:58,848.848 INFO    ] 2026-06-27 14:17:58
[2026-06-27 14:17:58,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:17:59,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:17:59,086.086 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:17:59,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:17:59,303.303 INFO    ] time= 27/06/2026 14:17:59
[2026-06-27 14:17:59,309.309 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:17:59,310.310 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:17:59,401.401 INFO    ] No existing commands found in stream
[2026-06-27 14:18:04,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:18:04,418.418 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-27 14:18:05,308.308 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:18:05,310.310 INFO    ] Checking for system updates...
[2026-06-27 14:18:05,330.330 INFO    ] 200
[2026-06-27 14:18:05,332.332 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:18:05,363.363 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:18:05,364.364 INFO    ] No update needed
[2026-06-27 14:18:05,366.366 INFO    ] Checking for camera pi updates...
[2026-06-27 14:18:05,385.385 INFO    ] 200
[2026-06-27 14:18:05,387.387 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:18:05,411.411 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:18:05,459.459 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:18:05,461.461 INFO    ] No camera update needed
[2026-06-27 14:18:05,464.464 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:18:05,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:18:05,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:18:05,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:18:07,519.519 INFO    ] ================================================
[2026-06-27 14:18:07,534.534 INFO    ] Launching Daemon at Sat Jun 27 14:18:07 IST 2026
[2026-06-27 14:18:07,545.545 INFO    ] ================================================
[2026-06-27 14:18:07,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:18:07
[2026-06-27 14:18:08,261.261 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:18:08,402.402 INFO    ] Initializing speech engine...
[2026-06-27 14:18:08,410.410 INFO    ] 2026-06-27 14:18:08
[2026-06-27 14:18:08,629.629 INFO    ] 2026-06-27 14:18:08
[2026-06-27 14:18:08,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:18:08,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:18:08,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:18:09,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:18:09,079.079 INFO    ] time= 27/06/2026 14:18:09
[2026-06-27 14:18:09,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:18:09,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:18:09,179.179 INFO    ] No existing commands found in stream
[2026-06-27 14:18:14,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:18:14,197.197 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-27 14:18:16,429.429 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:18:16,430.430 INFO    ] Checking for system updates...
[2026-06-27 14:18:16,451.451 INFO    ] 200
[2026-06-27 14:18:16,453.453 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:18:16,484.484 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:18:16,486.486 INFO    ] No update needed
[2026-06-27 14:18:16,488.488 INFO    ] Checking for camera pi updates...
[2026-06-27 14:18:16,508.508 INFO    ] 200
[2026-06-27 14:18:16,509.509 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:18:16,533.533 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:18:16,579.579 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:18:16,581.581 INFO    ] No camera update needed
[2026-06-27 14:18:16,582.582 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:18:16,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:18:16,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:18:16,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:18:18,629.629 INFO    ] ================================================
[2026-06-27 14:18:18,644.644 INFO    ] Launching Daemon at Sat Jun 27 14:18:18 IST 2026
[2026-06-27 14:18:18,655.655 INFO    ] ================================================
[2026-06-27 14:18:19,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:18:19
[2026-06-27 14:18:19,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:18:19,473.473 INFO    ] Initializing speech engine...
[2026-06-27 14:18:19,478.478 INFO    ] 2026-06-27 14:18:19
[2026-06-27 14:18:19,686.686 INFO    ] 2026-06-27 14:18:19
[2026-06-27 14:18:19,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:18:19,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:18:19,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:18:20,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:18:20,153.153 INFO    ] time= 27/06/2026 14:18:20
[2026-06-27 14:18:20,178.178 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:18:20,189.189 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:18:20,292.292 INFO    ] No existing commands found in stream
[2026-06-27 14:18:25,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:18:25,303.303 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-27 14:18:27,494.494 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:18:27,495.495 INFO    ] Checking for system updates...
[2026-06-27 14:18:27,516.516 INFO    ] 200
[2026-06-27 14:18:27,518.518 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:18:27,551.551 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:18:27,552.552 INFO    ] No update needed
[2026-06-27 14:18:27,554.554 INFO    ] Checking for camera pi updates...
[2026-06-27 14:18:27,577.577 INFO    ] 200
[2026-06-27 14:18:27,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:18:27,602.602 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:18:27,644.644 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:18:27,646.646 INFO    ] No camera update needed
[2026-06-27 14:18:27,647.647 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:18:27,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:18:27,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:18:27,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:18:29,694.694 INFO    ] ================================================
[2026-06-27 14:18:29,709.709 INFO    ] Launching Daemon at Sat Jun 27 14:18:29 IST 2026
[2026-06-27 14:18:29,720.720 INFO    ] ================================================
[2026-06-27 14:18:30,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:18:30
[2026-06-27 14:18:30,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:18:30,519.519 INFO    ] Initializing speech engine...
[2026-06-27 14:18:30,524.524 INFO    ] 2026-06-27 14:18:30
[2026-06-27 14:18:30,730.730 INFO    ] 2026-06-27 14:18:30
[2026-06-27 14:18:30,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:18:30,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:18:30,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:18:31,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:18:31,173.173 INFO    ] time= 27/06/2026 14:18:31
[2026-06-27 14:18:31,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:18:31,180.180 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:18:31,248.248 INFO    ] No existing commands found in stream
[2026-06-27 14:18:36,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:18:36,265.265 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-27 14:18:36,721.721 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 14:18:36,722.722 INFO    ] Checking for system updates...
[2026-06-27 14:18:36,743.743 INFO    ] 200
[2026-06-27 14:18:36,744.744 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:18:36,778.778 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:18:36,779.779 INFO    ] No update needed
[2026-06-27 14:18:36,780.780 INFO    ] Checking for camera pi updates...
[2026-06-27 14:18:36,805.805 INFO    ] 200
[2026-06-27 14:18:36,806.806 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:18:36,833.833 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:18:36,874.874 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:18:36,875.875 INFO    ] No camera update needed
[2026-06-27 14:18:36,877.877 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:18:36,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:18:36,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:18:36,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:18:38,924.924 INFO    ] ================================================
[2026-06-27 14:18:38,939.939 INFO    ] Launching Daemon at Sat Jun 27 14:18:38 IST 2026
[2026-06-27 14:18:38,950.950 INFO    ] ================================================
[2026-06-27 14:18:39,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:18:39
[2026-06-27 14:18:39,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:18:39,743.743 INFO    ] Initializing speech engine...
[2026-06-27 14:18:39,748.748 INFO    ] 2026-06-27 14:18:39
[2026-06-27 14:18:39,952.952 INFO    ] 2026-06-27 14:18:39
[2026-06-27 14:18:39,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:18:40,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:18:40,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:18:40,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:18:40,396.396 INFO    ] time= 27/06/2026 14:18:40
[2026-06-27 14:18:40,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:18:40,404.404 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:18:40,471.471 INFO    ] No existing commands found in stream
[2026-06-27 14:18:45,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:18:45,483.483 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-27 14:18:46,004.004 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 14:18:46,006.006 INFO    ] Checking for system updates...
[2026-06-27 14:18:46,026.026 INFO    ] 200
[2026-06-27 14:18:46,028.028 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:18:46,059.059 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:18:46,060.060 INFO    ] No update needed
[2026-06-27 14:18:46,061.061 INFO    ] Checking for camera pi updates...
[2026-06-27 14:18:46,081.081 INFO    ] 200
[2026-06-27 14:18:46,083.083 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:18:46,106.106 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:18:46,246.246 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:18:46,248.248 INFO    ] No camera update needed
[2026-06-27 14:18:46,249.249 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:18:46,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:18:46,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:18:46,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:18:48,296.296 INFO    ] ================================================
[2026-06-27 14:18:48,311.311 INFO    ] Launching Daemon at Sat Jun 27 14:18:48 IST 2026
[2026-06-27 14:18:48,322.322 INFO    ] ================================================
[2026-06-27 14:18:48,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:18:48
[2026-06-27 14:18:49,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:18:49,174.174 INFO    ] Initializing speech engine...
[2026-06-27 14:18:49,179.179 INFO    ] 2026-06-27 14:18:49
[2026-06-27 14:18:49,390.390 INFO    ] 2026-06-27 14:18:49
[2026-06-27 14:18:49,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:18:49,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:18:49,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:18:49,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:18:49,835.835 INFO    ] time= 27/06/2026 14:18:49
[2026-06-27 14:18:49,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:18:49,839.839 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:18:49,931.931 INFO    ] No existing commands found in stream
[2026-06-27 14:18:54,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:18:54,959.959 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-27 14:18:56,447.447 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:18:56,449.449 INFO    ] Checking for system updates...
[2026-06-27 14:18:56,471.471 INFO    ] 200
[2026-06-27 14:18:56,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:18:56,503.503 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:18:56,504.504 INFO    ] No update needed
[2026-06-27 14:18:56,506.506 INFO    ] Checking for camera pi updates...
[2026-06-27 14:18:56,526.526 INFO    ] 200
[2026-06-27 14:18:56,527.527 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:18:56,550.550 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:18:56,597.597 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:18:56,598.598 INFO    ] No camera update needed
[2026-06-27 14:18:56,599.599 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:18:56,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:18:56,603.603 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:18:56,606.606 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:18:58,645.645 INFO    ] ================================================
[2026-06-27 14:18:58,660.660 INFO    ] Launching Daemon at Sat Jun 27 14:18:58 IST 2026
[2026-06-27 14:18:58,670.670 INFO    ] ================================================
[2026-06-27 14:18:59,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:18:59
[2026-06-27 14:18:59,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:18:59,457.457 INFO    ] Initializing speech engine...
[2026-06-27 14:18:59,465.465 INFO    ] 2026-06-27 14:18:59
[2026-06-27 14:18:59,679.679 INFO    ] 2026-06-27 14:18:59
[2026-06-27 14:18:59,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:18:59,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:18:59,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:19:00,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:19:00,097.097 INFO    ] time= 27/06/2026 14:19:00
[2026-06-27 14:19:00,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:19:00,131.131 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:19:00,198.198 INFO    ] No existing commands found in stream
[2026-06-27 14:19:05,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:19:05,210.210 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-27 14:19:07,254.254 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:19:07,256.256 INFO    ] Checking for system updates...
[2026-06-27 14:19:07,277.277 INFO    ] 200
[2026-06-27 14:19:07,278.278 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:19:07,308.308 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:19:07,310.310 INFO    ] No update needed
[2026-06-27 14:19:07,311.311 INFO    ] Checking for camera pi updates...
[2026-06-27 14:19:07,333.333 INFO    ] 200
[2026-06-27 14:19:07,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:19:07,358.358 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:19:07,390.390 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:19:07,391.391 INFO    ] No camera update needed
[2026-06-27 14:19:07,393.393 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:19:07,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:19:07,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:19:07,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:19:09,438.438 INFO    ] ================================================
[2026-06-27 14:19:09,453.453 INFO    ] Launching Daemon at Sat Jun 27 14:19:09 IST 2026
[2026-06-27 14:19:09,464.464 INFO    ] ================================================
[2026-06-27 14:19:09,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:19:09
[2026-06-27 14:19:10,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:19:10,329.329 INFO    ] Initializing speech engine...
[2026-06-27 14:19:10,335.335 INFO    ] 2026-06-27 14:19:10
[2026-06-27 14:19:10,541.541 INFO    ] 2026-06-27 14:19:10
[2026-06-27 14:19:10,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:19:10,867.867 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:19:10,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:19:11,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:19:11,063.063 INFO    ] time= 27/06/2026 14:19:11
[2026-06-27 14:19:11,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:19:11,090.090 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:19:11,209.209 INFO    ] No existing commands found in stream
[2026-06-27 14:19:16,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:19:16,225.225 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-27 14:19:19,474.474 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 14:19:19,476.476 INFO    ] Checking for system updates...
[2026-06-27 14:19:19,497.497 INFO    ] 200
[2026-06-27 14:19:19,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:19:19,531.531 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:19:19,532.532 INFO    ] No update needed
[2026-06-27 14:19:19,534.534 INFO    ] Checking for camera pi updates...
[2026-06-27 14:19:19,555.555 INFO    ] 200
[2026-06-27 14:19:19,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:19:19,580.580 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:19:19,615.615 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:19:19,617.617 INFO    ] No camera update needed
[2026-06-27 14:19:19,618.618 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:19:19,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:19:19,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:19:19,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:19:21,665.665 INFO    ] ================================================
[2026-06-27 14:19:21,680.680 INFO    ] Launching Daemon at Sat Jun 27 14:19:21 IST 2026
[2026-06-27 14:19:21,690.690 INFO    ] ================================================
[2026-06-27 14:19:22,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:19:22
[2026-06-27 14:19:22,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:19:22,501.501 INFO    ] Initializing speech engine...
[2026-06-27 14:19:22,512.512 INFO    ] 2026-06-27 14:19:22
[2026-06-27 14:19:22,726.726 INFO    ] 2026-06-27 14:19:22
[2026-06-27 14:19:22,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:19:22,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:19:22,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:19:23,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:19:23,196.196 INFO    ] time= 27/06/2026 14:19:23
[2026-06-27 14:19:23,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:19:23,204.204 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:19:23,276.276 INFO    ] No existing commands found in stream
[2026-06-27 14:19:28,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:19:28,293.293 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-27 14:19:28,869.869 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:19:28,870.870 INFO    ] Checking for system updates...
[2026-06-27 14:19:28,891.891 INFO    ] 200
[2026-06-27 14:19:28,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:19:28,923.923 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:19:28,925.925 INFO    ] No update needed
[2026-06-27 14:19:28,926.926 INFO    ] Checking for camera pi updates...
[2026-06-27 14:19:28,946.946 INFO    ] 200
[2026-06-27 14:19:28,947.947 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:19:28,970.970 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:19:29,016.016 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:19:29,017.017 INFO    ] No camera update needed
[2026-06-27 14:19:29,018.018 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:19:29,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:19:29,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:19:29,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:19:31,068.068 INFO    ] ================================================
[2026-06-27 14:19:31,083.083 INFO    ] Launching Daemon at Sat Jun 27 14:19:31 IST 2026
[2026-06-27 14:19:31,094.094 INFO    ] ================================================
[2026-06-27 14:19:31,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:19:31
[2026-06-27 14:19:31,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:19:32,015.015 INFO    ] Initializing speech engine...
[2026-06-27 14:19:32,019.019 INFO    ] 2026-06-27 14:19:32
[2026-06-27 14:19:32,252.252 INFO    ] 2026-06-27 14:19:32
[2026-06-27 14:19:32,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:19:32,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:19:32,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:19:32,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:19:32,824.824 INFO    ] time= 27/06/2026 14:19:32
[2026-06-27 14:19:32,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:19:32,830.830 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:19:32,942.942 INFO    ] No existing commands found in stream
[2026-06-27 14:19:37,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:19:37,956.956 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-27 14:19:39,574.574 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 14:19:39,575.575 INFO    ] Checking for system updates...
[2026-06-27 14:19:39,597.597 INFO    ] 200
[2026-06-27 14:19:39,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:19:39,629.629 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:19:39,630.630 INFO    ] No update needed
[2026-06-27 14:19:39,632.632 INFO    ] Checking for camera pi updates...
[2026-06-27 14:19:39,653.653 INFO    ] 200
[2026-06-27 14:19:39,655.655 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:19:39,679.679 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:19:39,719.719 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:19:39,720.720 INFO    ] No camera update needed
[2026-06-27 14:19:39,721.721 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:19:39,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:19:39,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:19:39,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:19:41,770.770 INFO    ] ================================================
[2026-06-27 14:19:41,786.786 INFO    ] Launching Daemon at Sat Jun 27 14:19:41 IST 2026
[2026-06-27 14:19:41,797.797 INFO    ] ================================================
[2026-06-27 14:19:42,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:19:42
[2026-06-27 14:19:42,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:19:42,587.587 INFO    ] Initializing speech engine...
[2026-06-27 14:19:42,596.596 INFO    ] 2026-06-27 14:19:42
[2026-06-27 14:19:42,801.801 INFO    ] 2026-06-27 14:19:42
[2026-06-27 14:19:42,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:19:43,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:19:43,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:19:43,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:19:43,200.200 INFO    ] time= 27/06/2026 14:19:43
[2026-06-27 14:19:43,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:19:43,240.240 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:19:43,325.325 INFO    ] No existing commands found in stream
[2026-06-27 14:19:48,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:19:48,339.339 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-27 14:19:51,468.468 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:19:51,470.470 INFO    ] Checking for system updates...
[2026-06-27 14:19:51,492.492 INFO    ] 200
[2026-06-27 14:19:51,494.494 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:19:51,528.528 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:19:51,529.529 INFO    ] No update needed
[2026-06-27 14:19:51,530.530 INFO    ] Checking for camera pi updates...
[2026-06-27 14:19:51,550.550 INFO    ] 200
[2026-06-27 14:19:51,551.551 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:19:51,575.575 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:19:51,616.616 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:19:51,617.617 INFO    ] No camera update needed
[2026-06-27 14:19:51,619.619 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:19:51,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:19:51,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:19:51,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:19:53,664.664 INFO    ] ================================================
[2026-06-27 14:19:53,679.679 INFO    ] Launching Daemon at Sat Jun 27 14:19:53 IST 2026
[2026-06-27 14:19:53,689.689 INFO    ] ================================================
[2026-06-27 14:19:54,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:19:54
[2026-06-27 14:19:54,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:19:54,514.514 INFO    ] Initializing speech engine...
[2026-06-27 14:19:54,518.518 INFO    ] 2026-06-27 14:19:54
[2026-06-27 14:19:54,725.725 INFO    ] 2026-06-27 14:19:54
[2026-06-27 14:19:54,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:19:54,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:19:54,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:19:55,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:19:55,150.150 INFO    ] time= 27/06/2026 14:19:55
[2026-06-27 14:19:55,172.172 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:19:55,178.178 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:19:55,269.269 INFO    ] No existing commands found in stream
[2026-06-27 14:20:00,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:20:00,287.287 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-27 14:20:07,273.273 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 14:20:07,276.276 INFO    ] Checking for system updates...
[2026-06-27 14:20:07,312.312 INFO    ] 200
[2026-06-27 14:20:07,315.315 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:20:07,369.369 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:20:07,371.371 INFO    ] No update needed
[2026-06-27 14:20:07,374.374 INFO    ] Checking for camera pi updates...
[2026-06-27 14:20:07,408.408 INFO    ] 200
[2026-06-27 14:20:07,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:20:07,451.451 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:20:07,498.498 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:20:07,500.500 INFO    ] No camera update needed
[2026-06-27 14:20:07,502.502 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:20:07,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:20:07,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:20:07,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:20:09,556.556 INFO    ] ================================================
[2026-06-27 14:20:09,570.570 INFO    ] Launching Daemon at Sat Jun 27 14:20:09 IST 2026
[2026-06-27 14:20:09,581.581 INFO    ] ================================================
[2026-06-27 14:20:09,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:20:09
[2026-06-27 14:20:10,285.285 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:20:10,429.429 INFO    ] Initializing speech engine...
[2026-06-27 14:20:10,434.434 INFO    ] 2026-06-27 14:20:10
[2026-06-27 14:20:10,639.639 INFO    ] 2026-06-27 14:20:10
[2026-06-27 14:20:10,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:20:10,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:20:11,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:20:11,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:20:11,172.172 INFO    ] time= 27/06/2026 14:20:11
[2026-06-27 14:20:11,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:20:11,201.201 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:20:11,304.304 INFO    ] No existing commands found in stream
[2026-06-27 14:20:16,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:20:16,317.317 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-27 14:20:18,028.028 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:20:18,030.030 INFO    ] Checking for system updates...
[2026-06-27 14:20:18,051.051 INFO    ] 200
[2026-06-27 14:20:18,053.053 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:20:18,086.086 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:20:18,087.087 INFO    ] No update needed
[2026-06-27 14:20:18,088.088 INFO    ] Checking for camera pi updates...
[2026-06-27 14:20:18,108.108 INFO    ] 200
[2026-06-27 14:20:18,109.109 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:20:18,132.132 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:20:18,179.179 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:20:18,180.180 INFO    ] No camera update needed
[2026-06-27 14:20:18,181.181 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:20:18,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:20:18,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:20:18,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:20:20,229.229 INFO    ] ================================================
[2026-06-27 14:20:20,244.244 INFO    ] Launching Daemon at Sat Jun 27 14:20:20 IST 2026
[2026-06-27 14:20:20,255.255 INFO    ] ================================================
[2026-06-27 14:20:20,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:20:20
[2026-06-27 14:20:20,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:20:21,108.108 INFO    ] Initializing speech engine...
[2026-06-27 14:20:21,113.113 INFO    ] 2026-06-27 14:20:21
[2026-06-27 14:20:21,321.321 INFO    ] 2026-06-27 14:20:21
[2026-06-27 14:20:21,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:20:21,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:20:21,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:20:21,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:20:21,676.676 INFO    ] time= 27/06/2026 14:20:21
[2026-06-27 14:20:21,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:20:21,768.768 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:20:21,842.842 INFO    ] No existing commands found in stream
[2026-06-27 14:20:26,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:20:26,878.878 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-27 14:20:28,973.973 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:20:28,974.974 INFO    ] Checking for system updates...
[2026-06-27 14:20:28,995.995 INFO    ] 200
[2026-06-27 14:20:28,996.996 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:20:29,026.026 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:20:29,028.028 INFO    ] No update needed
[2026-06-27 14:20:29,029.029 INFO    ] Checking for camera pi updates...
[2026-06-27 14:20:29,048.048 INFO    ] 200
[2026-06-27 14:20:29,049.049 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:20:29,073.073 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:20:29,116.116 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:20:29,118.118 INFO    ] No camera update needed
[2026-06-27 14:20:29,119.119 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:20:29,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:20:29,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:20:29,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:20:31,165.165 INFO    ] ================================================
[2026-06-27 14:20:31,180.180 INFO    ] Launching Daemon at Sat Jun 27 14:20:31 IST 2026
[2026-06-27 14:20:31,190.190 INFO    ] ================================================
[2026-06-27 14:20:31,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:20:31
[2026-06-27 14:20:31,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:20:32,019.019 INFO    ] Initializing speech engine...
[2026-06-27 14:20:32,025.025 INFO    ] 2026-06-27 14:20:32
[2026-06-27 14:20:32,230.230 INFO    ] 2026-06-27 14:20:32
[2026-06-27 14:20:32,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:20:32,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:20:32,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:20:32,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:20:32,767.767 INFO    ] time= 27/06/2026 14:20:32
[2026-06-27 14:20:32,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:20:32,775.775 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:20:32,870.870 INFO    ] No existing commands found in stream
[2026-06-27 14:20:37,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:20:37,887.887 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-27 14:20:39,283.283 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:20:39,284.284 INFO    ] Checking for system updates...
[2026-06-27 14:20:39,305.305 INFO    ] 200
[2026-06-27 14:20:39,306.306 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:20:39,337.337 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:20:39,338.338 INFO    ] No update needed
[2026-06-27 14:20:39,339.339 INFO    ] Checking for camera pi updates...
[2026-06-27 14:20:39,361.361 INFO    ] 200
[2026-06-27 14:20:39,362.362 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:20:39,387.387 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:20:39,429.429 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:20:39,431.431 INFO    ] No camera update needed
[2026-06-27 14:20:39,432.432 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:20:39,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:20:39,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:20:39,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:20:41,478.478 INFO    ] ================================================
[2026-06-27 14:20:41,493.493 INFO    ] Launching Daemon at Sat Jun 27 14:20:41 IST 2026
[2026-06-27 14:20:41,503.503 INFO    ] ================================================
[2026-06-27 14:20:41,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:20:41
[2026-06-27 14:20:42,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:20:42,296.296 INFO    ] Initializing speech engine...
[2026-06-27 14:20:42,305.305 INFO    ] 2026-06-27 14:20:42
[2026-06-27 14:20:42,511.511 INFO    ] 2026-06-27 14:20:42
[2026-06-27 14:20:42,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:20:42,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:20:42,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:20:43,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:20:43,019.019 INFO    ] time= 27/06/2026 14:20:43
[2026-06-27 14:20:43,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:20:43,045.045 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:20:43,142.142 INFO    ] No existing commands found in stream
[2026-06-27 14:20:48,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:20:48,157.157 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-27 14:20:50,956.956 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:20:50,958.958 INFO    ] Checking for system updates...
[2026-06-27 14:20:50,979.979 INFO    ] 200
[2026-06-27 14:20:50,980.980 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:20:51,010.010 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:20:51,011.011 INFO    ] No update needed
[2026-06-27 14:20:51,013.013 INFO    ] Checking for camera pi updates...
[2026-06-27 14:20:51,032.032 INFO    ] 200
[2026-06-27 14:20:51,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:20:51,056.056 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:20:51,197.197 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:20:51,199.199 INFO    ] No camera update needed
[2026-06-27 14:20:51,200.200 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:20:51,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:20:51,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:20:51,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:20:53,249.249 INFO    ] ================================================
[2026-06-27 14:20:53,264.264 INFO    ] Launching Daemon at Sat Jun 27 14:20:53 IST 2026
[2026-06-27 14:20:53,275.275 INFO    ] ================================================
[2026-06-27 14:20:53,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:20:53
[2026-06-27 14:20:53,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:20:54,078.078 INFO    ] Initializing speech engine...
[2026-06-27 14:20:54,082.082 INFO    ] 2026-06-27 14:20:54
[2026-06-27 14:20:54,287.287 INFO    ] 2026-06-27 14:20:54
[2026-06-27 14:20:54,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:20:54,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:20:54,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:20:54,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:20:54,735.735 INFO    ] time= 27/06/2026 14:20:54
[2026-06-27 14:20:54,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:20:54,738.738 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:20:54,806.806 INFO    ] No existing commands found in stream
[2026-06-27 14:20:59,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:20:59,814.814 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-27 14:21:01,670.670 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:21:01,673.673 INFO    ] Checking for system updates...
[2026-06-27 14:21:01,707.707 INFO    ] 200
[2026-06-27 14:21:01,710.710 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:21:01,749.749 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:21:01,751.751 INFO    ] No update needed
[2026-06-27 14:21:01,754.754 INFO    ] Checking for camera pi updates...
[2026-06-27 14:21:01,782.782 INFO    ] 200
[2026-06-27 14:21:01,784.784 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:21:01,817.817 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:21:01,854.854 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:21:01,856.856 INFO    ] No camera update needed
[2026-06-27 14:21:01,857.857 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:21:01,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:21:01,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:21:01,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:21:03,901.901 INFO    ] ================================================
[2026-06-27 14:21:03,917.917 INFO    ] Launching Daemon at Sat Jun 27 14:21:03 IST 2026
[2026-06-27 14:21:03,928.928 INFO    ] ================================================
[2026-06-27 14:21:04,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:21:04
[2026-06-27 14:21:04,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:21:04,799.799 INFO    ] Initializing speech engine...
[2026-06-27 14:21:04,805.805 INFO    ] 2026-06-27 14:21:04
[2026-06-27 14:21:05,014.014 INFO    ] 2026-06-27 14:21:04
[2026-06-27 14:21:05,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:21:05,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:21:05,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:21:05,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:21:05,453.453 INFO    ] time= 27/06/2026 14:21:05
[2026-06-27 14:21:05,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:21:05,480.480 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:21:05,602.602 INFO    ] No existing commands found in stream
[2026-06-27 14:21:10,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:21:10,616.616 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-27 14:21:14,469.469 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:21:14,470.470 INFO    ] Checking for system updates...
[2026-06-27 14:21:14,491.491 INFO    ] 200
[2026-06-27 14:21:14,494.494 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:21:14,525.525 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:21:14,526.526 INFO    ] No update needed
[2026-06-27 14:21:14,528.528 INFO    ] Checking for camera pi updates...
[2026-06-27 14:21:14,547.547 INFO    ] 200
[2026-06-27 14:21:14,549.549 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:21:14,573.573 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:21:14,621.621 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:21:14,623.623 INFO    ] No camera update needed
[2026-06-27 14:21:14,624.624 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:21:14,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:21:14,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:21:14,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:21:16,674.674 INFO    ] ================================================
[2026-06-27 14:21:16,689.689 INFO    ] Launching Daemon at Sat Jun 27 14:21:16 IST 2026
[2026-06-27 14:21:16,700.700 INFO    ] ================================================
[2026-06-27 14:21:17,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:21:17
[2026-06-27 14:21:17,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:21:17,551.551 INFO    ] Initializing speech engine...
[2026-06-27 14:21:17,556.556 INFO    ] 2026-06-27 14:21:17
[2026-06-27 14:21:17,762.762 INFO    ] 2026-06-27 14:21:17
[2026-06-27 14:21:17,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:21:18,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:21:18,035.035 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:21:18,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:21:18,204.204 INFO    ] time= 27/06/2026 14:21:18
[2026-06-27 14:21:18,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:21:18,211.211 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:21:18,301.301 INFO    ] No existing commands found in stream
[2026-06-27 14:21:23,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:21:23,323.323 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-27 14:21:26,588.588 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 14:21:26,595.595 INFO    ] Checking for system updates...
[2026-06-27 14:21:26,622.622 INFO    ] 200
[2026-06-27 14:21:26,623.623 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:21:26,656.656 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:21:26,657.657 INFO    ] No update needed
[2026-06-27 14:21:26,658.658 INFO    ] Checking for camera pi updates...
[2026-06-27 14:21:26,678.678 INFO    ] 200
[2026-06-27 14:21:26,679.679 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:21:26,704.704 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:21:26,761.761 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:21:26,762.762 INFO    ] No camera update needed
[2026-06-27 14:21:26,764.764 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:21:26,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:21:26,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:21:26,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:21:28,809.809 INFO    ] ================================================
[2026-06-27 14:21:28,825.825 INFO    ] Launching Daemon at Sat Jun 27 14:21:28 IST 2026
[2026-06-27 14:21:28,836.836 INFO    ] ================================================
[2026-06-27 14:21:29,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:21:29
[2026-06-27 14:21:29,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:21:29,637.637 INFO    ] Initializing speech engine...
[2026-06-27 14:21:29,643.643 INFO    ] 2026-06-27 14:21:29
[2026-06-27 14:21:29,846.846 INFO    ] 2026-06-27 14:21:29
[2026-06-27 14:21:29,875.875 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:21:30,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:21:30,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:21:30,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:21:30,288.288 INFO    ] time= 27/06/2026 14:21:30
[2026-06-27 14:21:30,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:21:30,291.291 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:21:30,357.357 INFO    ] No existing commands found in stream
[2026-06-27 14:21:35,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:21:35,375.375 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-27 14:21:39,149.149 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:21:39,150.150 INFO    ] Checking for system updates...
[2026-06-27 14:21:39,172.172 INFO    ] 200
[2026-06-27 14:21:39,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:21:39,205.205 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:21:39,207.207 INFO    ] No update needed
[2026-06-27 14:21:39,208.208 INFO    ] Checking for camera pi updates...
[2026-06-27 14:21:39,227.227 INFO    ] 200
[2026-06-27 14:21:39,229.229 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:21:39,254.254 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:21:39,301.301 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:21:39,303.303 INFO    ] No camera update needed
[2026-06-27 14:21:39,304.304 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:21:39,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:21:39,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:21:39,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:21:41,352.352 INFO    ] ================================================
[2026-06-27 14:21:41,368.368 INFO    ] Launching Daemon at Sat Jun 27 14:21:41 IST 2026
[2026-06-27 14:21:41,379.379 INFO    ] ================================================
[2026-06-27 14:21:41,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:21:41
[2026-06-27 14:21:42,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:21:42,159.159 INFO    ] Initializing speech engine...
[2026-06-27 14:21:42,162.162 INFO    ] 2026-06-27 14:21:42
[2026-06-27 14:21:42,369.369 INFO    ] 2026-06-27 14:21:42
[2026-06-27 14:21:42,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:21:42,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:21:42,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:21:42,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:21:42,832.832 INFO    ] time= 27/06/2026 14:21:42
[2026-06-27 14:21:42,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:21:42,840.840 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:21:42,930.930 INFO    ] No existing commands found in stream
[2026-06-27 14:21:47,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:21:47,952.952 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-27 14:21:52,006.006 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:21:52,007.007 INFO    ] Checking for system updates...
[2026-06-27 14:21:52,028.028 INFO    ] 200
[2026-06-27 14:21:52,029.029 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:21:52,060.060 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:21:52,062.062 INFO    ] No update needed
[2026-06-27 14:21:52,063.063 INFO    ] Checking for camera pi updates...
[2026-06-27 14:21:52,083.083 INFO    ] 200
[2026-06-27 14:21:52,084.084 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:21:52,108.108 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:21:52,152.152 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:21:52,153.153 INFO    ] No camera update needed
[2026-06-27 14:21:52,155.155 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:21:52,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:21:52,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:21:52,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:21:54,201.201 INFO    ] ================================================
[2026-06-27 14:21:54,216.216 INFO    ] Launching Daemon at Sat Jun 27 14:21:54 IST 2026
[2026-06-27 14:21:54,228.228 INFO    ] ================================================
[2026-06-27 14:21:54,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:21:54
[2026-06-27 14:21:54,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:21:55,047.047 INFO    ] Initializing speech engine...
[2026-06-27 14:21:55,052.052 INFO    ] 2026-06-27 14:21:55
[2026-06-27 14:21:55,256.256 INFO    ] 2026-06-27 14:21:55
[2026-06-27 14:21:55,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:21:55,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:21:55,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:21:55,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:21:55,699.699 INFO    ] time= 27/06/2026 14:21:55
[2026-06-27 14:21:55,701.701 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:21:55,703.703 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:21:55,795.795 INFO    ] No existing commands found in stream
[2026-06-27 14:22:00,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:22:00,812.812 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-27 14:22:03,180.180 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 14:22:03,183.183 INFO    ] Checking for system updates...
[2026-06-27 14:22:03,220.220 INFO    ] 200
[2026-06-27 14:22:03,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:22:03,271.271 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:22:03,272.272 INFO    ] No update needed
[2026-06-27 14:22:03,273.273 INFO    ] Checking for camera pi updates...
[2026-06-27 14:22:03,297.297 INFO    ] 200
[2026-06-27 14:22:03,298.298 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:22:03,321.321 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:22:03,370.370 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:22:03,372.372 INFO    ] No camera update needed
[2026-06-27 14:22:03,373.373 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:22:03,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:22:03,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:22:03,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:22:05,420.420 INFO    ] ================================================
[2026-06-27 14:22:05,436.436 INFO    ] Launching Daemon at Sat Jun 27 14:22:05 IST 2026
[2026-06-27 14:22:05,448.448 INFO    ] ================================================
[2026-06-27 14:22:05,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:22:05
[2026-06-27 14:22:06,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:22:06,331.331 INFO    ] Initializing speech engine...
[2026-06-27 14:22:06,336.336 INFO    ] 2026-06-27 14:22:06
[2026-06-27 14:22:06,539.539 INFO    ] 2026-06-27 14:22:06
[2026-06-27 14:22:06,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:22:06,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:22:06,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:22:06,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:22:06,977.977 INFO    ] time= 27/06/2026 14:22:06
[2026-06-27 14:22:06,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:22:06,984.984 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:22:07,050.050 INFO    ] No existing commands found in stream
[2026-06-27 14:22:12,063.063 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:22:12,065.065 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-27 14:22:15,121.121 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:22:15,123.123 INFO    ] Checking for system updates...
[2026-06-27 14:22:15,145.145 INFO    ] 200
[2026-06-27 14:22:15,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:22:15,180.180 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:22:15,182.182 INFO    ] No update needed
[2026-06-27 14:22:15,183.183 INFO    ] Checking for camera pi updates...
[2026-06-27 14:22:15,203.203 INFO    ] 200
[2026-06-27 14:22:15,204.204 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:22:15,228.228 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:22:15,268.268 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:22:15,270.270 INFO    ] No camera update needed
[2026-06-27 14:22:15,271.271 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:22:15,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:22:15,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:22:15,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:22:17,317.317 INFO    ] ================================================
[2026-06-27 14:22:17,333.333 INFO    ] Launching Daemon at Sat Jun 27 14:22:17 IST 2026
[2026-06-27 14:22:17,347.347 INFO    ] ================================================
[2026-06-27 14:22:17,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:22:17
[2026-06-27 14:22:17,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:22:18,128.128 INFO    ] Initializing speech engine...
[2026-06-27 14:22:18,138.138 INFO    ] 2026-06-27 14:22:18
[2026-06-27 14:22:18,345.345 INFO    ] 2026-06-27 14:22:18
[2026-06-27 14:22:18,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:22:18,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:22:18,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:22:18,756.756 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:22:18,800.800 INFO    ] time= 27/06/2026 14:22:18
[2026-06-27 14:22:18,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:22:18,809.809 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:22:18,901.901 INFO    ] No existing commands found in stream
[2026-06-27 14:22:23,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:22:23,912.912 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-27 14:22:24,628.628 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:22:24,629.629 INFO    ] Checking for system updates...
[2026-06-27 14:22:24,650.650 INFO    ] 200
[2026-06-27 14:22:24,652.652 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:22:24,686.686 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:22:24,687.687 INFO    ] No update needed
[2026-06-27 14:22:24,688.688 INFO    ] Checking for camera pi updates...
[2026-06-27 14:22:24,708.708 INFO    ] 200
[2026-06-27 14:22:24,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:22:24,733.733 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:22:24,779.779 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:22:24,780.780 INFO    ] No camera update needed
[2026-06-27 14:22:24,782.782 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:22:24,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:22:24,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:22:24,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:22:26,832.832 INFO    ] ================================================
[2026-06-27 14:22:26,847.847 INFO    ] Launching Daemon at Sat Jun 27 14:22:26 IST 2026
[2026-06-27 14:22:26,858.858 INFO    ] ================================================
[2026-06-27 14:22:27,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:22:27
[2026-06-27 14:22:27,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:22:27,672.672 INFO    ] Initializing speech engine...
[2026-06-27 14:22:27,678.678 INFO    ] 2026-06-27 14:22:27
[2026-06-27 14:22:27,881.881 INFO    ] 2026-06-27 14:22:27
[2026-06-27 14:22:27,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:22:28,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:22:28,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:22:28,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:22:28,308.308 INFO    ] time= 27/06/2026 14:22:28
[2026-06-27 14:22:28,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:22:28,337.337 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:22:28,429.429 INFO    ] No existing commands found in stream
[2026-06-27 14:22:33,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:22:33,441.441 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-27 14:22:36,648.648 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:22:36,649.649 INFO    ] Checking for system updates...
[2026-06-27 14:22:36,670.670 INFO    ] 200
[2026-06-27 14:22:36,672.672 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:22:36,705.705 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:22:36,706.706 INFO    ] No update needed
[2026-06-27 14:22:36,707.707 INFO    ] Checking for camera pi updates...
[2026-06-27 14:22:36,728.728 INFO    ] 200
[2026-06-27 14:22:36,730.730 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:22:36,753.753 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:22:36,793.793 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:22:36,794.794 INFO    ] No camera update needed
[2026-06-27 14:22:36,796.796 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:22:36,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:22:36,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:22:36,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:22:38,842.842 INFO    ] ================================================
[2026-06-27 14:22:38,858.858 INFO    ] Launching Daemon at Sat Jun 27 14:22:38 IST 2026
[2026-06-27 14:22:38,871.871 INFO    ] ================================================
[2026-06-27 14:22:39,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:22:39
[2026-06-27 14:22:39,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:22:39,684.684 INFO    ] Initializing speech engine...
[2026-06-27 14:22:39,689.689 INFO    ] 2026-06-27 14:22:39
[2026-06-27 14:22:39,908.908 INFO    ] 2026-06-27 14:22:39
[2026-06-27 14:22:39,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:22:40,124.124 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:22:40,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:22:40,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:22:40,355.355 INFO    ] time= 27/06/2026 14:22:40
[2026-06-27 14:22:40,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:22:40,358.358 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:22:40,450.450 INFO    ] No existing commands found in stream
[2026-06-27 14:22:45,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:22:45,472.472 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-27 14:22:48,812.812 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 14:22:48,814.814 INFO    ] Checking for system updates...
[2026-06-27 14:22:48,836.836 INFO    ] 200
[2026-06-27 14:22:48,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:22:48,870.870 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:22:48,871.871 INFO    ] No update needed
[2026-06-27 14:22:48,873.873 INFO    ] Checking for camera pi updates...
[2026-06-27 14:22:48,895.895 INFO    ] 200
[2026-06-27 14:22:48,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:22:48,921.921 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:22:48,950.950 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:22:48,951.951 INFO    ] No camera update needed
[2026-06-27 14:22:48,953.953 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:22:48,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:22:48,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:22:48,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:22:51,001.001 INFO    ] ================================================
[2026-06-27 14:22:51,017.017 INFO    ] Launching Daemon at Sat Jun 27 14:22:51 IST 2026
[2026-06-27 14:22:51,028.028 INFO    ] ================================================
[2026-06-27 14:22:51,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:22:51
[2026-06-27 14:22:51,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:22:51,824.824 INFO    ] Initializing speech engine...
[2026-06-27 14:22:51,830.830 INFO    ] 2026-06-27 14:22:51
[2026-06-27 14:22:52,035.035 INFO    ] 2026-06-27 14:22:52
[2026-06-27 14:22:52,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:22:52,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:22:52,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:22:52,537.537 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:22:52,541.541 INFO    ] time= 27/06/2026 14:22:52
[2026-06-27 14:22:52,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:22:52,568.568 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:22:52,664.664 INFO    ] No existing commands found in stream
[2026-06-27 14:22:57,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:22:57,677.677 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-27 14:23:01,281.281 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:23:01,282.282 INFO    ] Checking for system updates...
[2026-06-27 14:23:01,304.304 INFO    ] 200
[2026-06-27 14:23:01,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:23:01,338.338 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:23:01,339.339 INFO    ] No update needed
[2026-06-27 14:23:01,341.341 INFO    ] Checking for camera pi updates...
[2026-06-27 14:23:01,360.360 INFO    ] 200
[2026-06-27 14:23:01,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:23:01,385.385 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:23:01,525.525 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:23:01,526.526 INFO    ] No camera update needed
[2026-06-27 14:23:01,527.527 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:23:01,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:23:01,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:23:01,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:23:03,569.569 INFO    ] ================================================
[2026-06-27 14:23:03,585.585 INFO    ] Launching Daemon at Sat Jun 27 14:23:03 IST 2026
[2026-06-27 14:23:03,595.595 INFO    ] ================================================
[2026-06-27 14:23:03,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:23:03
[2026-06-27 14:23:04,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:23:04,442.442 INFO    ] Initializing speech engine...
[2026-06-27 14:23:04,447.447 INFO    ] 2026-06-27 14:23:04
[2026-06-27 14:23:04,652.652 INFO    ] 2026-06-27 14:23:04
[2026-06-27 14:23:04,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:23:04,865.865 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:23:04,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:23:05,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:23:05,095.095 INFO    ] time= 27/06/2026 14:23:05
[2026-06-27 14:23:05,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:23:05,098.098 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:23:05,164.164 INFO    ] No existing commands found in stream
[2026-06-27 14:23:10,196.196 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:23:10,199.199 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-27 14:23:14,041.041 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:23:14,042.042 INFO    ] Checking for system updates...
[2026-06-27 14:23:14,064.064 INFO    ] 200
[2026-06-27 14:23:14,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:23:14,096.096 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:23:14,097.097 INFO    ] No update needed
[2026-06-27 14:23:14,098.098 INFO    ] Checking for camera pi updates...
[2026-06-27 14:23:14,118.118 INFO    ] 200
[2026-06-27 14:23:14,119.119 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:23:14,146.146 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:23:14,192.192 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:23:14,193.193 INFO    ] No camera update needed
[2026-06-27 14:23:14,195.195 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:23:14,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:23:14,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:23:14,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:23:16,239.239 INFO    ] ================================================
[2026-06-27 14:23:16,255.255 INFO    ] Launching Daemon at Sat Jun 27 14:23:16 IST 2026
[2026-06-27 14:23:16,265.265 INFO    ] ================================================
[2026-06-27 14:23:16,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:23:16
[2026-06-27 14:23:16,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:23:17,064.064 INFO    ] Initializing speech engine...
[2026-06-27 14:23:17,069.069 INFO    ] 2026-06-27 14:23:17
[2026-06-27 14:23:17,275.275 INFO    ] 2026-06-27 14:23:17
[2026-06-27 14:23:17,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:23:17,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:23:17,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:23:17,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:23:17,723.723 INFO    ] time= 27/06/2026 14:23:17
[2026-06-27 14:23:17,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:23:17,726.726 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:23:17,844.844 INFO    ] No existing commands found in stream
[2026-06-27 14:23:22,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:23:22,857.857 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-27 14:23:26,388.388 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 14:23:26,390.390 INFO    ] Checking for system updates...
[2026-06-27 14:23:26,411.411 INFO    ] 200
[2026-06-27 14:23:26,413.413 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:23:26,445.445 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:23:26,446.446 INFO    ] No update needed
[2026-06-27 14:23:26,448.448 INFO    ] Checking for camera pi updates...
[2026-06-27 14:23:26,467.467 INFO    ] 200
[2026-06-27 14:23:26,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:23:26,494.494 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:23:26,519.519 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:23:26,520.520 INFO    ] No camera update needed
[2026-06-27 14:23:26,521.521 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:23:26,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:23:26,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:23:26,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:23:28,571.571 INFO    ] ================================================
[2026-06-27 14:23:28,589.589 INFO    ] Launching Daemon at Sat Jun 27 14:23:28 IST 2026
[2026-06-27 14:23:28,602.602 INFO    ] ================================================
[2026-06-27 14:23:28,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:23:28
[2026-06-27 14:23:29,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:23:29,464.464 INFO    ] Initializing speech engine...
[2026-06-27 14:23:29,478.478 INFO    ] 2026-06-27 14:23:29
[2026-06-27 14:23:29,700.700 INFO    ] 2026-06-27 14:23:29
[2026-06-27 14:23:29,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:23:29,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:23:29,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:23:30,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:23:30,158.158 INFO    ] time= 27/06/2026 14:23:30
[2026-06-27 14:23:30,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:23:30,186.186 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:23:30,278.278 INFO    ] No existing commands found in stream
[2026-06-27 14:23:35,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:23:35,295.295 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-27 14:23:37,117.117 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:23:37,118.118 INFO    ] Checking for system updates...
[2026-06-27 14:23:37,140.140 INFO    ] 200
[2026-06-27 14:23:37,142.142 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:23:37,173.173 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:23:37,175.175 INFO    ] No update needed
[2026-06-27 14:23:37,176.176 INFO    ] Checking for camera pi updates...
[2026-06-27 14:23:37,196.196 INFO    ] 200
[2026-06-27 14:23:37,197.197 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:23:37,222.222 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:23:37,267.267 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:23:37,269.269 INFO    ] No camera update needed
[2026-06-27 14:23:37,270.270 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:23:37,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:23:37,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:23:37,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:23:39,315.315 INFO    ] ================================================
[2026-06-27 14:23:39,330.330 INFO    ] Launching Daemon at Sat Jun 27 14:23:39 IST 2026
[2026-06-27 14:23:39,341.341 INFO    ] ================================================
[2026-06-27 14:23:39,693.693 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:23:39
[2026-06-27 14:23:40,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:23:40,175.175 INFO    ] Initializing speech engine...
[2026-06-27 14:23:40,185.185 INFO    ] 2026-06-27 14:23:40
[2026-06-27 14:23:40,396.396 INFO    ] 2026-06-27 14:23:40
[2026-06-27 14:23:40,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:23:40,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:23:40,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:23:40,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:23:40,844.844 INFO    ] time= 27/06/2026 14:23:40
[2026-06-27 14:23:40,849.849 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:23:40,851.851 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:23:40,943.943 INFO    ] No existing commands found in stream
[2026-06-27 14:23:45,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:23:45,961.961 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-27 14:23:49,707.707 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:23:49,709.709 INFO    ] Checking for system updates...
[2026-06-27 14:23:49,731.731 INFO    ] 200
[2026-06-27 14:23:49,732.732 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:23:49,767.767 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:23:49,768.768 INFO    ] No update needed
[2026-06-27 14:23:49,770.770 INFO    ] Checking for camera pi updates...
[2026-06-27 14:23:49,792.792 INFO    ] 200
[2026-06-27 14:23:49,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:23:49,817.817 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:23:49,848.848 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:23:49,849.849 INFO    ] No camera update needed
[2026-06-27 14:23:49,851.851 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:23:49,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:23:49,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:23:49,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:23:51,889.889 INFO    ] ================================================
[2026-06-27 14:23:51,897.897 INFO    ] Launching Daemon at Sat Jun 27 14:23:51 IST 2026
[2026-06-27 14:23:51,903.903 INFO    ] ================================================
[2026-06-27 14:23:52,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:23:52
[2026-06-27 14:23:52,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:23:52,699.699 INFO    ] Initializing speech engine...
[2026-06-27 14:23:52,711.711 INFO    ] 2026-06-27 14:23:52
[2026-06-27 14:23:52,917.917 INFO    ] 2026-06-27 14:23:52
[2026-06-27 14:23:52,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:23:53,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:23:53,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:23:53,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:23:53,426.426 INFO    ] time= 27/06/2026 14:23:53
[2026-06-27 14:23:53,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:23:53,453.453 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:23:53,549.549 INFO    ] No existing commands found in stream
[2026-06-27 14:23:58,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:23:58,562.562 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-27 14:24:02,916.916 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 14:24:02,917.917 INFO    ] Checking for system updates...
[2026-06-27 14:24:02,950.950 INFO    ] 200
[2026-06-27 14:24:02,952.952 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:24:02,984.984 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:24:02,986.986 INFO    ] No update needed
[2026-06-27 14:24:02,987.987 INFO    ] Checking for camera pi updates...
[2026-06-27 14:24:03,006.006 INFO    ] 200
[2026-06-27 14:24:03,008.008 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:24:03,036.036 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:24:03,082.082 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:24:03,084.084 INFO    ] No camera update needed
[2026-06-27 14:24:03,085.085 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:24:03,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:24:03,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:24:03,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:24:05,131.131 INFO    ] ================================================
[2026-06-27 14:24:05,146.146 INFO    ] Launching Daemon at Sat Jun 27 14:24:05 IST 2026
[2026-06-27 14:24:05,156.156 INFO    ] ================================================
[2026-06-27 14:24:05,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:24:05
[2026-06-27 14:24:05,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:24:05,963.963 INFO    ] Initializing speech engine...
[2026-06-27 14:24:05,969.969 INFO    ] 2026-06-27 14:24:05
[2026-06-27 14:24:06,162.162 INFO    ] 2026-06-27 14:24:06
[2026-06-27 14:24:06,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:24:06,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:24:06,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:24:06,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:24:06,626.626 INFO    ] time= 27/06/2026 14:24:06
[2026-06-27 14:24:06,631.631 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:24:06,633.633 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:24:06,747.747 INFO    ] No existing commands found in stream
[2026-06-27 14:24:11,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:24:11,759.759 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-27 14:24:14,067.067 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 14:24:14,068.068 INFO    ] Checking for system updates...
[2026-06-27 14:24:14,089.089 INFO    ] 200
[2026-06-27 14:24:14,091.091 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:24:14,123.123 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:24:14,125.125 INFO    ] No update needed
[2026-06-27 14:24:14,126.126 INFO    ] Checking for camera pi updates...
[2026-06-27 14:24:14,147.147 INFO    ] 200
[2026-06-27 14:24:14,148.148 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:24:14,175.175 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:24:14,203.203 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:24:14,205.205 INFO    ] No camera update needed
[2026-06-27 14:24:14,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:24:14,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:24:14,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:24:14,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:24:16,255.255 INFO    ] ================================================
[2026-06-27 14:24:16,271.271 INFO    ] Launching Daemon at Sat Jun 27 14:24:16 IST 2026
[2026-06-27 14:24:16,281.281 INFO    ] ================================================
[2026-06-27 14:24:16,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:24:16
[2026-06-27 14:24:16,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:24:17,076.076 INFO    ] Initializing speech engine...
[2026-06-27 14:24:17,080.080 INFO    ] 2026-06-27 14:24:17
[2026-06-27 14:24:17,299.299 INFO    ] 2026-06-27 14:24:17
[2026-06-27 14:24:17,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:24:17,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:24:17,524.524 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:24:17,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:24:17,725.725 INFO    ] time= 27/06/2026 14:24:17
[2026-06-27 14:24:17,748.748 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:24:17,754.754 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:24:17,822.822 INFO    ] No existing commands found in stream
[2026-06-27 14:24:22,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:24:22,857.857 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-27 14:24:26,667.667 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:24:26,668.668 INFO    ] Checking for system updates...
[2026-06-27 14:24:26,690.690 INFO    ] 200
[2026-06-27 14:24:26,691.691 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:24:26,721.721 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:24:26,722.722 INFO    ] No update needed
[2026-06-27 14:24:26,724.724 INFO    ] Checking for camera pi updates...
[2026-06-27 14:24:26,746.746 INFO    ] 200
[2026-06-27 14:24:26,747.747 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:24:26,771.771 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:24:26,817.817 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:24:26,818.818 INFO    ] No camera update needed
[2026-06-27 14:24:26,819.819 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:24:26,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:24:26,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:24:26,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:24:28,865.865 INFO    ] ================================================
[2026-06-27 14:24:28,880.880 INFO    ] Launching Daemon at Sat Jun 27 14:24:28 IST 2026
[2026-06-27 14:24:28,891.891 INFO    ] ================================================
[2026-06-27 14:24:29,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:24:29
[2026-06-27 14:24:29,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:24:29,692.692 INFO    ] Initializing speech engine...
[2026-06-27 14:24:29,696.696 INFO    ] 2026-06-27 14:24:29
[2026-06-27 14:24:29,916.916 INFO    ] 2026-06-27 14:24:29
[2026-06-27 14:24:29,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:24:30,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:24:30,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:24:30,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:24:30,362.362 INFO    ] time= 27/06/2026 14:24:30
[2026-06-27 14:24:30,367.367 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:24:30,369.369 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:24:30,461.461 INFO    ] No existing commands found in stream
[2026-06-27 14:24:35,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:24:35,478.478 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-27 14:24:37,395.395 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:24:37,397.397 INFO    ] Checking for system updates...
[2026-06-27 14:24:37,418.418 INFO    ] 200
[2026-06-27 14:24:37,420.420 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:24:37,450.450 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:24:37,451.451 INFO    ] No update needed
[2026-06-27 14:24:37,452.452 INFO    ] Checking for camera pi updates...
[2026-06-27 14:24:37,471.471 INFO    ] 200
[2026-06-27 14:24:37,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:24:37,498.498 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:24:37,532.532 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:24:37,533.533 INFO    ] No camera update needed
[2026-06-27 14:24:37,534.534 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:24:37,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:24:37,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:24:37,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:24:39,580.580 INFO    ] ================================================
[2026-06-27 14:24:39,595.595 INFO    ] Launching Daemon at Sat Jun 27 14:24:39 IST 2026
[2026-06-27 14:24:39,606.606 INFO    ] ================================================
[2026-06-27 14:24:39,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:24:39
[2026-06-27 14:24:40,258.258 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:24:40,402.402 INFO    ] Initializing speech engine...
[2026-06-27 14:24:40,407.407 INFO    ] 2026-06-27 14:24:40
[2026-06-27 14:24:40,612.612 INFO    ] 2026-06-27 14:24:40
[2026-06-27 14:24:40,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:24:40,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:24:40,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:24:41,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:24:41,052.052 INFO    ] time= 27/06/2026 14:24:41
[2026-06-27 14:24:41,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:24:41,055.055 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:24:41,169.169 INFO    ] No existing commands found in stream
[2026-06-27 14:24:46,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:24:46,182.182 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-27 14:24:49,632.632 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 14:24:49,634.634 INFO    ] Checking for system updates...
[2026-06-27 14:24:49,655.655 INFO    ] 200
[2026-06-27 14:24:49,656.656 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:24:49,689.689 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:24:49,690.690 INFO    ] No update needed
[2026-06-27 14:24:49,691.691 INFO    ] Checking for camera pi updates...
[2026-06-27 14:24:49,714.714 INFO    ] 200
[2026-06-27 14:24:49,715.715 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:24:49,740.740 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:24:49,770.770 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:24:49,772.772 INFO    ] No camera update needed
[2026-06-27 14:24:49,773.773 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:24:49,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:24:49,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:24:49,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:24:51,821.821 INFO    ] ================================================
[2026-06-27 14:24:51,837.837 INFO    ] Launching Daemon at Sat Jun 27 14:24:51 IST 2026
[2026-06-27 14:24:51,847.847 INFO    ] ================================================
[2026-06-27 14:24:52,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:24:52
[2026-06-27 14:24:52,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:24:52,641.641 INFO    ] Initializing speech engine...
[2026-06-27 14:24:52,651.651 INFO    ] 2026-06-27 14:24:52
[2026-06-27 14:24:52,858.858 INFO    ] 2026-06-27 14:24:52
[2026-06-27 14:24:52,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:24:53,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:24:53,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:24:53,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:24:53,375.375 INFO    ] time= 27/06/2026 14:24:53
[2026-06-27 14:24:53,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:24:53,427.427 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:24:53,529.529 INFO    ] No existing commands found in stream
[2026-06-27 14:24:58,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:24:58,541.541 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-27 14:25:01,036.036 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:25:01,037.037 INFO    ] Checking for system updates...
[2026-06-27 14:25:01,058.058 INFO    ] 200
[2026-06-27 14:25:01,060.060 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:25:01,093.093 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:25:01,094.094 INFO    ] No update needed
[2026-06-27 14:25:01,096.096 INFO    ] Checking for camera pi updates...
[2026-06-27 14:25:01,116.116 INFO    ] 200
[2026-06-27 14:25:01,118.118 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:25:01,143.143 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:25:01,186.186 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:25:01,188.188 INFO    ] No camera update needed
[2026-06-27 14:25:01,189.189 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:25:01,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:25:01,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:25:01,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:25:03,229.229 INFO    ] ================================================
[2026-06-27 14:25:03,245.245 INFO    ] Launching Daemon at Sat Jun 27 14:25:03 IST 2026
[2026-06-27 14:25:03,255.255 INFO    ] ================================================
[2026-06-27 14:25:03,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:25:03
[2026-06-27 14:25:03,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:25:04,057.057 INFO    ] Initializing speech engine...
[2026-06-27 14:25:04,065.065 INFO    ] 2026-06-27 14:25:04
[2026-06-27 14:25:04,276.276 INFO    ] 2026-06-27 14:25:04
[2026-06-27 14:25:04,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:25:04,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:25:04,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:25:04,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:25:04,718.718 INFO    ] time= 27/06/2026 14:25:04
[2026-06-27 14:25:04,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:25:04,725.725 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:25:04,792.792 INFO    ] No existing commands found in stream
[2026-06-27 14:25:09,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:25:09,809.809 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-27 14:25:12,044.044 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:25:12,045.045 INFO    ] Checking for system updates...
[2026-06-27 14:25:12,066.066 INFO    ] 200
[2026-06-27 14:25:12,068.068 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:25:12,101.101 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:25:12,102.102 INFO    ] No update needed
[2026-06-27 14:25:12,104.104 INFO    ] Checking for camera pi updates...
[2026-06-27 14:25:12,124.124 INFO    ] 200
[2026-06-27 14:25:12,125.125 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:25:12,150.150 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:25:12,274.274 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:25:12,276.276 INFO    ] No camera update needed
[2026-06-27 14:25:12,277.277 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:25:12,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:25:12,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:25:12,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:25:14,325.325 INFO    ] ================================================
[2026-06-27 14:25:14,340.340 INFO    ] Launching Daemon at Sat Jun 27 14:25:14 IST 2026
[2026-06-27 14:25:14,351.351 INFO    ] ================================================
[2026-06-27 14:25:14,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:25:14
[2026-06-27 14:25:15,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:25:15,189.189 INFO    ] Initializing speech engine...
[2026-06-27 14:25:15,195.195 INFO    ] 2026-06-27 14:25:15
[2026-06-27 14:25:15,405.405 INFO    ] 2026-06-27 14:25:15
[2026-06-27 14:25:15,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:25:15,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:25:15,635.635 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:25:15,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:25:15,857.857 INFO    ] time= 27/06/2026 14:25:15
[2026-06-27 14:25:15,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:25:15,861.861 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:25:15,983.983 INFO    ] No existing commands found in stream
[2026-06-27 14:25:20,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:25:20,997.997 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-27 14:25:22,108.108 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 14:25:22,109.109 INFO    ] Checking for system updates...
[2026-06-27 14:25:22,130.130 INFO    ] 200
[2026-06-27 14:25:22,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:25:22,162.162 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:25:22,164.164 INFO    ] No update needed
[2026-06-27 14:25:22,165.165 INFO    ] Checking for camera pi updates...
[2026-06-27 14:25:22,186.186 INFO    ] 200
[2026-06-27 14:25:22,188.188 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:25:22,213.213 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:25:22,255.255 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:25:22,256.256 INFO    ] No camera update needed
[2026-06-27 14:25:22,258.258 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:25:22,259.259 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:25:22,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:25:22,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:25:24,305.305 INFO    ] ================================================
[2026-06-27 14:25:24,320.320 INFO    ] Launching Daemon at Sat Jun 27 14:25:24 IST 2026
[2026-06-27 14:25:24,331.331 INFO    ] ================================================
[2026-06-27 14:25:24,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:25:24
[2026-06-27 14:25:25,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:25:25,150.150 INFO    ] Initializing speech engine...
[2026-06-27 14:25:25,159.159 INFO    ] 2026-06-27 14:25:25
[2026-06-27 14:25:25,370.370 INFO    ] 2026-06-27 14:25:25
[2026-06-27 14:25:25,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:25:25,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:25:25,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:25:25,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:25:25,811.811 INFO    ] time= 27/06/2026 14:25:25
[2026-06-27 14:25:25,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:25:25,819.819 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:25:25,884.884 INFO    ] No existing commands found in stream
[2026-06-27 14:25:30,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:25:30,898.898 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-27 14:25:31,948.948 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 14:25:31,950.950 INFO    ] Checking for system updates...
[2026-06-27 14:25:31,974.974 INFO    ] 200
[2026-06-27 14:25:31,976.976 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:25:32,011.011 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:25:32,013.013 INFO    ] No update needed
[2026-06-27 14:25:32,015.015 INFO    ] Checking for camera pi updates...
[2026-06-27 14:25:32,041.041 INFO    ] 200
[2026-06-27 14:25:32,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:25:32,076.076 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:25:32,110.110 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:25:32,112.112 INFO    ] No camera update needed
[2026-06-27 14:25:32,113.113 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:25:32,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:25:32,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:25:32,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:25:34,159.159 INFO    ] ================================================
[2026-06-27 14:25:34,174.174 INFO    ] Launching Daemon at Sat Jun 27 14:25:34 IST 2026
[2026-06-27 14:25:34,185.185 INFO    ] ================================================
[2026-06-27 14:25:34,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:25:34
[2026-06-27 14:25:34,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:25:35,027.027 INFO    ] Initializing speech engine...
[2026-06-27 14:25:35,033.033 INFO    ] 2026-06-27 14:25:35
[2026-06-27 14:25:35,244.244 INFO    ] 2026-06-27 14:25:35
[2026-06-27 14:25:35,272.272 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:25:35,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:25:35,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:25:35,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:25:35,781.781 INFO    ] time= 27/06/2026 14:25:35
[2026-06-27 14:25:35,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:25:35,806.806 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:25:35,892.892 INFO    ] No existing commands found in stream
[2026-06-27 14:25:40,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:25:40,905.905 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-27 14:25:42,176.176 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 14:25:42,177.177 INFO    ] Checking for system updates...
[2026-06-27 14:25:42,198.198 INFO    ] 200
[2026-06-27 14:25:42,200.200 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:25:42,232.232 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:25:42,233.233 INFO    ] No update needed
[2026-06-27 14:25:42,235.235 INFO    ] Checking for camera pi updates...
[2026-06-27 14:25:42,255.255 INFO    ] 200
[2026-06-27 14:25:42,257.257 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:25:42,280.280 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:25:42,330.330 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:25:42,331.331 INFO    ] No camera update needed
[2026-06-27 14:25:42,333.333 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:25:42,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:25:42,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:25:42,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:25:44,378.378 INFO    ] ================================================
[2026-06-27 14:25:44,393.393 INFO    ] Launching Daemon at Sat Jun 27 14:25:44 IST 2026
[2026-06-27 14:25:44,404.404 INFO    ] ================================================
[2026-06-27 14:25:44,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:25:44
[2026-06-27 14:25:45,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:25:45,217.217 INFO    ] Initializing speech engine...
[2026-06-27 14:25:45,226.226 INFO    ] 2026-06-27 14:25:45
[2026-06-27 14:25:45,430.430 INFO    ] 2026-06-27 14:25:45
[2026-06-27 14:25:45,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:25:45,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:25:45,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:25:45,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:25:45,871.871 INFO    ] time= 27/06/2026 14:25:45
[2026-06-27 14:25:45,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:25:45,878.878 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:25:45,968.968 INFO    ] No existing commands found in stream
[2026-06-27 14:25:50,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:25:50,985.985 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-27 14:25:54,638.638 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 14:25:54,639.639 INFO    ] Checking for system updates...
[2026-06-27 14:25:54,662.662 INFO    ] 200
[2026-06-27 14:25:54,664.664 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:25:54,694.694 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:25:54,695.695 INFO    ] No update needed
[2026-06-27 14:25:54,697.697 INFO    ] Checking for camera pi updates...
[2026-06-27 14:25:54,717.717 INFO    ] 200
[2026-06-27 14:25:54,718.718 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:25:54,743.743 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:25:54,778.778 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:25:54,779.779 INFO    ] No camera update needed
[2026-06-27 14:25:54,781.781 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:25:54,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:25:54,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:25:54,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:25:56,826.826 INFO    ] ================================================
[2026-06-27 14:25:56,841.841 INFO    ] Launching Daemon at Sat Jun 27 14:25:56 IST 2026
[2026-06-27 14:25:56,853.853 INFO    ] ================================================
[2026-06-27 14:25:57,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:25:57
[2026-06-27 14:25:57,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:25:57,720.720 INFO    ] Initializing speech engine...
[2026-06-27 14:25:57,726.726 INFO    ] 2026-06-27 14:25:57
[2026-06-27 14:25:57,933.933 INFO    ] 2026-06-27 14:25:57
[2026-06-27 14:25:57,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:25:58,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:25:58,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:25:58,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:25:58,497.497 INFO    ] time= 27/06/2026 14:25:58
[2026-06-27 14:25:58,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:25:58,502.502 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:25:58,595.595 INFO    ] No existing commands found in stream
[2026-06-27 14:26:03,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:26:03,609.609 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-27 14:26:06,752.752 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:26:06,753.753 INFO    ] Checking for system updates...
[2026-06-27 14:26:06,776.776 INFO    ] 200
[2026-06-27 14:26:06,778.778 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:26:06,809.809 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:26:06,810.810 INFO    ] No update needed
[2026-06-27 14:26:06,811.811 INFO    ] Checking for camera pi updates...
[2026-06-27 14:26:06,831.831 INFO    ] 200
[2026-06-27 14:26:06,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:26:06,856.856 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:26:06,897.897 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:26:06,898.898 INFO    ] No camera update needed
[2026-06-27 14:26:06,900.900 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:26:06,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:26:06,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:26:06,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:26:08,946.946 INFO    ] ================================================
[2026-06-27 14:26:08,961.961 INFO    ] Launching Daemon at Sat Jun 27 14:26:08 IST 2026
[2026-06-27 14:26:08,972.972 INFO    ] ================================================
[2026-06-27 14:26:09,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:26:09
[2026-06-27 14:26:09,618.618 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:26:09,750.750 INFO    ] Initializing speech engine...
[2026-06-27 14:26:09,762.762 INFO    ] 2026-06-27 14:26:09
[2026-06-27 14:26:09,972.972 INFO    ] 2026-06-27 14:26:09
[2026-06-27 14:26:10,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:26:10,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:26:10,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:26:10,343.343 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:26:10,397.397 INFO    ] time= 27/06/2026 14:26:10
[2026-06-27 14:26:10,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:26:10,426.426 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:26:10,495.495 INFO    ] No existing commands found in stream
[2026-06-27 14:26:15,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:26:15,507.507 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-27 14:26:19,388.388 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 14:26:19,390.390 INFO    ] Checking for system updates...
[2026-06-27 14:26:19,411.411 INFO    ] 200
[2026-06-27 14:26:19,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:26:19,444.444 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:26:19,446.446 INFO    ] No update needed
[2026-06-27 14:26:19,447.447 INFO    ] Checking for camera pi updates...
[2026-06-27 14:26:19,469.469 INFO    ] 200
[2026-06-27 14:26:19,470.470 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:26:19,493.493 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:26:19,535.535 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:26:19,536.536 INFO    ] No camera update needed
[2026-06-27 14:26:19,537.537 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:26:19,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:26:19,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:26:19,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:26:21,586.586 INFO    ] ================================================
[2026-06-27 14:26:21,602.602 INFO    ] Launching Daemon at Sat Jun 27 14:26:21 IST 2026
[2026-06-27 14:26:21,619.619 INFO    ] ================================================
[2026-06-27 14:26:21,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:26:21
[2026-06-27 14:26:22,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:26:22,468.468 INFO    ] Initializing speech engine...
[2026-06-27 14:26:22,474.474 INFO    ] 2026-06-27 14:26:22
[2026-06-27 14:26:22,685.685 INFO    ] 2026-06-27 14:26:22
[2026-06-27 14:26:22,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:26:22,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:26:22,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:26:23,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:26:23,137.137 INFO    ] time= 27/06/2026 14:26:23
[2026-06-27 14:26:23,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:26:23,145.145 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:26:23,238.238 INFO    ] No existing commands found in stream
[2026-06-27 14:26:28,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:26:28,249.249 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-27 14:26:30,387.387 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 14:26:30,388.388 INFO    ] Checking for system updates...
[2026-06-27 14:26:30,411.411 INFO    ] 200
[2026-06-27 14:26:30,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:26:30,445.445 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:26:30,447.447 INFO    ] No update needed
[2026-06-27 14:26:30,448.448 INFO    ] Checking for camera pi updates...
[2026-06-27 14:26:30,469.469 INFO    ] 200
[2026-06-27 14:26:30,470.470 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:26:30,495.495 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:26:30,536.536 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:26:30,538.538 INFO    ] No camera update needed
[2026-06-27 14:26:30,539.539 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:26:30,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:26:30,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:26:30,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:26:32,584.584 INFO    ] ================================================
[2026-06-27 14:26:32,599.599 INFO    ] Launching Daemon at Sat Jun 27 14:26:32 IST 2026
[2026-06-27 14:26:32,610.610 INFO    ] ================================================
[2026-06-27 14:26:32,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:26:32
[2026-06-27 14:26:33,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:26:33,397.397 INFO    ] Initializing speech engine...
[2026-06-27 14:26:33,403.403 INFO    ] 2026-06-27 14:26:33
[2026-06-27 14:26:33,610.610 INFO    ] 2026-06-27 14:26:33
[2026-06-27 14:26:33,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:26:33,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:26:33,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:26:34,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:26:34,061.061 INFO    ] time= 27/06/2026 14:26:34
[2026-06-27 14:26:34,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:26:34,065.065 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:26:34,157.157 INFO    ] No existing commands found in stream
[2026-06-27 14:26:39,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:26:39,179.179 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-27 14:26:41,147.147 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:26:41,149.149 INFO    ] Checking for system updates...
[2026-06-27 14:26:41,170.170 INFO    ] 200
[2026-06-27 14:26:41,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:26:41,201.201 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:26:41,202.202 INFO    ] No update needed
[2026-06-27 14:26:41,203.203 INFO    ] Checking for camera pi updates...
[2026-06-27 14:26:41,223.223 INFO    ] 200
[2026-06-27 14:26:41,224.224 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:26:41,251.251 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:26:41,293.293 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:26:41,294.294 INFO    ] No camera update needed
[2026-06-27 14:26:41,296.296 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:26:41,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:26:41,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:26:41,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:26:43,342.342 INFO    ] ================================================
[2026-06-27 14:26:43,358.358 INFO    ] Launching Daemon at Sat Jun 27 14:26:43 IST 2026
[2026-06-27 14:26:43,369.369 INFO    ] ================================================
[2026-06-27 14:26:43,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:26:43
[2026-06-27 14:26:44,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:26:44,178.178 INFO    ] Initializing speech engine...
[2026-06-27 14:26:44,181.181 INFO    ] 2026-06-27 14:26:44
[2026-06-27 14:26:44,399.399 INFO    ] 2026-06-27 14:26:44
[2026-06-27 14:26:44,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:26:44,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:26:44,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:26:44,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:26:44,847.847 INFO    ] time= 27/06/2026 14:26:44
[2026-06-27 14:26:44,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:26:44,850.850 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:26:44,942.942 INFO    ] No existing commands found in stream
[2026-06-27 14:26:49,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:26:49,969.969 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-27 14:26:50,826.826 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 14:26:50,828.828 INFO    ] Checking for system updates...
[2026-06-27 14:26:50,848.848 INFO    ] 200
[2026-06-27 14:26:50,850.850 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:26:50,881.881 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:26:50,882.882 INFO    ] No update needed
[2026-06-27 14:26:50,883.883 INFO    ] Checking for camera pi updates...
[2026-06-27 14:26:50,904.904 INFO    ] 200
[2026-06-27 14:26:50,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:26:50,930.930 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:26:50,972.972 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:26:50,974.974 INFO    ] No camera update needed
[2026-06-27 14:26:50,975.975 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:26:50,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:26:50,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:26:50,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:26:53,020.020 INFO    ] ================================================
[2026-06-27 14:26:53,036.036 INFO    ] Launching Daemon at Sat Jun 27 14:26:53 IST 2026
[2026-06-27 14:26:53,047.047 INFO    ] ================================================
[2026-06-27 14:26:53,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:26:53
[2026-06-27 14:26:53,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:26:53,868.868 INFO    ] Initializing speech engine...
[2026-06-27 14:26:53,873.873 INFO    ] 2026-06-27 14:26:53
[2026-06-27 14:26:54,080.080 INFO    ] 2026-06-27 14:26:54
[2026-06-27 14:26:54,108.108 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:26:54,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:26:54,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:26:54,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:26:54,502.502 INFO    ] time= 27/06/2026 14:26:54
[2026-06-27 14:26:54,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:26:54,532.532 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:26:54,599.599 INFO    ] No existing commands found in stream
[2026-06-27 14:26:59,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:26:59,616.616 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-27 14:27:00,655.655 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:27:00,657.657 INFO    ] Checking for system updates...
[2026-06-27 14:27:00,678.678 INFO    ] 200
[2026-06-27 14:27:00,679.679 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:27:00,711.711 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:27:00,712.712 INFO    ] No update needed
[2026-06-27 14:27:00,714.714 INFO    ] Checking for camera pi updates...
[2026-06-27 14:27:00,735.735 INFO    ] 200
[2026-06-27 14:27:00,736.736 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:27:00,760.760 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:27:00,802.802 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:27:00,803.803 INFO    ] No camera update needed
[2026-06-27 14:27:00,804.804 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:27:00,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:27:00,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:27:00,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:27:02,845.845 INFO    ] ================================================
[2026-06-27 14:27:02,855.855 INFO    ] Launching Daemon at Sat Jun 27 14:27:02 IST 2026
[2026-06-27 14:27:02,862.862 INFO    ] ================================================
[2026-06-27 14:27:03,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:27:03
[2026-06-27 14:27:03,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:27:03,627.627 INFO    ] Initializing speech engine...
[2026-06-27 14:27:03,635.635 INFO    ] 2026-06-27 14:27:03
[2026-06-27 14:27:03,850.850 INFO    ] 2026-06-27 14:27:03
[2026-06-27 14:27:03,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:27:04,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:27:04,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:27:04,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:27:04,261.261 INFO    ] time= 27/06/2026 14:27:04
[2026-06-27 14:27:04,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:27:04,302.302 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:27:04,398.398 INFO    ] No existing commands found in stream
[2026-06-27 14:27:09,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:27:09,415.415 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-27 14:27:10,205.205 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:27:10,208.208 INFO    ] Checking for system updates...
[2026-06-27 14:27:10,232.232 INFO    ] 200
[2026-06-27 14:27:10,234.234 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:27:10,264.264 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:27:10,266.266 INFO    ] No update needed
[2026-06-27 14:27:10,267.267 INFO    ] Checking for camera pi updates...
[2026-06-27 14:27:10,288.288 INFO    ] 200
[2026-06-27 14:27:10,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:27:10,318.318 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:27:10,366.366 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:27:10,367.367 INFO    ] No camera update needed
[2026-06-27 14:27:10,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:27:10,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:27:10,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:27:10,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:27:12,417.417 INFO    ] ================================================
[2026-06-27 14:27:12,432.432 INFO    ] Launching Daemon at Sat Jun 27 14:27:12 IST 2026
[2026-06-27 14:27:12,443.443 INFO    ] ================================================
[2026-06-27 14:27:12,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:27:12
[2026-06-27 14:27:13,125.125 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:27:13,258.258 INFO    ] Initializing speech engine...
[2026-06-27 14:27:13,271.271 INFO    ] 2026-06-27 14:27:13
[2026-06-27 14:27:13,481.481 INFO    ] 2026-06-27 14:27:13
[2026-06-27 14:27:13,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:27:13,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:27:13,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:27:13,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:27:13,926.926 INFO    ] time= 27/06/2026 14:27:13
[2026-06-27 14:27:13,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:27:13,934.934 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:27:14,000.000 INFO    ] No existing commands found in stream
[2026-06-27 14:27:19,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:27:19,014.014 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-27 14:27:20,756.756 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:27:20,757.757 INFO    ] Checking for system updates...
[2026-06-27 14:27:20,779.779 INFO    ] 200
[2026-06-27 14:27:20,780.780 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:27:20,813.813 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:27:20,814.814 INFO    ] No update needed
[2026-06-27 14:27:20,816.816 INFO    ] Checking for camera pi updates...
[2026-06-27 14:27:20,837.837 INFO    ] 200
[2026-06-27 14:27:20,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:27:20,863.863 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:27:20,987.987 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:27:20,989.989 INFO    ] No camera update needed
[2026-06-27 14:27:20,990.990 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:27:20,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:27:20,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:27:20,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:27:23,036.036 INFO    ] ================================================
[2026-06-27 14:27:23,052.052 INFO    ] Launching Daemon at Sat Jun 27 14:27:23 IST 2026
[2026-06-27 14:27:23,063.063 INFO    ] ================================================
[2026-06-27 14:27:23,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:27:23
[2026-06-27 14:27:23,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:27:23,941.941 INFO    ] Initializing speech engine...
[2026-06-27 14:27:23,947.947 INFO    ] 2026-06-27 14:27:23
[2026-06-27 14:27:24,156.156 INFO    ] 2026-06-27 14:27:24
[2026-06-27 14:27:24,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:27:24,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:27:24,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:27:24,575.575 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:27:24,600.600 INFO    ] time= 27/06/2026 14:27:24
[2026-06-27 14:27:24,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:27:24,607.607 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:27:24,699.699 INFO    ] No existing commands found in stream
[2026-06-27 14:27:29,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:27:29,717.717 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-27 14:27:32,350.350 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 14:27:32,352.352 INFO    ] Checking for system updates...
[2026-06-27 14:27:32,378.378 INFO    ] 200
[2026-06-27 14:27:32,380.380 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:27:32,419.419 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:27:32,421.421 INFO    ] No update needed
[2026-06-27 14:27:32,422.422 INFO    ] Checking for camera pi updates...
[2026-06-27 14:27:32,445.445 INFO    ] 200
[2026-06-27 14:27:32,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:27:32,476.476 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:27:32,502.502 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:27:32,503.503 INFO    ] No camera update needed
[2026-06-27 14:27:32,505.505 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:27:32,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:27:32,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:27:32,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:27:34,548.548 INFO    ] ================================================
[2026-06-27 14:27:34,563.563 INFO    ] Launching Daemon at Sat Jun 27 14:27:34 IST 2026
[2026-06-27 14:27:34,574.574 INFO    ] ================================================
[2026-06-27 14:27:34,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:27:34
[2026-06-27 14:27:35,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:27:35,372.372 INFO    ] Initializing speech engine...
[2026-06-27 14:27:35,377.377 INFO    ] 2026-06-27 14:27:35
[2026-06-27 14:27:35,583.583 INFO    ] 2026-06-27 14:27:35
[2026-06-27 14:27:35,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:27:35,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:27:35,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:27:36,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:27:36,026.026 INFO    ] time= 27/06/2026 14:27:36
[2026-06-27 14:27:36,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:27:36,033.033 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:27:36,125.125 INFO    ] No existing commands found in stream
[2026-06-27 14:27:41,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:27:41,137.137 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-27 14:27:42,872.872 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:27:42,873.873 INFO    ] Checking for system updates...
[2026-06-27 14:27:42,895.895 INFO    ] 200
[2026-06-27 14:27:42,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:27:42,927.927 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:27:42,928.928 INFO    ] No update needed
[2026-06-27 14:27:42,930.930 INFO    ] Checking for camera pi updates...
[2026-06-27 14:27:42,950.950 INFO    ] 200
[2026-06-27 14:27:42,952.952 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:27:42,978.978 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:27:43,025.025 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:27:43,026.026 INFO    ] No camera update needed
[2026-06-27 14:27:43,027.027 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:27:43,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:27:43,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:27:43,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:27:45,075.075 INFO    ] ================================================
[2026-06-27 14:27:45,091.091 INFO    ] Launching Daemon at Sat Jun 27 14:27:45 IST 2026
[2026-06-27 14:27:45,103.103 INFO    ] ================================================
[2026-06-27 14:27:45,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:27:45
[2026-06-27 14:27:45,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:27:45,890.890 INFO    ] Initializing speech engine...
[2026-06-27 14:27:45,895.895 INFO    ] 2026-06-27 14:27:45
[2026-06-27 14:27:46,099.099 INFO    ] 2026-06-27 14:27:46
[2026-06-27 14:27:46,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:27:46,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:27:46,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:27:46,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:27:46,632.632 INFO    ] time= 27/06/2026 14:27:46
[2026-06-27 14:27:46,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:27:46,661.661 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:27:46,752.752 INFO    ] No existing commands found in stream
[2026-06-27 14:27:51,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:27:51,766.766 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-27 14:27:54,826.826 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 14:27:54,828.828 INFO    ] Checking for system updates...
[2026-06-27 14:27:54,850.850 INFO    ] 200
[2026-06-27 14:27:54,851.851 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:27:54,885.885 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:27:54,886.886 INFO    ] No update needed
[2026-06-27 14:27:54,888.888 INFO    ] Checking for camera pi updates...
[2026-06-27 14:27:54,908.908 INFO    ] 200
[2026-06-27 14:27:54,910.910 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:27:54,935.935 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:27:54,962.962 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:27:54,963.963 INFO    ] No camera update needed
[2026-06-27 14:27:54,965.965 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:27:54,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:27:54,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:27:54,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:27:57,013.013 INFO    ] ================================================
[2026-06-27 14:27:57,029.029 INFO    ] Launching Daemon at Sat Jun 27 14:27:57 IST 2026
[2026-06-27 14:27:57,041.041 INFO    ] ================================================
[2026-06-27 14:27:57,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:27:57
[2026-06-27 14:27:57,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:27:57,858.858 INFO    ] Initializing speech engine...
[2026-06-27 14:27:57,869.869 INFO    ] 2026-06-27 14:27:57
[2026-06-27 14:27:58,076.076 INFO    ] 2026-06-27 14:27:58
[2026-06-27 14:27:58,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:27:58,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:27:58,290.290 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:27:58,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:27:58,514.514 INFO    ] time= 27/06/2026 14:27:58
[2026-06-27 14:27:58,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:27:58,521.521 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:27:58,611.611 INFO    ] No existing commands found in stream
[2026-06-27 14:28:03,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:28:03,623.623 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-27 14:28:04,108.108 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:28:04,109.109 INFO    ] Checking for system updates...
[2026-06-27 14:28:04,130.130 INFO    ] 200
[2026-06-27 14:28:04,131.131 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:28:04,164.164 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:28:04,166.166 INFO    ] No update needed
[2026-06-27 14:28:04,167.167 INFO    ] Checking for camera pi updates...
[2026-06-27 14:28:04,186.186 INFO    ] 200
[2026-06-27 14:28:04,188.188 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:28:04,211.211 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:28:04,260.260 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:28:04,261.261 INFO    ] No camera update needed
[2026-06-27 14:28:04,262.262 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:28:04,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:28:04,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:28:04,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:28:06,309.309 INFO    ] ================================================
[2026-06-27 14:28:06,325.325 INFO    ] Launching Daemon at Sat Jun 27 14:28:06 IST 2026
[2026-06-27 14:28:06,337.337 INFO    ] ================================================
[2026-06-27 14:28:06,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:28:06
[2026-06-27 14:28:07,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:28:07,153.153 INFO    ] Initializing speech engine...
[2026-06-27 14:28:07,157.157 INFO    ] 2026-06-27 14:28:07
[2026-06-27 14:28:07,390.390 INFO    ] 2026-06-27 14:28:07
[2026-06-27 14:28:07,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:28:07,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:28:07,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:28:07,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:28:07,841.841 INFO    ] time= 27/06/2026 14:28:07
[2026-06-27 14:28:07,846.846 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:28:07,848.848 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:28:07,946.946 INFO    ] No existing commands found in stream
[2026-06-27 14:28:12,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:28:12,958.958 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-27 14:28:16,467.467 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:28:16,469.469 INFO    ] Checking for system updates...
[2026-06-27 14:28:16,490.490 INFO    ] 200
[2026-06-27 14:28:16,492.492 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:28:16,525.525 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:28:16,526.526 INFO    ] No update needed
[2026-06-27 14:28:16,527.527 INFO    ] Checking for camera pi updates...
[2026-06-27 14:28:16,554.554 INFO    ] 200
[2026-06-27 14:28:16,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:28:16,586.586 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:28:16,632.632 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:28:16,634.634 INFO    ] No camera update needed
[2026-06-27 14:28:16,636.636 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:28:16,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:28:16,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:28:16,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:28:18,676.676 INFO    ] ================================================
[2026-06-27 14:28:18,685.685 INFO    ] Launching Daemon at Sat Jun 27 14:28:18 IST 2026
[2026-06-27 14:28:18,692.692 INFO    ] ================================================
[2026-06-27 14:28:19,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:28:18
[2026-06-27 14:28:19,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:28:19,495.495 INFO    ] Initializing speech engine...
[2026-06-27 14:28:19,501.501 INFO    ] 2026-06-27 14:28:19
[2026-06-27 14:28:19,703.703 INFO    ] 2026-06-27 14:28:19
[2026-06-27 14:28:19,734.734 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:28:19,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:28:19,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:28:20,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:28:20,144.144 INFO    ] time= 27/06/2026 14:28:20
[2026-06-27 14:28:20,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:28:20,185.185 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:28:20,273.273 INFO    ] No existing commands found in stream
[2026-06-27 14:28:25,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:28:25,294.294 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-27 14:28:28,885.885 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 14:28:28,887.887 INFO    ] Checking for system updates...
[2026-06-27 14:28:28,909.909 INFO    ] 200
[2026-06-27 14:28:28,910.910 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:28:28,944.944 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:28:28,945.945 INFO    ] No update needed
[2026-06-27 14:28:28,946.946 INFO    ] Checking for camera pi updates...
[2026-06-27 14:28:28,966.966 INFO    ] 200
[2026-06-27 14:28:28,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:28:28,992.992 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:28:29,032.032 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:28:29,034.034 INFO    ] No camera update needed
[2026-06-27 14:28:29,035.035 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:28:29,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:28:29,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:28:29,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:28:31,083.083 INFO    ] ================================================
[2026-06-27 14:28:31,099.099 INFO    ] Launching Daemon at Sat Jun 27 14:28:31 IST 2026
[2026-06-27 14:28:31,110.110 INFO    ] ================================================
[2026-06-27 14:28:31,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:28:31
[2026-06-27 14:28:31,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:28:32,052.052 INFO    ] Initializing speech engine...
[2026-06-27 14:28:32,055.055 INFO    ] 2026-06-27 14:28:32
[2026-06-27 14:28:32,265.265 INFO    ] 2026-06-27 14:28:32
[2026-06-27 14:28:32,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:28:32,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:28:32,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:28:32,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:28:32,715.715 INFO    ] time= 27/06/2026 14:28:32
[2026-06-27 14:28:32,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:28:32,719.719 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:28:32,811.811 INFO    ] No existing commands found in stream
[2026-06-27 14:28:37,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:28:37,824.824 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-27 14:28:41,756.756 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 14:28:41,758.758 INFO    ] Checking for system updates...
[2026-06-27 14:28:41,780.780 INFO    ] 200
[2026-06-27 14:28:41,782.782 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:28:41,814.814 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:28:41,816.816 INFO    ] No update needed
[2026-06-27 14:28:41,817.817 INFO    ] Checking for camera pi updates...
[2026-06-27 14:28:41,837.837 INFO    ] 200
[2026-06-27 14:28:41,839.839 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:28:41,862.862 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:28:41,905.905 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:28:41,906.906 INFO    ] No camera update needed
[2026-06-27 14:28:41,907.907 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:28:41,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:28:41,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:28:41,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:28:43,953.953 INFO    ] ================================================
[2026-06-27 14:28:43,969.969 INFO    ] Launching Daemon at Sat Jun 27 14:28:43 IST 2026
[2026-06-27 14:28:43,980.980 INFO    ] ================================================
[2026-06-27 14:28:44,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:28:44
[2026-06-27 14:28:44,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:28:44,796.796 INFO    ] Initializing speech engine...
[2026-06-27 14:28:44,801.801 INFO    ] 2026-06-27 14:28:44
[2026-06-27 14:28:45,005.005 INFO    ] 2026-06-27 14:28:44
[2026-06-27 14:28:45,033.033 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:28:45,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:28:45,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:28:45,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:28:45,448.448 INFO    ] time= 27/06/2026 14:28:45
[2026-06-27 14:28:45,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:28:45,455.455 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:28:45,546.546 INFO    ] No existing commands found in stream
[2026-06-27 14:28:50,555.555 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:28:50,558.558 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-27 14:28:54,187.187 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 14:28:54,189.189 INFO    ] Checking for system updates...
[2026-06-27 14:28:54,211.211 INFO    ] 200
[2026-06-27 14:28:54,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:28:54,246.246 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:28:54,247.247 INFO    ] No update needed
[2026-06-27 14:28:54,248.248 INFO    ] Checking for camera pi updates...
[2026-06-27 14:28:54,269.269 INFO    ] 200
[2026-06-27 14:28:54,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:28:54,295.295 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:28:54,326.326 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:28:54,327.327 INFO    ] No camera update needed
[2026-06-27 14:28:54,329.329 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:28:54,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:28:54,333.333 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:28:54,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:28:56,376.376 INFO    ] ================================================
[2026-06-27 14:28:56,392.392 INFO    ] Launching Daemon at Sat Jun 27 14:28:56 IST 2026
[2026-06-27 14:28:56,403.403 INFO    ] ================================================
[2026-06-27 14:28:56,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:28:56
[2026-06-27 14:28:57,113.113 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:28:57,256.256 INFO    ] Initializing speech engine...
[2026-06-27 14:28:57,262.262 INFO    ] 2026-06-27 14:28:57
[2026-06-27 14:28:57,467.467 INFO    ] 2026-06-27 14:28:57
[2026-06-27 14:28:57,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:28:57,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:28:57,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:28:58,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:28:58,030.030 INFO    ] time= 27/06/2026 14:28:58
[2026-06-27 14:28:58,034.034 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:28:58,037.037 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:28:58,146.146 INFO    ] No existing commands found in stream
[2026-06-27 14:29:03,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:29:03,159.159 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-27 14:29:06,033.033 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:29:06,035.035 INFO    ] Checking for system updates...
[2026-06-27 14:29:06,057.057 INFO    ] 200
[2026-06-27 14:29:06,058.058 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:29:06,088.088 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:29:06,090.090 INFO    ] No update needed
[2026-06-27 14:29:06,091.091 INFO    ] Checking for camera pi updates...
[2026-06-27 14:29:06,111.111 INFO    ] 200
[2026-06-27 14:29:06,113.113 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:29:06,136.136 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:29:06,165.165 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:29:06,166.166 INFO    ] No camera update needed
[2026-06-27 14:29:06,168.168 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:29:06,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:29:06,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:29:06,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:29:08,215.215 INFO    ] ================================================
[2026-06-27 14:29:08,231.231 INFO    ] Launching Daemon at Sat Jun 27 14:29:08 IST 2026
[2026-06-27 14:29:08,242.242 INFO    ] ================================================
[2026-06-27 14:29:08,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:29:08
[2026-06-27 14:29:08,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:29:09,095.095 INFO    ] Initializing speech engine...
[2026-06-27 14:29:09,099.099 INFO    ] 2026-06-27 14:29:09
[2026-06-27 14:29:09,289.289 INFO    ] 2026-06-27 14:29:09
[2026-06-27 14:29:09,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:29:09,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:29:09,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:29:09,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:29:09,802.802 INFO    ] time= 27/06/2026 14:29:09
[2026-06-27 14:29:09,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:29:09,809.809 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:29:09,881.881 INFO    ] No existing commands found in stream
[2026-06-27 14:29:14,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:29:14,898.898 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-27 14:29:17,360.360 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 14:29:17,362.362 INFO    ] Checking for system updates...
[2026-06-27 14:29:17,382.382 INFO    ] 200
[2026-06-27 14:29:17,384.384 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:29:17,414.414 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:29:17,415.415 INFO    ] No update needed
[2026-06-27 14:29:17,417.417 INFO    ] Checking for camera pi updates...
[2026-06-27 14:29:17,437.437 INFO    ] 200
[2026-06-27 14:29:17,439.439 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:29:17,463.463 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:29:17,510.510 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:29:17,511.511 INFO    ] No camera update needed
[2026-06-27 14:29:17,512.512 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:29:17,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:29:17,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:29:17,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:29:19,559.559 INFO    ] ================================================
[2026-06-27 14:29:19,575.575 INFO    ] Launching Daemon at Sat Jun 27 14:29:19 IST 2026
[2026-06-27 14:29:19,586.586 INFO    ] ================================================
[2026-06-27 14:29:19,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:29:19
[2026-06-27 14:29:20,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:29:20,405.405 INFO    ] Initializing speech engine...
[2026-06-27 14:29:20,409.409 INFO    ] 2026-06-27 14:29:20
[2026-06-27 14:29:20,612.612 INFO    ] 2026-06-27 14:29:20
[2026-06-27 14:29:20,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:29:20,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:29:20,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:29:21,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:29:21,168.168 INFO    ] time= 27/06/2026 14:29:21
[2026-06-27 14:29:21,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:29:21,173.173 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:29:21,262.262 INFO    ] No existing commands found in stream
[2026-06-27 14:29:26,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:29:26,277.277 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-27 14:29:27,565.565 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 14:29:27,566.566 INFO    ] Checking for system updates...
[2026-06-27 14:29:27,587.587 INFO    ] 200
[2026-06-27 14:29:27,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:29:27,621.621 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:29:27,622.622 INFO    ] No update needed
[2026-06-27 14:29:27,624.624 INFO    ] Checking for camera pi updates...
[2026-06-27 14:29:27,645.645 INFO    ] 200
[2026-06-27 14:29:27,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:29:27,669.669 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:29:27,813.813 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:29:27,814.814 INFO    ] No camera update needed
[2026-06-27 14:29:27,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:29:27,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:29:27,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:29:27,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:29:29,863.863 INFO    ] ================================================
[2026-06-27 14:29:29,879.879 INFO    ] Launching Daemon at Sat Jun 27 14:29:29 IST 2026
[2026-06-27 14:29:29,890.890 INFO    ] ================================================
[2026-06-27 14:29:30,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:29:30
[2026-06-27 14:29:30,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:29:30,705.705 INFO    ] Initializing speech engine...
[2026-06-27 14:29:30,710.710 INFO    ] 2026-06-27 14:29:30
[2026-06-27 14:29:30,915.915 INFO    ] 2026-06-27 14:29:30
[2026-06-27 14:29:30,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:29:31,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:29:31,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:29:31,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:29:31,356.356 INFO    ] time= 27/06/2026 14:29:31
[2026-06-27 14:29:31,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:29:31,359.359 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:29:31,449.449 INFO    ] No existing commands found in stream
[2026-06-27 14:29:36,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:29:36,476.476 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-27 14:29:39,507.507 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:29:39,509.509 INFO    ] Checking for system updates...
[2026-06-27 14:29:39,529.529 INFO    ] 200
[2026-06-27 14:29:39,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:29:39,561.561 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:29:39,562.562 INFO    ] No update needed
[2026-06-27 14:29:39,564.564 INFO    ] Checking for camera pi updates...
[2026-06-27 14:29:39,583.583 INFO    ] 200
[2026-06-27 14:29:39,585.585 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:29:39,608.608 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:29:39,634.634 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:29:39,635.635 INFO    ] No camera update needed
[2026-06-27 14:29:39,637.637 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:29:39,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:29:39,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:29:39,644.644 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:29:41,684.684 INFO    ] ================================================
[2026-06-27 14:29:41,699.699 INFO    ] Launching Daemon at Sat Jun 27 14:29:41 IST 2026
[2026-06-27 14:29:41,711.711 INFO    ] ================================================
[2026-06-27 14:29:42,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:29:42
[2026-06-27 14:29:42,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:29:42,525.525 INFO    ] Initializing speech engine...
[2026-06-27 14:29:42,534.534 INFO    ] 2026-06-27 14:29:42
[2026-06-27 14:29:42,743.743 INFO    ] 2026-06-27 14:29:42
[2026-06-27 14:29:42,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:29:42,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:29:42,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:29:43,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:29:43,190.190 INFO    ] time= 27/06/2026 14:29:43
[2026-06-27 14:29:43,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:29:43,197.197 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:29:43,313.313 INFO    ] No existing commands found in stream
[2026-06-27 14:29:48,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:29:48,326.326 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-27 14:29:49,015.015 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 14:29:49,016.016 INFO    ] Checking for system updates...
[2026-06-27 14:29:49,038.038 INFO    ] 200
[2026-06-27 14:29:49,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:29:49,072.072 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:29:49,074.074 INFO    ] No update needed
[2026-06-27 14:29:49,075.075 INFO    ] Checking for camera pi updates...
[2026-06-27 14:29:49,096.096 INFO    ] 200
[2026-06-27 14:29:49,097.097 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:29:49,120.120 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:29:49,168.168 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:29:49,169.169 INFO    ] No camera update needed
[2026-06-27 14:29:49,171.171 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:29:49,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:29:49,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:29:49,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:29:51,216.216 INFO    ] ================================================
[2026-06-27 14:29:51,232.232 INFO    ] Launching Daemon at Sat Jun 27 14:29:51 IST 2026
[2026-06-27 14:29:51,243.243 INFO    ] ================================================
[2026-06-27 14:29:51,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:29:51
[2026-06-27 14:29:51,943.943 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:29:52,085.085 INFO    ] Initializing speech engine...
[2026-06-27 14:29:52,089.089 INFO    ] 2026-06-27 14:29:52
[2026-06-27 14:29:52,293.293 INFO    ] 2026-06-27 14:29:52
[2026-06-27 14:29:52,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:29:52,506.506 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:29:52,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:29:52,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:29:52,734.734 INFO    ] time= 27/06/2026 14:29:52
[2026-06-27 14:29:52,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:29:52,741.741 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:29:52,808.808 INFO    ] No existing commands found in stream
[2026-06-27 14:29:57,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:29:57,825.825 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-27 14:29:58,946.946 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 14:29:58,948.948 INFO    ] Checking for system updates...
[2026-06-27 14:29:58,970.970 INFO    ] 200
[2026-06-27 14:29:58,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:29:59,006.006 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:29:59,007.007 INFO    ] No update needed
[2026-06-27 14:29:59,008.008 INFO    ] Checking for camera pi updates...
[2026-06-27 14:29:59,028.028 INFO    ] 200
[2026-06-27 14:29:59,029.029 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:29:59,052.052 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:29:59,100.100 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:29:59,101.101 INFO    ] No camera update needed
[2026-06-27 14:29:59,102.102 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:29:59,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:29:59,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:29:59,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:30:01,149.149 INFO    ] ================================================
[2026-06-27 14:30:01,165.165 INFO    ] Launching Daemon at Sat Jun 27 14:30:01 IST 2026
[2026-06-27 14:30:01,176.176 INFO    ] ================================================
[2026-06-27 14:30:01,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:30:01
[2026-06-27 14:30:02,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:30:02,579.579 INFO    ] Initializing speech engine...
[2026-06-27 14:30:02,582.582 INFO    ] 2026-06-27 14:30:02
[2026-06-27 14:30:02,867.867 INFO    ] 2026-06-27 14:30:02
[2026-06-27 14:30:02,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:30:03,128.128 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:30:03,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:30:03,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:30:03,394.394 INFO    ] time= 27/06/2026 14:30:03
[2026-06-27 14:30:03,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:30:03,421.421 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:30:03,517.517 INFO    ] No existing commands found in stream
[2026-06-27 14:30:08,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:30:08,530.530 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-27 14:30:12,975.975 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:30:12,976.976 INFO    ] Checking for system updates...
[2026-06-27 14:30:12,998.998 INFO    ] 200
[2026-06-27 14:30:12,999.999 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:30:13,029.029 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:30:13,031.031 INFO    ] No update needed
[2026-06-27 14:30:13,032.032 INFO    ] Checking for camera pi updates...
[2026-06-27 14:30:13,051.051 INFO    ] 200
[2026-06-27 14:30:13,053.053 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:30:13,078.078 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:30:13,118.118 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:30:13,119.119 INFO    ] No camera update needed
[2026-06-27 14:30:13,120.120 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:30:13,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:30:13,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:30:13,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:30:15,169.169 INFO    ] ================================================
[2026-06-27 14:30:15,185.185 INFO    ] Launching Daemon at Sat Jun 27 14:30:15 IST 2026
[2026-06-27 14:30:15,196.196 INFO    ] ================================================
[2026-06-27 14:30:15,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:30:15
[2026-06-27 14:30:15,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:30:16,000.000 INFO    ] Initializing speech engine...
[2026-06-27 14:30:16,005.005 INFO    ] 2026-06-27 14:30:16
[2026-06-27 14:30:16,212.212 INFO    ] 2026-06-27 14:30:16
[2026-06-27 14:30:16,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:30:16,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:30:16,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:30:16,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:30:16,656.656 INFO    ] time= 27/06/2026 14:30:16
[2026-06-27 14:30:16,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:30:16,664.664 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:30:16,914.914 INFO    ] No existing commands found in stream
[2026-06-27 14:30:21,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:30:21,927.927 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-27 14:30:23,926.926 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:30:23,927.927 INFO    ] Checking for system updates...
[2026-06-27 14:30:23,948.948 INFO    ] 200
[2026-06-27 14:30:23,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:30:23,980.980 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:30:23,981.981 INFO    ] No update needed
[2026-06-27 14:30:23,982.982 INFO    ] Checking for camera pi updates...
[2026-06-27 14:30:24,002.002 INFO    ] 200
[2026-06-27 14:30:24,003.003 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:30:24,027.027 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:30:24,070.070 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:30:24,071.071 INFO    ] No camera update needed
[2026-06-27 14:30:24,072.072 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:30:24,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:30:24,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:30:24,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:30:26,110.110 INFO    ] ================================================
[2026-06-27 14:30:26,119.119 INFO    ] Launching Daemon at Sat Jun 27 14:30:26 IST 2026
[2026-06-27 14:30:26,125.125 INFO    ] ================================================
[2026-06-27 14:30:26,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:30:26
[2026-06-27 14:30:26,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:30:26,955.955 INFO    ] Initializing speech engine...
[2026-06-27 14:30:26,960.960 INFO    ] 2026-06-27 14:30:26
[2026-06-27 14:30:27,166.166 INFO    ] 2026-06-27 14:30:27
[2026-06-27 14:30:27,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:30:27,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:30:27,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:30:27,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:30:27,614.614 INFO    ] time= 27/06/2026 14:30:27
[2026-06-27 14:30:27,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:30:27,617.617 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:30:27,685.685 INFO    ] No existing commands found in stream
[2026-06-27 14:30:32,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:30:32,717.717 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-27 14:30:35,747.747 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:30:35,748.748 INFO    ] Checking for system updates...
[2026-06-27 14:30:35,771.771 INFO    ] 200
[2026-06-27 14:30:35,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:30:35,803.803 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:30:35,805.805 INFO    ] No update needed
[2026-06-27 14:30:35,806.806 INFO    ] Checking for camera pi updates...
[2026-06-27 14:30:35,827.827 INFO    ] 200
[2026-06-27 14:30:35,828.828 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:30:35,854.854 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:30:35,903.903 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:30:35,904.904 INFO    ] No camera update needed
[2026-06-27 14:30:35,906.906 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:30:35,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:30:35,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:30:35,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:30:37,952.952 INFO    ] ================================================
[2026-06-27 14:30:37,967.967 INFO    ] Launching Daemon at Sat Jun 27 14:30:37 IST 2026
[2026-06-27 14:30:37,978.978 INFO    ] ================================================
[2026-06-27 14:30:38,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:30:38
[2026-06-27 14:30:38,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:30:38,792.792 INFO    ] Initializing speech engine...
[2026-06-27 14:30:38,805.805 INFO    ] 2026-06-27 14:30:38
[2026-06-27 14:30:39,020.020 INFO    ] 2026-06-27 14:30:38
[2026-06-27 14:30:39,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:30:39,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:30:39,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:30:39,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:30:39,477.477 INFO    ] time= 27/06/2026 14:30:39
[2026-06-27 14:30:39,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:30:39,481.481 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:30:39,599.599 INFO    ] No existing commands found in stream
[2026-06-27 14:30:44,607.607 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:30:45,572.572 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-27 14:30:48,366.366 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:30:48,367.367 INFO    ] Checking for system updates...
[2026-06-27 14:30:48,388.388 INFO    ] 200
[2026-06-27 14:30:48,390.390 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:30:48,421.421 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:30:48,422.422 INFO    ] No update needed
[2026-06-27 14:30:48,424.424 INFO    ] Checking for camera pi updates...
[2026-06-27 14:30:48,445.445 INFO    ] 200
[2026-06-27 14:30:48,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:30:48,470.470 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:30:48,516.516 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:30:48,518.518 INFO    ] No camera update needed
[2026-06-27 14:30:48,519.519 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:30:48,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:30:48,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:30:48,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:30:50,568.568 INFO    ] ================================================
[2026-06-27 14:30:50,586.586 INFO    ] Launching Daemon at Sat Jun 27 14:30:50 IST 2026
[2026-06-27 14:30:50,599.599 INFO    ] ================================================
[2026-06-27 14:30:50,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:30:50
[2026-06-27 14:30:51,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:30:51,381.381 INFO    ] Initializing speech engine...
[2026-06-27 14:30:51,386.386 INFO    ] 2026-06-27 14:30:51
[2026-06-27 14:30:51,580.580 INFO    ] 2026-06-27 14:30:51
[2026-06-27 14:30:51,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:30:51,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:30:51,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:30:52,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:30:52,032.032 INFO    ] time= 27/06/2026 14:30:52
[2026-06-27 14:30:52,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:30:52,069.069 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:30:52,183.183 INFO    ] No existing commands found in stream
[2026-06-27 14:30:57,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:30:57,200.200 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-27 14:30:59,083.083 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 14:30:59,084.084 INFO    ] Checking for system updates...
[2026-06-27 14:30:59,106.106 INFO    ] 200
[2026-06-27 14:30:59,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:30:59,139.139 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:30:59,140.140 INFO    ] No update needed
[2026-06-27 14:30:59,142.142 INFO    ] Checking for camera pi updates...
[2026-06-27 14:30:59,165.165 INFO    ] 200
[2026-06-27 14:30:59,166.166 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:30:59,190.190 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:30:59,232.232 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:30:59,233.233 INFO    ] No camera update needed
[2026-06-27 14:30:59,234.234 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:30:59,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:30:59,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:30:59,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:31:01,278.278 INFO    ] ================================================
[2026-06-27 14:31:01,294.294 INFO    ] Launching Daemon at Sat Jun 27 14:31:01 IST 2026
[2026-06-27 14:31:01,306.306 INFO    ] ================================================
[2026-06-27 14:31:01,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:31:01
[2026-06-27 14:31:02,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:31:02,313.313 INFO    ] Initializing speech engine...
[2026-06-27 14:31:02,327.327 INFO    ] 2026-06-27 14:31:02
[2026-06-27 14:31:02,551.551 INFO    ] 2026-06-27 14:31:02
[2026-06-27 14:31:02,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:31:02,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:31:02,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:31:02,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:31:03,003.003 INFO    ] time= 27/06/2026 14:31:03
[2026-06-27 14:31:03,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:31:03,007.007 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:31:03,124.124 INFO    ] No existing commands found in stream
[2026-06-27 14:31:08,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:31:08,137.137 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-27 14:31:11,667.667 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 14:31:11,669.669 INFO    ] Checking for system updates...
[2026-06-27 14:31:11,691.691 INFO    ] 200
[2026-06-27 14:31:11,693.693 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:31:11,729.729 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:31:11,730.730 INFO    ] No update needed
[2026-06-27 14:31:11,732.732 INFO    ] Checking for camera pi updates...
[2026-06-27 14:31:11,755.755 INFO    ] 200
[2026-06-27 14:31:11,757.757 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:31:11,780.780 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:31:11,826.826 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:31:11,828.828 INFO    ] No camera update needed
[2026-06-27 14:31:11,829.829 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:31:11,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:31:11,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:31:11,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:31:13,877.877 INFO    ] ================================================
[2026-06-27 14:31:13,893.893 INFO    ] Launching Daemon at Sat Jun 27 14:31:13 IST 2026
[2026-06-27 14:31:13,904.904 INFO    ] ================================================
[2026-06-27 14:31:14,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:31:14
[2026-06-27 14:31:14,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:31:14,713.713 INFO    ] Initializing speech engine...
[2026-06-27 14:31:14,717.717 INFO    ] 2026-06-27 14:31:14
[2026-06-27 14:31:14,921.921 INFO    ] 2026-06-27 14:31:14
[2026-06-27 14:31:14,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:31:15,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:31:15,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:31:15,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:31:15,360.360 INFO    ] time= 27/06/2026 14:31:15
[2026-06-27 14:31:15,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:31:15,368.368 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:31:15,435.435 INFO    ] No existing commands found in stream
[2026-06-27 14:31:20,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:31:20,470.470 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-27 14:31:22,333.333 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 14:31:22,335.335 INFO    ] Checking for system updates...
[2026-06-27 14:31:22,356.356 INFO    ] 200
[2026-06-27 14:31:22,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:31:22,388.388 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:31:22,390.390 INFO    ] No update needed
[2026-06-27 14:31:22,391.391 INFO    ] Checking for camera pi updates...
[2026-06-27 14:31:22,411.411 INFO    ] 200
[2026-06-27 14:31:22,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:31:22,435.435 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:31:22,474.474 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:31:22,476.476 INFO    ] No camera update needed
[2026-06-27 14:31:22,477.477 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:31:22,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:31:22,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:31:22,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:31:24,526.526 INFO    ] ================================================
[2026-06-27 14:31:24,545.545 INFO    ] Launching Daemon at Sat Jun 27 14:31:24 IST 2026
[2026-06-27 14:31:24,556.556 INFO    ] ================================================
[2026-06-27 14:31:24,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:31:24
[2026-06-27 14:31:25,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:31:25,393.393 INFO    ] Initializing speech engine...
[2026-06-27 14:31:25,403.403 INFO    ] 2026-06-27 14:31:25
[2026-06-27 14:31:25,614.614 INFO    ] 2026-06-27 14:31:25
[2026-06-27 14:31:25,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:31:25,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:31:25,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:31:25,994.994 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:31:26,043.043 INFO    ] time= 27/06/2026 14:31:26
[2026-06-27 14:31:26,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:31:26,072.072 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:31:26,190.190 INFO    ] No existing commands found in stream
[2026-06-27 14:31:31,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:31:31,201.201 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-27 14:31:32,307.307 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:31:32,309.309 INFO    ] Checking for system updates...
[2026-06-27 14:31:32,331.331 INFO    ] 200
[2026-06-27 14:31:32,333.333 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:31:32,366.366 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:31:32,367.367 INFO    ] No update needed
[2026-06-27 14:31:32,369.369 INFO    ] Checking for camera pi updates...
[2026-06-27 14:31:32,388.388 INFO    ] 200
[2026-06-27 14:31:32,389.389 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:31:32,415.415 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:31:32,445.445 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:31:32,446.446 INFO    ] No camera update needed
[2026-06-27 14:31:32,447.447 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:31:32,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:31:32,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:31:32,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:31:34,493.493 INFO    ] ================================================
[2026-06-27 14:31:34,510.510 INFO    ] Launching Daemon at Sat Jun 27 14:31:34 IST 2026
[2026-06-27 14:31:34,522.522 INFO    ] ================================================
[2026-06-27 14:31:34,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:31:34
[2026-06-27 14:31:35,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:31:35,326.326 INFO    ] Initializing speech engine...
[2026-06-27 14:31:35,336.336 INFO    ] 2026-06-27 14:31:35
[2026-06-27 14:31:35,542.542 INFO    ] 2026-06-27 14:31:35
[2026-06-27 14:31:35,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:31:35,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:31:35,768.768 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:31:35,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:31:35,991.991 INFO    ] time= 27/06/2026 14:31:35
[2026-06-27 14:31:35,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:31:35,995.995 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:31:36,088.088 INFO    ] No existing commands found in stream
[2026-06-27 14:31:41,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:31:41,106.106 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-27 14:31:43,596.596 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 14:31:43,598.598 INFO    ] Checking for system updates...
[2026-06-27 14:31:43,619.619 INFO    ] 200
[2026-06-27 14:31:43,620.620 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:31:43,652.652 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:31:43,653.653 INFO    ] No update needed
[2026-06-27 14:31:43,655.655 INFO    ] Checking for camera pi updates...
[2026-06-27 14:31:43,675.675 INFO    ] 200
[2026-06-27 14:31:43,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:31:43,701.701 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:31:43,743.743 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:31:43,745.745 INFO    ] No camera update needed
[2026-06-27 14:31:43,746.746 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:31:43,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:31:43,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:31:43,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:31:45,797.797 INFO    ] ================================================
[2026-06-27 14:31:45,814.814 INFO    ] Launching Daemon at Sat Jun 27 14:31:45 IST 2026
[2026-06-27 14:31:45,825.825 INFO    ] ================================================
[2026-06-27 14:31:46,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:31:46
[2026-06-27 14:31:46,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:31:46,648.648 INFO    ] Initializing speech engine...
[2026-06-27 14:31:46,651.651 INFO    ] 2026-06-27 14:31:46
[2026-06-27 14:31:46,856.856 INFO    ] 2026-06-27 14:31:46
[2026-06-27 14:31:46,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:31:47,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:31:47,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:31:47,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:31:47,418.418 INFO    ] time= 27/06/2026 14:31:47
[2026-06-27 14:31:47,420.420 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:31:47,423.423 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:31:47,511.511 INFO    ] No existing commands found in stream
[2026-06-27 14:31:52,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:31:52,524.524 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-27 14:31:53,152.152 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 14:31:53,154.154 INFO    ] Checking for system updates...
[2026-06-27 14:31:53,176.176 INFO    ] 200
[2026-06-27 14:31:53,177.177 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:31:53,210.210 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:31:53,212.212 INFO    ] No update needed
[2026-06-27 14:31:53,213.213 INFO    ] Checking for camera pi updates...
[2026-06-27 14:31:53,234.234 INFO    ] 200
[2026-06-27 14:31:53,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:31:53,261.261 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:31:53,367.367 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:31:53,368.368 INFO    ] No camera update needed
[2026-06-27 14:31:53,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:31:53,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:31:53,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:31:53,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:31:55,415.415 INFO    ] ================================================
[2026-06-27 14:31:55,431.431 INFO    ] Launching Daemon at Sat Jun 27 14:31:55 IST 2026
[2026-06-27 14:31:55,443.443 INFO    ] ================================================
[2026-06-27 14:31:55,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:31:55
[2026-06-27 14:31:56,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:31:56,289.289 INFO    ] Initializing speech engine...
[2026-06-27 14:31:56,296.296 INFO    ] 2026-06-27 14:31:56
[2026-06-27 14:31:56,505.505 INFO    ] 2026-06-27 14:31:56
[2026-06-27 14:31:56,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:31:56,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:31:56,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:31:56,953.953 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:31:56,959.959 INFO    ] time= 27/06/2026 14:31:56
[2026-06-27 14:31:56,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:31:56,962.962 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:31:57,081.081 INFO    ] No existing commands found in stream
[2026-06-27 14:32:02,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:32:02,093.093 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-27 14:32:05,043.043 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:32:05,045.045 INFO    ] Checking for system updates...
[2026-06-27 14:32:05,067.067 INFO    ] 200
[2026-06-27 14:32:05,068.068 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:32:05,099.099 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:32:05,100.100 INFO    ] No update needed
[2026-06-27 14:32:05,101.101 INFO    ] Checking for camera pi updates...
[2026-06-27 14:32:05,121.121 INFO    ] 200
[2026-06-27 14:32:05,122.122 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:32:05,146.146 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:32:05,193.193 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:32:05,195.195 INFO    ] No camera update needed
[2026-06-27 14:32:05,196.196 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:32:05,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:32:05,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:32:05,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:32:07,242.242 INFO    ] ================================================
[2026-06-27 14:32:07,257.257 INFO    ] Launching Daemon at Sat Jun 27 14:32:07 IST 2026
[2026-06-27 14:32:07,269.269 INFO    ] ================================================
[2026-06-27 14:32:07,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:32:07
[2026-06-27 14:32:07,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:32:08,054.054 INFO    ] Initializing speech engine...
[2026-06-27 14:32:08,062.062 INFO    ] 2026-06-27 14:32:08
[2026-06-27 14:32:08,270.270 INFO    ] 2026-06-27 14:32:08
[2026-06-27 14:32:08,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:32:08,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:32:08,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:32:08,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:32:08,714.714 INFO    ] time= 27/06/2026 14:32:08
[2026-06-27 14:32:08,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:32:08,722.722 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:32:08,790.790 INFO    ] No existing commands found in stream
[2026-06-27 14:32:13,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:32:13,817.817 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-27 14:32:18,281.281 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:32:18,283.283 INFO    ] Checking for system updates...
[2026-06-27 14:32:18,306.306 INFO    ] 200
[2026-06-27 14:32:18,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:32:18,340.340 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:32:18,341.341 INFO    ] No update needed
[2026-06-27 14:32:18,342.342 INFO    ] Checking for camera pi updates...
[2026-06-27 14:32:18,363.363 INFO    ] 200
[2026-06-27 14:32:18,365.365 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:32:18,389.389 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:32:18,435.435 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:32:18,437.437 INFO    ] No camera update needed
[2026-06-27 14:32:18,438.438 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:32:18,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:32:18,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:32:18,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:32:20,486.486 INFO    ] ================================================
[2026-06-27 14:32:20,502.502 INFO    ] Launching Daemon at Sat Jun 27 14:32:20 IST 2026
[2026-06-27 14:32:20,512.512 INFO    ] ================================================
[2026-06-27 14:32:20,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:32:20
[2026-06-27 14:32:21,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:32:21,321.321 INFO    ] Initializing speech engine...
[2026-06-27 14:32:21,326.326 INFO    ] 2026-06-27 14:32:21
[2026-06-27 14:32:21,531.531 INFO    ] 2026-06-27 14:32:21
[2026-06-27 14:32:21,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:32:21,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:32:21,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:32:21,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:32:21,974.974 INFO    ] time= 27/06/2026 14:32:21
[2026-06-27 14:32:21,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:32:21,977.977 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:32:22,067.067 INFO    ] No existing commands found in stream
[2026-06-27 14:32:27,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:32:27,083.083 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-27 14:32:27,752.752 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 14:32:27,754.754 INFO    ] Checking for system updates...
[2026-06-27 14:32:27,775.775 INFO    ] 200
[2026-06-27 14:32:27,776.776 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:32:27,809.809 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:32:27,810.810 INFO    ] No update needed
[2026-06-27 14:32:27,812.812 INFO    ] Checking for camera pi updates...
[2026-06-27 14:32:27,832.832 INFO    ] 200
[2026-06-27 14:32:27,834.834 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:32:27,857.857 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:32:27,904.904 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:32:27,905.905 INFO    ] No camera update needed
[2026-06-27 14:32:27,907.907 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:32:27,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:32:27,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:32:27,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:32:29,953.953 INFO    ] ================================================
[2026-06-27 14:32:29,968.968 INFO    ] Launching Daemon at Sat Jun 27 14:32:29 IST 2026
[2026-06-27 14:32:29,980.980 INFO    ] ================================================
[2026-06-27 14:32:30,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:32:30
[2026-06-27 14:32:30,618.618 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:32:30,762.762 INFO    ] Initializing speech engine...
[2026-06-27 14:32:30,768.768 INFO    ] 2026-06-27 14:32:30
[2026-06-27 14:32:30,975.975 INFO    ] 2026-06-27 14:32:30
[2026-06-27 14:32:31,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:32:31,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:32:31,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:32:31,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:32:31,494.494 INFO    ] time= 27/06/2026 14:32:31
[2026-06-27 14:32:31,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:32:31,522.522 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:32:31,620.620 INFO    ] No existing commands found in stream
[2026-06-27 14:32:36,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:32:36,633.633 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-27 14:32:40,791.791 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 14:32:40,793.793 INFO    ] Checking for system updates...
[2026-06-27 14:32:40,817.817 INFO    ] 200
[2026-06-27 14:32:40,818.818 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:32:40,851.851 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:32:40,852.852 INFO    ] No update needed
[2026-06-27 14:32:40,854.854 INFO    ] Checking for camera pi updates...
[2026-06-27 14:32:40,874.874 INFO    ] 200
[2026-06-27 14:32:40,876.876 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:32:40,900.900 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:32:40,945.945 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:32:40,947.947 INFO    ] No camera update needed
[2026-06-27 14:32:40,948.948 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:32:40,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:32:40,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:32:40,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:32:43,996.996 INFO    ] ================================================
[2026-06-27 14:32:43,012.012 INFO    ] Launching Daemon at Sat Jun 27 14:32:43 IST 2026
[2026-06-27 14:32:43,024.024 INFO    ] ================================================
[2026-06-27 14:32:43,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:32:43
[2026-06-27 14:32:43,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:32:43,818.818 INFO    ] Initializing speech engine...
[2026-06-27 14:32:43,823.823 INFO    ] 2026-06-27 14:32:43
[2026-06-27 14:32:44,031.031 INFO    ] 2026-06-27 14:32:44
[2026-06-27 14:32:44,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:32:44,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:32:44,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:32:44,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:32:44,478.478 INFO    ] time= 27/06/2026 14:32:44
[2026-06-27 14:32:44,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:32:44,485.485 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:32:44,603.603 INFO    ] No existing commands found in stream
[2026-06-27 14:32:49,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:32:49,615.615 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-27 14:32:52,634.634 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 14:32:52,636.636 INFO    ] Checking for system updates...
[2026-06-27 14:32:52,657.657 INFO    ] 200
[2026-06-27 14:32:52,659.659 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:32:52,689.689 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:32:52,690.690 INFO    ] No update needed
[2026-06-27 14:32:52,691.691 INFO    ] Checking for camera pi updates...
[2026-06-27 14:32:52,710.710 INFO    ] 200
[2026-06-27 14:32:52,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:32:52,737.737 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:32:52,785.785 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:32:52,786.786 INFO    ] No camera update needed
[2026-06-27 14:32:52,787.787 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:32:52,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:32:52,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:32:52,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:32:54,834.834 INFO    ] ================================================
[2026-06-27 14:32:54,850.850 INFO    ] Launching Daemon at Sat Jun 27 14:32:54 IST 2026
[2026-06-27 14:32:54,861.861 INFO    ] ================================================
[2026-06-27 14:32:55,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:32:55
[2026-06-27 14:32:55,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:32:55,706.706 INFO    ] Initializing speech engine...
[2026-06-27 14:32:55,714.714 INFO    ] 2026-06-27 14:32:55
[2026-06-27 14:32:55,927.927 INFO    ] 2026-06-27 14:32:55
[2026-06-27 14:32:55,957.957 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:32:56,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:32:56,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:32:56,319.319 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:32:56,369.369 INFO    ] time= 27/06/2026 14:32:56
[2026-06-27 14:32:56,374.374 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:32:56,381.381 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:32:56,448.448 INFO    ] No existing commands found in stream
[2026-06-27 14:33:01,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:33:01,466.466 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-27 14:33:04,586.586 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 14:33:04,588.588 INFO    ] Checking for system updates...
[2026-06-27 14:33:04,610.610 INFO    ] 200
[2026-06-27 14:33:04,611.611 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:33:04,648.648 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:33:04,650.650 INFO    ] No update needed
[2026-06-27 14:33:04,651.651 INFO    ] Checking for camera pi updates...
[2026-06-27 14:33:04,674.674 INFO    ] 200
[2026-06-27 14:33:04,676.676 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:33:04,701.701 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:33:04,754.754 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:33:04,756.756 INFO    ] No camera update needed
[2026-06-27 14:33:04,757.757 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:33:04,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:33:04,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:33:04,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:33:06,804.804 INFO    ] ================================================
[2026-06-27 14:33:06,819.819 INFO    ] Launching Daemon at Sat Jun 27 14:33:06 IST 2026
[2026-06-27 14:33:06,831.831 INFO    ] ================================================
[2026-06-27 14:33:07,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:33:07
[2026-06-27 14:33:07,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:33:07,672.672 INFO    ] Initializing speech engine...
[2026-06-27 14:33:07,676.676 INFO    ] 2026-06-27 14:33:07
[2026-06-27 14:33:07,887.887 INFO    ] 2026-06-27 14:33:07
[2026-06-27 14:33:07,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:33:08,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:33:08,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:33:08,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:33:08,405.405 INFO    ] time= 27/06/2026 14:33:08
[2026-06-27 14:33:08,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:33:08,432.432 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:33:08,531.531 INFO    ] No existing commands found in stream
[2026-06-27 14:33:13,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:33:13,545.545 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-27 14:33:15,786.786 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 14:33:15,788.788 INFO    ] Checking for system updates...
[2026-06-27 14:33:15,810.810 INFO    ] 200
[2026-06-27 14:33:15,811.811 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:33:15,842.842 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:33:15,844.844 INFO    ] No update needed
[2026-06-27 14:33:15,845.845 INFO    ] Checking for camera pi updates...
[2026-06-27 14:33:15,865.865 INFO    ] 200
[2026-06-27 14:33:15,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:33:15,890.890 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:33:15,939.939 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:33:15,941.941 INFO    ] No camera update needed
[2026-06-27 14:33:15,942.942 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:33:15,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:33:15,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:33:15,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:33:17,988.988 INFO    ] ================================================
[2026-06-27 14:33:18,004.004 INFO    ] Launching Daemon at Sat Jun 27 14:33:17 IST 2026
[2026-06-27 14:33:18,015.015 INFO    ] ================================================
[2026-06-27 14:33:18,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:33:18
[2026-06-27 14:33:18,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:33:18,886.886 INFO    ] Initializing speech engine...
[2026-06-27 14:33:18,889.889 INFO    ] 2026-06-27 14:33:18
[2026-06-27 14:33:19,098.098 INFO    ] 2026-06-27 14:33:19
[2026-06-27 14:33:19,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:33:19,314.314 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:33:19,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:33:19,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:33:19,541.541 INFO    ] time= 27/06/2026 14:33:19
[2026-06-27 14:33:19,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:33:19,549.549 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:33:19,640.640 INFO    ] No existing commands found in stream
[2026-06-27 14:33:24,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:33:24,658.658 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-27 14:33:27,031.031 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 14:33:27,032.032 INFO    ] Checking for system updates...
[2026-06-27 14:33:27,055.055 INFO    ] 200
[2026-06-27 14:33:27,056.056 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:33:27,094.094 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:33:27,096.096 INFO    ] No update needed
[2026-06-27 14:33:27,098.098 INFO    ] Checking for camera pi updates...
[2026-06-27 14:33:27,118.118 INFO    ] 200
[2026-06-27 14:33:27,119.119 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:33:27,145.145 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:33:27,192.192 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:33:27,193.193 INFO    ] No camera update needed
[2026-06-27 14:33:27,195.195 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:33:27,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:33:27,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:33:27,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:33:29,240.240 INFO    ] ================================================
[2026-06-27 14:33:29,258.258 INFO    ] Launching Daemon at Sat Jun 27 14:33:29 IST 2026
[2026-06-27 14:33:29,269.269 INFO    ] ================================================
[2026-06-27 14:33:29,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:33:29
[2026-06-27 14:33:29,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:33:30,063.063 INFO    ] Initializing speech engine...
[2026-06-27 14:33:30,068.068 INFO    ] 2026-06-27 14:33:30
[2026-06-27 14:33:30,272.272 INFO    ] 2026-06-27 14:33:30
[2026-06-27 14:33:30,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:33:30,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:33:30,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:33:30,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:33:30,717.717 INFO    ] time= 27/06/2026 14:33:30
[2026-06-27 14:33:30,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:33:30,724.724 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:33:30,815.815 INFO    ] No existing commands found in stream
[2026-06-27 14:33:35,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:33:35,827.827 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-27 14:33:39,705.705 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 14:33:39,707.707 INFO    ] Checking for system updates...
[2026-06-27 14:33:39,730.730 INFO    ] 200
[2026-06-27 14:33:39,731.731 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:33:39,762.762 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:33:39,764.764 INFO    ] No update needed
[2026-06-27 14:33:39,765.765 INFO    ] Checking for camera pi updates...
[2026-06-27 14:33:39,785.785 INFO    ] 200
[2026-06-27 14:33:39,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:33:39,811.811 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:33:39,950.950 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:33:39,951.951 INFO    ] No camera update needed
[2026-06-27 14:33:39,953.953 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:33:39,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:33:39,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:33:39,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:33:42,998.998 INFO    ] ================================================
[2026-06-27 14:33:42,014.014 INFO    ] Launching Daemon at Sat Jun 27 14:33:42 IST 2026
[2026-06-27 14:33:42,025.025 INFO    ] ================================================
[2026-06-27 14:33:42,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:33:42
[2026-06-27 14:33:42,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:33:42,884.884 INFO    ] Initializing speech engine...
[2026-06-27 14:33:42,888.888 INFO    ] 2026-06-27 14:33:42
[2026-06-27 14:33:43,096.096 INFO    ] 2026-06-27 14:33:43
[2026-06-27 14:33:43,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:33:43,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:33:43,456.456 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:33:43,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:33:43,608.608 INFO    ] time= 27/06/2026 14:33:43
[2026-06-27 14:33:43,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:33:43,635.635 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:33:43,742.742 INFO    ] No existing commands found in stream
[2026-06-27 14:33:48,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:33:48,756.756 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-27 14:33:52,973.973 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 14:33:52,974.974 INFO    ] Checking for system updates...
[2026-06-27 14:33:52,996.996 INFO    ] 200
[2026-06-27 14:33:52,997.997 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:33:53,028.028 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:33:53,030.030 INFO    ] No update needed
[2026-06-27 14:33:53,031.031 INFO    ] Checking for camera pi updates...
[2026-06-27 14:33:53,051.051 INFO    ] 200
[2026-06-27 14:33:53,052.052 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:33:53,078.078 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:33:53,125.125 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:33:53,126.126 INFO    ] No camera update needed
[2026-06-27 14:33:53,127.127 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:33:53,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:33:53,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:33:53,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:33:55,175.175 INFO    ] ================================================
[2026-06-27 14:33:55,190.190 INFO    ] Launching Daemon at Sat Jun 27 14:33:55 IST 2026
[2026-06-27 14:33:55,201.201 INFO    ] ================================================
[2026-06-27 14:33:55,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:33:55
[2026-06-27 14:33:55,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:33:55,989.989 INFO    ] Initializing speech engine...
[2026-06-27 14:33:55,999.999 INFO    ] 2026-06-27 14:33:55
[2026-06-27 14:33:56,202.202 INFO    ] 2026-06-27 14:33:56
[2026-06-27 14:33:56,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:33:56,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:33:56,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:33:56,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:33:56,643.643 INFO    ] time= 27/06/2026 14:33:56
[2026-06-27 14:33:56,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:33:56,650.650 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:33:56,718.718 INFO    ] No existing commands found in stream
[2026-06-27 14:34:01,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:34:01,728.728 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-27 14:34:03,407.407 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 14:34:03,408.408 INFO    ] Checking for system updates...
[2026-06-27 14:34:03,430.430 INFO    ] 200
[2026-06-27 14:34:03,431.431 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:34:03,464.464 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:34:03,465.465 INFO    ] No update needed
[2026-06-27 14:34:03,466.466 INFO    ] Checking for camera pi updates...
[2026-06-27 14:34:03,487.487 INFO    ] 200
[2026-06-27 14:34:03,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:34:03,512.512 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:34:03,550.550 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:34:03,551.551 INFO    ] No camera update needed
[2026-06-27 14:34:03,552.552 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:34:03,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:34:03,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:34:03,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:34:05,600.600 INFO    ] ================================================
[2026-06-27 14:34:05,615.615 INFO    ] Launching Daemon at Sat Jun 27 14:34:05 IST 2026
[2026-06-27 14:34:05,627.627 INFO    ] ================================================
[2026-06-27 14:34:05,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:34:05
[2026-06-27 14:34:06,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:34:06,429.429 INFO    ] Initializing speech engine...
[2026-06-27 14:34:06,433.433 INFO    ] 2026-06-27 14:34:06
[2026-06-27 14:34:06,661.661 INFO    ] 2026-06-27 14:34:06
[2026-06-27 14:34:06,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:34:06,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:34:06,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:34:07,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:34:07,110.110 INFO    ] time= 27/06/2026 14:34:07
[2026-06-27 14:34:07,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:34:07,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:34:07,208.208 INFO    ] No existing commands found in stream
[2026-06-27 14:34:12,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:34:12,219.219 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-27 14:34:15,811.811 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:34:15,812.812 INFO    ] Checking for system updates...
[2026-06-27 14:34:15,835.835 INFO    ] 200
[2026-06-27 14:34:15,836.836 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:34:15,868.868 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:34:15,870.870 INFO    ] No update needed
[2026-06-27 14:34:15,871.871 INFO    ] Checking for camera pi updates...
[2026-06-27 14:34:15,890.890 INFO    ] 200
[2026-06-27 14:34:15,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:34:15,915.915 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:34:15,961.961 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:34:15,962.962 INFO    ] No camera update needed
[2026-06-27 14:34:15,963.963 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:34:15,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:34:15,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:34:15,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:34:18,016.016 INFO    ] ================================================
[2026-06-27 14:34:18,031.031 INFO    ] Launching Daemon at Sat Jun 27 14:34:18 IST 2026
[2026-06-27 14:34:18,042.042 INFO    ] ================================================
[2026-06-27 14:34:18,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:34:18
[2026-06-27 14:34:18,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:34:18,830.830 INFO    ] Initializing speech engine...
[2026-06-27 14:34:18,835.835 INFO    ] 2026-06-27 14:34:18
[2026-06-27 14:34:19,042.042 INFO    ] 2026-06-27 14:34:19
[2026-06-27 14:34:19,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:34:19,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:34:19,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:34:19,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:34:19,467.467 INFO    ] time= 27/06/2026 14:34:19
[2026-06-27 14:34:19,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:34:19,496.496 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:34:19,563.563 INFO    ] No existing commands found in stream
[2026-06-27 14:34:24,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:34:24,575.575 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-27 14:34:28,650.650 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:34:28,652.652 INFO    ] Checking for system updates...
[2026-06-27 14:34:28,674.674 INFO    ] 200
[2026-06-27 14:34:28,675.675 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:34:28,708.708 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:34:28,709.709 INFO    ] No update needed
[2026-06-27 14:34:28,711.711 INFO    ] Checking for camera pi updates...
[2026-06-27 14:34:28,731.731 INFO    ] 200
[2026-06-27 14:34:28,733.733 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:34:28,759.759 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:34:28,806.806 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:34:28,808.808 INFO    ] No camera update needed
[2026-06-27 14:34:28,809.809 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:34:28,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:34:28,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:34:28,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:34:30,843.843 INFO    ] ================================================
[2026-06-27 14:34:30,852.852 INFO    ] Launching Daemon at Sat Jun 27 14:34:30 IST 2026
[2026-06-27 14:34:30,858.858 INFO    ] ================================================
[2026-06-27 14:34:31,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:34:31
[2026-06-27 14:34:31,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:34:31,670.670 INFO    ] Initializing speech engine...
[2026-06-27 14:34:31,680.680 INFO    ] 2026-06-27 14:34:31
[2026-06-27 14:34:31,877.877 INFO    ] 2026-06-27 14:34:31
[2026-06-27 14:34:31,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:34:32,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:34:32,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:34:32,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:34:32,357.357 INFO    ] time= 27/06/2026 14:34:32
[2026-06-27 14:34:32,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:34:32,387.387 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:34:32,478.478 INFO    ] No existing commands found in stream
[2026-06-27 14:34:37,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:34:37,495.495 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-27 14:34:40,599.599 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 14:34:40,601.601 INFO    ] Checking for system updates...
[2026-06-27 14:34:40,623.623 INFO    ] 200
[2026-06-27 14:34:40,624.624 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:34:40,658.658 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:34:40,659.659 INFO    ] No update needed
[2026-06-27 14:34:40,661.661 INFO    ] Checking for camera pi updates...
[2026-06-27 14:34:40,680.680 INFO    ] 200
[2026-06-27 14:34:40,681.681 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:34:40,704.704 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:34:40,758.758 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:34:40,759.759 INFO    ] No camera update needed
[2026-06-27 14:34:40,761.761 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:34:40,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:34:40,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:34:40,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:34:42,807.807 INFO    ] ================================================
[2026-06-27 14:34:42,823.823 INFO    ] Launching Daemon at Sat Jun 27 14:34:42 IST 2026
[2026-06-27 14:34:42,835.835 INFO    ] ================================================
[2026-06-27 14:34:43,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:34:43
[2026-06-27 14:34:43,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:34:43,680.680 INFO    ] Initializing speech engine...
[2026-06-27 14:34:43,686.686 INFO    ] 2026-06-27 14:34:43
[2026-06-27 14:34:43,894.894 INFO    ] 2026-06-27 14:34:43
[2026-06-27 14:34:43,923.923 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:34:44,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:34:44,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:34:44,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:34:44,400.400 INFO    ] time= 27/06/2026 14:34:44
[2026-06-27 14:34:44,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:34:44,427.427 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:34:44,526.526 INFO    ] No existing commands found in stream
[2026-06-27 14:34:49,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:34:49,539.539 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-27 14:34:53,621.621 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 14:34:53,622.622 INFO    ] Checking for system updates...
[2026-06-27 14:34:53,645.645 INFO    ] 200
[2026-06-27 14:34:53,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:34:53,676.676 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:34:53,678.678 INFO    ] No update needed
[2026-06-27 14:34:53,679.679 INFO    ] Checking for camera pi updates...
[2026-06-27 14:34:53,702.702 INFO    ] 200
[2026-06-27 14:34:53,703.703 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:34:53,726.726 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:34:53,773.773 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:34:53,775.775 INFO    ] No camera update needed
[2026-06-27 14:34:53,776.776 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:34:53,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:34:53,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:34:53,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:34:55,821.821 INFO    ] ================================================
[2026-06-27 14:34:55,837.837 INFO    ] Launching Daemon at Sat Jun 27 14:34:55 IST 2026
[2026-06-27 14:34:55,848.848 INFO    ] ================================================
[2026-06-27 14:34:56,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:34:56
[2026-06-27 14:34:56,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:34:56,725.725 INFO    ] Initializing speech engine...
[2026-06-27 14:34:56,729.729 INFO    ] 2026-06-27 14:34:56
[2026-06-27 14:34:56,933.933 INFO    ] 2026-06-27 14:34:56
[2026-06-27 14:34:56,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:34:57,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:34:57,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:34:57,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:34:57,381.381 INFO    ] time= 27/06/2026 14:34:57
[2026-06-27 14:34:57,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:34:57,389.389 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:34:57,455.455 INFO    ] No existing commands found in stream
[2026-06-27 14:35:02,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:35:02,467.467 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-27 14:35:04,181.181 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 14:35:04,183.183 INFO    ] Checking for system updates...
[2026-06-27 14:35:04,207.207 INFO    ] 200
[2026-06-27 14:35:04,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:35:04,242.242 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:35:04,244.244 INFO    ] No update needed
[2026-06-27 14:35:04,245.245 INFO    ] Checking for camera pi updates...
[2026-06-27 14:35:04,267.267 INFO    ] 200
[2026-06-27 14:35:04,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:35:04,292.292 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:35:04,338.338 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:35:04,339.339 INFO    ] No camera update needed
[2026-06-27 14:35:04,341.341 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:35:04,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:35:04,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:35:04,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:35:06,389.389 INFO    ] ================================================
[2026-06-27 14:35:06,405.405 INFO    ] Launching Daemon at Sat Jun 27 14:35:06 IST 2026
[2026-06-27 14:35:06,416.416 INFO    ] ================================================
[2026-06-27 14:35:06,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:35:06
[2026-06-27 14:35:07,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:35:07,240.240 INFO    ] Initializing speech engine...
[2026-06-27 14:35:07,245.245 INFO    ] 2026-06-27 14:35:07
[2026-06-27 14:35:07,449.449 INFO    ] 2026-06-27 14:35:07
[2026-06-27 14:35:07,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:35:07,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:35:07,663.663 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:35:07,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:35:07,886.886 INFO    ] time= 27/06/2026 14:35:07
[2026-06-27 14:35:07,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:35:07,893.893 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:35:07,983.983 INFO    ] No existing commands found in stream
[2026-06-27 14:35:12,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:35:13,000.000 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-27 14:35:15,157.157 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 14:35:15,158.158 INFO    ] Checking for system updates...
[2026-06-27 14:35:15,180.180 INFO    ] 200
[2026-06-27 14:35:15,182.182 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:35:15,212.212 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:35:15,213.213 INFO    ] No update needed
[2026-06-27 14:35:15,215.215 INFO    ] Checking for camera pi updates...
[2026-06-27 14:35:15,239.239 INFO    ] 200
[2026-06-27 14:35:15,241.241 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:35:15,264.264 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:35:15,306.306 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:35:15,307.307 INFO    ] No camera update needed
[2026-06-27 14:35:15,308.308 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:35:15,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:35:15,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:35:15,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:35:17,354.354 INFO    ] ================================================
[2026-06-27 14:35:17,370.370 INFO    ] Launching Daemon at Sat Jun 27 14:35:17 IST 2026
[2026-06-27 14:35:17,381.381 INFO    ] ================================================
[2026-06-27 14:35:17,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:35:17
[2026-06-27 14:35:18,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:35:18,152.152 INFO    ] Initializing speech engine...
[2026-06-27 14:35:18,155.155 INFO    ] 2026-06-27 14:35:18
[2026-06-27 14:35:18,375.375 INFO    ] 2026-06-27 14:35:18
[2026-06-27 14:35:18,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:35:18,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:35:18,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:35:18,800.800 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:35:18,825.825 INFO    ] time= 27/06/2026 14:35:18
[2026-06-27 14:35:18,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:35:18,832.832 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:35:18,951.951 INFO    ] No existing commands found in stream
[2026-06-27 14:35:23,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:35:23,964.964 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-27 14:35:24,775.775 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 14:35:24,777.777 INFO    ] Checking for system updates...
[2026-06-27 14:35:24,798.798 INFO    ] 200
[2026-06-27 14:35:24,799.799 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:35:24,832.832 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:35:24,833.833 INFO    ] No update needed
[2026-06-27 14:35:24,835.835 INFO    ] Checking for camera pi updates...
[2026-06-27 14:35:24,854.854 INFO    ] 200
[2026-06-27 14:35:24,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:35:24,880.880 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:35:24,931.931 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:35:24,932.932 INFO    ] No camera update needed
[2026-06-27 14:35:24,934.934 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:35:24,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:35:24,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:35:24,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:35:26,983.983 INFO    ] ================================================
[2026-06-27 14:35:27,998.998 INFO    ] Launching Daemon at Sat Jun 27 14:35:26 IST 2026
[2026-06-27 14:35:27,009.009 INFO    ] ================================================
[2026-06-27 14:35:27,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:35:27
[2026-06-27 14:35:27,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:35:27,826.826 INFO    ] Initializing speech engine...
[2026-06-27 14:35:27,831.831 INFO    ] 2026-06-27 14:35:27
[2026-06-27 14:35:28,036.036 INFO    ] 2026-06-27 14:35:28
[2026-06-27 14:35:28,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:35:28,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:35:28,381.381 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:35:28,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:35:28,596.596 INFO    ] time= 27/06/2026 14:35:28
[2026-06-27 14:35:28,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:35:28,601.601 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:35:28,690.690 INFO    ] No existing commands found in stream
[2026-06-27 14:35:33,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:35:33,703.703 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-27 14:35:34,580.580 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:35:34,584.584 INFO    ] Checking for system updates...
[2026-06-27 14:35:34,605.605 INFO    ] 200
[2026-06-27 14:35:34,607.607 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:35:34,637.637 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:35:34,638.638 INFO    ] No update needed
[2026-06-27 14:35:34,640.640 INFO    ] Checking for camera pi updates...
[2026-06-27 14:35:34,659.659 INFO    ] 200
[2026-06-27 14:35:34,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:35:34,686.686 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:35:34,745.745 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:35:34,747.747 INFO    ] No camera update needed
[2026-06-27 14:35:34,748.748 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:35:34,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:35:34,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:35:34,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:35:36,787.787 INFO    ] ================================================
[2026-06-27 14:35:36,803.803 INFO    ] Launching Daemon at Sat Jun 27 14:35:36 IST 2026
[2026-06-27 14:35:36,814.814 INFO    ] ================================================
[2026-06-27 14:35:37,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:35:37
[2026-06-27 14:35:37,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:35:37,599.599 INFO    ] Initializing speech engine...
[2026-06-27 14:35:37,604.604 INFO    ] 2026-06-27 14:35:37
[2026-06-27 14:35:37,809.809 INFO    ] 2026-06-27 14:35:37
[2026-06-27 14:35:37,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:35:38,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:35:38,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:35:38,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:35:38,246.246 INFO    ] time= 27/06/2026 14:35:38
[2026-06-27 14:35:38,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:35:38,254.254 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:35:38,500.500 INFO    ] No existing commands found in stream
[2026-06-27 14:35:43,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:35:43,512.512 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-27 14:35:47,070.070 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 14:35:47,071.071 INFO    ] Checking for system updates...
[2026-06-27 14:35:47,092.092 INFO    ] 200
[2026-06-27 14:35:47,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:35:47,126.126 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:35:47,128.128 INFO    ] No update needed
[2026-06-27 14:35:47,129.129 INFO    ] Checking for camera pi updates...
[2026-06-27 14:35:47,148.148 INFO    ] 200
[2026-06-27 14:35:47,149.149 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:35:47,174.174 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:35:47,306.306 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:35:47,308.308 INFO    ] No camera update needed
[2026-06-27 14:35:47,309.309 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:35:47,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:35:47,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:35:47,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:35:49,356.356 INFO    ] ================================================
[2026-06-27 14:35:49,371.371 INFO    ] Launching Daemon at Sat Jun 27 14:35:49 IST 2026
[2026-06-27 14:35:49,382.382 INFO    ] ================================================
[2026-06-27 14:35:49,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:35:49
[2026-06-27 14:35:50,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:35:50,207.207 INFO    ] Initializing speech engine...
[2026-06-27 14:35:50,215.215 INFO    ] 2026-06-27 14:35:50
[2026-06-27 14:35:50,429.429 INFO    ] 2026-06-27 14:35:50
[2026-06-27 14:35:50,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:35:50,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:35:50,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:35:50,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:35:50,855.855 INFO    ] time= 27/06/2026 14:35:50
[2026-06-27 14:35:50,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:35:50,885.885 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:35:50,953.953 INFO    ] No existing commands found in stream
[2026-06-27 14:35:55,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:35:55,976.976 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-27 14:35:58,826.826 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 14:35:58,828.828 INFO    ] Checking for system updates...
[2026-06-27 14:35:58,850.850 INFO    ] 200
[2026-06-27 14:35:58,851.851 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:35:58,881.881 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:35:58,883.883 INFO    ] No update needed
[2026-06-27 14:35:58,884.884 INFO    ] Checking for camera pi updates...
[2026-06-27 14:35:58,906.906 INFO    ] 200
[2026-06-27 14:35:58,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:35:58,931.931 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:35:58,962.962 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:35:58,964.964 INFO    ] No camera update needed
[2026-06-27 14:35:58,965.965 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:35:58,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:35:58,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:35:58,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:36:01,005.005 INFO    ] ================================================
[2026-06-27 14:36:01,017.017 INFO    ] Launching Daemon at Sat Jun 27 14:36:01 IST 2026
[2026-06-27 14:36:01,024.024 INFO    ] ================================================
[2026-06-27 14:36:01,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:36:01
[2026-06-27 14:36:01,650.650 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:36:01,788.788 INFO    ] Initializing speech engine...
[2026-06-27 14:36:01,798.798 INFO    ] 2026-06-27 14:36:01
[2026-06-27 14:36:02,038.038 INFO    ] 2026-06-27 14:36:02
[2026-06-27 14:36:02,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:36:02,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:36:02,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:36:02,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:36:02,396.396 INFO    ] time= 27/06/2026 14:36:02
[2026-06-27 14:36:02,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:36:02,408.408 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:36:02,523.523 INFO    ] No existing commands found in stream
[2026-06-27 14:36:07,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:36:07,550.550 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-27 14:36:11,757.757 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:36:11,758.758 INFO    ] Checking for system updates...
[2026-06-27 14:36:11,780.780 INFO    ] 200
[2026-06-27 14:36:11,782.782 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:36:11,814.814 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:36:11,816.816 INFO    ] No update needed
[2026-06-27 14:36:11,817.817 INFO    ] Checking for camera pi updates...
[2026-06-27 14:36:11,840.840 INFO    ] 200
[2026-06-27 14:36:11,842.842 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:36:11,870.870 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:36:11,912.912 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:36:11,914.914 INFO    ] No camera update needed
[2026-06-27 14:36:11,919.919 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:36:11,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:36:11,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:36:11,928.928 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:36:13,968.968 INFO    ] ================================================
[2026-06-27 14:36:13,983.983 INFO    ] Launching Daemon at Sat Jun 27 14:36:13 IST 2026
[2026-06-27 14:36:13,994.994 INFO    ] ================================================
[2026-06-27 14:36:14,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:36:14
[2026-06-27 14:36:14,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:36:14,814.814 INFO    ] Initializing speech engine...
[2026-06-27 14:36:14,820.820 INFO    ] 2026-06-27 14:36:14
[2026-06-27 14:36:15,035.035 INFO    ] 2026-06-27 14:36:15
[2026-06-27 14:36:15,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:36:15,265.265 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:36:15,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:36:15,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:36:15,510.510 INFO    ] time= 27/06/2026 14:36:15
[2026-06-27 14:36:15,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:36:15,517.517 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:36:15,589.589 INFO    ] No existing commands found in stream
[2026-06-27 14:36:20,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:36:20,600.600 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-27 14:36:23,974.974 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:36:23,975.975 INFO    ] Checking for system updates...
[2026-06-27 14:36:23,997.997 INFO    ] 200
[2026-06-27 14:36:23,998.998 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:36:24,028.028 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:36:24,030.030 INFO    ] No update needed
[2026-06-27 14:36:24,031.031 INFO    ] Checking for camera pi updates...
[2026-06-27 14:36:24,050.050 INFO    ] 200
[2026-06-27 14:36:24,051.051 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:36:24,077.077 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:36:24,116.116 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:36:24,118.118 INFO    ] No camera update needed
[2026-06-27 14:36:24,119.119 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:36:24,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:36:24,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:36:24,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:36:26,165.165 INFO    ] ================================================
[2026-06-27 14:36:26,180.180 INFO    ] Launching Daemon at Sat Jun 27 14:36:26 IST 2026
[2026-06-27 14:36:26,191.191 INFO    ] ================================================
[2026-06-27 14:36:26,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:36:26
[2026-06-27 14:36:26,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:36:27,020.020 INFO    ] Initializing speech engine...
[2026-06-27 14:36:27,025.025 INFO    ] 2026-06-27 14:36:27
[2026-06-27 14:36:27,231.231 INFO    ] 2026-06-27 14:36:27
[2026-06-27 14:36:27,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:36:27,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:36:27,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:36:27,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:36:27,655.655 INFO    ] time= 27/06/2026 14:36:27
[2026-06-27 14:36:27,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:36:27,685.685 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:36:27,753.753 INFO    ] No existing commands found in stream
[2026-06-27 14:36:32,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:36:32,763.763 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-27 14:36:33,467.467 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:36:33,468.468 INFO    ] Checking for system updates...
[2026-06-27 14:36:33,489.489 INFO    ] 200
[2026-06-27 14:36:33,490.490 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:36:33,526.526 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:36:33,528.528 INFO    ] No update needed
[2026-06-27 14:36:33,529.529 INFO    ] Checking for camera pi updates...
[2026-06-27 14:36:33,549.549 INFO    ] 200
[2026-06-27 14:36:33,550.550 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:36:33,574.574 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:36:33,629.629 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:36:33,630.630 INFO    ] No camera update needed
[2026-06-27 14:36:33,631.631 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:36:33,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:36:33,636.636 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:36:33,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:36:35,678.678 INFO    ] ================================================
[2026-06-27 14:36:35,693.693 INFO    ] Launching Daemon at Sat Jun 27 14:36:35 IST 2026
[2026-06-27 14:36:35,704.704 INFO    ] ================================================
[2026-06-27 14:36:36,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:36:36
[2026-06-27 14:36:36,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:36:36,506.506 INFO    ] Initializing speech engine...
[2026-06-27 14:36:36,511.511 INFO    ] 2026-06-27 14:36:36
[2026-06-27 14:36:36,729.729 INFO    ] 2026-06-27 14:36:36
[2026-06-27 14:36:36,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:36:36,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:36:36,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:36:37,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:36:37,181.181 INFO    ] time= 27/06/2026 14:36:37
[2026-06-27 14:36:37,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:36:37,184.184 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:36:37,302.302 INFO    ] No existing commands found in stream
[2026-06-27 14:36:42,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:36:42,315.315 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-27 14:36:46,130.130 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:36:46,131.131 INFO    ] Checking for system updates...
[2026-06-27 14:36:46,152.152 INFO    ] 200
[2026-06-27 14:36:46,153.153 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:36:46,184.184 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:36:46,185.185 INFO    ] No update needed
[2026-06-27 14:36:46,186.186 INFO    ] Checking for camera pi updates...
[2026-06-27 14:36:46,206.206 INFO    ] 200
[2026-06-27 14:36:46,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:36:46,230.230 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:36:46,262.262 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:36:46,263.263 INFO    ] No camera update needed
[2026-06-27 14:36:46,265.265 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:36:46,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:36:46,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:36:46,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:36:48,303.303 INFO    ] ================================================
[2026-06-27 14:36:48,318.318 INFO    ] Launching Daemon at Sat Jun 27 14:36:48 IST 2026
[2026-06-27 14:36:48,329.329 INFO    ] ================================================
[2026-06-27 14:36:48,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:36:48
[2026-06-27 14:36:48,975.975 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:36:49,119.119 INFO    ] Initializing speech engine...
[2026-06-27 14:36:49,124.124 INFO    ] 2026-06-27 14:36:49
[2026-06-27 14:36:49,328.328 INFO    ] 2026-06-27 14:36:49
[2026-06-27 14:36:49,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:36:49,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:36:49,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:36:49,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:36:49,726.726 INFO    ] time= 27/06/2026 14:36:49
[2026-06-27 14:36:49,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:36:49,772.772 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:36:49,843.843 INFO    ] No existing commands found in stream
[2026-06-27 14:36:54,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:36:54,860.860 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-27 14:36:57,069.069 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 14:36:57,070.070 INFO    ] Checking for system updates...
[2026-06-27 14:36:57,101.101 INFO    ] 200
[2026-06-27 14:36:57,102.102 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:36:57,134.134 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:36:57,136.136 INFO    ] No update needed
[2026-06-27 14:36:57,137.137 INFO    ] Checking for camera pi updates...
[2026-06-27 14:36:57,156.156 INFO    ] 200
[2026-06-27 14:36:57,158.158 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:36:57,181.181 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:36:57,211.211 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:36:57,213.213 INFO    ] No camera update needed
[2026-06-27 14:36:57,214.214 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:36:57,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:36:57,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:36:57,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:36:59,259.259 INFO    ] ================================================
[2026-06-27 14:36:59,274.274 INFO    ] Launching Daemon at Sat Jun 27 14:36:59 IST 2026
[2026-06-27 14:36:59,285.285 INFO    ] ================================================
[2026-06-27 14:36:59,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:36:59
[2026-06-27 14:36:59,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:37:00,084.084 INFO    ] Initializing speech engine...
[2026-06-27 14:37:00,089.089 INFO    ] 2026-06-27 14:37:00
[2026-06-27 14:37:00,293.293 INFO    ] 2026-06-27 14:37:00
[2026-06-27 14:37:00,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:37:00,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:37:00,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:37:00,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:37:00,717.717 INFO    ] time= 27/06/2026 14:37:00
[2026-06-27 14:37:00,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:37:00,739.739 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:37:00,806.806 INFO    ] No existing commands found in stream
[2026-06-27 14:37:05,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:37:05,818.818 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-27 14:37:07,406.406 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:37:07,407.407 INFO    ] Checking for system updates...
[2026-06-27 14:37:07,429.429 INFO    ] 200
[2026-06-27 14:37:07,430.430 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:37:07,461.461 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:37:07,462.462 INFO    ] No update needed
[2026-06-27 14:37:07,463.463 INFO    ] Checking for camera pi updates...
[2026-06-27 14:37:07,483.483 INFO    ] 200
[2026-06-27 14:37:07,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:37:07,508.508 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:37:07,568.568 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:37:07,569.569 INFO    ] No camera update needed
[2026-06-27 14:37:07,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:37:07,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:37:07,575.575 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:37:07,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:37:09,616.616 INFO    ] ================================================
[2026-06-27 14:37:09,631.631 INFO    ] Launching Daemon at Sat Jun 27 14:37:09 IST 2026
[2026-06-27 14:37:09,642.642 INFO    ] ================================================
[2026-06-27 14:37:10,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:37:10
[2026-06-27 14:37:10,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:37:10,478.478 INFO    ] Initializing speech engine...
[2026-06-27 14:37:10,483.483 INFO    ] 2026-06-27 14:37:10
[2026-06-27 14:37:10,688.688 INFO    ] 2026-06-27 14:37:10
[2026-06-27 14:37:10,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:37:10,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:37:10,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:37:11,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:37:11,139.139 INFO    ] time= 27/06/2026 14:37:11
[2026-06-27 14:37:11,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:37:11,147.147 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:37:11,219.219 INFO    ] No existing commands found in stream
[2026-06-27 14:37:16,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:37:16,231.231 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-27 14:37:17,460.460 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 14:37:17,462.462 INFO    ] Checking for system updates...
[2026-06-27 14:37:17,484.484 INFO    ] 200
[2026-06-27 14:37:17,485.485 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:37:17,518.518 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:37:17,519.519 INFO    ] No update needed
[2026-06-27 14:37:17,520.520 INFO    ] Checking for camera pi updates...
[2026-06-27 14:37:17,540.540 INFO    ] 200
[2026-06-27 14:37:17,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:37:17,565.565 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:37:17,607.607 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:37:17,609.609 INFO    ] No camera update needed
[2026-06-27 14:37:17,610.610 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:37:17,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:37:17,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:37:17,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:37:19,658.658 INFO    ] ================================================
[2026-06-27 14:37:19,673.673 INFO    ] Launching Daemon at Sat Jun 27 14:37:19 IST 2026
[2026-06-27 14:37:19,683.683 INFO    ] ================================================
[2026-06-27 14:37:20,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:37:20
[2026-06-27 14:37:20,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:37:20,474.474 INFO    ] Initializing speech engine...
[2026-06-27 14:37:20,483.483 INFO    ] 2026-06-27 14:37:20
[2026-06-27 14:37:20,695.695 INFO    ] 2026-06-27 14:37:20
[2026-06-27 14:37:20,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:37:20,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:37:20,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:37:21,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:37:21,136.136 INFO    ] time= 27/06/2026 14:37:21
[2026-06-27 14:37:21,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:37:21,140.140 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:37:21,207.207 INFO    ] No existing commands found in stream
[2026-06-27 14:37:26,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:37:26,218.218 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-27 14:37:29,701.701 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 14:37:29,703.703 INFO    ] Checking for system updates...
[2026-06-27 14:37:29,725.725 INFO    ] 200
[2026-06-27 14:37:29,726.726 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:37:29,759.759 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:37:29,760.760 INFO    ] No update needed
[2026-06-27 14:37:29,762.762 INFO    ] Checking for camera pi updates...
[2026-06-27 14:37:29,781.781 INFO    ] 200
[2026-06-27 14:37:29,782.782 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:37:29,805.805 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:37:29,847.847 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:37:29,849.849 INFO    ] No camera update needed
[2026-06-27 14:37:29,852.852 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:37:29,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:37:29,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:37:29,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:37:31,902.902 INFO    ] ================================================
[2026-06-27 14:37:31,911.911 INFO    ] Launching Daemon at Sat Jun 27 14:37:31 IST 2026
[2026-06-27 14:37:31,917.917 INFO    ] ================================================
[2026-06-27 14:37:32,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:37:32
[2026-06-27 14:37:32,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:37:32,698.698 INFO    ] Initializing speech engine...
[2026-06-27 14:37:32,703.703 INFO    ] 2026-06-27 14:37:32
[2026-06-27 14:37:32,909.909 INFO    ] 2026-06-27 14:37:32
[2026-06-27 14:37:32,937.937 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:37:33,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:37:33,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:37:33,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:37:33,350.350 INFO    ] time= 27/06/2026 14:37:33
[2026-06-27 14:37:33,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:37:33,357.357 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:37:33,424.424 INFO    ] No existing commands found in stream
[2026-06-27 14:37:38,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:37:38,441.441 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-27 14:37:40,501.501 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:37:40,502.502 INFO    ] Checking for system updates...
[2026-06-27 14:37:40,524.524 INFO    ] 200
[2026-06-27 14:37:40,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:37:40,558.558 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:37:40,559.559 INFO    ] No update needed
[2026-06-27 14:37:40,561.561 INFO    ] Checking for camera pi updates...
[2026-06-27 14:37:40,580.580 INFO    ] 200
[2026-06-27 14:37:40,582.582 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:37:40,605.605 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:37:40,650.650 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:37:40,652.652 INFO    ] No camera update needed
[2026-06-27 14:37:40,653.653 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:37:40,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:37:40,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:37:40,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:37:42,698.698 INFO    ] ================================================
[2026-06-27 14:37:42,713.713 INFO    ] Launching Daemon at Sat Jun 27 14:37:42 IST 2026
[2026-06-27 14:37:42,724.724 INFO    ] ================================================
[2026-06-27 14:37:43,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:37:43
[2026-06-27 14:37:43,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:37:43,523.523 INFO    ] Initializing speech engine...
[2026-06-27 14:37:43,527.527 INFO    ] 2026-06-27 14:37:43
[2026-06-27 14:37:43,745.745 INFO    ] 2026-06-27 14:37:43
[2026-06-27 14:37:43,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:37:44,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:37:44,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:37:44,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:37:44,253.253 INFO    ] time= 27/06/2026 14:37:44
[2026-06-27 14:37:44,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:37:44,280.280 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:37:44,425.425 INFO    ] No existing commands found in stream
[2026-06-27 14:37:49,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:37:49,437.437 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-27 14:37:51,440.440 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 14:37:51,442.442 INFO    ] Checking for system updates...
[2026-06-27 14:37:51,463.463 INFO    ] 200
[2026-06-27 14:37:51,465.465 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:37:51,496.496 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:37:51,497.497 INFO    ] No update needed
[2026-06-27 14:37:51,498.498 INFO    ] Checking for camera pi updates...
[2026-06-27 14:37:51,519.519 INFO    ] 200
[2026-06-27 14:37:51,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:37:51,547.547 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:37:51,696.696 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:37:51,698.698 INFO    ] No camera update needed
[2026-06-27 14:37:51,699.699 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:37:51,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:37:51,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:37:51,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:37:53,749.749 INFO    ] ================================================
[2026-06-27 14:37:53,765.765 INFO    ] Launching Daemon at Sat Jun 27 14:37:53 IST 2026
[2026-06-27 14:37:53,775.775 INFO    ] ================================================
[2026-06-27 14:37:54,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:37:54
[2026-06-27 14:37:54,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:37:54,622.622 INFO    ] Initializing speech engine...
[2026-06-27 14:37:54,630.630 INFO    ] 2026-06-27 14:37:54
[2026-06-27 14:37:54,850.850 INFO    ] 2026-06-27 14:37:54
[2026-06-27 14:37:54,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:37:55,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:37:55,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:37:55,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:37:55,524.524 INFO    ] time= 27/06/2026 14:37:55
[2026-06-27 14:37:55,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:37:55,531.531 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:37:55,665.665 INFO    ] No existing commands found in stream
[2026-06-27 14:38:00,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:38:00,679.679 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-27 14:38:02,076.076 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:38:02,078.078 INFO    ] Checking for system updates...
[2026-06-27 14:38:02,102.102 INFO    ] 200
[2026-06-27 14:38:02,105.105 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:38:02,147.147 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:38:02,149.149 INFO    ] No update needed
[2026-06-27 14:38:02,151.151 INFO    ] Checking for camera pi updates...
[2026-06-27 14:38:02,177.177 INFO    ] 200
[2026-06-27 14:38:02,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:38:02,219.219 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:38:02,249.249 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:38:02,251.251 INFO    ] No camera update needed
[2026-06-27 14:38:02,253.253 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:38:02,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:38:02,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:38:02,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:38:04,307.307 INFO    ] ================================================
[2026-06-27 14:38:04,323.323 INFO    ] Launching Daemon at Sat Jun 27 14:38:04 IST 2026
[2026-06-27 14:38:04,333.333 INFO    ] ================================================
[2026-06-27 14:38:04,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:38:04
[2026-06-27 14:38:05,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:38:05,157.157 INFO    ] Initializing speech engine...
[2026-06-27 14:38:05,168.168 INFO    ] 2026-06-27 14:38:05
[2026-06-27 14:38:05,373.373 INFO    ] 2026-06-27 14:38:05
[2026-06-27 14:38:05,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:38:05,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:38:05,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:38:05,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:38:05,825.825 INFO    ] time= 27/06/2026 14:38:05
[2026-06-27 14:38:05,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:38:05,832.832 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:38:05,910.910 INFO    ] No existing commands found in stream
[2026-06-27 14:38:10,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:38:10,935.935 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-27 14:38:12,215.215 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 14:38:12,216.216 INFO    ] Checking for system updates...
[2026-06-27 14:38:12,238.238 INFO    ] 200
[2026-06-27 14:38:12,239.239 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:38:12,270.270 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:38:12,271.271 INFO    ] No update needed
[2026-06-27 14:38:12,272.272 INFO    ] Checking for camera pi updates...
[2026-06-27 14:38:12,292.292 INFO    ] 200
[2026-06-27 14:38:12,293.293 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:38:12,317.317 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:38:12,363.363 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:38:12,364.364 INFO    ] No camera update needed
[2026-06-27 14:38:12,366.366 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:38:12,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:38:12,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:38:12,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:38:14,411.411 INFO    ] ================================================
[2026-06-27 14:38:14,426.426 INFO    ] Launching Daemon at Sat Jun 27 14:38:14 IST 2026
[2026-06-27 14:38:14,437.437 INFO    ] ================================================
[2026-06-27 14:38:14,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:38:14
[2026-06-27 14:38:15,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:38:15,284.284 INFO    ] Initializing speech engine...
[2026-06-27 14:38:15,294.294 INFO    ] 2026-06-27 14:38:15
[2026-06-27 14:38:15,507.507 INFO    ] 2026-06-27 14:38:15
[2026-06-27 14:38:15,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:38:15,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:38:15,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:38:15,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:38:15,950.950 INFO    ] time= 27/06/2026 14:38:15
[2026-06-27 14:38:15,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:38:15,956.956 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:38:16,023.023 INFO    ] No existing commands found in stream
[2026-06-27 14:38:21,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:38:21,036.036 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-27 14:38:25,029.029 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 14:38:25,030.030 INFO    ] Checking for system updates...
[2026-06-27 14:38:25,052.052 INFO    ] 200
[2026-06-27 14:38:25,054.054 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:38:25,087.087 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:38:25,088.088 INFO    ] No update needed
[2026-06-27 14:38:25,090.090 INFO    ] Checking for camera pi updates...
[2026-06-27 14:38:25,109.109 INFO    ] 200
[2026-06-27 14:38:25,110.110 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:38:25,134.134 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:38:25,179.179 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:38:25,180.180 INFO    ] No camera update needed
[2026-06-27 14:38:25,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:38:25,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:38:25,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:38:25,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:38:27,228.228 INFO    ] ================================================
[2026-06-27 14:38:27,242.242 INFO    ] Launching Daemon at Sat Jun 27 14:38:27 IST 2026
[2026-06-27 14:38:27,253.253 INFO    ] ================================================
[2026-06-27 14:38:27,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:38:27
[2026-06-27 14:38:27,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:38:28,082.082 INFO    ] Initializing speech engine...
[2026-06-27 14:38:28,087.087 INFO    ] 2026-06-27 14:38:28
[2026-06-27 14:38:28,294.294 INFO    ] 2026-06-27 14:38:28
[2026-06-27 14:38:28,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:38:28,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:38:28,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:38:28,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:38:28,732.732 INFO    ] time= 27/06/2026 14:38:28
[2026-06-27 14:38:28,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:38:28,744.744 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:38:28,835.835 INFO    ] No existing commands found in stream
[2026-06-27 14:38:33,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:38:33,848.848 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-27 14:38:35,835.835 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 14:38:35,836.836 INFO    ] Checking for system updates...
[2026-06-27 14:38:35,857.857 INFO    ] 200
[2026-06-27 14:38:35,859.859 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:38:35,891.891 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:38:35,893.893 INFO    ] No update needed
[2026-06-27 14:38:35,895.895 INFO    ] Checking for camera pi updates...
[2026-06-27 14:38:35,914.914 INFO    ] 200
[2026-06-27 14:38:35,916.916 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:38:35,941.941 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:38:35,988.988 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:38:35,990.990 INFO    ] No camera update needed
[2026-06-27 14:38:35,991.991 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:38:35,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:38:35,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:38:35,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:38:38,037.037 INFO    ] ================================================
[2026-06-27 14:38:38,052.052 INFO    ] Launching Daemon at Sat Jun 27 14:38:38 IST 2026
[2026-06-27 14:38:38,063.063 INFO    ] ================================================
[2026-06-27 14:38:38,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:38:38
[2026-06-27 14:38:38,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:38:38,866.866 INFO    ] Initializing speech engine...
[2026-06-27 14:38:38,872.872 INFO    ] 2026-06-27 14:38:38
[2026-06-27 14:38:39,075.075 INFO    ] 2026-06-27 14:38:39
[2026-06-27 14:38:39,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:38:40,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:38:40,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:38:40,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:38:40,473.473 INFO    ] time= 27/06/2026 14:38:40
[2026-06-27 14:38:40,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:38:40,476.476 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:38:40,527.527 INFO    ] No existing commands found in stream
[2026-06-27 14:38:45,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:38:45,539.539 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-27 14:38:47,750.750 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 14:38:47,752.752 INFO    ] Checking for system updates...
[2026-06-27 14:38:47,773.773 INFO    ] 200
[2026-06-27 14:38:47,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:38:47,805.805 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:38:47,807.807 INFO    ] No update needed
[2026-06-27 14:38:47,808.808 INFO    ] Checking for camera pi updates...
[2026-06-27 14:38:47,828.828 INFO    ] 200
[2026-06-27 14:38:47,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:38:47,854.854 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:38:47,896.896 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:38:47,897.897 INFO    ] No camera update needed
[2026-06-27 14:38:47,899.899 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:38:47,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:38:47,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:38:47,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:38:49,946.946 INFO    ] ================================================
[2026-06-27 14:38:49,961.961 INFO    ] Launching Daemon at Sat Jun 27 14:38:49 IST 2026
[2026-06-27 14:38:49,972.972 INFO    ] ================================================
[2026-06-27 14:38:50,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:38:50
[2026-06-27 14:38:50,618.618 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:38:50,761.761 INFO    ] Initializing speech engine...
[2026-06-27 14:38:50,767.767 INFO    ] 2026-06-27 14:38:50
[2026-06-27 14:38:50,969.969 INFO    ] 2026-06-27 14:38:50
[2026-06-27 14:38:50,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:38:51,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:38:51,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:38:51,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:38:51,377.377 INFO    ] time= 27/06/2026 14:38:51
[2026-06-27 14:38:51,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:38:51,415.415 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:38:51,481.481 INFO    ] No existing commands found in stream
[2026-06-27 14:38:56,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:38:56,493.493 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-27 14:38:57,638.638 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:38:57,640.640 INFO    ] Checking for system updates...
[2026-06-27 14:38:57,661.661 INFO    ] 200
[2026-06-27 14:38:57,662.662 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:38:57,692.692 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:38:57,693.693 INFO    ] No update needed
[2026-06-27 14:38:57,695.695 INFO    ] Checking for camera pi updates...
[2026-06-27 14:38:57,714.714 INFO    ] 200
[2026-06-27 14:38:57,715.715 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:38:57,738.738 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:38:57,788.788 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:38:57,789.789 INFO    ] No camera update needed
[2026-06-27 14:38:57,790.790 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:38:57,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:38:57,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:38:57,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:38:59,837.837 INFO    ] ================================================
[2026-06-27 14:38:59,852.852 INFO    ] Launching Daemon at Sat Jun 27 14:38:59 IST 2026
[2026-06-27 14:38:59,864.864 INFO    ] ================================================
[2026-06-27 14:39:00,198.198 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:39:00
[2026-06-27 14:39:00,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:39:00,647.647 INFO    ] Initializing speech engine...
[2026-06-27 14:39:00,659.659 INFO    ] 2026-06-27 14:39:00
[2026-06-27 14:39:00,880.880 INFO    ] 2026-06-27 14:39:00
[2026-06-27 14:39:00,910.910 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:39:01,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:39:01,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:39:01,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:39:01,416.416 INFO    ] time= 27/06/2026 14:39:01
[2026-06-27 14:39:01,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:39:01,444.444 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:39:01,547.547 INFO    ] No existing commands found in stream
[2026-06-27 14:39:06,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:39:06,560.560 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-27 14:39:10,921.921 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:39:10,923.923 INFO    ] Checking for system updates...
[2026-06-27 14:39:10,944.944 INFO    ] 200
[2026-06-27 14:39:10,946.946 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:39:10,979.979 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:39:10,980.980 INFO    ] No update needed
[2026-06-27 14:39:10,981.981 INFO    ] Checking for camera pi updates...
[2026-06-27 14:39:11,000.000 INFO    ] 200
[2026-06-27 14:39:11,002.002 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:39:11,025.025 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:39:11,074.074 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:39:11,075.075 INFO    ] No camera update needed
[2026-06-27 14:39:11,076.076 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:39:11,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:39:11,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:39:11,084.084 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:39:13,124.124 INFO    ] ================================================
[2026-06-27 14:39:13,140.140 INFO    ] Launching Daemon at Sat Jun 27 14:39:13 IST 2026
[2026-06-27 14:39:13,150.150 INFO    ] ================================================
[2026-06-27 14:39:13,486.486 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:39:13
[2026-06-27 14:39:13,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:39:13,929.929 INFO    ] Initializing speech engine...
[2026-06-27 14:39:13,934.934 INFO    ] 2026-06-27 14:39:13
[2026-06-27 14:39:14,153.153 INFO    ] 2026-06-27 14:39:14
[2026-06-27 14:39:14,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:39:14,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:39:14,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:39:14,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:39:14,577.577 INFO    ] time= 27/06/2026 14:39:14
[2026-06-27 14:39:14,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:39:14,608.608 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:39:14,702.702 INFO    ] No existing commands found in stream
[2026-06-27 14:39:19,711.711 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:39:19,714.714 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-27 14:39:22,602.602 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 14:39:22,603.603 INFO    ] Checking for system updates...
[2026-06-27 14:39:22,625.625 INFO    ] 200
[2026-06-27 14:39:22,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:39:22,658.658 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:39:22,659.659 INFO    ] No update needed
[2026-06-27 14:39:22,661.661 INFO    ] Checking for camera pi updates...
[2026-06-27 14:39:22,680.680 INFO    ] 200
[2026-06-27 14:39:22,682.682 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:39:22,707.707 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:39:22,752.752 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:39:22,753.753 INFO    ] No camera update needed
[2026-06-27 14:39:22,755.755 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:39:22,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:39:22,759.759 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:39:22,762.762 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:39:24,802.802 INFO    ] ================================================
[2026-06-27 14:39:24,817.817 INFO    ] Launching Daemon at Sat Jun 27 14:39:24 IST 2026
[2026-06-27 14:39:24,829.829 INFO    ] ================================================
[2026-06-27 14:39:25,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:39:25
[2026-06-27 14:39:25,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:39:25,650.650 INFO    ] Initializing speech engine...
[2026-06-27 14:39:25,662.662 INFO    ] 2026-06-27 14:39:25
[2026-06-27 14:39:25,914.914 INFO    ] 2026-06-27 14:39:25
[2026-06-27 14:39:25,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:39:26,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:39:26,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:39:26,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:39:26,422.422 INFO    ] time= 27/06/2026 14:39:26
[2026-06-27 14:39:26,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:39:26,449.449 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:39:26,545.545 INFO    ] No existing commands found in stream
[2026-06-27 14:39:31,555.555 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:39:31,558.558 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-27 14:39:33,009.009 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 14:39:33,011.011 INFO    ] Checking for system updates...
[2026-06-27 14:39:33,033.033 INFO    ] 200
[2026-06-27 14:39:33,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:39:33,065.065 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:39:33,066.066 INFO    ] No update needed
[2026-06-27 14:39:33,067.067 INFO    ] Checking for camera pi updates...
[2026-06-27 14:39:33,088.088 INFO    ] 200
[2026-06-27 14:39:33,089.089 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:39:33,114.114 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:39:33,173.173 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:39:33,175.175 INFO    ] No camera update needed
[2026-06-27 14:39:33,176.176 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:39:33,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:39:33,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:39:33,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:39:35,222.222 INFO    ] ================================================
[2026-06-27 14:39:35,238.238 INFO    ] Launching Daemon at Sat Jun 27 14:39:35 IST 2026
[2026-06-27 14:39:35,249.249 INFO    ] ================================================
[2026-06-27 14:39:35,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:39:35
[2026-06-27 14:39:35,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:39:36,047.047 INFO    ] Initializing speech engine...
[2026-06-27 14:39:36,055.055 INFO    ] 2026-06-27 14:39:36
[2026-06-27 14:39:36,268.268 INFO    ] 2026-06-27 14:39:36
[2026-06-27 14:39:36,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:39:36,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:39:36,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:39:36,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:39:36,718.718 INFO    ] time= 27/06/2026 14:39:36
[2026-06-27 14:39:36,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:39:36,721.721 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:39:36,817.817 INFO    ] No existing commands found in stream
[2026-06-27 14:39:41,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:39:41,828.828 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-27 14:39:42,903.903 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:39:42,905.905 INFO    ] Checking for system updates...
[2026-06-27 14:39:42,926.926 INFO    ] 200
[2026-06-27 14:39:42,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:39:42,958.958 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:39:42,959.959 INFO    ] No update needed
[2026-06-27 14:39:42,960.960 INFO    ] Checking for camera pi updates...
[2026-06-27 14:39:42,980.980 INFO    ] 200
[2026-06-27 14:39:42,981.981 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:39:43,007.007 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:39:43,060.060 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:39:43,061.061 INFO    ] No camera update needed
[2026-06-27 14:39:43,062.062 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:39:43,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:39:43,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:39:43,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:39:45,107.107 INFO    ] ================================================
[2026-06-27 14:39:45,123.123 INFO    ] Launching Daemon at Sat Jun 27 14:39:45 IST 2026
[2026-06-27 14:39:45,134.134 INFO    ] ================================================
[2026-06-27 14:39:45,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:39:45
[2026-06-27 14:39:45,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:39:45,941.941 INFO    ] Initializing speech engine...
[2026-06-27 14:39:45,947.947 INFO    ] 2026-06-27 14:39:45
[2026-06-27 14:39:46,151.151 INFO    ] 2026-06-27 14:39:46
[2026-06-27 14:39:46,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:39:46,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:39:46,366.366 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:39:46,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:39:46,590.590 INFO    ] time= 27/06/2026 14:39:46
[2026-06-27 14:39:46,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:39:46,597.597 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:39:46,664.664 INFO    ] No existing commands found in stream
[2026-06-27 14:39:51,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:39:51,681.681 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-27 14:39:54,487.487 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:39:54,488.488 INFO    ] Checking for system updates...
[2026-06-27 14:39:54,510.510 INFO    ] 200
[2026-06-27 14:39:54,512.512 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:39:54,542.542 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:39:54,543.543 INFO    ] No update needed
[2026-06-27 14:39:54,545.545 INFO    ] Checking for camera pi updates...
[2026-06-27 14:39:54,566.566 INFO    ] 200
[2026-06-27 14:39:54,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:39:54,593.593 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:39:54,720.720 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:39:54,721.721 INFO    ] No camera update needed
[2026-06-27 14:39:54,723.723 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:39:54,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:39:54,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:39:54,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:39:56,770.770 INFO    ] ================================================
[2026-06-27 14:39:56,786.786 INFO    ] Launching Daemon at Sat Jun 27 14:39:56 IST 2026
[2026-06-27 14:39:56,803.803 INFO    ] ================================================
[2026-06-27 14:39:57,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:39:57
[2026-06-27 14:39:57,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:39:57,606.606 INFO    ] Initializing speech engine...
[2026-06-27 14:39:57,616.616 INFO    ] 2026-06-27 14:39:57
[2026-06-27 14:39:57,822.822 INFO    ] 2026-06-27 14:39:57
[2026-06-27 14:39:57,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:39:58,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:39:58,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:39:58,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:39:58,265.265 INFO    ] time= 27/06/2026 14:39:58
[2026-06-27 14:39:58,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:39:58,282.282 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:39:58,350.350 INFO    ] No existing commands found in stream
[2026-06-27 14:40:03,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:40:03,359.359 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-27 14:40:08,903.903 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:40:08,905.905 INFO    ] Checking for system updates...
[2026-06-27 14:40:08,945.945 INFO    ] 200
[2026-06-27 14:40:08,947.947 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:40:09,000.000 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:40:09,003.003 INFO    ] No update needed
[2026-06-27 14:40:09,006.006 INFO    ] Checking for camera pi updates...
[2026-06-27 14:40:09,029.029 INFO    ] 200
[2026-06-27 14:40:09,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:40:09,053.053 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:40:09,082.082 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:40:09,083.083 INFO    ] No camera update needed
[2026-06-27 14:40:09,085.085 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:40:09,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:40:09,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:40:09,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:40:11,131.131 INFO    ] ================================================
[2026-06-27 14:40:11,147.147 INFO    ] Launching Daemon at Sat Jun 27 14:40:11 IST 2026
[2026-06-27 14:40:11,158.158 INFO    ] ================================================
[2026-06-27 14:40:11,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:40:11
[2026-06-27 14:40:11,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:40:11,930.930 INFO    ] Initializing speech engine...
[2026-06-27 14:40:11,940.940 INFO    ] 2026-06-27 14:40:11
[2026-06-27 14:40:12,142.142 INFO    ] 2026-06-27 14:40:12
[2026-06-27 14:40:12,171.171 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:40:12,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:40:12,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:40:12,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:40:12,560.560 INFO    ] time= 27/06/2026 14:40:12
[2026-06-27 14:40:12,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:40:12,589.589 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:40:12,656.656 INFO    ] No existing commands found in stream
[2026-06-27 14:40:17,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:40:17,668.668 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-27 14:40:21,531.531 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 14:40:21,532.532 INFO    ] Checking for system updates...
[2026-06-27 14:40:21,554.554 INFO    ] 200
[2026-06-27 14:40:21,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:40:21,587.587 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:40:21,588.588 INFO    ] No update needed
[2026-06-27 14:40:21,590.590 INFO    ] Checking for camera pi updates...
[2026-06-27 14:40:21,609.609 INFO    ] 200
[2026-06-27 14:40:21,611.611 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:40:21,635.635 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:40:21,689.689 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:40:21,690.690 INFO    ] No camera update needed
[2026-06-27 14:40:21,692.692 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:40:21,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:40:21,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:40:21,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:40:23,739.739 INFO    ] ================================================
[2026-06-27 14:40:23,755.755 INFO    ] Launching Daemon at Sat Jun 27 14:40:23 IST 2026
[2026-06-27 14:40:23,766.766 INFO    ] ================================================
[2026-06-27 14:40:24,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:40:24
[2026-06-27 14:40:24,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:40:24,600.600 INFO    ] Initializing speech engine...
[2026-06-27 14:40:24,606.606 INFO    ] 2026-06-27 14:40:24
[2026-06-27 14:40:24,814.814 INFO    ] 2026-06-27 14:40:24
[2026-06-27 14:40:24,843.843 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:40:25,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:40:25,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:40:25,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:40:25,261.261 INFO    ] time= 27/06/2026 14:40:25
[2026-06-27 14:40:25,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:40:25,265.265 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:40:25,356.356 INFO    ] No existing commands found in stream
[2026-06-27 14:40:30,370.370 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:40:30,374.374 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-27 14:40:32,619.619 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:40:32,622.622 INFO    ] Checking for system updates...
[2026-06-27 14:40:32,647.647 INFO    ] 200
[2026-06-27 14:40:32,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:40:32,681.681 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:40:32,684.684 INFO    ] No update needed
[2026-06-27 14:40:32,687.687 INFO    ] Checking for camera pi updates...
[2026-06-27 14:40:32,721.721 INFO    ] 200
[2026-06-27 14:40:32,723.723 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:40:32,769.769 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:40:32,807.807 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:40:32,809.809 INFO    ] No camera update needed
[2026-06-27 14:40:32,810.810 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:40:32,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:40:32,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:40:32,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:40:34,860.860 INFO    ] ================================================
[2026-06-27 14:40:34,875.875 INFO    ] Launching Daemon at Sat Jun 27 14:40:34 IST 2026
[2026-06-27 14:40:34,887.887 INFO    ] ================================================
[2026-06-27 14:40:35,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:40:35
[2026-06-27 14:40:35,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:40:35,737.737 INFO    ] Initializing speech engine...
[2026-06-27 14:40:35,743.743 INFO    ] 2026-06-27 14:40:35
[2026-06-27 14:40:35,952.952 INFO    ] 2026-06-27 14:40:35
[2026-06-27 14:40:35,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:40:36,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:40:36,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:40:36,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:40:36,380.380 INFO    ] time= 27/06/2026 14:40:36
[2026-06-27 14:40:36,403.403 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:40:36,409.409 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:40:36,476.476 INFO    ] No existing commands found in stream
[2026-06-27 14:40:41,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:40:41,488.488 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-27 14:40:42,911.911 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:40:42,912.912 INFO    ] Checking for system updates...
[2026-06-27 14:40:42,933.933 INFO    ] 200
[2026-06-27 14:40:42,935.935 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:40:42,965.965 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:40:42,966.966 INFO    ] No update needed
[2026-06-27 14:40:42,968.968 INFO    ] Checking for camera pi updates...
[2026-06-27 14:40:42,987.987 INFO    ] 200
[2026-06-27 14:40:42,988.988 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:40:43,012.012 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:40:43,056.056 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:40:43,057.057 INFO    ] No camera update needed
[2026-06-27 14:40:43,059.059 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:40:43,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:40:43,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:40:43,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:40:45,105.105 INFO    ] ================================================
[2026-06-27 14:40:45,121.121 INFO    ] Launching Daemon at Sat Jun 27 14:40:45 IST 2026
[2026-06-27 14:40:45,132.132 INFO    ] ================================================
[2026-06-27 14:40:45,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:40:45
[2026-06-27 14:40:45,842.842 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:40:45,992.992 INFO    ] Initializing speech engine...
[2026-06-27 14:40:45,997.997 INFO    ] 2026-06-27 14:40:45
[2026-06-27 14:40:46,206.206 INFO    ] 2026-06-27 14:40:46
[2026-06-27 14:40:46,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:40:46,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:40:46,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:40:46,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:40:46,714.714 INFO    ] time= 27/06/2026 14:40:46
[2026-06-27 14:40:46,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:40:46,741.741 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:40:46,848.848 INFO    ] No existing commands found in stream
[2026-06-27 14:40:51,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:40:51,861.861 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-27 14:40:55,008.008 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:40:55,009.009 INFO    ] Checking for system updates...
[2026-06-27 14:40:55,031.031 INFO    ] 200
[2026-06-27 14:40:55,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:40:55,063.063 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:40:55,064.064 INFO    ] No update needed
[2026-06-27 14:40:55,066.066 INFO    ] Checking for camera pi updates...
[2026-06-27 14:40:55,087.087 INFO    ] 200
[2026-06-27 14:40:55,089.089 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:40:55,112.112 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:40:55,141.141 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:40:55,143.143 INFO    ] No camera update needed
[2026-06-27 14:40:55,144.144 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:40:55,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:40:55,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:40:55,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:40:57,189.189 INFO    ] ================================================
[2026-06-27 14:40:57,205.205 INFO    ] Launching Daemon at Sat Jun 27 14:40:57 IST 2026
[2026-06-27 14:40:57,216.216 INFO    ] ================================================
[2026-06-27 14:40:57,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:40:57
[2026-06-27 14:40:57,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:40:58,088.088 INFO    ] Initializing speech engine...
[2026-06-27 14:40:58,092.092 INFO    ] 2026-06-27 14:40:58
[2026-06-27 14:40:58,301.301 INFO    ] 2026-06-27 14:40:58
[2026-06-27 14:40:58,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:40:58,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:40:58,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:40:58,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:40:58,744.744 INFO    ] time= 27/06/2026 14:40:58
[2026-06-27 14:40:58,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:40:58,752.752 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:40:58,820.820 INFO    ] No existing commands found in stream
[2026-06-27 14:41:03,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:41:03,835.835 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-27 14:41:08,277.277 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:41:08,278.278 INFO    ] Checking for system updates...
[2026-06-27 14:41:08,300.300 INFO    ] 200
[2026-06-27 14:41:08,302.302 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:41:08,337.337 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:41:08,338.338 INFO    ] No update needed
[2026-06-27 14:41:08,340.340 INFO    ] Checking for camera pi updates...
[2026-06-27 14:41:08,360.360 INFO    ] 200
[2026-06-27 14:41:08,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:41:08,385.385 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:41:08,411.411 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:41:08,413.413 INFO    ] No camera update needed
[2026-06-27 14:41:08,414.414 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:41:08,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:41:08,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:41:08,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:41:10,462.462 INFO    ] ================================================
[2026-06-27 14:41:10,478.478 INFO    ] Launching Daemon at Sat Jun 27 14:41:10 IST 2026
[2026-06-27 14:41:10,489.489 INFO    ] ================================================
[2026-06-27 14:41:10,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:41:10
[2026-06-27 14:41:11,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:41:11,277.277 INFO    ] Initializing speech engine...
[2026-06-27 14:41:11,281.281 INFO    ] 2026-06-27 14:41:11
[2026-06-27 14:41:11,498.498 INFO    ] 2026-06-27 14:41:11
[2026-06-27 14:41:11,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:41:11,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:41:11,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:41:11,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:41:11,937.937 INFO    ] time= 27/06/2026 14:41:11
[2026-06-27 14:41:11,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:41:11,944.944 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:41:12,036.036 INFO    ] No existing commands found in stream
[2026-06-27 14:41:17,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:41:17,058.058 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-27 14:41:21,165.165 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 14:41:21,167.167 INFO    ] Checking for system updates...
[2026-06-27 14:41:21,189.189 INFO    ] 200
[2026-06-27 14:41:21,191.191 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:41:21,224.224 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:41:21,225.225 INFO    ] No update needed
[2026-06-27 14:41:21,226.226 INFO    ] Checking for camera pi updates...
[2026-06-27 14:41:21,247.247 INFO    ] 200
[2026-06-27 14:41:21,249.249 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:41:21,276.276 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:41:21,316.316 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:41:21,318.318 INFO    ] No camera update needed
[2026-06-27 14:41:21,319.319 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:41:21,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:41:21,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:41:21,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:41:23,365.365 INFO    ] ================================================
[2026-06-27 14:41:23,381.381 INFO    ] Launching Daemon at Sat Jun 27 14:41:23 IST 2026
[2026-06-27 14:41:23,393.393 INFO    ] ================================================
[2026-06-27 14:41:23,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:41:23
[2026-06-27 14:41:24,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:41:24,195.195 INFO    ] Initializing speech engine...
[2026-06-27 14:41:24,200.200 INFO    ] 2026-06-27 14:41:24
[2026-06-27 14:41:24,404.404 INFO    ] 2026-06-27 14:41:24
[2026-06-27 14:41:24,433.433 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:41:24,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:41:24,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:41:24,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:41:24,845.845 INFO    ] time= 27/06/2026 14:41:24
[2026-06-27 14:41:24,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:41:24,851.851 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:41:24,918.918 INFO    ] No existing commands found in stream
[2026-06-27 14:41:29,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:41:29,930.930 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-27 14:41:32,324.324 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:41:32,325.325 INFO    ] Checking for system updates...
[2026-06-27 14:41:32,347.347 INFO    ] 200
[2026-06-27 14:41:32,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:41:32,395.395 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:41:32,398.398 INFO    ] No update needed
[2026-06-27 14:41:32,400.400 INFO    ] Checking for camera pi updates...
[2026-06-27 14:41:32,443.443 INFO    ] 200
[2026-06-27 14:41:32,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:41:32,478.478 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:41:32,505.505 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:41:32,506.506 INFO    ] No camera update needed
[2026-06-27 14:41:32,508.508 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:41:32,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:41:32,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:41:32,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:41:34,555.555 INFO    ] ================================================
[2026-06-27 14:41:34,571.571 INFO    ] Launching Daemon at Sat Jun 27 14:41:34 IST 2026
[2026-06-27 14:41:34,582.582 INFO    ] ================================================
[2026-06-27 14:41:34,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:41:34
[2026-06-27 14:41:35,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:41:35,407.407 INFO    ] Initializing speech engine...
[2026-06-27 14:41:35,416.416 INFO    ] 2026-06-27 14:41:35
[2026-06-27 14:41:35,630.630 INFO    ] 2026-06-27 14:41:35
[2026-06-27 14:41:35,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:41:35,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:41:35,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:41:36,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:41:36,072.072 INFO    ] time= 27/06/2026 14:41:36
[2026-06-27 14:41:36,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:41:36,080.080 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:41:36,147.147 INFO    ] No existing commands found in stream
[2026-06-27 14:41:41,161.161 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:41:41,164.164 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-27 14:41:42,357.357 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:41:42,358.358 INFO    ] Checking for system updates...
[2026-06-27 14:41:42,380.380 INFO    ] 200
[2026-06-27 14:41:42,381.381 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:41:42,412.412 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:41:42,413.413 INFO    ] No update needed
[2026-06-27 14:41:42,415.415 INFO    ] Checking for camera pi updates...
[2026-06-27 14:41:42,435.435 INFO    ] 200
[2026-06-27 14:41:42,436.436 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:41:42,459.459 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:41:42,514.514 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:41:42,516.516 INFO    ] No camera update needed
[2026-06-27 14:41:42,517.517 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:41:42,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:41:42,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:41:42,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:41:44,564.564 INFO    ] ================================================
[2026-06-27 14:41:44,581.581 INFO    ] Launching Daemon at Sat Jun 27 14:41:44 IST 2026
[2026-06-27 14:41:44,592.592 INFO    ] ================================================
[2026-06-27 14:41:44,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:41:44
[2026-06-27 14:41:45,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:41:45,424.424 INFO    ] Initializing speech engine...
[2026-06-27 14:41:45,429.429 INFO    ] 2026-06-27 14:41:45
[2026-06-27 14:41:45,636.636 INFO    ] 2026-06-27 14:41:45
[2026-06-27 14:41:45,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:41:45,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:41:45,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:41:46,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:41:46,145.145 INFO    ] time= 27/06/2026 14:41:46
[2026-06-27 14:41:46,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:41:46,177.177 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:41:46,307.307 INFO    ] No existing commands found in stream
[2026-06-27 14:41:51,317.317 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:41:51,320.320 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-27 14:41:52,678.678 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 14:41:52,680.680 INFO    ] Checking for system updates...
[2026-06-27 14:41:52,701.701 INFO    ] 200
[2026-06-27 14:41:52,702.702 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:41:52,737.737 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:41:52,738.738 INFO    ] No update needed
[2026-06-27 14:41:52,739.739 INFO    ] Checking for camera pi updates...
[2026-06-27 14:41:52,759.759 INFO    ] 200
[2026-06-27 14:41:52,760.760 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:41:52,783.783 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:41:52,835.835 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:41:52,836.836 INFO    ] No camera update needed
[2026-06-27 14:41:52,837.837 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:41:52,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:41:52,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:41:52,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:41:54,885.885 INFO    ] ================================================
[2026-06-27 14:41:54,900.900 INFO    ] Launching Daemon at Sat Jun 27 14:41:54 IST 2026
[2026-06-27 14:41:54,910.910 INFO    ] ================================================
[2026-06-27 14:41:55,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:41:55
[2026-06-27 14:41:55,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:41:55,724.724 INFO    ] Initializing speech engine...
[2026-06-27 14:41:55,729.729 INFO    ] 2026-06-27 14:41:55
[2026-06-27 14:41:55,933.933 INFO    ] 2026-06-27 14:41:55
[2026-06-27 14:41:55,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:41:56,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:41:56,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:41:56,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:41:56,371.371 INFO    ] time= 27/06/2026 14:41:56
[2026-06-27 14:41:56,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:41:56,378.378 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:41:56,469.469 INFO    ] No existing commands found in stream
[2026-06-27 14:42:01,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:42:01,480.480 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-27 14:42:05,010.010 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:42:05,012.012 INFO    ] Checking for system updates...
[2026-06-27 14:42:05,033.033 INFO    ] 200
[2026-06-27 14:42:05,034.034 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:42:05,067.067 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:42:05,068.068 INFO    ] No update needed
[2026-06-27 14:42:05,070.070 INFO    ] Checking for camera pi updates...
[2026-06-27 14:42:05,089.089 INFO    ] 200
[2026-06-27 14:42:05,090.090 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:42:05,116.116 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:42:05,161.161 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:42:05,162.162 INFO    ] No camera update needed
[2026-06-27 14:42:05,163.163 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:42:05,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:42:05,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:42:05,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:42:07,210.210 INFO    ] ================================================
[2026-06-27 14:42:07,225.225 INFO    ] Launching Daemon at Sat Jun 27 14:42:07 IST 2026
[2026-06-27 14:42:07,235.235 INFO    ] ================================================
[2026-06-27 14:42:07,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:42:07
[2026-06-27 14:42:07,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:42:08,053.053 INFO    ] Initializing speech engine...
[2026-06-27 14:42:08,059.059 INFO    ] 2026-06-27 14:42:08
[2026-06-27 14:42:08,266.266 INFO    ] 2026-06-27 14:42:08
[2026-06-27 14:42:08,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:42:08,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:42:08,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:42:08,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:42:08,686.686 INFO    ] time= 27/06/2026 14:42:08
[2026-06-27 14:42:08,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:42:08,714.714 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:42:08,782.782 INFO    ] No existing commands found in stream
[2026-06-27 14:42:13,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:42:13,804.804 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-27 14:42:14,558.558 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 14:42:14,559.559 INFO    ] Checking for system updates...
[2026-06-27 14:42:14,580.580 INFO    ] 200
[2026-06-27 14:42:14,581.581 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:42:14,613.613 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:42:14,614.614 INFO    ] No update needed
[2026-06-27 14:42:14,616.616 INFO    ] Checking for camera pi updates...
[2026-06-27 14:42:14,635.635 INFO    ] 200
[2026-06-27 14:42:14,637.637 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:42:14,661.661 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:42:14,706.706 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:42:14,707.707 INFO    ] No camera update needed
[2026-06-27 14:42:14,708.708 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:42:14,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:42:14,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:42:14,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:42:16,753.753 INFO    ] ================================================
[2026-06-27 14:42:16,768.768 INFO    ] Launching Daemon at Sat Jun 27 14:42:16 IST 2026
[2026-06-27 14:42:16,779.779 INFO    ] ================================================
[2026-06-27 14:42:17,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:42:17
[2026-06-27 14:42:17,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:42:17,594.594 INFO    ] Initializing speech engine...
[2026-06-27 14:42:17,599.599 INFO    ] 2026-06-27 14:42:17
[2026-06-27 14:42:17,813.813 INFO    ] 2026-06-27 14:42:17
[2026-06-27 14:42:17,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:42:18,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:42:18,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:42:18,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:42:18,260.260 INFO    ] time= 27/06/2026 14:42:18
[2026-06-27 14:42:18,262.262 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:42:18,264.264 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:42:18,330.330 INFO    ] No existing commands found in stream
[2026-06-27 14:42:23,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:42:23,342.342 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-27 14:42:24,149.149 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:42:24,152.152 INFO    ] Checking for system updates...
[2026-06-27 14:42:24,189.189 INFO    ] 200
[2026-06-27 14:42:24,192.192 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:42:24,247.247 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:42:24,250.250 INFO    ] No update needed
[2026-06-27 14:42:24,252.252 INFO    ] Checking for camera pi updates...
[2026-06-27 14:42:24,287.287 INFO    ] 200
[2026-06-27 14:42:24,289.289 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:42:24,324.324 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:42:24,361.361 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:42:24,362.362 INFO    ] No camera update needed
[2026-06-27 14:42:24,364.364 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:42:24,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:42:24,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:42:24,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:42:26,411.411 INFO    ] ================================================
[2026-06-27 14:42:26,427.427 INFO    ] Launching Daemon at Sat Jun 27 14:42:26 IST 2026
[2026-06-27 14:42:26,437.437 INFO    ] ================================================
[2026-06-27 14:42:26,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:42:26
[2026-06-27 14:42:27,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:42:27,215.215 INFO    ] Initializing speech engine...
[2026-06-27 14:42:27,219.219 INFO    ] 2026-06-27 14:42:27
[2026-06-27 14:42:27,444.444 INFO    ] 2026-06-27 14:42:27
[2026-06-27 14:42:27,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:42:27,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:42:27,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:42:27,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:42:27,854.854 INFO    ] time= 27/06/2026 14:42:27
[2026-06-27 14:42:27,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:42:27,895.895 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:42:27,967.967 INFO    ] No existing commands found in stream
[2026-06-27 14:42:32,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:42:32,985.985 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-27 14:42:35,638.638 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 14:42:35,640.640 INFO    ] Checking for system updates...
[2026-06-27 14:42:35,660.660 INFO    ] 200
[2026-06-27 14:42:35,662.662 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:42:35,695.695 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:42:35,696.696 INFO    ] No update needed
[2026-06-27 14:42:35,697.697 INFO    ] Checking for camera pi updates...
[2026-06-27 14:42:35,717.717 INFO    ] 200
[2026-06-27 14:42:35,719.719 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:42:35,742.742 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:42:35,788.788 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:42:35,790.790 INFO    ] No camera update needed
[2026-06-27 14:42:35,791.791 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:42:35,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:42:35,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:42:35,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:42:37,838.838 INFO    ] ================================================
[2026-06-27 14:42:37,853.853 INFO    ] Launching Daemon at Sat Jun 27 14:42:37 IST 2026
[2026-06-27 14:42:37,864.864 INFO    ] ================================================
[2026-06-27 14:42:38,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:42:38
[2026-06-27 14:42:38,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:42:38,678.678 INFO    ] Initializing speech engine...
[2026-06-27 14:42:38,690.690 INFO    ] 2026-06-27 14:42:38
[2026-06-27 14:42:38,908.908 INFO    ] 2026-06-27 14:42:38
[2026-06-27 14:42:38,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:42:39,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:42:39,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:42:39,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:42:39,373.373 INFO    ] time= 27/06/2026 14:42:39
[2026-06-27 14:42:39,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:42:39,385.385 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:42:39,455.455 INFO    ] No existing commands found in stream
[2026-06-27 14:42:44,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:42:44,468.468 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-27 14:42:46,166.166 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:42:46,168.168 INFO    ] Checking for system updates...
[2026-06-27 14:42:46,190.190 INFO    ] 200
[2026-06-27 14:42:46,191.191 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:42:46,222.222 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:42:46,223.223 INFO    ] No update needed
[2026-06-27 14:42:46,225.225 INFO    ] Checking for camera pi updates...
[2026-06-27 14:42:46,245.245 INFO    ] 200
[2026-06-27 14:42:46,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:42:46,271.271 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:42:46,314.314 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:42:46,315.315 INFO    ] No camera update needed
[2026-06-27 14:42:46,317.317 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:42:46,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:42:46,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:42:46,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:42:48,363.363 INFO    ] ================================================
[2026-06-27 14:42:48,379.379 INFO    ] Launching Daemon at Sat Jun 27 14:42:48 IST 2026
[2026-06-27 14:42:48,390.390 INFO    ] ================================================
[2026-06-27 14:42:48,732.732 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:42:48
[2026-06-27 14:42:49,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:42:49,177.177 INFO    ] Initializing speech engine...
[2026-06-27 14:42:49,184.184 INFO    ] 2026-06-27 14:42:49
[2026-06-27 14:42:49,400.400 INFO    ] 2026-06-27 14:42:49
[2026-06-27 14:42:49,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:42:49,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:42:49,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:42:49,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:42:49,843.843 INFO    ] time= 27/06/2026 14:42:49
[2026-06-27 14:42:49,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:42:49,850.850 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:42:49,942.942 INFO    ] No existing commands found in stream
[2026-06-27 14:42:54,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:42:54,953.953 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-27 14:42:55,449.449 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 14:42:55,451.451 INFO    ] Checking for system updates...
[2026-06-27 14:42:55,473.473 INFO    ] 200
[2026-06-27 14:42:55,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:42:55,505.505 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:42:55,507.507 INFO    ] No update needed
[2026-06-27 14:42:55,508.508 INFO    ] Checking for camera pi updates...
[2026-06-27 14:42:55,528.528 INFO    ] 200
[2026-06-27 14:42:55,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:42:55,553.553 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:42:55,674.674 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:42:55,675.675 INFO    ] No camera update needed
[2026-06-27 14:42:55,677.677 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:42:55,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:42:55,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:42:55,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:42:57,724.724 INFO    ] ================================================
[2026-06-27 14:42:57,739.739 INFO    ] Launching Daemon at Sat Jun 27 14:42:57 IST 2026
[2026-06-27 14:42:57,750.750 INFO    ] ================================================
[2026-06-27 14:42:58,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:42:58
[2026-06-27 14:42:58,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:42:58,582.582 INFO    ] Initializing speech engine...
[2026-06-27 14:42:58,588.588 INFO    ] 2026-06-27 14:42:58
[2026-06-27 14:42:58,789.789 INFO    ] 2026-06-27 14:42:58
[2026-06-27 14:42:58,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:42:59,026.026 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:42:59,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:42:59,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:42:59,231.231 INFO    ] time= 27/06/2026 14:42:59
[2026-06-27 14:42:59,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:42:59,238.238 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:42:59,306.306 INFO    ] No existing commands found in stream
[2026-06-27 14:43:04,315.315 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:43:04,317.317 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-27 14:43:06,464.464 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:43:06,466.466 INFO    ] Checking for system updates...
[2026-06-27 14:43:06,487.487 INFO    ] 200
[2026-06-27 14:43:06,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:43:06,519.519 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:43:06,521.521 INFO    ] No update needed
[2026-06-27 14:43:06,522.522 INFO    ] Checking for camera pi updates...
[2026-06-27 14:43:06,543.543 INFO    ] 200
[2026-06-27 14:43:06,545.545 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:43:06,571.571 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:43:06,615.615 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:43:06,616.616 INFO    ] No camera update needed
[2026-06-27 14:43:06,618.618 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:43:06,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:43:06,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:43:06,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:43:08,666.666 INFO    ] ================================================
[2026-06-27 14:43:08,681.681 INFO    ] Launching Daemon at Sat Jun 27 14:43:08 IST 2026
[2026-06-27 14:43:08,692.692 INFO    ] ================================================
[2026-06-27 14:43:09,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:43:09
[2026-06-27 14:43:09,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:43:09,502.502 INFO    ] Initializing speech engine...
[2026-06-27 14:43:09,507.507 INFO    ] 2026-06-27 14:43:09
[2026-06-27 14:43:09,714.714 INFO    ] 2026-06-27 14:43:09
[2026-06-27 14:43:09,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:43:09,878.878 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:43:09,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:43:10,068.068 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:43:10,129.129 INFO    ] time= 27/06/2026 14:43:10
[2026-06-27 14:43:10,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:43:10,169.169 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:43:10,236.236 INFO    ] No existing commands found in stream
[2026-06-27 14:43:15,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:43:15,248.248 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-27 14:43:17,548.548 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 14:43:17,550.550 INFO    ] Checking for system updates...
[2026-06-27 14:43:17,574.574 INFO    ] 200
[2026-06-27 14:43:17,575.575 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:43:17,607.607 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:43:17,608.608 INFO    ] No update needed
[2026-06-27 14:43:17,610.610 INFO    ] Checking for camera pi updates...
[2026-06-27 14:43:17,630.630 INFO    ] 200
[2026-06-27 14:43:17,631.631 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:43:17,655.655 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:43:17,701.701 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:43:17,702.702 INFO    ] No camera update needed
[2026-06-27 14:43:17,704.704 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:43:17,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:43:17,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:43:17,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:43:19,753.753 INFO    ] ================================================
[2026-06-27 14:43:19,769.769 INFO    ] Launching Daemon at Sat Jun 27 14:43:19 IST 2026
[2026-06-27 14:43:19,781.781 INFO    ] ================================================
[2026-06-27 14:43:20,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:43:20
[2026-06-27 14:43:20,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:43:20,563.563 INFO    ] Initializing speech engine...
[2026-06-27 14:43:20,576.576 INFO    ] 2026-06-27 14:43:20
[2026-06-27 14:43:20,782.782 INFO    ] 2026-06-27 14:43:20
[2026-06-27 14:43:20,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:43:20,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:43:21,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:43:21,148.148 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:43:21,201.201 INFO    ] time= 27/06/2026 14:43:21
[2026-06-27 14:43:21,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:43:21,229.229 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:43:21,304.304 INFO    ] No existing commands found in stream
[2026-06-27 14:43:26,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:43:26,316.316 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-27 14:43:26,787.787 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 14:43:26,788.788 INFO    ] Checking for system updates...
[2026-06-27 14:43:26,809.809 INFO    ] 200
[2026-06-27 14:43:26,810.810 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:43:26,841.841 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:43:26,842.842 INFO    ] No update needed
[2026-06-27 14:43:26,843.843 INFO    ] Checking for camera pi updates...
[2026-06-27 14:43:26,863.863 INFO    ] 200
[2026-06-27 14:43:26,864.864 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:43:26,887.887 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:43:26,928.928 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:43:26,929.929 INFO    ] No camera update needed
[2026-06-27 14:43:26,930.930 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:43:26,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:43:26,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:43:26,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:43:28,975.975 INFO    ] ================================================
[2026-06-27 14:43:28,990.990 INFO    ] Launching Daemon at Sat Jun 27 14:43:28 IST 2026
[2026-06-27 14:43:29,002.002 INFO    ] ================================================
[2026-06-27 14:43:29,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:43:29
[2026-06-27 14:43:29,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:43:29,776.776 INFO    ] Initializing speech engine...
[2026-06-27 14:43:29,781.781 INFO    ] 2026-06-27 14:43:29
[2026-06-27 14:43:29,973.973 INFO    ] 2026-06-27 14:43:29
[2026-06-27 14:43:30,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:43:30,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:43:30,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:43:30,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:43:30,401.401 INFO    ] time= 27/06/2026 14:43:30
[2026-06-27 14:43:30,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:43:30,488.488 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:43:30,607.607 INFO    ] No existing commands found in stream
[2026-06-27 14:43:35,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:43:35,619.619 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-27 14:43:36,553.553 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 14:43:36,555.555 INFO    ] Checking for system updates...
[2026-06-27 14:43:36,576.576 INFO    ] 200
[2026-06-27 14:43:36,577.577 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:43:36,610.610 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:43:36,611.611 INFO    ] No update needed
[2026-06-27 14:43:36,612.612 INFO    ] Checking for camera pi updates...
[2026-06-27 14:43:36,632.632 INFO    ] 200
[2026-06-27 14:43:36,634.634 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:43:36,659.659 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:43:36,709.709 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:43:36,710.710 INFO    ] No camera update needed
[2026-06-27 14:43:36,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:43:36,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:43:36,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:43:36,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:43:38,757.757 INFO    ] ================================================
[2026-06-27 14:43:38,772.772 INFO    ] Launching Daemon at Sat Jun 27 14:43:38 IST 2026
[2026-06-27 14:43:38,782.782 INFO    ] ================================================
[2026-06-27 14:43:39,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:43:39
[2026-06-27 14:43:39,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:43:39,601.601 INFO    ] Initializing speech engine...
[2026-06-27 14:43:39,606.606 INFO    ] 2026-06-27 14:43:39
[2026-06-27 14:43:39,809.809 INFO    ] 2026-06-27 14:43:39
[2026-06-27 14:43:39,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:43:40,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:43:40,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:43:40,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:43:40,226.226 INFO    ] time= 27/06/2026 14:43:40
[2026-06-27 14:43:40,249.249 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:43:40,255.255 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:43:40,322.322 INFO    ] No existing commands found in stream
[2026-06-27 14:43:45,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:43:45,357.357 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-27 14:43:47,523.523 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:43:47,525.525 INFO    ] Checking for system updates...
[2026-06-27 14:43:47,563.563 INFO    ] 200
[2026-06-27 14:43:47,564.564 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:43:47,596.596 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:43:47,598.598 INFO    ] No update needed
[2026-06-27 14:43:47,599.599 INFO    ] Checking for camera pi updates...
[2026-06-27 14:43:47,618.618 INFO    ] 200
[2026-06-27 14:43:47,620.620 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:43:47,643.643 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:43:47,684.684 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:43:47,686.686 INFO    ] No camera update needed
[2026-06-27 14:43:47,687.687 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:43:47,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:43:47,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:43:47,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:43:49,733.733 INFO    ] ================================================
[2026-06-27 14:43:49,748.748 INFO    ] Launching Daemon at Sat Jun 27 14:43:49 IST 2026
[2026-06-27 14:43:49,759.759 INFO    ] ================================================
[2026-06-27 14:43:50,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:43:50
[2026-06-27 14:43:50,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:43:50,563.563 INFO    ] Initializing speech engine...
[2026-06-27 14:43:50,577.577 INFO    ] 2026-06-27 14:43:50
[2026-06-27 14:43:50,784.784 INFO    ] 2026-06-27 14:43:50
[2026-06-27 14:43:50,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:43:50,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:43:50,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:43:51,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:43:51,227.227 INFO    ] time= 27/06/2026 14:43:51
[2026-06-27 14:43:51,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:43:51,231.231 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:43:51,296.296 INFO    ] No existing commands found in stream
[2026-06-27 14:43:56,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:43:56,309.309 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-27 14:44:00,584.584 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 14:44:00,585.585 INFO    ] Checking for system updates...
[2026-06-27 14:44:00,606.606 INFO    ] 200
[2026-06-27 14:44:00,608.608 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:44:00,638.638 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:44:00,639.639 INFO    ] No update needed
[2026-06-27 14:44:00,640.640 INFO    ] Checking for camera pi updates...
[2026-06-27 14:44:00,660.660 INFO    ] 200
[2026-06-27 14:44:00,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:44:00,684.684 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:44:00,732.732 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:44:00,733.733 INFO    ] No camera update needed
[2026-06-27 14:44:00,734.734 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:44:00,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:44:00,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:44:00,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:44:02,774.774 INFO    ] ================================================
[2026-06-27 14:44:02,789.789 INFO    ] Launching Daemon at Sat Jun 27 14:44:02 IST 2026
[2026-06-27 14:44:02,800.800 INFO    ] ================================================
[2026-06-27 14:44:03,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:44:03
[2026-06-27 14:44:03,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:44:03,621.621 INFO    ] Initializing speech engine...
[2026-06-27 14:44:03,626.626 INFO    ] 2026-06-27 14:44:03
[2026-06-27 14:44:03,833.833 INFO    ] 2026-06-27 14:44:03
[2026-06-27 14:44:03,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:44:04,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:44:04,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:44:04,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:44:04,345.345 INFO    ] time= 27/06/2026 14:44:04
[2026-06-27 14:44:04,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:44:04,372.372 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:44:04,475.475 INFO    ] No existing commands found in stream
[2026-06-27 14:44:09,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:44:09,487.487 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-27 14:44:10,288.288 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:44:10,289.289 INFO    ] Checking for system updates...
[2026-06-27 14:44:10,311.311 INFO    ] 200
[2026-06-27 14:44:10,312.312 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:44:10,342.342 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:44:10,344.344 INFO    ] No update needed
[2026-06-27 14:44:10,345.345 INFO    ] Checking for camera pi updates...
[2026-06-27 14:44:10,365.365 INFO    ] 200
[2026-06-27 14:44:10,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:44:10,389.389 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:44:10,537.537 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:44:10,539.539 INFO    ] No camera update needed
[2026-06-27 14:44:10,540.540 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:44:10,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:44:10,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:44:10,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:44:12,587.587 INFO    ] ================================================
[2026-06-27 14:44:12,602.602 INFO    ] Launching Daemon at Sat Jun 27 14:44:12 IST 2026
[2026-06-27 14:44:12,613.613 INFO    ] ================================================
[2026-06-27 14:44:12,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:44:12
[2026-06-27 14:44:13,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:44:13,444.444 INFO    ] Initializing speech engine...
[2026-06-27 14:44:13,449.449 INFO    ] 2026-06-27 14:44:13
[2026-06-27 14:44:13,652.652 INFO    ] 2026-06-27 14:44:13
[2026-06-27 14:44:13,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:44:13,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:44:13,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:44:14,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:44:14,099.099 INFO    ] time= 27/06/2026 14:44:14
[2026-06-27 14:44:14,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:44:14,102.102 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:44:14,193.193 INFO    ] No existing commands found in stream
[2026-06-27 14:44:19,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:44:19,210.210 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-27 14:44:21,849.849 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 14:44:21,850.850 INFO    ] Checking for system updates...
[2026-06-27 14:44:21,871.871 INFO    ] 200
[2026-06-27 14:44:21,873.873 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:44:21,906.906 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:44:21,907.907 INFO    ] No update needed
[2026-06-27 14:44:21,909.909 INFO    ] Checking for camera pi updates...
[2026-06-27 14:44:21,931.931 INFO    ] 200
[2026-06-27 14:44:21,932.932 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:44:21,956.956 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:44:22,004.004 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:44:22,006.006 INFO    ] No camera update needed
[2026-06-27 14:44:22,008.008 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:44:22,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:44:22,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:44:22,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:44:24,057.057 INFO    ] ================================================
[2026-06-27 14:44:24,073.073 INFO    ] Launching Daemon at Sat Jun 27 14:44:24 IST 2026
[2026-06-27 14:44:24,084.084 INFO    ] ================================================
[2026-06-27 14:44:24,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:44:24
[2026-06-27 14:44:24,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:44:24,877.877 INFO    ] Initializing speech engine...
[2026-06-27 14:44:24,880.880 INFO    ] 2026-06-27 14:44:24
[2026-06-27 14:44:25,096.096 INFO    ] 2026-06-27 14:44:25
[2026-06-27 14:44:25,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:44:25,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:44:25,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:44:25,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:44:25,522.522 INFO    ] time= 27/06/2026 14:44:25
[2026-06-27 14:44:25,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:44:25,544.544 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:44:25,609.609 INFO    ] No existing commands found in stream
[2026-06-27 14:44:30,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:44:30,622.622 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-27 14:44:31,854.854 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:44:31,856.856 INFO    ] Checking for system updates...
[2026-06-27 14:44:31,883.883 INFO    ] 200
[2026-06-27 14:44:31,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:44:31,917.917 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:44:31,918.918 INFO    ] No update needed
[2026-06-27 14:44:31,919.919 INFO    ] Checking for camera pi updates...
[2026-06-27 14:44:31,940.940 INFO    ] 200
[2026-06-27 14:44:31,941.941 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:44:31,965.965 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:44:32,014.014 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:44:32,017.017 INFO    ] No camera update needed
[2026-06-27 14:44:32,019.019 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:44:32,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:44:32,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:44:32,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:44:34,073.073 INFO    ] ================================================
[2026-06-27 14:44:34,089.089 INFO    ] Launching Daemon at Sat Jun 27 14:44:34 IST 2026
[2026-06-27 14:44:34,100.100 INFO    ] ================================================
[2026-06-27 14:44:34,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:44:34
[2026-06-27 14:44:34,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:44:34,903.903 INFO    ] Initializing speech engine...
[2026-06-27 14:44:34,908.908 INFO    ] 2026-06-27 14:44:34
[2026-06-27 14:44:35,112.112 INFO    ] 2026-06-27 14:44:35
[2026-06-27 14:44:35,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:44:35,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:44:35,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:44:35,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:44:35,551.551 INFO    ] time= 27/06/2026 14:44:35
[2026-06-27 14:44:35,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:44:35,559.559 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:44:35,649.649 INFO    ] No existing commands found in stream
[2026-06-27 14:44:40,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:44:40,666.666 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-27 14:44:41,154.154 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 14:44:41,155.155 INFO    ] Checking for system updates...
[2026-06-27 14:44:41,177.177 INFO    ] 200
[2026-06-27 14:44:41,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:44:41,210.210 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:44:41,211.211 INFO    ] No update needed
[2026-06-27 14:44:41,213.213 INFO    ] Checking for camera pi updates...
[2026-06-27 14:44:41,235.235 INFO    ] 200
[2026-06-27 14:44:41,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:44:41,261.261 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:44:41,304.304 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:44:41,306.306 INFO    ] No camera update needed
[2026-06-27 14:44:41,307.307 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:44:41,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:44:41,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:44:41,314.314 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:44:43,354.354 INFO    ] ================================================
[2026-06-27 14:44:43,370.370 INFO    ] Launching Daemon at Sat Jun 27 14:44:43 IST 2026
[2026-06-27 14:44:43,382.382 INFO    ] ================================================
[2026-06-27 14:44:43,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:44:43
[2026-06-27 14:44:44,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:44:44,204.204 INFO    ] Initializing speech engine...
[2026-06-27 14:44:44,208.208 INFO    ] 2026-06-27 14:44:44
[2026-06-27 14:44:44,416.416 INFO    ] 2026-06-27 14:44:44
[2026-06-27 14:44:44,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:44:44,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:44:44,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:44:44,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:44:44,832.832 INFO    ] time= 27/06/2026 14:44:44
[2026-06-27 14:44:44,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:44:44,866.866 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:44:44,956.956 INFO    ] No existing commands found in stream
[2026-06-27 14:44:49,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:44:49,968.968 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-27 14:44:51,842.842 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 14:44:51,844.844 INFO    ] Checking for system updates...
[2026-06-27 14:44:51,865.865 INFO    ] 200
[2026-06-27 14:44:51,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:44:51,898.898 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:44:51,899.899 INFO    ] No update needed
[2026-06-27 14:44:51,901.901 INFO    ] Checking for camera pi updates...
[2026-06-27 14:44:51,920.920 INFO    ] 200
[2026-06-27 14:44:51,921.921 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:44:51,944.944 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:44:51,990.990 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:44:51,991.991 INFO    ] No camera update needed
[2026-06-27 14:44:51,993.993 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:44:51,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:44:51,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:44:52,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:44:54,040.040 INFO    ] ================================================
[2026-06-27 14:44:54,055.055 INFO    ] Launching Daemon at Sat Jun 27 14:44:54 IST 2026
[2026-06-27 14:44:54,067.067 INFO    ] ================================================
[2026-06-27 14:44:54,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:44:54
[2026-06-27 14:44:54,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:44:54,845.845 INFO    ] Initializing speech engine...
[2026-06-27 14:44:54,850.850 INFO    ] 2026-06-27 14:44:54
[2026-06-27 14:44:55,055.055 INFO    ] 2026-06-27 14:44:55
[2026-06-27 14:44:55,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:44:55,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:44:55,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:44:55,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:44:55,615.615 INFO    ] time= 27/06/2026 14:44:55
[2026-06-27 14:44:55,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:44:55,621.621 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:44:55,705.705 INFO    ] No existing commands found in stream
[2026-06-27 14:45:00,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:45:00,718.718 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-27 14:45:01,226.226 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:45:01,227.227 INFO    ] Checking for system updates...
[2026-06-27 14:45:01,248.248 INFO    ] 200
[2026-06-27 14:45:01,249.249 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:45:01,293.293 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:45:01,296.296 INFO    ] No update needed
[2026-06-27 14:45:01,299.299 INFO    ] Checking for camera pi updates...
[2026-06-27 14:45:01,355.355 INFO    ] 200
[2026-06-27 14:45:01,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:45:01,485.485 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:45:01,560.560 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:45:01,563.563 INFO    ] No camera update needed
[2026-06-27 14:45:01,580.580 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:45:01,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:45:01,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:45:01,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:45:03,666.666 INFO    ] ================================================
[2026-06-27 14:45:03,681.681 INFO    ] Launching Daemon at Sat Jun 27 14:45:03 IST 2026
[2026-06-27 14:45:03,692.692 INFO    ] ================================================
[2026-06-27 14:45:04,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:45:04
[2026-06-27 14:45:04,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:45:04,467.467 INFO    ] Initializing speech engine...
[2026-06-27 14:45:04,475.475 INFO    ] 2026-06-27 14:45:04
[2026-06-27 14:45:04,688.688 INFO    ] 2026-06-27 14:45:04
[2026-06-27 14:45:04,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:45:04,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:45:04,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:45:05,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:45:05,137.137 INFO    ] time= 27/06/2026 14:45:05
[2026-06-27 14:45:05,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:45:05,144.144 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:45:05,212.212 INFO    ] No existing commands found in stream
[2026-06-27 14:45:10,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:45:10,228.228 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-27 14:45:10,888.888 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 14:45:10,890.890 INFO    ] Checking for system updates...
[2026-06-27 14:45:10,912.912 INFO    ] 200
[2026-06-27 14:45:10,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:45:10,944.944 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:45:10,945.945 INFO    ] No update needed
[2026-06-27 14:45:10,947.947 INFO    ] Checking for camera pi updates...
[2026-06-27 14:45:10,966.966 INFO    ] 200
[2026-06-27 14:45:10,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:45:10,992.992 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:45:11,045.045 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:45:11,047.047 INFO    ] No camera update needed
[2026-06-27 14:45:11,048.048 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:45:11,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:45:11,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:45:11,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:45:13,088.088 INFO    ] ================================================
[2026-06-27 14:45:13,097.097 INFO    ] Launching Daemon at Sat Jun 27 14:45:13 IST 2026
[2026-06-27 14:45:13,104.104 INFO    ] ================================================
[2026-06-27 14:45:13,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:45:13
[2026-06-27 14:45:13,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:45:13,979.979 INFO    ] Initializing speech engine...
[2026-06-27 14:45:13,986.986 INFO    ] 2026-06-27 14:45:13
[2026-06-27 14:45:14,207.207 INFO    ] 2026-06-27 14:45:14
[2026-06-27 14:45:14,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:45:14,365.365 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:45:14,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:45:14,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:45:14,638.638 INFO    ] time= 27/06/2026 14:45:14
[2026-06-27 14:45:14,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:45:14,672.672 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:45:14,742.742 INFO    ] No existing commands found in stream
[2026-06-27 14:45:19,751.751 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:45:19,754.754 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-27 14:45:23,608.608 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 14:45:23,610.610 INFO    ] Checking for system updates...
[2026-06-27 14:45:23,630.630 INFO    ] 200
[2026-06-27 14:45:23,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:45:23,665.665 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:45:23,666.666 INFO    ] No update needed
[2026-06-27 14:45:23,667.667 INFO    ] Checking for camera pi updates...
[2026-06-27 14:45:23,687.687 INFO    ] 200
[2026-06-27 14:45:23,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:45:23,714.714 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:45:23,768.768 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:45:23,770.770 INFO    ] No camera update needed
[2026-06-27 14:45:23,771.771 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:45:23,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:45:23,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:45:23,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:45:25,810.810 INFO    ] ================================================
[2026-06-27 14:45:25,825.825 INFO    ] Launching Daemon at Sat Jun 27 14:45:25 IST 2026
[2026-06-27 14:45:25,836.836 INFO    ] ================================================
[2026-06-27 14:45:26,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:45:26
[2026-06-27 14:45:26,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:45:26,724.724 INFO    ] Initializing speech engine...
[2026-06-27 14:45:26,730.730 INFO    ] 2026-06-27 14:45:26
[2026-06-27 14:45:26,939.939 INFO    ] 2026-06-27 14:45:26
[2026-06-27 14:45:26,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:45:27,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:45:27,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:45:27,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:45:27,359.359 INFO    ] time= 27/06/2026 14:45:27
[2026-06-27 14:45:27,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:45:27,389.389 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:45:27,456.456 INFO    ] No existing commands found in stream
[2026-06-27 14:45:32,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:45:32,492.492 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-27 14:45:33,206.206 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 14:45:33,207.207 INFO    ] Checking for system updates...
[2026-06-27 14:45:33,230.230 INFO    ] 200
[2026-06-27 14:45:33,231.231 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:45:33,267.267 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:45:33,269.269 INFO    ] No update needed
[2026-06-27 14:45:33,270.270 INFO    ] Checking for camera pi updates...
[2026-06-27 14:45:33,292.292 INFO    ] 200
[2026-06-27 14:45:33,294.294 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:45:33,318.318 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:45:33,354.354 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:45:33,355.355 INFO    ] No camera update needed
[2026-06-27 14:45:33,357.357 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:45:33,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:45:33,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:45:33,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:45:35,404.404 INFO    ] ================================================
[2026-06-27 14:45:35,419.419 INFO    ] Launching Daemon at Sat Jun 27 14:45:35 IST 2026
[2026-06-27 14:45:35,430.430 INFO    ] ================================================
[2026-06-27 14:45:35,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:45:35
[2026-06-27 14:45:36,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:45:36,234.234 INFO    ] Initializing speech engine...
[2026-06-27 14:45:36,239.239 INFO    ] 2026-06-27 14:45:36
[2026-06-27 14:45:36,426.426 INFO    ] 2026-06-27 14:45:36
[2026-06-27 14:45:36,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:45:36,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:45:36,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:45:36,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:45:36,891.891 INFO    ] time= 27/06/2026 14:45:36
[2026-06-27 14:45:36,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:45:36,933.933 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:45:37,010.010 INFO    ] No existing commands found in stream
[2026-06-27 14:45:42,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:45:42,022.022 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-27 14:45:44,541.541 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:45:44,542.542 INFO    ] Checking for system updates...
[2026-06-27 14:45:44,563.563 INFO    ] 200
[2026-06-27 14:45:44,564.564 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:45:44,597.597 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:45:44,598.598 INFO    ] No update needed
[2026-06-27 14:45:44,599.599 INFO    ] Checking for camera pi updates...
[2026-06-27 14:45:44,619.619 INFO    ] 200
[2026-06-27 14:45:44,620.620 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:45:44,645.645 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:45:44,686.686 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:45:44,688.688 INFO    ] No camera update needed
[2026-06-27 14:45:44,689.689 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:45:44,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:45:44,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:45:44,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:45:46,735.735 INFO    ] ================================================
[2026-06-27 14:45:46,750.750 INFO    ] Launching Daemon at Sat Jun 27 14:45:46 IST 2026
[2026-06-27 14:45:46,762.762 INFO    ] ================================================
[2026-06-27 14:45:47,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:45:47
[2026-06-27 14:45:47,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:45:47,651.651 INFO    ] Initializing speech engine...
[2026-06-27 14:45:47,660.660 INFO    ] 2026-06-27 14:45:47
[2026-06-27 14:45:47,881.881 INFO    ] 2026-06-27 14:45:47
[2026-06-27 14:45:47,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:45:48,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:45:48,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:45:48,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:45:48,326.326 INFO    ] time= 27/06/2026 14:45:48
[2026-06-27 14:45:48,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:45:48,334.334 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:45:48,402.402 INFO    ] No existing commands found in stream
[2026-06-27 14:45:53,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:45:53,419.419 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-27 14:45:55,731.731 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 14:45:55,733.733 INFO    ] Checking for system updates...
[2026-06-27 14:45:55,755.755 INFO    ] 200
[2026-06-27 14:45:55,757.757 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:45:55,789.789 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:45:55,791.791 INFO    ] No update needed
[2026-06-27 14:45:55,792.792 INFO    ] Checking for camera pi updates...
[2026-06-27 14:45:55,812.812 INFO    ] 200
[2026-06-27 14:45:55,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:45:55,839.839 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:45:55,881.881 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:45:55,882.882 INFO    ] No camera update needed
[2026-06-27 14:45:55,883.883 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:45:55,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:45:55,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:45:55,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:45:57,930.930 INFO    ] ================================================
[2026-06-27 14:45:57,946.946 INFO    ] Launching Daemon at Sat Jun 27 14:45:57 IST 2026
[2026-06-27 14:45:57,956.956 INFO    ] ================================================
[2026-06-27 14:45:58,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:45:58
[2026-06-27 14:45:58,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:45:58,740.740 INFO    ] Initializing speech engine...
[2026-06-27 14:45:58,745.745 INFO    ] 2026-06-27 14:45:58
[2026-06-27 14:45:58,951.951 INFO    ] 2026-06-27 14:45:58
[2026-06-27 14:45:58,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:45:59,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:45:59,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:45:59,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:45:59,372.372 INFO    ] time= 27/06/2026 14:45:59
[2026-06-27 14:45:59,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:45:59,403.403 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:45:59,752.752 INFO    ] No existing commands found in stream
[2026-06-27 14:46:04,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:46:04,774.774 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-27 14:46:07,208.208 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 14:46:07,209.209 INFO    ] Checking for system updates...
[2026-06-27 14:46:07,244.244 INFO    ] 200
[2026-06-27 14:46:07,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:46:07,301.301 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:46:07,303.303 INFO    ] No update needed
[2026-06-27 14:46:07,306.306 INFO    ] Checking for camera pi updates...
[2026-06-27 14:46:07,329.329 INFO    ] 200
[2026-06-27 14:46:07,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:46:07,356.356 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:46:07,413.413 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:46:07,415.415 INFO    ] No camera update needed
[2026-06-27 14:46:07,416.416 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:46:07,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:46:07,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:46:07,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:46:09,463.463 INFO    ] ================================================
[2026-06-27 14:46:09,479.479 INFO    ] Launching Daemon at Sat Jun 27 14:46:09 IST 2026
[2026-06-27 14:46:09,490.490 INFO    ] ================================================
[2026-06-27 14:46:09,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:46:09
[2026-06-27 14:46:10,148.148 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:46:10,291.291 INFO    ] Initializing speech engine...
[2026-06-27 14:46:10,297.297 INFO    ] 2026-06-27 14:46:10
[2026-06-27 14:46:10,503.503 INFO    ] 2026-06-27 14:46:10
[2026-06-27 14:46:10,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:46:10,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:46:10,847.847 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:46:11,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:46:11,046.046 INFO    ] time= 27/06/2026 14:46:11
[2026-06-27 14:46:11,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:46:11,071.071 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:46:11,162.162 INFO    ] No existing commands found in stream
[2026-06-27 14:46:16,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:46:16,175.175 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-27 14:46:18,887.887 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:46:18,888.888 INFO    ] Checking for system updates...
[2026-06-27 14:46:18,910.910 INFO    ] 200
[2026-06-27 14:46:18,911.911 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:46:18,942.942 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:46:18,943.943 INFO    ] No update needed
[2026-06-27 14:46:18,944.944 INFO    ] Checking for camera pi updates...
[2026-06-27 14:46:18,967.967 INFO    ] 200
[2026-06-27 14:46:18,969.969 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:46:18,995.995 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:46:19,149.149 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:46:19,150.150 INFO    ] No camera update needed
[2026-06-27 14:46:19,152.152 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:46:19,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:46:19,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:46:19,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:46:21,197.197 INFO    ] ================================================
[2026-06-27 14:46:21,212.212 INFO    ] Launching Daemon at Sat Jun 27 14:46:21 IST 2026
[2026-06-27 14:46:21,223.223 INFO    ] ================================================
[2026-06-27 14:46:21,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:46:21
[2026-06-27 14:46:21,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:46:22,034.034 INFO    ] Initializing speech engine...
[2026-06-27 14:46:22,043.043 INFO    ] 2026-06-27 14:46:22
[2026-06-27 14:46:22,255.255 INFO    ] 2026-06-27 14:46:22
[2026-06-27 14:46:22,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:46:22,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:46:22,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:46:22,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:46:22,694.694 INFO    ] time= 27/06/2026 14:46:22
[2026-06-27 14:46:22,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:46:22,701.701 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:46:22,768.768 INFO    ] No existing commands found in stream
[2026-06-27 14:46:27,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:46:27,803.803 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-27 14:46:31,566.566 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:46:31,568.568 INFO    ] Checking for system updates...
[2026-06-27 14:46:31,589.589 INFO    ] 200
[2026-06-27 14:46:31,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:46:31,623.623 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:46:31,625.625 INFO    ] No update needed
[2026-06-27 14:46:31,627.627 INFO    ] Checking for camera pi updates...
[2026-06-27 14:46:31,648.648 INFO    ] 200
[2026-06-27 14:46:31,649.649 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:46:31,676.676 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:46:31,724.724 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:46:31,725.725 INFO    ] No camera update needed
[2026-06-27 14:46:31,727.727 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:46:31,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:46:31,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:46:31,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:46:33,770.770 INFO    ] ================================================
[2026-06-27 14:46:33,785.785 INFO    ] Launching Daemon at Sat Jun 27 14:46:33 IST 2026
[2026-06-27 14:46:33,796.796 INFO    ] ================================================
[2026-06-27 14:46:34,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:46:34
[2026-06-27 14:46:34,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:46:34,617.617 INFO    ] Initializing speech engine...
[2026-06-27 14:46:34,622.622 INFO    ] 2026-06-27 14:46:34
[2026-06-27 14:46:34,826.826 INFO    ] 2026-06-27 14:46:34
[2026-06-27 14:46:34,855.855 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:46:35,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:46:35,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:46:35,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:46:35,265.265 INFO    ] time= 27/06/2026 14:46:35
[2026-06-27 14:46:35,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:46:35,273.273 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:46:35,339.339 INFO    ] No existing commands found in stream
[2026-06-27 14:46:40,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:46:40,353.353 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-27 14:46:43,210.210 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 14:46:43,211.211 INFO    ] Checking for system updates...
[2026-06-27 14:46:43,232.232 INFO    ] 200
[2026-06-27 14:46:43,233.233 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:46:43,267.267 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:46:43,268.268 INFO    ] No update needed
[2026-06-27 14:46:43,269.269 INFO    ] Checking for camera pi updates...
[2026-06-27 14:46:43,290.290 INFO    ] 200
[2026-06-27 14:46:43,291.291 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:46:43,315.315 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:46:43,373.373 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:46:43,374.374 INFO    ] No camera update needed
[2026-06-27 14:46:43,376.376 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:46:43,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:46:43,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:46:43,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:46:45,421.421 INFO    ] ================================================
[2026-06-27 14:46:45,437.437 INFO    ] Launching Daemon at Sat Jun 27 14:46:45 IST 2026
[2026-06-27 14:46:45,448.448 INFO    ] ================================================
[2026-06-27 14:46:45,831.831 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:46:45
[2026-06-27 14:46:46,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:46:46,288.288 INFO    ] Initializing speech engine...
[2026-06-27 14:46:46,297.297 INFO    ] 2026-06-27 14:46:46
[2026-06-27 14:46:46,502.502 INFO    ] 2026-06-27 14:46:46
[2026-06-27 14:46:46,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:46:46,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:46:46,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:46:46,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:46:46,939.939 INFO    ] time= 27/06/2026 14:46:46
[2026-06-27 14:46:46,945.945 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:46:46,950.950 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:46:47,041.041 INFO    ] No existing commands found in stream
[2026-06-27 14:46:52,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:46:52,053.053 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-27 14:46:55,875.875 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:46:55,876.876 INFO    ] Checking for system updates...
[2026-06-27 14:46:55,897.897 INFO    ] 200
[2026-06-27 14:46:55,898.898 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:46:55,930.930 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:46:55,932.932 INFO    ] No update needed
[2026-06-27 14:46:55,933.933 INFO    ] Checking for camera pi updates...
[2026-06-27 14:46:55,954.954 INFO    ] 200
[2026-06-27 14:46:55,955.955 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:46:55,979.979 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:46:56,024.024 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:46:56,026.026 INFO    ] No camera update needed
[2026-06-27 14:46:56,027.027 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:46:56,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:46:56,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:46:56,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:46:58,073.073 INFO    ] ================================================
[2026-06-27 14:46:58,089.089 INFO    ] Launching Daemon at Sat Jun 27 14:46:58 IST 2026
[2026-06-27 14:46:58,099.099 INFO    ] ================================================
[2026-06-27 14:46:58,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:46:58
[2026-06-27 14:46:58,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:46:58,955.955 INFO    ] Initializing speech engine...
[2026-06-27 14:46:58,962.962 INFO    ] 2026-06-27 14:46:58
[2026-06-27 14:46:59,181.181 INFO    ] 2026-06-27 14:46:59
[2026-06-27 14:46:59,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:46:59,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:46:59,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:46:59,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:46:59,610.610 INFO    ] time= 27/06/2026 14:46:59
[2026-06-27 14:46:59,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:46:59,642.642 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:46:59,709.709 INFO    ] No existing commands found in stream
[2026-06-27 14:47:04,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:47:04,727.727 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-27 14:47:07,621.621 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:47:07,622.622 INFO    ] Checking for system updates...
[2026-06-27 14:47:07,645.645 INFO    ] 200
[2026-06-27 14:47:07,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:47:07,676.676 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:47:07,678.678 INFO    ] No update needed
[2026-06-27 14:47:07,679.679 INFO    ] Checking for camera pi updates...
[2026-06-27 14:47:07,699.699 INFO    ] 200
[2026-06-27 14:47:07,701.701 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:47:07,726.726 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:47:07,771.771 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:47:07,772.772 INFO    ] No camera update needed
[2026-06-27 14:47:07,774.774 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:47:07,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:47:07,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:47:07,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:47:09,822.822 INFO    ] ================================================
[2026-06-27 14:47:09,838.838 INFO    ] Launching Daemon at Sat Jun 27 14:47:09 IST 2026
[2026-06-27 14:47:09,849.849 INFO    ] ================================================
[2026-06-27 14:47:10,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:47:10
[2026-06-27 14:47:10,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:47:10,653.653 INFO    ] Initializing speech engine...
[2026-06-27 14:47:10,658.658 INFO    ] 2026-06-27 14:47:10
[2026-06-27 14:47:10,863.863 INFO    ] 2026-06-27 14:47:10
[2026-06-27 14:47:10,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:47:11,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:47:11,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:47:11,395.395 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:47:11,397.397 INFO    ] time= 27/06/2026 14:47:11
[2026-06-27 14:47:11,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:47:11,427.427 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:47:11,507.507 INFO    ] No existing commands found in stream
[2026-06-27 14:47:16,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:47:16,519.519 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-27 14:47:17,430.430 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 14:47:17,431.431 INFO    ] Checking for system updates...
[2026-06-27 14:47:17,453.453 INFO    ] 200
[2026-06-27 14:47:17,454.454 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:47:17,487.487 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:47:17,488.488 INFO    ] No update needed
[2026-06-27 14:47:17,489.489 INFO    ] Checking for camera pi updates...
[2026-06-27 14:47:17,509.509 INFO    ] 200
[2026-06-27 14:47:17,510.510 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:47:17,535.535 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:47:17,581.581 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:47:17,582.582 INFO    ] No camera update needed
[2026-06-27 14:47:17,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:47:17,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:47:17,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:47:17,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:47:19,631.631 INFO    ] ================================================
[2026-06-27 14:47:19,647.647 INFO    ] Launching Daemon at Sat Jun 27 14:47:19 IST 2026
[2026-06-27 14:47:19,658.658 INFO    ] ================================================
[2026-06-27 14:47:20,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:47:20
[2026-06-27 14:47:20,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:47:20,455.455 INFO    ] Initializing speech engine...
[2026-06-27 14:47:20,468.468 INFO    ] 2026-06-27 14:47:20
[2026-06-27 14:47:20,686.686 INFO    ] 2026-06-27 14:47:20
[2026-06-27 14:47:20,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:47:20,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:47:20,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:47:21,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:47:21,138.138 INFO    ] time= 27/06/2026 14:47:21
[2026-06-27 14:47:21,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:47:21,167.167 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:47:21,264.264 INFO    ] No existing commands found in stream
[2026-06-27 14:47:26,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:47:26,281.281 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-27 14:47:28,089.089 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 14:47:28,091.091 INFO    ] Checking for system updates...
[2026-06-27 14:47:28,112.112 INFO    ] 200
[2026-06-27 14:47:28,114.114 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:47:28,145.145 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:47:28,146.146 INFO    ] No update needed
[2026-06-27 14:47:28,148.148 INFO    ] Checking for camera pi updates...
[2026-06-27 14:47:28,168.168 INFO    ] 200
[2026-06-27 14:47:28,169.169 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:47:28,194.194 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:47:28,250.250 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:47:28,252.252 INFO    ] No camera update needed
[2026-06-27 14:47:28,253.253 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:47:28,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:47:28,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:47:28,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:47:30,300.300 INFO    ] ================================================
[2026-06-27 14:47:30,315.315 INFO    ] Launching Daemon at Sat Jun 27 14:47:30 IST 2026
[2026-06-27 14:47:30,326.326 INFO    ] ================================================
[2026-06-27 14:47:30,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:47:30
[2026-06-27 14:47:31,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:47:31,137.137 INFO    ] Initializing speech engine...
[2026-06-27 14:47:31,140.140 INFO    ] 2026-06-27 14:47:31
[2026-06-27 14:47:31,359.359 INFO    ] 2026-06-27 14:47:31
[2026-06-27 14:47:31,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:47:31,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:47:31,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:47:31,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:47:31,874.874 INFO    ] time= 27/06/2026 14:47:31
[2026-06-27 14:47:31,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:47:31,902.902 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:47:32,007.007 INFO    ] No existing commands found in stream
[2026-06-27 14:47:37,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:47:37,017.017 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-27 14:47:39,509.509 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:47:39,510.510 INFO    ] Checking for system updates...
[2026-06-27 14:47:39,532.532 INFO    ] 200
[2026-06-27 14:47:39,534.534 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:47:39,567.567 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:47:39,568.568 INFO    ] No update needed
[2026-06-27 14:47:39,569.569 INFO    ] Checking for camera pi updates...
[2026-06-27 14:47:39,589.589 INFO    ] 200
[2026-06-27 14:47:39,590.590 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:47:39,615.615 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:47:39,665.665 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:47:39,666.666 INFO    ] No camera update needed
[2026-06-27 14:47:39,667.667 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:47:39,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:47:39,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:47:39,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:47:41,714.714 INFO    ] ================================================
[2026-06-27 14:47:41,729.729 INFO    ] Launching Daemon at Sat Jun 27 14:47:41 IST 2026
[2026-06-27 14:47:41,739.739 INFO    ] ================================================
[2026-06-27 14:47:42,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:47:42
[2026-06-27 14:47:42,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:47:42,596.596 INFO    ] Initializing speech engine...
[2026-06-27 14:47:42,603.603 INFO    ] 2026-06-27 14:47:42
[2026-06-27 14:47:42,806.806 INFO    ] 2026-06-27 14:47:42
[2026-06-27 14:47:42,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:47:43,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:47:43,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:47:43,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:47:43,250.250 INFO    ] time= 27/06/2026 14:47:43
[2026-06-27 14:47:43,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:47:43,254.254 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:47:43,320.320 INFO    ] No existing commands found in stream
[2026-06-27 14:47:48,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:47:48,349.349 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-27 14:47:52,775.775 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:47:52,777.777 INFO    ] Checking for system updates...
[2026-06-27 14:47:52,798.798 INFO    ] 200
[2026-06-27 14:47:52,800.800 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:47:52,831.831 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:47:52,832.832 INFO    ] No update needed
[2026-06-27 14:47:52,834.834 INFO    ] Checking for camera pi updates...
[2026-06-27 14:47:52,854.854 INFO    ] 200
[2026-06-27 14:47:52,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:47:52,880.880 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:47:52,929.929 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:47:52,931.931 INFO    ] No camera update needed
[2026-06-27 14:47:52,932.932 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:47:52,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:47:52,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:47:52,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:47:54,981.981 INFO    ] ================================================
[2026-06-27 14:47:55,997.997 INFO    ] Launching Daemon at Sat Jun 27 14:47:54 IST 2026
[2026-06-27 14:47:55,009.009 INFO    ] ================================================
[2026-06-27 14:47:55,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:47:55
[2026-06-27 14:47:55,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:47:55,828.828 INFO    ] Initializing speech engine...
[2026-06-27 14:47:55,833.833 INFO    ] 2026-06-27 14:47:55
[2026-06-27 14:47:56,038.038 INFO    ] 2026-06-27 14:47:56
[2026-06-27 14:47:56,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:47:56,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:47:56,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:47:56,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:47:56,461.461 INFO    ] time= 27/06/2026 14:47:56
[2026-06-27 14:47:56,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:47:56,490.490 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:47:56,558.558 INFO    ] No existing commands found in stream
[2026-06-27 14:48:01,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:48:01,568.568 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-27 14:48:02,670.670 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:48:02,673.673 INFO    ] Checking for system updates...
[2026-06-27 14:48:02,715.715 INFO    ] 200
[2026-06-27 14:48:02,718.718 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:48:02,771.771 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:48:02,773.773 INFO    ] No update needed
[2026-06-27 14:48:02,774.774 INFO    ] Checking for camera pi updates...
[2026-06-27 14:48:02,794.794 INFO    ] 200
[2026-06-27 14:48:02,795.795 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:48:02,821.821 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:48:02,847.847 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:48:02,848.848 INFO    ] No camera update needed
[2026-06-27 14:48:02,853.853 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:48:02,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:48:02,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:48:02,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:48:04,901.901 INFO    ] ================================================
[2026-06-27 14:48:04,917.917 INFO    ] Launching Daemon at Sat Jun 27 14:48:04 IST 2026
[2026-06-27 14:48:04,928.928 INFO    ] ================================================
[2026-06-27 14:48:05,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:48:05
[2026-06-27 14:48:05,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:48:05,799.799 INFO    ] Initializing speech engine...
[2026-06-27 14:48:05,805.805 INFO    ] 2026-06-27 14:48:05
[2026-06-27 14:48:06,018.018 INFO    ] 2026-06-27 14:48:05
[2026-06-27 14:48:06,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:48:06,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:48:06,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:48:06,395.395 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:48:06,449.449 INFO    ] time= 27/06/2026 14:48:06
[2026-06-27 14:48:06,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:48:06,479.479 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:48:06,547.547 INFO    ] No existing commands found in stream
[2026-06-27 14:48:11,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:48:11,560.560 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-27 14:48:13,627.627 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:48:13,630.630 INFO    ] Checking for system updates...
[2026-06-27 14:48:13,666.666 INFO    ] 200
[2026-06-27 14:48:13,669.669 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:48:13,713.713 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:48:13,715.715 INFO    ] No update needed
[2026-06-27 14:48:13,716.716 INFO    ] Checking for camera pi updates...
[2026-06-27 14:48:13,736.736 INFO    ] 200
[2026-06-27 14:48:13,737.737 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:48:13,760.760 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:48:13,803.803 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:48:13,804.804 INFO    ] No camera update needed
[2026-06-27 14:48:13,806.806 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:48:13,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:48:13,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:48:13,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:48:15,855.855 INFO    ] ================================================
[2026-06-27 14:48:15,870.870 INFO    ] Launching Daemon at Sat Jun 27 14:48:15 IST 2026
[2026-06-27 14:48:15,881.881 INFO    ] ================================================
[2026-06-27 14:48:16,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:48:16
[2026-06-27 14:48:16,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:48:16,671.671 INFO    ] Initializing speech engine...
[2026-06-27 14:48:16,677.677 INFO    ] 2026-06-27 14:48:16
[2026-06-27 14:48:16,883.883 INFO    ] 2026-06-27 14:48:16
[2026-06-27 14:48:16,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:48:17,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:48:17,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:48:17,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:48:17,237.237 INFO    ] time= 27/06/2026 14:48:17
[2026-06-27 14:48:17,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:48:17,240.240 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:48:17,325.325 INFO    ] No existing commands found in stream
[2026-06-27 14:48:22,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:48:22,332.332 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-27 14:48:22,946.946 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 14:48:22,947.947 INFO    ] Checking for system updates...
[2026-06-27 14:48:22,968.968 INFO    ] 200
[2026-06-27 14:48:22,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:48:23,004.004 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:48:23,006.006 INFO    ] No update needed
[2026-06-27 14:48:23,007.007 INFO    ] Checking for camera pi updates...
[2026-06-27 14:48:23,027.027 INFO    ] 200
[2026-06-27 14:48:23,029.029 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:48:23,052.052 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:48:23,195.195 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:48:23,196.196 INFO    ] No camera update needed
[2026-06-27 14:48:23,198.198 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:48:23,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:48:23,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:48:23,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:48:25,246.246 INFO    ] ================================================
[2026-06-27 14:48:25,262.262 INFO    ] Launching Daemon at Sat Jun 27 14:48:25 IST 2026
[2026-06-27 14:48:25,274.274 INFO    ] ================================================
[2026-06-27 14:48:25,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:48:25
[2026-06-27 14:48:26,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:48:26,157.157 INFO    ] Initializing speech engine...
[2026-06-27 14:48:26,162.162 INFO    ] 2026-06-27 14:48:26
[2026-06-27 14:48:26,372.372 INFO    ] 2026-06-27 14:48:26
[2026-06-27 14:48:26,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:48:26,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:48:26,602.602 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:48:26,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:48:26,826.826 INFO    ] time= 27/06/2026 14:48:26
[2026-06-27 14:48:26,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:48:26,880.880 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:48:26,962.962 INFO    ] No existing commands found in stream
[2026-06-27 14:48:31,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:48:31,972.972 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-27 14:48:32,802.802 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 14:48:32,804.804 INFO    ] Checking for system updates...
[2026-06-27 14:48:32,831.831 INFO    ] 200
[2026-06-27 14:48:32,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:48:32,866.866 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:48:32,867.867 INFO    ] No update needed
[2026-06-27 14:48:32,869.869 INFO    ] Checking for camera pi updates...
[2026-06-27 14:48:32,890.890 INFO    ] 200
[2026-06-27 14:48:32,891.891 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:48:32,915.915 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:48:32,941.941 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:48:32,943.943 INFO    ] No camera update needed
[2026-06-27 14:48:32,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:48:32,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:48:32,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:48:32,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:48:34,990.990 INFO    ] ================================================
[2026-06-27 14:48:35,006.006 INFO    ] Launching Daemon at Sat Jun 27 14:48:35 IST 2026
[2026-06-27 14:48:35,017.017 INFO    ] ================================================
[2026-06-27 14:48:35,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:48:35
[2026-06-27 14:48:35,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:48:35,842.842 INFO    ] Initializing speech engine...
[2026-06-27 14:48:35,848.848 INFO    ] 2026-06-27 14:48:35
[2026-06-27 14:48:36,053.053 INFO    ] 2026-06-27 14:48:36
[2026-06-27 14:48:36,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:48:36,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:48:36,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:48:36,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:48:36,494.494 INFO    ] time= 27/06/2026 14:48:36
[2026-06-27 14:48:36,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:48:36,501.501 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:48:36,568.568 INFO    ] No existing commands found in stream
[2026-06-27 14:48:41,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:48:41,596.596 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-27 14:48:46,010.010 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:48:46,011.011 INFO    ] Checking for system updates...
[2026-06-27 14:48:46,034.034 INFO    ] 200
[2026-06-27 14:48:46,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:48:46,067.067 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:48:46,069.069 INFO    ] No update needed
[2026-06-27 14:48:46,070.070 INFO    ] Checking for camera pi updates...
[2026-06-27 14:48:46,092.092 INFO    ] 200
[2026-06-27 14:48:46,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:48:46,117.117 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:48:46,167.167 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:48:46,169.169 INFO    ] No camera update needed
[2026-06-27 14:48:46,170.170 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:48:46,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:48:46,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:48:46,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:48:48,219.219 INFO    ] ================================================
[2026-06-27 14:48:48,235.235 INFO    ] Launching Daemon at Sat Jun 27 14:48:48 IST 2026
[2026-06-27 14:48:48,246.246 INFO    ] ================================================
[2026-06-27 14:48:48,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:48:48
[2026-06-27 14:48:48,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:48:49,049.049 INFO    ] Initializing speech engine...
[2026-06-27 14:48:49,059.059 INFO    ] 2026-06-27 14:48:49
[2026-06-27 14:48:49,265.265 INFO    ] 2026-06-27 14:48:49
[2026-06-27 14:48:49,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:48:49,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:48:49,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:48:49,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:48:49,774.774 INFO    ] time= 27/06/2026 14:48:49
[2026-06-27 14:48:49,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:48:49,802.802 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:48:49,900.900 INFO    ] No existing commands found in stream
[2026-06-27 14:48:54,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:48:54,914.914 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-27 14:48:56,771.771 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:48:56,773.773 INFO    ] Checking for system updates...
[2026-06-27 14:48:56,794.794 INFO    ] 200
[2026-06-27 14:48:56,795.795 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:48:56,829.829 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:48:56,830.830 INFO    ] No update needed
[2026-06-27 14:48:56,832.832 INFO    ] Checking for camera pi updates...
[2026-06-27 14:48:56,853.853 INFO    ] 200
[2026-06-27 14:48:56,854.854 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:48:56,882.882 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:48:56,924.924 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:48:56,926.926 INFO    ] No camera update needed
[2026-06-27 14:48:56,927.927 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:48:56,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:48:56,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:48:56,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:48:58,974.974 INFO    ] ================================================
[2026-06-27 14:48:58,990.990 INFO    ] Launching Daemon at Sat Jun 27 14:48:58 IST 2026
[2026-06-27 14:48:59,002.002 INFO    ] ================================================
[2026-06-27 14:48:59,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:48:59
[2026-06-27 14:48:59,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:48:59,810.810 INFO    ] Initializing speech engine...
[2026-06-27 14:48:59,820.820 INFO    ] 2026-06-27 14:48:59
[2026-06-27 14:49:00,026.026 INFO    ] 2026-06-27 14:49:00
[2026-06-27 14:49:00,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:49:00,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:49:00,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:49:00,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:49:00,578.578 INFO    ] time= 27/06/2026 14:49:00
[2026-06-27 14:49:00,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:49:00,587.587 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:49:00,681.681 INFO    ] No existing commands found in stream
[2026-06-27 14:49:05,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:49:05,695.695 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-27 14:49:08,392.392 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:49:08,393.393 INFO    ] Checking for system updates...
[2026-06-27 14:49:08,415.415 INFO    ] 200
[2026-06-27 14:49:08,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:49:08,448.448 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:49:08,449.449 INFO    ] No update needed
[2026-06-27 14:49:08,450.450 INFO    ] Checking for camera pi updates...
[2026-06-27 14:49:08,472.472 INFO    ] 200
[2026-06-27 14:49:08,474.474 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:49:08,499.499 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:49:08,548.548 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:49:08,550.550 INFO    ] No camera update needed
[2026-06-27 14:49:08,551.551 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:49:08,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:49:08,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:49:08,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:49:10,599.599 INFO    ] ================================================
[2026-06-27 14:49:10,615.615 INFO    ] Launching Daemon at Sat Jun 27 14:49:10 IST 2026
[2026-06-27 14:49:10,626.626 INFO    ] ================================================
[2026-06-27 14:49:10,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:49:10
[2026-06-27 14:49:11,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:49:11,488.488 INFO    ] Initializing speech engine...
[2026-06-27 14:49:11,494.494 INFO    ] 2026-06-27 14:49:11
[2026-06-27 14:49:11,707.707 INFO    ] 2026-06-27 14:49:11
[2026-06-27 14:49:11,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:49:11,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:49:11,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:49:12,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:49:12,158.158 INFO    ] time= 27/06/2026 14:49:12
[2026-06-27 14:49:12,164.164 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:49:12,166.166 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:49:12,234.234 INFO    ] No existing commands found in stream
[2026-06-27 14:49:17,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:49:17,250.250 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-27 14:49:20,746.746 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:49:20,747.747 INFO    ] Checking for system updates...
[2026-06-27 14:49:20,772.772 INFO    ] 200
[2026-06-27 14:49:20,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:49:20,813.813 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:49:20,816.816 INFO    ] No update needed
[2026-06-27 14:49:20,818.818 INFO    ] Checking for camera pi updates...
[2026-06-27 14:49:20,843.843 INFO    ] 200
[2026-06-27 14:49:20,846.846 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:49:20,878.878 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:49:20,926.926 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:49:20,927.927 INFO    ] No camera update needed
[2026-06-27 14:49:20,929.929 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:49:20,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:49:20,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:49:20,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:49:22,972.972 INFO    ] ================================================
[2026-06-27 14:49:22,988.988 INFO    ] Launching Daemon at Sat Jun 27 14:49:22 IST 2026
[2026-06-27 14:49:22,995.995 INFO    ] ================================================
[2026-06-27 14:49:23,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:49:23
[2026-06-27 14:49:23,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:49:23,817.817 INFO    ] Initializing speech engine...
[2026-06-27 14:49:23,824.824 INFO    ] 2026-06-27 14:49:23
[2026-06-27 14:49:24,045.045 INFO    ] 2026-06-27 14:49:24
[2026-06-27 14:49:24,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:49:24,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:49:24,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:49:24,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:49:24,501.501 INFO    ] time= 27/06/2026 14:49:24
[2026-06-27 14:49:24,518.518 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:49:24,525.525 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:49:24,593.593 INFO    ] No existing commands found in stream
[2026-06-27 14:49:29,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:49:29,609.609 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-27 14:49:32,688.688 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:49:32,691.691 INFO    ] Checking for system updates...
[2026-06-27 14:49:32,732.732 INFO    ] 200
[2026-06-27 14:49:32,734.734 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:49:32,787.787 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:49:32,790.790 INFO    ] No update needed
[2026-06-27 14:49:32,792.792 INFO    ] Checking for camera pi updates...
[2026-06-27 14:49:32,821.821 INFO    ] 200
[2026-06-27 14:49:32,822.822 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:49:32,846.846 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:49:32,872.872 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:49:32,873.873 INFO    ] No camera update needed
[2026-06-27 14:49:32,875.875 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:49:32,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:49:32,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:49:32,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:49:34,920.920 INFO    ] ================================================
[2026-06-27 14:49:34,936.936 INFO    ] Launching Daemon at Sat Jun 27 14:49:34 IST 2026
[2026-06-27 14:49:34,948.948 INFO    ] ================================================
[2026-06-27 14:49:35,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:49:35
[2026-06-27 14:49:35,677.677 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:49:35,831.831 INFO    ] Initializing speech engine...
[2026-06-27 14:49:35,835.835 INFO    ] 2026-06-27 14:49:35
[2026-06-27 14:49:36,045.045 INFO    ] 2026-06-27 14:49:36
[2026-06-27 14:49:36,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:49:36,259.259 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:49:36,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:49:36,460.460 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:49:36,488.488 INFO    ] time= 27/06/2026 14:49:36
[2026-06-27 14:49:36,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:49:36,496.496 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:49:36,565.565 INFO    ] No existing commands found in stream
[2026-06-27 14:49:41,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:49:41,583.583 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-27 14:49:45,746.746 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:49:45,748.748 INFO    ] Checking for system updates...
[2026-06-27 14:49:45,769.769 INFO    ] 200
[2026-06-27 14:49:45,771.771 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:49:45,801.801 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:49:45,803.803 INFO    ] No update needed
[2026-06-27 14:49:45,804.804 INFO    ] Checking for camera pi updates...
[2026-06-27 14:49:45,825.825 INFO    ] 200
[2026-06-27 14:49:45,826.826 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:49:45,852.852 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:49:45,900.900 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:49:45,901.901 INFO    ] No camera update needed
[2026-06-27 14:49:45,902.902 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:49:45,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:49:45,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:49:45,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:49:47,950.950 INFO    ] ================================================
[2026-06-27 14:49:47,965.965 INFO    ] Launching Daemon at Sat Jun 27 14:49:47 IST 2026
[2026-06-27 14:49:47,976.976 INFO    ] ================================================
[2026-06-27 14:49:48,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:49:48
[2026-06-27 14:49:48,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:49:48,766.766 INFO    ] Initializing speech engine...
[2026-06-27 14:49:48,770.770 INFO    ] 2026-06-27 14:49:48
[2026-06-27 14:49:48,990.990 INFO    ] 2026-06-27 14:49:48
[2026-06-27 14:49:49,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:49:49,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:49:49,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:49:49,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:49:49,510.510 INFO    ] time= 27/06/2026 14:49:49
[2026-06-27 14:49:49,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:49:49,537.537 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:49:49,634.634 INFO    ] No existing commands found in stream
[2026-06-27 14:49:54,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:49:54,647.647 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-27 14:49:57,303.303 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 14:49:57,305.305 INFO    ] Checking for system updates...
[2026-06-27 14:49:57,325.325 INFO    ] 200
[2026-06-27 14:49:57,327.327 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:49:57,360.360 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:49:57,362.362 INFO    ] No update needed
[2026-06-27 14:49:57,363.363 INFO    ] Checking for camera pi updates...
[2026-06-27 14:49:57,383.383 INFO    ] 200
[2026-06-27 14:49:57,385.385 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:49:57,412.412 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:49:57,458.458 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:49:57,459.459 INFO    ] No camera update needed
[2026-06-27 14:49:57,460.460 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:49:57,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:49:57,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:49:57,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:49:59,505.505 INFO    ] ================================================
[2026-06-27 14:49:59,522.522 INFO    ] Launching Daemon at Sat Jun 27 14:49:59 IST 2026
[2026-06-27 14:49:59,533.533 INFO    ] ================================================
[2026-06-27 14:49:59,923.923 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:49:59
[2026-06-27 14:50:00,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:50:00,423.423 INFO    ] Initializing speech engine...
[2026-06-27 14:50:00,428.428 INFO    ] 2026-06-27 14:50:00
[2026-06-27 14:50:00,636.636 INFO    ] 2026-06-27 14:50:00
[2026-06-27 14:50:00,664.664 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:50:00,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:50:00,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:50:00,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:50:01,057.057 INFO    ] time= 27/06/2026 14:50:00
[2026-06-27 14:50:01,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:50:01,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:50:01,154.154 INFO    ] No existing commands found in stream
[2026-06-27 14:50:06,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:50:06,167.167 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-27 14:50:09,039.039 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 14:50:09,040.040 INFO    ] Checking for system updates...
[2026-06-27 14:50:09,062.062 INFO    ] 200
[2026-06-27 14:50:09,063.063 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:50:09,094.094 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:50:09,096.096 INFO    ] No update needed
[2026-06-27 14:50:09,097.097 INFO    ] Checking for camera pi updates...
[2026-06-27 14:50:09,117.117 INFO    ] 200
[2026-06-27 14:50:09,119.119 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:50:09,145.145 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:50:09,190.190 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:50:09,192.192 INFO    ] No camera update needed
[2026-06-27 14:50:09,193.193 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:50:09,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:50:09,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:50:09,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:50:11,232.232 INFO    ] ================================================
[2026-06-27 14:50:11,241.241 INFO    ] Launching Daemon at Sat Jun 27 14:50:11 IST 2026
[2026-06-27 14:50:11,247.247 INFO    ] ================================================
[2026-06-27 14:50:11,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:50:11
[2026-06-27 14:50:11,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:50:12,049.049 INFO    ] Initializing speech engine...
[2026-06-27 14:50:12,055.055 INFO    ] 2026-06-27 14:50:12
[2026-06-27 14:50:12,259.259 INFO    ] 2026-06-27 14:50:12
[2026-06-27 14:50:12,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:50:12,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:50:12,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:50:12,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:50:12,702.702 INFO    ] time= 27/06/2026 14:50:12
[2026-06-27 14:50:12,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:50:12,709.709 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:50:12,775.775 INFO    ] No existing commands found in stream
[2026-06-27 14:50:17,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:50:17,788.788 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-27 14:50:18,921.921 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:50:18,923.923 INFO    ] Checking for system updates...
[2026-06-27 14:50:18,944.944 INFO    ] 200
[2026-06-27 14:50:18,945.945 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:50:18,978.978 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:50:18,980.980 INFO    ] No update needed
[2026-06-27 14:50:18,981.981 INFO    ] Checking for camera pi updates...
[2026-06-27 14:50:19,002.002 INFO    ] 200
[2026-06-27 14:50:19,004.004 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:50:19,029.029 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:50:19,089.089 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:50:19,091.091 INFO    ] No camera update needed
[2026-06-27 14:50:19,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:50:19,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:50:19,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:50:19,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:50:21,138.138 INFO    ] ================================================
[2026-06-27 14:50:21,154.154 INFO    ] Launching Daemon at Sat Jun 27 14:50:21 IST 2026
[2026-06-27 14:50:21,166.166 INFO    ] ================================================
[2026-06-27 14:50:21,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:50:21
[2026-06-27 14:50:21,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:50:22,002.002 INFO    ] Initializing speech engine...
[2026-06-27 14:50:22,008.008 INFO    ] 2026-06-27 14:50:22
[2026-06-27 14:50:22,219.219 INFO    ] 2026-06-27 14:50:22
[2026-06-27 14:50:22,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:50:22,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:50:22,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:50:22,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:50:22,732.732 INFO    ] time= 27/06/2026 14:50:22
[2026-06-27 14:50:22,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:50:22,765.765 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:50:22,872.872 INFO    ] No existing commands found in stream
[2026-06-27 14:50:27,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:50:27,886.886 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-27 14:50:30,201.201 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:50:30,203.203 INFO    ] Checking for system updates...
[2026-06-27 14:50:30,225.225 INFO    ] 200
[2026-06-27 14:50:30,226.226 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:50:30,258.258 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:50:30,259.259 INFO    ] No update needed
[2026-06-27 14:50:30,261.261 INFO    ] Checking for camera pi updates...
[2026-06-27 14:50:30,281.281 INFO    ] 200
[2026-06-27 14:50:30,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:50:30,306.306 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:50:30,456.456 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:50:30,457.457 INFO    ] No camera update needed
[2026-06-27 14:50:30,459.459 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:50:30,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:50:30,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:50:30,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:50:32,498.498 INFO    ] ================================================
[2026-06-27 14:50:32,506.506 INFO    ] Launching Daemon at Sat Jun 27 14:50:32 IST 2026
[2026-06-27 14:50:32,512.512 INFO    ] ================================================
[2026-06-27 14:50:32,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:50:32
[2026-06-27 14:50:33,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:50:33,271.271 INFO    ] Initializing speech engine...
[2026-06-27 14:50:33,276.276 INFO    ] 2026-06-27 14:50:33
[2026-06-27 14:50:33,466.466 INFO    ] 2026-06-27 14:50:33
[2026-06-27 14:50:33,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:50:33,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:50:33,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:50:33,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:50:33,972.972 INFO    ] time= 27/06/2026 14:50:33
[2026-06-27 14:50:33,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:50:34,001.001 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:50:34,105.105 INFO    ] No existing commands found in stream
[2026-06-27 14:50:39,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:50:39,117.117 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-27 14:50:39,622.622 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:50:39,624.624 INFO    ] Checking for system updates...
[2026-06-27 14:50:39,646.646 INFO    ] 200
[2026-06-27 14:50:39,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:50:39,681.681 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:50:39,683.683 INFO    ] No update needed
[2026-06-27 14:50:39,685.685 INFO    ] Checking for camera pi updates...
[2026-06-27 14:50:39,706.706 INFO    ] 200
[2026-06-27 14:50:39,708.708 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:50:39,734.734 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:50:39,765.765 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:50:39,766.766 INFO    ] No camera update needed
[2026-06-27 14:50:39,768.768 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:50:39,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:50:39,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:50:39,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:50:41,817.817 INFO    ] ================================================
[2026-06-27 14:50:41,832.832 INFO    ] Launching Daemon at Sat Jun 27 14:50:41 IST 2026
[2026-06-27 14:50:41,843.843 INFO    ] ================================================
[2026-06-27 14:50:42,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:50:42
[2026-06-27 14:50:42,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:50:42,656.656 INFO    ] Initializing speech engine...
[2026-06-27 14:50:42,661.661 INFO    ] 2026-06-27 14:50:42
[2026-06-27 14:50:42,869.869 INFO    ] 2026-06-27 14:50:42
[2026-06-27 14:50:42,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:50:43,084.084 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:50:43,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:50:43,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:50:43,315.315 INFO    ] time= 27/06/2026 14:50:43
[2026-06-27 14:50:43,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:50:43,322.322 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:50:43,389.389 INFO    ] No existing commands found in stream
[2026-06-27 14:50:48,403.403 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:50:48,406.406 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-27 14:50:48,992.992 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:50:48,993.993 INFO    ] Checking for system updates...
[2026-06-27 14:50:49,018.018 INFO    ] 200
[2026-06-27 14:50:49,020.020 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:50:49,051.051 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:50:49,053.053 INFO    ] No update needed
[2026-06-27 14:50:49,054.054 INFO    ] Checking for camera pi updates...
[2026-06-27 14:50:49,074.074 INFO    ] 200
[2026-06-27 14:50:49,075.075 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:50:49,100.100 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:50:49,146.146 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:50:49,148.148 INFO    ] No camera update needed
[2026-06-27 14:50:49,149.149 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:50:49,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:50:49,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:50:49,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:50:51,198.198 INFO    ] ================================================
[2026-06-27 14:50:51,214.214 INFO    ] Launching Daemon at Sat Jun 27 14:50:51 IST 2026
[2026-06-27 14:50:51,225.225 INFO    ] ================================================
[2026-06-27 14:50:51,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:50:51
[2026-06-27 14:50:51,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:50:52,056.056 INFO    ] Initializing speech engine...
[2026-06-27 14:50:52,064.064 INFO    ] 2026-06-27 14:50:52
[2026-06-27 14:50:52,284.284 INFO    ] 2026-06-27 14:50:52
[2026-06-27 14:50:52,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:50:52,526.526 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:50:52,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:50:52,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:50:52,736.736 INFO    ] time= 27/06/2026 14:50:52
[2026-06-27 14:50:52,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:50:52,740.740 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:50:52,832.832 INFO    ] No existing commands found in stream
[2026-06-27 14:50:57,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:50:57,849.849 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-27 14:51:00,076.076 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:51:00,078.078 INFO    ] Checking for system updates...
[2026-06-27 14:51:00,099.099 INFO    ] 200
[2026-06-27 14:51:00,101.101 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:51:00,132.132 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:51:00,133.133 INFO    ] No update needed
[2026-06-27 14:51:00,135.135 INFO    ] Checking for camera pi updates...
[2026-06-27 14:51:00,155.155 INFO    ] 200
[2026-06-27 14:51:00,156.156 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:51:00,180.180 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:51:00,221.221 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:51:00,222.222 INFO    ] No camera update needed
[2026-06-27 14:51:00,224.224 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:51:00,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:51:00,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:51:00,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:51:02,264.264 INFO    ] ================================================
[2026-06-27 14:51:02,272.272 INFO    ] Launching Daemon at Sat Jun 27 14:51:02 IST 2026
[2026-06-27 14:51:02,278.278 INFO    ] ================================================
[2026-06-27 14:51:02,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:51:02
[2026-06-27 14:51:02,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:51:03,105.105 INFO    ] Initializing speech engine...
[2026-06-27 14:51:03,109.109 INFO    ] 2026-06-27 14:51:03
[2026-06-27 14:51:03,318.318 INFO    ] 2026-06-27 14:51:03
[2026-06-27 14:51:03,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:51:03,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:51:03,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:51:03,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:51:03,740.740 INFO    ] time= 27/06/2026 14:51:03
[2026-06-27 14:51:03,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:51:03,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:51:03,858.858 INFO    ] No existing commands found in stream
[2026-06-27 14:51:08,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:51:08,871.871 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-27 14:51:11,369.369 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 14:51:11,370.370 INFO    ] Checking for system updates...
[2026-06-27 14:51:11,393.393 INFO    ] 200
[2026-06-27 14:51:11,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:51:11,428.428 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:51:11,430.430 INFO    ] No update needed
[2026-06-27 14:51:11,431.431 INFO    ] Checking for camera pi updates...
[2026-06-27 14:51:11,453.453 INFO    ] 200
[2026-06-27 14:51:11,455.455 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:51:11,479.479 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:51:11,522.522 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:51:11,524.524 INFO    ] No camera update needed
[2026-06-27 14:51:11,525.525 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:51:11,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:51:11,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:51:11,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:51:13,574.574 INFO    ] ================================================
[2026-06-27 14:51:13,589.589 INFO    ] Launching Daemon at Sat Jun 27 14:51:13 IST 2026
[2026-06-27 14:51:13,600.600 INFO    ] ================================================
[2026-06-27 14:51:13,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:51:13
[2026-06-27 14:51:14,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:51:14,425.425 INFO    ] Initializing speech engine...
[2026-06-27 14:51:14,428.428 INFO    ] 2026-06-27 14:51:14
[2026-06-27 14:51:14,662.662 INFO    ] 2026-06-27 14:51:14
[2026-06-27 14:51:14,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:51:14,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:51:14,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:51:15,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:51:15,095.095 INFO    ] time= 27/06/2026 14:51:15
[2026-06-27 14:51:15,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:51:15,149.149 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:51:15,281.281 INFO    ] No existing commands found in stream
[2026-06-27 14:51:20,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:51:20,293.293 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-27 14:51:22,040.040 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 14:51:22,042.042 INFO    ] Checking for system updates...
[2026-06-27 14:51:22,063.063 INFO    ] 200
[2026-06-27 14:51:22,064.064 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:51:22,097.097 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:51:22,098.098 INFO    ] No update needed
[2026-06-27 14:51:22,100.100 INFO    ] Checking for camera pi updates...
[2026-06-27 14:51:22,121.121 INFO    ] 200
[2026-06-27 14:51:22,123.123 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:51:22,148.148 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:51:22,196.196 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:51:22,198.198 INFO    ] No camera update needed
[2026-06-27 14:51:22,199.199 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:51:22,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:51:22,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:51:22,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:51:24,247.247 INFO    ] ================================================
[2026-06-27 14:51:24,263.263 INFO    ] Launching Daemon at Sat Jun 27 14:51:24 IST 2026
[2026-06-27 14:51:24,274.274 INFO    ] ================================================
[2026-06-27 14:51:24,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:51:24
[2026-06-27 14:51:24,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:51:25,060.060 INFO    ] Initializing speech engine...
[2026-06-27 14:51:25,070.070 INFO    ] 2026-06-27 14:51:25
[2026-06-27 14:51:25,275.275 INFO    ] 2026-06-27 14:51:25
[2026-06-27 14:51:25,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:51:25,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:51:25,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:51:25,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:51:25,700.700 INFO    ] time= 27/06/2026 14:51:25
[2026-06-27 14:51:25,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:51:25,728.728 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:51:25,794.794 INFO    ] No existing commands found in stream
[2026-06-27 14:51:30,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:51:30,808.808 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-27 14:51:33,668.668 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 14:51:33,669.669 INFO    ] Checking for system updates...
[2026-06-27 14:51:33,691.691 INFO    ] 200
[2026-06-27 14:51:33,692.692 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:51:33,723.723 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:51:33,725.725 INFO    ] No update needed
[2026-06-27 14:51:33,726.726 INFO    ] Checking for camera pi updates...
[2026-06-27 14:51:33,747.747 INFO    ] 200
[2026-06-27 14:51:33,749.749 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:51:33,774.774 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:51:33,823.823 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:51:33,824.824 INFO    ] No camera update needed
[2026-06-27 14:51:33,826.826 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:51:33,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:51:33,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:51:33,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:51:35,873.873 INFO    ] ================================================
[2026-06-27 14:51:35,888.888 INFO    ] Launching Daemon at Sat Jun 27 14:51:35 IST 2026
[2026-06-27 14:51:35,899.899 INFO    ] ================================================
[2026-06-27 14:51:36,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:51:36
[2026-06-27 14:51:36,540.540 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:51:36,682.682 INFO    ] Initializing speech engine...
[2026-06-27 14:51:36,687.687 INFO    ] 2026-06-27 14:51:36
[2026-06-27 14:51:36,900.900 INFO    ] 2026-06-27 14:51:36
[2026-06-27 14:51:36,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:51:37,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:51:37,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:51:37,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:51:37,345.345 INFO    ] time= 27/06/2026 14:51:37
[2026-06-27 14:51:37,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:51:37,394.394 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:51:37,471.471 INFO    ] No existing commands found in stream
[2026-06-27 14:51:42,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:51:42,485.485 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-27 14:51:45,131.131 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 14:51:45,132.132 INFO    ] Checking for system updates...
[2026-06-27 14:51:45,153.153 INFO    ] 200
[2026-06-27 14:51:45,154.154 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:51:45,185.185 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:51:45,187.187 INFO    ] No update needed
[2026-06-27 14:51:45,188.188 INFO    ] Checking for camera pi updates...
[2026-06-27 14:51:45,207.207 INFO    ] 200
[2026-06-27 14:51:45,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:51:45,232.232 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:51:45,284.284 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:51:45,286.286 INFO    ] No camera update needed
[2026-06-27 14:51:45,287.287 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:51:45,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:51:45,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:51:45,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:51:47,333.333 INFO    ] ================================================
[2026-06-27 14:51:47,349.349 INFO    ] Launching Daemon at Sat Jun 27 14:51:47 IST 2026
[2026-06-27 14:51:47,360.360 INFO    ] ================================================
[2026-06-27 14:51:47,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:51:47
[2026-06-27 14:51:48,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:51:48,171.171 INFO    ] Initializing speech engine...
[2026-06-27 14:51:48,175.175 INFO    ] 2026-06-27 14:51:48
[2026-06-27 14:51:48,377.377 INFO    ] 2026-06-27 14:51:48
[2026-06-27 14:51:48,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:51:48,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:51:48,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:51:48,792.792 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:51:48,816.816 INFO    ] time= 27/06/2026 14:51:48
[2026-06-27 14:51:48,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:51:48,823.823 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:51:48,890.890 INFO    ] No existing commands found in stream
[2026-06-27 14:51:53,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:51:53,907.907 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-27 14:51:55,594.594 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:51:55,596.596 INFO    ] Checking for system updates...
[2026-06-27 14:51:55,632.632 INFO    ] 200
[2026-06-27 14:51:55,635.635 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:51:55,694.694 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:51:55,696.696 INFO    ] No update needed
[2026-06-27 14:51:55,697.697 INFO    ] Checking for camera pi updates...
[2026-06-27 14:51:55,716.716 INFO    ] 200
[2026-06-27 14:51:55,718.718 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:51:55,741.741 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:51:55,785.785 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:51:55,787.787 INFO    ] No camera update needed
[2026-06-27 14:51:55,788.788 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:51:55,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:51:55,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:51:55,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:51:57,836.836 INFO    ] ================================================
[2026-06-27 14:51:57,851.851 INFO    ] Launching Daemon at Sat Jun 27 14:51:57 IST 2026
[2026-06-27 14:51:57,862.862 INFO    ] ================================================
[2026-06-27 14:51:58,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:51:58
[2026-06-27 14:51:58,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:51:58,734.734 INFO    ] Initializing speech engine...
[2026-06-27 14:51:58,737.737 INFO    ] 2026-06-27 14:51:58
[2026-06-27 14:51:58,946.946 INFO    ] 2026-06-27 14:51:58
[2026-06-27 14:51:58,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:51:59,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:51:59,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:51:59,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:51:59,390.390 INFO    ] time= 27/06/2026 14:51:59
[2026-06-27 14:51:59,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:51:59,397.397 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:51:59,465.465 INFO    ] No existing commands found in stream
[2026-06-27 14:52:04,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:52:04,478.478 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-27 14:52:07,887.887 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:52:07,889.889 INFO    ] Checking for system updates...
[2026-06-27 14:52:07,910.910 INFO    ] 200
[2026-06-27 14:52:07,912.912 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:52:07,944.944 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:52:07,945.945 INFO    ] No update needed
[2026-06-27 14:52:07,947.947 INFO    ] Checking for camera pi updates...
[2026-06-27 14:52:07,966.966 INFO    ] 200
[2026-06-27 14:52:07,968.968 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:52:07,992.992 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:52:08,038.038 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:52:08,039.039 INFO    ] No camera update needed
[2026-06-27 14:52:08,040.040 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:52:08,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:52:08,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:52:08,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:52:10,088.088 INFO    ] ================================================
[2026-06-27 14:52:10,104.104 INFO    ] Launching Daemon at Sat Jun 27 14:52:10 IST 2026
[2026-06-27 14:52:10,115.115 INFO    ] ================================================
[2026-06-27 14:52:10,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:52:10
[2026-06-27 14:52:10,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:52:10,990.990 INFO    ] Initializing speech engine...
[2026-06-27 14:52:10,996.996 INFO    ] 2026-06-27 14:52:10
[2026-06-27 14:52:11,205.205 INFO    ] 2026-06-27 14:52:11
[2026-06-27 14:52:11,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:52:11,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:52:11,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:52:11,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:52:11,648.648 INFO    ] time= 27/06/2026 14:52:11
[2026-06-27 14:52:11,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:52:11,712.712 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:52:11,767.767 INFO    ] No existing commands found in stream
[2026-06-27 14:52:16,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:52:16,780.780 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-27 14:52:20,242.242 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 14:52:20,244.244 INFO    ] Checking for system updates...
[2026-06-27 14:52:20,265.265 INFO    ] 200
[2026-06-27 14:52:20,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:52:20,297.297 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:52:20,299.299 INFO    ] No update needed
[2026-06-27 14:52:20,300.300 INFO    ] Checking for camera pi updates...
[2026-06-27 14:52:20,320.320 INFO    ] 200
[2026-06-27 14:52:20,321.321 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:52:20,345.345 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:52:20,388.388 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:52:20,389.389 INFO    ] No camera update needed
[2026-06-27 14:52:20,391.391 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:52:20,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:52:20,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:52:20,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:52:22,438.438 INFO    ] ================================================
[2026-06-27 14:52:22,454.454 INFO    ] Launching Daemon at Sat Jun 27 14:52:22 IST 2026
[2026-06-27 14:52:22,465.465 INFO    ] ================================================
[2026-06-27 14:52:22,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:52:22
[2026-06-27 14:52:23,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:52:23,314.314 INFO    ] Initializing speech engine...
[2026-06-27 14:52:23,319.319 INFO    ] 2026-06-27 14:52:23
[2026-06-27 14:52:23,524.524 INFO    ] 2026-06-27 14:52:23
[2026-06-27 14:52:23,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:52:23,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:52:23,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:52:23,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:52:23,968.968 INFO    ] time= 27/06/2026 14:52:23
[2026-06-27 14:52:23,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:52:23,972.972 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:52:24,062.062 INFO    ] No existing commands found in stream
[2026-06-27 14:52:29,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:52:29,079.079 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-27 14:52:32,058.058 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:52:32,062.062 INFO    ] Checking for system updates...
[2026-06-27 14:52:32,091.091 INFO    ] 200
[2026-06-27 14:52:32,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:52:32,125.125 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:52:32,127.127 INFO    ] No update needed
[2026-06-27 14:52:32,128.128 INFO    ] Checking for camera pi updates...
[2026-06-27 14:52:32,149.149 INFO    ] 200
[2026-06-27 14:52:32,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:52:32,175.175 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:52:32,207.207 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:52:32,211.211 INFO    ] No camera update needed
[2026-06-27 14:52:32,213.213 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:52:32,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:52:32,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:52:32,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:52:34,266.266 INFO    ] ================================================
[2026-06-27 14:52:34,281.281 INFO    ] Launching Daemon at Sat Jun 27 14:52:34 IST 2026
[2026-06-27 14:52:34,291.291 INFO    ] ================================================
[2026-06-27 14:52:34,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:52:34
[2026-06-27 14:52:34,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:52:35,069.069 INFO    ] Initializing speech engine...
[2026-06-27 14:52:35,080.080 INFO    ] 2026-06-27 14:52:35
[2026-06-27 14:52:35,286.286 INFO    ] 2026-06-27 14:52:35
[2026-06-27 14:52:35,313.313 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:52:35,497.497 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:52:35,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:52:35,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:52:35,706.706 INFO    ] time= 27/06/2026 14:52:35
[2026-06-27 14:52:35,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:52:35,735.735 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:52:35,802.802 INFO    ] No existing commands found in stream
[2026-06-27 14:52:40,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:52:40,820.820 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-27 14:52:43,541.541 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:52:43,543.543 INFO    ] Checking for system updates...
[2026-06-27 14:52:43,565.565 INFO    ] 200
[2026-06-27 14:52:43,566.566 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:52:43,597.597 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:52:43,598.598 INFO    ] No update needed
[2026-06-27 14:52:43,600.600 INFO    ] Checking for camera pi updates...
[2026-06-27 14:52:43,620.620 INFO    ] 200
[2026-06-27 14:52:43,621.621 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:52:43,645.645 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:52:43,687.687 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:52:43,689.689 INFO    ] No camera update needed
[2026-06-27 14:52:43,690.690 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:52:43,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:52:43,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:52:43,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:52:45,735.735 INFO    ] ================================================
[2026-06-27 14:52:45,751.751 INFO    ] Launching Daemon at Sat Jun 27 14:52:45 IST 2026
[2026-06-27 14:52:45,762.762 INFO    ] ================================================
[2026-06-27 14:52:46,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:52:46
[2026-06-27 14:52:46,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:52:46,636.636 INFO    ] Initializing speech engine...
[2026-06-27 14:52:46,639.639 INFO    ] 2026-06-27 14:52:46
[2026-06-27 14:52:46,848.848 INFO    ] 2026-06-27 14:52:46
[2026-06-27 14:52:46,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:52:47,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:52:47,064.064 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:52:47,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:52:47,293.293 INFO    ] time= 27/06/2026 14:52:47
[2026-06-27 14:52:47,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:52:47,300.300 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:52:47,368.368 INFO    ] No existing commands found in stream
[2026-06-27 14:52:52,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:52:52,386.386 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-27 14:52:55,147.147 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 14:52:55,148.148 INFO    ] Checking for system updates...
[2026-06-27 14:52:55,170.170 INFO    ] 200
[2026-06-27 14:52:55,172.172 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:52:55,203.203 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:52:55,204.204 INFO    ] No update needed
[2026-06-27 14:52:55,206.206 INFO    ] Checking for camera pi updates...
[2026-06-27 14:52:55,226.226 INFO    ] 200
[2026-06-27 14:52:55,227.227 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:52:55,251.251 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:52:55,278.278 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:52:55,279.279 INFO    ] No camera update needed
[2026-06-27 14:52:55,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:52:55,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:52:55,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:52:55,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:52:57,329.329 INFO    ] ================================================
[2026-06-27 14:52:57,344.344 INFO    ] Launching Daemon at Sat Jun 27 14:52:57 IST 2026
[2026-06-27 14:52:57,355.355 INFO    ] ================================================
[2026-06-27 14:52:57,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:52:57
[2026-06-27 14:52:58,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:52:58,174.174 INFO    ] Initializing speech engine...
[2026-06-27 14:52:58,179.179 INFO    ] 2026-06-27 14:52:58
[2026-06-27 14:52:58,384.384 INFO    ] 2026-06-27 14:52:58
[2026-06-27 14:52:58,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:52:58,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:52:58,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:52:58,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:52:58,795.795 INFO    ] time= 27/06/2026 14:52:58
[2026-06-27 14:52:58,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:52:58,840.840 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:52:58,906.906 INFO    ] No existing commands found in stream
[2026-06-27 14:53:03,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:53:03,919.919 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-27 14:53:07,426.426 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 14:53:07,428.428 INFO    ] Checking for system updates...
[2026-06-27 14:53:07,451.451 INFO    ] 200
[2026-06-27 14:53:07,452.452 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:53:07,482.482 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:53:07,484.484 INFO    ] No update needed
[2026-06-27 14:53:07,485.485 INFO    ] Checking for camera pi updates...
[2026-06-27 14:53:07,506.506 INFO    ] 200
[2026-06-27 14:53:07,507.507 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:53:07,530.530 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:53:07,580.580 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:53:07,582.582 INFO    ] No camera update needed
[2026-06-27 14:53:07,583.583 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:53:07,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:53:07,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:53:07,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:53:09,628.628 INFO    ] ================================================
[2026-06-27 14:53:09,645.645 INFO    ] Launching Daemon at Sat Jun 27 14:53:09 IST 2026
[2026-06-27 14:53:09,655.655 INFO    ] ================================================
[2026-06-27 14:53:09,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:53:09
[2026-06-27 14:53:10,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:53:10,452.452 INFO    ] Initializing speech engine...
[2026-06-27 14:53:10,457.457 INFO    ] 2026-06-27 14:53:10
[2026-06-27 14:53:10,656.656 INFO    ] 2026-06-27 14:53:10
[2026-06-27 14:53:10,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:53:10,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:53:10,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:53:11,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:53:11,087.087 INFO    ] time= 27/06/2026 14:53:11
[2026-06-27 14:53:11,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:53:11,116.116 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:53:11,232.232 INFO    ] No existing commands found in stream
[2026-06-27 14:53:16,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:53:16,245.245 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-27 14:53:20,453.453 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 14:53:20,455.455 INFO    ] Checking for system updates...
[2026-06-27 14:53:20,477.477 INFO    ] 200
[2026-06-27 14:53:20,478.478 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:53:20,509.509 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:53:20,510.510 INFO    ] No update needed
[2026-06-27 14:53:20,511.511 INFO    ] Checking for camera pi updates...
[2026-06-27 14:53:20,531.531 INFO    ] 200
[2026-06-27 14:53:20,532.532 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:53:20,555.555 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:53:20,582.582 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:53:20,584.584 INFO    ] No camera update needed
[2026-06-27 14:53:20,585.585 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:53:20,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:53:20,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:53:20,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:53:22,631.631 INFO    ] ================================================
[2026-06-27 14:53:22,647.647 INFO    ] Launching Daemon at Sat Jun 27 14:53:22 IST 2026
[2026-06-27 14:53:22,658.658 INFO    ] ================================================
[2026-06-27 14:53:23,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:53:23
[2026-06-27 14:53:23,369.369 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:53:23,512.512 INFO    ] Initializing speech engine...
[2026-06-27 14:53:23,522.522 INFO    ] 2026-06-27 14:53:23
[2026-06-27 14:53:23,729.729 INFO    ] 2026-06-27 14:53:23
[2026-06-27 14:53:23,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:53:23,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:53:23,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:53:24,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:53:24,153.153 INFO    ] time= 27/06/2026 14:53:24
[2026-06-27 14:53:24,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:53:24,180.180 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:53:24,248.248 INFO    ] No existing commands found in stream
[2026-06-27 14:53:29,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:53:29,260.260 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-27 14:53:33,281.281 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:53:33,282.282 INFO    ] Checking for system updates...
[2026-06-27 14:53:33,304.304 INFO    ] 200
[2026-06-27 14:53:33,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:53:33,336.336 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:53:33,337.337 INFO    ] No update needed
[2026-06-27 14:53:33,339.339 INFO    ] Checking for camera pi updates...
[2026-06-27 14:53:33,361.361 INFO    ] 200
[2026-06-27 14:53:33,362.362 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:53:33,387.387 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:53:33,428.428 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:53:33,430.430 INFO    ] No camera update needed
[2026-06-27 14:53:33,431.431 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:53:33,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:53:33,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:53:33,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:53:35,477.477 INFO    ] ================================================
[2026-06-27 14:53:35,493.493 INFO    ] Launching Daemon at Sat Jun 27 14:53:35 IST 2026
[2026-06-27 14:53:35,504.504 INFO    ] ================================================
[2026-06-27 14:53:35,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:53:35
[2026-06-27 14:53:36,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:53:36,345.345 INFO    ] Initializing speech engine...
[2026-06-27 14:53:36,355.355 INFO    ] 2026-06-27 14:53:36
[2026-06-27 14:53:36,567.567 INFO    ] 2026-06-27 14:53:36
[2026-06-27 14:53:36,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:53:36,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:53:36,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:53:36,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:53:37,010.010 INFO    ] time= 27/06/2026 14:53:36
[2026-06-27 14:53:37,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:53:37,017.017 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:53:37,110.110 INFO    ] No existing commands found in stream
[2026-06-27 14:53:42,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:53:42,133.133 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-27 14:53:45,700.700 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 14:53:45,702.702 INFO    ] Checking for system updates...
[2026-06-27 14:53:45,725.725 INFO    ] 200
[2026-06-27 14:53:45,727.727 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:53:45,758.758 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:53:45,760.760 INFO    ] No update needed
[2026-06-27 14:53:45,761.761 INFO    ] Checking for camera pi updates...
[2026-06-27 14:53:45,781.781 INFO    ] 200
[2026-06-27 14:53:45,782.782 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:53:45,806.806 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:53:45,852.852 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:53:45,854.854 INFO    ] No camera update needed
[2026-06-27 14:53:45,855.855 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:53:45,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:53:45,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:53:45,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:53:47,902.902 INFO    ] ================================================
[2026-06-27 14:53:47,917.917 INFO    ] Launching Daemon at Sat Jun 27 14:53:47 IST 2026
[2026-06-27 14:53:47,927.927 INFO    ] ================================================
[2026-06-27 14:53:48,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:53:48
[2026-06-27 14:53:48,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:53:48,746.746 INFO    ] Initializing speech engine...
[2026-06-27 14:53:48,752.752 INFO    ] 2026-06-27 14:53:48
[2026-06-27 14:53:48,956.956 INFO    ] 2026-06-27 14:53:48
[2026-06-27 14:53:48,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:53:49,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:53:49,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:53:49,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:53:49,382.382 INFO    ] time= 27/06/2026 14:53:49
[2026-06-27 14:53:49,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:53:49,423.423 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:53:49,542.542 INFO    ] No existing commands found in stream
[2026-06-27 14:53:54,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:53:54,559.559 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-27 14:53:56,946.946 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:53:56,948.948 INFO    ] Checking for system updates...
[2026-06-27 14:53:56,968.968 INFO    ] 200
[2026-06-27 14:53:56,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:53:57,001.001 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:53:57,002.002 INFO    ] No update needed
[2026-06-27 14:53:57,004.004 INFO    ] Checking for camera pi updates...
[2026-06-27 14:53:57,024.024 INFO    ] 200
[2026-06-27 14:53:57,025.025 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:53:57,049.049 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:53:57,097.097 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:53:57,098.098 INFO    ] No camera update needed
[2026-06-27 14:53:57,100.100 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:53:57,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:53:57,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:53:57,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:53:59,147.147 INFO    ] ================================================
[2026-06-27 14:53:59,162.162 INFO    ] Launching Daemon at Sat Jun 27 14:53:59 IST 2026
[2026-06-27 14:53:59,177.177 INFO    ] ================================================
[2026-06-27 14:53:59,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:53:59
[2026-06-27 14:53:59,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:53:59,976.976 INFO    ] Initializing speech engine...
[2026-06-27 14:53:59,984.984 INFO    ] 2026-06-27 14:53:59
[2026-06-27 14:54:00,194.194 INFO    ] 2026-06-27 14:54:00
[2026-06-27 14:54:00,224.224 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:54:00,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:54:00,409.409 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:54:00,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:54:00,600.600 INFO    ] time= 27/06/2026 14:54:00
[2026-06-27 14:54:00,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:54:00,646.646 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:54:00,722.722 INFO    ] No existing commands found in stream
[2026-06-27 14:54:05,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:54:05,737.737 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-27 14:54:08,502.502 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 14:54:08,503.503 INFO    ] Checking for system updates...
[2026-06-27 14:54:08,524.524 INFO    ] 200
[2026-06-27 14:54:08,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:54:08,557.557 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:54:08,558.558 INFO    ] No update needed
[2026-06-27 14:54:08,559.559 INFO    ] Checking for camera pi updates...
[2026-06-27 14:54:08,578.578 INFO    ] 200
[2026-06-27 14:54:08,580.580 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:54:08,603.603 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:54:08,647.647 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:54:08,649.649 INFO    ] No camera update needed
[2026-06-27 14:54:08,650.650 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:54:08,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:54:08,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:54:08,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:54:10,697.697 INFO    ] ================================================
[2026-06-27 14:54:10,712.712 INFO    ] Launching Daemon at Sat Jun 27 14:54:10 IST 2026
[2026-06-27 14:54:10,723.723 INFO    ] ================================================
[2026-06-27 14:54:11,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:54:11
[2026-06-27 14:54:11,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:54:11,544.544 INFO    ] Initializing speech engine...
[2026-06-27 14:54:11,552.552 INFO    ] 2026-06-27 14:54:11
[2026-06-27 14:54:11,751.751 INFO    ] 2026-06-27 14:54:11
[2026-06-27 14:54:11,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:54:11,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:54:12,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:54:12,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:54:12,283.283 INFO    ] time= 27/06/2026 14:54:12
[2026-06-27 14:54:12,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:54:12,338.338 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:54:12,421.421 INFO    ] No existing commands found in stream
[2026-06-27 14:54:17,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:54:17,433.433 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-27 14:54:19,277.277 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:54:19,278.278 INFO    ] Checking for system updates...
[2026-06-27 14:54:19,299.299 INFO    ] 200
[2026-06-27 14:54:19,301.301 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:54:19,331.331 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:54:19,333.333 INFO    ] No update needed
[2026-06-27 14:54:19,334.334 INFO    ] Checking for camera pi updates...
[2026-06-27 14:54:19,354.354 INFO    ] 200
[2026-06-27 14:54:19,356.356 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:54:19,380.380 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:54:19,431.431 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:54:19,433.433 INFO    ] No camera update needed
[2026-06-27 14:54:19,434.434 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:54:19,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:54:19,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:54:19,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:54:21,481.481 INFO    ] ================================================
[2026-06-27 14:54:21,497.497 INFO    ] Launching Daemon at Sat Jun 27 14:54:21 IST 2026
[2026-06-27 14:54:21,508.508 INFO    ] ================================================
[2026-06-27 14:54:21,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:54:21
[2026-06-27 14:54:22,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:54:22,297.297 INFO    ] Initializing speech engine...
[2026-06-27 14:54:22,301.301 INFO    ] 2026-06-27 14:54:22
[2026-06-27 14:54:22,511.511 INFO    ] 2026-06-27 14:54:22
[2026-06-27 14:54:22,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:54:22,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:54:22,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:54:22,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:54:22,967.967 INFO    ] time= 27/06/2026 14:54:22
[2026-06-27 14:54:22,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:54:23,018.018 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:54:23,096.096 INFO    ] No existing commands found in stream
[2026-06-27 14:54:28,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:54:28,108.108 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-27 14:54:32,376.376 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:54:32,378.378 INFO    ] Checking for system updates...
[2026-06-27 14:54:32,403.403 INFO    ] 200
[2026-06-27 14:54:32,405.405 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:54:32,440.440 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:54:32,442.442 INFO    ] No update needed
[2026-06-27 14:54:32,444.444 INFO    ] Checking for camera pi updates...
[2026-06-27 14:54:32,466.466 INFO    ] 200
[2026-06-27 14:54:32,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:54:32,493.493 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:54:32,617.617 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:54:32,619.619 INFO    ] No camera update needed
[2026-06-27 14:54:32,620.620 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:54:32,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:54:32,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:54:32,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:54:34,666.666 INFO    ] ================================================
[2026-06-27 14:54:34,682.682 INFO    ] Launching Daemon at Sat Jun 27 14:54:34 IST 2026
[2026-06-27 14:54:34,693.693 INFO    ] ================================================
[2026-06-27 14:54:35,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:54:35
[2026-06-27 14:54:35,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:54:35,588.588 INFO    ] Initializing speech engine...
[2026-06-27 14:54:35,592.592 INFO    ] 2026-06-27 14:54:35
[2026-06-27 14:54:35,802.802 INFO    ] 2026-06-27 14:54:35
[2026-06-27 14:54:35,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:54:36,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:54:36,027.027 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:54:36,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:54:36,245.245 INFO    ] time= 27/06/2026 14:54:36
[2026-06-27 14:54:36,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:54:36,252.252 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:54:36,319.319 INFO    ] No existing commands found in stream
[2026-06-27 14:54:41,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:54:41,336.336 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-27 14:54:44,695.695 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:54:44,697.697 INFO    ] Checking for system updates...
[2026-06-27 14:54:44,718.718 INFO    ] 200
[2026-06-27 14:54:44,720.720 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:54:44,753.753 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:54:44,755.755 INFO    ] No update needed
[2026-06-27 14:54:44,756.756 INFO    ] Checking for camera pi updates...
[2026-06-27 14:54:44,778.778 INFO    ] 200
[2026-06-27 14:54:44,780.780 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:54:44,803.803 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:54:44,849.849 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:54:44,851.851 INFO    ] No camera update needed
[2026-06-27 14:54:44,852.852 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:54:44,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:54:44,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:54:44,860.860 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:54:46,903.903 INFO    ] ================================================
[2026-06-27 14:54:46,919.919 INFO    ] Launching Daemon at Sat Jun 27 14:54:46 IST 2026
[2026-06-27 14:54:46,931.931 INFO    ] ================================================
[2026-06-27 14:54:47,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:54:47
[2026-06-27 14:54:47,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:54:47,729.729 INFO    ] Initializing speech engine...
[2026-06-27 14:54:47,740.740 INFO    ] 2026-06-27 14:54:47
[2026-06-27 14:54:47,945.945 INFO    ] 2026-06-27 14:54:47
[2026-06-27 14:54:47,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:54:48,157.157 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:54:48,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:54:48,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:54:48,386.386 INFO    ] time= 27/06/2026 14:54:48
[2026-06-27 14:54:48,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:54:48,393.393 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:54:48,460.460 INFO    ] No existing commands found in stream
[2026-06-27 14:54:53,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:54:53,477.477 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-27 14:54:56,858.858 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:54:56,859.859 INFO    ] Checking for system updates...
[2026-06-27 14:54:56,880.880 INFO    ] 200
[2026-06-27 14:54:56,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:54:56,914.914 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:54:56,916.916 INFO    ] No update needed
[2026-06-27 14:54:56,917.917 INFO    ] Checking for camera pi updates...
[2026-06-27 14:54:56,937.937 INFO    ] 200
[2026-06-27 14:54:56,939.939 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:54:56,962.962 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:54:57,005.005 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:54:57,007.007 INFO    ] No camera update needed
[2026-06-27 14:54:57,008.008 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:54:57,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:54:57,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:54:57,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:54:59,056.056 INFO    ] ================================================
[2026-06-27 14:54:59,072.072 INFO    ] Launching Daemon at Sat Jun 27 14:54:59 IST 2026
[2026-06-27 14:54:59,082.082 INFO    ] ================================================
[2026-06-27 14:54:59,403.403 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:54:59
[2026-06-27 14:54:59,715.715 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:54:59,845.845 INFO    ] Initializing speech engine...
[2026-06-27 14:54:59,849.849 INFO    ] 2026-06-27 14:54:59
[2026-06-27 14:55:00,066.066 INFO    ] 2026-06-27 14:55:00
[2026-06-27 14:55:00,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:55:00,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:55:00,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:55:00,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:55:00,508.508 INFO    ] time= 27/06/2026 14:55:00
[2026-06-27 14:55:00,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:55:00,515.515 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:55:00,605.605 INFO    ] No existing commands found in stream
[2026-06-27 14:55:05,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:55:05,622.622 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-27 14:55:08,356.356 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 14:55:08,357.357 INFO    ] Checking for system updates...
[2026-06-27 14:55:08,378.378 INFO    ] 200
[2026-06-27 14:55:08,379.379 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:55:08,412.412 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:55:08,414.414 INFO    ] No update needed
[2026-06-27 14:55:08,415.415 INFO    ] Checking for camera pi updates...
[2026-06-27 14:55:08,435.435 INFO    ] 200
[2026-06-27 14:55:08,436.436 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:55:08,459.459 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:55:08,505.505 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:55:08,506.506 INFO    ] No camera update needed
[2026-06-27 14:55:08,508.508 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:55:08,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:55:08,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:55:08,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:55:10,555.555 INFO    ] ================================================
[2026-06-27 14:55:10,570.570 INFO    ] Launching Daemon at Sat Jun 27 14:55:10 IST 2026
[2026-06-27 14:55:10,582.582 INFO    ] ================================================
[2026-06-27 14:55:10,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:55:10
[2026-06-27 14:55:11,254.254 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:55:11,392.392 INFO    ] Initializing speech engine...
[2026-06-27 14:55:11,402.402 INFO    ] 2026-06-27 14:55:11
[2026-06-27 14:55:11,608.608 INFO    ] 2026-06-27 14:55:11
[2026-06-27 14:55:11,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:55:11,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:55:11,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:55:11,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:55:12,027.027 INFO    ] time= 27/06/2026 14:55:11
[2026-06-27 14:55:12,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:55:12,054.054 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:55:12,145.145 INFO    ] No existing commands found in stream
[2026-06-27 14:55:17,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:55:17,159.159 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-27 14:55:18,791.791 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:55:18,793.793 INFO    ] Checking for system updates...
[2026-06-27 14:55:18,813.813 INFO    ] 200
[2026-06-27 14:55:18,815.815 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:55:18,846.846 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:55:18,847.847 INFO    ] No update needed
[2026-06-27 14:55:18,849.849 INFO    ] Checking for camera pi updates...
[2026-06-27 14:55:18,868.868 INFO    ] 200
[2026-06-27 14:55:18,869.869 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:55:18,893.893 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:55:18,936.936 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:55:18,937.937 INFO    ] No camera update needed
[2026-06-27 14:55:18,938.938 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:55:18,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:55:18,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:55:18,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:55:20,987.987 INFO    ] ================================================
[2026-06-27 14:55:21,002.002 INFO    ] Launching Daemon at Sat Jun 27 14:55:20 IST 2026
[2026-06-27 14:55:21,013.013 INFO    ] ================================================
[2026-06-27 14:55:21,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:55:21
[2026-06-27 14:55:21,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:55:21,867.867 INFO    ] Initializing speech engine...
[2026-06-27 14:55:21,871.871 INFO    ] 2026-06-27 14:55:21
[2026-06-27 14:55:22,078.078 INFO    ] 2026-06-27 14:55:22
[2026-06-27 14:55:22,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:55:22,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:55:22,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:55:22,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:55:22,500.500 INFO    ] time= 27/06/2026 14:55:22
[2026-06-27 14:55:22,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:55:22,529.529 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:55:22,595.595 INFO    ] No existing commands found in stream
[2026-06-27 14:55:27,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:55:27,631.631 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-27 14:55:31,491.491 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:55:31,493.493 INFO    ] Checking for system updates...
[2026-06-27 14:55:31,513.513 INFO    ] 200
[2026-06-27 14:55:31,515.515 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:55:31,546.546 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:55:31,547.547 INFO    ] No update needed
[2026-06-27 14:55:31,549.549 INFO    ] Checking for camera pi updates...
[2026-06-27 14:55:31,568.568 INFO    ] 200
[2026-06-27 14:55:31,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:55:31,593.593 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:55:31,645.645 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:55:31,646.646 INFO    ] No camera update needed
[2026-06-27 14:55:31,647.647 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:55:31,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:55:31,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:55:31,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:55:33,687.687 INFO    ] ================================================
[2026-06-27 14:55:33,702.702 INFO    ] Launching Daemon at Sat Jun 27 14:55:33 IST 2026
[2026-06-27 14:55:33,713.713 INFO    ] ================================================
[2026-06-27 14:55:34,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:55:34
[2026-06-27 14:55:34,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:55:34,512.512 INFO    ] Initializing speech engine...
[2026-06-27 14:55:34,523.523 INFO    ] 2026-06-27 14:55:34
[2026-06-27 14:55:34,730.730 INFO    ] 2026-06-27 14:55:34
[2026-06-27 14:55:34,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:55:35,037.037 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:55:35,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:55:35,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:55:35,244.244 INFO    ] time= 27/06/2026 14:55:35
[2026-06-27 14:55:35,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:55:35,271.271 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:55:35,373.373 INFO    ] No existing commands found in stream
[2026-06-27 14:55:40,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:55:40,386.386 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-27 14:55:43,752.752 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 14:55:43,753.753 INFO    ] Checking for system updates...
[2026-06-27 14:55:43,775.775 INFO    ] 200
[2026-06-27 14:55:43,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:55:43,807.807 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:55:43,808.808 INFO    ] No update needed
[2026-06-27 14:55:43,809.809 INFO    ] Checking for camera pi updates...
[2026-06-27 14:55:43,830.830 INFO    ] 200
[2026-06-27 14:55:43,831.831 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:55:43,854.854 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:55:43,899.899 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:55:43,900.900 INFO    ] No camera update needed
[2026-06-27 14:55:43,901.901 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:55:43,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:55:43,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:55:43,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:55:45,946.946 INFO    ] ================================================
[2026-06-27 14:55:45,961.961 INFO    ] Launching Daemon at Sat Jun 27 14:55:45 IST 2026
[2026-06-27 14:55:45,973.973 INFO    ] ================================================
[2026-06-27 14:55:46,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:55:46
[2026-06-27 14:55:46,636.636 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:55:46,781.781 INFO    ] Initializing speech engine...
[2026-06-27 14:55:46,786.786 INFO    ] 2026-06-27 14:55:46
[2026-06-27 14:55:46,990.990 INFO    ] 2026-06-27 14:55:46
[2026-06-27 14:55:47,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:55:47,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:55:47,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:55:47,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:55:47,430.430 INFO    ] time= 27/06/2026 14:55:47
[2026-06-27 14:55:47,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:55:47,437.437 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:55:47,528.528 INFO    ] No existing commands found in stream
[2026-06-27 14:55:52,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:55:52,544.544 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-27 14:55:53,242.242 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:55:53,244.244 INFO    ] Checking for system updates...
[2026-06-27 14:55:53,265.265 INFO    ] 200
[2026-06-27 14:55:53,266.266 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:55:53,297.297 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:55:53,298.298 INFO    ] No update needed
[2026-06-27 14:55:53,300.300 INFO    ] Checking for camera pi updates...
[2026-06-27 14:55:53,320.320 INFO    ] 200
[2026-06-27 14:55:53,321.321 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:55:53,346.346 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:55:53,392.392 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:55:53,394.394 INFO    ] No camera update needed
[2026-06-27 14:55:53,395.395 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:55:53,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:55:53,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:55:53,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:55:55,442.442 INFO    ] ================================================
[2026-06-27 14:55:55,458.458 INFO    ] Launching Daemon at Sat Jun 27 14:55:55 IST 2026
[2026-06-27 14:55:55,469.469 INFO    ] ================================================
[2026-06-27 14:55:55,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:55:55
[2026-06-27 14:55:56,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:55:56,284.284 INFO    ] Initializing speech engine...
[2026-06-27 14:55:56,288.288 INFO    ] 2026-06-27 14:55:56
[2026-06-27 14:55:56,505.505 INFO    ] 2026-06-27 14:55:56
[2026-06-27 14:55:56,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:55:56,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:55:56,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:55:56,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:55:56,966.966 INFO    ] time= 27/06/2026 14:55:56
[2026-06-27 14:55:56,978.978 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:55:56,984.984 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:55:57,059.059 INFO    ] No existing commands found in stream
[2026-06-27 14:56:02,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:56:02,067.067 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-27 14:56:03,227.227 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:56:03,228.228 INFO    ] Checking for system updates...
[2026-06-27 14:56:03,249.249 INFO    ] 200
[2026-06-27 14:56:03,250.250 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:56:03,281.281 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:56:03,282.282 INFO    ] No update needed
[2026-06-27 14:56:03,284.284 INFO    ] Checking for camera pi updates...
[2026-06-27 14:56:03,305.305 INFO    ] 200
[2026-06-27 14:56:03,306.306 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:56:03,329.329 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:56:03,356.356 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:56:03,357.357 INFO    ] No camera update needed
[2026-06-27 14:56:03,358.358 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:56:03,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:56:03,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:56:03,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:56:05,404.404 INFO    ] ================================================
[2026-06-27 14:56:05,419.419 INFO    ] Launching Daemon at Sat Jun 27 14:56:05 IST 2026
[2026-06-27 14:56:05,432.432 INFO    ] ================================================
[2026-06-27 14:56:05,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:56:05
[2026-06-27 14:56:06,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:56:06,334.334 INFO    ] Initializing speech engine...
[2026-06-27 14:56:06,340.340 INFO    ] 2026-06-27 14:56:06
[2026-06-27 14:56:06,550.550 INFO    ] 2026-06-27 14:56:06
[2026-06-27 14:56:06,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:56:06,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:56:06,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:56:06,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:56:06,991.991 INFO    ] time= 27/06/2026 14:56:06
[2026-06-27 14:56:06,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:56:06,999.999 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:56:07,066.066 INFO    ] No existing commands found in stream
[2026-06-27 14:56:12,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:56:12,084.084 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-27 14:56:15,536.536 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 14:56:15,537.537 INFO    ] Checking for system updates...
[2026-06-27 14:56:15,559.559 INFO    ] 200
[2026-06-27 14:56:15,560.560 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:56:15,590.590 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:56:15,592.592 INFO    ] No update needed
[2026-06-27 14:56:15,593.593 INFO    ] Checking for camera pi updates...
[2026-06-27 14:56:15,614.614 INFO    ] 200
[2026-06-27 14:56:15,616.616 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:56:15,641.641 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:56:15,670.670 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:56:15,672.672 INFO    ] No camera update needed
[2026-06-27 14:56:15,673.673 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:56:15,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:56:15,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:56:15,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:56:17,718.718 INFO    ] ================================================
[2026-06-27 14:56:17,733.733 INFO    ] Launching Daemon at Sat Jun 27 14:56:17 IST 2026
[2026-06-27 14:56:17,744.744 INFO    ] ================================================
[2026-06-27 14:56:18,076.076 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:56:18
[2026-06-27 14:56:18,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:56:18,523.523 INFO    ] Initializing speech engine...
[2026-06-27 14:56:18,528.528 INFO    ] 2026-06-27 14:56:18
[2026-06-27 14:56:18,727.727 INFO    ] 2026-06-27 14:56:18
[2026-06-27 14:56:18,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:56:18,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:56:18,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:56:19,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:56:19,215.215 INFO    ] time= 27/06/2026 14:56:19
[2026-06-27 14:56:19,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:56:19,243.243 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:56:19,345.345 INFO    ] No existing commands found in stream
[2026-06-27 14:56:24,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:56:24,357.357 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-27 14:56:27,608.608 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:56:27,609.609 INFO    ] Checking for system updates...
[2026-06-27 14:56:27,631.631 INFO    ] 200
[2026-06-27 14:56:27,633.633 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:56:27,663.663 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:56:27,665.665 INFO    ] No update needed
[2026-06-27 14:56:27,666.666 INFO    ] Checking for camera pi updates...
[2026-06-27 14:56:27,687.687 INFO    ] 200
[2026-06-27 14:56:27,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:56:27,712.712 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:56:27,776.776 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:56:27,777.777 INFO    ] No camera update needed
[2026-06-27 14:56:27,778.778 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:56:27,780.780 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:56:27,783.783 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:56:27,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:56:29,826.826 INFO    ] ================================================
[2026-06-27 14:56:29,841.841 INFO    ] Launching Daemon at Sat Jun 27 14:56:29 IST 2026
[2026-06-27 14:56:29,852.852 INFO    ] ================================================
[2026-06-27 14:56:30,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:56:30
[2026-06-27 14:56:30,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:56:30,668.668 INFO    ] Initializing speech engine...
[2026-06-27 14:56:30,672.672 INFO    ] 2026-06-27 14:56:30
[2026-06-27 14:56:30,878.878 INFO    ] 2026-06-27 14:56:30
[2026-06-27 14:56:30,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:56:31,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:56:31,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:56:31,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:56:31,373.373 INFO    ] time= 27/06/2026 14:56:31
[2026-06-27 14:56:31,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:56:31,471.471 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:56:31,617.617 INFO    ] No existing commands found in stream
[2026-06-27 14:56:36,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:56:36,629.629 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-27 14:56:40,697.697 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 14:56:40,699.699 INFO    ] Checking for system updates...
[2026-06-27 14:56:40,719.719 INFO    ] 200
[2026-06-27 14:56:40,721.721 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:56:40,753.753 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:56:40,755.755 INFO    ] No update needed
[2026-06-27 14:56:40,756.756 INFO    ] Checking for camera pi updates...
[2026-06-27 14:56:40,775.775 INFO    ] 200
[2026-06-27 14:56:40,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:56:40,800.800 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:56:40,938.938 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:56:40,939.939 INFO    ] No camera update needed
[2026-06-27 14:56:40,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:56:40,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:56:40,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:56:40,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:56:42,987.987 INFO    ] ================================================
[2026-06-27 14:56:43,003.003 INFO    ] Launching Daemon at Sat Jun 27 14:56:42 IST 2026
[2026-06-27 14:56:43,014.014 INFO    ] ================================================
[2026-06-27 14:56:43,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:56:43
[2026-06-27 14:56:43,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:56:43,814.814 INFO    ] Initializing speech engine...
[2026-06-27 14:56:43,818.818 INFO    ] 2026-06-27 14:56:43
[2026-06-27 14:56:44,024.024 INFO    ] 2026-06-27 14:56:44
[2026-06-27 14:56:44,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:56:44,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:56:44,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:56:44,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:56:44,475.475 INFO    ] time= 27/06/2026 14:56:44
[2026-06-27 14:56:44,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:56:44,478.478 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:56:44,545.545 INFO    ] No existing commands found in stream
[2026-06-27 14:56:49,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:56:49,557.557 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-27 14:56:53,204.204 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:56:53,205.205 INFO    ] Checking for system updates...
[2026-06-27 14:56:53,228.228 INFO    ] 200
[2026-06-27 14:56:53,229.229 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:56:53,263.263 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:56:53,265.265 INFO    ] No update needed
[2026-06-27 14:56:53,266.266 INFO    ] Checking for camera pi updates...
[2026-06-27 14:56:53,287.287 INFO    ] 200
[2026-06-27 14:56:53,288.288 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:56:53,315.315 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:56:53,385.385 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:56:53,387.387 INFO    ] No camera update needed
[2026-06-27 14:56:53,388.388 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:56:53,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:56:53,393.393 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:56:53,396.396 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:56:55,435.435 INFO    ] ================================================
[2026-06-27 14:56:55,451.451 INFO    ] Launching Daemon at Sat Jun 27 14:56:55 IST 2026
[2026-06-27 14:56:55,462.462 INFO    ] ================================================
[2026-06-27 14:56:55,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:56:55
[2026-06-27 14:56:56,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:56:56,243.243 INFO    ] Initializing speech engine...
[2026-06-27 14:56:56,255.255 INFO    ] 2026-06-27 14:56:56
[2026-06-27 14:56:56,464.464 INFO    ] 2026-06-27 14:56:56
[2026-06-27 14:56:56,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:56:56,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:56:56,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:56:56,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:56:56,912.912 INFO    ] time= 27/06/2026 14:56:56
[2026-06-27 14:56:56,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:56:56,916.916 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:56:57,012.012 INFO    ] No existing commands found in stream
[2026-06-27 14:57:02,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:57:02,017.017 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-27 14:57:05,841.841 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:57:05,843.843 INFO    ] Checking for system updates...
[2026-06-27 14:57:05,870.870 INFO    ] 200
[2026-06-27 14:57:05,872.872 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:57:05,905.905 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:57:05,906.906 INFO    ] No update needed
[2026-06-27 14:57:05,908.908 INFO    ] Checking for camera pi updates...
[2026-06-27 14:57:05,927.927 INFO    ] 200
[2026-06-27 14:57:05,929.929 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:57:05,953.953 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:57:05,994.994 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:57:05,995.995 INFO    ] No camera update needed
[2026-06-27 14:57:05,996.996 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:57:05,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:57:06,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:57:06,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:57:08,045.045 INFO    ] ================================================
[2026-06-27 14:57:08,061.061 INFO    ] Launching Daemon at Sat Jun 27 14:57:08 IST 2026
[2026-06-27 14:57:08,072.072 INFO    ] ================================================
[2026-06-27 14:57:08,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:57:08
[2026-06-27 14:57:08,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:57:08,896.896 INFO    ] Initializing speech engine...
[2026-06-27 14:57:08,901.901 INFO    ] 2026-06-27 14:57:08
[2026-06-27 14:57:09,105.105 INFO    ] 2026-06-27 14:57:09
[2026-06-27 14:57:09,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:57:09,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:57:09,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:57:09,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:57:09,639.639 INFO    ] time= 27/06/2026 14:57:09
[2026-06-27 14:57:09,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:57:09,663.663 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:57:09,753.753 INFO    ] No existing commands found in stream
[2026-06-27 14:57:14,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:57:14,768.768 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-27 14:57:18,398.398 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 14:57:18,401.401 INFO    ] Checking for system updates...
[2026-06-27 14:57:18,437.437 INFO    ] 200
[2026-06-27 14:57:18,439.439 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:57:18,494.494 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:57:18,496.496 INFO    ] No update needed
[2026-06-27 14:57:18,499.499 INFO    ] Checking for camera pi updates...
[2026-06-27 14:57:18,536.536 INFO    ] 200
[2026-06-27 14:57:18,539.539 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:57:18,580.580 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:57:18,612.612 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:57:18,615.615 INFO    ] No camera update needed
[2026-06-27 14:57:18,617.617 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:57:18,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:57:18,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:57:18,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:57:20,671.671 INFO    ] ================================================
[2026-06-27 14:57:20,687.687 INFO    ] Launching Daemon at Sat Jun 27 14:57:20 IST 2026
[2026-06-27 14:57:20,698.698 INFO    ] ================================================
[2026-06-27 14:57:21,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:57:21
[2026-06-27 14:57:21,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:57:21,505.505 INFO    ] Initializing speech engine...
[2026-06-27 14:57:21,513.513 INFO    ] 2026-06-27 14:57:21
[2026-06-27 14:57:21,727.727 INFO    ] 2026-06-27 14:57:21
[2026-06-27 14:57:21,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:57:21,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:57:21,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:57:22,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:57:22,173.173 INFO    ] time= 27/06/2026 14:57:22
[2026-06-27 14:57:22,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:57:22,176.176 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:57:22,267.267 INFO    ] No existing commands found in stream
[2026-06-27 14:57:27,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:57:27,284.284 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-27 14:57:29,602.602 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 14:57:29,604.604 INFO    ] Checking for system updates...
[2026-06-27 14:57:29,625.625 INFO    ] 200
[2026-06-27 14:57:29,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:57:29,659.659 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:57:29,660.660 INFO    ] No update needed
[2026-06-27 14:57:29,661.661 INFO    ] Checking for camera pi updates...
[2026-06-27 14:57:29,686.686 INFO    ] 200
[2026-06-27 14:57:29,687.687 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:57:29,712.712 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:57:29,741.741 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:57:29,744.744 INFO    ] No camera update needed
[2026-06-27 14:57:29,747.747 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:57:29,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:57:29,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:57:29,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:57:31,800.800 INFO    ] ================================================
[2026-06-27 14:57:31,813.813 INFO    ] Launching Daemon at Sat Jun 27 14:57:31 IST 2026
[2026-06-27 14:57:31,819.819 INFO    ] ================================================
[2026-06-27 14:57:32,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:57:32
[2026-06-27 14:57:32,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:57:32,624.624 INFO    ] Initializing speech engine...
[2026-06-27 14:57:32,628.628 INFO    ] 2026-06-27 14:57:32
[2026-06-27 14:57:32,847.847 INFO    ] 2026-06-27 14:57:32
[2026-06-27 14:57:32,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:57:33,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:57:33,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:57:33,198.198 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:57:33,264.264 INFO    ] time= 27/06/2026 14:57:33
[2026-06-27 14:57:33,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:57:33,305.305 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:57:33,373.373 INFO    ] No existing commands found in stream
[2026-06-27 14:57:38,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:57:38,385.385 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-27 14:57:41,254.254 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 14:57:41,255.255 INFO    ] Checking for system updates...
[2026-06-27 14:57:41,277.277 INFO    ] 200
[2026-06-27 14:57:41,278.278 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:57:41,309.309 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:57:41,311.311 INFO    ] No update needed
[2026-06-27 14:57:41,312.312 INFO    ] Checking for camera pi updates...
[2026-06-27 14:57:41,333.333 INFO    ] 200
[2026-06-27 14:57:41,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:57:41,358.358 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:57:41,383.383 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:57:41,385.385 INFO    ] No camera update needed
[2026-06-27 14:57:41,386.386 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:57:41,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:57:41,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:57:41,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:57:43,431.431 INFO    ] ================================================
[2026-06-27 14:57:43,447.447 INFO    ] Launching Daemon at Sat Jun 27 14:57:43 IST 2026
[2026-06-27 14:57:43,459.459 INFO    ] ================================================
[2026-06-27 14:57:43,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:57:43
[2026-06-27 14:57:44,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:57:44,311.311 INFO    ] Initializing speech engine...
[2026-06-27 14:57:44,317.317 INFO    ] 2026-06-27 14:57:44
[2026-06-27 14:57:44,525.525 INFO    ] 2026-06-27 14:57:44
[2026-06-27 14:57:44,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:57:44,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:57:44,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:57:44,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:57:44,947.947 INFO    ] time= 27/06/2026 14:57:44
[2026-06-27 14:57:44,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:57:44,976.976 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:57:45,043.043 INFO    ] No existing commands found in stream
[2026-06-27 14:57:50,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:57:50,061.061 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-27 14:57:50,619.619 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:57:50,620.620 INFO    ] Checking for system updates...
[2026-06-27 14:57:50,641.641 INFO    ] 200
[2026-06-27 14:57:50,643.643 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:57:50,676.676 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:57:50,677.677 INFO    ] No update needed
[2026-06-27 14:57:50,679.679 INFO    ] Checking for camera pi updates...
[2026-06-27 14:57:50,701.701 INFO    ] 200
[2026-06-27 14:57:50,703.703 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:57:50,729.729 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:57:50,784.784 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:57:50,786.786 INFO    ] No camera update needed
[2026-06-27 14:57:50,787.787 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:57:50,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:57:50,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:57:50,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:57:52,836.836 INFO    ] ================================================
[2026-06-27 14:57:52,852.852 INFO    ] Launching Daemon at Sat Jun 27 14:57:52 IST 2026
[2026-06-27 14:57:52,862.862 INFO    ] ================================================
[2026-06-27 14:57:53,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:57:53
[2026-06-27 14:57:53,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:57:53,649.649 INFO    ] Initializing speech engine...
[2026-06-27 14:57:53,652.652 INFO    ] 2026-06-27 14:57:53
[2026-06-27 14:57:53,850.850 INFO    ] 2026-06-27 14:57:53
[2026-06-27 14:57:53,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:57:54,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:57:54,088.088 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:57:54,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:57:54,294.294 INFO    ] time= 27/06/2026 14:57:54
[2026-06-27 14:57:54,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:57:54,297.297 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:57:54,365.365 INFO    ] No existing commands found in stream
[2026-06-27 14:57:59,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:57:59,375.375 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-27 14:58:02,655.655 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:58:02,657.657 INFO    ] Checking for system updates...
[2026-06-27 14:58:02,697.697 INFO    ] 200
[2026-06-27 14:58:02,700.700 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:58:02,741.741 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:58:02,742.742 INFO    ] No update needed
[2026-06-27 14:58:02,744.744 INFO    ] Checking for camera pi updates...
[2026-06-27 14:58:02,765.765 INFO    ] 200
[2026-06-27 14:58:02,766.766 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:58:02,797.797 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:58:02,847.847 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:58:02,849.849 INFO    ] No camera update needed
[2026-06-27 14:58:02,850.850 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:58:02,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:58:02,854.854 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:58:02,857.857 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:58:04,895.895 INFO    ] ================================================
[2026-06-27 14:58:04,911.911 INFO    ] Launching Daemon at Sat Jun 27 14:58:04 IST 2026
[2026-06-27 14:58:04,922.922 INFO    ] ================================================
[2026-06-27 14:58:05,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:58:05
[2026-06-27 14:58:05,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:58:05,700.700 INFO    ] Initializing speech engine...
[2026-06-27 14:58:05,706.706 INFO    ] 2026-06-27 14:58:05
[2026-06-27 14:58:05,911.911 INFO    ] 2026-06-27 14:58:05
[2026-06-27 14:58:05,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:58:06,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:58:06,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:58:06,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:58:06,302.302 INFO    ] time= 27/06/2026 14:58:06
[2026-06-27 14:58:06,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:58:06,350.350 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:58:06,467.467 INFO    ] No existing commands found in stream
[2026-06-27 14:58:11,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:58:11,479.479 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-27 14:58:12,948.948 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:58:12,950.950 INFO    ] Checking for system updates...
[2026-06-27 14:58:12,973.973 INFO    ] 200
[2026-06-27 14:58:12,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:58:13,006.006 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:58:13,007.007 INFO    ] No update needed
[2026-06-27 14:58:13,009.009 INFO    ] Checking for camera pi updates...
[2026-06-27 14:58:13,028.028 INFO    ] 200
[2026-06-27 14:58:13,029.029 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:58:13,053.053 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:58:13,101.101 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:58:13,102.102 INFO    ] No camera update needed
[2026-06-27 14:58:13,104.104 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:58:13,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:58:13,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:58:13,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:58:15,149.149 INFO    ] ================================================
[2026-06-27 14:58:15,165.165 INFO    ] Launching Daemon at Sat Jun 27 14:58:15 IST 2026
[2026-06-27 14:58:15,176.176 INFO    ] ================================================
[2026-06-27 14:58:15,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:58:15
[2026-06-27 14:58:15,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:58:16,028.028 INFO    ] Initializing speech engine...
[2026-06-27 14:58:16,034.034 INFO    ] 2026-06-27 14:58:16
[2026-06-27 14:58:16,241.241 INFO    ] 2026-06-27 14:58:16
[2026-06-27 14:58:16,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:58:16,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:58:16,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:58:16,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:58:16,684.684 INFO    ] time= 27/06/2026 14:58:16
[2026-06-27 14:58:16,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:58:16,692.692 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:58:16,783.783 INFO    ] No existing commands found in stream
[2026-06-27 14:58:21,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:58:21,800.800 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-27 14:58:24,885.885 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:58:24,887.887 INFO    ] Checking for system updates...
[2026-06-27 14:58:24,908.908 INFO    ] 200
[2026-06-27 14:58:24,910.910 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:58:24,940.940 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:58:24,941.941 INFO    ] No update needed
[2026-06-27 14:58:24,943.943 INFO    ] Checking for camera pi updates...
[2026-06-27 14:58:24,963.963 INFO    ] 200
[2026-06-27 14:58:24,964.964 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:58:24,987.987 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:58:25,034.034 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:58:25,035.035 INFO    ] No camera update needed
[2026-06-27 14:58:25,036.036 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:58:25,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:58:25,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:58:25,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:58:27,083.083 INFO    ] ================================================
[2026-06-27 14:58:27,098.098 INFO    ] Launching Daemon at Sat Jun 27 14:58:27 IST 2026
[2026-06-27 14:58:27,109.109 INFO    ] ================================================
[2026-06-27 14:58:27,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:58:27
[2026-06-27 14:58:27,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:58:27,918.918 INFO    ] Initializing speech engine...
[2026-06-27 14:58:27,922.922 INFO    ] 2026-06-27 14:58:27
[2026-06-27 14:58:28,127.127 INFO    ] 2026-06-27 14:58:28
[2026-06-27 14:58:28,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:58:28,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:58:28,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:58:28,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:58:28,480.480 INFO    ] time= 27/06/2026 14:58:28
[2026-06-27 14:58:28,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:58:28,571.571 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:58:28,646.646 INFO    ] No existing commands found in stream
[2026-06-27 14:58:33,678.678 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:58:33,681.681 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-27 14:58:38,131.131 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:58:38,133.133 INFO    ] Checking for system updates...
[2026-06-27 14:58:38,154.154 INFO    ] 200
[2026-06-27 14:58:38,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:58:38,189.189 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:58:38,190.190 INFO    ] No update needed
[2026-06-27 14:58:38,192.192 INFO    ] Checking for camera pi updates...
[2026-06-27 14:58:38,211.211 INFO    ] 200
[2026-06-27 14:58:38,212.212 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:58:38,237.237 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:58:38,281.281 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:58:38,282.282 INFO    ] No camera update needed
[2026-06-27 14:58:38,284.284 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:58:38,285.285 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:58:38,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:58:38,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:58:40,330.330 INFO    ] ================================================
[2026-06-27 14:58:40,346.346 INFO    ] Launching Daemon at Sat Jun 27 14:58:40 IST 2026
[2026-06-27 14:58:40,357.357 INFO    ] ================================================
[2026-06-27 14:58:40,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:58:40
[2026-06-27 14:58:41,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:58:41,159.159 INFO    ] Initializing speech engine...
[2026-06-27 14:58:41,163.163 INFO    ] 2026-06-27 14:58:41
[2026-06-27 14:58:41,369.369 INFO    ] 2026-06-27 14:58:41
[2026-06-27 14:58:41,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:58:41,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:58:41,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:58:41,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:58:41,749.749 INFO    ] time= 27/06/2026 14:58:41
[2026-06-27 14:58:41,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:58:41,751.751 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:58:41,900.900 INFO    ] No existing commands found in stream
[2026-06-27 14:58:46,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:58:46,912.912 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-27 14:58:50,837.837 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 14:58:50,839.839 INFO    ] Checking for system updates...
[2026-06-27 14:58:50,859.859 INFO    ] 200
[2026-06-27 14:58:50,861.861 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:58:50,891.891 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:58:50,893.893 INFO    ] No update needed
[2026-06-27 14:58:50,894.894 INFO    ] Checking for camera pi updates...
[2026-06-27 14:58:50,914.914 INFO    ] 200
[2026-06-27 14:58:50,916.916 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:58:50,939.939 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:58:51,081.081 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:58:51,082.082 INFO    ] No camera update needed
[2026-06-27 14:58:51,084.084 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:58:51,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:58:51,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:58:51,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:58:53,130.130 INFO    ] ================================================
[2026-06-27 14:58:53,145.145 INFO    ] Launching Daemon at Sat Jun 27 14:58:53 IST 2026
[2026-06-27 14:58:53,156.156 INFO    ] ================================================
[2026-06-27 14:58:53,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:58:53
[2026-06-27 14:58:53,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:58:53,977.977 INFO    ] Initializing speech engine...
[2026-06-27 14:58:53,981.981 INFO    ] 2026-06-27 14:58:53
[2026-06-27 14:58:54,197.197 INFO    ] 2026-06-27 14:58:54
[2026-06-27 14:58:54,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:58:54,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:58:54,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:58:54,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:58:54,640.640 INFO    ] time= 27/06/2026 14:58:54
[2026-06-27 14:58:54,645.645 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:58:54,647.647 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:58:54,737.737 INFO    ] No existing commands found in stream
[2026-06-27 14:58:59,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:58:59,749.749 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-27 14:59:01,569.569 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:59:01,572.572 INFO    ] Checking for system updates...
[2026-06-27 14:59:01,603.603 INFO    ] 200
[2026-06-27 14:59:01,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:59:01,647.647 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:59:01,649.649 INFO    ] No update needed
[2026-06-27 14:59:01,651.651 INFO    ] Checking for camera pi updates...
[2026-06-27 14:59:01,675.675 INFO    ] 200
[2026-06-27 14:59:01,676.676 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:59:01,709.709 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:59:01,756.756 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:59:01,758.758 INFO    ] No camera update needed
[2026-06-27 14:59:01,760.760 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:59:01,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:59:01,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:59:01,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:59:03,810.810 INFO    ] ================================================
[2026-06-27 14:59:03,826.826 INFO    ] Launching Daemon at Sat Jun 27 14:59:03 IST 2026
[2026-06-27 14:59:03,837.837 INFO    ] ================================================
[2026-06-27 14:59:04,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:59:04
[2026-06-27 14:59:04,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:59:04,716.716 INFO    ] Initializing speech engine...
[2026-06-27 14:59:04,721.721 INFO    ] 2026-06-27 14:59:04
[2026-06-27 14:59:04,931.931 INFO    ] 2026-06-27 14:59:04
[2026-06-27 14:59:04,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:59:05,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:59:05,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:59:05,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:59:05,381.381 INFO    ] time= 27/06/2026 14:59:05
[2026-06-27 14:59:05,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:59:05,388.388 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:59:05,455.455 INFO    ] No existing commands found in stream
[2026-06-27 14:59:10,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:59:10,467.467 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-27 14:59:13,062.062 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 14:59:13,063.063 INFO    ] Checking for system updates...
[2026-06-27 14:59:13,085.085 INFO    ] 200
[2026-06-27 14:59:13,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:59:13,118.118 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:59:13,119.119 INFO    ] No update needed
[2026-06-27 14:59:13,120.120 INFO    ] Checking for camera pi updates...
[2026-06-27 14:59:13,141.141 INFO    ] 200
[2026-06-27 14:59:13,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:59:13,167.167 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:59:13,196.196 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:59:13,197.197 INFO    ] No camera update needed
[2026-06-27 14:59:13,199.199 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:59:13,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:59:13,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:59:13,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:59:15,245.245 INFO    ] ================================================
[2026-06-27 14:59:15,261.261 INFO    ] Launching Daemon at Sat Jun 27 14:59:15 IST 2026
[2026-06-27 14:59:15,272.272 INFO    ] ================================================
[2026-06-27 14:59:15,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:59:15
[2026-06-27 14:59:15,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:59:16,052.052 INFO    ] Initializing speech engine...
[2026-06-27 14:59:16,061.061 INFO    ] 2026-06-27 14:59:16
[2026-06-27 14:59:16,274.274 INFO    ] 2026-06-27 14:59:16
[2026-06-27 14:59:16,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:59:16,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:59:16,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:59:16,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:59:16,694.694 INFO    ] time= 27/06/2026 14:59:16
[2026-06-27 14:59:16,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:59:16,723.723 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:59:16,792.792 INFO    ] No existing commands found in stream
[2026-06-27 14:59:21,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:59:21,806.806 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-27 14:59:24,517.517 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:59:24,519.519 INFO    ] Checking for system updates...
[2026-06-27 14:59:24,539.539 INFO    ] 200
[2026-06-27 14:59:24,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:59:24,574.574 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:59:24,575.575 INFO    ] No update needed
[2026-06-27 14:59:24,576.576 INFO    ] Checking for camera pi updates...
[2026-06-27 14:59:24,596.596 INFO    ] 200
[2026-06-27 14:59:24,597.597 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:59:24,622.622 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:59:24,648.648 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:59:24,649.649 INFO    ] No camera update needed
[2026-06-27 14:59:24,650.650 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:59:24,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:59:24,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:59:24,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:59:26,696.696 INFO    ] ================================================
[2026-06-27 14:59:26,712.712 INFO    ] Launching Daemon at Sat Jun 27 14:59:26 IST 2026
[2026-06-27 14:59:26,723.723 INFO    ] ================================================
[2026-06-27 14:59:27,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:59:27
[2026-06-27 14:59:27,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:59:27,554.554 INFO    ] Initializing speech engine...
[2026-06-27 14:59:27,559.559 INFO    ] 2026-06-27 14:59:27
[2026-06-27 14:59:27,771.771 INFO    ] 2026-06-27 14:59:27
[2026-06-27 14:59:27,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:59:27,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:59:27,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:59:28,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:59:28,212.212 INFO    ] time= 27/06/2026 14:59:28
[2026-06-27 14:59:28,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:59:28,216.216 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:59:28,307.307 INFO    ] No existing commands found in stream
[2026-06-27 14:59:33,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:59:33,324.324 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-27 14:59:36,150.150 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 14:59:36,152.152 INFO    ] Checking for system updates...
[2026-06-27 14:59:36,173.173 INFO    ] 200
[2026-06-27 14:59:36,175.175 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:59:36,206.206 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:59:36,207.207 INFO    ] No update needed
[2026-06-27 14:59:36,208.208 INFO    ] Checking for camera pi updates...
[2026-06-27 14:59:36,229.229 INFO    ] 200
[2026-06-27 14:59:36,230.230 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:59:36,254.254 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:59:36,299.299 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:59:36,300.300 INFO    ] No camera update needed
[2026-06-27 14:59:36,301.301 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:59:36,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:59:36,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:59:36,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:59:38,348.348 INFO    ] ================================================
[2026-06-27 14:59:38,363.363 INFO    ] Launching Daemon at Sat Jun 27 14:59:38 IST 2026
[2026-06-27 14:59:38,374.374 INFO    ] ================================================
[2026-06-27 14:59:38,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:59:38
[2026-06-27 14:59:39,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:59:39,187.187 INFO    ] Initializing speech engine...
[2026-06-27 14:59:39,191.191 INFO    ] 2026-06-27 14:59:39
[2026-06-27 14:59:39,407.407 INFO    ] 2026-06-27 14:59:39
[2026-06-27 14:59:39,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:59:39,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:59:39,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:59:39,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:59:39,850.850 INFO    ] time= 27/06/2026 14:59:39
[2026-06-27 14:59:39,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:59:39,858.858 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:59:39,925.925 INFO    ] No existing commands found in stream
[2026-06-27 14:59:44,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:59:44,937.937 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-27 14:59:46,455.455 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 14:59:46,457.457 INFO    ] Checking for system updates...
[2026-06-27 14:59:46,478.478 INFO    ] 200
[2026-06-27 14:59:46,479.479 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:59:46,512.512 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:59:46,513.513 INFO    ] No update needed
[2026-06-27 14:59:46,514.514 INFO    ] Checking for camera pi updates...
[2026-06-27 14:59:46,534.534 INFO    ] 200
[2026-06-27 14:59:46,535.535 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:59:46,560.560 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:59:46,601.601 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 14:59:46,602.602 INFO    ] No camera update needed
[2026-06-27 14:59:46,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:59:46,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:59:46,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:59:46,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 14:59:48,651.651 INFO    ] ================================================
[2026-06-27 14:59:48,667.667 INFO    ] Launching Daemon at Sat Jun 27 14:59:48 IST 2026
[2026-06-27 14:59:48,678.678 INFO    ] ================================================
[2026-06-27 14:59:49,036.036 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 14:59:49
[2026-06-27 14:59:49,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 14:59:49,479.479 INFO    ] Initializing speech engine...
[2026-06-27 14:59:49,487.487 INFO    ] 2026-06-27 14:59:49
[2026-06-27 14:59:49,702.702 INFO    ] 2026-06-27 14:59:49
[2026-06-27 14:59:49,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 14:59:50,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 14:59:50,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 14:59:50,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 14:59:50,217.217 INFO    ] time= 27/06/2026 14:59:50
[2026-06-27 14:59:50,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 14:59:50,244.244 INFO    ] Checking for existing commands in stream...
[2026-06-27 14:59:50,352.352 INFO    ] No existing commands found in stream
[2026-06-27 14:59:55,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 14:59:55,365.365 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-27 14:59:58,086.086 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 14:59:58,088.088 INFO    ] Checking for system updates...
[2026-06-27 14:59:58,110.110 INFO    ] 200
[2026-06-27 14:59:58,111.111 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:59:58,144.144 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:59:58,146.146 INFO    ] No update needed
[2026-06-27 14:59:58,149.149 INFO    ] Checking for camera pi updates...
[2026-06-27 14:59:58,186.186 INFO    ] 200
[2026-06-27 14:59:58,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 14:59:58,240.240 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 14:59:58,289.289 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 14:59:58,291.291 INFO    ] No camera update needed
[2026-06-27 14:59:58,292.292 INFO    ] Script finished. Safe exiting...
[2026-06-27 14:59:58,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 14:59:58,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 14:59:58,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:00:00,337.337 INFO    ] ================================================
[2026-06-27 15:00:00,352.352 INFO    ] Launching Daemon at Sat Jun 27 15:00:00 IST 2026
[2026-06-27 15:00:00,363.363 INFO    ] ================================================
[2026-06-27 15:00:00,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:00:00
[2026-06-27 15:00:01,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:00:01,166.166 INFO    ] Initializing speech engine...
[2026-06-27 15:00:01,170.170 INFO    ] 2026-06-27 15:00:01
[2026-06-27 15:00:01,369.369 INFO    ] 2026-06-27 15:00:01
[2026-06-27 15:00:01,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:00:01,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:00:01,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:00:01,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:00:01,938.938 INFO    ] time= 27/06/2026 15:00:01
[2026-06-27 15:00:01,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:00:01,942.942 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:00:02,230.230 INFO    ] No existing commands found in stream
[2026-06-27 15:00:07,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:00:07,242.242 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-27 15:00:11,296.296 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:00:11,297.297 INFO    ] Checking for system updates...
[2026-06-27 15:00:11,318.318 INFO    ] 200
[2026-06-27 15:00:11,319.319 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:00:11,350.350 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:00:11,351.351 INFO    ] No update needed
[2026-06-27 15:00:11,352.352 INFO    ] Checking for camera pi updates...
[2026-06-27 15:00:11,374.374 INFO    ] 200
[2026-06-27 15:00:11,376.376 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:00:11,401.401 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:00:11,428.428 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:00:11,429.429 INFO    ] No camera update needed
[2026-06-27 15:00:11,430.430 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:00:11,431.431 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:00:11,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:00:11,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:00:13,477.477 INFO    ] ================================================
[2026-06-27 15:00:13,492.492 INFO    ] Launching Daemon at Sat Jun 27 15:00:13 IST 2026
[2026-06-27 15:00:13,504.504 INFO    ] ================================================
[2026-06-27 15:00:13,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:00:13
[2026-06-27 15:00:14,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:00:14,346.346 INFO    ] Initializing speech engine...
[2026-06-27 15:00:14,352.352 INFO    ] 2026-06-27 15:00:14
[2026-06-27 15:00:14,560.560 INFO    ] 2026-06-27 15:00:14
[2026-06-27 15:00:14,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:00:14,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:00:14,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:00:14,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:00:15,003.003 INFO    ] time= 27/06/2026 15:00:14
[2026-06-27 15:00:15,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:00:15,010.010 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:00:15,077.077 INFO    ] No existing commands found in stream
[2026-06-27 15:00:20,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:00:20,090.090 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-27 15:00:22,228.228 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 15:00:22,230.230 INFO    ] Checking for system updates...
[2026-06-27 15:00:22,252.252 INFO    ] 200
[2026-06-27 15:00:22,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:00:22,288.288 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:00:22,289.289 INFO    ] No update needed
[2026-06-27 15:00:22,291.291 INFO    ] Checking for camera pi updates...
[2026-06-27 15:00:22,312.312 INFO    ] 200
[2026-06-27 15:00:22,313.313 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:00:22,339.339 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:00:22,385.385 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:00:22,386.386 INFO    ] No camera update needed
[2026-06-27 15:00:22,388.388 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:00:22,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:00:22,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:00:22,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:00:24,436.436 INFO    ] ================================================
[2026-06-27 15:00:24,452.452 INFO    ] Launching Daemon at Sat Jun 27 15:00:24 IST 2026
[2026-06-27 15:00:24,463.463 INFO    ] ================================================
[2026-06-27 15:00:24,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:00:24
[2026-06-27 15:00:25,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:00:25,259.259 INFO    ] Initializing speech engine...
[2026-06-27 15:00:25,265.265 INFO    ] 2026-06-27 15:00:25
[2026-06-27 15:00:25,468.468 INFO    ] 2026-06-27 15:00:25
[2026-06-27 15:00:25,497.497 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:00:25,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:00:25,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:00:25,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:00:25,908.908 INFO    ] time= 27/06/2026 15:00:25
[2026-06-27 15:00:25,913.913 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:00:25,915.915 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:00:25,982.982 INFO    ] No existing commands found in stream
[2026-06-27 15:00:30,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:00:30,994.994 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-27 15:00:34,318.318 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:00:34,320.320 INFO    ] Checking for system updates...
[2026-06-27 15:00:34,341.341 INFO    ] 200
[2026-06-27 15:00:34,342.342 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:00:34,375.375 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:00:34,377.377 INFO    ] No update needed
[2026-06-27 15:00:34,378.378 INFO    ] Checking for camera pi updates...
[2026-06-27 15:00:34,399.399 INFO    ] 200
[2026-06-27 15:00:34,400.400 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:00:34,423.423 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:00:34,463.463 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:00:34,465.465 INFO    ] No camera update needed
[2026-06-27 15:00:34,466.466 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:00:34,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:00:34,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:00:34,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:00:36,515.515 INFO    ] ================================================
[2026-06-27 15:00:36,530.530 INFO    ] Launching Daemon at Sat Jun 27 15:00:36 IST 2026
[2026-06-27 15:00:36,541.541 INFO    ] ================================================
[2026-06-27 15:00:36,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:00:36
[2026-06-27 15:00:37,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:00:37,376.376 INFO    ] Initializing speech engine...
[2026-06-27 15:00:37,381.381 INFO    ] 2026-06-27 15:00:37
[2026-06-27 15:00:37,586.586 INFO    ] 2026-06-27 15:00:37
[2026-06-27 15:00:37,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:00:37,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:00:37,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:00:37,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:00:38,027.027 INFO    ] time= 27/06/2026 15:00:38
[2026-06-27 15:00:38,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:00:38,035.035 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:00:38,101.101 INFO    ] No existing commands found in stream
[2026-06-27 15:00:43,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:00:43,113.113 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-27 15:00:47,442.442 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:00:47,444.444 INFO    ] Checking for system updates...
[2026-06-27 15:00:47,466.466 INFO    ] 200
[2026-06-27 15:00:47,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:00:47,498.498 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:00:47,499.499 INFO    ] No update needed
[2026-06-27 15:00:47,500.500 INFO    ] Checking for camera pi updates...
[2026-06-27 15:00:47,522.522 INFO    ] 200
[2026-06-27 15:00:47,523.523 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:00:47,547.547 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:00:47,591.591 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:00:47,593.593 INFO    ] No camera update needed
[2026-06-27 15:00:47,594.594 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:00:47,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:00:47,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:00:47,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:00:49,642.642 INFO    ] ================================================
[2026-06-27 15:00:49,658.658 INFO    ] Launching Daemon at Sat Jun 27 15:00:49 IST 2026
[2026-06-27 15:00:49,669.669 INFO    ] ================================================
[2026-06-27 15:00:50,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:00:50
[2026-06-27 15:00:50,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:00:50,541.541 INFO    ] Initializing speech engine...
[2026-06-27 15:00:50,547.547 INFO    ] 2026-06-27 15:00:50
[2026-06-27 15:00:50,754.754 INFO    ] 2026-06-27 15:00:50
[2026-06-27 15:00:50,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:00:51,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:00:51,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:00:51,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:00:51,263.263 INFO    ] time= 27/06/2026 15:00:51
[2026-06-27 15:00:51,289.289 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:00:51,301.301 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:00:51,417.417 INFO    ] No existing commands found in stream
[2026-06-27 15:00:56,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:00:56,430.430 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-27 15:00:58,067.067 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 15:00:58,069.069 INFO    ] Checking for system updates...
[2026-06-27 15:00:58,090.090 INFO    ] 200
[2026-06-27 15:00:58,092.092 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:00:58,125.125 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:00:58,126.126 INFO    ] No update needed
[2026-06-27 15:00:58,128.128 INFO    ] Checking for camera pi updates...
[2026-06-27 15:00:58,148.148 INFO    ] 200
[2026-06-27 15:00:58,149.149 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:00:58,173.173 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:00:58,315.315 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:00:58,317.317 INFO    ] No camera update needed
[2026-06-27 15:00:58,318.318 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:00:58,319.319 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:00:58,322.322 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:00:58,325.325 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:01:00,363.363 INFO    ] ================================================
[2026-06-27 15:01:00,378.378 INFO    ] Launching Daemon at Sat Jun 27 15:01:00 IST 2026
[2026-06-27 15:01:00,389.389 INFO    ] ================================================
[2026-06-27 15:01:00,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:01:00
[2026-06-27 15:01:01,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:01:01,197.197 INFO    ] Initializing speech engine...
[2026-06-27 15:01:01,201.201 INFO    ] 2026-06-27 15:01:01
[2026-06-27 15:01:01,418.418 INFO    ] 2026-06-27 15:01:01
[2026-06-27 15:01:01,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:01:01,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:01:01,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:01:01,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:01:02,009.009 INFO    ] time= 27/06/2026 15:01:01
[2026-06-27 15:01:02,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:01:02,019.019 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:01:02,091.091 INFO    ] No existing commands found in stream
[2026-06-27 15:01:07,100.100 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:01:07,103.103 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-27 15:01:09,377.377 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:01:09,378.378 INFO    ] Checking for system updates...
[2026-06-27 15:01:09,401.401 INFO    ] 200
[2026-06-27 15:01:09,403.403 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:01:09,435.435 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:01:09,436.436 INFO    ] No update needed
[2026-06-27 15:01:09,437.437 INFO    ] Checking for camera pi updates...
[2026-06-27 15:01:09,458.458 INFO    ] 200
[2026-06-27 15:01:09,460.460 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:01:09,485.485 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:01:09,525.525 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:01:09,526.526 INFO    ] No camera update needed
[2026-06-27 15:01:09,528.528 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:01:09,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:01:09,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:01:09,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:01:11,573.573 INFO    ] ================================================
[2026-06-27 15:01:11,589.589 INFO    ] Launching Daemon at Sat Jun 27 15:01:11 IST 2026
[2026-06-27 15:01:11,600.600 INFO    ] ================================================
[2026-06-27 15:01:11,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:01:11
[2026-06-27 15:01:12,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:01:12,402.402 INFO    ] Initializing speech engine...
[2026-06-27 15:01:12,411.411 INFO    ] 2026-06-27 15:01:12
[2026-06-27 15:01:12,624.624 INFO    ] 2026-06-27 15:01:12
[2026-06-27 15:01:12,652.652 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:01:12,846.846 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:01:12,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:01:12,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:01:13,043.043 INFO    ] time= 27/06/2026 15:01:13
[2026-06-27 15:01:13,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:01:13,072.072 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:01:13,140.140 INFO    ] No existing commands found in stream
[2026-06-27 15:01:18,154.154 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:01:18,156.156 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-27 15:01:19,028.028 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 15:01:19,029.029 INFO    ] Checking for system updates...
[2026-06-27 15:01:19,054.054 INFO    ] 200
[2026-06-27 15:01:19,055.055 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:01:19,085.085 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:01:19,087.087 INFO    ] No update needed
[2026-06-27 15:01:19,088.088 INFO    ] Checking for camera pi updates...
[2026-06-27 15:01:19,112.112 INFO    ] 200
[2026-06-27 15:01:19,113.113 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:01:19,138.138 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:01:19,164.164 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:01:19,166.166 INFO    ] No camera update needed
[2026-06-27 15:01:19,167.167 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:01:19,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:01:19,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:01:19,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:01:21,216.216 INFO    ] ================================================
[2026-06-27 15:01:21,231.231 INFO    ] Launching Daemon at Sat Jun 27 15:01:21 IST 2026
[2026-06-27 15:01:21,242.242 INFO    ] ================================================
[2026-06-27 15:01:21,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:01:21
[2026-06-27 15:01:21,929.929 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:01:22,071.071 INFO    ] Initializing speech engine...
[2026-06-27 15:01:22,076.076 INFO    ] 2026-06-27 15:01:22
[2026-06-27 15:01:22,279.279 INFO    ] 2026-06-27 15:01:22
[2026-06-27 15:01:22,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:01:22,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:01:22,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:01:22,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:01:22,696.696 INFO    ] time= 27/06/2026 15:01:22
[2026-06-27 15:01:22,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:01:22,725.725 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:01:22,791.791 INFO    ] No existing commands found in stream
[2026-06-27 15:01:27,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:01:27,826.826 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-27 15:01:28,366.366 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:01:28,367.367 INFO    ] Checking for system updates...
[2026-06-27 15:01:28,388.388 INFO    ] 200
[2026-06-27 15:01:28,389.389 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:01:28,420.420 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:01:28,421.421 INFO    ] No update needed
[2026-06-27 15:01:28,422.422 INFO    ] Checking for camera pi updates...
[2026-06-27 15:01:28,444.444 INFO    ] 200
[2026-06-27 15:01:28,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:01:28,470.470 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:01:28,516.516 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:01:28,518.518 INFO    ] No camera update needed
[2026-06-27 15:01:28,519.519 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:01:28,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:01:28,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:01:28,526.526 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:01:30,567.567 INFO    ] ================================================
[2026-06-27 15:01:30,582.582 INFO    ] Launching Daemon at Sat Jun 27 15:01:30 IST 2026
[2026-06-27 15:01:30,593.593 INFO    ] ================================================
[2026-06-27 15:01:30,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:01:30
[2026-06-27 15:01:31,308.308 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:01:31,449.449 INFO    ] Initializing speech engine...
[2026-06-27 15:01:31,462.462 INFO    ] 2026-06-27 15:01:31
[2026-06-27 15:01:31,658.658 INFO    ] 2026-06-27 15:01:31
[2026-06-27 15:01:31,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:01:31,863.863 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:01:31,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:01:32,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:01:32,146.146 INFO    ] time= 27/06/2026 15:01:32
[2026-06-27 15:01:32,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:01:32,166.166 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:01:32,267.267 INFO    ] No existing commands found in stream
[2026-06-27 15:01:37,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:01:37,280.280 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-27 15:01:41,258.258 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:01:41,259.259 INFO    ] Checking for system updates...
[2026-06-27 15:01:41,280.280 INFO    ] 200
[2026-06-27 15:01:41,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:01:41,316.316 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:01:41,317.317 INFO    ] No update needed
[2026-06-27 15:01:41,319.319 INFO    ] Checking for camera pi updates...
[2026-06-27 15:01:41,339.339 INFO    ] 200
[2026-06-27 15:01:41,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:01:41,364.364 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:01:41,411.411 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:01:41,412.412 INFO    ] No camera update needed
[2026-06-27 15:01:41,414.414 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:01:41,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:01:41,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:01:41,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:01:43,459.459 INFO    ] ================================================
[2026-06-27 15:01:43,475.475 INFO    ] Launching Daemon at Sat Jun 27 15:01:43 IST 2026
[2026-06-27 15:01:43,486.486 INFO    ] ================================================
[2026-06-27 15:01:43,842.842 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:01:43
[2026-06-27 15:01:44,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:01:44,324.324 INFO    ] Initializing speech engine...
[2026-06-27 15:01:44,337.337 INFO    ] 2026-06-27 15:01:44
[2026-06-27 15:01:44,549.549 INFO    ] 2026-06-27 15:01:44
[2026-06-27 15:01:44,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:01:44,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:01:44,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:01:44,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:01:44,996.996 INFO    ] time= 27/06/2026 15:01:44
[2026-06-27 15:01:45,001.001 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:01:45,003.003 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:01:45,093.093 INFO    ] No existing commands found in stream
[2026-06-27 15:01:50,107.107 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:01:50,110.110 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-27 15:01:53,059.059 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:01:53,061.061 INFO    ] Checking for system updates...
[2026-06-27 15:01:53,083.083 INFO    ] 200
[2026-06-27 15:01:53,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:01:53,119.119 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:01:53,120.120 INFO    ] No update needed
[2026-06-27 15:01:53,122.122 INFO    ] Checking for camera pi updates...
[2026-06-27 15:01:53,141.141 INFO    ] 200
[2026-06-27 15:01:53,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:01:53,167.167 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:01:53,223.223 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:01:53,224.224 INFO    ] No camera update needed
[2026-06-27 15:01:53,226.226 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:01:53,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:01:53,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:01:53,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:01:55,271.271 INFO    ] ================================================
[2026-06-27 15:01:55,286.286 INFO    ] Launching Daemon at Sat Jun 27 15:01:55 IST 2026
[2026-06-27 15:01:55,297.297 INFO    ] ================================================
[2026-06-27 15:01:55,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:01:55
[2026-06-27 15:01:55,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:01:56,102.102 INFO    ] Initializing speech engine...
[2026-06-27 15:01:56,107.107 INFO    ] 2026-06-27 15:01:56
[2026-06-27 15:01:56,310.310 INFO    ] 2026-06-27 15:01:56
[2026-06-27 15:01:56,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:01:56,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:01:56,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:01:56,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:01:56,731.731 INFO    ] time= 27/06/2026 15:01:56
[2026-06-27 15:01:56,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:01:56,759.759 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:01:56,827.827 INFO    ] No existing commands found in stream
[2026-06-27 15:02:01,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:02:01,841.841 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-27 15:02:04,393.393 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 15:02:04,395.395 INFO    ] Checking for system updates...
[2026-06-27 15:02:04,418.418 INFO    ] 200
[2026-06-27 15:02:04,420.420 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:02:04,452.452 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:02:04,454.454 INFO    ] No update needed
[2026-06-27 15:02:04,455.455 INFO    ] Checking for camera pi updates...
[2026-06-27 15:02:04,476.476 INFO    ] 200
[2026-06-27 15:02:04,477.477 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:02:04,502.502 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:02:04,549.549 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:02:04,550.550 INFO    ] No camera update needed
[2026-06-27 15:02:04,552.552 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:02:04,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:02:04,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:02:04,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:02:06,597.597 INFO    ] ================================================
[2026-06-27 15:02:06,612.612 INFO    ] Launching Daemon at Sat Jun 27 15:02:06 IST 2026
[2026-06-27 15:02:06,624.624 INFO    ] ================================================
[2026-06-27 15:02:07,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:02:07
[2026-06-27 15:02:07,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:02:07,498.498 INFO    ] Initializing speech engine...
[2026-06-27 15:02:07,504.504 INFO    ] 2026-06-27 15:02:07
[2026-06-27 15:02:07,712.712 INFO    ] 2026-06-27 15:02:07
[2026-06-27 15:02:07,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:02:07,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:02:07,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:02:08,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:02:08,156.156 INFO    ] time= 27/06/2026 15:02:08
[2026-06-27 15:02:08,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:02:08,163.163 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:02:08,230.230 INFO    ] No existing commands found in stream
[2026-06-27 15:02:13,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:02:13,248.248 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-27 15:02:14,619.619 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:02:14,620.620 INFO    ] Checking for system updates...
[2026-06-27 15:02:14,642.642 INFO    ] 200
[2026-06-27 15:02:14,643.643 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:02:14,677.677 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:02:14,679.679 INFO    ] No update needed
[2026-06-27 15:02:14,680.680 INFO    ] Checking for camera pi updates...
[2026-06-27 15:02:14,702.702 INFO    ] 200
[2026-06-27 15:02:14,704.704 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:02:14,728.728 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:02:14,774.774 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:02:14,776.776 INFO    ] No camera update needed
[2026-06-27 15:02:14,777.777 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:02:14,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:02:14,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:02:14,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:02:16,827.827 INFO    ] ================================================
[2026-06-27 15:02:16,842.842 INFO    ] Launching Daemon at Sat Jun 27 15:02:16 IST 2026
[2026-06-27 15:02:16,852.852 INFO    ] ================================================
[2026-06-27 15:02:17,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:02:17
[2026-06-27 15:02:17,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:02:17,707.707 INFO    ] Initializing speech engine...
[2026-06-27 15:02:17,710.710 INFO    ] 2026-06-27 15:02:17
[2026-06-27 15:02:17,917.917 INFO    ] 2026-06-27 15:02:17
[2026-06-27 15:02:17,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:02:18,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:02:18,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:02:18,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:02:18,362.362 INFO    ] time= 27/06/2026 15:02:18
[2026-06-27 15:02:18,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:02:18,371.371 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:02:18,464.464 INFO    ] No existing commands found in stream
[2026-06-27 15:02:23,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:02:23,480.480 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-27 15:02:27,652.652 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 15:02:27,654.654 INFO    ] Checking for system updates...
[2026-06-27 15:02:27,675.675 INFO    ] 200
[2026-06-27 15:02:27,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:02:27,707.707 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:02:27,709.709 INFO    ] No update needed
[2026-06-27 15:02:27,710.710 INFO    ] Checking for camera pi updates...
[2026-06-27 15:02:27,730.730 INFO    ] 200
[2026-06-27 15:02:27,731.731 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:02:27,757.757 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:02:27,785.785 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:02:27,786.786 INFO    ] No camera update needed
[2026-06-27 15:02:27,787.787 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:02:27,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:02:27,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:02:27,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:02:29,835.835 INFO    ] ================================================
[2026-06-27 15:02:29,850.850 INFO    ] Launching Daemon at Sat Jun 27 15:02:29 IST 2026
[2026-06-27 15:02:29,861.861 INFO    ] ================================================
[2026-06-27 15:02:30,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:02:30
[2026-06-27 15:02:30,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:02:30,642.642 INFO    ] Initializing speech engine...
[2026-06-27 15:02:30,655.655 INFO    ] 2026-06-27 15:02:30
[2026-06-27 15:02:30,866.866 INFO    ] 2026-06-27 15:02:30
[2026-06-27 15:02:30,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:02:31,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:02:31,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:02:31,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:02:31,314.314 INFO    ] time= 27/06/2026 15:02:31
[2026-06-27 15:02:31,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:02:31,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:02:31,388.388 INFO    ] No existing commands found in stream
[2026-06-27 15:02:36,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:02:36,400.400 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-27 15:02:40,468.468 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:02:40,470.470 INFO    ] Checking for system updates...
[2026-06-27 15:02:40,492.492 INFO    ] 200
[2026-06-27 15:02:40,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:02:40,527.527 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:02:40,528.528 INFO    ] No update needed
[2026-06-27 15:02:40,530.530 INFO    ] Checking for camera pi updates...
[2026-06-27 15:02:40,550.550 INFO    ] 200
[2026-06-27 15:02:40,552.552 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:02:40,575.575 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:02:40,617.617 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:02:40,619.619 INFO    ] No camera update needed
[2026-06-27 15:02:40,620.620 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:02:40,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:02:40,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:02:40,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:02:42,666.666 INFO    ] ================================================
[2026-06-27 15:02:42,681.681 INFO    ] Launching Daemon at Sat Jun 27 15:02:42 IST 2026
[2026-06-27 15:02:42,692.692 INFO    ] ================================================
[2026-06-27 15:02:43,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:02:43
[2026-06-27 15:02:43,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:02:43,583.583 INFO    ] Initializing speech engine...
[2026-06-27 15:02:43,593.593 INFO    ] 2026-06-27 15:02:43
[2026-06-27 15:02:43,798.798 INFO    ] 2026-06-27 15:02:43
[2026-06-27 15:02:43,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:02:44,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:02:44,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:02:44,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:02:44,236.236 INFO    ] time= 27/06/2026 15:02:44
[2026-06-27 15:02:44,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:02:44,244.244 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:02:44,335.335 INFO    ] No existing commands found in stream
[2026-06-27 15:02:49,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:02:49,352.352 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-27 15:02:51,632.632 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:02:51,634.634 INFO    ] Checking for system updates...
[2026-06-27 15:02:51,657.657 INFO    ] 200
[2026-06-27 15:02:51,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:02:51,689.689 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:02:51,690.690 INFO    ] No update needed
[2026-06-27 15:02:51,692.692 INFO    ] Checking for camera pi updates...
[2026-06-27 15:02:51,711.711 INFO    ] 200
[2026-06-27 15:02:51,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:02:51,736.736 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:02:51,793.793 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:02:51,795.795 INFO    ] No camera update needed
[2026-06-27 15:02:51,796.796 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:02:51,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:02:51,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:02:51,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:02:53,842.842 INFO    ] ================================================
[2026-06-27 15:02:53,857.857 INFO    ] Launching Daemon at Sat Jun 27 15:02:53 IST 2026
[2026-06-27 15:02:53,869.869 INFO    ] ================================================
[2026-06-27 15:02:54,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:02:54
[2026-06-27 15:02:54,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:02:54,679.679 INFO    ] Initializing speech engine...
[2026-06-27 15:02:54,687.687 INFO    ] 2026-06-27 15:02:54
[2026-06-27 15:02:54,913.913 INFO    ] 2026-06-27 15:02:54
[2026-06-27 15:02:54,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:02:55,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:02:55,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:02:55,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:02:55,393.393 INFO    ] time= 27/06/2026 15:02:55
[2026-06-27 15:02:55,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:02:55,400.400 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:02:55,470.470 INFO    ] No existing commands found in stream
[2026-06-27 15:03:00,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:03:00,485.485 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-27 15:03:01,844.844 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:03:01,847.847 INFO    ] Checking for system updates...
[2026-06-27 15:03:01,886.886 INFO    ] 200
[2026-06-27 15:03:01,888.888 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:03:01,933.933 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:03:01,937.937 INFO    ] No update needed
[2026-06-27 15:03:01,939.939 INFO    ] Checking for camera pi updates...
[2026-06-27 15:03:01,964.964 INFO    ] 200
[2026-06-27 15:03:01,966.966 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:03:01,990.990 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:03:02,124.124 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:03:02,125.125 INFO    ] No camera update needed
[2026-06-27 15:03:02,126.126 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:03:02,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:03:02,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:03:02,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:03:04,174.174 INFO    ] ================================================
[2026-06-27 15:03:04,190.190 INFO    ] Launching Daemon at Sat Jun 27 15:03:04 IST 2026
[2026-06-27 15:03:04,202.202 INFO    ] ================================================
[2026-06-27 15:03:04,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:03:04
[2026-06-27 15:03:04,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:03:05,022.022 INFO    ] Initializing speech engine...
[2026-06-27 15:03:05,027.027 INFO    ] 2026-06-27 15:03:05
[2026-06-27 15:03:05,246.246 INFO    ] 2026-06-27 15:03:05
[2026-06-27 15:03:05,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:03:05,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:03:05,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:03:05,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:03:05,686.686 INFO    ] time= 27/06/2026 15:03:05
[2026-06-27 15:03:05,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:03:05,693.693 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:03:05,783.783 INFO    ] No existing commands found in stream
[2026-06-27 15:03:10,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:03:10,795.795 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-27 15:03:11,282.282 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 15:03:11,283.283 INFO    ] Checking for system updates...
[2026-06-27 15:03:11,307.307 INFO    ] 200
[2026-06-27 15:03:11,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:03:11,339.339 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:03:11,341.341 INFO    ] No update needed
[2026-06-27 15:03:11,342.342 INFO    ] Checking for camera pi updates...
[2026-06-27 15:03:11,362.362 INFO    ] 200
[2026-06-27 15:03:11,363.363 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:03:11,386.386 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:03:11,436.436 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:03:11,437.437 INFO    ] No camera update needed
[2026-06-27 15:03:11,438.438 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:03:11,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:03:11,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:03:11,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:03:13,486.486 INFO    ] ================================================
[2026-06-27 15:03:13,502.502 INFO    ] Launching Daemon at Sat Jun 27 15:03:13 IST 2026
[2026-06-27 15:03:13,513.513 INFO    ] ================================================
[2026-06-27 15:03:13,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:03:13
[2026-06-27 15:03:14,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:03:14,307.307 INFO    ] Initializing speech engine...
[2026-06-27 15:03:14,312.312 INFO    ] 2026-06-27 15:03:14
[2026-06-27 15:03:14,520.520 INFO    ] 2026-06-27 15:03:14
[2026-06-27 15:03:14,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:03:14,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:03:14,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:03:14,942.942 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:03:14,966.966 INFO    ] time= 27/06/2026 15:03:14
[2026-06-27 15:03:14,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:03:14,973.973 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:03:15,040.040 INFO    ] No existing commands found in stream
[2026-06-27 15:03:20,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:03:20,057.057 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-27 15:03:22,137.137 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:03:22,139.139 INFO    ] Checking for system updates...
[2026-06-27 15:03:22,159.159 INFO    ] 200
[2026-06-27 15:03:22,161.161 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:03:22,191.191 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:03:22,192.192 INFO    ] No update needed
[2026-06-27 15:03:22,194.194 INFO    ] Checking for camera pi updates...
[2026-06-27 15:03:22,214.214 INFO    ] 200
[2026-06-27 15:03:22,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:03:22,241.241 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:03:22,271.271 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:03:22,273.273 INFO    ] No camera update needed
[2026-06-27 15:03:22,274.274 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:03:22,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:03:22,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:03:22,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:03:24,320.320 INFO    ] ================================================
[2026-06-27 15:03:24,335.335 INFO    ] Launching Daemon at Sat Jun 27 15:03:24 IST 2026
[2026-06-27 15:03:24,346.346 INFO    ] ================================================
[2026-06-27 15:03:24,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:03:24
[2026-06-27 15:03:25,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:03:25,161.161 INFO    ] Initializing speech engine...
[2026-06-27 15:03:25,172.172 INFO    ] 2026-06-27 15:03:25
[2026-06-27 15:03:25,375.375 INFO    ] 2026-06-27 15:03:25
[2026-06-27 15:03:25,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:03:25,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:03:25,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:03:25,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:03:25,797.797 INFO    ] time= 27/06/2026 15:03:25
[2026-06-27 15:03:25,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:03:25,825.825 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:03:25,890.890 INFO    ] No existing commands found in stream
[2026-06-27 15:03:30,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:03:30,903.903 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-27 15:03:32,256.256 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 15:03:32,257.257 INFO    ] Checking for system updates...
[2026-06-27 15:03:32,278.278 INFO    ] 200
[2026-06-27 15:03:32,280.280 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:03:32,310.310 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:03:32,312.312 INFO    ] No update needed
[2026-06-27 15:03:32,313.313 INFO    ] Checking for camera pi updates...
[2026-06-27 15:03:32,333.333 INFO    ] 200
[2026-06-27 15:03:32,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:03:32,358.358 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:03:32,389.389 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:03:32,391.391 INFO    ] No camera update needed
[2026-06-27 15:03:32,392.392 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:03:32,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:03:32,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:03:32,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:03:34,438.438 INFO    ] ================================================
[2026-06-27 15:03:34,454.454 INFO    ] Launching Daemon at Sat Jun 27 15:03:34 IST 2026
[2026-06-27 15:03:34,465.465 INFO    ] ================================================
[2026-06-27 15:03:34,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:03:34
[2026-06-27 15:03:35,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:03:35,255.255 INFO    ] Initializing speech engine...
[2026-06-27 15:03:35,265.265 INFO    ] 2026-06-27 15:03:35
[2026-06-27 15:03:35,474.474 INFO    ] 2026-06-27 15:03:35
[2026-06-27 15:03:35,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:03:35,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:03:35,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:03:35,898.898 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:03:35,924.924 INFO    ] time= 27/06/2026 15:03:35
[2026-06-27 15:03:35,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:03:35,931.931 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:03:35,998.998 INFO    ] No existing commands found in stream
[2026-06-27 15:03:41,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:03:41,013.013 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-27 15:03:45,411.411 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 15:03:45,412.412 INFO    ] Checking for system updates...
[2026-06-27 15:03:45,434.434 INFO    ] 200
[2026-06-27 15:03:45,436.436 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:03:45,466.466 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:03:45,467.467 INFO    ] No update needed
[2026-06-27 15:03:45,469.469 INFO    ] Checking for camera pi updates...
[2026-06-27 15:03:45,488.488 INFO    ] 200
[2026-06-27 15:03:45,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:03:45,513.513 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:03:45,556.556 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:03:45,558.558 INFO    ] No camera update needed
[2026-06-27 15:03:45,559.559 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:03:45,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:03:45,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:03:45,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:03:47,604.604 INFO    ] ================================================
[2026-06-27 15:03:47,620.620 INFO    ] Launching Daemon at Sat Jun 27 15:03:47 IST 2026
[2026-06-27 15:03:47,631.631 INFO    ] ================================================
[2026-06-27 15:03:48,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:03:47
[2026-06-27 15:03:48,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:03:48,464.464 INFO    ] Initializing speech engine...
[2026-06-27 15:03:48,470.470 INFO    ] 2026-06-27 15:03:48
[2026-06-27 15:03:48,656.656 INFO    ] 2026-06-27 15:03:48
[2026-06-27 15:03:48,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:03:48,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:03:48,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:03:49,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:03:49,140.140 INFO    ] time= 27/06/2026 15:03:49
[2026-06-27 15:03:49,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:03:49,169.169 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:03:49,242.242 INFO    ] No existing commands found in stream
[2026-06-27 15:03:54,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:03:54,254.254 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-27 15:03:55,343.343 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:03:55,344.344 INFO    ] Checking for system updates...
[2026-06-27 15:03:55,366.366 INFO    ] 200
[2026-06-27 15:03:55,368.368 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:03:55,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:03:55,402.402 INFO    ] No update needed
[2026-06-27 15:03:55,403.403 INFO    ] Checking for camera pi updates...
[2026-06-27 15:03:55,424.424 INFO    ] 200
[2026-06-27 15:03:55,426.426 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:03:55,451.451 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:03:55,479.479 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:03:55,481.481 INFO    ] No camera update needed
[2026-06-27 15:03:55,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:03:55,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:03:55,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:03:55,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:03:57,529.529 INFO    ] ================================================
[2026-06-27 15:03:57,545.545 INFO    ] Launching Daemon at Sat Jun 27 15:03:57 IST 2026
[2026-06-27 15:03:57,556.556 INFO    ] ================================================
[2026-06-27 15:03:57,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:03:57
[2026-06-27 15:03:58,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:03:58,346.346 INFO    ] Initializing speech engine...
[2026-06-27 15:03:58,351.351 INFO    ] 2026-06-27 15:03:58
[2026-06-27 15:03:58,554.554 INFO    ] 2026-06-27 15:03:58
[2026-06-27 15:03:58,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:03:58,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:03:58,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:03:58,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:03:58,993.993 INFO    ] time= 27/06/2026 15:03:58
[2026-06-27 15:03:58,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:03:58,999.999 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:03:59,118.118 INFO    ] No existing commands found in stream
[2026-06-27 15:04:04,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:04:04,130.130 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-27 15:04:07,588.588 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 15:04:07,589.589 INFO    ] Checking for system updates...
[2026-06-27 15:04:07,611.611 INFO    ] 200
[2026-06-27 15:04:07,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:04:07,643.643 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:04:07,645.645 INFO    ] No update needed
[2026-06-27 15:04:07,646.646 INFO    ] Checking for camera pi updates...
[2026-06-27 15:04:07,666.666 INFO    ] 200
[2026-06-27 15:04:07,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:04:07,690.690 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:04:07,730.730 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:04:07,732.732 INFO    ] No camera update needed
[2026-06-27 15:04:07,733.733 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:04:07,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:04:07,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:04:07,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:04:09,778.778 INFO    ] ================================================
[2026-06-27 15:04:09,794.794 INFO    ] Launching Daemon at Sat Jun 27 15:04:09 IST 2026
[2026-06-27 15:04:09,805.805 INFO    ] ================================================
[2026-06-27 15:04:10,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:04:10
[2026-06-27 15:04:10,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:04:10,654.654 INFO    ] Initializing speech engine...
[2026-06-27 15:04:10,660.660 INFO    ] 2026-06-27 15:04:10
[2026-06-27 15:04:10,870.870 INFO    ] 2026-06-27 15:04:10
[2026-06-27 15:04:10,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:04:11,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:04:11,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:04:11,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:04:11,318.318 INFO    ] time= 27/06/2026 15:04:11
[2026-06-27 15:04:11,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:04:11,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:04:11,439.439 INFO    ] No existing commands found in stream
[2026-06-27 15:04:16,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:04:16,452.452 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-27 15:04:20,533.533 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 15:04:20,535.535 INFO    ] Checking for system updates...
[2026-06-27 15:04:20,557.557 INFO    ] 200
[2026-06-27 15:04:20,559.559 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:04:20,590.590 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:04:20,591.591 INFO    ] No update needed
[2026-06-27 15:04:20,592.592 INFO    ] Checking for camera pi updates...
[2026-06-27 15:04:20,614.614 INFO    ] 200
[2026-06-27 15:04:20,616.616 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:04:20,641.641 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:04:20,691.691 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:04:20,692.692 INFO    ] No camera update needed
[2026-06-27 15:04:20,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:04:20,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:04:20,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:04:20,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:04:22,740.740 INFO    ] ================================================
[2026-06-27 15:04:22,756.756 INFO    ] Launching Daemon at Sat Jun 27 15:04:22 IST 2026
[2026-06-27 15:04:22,767.767 INFO    ] ================================================
[2026-06-27 15:04:23,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:04:23
[2026-06-27 15:04:23,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:04:23,591.591 INFO    ] Initializing speech engine...
[2026-06-27 15:04:23,596.596 INFO    ] 2026-06-27 15:04:23
[2026-06-27 15:04:23,819.819 INFO    ] 2026-06-27 15:04:23
[2026-06-27 15:04:23,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:04:24,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:04:24,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:04:24,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:04:24,268.268 INFO    ] time= 27/06/2026 15:04:24
[2026-06-27 15:04:24,301.301 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:04:24,319.319 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:04:24,395.395 INFO    ] No existing commands found in stream
[2026-06-27 15:04:29,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:04:29,408.408 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-27 15:04:32,059.059 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 15:04:32,060.060 INFO    ] Checking for system updates...
[2026-06-27 15:04:32,081.081 INFO    ] 200
[2026-06-27 15:04:32,083.083 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:04:32,117.117 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:04:32,118.118 INFO    ] No update needed
[2026-06-27 15:04:32,119.119 INFO    ] Checking for camera pi updates...
[2026-06-27 15:04:32,142.142 INFO    ] 200
[2026-06-27 15:04:32,144.144 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:04:32,170.170 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:04:32,213.213 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:04:32,215.215 INFO    ] No camera update needed
[2026-06-27 15:04:32,216.216 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:04:32,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:04:32,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:04:32,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:04:34,265.265 INFO    ] ================================================
[2026-06-27 15:04:34,280.280 INFO    ] Launching Daemon at Sat Jun 27 15:04:34 IST 2026
[2026-06-27 15:04:34,292.292 INFO    ] ================================================
[2026-06-27 15:04:34,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:04:34
[2026-06-27 15:04:34,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:04:35,109.109 INFO    ] Initializing speech engine...
[2026-06-27 15:04:35,119.119 INFO    ] 2026-06-27 15:04:35
[2026-06-27 15:04:35,326.326 INFO    ] 2026-06-27 15:04:35
[2026-06-27 15:04:35,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:04:35,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:04:35,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:04:35,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:04:35,770.770 INFO    ] time= 27/06/2026 15:04:35
[2026-06-27 15:04:35,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:04:35,777.777 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:04:35,869.869 INFO    ] No existing commands found in stream
[2026-06-27 15:04:40,883.883 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:04:40,886.886 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-27 15:04:44,502.502 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:04:44,503.503 INFO    ] Checking for system updates...
[2026-06-27 15:04:44,528.528 INFO    ] 200
[2026-06-27 15:04:44,529.529 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:04:44,568.568 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:04:44,569.569 INFO    ] No update needed
[2026-06-27 15:04:44,570.570 INFO    ] Checking for camera pi updates...
[2026-06-27 15:04:44,591.591 INFO    ] 200
[2026-06-27 15:04:44,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:04:44,617.617 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:04:44,666.666 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:04:44,668.668 INFO    ] No camera update needed
[2026-06-27 15:04:44,669.669 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:04:44,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:04:44,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:04:44,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:04:46,720.720 INFO    ] ================================================
[2026-06-27 15:04:46,736.736 INFO    ] Launching Daemon at Sat Jun 27 15:04:46 IST 2026
[2026-06-27 15:04:46,746.746 INFO    ] ================================================
[2026-06-27 15:04:47,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:04:47
[2026-06-27 15:04:47,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:04:47,548.548 INFO    ] Initializing speech engine...
[2026-06-27 15:04:47,561.561 INFO    ] 2026-06-27 15:04:47
[2026-06-27 15:04:47,768.768 INFO    ] 2026-06-27 15:04:47
[2026-06-27 15:04:47,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:04:47,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:04:47,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:04:48,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:04:48,190.190 INFO    ] time= 27/06/2026 15:04:48
[2026-06-27 15:04:48,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:04:48,218.218 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:04:48,285.285 INFO    ] No existing commands found in stream
[2026-06-27 15:04:53,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:04:53,297.297 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-27 15:04:55,940.940 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:04:55,941.941 INFO    ] Checking for system updates...
[2026-06-27 15:04:55,962.962 INFO    ] 200
[2026-06-27 15:04:55,964.964 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:04:55,995.995 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:04:55,997.997 INFO    ] No update needed
[2026-06-27 15:04:55,998.998 INFO    ] Checking for camera pi updates...
[2026-06-27 15:04:56,018.018 INFO    ] 200
[2026-06-27 15:04:56,019.019 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:04:56,045.045 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:04:56,092.092 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:04:56,093.093 INFO    ] No camera update needed
[2026-06-27 15:04:56,095.095 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:04:56,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:04:56,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:04:56,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:04:58,140.140 INFO    ] ================================================
[2026-06-27 15:04:58,155.155 INFO    ] Launching Daemon at Sat Jun 27 15:04:58 IST 2026
[2026-06-27 15:04:58,166.166 INFO    ] ================================================
[2026-06-27 15:04:58,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:04:58
[2026-06-27 15:04:58,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:04:58,992.992 INFO    ] Initializing speech engine...
[2026-06-27 15:04:59,001.001 INFO    ] 2026-06-27 15:04:58
[2026-06-27 15:04:59,209.209 INFO    ] 2026-06-27 15:04:59
[2026-06-27 15:04:59,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:04:59,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:04:59,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:04:59,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:04:59,632.632 INFO    ] time= 27/06/2026 15:04:59
[2026-06-27 15:04:59,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:04:59,662.662 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:04:59,753.753 INFO    ] No existing commands found in stream
[2026-06-27 15:05:04,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:05:04,770.770 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-27 15:05:07,142.142 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:05:07,144.144 INFO    ] Checking for system updates...
[2026-06-27 15:05:07,166.166 INFO    ] 200
[2026-06-27 15:05:07,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:05:07,201.201 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:05:07,202.202 INFO    ] No update needed
[2026-06-27 15:05:07,204.204 INFO    ] Checking for camera pi updates...
[2026-06-27 15:05:07,225.225 INFO    ] 200
[2026-06-27 15:05:07,227.227 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:05:07,252.252 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:05:07,391.391 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:05:07,392.392 INFO    ] No camera update needed
[2026-06-27 15:05:07,394.394 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:05:07,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:05:07,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:05:07,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:05:09,441.441 INFO    ] ================================================
[2026-06-27 15:05:09,456.456 INFO    ] Launching Daemon at Sat Jun 27 15:05:09 IST 2026
[2026-06-27 15:05:09,467.467 INFO    ] ================================================
[2026-06-27 15:05:09,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:05:09
[2026-06-27 15:05:10,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:05:10,275.275 INFO    ] Initializing speech engine...
[2026-06-27 15:05:10,280.280 INFO    ] 2026-06-27 15:05:10
[2026-06-27 15:05:10,484.484 INFO    ] 2026-06-27 15:05:10
[2026-06-27 15:05:10,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:05:10,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:05:10,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:05:10,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:05:10,906.906 INFO    ] time= 27/06/2026 15:05:10
[2026-06-27 15:05:10,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:05:10,934.934 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:05:11,024.024 INFO    ] No existing commands found in stream
[2026-06-27 15:05:16,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:05:16,042.042 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-27 15:05:16,556.556 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:05:16,557.557 INFO    ] Checking for system updates...
[2026-06-27 15:05:16,579.579 INFO    ] 200
[2026-06-27 15:05:16,580.580 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:05:16,613.613 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:05:16,615.615 INFO    ] No update needed
[2026-06-27 15:05:16,616.616 INFO    ] Checking for camera pi updates...
[2026-06-27 15:05:16,640.640 INFO    ] 200
[2026-06-27 15:05:16,642.642 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:05:16,668.668 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:05:16,724.724 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:05:16,726.726 INFO    ] No camera update needed
[2026-06-27 15:05:16,727.727 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:05:16,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:05:16,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:05:16,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:05:18,775.775 INFO    ] ================================================
[2026-06-27 15:05:18,791.791 INFO    ] Launching Daemon at Sat Jun 27 15:05:18 IST 2026
[2026-06-27 15:05:18,807.807 INFO    ] ================================================
[2026-06-27 15:05:19,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:05:19
[2026-06-27 15:05:19,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:05:19,699.699 INFO    ] Initializing speech engine...
[2026-06-27 15:05:19,705.705 INFO    ] 2026-06-27 15:05:19
[2026-06-27 15:05:19,911.911 INFO    ] 2026-06-27 15:05:19
[2026-06-27 15:05:19,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:05:20,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:05:20,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:05:20,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:05:20,336.336 INFO    ] time= 27/06/2026 15:05:20
[2026-06-27 15:05:20,360.360 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:05:20,367.367 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:05:20,434.434 INFO    ] No existing commands found in stream
[2026-06-27 15:05:25,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:05:25,449.449 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-27 15:05:28,168.168 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 15:05:28,170.170 INFO    ] Checking for system updates...
[2026-06-27 15:05:28,192.192 INFO    ] 200
[2026-06-27 15:05:28,193.193 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:05:28,225.225 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:05:28,227.227 INFO    ] No update needed
[2026-06-27 15:05:28,228.228 INFO    ] Checking for camera pi updates...
[2026-06-27 15:05:28,250.250 INFO    ] 200
[2026-06-27 15:05:28,251.251 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:05:28,277.277 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:05:28,321.321 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:05:28,322.322 INFO    ] No camera update needed
[2026-06-27 15:05:28,324.324 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:05:28,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:05:28,329.329 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:05:28,332.332 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:05:30,372.372 INFO    ] ================================================
[2026-06-27 15:05:30,387.387 INFO    ] Launching Daemon at Sat Jun 27 15:05:30 IST 2026
[2026-06-27 15:05:30,397.397 INFO    ] ================================================
[2026-06-27 15:05:30,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:05:30
[2026-06-27 15:05:31,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:05:31,178.178 INFO    ] Initializing speech engine...
[2026-06-27 15:05:31,186.186 INFO    ] 2026-06-27 15:05:31
[2026-06-27 15:05:31,394.394 INFO    ] 2026-06-27 15:05:31
[2026-06-27 15:05:31,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:05:31,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:05:31,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:05:31,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:05:31,843.843 INFO    ] time= 27/06/2026 15:05:31
[2026-06-27 15:05:31,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:05:31,860.860 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:05:31,955.955 INFO    ] No existing commands found in stream
[2026-06-27 15:05:36,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:05:36,982.982 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-27 15:05:40,329.329 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 15:05:40,330.330 INFO    ] Checking for system updates...
[2026-06-27 15:05:40,352.352 INFO    ] 200
[2026-06-27 15:05:40,354.354 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:05:40,384.384 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:05:40,386.386 INFO    ] No update needed
[2026-06-27 15:05:40,387.387 INFO    ] Checking for camera pi updates...
[2026-06-27 15:05:40,408.408 INFO    ] 200
[2026-06-27 15:05:40,409.409 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:05:40,432.432 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:05:40,484.484 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:05:40,485.485 INFO    ] No camera update needed
[2026-06-27 15:05:40,487.487 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:05:40,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:05:40,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:05:40,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:05:42,534.534 INFO    ] ================================================
[2026-06-27 15:05:42,549.549 INFO    ] Launching Daemon at Sat Jun 27 15:05:42 IST 2026
[2026-06-27 15:05:42,560.560 INFO    ] ================================================
[2026-06-27 15:05:42,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:05:42
[2026-06-27 15:05:43,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:05:43,358.358 INFO    ] Initializing speech engine...
[2026-06-27 15:05:43,363.363 INFO    ] 2026-06-27 15:05:43
[2026-06-27 15:05:43,555.555 INFO    ] 2026-06-27 15:05:43
[2026-06-27 15:05:43,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:05:43,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:05:43,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:05:43,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:05:43,850.850 INFO    ] time= 27/06/2026 15:05:43
[2026-06-27 15:05:43,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:05:43,903.903 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:05:44,024.024 INFO    ] No existing commands found in stream
[2026-06-27 15:05:49,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:05:49,041.041 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-27 15:05:50,731.731 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:05:50,732.732 INFO    ] Checking for system updates...
[2026-06-27 15:05:50,753.753 INFO    ] 200
[2026-06-27 15:05:50,755.755 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:05:50,785.785 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:05:50,786.786 INFO    ] No update needed
[2026-06-27 15:05:50,788.788 INFO    ] Checking for camera pi updates...
[2026-06-27 15:05:50,807.807 INFO    ] 200
[2026-06-27 15:05:50,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:05:50,832.832 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:05:50,876.876 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:05:50,877.877 INFO    ] No camera update needed
[2026-06-27 15:05:50,878.878 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:05:50,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:05:50,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:05:50,885.885 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:05:52,925.925 INFO    ] ================================================
[2026-06-27 15:05:52,939.939 INFO    ] Launching Daemon at Sat Jun 27 15:05:52 IST 2026
[2026-06-27 15:05:52,950.950 INFO    ] ================================================
[2026-06-27 15:05:53,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:05:53
[2026-06-27 15:05:53,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:05:53,837.837 INFO    ] Initializing speech engine...
[2026-06-27 15:05:53,842.842 INFO    ] 2026-06-27 15:05:53
[2026-06-27 15:05:54,075.075 INFO    ] 2026-06-27 15:05:54
[2026-06-27 15:05:54,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:05:54,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:05:54,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:05:54,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:05:54,540.540 INFO    ] time= 27/06/2026 15:05:54
[2026-06-27 15:05:54,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:05:54,547.547 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:05:54,616.616 INFO    ] No existing commands found in stream
[2026-06-27 15:05:59,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:05:59,634.634 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-27 15:06:00,829.829 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:06:00,831.831 INFO    ] Checking for system updates...
[2026-06-27 15:06:00,853.853 INFO    ] 200
[2026-06-27 15:06:00,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:06:00,888.888 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:06:00,894.894 INFO    ] No update needed
[2026-06-27 15:06:00,895.895 INFO    ] Checking for camera pi updates...
[2026-06-27 15:06:00,916.916 INFO    ] 200
[2026-06-27 15:06:00,917.917 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:06:00,943.943 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:06:00,984.984 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:06:00,986.986 INFO    ] No camera update needed
[2026-06-27 15:06:00,987.987 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:06:00,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:06:00,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:06:00,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:06:03,037.037 INFO    ] ================================================
[2026-06-27 15:06:03,046.046 INFO    ] Launching Daemon at Sat Jun 27 15:06:03 IST 2026
[2026-06-27 15:06:03,052.052 INFO    ] ================================================
[2026-06-27 15:06:03,363.363 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:06:03
[2026-06-27 15:06:03,677.677 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:06:03,811.811 INFO    ] Initializing speech engine...
[2026-06-27 15:06:03,815.815 INFO    ] 2026-06-27 15:06:03
[2026-06-27 15:06:04,046.046 INFO    ] 2026-06-27 15:06:04
[2026-06-27 15:06:04,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:06:04,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:06:04,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:06:04,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:06:04,402.402 INFO    ] time= 27/06/2026 15:06:04
[2026-06-27 15:06:04,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:06:04,480.480 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:06:04,572.572 INFO    ] No existing commands found in stream
[2026-06-27 15:06:09,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:06:09,586.586 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-27 15:06:12,602.602 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 15:06:12,605.605 INFO    ] Checking for system updates...
[2026-06-27 15:06:12,642.642 INFO    ] 200
[2026-06-27 15:06:12,645.645 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:06:12,701.701 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:06:12,703.703 INFO    ] No update needed
[2026-06-27 15:06:12,704.704 INFO    ] Checking for camera pi updates...
[2026-06-27 15:06:12,726.726 INFO    ] 200
[2026-06-27 15:06:12,727.727 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:06:12,756.756 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:06:12,805.805 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:06:12,806.806 INFO    ] No camera update needed
[2026-06-27 15:06:12,808.808 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:06:12,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:06:12,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:06:12,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:06:14,855.855 INFO    ] ================================================
[2026-06-27 15:06:14,871.871 INFO    ] Launching Daemon at Sat Jun 27 15:06:14 IST 2026
[2026-06-27 15:06:14,882.882 INFO    ] ================================================
[2026-06-27 15:06:15,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:06:15
[2026-06-27 15:06:15,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:06:15,696.696 INFO    ] Initializing speech engine...
[2026-06-27 15:06:15,701.701 INFO    ] 2026-06-27 15:06:15
[2026-06-27 15:06:15,907.907 INFO    ] 2026-06-27 15:06:15
[2026-06-27 15:06:15,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:06:16,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:06:16,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:06:16,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:06:16,353.353 INFO    ] time= 27/06/2026 15:06:16
[2026-06-27 15:06:16,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:06:16,360.360 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:06:16,452.452 INFO    ] No existing commands found in stream
[2026-06-27 15:06:21,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:06:21,469.469 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-27 15:06:24,594.594 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 15:06:24,596.596 INFO    ] Checking for system updates...
[2026-06-27 15:06:24,618.618 INFO    ] 200
[2026-06-27 15:06:24,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:06:24,650.650 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:06:24,651.651 INFO    ] No update needed
[2026-06-27 15:06:24,652.652 INFO    ] Checking for camera pi updates...
[2026-06-27 15:06:24,674.674 INFO    ] 200
[2026-06-27 15:06:24,675.675 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:06:24,698.698 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:06:24,753.753 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:06:24,755.755 INFO    ] No camera update needed
[2026-06-27 15:06:24,756.756 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:06:24,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:06:24,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:06:24,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:06:26,804.804 INFO    ] ================================================
[2026-06-27 15:06:26,820.820 INFO    ] Launching Daemon at Sat Jun 27 15:06:26 IST 2026
[2026-06-27 15:06:26,831.831 INFO    ] ================================================
[2026-06-27 15:06:27,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:06:27
[2026-06-27 15:06:27,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:06:27,645.645 INFO    ] Initializing speech engine...
[2026-06-27 15:06:27,653.653 INFO    ] 2026-06-27 15:06:27
[2026-06-27 15:06:27,872.872 INFO    ] 2026-06-27 15:06:27
[2026-06-27 15:06:27,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:06:28,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:06:28,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:06:28,505.505 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:06:28,509.509 INFO    ] time= 27/06/2026 15:06:28
[2026-06-27 15:06:28,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:06:28,517.517 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:06:28,606.606 INFO    ] No existing commands found in stream
[2026-06-27 15:06:33,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:06:33,619.619 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-27 15:06:37,514.514 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:06:37,515.515 INFO    ] Checking for system updates...
[2026-06-27 15:06:37,538.538 INFO    ] 200
[2026-06-27 15:06:37,539.539 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:06:37,573.573 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:06:37,575.575 INFO    ] No update needed
[2026-06-27 15:06:37,576.576 INFO    ] Checking for camera pi updates...
[2026-06-27 15:06:37,596.596 INFO    ] 200
[2026-06-27 15:06:37,597.597 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:06:37,622.622 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:06:37,667.667 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:06:37,669.669 INFO    ] No camera update needed
[2026-06-27 15:06:37,670.670 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:06:37,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:06:37,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:06:37,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:06:39,715.715 INFO    ] ================================================
[2026-06-27 15:06:39,731.731 INFO    ] Launching Daemon at Sat Jun 27 15:06:39 IST 2026
[2026-06-27 15:06:39,741.741 INFO    ] ================================================
[2026-06-27 15:06:40,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:06:40
[2026-06-27 15:06:40,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:06:40,527.527 INFO    ] Initializing speech engine...
[2026-06-27 15:06:40,538.538 INFO    ] 2026-06-27 15:06:40
[2026-06-27 15:06:40,744.744 INFO    ] 2026-06-27 15:06:40
[2026-06-27 15:06:40,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:06:40,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:06:40,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:06:41,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:06:41,169.169 INFO    ] time= 27/06/2026 15:06:41
[2026-06-27 15:06:41,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:06:41,198.198 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:06:41,266.266 INFO    ] No existing commands found in stream
[2026-06-27 15:06:46,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:06:46,278.278 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-27 15:06:48,259.259 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 15:06:48,260.260 INFO    ] Checking for system updates...
[2026-06-27 15:06:48,281.281 INFO    ] 200
[2026-06-27 15:06:48,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:06:48,315.315 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:06:48,317.317 INFO    ] No update needed
[2026-06-27 15:06:48,318.318 INFO    ] Checking for camera pi updates...
[2026-06-27 15:06:48,337.337 INFO    ] 200
[2026-06-27 15:06:48,339.339 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:06:48,364.364 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:06:48,414.414 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:06:48,415.415 INFO    ] No camera update needed
[2026-06-27 15:06:48,416.416 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:06:48,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:06:48,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:06:48,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:06:50,466.466 INFO    ] ================================================
[2026-06-27 15:06:50,481.481 INFO    ] Launching Daemon at Sat Jun 27 15:06:50 IST 2026
[2026-06-27 15:06:50,491.491 INFO    ] ================================================
[2026-06-27 15:06:50,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:06:50
[2026-06-27 15:06:51,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:06:51,276.276 INFO    ] Initializing speech engine...
[2026-06-27 15:06:51,284.284 INFO    ] 2026-06-27 15:06:51
[2026-06-27 15:06:51,499.499 INFO    ] 2026-06-27 15:06:51
[2026-06-27 15:06:51,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:06:51,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:06:51,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:06:51,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:06:51,936.936 INFO    ] time= 27/06/2026 15:06:51
[2026-06-27 15:06:51,941.941 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:06:51,942.942 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:06:52,033.033 INFO    ] No existing commands found in stream
[2026-06-27 15:06:57,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:06:57,050.050 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-27 15:06:59,172.172 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:06:59,174.174 INFO    ] Checking for system updates...
[2026-06-27 15:06:59,195.195 INFO    ] 200
[2026-06-27 15:06:59,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:06:59,230.230 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:06:59,231.231 INFO    ] No update needed
[2026-06-27 15:06:59,232.232 INFO    ] Checking for camera pi updates...
[2026-06-27 15:06:59,252.252 INFO    ] 200
[2026-06-27 15:06:59,253.253 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:06:59,279.279 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:06:59,326.326 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:06:59,327.327 INFO    ] No camera update needed
[2026-06-27 15:06:59,328.328 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:06:59,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:06:59,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:06:59,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:07:01,370.370 INFO    ] ================================================
[2026-06-27 15:07:01,391.391 INFO    ] Launching Daemon at Sat Jun 27 15:07:01 IST 2026
[2026-06-27 15:07:01,408.408 INFO    ] ================================================
[2026-06-27 15:07:01,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:07:01
[2026-06-27 15:07:02,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:07:02,330.330 INFO    ] Initializing speech engine...
[2026-06-27 15:07:02,339.339 INFO    ] 2026-06-27 15:07:02
[2026-06-27 15:07:02,560.560 INFO    ] 2026-06-27 15:07:02
[2026-06-27 15:07:02,588.588 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:07:02,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:07:02,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:07:02,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:07:02,985.985 INFO    ] time= 27/06/2026 15:07:02
[2026-06-27 15:07:03,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:07:03,016.016 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:07:03,084.084 INFO    ] No existing commands found in stream
[2026-06-27 15:07:08,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:07:08,100.100 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-27 15:07:09,938.938 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 15:07:09,941.941 INFO    ] Checking for system updates...
[2026-06-27 15:07:09,981.981 INFO    ] 200
[2026-06-27 15:07:09,984.984 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:07:10,038.038 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:07:10,040.040 INFO    ] No update needed
[2026-06-27 15:07:10,043.043 INFO    ] Checking for camera pi updates...
[2026-06-27 15:07:10,077.077 INFO    ] 200
[2026-06-27 15:07:10,079.079 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:07:10,138.138 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:07:10,285.285 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:07:10,288.288 INFO    ] No camera update needed
[2026-06-27 15:07:10,290.290 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:07:10,292.292 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:07:10,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:07:10,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:07:12,342.342 INFO    ] ================================================
[2026-06-27 15:07:12,358.358 INFO    ] Launching Daemon at Sat Jun 27 15:07:12 IST 2026
[2026-06-27 15:07:12,369.369 INFO    ] ================================================
[2026-06-27 15:07:12,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:07:12
[2026-06-27 15:07:13,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:07:13,188.188 INFO    ] Initializing speech engine...
[2026-06-27 15:07:13,198.198 INFO    ] 2026-06-27 15:07:13
[2026-06-27 15:07:13,401.401 INFO    ] 2026-06-27 15:07:13
[2026-06-27 15:07:13,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:07:13,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:07:13,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:07:13,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:07:13,842.842 INFO    ] time= 27/06/2026 15:07:13
[2026-06-27 15:07:13,847.847 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:07:13,849.849 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:07:13,940.940 INFO    ] No existing commands found in stream
[2026-06-27 15:07:18,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:07:18,951.951 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-27 15:07:20,833.833 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 15:07:20,835.835 INFO    ] Checking for system updates...
[2026-06-27 15:07:20,858.858 INFO    ] 200
[2026-06-27 15:07:20,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:07:20,896.896 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:07:20,898.898 INFO    ] No update needed
[2026-06-27 15:07:20,899.899 INFO    ] Checking for camera pi updates...
[2026-06-27 15:07:20,922.922 INFO    ] 200
[2026-06-27 15:07:20,923.923 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:07:20,951.951 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:07:20,994.994 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:07:20,997.997 INFO    ] No camera update needed
[2026-06-27 15:07:20,999.999 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:07:21,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:07:21,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:07:21,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:07:23,048.048 INFO    ] ================================================
[2026-06-27 15:07:23,063.063 INFO    ] Launching Daemon at Sat Jun 27 15:07:23 IST 2026
[2026-06-27 15:07:23,074.074 INFO    ] ================================================
[2026-06-27 15:07:23,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:07:23
[2026-06-27 15:07:23,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:07:23,951.951 INFO    ] Initializing speech engine...
[2026-06-27 15:07:23,961.961 INFO    ] 2026-06-27 15:07:23
[2026-06-27 15:07:24,165.165 INFO    ] 2026-06-27 15:07:24
[2026-06-27 15:07:24,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:07:24,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:07:24,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:07:24,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:07:24,604.604 INFO    ] time= 27/06/2026 15:07:24
[2026-06-27 15:07:24,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:07:24,610.610 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:07:24,703.703 INFO    ] No existing commands found in stream
[2026-06-27 15:07:29,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:07:29,715.715 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-27 15:07:33,512.512 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:07:33,514.514 INFO    ] Checking for system updates...
[2026-06-27 15:07:33,535.535 INFO    ] 200
[2026-06-27 15:07:33,536.536 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:07:33,567.567 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:07:33,568.568 INFO    ] No update needed
[2026-06-27 15:07:33,569.569 INFO    ] Checking for camera pi updates...
[2026-06-27 15:07:33,591.591 INFO    ] 200
[2026-06-27 15:07:33,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:07:33,635.635 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:07:33,692.692 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:07:33,695.695 INFO    ] No camera update needed
[2026-06-27 15:07:33,698.698 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:07:33,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:07:33,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:07:33,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:07:35,748.748 INFO    ] ================================================
[2026-06-27 15:07:35,764.764 INFO    ] Launching Daemon at Sat Jun 27 15:07:35 IST 2026
[2026-06-27 15:07:35,775.775 INFO    ] ================================================
[2026-06-27 15:07:36,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:07:36
[2026-06-27 15:07:36,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:07:36,556.556 INFO    ] Initializing speech engine...
[2026-06-27 15:07:36,560.560 INFO    ] 2026-06-27 15:07:36
[2026-06-27 15:07:36,778.778 INFO    ] 2026-06-27 15:07:36
[2026-06-27 15:07:36,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:07:36,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:07:37,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:07:37,150.150 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:07:37,203.203 INFO    ] time= 27/06/2026 15:07:37
[2026-06-27 15:07:37,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:07:37,232.232 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:07:37,300.300 INFO    ] No existing commands found in stream
[2026-06-27 15:07:42,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:07:42,317.317 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-27 15:07:42,976.976 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:07:42,978.978 INFO    ] Checking for system updates...
[2026-06-27 15:07:42,999.999 INFO    ] 200
[2026-06-27 15:07:43,000.000 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:07:43,031.031 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:07:43,032.032 INFO    ] No update needed
[2026-06-27 15:07:43,033.033 INFO    ] Checking for camera pi updates...
[2026-06-27 15:07:43,054.054 INFO    ] 200
[2026-06-27 15:07:43,055.055 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:07:43,079.079 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:07:43,107.107 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:07:43,109.109 INFO    ] No camera update needed
[2026-06-27 15:07:43,110.110 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:07:43,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:07:43,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:07:43,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:07:45,156.156 INFO    ] ================================================
[2026-06-27 15:07:45,171.171 INFO    ] Launching Daemon at Sat Jun 27 15:07:45 IST 2026
[2026-06-27 15:07:45,182.182 INFO    ] ================================================
[2026-06-27 15:07:45,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:07:45
[2026-06-27 15:07:45,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:07:45,993.993 INFO    ] Initializing speech engine...
[2026-06-27 15:07:45,998.998 INFO    ] 2026-06-27 15:07:45
[2026-06-27 15:07:46,202.202 INFO    ] 2026-06-27 15:07:46
[2026-06-27 15:07:46,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:07:46,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:07:46,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:07:46,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:07:46,640.640 INFO    ] time= 27/06/2026 15:07:46
[2026-06-27 15:07:46,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:07:46,647.647 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:07:46,712.712 INFO    ] No existing commands found in stream
[2026-06-27 15:07:51,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:07:51,726.726 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-27 15:07:55,324.324 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:07:55,326.326 INFO    ] Checking for system updates...
[2026-06-27 15:07:55,349.349 INFO    ] 200
[2026-06-27 15:07:55,351.351 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:07:55,382.382 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:07:55,384.384 INFO    ] No update needed
[2026-06-27 15:07:55,385.385 INFO    ] Checking for camera pi updates...
[2026-06-27 15:07:55,406.406 INFO    ] 200
[2026-06-27 15:07:55,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:07:55,431.431 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:07:55,461.461 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:07:55,463.463 INFO    ] No camera update needed
[2026-06-27 15:07:55,464.464 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:07:55,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:07:55,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:07:55,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:07:57,511.511 INFO    ] ================================================
[2026-06-27 15:07:57,526.526 INFO    ] Launching Daemon at Sat Jun 27 15:07:57 IST 2026
[2026-06-27 15:07:57,537.537 INFO    ] ================================================
[2026-06-27 15:07:57,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:07:57
[2026-06-27 15:07:58,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:07:58,352.352 INFO    ] Initializing speech engine...
[2026-06-27 15:07:58,357.357 INFO    ] 2026-06-27 15:07:58
[2026-06-27 15:07:58,564.564 INFO    ] 2026-06-27 15:07:58
[2026-06-27 15:07:58,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:07:58,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:07:58,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:07:59,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:07:59,104.104 INFO    ] time= 27/06/2026 15:07:59
[2026-06-27 15:07:59,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:07:59,133.133 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:07:59,237.237 INFO    ] No existing commands found in stream
[2026-06-27 15:08:04,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:08:04,250.250 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-27 15:08:08,236.236 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 15:08:08,237.237 INFO    ] Checking for system updates...
[2026-06-27 15:08:08,259.259 INFO    ] 200
[2026-06-27 15:08:08,261.261 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:08:08,294.294 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:08:08,295.295 INFO    ] No update needed
[2026-06-27 15:08:08,296.296 INFO    ] Checking for camera pi updates...
[2026-06-27 15:08:08,316.316 INFO    ] 200
[2026-06-27 15:08:08,318.318 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:08:08,341.341 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:08:08,376.376 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:08:08,377.377 INFO    ] No camera update needed
[2026-06-27 15:08:08,378.378 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:08:08,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:08:08,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:08:08,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:08:10,423.423 INFO    ] ================================================
[2026-06-27 15:08:10,438.438 INFO    ] Launching Daemon at Sat Jun 27 15:08:10 IST 2026
[2026-06-27 15:08:10,448.448 INFO    ] ================================================
[2026-06-27 15:08:10,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:08:10
[2026-06-27 15:08:11,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:08:11,288.288 INFO    ] Initializing speech engine...
[2026-06-27 15:08:11,293.293 INFO    ] 2026-06-27 15:08:11
[2026-06-27 15:08:11,500.500 INFO    ] 2026-06-27 15:08:11
[2026-06-27 15:08:11,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:08:11,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:08:11,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:08:11,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:08:11,906.906 INFO    ] time= 27/06/2026 15:08:11
[2026-06-27 15:08:11,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:08:11,950.950 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:08:12,017.017 INFO    ] No existing commands found in stream
[2026-06-27 15:08:17,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:08:17,029.029 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-27 15:08:18,818.818 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:08:18,824.824 INFO    ] Checking for system updates...
[2026-06-27 15:08:18,845.845 INFO    ] 200
[2026-06-27 15:08:18,847.847 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:08:18,880.880 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:08:18,881.881 INFO    ] No update needed
[2026-06-27 15:08:18,883.883 INFO    ] Checking for camera pi updates...
[2026-06-27 15:08:18,904.904 INFO    ] 200
[2026-06-27 15:08:18,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:08:18,930.930 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:08:18,976.976 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:08:18,977.977 INFO    ] No camera update needed
[2026-06-27 15:08:18,979.979 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:08:18,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:08:18,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:08:18,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:08:21,025.025 INFO    ] ================================================
[2026-06-27 15:08:21,040.040 INFO    ] Launching Daemon at Sat Jun 27 15:08:21 IST 2026
[2026-06-27 15:08:21,051.051 INFO    ] ================================================
[2026-06-27 15:08:21,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:08:21
[2026-06-27 15:08:21,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:08:21,855.855 INFO    ] Initializing speech engine...
[2026-06-27 15:08:21,860.860 INFO    ] 2026-06-27 15:08:21
[2026-06-27 15:08:22,064.064 INFO    ] 2026-06-27 15:08:22
[2026-06-27 15:08:22,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:08:22,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:08:22,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:08:22,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:08:22,505.505 INFO    ] time= 27/06/2026 15:08:22
[2026-06-27 15:08:22,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:08:22,512.512 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:08:22,604.604 INFO    ] No existing commands found in stream
[2026-06-27 15:08:27,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:08:27,616.616 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-27 15:08:31,291.291 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 15:08:31,292.292 INFO    ] Checking for system updates...
[2026-06-27 15:08:31,314.314 INFO    ] 200
[2026-06-27 15:08:31,315.315 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:08:31,349.349 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:08:31,350.350 INFO    ] No update needed
[2026-06-27 15:08:31,352.352 INFO    ] Checking for camera pi updates...
[2026-06-27 15:08:31,374.374 INFO    ] 200
[2026-06-27 15:08:31,376.376 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:08:31,399.399 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:08:31,436.436 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:08:31,438.438 INFO    ] No camera update needed
[2026-06-27 15:08:31,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:08:31,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:08:31,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:08:31,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:08:33,478.478 INFO    ] ================================================
[2026-06-27 15:08:33,494.494 INFO    ] Launching Daemon at Sat Jun 27 15:08:33 IST 2026
[2026-06-27 15:08:33,504.504 INFO    ] ================================================
[2026-06-27 15:08:33,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:08:33
[2026-06-27 15:08:34,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:08:34,371.371 INFO    ] Initializing speech engine...
[2026-06-27 15:08:34,378.378 INFO    ] 2026-06-27 15:08:34
[2026-06-27 15:08:34,582.582 INFO    ] 2026-06-27 15:08:34
[2026-06-27 15:08:34,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:08:34,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:08:34,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:08:34,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:08:35,004.004 INFO    ] time= 27/06/2026 15:08:34
[2026-06-27 15:08:35,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:08:35,032.032 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:08:35,100.100 INFO    ] No existing commands found in stream
[2026-06-27 15:08:40,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:08:40,118.118 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-27 15:08:42,706.706 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:08:42,708.708 INFO    ] Checking for system updates...
[2026-06-27 15:08:42,731.731 INFO    ] 200
[2026-06-27 15:08:42,732.732 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:08:42,766.766 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:08:42,768.768 INFO    ] No update needed
[2026-06-27 15:08:42,769.769 INFO    ] Checking for camera pi updates...
[2026-06-27 15:08:42,790.790 INFO    ] 200
[2026-06-27 15:08:42,791.791 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:08:42,816.816 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:08:42,844.844 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:08:42,845.845 INFO    ] No camera update needed
[2026-06-27 15:08:42,847.847 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:08:42,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:08:42,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:08:42,855.855 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:08:44,894.894 INFO    ] ================================================
[2026-06-27 15:08:44,910.910 INFO    ] Launching Daemon at Sat Jun 27 15:08:44 IST 2026
[2026-06-27 15:08:44,921.921 INFO    ] ================================================
[2026-06-27 15:08:45,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:08:45
[2026-06-27 15:08:45,673.673 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:08:45,825.825 INFO    ] Initializing speech engine...
[2026-06-27 15:08:45,831.831 INFO    ] 2026-06-27 15:08:45
[2026-06-27 15:08:46,038.038 INFO    ] 2026-06-27 15:08:46
[2026-06-27 15:08:46,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:08:46,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:08:46,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:08:46,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:08:46,553.553 INFO    ] time= 27/06/2026 15:08:46
[2026-06-27 15:08:46,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:08:46,576.576 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:08:46,672.672 INFO    ] No existing commands found in stream
[2026-06-27 15:08:51,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:08:51,687.687 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-27 15:08:53,629.629 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:08:53,631.631 INFO    ] Checking for system updates...
[2026-06-27 15:08:53,652.652 INFO    ] 200
[2026-06-27 15:08:53,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:08:53,685.685 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:08:53,686.686 INFO    ] No update needed
[2026-06-27 15:08:53,688.688 INFO    ] Checking for camera pi updates...
[2026-06-27 15:08:53,709.709 INFO    ] 200
[2026-06-27 15:08:53,711.711 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:08:53,734.734 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:08:53,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:08:53,941.941 INFO    ] No camera update needed
[2026-06-27 15:08:53,942.942 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:08:53,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:08:53,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:08:53,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:08:55,987.987 INFO    ] ================================================
[2026-06-27 15:08:56,003.003 INFO    ] Launching Daemon at Sat Jun 27 15:08:55 IST 2026
[2026-06-27 15:08:56,014.014 INFO    ] ================================================
[2026-06-27 15:08:56,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:08:56
[2026-06-27 15:08:56,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:08:56,825.825 INFO    ] Initializing speech engine...
[2026-06-27 15:08:56,830.830 INFO    ] 2026-06-27 15:08:56
[2026-06-27 15:08:57,061.061 INFO    ] 2026-06-27 15:08:57
[2026-06-27 15:08:57,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:08:57,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:08:57,303.303 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:08:57,461.461 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:08:57,518.518 INFO    ] time= 27/06/2026 15:08:57
[2026-06-27 15:08:57,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:08:57,549.549 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:08:57,620.620 INFO    ] No existing commands found in stream
[2026-06-27 15:09:02,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:09:02,629.629 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-27 15:09:04,789.789 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:09:04,790.790 INFO    ] Checking for system updates...
[2026-06-27 15:09:04,811.811 INFO    ] 200
[2026-06-27 15:09:04,812.812 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:09:04,846.846 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:09:04,847.847 INFO    ] No update needed
[2026-06-27 15:09:04,848.848 INFO    ] Checking for camera pi updates...
[2026-06-27 15:09:04,869.869 INFO    ] 200
[2026-06-27 15:09:04,870.870 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:09:04,894.894 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:09:04,953.953 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:09:04,955.955 INFO    ] No camera update needed
[2026-06-27 15:09:04,956.956 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:09:04,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:09:04,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:09:04,963.963 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:09:07,006.006 INFO    ] ================================================
[2026-06-27 15:09:07,021.021 INFO    ] Launching Daemon at Sat Jun 27 15:09:07 IST 2026
[2026-06-27 15:09:07,033.033 INFO    ] ================================================
[2026-06-27 15:09:07,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:09:07
[2026-06-27 15:09:07,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:09:07,869.869 INFO    ] Initializing speech engine...
[2026-06-27 15:09:07,874.874 INFO    ] 2026-06-27 15:09:07
[2026-06-27 15:09:08,079.079 INFO    ] 2026-06-27 15:09:08
[2026-06-27 15:09:08,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:09:08,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:09:08,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:09:08,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:09:08,519.519 INFO    ] time= 27/06/2026 15:09:08
[2026-06-27 15:09:08,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:09:08,522.522 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:09:08,590.590 INFO    ] No existing commands found in stream
[2026-06-27 15:09:13,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:09:13,601.601 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-27 15:09:16,367.367 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 15:09:16,369.369 INFO    ] Checking for system updates...
[2026-06-27 15:09:16,391.391 INFO    ] 200
[2026-06-27 15:09:16,392.392 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:09:16,422.422 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:09:16,424.424 INFO    ] No update needed
[2026-06-27 15:09:16,425.425 INFO    ] Checking for camera pi updates...
[2026-06-27 15:09:16,445.445 INFO    ] 200
[2026-06-27 15:09:16,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:09:16,470.470 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:09:16,622.622 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:09:16,623.623 INFO    ] No camera update needed
[2026-06-27 15:09:16,625.625 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:09:16,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:09:16,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:09:16,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:09:18,671.671 INFO    ] ================================================
[2026-06-27 15:09:18,687.687 INFO    ] Launching Daemon at Sat Jun 27 15:09:18 IST 2026
[2026-06-27 15:09:18,698.698 INFO    ] ================================================
[2026-06-27 15:09:19,036.036 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:09:19
[2026-06-27 15:09:19,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:09:19,497.497 INFO    ] Initializing speech engine...
[2026-06-27 15:09:19,502.502 INFO    ] 2026-06-27 15:09:19
[2026-06-27 15:09:19,708.708 INFO    ] 2026-06-27 15:09:19
[2026-06-27 15:09:19,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:09:19,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:09:19,923.923 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:09:20,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:09:20,129.129 INFO    ] time= 27/06/2026 15:09:20
[2026-06-27 15:09:20,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:09:20,155.155 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:09:20,227.227 INFO    ] No existing commands found in stream
[2026-06-27 15:09:25,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:09:25,239.239 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-27 15:09:27,752.752 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 15:09:27,753.753 INFO    ] Checking for system updates...
[2026-06-27 15:09:27,775.775 INFO    ] 200
[2026-06-27 15:09:27,776.776 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:09:27,809.809 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:09:27,811.811 INFO    ] No update needed
[2026-06-27 15:09:27,812.812 INFO    ] Checking for camera pi updates...
[2026-06-27 15:09:27,833.833 INFO    ] 200
[2026-06-27 15:09:27,835.835 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:09:27,858.858 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:09:27,896.896 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:09:27,897.897 INFO    ] No camera update needed
[2026-06-27 15:09:27,899.899 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:09:27,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:09:27,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:09:27,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:09:29,941.941 INFO    ] ================================================
[2026-06-27 15:09:29,950.950 INFO    ] Launching Daemon at Sat Jun 27 15:09:29 IST 2026
[2026-06-27 15:09:29,957.957 INFO    ] ================================================
[2026-06-27 15:09:30,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:09:30
[2026-06-27 15:09:30,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:09:30,736.736 INFO    ] Initializing speech engine...
[2026-06-27 15:09:30,741.741 INFO    ] 2026-06-27 15:09:30
[2026-06-27 15:09:30,947.947 INFO    ] 2026-06-27 15:09:30
[2026-06-27 15:09:30,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:09:31,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:09:31,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:09:31,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:09:31,371.371 INFO    ] time= 27/06/2026 15:09:31
[2026-06-27 15:09:31,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:09:31,402.402 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:09:31,529.529 INFO    ] No existing commands found in stream
[2026-06-27 15:09:36,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:09:36,540.540 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-27 15:09:39,868.868 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 15:09:39,869.869 INFO    ] Checking for system updates...
[2026-06-27 15:09:39,892.892 INFO    ] 200
[2026-06-27 15:09:39,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:09:39,927.927 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:09:39,928.928 INFO    ] No update needed
[2026-06-27 15:09:39,929.929 INFO    ] Checking for camera pi updates...
[2026-06-27 15:09:39,949.949 INFO    ] 200
[2026-06-27 15:09:39,950.950 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:09:39,974.974 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:09:40,007.007 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:09:40,008.008 INFO    ] No camera update needed
[2026-06-27 15:09:40,009.009 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:09:40,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:09:40,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:09:40,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:09:42,056.056 INFO    ] ================================================
[2026-06-27 15:09:42,072.072 INFO    ] Launching Daemon at Sat Jun 27 15:09:42 IST 2026
[2026-06-27 15:09:42,082.082 INFO    ] ================================================
[2026-06-27 15:09:42,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:09:42
[2026-06-27 15:09:42,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:09:42,923.923 INFO    ] Initializing speech engine...
[2026-06-27 15:09:42,932.932 INFO    ] 2026-06-27 15:09:42
[2026-06-27 15:09:43,154.154 INFO    ] 2026-06-27 15:09:43
[2026-06-27 15:09:43,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:09:43,387.387 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:09:43,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:09:43,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:09:43,622.622 INFO    ] time= 27/06/2026 15:09:43
[2026-06-27 15:09:43,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:09:43,645.645 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:09:43,720.720 INFO    ] No existing commands found in stream
[2026-06-27 15:09:48,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:09:48,732.732 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-27 15:09:50,906.906 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 15:09:50,907.907 INFO    ] Checking for system updates...
[2026-06-27 15:09:50,928.928 INFO    ] 200
[2026-06-27 15:09:50,930.930 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:09:50,960.960 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:09:50,961.961 INFO    ] No update needed
[2026-06-27 15:09:50,963.963 INFO    ] Checking for camera pi updates...
[2026-06-27 15:09:50,983.983 INFO    ] 200
[2026-06-27 15:09:50,984.984 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:09:51,010.010 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:09:51,060.060 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:09:51,061.061 INFO    ] No camera update needed
[2026-06-27 15:09:51,063.063 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:09:51,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:09:51,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:09:51,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:09:53,109.109 INFO    ] ================================================
[2026-06-27 15:09:53,126.126 INFO    ] Launching Daemon at Sat Jun 27 15:09:53 IST 2026
[2026-06-27 15:09:53,137.137 INFO    ] ================================================
[2026-06-27 15:09:53,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:09:53
[2026-06-27 15:09:53,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:09:53,954.954 INFO    ] Initializing speech engine...
[2026-06-27 15:09:53,958.958 INFO    ] 2026-06-27 15:09:53
[2026-06-27 15:09:54,176.176 INFO    ] 2026-06-27 15:09:54
[2026-06-27 15:09:54,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:09:54,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:09:54,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:09:54,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:09:54,616.616 INFO    ] time= 27/06/2026 15:09:54
[2026-06-27 15:09:54,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:09:54,623.623 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:09:54,690.690 INFO    ] No existing commands found in stream
[2026-06-27 15:09:59,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:09:59,707.707 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-27 15:10:05,453.453 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:10:05,455.455 INFO    ] Checking for system updates...
[2026-06-27 15:10:05,477.477 INFO    ] 200
[2026-06-27 15:10:05,479.479 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:10:05,516.516 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:10:05,518.518 INFO    ] No update needed
[2026-06-27 15:10:05,521.521 INFO    ] Checking for camera pi updates...
[2026-06-27 15:10:05,547.547 INFO    ] 200
[2026-06-27 15:10:05,549.549 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:10:05,581.581 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:10:05,640.640 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:10:05,642.642 INFO    ] No camera update needed
[2026-06-27 15:10:05,643.643 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:10:05,644.644 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:10:05,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:10:05,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:10:07,689.689 INFO    ] ================================================
[2026-06-27 15:10:07,705.705 INFO    ] Launching Daemon at Sat Jun 27 15:10:07 IST 2026
[2026-06-27 15:10:07,716.716 INFO    ] ================================================
[2026-06-27 15:10:08,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:10:08
[2026-06-27 15:10:08,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:10:08,606.606 INFO    ] Initializing speech engine...
[2026-06-27 15:10:08,610.610 INFO    ] 2026-06-27 15:10:08
[2026-06-27 15:10:08,819.819 INFO    ] 2026-06-27 15:10:08
[2026-06-27 15:10:08,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:10:09,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:10:09,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:10:09,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:10:09,244.244 INFO    ] time= 27/06/2026 15:10:09
[2026-06-27 15:10:09,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:10:09,272.272 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:10:09,363.363 INFO    ] No existing commands found in stream
[2026-06-27 15:10:14,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:10:14,380.380 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-27 15:10:17,586.586 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:10:17,588.588 INFO    ] Checking for system updates...
[2026-06-27 15:10:17,609.609 INFO    ] 200
[2026-06-27 15:10:17,610.610 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:10:17,643.643 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:10:17,645.645 INFO    ] No update needed
[2026-06-27 15:10:17,646.646 INFO    ] Checking for camera pi updates...
[2026-06-27 15:10:17,669.669 INFO    ] 200
[2026-06-27 15:10:17,671.671 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:10:17,694.694 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:10:17,746.746 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:10:17,747.747 INFO    ] No camera update needed
[2026-06-27 15:10:17,748.748 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:10:17,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:10:17,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:10:17,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:10:19,795.795 INFO    ] ================================================
[2026-06-27 15:10:19,810.810 INFO    ] Launching Daemon at Sat Jun 27 15:10:19 IST 2026
[2026-06-27 15:10:19,821.821 INFO    ] ================================================
[2026-06-27 15:10:20,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:10:20
[2026-06-27 15:10:20,521.521 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:10:20,679.679 INFO    ] Initializing speech engine...
[2026-06-27 15:10:20,682.682 INFO    ] 2026-06-27 15:10:20
[2026-06-27 15:10:20,894.894 INFO    ] 2026-06-27 15:10:20
[2026-06-27 15:10:20,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:10:21,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:10:21,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:10:21,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:10:21,345.345 INFO    ] time= 27/06/2026 15:10:21
[2026-06-27 15:10:21,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:10:21,352.352 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:10:21,445.445 INFO    ] No existing commands found in stream
[2026-06-27 15:10:26,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:10:26,458.458 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-27 15:10:28,634.634 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:10:28,636.636 INFO    ] Checking for system updates...
[2026-06-27 15:10:28,657.657 INFO    ] 200
[2026-06-27 15:10:28,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:10:28,691.691 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:10:28,693.693 INFO    ] No update needed
[2026-06-27 15:10:28,694.694 INFO    ] Checking for camera pi updates...
[2026-06-27 15:10:28,714.714 INFO    ] 200
[2026-06-27 15:10:28,716.716 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:10:28,742.742 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:10:28,785.785 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:10:28,786.786 INFO    ] No camera update needed
[2026-06-27 15:10:28,788.788 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:10:28,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:10:28,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:10:28,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:10:30,832.832 INFO    ] ================================================
[2026-06-27 15:10:30,848.848 INFO    ] Launching Daemon at Sat Jun 27 15:10:30 IST 2026
[2026-06-27 15:10:30,860.860 INFO    ] ================================================
[2026-06-27 15:10:31,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:10:31
[2026-06-27 15:10:31,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:10:31,707.707 INFO    ] Initializing speech engine...
[2026-06-27 15:10:31,712.712 INFO    ] 2026-06-27 15:10:31
[2026-06-27 15:10:31,926.926 INFO    ] 2026-06-27 15:10:31
[2026-06-27 15:10:31,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:10:32,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:10:32,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:10:32,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:10:32,427.427 INFO    ] time= 27/06/2026 15:10:32
[2026-06-27 15:10:32,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:10:32,475.475 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:10:32,553.553 INFO    ] No existing commands found in stream
[2026-06-27 15:10:37,562.562 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:10:37,565.565 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-27 15:10:38,414.414 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 15:10:38,415.415 INFO    ] Checking for system updates...
[2026-06-27 15:10:38,436.436 INFO    ] 200
[2026-06-27 15:10:38,438.438 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:10:38,470.470 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:10:38,472.472 INFO    ] No update needed
[2026-06-27 15:10:38,473.473 INFO    ] Checking for camera pi updates...
[2026-06-27 15:10:39,517.517 INFO    ] 200
[2026-06-27 15:10:39,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:10:39,567.567 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:10:39,610.610 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:10:39,611.611 INFO    ] No camera update needed
[2026-06-27 15:10:39,612.612 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:10:39,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:10:39,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:10:39,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:10:41,659.659 INFO    ] ================================================
[2026-06-27 15:10:41,674.674 INFO    ] Launching Daemon at Sat Jun 27 15:10:41 IST 2026
[2026-06-27 15:10:41,685.685 INFO    ] ================================================
[2026-06-27 15:10:42,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:10:42
[2026-06-27 15:10:42,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:10:42,576.576 INFO    ] Initializing speech engine...
[2026-06-27 15:10:42,582.582 INFO    ] 2026-06-27 15:10:42
[2026-06-27 15:10:42,793.793 INFO    ] 2026-06-27 15:10:42
[2026-06-27 15:10:42,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:10:43,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:10:43,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:10:43,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:10:43,237.237 INFO    ] time= 27/06/2026 15:10:43
[2026-06-27 15:10:43,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:10:43,245.245 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:10:43,312.312 INFO    ] No existing commands found in stream
[2026-06-27 15:10:48,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:10:48,348.348 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-27 15:10:49,341.341 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 15:10:49,343.343 INFO    ] Checking for system updates...
[2026-06-27 15:10:49,364.364 INFO    ] 200
[2026-06-27 15:10:49,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:10:49,399.399 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:10:49,401.401 INFO    ] No update needed
[2026-06-27 15:10:49,402.402 INFO    ] Checking for camera pi updates...
[2026-06-27 15:10:49,422.422 INFO    ] 200
[2026-06-27 15:10:49,423.423 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:10:49,449.449 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:10:49,491.491 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:10:49,492.492 INFO    ] No camera update needed
[2026-06-27 15:10:49,493.493 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:10:49,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:10:49,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:10:49,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:10:51,538.538 INFO    ] ================================================
[2026-06-27 15:10:51,554.554 INFO    ] Launching Daemon at Sat Jun 27 15:10:51 IST 2026
[2026-06-27 15:10:51,565.565 INFO    ] ================================================
[2026-06-27 15:10:51,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:10:51
[2026-06-27 15:10:52,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:10:52,474.474 INFO    ] Initializing speech engine...
[2026-06-27 15:10:52,478.478 INFO    ] 2026-06-27 15:10:52
[2026-06-27 15:10:52,687.687 INFO    ] 2026-06-27 15:10:52
[2026-06-27 15:10:52,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:10:52,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:10:53,025.025 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:10:53,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:10:53,207.207 INFO    ] time= 27/06/2026 15:10:53
[2026-06-27 15:10:53,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:10:53,239.239 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:10:53,339.339 INFO    ] No existing commands found in stream
[2026-06-27 15:10:58,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:10:58,354.354 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-27 15:10:59,632.632 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 15:10:59,634.634 INFO    ] Checking for system updates...
[2026-06-27 15:10:59,657.657 INFO    ] 200
[2026-06-27 15:10:59,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:10:59,689.689 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:10:59,690.690 INFO    ] No update needed
[2026-06-27 15:10:59,692.692 INFO    ] Checking for camera pi updates...
[2026-06-27 15:10:59,713.713 INFO    ] 200
[2026-06-27 15:10:59,715.715 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:10:59,741.741 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:10:59,782.782 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:10:59,783.783 INFO    ] No camera update needed
[2026-06-27 15:10:59,784.784 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:10:59,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:10:59,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:10:59,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:11:01,829.829 INFO    ] ================================================
[2026-06-27 15:11:01,849.849 INFO    ] Launching Daemon at Sat Jun 27 15:11:01 IST 2026
[2026-06-27 15:11:01,867.867 INFO    ] ================================================
[2026-06-27 15:11:02,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:11:02
[2026-06-27 15:11:02,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:11:02,824.824 INFO    ] Initializing speech engine...
[2026-06-27 15:11:02,831.831 INFO    ] 2026-06-27 15:11:02
[2026-06-27 15:11:03,039.039 INFO    ] 2026-06-27 15:11:03
[2026-06-27 15:11:03,069.069 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:11:03,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:11:03,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:11:03,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:11:03,466.466 INFO    ] time= 27/06/2026 15:11:03
[2026-06-27 15:11:03,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:11:03,495.495 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:11:03,587.587 INFO    ] No existing commands found in stream
[2026-06-27 15:11:08,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:11:08,599.599 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-27 15:11:09,666.666 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:11:09,668.668 INFO    ] Checking for system updates...
[2026-06-27 15:11:09,690.690 INFO    ] 200
[2026-06-27 15:11:09,692.692 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:11:09,722.722 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:11:09,724.724 INFO    ] No update needed
[2026-06-27 15:11:09,725.725 INFO    ] Checking for camera pi updates...
[2026-06-27 15:11:09,745.745 INFO    ] 200
[2026-06-27 15:11:09,746.746 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:11:09,771.771 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:11:09,812.812 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:11:09,814.814 INFO    ] No camera update needed
[2026-06-27 15:11:09,815.815 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:11:09,816.816 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:11:09,819.819 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:11:09,822.822 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:11:11,863.863 INFO    ] ================================================
[2026-06-27 15:11:11,878.878 INFO    ] Launching Daemon at Sat Jun 27 15:11:11 IST 2026
[2026-06-27 15:11:11,889.889 INFO    ] ================================================
[2026-06-27 15:11:12,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:11:12
[2026-06-27 15:11:12,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:11:12,675.675 INFO    ] Initializing speech engine...
[2026-06-27 15:11:12,680.680 INFO    ] 2026-06-27 15:11:12
[2026-06-27 15:11:12,886.886 INFO    ] 2026-06-27 15:11:12
[2026-06-27 15:11:12,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:11:13,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:11:13,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:11:13,305.305 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:11:13,338.338 INFO    ] time= 27/06/2026 15:11:13
[2026-06-27 15:11:13,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:11:13,346.346 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:11:13,414.414 INFO    ] No existing commands found in stream
[2026-06-27 15:11:18,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:11:18,425.425 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-27 15:11:22,377.377 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:11:22,379.379 INFO    ] Checking for system updates...
[2026-06-27 15:11:22,399.399 INFO    ] 200
[2026-06-27 15:11:22,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:11:22,431.431 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:11:22,432.432 INFO    ] No update needed
[2026-06-27 15:11:22,433.433 INFO    ] Checking for camera pi updates...
[2026-06-27 15:11:22,454.454 INFO    ] 200
[2026-06-27 15:11:22,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:11:22,481.481 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:11:22,626.626 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:11:22,628.628 INFO    ] No camera update needed
[2026-06-27 15:11:22,629.629 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:11:22,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:11:22,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:11:22,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:11:24,677.677 INFO    ] ================================================
[2026-06-27 15:11:24,692.692 INFO    ] Launching Daemon at Sat Jun 27 15:11:24 IST 2026
[2026-06-27 15:11:24,703.703 INFO    ] ================================================
[2026-06-27 15:11:25,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:11:25
[2026-06-27 15:11:25,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:11:25,584.584 INFO    ] Initializing speech engine...
[2026-06-27 15:11:25,590.590 INFO    ] 2026-06-27 15:11:25
[2026-06-27 15:11:25,800.800 INFO    ] 2026-06-27 15:11:25
[2026-06-27 15:11:25,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:11:26,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:11:26,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:11:26,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:11:26,221.221 INFO    ] time= 27/06/2026 15:11:26
[2026-06-27 15:11:26,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:11:26,249.249 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:11:26,316.316 INFO    ] No existing commands found in stream
[2026-06-27 15:11:31,340.340 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:11:31,343.343 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-27 15:11:34,531.531 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 15:11:34,532.532 INFO    ] Checking for system updates...
[2026-06-27 15:11:34,555.555 INFO    ] 200
[2026-06-27 15:11:34,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:11:34,590.590 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:11:34,591.591 INFO    ] No update needed
[2026-06-27 15:11:34,592.592 INFO    ] Checking for camera pi updates...
[2026-06-27 15:11:34,612.612 INFO    ] 200
[2026-06-27 15:11:34,613.613 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:11:34,639.639 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:11:34,679.679 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:11:34,680.680 INFO    ] No camera update needed
[2026-06-27 15:11:34,681.681 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:11:34,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:11:34,686.686 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:11:34,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:11:36,729.729 INFO    ] ================================================
[2026-06-27 15:11:36,744.744 INFO    ] Launching Daemon at Sat Jun 27 15:11:36 IST 2026
[2026-06-27 15:11:36,754.754 INFO    ] ================================================
[2026-06-27 15:11:37,101.101 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:11:37
[2026-06-27 15:11:37,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:11:37,559.559 INFO    ] Initializing speech engine...
[2026-06-27 15:11:37,569.569 INFO    ] 2026-06-27 15:11:37
[2026-06-27 15:11:37,775.775 INFO    ] 2026-06-27 15:11:37
[2026-06-27 15:11:37,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:11:37,988.988 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:11:37,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:11:38,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:11:38,195.195 INFO    ] time= 27/06/2026 15:11:38
[2026-06-27 15:11:38,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:11:38,224.224 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:11:38,315.315 INFO    ] No existing commands found in stream
[2026-06-27 15:11:43,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:11:43,327.327 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-27 15:11:45,749.749 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 15:11:45,751.751 INFO    ] Checking for system updates...
[2026-06-27 15:11:45,773.773 INFO    ] 200
[2026-06-27 15:11:45,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:11:45,807.807 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:11:45,808.808 INFO    ] No update needed
[2026-06-27 15:11:45,810.810 INFO    ] Checking for camera pi updates...
[2026-06-27 15:11:45,831.831 INFO    ] 200
[2026-06-27 15:11:45,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:11:45,859.859 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:11:45,901.901 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:11:45,902.902 INFO    ] No camera update needed
[2026-06-27 15:11:45,904.904 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:11:45,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:11:45,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:11:45,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:11:47,956.956 INFO    ] ================================================
[2026-06-27 15:11:47,971.971 INFO    ] Launching Daemon at Sat Jun 27 15:11:47 IST 2026
[2026-06-27 15:11:47,981.981 INFO    ] ================================================
[2026-06-27 15:11:48,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:11:48
[2026-06-27 15:11:48,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:11:48,764.764 INFO    ] Initializing speech engine...
[2026-06-27 15:11:48,767.767 INFO    ] 2026-06-27 15:11:48
[2026-06-27 15:11:48,987.987 INFO    ] 2026-06-27 15:11:48
[2026-06-27 15:11:49,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:11:49,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:11:49,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:11:49,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:11:49,410.410 INFO    ] time= 27/06/2026 15:11:49
[2026-06-27 15:11:49,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:11:49,436.436 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:11:49,508.508 INFO    ] No existing commands found in stream
[2026-06-27 15:11:54,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:11:54,520.520 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-27 15:11:55,220.220 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:11:55,222.222 INFO    ] Checking for system updates...
[2026-06-27 15:11:55,243.243 INFO    ] 200
[2026-06-27 15:11:55,245.245 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:11:55,279.279 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:11:55,280.280 INFO    ] No update needed
[2026-06-27 15:11:55,282.282 INFO    ] Checking for camera pi updates...
[2026-06-27 15:11:55,305.305 INFO    ] 200
[2026-06-27 15:11:55,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:11:55,335.335 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:11:55,366.366 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:11:55,367.367 INFO    ] No camera update needed
[2026-06-27 15:11:55,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:11:55,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:11:55,373.373 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:11:55,376.376 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:11:57,414.414 INFO    ] ================================================
[2026-06-27 15:11:57,429.429 INFO    ] Launching Daemon at Sat Jun 27 15:11:57 IST 2026
[2026-06-27 15:11:57,440.440 INFO    ] ================================================
[2026-06-27 15:11:57,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:11:57
[2026-06-27 15:11:58,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:11:58,225.225 INFO    ] Initializing speech engine...
[2026-06-27 15:11:58,230.230 INFO    ] 2026-06-27 15:11:58
[2026-06-27 15:11:58,436.436 INFO    ] 2026-06-27 15:11:58
[2026-06-27 15:11:58,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:11:58,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:11:58,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:11:58,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:11:58,862.862 INFO    ] time= 27/06/2026 15:11:58
[2026-06-27 15:11:58,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:11:58,892.892 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:11:58,961.961 INFO    ] No existing commands found in stream
[2026-06-27 15:12:03,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:12:03,970.970 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-27 15:12:07,537.537 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 15:12:07,538.538 INFO    ] Checking for system updates...
[2026-06-27 15:12:07,559.559 INFO    ] 200
[2026-06-27 15:12:07,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:12:07,591.591 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:12:07,592.592 INFO    ] No update needed
[2026-06-27 15:12:07,593.593 INFO    ] Checking for camera pi updates...
[2026-06-27 15:12:07,614.614 INFO    ] 200
[2026-06-27 15:12:07,616.616 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:12:07,639.639 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:12:07,680.680 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:12:07,681.681 INFO    ] No camera update needed
[2026-06-27 15:12:07,682.682 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:12:07,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:12:07,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:12:07,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:12:09,729.729 INFO    ] ================================================
[2026-06-27 15:12:09,744.744 INFO    ] Launching Daemon at Sat Jun 27 15:12:09 IST 2026
[2026-06-27 15:12:09,755.755 INFO    ] ================================================
[2026-06-27 15:12:10,117.117 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:12:10
[2026-06-27 15:12:10,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:12:10,610.610 INFO    ] Initializing speech engine...
[2026-06-27 15:12:10,616.616 INFO    ] 2026-06-27 15:12:10
[2026-06-27 15:12:10,825.825 INFO    ] 2026-06-27 15:12:10
[2026-06-27 15:12:10,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:12:11,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:12:11,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:12:11,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:12:11,269.269 INFO    ] time= 27/06/2026 15:12:11
[2026-06-27 15:12:11,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:12:11,272.272 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:12:11,389.389 INFO    ] No existing commands found in stream
[2026-06-27 15:12:16,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:12:16,406.406 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-27 15:12:16,872.872 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:12:16,874.874 INFO    ] Checking for system updates...
[2026-06-27 15:12:16,895.895 INFO    ] 200
[2026-06-27 15:12:16,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:12:16,927.927 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:12:16,928.928 INFO    ] No update needed
[2026-06-27 15:12:16,930.930 INFO    ] Checking for camera pi updates...
[2026-06-27 15:12:16,949.949 INFO    ] 200
[2026-06-27 15:12:16,951.951 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:12:16,978.978 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:12:17,025.025 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:12:17,026.026 INFO    ] No camera update needed
[2026-06-27 15:12:17,028.028 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:12:17,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:12:17,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:12:17,036.036 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:12:19,075.075 INFO    ] ================================================
[2026-06-27 15:12:19,091.091 INFO    ] Launching Daemon at Sat Jun 27 15:12:19 IST 2026
[2026-06-27 15:12:19,102.102 INFO    ] ================================================
[2026-06-27 15:12:19,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:12:19
[2026-06-27 15:12:19,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:12:19,983.983 INFO    ] Initializing speech engine...
[2026-06-27 15:12:19,987.987 INFO    ] 2026-06-27 15:12:19
[2026-06-27 15:12:20,192.192 INFO    ] 2026-06-27 15:12:20
[2026-06-27 15:12:20,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:12:20,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:12:20,409.409 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:12:20,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:12:20,634.634 INFO    ] time= 27/06/2026 15:12:20
[2026-06-27 15:12:20,640.640 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:12:20,641.641 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:12:20,708.708 INFO    ] No existing commands found in stream
[2026-06-27 15:12:25,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:12:25,727.727 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-27 15:12:29,511.511 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:12:29,513.513 INFO    ] Checking for system updates...
[2026-06-27 15:12:29,534.534 INFO    ] 200
[2026-06-27 15:12:29,536.536 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:12:29,567.567 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:12:29,569.569 INFO    ] No update needed
[2026-06-27 15:12:29,570.570 INFO    ] Checking for camera pi updates...
[2026-06-27 15:12:29,591.591 INFO    ] 200
[2026-06-27 15:12:29,592.592 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:12:29,618.618 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:12:29,669.669 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:12:29,670.670 INFO    ] No camera update needed
[2026-06-27 15:12:29,671.671 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:12:29,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:12:29,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:12:29,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:12:31,716.716 INFO    ] ================================================
[2026-06-27 15:12:31,732.732 INFO    ] Launching Daemon at Sat Jun 27 15:12:31 IST 2026
[2026-06-27 15:12:31,744.744 INFO    ] ================================================
[2026-06-27 15:12:32,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:12:32
[2026-06-27 15:12:32,538.538 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:12:32,718.718 INFO    ] Initializing speech engine...
[2026-06-27 15:12:32,723.723 INFO    ] 2026-06-27 15:12:32
[2026-06-27 15:12:32,931.931 INFO    ] 2026-06-27 15:12:32
[2026-06-27 15:12:32,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:12:33,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:12:33,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:12:33,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:12:33,385.385 INFO    ] time= 27/06/2026 15:12:33
[2026-06-27 15:12:33,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:12:33,389.389 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:12:33,482.482 INFO    ] No existing commands found in stream
[2026-06-27 15:12:38,506.506 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:12:38,510.510 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-27 15:12:40,916.916 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 15:12:40,918.918 INFO    ] Checking for system updates...
[2026-06-27 15:12:40,939.939 INFO    ] 200
[2026-06-27 15:12:40,941.941 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:12:40,974.974 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:12:40,975.975 INFO    ] No update needed
[2026-06-27 15:12:40,977.977 INFO    ] Checking for camera pi updates...
[2026-06-27 15:12:40,998.998 INFO    ] 200
[2026-06-27 15:12:40,999.999 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:12:41,022.022 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:12:41,076.076 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:12:41,077.077 INFO    ] No camera update needed
[2026-06-27 15:12:41,079.079 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:12:41,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:12:41,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:12:41,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:12:43,126.126 INFO    ] ================================================
[2026-06-27 15:12:43,142.142 INFO    ] Launching Daemon at Sat Jun 27 15:12:43 IST 2026
[2026-06-27 15:12:43,152.152 INFO    ] ================================================
[2026-06-27 15:12:43,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:12:43
[2026-06-27 15:12:43,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:12:43,960.960 INFO    ] Initializing speech engine...
[2026-06-27 15:12:43,964.964 INFO    ] 2026-06-27 15:12:43
[2026-06-27 15:12:44,189.189 INFO    ] 2026-06-27 15:12:44
[2026-06-27 15:12:44,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:12:44,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:12:44,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:12:44,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:12:44,678.678 INFO    ] time= 27/06/2026 15:12:44
[2026-06-27 15:12:44,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:12:44,687.687 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:12:44,757.757 INFO    ] No existing commands found in stream
[2026-06-27 15:12:49,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:12:49,771.771 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-27 15:12:50,588.588 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 15:12:50,590.590 INFO    ] Checking for system updates...
[2026-06-27 15:12:50,611.611 INFO    ] 200
[2026-06-27 15:12:50,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:12:50,649.649 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:12:50,650.650 INFO    ] No update needed
[2026-06-27 15:12:50,652.652 INFO    ] Checking for camera pi updates...
[2026-06-27 15:12:50,672.672 INFO    ] 200
[2026-06-27 15:12:50,673.673 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:12:50,697.697 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:12:50,740.740 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:12:50,742.742 INFO    ] No camera update needed
[2026-06-27 15:12:50,743.743 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:12:50,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:12:50,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:12:50,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:12:52,789.789 INFO    ] ================================================
[2026-06-27 15:12:52,804.804 INFO    ] Launching Daemon at Sat Jun 27 15:12:52 IST 2026
[2026-06-27 15:12:52,815.815 INFO    ] ================================================
[2026-06-27 15:12:53,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:12:53
[2026-06-27 15:12:53,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:12:53,604.604 INFO    ] Initializing speech engine...
[2026-06-27 15:12:53,617.617 INFO    ] 2026-06-27 15:12:53
[2026-06-27 15:12:53,840.840 INFO    ] 2026-06-27 15:12:53
[2026-06-27 15:12:53,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:12:54,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:12:54,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:12:54,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:12:54,323.323 INFO    ] time= 27/06/2026 15:12:54
[2026-06-27 15:12:54,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:12:54,332.332 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:12:54,405.405 INFO    ] No existing commands found in stream
[2026-06-27 15:12:59,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:12:59,437.437 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-27 15:13:03,712.712 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:13:03,714.714 INFO    ] Checking for system updates...
[2026-06-27 15:13:03,735.735 INFO    ] 200
[2026-06-27 15:13:03,736.736 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:13:03,769.769 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:13:03,770.770 INFO    ] No update needed
[2026-06-27 15:13:03,772.772 INFO    ] Checking for camera pi updates...
[2026-06-27 15:13:03,791.791 INFO    ] 200
[2026-06-27 15:13:03,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:13:03,820.820 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:13:03,865.865 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:13:03,866.866 INFO    ] No camera update needed
[2026-06-27 15:13:03,868.868 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:13:03,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:13:03,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:13:03,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:13:05,915.915 INFO    ] ================================================
[2026-06-27 15:13:05,930.930 INFO    ] Launching Daemon at Sat Jun 27 15:13:05 IST 2026
[2026-06-27 15:13:05,941.941 INFO    ] ================================================
[2026-06-27 15:13:06,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:13:06
[2026-06-27 15:13:06,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:13:06,719.719 INFO    ] Initializing speech engine...
[2026-06-27 15:13:06,731.731 INFO    ] 2026-06-27 15:13:06
[2026-06-27 15:13:06,938.938 INFO    ] 2026-06-27 15:13:06
[2026-06-27 15:13:06,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:13:07,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:13:07,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:13:07,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:13:07,374.374 INFO    ] time= 27/06/2026 15:13:07
[2026-06-27 15:13:07,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:13:07,381.381 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:13:07,447.447 INFO    ] No existing commands found in stream
[2026-06-27 15:13:12,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:13:12,459.459 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-27 15:13:13,187.187 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:13:13,189.189 INFO    ] Checking for system updates...
[2026-06-27 15:13:13,210.210 INFO    ] 200
[2026-06-27 15:13:13,212.212 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:13:13,242.242 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:13:13,244.244 INFO    ] No update needed
[2026-06-27 15:13:13,245.245 INFO    ] Checking for camera pi updates...
[2026-06-27 15:13:13,265.265 INFO    ] 200
[2026-06-27 15:13:13,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:13:13,292.292 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:13:13,340.340 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:13:13,341.341 INFO    ] No camera update needed
[2026-06-27 15:13:13,342.342 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:13:13,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:13:13,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:13:13,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:13:15,390.390 INFO    ] ================================================
[2026-06-27 15:13:15,406.406 INFO    ] Launching Daemon at Sat Jun 27 15:13:15 IST 2026
[2026-06-27 15:13:15,417.417 INFO    ] ================================================
[2026-06-27 15:13:15,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:13:15
[2026-06-27 15:13:16,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:13:16,194.194 INFO    ] Initializing speech engine...
[2026-06-27 15:13:16,199.199 INFO    ] 2026-06-27 15:13:16
[2026-06-27 15:13:16,404.404 INFO    ] 2026-06-27 15:13:16
[2026-06-27 15:13:16,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:13:16,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:13:16,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:13:16,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:13:16,915.915 INFO    ] time= 27/06/2026 15:13:16
[2026-06-27 15:13:16,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:13:16,942.942 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:13:17,043.043 INFO    ] No existing commands found in stream
[2026-06-27 15:13:22,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:13:22,055.055 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-27 15:13:23,690.690 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 15:13:23,692.692 INFO    ] Checking for system updates...
[2026-06-27 15:13:23,712.712 INFO    ] 200
[2026-06-27 15:13:23,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:13:23,747.747 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:13:23,748.748 INFO    ] No update needed
[2026-06-27 15:13:23,750.750 INFO    ] Checking for camera pi updates...
[2026-06-27 15:13:23,771.771 INFO    ] 200
[2026-06-27 15:13:23,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:13:23,795.795 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:13:23,836.836 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:13:23,837.837 INFO    ] No camera update needed
[2026-06-27 15:13:23,839.839 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:13:23,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:13:23,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:13:23,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:13:25,886.886 INFO    ] ================================================
[2026-06-27 15:13:25,902.902 INFO    ] Launching Daemon at Sat Jun 27 15:13:25 IST 2026
[2026-06-27 15:13:25,913.913 INFO    ] ================================================
[2026-06-27 15:13:26,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:13:26
[2026-06-27 15:13:26,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:13:26,811.811 INFO    ] Initializing speech engine...
[2026-06-27 15:13:26,816.816 INFO    ] 2026-06-27 15:13:26
[2026-06-27 15:13:27,014.014 INFO    ] 2026-06-27 15:13:27
[2026-06-27 15:13:27,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:13:27,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:13:27,241.241 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:13:27,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:13:27,437.437 INFO    ] time= 27/06/2026 15:13:27
[2026-06-27 15:13:27,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:13:27,465.465 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:13:27,532.532 INFO    ] No existing commands found in stream
[2026-06-27 15:13:32,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:13:32,544.544 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-27 15:13:33,642.642 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 15:13:33,644.644 INFO    ] Checking for system updates...
[2026-06-27 15:13:33,667.667 INFO    ] 200
[2026-06-27 15:13:33,668.668 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:13:33,702.702 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:13:33,703.703 INFO    ] No update needed
[2026-06-27 15:13:33,705.705 INFO    ] Checking for camera pi updates...
[2026-06-27 15:13:33,726.726 INFO    ] 200
[2026-06-27 15:13:33,727.727 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:13:33,753.753 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:13:33,796.796 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:13:33,797.797 INFO    ] No camera update needed
[2026-06-27 15:13:33,799.799 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:13:33,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:13:33,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:13:33,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:13:35,846.846 INFO    ] ================================================
[2026-06-27 15:13:35,861.861 INFO    ] Launching Daemon at Sat Jun 27 15:13:35 IST 2026
[2026-06-27 15:13:35,873.873 INFO    ] ================================================
[2026-06-27 15:13:36,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:13:36
[2026-06-27 15:13:36,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:13:36,740.740 INFO    ] Initializing speech engine...
[2026-06-27 15:13:36,745.745 INFO    ] 2026-06-27 15:13:36
[2026-06-27 15:13:36,952.952 INFO    ] 2026-06-27 15:13:36
[2026-06-27 15:13:36,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:13:37,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:13:37,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:13:37,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:13:37,370.370 INFO    ] time= 27/06/2026 15:13:37
[2026-06-27 15:13:37,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:13:37,399.399 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:13:37,491.491 INFO    ] No existing commands found in stream
[2026-06-27 15:13:42,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:13:42,502.502 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-27 15:13:44,361.361 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 15:13:44,363.363 INFO    ] Checking for system updates...
[2026-06-27 15:13:44,383.383 INFO    ] 200
[2026-06-27 15:13:44,385.385 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:13:44,415.415 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:13:44,417.417 INFO    ] No update needed
[2026-06-27 15:13:44,418.418 INFO    ] Checking for camera pi updates...
[2026-06-27 15:13:44,438.438 INFO    ] 200
[2026-06-27 15:13:44,439.439 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:13:44,463.463 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:13:44,509.509 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:13:44,511.511 INFO    ] No camera update needed
[2026-06-27 15:13:44,512.512 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:13:44,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:13:44,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:13:44,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:13:46,557.557 INFO    ] ================================================
[2026-06-27 15:13:46,572.572 INFO    ] Launching Daemon at Sat Jun 27 15:13:46 IST 2026
[2026-06-27 15:13:46,583.583 INFO    ] ================================================
[2026-06-27 15:13:46,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:13:46
[2026-06-27 15:13:47,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:13:47,373.373 INFO    ] Initializing speech engine...
[2026-06-27 15:13:47,382.382 INFO    ] 2026-06-27 15:13:47
[2026-06-27 15:13:47,597.597 INFO    ] 2026-06-27 15:13:47
[2026-06-27 15:13:47,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:13:47,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:13:47,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:13:48,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:13:48,112.112 INFO    ] time= 27/06/2026 15:13:48
[2026-06-27 15:13:48,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:13:48,139.139 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:13:48,236.236 INFO    ] No existing commands found in stream
[2026-06-27 15:13:53,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:13:53,249.249 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-27 15:13:57,496.496 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 15:13:57,497.497 INFO    ] Checking for system updates...
[2026-06-27 15:13:57,519.519 INFO    ] 200
[2026-06-27 15:13:57,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:13:57,553.553 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:13:57,555.555 INFO    ] No update needed
[2026-06-27 15:13:57,556.556 INFO    ] Checking for camera pi updates...
[2026-06-27 15:13:57,575.575 INFO    ] 200
[2026-06-27 15:13:57,577.577 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:13:57,600.600 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:13:57,650.650 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:13:57,651.651 INFO    ] No camera update needed
[2026-06-27 15:13:57,652.652 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:13:57,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:13:57,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:13:57,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:13:59,698.698 INFO    ] ================================================
[2026-06-27 15:13:59,712.712 INFO    ] Launching Daemon at Sat Jun 27 15:13:59 IST 2026
[2026-06-27 15:13:59,723.723 INFO    ] ================================================
[2026-06-27 15:14:00,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:14:00
[2026-06-27 15:14:00,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:14:00,608.608 INFO    ] Initializing speech engine...
[2026-06-27 15:14:00,613.613 INFO    ] 2026-06-27 15:14:00
[2026-06-27 15:14:00,818.818 INFO    ] 2026-06-27 15:14:00
[2026-06-27 15:14:00,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:14:01,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:14:01,033.033 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:14:01,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:14:01,259.259 INFO    ] time= 27/06/2026 15:14:01
[2026-06-27 15:14:01,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:14:01,262.262 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:14:01,329.329 INFO    ] No existing commands found in stream
[2026-06-27 15:14:06,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:14:06,340.340 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-27 15:14:07,177.177 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:14:07,178.178 INFO    ] Checking for system updates...
[2026-06-27 15:14:07,199.199 INFO    ] 200
[2026-06-27 15:14:07,200.200 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:14:07,232.232 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:14:07,234.234 INFO    ] No update needed
[2026-06-27 15:14:07,235.235 INFO    ] Checking for camera pi updates...
[2026-06-27 15:14:07,255.255 INFO    ] 200
[2026-06-27 15:14:07,256.256 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:14:07,281.281 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:14:07,326.326 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:14:07,327.327 INFO    ] No camera update needed
[2026-06-27 15:14:07,328.328 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:14:07,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:14:07,333.333 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:14:07,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:14:09,374.374 INFO    ] ================================================
[2026-06-27 15:14:09,389.389 INFO    ] Launching Daemon at Sat Jun 27 15:14:09 IST 2026
[2026-06-27 15:14:09,400.400 INFO    ] ================================================
[2026-06-27 15:14:09,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:14:09
[2026-06-27 15:14:10,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:14:10,197.197 INFO    ] Initializing speech engine...
[2026-06-27 15:14:10,209.209 INFO    ] 2026-06-27 15:14:10
[2026-06-27 15:14:10,417.417 INFO    ] 2026-06-27 15:14:10
[2026-06-27 15:14:10,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:14:10,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:14:10,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:14:10,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:14:10,859.859 INFO    ] time= 27/06/2026 15:14:10
[2026-06-27 15:14:10,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:14:10,865.865 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:14:10,956.956 INFO    ] No existing commands found in stream
[2026-06-27 15:14:15,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:14:15,968.968 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-27 15:14:19,918.918 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:14:19,919.919 INFO    ] Checking for system updates...
[2026-06-27 15:14:19,940.940 INFO    ] 200
[2026-06-27 15:14:19,942.942 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:14:19,973.973 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:14:19,974.974 INFO    ] No update needed
[2026-06-27 15:14:19,975.975 INFO    ] Checking for camera pi updates...
[2026-06-27 15:14:19,996.996 INFO    ] 200
[2026-06-27 15:14:19,998.998 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:14:20,023.023 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:14:20,070.070 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:14:20,071.071 INFO    ] No camera update needed
[2026-06-27 15:14:20,072.072 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:14:20,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:14:20,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:14:20,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:14:22,117.117 INFO    ] ================================================
[2026-06-27 15:14:22,132.132 INFO    ] Launching Daemon at Sat Jun 27 15:14:22 IST 2026
[2026-06-27 15:14:22,144.144 INFO    ] ================================================
[2026-06-27 15:14:22,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:14:22
[2026-06-27 15:14:22,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:14:22,940.940 INFO    ] Initializing speech engine...
[2026-06-27 15:14:22,943.943 INFO    ] 2026-06-27 15:14:22
[2026-06-27 15:14:23,162.162 INFO    ] 2026-06-27 15:14:23
[2026-06-27 15:14:23,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:14:23,377.377 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:14:23,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:14:23,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:14:23,603.603 INFO    ] time= 27/06/2026 15:14:23
[2026-06-27 15:14:23,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:14:23,610.610 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:14:23,702.702 INFO    ] No existing commands found in stream
[2026-06-27 15:14:28,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:14:28,719.719 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-27 15:14:29,391.391 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 15:14:29,393.393 INFO    ] Checking for system updates...
[2026-06-27 15:14:29,414.414 INFO    ] 200
[2026-06-27 15:14:29,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:14:29,449.449 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:14:29,450.450 INFO    ] No update needed
[2026-06-27 15:14:29,452.452 INFO    ] Checking for camera pi updates...
[2026-06-27 15:14:29,474.474 INFO    ] 200
[2026-06-27 15:14:29,476.476 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:14:29,502.502 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:14:29,548.548 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:14:29,550.550 INFO    ] No camera update needed
[2026-06-27 15:14:29,551.551 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:14:29,553.553 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:14:29,556.556 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:14:29,559.559 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:14:31,599.599 INFO    ] ================================================
[2026-06-27 15:14:31,615.615 INFO    ] Launching Daemon at Sat Jun 27 15:14:31 IST 2026
[2026-06-27 15:14:31,627.627 INFO    ] ================================================
[2026-06-27 15:14:31,968.968 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:14:31
[2026-06-27 15:14:32,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:14:32,463.463 INFO    ] Initializing speech engine...
[2026-06-27 15:14:32,468.468 INFO    ] 2026-06-27 15:14:32
[2026-06-27 15:14:32,683.683 INFO    ] 2026-06-27 15:14:32
[2026-06-27 15:14:32,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:14:32,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:14:32,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:14:33,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:14:33,125.125 INFO    ] time= 27/06/2026 15:14:33
[2026-06-27 15:14:33,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:14:33,167.167 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:14:33,270.270 INFO    ] No existing commands found in stream
[2026-06-27 15:14:38,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:14:38,282.282 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-27 15:14:39,087.087 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:14:39,088.088 INFO    ] Checking for system updates...
[2026-06-27 15:14:39,109.109 INFO    ] 200
[2026-06-27 15:14:39,110.110 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:14:39,140.140 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:14:39,141.141 INFO    ] No update needed
[2026-06-27 15:14:39,143.143 INFO    ] Checking for camera pi updates...
[2026-06-27 15:14:39,164.164 INFO    ] 200
[2026-06-27 15:14:39,165.165 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:14:39,189.189 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:14:39,234.234 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:14:39,236.236 INFO    ] No camera update needed
[2026-06-27 15:14:39,237.237 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:14:39,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:14:39,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:14:39,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:14:41,282.282 INFO    ] ================================================
[2026-06-27 15:14:41,298.298 INFO    ] Launching Daemon at Sat Jun 27 15:14:41 IST 2026
[2026-06-27 15:14:41,309.309 INFO    ] ================================================
[2026-06-27 15:14:41,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:14:41
[2026-06-27 15:14:42,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:14:42,182.182 INFO    ] Initializing speech engine...
[2026-06-27 15:14:42,186.186 INFO    ] 2026-06-27 15:14:42
[2026-06-27 15:14:42,394.394 INFO    ] 2026-06-27 15:14:42
[2026-06-27 15:14:42,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:14:42,803.803 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:14:42,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:14:43,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:14:43,023.023 INFO    ] time= 27/06/2026 15:14:43
[2026-06-27 15:14:43,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:14:43,032.032 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:14:43,214.214 INFO    ] No existing commands found in stream
[2026-06-27 15:14:48,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:14:48,232.232 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-27 15:14:52,418.418 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:14:52,420.420 INFO    ] Checking for system updates...
[2026-06-27 15:14:52,441.441 INFO    ] 200
[2026-06-27 15:14:52,442.442 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:14:52,476.476 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:14:52,477.477 INFO    ] No update needed
[2026-06-27 15:14:52,479.479 INFO    ] Checking for camera pi updates...
[2026-06-27 15:14:52,500.500 INFO    ] 200
[2026-06-27 15:14:52,501.501 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:14:52,527.527 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:14:52,567.567 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:14:52,568.568 INFO    ] No camera update needed
[2026-06-27 15:14:52,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:14:52,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:14:52,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:14:52,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:14:54,617.617 INFO    ] ================================================
[2026-06-27 15:14:54,633.633 INFO    ] Launching Daemon at Sat Jun 27 15:14:54 IST 2026
[2026-06-27 15:14:54,644.644 INFO    ] ================================================
[2026-06-27 15:14:55,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:14:55
[2026-06-27 15:14:55,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:14:55,535.535 INFO    ] Initializing speech engine...
[2026-06-27 15:14:55,540.540 INFO    ] 2026-06-27 15:14:55
[2026-06-27 15:14:55,749.749 INFO    ] 2026-06-27 15:14:55
[2026-06-27 15:14:55,779.779 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:14:55,987.987 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:14:55,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:14:56,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:14:56,192.192 INFO    ] time= 27/06/2026 15:14:56
[2026-06-27 15:14:56,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:14:56,259.259 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:14:56,379.379 INFO    ] No existing commands found in stream
[2026-06-27 15:15:01,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:15:01,394.394 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-27 15:15:02,552.552 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 15:15:02,555.555 INFO    ] Checking for system updates...
[2026-06-27 15:15:02,585.585 INFO    ] 200
[2026-06-27 15:15:02,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:15:02,628.628 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:15:02,631.631 INFO    ] No update needed
[2026-06-27 15:15:02,633.633 INFO    ] Checking for camera pi updates...
[2026-06-27 15:15:02,661.661 INFO    ] 200
[2026-06-27 15:15:02,663.663 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:15:02,692.692 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:15:02,720.720 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:15:02,722.722 INFO    ] No camera update needed
[2026-06-27 15:15:02,724.724 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:15:02,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:15:02,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:15:02,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:15:04,766.766 INFO    ] ================================================
[2026-06-27 15:15:04,783.783 INFO    ] Launching Daemon at Sat Jun 27 15:15:04 IST 2026
[2026-06-27 15:15:04,794.794 INFO    ] ================================================
[2026-06-27 15:15:05,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:15:05
[2026-06-27 15:15:05,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:15:05,603.603 INFO    ] Initializing speech engine...
[2026-06-27 15:15:05,611.611 INFO    ] 2026-06-27 15:15:05
[2026-06-27 15:15:05,817.817 INFO    ] 2026-06-27 15:15:05
[2026-06-27 15:15:05,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:15:05,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:15:06,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:15:06,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:15:06,198.198 INFO    ] time= 27/06/2026 15:15:06
[2026-06-27 15:15:06,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:15:06,280.280 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:15:06,358.358 INFO    ] No existing commands found in stream
[2026-06-27 15:15:11,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:15:11,370.370 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-27 15:15:13,357.357 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:15:13,359.359 INFO    ] Checking for system updates...
[2026-06-27 15:15:13,379.379 INFO    ] 200
[2026-06-27 15:15:13,381.381 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:15:13,412.412 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:15:13,413.413 INFO    ] No update needed
[2026-06-27 15:15:13,415.415 INFO    ] Checking for camera pi updates...
[2026-06-27 15:15:13,436.436 INFO    ] 200
[2026-06-27 15:15:13,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:15:13,460.460 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:15:13,505.505 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:15:13,506.506 INFO    ] No camera update needed
[2026-06-27 15:15:13,508.508 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:15:13,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:15:13,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:15:13,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:15:15,556.556 INFO    ] ================================================
[2026-06-27 15:15:15,573.573 INFO    ] Launching Daemon at Sat Jun 27 15:15:15 IST 2026
[2026-06-27 15:15:15,584.584 INFO    ] ================================================
[2026-06-27 15:15:15,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:15:15
[2026-06-27 15:15:16,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:15:16,479.479 INFO    ] Initializing speech engine...
[2026-06-27 15:15:16,483.483 INFO    ] 2026-06-27 15:15:16
[2026-06-27 15:15:16,692.692 INFO    ] 2026-06-27 15:15:16
[2026-06-27 15:15:16,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:15:16,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:15:16,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:15:17,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:15:17,104.104 INFO    ] time= 27/06/2026 15:15:17
[2026-06-27 15:15:17,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:15:17,142.142 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:15:17,234.234 INFO    ] No existing commands found in stream
[2026-06-27 15:15:22,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:15:22,248.248 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-27 15:15:25,154.154 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 15:15:25,156.156 INFO    ] Checking for system updates...
[2026-06-27 15:15:25,176.176 INFO    ] 200
[2026-06-27 15:15:25,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:15:25,211.211 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:15:25,212.212 INFO    ] No update needed
[2026-06-27 15:15:25,214.214 INFO    ] Checking for camera pi updates...
[2026-06-27 15:15:25,234.234 INFO    ] 200
[2026-06-27 15:15:25,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:15:25,259.259 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:15:25,307.307 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:15:25,308.308 INFO    ] No camera update needed
[2026-06-27 15:15:25,309.309 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:15:25,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:15:25,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:15:25,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:15:27,356.356 INFO    ] ================================================
[2026-06-27 15:15:27,372.372 INFO    ] Launching Daemon at Sat Jun 27 15:15:27 IST 2026
[2026-06-27 15:15:27,383.383 INFO    ] ================================================
[2026-06-27 15:15:27,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:15:27
[2026-06-27 15:15:28,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:15:28,246.246 INFO    ] Initializing speech engine...
[2026-06-27 15:15:28,255.255 INFO    ] 2026-06-27 15:15:28
[2026-06-27 15:15:28,456.456 INFO    ] 2026-06-27 15:15:28
[2026-06-27 15:15:28,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:15:28,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:15:28,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:15:28,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:15:28,879.879 INFO    ] time= 27/06/2026 15:15:28
[2026-06-27 15:15:28,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:15:28,908.908 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:15:28,975.975 INFO    ] No existing commands found in stream
[2026-06-27 15:15:33,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:15:34,000.000 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-27 15:15:35,284.284 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 15:15:35,285.285 INFO    ] Checking for system updates...
[2026-06-27 15:15:35,308.308 INFO    ] 200
[2026-06-27 15:15:35,309.309 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:15:35,342.342 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:15:35,343.343 INFO    ] No update needed
[2026-06-27 15:15:35,345.345 INFO    ] Checking for camera pi updates...
[2026-06-27 15:15:35,365.365 INFO    ] 200
[2026-06-27 15:15:35,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:15:35,390.390 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:15:35,723.723 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:15:35,725.725 INFO    ] No camera update needed
[2026-06-27 15:15:35,726.726 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:15:35,727.727 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:15:35,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:15:35,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:15:37,775.775 INFO    ] ================================================
[2026-06-27 15:15:37,791.791 INFO    ] Launching Daemon at Sat Jun 27 15:15:37 IST 2026
[2026-06-27 15:15:37,803.803 INFO    ] ================================================
[2026-06-27 15:15:38,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:15:38
[2026-06-27 15:15:38,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:15:38,602.602 INFO    ] Initializing speech engine...
[2026-06-27 15:15:38,615.615 INFO    ] 2026-06-27 15:15:38
[2026-06-27 15:15:38,825.825 INFO    ] 2026-06-27 15:15:38
[2026-06-27 15:15:38,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:15:38,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:15:39,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:15:39,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:15:39,241.241 INFO    ] time= 27/06/2026 15:15:39
[2026-06-27 15:15:39,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:15:39,276.276 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:15:39,348.348 INFO    ] No existing commands found in stream
[2026-06-27 15:15:44,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:15:44,365.365 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-27 15:15:45,547.547 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 15:15:45,548.548 INFO    ] Checking for system updates...
[2026-06-27 15:15:45,569.569 INFO    ] 200
[2026-06-27 15:15:45,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:15:45,603.603 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:15:45,605.605 INFO    ] No update needed
[2026-06-27 15:15:45,606.606 INFO    ] Checking for camera pi updates...
[2026-06-27 15:15:45,626.626 INFO    ] 200
[2026-06-27 15:15:45,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:15:45,653.653 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:15:45,698.698 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:15:45,700.700 INFO    ] No camera update needed
[2026-06-27 15:15:45,701.701 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:15:45,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:15:45,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:15:45,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:15:47,748.748 INFO    ] ================================================
[2026-06-27 15:15:47,764.764 INFO    ] Launching Daemon at Sat Jun 27 15:15:47 IST 2026
[2026-06-27 15:15:47,775.775 INFO    ] ================================================
[2026-06-27 15:15:48,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:15:48
[2026-06-27 15:15:48,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:15:48,592.592 INFO    ] Initializing speech engine...
[2026-06-27 15:15:48,595.595 INFO    ] 2026-06-27 15:15:48
[2026-06-27 15:15:48,789.789 INFO    ] 2026-06-27 15:15:48
[2026-06-27 15:15:48,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:15:49,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:15:49,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:15:49,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:15:49,276.276 INFO    ] time= 27/06/2026 15:15:49
[2026-06-27 15:15:49,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:15:49,313.313 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:15:49,416.416 INFO    ] No existing commands found in stream
[2026-06-27 15:15:54,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:15:54,428.428 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-27 15:15:57,823.823 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 15:15:57,824.824 INFO    ] Checking for system updates...
[2026-06-27 15:15:57,846.846 INFO    ] 200
[2026-06-27 15:15:57,847.847 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:15:57,878.878 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:15:57,879.879 INFO    ] No update needed
[2026-06-27 15:15:57,881.881 INFO    ] Checking for camera pi updates...
[2026-06-27 15:15:57,900.900 INFO    ] 200
[2026-06-27 15:15:57,901.901 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:15:57,926.926 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:15:57,971.971 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:15:57,972.972 INFO    ] No camera update needed
[2026-06-27 15:15:57,973.973 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:15:57,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:15:57,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:15:57,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:16:00,019.019 INFO    ] ================================================
[2026-06-27 15:16:00,034.034 INFO    ] Launching Daemon at Sat Jun 27 15:16:00 IST 2026
[2026-06-27 15:16:00,045.045 INFO    ] ================================================
[2026-06-27 15:16:00,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:16:00
[2026-06-27 15:16:00,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:16:00,835.835 INFO    ] Initializing speech engine...
[2026-06-27 15:16:00,844.844 INFO    ] 2026-06-27 15:16:00
[2026-06-27 15:16:01,074.074 INFO    ] 2026-06-27 15:16:01
[2026-06-27 15:16:01,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:16:01,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:16:01,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:16:01,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:16:01,527.527 INFO    ] time= 27/06/2026 15:16:01
[2026-06-27 15:16:01,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:16:01,531.531 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:16:01,642.642 INFO    ] No existing commands found in stream
[2026-06-27 15:16:06,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:16:06,654.654 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-27 15:16:09,191.191 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 15:16:09,193.193 INFO    ] Checking for system updates...
[2026-06-27 15:16:09,214.214 INFO    ] 200
[2026-06-27 15:16:09,216.216 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:16:09,247.247 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:16:09,249.249 INFO    ] No update needed
[2026-06-27 15:16:09,250.250 INFO    ] Checking for camera pi updates...
[2026-06-27 15:16:09,270.270 INFO    ] 200
[2026-06-27 15:16:09,272.272 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:16:09,298.298 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:16:09,340.340 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:16:09,342.342 INFO    ] No camera update needed
[2026-06-27 15:16:09,343.343 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:16:09,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:16:09,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:16:09,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:16:11,392.392 INFO    ] ================================================
[2026-06-27 15:16:11,407.407 INFO    ] Launching Daemon at Sat Jun 27 15:16:11 IST 2026
[2026-06-27 15:16:11,418.418 INFO    ] ================================================
[2026-06-27 15:16:11,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:16:11
[2026-06-27 15:16:12,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:16:12,236.236 INFO    ] Initializing speech engine...
[2026-06-27 15:16:12,241.241 INFO    ] 2026-06-27 15:16:12
[2026-06-27 15:16:12,447.447 INFO    ] 2026-06-27 15:16:12
[2026-06-27 15:16:12,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:16:12,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:16:12,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:16:12,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:16:12,889.889 INFO    ] time= 27/06/2026 15:16:12
[2026-06-27 15:16:12,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:16:12,896.896 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:16:12,988.988 INFO    ] No existing commands found in stream
[2026-06-27 15:16:18,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:16:18,015.015 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-27 15:16:19,434.434 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:16:19,436.436 INFO    ] Checking for system updates...
[2026-06-27 15:16:19,460.460 INFO    ] 200
[2026-06-27 15:16:19,462.462 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:16:19,495.495 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:16:19,497.497 INFO    ] No update needed
[2026-06-27 15:16:19,499.499 INFO    ] Checking for camera pi updates...
[2026-06-27 15:16:19,523.523 INFO    ] 200
[2026-06-27 15:16:19,525.525 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:16:19,551.551 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:16:19,609.609 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:16:19,611.611 INFO    ] No camera update needed
[2026-06-27 15:16:19,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:16:19,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:16:19,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:16:19,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:16:21,653.653 INFO    ] ================================================
[2026-06-27 15:16:21,662.662 INFO    ] Launching Daemon at Sat Jun 27 15:16:21 IST 2026
[2026-06-27 15:16:21,669.669 INFO    ] ================================================
[2026-06-27 15:16:22,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:16:22
[2026-06-27 15:16:22,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:16:22,521.521 INFO    ] Initializing speech engine...
[2026-06-27 15:16:22,527.527 INFO    ] 2026-06-27 15:16:22
[2026-06-27 15:16:22,733.733 INFO    ] 2026-06-27 15:16:22
[2026-06-27 15:16:22,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:16:22,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:16:22,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:16:23,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:16:23,182.182 INFO    ] time= 27/06/2026 15:16:23
[2026-06-27 15:16:23,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:16:23,186.186 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:16:23,254.254 INFO    ] No existing commands found in stream
[2026-06-27 15:16:28,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:16:28,271.271 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-27 15:16:30,152.152 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:16:30,154.154 INFO    ] Checking for system updates...
[2026-06-27 15:16:30,175.175 INFO    ] 200
[2026-06-27 15:16:30,176.176 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:16:30,208.208 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:16:30,209.209 INFO    ] No update needed
[2026-06-27 15:16:30,211.211 INFO    ] Checking for camera pi updates...
[2026-06-27 15:16:30,231.231 INFO    ] 200
[2026-06-27 15:16:30,233.233 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:16:30,257.257 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:16:30,300.300 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:16:30,301.301 INFO    ] No camera update needed
[2026-06-27 15:16:30,303.303 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:16:30,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:16:30,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:16:30,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:16:32,354.354 INFO    ] ================================================
[2026-06-27 15:16:32,371.371 INFO    ] Launching Daemon at Sat Jun 27 15:16:32 IST 2026
[2026-06-27 15:16:32,383.383 INFO    ] ================================================
[2026-06-27 15:16:32,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:16:32
[2026-06-27 15:16:33,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:16:33,169.169 INFO    ] Initializing speech engine...
[2026-06-27 15:16:33,178.178 INFO    ] 2026-06-27 15:16:33
[2026-06-27 15:16:33,394.394 INFO    ] 2026-06-27 15:16:33
[2026-06-27 15:16:33,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:16:33,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:16:33,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:16:33,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:16:33,913.913 INFO    ] time= 27/06/2026 15:16:33
[2026-06-27 15:16:33,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:16:33,940.940 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:16:34,038.038 INFO    ] No existing commands found in stream
[2026-06-27 15:16:39,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:16:39,051.051 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-27 15:16:39,918.918 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:16:39,921.921 INFO    ] Checking for system updates...
[2026-06-27 15:16:39,964.964 INFO    ] 200
[2026-06-27 15:16:39,966.966 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:16:40,020.020 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:16:40,023.023 INFO    ] No update needed
[2026-06-27 15:16:40,025.025 INFO    ] Checking for camera pi updates...
[2026-06-27 15:16:40,059.059 INFO    ] 200
[2026-06-27 15:16:40,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:16:40,084.084 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:16:40,134.134 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:16:40,135.135 INFO    ] No camera update needed
[2026-06-27 15:16:40,136.136 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:16:40,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:16:40,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:16:40,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:16:42,185.185 INFO    ] ================================================
[2026-06-27 15:16:42,200.200 INFO    ] Launching Daemon at Sat Jun 27 15:16:42 IST 2026
[2026-06-27 15:16:42,212.212 INFO    ] ================================================
[2026-06-27 15:16:42,566.566 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:16:42
[2026-06-27 15:16:42,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:16:43,015.015 INFO    ] Initializing speech engine...
[2026-06-27 15:16:43,018.018 INFO    ] 2026-06-27 15:16:43
[2026-06-27 15:16:43,238.238 INFO    ] 2026-06-27 15:16:43
[2026-06-27 15:16:43,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:16:43,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:16:43,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:16:43,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:16:43,691.691 INFO    ] time= 27/06/2026 15:16:43
[2026-06-27 15:16:43,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:16:43,695.695 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:16:43,762.762 INFO    ] No existing commands found in stream
[2026-06-27 15:16:48,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:16:48,779.779 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-27 15:16:49,892.892 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 15:16:49,894.894 INFO    ] Checking for system updates...
[2026-06-27 15:16:49,917.917 INFO    ] 200
[2026-06-27 15:16:49,918.918 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:16:49,950.950 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:16:49,951.951 INFO    ] No update needed
[2026-06-27 15:16:49,952.952 INFO    ] Checking for camera pi updates...
[2026-06-27 15:16:49,973.973 INFO    ] 200
[2026-06-27 15:16:49,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:16:49,999.999 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:16:50,053.053 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:16:50,055.055 INFO    ] No camera update needed
[2026-06-27 15:16:50,056.056 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:16:50,057.057 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:16:50,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:16:50,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:16:52,105.105 INFO    ] ================================================
[2026-06-27 15:16:52,120.120 INFO    ] Launching Daemon at Sat Jun 27 15:16:52 IST 2026
[2026-06-27 15:16:52,132.132 INFO    ] ================================================
[2026-06-27 15:16:52,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:16:52
[2026-06-27 15:16:52,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:16:52,972.972 INFO    ] Initializing speech engine...
[2026-06-27 15:16:52,983.983 INFO    ] 2026-06-27 15:16:52
[2026-06-27 15:16:53,196.196 INFO    ] 2026-06-27 15:16:53
[2026-06-27 15:16:53,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:16:53,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:16:53,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:16:53,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:16:53,647.647 INFO    ] time= 27/06/2026 15:16:53
[2026-06-27 15:16:53,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:16:53,651.651 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:16:53,768.768 INFO    ] No existing commands found in stream
[2026-06-27 15:16:58,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:16:58,782.782 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-27 15:16:59,653.653 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:16:59,654.654 INFO    ] Checking for system updates...
[2026-06-27 15:16:59,675.675 INFO    ] 200
[2026-06-27 15:16:59,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:16:59,707.707 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:16:59,709.709 INFO    ] No update needed
[2026-06-27 15:16:59,710.710 INFO    ] Checking for camera pi updates...
[2026-06-27 15:16:59,729.729 INFO    ] 200
[2026-06-27 15:16:59,731.731 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:16:59,754.754 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:16:59,810.810 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:16:59,811.811 INFO    ] No camera update needed
[2026-06-27 15:16:59,812.812 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:16:59,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:16:59,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:16:59,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:17:01,855.855 INFO    ] ================================================
[2026-06-27 15:17:01,876.876 INFO    ] Launching Daemon at Sat Jun 27 15:17:01 IST 2026
[2026-06-27 15:17:01,887.887 INFO    ] ================================================
[2026-06-27 15:17:02,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:17:02
[2026-06-27 15:17:02,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:17:02,873.873 INFO    ] Initializing speech engine...
[2026-06-27 15:17:02,882.882 INFO    ] 2026-06-27 15:17:02
[2026-06-27 15:17:03,092.092 INFO    ] 2026-06-27 15:17:03
[2026-06-27 15:17:03,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:17:03,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:17:03,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:17:03,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:17:03,536.536 INFO    ] time= 27/06/2026 15:17:03
[2026-06-27 15:17:03,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:17:03,543.543 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:17:03,615.615 INFO    ] No existing commands found in stream
[2026-06-27 15:17:08,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:17:08,643.643 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-27 15:17:12,282.282 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 15:17:12,284.284 INFO    ] Checking for system updates...
[2026-06-27 15:17:12,307.307 INFO    ] 200
[2026-06-27 15:17:12,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:17:12,340.340 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:17:12,342.342 INFO    ] No update needed
[2026-06-27 15:17:12,343.343 INFO    ] Checking for camera pi updates...
[2026-06-27 15:17:12,363.363 INFO    ] 200
[2026-06-27 15:17:12,365.365 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:17:12,389.389 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:17:12,453.453 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:17:12,455.455 INFO    ] No camera update needed
[2026-06-27 15:17:12,456.456 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:17:12,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:17:12,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:17:12,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:17:14,506.506 INFO    ] ================================================
[2026-06-27 15:17:14,522.522 INFO    ] Launching Daemon at Sat Jun 27 15:17:14 IST 2026
[2026-06-27 15:17:14,532.532 INFO    ] ================================================
[2026-06-27 15:17:14,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:17:14
[2026-06-27 15:17:15,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:17:15,335.335 INFO    ] Initializing speech engine...
[2026-06-27 15:17:15,347.347 INFO    ] 2026-06-27 15:17:15
[2026-06-27 15:17:15,555.555 INFO    ] 2026-06-27 15:17:15
[2026-06-27 15:17:15,583.583 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:17:15,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:17:15,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:17:15,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:17:15,998.998 INFO    ] time= 27/06/2026 15:17:15
[2026-06-27 15:17:15,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:17:16,001.001 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:17:16,068.068 INFO    ] No existing commands found in stream
[2026-06-27 15:17:21,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:17:21,102.102 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-27 15:17:23,708.708 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 15:17:23,709.709 INFO    ] Checking for system updates...
[2026-06-27 15:17:23,730.730 INFO    ] 200
[2026-06-27 15:17:23,732.732 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:17:23,765.765 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:17:23,767.767 INFO    ] No update needed
[2026-06-27 15:17:23,768.768 INFO    ] Checking for camera pi updates...
[2026-06-27 15:17:23,788.788 INFO    ] 200
[2026-06-27 15:17:23,790.790 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:17:23,813.813 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:17:23,856.856 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:17:23,857.857 INFO    ] No camera update needed
[2026-06-27 15:17:23,859.859 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:17:23,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:17:23,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:17:23,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:17:25,909.909 INFO    ] ================================================
[2026-06-27 15:17:25,924.924 INFO    ] Launching Daemon at Sat Jun 27 15:17:25 IST 2026
[2026-06-27 15:17:25,935.935 INFO    ] ================================================
[2026-06-27 15:17:26,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:17:26
[2026-06-27 15:17:26,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:17:26,728.728 INFO    ] Initializing speech engine...
[2026-06-27 15:17:26,738.738 INFO    ] 2026-06-27 15:17:26
[2026-06-27 15:17:26,941.941 INFO    ] 2026-06-27 15:17:26
[2026-06-27 15:17:26,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:17:27,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:17:27,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:17:27,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:17:27,389.389 INFO    ] time= 27/06/2026 15:17:27
[2026-06-27 15:17:27,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:17:27,393.393 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:17:27,491.491 INFO    ] No existing commands found in stream
[2026-06-27 15:17:32,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:17:32,496.496 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-27 15:17:33,394.394 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 15:17:33,395.395 INFO    ] Checking for system updates...
[2026-06-27 15:17:33,416.416 INFO    ] 200
[2026-06-27 15:17:33,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:17:33,449.449 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:17:33,450.450 INFO    ] No update needed
[2026-06-27 15:17:33,451.451 INFO    ] Checking for camera pi updates...
[2026-06-27 15:17:33,471.471 INFO    ] 200
[2026-06-27 15:17:33,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:17:33,497.497 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:17:33,529.529 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:17:33,531.531 INFO    ] No camera update needed
[2026-06-27 15:17:33,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:17:33,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:17:33,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:17:33,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:17:35,570.570 INFO    ] ================================================
[2026-06-27 15:17:35,586.586 INFO    ] Launching Daemon at Sat Jun 27 15:17:35 IST 2026
[2026-06-27 15:17:35,598.598 INFO    ] ================================================
[2026-06-27 15:17:35,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:17:35
[2026-06-27 15:17:36,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:17:36,406.406 INFO    ] Initializing speech engine...
[2026-06-27 15:17:36,409.409 INFO    ] 2026-06-27 15:17:36
[2026-06-27 15:17:36,602.602 INFO    ] 2026-06-27 15:17:36
[2026-06-27 15:17:36,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:17:36,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:17:36,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:17:37,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:17:37,077.077 INFO    ] time= 27/06/2026 15:17:37
[2026-06-27 15:17:37,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:17:37,128.128 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:17:37,204.204 INFO    ] No existing commands found in stream
[2026-06-27 15:17:42,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:17:42,217.217 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-27 15:17:45,409.409 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:17:45,411.411 INFO    ] Checking for system updates...
[2026-06-27 15:17:45,432.432 INFO    ] 200
[2026-06-27 15:17:45,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:17:45,470.470 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:17:45,474.474 INFO    ] No update needed
[2026-06-27 15:17:45,477.477 INFO    ] Checking for camera pi updates...
[2026-06-27 15:17:45,513.513 INFO    ] 200
[2026-06-27 15:17:45,516.516 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:17:45,558.558 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:17:45,706.706 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:17:45,709.709 INFO    ] No camera update needed
[2026-06-27 15:17:45,712.712 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:17:45,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:17:45,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:17:45,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:17:47,774.774 INFO    ] ================================================
[2026-06-27 15:17:47,792.792 INFO    ] Launching Daemon at Sat Jun 27 15:17:47 IST 2026
[2026-06-27 15:17:47,802.802 INFO    ] ================================================
[2026-06-27 15:17:48,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:17:48
[2026-06-27 15:17:48,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:17:48,645.645 INFO    ] Initializing speech engine...
[2026-06-27 15:17:48,649.649 INFO    ] 2026-06-27 15:17:48
[2026-06-27 15:17:48,858.858 INFO    ] 2026-06-27 15:17:48
[2026-06-27 15:17:48,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:17:49,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:17:49,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:17:49,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:17:49,279.279 INFO    ] time= 27/06/2026 15:17:49
[2026-06-27 15:17:49,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:17:49,308.308 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:17:49,379.379 INFO    ] No existing commands found in stream
[2026-06-27 15:17:54,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:17:54,391.391 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-27 15:17:55,343.343 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 15:17:55,345.345 INFO    ] Checking for system updates...
[2026-06-27 15:17:55,367.367 INFO    ] 200
[2026-06-27 15:17:55,369.369 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:17:55,404.404 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:17:55,405.405 INFO    ] No update needed
[2026-06-27 15:17:55,407.407 INFO    ] Checking for camera pi updates...
[2026-06-27 15:17:55,427.427 INFO    ] 200
[2026-06-27 15:17:55,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:17:55,452.452 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:17:55,482.482 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:17:55,483.483 INFO    ] No camera update needed
[2026-06-27 15:17:55,484.484 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:17:55,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:17:55,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:17:55,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:17:57,529.529 INFO    ] ================================================
[2026-06-27 15:17:57,545.545 INFO    ] Launching Daemon at Sat Jun 27 15:17:57 IST 2026
[2026-06-27 15:17:57,556.556 INFO    ] ================================================
[2026-06-27 15:17:57,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:17:57
[2026-06-27 15:17:58,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:17:58,361.361 INFO    ] Initializing speech engine...
[2026-06-27 15:17:58,371.371 INFO    ] 2026-06-27 15:17:58
[2026-06-27 15:17:58,576.576 INFO    ] 2026-06-27 15:17:58
[2026-06-27 15:17:58,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:17:58,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:17:58,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:17:58,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:17:59,016.016 INFO    ] time= 27/06/2026 15:17:58
[2026-06-27 15:17:59,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:17:59,023.023 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:17:59,114.114 INFO    ] No existing commands found in stream
[2026-06-27 15:18:04,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:18:04,126.126 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-27 15:18:07,794.794 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:18:07,795.795 INFO    ] Checking for system updates...
[2026-06-27 15:18:07,816.816 INFO    ] 200
[2026-06-27 15:18:07,818.818 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:18:07,856.856 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:18:07,858.858 INFO    ] No update needed
[2026-06-27 15:18:07,859.859 INFO    ] Checking for camera pi updates...
[2026-06-27 15:18:07,879.879 INFO    ] 200
[2026-06-27 15:18:07,880.880 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:18:07,904.904 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:18:07,951.951 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:18:07,952.952 INFO    ] No camera update needed
[2026-06-27 15:18:07,954.954 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:18:07,955.955 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:18:07,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:18:07,961.961 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:18:10,999.999 INFO    ] ================================================
[2026-06-27 15:18:10,015.015 INFO    ] Launching Daemon at Sat Jun 27 15:18:10 IST 2026
[2026-06-27 15:18:10,026.026 INFO    ] ================================================
[2026-06-27 15:18:10,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:18:10
[2026-06-27 15:18:10,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:18:10,819.819 INFO    ] Initializing speech engine...
[2026-06-27 15:18:10,830.830 INFO    ] 2026-06-27 15:18:10
[2026-06-27 15:18:11,036.036 INFO    ] 2026-06-27 15:18:11
[2026-06-27 15:18:11,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:18:11,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:18:11,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:18:11,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:18:11,485.485 INFO    ] time= 27/06/2026 15:18:11
[2026-06-27 15:18:11,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:18:11,488.488 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:18:11,579.579 INFO    ] No existing commands found in stream
[2026-06-27 15:18:16,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:18:16,596.596 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-27 15:18:19,004.004 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 15:18:19,006.006 INFO    ] Checking for system updates...
[2026-06-27 15:18:19,029.029 INFO    ] 200
[2026-06-27 15:18:19,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:18:19,060.060 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:18:19,062.062 INFO    ] No update needed
[2026-06-27 15:18:19,063.063 INFO    ] Checking for camera pi updates...
[2026-06-27 15:18:19,084.084 INFO    ] 200
[2026-06-27 15:18:19,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:18:19,110.110 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:18:19,152.152 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:18:19,154.154 INFO    ] No camera update needed
[2026-06-27 15:18:19,155.155 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:18:19,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:18:19,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:18:19,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:18:21,201.201 INFO    ] ================================================
[2026-06-27 15:18:21,217.217 INFO    ] Launching Daemon at Sat Jun 27 15:18:21 IST 2026
[2026-06-27 15:18:21,227.227 INFO    ] ================================================
[2026-06-27 15:18:21,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:18:21
[2026-06-27 15:18:21,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:18:22,003.003 INFO    ] Initializing speech engine...
[2026-06-27 15:18:22,011.011 INFO    ] 2026-06-27 15:18:22
[2026-06-27 15:18:22,224.224 INFO    ] 2026-06-27 15:18:22
[2026-06-27 15:18:22,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:18:22,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:18:22,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:18:22,582.582 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:18:22,644.644 INFO    ] time= 27/06/2026 15:18:22
[2026-06-27 15:18:22,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:18:22,674.674 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:18:22,765.765 INFO    ] No existing commands found in stream
[2026-06-27 15:18:27,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:18:27,782.782 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-27 15:18:31,252.252 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:18:31,253.253 INFO    ] Checking for system updates...
[2026-06-27 15:18:31,274.274 INFO    ] 200
[2026-06-27 15:18:31,275.275 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:18:31,306.306 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:18:31,307.307 INFO    ] No update needed
[2026-06-27 15:18:31,308.308 INFO    ] Checking for camera pi updates...
[2026-06-27 15:18:31,331.331 INFO    ] 200
[2026-06-27 15:18:31,332.332 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:18:31,356.356 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:18:31,403.403 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:18:31,405.405 INFO    ] No camera update needed
[2026-06-27 15:18:31,406.406 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:18:31,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:18:31,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:18:31,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:18:33,446.446 INFO    ] ================================================
[2026-06-27 15:18:33,463.463 INFO    ] Launching Daemon at Sat Jun 27 15:18:33 IST 2026
[2026-06-27 15:18:33,474.474 INFO    ] ================================================
[2026-06-27 15:18:33,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:18:33
[2026-06-27 15:18:34,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:18:34,290.290 INFO    ] Initializing speech engine...
[2026-06-27 15:18:34,300.300 INFO    ] 2026-06-27 15:18:34
[2026-06-27 15:18:34,504.504 INFO    ] 2026-06-27 15:18:34
[2026-06-27 15:18:34,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:18:34,719.719 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:18:34,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:18:34,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:18:34,946.946 INFO    ] time= 27/06/2026 15:18:34
[2026-06-27 15:18:34,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:18:34,953.953 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:18:35,019.019 INFO    ] No existing commands found in stream
[2026-06-27 15:18:40,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:18:40,029.029 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-27 15:18:41,092.092 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:18:41,094.094 INFO    ] Checking for system updates...
[2026-06-27 15:18:41,116.116 INFO    ] 200
[2026-06-27 15:18:41,117.117 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:18:41,148.148 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:18:41,149.149 INFO    ] No update needed
[2026-06-27 15:18:41,151.151 INFO    ] Checking for camera pi updates...
[2026-06-27 15:18:41,173.173 INFO    ] 200
[2026-06-27 15:18:41,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:18:41,198.198 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:18:41,250.250 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:18:41,252.252 INFO    ] No camera update needed
[2026-06-27 15:18:41,253.253 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:18:41,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:18:41,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:18:41,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:18:43,299.299 INFO    ] ================================================
[2026-06-27 15:18:43,315.315 INFO    ] Launching Daemon at Sat Jun 27 15:18:43 IST 2026
[2026-06-27 15:18:43,325.325 INFO    ] ================================================
[2026-06-27 15:18:43,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:18:43
[2026-06-27 15:18:44,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:18:44,149.149 INFO    ] Initializing speech engine...
[2026-06-27 15:18:44,159.159 INFO    ] 2026-06-27 15:18:44
[2026-06-27 15:18:44,371.371 INFO    ] 2026-06-27 15:18:44
[2026-06-27 15:18:44,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:18:44,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:18:44,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:18:44,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:18:44,819.819 INFO    ] time= 27/06/2026 15:18:44
[2026-06-27 15:18:44,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:18:44,826.826 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:18:44,894.894 INFO    ] No existing commands found in stream
[2026-06-27 15:18:49,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:18:49,907.907 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-27 15:18:54,020.020 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 15:18:54,021.021 INFO    ] Checking for system updates...
[2026-06-27 15:18:54,044.044 INFO    ] 200
[2026-06-27 15:18:54,046.046 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:18:54,077.077 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:18:54,078.078 INFO    ] No update needed
[2026-06-27 15:18:54,080.080 INFO    ] Checking for camera pi updates...
[2026-06-27 15:18:54,101.101 INFO    ] 200
[2026-06-27 15:18:54,103.103 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:18:54,129.129 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:18:54,205.205 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:18:54,206.206 INFO    ] No camera update needed
[2026-06-27 15:18:54,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:18:54,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:18:54,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:18:54,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:18:56,255.255 INFO    ] ================================================
[2026-06-27 15:18:56,271.271 INFO    ] Launching Daemon at Sat Jun 27 15:18:56 IST 2026
[2026-06-27 15:18:56,283.283 INFO    ] ================================================
[2026-06-27 15:18:56,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:18:56
[2026-06-27 15:18:56,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:18:57,147.147 INFO    ] Initializing speech engine...
[2026-06-27 15:18:57,151.151 INFO    ] 2026-06-27 15:18:57
[2026-06-27 15:18:57,358.358 INFO    ] 2026-06-27 15:18:57
[2026-06-27 15:18:57,387.387 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:18:57,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:18:57,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:18:57,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:18:57,868.868 INFO    ] time= 27/06/2026 15:18:57
[2026-06-27 15:18:57,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:18:57,895.895 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:18:58,009.009 INFO    ] No existing commands found in stream
[2026-06-27 15:19:03,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:19:03,019.019 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-27 15:19:05,555.555 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:19:05,557.557 INFO    ] Checking for system updates...
[2026-06-27 15:19:05,578.578 INFO    ] 200
[2026-06-27 15:19:05,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:19:05,613.613 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:19:05,614.614 INFO    ] No update needed
[2026-06-27 15:19:05,616.616 INFO    ] Checking for camera pi updates...
[2026-06-27 15:19:05,636.636 INFO    ] 200
[2026-06-27 15:19:05,638.638 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:19:05,661.661 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:19:05,704.704 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:19:05,706.706 INFO    ] No camera update needed
[2026-06-27 15:19:05,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:19:05,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:19:05,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:19:05,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:19:07,753.753 INFO    ] ================================================
[2026-06-27 15:19:07,768.768 INFO    ] Launching Daemon at Sat Jun 27 15:19:07 IST 2026
[2026-06-27 15:19:07,779.779 INFO    ] ================================================
[2026-06-27 15:19:08,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:19:08
[2026-06-27 15:19:08,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:19:08,603.603 INFO    ] Initializing speech engine...
[2026-06-27 15:19:08,611.611 INFO    ] 2026-06-27 15:19:08
[2026-06-27 15:19:08,829.829 INFO    ] 2026-06-27 15:19:08
[2026-06-27 15:19:08,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:19:09,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:19:09,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:19:09,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:19:09,278.278 INFO    ] time= 27/06/2026 15:19:09
[2026-06-27 15:19:09,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:19:09,286.286 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:19:09,354.354 INFO    ] No existing commands found in stream
[2026-06-27 15:19:14,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:19:14,367.367 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-27 15:19:17,817.817 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:19:17,819.819 INFO    ] Checking for system updates...
[2026-06-27 15:19:17,840.840 INFO    ] 200
[2026-06-27 15:19:17,841.841 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:19:17,872.872 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:19:17,873.873 INFO    ] No update needed
[2026-06-27 15:19:17,875.875 INFO    ] Checking for camera pi updates...
[2026-06-27 15:19:17,896.896 INFO    ] 200
[2026-06-27 15:19:17,897.897 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:19:17,921.921 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:19:17,969.969 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:19:17,971.971 INFO    ] No camera update needed
[2026-06-27 15:19:17,972.972 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:19:17,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:19:17,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:19:17,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:19:20,020.020 INFO    ] ================================================
[2026-06-27 15:19:20,036.036 INFO    ] Launching Daemon at Sat Jun 27 15:19:20 IST 2026
[2026-06-27 15:19:20,047.047 INFO    ] ================================================
[2026-06-27 15:19:20,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:19:20
[2026-06-27 15:19:20,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:19:20,835.835 INFO    ] Initializing speech engine...
[2026-06-27 15:19:20,840.840 INFO    ] 2026-06-27 15:19:20
[2026-06-27 15:19:21,045.045 INFO    ] 2026-06-27 15:19:21
[2026-06-27 15:19:21,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:19:21,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:19:21,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:19:21,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:19:21,468.468 INFO    ] time= 27/06/2026 15:19:21
[2026-06-27 15:19:21,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:19:21,495.495 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:19:21,591.591 INFO    ] No existing commands found in stream
[2026-06-27 15:19:26,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:19:26,604.604 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-27 15:19:30,913.913 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:19:30,915.915 INFO    ] Checking for system updates...
[2026-06-27 15:19:30,937.937 INFO    ] 200
[2026-06-27 15:19:30,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:19:30,968.968 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:19:30,970.970 INFO    ] No update needed
[2026-06-27 15:19:30,971.971 INFO    ] Checking for camera pi updates...
[2026-06-27 15:19:30,990.990 INFO    ] 200
[2026-06-27 15:19:30,992.992 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:19:31,017.017 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:19:31,059.059 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:19:31,060.060 INFO    ] No camera update needed
[2026-06-27 15:19:31,061.061 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:19:31,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:19:31,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:19:31,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:19:33,100.100 INFO    ] ================================================
[2026-06-27 15:19:33,116.116 INFO    ] Launching Daemon at Sat Jun 27 15:19:33 IST 2026
[2026-06-27 15:19:33,127.127 INFO    ] ================================================
[2026-06-27 15:19:33,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:19:33
[2026-06-27 15:19:33,835.835 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:19:33,971.971 INFO    ] Initializing speech engine...
[2026-06-27 15:19:33,979.979 INFO    ] 2026-06-27 15:19:33
[2026-06-27 15:19:34,201.201 INFO    ] 2026-06-27 15:19:34
[2026-06-27 15:19:34,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:19:34,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:19:34,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:19:34,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:19:34,619.619 INFO    ] time= 27/06/2026 15:19:34
[2026-06-27 15:19:34,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:19:34,649.649 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:19:34,740.740 INFO    ] No existing commands found in stream
[2026-06-27 15:19:39,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:19:39,757.757 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-27 15:19:42,153.153 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 15:19:42,154.154 INFO    ] Checking for system updates...
[2026-06-27 15:19:42,176.176 INFO    ] 200
[2026-06-27 15:19:42,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:19:42,211.211 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:19:42,212.212 INFO    ] No update needed
[2026-06-27 15:19:42,215.215 INFO    ] Checking for camera pi updates...
[2026-06-27 15:19:42,235.235 INFO    ] 200
[2026-06-27 15:19:42,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:19:42,261.261 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:19:42,323.323 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:19:42,325.325 INFO    ] No camera update needed
[2026-06-27 15:19:42,326.326 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:19:42,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:19:42,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:19:42,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:19:44,373.373 INFO    ] ================================================
[2026-06-27 15:19:44,388.388 INFO    ] Launching Daemon at Sat Jun 27 15:19:44 IST 2026
[2026-06-27 15:19:44,399.399 INFO    ] ================================================
[2026-06-27 15:19:44,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:19:44
[2026-06-27 15:19:45,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:19:45,194.194 INFO    ] Initializing speech engine...
[2026-06-27 15:19:45,202.202 INFO    ] 2026-06-27 15:19:45
[2026-06-27 15:19:45,414.414 INFO    ] 2026-06-27 15:19:45
[2026-06-27 15:19:45,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:19:45,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:19:45,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:19:45,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:19:45,854.854 INFO    ] time= 27/06/2026 15:19:45
[2026-06-27 15:19:45,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:19:45,861.861 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:19:45,927.927 INFO    ] No existing commands found in stream
[2026-06-27 15:19:50,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:19:50,939.939 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-27 15:19:51,928.928 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:19:51,929.929 INFO    ] Checking for system updates...
[2026-06-27 15:19:51,950.950 INFO    ] 200
[2026-06-27 15:19:51,952.952 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:19:51,983.983 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:19:51,985.985 INFO    ] No update needed
[2026-06-27 15:19:51,986.986 INFO    ] Checking for camera pi updates...
[2026-06-27 15:19:52,006.006 INFO    ] 200
[2026-06-27 15:19:52,007.007 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:19:52,031.031 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:19:52,182.182 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:19:52,184.184 INFO    ] No camera update needed
[2026-06-27 15:19:52,185.185 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:19:52,186.186 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:19:52,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:19:52,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:19:54,235.235 INFO    ] ================================================
[2026-06-27 15:19:54,252.252 INFO    ] Launching Daemon at Sat Jun 27 15:19:54 IST 2026
[2026-06-27 15:19:54,262.262 INFO    ] ================================================
[2026-06-27 15:19:54,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:19:54
[2026-06-27 15:19:54,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:19:55,088.088 INFO    ] Initializing speech engine...
[2026-06-27 15:19:55,091.091 INFO    ] 2026-06-27 15:19:55
[2026-06-27 15:19:55,284.284 INFO    ] 2026-06-27 15:19:55
[2026-06-27 15:19:55,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:19:55,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:19:55,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:19:55,700.700 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:19:55,757.757 INFO    ] time= 27/06/2026 15:19:55
[2026-06-27 15:19:55,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:19:55,809.809 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:19:55,893.893 INFO    ] No existing commands found in stream
[2026-06-27 15:20:00,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:20:00,906.906 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-27 15:20:05,962.962 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 15:20:05,964.964 INFO    ] Checking for system updates...
[2026-06-27 15:20:05,985.985 INFO    ] 200
[2026-06-27 15:20:05,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:20:06,017.017 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:20:06,018.018 INFO    ] No update needed
[2026-06-27 15:20:06,019.019 INFO    ] Checking for camera pi updates...
[2026-06-27 15:20:06,039.039 INFO    ] 200
[2026-06-27 15:20:06,040.040 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:20:06,065.065 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:20:06,112.112 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:20:06,114.114 INFO    ] No camera update needed
[2026-06-27 15:20:06,115.115 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:20:06,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:20:06,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:20:06,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:20:08,161.161 INFO    ] ================================================
[2026-06-27 15:20:08,177.177 INFO    ] Launching Daemon at Sat Jun 27 15:20:08 IST 2026
[2026-06-27 15:20:08,188.188 INFO    ] ================================================
[2026-06-27 15:20:08,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:20:08
[2026-06-27 15:20:08,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:20:09,001.001 INFO    ] Initializing speech engine...
[2026-06-27 15:20:09,012.012 INFO    ] 2026-06-27 15:20:09
[2026-06-27 15:20:09,235.235 INFO    ] 2026-06-27 15:20:09
[2026-06-27 15:20:09,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:20:09,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:20:09,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:20:09,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:20:09,678.678 INFO    ] time= 27/06/2026 15:20:09
[2026-06-27 15:20:09,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:20:09,681.681 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:20:09,790.790 INFO    ] No existing commands found in stream
[2026-06-27 15:20:14,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:20:14,800.800 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-27 15:20:18,275.275 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:20:18,277.277 INFO    ] Checking for system updates...
[2026-06-27 15:20:18,300.300 INFO    ] 200
[2026-06-27 15:20:18,302.302 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:20:18,340.340 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:20:18,342.342 INFO    ] No update needed
[2026-06-27 15:20:18,344.344 INFO    ] Checking for camera pi updates...
[2026-06-27 15:20:18,372.372 INFO    ] 200
[2026-06-27 15:20:18,374.374 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:20:18,410.410 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:20:18,468.468 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:20:18,470.470 INFO    ] No camera update needed
[2026-06-27 15:20:18,471.471 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:20:18,473.473 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:20:18,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:20:18,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:20:20,522.522 INFO    ] ================================================
[2026-06-27 15:20:20,537.537 INFO    ] Launching Daemon at Sat Jun 27 15:20:20 IST 2026
[2026-06-27 15:20:20,548.548 INFO    ] ================================================
[2026-06-27 15:20:20,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:20:20
[2026-06-27 15:20:21,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:20:21,352.352 INFO    ] Initializing speech engine...
[2026-06-27 15:20:21,356.356 INFO    ] 2026-06-27 15:20:21
[2026-06-27 15:20:21,560.560 INFO    ] 2026-06-27 15:20:21
[2026-06-27 15:20:21,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:20:21,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:20:21,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:20:21,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:20:22,001.001 INFO    ] time= 27/06/2026 15:20:21
[2026-06-27 15:20:22,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:20:22,008.008 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:20:22,073.073 INFO    ] No existing commands found in stream
[2026-06-27 15:20:27,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:20:27,087.087 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-27 15:20:27,690.690 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:20:27,691.691 INFO    ] Checking for system updates...
[2026-06-27 15:20:27,714.714 INFO    ] 200
[2026-06-27 15:20:27,716.716 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:20:27,746.746 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:20:27,748.748 INFO    ] No update needed
[2026-06-27 15:20:27,749.749 INFO    ] Checking for camera pi updates...
[2026-06-27 15:20:27,769.769 INFO    ] 200
[2026-06-27 15:20:27,770.770 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:20:27,796.796 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:20:27,843.843 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:20:27,845.845 INFO    ] No camera update needed
[2026-06-27 15:20:27,846.846 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:20:27,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:20:27,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:20:27,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:20:29,892.892 INFO    ] ================================================
[2026-06-27 15:20:29,908.908 INFO    ] Launching Daemon at Sat Jun 27 15:20:29 IST 2026
[2026-06-27 15:20:29,919.919 INFO    ] ================================================
[2026-06-27 15:20:30,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:20:30
[2026-06-27 15:20:30,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:20:30,712.712 INFO    ] Initializing speech engine...
[2026-06-27 15:20:30,720.720 INFO    ] 2026-06-27 15:20:30
[2026-06-27 15:20:30,941.941 INFO    ] 2026-06-27 15:20:30
[2026-06-27 15:20:30,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:20:31,171.171 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:20:31,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:20:31,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:20:31,373.373 INFO    ] time= 27/06/2026 15:20:31
[2026-06-27 15:20:31,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:20:31,425.425 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:20:31,503.503 INFO    ] No existing commands found in stream
[2026-06-27 15:20:36,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:20:36,517.517 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-27 15:20:40,480.480 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:20:40,482.482 INFO    ] Checking for system updates...
[2026-06-27 15:20:40,502.502 INFO    ] 200
[2026-06-27 15:20:40,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:20:40,535.535 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:20:40,536.536 INFO    ] No update needed
[2026-06-27 15:20:40,538.538 INFO    ] Checking for camera pi updates...
[2026-06-27 15:20:40,559.559 INFO    ] 200
[2026-06-27 15:20:40,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:20:40,585.585 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:20:40,630.630 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:20:40,631.631 INFO    ] No camera update needed
[2026-06-27 15:20:40,633.633 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:20:40,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:20:40,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:20:40,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:20:42,678.678 INFO    ] ================================================
[2026-06-27 15:20:42,693.693 INFO    ] Launching Daemon at Sat Jun 27 15:20:42 IST 2026
[2026-06-27 15:20:42,704.704 INFO    ] ================================================
[2026-06-27 15:20:43,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:20:43
[2026-06-27 15:20:43,372.372 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:20:43,516.516 INFO    ] Initializing speech engine...
[2026-06-27 15:20:43,521.521 INFO    ] 2026-06-27 15:20:43
[2026-06-27 15:20:43,729.729 INFO    ] 2026-06-27 15:20:43
[2026-06-27 15:20:43,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:20:43,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:20:43,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:20:44,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:20:44,175.175 INFO    ] time= 27/06/2026 15:20:44
[2026-06-27 15:20:44,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:20:44,183.183 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:20:44,251.251 INFO    ] No existing commands found in stream
[2026-06-27 15:20:49,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:20:50,779.779 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-27 15:20:54,594.594 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 15:20:54,595.595 INFO    ] Checking for system updates...
[2026-06-27 15:20:54,616.616 INFO    ] 200
[2026-06-27 15:20:54,617.617 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:20:54,650.650 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:20:54,652.652 INFO    ] No update needed
[2026-06-27 15:20:54,653.653 INFO    ] Checking for camera pi updates...
[2026-06-27 15:20:54,674.674 INFO    ] 200
[2026-06-27 15:20:54,675.675 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:20:54,699.699 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:20:54,734.734 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:20:54,736.736 INFO    ] No camera update needed
[2026-06-27 15:20:54,737.737 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:20:54,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:20:54,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:20:54,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:20:56,784.784 INFO    ] ================================================
[2026-06-27 15:20:56,799.799 INFO    ] Launching Daemon at Sat Jun 27 15:20:56 IST 2026
[2026-06-27 15:20:56,809.809 INFO    ] ================================================
[2026-06-27 15:20:57,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:20:57
[2026-06-27 15:20:57,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:20:57,580.580 INFO    ] Initializing speech engine...
[2026-06-27 15:20:57,590.590 INFO    ] 2026-06-27 15:20:57
[2026-06-27 15:20:57,795.795 INFO    ] 2026-06-27 15:20:57
[2026-06-27 15:20:57,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:20:58,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:20:58,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:20:58,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:20:58,213.213 INFO    ] time= 27/06/2026 15:20:58
[2026-06-27 15:20:58,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:20:58,242.242 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:20:58,309.309 INFO    ] No existing commands found in stream
[2026-06-27 15:21:03,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:21:03,344.344 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-27 15:21:06,588.588 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 15:21:06,590.590 INFO    ] Checking for system updates...
[2026-06-27 15:21:06,614.614 INFO    ] 200
[2026-06-27 15:21:06,615.615 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:21:06,645.645 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:21:06,647.647 INFO    ] No update needed
[2026-06-27 15:21:06,648.648 INFO    ] Checking for camera pi updates...
[2026-06-27 15:21:06,668.668 INFO    ] 200
[2026-06-27 15:21:06,669.669 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:21:06,696.696 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:21:06,736.736 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:21:06,737.737 INFO    ] No camera update needed
[2026-06-27 15:21:06,738.738 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:21:06,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:21:06,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:21:06,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:21:08,784.784 INFO    ] ================================================
[2026-06-27 15:21:08,799.799 INFO    ] Launching Daemon at Sat Jun 27 15:21:08 IST 2026
[2026-06-27 15:21:08,810.810 INFO    ] ================================================
[2026-06-27 15:21:09,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:21:09
[2026-06-27 15:21:09,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:21:09,654.654 INFO    ] Initializing speech engine...
[2026-06-27 15:21:09,660.660 INFO    ] 2026-06-27 15:21:09
[2026-06-27 15:21:09,867.867 INFO    ] 2026-06-27 15:21:09
[2026-06-27 15:21:09,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:21:10,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:21:10,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:21:10,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:21:10,299.299 INFO    ] time= 27/06/2026 15:21:10
[2026-06-27 15:21:10,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:21:10,328.328 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:21:10,396.396 INFO    ] No existing commands found in stream
[2026-06-27 15:21:15,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:21:15,408.408 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-27 15:21:19,659.659 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 15:21:19,661.661 INFO    ] Checking for system updates...
[2026-06-27 15:21:19,685.685 INFO    ] 200
[2026-06-27 15:21:19,686.686 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:21:19,721.721 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:21:19,723.723 INFO    ] No update needed
[2026-06-27 15:21:19,724.724 INFO    ] Checking for camera pi updates...
[2026-06-27 15:21:19,744.744 INFO    ] 200
[2026-06-27 15:21:19,746.746 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:21:19,769.769 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:21:19,811.811 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:21:19,812.812 INFO    ] No camera update needed
[2026-06-27 15:21:19,813.813 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:21:19,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:21:19,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:21:19,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:21:21,861.861 INFO    ] ================================================
[2026-06-27 15:21:21,876.876 INFO    ] Launching Daemon at Sat Jun 27 15:21:21 IST 2026
[2026-06-27 15:21:21,886.886 INFO    ] ================================================
[2026-06-27 15:21:22,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:21:22
[2026-06-27 15:21:22,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:21:22,701.701 INFO    ] Initializing speech engine...
[2026-06-27 15:21:22,711.711 INFO    ] 2026-06-27 15:21:22
[2026-06-27 15:21:22,917.917 INFO    ] 2026-06-27 15:21:22
[2026-06-27 15:21:22,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:21:23,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:21:23,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:21:23,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:21:23,362.362 INFO    ] time= 27/06/2026 15:21:23
[2026-06-27 15:21:23,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:21:23,390.390 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:21:23,502.502 INFO    ] No existing commands found in stream
[2026-06-27 15:21:28,527.527 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:21:28,530.530 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-27 15:21:31,595.595 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:21:31,597.597 INFO    ] Checking for system updates...
[2026-06-27 15:21:31,618.618 INFO    ] 200
[2026-06-27 15:21:31,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:21:31,653.653 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:21:31,655.655 INFO    ] No update needed
[2026-06-27 15:21:31,656.656 INFO    ] Checking for camera pi updates...
[2026-06-27 15:21:31,676.676 INFO    ] 200
[2026-06-27 15:21:31,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:21:31,701.701 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:21:31,734.734 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:21:31,736.736 INFO    ] No camera update needed
[2026-06-27 15:21:31,737.737 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:21:31,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:21:31,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:21:31,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:21:33,775.775 INFO    ] ================================================
[2026-06-27 15:21:33,790.790 INFO    ] Launching Daemon at Sat Jun 27 15:21:33 IST 2026
[2026-06-27 15:21:33,801.801 INFO    ] ================================================
[2026-06-27 15:21:34,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:21:34
[2026-06-27 15:21:34,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:21:34,658.658 INFO    ] Initializing speech engine...
[2026-06-27 15:21:34,663.663 INFO    ] 2026-06-27 15:21:34
[2026-06-27 15:21:34,871.871 INFO    ] 2026-06-27 15:21:34
[2026-06-27 15:21:34,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:21:35,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:21:35,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:21:35,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:21:35,317.317 INFO    ] time= 27/06/2026 15:21:35
[2026-06-27 15:21:35,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:21:35,320.320 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:21:35,435.435 INFO    ] No existing commands found in stream
[2026-06-27 15:21:40,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:21:40,456.456 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-27 15:21:41,439.439 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 15:21:41,441.441 INFO    ] Checking for system updates...
[2026-06-27 15:21:41,462.462 INFO    ] 200
[2026-06-27 15:21:41,464.464 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:21:41,495.495 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:21:41,497.497 INFO    ] No update needed
[2026-06-27 15:21:41,498.498 INFO    ] Checking for camera pi updates...
[2026-06-27 15:21:41,519.519 INFO    ] 200
[2026-06-27 15:21:41,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:21:41,544.544 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:21:41,595.595 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:21:41,596.596 INFO    ] No camera update needed
[2026-06-27 15:21:41,598.598 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:21:41,599.599 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:21:41,602.602 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:21:41,605.605 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:21:43,647.647 INFO    ] ================================================
[2026-06-27 15:21:43,662.662 INFO    ] Launching Daemon at Sat Jun 27 15:21:43 IST 2026
[2026-06-27 15:21:43,673.673 INFO    ] ================================================
[2026-06-27 15:21:44,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:21:44
[2026-06-27 15:21:44,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:21:44,552.552 INFO    ] Initializing speech engine...
[2026-06-27 15:21:44,558.558 INFO    ] 2026-06-27 15:21:44
[2026-06-27 15:21:44,768.768 INFO    ] 2026-06-27 15:21:44
[2026-06-27 15:21:44,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:21:44,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:21:44,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:21:45,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:21:45,212.212 INFO    ] time= 27/06/2026 15:21:45
[2026-06-27 15:21:45,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:21:45,220.220 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:21:45,288.288 INFO    ] No existing commands found in stream
[2026-06-27 15:21:50,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:21:50,305.305 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-27 15:21:54,576.576 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:21:54,577.577 INFO    ] Checking for system updates...
[2026-06-27 15:21:54,599.599 INFO    ] 200
[2026-06-27 15:21:54,601.601 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:21:54,634.634 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:21:54,636.636 INFO    ] No update needed
[2026-06-27 15:21:54,637.637 INFO    ] Checking for camera pi updates...
[2026-06-27 15:21:54,657.657 INFO    ] 200
[2026-06-27 15:21:54,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:21:54,684.684 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:21:54,809.809 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:21:54,810.810 INFO    ] No camera update needed
[2026-06-27 15:21:54,812.812 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:21:54,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:21:54,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:21:54,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:21:56,861.861 INFO    ] ================================================
[2026-06-27 15:21:56,878.878 INFO    ] Launching Daemon at Sat Jun 27 15:21:56 IST 2026
[2026-06-27 15:21:56,889.889 INFO    ] ================================================
[2026-06-27 15:21:57,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:21:57
[2026-06-27 15:21:57,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:21:57,721.721 INFO    ] Initializing speech engine...
[2026-06-27 15:21:57,726.726 INFO    ] 2026-06-27 15:21:57
[2026-06-27 15:21:57,930.930 INFO    ] 2026-06-27 15:21:57
[2026-06-27 15:21:57,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:21:58,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:21:58,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:21:58,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:21:58,537.537 INFO    ] time= 27/06/2026 15:21:58
[2026-06-27 15:21:58,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:21:58,542.542 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:21:58,635.635 INFO    ] No existing commands found in stream
[2026-06-27 15:22:03,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:22:03,648.648 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-27 15:22:05,908.908 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:22:05,909.909 INFO    ] Checking for system updates...
[2026-06-27 15:22:05,930.930 INFO    ] 200
[2026-06-27 15:22:05,932.932 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:22:05,966.966 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:22:05,967.967 INFO    ] No update needed
[2026-06-27 15:22:05,969.969 INFO    ] Checking for camera pi updates...
[2026-06-27 15:22:05,988.988 INFO    ] 200
[2026-06-27 15:22:05,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:22:06,015.015 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:22:06,059.059 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:22:06,082.082 INFO    ] No camera update needed
[2026-06-27 15:22:06,084.084 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:22:06,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:22:06,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:22:06,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:22:08,131.131 INFO    ] ================================================
[2026-06-27 15:22:08,147.147 INFO    ] Launching Daemon at Sat Jun 27 15:22:08 IST 2026
[2026-06-27 15:22:08,158.158 INFO    ] ================================================
[2026-06-27 15:22:08,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:22:08
[2026-06-27 15:22:08,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:22:08,983.983 INFO    ] Initializing speech engine...
[2026-06-27 15:22:08,988.988 INFO    ] 2026-06-27 15:22:08
[2026-06-27 15:22:09,193.193 INFO    ] 2026-06-27 15:22:09
[2026-06-27 15:22:09,222.222 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:22:09,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:22:09,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:22:09,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:22:09,634.634 INFO    ] time= 27/06/2026 15:22:09
[2026-06-27 15:22:09,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:22:09,640.640 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:22:09,707.707 INFO    ] No existing commands found in stream
[2026-06-27 15:22:14,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:22:14,719.719 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-27 15:22:18,915.915 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 15:22:18,916.916 INFO    ] Checking for system updates...
[2026-06-27 15:22:18,942.942 INFO    ] 200
[2026-06-27 15:22:18,944.944 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-27 15:22:18,945.945 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-27 15:22:18,947.947 INFO    ] Checking for camera pi updates...
[2026-06-27 15:22:18,969.969 INFO    ] 200
[2026-06-27 15:22:18,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-27 15:22:18,972.972 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-27 15:22:18,973.973 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:22:18,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:22:18,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:22:18,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:22:21,025.025 INFO    ] ================================================
[2026-06-27 15:22:21,040.040 INFO    ] Launching Daemon at Sat Jun 27 15:22:21 IST 2026
[2026-06-27 15:22:21,051.051 INFO    ] ================================================
[2026-06-27 15:22:21,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:22:21
[2026-06-27 15:22:21,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:22:21,855.855 INFO    ] Initializing speech engine...
[2026-06-27 15:22:21,860.860 INFO    ] 2026-06-27 15:22:21
[2026-06-27 15:22:22,067.067 INFO    ] 2026-06-27 15:22:22
[2026-06-27 15:22:22,096.096 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:22:22,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:22:22,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:22:22,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:22:22,517.517 INFO    ] time= 27/06/2026 15:22:22
[2026-06-27 15:22:22,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:22:22,524.524 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:22:22,616.616 INFO    ] No existing commands found in stream
[2026-06-27 15:22:27,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:22:27,628.628 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-27 15:22:31,146.146 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:22:31,149.149 INFO    ] Checking for system updates...
[2026-06-27 15:22:31,183.183 INFO    ] 200
[2026-06-27 15:22:31,185.185 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:22:31,220.220 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:22:31,222.222 INFO    ] No update needed
[2026-06-27 15:22:31,224.224 INFO    ] Checking for camera pi updates...
[2026-06-27 15:22:31,246.246 INFO    ] 200
[2026-06-27 15:22:31,248.248 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:22:31,278.278 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:22:31,327.327 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:22:31,329.329 INFO    ] No camera update needed
[2026-06-27 15:22:31,331.331 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:22:31,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:22:31,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:22:31,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:22:33,374.374 INFO    ] ================================================
[2026-06-27 15:22:33,389.389 INFO    ] Launching Daemon at Sat Jun 27 15:22:33 IST 2026
[2026-06-27 15:22:33,400.400 INFO    ] ================================================
[2026-06-27 15:22:33,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:22:33
[2026-06-27 15:22:34,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:22:34,196.196 INFO    ] Initializing speech engine...
[2026-06-27 15:22:34,201.201 INFO    ] 2026-06-27 15:22:34
[2026-06-27 15:22:34,407.407 INFO    ] 2026-06-27 15:22:34
[2026-06-27 15:22:34,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:22:34,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:22:34,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:22:34,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:22:34,849.849 INFO    ] time= 27/06/2026 15:22:34
[2026-06-27 15:22:34,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:22:34,857.857 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:22:34,924.924 INFO    ] No existing commands found in stream
[2026-06-27 15:22:39,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:22:39,936.936 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-27 15:22:41,241.241 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:22:41,242.242 INFO    ] Checking for system updates...
[2026-06-27 15:22:41,264.264 INFO    ] 200
[2026-06-27 15:22:41,266.266 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:22:41,296.296 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:22:41,298.298 INFO    ] No update needed
[2026-06-27 15:22:41,299.299 INFO    ] Checking for camera pi updates...
[2026-06-27 15:22:41,320.320 INFO    ] 200
[2026-06-27 15:22:41,322.322 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:22:41,345.345 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:22:41,388.388 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:22:41,390.390 INFO    ] No camera update needed
[2026-06-27 15:22:41,391.391 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:22:41,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:22:41,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:22:41,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:22:43,436.436 INFO    ] ================================================
[2026-06-27 15:22:43,452.452 INFO    ] Launching Daemon at Sat Jun 27 15:22:43 IST 2026
[2026-06-27 15:22:43,464.464 INFO    ] ================================================
[2026-06-27 15:22:43,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:22:43
[2026-06-27 15:22:44,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:22:44,294.294 INFO    ] Initializing speech engine...
[2026-06-27 15:22:44,299.299 INFO    ] 2026-06-27 15:22:44
[2026-06-27 15:22:44,504.504 INFO    ] 2026-06-27 15:22:44
[2026-06-27 15:22:44,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:22:44,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:22:44,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:22:44,947.947 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:22:44,952.952 INFO    ] time= 27/06/2026 15:22:44
[2026-06-27 15:22:44,954.954 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:22:44,956.956 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:22:45,046.046 INFO    ] No existing commands found in stream
[2026-06-27 15:22:50,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:22:50,058.058 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-27 15:22:54,308.308 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 15:22:54,310.310 INFO    ] Checking for system updates...
[2026-06-27 15:22:54,331.331 INFO    ] 200
[2026-06-27 15:22:54,332.332 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:22:54,363.363 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:22:54,365.365 INFO    ] No update needed
[2026-06-27 15:22:54,366.366 INFO    ] Checking for camera pi updates...
[2026-06-27 15:22:54,387.387 INFO    ] 200
[2026-06-27 15:22:54,389.389 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:22:54,415.415 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:22:54,448.448 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:22:54,449.449 INFO    ] No camera update needed
[2026-06-27 15:22:54,450.450 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:22:54,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:22:54,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:22:54,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:22:56,498.498 INFO    ] ================================================
[2026-06-27 15:22:56,514.514 INFO    ] Launching Daemon at Sat Jun 27 15:22:56 IST 2026
[2026-06-27 15:22:56,526.526 INFO    ] ================================================
[2026-06-27 15:22:56,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:22:56
[2026-06-27 15:22:57,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:22:57,336.336 INFO    ] Initializing speech engine...
[2026-06-27 15:22:57,340.340 INFO    ] 2026-06-27 15:22:57
[2026-06-27 15:22:57,571.571 INFO    ] 2026-06-27 15:22:57
[2026-06-27 15:22:57,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:22:57,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:22:57,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:22:58,044.044 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:22:58,050.050 INFO    ] time= 27/06/2026 15:22:58
[2026-06-27 15:22:58,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:22:58,053.053 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:22:58,128.128 INFO    ] No existing commands found in stream
[2026-06-27 15:23:03,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:23:03,139.139 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-27 15:23:05,098.098 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:23:05,099.099 INFO    ] Checking for system updates...
[2026-06-27 15:23:05,120.120 INFO    ] 200
[2026-06-27 15:23:05,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:23:05,152.152 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:23:05,153.153 INFO    ] No update needed
[2026-06-27 15:23:05,155.155 INFO    ] Checking for camera pi updates...
[2026-06-27 15:23:05,177.177 INFO    ] 200
[2026-06-27 15:23:05,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:23:05,203.203 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:23:05,252.252 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:23:05,253.253 INFO    ] No camera update needed
[2026-06-27 15:23:05,255.255 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:23:05,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:23:05,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:23:05,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:23:07,301.301 INFO    ] ================================================
[2026-06-27 15:23:07,317.317 INFO    ] Launching Daemon at Sat Jun 27 15:23:07 IST 2026
[2026-06-27 15:23:07,328.328 INFO    ] ================================================
[2026-06-27 15:23:07,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:23:07
[2026-06-27 15:23:07,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:23:08,138.138 INFO    ] Initializing speech engine...
[2026-06-27 15:23:08,143.143 INFO    ] 2026-06-27 15:23:08
[2026-06-27 15:23:08,348.348 INFO    ] 2026-06-27 15:23:08
[2026-06-27 15:23:08,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:23:08,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:23:08,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:23:08,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:23:08,752.752 INFO    ] time= 27/06/2026 15:23:08
[2026-06-27 15:23:08,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:23:08,792.792 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:23:08,863.863 INFO    ] No existing commands found in stream
[2026-06-27 15:23:13,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:23:13,876.876 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-27 15:23:17,830.830 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:23:17,831.831 INFO    ] Checking for system updates...
[2026-06-27 15:23:17,880.880 INFO    ] 200
[2026-06-27 15:23:17,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:23:17,912.912 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:23:17,914.914 INFO    ] No update needed
[2026-06-27 15:23:17,915.915 INFO    ] Checking for camera pi updates...
[2026-06-27 15:23:17,937.937 INFO    ] 200
[2026-06-27 15:23:17,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:23:17,965.965 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:23:18,011.011 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:23:18,013.013 INFO    ] No camera update needed
[2026-06-27 15:23:18,015.015 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:23:18,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:23:18,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:23:18,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:23:20,062.062 INFO    ] ================================================
[2026-06-27 15:23:20,080.080 INFO    ] Launching Daemon at Sat Jun 27 15:23:20 IST 2026
[2026-06-27 15:23:20,097.097 INFO    ] ================================================
[2026-06-27 15:23:20,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:23:20
[2026-06-27 15:23:20,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:23:20,899.899 INFO    ] Initializing speech engine...
[2026-06-27 15:23:20,906.906 INFO    ] 2026-06-27 15:23:20
[2026-06-27 15:23:21,135.135 INFO    ] 2026-06-27 15:23:21
[2026-06-27 15:23:21,165.165 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:23:21,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:23:21,370.370 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:23:21,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:23:21,503.503 INFO    ] time= 27/06/2026 15:23:21
[2026-06-27 15:23:21,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:23:21,586.586 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:23:21,678.678 INFO    ] No existing commands found in stream
[2026-06-27 15:23:26,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:23:26,692.692 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-27 15:23:29,485.485 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:23:29,486.486 INFO    ] Checking for system updates...
[2026-06-27 15:23:29,507.507 INFO    ] 200
[2026-06-27 15:23:29,509.509 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:23:29,539.539 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:23:29,541.541 INFO    ] No update needed
[2026-06-27 15:23:29,542.542 INFO    ] Checking for camera pi updates...
[2026-06-27 15:23:29,562.562 INFO    ] 200
[2026-06-27 15:23:29,563.563 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:23:29,588.588 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:23:29,632.632 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:23:29,633.633 INFO    ] No camera update needed
[2026-06-27 15:23:29,634.634 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:23:29,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:23:29,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:23:29,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:23:31,674.674 INFO    ] ================================================
[2026-06-27 15:23:31,684.684 INFO    ] Launching Daemon at Sat Jun 27 15:23:31 IST 2026
[2026-06-27 15:23:31,690.690 INFO    ] ================================================
[2026-06-27 15:23:32,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:23:32
[2026-06-27 15:23:32,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:23:32,500.500 INFO    ] Initializing speech engine...
[2026-06-27 15:23:32,510.510 INFO    ] 2026-06-27 15:23:32
[2026-06-27 15:23:32,716.716 INFO    ] 2026-06-27 15:23:32
[2026-06-27 15:23:32,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:23:32,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:23:32,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:23:33,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:23:33,159.159 INFO    ] time= 27/06/2026 15:23:33
[2026-06-27 15:23:33,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:23:33,162.162 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:23:33,227.227 INFO    ] No existing commands found in stream
[2026-06-27 15:23:38,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:23:38,240.240 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-27 15:23:42,169.169 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:23:42,170.170 INFO    ] Checking for system updates...
[2026-06-27 15:23:42,191.191 INFO    ] 200
[2026-06-27 15:23:42,193.193 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:23:42,224.224 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:23:42,225.225 INFO    ] No update needed
[2026-06-27 15:23:42,227.227 INFO    ] Checking for camera pi updates...
[2026-06-27 15:23:42,247.247 INFO    ] 200
[2026-06-27 15:23:42,248.248 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:23:42,273.273 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:23:42,328.328 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:23:42,329.329 INFO    ] No camera update needed
[2026-06-27 15:23:42,331.331 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:23:42,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:23:42,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:23:42,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:23:44,377.377 INFO    ] ================================================
[2026-06-27 15:23:44,393.393 INFO    ] Launching Daemon at Sat Jun 27 15:23:44 IST 2026
[2026-06-27 15:23:44,403.403 INFO    ] ================================================
[2026-06-27 15:23:44,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:23:44
[2026-06-27 15:23:45,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:23:45,219.219 INFO    ] Initializing speech engine...
[2026-06-27 15:23:45,229.229 INFO    ] 2026-06-27 15:23:45
[2026-06-27 15:23:45,432.432 INFO    ] 2026-06-27 15:23:45
[2026-06-27 15:23:45,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:23:45,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:23:45,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:23:45,865.865 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:23:45,871.871 INFO    ] time= 27/06/2026 15:23:45
[2026-06-27 15:23:45,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:23:45,875.875 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:23:45,939.939 INFO    ] No existing commands found in stream
[2026-06-27 15:23:50,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:23:50,953.953 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-27 15:23:52,504.504 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:23:52,505.505 INFO    ] Checking for system updates...
[2026-06-27 15:23:52,526.526 INFO    ] 200
[2026-06-27 15:23:52,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:23:52,558.558 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:23:52,559.559 INFO    ] No update needed
[2026-06-27 15:23:52,560.560 INFO    ] Checking for camera pi updates...
[2026-06-27 15:23:52,584.584 INFO    ] 200
[2026-06-27 15:23:52,586.586 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:23:52,611.611 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:23:52,651.651 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:23:52,653.653 INFO    ] No camera update needed
[2026-06-27 15:23:52,654.654 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:23:52,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:23:52,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:23:52,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:23:54,699.699 INFO    ] ================================================
[2026-06-27 15:23:54,714.714 INFO    ] Launching Daemon at Sat Jun 27 15:23:54 IST 2026
[2026-06-27 15:23:54,725.725 INFO    ] ================================================
[2026-06-27 15:23:55,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:23:55
[2026-06-27 15:23:55,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:23:55,534.534 INFO    ] Initializing speech engine...
[2026-06-27 15:23:55,547.547 INFO    ] 2026-06-27 15:23:55
[2026-06-27 15:23:55,758.758 INFO    ] 2026-06-27 15:23:55
[2026-06-27 15:23:55,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:23:55,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:23:55,974.974 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:23:56,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:23:56,177.177 INFO    ] time= 27/06/2026 15:23:56
[2026-06-27 15:23:56,206.206 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:23:56,212.212 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:23:56,279.279 INFO    ] No existing commands found in stream
[2026-06-27 15:24:01,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:24:01,297.297 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-27 15:24:03,379.379 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:24:03,380.380 INFO    ] Checking for system updates...
[2026-06-27 15:24:03,401.401 INFO    ] 200
[2026-06-27 15:24:03,403.403 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:24:03,434.434 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:24:03,435.435 INFO    ] No update needed
[2026-06-27 15:24:03,437.437 INFO    ] Checking for camera pi updates...
[2026-06-27 15:24:03,458.458 INFO    ] 200
[2026-06-27 15:24:03,460.460 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:24:03,483.483 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:24:03,528.528 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:24:03,530.530 INFO    ] No camera update needed
[2026-06-27 15:24:03,531.531 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:24:03,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:24:03,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:24:03,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:24:05,578.578 INFO    ] ================================================
[2026-06-27 15:24:05,595.595 INFO    ] Launching Daemon at Sat Jun 27 15:24:05 IST 2026
[2026-06-27 15:24:05,615.615 INFO    ] ================================================
[2026-06-27 15:24:05,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:24:05
[2026-06-27 15:24:06,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:24:06,420.420 INFO    ] Initializing speech engine...
[2026-06-27 15:24:06,430.430 INFO    ] 2026-06-27 15:24:06
[2026-06-27 15:24:06,647.647 INFO    ] 2026-06-27 15:24:06
[2026-06-27 15:24:06,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:24:06,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:24:06,871.871 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:24:07,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:24:07,069.069 INFO    ] time= 27/06/2026 15:24:07
[2026-06-27 15:24:07,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:24:07,098.098 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:24:07,170.170 INFO    ] No existing commands found in stream
[2026-06-27 15:24:12,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:24:12,200.200 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-27 15:24:15,540.540 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:24:15,542.542 INFO    ] Checking for system updates...
[2026-06-27 15:24:15,563.563 INFO    ] 200
[2026-06-27 15:24:15,564.564 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:24:15,595.595 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:24:15,596.596 INFO    ] No update needed
[2026-06-27 15:24:15,598.598 INFO    ] Checking for camera pi updates...
[2026-06-27 15:24:15,620.620 INFO    ] 200
[2026-06-27 15:24:15,621.621 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:24:15,646.646 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:24:15,685.685 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:24:15,686.686 INFO    ] No camera update needed
[2026-06-27 15:24:15,688.688 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:24:15,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:24:15,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:24:15,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:24:17,733.733 INFO    ] ================================================
[2026-06-27 15:24:17,748.748 INFO    ] Launching Daemon at Sat Jun 27 15:24:17 IST 2026
[2026-06-27 15:24:17,759.759 INFO    ] ================================================
[2026-06-27 15:24:18,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:24:18
[2026-06-27 15:24:18,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:24:18,566.566 INFO    ] Initializing speech engine...
[2026-06-27 15:24:18,579.579 INFO    ] 2026-06-27 15:24:18
[2026-06-27 15:24:18,800.800 INFO    ] 2026-06-27 15:24:18
[2026-06-27 15:24:18,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:24:18,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:24:19,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:24:19,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:24:19,282.282 INFO    ] time= 27/06/2026 15:24:19
[2026-06-27 15:24:19,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:24:19,289.289 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:24:19,362.362 INFO    ] No existing commands found in stream
[2026-06-27 15:24:24,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:24:24,374.374 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-27 15:24:28,680.680 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:24:28,682.682 INFO    ] Checking for system updates...
[2026-06-27 15:24:28,702.702 INFO    ] 200
[2026-06-27 15:24:28,704.704 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:24:28,735.735 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:24:28,736.736 INFO    ] No update needed
[2026-06-27 15:24:28,738.738 INFO    ] Checking for camera pi updates...
[2026-06-27 15:24:28,760.760 INFO    ] 200
[2026-06-27 15:24:28,761.761 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:24:28,784.784 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:24:28,831.831 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:24:28,833.833 INFO    ] No camera update needed
[2026-06-27 15:24:28,834.834 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:24:28,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:24:28,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:24:28,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:24:30,879.879 INFO    ] ================================================
[2026-06-27 15:24:30,895.895 INFO    ] Launching Daemon at Sat Jun 27 15:24:30 IST 2026
[2026-06-27 15:24:30,906.906 INFO    ] ================================================
[2026-06-27 15:24:31,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:24:31
[2026-06-27 15:24:31,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:24:31,720.720 INFO    ] Initializing speech engine...
[2026-06-27 15:24:31,732.732 INFO    ] 2026-06-27 15:24:31
[2026-06-27 15:24:31,936.936 INFO    ] 2026-06-27 15:24:31
[2026-06-27 15:24:31,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:24:32,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:24:32,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:24:32,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:24:32,452.452 INFO    ] time= 27/06/2026 15:24:32
[2026-06-27 15:24:32,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:24:32,455.455 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:24:32,523.523 INFO    ] No existing commands found in stream
[2026-06-27 15:24:37,532.532 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:24:37,535.535 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-27 15:24:38,996.996 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 15:24:38,997.997 INFO    ] Checking for system updates...
[2026-06-27 15:24:39,020.020 INFO    ] 200
[2026-06-27 15:24:39,021.021 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:24:39,054.054 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:24:39,055.055 INFO    ] No update needed
[2026-06-27 15:24:39,057.057 INFO    ] Checking for camera pi updates...
[2026-06-27 15:24:39,078.078 INFO    ] 200
[2026-06-27 15:24:39,079.079 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:24:39,102.102 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:24:39,142.142 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:24:39,143.143 INFO    ] No camera update needed
[2026-06-27 15:24:39,145.145 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:24:39,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:24:39,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:24:39,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:24:41,194.194 INFO    ] ================================================
[2026-06-27 15:24:41,210.210 INFO    ] Launching Daemon at Sat Jun 27 15:24:41 IST 2026
[2026-06-27 15:24:41,221.221 INFO    ] ================================================
[2026-06-27 15:24:41,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:24:41
[2026-06-27 15:24:41,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:24:42,033.033 INFO    ] Initializing speech engine...
[2026-06-27 15:24:42,044.044 INFO    ] 2026-06-27 15:24:42
[2026-06-27 15:24:42,261.261 INFO    ] 2026-06-27 15:24:42
[2026-06-27 15:24:42,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:24:42,453.453 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:24:42,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:24:42,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:24:42,691.691 INFO    ] time= 27/06/2026 15:24:42
[2026-06-27 15:24:42,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:24:42,748.748 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:24:42,816.816 INFO    ] No existing commands found in stream
[2026-06-27 15:24:47,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:24:47,827.827 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-27 15:24:52,144.144 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 15:24:52,145.145 INFO    ] Checking for system updates...
[2026-06-27 15:24:52,166.166 INFO    ] 200
[2026-06-27 15:24:52,167.167 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:24:52,200.200 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:24:52,201.201 INFO    ] No update needed
[2026-06-27 15:24:52,202.202 INFO    ] Checking for camera pi updates...
[2026-06-27 15:24:52,224.224 INFO    ] 200
[2026-06-27 15:24:52,225.225 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:24:52,248.248 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:24:52,292.292 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:24:52,294.294 INFO    ] No camera update needed
[2026-06-27 15:24:52,295.295 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:24:52,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:24:52,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:24:52,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:24:54,341.341 INFO    ] ================================================
[2026-06-27 15:24:54,357.357 INFO    ] Launching Daemon at Sat Jun 27 15:24:54 IST 2026
[2026-06-27 15:24:54,368.368 INFO    ] ================================================
[2026-06-27 15:24:54,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:24:54
[2026-06-27 15:24:55,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:24:55,224.224 INFO    ] Initializing speech engine...
[2026-06-27 15:24:55,227.227 INFO    ] 2026-06-27 15:24:55
[2026-06-27 15:24:55,432.432 INFO    ] 2026-06-27 15:24:55
[2026-06-27 15:24:55,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:24:55,645.645 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:24:55,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:24:55,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:24:55,872.872 INFO    ] time= 27/06/2026 15:24:55
[2026-06-27 15:24:55,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:24:55,879.879 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:24:55,970.970 INFO    ] No existing commands found in stream
[2026-06-27 15:25:00,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:25:00,982.982 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-27 15:25:02,290.290 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:25:02,292.292 INFO    ] Checking for system updates...
[2026-06-27 15:25:02,319.319 INFO    ] 200
[2026-06-27 15:25:02,321.321 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:25:02,367.367 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:25:02,369.369 INFO    ] No update needed
[2026-06-27 15:25:02,371.371 INFO    ] Checking for camera pi updates...
[2026-06-27 15:25:02,399.399 INFO    ] 200
[2026-06-27 15:25:02,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:25:02,431.431 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:25:02,469.469 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:25:02,471.471 INFO    ] No camera update needed
[2026-06-27 15:25:02,473.473 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:25:02,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:25:02,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:25:02,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:25:04,524.524 INFO    ] ================================================
[2026-06-27 15:25:04,539.539 INFO    ] Launching Daemon at Sat Jun 27 15:25:04 IST 2026
[2026-06-27 15:25:04,551.551 INFO    ] ================================================
[2026-06-27 15:25:04,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:25:04
[2026-06-27 15:25:05,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:25:05,365.365 INFO    ] Initializing speech engine...
[2026-06-27 15:25:05,370.370 INFO    ] 2026-06-27 15:25:05
[2026-06-27 15:25:05,575.575 INFO    ] 2026-06-27 15:25:05
[2026-06-27 15:25:05,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:25:05,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:25:05,848.848 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:25:06,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:25:06,030.030 INFO    ] time= 27/06/2026 15:25:06
[2026-06-27 15:25:06,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:25:06,061.061 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:25:06,176.176 INFO    ] No existing commands found in stream
[2026-06-27 15:25:11,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:25:11,188.188 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-27 15:25:15,491.491 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:25:15,494.494 INFO    ] Checking for system updates...
[2026-06-27 15:25:15,530.530 INFO    ] 200
[2026-06-27 15:25:15,533.533 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:25:15,588.588 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:25:15,590.590 INFO    ] No update needed
[2026-06-27 15:25:15,591.591 INFO    ] Checking for camera pi updates...
[2026-06-27 15:25:15,611.611 INFO    ] 200
[2026-06-27 15:25:15,613.613 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:25:15,636.636 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:25:15,689.689 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:25:15,691.691 INFO    ] No camera update needed
[2026-06-27 15:25:15,692.692 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:25:15,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:25:15,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:25:15,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:25:17,739.739 INFO    ] ================================================
[2026-06-27 15:25:17,755.755 INFO    ] Launching Daemon at Sat Jun 27 15:25:17 IST 2026
[2026-06-27 15:25:17,766.766 INFO    ] ================================================
[2026-06-27 15:25:18,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:25:18
[2026-06-27 15:25:18,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:25:18,545.545 INFO    ] Initializing speech engine...
[2026-06-27 15:25:18,554.554 INFO    ] 2026-06-27 15:25:18
[2026-06-27 15:25:18,762.762 INFO    ] 2026-06-27 15:25:18
[2026-06-27 15:25:18,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:25:19,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:25:19,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:25:19,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:25:19,185.185 INFO    ] time= 27/06/2026 15:25:19
[2026-06-27 15:25:19,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:25:19,215.215 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:25:19,308.308 INFO    ] No existing commands found in stream
[2026-06-27 15:25:24,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:25:24,324.324 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-27 15:25:26,685.685 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:25:26,686.686 INFO    ] Checking for system updates...
[2026-06-27 15:25:26,707.707 INFO    ] 200
[2026-06-27 15:25:26,708.708 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:25:26,739.739 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:25:26,740.740 INFO    ] No update needed
[2026-06-27 15:25:26,742.742 INFO    ] Checking for camera pi updates...
[2026-06-27 15:25:26,761.761 INFO    ] 200
[2026-06-27 15:25:26,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:25:26,789.789 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:25:26,833.833 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:25:26,834.834 INFO    ] No camera update needed
[2026-06-27 15:25:26,835.835 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:25:26,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:25:26,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:25:26,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:25:28,883.883 INFO    ] ================================================
[2026-06-27 15:25:28,898.898 INFO    ] Launching Daemon at Sat Jun 27 15:25:28 IST 2026
[2026-06-27 15:25:28,908.908 INFO    ] ================================================
[2026-06-27 15:25:29,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:25:29
[2026-06-27 15:25:29,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:25:29,727.727 INFO    ] Initializing speech engine...
[2026-06-27 15:25:29,737.737 INFO    ] 2026-06-27 15:25:29
[2026-06-27 15:25:29,942.942 INFO    ] 2026-06-27 15:25:29
[2026-06-27 15:25:29,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:25:30,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:25:30,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:25:30,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:25:30,385.385 INFO    ] time= 27/06/2026 15:25:30
[2026-06-27 15:25:30,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:25:30,392.392 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:25:30,459.459 INFO    ] No existing commands found in stream
[2026-06-27 15:25:35,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:25:35,495.495 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-27 15:25:36,786.786 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:25:36,788.788 INFO    ] Checking for system updates...
[2026-06-27 15:25:36,809.809 INFO    ] 200
[2026-06-27 15:25:36,810.810 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:25:36,842.842 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:25:36,843.843 INFO    ] No update needed
[2026-06-27 15:25:36,845.845 INFO    ] Checking for camera pi updates...
[2026-06-27 15:25:36,864.864 INFO    ] 200
[2026-06-27 15:25:36,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:25:36,889.889 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:25:36,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:25:36,942.942 INFO    ] No camera update needed
[2026-06-27 15:25:36,943.943 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:25:36,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:25:36,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:25:36,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:25:38,989.989 INFO    ] ================================================
[2026-06-27 15:25:39,005.005 INFO    ] Launching Daemon at Sat Jun 27 15:25:38 IST 2026
[2026-06-27 15:25:39,015.015 INFO    ] ================================================
[2026-06-27 15:25:39,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:25:39
[2026-06-27 15:25:39,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:25:39,811.811 INFO    ] Initializing speech engine...
[2026-06-27 15:25:39,821.821 INFO    ] 2026-06-27 15:25:39
[2026-06-27 15:25:40,026.026 INFO    ] 2026-06-27 15:25:40
[2026-06-27 15:25:40,054.054 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:25:40,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:25:40,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:25:40,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:25:40,442.442 INFO    ] time= 27/06/2026 15:25:40
[2026-06-27 15:25:40,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:25:40,471.471 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:25:40,563.563 INFO    ] No existing commands found in stream
[2026-06-27 15:25:45,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:25:45,580.580 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-27 15:25:46,600.600 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:25:46,602.602 INFO    ] Checking for system updates...
[2026-06-27 15:25:46,624.624 INFO    ] 200
[2026-06-27 15:25:46,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:25:46,659.659 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:25:46,661.661 INFO    ] No update needed
[2026-06-27 15:25:46,662.662 INFO    ] Checking for camera pi updates...
[2026-06-27 15:25:46,681.681 INFO    ] 200
[2026-06-27 15:25:46,683.683 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:25:46,706.706 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:25:46,748.748 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:25:46,749.749 INFO    ] No camera update needed
[2026-06-27 15:25:46,751.751 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:25:46,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:25:46,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:25:46,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:25:48,798.798 INFO    ] ================================================
[2026-06-27 15:25:48,813.813 INFO    ] Launching Daemon at Sat Jun 27 15:25:48 IST 2026
[2026-06-27 15:25:48,824.824 INFO    ] ================================================
[2026-06-27 15:25:49,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:25:49
[2026-06-27 15:25:49,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:25:49,671.671 INFO    ] Initializing speech engine...
[2026-06-27 15:25:49,682.682 INFO    ] 2026-06-27 15:25:49
[2026-06-27 15:25:49,888.888 INFO    ] 2026-06-27 15:25:49
[2026-06-27 15:25:49,917.917 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:25:50,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:25:50,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:25:50,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:25:50,339.339 INFO    ] time= 27/06/2026 15:25:50
[2026-06-27 15:25:50,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:25:50,342.342 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:25:50,434.434 INFO    ] No existing commands found in stream
[2026-06-27 15:25:55,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:25:55,446.446 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-27 15:25:59,665.665 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 15:25:59,666.666 INFO    ] Checking for system updates...
[2026-06-27 15:25:59,687.687 INFO    ] 200
[2026-06-27 15:25:59,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:25:59,719.719 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:25:59,720.720 INFO    ] No update needed
[2026-06-27 15:25:59,722.722 INFO    ] Checking for camera pi updates...
[2026-06-27 15:25:59,743.743 INFO    ] 200
[2026-06-27 15:25:59,744.744 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:25:59,768.768 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:25:59,809.809 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:25:59,810.810 INFO    ] No camera update needed
[2026-06-27 15:25:59,811.811 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:25:59,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:25:59,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:25:59,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:26:01,860.860 INFO    ] ================================================
[2026-06-27 15:26:01,875.875 INFO    ] Launching Daemon at Sat Jun 27 15:26:01 IST 2026
[2026-06-27 15:26:01,886.886 INFO    ] ================================================
[2026-06-27 15:26:02,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:26:02
[2026-06-27 15:26:02,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:26:02,961.961 INFO    ] Initializing speech engine...
[2026-06-27 15:26:02,964.964 INFO    ] 2026-06-27 15:26:02
[2026-06-27 15:26:03,169.169 INFO    ] 2026-06-27 15:26:03
[2026-06-27 15:26:03,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:26:03,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:26:03,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:26:03,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:26:03,649.649 INFO    ] time= 27/06/2026 15:26:03
[2026-06-27 15:26:03,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:26:03,701.701 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:26:03,780.780 INFO    ] No existing commands found in stream
[2026-06-27 15:26:08,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:26:08,794.794 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-27 15:26:10,258.258 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 15:26:10,260.260 INFO    ] Checking for system updates...
[2026-06-27 15:26:10,281.281 INFO    ] 200
[2026-06-27 15:26:10,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:26:10,313.313 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:26:10,315.315 INFO    ] No update needed
[2026-06-27 15:26:10,316.316 INFO    ] Checking for camera pi updates...
[2026-06-27 15:26:10,337.337 INFO    ] 200
[2026-06-27 15:26:10,339.339 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:26:10,365.365 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:26:10,509.509 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:26:10,510.510 INFO    ] No camera update needed
[2026-06-27 15:26:10,512.512 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:26:10,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:26:10,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:26:10,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:26:12,559.559 INFO    ] ================================================
[2026-06-27 15:26:12,574.574 INFO    ] Launching Daemon at Sat Jun 27 15:26:12 IST 2026
[2026-06-27 15:26:12,585.585 INFO    ] ================================================
[2026-06-27 15:26:12,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:26:12
[2026-06-27 15:26:13,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:26:13,355.355 INFO    ] Initializing speech engine...
[2026-06-27 15:26:13,359.359 INFO    ] 2026-06-27 15:26:13
[2026-06-27 15:26:13,581.581 INFO    ] 2026-06-27 15:26:13
[2026-06-27 15:26:13,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:26:13,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:26:13,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:26:13,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:26:14,008.008 INFO    ] time= 27/06/2026 15:26:13
[2026-06-27 15:26:14,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:26:14,037.037 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:26:14,103.103 INFO    ] No existing commands found in stream
[2026-06-27 15:26:19,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:26:19,117.117 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-27 15:26:21,799.799 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 15:26:21,800.800 INFO    ] Checking for system updates...
[2026-06-27 15:26:21,822.822 INFO    ] 200
[2026-06-27 15:26:21,825.825 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:26:21,856.856 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:26:21,858.858 INFO    ] No update needed
[2026-06-27 15:26:21,859.859 INFO    ] Checking for camera pi updates...
[2026-06-27 15:26:21,879.879 INFO    ] 200
[2026-06-27 15:26:21,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:26:21,905.905 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:26:21,950.950 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:26:21,951.951 INFO    ] No camera update needed
[2026-06-27 15:26:21,952.952 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:26:21,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:26:21,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:26:21,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:26:24,999.999 INFO    ] ================================================
[2026-06-27 15:26:24,014.014 INFO    ] Launching Daemon at Sat Jun 27 15:26:24 IST 2026
[2026-06-27 15:26:24,025.025 INFO    ] ================================================
[2026-06-27 15:26:24,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:26:24
[2026-06-27 15:26:24,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:26:24,841.841 INFO    ] Initializing speech engine...
[2026-06-27 15:26:24,847.847 INFO    ] 2026-06-27 15:26:24
[2026-06-27 15:26:25,050.050 INFO    ] 2026-06-27 15:26:25
[2026-06-27 15:26:25,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:26:25,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:26:25,274.274 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:26:25,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:26:25,490.490 INFO    ] time= 27/06/2026 15:26:25
[2026-06-27 15:26:25,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:26:25,497.497 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:26:25,587.587 INFO    ] No existing commands found in stream
[2026-06-27 15:26:30,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:26:30,599.599 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-27 15:26:31,350.350 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:26:31,351.351 INFO    ] Checking for system updates...
[2026-06-27 15:26:31,373.373 INFO    ] 200
[2026-06-27 15:26:31,374.374 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:26:31,405.405 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:26:31,406.406 INFO    ] No update needed
[2026-06-27 15:26:31,408.408 INFO    ] Checking for camera pi updates...
[2026-06-27 15:26:31,427.427 INFO    ] 200
[2026-06-27 15:26:31,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:26:31,453.453 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:26:31,495.495 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:26:31,497.497 INFO    ] No camera update needed
[2026-06-27 15:26:31,498.498 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:26:31,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:26:31,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:26:31,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:26:33,530.530 INFO    ] ================================================
[2026-06-27 15:26:33,539.539 INFO    ] Launching Daemon at Sat Jun 27 15:26:33 IST 2026
[2026-06-27 15:26:33,545.545 INFO    ] ================================================
[2026-06-27 15:26:33,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:26:33
[2026-06-27 15:26:34,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:26:34,342.342 INFO    ] Initializing speech engine...
[2026-06-27 15:26:34,354.354 INFO    ] 2026-06-27 15:26:34
[2026-06-27 15:26:34,561.561 INFO    ] 2026-06-27 15:26:34
[2026-06-27 15:26:34,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:26:34,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:26:34,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:26:35,068.068 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:26:35,072.072 INFO    ] time= 27/06/2026 15:26:35
[2026-06-27 15:26:35,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:26:35,104.104 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:26:35,197.197 INFO    ] No existing commands found in stream
[2026-06-27 15:26:40,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:26:40,209.209 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-27 15:26:42,915.915 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 15:26:42,917.917 INFO    ] Checking for system updates...
[2026-06-27 15:26:42,937.937 INFO    ] 200
[2026-06-27 15:26:42,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:26:42,969.969 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:26:42,970.970 INFO    ] No update needed
[2026-06-27 15:26:42,971.971 INFO    ] Checking for camera pi updates...
[2026-06-27 15:26:42,990.990 INFO    ] 200
[2026-06-27 15:26:42,992.992 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:26:43,015.015 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:26:43,060.060 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:26:43,061.061 INFO    ] No camera update needed
[2026-06-27 15:26:43,063.063 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:26:43,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:26:43,068.068 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:26:43,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:26:45,110.110 INFO    ] ================================================
[2026-06-27 15:26:45,126.126 INFO    ] Launching Daemon at Sat Jun 27 15:26:45 IST 2026
[2026-06-27 15:26:45,137.137 INFO    ] ================================================
[2026-06-27 15:26:45,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:26:45
[2026-06-27 15:26:45,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:26:45,953.953 INFO    ] Initializing speech engine...
[2026-06-27 15:26:45,963.963 INFO    ] 2026-06-27 15:26:45
[2026-06-27 15:26:46,170.170 INFO    ] 2026-06-27 15:26:46
[2026-06-27 15:26:46,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:26:46,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:26:46,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:26:46,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:26:46,614.614 INFO    ] time= 27/06/2026 15:26:46
[2026-06-27 15:26:46,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:26:46,621.621 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:26:46,687.687 INFO    ] No existing commands found in stream
[2026-06-27 15:26:51,698.698 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:26:51,701.701 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-27 15:26:53,720.720 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:26:53,721.721 INFO    ] Checking for system updates...
[2026-06-27 15:26:53,742.742 INFO    ] 200
[2026-06-27 15:26:53,743.743 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:26:53,774.774 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:26:53,776.776 INFO    ] No update needed
[2026-06-27 15:26:53,777.777 INFO    ] Checking for camera pi updates...
[2026-06-27 15:26:53,797.797 INFO    ] 200
[2026-06-27 15:26:53,798.798 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:26:53,823.823 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:26:53,872.872 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:26:53,873.873 INFO    ] No camera update needed
[2026-06-27 15:26:53,875.875 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:26:53,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:26:53,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:26:53,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:26:55,920.920 INFO    ] ================================================
[2026-06-27 15:26:55,935.935 INFO    ] Launching Daemon at Sat Jun 27 15:26:55 IST 2026
[2026-06-27 15:26:55,946.946 INFO    ] ================================================
[2026-06-27 15:26:56,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:26:56
[2026-06-27 15:26:56,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:26:56,738.738 INFO    ] Initializing speech engine...
[2026-06-27 15:26:56,750.750 INFO    ] 2026-06-27 15:26:56
[2026-06-27 15:26:56,959.959 INFO    ] 2026-06-27 15:26:56
[2026-06-27 15:26:56,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:26:57,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:26:57,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:26:57,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:26:57,408.408 INFO    ] time= 27/06/2026 15:26:57
[2026-06-27 15:26:57,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:26:57,417.417 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:26:57,484.484 INFO    ] No existing commands found in stream
[2026-06-27 15:27:02,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:27:02,494.494 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-27 15:27:05,765.765 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:27:05,766.766 INFO    ] Checking for system updates...
[2026-06-27 15:27:05,787.787 INFO    ] 200
[2026-06-27 15:27:05,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:27:05,818.818 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:27:05,819.819 INFO    ] No update needed
[2026-06-27 15:27:05,821.821 INFO    ] Checking for camera pi updates...
[2026-06-27 15:27:05,840.840 INFO    ] 200
[2026-06-27 15:27:05,841.841 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:27:05,865.865 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:27:05,910.910 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:27:05,911.911 INFO    ] No camera update needed
[2026-06-27 15:27:05,912.912 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:27:05,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:27:05,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:27:05,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:27:07,958.958 INFO    ] ================================================
[2026-06-27 15:27:07,973.973 INFO    ] Launching Daemon at Sat Jun 27 15:27:07 IST 2026
[2026-06-27 15:27:07,984.984 INFO    ] ================================================
[2026-06-27 15:27:08,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:27:08
[2026-06-27 15:27:08,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:27:08,783.783 INFO    ] Initializing speech engine...
[2026-06-27 15:27:08,788.788 INFO    ] 2026-06-27 15:27:08
[2026-06-27 15:27:08,992.992 INFO    ] 2026-06-27 15:27:08
[2026-06-27 15:27:09,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:27:09,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:27:09,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:27:09,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:27:09,430.430 INFO    ] time= 27/06/2026 15:27:09
[2026-06-27 15:27:09,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:27:09,438.438 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:27:09,506.506 INFO    ] No existing commands found in stream
[2026-06-27 15:27:14,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:27:14,517.517 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-27 15:27:15,043.043 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 15:27:15,045.045 INFO    ] Checking for system updates...
[2026-06-27 15:27:15,066.066 INFO    ] 200
[2026-06-27 15:27:15,068.068 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:27:15,099.099 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:27:15,100.100 INFO    ] No update needed
[2026-06-27 15:27:15,102.102 INFO    ] Checking for camera pi updates...
[2026-06-27 15:27:15,121.121 INFO    ] 200
[2026-06-27 15:27:15,123.123 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:27:15,146.146 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:27:15,190.190 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:27:15,192.192 INFO    ] No camera update needed
[2026-06-27 15:27:15,193.193 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:27:15,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:27:15,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:27:15,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:27:17,237.237 INFO    ] ================================================
[2026-06-27 15:27:17,253.253 INFO    ] Launching Daemon at Sat Jun 27 15:27:17 IST 2026
[2026-06-27 15:27:17,263.263 INFO    ] ================================================
[2026-06-27 15:27:17,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:27:17
[2026-06-27 15:27:17,983.983 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:27:18,132.132 INFO    ] Initializing speech engine...
[2026-06-27 15:27:18,138.138 INFO    ] 2026-06-27 15:27:18
[2026-06-27 15:27:18,344.344 INFO    ] 2026-06-27 15:27:18
[2026-06-27 15:27:18,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:27:18,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:27:18,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:27:18,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:27:18,788.788 INFO    ] time= 27/06/2026 15:27:18
[2026-06-27 15:27:18,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:27:18,791.791 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:27:18,858.858 INFO    ] No existing commands found in stream
[2026-06-27 15:27:23,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:27:23,886.886 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-27 15:27:26,284.284 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 15:27:26,286.286 INFO    ] Checking for system updates...
[2026-06-27 15:27:26,308.308 INFO    ] 200
[2026-06-27 15:27:26,310.310 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:27:26,342.342 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:27:26,344.344 INFO    ] No update needed
[2026-06-27 15:27:26,345.345 INFO    ] Checking for camera pi updates...
[2026-06-27 15:27:26,366.366 INFO    ] 200
[2026-06-27 15:27:26,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:27:26,392.392 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:27:26,431.431 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:27:26,433.433 INFO    ] No camera update needed
[2026-06-27 15:27:26,434.434 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:27:26,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:27:26,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:27:26,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:27:28,481.481 INFO    ] ================================================
[2026-06-27 15:27:28,496.496 INFO    ] Launching Daemon at Sat Jun 27 15:27:28 IST 2026
[2026-06-27 15:27:28,507.507 INFO    ] ================================================
[2026-06-27 15:27:28,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:27:28
[2026-06-27 15:27:29,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:27:29,385.385 INFO    ] Initializing speech engine...
[2026-06-27 15:27:29,390.390 INFO    ] 2026-06-27 15:27:29
[2026-06-27 15:27:29,599.599 INFO    ] 2026-06-27 15:27:29
[2026-06-27 15:27:29,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:27:29,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:27:29,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:27:30,044.044 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:27:30,046.046 INFO    ] time= 27/06/2026 15:27:30
[2026-06-27 15:27:30,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:27:30,050.050 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:27:30,234.234 INFO    ] No existing commands found in stream
[2026-06-27 15:27:35,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:27:35,249.249 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-27 15:27:38,029.029 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:27:38,031.031 INFO    ] Checking for system updates...
[2026-06-27 15:27:38,052.052 INFO    ] 200
[2026-06-27 15:27:38,053.053 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:27:38,084.084 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:27:38,086.086 INFO    ] No update needed
[2026-06-27 15:27:38,087.087 INFO    ] Checking for camera pi updates...
[2026-06-27 15:27:38,107.107 INFO    ] 200
[2026-06-27 15:27:38,109.109 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:27:38,134.134 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:27:38,180.180 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:27:38,182.182 INFO    ] No camera update needed
[2026-06-27 15:27:38,183.183 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:27:38,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:27:38,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:27:38,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:27:40,229.229 INFO    ] ================================================
[2026-06-27 15:27:40,244.244 INFO    ] Launching Daemon at Sat Jun 27 15:27:40 IST 2026
[2026-06-27 15:27:40,254.254 INFO    ] ================================================
[2026-06-27 15:27:40,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:27:40
[2026-06-27 15:27:40,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:27:41,087.087 INFO    ] Initializing speech engine...
[2026-06-27 15:27:41,095.095 INFO    ] 2026-06-27 15:27:41
[2026-06-27 15:27:41,304.304 INFO    ] 2026-06-27 15:27:41
[2026-06-27 15:27:41,332.332 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:27:41,518.518 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:27:41,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:27:41,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:27:41,727.727 INFO    ] time= 27/06/2026 15:27:41
[2026-06-27 15:27:41,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:27:41,755.755 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:27:41,823.823 INFO    ] No existing commands found in stream
[2026-06-27 15:27:46,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:27:46,835.835 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-27 15:27:49,324.324 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 15:27:49,325.325 INFO    ] Checking for system updates...
[2026-06-27 15:27:49,346.346 INFO    ] 200
[2026-06-27 15:27:49,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:27:49,378.378 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:27:49,379.379 INFO    ] No update needed
[2026-06-27 15:27:49,381.381 INFO    ] Checking for camera pi updates...
[2026-06-27 15:27:49,400.400 INFO    ] 200
[2026-06-27 15:27:49,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:27:49,425.425 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:27:49,476.476 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:27:49,477.477 INFO    ] No camera update needed
[2026-06-27 15:27:49,479.479 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:27:49,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:27:49,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:27:49,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:27:51,525.525 INFO    ] ================================================
[2026-06-27 15:27:51,541.541 INFO    ] Launching Daemon at Sat Jun 27 15:27:51 IST 2026
[2026-06-27 15:27:51,552.552 INFO    ] ================================================
[2026-06-27 15:27:51,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:27:51
[2026-06-27 15:27:52,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:27:52,366.366 INFO    ] Initializing speech engine...
[2026-06-27 15:27:52,377.377 INFO    ] 2026-06-27 15:27:52
[2026-06-27 15:27:52,584.584 INFO    ] 2026-06-27 15:27:52
[2026-06-27 15:27:52,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:27:52,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:27:52,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:27:53,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:27:53,103.103 INFO    ] time= 27/06/2026 15:27:53
[2026-06-27 15:27:53,128.128 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:27:53,130.130 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:27:53,228.228 INFO    ] No existing commands found in stream
[2026-06-27 15:27:58,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:27:58,241.241 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-27 15:27:59,839.839 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:27:59,840.840 INFO    ] Checking for system updates...
[2026-06-27 15:27:59,861.861 INFO    ] 200
[2026-06-27 15:27:59,862.862 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:27:59,894.894 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:27:59,896.896 INFO    ] No update needed
[2026-06-27 15:27:59,897.897 INFO    ] Checking for camera pi updates...
[2026-06-27 15:27:59,918.918 INFO    ] 200
[2026-06-27 15:27:59,919.919 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:27:59,945.945 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:27:59,990.990 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:27:59,991.991 INFO    ] No camera update needed
[2026-06-27 15:27:59,992.992 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:27:59,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:27:59,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:28:00,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:28:02,034.034 INFO    ] ================================================
[2026-06-27 15:28:02,045.045 INFO    ] Launching Daemon at Sat Jun 27 15:28:02 IST 2026
[2026-06-27 15:28:02,053.053 INFO    ] ================================================
[2026-06-27 15:28:02,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:28:02
[2026-06-27 15:28:02,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:28:02,881.881 INFO    ] Initializing speech engine...
[2026-06-27 15:28:02,886.886 INFO    ] 2026-06-27 15:28:02
[2026-06-27 15:28:03,113.113 INFO    ] 2026-06-27 15:28:03
[2026-06-27 15:28:03,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:28:03,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:28:03,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:28:03,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:28:03,582.582 INFO    ] time= 27/06/2026 15:28:03
[2026-06-27 15:28:03,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:28:03,589.589 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:28:03,686.686 INFO    ] No existing commands found in stream
[2026-06-27 15:28:08,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:28:08,703.703 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-27 15:28:11,318.318 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:28:11,320.320 INFO    ] Checking for system updates...
[2026-06-27 15:28:11,341.341 INFO    ] 200
[2026-06-27 15:28:11,342.342 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:28:11,380.380 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:28:11,381.381 INFO    ] No update needed
[2026-06-27 15:28:11,382.382 INFO    ] Checking for camera pi updates...
[2026-06-27 15:28:11,402.402 INFO    ] 200
[2026-06-27 15:28:11,403.403 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:28:11,427.427 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:28:11,567.567 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:28:11,569.569 INFO    ] No camera update needed
[2026-06-27 15:28:11,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:28:11,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:28:11,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:28:11,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:28:13,616.616 INFO    ] ================================================
[2026-06-27 15:28:13,630.630 INFO    ] Launching Daemon at Sat Jun 27 15:28:13 IST 2026
[2026-06-27 15:28:13,641.641 INFO    ] ================================================
[2026-06-27 15:28:14,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:28:14
[2026-06-27 15:28:14,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:28:14,518.518 INFO    ] Initializing speech engine...
[2026-06-27 15:28:14,523.523 INFO    ] 2026-06-27 15:28:14
[2026-06-27 15:28:14,732.732 INFO    ] 2026-06-27 15:28:14
[2026-06-27 15:28:14,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:28:14,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:28:14,960.960 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:28:15,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:28:15,195.195 INFO    ] time= 27/06/2026 15:28:15
[2026-06-27 15:28:15,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:28:15,202.202 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:28:15,299.299 INFO    ] No existing commands found in stream
[2026-06-27 15:28:20,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:28:20,311.311 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-27 15:28:22,374.374 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 15:28:22,376.376 INFO    ] Checking for system updates...
[2026-06-27 15:28:22,397.397 INFO    ] 200
[2026-06-27 15:28:22,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:28:22,430.430 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:28:22,431.431 INFO    ] No update needed
[2026-06-27 15:28:22,433.433 INFO    ] Checking for camera pi updates...
[2026-06-27 15:28:22,452.452 INFO    ] 200
[2026-06-27 15:28:22,454.454 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:28:22,479.479 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:28:22,526.526 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:28:22,527.527 INFO    ] No camera update needed
[2026-06-27 15:28:22,529.529 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:28:22,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:28:22,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:28:22,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:28:24,575.575 INFO    ] ================================================
[2026-06-27 15:28:24,590.590 INFO    ] Launching Daemon at Sat Jun 27 15:28:24 IST 2026
[2026-06-27 15:28:24,600.600 INFO    ] ================================================
[2026-06-27 15:28:24,970.970 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:28:24
[2026-06-27 15:28:25,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:28:25,456.456 INFO    ] Initializing speech engine...
[2026-06-27 15:28:25,462.462 INFO    ] 2026-06-27 15:28:25
[2026-06-27 15:28:25,672.672 INFO    ] 2026-06-27 15:28:25
[2026-06-27 15:28:25,701.701 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:28:25,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:28:26,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:28:26,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:28:26,192.192 INFO    ] time= 27/06/2026 15:28:26
[2026-06-27 15:28:26,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:28:26,220.220 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:28:26,321.321 INFO    ] No existing commands found in stream
[2026-06-27 15:28:31,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:28:31,337.337 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-27 15:28:33,964.964 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:28:33,966.966 INFO    ] Checking for system updates...
[2026-06-27 15:28:33,989.989 INFO    ] 200
[2026-06-27 15:28:33,990.990 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:28:34,020.020 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:28:34,022.022 INFO    ] No update needed
[2026-06-27 15:28:34,024.024 INFO    ] Checking for camera pi updates...
[2026-06-27 15:28:34,045.045 INFO    ] 200
[2026-06-27 15:28:34,046.046 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:28:34,069.069 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:28:34,119.119 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:28:34,121.121 INFO    ] No camera update needed
[2026-06-27 15:28:34,122.122 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:28:34,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:28:34,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:28:34,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:28:36,169.169 INFO    ] ================================================
[2026-06-27 15:28:36,184.184 INFO    ] Launching Daemon at Sat Jun 27 15:28:36 IST 2026
[2026-06-27 15:28:36,195.195 INFO    ] ================================================
[2026-06-27 15:28:36,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:28:36
[2026-06-27 15:28:36,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:28:37,061.061 INFO    ] Initializing speech engine...
[2026-06-27 15:28:37,067.067 INFO    ] 2026-06-27 15:28:37
[2026-06-27 15:28:37,273.273 INFO    ] 2026-06-27 15:28:37
[2026-06-27 15:28:37,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:28:37,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:28:37,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:28:37,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:28:37,701.701 INFO    ] time= 27/06/2026 15:28:37
[2026-06-27 15:28:37,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:28:37,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:28:37,798.798 INFO    ] No existing commands found in stream
[2026-06-27 15:28:42,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:28:42,811.811 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-27 15:28:46,211.211 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 15:28:46,212.212 INFO    ] Checking for system updates...
[2026-06-27 15:28:46,234.234 INFO    ] 200
[2026-06-27 15:28:46,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:28:46,266.266 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:28:46,267.267 INFO    ] No update needed
[2026-06-27 15:28:46,268.268 INFO    ] Checking for camera pi updates...
[2026-06-27 15:28:46,288.288 INFO    ] 200
[2026-06-27 15:28:46,289.289 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:28:46,312.312 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:28:46,367.367 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:28:46,369.369 INFO    ] No camera update needed
[2026-06-27 15:28:46,370.370 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:28:46,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:28:46,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:28:46,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:28:48,415.415 INFO    ] ================================================
[2026-06-27 15:28:48,430.430 INFO    ] Launching Daemon at Sat Jun 27 15:28:48 IST 2026
[2026-06-27 15:28:48,441.441 INFO    ] ================================================
[2026-06-27 15:28:48,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:28:48
[2026-06-27 15:28:49,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:28:49,266.266 INFO    ] Initializing speech engine...
[2026-06-27 15:28:49,272.272 INFO    ] 2026-06-27 15:28:49
[2026-06-27 15:28:49,476.476 INFO    ] 2026-06-27 15:28:49
[2026-06-27 15:28:49,504.504 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:28:49,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:28:49,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:28:49,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:28:49,981.981 INFO    ] time= 27/06/2026 15:28:49
[2026-06-27 15:28:49,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:28:50,008.008 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:28:50,105.105 INFO    ] No existing commands found in stream
[2026-06-27 15:28:55,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:28:55,118.118 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-27 15:28:58,544.544 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:28:58,545.545 INFO    ] Checking for system updates...
[2026-06-27 15:28:58,566.566 INFO    ] 200
[2026-06-27 15:28:58,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:28:58,598.598 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:28:58,599.599 INFO    ] No update needed
[2026-06-27 15:28:58,600.600 INFO    ] Checking for camera pi updates...
[2026-06-27 15:28:58,621.621 INFO    ] 200
[2026-06-27 15:28:58,623.623 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:28:58,646.646 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:28:58,691.691 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:28:58,692.692 INFO    ] No camera update needed
[2026-06-27 15:28:58,693.693 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:28:58,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:28:58,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:28:58,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:29:00,740.740 INFO    ] ================================================
[2026-06-27 15:29:00,754.754 INFO    ] Launching Daemon at Sat Jun 27 15:29:00 IST 2026
[2026-06-27 15:29:00,765.765 INFO    ] ================================================
[2026-06-27 15:29:01,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:29:01
[2026-06-27 15:29:01,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:29:01,536.536 INFO    ] Initializing speech engine...
[2026-06-27 15:29:01,539.539 INFO    ] 2026-06-27 15:29:01
[2026-06-27 15:29:01,759.759 INFO    ] 2026-06-27 15:29:01
[2026-06-27 15:29:01,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:29:02,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:29:02,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:29:02,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:29:02,336.336 INFO    ] time= 27/06/2026 15:29:02
[2026-06-27 15:29:02,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:29:02,385.385 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:29:02,551.551 INFO    ] No existing commands found in stream
[2026-06-27 15:29:07,561.561 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:29:07,564.564 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-27 15:29:08,914.914 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:29:08,915.915 INFO    ] Checking for system updates...
[2026-06-27 15:29:08,936.936 INFO    ] 200
[2026-06-27 15:29:08,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:29:08,967.967 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:29:08,969.969 INFO    ] No update needed
[2026-06-27 15:29:08,970.970 INFO    ] Checking for camera pi updates...
[2026-06-27 15:29:08,991.991 INFO    ] 200
[2026-06-27 15:29:08,992.992 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:29:09,016.016 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:29:09,056.056 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:29:09,057.057 INFO    ] No camera update needed
[2026-06-27 15:29:09,059.059 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:29:09,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:29:09,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:29:09,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:29:11,105.105 INFO    ] ================================================
[2026-06-27 15:29:11,120.120 INFO    ] Launching Daemon at Sat Jun 27 15:29:11 IST 2026
[2026-06-27 15:29:11,131.131 INFO    ] ================================================
[2026-06-27 15:29:11,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:29:11
[2026-06-27 15:29:11,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:29:11,930.930 INFO    ] Initializing speech engine...
[2026-06-27 15:29:11,939.939 INFO    ] 2026-06-27 15:29:11
[2026-06-27 15:29:12,153.153 INFO    ] 2026-06-27 15:29:12
[2026-06-27 15:29:12,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:29:12,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:29:12,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:29:12,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:29:12,603.603 INFO    ] time= 27/06/2026 15:29:12
[2026-06-27 15:29:12,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:29:12,610.610 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:29:12,677.677 INFO    ] No existing commands found in stream
[2026-06-27 15:29:17,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:29:17,694.694 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-27 15:29:19,580.580 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 15:29:19,581.581 INFO    ] Checking for system updates...
[2026-06-27 15:29:19,603.603 INFO    ] 200
[2026-06-27 15:29:19,604.604 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:29:19,637.637 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:29:19,638.638 INFO    ] No update needed
[2026-06-27 15:29:19,640.640 INFO    ] Checking for camera pi updates...
[2026-06-27 15:29:19,659.659 INFO    ] 200
[2026-06-27 15:29:19,660.660 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:29:19,685.685 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:29:19,732.732 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:29:19,734.734 INFO    ] No camera update needed
[2026-06-27 15:29:19,735.735 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:29:19,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:29:19,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:29:19,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:29:21,784.784 INFO    ] ================================================
[2026-06-27 15:29:21,801.801 INFO    ] Launching Daemon at Sat Jun 27 15:29:21 IST 2026
[2026-06-27 15:29:21,811.811 INFO    ] ================================================
[2026-06-27 15:29:22,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:29:22
[2026-06-27 15:29:22,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:29:22,613.613 INFO    ] Initializing speech engine...
[2026-06-27 15:29:22,622.622 INFO    ] 2026-06-27 15:29:22
[2026-06-27 15:29:22,829.829 INFO    ] 2026-06-27 15:29:22
[2026-06-27 15:29:22,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:29:23,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:29:23,051.051 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:29:23,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:29:23,270.270 INFO    ] time= 27/06/2026 15:29:23
[2026-06-27 15:29:23,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:29:23,277.277 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:29:23,345.345 INFO    ] No existing commands found in stream
[2026-06-27 15:29:28,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:29:28,362.362 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-27 15:29:30,126.126 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 15:29:30,128.128 INFO    ] Checking for system updates...
[2026-06-27 15:29:30,148.148 INFO    ] 200
[2026-06-27 15:29:30,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:29:30,180.180 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:29:30,181.181 INFO    ] No update needed
[2026-06-27 15:29:30,182.182 INFO    ] Checking for camera pi updates...
[2026-06-27 15:29:30,202.202 INFO    ] 200
[2026-06-27 15:29:30,203.203 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:29:30,229.229 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:29:30,271.271 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:29:30,272.272 INFO    ] No camera update needed
[2026-06-27 15:29:30,274.274 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:29:30,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:29:30,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:29:30,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:29:32,313.313 INFO    ] ================================================
[2026-06-27 15:29:32,322.322 INFO    ] Launching Daemon at Sat Jun 27 15:29:32 IST 2026
[2026-06-27 15:29:32,329.329 INFO    ] ================================================
[2026-06-27 15:29:32,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:29:32
[2026-06-27 15:29:32,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:29:33,109.109 INFO    ] Initializing speech engine...
[2026-06-27 15:29:33,119.119 INFO    ] 2026-06-27 15:29:33
[2026-06-27 15:29:33,325.325 INFO    ] 2026-06-27 15:29:33
[2026-06-27 15:29:33,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:29:33,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:29:33,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:29:33,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:29:33,776.776 INFO    ] time= 27/06/2026 15:29:33
[2026-06-27 15:29:33,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:29:33,784.784 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:29:33,851.851 INFO    ] No existing commands found in stream
[2026-06-27 15:29:38,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:29:38,868.868 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-27 15:29:43,123.123 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 15:29:43,125.125 INFO    ] Checking for system updates...
[2026-06-27 15:29:43,147.147 INFO    ] 200
[2026-06-27 15:29:43,148.148 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:29:43,181.181 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:29:43,182.182 INFO    ] No update needed
[2026-06-27 15:29:43,184.184 INFO    ] Checking for camera pi updates...
[2026-06-27 15:29:43,204.204 INFO    ] 200
[2026-06-27 15:29:43,206.206 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:29:43,229.229 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:29:43,269.269 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:29:43,271.271 INFO    ] No camera update needed
[2026-06-27 15:29:43,272.272 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:29:43,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:29:43,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:29:43,279.279 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:29:45,318.318 INFO    ] ================================================
[2026-06-27 15:29:45,333.333 INFO    ] Launching Daemon at Sat Jun 27 15:29:45 IST 2026
[2026-06-27 15:29:45,344.344 INFO    ] ================================================
[2026-06-27 15:29:45,664.664 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:29:45
[2026-06-27 15:29:45,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:29:46,108.108 INFO    ] Initializing speech engine...
[2026-06-27 15:29:46,116.116 INFO    ] 2026-06-27 15:29:46
[2026-06-27 15:29:46,332.332 INFO    ] 2026-06-27 15:29:46
[2026-06-27 15:29:46,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:29:46,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:29:46,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:29:46,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:29:46,781.781 INFO    ] time= 27/06/2026 15:29:46
[2026-06-27 15:29:46,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:29:46,785.785 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:29:46,852.852 INFO    ] No existing commands found in stream
[2026-06-27 15:29:51,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:29:51,869.869 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-27 15:29:55,145.145 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 15:29:55,146.146 INFO    ] Checking for system updates...
[2026-06-27 15:29:55,167.167 INFO    ] 200
[2026-06-27 15:29:55,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:29:55,204.204 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:29:55,205.205 INFO    ] No update needed
[2026-06-27 15:29:55,206.206 INFO    ] Checking for camera pi updates...
[2026-06-27 15:29:55,226.226 INFO    ] 200
[2026-06-27 15:29:55,227.227 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:29:55,250.250 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:29:55,276.276 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:29:55,277.277 INFO    ] No camera update needed
[2026-06-27 15:29:55,278.278 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:29:55,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:29:55,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:29:55,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:29:57,325.325 INFO    ] ================================================
[2026-06-27 15:29:57,340.340 INFO    ] Launching Daemon at Sat Jun 27 15:29:57 IST 2026
[2026-06-27 15:29:57,351.351 INFO    ] ================================================
[2026-06-27 15:29:57,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:29:57
[2026-06-27 15:29:58,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:29:58,199.199 INFO    ] Initializing speech engine...
[2026-06-27 15:29:58,204.204 INFO    ] 2026-06-27 15:29:58
[2026-06-27 15:29:58,415.415 INFO    ] 2026-06-27 15:29:58
[2026-06-27 15:29:58,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:29:58,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:29:58,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:29:58,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:29:58,860.860 INFO    ] time= 27/06/2026 15:29:58
[2026-06-27 15:29:58,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:29:58,864.864 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:29:58,931.931 INFO    ] No existing commands found in stream
[2026-06-27 15:30:03,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:30:03,948.948 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-27 15:30:07,905.905 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:30:07,906.906 INFO    ] Checking for system updates...
[2026-06-27 15:30:07,928.928 INFO    ] 200
[2026-06-27 15:30:07,929.929 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:30:07,964.964 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:30:07,966.966 INFO    ] No update needed
[2026-06-27 15:30:07,967.967 INFO    ] Checking for camera pi updates...
[2026-06-27 15:30:07,992.992 INFO    ] 200
[2026-06-27 15:30:07,993.993 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:30:08,018.018 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:30:08,065.065 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:30:08,066.066 INFO    ] No camera update needed
[2026-06-27 15:30:08,068.068 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:30:08,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:30:08,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:30:08,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:30:10,113.113 INFO    ] ================================================
[2026-06-27 15:30:10,129.129 INFO    ] Launching Daemon at Sat Jun 27 15:30:10 IST 2026
[2026-06-27 15:30:10,139.139 INFO    ] ================================================
[2026-06-27 15:30:10,486.486 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:30:10
[2026-06-27 15:30:10,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:30:10,928.928 INFO    ] Initializing speech engine...
[2026-06-27 15:30:10,941.941 INFO    ] 2026-06-27 15:30:10
[2026-06-27 15:30:11,150.150 INFO    ] 2026-06-27 15:30:11
[2026-06-27 15:30:11,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:30:11,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:30:11,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:30:11,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:30:11,594.594 INFO    ] time= 27/06/2026 15:30:11
[2026-06-27 15:30:11,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:30:11,598.598 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:30:11,688.688 INFO    ] No existing commands found in stream
[2026-06-27 15:30:16,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:30:16,705.705 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-27 15:30:19,784.784 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:30:19,785.785 INFO    ] Checking for system updates...
[2026-06-27 15:30:19,806.806 INFO    ] 200
[2026-06-27 15:30:19,807.807 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:30:19,840.840 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:30:19,841.841 INFO    ] No update needed
[2026-06-27 15:30:19,843.843 INFO    ] Checking for camera pi updates...
[2026-06-27 15:30:19,868.868 INFO    ] 200
[2026-06-27 15:30:19,871.871 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:30:19,911.911 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:30:20,057.057 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:30:20,060.060 INFO    ] No camera update needed
[2026-06-27 15:30:20,062.062 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:30:20,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:30:20,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:30:20,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:30:22,110.110 INFO    ] ================================================
[2026-06-27 15:30:22,125.125 INFO    ] Launching Daemon at Sat Jun 27 15:30:22 IST 2026
[2026-06-27 15:30:22,136.136 INFO    ] ================================================
[2026-06-27 15:30:22,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:30:22
[2026-06-27 15:30:22,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:30:22,928.928 INFO    ] Initializing speech engine...
[2026-06-27 15:30:22,938.938 INFO    ] 2026-06-27 15:30:22
[2026-06-27 15:30:23,145.145 INFO    ] 2026-06-27 15:30:23
[2026-06-27 15:30:23,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:30:23,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:30:23,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:30:23,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:30:23,593.593 INFO    ] time= 27/06/2026 15:30:23
[2026-06-27 15:30:23,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:30:23,597.597 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:30:23,689.689 INFO    ] No existing commands found in stream
[2026-06-27 15:30:28,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:30:28,706.706 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-27 15:30:31,741.741 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:30:31,743.743 INFO    ] Checking for system updates...
[2026-06-27 15:30:31,766.766 INFO    ] 200
[2026-06-27 15:30:31,768.768 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:30:31,805.805 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:30:31,806.806 INFO    ] No update needed
[2026-06-27 15:30:31,808.808 INFO    ] Checking for camera pi updates...
[2026-06-27 15:30:31,831.831 INFO    ] 200
[2026-06-27 15:30:31,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:30:31,859.859 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:30:31,891.891 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:30:31,893.893 INFO    ] No camera update needed
[2026-06-27 15:30:31,894.894 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:30:31,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:30:31,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:30:31,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:30:33,935.935 INFO    ] ================================================
[2026-06-27 15:30:33,951.951 INFO    ] Launching Daemon at Sat Jun 27 15:30:33 IST 2026
[2026-06-27 15:30:33,961.961 INFO    ] ================================================
[2026-06-27 15:30:34,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:30:34
[2026-06-27 15:30:34,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:30:34,744.744 INFO    ] Initializing speech engine...
[2026-06-27 15:30:34,749.749 INFO    ] 2026-06-27 15:30:34
[2026-06-27 15:30:34,967.967 INFO    ] 2026-06-27 15:30:34
[2026-06-27 15:30:34,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:30:35,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:30:35,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:30:35,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:30:35,500.500 INFO    ] time= 27/06/2026 15:30:35
[2026-06-27 15:30:35,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:30:35,529.529 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:30:35,623.623 INFO    ] No existing commands found in stream
[2026-06-27 15:30:40,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:30:40,636.636 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-27 15:30:43,933.933 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:30:43,935.935 INFO    ] Checking for system updates...
[2026-06-27 15:30:43,956.956 INFO    ] 200
[2026-06-27 15:30:43,958.958 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:30:43,991.991 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:30:43,993.993 INFO    ] No update needed
[2026-06-27 15:30:43,994.994 INFO    ] Checking for camera pi updates...
[2026-06-27 15:30:44,014.014 INFO    ] 200
[2026-06-27 15:30:44,015.015 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:30:44,040.040 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:30:44,080.080 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:30:44,082.082 INFO    ] No camera update needed
[2026-06-27 15:30:44,083.083 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:30:44,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:30:44,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:30:44,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:30:46,129.129 INFO    ] ================================================
[2026-06-27 15:30:46,144.144 INFO    ] Launching Daemon at Sat Jun 27 15:30:46 IST 2026
[2026-06-27 15:30:46,155.155 INFO    ] ================================================
[2026-06-27 15:30:46,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:30:46
[2026-06-27 15:30:46,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:30:46,972.972 INFO    ] Initializing speech engine...
[2026-06-27 15:30:46,977.977 INFO    ] 2026-06-27 15:30:46
[2026-06-27 15:30:47,182.182 INFO    ] 2026-06-27 15:30:47
[2026-06-27 15:30:47,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:30:47,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:30:47,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:30:47,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:30:47,622.622 INFO    ] time= 27/06/2026 15:30:47
[2026-06-27 15:30:47,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:30:47,629.629 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:30:47,720.720 INFO    ] No existing commands found in stream
[2026-06-27 15:30:52,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:30:52,737.737 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-27 15:30:56,310.310 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:30:56,312.312 INFO    ] Checking for system updates...
[2026-06-27 15:30:56,332.332 INFO    ] 200
[2026-06-27 15:30:56,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:30:56,367.367 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:30:56,368.368 INFO    ] No update needed
[2026-06-27 15:30:56,369.369 INFO    ] Checking for camera pi updates...
[2026-06-27 15:30:56,389.389 INFO    ] 200
[2026-06-27 15:30:56,390.390 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:30:56,414.414 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:30:56,453.453 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:30:56,455.455 INFO    ] No camera update needed
[2026-06-27 15:30:56,456.456 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:30:56,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:30:56,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:30:56,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:30:58,503.503 INFO    ] ================================================
[2026-06-27 15:30:58,518.518 INFO    ] Launching Daemon at Sat Jun 27 15:30:58 IST 2026
[2026-06-27 15:30:58,528.528 INFO    ] ================================================
[2026-06-27 15:30:58,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:30:58
[2026-06-27 15:30:59,181.181 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:30:59,326.326 INFO    ] Initializing speech engine...
[2026-06-27 15:30:59,331.331 INFO    ] 2026-06-27 15:30:59
[2026-06-27 15:30:59,537.537 INFO    ] 2026-06-27 15:30:59
[2026-06-27 15:30:59,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:30:59,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:30:59,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:30:59,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:30:59,958.958 INFO    ] time= 27/06/2026 15:30:59
[2026-06-27 15:30:59,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:30:59,985.985 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:31:00,052.052 INFO    ] No existing commands found in stream
[2026-06-27 15:31:05,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:31:05,068.068 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-27 15:31:05,989.989 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:31:05,991.991 INFO    ] Checking for system updates...
[2026-06-27 15:31:06,015.015 INFO    ] 200
[2026-06-27 15:31:06,017.017 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:31:06,061.061 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:31:06,063.063 INFO    ] No update needed
[2026-06-27 15:31:06,065.065 INFO    ] Checking for camera pi updates...
[2026-06-27 15:31:06,086.086 INFO    ] 200
[2026-06-27 15:31:06,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:31:06,112.112 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:31:06,155.155 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:31:06,157.157 INFO    ] No camera update needed
[2026-06-27 15:31:06,158.158 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:31:06,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:31:06,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:31:06,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:31:08,205.205 INFO    ] ================================================
[2026-06-27 15:31:08,220.220 INFO    ] Launching Daemon at Sat Jun 27 15:31:08 IST 2026
[2026-06-27 15:31:08,232.232 INFO    ] ================================================
[2026-06-27 15:31:08,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:31:08
[2026-06-27 15:31:08,882.882 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:31:09,022.022 INFO    ] Initializing speech engine...
[2026-06-27 15:31:09,033.033 INFO    ] 2026-06-27 15:31:09
[2026-06-27 15:31:09,237.237 INFO    ] 2026-06-27 15:31:09
[2026-06-27 15:31:09,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:31:09,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:31:09,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:31:09,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:31:09,657.657 INFO    ] time= 27/06/2026 15:31:09
[2026-06-27 15:31:09,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:31:09,687.687 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:31:09,753.753 INFO    ] No existing commands found in stream
[2026-06-27 15:31:14,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:31:14,786.786 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-27 15:31:18,236.236 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 15:31:18,237.237 INFO    ] Checking for system updates...
[2026-06-27 15:31:18,259.259 INFO    ] 200
[2026-06-27 15:31:18,260.260 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:31:18,291.291 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:31:18,292.292 INFO    ] No update needed
[2026-06-27 15:31:18,294.294 INFO    ] Checking for camera pi updates...
[2026-06-27 15:31:18,313.313 INFO    ] 200
[2026-06-27 15:31:18,315.315 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:31:18,340.340 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:31:18,385.385 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:31:18,386.386 INFO    ] No camera update needed
[2026-06-27 15:31:18,387.387 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:31:18,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:31:18,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:31:18,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:31:20,433.433 INFO    ] ================================================
[2026-06-27 15:31:20,449.449 INFO    ] Launching Daemon at Sat Jun 27 15:31:20 IST 2026
[2026-06-27 15:31:20,460.460 INFO    ] ================================================
[2026-06-27 15:31:20,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:31:20
[2026-06-27 15:31:21,132.132 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:31:21,275.275 INFO    ] Initializing speech engine...
[2026-06-27 15:31:21,281.281 INFO    ] 2026-06-27 15:31:21
[2026-06-27 15:31:21,485.485 INFO    ] 2026-06-27 15:31:21
[2026-06-27 15:31:21,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:31:21,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:31:21,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:31:21,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:31:22,001.001 INFO    ] time= 27/06/2026 15:31:21
[2026-06-27 15:31:22,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:31:22,028.028 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:31:22,145.145 INFO    ] No existing commands found in stream
[2026-06-27 15:31:27,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:31:27,158.158 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-27 15:31:28,964.964 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:31:28,965.965 INFO    ] Checking for system updates...
[2026-06-27 15:31:28,986.986 INFO    ] 200
[2026-06-27 15:31:28,988.988 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:31:29,018.018 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:31:29,020.020 INFO    ] No update needed
[2026-06-27 15:31:29,021.021 INFO    ] Checking for camera pi updates...
[2026-06-27 15:31:29,043.043 INFO    ] 200
[2026-06-27 15:31:29,044.044 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:31:29,070.070 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:31:29,120.120 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:31:29,123.123 INFO    ] No camera update needed
[2026-06-27 15:31:29,126.126 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:31:29,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:31:29,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:31:29,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:31:31,182.182 INFO    ] ================================================
[2026-06-27 15:31:31,197.197 INFO    ] Launching Daemon at Sat Jun 27 15:31:31 IST 2026
[2026-06-27 15:31:31,208.208 INFO    ] ================================================
[2026-06-27 15:31:31,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:31:31
[2026-06-27 15:31:31,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:31:32,068.068 INFO    ] Initializing speech engine...
[2026-06-27 15:31:32,074.074 INFO    ] 2026-06-27 15:31:32
[2026-06-27 15:31:32,266.266 INFO    ] 2026-06-27 15:31:32
[2026-06-27 15:31:32,324.324 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:31:32,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:31:32,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:31:32,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:31:32,813.813 INFO    ] time= 27/06/2026 15:31:32
[2026-06-27 15:31:32,825.825 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:31:32,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:31:32,927.927 INFO    ] No existing commands found in stream
[2026-06-27 15:31:37,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:31:37,944.944 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-27 15:31:38,768.768 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:31:38,770.770 INFO    ] Checking for system updates...
[2026-06-27 15:31:38,791.791 INFO    ] 200
[2026-06-27 15:31:38,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:31:38,823.823 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:31:38,825.825 INFO    ] No update needed
[2026-06-27 15:31:38,826.826 INFO    ] Checking for camera pi updates...
[2026-06-27 15:31:38,845.845 INFO    ] 200
[2026-06-27 15:31:38,846.846 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:31:38,874.874 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:31:38,913.913 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:31:38,915.915 INFO    ] No camera update needed
[2026-06-27 15:31:38,916.916 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:31:38,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:31:38,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:31:38,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:31:40,962.962 INFO    ] ================================================
[2026-06-27 15:31:40,978.978 INFO    ] Launching Daemon at Sat Jun 27 15:31:40 IST 2026
[2026-06-27 15:31:40,990.990 INFO    ] ================================================
[2026-06-27 15:31:41,316.316 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:31:41
[2026-06-27 15:31:41,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:31:41,768.768 INFO    ] Initializing speech engine...
[2026-06-27 15:31:41,780.780 INFO    ] 2026-06-27 15:31:41
[2026-06-27 15:31:41,986.986 INFO    ] 2026-06-27 15:31:41
[2026-06-27 15:31:42,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:31:42,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:31:42,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:31:42,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:31:42,430.430 INFO    ] time= 27/06/2026 15:31:42
[2026-06-27 15:31:42,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:31:42,434.434 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:31:42,548.548 INFO    ] No existing commands found in stream
[2026-06-27 15:31:47,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:31:47,561.561 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-27 15:31:50,324.324 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:31:50,325.325 INFO    ] Checking for system updates...
[2026-06-27 15:31:50,346.346 INFO    ] 200
[2026-06-27 15:31:50,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:31:50,378.378 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:31:50,379.379 INFO    ] No update needed
[2026-06-27 15:31:50,380.380 INFO    ] Checking for camera pi updates...
[2026-06-27 15:31:50,403.403 INFO    ] 200
[2026-06-27 15:31:50,405.405 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:31:50,429.429 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:31:50,471.471 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:31:50,472.472 INFO    ] No camera update needed
[2026-06-27 15:31:50,474.474 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:31:50,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:31:50,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:31:50,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:31:52,519.519 INFO    ] ================================================
[2026-06-27 15:31:52,535.535 INFO    ] Launching Daemon at Sat Jun 27 15:31:52 IST 2026
[2026-06-27 15:31:52,547.547 INFO    ] ================================================
[2026-06-27 15:31:52,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:31:52
[2026-06-27 15:31:53,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:31:53,342.342 INFO    ] Initializing speech engine...
[2026-06-27 15:31:53,355.355 INFO    ] 2026-06-27 15:31:53
[2026-06-27 15:31:53,561.561 INFO    ] 2026-06-27 15:31:53
[2026-06-27 15:31:53,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:31:53,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:31:53,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:31:53,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:31:54,003.003 INFO    ] time= 27/06/2026 15:31:53
[2026-06-27 15:31:54,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:31:54,010.010 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:31:54,101.101 INFO    ] No existing commands found in stream
[2026-06-27 15:31:59,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:31:59,118.118 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-27 15:32:03,213.213 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 15:32:03,214.214 INFO    ] Checking for system updates...
[2026-06-27 15:32:03,236.236 INFO    ] 200
[2026-06-27 15:32:03,237.237 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:32:03,268.268 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:32:03,269.269 INFO    ] No update needed
[2026-06-27 15:32:03,271.271 INFO    ] Checking for camera pi updates...
[2026-06-27 15:32:03,291.291 INFO    ] 200
[2026-06-27 15:32:03,293.293 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:32:03,316.316 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:32:03,366.366 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:32:03,368.368 INFO    ] No camera update needed
[2026-06-27 15:32:03,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:32:03,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:32:03,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:32:03,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:32:05,417.417 INFO    ] ================================================
[2026-06-27 15:32:05,433.433 INFO    ] Launching Daemon at Sat Jun 27 15:32:05 IST 2026
[2026-06-27 15:32:05,446.446 INFO    ] ================================================
[2026-06-27 15:32:05,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:32:05
[2026-06-27 15:32:06,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:32:06,241.241 INFO    ] Initializing speech engine...
[2026-06-27 15:32:06,245.245 INFO    ] 2026-06-27 15:32:06
[2026-06-27 15:32:06,476.476 INFO    ] 2026-06-27 15:32:06
[2026-06-27 15:32:06,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:32:06,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:32:06,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:32:07,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:32:07,031.031 INFO    ] time= 27/06/2026 15:32:07
[2026-06-27 15:32:07,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:32:07,060.060 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:32:07,166.166 INFO    ] No existing commands found in stream
[2026-06-27 15:32:12,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:32:12,178.178 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-27 15:32:14,680.680 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 15:32:14,682.682 INFO    ] Checking for system updates...
[2026-06-27 15:32:14,704.704 INFO    ] 200
[2026-06-27 15:32:14,705.705 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:32:14,735.735 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:32:14,737.737 INFO    ] No update needed
[2026-06-27 15:32:14,738.738 INFO    ] Checking for camera pi updates...
[2026-06-27 15:32:14,757.757 INFO    ] 200
[2026-06-27 15:32:14,758.758 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:32:14,784.784 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:32:14,838.838 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:32:14,839.839 INFO    ] No camera update needed
[2026-06-27 15:32:14,841.841 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:32:14,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:32:14,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:32:14,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:32:16,887.887 INFO    ] ================================================
[2026-06-27 15:32:16,904.904 INFO    ] Launching Daemon at Sat Jun 27 15:32:16 IST 2026
[2026-06-27 15:32:16,916.916 INFO    ] ================================================
[2026-06-27 15:32:17,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:32:17
[2026-06-27 15:32:17,623.623 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:32:17,777.777 INFO    ] Initializing speech engine...
[2026-06-27 15:32:17,783.783 INFO    ] 2026-06-27 15:32:17
[2026-06-27 15:32:17,991.991 INFO    ] 2026-06-27 15:32:17
[2026-06-27 15:32:18,020.020 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:32:18,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:32:18,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:32:18,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:32:18,440.440 INFO    ] time= 27/06/2026 15:32:18
[2026-06-27 15:32:18,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:32:18,444.444 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:32:18,560.560 INFO    ] No existing commands found in stream
[2026-06-27 15:32:23,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:32:23,573.573 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-27 15:32:26,627.627 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:32:26,628.628 INFO    ] Checking for system updates...
[2026-06-27 15:32:26,650.650 INFO    ] 200
[2026-06-27 15:32:26,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:32:26,682.682 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:32:26,683.683 INFO    ] No update needed
[2026-06-27 15:32:26,684.684 INFO    ] Checking for camera pi updates...
[2026-06-27 15:32:26,706.706 INFO    ] 200
[2026-06-27 15:32:26,707.707 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:32:26,730.730 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:32:26,871.871 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:32:26,873.873 INFO    ] No camera update needed
[2026-06-27 15:32:26,874.874 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:32:26,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:32:26,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:32:26,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:32:28,919.919 INFO    ] ================================================
[2026-06-27 15:32:28,936.936 INFO    ] Launching Daemon at Sat Jun 27 15:32:28 IST 2026
[2026-06-27 15:32:28,948.948 INFO    ] ================================================
[2026-06-27 15:32:29,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:32:29
[2026-06-27 15:32:29,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:32:29,752.752 INFO    ] Initializing speech engine...
[2026-06-27 15:32:29,755.755 INFO    ] 2026-06-27 15:32:29
[2026-06-27 15:32:29,985.985 INFO    ] 2026-06-27 15:32:29
[2026-06-27 15:32:30,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:32:30,218.218 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:32:30,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:32:30,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:32:30,402.402 INFO    ] time= 27/06/2026 15:32:30
[2026-06-27 15:32:30,452.452 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:32:30,470.470 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:32:30,573.573 INFO    ] No existing commands found in stream
[2026-06-27 15:32:35,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:32:35,585.585 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-27 15:32:37,808.808 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:32:37,810.810 INFO    ] Checking for system updates...
[2026-06-27 15:32:37,831.831 INFO    ] 200
[2026-06-27 15:32:37,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:32:37,865.865 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:32:37,866.866 INFO    ] No update needed
[2026-06-27 15:32:37,867.867 INFO    ] Checking for camera pi updates...
[2026-06-27 15:32:37,888.888 INFO    ] 200
[2026-06-27 15:32:37,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:32:37,913.913 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:32:37,954.954 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:32:37,956.956 INFO    ] No camera update needed
[2026-06-27 15:32:37,957.957 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:32:37,958.958 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:32:37,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:32:37,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:32:40,003.003 INFO    ] ================================================
[2026-06-27 15:32:40,019.019 INFO    ] Launching Daemon at Sat Jun 27 15:32:40 IST 2026
[2026-06-27 15:32:40,030.030 INFO    ] ================================================
[2026-06-27 15:32:40,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:32:40
[2026-06-27 15:32:40,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:32:40,833.833 INFO    ] Initializing speech engine...
[2026-06-27 15:32:40,838.838 INFO    ] 2026-06-27 15:32:40
[2026-06-27 15:32:41,042.042 INFO    ] 2026-06-27 15:32:41
[2026-06-27 15:32:41,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:32:41,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:32:41,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:32:41,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:32:41,461.461 INFO    ] time= 27/06/2026 15:32:41
[2026-06-27 15:32:41,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:32:41,488.488 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:32:41,559.559 INFO    ] No existing commands found in stream
[2026-06-27 15:32:46,583.583 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:32:46,586.586 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-27 15:32:49,330.330 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:32:49,331.331 INFO    ] Checking for system updates...
[2026-06-27 15:32:49,353.353 INFO    ] 200
[2026-06-27 15:32:49,354.354 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:32:49,387.387 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:32:49,388.388 INFO    ] No update needed
[2026-06-27 15:32:49,389.389 INFO    ] Checking for camera pi updates...
[2026-06-27 15:32:49,409.409 INFO    ] 200
[2026-06-27 15:32:49,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:32:49,434.434 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:32:49,482.482 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:32:49,483.483 INFO    ] No camera update needed
[2026-06-27 15:32:49,485.485 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:32:49,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:32:49,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:32:49,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:32:51,532.532 INFO    ] ================================================
[2026-06-27 15:32:51,547.547 INFO    ] Launching Daemon at Sat Jun 27 15:32:51 IST 2026
[2026-06-27 15:32:51,563.563 INFO    ] ================================================
[2026-06-27 15:32:51,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:32:51
[2026-06-27 15:32:52,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:32:52,363.363 INFO    ] Initializing speech engine...
[2026-06-27 15:32:52,368.368 INFO    ] 2026-06-27 15:32:52
[2026-06-27 15:32:52,574.574 INFO    ] 2026-06-27 15:32:52
[2026-06-27 15:32:52,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:32:52,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:32:52,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:32:53,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:32:53,018.018 INFO    ] time= 27/06/2026 15:32:53
[2026-06-27 15:32:53,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:32:53,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:32:53,118.118 INFO    ] No existing commands found in stream
[2026-06-27 15:32:58,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:32:58,126.126 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-27 15:33:01,403.403 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:33:01,408.408 INFO    ] Checking for system updates...
[2026-06-27 15:33:01,452.452 INFO    ] 200
[2026-06-27 15:33:01,454.454 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:33:01,501.501 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:33:01,503.503 INFO    ] No update needed
[2026-06-27 15:33:01,506.506 INFO    ] Checking for camera pi updates...
[2026-06-27 15:33:01,554.554 INFO    ] 200
[2026-06-27 15:33:01,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:33:01,608.608 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:33:01,651.651 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:33:01,653.653 INFO    ] No camera update needed
[2026-06-27 15:33:01,655.655 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:33:01,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:33:01,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:33:01,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:33:03,705.705 INFO    ] ================================================
[2026-06-27 15:33:03,722.722 INFO    ] Launching Daemon at Sat Jun 27 15:33:03 IST 2026
[2026-06-27 15:33:03,733.733 INFO    ] ================================================
[2026-06-27 15:33:04,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:33:04
[2026-06-27 15:33:04,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:33:04,559.559 INFO    ] Initializing speech engine...
[2026-06-27 15:33:04,562.562 INFO    ] 2026-06-27 15:33:04
[2026-06-27 15:33:04,778.778 INFO    ] 2026-06-27 15:33:04
[2026-06-27 15:33:04,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:33:04,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:33:05,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:33:05,176.176 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:33:05,215.215 INFO    ] time= 27/06/2026 15:33:05
[2026-06-27 15:33:05,220.220 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:33:05,226.226 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:33:05,293.293 INFO    ] No existing commands found in stream
[2026-06-27 15:33:10,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:33:10,305.305 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-27 15:33:14,328.328 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:33:14,330.330 INFO    ] Checking for system updates...
[2026-06-27 15:33:14,352.352 INFO    ] 200
[2026-06-27 15:33:14,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:33:14,386.386 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:33:14,388.388 INFO    ] No update needed
[2026-06-27 15:33:14,389.389 INFO    ] Checking for camera pi updates...
[2026-06-27 15:33:14,408.408 INFO    ] 200
[2026-06-27 15:33:14,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:33:14,434.434 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:33:14,476.476 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:33:14,477.477 INFO    ] No camera update needed
[2026-06-27 15:33:14,478.478 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:33:14,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:33:14,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:33:14,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:33:16,525.525 INFO    ] ================================================
[2026-06-27 15:33:16,541.541 INFO    ] Launching Daemon at Sat Jun 27 15:33:16 IST 2026
[2026-06-27 15:33:16,553.553 INFO    ] ================================================
[2026-06-27 15:33:16,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:33:16
[2026-06-27 15:33:17,230.230 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:33:17,375.375 INFO    ] Initializing speech engine...
[2026-06-27 15:33:17,380.380 INFO    ] 2026-06-27 15:33:17
[2026-06-27 15:33:17,582.582 INFO    ] 2026-06-27 15:33:17
[2026-06-27 15:33:17,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:33:17,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:33:17,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:33:17,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:33:18,014.014 INFO    ] time= 27/06/2026 15:33:17
[2026-06-27 15:33:18,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:33:18,031.031 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:33:18,099.099 INFO    ] No existing commands found in stream
[2026-06-27 15:33:23,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:33:23,116.116 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-27 15:33:27,514.514 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 15:33:27,516.516 INFO    ] Checking for system updates...
[2026-06-27 15:33:27,537.537 INFO    ] 200
[2026-06-27 15:33:27,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:33:27,572.572 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:33:27,574.574 INFO    ] No update needed
[2026-06-27 15:33:27,576.576 INFO    ] Checking for camera pi updates...
[2026-06-27 15:33:27,597.597 INFO    ] 200
[2026-06-27 15:33:27,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:33:27,621.621 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:33:27,667.667 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:33:27,668.668 INFO    ] No camera update needed
[2026-06-27 15:33:27,669.669 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:33:27,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:33:27,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:33:27,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:33:29,717.717 INFO    ] ================================================
[2026-06-27 15:33:29,734.734 INFO    ] Launching Daemon at Sat Jun 27 15:33:29 IST 2026
[2026-06-27 15:33:29,746.746 INFO    ] ================================================
[2026-06-27 15:33:30,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:33:30
[2026-06-27 15:33:30,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:33:30,606.606 INFO    ] Initializing speech engine...
[2026-06-27 15:33:30,613.613 INFO    ] 2026-06-27 15:33:30
[2026-06-27 15:33:30,831.831 INFO    ] 2026-06-27 15:33:30
[2026-06-27 15:33:30,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:33:31,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:33:31,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:33:31,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:33:31,276.276 INFO    ] time= 27/06/2026 15:33:31
[2026-06-27 15:33:31,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:33:31,283.283 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:33:31,352.352 INFO    ] No existing commands found in stream
[2026-06-27 15:33:36,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:33:36,366.366 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-27 15:33:38,925.925 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 15:33:38,927.927 INFO    ] Checking for system updates...
[2026-06-27 15:33:38,948.948 INFO    ] 200
[2026-06-27 15:33:38,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:33:38,980.980 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:33:38,981.981 INFO    ] No update needed
[2026-06-27 15:33:38,983.983 INFO    ] Checking for camera pi updates...
[2026-06-27 15:33:39,003.003 INFO    ] 200
[2026-06-27 15:33:39,005.005 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:33:39,030.030 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:33:39,071.071 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:33:39,073.073 INFO    ] No camera update needed
[2026-06-27 15:33:39,075.075 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:33:39,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:33:39,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:33:39,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:33:41,122.122 INFO    ] ================================================
[2026-06-27 15:33:41,138.138 INFO    ] Launching Daemon at Sat Jun 27 15:33:41 IST 2026
[2026-06-27 15:33:41,149.149 INFO    ] ================================================
[2026-06-27 15:33:41,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:33:41
[2026-06-27 15:33:41,825.825 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:33:41,954.954 INFO    ] Initializing speech engine...
[2026-06-27 15:33:41,957.957 INFO    ] 2026-06-27 15:33:41
[2026-06-27 15:33:42,174.174 INFO    ] 2026-06-27 15:33:42
[2026-06-27 15:33:42,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:33:42,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:33:42,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:33:42,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:33:42,680.680 INFO    ] time= 27/06/2026 15:33:42
[2026-06-27 15:33:42,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:33:42,707.707 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:33:42,826.826 INFO    ] No existing commands found in stream
[2026-06-27 15:33:47,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:33:47,838.838 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-27 15:33:50,623.623 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:33:50,625.625 INFO    ] Checking for system updates...
[2026-06-27 15:33:50,646.646 INFO    ] 200
[2026-06-27 15:33:50,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:33:50,679.679 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:33:50,680.680 INFO    ] No update needed
[2026-06-27 15:33:50,681.681 INFO    ] Checking for camera pi updates...
[2026-06-27 15:33:50,701.701 INFO    ] 200
[2026-06-27 15:33:50,702.702 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:33:50,726.726 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:33:50,767.767 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:33:50,768.768 INFO    ] No camera update needed
[2026-06-27 15:33:50,770.770 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:33:50,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:33:50,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:33:50,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:33:52,815.815 INFO    ] ================================================
[2026-06-27 15:33:52,830.830 INFO    ] Launching Daemon at Sat Jun 27 15:33:52 IST 2026
[2026-06-27 15:33:52,842.842 INFO    ] ================================================
[2026-06-27 15:33:53,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:33:53
[2026-06-27 15:33:53,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:33:53,724.724 INFO    ] Initializing speech engine...
[2026-06-27 15:33:53,730.730 INFO    ] 2026-06-27 15:33:53
[2026-06-27 15:33:53,942.942 INFO    ] 2026-06-27 15:33:53
[2026-06-27 15:33:53,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:33:54,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:33:54,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:33:54,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:33:54,366.366 INFO    ] time= 27/06/2026 15:33:54
[2026-06-27 15:33:54,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:33:54,401.401 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:33:54,470.470 INFO    ] No existing commands found in stream
[2026-06-27 15:33:59,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:33:59,488.488 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-27 15:34:03,435.435 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:34:03,437.437 INFO    ] Checking for system updates...
[2026-06-27 15:34:03,458.458 INFO    ] 200
[2026-06-27 15:34:03,459.459 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:34:03,490.490 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:34:03,491.491 INFO    ] No update needed
[2026-06-27 15:34:03,492.492 INFO    ] Checking for camera pi updates...
[2026-06-27 15:34:03,512.512 INFO    ] 200
[2026-06-27 15:34:03,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:34:03,538.538 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:34:03,587.587 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:34:03,588.588 INFO    ] No camera update needed
[2026-06-27 15:34:03,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:34:03,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:34:03,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:34:03,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:34:05,638.638 INFO    ] ================================================
[2026-06-27 15:34:05,659.659 INFO    ] Launching Daemon at Sat Jun 27 15:34:05 IST 2026
[2026-06-27 15:34:05,670.670 INFO    ] ================================================
[2026-06-27 15:34:06,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:34:06
[2026-06-27 15:34:06,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:34:06,518.518 INFO    ] Initializing speech engine...
[2026-06-27 15:34:06,525.525 INFO    ] 2026-06-27 15:34:06
[2026-06-27 15:34:06,732.732 INFO    ] 2026-06-27 15:34:06
[2026-06-27 15:34:06,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:34:06,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:34:06,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:34:07,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:34:07,154.154 INFO    ] time= 27/06/2026 15:34:07
[2026-06-27 15:34:07,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:34:07,182.182 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:34:07,249.249 INFO    ] No existing commands found in stream
[2026-06-27 15:34:12,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:34:12,261.261 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-27 15:34:14,455.455 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:34:14,456.456 INFO    ] Checking for system updates...
[2026-06-27 15:34:14,478.478 INFO    ] 200
[2026-06-27 15:34:14,480.480 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:34:14,512.512 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:34:14,514.514 INFO    ] No update needed
[2026-06-27 15:34:14,515.515 INFO    ] Checking for camera pi updates...
[2026-06-27 15:34:14,536.536 INFO    ] 200
[2026-06-27 15:34:14,537.537 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:34:14,560.560 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:34:14,608.608 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:34:14,610.610 INFO    ] No camera update needed
[2026-06-27 15:34:14,611.611 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:34:14,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:34:14,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:34:14,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:34:16,656.656 INFO    ] ================================================
[2026-06-27 15:34:16,671.671 INFO    ] Launching Daemon at Sat Jun 27 15:34:16 IST 2026
[2026-06-27 15:34:16,682.682 INFO    ] ================================================
[2026-06-27 15:34:17,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:34:17
[2026-06-27 15:34:17,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:34:17,460.460 INFO    ] Initializing speech engine...
[2026-06-27 15:34:17,467.467 INFO    ] 2026-06-27 15:34:17
[2026-06-27 15:34:17,680.680 INFO    ] 2026-06-27 15:34:17
[2026-06-27 15:34:17,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:34:17,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:34:18,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:34:18,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:34:18,189.189 INFO    ] time= 27/06/2026 15:34:18
[2026-06-27 15:34:18,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:34:18,217.217 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:34:18,313.313 INFO    ] No existing commands found in stream
[2026-06-27 15:34:23,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:34:23,327.327 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-27 15:34:24,334.334 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:34:24,335.335 INFO    ] Checking for system updates...
[2026-06-27 15:34:24,357.357 INFO    ] 200
[2026-06-27 15:34:24,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:34:24,390.390 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:34:24,391.391 INFO    ] No update needed
[2026-06-27 15:34:24,392.392 INFO    ] Checking for camera pi updates...
[2026-06-27 15:34:24,414.414 INFO    ] 200
[2026-06-27 15:34:24,415.415 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:34:24,443.443 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:34:24,495.495 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:34:24,497.497 INFO    ] No camera update needed
[2026-06-27 15:34:24,498.498 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:34:24,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:34:24,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:34:24,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:34:26,543.543 INFO    ] ================================================
[2026-06-27 15:34:26,558.558 INFO    ] Launching Daemon at Sat Jun 27 15:34:26 IST 2026
[2026-06-27 15:34:26,569.569 INFO    ] ================================================
[2026-06-27 15:34:26,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:34:26
[2026-06-27 15:34:27,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:34:27,339.339 INFO    ] Initializing speech engine...
[2026-06-27 15:34:27,347.347 INFO    ] 2026-06-27 15:34:27
[2026-06-27 15:34:27,558.558 INFO    ] 2026-06-27 15:34:27
[2026-06-27 15:34:27,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:34:27,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:34:27,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:34:27,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:34:27,993.993 INFO    ] time= 27/06/2026 15:34:27
[2026-06-27 15:34:28,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:34:28,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:34:28,074.074 INFO    ] No existing commands found in stream
[2026-06-27 15:34:33,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:34:33,088.088 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-27 15:34:36,699.699 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:34:36,701.701 INFO    ] Checking for system updates...
[2026-06-27 15:34:36,721.721 INFO    ] 200
[2026-06-27 15:34:36,723.723 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:34:36,754.754 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:34:36,756.756 INFO    ] No update needed
[2026-06-27 15:34:36,757.757 INFO    ] Checking for camera pi updates...
[2026-06-27 15:34:36,776.776 INFO    ] 200
[2026-06-27 15:34:36,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:34:36,803.803 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:34:36,844.844 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:34:36,846.846 INFO    ] No camera update needed
[2026-06-27 15:34:36,847.847 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:34:36,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:34:36,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:34:36,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:34:38,892.892 INFO    ] ================================================
[2026-06-27 15:34:38,908.908 INFO    ] Launching Daemon at Sat Jun 27 15:34:38 IST 2026
[2026-06-27 15:34:38,920.920 INFO    ] ================================================
[2026-06-27 15:34:39,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:34:39
[2026-06-27 15:34:39,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:34:39,722.722 INFO    ] Initializing speech engine...
[2026-06-27 15:34:39,735.735 INFO    ] 2026-06-27 15:34:39
[2026-06-27 15:34:39,942.942 INFO    ] 2026-06-27 15:34:39
[2026-06-27 15:34:39,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:34:40,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:34:40,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:34:40,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:34:40,361.361 INFO    ] time= 27/06/2026 15:34:40
[2026-06-27 15:34:40,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:34:40,388.388 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:34:40,478.478 INFO    ] No existing commands found in stream
[2026-06-27 15:34:45,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:34:45,495.495 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-27 15:34:47,271.271 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:34:47,273.273 INFO    ] Checking for system updates...
[2026-06-27 15:34:47,295.295 INFO    ] 200
[2026-06-27 15:34:47,297.297 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:34:47,330.330 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:34:47,331.331 INFO    ] No update needed
[2026-06-27 15:34:47,333.333 INFO    ] Checking for camera pi updates...
[2026-06-27 15:34:47,352.352 INFO    ] 200
[2026-06-27 15:34:47,354.354 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:34:47,377.377 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:34:47,421.421 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:34:47,423.423 INFO    ] No camera update needed
[2026-06-27 15:34:47,424.424 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:34:47,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:34:47,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:34:47,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:34:49,469.469 INFO    ] ================================================
[2026-06-27 15:34:49,486.486 INFO    ] Launching Daemon at Sat Jun 27 15:34:49 IST 2026
[2026-06-27 15:34:49,498.498 INFO    ] ================================================
[2026-06-27 15:34:49,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:34:49
[2026-06-27 15:34:50,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:34:50,278.278 INFO    ] Initializing speech engine...
[2026-06-27 15:34:50,283.283 INFO    ] 2026-06-27 15:34:50
[2026-06-27 15:34:50,488.488 INFO    ] 2026-06-27 15:34:50
[2026-06-27 15:34:50,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:34:50,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:34:50,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:34:50,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:34:50,905.905 INFO    ] time= 27/06/2026 15:34:50
[2026-06-27 15:34:50,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:34:50,937.937 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:34:51,004.004 INFO    ] No existing commands found in stream
[2026-06-27 15:34:56,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:34:56,026.026 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-27 15:34:58,016.016 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 15:34:58,018.018 INFO    ] Checking for system updates...
[2026-06-27 15:34:58,040.040 INFO    ] 200
[2026-06-27 15:34:58,041.041 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:34:58,072.072 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:34:58,073.073 INFO    ] No update needed
[2026-06-27 15:34:58,075.075 INFO    ] Checking for camera pi updates...
[2026-06-27 15:34:58,094.094 INFO    ] 200
[2026-06-27 15:34:58,096.096 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:34:58,119.119 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:34:58,168.168 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:34:58,170.170 INFO    ] No camera update needed
[2026-06-27 15:34:58,171.171 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:34:58,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:34:58,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:34:58,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:35:00,212.212 INFO    ] ================================================
[2026-06-27 15:35:00,228.228 INFO    ] Launching Daemon at Sat Jun 27 15:35:00 IST 2026
[2026-06-27 15:35:00,239.239 INFO    ] ================================================
[2026-06-27 15:35:00,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:35:00
[2026-06-27 15:35:00,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:35:01,034.034 INFO    ] Initializing speech engine...
[2026-06-27 15:35:01,045.045 INFO    ] 2026-06-27 15:35:01
[2026-06-27 15:35:01,250.250 INFO    ] 2026-06-27 15:35:01
[2026-06-27 15:35:01,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:35:01,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:35:01,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:35:01,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:35:01,684.684 INFO    ] time= 27/06/2026 15:35:01
[2026-06-27 15:35:01,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:35:01,699.699 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:35:01,806.806 INFO    ] No existing commands found in stream
[2026-06-27 15:35:06,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:35:06,825.825 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-27 15:35:07,806.806 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 15:35:07,808.808 INFO    ] Checking for system updates...
[2026-06-27 15:35:07,830.830 INFO    ] 200
[2026-06-27 15:35:07,831.831 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:35:07,864.864 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:35:07,866.866 INFO    ] No update needed
[2026-06-27 15:35:07,867.867 INFO    ] Checking for camera pi updates...
[2026-06-27 15:35:07,888.888 INFO    ] 200
[2026-06-27 15:35:07,890.890 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:35:07,916.916 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:35:07,956.956 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:35:07,958.958 INFO    ] No camera update needed
[2026-06-27 15:35:07,959.959 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:35:07,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:35:07,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:35:07,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:35:10,008.008 INFO    ] ================================================
[2026-06-27 15:35:10,023.023 INFO    ] Launching Daemon at Sat Jun 27 15:35:10 IST 2026
[2026-06-27 15:35:10,034.034 INFO    ] ================================================
[2026-06-27 15:35:10,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:35:10
[2026-06-27 15:35:10,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:35:10,876.876 INFO    ] Initializing speech engine...
[2026-06-27 15:35:10,882.882 INFO    ] 2026-06-27 15:35:10
[2026-06-27 15:35:11,090.090 INFO    ] 2026-06-27 15:35:11
[2026-06-27 15:35:11,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:35:11,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:35:11,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:35:11,501.501 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:35:11,529.529 INFO    ] time= 27/06/2026 15:35:11
[2026-06-27 15:35:11,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:35:11,537.537 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:35:11,627.627 INFO    ] No existing commands found in stream
[2026-06-27 15:35:16,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:35:16,645.645 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-27 15:35:17,586.586 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:35:17,587.587 INFO    ] Checking for system updates...
[2026-06-27 15:35:17,609.609 INFO    ] 200
[2026-06-27 15:35:17,611.611 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:35:17,645.645 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:35:17,646.646 INFO    ] No update needed
[2026-06-27 15:35:17,648.648 INFO    ] Checking for camera pi updates...
[2026-06-27 15:35:17,668.668 INFO    ] 200
[2026-06-27 15:35:17,669.669 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:35:17,692.692 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:35:17,744.744 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:35:17,746.746 INFO    ] No camera update needed
[2026-06-27 15:35:17,747.747 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:35:17,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:35:17,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:35:17,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:35:19,796.796 INFO    ] ================================================
[2026-06-27 15:35:19,811.811 INFO    ] Launching Daemon at Sat Jun 27 15:35:19 IST 2026
[2026-06-27 15:35:19,822.822 INFO    ] ================================================
[2026-06-27 15:35:20,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:35:20
[2026-06-27 15:35:20,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:35:20,613.613 INFO    ] Initializing speech engine...
[2026-06-27 15:35:20,618.618 INFO    ] 2026-06-27 15:35:20
[2026-06-27 15:35:20,827.827 INFO    ] 2026-06-27 15:35:20
[2026-06-27 15:35:20,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:35:21,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:35:21,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:35:21,340.340 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:35:21,344.344 INFO    ] time= 27/06/2026 15:35:21
[2026-06-27 15:35:21,370.370 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:35:21,371.371 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:35:21,469.469 INFO    ] No existing commands found in stream
[2026-06-27 15:35:26,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:35:26,482.482 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-27 15:35:30,005.005 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 15:35:30,006.006 INFO    ] Checking for system updates...
[2026-06-27 15:35:30,027.027 INFO    ] 200
[2026-06-27 15:35:30,028.028 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:35:30,061.061 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:35:30,062.062 INFO    ] No update needed
[2026-06-27 15:35:30,063.063 INFO    ] Checking for camera pi updates...
[2026-06-27 15:35:30,084.084 INFO    ] 200
[2026-06-27 15:35:30,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:35:30,110.110 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:35:30,153.153 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:35:30,155.155 INFO    ] No camera update needed
[2026-06-27 15:35:30,156.156 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:35:30,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:35:30,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:35:30,163.163 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:35:32,196.196 INFO    ] ================================================
[2026-06-27 15:35:32,205.205 INFO    ] Launching Daemon at Sat Jun 27 15:35:32 IST 2026
[2026-06-27 15:35:32,212.212 INFO    ] ================================================
[2026-06-27 15:35:32,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:35:32
[2026-06-27 15:35:32,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:35:33,011.011 INFO    ] Initializing speech engine...
[2026-06-27 15:35:33,022.022 INFO    ] 2026-06-27 15:35:33
[2026-06-27 15:35:33,236.236 INFO    ] 2026-06-27 15:35:33
[2026-06-27 15:35:33,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:35:33,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:35:33,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:35:33,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:35:33,697.697 INFO    ] time= 27/06/2026 15:35:33
[2026-06-27 15:35:33,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:35:33,721.721 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:35:33,793.793 INFO    ] No existing commands found in stream
[2026-06-27 15:35:38,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:35:38,810.810 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-27 15:35:39,685.685 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:35:39,686.686 INFO    ] Checking for system updates...
[2026-06-27 15:35:39,707.707 INFO    ] 200
[2026-06-27 15:35:39,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:35:39,741.741 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:35:39,743.743 INFO    ] No update needed
[2026-06-27 15:35:39,744.744 INFO    ] Checking for camera pi updates...
[2026-06-27 15:35:39,764.764 INFO    ] 200
[2026-06-27 15:35:39,766.766 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:35:39,789.789 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:35:39,830.830 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:35:39,831.831 INFO    ] No camera update needed
[2026-06-27 15:35:39,832.832 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:35:39,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:35:39,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:35:39,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:35:41,879.879 INFO    ] ================================================
[2026-06-27 15:35:41,894.894 INFO    ] Launching Daemon at Sat Jun 27 15:35:41 IST 2026
[2026-06-27 15:35:41,905.905 INFO    ] ================================================
[2026-06-27 15:35:42,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:35:42
[2026-06-27 15:35:42,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:35:42,702.702 INFO    ] Initializing speech engine...
[2026-06-27 15:35:42,707.707 INFO    ] 2026-06-27 15:35:42
[2026-06-27 15:35:42,912.912 INFO    ] 2026-06-27 15:35:42
[2026-06-27 15:35:42,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:35:43,123.123 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:35:43,127.127 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:35:43,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:35:43,330.330 INFO    ] time= 27/06/2026 15:35:43
[2026-06-27 15:35:43,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:35:43,360.360 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:35:43,426.426 INFO    ] No existing commands found in stream
[2026-06-27 15:35:48,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:35:48,438.438 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-27 15:35:52,234.234 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:35:52,235.235 INFO    ] Checking for system updates...
[2026-06-27 15:35:52,256.256 INFO    ] 200
[2026-06-27 15:35:52,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:35:52,289.289 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:35:52,290.290 INFO    ] No update needed
[2026-06-27 15:35:52,292.292 INFO    ] Checking for camera pi updates...
[2026-06-27 15:35:52,311.311 INFO    ] 200
[2026-06-27 15:35:52,313.313 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:35:52,336.336 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:35:52,383.383 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:35:52,384.384 INFO    ] No camera update needed
[2026-06-27 15:35:52,386.386 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:35:52,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:35:52,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:35:52,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:35:54,432.432 INFO    ] ================================================
[2026-06-27 15:35:54,447.447 INFO    ] Launching Daemon at Sat Jun 27 15:35:54 IST 2026
[2026-06-27 15:35:54,457.457 INFO    ] ================================================
[2026-06-27 15:35:54,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:35:54
[2026-06-27 15:35:55,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:35:55,237.237 INFO    ] Initializing speech engine...
[2026-06-27 15:35:55,241.241 INFO    ] 2026-06-27 15:35:55
[2026-06-27 15:35:55,457.457 INFO    ] 2026-06-27 15:35:55
[2026-06-27 15:35:55,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:35:55,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:35:55,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:35:55,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:35:55,964.964 INFO    ] time= 27/06/2026 15:35:55
[2026-06-27 15:35:55,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:35:55,991.991 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:35:56,092.092 INFO    ] No existing commands found in stream
[2026-06-27 15:36:01,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:36:01,107.107 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-27 15:36:02,304.304 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 15:36:02,305.305 INFO    ] Checking for system updates...
[2026-06-27 15:36:02,334.334 INFO    ] 200
[2026-06-27 15:36:02,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:36:02,367.367 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:36:02,369.369 INFO    ] No update needed
[2026-06-27 15:36:02,370.370 INFO    ] Checking for camera pi updates...
[2026-06-27 15:36:02,390.390 INFO    ] 200
[2026-06-27 15:36:02,391.391 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:36:02,415.415 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:36:02,443.443 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:36:02,444.444 INFO    ] No camera update needed
[2026-06-27 15:36:02,445.445 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:36:02,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:36:02,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:36:02,452.452 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:36:04,495.495 INFO    ] ================================================
[2026-06-27 15:36:04,510.510 INFO    ] Launching Daemon at Sat Jun 27 15:36:04 IST 2026
[2026-06-27 15:36:04,520.520 INFO    ] ================================================
[2026-06-27 15:36:04,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:36:04
[2026-06-27 15:36:05,183.183 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:36:05,333.333 INFO    ] Initializing speech engine...
[2026-06-27 15:36:05,337.337 INFO    ] 2026-06-27 15:36:05
[2026-06-27 15:36:05,558.558 INFO    ] 2026-06-27 15:36:05
[2026-06-27 15:36:05,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:36:05,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:36:05,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:36:05,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:36:05,982.982 INFO    ] time= 27/06/2026 15:36:05
[2026-06-27 15:36:06,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:36:06,011.011 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:36:06,079.079 INFO    ] No existing commands found in stream
[2026-06-27 15:36:11,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:36:11,089.089 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-27 15:36:13,301.301 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:36:13,304.304 INFO    ] Checking for system updates...
[2026-06-27 15:36:13,341.341 INFO    ] 200
[2026-06-27 15:36:13,344.344 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:36:13,398.398 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:36:13,401.401 INFO    ] No update needed
[2026-06-27 15:36:13,404.404 INFO    ] Checking for camera pi updates...
[2026-06-27 15:36:13,440.440 INFO    ] 200
[2026-06-27 15:36:13,443.443 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:36:13,489.489 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:36:13,536.536 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:36:13,537.537 INFO    ] No camera update needed
[2026-06-27 15:36:13,538.538 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:36:13,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:36:13,543.543 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:36:13,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:36:15,586.586 INFO    ] ================================================
[2026-06-27 15:36:15,601.601 INFO    ] Launching Daemon at Sat Jun 27 15:36:15 IST 2026
[2026-06-27 15:36:15,612.612 INFO    ] ================================================
[2026-06-27 15:36:15,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:36:15
[2026-06-27 15:36:16,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:36:16,434.434 INFO    ] Initializing speech engine...
[2026-06-27 15:36:16,439.439 INFO    ] 2026-06-27 15:36:16
[2026-06-27 15:36:16,642.642 INFO    ] 2026-06-27 15:36:16
[2026-06-27 15:36:16,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:36:16,853.853 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:36:16,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:36:17,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:36:17,059.059 INFO    ] time= 27/06/2026 15:36:17
[2026-06-27 15:36:17,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:36:17,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:36:17,154.154 INFO    ] No existing commands found in stream
[2026-06-27 15:36:22,168.168 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:36:22,171.171 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-27 15:36:26,226.226 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:36:26,228.228 INFO    ] Checking for system updates...
[2026-06-27 15:36:26,251.251 INFO    ] 200
[2026-06-27 15:36:26,252.252 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:36:26,285.285 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:36:26,286.286 INFO    ] No update needed
[2026-06-27 15:36:26,287.287 INFO    ] Checking for camera pi updates...
[2026-06-27 15:36:26,307.307 INFO    ] 200
[2026-06-27 15:36:26,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:36:26,331.331 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:36:26,373.373 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:36:26,374.374 INFO    ] No camera update needed
[2026-06-27 15:36:26,376.376 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:36:26,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:36:26,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:36:26,382.382 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:36:28,422.422 INFO    ] ================================================
[2026-06-27 15:36:28,437.437 INFO    ] Launching Daemon at Sat Jun 27 15:36:28 IST 2026
[2026-06-27 15:36:28,448.448 INFO    ] ================================================
[2026-06-27 15:36:28,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:36:28
[2026-06-27 15:36:29,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:36:29,255.255 INFO    ] Initializing speech engine...
[2026-06-27 15:36:29,260.260 INFO    ] 2026-06-27 15:36:29
[2026-06-27 15:36:29,465.465 INFO    ] 2026-06-27 15:36:29
[2026-06-27 15:36:29,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:36:29,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:36:29,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:36:29,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:36:29,902.902 INFO    ] time= 27/06/2026 15:36:29
[2026-06-27 15:36:29,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:36:29,909.909 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:36:30,000.000 INFO    ] No existing commands found in stream
[2026-06-27 15:36:35,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:36:35,017.017 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-27 15:36:37,777.777 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:36:37,778.778 INFO    ] Checking for system updates...
[2026-06-27 15:36:37,799.799 INFO    ] 200
[2026-06-27 15:36:37,800.800 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:36:37,832.832 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:36:37,834.834 INFO    ] No update needed
[2026-06-27 15:36:37,835.835 INFO    ] Checking for camera pi updates...
[2026-06-27 15:36:37,855.855 INFO    ] 200
[2026-06-27 15:36:37,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:36:37,880.880 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:36:38,025.025 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:36:38,026.026 INFO    ] No camera update needed
[2026-06-27 15:36:38,027.027 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:36:38,029.029 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:36:38,032.032 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:36:38,034.034 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:36:40,073.073 INFO    ] ================================================
[2026-06-27 15:36:40,089.089 INFO    ] Launching Daemon at Sat Jun 27 15:36:40 IST 2026
[2026-06-27 15:36:40,099.099 INFO    ] ================================================
[2026-06-27 15:36:40,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:36:40
[2026-06-27 15:36:40,755.755 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:36:40,899.899 INFO    ] Initializing speech engine...
[2026-06-27 15:36:40,904.904 INFO    ] 2026-06-27 15:36:40
[2026-06-27 15:36:41,109.109 INFO    ] 2026-06-27 15:36:41
[2026-06-27 15:36:41,138.138 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:36:41,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:36:41,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:36:41,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:36:41,525.525 INFO    ] time= 27/06/2026 15:36:41
[2026-06-27 15:36:41,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:36:41,554.554 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:36:41,621.621 INFO    ] No existing commands found in stream
[2026-06-27 15:36:46,635.635 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:36:46,638.638 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-27 15:36:50,334.334 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:36:50,336.336 INFO    ] Checking for system updates...
[2026-06-27 15:36:50,356.356 INFO    ] 200
[2026-06-27 15:36:50,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:36:50,390.390 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:36:50,392.392 INFO    ] No update needed
[2026-06-27 15:36:50,393.393 INFO    ] Checking for camera pi updates...
[2026-06-27 15:36:50,414.414 INFO    ] 200
[2026-06-27 15:36:50,415.415 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:36:50,440.440 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:36:50,480.480 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:36:50,482.482 INFO    ] No camera update needed
[2026-06-27 15:36:50,483.483 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:36:50,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:36:50,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:36:50,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:36:52,530.530 INFO    ] ================================================
[2026-06-27 15:36:52,546.546 INFO    ] Launching Daemon at Sat Jun 27 15:36:52 IST 2026
[2026-06-27 15:36:52,557.557 INFO    ] ================================================
[2026-06-27 15:36:52,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:36:52
[2026-06-27 15:36:53,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:36:53,394.394 INFO    ] Initializing speech engine...
[2026-06-27 15:36:53,399.399 INFO    ] 2026-06-27 15:36:53
[2026-06-27 15:36:53,605.605 INFO    ] 2026-06-27 15:36:53
[2026-06-27 15:36:53,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:36:53,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:36:53,950.950 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:36:54,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:36:54,122.122 INFO    ] time= 27/06/2026 15:36:54
[2026-06-27 15:36:54,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:36:54,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:36:54,247.247 INFO    ] No existing commands found in stream
[2026-06-27 15:36:59,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:36:59,260.260 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-27 15:37:02,815.815 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 15:37:02,818.818 INFO    ] Checking for system updates...
[2026-06-27 15:37:02,854.854 INFO    ] 200
[2026-06-27 15:37:02,857.857 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:37:02,897.897 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:37:02,898.898 INFO    ] No update needed
[2026-06-27 15:37:02,900.900 INFO    ] Checking for camera pi updates...
[2026-06-27 15:37:02,919.919 INFO    ] 200
[2026-06-27 15:37:02,921.921 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:37:02,947.947 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:37:02,994.994 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:37:02,995.995 INFO    ] No camera update needed
[2026-06-27 15:37:02,996.996 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:37:02,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:37:03,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:37:03,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:37:05,044.044 INFO    ] ================================================
[2026-06-27 15:37:05,059.059 INFO    ] Launching Daemon at Sat Jun 27 15:37:05 IST 2026
[2026-06-27 15:37:05,069.069 INFO    ] ================================================
[2026-06-27 15:37:05,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:37:05
[2026-06-27 15:37:05,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:37:05,920.920 INFO    ] Initializing speech engine...
[2026-06-27 15:37:05,925.925 INFO    ] 2026-06-27 15:37:05
[2026-06-27 15:37:06,132.132 INFO    ] 2026-06-27 15:37:06
[2026-06-27 15:37:06,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:37:06,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:37:06,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:37:06,641.641 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:37:06,645.645 INFO    ] time= 27/06/2026 15:37:06
[2026-06-27 15:37:06,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:37:06,672.672 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:37:06,774.774 INFO    ] No existing commands found in stream
[2026-06-27 15:37:11,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:37:11,787.787 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-27 15:37:16,004.004 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 15:37:16,005.005 INFO    ] Checking for system updates...
[2026-06-27 15:37:16,026.026 INFO    ] 200
[2026-06-27 15:37:16,028.028 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:37:16,058.058 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:37:16,060.060 INFO    ] No update needed
[2026-06-27 15:37:16,061.061 INFO    ] Checking for camera pi updates...
[2026-06-27 15:37:16,080.080 INFO    ] 200
[2026-06-27 15:37:16,082.082 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:37:16,106.106 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:37:16,150.150 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:37:16,152.152 INFO    ] No camera update needed
[2026-06-27 15:37:16,153.153 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:37:16,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:37:16,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:37:16,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:37:18,199.199 INFO    ] ================================================
[2026-06-27 15:37:18,214.214 INFO    ] Launching Daemon at Sat Jun 27 15:37:18 IST 2026
[2026-06-27 15:37:18,225.225 INFO    ] ================================================
[2026-06-27 15:37:18,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:37:18
[2026-06-27 15:37:18,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:37:19,037.037 INFO    ] Initializing speech engine...
[2026-06-27 15:37:19,042.042 INFO    ] 2026-06-27 15:37:19
[2026-06-27 15:37:19,247.247 INFO    ] 2026-06-27 15:37:19
[2026-06-27 15:37:19,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:37:19,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:37:19,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:37:19,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:37:19,658.658 INFO    ] time= 27/06/2026 15:37:19
[2026-06-27 15:37:19,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:37:19,692.692 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:37:19,759.759 INFO    ] No existing commands found in stream
[2026-06-27 15:37:24,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:37:24,777.777 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-27 15:37:26,189.189 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:37:26,190.190 INFO    ] Checking for system updates...
[2026-06-27 15:37:26,212.212 INFO    ] 200
[2026-06-27 15:37:26,214.214 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:37:26,249.249 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:37:26,250.250 INFO    ] No update needed
[2026-06-27 15:37:26,252.252 INFO    ] Checking for camera pi updates...
[2026-06-27 15:37:26,274.274 INFO    ] 200
[2026-06-27 15:37:26,276.276 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:37:26,301.301 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:37:26,342.342 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:37:26,343.343 INFO    ] No camera update needed
[2026-06-27 15:37:26,345.345 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:37:26,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:37:26,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:37:26,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:37:28,392.392 INFO    ] ================================================
[2026-06-27 15:37:28,407.407 INFO    ] Launching Daemon at Sat Jun 27 15:37:28 IST 2026
[2026-06-27 15:37:28,418.418 INFO    ] ================================================
[2026-06-27 15:37:28,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:37:28
[2026-06-27 15:37:29,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:37:29,284.284 INFO    ] Initializing speech engine...
[2026-06-27 15:37:29,290.290 INFO    ] 2026-06-27 15:37:29
[2026-06-27 15:37:29,497.497 INFO    ] 2026-06-27 15:37:29
[2026-06-27 15:37:29,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:37:29,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:37:29,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:37:29,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:37:29,945.945 INFO    ] time= 27/06/2026 15:37:29
[2026-06-27 15:37:29,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:37:29,949.949 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:37:30,015.015 INFO    ] No existing commands found in stream
[2026-06-27 15:37:35,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:37:35,033.033 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-27 15:37:37,862.862 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 15:37:37,864.864 INFO    ] Checking for system updates...
[2026-06-27 15:37:37,885.885 INFO    ] 200
[2026-06-27 15:37:37,886.886 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:37:37,918.918 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:37:37,920.920 INFO    ] No update needed
[2026-06-27 15:37:37,921.921 INFO    ] Checking for camera pi updates...
[2026-06-27 15:37:37,941.941 INFO    ] 200
[2026-06-27 15:37:37,942.942 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:37:37,967.967 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:37:38,010.010 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:37:38,011.011 INFO    ] No camera update needed
[2026-06-27 15:37:38,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:37:38,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:37:38,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:37:38,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:37:40,059.059 INFO    ] ================================================
[2026-06-27 15:37:40,075.075 INFO    ] Launching Daemon at Sat Jun 27 15:37:40 IST 2026
[2026-06-27 15:37:40,086.086 INFO    ] ================================================
[2026-06-27 15:37:40,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:37:40
[2026-06-27 15:37:40,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:37:40,862.862 INFO    ] Initializing speech engine...
[2026-06-27 15:37:40,866.866 INFO    ] 2026-06-27 15:37:40
[2026-06-27 15:37:41,095.095 INFO    ] 2026-06-27 15:37:41
[2026-06-27 15:37:41,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:37:41,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:37:41,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:37:41,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:37:41,517.517 INFO    ] time= 27/06/2026 15:37:41
[2026-06-27 15:37:41,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:37:41,560.560 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:37:41,652.652 INFO    ] No existing commands found in stream
[2026-06-27 15:37:46,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:37:46,669.669 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-27 15:37:49,998.998 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:37:50,000.000 INFO    ] Checking for system updates...
[2026-06-27 15:37:50,022.022 INFO    ] 200
[2026-06-27 15:37:50,024.024 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:37:50,057.057 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:37:50,058.058 INFO    ] No update needed
[2026-06-27 15:37:50,060.060 INFO    ] Checking for camera pi updates...
[2026-06-27 15:37:50,082.082 INFO    ] 200
[2026-06-27 15:37:50,084.084 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:37:50,109.109 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:37:50,162.162 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:37:50,163.163 INFO    ] No camera update needed
[2026-06-27 15:37:50,165.165 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:37:50,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:37:50,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:37:50,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:37:52,204.204 INFO    ] ================================================
[2026-06-27 15:37:52,212.212 INFO    ] Launching Daemon at Sat Jun 27 15:37:52 IST 2026
[2026-06-27 15:37:52,218.218 INFO    ] ================================================
[2026-06-27 15:37:52,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:37:52
[2026-06-27 15:37:52,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:37:53,038.038 INFO    ] Initializing speech engine...
[2026-06-27 15:37:53,048.048 INFO    ] 2026-06-27 15:37:53
[2026-06-27 15:37:53,260.260 INFO    ] 2026-06-27 15:37:53
[2026-06-27 15:37:53,292.292 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:37:53,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:37:53,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:37:53,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:37:53,757.757 INFO    ] time= 27/06/2026 15:37:53
[2026-06-27 15:37:53,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:37:53,765.765 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:37:53,842.842 INFO    ] No existing commands found in stream
[2026-06-27 15:37:58,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:37:58,854.854 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-27 15:37:59,734.734 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 15:37:59,735.735 INFO    ] Checking for system updates...
[2026-06-27 15:37:59,757.757 INFO    ] 200
[2026-06-27 15:37:59,758.758 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:37:59,789.789 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:37:59,792.792 INFO    ] No update needed
[2026-06-27 15:37:59,793.793 INFO    ] Checking for camera pi updates...
[2026-06-27 15:37:59,813.813 INFO    ] 200
[2026-06-27 15:37:59,815.815 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:37:59,843.843 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:37:59,887.887 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:37:59,889.889 INFO    ] No camera update needed
[2026-06-27 15:37:59,890.890 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:37:59,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:37:59,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:37:59,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:38:01,933.933 INFO    ] ================================================
[2026-06-27 15:38:01,945.945 INFO    ] Launching Daemon at Sat Jun 27 15:38:01 IST 2026
[2026-06-27 15:38:01,954.954 INFO    ] ================================================
[2026-06-27 15:38:02,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:38:02
[2026-06-27 15:38:02,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:38:02,850.850 INFO    ] Initializing speech engine...
[2026-06-27 15:38:02,856.856 INFO    ] 2026-06-27 15:38:02
[2026-06-27 15:38:03,070.070 INFO    ] 2026-06-27 15:38:03
[2026-06-27 15:38:03,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:38:03,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:38:03,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:38:03,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:38:03,626.626 INFO    ] time= 27/06/2026 15:38:03
[2026-06-27 15:38:03,638.638 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:38:03,656.656 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:38:03,760.760 INFO    ] No existing commands found in stream
[2026-06-27 15:38:08,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:38:08,772.772 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-27 15:38:10,630.630 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:38:10,632.632 INFO    ] Checking for system updates...
[2026-06-27 15:38:10,654.654 INFO    ] 200
[2026-06-27 15:38:10,656.656 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:38:10,689.689 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:38:10,691.691 INFO    ] No update needed
[2026-06-27 15:38:10,693.693 INFO    ] Checking for camera pi updates...
[2026-06-27 15:38:10,713.713 INFO    ] 200
[2026-06-27 15:38:10,715.715 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:38:10,740.740 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:38:10,771.771 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:38:10,772.772 INFO    ] No camera update needed
[2026-06-27 15:38:10,774.774 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:38:10,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:38:10,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:38:10,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:38:12,820.820 INFO    ] ================================================
[2026-06-27 15:38:12,835.835 INFO    ] Launching Daemon at Sat Jun 27 15:38:12 IST 2026
[2026-06-27 15:38:12,846.846 INFO    ] ================================================
[2026-06-27 15:38:13,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:38:13
[2026-06-27 15:38:13,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:38:13,709.709 INFO    ] Initializing speech engine...
[2026-06-27 15:38:13,712.712 INFO    ] 2026-06-27 15:38:13
[2026-06-27 15:38:13,906.906 INFO    ] 2026-06-27 15:38:13
[2026-06-27 15:38:13,952.952 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:38:14,179.179 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:38:14,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:38:14,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:38:14,424.424 INFO    ] time= 27/06/2026 15:38:14
[2026-06-27 15:38:14,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:38:14,431.431 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:38:14,504.504 INFO    ] No existing commands found in stream
[2026-06-27 15:38:19,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:38:19,516.516 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-27 15:38:23,589.589 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:38:23,590.590 INFO    ] Checking for system updates...
[2026-06-27 15:38:23,613.613 INFO    ] 200
[2026-06-27 15:38:23,614.614 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:38:23,647.647 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:38:23,648.648 INFO    ] No update needed
[2026-06-27 15:38:23,649.649 INFO    ] Checking for camera pi updates...
[2026-06-27 15:38:23,669.669 INFO    ] 200
[2026-06-27 15:38:23,670.670 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:38:23,693.693 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:38:23,739.739 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:38:23,741.741 INFO    ] No camera update needed
[2026-06-27 15:38:23,742.742 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:38:23,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:38:23,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:38:23,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:38:25,790.790 INFO    ] ================================================
[2026-06-27 15:38:25,807.807 INFO    ] Launching Daemon at Sat Jun 27 15:38:25 IST 2026
[2026-06-27 15:38:25,818.818 INFO    ] ================================================
[2026-06-27 15:38:26,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:38:26
[2026-06-27 15:38:26,472.472 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:38:26,602.602 INFO    ] Initializing speech engine...
[2026-06-27 15:38:26,606.606 INFO    ] 2026-06-27 15:38:26
[2026-06-27 15:38:26,825.825 INFO    ] 2026-06-27 15:38:26
[2026-06-27 15:38:26,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:38:26,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:38:27,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:38:27,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:38:27,272.272 INFO    ] time= 27/06/2026 15:38:27
[2026-06-27 15:38:27,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:38:27,281.281 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:38:27,349.349 INFO    ] No existing commands found in stream
[2026-06-27 15:38:32,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:38:32,356.356 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-27 15:38:36,689.689 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 15:38:36,691.691 INFO    ] Checking for system updates...
[2026-06-27 15:38:36,713.713 INFO    ] 200
[2026-06-27 15:38:36,714.714 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:38:36,745.745 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:38:36,746.746 INFO    ] No update needed
[2026-06-27 15:38:36,747.747 INFO    ] Checking for camera pi updates...
[2026-06-27 15:38:36,768.768 INFO    ] 200
[2026-06-27 15:38:36,769.769 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:38:36,793.793 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:38:36,832.832 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:38:36,834.834 INFO    ] No camera update needed
[2026-06-27 15:38:36,835.835 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:38:36,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:38:36,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:38:36,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:38:38,882.882 INFO    ] ================================================
[2026-06-27 15:38:38,897.897 INFO    ] Launching Daemon at Sat Jun 27 15:38:38 IST 2026
[2026-06-27 15:38:38,908.908 INFO    ] ================================================
[2026-06-27 15:38:39,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:38:39
[2026-06-27 15:38:39,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:38:39,716.716 INFO    ] Initializing speech engine...
[2026-06-27 15:38:39,721.721 INFO    ] 2026-06-27 15:38:39
[2026-06-27 15:38:39,938.938 INFO    ] 2026-06-27 15:38:39
[2026-06-27 15:38:39,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:38:40,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:38:40,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:38:40,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:38:40,385.385 INFO    ] time= 27/06/2026 15:38:40
[2026-06-27 15:38:40,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:38:40,392.392 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:38:40,462.462 INFO    ] No existing commands found in stream
[2026-06-27 15:38:45,471.471 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:38:45,474.474 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-27 15:38:46,770.770 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 15:38:46,772.772 INFO    ] Checking for system updates...
[2026-06-27 15:38:46,793.793 INFO    ] 200
[2026-06-27 15:38:46,795.795 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:38:46,825.825 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:38:46,826.826 INFO    ] No update needed
[2026-06-27 15:38:46,827.827 INFO    ] Checking for camera pi updates...
[2026-06-27 15:38:46,847.847 INFO    ] 200
[2026-06-27 15:38:46,848.848 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:38:46,871.871 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:38:47,013.013 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:38:47,014.014 INFO    ] No camera update needed
[2026-06-27 15:38:47,016.016 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:38:47,017.017 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:38:47,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:38:47,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:38:49,062.062 INFO    ] ================================================
[2026-06-27 15:38:49,077.077 INFO    ] Launching Daemon at Sat Jun 27 15:38:49 IST 2026
[2026-06-27 15:38:49,088.088 INFO    ] ================================================
[2026-06-27 15:38:49,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:38:49
[2026-06-27 15:38:49,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:38:49,889.889 INFO    ] Initializing speech engine...
[2026-06-27 15:38:49,892.892 INFO    ] 2026-06-27 15:38:49
[2026-06-27 15:38:50,085.085 INFO    ] 2026-06-27 15:38:50
[2026-06-27 15:38:50,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:38:50,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:38:50,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:38:50,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:38:50,606.606 INFO    ] time= 27/06/2026 15:38:50
[2026-06-27 15:38:50,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:38:50,614.614 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:38:50,740.740 INFO    ] No existing commands found in stream
[2026-06-27 15:38:55,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:38:55,752.752 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-27 15:38:59,596.596 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 15:38:59,597.597 INFO    ] Checking for system updates...
[2026-06-27 15:38:59,619.619 INFO    ] 200
[2026-06-27 15:38:59,621.621 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:38:59,652.652 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:38:59,654.654 INFO    ] No update needed
[2026-06-27 15:38:59,655.655 INFO    ] Checking for camera pi updates...
[2026-06-27 15:38:59,675.675 INFO    ] 200
[2026-06-27 15:38:59,676.676 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:38:59,702.702 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:38:59,747.747 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:38:59,748.748 INFO    ] No camera update needed
[2026-06-27 15:38:59,749.749 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:38:59,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:38:59,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:38:59,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:39:01,817.817 INFO    ] ================================================
[2026-06-27 15:39:01,833.833 INFO    ] Launching Daemon at Sat Jun 27 15:39:01 IST 2026
[2026-06-27 15:39:01,849.849 INFO    ] ================================================
[2026-06-27 15:39:02,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:39:02
[2026-06-27 15:39:02,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:39:02,842.842 INFO    ] Initializing speech engine...
[2026-06-27 15:39:02,848.848 INFO    ] 2026-06-27 15:39:02
[2026-06-27 15:39:03,068.068 INFO    ] 2026-06-27 15:39:03
[2026-06-27 15:39:03,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:39:03,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:39:03,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:39:03,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:39:03,542.542 INFO    ] time= 27/06/2026 15:39:03
[2026-06-27 15:39:03,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:39:03,549.549 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:39:03,646.646 INFO    ] No existing commands found in stream
[2026-06-27 15:39:08,655.655 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:39:08,658.658 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-27 15:39:09,204.204 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:39:09,206.206 INFO    ] Checking for system updates...
[2026-06-27 15:39:09,229.229 INFO    ] 200
[2026-06-27 15:39:09,230.230 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:39:09,260.260 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:39:09,261.261 INFO    ] No update needed
[2026-06-27 15:39:09,263.263 INFO    ] Checking for camera pi updates...
[2026-06-27 15:39:09,283.283 INFO    ] 200
[2026-06-27 15:39:09,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:39:09,307.307 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:39:09,352.352 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:39:09,354.354 INFO    ] No camera update needed
[2026-06-27 15:39:09,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:39:09,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:39:09,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:39:09,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:39:11,401.401 INFO    ] ================================================
[2026-06-27 15:39:11,416.416 INFO    ] Launching Daemon at Sat Jun 27 15:39:11 IST 2026
[2026-06-27 15:39:11,426.426 INFO    ] ================================================
[2026-06-27 15:39:11,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:39:11
[2026-06-27 15:39:12,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:39:12,270.270 INFO    ] Initializing speech engine...
[2026-06-27 15:39:12,277.277 INFO    ] 2026-06-27 15:39:12
[2026-06-27 15:39:12,485.485 INFO    ] 2026-06-27 15:39:12
[2026-06-27 15:39:12,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:39:12,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:39:12,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:39:12,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:39:12,996.996 INFO    ] time= 27/06/2026 15:39:12
[2026-06-27 15:39:13,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:39:13,024.024 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:39:13,153.153 INFO    ] No existing commands found in stream
[2026-06-27 15:39:18,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:39:18,167.167 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-27 15:39:19,862.862 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 15:39:19,863.863 INFO    ] Checking for system updates...
[2026-06-27 15:39:19,885.885 INFO    ] 200
[2026-06-27 15:39:19,886.886 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:39:19,919.919 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:39:19,920.920 INFO    ] No update needed
[2026-06-27 15:39:19,921.921 INFO    ] Checking for camera pi updates...
[2026-06-27 15:39:19,945.945 INFO    ] 200
[2026-06-27 15:39:19,946.946 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:39:19,973.973 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:39:20,018.018 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:39:20,019.019 INFO    ] No camera update needed
[2026-06-27 15:39:20,021.021 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:39:20,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:39:20,025.025 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:39:20,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:39:22,068.068 INFO    ] ================================================
[2026-06-27 15:39:22,082.082 INFO    ] Launching Daemon at Sat Jun 27 15:39:22 IST 2026
[2026-06-27 15:39:22,096.096 INFO    ] ================================================
[2026-06-27 15:39:22,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:39:22
[2026-06-27 15:39:22,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:39:22,955.955 INFO    ] Initializing speech engine...
[2026-06-27 15:39:22,969.969 INFO    ] 2026-06-27 15:39:22
[2026-06-27 15:39:23,182.182 INFO    ] 2026-06-27 15:39:23
[2026-06-27 15:39:23,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:39:23,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:39:23,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:39:23,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:39:23,629.629 INFO    ] time= 27/06/2026 15:39:23
[2026-06-27 15:39:23,631.631 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:39:23,637.637 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:39:23,703.703 INFO    ] No existing commands found in stream
[2026-06-27 15:39:28,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:39:28,717.717 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-27 15:39:30,234.234 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:39:30,236.236 INFO    ] Checking for system updates...
[2026-06-27 15:39:30,258.258 INFO    ] 200
[2026-06-27 15:39:30,260.260 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:39:30,290.290 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:39:30,291.291 INFO    ] No update needed
[2026-06-27 15:39:30,293.293 INFO    ] Checking for camera pi updates...
[2026-06-27 15:39:30,312.312 INFO    ] 200
[2026-06-27 15:39:30,314.314 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:39:30,337.337 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:39:30,384.384 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:39:30,385.385 INFO    ] No camera update needed
[2026-06-27 15:39:30,386.386 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:39:30,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:39:30,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:39:30,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:39:32,425.425 INFO    ] ================================================
[2026-06-27 15:39:32,434.434 INFO    ] Launching Daemon at Sat Jun 27 15:39:32 IST 2026
[2026-06-27 15:39:32,441.441 INFO    ] ================================================
[2026-06-27 15:39:32,759.759 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:39:32
[2026-06-27 15:39:33,072.072 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:39:33,205.205 INFO    ] Initializing speech engine...
[2026-06-27 15:39:33,210.210 INFO    ] 2026-06-27 15:39:33
[2026-06-27 15:39:33,418.418 INFO    ] 2026-06-27 15:39:33
[2026-06-27 15:39:33,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:39:33,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:39:33,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:39:33,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:39:33,869.869 INFO    ] time= 27/06/2026 15:39:33
[2026-06-27 15:39:33,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:39:33,921.921 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:39:33,998.998 INFO    ] No existing commands found in stream
[2026-06-27 15:39:39,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:39:39,015.015 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-27 15:39:42,729.729 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 15:39:42,730.730 INFO    ] Checking for system updates...
[2026-06-27 15:39:42,751.751 INFO    ] 200
[2026-06-27 15:39:42,752.752 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:39:42,784.784 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:39:42,785.785 INFO    ] No update needed
[2026-06-27 15:39:42,787.787 INFO    ] Checking for camera pi updates...
[2026-06-27 15:39:42,808.808 INFO    ] 200
[2026-06-27 15:39:42,810.810 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:39:42,835.835 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:39:42,880.880 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:39:42,881.881 INFO    ] No camera update needed
[2026-06-27 15:39:42,882.882 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:39:42,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:39:42,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:39:42,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:39:44,937.937 INFO    ] ================================================
[2026-06-27 15:39:44,959.959 INFO    ] Launching Daemon at Sat Jun 27 15:39:44 IST 2026
[2026-06-27 15:39:44,969.969 INFO    ] ================================================
[2026-06-27 15:39:45,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:39:45
[2026-06-27 15:39:45,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:39:45,774.774 INFO    ] Initializing speech engine...
[2026-06-27 15:39:45,779.779 INFO    ] 2026-06-27 15:39:45
[2026-06-27 15:39:45,983.983 INFO    ] 2026-06-27 15:39:45
[2026-06-27 15:39:46,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:39:46,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:39:46,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:39:46,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:39:46,405.405 INFO    ] time= 27/06/2026 15:39:46
[2026-06-27 15:39:46,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:39:46,434.434 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:39:46,501.501 INFO    ] No existing commands found in stream
[2026-06-27 15:39:51,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:39:51,513.513 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-27 15:39:54,496.496 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 15:39:54,497.497 INFO    ] Checking for system updates...
[2026-06-27 15:39:54,519.519 INFO    ] 200
[2026-06-27 15:39:54,521.521 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:39:54,553.553 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:39:54,555.555 INFO    ] No update needed
[2026-06-27 15:39:54,556.556 INFO    ] Checking for camera pi updates...
[2026-06-27 15:39:54,577.577 INFO    ] 200
[2026-06-27 15:39:54,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:39:54,602.602 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:39:54,630.630 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:39:54,631.631 INFO    ] No camera update needed
[2026-06-27 15:39:54,633.633 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:39:54,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:39:54,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:39:54,641.641 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:39:56,672.672 INFO    ] ================================================
[2026-06-27 15:39:56,681.681 INFO    ] Launching Daemon at Sat Jun 27 15:39:56 IST 2026
[2026-06-27 15:39:56,688.688 INFO    ] ================================================
[2026-06-27 15:39:57,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:39:57
[2026-06-27 15:39:57,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:39:57,507.507 INFO    ] Initializing speech engine...
[2026-06-27 15:39:57,522.522 INFO    ] 2026-06-27 15:39:57
[2026-06-27 15:39:57,711.711 INFO    ] 2026-06-27 15:39:57
[2026-06-27 15:39:57,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:39:57,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:39:58,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:39:58,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:39:58,226.226 INFO    ] time= 27/06/2026 15:39:58
[2026-06-27 15:39:58,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:39:58,278.278 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:39:58,380.380 INFO    ] No existing commands found in stream
[2026-06-27 15:40:03,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:40:03,388.388 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-27 15:40:07,906.906 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:40:07,908.908 INFO    ] Checking for system updates...
[2026-06-27 15:40:07,929.929 INFO    ] 200
[2026-06-27 15:40:07,930.930 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:40:07,964.964 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:40:07,966.966 INFO    ] No update needed
[2026-06-27 15:40:07,967.967 INFO    ] Checking for camera pi updates...
[2026-06-27 15:40:07,987.987 INFO    ] 200
[2026-06-27 15:40:07,988.988 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:40:08,012.012 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:40:08,058.058 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:40:08,060.060 INFO    ] No camera update needed
[2026-06-27 15:40:08,061.061 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:40:08,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:40:08,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:40:08,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:40:10,099.099 INFO    ] ================================================
[2026-06-27 15:40:10,107.107 INFO    ] Launching Daemon at Sat Jun 27 15:40:10 IST 2026
[2026-06-27 15:40:10,113.113 INFO    ] ================================================
[2026-06-27 15:40:10,442.442 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:40:10
[2026-06-27 15:40:10,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:40:10,936.936 INFO    ] Initializing speech engine...
[2026-06-27 15:40:10,941.941 INFO    ] 2026-06-27 15:40:10
[2026-06-27 15:40:11,152.152 INFO    ] 2026-06-27 15:40:11
[2026-06-27 15:40:11,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:40:11,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:40:11,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:40:11,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:40:11,580.580 INFO    ] time= 27/06/2026 15:40:11
[2026-06-27 15:40:11,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:40:11,609.609 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:40:11,700.700 INFO    ] No existing commands found in stream
[2026-06-27 15:40:16,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:40:16,713.713 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-27 15:40:20,285.285 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:40:20,287.287 INFO    ] Checking for system updates...
[2026-06-27 15:40:20,308.308 INFO    ] 200
[2026-06-27 15:40:20,309.309 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:40:20,341.341 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:40:20,342.342 INFO    ] No update needed
[2026-06-27 15:40:20,344.344 INFO    ] Checking for camera pi updates...
[2026-06-27 15:40:20,368.368 INFO    ] 200
[2026-06-27 15:40:20,369.369 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:40:20,399.399 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:40:20,449.449 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:40:20,450.450 INFO    ] No camera update needed
[2026-06-27 15:40:20,451.451 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:40:20,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:40:20,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:40:20,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:40:22,498.498 INFO    ] ================================================
[2026-06-27 15:40:22,513.513 INFO    ] Launching Daemon at Sat Jun 27 15:40:22 IST 2026
[2026-06-27 15:40:22,525.525 INFO    ] ================================================
[2026-06-27 15:40:22,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:40:22
[2026-06-27 15:40:23,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:40:23,319.319 INFO    ] Initializing speech engine...
[2026-06-27 15:40:23,331.331 INFO    ] 2026-06-27 15:40:23
[2026-06-27 15:40:23,538.538 INFO    ] 2026-06-27 15:40:23
[2026-06-27 15:40:23,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:40:23,832.832 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:40:23,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:40:24,045.045 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:40:24,049.049 INFO    ] time= 27/06/2026 15:40:24
[2026-06-27 15:40:24,074.074 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:40:24,076.076 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:40:24,172.172 INFO    ] No existing commands found in stream
[2026-06-27 15:40:29,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:40:29,186.186 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-27 15:40:36,351.351 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:40:36,353.353 INFO    ] Checking for system updates...
[2026-06-27 15:40:36,374.374 INFO    ] 200
[2026-06-27 15:40:36,376.376 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:40:36,409.409 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:40:36,410.410 INFO    ] No update needed
[2026-06-27 15:40:36,411.411 INFO    ] Checking for camera pi updates...
[2026-06-27 15:40:36,432.432 INFO    ] 200
[2026-06-27 15:40:36,433.433 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:40:36,457.457 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:40:36,502.502 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:40:36,503.503 INFO    ] No camera update needed
[2026-06-27 15:40:36,505.505 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:40:36,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:40:36,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:40:36,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:40:38,551.551 INFO    ] ================================================
[2026-06-27 15:40:38,566.566 INFO    ] Launching Daemon at Sat Jun 27 15:40:38 IST 2026
[2026-06-27 15:40:38,576.576 INFO    ] ================================================
[2026-06-27 15:40:38,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:40:38
[2026-06-27 15:40:39,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:40:39,461.461 INFO    ] Initializing speech engine...
[2026-06-27 15:40:39,465.465 INFO    ] 2026-06-27 15:40:39
[2026-06-27 15:40:39,675.675 INFO    ] 2026-06-27 15:40:39
[2026-06-27 15:40:39,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:40:39,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:40:39,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:40:40,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:40:40,105.105 INFO    ] time= 27/06/2026 15:40:40
[2026-06-27 15:40:40,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:40:40,133.133 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:40:40,201.201 INFO    ] No existing commands found in stream
[2026-06-27 15:40:45,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:40:45,229.229 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-27 15:40:46,833.833 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:40:46,835.835 INFO    ] Checking for system updates...
[2026-06-27 15:40:46,858.858 INFO    ] 200
[2026-06-27 15:40:46,859.859 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:40:46,889.889 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:40:46,891.891 INFO    ] No update needed
[2026-06-27 15:40:46,892.892 INFO    ] Checking for camera pi updates...
[2026-06-27 15:40:46,911.911 INFO    ] 200
[2026-06-27 15:40:46,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:40:46,936.936 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:40:46,979.979 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:40:46,980.980 INFO    ] No camera update needed
[2026-06-27 15:40:46,981.981 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:40:46,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:40:46,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:40:46,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:40:49,028.028 INFO    ] ================================================
[2026-06-27 15:40:49,043.043 INFO    ] Launching Daemon at Sat Jun 27 15:40:49 IST 2026
[2026-06-27 15:40:49,053.053 INFO    ] ================================================
[2026-06-27 15:40:49,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:40:49
[2026-06-27 15:40:49,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:40:49,864.864 INFO    ] Initializing speech engine...
[2026-06-27 15:40:49,873.873 INFO    ] 2026-06-27 15:40:49
[2026-06-27 15:40:50,089.089 INFO    ] 2026-06-27 15:40:50
[2026-06-27 15:40:50,117.117 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:40:50,314.314 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:40:50,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:40:50,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:40:50,534.534 INFO    ] time= 27/06/2026 15:40:50
[2026-06-27 15:40:50,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:40:50,541.541 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:40:50,606.606 INFO    ] No existing commands found in stream
[2026-06-27 15:40:55,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:40:55,619.619 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-27 15:40:57,904.904 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:40:57,906.906 INFO    ] Checking for system updates...
[2026-06-27 15:40:57,932.932 INFO    ] 200
[2026-06-27 15:40:57,933.933 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:40:57,969.969 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:40:57,971.971 INFO    ] No update needed
[2026-06-27 15:40:57,972.972 INFO    ] Checking for camera pi updates...
[2026-06-27 15:40:57,992.992 INFO    ] 200
[2026-06-27 15:40:57,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:40:58,018.018 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:40:58,161.161 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:40:58,162.162 INFO    ] No camera update needed
[2026-06-27 15:40:58,164.164 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:40:58,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:40:58,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:40:58,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:41:00,212.212 INFO    ] ================================================
[2026-06-27 15:41:00,227.227 INFO    ] Launching Daemon at Sat Jun 27 15:41:00 IST 2026
[2026-06-27 15:41:00,239.239 INFO    ] ================================================
[2026-06-27 15:41:00,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:41:00
[2026-06-27 15:41:00,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:41:01,079.079 INFO    ] Initializing speech engine...
[2026-06-27 15:41:01,092.092 INFO    ] 2026-06-27 15:41:01
[2026-06-27 15:41:01,305.305 INFO    ] 2026-06-27 15:41:01
[2026-06-27 15:41:01,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:41:01,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:41:01,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:41:01,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:41:01,845.845 INFO    ] time= 27/06/2026 15:41:01
[2026-06-27 15:41:01,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:41:01,913.913 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:41:01,997.997 INFO    ] No existing commands found in stream
[2026-06-27 15:41:07,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:41:07,009.009 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-27 15:41:10,459.459 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:41:10,460.460 INFO    ] Checking for system updates...
[2026-06-27 15:41:10,481.481 INFO    ] 200
[2026-06-27 15:41:10,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:41:10,516.516 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:41:10,517.517 INFO    ] No update needed
[2026-06-27 15:41:10,519.519 INFO    ] Checking for camera pi updates...
[2026-06-27 15:41:10,547.547 INFO    ] 200
[2026-06-27 15:41:10,549.549 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:41:10,572.572 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:41:10,625.625 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:41:10,626.626 INFO    ] No camera update needed
[2026-06-27 15:41:10,628.628 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:41:10,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:41:10,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:41:10,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:41:12,676.676 INFO    ] ================================================
[2026-06-27 15:41:12,692.692 INFO    ] Launching Daemon at Sat Jun 27 15:41:12 IST 2026
[2026-06-27 15:41:12,702.702 INFO    ] ================================================
[2026-06-27 15:41:13,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:41:13
[2026-06-27 15:41:13,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:41:13,589.589 INFO    ] Initializing speech engine...
[2026-06-27 15:41:13,595.595 INFO    ] 2026-06-27 15:41:13
[2026-06-27 15:41:13,802.802 INFO    ] 2026-06-27 15:41:13
[2026-06-27 15:41:13,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:41:13,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:41:14,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:41:14,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:41:14,247.247 INFO    ] time= 27/06/2026 15:41:14
[2026-06-27 15:41:14,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:41:14,254.254 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:41:14,321.321 INFO    ] No existing commands found in stream
[2026-06-27 15:41:19,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:41:19,334.334 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-27 15:41:21,737.737 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:41:21,738.738 INFO    ] Checking for system updates...
[2026-06-27 15:41:21,759.759 INFO    ] 200
[2026-06-27 15:41:21,761.761 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:41:21,791.791 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:41:21,793.793 INFO    ] No update needed
[2026-06-27 15:41:21,794.794 INFO    ] Checking for camera pi updates...
[2026-06-27 15:41:21,814.814 INFO    ] 200
[2026-06-27 15:41:21,816.816 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:41:21,841.841 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:41:21,888.888 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:41:21,889.889 INFO    ] No camera update needed
[2026-06-27 15:41:21,891.891 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:41:21,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:41:21,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:41:21,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:41:23,940.940 INFO    ] ================================================
[2026-06-27 15:41:23,955.955 INFO    ] Launching Daemon at Sat Jun 27 15:41:23 IST 2026
[2026-06-27 15:41:23,967.967 INFO    ] ================================================
[2026-06-27 15:41:24,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:41:24
[2026-06-27 15:41:24,616.616 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:41:24,755.755 INFO    ] Initializing speech engine...
[2026-06-27 15:41:24,765.765 INFO    ] 2026-06-27 15:41:24
[2026-06-27 15:41:24,971.971 INFO    ] 2026-06-27 15:41:24
[2026-06-27 15:41:24,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:41:25,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:41:25,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:41:25,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:41:25,529.529 INFO    ] time= 27/06/2026 15:41:25
[2026-06-27 15:41:25,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:41:25,534.534 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:41:25,661.661 INFO    ] No existing commands found in stream
[2026-06-27 15:41:30,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:41:30,669.669 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-27 15:41:33,559.559 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 15:41:33,561.561 INFO    ] Checking for system updates...
[2026-06-27 15:41:33,582.582 INFO    ] 200
[2026-06-27 15:41:33,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:41:33,614.614 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:41:33,616.616 INFO    ] No update needed
[2026-06-27 15:41:33,617.617 INFO    ] Checking for camera pi updates...
[2026-06-27 15:41:33,637.637 INFO    ] 200
[2026-06-27 15:41:33,638.638 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:41:33,664.664 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:41:33,704.704 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:41:33,705.705 INFO    ] No camera update needed
[2026-06-27 15:41:33,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:41:33,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:41:33,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:41:33,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:41:35,756.756 INFO    ] ================================================
[2026-06-27 15:41:35,771.771 INFO    ] Launching Daemon at Sat Jun 27 15:41:35 IST 2026
[2026-06-27 15:41:35,782.782 INFO    ] ================================================
[2026-06-27 15:41:36,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:41:36
[2026-06-27 15:41:36,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:41:36,596.596 INFO    ] Initializing speech engine...
[2026-06-27 15:41:36,602.602 INFO    ] 2026-06-27 15:41:36
[2026-06-27 15:41:36,810.810 INFO    ] 2026-06-27 15:41:36
[2026-06-27 15:41:36,839.839 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:41:37,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:41:37,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:41:37,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:41:37,329.329 INFO    ] time= 27/06/2026 15:41:37
[2026-06-27 15:41:37,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:41:37,356.356 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:41:37,475.475 INFO    ] No existing commands found in stream
[2026-06-27 15:41:42,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:41:42,487.487 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-27 15:41:45,444.444 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 15:41:45,446.446 INFO    ] Checking for system updates...
[2026-06-27 15:41:45,467.467 INFO    ] 200
[2026-06-27 15:41:45,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:41:45,502.502 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:41:45,503.503 INFO    ] No update needed
[2026-06-27 15:41:45,505.505 INFO    ] Checking for camera pi updates...
[2026-06-27 15:41:45,524.524 INFO    ] 200
[2026-06-27 15:41:45,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:41:45,549.549 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:41:45,600.600 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:41:45,601.601 INFO    ] No camera update needed
[2026-06-27 15:41:45,603.603 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:41:45,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:41:45,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:41:45,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:41:47,648.648 INFO    ] ================================================
[2026-06-27 15:41:47,664.664 INFO    ] Launching Daemon at Sat Jun 27 15:41:47 IST 2026
[2026-06-27 15:41:47,675.675 INFO    ] ================================================
[2026-06-27 15:41:48,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:41:48
[2026-06-27 15:41:48,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:41:48,504.504 INFO    ] Initializing speech engine...
[2026-06-27 15:41:48,516.516 INFO    ] 2026-06-27 15:41:48
[2026-06-27 15:41:48,724.724 INFO    ] 2026-06-27 15:41:48
[2026-06-27 15:41:48,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:41:48,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:41:48,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:41:49,103.103 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:41:49,152.152 INFO    ] time= 27/06/2026 15:41:49
[2026-06-27 15:41:49,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:41:49,182.182 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:41:49,274.274 INFO    ] No existing commands found in stream
[2026-06-27 15:41:54,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:41:54,291.291 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-27 15:41:58,413.413 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:41:58,415.415 INFO    ] Checking for system updates...
[2026-06-27 15:41:58,435.435 INFO    ] 200
[2026-06-27 15:41:58,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:41:58,469.469 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:41:58,470.470 INFO    ] No update needed
[2026-06-27 15:41:58,471.471 INFO    ] Checking for camera pi updates...
[2026-06-27 15:41:58,492.492 INFO    ] 200
[2026-06-27 15:41:58,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:41:58,517.517 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:41:58,560.560 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:41:58,562.562 INFO    ] No camera update needed
[2026-06-27 15:41:58,563.563 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:41:58,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:41:58,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:41:58,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:42:00,608.608 INFO    ] ================================================
[2026-06-27 15:42:00,624.624 INFO    ] Launching Daemon at Sat Jun 27 15:42:00 IST 2026
[2026-06-27 15:42:00,635.635 INFO    ] ================================================
[2026-06-27 15:42:01,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:42:01
[2026-06-27 15:42:01,364.364 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:42:01,515.515 INFO    ] Initializing speech engine...
[2026-06-27 15:42:01,520.520 INFO    ] 2026-06-27 15:42:01
[2026-06-27 15:42:01,726.726 INFO    ] 2026-06-27 15:42:01
[2026-06-27 15:42:01,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:42:01,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:42:01,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:42:02,188.188 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:42:02,258.258 INFO    ] time= 27/06/2026 15:42:02
[2026-06-27 15:42:02,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:42:02,337.337 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:42:02,424.424 INFO    ] No existing commands found in stream
[2026-06-27 15:42:07,439.439 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:42:07,441.441 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-27 15:42:09,144.144 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 15:42:09,145.145 INFO    ] Checking for system updates...
[2026-06-27 15:42:09,167.167 INFO    ] 200
[2026-06-27 15:42:09,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:42:09,199.199 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:42:09,200.200 INFO    ] No update needed
[2026-06-27 15:42:09,201.201 INFO    ] Checking for camera pi updates...
[2026-06-27 15:42:09,222.222 INFO    ] 200
[2026-06-27 15:42:09,223.223 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:42:09,248.248 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:42:09,291.291 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:42:09,292.292 INFO    ] No camera update needed
[2026-06-27 15:42:09,294.294 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:42:09,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:42:09,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:42:09,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:42:11,340.340 INFO    ] ================================================
[2026-06-27 15:42:11,356.356 INFO    ] Launching Daemon at Sat Jun 27 15:42:11 IST 2026
[2026-06-27 15:42:11,366.366 INFO    ] ================================================
[2026-06-27 15:42:11,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:42:11
[2026-06-27 15:42:12,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:42:12,182.182 INFO    ] Initializing speech engine...
[2026-06-27 15:42:12,188.188 INFO    ] 2026-06-27 15:42:12
[2026-06-27 15:42:12,388.388 INFO    ] 2026-06-27 15:42:12
[2026-06-27 15:42:12,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:42:12,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:42:12,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:42:12,766.766 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:42:12,815.815 INFO    ] time= 27/06/2026 15:42:12
[2026-06-27 15:42:12,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:42:12,843.843 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:42:12,911.911 INFO    ] No existing commands found in stream
[2026-06-27 15:42:17,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:42:17,929.929 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-27 15:42:20,699.699 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:42:20,700.700 INFO    ] Checking for system updates...
[2026-06-27 15:42:20,721.721 INFO    ] 200
[2026-06-27 15:42:20,723.723 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:42:20,753.753 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:42:20,755.755 INFO    ] No update needed
[2026-06-27 15:42:20,756.756 INFO    ] Checking for camera pi updates...
[2026-06-27 15:42:20,776.776 INFO    ] 200
[2026-06-27 15:42:20,778.778 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:42:20,802.802 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:42:20,847.847 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:42:20,849.849 INFO    ] No camera update needed
[2026-06-27 15:42:20,850.850 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:42:20,851.851 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:42:20,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:42:20,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:42:22,897.897 INFO    ] ================================================
[2026-06-27 15:42:22,912.912 INFO    ] Launching Daemon at Sat Jun 27 15:42:22 IST 2026
[2026-06-27 15:42:22,923.923 INFO    ] ================================================
[2026-06-27 15:42:23,306.306 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:42:23
[2026-06-27 15:42:23,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:42:23,793.793 INFO    ] Initializing speech engine...
[2026-06-27 15:42:23,798.798 INFO    ] 2026-06-27 15:42:23
[2026-06-27 15:42:24,008.008 INFO    ] 2026-06-27 15:42:23
[2026-06-27 15:42:24,037.037 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:42:24,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:42:24,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:42:24,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:42:24,458.458 INFO    ] time= 27/06/2026 15:42:24
[2026-06-27 15:42:24,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:42:24,465.465 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:42:24,557.557 INFO    ] No existing commands found in stream
[2026-06-27 15:42:29,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:42:29,570.570 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-27 15:42:32,575.575 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 15:42:32,579.579 INFO    ] Checking for system updates...
[2026-06-27 15:42:32,605.605 INFO    ] 200
[2026-06-27 15:42:32,608.608 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:42:32,642.642 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:42:32,643.643 INFO    ] No update needed
[2026-06-27 15:42:32,645.645 INFO    ] Checking for camera pi updates...
[2026-06-27 15:42:32,666.666 INFO    ] 200
[2026-06-27 15:42:32,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:42:32,692.692 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:42:32,723.723 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:42:32,725.725 INFO    ] No camera update needed
[2026-06-27 15:42:32,726.726 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:42:32,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:42:32,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:42:32,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:42:34,767.767 INFO    ] ================================================
[2026-06-27 15:42:34,783.783 INFO    ] Launching Daemon at Sat Jun 27 15:42:34 IST 2026
[2026-06-27 15:42:34,794.794 INFO    ] ================================================
[2026-06-27 15:42:35,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:42:35
[2026-06-27 15:42:35,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:42:35,562.562 INFO    ] Initializing speech engine...
[2026-06-27 15:42:35,569.569 INFO    ] 2026-06-27 15:42:35
[2026-06-27 15:42:35,784.784 INFO    ] 2026-06-27 15:42:35
[2026-06-27 15:42:35,814.814 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:42:36,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:42:36,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:42:36,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:42:36,234.234 INFO    ] time= 27/06/2026 15:42:36
[2026-06-27 15:42:36,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:42:36,241.241 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:42:36,309.309 INFO    ] No existing commands found in stream
[2026-06-27 15:42:41,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:42:41,321.321 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-27 15:42:44,184.184 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 15:42:44,186.186 INFO    ] Checking for system updates...
[2026-06-27 15:42:44,207.207 INFO    ] 200
[2026-06-27 15:42:44,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:42:44,242.242 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:42:44,243.243 INFO    ] No update needed
[2026-06-27 15:42:44,245.245 INFO    ] Checking for camera pi updates...
[2026-06-27 15:42:44,268.268 INFO    ] 200
[2026-06-27 15:42:44,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:42:44,296.296 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:42:44,334.334 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:42:44,336.336 INFO    ] No camera update needed
[2026-06-27 15:42:44,337.337 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:42:44,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:42:44,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:42:44,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:42:46,390.390 INFO    ] ================================================
[2026-06-27 15:42:46,406.406 INFO    ] Launching Daemon at Sat Jun 27 15:42:46 IST 2026
[2026-06-27 15:42:46,417.417 INFO    ] ================================================
[2026-06-27 15:42:46,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:42:46
[2026-06-27 15:42:47,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:42:47,218.218 INFO    ] Initializing speech engine...
[2026-06-27 15:42:47,222.222 INFO    ] 2026-06-27 15:42:47
[2026-06-27 15:42:47,428.428 INFO    ] 2026-06-27 15:42:47
[2026-06-27 15:42:47,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:42:47,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:42:47,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:42:47,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:42:47,867.867 INFO    ] time= 27/06/2026 15:42:47
[2026-06-27 15:42:47,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:42:47,874.874 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:42:47,941.941 INFO    ] No existing commands found in stream
[2026-06-27 15:42:52,950.950 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:42:52,953.953 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-27 15:42:56,439.439 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:42:56,440.440 INFO    ] Checking for system updates...
[2026-06-27 15:42:56,461.461 INFO    ] 200
[2026-06-27 15:42:56,462.462 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:42:56,493.493 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:42:56,495.495 INFO    ] No update needed
[2026-06-27 15:42:56,496.496 INFO    ] Checking for camera pi updates...
[2026-06-27 15:42:56,515.515 INFO    ] 200
[2026-06-27 15:42:56,517.517 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:42:56,542.542 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:42:56,583.583 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:42:56,585.585 INFO    ] No camera update needed
[2026-06-27 15:42:56,587.587 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:42:56,588.588 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:42:56,591.591 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:42:56,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:42:58,633.633 INFO    ] ================================================
[2026-06-27 15:42:58,648.648 INFO    ] Launching Daemon at Sat Jun 27 15:42:58 IST 2026
[2026-06-27 15:42:58,659.659 INFO    ] ================================================
[2026-06-27 15:42:59,022.022 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:42:59
[2026-06-27 15:42:59,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:42:59,477.477 INFO    ] Initializing speech engine...
[2026-06-27 15:42:59,482.482 INFO    ] 2026-06-27 15:42:59
[2026-06-27 15:42:59,688.688 INFO    ] 2026-06-27 15:42:59
[2026-06-27 15:42:59,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:42:59,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:42:59,909.909 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:43:00,121.121 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:43:00,127.127 INFO    ] time= 27/06/2026 15:43:00
[2026-06-27 15:43:00,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:43:00,131.131 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:43:00,221.221 INFO    ] No existing commands found in stream
[2026-06-27 15:43:05,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:43:05,233.233 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-27 15:43:07,295.295 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 15:43:07,296.296 INFO    ] Checking for system updates...
[2026-06-27 15:43:07,317.317 INFO    ] 200
[2026-06-27 15:43:07,318.318 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:43:07,350.350 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:43:07,352.352 INFO    ] No update needed
[2026-06-27 15:43:07,353.353 INFO    ] Checking for camera pi updates...
[2026-06-27 15:43:07,373.373 INFO    ] 200
[2026-06-27 15:43:07,374.374 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:43:07,400.400 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:43:07,448.448 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:43:07,450.450 INFO    ] No camera update needed
[2026-06-27 15:43:07,451.451 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:43:07,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:43:07,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:43:07,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:43:09,496.496 INFO    ] ================================================
[2026-06-27 15:43:09,511.511 INFO    ] Launching Daemon at Sat Jun 27 15:43:09 IST 2026
[2026-06-27 15:43:09,522.522 INFO    ] ================================================
[2026-06-27 15:43:09,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:43:09
[2026-06-27 15:43:10,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:43:10,322.322 INFO    ] Initializing speech engine...
[2026-06-27 15:43:10,327.327 INFO    ] 2026-06-27 15:43:10
[2026-06-27 15:43:10,556.556 INFO    ] 2026-06-27 15:43:10
[2026-06-27 15:43:10,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:43:10,784.784 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:43:10,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:43:10,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:43:11,019.019 INFO    ] time= 27/06/2026 15:43:10
[2026-06-27 15:43:11,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:43:11,032.032 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:43:11,107.107 INFO    ] No existing commands found in stream
[2026-06-27 15:43:16,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:43:16,120.120 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-27 15:43:17,377.377 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:43:17,378.378 INFO    ] Checking for system updates...
[2026-06-27 15:43:17,399.399 INFO    ] 200
[2026-06-27 15:43:17,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:43:17,431.431 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:43:17,433.433 INFO    ] No update needed
[2026-06-27 15:43:17,434.434 INFO    ] Checking for camera pi updates...
[2026-06-27 15:43:17,455.455 INFO    ] 200
[2026-06-27 15:43:17,457.457 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:43:17,482.482 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:43:17,528.528 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:43:17,530.530 INFO    ] No camera update needed
[2026-06-27 15:43:17,531.531 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:43:17,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:43:17,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:43:17,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:43:19,578.578 INFO    ] ================================================
[2026-06-27 15:43:19,594.594 INFO    ] Launching Daemon at Sat Jun 27 15:43:19 IST 2026
[2026-06-27 15:43:19,605.605 INFO    ] ================================================
[2026-06-27 15:43:19,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:43:19
[2026-06-27 15:43:20,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:43:20,463.463 INFO    ] Initializing speech engine...
[2026-06-27 15:43:20,469.469 INFO    ] 2026-06-27 15:43:20
[2026-06-27 15:43:20,677.677 INFO    ] 2026-06-27 15:43:20
[2026-06-27 15:43:20,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:43:20,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:43:21,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:43:21,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:43:21,237.237 INFO    ] time= 27/06/2026 15:43:21
[2026-06-27 15:43:21,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:43:21,244.244 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:43:21,338.338 INFO    ] No existing commands found in stream
[2026-06-27 15:43:26,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:43:26,351.351 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-27 15:43:30,245.245 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:43:30,246.246 INFO    ] Checking for system updates...
[2026-06-27 15:43:30,268.268 INFO    ] 200
[2026-06-27 15:43:30,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:43:30,305.305 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:43:30,306.306 INFO    ] No update needed
[2026-06-27 15:43:30,307.307 INFO    ] Checking for camera pi updates...
[2026-06-27 15:43:30,327.327 INFO    ] 200
[2026-06-27 15:43:30,328.328 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:43:30,352.352 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:43:30,398.398 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:43:30,399.399 INFO    ] No camera update needed
[2026-06-27 15:43:30,401.401 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:43:30,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:43:30,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:43:30,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:43:32,432.432 INFO    ] ================================================
[2026-06-27 15:43:32,440.440 INFO    ] Launching Daemon at Sat Jun 27 15:43:32 IST 2026
[2026-06-27 15:43:32,446.446 INFO    ] ================================================
[2026-06-27 15:43:32,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:43:32
[2026-06-27 15:43:33,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:43:33,266.266 INFO    ] Initializing speech engine...
[2026-06-27 15:43:33,274.274 INFO    ] 2026-06-27 15:43:33
[2026-06-27 15:43:33,478.478 INFO    ] 2026-06-27 15:43:33
[2026-06-27 15:43:33,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:43:33,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:43:33,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:43:33,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:43:33,908.908 INFO    ] time= 27/06/2026 15:43:33
[2026-06-27 15:43:33,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:43:33,924.924 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:43:34,015.015 INFO    ] No existing commands found in stream
[2026-06-27 15:43:39,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:43:39,027.027 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-27 15:43:41,982.982 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:43:41,984.984 INFO    ] Checking for system updates...
[2026-06-27 15:43:42,006.006 INFO    ] 200
[2026-06-27 15:43:42,007.007 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:43:42,038.038 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:43:42,039.039 INFO    ] No update needed
[2026-06-27 15:43:42,040.040 INFO    ] Checking for camera pi updates...
[2026-06-27 15:43:42,060.060 INFO    ] 200
[2026-06-27 15:43:42,062.062 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:43:42,086.086 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:43:42,119.119 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:43:42,121.121 INFO    ] No camera update needed
[2026-06-27 15:43:42,122.122 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:43:42,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:43:42,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:43:42,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:43:44,167.167 INFO    ] ================================================
[2026-06-27 15:43:44,183.183 INFO    ] Launching Daemon at Sat Jun 27 15:43:44 IST 2026
[2026-06-27 15:43:44,193.193 INFO    ] ================================================
[2026-06-27 15:43:44,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:43:44
[2026-06-27 15:43:44,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:43:45,002.002 INFO    ] Initializing speech engine...
[2026-06-27 15:43:45,007.007 INFO    ] 2026-06-27 15:43:45
[2026-06-27 15:43:45,212.212 INFO    ] 2026-06-27 15:43:45
[2026-06-27 15:43:45,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:43:45,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:43:45,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:43:45,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:43:45,652.652 INFO    ] time= 27/06/2026 15:43:45
[2026-06-27 15:43:45,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:43:45,655.655 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:43:45,722.722 INFO    ] No existing commands found in stream
[2026-06-27 15:43:50,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:43:50,739.739 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-27 15:43:52,324.324 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:43:52,326.326 INFO    ] Checking for system updates...
[2026-06-27 15:43:52,346.346 INFO    ] 200
[2026-06-27 15:43:52,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:43:52,380.380 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:43:52,381.381 INFO    ] No update needed
[2026-06-27 15:43:52,383.383 INFO    ] Checking for camera pi updates...
[2026-06-27 15:43:52,402.402 INFO    ] 200
[2026-06-27 15:43:52,404.404 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:43:52,427.427 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:43:52,470.470 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:43:52,471.471 INFO    ] No camera update needed
[2026-06-27 15:43:52,473.473 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:43:52,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:43:52,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:43:52,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:43:54,519.519 INFO    ] ================================================
[2026-06-27 15:43:54,535.535 INFO    ] Launching Daemon at Sat Jun 27 15:43:54 IST 2026
[2026-06-27 15:43:54,545.545 INFO    ] ================================================
[2026-06-27 15:43:54,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:43:54
[2026-06-27 15:43:55,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:43:55,329.329 INFO    ] Initializing speech engine...
[2026-06-27 15:43:55,333.333 INFO    ] 2026-06-27 15:43:55
[2026-06-27 15:43:55,538.538 INFO    ] 2026-06-27 15:43:55
[2026-06-27 15:43:55,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:43:55,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:43:55,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:43:56,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:43:56,037.037 INFO    ] time= 27/06/2026 15:43:56
[2026-06-27 15:43:56,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:43:56,045.045 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:43:56,115.115 INFO    ] No existing commands found in stream
[2026-06-27 15:44:01,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:44:01,128.128 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-27 15:44:03,156.156 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:44:03,158.158 INFO    ] Checking for system updates...
[2026-06-27 15:44:03,180.180 INFO    ] 200
[2026-06-27 15:44:03,181.181 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:44:03,212.212 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:44:03,214.214 INFO    ] No update needed
[2026-06-27 15:44:03,215.215 INFO    ] Checking for camera pi updates...
[2026-06-27 15:44:03,236.236 INFO    ] 200
[2026-06-27 15:44:03,237.237 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:44:03,262.262 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:44:03,303.303 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:44:03,305.305 INFO    ] No camera update needed
[2026-06-27 15:44:03,306.306 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:44:03,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:44:03,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:44:03,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:44:05,352.352 INFO    ] ================================================
[2026-06-27 15:44:05,367.367 INFO    ] Launching Daemon at Sat Jun 27 15:44:05 IST 2026
[2026-06-27 15:44:05,379.379 INFO    ] ================================================
[2026-06-27 15:44:05,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:44:05
[2026-06-27 15:44:06,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:44:06,208.208 INFO    ] Initializing speech engine...
[2026-06-27 15:44:06,221.221 INFO    ] 2026-06-27 15:44:06
[2026-06-27 15:44:06,410.410 INFO    ] 2026-06-27 15:44:06
[2026-06-27 15:44:06,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:44:06,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:44:06,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:44:06,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:44:06,884.884 INFO    ] time= 27/06/2026 15:44:06
[2026-06-27 15:44:06,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:44:06,891.891 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:44:06,982.982 INFO    ] No existing commands found in stream
[2026-06-27 15:44:11,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:44:11,994.994 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-27 15:44:12,424.424 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:44:12,426.426 INFO    ] Checking for system updates...
[2026-06-27 15:44:12,446.446 INFO    ] 200
[2026-06-27 15:44:12,448.448 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:44:12,480.480 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:44:12,482.482 INFO    ] No update needed
[2026-06-27 15:44:12,483.483 INFO    ] Checking for camera pi updates...
[2026-06-27 15:44:12,503.503 INFO    ] 200
[2026-06-27 15:44:12,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:44:12,528.528 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:44:12,556.556 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:44:12,557.557 INFO    ] No camera update needed
[2026-06-27 15:44:12,558.558 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:44:12,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:44:12,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:44:12,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:44:14,604.604 INFO    ] ================================================
[2026-06-27 15:44:14,620.620 INFO    ] Launching Daemon at Sat Jun 27 15:44:14 IST 2026
[2026-06-27 15:44:14,630.630 INFO    ] ================================================
[2026-06-27 15:44:14,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:44:14
[2026-06-27 15:44:15,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:44:15,445.445 INFO    ] Initializing speech engine...
[2026-06-27 15:44:15,453.453 INFO    ] 2026-06-27 15:44:15
[2026-06-27 15:44:15,640.640 INFO    ] 2026-06-27 15:44:15
[2026-06-27 15:44:15,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:44:15,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:44:15,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:44:16,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:44:16,083.083 INFO    ] time= 27/06/2026 15:44:16
[2026-06-27 15:44:16,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:44:16,113.113 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:44:16,180.180 INFO    ] No existing commands found in stream
[2026-06-27 15:44:21,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:44:21,192.192 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-27 15:44:22,739.739 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:44:22,741.741 INFO    ] Checking for system updates...
[2026-06-27 15:44:22,761.761 INFO    ] 200
[2026-06-27 15:44:22,763.763 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:44:22,793.793 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:44:22,795.795 INFO    ] No update needed
[2026-06-27 15:44:22,797.797 INFO    ] Checking for camera pi updates...
[2026-06-27 15:44:22,816.816 INFO    ] 200
[2026-06-27 15:44:22,818.818 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:44:22,841.841 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:44:22,886.886 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:44:22,887.887 INFO    ] No camera update needed
[2026-06-27 15:44:22,888.888 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:44:22,890.890 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:44:22,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:44:22,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:44:24,936.936 INFO    ] ================================================
[2026-06-27 15:44:24,952.952 INFO    ] Launching Daemon at Sat Jun 27 15:44:24 IST 2026
[2026-06-27 15:44:24,964.964 INFO    ] ================================================
[2026-06-27 15:44:25,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:44:25
[2026-06-27 15:44:25,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:44:25,765.765 INFO    ] Initializing speech engine...
[2026-06-27 15:44:25,775.775 INFO    ] 2026-06-27 15:44:25
[2026-06-27 15:44:25,978.978 INFO    ] 2026-06-27 15:44:25
[2026-06-27 15:44:26,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:44:26,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:44:26,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:44:26,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:44:26,396.396 INFO    ] time= 27/06/2026 15:44:26
[2026-06-27 15:44:26,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:44:26,425.425 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:44:26,516.516 INFO    ] No existing commands found in stream
[2026-06-27 15:44:31,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:44:31,529.529 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-27 15:44:34,332.332 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 15:44:34,334.334 INFO    ] Checking for system updates...
[2026-06-27 15:44:34,355.355 INFO    ] 200
[2026-06-27 15:44:34,356.356 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:44:34,389.389 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:44:34,390.390 INFO    ] No update needed
[2026-06-27 15:44:34,392.392 INFO    ] Checking for camera pi updates...
[2026-06-27 15:44:34,413.413 INFO    ] 200
[2026-06-27 15:44:34,415.415 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:44:34,439.439 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:44:34,481.481 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:44:34,483.483 INFO    ] No camera update needed
[2026-06-27 15:44:34,484.484 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:44:34,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:44:34,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:44:34,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:44:36,535.535 INFO    ] ================================================
[2026-06-27 15:44:36,551.551 INFO    ] Launching Daemon at Sat Jun 27 15:44:36 IST 2026
[2026-06-27 15:44:36,562.562 INFO    ] ================================================
[2026-06-27 15:44:36,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:44:36
[2026-06-27 15:44:37,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:44:37,381.381 INFO    ] Initializing speech engine...
[2026-06-27 15:44:37,391.391 INFO    ] 2026-06-27 15:44:37
[2026-06-27 15:44:37,595.595 INFO    ] 2026-06-27 15:44:37
[2026-06-27 15:44:37,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:44:37,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:44:37,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:44:37,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:44:38,029.029 INFO    ] time= 27/06/2026 15:44:38
[2026-06-27 15:44:38,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:44:38,040.040 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:44:38,131.131 INFO    ] No existing commands found in stream
[2026-06-27 15:44:43,140.140 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:44:43,143.143 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-27 15:44:43,865.865 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 15:44:43,867.867 INFO    ] Checking for system updates...
[2026-06-27 15:44:43,888.888 INFO    ] 200
[2026-06-27 15:44:43,890.890 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:44:43,920.920 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:44:43,922.922 INFO    ] No update needed
[2026-06-27 15:44:43,923.923 INFO    ] Checking for camera pi updates...
[2026-06-27 15:44:43,943.943 INFO    ] 200
[2026-06-27 15:44:43,944.944 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:44:43,969.969 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:44:44,009.009 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:44:44,011.011 INFO    ] No camera update needed
[2026-06-27 15:44:44,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:44:44,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:44:44,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:44:44,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:44:46,059.059 INFO    ] ================================================
[2026-06-27 15:44:46,074.074 INFO    ] Launching Daemon at Sat Jun 27 15:44:46 IST 2026
[2026-06-27 15:44:46,087.087 INFO    ] ================================================
[2026-06-27 15:44:46,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:44:46
[2026-06-27 15:44:46,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:44:46,896.896 INFO    ] Initializing speech engine...
[2026-06-27 15:44:46,905.905 INFO    ] 2026-06-27 15:44:46
[2026-06-27 15:44:47,118.118 INFO    ] 2026-06-27 15:44:47
[2026-06-27 15:44:47,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:44:47,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:44:47,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:44:47,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:44:47,559.559 INFO    ] time= 27/06/2026 15:44:47
[2026-06-27 15:44:47,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:44:47,566.566 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:44:47,655.655 INFO    ] No existing commands found in stream
[2026-06-27 15:44:52,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:44:52,667.667 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-27 15:44:53,824.824 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:44:53,826.826 INFO    ] Checking for system updates...
[2026-06-27 15:44:53,846.846 INFO    ] 200
[2026-06-27 15:44:53,847.847 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:44:53,878.878 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:44:53,879.879 INFO    ] No update needed
[2026-06-27 15:44:53,880.880 INFO    ] Checking for camera pi updates...
[2026-06-27 15:44:53,903.903 INFO    ] 200
[2026-06-27 15:44:53,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:44:53,929.929 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:44:53,978.978 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:44:53,980.980 INFO    ] No camera update needed
[2026-06-27 15:44:53,981.981 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:44:53,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:44:53,985.985 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:44:53,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:44:56,029.029 INFO    ] ================================================
[2026-06-27 15:44:56,046.046 INFO    ] Launching Daemon at Sat Jun 27 15:44:56 IST 2026
[2026-06-27 15:44:56,057.057 INFO    ] ================================================
[2026-06-27 15:44:56,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:44:56
[2026-06-27 15:44:56,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:44:56,824.824 INFO    ] Initializing speech engine...
[2026-06-27 15:44:56,828.828 INFO    ] 2026-06-27 15:44:56
[2026-06-27 15:44:57,046.046 INFO    ] 2026-06-27 15:44:57
[2026-06-27 15:44:57,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:44:57,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:44:57,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:44:57,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:44:57,470.470 INFO    ] time= 27/06/2026 15:44:57
[2026-06-27 15:44:57,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:44:57,499.499 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:44:57,567.567 INFO    ] No existing commands found in stream
[2026-06-27 15:45:02,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:45:02,577.577 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-27 15:45:04,396.396 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:45:04,398.398 INFO    ] Checking for system updates...
[2026-06-27 15:45:04,418.418 INFO    ] 200
[2026-06-27 15:45:04,420.420 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:45:04,453.453 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:45:04,454.454 INFO    ] No update needed
[2026-06-27 15:45:04,456.456 INFO    ] Checking for camera pi updates...
[2026-06-27 15:45:04,475.475 INFO    ] 200
[2026-06-27 15:45:04,476.476 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:45:04,500.500 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:45:04,642.642 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:45:04,644.644 INFO    ] No camera update needed
[2026-06-27 15:45:04,646.646 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:45:04,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:45:04,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:45:04,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:45:06,692.692 INFO    ] ================================================
[2026-06-27 15:45:06,708.708 INFO    ] Launching Daemon at Sat Jun 27 15:45:06 IST 2026
[2026-06-27 15:45:06,719.719 INFO    ] ================================================
[2026-06-27 15:45:07,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:45:07
[2026-06-27 15:45:07,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:45:07,547.547 INFO    ] Initializing speech engine...
[2026-06-27 15:45:07,552.552 INFO    ] 2026-06-27 15:45:07
[2026-06-27 15:45:07,756.756 INFO    ] 2026-06-27 15:45:07
[2026-06-27 15:45:07,783.783 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:45:07,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:45:07,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:45:08,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:45:08,196.196 INFO    ] time= 27/06/2026 15:45:08
[2026-06-27 15:45:08,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:45:08,200.200 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:45:08,289.289 INFO    ] No existing commands found in stream
[2026-06-27 15:45:13,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:45:13,301.301 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-27 15:45:16,450.450 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:45:16,452.452 INFO    ] Checking for system updates...
[2026-06-27 15:45:16,474.474 INFO    ] 200
[2026-06-27 15:45:16,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:45:16,508.508 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:45:16,509.509 INFO    ] No update needed
[2026-06-27 15:45:16,510.510 INFO    ] Checking for camera pi updates...
[2026-06-27 15:45:16,530.530 INFO    ] 200
[2026-06-27 15:45:16,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:45:16,557.557 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:45:16,602.602 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:45:16,604.604 INFO    ] No camera update needed
[2026-06-27 15:45:16,605.605 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:45:16,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:45:16,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:45:16,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:45:18,654.654 INFO    ] ================================================
[2026-06-27 15:45:18,669.669 INFO    ] Launching Daemon at Sat Jun 27 15:45:18 IST 2026
[2026-06-27 15:45:18,680.680 INFO    ] ================================================
[2026-06-27 15:45:19,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:45:19
[2026-06-27 15:45:19,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:45:19,479.479 INFO    ] Initializing speech engine...
[2026-06-27 15:45:19,489.489 INFO    ] 2026-06-27 15:45:19
[2026-06-27 15:45:19,693.693 INFO    ] 2026-06-27 15:45:19
[2026-06-27 15:45:19,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:45:19,908.908 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:45:19,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:45:20,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:45:20,133.133 INFO    ] time= 27/06/2026 15:45:20
[2026-06-27 15:45:20,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:45:20,140.140 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:45:20,231.231 INFO    ] No existing commands found in stream
[2026-06-27 15:45:25,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:45:25,248.248 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-27 15:45:28,686.686 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 15:45:28,688.688 INFO    ] Checking for system updates...
[2026-06-27 15:45:28,711.711 INFO    ] 200
[2026-06-27 15:45:28,713.713 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:45:28,743.743 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:45:28,745.745 INFO    ] No update needed
[2026-06-27 15:45:28,746.746 INFO    ] Checking for camera pi updates...
[2026-06-27 15:45:28,769.769 INFO    ] 200
[2026-06-27 15:45:28,770.770 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:45:28,794.794 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:45:28,840.840 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:45:28,841.841 INFO    ] No camera update needed
[2026-06-27 15:45:28,842.842 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:45:28,844.844 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:45:28,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:45:28,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:45:30,890.890 INFO    ] ================================================
[2026-06-27 15:45:30,905.905 INFO    ] Launching Daemon at Sat Jun 27 15:45:30 IST 2026
[2026-06-27 15:45:30,917.917 INFO    ] ================================================
[2026-06-27 15:45:31,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:45:31
[2026-06-27 15:45:31,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:45:31,713.713 INFO    ] Initializing speech engine...
[2026-06-27 15:45:31,717.717 INFO    ] 2026-06-27 15:45:31
[2026-06-27 15:45:31,971.971 INFO    ] 2026-06-27 15:45:31
[2026-06-27 15:45:32,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:45:32,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:45:32,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:45:32,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:45:32,445.445 INFO    ] time= 27/06/2026 15:45:32
[2026-06-27 15:45:32,450.450 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:45:32,453.453 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:45:32,525.525 INFO    ] No existing commands found in stream
[2026-06-27 15:45:37,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:45:37,538.538 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-27 15:45:41,609.609 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:45:41,611.611 INFO    ] Checking for system updates...
[2026-06-27 15:45:41,633.633 INFO    ] 200
[2026-06-27 15:45:41,635.635 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:45:41,666.666 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:45:41,667.667 INFO    ] No update needed
[2026-06-27 15:45:41,668.668 INFO    ] Checking for camera pi updates...
[2026-06-27 15:45:41,688.688 INFO    ] 200
[2026-06-27 15:45:41,690.690 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:45:41,715.715 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:45:41,756.756 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:45:41,763.763 INFO    ] No camera update needed
[2026-06-27 15:45:41,765.765 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:45:41,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:45:41,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:45:41,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:45:43,811.811 INFO    ] ================================================
[2026-06-27 15:45:43,826.826 INFO    ] Launching Daemon at Sat Jun 27 15:45:43 IST 2026
[2026-06-27 15:45:43,837.837 INFO    ] ================================================
[2026-06-27 15:45:44,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:45:44
[2026-06-27 15:45:44,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:45:44,632.632 INFO    ] Initializing speech engine...
[2026-06-27 15:45:44,636.636 INFO    ] 2026-06-27 15:45:44
[2026-06-27 15:45:44,856.856 INFO    ] 2026-06-27 15:45:44
[2026-06-27 15:45:44,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:45:45,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:45:45,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:45:45,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:45:45,306.306 INFO    ] time= 27/06/2026 15:45:45
[2026-06-27 15:45:45,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:45:45,313.313 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:45:45,379.379 INFO    ] No existing commands found in stream
[2026-06-27 15:45:50,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:45:50,392.392 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-27 15:45:51,091.091 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:45:51,092.092 INFO    ] Checking for system updates...
[2026-06-27 15:45:51,114.114 INFO    ] 200
[2026-06-27 15:45:51,116.116 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:45:51,146.146 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:45:51,147.147 INFO    ] No update needed
[2026-06-27 15:45:51,149.149 INFO    ] Checking for camera pi updates...
[2026-06-27 15:45:51,168.168 INFO    ] 200
[2026-06-27 15:45:51,170.170 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:45:51,193.193 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:45:51,235.235 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:45:51,236.236 INFO    ] No camera update needed
[2026-06-27 15:45:51,237.237 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:45:51,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:45:51,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:45:51,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:45:53,286.286 INFO    ] ================================================
[2026-06-27 15:45:53,302.302 INFO    ] Launching Daemon at Sat Jun 27 15:45:53 IST 2026
[2026-06-27 15:45:53,313.313 INFO    ] ================================================
[2026-06-27 15:45:53,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:45:53
[2026-06-27 15:45:53,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:45:54,116.116 INFO    ] Initializing speech engine...
[2026-06-27 15:45:54,121.121 INFO    ] 2026-06-27 15:45:54
[2026-06-27 15:45:54,340.340 INFO    ] 2026-06-27 15:45:54
[2026-06-27 15:45:54,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:45:54,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:45:54,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:45:54,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:45:54,760.760 INFO    ] time= 27/06/2026 15:45:54
[2026-06-27 15:45:54,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:45:54,789.789 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:45:54,879.879 INFO    ] No existing commands found in stream
[2026-06-27 15:45:59,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:45:59,896.896 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-27 15:46:03,021.021 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:46:03,022.022 INFO    ] Checking for system updates...
[2026-06-27 15:46:03,043.043 INFO    ] 200
[2026-06-27 15:46:03,045.045 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:46:03,079.079 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:46:03,081.081 INFO    ] No update needed
[2026-06-27 15:46:03,083.083 INFO    ] Checking for camera pi updates...
[2026-06-27 15:46:03,107.107 INFO    ] 200
[2026-06-27 15:46:03,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:46:03,132.132 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:46:03,173.173 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:46:03,175.175 INFO    ] No camera update needed
[2026-06-27 15:46:03,176.176 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:46:03,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:46:03,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:46:03,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:46:05,223.223 INFO    ] ================================================
[2026-06-27 15:46:05,238.238 INFO    ] Launching Daemon at Sat Jun 27 15:46:05 IST 2026
[2026-06-27 15:46:05,249.249 INFO    ] ================================================
[2026-06-27 15:46:05,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:46:05
[2026-06-27 15:46:05,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:46:06,059.059 INFO    ] Initializing speech engine...
[2026-06-27 15:46:06,069.069 INFO    ] 2026-06-27 15:46:06
[2026-06-27 15:46:06,289.289 INFO    ] 2026-06-27 15:46:06
[2026-06-27 15:46:06,319.319 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:46:06,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:46:06,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:46:06,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:46:06,716.716 INFO    ] time= 27/06/2026 15:46:06
[2026-06-27 15:46:06,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:46:06,746.746 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:46:06,814.814 INFO    ] No existing commands found in stream
[2026-06-27 15:46:11,828.828 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:46:11,830.830 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-27 15:46:16,306.306 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 15:46:16,308.308 INFO    ] Checking for system updates...
[2026-06-27 15:46:16,331.331 INFO    ] 200
[2026-06-27 15:46:16,332.332 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:46:16,364.364 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:46:16,366.366 INFO    ] No update needed
[2026-06-27 15:46:16,367.367 INFO    ] Checking for camera pi updates...
[2026-06-27 15:46:16,387.387 INFO    ] 200
[2026-06-27 15:46:16,389.389 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:46:16,412.412 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:46:16,455.455 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:46:16,457.457 INFO    ] No camera update needed
[2026-06-27 15:46:16,458.458 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:46:16,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:46:16,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:46:16,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:46:18,503.503 INFO    ] ================================================
[2026-06-27 15:46:18,519.519 INFO    ] Launching Daemon at Sat Jun 27 15:46:18 IST 2026
[2026-06-27 15:46:18,530.530 INFO    ] ================================================
[2026-06-27 15:46:18,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:46:18
[2026-06-27 15:46:19,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:46:19,333.333 INFO    ] Initializing speech engine...
[2026-06-27 15:46:19,344.344 INFO    ] 2026-06-27 15:46:19
[2026-06-27 15:46:19,548.548 INFO    ] 2026-06-27 15:46:19
[2026-06-27 15:46:19,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:46:19,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:46:19,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:46:19,946.946 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:46:19,985.985 INFO    ] time= 27/06/2026 15:46:19
[2026-06-27 15:46:19,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:46:19,997.997 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:46:20,064.064 INFO    ] No existing commands found in stream
[2026-06-27 15:46:25,078.078 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:46:25,081.081 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-27 15:46:26,996.996 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:46:26,997.997 INFO    ] Checking for system updates...
[2026-06-27 15:46:27,018.018 INFO    ] 200
[2026-06-27 15:46:27,019.019 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:46:27,051.051 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:46:27,052.052 INFO    ] No update needed
[2026-06-27 15:46:27,054.054 INFO    ] Checking for camera pi updates...
[2026-06-27 15:46:27,075.075 INFO    ] 200
[2026-06-27 15:46:27,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:46:27,104.104 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:46:27,148.148 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:46:27,149.149 INFO    ] No camera update needed
[2026-06-27 15:46:27,150.150 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:46:27,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:46:27,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:46:27,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:46:29,195.195 INFO    ] ================================================
[2026-06-27 15:46:29,211.211 INFO    ] Launching Daemon at Sat Jun 27 15:46:29 IST 2026
[2026-06-27 15:46:29,222.222 INFO    ] ================================================
[2026-06-27 15:46:29,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:46:29
[2026-06-27 15:46:29,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:46:30,028.028 INFO    ] Initializing speech engine...
[2026-06-27 15:46:30,033.033 INFO    ] 2026-06-27 15:46:30
[2026-06-27 15:46:30,237.237 INFO    ] 2026-06-27 15:46:30
[2026-06-27 15:46:30,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:46:30,527.527 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:46:30,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:46:30,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:46:30,797.797 INFO    ] time= 27/06/2026 15:46:30
[2026-06-27 15:46:30,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:46:30,803.803 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:46:30,932.932 INFO    ] No existing commands found in stream
[2026-06-27 15:46:35,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:46:35,945.945 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-27 15:46:39,400.400 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 15:46:39,401.401 INFO    ] Checking for system updates...
[2026-06-27 15:46:39,422.422 INFO    ] 200
[2026-06-27 15:46:39,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:46:39,459.459 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:46:39,460.460 INFO    ] No update needed
[2026-06-27 15:46:39,462.462 INFO    ] Checking for camera pi updates...
[2026-06-27 15:46:39,481.481 INFO    ] 200
[2026-06-27 15:46:39,482.482 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:46:39,507.507 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:46:39,555.555 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:46:39,557.557 INFO    ] No camera update needed
[2026-06-27 15:46:39,558.558 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:46:39,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:46:39,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:46:39,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:46:41,605.605 INFO    ] ================================================
[2026-06-27 15:46:41,622.622 INFO    ] Launching Daemon at Sat Jun 27 15:46:41 IST 2026
[2026-06-27 15:46:41,633.633 INFO    ] ================================================
[2026-06-27 15:46:42,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:46:42
[2026-06-27 15:46:42,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:46:42,479.479 INFO    ] Initializing speech engine...
[2026-06-27 15:46:42,485.485 INFO    ] 2026-06-27 15:46:42
[2026-06-27 15:46:42,690.690 INFO    ] 2026-06-27 15:46:42
[2026-06-27 15:46:42,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:46:42,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:46:42,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:46:43,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:46:43,131.131 INFO    ] time= 27/06/2026 15:46:43
[2026-06-27 15:46:43,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:46:43,138.138 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:46:43,206.206 INFO    ] No existing commands found in stream
[2026-06-27 15:46:48,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:46:48,218.218 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-27 15:46:50,325.325 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 15:46:50,327.327 INFO    ] Checking for system updates...
[2026-06-27 15:46:50,350.350 INFO    ] 200
[2026-06-27 15:46:50,351.351 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:46:50,382.382 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:46:50,383.383 INFO    ] No update needed
[2026-06-27 15:46:50,385.385 INFO    ] Checking for camera pi updates...
[2026-06-27 15:46:50,405.405 INFO    ] 200
[2026-06-27 15:46:50,406.406 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:46:50,431.431 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:46:50,470.470 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:46:50,471.471 INFO    ] No camera update needed
[2026-06-27 15:46:50,473.473 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:46:50,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:46:50,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:46:50,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:46:52,520.520 INFO    ] ================================================
[2026-06-27 15:46:52,536.536 INFO    ] Launching Daemon at Sat Jun 27 15:46:52 IST 2026
[2026-06-27 15:46:52,548.548 INFO    ] ================================================
[2026-06-27 15:46:52,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:46:52
[2026-06-27 15:46:53,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:46:53,359.359 INFO    ] Initializing speech engine...
[2026-06-27 15:46:53,365.365 INFO    ] 2026-06-27 15:46:53
[2026-06-27 15:46:53,569.569 INFO    ] 2026-06-27 15:46:53
[2026-06-27 15:46:53,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:46:53,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:46:53,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:46:53,975.975 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:46:54,008.008 INFO    ] time= 27/06/2026 15:46:53
[2026-06-27 15:46:54,013.013 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:46:54,015.015 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:46:54,082.082 INFO    ] No existing commands found in stream
[2026-06-27 15:46:59,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:46:59,095.095 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-27 15:47:01,580.580 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 15:47:01,582.582 INFO    ] Checking for system updates...
[2026-06-27 15:47:01,610.610 INFO    ] 200
[2026-06-27 15:47:01,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:47:01,668.668 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:47:01,670.670 INFO    ] No update needed
[2026-06-27 15:47:01,672.672 INFO    ] Checking for camera pi updates...
[2026-06-27 15:47:01,699.699 INFO    ] 200
[2026-06-27 15:47:01,701.701 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:47:01,740.740 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:47:01,778.778 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:47:01,780.780 INFO    ] No camera update needed
[2026-06-27 15:47:01,782.782 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:47:01,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:47:01,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:47:01,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:47:03,831.831 INFO    ] ================================================
[2026-06-27 15:47:03,847.847 INFO    ] Launching Daemon at Sat Jun 27 15:47:03 IST 2026
[2026-06-27 15:47:03,858.858 INFO    ] ================================================
[2026-06-27 15:47:04,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:47:04
[2026-06-27 15:47:04,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:47:04,643.643 INFO    ] Initializing speech engine...
[2026-06-27 15:47:04,653.653 INFO    ] 2026-06-27 15:47:04
[2026-06-27 15:47:04,857.857 INFO    ] 2026-06-27 15:47:04
[2026-06-27 15:47:04,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:47:05,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:47:05,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:47:05,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:47:05,283.283 INFO    ] time= 27/06/2026 15:47:05
[2026-06-27 15:47:05,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:47:05,305.305 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:47:05,401.401 INFO    ] No existing commands found in stream
[2026-06-27 15:47:10,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:47:10,414.414 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-27 15:47:14,669.669 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:47:14,670.670 INFO    ] Checking for system updates...
[2026-06-27 15:47:14,693.693 INFO    ] 200
[2026-06-27 15:47:14,695.695 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:47:14,728.728 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:47:14,729.729 INFO    ] No update needed
[2026-06-27 15:47:14,731.731 INFO    ] Checking for camera pi updates...
[2026-06-27 15:47:14,754.754 INFO    ] 200
[2026-06-27 15:47:14,756.756 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:47:14,782.782 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:47:14,927.927 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:47:14,929.929 INFO    ] No camera update needed
[2026-06-27 15:47:14,930.930 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:47:14,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:47:14,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:47:14,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:47:16,978.978 INFO    ] ================================================
[2026-06-27 15:47:17,996.996 INFO    ] Launching Daemon at Sat Jun 27 15:47:16 IST 2026
[2026-06-27 15:47:17,007.007 INFO    ] ================================================
[2026-06-27 15:47:17,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:47:17
[2026-06-27 15:47:17,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:47:17,873.873 INFO    ] Initializing speech engine...
[2026-06-27 15:47:17,880.880 INFO    ] 2026-06-27 15:47:17
[2026-06-27 15:47:18,089.089 INFO    ] 2026-06-27 15:47:18
[2026-06-27 15:47:18,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:47:18,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:47:18,313.313 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:47:18,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:47:18,537.537 INFO    ] time= 27/06/2026 15:47:18
[2026-06-27 15:47:18,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:47:18,540.540 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:47:18,631.631 INFO    ] No existing commands found in stream
[2026-06-27 15:47:23,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:47:23,649.649 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-27 15:47:24,940.940 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:47:24,941.941 INFO    ] Checking for system updates...
[2026-06-27 15:47:24,964.964 INFO    ] 200
[2026-06-27 15:47:24,966.966 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:47:24,999.999 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:47:25,001.001 INFO    ] No update needed
[2026-06-27 15:47:25,002.002 INFO    ] Checking for camera pi updates...
[2026-06-27 15:47:25,025.025 INFO    ] 200
[2026-06-27 15:47:25,028.028 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:47:25,051.051 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:47:25,106.106 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:47:25,107.107 INFO    ] No camera update needed
[2026-06-27 15:47:25,109.109 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:47:25,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:47:25,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:47:25,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:47:27,158.158 INFO    ] ================================================
[2026-06-27 15:47:27,182.182 INFO    ] Launching Daemon at Sat Jun 27 15:47:27 IST 2026
[2026-06-27 15:47:27,194.194 INFO    ] ================================================
[2026-06-27 15:47:27,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:47:27
[2026-06-27 15:47:27,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:47:27,979.979 INFO    ] Initializing speech engine...
[2026-06-27 15:47:27,982.982 INFO    ] 2026-06-27 15:47:27
[2026-06-27 15:47:28,218.218 INFO    ] 2026-06-27 15:47:28
[2026-06-27 15:47:28,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:47:28,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:47:28,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:47:28,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:47:28,697.697 INFO    ] time= 27/06/2026 15:47:28
[2026-06-27 15:47:28,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:47:28,706.706 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:47:28,798.798 INFO    ] No existing commands found in stream
[2026-06-27 15:47:33,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:47:33,810.810 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-27 15:47:35,939.939 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:47:35,940.940 INFO    ] Checking for system updates...
[2026-06-27 15:47:35,962.962 INFO    ] 200
[2026-06-27 15:47:35,963.963 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:47:35,996.996 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:47:35,998.998 INFO    ] No update needed
[2026-06-27 15:47:35,999.999 INFO    ] Checking for camera pi updates...
[2026-06-27 15:47:36,019.019 INFO    ] 200
[2026-06-27 15:47:36,020.020 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:47:36,046.046 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:47:36,089.089 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:47:36,090.090 INFO    ] No camera update needed
[2026-06-27 15:47:36,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:47:36,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:47:36,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:47:36,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:47:38,139.139 INFO    ] ================================================
[2026-06-27 15:47:38,155.155 INFO    ] Launching Daemon at Sat Jun 27 15:47:38 IST 2026
[2026-06-27 15:47:38,166.166 INFO    ] ================================================
[2026-06-27 15:47:38,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:47:38
[2026-06-27 15:47:38,807.807 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:47:38,937.937 INFO    ] Initializing speech engine...
[2026-06-27 15:47:38,941.941 INFO    ] 2026-06-27 15:47:38
[2026-06-27 15:47:39,160.160 INFO    ] 2026-06-27 15:47:39
[2026-06-27 15:47:39,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:47:39,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:47:39,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:47:39,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:47:39,670.670 INFO    ] time= 27/06/2026 15:47:39
[2026-06-27 15:47:39,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:47:39,697.697 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:47:39,794.794 INFO    ] No existing commands found in stream
[2026-06-27 15:47:44,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:47:44,806.806 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-27 15:47:48,141.141 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:47:48,143.143 INFO    ] Checking for system updates...
[2026-06-27 15:47:48,164.164 INFO    ] 200
[2026-06-27 15:47:48,165.165 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:47:48,196.196 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:47:48,197.197 INFO    ] No update needed
[2026-06-27 15:47:48,199.199 INFO    ] Checking for camera pi updates...
[2026-06-27 15:47:48,218.218 INFO    ] 200
[2026-06-27 15:47:48,219.219 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:47:48,245.245 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:47:48,286.286 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:47:48,287.287 INFO    ] No camera update needed
[2026-06-27 15:47:48,289.289 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:47:48,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:47:48,293.293 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:47:48,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:47:50,336.336 INFO    ] ================================================
[2026-06-27 15:47:50,351.351 INFO    ] Launching Daemon at Sat Jun 27 15:47:50 IST 2026
[2026-06-27 15:47:50,362.362 INFO    ] ================================================
[2026-06-27 15:47:50,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:47:50
[2026-06-27 15:47:51,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:47:51,140.140 INFO    ] Initializing speech engine...
[2026-06-27 15:47:51,150.150 INFO    ] 2026-06-27 15:47:51
[2026-06-27 15:47:51,355.355 INFO    ] 2026-06-27 15:47:51
[2026-06-27 15:47:51,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:47:51,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:47:51,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:47:51,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:47:51,771.771 INFO    ] time= 27/06/2026 15:47:51
[2026-06-27 15:47:51,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:47:51,800.800 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:47:51,892.892 INFO    ] No existing commands found in stream
[2026-06-27 15:47:56,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:47:56,909.909 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-27 15:47:57,885.885 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:47:57,887.887 INFO    ] Checking for system updates...
[2026-06-27 15:47:57,907.907 INFO    ] 200
[2026-06-27 15:47:57,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:47:57,939.939 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:47:57,941.941 INFO    ] No update needed
[2026-06-27 15:47:57,942.942 INFO    ] Checking for camera pi updates...
[2026-06-27 15:47:57,961.961 INFO    ] 200
[2026-06-27 15:47:57,963.963 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:47:57,986.986 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:47:58,031.031 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:47:58,032.032 INFO    ] No camera update needed
[2026-06-27 15:47:58,034.034 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:47:58,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:47:58,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:47:58,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:48:00,081.081 INFO    ] ================================================
[2026-06-27 15:48:00,096.096 INFO    ] Launching Daemon at Sat Jun 27 15:48:00 IST 2026
[2026-06-27 15:48:00,107.107 INFO    ] ================================================
[2026-06-27 15:48:00,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:48:00
[2026-06-27 15:48:00,777.777 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:48:00,909.909 INFO    ] Initializing speech engine...
[2026-06-27 15:48:00,917.917 INFO    ] 2026-06-27 15:48:00
[2026-06-27 15:48:01,131.131 INFO    ] 2026-06-27 15:48:01
[2026-06-27 15:48:01,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:48:01,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:48:01,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:48:01,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:48:01,597.597 INFO    ] time= 27/06/2026 15:48:01
[2026-06-27 15:48:01,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:48:01,645.645 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:48:01,766.766 INFO    ] No existing commands found in stream
[2026-06-27 15:48:06,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:48:06,780.780 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-27 15:48:09,644.644 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 15:48:09,645.645 INFO    ] Checking for system updates...
[2026-06-27 15:48:09,666.666 INFO    ] 200
[2026-06-27 15:48:09,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:48:09,700.700 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:48:09,701.701 INFO    ] No update needed
[2026-06-27 15:48:09,703.703 INFO    ] Checking for camera pi updates...
[2026-06-27 15:48:09,722.722 INFO    ] 200
[2026-06-27 15:48:09,724.724 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:48:09,749.749 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:48:09,790.790 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:48:09,791.791 INFO    ] No camera update needed
[2026-06-27 15:48:09,793.793 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:48:09,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:48:09,797.797 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:48:09,800.800 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:48:11,839.839 INFO    ] ================================================
[2026-06-27 15:48:11,854.854 INFO    ] Launching Daemon at Sat Jun 27 15:48:11 IST 2026
[2026-06-27 15:48:11,864.864 INFO    ] ================================================
[2026-06-27 15:48:12,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:48:12
[2026-06-27 15:48:12,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:48:12,760.760 INFO    ] Initializing speech engine...
[2026-06-27 15:48:12,765.765 INFO    ] 2026-06-27 15:48:12
[2026-06-27 15:48:12,975.975 INFO    ] 2026-06-27 15:48:12
[2026-06-27 15:48:13,004.004 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:48:13,266.266 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:48:13,315.315 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:48:13,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:48:13,484.484 INFO    ] time= 27/06/2026 15:48:13
[2026-06-27 15:48:13,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:48:13,536.536 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:48:13,661.661 INFO    ] No existing commands found in stream
[2026-06-27 15:48:18,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:48:18,670.670 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-27 15:48:22,459.459 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 15:48:22,460.460 INFO    ] Checking for system updates...
[2026-06-27 15:48:22,482.482 INFO    ] 200
[2026-06-27 15:48:22,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:48:22,516.516 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:48:22,517.517 INFO    ] No update needed
[2026-06-27 15:48:22,519.519 INFO    ] Checking for camera pi updates...
[2026-06-27 15:48:22,538.538 INFO    ] 200
[2026-06-27 15:48:22,540.540 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:48:22,564.564 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:48:22,605.605 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:48:22,607.607 INFO    ] No camera update needed
[2026-06-27 15:48:22,608.608 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:48:22,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:48:22,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:48:22,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:48:24,656.656 INFO    ] ================================================
[2026-06-27 15:48:24,671.671 INFO    ] Launching Daemon at Sat Jun 27 15:48:24 IST 2026
[2026-06-27 15:48:24,682.682 INFO    ] ================================================
[2026-06-27 15:48:25,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:48:25
[2026-06-27 15:48:25,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:48:25,486.486 INFO    ] Initializing speech engine...
[2026-06-27 15:48:25,492.492 INFO    ] 2026-06-27 15:48:25
[2026-06-27 15:48:25,698.698 INFO    ] 2026-06-27 15:48:25
[2026-06-27 15:48:25,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:48:25,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:48:25,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:48:26,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:48:26,138.138 INFO    ] time= 27/06/2026 15:48:26
[2026-06-27 15:48:26,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:48:26,145.145 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:48:26,235.235 INFO    ] No existing commands found in stream
[2026-06-27 15:48:31,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:48:31,249.249 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-27 15:48:31,794.794 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 15:48:31,796.796 INFO    ] Checking for system updates...
[2026-06-27 15:48:31,824.824 INFO    ] 200
[2026-06-27 15:48:31,826.826 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:48:31,869.869 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:48:31,871.871 INFO    ] No update needed
[2026-06-27 15:48:31,873.873 INFO    ] Checking for camera pi updates...
[2026-06-27 15:48:31,904.904 INFO    ] 200
[2026-06-27 15:48:31,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:48:31,939.939 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:48:31,968.968 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:48:31,970.970 INFO    ] No camera update needed
[2026-06-27 15:48:31,972.972 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:48:31,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:48:31,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:48:31,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:48:34,027.027 INFO    ] ================================================
[2026-06-27 15:48:34,042.042 INFO    ] Launching Daemon at Sat Jun 27 15:48:34 IST 2026
[2026-06-27 15:48:34,055.055 INFO    ] ================================================
[2026-06-27 15:48:34,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:48:34
[2026-06-27 15:48:34,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:48:34,869.869 INFO    ] Initializing speech engine...
[2026-06-27 15:48:34,882.882 INFO    ] 2026-06-27 15:48:34
[2026-06-27 15:48:35,101.101 INFO    ] 2026-06-27 15:48:35
[2026-06-27 15:48:35,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:48:35,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:48:35,346.346 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:48:35,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:48:35,585.585 INFO    ] time= 27/06/2026 15:48:35
[2026-06-27 15:48:35,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:48:35,589.589 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:48:35,662.662 INFO    ] No existing commands found in stream
[2026-06-27 15:48:40,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:48:40,694.694 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-27 15:48:44,711.711 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:48:44,713.713 INFO    ] Checking for system updates...
[2026-06-27 15:48:44,735.735 INFO    ] 200
[2026-06-27 15:48:44,736.736 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:48:44,770.770 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:48:44,772.772 INFO    ] No update needed
[2026-06-27 15:48:44,773.773 INFO    ] Checking for camera pi updates...
[2026-06-27 15:48:44,793.793 INFO    ] 200
[2026-06-27 15:48:44,795.795 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:48:44,818.818 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:48:44,875.875 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:48:44,876.876 INFO    ] No camera update needed
[2026-06-27 15:48:44,877.877 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:48:44,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:48:44,882.882 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:48:44,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:48:46,924.924 INFO    ] ================================================
[2026-06-27 15:48:46,939.939 INFO    ] Launching Daemon at Sat Jun 27 15:48:46 IST 2026
[2026-06-27 15:48:46,950.950 INFO    ] ================================================
[2026-06-27 15:48:47,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:48:47
[2026-06-27 15:48:47,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:48:47,821.821 INFO    ] Initializing speech engine...
[2026-06-27 15:48:47,826.826 INFO    ] 2026-06-27 15:48:47
[2026-06-27 15:48:48,024.024 INFO    ] 2026-06-27 15:48:48
[2026-06-27 15:48:48,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:48:48,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:48:48,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:48:48,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:48:48,515.515 INFO    ] time= 27/06/2026 15:48:48
[2026-06-27 15:48:48,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:48:48,546.546 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:48:48,646.646 INFO    ] No existing commands found in stream
[2026-06-27 15:48:53,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:48:53,663.663 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-27 15:48:56,144.144 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 15:48:56,146.146 INFO    ] Checking for system updates...
[2026-06-27 15:48:56,166.166 INFO    ] 200
[2026-06-27 15:48:56,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:48:56,198.198 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:48:56,200.200 INFO    ] No update needed
[2026-06-27 15:48:56,201.201 INFO    ] Checking for camera pi updates...
[2026-06-27 15:48:56,225.225 INFO    ] 200
[2026-06-27 15:48:56,227.227 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:48:56,269.269 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:48:56,314.314 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:48:56,317.317 INFO    ] No camera update needed
[2026-06-27 15:48:56,319.319 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:48:56,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:48:56,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:48:56,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:48:58,368.368 INFO    ] ================================================
[2026-06-27 15:48:58,383.383 INFO    ] Launching Daemon at Sat Jun 27 15:48:58 IST 2026
[2026-06-27 15:48:58,393.393 INFO    ] ================================================
[2026-06-27 15:48:58,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:48:58
[2026-06-27 15:48:59,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:48:59,198.198 INFO    ] Initializing speech engine...
[2026-06-27 15:48:59,207.207 INFO    ] 2026-06-27 15:48:59
[2026-06-27 15:48:59,423.423 INFO    ] 2026-06-27 15:48:59
[2026-06-27 15:48:59,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:48:59,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:48:59,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:48:59,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:48:59,878.878 INFO    ] time= 27/06/2026 15:48:59
[2026-06-27 15:48:59,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:48:59,915.915 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:48:59,988.988 INFO    ] No existing commands found in stream
[2026-06-27 15:49:04,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:49:04,999.999 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-27 15:49:09,244.244 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 15:49:09,245.245 INFO    ] Checking for system updates...
[2026-06-27 15:49:09,268.268 INFO    ] 200
[2026-06-27 15:49:09,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:49:09,302.302 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:49:09,303.303 INFO    ] No update needed
[2026-06-27 15:49:09,305.305 INFO    ] Checking for camera pi updates...
[2026-06-27 15:49:09,325.325 INFO    ] 200
[2026-06-27 15:49:09,327.327 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:49:09,351.351 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:49:09,404.404 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:49:09,406.406 INFO    ] No camera update needed
[2026-06-27 15:49:09,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:49:09,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:49:09,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:49:09,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:49:11,446.446 INFO    ] ================================================
[2026-06-27 15:49:11,461.461 INFO    ] Launching Daemon at Sat Jun 27 15:49:11 IST 2026
[2026-06-27 15:49:11,472.472 INFO    ] ================================================
[2026-06-27 15:49:11,865.865 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:49:11
[2026-06-27 15:49:12,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:49:12,355.355 INFO    ] Initializing speech engine...
[2026-06-27 15:49:12,360.360 INFO    ] 2026-06-27 15:49:12
[2026-06-27 15:49:12,571.571 INFO    ] 2026-06-27 15:49:12
[2026-06-27 15:49:12,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:49:12,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:49:12,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:49:12,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:49:13,014.014 INFO    ] time= 27/06/2026 15:49:12
[2026-06-27 15:49:13,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:49:13,063.063 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:49:13,132.132 INFO    ] No existing commands found in stream
[2026-06-27 15:49:18,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:49:18,145.145 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-27 15:49:19,881.881 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 15:49:19,882.882 INFO    ] Checking for system updates...
[2026-06-27 15:49:19,904.904 INFO    ] 200
[2026-06-27 15:49:19,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:49:19,936.936 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:49:19,937.937 INFO    ] No update needed
[2026-06-27 15:49:19,939.939 INFO    ] Checking for camera pi updates...
[2026-06-27 15:49:19,958.958 INFO    ] 200
[2026-06-27 15:49:19,960.960 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:49:19,985.985 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:49:20,131.131 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:49:20,133.133 INFO    ] No camera update needed
[2026-06-27 15:49:20,134.134 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:49:20,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:49:20,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:49:20,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:49:22,182.182 INFO    ] ================================================
[2026-06-27 15:49:22,198.198 INFO    ] Launching Daemon at Sat Jun 27 15:49:22 IST 2026
[2026-06-27 15:49:22,210.210 INFO    ] ================================================
[2026-06-27 15:49:22,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:49:22
[2026-06-27 15:49:22,903.903 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:49:23,038.038 INFO    ] Initializing speech engine...
[2026-06-27 15:49:23,042.042 INFO    ] 2026-06-27 15:49:23
[2026-06-27 15:49:23,236.236 INFO    ] 2026-06-27 15:49:23
[2026-06-27 15:49:23,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:49:23,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:49:23,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:49:23,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:49:23,727.727 INFO    ] time= 27/06/2026 15:49:23
[2026-06-27 15:49:23,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:49:23,764.764 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:49:23,839.839 INFO    ] No existing commands found in stream
[2026-06-27 15:49:28,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:49:28,853.853 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-27 15:49:29,655.655 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 15:49:29,657.657 INFO    ] Checking for system updates...
[2026-06-27 15:49:29,678.678 INFO    ] 200
[2026-06-27 15:49:29,679.679 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:49:29,715.715 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:49:29,716.716 INFO    ] No update needed
[2026-06-27 15:49:29,718.718 INFO    ] Checking for camera pi updates...
[2026-06-27 15:49:29,737.737 INFO    ] 200
[2026-06-27 15:49:29,738.738 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:49:29,762.762 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:49:29,804.804 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:49:29,805.805 INFO    ] No camera update needed
[2026-06-27 15:49:29,806.806 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:49:29,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:49:29,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:49:29,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:49:31,855.855 INFO    ] ================================================
[2026-06-27 15:49:31,872.872 INFO    ] Launching Daemon at Sat Jun 27 15:49:31 IST 2026
[2026-06-27 15:49:31,884.884 INFO    ] ================================================
[2026-06-27 15:49:32,222.222 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:49:32
[2026-06-27 15:49:32,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:49:32,707.707 INFO    ] Initializing speech engine...
[2026-06-27 15:49:32,712.712 INFO    ] 2026-06-27 15:49:32
[2026-06-27 15:49:32,942.942 INFO    ] 2026-06-27 15:49:32
[2026-06-27 15:49:32,973.973 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:49:33,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:49:33,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:49:33,395.395 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:49:33,422.422 INFO    ] time= 27/06/2026 15:49:33
[2026-06-27 15:49:33,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:49:33,429.429 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:49:33,554.554 INFO    ] No existing commands found in stream
[2026-06-27 15:49:38,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:49:38,568.568 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-27 15:49:40,010.010 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:49:40,012.012 INFO    ] Checking for system updates...
[2026-06-27 15:49:40,034.034 INFO    ] 200
[2026-06-27 15:49:40,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:49:40,069.069 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:49:40,070.070 INFO    ] No update needed
[2026-06-27 15:49:40,072.072 INFO    ] Checking for camera pi updates...
[2026-06-27 15:49:40,093.093 INFO    ] 200
[2026-06-27 15:49:40,095.095 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:49:40,119.119 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:49:40,173.173 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:49:40,174.174 INFO    ] No camera update needed
[2026-06-27 15:49:40,176.176 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:49:40,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:49:40,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:49:40,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:49:42,221.221 INFO    ] ================================================
[2026-06-27 15:49:42,237.237 INFO    ] Launching Daemon at Sat Jun 27 15:49:42 IST 2026
[2026-06-27 15:49:42,248.248 INFO    ] ================================================
[2026-06-27 15:49:42,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:49:42
[2026-06-27 15:49:42,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:49:43,075.075 INFO    ] Initializing speech engine...
[2026-06-27 15:49:43,090.090 INFO    ] 2026-06-27 15:49:43
[2026-06-27 15:49:43,306.306 INFO    ] 2026-06-27 15:49:43
[2026-06-27 15:49:43,336.336 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:49:43,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:49:43,521.521 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:49:43,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:49:43,728.728 INFO    ] time= 27/06/2026 15:49:43
[2026-06-27 15:49:43,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:49:43,756.756 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:49:43,824.824 INFO    ] No existing commands found in stream
[2026-06-27 15:49:48,849.849 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:49:48,852.852 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-27 15:49:52,028.028 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 15:49:52,029.029 INFO    ] Checking for system updates...
[2026-06-27 15:49:52,050.050 INFO    ] 200
[2026-06-27 15:49:52,052.052 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:49:52,084.084 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:49:52,086.086 INFO    ] No update needed
[2026-06-27 15:49:52,087.087 INFO    ] Checking for camera pi updates...
[2026-06-27 15:49:52,108.108 INFO    ] 200
[2026-06-27 15:49:52,109.109 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:49:52,136.136 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:49:52,184.184 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:49:52,186.186 INFO    ] No camera update needed
[2026-06-27 15:49:52,187.187 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:49:52,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:49:52,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:49:52,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:49:54,236.236 INFO    ] ================================================
[2026-06-27 15:49:54,252.252 INFO    ] Launching Daemon at Sat Jun 27 15:49:54 IST 2026
[2026-06-27 15:49:54,264.264 INFO    ] ================================================
[2026-06-27 15:49:54,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:49:54
[2026-06-27 15:49:54,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:49:55,088.088 INFO    ] Initializing speech engine...
[2026-06-27 15:49:55,096.096 INFO    ] 2026-06-27 15:49:55
[2026-06-27 15:49:55,287.287 INFO    ] 2026-06-27 15:49:55
[2026-06-27 15:49:55,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:49:55,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:49:55,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:49:55,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:49:55,743.743 INFO    ] time= 27/06/2026 15:49:55
[2026-06-27 15:49:55,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:49:55,811.811 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:49:55,889.889 INFO    ] No existing commands found in stream
[2026-06-27 15:50:00,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:50:00,906.906 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-27 15:50:08,298.298 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 15:50:08,301.301 INFO    ] Checking for system updates...
[2026-06-27 15:50:08,360.360 INFO    ] 200
[2026-06-27 15:50:08,362.362 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:50:08,426.426 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:50:08,429.429 INFO    ] No update needed
[2026-06-27 15:50:08,431.431 INFO    ] Checking for camera pi updates...
[2026-06-27 15:50:08,450.450 INFO    ] 200
[2026-06-27 15:50:08,452.452 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:50:08,478.478 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:50:08,519.519 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:50:08,520.520 INFO    ] No camera update needed
[2026-06-27 15:50:08,521.521 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:50:08,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:50:08,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:50:08,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:50:10,567.567 INFO    ] ================================================
[2026-06-27 15:50:10,583.583 INFO    ] Launching Daemon at Sat Jun 27 15:50:10 IST 2026
[2026-06-27 15:50:10,593.593 INFO    ] ================================================
[2026-06-27 15:50:10,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:50:10
[2026-06-27 15:50:11,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:50:11,433.433 INFO    ] Initializing speech engine...
[2026-06-27 15:50:11,441.441 INFO    ] 2026-06-27 15:50:11
[2026-06-27 15:50:11,660.660 INFO    ] 2026-06-27 15:50:11
[2026-06-27 15:50:11,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:50:11,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:50:11,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:50:12,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:50:12,135.135 INFO    ] time= 27/06/2026 15:50:12
[2026-06-27 15:50:12,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:50:12,143.143 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:50:12,216.216 INFO    ] No existing commands found in stream
[2026-06-27 15:50:17,225.225 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:50:17,228.228 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-27 15:50:17,936.936 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 15:50:17,938.938 INFO    ] Checking for system updates...
[2026-06-27 15:50:17,958.958 INFO    ] 200
[2026-06-27 15:50:17,960.960 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:50:17,991.991 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:50:17,992.992 INFO    ] No update needed
[2026-06-27 15:50:17,993.993 INFO    ] Checking for camera pi updates...
[2026-06-27 15:50:18,014.014 INFO    ] 200
[2026-06-27 15:50:18,016.016 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:50:18,042.042 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:50:18,090.090 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:50:18,091.091 INFO    ] No camera update needed
[2026-06-27 15:50:18,093.093 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:50:18,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:50:18,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:50:18,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:50:20,141.141 INFO    ] ================================================
[2026-06-27 15:50:20,157.157 INFO    ] Launching Daemon at Sat Jun 27 15:50:20 IST 2026
[2026-06-27 15:50:20,168.168 INFO    ] ================================================
[2026-06-27 15:50:20,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:50:20
[2026-06-27 15:50:20,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:50:20,960.960 INFO    ] Initializing speech engine...
[2026-06-27 15:50:20,964.964 INFO    ] 2026-06-27 15:50:20
[2026-06-27 15:50:21,171.171 INFO    ] 2026-06-27 15:50:21
[2026-06-27 15:50:21,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:50:21,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:50:21,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:50:21,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:50:21,616.616 INFO    ] time= 27/06/2026 15:50:21
[2026-06-27 15:50:21,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:50:21,620.620 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:50:21,687.687 INFO    ] No existing commands found in stream
[2026-06-27 15:50:26,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:50:26,699.699 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-27 15:50:30,305.305 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:50:30,307.307 INFO    ] Checking for system updates...
[2026-06-27 15:50:30,329.329 INFO    ] 200
[2026-06-27 15:50:30,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:50:30,363.363 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:50:30,365.365 INFO    ] No update needed
[2026-06-27 15:50:30,366.366 INFO    ] Checking for camera pi updates...
[2026-06-27 15:50:30,386.386 INFO    ] 200
[2026-06-27 15:50:30,388.388 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:50:30,413.413 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:50:30,452.452 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:50:30,454.454 INFO    ] No camera update needed
[2026-06-27 15:50:30,455.455 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:50:30,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:50:30,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:50:30,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:50:32,496.496 INFO    ] ================================================
[2026-06-27 15:50:32,507.507 INFO    ] Launching Daemon at Sat Jun 27 15:50:32 IST 2026
[2026-06-27 15:50:32,514.514 INFO    ] ================================================
[2026-06-27 15:50:32,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:50:32
[2026-06-27 15:50:33,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:50:33,309.309 INFO    ] Initializing speech engine...
[2026-06-27 15:50:33,314.314 INFO    ] 2026-06-27 15:50:33
[2026-06-27 15:50:33,542.542 INFO    ] 2026-06-27 15:50:33
[2026-06-27 15:50:33,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:50:33,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:50:33,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:50:33,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:50:33,994.994 INFO    ] time= 27/06/2026 15:50:33
[2026-06-27 15:50:34,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:50:34,001.001 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:50:34,092.092 INFO    ] No existing commands found in stream
[2026-06-27 15:50:39,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:50:39,104.104 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-27 15:50:40,723.723 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:50:40,725.725 INFO    ] Checking for system updates...
[2026-06-27 15:50:40,746.746 INFO    ] 200
[2026-06-27 15:50:40,747.747 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:50:40,778.778 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:50:40,779.779 INFO    ] No update needed
[2026-06-27 15:50:40,780.780 INFO    ] Checking for camera pi updates...
[2026-06-27 15:50:40,802.802 INFO    ] 200
[2026-06-27 15:50:40,804.804 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:50:40,828.828 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:50:40,867.867 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:50:40,868.868 INFO    ] No camera update needed
[2026-06-27 15:50:40,869.869 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:50:40,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:50:40,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:50:40,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:50:42,916.916 INFO    ] ================================================
[2026-06-27 15:50:42,932.932 INFO    ] Launching Daemon at Sat Jun 27 15:50:42 IST 2026
[2026-06-27 15:50:42,943.943 INFO    ] ================================================
[2026-06-27 15:50:43,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:50:43
[2026-06-27 15:50:43,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:50:43,755.755 INFO    ] Initializing speech engine...
[2026-06-27 15:50:43,760.760 INFO    ] 2026-06-27 15:50:43
[2026-06-27 15:50:43,964.964 INFO    ] 2026-06-27 15:50:43
[2026-06-27 15:50:43,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:50:44,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:50:44,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:50:44,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:50:44,383.383 INFO    ] time= 27/06/2026 15:50:44
[2026-06-27 15:50:44,407.407 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:50:44,412.412 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:50:44,477.477 INFO    ] No existing commands found in stream
[2026-06-27 15:50:49,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:50:49,489.489 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-27 15:50:52,511.511 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:50:52,512.512 INFO    ] Checking for system updates...
[2026-06-27 15:50:52,534.534 INFO    ] 200
[2026-06-27 15:50:52,535.535 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:50:52,569.569 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:50:52,570.570 INFO    ] No update needed
[2026-06-27 15:50:52,572.572 INFO    ] Checking for camera pi updates...
[2026-06-27 15:50:52,593.593 INFO    ] 200
[2026-06-27 15:50:52,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:50:52,620.620 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:50:52,665.665 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:50:52,667.667 INFO    ] No camera update needed
[2026-06-27 15:50:52,668.668 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:50:52,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:50:52,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:50:52,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:50:54,717.717 INFO    ] ================================================
[2026-06-27 15:50:54,733.733 INFO    ] Launching Daemon at Sat Jun 27 15:50:54 IST 2026
[2026-06-27 15:50:54,743.743 INFO    ] ================================================
[2026-06-27 15:50:55,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:50:55
[2026-06-27 15:50:55,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:50:55,564.564 INFO    ] Initializing speech engine...
[2026-06-27 15:50:55,569.569 INFO    ] 2026-06-27 15:50:55
[2026-06-27 15:50:55,780.780 INFO    ] 2026-06-27 15:50:55
[2026-06-27 15:50:55,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:50:56,010.010 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:50:56,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:50:56,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:50:56,235.235 INFO    ] time= 27/06/2026 15:50:56
[2026-06-27 15:50:56,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:50:56,262.262 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:50:56,338.338 INFO    ] No existing commands found in stream
[2026-06-27 15:51:01,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:51:01,350.350 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-27 15:51:04,954.954 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 15:51:04,955.955 INFO    ] Checking for system updates...
[2026-06-27 15:51:04,981.981 INFO    ] 200
[2026-06-27 15:51:04,983.983 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:51:05,013.013 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:51:05,014.014 INFO    ] No update needed
[2026-06-27 15:51:05,016.016 INFO    ] Checking for camera pi updates...
[2026-06-27 15:51:05,035.035 INFO    ] 200
[2026-06-27 15:51:05,037.037 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:51:05,060.060 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:51:05,112.112 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:51:05,114.114 INFO    ] No camera update needed
[2026-06-27 15:51:05,115.115 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:51:05,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:51:05,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:51:05,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:51:07,161.161 INFO    ] ================================================
[2026-06-27 15:51:07,177.177 INFO    ] Launching Daemon at Sat Jun 27 15:51:07 IST 2026
[2026-06-27 15:51:07,188.188 INFO    ] ================================================
[2026-06-27 15:51:07,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:51:07
[2026-06-27 15:51:07,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:51:08,002.002 INFO    ] Initializing speech engine...
[2026-06-27 15:51:08,006.006 INFO    ] 2026-06-27 15:51:08
[2026-06-27 15:51:08,215.215 INFO    ] 2026-06-27 15:51:08
[2026-06-27 15:51:08,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:51:08,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:51:08,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:51:08,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:51:08,664.664 INFO    ] time= 27/06/2026 15:51:08
[2026-06-27 15:51:08,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:51:08,668.668 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:51:08,759.759 INFO    ] No existing commands found in stream
[2026-06-27 15:51:13,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:51:13,787.787 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-27 15:51:14,254.254 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 15:51:14,256.256 INFO    ] Checking for system updates...
[2026-06-27 15:51:14,277.277 INFO    ] 200
[2026-06-27 15:51:14,278.278 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:51:14,310.310 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:51:14,311.311 INFO    ] No update needed
[2026-06-27 15:51:14,312.312 INFO    ] Checking for camera pi updates...
[2026-06-27 15:51:14,332.332 INFO    ] 200
[2026-06-27 15:51:14,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:51:14,360.360 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:51:14,411.411 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:51:14,413.413 INFO    ] No camera update needed
[2026-06-27 15:51:14,415.415 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:51:14,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:51:14,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:51:14,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:51:16,448.448 INFO    ] ================================================
[2026-06-27 15:51:16,457.457 INFO    ] Launching Daemon at Sat Jun 27 15:51:16 IST 2026
[2026-06-27 15:51:16,463.463 INFO    ] ================================================
[2026-06-27 15:51:16,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:51:16
[2026-06-27 15:51:17,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:51:17,273.273 INFO    ] Initializing speech engine...
[2026-06-27 15:51:17,278.278 INFO    ] 2026-06-27 15:51:17
[2026-06-27 15:51:17,483.483 INFO    ] 2026-06-27 15:51:17
[2026-06-27 15:51:17,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:51:17,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:51:17,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:51:17,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:51:17,922.922 INFO    ] time= 27/06/2026 15:51:17
[2026-06-27 15:51:17,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:51:17,929.929 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:51:17,998.998 INFO    ] No existing commands found in stream
[2026-06-27 15:51:23,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:51:23,011.011 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-27 15:51:26,847.847 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:51:26,849.849 INFO    ] Checking for system updates...
[2026-06-27 15:51:26,891.891 INFO    ] 200
[2026-06-27 15:51:26,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:51:26,948.948 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:51:26,951.951 INFO    ] No update needed
[2026-06-27 15:51:26,954.954 INFO    ] Checking for camera pi updates...
[2026-06-27 15:51:26,990.990 INFO    ] 200
[2026-06-27 15:51:26,993.993 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:51:27,039.039 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:51:27,192.192 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:51:27,194.194 INFO    ] No camera update needed
[2026-06-27 15:51:27,195.195 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:51:27,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:51:27,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:51:27,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:51:29,242.242 INFO    ] ================================================
[2026-06-27 15:51:29,258.258 INFO    ] Launching Daemon at Sat Jun 27 15:51:29 IST 2026
[2026-06-27 15:51:29,269.269 INFO    ] ================================================
[2026-06-27 15:51:29,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:51:29
[2026-06-27 15:51:29,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:51:30,086.086 INFO    ] Initializing speech engine...
[2026-06-27 15:51:30,094.094 INFO    ] 2026-06-27 15:51:30
[2026-06-27 15:51:30,301.301 INFO    ] 2026-06-27 15:51:30
[2026-06-27 15:51:30,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:51:30,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:51:30,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:51:30,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:51:30,700.700 INFO    ] time= 27/06/2026 15:51:30
[2026-06-27 15:51:30,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:51:30,748.748 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:51:30,816.816 INFO    ] No existing commands found in stream
[2026-06-27 15:51:35,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:51:35,827.827 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-27 15:51:39,514.514 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:51:39,515.515 INFO    ] Checking for system updates...
[2026-06-27 15:51:39,536.536 INFO    ] 200
[2026-06-27 15:51:39,537.537 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:51:39,570.570 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:51:39,572.572 INFO    ] No update needed
[2026-06-27 15:51:39,573.573 INFO    ] Checking for camera pi updates...
[2026-06-27 15:51:39,592.592 INFO    ] 200
[2026-06-27 15:51:39,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:51:39,619.619 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:51:39,667.667 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:51:39,669.669 INFO    ] No camera update needed
[2026-06-27 15:51:39,670.670 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:51:39,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:51:39,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:51:39,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:51:41,717.717 INFO    ] ================================================
[2026-06-27 15:51:41,732.732 INFO    ] Launching Daemon at Sat Jun 27 15:51:41 IST 2026
[2026-06-27 15:51:41,742.742 INFO    ] ================================================
[2026-06-27 15:51:42,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:51:42
[2026-06-27 15:51:42,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:51:42,533.533 INFO    ] Initializing speech engine...
[2026-06-27 15:51:42,538.538 INFO    ] 2026-06-27 15:51:42
[2026-06-27 15:51:42,743.743 INFO    ] 2026-06-27 15:51:42
[2026-06-27 15:51:42,771.771 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:51:42,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:51:42,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:51:43,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:51:43,184.184 INFO    ] time= 27/06/2026 15:51:43
[2026-06-27 15:51:43,189.189 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:51:43,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:51:43,256.256 INFO    ] No existing commands found in stream
[2026-06-27 15:51:48,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:51:48,269.269 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-27 15:51:49,749.749 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:51:49,751.751 INFO    ] Checking for system updates...
[2026-06-27 15:51:49,773.773 INFO    ] 200
[2026-06-27 15:51:49,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:51:49,805.805 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:51:49,807.807 INFO    ] No update needed
[2026-06-27 15:51:49,808.808 INFO    ] Checking for camera pi updates...
[2026-06-27 15:51:49,828.828 INFO    ] 200
[2026-06-27 15:51:49,830.830 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:51:49,853.853 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:51:49,898.898 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:51:49,900.900 INFO    ] No camera update needed
[2026-06-27 15:51:49,901.901 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:51:49,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:51:49,906.906 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:51:49,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:51:51,948.948 INFO    ] ================================================
[2026-06-27 15:51:51,963.963 INFO    ] Launching Daemon at Sat Jun 27 15:51:51 IST 2026
[2026-06-27 15:51:51,974.974 INFO    ] ================================================
[2026-06-27 15:51:52,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:51:52
[2026-06-27 15:51:52,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:51:52,799.799 INFO    ] Initializing speech engine...
[2026-06-27 15:51:52,810.810 INFO    ] 2026-06-27 15:51:52
[2026-06-27 15:51:53,022.022 INFO    ] 2026-06-27 15:51:52
[2026-06-27 15:51:53,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:51:53,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:51:53,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:51:53,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:51:53,547.547 INFO    ] time= 27/06/2026 15:51:53
[2026-06-27 15:51:53,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:51:53,575.575 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:51:53,678.678 INFO    ] No existing commands found in stream
[2026-06-27 15:51:58,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:51:58,689.689 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-27 15:52:01,767.767 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 15:52:01,770.770 INFO    ] Checking for system updates...
[2026-06-27 15:52:01,801.801 INFO    ] 200
[2026-06-27 15:52:01,803.803 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:52:01,884.884 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:52:01,886.886 INFO    ] No update needed
[2026-06-27 15:52:01,888.888 INFO    ] Checking for camera pi updates...
[2026-06-27 15:52:01,926.926 INFO    ] 200
[2026-06-27 15:52:01,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:52:01,961.961 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:52:02,030.030 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:52:02,033.033 INFO    ] No camera update needed
[2026-06-27 15:52:02,036.036 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:52:02,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:52:02,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:52:02,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:52:04,091.091 INFO    ] ================================================
[2026-06-27 15:52:04,107.107 INFO    ] Launching Daemon at Sat Jun 27 15:52:04 IST 2026
[2026-06-27 15:52:04,118.118 INFO    ] ================================================
[2026-06-27 15:52:04,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:52:04
[2026-06-27 15:52:04,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:52:04,922.922 INFO    ] Initializing speech engine...
[2026-06-27 15:52:04,927.927 INFO    ] 2026-06-27 15:52:04
[2026-06-27 15:52:05,144.144 INFO    ] 2026-06-27 15:52:05
[2026-06-27 15:52:05,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:52:05,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:52:05,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:52:05,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:52:05,547.547 INFO    ] time= 27/06/2026 15:52:05
[2026-06-27 15:52:05,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:52:05,590.590 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:52:05,657.657 INFO    ] No existing commands found in stream
[2026-06-27 15:52:10,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:52:10,674.674 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-27 15:52:14,881.881 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:52:14,883.883 INFO    ] Checking for system updates...
[2026-06-27 15:52:14,905.905 INFO    ] 200
[2026-06-27 15:52:14,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:52:14,939.939 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:52:14,940.940 INFO    ] No update needed
[2026-06-27 15:52:14,941.941 INFO    ] Checking for camera pi updates...
[2026-06-27 15:52:14,961.961 INFO    ] 200
[2026-06-27 15:52:14,962.962 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:52:14,986.986 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:52:15,038.038 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:52:15,039.039 INFO    ] No camera update needed
[2026-06-27 15:52:15,041.041 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:52:15,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:52:15,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:52:15,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:52:17,088.088 INFO    ] ================================================
[2026-06-27 15:52:17,103.103 INFO    ] Launching Daemon at Sat Jun 27 15:52:17 IST 2026
[2026-06-27 15:52:17,114.114 INFO    ] ================================================
[2026-06-27 15:52:17,449.449 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:52:17
[2026-06-27 15:52:17,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:52:17,897.897 INFO    ] Initializing speech engine...
[2026-06-27 15:52:17,900.900 INFO    ] 2026-06-27 15:52:17
[2026-06-27 15:52:18,093.093 INFO    ] 2026-06-27 15:52:18
[2026-06-27 15:52:18,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:52:18,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:52:18,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:52:18,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:52:18,512.512 INFO    ] time= 27/06/2026 15:52:18
[2026-06-27 15:52:18,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:52:18,604.604 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:52:18,695.695 INFO    ] No existing commands found in stream
[2026-06-27 15:52:23,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:52:23,708.708 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-27 15:52:25,267.267 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:52:25,269.269 INFO    ] Checking for system updates...
[2026-06-27 15:52:25,292.292 INFO    ] 200
[2026-06-27 15:52:25,294.294 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:52:25,329.329 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:52:25,330.330 INFO    ] No update needed
[2026-06-27 15:52:25,332.332 INFO    ] Checking for camera pi updates...
[2026-06-27 15:52:25,358.358 INFO    ] 200
[2026-06-27 15:52:25,360.360 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:52:25,387.387 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:52:25,434.434 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:52:25,436.436 INFO    ] No camera update needed
[2026-06-27 15:52:25,437.437 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:52:25,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:52:25,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:52:25,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:52:27,477.477 INFO    ] ================================================
[2026-06-27 15:52:27,492.492 INFO    ] Launching Daemon at Sat Jun 27 15:52:27 IST 2026
[2026-06-27 15:52:27,503.503 INFO    ] ================================================
[2026-06-27 15:52:27,862.862 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:52:27
[2026-06-27 15:52:28,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:52:28,311.311 INFO    ] Initializing speech engine...
[2026-06-27 15:52:28,315.315 INFO    ] 2026-06-27 15:52:28
[2026-06-27 15:52:28,508.508 INFO    ] 2026-06-27 15:52:28
[2026-06-27 15:52:28,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:52:28,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:52:28,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:52:29,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:52:29,029.029 INFO    ] time= 27/06/2026 15:52:29
[2026-06-27 15:52:29,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:52:29,037.037 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:52:29,135.135 INFO    ] No existing commands found in stream
[2026-06-27 15:52:34,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:52:34,147.147 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-27 15:52:36,420.420 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:52:36,421.421 INFO    ] Checking for system updates...
[2026-06-27 15:52:36,444.444 INFO    ] 200
[2026-06-27 15:52:36,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:52:36,479.479 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:52:36,481.481 INFO    ] No update needed
[2026-06-27 15:52:36,482.482 INFO    ] Checking for camera pi updates...
[2026-06-27 15:52:36,504.504 INFO    ] 200
[2026-06-27 15:52:36,506.506 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:52:36,530.530 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:52:36,571.571 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:52:36,573.573 INFO    ] No camera update needed
[2026-06-27 15:52:36,574.574 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:52:36,576.576 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:52:36,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:52:36,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:52:38,629.629 INFO    ] ================================================
[2026-06-27 15:52:38,644.644 INFO    ] Launching Daemon at Sat Jun 27 15:52:38 IST 2026
[2026-06-27 15:52:38,654.654 INFO    ] ================================================
[2026-06-27 15:52:39,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:52:39
[2026-06-27 15:52:39,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:52:39,512.512 INFO    ] Initializing speech engine...
[2026-06-27 15:52:39,518.518 INFO    ] 2026-06-27 15:52:39
[2026-06-27 15:52:39,729.729 INFO    ] 2026-06-27 15:52:39
[2026-06-27 15:52:39,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:52:39,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:52:39,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:52:40,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:52:40,071.071 INFO    ] time= 27/06/2026 15:52:40
[2026-06-27 15:52:40,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:52:40,091.091 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:52:40,191.191 INFO    ] No existing commands found in stream
[2026-06-27 15:52:45,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:52:45,204.204 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-27 15:52:48,150.150 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:52:48,151.151 INFO    ] Checking for system updates...
[2026-06-27 15:52:48,173.173 INFO    ] 200
[2026-06-27 15:52:48,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:52:48,207.207 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:52:48,208.208 INFO    ] No update needed
[2026-06-27 15:52:48,210.210 INFO    ] Checking for camera pi updates...
[2026-06-27 15:52:48,230.230 INFO    ] 200
[2026-06-27 15:52:48,231.231 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:52:48,256.256 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:52:48,308.308 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:52:48,309.309 INFO    ] No camera update needed
[2026-06-27 15:52:48,310.310 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:52:48,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:52:48,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:52:48,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:52:50,356.356 INFO    ] ================================================
[2026-06-27 15:52:50,371.371 INFO    ] Launching Daemon at Sat Jun 27 15:52:50 IST 2026
[2026-06-27 15:52:50,381.381 INFO    ] ================================================
[2026-06-27 15:52:50,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:52:50
[2026-06-27 15:52:51,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:52:51,219.219 INFO    ] Initializing speech engine...
[2026-06-27 15:52:51,230.230 INFO    ] 2026-06-27 15:52:51
[2026-06-27 15:52:51,436.436 INFO    ] 2026-06-27 15:52:51
[2026-06-27 15:52:51,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:52:51,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:52:51,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:52:51,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:52:51,879.879 INFO    ] time= 27/06/2026 15:52:51
[2026-06-27 15:52:51,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:52:51,882.882 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:52:51,949.949 INFO    ] No existing commands found in stream
[2026-06-27 15:52:56,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:52:56,968.968 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-27 15:53:00,110.110 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 15:53:00,112.112 INFO    ] Checking for system updates...
[2026-06-27 15:53:00,133.133 INFO    ] 200
[2026-06-27 15:53:00,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:53:00,165.165 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:53:00,167.167 INFO    ] No update needed
[2026-06-27 15:53:00,168.168 INFO    ] Checking for camera pi updates...
[2026-06-27 15:53:00,188.188 INFO    ] 200
[2026-06-27 15:53:00,190.190 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:53:00,213.213 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:53:00,254.254 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:53:00,255.255 INFO    ] No camera update needed
[2026-06-27 15:53:00,257.257 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:53:00,258.258 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:53:00,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:53:00,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:53:02,296.296 INFO    ] ================================================
[2026-06-27 15:53:02,313.313 INFO    ] Launching Daemon at Sat Jun 27 15:53:02 IST 2026
[2026-06-27 15:53:02,331.331 INFO    ] ================================================
[2026-06-27 15:53:02,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:53:02
[2026-06-27 15:53:03,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:53:03,263.263 INFO    ] Initializing speech engine...
[2026-06-27 15:53:03,268.268 INFO    ] 2026-06-27 15:53:03
[2026-06-27 15:53:03,479.479 INFO    ] 2026-06-27 15:53:03
[2026-06-27 15:53:03,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:53:03,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:53:03,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:53:03,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:53:03,923.923 INFO    ] time= 27/06/2026 15:53:03
[2026-06-27 15:53:03,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:53:03,930.930 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:53:03,996.996 INFO    ] No existing commands found in stream
[2026-06-27 15:53:09,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:53:09,010.010 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-27 15:53:12,744.744 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:53:12,746.746 INFO    ] Checking for system updates...
[2026-06-27 15:53:12,767.767 INFO    ] 200
[2026-06-27 15:53:12,768.768 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:53:12,800.800 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:53:12,802.802 INFO    ] No update needed
[2026-06-27 15:53:12,803.803 INFO    ] Checking for camera pi updates...
[2026-06-27 15:53:12,823.823 INFO    ] 200
[2026-06-27 15:53:12,825.825 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:53:12,850.850 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:53:12,900.900 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:53:12,901.901 INFO    ] No camera update needed
[2026-06-27 15:53:12,902.902 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:53:12,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:53:12,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:53:12,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:53:14,948.948 INFO    ] ================================================
[2026-06-27 15:53:14,964.964 INFO    ] Launching Daemon at Sat Jun 27 15:53:14 IST 2026
[2026-06-27 15:53:14,974.974 INFO    ] ================================================
[2026-06-27 15:53:15,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:53:15
[2026-06-27 15:53:15,627.627 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:53:15,759.759 INFO    ] Initializing speech engine...
[2026-06-27 15:53:15,772.772 INFO    ] 2026-06-27 15:53:15
[2026-06-27 15:53:15,978.978 INFO    ] 2026-06-27 15:53:15
[2026-06-27 15:53:16,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:53:16,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:53:16,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:53:16,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:53:16,424.424 INFO    ] time= 27/06/2026 15:53:16
[2026-06-27 15:53:16,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:53:16,427.427 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:53:16,494.494 INFO    ] No existing commands found in stream
[2026-06-27 15:53:21,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:53:21,521.521 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-27 15:53:23,131.131 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 15:53:23,132.132 INFO    ] Checking for system updates...
[2026-06-27 15:53:23,158.158 INFO    ] 200
[2026-06-27 15:53:23,161.161 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:53:23,224.224 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:53:23,227.227 INFO    ] No update needed
[2026-06-27 15:53:23,230.230 INFO    ] Checking for camera pi updates...
[2026-06-27 15:53:23,263.263 INFO    ] 200
[2026-06-27 15:53:23,265.265 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:53:23,291.291 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:53:23,337.337 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:53:23,338.338 INFO    ] No camera update needed
[2026-06-27 15:53:23,340.340 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:53:23,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:53:23,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:53:23,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:53:25,388.388 INFO    ] ================================================
[2026-06-27 15:53:25,403.403 INFO    ] Launching Daemon at Sat Jun 27 15:53:25 IST 2026
[2026-06-27 15:53:25,415.415 INFO    ] ================================================
[2026-06-27 15:53:25,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:53:25
[2026-06-27 15:53:26,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:53:26,261.261 INFO    ] Initializing speech engine...
[2026-06-27 15:53:26,268.268 INFO    ] 2026-06-27 15:53:26
[2026-06-27 15:53:26,479.479 INFO    ] 2026-06-27 15:53:26
[2026-06-27 15:53:26,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:53:26,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:53:26,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:53:26,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:53:26,927.927 INFO    ] time= 27/06/2026 15:53:26
[2026-06-27 15:53:26,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:53:26,934.934 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:53:27,025.025 INFO    ] No existing commands found in stream
[2026-06-27 15:53:32,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:53:32,041.041 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-27 15:53:36,281.281 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 15:53:36,282.282 INFO    ] Checking for system updates...
[2026-06-27 15:53:36,305.305 INFO    ] 200
[2026-06-27 15:53:36,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:53:36,337.337 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:53:36,339.339 INFO    ] No update needed
[2026-06-27 15:53:36,340.340 INFO    ] Checking for camera pi updates...
[2026-06-27 15:53:36,360.360 INFO    ] 200
[2026-06-27 15:53:36,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:53:36,388.388 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:53:36,445.445 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:53:36,447.447 INFO    ] No camera update needed
[2026-06-27 15:53:36,448.448 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:53:36,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:53:36,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:53:36,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:53:38,494.494 INFO    ] ================================================
[2026-06-27 15:53:38,510.510 INFO    ] Launching Daemon at Sat Jun 27 15:53:38 IST 2026
[2026-06-27 15:53:38,520.520 INFO    ] ================================================
[2026-06-27 15:53:38,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:53:38
[2026-06-27 15:53:39,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:53:39,420.420 INFO    ] Initializing speech engine...
[2026-06-27 15:53:39,425.425 INFO    ] 2026-06-27 15:53:39
[2026-06-27 15:53:39,634.634 INFO    ] 2026-06-27 15:53:39
[2026-06-27 15:53:39,663.663 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:53:39,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:53:39,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:53:40,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:53:40,154.154 INFO    ] time= 27/06/2026 15:53:40
[2026-06-27 15:53:40,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:53:40,183.183 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:53:40,279.279 INFO    ] No existing commands found in stream
[2026-06-27 15:53:45,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:53:45,294.294 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-27 15:53:45,839.839 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 15:53:45,841.841 INFO    ] Checking for system updates...
[2026-06-27 15:53:45,862.862 INFO    ] 200
[2026-06-27 15:53:45,864.864 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:53:45,896.896 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:53:45,897.897 INFO    ] No update needed
[2026-06-27 15:53:45,898.898 INFO    ] Checking for camera pi updates...
[2026-06-27 15:53:45,919.919 INFO    ] 200
[2026-06-27 15:53:45,921.921 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:53:45,944.944 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:53:45,976.976 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:53:45,977.977 INFO    ] No camera update needed
[2026-06-27 15:53:45,979.979 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:53:45,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:53:45,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:53:45,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:53:48,023.023 INFO    ] ================================================
[2026-06-27 15:53:48,038.038 INFO    ] Launching Daemon at Sat Jun 27 15:53:48 IST 2026
[2026-06-27 15:53:48,049.049 INFO    ] ================================================
[2026-06-27 15:53:48,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:53:48
[2026-06-27 15:53:48,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:53:48,909.909 INFO    ] Initializing speech engine...
[2026-06-27 15:53:48,916.916 INFO    ] 2026-06-27 15:53:48
[2026-06-27 15:53:49,120.120 INFO    ] 2026-06-27 15:53:49
[2026-06-27 15:53:49,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:53:49,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:53:49,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:53:49,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:53:49,548.548 INFO    ] time= 27/06/2026 15:53:49
[2026-06-27 15:53:49,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:53:49,579.579 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:53:49,669.669 INFO    ] No existing commands found in stream
[2026-06-27 15:53:54,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:53:54,687.687 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-27 15:53:58,909.909 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 15:53:58,911.911 INFO    ] Checking for system updates...
[2026-06-27 15:53:58,932.932 INFO    ] 200
[2026-06-27 15:53:58,934.934 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:53:58,967.967 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:53:58,968.968 INFO    ] No update needed
[2026-06-27 15:53:58,969.969 INFO    ] Checking for camera pi updates...
[2026-06-27 15:53:58,992.992 INFO    ] 200
[2026-06-27 15:53:58,993.993 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:53:59,018.018 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:53:59,064.064 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:53:59,065.065 INFO    ] No camera update needed
[2026-06-27 15:53:59,066.066 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:53:59,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:53:59,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:53:59,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:54:01,133.133 INFO    ] ================================================
[2026-06-27 15:54:01,170.170 INFO    ] Launching Daemon at Sat Jun 27 15:54:01 IST 2026
[2026-06-27 15:54:01,192.192 INFO    ] ================================================
[2026-06-27 15:54:01,659.659 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:54:01
[2026-06-27 15:54:02,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:54:02,234.234 INFO    ] Initializing speech engine...
[2026-06-27 15:54:02,239.239 INFO    ] 2026-06-27 15:54:02
[2026-06-27 15:54:02,454.454 INFO    ] 2026-06-27 15:54:02
[2026-06-27 15:54:02,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:54:02,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:54:02,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:54:02,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:54:02,897.897 INFO    ] time= 27/06/2026 15:54:02
[2026-06-27 15:54:02,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:54:02,901.901 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:54:02,965.965 INFO    ] No existing commands found in stream
[2026-06-27 15:54:07,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:54:07,979.979 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-27 15:54:11,599.599 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 15:54:11,600.600 INFO    ] Checking for system updates...
[2026-06-27 15:54:11,623.623 INFO    ] 200
[2026-06-27 15:54:11,624.624 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:54:11,657.657 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:54:11,658.658 INFO    ] No update needed
[2026-06-27 15:54:11,660.660 INFO    ] Checking for camera pi updates...
[2026-06-27 15:54:11,679.679 INFO    ] 200
[2026-06-27 15:54:11,680.680 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:54:11,704.704 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:54:11,746.746 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:54:11,747.747 INFO    ] No camera update needed
[2026-06-27 15:54:11,748.748 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:54:11,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:54:11,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:54:11,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:54:13,793.793 INFO    ] ================================================
[2026-06-27 15:54:13,809.809 INFO    ] Launching Daemon at Sat Jun 27 15:54:13 IST 2026
[2026-06-27 15:54:13,820.820 INFO    ] ================================================
[2026-06-27 15:54:14,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:54:14
[2026-06-27 15:54:14,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:54:14,607.607 INFO    ] Initializing speech engine...
[2026-06-27 15:54:14,617.617 INFO    ] 2026-06-27 15:54:14
[2026-06-27 15:54:14,828.828 INFO    ] 2026-06-27 15:54:14
[2026-06-27 15:54:14,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:54:15,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:54:15,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:54:15,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:54:15,272.272 INFO    ] time= 27/06/2026 15:54:15
[2026-06-27 15:54:15,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:54:15,276.276 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:54:15,366.366 INFO    ] No existing commands found in stream
[2026-06-27 15:54:20,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:54:20,378.378 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-27 15:54:24,753.753 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:54:24,755.755 INFO    ] Checking for system updates...
[2026-06-27 15:54:24,776.776 INFO    ] 200
[2026-06-27 15:54:24,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:54:24,808.808 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:54:24,809.809 INFO    ] No update needed
[2026-06-27 15:54:24,810.810 INFO    ] Checking for camera pi updates...
[2026-06-27 15:54:24,831.831 INFO    ] 200
[2026-06-27 15:54:24,833.833 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:54:24,856.856 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:54:24,911.911 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:54:24,913.913 INFO    ] No camera update needed
[2026-06-27 15:54:24,914.914 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:54:24,915.915 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:54:24,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:54:24,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:54:26,962.962 INFO    ] ================================================
[2026-06-27 15:54:26,977.977 INFO    ] Launching Daemon at Sat Jun 27 15:54:26 IST 2026
[2026-06-27 15:54:26,988.988 INFO    ] ================================================
[2026-06-27 15:54:27,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:54:27
[2026-06-27 15:54:27,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:54:27,845.845 INFO    ] Initializing speech engine...
[2026-06-27 15:54:27,859.859 INFO    ] 2026-06-27 15:54:27
[2026-06-27 15:54:28,071.071 INFO    ] 2026-06-27 15:54:28
[2026-06-27 15:54:28,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:54:28,286.286 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:54:28,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:54:28,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:54:28,499.499 INFO    ] time= 27/06/2026 15:54:28
[2026-06-27 15:54:28,515.515 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:54:28,520.520 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:54:28,611.611 INFO    ] No existing commands found in stream
[2026-06-27 15:54:33,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:54:33,629.629 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-27 15:54:37,356.356 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 15:54:37,358.358 INFO    ] Checking for system updates...
[2026-06-27 15:54:37,379.379 INFO    ] 200
[2026-06-27 15:54:37,380.380 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:54:37,411.411 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:54:37,412.412 INFO    ] No update needed
[2026-06-27 15:54:37,414.414 INFO    ] Checking for camera pi updates...
[2026-06-27 15:54:37,435.435 INFO    ] 200
[2026-06-27 15:54:37,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:54:37,462.462 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:54:37,507.507 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:54:37,508.508 INFO    ] No camera update needed
[2026-06-27 15:54:37,510.510 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:54:37,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:54:37,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:54:37,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:54:39,557.557 INFO    ] ================================================
[2026-06-27 15:54:39,572.572 INFO    ] Launching Daemon at Sat Jun 27 15:54:39 IST 2026
[2026-06-27 15:54:39,582.582 INFO    ] ================================================
[2026-06-27 15:54:39,949.949 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:54:39
[2026-06-27 15:54:40,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:54:40,439.439 INFO    ] Initializing speech engine...
[2026-06-27 15:54:40,445.445 INFO    ] 2026-06-27 15:54:40
[2026-06-27 15:54:40,652.652 INFO    ] 2026-06-27 15:54:40
[2026-06-27 15:54:40,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:54:40,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:54:40,865.865 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:54:41,074.074 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:54:41,095.095 INFO    ] time= 27/06/2026 15:54:41
[2026-06-27 15:54:41,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:54:41,098.098 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:54:41,165.165 INFO    ] No existing commands found in stream
[2026-06-27 15:54:46,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:54:46,188.188 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-27 15:54:49,736.736 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 15:54:49,737.737 INFO    ] Checking for system updates...
[2026-06-27 15:54:49,758.758 INFO    ] 200
[2026-06-27 15:54:49,760.760 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:54:49,793.793 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:54:49,794.794 INFO    ] No update needed
[2026-06-27 15:54:49,796.796 INFO    ] Checking for camera pi updates...
[2026-06-27 15:54:49,818.818 INFO    ] 200
[2026-06-27 15:54:49,820.820 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:54:49,845.845 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:54:49,893.893 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:54:49,894.894 INFO    ] No camera update needed
[2026-06-27 15:54:49,896.896 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:54:49,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:54:49,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:54:49,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:54:51,945.945 INFO    ] ================================================
[2026-06-27 15:54:51,960.960 INFO    ] Launching Daemon at Sat Jun 27 15:54:51 IST 2026
[2026-06-27 15:54:51,971.971 INFO    ] ================================================
[2026-06-27 15:54:52,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:54:52
[2026-06-27 15:54:52,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:54:52,767.767 INFO    ] Initializing speech engine...
[2026-06-27 15:54:52,771.771 INFO    ] 2026-06-27 15:54:52
[2026-06-27 15:54:52,990.990 INFO    ] 2026-06-27 15:54:52
[2026-06-27 15:54:53,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:54:53,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:54:53,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:54:53,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:54:53,437.437 INFO    ] time= 27/06/2026 15:54:53
[2026-06-27 15:54:53,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:54:53,441.441 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:54:53,508.508 INFO    ] No existing commands found in stream
[2026-06-27 15:54:58,517.517 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:54:58,519.519 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-27 15:55:01,303.303 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 15:55:01,305.305 INFO    ] Checking for system updates...
[2026-06-27 15:55:01,325.325 INFO    ] 200
[2026-06-27 15:55:01,327.327 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:55:01,360.360 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:55:01,361.361 INFO    ] No update needed
[2026-06-27 15:55:01,362.362 INFO    ] Checking for camera pi updates...
[2026-06-27 15:55:01,382.382 INFO    ] 200
[2026-06-27 15:55:01,388.388 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:55:01,437.437 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:55:01,549.549 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:55:01,551.551 INFO    ] No camera update needed
[2026-06-27 15:55:01,565.565 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:55:01,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:55:01,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:55:01,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:55:03,631.631 INFO    ] ================================================
[2026-06-27 15:55:03,646.646 INFO    ] Launching Daemon at Sat Jun 27 15:55:03 IST 2026
[2026-06-27 15:55:03,657.657 INFO    ] ================================================
[2026-06-27 15:55:04,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:55:04
[2026-06-27 15:55:04,320.320 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:55:04,453.453 INFO    ] Initializing speech engine...
[2026-06-27 15:55:04,466.466 INFO    ] 2026-06-27 15:55:04
[2026-06-27 15:55:04,672.672 INFO    ] 2026-06-27 15:55:04
[2026-06-27 15:55:04,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:55:04,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:55:04,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:55:05,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:55:05,111.111 INFO    ] time= 27/06/2026 15:55:05
[2026-06-27 15:55:05,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:55:05,118.118 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:55:05,185.185 INFO    ] No existing commands found in stream
[2026-06-27 15:55:10,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:55:10,211.211 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-27 15:55:12,999.999 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:55:13,001.001 INFO    ] Checking for system updates...
[2026-06-27 15:55:13,022.022 INFO    ] 200
[2026-06-27 15:55:13,023.023 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:55:13,059.059 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:55:13,061.061 INFO    ] No update needed
[2026-06-27 15:55:13,062.062 INFO    ] Checking for camera pi updates...
[2026-06-27 15:55:13,082.082 INFO    ] 200
[2026-06-27 15:55:13,083.083 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:55:13,107.107 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:55:13,149.149 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:55:13,150.150 INFO    ] No camera update needed
[2026-06-27 15:55:13,152.152 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:55:13,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:55:13,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:55:13,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:55:15,199.199 INFO    ] ================================================
[2026-06-27 15:55:15,215.215 INFO    ] Launching Daemon at Sat Jun 27 15:55:15 IST 2026
[2026-06-27 15:55:15,226.226 INFO    ] ================================================
[2026-06-27 15:55:15,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:55:15
[2026-06-27 15:55:15,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:55:16,077.077 INFO    ] Initializing speech engine...
[2026-06-27 15:55:16,082.082 INFO    ] 2026-06-27 15:55:16
[2026-06-27 15:55:16,290.290 INFO    ] 2026-06-27 15:55:16
[2026-06-27 15:55:16,319.319 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:55:16,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:55:16,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:55:16,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:55:16,730.730 INFO    ] time= 27/06/2026 15:55:16
[2026-06-27 15:55:16,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:55:16,737.737 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:55:16,803.803 INFO    ] No existing commands found in stream
[2026-06-27 15:55:21,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:55:21,816.816 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-27 15:55:24,360.360 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 15:55:24,362.362 INFO    ] Checking for system updates...
[2026-06-27 15:55:24,384.384 INFO    ] 200
[2026-06-27 15:55:24,386.386 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:55:24,420.420 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:55:24,421.421 INFO    ] No update needed
[2026-06-27 15:55:24,423.423 INFO    ] Checking for camera pi updates...
[2026-06-27 15:55:24,443.443 INFO    ] 200
[2026-06-27 15:55:24,444.444 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:55:24,468.468 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:55:24,511.511 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:55:24,513.513 INFO    ] No camera update needed
[2026-06-27 15:55:24,514.514 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:55:24,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:55:24,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:55:24,522.522 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:55:26,562.562 INFO    ] ================================================
[2026-06-27 15:55:26,577.577 INFO    ] Launching Daemon at Sat Jun 27 15:55:26 IST 2026
[2026-06-27 15:55:26,588.588 INFO    ] ================================================
[2026-06-27 15:55:26,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:55:26
[2026-06-27 15:55:27,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:55:27,386.386 INFO    ] Initializing speech engine...
[2026-06-27 15:55:27,393.393 INFO    ] 2026-06-27 15:55:27
[2026-06-27 15:55:27,619.619 INFO    ] 2026-06-27 15:55:27
[2026-06-27 15:55:27,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:55:27,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:55:27,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:55:28,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:55:28,098.098 INFO    ] time= 27/06/2026 15:55:28
[2026-06-27 15:55:28,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:55:28,106.106 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:55:28,179.179 INFO    ] No existing commands found in stream
[2026-06-27 15:55:33,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:55:33,196.196 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-27 15:55:34,146.146 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 15:55:34,148.148 INFO    ] Checking for system updates...
[2026-06-27 15:55:34,168.168 INFO    ] 200
[2026-06-27 15:55:34,170.170 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:55:34,200.200 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:55:34,202.202 INFO    ] No update needed
[2026-06-27 15:55:34,203.203 INFO    ] Checking for camera pi updates...
[2026-06-27 15:55:34,226.226 INFO    ] 200
[2026-06-27 15:55:34,228.228 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:55:34,251.251 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:55:34,394.394 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:55:34,396.396 INFO    ] No camera update needed
[2026-06-27 15:55:34,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:55:34,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:55:34,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:55:34,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:55:36,449.449 INFO    ] ================================================
[2026-06-27 15:55:36,465.465 INFO    ] Launching Daemon at Sat Jun 27 15:55:36 IST 2026
[2026-06-27 15:55:36,477.477 INFO    ] ================================================
[2026-06-27 15:55:36,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:55:36
[2026-06-27 15:55:37,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:55:37,290.290 INFO    ] Initializing speech engine...
[2026-06-27 15:55:37,303.303 INFO    ] 2026-06-27 15:55:37
[2026-06-27 15:55:37,524.524 INFO    ] 2026-06-27 15:55:37
[2026-06-27 15:55:37,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:55:37,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:55:37,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:55:37,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:55:37,992.992 INFO    ] time= 27/06/2026 15:55:37
[2026-06-27 15:55:38,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:55:38,078.078 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:55:38,220.220 INFO    ] No existing commands found in stream
[2026-06-27 15:55:43,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:55:43,234.234 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-27 15:55:44,074.074 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 15:55:44,076.076 INFO    ] Checking for system updates...
[2026-06-27 15:55:44,098.098 INFO    ] 200
[2026-06-27 15:55:44,100.100 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:55:44,134.134 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:55:44,136.136 INFO    ] No update needed
[2026-06-27 15:55:44,137.137 INFO    ] Checking for camera pi updates...
[2026-06-27 15:55:44,157.157 INFO    ] 200
[2026-06-27 15:55:44,158.158 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:55:44,182.182 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:55:44,226.226 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:55:44,228.228 INFO    ] No camera update needed
[2026-06-27 15:55:44,229.229 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:55:44,230.230 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:55:44,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:55:44,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:55:46,276.276 INFO    ] ================================================
[2026-06-27 15:55:46,292.292 INFO    ] Launching Daemon at Sat Jun 27 15:55:46 IST 2026
[2026-06-27 15:55:46,303.303 INFO    ] ================================================
[2026-06-27 15:55:46,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:55:46
[2026-06-27 15:55:46,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:55:47,115.115 INFO    ] Initializing speech engine...
[2026-06-27 15:55:47,128.128 INFO    ] 2026-06-27 15:55:47
[2026-06-27 15:55:47,338.338 INFO    ] 2026-06-27 15:55:47
[2026-06-27 15:55:47,367.367 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:55:47,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:55:47,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:55:47,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:55:47,786.786 INFO    ] time= 27/06/2026 15:55:47
[2026-06-27 15:55:47,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:55:47,793.793 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:55:47,884.884 INFO    ] No existing commands found in stream
[2026-06-27 15:55:52,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:55:52,901.901 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-27 15:55:56,755.755 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:55:56,757.757 INFO    ] Checking for system updates...
[2026-06-27 15:55:56,778.778 INFO    ] 200
[2026-06-27 15:55:56,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:55:56,810.810 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:55:56,811.811 INFO    ] No update needed
[2026-06-27 15:55:56,813.813 INFO    ] Checking for camera pi updates...
[2026-06-27 15:55:56,833.833 INFO    ] 200
[2026-06-27 15:55:56,834.834 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:55:56,858.858 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:55:56,908.908 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:55:56,910.910 INFO    ] No camera update needed
[2026-06-27 15:55:56,911.911 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:55:56,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:55:56,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:55:56,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:55:58,960.960 INFO    ] ================================================
[2026-06-27 15:55:58,977.977 INFO    ] Launching Daemon at Sat Jun 27 15:55:58 IST 2026
[2026-06-27 15:55:58,988.988 INFO    ] ================================================
[2026-06-27 15:55:59,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:55:59
[2026-06-27 15:55:59,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:55:59,862.862 INFO    ] Initializing speech engine...
[2026-06-27 15:55:59,875.875 INFO    ] 2026-06-27 15:55:59
[2026-06-27 15:56:00,087.087 INFO    ] 2026-06-27 15:56:00
[2026-06-27 15:56:00,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:56:00,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:56:00,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:56:00,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:56:00,507.507 INFO    ] time= 27/06/2026 15:56:00
[2026-06-27 15:56:00,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:56:00,538.538 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:56:00,606.606 INFO    ] No existing commands found in stream
[2026-06-27 15:56:05,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:56:05,623.623 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-27 15:56:06,997.997 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:56:06,998.998 INFO    ] Checking for system updates...
[2026-06-27 15:56:07,020.020 INFO    ] 200
[2026-06-27 15:56:07,021.021 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:56:07,053.053 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:56:07,054.054 INFO    ] No update needed
[2026-06-27 15:56:07,056.056 INFO    ] Checking for camera pi updates...
[2026-06-27 15:56:07,076.076 INFO    ] 200
[2026-06-27 15:56:07,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:56:07,101.101 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:56:07,155.155 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:56:07,157.157 INFO    ] No camera update needed
[2026-06-27 15:56:07,158.158 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:56:07,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:56:07,163.163 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:56:07,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:56:09,206.206 INFO    ] ================================================
[2026-06-27 15:56:09,223.223 INFO    ] Launching Daemon at Sat Jun 27 15:56:09 IST 2026
[2026-06-27 15:56:09,234.234 INFO    ] ================================================
[2026-06-27 15:56:09,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:56:09
[2026-06-27 15:56:09,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:56:10,002.002 INFO    ] Initializing speech engine...
[2026-06-27 15:56:10,007.007 INFO    ] 2026-06-27 15:56:10
[2026-06-27 15:56:10,225.225 INFO    ] 2026-06-27 15:56:10
[2026-06-27 15:56:10,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:56:10,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:56:10,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:56:10,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:56:10,854.854 INFO    ] time= 27/06/2026 15:56:10
[2026-06-27 15:56:10,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:56:10,861.861 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:56:11,076.076 INFO    ] No existing commands found in stream
[2026-06-27 15:56:16,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:56:16,088.088 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-27 15:56:17,769.769 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:56:17,770.770 INFO    ] Checking for system updates...
[2026-06-27 15:56:17,791.791 INFO    ] 200
[2026-06-27 15:56:17,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:56:17,824.824 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:56:17,826.826 INFO    ] No update needed
[2026-06-27 15:56:17,827.827 INFO    ] Checking for camera pi updates...
[2026-06-27 15:56:17,849.849 INFO    ] 200
[2026-06-27 15:56:17,850.850 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:56:17,876.876 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:56:17,929.929 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:56:17,930.930 INFO    ] No camera update needed
[2026-06-27 15:56:17,931.931 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:56:17,933.933 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:56:17,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:56:17,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:56:19,979.979 INFO    ] ================================================
[2026-06-27 15:56:20,995.995 INFO    ] Launching Daemon at Sat Jun 27 15:56:19 IST 2026
[2026-06-27 15:56:20,005.005 INFO    ] ================================================
[2026-06-27 15:56:20,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:56:20
[2026-06-27 15:56:20,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:56:20,879.879 INFO    ] Initializing speech engine...
[2026-06-27 15:56:20,885.885 INFO    ] 2026-06-27 15:56:20
[2026-06-27 15:56:21,095.095 INFO    ] 2026-06-27 15:56:21
[2026-06-27 15:56:21,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:56:21,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:56:21,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:56:21,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:56:21,660.660 INFO    ] time= 27/06/2026 15:56:21
[2026-06-27 15:56:21,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:56:21,666.666 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:56:21,770.770 INFO    ] No existing commands found in stream
[2026-06-27 15:56:26,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:56:26,784.784 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-27 15:56:29,151.151 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:56:29,153.153 INFO    ] Checking for system updates...
[2026-06-27 15:56:29,175.175 INFO    ] 200
[2026-06-27 15:56:29,176.176 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:56:29,208.208 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:56:29,209.209 INFO    ] No update needed
[2026-06-27 15:56:29,211.211 INFO    ] Checking for camera pi updates...
[2026-06-27 15:56:29,230.230 INFO    ] 200
[2026-06-27 15:56:29,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:56:29,257.257 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:56:29,300.300 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:56:29,301.301 INFO    ] No camera update needed
[2026-06-27 15:56:29,303.303 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:56:29,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:56:29,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:56:29,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:56:31,350.350 INFO    ] ================================================
[2026-06-27 15:56:31,366.366 INFO    ] Launching Daemon at Sat Jun 27 15:56:31 IST 2026
[2026-06-27 15:56:31,377.377 INFO    ] ================================================
[2026-06-27 15:56:31,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:56:31
[2026-06-27 15:56:32,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:56:32,251.251 INFO    ] Initializing speech engine...
[2026-06-27 15:56:32,257.257 INFO    ] 2026-06-27 15:56:32
[2026-06-27 15:56:32,484.484 INFO    ] 2026-06-27 15:56:32
[2026-06-27 15:56:32,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:56:32,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:56:32,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:56:32,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:56:32,936.936 INFO    ] time= 27/06/2026 15:56:32
[2026-06-27 15:56:32,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:56:33,008.008 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:56:33,131.131 INFO    ] No existing commands found in stream
[2026-06-27 15:56:38,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:56:38,145.145 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-27 15:56:41,199.199 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:56:41,201.201 INFO    ] Checking for system updates...
[2026-06-27 15:56:41,223.223 INFO    ] 200
[2026-06-27 15:56:41,225.225 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:56:41,255.255 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:56:41,257.257 INFO    ] No update needed
[2026-06-27 15:56:41,258.258 INFO    ] Checking for camera pi updates...
[2026-06-27 15:56:41,278.278 INFO    ] 200
[2026-06-27 15:56:41,280.280 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:56:41,303.303 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:56:41,343.343 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:56:41,344.344 INFO    ] No camera update needed
[2026-06-27 15:56:41,346.346 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:56:41,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:56:41,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:56:41,353.353 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:56:43,393.393 INFO    ] ================================================
[2026-06-27 15:56:43,409.409 INFO    ] Launching Daemon at Sat Jun 27 15:56:43 IST 2026
[2026-06-27 15:56:43,420.420 INFO    ] ================================================
[2026-06-27 15:56:43,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:56:43
[2026-06-27 15:56:44,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:56:44,226.226 INFO    ] Initializing speech engine...
[2026-06-27 15:56:44,238.238 INFO    ] 2026-06-27 15:56:44
[2026-06-27 15:56:44,446.446 INFO    ] 2026-06-27 15:56:44
[2026-06-27 15:56:44,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:56:44,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:56:44,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:56:44,817.817 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:56:44,865.865 INFO    ] time= 27/06/2026 15:56:44
[2026-06-27 15:56:44,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:56:44,893.893 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:56:44,982.982 INFO    ] No existing commands found in stream
[2026-06-27 15:56:49,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:56:49,994.994 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-27 15:56:52,346.346 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 15:56:52,347.347 INFO    ] Checking for system updates...
[2026-06-27 15:56:52,368.368 INFO    ] 200
[2026-06-27 15:56:52,370.370 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:56:52,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:56:52,401.401 INFO    ] No update needed
[2026-06-27 15:56:52,403.403 INFO    ] Checking for camera pi updates...
[2026-06-27 15:56:52,423.423 INFO    ] 200
[2026-06-27 15:56:52,425.425 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:56:52,449.449 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:56:52,495.495 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:56:52,497.497 INFO    ] No camera update needed
[2026-06-27 15:56:52,498.498 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:56:52,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:56:52,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:56:52,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:56:54,546.546 INFO    ] ================================================
[2026-06-27 15:56:54,562.562 INFO    ] Launching Daemon at Sat Jun 27 15:56:54 IST 2026
[2026-06-27 15:56:54,572.572 INFO    ] ================================================
[2026-06-27 15:56:54,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:56:54
[2026-06-27 15:56:55,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:56:55,413.413 INFO    ] Initializing speech engine...
[2026-06-27 15:56:55,422.422 INFO    ] 2026-06-27 15:56:55
[2026-06-27 15:56:55,628.628 INFO    ] 2026-06-27 15:56:55
[2026-06-27 15:56:55,657.657 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:56:55,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:56:55,997.997 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:56:56,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:56:56,284.284 INFO    ] time= 27/06/2026 15:56:56
[2026-06-27 15:56:56,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:56:56,291.291 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:56:56,441.441 INFO    ] No existing commands found in stream
[2026-06-27 15:57:01,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:57:01,454.454 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-27 15:57:05,376.376 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 15:57:05,378.378 INFO    ] Checking for system updates...
[2026-06-27 15:57:05,399.399 INFO    ] 200
[2026-06-27 15:57:05,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:57:05,432.432 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:57:05,434.434 INFO    ] No update needed
[2026-06-27 15:57:05,435.435 INFO    ] Checking for camera pi updates...
[2026-06-27 15:57:05,454.454 INFO    ] 200
[2026-06-27 15:57:05,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:57:05,479.479 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:57:05,521.521 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:57:05,522.522 INFO    ] No camera update needed
[2026-06-27 15:57:05,523.523 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:57:05,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:57:05,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:57:05,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:57:07,569.569 INFO    ] ================================================
[2026-06-27 15:57:07,585.585 INFO    ] Launching Daemon at Sat Jun 27 15:57:07 IST 2026
[2026-06-27 15:57:07,596.596 INFO    ] ================================================
[2026-06-27 15:57:07,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:57:07
[2026-06-27 15:57:08,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:57:08,413.413 INFO    ] Initializing speech engine...
[2026-06-27 15:57:08,427.427 INFO    ] 2026-06-27 15:57:08
[2026-06-27 15:57:08,636.636 INFO    ] 2026-06-27 15:57:08
[2026-06-27 15:57:08,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:57:08,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:57:08,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:57:09,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:57:09,056.056 INFO    ] time= 27/06/2026 15:57:09
[2026-06-27 15:57:09,080.080 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:57:09,086.086 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:57:09,178.178 INFO    ] No existing commands found in stream
[2026-06-27 15:57:14,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:57:14,195.195 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-27 15:57:16,055.055 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 15:57:16,057.057 INFO    ] Checking for system updates...
[2026-06-27 15:57:16,078.078 INFO    ] 200
[2026-06-27 15:57:16,079.079 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:57:16,109.109 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:57:16,111.111 INFO    ] No update needed
[2026-06-27 15:57:16,112.112 INFO    ] Checking for camera pi updates...
[2026-06-27 15:57:16,132.132 INFO    ] 200
[2026-06-27 15:57:16,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:57:16,157.157 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:57:16,206.206 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:57:16,207.207 INFO    ] No camera update needed
[2026-06-27 15:57:16,208.208 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:57:16,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:57:16,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:57:16,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:57:18,256.256 INFO    ] ================================================
[2026-06-27 15:57:18,271.271 INFO    ] Launching Daemon at Sat Jun 27 15:57:18 IST 2026
[2026-06-27 15:57:18,282.282 INFO    ] ================================================
[2026-06-27 15:57:18,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:57:18
[2026-06-27 15:57:18,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:57:19,074.074 INFO    ] Initializing speech engine...
[2026-06-27 15:57:19,083.083 INFO    ] 2026-06-27 15:57:19
[2026-06-27 15:57:19,294.294 INFO    ] 2026-06-27 15:57:19
[2026-06-27 15:57:19,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:57:19,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:57:19,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:57:19,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:57:19,726.726 INFO    ] time= 27/06/2026 15:57:19
[2026-06-27 15:57:19,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:57:19,742.742 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:57:19,809.809 INFO    ] No existing commands found in stream
[2026-06-27 15:57:24,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:57:24,836.836 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-27 15:57:28,950.950 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:57:28,952.952 INFO    ] Checking for system updates...
[2026-06-27 15:57:28,972.972 INFO    ] 200
[2026-06-27 15:57:28,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:57:29,004.004 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:57:29,006.006 INFO    ] No update needed
[2026-06-27 15:57:29,007.007 INFO    ] Checking for camera pi updates...
[2026-06-27 15:57:29,026.026 INFO    ] 200
[2026-06-27 15:57:29,028.028 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:57:29,053.053 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:57:29,105.105 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:57:29,106.106 INFO    ] No camera update needed
[2026-06-27 15:57:29,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:57:29,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:57:29,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:57:29,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:57:31,153.153 INFO    ] ================================================
[2026-06-27 15:57:31,168.168 INFO    ] Launching Daemon at Sat Jun 27 15:57:31 IST 2026
[2026-06-27 15:57:31,178.178 INFO    ] ================================================
[2026-06-27 15:57:31,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:57:31
[2026-06-27 15:57:31,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:57:31,990.990 INFO    ] Initializing speech engine...
[2026-06-27 15:57:31,995.995 INFO    ] 2026-06-27 15:57:31
[2026-06-27 15:57:32,235.235 INFO    ] 2026-06-27 15:57:32
[2026-06-27 15:57:32,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:57:32,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:57:32,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:57:32,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:57:32,697.697 INFO    ] time= 27/06/2026 15:57:32
[2026-06-27 15:57:32,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:57:32,727.727 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:57:32,794.794 INFO    ] No existing commands found in stream
[2026-06-27 15:57:37,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:57:37,811.811 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-27 15:57:42,089.089 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 15:57:42,090.090 INFO    ] Checking for system updates...
[2026-06-27 15:57:42,113.113 INFO    ] 200
[2026-06-27 15:57:42,115.115 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:57:42,146.146 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:57:42,147.147 INFO    ] No update needed
[2026-06-27 15:57:42,149.149 INFO    ] Checking for camera pi updates...
[2026-06-27 15:57:42,169.169 INFO    ] 200
[2026-06-27 15:57:42,170.170 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:57:42,194.194 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:57:42,334.334 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:57:42,336.336 INFO    ] No camera update needed
[2026-06-27 15:57:42,337.337 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:57:42,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:57:42,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:57:42,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:57:44,383.383 INFO    ] ================================================
[2026-06-27 15:57:44,400.400 INFO    ] Launching Daemon at Sat Jun 27 15:57:44 IST 2026
[2026-06-27 15:57:44,412.412 INFO    ] ================================================
[2026-06-27 15:57:44,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:57:44
[2026-06-27 15:57:45,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:57:45,197.197 INFO    ] Initializing speech engine...
[2026-06-27 15:57:45,201.201 INFO    ] 2026-06-27 15:57:45
[2026-06-27 15:57:45,390.390 INFO    ] 2026-06-27 15:57:45
[2026-06-27 15:57:45,434.434 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:57:45,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:57:45,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:57:45,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:57:45,798.798 INFO    ] time= 27/06/2026 15:57:45
[2026-06-27 15:57:45,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:57:45,901.901 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:57:46,002.002 INFO    ] No existing commands found in stream
[2026-06-27 15:57:51,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:57:51,014.014 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-27 15:57:51,779.779 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 15:57:51,780.780 INFO    ] Checking for system updates...
[2026-06-27 15:57:51,801.801 INFO    ] 200
[2026-06-27 15:57:51,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:57:51,832.832 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:57:51,834.834 INFO    ] No update needed
[2026-06-27 15:57:51,835.835 INFO    ] Checking for camera pi updates...
[2026-06-27 15:57:51,857.857 INFO    ] 200
[2026-06-27 15:57:51,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:57:51,885.885 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:57:51,926.926 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:57:51,927.927 INFO    ] No camera update needed
[2026-06-27 15:57:51,929.929 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:57:51,930.930 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:57:51,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:57:51,936.936 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:57:53,974.974 INFO    ] ================================================
[2026-06-27 15:57:53,990.990 INFO    ] Launching Daemon at Sat Jun 27 15:57:53 IST 2026
[2026-06-27 15:57:54,000.000 INFO    ] ================================================
[2026-06-27 15:57:54,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:57:54
[2026-06-27 15:57:54,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:57:54,790.790 INFO    ] Initializing speech engine...
[2026-06-27 15:57:54,800.800 INFO    ] 2026-06-27 15:57:54
[2026-06-27 15:57:55,005.005 INFO    ] 2026-06-27 15:57:54
[2026-06-27 15:57:55,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:57:55,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:57:55,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:57:55,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:57:55,447.447 INFO    ] time= 27/06/2026 15:57:55
[2026-06-27 15:57:55,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:57:55,451.451 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:57:55,540.540 INFO    ] No existing commands found in stream
[2026-06-27 15:58:00,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:58:00,552.552 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-27 15:58:02,904.904 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 15:58:02,905.905 INFO    ] Checking for system updates...
[2026-06-27 15:58:02,926.926 INFO    ] 200
[2026-06-27 15:58:02,927.927 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:58:02,959.959 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:58:02,961.961 INFO    ] No update needed
[2026-06-27 15:58:02,962.962 INFO    ] Checking for camera pi updates...
[2026-06-27 15:58:02,982.982 INFO    ] 200
[2026-06-27 15:58:02,983.983 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:58:03,009.009 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:58:03,064.064 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:58:03,065.065 INFO    ] No camera update needed
[2026-06-27 15:58:03,067.067 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:58:03,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:58:03,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:58:03,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:58:05,112.112 INFO    ] ================================================
[2026-06-27 15:58:05,128.128 INFO    ] Launching Daemon at Sat Jun 27 15:58:05 IST 2026
[2026-06-27 15:58:05,139.139 INFO    ] ================================================
[2026-06-27 15:58:05,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:58:05
[2026-06-27 15:58:05,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:58:05,940.940 INFO    ] Initializing speech engine...
[2026-06-27 15:58:05,949.949 INFO    ] 2026-06-27 15:58:05
[2026-06-27 15:58:06,154.154 INFO    ] 2026-06-27 15:58:06
[2026-06-27 15:58:06,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:58:06,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:58:06,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:58:06,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:58:06,571.571 INFO    ] time= 27/06/2026 15:58:06
[2026-06-27 15:58:06,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:58:06,604.604 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:58:06,671.671 INFO    ] No existing commands found in stream
[2026-06-27 15:58:11,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:58:11,689.689 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-27 15:58:14,359.359 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:58:14,361.361 INFO    ] Checking for system updates...
[2026-06-27 15:58:14,382.382 INFO    ] 200
[2026-06-27 15:58:14,384.384 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:58:14,415.415 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:58:14,416.416 INFO    ] No update needed
[2026-06-27 15:58:14,417.417 INFO    ] Checking for camera pi updates...
[2026-06-27 15:58:14,437.437 INFO    ] 200
[2026-06-27 15:58:14,438.438 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:58:14,461.461 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:58:14,504.504 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:58:14,505.505 INFO    ] No camera update needed
[2026-06-27 15:58:14,510.510 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:58:14,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:58:14,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:58:14,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:58:16,558.558 INFO    ] ================================================
[2026-06-27 15:58:16,573.573 INFO    ] Launching Daemon at Sat Jun 27 15:58:16 IST 2026
[2026-06-27 15:58:16,583.583 INFO    ] ================================================
[2026-06-27 15:58:16,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:58:16
[2026-06-27 15:58:17,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:58:17,371.371 INFO    ] Initializing speech engine...
[2026-06-27 15:58:17,377.377 INFO    ] 2026-06-27 15:58:17
[2026-06-27 15:58:17,582.582 INFO    ] 2026-06-27 15:58:17
[2026-06-27 15:58:17,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:58:17,822.822 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:58:17,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:58:18,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:58:18,025.025 INFO    ] time= 27/06/2026 15:58:18
[2026-06-27 15:58:18,027.027 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:58:18,028.028 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:58:18,143.143 INFO    ] No existing commands found in stream
[2026-06-27 15:58:23,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:58:23,156.156 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-27 15:58:26,343.343 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:58:26,345.345 INFO    ] Checking for system updates...
[2026-06-27 15:58:26,365.365 INFO    ] 200
[2026-06-27 15:58:26,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:58:26,398.398 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:58:26,399.399 INFO    ] No update needed
[2026-06-27 15:58:26,401.401 INFO    ] Checking for camera pi updates...
[2026-06-27 15:58:26,423.423 INFO    ] 200
[2026-06-27 15:58:26,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:58:26,448.448 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:58:26,500.500 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:58:26,501.501 INFO    ] No camera update needed
[2026-06-27 15:58:26,503.503 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:58:26,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:58:26,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:58:26,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:58:28,549.549 INFO    ] ================================================
[2026-06-27 15:58:28,564.564 INFO    ] Launching Daemon at Sat Jun 27 15:58:28 IST 2026
[2026-06-27 15:58:28,575.575 INFO    ] ================================================
[2026-06-27 15:58:28,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:58:28
[2026-06-27 15:58:29,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:58:29,362.362 INFO    ] Initializing speech engine...
[2026-06-27 15:58:29,371.371 INFO    ] 2026-06-27 15:58:29
[2026-06-27 15:58:29,585.585 INFO    ] 2026-06-27 15:58:29
[2026-06-27 15:58:29,617.617 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:58:29,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:58:29,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:58:29,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:58:30,008.008 INFO    ] time= 27/06/2026 15:58:29
[2026-06-27 15:58:30,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:58:30,036.036 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:58:30,104.104 INFO    ] No existing commands found in stream
[2026-06-27 15:58:35,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:58:35,116.116 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-27 15:58:36,854.854 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 15:58:36,855.855 INFO    ] Checking for system updates...
[2026-06-27 15:58:36,877.877 INFO    ] 200
[2026-06-27 15:58:36,878.878 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:58:36,909.909 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:58:36,910.910 INFO    ] No update needed
[2026-06-27 15:58:36,912.912 INFO    ] Checking for camera pi updates...
[2026-06-27 15:58:36,934.934 INFO    ] 200
[2026-06-27 15:58:36,936.936 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:58:36,959.959 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:58:37,009.009 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:58:37,010.010 INFO    ] No camera update needed
[2026-06-27 15:58:37,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:58:37,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:58:37,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:58:37,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:58:39,057.057 INFO    ] ================================================
[2026-06-27 15:58:39,072.072 INFO    ] Launching Daemon at Sat Jun 27 15:58:39 IST 2026
[2026-06-27 15:58:39,083.083 INFO    ] ================================================
[2026-06-27 15:58:39,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:58:39
[2026-06-27 15:58:39,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:58:39,886.886 INFO    ] Initializing speech engine...
[2026-06-27 15:58:39,892.892 INFO    ] 2026-06-27 15:58:39
[2026-06-27 15:58:40,096.096 INFO    ] 2026-06-27 15:58:40
[2026-06-27 15:58:40,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:58:40,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:58:40,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:58:40,494.494 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:58:40,534.534 INFO    ] time= 27/06/2026 15:58:40
[2026-06-27 15:58:40,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:58:40,545.545 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:58:40,613.613 INFO    ] No existing commands found in stream
[2026-06-27 15:58:45,622.622 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:58:45,625.625 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-27 15:58:47,903.903 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:58:47,905.905 INFO    ] Checking for system updates...
[2026-06-27 15:58:47,926.926 INFO    ] 200
[2026-06-27 15:58:47,927.927 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:58:47,958.958 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:58:47,960.960 INFO    ] No update needed
[2026-06-27 15:58:47,961.961 INFO    ] Checking for camera pi updates...
[2026-06-27 15:58:47,980.980 INFO    ] 200
[2026-06-27 15:58:47,982.982 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:58:48,005.005 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:58:48,059.059 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:58:48,060.060 INFO    ] No camera update needed
[2026-06-27 15:58:48,062.062 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:58:48,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:58:48,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:58:48,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:58:50,109.109 INFO    ] ================================================
[2026-06-27 15:58:50,124.124 INFO    ] Launching Daemon at Sat Jun 27 15:58:50 IST 2026
[2026-06-27 15:58:50,134.134 INFO    ] ================================================
[2026-06-27 15:58:50,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:58:50
[2026-06-27 15:58:50,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:58:50,941.941 INFO    ] Initializing speech engine...
[2026-06-27 15:58:50,946.946 INFO    ] 2026-06-27 15:58:50
[2026-06-27 15:58:51,149.149 INFO    ] 2026-06-27 15:58:51
[2026-06-27 15:58:51,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:58:51,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:58:51,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:58:51,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:58:51,708.708 INFO    ] time= 27/06/2026 15:58:51
[2026-06-27 15:58:51,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:58:51,713.713 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:58:51,825.825 INFO    ] No existing commands found in stream
[2026-06-27 15:58:56,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:58:56,838.838 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-27 15:58:57,676.676 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:58:57,677.677 INFO    ] Checking for system updates...
[2026-06-27 15:58:57,698.698 INFO    ] 200
[2026-06-27 15:58:57,700.700 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:58:57,734.734 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:58:57,735.735 INFO    ] No update needed
[2026-06-27 15:58:57,737.737 INFO    ] Checking for camera pi updates...
[2026-06-27 15:58:57,756.756 INFO    ] 200
[2026-06-27 15:58:57,757.757 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:58:57,781.781 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:58:57,828.828 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:58:57,830.830 INFO    ] No camera update needed
[2026-06-27 15:58:57,831.831 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:58:57,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:58:57,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:58:57,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:58:59,876.876 INFO    ] ================================================
[2026-06-27 15:58:59,891.891 INFO    ] Launching Daemon at Sat Jun 27 15:58:59 IST 2026
[2026-06-27 15:58:59,902.902 INFO    ] ================================================
[2026-06-27 15:59:00,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:59:00
[2026-06-27 15:59:00,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:59:00,700.700 INFO    ] Initializing speech engine...
[2026-06-27 15:59:00,708.708 INFO    ] 2026-06-27 15:59:00
[2026-06-27 15:59:00,916.916 INFO    ] 2026-06-27 15:59:00
[2026-06-27 15:59:00,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:59:01,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:59:01,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:59:01,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:59:01,349.349 INFO    ] time= 27/06/2026 15:59:01
[2026-06-27 15:59:01,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:59:01,357.357 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:59:01,446.446 INFO    ] No existing commands found in stream
[2026-06-27 15:59:06,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:59:06,458.458 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-27 15:59:07,449.449 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 15:59:07,450.450 INFO    ] Checking for system updates...
[2026-06-27 15:59:07,471.471 INFO    ] 200
[2026-06-27 15:59:07,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:59:07,504.504 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:59:07,506.506 INFO    ] No update needed
[2026-06-27 15:59:07,507.507 INFO    ] Checking for camera pi updates...
[2026-06-27 15:59:07,526.526 INFO    ] 200
[2026-06-27 15:59:07,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:59:07,551.551 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:59:07,605.605 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:59:07,606.606 INFO    ] No camera update needed
[2026-06-27 15:59:07,607.607 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:59:07,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:59:07,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:59:07,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:59:09,654.654 INFO    ] ================================================
[2026-06-27 15:59:09,669.669 INFO    ] Launching Daemon at Sat Jun 27 15:59:09 IST 2026
[2026-06-27 15:59:09,680.680 INFO    ] ================================================
[2026-06-27 15:59:10,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:59:10
[2026-06-27 15:59:10,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:59:10,510.510 INFO    ] Initializing speech engine...
[2026-06-27 15:59:10,513.513 INFO    ] 2026-06-27 15:59:10
[2026-06-27 15:59:10,731.731 INFO    ] 2026-06-27 15:59:10
[2026-06-27 15:59:10,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:59:10,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:59:10,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:59:11,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:59:11,173.173 INFO    ] time= 27/06/2026 15:59:11
[2026-06-27 15:59:11,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:59:11,176.176 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:59:11,244.244 INFO    ] No existing commands found in stream
[2026-06-27 15:59:16,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:59:16,260.260 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-27 15:59:18,196.196 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 15:59:18,197.197 INFO    ] Checking for system updates...
[2026-06-27 15:59:18,218.218 INFO    ] 200
[2026-06-27 15:59:18,219.219 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:59:18,249.249 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:59:18,250.250 INFO    ] No update needed
[2026-06-27 15:59:18,252.252 INFO    ] Checking for camera pi updates...
[2026-06-27 15:59:18,272.272 INFO    ] 200
[2026-06-27 15:59:18,273.273 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:59:18,300.300 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:59:18,352.352 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 15:59:18,354.354 INFO    ] No camera update needed
[2026-06-27 15:59:18,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:59:18,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:59:18,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:59:18,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:59:20,400.400 INFO    ] ================================================
[2026-06-27 15:59:20,415.415 INFO    ] Launching Daemon at Sat Jun 27 15:59:20 IST 2026
[2026-06-27 15:59:20,426.426 INFO    ] ================================================
[2026-06-27 15:59:20,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:59:20
[2026-06-27 15:59:21,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:59:21,208.208 INFO    ] Initializing speech engine...
[2026-06-27 15:59:21,213.213 INFO    ] 2026-06-27 15:59:21
[2026-06-27 15:59:21,441.441 INFO    ] 2026-06-27 15:59:21
[2026-06-27 15:59:21,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:59:21,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:59:21,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:59:21,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:59:21,859.859 INFO    ] time= 27/06/2026 15:59:21
[2026-06-27 15:59:21,903.903 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:59:21,915.915 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:59:21,990.990 INFO    ] No existing commands found in stream
[2026-06-27 15:59:26,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:59:27,002.002 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-27 15:59:28,769.769 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 15:59:28,770.770 INFO    ] Checking for system updates...
[2026-06-27 15:59:28,791.791 INFO    ] 200
[2026-06-27 15:59:28,792.792 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:59:28,824.824 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:59:28,826.826 INFO    ] No update needed
[2026-06-27 15:59:28,827.827 INFO    ] Checking for camera pi updates...
[2026-06-27 15:59:28,847.847 INFO    ] 200
[2026-06-27 15:59:28,849.849 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:59:28,872.872 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:59:28,918.918 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:59:28,919.919 INFO    ] No camera update needed
[2026-06-27 15:59:28,920.920 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:59:28,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:59:28,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:59:28,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:59:30,967.967 INFO    ] ================================================
[2026-06-27 15:59:30,982.982 INFO    ] Launching Daemon at Sat Jun 27 15:59:30 IST 2026
[2026-06-27 15:59:30,992.992 INFO    ] ================================================
[2026-06-27 15:59:31,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:59:31
[2026-06-27 15:59:31,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:59:31,848.848 INFO    ] Initializing speech engine...
[2026-06-27 15:59:31,860.860 INFO    ] 2026-06-27 15:59:31
[2026-06-27 15:59:32,083.083 INFO    ] 2026-06-27 15:59:32
[2026-06-27 15:59:32,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:59:32,303.303 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:59:32,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:59:32,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:59:32,536.536 INFO    ] time= 27/06/2026 15:59:32
[2026-06-27 15:59:32,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:59:32,539.539 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:59:32,630.630 INFO    ] No existing commands found in stream
[2026-06-27 15:59:37,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:59:37,643.643 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-27 15:59:38,956.956 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 15:59:38,958.958 INFO    ] Checking for system updates...
[2026-06-27 15:59:38,979.979 INFO    ] 200
[2026-06-27 15:59:38,981.981 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:59:39,014.014 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:59:39,015.015 INFO    ] No update needed
[2026-06-27 15:59:39,017.017 INFO    ] Checking for camera pi updates...
[2026-06-27 15:59:39,036.036 INFO    ] 200
[2026-06-27 15:59:39,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:59:39,061.061 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:59:39,109.109 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:59:39,110.110 INFO    ] No camera update needed
[2026-06-27 15:59:39,112.112 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:59:39,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:59:39,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:59:39,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:59:41,160.160 INFO    ] ================================================
[2026-06-27 15:59:41,175.175 INFO    ] Launching Daemon at Sat Jun 27 15:59:41 IST 2026
[2026-06-27 15:59:41,187.187 INFO    ] ================================================
[2026-06-27 15:59:41,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:59:41
[2026-06-27 15:59:41,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:59:41,956.956 INFO    ] Initializing speech engine...
[2026-06-27 15:59:41,961.961 INFO    ] 2026-06-27 15:59:41
[2026-06-27 15:59:42,179.179 INFO    ] 2026-06-27 15:59:42
[2026-06-27 15:59:42,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:59:42,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:59:42,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:59:42,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:59:42,627.627 INFO    ] time= 27/06/2026 15:59:42
[2026-06-27 15:59:42,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:59:42,631.631 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:59:42,698.698 INFO    ] No existing commands found in stream
[2026-06-27 15:59:47,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:59:47,710.710 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-27 15:59:50,889.889 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 15:59:50,891.891 INFO    ] Checking for system updates...
[2026-06-27 15:59:50,912.912 INFO    ] 200
[2026-06-27 15:59:50,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:59:50,945.945 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:59:50,946.946 INFO    ] No update needed
[2026-06-27 15:59:50,947.947 INFO    ] Checking for camera pi updates...
[2026-06-27 15:59:50,968.968 INFO    ] 200
[2026-06-27 15:59:50,969.969 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 15:59:50,995.995 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 15:59:51,144.144 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 15:59:51,146.146 INFO    ] No camera update needed
[2026-06-27 15:59:51,147.147 INFO    ] Script finished. Safe exiting...
[2026-06-27 15:59:51,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 15:59:51,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 15:59:51,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 15:59:53,195.195 INFO    ] ================================================
[2026-06-27 15:59:53,210.210 INFO    ] Launching Daemon at Sat Jun 27 15:59:53 IST 2026
[2026-06-27 15:59:53,220.220 INFO    ] ================================================
[2026-06-27 15:59:53,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 15:59:53
[2026-06-27 15:59:53,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 15:59:53,990.990 INFO    ] Initializing speech engine...
[2026-06-27 15:59:54,002.002 INFO    ] 2026-06-27 15:59:53
[2026-06-27 15:59:54,212.212 INFO    ] 2026-06-27 15:59:54
[2026-06-27 15:59:54,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 15:59:54,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 15:59:54,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 15:59:54,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 15:59:54,658.658 INFO    ] time= 27/06/2026 15:59:54
[2026-06-27 15:59:54,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 15:59:54,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-27 15:59:54,757.757 INFO    ] No existing commands found in stream
[2026-06-27 15:59:59,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 15:59:59,774.774 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-27 16:00:00,921.921 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 16:00:00,922.922 INFO    ] Checking for system updates...
[2026-06-27 16:00:00,944.944 INFO    ] 200
[2026-06-27 16:00:00,945.945 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:00:00,977.977 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:00:00,978.978 INFO    ] No update needed
[2026-06-27 16:00:00,979.979 INFO    ] Checking for camera pi updates...
[2026-06-27 16:00:00,999.999 INFO    ] 200
[2026-06-27 16:00:01,000.000 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:00:01,023.023 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:00:01,091.091 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:00:01,092.092 INFO    ] No camera update needed
[2026-06-27 16:00:01,093.093 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:00:01,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:00:01,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:00:01,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:00:03,158.158 INFO    ] ================================================
[2026-06-27 16:00:03,205.205 INFO    ] Launching Daemon at Sat Jun 27 16:00:03 IST 2026
[2026-06-27 16:00:03,256.256 INFO    ] ================================================
[2026-06-27 16:00:04,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:00:04
[2026-06-27 16:00:04,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:00:04,826.826 INFO    ] Initializing speech engine...
[2026-06-27 16:00:04,831.831 INFO    ] 2026-06-27 16:00:04
[2026-06-27 16:00:05,037.037 INFO    ] 2026-06-27 16:00:05
[2026-06-27 16:00:05,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:00:05,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:00:05,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:00:05,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:00:05,479.479 INFO    ] time= 27/06/2026 16:00:05
[2026-06-27 16:00:05,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:00:05,487.487 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:00:05,554.554 INFO    ] No existing commands found in stream
[2026-06-27 16:00:10,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:00:10,581.581 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-27 16:00:12,109.109 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:00:12,111.111 INFO    ] Checking for system updates...
[2026-06-27 16:00:12,131.131 INFO    ] 200
[2026-06-27 16:00:12,133.133 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:00:12,163.163 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:00:12,165.165 INFO    ] No update needed
[2026-06-27 16:00:12,167.167 INFO    ] Checking for camera pi updates...
[2026-06-27 16:00:12,187.187 INFO    ] 200
[2026-06-27 16:00:12,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:00:12,212.212 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:00:12,242.242 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:00:12,243.243 INFO    ] No camera update needed
[2026-06-27 16:00:12,244.244 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:00:12,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:00:12,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:00:12,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:00:14,292.292 INFO    ] ================================================
[2026-06-27 16:00:14,307.307 INFO    ] Launching Daemon at Sat Jun 27 16:00:14 IST 2026
[2026-06-27 16:00:14,319.319 INFO    ] ================================================
[2026-06-27 16:00:14,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:00:14
[2026-06-27 16:00:14,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:00:15,121.121 INFO    ] Initializing speech engine...
[2026-06-27 16:00:15,134.134 INFO    ] 2026-06-27 16:00:15
[2026-06-27 16:00:15,354.354 INFO    ] 2026-06-27 16:00:15
[2026-06-27 16:00:15,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:00:15,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:00:15,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:00:15,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:00:15,781.781 INFO    ] time= 27/06/2026 16:00:15
[2026-06-27 16:00:15,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:00:15,838.838 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:00:15,914.914 INFO    ] No existing commands found in stream
[2026-06-27 16:00:20,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:00:20,929.929 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-27 16:00:23,593.593 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 16:00:23,595.595 INFO    ] Checking for system updates...
[2026-06-27 16:00:23,615.615 INFO    ] 200
[2026-06-27 16:00:23,617.617 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:00:23,647.647 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:00:23,649.649 INFO    ] No update needed
[2026-06-27 16:00:23,650.650 INFO    ] Checking for camera pi updates...
[2026-06-27 16:00:23,673.673 INFO    ] 200
[2026-06-27 16:00:23,675.675 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:00:23,699.699 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:00:23,738.738 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:00:23,740.740 INFO    ] No camera update needed
[2026-06-27 16:00:23,741.741 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:00:23,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:00:23,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:00:23,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:00:25,787.787 INFO    ] ================================================
[2026-06-27 16:00:25,802.802 INFO    ] Launching Daemon at Sat Jun 27 16:00:25 IST 2026
[2026-06-27 16:00:25,813.813 INFO    ] ================================================
[2026-06-27 16:00:26,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:00:26
[2026-06-27 16:00:26,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:00:26,607.607 INFO    ] Initializing speech engine...
[2026-06-27 16:00:26,611.611 INFO    ] 2026-06-27 16:00:26
[2026-06-27 16:00:26,819.819 INFO    ] 2026-06-27 16:00:26
[2026-06-27 16:00:26,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:00:27,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:00:27,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:00:27,237.237 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:00:27,261.261 INFO    ] time= 27/06/2026 16:00:27
[2026-06-27 16:00:27,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:00:27,268.268 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:00:27,335.335 INFO    ] No existing commands found in stream
[2026-06-27 16:00:32,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:00:32,346.346 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-27 16:00:33,880.880 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 16:00:33,881.881 INFO    ] Checking for system updates...
[2026-06-27 16:00:33,902.902 INFO    ] 200
[2026-06-27 16:00:33,903.903 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:00:33,935.935 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:00:33,937.937 INFO    ] No update needed
[2026-06-27 16:00:33,938.938 INFO    ] Checking for camera pi updates...
[2026-06-27 16:00:33,957.957 INFO    ] 200
[2026-06-27 16:00:33,958.958 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:00:33,983.983 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:00:34,028.028 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:00:34,030.030 INFO    ] No camera update needed
[2026-06-27 16:00:34,031.031 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:00:34,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:00:34,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:00:34,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:00:36,077.077 INFO    ] ================================================
[2026-06-27 16:00:36,092.092 INFO    ] Launching Daemon at Sat Jun 27 16:00:36 IST 2026
[2026-06-27 16:00:36,102.102 INFO    ] ================================================
[2026-06-27 16:00:36,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:00:36
[2026-06-27 16:00:36,799.799 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:00:36,944.944 INFO    ] Initializing speech engine...
[2026-06-27 16:00:36,955.955 INFO    ] 2026-06-27 16:00:36
[2026-06-27 16:00:37,165.165 INFO    ] 2026-06-27 16:00:37
[2026-06-27 16:00:37,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:00:37,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:00:37,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:00:37,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:00:37,614.614 INFO    ] time= 27/06/2026 16:00:37
[2026-06-27 16:00:37,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:00:37,622.622 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:00:37,688.688 INFO    ] No existing commands found in stream
[2026-06-27 16:00:42,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:00:42,702.702 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-27 16:00:44,700.700 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 16:00:44,701.701 INFO    ] Checking for system updates...
[2026-06-27 16:00:44,722.722 INFO    ] 200
[2026-06-27 16:00:44,724.724 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:00:44,757.757 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:00:44,758.758 INFO    ] No update needed
[2026-06-27 16:00:44,760.760 INFO    ] Checking for camera pi updates...
[2026-06-27 16:00:44,780.780 INFO    ] 200
[2026-06-27 16:00:44,782.782 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:00:44,810.810 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:00:44,851.851 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:00:44,852.852 INFO    ] No camera update needed
[2026-06-27 16:00:44,854.854 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:00:44,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:00:44,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:00:44,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:00:46,900.900 INFO    ] ================================================
[2026-06-27 16:00:46,916.916 INFO    ] Launching Daemon at Sat Jun 27 16:00:46 IST 2026
[2026-06-27 16:00:46,927.927 INFO    ] ================================================
[2026-06-27 16:00:47,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:00:47
[2026-06-27 16:00:47,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:00:47,743.743 INFO    ] Initializing speech engine...
[2026-06-27 16:00:47,749.749 INFO    ] 2026-06-27 16:00:47
[2026-06-27 16:00:47,953.953 INFO    ] 2026-06-27 16:00:47
[2026-06-27 16:00:47,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:00:48,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:00:48,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:00:48,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:00:48,406.406 INFO    ] time= 27/06/2026 16:00:48
[2026-06-27 16:00:48,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:00:48,436.436 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:00:48,535.535 INFO    ] No existing commands found in stream
[2026-06-27 16:00:53,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:00:53,547.547 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-27 16:00:55,809.809 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:00:55,810.810 INFO    ] Checking for system updates...
[2026-06-27 16:00:55,831.831 INFO    ] 200
[2026-06-27 16:00:55,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:00:55,866.866 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:00:55,867.867 INFO    ] No update needed
[2026-06-27 16:00:55,868.868 INFO    ] Checking for camera pi updates...
[2026-06-27 16:00:55,888.888 INFO    ] 200
[2026-06-27 16:00:55,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:00:55,912.912 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:00:55,958.958 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:00:55,959.959 INFO    ] No camera update needed
[2026-06-27 16:00:55,960.960 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:00:55,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:00:55,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:00:55,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:00:58,007.007 INFO    ] ================================================
[2026-06-27 16:00:58,023.023 INFO    ] Launching Daemon at Sat Jun 27 16:00:58 IST 2026
[2026-06-27 16:00:58,034.034 INFO    ] ================================================
[2026-06-27 16:00:58,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:00:58
[2026-06-27 16:00:58,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:00:58,822.822 INFO    ] Initializing speech engine...
[2026-06-27 16:00:58,827.827 INFO    ] 2026-06-27 16:00:58
[2026-06-27 16:00:59,030.030 INFO    ] 2026-06-27 16:00:59
[2026-06-27 16:00:59,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:00:59,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:00:59,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:00:59,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:00:59,471.471 INFO    ] time= 27/06/2026 16:00:59
[2026-06-27 16:00:59,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:00:59,478.478 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:00:59,543.543 INFO    ] No existing commands found in stream
[2026-06-27 16:01:04,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:01:04,557.557 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-27 16:01:09,020.020 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:01:09,021.021 INFO    ] Checking for system updates...
[2026-06-27 16:01:09,043.043 INFO    ] 200
[2026-06-27 16:01:09,045.045 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:01:09,077.077 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:01:09,078.078 INFO    ] No update needed
[2026-06-27 16:01:09,080.080 INFO    ] Checking for camera pi updates...
[2026-06-27 16:01:09,099.099 INFO    ] 200
[2026-06-27 16:01:09,101.101 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:01:09,124.124 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:01:09,165.165 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:01:09,167.167 INFO    ] No camera update needed
[2026-06-27 16:01:09,168.168 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:01:09,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:01:09,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:01:09,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:01:11,216.216 INFO    ] ================================================
[2026-06-27 16:01:11,231.231 INFO    ] Launching Daemon at Sat Jun 27 16:01:11 IST 2026
[2026-06-27 16:01:11,243.243 INFO    ] ================================================
[2026-06-27 16:01:11,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:01:11
[2026-06-27 16:01:11,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:01:12,058.058 INFO    ] Initializing speech engine...
[2026-06-27 16:01:12,064.064 INFO    ] 2026-06-27 16:01:12
[2026-06-27 16:01:12,267.267 INFO    ] 2026-06-27 16:01:12
[2026-06-27 16:01:12,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:01:12,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:01:12,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:01:12,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:01:12,775.775 INFO    ] time= 27/06/2026 16:01:12
[2026-06-27 16:01:12,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:01:12,802.802 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:01:12,946.946 INFO    ] No existing commands found in stream
[2026-06-27 16:01:17,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:01:17,959.959 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-27 16:01:22,069.069 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:01:22,071.071 INFO    ] Checking for system updates...
[2026-06-27 16:01:22,093.093 INFO    ] 200
[2026-06-27 16:01:22,095.095 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:01:22,131.131 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:01:22,132.132 INFO    ] No update needed
[2026-06-27 16:01:22,134.134 INFO    ] Checking for camera pi updates...
[2026-06-27 16:01:22,156.156 INFO    ] 200
[2026-06-27 16:01:22,158.158 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:01:22,183.183 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:01:22,231.231 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:01:22,232.232 INFO    ] No camera update needed
[2026-06-27 16:01:22,234.234 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:01:22,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:01:22,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:01:22,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:01:24,282.282 INFO    ] ================================================
[2026-06-27 16:01:24,297.297 INFO    ] Launching Daemon at Sat Jun 27 16:01:24 IST 2026
[2026-06-27 16:01:24,308.308 INFO    ] ================================================
[2026-06-27 16:01:24,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:01:24
[2026-06-27 16:01:24,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:01:25,093.093 INFO    ] Initializing speech engine...
[2026-06-27 16:01:25,098.098 INFO    ] 2026-06-27 16:01:25
[2026-06-27 16:01:25,305.305 INFO    ] 2026-06-27 16:01:25
[2026-06-27 16:01:25,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:01:25,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:01:25,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:01:25,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:01:25,752.752 INFO    ] time= 27/06/2026 16:01:25
[2026-06-27 16:01:25,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:01:25,755.755 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:01:25,845.845 INFO    ] No existing commands found in stream
[2026-06-27 16:01:30,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:01:30,860.860 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-27 16:01:32,120.120 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 16:01:32,122.122 INFO    ] Checking for system updates...
[2026-06-27 16:01:32,149.149 INFO    ] 200
[2026-06-27 16:01:32,151.151 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:01:32,186.186 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:01:32,188.188 INFO    ] No update needed
[2026-06-27 16:01:32,189.189 INFO    ] Checking for camera pi updates...
[2026-06-27 16:01:32,213.213 INFO    ] 200
[2026-06-27 16:01:32,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:01:32,245.245 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:01:32,279.279 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:01:32,281.281 INFO    ] No camera update needed
[2026-06-27 16:01:32,282.282 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:01:32,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:01:32,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:01:32,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:01:34,330.330 INFO    ] ================================================
[2026-06-27 16:01:34,346.346 INFO    ] Launching Daemon at Sat Jun 27 16:01:34 IST 2026
[2026-06-27 16:01:34,358.358 INFO    ] ================================================
[2026-06-27 16:01:34,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:01:34
[2026-06-27 16:01:35,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:01:35,178.178 INFO    ] Initializing speech engine...
[2026-06-27 16:01:35,190.190 INFO    ] 2026-06-27 16:01:35
[2026-06-27 16:01:35,401.401 INFO    ] 2026-06-27 16:01:35
[2026-06-27 16:01:35,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:01:35,641.641 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:01:35,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:01:35,826.826 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:01:35,849.849 INFO    ] time= 27/06/2026 16:01:35
[2026-06-27 16:01:35,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:01:35,856.856 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:01:35,949.949 INFO    ] No existing commands found in stream
[2026-06-27 16:01:40,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:01:40,971.971 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-27 16:01:45,305.305 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:01:45,306.306 INFO    ] Checking for system updates...
[2026-06-27 16:01:45,327.327 INFO    ] 200
[2026-06-27 16:01:45,328.328 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:01:45,369.369 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:01:45,370.370 INFO    ] No update needed
[2026-06-27 16:01:45,372.372 INFO    ] Checking for camera pi updates...
[2026-06-27 16:01:45,393.393 INFO    ] 200
[2026-06-27 16:01:45,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:01:45,418.418 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:01:45,471.471 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:01:45,472.472 INFO    ] No camera update needed
[2026-06-27 16:01:45,474.474 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:01:45,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:01:45,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:01:45,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:01:47,521.521 INFO    ] ================================================
[2026-06-27 16:01:47,537.537 INFO    ] Launching Daemon at Sat Jun 27 16:01:47 IST 2026
[2026-06-27 16:01:47,548.548 INFO    ] ================================================
[2026-06-27 16:01:47,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:01:47
[2026-06-27 16:01:48,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:01:48,387.387 INFO    ] Initializing speech engine...
[2026-06-27 16:01:48,392.392 INFO    ] 2026-06-27 16:01:48
[2026-06-27 16:01:48,600.600 INFO    ] 2026-06-27 16:01:48
[2026-06-27 16:01:48,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:01:48,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:01:48,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:01:49,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:01:49,162.162 INFO    ] time= 27/06/2026 16:01:49
[2026-06-27 16:01:49,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:01:49,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:01:49,245.245 INFO    ] No existing commands found in stream
[2026-06-27 16:01:54,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:01:54,259.259 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-27 16:01:57,549.549 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 16:01:57,550.550 INFO    ] Checking for system updates...
[2026-06-27 16:01:57,572.572 INFO    ] 200
[2026-06-27 16:01:57,574.574 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:01:57,605.605 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:01:57,606.606 INFO    ] No update needed
[2026-06-27 16:01:57,608.608 INFO    ] Checking for camera pi updates...
[2026-06-27 16:01:57,627.627 INFO    ] 200
[2026-06-27 16:01:57,629.629 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:01:57,653.653 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:01:57,797.797 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:01:57,799.799 INFO    ] No camera update needed
[2026-06-27 16:01:57,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:01:57,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:01:57,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:01:57,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:01:59,855.855 INFO    ] ================================================
[2026-06-27 16:01:59,871.871 INFO    ] Launching Daemon at Sat Jun 27 16:01:59 IST 2026
[2026-06-27 16:01:59,881.881 INFO    ] ================================================
[2026-06-27 16:02:00,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:02:00
[2026-06-27 16:02:00,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:02:00,678.678 INFO    ] Initializing speech engine...
[2026-06-27 16:02:00,682.682 INFO    ] 2026-06-27 16:02:00
[2026-06-27 16:02:00,903.903 INFO    ] 2026-06-27 16:02:00
[2026-06-27 16:02:00,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:02:01,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:02:01,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:02:01,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:02:01,346.346 INFO    ] time= 27/06/2026 16:02:01
[2026-06-27 16:02:01,351.351 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:02:01,353.353 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:02:01,697.697 INFO    ] No existing commands found in stream
[2026-06-27 16:02:06,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:02:06,726.726 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-27 16:02:10,548.548 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:02:10,550.550 INFO    ] Checking for system updates...
[2026-06-27 16:02:10,571.571 INFO    ] 200
[2026-06-27 16:02:10,572.572 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:02:10,607.607 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:02:10,609.609 INFO    ] No update needed
[2026-06-27 16:02:10,610.610 INFO    ] Checking for camera pi updates...
[2026-06-27 16:02:10,634.634 INFO    ] 200
[2026-06-27 16:02:10,635.635 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:02:10,658.658 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:02:10,701.701 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:02:10,703.703 INFO    ] No camera update needed
[2026-06-27 16:02:10,704.704 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:02:10,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:02:10,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:02:10,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:02:12,750.750 INFO    ] ================================================
[2026-06-27 16:02:12,766.766 INFO    ] Launching Daemon at Sat Jun 27 16:02:12 IST 2026
[2026-06-27 16:02:12,776.776 INFO    ] ================================================
[2026-06-27 16:02:13,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:02:13
[2026-06-27 16:02:13,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:02:13,567.567 INFO    ] Initializing speech engine...
[2026-06-27 16:02:13,575.575 INFO    ] 2026-06-27 16:02:13
[2026-06-27 16:02:13,763.763 INFO    ] 2026-06-27 16:02:13
[2026-06-27 16:02:13,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:02:13,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:02:14,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:02:14,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:02:14,245.245 INFO    ] time= 27/06/2026 16:02:14
[2026-06-27 16:02:14,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:02:14,293.293 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:02:14,371.371 INFO    ] No existing commands found in stream
[2026-06-27 16:02:19,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:02:19,382.382 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-27 16:02:20,879.879 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 16:02:20,880.880 INFO    ] Checking for system updates...
[2026-06-27 16:02:20,902.902 INFO    ] 200
[2026-06-27 16:02:20,904.904 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:02:20,934.934 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:02:20,936.936 INFO    ] No update needed
[2026-06-27 16:02:20,937.937 INFO    ] Checking for camera pi updates...
[2026-06-27 16:02:20,958.958 INFO    ] 200
[2026-06-27 16:02:20,959.959 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:02:20,985.985 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:02:21,037.037 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:02:21,039.039 INFO    ] No camera update needed
[2026-06-27 16:02:21,040.040 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:02:21,041.041 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:02:21,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:02:21,047.047 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:02:23,087.087 INFO    ] ================================================
[2026-06-27 16:02:23,102.102 INFO    ] Launching Daemon at Sat Jun 27 16:02:23 IST 2026
[2026-06-27 16:02:23,113.113 INFO    ] ================================================
[2026-06-27 16:02:23,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:02:23
[2026-06-27 16:02:23,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:02:23,917.917 INFO    ] Initializing speech engine...
[2026-06-27 16:02:23,925.925 INFO    ] 2026-06-27 16:02:23
[2026-06-27 16:02:24,130.130 INFO    ] 2026-06-27 16:02:24
[2026-06-27 16:02:24,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:02:24,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:02:24,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:02:24,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:02:24,576.576 INFO    ] time= 27/06/2026 16:02:24
[2026-06-27 16:02:24,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:02:24,580.580 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:02:24,669.669 INFO    ] No existing commands found in stream
[2026-06-27 16:02:29,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:02:29,686.686 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-27 16:02:33,245.245 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 16:02:33,247.247 INFO    ] Checking for system updates...
[2026-06-27 16:02:33,267.267 INFO    ] 200
[2026-06-27 16:02:33,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:02:33,302.302 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:02:33,304.304 INFO    ] No update needed
[2026-06-27 16:02:33,305.305 INFO    ] Checking for camera pi updates...
[2026-06-27 16:02:33,325.325 INFO    ] 200
[2026-06-27 16:02:33,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:02:33,349.349 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:02:33,381.381 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:02:33,382.382 INFO    ] No camera update needed
[2026-06-27 16:02:33,384.384 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:02:33,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:02:33,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:02:33,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:02:35,425.425 INFO    ] ================================================
[2026-06-27 16:02:35,440.440 INFO    ] Launching Daemon at Sat Jun 27 16:02:35 IST 2026
[2026-06-27 16:02:35,452.452 INFO    ] ================================================
[2026-06-27 16:02:35,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:02:35
[2026-06-27 16:02:36,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:02:36,273.273 INFO    ] Initializing speech engine...
[2026-06-27 16:02:36,278.278 INFO    ] 2026-06-27 16:02:36
[2026-06-27 16:02:36,487.487 INFO    ] 2026-06-27 16:02:36
[2026-06-27 16:02:36,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:02:36,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:02:36,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:02:36,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:02:36,937.937 INFO    ] time= 27/06/2026 16:02:36
[2026-06-27 16:02:36,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:02:36,944.944 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:02:37,012.012 INFO    ] No existing commands found in stream
[2026-06-27 16:02:42,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:02:42,036.036 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-27 16:02:43,181.181 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 16:02:43,183.183 INFO    ] Checking for system updates...
[2026-06-27 16:02:43,204.204 INFO    ] 200
[2026-06-27 16:02:43,206.206 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:02:43,240.240 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:02:43,241.241 INFO    ] No update needed
[2026-06-27 16:02:43,243.243 INFO    ] Checking for camera pi updates...
[2026-06-27 16:02:43,265.265 INFO    ] 200
[2026-06-27 16:02:43,266.266 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:02:43,290.290 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:02:43,339.339 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:02:43,342.342 INFO    ] No camera update needed
[2026-06-27 16:02:43,345.345 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:02:43,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:02:43,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:02:43,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:02:45,402.402 INFO    ] ================================================
[2026-06-27 16:02:45,417.417 INFO    ] Launching Daemon at Sat Jun 27 16:02:45 IST 2026
[2026-06-27 16:02:45,429.429 INFO    ] ================================================
[2026-06-27 16:02:45,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:02:45
[2026-06-27 16:02:46,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:02:46,280.280 INFO    ] Initializing speech engine...
[2026-06-27 16:02:46,286.286 INFO    ] 2026-06-27 16:02:46
[2026-06-27 16:02:46,495.495 INFO    ] 2026-06-27 16:02:46
[2026-06-27 16:02:46,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:02:46,709.709 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:02:46,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:02:46,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:02:46,941.941 INFO    ] time= 27/06/2026 16:02:46
[2026-06-27 16:02:46,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:02:46,949.949 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:02:47,039.039 INFO    ] No existing commands found in stream
[2026-06-27 16:02:52,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:02:52,058.058 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-27 16:02:56,285.285 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:02:56,286.286 INFO    ] Checking for system updates...
[2026-06-27 16:02:56,308.308 INFO    ] 200
[2026-06-27 16:02:56,309.309 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:02:56,342.342 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:02:56,343.343 INFO    ] No update needed
[2026-06-27 16:02:56,345.345 INFO    ] Checking for camera pi updates...
[2026-06-27 16:02:56,366.366 INFO    ] 200
[2026-06-27 16:02:56,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:02:56,390.390 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:02:56,432.432 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:02:56,433.433 INFO    ] No camera update needed
[2026-06-27 16:02:56,435.435 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:02:56,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:02:56,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:02:56,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:02:58,481.481 INFO    ] ================================================
[2026-06-27 16:02:58,497.497 INFO    ] Launching Daemon at Sat Jun 27 16:02:58 IST 2026
[2026-06-27 16:02:58,508.508 INFO    ] ================================================
[2026-06-27 16:02:58,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:02:58
[2026-06-27 16:02:59,174.174 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:02:59,312.312 INFO    ] Initializing speech engine...
[2026-06-27 16:02:59,326.326 INFO    ] 2026-06-27 16:02:59
[2026-06-27 16:02:59,543.543 INFO    ] 2026-06-27 16:02:59
[2026-06-27 16:02:59,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:02:59,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:02:59,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:02:59,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:02:59,987.987 INFO    ] time= 27/06/2026 16:02:59
[2026-06-27 16:02:59,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:02:59,990.990 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:03:00,055.055 INFO    ] No existing commands found in stream
[2026-06-27 16:03:05,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:03:05,068.068 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-27 16:03:07,331.331 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:03:07,333.333 INFO    ] Checking for system updates...
[2026-06-27 16:03:07,354.354 INFO    ] 200
[2026-06-27 16:03:07,355.355 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:03:07,388.388 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:03:07,389.389 INFO    ] No update needed
[2026-06-27 16:03:07,390.390 INFO    ] Checking for camera pi updates...
[2026-06-27 16:03:07,410.410 INFO    ] 200
[2026-06-27 16:03:07,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:03:07,435.435 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:03:07,476.476 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:03:07,477.477 INFO    ] No camera update needed
[2026-06-27 16:03:07,479.479 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:03:07,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:03:07,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:03:07,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:03:09,527.527 INFO    ] ================================================
[2026-06-27 16:03:09,543.543 INFO    ] Launching Daemon at Sat Jun 27 16:03:09 IST 2026
[2026-06-27 16:03:09,555.555 INFO    ] ================================================
[2026-06-27 16:03:09,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:03:09
[2026-06-27 16:03:10,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:03:10,387.387 INFO    ] Initializing speech engine...
[2026-06-27 16:03:10,393.393 INFO    ] 2026-06-27 16:03:10
[2026-06-27 16:03:10,611.611 INFO    ] 2026-06-27 16:03:10
[2026-06-27 16:03:10,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:03:10,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:03:10,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:03:11,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:03:11,054.054 INFO    ] time= 27/06/2026 16:03:11
[2026-06-27 16:03:11,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:03:11,062.062 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:03:11,130.130 INFO    ] No existing commands found in stream
[2026-06-27 16:03:16,163.163 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:03:16,166.166 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-27 16:03:17,221.221 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:03:17,223.223 INFO    ] Checking for system updates...
[2026-06-27 16:03:17,245.245 INFO    ] 200
[2026-06-27 16:03:17,246.246 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:03:17,280.280 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:03:17,282.282 INFO    ] No update needed
[2026-06-27 16:03:17,283.283 INFO    ] Checking for camera pi updates...
[2026-06-27 16:03:17,305.305 INFO    ] 200
[2026-06-27 16:03:17,306.306 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:03:17,330.330 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:03:17,384.384 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:03:17,386.386 INFO    ] No camera update needed
[2026-06-27 16:03:17,387.387 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:03:17,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:03:17,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:03:17,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:03:19,435.435 INFO    ] ================================================
[2026-06-27 16:03:19,451.451 INFO    ] Launching Daemon at Sat Jun 27 16:03:19 IST 2026
[2026-06-27 16:03:19,462.462 INFO    ] ================================================
[2026-06-27 16:03:19,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:03:19
[2026-06-27 16:03:20,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:03:20,279.279 INFO    ] Initializing speech engine...
[2026-06-27 16:03:20,289.289 INFO    ] 2026-06-27 16:03:20
[2026-06-27 16:03:20,496.496 INFO    ] 2026-06-27 16:03:20
[2026-06-27 16:03:20,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:03:20,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:03:20,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:03:20,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:03:20,920.920 INFO    ] time= 27/06/2026 16:03:20
[2026-06-27 16:03:20,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:03:20,948.948 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:03:21,021.021 INFO    ] No existing commands found in stream
[2026-06-27 16:03:26,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:03:26,051.051 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-27 16:03:27,649.649 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 16:03:27,651.651 INFO    ] Checking for system updates...
[2026-06-27 16:03:27,673.673 INFO    ] 200
[2026-06-27 16:03:27,674.674 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:03:27,708.708 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:03:27,709.709 INFO    ] No update needed
[2026-06-27 16:03:27,710.710 INFO    ] Checking for camera pi updates...
[2026-06-27 16:03:27,732.732 INFO    ] 200
[2026-06-27 16:03:27,733.733 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:03:27,757.757 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:03:27,799.799 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:03:27,800.800 INFO    ] No camera update needed
[2026-06-27 16:03:27,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:03:27,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:03:27,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:03:27,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:03:29,848.848 INFO    ] ================================================
[2026-06-27 16:03:29,864.864 INFO    ] Launching Daemon at Sat Jun 27 16:03:29 IST 2026
[2026-06-27 16:03:29,875.875 INFO    ] ================================================
[2026-06-27 16:03:30,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:03:30
[2026-06-27 16:03:30,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:03:30,722.722 INFO    ] Initializing speech engine...
[2026-06-27 16:03:30,727.727 INFO    ] 2026-06-27 16:03:30
[2026-06-27 16:03:30,947.947 INFO    ] 2026-06-27 16:03:30
[2026-06-27 16:03:30,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:03:31,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:03:31,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:03:31,395.395 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:03:31,411.411 INFO    ] time= 27/06/2026 16:03:31
[2026-06-27 16:03:31,413.413 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:03:31,415.415 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:03:31,508.508 INFO    ] No existing commands found in stream
[2026-06-27 16:03:36,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:03:36,525.525 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-27 16:03:40,430.430 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:03:40,431.431 INFO    ] Checking for system updates...
[2026-06-27 16:03:40,452.452 INFO    ] 200
[2026-06-27 16:03:40,453.453 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:03:40,485.485 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:03:40,486.486 INFO    ] No update needed
[2026-06-27 16:03:40,487.487 INFO    ] Checking for camera pi updates...
[2026-06-27 16:03:40,507.507 INFO    ] 200
[2026-06-27 16:03:40,508.508 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:03:40,533.533 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:03:40,578.578 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:03:40,579.579 INFO    ] No camera update needed
[2026-06-27 16:03:40,581.581 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:03:40,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:03:40,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:03:40,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:03:42,628.628 INFO    ] ================================================
[2026-06-27 16:03:42,643.643 INFO    ] Launching Daemon at Sat Jun 27 16:03:42 IST 2026
[2026-06-27 16:03:42,654.654 INFO    ] ================================================
[2026-06-27 16:03:43,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:03:43
[2026-06-27 16:03:43,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:03:43,497.497 INFO    ] Initializing speech engine...
[2026-06-27 16:03:43,502.502 INFO    ] 2026-06-27 16:03:43
[2026-06-27 16:03:43,707.707 INFO    ] 2026-06-27 16:03:43
[2026-06-27 16:03:43,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:03:43,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:03:43,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:03:44,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:03:44,148.148 INFO    ] time= 27/06/2026 16:03:44
[2026-06-27 16:03:44,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:03:44,155.155 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:03:44,222.222 INFO    ] No existing commands found in stream
[2026-06-27 16:03:49,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:03:49,239.239 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-27 16:03:50,245.245 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:03:50,246.246 INFO    ] Checking for system updates...
[2026-06-27 16:03:50,268.268 INFO    ] 200
[2026-06-27 16:03:50,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:03:50,300.300 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:03:50,302.302 INFO    ] No update needed
[2026-06-27 16:03:50,303.303 INFO    ] Checking for camera pi updates...
[2026-06-27 16:03:50,323.323 INFO    ] 200
[2026-06-27 16:03:50,325.325 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:03:50,350.350 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:03:50,397.397 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:03:50,398.398 INFO    ] No camera update needed
[2026-06-27 16:03:50,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:03:50,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:03:50,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:03:50,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:03:52,449.449 INFO    ] ================================================
[2026-06-27 16:03:52,465.465 INFO    ] Launching Daemon at Sat Jun 27 16:03:52 IST 2026
[2026-06-27 16:03:52,477.477 INFO    ] ================================================
[2026-06-27 16:03:52,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:03:52
[2026-06-27 16:03:53,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:03:53,283.283 INFO    ] Initializing speech engine...
[2026-06-27 16:03:53,289.289 INFO    ] 2026-06-27 16:03:53
[2026-06-27 16:03:53,491.491 INFO    ] 2026-06-27 16:03:53
[2026-06-27 16:03:53,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:03:53,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:03:53,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:03:53,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:03:53,911.911 INFO    ] time= 27/06/2026 16:03:53
[2026-06-27 16:03:53,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:03:53,939.939 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:03:54,006.006 INFO    ] No existing commands found in stream
[2026-06-27 16:03:59,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:03:59,018.018 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-27 16:03:59,621.621 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 16:03:59,622.622 INFO    ] Checking for system updates...
[2026-06-27 16:03:59,645.645 INFO    ] 200
[2026-06-27 16:03:59,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:03:59,679.679 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:03:59,680.680 INFO    ] No update needed
[2026-06-27 16:03:59,681.681 INFO    ] Checking for camera pi updates...
[2026-06-27 16:03:59,701.701 INFO    ] 200
[2026-06-27 16:03:59,702.702 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:03:59,728.728 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:03:59,867.867 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:03:59,868.868 INFO    ] No camera update needed
[2026-06-27 16:03:59,870.870 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:03:59,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:03:59,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:03:59,877.877 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:04:01,911.911 INFO    ] ================================================
[2026-06-27 16:04:01,927.927 INFO    ] Launching Daemon at Sat Jun 27 16:04:01 IST 2026
[2026-06-27 16:04:01,938.938 INFO    ] ================================================
[2026-06-27 16:04:02,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:04:02
[2026-06-27 16:04:02,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:04:02,840.840 INFO    ] Initializing speech engine...
[2026-06-27 16:04:02,844.844 INFO    ] 2026-06-27 16:04:02
[2026-06-27 16:04:03,072.072 INFO    ] 2026-06-27 16:04:03
[2026-06-27 16:04:03,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:04:03,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:04:03,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:04:03,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:04:03,525.525 INFO    ] time= 27/06/2026 16:04:03
[2026-06-27 16:04:03,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:04:03,531.531 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:04:03,622.622 INFO    ] No existing commands found in stream
[2026-06-27 16:04:08,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:04:08,633.633 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-27 16:04:09,102.102 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 16:04:09,103.103 INFO    ] Checking for system updates...
[2026-06-27 16:04:09,124.124 INFO    ] 200
[2026-06-27 16:04:09,125.125 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:04:09,158.158 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:04:09,159.159 INFO    ] No update needed
[2026-06-27 16:04:09,160.160 INFO    ] Checking for camera pi updates...
[2026-06-27 16:04:09,181.181 INFO    ] 200
[2026-06-27 16:04:09,182.182 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:04:09,205.205 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:04:09,257.257 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:04:09,258.258 INFO    ] No camera update needed
[2026-06-27 16:04:09,260.260 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:04:09,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:04:09,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:04:09,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:04:11,306.306 INFO    ] ================================================
[2026-06-27 16:04:11,321.321 INFO    ] Launching Daemon at Sat Jun 27 16:04:11 IST 2026
[2026-06-27 16:04:11,332.332 INFO    ] ================================================
[2026-06-27 16:04:11,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:04:11
[2026-06-27 16:04:12,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:04:12,145.145 INFO    ] Initializing speech engine...
[2026-06-27 16:04:12,159.159 INFO    ] 2026-06-27 16:04:12
[2026-06-27 16:04:12,370.370 INFO    ] 2026-06-27 16:04:12
[2026-06-27 16:04:12,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:04:12,573.573 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:04:12,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:04:12,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:04:12,844.844 INFO    ] time= 27/06/2026 16:04:12
[2026-06-27 16:04:12,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:04:12,860.860 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:04:12,952.952 INFO    ] No existing commands found in stream
[2026-06-27 16:04:17,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:04:17,966.966 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-27 16:04:19,594.594 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 16:04:19,595.595 INFO    ] Checking for system updates...
[2026-06-27 16:04:19,616.616 INFO    ] 200
[2026-06-27 16:04:19,618.618 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:04:19,648.648 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:04:19,649.649 INFO    ] No update needed
[2026-06-27 16:04:19,651.651 INFO    ] Checking for camera pi updates...
[2026-06-27 16:04:19,671.671 INFO    ] 200
[2026-06-27 16:04:19,672.672 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:04:19,696.696 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:04:19,737.737 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:04:19,739.739 INFO    ] No camera update needed
[2026-06-27 16:04:19,740.740 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:04:19,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:04:19,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:04:19,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:04:21,787.787 INFO    ] ================================================
[2026-06-27 16:04:21,802.802 INFO    ] Launching Daemon at Sat Jun 27 16:04:21 IST 2026
[2026-06-27 16:04:21,814.814 INFO    ] ================================================
[2026-06-27 16:04:22,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:04:22
[2026-06-27 16:04:22,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:04:22,595.595 INFO    ] Initializing speech engine...
[2026-06-27 16:04:22,599.599 INFO    ] 2026-06-27 16:04:22
[2026-06-27 16:04:22,818.818 INFO    ] 2026-06-27 16:04:22
[2026-06-27 16:04:22,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:04:23,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:04:23,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:04:23,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:04:23,332.332 INFO    ] time= 27/06/2026 16:04:23
[2026-06-27 16:04:23,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:04:23,359.359 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:04:23,465.465 INFO    ] No existing commands found in stream
[2026-06-27 16:04:28,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:04:28,477.477 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-27 16:04:29,458.458 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 16:04:29,460.460 INFO    ] Checking for system updates...
[2026-06-27 16:04:29,481.481 INFO    ] 200
[2026-06-27 16:04:29,482.482 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:04:29,515.515 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:04:29,516.516 INFO    ] No update needed
[2026-06-27 16:04:29,518.518 INFO    ] Checking for camera pi updates...
[2026-06-27 16:04:29,537.537 INFO    ] 200
[2026-06-27 16:04:29,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:04:29,561.561 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:04:29,601.601 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:04:29,603.603 INFO    ] No camera update needed
[2026-06-27 16:04:29,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:04:29,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:04:29,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:04:29,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:04:31,644.644 INFO    ] ================================================
[2026-06-27 16:04:31,654.654 INFO    ] Launching Daemon at Sat Jun 27 16:04:31 IST 2026
[2026-06-27 16:04:31,661.661 INFO    ] ================================================
[2026-06-27 16:04:31,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:04:31
[2026-06-27 16:04:32,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:04:32,449.449 INFO    ] Initializing speech engine...
[2026-06-27 16:04:32,457.457 INFO    ] 2026-06-27 16:04:32
[2026-06-27 16:04:32,670.670 INFO    ] 2026-06-27 16:04:32
[2026-06-27 16:04:32,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:04:32,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:04:32,888.888 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:04:33,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:04:33,080.080 INFO    ] time= 27/06/2026 16:04:33
[2026-06-27 16:04:33,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:04:33,125.125 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:04:33,190.190 INFO    ] No existing commands found in stream
[2026-06-27 16:04:38,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:04:38,204.204 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-27 16:04:39,486.486 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:04:39,488.488 INFO    ] Checking for system updates...
[2026-06-27 16:04:39,509.509 INFO    ] 200
[2026-06-27 16:04:39,511.511 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:04:39,543.543 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:04:39,545.545 INFO    ] No update needed
[2026-06-27 16:04:39,546.546 INFO    ] Checking for camera pi updates...
[2026-06-27 16:04:39,565.565 INFO    ] 200
[2026-06-27 16:04:39,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:04:39,590.590 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:04:39,632.632 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:04:39,633.633 INFO    ] No camera update needed
[2026-06-27 16:04:39,635.635 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:04:39,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:04:39,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:04:39,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:04:41,681.681 INFO    ] ================================================
[2026-06-27 16:04:41,697.697 INFO    ] Launching Daemon at Sat Jun 27 16:04:41 IST 2026
[2026-06-27 16:04:41,708.708 INFO    ] ================================================
[2026-06-27 16:04:42,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:04:42
[2026-06-27 16:04:42,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:04:42,517.517 INFO    ] Initializing speech engine...
[2026-06-27 16:04:42,526.526 INFO    ] 2026-06-27 16:04:42
[2026-06-27 16:04:42,742.742 INFO    ] 2026-06-27 16:04:42
[2026-06-27 16:04:42,773.773 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:04:42,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:04:42,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:04:43,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:04:43,199.199 INFO    ] time= 27/06/2026 16:04:43
[2026-06-27 16:04:43,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:04:43,206.206 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:04:43,316.316 INFO    ] No existing commands found in stream
[2026-06-27 16:04:48,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:04:48,330.330 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-27 16:04:52,106.106 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 16:04:52,107.107 INFO    ] Checking for system updates...
[2026-06-27 16:04:52,131.131 INFO    ] 200
[2026-06-27 16:04:52,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:04:52,169.169 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:04:52,170.170 INFO    ] No update needed
[2026-06-27 16:04:52,172.172 INFO    ] Checking for camera pi updates...
[2026-06-27 16:04:52,194.194 INFO    ] 200
[2026-06-27 16:04:52,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:04:52,222.222 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:04:52,286.286 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:04:52,287.287 INFO    ] No camera update needed
[2026-06-27 16:04:52,289.289 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:04:52,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:04:52,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:04:52,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:04:54,330.330 INFO    ] ================================================
[2026-06-27 16:04:54,340.340 INFO    ] Launching Daemon at Sat Jun 27 16:04:54 IST 2026
[2026-06-27 16:04:54,346.346 INFO    ] ================================================
[2026-06-27 16:04:54,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:04:54
[2026-06-27 16:04:54,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:04:55,117.117 INFO    ] Initializing speech engine...
[2026-06-27 16:04:55,120.120 INFO    ] 2026-06-27 16:04:55
[2026-06-27 16:04:55,336.336 INFO    ] 2026-06-27 16:04:55
[2026-06-27 16:04:55,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:04:55,570.570 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:04:55,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:04:55,755.755 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:04:55,777.777 INFO    ] time= 27/06/2026 16:04:55
[2026-06-27 16:04:55,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:04:55,784.784 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:04:55,875.875 INFO    ] No existing commands found in stream
[2026-06-27 16:05:00,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:05:00,892.892 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-27 16:05:04,635.635 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 16:05:04,637.637 INFO    ] Checking for system updates...
[2026-06-27 16:05:04,659.659 INFO    ] 200
[2026-06-27 16:05:04,660.660 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:05:04,692.692 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:05:04,694.694 INFO    ] No update needed
[2026-06-27 16:05:04,695.695 INFO    ] Checking for camera pi updates...
[2026-06-27 16:05:04,715.715 INFO    ] 200
[2026-06-27 16:05:04,716.716 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:05:04,739.739 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:05:04,784.784 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:05:04,786.786 INFO    ] No camera update needed
[2026-06-27 16:05:04,787.787 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:05:04,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:05:04,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:05:04,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:05:06,834.834 INFO    ] ================================================
[2026-06-27 16:05:06,849.849 INFO    ] Launching Daemon at Sat Jun 27 16:05:06 IST 2026
[2026-06-27 16:05:06,860.860 INFO    ] ================================================
[2026-06-27 16:05:07,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:05:07
[2026-06-27 16:05:07,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:05:07,660.660 INFO    ] Initializing speech engine...
[2026-06-27 16:05:07,665.665 INFO    ] 2026-06-27 16:05:07
[2026-06-27 16:05:07,869.869 INFO    ] 2026-06-27 16:05:07
[2026-06-27 16:05:07,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:05:08,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:05:08,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:05:08,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:05:08,311.311 INFO    ] time= 27/06/2026 16:05:08
[2026-06-27 16:05:08,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:05:08,318.318 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:05:08,385.385 INFO    ] No existing commands found in stream
[2026-06-27 16:05:13,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:05:13,412.412 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-27 16:05:16,749.749 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 16:05:16,750.750 INFO    ] Checking for system updates...
[2026-06-27 16:05:16,771.771 INFO    ] 200
[2026-06-27 16:05:16,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:05:16,803.803 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:05:16,804.804 INFO    ] No update needed
[2026-06-27 16:05:16,806.806 INFO    ] Checking for camera pi updates...
[2026-06-27 16:05:16,826.826 INFO    ] 200
[2026-06-27 16:05:16,827.827 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:05:16,853.853 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:05:16,900.900 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:05:16,902.902 INFO    ] No camera update needed
[2026-06-27 16:05:16,903.903 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:05:16,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:05:16,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:05:16,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:05:18,949.949 INFO    ] ================================================
[2026-06-27 16:05:18,965.965 INFO    ] Launching Daemon at Sat Jun 27 16:05:18 IST 2026
[2026-06-27 16:05:18,976.976 INFO    ] ================================================
[2026-06-27 16:05:19,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:05:19
[2026-06-27 16:05:19,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:05:19,846.846 INFO    ] Initializing speech engine...
[2026-06-27 16:05:19,849.849 INFO    ] 2026-06-27 16:05:19
[2026-06-27 16:05:20,056.056 INFO    ] 2026-06-27 16:05:20
[2026-06-27 16:05:20,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:05:20,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:05:20,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:05:20,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:05:20,480.480 INFO    ] time= 27/06/2026 16:05:20
[2026-06-27 16:05:20,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:05:20,507.507 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:05:20,598.598 INFO    ] No existing commands found in stream
[2026-06-27 16:05:25,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:05:25,616.616 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-27 16:05:29,952.952 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:05:29,953.953 INFO    ] Checking for system updates...
[2026-06-27 16:05:29,974.974 INFO    ] 200
[2026-06-27 16:05:29,976.976 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:05:30,007.007 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:05:30,008.008 INFO    ] No update needed
[2026-06-27 16:05:30,009.009 INFO    ] Checking for camera pi updates...
[2026-06-27 16:05:30,030.030 INFO    ] 200
[2026-06-27 16:05:30,031.031 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:05:30,055.055 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:05:30,099.099 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:05:30,101.101 INFO    ] No camera update needed
[2026-06-27 16:05:30,104.104 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:05:30,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:05:30,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:05:30,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:05:32,151.151 INFO    ] ================================================
[2026-06-27 16:05:32,161.161 INFO    ] Launching Daemon at Sat Jun 27 16:05:32 IST 2026
[2026-06-27 16:05:32,168.168 INFO    ] ================================================
[2026-06-27 16:05:32,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:05:32
[2026-06-27 16:05:32,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:05:33,032.032 INFO    ] Initializing speech engine...
[2026-06-27 16:05:33,036.036 INFO    ] 2026-06-27 16:05:33
[2026-06-27 16:05:33,251.251 INFO    ] 2026-06-27 16:05:33
[2026-06-27 16:05:33,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:05:33,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:05:33,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:05:33,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:05:33,697.697 INFO    ] time= 27/06/2026 16:05:33
[2026-06-27 16:05:33,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:05:33,706.706 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:05:33,798.798 INFO    ] No existing commands found in stream
[2026-06-27 16:05:38,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:05:38,809.809 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-27 16:05:42,355.355 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 16:05:42,356.356 INFO    ] Checking for system updates...
[2026-06-27 16:05:42,387.387 INFO    ] 200
[2026-06-27 16:05:42,388.388 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-27 16:05:42,390.390 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-27 16:05:42,391.391 INFO    ] Checking for camera pi updates...
[2026-06-27 16:05:42,438.438 INFO    ] 200
[2026-06-27 16:05:42,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-27 16:05:42,444.444 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-27 16:05:42,447.447 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:05:42,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:05:42,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:05:42,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:05:44,503.503 INFO    ] ================================================
[2026-06-27 16:05:44,518.518 INFO    ] Launching Daemon at Sat Jun 27 16:05:44 IST 2026
[2026-06-27 16:05:44,529.529 INFO    ] ================================================
[2026-06-27 16:05:44,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:05:44
[2026-06-27 16:05:45,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:05:45,332.332 INFO    ] Initializing speech engine...
[2026-06-27 16:05:45,335.335 INFO    ] 2026-06-27 16:05:45
[2026-06-27 16:05:45,550.550 INFO    ] 2026-06-27 16:05:45
[2026-06-27 16:05:45,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:05:45,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:05:45,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:05:45,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:05:45,990.990 INFO    ] time= 27/06/2026 16:05:45
[2026-06-27 16:05:45,996.996 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:05:45,997.997 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:05:46,065.065 INFO    ] No existing commands found in stream
[2026-06-27 16:05:51,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:05:51,077.077 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-27 16:05:52,598.598 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 16:05:52,600.600 INFO    ] Checking for system updates...
[2026-06-27 16:05:52,621.621 INFO    ] 200
[2026-06-27 16:05:52,622.622 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:05:52,653.653 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:05:52,655.655 INFO    ] No update needed
[2026-06-27 16:05:52,656.656 INFO    ] Checking for camera pi updates...
[2026-06-27 16:05:52,675.675 INFO    ] 200
[2026-06-27 16:05:52,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:05:52,701.701 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:05:52,746.746 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:05:52,747.747 INFO    ] No camera update needed
[2026-06-27 16:05:52,748.748 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:05:52,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:05:52,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:05:52,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:05:54,795.795 INFO    ] ================================================
[2026-06-27 16:05:54,811.811 INFO    ] Launching Daemon at Sat Jun 27 16:05:54 IST 2026
[2026-06-27 16:05:54,822.822 INFO    ] ================================================
[2026-06-27 16:05:55,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:05:55
[2026-06-27 16:05:55,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:05:55,608.608 INFO    ] Initializing speech engine...
[2026-06-27 16:05:55,617.617 INFO    ] 2026-06-27 16:05:55
[2026-06-27 16:05:55,821.821 INFO    ] 2026-06-27 16:05:55
[2026-06-27 16:05:55,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:05:56,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:05:56,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:05:56,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:05:56,266.266 INFO    ] time= 27/06/2026 16:05:56
[2026-06-27 16:05:56,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:05:56,269.269 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:05:56,337.337 INFO    ] No existing commands found in stream
[2026-06-27 16:06:01,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:06:01,347.347 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-27 16:06:05,804.804 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 16:06:05,806.806 INFO    ] Checking for system updates...
[2026-06-27 16:06:05,828.828 INFO    ] 200
[2026-06-27 16:06:05,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:06:05,860.860 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:06:05,861.861 INFO    ] No update needed
[2026-06-27 16:06:05,863.863 INFO    ] Checking for camera pi updates...
[2026-06-27 16:06:05,883.883 INFO    ] 200
[2026-06-27 16:06:05,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:06:05,910.910 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:06:05,963.963 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:06:05,965.965 INFO    ] No camera update needed
[2026-06-27 16:06:05,966.966 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:06:05,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:06:05,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:06:05,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:06:08,014.014 INFO    ] ================================================
[2026-06-27 16:06:08,029.029 INFO    ] Launching Daemon at Sat Jun 27 16:06:08 IST 2026
[2026-06-27 16:06:08,040.040 INFO    ] ================================================
[2026-06-27 16:06:08,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:06:08
[2026-06-27 16:06:08,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:06:08,823.823 INFO    ] Initializing speech engine...
[2026-06-27 16:06:08,828.828 INFO    ] 2026-06-27 16:06:08
[2026-06-27 16:06:09,045.045 INFO    ] 2026-06-27 16:06:09
[2026-06-27 16:06:09,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:06:09,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:06:09,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:06:09,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:06:09,589.589 INFO    ] time= 27/06/2026 16:06:09
[2026-06-27 16:06:09,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:06:09,621.621 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:06:09,710.710 INFO    ] No existing commands found in stream
[2026-06-27 16:06:14,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:06:14,723.723 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-27 16:06:16,464.464 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 16:06:16,466.466 INFO    ] Checking for system updates...
[2026-06-27 16:06:16,486.486 INFO    ] 200
[2026-06-27 16:06:16,488.488 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:06:16,518.518 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:06:16,520.520 INFO    ] No update needed
[2026-06-27 16:06:16,521.521 INFO    ] Checking for camera pi updates...
[2026-06-27 16:06:16,540.540 INFO    ] 200
[2026-06-27 16:06:16,542.542 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:06:16,568.568 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:06:16,612.612 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:06:16,613.613 INFO    ] No camera update needed
[2026-06-27 16:06:16,614.614 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:06:16,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:06:16,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:06:16,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:06:18,660.660 INFO    ] ================================================
[2026-06-27 16:06:18,676.676 INFO    ] Launching Daemon at Sat Jun 27 16:06:18 IST 2026
[2026-06-27 16:06:18,687.687 INFO    ] ================================================
[2026-06-27 16:06:19,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:06:19
[2026-06-27 16:06:19,376.376 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:06:19,521.521 INFO    ] Initializing speech engine...
[2026-06-27 16:06:19,527.527 INFO    ] 2026-06-27 16:06:19
[2026-06-27 16:06:19,731.731 INFO    ] 2026-06-27 16:06:19
[2026-06-27 16:06:19,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:06:19,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:06:19,974.974 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:06:20,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:06:20,168.168 INFO    ] time= 27/06/2026 16:06:20
[2026-06-27 16:06:20,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:06:20,185.185 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:06:20,277.277 INFO    ] No existing commands found in stream
[2026-06-27 16:06:25,301.301 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:06:25,304.304 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-27 16:06:28,840.840 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 16:06:28,842.842 INFO    ] Checking for system updates...
[2026-06-27 16:06:28,863.863 INFO    ] 200
[2026-06-27 16:06:28,865.865 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:06:28,899.899 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:06:28,900.900 INFO    ] No update needed
[2026-06-27 16:06:28,902.902 INFO    ] Checking for camera pi updates...
[2026-06-27 16:06:28,924.924 INFO    ] 200
[2026-06-27 16:06:28,925.925 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:06:28,951.951 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:06:28,990.990 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:06:28,992.992 INFO    ] No camera update needed
[2026-06-27 16:06:28,993.993 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:06:28,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:06:28,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:06:29,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:06:31,045.045 INFO    ] ================================================
[2026-06-27 16:06:31,060.060 INFO    ] Launching Daemon at Sat Jun 27 16:06:31 IST 2026
[2026-06-27 16:06:31,071.071 INFO    ] ================================================
[2026-06-27 16:06:31,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:06:31
[2026-06-27 16:06:31,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:06:31,990.990 INFO    ] Initializing speech engine...
[2026-06-27 16:06:31,995.995 INFO    ] 2026-06-27 16:06:31
[2026-06-27 16:06:32,200.200 INFO    ] 2026-06-27 16:06:32
[2026-06-27 16:06:32,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:06:32,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:06:32,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:06:32,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:06:32,716.716 INFO    ] time= 27/06/2026 16:06:32
[2026-06-27 16:06:32,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:06:32,743.743 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:06:32,841.841 INFO    ] No existing commands found in stream
[2026-06-27 16:06:37,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:06:37,854.854 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-27 16:06:39,220.220 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 16:06:39,221.221 INFO    ] Checking for system updates...
[2026-06-27 16:06:39,243.243 INFO    ] 200
[2026-06-27 16:06:39,245.245 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:06:39,276.276 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:06:39,277.277 INFO    ] No update needed
[2026-06-27 16:06:39,279.279 INFO    ] Checking for camera pi updates...
[2026-06-27 16:06:39,300.300 INFO    ] 200
[2026-06-27 16:06:39,301.301 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:06:39,325.325 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:06:39,368.368 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:06:39,370.370 INFO    ] No camera update needed
[2026-06-27 16:06:39,371.371 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:06:39,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:06:39,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:06:39,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:06:41,419.419 INFO    ] ================================================
[2026-06-27 16:06:41,434.434 INFO    ] Launching Daemon at Sat Jun 27 16:06:41 IST 2026
[2026-06-27 16:06:41,445.445 INFO    ] ================================================
[2026-06-27 16:06:41,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:06:41
[2026-06-27 16:06:42,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:06:42,309.309 INFO    ] Initializing speech engine...
[2026-06-27 16:06:42,317.317 INFO    ] 2026-06-27 16:06:42
[2026-06-27 16:06:42,530.530 INFO    ] 2026-06-27 16:06:42
[2026-06-27 16:06:42,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:06:42,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:06:42,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:06:42,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:06:42,977.977 INFO    ] time= 27/06/2026 16:06:42
[2026-06-27 16:06:42,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:06:42,984.984 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:06:43,053.053 INFO    ] No existing commands found in stream
[2026-06-27 16:06:48,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:06:48,070.070 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-27 16:06:49,582.582 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 16:06:49,583.583 INFO    ] Checking for system updates...
[2026-06-27 16:06:49,606.606 INFO    ] 200
[2026-06-27 16:06:49,608.608 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:06:49,638.638 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:06:49,640.640 INFO    ] No update needed
[2026-06-27 16:06:49,641.641 INFO    ] Checking for camera pi updates...
[2026-06-27 16:06:49,661.661 INFO    ] 200
[2026-06-27 16:06:49,662.662 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:06:49,688.688 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:06:49,743.743 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:06:49,745.745 INFO    ] No camera update needed
[2026-06-27 16:06:49,746.746 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:06:49,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:06:49,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:06:49,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:06:51,793.793 INFO    ] ================================================
[2026-06-27 16:06:51,809.809 INFO    ] Launching Daemon at Sat Jun 27 16:06:51 IST 2026
[2026-06-27 16:06:51,820.820 INFO    ] ================================================
[2026-06-27 16:06:52,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:06:52
[2026-06-27 16:06:52,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:06:52,612.612 INFO    ] Initializing speech engine...
[2026-06-27 16:06:52,618.618 INFO    ] 2026-06-27 16:06:52
[2026-06-27 16:06:52,820.820 INFO    ] 2026-06-27 16:06:52
[2026-06-27 16:06:52,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:06:53,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:06:53,041.041 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:06:53,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:06:53,256.256 INFO    ] time= 27/06/2026 16:06:53
[2026-06-27 16:06:53,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:06:53,267.267 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:06:53,333.333 INFO    ] No existing commands found in stream
[2026-06-27 16:06:58,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:06:58,345.345 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-27 16:07:01,817.817 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 16:07:01,819.819 INFO    ] Checking for system updates...
[2026-06-27 16:07:01,845.845 INFO    ] 200
[2026-06-27 16:07:01,846.846 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:07:01,885.885 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:07:01,887.887 INFO    ] No update needed
[2026-06-27 16:07:01,889.889 INFO    ] Checking for camera pi updates...
[2026-06-27 16:07:01,915.915 INFO    ] 200
[2026-06-27 16:07:01,917.917 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:07:01,945.945 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:07:01,983.983 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:07:01,985.985 INFO    ] No camera update needed
[2026-06-27 16:07:01,987.987 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:07:01,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:07:01,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:07:01,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:07:04,038.038 INFO    ] ================================================
[2026-06-27 16:07:04,053.053 INFO    ] Launching Daemon at Sat Jun 27 16:07:04 IST 2026
[2026-06-27 16:07:04,065.065 INFO    ] ================================================
[2026-06-27 16:07:04,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:07:04
[2026-06-27 16:07:04,795.795 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:07:04,950.950 INFO    ] Initializing speech engine...
[2026-06-27 16:07:04,956.956 INFO    ] 2026-06-27 16:07:04
[2026-06-27 16:07:05,168.168 INFO    ] 2026-06-27 16:07:05
[2026-06-27 16:07:05,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:07:05,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:07:05,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:07:05,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:07:05,624.624 INFO    ] time= 27/06/2026 16:07:05
[2026-06-27 16:07:05,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:07:05,631.631 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:07:05,699.699 INFO    ] No existing commands found in stream
[2026-06-27 16:07:10,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:07:10,711.711 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-27 16:07:14,676.676 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:07:14,678.678 INFO    ] Checking for system updates...
[2026-06-27 16:07:14,699.699 INFO    ] 200
[2026-06-27 16:07:14,701.701 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:07:14,731.731 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:07:14,733.733 INFO    ] No update needed
[2026-06-27 16:07:14,734.734 INFO    ] Checking for camera pi updates...
[2026-06-27 16:07:14,756.756 INFO    ] 200
[2026-06-27 16:07:14,757.757 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:07:14,781.781 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:07:14,828.828 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:07:14,830.830 INFO    ] No camera update needed
[2026-06-27 16:07:14,831.831 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:07:14,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:07:14,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:07:14,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:07:16,879.879 INFO    ] ================================================
[2026-06-27 16:07:16,895.895 INFO    ] Launching Daemon at Sat Jun 27 16:07:16 IST 2026
[2026-06-27 16:07:16,907.907 INFO    ] ================================================
[2026-06-27 16:07:17,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:07:17
[2026-06-27 16:07:17,579.579 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:07:17,716.716 INFO    ] Initializing speech engine...
[2026-06-27 16:07:17,721.721 INFO    ] 2026-06-27 16:07:17
[2026-06-27 16:07:17,944.944 INFO    ] 2026-06-27 16:07:17
[2026-06-27 16:07:17,984.984 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:07:18,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:07:18,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:07:18,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:07:18,435.435 INFO    ] time= 27/06/2026 16:07:18
[2026-06-27 16:07:18,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:07:18,443.443 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:07:18,516.516 INFO    ] No existing commands found in stream
[2026-06-27 16:07:23,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:07:23,533.533 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-27 16:07:25,153.153 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:07:25,155.155 INFO    ] Checking for system updates...
[2026-06-27 16:07:25,177.177 INFO    ] 200
[2026-06-27 16:07:25,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:07:25,209.209 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:07:25,210.210 INFO    ] No update needed
[2026-06-27 16:07:25,211.211 INFO    ] Checking for camera pi updates...
[2026-06-27 16:07:25,231.231 INFO    ] 200
[2026-06-27 16:07:25,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:07:25,255.255 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:07:25,298.298 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:07:25,300.300 INFO    ] No camera update needed
[2026-06-27 16:07:25,302.302 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:07:25,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:07:25,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:07:25,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:07:27,349.349 INFO    ] ================================================
[2026-06-27 16:07:27,366.366 INFO    ] Launching Daemon at Sat Jun 27 16:07:27 IST 2026
[2026-06-27 16:07:27,377.377 INFO    ] ================================================
[2026-06-27 16:07:27,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:07:27
[2026-06-27 16:07:28,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:07:28,264.264 INFO    ] Initializing speech engine...
[2026-06-27 16:07:28,269.269 INFO    ] 2026-06-27 16:07:28
[2026-06-27 16:07:28,476.476 INFO    ] 2026-06-27 16:07:28
[2026-06-27 16:07:28,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:07:28,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:07:28,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:07:28,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:07:28,897.897 INFO    ] time= 27/06/2026 16:07:28
[2026-06-27 16:07:28,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:07:28,925.925 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:07:28,993.993 INFO    ] No existing commands found in stream
[2026-06-27 16:07:34,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:07:34,010.010 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-27 16:07:36,460.460 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 16:07:36,462.462 INFO    ] Checking for system updates...
[2026-06-27 16:07:36,483.483 INFO    ] 200
[2026-06-27 16:07:36,485.485 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:07:36,516.516 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:07:36,517.517 INFO    ] No update needed
[2026-06-27 16:07:36,519.519 INFO    ] Checking for camera pi updates...
[2026-06-27 16:07:36,538.538 INFO    ] 200
[2026-06-27 16:07:36,540.540 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:07:36,564.564 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:07:36,611.611 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:07:36,613.613 INFO    ] No camera update needed
[2026-06-27 16:07:36,614.614 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:07:36,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:07:36,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:07:36,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:07:38,664.664 INFO    ] ================================================
[2026-06-27 16:07:38,679.679 INFO    ] Launching Daemon at Sat Jun 27 16:07:38 IST 2026
[2026-06-27 16:07:38,690.690 INFO    ] ================================================
[2026-06-27 16:07:39,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:07:39
[2026-06-27 16:07:39,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:07:39,476.476 INFO    ] Initializing speech engine...
[2026-06-27 16:07:39,480.480 INFO    ] 2026-06-27 16:07:39
[2026-06-27 16:07:39,698.698 INFO    ] 2026-06-27 16:07:39
[2026-06-27 16:07:39,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:07:39,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:07:39,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:07:40,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:07:40,150.150 INFO    ] time= 27/06/2026 16:07:40
[2026-06-27 16:07:40,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:07:40,157.157 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:07:40,226.226 INFO    ] No existing commands found in stream
[2026-06-27 16:07:45,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:07:45,237.237 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-27 16:07:47,706.706 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:07:47,707.707 INFO    ] Checking for system updates...
[2026-06-27 16:07:47,728.728 INFO    ] 200
[2026-06-27 16:07:47,730.730 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:07:47,762.762 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:07:47,763.763 INFO    ] No update needed
[2026-06-27 16:07:47,765.765 INFO    ] Checking for camera pi updates...
[2026-06-27 16:07:47,785.785 INFO    ] 200
[2026-06-27 16:07:47,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:07:47,811.811 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:07:47,854.854 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:07:47,855.855 INFO    ] No camera update needed
[2026-06-27 16:07:47,856.856 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:07:47,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:07:47,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:07:47,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:07:49,903.903 INFO    ] ================================================
[2026-06-27 16:07:49,919.919 INFO    ] Launching Daemon at Sat Jun 27 16:07:49 IST 2026
[2026-06-27 16:07:49,929.929 INFO    ] ================================================
[2026-06-27 16:07:50,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:07:50
[2026-06-27 16:07:50,674.674 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:07:50,825.825 INFO    ] Initializing speech engine...
[2026-06-27 16:07:50,830.830 INFO    ] 2026-06-27 16:07:50
[2026-06-27 16:07:51,039.039 INFO    ] 2026-06-27 16:07:51
[2026-06-27 16:07:51,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:07:51,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:07:51,254.254 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:07:51,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:07:51,480.480 INFO    ] time= 27/06/2026 16:07:51
[2026-06-27 16:07:51,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:07:51,488.488 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:07:51,555.555 INFO    ] No existing commands found in stream
[2026-06-27 16:07:56,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:07:56,580.580 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-27 16:07:59,859.859 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 16:07:59,860.860 INFO    ] Checking for system updates...
[2026-06-27 16:07:59,882.882 INFO    ] 200
[2026-06-27 16:07:59,883.883 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:07:59,914.914 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:07:59,916.916 INFO    ] No update needed
[2026-06-27 16:07:59,917.917 INFO    ] Checking for camera pi updates...
[2026-06-27 16:07:59,937.937 INFO    ] 200
[2026-06-27 16:07:59,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:07:59,962.962 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:08:00,008.008 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:08:00,010.010 INFO    ] No camera update needed
[2026-06-27 16:08:00,011.011 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:08:00,012.012 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:08:00,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:08:00,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:08:02,051.051 INFO    ] ================================================
[2026-06-27 16:08:02,062.062 INFO    ] Launching Daemon at Sat Jun 27 16:08:02 IST 2026
[2026-06-27 16:08:02,069.069 INFO    ] ================================================
[2026-06-27 16:08:02,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:08:02
[2026-06-27 16:08:02,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:08:02,927.927 INFO    ] Initializing speech engine...
[2026-06-27 16:08:02,932.932 INFO    ] 2026-06-27 16:08:02
[2026-06-27 16:08:03,141.141 INFO    ] 2026-06-27 16:08:03
[2026-06-27 16:08:03,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:08:03,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:08:03,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:08:03,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:08:03,585.585 INFO    ] time= 27/06/2026 16:08:03
[2026-06-27 16:08:03,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:08:03,593.593 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:08:03,683.683 INFO    ] No existing commands found in stream
[2026-06-27 16:08:08,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:08:08,698.698 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-27 16:08:10,619.619 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:08:10,621.621 INFO    ] Checking for system updates...
[2026-06-27 16:08:10,643.643 INFO    ] 200
[2026-06-27 16:08:10,645.645 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:08:10,677.677 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:08:10,679.679 INFO    ] No update needed
[2026-06-27 16:08:10,680.680 INFO    ] Checking for camera pi updates...
[2026-06-27 16:08:10,700.700 INFO    ] 200
[2026-06-27 16:08:10,702.702 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:08:10,727.727 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:08:10,869.869 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:08:10,871.871 INFO    ] No camera update needed
[2026-06-27 16:08:10,872.872 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:08:10,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:08:10,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:08:10,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:08:12,919.919 INFO    ] ================================================
[2026-06-27 16:08:12,934.934 INFO    ] Launching Daemon at Sat Jun 27 16:08:12 IST 2026
[2026-06-27 16:08:12,946.946 INFO    ] ================================================
[2026-06-27 16:08:13,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:08:13
[2026-06-27 16:08:13,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:08:13,811.811 INFO    ] Initializing speech engine...
[2026-06-27 16:08:13,817.817 INFO    ] 2026-06-27 16:08:13
[2026-06-27 16:08:14,028.028 INFO    ] 2026-06-27 16:08:14
[2026-06-27 16:08:14,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:08:14,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:08:14,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:08:14,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:08:14,477.477 INFO    ] time= 27/06/2026 16:08:14
[2026-06-27 16:08:14,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:08:14,484.484 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:08:14,577.577 INFO    ] No existing commands found in stream
[2026-06-27 16:08:19,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:08:19,590.590 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-27 16:08:22,564.564 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 16:08:22,566.566 INFO    ] Checking for system updates...
[2026-06-27 16:08:22,586.586 INFO    ] 200
[2026-06-27 16:08:22,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:08:22,624.624 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:08:22,625.625 INFO    ] No update needed
[2026-06-27 16:08:22,627.627 INFO    ] Checking for camera pi updates...
[2026-06-27 16:08:22,647.647 INFO    ] 200
[2026-06-27 16:08:22,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:08:22,674.674 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:08:22,720.720 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:08:22,722.722 INFO    ] No camera update needed
[2026-06-27 16:08:22,723.723 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:08:22,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:08:22,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:08:22,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:08:24,768.768 INFO    ] ================================================
[2026-06-27 16:08:24,783.783 INFO    ] Launching Daemon at Sat Jun 27 16:08:24 IST 2026
[2026-06-27 16:08:24,793.793 INFO    ] ================================================
[2026-06-27 16:08:25,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:08:25
[2026-06-27 16:08:25,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:08:25,569.569 INFO    ] Initializing speech engine...
[2026-06-27 16:08:25,579.579 INFO    ] 2026-06-27 16:08:25
[2026-06-27 16:08:25,785.785 INFO    ] 2026-06-27 16:08:25
[2026-06-27 16:08:25,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:08:26,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:08:26,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:08:26,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:08:26,212.212 INFO    ] time= 27/06/2026 16:08:26
[2026-06-27 16:08:26,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:08:26,239.239 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:08:26,332.332 INFO    ] No existing commands found in stream
[2026-06-27 16:08:31,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:08:31,343.343 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-27 16:08:31,975.975 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 16:08:31,977.977 INFO    ] Checking for system updates...
[2026-06-27 16:08:32,002.002 INFO    ] 200
[2026-06-27 16:08:32,004.004 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:08:32,039.039 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:08:32,041.041 INFO    ] No update needed
[2026-06-27 16:08:32,043.043 INFO    ] Checking for camera pi updates...
[2026-06-27 16:08:32,064.064 INFO    ] 200
[2026-06-27 16:08:32,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:08:32,095.095 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:08:32,127.127 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:08:32,128.128 INFO    ] No camera update needed
[2026-06-27 16:08:32,130.130 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:08:32,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:08:32,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:08:32,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:08:34,180.180 INFO    ] ================================================
[2026-06-27 16:08:34,196.196 INFO    ] Launching Daemon at Sat Jun 27 16:08:34 IST 2026
[2026-06-27 16:08:34,207.207 INFO    ] ================================================
[2026-06-27 16:08:34,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:08:34
[2026-06-27 16:08:34,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:08:34,977.977 INFO    ] Initializing speech engine...
[2026-06-27 16:08:34,985.985 INFO    ] 2026-06-27 16:08:34
[2026-06-27 16:08:35,201.201 INFO    ] 2026-06-27 16:08:35
[2026-06-27 16:08:35,230.230 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:08:35,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:08:35,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:08:35,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:08:35,619.619 INFO    ] time= 27/06/2026 16:08:35
[2026-06-27 16:08:35,653.653 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:08:35,659.659 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:08:35,728.728 INFO    ] No existing commands found in stream
[2026-06-27 16:08:40,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:08:40,745.745 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-27 16:08:41,839.839 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 16:08:41,840.840 INFO    ] Checking for system updates...
[2026-06-27 16:08:41,861.861 INFO    ] 200
[2026-06-27 16:08:41,863.863 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:08:41,894.894 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:08:41,895.895 INFO    ] No update needed
[2026-06-27 16:08:41,897.897 INFO    ] Checking for camera pi updates...
[2026-06-27 16:08:41,917.917 INFO    ] 200
[2026-06-27 16:08:41,918.918 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:08:41,941.941 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:08:41,983.983 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:08:41,990.990 INFO    ] No camera update needed
[2026-06-27 16:08:41,991.991 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:08:41,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:08:41,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:08:41,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:08:44,039.039 INFO    ] ================================================
[2026-06-27 16:08:44,055.055 INFO    ] Launching Daemon at Sat Jun 27 16:08:44 IST 2026
[2026-06-27 16:08:44,066.066 INFO    ] ================================================
[2026-06-27 16:08:44,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:08:44
[2026-06-27 16:08:44,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:08:44,882.882 INFO    ] Initializing speech engine...
[2026-06-27 16:08:44,887.887 INFO    ] 2026-06-27 16:08:44
[2026-06-27 16:08:45,093.093 INFO    ] 2026-06-27 16:08:45
[2026-06-27 16:08:45,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:08:45,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:08:45,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:08:45,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:08:45,522.522 INFO    ] time= 27/06/2026 16:08:45
[2026-06-27 16:08:45,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:08:45,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:08:45,642.642 INFO    ] No existing commands found in stream
[2026-06-27 16:08:50,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:08:50,654.654 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-27 16:08:53,865.865 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 16:08:53,866.866 INFO    ] Checking for system updates...
[2026-06-27 16:08:53,889.889 INFO    ] 200
[2026-06-27 16:08:53,890.890 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:08:53,921.921 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:08:53,923.923 INFO    ] No update needed
[2026-06-27 16:08:53,925.925 INFO    ] Checking for camera pi updates...
[2026-06-27 16:08:53,944.944 INFO    ] 200
[2026-06-27 16:08:53,945.945 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:08:53,968.968 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:08:54,004.004 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:08:54,006.006 INFO    ] No camera update needed
[2026-06-27 16:08:54,007.007 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:08:54,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:08:54,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:08:54,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:08:56,055.055 INFO    ] ================================================
[2026-06-27 16:08:56,071.071 INFO    ] Launching Daemon at Sat Jun 27 16:08:56 IST 2026
[2026-06-27 16:08:56,082.082 INFO    ] ================================================
[2026-06-27 16:08:56,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:08:56
[2026-06-27 16:08:56,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:08:56,876.876 INFO    ] Initializing speech engine...
[2026-06-27 16:08:56,888.888 INFO    ] 2026-06-27 16:08:56
[2026-06-27 16:08:57,098.098 INFO    ] 2026-06-27 16:08:57
[2026-06-27 16:08:57,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:08:57,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:08:57,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:08:57,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:08:57,540.540 INFO    ] time= 27/06/2026 16:08:57
[2026-06-27 16:08:57,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:08:57,548.548 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:08:57,670.670 INFO    ] No existing commands found in stream
[2026-06-27 16:09:02,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:09:02,676.676 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-27 16:09:06,959.959 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 16:09:06,960.960 INFO    ] Checking for system updates...
[2026-06-27 16:09:06,982.982 INFO    ] 200
[2026-06-27 16:09:06,984.984 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:09:07,014.014 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:09:07,016.016 INFO    ] No update needed
[2026-06-27 16:09:07,017.017 INFO    ] Checking for camera pi updates...
[2026-06-27 16:09:07,038.038 INFO    ] 200
[2026-06-27 16:09:07,040.040 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:09:07,069.069 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:09:07,113.113 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:09:07,114.114 INFO    ] No camera update needed
[2026-06-27 16:09:07,115.115 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:09:07,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:09:07,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:09:07,122.122 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:09:09,163.163 INFO    ] ================================================
[2026-06-27 16:09:09,179.179 INFO    ] Launching Daemon at Sat Jun 27 16:09:09 IST 2026
[2026-06-27 16:09:09,189.189 INFO    ] ================================================
[2026-06-27 16:09:09,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:09:09
[2026-06-27 16:09:09,851.851 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:09:09,995.995 INFO    ] Initializing speech engine...
[2026-06-27 16:09:10,001.001 INFO    ] 2026-06-27 16:09:09
[2026-06-27 16:09:10,208.208 INFO    ] 2026-06-27 16:09:10
[2026-06-27 16:09:10,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:09:10,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:09:10,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:09:10,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:09:10,657.657 INFO    ] time= 27/06/2026 16:09:10
[2026-06-27 16:09:10,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:09:10,664.664 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:09:10,732.732 INFO    ] No existing commands found in stream
[2026-06-27 16:09:15,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:09:15,744.744 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-27 16:09:20,148.148 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 16:09:20,150.150 INFO    ] Checking for system updates...
[2026-06-27 16:09:20,172.172 INFO    ] 200
[2026-06-27 16:09:20,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:09:20,207.207 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:09:20,208.208 INFO    ] No update needed
[2026-06-27 16:09:20,209.209 INFO    ] Checking for camera pi updates...
[2026-06-27 16:09:20,229.229 INFO    ] 200
[2026-06-27 16:09:20,230.230 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:09:20,256.256 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:09:20,302.302 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:09:20,304.304 INFO    ] No camera update needed
[2026-06-27 16:09:20,305.305 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:09:20,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:09:20,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:09:20,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:09:22,350.350 INFO    ] ================================================
[2026-06-27 16:09:22,365.365 INFO    ] Launching Daemon at Sat Jun 27 16:09:22 IST 2026
[2026-06-27 16:09:22,376.376 INFO    ] ================================================
[2026-06-27 16:09:22,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:09:22
[2026-06-27 16:09:23,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:09:23,166.166 INFO    ] Initializing speech engine...
[2026-06-27 16:09:23,180.180 INFO    ] 2026-06-27 16:09:23
[2026-06-27 16:09:23,395.395 INFO    ] 2026-06-27 16:09:23
[2026-06-27 16:09:23,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:09:23,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:09:23,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:09:23,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:09:23,835.835 INFO    ] time= 27/06/2026 16:09:23
[2026-06-27 16:09:23,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:09:23,890.890 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:09:23,966.966 INFO    ] No existing commands found in stream
[2026-06-27 16:09:28,979.979 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:09:28,982.982 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-27 16:09:29,594.594 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:09:29,595.595 INFO    ] Checking for system updates...
[2026-06-27 16:09:29,616.616 INFO    ] 200
[2026-06-27 16:09:29,617.617 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:09:29,647.647 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:09:29,649.649 INFO    ] No update needed
[2026-06-27 16:09:29,650.650 INFO    ] Checking for camera pi updates...
[2026-06-27 16:09:29,670.670 INFO    ] 200
[2026-06-27 16:09:29,672.672 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:09:29,696.696 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:09:29,742.742 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:09:29,743.743 INFO    ] No camera update needed
[2026-06-27 16:09:29,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:09:29,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:09:29,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:09:29,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:09:31,789.789 INFO    ] ================================================
[2026-06-27 16:09:31,807.807 INFO    ] Launching Daemon at Sat Jun 27 16:09:31 IST 2026
[2026-06-27 16:09:31,819.819 INFO    ] ================================================
[2026-06-27 16:09:32,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:09:32
[2026-06-27 16:09:32,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:09:32,699.699 INFO    ] Initializing speech engine...
[2026-06-27 16:09:32,712.712 INFO    ] 2026-06-27 16:09:32
[2026-06-27 16:09:32,937.937 INFO    ] 2026-06-27 16:09:32
[2026-06-27 16:09:32,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:09:33,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:09:33,180.180 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:09:33,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:09:33,395.395 INFO    ] time= 27/06/2026 16:09:33
[2026-06-27 16:09:33,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:09:33,425.425 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:09:33,524.524 INFO    ] No existing commands found in stream
[2026-06-27 16:09:38,532.532 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:09:38,535.535 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-27 16:09:40,049.049 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:09:40,050.050 INFO    ] Checking for system updates...
[2026-06-27 16:09:40,070.070 INFO    ] 200
[2026-06-27 16:09:40,072.072 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:09:40,103.103 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:09:40,104.104 INFO    ] No update needed
[2026-06-27 16:09:40,105.105 INFO    ] Checking for camera pi updates...
[2026-06-27 16:09:40,125.125 INFO    ] 200
[2026-06-27 16:09:40,127.127 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:09:40,150.150 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:09:40,196.196 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:09:40,197.197 INFO    ] No camera update needed
[2026-06-27 16:09:40,198.198 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:09:40,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:09:40,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:09:40,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:09:42,247.247 INFO    ] ================================================
[2026-06-27 16:09:42,263.263 INFO    ] Launching Daemon at Sat Jun 27 16:09:42 IST 2026
[2026-06-27 16:09:42,274.274 INFO    ] ================================================
[2026-06-27 16:09:42,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:09:42
[2026-06-27 16:09:42,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:09:43,059.059 INFO    ] Initializing speech engine...
[2026-06-27 16:09:43,069.069 INFO    ] 2026-06-27 16:09:43
[2026-06-27 16:09:43,255.255 INFO    ] 2026-06-27 16:09:43
[2026-06-27 16:09:43,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:09:43,503.503 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:09:43,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:09:43,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:09:43,735.735 INFO    ] time= 27/06/2026 16:09:43
[2026-06-27 16:09:43,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:09:43,743.743 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:09:43,835.835 INFO    ] No existing commands found in stream
[2026-06-27 16:09:48,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:09:48,853.853 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-27 16:09:51,571.571 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 16:09:51,573.573 INFO    ] Checking for system updates...
[2026-06-27 16:09:51,594.594 INFO    ] 200
[2026-06-27 16:09:51,595.595 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:09:51,627.627 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:09:51,629.629 INFO    ] No update needed
[2026-06-27 16:09:51,630.630 INFO    ] Checking for camera pi updates...
[2026-06-27 16:09:51,650.650 INFO    ] 200
[2026-06-27 16:09:51,652.652 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:09:51,677.677 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:09:51,724.724 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:09:51,726.726 INFO    ] No camera update needed
[2026-06-27 16:09:51,727.727 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:09:51,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:09:51,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:09:51,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:09:53,775.775 INFO    ] ================================================
[2026-06-27 16:09:53,791.791 INFO    ] Launching Daemon at Sat Jun 27 16:09:53 IST 2026
[2026-06-27 16:09:53,803.803 INFO    ] ================================================
[2026-06-27 16:09:54,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:09:54
[2026-06-27 16:09:54,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:09:54,605.605 INFO    ] Initializing speech engine...
[2026-06-27 16:09:54,614.614 INFO    ] 2026-06-27 16:09:54
[2026-06-27 16:09:54,829.829 INFO    ] 2026-06-27 16:09:54
[2026-06-27 16:09:54,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:09:55,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:09:55,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:09:55,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:09:55,255.255 INFO    ] time= 27/06/2026 16:09:55
[2026-06-27 16:09:55,280.280 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:09:55,286.286 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:09:55,379.379 INFO    ] No existing commands found in stream
[2026-06-27 16:10:00,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:10:00,390.390 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-27 16:10:02,045.045 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:10:02,048.048 INFO    ] Checking for system updates...
[2026-06-27 16:10:02,131.131 INFO    ] 200
[2026-06-27 16:10:02,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:10:02,272.272 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:10:02,275.275 INFO    ] No update needed
[2026-06-27 16:10:02,278.278 INFO    ] Checking for camera pi updates...
[2026-06-27 16:10:02,396.396 INFO    ] 200
[2026-06-27 16:10:02,408.408 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:10:02,449.449 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:10:02,479.479 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:10:02,481.481 INFO    ] No camera update needed
[2026-06-27 16:10:02,484.484 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:10:02,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:10:02,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:10:02,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:10:04,552.552 INFO    ] ================================================
[2026-06-27 16:10:04,567.567 INFO    ] Launching Daemon at Sat Jun 27 16:10:04 IST 2026
[2026-06-27 16:10:04,578.578 INFO    ] ================================================
[2026-06-27 16:10:04,922.922 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:10:04
[2026-06-27 16:10:05,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:10:05,371.371 INFO    ] Initializing speech engine...
[2026-06-27 16:10:05,376.376 INFO    ] 2026-06-27 16:10:05
[2026-06-27 16:10:05,585.585 INFO    ] 2026-06-27 16:10:05
[2026-06-27 16:10:05,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:10:05,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:10:05,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:10:05,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:10:06,048.048 INFO    ] time= 27/06/2026 16:10:05
[2026-06-27 16:10:06,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:10:06,097.097 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:10:06,173.173 INFO    ] No existing commands found in stream
[2026-06-27 16:10:11,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:10:11,187.187 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-27 16:10:13,354.354 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 16:10:13,355.355 INFO    ] Checking for system updates...
[2026-06-27 16:10:13,376.376 INFO    ] 200
[2026-06-27 16:10:13,377.377 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:10:13,408.408 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:10:13,410.410 INFO    ] No update needed
[2026-06-27 16:10:13,411.411 INFO    ] Checking for camera pi updates...
[2026-06-27 16:10:13,430.430 INFO    ] 200
[2026-06-27 16:10:13,432.432 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:10:13,457.457 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:10:13,610.610 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:10:13,611.611 INFO    ] No camera update needed
[2026-06-27 16:10:13,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:10:13,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:10:13,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:10:13,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:10:15,657.657 INFO    ] ================================================
[2026-06-27 16:10:15,672.672 INFO    ] Launching Daemon at Sat Jun 27 16:10:15 IST 2026
[2026-06-27 16:10:15,683.683 INFO    ] ================================================
[2026-06-27 16:10:16,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:10:16
[2026-06-27 16:10:16,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:10:16,540.540 INFO    ] Initializing speech engine...
[2026-06-27 16:10:16,550.550 INFO    ] 2026-06-27 16:10:16
[2026-06-27 16:10:16,759.759 INFO    ] 2026-06-27 16:10:16
[2026-06-27 16:10:16,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:10:16,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:10:16,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:10:17,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:10:17,204.204 INFO    ] time= 27/06/2026 16:10:17
[2026-06-27 16:10:17,210.210 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:10:17,211.211 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:10:17,279.279 INFO    ] No existing commands found in stream
[2026-06-27 16:10:22,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:10:22,302.302 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-27 16:10:25,059.059 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 16:10:25,060.060 INFO    ] Checking for system updates...
[2026-06-27 16:10:25,082.082 INFO    ] 200
[2026-06-27 16:10:25,084.084 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:10:25,114.114 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:10:25,116.116 INFO    ] No update needed
[2026-06-27 16:10:25,117.117 INFO    ] Checking for camera pi updates...
[2026-06-27 16:10:25,137.137 INFO    ] 200
[2026-06-27 16:10:25,139.139 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:10:25,162.162 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:10:25,208.208 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:10:25,209.209 INFO    ] No camera update needed
[2026-06-27 16:10:25,211.211 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:10:25,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:10:25,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:10:25,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:10:27,257.257 INFO    ] ================================================
[2026-06-27 16:10:27,272.272 INFO    ] Launching Daemon at Sat Jun 27 16:10:27 IST 2026
[2026-06-27 16:10:27,283.283 INFO    ] ================================================
[2026-06-27 16:10:27,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:10:27
[2026-06-27 16:10:28,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:10:28,158.158 INFO    ] Initializing speech engine...
[2026-06-27 16:10:28,169.169 INFO    ] 2026-06-27 16:10:28
[2026-06-27 16:10:28,383.383 INFO    ] 2026-06-27 16:10:28
[2026-06-27 16:10:28,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:10:28,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:10:28,610.610 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:10:28,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:10:28,832.832 INFO    ] time= 27/06/2026 16:10:28
[2026-06-27 16:10:28,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:10:28,836.836 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:10:28,905.905 INFO    ] No existing commands found in stream
[2026-06-27 16:10:33,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:10:33,918.918 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-27 16:10:35,111.111 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 16:10:35,112.112 INFO    ] Checking for system updates...
[2026-06-27 16:10:35,133.133 INFO    ] 200
[2026-06-27 16:10:35,135.135 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:10:35,168.168 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:10:35,170.170 INFO    ] No update needed
[2026-06-27 16:10:35,171.171 INFO    ] Checking for camera pi updates...
[2026-06-27 16:10:35,190.190 INFO    ] 200
[2026-06-27 16:10:35,192.192 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:10:35,215.215 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:10:35,260.260 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:10:35,262.262 INFO    ] No camera update needed
[2026-06-27 16:10:35,263.263 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:10:35,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:10:35,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:10:35,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:10:37,310.310 INFO    ] ================================================
[2026-06-27 16:10:37,325.325 INFO    ] Launching Daemon at Sat Jun 27 16:10:37 IST 2026
[2026-06-27 16:10:37,336.336 INFO    ] ================================================
[2026-06-27 16:10:37,669.669 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:10:37
[2026-06-27 16:10:37,982.982 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:10:38,114.114 INFO    ] Initializing speech engine...
[2026-06-27 16:10:38,117.117 INFO    ] 2026-06-27 16:10:38
[2026-06-27 16:10:38,336.336 INFO    ] 2026-06-27 16:10:38
[2026-06-27 16:10:38,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:10:38,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:10:38,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:10:38,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:10:38,784.784 INFO    ] time= 27/06/2026 16:10:38
[2026-06-27 16:10:38,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:10:38,791.791 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:10:38,884.884 INFO    ] No existing commands found in stream
[2026-06-27 16:10:43,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:10:43,896.896 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-27 16:10:44,601.601 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 16:10:44,602.602 INFO    ] Checking for system updates...
[2026-06-27 16:10:44,623.623 INFO    ] 200
[2026-06-27 16:10:44,625.625 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:10:44,655.655 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:10:44,657.657 INFO    ] No update needed
[2026-06-27 16:10:44,658.658 INFO    ] Checking for camera pi updates...
[2026-06-27 16:10:44,679.679 INFO    ] 200
[2026-06-27 16:10:44,681.681 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:10:44,706.706 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:10:44,749.749 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:10:44,750.750 INFO    ] No camera update needed
[2026-06-27 16:10:44,751.751 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:10:44,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:10:44,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:10:44,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:10:46,797.797 INFO    ] ================================================
[2026-06-27 16:10:46,813.813 INFO    ] Launching Daemon at Sat Jun 27 16:10:46 IST 2026
[2026-06-27 16:10:46,824.824 INFO    ] ================================================
[2026-06-27 16:10:47,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:10:47
[2026-06-27 16:10:47,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:10:47,637.637 INFO    ] Initializing speech engine...
[2026-06-27 16:10:47,642.642 INFO    ] 2026-06-27 16:10:47
[2026-06-27 16:10:47,835.835 INFO    ] 2026-06-27 16:10:47
[2026-06-27 16:10:47,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:10:48,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:10:48,112.112 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:10:48,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:10:48,316.316 INFO    ] time= 27/06/2026 16:10:48
[2026-06-27 16:10:48,346.346 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:10:48,369.369 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:10:48,446.446 INFO    ] No existing commands found in stream
[2026-06-27 16:10:53,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:10:53,459.459 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-27 16:10:55,360.360 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 16:10:55,362.362 INFO    ] Checking for system updates...
[2026-06-27 16:10:55,384.384 INFO    ] 200
[2026-06-27 16:10:55,385.385 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:10:55,418.418 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:10:55,419.419 INFO    ] No update needed
[2026-06-27 16:10:55,420.420 INFO    ] Checking for camera pi updates...
[2026-06-27 16:10:55,440.440 INFO    ] 200
[2026-06-27 16:10:55,442.442 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:10:55,465.465 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:10:55,494.494 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:10:55,496.496 INFO    ] No camera update needed
[2026-06-27 16:10:55,497.497 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:10:55,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:10:55,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:10:55,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:10:57,550.550 INFO    ] ================================================
[2026-06-27 16:10:57,565.565 INFO    ] Launching Daemon at Sat Jun 27 16:10:57 IST 2026
[2026-06-27 16:10:57,576.576 INFO    ] ================================================
[2026-06-27 16:10:57,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:10:57
[2026-06-27 16:10:58,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:10:58,422.422 INFO    ] Initializing speech engine...
[2026-06-27 16:10:58,428.428 INFO    ] 2026-06-27 16:10:58
[2026-06-27 16:10:58,637.637 INFO    ] 2026-06-27 16:10:58
[2026-06-27 16:10:58,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:10:58,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:10:58,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:10:59,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:10:59,083.083 INFO    ] time= 27/06/2026 16:10:59
[2026-06-27 16:10:59,085.085 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:10:59,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:10:59,155.155 INFO    ] No existing commands found in stream
[2026-06-27 16:11:04,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:11:04,170.170 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-27 16:11:05,197.197 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:11:05,198.198 INFO    ] Checking for system updates...
[2026-06-27 16:11:05,221.221 INFO    ] 200
[2026-06-27 16:11:05,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:11:05,254.254 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:11:05,256.256 INFO    ] No update needed
[2026-06-27 16:11:05,257.257 INFO    ] Checking for camera pi updates...
[2026-06-27 16:11:05,277.277 INFO    ] 200
[2026-06-27 16:11:05,279.279 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:11:05,304.304 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:11:05,356.356 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:11:05,358.358 INFO    ] No camera update needed
[2026-06-27 16:11:05,359.359 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:11:05,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:11:05,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:11:05,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:11:07,408.408 INFO    ] ================================================
[2026-06-27 16:11:07,424.424 INFO    ] Launching Daemon at Sat Jun 27 16:11:07 IST 2026
[2026-06-27 16:11:07,438.438 INFO    ] ================================================
[2026-06-27 16:11:07,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:11:07
[2026-06-27 16:11:08,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:11:08,243.243 INFO    ] Initializing speech engine...
[2026-06-27 16:11:08,248.248 INFO    ] 2026-06-27 16:11:08
[2026-06-27 16:11:08,453.453 INFO    ] 2026-06-27 16:11:08
[2026-06-27 16:11:08,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:11:08,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:11:08,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:11:08,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:11:08,962.962 INFO    ] time= 27/06/2026 16:11:08
[2026-06-27 16:11:08,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:11:08,989.989 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:11:09,088.088 INFO    ] No existing commands found in stream
[2026-06-27 16:11:14,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:11:14,101.101 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-27 16:11:16,449.449 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 16:11:16,451.451 INFO    ] Checking for system updates...
[2026-06-27 16:11:16,474.474 INFO    ] 200
[2026-06-27 16:11:16,476.476 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:11:16,513.513 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:11:16,515.515 INFO    ] No update needed
[2026-06-27 16:11:16,516.516 INFO    ] Checking for camera pi updates...
[2026-06-27 16:11:16,539.539 INFO    ] 200
[2026-06-27 16:11:16,540.540 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:11:16,564.564 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:11:16,606.606 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:11:16,608.608 INFO    ] No camera update needed
[2026-06-27 16:11:16,609.609 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:11:16,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:11:16,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:11:16,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:11:18,666.666 INFO    ] ================================================
[2026-06-27 16:11:18,682.682 INFO    ] Launching Daemon at Sat Jun 27 16:11:18 IST 2026
[2026-06-27 16:11:18,693.693 INFO    ] ================================================
[2026-06-27 16:11:19,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:11:19
[2026-06-27 16:11:19,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:11:19,557.557 INFO    ] Initializing speech engine...
[2026-06-27 16:11:19,570.570 INFO    ] 2026-06-27 16:11:19
[2026-06-27 16:11:19,784.784 INFO    ] 2026-06-27 16:11:19
[2026-06-27 16:11:19,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:11:20,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:11:20,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:11:20,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:11:20,230.230 INFO    ] time= 27/06/2026 16:11:20
[2026-06-27 16:11:20,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:11:20,234.234 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:11:20,301.301 INFO    ] No existing commands found in stream
[2026-06-27 16:11:25,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:11:25,329.329 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-27 16:11:26,685.685 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:11:26,686.686 INFO    ] Checking for system updates...
[2026-06-27 16:11:26,707.707 INFO    ] 200
[2026-06-27 16:11:26,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:11:26,741.741 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:11:26,742.742 INFO    ] No update needed
[2026-06-27 16:11:26,744.744 INFO    ] Checking for camera pi updates...
[2026-06-27 16:11:26,764.764 INFO    ] 200
[2026-06-27 16:11:26,766.766 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:11:26,789.789 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:11:26,834.834 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:11:26,836.836 INFO    ] No camera update needed
[2026-06-27 16:11:26,837.837 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:11:26,839.839 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:11:26,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:11:26,845.845 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:11:28,887.887 INFO    ] ================================================
[2026-06-27 16:11:28,902.902 INFO    ] Launching Daemon at Sat Jun 27 16:11:28 IST 2026
[2026-06-27 16:11:28,913.913 INFO    ] ================================================
[2026-06-27 16:11:29,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:11:29
[2026-06-27 16:11:29,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:11:29,727.727 INFO    ] Initializing speech engine...
[2026-06-27 16:11:29,732.732 INFO    ] 2026-06-27 16:11:29
[2026-06-27 16:11:29,935.935 INFO    ] 2026-06-27 16:11:29
[2026-06-27 16:11:29,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:11:30,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:11:30,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:11:30,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:11:30,379.379 INFO    ] time= 27/06/2026 16:11:30
[2026-06-27 16:11:30,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:11:30,387.387 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:11:30,454.454 INFO    ] No existing commands found in stream
[2026-06-27 16:11:35,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:11:35,471.471 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-27 16:11:36,464.464 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:11:36,465.465 INFO    ] Checking for system updates...
[2026-06-27 16:11:36,487.487 INFO    ] 200
[2026-06-27 16:11:36,488.488 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:11:36,519.519 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:11:36,520.520 INFO    ] No update needed
[2026-06-27 16:11:36,522.522 INFO    ] Checking for camera pi updates...
[2026-06-27 16:11:36,545.545 INFO    ] 200
[2026-06-27 16:11:36,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:11:36,572.572 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:11:36,610.610 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:11:36,611.611 INFO    ] No camera update needed
[2026-06-27 16:11:36,612.612 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:11:36,614.614 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:11:36,617.617 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:11:36,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:11:38,657.657 INFO    ] ================================================
[2026-06-27 16:11:38,672.672 INFO    ] Launching Daemon at Sat Jun 27 16:11:38 IST 2026
[2026-06-27 16:11:38,684.684 INFO    ] ================================================
[2026-06-27 16:11:39,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:11:39
[2026-06-27 16:11:39,404.404 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:11:39,559.559 INFO    ] Initializing speech engine...
[2026-06-27 16:11:39,565.565 INFO    ] 2026-06-27 16:11:39
[2026-06-27 16:11:39,779.779 INFO    ] 2026-06-27 16:11:39
[2026-06-27 16:11:39,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:11:39,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:11:40,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:11:40,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:11:40,232.232 INFO    ] time= 27/06/2026 16:11:40
[2026-06-27 16:11:40,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:11:40,240.240 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:11:40,307.307 INFO    ] No existing commands found in stream
[2026-06-27 16:11:45,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:11:45,320.320 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-27 16:11:47,700.700 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 16:11:47,702.702 INFO    ] Checking for system updates...
[2026-06-27 16:11:47,725.725 INFO    ] 200
[2026-06-27 16:11:47,727.727 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:11:47,767.767 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:11:47,769.769 INFO    ] No update needed
[2026-06-27 16:11:47,770.770 INFO    ] Checking for camera pi updates...
[2026-06-27 16:11:47,790.790 INFO    ] 200
[2026-06-27 16:11:47,791.791 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:11:47,814.814 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:11:47,858.858 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:11:47,859.859 INFO    ] No camera update needed
[2026-06-27 16:11:47,860.860 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:11:47,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:11:47,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:11:47,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:11:49,907.907 INFO    ] ================================================
[2026-06-27 16:11:49,924.924 INFO    ] Launching Daemon at Sat Jun 27 16:11:49 IST 2026
[2026-06-27 16:11:49,935.935 INFO    ] ================================================
[2026-06-27 16:11:50,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:11:50
[2026-06-27 16:11:50,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:11:50,803.803 INFO    ] Initializing speech engine...
[2026-06-27 16:11:50,810.810 INFO    ] 2026-06-27 16:11:50
[2026-06-27 16:11:51,015.015 INFO    ] 2026-06-27 16:11:50
[2026-06-27 16:11:51,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:11:51,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:11:51,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:11:51,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:11:51,652.652 INFO    ] time= 27/06/2026 16:11:51
[2026-06-27 16:11:51,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:11:51,659.659 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:11:51,729.729 INFO    ] No existing commands found in stream
[2026-06-27 16:11:56,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:11:56,742.742 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-27 16:11:58,009.009 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 16:11:58,011.011 INFO    ] Checking for system updates...
[2026-06-27 16:11:58,032.032 INFO    ] 200
[2026-06-27 16:11:58,034.034 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:11:58,065.065 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:11:58,067.067 INFO    ] No update needed
[2026-06-27 16:11:58,068.068 INFO    ] Checking for camera pi updates...
[2026-06-27 16:11:58,088.088 INFO    ] 200
[2026-06-27 16:11:58,090.090 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:11:58,113.113 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:11:58,169.169 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:11:58,170.170 INFO    ] No camera update needed
[2026-06-27 16:11:58,171.171 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:11:58,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:11:58,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:11:58,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:12:00,217.217 INFO    ] ================================================
[2026-06-27 16:12:00,234.234 INFO    ] Launching Daemon at Sat Jun 27 16:12:00 IST 2026
[2026-06-27 16:12:00,246.246 INFO    ] ================================================
[2026-06-27 16:12:00,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:12:00
[2026-06-27 16:12:00,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:12:01,113.113 INFO    ] Initializing speech engine...
[2026-06-27 16:12:01,117.117 INFO    ] 2026-06-27 16:12:01
[2026-06-27 16:12:01,327.327 INFO    ] 2026-06-27 16:12:01
[2026-06-27 16:12:01,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:12:01,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:12:01,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:12:01,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:12:01,696.696 INFO    ] time= 27/06/2026 16:12:01
[2026-06-27 16:12:01,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:12:01,704.704 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:12:01,791.791 INFO    ] No existing commands found in stream
[2026-06-27 16:12:06,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:12:06,804.804 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-27 16:12:08,861.861 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:12:08,862.862 INFO    ] Checking for system updates...
[2026-06-27 16:12:08,885.885 INFO    ] 200
[2026-06-27 16:12:08,886.886 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:12:08,922.922 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:12:08,924.924 INFO    ] No update needed
[2026-06-27 16:12:08,926.926 INFO    ] Checking for camera pi updates...
[2026-06-27 16:12:08,950.950 INFO    ] 200
[2026-06-27 16:12:08,951.951 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:12:08,978.978 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:12:09,020.020 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:12:09,022.022 INFO    ] No camera update needed
[2026-06-27 16:12:09,023.023 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:12:09,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:12:09,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:12:09,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:12:11,070.070 INFO    ] ================================================
[2026-06-27 16:12:11,086.086 INFO    ] Launching Daemon at Sat Jun 27 16:12:11 IST 2026
[2026-06-27 16:12:11,097.097 INFO    ] ================================================
[2026-06-27 16:12:11,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:12:11
[2026-06-27 16:12:11,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:12:11,911.911 INFO    ] Initializing speech engine...
[2026-06-27 16:12:11,915.915 INFO    ] 2026-06-27 16:12:11
[2026-06-27 16:12:12,119.119 INFO    ] 2026-06-27 16:12:12
[2026-06-27 16:12:12,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:12:12,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:12:12,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:12:12,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:12:12,680.680 INFO    ] time= 27/06/2026 16:12:12
[2026-06-27 16:12:12,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:12:12,685.685 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:12:12,772.772 INFO    ] No existing commands found in stream
[2026-06-27 16:12:17,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:12:17,785.785 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-27 16:12:20,182.182 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:12:20,184.184 INFO    ] Checking for system updates...
[2026-06-27 16:12:20,205.205 INFO    ] 200
[2026-06-27 16:12:20,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:12:20,237.237 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:12:20,239.239 INFO    ] No update needed
[2026-06-27 16:12:20,240.240 INFO    ] Checking for camera pi updates...
[2026-06-27 16:12:20,260.260 INFO    ] 200
[2026-06-27 16:12:20,262.262 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:12:20,286.286 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:12:20,428.428 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:12:20,429.429 INFO    ] No camera update needed
[2026-06-27 16:12:20,431.431 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:12:20,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:12:20,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:12:20,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:12:22,470.470 INFO    ] ================================================
[2026-06-27 16:12:22,486.486 INFO    ] Launching Daemon at Sat Jun 27 16:12:22 IST 2026
[2026-06-27 16:12:22,498.498 INFO    ] ================================================
[2026-06-27 16:12:22,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:12:22
[2026-06-27 16:12:23,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:12:23,277.277 INFO    ] Initializing speech engine...
[2026-06-27 16:12:23,282.282 INFO    ] 2026-06-27 16:12:23
[2026-06-27 16:12:23,502.502 INFO    ] 2026-06-27 16:12:23
[2026-06-27 16:12:23,532.532 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:12:23,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:12:23,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:12:23,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:12:23,954.954 INFO    ] time= 27/06/2026 16:12:23
[2026-06-27 16:12:23,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:12:23,961.961 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:12:24,029.029 INFO    ] No existing commands found in stream
[2026-06-27 16:12:29,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:12:29,056.056 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-27 16:12:31,124.124 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:12:31,125.125 INFO    ] Checking for system updates...
[2026-06-27 16:12:31,146.146 INFO    ] 200
[2026-06-27 16:12:31,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:12:31,181.181 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:12:31,182.182 INFO    ] No update needed
[2026-06-27 16:12:31,183.183 INFO    ] Checking for camera pi updates...
[2026-06-27 16:12:31,206.206 INFO    ] 200
[2026-06-27 16:12:31,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:12:31,238.238 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:12:31,272.272 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:12:31,274.274 INFO    ] No camera update needed
[2026-06-27 16:12:31,276.276 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:12:31,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:12:31,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:12:31,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:12:33,317.317 INFO    ] ================================================
[2026-06-27 16:12:33,333.333 INFO    ] Launching Daemon at Sat Jun 27 16:12:33 IST 2026
[2026-06-27 16:12:33,344.344 INFO    ] ================================================
[2026-06-27 16:12:33,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:12:33
[2026-06-27 16:12:34,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:12:34,148.148 INFO    ] Initializing speech engine...
[2026-06-27 16:12:34,161.161 INFO    ] 2026-06-27 16:12:34
[2026-06-27 16:12:34,381.381 INFO    ] 2026-06-27 16:12:34
[2026-06-27 16:12:34,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:12:34,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:12:34,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:12:34,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:12:34,811.811 INFO    ] time= 27/06/2026 16:12:34
[2026-06-27 16:12:34,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:12:34,839.839 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:12:34,907.907 INFO    ] No existing commands found in stream
[2026-06-27 16:12:39,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:12:39,919.919 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-27 16:12:41,028.028 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 16:12:41,030.030 INFO    ] Checking for system updates...
[2026-06-27 16:12:41,052.052 INFO    ] 200
[2026-06-27 16:12:41,054.054 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:12:41,090.090 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:12:41,092.092 INFO    ] No update needed
[2026-06-27 16:12:41,093.093 INFO    ] Checking for camera pi updates...
[2026-06-27 16:12:41,116.116 INFO    ] 200
[2026-06-27 16:12:41,118.118 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:12:41,141.141 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:12:41,184.184 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:12:41,186.186 INFO    ] No camera update needed
[2026-06-27 16:12:41,187.187 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:12:41,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:12:41,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:12:41,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:12:43,235.235 INFO    ] ================================================
[2026-06-27 16:12:43,251.251 INFO    ] Launching Daemon at Sat Jun 27 16:12:43 IST 2026
[2026-06-27 16:12:43,262.262 INFO    ] ================================================
[2026-06-27 16:12:43,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:12:43
[2026-06-27 16:12:43,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:12:44,075.075 INFO    ] Initializing speech engine...
[2026-06-27 16:12:44,079.079 INFO    ] 2026-06-27 16:12:44
[2026-06-27 16:12:44,290.290 INFO    ] 2026-06-27 16:12:44
[2026-06-27 16:12:44,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:12:44,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:12:44,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:12:44,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:12:44,822.822 INFO    ] time= 27/06/2026 16:12:44
[2026-06-27 16:12:44,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:12:44,832.832 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:12:44,932.932 INFO    ] No existing commands found in stream
[2026-06-27 16:12:49,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:12:49,949.949 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-27 16:12:52,770.770 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 16:12:52,771.771 INFO    ] Checking for system updates...
[2026-06-27 16:12:52,792.792 INFO    ] 200
[2026-06-27 16:12:52,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:12:52,824.824 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:12:52,825.825 INFO    ] No update needed
[2026-06-27 16:12:52,826.826 INFO    ] Checking for camera pi updates...
[2026-06-27 16:12:52,846.846 INFO    ] 200
[2026-06-27 16:12:52,847.847 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:12:52,871.871 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:12:52,925.925 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:12:52,927.927 INFO    ] No camera update needed
[2026-06-27 16:12:52,928.928 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:12:52,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:12:52,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:12:52,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:12:54,974.974 INFO    ] ================================================
[2026-06-27 16:12:54,991.991 INFO    ] Launching Daemon at Sat Jun 27 16:12:54 IST 2026
[2026-06-27 16:12:55,002.002 INFO    ] ================================================
[2026-06-27 16:12:55,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:12:55
[2026-06-27 16:12:55,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:12:55,879.879 INFO    ] Initializing speech engine...
[2026-06-27 16:12:55,883.883 INFO    ] 2026-06-27 16:12:55
[2026-06-27 16:12:56,094.094 INFO    ] 2026-06-27 16:12:56
[2026-06-27 16:12:56,124.124 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:12:56,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:12:56,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:12:56,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:12:56,526.526 INFO    ] time= 27/06/2026 16:12:56
[2026-06-27 16:12:56,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:12:56,556.556 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:12:56,625.625 INFO    ] No existing commands found in stream
[2026-06-27 16:13:01,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:13:01,643.643 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-27 16:13:02,472.472 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:13:02,475.475 INFO    ] Checking for system updates...
[2026-06-27 16:13:02,510.510 INFO    ] 200
[2026-06-27 16:13:02,512.512 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:13:02,554.554 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:13:02,556.556 INFO    ] No update needed
[2026-06-27 16:13:02,558.558 INFO    ] Checking for camera pi updates...
[2026-06-27 16:13:02,585.585 INFO    ] 200
[2026-06-27 16:13:02,587.587 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:13:02,618.618 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:13:02,647.647 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:13:02,649.649 INFO    ] No camera update needed
[2026-06-27 16:13:02,651.651 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:13:02,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:13:02,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:13:02,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:13:04,702.702 INFO    ] ================================================
[2026-06-27 16:13:04,718.718 INFO    ] Launching Daemon at Sat Jun 27 16:13:04 IST 2026
[2026-06-27 16:13:04,729.729 INFO    ] ================================================
[2026-06-27 16:13:05,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:13:05
[2026-06-27 16:13:05,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:13:05,618.618 INFO    ] Initializing speech engine...
[2026-06-27 16:13:05,624.624 INFO    ] 2026-06-27 16:13:05
[2026-06-27 16:13:05,835.835 INFO    ] 2026-06-27 16:13:05
[2026-06-27 16:13:05,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:13:06,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:13:06,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:13:06,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:13:06,298.298 INFO    ] time= 27/06/2026 16:13:06
[2026-06-27 16:13:06,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:13:06,307.307 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:13:06,377.377 INFO    ] No existing commands found in stream
[2026-06-27 16:13:11,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:13:11,391.391 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-27 16:13:14,299.299 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:13:14,301.301 INFO    ] Checking for system updates...
[2026-06-27 16:13:14,321.321 INFO    ] 200
[2026-06-27 16:13:14,322.322 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:13:14,354.354 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:13:14,356.356 INFO    ] No update needed
[2026-06-27 16:13:14,357.357 INFO    ] Checking for camera pi updates...
[2026-06-27 16:13:14,376.376 INFO    ] 200
[2026-06-27 16:13:14,378.378 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:13:14,404.404 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:13:14,448.448 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:13:14,450.450 INFO    ] No camera update needed
[2026-06-27 16:13:14,451.451 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:13:14,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:13:14,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:13:14,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:13:16,496.496 INFO    ] ================================================
[2026-06-27 16:13:16,512.512 INFO    ] Launching Daemon at Sat Jun 27 16:13:16 IST 2026
[2026-06-27 16:13:16,523.523 INFO    ] ================================================
[2026-06-27 16:13:16,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:13:16
[2026-06-27 16:13:17,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:13:17,396.396 INFO    ] Initializing speech engine...
[2026-06-27 16:13:17,401.401 INFO    ] 2026-06-27 16:13:17
[2026-06-27 16:13:17,609.609 INFO    ] 2026-06-27 16:13:17
[2026-06-27 16:13:17,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:13:17,826.826 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:13:17,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:13:17,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:13:18,024.024 INFO    ] time= 27/06/2026 16:13:17
[2026-06-27 16:13:18,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:13:18,063.063 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:13:18,131.131 INFO    ] No existing commands found in stream
[2026-06-27 16:13:23,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:13:23,167.167 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-27 16:13:24,527.527 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 16:13:24,528.528 INFO    ] Checking for system updates...
[2026-06-27 16:13:24,549.549 INFO    ] 200
[2026-06-27 16:13:24,551.551 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:13:24,585.585 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:13:24,587.587 INFO    ] No update needed
[2026-06-27 16:13:24,588.588 INFO    ] Checking for camera pi updates...
[2026-06-27 16:13:24,612.612 INFO    ] 200
[2026-06-27 16:13:24,613.613 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:13:24,641.641 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:13:24,686.686 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:13:24,688.688 INFO    ] No camera update needed
[2026-06-27 16:13:24,689.689 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:13:24,691.691 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:13:24,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:13:24,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:13:26,736.736 INFO    ] ================================================
[2026-06-27 16:13:26,752.752 INFO    ] Launching Daemon at Sat Jun 27 16:13:26 IST 2026
[2026-06-27 16:13:26,763.763 INFO    ] ================================================
[2026-06-27 16:13:27,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:13:27
[2026-06-27 16:13:27,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:13:27,619.619 INFO    ] Initializing speech engine...
[2026-06-27 16:13:27,623.623 INFO    ] 2026-06-27 16:13:27
[2026-06-27 16:13:27,830.830 INFO    ] 2026-06-27 16:13:27
[2026-06-27 16:13:27,859.859 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:13:28,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:13:28,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:13:28,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:13:28,258.258 INFO    ] time= 27/06/2026 16:13:28
[2026-06-27 16:13:28,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:13:28,280.280 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:13:28,347.347 INFO    ] No existing commands found in stream
[2026-06-27 16:13:33,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:13:33,365.365 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-27 16:13:34,536.536 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 16:13:34,538.538 INFO    ] Checking for system updates...
[2026-06-27 16:13:34,559.559 INFO    ] 200
[2026-06-27 16:13:34,560.560 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:13:34,592.592 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:13:34,594.594 INFO    ] No update needed
[2026-06-27 16:13:34,596.596 INFO    ] Checking for camera pi updates...
[2026-06-27 16:13:34,616.616 INFO    ] 200
[2026-06-27 16:13:34,617.617 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:13:34,641.641 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:13:34,682.682 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:13:34,684.684 INFO    ] No camera update needed
[2026-06-27 16:13:34,686.686 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:13:34,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:13:34,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:13:34,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:13:36,735.735 INFO    ] ================================================
[2026-06-27 16:13:36,750.750 INFO    ] Launching Daemon at Sat Jun 27 16:13:36 IST 2026
[2026-06-27 16:13:36,761.761 INFO    ] ================================================
[2026-06-27 16:13:37,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:13:37
[2026-06-27 16:13:37,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:13:37,549.549 INFO    ] Initializing speech engine...
[2026-06-27 16:13:37,553.553 INFO    ] 2026-06-27 16:13:37
[2026-06-27 16:13:37,744.744 INFO    ] 2026-06-27 16:13:37
[2026-06-27 16:13:37,789.789 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:13:37,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:13:38,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:13:38,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:13:38,210.210 INFO    ] time= 27/06/2026 16:13:38
[2026-06-27 16:13:38,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:13:38,270.270 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:13:38,348.348 INFO    ] No existing commands found in stream
[2026-06-27 16:13:43,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:13:43,360.360 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-27 16:13:44,984.984 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 16:13:44,986.986 INFO    ] Checking for system updates...
[2026-06-27 16:13:45,008.008 INFO    ] 200
[2026-06-27 16:13:45,009.009 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:13:45,040.040 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:13:45,041.041 INFO    ] No update needed
[2026-06-27 16:13:45,042.042 INFO    ] Checking for camera pi updates...
[2026-06-27 16:13:45,062.062 INFO    ] 200
[2026-06-27 16:13:45,064.064 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:13:45,087.087 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:13:45,137.137 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:13:45,139.139 INFO    ] No camera update needed
[2026-06-27 16:13:45,140.140 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:13:45,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:13:45,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:13:45,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:13:47,187.187 INFO    ] ================================================
[2026-06-27 16:13:47,203.203 INFO    ] Launching Daemon at Sat Jun 27 16:13:47 IST 2026
[2026-06-27 16:13:47,214.214 INFO    ] ================================================
[2026-06-27 16:13:47,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:13:47
[2026-06-27 16:13:47,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:13:48,094.094 INFO    ] Initializing speech engine...
[2026-06-27 16:13:48,100.100 INFO    ] 2026-06-27 16:13:48
[2026-06-27 16:13:48,317.317 INFO    ] 2026-06-27 16:13:48
[2026-06-27 16:13:48,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:13:48,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:13:48,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:13:48,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:13:48,767.767 INFO    ] time= 27/06/2026 16:13:48
[2026-06-27 16:13:48,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:13:48,774.774 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:13:48,841.841 INFO    ] No existing commands found in stream
[2026-06-27 16:13:53,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:13:53,855.855 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-27 16:13:56,176.176 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 16:13:56,178.178 INFO    ] Checking for system updates...
[2026-06-27 16:13:56,200.200 INFO    ] 200
[2026-06-27 16:13:56,201.201 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:13:56,232.232 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:13:56,234.234 INFO    ] No update needed
[2026-06-27 16:13:56,235.235 INFO    ] Checking for camera pi updates...
[2026-06-27 16:13:56,259.259 INFO    ] 200
[2026-06-27 16:13:56,260.260 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:13:56,284.284 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:13:56,318.318 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:13:56,319.319 INFO    ] No camera update needed
[2026-06-27 16:13:56,321.321 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:13:56,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:13:56,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:13:56,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:13:58,366.366 INFO    ] ================================================
[2026-06-27 16:13:58,382.382 INFO    ] Launching Daemon at Sat Jun 27 16:13:58 IST 2026
[2026-06-27 16:13:58,394.394 INFO    ] ================================================
[2026-06-27 16:13:58,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:13:58
[2026-06-27 16:13:59,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:13:59,206.206 INFO    ] Initializing speech engine...
[2026-06-27 16:13:59,216.216 INFO    ] 2026-06-27 16:13:59
[2026-06-27 16:13:59,421.421 INFO    ] 2026-06-27 16:13:59
[2026-06-27 16:13:59,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:13:59,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:13:59,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:13:59,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:13:59,855.855 INFO    ] time= 27/06/2026 16:13:59
[2026-06-27 16:13:59,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:13:59,868.868 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:13:59,960.960 INFO    ] No existing commands found in stream
[2026-06-27 16:14:04,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:14:04,987.987 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-27 16:14:05,634.634 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:14:05,636.636 INFO    ] Checking for system updates...
[2026-06-27 16:14:05,656.656 INFO    ] 200
[2026-06-27 16:14:05,657.657 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:14:05,688.688 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:14:05,690.690 INFO    ] No update needed
[2026-06-27 16:14:05,691.691 INFO    ] Checking for camera pi updates...
[2026-06-27 16:14:05,712.712 INFO    ] 200
[2026-06-27 16:14:05,713.713 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:14:05,737.737 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:14:05,781.781 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:14:05,782.782 INFO    ] No camera update needed
[2026-06-27 16:14:05,784.784 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:14:05,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:14:05,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:14:05,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:14:07,831.831 INFO    ] ================================================
[2026-06-27 16:14:07,847.847 INFO    ] Launching Daemon at Sat Jun 27 16:14:07 IST 2026
[2026-06-27 16:14:07,858.858 INFO    ] ================================================
[2026-06-27 16:14:08,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:14:08
[2026-06-27 16:14:08,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:14:08,658.658 INFO    ] Initializing speech engine...
[2026-06-27 16:14:08,666.666 INFO    ] 2026-06-27 16:14:08
[2026-06-27 16:14:08,880.880 INFO    ] 2026-06-27 16:14:08
[2026-06-27 16:14:08,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:14:09,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:14:09,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:14:09,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:14:09,306.306 INFO    ] time= 27/06/2026 16:14:09
[2026-06-27 16:14:09,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:14:09,335.335 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:14:09,426.426 INFO    ] No existing commands found in stream
[2026-06-27 16:14:14,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:14:14,443.443 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-27 16:14:16,278.278 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 16:14:16,280.280 INFO    ] Checking for system updates...
[2026-06-27 16:14:16,301.301 INFO    ] 200
[2026-06-27 16:14:16,303.303 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:14:16,334.334 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:14:16,336.336 INFO    ] No update needed
[2026-06-27 16:14:16,337.337 INFO    ] Checking for camera pi updates...
[2026-06-27 16:14:16,358.358 INFO    ] 200
[2026-06-27 16:14:16,359.359 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:14:16,385.385 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:14:16,433.433 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:14:16,435.435 INFO    ] No camera update needed
[2026-06-27 16:14:16,436.436 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:14:16,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:14:16,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:14:16,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:14:18,484.484 INFO    ] ================================================
[2026-06-27 16:14:18,500.500 INFO    ] Launching Daemon at Sat Jun 27 16:14:18 IST 2026
[2026-06-27 16:14:18,510.510 INFO    ] ================================================
[2026-06-27 16:14:18,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:14:18
[2026-06-27 16:14:19,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:14:19,321.321 INFO    ] Initializing speech engine...
[2026-06-27 16:14:19,327.327 INFO    ] 2026-06-27 16:14:19
[2026-06-27 16:14:19,534.534 INFO    ] 2026-06-27 16:14:19
[2026-06-27 16:14:19,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:14:19,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:14:19,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:14:19,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:14:19,977.977 INFO    ] time= 27/06/2026 16:14:19
[2026-06-27 16:14:19,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:14:19,984.984 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:14:20,052.052 INFO    ] No existing commands found in stream
[2026-06-27 16:14:25,071.071 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:14:25,074.074 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-27 16:14:26,511.511 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 16:14:26,512.512 INFO    ] Checking for system updates...
[2026-06-27 16:14:26,533.533 INFO    ] 200
[2026-06-27 16:14:26,535.535 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:14:26,565.565 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:14:26,567.567 INFO    ] No update needed
[2026-06-27 16:14:26,568.568 INFO    ] Checking for camera pi updates...
[2026-06-27 16:14:26,588.588 INFO    ] 200
[2026-06-27 16:14:26,590.590 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:14:26,613.613 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:14:26,756.756 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:14:26,757.757 INFO    ] No camera update needed
[2026-06-27 16:14:26,759.759 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:14:26,760.760 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:14:26,763.763 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:14:26,766.766 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:14:28,805.805 INFO    ] ================================================
[2026-06-27 16:14:28,821.821 INFO    ] Launching Daemon at Sat Jun 27 16:14:28 IST 2026
[2026-06-27 16:14:28,831.831 INFO    ] ================================================
[2026-06-27 16:14:29,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:14:29
[2026-06-27 16:14:29,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:14:29,676.676 INFO    ] Initializing speech engine...
[2026-06-27 16:14:29,689.689 INFO    ] 2026-06-27 16:14:29
[2026-06-27 16:14:29,903.903 INFO    ] 2026-06-27 16:14:29
[2026-06-27 16:14:29,932.932 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:14:30,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:14:30,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:14:30,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:14:30,347.347 INFO    ] time= 27/06/2026 16:14:30
[2026-06-27 16:14:30,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:14:30,358.358 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:14:30,426.426 INFO    ] No existing commands found in stream
[2026-06-27 16:14:35,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:14:35,443.443 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-27 16:14:36,255.255 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:14:36,256.256 INFO    ] Checking for system updates...
[2026-06-27 16:14:36,278.278 INFO    ] 200
[2026-06-27 16:14:36,279.279 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:14:36,312.312 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:14:36,313.313 INFO    ] No update needed
[2026-06-27 16:14:36,315.315 INFO    ] Checking for camera pi updates...
[2026-06-27 16:14:36,337.337 INFO    ] 200
[2026-06-27 16:14:36,338.338 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:14:36,362.362 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:14:36,411.411 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:14:36,412.412 INFO    ] No camera update needed
[2026-06-27 16:14:36,415.415 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:14:36,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:14:36,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:14:36,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:14:38,466.466 INFO    ] ================================================
[2026-06-27 16:14:38,482.482 INFO    ] Launching Daemon at Sat Jun 27 16:14:38 IST 2026
[2026-06-27 16:14:38,492.492 INFO    ] ================================================
[2026-06-27 16:14:38,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:14:38
[2026-06-27 16:14:39,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:14:39,312.312 INFO    ] Initializing speech engine...
[2026-06-27 16:14:39,316.316 INFO    ] 2026-06-27 16:14:39
[2026-06-27 16:14:39,519.519 INFO    ] 2026-06-27 16:14:39
[2026-06-27 16:14:39,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:14:39,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:14:39,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:14:39,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:14:39,960.960 INFO    ] time= 27/06/2026 16:14:39
[2026-06-27 16:14:39,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:14:39,968.968 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:14:40,035.035 INFO    ] No existing commands found in stream
[2026-06-27 16:14:45,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:14:45,062.062 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-27 16:14:47,843.843 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 16:14:47,844.844 INFO    ] Checking for system updates...
[2026-06-27 16:14:47,865.865 INFO    ] 200
[2026-06-27 16:14:47,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:14:47,900.900 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:14:47,901.901 INFO    ] No update needed
[2026-06-27 16:14:47,902.902 INFO    ] Checking for camera pi updates...
[2026-06-27 16:14:47,941.941 INFO    ] 200
[2026-06-27 16:14:47,944.944 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:14:47,988.988 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:14:48,043.043 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:14:48,045.045 INFO    ] No camera update needed
[2026-06-27 16:14:48,046.046 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:14:48,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:14:48,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:14:48,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:14:50,092.092 INFO    ] ================================================
[2026-06-27 16:14:50,108.108 INFO    ] Launching Daemon at Sat Jun 27 16:14:50 IST 2026
[2026-06-27 16:14:50,118.118 INFO    ] ================================================
[2026-06-27 16:14:50,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:14:50
[2026-06-27 16:14:50,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:14:50,999.999 INFO    ] Initializing speech engine...
[2026-06-27 16:14:51,004.004 INFO    ] 2026-06-27 16:14:50
[2026-06-27 16:14:51,218.218 INFO    ] 2026-06-27 16:14:51
[2026-06-27 16:14:51,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:14:51,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:14:51,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:14:51,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:14:51,635.635 INFO    ] time= 27/06/2026 16:14:51
[2026-06-27 16:14:51,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:14:51,696.696 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:14:51,773.773 INFO    ] No existing commands found in stream
[2026-06-27 16:14:56,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:14:56,785.785 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-27 16:15:00,369.369 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:15:00,370.370 INFO    ] Checking for system updates...
[2026-06-27 16:15:00,392.392 INFO    ] 200
[2026-06-27 16:15:00,394.394 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:15:00,424.424 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:15:00,426.426 INFO    ] No update needed
[2026-06-27 16:15:00,427.427 INFO    ] Checking for camera pi updates...
[2026-06-27 16:15:00,447.447 INFO    ] 200
[2026-06-27 16:15:00,449.449 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:15:00,474.474 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:15:00,518.518 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:15:00,520.520 INFO    ] No camera update needed
[2026-06-27 16:15:00,521.521 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:15:00,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:15:00,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:15:00,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:15:02,569.569 INFO    ] ================================================
[2026-06-27 16:15:02,583.583 INFO    ] Launching Daemon at Sat Jun 27 16:15:02 IST 2026
[2026-06-27 16:15:02,594.594 INFO    ] ================================================
[2026-06-27 16:15:02,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:15:02
[2026-06-27 16:15:03,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:15:03,407.407 INFO    ] Initializing speech engine...
[2026-06-27 16:15:03,412.412 INFO    ] 2026-06-27 16:15:03
[2026-06-27 16:15:03,599.599 INFO    ] 2026-06-27 16:15:03
[2026-06-27 16:15:03,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:15:03,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:15:03,825.825 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:15:04,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:15:04,078.078 INFO    ] time= 27/06/2026 16:15:04
[2026-06-27 16:15:04,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:15:04,109.109 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:15:04,181.181 INFO    ] No existing commands found in stream
[2026-06-27 16:15:09,191.191 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:15:09,194.194 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-27 16:15:13,419.419 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 16:15:13,421.421 INFO    ] Checking for system updates...
[2026-06-27 16:15:13,441.441 INFO    ] 200
[2026-06-27 16:15:13,442.442 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:15:13,475.475 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:15:13,476.476 INFO    ] No update needed
[2026-06-27 16:15:13,478.478 INFO    ] Checking for camera pi updates...
[2026-06-27 16:15:13,498.498 INFO    ] 200
[2026-06-27 16:15:13,500.500 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:15:13,526.526 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:15:13,573.573 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:15:13,575.575 INFO    ] No camera update needed
[2026-06-27 16:15:13,580.580 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:15:13,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:15:13,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:15:13,589.589 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:15:15,628.628 INFO    ] ================================================
[2026-06-27 16:15:15,644.644 INFO    ] Launching Daemon at Sat Jun 27 16:15:15 IST 2026
[2026-06-27 16:15:15,654.654 INFO    ] ================================================
[2026-06-27 16:15:15,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:15:15
[2026-06-27 16:15:16,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:15:16,485.485 INFO    ] Initializing speech engine...
[2026-06-27 16:15:16,489.489 INFO    ] 2026-06-27 16:15:16
[2026-06-27 16:15:16,695.695 INFO    ] 2026-06-27 16:15:16
[2026-06-27 16:15:16,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:15:16,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:15:16,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:15:17,131.131 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:15:17,137.137 INFO    ] time= 27/06/2026 16:15:17
[2026-06-27 16:15:17,138.138 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:15:17,140.140 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:15:17,206.206 INFO    ] No existing commands found in stream
[2026-06-27 16:15:22,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:15:22,219.219 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-27 16:15:24,618.618 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 16:15:24,619.619 INFO    ] Checking for system updates...
[2026-06-27 16:15:24,640.640 INFO    ] 200
[2026-06-27 16:15:24,641.641 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:15:24,674.674 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:15:24,675.675 INFO    ] No update needed
[2026-06-27 16:15:24,676.676 INFO    ] Checking for camera pi updates...
[2026-06-27 16:15:24,696.696 INFO    ] 200
[2026-06-27 16:15:24,697.697 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:15:24,722.722 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:15:24,775.775 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:15:24,776.776 INFO    ] No camera update needed
[2026-06-27 16:15:24,778.778 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:15:24,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:15:24,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:15:24,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:15:26,825.825 INFO    ] ================================================
[2026-06-27 16:15:26,840.840 INFO    ] Launching Daemon at Sat Jun 27 16:15:26 IST 2026
[2026-06-27 16:15:26,851.851 INFO    ] ================================================
[2026-06-27 16:15:27,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:15:27
[2026-06-27 16:15:27,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:15:27,640.640 INFO    ] Initializing speech engine...
[2026-06-27 16:15:27,648.648 INFO    ] 2026-06-27 16:15:27
[2026-06-27 16:15:27,870.870 INFO    ] 2026-06-27 16:15:27
[2026-06-27 16:15:27,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:15:28,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:15:28,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:15:28,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:15:28,388.388 INFO    ] time= 27/06/2026 16:15:28
[2026-06-27 16:15:28,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:15:28,415.415 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:15:28,514.514 INFO    ] No existing commands found in stream
[2026-06-27 16:15:33,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:15:33,528.528 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-27 16:15:34,576.576 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 16:15:34,577.577 INFO    ] Checking for system updates...
[2026-06-27 16:15:34,599.599 INFO    ] 200
[2026-06-27 16:15:34,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:15:34,631.631 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:15:34,632.632 INFO    ] No update needed
[2026-06-27 16:15:34,634.634 INFO    ] Checking for camera pi updates...
[2026-06-27 16:15:34,654.654 INFO    ] 200
[2026-06-27 16:15:34,655.655 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:15:34,681.681 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:15:34,720.720 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:15:34,721.721 INFO    ] No camera update needed
[2026-06-27 16:15:34,723.723 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:15:34,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:15:34,727.727 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:15:34,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:15:36,769.769 INFO    ] ================================================
[2026-06-27 16:15:36,784.784 INFO    ] Launching Daemon at Sat Jun 27 16:15:36 IST 2026
[2026-06-27 16:15:36,795.795 INFO    ] ================================================
[2026-06-27 16:15:37,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:15:37
[2026-06-27 16:15:37,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:15:37,610.610 INFO    ] Initializing speech engine...
[2026-06-27 16:15:37,614.614 INFO    ] 2026-06-27 16:15:37
[2026-06-27 16:15:37,817.817 INFO    ] 2026-06-27 16:15:37
[2026-06-27 16:15:37,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:15:38,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:15:38,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:15:38,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:15:38,297.297 INFO    ] time= 27/06/2026 16:15:38
[2026-06-27 16:15:38,325.325 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:15:38,331.331 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:15:38,429.429 INFO    ] No existing commands found in stream
[2026-06-27 16:15:43,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:15:43,440.440 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-27 16:15:43,866.866 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 16:15:43,867.867 INFO    ] Checking for system updates...
[2026-06-27 16:15:43,889.889 INFO    ] 200
[2026-06-27 16:15:43,891.891 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:15:43,921.921 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:15:43,923.923 INFO    ] No update needed
[2026-06-27 16:15:43,924.924 INFO    ] Checking for camera pi updates...
[2026-06-27 16:15:43,944.944 INFO    ] 200
[2026-06-27 16:15:43,945.945 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:15:43,970.970 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:15:44,014.014 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:15:44,016.016 INFO    ] No camera update needed
[2026-06-27 16:15:44,017.017 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:15:44,018.018 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:15:44,021.021 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:15:44,024.024 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:15:46,063.063 INFO    ] ================================================
[2026-06-27 16:15:46,078.078 INFO    ] Launching Daemon at Sat Jun 27 16:15:46 IST 2026
[2026-06-27 16:15:46,089.089 INFO    ] ================================================
[2026-06-27 16:15:46,441.441 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:15:46
[2026-06-27 16:15:46,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:15:46,896.896 INFO    ] Initializing speech engine...
[2026-06-27 16:15:46,907.907 INFO    ] 2026-06-27 16:15:46
[2026-06-27 16:15:47,113.113 INFO    ] 2026-06-27 16:15:47
[2026-06-27 16:15:47,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:15:47,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:15:47,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:15:47,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:15:47,541.541 INFO    ] time= 27/06/2026 16:15:47
[2026-06-27 16:15:47,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:15:47,570.570 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:15:47,638.638 INFO    ] No existing commands found in stream
[2026-06-27 16:15:52,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:15:52,655.655 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-27 16:15:53,141.141 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 16:15:53,142.142 INFO    ] Checking for system updates...
[2026-06-27 16:15:53,164.164 INFO    ] 200
[2026-06-27 16:15:53,166.166 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:15:53,197.197 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:15:53,198.198 INFO    ] No update needed
[2026-06-27 16:15:53,200.200 INFO    ] Checking for camera pi updates...
[2026-06-27 16:15:53,222.222 INFO    ] 200
[2026-06-27 16:15:53,223.223 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:15:53,249.249 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:15:53,295.295 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:15:53,296.296 INFO    ] No camera update needed
[2026-06-27 16:15:53,297.297 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:15:53,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:15:53,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:15:53,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:15:55,345.345 INFO    ] ================================================
[2026-06-27 16:15:55,361.361 INFO    ] Launching Daemon at Sat Jun 27 16:15:55 IST 2026
[2026-06-27 16:15:55,372.372 INFO    ] ================================================
[2026-06-27 16:15:55,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:15:55
[2026-06-27 16:15:56,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:15:56,180.180 INFO    ] Initializing speech engine...
[2026-06-27 16:15:56,184.184 INFO    ] 2026-06-27 16:15:56
[2026-06-27 16:15:56,402.402 INFO    ] 2026-06-27 16:15:56
[2026-06-27 16:15:56,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:15:56,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:15:56,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:15:56,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:15:56,827.827 INFO    ] time= 27/06/2026 16:15:56
[2026-06-27 16:15:56,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:15:56,857.857 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:15:56,925.925 INFO    ] No existing commands found in stream
[2026-06-27 16:16:01,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:16:01,937.937 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-27 16:16:03,589.589 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:16:03,591.591 INFO    ] Checking for system updates...
[2026-06-27 16:16:03,630.630 INFO    ] 200
[2026-06-27 16:16:03,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:16:03,690.690 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:16:03,693.693 INFO    ] No update needed
[2026-06-27 16:16:03,696.696 INFO    ] Checking for camera pi updates...
[2026-06-27 16:16:03,719.719 INFO    ] 200
[2026-06-27 16:16:03,721.721 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:16:03,749.749 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:16:03,797.797 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:16:03,798.798 INFO    ] No camera update needed
[2026-06-27 16:16:03,799.799 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:16:03,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:16:03,804.804 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:16:03,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:16:05,847.847 INFO    ] ================================================
[2026-06-27 16:16:05,863.863 INFO    ] Launching Daemon at Sat Jun 27 16:16:05 IST 2026
[2026-06-27 16:16:05,873.873 INFO    ] ================================================
[2026-06-27 16:16:06,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:16:06
[2026-06-27 16:16:06,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:16:06,656.656 INFO    ] Initializing speech engine...
[2026-06-27 16:16:06,664.664 INFO    ] 2026-06-27 16:16:06
[2026-06-27 16:16:06,875.875 INFO    ] 2026-06-27 16:16:06
[2026-06-27 16:16:06,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:16:07,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:16:07,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:16:07,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:16:07,318.318 INFO    ] time= 27/06/2026 16:16:07
[2026-06-27 16:16:07,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:16:07,325.325 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:16:07,394.394 INFO    ] No existing commands found in stream
[2026-06-27 16:16:12,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:16:12,410.410 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-27 16:16:16,834.834 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:16:16,836.836 INFO    ] Checking for system updates...
[2026-06-27 16:16:16,859.859 INFO    ] 200
[2026-06-27 16:16:16,861.861 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:16:16,896.896 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:16:16,898.898 INFO    ] No update needed
[2026-06-27 16:16:16,900.900 INFO    ] Checking for camera pi updates...
[2026-06-27 16:16:16,926.926 INFO    ] 200
[2026-06-27 16:16:16,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:16:16,955.955 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:16:17,000.000 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:16:17,001.001 INFO    ] No camera update needed
[2026-06-27 16:16:17,003.003 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:16:17,005.005 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:16:17,008.008 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:16:17,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:16:19,036.036 INFO    ] ================================================
[2026-06-27 16:16:19,045.045 INFO    ] Launching Daemon at Sat Jun 27 16:16:19 IST 2026
[2026-06-27 16:16:19,051.051 INFO    ] ================================================
[2026-06-27 16:16:19,358.358 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:16:19
[2026-06-27 16:16:19,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:16:19,856.856 INFO    ] Initializing speech engine...
[2026-06-27 16:16:19,861.861 INFO    ] 2026-06-27 16:16:19
[2026-06-27 16:16:20,079.079 INFO    ] 2026-06-27 16:16:20
[2026-06-27 16:16:20,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:16:20,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:16:20,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:16:20,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:16:20,895.895 INFO    ] time= 27/06/2026 16:16:20
[2026-06-27 16:16:20,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:16:20,917.917 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:16:21,010.010 INFO    ] No existing commands found in stream
[2026-06-27 16:16:26,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:16:26,023.023 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-27 16:16:29,583.583 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 16:16:29,585.585 INFO    ] Checking for system updates...
[2026-06-27 16:16:29,606.606 INFO    ] 200
[2026-06-27 16:16:29,607.607 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:16:29,637.637 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:16:29,638.638 INFO    ] No update needed
[2026-06-27 16:16:29,639.639 INFO    ] Checking for camera pi updates...
[2026-06-27 16:16:29,660.660 INFO    ] 200
[2026-06-27 16:16:29,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:16:29,685.685 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:16:29,825.825 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:16:29,827.827 INFO    ] No camera update needed
[2026-06-27 16:16:29,828.828 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:16:29,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:16:29,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:16:29,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:16:31,874.874 INFO    ] ================================================
[2026-06-27 16:16:31,889.889 INFO    ] Launching Daemon at Sat Jun 27 16:16:31 IST 2026
[2026-06-27 16:16:31,900.900 INFO    ] ================================================
[2026-06-27 16:16:32,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:16:32
[2026-06-27 16:16:32,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:16:32,772.772 INFO    ] Initializing speech engine...
[2026-06-27 16:16:32,781.781 INFO    ] 2026-06-27 16:16:32
[2026-06-27 16:16:33,017.017 INFO    ] 2026-06-27 16:16:32
[2026-06-27 16:16:33,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:16:33,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:16:33,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:16:33,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:16:33,474.474 INFO    ] time= 27/06/2026 16:16:33
[2026-06-27 16:16:33,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:16:33,482.482 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:16:33,549.549 INFO    ] No existing commands found in stream
[2026-06-27 16:16:38,558.558 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:16:38,561.561 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-27 16:16:40,076.076 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 16:16:40,078.078 INFO    ] Checking for system updates...
[2026-06-27 16:16:40,099.099 INFO    ] 200
[2026-06-27 16:16:40,101.101 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:16:40,134.134 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:16:40,136.136 INFO    ] No update needed
[2026-06-27 16:16:40,137.137 INFO    ] Checking for camera pi updates...
[2026-06-27 16:16:40,156.156 INFO    ] 200
[2026-06-27 16:16:40,158.158 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:16:40,182.182 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:16:40,246.246 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:16:40,248.248 INFO    ] No camera update needed
[2026-06-27 16:16:40,249.249 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:16:40,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:16:40,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:16:40,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:16:42,294.294 INFO    ] ================================================
[2026-06-27 16:16:42,310.310 INFO    ] Launching Daemon at Sat Jun 27 16:16:42 IST 2026
[2026-06-27 16:16:42,320.320 INFO    ] ================================================
[2026-06-27 16:16:42,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:16:42
[2026-06-27 16:16:42,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:16:43,122.122 INFO    ] Initializing speech engine...
[2026-06-27 16:16:43,126.126 INFO    ] 2026-06-27 16:16:43
[2026-06-27 16:16:43,354.354 INFO    ] 2026-06-27 16:16:43
[2026-06-27 16:16:43,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:16:43,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:16:43,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:16:43,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:16:43,786.786 INFO    ] time= 27/06/2026 16:16:43
[2026-06-27 16:16:43,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:16:43,844.844 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:16:43,925.925 INFO    ] No existing commands found in stream
[2026-06-27 16:16:48,954.954 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:16:48,957.957 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-27 16:16:52,251.251 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 16:16:52,253.253 INFO    ] Checking for system updates...
[2026-06-27 16:16:52,274.274 INFO    ] 200
[2026-06-27 16:16:52,275.275 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:16:52,308.308 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:16:52,309.309 INFO    ] No update needed
[2026-06-27 16:16:52,310.310 INFO    ] Checking for camera pi updates...
[2026-06-27 16:16:52,334.334 INFO    ] 200
[2026-06-27 16:16:52,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:16:52,363.363 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:16:52,403.403 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:16:52,405.405 INFO    ] No camera update needed
[2026-06-27 16:16:52,406.406 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:16:52,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:16:52,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:16:52,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:16:54,453.453 INFO    ] ================================================
[2026-06-27 16:16:54,468.468 INFO    ] Launching Daemon at Sat Jun 27 16:16:54 IST 2026
[2026-06-27 16:16:54,479.479 INFO    ] ================================================
[2026-06-27 16:16:54,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:16:54
[2026-06-27 16:16:55,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:16:55,268.268 INFO    ] Initializing speech engine...
[2026-06-27 16:16:55,278.278 INFO    ] 2026-06-27 16:16:55
[2026-06-27 16:16:55,483.483 INFO    ] 2026-06-27 16:16:55
[2026-06-27 16:16:55,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:16:55,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:16:55,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:16:55,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:16:55,908.908 INFO    ] time= 27/06/2026 16:16:55
[2026-06-27 16:16:55,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:16:55,937.937 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:16:56,005.005 INFO    ] No existing commands found in stream
[2026-06-27 16:17:01,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:17:01,017.017 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-27 16:17:01,594.594 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:17:01,597.597 INFO    ] Checking for system updates...
[2026-06-27 16:17:01,623.623 INFO    ] 200
[2026-06-27 16:17:01,625.625 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:17:01,667.667 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:17:01,669.669 INFO    ] No update needed
[2026-06-27 16:17:01,672.672 INFO    ] Checking for camera pi updates...
[2026-06-27 16:17:01,713.713 INFO    ] 200
[2026-06-27 16:17:01,715.715 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:17:01,747.747 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:17:01,793.793 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:17:01,795.795 INFO    ] No camera update needed
[2026-06-27 16:17:01,797.797 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:17:01,799.799 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:17:01,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:17:01,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:17:03,850.850 INFO    ] ================================================
[2026-06-27 16:17:03,865.865 INFO    ] Launching Daemon at Sat Jun 27 16:17:03 IST 2026
[2026-06-27 16:17:03,878.878 INFO    ] ================================================
[2026-06-27 16:17:04,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:17:04
[2026-06-27 16:17:04,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:17:04,704.704 INFO    ] Initializing speech engine...
[2026-06-27 16:17:04,712.712 INFO    ] 2026-06-27 16:17:04
[2026-06-27 16:17:04,929.929 INFO    ] 2026-06-27 16:17:04
[2026-06-27 16:17:04,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:17:05,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:17:05,176.176 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:17:05,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:17:05,368.368 INFO    ] time= 27/06/2026 16:17:05
[2026-06-27 16:17:05,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:17:05,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:17:05,526.526 INFO    ] No existing commands found in stream
[2026-06-27 16:17:10,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:17:10,538.538 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-27 16:17:12,322.322 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 16:17:12,324.324 INFO    ] Checking for system updates...
[2026-06-27 16:17:12,346.346 INFO    ] 200
[2026-06-27 16:17:12,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:17:12,380.380 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:17:12,381.381 INFO    ] No update needed
[2026-06-27 16:17:12,382.382 INFO    ] Checking for camera pi updates...
[2026-06-27 16:17:12,405.405 INFO    ] 200
[2026-06-27 16:17:12,406.406 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:17:12,431.431 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:17:12,478.478 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:17:12,480.480 INFO    ] No camera update needed
[2026-06-27 16:17:12,481.481 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:17:12,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:17:12,486.486 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:17:12,489.489 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:17:14,529.529 INFO    ] ================================================
[2026-06-27 16:17:14,544.544 INFO    ] Launching Daemon at Sat Jun 27 16:17:14 IST 2026
[2026-06-27 16:17:14,555.555 INFO    ] ================================================
[2026-06-27 16:17:14,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:17:14
[2026-06-27 16:17:15,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:17:15,341.341 INFO    ] Initializing speech engine...
[2026-06-27 16:17:15,355.355 INFO    ] 2026-06-27 16:17:15
[2026-06-27 16:17:15,573.573 INFO    ] 2026-06-27 16:17:15
[2026-06-27 16:17:15,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:17:15,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:17:15,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:17:15,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:17:16,005.005 INFO    ] time= 27/06/2026 16:17:15
[2026-06-27 16:17:16,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:17:16,055.055 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:17:16,153.153 INFO    ] No existing commands found in stream
[2026-06-27 16:17:21,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:17:21,170.170 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-27 16:17:22,281.281 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 16:17:22,282.282 INFO    ] Checking for system updates...
[2026-06-27 16:17:22,303.303 INFO    ] 200
[2026-06-27 16:17:22,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:17:22,336.336 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:17:22,337.337 INFO    ] No update needed
[2026-06-27 16:17:22,338.338 INFO    ] Checking for camera pi updates...
[2026-06-27 16:17:22,358.358 INFO    ] 200
[2026-06-27 16:17:22,359.359 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:17:22,384.384 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:17:22,429.429 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:17:22,430.430 INFO    ] No camera update needed
[2026-06-27 16:17:22,432.432 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:17:22,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:17:22,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:17:22,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:17:24,477.477 INFO    ] ================================================
[2026-06-27 16:17:24,493.493 INFO    ] Launching Daemon at Sat Jun 27 16:17:24 IST 2026
[2026-06-27 16:17:24,503.503 INFO    ] ================================================
[2026-06-27 16:17:24,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:17:24
[2026-06-27 16:17:25,173.173 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:17:25,311.311 INFO    ] Initializing speech engine...
[2026-06-27 16:17:25,319.319 INFO    ] 2026-06-27 16:17:25
[2026-06-27 16:17:25,525.525 INFO    ] 2026-06-27 16:17:25
[2026-06-27 16:17:25,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:17:25,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:17:25,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:17:25,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:17:25,944.944 INFO    ] time= 27/06/2026 16:17:25
[2026-06-27 16:17:25,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:17:25,973.973 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:17:26,063.063 INFO    ] No existing commands found in stream
[2026-06-27 16:17:31,077.077 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:17:31,080.080 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-27 16:17:31,610.610 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 16:17:31,612.612 INFO    ] Checking for system updates...
[2026-06-27 16:17:31,636.636 INFO    ] 200
[2026-06-27 16:17:31,638.638 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:17:31,672.672 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:17:31,674.674 INFO    ] No update needed
[2026-06-27 16:17:31,676.676 INFO    ] Checking for camera pi updates...
[2026-06-27 16:17:31,697.697 INFO    ] 200
[2026-06-27 16:17:31,699.699 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:17:31,726.726 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:17:31,777.777 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:17:31,779.779 INFO    ] No camera update needed
[2026-06-27 16:17:31,781.781 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:17:31,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:17:31,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:17:31,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:17:33,830.830 INFO    ] ================================================
[2026-06-27 16:17:33,845.845 INFO    ] Launching Daemon at Sat Jun 27 16:17:33 IST 2026
[2026-06-27 16:17:33,856.856 INFO    ] ================================================
[2026-06-27 16:17:34,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:17:34
[2026-06-27 16:17:34,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:17:34,661.661 INFO    ] Initializing speech engine...
[2026-06-27 16:17:34,672.672 INFO    ] 2026-06-27 16:17:34
[2026-06-27 16:17:34,878.878 INFO    ] 2026-06-27 16:17:34
[2026-06-27 16:17:34,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:17:35,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:17:35,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:17:35,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:17:35,318.318 INFO    ] time= 27/06/2026 16:17:35
[2026-06-27 16:17:35,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:17:35,325.325 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:17:35,392.392 INFO    ] No existing commands found in stream
[2026-06-27 16:17:40,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:17:40,404.404 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-27 16:17:42,024.024 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:17:42,025.025 INFO    ] Checking for system updates...
[2026-06-27 16:17:42,047.047 INFO    ] 200
[2026-06-27 16:17:42,048.048 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:17:42,079.079 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:17:42,080.080 INFO    ] No update needed
[2026-06-27 16:17:42,082.082 INFO    ] Checking for camera pi updates...
[2026-06-27 16:17:42,102.102 INFO    ] 200
[2026-06-27 16:17:42,104.104 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:17:42,129.129 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:17:42,170.170 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:17:42,172.172 INFO    ] No camera update needed
[2026-06-27 16:17:42,173.173 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:17:42,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:17:42,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:17:42,180.180 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:17:44,221.221 INFO    ] ================================================
[2026-06-27 16:17:44,236.236 INFO    ] Launching Daemon at Sat Jun 27 16:17:44 IST 2026
[2026-06-27 16:17:44,247.247 INFO    ] ================================================
[2026-06-27 16:17:44,594.594 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:17:44
[2026-06-27 16:17:44,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:17:45,039.039 INFO    ] Initializing speech engine...
[2026-06-27 16:17:45,042.042 INFO    ] 2026-06-27 16:17:45
[2026-06-27 16:17:45,262.262 INFO    ] 2026-06-27 16:17:45
[2026-06-27 16:17:45,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:17:45,477.477 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:17:45,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:17:45,660.660 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:17:45,705.705 INFO    ] time= 27/06/2026 16:17:45
[2026-06-27 16:17:45,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:17:45,717.717 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:17:45,785.785 INFO    ] No existing commands found in stream
[2026-06-27 16:17:50,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:17:50,797.797 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-27 16:17:51,193.193 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 16:17:51,195.195 INFO    ] Checking for system updates...
[2026-06-27 16:17:51,216.216 INFO    ] 200
[2026-06-27 16:17:51,218.218 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:17:51,248.248 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:17:51,250.250 INFO    ] No update needed
[2026-06-27 16:17:51,251.251 INFO    ] Checking for camera pi updates...
[2026-06-27 16:17:51,274.274 INFO    ] 200
[2026-06-27 16:17:51,275.275 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:17:51,300.300 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:17:51,338.338 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:17:51,340.340 INFO    ] No camera update needed
[2026-06-27 16:17:51,341.341 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:17:51,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:17:51,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:17:51,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:17:53,388.388 INFO    ] ================================================
[2026-06-27 16:17:53,404.404 INFO    ] Launching Daemon at Sat Jun 27 16:17:53 IST 2026
[2026-06-27 16:17:53,414.414 INFO    ] ================================================
[2026-06-27 16:17:53,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:17:53
[2026-06-27 16:17:54,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:17:54,197.197 INFO    ] Initializing speech engine...
[2026-06-27 16:17:54,207.207 INFO    ] 2026-06-27 16:17:54
[2026-06-27 16:17:54,415.415 INFO    ] 2026-06-27 16:17:54
[2026-06-27 16:17:54,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:17:54,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:17:54,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:17:54,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:17:54,838.838 INFO    ] time= 27/06/2026 16:17:54
[2026-06-27 16:17:54,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:17:54,866.866 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:17:54,958.958 INFO    ] No existing commands found in stream
[2026-06-27 16:17:59,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:17:59,975.975 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-27 16:18:01,729.729 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 16:18:01,731.731 INFO    ] Checking for system updates...
[2026-06-27 16:18:01,790.790 INFO    ] 200
[2026-06-27 16:18:01,791.791 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:18:01,837.837 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:18:01,839.839 INFO    ] No update needed
[2026-06-27 16:18:01,840.840 INFO    ] Checking for camera pi updates...
[2026-06-27 16:18:01,869.869 INFO    ] 200
[2026-06-27 16:18:01,872.872 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:18:01,914.914 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:18:01,947.947 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:18:01,949.949 INFO    ] No camera update needed
[2026-06-27 16:18:01,951.951 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:18:01,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:18:01,958.958 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:18:01,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:18:04,002.002 INFO    ] ================================================
[2026-06-27 16:18:04,018.018 INFO    ] Launching Daemon at Sat Jun 27 16:18:04 IST 2026
[2026-06-27 16:18:04,029.029 INFO    ] ================================================
[2026-06-27 16:18:04,372.372 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:18:04
[2026-06-27 16:18:04,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:18:04,820.820 INFO    ] Initializing speech engine...
[2026-06-27 16:18:04,823.823 INFO    ] 2026-06-27 16:18:04
[2026-06-27 16:18:05,016.016 INFO    ] 2026-06-27 16:18:05
[2026-06-27 16:18:05,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:18:05,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:18:05,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:18:05,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:18:05,536.536 INFO    ] time= 27/06/2026 16:18:05
[2026-06-27 16:18:05,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:18:05,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:18:05,635.635 INFO    ] No existing commands found in stream
[2026-06-27 16:18:10,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:18:10,649.649 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-27 16:18:14,894.894 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:18:14,895.895 INFO    ] Checking for system updates...
[2026-06-27 16:18:14,917.917 INFO    ] 200
[2026-06-27 16:18:14,919.919 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:18:14,950.950 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:18:14,951.951 INFO    ] No update needed
[2026-06-27 16:18:14,952.952 INFO    ] Checking for camera pi updates...
[2026-06-27 16:18:14,975.975 INFO    ] 200
[2026-06-27 16:18:14,976.976 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:18:15,001.001 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:18:15,046.046 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:18:15,048.048 INFO    ] No camera update needed
[2026-06-27 16:18:15,049.049 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:18:15,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:18:15,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:18:15,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:18:17,095.095 INFO    ] ================================================
[2026-06-27 16:18:17,111.111 INFO    ] Launching Daemon at Sat Jun 27 16:18:17 IST 2026
[2026-06-27 16:18:17,121.121 INFO    ] ================================================
[2026-06-27 16:18:17,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:18:17
[2026-06-27 16:18:17,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:18:17,917.917 INFO    ] Initializing speech engine...
[2026-06-27 16:18:17,925.925 INFO    ] 2026-06-27 16:18:17
[2026-06-27 16:18:18,140.140 INFO    ] 2026-06-27 16:18:18
[2026-06-27 16:18:18,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:18:18,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:18:18,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:18:18,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:18:18,585.585 INFO    ] time= 27/06/2026 16:18:18
[2026-06-27 16:18:18,587.587 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:18:18,593.593 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:18:18,685.685 INFO    ] No existing commands found in stream
[2026-06-27 16:18:23,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:18:23,702.702 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-27 16:18:28,153.153 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 16:18:28,154.154 INFO    ] Checking for system updates...
[2026-06-27 16:18:28,177.177 INFO    ] 200
[2026-06-27 16:18:28,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:18:28,208.208 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:18:28,209.209 INFO    ] No update needed
[2026-06-27 16:18:28,211.211 INFO    ] Checking for camera pi updates...
[2026-06-27 16:18:28,230.230 INFO    ] 200
[2026-06-27 16:18:28,231.231 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:18:28,255.255 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:18:28,312.312 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:18:28,313.313 INFO    ] No camera update needed
[2026-06-27 16:18:28,315.315 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:18:28,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:18:28,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:18:28,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:18:30,360.360 INFO    ] ================================================
[2026-06-27 16:18:30,376.376 INFO    ] Launching Daemon at Sat Jun 27 16:18:30 IST 2026
[2026-06-27 16:18:30,388.388 INFO    ] ================================================
[2026-06-27 16:18:30,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:18:30
[2026-06-27 16:18:31,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:18:31,260.260 INFO    ] Initializing speech engine...
[2026-06-27 16:18:31,272.272 INFO    ] 2026-06-27 16:18:31
[2026-06-27 16:18:31,482.482 INFO    ] 2026-06-27 16:18:31
[2026-06-27 16:18:31,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:18:31,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:18:31,726.726 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:18:31,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:18:31,963.963 INFO    ] time= 27/06/2026 16:18:31
[2026-06-27 16:18:31,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:18:31,973.973 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:18:32,067.067 INFO    ] No existing commands found in stream
[2026-06-27 16:18:37,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:18:37,095.095 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-27 16:18:40,181.181 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:18:40,183.183 INFO    ] Checking for system updates...
[2026-06-27 16:18:40,205.205 INFO    ] 200
[2026-06-27 16:18:40,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:18:40,243.243 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:18:40,245.245 INFO    ] No update needed
[2026-06-27 16:18:40,246.246 INFO    ] Checking for camera pi updates...
[2026-06-27 16:18:40,270.270 INFO    ] 200
[2026-06-27 16:18:40,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:18:40,299.299 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:18:40,343.343 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:18:40,345.345 INFO    ] No camera update needed
[2026-06-27 16:18:40,346.346 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:18:40,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:18:40,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:18:40,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:18:42,395.395 INFO    ] ================================================
[2026-06-27 16:18:42,411.411 INFO    ] Launching Daemon at Sat Jun 27 16:18:42 IST 2026
[2026-06-27 16:18:42,421.421 INFO    ] ================================================
[2026-06-27 16:18:42,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:18:42
[2026-06-27 16:18:43,096.096 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:18:43,226.226 INFO    ] Initializing speech engine...
[2026-06-27 16:18:43,230.230 INFO    ] 2026-06-27 16:18:43
[2026-06-27 16:18:43,448.448 INFO    ] 2026-06-27 16:18:43
[2026-06-27 16:18:43,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:18:43,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:18:43,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:18:43,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:18:43,874.874 INFO    ] time= 27/06/2026 16:18:43
[2026-06-27 16:18:43,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:18:43,903.903 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:18:43,996.996 INFO    ] No existing commands found in stream
[2026-06-27 16:18:49,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:18:49,008.008 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-27 16:18:51,934.934 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:18:51,936.936 INFO    ] Checking for system updates...
[2026-06-27 16:18:51,956.956 INFO    ] 200
[2026-06-27 16:18:51,958.958 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:18:51,991.991 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:18:51,992.992 INFO    ] No update needed
[2026-06-27 16:18:51,994.994 INFO    ] Checking for camera pi updates...
[2026-06-27 16:18:52,014.014 INFO    ] 200
[2026-06-27 16:18:52,016.016 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:18:52,039.039 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:18:52,080.080 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:18:52,081.081 INFO    ] No camera update needed
[2026-06-27 16:18:52,083.083 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:18:52,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:18:52,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:18:52,090.090 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:18:54,132.132 INFO    ] ================================================
[2026-06-27 16:18:54,148.148 INFO    ] Launching Daemon at Sat Jun 27 16:18:54 IST 2026
[2026-06-27 16:18:54,158.158 INFO    ] ================================================
[2026-06-27 16:18:54,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:18:54
[2026-06-27 16:18:54,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:18:55,051.051 INFO    ] Initializing speech engine...
[2026-06-27 16:18:55,055.055 INFO    ] 2026-06-27 16:18:55
[2026-06-27 16:18:55,266.266 INFO    ] 2026-06-27 16:18:55
[2026-06-27 16:18:55,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:18:55,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:18:55,516.516 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:18:55,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:18:55,720.720 INFO    ] time= 27/06/2026 16:18:55
[2026-06-27 16:18:55,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:18:55,724.724 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:18:55,817.817 INFO    ] No existing commands found in stream
[2026-06-27 16:19:00,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:19:00,840.840 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-27 16:19:01,752.752 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:19:01,756.756 INFO    ] Checking for system updates...
[2026-06-27 16:19:01,787.787 INFO    ] 200
[2026-06-27 16:19:01,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:19:01,854.854 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:19:01,856.856 INFO    ] No update needed
[2026-06-27 16:19:01,861.861 INFO    ] Checking for camera pi updates...
[2026-06-27 16:19:01,897.897 INFO    ] 200
[2026-06-27 16:19:01,899.899 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:19:01,929.929 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:19:01,963.963 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:19:01,965.965 INFO    ] No camera update needed
[2026-06-27 16:19:01,967.967 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:19:01,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:19:01,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:19:01,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:19:04,017.017 INFO    ] ================================================
[2026-06-27 16:19:04,033.033 INFO    ] Launching Daemon at Sat Jun 27 16:19:04 IST 2026
[2026-06-27 16:19:04,047.047 INFO    ] ================================================
[2026-06-27 16:19:04,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:19:04
[2026-06-27 16:19:04,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:19:04,866.866 INFO    ] Initializing speech engine...
[2026-06-27 16:19:04,872.872 INFO    ] 2026-06-27 16:19:04
[2026-06-27 16:19:05,081.081 INFO    ] 2026-06-27 16:19:05
[2026-06-27 16:19:05,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:19:05,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:19:05,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:19:05,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:19:05,490.490 INFO    ] time= 27/06/2026 16:19:05
[2026-06-27 16:19:05,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:19:05,534.534 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:19:05,601.601 INFO    ] No existing commands found in stream
[2026-06-27 16:19:10,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:19:10,618.618 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-27 16:19:14,568.568 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:19:14,570.570 INFO    ] Checking for system updates...
[2026-06-27 16:19:14,591.591 INFO    ] 200
[2026-06-27 16:19:14,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:19:14,626.626 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:19:14,627.627 INFO    ] No update needed
[2026-06-27 16:19:14,629.629 INFO    ] Checking for camera pi updates...
[2026-06-27 16:19:14,648.648 INFO    ] 200
[2026-06-27 16:19:14,649.649 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:19:14,678.678 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:19:14,719.719 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:19:14,720.720 INFO    ] No camera update needed
[2026-06-27 16:19:14,721.721 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:19:14,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:19:14,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:19:14,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:19:16,768.768 INFO    ] ================================================
[2026-06-27 16:19:16,784.784 INFO    ] Launching Daemon at Sat Jun 27 16:19:16 IST 2026
[2026-06-27 16:19:16,795.795 INFO    ] ================================================
[2026-06-27 16:19:17,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:19:17
[2026-06-27 16:19:17,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:19:17,683.683 INFO    ] Initializing speech engine...
[2026-06-27 16:19:17,689.689 INFO    ] 2026-06-27 16:19:17
[2026-06-27 16:19:17,897.897 INFO    ] 2026-06-27 16:19:17
[2026-06-27 16:19:17,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:19:18,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:19:18,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:19:18,309.309 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:19:18,342.342 INFO    ] time= 27/06/2026 16:19:18
[2026-06-27 16:19:18,348.348 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:19:18,350.350 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:19:18,417.417 INFO    ] No existing commands found in stream
[2026-06-27 16:19:23,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:19:23,435.435 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-27 16:19:27,290.290 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 16:19:27,291.291 INFO    ] Checking for system updates...
[2026-06-27 16:19:27,313.313 INFO    ] 200
[2026-06-27 16:19:27,314.314 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:19:27,348.348 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:19:27,349.349 INFO    ] No update needed
[2026-06-27 16:19:27,351.351 INFO    ] Checking for camera pi updates...
[2026-06-27 16:19:27,373.373 INFO    ] 200
[2026-06-27 16:19:27,375.375 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:19:27,398.398 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:19:27,442.442 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:19:27,443.443 INFO    ] No camera update needed
[2026-06-27 16:19:27,445.445 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:19:27,446.446 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:19:27,449.449 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:19:27,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:19:29,484.484 INFO    ] ================================================
[2026-06-27 16:19:29,500.500 INFO    ] Launching Daemon at Sat Jun 27 16:19:29 IST 2026
[2026-06-27 16:19:29,511.511 INFO    ] ================================================
[2026-06-27 16:19:29,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:19:29
[2026-06-27 16:19:30,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:19:30,288.288 INFO    ] Initializing speech engine...
[2026-06-27 16:19:30,296.296 INFO    ] 2026-06-27 16:19:30
[2026-06-27 16:19:30,507.507 INFO    ] 2026-06-27 16:19:30
[2026-06-27 16:19:30,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:19:30,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:19:30,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:19:30,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:19:30,941.941 INFO    ] time= 27/06/2026 16:19:30
[2026-06-27 16:19:30,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:19:30,957.957 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:19:31,024.024 INFO    ] No existing commands found in stream
[2026-06-27 16:19:36,033.033 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:19:36,036.036 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-27 16:19:39,158.158 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:19:39,159.159 INFO    ] Checking for system updates...
[2026-06-27 16:19:39,180.180 INFO    ] 200
[2026-06-27 16:19:39,181.181 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:19:39,214.214 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:19:39,215.215 INFO    ] No update needed
[2026-06-27 16:19:39,217.217 INFO    ] Checking for camera pi updates...
[2026-06-27 16:19:39,236.236 INFO    ] 200
[2026-06-27 16:19:39,238.238 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:19:39,263.263 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:19:39,306.306 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:19:39,307.307 INFO    ] No camera update needed
[2026-06-27 16:19:39,309.309 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:19:39,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:19:39,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:19:39,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:19:41,357.357 INFO    ] ================================================
[2026-06-27 16:19:41,373.373 INFO    ] Launching Daemon at Sat Jun 27 16:19:41 IST 2026
[2026-06-27 16:19:41,384.384 INFO    ] ================================================
[2026-06-27 16:19:41,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:19:41
[2026-06-27 16:19:42,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:19:42,228.228 INFO    ] Initializing speech engine...
[2026-06-27 16:19:42,233.233 INFO    ] 2026-06-27 16:19:42
[2026-06-27 16:19:42,441.441 INFO    ] 2026-06-27 16:19:42
[2026-06-27 16:19:42,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:19:42,655.655 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:19:42,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:19:42,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:19:42,865.865 INFO    ] time= 27/06/2026 16:19:42
[2026-06-27 16:19:42,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:19:42,893.893 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:19:42,960.960 INFO    ] No existing commands found in stream
[2026-06-27 16:19:47,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:19:47,975.975 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-27 16:19:49,939.939 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 16:19:49,942.942 INFO    ] Checking for system updates...
[2026-06-27 16:19:49,978.978 INFO    ] 200
[2026-06-27 16:19:49,980.980 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:19:50,043.043 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:19:50,045.045 INFO    ] No update needed
[2026-06-27 16:19:50,048.048 INFO    ] Checking for camera pi updates...
[2026-06-27 16:19:50,079.079 INFO    ] 200
[2026-06-27 16:19:50,080.080 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:19:50,103.103 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:19:50,144.144 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:19:50,145.145 INFO    ] No camera update needed
[2026-06-27 16:19:50,147.147 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:19:50,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:19:50,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:19:50,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:19:52,193.193 INFO    ] ================================================
[2026-06-27 16:19:52,209.209 INFO    ] Launching Daemon at Sat Jun 27 16:19:52 IST 2026
[2026-06-27 16:19:52,221.221 INFO    ] ================================================
[2026-06-27 16:19:52,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:19:52
[2026-06-27 16:19:52,890.890 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:19:53,033.033 INFO    ] Initializing speech engine...
[2026-06-27 16:19:53,038.038 INFO    ] 2026-06-27 16:19:53
[2026-06-27 16:19:53,241.241 INFO    ] 2026-06-27 16:19:53
[2026-06-27 16:19:53,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:19:53,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:19:53,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:19:53,645.645 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:19:53,683.683 INFO    ] time= 27/06/2026 16:19:53
[2026-06-27 16:19:53,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:19:53,690.690 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:19:53,758.758 INFO    ] No existing commands found in stream
[2026-06-27 16:19:58,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:19:58,775.775 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-27 16:20:01,843.843 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 16:20:01,850.850 INFO    ] Checking for system updates...
[2026-06-27 16:20:01,954.954 INFO    ] 200
[2026-06-27 16:20:01,956.956 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:20:02,108.108 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:20:02,111.111 INFO    ] No update needed
[2026-06-27 16:20:02,113.113 INFO    ] Checking for camera pi updates...
[2026-06-27 16:20:02,177.177 INFO    ] 200
[2026-06-27 16:20:02,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:20:02,328.328 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:20:02,383.383 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:20:02,386.386 INFO    ] No camera update needed
[2026-06-27 16:20:02,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:20:02,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:20:02,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:20:02,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:20:04,439.439 INFO    ] ================================================
[2026-06-27 16:20:04,455.455 INFO    ] Launching Daemon at Sat Jun 27 16:20:04 IST 2026
[2026-06-27 16:20:04,467.467 INFO    ] ================================================
[2026-06-27 16:20:04,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:20:04
[2026-06-27 16:20:05,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:20:05,296.296 INFO    ] Initializing speech engine...
[2026-06-27 16:20:05,306.306 INFO    ] 2026-06-27 16:20:05
[2026-06-27 16:20:05,511.511 INFO    ] 2026-06-27 16:20:05
[2026-06-27 16:20:05,539.539 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:20:05,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:20:05,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:20:05,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:20:05,951.951 INFO    ] time= 27/06/2026 16:20:05
[2026-06-27 16:20:05,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:20:05,963.963 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:20:06,030.030 INFO    ] No existing commands found in stream
[2026-06-27 16:20:11,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:20:11,042.042 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-27 16:20:14,926.926 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 16:20:14,928.928 INFO    ] Checking for system updates...
[2026-06-27 16:20:14,950.950 INFO    ] 200
[2026-06-27 16:20:14,952.952 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:20:14,985.985 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:20:14,986.986 INFO    ] No update needed
[2026-06-27 16:20:14,988.988 INFO    ] Checking for camera pi updates...
[2026-06-27 16:20:15,007.007 INFO    ] 200
[2026-06-27 16:20:15,008.008 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:20:15,031.031 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:20:15,074.074 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:20:15,075.075 INFO    ] No camera update needed
[2026-06-27 16:20:15,077.077 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:20:15,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:20:15,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:20:15,084.084 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:20:17,114.114 INFO    ] ================================================
[2026-06-27 16:20:17,123.123 INFO    ] Launching Daemon at Sat Jun 27 16:20:17 IST 2026
[2026-06-27 16:20:17,133.133 INFO    ] ================================================
[2026-06-27 16:20:17,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:20:17
[2026-06-27 16:20:17,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:20:17,896.896 INFO    ] Initializing speech engine...
[2026-06-27 16:20:17,901.901 INFO    ] 2026-06-27 16:20:17
[2026-06-27 16:20:18,106.106 INFO    ] 2026-06-27 16:20:18
[2026-06-27 16:20:18,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:20:18,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:20:18,331.331 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:20:18,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:20:18,531.531 INFO    ] time= 27/06/2026 16:20:18
[2026-06-27 16:20:18,555.555 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:20:18,560.560 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:20:18,628.628 INFO    ] No existing commands found in stream
[2026-06-27 16:20:23,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:20:23,639.639 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-27 16:20:27,300.300 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:20:27,301.301 INFO    ] Checking for system updates...
[2026-06-27 16:20:27,322.322 INFO    ] 200
[2026-06-27 16:20:27,324.324 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:20:27,354.354 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:20:27,356.356 INFO    ] No update needed
[2026-06-27 16:20:27,357.357 INFO    ] Checking for camera pi updates...
[2026-06-27 16:20:27,378.378 INFO    ] 200
[2026-06-27 16:20:27,379.379 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:20:27,403.403 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:20:27,443.443 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:20:27,445.445 INFO    ] No camera update needed
[2026-06-27 16:20:27,446.446 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:20:27,447.447 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:20:27,450.450 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:20:27,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:20:29,492.492 INFO    ] ================================================
[2026-06-27 16:20:29,508.508 INFO    ] Launching Daemon at Sat Jun 27 16:20:29 IST 2026
[2026-06-27 16:20:29,519.519 INFO    ] ================================================
[2026-06-27 16:20:29,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:20:29
[2026-06-27 16:20:30,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:20:30,412.412 INFO    ] Initializing speech engine...
[2026-06-27 16:20:30,419.419 INFO    ] 2026-06-27 16:20:30
[2026-06-27 16:20:30,631.631 INFO    ] 2026-06-27 16:20:30
[2026-06-27 16:20:30,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:20:30,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:20:30,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:20:31,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:20:31,084.084 INFO    ] time= 27/06/2026 16:20:31
[2026-06-27 16:20:31,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:20:31,091.091 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:20:31,160.160 INFO    ] No existing commands found in stream
[2026-06-27 16:20:36,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:20:36,172.172 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-27 16:20:37,786.786 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:20:37,787.787 INFO    ] Checking for system updates...
[2026-06-27 16:20:37,810.810 INFO    ] 200
[2026-06-27 16:20:37,811.811 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:20:37,844.844 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:20:37,846.846 INFO    ] No update needed
[2026-06-27 16:20:37,847.847 INFO    ] Checking for camera pi updates...
[2026-06-27 16:20:37,868.868 INFO    ] 200
[2026-06-27 16:20:37,869.869 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:20:37,896.896 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:20:38,036.036 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:20:38,037.037 INFO    ] No camera update needed
[2026-06-27 16:20:38,039.039 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:20:38,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:20:38,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:20:38,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:20:40,086.086 INFO    ] ================================================
[2026-06-27 16:20:40,102.102 INFO    ] Launching Daemon at Sat Jun 27 16:20:40 IST 2026
[2026-06-27 16:20:40,113.113 INFO    ] ================================================
[2026-06-27 16:20:40,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:20:40
[2026-06-27 16:20:40,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:20:40,994.994 INFO    ] Initializing speech engine...
[2026-06-27 16:20:41,005.005 INFO    ] 2026-06-27 16:20:41
[2026-06-27 16:20:41,218.218 INFO    ] 2026-06-27 16:20:41
[2026-06-27 16:20:41,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:20:41,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:20:41,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:20:41,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:20:41,622.622 INFO    ] time= 27/06/2026 16:20:41
[2026-06-27 16:20:41,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:20:41,675.675 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:20:41,772.772 INFO    ] No existing commands found in stream
[2026-06-27 16:20:46,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:20:46,795.795 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-27 16:20:48,290.290 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:20:48,291.291 INFO    ] Checking for system updates...
[2026-06-27 16:20:48,313.313 INFO    ] 200
[2026-06-27 16:20:48,314.314 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:20:48,348.348 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:20:48,350.350 INFO    ] No update needed
[2026-06-27 16:20:48,351.351 INFO    ] Checking for camera pi updates...
[2026-06-27 16:20:48,375.375 INFO    ] 200
[2026-06-27 16:20:48,377.377 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:20:48,401.401 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:20:48,450.450 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:20:48,451.451 INFO    ] No camera update needed
[2026-06-27 16:20:48,453.453 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:20:48,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:20:48,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:20:48,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:20:50,502.502 INFO    ] ================================================
[2026-06-27 16:20:50,518.518 INFO    ] Launching Daemon at Sat Jun 27 16:20:50 IST 2026
[2026-06-27 16:20:50,529.529 INFO    ] ================================================
[2026-06-27 16:20:50,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:20:50
[2026-06-27 16:20:51,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:20:51,416.416 INFO    ] Initializing speech engine...
[2026-06-27 16:20:51,421.421 INFO    ] 2026-06-27 16:20:51
[2026-06-27 16:20:51,627.627 INFO    ] 2026-06-27 16:20:51
[2026-06-27 16:20:51,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:20:51,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:20:51,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:20:52,042.042 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:20:52,072.072 INFO    ] time= 27/06/2026 16:20:52
[2026-06-27 16:20:52,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:20:52,080.080 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:20:52,147.147 INFO    ] No existing commands found in stream
[2026-06-27 16:20:57,180.180 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:20:57,183.183 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-27 16:21:00,627.627 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:21:00,628.628 INFO    ] Checking for system updates...
[2026-06-27 16:21:00,650.650 INFO    ] 200
[2026-06-27 16:21:00,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:21:00,686.686 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:21:00,687.687 INFO    ] No update needed
[2026-06-27 16:21:00,689.689 INFO    ] Checking for camera pi updates...
[2026-06-27 16:21:00,712.712 INFO    ] 200
[2026-06-27 16:21:00,713.713 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:21:00,739.739 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:21:00,781.781 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:21:00,782.782 INFO    ] No camera update needed
[2026-06-27 16:21:00,784.784 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:21:00,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:21:00,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:21:00,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:21:02,824.824 INFO    ] ================================================
[2026-06-27 16:21:02,833.833 INFO    ] Launching Daemon at Sat Jun 27 16:21:02 IST 2026
[2026-06-27 16:21:02,839.839 INFO    ] ================================================
[2026-06-27 16:21:03,168.168 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:21:03
[2026-06-27 16:21:03,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:21:03,621.621 INFO    ] Initializing speech engine...
[2026-06-27 16:21:03,626.626 INFO    ] 2026-06-27 16:21:03
[2026-06-27 16:21:03,829.829 INFO    ] 2026-06-27 16:21:03
[2026-06-27 16:21:03,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:21:04,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:21:04,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:21:04,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:21:04,302.302 INFO    ] time= 27/06/2026 16:21:04
[2026-06-27 16:21:04,338.338 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:21:04,344.344 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:21:04,422.422 INFO    ] No existing commands found in stream
[2026-06-27 16:21:09,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:21:09,434.434 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-27 16:21:09,858.858 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 16:21:09,860.860 INFO    ] Checking for system updates...
[2026-06-27 16:21:09,882.882 INFO    ] 200
[2026-06-27 16:21:09,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:21:09,914.914 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:21:09,916.916 INFO    ] No update needed
[2026-06-27 16:21:09,917.917 INFO    ] Checking for camera pi updates...
[2026-06-27 16:21:09,936.936 INFO    ] 200
[2026-06-27 16:21:09,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:21:09,962.962 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:21:10,004.004 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:21:10,005.005 INFO    ] No camera update needed
[2026-06-27 16:21:10,007.007 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:21:10,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:21:10,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:21:10,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:21:12,054.054 INFO    ] ================================================
[2026-06-27 16:21:12,069.069 INFO    ] Launching Daemon at Sat Jun 27 16:21:12 IST 2026
[2026-06-27 16:21:12,081.081 INFO    ] ================================================
[2026-06-27 16:21:12,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:21:12
[2026-06-27 16:21:12,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:21:12,973.973 INFO    ] Initializing speech engine...
[2026-06-27 16:21:12,978.978 INFO    ] 2026-06-27 16:21:12
[2026-06-27 16:21:13,191.191 INFO    ] 2026-06-27 16:21:13
[2026-06-27 16:21:13,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:21:13,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:21:13,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:21:13,589.589 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:21:13,632.632 INFO    ] time= 27/06/2026 16:21:13
[2026-06-27 16:21:13,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:21:13,639.639 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:21:13,730.730 INFO    ] No existing commands found in stream
[2026-06-27 16:21:18,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:21:18,743.743 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-27 16:21:22,535.535 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 16:21:22,537.537 INFO    ] Checking for system updates...
[2026-06-27 16:21:22,559.559 INFO    ] 200
[2026-06-27 16:21:22,560.560 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:21:22,591.591 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:21:22,593.593 INFO    ] No update needed
[2026-06-27 16:21:22,594.594 INFO    ] Checking for camera pi updates...
[2026-06-27 16:21:22,615.615 INFO    ] 200
[2026-06-27 16:21:22,616.616 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:21:22,642.642 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:21:22,683.683 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:21:22,685.685 INFO    ] No camera update needed
[2026-06-27 16:21:22,686.686 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:21:22,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:21:22,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:21:22,693.693 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:21:24,732.732 INFO    ] ================================================
[2026-06-27 16:21:24,749.749 INFO    ] Launching Daemon at Sat Jun 27 16:21:24 IST 2026
[2026-06-27 16:21:24,760.760 INFO    ] ================================================
[2026-06-27 16:21:25,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:21:25
[2026-06-27 16:21:25,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:21:25,555.555 INFO    ] Initializing speech engine...
[2026-06-27 16:21:25,564.564 INFO    ] 2026-06-27 16:21:25
[2026-06-27 16:21:25,778.778 INFO    ] 2026-06-27 16:21:25
[2026-06-27 16:21:25,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:21:26,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:21:26,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:21:26,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:21:26,305.305 INFO    ] time= 27/06/2026 16:21:26
[2026-06-27 16:21:26,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:21:26,339.339 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:21:26,468.468 INFO    ] No existing commands found in stream
[2026-06-27 16:21:31,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:21:31,481.481 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-27 16:21:32,458.458 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 16:21:32,461.461 INFO    ] Checking for system updates...
[2026-06-27 16:21:32,486.486 INFO    ] 200
[2026-06-27 16:21:32,488.488 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:21:32,527.527 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:21:32,529.529 INFO    ] No update needed
[2026-06-27 16:21:32,531.531 INFO    ] Checking for camera pi updates...
[2026-06-27 16:21:32,555.555 INFO    ] 200
[2026-06-27 16:21:32,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:21:32,586.586 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:21:32,620.620 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:21:32,621.621 INFO    ] No camera update needed
[2026-06-27 16:21:32,623.623 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:21:32,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:21:32,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:21:32,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:21:34,670.670 INFO    ] ================================================
[2026-06-27 16:21:34,687.687 INFO    ] Launching Daemon at Sat Jun 27 16:21:34 IST 2026
[2026-06-27 16:21:34,698.698 INFO    ] ================================================
[2026-06-27 16:21:35,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:21:35
[2026-06-27 16:21:35,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:21:35,541.541 INFO    ] Initializing speech engine...
[2026-06-27 16:21:35,546.546 INFO    ] 2026-06-27 16:21:35
[2026-06-27 16:21:35,754.754 INFO    ] 2026-06-27 16:21:35
[2026-06-27 16:21:35,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:21:35,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:21:35,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:21:36,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:21:36,195.195 INFO    ] time= 27/06/2026 16:21:36
[2026-06-27 16:21:36,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:21:36,204.204 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:21:36,271.271 INFO    ] No existing commands found in stream
[2026-06-27 16:21:41,281.281 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:21:41,284.284 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-27 16:21:44,267.267 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 16:21:44,268.268 INFO    ] Checking for system updates...
[2026-06-27 16:21:44,291.291 INFO    ] 200
[2026-06-27 16:21:44,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:21:44,322.322 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:21:44,324.324 INFO    ] No update needed
[2026-06-27 16:21:44,325.325 INFO    ] Checking for camera pi updates...
[2026-06-27 16:21:44,346.346 INFO    ] 200
[2026-06-27 16:21:44,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:21:44,371.371 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:21:44,416.416 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:21:44,417.417 INFO    ] No camera update needed
[2026-06-27 16:21:44,419.419 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:21:44,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:21:44,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:21:44,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:21:46,467.467 INFO    ] ================================================
[2026-06-27 16:21:46,483.483 INFO    ] Launching Daemon at Sat Jun 27 16:21:46 IST 2026
[2026-06-27 16:21:46,495.495 INFO    ] ================================================
[2026-06-27 16:21:46,856.856 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:21:46
[2026-06-27 16:21:47,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:21:47,320.320 INFO    ] Initializing speech engine...
[2026-06-27 16:21:47,325.325 INFO    ] 2026-06-27 16:21:47
[2026-06-27 16:21:47,531.531 INFO    ] 2026-06-27 16:21:47
[2026-06-27 16:21:47,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:21:47,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:21:47,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:21:47,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:21:47,971.971 INFO    ] time= 27/06/2026 16:21:47
[2026-06-27 16:21:47,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:21:47,978.978 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:21:48,045.045 INFO    ] No existing commands found in stream
[2026-06-27 16:21:53,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:21:53,072.072 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-27 16:21:54,591.591 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 16:21:54,593.593 INFO    ] Checking for system updates...
[2026-06-27 16:21:54,616.616 INFO    ] 200
[2026-06-27 16:21:54,617.617 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:21:54,650.650 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:21:54,652.652 INFO    ] No update needed
[2026-06-27 16:21:54,653.653 INFO    ] Checking for camera pi updates...
[2026-06-27 16:21:54,672.672 INFO    ] 200
[2026-06-27 16:21:54,674.674 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:21:54,698.698 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:21:54,736.736 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:21:54,737.737 INFO    ] No camera update needed
[2026-06-27 16:21:54,738.738 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:21:54,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:21:54,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:21:54,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:21:56,786.786 INFO    ] ================================================
[2026-06-27 16:21:56,801.801 INFO    ] Launching Daemon at Sat Jun 27 16:21:56 IST 2026
[2026-06-27 16:21:56,812.812 INFO    ] ================================================
[2026-06-27 16:21:57,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:21:57
[2026-06-27 16:21:57,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:21:57,768.768 INFO    ] Initializing speech engine...
[2026-06-27 16:21:57,777.777 INFO    ] 2026-06-27 16:21:57
[2026-06-27 16:21:57,986.986 INFO    ] 2026-06-27 16:21:57
[2026-06-27 16:21:58,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:21:58,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:21:58,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:21:58,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:21:58,464.464 INFO    ] time= 27/06/2026 16:21:58
[2026-06-27 16:21:58,469.469 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:21:58,471.471 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:21:58,544.544 INFO    ] No existing commands found in stream
[2026-06-27 16:22:03,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:22:03,556.556 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-27 16:22:07,409.409 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:22:07,411.411 INFO    ] Checking for system updates...
[2026-06-27 16:22:07,431.431 INFO    ] 200
[2026-06-27 16:22:07,433.433 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:22:07,466.466 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:22:07,467.467 INFO    ] No update needed
[2026-06-27 16:22:07,468.468 INFO    ] Checking for camera pi updates...
[2026-06-27 16:22:07,488.488 INFO    ] 200
[2026-06-27 16:22:07,490.490 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:22:07,517.517 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:22:07,558.558 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:22:07,559.559 INFO    ] No camera update needed
[2026-06-27 16:22:07,560.560 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:22:07,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:22:07,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:22:07,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:22:09,606.606 INFO    ] ================================================
[2026-06-27 16:22:09,622.622 INFO    ] Launching Daemon at Sat Jun 27 16:22:09 IST 2026
[2026-06-27 16:22:09,633.633 INFO    ] ================================================
[2026-06-27 16:22:10,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:22:09
[2026-06-27 16:22:10,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:22:10,494.494 INFO    ] Initializing speech engine...
[2026-06-27 16:22:10,499.499 INFO    ] 2026-06-27 16:22:10
[2026-06-27 16:22:10,707.707 INFO    ] 2026-06-27 16:22:10
[2026-06-27 16:22:10,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:22:10,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:22:10,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:22:11,122.122 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:22:11,148.148 INFO    ] time= 27/06/2026 16:22:11
[2026-06-27 16:22:11,153.153 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:22:11,155.155 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:22:11,222.222 INFO    ] No existing commands found in stream
[2026-06-27 16:22:16,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:22:16,250.250 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-27 16:22:18,907.907 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 16:22:18,908.908 INFO    ] Checking for system updates...
[2026-06-27 16:22:18,929.929 INFO    ] 200
[2026-06-27 16:22:18,931.931 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:22:18,963.963 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:22:18,965.965 INFO    ] No update needed
[2026-06-27 16:22:18,966.966 INFO    ] Checking for camera pi updates...
[2026-06-27 16:22:18,988.988 INFO    ] 200
[2026-06-27 16:22:18,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:22:19,016.016 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:22:19,057.057 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:22:19,059.059 INFO    ] No camera update needed
[2026-06-27 16:22:19,060.060 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:22:19,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:22:19,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:22:19,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:22:21,106.106 INFO    ] ================================================
[2026-06-27 16:22:21,122.122 INFO    ] Launching Daemon at Sat Jun 27 16:22:21 IST 2026
[2026-06-27 16:22:21,132.132 INFO    ] ================================================
[2026-06-27 16:22:21,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:22:21
[2026-06-27 16:22:21,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:22:21,925.925 INFO    ] Initializing speech engine...
[2026-06-27 16:22:21,931.931 INFO    ] 2026-06-27 16:22:21
[2026-06-27 16:22:22,134.134 INFO    ] 2026-06-27 16:22:22
[2026-06-27 16:22:22,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:22:22,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:22:22,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:22:22,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:22:22,555.555 INFO    ] time= 27/06/2026 16:22:22
[2026-06-27 16:22:22,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:22:22,582.582 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:22:22,650.650 INFO    ] No existing commands found in stream
[2026-06-27 16:22:27,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:22:27,685.685 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-27 16:22:28,320.320 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 16:22:28,322.322 INFO    ] Checking for system updates...
[2026-06-27 16:22:28,343.343 INFO    ] 200
[2026-06-27 16:22:28,344.344 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:22:28,375.375 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:22:28,377.377 INFO    ] No update needed
[2026-06-27 16:22:28,378.378 INFO    ] Checking for camera pi updates...
[2026-06-27 16:22:28,398.398 INFO    ] 200
[2026-06-27 16:22:28,399.399 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:22:28,425.425 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:22:28,467.467 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:22:28,469.469 INFO    ] No camera update needed
[2026-06-27 16:22:28,470.470 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:22:28,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:22:28,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:22:28,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:22:30,510.510 INFO    ] ================================================
[2026-06-27 16:22:30,526.526 INFO    ] Launching Daemon at Sat Jun 27 16:22:30 IST 2026
[2026-06-27 16:22:30,538.538 INFO    ] ================================================
[2026-06-27 16:22:30,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:22:30
[2026-06-27 16:22:31,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:22:31,338.338 INFO    ] Initializing speech engine...
[2026-06-27 16:22:31,350.350 INFO    ] 2026-06-27 16:22:31
[2026-06-27 16:22:31,542.542 INFO    ] 2026-06-27 16:22:31
[2026-06-27 16:22:31,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:22:31,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:22:31,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:22:32,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:22:32,054.054 INFO    ] time= 27/06/2026 16:22:32
[2026-06-27 16:22:32,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:22:32,120.120 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:22:32,198.198 INFO    ] No existing commands found in stream
[2026-06-27 16:22:37,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:22:37,209.209 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-27 16:22:41,088.088 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 16:22:41,090.090 INFO    ] Checking for system updates...
[2026-06-27 16:22:41,112.112 INFO    ] 200
[2026-06-27 16:22:41,113.113 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:22:41,143.143 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:22:41,145.145 INFO    ] No update needed
[2026-06-27 16:22:41,146.146 INFO    ] Checking for camera pi updates...
[2026-06-27 16:22:41,166.166 INFO    ] 200
[2026-06-27 16:22:41,167.167 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:22:41,190.190 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:22:41,314.314 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:22:41,315.315 INFO    ] No camera update needed
[2026-06-27 16:22:41,317.317 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:22:41,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:22:41,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:22:41,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:22:43,362.362 INFO    ] ================================================
[2026-06-27 16:22:43,377.377 INFO    ] Launching Daemon at Sat Jun 27 16:22:43 IST 2026
[2026-06-27 16:22:43,387.387 INFO    ] ================================================
[2026-06-27 16:22:43,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:22:43
[2026-06-27 16:22:44,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:22:44,179.179 INFO    ] Initializing speech engine...
[2026-06-27 16:22:44,192.192 INFO    ] 2026-06-27 16:22:44
[2026-06-27 16:22:44,387.387 INFO    ] 2026-06-27 16:22:44
[2026-06-27 16:22:44,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:22:44,646.646 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:22:44,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:22:44,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:22:44,872.872 INFO    ] time= 27/06/2026 16:22:44
[2026-06-27 16:22:44,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:22:44,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:22:44,977.977 INFO    ] No existing commands found in stream
[2026-06-27 16:22:49,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:22:49,989.989 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-27 16:22:51,379.379 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:22:51,380.380 INFO    ] Checking for system updates...
[2026-06-27 16:22:51,401.401 INFO    ] 200
[2026-06-27 16:22:51,403.403 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:22:51,433.433 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:22:51,435.435 INFO    ] No update needed
[2026-06-27 16:22:51,436.436 INFO    ] Checking for camera pi updates...
[2026-06-27 16:22:51,457.457 INFO    ] 200
[2026-06-27 16:22:51,459.459 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:22:51,486.486 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:22:51,542.542 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:22:51,544.544 INFO    ] No camera update needed
[2026-06-27 16:22:51,545.545 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:22:51,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:22:51,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:22:51,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:22:53,593.593 INFO    ] ================================================
[2026-06-27 16:22:53,609.609 INFO    ] Launching Daemon at Sat Jun 27 16:22:53 IST 2026
[2026-06-27 16:22:53,620.620 INFO    ] ================================================
[2026-06-27 16:22:53,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:22:53
[2026-06-27 16:22:54,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:22:54,424.424 INFO    ] Initializing speech engine...
[2026-06-27 16:22:54,429.429 INFO    ] 2026-06-27 16:22:54
[2026-06-27 16:22:54,635.635 INFO    ] 2026-06-27 16:22:54
[2026-06-27 16:22:54,665.665 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:22:54,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:22:54,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:22:55,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:22:55,092.092 INFO    ] time= 27/06/2026 16:22:55
[2026-06-27 16:22:55,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:22:55,123.123 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:22:55,217.217 INFO    ] No existing commands found in stream
[2026-06-27 16:23:00,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:23:00,234.234 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-27 16:23:01,040.040 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:23:01,041.041 INFO    ] Checking for system updates...
[2026-06-27 16:23:01,062.062 INFO    ] 200
[2026-06-27 16:23:01,064.064 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:23:01,094.094 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:23:01,096.096 INFO    ] No update needed
[2026-06-27 16:23:01,097.097 INFO    ] Checking for camera pi updates...
[2026-06-27 16:23:01,118.118 INFO    ] 200
[2026-06-27 16:23:01,119.119 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:23:01,143.143 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:23:01,201.201 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:23:01,202.202 INFO    ] No camera update needed
[2026-06-27 16:23:01,204.204 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:23:01,205.205 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:23:01,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:23:01,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:23:03,242.242 INFO    ] ================================================
[2026-06-27 16:23:03,257.257 INFO    ] Launching Daemon at Sat Jun 27 16:23:03 IST 2026
[2026-06-27 16:23:03,268.268 INFO    ] ================================================
[2026-06-27 16:23:03,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:23:03
[2026-06-27 16:23:03,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:23:04,138.138 INFO    ] Initializing speech engine...
[2026-06-27 16:23:04,144.144 INFO    ] 2026-06-27 16:23:04
[2026-06-27 16:23:04,354.354 INFO    ] 2026-06-27 16:23:04
[2026-06-27 16:23:04,383.383 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:23:04,569.569 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:23:04,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:23:04,795.795 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:23:04,801.801 INFO    ] time= 27/06/2026 16:23:04
[2026-06-27 16:23:04,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:23:04,804.804 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:23:04,896.896 INFO    ] No existing commands found in stream
[2026-06-27 16:23:09,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:23:09,914.914 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-27 16:23:13,999.999 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 16:23:14,000.000 INFO    ] Checking for system updates...
[2026-06-27 16:23:14,022.022 INFO    ] 200
[2026-06-27 16:23:14,024.024 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:23:14,058.058 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:23:14,060.060 INFO    ] No update needed
[2026-06-27 16:23:14,061.061 INFO    ] Checking for camera pi updates...
[2026-06-27 16:23:14,084.084 INFO    ] 200
[2026-06-27 16:23:14,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:23:14,109.109 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:23:14,155.155 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:23:14,156.156 INFO    ] No camera update needed
[2026-06-27 16:23:14,158.158 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:23:14,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:23:14,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:23:14,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:23:16,206.206 INFO    ] ================================================
[2026-06-27 16:23:16,222.222 INFO    ] Launching Daemon at Sat Jun 27 16:23:16 IST 2026
[2026-06-27 16:23:16,233.233 INFO    ] ================================================
[2026-06-27 16:23:16,605.605 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:23:16
[2026-06-27 16:23:16,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:23:17,061.061 INFO    ] Initializing speech engine...
[2026-06-27 16:23:17,066.066 INFO    ] 2026-06-27 16:23:17
[2026-06-27 16:23:17,269.269 INFO    ] 2026-06-27 16:23:17
[2026-06-27 16:23:17,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:23:17,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:23:17,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:23:17,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:23:17,709.709 INFO    ] time= 27/06/2026 16:23:17
[2026-06-27 16:23:17,716.716 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:23:17,717.717 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:23:17,784.784 INFO    ] No existing commands found in stream
[2026-06-27 16:23:22,792.792 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:23:22,796.796 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-27 16:23:23,256.256 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:23:23,257.257 INFO    ] Checking for system updates...
[2026-06-27 16:23:23,278.278 INFO    ] 200
[2026-06-27 16:23:23,280.280 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:23:23,312.312 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:23:23,314.314 INFO    ] No update needed
[2026-06-27 16:23:23,315.315 INFO    ] Checking for camera pi updates...
[2026-06-27 16:23:23,335.335 INFO    ] 200
[2026-06-27 16:23:23,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:23:23,360.360 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:23:23,404.404 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:23:23,406.406 INFO    ] No camera update needed
[2026-06-27 16:23:23,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:23:23,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:23:23,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:23:23,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:23:25,454.454 INFO    ] ================================================
[2026-06-27 16:23:25,469.469 INFO    ] Launching Daemon at Sat Jun 27 16:23:25 IST 2026
[2026-06-27 16:23:25,480.480 INFO    ] ================================================
[2026-06-27 16:23:25,837.837 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:23:25
[2026-06-27 16:23:26,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:23:26,285.285 INFO    ] Initializing speech engine...
[2026-06-27 16:23:26,297.297 INFO    ] 2026-06-27 16:23:26
[2026-06-27 16:23:26,506.506 INFO    ] 2026-06-27 16:23:26
[2026-06-27 16:23:26,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:23:26,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:23:26,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:23:26,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:23:26,954.954 INFO    ] time= 27/06/2026 16:23:26
[2026-06-27 16:23:26,956.956 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:23:26,962.962 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:23:27,054.054 INFO    ] No existing commands found in stream
[2026-06-27 16:23:32,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:23:32,064.064 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-27 16:23:33,785.785 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 16:23:33,786.786 INFO    ] Checking for system updates...
[2026-06-27 16:23:33,807.807 INFO    ] 200
[2026-06-27 16:23:33,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:23:33,839.839 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:23:33,841.841 INFO    ] No update needed
[2026-06-27 16:23:33,842.842 INFO    ] Checking for camera pi updates...
[2026-06-27 16:23:33,861.861 INFO    ] 200
[2026-06-27 16:23:33,862.862 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:23:33,886.886 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:23:33,918.918 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:23:33,920.920 INFO    ] No camera update needed
[2026-06-27 16:23:33,921.921 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:23:33,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:23:33,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:23:33,928.928 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:23:35,966.966 INFO    ] ================================================
[2026-06-27 16:23:35,981.981 INFO    ] Launching Daemon at Sat Jun 27 16:23:35 IST 2026
[2026-06-27 16:23:35,991.991 INFO    ] ================================================
[2026-06-27 16:23:36,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:23:36
[2026-06-27 16:23:36,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:23:36,781.781 INFO    ] Initializing speech engine...
[2026-06-27 16:23:36,786.786 INFO    ] 2026-06-27 16:23:36
[2026-06-27 16:23:36,990.990 INFO    ] 2026-06-27 16:23:36
[2026-06-27 16:23:37,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:23:37,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:23:37,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:23:37,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:23:37,446.446 INFO    ] time= 27/06/2026 16:23:37
[2026-06-27 16:23:37,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:23:37,494.494 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:23:37,586.586 INFO    ] No existing commands found in stream
[2026-06-27 16:23:42,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:23:42,603.603 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-27 16:23:44,095.095 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:23:44,096.096 INFO    ] Checking for system updates...
[2026-06-27 16:23:44,118.118 INFO    ] 200
[2026-06-27 16:23:44,120.120 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:23:44,150.150 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:23:44,151.151 INFO    ] No update needed
[2026-06-27 16:23:44,153.153 INFO    ] Checking for camera pi updates...
[2026-06-27 16:23:44,172.172 INFO    ] 200
[2026-06-27 16:23:44,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:23:44,197.197 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:23:44,245.245 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:23:44,246.246 INFO    ] No camera update needed
[2026-06-27 16:23:44,248.248 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:23:44,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:23:44,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:23:44,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:23:46,295.295 INFO    ] ================================================
[2026-06-27 16:23:46,311.311 INFO    ] Launching Daemon at Sat Jun 27 16:23:46 IST 2026
[2026-06-27 16:23:46,322.322 INFO    ] ================================================
[2026-06-27 16:23:46,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:23:46
[2026-06-27 16:23:46,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:23:47,130.130 INFO    ] Initializing speech engine...
[2026-06-27 16:23:47,140.140 INFO    ] 2026-06-27 16:23:47
[2026-06-27 16:23:47,347.347 INFO    ] 2026-06-27 16:23:47
[2026-06-27 16:23:47,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:23:47,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:23:47,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:23:47,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:23:47,769.769 INFO    ] time= 27/06/2026 16:23:47
[2026-06-27 16:23:47,798.798 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:23:47,799.799 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:23:47,870.870 INFO    ] No existing commands found in stream
[2026-06-27 16:23:52,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:23:52,884.884 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-27 16:23:54,829.829 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:23:54,831.831 INFO    ] Checking for system updates...
[2026-06-27 16:23:54,853.853 INFO    ] 200
[2026-06-27 16:23:54,854.854 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:23:54,887.887 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:23:54,888.888 INFO    ] No update needed
[2026-06-27 16:23:54,890.890 INFO    ] Checking for camera pi updates...
[2026-06-27 16:23:54,910.910 INFO    ] 200
[2026-06-27 16:23:54,911.911 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:23:54,937.937 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:23:54,970.970 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:23:54,971.971 INFO    ] No camera update needed
[2026-06-27 16:23:54,973.973 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:23:54,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:23:54,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:23:54,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:23:57,021.021 INFO    ] ================================================
[2026-06-27 16:23:57,036.036 INFO    ] Launching Daemon at Sat Jun 27 16:23:57 IST 2026
[2026-06-27 16:23:57,048.048 INFO    ] ================================================
[2026-06-27 16:23:57,378.378 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:23:57
[2026-06-27 16:23:57,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:23:57,823.823 INFO    ] Initializing speech engine...
[2026-06-27 16:23:57,831.831 INFO    ] 2026-06-27 16:23:57
[2026-06-27 16:23:58,045.045 INFO    ] 2026-06-27 16:23:58
[2026-06-27 16:23:58,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:23:58,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:23:58,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:23:58,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:23:58,495.495 INFO    ] time= 27/06/2026 16:23:58
[2026-06-27 16:23:58,500.500 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:23:58,502.502 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:23:58,570.570 INFO    ] No existing commands found in stream
[2026-06-27 16:24:03,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:24:03,606.606 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-27 16:24:04,398.398 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:24:04,399.399 INFO    ] Checking for system updates...
[2026-06-27 16:24:04,420.420 INFO    ] 200
[2026-06-27 16:24:04,421.421 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:24:04,452.452 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:24:04,453.453 INFO    ] No update needed
[2026-06-27 16:24:04,455.455 INFO    ] Checking for camera pi updates...
[2026-06-27 16:24:04,476.476 INFO    ] 200
[2026-06-27 16:24:04,477.477 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:24:04,501.501 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:24:04,547.547 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:24:04,549.549 INFO    ] No camera update needed
[2026-06-27 16:24:04,550.550 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:24:04,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:24:04,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:24:04,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:24:06,596.596 INFO    ] ================================================
[2026-06-27 16:24:06,612.612 INFO    ] Launching Daemon at Sat Jun 27 16:24:06 IST 2026
[2026-06-27 16:24:06,624.624 INFO    ] ================================================
[2026-06-27 16:24:06,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:24:06
[2026-06-27 16:24:07,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:24:07,430.430 INFO    ] Initializing speech engine...
[2026-06-27 16:24:07,438.438 INFO    ] 2026-06-27 16:24:07
[2026-06-27 16:24:07,654.654 INFO    ] 2026-06-27 16:24:07
[2026-06-27 16:24:07,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:24:07,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:24:07,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:24:08,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:24:08,103.103 INFO    ] time= 27/06/2026 16:24:08
[2026-06-27 16:24:08,109.109 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:24:08,110.110 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:24:08,180.180 INFO    ] No existing commands found in stream
[2026-06-27 16:24:13,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:24:13,192.192 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-27 16:24:14,155.155 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 16:24:14,157.157 INFO    ] Checking for system updates...
[2026-06-27 16:24:14,178.178 INFO    ] 200
[2026-06-27 16:24:14,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:24:14,210.210 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:24:14,212.212 INFO    ] No update needed
[2026-06-27 16:24:14,213.213 INFO    ] Checking for camera pi updates...
[2026-06-27 16:24:14,232.232 INFO    ] 200
[2026-06-27 16:24:14,234.234 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:24:14,261.261 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:24:14,308.308 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:24:14,309.309 INFO    ] No camera update needed
[2026-06-27 16:24:14,311.311 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:24:14,312.312 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:24:14,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:24:14,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:24:16,358.358 INFO    ] ================================================
[2026-06-27 16:24:16,374.374 INFO    ] Launching Daemon at Sat Jun 27 16:24:16 IST 2026
[2026-06-27 16:24:16,385.385 INFO    ] ================================================
[2026-06-27 16:24:16,729.729 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:24:16
[2026-06-27 16:24:17,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:24:17,228.228 INFO    ] Initializing speech engine...
[2026-06-27 16:24:17,235.235 INFO    ] 2026-06-27 16:24:17
[2026-06-27 16:24:17,447.447 INFO    ] 2026-06-27 16:24:17
[2026-06-27 16:24:17,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:24:17,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:24:17,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:24:17,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:24:17,898.898 INFO    ] time= 27/06/2026 16:24:17
[2026-06-27 16:24:17,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:24:17,906.906 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:24:17,974.974 INFO    ] No existing commands found in stream
[2026-06-27 16:24:22,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:24:22,992.992 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-27 16:24:23,460.460 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:24:23,461.461 INFO    ] Checking for system updates...
[2026-06-27 16:24:23,483.483 INFO    ] 200
[2026-06-27 16:24:23,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:24:23,515.515 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:24:23,517.517 INFO    ] No update needed
[2026-06-27 16:24:23,518.518 INFO    ] Checking for camera pi updates...
[2026-06-27 16:24:23,538.538 INFO    ] 200
[2026-06-27 16:24:23,539.539 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:24:23,564.564 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:24:23,605.605 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:24:23,607.607 INFO    ] No camera update needed
[2026-06-27 16:24:23,608.608 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:24:23,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:24:23,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:24:23,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:24:25,656.656 INFO    ] ================================================
[2026-06-27 16:24:25,672.672 INFO    ] Launching Daemon at Sat Jun 27 16:24:25 IST 2026
[2026-06-27 16:24:25,684.684 INFO    ] ================================================
[2026-06-27 16:24:26,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:24:26
[2026-06-27 16:24:26,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:24:26,504.504 INFO    ] Initializing speech engine...
[2026-06-27 16:24:26,509.509 INFO    ] 2026-06-27 16:24:26
[2026-06-27 16:24:26,715.715 INFO    ] 2026-06-27 16:24:26
[2026-06-27 16:24:26,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:24:26,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:24:26,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:24:27,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:24:27,152.152 INFO    ] time= 27/06/2026 16:24:27
[2026-06-27 16:24:27,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:24:27,159.159 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:24:27,249.249 INFO    ] No existing commands found in stream
[2026-06-27 16:24:32,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:24:32,264.264 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-27 16:24:36,626.626 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 16:24:36,627.627 INFO    ] Checking for system updates...
[2026-06-27 16:24:36,648.648 INFO    ] 200
[2026-06-27 16:24:36,649.649 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:24:36,682.682 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:24:36,683.683 INFO    ] No update needed
[2026-06-27 16:24:36,684.684 INFO    ] Checking for camera pi updates...
[2026-06-27 16:24:36,704.704 INFO    ] 200
[2026-06-27 16:24:36,705.705 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:24:36,729.729 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:24:36,771.771 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:24:36,772.772 INFO    ] No camera update needed
[2026-06-27 16:24:36,773.773 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:24:36,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:24:36,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:24:36,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:24:38,821.821 INFO    ] ================================================
[2026-06-27 16:24:38,838.838 INFO    ] Launching Daemon at Sat Jun 27 16:24:38 IST 2026
[2026-06-27 16:24:38,849.849 INFO    ] ================================================
[2026-06-27 16:24:39,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:24:39
[2026-06-27 16:24:39,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:24:39,657.657 INFO    ] Initializing speech engine...
[2026-06-27 16:24:39,661.661 INFO    ] 2026-06-27 16:24:39
[2026-06-27 16:24:39,856.856 INFO    ] 2026-06-27 16:24:39
[2026-06-27 16:24:39,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:24:40,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:24:40,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:24:40,282.282 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:24:40,339.339 INFO    ] time= 27/06/2026 16:24:40
[2026-06-27 16:24:40,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:24:40,388.388 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:24:40,466.466 INFO    ] No existing commands found in stream
[2026-06-27 16:24:45,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:24:45,479.479 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-27 16:24:47,666.666 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 16:24:47,667.667 INFO    ] Checking for system updates...
[2026-06-27 16:24:47,688.688 INFO    ] 200
[2026-06-27 16:24:47,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:24:47,720.720 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:24:47,721.721 INFO    ] No update needed
[2026-06-27 16:24:47,723.723 INFO    ] Checking for camera pi updates...
[2026-06-27 16:24:47,744.744 INFO    ] 200
[2026-06-27 16:24:47,746.746 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:24:47,769.769 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:24:47,907.907 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:24:47,908.908 INFO    ] No camera update needed
[2026-06-27 16:24:47,909.909 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:24:47,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:24:47,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:24:47,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:24:49,954.954 INFO    ] ================================================
[2026-06-27 16:24:49,970.970 INFO    ] Launching Daemon at Sat Jun 27 16:24:49 IST 2026
[2026-06-27 16:24:49,982.982 INFO    ] ================================================
[2026-06-27 16:24:50,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:24:50
[2026-06-27 16:24:50,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:24:50,777.777 INFO    ] Initializing speech engine...
[2026-06-27 16:24:50,785.785 INFO    ] 2026-06-27 16:24:50
[2026-06-27 16:24:50,994.994 INFO    ] 2026-06-27 16:24:50
[2026-06-27 16:24:51,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:24:51,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:24:51,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:24:51,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:24:51,418.418 INFO    ] time= 27/06/2026 16:24:51
[2026-06-27 16:24:51,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:24:51,448.448 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:24:51,516.516 INFO    ] No existing commands found in stream
[2026-06-27 16:24:56,530.530 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:24:56,532.532 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-27 16:24:59,418.418 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 16:24:59,419.419 INFO    ] Checking for system updates...
[2026-06-27 16:24:59,440.440 INFO    ] 200
[2026-06-27 16:24:59,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:24:59,475.475 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:24:59,476.476 INFO    ] No update needed
[2026-06-27 16:24:59,478.478 INFO    ] Checking for camera pi updates...
[2026-06-27 16:24:59,499.499 INFO    ] 200
[2026-06-27 16:24:59,501.501 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:24:59,524.524 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:24:59,579.579 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:24:59,580.580 INFO    ] No camera update needed
[2026-06-27 16:24:59,581.581 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:24:59,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:24:59,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:24:59,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:25:01,629.629 INFO    ] ================================================
[2026-06-27 16:25:01,645.645 INFO    ] Launching Daemon at Sat Jun 27 16:25:01 IST 2026
[2026-06-27 16:25:01,655.655 INFO    ] ================================================
[2026-06-27 16:25:02,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:25:02
[2026-06-27 16:25:02,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:25:02,727.727 INFO    ] Initializing speech engine...
[2026-06-27 16:25:02,731.731 INFO    ] 2026-06-27 16:25:02
[2026-06-27 16:25:02,944.944 INFO    ] 2026-06-27 16:25:02
[2026-06-27 16:25:02,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:25:03,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:25:03,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:25:03,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:25:03,292.292 INFO    ] time= 27/06/2026 16:25:03
[2026-06-27 16:25:03,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:25:03,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:25:03,381.381 INFO    ] No existing commands found in stream
[2026-06-27 16:25:08,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:25:08,415.415 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-27 16:25:09,036.036 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:25:09,038.038 INFO    ] Checking for system updates...
[2026-06-27 16:25:09,059.059 INFO    ] 200
[2026-06-27 16:25:09,060.060 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:25:09,092.092 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:25:09,093.093 INFO    ] No update needed
[2026-06-27 16:25:09,095.095 INFO    ] Checking for camera pi updates...
[2026-06-27 16:25:09,114.114 INFO    ] 200
[2026-06-27 16:25:09,116.116 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:25:09,141.141 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:25:09,183.183 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:25:09,185.185 INFO    ] No camera update needed
[2026-06-27 16:25:09,186.186 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:25:09,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:25:09,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:25:09,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:25:11,235.235 INFO    ] ================================================
[2026-06-27 16:25:11,251.251 INFO    ] Launching Daemon at Sat Jun 27 16:25:11 IST 2026
[2026-06-27 16:25:11,263.263 INFO    ] ================================================
[2026-06-27 16:25:11,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:25:11
[2026-06-27 16:25:11,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:25:12,114.114 INFO    ] Initializing speech engine...
[2026-06-27 16:25:12,120.120 INFO    ] 2026-06-27 16:25:12
[2026-06-27 16:25:12,328.328 INFO    ] 2026-06-27 16:25:12
[2026-06-27 16:25:12,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:25:12,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:25:12,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:25:12,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:25:12,772.772 INFO    ] time= 27/06/2026 16:25:12
[2026-06-27 16:25:12,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:25:12,776.776 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:25:12,844.844 INFO    ] No existing commands found in stream
[2026-06-27 16:25:17,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:25:17,862.862 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-27 16:25:21,849.849 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:25:21,850.850 INFO    ] Checking for system updates...
[2026-06-27 16:25:21,873.873 INFO    ] 200
[2026-06-27 16:25:21,875.875 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:25:21,906.906 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:25:21,907.907 INFO    ] No update needed
[2026-06-27 16:25:21,908.908 INFO    ] Checking for camera pi updates...
[2026-06-27 16:25:21,928.928 INFO    ] 200
[2026-06-27 16:25:21,929.929 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:25:21,953.953 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:25:21,992.992 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:25:21,993.993 INFO    ] No camera update needed
[2026-06-27 16:25:21,995.995 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:25:21,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:25:21,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:25:22,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:25:24,042.042 INFO    ] ================================================
[2026-06-27 16:25:24,057.057 INFO    ] Launching Daemon at Sat Jun 27 16:25:24 IST 2026
[2026-06-27 16:25:24,068.068 INFO    ] ================================================
[2026-06-27 16:25:24,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:25:24
[2026-06-27 16:25:24,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:25:24,838.838 INFO    ] Initializing speech engine...
[2026-06-27 16:25:24,843.843 INFO    ] 2026-06-27 16:25:24
[2026-06-27 16:25:25,060.060 INFO    ] 2026-06-27 16:25:25
[2026-06-27 16:25:25,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:25:25,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:25:25,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:25:25,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:25:25,499.499 INFO    ] time= 27/06/2026 16:25:25
[2026-06-27 16:25:25,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:25:25,516.516 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:25:25,607.607 INFO    ] No existing commands found in stream
[2026-06-27 16:25:30,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:25:30,624.624 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-27 16:25:34,388.388 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 16:25:34,389.389 INFO    ] Checking for system updates...
[2026-06-27 16:25:34,410.410 INFO    ] 200
[2026-06-27 16:25:34,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:25:34,445.445 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:25:34,447.447 INFO    ] No update needed
[2026-06-27 16:25:34,448.448 INFO    ] Checking for camera pi updates...
[2026-06-27 16:25:34,467.467 INFO    ] 200
[2026-06-27 16:25:34,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:25:34,494.494 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:25:34,543.543 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:25:34,544.544 INFO    ] No camera update needed
[2026-06-27 16:25:34,546.546 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:25:34,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:25:34,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:25:34,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:25:36,590.590 INFO    ] ================================================
[2026-06-27 16:25:36,606.606 INFO    ] Launching Daemon at Sat Jun 27 16:25:36 IST 2026
[2026-06-27 16:25:36,617.617 INFO    ] ================================================
[2026-06-27 16:25:36,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:25:36
[2026-06-27 16:25:37,271.271 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:25:37,417.417 INFO    ] Initializing speech engine...
[2026-06-27 16:25:37,422.422 INFO    ] 2026-06-27 16:25:37
[2026-06-27 16:25:37,628.628 INFO    ] 2026-06-27 16:25:37
[2026-06-27 16:25:37,656.656 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:25:37,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:25:37,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:25:38,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:25:38,076.076 INFO    ] time= 27/06/2026 16:25:38
[2026-06-27 16:25:38,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:25:38,084.084 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:25:38,151.151 INFO    ] No existing commands found in stream
[2026-06-27 16:25:43,184.184 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:25:43,187.187 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-27 16:25:44,778.778 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 16:25:44,780.780 INFO    ] Checking for system updates...
[2026-06-27 16:25:44,801.801 INFO    ] 200
[2026-06-27 16:25:44,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:25:44,832.832 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:25:44,834.834 INFO    ] No update needed
[2026-06-27 16:25:44,835.835 INFO    ] Checking for camera pi updates...
[2026-06-27 16:25:44,855.855 INFO    ] 200
[2026-06-27 16:25:44,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:25:44,881.881 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:25:44,920.920 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:25:44,921.921 INFO    ] No camera update needed
[2026-06-27 16:25:44,922.922 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:25:44,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:25:44,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:25:44,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:25:46,968.968 INFO    ] ================================================
[2026-06-27 16:25:46,983.983 INFO    ] Launching Daemon at Sat Jun 27 16:25:46 IST 2026
[2026-06-27 16:25:47,994.994 INFO    ] ================================================
[2026-06-27 16:25:47,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:25:47
[2026-06-27 16:25:47,681.681 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:25:47,824.824 INFO    ] Initializing speech engine...
[2026-06-27 16:25:47,829.829 INFO    ] 2026-06-27 16:25:47
[2026-06-27 16:25:48,035.035 INFO    ] 2026-06-27 16:25:48
[2026-06-27 16:25:48,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:25:48,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:25:48,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:25:48,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:25:48,452.452 INFO    ] time= 27/06/2026 16:25:48
[2026-06-27 16:25:48,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:25:48,480.480 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:25:48,547.547 INFO    ] No existing commands found in stream
[2026-06-27 16:25:53,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:25:53,579.579 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-27 16:25:54,863.863 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 16:25:54,865.865 INFO    ] Checking for system updates...
[2026-06-27 16:25:54,885.885 INFO    ] 200
[2026-06-27 16:25:54,886.886 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:25:54,917.917 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:25:54,918.918 INFO    ] No update needed
[2026-06-27 16:25:54,919.919 INFO    ] Checking for camera pi updates...
[2026-06-27 16:25:54,939.939 INFO    ] 200
[2026-06-27 16:25:54,940.940 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:25:54,964.964 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:25:54,995.995 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:25:54,996.996 INFO    ] No camera update needed
[2026-06-27 16:25:54,997.997 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:25:54,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:25:55,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:25:55,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:25:57,044.044 INFO    ] ================================================
[2026-06-27 16:25:57,058.058 INFO    ] Launching Daemon at Sat Jun 27 16:25:57 IST 2026
[2026-06-27 16:25:57,069.069 INFO    ] ================================================
[2026-06-27 16:25:57,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:25:57
[2026-06-27 16:25:57,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:25:57,895.895 INFO    ] Initializing speech engine...
[2026-06-27 16:25:57,900.900 INFO    ] 2026-06-27 16:25:57
[2026-06-27 16:25:58,104.104 INFO    ] 2026-06-27 16:25:58
[2026-06-27 16:25:58,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:25:58,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:25:58,444.444 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:25:58,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:25:58,612.612 INFO    ] time= 27/06/2026 16:25:58
[2026-06-27 16:25:58,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:25:58,639.639 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:25:58,735.735 INFO    ] No existing commands found in stream
[2026-06-27 16:26:03,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:26:03,748.748 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-27 16:26:04,484.484 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 16:26:04,485.485 INFO    ] Checking for system updates...
[2026-06-27 16:26:04,507.507 INFO    ] 200
[2026-06-27 16:26:04,509.509 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:26:04,539.539 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:26:04,541.541 INFO    ] No update needed
[2026-06-27 16:26:04,542.542 INFO    ] Checking for camera pi updates...
[2026-06-27 16:26:04,562.562 INFO    ] 200
[2026-06-27 16:26:04,563.563 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:26:04,587.587 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:26:04,635.635 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:26:04,637.637 INFO    ] No camera update needed
[2026-06-27 16:26:04,638.638 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:26:04,639.639 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:26:04,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:26:04,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:26:06,683.683 INFO    ] ================================================
[2026-06-27 16:26:06,699.699 INFO    ] Launching Daemon at Sat Jun 27 16:26:06 IST 2026
[2026-06-27 16:26:06,710.710 INFO    ] ================================================
[2026-06-27 16:26:07,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:26:07
[2026-06-27 16:26:07,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:26:07,573.573 INFO    ] Initializing speech engine...
[2026-06-27 16:26:07,579.579 INFO    ] 2026-06-27 16:26:07
[2026-06-27 16:26:07,788.788 INFO    ] 2026-06-27 16:26:07
[2026-06-27 16:26:07,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:26:08,000.000 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:26:08,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:26:08,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:26:08,229.229 INFO    ] time= 27/06/2026 16:26:08
[2026-06-27 16:26:08,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:26:08,237.237 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:26:08,304.304 INFO    ] No existing commands found in stream
[2026-06-27 16:26:13,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:26:13,322.322 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-27 16:26:16,515.515 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:26:16,517.517 INFO    ] Checking for system updates...
[2026-06-27 16:26:16,540.540 INFO    ] 200
[2026-06-27 16:26:16,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:26:16,579.579 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:26:16,581.581 INFO    ] No update needed
[2026-06-27 16:26:16,583.583 INFO    ] Checking for camera pi updates...
[2026-06-27 16:26:16,604.604 INFO    ] 200
[2026-06-27 16:26:16,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:26:16,629.629 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:26:16,680.680 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:26:16,682.682 INFO    ] No camera update needed
[2026-06-27 16:26:16,686.686 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:26:16,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:26:16,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:26:16,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:26:18,734.734 INFO    ] ================================================
[2026-06-27 16:26:18,750.750 INFO    ] Launching Daemon at Sat Jun 27 16:26:18 IST 2026
[2026-06-27 16:26:18,761.761 INFO    ] ================================================
[2026-06-27 16:26:19,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:26:19
[2026-06-27 16:26:19,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:26:19,548.548 INFO    ] Initializing speech engine...
[2026-06-27 16:26:19,557.557 INFO    ] 2026-06-27 16:26:19
[2026-06-27 16:26:19,763.763 INFO    ] 2026-06-27 16:26:19
[2026-06-27 16:26:19,792.792 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:26:20,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:26:20,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:26:20,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:26:20,188.188 INFO    ] time= 27/06/2026 16:26:20
[2026-06-27 16:26:20,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:26:20,217.217 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:26:20,308.308 INFO    ] No existing commands found in stream
[2026-06-27 16:26:25,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:26:25,325.325 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-27 16:26:28,740.740 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:26:28,741.741 INFO    ] Checking for system updates...
[2026-06-27 16:26:28,762.762 INFO    ] 200
[2026-06-27 16:26:28,763.763 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:26:28,794.794 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:26:28,795.795 INFO    ] No update needed
[2026-06-27 16:26:28,797.797 INFO    ] Checking for camera pi updates...
[2026-06-27 16:26:28,817.817 INFO    ] 200
[2026-06-27 16:26:28,819.819 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:26:28,847.847 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:26:28,890.890 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:26:28,892.892 INFO    ] No camera update needed
[2026-06-27 16:26:28,893.893 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:26:28,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:26:28,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:26:28,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:26:30,940.940 INFO    ] ================================================
[2026-06-27 16:26:30,956.956 INFO    ] Launching Daemon at Sat Jun 27 16:26:30 IST 2026
[2026-06-27 16:26:30,967.967 INFO    ] ================================================
[2026-06-27 16:26:31,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:26:31
[2026-06-27 16:26:31,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:26:31,803.803 INFO    ] Initializing speech engine...
[2026-06-27 16:26:31,807.807 INFO    ] 2026-06-27 16:26:31
[2026-06-27 16:26:32,022.022 INFO    ] 2026-06-27 16:26:32
[2026-06-27 16:26:32,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:26:32,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:26:32,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:26:32,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:26:32,490.490 INFO    ] time= 27/06/2026 16:26:32
[2026-06-27 16:26:32,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:26:32,518.518 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:26:32,608.608 INFO    ] No existing commands found in stream
[2026-06-27 16:26:37,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:26:37,624.624 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-27 16:26:39,508.508 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 16:26:39,509.509 INFO    ] Checking for system updates...
[2026-06-27 16:26:39,532.532 INFO    ] 200
[2026-06-27 16:26:39,533.533 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:26:39,564.564 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:26:39,565.565 INFO    ] No update needed
[2026-06-27 16:26:39,567.567 INFO    ] Checking for camera pi updates...
[2026-06-27 16:26:39,587.587 INFO    ] 200
[2026-06-27 16:26:39,589.589 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:26:39,612.612 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:26:39,652.652 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:26:39,654.654 INFO    ] No camera update needed
[2026-06-27 16:26:39,655.655 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:26:39,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:26:39,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:26:39,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:26:41,702.702 INFO    ] ================================================
[2026-06-27 16:26:41,717.717 INFO    ] Launching Daemon at Sat Jun 27 16:26:41 IST 2026
[2026-06-27 16:26:41,728.728 INFO    ] ================================================
[2026-06-27 16:26:42,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:26:42
[2026-06-27 16:26:42,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:26:42,562.562 INFO    ] Initializing speech engine...
[2026-06-27 16:26:42,567.567 INFO    ] 2026-06-27 16:26:42
[2026-06-27 16:26:42,773.773 INFO    ] 2026-06-27 16:26:42
[2026-06-27 16:26:42,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:26:42,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:26:43,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:26:43,187.187 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:26:43,212.212 INFO    ] time= 27/06/2026 16:26:43
[2026-06-27 16:26:43,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:26:43,219.219 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:26:43,349.349 INFO    ] No existing commands found in stream
[2026-06-27 16:26:48,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:26:48,361.361 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-27 16:26:49,908.908 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 16:26:49,909.909 INFO    ] Checking for system updates...
[2026-06-27 16:26:49,930.930 INFO    ] 200
[2026-06-27 16:26:49,932.932 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:26:49,965.965 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:26:49,966.966 INFO    ] No update needed
[2026-06-27 16:26:49,967.967 INFO    ] Checking for camera pi updates...
[2026-06-27 16:26:49,987.987 INFO    ] 200
[2026-06-27 16:26:49,988.988 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:26:50,013.013 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:26:50,157.157 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:26:50,159.159 INFO    ] No camera update needed
[2026-06-27 16:26:50,160.160 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:26:50,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:26:50,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:26:50,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:26:52,206.206 INFO    ] ================================================
[2026-06-27 16:26:52,222.222 INFO    ] Launching Daemon at Sat Jun 27 16:26:52 IST 2026
[2026-06-27 16:26:52,233.233 INFO    ] ================================================
[2026-06-27 16:26:52,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:26:52
[2026-06-27 16:26:52,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:26:53,125.125 INFO    ] Initializing speech engine...
[2026-06-27 16:26:53,131.131 INFO    ] 2026-06-27 16:26:53
[2026-06-27 16:26:53,342.342 INFO    ] 2026-06-27 16:26:53
[2026-06-27 16:26:53,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:26:53,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:26:53,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:26:53,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:26:53,785.785 INFO    ] time= 27/06/2026 16:26:53
[2026-06-27 16:26:53,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:26:53,793.793 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:26:53,861.861 INFO    ] No existing commands found in stream
[2026-06-27 16:26:58,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:26:58,879.879 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-27 16:27:01,170.170 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 16:27:01,171.171 INFO    ] Checking for system updates...
[2026-06-27 16:27:01,194.194 INFO    ] 200
[2026-06-27 16:27:01,195.195 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:27:01,231.231 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:27:01,233.233 INFO    ] No update needed
[2026-06-27 16:27:01,235.235 INFO    ] Checking for camera pi updates...
[2026-06-27 16:27:01,255.255 INFO    ] 200
[2026-06-27 16:27:01,256.256 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:27:01,281.281 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:27:01,328.328 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:27:01,329.329 INFO    ] No camera update needed
[2026-06-27 16:27:01,331.331 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:27:01,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:27:01,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:27:01,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:27:03,373.373 INFO    ] ================================================
[2026-06-27 16:27:03,388.388 INFO    ] Launching Daemon at Sat Jun 27 16:27:03 IST 2026
[2026-06-27 16:27:03,399.399 INFO    ] ================================================
[2026-06-27 16:27:03,756.756 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:27:03
[2026-06-27 16:27:04,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:27:04,212.212 INFO    ] Initializing speech engine...
[2026-06-27 16:27:04,217.217 INFO    ] 2026-06-27 16:27:04
[2026-06-27 16:27:04,421.421 INFO    ] 2026-06-27 16:27:04
[2026-06-27 16:27:04,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:27:04,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:27:04,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:27:04,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:27:04,862.862 INFO    ] time= 27/06/2026 16:27:04
[2026-06-27 16:27:04,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:27:04,870.870 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:27:04,936.936 INFO    ] No existing commands found in stream
[2026-06-27 16:27:09,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:27:09,949.949 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-27 16:27:11,659.659 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:27:11,661.661 INFO    ] Checking for system updates...
[2026-06-27 16:27:11,682.682 INFO    ] 200
[2026-06-27 16:27:11,684.684 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:27:11,720.720 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:27:11,722.722 INFO    ] No update needed
[2026-06-27 16:27:11,725.725 INFO    ] Checking for camera pi updates...
[2026-06-27 16:27:11,760.760 INFO    ] 200
[2026-06-27 16:27:11,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:27:11,810.810 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:27:11,854.854 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:27:11,855.855 INFO    ] No camera update needed
[2026-06-27 16:27:11,856.856 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:27:11,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:27:11,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:27:11,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:27:13,904.904 INFO    ] ================================================
[2026-06-27 16:27:13,919.919 INFO    ] Launching Daemon at Sat Jun 27 16:27:13 IST 2026
[2026-06-27 16:27:13,931.931 INFO    ] ================================================
[2026-06-27 16:27:14,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:27:14
[2026-06-27 16:27:14,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:27:14,743.743 INFO    ] Initializing speech engine...
[2026-06-27 16:27:14,746.746 INFO    ] 2026-06-27 16:27:14
[2026-06-27 16:27:14,964.964 INFO    ] 2026-06-27 16:27:14
[2026-06-27 16:27:14,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:27:15,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:27:15,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:27:15,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:27:15,402.402 INFO    ] time= 27/06/2026 16:27:15
[2026-06-27 16:27:15,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:27:15,409.409 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:27:15,475.475 INFO    ] No existing commands found in stream
[2026-06-27 16:27:20,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:27:20,487.487 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-27 16:27:23,540.540 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:27:23,542.542 INFO    ] Checking for system updates...
[2026-06-27 16:27:23,565.565 INFO    ] 200
[2026-06-27 16:27:23,566.566 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:27:23,597.597 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:27:23,599.599 INFO    ] No update needed
[2026-06-27 16:27:23,600.600 INFO    ] Checking for camera pi updates...
[2026-06-27 16:27:23,621.621 INFO    ] 200
[2026-06-27 16:27:23,622.622 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:27:23,647.647 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:27:23,698.698 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:27:23,700.700 INFO    ] No camera update needed
[2026-06-27 16:27:23,701.701 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:27:23,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:27:23,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:27:23,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:27:25,748.748 INFO    ] ================================================
[2026-06-27 16:27:25,764.764 INFO    ] Launching Daemon at Sat Jun 27 16:27:25 IST 2026
[2026-06-27 16:27:25,775.775 INFO    ] ================================================
[2026-06-27 16:27:26,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:27:26
[2026-06-27 16:27:26,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:27:26,593.593 INFO    ] Initializing speech engine...
[2026-06-27 16:27:26,598.598 INFO    ] 2026-06-27 16:27:26
[2026-06-27 16:27:26,804.804 INFO    ] 2026-06-27 16:27:26
[2026-06-27 16:27:26,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:27:27,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:27:27,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:27:27,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:27:27,229.229 INFO    ] time= 27/06/2026 16:27:27
[2026-06-27 16:27:27,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:27:27,256.256 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:27:27,350.350 INFO    ] No existing commands found in stream
[2026-06-27 16:27:32,363.363 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:27:32,365.365 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-27 16:27:35,802.802 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 16:27:35,803.803 INFO    ] Checking for system updates...
[2026-06-27 16:27:35,825.825 INFO    ] 200
[2026-06-27 16:27:35,827.827 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:27:35,860.860 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:27:35,861.861 INFO    ] No update needed
[2026-06-27 16:27:35,863.863 INFO    ] Checking for camera pi updates...
[2026-06-27 16:27:35,883.883 INFO    ] 200
[2026-06-27 16:27:35,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:27:35,915.915 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:27:35,971.971 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:27:35,972.972 INFO    ] No camera update needed
[2026-06-27 16:27:35,974.974 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:27:35,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:27:35,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:27:35,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:27:38,019.019 INFO    ] ================================================
[2026-06-27 16:27:38,035.035 INFO    ] Launching Daemon at Sat Jun 27 16:27:38 IST 2026
[2026-06-27 16:27:38,046.046 INFO    ] ================================================
[2026-06-27 16:27:38,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:27:38
[2026-06-27 16:27:38,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:27:38,858.858 INFO    ] Initializing speech engine...
[2026-06-27 16:27:38,862.862 INFO    ] 2026-06-27 16:27:38
[2026-06-27 16:27:39,056.056 INFO    ] 2026-06-27 16:27:39
[2026-06-27 16:27:39,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:27:39,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:27:39,299.299 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:27:39,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:27:39,548.548 INFO    ] time= 27/06/2026 16:27:39
[2026-06-27 16:27:39,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:27:39,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:27:39,669.669 INFO    ] No existing commands found in stream
[2026-06-27 16:27:44,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:27:44,679.679 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-27 16:27:45,239.239 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:27:45,240.240 INFO    ] Checking for system updates...
[2026-06-27 16:27:45,263.263 INFO    ] 200
[2026-06-27 16:27:45,265.265 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:27:45,295.295 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:27:45,296.296 INFO    ] No update needed
[2026-06-27 16:27:45,298.298 INFO    ] Checking for camera pi updates...
[2026-06-27 16:27:45,319.319 INFO    ] 200
[2026-06-27 16:27:45,320.320 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:27:45,344.344 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:27:45,399.399 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:27:45,400.400 INFO    ] No camera update needed
[2026-06-27 16:27:45,401.401 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:27:45,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:27:45,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:27:45,409.409 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:27:47,449.449 INFO    ] ================================================
[2026-06-27 16:27:47,465.465 INFO    ] Launching Daemon at Sat Jun 27 16:27:47 IST 2026
[2026-06-27 16:27:47,476.476 INFO    ] ================================================
[2026-06-27 16:27:47,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:27:47
[2026-06-27 16:27:48,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:27:48,298.298 INFO    ] Initializing speech engine...
[2026-06-27 16:27:48,306.306 INFO    ] 2026-06-27 16:27:48
[2026-06-27 16:27:48,518.518 INFO    ] 2026-06-27 16:27:48
[2026-06-27 16:27:48,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:27:48,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:27:48,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:27:48,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:27:48,959.959 INFO    ] time= 27/06/2026 16:27:48
[2026-06-27 16:27:48,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:27:48,967.967 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:27:49,032.032 INFO    ] No existing commands found in stream
[2026-06-27 16:27:54,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:27:54,045.045 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-27 16:27:56,658.658 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 16:27:56,660.660 INFO    ] Checking for system updates...
[2026-06-27 16:27:56,681.681 INFO    ] 200
[2026-06-27 16:27:56,682.682 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:27:56,715.715 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:27:56,716.716 INFO    ] No update needed
[2026-06-27 16:27:56,718.718 INFO    ] Checking for camera pi updates...
[2026-06-27 16:27:56,738.738 INFO    ] 200
[2026-06-27 16:27:56,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:27:56,765.765 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:27:56,820.820 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:27:56,821.821 INFO    ] No camera update needed
[2026-06-27 16:27:56,823.823 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:27:56,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:27:56,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:27:56,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:27:58,875.875 INFO    ] ================================================
[2026-06-27 16:27:58,891.891 INFO    ] Launching Daemon at Sat Jun 27 16:27:58 IST 2026
[2026-06-27 16:27:58,901.901 INFO    ] ================================================
[2026-06-27 16:27:59,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:27:59
[2026-06-27 16:27:59,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:27:59,714.714 INFO    ] Initializing speech engine...
[2026-06-27 16:27:59,717.717 INFO    ] 2026-06-27 16:27:59
[2026-06-27 16:27:59,934.934 INFO    ] 2026-06-27 16:27:59
[2026-06-27 16:27:59,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:28:00,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:28:00,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:28:00,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:28:00,374.374 INFO    ] time= 27/06/2026 16:28:00
[2026-06-27 16:28:00,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:28:00,381.381 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:28:00,448.448 INFO    ] No existing commands found in stream
[2026-06-27 16:28:05,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:28:05,464.464 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-27 16:28:06,074.074 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:28:06,076.076 INFO    ] Checking for system updates...
[2026-06-27 16:28:06,106.106 INFO    ] 200
[2026-06-27 16:28:06,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:28:06,147.147 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:28:06,149.149 INFO    ] No update needed
[2026-06-27 16:28:06,150.150 INFO    ] Checking for camera pi updates...
[2026-06-27 16:28:06,171.171 INFO    ] 200
[2026-06-27 16:28:06,172.172 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:28:06,198.198 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:28:06,240.240 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:28:06,241.241 INFO    ] No camera update needed
[2026-06-27 16:28:06,242.242 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:28:06,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:28:06,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:28:06,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:28:08,288.288 INFO    ] ================================================
[2026-06-27 16:28:08,303.303 INFO    ] Launching Daemon at Sat Jun 27 16:28:08 IST 2026
[2026-06-27 16:28:08,314.314 INFO    ] ================================================
[2026-06-27 16:28:08,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:28:08
[2026-06-27 16:28:08,994.994 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:28:09,137.137 INFO    ] Initializing speech engine...
[2026-06-27 16:28:09,142.142 INFO    ] 2026-06-27 16:28:09
[2026-06-27 16:28:09,346.346 INFO    ] 2026-06-27 16:28:09
[2026-06-27 16:28:09,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:28:09,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:28:09,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:28:09,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:28:09,786.786 INFO    ] time= 27/06/2026 16:28:09
[2026-06-27 16:28:09,791.791 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:28:09,793.793 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:28:09,883.883 INFO    ] No existing commands found in stream
[2026-06-27 16:28:14,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:28:14,895.895 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-27 16:28:17,954.954 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 16:28:17,955.955 INFO    ] Checking for system updates...
[2026-06-27 16:28:17,977.977 INFO    ] 200
[2026-06-27 16:28:17,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:28:18,012.012 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:28:18,013.013 INFO    ] No update needed
[2026-06-27 16:28:18,015.015 INFO    ] Checking for camera pi updates...
[2026-06-27 16:28:18,038.038 INFO    ] 200
[2026-06-27 16:28:18,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:28:18,065.065 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:28:18,094.094 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:28:18,095.095 INFO    ] No camera update needed
[2026-06-27 16:28:18,097.097 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:28:18,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:28:18,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:28:18,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:28:20,146.146 INFO    ] ================================================
[2026-06-27 16:28:20,161.161 INFO    ] Launching Daemon at Sat Jun 27 16:28:20 IST 2026
[2026-06-27 16:28:20,172.172 INFO    ] ================================================
[2026-06-27 16:28:20,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:28:20
[2026-06-27 16:28:20,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:28:20,962.962 INFO    ] Initializing speech engine...
[2026-06-27 16:28:20,966.966 INFO    ] 2026-06-27 16:28:20
[2026-06-27 16:28:21,184.184 INFO    ] 2026-06-27 16:28:21
[2026-06-27 16:28:21,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:28:21,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:28:21,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:28:21,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:28:21,578.578 INFO    ] time= 27/06/2026 16:28:21
[2026-06-27 16:28:21,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:28:21,627.627 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:28:21,699.699 INFO    ] No existing commands found in stream
[2026-06-27 16:28:26,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:28:26,716.716 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-27 16:28:29,160.160 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 16:28:29,162.162 INFO    ] Checking for system updates...
[2026-06-27 16:28:29,185.185 INFO    ] 200
[2026-06-27 16:28:29,186.186 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:28:29,219.219 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:28:29,221.221 INFO    ] No update needed
[2026-06-27 16:28:29,222.222 INFO    ] Checking for camera pi updates...
[2026-06-27 16:28:29,242.242 INFO    ] 200
[2026-06-27 16:28:29,244.244 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:28:29,267.267 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:28:29,312.312 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:28:29,313.313 INFO    ] No camera update needed
[2026-06-27 16:28:29,315.315 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:28:29,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:28:29,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:28:29,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:28:31,362.362 INFO    ] ================================================
[2026-06-27 16:28:31,377.377 INFO    ] Launching Daemon at Sat Jun 27 16:28:31 IST 2026
[2026-06-27 16:28:31,388.388 INFO    ] ================================================
[2026-06-27 16:28:31,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:28:31
[2026-06-27 16:28:32,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:28:32,210.210 INFO    ] Initializing speech engine...
[2026-06-27 16:28:32,214.214 INFO    ] 2026-06-27 16:28:32
[2026-06-27 16:28:32,421.421 INFO    ] 2026-06-27 16:28:32
[2026-06-27 16:28:32,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:28:32,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:28:32,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:28:32,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:28:32,997.997 INFO    ] time= 27/06/2026 16:28:32
[2026-06-27 16:28:33,003.003 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:28:33,004.004 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:28:33,104.104 INFO    ] No existing commands found in stream
[2026-06-27 16:28:38,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:28:38,116.116 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-27 16:28:41,186.186 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 16:28:41,187.187 INFO    ] Checking for system updates...
[2026-06-27 16:28:41,208.208 INFO    ] 200
[2026-06-27 16:28:41,210.210 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:28:41,244.244 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:28:41,246.246 INFO    ] No update needed
[2026-06-27 16:28:41,247.247 INFO    ] Checking for camera pi updates...
[2026-06-27 16:28:41,269.269 INFO    ] 200
[2026-06-27 16:28:41,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:28:41,298.298 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:28:41,351.351 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:28:41,353.353 INFO    ] No camera update needed
[2026-06-27 16:28:41,354.354 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:28:41,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:28:41,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:28:41,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:28:43,401.401 INFO    ] ================================================
[2026-06-27 16:28:43,417.417 INFO    ] Launching Daemon at Sat Jun 27 16:28:43 IST 2026
[2026-06-27 16:28:43,427.427 INFO    ] ================================================
[2026-06-27 16:28:43,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:28:43
[2026-06-27 16:28:44,100.100 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:28:44,243.243 INFO    ] Initializing speech engine...
[2026-06-27 16:28:44,248.248 INFO    ] 2026-06-27 16:28:44
[2026-06-27 16:28:44,452.452 INFO    ] 2026-06-27 16:28:44
[2026-06-27 16:28:44,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:28:44,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:28:44,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:28:44,820.820 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:28:44,872.872 INFO    ] time= 27/06/2026 16:28:44
[2026-06-27 16:28:44,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:28:44,901.901 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:28:44,967.967 INFO    ] No existing commands found in stream
[2026-06-27 16:28:49,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:28:49,980.980 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-27 16:28:53,853.853 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 16:28:53,854.854 INFO    ] Checking for system updates...
[2026-06-27 16:28:53,877.877 INFO    ] 200
[2026-06-27 16:28:53,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:28:53,912.912 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:28:53,914.914 INFO    ] No update needed
[2026-06-27 16:28:53,916.916 INFO    ] Checking for camera pi updates...
[2026-06-27 16:28:53,937.937 INFO    ] 200
[2026-06-27 16:28:53,939.939 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:28:53,965.965 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:28:54,116.116 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:28:54,117.117 INFO    ] No camera update needed
[2026-06-27 16:28:54,119.119 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:28:54,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:28:54,124.124 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:28:54,127.127 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:28:56,167.167 INFO    ] ================================================
[2026-06-27 16:28:56,183.183 INFO    ] Launching Daemon at Sat Jun 27 16:28:56 IST 2026
[2026-06-27 16:28:56,193.193 INFO    ] ================================================
[2026-06-27 16:28:56,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:28:56
[2026-06-27 16:28:56,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:28:56,989.989 INFO    ] Initializing speech engine...
[2026-06-27 16:28:56,994.994 INFO    ] 2026-06-27 16:28:56
[2026-06-27 16:28:57,200.200 INFO    ] 2026-06-27 16:28:57
[2026-06-27 16:28:57,228.228 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:28:57,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:28:57,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:28:57,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:28:57,647.647 INFO    ] time= 27/06/2026 16:28:57
[2026-06-27 16:28:57,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:28:57,707.707 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:28:57,811.811 INFO    ] No existing commands found in stream
[2026-06-27 16:29:02,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:29:02,825.825 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-27 16:29:04,580.580 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:29:04,582.582 INFO    ] Checking for system updates...
[2026-06-27 16:29:04,603.603 INFO    ] 200
[2026-06-27 16:29:04,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:29:04,636.636 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:29:04,637.637 INFO    ] No update needed
[2026-06-27 16:29:04,639.639 INFO    ] Checking for camera pi updates...
[2026-06-27 16:29:04,659.659 INFO    ] 200
[2026-06-27 16:29:04,660.660 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:29:04,684.684 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:29:04,739.739 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:29:04,741.741 INFO    ] No camera update needed
[2026-06-27 16:29:04,742.742 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:29:04,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:29:04,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:29:04,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:29:06,789.789 INFO    ] ================================================
[2026-06-27 16:29:06,804.804 INFO    ] Launching Daemon at Sat Jun 27 16:29:06 IST 2026
[2026-06-27 16:29:06,815.815 INFO    ] ================================================
[2026-06-27 16:29:07,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:29:07
[2026-06-27 16:29:07,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:29:07,623.623 INFO    ] Initializing speech engine...
[2026-06-27 16:29:07,630.630 INFO    ] 2026-06-27 16:29:07
[2026-06-27 16:29:07,831.831 INFO    ] 2026-06-27 16:29:07
[2026-06-27 16:29:07,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:29:08,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:29:08,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:29:08,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:29:08,271.271 INFO    ] time= 27/06/2026 16:29:08
[2026-06-27 16:29:08,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:29:08,278.278 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:29:08,369.369 INFO    ] No existing commands found in stream
[2026-06-27 16:29:13,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:29:13,386.386 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-27 16:29:14,279.279 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:29:14,281.281 INFO    ] Checking for system updates...
[2026-06-27 16:29:14,303.303 INFO    ] 200
[2026-06-27 16:29:14,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:29:14,335.335 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:29:14,337.337 INFO    ] No update needed
[2026-06-27 16:29:14,338.338 INFO    ] Checking for camera pi updates...
[2026-06-27 16:29:14,359.359 INFO    ] 200
[2026-06-27 16:29:14,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:29:14,384.384 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:29:14,426.426 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:29:14,427.427 INFO    ] No camera update needed
[2026-06-27 16:29:14,429.429 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:29:14,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:29:14,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:29:14,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:29:16,476.476 INFO    ] ================================================
[2026-06-27 16:29:16,491.491 INFO    ] Launching Daemon at Sat Jun 27 16:29:16 IST 2026
[2026-06-27 16:29:16,502.502 INFO    ] ================================================
[2026-06-27 16:29:16,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:29:16
[2026-06-27 16:29:17,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:29:17,302.302 INFO    ] Initializing speech engine...
[2026-06-27 16:29:17,314.314 INFO    ] 2026-06-27 16:29:17
[2026-06-27 16:29:17,523.523 INFO    ] 2026-06-27 16:29:17
[2026-06-27 16:29:17,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:29:17,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:29:17,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:29:17,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:29:17,935.935 INFO    ] time= 27/06/2026 16:29:17
[2026-06-27 16:29:17,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:29:17,974.974 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:29:18,041.041 INFO    ] No existing commands found in stream
[2026-06-27 16:29:23,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:29:23,076.076 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-27 16:29:24,133.133 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:29:24,134.134 INFO    ] Checking for system updates...
[2026-06-27 16:29:24,155.155 INFO    ] 200
[2026-06-27 16:29:24,156.156 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:29:24,189.189 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:29:24,190.190 INFO    ] No update needed
[2026-06-27 16:29:24,191.191 INFO    ] Checking for camera pi updates...
[2026-06-27 16:29:24,210.210 INFO    ] 200
[2026-06-27 16:29:24,212.212 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:29:24,235.235 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:29:24,283.283 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:29:24,285.285 INFO    ] No camera update needed
[2026-06-27 16:29:24,286.286 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:29:24,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:29:24,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:29:24,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:29:26,332.332 INFO    ] ================================================
[2026-06-27 16:29:26,347.347 INFO    ] Launching Daemon at Sat Jun 27 16:29:26 IST 2026
[2026-06-27 16:29:26,358.358 INFO    ] ================================================
[2026-06-27 16:29:26,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:29:26
[2026-06-27 16:29:27,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:29:27,167.167 INFO    ] Initializing speech engine...
[2026-06-27 16:29:27,172.172 INFO    ] 2026-06-27 16:29:27
[2026-06-27 16:29:27,390.390 INFO    ] 2026-06-27 16:29:27
[2026-06-27 16:29:27,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:29:27,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:29:27,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:29:27,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:29:27,834.834 INFO    ] time= 27/06/2026 16:29:27
[2026-06-27 16:29:27,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:29:27,902.902 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:29:28,021.021 INFO    ] No existing commands found in stream
[2026-06-27 16:29:33,032.032 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:29:33,035.035 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-27 16:29:35,244.244 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 16:29:35,245.245 INFO    ] Checking for system updates...
[2026-06-27 16:29:35,266.266 INFO    ] 200
[2026-06-27 16:29:35,268.268 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:29:35,299.299 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:29:35,300.300 INFO    ] No update needed
[2026-06-27 16:29:35,301.301 INFO    ] Checking for camera pi updates...
[2026-06-27 16:29:35,321.321 INFO    ] 200
[2026-06-27 16:29:35,322.322 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:29:35,347.347 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:29:35,390.390 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:29:35,391.391 INFO    ] No camera update needed
[2026-06-27 16:29:35,392.392 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:29:35,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:29:35,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:29:35,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:29:37,441.441 INFO    ] ================================================
[2026-06-27 16:29:37,457.457 INFO    ] Launching Daemon at Sat Jun 27 16:29:37 IST 2026
[2026-06-27 16:29:37,470.470 INFO    ] ================================================
[2026-06-27 16:29:37,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:29:37
[2026-06-27 16:29:38,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:29:38,285.285 INFO    ] Initializing speech engine...
[2026-06-27 16:29:38,290.290 INFO    ] 2026-06-27 16:29:38
[2026-06-27 16:29:38,495.495 INFO    ] 2026-06-27 16:29:38
[2026-06-27 16:29:38,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:29:38,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:29:38,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:29:38,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:29:38,912.912 INFO    ] time= 27/06/2026 16:29:38
[2026-06-27 16:29:38,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:29:38,942.942 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:29:39,033.033 INFO    ] No existing commands found in stream
[2026-06-27 16:29:44,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:29:44,060.060 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-27 16:29:48,323.323 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:29:48,325.325 INFO    ] Checking for system updates...
[2026-06-27 16:29:48,346.346 INFO    ] 200
[2026-06-27 16:29:48,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:29:48,380.380 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:29:48,381.381 INFO    ] No update needed
[2026-06-27 16:29:48,383.383 INFO    ] Checking for camera pi updates...
[2026-06-27 16:29:48,402.402 INFO    ] 200
[2026-06-27 16:29:48,404.404 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:29:48,429.429 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:29:48,478.478 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:29:48,480.480 INFO    ] No camera update needed
[2026-06-27 16:29:48,481.481 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:29:48,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:29:48,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:29:48,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:29:50,528.528 INFO    ] ================================================
[2026-06-27 16:29:50,543.543 INFO    ] Launching Daemon at Sat Jun 27 16:29:50 IST 2026
[2026-06-27 16:29:50,554.554 INFO    ] ================================================
[2026-06-27 16:29:50,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:29:50
[2026-06-27 16:29:51,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:29:51,386.386 INFO    ] Initializing speech engine...
[2026-06-27 16:29:51,392.392 INFO    ] 2026-06-27 16:29:51
[2026-06-27 16:29:51,597.597 INFO    ] 2026-06-27 16:29:51
[2026-06-27 16:29:51,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:29:51,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:29:51,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:29:51,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:29:52,013.013 INFO    ] time= 27/06/2026 16:29:51
[2026-06-27 16:29:52,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:29:52,041.041 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:29:52,131.131 INFO    ] No existing commands found in stream
[2026-06-27 16:29:57,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:29:57,148.148 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-27 16:29:59,128.128 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:29:59,130.130 INFO    ] Checking for system updates...
[2026-06-27 16:29:59,151.151 INFO    ] 200
[2026-06-27 16:29:59,153.153 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:29:59,183.183 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:29:59,184.184 INFO    ] No update needed
[2026-06-27 16:29:59,186.186 INFO    ] Checking for camera pi updates...
[2026-06-27 16:29:59,207.207 INFO    ] 200
[2026-06-27 16:29:59,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:29:59,232.232 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:29:59,283.283 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:29:59,285.285 INFO    ] No camera update needed
[2026-06-27 16:29:59,286.286 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:29:59,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:29:59,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:29:59,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:30:01,334.334 INFO    ] ================================================
[2026-06-27 16:30:01,350.350 INFO    ] Launching Daemon at Sat Jun 27 16:30:01 IST 2026
[2026-06-27 16:30:01,361.361 INFO    ] ================================================
[2026-06-27 16:30:02,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:30:02
[2026-06-27 16:30:02,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:30:02,745.745 INFO    ] Initializing speech engine...
[2026-06-27 16:30:02,748.748 INFO    ] 2026-06-27 16:30:02
[2026-06-27 16:30:03,010.010 INFO    ] 2026-06-27 16:30:03
[2026-06-27 16:30:03,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:30:03,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:30:03,279.279 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:30:03,426.426 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:30:03,437.437 INFO    ] time= 27/06/2026 16:30:03
[2026-06-27 16:30:03,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:30:03,444.444 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:30:03,536.536 INFO    ] No existing commands found in stream
[2026-06-27 16:30:08,550.550 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:30:08,552.552 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-27 16:30:12,825.825 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 16:30:12,826.826 INFO    ] Checking for system updates...
[2026-06-27 16:30:12,847.847 INFO    ] 200
[2026-06-27 16:30:12,849.849 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:30:12,883.883 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:30:12,885.885 INFO    ] No update needed
[2026-06-27 16:30:12,887.887 INFO    ] Checking for camera pi updates...
[2026-06-27 16:30:12,907.907 INFO    ] 200
[2026-06-27 16:30:12,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:30:12,934.934 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:30:12,985.985 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:30:12,986.986 INFO    ] No camera update needed
[2026-06-27 16:30:12,988.988 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:30:12,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:30:12,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:30:12,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:30:15,035.035 INFO    ] ================================================
[2026-06-27 16:30:15,051.051 INFO    ] Launching Daemon at Sat Jun 27 16:30:15 IST 2026
[2026-06-27 16:30:15,061.061 INFO    ] ================================================
[2026-06-27 16:30:15,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:30:15
[2026-06-27 16:30:15,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:30:15,852.852 INFO    ] Initializing speech engine...
[2026-06-27 16:30:15,857.857 INFO    ] 2026-06-27 16:30:15
[2026-06-27 16:30:16,061.061 INFO    ] 2026-06-27 16:30:16
[2026-06-27 16:30:16,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:30:16,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:30:16,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:30:16,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:30:16,484.484 INFO    ] time= 27/06/2026 16:30:16
[2026-06-27 16:30:16,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:30:16,512.512 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:30:16,606.606 INFO    ] No existing commands found in stream
[2026-06-27 16:30:21,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:30:21,621.621 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-27 16:30:22,743.743 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 16:30:22,744.744 INFO    ] Checking for system updates...
[2026-06-27 16:30:22,765.765 INFO    ] 200
[2026-06-27 16:30:22,766.766 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:30:22,797.797 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:30:22,799.799 INFO    ] No update needed
[2026-06-27 16:30:22,800.800 INFO    ] Checking for camera pi updates...
[2026-06-27 16:30:22,819.819 INFO    ] 200
[2026-06-27 16:30:22,821.821 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:30:22,844.844 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:30:22,894.894 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:30:22,896.896 INFO    ] No camera update needed
[2026-06-27 16:30:22,897.897 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:30:22,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:30:22,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:30:22,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:30:24,943.943 INFO    ] ================================================
[2026-06-27 16:30:24,958.958 INFO    ] Launching Daemon at Sat Jun 27 16:30:24 IST 2026
[2026-06-27 16:30:24,968.968 INFO    ] ================================================
[2026-06-27 16:30:25,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:30:25
[2026-06-27 16:30:25,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:30:25,777.777 INFO    ] Initializing speech engine...
[2026-06-27 16:30:25,786.786 INFO    ] 2026-06-27 16:30:25
[2026-06-27 16:30:26,014.014 INFO    ] 2026-06-27 16:30:25
[2026-06-27 16:30:26,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:30:26,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:30:26,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:30:26,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:30:26,436.436 INFO    ] time= 27/06/2026 16:30:26
[2026-06-27 16:30:26,486.486 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:30:26,502.502 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:30:26,573.573 INFO    ] No existing commands found in stream
[2026-06-27 16:30:31,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:30:31,587.587 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-27 16:30:32,708.708 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 16:30:32,709.709 INFO    ] Checking for system updates...
[2026-06-27 16:30:32,731.731 INFO    ] 200
[2026-06-27 16:30:32,733.733 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:30:32,766.766 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:30:32,767.767 INFO    ] No update needed
[2026-06-27 16:30:32,769.769 INFO    ] Checking for camera pi updates...
[2026-06-27 16:30:32,788.788 INFO    ] 200
[2026-06-27 16:30:32,790.790 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:30:32,814.814 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:30:32,844.844 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:30:32,846.846 INFO    ] No camera update needed
[2026-06-27 16:30:32,847.847 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:30:32,848.848 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:30:32,851.851 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:30:32,854.854 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:30:34,894.894 INFO    ] ================================================
[2026-06-27 16:30:34,910.910 INFO    ] Launching Daemon at Sat Jun 27 16:30:34 IST 2026
[2026-06-27 16:30:34,921.921 INFO    ] ================================================
[2026-06-27 16:30:35,268.268 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:30:35
[2026-06-27 16:30:35,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:30:35,717.717 INFO    ] Initializing speech engine...
[2026-06-27 16:30:35,727.727 INFO    ] 2026-06-27 16:30:35
[2026-06-27 16:30:35,934.934 INFO    ] 2026-06-27 16:30:35
[2026-06-27 16:30:35,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:30:36,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:30:36,159.159 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:30:36,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:30:36,366.366 INFO    ] time= 27/06/2026 16:30:36
[2026-06-27 16:30:36,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:30:36,388.388 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:30:36,455.455 INFO    ] No existing commands found in stream
[2026-06-27 16:30:41,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:30:41,467.467 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-27 16:30:44,063.063 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:30:44,064.064 INFO    ] Checking for system updates...
[2026-06-27 16:30:44,086.086 INFO    ] 200
[2026-06-27 16:30:44,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:30:44,118.118 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:30:44,119.119 INFO    ] No update needed
[2026-06-27 16:30:44,121.121 INFO    ] Checking for camera pi updates...
[2026-06-27 16:30:44,141.141 INFO    ] 200
[2026-06-27 16:30:44,142.142 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:30:44,166.166 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:30:44,196.196 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:30:44,197.197 INFO    ] No camera update needed
[2026-06-27 16:30:44,198.198 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:30:44,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:30:44,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:30:44,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:30:46,246.246 INFO    ] ================================================
[2026-06-27 16:30:46,262.262 INFO    ] Launching Daemon at Sat Jun 27 16:30:46 IST 2026
[2026-06-27 16:30:46,273.273 INFO    ] ================================================
[2026-06-27 16:30:46,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:30:46
[2026-06-27 16:30:46,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:30:47,057.057 INFO    ] Initializing speech engine...
[2026-06-27 16:30:47,066.066 INFO    ] 2026-06-27 16:30:47
[2026-06-27 16:30:47,272.272 INFO    ] 2026-06-27 16:30:47
[2026-06-27 16:30:47,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:30:47,474.474 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:30:47,476.476 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:30:47,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:30:47,709.709 INFO    ] time= 27/06/2026 16:30:47
[2026-06-27 16:30:47,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:30:47,726.726 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:30:47,793.793 INFO    ] No existing commands found in stream
[2026-06-27 16:30:52,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:30:52,806.806 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-27 16:30:54,582.582 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 16:30:54,584.584 INFO    ] Checking for system updates...
[2026-06-27 16:30:54,605.605 INFO    ] 200
[2026-06-27 16:30:54,607.607 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:30:54,637.637 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:30:54,639.639 INFO    ] No update needed
[2026-06-27 16:30:54,640.640 INFO    ] Checking for camera pi updates...
[2026-06-27 16:30:54,660.660 INFO    ] 200
[2026-06-27 16:30:54,662.662 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:30:54,685.685 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:30:54,714.714 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:30:54,716.716 INFO    ] No camera update needed
[2026-06-27 16:30:54,717.717 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:30:54,718.718 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:30:54,722.722 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:30:54,725.725 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:30:56,764.764 INFO    ] ================================================
[2026-06-27 16:30:56,779.779 INFO    ] Launching Daemon at Sat Jun 27 16:30:56 IST 2026
[2026-06-27 16:30:56,790.790 INFO    ] ================================================
[2026-06-27 16:30:57,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:30:57
[2026-06-27 16:30:57,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:30:57,662.662 INFO    ] Initializing speech engine...
[2026-06-27 16:30:57,667.667 INFO    ] 2026-06-27 16:30:57
[2026-06-27 16:30:57,879.879 INFO    ] 2026-06-27 16:30:57
[2026-06-27 16:30:57,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:30:58,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:30:58,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:30:58,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:30:58,307.307 INFO    ] time= 27/06/2026 16:30:58
[2026-06-27 16:30:58,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:30:58,336.336 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:30:58,428.428 INFO    ] No existing commands found in stream
[2026-06-27 16:31:03,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:31:03,446.446 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-27 16:31:07,386.386 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:31:07,388.388 INFO    ] Checking for system updates...
[2026-06-27 16:31:07,409.409 INFO    ] 200
[2026-06-27 16:31:07,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:31:07,442.442 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:31:07,444.444 INFO    ] No update needed
[2026-06-27 16:31:07,445.445 INFO    ] Checking for camera pi updates...
[2026-06-27 16:31:07,465.465 INFO    ] 200
[2026-06-27 16:31:07,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:31:07,490.490 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:31:07,545.545 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:31:07,547.547 INFO    ] No camera update needed
[2026-06-27 16:31:07,548.548 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:31:07,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:31:07,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:31:07,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:31:09,595.595 INFO    ] ================================================
[2026-06-27 16:31:09,611.611 INFO    ] Launching Daemon at Sat Jun 27 16:31:09 IST 2026
[2026-06-27 16:31:09,621.621 INFO    ] ================================================
[2026-06-27 16:31:09,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:31:09
[2026-06-27 16:31:10,292.292 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:31:10,438.438 INFO    ] Initializing speech engine...
[2026-06-27 16:31:10,443.443 INFO    ] 2026-06-27 16:31:10
[2026-06-27 16:31:10,648.648 INFO    ] 2026-06-27 16:31:10
[2026-06-27 16:31:10,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:31:10,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:31:10,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:31:11,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:31:11,064.064 INFO    ] time= 27/06/2026 16:31:11
[2026-06-27 16:31:11,092.092 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:31:11,098.098 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:31:11,165.165 INFO    ] No existing commands found in stream
[2026-06-27 16:31:16,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:31:16,197.197 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-27 16:31:19,755.755 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 16:31:19,756.756 INFO    ] Checking for system updates...
[2026-06-27 16:31:19,777.777 INFO    ] 200
[2026-06-27 16:31:19,778.778 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:31:19,808.808 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:31:19,810.810 INFO    ] No update needed
[2026-06-27 16:31:19,811.811 INFO    ] Checking for camera pi updates...
[2026-06-27 16:31:19,831.831 INFO    ] 200
[2026-06-27 16:31:19,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:31:19,855.855 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:31:19,906.906 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:31:19,907.907 INFO    ] No camera update needed
[2026-06-27 16:31:19,908.908 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:31:19,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:31:19,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:31:19,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:31:21,954.954 INFO    ] ================================================
[2026-06-27 16:31:21,969.969 INFO    ] Launching Daemon at Sat Jun 27 16:31:21 IST 2026
[2026-06-27 16:31:21,980.980 INFO    ] ================================================
[2026-06-27 16:31:22,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:31:22
[2026-06-27 16:31:22,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:31:22,817.817 INFO    ] Initializing speech engine...
[2026-06-27 16:31:22,822.822 INFO    ] 2026-06-27 16:31:22
[2026-06-27 16:31:23,043.043 INFO    ] 2026-06-27 16:31:23
[2026-06-27 16:31:23,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:31:23,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:31:23,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:31:23,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:31:23,522.522 INFO    ] time= 27/06/2026 16:31:23
[2026-06-27 16:31:23,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:31:23,530.530 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:31:23,603.603 INFO    ] No existing commands found in stream
[2026-06-27 16:31:28,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:31:28,615.615 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-27 16:31:29,808.808 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 16:31:29,810.810 INFO    ] Checking for system updates...
[2026-06-27 16:31:29,830.830 INFO    ] 200
[2026-06-27 16:31:29,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:31:29,865.865 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:31:29,866.866 INFO    ] No update needed
[2026-06-27 16:31:29,868.868 INFO    ] Checking for camera pi updates...
[2026-06-27 16:31:29,889.889 INFO    ] 200
[2026-06-27 16:31:29,890.890 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:31:29,915.915 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:31:29,969.969 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:31:29,971.971 INFO    ] No camera update needed
[2026-06-27 16:31:29,972.972 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:31:29,974.974 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:31:29,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:31:29,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:31:32,011.011 INFO    ] ================================================
[2026-06-27 16:31:32,020.020 INFO    ] Launching Daemon at Sat Jun 27 16:31:32 IST 2026
[2026-06-27 16:31:32,027.027 INFO    ] ================================================
[2026-06-27 16:31:32,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:31:32
[2026-06-27 16:31:32,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:31:32,871.871 INFO    ] Initializing speech engine...
[2026-06-27 16:31:32,876.876 INFO    ] 2026-06-27 16:31:32
[2026-06-27 16:31:33,093.093 INFO    ] 2026-06-27 16:31:33
[2026-06-27 16:31:33,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:31:33,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:31:33,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:31:33,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:31:33,543.543 INFO    ] time= 27/06/2026 16:31:33
[2026-06-27 16:31:33,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:31:33,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:31:33,618.618 INFO    ] No existing commands found in stream
[2026-06-27 16:31:38,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:31:38,631.631 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-27 16:31:39,583.583 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 16:31:39,585.585 INFO    ] Checking for system updates...
[2026-06-27 16:31:39,607.607 INFO    ] 200
[2026-06-27 16:31:39,608.608 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:31:39,638.638 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:31:39,640.640 INFO    ] No update needed
[2026-06-27 16:31:39,641.641 INFO    ] Checking for camera pi updates...
[2026-06-27 16:31:39,664.664 INFO    ] 200
[2026-06-27 16:31:39,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:31:39,708.708 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:31:39,759.759 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:31:39,761.761 INFO    ] No camera update needed
[2026-06-27 16:31:39,764.764 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:31:39,766.766 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:31:39,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:31:39,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:31:41,816.816 INFO    ] ================================================
[2026-06-27 16:31:41,831.831 INFO    ] Launching Daemon at Sat Jun 27 16:31:41 IST 2026
[2026-06-27 16:31:41,842.842 INFO    ] ================================================
[2026-06-27 16:31:42,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:31:42
[2026-06-27 16:31:42,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:31:42,643.643 INFO    ] Initializing speech engine...
[2026-06-27 16:31:42,646.646 INFO    ] 2026-06-27 16:31:42
[2026-06-27 16:31:42,866.866 INFO    ] 2026-06-27 16:31:42
[2026-06-27 16:31:42,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:31:43,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:31:43,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:31:43,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:31:43,292.292 INFO    ] time= 27/06/2026 16:31:43
[2026-06-27 16:31:43,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:31:43,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:31:43,412.412 INFO    ] No existing commands found in stream
[2026-06-27 16:31:48,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:31:48,423.423 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-27 16:31:50,071.071 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:31:50,072.072 INFO    ] Checking for system updates...
[2026-06-27 16:31:50,093.093 INFO    ] 200
[2026-06-27 16:31:50,095.095 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:31:50,125.125 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:31:50,126.126 INFO    ] No update needed
[2026-06-27 16:31:50,128.128 INFO    ] Checking for camera pi updates...
[2026-06-27 16:31:50,147.147 INFO    ] 200
[2026-06-27 16:31:50,149.149 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:31:50,172.172 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:31:50,213.213 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:31:50,214.214 INFO    ] No camera update needed
[2026-06-27 16:31:50,215.215 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:31:50,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:31:50,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:31:50,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:31:52,260.260 INFO    ] ================================================
[2026-06-27 16:31:52,275.275 INFO    ] Launching Daemon at Sat Jun 27 16:31:52 IST 2026
[2026-06-27 16:31:52,286.286 INFO    ] ================================================
[2026-06-27 16:31:52,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:31:52
[2026-06-27 16:31:52,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:31:53,070.070 INFO    ] Initializing speech engine...
[2026-06-27 16:31:53,075.075 INFO    ] 2026-06-27 16:31:53
[2026-06-27 16:31:53,268.268 INFO    ] 2026-06-27 16:31:53
[2026-06-27 16:31:53,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:31:53,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:31:53,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:31:53,714.714 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:31:53,768.768 INFO    ] time= 27/06/2026 16:31:53
[2026-06-27 16:31:53,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:31:53,799.799 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:31:53,871.871 INFO    ] No existing commands found in stream
[2026-06-27 16:31:58,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:31:58,883.883 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-27 16:32:01,139.139 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:32:01,141.141 INFO    ] Checking for system updates...
[2026-06-27 16:32:01,164.164 INFO    ] 200
[2026-06-27 16:32:01,166.166 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:32:01,198.198 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:32:01,200.200 INFO    ] No update needed
[2026-06-27 16:32:01,201.201 INFO    ] Checking for camera pi updates...
[2026-06-27 16:32:01,222.222 INFO    ] 200
[2026-06-27 16:32:01,223.223 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:32:01,247.247 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:32:01,300.300 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:32:01,301.301 INFO    ] No camera update needed
[2026-06-27 16:32:01,302.302 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:32:01,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:32:01,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:32:01,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:32:03,343.343 INFO    ] ================================================
[2026-06-27 16:32:03,358.358 INFO    ] Launching Daemon at Sat Jun 27 16:32:03 IST 2026
[2026-06-27 16:32:03,369.369 INFO    ] ================================================
[2026-06-27 16:32:03,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:32:03
[2026-06-27 16:32:04,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:32:04,161.161 INFO    ] Initializing speech engine...
[2026-06-27 16:32:04,165.165 INFO    ] 2026-06-27 16:32:04
[2026-06-27 16:32:04,368.368 INFO    ] 2026-06-27 16:32:04
[2026-06-27 16:32:04,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:32:04,589.589 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:32:04,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:32:04,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:32:04,825.825 INFO    ] time= 27/06/2026 16:32:04
[2026-06-27 16:32:04,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:32:04,842.842 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:32:04,914.914 INFO    ] No existing commands found in stream
[2026-06-27 16:32:09,928.928 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:32:09,930.930 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-27 16:32:13,407.407 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 16:32:13,409.409 INFO    ] Checking for system updates...
[2026-06-27 16:32:13,430.430 INFO    ] 200
[2026-06-27 16:32:13,431.431 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:32:13,462.462 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:32:13,464.464 INFO    ] No update needed
[2026-06-27 16:32:13,465.465 INFO    ] Checking for camera pi updates...
[2026-06-27 16:32:13,485.485 INFO    ] 200
[2026-06-27 16:32:13,486.486 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:32:13,511.511 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:32:13,559.559 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:32:13,561.561 INFO    ] No camera update needed
[2026-06-27 16:32:13,562.562 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:32:13,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:32:13,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:32:13,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:32:15,607.607 INFO    ] ================================================
[2026-06-27 16:32:15,622.622 INFO    ] Launching Daemon at Sat Jun 27 16:32:15 IST 2026
[2026-06-27 16:32:15,633.633 INFO    ] ================================================
[2026-06-27 16:32:15,965.965 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:32:15
[2026-06-27 16:32:16,279.279 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:32:16,409.409 INFO    ] Initializing speech engine...
[2026-06-27 16:32:16,417.417 INFO    ] 2026-06-27 16:32:16
[2026-06-27 16:32:16,630.630 INFO    ] 2026-06-27 16:32:16
[2026-06-27 16:32:16,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:32:16,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:32:16,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:32:17,000.000 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:32:17,048.048 INFO    ] time= 27/06/2026 16:32:17
[2026-06-27 16:32:17,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:32:17,076.076 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:32:17,143.143 INFO    ] No existing commands found in stream
[2026-06-27 16:32:22,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:32:22,159.159 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-27 16:32:23,405.405 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 16:32:23,406.406 INFO    ] Checking for system updates...
[2026-06-27 16:32:23,427.427 INFO    ] 200
[2026-06-27 16:32:23,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:32:23,461.461 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:32:23,463.463 INFO    ] No update needed
[2026-06-27 16:32:23,464.464 INFO    ] Checking for camera pi updates...
[2026-06-27 16:32:23,485.485 INFO    ] 200
[2026-06-27 16:32:23,486.486 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:32:23,511.511 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:32:23,567.567 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:32:23,569.569 INFO    ] No camera update needed
[2026-06-27 16:32:23,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:32:23,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:32:23,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:32:23,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:32:25,619.619 INFO    ] ================================================
[2026-06-27 16:32:25,634.634 INFO    ] Launching Daemon at Sat Jun 27 16:32:25 IST 2026
[2026-06-27 16:32:25,644.644 INFO    ] ================================================
[2026-06-27 16:32:25,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:32:25
[2026-06-27 16:32:26,283.283 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:32:26,416.416 INFO    ] Initializing speech engine...
[2026-06-27 16:32:26,429.429 INFO    ] 2026-06-27 16:32:26
[2026-06-27 16:32:26,642.642 INFO    ] 2026-06-27 16:32:26
[2026-06-27 16:32:26,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:32:26,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:32:26,867.867 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:32:27,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:32:27,089.089 INFO    ] time= 27/06/2026 16:32:27
[2026-06-27 16:32:27,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:32:27,098.098 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:32:27,165.165 INFO    ] No existing commands found in stream
[2026-06-27 16:32:32,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:32:32,177.177 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-27 16:32:33,371.371 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 16:32:33,373.373 INFO    ] Checking for system updates...
[2026-06-27 16:32:33,394.394 INFO    ] 200
[2026-06-27 16:32:33,396.396 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:32:33,427.427 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:32:33,428.428 INFO    ] No update needed
[2026-06-27 16:32:33,430.430 INFO    ] Checking for camera pi updates...
[2026-06-27 16:32:33,450.450 INFO    ] 200
[2026-06-27 16:32:33,452.452 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:32:33,476.476 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:32:33,510.510 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:32:33,511.511 INFO    ] No camera update needed
[2026-06-27 16:32:33,512.512 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:32:33,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:32:33,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:32:33,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:32:35,560.560 INFO    ] ================================================
[2026-06-27 16:32:35,575.575 INFO    ] Launching Daemon at Sat Jun 27 16:32:35 IST 2026
[2026-06-27 16:32:35,586.586 INFO    ] ================================================
[2026-06-27 16:32:35,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:32:35
[2026-06-27 16:32:36,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:32:36,383.383 INFO    ] Initializing speech engine...
[2026-06-27 16:32:36,388.388 INFO    ] 2026-06-27 16:32:36
[2026-06-27 16:32:36,592.592 INFO    ] 2026-06-27 16:32:36
[2026-06-27 16:32:36,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:32:36,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:32:36,814.814 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:32:36,997.997 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:32:37,030.030 INFO    ] time= 27/06/2026 16:32:37
[2026-06-27 16:32:37,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:32:37,037.037 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:32:37,128.128 INFO    ] No existing commands found in stream
[2026-06-27 16:32:42,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:32:42,145.145 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-27 16:32:42,951.951 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 16:32:42,953.953 INFO    ] Checking for system updates...
[2026-06-27 16:32:42,975.975 INFO    ] 200
[2026-06-27 16:32:42,977.977 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:32:43,011.011 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:32:43,013.013 INFO    ] No update needed
[2026-06-27 16:32:43,014.014 INFO    ] Checking for camera pi updates...
[2026-06-27 16:32:43,037.037 INFO    ] 200
[2026-06-27 16:32:43,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:32:43,067.067 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:32:43,115.115 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:32:43,116.116 INFO    ] No camera update needed
[2026-06-27 16:32:43,117.117 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:32:43,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:32:43,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:32:43,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:32:45,163.163 INFO    ] ================================================
[2026-06-27 16:32:45,179.179 INFO    ] Launching Daemon at Sat Jun 27 16:32:45 IST 2026
[2026-06-27 16:32:45,190.190 INFO    ] ================================================
[2026-06-27 16:32:45,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:32:45
[2026-06-27 16:32:45,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:32:45,977.977 INFO    ] Initializing speech engine...
[2026-06-27 16:32:45,987.987 INFO    ] 2026-06-27 16:32:45
[2026-06-27 16:32:46,196.196 INFO    ] 2026-06-27 16:32:46
[2026-06-27 16:32:46,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:32:46,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:32:46,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:32:46,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:32:46,617.617 INFO    ] time= 27/06/2026 16:32:46
[2026-06-27 16:32:46,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:32:46,652.652 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:32:46,720.720 INFO    ] No existing commands found in stream
[2026-06-27 16:32:51,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:32:51,732.732 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-27 16:32:56,060.060 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 16:32:56,062.062 INFO    ] Checking for system updates...
[2026-06-27 16:32:56,084.084 INFO    ] 200
[2026-06-27 16:32:56,086.086 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:32:56,118.118 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:32:56,120.120 INFO    ] No update needed
[2026-06-27 16:32:56,121.121 INFO    ] Checking for camera pi updates...
[2026-06-27 16:32:56,141.141 INFO    ] 200
[2026-06-27 16:32:56,142.142 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:32:56,166.166 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:32:56,195.195 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:32:56,196.196 INFO    ] No camera update needed
[2026-06-27 16:32:56,198.198 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:32:56,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:32:56,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:32:56,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:32:58,245.245 INFO    ] ================================================
[2026-06-27 16:32:58,260.260 INFO    ] Launching Daemon at Sat Jun 27 16:32:58 IST 2026
[2026-06-27 16:32:58,271.271 INFO    ] ================================================
[2026-06-27 16:32:58,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:32:58
[2026-06-27 16:32:58,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:32:59,057.057 INFO    ] Initializing speech engine...
[2026-06-27 16:32:59,070.070 INFO    ] 2026-06-27 16:32:59
[2026-06-27 16:32:59,279.279 INFO    ] 2026-06-27 16:32:59
[2026-06-27 16:32:59,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:32:59,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:32:59,494.494 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:32:59,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:32:59,718.718 INFO    ] time= 27/06/2026 16:32:59
[2026-06-27 16:32:59,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:32:59,725.725 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:32:59,793.793 INFO    ] No existing commands found in stream
[2026-06-27 16:33:04,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:33:04,810.810 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-27 16:33:08,874.874 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 16:33:08,875.875 INFO    ] Checking for system updates...
[2026-06-27 16:33:08,896.896 INFO    ] 200
[2026-06-27 16:33:08,898.898 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:33:08,928.928 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:33:08,930.930 INFO    ] No update needed
[2026-06-27 16:33:08,931.931 INFO    ] Checking for camera pi updates...
[2026-06-27 16:33:08,952.952 INFO    ] 200
[2026-06-27 16:33:08,953.953 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:33:08,978.978 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:33:09,113.113 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:33:09,115.115 INFO    ] No camera update needed
[2026-06-27 16:33:09,116.116 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:33:09,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:33:09,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:33:09,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:33:11,161.161 INFO    ] ================================================
[2026-06-27 16:33:11,177.177 INFO    ] Launching Daemon at Sat Jun 27 16:33:11 IST 2026
[2026-06-27 16:33:11,188.188 INFO    ] ================================================
[2026-06-27 16:33:11,521.521 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:33:11
[2026-06-27 16:33:11,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:33:11,986.986 INFO    ] Initializing speech engine...
[2026-06-27 16:33:11,991.991 INFO    ] 2026-06-27 16:33:11
[2026-06-27 16:33:12,198.198 INFO    ] 2026-06-27 16:33:12
[2026-06-27 16:33:12,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:33:12,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:33:12,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:33:12,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:33:12,642.642 INFO    ] time= 27/06/2026 16:33:12
[2026-06-27 16:33:12,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:33:12,649.649 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:33:12,715.715 INFO    ] No existing commands found in stream
[2026-06-27 16:33:17,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:33:17,728.728 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-27 16:33:19,957.957 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 16:33:19,959.959 INFO    ] Checking for system updates...
[2026-06-27 16:33:19,981.981 INFO    ] 200
[2026-06-27 16:33:19,983.983 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:33:20,017.017 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:33:20,018.018 INFO    ] No update needed
[2026-06-27 16:33:20,019.019 INFO    ] Checking for camera pi updates...
[2026-06-27 16:33:20,040.040 INFO    ] 200
[2026-06-27 16:33:20,041.041 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:33:20,065.065 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:33:20,109.109 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:33:20,111.111 INFO    ] No camera update needed
[2026-06-27 16:33:20,112.112 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:33:20,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:33:20,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:33:20,120.120 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:33:22,159.159 INFO    ] ================================================
[2026-06-27 16:33:22,175.175 INFO    ] Launching Daemon at Sat Jun 27 16:33:22 IST 2026
[2026-06-27 16:33:22,187.187 INFO    ] ================================================
[2026-06-27 16:33:22,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:33:22
[2026-06-27 16:33:22,840.840 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:33:22,978.978 INFO    ] Initializing speech engine...
[2026-06-27 16:33:22,986.986 INFO    ] 2026-06-27 16:33:22
[2026-06-27 16:33:23,197.197 INFO    ] 2026-06-27 16:33:23
[2026-06-27 16:33:23,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:33:23,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:33:23,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:33:23,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:33:23,644.644 INFO    ] time= 27/06/2026 16:33:23
[2026-06-27 16:33:23,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:33:23,652.652 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:33:23,719.719 INFO    ] No existing commands found in stream
[2026-06-27 16:33:28,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:33:28,739.739 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-27 16:33:30,288.288 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 16:33:30,289.289 INFO    ] Checking for system updates...
[2026-06-27 16:33:30,311.311 INFO    ] 200
[2026-06-27 16:33:30,312.312 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:33:30,343.343 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:33:30,345.345 INFO    ] No update needed
[2026-06-27 16:33:30,346.346 INFO    ] Checking for camera pi updates...
[2026-06-27 16:33:30,365.365 INFO    ] 200
[2026-06-27 16:33:30,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:33:30,392.392 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:33:30,441.441 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:33:30,442.442 INFO    ] No camera update needed
[2026-06-27 16:33:30,443.443 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:33:30,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:33:30,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:33:30,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:33:32,482.482 INFO    ] ================================================
[2026-06-27 16:33:32,491.491 INFO    ] Launching Daemon at Sat Jun 27 16:33:32 IST 2026
[2026-06-27 16:33:32,497.497 INFO    ] ================================================
[2026-06-27 16:33:32,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:33:32
[2026-06-27 16:33:33,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:33:33,240.240 INFO    ] Initializing speech engine...
[2026-06-27 16:33:33,245.245 INFO    ] 2026-06-27 16:33:33
[2026-06-27 16:33:33,467.467 INFO    ] 2026-06-27 16:33:33
[2026-06-27 16:33:33,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:33:33,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:33:33,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:33:33,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:33:33,977.977 INFO    ] time= 27/06/2026 16:33:33
[2026-06-27 16:33:34,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:33:34,004.004 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:33:34,100.100 INFO    ] No existing commands found in stream
[2026-06-27 16:33:39,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:33:39,112.112 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-27 16:33:42,173.173 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 16:33:42,174.174 INFO    ] Checking for system updates...
[2026-06-27 16:33:42,197.197 INFO    ] 200
[2026-06-27 16:33:42,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:33:42,229.229 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:33:42,231.231 INFO    ] No update needed
[2026-06-27 16:33:42,232.232 INFO    ] Checking for camera pi updates...
[2026-06-27 16:33:42,256.256 INFO    ] 200
[2026-06-27 16:33:42,257.257 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:33:42,283.283 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:33:42,326.326 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:33:42,327.327 INFO    ] No camera update needed
[2026-06-27 16:33:42,328.328 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:33:42,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:33:42,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:33:42,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:33:44,375.375 INFO    ] ================================================
[2026-06-27 16:33:44,390.390 INFO    ] Launching Daemon at Sat Jun 27 16:33:44 IST 2026
[2026-06-27 16:33:44,401.401 INFO    ] ================================================
[2026-06-27 16:33:44,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:33:44
[2026-06-27 16:33:45,071.071 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:33:45,214.214 INFO    ] Initializing speech engine...
[2026-06-27 16:33:45,219.219 INFO    ] 2026-06-27 16:33:45
[2026-06-27 16:33:45,420.420 INFO    ] 2026-06-27 16:33:45
[2026-06-27 16:33:45,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:33:45,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:33:45,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:33:45,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:33:45,844.844 INFO    ] time= 27/06/2026 16:33:45
[2026-06-27 16:33:45,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:33:45,874.874 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:33:45,964.964 INFO    ] No existing commands found in stream
[2026-06-27 16:33:50,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:33:50,976.976 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-27 16:33:53,212.212 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 16:33:53,214.214 INFO    ] Checking for system updates...
[2026-06-27 16:33:53,236.236 INFO    ] 200
[2026-06-27 16:33:53,238.238 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:33:53,269.269 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:33:53,270.270 INFO    ] No update needed
[2026-06-27 16:33:53,271.271 INFO    ] Checking for camera pi updates...
[2026-06-27 16:33:53,291.291 INFO    ] 200
[2026-06-27 16:33:53,293.293 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:33:53,316.316 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:33:53,368.368 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:33:53,369.369 INFO    ] No camera update needed
[2026-06-27 16:33:53,370.370 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:33:53,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:33:53,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:33:53,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:33:55,418.418 INFO    ] ================================================
[2026-06-27 16:33:55,433.433 INFO    ] Launching Daemon at Sat Jun 27 16:33:55 IST 2026
[2026-06-27 16:33:55,444.444 INFO    ] ================================================
[2026-06-27 16:33:55,773.773 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:33:55
[2026-06-27 16:33:56,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:33:56,217.217 INFO    ] Initializing speech engine...
[2026-06-27 16:33:56,222.222 INFO    ] 2026-06-27 16:33:56
[2026-06-27 16:33:56,441.441 INFO    ] 2026-06-27 16:33:56
[2026-06-27 16:33:56,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:33:56,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:33:56,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:33:56,816.816 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:33:56,870.870 INFO    ] time= 27/06/2026 16:33:56
[2026-06-27 16:33:56,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:33:56,899.899 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:33:56,967.967 INFO    ] No existing commands found in stream
[2026-06-27 16:34:01,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:34:01,984.984 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-27 16:34:05,300.300 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:34:05,302.302 INFO    ] Checking for system updates...
[2026-06-27 16:34:05,325.325 INFO    ] 200
[2026-06-27 16:34:05,327.327 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:34:05,360.360 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:34:05,361.361 INFO    ] No update needed
[2026-06-27 16:34:05,363.363 INFO    ] Checking for camera pi updates...
[2026-06-27 16:34:05,382.382 INFO    ] 200
[2026-06-27 16:34:05,384.384 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:34:05,408.408 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:34:05,449.449 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:34:05,451.451 INFO    ] No camera update needed
[2026-06-27 16:34:05,452.452 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:34:05,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:34:05,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:34:05,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:34:07,497.497 INFO    ] ================================================
[2026-06-27 16:34:07,512.512 INFO    ] Launching Daemon at Sat Jun 27 16:34:07 IST 2026
[2026-06-27 16:34:07,523.523 INFO    ] ================================================
[2026-06-27 16:34:07,875.875 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:34:07
[2026-06-27 16:34:08,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:34:08,325.325 INFO    ] Initializing speech engine...
[2026-06-27 16:34:08,332.332 INFO    ] 2026-06-27 16:34:08
[2026-06-27 16:34:08,559.559 INFO    ] 2026-06-27 16:34:08
[2026-06-27 16:34:08,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:34:08,794.794 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:34:08,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:34:08,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:34:09,043.043 INFO    ] time= 27/06/2026 16:34:09
[2026-06-27 16:34:09,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:34:09,056.056 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:34:09,130.130 INFO    ] No existing commands found in stream
[2026-06-27 16:34:14,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:34:14,142.142 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-27 16:34:14,913.913 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 16:34:14,915.915 INFO    ] Checking for system updates...
[2026-06-27 16:34:14,946.946 INFO    ] 200
[2026-06-27 16:34:14,947.947 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:34:14,981.981 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:34:14,983.983 INFO    ] No update needed
[2026-06-27 16:34:14,984.984 INFO    ] Checking for camera pi updates...
[2026-06-27 16:34:15,007.007 INFO    ] 200
[2026-06-27 16:34:15,009.009 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:34:15,033.033 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:34:15,083.083 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:34:15,085.085 INFO    ] No camera update needed
[2026-06-27 16:34:15,086.086 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:34:15,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:34:15,091.091 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:34:15,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:34:17,134.134 INFO    ] ================================================
[2026-06-27 16:34:17,149.149 INFO    ] Launching Daemon at Sat Jun 27 16:34:17 IST 2026
[2026-06-27 16:34:17,160.160 INFO    ] ================================================
[2026-06-27 16:34:17,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:34:17
[2026-06-27 16:34:17,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:34:17,956.956 INFO    ] Initializing speech engine...
[2026-06-27 16:34:17,970.970 INFO    ] 2026-06-27 16:34:17
[2026-06-27 16:34:18,176.176 INFO    ] 2026-06-27 16:34:18
[2026-06-27 16:34:18,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:34:18,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:34:18,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:34:18,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:34:18,595.595 INFO    ] time= 27/06/2026 16:34:18
[2026-06-27 16:34:18,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:34:18,624.624 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:34:18,698.698 INFO    ] No existing commands found in stream
[2026-06-27 16:34:23,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:34:23,736.736 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-27 16:34:28,123.123 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:34:28,124.124 INFO    ] Checking for system updates...
[2026-06-27 16:34:28,147.147 INFO    ] 200
[2026-06-27 16:34:28,148.148 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:34:28,179.179 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:34:28,180.180 INFO    ] No update needed
[2026-06-27 16:34:28,181.181 INFO    ] Checking for camera pi updates...
[2026-06-27 16:34:28,203.203 INFO    ] 200
[2026-06-27 16:34:28,204.204 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:34:28,229.229 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:34:28,271.271 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:34:28,273.273 INFO    ] No camera update needed
[2026-06-27 16:34:28,274.274 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:34:28,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:34:28,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:34:28,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:34:30,320.320 INFO    ] ================================================
[2026-06-27 16:34:30,335.335 INFO    ] Launching Daemon at Sat Jun 27 16:34:30 IST 2026
[2026-06-27 16:34:30,346.346 INFO    ] ================================================
[2026-06-27 16:34:30,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:34:30
[2026-06-27 16:34:31,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:34:31,227.227 INFO    ] Initializing speech engine...
[2026-06-27 16:34:31,232.232 INFO    ] 2026-06-27 16:34:31
[2026-06-27 16:34:31,440.440 INFO    ] 2026-06-27 16:34:31
[2026-06-27 16:34:31,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:34:31,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:34:31,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:34:31,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:34:31,963.963 INFO    ] time= 27/06/2026 16:34:31
[2026-06-27 16:34:31,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:34:32,012.012 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:34:32,091.091 INFO    ] No existing commands found in stream
[2026-06-27 16:34:37,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:34:37,106.106 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-27 16:34:38,656.656 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 16:34:38,657.657 INFO    ] Checking for system updates...
[2026-06-27 16:34:38,679.679 INFO    ] 200
[2026-06-27 16:34:38,681.681 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:34:38,712.712 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:34:38,713.713 INFO    ] No update needed
[2026-06-27 16:34:38,715.715 INFO    ] Checking for camera pi updates...
[2026-06-27 16:34:38,737.737 INFO    ] 200
[2026-06-27 16:34:38,738.738 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:34:38,764.764 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:34:38,808.808 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:34:38,810.810 INFO    ] No camera update needed
[2026-06-27 16:34:38,811.811 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:34:38,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:34:38,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:34:38,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:34:40,859.859 INFO    ] ================================================
[2026-06-27 16:34:40,874.874 INFO    ] Launching Daemon at Sat Jun 27 16:34:40 IST 2026
[2026-06-27 16:34:40,885.885 INFO    ] ================================================
[2026-06-27 16:34:41,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:34:41
[2026-06-27 16:34:41,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:34:41,766.766 INFO    ] Initializing speech engine...
[2026-06-27 16:34:41,772.772 INFO    ] 2026-06-27 16:34:41
[2026-06-27 16:34:41,985.985 INFO    ] 2026-06-27 16:34:41
[2026-06-27 16:34:42,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:34:42,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:34:42,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:34:42,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:34:42,438.438 INFO    ] time= 27/06/2026 16:34:42
[2026-06-27 16:34:42,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:34:42,441.441 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:34:42,533.533 INFO    ] No existing commands found in stream
[2026-06-27 16:34:47,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:34:47,546.546 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-27 16:34:48,114.114 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 16:34:48,115.115 INFO    ] Checking for system updates...
[2026-06-27 16:34:48,138.138 INFO    ] 200
[2026-06-27 16:34:48,139.139 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:34:48,170.170 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:34:48,171.171 INFO    ] No update needed
[2026-06-27 16:34:48,172.172 INFO    ] Checking for camera pi updates...
[2026-06-27 16:34:48,194.194 INFO    ] 200
[2026-06-27 16:34:48,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:34:48,221.221 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:34:48,271.271 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:34:48,273.273 INFO    ] No camera update needed
[2026-06-27 16:34:48,274.274 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:34:48,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:34:48,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:34:48,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:34:50,319.319 INFO    ] ================================================
[2026-06-27 16:34:50,334.334 INFO    ] Launching Daemon at Sat Jun 27 16:34:50 IST 2026
[2026-06-27 16:34:50,345.345 INFO    ] ================================================
[2026-06-27 16:34:50,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:34:50
[2026-06-27 16:34:51,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:34:51,157.157 INFO    ] Initializing speech engine...
[2026-06-27 16:34:51,163.163 INFO    ] 2026-06-27 16:34:51
[2026-06-27 16:34:51,367.367 INFO    ] 2026-06-27 16:34:51
[2026-06-27 16:34:51,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:34:51,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:34:51,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:34:51,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:34:51,805.805 INFO    ] time= 27/06/2026 16:34:51
[2026-06-27 16:34:51,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:34:51,816.816 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:34:51,884.884 INFO    ] No existing commands found in stream
[2026-06-27 16:34:56,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:34:56,900.900 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-27 16:34:59,243.243 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 16:34:59,244.244 INFO    ] Checking for system updates...
[2026-06-27 16:34:59,265.265 INFO    ] 200
[2026-06-27 16:34:59,266.266 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:34:59,301.301 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:34:59,302.302 INFO    ] No update needed
[2026-06-27 16:34:59,303.303 INFO    ] Checking for camera pi updates...
[2026-06-27 16:34:59,325.325 INFO    ] 200
[2026-06-27 16:34:59,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:34:59,350.350 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:34:59,406.406 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:34:59,407.407 INFO    ] No camera update needed
[2026-06-27 16:34:59,408.408 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:34:59,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:34:59,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:34:59,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:35:01,451.451 INFO    ] ================================================
[2026-06-27 16:35:01,465.465 INFO    ] Launching Daemon at Sat Jun 27 16:35:01 IST 2026
[2026-06-27 16:35:01,476.476 INFO    ] ================================================
[2026-06-27 16:35:01,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:35:01
[2026-06-27 16:35:02,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:35:02,367.367 INFO    ] Initializing speech engine...
[2026-06-27 16:35:02,371.371 INFO    ] 2026-06-27 16:35:02
[2026-06-27 16:35:02,590.590 INFO    ] 2026-06-27 16:35:02
[2026-06-27 16:35:02,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:35:02,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:35:02,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:35:02,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:35:03,031.031 INFO    ] time= 27/06/2026 16:35:03
[2026-06-27 16:35:03,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:35:03,039.039 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:35:03,130.130 INFO    ] No existing commands found in stream
[2026-06-27 16:35:08,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:35:08,141.141 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-27 16:35:11,024.024 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:35:11,026.026 INFO    ] Checking for system updates...
[2026-06-27 16:35:11,048.048 INFO    ] 200
[2026-06-27 16:35:11,049.049 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:35:11,082.082 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:35:11,084.084 INFO    ] No update needed
[2026-06-27 16:35:11,085.085 INFO    ] Checking for camera pi updates...
[2026-06-27 16:35:11,106.106 INFO    ] 200
[2026-06-27 16:35:11,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:35:11,131.131 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:35:11,273.273 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:35:11,274.274 INFO    ] No camera update needed
[2026-06-27 16:35:11,275.275 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:35:11,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:35:11,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:35:11,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:35:13,325.325 INFO    ] ================================================
[2026-06-27 16:35:13,341.341 INFO    ] Launching Daemon at Sat Jun 27 16:35:13 IST 2026
[2026-06-27 16:35:13,353.353 INFO    ] ================================================
[2026-06-27 16:35:13,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:35:13
[2026-06-27 16:35:14,038.038 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:35:14,169.169 INFO    ] Initializing speech engine...
[2026-06-27 16:35:14,177.177 INFO    ] 2026-06-27 16:35:14
[2026-06-27 16:35:14,388.388 INFO    ] 2026-06-27 16:35:14
[2026-06-27 16:35:14,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:35:14,605.605 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:35:14,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:35:14,808.808 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:35:14,833.833 INFO    ] time= 27/06/2026 16:35:14
[2026-06-27 16:35:14,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:35:14,840.840 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:35:14,907.907 INFO    ] No existing commands found in stream
[2026-06-27 16:35:19,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:35:19,919.919 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-27 16:35:21,448.448 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:35:21,450.450 INFO    ] Checking for system updates...
[2026-06-27 16:35:21,473.473 INFO    ] 200
[2026-06-27 16:35:21,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:35:21,506.506 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:35:21,507.507 INFO    ] No update needed
[2026-06-27 16:35:21,509.509 INFO    ] Checking for camera pi updates...
[2026-06-27 16:35:21,529.529 INFO    ] 200
[2026-06-27 16:35:21,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:35:21,554.554 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:35:21,606.606 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:35:21,607.607 INFO    ] No camera update needed
[2026-06-27 16:35:21,609.609 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:35:21,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:35:21,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:35:21,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:35:23,656.656 INFO    ] ================================================
[2026-06-27 16:35:23,672.672 INFO    ] Launching Daemon at Sat Jun 27 16:35:23 IST 2026
[2026-06-27 16:35:23,684.684 INFO    ] ================================================
[2026-06-27 16:35:24,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:35:24
[2026-06-27 16:35:24,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:35:24,585.585 INFO    ] Initializing speech engine...
[2026-06-27 16:35:24,589.589 INFO    ] 2026-06-27 16:35:24
[2026-06-27 16:35:24,798.798 INFO    ] 2026-06-27 16:35:24
[2026-06-27 16:35:24,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:35:25,034.034 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:35:25,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:35:25,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:35:25,240.240 INFO    ] time= 27/06/2026 16:35:25
[2026-06-27 16:35:25,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:35:25,293.293 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:35:25,369.369 INFO    ] No existing commands found in stream
[2026-06-27 16:35:30,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:35:30,382.382 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-27 16:35:31,940.940 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:35:31,943.943 INFO    ] Checking for system updates...
[2026-06-27 16:35:31,973.973 INFO    ] 200
[2026-06-27 16:35:31,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:35:32,018.018 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:35:32,020.020 INFO    ] No update needed
[2026-06-27 16:35:32,022.022 INFO    ] Checking for camera pi updates...
[2026-06-27 16:35:32,047.047 INFO    ] 200
[2026-06-27 16:35:32,049.049 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:35:32,079.079 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:35:32,132.132 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:35:32,134.134 INFO    ] No camera update needed
[2026-06-27 16:35:32,137.137 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:35:32,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:35:32,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:35:32,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:35:34,186.186 INFO    ] ================================================
[2026-06-27 16:35:34,202.202 INFO    ] Launching Daemon at Sat Jun 27 16:35:34 IST 2026
[2026-06-27 16:35:34,213.213 INFO    ] ================================================
[2026-06-27 16:35:34,563.563 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:35:34
[2026-06-27 16:35:34,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:35:35,061.061 INFO    ] Initializing speech engine...
[2026-06-27 16:35:35,067.067 INFO    ] 2026-06-27 16:35:35
[2026-06-27 16:35:35,277.277 INFO    ] 2026-06-27 16:35:35
[2026-06-27 16:35:35,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:35:35,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:35:35,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:35:35,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:35:35,726.726 INFO    ] time= 27/06/2026 16:35:35
[2026-06-27 16:35:35,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:35:35,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:35:35,859.859 INFO    ] No existing commands found in stream
[2026-06-27 16:35:40,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:35:40,872.872 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-27 16:35:43,853.853 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 16:35:43,860.860 INFO    ] Checking for system updates...
[2026-06-27 16:35:43,883.883 INFO    ] 200
[2026-06-27 16:35:43,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:35:43,920.920 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:35:43,921.921 INFO    ] No update needed
[2026-06-27 16:35:43,923.923 INFO    ] Checking for camera pi updates...
[2026-06-27 16:35:43,945.945 INFO    ] 200
[2026-06-27 16:35:43,947.947 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:35:43,970.970 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:35:44,018.018 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:35:44,019.019 INFO    ] No camera update needed
[2026-06-27 16:35:44,021.021 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:35:44,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:35:44,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:35:44,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:35:46,068.068 INFO    ] ================================================
[2026-06-27 16:35:46,085.085 INFO    ] Launching Daemon at Sat Jun 27 16:35:46 IST 2026
[2026-06-27 16:35:46,096.096 INFO    ] ================================================
[2026-06-27 16:35:46,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:35:46
[2026-06-27 16:35:46,751.751 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:35:46,895.895 INFO    ] Initializing speech engine...
[2026-06-27 16:35:46,899.899 INFO    ] 2026-06-27 16:35:46
[2026-06-27 16:35:47,106.106 INFO    ] 2026-06-27 16:35:47
[2026-06-27 16:35:47,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:35:47,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:35:47,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:35:47,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:35:47,545.545 INFO    ] time= 27/06/2026 16:35:47
[2026-06-27 16:35:47,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:35:47,552.552 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:35:47,619.619 INFO    ] No existing commands found in stream
[2026-06-27 16:35:52,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:35:52,654.654 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-27 16:35:56,765.765 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:35:56,766.766 INFO    ] Checking for system updates...
[2026-06-27 16:35:56,787.787 INFO    ] 200
[2026-06-27 16:35:56,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:35:56,822.822 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:35:56,823.823 INFO    ] No update needed
[2026-06-27 16:35:56,825.825 INFO    ] Checking for camera pi updates...
[2026-06-27 16:35:56,848.848 INFO    ] 200
[2026-06-27 16:35:56,849.849 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:35:56,875.875 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:35:56,933.933 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:35:56,934.934 INFO    ] No camera update needed
[2026-06-27 16:35:56,936.936 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:35:56,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:35:56,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:35:56,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:35:58,984.984 INFO    ] ================================================
[2026-06-27 16:35:59,999.999 INFO    ] Launching Daemon at Sat Jun 27 16:35:58 IST 2026
[2026-06-27 16:35:59,010.010 INFO    ] ================================================
[2026-06-27 16:35:59,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:35:59
[2026-06-27 16:35:59,678.678 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:35:59,820.820 INFO    ] Initializing speech engine...
[2026-06-27 16:35:59,826.826 INFO    ] 2026-06-27 16:35:59
[2026-06-27 16:36:00,029.029 INFO    ] 2026-06-27 16:36:00
[2026-06-27 16:36:00,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:36:00,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:36:00,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:36:00,444.444 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:36:00,466.466 INFO    ] time= 27/06/2026 16:36:00
[2026-06-27 16:36:00,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:36:00,473.473 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:36:00,539.539 INFO    ] No existing commands found in stream
[2026-06-27 16:36:05,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:36:05,550.550 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-27 16:36:09,850.850 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:36:09,851.851 INFO    ] Checking for system updates...
[2026-06-27 16:36:09,872.872 INFO    ] 200
[2026-06-27 16:36:09,873.873 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:36:09,905.905 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:36:09,906.906 INFO    ] No update needed
[2026-06-27 16:36:09,907.907 INFO    ] Checking for camera pi updates...
[2026-06-27 16:36:09,927.927 INFO    ] 200
[2026-06-27 16:36:09,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:36:09,953.953 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:36:09,995.995 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:36:09,996.996 INFO    ] No camera update needed
[2026-06-27 16:36:09,997.997 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:36:09,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:36:10,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:36:10,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:36:12,044.044 INFO    ] ================================================
[2026-06-27 16:36:12,060.060 INFO    ] Launching Daemon at Sat Jun 27 16:36:12 IST 2026
[2026-06-27 16:36:12,071.071 INFO    ] ================================================
[2026-06-27 16:36:12,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:36:12
[2026-06-27 16:36:12,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:36:12,875.875 INFO    ] Initializing speech engine...
[2026-06-27 16:36:12,879.879 INFO    ] 2026-06-27 16:36:12
[2026-06-27 16:36:13,088.088 INFO    ] 2026-06-27 16:36:13
[2026-06-27 16:36:13,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:36:13,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:36:13,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:36:13,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:36:13,536.536 INFO    ] time= 27/06/2026 16:36:13
[2026-06-27 16:36:13,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:36:13,543.543 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:36:13,610.610 INFO    ] No existing commands found in stream
[2026-06-27 16:36:18,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:36:18,623.623 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-27 16:36:21,713.713 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 16:36:21,715.715 INFO    ] Checking for system updates...
[2026-06-27 16:36:21,737.737 INFO    ] 200
[2026-06-27 16:36:21,738.738 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:36:21,769.769 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:36:21,771.771 INFO    ] No update needed
[2026-06-27 16:36:21,772.772 INFO    ] Checking for camera pi updates...
[2026-06-27 16:36:21,791.791 INFO    ] 200
[2026-06-27 16:36:21,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:36:21,817.817 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:36:21,865.865 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:36:21,866.866 INFO    ] No camera update needed
[2026-06-27 16:36:21,867.867 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:36:21,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:36:21,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:36:21,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:36:23,914.914 INFO    ] ================================================
[2026-06-27 16:36:23,930.930 INFO    ] Launching Daemon at Sat Jun 27 16:36:23 IST 2026
[2026-06-27 16:36:23,941.941 INFO    ] ================================================
[2026-06-27 16:36:24,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:36:24
[2026-06-27 16:36:24,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:36:24,790.790 INFO    ] Initializing speech engine...
[2026-06-27 16:36:24,795.795 INFO    ] 2026-06-27 16:36:24
[2026-06-27 16:36:24,999.999 INFO    ] 2026-06-27 16:36:24
[2026-06-27 16:36:25,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:36:25,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:36:25,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:36:25,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:36:25,507.507 INFO    ] time= 27/06/2026 16:36:25
[2026-06-27 16:36:25,514.514 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:36:25,534.534 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:36:25,631.631 INFO    ] No existing commands found in stream
[2026-06-27 16:36:30,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:36:30,644.644 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-27 16:36:33,110.110 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 16:36:33,111.111 INFO    ] Checking for system updates...
[2026-06-27 16:36:33,133.133 INFO    ] 200
[2026-06-27 16:36:33,135.135 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:36:33,167.167 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:36:33,169.169 INFO    ] No update needed
[2026-06-27 16:36:33,170.170 INFO    ] Checking for camera pi updates...
[2026-06-27 16:36:33,189.189 INFO    ] 200
[2026-06-27 16:36:33,191.191 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:36:33,217.217 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:36:33,248.248 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:36:33,250.250 INFO    ] No camera update needed
[2026-06-27 16:36:33,251.251 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:36:33,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:36:33,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:36:33,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:36:35,300.300 INFO    ] ================================================
[2026-06-27 16:36:35,317.317 INFO    ] Launching Daemon at Sat Jun 27 16:36:35 IST 2026
[2026-06-27 16:36:35,329.329 INFO    ] ================================================
[2026-06-27 16:36:35,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:36:35
[2026-06-27 16:36:35,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:36:36,108.108 INFO    ] Initializing speech engine...
[2026-06-27 16:36:36,116.116 INFO    ] 2026-06-27 16:36:36
[2026-06-27 16:36:36,326.326 INFO    ] 2026-06-27 16:36:36
[2026-06-27 16:36:36,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:36:36,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:36:36,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:36:36,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:36:36,717.717 INFO    ] time= 27/06/2026 16:36:36
[2026-06-27 16:36:36,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:36:36,720.720 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:36:36,807.807 INFO    ] No existing commands found in stream
[2026-06-27 16:36:41,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:36:41,821.821 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-27 16:36:43,990.990 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 16:36:43,992.992 INFO    ] Checking for system updates...
[2026-06-27 16:36:44,013.013 INFO    ] 200
[2026-06-27 16:36:44,015.015 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:36:44,048.048 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:36:44,049.049 INFO    ] No update needed
[2026-06-27 16:36:44,051.051 INFO    ] Checking for camera pi updates...
[2026-06-27 16:36:44,070.070 INFO    ] 200
[2026-06-27 16:36:44,072.072 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:36:44,096.096 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:36:44,151.151 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:36:44,152.152 INFO    ] No camera update needed
[2026-06-27 16:36:44,153.153 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:36:44,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:36:44,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:36:44,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:36:46,200.200 INFO    ] ================================================
[2026-06-27 16:36:46,215.215 INFO    ] Launching Daemon at Sat Jun 27 16:36:46 IST 2026
[2026-06-27 16:36:46,226.226 INFO    ] ================================================
[2026-06-27 16:36:46,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:36:46
[2026-06-27 16:36:46,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:36:47,075.075 INFO    ] Initializing speech engine...
[2026-06-27 16:36:47,080.080 INFO    ] 2026-06-27 16:36:47
[2026-06-27 16:36:47,291.291 INFO    ] 2026-06-27 16:36:47
[2026-06-27 16:36:47,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:36:47,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:36:47,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:36:47,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:36:47,718.718 INFO    ] time= 27/06/2026 16:36:47
[2026-06-27 16:36:47,742.742 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:36:47,748.748 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:36:47,816.816 INFO    ] No existing commands found in stream
[2026-06-27 16:36:52,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:36:52,829.829 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-27 16:36:55,576.576 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 16:36:55,577.577 INFO    ] Checking for system updates...
[2026-06-27 16:36:55,599.599 INFO    ] 200
[2026-06-27 16:36:55,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:36:55,631.631 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:36:55,632.632 INFO    ] No update needed
[2026-06-27 16:36:55,634.634 INFO    ] Checking for camera pi updates...
[2026-06-27 16:36:55,655.655 INFO    ] 200
[2026-06-27 16:36:55,656.656 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:36:55,681.681 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:36:55,710.710 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:36:55,711.711 INFO    ] No camera update needed
[2026-06-27 16:36:55,713.713 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:36:55,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:36:55,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:36:55,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:36:57,758.758 INFO    ] ================================================
[2026-06-27 16:36:57,773.773 INFO    ] Launching Daemon at Sat Jun 27 16:36:57 IST 2026
[2026-06-27 16:36:57,784.784 INFO    ] ================================================
[2026-06-27 16:36:58,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:36:58
[2026-06-27 16:36:58,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:36:58,597.597 INFO    ] Initializing speech engine...
[2026-06-27 16:36:58,601.601 INFO    ] 2026-06-27 16:36:58
[2026-06-27 16:36:58,821.821 INFO    ] 2026-06-27 16:36:58
[2026-06-27 16:36:58,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:36:59,039.039 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:36:59,048.048 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:36:59,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:36:59,270.270 INFO    ] time= 27/06/2026 16:36:59
[2026-06-27 16:36:59,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:36:59,282.282 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:36:59,350.350 INFO    ] No existing commands found in stream
[2026-06-27 16:37:04,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:37:04,373.373 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-27 16:37:07,994.994 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 16:37:07,996.996 INFO    ] Checking for system updates...
[2026-06-27 16:37:08,018.018 INFO    ] 200
[2026-06-27 16:37:08,019.019 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:37:08,050.050 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:37:08,051.051 INFO    ] No update needed
[2026-06-27 16:37:08,052.052 INFO    ] Checking for camera pi updates...
[2026-06-27 16:37:08,072.072 INFO    ] 200
[2026-06-27 16:37:08,074.074 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:37:08,100.100 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:37:08,145.145 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:37:08,147.147 INFO    ] No camera update needed
[2026-06-27 16:37:08,148.148 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:37:08,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:37:08,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:37:08,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:37:10,193.193 INFO    ] ================================================
[2026-06-27 16:37:10,209.209 INFO    ] Launching Daemon at Sat Jun 27 16:37:10 IST 2026
[2026-06-27 16:37:10,220.220 INFO    ] ================================================
[2026-06-27 16:37:10,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:37:10
[2026-06-27 16:37:10,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:37:11,028.028 INFO    ] Initializing speech engine...
[2026-06-27 16:37:11,038.038 INFO    ] 2026-06-27 16:37:11
[2026-06-27 16:37:11,228.228 INFO    ] 2026-06-27 16:37:11
[2026-06-27 16:37:11,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:37:11,479.479 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:37:11,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:37:11,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:37:11,706.706 INFO    ] time= 27/06/2026 16:37:11
[2026-06-27 16:37:11,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:37:11,714.714 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:37:11,780.780 INFO    ] No existing commands found in stream
[2026-06-27 16:37:16,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:37:16,793.793 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-27 16:37:18,954.954 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 16:37:18,955.955 INFO    ] Checking for system updates...
[2026-06-27 16:37:18,978.978 INFO    ] 200
[2026-06-27 16:37:18,979.979 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:37:19,012.012 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:37:19,013.013 INFO    ] No update needed
[2026-06-27 16:37:19,015.015 INFO    ] Checking for camera pi updates...
[2026-06-27 16:37:19,035.035 INFO    ] 200
[2026-06-27 16:37:19,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:37:19,059.059 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:37:19,202.202 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:37:19,203.203 INFO    ] No camera update needed
[2026-06-27 16:37:19,205.205 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:37:19,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:37:19,209.209 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:37:19,212.212 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:37:21,250.250 INFO    ] ================================================
[2026-06-27 16:37:21,265.265 INFO    ] Launching Daemon at Sat Jun 27 16:37:21 IST 2026
[2026-06-27 16:37:21,276.276 INFO    ] ================================================
[2026-06-27 16:37:21,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:37:21
[2026-06-27 16:37:22,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:37:22,168.168 INFO    ] Initializing speech engine...
[2026-06-27 16:37:22,175.175 INFO    ] 2026-06-27 16:37:22
[2026-06-27 16:37:22,396.396 INFO    ] 2026-06-27 16:37:22
[2026-06-27 16:37:22,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:37:22,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:37:22,621.621 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:37:22,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:37:22,821.821 INFO    ] time= 27/06/2026 16:37:22
[2026-06-27 16:37:22,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:37:22,851.851 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:37:22,918.918 INFO    ] No existing commands found in stream
[2026-06-27 16:37:27,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:37:27,933.933 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-27 16:37:29,855.855 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 16:37:29,856.856 INFO    ] Checking for system updates...
[2026-06-27 16:37:29,877.877 INFO    ] 200
[2026-06-27 16:37:29,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:37:29,912.912 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:37:29,913.913 INFO    ] No update needed
[2026-06-27 16:37:29,914.914 INFO    ] Checking for camera pi updates...
[2026-06-27 16:37:29,936.936 INFO    ] 200
[2026-06-27 16:37:29,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:37:29,961.961 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:37:30,004.004 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:37:30,005.005 INFO    ] No camera update needed
[2026-06-27 16:37:30,006.006 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:37:30,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:37:30,010.010 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:37:30,013.013 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:37:32,045.045 INFO    ] ================================================
[2026-06-27 16:37:32,055.055 INFO    ] Launching Daemon at Sat Jun 27 16:37:32 IST 2026
[2026-06-27 16:37:32,065.065 INFO    ] ================================================
[2026-06-27 16:37:32,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:37:32
[2026-06-27 16:37:32,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:37:32,900.900 INFO    ] Initializing speech engine...
[2026-06-27 16:37:32,906.906 INFO    ] 2026-06-27 16:37:32
[2026-06-27 16:37:33,115.115 INFO    ] 2026-06-27 16:37:33
[2026-06-27 16:37:33,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:37:33,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:37:33,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:37:33,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:37:33,548.548 INFO    ] time= 27/06/2026 16:37:33
[2026-06-27 16:37:33,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:37:33,571.571 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:37:33,639.639 INFO    ] No existing commands found in stream
[2026-06-27 16:37:38,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:37:38,654.654 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-27 16:37:39,858.858 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 16:37:39,860.860 INFO    ] Checking for system updates...
[2026-06-27 16:37:39,882.882 INFO    ] 200
[2026-06-27 16:37:39,883.883 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:37:39,915.915 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:37:39,916.916 INFO    ] No update needed
[2026-06-27 16:37:39,918.918 INFO    ] Checking for camera pi updates...
[2026-06-27 16:37:39,938.938 INFO    ] 200
[2026-06-27 16:37:39,940.940 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:37:39,965.965 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:37:40,010.010 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:37:40,011.011 INFO    ] No camera update needed
[2026-06-27 16:37:40,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:37:40,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:37:40,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:37:40,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:37:42,058.058 INFO    ] ================================================
[2026-06-27 16:37:42,072.072 INFO    ] Launching Daemon at Sat Jun 27 16:37:42 IST 2026
[2026-06-27 16:37:42,083.083 INFO    ] ================================================
[2026-06-27 16:37:42,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:37:42
[2026-06-27 16:37:42,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:37:42,892.892 INFO    ] Initializing speech engine...
[2026-06-27 16:37:42,898.898 INFO    ] 2026-06-27 16:37:42
[2026-06-27 16:37:43,103.103 INFO    ] 2026-06-27 16:37:43
[2026-06-27 16:37:43,132.132 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:37:43,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:37:43,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:37:43,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:37:43,549.549 INFO    ] time= 27/06/2026 16:37:43
[2026-06-27 16:37:43,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:37:43,557.557 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:37:43,623.623 INFO    ] No existing commands found in stream
[2026-06-27 16:37:48,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:37:48,637.637 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-27 16:37:52,299.299 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:37:52,301.301 INFO    ] Checking for system updates...
[2026-06-27 16:37:52,322.322 INFO    ] 200
[2026-06-27 16:37:52,323.323 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:37:52,354.354 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:37:52,355.355 INFO    ] No update needed
[2026-06-27 16:37:52,357.357 INFO    ] Checking for camera pi updates...
[2026-06-27 16:37:52,376.376 INFO    ] 200
[2026-06-27 16:37:52,378.378 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:37:52,401.401 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:37:52,439.439 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:37:52,440.440 INFO    ] No camera update needed
[2026-06-27 16:37:52,442.442 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:37:52,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:37:52,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:37:52,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:37:54,487.487 INFO    ] ================================================
[2026-06-27 16:37:54,502.502 INFO    ] Launching Daemon at Sat Jun 27 16:37:54 IST 2026
[2026-06-27 16:37:54,513.513 INFO    ] ================================================
[2026-06-27 16:37:54,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:37:54
[2026-06-27 16:37:55,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:37:55,313.313 INFO    ] Initializing speech engine...
[2026-06-27 16:37:55,317.317 INFO    ] 2026-06-27 16:37:55
[2026-06-27 16:37:55,522.522 INFO    ] 2026-06-27 16:37:55
[2026-06-27 16:37:55,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:37:55,735.735 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:37:55,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:37:55,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:37:55,961.961 INFO    ] time= 27/06/2026 16:37:55
[2026-06-27 16:37:55,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:37:55,969.969 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:37:56,036.036 INFO    ] No existing commands found in stream
[2026-06-27 16:38:01,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:38:01,046.046 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-27 16:38:02,848.848 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 16:38:02,850.850 INFO    ] Checking for system updates...
[2026-06-27 16:38:02,879.879 INFO    ] 200
[2026-06-27 16:38:02,883.883 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:38:02,927.927 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:38:02,929.929 INFO    ] No update needed
[2026-06-27 16:38:02,930.930 INFO    ] Checking for camera pi updates...
[2026-06-27 16:38:02,962.962 INFO    ] 200
[2026-06-27 16:38:02,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:38:02,991.991 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:38:03,020.020 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:38:03,022.022 INFO    ] No camera update needed
[2026-06-27 16:38:03,023.023 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:38:03,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:38:03,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:38:03,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:38:05,055.055 INFO    ] ================================================
[2026-06-27 16:38:05,065.065 INFO    ] Launching Daemon at Sat Jun 27 16:38:05 IST 2026
[2026-06-27 16:38:05,072.072 INFO    ] ================================================
[2026-06-27 16:38:05,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:38:05
[2026-06-27 16:38:05,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:38:05,873.873 INFO    ] Initializing speech engine...
[2026-06-27 16:38:05,878.878 INFO    ] 2026-06-27 16:38:05
[2026-06-27 16:38:06,066.066 INFO    ] 2026-06-27 16:38:06
[2026-06-27 16:38:06,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:38:06,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:38:06,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:38:06,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:38:06,637.637 INFO    ] time= 27/06/2026 16:38:06
[2026-06-27 16:38:06,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:38:06,666.666 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:38:06,738.738 INFO    ] No existing commands found in stream
[2026-06-27 16:38:11,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:38:11,750.750 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-27 16:38:12,248.248 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:38:12,249.249 INFO    ] Checking for system updates...
[2026-06-27 16:38:12,272.272 INFO    ] 200
[2026-06-27 16:38:12,273.273 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:38:12,303.303 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:38:12,305.305 INFO    ] No update needed
[2026-06-27 16:38:12,306.306 INFO    ] Checking for camera pi updates...
[2026-06-27 16:38:12,327.327 INFO    ] 200
[2026-06-27 16:38:12,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:38:12,354.354 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:38:12,396.396 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:38:12,398.398 INFO    ] No camera update needed
[2026-06-27 16:38:12,399.399 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:38:12,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:38:12,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:38:12,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:38:14,445.445 INFO    ] ================================================
[2026-06-27 16:38:14,460.460 INFO    ] Launching Daemon at Sat Jun 27 16:38:14 IST 2026
[2026-06-27 16:38:14,471.471 INFO    ] ================================================
[2026-06-27 16:38:14,845.845 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:38:14
[2026-06-27 16:38:15,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:38:15,349.349 INFO    ] Initializing speech engine...
[2026-06-27 16:38:15,354.354 INFO    ] 2026-06-27 16:38:15
[2026-06-27 16:38:15,566.566 INFO    ] 2026-06-27 16:38:15
[2026-06-27 16:38:15,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:38:15,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:38:15,794.794 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:38:15,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:38:16,015.015 INFO    ] time= 27/06/2026 16:38:16
[2026-06-27 16:38:16,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:38:16,019.019 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:38:16,111.111 INFO    ] No existing commands found in stream
[2026-06-27 16:38:21,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:38:21,128.128 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-27 16:38:22,229.229 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 16:38:22,230.230 INFO    ] Checking for system updates...
[2026-06-27 16:38:22,251.251 INFO    ] 200
[2026-06-27 16:38:22,252.252 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:38:22,283.283 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:38:22,284.284 INFO    ] No update needed
[2026-06-27 16:38:22,286.286 INFO    ] Checking for camera pi updates...
[2026-06-27 16:38:22,305.305 INFO    ] 200
[2026-06-27 16:38:22,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:38:22,332.332 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:38:22,380.380 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:38:22,381.381 INFO    ] No camera update needed
[2026-06-27 16:38:22,383.383 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:38:22,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:38:22,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:38:22,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:38:24,429.429 INFO    ] ================================================
[2026-06-27 16:38:24,445.445 INFO    ] Launching Daemon at Sat Jun 27 16:38:24 IST 2026
[2026-06-27 16:38:24,456.456 INFO    ] ================================================
[2026-06-27 16:38:24,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:38:24
[2026-06-27 16:38:25,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:38:25,268.268 INFO    ] Initializing speech engine...
[2026-06-27 16:38:25,272.272 INFO    ] 2026-06-27 16:38:25
[2026-06-27 16:38:25,479.479 INFO    ] 2026-06-27 16:38:25
[2026-06-27 16:38:25,507.507 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:38:25,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:38:25,700.700 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:38:25,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:38:25,898.898 INFO    ] time= 27/06/2026 16:38:25
[2026-06-27 16:38:25,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:38:25,926.926 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:38:25,993.993 INFO    ] No existing commands found in stream
[2026-06-27 16:38:31,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:38:31,011.011 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-27 16:38:34,623.623 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:38:34,625.625 INFO    ] Checking for system updates...
[2026-06-27 16:38:34,647.647 INFO    ] 200
[2026-06-27 16:38:34,649.649 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:38:34,681.681 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:38:34,682.682 INFO    ] No update needed
[2026-06-27 16:38:34,684.684 INFO    ] Checking for camera pi updates...
[2026-06-27 16:38:34,704.704 INFO    ] 200
[2026-06-27 16:38:34,705.705 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:38:34,734.734 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:38:34,781.781 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:38:34,782.782 INFO    ] No camera update needed
[2026-06-27 16:38:34,783.783 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:38:34,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:38:34,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:38:34,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:38:36,832.832 INFO    ] ================================================
[2026-06-27 16:38:36,846.846 INFO    ] Launching Daemon at Sat Jun 27 16:38:36 IST 2026
[2026-06-27 16:38:36,858.858 INFO    ] ================================================
[2026-06-27 16:38:37,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:38:37
[2026-06-27 16:38:37,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:38:37,642.642 INFO    ] Initializing speech engine...
[2026-06-27 16:38:37,647.647 INFO    ] 2026-06-27 16:38:37
[2026-06-27 16:38:37,870.870 INFO    ] 2026-06-27 16:38:37
[2026-06-27 16:38:37,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:38:38,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:38:38,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:38:38,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:38:38,267.267 INFO    ] time= 27/06/2026 16:38:38
[2026-06-27 16:38:38,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:38:38,322.322 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:38:38,392.392 INFO    ] No existing commands found in stream
[2026-06-27 16:38:43,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:38:43,402.402 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-27 16:38:44,539.539 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:38:44,540.540 INFO    ] Checking for system updates...
[2026-06-27 16:38:44,561.561 INFO    ] 200
[2026-06-27 16:38:44,562.562 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:38:44,594.594 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:38:44,596.596 INFO    ] No update needed
[2026-06-27 16:38:44,597.597 INFO    ] Checking for camera pi updates...
[2026-06-27 16:38:44,617.617 INFO    ] 200
[2026-06-27 16:38:44,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:38:44,644.644 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:38:44,700.700 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:38:44,701.701 INFO    ] No camera update needed
[2026-06-27 16:38:44,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:38:44,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:38:44,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:38:44,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:38:46,750.750 INFO    ] ================================================
[2026-06-27 16:38:46,765.765 INFO    ] Launching Daemon at Sat Jun 27 16:38:46 IST 2026
[2026-06-27 16:38:46,776.776 INFO    ] ================================================
[2026-06-27 16:38:47,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:38:47
[2026-06-27 16:38:47,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:38:47,619.619 INFO    ] Initializing speech engine...
[2026-06-27 16:38:47,627.627 INFO    ] 2026-06-27 16:38:47
[2026-06-27 16:38:47,840.840 INFO    ] 2026-06-27 16:38:47
[2026-06-27 16:38:47,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:38:48,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:38:48,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:38:48,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:38:48,282.282 INFO    ] time= 27/06/2026 16:38:48
[2026-06-27 16:38:48,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:38:48,290.290 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:38:48,357.357 INFO    ] No existing commands found in stream
[2026-06-27 16:38:53,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:38:53,380.380 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-27 16:38:56,830.830 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 16:38:56,832.832 INFO    ] Checking for system updates...
[2026-06-27 16:38:56,854.854 INFO    ] 200
[2026-06-27 16:38:56,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:38:56,888.888 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:38:56,890.890 INFO    ] No update needed
[2026-06-27 16:38:56,891.891 INFO    ] Checking for camera pi updates...
[2026-06-27 16:38:56,911.911 INFO    ] 200
[2026-06-27 16:38:56,912.912 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:38:56,938.938 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:38:56,986.986 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:38:56,987.987 INFO    ] No camera update needed
[2026-06-27 16:38:56,988.988 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:38:56,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:38:56,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:38:56,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:38:59,033.033 INFO    ] ================================================
[2026-06-27 16:38:59,048.048 INFO    ] Launching Daemon at Sat Jun 27 16:38:59 IST 2026
[2026-06-27 16:38:59,059.059 INFO    ] ================================================
[2026-06-27 16:38:59,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:38:59
[2026-06-27 16:38:59,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:38:59,908.908 INFO    ] Initializing speech engine...
[2026-06-27 16:38:59,922.922 INFO    ] 2026-06-27 16:38:59
[2026-06-27 16:39:00,132.132 INFO    ] 2026-06-27 16:39:00
[2026-06-27 16:39:00,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:39:00,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:39:00,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:39:00,550.550 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:39:00,572.572 INFO    ] time= 27/06/2026 16:39:00
[2026-06-27 16:39:00,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:39:00,580.580 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:39:00,646.646 INFO    ] No existing commands found in stream
[2026-06-27 16:39:05,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:39:05,674.674 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-27 16:39:06,784.784 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:39:06,786.786 INFO    ] Checking for system updates...
[2026-06-27 16:39:06,808.808 INFO    ] 200
[2026-06-27 16:39:06,810.810 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:39:06,840.840 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:39:06,841.841 INFO    ] No update needed
[2026-06-27 16:39:06,843.843 INFO    ] Checking for camera pi updates...
[2026-06-27 16:39:06,862.862 INFO    ] 200
[2026-06-27 16:39:06,864.864 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:39:06,890.890 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:39:06,944.944 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:39:06,945.945 INFO    ] No camera update needed
[2026-06-27 16:39:06,946.946 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:39:06,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:39:06,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:39:06,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:39:08,992.992 INFO    ] ================================================
[2026-06-27 16:39:09,006.006 INFO    ] Launching Daemon at Sat Jun 27 16:39:09 IST 2026
[2026-06-27 16:39:09,017.017 INFO    ] ================================================
[2026-06-27 16:39:09,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:39:09
[2026-06-27 16:39:09,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:39:09,902.902 INFO    ] Initializing speech engine...
[2026-06-27 16:39:09,914.914 INFO    ] 2026-06-27 16:39:09
[2026-06-27 16:39:10,122.122 INFO    ] 2026-06-27 16:39:10
[2026-06-27 16:39:10,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:39:10,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:39:10,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:39:10,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:39:10,541.541 INFO    ] time= 27/06/2026 16:39:10
[2026-06-27 16:39:10,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:39:10,568.568 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:39:10,634.634 INFO    ] No existing commands found in stream
[2026-06-27 16:39:15,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:39:15,651.651 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-27 16:39:18,714.714 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 16:39:18,716.716 INFO    ] Checking for system updates...
[2026-06-27 16:39:18,739.739 INFO    ] 200
[2026-06-27 16:39:18,741.741 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:39:18,771.771 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:39:18,772.772 INFO    ] No update needed
[2026-06-27 16:39:18,774.774 INFO    ] Checking for camera pi updates...
[2026-06-27 16:39:18,794.794 INFO    ] 200
[2026-06-27 16:39:18,796.796 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:39:18,820.820 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:39:18,866.866 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:39:18,867.867 INFO    ] No camera update needed
[2026-06-27 16:39:18,868.868 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:39:18,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:39:18,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:39:18,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:39:20,915.915 INFO    ] ================================================
[2026-06-27 16:39:20,932.932 INFO    ] Launching Daemon at Sat Jun 27 16:39:20 IST 2026
[2026-06-27 16:39:20,943.943 INFO    ] ================================================
[2026-06-27 16:39:21,283.283 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:39:21
[2026-06-27 16:39:21,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:39:21,724.724 INFO    ] Initializing speech engine...
[2026-06-27 16:39:21,729.729 INFO    ] 2026-06-27 16:39:21
[2026-06-27 16:39:21,947.947 INFO    ] 2026-06-27 16:39:21
[2026-06-27 16:39:21,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:39:22,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:39:22,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:39:22,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:39:22,388.388 INFO    ] time= 27/06/2026 16:39:22
[2026-06-27 16:39:22,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:39:22,396.396 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:39:22,463.463 INFO    ] No existing commands found in stream
[2026-06-27 16:39:27,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:39:27,480.480 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-27 16:39:29,084.084 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 16:39:29,085.085 INFO    ] Checking for system updates...
[2026-06-27 16:39:29,106.106 INFO    ] 200
[2026-06-27 16:39:29,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:39:29,140.140 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:39:29,141.141 INFO    ] No update needed
[2026-06-27 16:39:29,143.143 INFO    ] Checking for camera pi updates...
[2026-06-27 16:39:29,165.165 INFO    ] 200
[2026-06-27 16:39:29,166.166 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:39:29,191.191 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:39:29,330.330 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:39:29,332.332 INFO    ] No camera update needed
[2026-06-27 16:39:29,333.333 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:39:29,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:39:29,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:39:29,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:39:31,375.375 INFO    ] ================================================
[2026-06-27 16:39:31,384.384 INFO    ] Launching Daemon at Sat Jun 27 16:39:31 IST 2026
[2026-06-27 16:39:31,391.391 INFO    ] ================================================
[2026-06-27 16:39:31,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:39:31
[2026-06-27 16:39:32,061.061 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:39:32,206.206 INFO    ] Initializing speech engine...
[2026-06-27 16:39:32,211.211 INFO    ] 2026-06-27 16:39:32
[2026-06-27 16:39:32,417.417 INFO    ] 2026-06-27 16:39:32
[2026-06-27 16:39:32,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:39:32,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:39:32,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:39:32,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:39:32,861.861 INFO    ] time= 27/06/2026 16:39:32
[2026-06-27 16:39:32,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:39:32,868.868 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:39:32,935.935 INFO    ] No existing commands found in stream
[2026-06-27 16:39:37,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:39:37,952.952 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-27 16:39:40,834.834 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 16:39:40,835.835 INFO    ] Checking for system updates...
[2026-06-27 16:39:40,856.856 INFO    ] 200
[2026-06-27 16:39:40,857.857 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:39:40,888.888 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:39:40,889.889 INFO    ] No update needed
[2026-06-27 16:39:40,890.890 INFO    ] Checking for camera pi updates...
[2026-06-27 16:39:40,914.914 INFO    ] 200
[2026-06-27 16:39:40,915.915 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:39:40,939.939 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:39:40,980.980 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:39:40,982.982 INFO    ] No camera update needed
[2026-06-27 16:39:40,983.983 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:39:40,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:39:40,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:39:40,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:39:43,028.028 INFO    ] ================================================
[2026-06-27 16:39:43,043.043 INFO    ] Launching Daemon at Sat Jun 27 16:39:43 IST 2026
[2026-06-27 16:39:43,054.054 INFO    ] ================================================
[2026-06-27 16:39:43,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:39:43
[2026-06-27 16:39:43,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:39:43,839.839 INFO    ] Initializing speech engine...
[2026-06-27 16:39:43,850.850 INFO    ] 2026-06-27 16:39:43
[2026-06-27 16:39:44,056.056 INFO    ] 2026-06-27 16:39:44
[2026-06-27 16:39:44,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:39:44,268.268 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:39:44,272.272 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:39:44,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:39:44,499.499 INFO    ] time= 27/06/2026 16:39:44
[2026-06-27 16:39:44,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:39:44,507.507 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:39:44,575.575 INFO    ] No existing commands found in stream
[2026-06-27 16:39:49,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:39:49,586.586 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-27 16:39:51,019.019 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 16:39:51,020.020 INFO    ] Checking for system updates...
[2026-06-27 16:39:51,041.041 INFO    ] 200
[2026-06-27 16:39:51,042.042 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:39:51,077.077 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:39:51,078.078 INFO    ] No update needed
[2026-06-27 16:39:51,080.080 INFO    ] Checking for camera pi updates...
[2026-06-27 16:39:51,100.100 INFO    ] 200
[2026-06-27 16:39:51,102.102 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:39:51,125.125 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:39:51,175.175 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:39:51,176.176 INFO    ] No camera update needed
[2026-06-27 16:39:51,177.177 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:39:51,179.179 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:39:51,182.182 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:39:51,184.184 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:39:53,226.226 INFO    ] ================================================
[2026-06-27 16:39:53,242.242 INFO    ] Launching Daemon at Sat Jun 27 16:39:53 IST 2026
[2026-06-27 16:39:53,253.253 INFO    ] ================================================
[2026-06-27 16:39:53,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:39:53
[2026-06-27 16:39:53,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:39:54,123.123 INFO    ] Initializing speech engine...
[2026-06-27 16:39:54,132.132 INFO    ] 2026-06-27 16:39:54
[2026-06-27 16:39:54,347.347 INFO    ] 2026-06-27 16:39:54
[2026-06-27 16:39:54,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:39:54,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:39:54,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:39:54,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:39:54,769.769 INFO    ] time= 27/06/2026 16:39:54
[2026-06-27 16:39:54,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:39:54,797.797 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:39:54,865.865 INFO    ] No existing commands found in stream
[2026-06-27 16:39:59,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:39:59,901.901 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-27 16:40:01,296.296 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:40:01,305.305 INFO    ] Checking for system updates...
[2026-06-27 16:40:01,368.368 INFO    ] 200
[2026-06-27 16:40:01,372.372 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:40:01,576.576 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:40:01,578.578 INFO    ] No update needed
[2026-06-27 16:40:01,581.581 INFO    ] Checking for camera pi updates...
[2026-06-27 16:40:01,678.678 INFO    ] 200
[2026-06-27 16:40:01,680.680 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:40:01,755.755 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:40:01,863.863 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:40:01,867.867 INFO    ] No camera update needed
[2026-06-27 16:40:01,869.869 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:40:01,871.871 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:40:01,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:40:01,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:40:03,922.922 INFO    ] ================================================
[2026-06-27 16:40:03,937.937 INFO    ] Launching Daemon at Sat Jun 27 16:40:03 IST 2026
[2026-06-27 16:40:03,948.948 INFO    ] ================================================
[2026-06-27 16:40:04,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:40:04
[2026-06-27 16:40:04,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:40:04,750.750 INFO    ] Initializing speech engine...
[2026-06-27 16:40:04,755.755 INFO    ] 2026-06-27 16:40:04
[2026-06-27 16:40:04,959.959 INFO    ] 2026-06-27 16:40:04
[2026-06-27 16:40:04,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:40:05,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:40:05,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:40:05,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:40:05,435.435 INFO    ] time= 27/06/2026 16:40:05
[2026-06-27 16:40:05,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:40:05,442.442 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:40:05,542.542 INFO    ] No existing commands found in stream
[2026-06-27 16:40:10,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:40:10,554.554 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-27 16:40:13,704.704 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:40:13,705.705 INFO    ] Checking for system updates...
[2026-06-27 16:40:13,726.726 INFO    ] 200
[2026-06-27 16:40:13,728.728 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:40:13,761.761 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:40:13,762.762 INFO    ] No update needed
[2026-06-27 16:40:13,764.764 INFO    ] Checking for camera pi updates...
[2026-06-27 16:40:13,786.786 INFO    ] 200
[2026-06-27 16:40:13,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:40:13,811.811 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:40:13,864.864 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:40:13,866.866 INFO    ] No camera update needed
[2026-06-27 16:40:13,867.867 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:40:13,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:40:13,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:40:13,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:40:15,916.916 INFO    ] ================================================
[2026-06-27 16:40:15,932.932 INFO    ] Launching Daemon at Sat Jun 27 16:40:15 IST 2026
[2026-06-27 16:40:15,942.942 INFO    ] ================================================
[2026-06-27 16:40:16,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:40:16
[2026-06-27 16:40:16,610.610 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:40:16,749.749 INFO    ] Initializing speech engine...
[2026-06-27 16:40:16,759.759 INFO    ] 2026-06-27 16:40:16
[2026-06-27 16:40:16,968.968 INFO    ] 2026-06-27 16:40:16
[2026-06-27 16:40:16,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:40:17,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:40:17,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:40:17,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:40:17,412.412 INFO    ] time= 27/06/2026 16:40:17
[2026-06-27 16:40:17,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:40:17,421.421 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:40:17,487.487 INFO    ] No existing commands found in stream
[2026-06-27 16:40:22,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:40:22,499.499 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-27 16:40:25,455.455 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 16:40:25,457.457 INFO    ] Checking for system updates...
[2026-06-27 16:40:25,479.479 INFO    ] 200
[2026-06-27 16:40:25,480.480 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:40:25,511.511 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:40:25,513.513 INFO    ] No update needed
[2026-06-27 16:40:25,514.514 INFO    ] Checking for camera pi updates...
[2026-06-27 16:40:25,536.536 INFO    ] 200
[2026-06-27 16:40:25,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:40:25,561.561 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:40:25,612.612 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:40:25,614.614 INFO    ] No camera update needed
[2026-06-27 16:40:25,615.615 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:40:25,617.617 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:40:25,620.620 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:40:25,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:40:27,663.663 INFO    ] ================================================
[2026-06-27 16:40:27,679.679 INFO    ] Launching Daemon at Sat Jun 27 16:40:27 IST 2026
[2026-06-27 16:40:27,692.692 INFO    ] ================================================
[2026-06-27 16:40:28,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:40:28
[2026-06-27 16:40:28,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:40:28,497.497 INFO    ] Initializing speech engine...
[2026-06-27 16:40:28,500.500 INFO    ] 2026-06-27 16:40:28
[2026-06-27 16:40:28,720.720 INFO    ] 2026-06-27 16:40:28
[2026-06-27 16:40:28,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:40:28,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:40:28,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:40:29,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:40:29,148.148 INFO    ] time= 27/06/2026 16:40:29
[2026-06-27 16:40:29,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:40:29,176.176 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:40:29,245.245 INFO    ] No existing commands found in stream
[2026-06-27 16:40:34,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:40:34,261.261 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-27 16:40:36,838.838 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:40:36,839.839 INFO    ] Checking for system updates...
[2026-06-27 16:40:36,860.860 INFO    ] 200
[2026-06-27 16:40:36,861.861 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:40:36,892.892 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:40:36,893.893 INFO    ] No update needed
[2026-06-27 16:40:36,895.895 INFO    ] Checking for camera pi updates...
[2026-06-27 16:40:36,917.917 INFO    ] 200
[2026-06-27 16:40:36,918.918 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:40:36,943.943 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:40:36,988.988 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:40:36,989.989 INFO    ] No camera update needed
[2026-06-27 16:40:36,990.990 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:40:36,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:40:36,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:40:36,998.998 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:40:39,037.037 INFO    ] ================================================
[2026-06-27 16:40:39,053.053 INFO    ] Launching Daemon at Sat Jun 27 16:40:39 IST 2026
[2026-06-27 16:40:39,064.064 INFO    ] ================================================
[2026-06-27 16:40:39,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:40:39
[2026-06-27 16:40:39,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:40:39,913.913 INFO    ] Initializing speech engine...
[2026-06-27 16:40:39,919.919 INFO    ] 2026-06-27 16:40:39
[2026-06-27 16:40:40,130.130 INFO    ] 2026-06-27 16:40:40
[2026-06-27 16:40:40,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:40:40,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:40:40,282.282 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:40:40,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:40:40,491.491 INFO    ] time= 27/06/2026 16:40:40
[2026-06-27 16:40:40,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:40:40,592.592 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:40:40,710.710 INFO    ] No existing commands found in stream
[2026-06-27 16:40:45,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:40:45,727.727 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-27 16:40:47,519.519 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:40:47,520.520 INFO    ] Checking for system updates...
[2026-06-27 16:40:47,541.541 INFO    ] 200
[2026-06-27 16:40:47,543.543 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:40:47,573.573 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:40:47,575.575 INFO    ] No update needed
[2026-06-27 16:40:47,576.576 INFO    ] Checking for camera pi updates...
[2026-06-27 16:40:47,598.598 INFO    ] 200
[2026-06-27 16:40:47,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:40:47,623.623 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:40:47,662.662 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:40:47,664.664 INFO    ] No camera update needed
[2026-06-27 16:40:47,665.665 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:40:47,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:40:47,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:40:47,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:40:49,711.711 INFO    ] ================================================
[2026-06-27 16:40:49,726.726 INFO    ] Launching Daemon at Sat Jun 27 16:40:49 IST 2026
[2026-06-27 16:40:49,736.736 INFO    ] ================================================
[2026-06-27 16:40:50,088.088 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:40:50
[2026-06-27 16:40:50,406.406 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:40:50,547.547 INFO    ] Initializing speech engine...
[2026-06-27 16:40:50,557.557 INFO    ] 2026-06-27 16:40:50
[2026-06-27 16:40:50,761.761 INFO    ] 2026-06-27 16:40:50
[2026-06-27 16:40:50,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:40:50,973.973 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:40:50,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:40:51,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:40:51,199.199 INFO    ] time= 27/06/2026 16:40:51
[2026-06-27 16:40:51,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:40:51,206.206 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:40:51,272.272 INFO    ] No existing commands found in stream
[2026-06-27 16:40:56,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:40:56,285.285 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-27 16:40:58,039.039 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:40:58,041.041 INFO    ] Checking for system updates...
[2026-06-27 16:40:58,062.062 INFO    ] 200
[2026-06-27 16:40:58,063.063 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:40:58,094.094 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:40:58,096.096 INFO    ] No update needed
[2026-06-27 16:40:58,097.097 INFO    ] Checking for camera pi updates...
[2026-06-27 16:40:58,116.116 INFO    ] 200
[2026-06-27 16:40:58,118.118 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:40:58,141.141 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:40:58,184.184 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:40:58,185.185 INFO    ] No camera update needed
[2026-06-27 16:40:58,186.186 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:40:58,188.188 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:40:58,191.191 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:40:58,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:41:00,233.233 INFO    ] ================================================
[2026-06-27 16:41:00,248.248 INFO    ] Launching Daemon at Sat Jun 27 16:41:00 IST 2026
[2026-06-27 16:41:00,259.259 INFO    ] ================================================
[2026-06-27 16:41:00,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:41:00
[2026-06-27 16:41:00,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:41:01,147.147 INFO    ] Initializing speech engine...
[2026-06-27 16:41:01,152.152 INFO    ] 2026-06-27 16:41:01
[2026-06-27 16:41:01,370.370 INFO    ] 2026-06-27 16:41:01
[2026-06-27 16:41:01,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:41:01,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:41:01,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:41:01,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:41:01,765.765 INFO    ] time= 27/06/2026 16:41:01
[2026-06-27 16:41:01,786.786 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:41:01,801.801 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:41:01,868.868 INFO    ] No existing commands found in stream
[2026-06-27 16:41:06,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:41:06,881.881 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-27 16:41:11,253.253 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 16:41:11,255.255 INFO    ] Checking for system updates...
[2026-06-27 16:41:11,277.277 INFO    ] 200
[2026-06-27 16:41:11,279.279 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:41:11,312.312 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:41:11,314.314 INFO    ] No update needed
[2026-06-27 16:41:11,315.315 INFO    ] Checking for camera pi updates...
[2026-06-27 16:41:11,335.335 INFO    ] 200
[2026-06-27 16:41:11,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:41:11,360.360 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:41:11,405.405 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:41:11,406.406 INFO    ] No camera update needed
[2026-06-27 16:41:11,408.408 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:41:11,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:41:11,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:41:11,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:41:13,454.454 INFO    ] ================================================
[2026-06-27 16:41:13,469.469 INFO    ] Launching Daemon at Sat Jun 27 16:41:13 IST 2026
[2026-06-27 16:41:13,480.480 INFO    ] ================================================
[2026-06-27 16:41:13,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:41:13
[2026-06-27 16:41:14,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:41:14,273.273 INFO    ] Initializing speech engine...
[2026-06-27 16:41:14,278.278 INFO    ] 2026-06-27 16:41:14
[2026-06-27 16:41:14,497.497 INFO    ] 2026-06-27 16:41:14
[2026-06-27 16:41:14,525.525 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:41:14,713.713 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:41:14,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:41:14,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:41:14,916.916 INFO    ] time= 27/06/2026 16:41:14
[2026-06-27 16:41:14,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:41:14,952.952 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:41:15,020.020 INFO    ] No existing commands found in stream
[2026-06-27 16:41:20,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:41:20,055.055 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-27 16:41:23,155.155 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 16:41:23,156.156 INFO    ] Checking for system updates...
[2026-06-27 16:41:23,176.176 INFO    ] 200
[2026-06-27 16:41:23,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:41:23,209.209 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:41:23,210.210 INFO    ] No update needed
[2026-06-27 16:41:23,211.211 INFO    ] Checking for camera pi updates...
[2026-06-27 16:41:23,231.231 INFO    ] 200
[2026-06-27 16:41:23,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:41:23,256.256 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:41:23,295.295 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:41:23,296.296 INFO    ] No camera update needed
[2026-06-27 16:41:23,297.297 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:41:23,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:41:23,301.301 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:41:23,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:41:25,343.343 INFO    ] ================================================
[2026-06-27 16:41:25,359.359 INFO    ] Launching Daemon at Sat Jun 27 16:41:25 IST 2026
[2026-06-27 16:41:25,370.370 INFO    ] ================================================
[2026-06-27 16:41:25,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:41:25
[2026-06-27 16:41:26,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:41:26,192.192 INFO    ] Initializing speech engine...
[2026-06-27 16:41:26,197.197 INFO    ] 2026-06-27 16:41:26
[2026-06-27 16:41:26,402.402 INFO    ] 2026-06-27 16:41:26
[2026-06-27 16:41:26,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:41:26,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:41:26,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:41:26,769.769 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:41:26,822.822 INFO    ] time= 27/06/2026 16:41:26
[2026-06-27 16:41:26,844.844 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:41:26,850.850 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:41:26,915.915 INFO    ] No existing commands found in stream
[2026-06-27 16:41:31,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:41:31,926.926 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-27 16:41:35,995.995 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 16:41:35,996.996 INFO    ] Checking for system updates...
[2026-06-27 16:41:36,017.017 INFO    ] 200
[2026-06-27 16:41:36,018.018 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:41:36,050.050 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:41:36,052.052 INFO    ] No update needed
[2026-06-27 16:41:36,053.053 INFO    ] Checking for camera pi updates...
[2026-06-27 16:41:36,074.074 INFO    ] 200
[2026-06-27 16:41:36,075.075 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:41:36,098.098 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:41:36,145.145 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:41:36,146.146 INFO    ] No camera update needed
[2026-06-27 16:41:36,147.147 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:41:36,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:41:36,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:41:36,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:41:38,195.195 INFO    ] ================================================
[2026-06-27 16:41:38,211.211 INFO    ] Launching Daemon at Sat Jun 27 16:41:38 IST 2026
[2026-06-27 16:41:38,222.222 INFO    ] ================================================
[2026-06-27 16:41:38,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:41:38
[2026-06-27 16:41:38,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:41:39,048.048 INFO    ] Initializing speech engine...
[2026-06-27 16:41:39,053.053 INFO    ] 2026-06-27 16:41:39
[2026-06-27 16:41:39,258.258 INFO    ] 2026-06-27 16:41:39
[2026-06-27 16:41:39,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:41:39,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:41:39,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:41:39,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:41:39,668.668 INFO    ] time= 27/06/2026 16:41:39
[2026-06-27 16:41:39,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:41:39,702.702 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:41:39,774.774 INFO    ] No existing commands found in stream
[2026-06-27 16:41:44,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:41:44,791.791 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-27 16:41:47,119.119 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:41:47,121.121 INFO    ] Checking for system updates...
[2026-06-27 16:41:47,143.143 INFO    ] 200
[2026-06-27 16:41:47,145.145 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:41:47,175.175 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:41:47,177.177 INFO    ] No update needed
[2026-06-27 16:41:47,178.178 INFO    ] Checking for camera pi updates...
[2026-06-27 16:41:47,198.198 INFO    ] 200
[2026-06-27 16:41:47,199.199 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:41:47,223.223 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:41:47,270.270 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:41:47,272.272 INFO    ] No camera update needed
[2026-06-27 16:41:47,273.273 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:41:47,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:41:47,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:41:47,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:41:49,321.321 INFO    ] ================================================
[2026-06-27 16:41:49,337.337 INFO    ] Launching Daemon at Sat Jun 27 16:41:49 IST 2026
[2026-06-27 16:41:49,348.348 INFO    ] ================================================
[2026-06-27 16:41:49,718.718 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:41:49
[2026-06-27 16:41:50,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:41:50,162.162 INFO    ] Initializing speech engine...
[2026-06-27 16:41:50,174.174 INFO    ] 2026-06-27 16:41:50
[2026-06-27 16:41:50,380.380 INFO    ] 2026-06-27 16:41:50
[2026-06-27 16:41:50,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:41:50,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:41:50,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:41:50,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:41:50,823.823 INFO    ] time= 27/06/2026 16:41:50
[2026-06-27 16:41:50,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:41:50,830.830 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:41:50,895.895 INFO    ] No existing commands found in stream
[2026-06-27 16:41:55,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:41:55,908.908 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-27 16:41:57,104.104 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:41:57,106.106 INFO    ] Checking for system updates...
[2026-06-27 16:41:57,127.127 INFO    ] 200
[2026-06-27 16:41:57,129.129 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:41:57,160.160 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:41:57,161.161 INFO    ] No update needed
[2026-06-27 16:41:57,163.163 INFO    ] Checking for camera pi updates...
[2026-06-27 16:41:57,184.184 INFO    ] 200
[2026-06-27 16:41:57,186.186 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:41:57,212.212 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:41:57,274.274 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:41:57,275.275 INFO    ] No camera update needed
[2026-06-27 16:41:57,277.277 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:41:57,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:41:57,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:41:57,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:41:59,324.324 INFO    ] ================================================
[2026-06-27 16:41:59,340.340 INFO    ] Launching Daemon at Sat Jun 27 16:41:59 IST 2026
[2026-06-27 16:41:59,350.350 INFO    ] ================================================
[2026-06-27 16:41:59,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:41:59
[2026-06-27 16:42:00,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:42:00,154.154 INFO    ] Initializing speech engine...
[2026-06-27 16:42:00,158.158 INFO    ] 2026-06-27 16:42:00
[2026-06-27 16:42:00,375.375 INFO    ] 2026-06-27 16:42:00
[2026-06-27 16:42:00,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:42:00,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:42:00,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:42:00,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:42:00,802.802 INFO    ] time= 27/06/2026 16:42:00
[2026-06-27 16:42:00,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:42:00,837.837 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:42:00,926.926 INFO    ] No existing commands found in stream
[2026-06-27 16:42:05,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:42:05,937.937 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-27 16:42:09,320.320 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:42:09,322.322 INFO    ] Checking for system updates...
[2026-06-27 16:42:09,343.343 INFO    ] 200
[2026-06-27 16:42:09,344.344 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:42:09,374.374 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:42:09,376.376 INFO    ] No update needed
[2026-06-27 16:42:09,377.377 INFO    ] Checking for camera pi updates...
[2026-06-27 16:42:09,397.397 INFO    ] 200
[2026-06-27 16:42:09,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:42:09,422.422 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:42:09,464.464 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:42:09,466.466 INFO    ] No camera update needed
[2026-06-27 16:42:09,467.467 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:42:09,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:42:09,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:42:09,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:42:11,514.514 INFO    ] ================================================
[2026-06-27 16:42:11,530.530 INFO    ] Launching Daemon at Sat Jun 27 16:42:11 IST 2026
[2026-06-27 16:42:11,541.541 INFO    ] ================================================
[2026-06-27 16:42:11,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:42:11
[2026-06-27 16:42:12,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:42:12,348.348 INFO    ] Initializing speech engine...
[2026-06-27 16:42:12,352.352 INFO    ] 2026-06-27 16:42:12
[2026-06-27 16:42:12,561.561 INFO    ] 2026-06-27 16:42:12
[2026-06-27 16:42:12,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:42:12,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:42:12,814.814 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:42:12,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:42:13,027.027 INFO    ] time= 27/06/2026 16:42:12
[2026-06-27 16:42:13,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:42:13,067.067 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:42:13,138.138 INFO    ] No existing commands found in stream
[2026-06-27 16:42:18,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:42:18,151.151 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-27 16:42:22,333.333 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 16:42:22,334.334 INFO    ] Checking for system updates...
[2026-06-27 16:42:22,355.355 INFO    ] 200
[2026-06-27 16:42:22,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:42:22,387.387 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:42:22,388.388 INFO    ] No update needed
[2026-06-27 16:42:22,390.390 INFO    ] Checking for camera pi updates...
[2026-06-27 16:42:22,411.411 INFO    ] 200
[2026-06-27 16:42:22,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:42:22,437.437 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:42:22,477.477 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:42:22,478.478 INFO    ] No camera update needed
[2026-06-27 16:42:22,480.480 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:42:22,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:42:22,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:42:22,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:42:24,526.526 INFO    ] ================================================
[2026-06-27 16:42:24,542.542 INFO    ] Launching Daemon at Sat Jun 27 16:42:24 IST 2026
[2026-06-27 16:42:24,553.553 INFO    ] ================================================
[2026-06-27 16:42:24,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:42:24
[2026-06-27 16:42:25,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:42:25,358.358 INFO    ] Initializing speech engine...
[2026-06-27 16:42:25,363.363 INFO    ] 2026-06-27 16:42:25
[2026-06-27 16:42:25,570.570 INFO    ] 2026-06-27 16:42:25
[2026-06-27 16:42:25,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:42:25,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:42:25,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:42:25,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:42:26,010.010 INFO    ] time= 27/06/2026 16:42:25
[2026-06-27 16:42:26,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:42:26,017.017 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:42:26,108.108 INFO    ] No existing commands found in stream
[2026-06-27 16:42:31,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:42:31,131.131 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-27 16:42:35,068.068 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:42:35,070.070 INFO    ] Checking for system updates...
[2026-06-27 16:42:35,092.092 INFO    ] 200
[2026-06-27 16:42:35,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:42:35,124.124 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:42:35,125.125 INFO    ] No update needed
[2026-06-27 16:42:35,127.127 INFO    ] Checking for camera pi updates...
[2026-06-27 16:42:35,147.147 INFO    ] 200
[2026-06-27 16:42:35,149.149 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:42:35,174.174 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:42:35,216.216 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:42:35,217.217 INFO    ] No camera update needed
[2026-06-27 16:42:35,219.219 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:42:35,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:42:35,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:42:35,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:42:37,264.264 INFO    ] ================================================
[2026-06-27 16:42:37,280.280 INFO    ] Launching Daemon at Sat Jun 27 16:42:37 IST 2026
[2026-06-27 16:42:37,291.291 INFO    ] ================================================
[2026-06-27 16:42:37,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:42:37
[2026-06-27 16:42:37,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:42:38,079.079 INFO    ] Initializing speech engine...
[2026-06-27 16:42:38,085.085 INFO    ] 2026-06-27 16:42:38
[2026-06-27 16:42:38,288.288 INFO    ] 2026-06-27 16:42:38
[2026-06-27 16:42:38,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:42:38,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:42:38,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:42:38,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:42:38,726.726 INFO    ] time= 27/06/2026 16:42:38
[2026-06-27 16:42:38,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:42:38,737.737 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:42:38,805.805 INFO    ] No existing commands found in stream
[2026-06-27 16:42:43,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:42:43,837.837 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-27 16:42:44,423.423 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 16:42:44,424.424 INFO    ] Checking for system updates...
[2026-06-27 16:42:44,445.445 INFO    ] 200
[2026-06-27 16:42:44,447.447 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:42:44,477.477 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:42:44,479.479 INFO    ] No update needed
[2026-06-27 16:42:44,480.480 INFO    ] Checking for camera pi updates...
[2026-06-27 16:42:44,499.499 INFO    ] 200
[2026-06-27 16:42:44,501.501 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:42:44,526.526 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:42:44,569.569 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:42:44,571.571 INFO    ] No camera update needed
[2026-06-27 16:42:44,572.572 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:42:44,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:42:44,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:42:44,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:42:46,617.617 INFO    ] ================================================
[2026-06-27 16:42:46,632.632 INFO    ] Launching Daemon at Sat Jun 27 16:42:46 IST 2026
[2026-06-27 16:42:46,643.643 INFO    ] ================================================
[2026-06-27 16:42:47,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:42:47
[2026-06-27 16:42:47,324.324 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:42:47,452.452 INFO    ] Initializing speech engine...
[2026-06-27 16:42:47,457.457 INFO    ] 2026-06-27 16:42:47
[2026-06-27 16:42:47,672.672 INFO    ] 2026-06-27 16:42:47
[2026-06-27 16:42:47,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:42:47,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:42:47,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:42:48,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:42:48,110.110 INFO    ] time= 27/06/2026 16:42:48
[2026-06-27 16:42:48,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:42:48,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:42:48,208.208 INFO    ] No existing commands found in stream
[2026-06-27 16:42:53,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:42:53,224.224 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-27 16:42:54,161.161 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:42:54,162.162 INFO    ] Checking for system updates...
[2026-06-27 16:42:54,183.183 INFO    ] 200
[2026-06-27 16:42:54,184.184 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:42:54,215.215 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:42:54,216.216 INFO    ] No update needed
[2026-06-27 16:42:54,217.217 INFO    ] Checking for camera pi updates...
[2026-06-27 16:42:54,239.239 INFO    ] 200
[2026-06-27 16:42:54,241.241 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:42:54,266.266 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:42:54,306.306 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:42:54,308.308 INFO    ] No camera update needed
[2026-06-27 16:42:54,309.309 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:42:54,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:42:54,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:42:54,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:42:56,354.354 INFO    ] ================================================
[2026-06-27 16:42:56,369.369 INFO    ] Launching Daemon at Sat Jun 27 16:42:56 IST 2026
[2026-06-27 16:42:56,380.380 INFO    ] ================================================
[2026-06-27 16:42:56,754.754 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:42:56
[2026-06-27 16:42:57,095.095 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:42:57,233.233 INFO    ] Initializing speech engine...
[2026-06-27 16:42:57,241.241 INFO    ] 2026-06-27 16:42:57
[2026-06-27 16:42:57,458.458 INFO    ] 2026-06-27 16:42:57
[2026-06-27 16:42:57,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:42:57,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:42:57,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:42:57,854.854 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:42:57,902.902 INFO    ] time= 27/06/2026 16:42:57
[2026-06-27 16:42:57,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:42:57,911.911 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:42:57,978.978 INFO    ] No existing commands found in stream
[2026-06-27 16:43:02,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:43:02,996.996 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-27 16:43:04,841.841 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 16:43:04,843.843 INFO    ] Checking for system updates...
[2026-06-27 16:43:04,866.866 INFO    ] 200
[2026-06-27 16:43:04,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:43:04,899.899 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:43:04,900.900 INFO    ] No update needed
[2026-06-27 16:43:04,902.902 INFO    ] Checking for camera pi updates...
[2026-06-27 16:43:04,921.921 INFO    ] 200
[2026-06-27 16:43:04,923.923 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:43:04,947.947 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:43:04,992.992 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:43:04,994.994 INFO    ] No camera update needed
[2026-06-27 16:43:04,995.995 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:43:04,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:43:05,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:43:05,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:43:07,042.042 INFO    ] ================================================
[2026-06-27 16:43:07,057.057 INFO    ] Launching Daemon at Sat Jun 27 16:43:07 IST 2026
[2026-06-27 16:43:07,068.068 INFO    ] ================================================
[2026-06-27 16:43:07,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:43:07
[2026-06-27 16:43:07,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:43:07,879.879 INFO    ] Initializing speech engine...
[2026-06-27 16:43:07,882.882 INFO    ] 2026-06-27 16:43:07
[2026-06-27 16:43:08,109.109 INFO    ] 2026-06-27 16:43:08
[2026-06-27 16:43:08,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:43:08,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:43:08,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:43:08,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:43:08,545.545 INFO    ] time= 27/06/2026 16:43:08
[2026-06-27 16:43:08,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:43:08,597.597 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:43:08,700.700 INFO    ] No existing commands found in stream
[2026-06-27 16:43:13,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:43:13,717.717 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-27 16:43:17,340.340 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 16:43:17,342.342 INFO    ] Checking for system updates...
[2026-06-27 16:43:17,365.365 INFO    ] 200
[2026-06-27 16:43:17,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:43:17,400.400 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:43:17,401.401 INFO    ] No update needed
[2026-06-27 16:43:17,403.403 INFO    ] Checking for camera pi updates...
[2026-06-27 16:43:17,422.422 INFO    ] 200
[2026-06-27 16:43:17,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:43:17,448.448 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:43:17,494.494 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:43:17,496.496 INFO    ] No camera update needed
[2026-06-27 16:43:17,498.498 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:43:17,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:43:17,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:43:17,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:43:19,547.547 INFO    ] ================================================
[2026-06-27 16:43:19,563.563 INFO    ] Launching Daemon at Sat Jun 27 16:43:19 IST 2026
[2026-06-27 16:43:19,574.574 INFO    ] ================================================
[2026-06-27 16:43:19,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:43:19
[2026-06-27 16:43:20,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:43:20,370.370 INFO    ] Initializing speech engine...
[2026-06-27 16:43:20,376.376 INFO    ] 2026-06-27 16:43:20
[2026-06-27 16:43:20,578.578 INFO    ] 2026-06-27 16:43:20
[2026-06-27 16:43:20,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:43:20,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:43:20,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:43:20,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:43:20,998.998 INFO    ] time= 27/06/2026 16:43:20
[2026-06-27 16:43:21,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:43:21,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:43:21,090.090 INFO    ] No existing commands found in stream
[2026-06-27 16:43:26,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:43:26,104.104 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-27 16:43:30,083.083 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 16:43:30,085.085 INFO    ] Checking for system updates...
[2026-06-27 16:43:30,107.107 INFO    ] 200
[2026-06-27 16:43:30,109.109 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:43:30,143.143 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:43:30,145.145 INFO    ] No update needed
[2026-06-27 16:43:30,146.146 INFO    ] Checking for camera pi updates...
[2026-06-27 16:43:30,166.166 INFO    ] 200
[2026-06-27 16:43:30,167.167 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:43:30,192.192 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:43:30,238.238 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:43:30,239.239 INFO    ] No camera update needed
[2026-06-27 16:43:30,241.241 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:43:30,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:43:30,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:43:30,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:43:32,278.278 INFO    ] ================================================
[2026-06-27 16:43:32,287.287 INFO    ] Launching Daemon at Sat Jun 27 16:43:32 IST 2026
[2026-06-27 16:43:32,293.293 INFO    ] ================================================
[2026-06-27 16:43:32,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:43:32
[2026-06-27 16:43:32,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:43:33,110.110 INFO    ] Initializing speech engine...
[2026-06-27 16:43:33,115.115 INFO    ] 2026-06-27 16:43:33
[2026-06-27 16:43:33,323.323 INFO    ] 2026-06-27 16:43:33
[2026-06-27 16:43:33,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:43:33,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:43:33,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:43:33,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:43:33,765.765 INFO    ] time= 27/06/2026 16:43:33
[2026-06-27 16:43:33,770.770 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:43:33,772.772 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:43:33,840.840 INFO    ] No existing commands found in stream
[2026-06-27 16:43:38,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:43:38,867.867 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-27 16:43:39,680.680 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 16:43:39,681.681 INFO    ] Checking for system updates...
[2026-06-27 16:43:39,703.703 INFO    ] 200
[2026-06-27 16:43:39,704.704 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:43:39,736.736 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:43:39,737.737 INFO    ] No update needed
[2026-06-27 16:43:39,739.739 INFO    ] Checking for camera pi updates...
[2026-06-27 16:43:39,760.760 INFO    ] 200
[2026-06-27 16:43:39,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:43:39,787.787 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:43:39,928.928 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:43:39,929.929 INFO    ] No camera update needed
[2026-06-27 16:43:39,931.931 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:43:39,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:43:39,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:43:39,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:43:41,977.977 INFO    ] ================================================
[2026-06-27 16:43:41,992.992 INFO    ] Launching Daemon at Sat Jun 27 16:43:41 IST 2026
[2026-06-27 16:43:42,004.004 INFO    ] ================================================
[2026-06-27 16:43:42,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:43:42
[2026-06-27 16:43:42,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:43:42,832.832 INFO    ] Initializing speech engine...
[2026-06-27 16:43:42,842.842 INFO    ] 2026-06-27 16:43:42
[2026-06-27 16:43:43,048.048 INFO    ] 2026-06-27 16:43:43
[2026-06-27 16:43:43,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:43:43,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:43:43,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:43:43,445.445 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:43:43,480.480 INFO    ] time= 27/06/2026 16:43:43
[2026-06-27 16:43:43,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:43:43,496.496 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:43:43,564.564 INFO    ] No existing commands found in stream
[2026-06-27 16:43:48,588.588 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:43:48,591.591 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-27 16:43:49,013.013 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 16:43:49,015.015 INFO    ] Checking for system updates...
[2026-06-27 16:43:49,037.037 INFO    ] 200
[2026-06-27 16:43:49,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:43:49,068.068 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:43:49,070.070 INFO    ] No update needed
[2026-06-27 16:43:49,071.071 INFO    ] Checking for camera pi updates...
[2026-06-27 16:43:49,090.090 INFO    ] 200
[2026-06-27 16:43:49,092.092 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:43:49,116.116 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:43:49,158.158 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:43:49,159.159 INFO    ] No camera update needed
[2026-06-27 16:43:49,160.160 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:43:49,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:43:49,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:43:49,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:43:51,206.206 INFO    ] ================================================
[2026-06-27 16:43:51,221.221 INFO    ] Launching Daemon at Sat Jun 27 16:43:51 IST 2026
[2026-06-27 16:43:51,233.233 INFO    ] ================================================
[2026-06-27 16:43:51,588.588 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:43:51
[2026-06-27 16:43:51,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:43:52,048.048 INFO    ] Initializing speech engine...
[2026-06-27 16:43:52,056.056 INFO    ] 2026-06-27 16:43:52
[2026-06-27 16:43:52,268.268 INFO    ] 2026-06-27 16:43:52
[2026-06-27 16:43:52,297.297 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:43:52,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:43:52,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:43:52,684.684 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:43:52,707.707 INFO    ] time= 27/06/2026 16:43:52
[2026-06-27 16:43:52,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:43:52,714.714 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:43:52,781.781 INFO    ] No existing commands found in stream
[2026-06-27 16:43:57,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:43:57,799.799 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-27 16:43:58,582.582 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 16:43:58,584.584 INFO    ] Checking for system updates...
[2026-06-27 16:43:58,605.605 INFO    ] 200
[2026-06-27 16:43:58,607.607 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:43:58,637.637 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:43:58,638.638 INFO    ] No update needed
[2026-06-27 16:43:58,640.640 INFO    ] Checking for camera pi updates...
[2026-06-27 16:43:58,662.662 INFO    ] 200
[2026-06-27 16:43:58,663.663 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:43:58,687.687 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:43:58,731.731 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:43:58,732.732 INFO    ] No camera update needed
[2026-06-27 16:43:58,734.734 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:43:58,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:43:58,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:43:58,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:44:00,779.779 INFO    ] ================================================
[2026-06-27 16:44:00,795.795 INFO    ] Launching Daemon at Sat Jun 27 16:44:00 IST 2026
[2026-06-27 16:44:00,806.806 INFO    ] ================================================
[2026-06-27 16:44:01,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:44:01
[2026-06-27 16:44:01,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:44:01,823.823 INFO    ] Initializing speech engine...
[2026-06-27 16:44:01,833.833 INFO    ] 2026-06-27 16:44:01
[2026-06-27 16:44:02,092.092 INFO    ] 2026-06-27 16:44:02
[2026-06-27 16:44:02,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:44:02,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:44:02,330.330 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:44:02,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:44:02,548.548 INFO    ] time= 27/06/2026 16:44:02
[2026-06-27 16:44:02,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:44:02,579.579 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:44:02,647.647 INFO    ] No existing commands found in stream
[2026-06-27 16:44:07,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:44:07,660.660 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-27 16:44:09,649.649 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:44:09,651.651 INFO    ] Checking for system updates...
[2026-06-27 16:44:09,671.671 INFO    ] 200
[2026-06-27 16:44:09,673.673 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:44:09,704.704 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:44:09,706.706 INFO    ] No update needed
[2026-06-27 16:44:09,707.707 INFO    ] Checking for camera pi updates...
[2026-06-27 16:44:09,728.728 INFO    ] 200
[2026-06-27 16:44:09,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:44:09,753.753 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:44:09,793.793 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:44:09,795.795 INFO    ] No camera update needed
[2026-06-27 16:44:09,796.796 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:44:09,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:44:09,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:44:09,803.803 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:44:11,843.843 INFO    ] ================================================
[2026-06-27 16:44:11,858.858 INFO    ] Launching Daemon at Sat Jun 27 16:44:11 IST 2026
[2026-06-27 16:44:11,870.870 INFO    ] ================================================
[2026-06-27 16:44:12,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:44:12
[2026-06-27 16:44:12,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:44:12,678.678 INFO    ] Initializing speech engine...
[2026-06-27 16:44:12,688.688 INFO    ] 2026-06-27 16:44:12
[2026-06-27 16:44:12,899.899 INFO    ] 2026-06-27 16:44:12
[2026-06-27 16:44:12,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:44:13,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:44:13,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:44:13,315.315 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:44:13,349.349 INFO    ] time= 27/06/2026 16:44:13
[2026-06-27 16:44:13,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:44:13,357.357 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:44:13,426.426 INFO    ] No existing commands found in stream
[2026-06-27 16:44:18,451.451 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:44:18,454.454 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-27 16:44:22,199.199 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:44:22,200.200 INFO    ] Checking for system updates...
[2026-06-27 16:44:22,222.222 INFO    ] 200
[2026-06-27 16:44:22,224.224 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:44:22,256.256 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:44:22,258.258 INFO    ] No update needed
[2026-06-27 16:44:22,259.259 INFO    ] Checking for camera pi updates...
[2026-06-27 16:44:22,280.280 INFO    ] 200
[2026-06-27 16:44:22,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:44:22,305.305 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:44:22,346.346 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:44:22,347.347 INFO    ] No camera update needed
[2026-06-27 16:44:22,349.349 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:44:22,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:44:22,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:44:22,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:44:24,394.394 INFO    ] ================================================
[2026-06-27 16:44:24,410.410 INFO    ] Launching Daemon at Sat Jun 27 16:44:24 IST 2026
[2026-06-27 16:44:24,421.421 INFO    ] ================================================
[2026-06-27 16:44:24,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:44:24
[2026-06-27 16:44:25,073.073 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:44:25,205.205 INFO    ] Initializing speech engine...
[2026-06-27 16:44:25,210.210 INFO    ] 2026-06-27 16:44:25
[2026-06-27 16:44:25,411.411 INFO    ] 2026-06-27 16:44:25
[2026-06-27 16:44:25,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:44:25,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:44:25,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:44:25,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:44:25,846.846 INFO    ] time= 27/06/2026 16:44:25
[2026-06-27 16:44:25,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:44:25,918.918 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:44:26,021.021 INFO    ] No existing commands found in stream
[2026-06-27 16:44:31,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:44:31,032.032 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-27 16:44:34,799.799 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:44:34,801.801 INFO    ] Checking for system updates...
[2026-06-27 16:44:34,822.822 INFO    ] 200
[2026-06-27 16:44:34,823.823 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:44:34,857.857 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:44:34,858.858 INFO    ] No update needed
[2026-06-27 16:44:34,860.860 INFO    ] Checking for camera pi updates...
[2026-06-27 16:44:34,879.879 INFO    ] 200
[2026-06-27 16:44:34,880.880 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:44:34,904.904 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:44:34,953.953 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:44:34,954.954 INFO    ] No camera update needed
[2026-06-27 16:44:34,956.956 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:44:34,957.957 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:44:34,960.960 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:44:34,962.962 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:44:37,002.002 INFO    ] ================================================
[2026-06-27 16:44:37,018.018 INFO    ] Launching Daemon at Sat Jun 27 16:44:37 IST 2026
[2026-06-27 16:44:37,029.029 INFO    ] ================================================
[2026-06-27 16:44:37,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:44:37
[2026-06-27 16:44:37,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:44:37,827.827 INFO    ] Initializing speech engine...
[2026-06-27 16:44:37,830.830 INFO    ] 2026-06-27 16:44:37
[2026-06-27 16:44:38,039.039 INFO    ] 2026-06-27 16:44:38
[2026-06-27 16:44:38,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:44:38,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:44:38,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:44:38,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:44:38,483.483 INFO    ] time= 27/06/2026 16:44:38
[2026-06-27 16:44:38,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:44:38,539.539 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:44:38,641.641 INFO    ] No existing commands found in stream
[2026-06-27 16:44:43,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:44:43,649.649 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-27 16:44:45,754.754 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 16:44:45,756.756 INFO    ] Checking for system updates...
[2026-06-27 16:44:45,776.776 INFO    ] 200
[2026-06-27 16:44:45,778.778 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:44:45,810.810 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:44:45,811.811 INFO    ] No update needed
[2026-06-27 16:44:45,813.813 INFO    ] Checking for camera pi updates...
[2026-06-27 16:44:45,832.832 INFO    ] 200
[2026-06-27 16:44:45,834.834 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:44:45,857.857 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:44:45,901.901 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:44:45,903.903 INFO    ] No camera update needed
[2026-06-27 16:44:45,904.904 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:44:45,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:44:45,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:44:45,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:44:47,949.949 INFO    ] ================================================
[2026-06-27 16:44:47,964.964 INFO    ] Launching Daemon at Sat Jun 27 16:44:47 IST 2026
[2026-06-27 16:44:47,975.975 INFO    ] ================================================
[2026-06-27 16:44:48,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:44:48
[2026-06-27 16:44:48,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:44:48,769.769 INFO    ] Initializing speech engine...
[2026-06-27 16:44:48,774.774 INFO    ] 2026-06-27 16:44:48
[2026-06-27 16:44:49,004.004 INFO    ] 2026-06-27 16:44:48
[2026-06-27 16:44:49,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:44:49,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:44:49,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:44:49,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:44:49,445.445 INFO    ] time= 27/06/2026 16:44:49
[2026-06-27 16:44:49,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:44:49,485.485 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:44:49,556.556 INFO    ] No existing commands found in stream
[2026-06-27 16:44:54,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:44:54,568.568 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-27 16:44:56,474.474 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:44:56,475.475 INFO    ] Checking for system updates...
[2026-06-27 16:44:56,496.496 INFO    ] 200
[2026-06-27 16:44:56,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:44:56,530.530 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:44:56,531.531 INFO    ] No update needed
[2026-06-27 16:44:56,532.532 INFO    ] Checking for camera pi updates...
[2026-06-27 16:44:56,552.552 INFO    ] 200
[2026-06-27 16:44:56,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:44:56,579.579 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:44:56,625.625 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:44:56,626.626 INFO    ] No camera update needed
[2026-06-27 16:44:56,630.630 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:44:56,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:44:56,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:44:56,638.638 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:44:58,676.676 INFO    ] ================================================
[2026-06-27 16:44:58,692.692 INFO    ] Launching Daemon at Sat Jun 27 16:44:58 IST 2026
[2026-06-27 16:44:58,703.703 INFO    ] ================================================
[2026-06-27 16:44:59,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:44:59
[2026-06-27 16:44:59,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:44:59,499.499 INFO    ] Initializing speech engine...
[2026-06-27 16:44:59,511.511 INFO    ] 2026-06-27 16:44:59
[2026-06-27 16:44:59,721.721 INFO    ] 2026-06-27 16:44:59
[2026-06-27 16:44:59,748.748 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:44:59,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:44:59,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:45:00,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:45:00,153.153 INFO    ] time= 27/06/2026 16:45:00
[2026-06-27 16:45:00,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:45:00,170.170 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:45:00,238.238 INFO    ] No existing commands found in stream
[2026-06-27 16:45:05,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:45:05,249.249 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-27 16:45:06,187.187 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 16:45:06,190.190 INFO    ] Checking for system updates...
[2026-06-27 16:45:06,219.219 INFO    ] 200
[2026-06-27 16:45:06,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:45:06,254.254 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:45:06,256.256 INFO    ] No update needed
[2026-06-27 16:45:06,257.257 INFO    ] Checking for camera pi updates...
[2026-06-27 16:45:06,276.276 INFO    ] 200
[2026-06-27 16:45:06,278.278 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:45:06,301.301 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:45:06,343.343 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:45:06,344.344 INFO    ] No camera update needed
[2026-06-27 16:45:06,345.345 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:45:06,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:45:06,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:45:06,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:45:08,396.396 INFO    ] ================================================
[2026-06-27 16:45:08,412.412 INFO    ] Launching Daemon at Sat Jun 27 16:45:08 IST 2026
[2026-06-27 16:45:08,422.422 INFO    ] ================================================
[2026-06-27 16:45:08,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:45:08
[2026-06-27 16:45:09,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:45:09,238.238 INFO    ] Initializing speech engine...
[2026-06-27 16:45:09,242.242 INFO    ] 2026-06-27 16:45:09
[2026-06-27 16:45:09,459.459 INFO    ] 2026-06-27 16:45:09
[2026-06-27 16:45:09,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:45:09,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:45:09,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:45:10,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:45:10,018.018 INFO    ] time= 27/06/2026 16:45:10
[2026-06-27 16:45:10,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:45:10,023.023 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:45:10,091.091 INFO    ] No existing commands found in stream
[2026-06-27 16:45:15,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:45:15,105.105 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-27 16:45:17,894.894 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 16:45:17,896.896 INFO    ] Checking for system updates...
[2026-06-27 16:45:17,917.917 INFO    ] 200
[2026-06-27 16:45:17,918.918 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:45:17,949.949 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:45:17,950.950 INFO    ] No update needed
[2026-06-27 16:45:17,951.951 INFO    ] Checking for camera pi updates...
[2026-06-27 16:45:17,972.972 INFO    ] 200
[2026-06-27 16:45:17,973.973 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:45:17,998.998 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:45:18,039.039 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:45:18,041.041 INFO    ] No camera update needed
[2026-06-27 16:45:18,042.042 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:45:18,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:45:18,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:45:18,050.050 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:45:20,091.091 INFO    ] ================================================
[2026-06-27 16:45:20,106.106 INFO    ] Launching Daemon at Sat Jun 27 16:45:20 IST 2026
[2026-06-27 16:45:20,118.118 INFO    ] ================================================
[2026-06-27 16:45:20,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:45:20
[2026-06-27 16:45:20,781.781 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:45:20,919.919 INFO    ] Initializing speech engine...
[2026-06-27 16:45:20,928.928 INFO    ] 2026-06-27 16:45:20
[2026-06-27 16:45:21,158.158 INFO    ] 2026-06-27 16:45:21
[2026-06-27 16:45:21,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:45:21,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:45:21,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:45:21,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:45:21,632.632 INFO    ] time= 27/06/2026 16:45:21
[2026-06-27 16:45:21,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:45:21,639.639 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:45:21,711.711 INFO    ] No existing commands found in stream
[2026-06-27 16:45:26,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:45:26,723.723 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-27 16:45:29,529.529 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 16:45:29,531.531 INFO    ] Checking for system updates...
[2026-06-27 16:45:29,551.551 INFO    ] 200
[2026-06-27 16:45:29,553.553 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:45:29,584.584 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:45:29,585.585 INFO    ] No update needed
[2026-06-27 16:45:29,586.586 INFO    ] Checking for camera pi updates...
[2026-06-27 16:45:29,607.607 INFO    ] 200
[2026-06-27 16:45:29,608.608 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:45:29,633.633 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:45:29,672.672 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:45:29,674.674 INFO    ] No camera update needed
[2026-06-27 16:45:29,675.675 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:45:29,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:45:29,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:45:29,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:45:31,720.720 INFO    ] ================================================
[2026-06-27 16:45:31,736.736 INFO    ] Launching Daemon at Sat Jun 27 16:45:31 IST 2026
[2026-06-27 16:45:31,748.748 INFO    ] ================================================
[2026-06-27 16:45:32,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:45:32
[2026-06-27 16:45:32,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:45:32,648.648 INFO    ] Initializing speech engine...
[2026-06-27 16:45:32,661.661 INFO    ] 2026-06-27 16:45:32
[2026-06-27 16:45:32,858.858 INFO    ] 2026-06-27 16:45:32
[2026-06-27 16:45:32,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:45:33,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:45:33,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:45:33,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:45:33,320.320 INFO    ] time= 27/06/2026 16:45:33
[2026-06-27 16:45:33,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:45:33,349.349 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:45:33,415.415 INFO    ] No existing commands found in stream
[2026-06-27 16:45:38,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:45:38,429.429 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-27 16:45:39,173.173 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 16:45:39,175.175 INFO    ] Checking for system updates...
[2026-06-27 16:45:39,198.198 INFO    ] 200
[2026-06-27 16:45:39,199.199 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:45:39,237.237 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:45:39,239.239 INFO    ] No update needed
[2026-06-27 16:45:39,240.240 INFO    ] Checking for camera pi updates...
[2026-06-27 16:45:39,264.264 INFO    ] 200
[2026-06-27 16:45:39,266.266 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:45:39,289.289 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:45:39,334.334 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:45:39,335.335 INFO    ] No camera update needed
[2026-06-27 16:45:39,337.337 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:45:39,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:45:39,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:45:39,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:45:41,386.386 INFO    ] ================================================
[2026-06-27 16:45:41,401.401 INFO    ] Launching Daemon at Sat Jun 27 16:45:41 IST 2026
[2026-06-27 16:45:41,412.412 INFO    ] ================================================
[2026-06-27 16:45:41,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:45:41
[2026-06-27 16:45:42,112.112 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:45:42,247.247 INFO    ] Initializing speech engine...
[2026-06-27 16:45:42,254.254 INFO    ] 2026-06-27 16:45:42
[2026-06-27 16:45:42,504.504 INFO    ] 2026-06-27 16:45:42
[2026-06-27 16:45:42,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:45:42,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:45:42,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:45:42,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:45:42,966.966 INFO    ] time= 27/06/2026 16:45:42
[2026-06-27 16:45:42,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:45:43,017.017 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:45:43,095.095 INFO    ] No existing commands found in stream
[2026-06-27 16:45:48,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:45:48,107.107 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-27 16:45:48,718.718 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:45:48,720.720 INFO    ] Checking for system updates...
[2026-06-27 16:45:48,741.741 INFO    ] 200
[2026-06-27 16:45:48,743.743 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:45:48,774.774 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:45:48,775.775 INFO    ] No update needed
[2026-06-27 16:45:48,776.776 INFO    ] Checking for camera pi updates...
[2026-06-27 16:45:48,796.796 INFO    ] 200
[2026-06-27 16:45:48,798.798 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:45:48,822.822 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:45:48,967.967 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:45:48,969.969 INFO    ] No camera update needed
[2026-06-27 16:45:48,970.970 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:45:48,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:45:48,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:45:48,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:45:51,016.016 INFO    ] ================================================
[2026-06-27 16:45:51,032.032 INFO    ] Launching Daemon at Sat Jun 27 16:45:51 IST 2026
[2026-06-27 16:45:51,043.043 INFO    ] ================================================
[2026-06-27 16:45:51,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:45:51
[2026-06-27 16:45:51,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:45:51,899.899 INFO    ] Initializing speech engine...
[2026-06-27 16:45:51,905.905 INFO    ] 2026-06-27 16:45:51
[2026-06-27 16:45:52,113.113 INFO    ] 2026-06-27 16:45:52
[2026-06-27 16:45:52,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:45:52,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:45:52,339.339 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:45:52,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:45:52,560.560 INFO    ] time= 27/06/2026 16:45:52
[2026-06-27 16:45:52,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:45:52,568.568 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:45:52,635.635 INFO    ] No existing commands found in stream
[2026-06-27 16:45:57,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:45:57,652.652 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-27 16:45:58,174.174 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 16:45:58,175.175 INFO    ] Checking for system updates...
[2026-06-27 16:45:58,197.197 INFO    ] 200
[2026-06-27 16:45:58,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:45:58,229.229 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:45:58,230.230 INFO    ] No update needed
[2026-06-27 16:45:58,232.232 INFO    ] Checking for camera pi updates...
[2026-06-27 16:45:58,253.253 INFO    ] 200
[2026-06-27 16:45:58,255.255 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:45:58,282.282 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:45:58,320.320 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:45:58,321.321 INFO    ] No camera update needed
[2026-06-27 16:45:58,323.323 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:45:58,324.324 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:45:58,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:45:58,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:46:00,372.372 INFO    ] ================================================
[2026-06-27 16:46:00,388.388 INFO    ] Launching Daemon at Sat Jun 27 16:46:00 IST 2026
[2026-06-27 16:46:00,399.399 INFO    ] ================================================
[2026-06-27 16:46:00,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:46:00
[2026-06-27 16:46:01,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:46:01,189.189 INFO    ] Initializing speech engine...
[2026-06-27 16:46:01,199.199 INFO    ] 2026-06-27 16:46:01
[2026-06-27 16:46:01,465.465 INFO    ] 2026-06-27 16:46:01
[2026-06-27 16:46:01,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:46:01,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:46:01,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:46:01,950.950 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:46:02,006.006 INFO    ] time= 27/06/2026 16:46:01
[2026-06-27 16:46:02,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:46:02,051.051 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:46:02,153.153 INFO    ] No existing commands found in stream
[2026-06-27 16:46:07,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:46:07,165.165 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-27 16:46:09,935.935 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:46:09,937.937 INFO    ] Checking for system updates...
[2026-06-27 16:46:09,959.959 INFO    ] 200
[2026-06-27 16:46:09,961.961 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:46:09,991.991 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:46:09,993.993 INFO    ] No update needed
[2026-06-27 16:46:09,994.994 INFO    ] Checking for camera pi updates...
[2026-06-27 16:46:10,015.015 INFO    ] 200
[2026-06-27 16:46:10,017.017 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:46:10,047.047 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:46:10,084.084 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:46:10,085.085 INFO    ] No camera update needed
[2026-06-27 16:46:10,087.087 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:46:10,088.088 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:46:10,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:46:10,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:46:12,131.131 INFO    ] ================================================
[2026-06-27 16:46:12,146.146 INFO    ] Launching Daemon at Sat Jun 27 16:46:12 IST 2026
[2026-06-27 16:46:12,158.158 INFO    ] ================================================
[2026-06-27 16:46:12,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:46:12
[2026-06-27 16:46:12,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:46:13,001.001 INFO    ] Initializing speech engine...
[2026-06-27 16:46:13,012.012 INFO    ] 2026-06-27 16:46:13
[2026-06-27 16:46:13,217.217 INFO    ] 2026-06-27 16:46:13
[2026-06-27 16:46:13,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:46:13,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:46:13,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:46:13,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:46:13,657.657 INFO    ] time= 27/06/2026 16:46:13
[2026-06-27 16:46:13,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:46:13,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:46:13,732.732 INFO    ] No existing commands found in stream
[2026-06-27 16:46:18,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:46:18,744.744 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-27 16:46:20,003.003 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 16:46:20,005.005 INFO    ] Checking for system updates...
[2026-06-27 16:46:20,027.027 INFO    ] 200
[2026-06-27 16:46:20,028.028 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:46:20,059.059 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:46:20,061.061 INFO    ] No update needed
[2026-06-27 16:46:20,062.062 INFO    ] Checking for camera pi updates...
[2026-06-27 16:46:20,082.082 INFO    ] 200
[2026-06-27 16:46:20,083.083 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:46:20,107.107 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:46:20,143.143 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:46:20,145.145 INFO    ] No camera update needed
[2026-06-27 16:46:20,146.146 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:46:20,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:46:20,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:46:20,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:46:22,192.192 INFO    ] ================================================
[2026-06-27 16:46:22,209.209 INFO    ] Launching Daemon at Sat Jun 27 16:46:22 IST 2026
[2026-06-27 16:46:22,220.220 INFO    ] ================================================
[2026-06-27 16:46:22,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:46:22
[2026-06-27 16:46:22,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:46:23,020.020 INFO    ] Initializing speech engine...
[2026-06-27 16:46:23,024.024 INFO    ] 2026-06-27 16:46:23
[2026-06-27 16:46:23,245.245 INFO    ] 2026-06-27 16:46:23
[2026-06-27 16:46:23,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:46:23,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:46:23,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:46:23,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:46:23,680.680 INFO    ] time= 27/06/2026 16:46:23
[2026-06-27 16:46:23,719.719 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:46:23,721.721 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:46:23,823.823 INFO    ] No existing commands found in stream
[2026-06-27 16:46:28,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:46:28,835.835 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-27 16:46:32,565.565 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:46:32,567.567 INFO    ] Checking for system updates...
[2026-06-27 16:46:32,589.589 INFO    ] 200
[2026-06-27 16:46:32,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:46:32,621.621 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:46:32,622.622 INFO    ] No update needed
[2026-06-27 16:46:32,623.623 INFO    ] Checking for camera pi updates...
[2026-06-27 16:46:32,643.643 INFO    ] 200
[2026-06-27 16:46:32,644.644 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:46:32,669.669 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:46:32,707.707 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:46:32,709.709 INFO    ] No camera update needed
[2026-06-27 16:46:32,710.710 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:46:32,711.711 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:46:32,714.714 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:46:32,717.717 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:46:34,757.757 INFO    ] ================================================
[2026-06-27 16:46:34,772.772 INFO    ] Launching Daemon at Sat Jun 27 16:46:34 IST 2026
[2026-06-27 16:46:34,783.783 INFO    ] ================================================
[2026-06-27 16:46:35,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:46:35
[2026-06-27 16:46:35,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:46:35,659.659 INFO    ] Initializing speech engine...
[2026-06-27 16:46:35,663.663 INFO    ] 2026-06-27 16:46:35
[2026-06-27 16:46:35,871.871 INFO    ] 2026-06-27 16:46:35
[2026-06-27 16:46:35,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:46:36,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:46:36,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:46:36,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:46:36,498.498 INFO    ] time= 27/06/2026 16:46:36
[2026-06-27 16:46:36,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:46:36,505.505 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:46:36,569.569 INFO    ] No existing commands found in stream
[2026-06-27 16:46:41,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:46:41,583.583 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-27 16:46:45,339.339 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 16:46:45,341.341 INFO    ] Checking for system updates...
[2026-06-27 16:46:45,362.362 INFO    ] 200
[2026-06-27 16:46:45,363.363 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:46:45,396.396 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:46:45,398.398 INFO    ] No update needed
[2026-06-27 16:46:45,399.399 INFO    ] Checking for camera pi updates...
[2026-06-27 16:46:45,420.420 INFO    ] 200
[2026-06-27 16:46:45,422.422 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:46:45,448.448 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:46:45,494.494 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:46:45,495.495 INFO    ] No camera update needed
[2026-06-27 16:46:45,497.497 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:46:45,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:46:45,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:46:45,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:46:47,545.545 INFO    ] ================================================
[2026-06-27 16:46:47,561.561 INFO    ] Launching Daemon at Sat Jun 27 16:46:47 IST 2026
[2026-06-27 16:46:47,572.572 INFO    ] ================================================
[2026-06-27 16:46:47,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:46:47
[2026-06-27 16:46:48,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:46:48,363.363 INFO    ] Initializing speech engine...
[2026-06-27 16:46:48,372.372 INFO    ] 2026-06-27 16:46:48
[2026-06-27 16:46:48,578.578 INFO    ] 2026-06-27 16:46:48
[2026-06-27 16:46:48,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:46:48,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:46:48,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:46:48,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:46:49,016.016 INFO    ] time= 27/06/2026 16:46:48
[2026-06-27 16:46:49,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:46:49,023.023 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:46:49,090.090 INFO    ] No existing commands found in stream
[2026-06-27 16:46:54,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:46:54,117.117 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-27 16:46:56,159.159 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 16:46:56,161.161 INFO    ] Checking for system updates...
[2026-06-27 16:46:56,183.183 INFO    ] 200
[2026-06-27 16:46:56,185.185 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:46:56,216.216 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:46:56,217.217 INFO    ] No update needed
[2026-06-27 16:46:56,218.218 INFO    ] Checking for camera pi updates...
[2026-06-27 16:46:56,238.238 INFO    ] 200
[2026-06-27 16:46:56,239.239 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:46:56,263.263 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:46:56,300.300 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:46:56,301.301 INFO    ] No camera update needed
[2026-06-27 16:46:56,303.303 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:46:56,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:46:56,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:46:56,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:46:58,348.348 INFO    ] ================================================
[2026-06-27 16:46:58,365.365 INFO    ] Launching Daemon at Sat Jun 27 16:46:58 IST 2026
[2026-06-27 16:46:58,377.377 INFO    ] ================================================
[2026-06-27 16:46:58,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:46:58
[2026-06-27 16:46:59,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:46:59,186.186 INFO    ] Initializing speech engine...
[2026-06-27 16:46:59,193.193 INFO    ] 2026-06-27 16:46:59
[2026-06-27 16:46:59,404.404 INFO    ] 2026-06-27 16:46:59
[2026-06-27 16:46:59,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:46:59,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:46:59,649.649 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:46:59,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:46:59,868.868 INFO    ] time= 27/06/2026 16:46:59
[2026-06-27 16:46:59,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:46:59,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:46:59,998.998 INFO    ] No existing commands found in stream
[2026-06-27 16:47:05,007.007 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:47:05,009.009 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-27 16:47:07,139.139 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:47:07,141.141 INFO    ] Checking for system updates...
[2026-06-27 16:47:07,161.161 INFO    ] 200
[2026-06-27 16:47:07,163.163 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:47:07,203.203 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:47:07,205.205 INFO    ] No update needed
[2026-06-27 16:47:07,206.206 INFO    ] Checking for camera pi updates...
[2026-06-27 16:47:07,226.226 INFO    ] 200
[2026-06-27 16:47:07,228.228 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:47:07,251.251 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:47:07,291.291 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:47:07,293.293 INFO    ] No camera update needed
[2026-06-27 16:47:07,294.294 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:47:07,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:47:07,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:47:07,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:47:09,341.341 INFO    ] ================================================
[2026-06-27 16:47:09,356.356 INFO    ] Launching Daemon at Sat Jun 27 16:47:09 IST 2026
[2026-06-27 16:47:09,367.367 INFO    ] ================================================
[2026-06-27 16:47:09,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:47:09
[2026-06-27 16:47:10,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:47:10,166.166 INFO    ] Initializing speech engine...
[2026-06-27 16:47:10,174.174 INFO    ] 2026-06-27 16:47:10
[2026-06-27 16:47:10,389.389 INFO    ] 2026-06-27 16:47:10
[2026-06-27 16:47:10,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:47:10,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:47:10,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:47:10,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:47:10,809.809 INFO    ] time= 27/06/2026 16:47:10
[2026-06-27 16:47:10,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:47:10,837.837 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:47:10,928.928 INFO    ] No existing commands found in stream
[2026-06-27 16:47:15,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:47:15,945.945 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-27 16:47:18,540.540 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 16:47:18,541.541 INFO    ] Checking for system updates...
[2026-06-27 16:47:18,563.563 INFO    ] 200
[2026-06-27 16:47:18,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:47:18,595.595 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:47:18,597.597 INFO    ] No update needed
[2026-06-27 16:47:18,598.598 INFO    ] Checking for camera pi updates...
[2026-06-27 16:47:18,618.618 INFO    ] 200
[2026-06-27 16:47:18,620.620 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:47:18,643.643 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:47:18,684.684 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:47:18,686.686 INFO    ] No camera update needed
[2026-06-27 16:47:18,687.687 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:47:18,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:47:18,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:47:18,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:47:20,734.734 INFO    ] ================================================
[2026-06-27 16:47:20,749.749 INFO    ] Launching Daemon at Sat Jun 27 16:47:20 IST 2026
[2026-06-27 16:47:20,760.760 INFO    ] ================================================
[2026-06-27 16:47:21,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:47:21
[2026-06-27 16:47:21,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:47:21,571.571 INFO    ] Initializing speech engine...
[2026-06-27 16:47:21,576.576 INFO    ] 2026-06-27 16:47:21
[2026-06-27 16:47:21,780.780 INFO    ] 2026-06-27 16:47:21
[2026-06-27 16:47:21,810.810 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:47:21,940.940 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:47:21,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:47:22,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:47:22,187.187 INFO    ] time= 27/06/2026 16:47:22
[2026-06-27 16:47:22,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:47:22,234.234 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:47:22,307.307 INFO    ] No existing commands found in stream
[2026-06-27 16:47:27,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:47:27,324.324 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-27 16:47:28,517.517 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 16:47:28,519.519 INFO    ] Checking for system updates...
[2026-06-27 16:47:28,540.540 INFO    ] 200
[2026-06-27 16:47:28,542.542 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:47:28,574.574 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:47:28,575.575 INFO    ] No update needed
[2026-06-27 16:47:28,577.577 INFO    ] Checking for camera pi updates...
[2026-06-27 16:47:28,596.596 INFO    ] 200
[2026-06-27 16:47:28,597.597 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:47:28,621.621 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:47:28,656.656 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:47:28,657.657 INFO    ] No camera update needed
[2026-06-27 16:47:28,659.659 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:47:28,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:47:28,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:47:28,666.666 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:47:30,705.705 INFO    ] ================================================
[2026-06-27 16:47:30,720.720 INFO    ] Launching Daemon at Sat Jun 27 16:47:30 IST 2026
[2026-06-27 16:47:30,731.731 INFO    ] ================================================
[2026-06-27 16:47:31,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:47:31
[2026-06-27 16:47:31,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:47:31,562.562 INFO    ] Initializing speech engine...
[2026-06-27 16:47:31,571.571 INFO    ] 2026-06-27 16:47:31
[2026-06-27 16:47:31,772.772 INFO    ] 2026-06-27 16:47:31
[2026-06-27 16:47:31,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:47:32,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:47:32,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:47:32,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:47:32,307.307 INFO    ] time= 27/06/2026 16:47:32
[2026-06-27 16:47:32,322.322 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:47:32,324.324 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:47:32,390.390 INFO    ] No existing commands found in stream
[2026-06-27 16:47:37,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:47:37,403.403 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-27 16:47:40,720.720 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:47:40,722.722 INFO    ] Checking for system updates...
[2026-06-27 16:47:40,743.743 INFO    ] 200
[2026-06-27 16:47:40,744.744 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:47:40,777.777 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:47:40,778.778 INFO    ] No update needed
[2026-06-27 16:47:40,779.779 INFO    ] Checking for camera pi updates...
[2026-06-27 16:47:40,799.799 INFO    ] 200
[2026-06-27 16:47:40,800.800 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:47:40,824.824 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:47:40,864.864 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:47:40,866.866 INFO    ] No camera update needed
[2026-06-27 16:47:40,867.867 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:47:40,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:47:40,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:47:40,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:47:42,912.912 INFO    ] ================================================
[2026-06-27 16:47:42,928.928 INFO    ] Launching Daemon at Sat Jun 27 16:47:42 IST 2026
[2026-06-27 16:47:42,940.940 INFO    ] ================================================
[2026-06-27 16:47:43,291.291 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:47:43
[2026-06-27 16:47:43,603.603 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:47:43,734.734 INFO    ] Initializing speech engine...
[2026-06-27 16:47:43,742.742 INFO    ] 2026-06-27 16:47:43
[2026-06-27 16:47:43,956.956 INFO    ] 2026-06-27 16:47:43
[2026-06-27 16:47:43,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:47:44,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:47:44,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:47:44,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:47:44,385.385 INFO    ] time= 27/06/2026 16:47:44
[2026-06-27 16:47:44,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:47:44,413.413 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:47:44,506.506 INFO    ] No existing commands found in stream
[2026-06-27 16:47:49,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:47:49,518.518 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-27 16:47:50,484.484 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 16:47:50,486.486 INFO    ] Checking for system updates...
[2026-06-27 16:47:50,507.507 INFO    ] 200
[2026-06-27 16:47:50,508.508 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:47:50,541.541 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:47:50,542.542 INFO    ] No update needed
[2026-06-27 16:47:50,543.543 INFO    ] Checking for camera pi updates...
[2026-06-27 16:47:50,563.563 INFO    ] 200
[2026-06-27 16:47:50,564.564 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:47:50,588.588 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:47:50,628.628 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:47:50,629.629 INFO    ] No camera update needed
[2026-06-27 16:47:50,630.630 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:47:50,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:47:50,635.635 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:47:50,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:47:52,670.670 INFO    ] ================================================
[2026-06-27 16:47:52,680.680 INFO    ] Launching Daemon at Sat Jun 27 16:47:52 IST 2026
[2026-06-27 16:47:52,686.686 INFO    ] ================================================
[2026-06-27 16:47:53,059.059 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:47:53
[2026-06-27 16:47:53,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:47:53,518.518 INFO    ] Initializing speech engine...
[2026-06-27 16:47:53,522.522 INFO    ] 2026-06-27 16:47:53
[2026-06-27 16:47:53,741.741 INFO    ] 2026-06-27 16:47:53
[2026-06-27 16:47:53,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:47:53,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:47:53,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:47:54,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:47:54,174.174 INFO    ] time= 27/06/2026 16:47:54
[2026-06-27 16:47:54,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:47:54,190.190 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:47:54,280.280 INFO    ] No existing commands found in stream
[2026-06-27 16:47:59,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:47:59,289.289 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-27 16:48:02,041.041 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:48:02,043.043 INFO    ] Checking for system updates...
[2026-06-27 16:48:02,082.082 INFO    ] 200
[2026-06-27 16:48:02,084.084 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:48:02,130.130 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:48:02,132.132 INFO    ] No update needed
[2026-06-27 16:48:02,135.135 INFO    ] Checking for camera pi updates...
[2026-06-27 16:48:02,163.163 INFO    ] 200
[2026-06-27 16:48:02,165.165 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:48:02,192.192 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:48:02,226.226 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:48:02,227.227 INFO    ] No camera update needed
[2026-06-27 16:48:02,229.229 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:48:02,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:48:02,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:48:02,239.239 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:48:04,280.280 INFO    ] ================================================
[2026-06-27 16:48:04,296.296 INFO    ] Launching Daemon at Sat Jun 27 16:48:04 IST 2026
[2026-06-27 16:48:04,307.307 INFO    ] ================================================
[2026-06-27 16:48:04,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:48:04
[2026-06-27 16:48:04,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:48:05,113.113 INFO    ] Initializing speech engine...
[2026-06-27 16:48:05,124.124 INFO    ] 2026-06-27 16:48:05
[2026-06-27 16:48:05,326.326 INFO    ] 2026-06-27 16:48:05
[2026-06-27 16:48:05,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:48:05,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:48:05,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:48:05,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:48:05,769.769 INFO    ] time= 27/06/2026 16:48:05
[2026-06-27 16:48:05,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:48:05,776.776 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:48:05,843.843 INFO    ] No existing commands found in stream
[2026-06-27 16:48:10,857.857 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:48:10,860.860 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-27 16:48:12,750.750 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 16:48:12,751.751 INFO    ] Checking for system updates...
[2026-06-27 16:48:12,772.772 INFO    ] 200
[2026-06-27 16:48:12,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:48:12,807.807 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:48:12,808.808 INFO    ] No update needed
[2026-06-27 16:48:12,810.810 INFO    ] Checking for camera pi updates...
[2026-06-27 16:48:12,829.829 INFO    ] 200
[2026-06-27 16:48:12,830.830 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:48:12,854.854 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:48:12,897.897 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:48:12,899.899 INFO    ] No camera update needed
[2026-06-27 16:48:12,900.900 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:48:12,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:48:12,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:48:12,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:48:14,948.948 INFO    ] ================================================
[2026-06-27 16:48:14,964.964 INFO    ] Launching Daemon at Sat Jun 27 16:48:14 IST 2026
[2026-06-27 16:48:14,976.976 INFO    ] ================================================
[2026-06-27 16:48:15,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:48:15
[2026-06-27 16:48:15,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:48:15,823.823 INFO    ] Initializing speech engine...
[2026-06-27 16:48:15,829.829 INFO    ] 2026-06-27 16:48:15
[2026-06-27 16:48:16,038.038 INFO    ] 2026-06-27 16:48:16
[2026-06-27 16:48:16,070.070 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:48:16,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:48:16,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:48:16,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:48:16,462.462 INFO    ] time= 27/06/2026 16:48:16
[2026-06-27 16:48:16,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:48:16,490.490 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:48:16,556.556 INFO    ] No existing commands found in stream
[2026-06-27 16:48:21,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:48:21,570.570 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-27 16:48:22,533.533 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 16:48:22,535.535 INFO    ] Checking for system updates...
[2026-06-27 16:48:22,557.557 INFO    ] 200
[2026-06-27 16:48:22,559.559 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:48:22,592.592 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:48:22,594.594 INFO    ] No update needed
[2026-06-27 16:48:22,595.595 INFO    ] Checking for camera pi updates...
[2026-06-27 16:48:22,615.615 INFO    ] 200
[2026-06-27 16:48:22,617.617 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:48:22,640.640 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:48:22,689.689 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:48:22,690.690 INFO    ] No camera update needed
[2026-06-27 16:48:22,692.692 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:48:22,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:48:22,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:48:22,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:48:24,740.740 INFO    ] ================================================
[2026-06-27 16:48:24,756.756 INFO    ] Launching Daemon at Sat Jun 27 16:48:24 IST 2026
[2026-06-27 16:48:24,767.767 INFO    ] ================================================
[2026-06-27 16:48:25,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:48:25
[2026-06-27 16:48:25,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:48:25,584.584 INFO    ] Initializing speech engine...
[2026-06-27 16:48:25,589.589 INFO    ] 2026-06-27 16:48:25
[2026-06-27 16:48:25,794.794 INFO    ] 2026-06-27 16:48:25
[2026-06-27 16:48:25,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:48:26,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:48:26,033.033 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:48:26,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:48:26,216.216 INFO    ] time= 27/06/2026 16:48:26
[2026-06-27 16:48:26,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:48:26,244.244 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:48:26,336.336 INFO    ] No existing commands found in stream
[2026-06-27 16:48:31,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:48:31,348.348 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-27 16:48:32,351.351 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 16:48:32,353.353 INFO    ] Checking for system updates...
[2026-06-27 16:48:32,376.376 INFO    ] 200
[2026-06-27 16:48:32,378.378 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:48:32,413.413 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:48:32,415.415 INFO    ] No update needed
[2026-06-27 16:48:32,420.420 INFO    ] Checking for camera pi updates...
[2026-06-27 16:48:32,442.442 INFO    ] 200
[2026-06-27 16:48:32,444.444 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:48:32,475.475 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:48:32,502.502 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:48:32,506.506 INFO    ] No camera update needed
[2026-06-27 16:48:32,516.516 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:48:32,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:48:32,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:48:32,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:48:34,564.564 INFO    ] ================================================
[2026-06-27 16:48:34,580.580 INFO    ] Launching Daemon at Sat Jun 27 16:48:34 IST 2026
[2026-06-27 16:48:34,591.591 INFO    ] ================================================
[2026-06-27 16:48:34,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:48:34
[2026-06-27 16:48:35,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:48:35,378.378 INFO    ] Initializing speech engine...
[2026-06-27 16:48:35,388.388 INFO    ] 2026-06-27 16:48:35
[2026-06-27 16:48:35,593.593 INFO    ] 2026-06-27 16:48:35
[2026-06-27 16:48:35,622.622 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:48:35,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:48:35,816.816 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:48:36,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:48:36,027.027 INFO    ] time= 27/06/2026 16:48:36
[2026-06-27 16:48:36,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:48:36,046.046 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:48:36,118.118 INFO    ] No existing commands found in stream
[2026-06-27 16:48:41,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:48:41,130.130 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-27 16:48:42,670.670 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 16:48:42,671.671 INFO    ] Checking for system updates...
[2026-06-27 16:48:42,693.693 INFO    ] 200
[2026-06-27 16:48:42,694.694 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:48:42,724.724 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:48:42,726.726 INFO    ] No update needed
[2026-06-27 16:48:42,727.727 INFO    ] Checking for camera pi updates...
[2026-06-27 16:48:42,747.747 INFO    ] 200
[2026-06-27 16:48:42,748.748 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:48:42,773.773 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:48:42,828.828 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:48:42,830.830 INFO    ] No camera update needed
[2026-06-27 16:48:42,831.831 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:48:42,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:48:42,835.835 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:48:42,838.838 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:48:44,878.878 INFO    ] ================================================
[2026-06-27 16:48:44,894.894 INFO    ] Launching Daemon at Sat Jun 27 16:48:44 IST 2026
[2026-06-27 16:48:44,904.904 INFO    ] ================================================
[2026-06-27 16:48:45,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:48:45
[2026-06-27 16:48:45,560.560 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:48:45,705.705 INFO    ] Initializing speech engine...
[2026-06-27 16:48:45,711.711 INFO    ] 2026-06-27 16:48:45
[2026-06-27 16:48:45,913.913 INFO    ] 2026-06-27 16:48:45
[2026-06-27 16:48:45,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:48:46,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:48:46,134.134 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:48:46,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:48:46,351.351 INFO    ] time= 27/06/2026 16:48:46
[2026-06-27 16:48:46,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:48:46,358.358 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:48:46,426.426 INFO    ] No existing commands found in stream
[2026-06-27 16:48:51,445.445 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:48:51,448.448 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-27 16:48:54,668.668 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 16:48:54,669.669 INFO    ] Checking for system updates...
[2026-06-27 16:48:54,690.690 INFO    ] 200
[2026-06-27 16:48:54,691.691 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:48:54,724.724 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:48:54,726.726 INFO    ] No update needed
[2026-06-27 16:48:54,727.727 INFO    ] Checking for camera pi updates...
[2026-06-27 16:48:54,746.746 INFO    ] 200
[2026-06-27 16:48:54,748.748 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:48:54,773.773 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:48:54,802.802 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:48:54,803.803 INFO    ] No camera update needed
[2026-06-27 16:48:54,804.804 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:48:54,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:48:54,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:48:54,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:48:56,853.853 INFO    ] ================================================
[2026-06-27 16:48:56,868.868 INFO    ] Launching Daemon at Sat Jun 27 16:48:56 IST 2026
[2026-06-27 16:48:56,880.880 INFO    ] ================================================
[2026-06-27 16:48:57,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:48:57
[2026-06-27 16:48:57,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:48:57,752.752 INFO    ] Initializing speech engine...
[2026-06-27 16:48:57,756.756 INFO    ] 2026-06-27 16:48:57
[2026-06-27 16:48:57,961.961 INFO    ] 2026-06-27 16:48:57
[2026-06-27 16:48:57,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:48:58,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:48:58,188.188 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:48:58,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:48:58,407.407 INFO    ] time= 27/06/2026 16:48:58
[2026-06-27 16:48:58,409.409 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:48:58,411.411 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:48:58,478.478 INFO    ] No existing commands found in stream
[2026-06-27 16:49:03,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:49:03,488.488 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-27 16:49:05,956.956 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:49:05,957.957 INFO    ] Checking for system updates...
[2026-06-27 16:49:05,987.987 INFO    ] 200
[2026-06-27 16:49:05,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:49:06,022.022 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:49:06,024.024 INFO    ] No update needed
[2026-06-27 16:49:06,025.025 INFO    ] Checking for camera pi updates...
[2026-06-27 16:49:06,047.047 INFO    ] 200
[2026-06-27 16:49:06,048.048 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:49:06,076.076 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:49:06,120.120 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:49:06,121.121 INFO    ] No camera update needed
[2026-06-27 16:49:06,124.124 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:49:06,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:49:06,130.130 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:49:06,133.133 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:49:08,172.172 INFO    ] ================================================
[2026-06-27 16:49:08,187.187 INFO    ] Launching Daemon at Sat Jun 27 16:49:08 IST 2026
[2026-06-27 16:49:08,198.198 INFO    ] ================================================
[2026-06-27 16:49:08,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:49:08
[2026-06-27 16:49:08,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:49:08,993.993 INFO    ] Initializing speech engine...
[2026-06-27 16:49:08,999.999 INFO    ] 2026-06-27 16:49:08
[2026-06-27 16:49:09,203.203 INFO    ] 2026-06-27 16:49:09
[2026-06-27 16:49:09,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:49:09,417.417 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:49:09,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:49:09,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:49:09,646.646 INFO    ] time= 27/06/2026 16:49:09
[2026-06-27 16:49:09,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:49:09,653.653 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:49:09,721.721 INFO    ] No existing commands found in stream
[2026-06-27 16:49:14,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:49:14,738.738 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-27 16:49:17,433.433 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:49:17,435.435 INFO    ] Checking for system updates...
[2026-06-27 16:49:17,457.457 INFO    ] 200
[2026-06-27 16:49:17,458.458 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:49:17,489.489 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:49:17,490.490 INFO    ] No update needed
[2026-06-27 16:49:17,492.492 INFO    ] Checking for camera pi updates...
[2026-06-27 16:49:17,511.511 INFO    ] 200
[2026-06-27 16:49:17,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:49:17,538.538 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:49:17,589.589 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:49:17,590.590 INFO    ] No camera update needed
[2026-06-27 16:49:17,592.592 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:49:17,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:49:17,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:49:17,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:49:19,640.640 INFO    ] ================================================
[2026-06-27 16:49:19,656.656 INFO    ] Launching Daemon at Sat Jun 27 16:49:19 IST 2026
[2026-06-27 16:49:19,667.667 INFO    ] ================================================
[2026-06-27 16:49:20,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:49:19
[2026-06-27 16:49:20,314.314 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:49:20,446.446 INFO    ] Initializing speech engine...
[2026-06-27 16:49:20,458.458 INFO    ] 2026-06-27 16:49:20
[2026-06-27 16:49:20,665.665 INFO    ] 2026-06-27 16:49:20
[2026-06-27 16:49:20,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:49:20,955.955 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:49:21,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:49:21,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:49:21,235.235 INFO    ] time= 27/06/2026 16:49:21
[2026-06-27 16:49:21,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:49:21,240.240 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:49:21,319.319 INFO    ] No existing commands found in stream
[2026-06-27 16:49:26,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:49:26,331.331 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-27 16:49:28,495.495 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:49:28,496.496 INFO    ] Checking for system updates...
[2026-06-27 16:49:28,517.517 INFO    ] 200
[2026-06-27 16:49:28,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:49:28,549.549 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:49:28,551.551 INFO    ] No update needed
[2026-06-27 16:49:28,553.553 INFO    ] Checking for camera pi updates...
[2026-06-27 16:49:28,574.574 INFO    ] 200
[2026-06-27 16:49:28,575.575 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:49:28,598.598 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:49:28,640.640 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:49:28,642.642 INFO    ] No camera update needed
[2026-06-27 16:49:28,643.643 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:49:28,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:49:28,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:49:28,651.651 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:49:30,691.691 INFO    ] ================================================
[2026-06-27 16:49:30,707.707 INFO    ] Launching Daemon at Sat Jun 27 16:49:30 IST 2026
[2026-06-27 16:49:30,718.718 INFO    ] ================================================
[2026-06-27 16:49:31,061.061 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:49:31
[2026-06-27 16:49:31,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:49:31,511.511 INFO    ] Initializing speech engine...
[2026-06-27 16:49:31,521.521 INFO    ] 2026-06-27 16:49:31
[2026-06-27 16:49:31,726.726 INFO    ] 2026-06-27 16:49:31
[2026-06-27 16:49:31,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:49:31,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:49:31,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:49:32,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:49:32,156.156 INFO    ] time= 27/06/2026 16:49:32
[2026-06-27 16:49:32,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:49:32,188.188 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:49:32,258.258 INFO    ] No existing commands found in stream
[2026-06-27 16:49:37,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:49:37,276.276 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-27 16:49:41,180.180 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 16:49:41,181.181 INFO    ] Checking for system updates...
[2026-06-27 16:49:41,202.202 INFO    ] 200
[2026-06-27 16:49:41,204.204 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:49:41,238.238 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:49:41,239.239 INFO    ] No update needed
[2026-06-27 16:49:41,241.241 INFO    ] Checking for camera pi updates...
[2026-06-27 16:49:41,265.265 INFO    ] 200
[2026-06-27 16:49:41,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:49:41,295.295 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:49:41,337.337 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:49:41,339.339 INFO    ] No camera update needed
[2026-06-27 16:49:41,340.340 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:49:41,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:49:41,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:49:41,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:49:43,387.387 INFO    ] ================================================
[2026-06-27 16:49:43,403.403 INFO    ] Launching Daemon at Sat Jun 27 16:49:43 IST 2026
[2026-06-27 16:49:43,415.415 INFO    ] ================================================
[2026-06-27 16:49:43,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:49:43
[2026-06-27 16:49:44,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:49:44,238.238 INFO    ] Initializing speech engine...
[2026-06-27 16:49:44,246.246 INFO    ] 2026-06-27 16:49:44
[2026-06-27 16:49:44,460.460 INFO    ] 2026-06-27 16:49:44
[2026-06-27 16:49:44,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:49:44,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:49:44,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:49:44,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:49:44,884.884 INFO    ] time= 27/06/2026 16:49:44
[2026-06-27 16:49:44,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:49:44,912.912 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:49:44,979.979 INFO    ] No existing commands found in stream
[2026-06-27 16:49:50,011.011 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:49:50,015.015 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-27 16:49:51,500.500 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:49:51,502.502 INFO    ] Checking for system updates...
[2026-06-27 16:49:51,523.523 INFO    ] 200
[2026-06-27 16:49:51,524.524 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:49:51,555.555 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:49:51,556.556 INFO    ] No update needed
[2026-06-27 16:49:51,558.558 INFO    ] Checking for camera pi updates...
[2026-06-27 16:49:51,579.579 INFO    ] 200
[2026-06-27 16:49:51,580.580 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:49:51,606.606 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:49:51,651.651 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:49:51,653.653 INFO    ] No camera update needed
[2026-06-27 16:49:51,654.654 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:49:51,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:49:51,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:49:51,662.662 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:49:53,700.700 INFO    ] ================================================
[2026-06-27 16:49:53,716.716 INFO    ] Launching Daemon at Sat Jun 27 16:49:53 IST 2026
[2026-06-27 16:49:53,728.728 INFO    ] ================================================
[2026-06-27 16:49:54,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:49:54
[2026-06-27 16:49:54,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:49:54,549.549 INFO    ] Initializing speech engine...
[2026-06-27 16:49:54,552.552 INFO    ] 2026-06-27 16:49:54
[2026-06-27 16:49:54,771.771 INFO    ] 2026-06-27 16:49:54
[2026-06-27 16:49:54,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:49:54,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:49:55,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:49:55,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:49:55,188.188 INFO    ] time= 27/06/2026 16:49:55
[2026-06-27 16:49:55,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:49:55,224.224 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:49:55,318.318 INFO    ] No existing commands found in stream
[2026-06-27 16:50:00,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:50:00,336.336 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-27 16:50:07,725.725 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 16:50:07,726.726 INFO    ] Checking for system updates...
[2026-06-27 16:50:07,748.748 INFO    ] 200
[2026-06-27 16:50:07,749.749 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:50:07,782.782 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:50:07,783.783 INFO    ] No update needed
[2026-06-27 16:50:07,784.784 INFO    ] Checking for camera pi updates...
[2026-06-27 16:50:07,804.804 INFO    ] 200
[2026-06-27 16:50:07,805.805 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:50:07,829.829 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:50:07,966.966 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:50:07,968.968 INFO    ] No camera update needed
[2026-06-27 16:50:07,969.969 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:50:07,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:50:07,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:50:07,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:50:10,014.014 INFO    ] ================================================
[2026-06-27 16:50:10,030.030 INFO    ] Launching Daemon at Sat Jun 27 16:50:10 IST 2026
[2026-06-27 16:50:10,041.041 INFO    ] ================================================
[2026-06-27 16:50:10,406.406 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:50:10
[2026-06-27 16:50:10,724.724 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:50:10,868.868 INFO    ] Initializing speech engine...
[2026-06-27 16:50:10,873.873 INFO    ] 2026-06-27 16:50:10
[2026-06-27 16:50:11,079.079 INFO    ] 2026-06-27 16:50:11
[2026-06-27 16:50:11,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:50:11,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:50:11,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:50:11,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:50:11,499.499 INFO    ] time= 27/06/2026 16:50:11
[2026-06-27 16:50:11,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:50:11,526.526 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:50:11,594.594 INFO    ] No existing commands found in stream
[2026-06-27 16:50:16,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:50:16,610.610 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-27 16:50:17,379.379 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 16:50:17,380.380 INFO    ] Checking for system updates...
[2026-06-27 16:50:17,402.402 INFO    ] 200
[2026-06-27 16:50:17,404.404 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:50:17,434.434 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:50:17,435.435 INFO    ] No update needed
[2026-06-27 16:50:17,437.437 INFO    ] Checking for camera pi updates...
[2026-06-27 16:50:17,457.457 INFO    ] 200
[2026-06-27 16:50:17,458.458 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:50:17,483.483 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:50:17,527.527 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:50:17,528.528 INFO    ] No camera update needed
[2026-06-27 16:50:17,530.530 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:50:17,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:50:17,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:50:17,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:50:19,575.575 INFO    ] ================================================
[2026-06-27 16:50:19,591.591 INFO    ] Launching Daemon at Sat Jun 27 16:50:19 IST 2026
[2026-06-27 16:50:19,602.602 INFO    ] ================================================
[2026-06-27 16:50:19,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:50:19
[2026-06-27 16:50:20,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:50:20,396.396 INFO    ] Initializing speech engine...
[2026-06-27 16:50:20,400.400 INFO    ] 2026-06-27 16:50:20
[2026-06-27 16:50:20,606.606 INFO    ] 2026-06-27 16:50:20
[2026-06-27 16:50:20,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:50:20,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:50:20,829.829 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:50:20,948.948 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:50:20,999.999 INFO    ] time= 27/06/2026 16:50:20
[2026-06-27 16:50:21,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:50:21,048.048 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:50:21,142.142 INFO    ] No existing commands found in stream
[2026-06-27 16:50:26,162.162 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:50:26,165.165 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-27 16:50:27,843.843 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 16:50:27,845.845 INFO    ] Checking for system updates...
[2026-06-27 16:50:27,865.865 INFO    ] 200
[2026-06-27 16:50:27,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:50:27,899.899 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:50:27,900.900 INFO    ] No update needed
[2026-06-27 16:50:27,902.902 INFO    ] Checking for camera pi updates...
[2026-06-27 16:50:27,922.922 INFO    ] 200
[2026-06-27 16:50:27,923.923 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:50:27,948.948 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:50:27,993.993 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:50:27,995.995 INFO    ] No camera update needed
[2026-06-27 16:50:27,999.999 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:50:28,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:50:28,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:50:28,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:50:30,046.046 INFO    ] ================================================
[2026-06-27 16:50:30,062.062 INFO    ] Launching Daemon at Sat Jun 27 16:50:30 IST 2026
[2026-06-27 16:50:30,073.073 INFO    ] ================================================
[2026-06-27 16:50:30,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:50:30
[2026-06-27 16:50:30,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:50:30,882.882 INFO    ] Initializing speech engine...
[2026-06-27 16:50:30,888.888 INFO    ] 2026-06-27 16:50:30
[2026-06-27 16:50:31,089.089 INFO    ] 2026-06-27 16:50:31
[2026-06-27 16:50:31,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:50:31,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:50:31,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:50:31,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:50:31,533.533 INFO    ] time= 27/06/2026 16:50:31
[2026-06-27 16:50:31,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:50:31,561.561 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:50:31,630.630 INFO    ] No existing commands found in stream
[2026-06-27 16:50:36,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:50:36,647.647 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-27 16:50:40,680.680 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 16:50:40,682.682 INFO    ] Checking for system updates...
[2026-06-27 16:50:40,704.704 INFO    ] 200
[2026-06-27 16:50:40,705.705 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:50:40,735.735 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:50:40,737.737 INFO    ] No update needed
[2026-06-27 16:50:40,738.738 INFO    ] Checking for camera pi updates...
[2026-06-27 16:50:40,761.761 INFO    ] 200
[2026-06-27 16:50:40,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:50:40,787.787 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:50:40,834.834 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:50:40,836.836 INFO    ] No camera update needed
[2026-06-27 16:50:40,837.837 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:50:40,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:50:40,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:50:40,844.844 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:50:42,884.884 INFO    ] ================================================
[2026-06-27 16:50:42,899.899 INFO    ] Launching Daemon at Sat Jun 27 16:50:42 IST 2026
[2026-06-27 16:50:42,911.911 INFO    ] ================================================
[2026-06-27 16:50:43,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:50:43
[2026-06-27 16:50:43,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:50:43,801.801 INFO    ] Initializing speech engine...
[2026-06-27 16:50:43,807.807 INFO    ] 2026-06-27 16:50:43
[2026-06-27 16:50:44,013.013 INFO    ] 2026-06-27 16:50:43
[2026-06-27 16:50:44,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:50:44,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:50:44,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:50:44,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:50:44,457.457 INFO    ] time= 27/06/2026 16:50:44
[2026-06-27 16:50:44,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:50:44,465.465 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:50:44,555.555 INFO    ] No existing commands found in stream
[2026-06-27 16:50:49,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:50:49,578.578 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-27 16:50:53,240.240 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:50:53,241.241 INFO    ] Checking for system updates...
[2026-06-27 16:50:53,262.262 INFO    ] 200
[2026-06-27 16:50:53,264.264 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:50:53,297.297 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:50:53,298.298 INFO    ] No update needed
[2026-06-27 16:50:53,300.300 INFO    ] Checking for camera pi updates...
[2026-06-27 16:50:53,319.319 INFO    ] 200
[2026-06-27 16:50:53,320.320 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:50:53,345.345 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:50:53,393.393 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:50:53,395.395 INFO    ] No camera update needed
[2026-06-27 16:50:53,396.396 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:50:53,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:50:53,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:50:53,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:50:55,442.442 INFO    ] ================================================
[2026-06-27 16:50:55,458.458 INFO    ] Launching Daemon at Sat Jun 27 16:50:55 IST 2026
[2026-06-27 16:50:55,470.470 INFO    ] ================================================
[2026-06-27 16:50:55,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:50:55
[2026-06-27 16:50:56,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:50:56,253.253 INFO    ] Initializing speech engine...
[2026-06-27 16:50:56,265.265 INFO    ] 2026-06-27 16:50:56
[2026-06-27 16:50:56,476.476 INFO    ] 2026-06-27 16:50:56
[2026-06-27 16:50:56,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:50:56,628.628 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:50:56,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:50:56,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:50:56,924.924 INFO    ] time= 27/06/2026 16:50:56
[2026-06-27 16:50:56,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:50:56,931.931 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:50:56,999.999 INFO    ] No existing commands found in stream
[2026-06-27 16:51:02,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:51:02,024.024 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-27 16:51:06,399.399 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 16:51:06,401.401 INFO    ] Checking for system updates...
[2026-06-27 16:51:06,422.422 INFO    ] 200
[2026-06-27 16:51:06,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:51:06,454.454 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:51:06,455.455 INFO    ] No update needed
[2026-06-27 16:51:06,457.457 INFO    ] Checking for camera pi updates...
[2026-06-27 16:51:06,477.477 INFO    ] 200
[2026-06-27 16:51:06,478.478 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:51:06,504.504 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:51:06,547.547 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:51:06,548.548 INFO    ] No camera update needed
[2026-06-27 16:51:06,549.549 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:51:06,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:51:06,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:51:06,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:51:08,596.596 INFO    ] ================================================
[2026-06-27 16:51:08,612.612 INFO    ] Launching Daemon at Sat Jun 27 16:51:08 IST 2026
[2026-06-27 16:51:08,622.622 INFO    ] ================================================
[2026-06-27 16:51:08,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:51:08
[2026-06-27 16:51:09,267.267 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:51:09,402.402 INFO    ] Initializing speech engine...
[2026-06-27 16:51:09,407.407 INFO    ] 2026-06-27 16:51:09
[2026-06-27 16:51:09,597.597 INFO    ] 2026-06-27 16:51:09
[2026-06-27 16:51:09,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:51:09,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:51:09,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:51:10,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:51:10,079.079 INFO    ] time= 27/06/2026 16:51:10
[2026-06-27 16:51:10,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:51:10,119.119 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:51:10,196.196 INFO    ] No existing commands found in stream
[2026-06-27 16:51:15,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:51:15,209.209 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-27 16:51:16,180.180 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 16:51:16,181.181 INFO    ] Checking for system updates...
[2026-06-27 16:51:16,203.203 INFO    ] 200
[2026-06-27 16:51:16,205.205 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:51:16,238.238 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:51:16,239.239 INFO    ] No update needed
[2026-06-27 16:51:16,241.241 INFO    ] Checking for camera pi updates...
[2026-06-27 16:51:16,260.260 INFO    ] 200
[2026-06-27 16:51:16,261.261 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:51:16,286.286 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:51:16,336.336 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:51:16,337.337 INFO    ] No camera update needed
[2026-06-27 16:51:16,338.338 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:51:16,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:51:16,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:51:16,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:51:18,385.385 INFO    ] ================================================
[2026-06-27 16:51:18,400.400 INFO    ] Launching Daemon at Sat Jun 27 16:51:18 IST 2026
[2026-06-27 16:51:18,411.411 INFO    ] ================================================
[2026-06-27 16:51:18,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:51:18
[2026-06-27 16:51:19,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:51:19,213.213 INFO    ] Initializing speech engine...
[2026-06-27 16:51:19,218.218 INFO    ] 2026-06-27 16:51:19
[2026-06-27 16:51:19,423.423 INFO    ] 2026-06-27 16:51:19
[2026-06-27 16:51:19,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:51:19,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:51:19,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:51:19,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:51:19,862.862 INFO    ] time= 27/06/2026 16:51:19
[2026-06-27 16:51:19,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:51:19,869.869 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:51:19,959.959 INFO    ] No existing commands found in stream
[2026-06-27 16:51:24,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:51:24,971.971 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-27 16:51:27,699.699 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:51:27,701.701 INFO    ] Checking for system updates...
[2026-06-27 16:51:27,723.723 INFO    ] 200
[2026-06-27 16:51:27,724.724 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:51:27,758.758 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:51:27,759.759 INFO    ] No update needed
[2026-06-27 16:51:27,761.761 INFO    ] Checking for camera pi updates...
[2026-06-27 16:51:27,780.780 INFO    ] 200
[2026-06-27 16:51:27,781.781 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:51:27,805.805 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:51:27,851.851 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:51:27,853.853 INFO    ] No camera update needed
[2026-06-27 16:51:27,854.854 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:51:27,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:51:27,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:51:27,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:51:29,901.901 INFO    ] ================================================
[2026-06-27 16:51:29,917.917 INFO    ] Launching Daemon at Sat Jun 27 16:51:29 IST 2026
[2026-06-27 16:51:29,928.928 INFO    ] ================================================
[2026-06-27 16:51:30,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:51:30
[2026-06-27 16:51:30,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:51:30,726.726 INFO    ] Initializing speech engine...
[2026-06-27 16:51:30,731.731 INFO    ] 2026-06-27 16:51:30
[2026-06-27 16:51:30,937.937 INFO    ] 2026-06-27 16:51:30
[2026-06-27 16:51:30,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:51:31,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:51:31,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:51:31,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:51:31,362.362 INFO    ] time= 27/06/2026 16:51:31
[2026-06-27 16:51:31,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:51:31,391.391 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:51:31,458.458 INFO    ] No existing commands found in stream
[2026-06-27 16:51:36,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:51:36,476.476 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-27 16:51:38,336.336 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:51:38,337.337 INFO    ] Checking for system updates...
[2026-06-27 16:51:38,357.357 INFO    ] 200
[2026-06-27 16:51:38,359.359 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:51:38,391.391 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:51:38,393.393 INFO    ] No update needed
[2026-06-27 16:51:38,394.394 INFO    ] Checking for camera pi updates...
[2026-06-27 16:51:38,415.415 INFO    ] 200
[2026-06-27 16:51:38,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:51:38,441.441 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:51:38,493.493 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:51:38,494.494 INFO    ] No camera update needed
[2026-06-27 16:51:38,496.496 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:51:38,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:51:38,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:51:38,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:51:40,542.542 INFO    ] ================================================
[2026-06-27 16:51:40,557.557 INFO    ] Launching Daemon at Sat Jun 27 16:51:40 IST 2026
[2026-06-27 16:51:40,568.568 INFO    ] ================================================
[2026-06-27 16:51:40,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:51:40
[2026-06-27 16:51:41,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:51:41,354.354 INFO    ] Initializing speech engine...
[2026-06-27 16:51:41,359.359 INFO    ] 2026-06-27 16:51:41
[2026-06-27 16:51:41,562.562 INFO    ] 2026-06-27 16:51:41
[2026-06-27 16:51:41,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:51:41,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:51:41,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:51:41,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:51:42,004.004 INFO    ] time= 27/06/2026 16:51:41
[2026-06-27 16:51:42,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:51:42,011.011 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:51:42,078.078 INFO    ] No existing commands found in stream
[2026-06-27 16:51:47,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:51:47,089.089 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-27 16:51:48,734.734 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:51:48,736.736 INFO    ] Checking for system updates...
[2026-06-27 16:51:48,759.759 INFO    ] 200
[2026-06-27 16:51:48,760.760 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:51:48,794.794 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:51:48,795.795 INFO    ] No update needed
[2026-06-27 16:51:48,796.796 INFO    ] Checking for camera pi updates...
[2026-06-27 16:51:48,818.818 INFO    ] 200
[2026-06-27 16:51:48,819.819 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:51:48,846.846 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:51:48,887.887 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:51:48,888.888 INFO    ] No camera update needed
[2026-06-27 16:51:48,889.889 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:51:48,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:51:48,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:51:48,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:51:50,939.939 INFO    ] ================================================
[2026-06-27 16:51:50,955.955 INFO    ] Launching Daemon at Sat Jun 27 16:51:50 IST 2026
[2026-06-27 16:51:50,966.966 INFO    ] ================================================
[2026-06-27 16:51:51,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:51:51
[2026-06-27 16:51:51,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:51:51,814.814 INFO    ] Initializing speech engine...
[2026-06-27 16:51:51,819.819 INFO    ] 2026-06-27 16:51:51
[2026-06-27 16:51:52,028.028 INFO    ] 2026-06-27 16:51:52
[2026-06-27 16:51:52,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:51:52,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:51:52,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:51:52,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:51:52,560.560 INFO    ] time= 27/06/2026 16:51:52
[2026-06-27 16:51:52,561.561 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:51:52,588.588 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:51:52,709.709 INFO    ] No existing commands found in stream
[2026-06-27 16:51:57,718.718 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:51:57,721.721 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-27 16:52:01,690.690 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 16:52:01,691.691 INFO    ] Checking for system updates...
[2026-06-27 16:52:01,713.713 INFO    ] 200
[2026-06-27 16:52:01,715.715 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:52:01,745.745 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:52:01,747.747 INFO    ] No update needed
[2026-06-27 16:52:01,748.748 INFO    ] Checking for camera pi updates...
[2026-06-27 16:52:01,767.767 INFO    ] 200
[2026-06-27 16:52:01,769.769 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:52:01,795.795 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:52:01,835.835 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:52:01,838.838 INFO    ] No camera update needed
[2026-06-27 16:52:01,841.841 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:52:01,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:52:01,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:52:01,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:52:03,906.906 INFO    ] ================================================
[2026-06-27 16:52:03,921.921 INFO    ] Launching Daemon at Sat Jun 27 16:52:03 IST 2026
[2026-06-27 16:52:03,933.933 INFO    ] ================================================
[2026-06-27 16:52:04,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:52:04
[2026-06-27 16:52:04,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:52:04,748.748 INFO    ] Initializing speech engine...
[2026-06-27 16:52:04,759.759 INFO    ] 2026-06-27 16:52:04
[2026-06-27 16:52:04,964.964 INFO    ] 2026-06-27 16:52:04
[2026-06-27 16:52:04,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:52:05,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:52:05,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:52:05,312.312 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:52:05,359.359 INFO    ] time= 27/06/2026 16:52:05
[2026-06-27 16:52:05,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:52:05,414.414 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:52:05,481.481 INFO    ] No existing commands found in stream
[2026-06-27 16:52:10,490.490 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:52:10,493.493 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-27 16:52:13,829.829 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:52:13,831.831 INFO    ] Checking for system updates...
[2026-06-27 16:52:13,853.853 INFO    ] 200
[2026-06-27 16:52:13,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:52:13,888.888 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:52:13,889.889 INFO    ] No update needed
[2026-06-27 16:52:13,890.890 INFO    ] Checking for camera pi updates...
[2026-06-27 16:52:13,911.911 INFO    ] 200
[2026-06-27 16:52:13,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:52:13,936.936 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:52:14,076.076 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:52:14,077.077 INFO    ] No camera update needed
[2026-06-27 16:52:14,078.078 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:52:14,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:52:14,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:52:14,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:52:16,126.126 INFO    ] ================================================
[2026-06-27 16:52:16,141.141 INFO    ] Launching Daemon at Sat Jun 27 16:52:16 IST 2026
[2026-06-27 16:52:16,152.152 INFO    ] ================================================
[2026-06-27 16:52:16,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:52:16
[2026-06-27 16:52:16,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:52:16,956.956 INFO    ] Initializing speech engine...
[2026-06-27 16:52:16,961.961 INFO    ] 2026-06-27 16:52:16
[2026-06-27 16:52:17,177.177 INFO    ] 2026-06-27 16:52:17
[2026-06-27 16:52:17,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:52:17,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:52:17,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:52:17,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:52:17,620.620 INFO    ] time= 27/06/2026 16:52:17
[2026-06-27 16:52:17,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:52:17,624.624 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:52:17,715.715 INFO    ] No existing commands found in stream
[2026-06-27 16:52:22,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:52:22,732.732 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-27 16:52:23,765.765 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:52:23,766.766 INFO    ] Checking for system updates...
[2026-06-27 16:52:23,788.788 INFO    ] 200
[2026-06-27 16:52:23,790.790 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:52:23,821.821 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:52:23,822.822 INFO    ] No update needed
[2026-06-27 16:52:23,823.823 INFO    ] Checking for camera pi updates...
[2026-06-27 16:52:23,843.843 INFO    ] 200
[2026-06-27 16:52:23,844.844 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:52:23,870.870 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:52:23,911.911 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:52:23,913.913 INFO    ] No camera update needed
[2026-06-27 16:52:23,914.914 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:52:23,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:52:23,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:52:23,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:52:25,963.963 INFO    ] ================================================
[2026-06-27 16:52:25,978.978 INFO    ] Launching Daemon at Sat Jun 27 16:52:25 IST 2026
[2026-06-27 16:52:25,989.989 INFO    ] ================================================
[2026-06-27 16:52:26,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:52:26
[2026-06-27 16:52:26,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:52:26,860.860 INFO    ] Initializing speech engine...
[2026-06-27 16:52:26,866.866 INFO    ] 2026-06-27 16:52:26
[2026-06-27 16:52:27,073.073 INFO    ] 2026-06-27 16:52:27
[2026-06-27 16:52:27,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:52:27,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:52:27,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:52:27,452.452 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:52:27,494.494 INFO    ] time= 27/06/2026 16:52:27
[2026-06-27 16:52:27,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:52:27,561.561 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:52:27,638.638 INFO    ] No existing commands found in stream
[2026-06-27 16:52:32,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:52:32,673.673 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-27 16:52:36,171.171 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 16:52:36,172.172 INFO    ] Checking for system updates...
[2026-06-27 16:52:36,196.196 INFO    ] 200
[2026-06-27 16:52:36,197.197 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:52:36,231.231 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:52:36,233.233 INFO    ] No update needed
[2026-06-27 16:52:36,234.234 INFO    ] Checking for camera pi updates...
[2026-06-27 16:52:36,255.255 INFO    ] 200
[2026-06-27 16:52:36,256.256 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:52:36,281.281 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:52:36,337.337 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:52:36,338.338 INFO    ] No camera update needed
[2026-06-27 16:52:36,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:52:36,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:52:36,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:52:36,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:52:38,385.385 INFO    ] ================================================
[2026-06-27 16:52:38,400.400 INFO    ] Launching Daemon at Sat Jun 27 16:52:38 IST 2026
[2026-06-27 16:52:38,411.411 INFO    ] ================================================
[2026-06-27 16:52:38,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:52:38
[2026-06-27 16:52:39,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:52:39,202.202 INFO    ] Initializing speech engine...
[2026-06-27 16:52:39,207.207 INFO    ] 2026-06-27 16:52:39
[2026-06-27 16:52:39,411.411 INFO    ] 2026-06-27 16:52:39
[2026-06-27 16:52:39,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:52:39,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:52:39,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:52:39,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:52:39,825.825 INFO    ] time= 27/06/2026 16:52:39
[2026-06-27 16:52:39,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:52:39,859.859 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:52:39,930.930 INFO    ] No existing commands found in stream
[2026-06-27 16:52:44,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:52:44,957.957 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-27 16:52:47,272.272 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 16:52:47,274.274 INFO    ] Checking for system updates...
[2026-06-27 16:52:47,294.294 INFO    ] 200
[2026-06-27 16:52:47,296.296 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:52:47,329.329 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:52:47,330.330 INFO    ] No update needed
[2026-06-27 16:52:47,331.331 INFO    ] Checking for camera pi updates...
[2026-06-27 16:52:47,351.351 INFO    ] 200
[2026-06-27 16:52:47,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:52:47,378.378 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:52:47,422.422 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:52:47,423.423 INFO    ] No camera update needed
[2026-06-27 16:52:47,425.425 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:52:47,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:52:47,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:52:47,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:52:49,472.472 INFO    ] ================================================
[2026-06-27 16:52:49,488.488 INFO    ] Launching Daemon at Sat Jun 27 16:52:49 IST 2026
[2026-06-27 16:52:49,499.499 INFO    ] ================================================
[2026-06-27 16:52:49,836.836 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:52:49
[2026-06-27 16:52:50,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:52:50,281.281 INFO    ] Initializing speech engine...
[2026-06-27 16:52:50,294.294 INFO    ] 2026-06-27 16:52:50
[2026-06-27 16:52:50,499.499 INFO    ] 2026-06-27 16:52:50
[2026-06-27 16:52:50,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:52:50,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:52:50,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:52:50,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:52:50,937.937 INFO    ] time= 27/06/2026 16:52:50
[2026-06-27 16:52:50,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:52:50,945.945 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:52:51,035.035 INFO    ] No existing commands found in stream
[2026-06-27 16:52:56,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:52:56,062.062 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-27 16:52:57,860.860 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:52:57,861.861 INFO    ] Checking for system updates...
[2026-06-27 16:52:57,883.883 INFO    ] 200
[2026-06-27 16:52:57,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:52:57,915.915 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:52:57,916.916 INFO    ] No update needed
[2026-06-27 16:52:57,918.918 INFO    ] Checking for camera pi updates...
[2026-06-27 16:52:57,937.937 INFO    ] 200
[2026-06-27 16:52:57,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:52:57,964.964 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:52:58,009.009 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:52:58,010.010 INFO    ] No camera update needed
[2026-06-27 16:52:58,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:52:58,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:52:58,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:52:58,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:53:00,057.057 INFO    ] ================================================
[2026-06-27 16:53:00,072.072 INFO    ] Launching Daemon at Sat Jun 27 16:53:00 IST 2026
[2026-06-27 16:53:00,083.083 INFO    ] ================================================
[2026-06-27 16:53:00,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:53:00
[2026-06-27 16:53:00,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:53:00,925.925 INFO    ] Initializing speech engine...
[2026-06-27 16:53:00,931.931 INFO    ] 2026-06-27 16:53:00
[2026-06-27 16:53:01,139.139 INFO    ] 2026-06-27 16:53:01
[2026-06-27 16:53:01,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:53:01,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:53:01,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:53:01,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:53:01,700.700 INFO    ] time= 27/06/2026 16:53:01
[2026-06-27 16:53:01,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:53:01,706.706 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:53:01,774.774 INFO    ] No existing commands found in stream
[2026-06-27 16:53:06,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:53:06,788.788 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-27 16:53:08,274.274 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 16:53:08,276.276 INFO    ] Checking for system updates...
[2026-06-27 16:53:08,298.298 INFO    ] 200
[2026-06-27 16:53:08,300.300 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:53:08,333.333 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:53:08,335.335 INFO    ] No update needed
[2026-06-27 16:53:08,336.336 INFO    ] Checking for camera pi updates...
[2026-06-27 16:53:08,357.357 INFO    ] 200
[2026-06-27 16:53:08,359.359 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:53:08,384.384 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:53:08,428.428 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:53:08,430.430 INFO    ] No camera update needed
[2026-06-27 16:53:08,431.431 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:53:08,433.433 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:53:08,436.436 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:53:08,439.439 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:53:10,479.479 INFO    ] ================================================
[2026-06-27 16:53:10,494.494 INFO    ] Launching Daemon at Sat Jun 27 16:53:10 IST 2026
[2026-06-27 16:53:10,505.505 INFO    ] ================================================
[2026-06-27 16:53:10,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:53:10
[2026-06-27 16:53:11,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:53:11,387.387 INFO    ] Initializing speech engine...
[2026-06-27 16:53:11,394.394 INFO    ] 2026-06-27 16:53:11
[2026-06-27 16:53:11,602.602 INFO    ] 2026-06-27 16:53:11
[2026-06-27 16:53:11,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:53:11,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:53:11,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:53:12,004.004 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:53:12,042.042 INFO    ] time= 27/06/2026 16:53:12
[2026-06-27 16:53:12,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:53:12,050.050 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:53:12,118.118 INFO    ] No existing commands found in stream
[2026-06-27 16:53:17,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:53:17,146.146 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-27 16:53:21,453.453 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:53:21,454.454 INFO    ] Checking for system updates...
[2026-06-27 16:53:21,477.477 INFO    ] 200
[2026-06-27 16:53:21,478.478 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:53:21,511.511 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:53:21,513.513 INFO    ] No update needed
[2026-06-27 16:53:21,515.515 INFO    ] Checking for camera pi updates...
[2026-06-27 16:53:21,535.535 INFO    ] 200
[2026-06-27 16:53:21,537.537 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:53:21,562.562 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:53:21,607.607 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:53:21,609.609 INFO    ] No camera update needed
[2026-06-27 16:53:21,610.610 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:53:21,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:53:21,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:53:21,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:53:23,657.657 INFO    ] ================================================
[2026-06-27 16:53:23,673.673 INFO    ] Launching Daemon at Sat Jun 27 16:53:23 IST 2026
[2026-06-27 16:53:23,685.685 INFO    ] ================================================
[2026-06-27 16:53:24,054.054 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:53:24
[2026-06-27 16:53:24,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:53:24,552.552 INFO    ] Initializing speech engine...
[2026-06-27 16:53:24,557.557 INFO    ] 2026-06-27 16:53:24
[2026-06-27 16:53:24,767.767 INFO    ] 2026-06-27 16:53:24
[2026-06-27 16:53:24,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:53:24,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:53:25,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:53:25,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:53:25,207.207 INFO    ] time= 27/06/2026 16:53:25
[2026-06-27 16:53:25,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:53:25,214.214 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:53:25,306.306 INFO    ] No existing commands found in stream
[2026-06-27 16:53:30,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:53:30,324.324 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-27 16:53:34,626.626 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:53:34,628.628 INFO    ] Checking for system updates...
[2026-06-27 16:53:34,650.650 INFO    ] 200
[2026-06-27 16:53:34,652.652 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:53:34,682.682 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:53:34,683.683 INFO    ] No update needed
[2026-06-27 16:53:34,685.685 INFO    ] Checking for camera pi updates...
[2026-06-27 16:53:34,705.705 INFO    ] 200
[2026-06-27 16:53:34,706.706 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:53:34,732.732 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:53:34,760.760 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:53:34,762.762 INFO    ] No camera update needed
[2026-06-27 16:53:34,763.763 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:53:34,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:53:34,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:53:34,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:53:36,808.808 INFO    ] ================================================
[2026-06-27 16:53:36,823.823 INFO    ] Launching Daemon at Sat Jun 27 16:53:36 IST 2026
[2026-06-27 16:53:36,834.834 INFO    ] ================================================
[2026-06-27 16:53:37,176.176 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:53:37
[2026-06-27 16:53:37,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:53:37,625.625 INFO    ] Initializing speech engine...
[2026-06-27 16:53:37,633.633 INFO    ] 2026-06-27 16:53:37
[2026-06-27 16:53:37,859.859 INFO    ] 2026-06-27 16:53:37
[2026-06-27 16:53:37,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:53:38,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:53:38,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:53:38,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:53:38,312.312 INFO    ] time= 27/06/2026 16:53:38
[2026-06-27 16:53:38,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:53:38,319.319 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:53:38,421.421 INFO    ] No existing commands found in stream
[2026-06-27 16:53:43,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:53:43,434.434 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-27 16:53:46,303.303 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:53:46,305.305 INFO    ] Checking for system updates...
[2026-06-27 16:53:46,327.327 INFO    ] 200
[2026-06-27 16:53:46,328.328 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:53:46,359.359 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:53:46,360.360 INFO    ] No update needed
[2026-06-27 16:53:46,361.361 INFO    ] Checking for camera pi updates...
[2026-06-27 16:53:46,382.382 INFO    ] 200
[2026-06-27 16:53:46,384.384 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:53:46,411.411 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:53:46,453.453 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:53:46,455.455 INFO    ] No camera update needed
[2026-06-27 16:53:46,456.456 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:53:46,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:53:46,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:53:46,463.463 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:53:48,501.501 INFO    ] ================================================
[2026-06-27 16:53:48,516.516 INFO    ] Launching Daemon at Sat Jun 27 16:53:48 IST 2026
[2026-06-27 16:53:48,527.527 INFO    ] ================================================
[2026-06-27 16:53:48,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:53:48
[2026-06-27 16:53:49,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:53:49,340.340 INFO    ] Initializing speech engine...
[2026-06-27 16:53:49,353.353 INFO    ] 2026-06-27 16:53:49
[2026-06-27 16:53:49,558.558 INFO    ] 2026-06-27 16:53:49
[2026-06-27 16:53:49,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:53:49,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:53:49,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:53:49,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:53:49,997.997 INFO    ] time= 27/06/2026 16:53:49
[2026-06-27 16:53:50,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:53:50,004.004 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:53:50,095.095 INFO    ] No existing commands found in stream
[2026-06-27 16:53:55,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:53:55,117.117 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-27 16:53:59,565.565 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 16:53:59,566.566 INFO    ] Checking for system updates...
[2026-06-27 16:53:59,587.587 INFO    ] 200
[2026-06-27 16:53:59,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:53:59,619.619 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:53:59,620.620 INFO    ] No update needed
[2026-06-27 16:53:59,621.621 INFO    ] Checking for camera pi updates...
[2026-06-27 16:53:59,642.642 INFO    ] 200
[2026-06-27 16:53:59,643.643 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:53:59,667.667 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:53:59,711.711 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:53:59,712.712 INFO    ] No camera update needed
[2026-06-27 16:53:59,713.713 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:53:59,715.715 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:53:59,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:53:59,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:54:01,754.754 INFO    ] ================================================
[2026-06-27 16:54:01,771.771 INFO    ] Launching Daemon at Sat Jun 27 16:54:01 IST 2026
[2026-06-27 16:54:01,779.779 INFO    ] ================================================
[2026-06-27 16:54:02,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:54:02
[2026-06-27 16:54:02,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:54:02,624.624 INFO    ] Initializing speech engine...
[2026-06-27 16:54:02,630.630 INFO    ] 2026-06-27 16:54:02
[2026-06-27 16:54:02,836.836 INFO    ] 2026-06-27 16:54:02
[2026-06-27 16:54:02,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:54:03,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:54:03,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:54:03,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:54:03,261.261 INFO    ] time= 27/06/2026 16:54:03
[2026-06-27 16:54:03,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:54:03,290.290 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:54:03,357.357 INFO    ] No existing commands found in stream
[2026-06-27 16:54:08,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:54:08,375.375 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-27 16:54:12,429.429 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:54:12,430.430 INFO    ] Checking for system updates...
[2026-06-27 16:54:12,451.451 INFO    ] 200
[2026-06-27 16:54:12,453.453 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:54:12,485.485 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:54:12,486.486 INFO    ] No update needed
[2026-06-27 16:54:12,488.488 INFO    ] Checking for camera pi updates...
[2026-06-27 16:54:12,509.509 INFO    ] 200
[2026-06-27 16:54:12,510.510 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:54:12,536.536 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:54:12,574.574 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:54:12,576.576 INFO    ] No camera update needed
[2026-06-27 16:54:12,577.577 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:54:12,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:54:12,582.582 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:54:12,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:54:14,626.626 INFO    ] ================================================
[2026-06-27 16:54:14,641.641 INFO    ] Launching Daemon at Sat Jun 27 16:54:14 IST 2026
[2026-06-27 16:54:14,652.652 INFO    ] ================================================
[2026-06-27 16:54:15,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:54:15
[2026-06-27 16:54:15,403.403 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:54:15,544.544 INFO    ] Initializing speech engine...
[2026-06-27 16:54:15,557.557 INFO    ] 2026-06-27 16:54:15
[2026-06-27 16:54:15,771.771 INFO    ] 2026-06-27 16:54:15
[2026-06-27 16:54:15,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:54:15,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:54:15,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:54:16,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:54:16,216.216 INFO    ] time= 27/06/2026 16:54:16
[2026-06-27 16:54:16,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:54:16,224.224 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:54:16,291.291 INFO    ] No existing commands found in stream
[2026-06-27 16:54:21,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:54:21,310.310 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-27 16:54:25,280.280 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:54:25,281.281 INFO    ] Checking for system updates...
[2026-06-27 16:54:25,304.304 INFO    ] 200
[2026-06-27 16:54:25,306.306 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:54:25,339.339 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:54:25,341.341 INFO    ] No update needed
[2026-06-27 16:54:25,342.342 INFO    ] Checking for camera pi updates...
[2026-06-27 16:54:25,365.365 INFO    ] 200
[2026-06-27 16:54:25,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:54:25,391.391 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:54:25,518.518 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:54:25,520.520 INFO    ] No camera update needed
[2026-06-27 16:54:25,521.521 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:54:25,522.522 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:54:25,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:54:25,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:54:27,568.568 INFO    ] ================================================
[2026-06-27 16:54:27,584.584 INFO    ] Launching Daemon at Sat Jun 27 16:54:27 IST 2026
[2026-06-27 16:54:27,594.594 INFO    ] ================================================
[2026-06-27 16:54:27,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:54:27
[2026-06-27 16:54:28,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:54:28,457.457 INFO    ] Initializing speech engine...
[2026-06-27 16:54:28,462.462 INFO    ] 2026-06-27 16:54:28
[2026-06-27 16:54:28,673.673 INFO    ] 2026-06-27 16:54:28
[2026-06-27 16:54:28,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:54:28,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:54:28,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:54:29,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:54:29,099.099 INFO    ] time= 27/06/2026 16:54:29
[2026-06-27 16:54:29,123.123 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:54:29,129.129 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:54:29,197.197 INFO    ] No existing commands found in stream
[2026-06-27 16:54:34,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:54:34,215.215 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-27 16:54:36,320.320 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 16:54:36,322.322 INFO    ] Checking for system updates...
[2026-06-27 16:54:36,343.343 INFO    ] 200
[2026-06-27 16:54:36,345.345 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:54:36,378.378 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:54:36,379.379 INFO    ] No update needed
[2026-06-27 16:54:36,381.381 INFO    ] Checking for camera pi updates...
[2026-06-27 16:54:36,405.405 INFO    ] 200
[2026-06-27 16:54:36,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:54:36,433.433 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:54:36,481.481 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:54:36,482.482 INFO    ] No camera update needed
[2026-06-27 16:54:36,484.484 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:54:36,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:54:36,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:54:36,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:54:38,532.532 INFO    ] ================================================
[2026-06-27 16:54:38,548.548 INFO    ] Launching Daemon at Sat Jun 27 16:54:38 IST 2026
[2026-06-27 16:54:38,558.558 INFO    ] ================================================
[2026-06-27 16:54:38,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:54:38
[2026-06-27 16:54:39,206.206 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:54:39,335.335 INFO    ] Initializing speech engine...
[2026-06-27 16:54:39,344.344 INFO    ] 2026-06-27 16:54:39
[2026-06-27 16:54:39,557.557 INFO    ] 2026-06-27 16:54:39
[2026-06-27 16:54:39,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:54:39,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:54:39,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:54:39,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:54:39,974.974 INFO    ] time= 27/06/2026 16:54:39
[2026-06-27 16:54:39,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:54:40,004.004 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:54:40,070.070 INFO    ] No existing commands found in stream
[2026-06-27 16:54:45,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:54:45,082.082 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-27 16:54:48,428.428 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 16:54:48,430.430 INFO    ] Checking for system updates...
[2026-06-27 16:54:48,451.451 INFO    ] 200
[2026-06-27 16:54:48,452.452 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:54:48,485.485 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:54:48,486.486 INFO    ] No update needed
[2026-06-27 16:54:48,488.488 INFO    ] Checking for camera pi updates...
[2026-06-27 16:54:48,507.507 INFO    ] 200
[2026-06-27 16:54:48,508.508 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:54:48,535.535 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:54:48,582.582 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:54:48,583.583 INFO    ] No camera update needed
[2026-06-27 16:54:48,585.585 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:54:48,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:54:48,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:54:48,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:54:50,631.631 INFO    ] ================================================
[2026-06-27 16:54:50,647.647 INFO    ] Launching Daemon at Sat Jun 27 16:54:50 IST 2026
[2026-06-27 16:54:50,658.658 INFO    ] ================================================
[2026-06-27 16:54:51,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:54:51
[2026-06-27 16:54:51,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:54:51,456.456 INFO    ] Initializing speech engine...
[2026-06-27 16:54:51,469.469 INFO    ] 2026-06-27 16:54:51
[2026-06-27 16:54:51,689.689 INFO    ] 2026-06-27 16:54:51
[2026-06-27 16:54:51,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:54:51,855.855 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:54:51,897.897 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:54:52,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:54:52,129.129 INFO    ] time= 27/06/2026 16:54:52
[2026-06-27 16:54:52,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:54:52,176.176 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:54:52,280.280 INFO    ] No existing commands found in stream
[2026-06-27 16:54:57,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:54:57,291.291 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-27 16:54:59,202.202 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:54:59,204.204 INFO    ] Checking for system updates...
[2026-06-27 16:54:59,227.227 INFO    ] 200
[2026-06-27 16:54:59,228.228 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:54:59,261.261 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:54:59,263.263 INFO    ] No update needed
[2026-06-27 16:54:59,264.264 INFO    ] Checking for camera pi updates...
[2026-06-27 16:54:59,284.284 INFO    ] 200
[2026-06-27 16:54:59,286.286 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:54:59,309.309 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:54:59,366.366 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:54:59,368.368 INFO    ] No camera update needed
[2026-06-27 16:54:59,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:54:59,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:54:59,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:54:59,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:55:01,418.418 INFO    ] ================================================
[2026-06-27 16:55:01,433.433 INFO    ] Launching Daemon at Sat Jun 27 16:55:01 IST 2026
[2026-06-27 16:55:01,443.443 INFO    ] ================================================
[2026-06-27 16:55:02,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:55:02
[2026-06-27 16:55:02,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:55:02,661.661 INFO    ] Initializing speech engine...
[2026-06-27 16:55:02,667.667 INFO    ] 2026-06-27 16:55:02
[2026-06-27 16:55:02,883.883 INFO    ] 2026-06-27 16:55:02
[2026-06-27 16:55:02,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:55:03,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:55:03,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:55:03,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:55:03,321.321 INFO    ] time= 27/06/2026 16:55:03
[2026-06-27 16:55:03,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:55:03,348.348 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:55:03,416.416 INFO    ] No existing commands found in stream
[2026-06-27 16:55:08,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:55:08,434.434 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-27 16:55:11,833.833 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:55:11,835.835 INFO    ] Checking for system updates...
[2026-06-27 16:55:11,864.864 INFO    ] 200
[2026-06-27 16:55:11,865.865 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:55:11,902.902 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:55:11,903.903 INFO    ] No update needed
[2026-06-27 16:55:11,905.905 INFO    ] Checking for camera pi updates...
[2026-06-27 16:55:11,927.927 INFO    ] 200
[2026-06-27 16:55:11,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:55:11,954.954 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:55:12,005.005 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:55:12,007.007 INFO    ] No camera update needed
[2026-06-27 16:55:12,008.008 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:55:12,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:55:12,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:55:12,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:55:14,058.058 INFO    ] ================================================
[2026-06-27 16:55:14,073.073 INFO    ] Launching Daemon at Sat Jun 27 16:55:14 IST 2026
[2026-06-27 16:55:14,085.085 INFO    ] ================================================
[2026-06-27 16:55:14,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:55:14
[2026-06-27 16:55:14,786.786 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:55:14,941.941 INFO    ] Initializing speech engine...
[2026-06-27 16:55:14,945.945 INFO    ] 2026-06-27 16:55:14
[2026-06-27 16:55:15,153.153 INFO    ] 2026-06-27 16:55:15
[2026-06-27 16:55:15,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:55:15,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:55:15,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:55:15,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:55:15,596.596 INFO    ] time= 27/06/2026 16:55:15
[2026-06-27 16:55:15,598.598 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:55:15,600.600 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:55:15,691.691 INFO    ] No existing commands found in stream
[2026-06-27 16:55:20,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:55:20,709.709 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-27 16:55:24,053.053 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:55:24,055.055 INFO    ] Checking for system updates...
[2026-06-27 16:55:24,078.078 INFO    ] 200
[2026-06-27 16:55:24,079.079 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:55:24,112.112 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:55:24,114.114 INFO    ] No update needed
[2026-06-27 16:55:24,116.116 INFO    ] Checking for camera pi updates...
[2026-06-27 16:55:24,136.136 INFO    ] 200
[2026-06-27 16:55:24,137.137 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:55:24,161.161 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:55:24,204.204 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:55:24,205.205 INFO    ] No camera update needed
[2026-06-27 16:55:24,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:55:24,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:55:24,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:55:24,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:55:26,263.263 INFO    ] ================================================
[2026-06-27 16:55:26,278.278 INFO    ] Launching Daemon at Sat Jun 27 16:55:26 IST 2026
[2026-06-27 16:55:26,289.289 INFO    ] ================================================
[2026-06-27 16:55:26,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:55:26
[2026-06-27 16:55:27,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:55:27,154.154 INFO    ] Initializing speech engine...
[2026-06-27 16:55:27,165.165 INFO    ] 2026-06-27 16:55:27
[2026-06-27 16:55:27,374.374 INFO    ] 2026-06-27 16:55:27
[2026-06-27 16:55:27,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:55:27,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:55:27,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:55:27,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:55:27,817.817 INFO    ] time= 27/06/2026 16:55:27
[2026-06-27 16:55:27,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:55:27,824.824 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:55:27,916.916 INFO    ] No existing commands found in stream
[2026-06-27 16:55:32,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:55:32,929.929 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-27 16:55:37,415.415 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:55:37,416.416 INFO    ] Checking for system updates...
[2026-06-27 16:55:37,438.438 INFO    ] 200
[2026-06-27 16:55:37,440.440 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:55:37,473.473 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:55:37,474.474 INFO    ] No update needed
[2026-06-27 16:55:37,476.476 INFO    ] Checking for camera pi updates...
[2026-06-27 16:55:37,495.495 INFO    ] 200
[2026-06-27 16:55:37,496.496 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:55:37,522.522 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:55:37,562.562 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:55:37,564.564 INFO    ] No camera update needed
[2026-06-27 16:55:37,565.565 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:55:37,566.566 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:55:37,569.569 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:55:37,572.572 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:55:39,611.611 INFO    ] ================================================
[2026-06-27 16:55:39,626.626 INFO    ] Launching Daemon at Sat Jun 27 16:55:39 IST 2026
[2026-06-27 16:55:39,637.637 INFO    ] ================================================
[2026-06-27 16:55:39,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:55:39
[2026-06-27 16:55:40,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:55:40,437.437 INFO    ] Initializing speech engine...
[2026-06-27 16:55:40,442.442 INFO    ] 2026-06-27 16:55:40
[2026-06-27 16:55:40,647.647 INFO    ] 2026-06-27 16:55:40
[2026-06-27 16:55:40,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:55:40,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:55:40,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:55:41,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:55:41,089.089 INFO    ] time= 27/06/2026 16:55:41
[2026-06-27 16:55:41,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:55:41,096.096 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:55:41,163.163 INFO    ] No existing commands found in stream
[2026-06-27 16:55:46,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:55:46,179.179 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-27 16:55:50,574.574 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:55:50,576.576 INFO    ] Checking for system updates...
[2026-06-27 16:55:50,598.598 INFO    ] 200
[2026-06-27 16:55:50,599.599 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:55:50,629.629 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:55:50,631.631 INFO    ] No update needed
[2026-06-27 16:55:50,632.632 INFO    ] Checking for camera pi updates...
[2026-06-27 16:55:50,654.654 INFO    ] 200
[2026-06-27 16:55:50,656.656 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:55:50,679.679 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:55:50,728.728 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:55:50,730.730 INFO    ] No camera update needed
[2026-06-27 16:55:50,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:55:50,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:55:50,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:55:50,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:55:52,776.776 INFO    ] ================================================
[2026-06-27 16:55:52,791.791 INFO    ] Launching Daemon at Sat Jun 27 16:55:52 IST 2026
[2026-06-27 16:55:52,802.802 INFO    ] ================================================
[2026-06-27 16:55:53,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:55:53
[2026-06-27 16:55:53,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:55:53,670.670 INFO    ] Initializing speech engine...
[2026-06-27 16:55:53,679.679 INFO    ] 2026-06-27 16:55:53
[2026-06-27 16:55:53,898.898 INFO    ] 2026-06-27 16:55:53
[2026-06-27 16:55:53,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:55:54,108.108 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:55:54,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:55:54,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:55:54,335.335 INFO    ] time= 27/06/2026 16:55:54
[2026-06-27 16:55:54,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:55:54,342.342 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:55:54,410.410 INFO    ] No existing commands found in stream
[2026-06-27 16:55:59,419.419 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:55:59,422.422 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-27 16:55:59,936.936 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 16:55:59,937.937 INFO    ] Checking for system updates...
[2026-06-27 16:55:59,958.958 INFO    ] 200
[2026-06-27 16:55:59,960.960 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:55:59,990.990 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:55:59,991.991 INFO    ] No update needed
[2026-06-27 16:55:59,992.992 INFO    ] Checking for camera pi updates...
[2026-06-27 16:56:00,012.012 INFO    ] 200
[2026-06-27 16:56:00,013.013 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:56:00,036.036 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:56:00,079.079 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:56:00,081.081 INFO    ] No camera update needed
[2026-06-27 16:56:00,082.082 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:56:00,083.083 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:56:00,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:56:00,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:56:02,132.132 INFO    ] ================================================
[2026-06-27 16:56:02,157.157 INFO    ] Launching Daemon at Sat Jun 27 16:56:02 IST 2026
[2026-06-27 16:56:02,170.170 INFO    ] ================================================
[2026-06-27 16:56:02,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:56:02
[2026-06-27 16:56:02,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:56:03,092.092 INFO    ] Initializing speech engine...
[2026-06-27 16:56:03,097.097 INFO    ] 2026-06-27 16:56:03
[2026-06-27 16:56:03,327.327 INFO    ] 2026-06-27 16:56:03
[2026-06-27 16:56:03,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:56:03,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:56:03,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:56:03,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:56:03,791.791 INFO    ] time= 27/06/2026 16:56:03
[2026-06-27 16:56:03,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:56:03,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:56:03,865.865 INFO    ] No existing commands found in stream
[2026-06-27 16:56:08,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:56:08,877.877 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-27 16:56:12,126.126 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 16:56:12,127.127 INFO    ] Checking for system updates...
[2026-06-27 16:56:12,150.150 INFO    ] 200
[2026-06-27 16:56:12,151.151 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:56:12,182.182 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:56:12,184.184 INFO    ] No update needed
[2026-06-27 16:56:12,185.185 INFO    ] Checking for camera pi updates...
[2026-06-27 16:56:12,206.206 INFO    ] 200
[2026-06-27 16:56:12,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:56:12,233.233 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:56:12,278.278 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:56:12,279.279 INFO    ] No camera update needed
[2026-06-27 16:56:12,280.280 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:56:12,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:56:12,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:56:12,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:56:14,328.328 INFO    ] ================================================
[2026-06-27 16:56:14,344.344 INFO    ] Launching Daemon at Sat Jun 27 16:56:14 IST 2026
[2026-06-27 16:56:14,355.355 INFO    ] ================================================
[2026-06-27 16:56:14,701.701 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:56:14
[2026-06-27 16:56:15,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:56:15,143.143 INFO    ] Initializing speech engine...
[2026-06-27 16:56:15,152.152 INFO    ] 2026-06-27 16:56:15
[2026-06-27 16:56:15,368.368 INFO    ] 2026-06-27 16:56:15
[2026-06-27 16:56:15,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:56:15,587.587 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:56:15,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:56:15,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:56:15,816.816 INFO    ] time= 27/06/2026 16:56:15
[2026-06-27 16:56:15,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:56:15,823.823 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:56:15,890.890 INFO    ] No existing commands found in stream
[2026-06-27 16:56:20,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:56:20,899.899 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-27 16:56:24,570.570 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:56:24,572.572 INFO    ] Checking for system updates...
[2026-06-27 16:56:24,594.594 INFO    ] 200
[2026-06-27 16:56:24,595.595 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:56:24,627.627 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:56:24,628.628 INFO    ] No update needed
[2026-06-27 16:56:24,630.630 INFO    ] Checking for camera pi updates...
[2026-06-27 16:56:24,650.650 INFO    ] 200
[2026-06-27 16:56:24,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:56:24,677.677 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:56:24,720.720 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:56:24,721.721 INFO    ] No camera update needed
[2026-06-27 16:56:24,723.723 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:56:24,724.724 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:56:24,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:56:24,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:56:26,772.772 INFO    ] ================================================
[2026-06-27 16:56:26,788.788 INFO    ] Launching Daemon at Sat Jun 27 16:56:26 IST 2026
[2026-06-27 16:56:26,800.800 INFO    ] ================================================
[2026-06-27 16:56:27,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:56:27
[2026-06-27 16:56:27,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:56:27,608.608 INFO    ] Initializing speech engine...
[2026-06-27 16:56:27,612.612 INFO    ] 2026-06-27 16:56:27
[2026-06-27 16:56:27,807.807 INFO    ] 2026-06-27 16:56:27
[2026-06-27 16:56:27,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:56:28,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:56:28,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:56:28,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:56:28,267.267 INFO    ] time= 27/06/2026 16:56:28
[2026-06-27 16:56:28,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:56:28,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:56:28,450.450 INFO    ] No existing commands found in stream
[2026-06-27 16:56:33,459.459 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:56:33,461.461 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-27 16:56:36,954.954 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 16:56:36,955.955 INFO    ] Checking for system updates...
[2026-06-27 16:56:36,976.976 INFO    ] 200
[2026-06-27 16:56:36,977.977 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:56:37,011.011 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:56:37,013.013 INFO    ] No update needed
[2026-06-27 16:56:37,014.014 INFO    ] Checking for camera pi updates...
[2026-06-27 16:56:37,033.033 INFO    ] 200
[2026-06-27 16:56:37,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:56:37,058.058 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:56:37,105.105 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:56:37,107.107 INFO    ] No camera update needed
[2026-06-27 16:56:37,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:56:37,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:56:37,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:56:37,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:56:39,153.153 INFO    ] ================================================
[2026-06-27 16:56:39,170.170 INFO    ] Launching Daemon at Sat Jun 27 16:56:39 IST 2026
[2026-06-27 16:56:39,181.181 INFO    ] ================================================
[2026-06-27 16:56:39,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:56:39
[2026-06-27 16:56:39,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:56:39,987.987 INFO    ] Initializing speech engine...
[2026-06-27 16:56:39,994.994 INFO    ] 2026-06-27 16:56:39
[2026-06-27 16:56:40,208.208 INFO    ] 2026-06-27 16:56:40
[2026-06-27 16:56:40,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:56:40,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:56:40,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:56:40,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:56:40,617.617 INFO    ] time= 27/06/2026 16:56:40
[2026-06-27 16:56:40,654.654 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:56:40,660.660 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:56:40,727.727 INFO    ] No existing commands found in stream
[2026-06-27 16:56:45,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:56:45,745.745 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-27 16:56:46,814.814 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 16:56:46,815.815 INFO    ] Checking for system updates...
[2026-06-27 16:56:46,836.836 INFO    ] 200
[2026-06-27 16:56:46,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:56:46,874.874 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:56:46,875.875 INFO    ] No update needed
[2026-06-27 16:56:46,876.876 INFO    ] Checking for camera pi updates...
[2026-06-27 16:56:46,897.897 INFO    ] 200
[2026-06-27 16:56:46,899.899 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:56:46,922.922 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:56:46,973.973 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:56:46,975.975 INFO    ] No camera update needed
[2026-06-27 16:56:46,976.976 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:56:46,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:56:46,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:56:46,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:56:49,025.025 INFO    ] ================================================
[2026-06-27 16:56:49,041.041 INFO    ] Launching Daemon at Sat Jun 27 16:56:49 IST 2026
[2026-06-27 16:56:49,052.052 INFO    ] ================================================
[2026-06-27 16:56:49,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:56:49
[2026-06-27 16:56:49,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:56:49,900.900 INFO    ] Initializing speech engine...
[2026-06-27 16:56:49,913.913 INFO    ] 2026-06-27 16:56:49
[2026-06-27 16:56:50,120.120 INFO    ] 2026-06-27 16:56:50
[2026-06-27 16:56:50,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:56:50,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:56:50,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:56:50,472.472 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:56:50,535.535 INFO    ] time= 27/06/2026 16:56:50
[2026-06-27 16:56:50,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:56:50,569.569 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:56:50,636.636 INFO    ] No existing commands found in stream
[2026-06-27 16:56:55,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:56:55,649.649 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-27 16:56:59,114.114 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:56:59,116.116 INFO    ] Checking for system updates...
[2026-06-27 16:56:59,137.137 INFO    ] 200
[2026-06-27 16:56:59,139.139 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:56:59,170.170 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:56:59,171.171 INFO    ] No update needed
[2026-06-27 16:56:59,173.173 INFO    ] Checking for camera pi updates...
[2026-06-27 16:56:59,194.194 INFO    ] 200
[2026-06-27 16:56:59,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:56:59,222.222 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:56:59,270.270 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:56:59,271.271 INFO    ] No camera update needed
[2026-06-27 16:56:59,273.273 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:56:59,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:56:59,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:56:59,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:57:01,338.338 INFO    ] ================================================
[2026-06-27 16:57:01,364.364 INFO    ] Launching Daemon at Sat Jun 27 16:57:01 IST 2026
[2026-06-27 16:57:01,401.401 INFO    ] ================================================
[2026-06-27 16:57:01,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:57:01
[2026-06-27 16:57:02,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:57:02,451.451 INFO    ] Initializing speech engine...
[2026-06-27 16:57:02,456.456 INFO    ] 2026-06-27 16:57:02
[2026-06-27 16:57:02,656.656 INFO    ] 2026-06-27 16:57:02
[2026-06-27 16:57:02,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:57:02,861.861 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:57:02,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:57:03,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:57:03,155.155 INFO    ] time= 27/06/2026 16:57:03
[2026-06-27 16:57:03,184.184 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:57:03,186.186 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:57:03,264.264 INFO    ] No existing commands found in stream
[2026-06-27 16:57:08,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:57:08,277.277 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-27 16:57:09,506.506 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 16:57:09,507.507 INFO    ] Checking for system updates...
[2026-06-27 16:57:09,528.528 INFO    ] 200
[2026-06-27 16:57:09,529.529 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:57:09,563.563 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:57:09,564.564 INFO    ] No update needed
[2026-06-27 16:57:09,565.565 INFO    ] Checking for camera pi updates...
[2026-06-27 16:57:09,585.585 INFO    ] 200
[2026-06-27 16:57:09,586.586 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:57:09,611.611 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:57:09,657.657 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:57:09,659.659 INFO    ] No camera update needed
[2026-06-27 16:57:09,661.661 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:57:09,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:57:09,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:57:09,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:57:11,709.709 INFO    ] ================================================
[2026-06-27 16:57:11,728.728 INFO    ] Launching Daemon at Sat Jun 27 16:57:11 IST 2026
[2026-06-27 16:57:11,738.738 INFO    ] ================================================
[2026-06-27 16:57:12,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:57:12
[2026-06-27 16:57:12,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:57:12,571.571 INFO    ] Initializing speech engine...
[2026-06-27 16:57:12,577.577 INFO    ] 2026-06-27 16:57:12
[2026-06-27 16:57:12,780.780 INFO    ] 2026-06-27 16:57:12
[2026-06-27 16:57:12,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:57:12,993.993 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:57:13,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:57:13,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:57:13,220.220 INFO    ] time= 27/06/2026 16:57:13
[2026-06-27 16:57:13,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:57:13,227.227 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:57:13,318.318 INFO    ] No existing commands found in stream
[2026-06-27 16:57:18,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:57:18,330.330 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-27 16:57:21,032.032 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 16:57:21,034.034 INFO    ] Checking for system updates...
[2026-06-27 16:57:21,055.055 INFO    ] 200
[2026-06-27 16:57:21,057.057 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:57:21,087.087 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:57:21,089.089 INFO    ] No update needed
[2026-06-27 16:57:21,090.090 INFO    ] Checking for camera pi updates...
[2026-06-27 16:57:21,110.110 INFO    ] 200
[2026-06-27 16:57:21,111.111 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:57:21,136.136 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:57:21,188.188 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:57:21,189.189 INFO    ] No camera update needed
[2026-06-27 16:57:21,190.190 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:57:21,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:57:21,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:57:21,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:57:23,236.236 INFO    ] ================================================
[2026-06-27 16:57:23,252.252 INFO    ] Launching Daemon at Sat Jun 27 16:57:23 IST 2026
[2026-06-27 16:57:23,262.262 INFO    ] ================================================
[2026-06-27 16:57:23,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:57:23
[2026-06-27 16:57:23,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:57:24,053.053 INFO    ] Initializing speech engine...
[2026-06-27 16:57:24,058.058 INFO    ] 2026-06-27 16:57:24
[2026-06-27 16:57:24,265.265 INFO    ] 2026-06-27 16:57:24
[2026-06-27 16:57:24,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:57:24,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:57:24,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:57:24,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:57:24,689.689 INFO    ] time= 27/06/2026 16:57:24
[2026-06-27 16:57:24,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:57:24,719.719 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:57:24,811.811 INFO    ] No existing commands found in stream
[2026-06-27 16:57:29,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:57:29,828.828 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-27 16:57:30,735.735 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 16:57:30,736.736 INFO    ] Checking for system updates...
[2026-06-27 16:57:30,757.757 INFO    ] 200
[2026-06-27 16:57:30,758.758 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:57:30,789.789 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:57:30,790.790 INFO    ] No update needed
[2026-06-27 16:57:30,792.792 INFO    ] Checking for camera pi updates...
[2026-06-27 16:57:30,813.813 INFO    ] 200
[2026-06-27 16:57:30,814.814 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:57:30,840.840 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:57:30,879.879 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:57:30,881.881 INFO    ] No camera update needed
[2026-06-27 16:57:30,882.882 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:57:30,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:57:30,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:57:30,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:57:32,913.913 INFO    ] ================================================
[2026-06-27 16:57:32,922.922 INFO    ] Launching Daemon at Sat Jun 27 16:57:32 IST 2026
[2026-06-27 16:57:32,928.928 INFO    ] ================================================
[2026-06-27 16:57:33,284.284 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:57:33
[2026-06-27 16:57:33,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:57:33,739.739 INFO    ] Initializing speech engine...
[2026-06-27 16:57:33,745.745 INFO    ] 2026-06-27 16:57:33
[2026-06-27 16:57:33,949.949 INFO    ] 2026-06-27 16:57:33
[2026-06-27 16:57:33,976.976 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:57:34,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:57:34,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:57:34,360.360 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:57:34,387.387 INFO    ] time= 27/06/2026 16:57:34
[2026-06-27 16:57:34,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:57:34,395.395 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:57:34,462.462 INFO    ] No existing commands found in stream
[2026-06-27 16:57:39,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:57:39,489.489 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-27 16:57:40,187.187 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 16:57:40,188.188 INFO    ] Checking for system updates...
[2026-06-27 16:57:40,210.210 INFO    ] 200
[2026-06-27 16:57:40,212.212 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:57:40,243.243 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:57:40,244.244 INFO    ] No update needed
[2026-06-27 16:57:40,245.245 INFO    ] Checking for camera pi updates...
[2026-06-27 16:57:40,267.267 INFO    ] 200
[2026-06-27 16:57:40,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:57:40,294.294 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:57:40,340.340 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:57:40,341.341 INFO    ] No camera update needed
[2026-06-27 16:57:40,342.342 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:57:40,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:57:40,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:57:40,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:57:42,390.390 INFO    ] ================================================
[2026-06-27 16:57:42,406.406 INFO    ] Launching Daemon at Sat Jun 27 16:57:42 IST 2026
[2026-06-27 16:57:42,417.417 INFO    ] ================================================
[2026-06-27 16:57:42,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:57:42
[2026-06-27 16:57:43,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:57:43,244.244 INFO    ] Initializing speech engine...
[2026-06-27 16:57:43,249.249 INFO    ] 2026-06-27 16:57:43
[2026-06-27 16:57:43,455.455 INFO    ] 2026-06-27 16:57:43
[2026-06-27 16:57:43,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:57:43,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:57:43,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:57:43,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:57:43,894.894 INFO    ] time= 27/06/2026 16:57:43
[2026-06-27 16:57:43,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:57:43,901.901 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:57:43,968.968 INFO    ] No existing commands found in stream
[2026-06-27 16:57:48,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:57:48,984.984 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-27 16:57:50,876.876 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 16:57:50,878.878 INFO    ] Checking for system updates...
[2026-06-27 16:57:50,898.898 INFO    ] 200
[2026-06-27 16:57:50,900.900 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:57:50,930.930 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:57:50,931.931 INFO    ] No update needed
[2026-06-27 16:57:50,933.933 INFO    ] Checking for camera pi updates...
[2026-06-27 16:57:50,952.952 INFO    ] 200
[2026-06-27 16:57:50,953.953 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:57:50,981.981 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:57:51,022.022 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:57:51,024.024 INFO    ] No camera update needed
[2026-06-27 16:57:51,025.025 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:57:51,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:57:51,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:57:51,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:57:53,071.071 INFO    ] ================================================
[2026-06-27 16:57:53,087.087 INFO    ] Launching Daemon at Sat Jun 27 16:57:53 IST 2026
[2026-06-27 16:57:53,098.098 INFO    ] ================================================
[2026-06-27 16:57:53,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:57:53
[2026-06-27 16:57:53,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:57:53,896.896 INFO    ] Initializing speech engine...
[2026-06-27 16:57:53,901.901 INFO    ] 2026-06-27 16:57:53
[2026-06-27 16:57:54,108.108 INFO    ] 2026-06-27 16:57:54
[2026-06-27 16:57:54,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:57:54,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:57:54,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:57:54,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:57:54,541.541 INFO    ] time= 27/06/2026 16:57:54
[2026-06-27 16:57:54,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:57:54,563.563 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:57:54,631.631 INFO    ] No existing commands found in stream
[2026-06-27 16:57:59,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:57:59,648.648 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-27 16:58:02,362.362 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 16:58:02,365.365 INFO    ] Checking for system updates...
[2026-06-27 16:58:02,394.394 INFO    ] 200
[2026-06-27 16:58:02,396.396 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:58:02,437.437 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:58:02,439.439 INFO    ] No update needed
[2026-06-27 16:58:02,441.441 INFO    ] Checking for camera pi updates...
[2026-06-27 16:58:02,480.480 INFO    ] 200
[2026-06-27 16:58:02,482.482 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:58:02,518.518 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:58:02,548.548 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:58:02,549.549 INFO    ] No camera update needed
[2026-06-27 16:58:02,551.551 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:58:02,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:58:02,555.555 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:58:02,558.558 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:58:04,597.597 INFO    ] ================================================
[2026-06-27 16:58:04,612.612 INFO    ] Launching Daemon at Sat Jun 27 16:58:04 IST 2026
[2026-06-27 16:58:04,623.623 INFO    ] ================================================
[2026-06-27 16:58:04,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:58:04
[2026-06-27 16:58:05,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:58:05,453.453 INFO    ] Initializing speech engine...
[2026-06-27 16:58:05,458.458 INFO    ] 2026-06-27 16:58:05
[2026-06-27 16:58:05,664.664 INFO    ] 2026-06-27 16:58:05
[2026-06-27 16:58:05,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:58:05,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:58:05,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:58:06,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:58:06,126.126 INFO    ] time= 27/06/2026 16:58:06
[2026-06-27 16:58:06,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:58:06,156.156 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:58:06,280.280 INFO    ] No existing commands found in stream
[2026-06-27 16:58:11,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:58:11,293.293 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-27 16:58:13,508.508 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 16:58:13,509.509 INFO    ] Checking for system updates...
[2026-06-27 16:58:13,531.531 INFO    ] 200
[2026-06-27 16:58:13,532.532 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:58:13,563.563 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:58:13,564.564 INFO    ] No update needed
[2026-06-27 16:58:13,566.566 INFO    ] Checking for camera pi updates...
[2026-06-27 16:58:13,586.586 INFO    ] 200
[2026-06-27 16:58:13,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:58:13,612.612 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:58:13,663.663 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:58:13,664.664 INFO    ] No camera update needed
[2026-06-27 16:58:13,665.665 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:58:13,667.667 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:58:13,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:58:13,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:58:15,713.713 INFO    ] ================================================
[2026-06-27 16:58:15,728.728 INFO    ] Launching Daemon at Sat Jun 27 16:58:15 IST 2026
[2026-06-27 16:58:15,739.739 INFO    ] ================================================
[2026-06-27 16:58:16,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:58:16
[2026-06-27 16:58:16,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:58:16,549.549 INFO    ] Initializing speech engine...
[2026-06-27 16:58:16,557.557 INFO    ] 2026-06-27 16:58:16
[2026-06-27 16:58:16,772.772 INFO    ] 2026-06-27 16:58:16
[2026-06-27 16:58:16,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:58:16,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:58:16,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:58:17,147.147 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:58:17,201.201 INFO    ] time= 27/06/2026 16:58:17
[2026-06-27 16:58:17,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:58:17,229.229 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:58:17,297.297 INFO    ] No existing commands found in stream
[2026-06-27 16:58:22,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:58:22,309.309 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-27 16:58:26,435.435 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 16:58:26,437.437 INFO    ] Checking for system updates...
[2026-06-27 16:58:26,460.460 INFO    ] 200
[2026-06-27 16:58:26,461.461 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:58:26,493.493 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:58:26,495.495 INFO    ] No update needed
[2026-06-27 16:58:26,496.496 INFO    ] Checking for camera pi updates...
[2026-06-27 16:58:26,517.517 INFO    ] 200
[2026-06-27 16:58:26,518.518 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:58:26,545.545 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:58:26,591.591 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:58:26,593.593 INFO    ] No camera update needed
[2026-06-27 16:58:26,594.594 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:58:26,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:58:26,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:58:26,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:58:28,641.641 INFO    ] ================================================
[2026-06-27 16:58:28,657.657 INFO    ] Launching Daemon at Sat Jun 27 16:58:28 IST 2026
[2026-06-27 16:58:28,668.668 INFO    ] ================================================
[2026-06-27 16:58:29,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:58:29
[2026-06-27 16:58:29,340.340 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:58:29,483.483 INFO    ] Initializing speech engine...
[2026-06-27 16:58:29,494.494 INFO    ] 2026-06-27 16:58:29
[2026-06-27 16:58:29,710.710 INFO    ] 2026-06-27 16:58:29
[2026-06-27 16:58:29,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:58:29,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:58:29,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:58:30,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:58:30,171.171 INFO    ] time= 27/06/2026 16:58:30
[2026-06-27 16:58:30,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:58:30,179.179 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:58:30,286.286 INFO    ] No existing commands found in stream
[2026-06-27 16:58:35,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:58:35,299.299 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-27 16:58:35,996.996 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:58:35,998.998 INFO    ] Checking for system updates...
[2026-06-27 16:58:36,020.020 INFO    ] 200
[2026-06-27 16:58:36,021.021 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:58:36,055.055 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:58:36,056.056 INFO    ] No update needed
[2026-06-27 16:58:36,057.057 INFO    ] Checking for camera pi updates...
[2026-06-27 16:58:36,079.079 INFO    ] 200
[2026-06-27 16:58:36,080.080 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:58:36,104.104 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:58:36,244.244 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:58:36,245.245 INFO    ] No camera update needed
[2026-06-27 16:58:36,247.247 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:58:36,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:58:36,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:58:36,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:58:38,293.293 INFO    ] ================================================
[2026-06-27 16:58:38,308.308 INFO    ] Launching Daemon at Sat Jun 27 16:58:38 IST 2026
[2026-06-27 16:58:38,319.319 INFO    ] ================================================
[2026-06-27 16:58:38,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:58:38
[2026-06-27 16:58:38,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:58:39,128.128 INFO    ] Initializing speech engine...
[2026-06-27 16:58:39,141.141 INFO    ] 2026-06-27 16:58:39
[2026-06-27 16:58:39,360.360 INFO    ] 2026-06-27 16:58:39
[2026-06-27 16:58:39,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:58:39,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:58:39,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:58:39,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:58:39,815.815 INFO    ] time= 27/06/2026 16:58:39
[2026-06-27 16:58:39,841.841 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:58:39,848.848 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:58:39,920.920 INFO    ] No existing commands found in stream
[2026-06-27 16:58:44,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:58:44,931.931 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-27 16:58:45,721.721 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 16:58:45,722.722 INFO    ] Checking for system updates...
[2026-06-27 16:58:45,745.745 INFO    ] 200
[2026-06-27 16:58:45,746.746 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:58:45,783.783 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:58:45,785.785 INFO    ] No update needed
[2026-06-27 16:58:45,786.786 INFO    ] Checking for camera pi updates...
[2026-06-27 16:58:45,809.809 INFO    ] 200
[2026-06-27 16:58:45,810.810 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:58:45,834.834 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:58:45,885.885 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:58:45,887.887 INFO    ] No camera update needed
[2026-06-27 16:58:45,888.888 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:58:45,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:58:45,893.893 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:58:45,896.896 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:58:47,935.935 INFO    ] ================================================
[2026-06-27 16:58:47,951.951 INFO    ] Launching Daemon at Sat Jun 27 16:58:47 IST 2026
[2026-06-27 16:58:47,962.962 INFO    ] ================================================
[2026-06-27 16:58:48,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:58:48
[2026-06-27 16:58:48,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:58:48,826.826 INFO    ] Initializing speech engine...
[2026-06-27 16:58:48,838.838 INFO    ] 2026-06-27 16:58:48
[2026-06-27 16:58:49,052.052 INFO    ] 2026-06-27 16:58:49
[2026-06-27 16:58:49,082.082 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:58:49,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:58:49,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:58:49,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:58:49,473.473 INFO    ] time= 27/06/2026 16:58:49
[2026-06-27 16:58:49,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:58:49,519.519 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:58:49,588.588 INFO    ] No existing commands found in stream
[2026-06-27 16:58:54,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:58:54,596.596 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-27 16:58:55,483.483 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 16:58:55,485.485 INFO    ] Checking for system updates...
[2026-06-27 16:58:55,506.506 INFO    ] 200
[2026-06-27 16:58:55,508.508 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:58:55,541.541 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:58:55,542.542 INFO    ] No update needed
[2026-06-27 16:58:55,544.544 INFO    ] Checking for camera pi updates...
[2026-06-27 16:58:55,569.569 INFO    ] 200
[2026-06-27 16:58:55,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:58:55,598.598 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:58:55,624.624 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:58:55,626.626 INFO    ] No camera update needed
[2026-06-27 16:58:55,627.627 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:58:55,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:58:55,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:58:55,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:58:57,673.673 INFO    ] ================================================
[2026-06-27 16:58:57,688.688 INFO    ] Launching Daemon at Sat Jun 27 16:58:57 IST 2026
[2026-06-27 16:58:57,699.699 INFO    ] ================================================
[2026-06-27 16:58:58,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:58:58
[2026-06-27 16:58:58,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:58:58,513.513 INFO    ] Initializing speech engine...
[2026-06-27 16:58:58,517.517 INFO    ] 2026-06-27 16:58:58
[2026-06-27 16:58:58,710.710 INFO    ] 2026-06-27 16:58:58
[2026-06-27 16:58:58,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:58:58,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:58:58,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:58:59,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:58:59,188.188 INFO    ] time= 27/06/2026 16:58:59
[2026-06-27 16:58:59,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:58:59,234.234 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:58:59,311.311 INFO    ] No existing commands found in stream
[2026-06-27 16:59:04,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:59:04,323.323 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-27 16:59:06,963.963 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 16:59:06,965.965 INFO    ] Checking for system updates...
[2026-06-27 16:59:06,985.985 INFO    ] 200
[2026-06-27 16:59:06,987.987 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:59:07,017.017 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:59:07,019.019 INFO    ] No update needed
[2026-06-27 16:59:07,020.020 INFO    ] Checking for camera pi updates...
[2026-06-27 16:59:07,041.041 INFO    ] 200
[2026-06-27 16:59:07,042.042 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:59:07,067.067 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:59:07,110.110 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:59:07,111.111 INFO    ] No camera update needed
[2026-06-27 16:59:07,112.112 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:59:07,114.114 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:59:07,117.117 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:59:07,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:59:09,159.159 INFO    ] ================================================
[2026-06-27 16:59:09,175.175 INFO    ] Launching Daemon at Sat Jun 27 16:59:09 IST 2026
[2026-06-27 16:59:09,185.185 INFO    ] ================================================
[2026-06-27 16:59:09,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:59:09
[2026-06-27 16:59:09,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:59:09,974.974 INFO    ] Initializing speech engine...
[2026-06-27 16:59:09,984.984 INFO    ] 2026-06-27 16:59:09
[2026-06-27 16:59:10,187.187 INFO    ] 2026-06-27 16:59:10
[2026-06-27 16:59:10,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:59:10,399.399 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:59:10,403.403 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:59:10,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:59:10,627.627 INFO    ] time= 27/06/2026 16:59:10
[2026-06-27 16:59:10,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:59:10,634.634 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:59:10,700.700 INFO    ] No existing commands found in stream
[2026-06-27 16:59:15,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:59:15,727.727 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-27 16:59:17,271.271 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 16:59:17,272.272 INFO    ] Checking for system updates...
[2026-06-27 16:59:17,293.293 INFO    ] 200
[2026-06-27 16:59:17,294.294 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:59:17,325.325 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:59:17,326.326 INFO    ] No update needed
[2026-06-27 16:59:17,327.327 INFO    ] Checking for camera pi updates...
[2026-06-27 16:59:17,347.347 INFO    ] 200
[2026-06-27 16:59:17,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:59:17,373.373 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:59:17,424.424 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:59:17,425.425 INFO    ] No camera update needed
[2026-06-27 16:59:17,427.427 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:59:17,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:59:17,431.431 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:59:17,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:59:19,473.473 INFO    ] ================================================
[2026-06-27 16:59:19,489.489 INFO    ] Launching Daemon at Sat Jun 27 16:59:19 IST 2026
[2026-06-27 16:59:19,499.499 INFO    ] ================================================
[2026-06-27 16:59:19,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:59:19
[2026-06-27 16:59:20,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:59:20,347.347 INFO    ] Initializing speech engine...
[2026-06-27 16:59:20,355.355 INFO    ] 2026-06-27 16:59:20
[2026-06-27 16:59:20,564.564 INFO    ] 2026-06-27 16:59:20
[2026-06-27 16:59:20,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:59:20,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:59:20,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:59:20,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:59:20,982.982 INFO    ] time= 27/06/2026 16:59:20
[2026-06-27 16:59:21,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:59:21,011.011 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:59:21,076.076 INFO    ] No existing commands found in stream
[2026-06-27 16:59:26,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:59:26,089.089 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-27 16:59:26,803.803 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 16:59:26,804.804 INFO    ] Checking for system updates...
[2026-06-27 16:59:26,825.825 INFO    ] 200
[2026-06-27 16:59:26,827.827 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:59:26,860.860 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:59:26,862.862 INFO    ] No update needed
[2026-06-27 16:59:26,864.864 INFO    ] Checking for camera pi updates...
[2026-06-27 16:59:26,885.885 INFO    ] 200
[2026-06-27 16:59:26,886.886 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:59:26,914.914 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:59:26,968.968 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:59:26,970.970 INFO    ] No camera update needed
[2026-06-27 16:59:26,971.971 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:59:26,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:59:26,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:59:26,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:59:29,020.020 INFO    ] ================================================
[2026-06-27 16:59:29,035.035 INFO    ] Launching Daemon at Sat Jun 27 16:59:29 IST 2026
[2026-06-27 16:59:29,046.046 INFO    ] ================================================
[2026-06-27 16:59:29,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:59:29
[2026-06-27 16:59:29,713.713 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:59:29,851.851 INFO    ] Initializing speech engine...
[2026-06-27 16:59:29,861.861 INFO    ] 2026-06-27 16:59:29
[2026-06-27 16:59:30,067.067 INFO    ] 2026-06-27 16:59:30
[2026-06-27 16:59:30,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:59:30,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:59:30,288.288 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:59:30,439.439 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:59:30,488.488 INFO    ] time= 27/06/2026 16:59:30
[2026-06-27 16:59:30,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:59:30,515.515 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:59:30,581.581 INFO    ] No existing commands found in stream
[2026-06-27 16:59:35,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:59:35,594.594 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-27 16:59:36,437.437 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 16:59:36,438.438 INFO    ] Checking for system updates...
[2026-06-27 16:59:36,461.461 INFO    ] 200
[2026-06-27 16:59:36,462.462 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:59:36,495.495 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:59:36,496.496 INFO    ] No update needed
[2026-06-27 16:59:36,498.498 INFO    ] Checking for camera pi updates...
[2026-06-27 16:59:36,518.518 INFO    ] 200
[2026-06-27 16:59:36,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:59:36,543.543 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:59:36,589.589 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 16:59:36,590.590 INFO    ] No camera update needed
[2026-06-27 16:59:36,591.591 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:59:36,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:59:36,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:59:36,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:59:38,637.637 INFO    ] ================================================
[2026-06-27 16:59:38,652.652 INFO    ] Launching Daemon at Sat Jun 27 16:59:38 IST 2026
[2026-06-27 16:59:38,663.663 INFO    ] ================================================
[2026-06-27 16:59:39,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:59:39
[2026-06-27 16:59:39,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:59:39,481.481 INFO    ] Initializing speech engine...
[2026-06-27 16:59:39,494.494 INFO    ] 2026-06-27 16:59:39
[2026-06-27 16:59:39,712.712 INFO    ] 2026-06-27 16:59:39
[2026-06-27 16:59:39,743.743 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:59:39,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:59:39,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:59:40,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:59:40,149.149 INFO    ] time= 27/06/2026 16:59:40
[2026-06-27 16:59:40,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:59:40,190.190 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:59:40,265.265 INFO    ] No existing commands found in stream
[2026-06-27 16:59:45,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:59:45,279.279 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-27 16:59:49,606.606 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 16:59:49,607.607 INFO    ] Checking for system updates...
[2026-06-27 16:59:49,628.628 INFO    ] 200
[2026-06-27 16:59:49,630.630 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:59:49,662.662 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:59:49,664.664 INFO    ] No update needed
[2026-06-27 16:59:49,665.665 INFO    ] Checking for camera pi updates...
[2026-06-27 16:59:49,686.686 INFO    ] 200
[2026-06-27 16:59:49,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 16:59:49,713.713 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 16:59:49,755.755 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 16:59:49,756.756 INFO    ] No camera update needed
[2026-06-27 16:59:49,758.758 INFO    ] Script finished. Safe exiting...
[2026-06-27 16:59:49,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 16:59:49,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 16:59:49,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 16:59:51,804.804 INFO    ] ================================================
[2026-06-27 16:59:51,820.820 INFO    ] Launching Daemon at Sat Jun 27 16:59:51 IST 2026
[2026-06-27 16:59:51,830.830 INFO    ] ================================================
[2026-06-27 16:59:52,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 16:59:52
[2026-06-27 16:59:52,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 16:59:52,629.629 INFO    ] Initializing speech engine...
[2026-06-27 16:59:52,635.635 INFO    ] 2026-06-27 16:59:52
[2026-06-27 16:59:52,850.850 INFO    ] 2026-06-27 16:59:52
[2026-06-27 16:59:52,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 16:59:53,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 16:59:53,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 16:59:53,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 16:59:53,290.290 INFO    ] time= 27/06/2026 16:59:53
[2026-06-27 16:59:53,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 16:59:53,336.336 INFO    ] Checking for existing commands in stream...
[2026-06-27 16:59:53,408.408 INFO    ] No existing commands found in stream
[2026-06-27 16:59:58,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 16:59:58,440.440 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-27 17:00:02,884.884 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 17:00:02,886.886 INFO    ] Checking for system updates...
[2026-06-27 17:00:02,962.962 INFO    ] 200
[2026-06-27 17:00:02,985.985 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:00:03,129.129 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:00:03,131.131 INFO    ] No update needed
[2026-06-27 17:00:03,154.154 INFO    ] Checking for camera pi updates...
[2026-06-27 17:00:03,234.234 INFO    ] 200
[2026-06-27 17:00:03,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:00:03,347.347 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:00:03,565.565 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:00:03,568.568 INFO    ] No camera update needed
[2026-06-27 17:00:03,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:00:03,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:00:03,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:00:03,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:00:05,649.649 INFO    ] ================================================
[2026-06-27 17:00:05,664.664 INFO    ] Launching Daemon at Sat Jun 27 17:00:05 IST 2026
[2026-06-27 17:00:05,675.675 INFO    ] ================================================
[2026-06-27 17:00:06,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:00:06
[2026-06-27 17:00:06,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:00:06,465.465 INFO    ] Initializing speech engine...
[2026-06-27 17:00:06,477.477 INFO    ] 2026-06-27 17:00:06
[2026-06-27 17:00:06,684.684 INFO    ] 2026-06-27 17:00:06
[2026-06-27 17:00:06,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:00:06,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:00:06,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:00:07,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:00:07,073.073 INFO    ] time= 27/06/2026 17:00:07
[2026-06-27 17:00:07,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:00:07,153.153 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:00:07,222.222 INFO    ] No existing commands found in stream
[2026-06-27 17:00:12,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:00:12,236.236 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-27 17:00:14,491.491 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 17:00:14,492.492 INFO    ] Checking for system updates...
[2026-06-27 17:00:14,516.516 INFO    ] 200
[2026-06-27 17:00:14,518.518 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:00:14,555.555 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:00:14,557.557 INFO    ] No update needed
[2026-06-27 17:00:14,558.558 INFO    ] Checking for camera pi updates...
[2026-06-27 17:00:14,577.577 INFO    ] 200
[2026-06-27 17:00:14,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:00:14,604.604 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:00:14,656.656 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:00:14,657.657 INFO    ] No camera update needed
[2026-06-27 17:00:14,659.659 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:00:14,660.660 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:00:14,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:00:14,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:00:16,697.697 INFO    ] ================================================
[2026-06-27 17:00:16,712.712 INFO    ] Launching Daemon at Sat Jun 27 17:00:16 IST 2026
[2026-06-27 17:00:16,723.723 INFO    ] ================================================
[2026-06-27 17:00:17,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:00:17
[2026-06-27 17:00:17,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:00:17,519.519 INFO    ] Initializing speech engine...
[2026-06-27 17:00:17,523.523 INFO    ] 2026-06-27 17:00:17
[2026-06-27 17:00:17,715.715 INFO    ] 2026-06-27 17:00:17
[2026-06-27 17:00:17,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:00:17,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:00:17,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:00:18,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:00:18,192.192 INFO    ] time= 27/06/2026 17:00:18
[2026-06-27 17:00:18,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:00:18,243.243 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:00:18,314.314 INFO    ] No existing commands found in stream
[2026-06-27 17:00:23,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:00:23,327.327 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-27 17:00:24,666.666 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 17:00:24,668.668 INFO    ] Checking for system updates...
[2026-06-27 17:00:24,690.690 INFO    ] 200
[2026-06-27 17:00:24,691.691 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:00:24,724.724 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:00:24,726.726 INFO    ] No update needed
[2026-06-27 17:00:24,727.727 INFO    ] Checking for camera pi updates...
[2026-06-27 17:00:24,747.747 INFO    ] 200
[2026-06-27 17:00:24,749.749 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:00:24,772.772 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:00:24,816.816 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:00:24,817.817 INFO    ] No camera update needed
[2026-06-27 17:00:24,818.818 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:00:24,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:00:24,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:00:24,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:00:26,863.863 INFO    ] ================================================
[2026-06-27 17:00:26,879.879 INFO    ] Launching Daemon at Sat Jun 27 17:00:26 IST 2026
[2026-06-27 17:00:26,891.891 INFO    ] ================================================
[2026-06-27 17:00:27,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:00:27
[2026-06-27 17:00:27,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:00:27,707.707 INFO    ] Initializing speech engine...
[2026-06-27 17:00:27,712.712 INFO    ] 2026-06-27 17:00:27
[2026-06-27 17:00:27,918.918 INFO    ] 2026-06-27 17:00:27
[2026-06-27 17:00:27,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:00:28,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:00:28,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:00:28,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:00:28,339.339 INFO    ] time= 27/06/2026 17:00:28
[2026-06-27 17:00:28,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:00:28,367.367 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:00:28,435.435 INFO    ] No existing commands found in stream
[2026-06-27 17:00:33,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:00:33,447.447 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-27 17:00:33,868.868 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 17:00:33,870.870 INFO    ] Checking for system updates...
[2026-06-27 17:00:33,891.891 INFO    ] 200
[2026-06-27 17:00:33,893.893 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:00:33,924.924 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:00:33,926.926 INFO    ] No update needed
[2026-06-27 17:00:33,927.927 INFO    ] Checking for camera pi updates...
[2026-06-27 17:00:33,948.948 INFO    ] 200
[2026-06-27 17:00:33,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:00:33,974.974 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:00:34,035.035 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:00:34,036.036 INFO    ] No camera update needed
[2026-06-27 17:00:34,037.037 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:00:34,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:00:34,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:00:34,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:00:36,084.084 INFO    ] ================================================
[2026-06-27 17:00:36,099.099 INFO    ] Launching Daemon at Sat Jun 27 17:00:36 IST 2026
[2026-06-27 17:00:36,111.111 INFO    ] ================================================
[2026-06-27 17:00:36,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:00:36
[2026-06-27 17:00:36,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:00:36,987.987 INFO    ] Initializing speech engine...
[2026-06-27 17:00:36,992.992 INFO    ] 2026-06-27 17:00:36
[2026-06-27 17:00:37,201.201 INFO    ] 2026-06-27 17:00:37
[2026-06-27 17:00:37,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:00:37,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:00:37,417.417 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:00:37,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:00:37,642.642 INFO    ] time= 27/06/2026 17:00:37
[2026-06-27 17:00:37,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:00:37,650.650 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:00:37,717.717 INFO    ] No existing commands found in stream
[2026-06-27 17:00:42,730.730 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:00:42,734.734 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-27 17:00:44,964.964 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 17:00:44,966.966 INFO    ] Checking for system updates...
[2026-06-27 17:00:44,986.986 INFO    ] 200
[2026-06-27 17:00:44,988.988 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:00:45,022.022 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:00:45,024.024 INFO    ] No update needed
[2026-06-27 17:00:45,025.025 INFO    ] Checking for camera pi updates...
[2026-06-27 17:00:45,045.045 INFO    ] 200
[2026-06-27 17:00:45,046.046 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:00:45,072.072 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:00:45,217.217 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:00:45,218.218 INFO    ] No camera update needed
[2026-06-27 17:00:45,219.219 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:00:45,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:00:45,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:00:45,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:00:47,264.264 INFO    ] ================================================
[2026-06-27 17:00:47,280.280 INFO    ] Launching Daemon at Sat Jun 27 17:00:47 IST 2026
[2026-06-27 17:00:47,290.290 INFO    ] ================================================
[2026-06-27 17:00:47,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:00:47
[2026-06-27 17:00:47,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:00:48,098.098 INFO    ] Initializing speech engine...
[2026-06-27 17:00:48,103.103 INFO    ] 2026-06-27 17:00:48
[2026-06-27 17:00:48,309.309 INFO    ] 2026-06-27 17:00:48
[2026-06-27 17:00:48,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:00:48,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:00:48,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:00:48,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:00:48,749.749 INFO    ] time= 27/06/2026 17:00:48
[2026-06-27 17:00:48,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:00:48,756.756 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:00:48,847.847 INFO    ] No existing commands found in stream
[2026-06-27 17:00:53,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:00:53,859.859 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-27 17:00:57,860.860 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 17:00:57,861.861 INFO    ] Checking for system updates...
[2026-06-27 17:00:57,882.882 INFO    ] 200
[2026-06-27 17:00:57,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:00:57,915.915 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:00:57,916.916 INFO    ] No update needed
[2026-06-27 17:00:57,918.918 INFO    ] Checking for camera pi updates...
[2026-06-27 17:00:57,937.937 INFO    ] 200
[2026-06-27 17:00:57,939.939 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:00:57,962.962 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:00:58,007.007 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:00:58,008.008 INFO    ] No camera update needed
[2026-06-27 17:00:58,010.010 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:00:58,011.011 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:00:58,014.014 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:00:58,017.017 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:01:00,055.055 INFO    ] ================================================
[2026-06-27 17:01:00,070.070 INFO    ] Launching Daemon at Sat Jun 27 17:01:00 IST 2026
[2026-06-27 17:01:00,081.081 INFO    ] ================================================
[2026-06-27 17:01:00,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:01:00
[2026-06-27 17:01:00,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:01:00,920.920 INFO    ] Initializing speech engine...
[2026-06-27 17:01:00,925.925 INFO    ] 2026-06-27 17:01:00
[2026-06-27 17:01:01,114.114 INFO    ] 2026-06-27 17:01:01
[2026-06-27 17:01:01,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:01:01,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:01:01,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:01:01,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:01:01,753.753 INFO    ] time= 27/06/2026 17:01:01
[2026-06-27 17:01:01,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:01:01,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:01:01,839.839 INFO    ] No existing commands found in stream
[2026-06-27 17:01:06,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:01:06,851.851 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-27 17:01:08,889.889 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 17:01:08,890.890 INFO    ] Checking for system updates...
[2026-06-27 17:01:08,911.911 INFO    ] 200
[2026-06-27 17:01:08,912.912 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:01:08,947.947 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:01:08,948.948 INFO    ] No update needed
[2026-06-27 17:01:08,949.949 INFO    ] Checking for camera pi updates...
[2026-06-27 17:01:08,969.969 INFO    ] 200
[2026-06-27 17:01:08,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:01:08,996.996 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:01:09,040.040 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:01:09,041.041 INFO    ] No camera update needed
[2026-06-27 17:01:09,042.042 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:01:09,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:01:09,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:01:09,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:01:11,079.079 INFO    ] ================================================
[2026-06-27 17:01:11,088.088 INFO    ] Launching Daemon at Sat Jun 27 17:01:11 IST 2026
[2026-06-27 17:01:11,094.094 INFO    ] ================================================
[2026-06-27 17:01:11,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:01:11
[2026-06-27 17:01:11,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:01:11,888.888 INFO    ] Initializing speech engine...
[2026-06-27 17:01:11,896.896 INFO    ] 2026-06-27 17:01:11
[2026-06-27 17:01:12,113.113 INFO    ] 2026-06-27 17:01:12
[2026-06-27 17:01:12,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:01:12,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:01:12,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:01:12,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:01:12,544.544 INFO    ] time= 27/06/2026 17:01:12
[2026-06-27 17:01:12,567.567 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:01:12,572.572 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:01:12,641.641 INFO    ] No existing commands found in stream
[2026-06-27 17:01:17,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:01:17,652.652 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-27 17:01:18,715.715 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 17:01:18,717.717 INFO    ] Checking for system updates...
[2026-06-27 17:01:18,738.738 INFO    ] 200
[2026-06-27 17:01:18,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:01:18,772.772 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:01:18,773.773 INFO    ] No update needed
[2026-06-27 17:01:18,775.775 INFO    ] Checking for camera pi updates...
[2026-06-27 17:01:18,798.798 INFO    ] 200
[2026-06-27 17:01:18,799.799 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:01:18,826.826 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:01:18,868.868 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:01:18,870.870 INFO    ] No camera update needed
[2026-06-27 17:01:18,871.871 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:01:18,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:01:18,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:01:18,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:01:20,917.917 INFO    ] ================================================
[2026-06-27 17:01:20,932.932 INFO    ] Launching Daemon at Sat Jun 27 17:01:20 IST 2026
[2026-06-27 17:01:20,942.942 INFO    ] ================================================
[2026-06-27 17:01:21,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:01:21
[2026-06-27 17:01:21,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:01:21,756.756 INFO    ] Initializing speech engine...
[2026-06-27 17:01:21,761.761 INFO    ] 2026-06-27 17:01:21
[2026-06-27 17:01:21,967.967 INFO    ] 2026-06-27 17:01:21
[2026-06-27 17:01:21,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:01:22,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:01:22,184.184 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:01:22,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:01:22,381.381 INFO    ] time= 27/06/2026 17:01:22
[2026-06-27 17:01:22,414.414 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:01:22,420.420 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:01:22,488.488 INFO    ] No existing commands found in stream
[2026-06-27 17:01:27,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:01:27,500.500 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-27 17:01:31,525.525 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 17:01:31,527.527 INFO    ] Checking for system updates...
[2026-06-27 17:01:31,554.554 INFO    ] 200
[2026-06-27 17:01:31,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:01:31,590.590 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:01:31,592.592 INFO    ] No update needed
[2026-06-27 17:01:31,593.593 INFO    ] Checking for camera pi updates...
[2026-06-27 17:01:31,617.617 INFO    ] 200
[2026-06-27 17:01:31,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:01:31,648.648 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:01:31,687.687 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:01:31,689.689 INFO    ] No camera update needed
[2026-06-27 17:01:31,691.691 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:01:31,692.692 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:01:31,696.696 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:01:31,699.699 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:01:33,739.739 INFO    ] ================================================
[2026-06-27 17:01:33,754.754 INFO    ] Launching Daemon at Sat Jun 27 17:01:33 IST 2026
[2026-06-27 17:01:33,765.765 INFO    ] ================================================
[2026-06-27 17:01:34,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:01:34
[2026-06-27 17:01:34,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:01:34,600.600 INFO    ] Initializing speech engine...
[2026-06-27 17:01:34,611.611 INFO    ] 2026-06-27 17:01:34
[2026-06-27 17:01:34,816.816 INFO    ] 2026-06-27 17:01:34
[2026-06-27 17:01:34,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:01:35,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:01:35,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:01:35,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:01:35,266.266 INFO    ] time= 27/06/2026 17:01:35
[2026-06-27 17:01:35,272.272 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:01:35,274.274 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:01:35,340.340 INFO    ] No existing commands found in stream
[2026-06-27 17:01:40,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:01:40,354.354 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-27 17:01:43,152.152 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 17:01:43,154.154 INFO    ] Checking for system updates...
[2026-06-27 17:01:43,176.176 INFO    ] 200
[2026-06-27 17:01:43,177.177 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:01:43,209.209 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:01:43,211.211 INFO    ] No update needed
[2026-06-27 17:01:43,212.212 INFO    ] Checking for camera pi updates...
[2026-06-27 17:01:43,232.232 INFO    ] 200
[2026-06-27 17:01:43,234.234 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:01:43,259.259 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:01:43,301.301 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:01:43,302.302 INFO    ] No camera update needed
[2026-06-27 17:01:43,303.303 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:01:43,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:01:43,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:01:43,310.310 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:01:45,349.349 INFO    ] ================================================
[2026-06-27 17:01:45,364.364 INFO    ] Launching Daemon at Sat Jun 27 17:01:45 IST 2026
[2026-06-27 17:01:45,375.375 INFO    ] ================================================
[2026-06-27 17:01:45,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:01:45
[2026-06-27 17:01:46,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:01:46,154.154 INFO    ] Initializing speech engine...
[2026-06-27 17:01:46,162.162 INFO    ] 2026-06-27 17:01:46
[2026-06-27 17:01:46,378.378 INFO    ] 2026-06-27 17:01:46
[2026-06-27 17:01:46,407.407 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:01:46,592.592 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:01:46,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:01:46,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:01:46,822.822 INFO    ] time= 27/06/2026 17:01:46
[2026-06-27 17:01:46,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:01:46,830.830 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:01:46,921.921 INFO    ] No existing commands found in stream
[2026-06-27 17:01:51,930.930 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:01:51,933.933 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-27 17:01:52,565.565 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 17:01:52,566.566 INFO    ] Checking for system updates...
[2026-06-27 17:01:52,587.587 INFO    ] 200
[2026-06-27 17:01:52,589.589 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:01:52,621.621 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:01:52,622.622 INFO    ] No update needed
[2026-06-27 17:01:52,623.623 INFO    ] Checking for camera pi updates...
[2026-06-27 17:01:52,643.643 INFO    ] 200
[2026-06-27 17:01:52,645.645 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:01:52,669.669 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:01:52,712.712 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:01:52,714.714 INFO    ] No camera update needed
[2026-06-27 17:01:52,715.715 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:01:52,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:01:52,719.719 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:01:52,722.722 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:01:54,761.761 INFO    ] ================================================
[2026-06-27 17:01:54,776.776 INFO    ] Launching Daemon at Sat Jun 27 17:01:54 IST 2026
[2026-06-27 17:01:54,787.787 INFO    ] ================================================
[2026-06-27 17:01:55,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:01:55
[2026-06-27 17:01:55,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:01:55,572.572 INFO    ] Initializing speech engine...
[2026-06-27 17:01:55,581.581 INFO    ] 2026-06-27 17:01:55
[2026-06-27 17:01:55,798.798 INFO    ] 2026-06-27 17:01:55
[2026-06-27 17:01:55,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:01:56,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:01:56,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:01:56,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:01:56,223.223 INFO    ] time= 27/06/2026 17:01:56
[2026-06-27 17:01:56,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:01:56,283.283 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:01:56,358.358 INFO    ] No existing commands found in stream
[2026-06-27 17:02:01,368.368 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:02:01,372.372 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-27 17:02:03,098.098 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 17:02:03,099.099 INFO    ] Checking for system updates...
[2026-06-27 17:02:03,121.121 INFO    ] 200
[2026-06-27 17:02:03,123.123 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:02:03,155.155 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:02:03,157.157 INFO    ] No update needed
[2026-06-27 17:02:03,158.158 INFO    ] Checking for camera pi updates...
[2026-06-27 17:02:03,179.179 INFO    ] 200
[2026-06-27 17:02:03,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:02:03,205.205 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:02:03,234.234 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:02:03,235.235 INFO    ] No camera update needed
[2026-06-27 17:02:03,237.237 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:02:03,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:02:03,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:02:03,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:02:05,282.282 INFO    ] ================================================
[2026-06-27 17:02:05,299.299 INFO    ] Launching Daemon at Sat Jun 27 17:02:05 IST 2026
[2026-06-27 17:02:05,310.310 INFO    ] ================================================
[2026-06-27 17:02:05,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:02:05
[2026-06-27 17:02:06,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:02:06,165.165 INFO    ] Initializing speech engine...
[2026-06-27 17:02:06,169.169 INFO    ] 2026-06-27 17:02:06
[2026-06-27 17:02:06,389.389 INFO    ] 2026-06-27 17:02:06
[2026-06-27 17:02:06,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:02:06,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:02:06,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:02:06,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:02:06,775.775 INFO    ] time= 27/06/2026 17:02:06
[2026-06-27 17:02:06,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:02:06,871.871 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:02:06,991.991 INFO    ] No existing commands found in stream
[2026-06-27 17:02:12,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:02:12,004.004 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-27 17:02:15,068.068 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 17:02:15,069.069 INFO    ] Checking for system updates...
[2026-06-27 17:02:15,091.091 INFO    ] 200
[2026-06-27 17:02:15,092.092 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:02:15,123.123 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:02:15,124.124 INFO    ] No update needed
[2026-06-27 17:02:15,126.126 INFO    ] Checking for camera pi updates...
[2026-06-27 17:02:15,147.147 INFO    ] 200
[2026-06-27 17:02:15,148.148 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:02:15,174.174 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:02:15,223.223 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:02:15,224.224 INFO    ] No camera update needed
[2026-06-27 17:02:15,226.226 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:02:15,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:02:15,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:02:15,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:02:17,273.273 INFO    ] ================================================
[2026-06-27 17:02:17,288.288 INFO    ] Launching Daemon at Sat Jun 27 17:02:17 IST 2026
[2026-06-27 17:02:17,299.299 INFO    ] ================================================
[2026-06-27 17:02:17,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:02:17
[2026-06-27 17:02:17,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:02:18,102.102 INFO    ] Initializing speech engine...
[2026-06-27 17:02:18,108.108 INFO    ] 2026-06-27 17:02:18
[2026-06-27 17:02:18,312.312 INFO    ] 2026-06-27 17:02:18
[2026-06-27 17:02:18,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:02:18,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:02:18,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:02:18,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:02:18,754.754 INFO    ] time= 27/06/2026 17:02:18
[2026-06-27 17:02:18,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:02:18,761.761 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:02:18,828.828 INFO    ] No existing commands found in stream
[2026-06-27 17:02:23,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:02:23,840.840 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-27 17:02:26,773.773 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 17:02:26,775.775 INFO    ] Checking for system updates...
[2026-06-27 17:02:26,797.797 INFO    ] 200
[2026-06-27 17:02:26,799.799 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:02:26,832.832 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:02:26,833.833 INFO    ] No update needed
[2026-06-27 17:02:26,834.834 INFO    ] Checking for camera pi updates...
[2026-06-27 17:02:26,854.854 INFO    ] 200
[2026-06-27 17:02:26,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:02:26,880.880 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:02:26,924.924 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:02:26,925.925 INFO    ] No camera update needed
[2026-06-27 17:02:26,927.927 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:02:26,928.928 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:02:26,931.931 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:02:26,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:02:28,972.972 INFO    ] ================================================
[2026-06-27 17:02:28,987.987 INFO    ] Launching Daemon at Sat Jun 27 17:02:28 IST 2026
[2026-06-27 17:02:29,999.999 INFO    ] ================================================
[2026-06-27 17:02:29,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:02:29
[2026-06-27 17:02:29,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:02:29,813.813 INFO    ] Initializing speech engine...
[2026-06-27 17:02:29,817.817 INFO    ] 2026-06-27 17:02:29
[2026-06-27 17:02:30,022.022 INFO    ] 2026-06-27 17:02:30
[2026-06-27 17:02:30,050.050 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:02:30,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:02:30,244.244 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:02:30,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:02:30,443.443 INFO    ] time= 27/06/2026 17:02:30
[2026-06-27 17:02:30,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:02:30,471.471 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:02:30,537.537 INFO    ] No existing commands found in stream
[2026-06-27 17:02:35,547.547 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:02:35,550.550 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-27 17:02:39,251.251 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 17:02:39,252.252 INFO    ] Checking for system updates...
[2026-06-27 17:02:39,273.273 INFO    ] 200
[2026-06-27 17:02:39,275.275 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:02:39,311.311 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:02:39,313.313 INFO    ] No update needed
[2026-06-27 17:02:39,314.314 INFO    ] Checking for camera pi updates...
[2026-06-27 17:02:39,335.335 INFO    ] 200
[2026-06-27 17:02:39,336.336 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:02:39,361.361 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:02:39,412.412 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:02:39,414.414 INFO    ] No camera update needed
[2026-06-27 17:02:39,415.415 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:02:39,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:02:39,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:02:39,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:02:41,461.461 INFO    ] ================================================
[2026-06-27 17:02:41,476.476 INFO    ] Launching Daemon at Sat Jun 27 17:02:41 IST 2026
[2026-06-27 17:02:41,487.487 INFO    ] ================================================
[2026-06-27 17:02:41,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:02:41
[2026-06-27 17:02:42,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:02:42,290.290 INFO    ] Initializing speech engine...
[2026-06-27 17:02:42,295.295 INFO    ] 2026-06-27 17:02:42
[2026-06-27 17:02:42,499.499 INFO    ] 2026-06-27 17:02:42
[2026-06-27 17:02:42,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:02:42,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:02:42,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:02:42,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:02:42,934.934 INFO    ] time= 27/06/2026 17:02:42
[2026-06-27 17:02:42,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:02:42,945.945 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:02:43,013.013 INFO    ] No existing commands found in stream
[2026-06-27 17:02:48,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:02:48,030.030 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-27 17:02:49,626.626 INFO    ] {'status': 'active', 'pickup_status': None, 'refill_group': None, 'user_id': '', 'command_request_data': '{"user":"server","action":"get_user_mobile_no","action_name":"Get User Mobile no","request_data":""}', 'command_for': 'server', 'created_at': '2026-06-27 17:02:48', 'compelete_refill': [{'sku_name': 'Max Protein Cheese jalapeno  32gm', 'check_enabled': True, 'quantity_in_db': '6', 'tray_id': '11', 'quantity_on_tray': '6', 'sku_id': '4500671'}, {'sku_name': 'Bingo Chips Chilli Sprinkled 30gm', 'check_enabled': True, 'quantity_in_db': '6', 'tray_id': '12', 'quantity_on_tray': '6', 'sku_id': '4500452'}, {'sku_name': 'MaxVita Indian Style Cream and onion Potato Chips 40gms', 'check_enabled': True, 'quantity_in_db': '1', 'tray_id': '13', 'quantity_on_tray': '1', 'sku_id': '4500713'}, {'sku_name': 'Ongibytes Garlic Muruku ', 'check_enabled': True, 'quantity_in_db': '8', 'tray_id': '15', 'quantity_on_tray': '8', 'sku_id': '4500605'}, {'sku_name': 'McVities Cashew almond  Cookies 58gm', 'check_enabled': True, 'quantity_in_db': '12', 'tray_id': '16', 'quantity_on_tray': '12', 'sku_id': '4500696'}, {'sku_name': 'McVities Orange Cream Biscuts 61gm', 'check_enabled': True, 'quantity_in_db': '3', 'tray_id': '18', 'quantity_on_tray': '3', 'sku_id': '4500681'}, {'sku_name': 'Modern kitchens Green Peas 26gm', 'check_enabled': True, 'quantity_in_db': '10', 'tray_id': '19', 'quantity_on_tray': '10', 'sku_id': '4500650'}, {'sku_name': 'Ongibytes Pepper Sev 35gm', 'check_enabled': True, 'quantity_in_db': '8', 'tray_id': '20', 'quantity_on_tray': '8', 'sku_id': '4500644'}, {'sku_name': 'Modern kitchens Banana Chips 21gm', 'check_enabled': True, 'quantity_in_db': '8', 'tray_id': '21', 'quantity_on_tray': '8', 'sku_id': '4500648'}, {'sku_name': 'Modern Kitchens Moong daal 30g', 'check_enabled': True, 'quantity_in_db': '10', 'tray_id': '25', 'quantity_on_tray': '10', 'sku_id': '4500646'}, {'sku_name': 'Modern kitchens Green Peas 26gm', 'check_enabled': True, 'quantity_in_db': '6', 'tray_id': '26', 'quantity_on_tray': '6', 'sku_id': '4500650'}, {'sku_name': 'Epigamia Chocolate Milkshake 200g', 'check_enabled': True, 'quantity_in_db': '1', 'tray_id': '31', 'quantity_on_tray': '1', 'sku_id': '166327'}, {'sku_name': 'Bindu Fizz Jeera Masala 250 ML', 'check_enabled': True, 'quantity_in_db': '8', 'tray_id': '33', 'quantity_on_tray': '8', 'sku_id': '186043'}, {'sku_name': 'Paper Boat Lychee 160ml', 'check_enabled': True, 'quantity_in_db': '1', 'tray_id': '36', 'quantity_on_tray': '1', 'sku_id': '4500675'}, {'sku_name': 'Cad bury Dairy Milk Chocolate 18gm', 'check_enabled': True, 'quantity_in_db': '15', 'tray_id': '40', 'quantity_on_tray': '15', 'sku_id': '4500541'}, {'sku_name': 'Cad bury Perk Plus 38g', 'check_enabled': True, 'quantity_in_db': '15', 'tray_id': '41', 'quantity_on_tray': '15', 'sku_id': '4500571'}, {'sku_name': 'Aatral Natural Electrolytes 200ml', 'check_enabled': True, 'quantity_in_db': '6', 'tray_id': '42', 'quantity_on_tray': '6', 'sku_id': '4500694'}, {'sku_name': 'Farmely Classic date Bites 20gm', 'check_enabled': True, 'quantity_in_db': '3', 'tray_id': '43', 'quantity_on_tray': '3', 'sku_id': '4500667'}, {'sku_name': 'Pepsi ZeroSugar  300ml', 'check_enabled': True, 'quantity_in_db': '6', 'tray_id': '44', 'quantity_on_tray': '6', 'sku_id': '186059'}, {'sku_name': 'Heritage livo Badam milk 180ml', 'check_enabled': True, 'quantity_in_db': '6', 'tray_id': '45', 'quantity_on_tray': '6', 'sku_id': '4500704'}, {'sku_name': 'MAA Mango flavoured Fruit drink 170ml', 'check_enabled': True, 'quantity_in_db': '1', 'tray_id': '46', 'quantity_on_tray': '1', 'sku_id': '4500706'}], 'odoo_posting_status': None, 'time_of_refill': None, 'last_command_response': None, 'expected_return_json': None, 'total_picking_qty': None, 'refilled_at': None, 'server_response': '', 'refill_started': None, 'slot': 'morning-1', 'edited_by': 'Barun', 'last_modified_at': '2026-06-26 16:54:06', 'all_command_response': None, 'transport_odoo_transaction': None, 'expected_return_qty': None, 'refill_id': '9689994', 'detailed_trays_json': '{"11":{"picking_quantity":6,"refill_quantity":"6","refill_qty":"6"},"12":{"picking_quantity":6,"refill_quantity":"6","refill_qty":"6"},"13":{"picking_quantity":1,"refill_quantity":"1","refill_qty":"1"},"15":{"picking_quantity":8,"refill_quantity":"8","refill_qty":"8"},"16":{"picking_quantity":12,"refill_quantity":"12","refill_qty":"12"},"18":{"picking_quantity":3,"refill_quantity":"3","refill_qty":"3"},"19":{"picking_quantity":10,"refill_quantity":"10","refill_qty":"10"},"20":{"picking_quantity":8,"refill_quantity":"8","refill_qty":"8"},"21":{"picking_quantity":8,"refill_quantity":"8","refill_qty":"8"},"25":{"picking_quantity":10,"refill_quantity":"10","refill_qty":"10"},"26":{"picking_quantity":6,"refill_quantity":"6","refill_qty":"6"},"31":{"picking_quantity":1,"refill_quantity":"1","refill_qty":"1"},"33":{"picking_quantity":8,"refill_quantity":"8","refill_qty":"8"},"36":{"picking_quantity":1,"refill_quantity":"1","refill_qty":"1"},"40":{"picking_quantity":15,"refill_quantity":"15","refill_qty":"15"},"41":{"picking_quantity":15,"refill_quantity":"15","refill_qty":"15"},"42":{"picking_quantity":6,"refill_quantity":"6","refill_qty":"6"},"43":{"picking_quantity":3,"refill_quantity":"3","refill_qty":"3"},"44":{"picking_quantity":6,"refill_quantity":"6","refill_qty":"6"},"45":{"picking_quantity":6,"refill_quantity":"6","refill_qty":"6"},"46":{"picking_quantity":1,"refill_quantity":"1","refill_qty":"1"}}', 'delivery_cluster': None, 'acceptance': None, 'tray_json': '[{"tray_id":"11","door_id":"1","tray_weight":"99999","sku_json":"4500671-6","org_sku":"4500671","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06"},{"tray_id":"12","door_id":"1","tray_weight":"99999","sku_json":"4500452-6","org_sku":"4500452","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06"},{"tray_id":"13","door_id":"1","tray_weight":"99999","sku_json":"4500713-1","org_sku":"4500713","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06"},{"tray_id":"15","door_id":"1","tray_weight":"99999","sku_json":"4500605-8","org_sku":"4500605","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06"},{"tray_id":"16","door_id":"1","tray_weight":"99999","sku_json":"4500696-12","org_sku":"4500696","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06"},{"tray_id":"18","door_id":"1","tray_weight":"99999","sku_json":"4500681-3","org_sku":"4500681","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06"},{"tray_id":"19","door_id":"1","tray_weight":"99999","sku_json":"4500650-10","org_sku":"4500650","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06"},{"tray_id":"20","door_id":"1","tray_weight":"99999","sku_json":"4500644-8","org_sku":"4500644","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06"},{"tray_id":"21","door_id":"1","tray_weight":"99999","sku_json":"4500648-8","org_sku":"4500648","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06"},{"tray_id":"25","door_id":"1","tray_weight":"99999","sku_json":"4500646-10","org_sku":"4500646","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06"},{"tray_id":"26","door_id":"1","tray_weight":"99999","sku_json":"4500650-6","org_sku":"4500650","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06"},{"tray_id":"31","door_id":"2","tray_weight":"99999","sku_json":"166327-1","org_sku":"166327","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06"},{"tray_id":"33","door_id":"2","tray_weight":"99999","sku_json":"186043-8","org_sku":"186043","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06"},{"tray_id":"36","door_id":"2","tray_weight":"99999","sku_json":"4500675-1","org_sku":"4500675","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06"},{"tray_id":"40","door_id":"2","tray_weight":"99999","sku_json":"4500541-15","org_sku":"4500541","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06"},{"tray_id":"41","door_id":"2","tray_weight":"99999","sku_json":"4500571-15","org_sku":"4500571","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06"},{"tray_id":"42","door_id":"2","tray_weight":"99999","sku_json":"4500694-6","org_sku":"4500694","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06"},{"tray_id":"43","door_id":"2","tray_weight":"99999","sku_json":"4500667-3","org_sku":"4500667","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06"},{"tray_id":"44","door_id":"2","tray_weight":"99999","sku_json":"186059-6","org_sku":"186059","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06"},{"tray_id":"45","door_id":"2","tray_weight":"99999","sku_json":"4500704-6","org_sku":"4500704","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06"},{"tray_id":"46","door_id":"2","tray_weight":"99999","sku_json":"4500706-1","org_sku":"4500706","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06"}]', 'accept_reject_timestamp': None, 'command_todo': 'interactive-refill', 'actual_return_json': None, 'reason_for_refill': None, 'server_status': 'in-progress', 'refill_odoo_transaction': None, 'imei': 'TM06202304', 'type_of_order': 'refill', 'refilled_by': None, 'total_quantity': '140', 'allocation_odoo_transaction': None, 'modified_at': '2026-06-27 17:02:48', 'vm_id': '1686833081377', 'refill_tool_version': None, 'vendor_id': '', 'order_id': '9689994', 'retrun_odoo_allocation': None, 'cleaning_needed': None, 'reallocation_odoo_transaction': None, 'date_of_refill': '2026-06-27', 'atcual_return_qty': None, 'return_odoo_transaction': None, 'reject_reason': None, 'response': {'status': True, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 17:02:49,627.627 INFO    ] processing refill code 9689994
[2026-06-27 17:02:49,648.648 INFO    ] 200
[2026-06-27 17:02:49,650.650 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:02:49,651.651 INFO    ] in-progress
[2026-06-27 17:02:49,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:02:49
[2026-06-27 17:02:49,733.733 INFO    ] 
inside get

[2026-06-27 17:02:49,735.735 INFO    ] 200
[2026-06-27 17:02:49,736.736 INFO    ] waiting for server
[2026-06-27 17:02:52,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:02:52
[2026-06-27 17:02:52,855.855 INFO    ] 
inside get

[2026-06-27 17:02:52,858.858 INFO    ] 200
[2026-06-27 17:02:52,860.860 INFO    ] waiting for server
[2026-06-27 17:02:55,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:02:55
[2026-06-27 17:02:55,943.943 INFO    ] 
inside get

[2026-06-27 17:02:55,946.946 INFO    ] 200
[2026-06-27 17:02:55,949.949 INFO    ] waiting for server
[2026-06-27 17:02:58,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:02:58
[2026-06-27 17:02:59,172.172 INFO    ] 
inside get

[2026-06-27 17:02:59,175.175 INFO    ] 200
[2026-06-27 17:02:59,178.178 INFO    ] processing machine command
[2026-06-27 17:02:59,180.180 INFO    ] {"user":"machine","action":"machine_mobile_otp_request","action_name":"Waiting for Machine to send OTP","request_data":{"user_id":9036356553,"txnType":"refill"}}
[2026-06-27 17:02:59,183.183 INFO    ] 9036356553
[2026-06-27 17:02:59,352.352 INFO    ] <__main__.ResponseWrapper object at 0x75baf910>
[2026-06-27 17:03:00,367.367 INFO    ] {"refill_id": ["9689994"], "allowed": "1", "success": "true", "otp": "7223"}
[2026-06-27 17:03:00,370.370 INFO    ] {"refill_id": ["9689994"], "allowed": "1", "success": "true", "otp": "7223"}
[2026-06-27 17:03:00,450.450 INFO    ] 
inside post

[2026-06-27 17:03:00,452.452 INFO    ] 200
[2026-06-27 17:03:00,453.453 INFO    ] {"order_id":"9689994","vm_id":"1686833081377","user_id":"9036356553","status":"active","server_status":"in-progress","server_response":"","command_todo":"interactive-refill","last_command_response":"{\"user_id\":9036356553,\"allowed\":\"1\",\"success\":\"true\",\"refill_id\":\"9689994\",\"otp\":\"7223\",\"user\":\"machine\"}","all_command_response":"[{\"action\":\"get_user_mobile_no\",\"mobile_no\":\"9036356553\",\"command_for\":\"server\"},{\"user_id\":9036356553,\"allowed\":\"1\",\"success\":\"true\",\"refill_id\":\"9689994\",\"otp\":\"7223\",\"user\":\"machine\"}]","type_of_order":"refill","command_request_data":"{\"user\":\"server\",\"action\":\"get_mobile_otp\",\"request_data\":{\"user_id\":9036356553,\"allowed\":\"1\",\"success\":\"true\",\"refill_id\":\"9689994\",\"otp\":\"7223\"},\"action_name\":\"Enter OTP\"}","command_for":"server","created_at":"2026-06-27 17:02:48","modified_at":"2026-06-27 17:03:00"}
[2026-06-27 17:03:00,455.455 INFO    ] {'server_response': '', 'status': 'active', 'server_status': 'in-progress', 'order_id': '9689994', 'type_of_order': 'refill', 'all_command_response': '[{"action":"get_user_mobile_no","mobile_no":"9036356553","command_for":"server"},{"user_id":9036356553,"allowed":"1","success":"true","refill_id":"9689994","otp":"7223","user":"machine"}]', 'command_for': 'server', 'created_at': '2026-06-27 17:02:48', 'command_request_data': '{"user":"server","action":"get_mobile_otp","request_data":{"user_id":9036356553,"allowed":"1","success":"true","refill_id":"9689994","otp":"7223"},"action_name":"Enter OTP"}', 'command_todo': 'interactive-refill', 'last_command_response': '{"user_id":9036356553,"allowed":"1","success":"true","refill_id":"9689994","otp":"7223","user":"machine"}', 'vm_id': '1686833081377', 'modified_at': '2026-06-27 17:03:00', 'user_id': '9036356553'}
[2026-06-27 17:03:00,456.456 INFO    ] in main while loops
[2026-06-27 17:03:03,463.463 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:03:03
[2026-06-27 17:03:03,539.539 INFO    ] 
inside get

[2026-06-27 17:03:03,542.542 INFO    ] 200
[2026-06-27 17:03:03,545.545 INFO    ] waiting for server
[2026-06-27 17:03:06,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:03:06
[2026-06-27 17:03:06,629.629 INFO    ] 
inside get

[2026-06-27 17:03:06,631.631 INFO    ] 200
[2026-06-27 17:03:06,634.634 INFO    ] waiting for server
[2026-06-27 17:03:09,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:03:09
[2026-06-27 17:03:09,719.719 INFO    ] 
inside get

[2026-06-27 17:03:09,721.721 INFO    ] 200
[2026-06-27 17:03:09,722.722 INFO    ] waiting for server
[2026-06-27 17:03:12,728.728 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:03:12
[2026-06-27 17:03:12,796.796 INFO    ] 
inside get

[2026-06-27 17:03:12,798.798 INFO    ] 200
[2026-06-27 17:03:12,800.800 INFO    ] processing machine command
[2026-06-27 17:03:12,802.802 INFO    ] {"user":"machine","action":"machine_auth_complete","action_name":"Waiting for Machine to Open Door","request_data":{"user_id":9036356553,"txnType":"refill"}}
[2026-06-27 17:03:12,804.804 INFO    ] 9036356553
[2026-06-27 17:03:12,990.990 INFO    ] 200
[2026-06-27 17:03:12,991.991 INFO    ] {"order_id": "TM06202304_refill_260627170312", "door_size": 2, "active_doors": ["1", "2"], "active_payment_gateways": "[{\"payments\": [{\"label\": \"PayTM\", \"name\": \"PayTM\", \"active\": 1}, {\"label\": \"PhonePe\", \"name\": \"PhonePe\", \"active\": 1}, {\"label\": \"Google Pay\", \"name\": \"GooglePay\", \"active\": 1}, {\"label\": \"BHIM UPI\", \"name\": \"BHIM\", \"active\": 1}], \"header\": \"QR Payments\"}, {\"payments\": [{\"label\": \"Sodexo Card\", \"name\": \"Sodexo\", \"active\": 1}, {\"label\": \"Credit/Debit Card\", \"name\": \"Card\", \"active\": 1}, {\"label\": \"QwikCilver\", \"name\": \"Qwikcilver\", \"active\": 0}], \"header\": \"Card Payments\"}, {\"payments\": [{\"label\": \"LazyPay\", \"name\": \"LazyPay\", \"active\": 1}, {\"label\": \"OLA Money\", \"name\": \"Ola\", \"active\": 0}, {\"label\": \"Tiny Wallet\", \"name\": \"Neuu\", \"active\": 0}], \"header\": \"Wallet Payments\"}]", "rstatus": true, "status": "True"}
[2026-06-27 17:03:12,993.993 INFO    ] TM06202304_refill_260627170312
[2026-06-27 17:03:12,995.995 INFO    ] {'status': 'active', 'pickup_status': None, 'refill_group': None, 'user_id': '', 'command_request_data': '{"user":"server","action":"get_user_mobile_no","action_name":"Get User Mobile no","request_data":""}', 'command_for': 'server', 'created_at': '2026-06-27 17:02:48', 'compelete_refill': [{'sku_name': 'Max Protein Cheese jalapeno  32gm', 'check_enabled': True, 'quantity_in_db': '6', 'tray_id': '11', 'quantity_on_tray': '6', 'sku_id': '4500671'}, {'sku_name': 'Bingo Chips Chilli Sprinkled 30gm', 'check_enabled': True, 'quantity_in_db': '6', 'tray_id': '12', 'quantity_on_tray': '6', 'sku_id': '4500452'}, {'sku_name': 'MaxVita Indian Style Cream and onion Potato Chips 40gms', 'check_enabled': True, 'quantity_in_db': '1', 'tray_id': '13', 'quantity_on_tray': '1', 'sku_id': '4500713'}, {'sku_name': 'Ongibytes Garlic Muruku ', 'check_enabled': True, 'quantity_in_db': '8', 'tray_id': '15', 'quantity_on_tray': '8', 'sku_id': '4500605'}, {'sku_name': 'McVities Cashew almond  Cookies 58gm', 'check_enabled': True, 'quantity_in_db': '12', 'tray_id': '16', 'quantity_on_tray': '12', 'sku_id': '4500696'}, {'sku_name': 'McVities Orange Cream Biscuts 61gm', 'check_enabled': True, 'quantity_in_db': '3', 'tray_id': '18', 'quantity_on_tray': '3', 'sku_id': '4500681'}, {'sku_name': 'Modern kitchens Green Peas 26gm', 'check_enabled': True, 'quantity_in_db': '10', 'tray_id': '19', 'quantity_on_tray': '10', 'sku_id': '4500650'}, {'sku_name': 'Ongibytes Pepper Sev 35gm', 'check_enabled': True, 'quantity_in_db': '8', 'tray_id': '20', 'quantity_on_tray': '8', 'sku_id': '4500644'}, {'sku_name': 'Modern kitchens Banana Chips 21gm', 'check_enabled': True, 'quantity_in_db': '8', 'tray_id': '21', 'quantity_on_tray': '8', 'sku_id': '4500648'}, {'sku_name': 'Modern Kitchens Moong daal 30g', 'check_enabled': True, 'quantity_in_db': '10', 'tray_id': '25', 'quantity_on_tray': '10', 'sku_id': '4500646'}, {'sku_name': 'Modern kitchens Green Peas 26gm', 'check_enabled': True, 'quantity_in_db': '6', 'tray_id': '26', 'quantity_on_tray': '6', 'sku_id': '4500650'}, {'sku_name': 'Epigamia Chocolate Milkshake 200g', 'check_enabled': True, 'quantity_in_db': '1', 'tray_id': '31', 'quantity_on_tray': '1', 'sku_id': '166327'}, {'sku_name': 'Bindu Fizz Jeera Masala 250 ML', 'check_enabled': True, 'quantity_in_db': '8', 'tray_id': '33', 'quantity_on_tray': '8', 'sku_id': '186043'}, {'sku_name': 'Paper Boat Lychee 160ml', 'check_enabled': True, 'quantity_in_db': '1', 'tray_id': '36', 'quantity_on_tray': '1', 'sku_id': '4500675'}, {'sku_name': 'Cad bury Dairy Milk Chocolate 18gm', 'check_enabled': True, 'quantity_in_db': '15', 'tray_id': '40', 'quantity_on_tray': '15', 'sku_id': '4500541'}, {'sku_name': 'Cad bury Perk Plus 38g', 'check_enabled': True, 'quantity_in_db': '15', 'tray_id': '41', 'quantity_on_tray': '15', 'sku_id': '4500571'}, {'sku_name': 'Aatral Natural Electrolytes 200ml', 'check_enabled': True, 'quantity_in_db': '6', 'tray_id': '42', 'quantity_on_tray': '6', 'sku_id': '4500694'}, {'sku_name': 'Farmely Classic date Bites 20gm', 'check_enabled': True, 'quantity_in_db': '3', 'tray_id': '43', 'quantity_on_tray': '3', 'sku_id': '4500667'}, {'sku_name': 'Pepsi ZeroSugar  300ml', 'check_enabled': True, 'quantity_in_db': '6', 'tray_id': '44', 'quantity_on_tray': '6', 'sku_id': '186059'}, {'sku_name': 'Heritage livo Badam milk 180ml', 'check_enabled': True, 'quantity_in_db': '6', 'tray_id': '45', 'quantity_on_tray': '6', 'sku_id': '4500704'}, {'sku_name': 'MAA Mango flavoured Fruit drink 170ml', 'check_enabled': True, 'quantity_in_db': '1', 'tray_id': '46', 'quantity_on_tray': '1', 'sku_id': '4500706'}], 'odoo_posting_status': None, 'time_of_refill': None, 'last_command_response': None, 'expected_return_json': None, 'total_picking_qty': None, 'refilled_at': None, 'server_response': '', 'refill_started': None, 'slot': 'morning-1', 'edited_by': 'Barun', 'last_modified_at': '2026-06-26 16:54:06', 'all_command_response': None, 'transport_odoo_transaction': None, 'expected_return_qty': None, 'refill_id': '9689994', 'detailed_trays_json': '{"11":{"picking_quantity":6,"refill_quantity":"6","refill_qty":"6"},"12":{"picking_quantity":6,"refill_quantity":"6","refill_qty":"6"},"13":{"picking_quantity":1,"refill_quantity":"1","refill_qty":"1"},"15":{"picking_quantity":8,"refill_quantity":"8","refill_qty":"8"},"16":{"picking_quantity":12,"refill_quantity":"12","refill_qty":"12"},"18":{"picking_quantity":3,"refill_quantity":"3","refill_qty":"3"},"19":{"picking_quantity":10,"refill_quantity":"10","refill_qty":"10"},"20":{"picking_quantity":8,"refill_quantity":"8","refill_qty":"8"},"21":{"picking_quantity":8,"refill_quantity":"8","refill_qty":"8"},"25":{"picking_quantity":10,"refill_quantity":"10","refill_qty":"10"},"26":{"picking_quantity":6,"refill_quantity":"6","refill_qty":"6"},"31":{"picking_quantity":1,"refill_quantity":"1","refill_qty":"1"},"33":{"picking_quantity":8,"refill_quantity":"8","refill_qty":"8"},"36":{"picking_quantity":1,"refill_quantity":"1","refill_qty":"1"},"40":{"picking_quantity":15,"refill_quantity":"15","refill_qty":"15"},"41":{"picking_quantity":15,"refill_quantity":"15","refill_qty":"15"},"42":{"picking_quantity":6,"refill_quantity":"6","refill_qty":"6"},"43":{"picking_quantity":3,"refill_quantity":"3","refill_qty":"3"},"44":{"picking_quantity":6,"refill_quantity":"6","refill_qty":"6"},"45":{"picking_quantity":6,"refill_quantity":"6","refill_qty":"6"},"46":{"picking_quantity":1,"refill_quantity":"1","refill_qty":"1"}}', 'delivery_cluster': None, 'acceptance': None, 'tray_json': '[{"tray_id":"11","door_id":"1","tray_weight":"99999","sku_json":"4500671-6","org_sku":"4500671","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06"},{"tray_id":"12","door_id":"1","tray_weight":"99999","sku_json":"4500452-6","org_sku":"4500452","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06"},{"tray_id":"13","door_id":"1","tray_weight":"99999","sku_json":"4500713-1","org_sku":"4500713","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06"},{"tray_id":"15","door_id":"1","tray_weight":"99999","sku_json":"4500605-8","org_sku":"4500605","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06"},{"tray_id":"16","door_id":"1","tray_weight":"99999","sku_json":"4500696-12","org_sku":"4500696","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06"},{"tray_id":"18","door_id":"1","tray_weight":"99999","sku_json":"4500681-3","org_sku":"4500681","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06"},{"tray_id":"19","door_id":"1","tray_weight":"99999","sku_json":"4500650-10","org_sku":"4500650","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06"},{"tray_id":"20","door_id":"1","tray_weight":"99999","sku_json":"4500644-8","org_sku":"4500644","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06"},{"tray_id":"21","door_id":"1","tray_weight":"99999","sku_json":"4500648-8","org_sku":"4500648","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06"},{"tray_id":"25","door_id":"1","tray_weight":"99999","sku_json":"4500646-10","org_sku":"4500646","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06"},{"tray_id":"26","door_id":"1","tray_weight":"99999","sku_json":"4500650-6","org_sku":"4500650","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06"},{"tray_id":"31","door_id":"2","tray_weight":"99999","sku_json":"166327-1","org_sku":"166327","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06"},{"tray_id":"33","door_id":"2","tray_weight":"99999","sku_json":"186043-8","org_sku":"186043","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06"},{"tray_id":"36","door_id":"2","tray_weight":"99999","sku_json":"4500675-1","org_sku":"4500675","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06"},{"tray_id":"40","door_id":"2","tray_weight":"99999","sku_json":"4500541-15","org_sku":"4500541","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06"},{"tray_id":"41","door_id":"2","tray_weight":"99999","sku_json":"4500571-15","org_sku":"4500571","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06"},{"tray_id":"42","door_id":"2","tray_weight":"99999","sku_json":"4500694-6","org_sku":"4500694","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06"},{"tray_id":"43","door_id":"2","tray_weight":"99999","sku_json":"4500667-3","org_sku":"4500667","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06"},{"tray_id":"44","door_id":"2","tray_weight":"99999","sku_json":"186059-6","org_sku":"186059","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06"},{"tray_id":"45","door_id":"2","tray_weight":"99999","sku_json":"4500704-6","org_sku":"4500704","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06"},{"tray_id":"46","door_id":"2","tray_weight":"99999","sku_json":"4500706-1","org_sku":"4500706","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06"}]', 'accept_reject_timestamp': None, 'command_todo': 'interactive-refill', 'actual_return_json': None, 'reason_for_refill': None, 'server_status': 'in-progress', 'refill_odoo_transaction': None, 'imei': 'TM06202304', 'type_of_order': 'refill', 'refilled_by': None, 'total_quantity': '140', 'allocation_odoo_transaction': None, 'modified_at': '2026-06-27 17:02:48', 'vm_id': '1686833081377', 'refill_tool_version': None, 'vendor_id': '', 'order_id': 'TM06202304_refill_260627170312', 'retrun_odoo_allocation': None, 'cleaning_needed': None, 'reallocation_odoo_transaction': None, 'date_of_refill': '2026-06-27', 'atcual_return_qty': None, 'return_odoo_transaction': None, 'reject_reason': None, 'response': {'status': True, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 17:03:13,053.053 INFO    ] {"data": {}, "rstatus": true, "status": "True"}
[2026-06-27 17:03:13,054.054 INFO    ] {'status': 'True', 'rstatus': True, 'data': {}}
[2026-06-27 17:03:13,056.056 INFO    ] {'status': 'True', 'rstatus': True, 'data': {}}
[2026-06-27 17:03:13,144.144 INFO    ] 
inside post

[2026-06-27 17:03:13,146.146 INFO    ] 200
[2026-06-27 17:03:13,149.149 INFO    ] {"order_id":"9689994","vm_id":"1686833081377","user_id":"9036356553","status":"active","server_status":"in-progress","server_response":"","command_todo":"interactive-refill","last_command_response":"{\"door_size\":2,\"order_id\":\"TM06202304_refill_260627170312\",\"active_payment_gateways\":\"[{\\\"payments\\\": [{\\\"label\\\": \\\"PayTM\\\", \\\"name\\\": \\\"PayTM\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"PhonePe\\\", \\\"name\\\": \\\"PhonePe\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"Google Pay\\\", \\\"name\\\": \\\"GooglePay\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"BHIM UPI\\\", \\\"name\\\": \\\"BHIM\\\", \\\"active\\\": 1}], \\\"header\\\": \\\"QR Payments\\\"}, {\\\"payments\\\": [{\\\"label\\\": \\\"Sodexo Card\\\", \\\"name\\\": \\\"Sodexo\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"Credit\\\/Debit Card\\\", \\\"name\\\": \\\"Card\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"QwikCilver\\\", \\\"name\\\": \\\"Qwikcilver\\\", \\\"active\\\": 0}], \\\"header\\\": \\\"Card Payments\\\"}, {\\\"payments\\\": [{\\\"label\\\": \\\"LazyPay\\\", \\\"name\\\": \\\"LazyPay\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"OLA Money\\\", \\\"name\\\": \\\"Ola\\\", \\\"active\\\": 0}, {\\\"label\\\": \\\"Tiny Wallet\\\", \\\"name\\\": \\\"Neuu\\\", \\\"active\\\": 0}], \\\"header\\\": \\\"Wallet Payments\\\"}]\",\"status\":\"True\",\"user_id\":9036356553,\"refill_order_id\":\"TM06202304_refill_260627170312\",\"rstatus\":true,\"refill_id\":\"9689994\",\"active_doors\":[\"1\",\"2\"],\"user\":\"machine\"}","all_command_response":"[{\"action\":\"get_user_mobile_no\",\"mobile_no\":\"9036356553\",\"command_for\":\"server\"},{\"user_id\":9036356553,\"allowed\":\"1\",\"success\":\"true\",\"refill_id\":\"9689994\",\"otp\":\"7223\",\"user\":\"machine\"},{\"action\":\"get_mobile_otp\",\"mobile_no\":\"9036356553\",\"otp\":\"7223\",\"command_for\":\"server\"},{\"door_size\":2,\"order_id\":\"TM06202304_refill_260627170312\",\"active_payment_gateways\":\"[{\\\"payments\\\": [{\\\"label\\\": \\\"PayTM\\\", \\\"name\\\": \\\"PayTM\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"PhonePe\\\", \\\"name\\\": \\\"PhonePe\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"Google Pay\\\", \\\"name\\\": \\\"GooglePay\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"BHIM UPI\\\", \\\"name\\\": \\\"BHIM\\\", \\\"active\\\": 1}], \\\"header\\\": \\\"QR Payments\\\"}, {\\\"payments\\\": [{\\\"label\\\": \\\"Sodexo Card\\\", \\\"name\\\": \\\"Sodexo\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"Credit\\\/Debit Card\\\", \\\"name\\\": \\\"Card\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"QwikCilver\\\", \\\"name\\\": \\\"Qwikcilver\\\", \\\"active\\\": 0}], \\\"header\\\": \\\"Card Payments\\\"}, {\\\"payments\\\": [{\\\"label\\\": \\\"LazyPay\\\", \\\"name\\\": \\\"LazyPay\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"OLA Money\\\", \\\"name\\\": \\\"Ola\\\", \\\"active\\\": 0}, {\\\"label\\\": \\\"Tiny Wallet\\\", \\\"name\\\": \\\"Neuu\\\", \\\"active\\\": 0}], \\\"header\\\": \\\"Wallet Payments\\\"}]\",\"status\":\"True\",\"user_id\":9036356553,\"refill_order_id\":\"TM06202304_refill_260627170312\",\"rstatus\":true,\"refill_id\":\"9689994\",\"active_doors\":[\"1\",\"2\"],\"user\":\"machine\"}]","type_of_order":"refill","command_request_data":"{\"user\":\"server\",\"action\":\"open_door_process\",\"request_data\":{\"door_size\":2,\"order_id\":\"TM06202304_refill_260627170312\",\"active_payment_gateways\":\"[{\\\"payments\\\": [{\\\"label\\\": \\\"PayTM\\\", \\\"name\\\": \\\"PayTM\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"PhonePe\\\", \\\"name\\\": \\\"PhonePe\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"Google Pay\\\", \\\"name\\\": \\\"GooglePay\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"BHIM UPI\\\", \\\"name\\\": \\\"BHIM\\\", \\\"active\\\": 1}], \\\"header\\\": \\\"QR Payments\\\"}, {\\\"payments\\\": [{\\\"label\\\": \\\"Sodexo Card\\\", \\\"name\\\": \\\"Sodexo\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"Credit\\\/Debit Card\\\", \\\"name\\\": \\\"Card\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"QwikCilver\\\", \\\"name\\\": \\\"Qwikcilver\\\", \\\"active\\\": 0}], \\\"header\\\": \\\"Card Payments\\\"}, {\\\"payments\\\": [{\\\"label\\\": \\\"LazyPay\\\", \\\"name\\\": \\\"LazyPay\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"OLA Money\\\", \\\"name\\\": \\\"Ola\\\", \\\"active\\\": 0}, {\\\"label\\\": \\\"Tiny Wallet\\\", \\\"name\\\": \\\"Neuu\\\", \\\"active\\\": 0}], \\\"header\\\": \\\"Wallet Payments\\\"}]\",\"status\":\"True\",\"user_id\":9036356553,\"refill_order_id\":\"TM06202304_refill_260627170312\",\"rstatus\":true,\"refill_id\":\"9689994\",\"active_doors\":[\"1\",\"2\"]},\"action_name\":\"Select Door to Open\",\"refill_order_id\":\"TM06202304_refill_260627170312\",\"active_doors\":[\"1\",\"2\"]}","command_for":"server","created_at":"2026-06-27 17:02:48","modified_at":"2026-06-27 17:03:13"}
[2026-06-27 17:03:13,152.152 INFO    ] {'server_response': '', 'status': 'active', 'server_status': 'in-progress', 'order_id': '9689994', 'type_of_order': 'refill', 'all_command_response': '[{"action":"get_user_mobile_no","mobile_no":"9036356553","command_for":"server"},{"user_id":9036356553,"allowed":"1","success":"true","refill_id":"9689994","otp":"7223","user":"machine"},{"action":"get_mobile_otp","mobile_no":"9036356553","otp":"7223","command_for":"server"},{"door_size":2,"order_id":"TM06202304_refill_260627170312","active_payment_gateways":"[{\\"payments\\": [{\\"label\\": \\"PayTM\\", \\"name\\": \\"PayTM\\", \\"active\\": 1}, {\\"label\\": \\"PhonePe\\", \\"name\\": \\"PhonePe\\", \\"active\\": 1}, {\\"label\\": \\"Google Pay\\", \\"name\\": \\"GooglePay\\", \\"active\\": 1}, {\\"label\\": \\"BHIM UPI\\", \\"name\\": \\"BHIM\\", \\"active\\": 1}], \\"header\\": \\"QR Payments\\"}, {\\"payments\\": [{\\"label\\": \\"Sodexo Card\\", \\"name\\": \\"Sodexo\\", \\"active\\": 1}, {\\"label\\": \\"Credit\\/Debit Card\\", \\"name\\": \\"Card\\", \\"active\\": 1}, {\\"label\\": \\"QwikCilver\\", \\"name\\": \\"Qwikcilver\\", \\"active\\": 0}], \\"header\\": \\"Card Payments\\"}, {\\"payments\\": [{\\"label\\": \\"LazyPay\\", \\"name\\": \\"LazyPay\\", \\"active\\": 1}, {\\"label\\": \\"OLA Money\\", \\"name\\": \\"Ola\\", \\"active\\": 0}, {\\"label\\": \\"Tiny Wallet\\", \\"name\\": \\"Neuu\\", \\"active\\": 0}], \\"header\\": \\"Wallet Payments\\"}]","status":"True","user_id":9036356553,"refill_order_id":"TM06202304_refill_260627170312","rstatus":true,"refill_id":"9689994","active_doors":["1","2"],"user":"machine"}]', 'command_for': 'server', 'created_at': '2026-06-27 17:02:48', 'command_request_data': '{"user":"server","action":"open_door_process","request_data":{"door_size":2,"order_id":"TM06202304_refill_260627170312","active_payment_gateways":"[{\\"payments\\": [{\\"label\\": \\"PayTM\\", \\"name\\": \\"PayTM\\", \\"active\\": 1}, {\\"label\\": \\"PhonePe\\", \\"name\\": \\"PhonePe\\", \\"active\\": 1}, {\\"label\\": \\"Google Pay\\", \\"name\\": \\"GooglePay\\", \\"active\\": 1}, {\\"label\\": \\"BHIM UPI\\", \\"name\\": \\"BHIM\\", \\"active\\": 1}], \\"header\\": \\"QR Payments\\"}, {\\"payments\\": [{\\"label\\": \\"Sodexo Card\\", \\"name\\": \\"Sodexo\\", \\"active\\": 1}, {\\"label\\": \\"Credit\\/Debit Card\\", \\"name\\": \\"Card\\", \\"active\\": 1}, {\\"label\\": \\"QwikCilver\\", \\"name\\": \\"Qwikcilver\\", \\"active\\": 0}], \\"header\\": \\"Card Payments\\"}, {\\"payments\\": [{\\"label\\": \\"LazyPay\\", \\"name\\": \\"LazyPay\\", \\"active\\": 1}, {\\"label\\": \\"OLA Money\\", \\"name\\": \\"Ola\\", \\"active\\": 0}, {\\"label\\": \\"Tiny Wallet\\", \\"name\\": \\"Neuu\\", \\"active\\": 0}], \\"header\\": \\"Wallet Payments\\"}]","status":"True","user_id":9036356553,"refill_order_id":"TM06202304_refill_260627170312","rstatus":true,"refill_id":"9689994","active_doors":["1","2"]},"action_name":"Select Door to Open","refill_order_id":"TM06202304_refill_260627170312","active_doors":["1","2"]}', 'command_todo': 'interactive-refill', 'last_command_response': '{"door_size":2,"order_id":"TM06202304_refill_260627170312","active_payment_gateways":"[{\\"payments\\": [{\\"label\\": \\"PayTM\\", \\"name\\": \\"PayTM\\", \\"active\\": 1}, {\\"label\\": \\"PhonePe\\", \\"name\\": \\"PhonePe\\", \\"active\\": 1}, {\\"label\\": \\"Google Pay\\", \\"name\\": \\"GooglePay\\", \\"active\\": 1}, {\\"label\\": \\"BHIM UPI\\", \\"name\\": \\"BHIM\\", \\"active\\": 1}], \\"header\\": \\"QR Payments\\"}, {\\"payments\\": [{\\"label\\": \\"Sodexo Card\\", \\"name\\": \\"Sodexo\\", \\"active\\": 1}, {\\"label\\": \\"Credit\\/Debit Card\\", \\"name\\": \\"Card\\", \\"active\\": 1}, {\\"label\\": \\"QwikCilver\\", \\"name\\": \\"Qwikcilver\\", \\"active\\": 0}], \\"header\\": \\"Card Payments\\"}, {\\"payments\\": [{\\"label\\": \\"LazyPay\\", \\"name\\": \\"LazyPay\\", \\"active\\": 1}, {\\"label\\": \\"OLA Money\\", \\"name\\": \\"Ola\\", \\"active\\": 0}, {\\"label\\": \\"Tiny Wallet\\", \\"name\\": \\"Neuu\\", \\"active\\": 0}], \\"header\\": \\"Wallet Payments\\"}]","status":"True","user_id":9036356553,"refill_order_id":"TM06202304_refill_260627170312","rstatus":true,"refill_id":"9689994","active_doors":["1","2"],"user":"machine"}', 'vm_id': '1686833081377', 'modified_at': '2026-06-27 17:03:13', 'user_id': '9036356553'}
[2026-06-27 17:03:13,155.155 INFO    ] in main while loops
[2026-06-27 17:03:16,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:03:16
[2026-06-27 17:03:16,244.244 INFO    ] 
inside get

[2026-06-27 17:03:16,247.247 INFO    ] 200
[2026-06-27 17:03:16,250.250 INFO    ] waiting for server
[2026-06-27 17:03:19,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:03:19
[2026-06-27 17:03:19,365.365 INFO    ] 
inside get

[2026-06-27 17:03:19,367.367 INFO    ] 200
[2026-06-27 17:03:19,370.370 INFO    ] processing machine command
[2026-06-27 17:03:19,373.373 INFO    ] {"user":"machine","action":"open_door_process","request_data":{"order_id":"TM06202304_refill_260627170312","door_id":[1],"txnType":"refill","door_open_init":true},"action_name":"Waiting for Machine to Open Door","refill_order_id":"TM06202304_refill_260627170312","active_doors":["1","2"],"sub-action":"open_door_call"}
[2026-06-27 17:03:19,375.375 INFO    ] ####### REFIL OPEN DOOR ######## 
[2026-06-27 17:03:19,378.378 INFO    ] {'door_id': [1], 'txnType': 'refill', 'door_open_init': True, 'order_id': 'TM06202304_refill_260627170312'}
[2026-06-27 17:03:21,513.513 INFO    ] <__main__.ResponseWrapper object at 0x73db1a90>
[2026-06-27 17:03:25,533.533 INFO    ] <__main__.ResponseWrapper object at 0x73d970b0>
[2026-06-27 17:03:29,522.522 INFO    ] <__main__.ResponseWrapper object at 0x742be910>
[2026-06-27 17:03:33,562.562 INFO    ] <__main__.ResponseWrapper object at 0x73db1f30>
[2026-06-27 17:03:37,789.789 INFO    ] <__main__.ResponseWrapper object at 0x73d97690>
[2026-06-27 17:03:41,841.841 INFO    ] <__main__.ResponseWrapper object at 0x742be910>
[2026-06-27 17:03:45,280.280 INFO    ] 
inside post

[2026-06-27 17:03:45,281.281 INFO    ] 200
[2026-06-27 17:03:45,283.283 INFO    ] {"order_id":"9689994","vm_id":"1686833081377","user_id":"9036356553","status":"active","server_status":"in-progress","server_response":"","command_todo":"interactive-refill","last_command_response":"{\"SectionMain\":{\"Header\":\"Door Open\"},\"SectionStatus\":{\"SubHeader\":\"Please Pick products after opening\",\"UI_Header\":\"DOOR 1\\nIS \\nOPEN \\nNOW\",\"Header\":\"Opening Door 1\",\"Note\":\"Please wait for door to open\"},\"error\":{\"umessage\":\"In Progress\",\"code\":20001,\"tmessage\":\"In Progress\",\"data\":[]},\"status\":\"False\",\"voiceNote\":\"Opening Door 1\",\"rstatus\":false,\"SectionSKU\":{\"Header\":\"Pick the below items from the door\",\"skus\":[]},\"user\":\"machine\"}","all_command_response":"[{\"action\":\"get_user_mobile_no\",\"mobile_no\":\"9036356553\",\"command_for\":\"server\"},{\"user_id\":9036356553,\"allowed\":\"1\",\"success\":\"true\",\"refill_id\":\"9689994\",\"otp\":\"7223\",\"user\":\"machine\"},{\"action\":\"get_mobile_otp\",\"mobile_no\":\"9036356553\",\"otp\":\"7223\",\"command_for\":\"server\"},{\"door_size\":2,\"order_id\":\"TM06202304_refill_260627170312\",\"active_payment_gateways\":\"[{\\\"payments\\\": [{\\\"label\\\": \\\"PayTM\\\", \\\"name\\\": \\\"PayTM\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"PhonePe\\\", \\\"name\\\": \\\"PhonePe\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"Google Pay\\\", \\\"name\\\": \\\"GooglePay\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"BHIM UPI\\\", \\\"name\\\": \\\"BHIM\\\", \\\"active\\\": 1}], \\\"header\\\": \\\"QR Payments\\\"}, {\\\"payments\\\": [{\\\"label\\\": \\\"Sodexo Card\\\", \\\"name\\\": \\\"Sodexo\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"Credit\\\/Debit Card\\\", \\\"name\\\": \\\"Card\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"QwikCilver\\\", \\\"name\\\": \\\"Qwikcilver\\\", \\\"active\\\": 0}], \\\"header\\\": \\\"Card Payments\\\"}, {\\\"payments\\\": [{\\\"label\\\": \\\"LazyPay\\\", \\\"name\\\": \\\"LazyPay\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"OLA Money\\\", \\\"name\\\": \\\"Ola\\\", \\\"active\\\": 0}, {\\\"label\\\": \\\"Tiny Wallet\\\", \\\"name\\\": \\\"Neuu\\\", \\\"active\\\": 0}], \\\"header\\\": \\\"Wallet Payments\\\"}]\",\"status\":\"True\",\"user_id\":9036356553,\"refill_order_id\":\"TM06202304_refill_260627170312\",\"rstatus\":true,\"refill_id\":\"9689994\",\"active_doors\":[\"1\",\"2\"],\"user\":\"machine\"},{\"action\":\"open_door_call\",\"door_no\":\"1\",\"command_for\":\"server\"},{\"SectionMain\":{\"Header\":\"Door Open\"},\"SectionStatus\":{\"SubHeader\":\"Please Pick products after opening\",\"UI_Header\":\"DOOR 1\\nIS \\nOPEN \\nNOW\",\"Header\":\"Opening Door 1\",\"Note\":\"Please wait for door to open\"},\"error\":{\"umessage\":\"In Progress\",\"code\":20001,\"tmessage\":\"In Progress\",\"data\":[]},\"status\":\"False\",\"voiceNote\":\"Opening Door 1\",\"rstatus\":false,\"SectionSKU\":{\"Header\":\"Pick the below items from the door\",\"skus\":[]},\"user\":\"machine\"}]","type_of_order":"refill","command_request_data":"{\"user\":\"machine\",\"refill_order_id\":\"TM06202304_refill_260627170312\",\"response_data\":{\"SectionMain\":{\"Header\":\"Door Open\"},\"SectionStatus\":{\"SubHeader\":\"Please Pick products after opening\",\"UI_Header\":\"DOOR 1\\nIS \\nOPEN \\nNOW\",\"Header\":\"Opening Door 1\",\"Note\":\"Please wait for door to open\"},\"error\":{\"umessage\":\"In Progress\",\"code\":20001,\"tmessage\":\"In Progress\",\"data\":[]},\"status\":\"False\",\"voiceNote\":\"Opening Door 1\",\"rstatus\":false,\"SectionSKU\":{\"Header\":\"Pick the below items from the door\",\"skus\":[]}},\"action_name\":\"Select Door to Open\",\"action\":\"open_door_process\",\"sub-action\":\"open_door_process\",\"request_data\":[],\"active_doors\":[\"1\",\"2\"]}","command_for":"server","created_at":"2026-06-27 17:02:48","modified_at":"2026-06-27 17:03:45"}
[2026-06-27 17:03:45,286.286 INFO    ] {'server_response': '', 'status': 'active', 'server_status': 'in-progress', 'order_id': '9689994', 'type_of_order': 'refill', 'all_command_response': '[{"action":"get_user_mobile_no","mobile_no":"9036356553","command_for":"server"},{"user_id":9036356553,"allowed":"1","success":"true","refill_id":"9689994","otp":"7223","user":"machine"},{"action":"get_mobile_otp","mobile_no":"9036356553","otp":"7223","command_for":"server"},{"door_size":2,"order_id":"TM06202304_refill_260627170312","active_payment_gateways":"[{\\"payments\\": [{\\"label\\": \\"PayTM\\", \\"name\\": \\"PayTM\\", \\"active\\": 1}, {\\"label\\": \\"PhonePe\\", \\"name\\": \\"PhonePe\\", \\"active\\": 1}, {\\"label\\": \\"Google Pay\\", \\"name\\": \\"GooglePay\\", \\"active\\": 1}, {\\"label\\": \\"BHIM UPI\\", \\"name\\": \\"BHIM\\", \\"active\\": 1}], \\"header\\": \\"QR Payments\\"}, {\\"payments\\": [{\\"label\\": \\"Sodexo Card\\", \\"name\\": \\"Sodexo\\", \\"active\\": 1}, {\\"label\\": \\"Credit\\/Debit Card\\", \\"name\\": \\"Card\\", \\"active\\": 1}, {\\"label\\": \\"QwikCilver\\", \\"name\\": \\"Qwikcilver\\", \\"active\\": 0}], \\"header\\": \\"Card Payments\\"}, {\\"payments\\": [{\\"label\\": \\"LazyPay\\", \\"name\\": \\"LazyPay\\", \\"active\\": 1}, {\\"label\\": \\"OLA Money\\", \\"name\\": \\"Ola\\", \\"active\\": 0}, {\\"label\\": \\"Tiny Wallet\\", \\"name\\": \\"Neuu\\", \\"active\\": 0}], \\"header\\": \\"Wallet Payments\\"}]","status":"True","user_id":9036356553,"refill_order_id":"TM06202304_refill_260627170312","rstatus":true,"refill_id":"9689994","active_doors":["1","2"],"user":"machine"},{"action":"open_door_call","door_no":"1","command_for":"server"},{"SectionMain":{"Header":"Door Open"},"SectionStatus":{"SubHeader":"Please Pick products after opening","UI_Header":"DOOR 1\\nIS \\nOPEN \\nNOW","Header":"Opening Door 1","Note":"Please wait for door to open"},"error":{"umessage":"In Progress","code":20001,"tmessage":"In Progress","data":[]},"status":"False","voiceNote":"Opening Door 1","rstatus":false,"SectionSKU":{"Header":"Pick the below items from the door","skus":[]},"user":"machine"}]', 'command_for': 'server', 'created_at': '2026-06-27 17:02:48', 'command_request_data': '{"user":"machine","refill_order_id":"TM06202304_refill_260627170312","response_data":{"SectionMain":{"Header":"Door Open"},"SectionStatus":{"SubHeader":"Please Pick products after opening","UI_Header":"DOOR 1\\nIS \\nOPEN \\nNOW","Header":"Opening Door 1","Note":"Please wait for door to open"},"error":{"umessage":"In Progress","code":20001,"tmessage":"In Progress","data":[]},"status":"False","voiceNote":"Opening Door 1","rstatus":false,"SectionSKU":{"Header":"Pick the below items from the door","skus":[]}},"action_name":"Select Door to Open","action":"open_door_process","sub-action":"open_door_process","request_data":[],"active_doors":["1","2"]}', 'command_todo': 'interactive-refill', 'last_command_response': '{"SectionMain":{"Header":"Door Open"},"SectionStatus":{"SubHeader":"Please Pick products after opening","UI_Header":"DOOR 1\\nIS \\nOPEN \\nNOW","Header":"Opening Door 1","Note":"Please wait for door to open"},"error":{"umessage":"In Progress","code":20001,"tmessage":"In Progress","data":[]},"status":"False","voiceNote":"Opening Door 1","rstatus":false,"SectionSKU":{"Header":"Pick the below items from the door","skus":[]},"user":"machine"}', 'vm_id': '1686833081377', 'modified_at': '2026-06-27 17:03:45', 'user_id': '9036356553'}
[2026-06-27 17:03:45,287.287 INFO    ] {'server_response': '', 'status': 'active', 'server_status': 'in-progress', 'order_id': '9689994', 'type_of_order': 'refill', 'all_command_response': '[{"action":"get_user_mobile_no","mobile_no":"9036356553","command_for":"server"},{"user_id":9036356553,"allowed":"1","success":"true","refill_id":"9689994","otp":"7223","user":"machine"},{"action":"get_mobile_otp","mobile_no":"9036356553","otp":"7223","command_for":"server"},{"door_size":2,"order_id":"TM06202304_refill_260627170312","active_payment_gateways":"[{\\"payments\\": [{\\"label\\": \\"PayTM\\", \\"name\\": \\"PayTM\\", \\"active\\": 1}, {\\"label\\": \\"PhonePe\\", \\"name\\": \\"PhonePe\\", \\"active\\": 1}, {\\"label\\": \\"Google Pay\\", \\"name\\": \\"GooglePay\\", \\"active\\": 1}, {\\"label\\": \\"BHIM UPI\\", \\"name\\": \\"BHIM\\", \\"active\\": 1}], \\"header\\": \\"QR Payments\\"}, {\\"payments\\": [{\\"label\\": \\"Sodexo Card\\", \\"name\\": \\"Sodexo\\", \\"active\\": 1}, {\\"label\\": \\"Credit\\/Debit Card\\", \\"name\\": \\"Card\\", \\"active\\": 1}, {\\"label\\": \\"QwikCilver\\", \\"name\\": \\"Qwikcilver\\", \\"active\\": 0}], \\"header\\": \\"Card Payments\\"}, {\\"payments\\": [{\\"label\\": \\"LazyPay\\", \\"name\\": \\"LazyPay\\", \\"active\\": 1}, {\\"label\\": \\"OLA Money\\", \\"name\\": \\"Ola\\", \\"active\\": 0}, {\\"label\\": \\"Tiny Wallet\\", \\"name\\": \\"Neuu\\", \\"active\\": 0}], \\"header\\": \\"Wallet Payments\\"}]","status":"True","user_id":9036356553,"refill_order_id":"TM06202304_refill_260627170312","rstatus":true,"refill_id":"9689994","active_doors":["1","2"],"user":"machine"},{"action":"open_door_call","door_no":"1","command_for":"server"},{"SectionMain":{"Header":"Door Open"},"SectionStatus":{"SubHeader":"Please Pick products after opening","UI_Header":"DOOR 1\\nIS \\nOPEN \\nNOW","Header":"Opening Door 1","Note":"Please wait for door to open"},"error":{"umessage":"In Progress","code":20001,"tmessage":"In Progress","data":[]},"status":"False","voiceNote":"Opening Door 1","rstatus":false,"SectionSKU":{"Header":"Pick the below items from the door","skus":[]},"user":"machine"}]', 'command_for': 'server', 'created_at': '2026-06-27 17:02:48', 'command_request_data': '{"user":"machine","refill_order_id":"TM06202304_refill_260627170312","response_data":{"SectionMain":{"Header":"Door Open"},"SectionStatus":{"SubHeader":"Please Pick products after opening","UI_Header":"DOOR 1\\nIS \\nOPEN \\nNOW","Header":"Opening Door 1","Note":"Please wait for door to open"},"error":{"umessage":"In Progress","code":20001,"tmessage":"In Progress","data":[]},"status":"False","voiceNote":"Opening Door 1","rstatus":false,"SectionSKU":{"Header":"Pick the below items from the door","skus":[]}},"action_name":"Select Door to Open","action":"open_door_process","sub-action":"open_door_process","request_data":[],"active_doors":["1","2"]}', 'command_todo': 'interactive-refill', 'last_command_response': '{"SectionMain":{"Header":"Door Open"},"SectionStatus":{"SubHeader":"Please Pick products after opening","UI_Header":"DOOR 1\\nIS \\nOPEN \\nNOW","Header":"Opening Door 1","Note":"Please wait for door to open"},"error":{"umessage":"In Progress","code":20001,"tmessage":"In Progress","data":[]},"status":"False","voiceNote":"Opening Door 1","rstatus":false,"SectionSKU":{"Header":"Pick the below items from the door","skus":[]},"user":"machine"}', 'vm_id': '1686833081377', 'modified_at': '2026-06-27 17:03:45', 'user_id': '9036356553'}
[2026-06-27 17:03:45,289.289 INFO    ] in main while loops
[2026-06-27 17:03:48,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:03:48
[2026-06-27 17:03:48,381.381 INFO    ] 
inside get

[2026-06-27 17:03:48,384.384 INFO    ] 200
[2026-06-27 17:03:48,386.386 INFO    ] waiting for server
[2026-06-27 17:03:51,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:03:51
[2026-06-27 17:03:51,504.504 INFO    ] 
inside get

[2026-06-27 17:03:51,506.506 INFO    ] 200
[2026-06-27 17:03:51,508.508 INFO    ] waiting for server
[2026-06-27 17:03:54,513.513 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:03:54
[2026-06-27 17:03:54,641.641 INFO    ] 
inside get

[2026-06-27 17:03:54,644.644 INFO    ] 200
[2026-06-27 17:03:54,649.649 INFO    ] waiting for server
[2026-06-27 17:03:57,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:03:57
[2026-06-27 17:03:57,770.770 INFO    ] 
inside get

[2026-06-27 17:03:57,772.772 INFO    ] 200
[2026-06-27 17:03:57,777.777 INFO    ] waiting for server
[2026-06-27 17:04:00,784.784 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:04:00
[2026-06-27 17:04:00,966.966 INFO    ] 
inside get

[2026-06-27 17:04:00,969.969 INFO    ] 200
[2026-06-27 17:04:00,973.973 INFO    ] waiting for server
[2026-06-27 17:04:03,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:04:03
[2026-06-27 17:04:04,063.063 INFO    ] 
inside get

[2026-06-27 17:04:04,064.064 INFO    ] 200
[2026-06-27 17:04:04,066.066 INFO    ] waiting for server
[2026-06-27 17:04:07,072.072 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:04:07
[2026-06-27 17:04:07,181.181 INFO    ] 
inside get

[2026-06-27 17:04:07,183.183 INFO    ] 200
[2026-06-27 17:04:07,185.185 INFO    ] waiting for server
[2026-06-27 17:04:10,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:04:10
[2026-06-27 17:04:10,307.307 INFO    ] 
inside get

[2026-06-27 17:04:10,309.309 INFO    ] 200
[2026-06-27 17:04:10,311.311 INFO    ] waiting for server
[2026-06-27 17:04:13,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:04:13
[2026-06-27 17:04:13,426.426 INFO    ] 
inside get

[2026-06-27 17:04:13,429.429 INFO    ] 200
[2026-06-27 17:04:13,433.433 INFO    ] waiting for server
[2026-06-27 17:04:16,441.441 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:04:16
[2026-06-27 17:04:16,561.561 INFO    ] 
inside get

[2026-06-27 17:04:16,564.564 INFO    ] 200
[2026-06-27 17:04:16,568.568 INFO    ] waiting for server
[2026-06-27 17:04:19,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:04:19
[2026-06-27 17:04:19,662.662 INFO    ] 
inside get

[2026-06-27 17:04:19,665.665 INFO    ] 200
[2026-06-27 17:04:19,670.670 INFO    ] waiting for server
[2026-06-27 17:04:22,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:04:22
[2026-06-27 17:04:22,792.792 INFO    ] 
inside get

[2026-06-27 17:04:22,796.796 INFO    ] 200
[2026-06-27 17:04:22,801.801 INFO    ] waiting for server
[2026-06-27 17:04:25,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:04:25
[2026-06-27 17:04:25,929.929 INFO    ] 
inside get

[2026-06-27 17:04:25,932.932 INFO    ] 200
[2026-06-27 17:04:25,935.935 INFO    ] waiting for server
[2026-06-27 17:04:28,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:04:28
[2026-06-27 17:04:29,037.037 INFO    ] 
inside get

[2026-06-27 17:04:29,038.038 INFO    ] 200
[2026-06-27 17:04:29,040.040 INFO    ] waiting for server
[2026-06-27 17:04:32,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:04:32
[2026-06-27 17:04:32,130.130 INFO    ] 
inside get

[2026-06-27 17:04:32,132.132 INFO    ] 200
[2026-06-27 17:04:32,134.134 INFO    ] waiting for server
[2026-06-27 17:04:35,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:04:35
[2026-06-27 17:04:35,252.252 INFO    ] 
inside get

[2026-06-27 17:04:35,254.254 INFO    ] 200
[2026-06-27 17:04:35,263.263 INFO    ] waiting for server
[2026-06-27 17:04:38,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:04:38
[2026-06-27 17:04:38,376.376 INFO    ] 
inside get

[2026-06-27 17:04:38,379.379 INFO    ] 200
[2026-06-27 17:04:38,382.382 INFO    ] waiting for server
[2026-06-27 17:04:41,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:04:41
[2026-06-27 17:04:41,468.468 INFO    ] 
inside get

[2026-06-27 17:04:41,470.470 INFO    ] 200
[2026-06-27 17:04:41,473.473 INFO    ] waiting for server
[2026-06-27 17:04:44,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:04:44
[2026-06-27 17:04:44,601.601 INFO    ] 
inside get

[2026-06-27 17:04:44,604.604 INFO    ] 200
[2026-06-27 17:04:44,608.608 INFO    ] waiting for server
[2026-06-27 17:04:47,615.615 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:04:47
[2026-06-27 17:04:47,706.706 INFO    ] 
inside get

[2026-06-27 17:04:47,708.708 INFO    ] 200
[2026-06-27 17:04:47,709.709 INFO    ] waiting for server
[2026-06-27 17:04:50,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:04:50
[2026-06-27 17:04:50,840.840 INFO    ] 
inside get

[2026-06-27 17:04:50,842.842 INFO    ] 200
[2026-06-27 17:04:50,846.846 INFO    ] waiting for server
[2026-06-27 17:04:53,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:04:53
[2026-06-27 17:04:53,971.971 INFO    ] 
inside get

[2026-06-27 17:04:53,973.973 INFO    ] 200
[2026-06-27 17:04:53,977.977 INFO    ] waiting for server
[2026-06-27 17:04:56,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:04:56
[2026-06-27 17:04:57,073.073 INFO    ] 
inside get

[2026-06-27 17:04:57,075.075 INFO    ] 200
[2026-06-27 17:04:57,077.077 INFO    ] waiting for server
[2026-06-27 17:05:00,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:05:00
[2026-06-27 17:05:00,197.197 INFO    ] 
inside get

[2026-06-27 17:05:00,200.200 INFO    ] 200
[2026-06-27 17:05:00,204.204 INFO    ] waiting for server
[2026-06-27 17:05:03,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:05:03
[2026-06-27 17:05:03,302.302 INFO    ] 
inside get

[2026-06-27 17:05:03,305.305 INFO    ] 200
[2026-06-27 17:05:03,309.309 INFO    ] waiting for server
[2026-06-27 17:05:06,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:05:06
[2026-06-27 17:05:06,435.435 INFO    ] 
inside get

[2026-06-27 17:05:06,437.437 INFO    ] 200
[2026-06-27 17:05:06,439.439 INFO    ] waiting for server
[2026-06-27 17:05:09,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:05:09
[2026-06-27 17:05:09,546.546 INFO    ] 
inside get

[2026-06-27 17:05:09,548.548 INFO    ] 200
[2026-06-27 17:05:09,550.550 INFO    ] waiting for server
[2026-06-27 17:05:12,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:05:12
[2026-06-27 17:05:12,668.668 INFO    ] 
inside get

[2026-06-27 17:05:12,669.669 INFO    ] 200
[2026-06-27 17:05:12,672.672 INFO    ] waiting for server
[2026-06-27 17:05:15,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:05:15
[2026-06-27 17:05:15,772.772 INFO    ] 
inside get

[2026-06-27 17:05:15,775.775 INFO    ] 200
[2026-06-27 17:05:15,780.780 INFO    ] waiting for server
[2026-06-27 17:05:18,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:05:18
[2026-06-27 17:05:18,902.902 INFO    ] 
inside get

[2026-06-27 17:05:18,905.905 INFO    ] 200
[2026-06-27 17:05:18,909.909 INFO    ] waiting for server
[2026-06-27 17:05:21,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:05:21
[2026-06-27 17:05:22,365.365 INFO    ] 
inside get

[2026-06-27 17:05:22,368.368 INFO    ] 200
[2026-06-27 17:05:22,372.372 INFO    ] waiting for server
[2026-06-27 17:05:25,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:05:25
[2026-06-27 17:05:25,506.506 INFO    ] 
inside get

[2026-06-27 17:05:25,508.508 INFO    ] 200
[2026-06-27 17:05:25,512.512 INFO    ] waiting for server
[2026-06-27 17:05:28,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:05:28
[2026-06-27 17:05:28,638.638 INFO    ] 
inside get

[2026-06-27 17:05:28,642.642 INFO    ] 200
[2026-06-27 17:05:28,647.647 INFO    ] waiting for server
[2026-06-27 17:05:31,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:05:31
[2026-06-27 17:05:31,763.763 INFO    ] 
inside get

[2026-06-27 17:05:31,764.764 INFO    ] 200
[2026-06-27 17:05:31,767.767 INFO    ] waiting for server
[2026-06-27 17:05:34,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:05:34
[2026-06-27 17:05:34,872.872 INFO    ] 
inside get

[2026-06-27 17:05:34,875.875 INFO    ] 200
[2026-06-27 17:05:34,878.878 INFO    ] waiting for server
[2026-06-27 17:05:37,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:05:37
[2026-06-27 17:05:37,988.988 INFO    ] 
inside get

[2026-06-27 17:05:37,990.990 INFO    ] 200
[2026-06-27 17:05:37,992.992 INFO    ] waiting for server
[2026-06-27 17:05:40,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:05:40
[2026-06-27 17:05:41,111.111 INFO    ] 
inside get

[2026-06-27 17:05:41,112.112 INFO    ] 200
[2026-06-27 17:05:41,114.114 INFO    ] waiting for server
[2026-06-27 17:05:44,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:05:44
[2026-06-27 17:05:44,237.237 INFO    ] 
inside get

[2026-06-27 17:05:44,238.238 INFO    ] 200
[2026-06-27 17:05:44,240.240 INFO    ] waiting for server
[2026-06-27 17:05:47,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:05:47
[2026-06-27 17:05:47,336.336 INFO    ] 
inside get

[2026-06-27 17:05:47,338.338 INFO    ] 200
[2026-06-27 17:05:47,340.340 INFO    ] waiting for server
[2026-06-27 17:05:50,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:05:50
[2026-06-27 17:05:50,457.457 INFO    ] 
inside get

[2026-06-27 17:05:50,459.459 INFO    ] 200
[2026-06-27 17:05:50,461.461 INFO    ] waiting for server
[2026-06-27 17:05:53,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:05:53
[2026-06-27 17:05:53,581.581 INFO    ] 
inside get

[2026-06-27 17:05:53,592.592 INFO    ] 200
[2026-06-27 17:05:53,596.596 INFO    ] waiting for server
[2026-06-27 17:05:56,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:05:56
[2026-06-27 17:05:56,727.727 INFO    ] 
inside get

[2026-06-27 17:05:56,728.728 INFO    ] 200
[2026-06-27 17:05:56,730.730 INFO    ] waiting for server
[2026-06-27 17:05:59,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:05:59
[2026-06-27 17:05:59,820.820 INFO    ] 
inside get

[2026-06-27 17:05:59,823.823 INFO    ] 200
[2026-06-27 17:05:59,827.827 INFO    ] waiting for server
[2026-06-27 17:06:02,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:06:02
[2026-06-27 17:06:02,931.931 INFO    ] 
inside get

[2026-06-27 17:06:02,934.934 INFO    ] 200
[2026-06-27 17:06:02,937.937 INFO    ] waiting for server
[2026-06-27 17:06:05,944.944 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:06:05
[2026-06-27 17:06:06,062.062 INFO    ] 
inside get

[2026-06-27 17:06:06,065.065 INFO    ] 200
[2026-06-27 17:06:06,068.068 INFO    ] waiting for server
[2026-06-27 17:06:09,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:06:09
[2026-06-27 17:06:09,157.157 INFO    ] 
inside get

[2026-06-27 17:06:09,160.160 INFO    ] 200
[2026-06-27 17:06:09,164.164 INFO    ] waiting for server
[2026-06-27 17:06:12,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:06:12
[2026-06-27 17:06:12,312.312 INFO    ] 
inside get

[2026-06-27 17:06:12,314.314 INFO    ] 200
[2026-06-27 17:06:12,316.316 INFO    ] waiting for server
[2026-06-27 17:06:15,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:06:15
[2026-06-27 17:06:15,437.437 INFO    ] 
inside get

[2026-06-27 17:06:15,438.438 INFO    ] 200
[2026-06-27 17:06:15,440.440 INFO    ] waiting for server
[2026-06-27 17:06:18,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:06:18
[2026-06-27 17:06:18,540.540 INFO    ] 
inside get

[2026-06-27 17:06:18,543.543 INFO    ] 200
[2026-06-27 17:06:18,547.547 INFO    ] waiting for server
[2026-06-27 17:06:21,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:06:21
[2026-06-27 17:06:21,667.667 INFO    ] 
inside get

[2026-06-27 17:06:21,668.668 INFO    ] 200
[2026-06-27 17:06:21,670.670 INFO    ] waiting for server
[2026-06-27 17:06:24,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:06:24
[2026-06-27 17:06:24,796.796 INFO    ] 
inside get

[2026-06-27 17:06:24,798.798 INFO    ] 200
[2026-06-27 17:06:24,802.802 INFO    ] waiting for server
[2026-06-27 17:06:27,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:06:27
[2026-06-27 17:06:27,897.897 INFO    ] 
inside get

[2026-06-27 17:06:27,898.898 INFO    ] 200
[2026-06-27 17:06:27,900.900 INFO    ] waiting for server
[2026-06-27 17:06:30,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:06:30
[2026-06-27 17:06:31,032.032 INFO    ] 
inside get

[2026-06-27 17:06:31,035.035 INFO    ] 200
[2026-06-27 17:06:31,039.039 INFO    ] waiting for server
[2026-06-27 17:06:34,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:06:34
[2026-06-27 17:06:34,123.123 INFO    ] 
inside get

[2026-06-27 17:06:34,125.125 INFO    ] 200
[2026-06-27 17:06:34,127.127 INFO    ] waiting for server
[2026-06-27 17:06:37,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:06:37
[2026-06-27 17:06:37,237.237 INFO    ] 
inside get

[2026-06-27 17:06:37,238.238 INFO    ] 200
[2026-06-27 17:06:37,240.240 INFO    ] waiting for server
[2026-06-27 17:06:40,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:06:40
[2026-06-27 17:06:40,361.361 INFO    ] 
inside get

[2026-06-27 17:06:40,363.363 INFO    ] 200
[2026-06-27 17:06:40,367.367 INFO    ] waiting for server
[2026-06-27 17:06:43,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:06:43
[2026-06-27 17:06:43,457.457 INFO    ] 
inside get

[2026-06-27 17:06:43,460.460 INFO    ] 200
[2026-06-27 17:06:43,463.463 INFO    ] waiting for server
[2026-06-27 17:06:46,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:06:46
[2026-06-27 17:06:46,590.590 INFO    ] 
inside get

[2026-06-27 17:06:46,593.593 INFO    ] 200
[2026-06-27 17:06:46,596.596 INFO    ] waiting for server
[2026-06-27 17:06:49,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:06:49
[2026-06-27 17:06:49,715.715 INFO    ] 
inside get

[2026-06-27 17:06:49,717.717 INFO    ] 200
[2026-06-27 17:06:49,721.721 INFO    ] waiting for server
[2026-06-27 17:06:52,725.725 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:06:52
[2026-06-27 17:06:52,856.856 INFO    ] 
inside get

[2026-06-27 17:06:52,858.858 INFO    ] 200
[2026-06-27 17:06:52,861.861 INFO    ] waiting for server
[2026-06-27 17:06:55,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:06:55
[2026-06-27 17:06:55,986.986 INFO    ] 
inside get

[2026-06-27 17:06:55,988.988 INFO    ] 200
[2026-06-27 17:06:55,990.990 INFO    ] waiting for server
[2026-06-27 17:06:58,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:06:58
[2026-06-27 17:06:59,098.098 INFO    ] 
inside get

[2026-06-27 17:06:59,099.099 INFO    ] 200
[2026-06-27 17:06:59,101.101 INFO    ] waiting for server
[2026-06-27 17:07:02,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:07:02
[2026-06-27 17:07:02,233.233 INFO    ] 
inside get

[2026-06-27 17:07:02,235.235 INFO    ] 200
[2026-06-27 17:07:02,238.238 INFO    ] waiting for server
[2026-06-27 17:07:05,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:07:05
[2026-06-27 17:07:05,358.358 INFO    ] 
inside get

[2026-06-27 17:07:05,359.359 INFO    ] 200
[2026-06-27 17:07:05,361.361 INFO    ] waiting for server
[2026-06-27 17:07:08,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:07:08
[2026-06-27 17:07:08,501.501 INFO    ] 
inside get

[2026-06-27 17:07:08,504.504 INFO    ] 200
[2026-06-27 17:07:08,511.511 INFO    ] waiting for server
[2026-06-27 17:07:11,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:07:11
[2026-06-27 17:07:11,634.634 INFO    ] 
inside get

[2026-06-27 17:07:11,637.637 INFO    ] 200
[2026-06-27 17:07:11,641.641 INFO    ] waiting for server
[2026-06-27 17:07:14,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:07:14
[2026-06-27 17:07:14,760.760 INFO    ] 
inside get

[2026-06-27 17:07:14,763.763 INFO    ] 200
[2026-06-27 17:07:14,767.767 INFO    ] waiting for server
[2026-06-27 17:07:17,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:07:17
[2026-06-27 17:07:17,983.983 INFO    ] 
inside get

[2026-06-27 17:07:17,986.986 INFO    ] 200
[2026-06-27 17:07:17,991.991 INFO    ] processing machine command
[2026-06-27 17:07:17,994.994 INFO    ] {"user":"machine","refill_order_id":"TM06202304_refill_260627170312","response_data":{"SectionMain":{"Header":"Door Open"},"SectionStatus":{"SubHeader":"Please Pick products after opening","UI_Header":"DOOR 1\nIS \nOPEN \nNOW","Header":"Opening Door 1","Note":"Please wait for door to open"},"error":{"umessage":"In Progress","code":20001,"tmessage":"In Progress","data":[]},"status":"False","voiceNote":"Opening Door 1","rstatus":false,"SectionSKU":{"Header":"Pick the below items from the door","skus":[]}},"action_name":"Waiting for Machine to Open Door","action":"open_door_process","sub-action":"open_door_call","request_data":{"order_id":"TM06202304_refill_260627170312","door_id":[2],"txnType":"refill","door_open_init":true},"active_doors":["1","2"]}
[2026-06-27 17:07:17,998.998 INFO    ] ####### REFIL OPEN DOOR ######## 
[2026-06-27 17:07:18,000.000 INFO    ] {'door_id': [2], 'txnType': 'refill', 'door_open_init': True, 'order_id': 'TM06202304_refill_260627170312'}
[2026-06-27 17:07:20,168.168 INFO    ] <__main__.ResponseWrapper object at 0x73db1d10>
[2026-06-27 17:07:24,206.206 INFO    ] <__main__.ResponseWrapper object at 0x73db1d50>
[2026-06-27 17:07:28,166.166 INFO    ] <__main__.ResponseWrapper object at 0x73d97c30>
[2026-06-27 17:07:32,255.255 INFO    ] <__main__.ResponseWrapper object at 0x73db1fb0>
[2026-06-27 17:07:36,191.191 INFO    ] <__main__.ResponseWrapper object at 0x73db18f0>
[2026-06-27 17:07:40,138.138 INFO    ] <__main__.ResponseWrapper object at 0x73d97c30>
[2026-06-27 17:07:43,682.682 INFO    ] 
inside post

[2026-06-27 17:07:43,684.684 INFO    ] 200
[2026-06-27 17:07:43,687.687 INFO    ] {"order_id":"9689994","vm_id":"1686833081377","user_id":"9036356553","status":"active","server_status":"in-progress","server_response":"","command_todo":"interactive-refill","last_command_response":"{\"SectionMain\":{\"Header\":\"Door Open\"},\"SectionStatus\":{\"SubHeader\":\"Please Pick products after opening\",\"UI_Header\":\"DOOR 2\\nIS \\nOPEN \\nNOW\",\"Header\":\"Opening Door 2\",\"Note\":\"Please wait for door to open\"},\"error\":{\"umessage\":\"In Progress\",\"code\":20001,\"tmessage\":\"In Progress\",\"data\":[]},\"status\":\"False\",\"voiceNote\":\"Opening Door 2\",\"rstatus\":false,\"SectionSKU\":{\"Header\":\"Pick the below items from the door\",\"skus\":[]},\"user\":\"machine\"}","all_command_response":"[{\"action\":\"get_user_mobile_no\",\"mobile_no\":\"9036356553\",\"command_for\":\"server\"},{\"user_id\":9036356553,\"allowed\":\"1\",\"success\":\"true\",\"refill_id\":\"9689994\",\"otp\":\"7223\",\"user\":\"machine\"},{\"action\":\"get_mobile_otp\",\"mobile_no\":\"9036356553\",\"otp\":\"7223\",\"command_for\":\"server\"},{\"door_size\":2,\"order_id\":\"TM06202304_refill_260627170312\",\"active_payment_gateways\":\"[{\\\"payments\\\": [{\\\"label\\\": \\\"PayTM\\\", \\\"name\\\": \\\"PayTM\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"PhonePe\\\", \\\"name\\\": \\\"PhonePe\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"Google Pay\\\", \\\"name\\\": \\\"GooglePay\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"BHIM UPI\\\", \\\"name\\\": \\\"BHIM\\\", \\\"active\\\": 1}], \\\"header\\\": \\\"QR Payments\\\"}, {\\\"payments\\\": [{\\\"label\\\": \\\"Sodexo Card\\\", \\\"name\\\": \\\"Sodexo\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"Credit\\\/Debit Card\\\", \\\"name\\\": \\\"Card\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"QwikCilver\\\", \\\"name\\\": \\\"Qwikcilver\\\", \\\"active\\\": 0}], \\\"header\\\": \\\"Card Payments\\\"}, {\\\"payments\\\": [{\\\"label\\\": \\\"LazyPay\\\", \\\"name\\\": \\\"LazyPay\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"OLA Money\\\", \\\"name\\\": \\\"Ola\\\", \\\"active\\\": 0}, {\\\"label\\\": \\\"Tiny Wallet\\\", \\\"name\\\": \\\"Neuu\\\", \\\"active\\\": 0}], \\\"header\\\": \\\"Wallet Payments\\\"}]\",\"status\":\"True\",\"user_id\":9036356553,\"refill_order_id\":\"TM06202304_refill_260627170312\",\"rstatus\":true,\"refill_id\":\"9689994\",\"active_doors\":[\"1\",\"2\"],\"user\":\"machine\"},{\"action\":\"open_door_call\",\"door_no\":\"1\",\"command_for\":\"server\"},{\"SectionMain\":{\"Header\":\"Door Open\"},\"SectionStatus\":{\"SubHeader\":\"Please Pick products after opening\",\"UI_Header\":\"DOOR 1\\nIS \\nOPEN \\nNOW\",\"Header\":\"Opening Door 1\",\"Note\":\"Please wait for door to open\"},\"error\":{\"umessage\":\"In Progress\",\"code\":20001,\"tmessage\":\"In Progress\",\"data\":[]},\"status\":\"False\",\"voiceNote\":\"Opening Door 1\",\"rstatus\":false,\"SectionSKU\":{\"Header\":\"Pick the below items from the door\",\"skus\":[]},\"user\":\"machine\"},{\"action\":\"open_door_call\",\"door_no\":\"2\",\"command_for\":\"server\"},{\"SectionMain\":{\"Header\":\"Door Open\"},\"SectionStatus\":{\"SubHeader\":\"Please Pick products after opening\",\"UI_Header\":\"DOOR 2\\nIS \\nOPEN \\nNOW\",\"Header\":\"Opening Door 2\",\"Note\":\"Please wait for door to open\"},\"error\":{\"umessage\":\"In Progress\",\"code\":20001,\"tmessage\":\"In Progress\",\"data\":[]},\"status\":\"False\",\"voiceNote\":\"Opening Door 2\",\"rstatus\":false,\"SectionSKU\":{\"Header\":\"Pick the below items from the door\",\"skus\":[]},\"user\":\"machine\"}]","type_of_order":"refill","command_request_data":"{\"user\":\"machine\",\"refill_order_id\":\"TM06202304_refill_260627170312\",\"response_data\":{\"SectionMain\":{\"Header\":\"Door Open\"},\"SectionStatus\":{\"SubHeader\":\"Please Pick products after opening\",\"UI_Header\":\"DOOR 2\\nIS \\nOPEN \\nNOW\",\"Header\":\"Opening Door 2\",\"Note\":\"Please wait for door to open\"},\"error\":{\"umessage\":\"In Progress\",\"code\":20001,\"tmessage\":\"In Progress\",\"data\":[]},\"status\":\"False\",\"voiceNote\":\"Opening Door 2\",\"rstatus\":false,\"SectionSKU\":{\"Header\":\"Pick the below items from the door\",\"skus\":[]}},\"action_name\":\"Select Door to Open\",\"action\":\"open_door_process\",\"active_doors\":[\"1\",\"2\"],\"sub-action\":\"open_door_process\",\"request_data\":[]}","command_for":"server","created_at":"2026-06-27 17:02:48","modified_at":"2026-06-27 17:07:43"}
[2026-06-27 17:07:43,690.690 INFO    ] {'server_response': '', 'status': 'active', 'server_status': 'in-progress', 'order_id': '9689994', 'type_of_order': 'refill', 'all_command_response': '[{"action":"get_user_mobile_no","mobile_no":"9036356553","command_for":"server"},{"user_id":9036356553,"allowed":"1","success":"true","refill_id":"9689994","otp":"7223","user":"machine"},{"action":"get_mobile_otp","mobile_no":"9036356553","otp":"7223","command_for":"server"},{"door_size":2,"order_id":"TM06202304_refill_260627170312","active_payment_gateways":"[{\\"payments\\": [{\\"label\\": \\"PayTM\\", \\"name\\": \\"PayTM\\", \\"active\\": 1}, {\\"label\\": \\"PhonePe\\", \\"name\\": \\"PhonePe\\", \\"active\\": 1}, {\\"label\\": \\"Google Pay\\", \\"name\\": \\"GooglePay\\", \\"active\\": 1}, {\\"label\\": \\"BHIM UPI\\", \\"name\\": \\"BHIM\\", \\"active\\": 1}], \\"header\\": \\"QR Payments\\"}, {\\"payments\\": [{\\"label\\": \\"Sodexo Card\\", \\"name\\": \\"Sodexo\\", \\"active\\": 1}, {\\"label\\": \\"Credit\\/Debit Card\\", \\"name\\": \\"Card\\", \\"active\\": 1}, {\\"label\\": \\"QwikCilver\\", \\"name\\": \\"Qwikcilver\\", \\"active\\": 0}], \\"header\\": \\"Card Payments\\"}, {\\"payments\\": [{\\"label\\": \\"LazyPay\\", \\"name\\": \\"LazyPay\\", \\"active\\": 1}, {\\"label\\": \\"OLA Money\\", \\"name\\": \\"Ola\\", \\"active\\": 0}, {\\"label\\": \\"Tiny Wallet\\", \\"name\\": \\"Neuu\\", \\"active\\": 0}], \\"header\\": \\"Wallet Payments\\"}]","status":"True","user_id":9036356553,"refill_order_id":"TM06202304_refill_260627170312","rstatus":true,"refill_id":"9689994","active_doors":["1","2"],"user":"machine"},{"action":"open_door_call","door_no":"1","command_for":"server"},{"SectionMain":{"Header":"Door Open"},"SectionStatus":{"SubHeader":"Please Pick products after opening","UI_Header":"DOOR 1\\nIS \\nOPEN \\nNOW","Header":"Opening Door 1","Note":"Please wait for door to open"},"error":{"umessage":"In Progress","code":20001,"tmessage":"In Progress","data":[]},"status":"False","voiceNote":"Opening Door 1","rstatus":false,"SectionSKU":{"Header":"Pick the below items from the door","skus":[]},"user":"machine"},{"action":"open_door_call","door_no":"2","command_for":"server"},{"SectionMain":{"Header":"Door Open"},"SectionStatus":{"SubHeader":"Please Pick products after opening","UI_Header":"DOOR 2\\nIS \\nOPEN \\nNOW","Header":"Opening Door 2","Note":"Please wait for door to open"},"error":{"umessage":"In Progress","code":20001,"tmessage":"In Progress","data":[]},"status":"False","voiceNote":"Opening Door 2","rstatus":false,"SectionSKU":{"Header":"Pick the below items from the door","skus":[]},"user":"machine"}]', 'command_for': 'server', 'created_at': '2026-06-27 17:02:48', 'command_request_data': '{"user":"machine","refill_order_id":"TM06202304_refill_260627170312","response_data":{"SectionMain":{"Header":"Door Open"},"SectionStatus":{"SubHeader":"Please Pick products after opening","UI_Header":"DOOR 2\\nIS \\nOPEN \\nNOW","Header":"Opening Door 2","Note":"Please wait for door to open"},"error":{"umessage":"In Progress","code":20001,"tmessage":"In Progress","data":[]},"status":"False","voiceNote":"Opening Door 2","rstatus":false,"SectionSKU":{"Header":"Pick the below items from the door","skus":[]}},"action_name":"Select Door to Open","action":"open_door_process","active_doors":["1","2"],"sub-action":"open_door_process","request_data":[]}', 'command_todo': 'interactive-refill', 'last_command_response': '{"SectionMain":{"Header":"Door Open"},"SectionStatus":{"SubHeader":"Please Pick products after opening","UI_Header":"DOOR 2\\nIS \\nOPEN \\nNOW","Header":"Opening Door 2","Note":"Please wait for door to open"},"error":{"umessage":"In Progress","code":20001,"tmessage":"In Progress","data":[]},"status":"False","voiceNote":"Opening Door 2","rstatus":false,"SectionSKU":{"Header":"Pick the below items from the door","skus":[]},"user":"machine"}', 'vm_id': '1686833081377', 'modified_at': '2026-06-27 17:07:43', 'user_id': '9036356553'}
[2026-06-27 17:07:43,693.693 INFO    ] {'server_response': '', 'status': 'active', 'server_status': 'in-progress', 'order_id': '9689994', 'type_of_order': 'refill', 'all_command_response': '[{"action":"get_user_mobile_no","mobile_no":"9036356553","command_for":"server"},{"user_id":9036356553,"allowed":"1","success":"true","refill_id":"9689994","otp":"7223","user":"machine"},{"action":"get_mobile_otp","mobile_no":"9036356553","otp":"7223","command_for":"server"},{"door_size":2,"order_id":"TM06202304_refill_260627170312","active_payment_gateways":"[{\\"payments\\": [{\\"label\\": \\"PayTM\\", \\"name\\": \\"PayTM\\", \\"active\\": 1}, {\\"label\\": \\"PhonePe\\", \\"name\\": \\"PhonePe\\", \\"active\\": 1}, {\\"label\\": \\"Google Pay\\", \\"name\\": \\"GooglePay\\", \\"active\\": 1}, {\\"label\\": \\"BHIM UPI\\", \\"name\\": \\"BHIM\\", \\"active\\": 1}], \\"header\\": \\"QR Payments\\"}, {\\"payments\\": [{\\"label\\": \\"Sodexo Card\\", \\"name\\": \\"Sodexo\\", \\"active\\": 1}, {\\"label\\": \\"Credit\\/Debit Card\\", \\"name\\": \\"Card\\", \\"active\\": 1}, {\\"label\\": \\"QwikCilver\\", \\"name\\": \\"Qwikcilver\\", \\"active\\": 0}], \\"header\\": \\"Card Payments\\"}, {\\"payments\\": [{\\"label\\": \\"LazyPay\\", \\"name\\": \\"LazyPay\\", \\"active\\": 1}, {\\"label\\": \\"OLA Money\\", \\"name\\": \\"Ola\\", \\"active\\": 0}, {\\"label\\": \\"Tiny Wallet\\", \\"name\\": \\"Neuu\\", \\"active\\": 0}], \\"header\\": \\"Wallet Payments\\"}]","status":"True","user_id":9036356553,"refill_order_id":"TM06202304_refill_260627170312","rstatus":true,"refill_id":"9689994","active_doors":["1","2"],"user":"machine"},{"action":"open_door_call","door_no":"1","command_for":"server"},{"SectionMain":{"Header":"Door Open"},"SectionStatus":{"SubHeader":"Please Pick products after opening","UI_Header":"DOOR 1\\nIS \\nOPEN \\nNOW","Header":"Opening Door 1","Note":"Please wait for door to open"},"error":{"umessage":"In Progress","code":20001,"tmessage":"In Progress","data":[]},"status":"False","voiceNote":"Opening Door 1","rstatus":false,"SectionSKU":{"Header":"Pick the below items from the door","skus":[]},"user":"machine"},{"action":"open_door_call","door_no":"2","command_for":"server"},{"SectionMain":{"Header":"Door Open"},"SectionStatus":{"SubHeader":"Please Pick products after opening","UI_Header":"DOOR 2\\nIS \\nOPEN \\nNOW","Header":"Opening Door 2","Note":"Please wait for door to open"},"error":{"umessage":"In Progress","code":20001,"tmessage":"In Progress","data":[]},"status":"False","voiceNote":"Opening Door 2","rstatus":false,"SectionSKU":{"Header":"Pick the below items from the door","skus":[]},"user":"machine"}]', 'command_for': 'server', 'created_at': '2026-06-27 17:02:48', 'command_request_data': '{"user":"machine","refill_order_id":"TM06202304_refill_260627170312","response_data":{"SectionMain":{"Header":"Door Open"},"SectionStatus":{"SubHeader":"Please Pick products after opening","UI_Header":"DOOR 2\\nIS \\nOPEN \\nNOW","Header":"Opening Door 2","Note":"Please wait for door to open"},"error":{"umessage":"In Progress","code":20001,"tmessage":"In Progress","data":[]},"status":"False","voiceNote":"Opening Door 2","rstatus":false,"SectionSKU":{"Header":"Pick the below items from the door","skus":[]}},"action_name":"Select Door to Open","action":"open_door_process","active_doors":["1","2"],"sub-action":"open_door_process","request_data":[]}', 'command_todo': 'interactive-refill', 'last_command_response': '{"SectionMain":{"Header":"Door Open"},"SectionStatus":{"SubHeader":"Please Pick products after opening","UI_Header":"DOOR 2\\nIS \\nOPEN \\nNOW","Header":"Opening Door 2","Note":"Please wait for door to open"},"error":{"umessage":"In Progress","code":20001,"tmessage":"In Progress","data":[]},"status":"False","voiceNote":"Opening Door 2","rstatus":false,"SectionSKU":{"Header":"Pick the below items from the door","skus":[]},"user":"machine"}', 'vm_id': '1686833081377', 'modified_at': '2026-06-27 17:07:43', 'user_id': '9036356553'}
[2026-06-27 17:07:43,696.696 INFO    ] in main while loops
[2026-06-27 17:07:46,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:07:46
[2026-06-27 17:07:46,778.778 INFO    ] 
inside get

[2026-06-27 17:07:46,779.779 INFO    ] 200
[2026-06-27 17:07:46,784.784 INFO    ] waiting for server
[2026-06-27 17:07:49,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:07:49
[2026-06-27 17:07:49,904.904 INFO    ] 
inside get

[2026-06-27 17:07:49,906.906 INFO    ] 200
[2026-06-27 17:07:49,908.908 INFO    ] waiting for server
[2026-06-27 17:07:52,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:07:52
[2026-06-27 17:07:53,028.028 INFO    ] 
inside get

[2026-06-27 17:07:53,031.031 INFO    ] 200
[2026-06-27 17:07:53,035.035 INFO    ] waiting for server
[2026-06-27 17:07:56,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:07:56
[2026-06-27 17:07:56,119.119 INFO    ] 
inside get

[2026-06-27 17:07:56,120.120 INFO    ] 200
[2026-06-27 17:07:56,122.122 INFO    ] waiting for server
[2026-06-27 17:07:59,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:07:59
[2026-06-27 17:07:59,221.221 INFO    ] 
inside get

[2026-06-27 17:07:59,224.224 INFO    ] 200
[2026-06-27 17:07:59,229.229 INFO    ] waiting for server
[2026-06-27 17:08:02,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:08:02
[2026-06-27 17:08:02,340.340 INFO    ] 
inside get

[2026-06-27 17:08:02,342.342 INFO    ] 200
[2026-06-27 17:08:02,349.349 INFO    ] waiting for server
[2026-06-27 17:08:05,356.356 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:08:05
[2026-06-27 17:08:05,438.438 INFO    ] 
inside get

[2026-06-27 17:08:05,439.439 INFO    ] 200
[2026-06-27 17:08:05,441.441 INFO    ] waiting for server
[2026-06-27 17:08:08,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:08:08
[2026-06-27 17:08:08,522.522 INFO    ] 
inside get

[2026-06-27 17:08:08,523.523 INFO    ] 200
[2026-06-27 17:08:08,525.525 INFO    ] waiting for server
[2026-06-27 17:08:11,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:08:11
[2026-06-27 17:08:11,632.632 INFO    ] 
inside get

[2026-06-27 17:08:11,634.634 INFO    ] 200
[2026-06-27 17:08:11,636.636 INFO    ] waiting for server
[2026-06-27 17:08:14,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:08:14
[2026-06-27 17:08:14,738.738 INFO    ] 
inside get

[2026-06-27 17:08:14,739.739 INFO    ] 200
[2026-06-27 17:08:14,741.741 INFO    ] waiting for server
[2026-06-27 17:08:17,746.746 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:08:17
[2026-06-27 17:08:17,843.843 INFO    ] 
inside get

[2026-06-27 17:08:17,845.845 INFO    ] 200
[2026-06-27 17:08:17,847.847 INFO    ] waiting for server
[2026-06-27 17:08:20,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:08:20
[2026-06-27 17:08:20,968.968 INFO    ] 
inside get

[2026-06-27 17:08:20,970.970 INFO    ] 200
[2026-06-27 17:08:20,989.989 INFO    ] waiting for server
[2026-06-27 17:08:23,995.995 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:08:23
[2026-06-27 17:08:24,074.074 INFO    ] 
inside get

[2026-06-27 17:08:24,075.075 INFO    ] 200
[2026-06-27 17:08:24,077.077 INFO    ] waiting for server
[2026-06-27 17:08:27,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:08:27
[2026-06-27 17:08:27,201.201 INFO    ] 
inside get

[2026-06-27 17:08:27,204.204 INFO    ] 200
[2026-06-27 17:08:27,207.207 INFO    ] waiting for server
[2026-06-27 17:08:30,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:08:30
[2026-06-27 17:08:30,288.288 INFO    ] 
inside get

[2026-06-27 17:08:30,290.290 INFO    ] 200
[2026-06-27 17:08:30,292.292 INFO    ] waiting for server
[2026-06-27 17:08:33,295.295 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:08:33
[2026-06-27 17:08:33,404.404 INFO    ] 
inside get

[2026-06-27 17:08:33,406.406 INFO    ] 200
[2026-06-27 17:08:33,408.408 INFO    ] waiting for server
[2026-06-27 17:08:36,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:08:36
[2026-06-27 17:08:36,538.538 INFO    ] 
inside get

[2026-06-27 17:08:36,541.541 INFO    ] 200
[2026-06-27 17:08:36,545.545 INFO    ] waiting for server
[2026-06-27 17:08:39,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:08:39
[2026-06-27 17:08:39,643.643 INFO    ] 
inside get

[2026-06-27 17:08:39,644.644 INFO    ] 200
[2026-06-27 17:08:39,646.646 INFO    ] waiting for server
[2026-06-27 17:08:42,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:08:42
[2026-06-27 17:08:42,882.882 INFO    ] 
inside get

[2026-06-27 17:08:42,885.885 INFO    ] 200
[2026-06-27 17:08:42,889.889 INFO    ] waiting for server
[2026-06-27 17:08:45,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:08:45
[2026-06-27 17:08:45,978.978 INFO    ] 
inside get

[2026-06-27 17:08:45,979.979 INFO    ] 200
[2026-06-27 17:08:45,981.981 INFO    ] waiting for server
[2026-06-27 17:08:48,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:08:48
[2026-06-27 17:08:49,091.091 INFO    ] 
inside get

[2026-06-27 17:08:49,092.092 INFO    ] 200
[2026-06-27 17:08:49,094.094 INFO    ] waiting for server
[2026-06-27 17:08:52,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:08:52
[2026-06-27 17:08:52,178.178 INFO    ] 
inside get

[2026-06-27 17:08:52,179.179 INFO    ] 200
[2026-06-27 17:08:52,181.181 INFO    ] waiting for server
[2026-06-27 17:08:55,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:08:55
[2026-06-27 17:08:55,297.297 INFO    ] 
inside get

[2026-06-27 17:08:55,300.300 INFO    ] 200
[2026-06-27 17:08:55,305.305 INFO    ] waiting for server
[2026-06-27 17:08:58,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:08:58
[2026-06-27 17:08:58,424.424 INFO    ] 
inside get

[2026-06-27 17:08:58,425.425 INFO    ] 200
[2026-06-27 17:08:58,427.427 INFO    ] waiting for server
[2026-06-27 17:09:01,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:09:01
[2026-06-27 17:09:01,553.553 INFO    ] 
inside get

[2026-06-27 17:09:01,564.564 INFO    ] 200
[2026-06-27 17:09:01,568.568 INFO    ] waiting for server
[2026-06-27 17:09:04,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:09:04
[2026-06-27 17:09:04,678.678 INFO    ] 
inside get

[2026-06-27 17:09:04,680.680 INFO    ] 200
[2026-06-27 17:09:04,685.685 INFO    ] waiting for server
[2026-06-27 17:09:07,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:09:07
[2026-06-27 17:09:07,769.769 INFO    ] 
inside get

[2026-06-27 17:09:07,772.772 INFO    ] 200
[2026-06-27 17:09:07,776.776 INFO    ] waiting for server
[2026-06-27 17:09:10,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:09:10
[2026-06-27 17:09:10,884.884 INFO    ] 
inside get

[2026-06-27 17:09:10,885.885 INFO    ] 200
[2026-06-27 17:09:10,887.887 INFO    ] waiting for server
[2026-06-27 17:09:13,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:09:13
[2026-06-27 17:09:13,998.998 INFO    ] 
inside get

[2026-06-27 17:09:13,999.999 INFO    ] 200
[2026-06-27 17:09:14,002.002 INFO    ] waiting for server
[2026-06-27 17:09:17,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:09:17
[2026-06-27 17:09:17,075.075 INFO    ] 
inside get

[2026-06-27 17:09:17,077.077 INFO    ] 200
[2026-06-27 17:09:17,079.079 INFO    ] waiting for server
[2026-06-27 17:09:20,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:09:20
[2026-06-27 17:09:20,217.217 INFO    ] 
inside get

[2026-06-27 17:09:20,219.219 INFO    ] 200
[2026-06-27 17:09:20,221.221 INFO    ] waiting for server
[2026-06-27 17:09:23,227.227 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:09:23
[2026-06-27 17:09:23,324.324 INFO    ] 
inside get

[2026-06-27 17:09:23,325.325 INFO    ] 200
[2026-06-27 17:09:23,327.327 INFO    ] waiting for server
[2026-06-27 17:09:26,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:09:26
[2026-06-27 17:09:26,419.419 INFO    ] 
inside get

[2026-06-27 17:09:26,421.421 INFO    ] 200
[2026-06-27 17:09:26,424.424 INFO    ] waiting for server
[2026-06-27 17:09:29,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:09:29
[2026-06-27 17:09:29,538.538 INFO    ] 
inside get

[2026-06-27 17:09:29,547.547 INFO    ] 200
[2026-06-27 17:09:29,551.551 INFO    ] waiting for server
[2026-06-27 17:09:32,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:09:32
[2026-06-27 17:09:32,664.664 INFO    ] 
inside get

[2026-06-27 17:09:32,666.666 INFO    ] 200
[2026-06-27 17:09:32,669.669 INFO    ] waiting for server
[2026-06-27 17:09:35,677.677 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:09:35
[2026-06-27 17:09:35,786.786 INFO    ] 
inside get

[2026-06-27 17:09:35,787.787 INFO    ] 200
[2026-06-27 17:09:35,789.789 INFO    ] waiting for server
[2026-06-27 17:09:38,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:09:38
[2026-06-27 17:09:38,899.899 INFO    ] 
inside get

[2026-06-27 17:09:38,901.901 INFO    ] 200
[2026-06-27 17:09:38,903.903 INFO    ] waiting for server
[2026-06-27 17:09:41,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:09:41
[2026-06-27 17:09:41,983.983 INFO    ] 
inside get

[2026-06-27 17:09:41,991.991 INFO    ] 200
[2026-06-27 17:09:41,993.993 INFO    ] waiting for server
[2026-06-27 17:09:45,000.000 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:09:44
[2026-06-27 17:09:45,107.107 INFO    ] 
inside get

[2026-06-27 17:09:45,110.110 INFO    ] 200
[2026-06-27 17:09:45,114.114 INFO    ] waiting for server
[2026-06-27 17:09:48,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:09:48
[2026-06-27 17:09:48,233.233 INFO    ] 
inside get

[2026-06-27 17:09:48,235.235 INFO    ] 200
[2026-06-27 17:09:48,237.237 INFO    ] waiting for server
[2026-06-27 17:09:51,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:09:51
[2026-06-27 17:09:51,328.328 INFO    ] 
inside get

[2026-06-27 17:09:51,329.329 INFO    ] 200
[2026-06-27 17:09:51,331.331 INFO    ] waiting for server
[2026-06-27 17:09:54,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:09:54
[2026-06-27 17:09:54,559.559 INFO    ] 
inside get

[2026-06-27 17:09:54,560.560 INFO    ] 200
[2026-06-27 17:09:54,562.562 INFO    ] waiting for server
[2026-06-27 17:09:57,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:09:57
[2026-06-27 17:09:57,658.658 INFO    ] 
inside get

[2026-06-27 17:09:57,662.662 INFO    ] 200
[2026-06-27 17:09:57,667.667 INFO    ] waiting for server
[2026-06-27 17:10:00,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:10:00
[2026-06-27 17:10:00,792.792 INFO    ] 
inside get

[2026-06-27 17:10:00,795.795 INFO    ] 200
[2026-06-27 17:10:00,799.799 INFO    ] waiting for server
[2026-06-27 17:10:03,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:10:03
[2026-06-27 17:10:03,903.903 INFO    ] 
inside get

[2026-06-27 17:10:03,906.906 INFO    ] 200
[2026-06-27 17:10:03,910.910 INFO    ] waiting for server
[2026-06-27 17:10:06,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:10:06
[2026-06-27 17:10:07,013.013 INFO    ] 
inside get

[2026-06-27 17:10:07,016.016 INFO    ] 200
[2026-06-27 17:10:07,020.020 INFO    ] waiting for server
[2026-06-27 17:10:10,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:10:10
[2026-06-27 17:10:10,144.144 INFO    ] 
inside get

[2026-06-27 17:10:10,147.147 INFO    ] 200
[2026-06-27 17:10:10,151.151 INFO    ] waiting for server
[2026-06-27 17:10:13,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:10:13
[2026-06-27 17:10:13,264.264 INFO    ] 
inside get

[2026-06-27 17:10:13,265.265 INFO    ] 200
[2026-06-27 17:10:13,267.267 INFO    ] waiting for server
[2026-06-27 17:10:16,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:10:16
[2026-06-27 17:10:16,362.362 INFO    ] 
inside get

[2026-06-27 17:10:16,365.365 INFO    ] 200
[2026-06-27 17:10:16,370.370 INFO    ] waiting for server
[2026-06-27 17:10:19,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:10:19
[2026-06-27 17:10:19,589.589 INFO    ] 
inside get

[2026-06-27 17:10:19,591.591 INFO    ] 200
[2026-06-27 17:10:19,596.596 INFO    ] waiting for server
[2026-06-27 17:10:22,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:10:22
[2026-06-27 17:10:22,680.680 INFO    ] 
inside get

[2026-06-27 17:10:22,682.682 INFO    ] 200
[2026-06-27 17:10:22,686.686 INFO    ] waiting for server
[2026-06-27 17:10:25,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:10:25
[2026-06-27 17:10:25,817.817 INFO    ] 
inside get

[2026-06-27 17:10:25,819.819 INFO    ] 200
[2026-06-27 17:10:25,821.821 INFO    ] waiting for server
[2026-06-27 17:10:28,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:10:28
[2026-06-27 17:10:28,938.938 INFO    ] 
inside get

[2026-06-27 17:10:28,941.941 INFO    ] 200
[2026-06-27 17:10:28,945.945 INFO    ] waiting for server
[2026-06-27 17:10:31,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:10:31
[2026-06-27 17:10:32,051.051 INFO    ] 
inside get

[2026-06-27 17:10:32,052.052 INFO    ] 200
[2026-06-27 17:10:32,057.057 INFO    ] waiting for server
[2026-06-27 17:10:35,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:10:35
[2026-06-27 17:10:35,155.155 INFO    ] 
inside get

[2026-06-27 17:10:35,158.158 INFO    ] 200
[2026-06-27 17:10:35,163.163 INFO    ] waiting for server
[2026-06-27 17:10:38,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:10:38
[2026-06-27 17:10:38,299.299 INFO    ] 
inside get

[2026-06-27 17:10:38,302.302 INFO    ] 200
[2026-06-27 17:10:38,306.306 INFO    ] waiting for server
[2026-06-27 17:10:41,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:10:41
[2026-06-27 17:10:41,418.418 INFO    ] 
inside get

[2026-06-27 17:10:41,420.420 INFO    ] 200
[2026-06-27 17:10:41,425.425 INFO    ] waiting for server
[2026-06-27 17:10:44,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:10:44
[2026-06-27 17:10:44,530.530 INFO    ] 
inside get

[2026-06-27 17:10:44,531.531 INFO    ] 200
[2026-06-27 17:10:44,533.533 INFO    ] waiting for server
[2026-06-27 17:10:47,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:10:47
[2026-06-27 17:10:47,645.645 INFO    ] 
inside get

[2026-06-27 17:10:47,648.648 INFO    ] 200
[2026-06-27 17:10:47,652.652 INFO    ] waiting for server
[2026-06-27 17:10:50,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:10:50
[2026-06-27 17:10:50,766.766 INFO    ] 
inside get

[2026-06-27 17:10:50,771.771 INFO    ] 200
[2026-06-27 17:10:50,778.778 INFO    ] waiting for server
[2026-06-27 17:10:53,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:10:53
[2026-06-27 17:10:53,887.887 INFO    ] 
inside get

[2026-06-27 17:10:53,890.890 INFO    ] 200
[2026-06-27 17:10:53,895.895 INFO    ] waiting for server
[2026-06-27 17:10:56,902.902 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:10:56
[2026-06-27 17:10:57,015.015 INFO    ] 
inside get

[2026-06-27 17:10:57,018.018 INFO    ] 200
[2026-06-27 17:10:57,022.022 INFO    ] waiting for server
[2026-06-27 17:11:00,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:11:00
[2026-06-27 17:11:00,138.138 INFO    ] 
inside get

[2026-06-27 17:11:00,140.140 INFO    ] 200
[2026-06-27 17:11:00,145.145 INFO    ] waiting for server
[2026-06-27 17:11:03,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:11:03
[2026-06-27 17:11:03,238.238 INFO    ] 
inside get

[2026-06-27 17:11:03,240.240 INFO    ] 200
[2026-06-27 17:11:03,242.242 INFO    ] waiting for server
[2026-06-27 17:11:06,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:11:06
[2026-06-27 17:11:06,354.354 INFO    ] 
inside get

[2026-06-27 17:11:06,357.357 INFO    ] 200
[2026-06-27 17:11:06,361.361 INFO    ] waiting for server
[2026-06-27 17:11:09,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:11:09
[2026-06-27 17:11:09,478.478 INFO    ] 
inside get

[2026-06-27 17:11:09,481.481 INFO    ] 200
[2026-06-27 17:11:09,486.486 INFO    ] waiting for server
[2026-06-27 17:11:12,494.494 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:11:12
[2026-06-27 17:11:12,608.608 INFO    ] 
inside get

[2026-06-27 17:11:12,611.611 INFO    ] 200
[2026-06-27 17:11:12,615.615 INFO    ] waiting for server
[2026-06-27 17:11:15,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:11:15
[2026-06-27 17:11:15,836.836 INFO    ] 
inside get

[2026-06-27 17:11:15,839.839 INFO    ] 200
[2026-06-27 17:11:15,845.845 INFO    ] waiting for server
[2026-06-27 17:11:18,859.859 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:11:18
[2026-06-27 17:11:18,978.978 INFO    ] 
inside get

[2026-06-27 17:11:18,981.981 INFO    ] 200
[2026-06-27 17:11:18,985.985 INFO    ] waiting for server
[2026-06-27 17:11:21,991.991 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:11:21
[2026-06-27 17:11:22,075.075 INFO    ] 
inside get

[2026-06-27 17:11:22,076.076 INFO    ] 200
[2026-06-27 17:11:22,078.078 INFO    ] waiting for server
[2026-06-27 17:11:25,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:11:25
[2026-06-27 17:11:25,176.176 INFO    ] 
inside get

[2026-06-27 17:11:25,179.179 INFO    ] 200
[2026-06-27 17:11:25,183.183 INFO    ] waiting for server
[2026-06-27 17:11:28,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:11:28
[2026-06-27 17:11:28,299.299 INFO    ] 
inside get

[2026-06-27 17:11:28,302.302 INFO    ] 200
[2026-06-27 17:11:28,306.306 INFO    ] waiting for server
[2026-06-27 17:11:31,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:11:31
[2026-06-27 17:11:31,400.400 INFO    ] 
inside get

[2026-06-27 17:11:31,403.403 INFO    ] 200
[2026-06-27 17:11:31,407.407 INFO    ] waiting for server
[2026-06-27 17:11:34,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:11:34
[2026-06-27 17:11:34,518.518 INFO    ] 
inside get

[2026-06-27 17:11:34,520.520 INFO    ] 200
[2026-06-27 17:11:34,525.525 INFO    ] waiting for server
[2026-06-27 17:11:37,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:11:37
[2026-06-27 17:11:37,612.612 INFO    ] 
inside get

[2026-06-27 17:11:37,614.614 INFO    ] 200
[2026-06-27 17:11:37,618.618 INFO    ] waiting for server
[2026-06-27 17:11:40,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:11:40
[2026-06-27 17:11:40,699.699 INFO    ] 
inside get

[2026-06-27 17:11:40,702.702 INFO    ] 200
[2026-06-27 17:11:40,705.705 INFO    ] processing machine command
[2026-06-27 17:11:40,708.708 INFO    ] {"user":"machine","refill_order_id":"TM06202304_refill_260627170312","response_data":{"SectionMain":{"Header":"Door Open"},"SectionStatus":{"SubHeader":"Please Pick products after opening","UI_Header":"DOOR 2\nIS \nOPEN \nNOW","Header":"Opening Door 2","Note":"Please wait for door to open"},"error":{"umessage":"In Progress","code":20001,"tmessage":"In Progress","data":[]},"status":"False","voiceNote":"Opening Door 2","rstatus":false,"SectionSKU":{"Header":"Pick the below items from the door","skus":[]}},"action_name":"Waiting for Machine to Open Door","action":"open_door_process","active_doors":["1","2"],"sub-action":"open_door_call","request_data":{"order_id":"TM06202304_refill_260627170312","door_id":[1],"txnType":"refill","door_open_init":true}}
[2026-06-27 17:11:40,710.710 INFO    ] ####### REFIL OPEN DOOR ######## 
[2026-06-27 17:11:40,713.713 INFO    ] {'door_id': [1], 'txnType': 'refill', 'door_open_init': True, 'order_id': 'TM06202304_refill_260627170312'}
[2026-06-27 17:11:42,803.803 INFO    ] <__main__.ResponseWrapper object at 0x73db1930>
[2026-06-27 17:11:46,760.760 INFO    ] <__main__.ResponseWrapper object at 0x73db1ff0>
[2026-06-27 17:11:50,651.651 INFO    ] <__main__.ResponseWrapper object at 0x73db1fd0>
[2026-06-27 17:11:54,787.787 INFO    ] <__main__.ResponseWrapper object at 0x73db1d90>
[2026-06-27 17:11:58,842.842 INFO    ] <__main__.ResponseWrapper object at 0x73db1790>
[2026-06-27 17:12:02,809.809 INFO    ] <__main__.ResponseWrapper object at 0x73db1db0>
[2026-06-27 17:12:06,227.227 INFO    ] 
inside post

[2026-06-27 17:12:06,228.228 INFO    ] 200
[2026-06-27 17:12:06,229.229 INFO    ] {"order_id":"9689994","vm_id":"1686833081377","user_id":"9036356553","status":"active","server_status":"in-progress","server_response":"","command_todo":"interactive-refill","last_command_response":"{\"SectionMain\":{\"Header\":\"Door Open\"},\"SectionStatus\":{\"SubHeader\":\"Please Pick products after opening\",\"UI_Header\":\"DOOR 1\\nIS \\nOPEN \\nNOW\",\"Header\":\"Opening Door 1\",\"Note\":\"Please wait for door to open\"},\"error\":{\"umessage\":\"In Progress\",\"code\":20001,\"tmessage\":\"In Progress\",\"data\":[]},\"status\":\"False\",\"voiceNote\":\"Opening Door 1\",\"rstatus\":false,\"SectionSKU\":{\"Header\":\"Pick the below items from the door\",\"skus\":[]},\"user\":\"machine\"}","all_command_response":"[{\"action\":\"get_user_mobile_no\",\"mobile_no\":\"9036356553\",\"command_for\":\"server\"},{\"user_id\":9036356553,\"allowed\":\"1\",\"success\":\"true\",\"refill_id\":\"9689994\",\"otp\":\"7223\",\"user\":\"machine\"},{\"action\":\"get_mobile_otp\",\"mobile_no\":\"9036356553\",\"otp\":\"7223\",\"command_for\":\"server\"},{\"door_size\":2,\"order_id\":\"TM06202304_refill_260627170312\",\"active_payment_gateways\":\"[{\\\"payments\\\": [{\\\"label\\\": \\\"PayTM\\\", \\\"name\\\": \\\"PayTM\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"PhonePe\\\", \\\"name\\\": \\\"PhonePe\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"Google Pay\\\", \\\"name\\\": \\\"GooglePay\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"BHIM UPI\\\", \\\"name\\\": \\\"BHIM\\\", \\\"active\\\": 1}], \\\"header\\\": \\\"QR Payments\\\"}, {\\\"payments\\\": [{\\\"label\\\": \\\"Sodexo Card\\\", \\\"name\\\": \\\"Sodexo\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"Credit\\\/Debit Card\\\", \\\"name\\\": \\\"Card\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"QwikCilver\\\", \\\"name\\\": \\\"Qwikcilver\\\", \\\"active\\\": 0}], \\\"header\\\": \\\"Card Payments\\\"}, {\\\"payments\\\": [{\\\"label\\\": \\\"LazyPay\\\", \\\"name\\\": \\\"LazyPay\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"OLA Money\\\", \\\"name\\\": \\\"Ola\\\", \\\"active\\\": 0}, {\\\"label\\\": \\\"Tiny Wallet\\\", \\\"name\\\": \\\"Neuu\\\", \\\"active\\\": 0}], \\\"header\\\": \\\"Wallet Payments\\\"}]\",\"status\":\"True\",\"user_id\":9036356553,\"refill_order_id\":\"TM06202304_refill_260627170312\",\"rstatus\":true,\"refill_id\":\"9689994\",\"active_doors\":[\"1\",\"2\"],\"user\":\"machine\"},{\"action\":\"open_door_call\",\"door_no\":\"1\",\"command_for\":\"server\"},{\"SectionMain\":{\"Header\":\"Door Open\"},\"SectionStatus\":{\"SubHeader\":\"Please Pick products after opening\",\"UI_Header\":\"DOOR 1\\nIS \\nOPEN \\nNOW\",\"Header\":\"Opening Door 1\",\"Note\":\"Please wait for door to open\"},\"error\":{\"umessage\":\"In Progress\",\"code\":20001,\"tmessage\":\"In Progress\",\"data\":[]},\"status\":\"False\",\"voiceNote\":\"Opening Door 1\",\"rstatus\":false,\"SectionSKU\":{\"Header\":\"Pick the below items from the door\",\"skus\":[]},\"user\":\"machine\"},{\"action\":\"open_door_call\",\"door_no\":\"2\",\"command_for\":\"server\"},{\"SectionMain\":{\"Header\":\"Door Open\"},\"SectionStatus\":{\"SubHeader\":\"Please Pick products after opening\",\"UI_Header\":\"DOOR 2\\nIS \\nOPEN \\nNOW\",\"Header\":\"Opening Door 2\",\"Note\":\"Please wait for door to open\"},\"error\":{\"umessage\":\"In Progress\",\"code\":20001,\"tmessage\":\"In Progress\",\"data\":[]},\"status\":\"False\",\"voiceNote\":\"Opening Door 2\",\"rstatus\":false,\"SectionSKU\":{\"Header\":\"Pick the below items from the door\",\"skus\":[]},\"user\":\"machine\"},{\"action\":\"open_door_call\",\"door_no\":\"1\",\"command_for\":\"server\"},{\"SectionMain\":{\"Header\":\"Door Open\"},\"SectionStatus\":{\"SubHeader\":\"Please Pick products after opening\",\"UI_Header\":\"DOOR 1\\nIS \\nOPEN \\nNOW\",\"Header\":\"Opening Door 1\",\"Note\":\"Please wait for door to open\"},\"error\":{\"umessage\":\"In Progress\",\"code\":20001,\"tmessage\":\"In Progress\",\"data\":[]},\"status\":\"False\",\"voiceNote\":\"Opening Door 1\",\"rstatus\":false,\"SectionSKU\":{\"Header\":\"Pick the below items from the door\",\"skus\":[]},\"user\":\"machine\"}]","type_of_order":"refill","command_request_data":"{\"user\":\"machine\",\"refill_order_id\":\"TM06202304_refill_260627170312\",\"request_data\":[],\"response_data\":{\"SectionMain\":{\"Header\":\"Door Open\"},\"SectionStatus\":{\"SubHeader\":\"Please Pick products after opening\",\"UI_Header\":\"DOOR 1\\nIS \\nOPEN \\nNOW\",\"Header\":\"Opening Door 1\",\"Note\":\"Please wait for door to open\"},\"error\":{\"umessage\":\"In Progress\",\"code\":20001,\"tmessage\":\"In Progress\",\"data\":[]},\"status\":\"False\",\"voiceNote\":\"Opening Door 1\",\"rstatus\":false,\"SectionSKU\":{\"Header\":\"Pick the below items from the door\",\"skus\":[]}},\"action_name\":\"Select Door to Open\",\"action\":\"open_door_process\",\"sub-action\":\"open_door_process\",\"active_doors\":[\"1\",\"2\"]}","command_for":"server","created_at":"2026-06-27 17:02:48","modified_at":"2026-06-27 17:12:06"}
[2026-06-27 17:12:06,232.232 INFO    ] {'server_response': '', 'status': 'active', 'server_status': 'in-progress', 'order_id': '9689994', 'type_of_order': 'refill', 'all_command_response': '[{"action":"get_user_mobile_no","mobile_no":"9036356553","command_for":"server"},{"user_id":9036356553,"allowed":"1","success":"true","refill_id":"9689994","otp":"7223","user":"machine"},{"action":"get_mobile_otp","mobile_no":"9036356553","otp":"7223","command_for":"server"},{"door_size":2,"order_id":"TM06202304_refill_260627170312","active_payment_gateways":"[{\\"payments\\": [{\\"label\\": \\"PayTM\\", \\"name\\": \\"PayTM\\", \\"active\\": 1}, {\\"label\\": \\"PhonePe\\", \\"name\\": \\"PhonePe\\", \\"active\\": 1}, {\\"label\\": \\"Google Pay\\", \\"name\\": \\"GooglePay\\", \\"active\\": 1}, {\\"label\\": \\"BHIM UPI\\", \\"name\\": \\"BHIM\\", \\"active\\": 1}], \\"header\\": \\"QR Payments\\"}, {\\"payments\\": [{\\"label\\": \\"Sodexo Card\\", \\"name\\": \\"Sodexo\\", \\"active\\": 1}, {\\"label\\": \\"Credit\\/Debit Card\\", \\"name\\": \\"Card\\", \\"active\\": 1}, {\\"label\\": \\"QwikCilver\\", \\"name\\": \\"Qwikcilver\\", \\"active\\": 0}], \\"header\\": \\"Card Payments\\"}, {\\"payments\\": [{\\"label\\": \\"LazyPay\\", \\"name\\": \\"LazyPay\\", \\"active\\": 1}, {\\"label\\": \\"OLA Money\\", \\"name\\": \\"Ola\\", \\"active\\": 0}, {\\"label\\": \\"Tiny Wallet\\", \\"name\\": \\"Neuu\\", \\"active\\": 0}], \\"header\\": \\"Wallet Payments\\"}]","status":"True","user_id":9036356553,"refill_order_id":"TM06202304_refill_260627170312","rstatus":true,"refill_id":"9689994","active_doors":["1","2"],"user":"machine"},{"action":"open_door_call","door_no":"1","command_for":"server"},{"SectionMain":{"Header":"Door Open"},"SectionStatus":{"SubHeader":"Please Pick products after opening","UI_Header":"DOOR 1\\nIS \\nOPEN \\nNOW","Header":"Opening Door 1","Note":"Please wait for door to open"},"error":{"umessage":"In Progress","code":20001,"tmessage":"In Progress","data":[]},"status":"False","voiceNote":"Opening Door 1","rstatus":false,"SectionSKU":{"Header":"Pick the below items from the door","skus":[]},"user":"machine"},{"action":"open_door_call","door_no":"2","command_for":"server"},{"SectionMain":{"Header":"Door Open"},"SectionStatus":{"SubHeader":"Please Pick products after opening","UI_Header":"DOOR 2\\nIS \\nOPEN \\nNOW","Header":"Opening Door 2","Note":"Please wait for door to open"},"error":{"umessage":"In Progress","code":20001,"tmessage":"In Progress","data":[]},"status":"False","voiceNote":"Opening Door 2","rstatus":false,"SectionSKU":{"Header":"Pick the below items from the door","skus":[]},"user":"machine"},{"action":"open_door_call","door_no":"1","command_for":"server"},{"SectionMain":{"Header":"Door Open"},"SectionStatus":{"SubHeader":"Please Pick products after opening","UI_Header":"DOOR 1\\nIS \\nOPEN \\nNOW","Header":"Opening Door 1","Note":"Please wait for door to open"},"error":{"umessage":"In Progress","code":20001,"tmessage":"In Progress","data":[]},"status":"False","voiceNote":"Opening Door 1","rstatus":false,"SectionSKU":{"Header":"Pick the below items from the door","skus":[]},"user":"machine"}]', 'command_for': 'server', 'created_at': '2026-06-27 17:02:48', 'command_request_data': '{"user":"machine","refill_order_id":"TM06202304_refill_260627170312","request_data":[],"response_data":{"SectionMain":{"Header":"Door Open"},"SectionStatus":{"SubHeader":"Please Pick products after opening","UI_Header":"DOOR 1\\nIS \\nOPEN \\nNOW","Header":"Opening Door 1","Note":"Please wait for door to open"},"error":{"umessage":"In Progress","code":20001,"tmessage":"In Progress","data":[]},"status":"False","voiceNote":"Opening Door 1","rstatus":false,"SectionSKU":{"Header":"Pick the below items from the door","skus":[]}},"action_name":"Select Door to Open","action":"open_door_process","sub-action":"open_door_process","active_doors":["1","2"]}', 'command_todo': 'interactive-refill', 'last_command_response': '{"SectionMain":{"Header":"Door Open"},"SectionStatus":{"SubHeader":"Please Pick products after opening","UI_Header":"DOOR 1\\nIS \\nOPEN \\nNOW","Header":"Opening Door 1","Note":"Please wait for door to open"},"error":{"umessage":"In Progress","code":20001,"tmessage":"In Progress","data":[]},"status":"False","voiceNote":"Opening Door 1","rstatus":false,"SectionSKU":{"Header":"Pick the below items from the door","skus":[]},"user":"machine"}', 'vm_id': '1686833081377', 'modified_at': '2026-06-27 17:12:06', 'user_id': '9036356553'}
[2026-06-27 17:12:06,233.233 INFO    ] {'server_response': '', 'status': 'active', 'server_status': 'in-progress', 'order_id': '9689994', 'type_of_order': 'refill', 'all_command_response': '[{"action":"get_user_mobile_no","mobile_no":"9036356553","command_for":"server"},{"user_id":9036356553,"allowed":"1","success":"true","refill_id":"9689994","otp":"7223","user":"machine"},{"action":"get_mobile_otp","mobile_no":"9036356553","otp":"7223","command_for":"server"},{"door_size":2,"order_id":"TM06202304_refill_260627170312","active_payment_gateways":"[{\\"payments\\": [{\\"label\\": \\"PayTM\\", \\"name\\": \\"PayTM\\", \\"active\\": 1}, {\\"label\\": \\"PhonePe\\", \\"name\\": \\"PhonePe\\", \\"active\\": 1}, {\\"label\\": \\"Google Pay\\", \\"name\\": \\"GooglePay\\", \\"active\\": 1}, {\\"label\\": \\"BHIM UPI\\", \\"name\\": \\"BHIM\\", \\"active\\": 1}], \\"header\\": \\"QR Payments\\"}, {\\"payments\\": [{\\"label\\": \\"Sodexo Card\\", \\"name\\": \\"Sodexo\\", \\"active\\": 1}, {\\"label\\": \\"Credit\\/Debit Card\\", \\"name\\": \\"Card\\", \\"active\\": 1}, {\\"label\\": \\"QwikCilver\\", \\"name\\": \\"Qwikcilver\\", \\"active\\": 0}], \\"header\\": \\"Card Payments\\"}, {\\"payments\\": [{\\"label\\": \\"LazyPay\\", \\"name\\": \\"LazyPay\\", \\"active\\": 1}, {\\"label\\": \\"OLA Money\\", \\"name\\": \\"Ola\\", \\"active\\": 0}, {\\"label\\": \\"Tiny Wallet\\", \\"name\\": \\"Neuu\\", \\"active\\": 0}], \\"header\\": \\"Wallet Payments\\"}]","status":"True","user_id":9036356553,"refill_order_id":"TM06202304_refill_260627170312","rstatus":true,"refill_id":"9689994","active_doors":["1","2"],"user":"machine"},{"action":"open_door_call","door_no":"1","command_for":"server"},{"SectionMain":{"Header":"Door Open"},"SectionStatus":{"SubHeader":"Please Pick products after opening","UI_Header":"DOOR 1\\nIS \\nOPEN \\nNOW","Header":"Opening Door 1","Note":"Please wait for door to open"},"error":{"umessage":"In Progress","code":20001,"tmessage":"In Progress","data":[]},"status":"False","voiceNote":"Opening Door 1","rstatus":false,"SectionSKU":{"Header":"Pick the below items from the door","skus":[]},"user":"machine"},{"action":"open_door_call","door_no":"2","command_for":"server"},{"SectionMain":{"Header":"Door Open"},"SectionStatus":{"SubHeader":"Please Pick products after opening","UI_Header":"DOOR 2\\nIS \\nOPEN \\nNOW","Header":"Opening Door 2","Note":"Please wait for door to open"},"error":{"umessage":"In Progress","code":20001,"tmessage":"In Progress","data":[]},"status":"False","voiceNote":"Opening Door 2","rstatus":false,"SectionSKU":{"Header":"Pick the below items from the door","skus":[]},"user":"machine"},{"action":"open_door_call","door_no":"1","command_for":"server"},{"SectionMain":{"Header":"Door Open"},"SectionStatus":{"SubHeader":"Please Pick products after opening","UI_Header":"DOOR 1\\nIS \\nOPEN \\nNOW","Header":"Opening Door 1","Note":"Please wait for door to open"},"error":{"umessage":"In Progress","code":20001,"tmessage":"In Progress","data":[]},"status":"False","voiceNote":"Opening Door 1","rstatus":false,"SectionSKU":{"Header":"Pick the below items from the door","skus":[]},"user":"machine"}]', 'command_for': 'server', 'created_at': '2026-06-27 17:02:48', 'command_request_data': '{"user":"machine","refill_order_id":"TM06202304_refill_260627170312","request_data":[],"response_data":{"SectionMain":{"Header":"Door Open"},"SectionStatus":{"SubHeader":"Please Pick products after opening","UI_Header":"DOOR 1\\nIS \\nOPEN \\nNOW","Header":"Opening Door 1","Note":"Please wait for door to open"},"error":{"umessage":"In Progress","code":20001,"tmessage":"In Progress","data":[]},"status":"False","voiceNote":"Opening Door 1","rstatus":false,"SectionSKU":{"Header":"Pick the below items from the door","skus":[]}},"action_name":"Select Door to Open","action":"open_door_process","sub-action":"open_door_process","active_doors":["1","2"]}', 'command_todo': 'interactive-refill', 'last_command_response': '{"SectionMain":{"Header":"Door Open"},"SectionStatus":{"SubHeader":"Please Pick products after opening","UI_Header":"DOOR 1\\nIS \\nOPEN \\nNOW","Header":"Opening Door 1","Note":"Please wait for door to open"},"error":{"umessage":"In Progress","code":20001,"tmessage":"In Progress","data":[]},"status":"False","voiceNote":"Opening Door 1","rstatus":false,"SectionSKU":{"Header":"Pick the below items from the door","skus":[]},"user":"machine"}', 'vm_id': '1686833081377', 'modified_at': '2026-06-27 17:12:06', 'user_id': '9036356553'}
[2026-06-27 17:12:06,235.235 INFO    ] in main while loops
[2026-06-27 17:12:09,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:12:09
[2026-06-27 17:12:09,363.363 INFO    ] 
inside get

[2026-06-27 17:12:09,373.373 INFO    ] 200
[2026-06-27 17:12:09,377.377 INFO    ] waiting for server
[2026-06-27 17:12:12,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:12:12
[2026-06-27 17:12:12,507.507 INFO    ] 
inside get

[2026-06-27 17:12:12,509.509 INFO    ] 200
[2026-06-27 17:12:12,522.522 INFO    ] processing machine command
[2026-06-27 17:12:12,525.525 INFO    ] {"user":"machine","refill_order_id":"TM06202304_refill_260627170312","request_data":{"order_id":"TM06202304_refill_260627170312","door_id":[1],"txnType":"refill","door_open_init":false},"response_data":{"SectionMain":{"Header":"Door Open"},"SectionStatus":{"SubHeader":"Please Pick products after opening","UI_Header":"DOOR 1\nIS \nOPEN \nNOW","Header":"Opening Door 1","Note":"Please wait for door to open"},"error":{"umessage":"In Progress","code":20001,"tmessage":"In Progress","data":[]},"status":"False","voiceNote":"Opening Door 1","rstatus":false,"SectionSKU":{"Header":"Pick the below items from the door","skus":[]}},"action_name":"Waiting for Machine to Complete Refill","action":"complete_refill","sub-action":"complete_refill","active_doors":["1","2"]}
[2026-06-27 17:12:12,528.528 INFO    ] {'door_id': [1], 'txnType': 'refill', 'door_open_init': False, 'order_id': 'TM06202304_refill_260627170312'}
[2026-06-27 17:12:28,305.305 INFO    ] {"tray_mismatches": [{"quantity_in_db": "6", "quantity_on_tray": "6", "tray_id": "11", "sku_name": "Max Protein Cheese jalapeno  32gm", "sku_id": "4500671"}, {"quantity_in_db": "6", "quantity_on_tray": "6", "tray_id": "12", "sku_name": "Bingo Chips Chilli Sprinkled 30gm", "sku_id": "4500452"}, {"quantity_in_db": "1", "quantity_on_tray": "6", "tray_id": "13", "sku_name": "MaxVita Indian Style Cream and onion Potato Chips 40gms", "sku_id": "4500713"}, {"quantity_in_db": "0", "quantity_on_tray": "6", "tray_id": "14", "sku_name": "Modern kitchens Garlic Mixture 26gm", "sku_id": "4500672"}, {"quantity_in_db": "8", "quantity_on_tray": "9", "tray_id": "15", "sku_name": "Ongibytes Garlic Muruku ", "sku_id": "4500605"}, {"quantity_in_db": "12", "quantity_on_tray": "10", "tray_id": "16", "sku_name": "McVities Cashew almond  Cookies 58gm", "sku_id": "4500696"}, {"quantity_in_db": "0", "quantity_on_tray": "9", "tray_id": "17", "sku_name": "Kiru Millet Crunchies Bayiruchi Masala 22gm", "sku_id": "4500558"}, {"quantity_in_db": "3", "quantity_on_tray": "13", "tray_id": "18", "sku_name": "McVities Orange Cream Biscuts 61gm", "sku_id": "4500681"}, {"quantity_in_db": "10", "quantity_on_tray": "9", "tray_id": "19", "sku_name": "Modern kitchens Green Peas 26gm", "sku_id": "4500650"}, {"quantity_in_db": "8", "quantity_on_tray": "8", "tray_id": "20", "sku_name": "Ongibytes Pepper Sev 35gm", "sku_id": "4500644"}, {"quantity_in_db": "8", "quantity_on_tray": "10", "tray_id": "21", "sku_name": "Modern kitchens Banana Chips 21gm", "sku_id": "4500648"}, {"quantity_in_db": "0", "quantity_on_tray": "11", "tray_id": "22", "sku_name": "McVities Butter Cookies 58gm", "sku_id": "4500697"}, {"quantity_in_db": "0", "quantity_on_tray": "5", "tray_id": "23", "sku_name": "Wellbe Crunchy Kodbale 25g", "sku_id": "4500570"}, {"quantity_in_db": "0", "quantity_on_tray": "8", "tray_id": "24", "sku_name": "MaxVita Premium crunch Rusk 51gm", "sku_id": "4500710"}, {"quantity_in_db": "10", "quantity_on_tray": "7", "tray_id": "25", "sku_name": "Modern Kitchens Moong daal 30g", "sku_id": "4500646"}, {"quantity_in_db": "6", "quantity_on_tray": "8", "tray_id": "26", "sku_name": "Modern kitchens Green Peas 26gm", "sku_id": "4500650"}, {"quantity_in_db": "0", "quantity_on_tray": "8", "tray_id": "27", "sku_name": "Modern kitchens Roasted Channa 32g", "sku_id": "4500647"}, {"quantity_in_db": "1", "quantity_on_tray": "5", "tray_id": "31", "sku_name": "Epigamia Chocolate Milkshake 200g", "sku_id": "166327"}, {"quantity_in_db": "0", "quantity_on_tray": "5", "tray_id": "32", "sku_name": "Paper Boat Orange Pouch - 150Ml", "sku_id": "108676"}, {"quantity_in_db": "8", "quantity_on_tray": "7", "tray_id": "33", "sku_name": "Bindu Fizz Jeera Masala 250 ML", "sku_id": "186043"}, {"quantity_in_db": "0", "quantity_on_tray": "5", "tray_id": "34", "sku_name": "Paper boat Alphonso Mango 160ml", "sku_id": "4500407"}, {"quantity_in_db": "0", "quantity_on_tray": "5", "tray_id": "35", "sku_name": "Paper boat Aam Panna 150ml", "sku_id": "186078"}, {"quantity_in_db": "1", "quantity_on_tray": "6", "tray_id": "36", "sku_name": "Paper Boat Lychee 160ml", "sku_id": "4500675"}, {"quantity_in_db": "0", "quantity_on_tray": "5", "tray_id": "37", "sku_name": "Raw Masala Shikanji 200ml", "sku_id": "4500702"}, {"quantity_in_db": "0", "quantity_on_tray": "5", "tray_id": "38", "sku_name": "BRU Cold Coffee Classic 200ml", "sku_id": "4500656"}, {"quantity_in_db": "0", "quantity_on_tray": "7", "tray_id": "39", "sku_name": "Heritage A1 Spiced Butter Milk180ml", "sku_id": "4500499"}, {"quantity_in_db": "15", "quantity_on_tray": "18", "tray_id": "40", "sku_name": "Cad bury Dairy Milk Chocolate 18gm", "sku_id": "4500541"}, {"quantity_in_db": "15", "quantity_on_tray": "14", "tray_id": "41", "sku_name": "Cad bury Perk Plus 38g", "sku_id": "4500571"}, {"quantity_in_db": "6", "quantity_on_tray": "9", "tray_id": "42", "sku_name": "Farmely Classic date Bites 20gm", "sku_id": "4500667"}, {"quantity_in_db": "3", "quantity_on_tray": "6", "tray_id": "43", "sku_name": "Aatral Natural Electrolytes 200ml", "sku_id": "4500694"}, {"quantity_in_db": "6", "quantity_on_tray": "8", "tray_id": "44", "sku_name": "Pepsi ZeroSugar  300ml", "sku_id": "186059"}, {"quantity_in_db": "6", "quantity_on_tray": "6", "tray_id": "45", "sku_name": "Heritage livo Badam milk 180ml", "sku_id": "4500704"}, {"quantity_in_db": "1", "quantity_on_tray": "5", "tray_id": "46", "sku_name": "MAA Mango flavoured Fruit drink 170ml", "sku_id": "4500706"}], "message": "Tray mismatches found.", "success": true}
[2026-06-27 17:12:28,313.313 INFO    ] {'success': True, 'tray_mismatches': [{'quantity_in_db': '6', 'tray_id': '11', 'quantity_on_tray': '6', 'sku_id': '4500671', 'sku_name': 'Max Protein Cheese jalapeno  32gm'}, {'quantity_in_db': '6', 'tray_id': '12', 'quantity_on_tray': '6', 'sku_id': '4500452', 'sku_name': 'Bingo Chips Chilli Sprinkled 30gm'}, {'quantity_in_db': '1', 'tray_id': '13', 'quantity_on_tray': '6', 'sku_id': '4500713', 'sku_name': 'MaxVita Indian Style Cream and onion Potato Chips 40gms'}, {'quantity_in_db': '0', 'tray_id': '14', 'quantity_on_tray': '6', 'sku_id': '4500672', 'sku_name': 'Modern kitchens Garlic Mixture 26gm'}, {'quantity_in_db': '8', 'tray_id': '15', 'quantity_on_tray': '9', 'sku_id': '4500605', 'sku_name': 'Ongibytes Garlic Muruku '}, {'quantity_in_db': '12', 'tray_id': '16', 'quantity_on_tray': '10', 'sku_id': '4500696', 'sku_name': 'McVities Cashew almond  Cookies 58gm'}, {'quantity_in_db': '0', 'tray_id': '17', 'quantity_on_tray': '9', 'sku_id': '4500558', 'sku_name': 'Kiru Millet Crunchies Bayiruchi Masala 22gm'}, {'quantity_in_db': '3', 'tray_id': '18', 'quantity_on_tray': '13', 'sku_id': '4500681', 'sku_name': 'McVities Orange Cream Biscuts 61gm'}, {'quantity_in_db': '10', 'tray_id': '19', 'quantity_on_tray': '9', 'sku_id': '4500650', 'sku_name': 'Modern kitchens Green Peas 26gm'}, {'quantity_in_db': '8', 'tray_id': '20', 'quantity_on_tray': '8', 'sku_id': '4500644', 'sku_name': 'Ongibytes Pepper Sev 35gm'}, {'quantity_in_db': '8', 'tray_id': '21', 'quantity_on_tray': '10', 'sku_id': '4500648', 'sku_name': 'Modern kitchens Banana Chips 21gm'}, {'quantity_in_db': '0', 'tray_id': '22', 'quantity_on_tray': '11', 'sku_id': '4500697', 'sku_name': 'McVities Butter Cookies 58gm'}, {'quantity_in_db': '0', 'tray_id': '23', 'quantity_on_tray': '5', 'sku_id': '4500570', 'sku_name': 'Wellbe Crunchy Kodbale 25g'}, {'quantity_in_db': '0', 'tray_id': '24', 'quantity_on_tray': '8', 'sku_id': '4500710', 'sku_name': 'MaxVita Premium crunch Rusk 51gm'}, {'quantity_in_db': '10', 'tray_id': '25', 'quantity_on_tray': '7', 'sku_id': '4500646', 'sku_name': 'Modern Kitchens Moong daal 30g'}, {'quantity_in_db': '6', 'tray_id': '26', 'quantity_on_tray': '8', 'sku_id': '4500650', 'sku_name': 'Modern kitchens Green Peas 26gm'}, {'quantity_in_db': '0', 'tray_id': '27', 'quantity_on_tray': '8', 'sku_id': '4500647', 'sku_name': 'Modern kitchens Roasted Channa 32g'}, {'quantity_in_db': '1', 'tray_id': '31', 'quantity_on_tray': '5', 'sku_id': '166327', 'sku_name': 'Epigamia Chocolate Milkshake 200g'}, {'quantity_in_db': '0', 'tray_id': '32', 'quantity_on_tray': '5', 'sku_id': '108676', 'sku_name': 'Paper Boat Orange Pouch - 150Ml'}, {'quantity_in_db': '8', 'tray_id': '33', 'quantity_on_tray': '7', 'sku_id': '186043', 'sku_name': 'Bindu Fizz Jeera Masala 250 ML'}, {'quantity_in_db': '0', 'tray_id': '34', 'quantity_on_tray': '5', 'sku_id': '4500407', 'sku_name': 'Paper boat Alphonso Mango 160ml'}, {'quantity_in_db': '0', 'tray_id': '35', 'quantity_on_tray': '5', 'sku_id': '186078', 'sku_name': 'Paper boat Aam Panna 150ml'}, {'quantity_in_db': '1', 'tray_id': '36', 'quantity_on_tray': '6', 'sku_id': '4500675', 'sku_name': 'Paper Boat Lychee 160ml'}, {'quantity_in_db': '0', 'tray_id': '37', 'quantity_on_tray': '5', 'sku_id': '4500702', 'sku_name': 'Raw Masala Shikanji 200ml'}, {'quantity_in_db': '0', 'tray_id': '38', 'quantity_on_tray': '5', 'sku_id': '4500656', 'sku_name': 'BRU Cold Coffee Classic 200ml'}, {'quantity_in_db': '0', 'tray_id': '39', 'quantity_on_tray': '7', 'sku_id': '4500499', 'sku_name': 'Heritage A1 Spiced Butter Milk180ml'}, {'quantity_in_db': '15', 'tray_id': '40', 'quantity_on_tray': '18', 'sku_id': '4500541', 'sku_name': 'Cad bury Dairy Milk Chocolate 18gm'}, {'quantity_in_db': '15', 'tray_id': '41', 'quantity_on_tray': '14', 'sku_id': '4500571', 'sku_name': 'Cad bury Perk Plus 38g'}, {'quantity_in_db': '6', 'tray_id': '42', 'quantity_on_tray': '9', 'sku_id': '4500667', 'sku_name': 'Farmely Classic date Bites 20gm'}, {'quantity_in_db': '3', 'tray_id': '43', 'quantity_on_tray': '6', 'sku_id': '4500694', 'sku_name': 'Aatral Natural Electrolytes 200ml'}, {'quantity_in_db': '6', 'tray_id': '44', 'quantity_on_tray': '8', 'sku_id': '186059', 'sku_name': 'Pepsi ZeroSugar  300ml'}, {'quantity_in_db': '6', 'tray_id': '45', 'quantity_on_tray': '6', 'sku_id': '4500704', 'sku_name': 'Heritage livo Badam milk 180ml'}, {'quantity_in_db': '1', 'tray_id': '46', 'quantity_on_tray': '5', 'sku_id': '4500706', 'sku_name': 'MAA Mango flavoured Fruit drink 170ml'}], 'message': 'Tray mismatches found.'}
[2026-06-27 17:12:28,777.777 INFO    ] 
inside post

[2026-06-27 17:12:28,779.779 INFO    ] 200
[2026-06-27 17:12:28,780.780 INFO    ] {"order_id":"9689994","vm_id":"1686833081377","user_id":"9036356553","status":"active","server_status":"in-progress","server_response":"","command_todo":"interactive-refill","last_command_response":"{\"success\":true,\"tray_mismatches\":[{\"quantity_in_db\":\"6\",\"tray_id\":\"11\",\"quantity_on_tray\":\"6\",\"sku_id\":\"4500671\",\"sku_name\":\"Max Protein Cheese jalapeno  32gm\"},{\"quantity_in_db\":\"6\",\"tray_id\":\"12\",\"quantity_on_tray\":\"6\",\"sku_id\":\"4500452\",\"sku_name\":\"Bingo Chips Chilli Sprinkled 30gm\"},{\"quantity_in_db\":\"1\",\"tray_id\":\"13\",\"quantity_on_tray\":\"6\",\"sku_id\":\"4500713\",\"sku_name\":\"MaxVita Indian Style Cream and onion Potato Chips 40gms\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"14\",\"quantity_on_tray\":\"6\",\"sku_id\":\"4500672\",\"sku_name\":\"Modern kitchens Garlic Mixture 26gm\"},{\"quantity_in_db\":\"8\",\"tray_id\":\"15\",\"quantity_on_tray\":\"9\",\"sku_id\":\"4500605\",\"sku_name\":\"Ongibytes Garlic Muruku \"},{\"quantity_in_db\":\"12\",\"tray_id\":\"16\",\"quantity_on_tray\":\"10\",\"sku_id\":\"4500696\",\"sku_name\":\"McVities Cashew almond  Cookies 58gm\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"17\",\"quantity_on_tray\":\"9\",\"sku_id\":\"4500558\",\"sku_name\":\"Kiru Millet Crunchies Bayiruchi Masala 22gm\"},{\"quantity_in_db\":\"3\",\"tray_id\":\"18\",\"quantity_on_tray\":\"13\",\"sku_id\":\"4500681\",\"sku_name\":\"McVities Orange Cream Biscuts 61gm\"},{\"quantity_in_db\":\"10\",\"tray_id\":\"19\",\"quantity_on_tray\":\"9\",\"sku_id\":\"4500650\",\"sku_name\":\"Modern kitchens Green Peas 26gm\"},{\"quantity_in_db\":\"8\",\"tray_id\":\"20\",\"quantity_on_tray\":\"8\",\"sku_id\":\"4500644\",\"sku_name\":\"Ongibytes Pepper Sev 35gm\"},{\"quantity_in_db\":\"8\",\"tray_id\":\"21\",\"quantity_on_tray\":\"10\",\"sku_id\":\"4500648\",\"sku_name\":\"Modern kitchens Banana Chips 21gm\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"22\",\"quantity_on_tray\":\"11\",\"sku_id\":\"4500697\",\"sku_name\":\"McVities Butter Cookies 58gm\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"23\",\"quantity_on_tray\":\"5\",\"sku_id\":\"4500570\",\"sku_name\":\"Wellbe Crunchy Kodbale 25g\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"24\",\"quantity_on_tray\":\"8\",\"sku_id\":\"4500710\",\"sku_name\":\"MaxVita Premium crunch Rusk 51gm\"},{\"quantity_in_db\":\"10\",\"tray_id\":\"25\",\"quantity_on_tray\":\"7\",\"sku_id\":\"4500646\",\"sku_name\":\"Modern Kitchens Moong daal 30g\"},{\"quantity_in_db\":\"6\",\"tray_id\":\"26\",\"quantity_on_tray\":\"8\",\"sku_id\":\"4500650\",\"sku_name\":\"Modern kitchens Green Peas 26gm\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"27\",\"quantity_on_tray\":\"8\",\"sku_id\":\"4500647\",\"sku_name\":\"Modern kitchens Roasted Channa 32g\"},{\"quantity_in_db\":\"1\",\"tray_id\":\"31\",\"quantity_on_tray\":\"5\",\"sku_id\":\"166327\",\"sku_name\":\"Epigamia Chocolate Milkshake 200g\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"32\",\"quantity_on_tray\":\"5\",\"sku_id\":\"108676\",\"sku_name\":\"Paper Boat Orange Pouch - 150Ml\"},{\"quantity_in_db\":\"8\",\"tray_id\":\"33\",\"quantity_on_tray\":\"7\",\"sku_id\":\"186043\",\"sku_name\":\"Bindu Fizz Jeera Masala 250 ML\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"34\",\"quantity_on_tray\":\"5\",\"sku_id\":\"4500407\",\"sku_name\":\"Paper boat Alphonso Mango 160ml\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"35\",\"quantity_on_tray\":\"5\",\"sku_id\":\"186078\",\"sku_name\":\"Paper boat Aam Panna 150ml\"},{\"quantity_in_db\":\"1\",\"tray_id\":\"36\",\"quantity_on_tray\":\"6\",\"sku_id\":\"4500675\",\"sku_name\":\"Paper Boat Lychee 160ml\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"37\",\"quantity_on_tray\":\"5\",\"sku_id\":\"4500702\",\"sku_name\":\"Raw Masala Shikanji 200ml\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"38\",\"quantity_on_tray\":\"5\",\"sku_id\":\"4500656\",\"sku_name\":\"BRU Cold Coffee Classic 200ml\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"39\",\"quantity_on_tray\":\"7\",\"sku_id\":\"4500499\",\"sku_name\":\"Heritage A1 Spiced Butter Milk180ml\"},{\"quantity_in_db\":\"15\",\"tray_id\":\"40\",\"quantity_on_tray\":\"18\",\"sku_id\":\"4500541\",\"sku_name\":\"Cad bury Dairy Milk Chocolate 18gm\"},{\"quantity_in_db\":\"15\",\"tray_id\":\"41\",\"quantity_on_tray\":\"14\",\"sku_id\":\"4500571\",\"sku_name\":\"Cad bury Perk Plus 38g\"},{\"quantity_in_db\":\"6\",\"tray_id\":\"42\",\"quantity_on_tray\":\"9\",\"sku_id\":\"4500667\",\"sku_name\":\"Farmely Classic date Bites 20gm\"},{\"quantity_in_db\":\"3\",\"tray_id\":\"43\",\"quantity_on_tray\":\"6\",\"sku_id\":\"4500694\",\"sku_name\":\"Aatral Natural Electrolytes 200ml\"},{\"quantity_in_db\":\"6\",\"tray_id\":\"44\",\"quantity_on_tray\":\"8\",\"sku_id\":\"186059\",\"sku_name\":\"Pepsi ZeroSugar  300ml\"},{\"quantity_in_db\":\"6\",\"tray_id\":\"45\",\"quantity_on_tray\":\"6\",\"sku_id\":\"4500704\",\"sku_name\":\"Heritage livo Badam milk 180ml\"},{\"quantity_in_db\":\"1\",\"tray_id\":\"46\",\"quantity_on_tray\":\"5\",\"sku_id\":\"4500706\",\"sku_name\":\"MAA Mango flavoured Fruit drink 170ml\"}],\"message\":\"Tray mismatches found.\",\"user\":\"machine\"}","all_command_response":"[{\"action\":\"get_user_mobile_no\",\"mobile_no\":\"9036356553\",\"command_for\":\"server\"},{\"user_id\":9036356553,\"allowed\":\"1\",\"success\":\"true\",\"refill_id\":\"9689994\",\"otp\":\"7223\",\"user\":\"machine\"},{\"action\":\"get_mobile_otp\",\"mobile_no\":\"9036356553\",\"otp\":\"7223\",\"command_for\":\"server\"},{\"door_size\":2,\"order_id\":\"TM06202304_refill_260627170312\",\"active_payment_gateways\":\"[{\\\"payments\\\": [{\\\"label\\\": \\\"PayTM\\\", \\\"name\\\": \\\"PayTM\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"PhonePe\\\", \\\"name\\\": \\\"PhonePe\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"Google Pay\\\", \\\"name\\\": \\\"GooglePay\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"BHIM UPI\\\", \\\"name\\\": \\\"BHIM\\\", \\\"active\\\": 1}], \\\"header\\\": \\\"QR Payments\\\"}, {\\\"payments\\\": [{\\\"label\\\": \\\"Sodexo Card\\\", \\\"name\\\": \\\"Sodexo\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"Credit\\\/Debit Card\\\", \\\"name\\\": \\\"Card\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"QwikCilver\\\", \\\"name\\\": \\\"Qwikcilver\\\", \\\"active\\\": 0}], \\\"header\\\": \\\"Card Payments\\\"}, {\\\"payments\\\": [{\\\"label\\\": \\\"LazyPay\\\", \\\"name\\\": \\\"LazyPay\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"OLA Money\\\", \\\"name\\\": \\\"Ola\\\", \\\"active\\\": 0}, {\\\"label\\\": \\\"Tiny Wallet\\\", \\\"name\\\": \\\"Neuu\\\", \\\"active\\\": 0}], \\\"header\\\": \\\"Wallet Payments\\\"}]\",\"status\":\"True\",\"user_id\":9036356553,\"refill_order_id\":\"TM06202304_refill_260627170312\",\"rstatus\":true,\"refill_id\":\"9689994\",\"active_doors\":[\"1\",\"2\"],\"user\":\"machine\"},{\"action\":\"open_door_call\",\"door_no\":\"1\",\"command_for\":\"server\"},{\"SectionMain\":{\"Header\":\"Door Open\"},\"SectionStatus\":{\"SubHeader\":\"Please Pick products after opening\",\"UI_Header\":\"DOOR 1\\nIS \\nOPEN \\nNOW\",\"Header\":\"Opening Door 1\",\"Note\":\"Please wait for door to open\"},\"error\":{\"umessage\":\"In Progress\",\"code\":20001,\"tmessage\":\"In Progress\",\"data\":[]},\"status\":\"False\",\"voiceNote\":\"Opening Door 1\",\"rstatus\":false,\"SectionSKU\":{\"Header\":\"Pick the below items from the door\",\"skus\":[]},\"user\":\"machine\"},{\"action\":\"open_door_call\",\"door_no\":\"2\",\"command_for\":\"server\"},{\"SectionMain\":{\"Header\":\"Door Open\"},\"SectionStatus\":{\"SubHeader\":\"Please Pick products after opening\",\"UI_Header\":\"DOOR 2\\nIS \\nOPEN \\nNOW\",\"Header\":\"Opening Door 2\",\"Note\":\"Please wait for door to open\"},\"error\":{\"umessage\":\"In Progress\",\"code\":20001,\"tmessage\":\"In Progress\",\"data\":[]},\"status\":\"False\",\"voiceNote\":\"Opening Door 2\",\"rstatus\":false,\"SectionSKU\":{\"Header\":\"Pick the below items from the door\",\"skus\":[]},\"user\":\"machine\"},{\"action\":\"open_door_call\",\"door_no\":\"1\",\"command_for\":\"server\"},{\"SectionMain\":{\"Header\":\"Door Open\"},\"SectionStatus\":{\"SubHeader\":\"Please Pick products after opening\",\"UI_Header\":\"DOOR 1\\nIS \\nOPEN \\nNOW\",\"Header\":\"Opening Door 1\",\"Note\":\"Please wait for door to open\"},\"error\":{\"umessage\":\"In Progress\",\"code\":20001,\"tmessage\":\"In Progress\",\"data\":[]},\"status\":\"False\",\"voiceNote\":\"Opening Door 1\",\"rstatus\":false,\"SectionSKU\":{\"Header\":\"Pick the below items from the door\",\"skus\":[]},\"user\":\"machine\"},{\"action\":\"complete_refill\",\"trays\":{\"11\":{\"tray_id\":\"11\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500671-6\",\"org_sku\":\"4500671\",\"active\":\"1\",\"created_at\":\"2026-06-26 16:54:06\",\"modified_at\":\"2026-06-26 16:54:06\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500671-2117.jpg\",\"name\":\"Max Protein Cheese jalapeno  32gm\",\"mrp\":\"20\",\"weight\":\"38\",\"qty\":\"6\",\"id\":\"11\",\"p_sku\":\"4500671\",\"p_qty\":\"6\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"l_sku\":\"4500671\",\"l_qty\":\"1\"},\"12\":{\"tray_id\":\"12\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500452-6\",\"org_sku\":\"4500452\",\"active\":\"1\",\"created_at\":\"2026-06-26 16:54:06\",\"modified_at\":\"2026-06-26 16:54:06\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500452-8664.jpg\",\"name\":\"Bingo Chips Chilli Sprinkled 30gm\",\"mrp\":\"20\",\"weight\":\"35\",\"qty\":\"6\",\"id\":\"12\",\"p_sku\":\"4500452\",\"p_qty\":\"6\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"l_sku\":\"4500452\",\"l_qty\":\"2\"},\"13\":{\"tray_id\":\"13\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500713-1\",\"org_sku\":\"4500713\",\"active\":\"1\",\"created_at\":\"2026-06-26 16:54:06\",\"modified_at\":\"2026-06-26 16:54:06\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500713-9506.jpg\",\"name\":\"MaxVita Indian Style Cream and onion Potato Chips 40gms\",\"mrp\":\"20\",\"weight\":\"47\",\"qty\":\"1\",\"id\":\"13\",\"p_sku\":\"4500713\",\"p_qty\":\"1\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"l_sku\":\"4500713\",\"l_qty\":\"3\"},\"14\":{\"id\":\"14\",\"tray_id\":\"14\",\"door_id\":\"1\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500672-7226.webp\",\"name\":\"Modern kitchens Garlic Mixture 26gm\",\"mrp\":\"10\",\"weight\":\"29\",\"qty\":0,\"org_sku\":\"4500672\",\"p_sku\":\"4500672\",\"p_qty\":0,\"l_sku\":\"4500672\",\"l_qty\":\"4\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500672-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-06-27 17:03:14\",\"created_at\":\"2026-06-27 17:03:14\"},\"15\":{\"tray_id\":\"15\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500605-8\",\"org_sku\":\"4500605\",\"active\":\"1\",\"created_at\":\"2026-06-26 16:54:06\",\"modified_at\":\"2026-06-26 16:54:06\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500605-6297.png\",\"name\":\"Ongibytes Garlic Muruku \",\"mrp\":\"20\",\"weight\":\"42\",\"qty\":\"8\",\"id\":\"15\",\"p_sku\":\"4500605\",\"p_qty\":\"8\",\"p_return_sku\":\"4500623\",\"p_return_qty\":\"0\",\"return_sku\":\"4500623\",\"return_qty\":\"0\",\"return_image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500623-9349.webp\",\"l_sku\":\"4500623\",\"l_qty\":\"0\"},\"16\":{\"tray_id\":\"16\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500696-12\",\"org_sku\":\"4500696\",\"active\":\"1\",\"created_at\":\"2026-06-26 16:54:06\",\"modified_at\":\"2026-06-26 16:54:06\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500696-244.webp\",\"name\":\"McVities Cashew almond  Cookies 58gm\",\"mrp\":\"10\",\"weight\":\"60\",\"qty\":\"12\",\"id\":\"16\",\"p_sku\":\"4500696\",\"p_qty\":\"12\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"l_sku\":\"4500696\",\"l_qty\":\"4\"},\"17\":{\"id\":\"17\",\"tray_id\":\"17\",\"door_id\":\"1\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500558-8740.jpeg\",\"name\":\"Kiru Millet Crunchies Bayiruchi Masala 22gm\",\"mrp\":\"10\",\"weight\":\"25\",\"qty\":0,\"org_sku\":\"4500558\",\"p_sku\":\"4500558\",\"p_qty\":0,\"l_sku\":\"4500558\",\"l_qty\":\"8\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500558-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-06-27 17:03:14\",\"created_at\":\"2026-06-27 17:03:14\"},\"18\":{\"tray_id\":\"18\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500681-3\",\"org_sku\":\"4500681\",\"active\":\"1\",\"created_at\":\"2026-06-26 16:54:06\",\"modified_at\":\"2026-06-26 16:54:06\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500681-9948.webp\",\"name\":\"McVities Orange Cream Biscuts 61gm\",\"mrp\":\"10\",\"weight\":\"64\",\"qty\":\"3\",\"id\":\"18\",\"p_sku\":\"4500681\",\"p_qty\":\"3\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"l_sku\":\"4500681\",\"l_qty\":\"9\"},\"19\":{\"tray_id\":\"19\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500650-10\",\"org_sku\":\"4500650\",\"active\":\"1\",\"created_at\":\"2026-06-26 16:54:06\",\"modified_at\":\"2026-06-26 16:54:06\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500650-61.webp\",\"name\":\"Modern kitchens Green Peas 26gm\",\"mrp\":\"10\",\"weight\":\"30\",\"qty\":\"10\",\"id\":\"19\",\"p_sku\":\"4500650\",\"p_qty\":\"10\",\"p_return_sku\":\"4500695\",\"p_return_qty\":\"4\",\"return_sku\":\"4500695\",\"return_qty\":\"4\",\"return_image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500695-4594.jpg\",\"l_sku\":\"4500695\",\"l_qty\":\"4\"},\"20\":{\"tray_id\":\"20\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500644-8\",\"org_sku\":\"4500644\",\"active\":\"1\",\"created_at\":\"2026-06-26 16:54:06\",\"modified_at\":\"2026-06-26 16:54:06\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500644-3697.png\",\"name\":\"Ongibytes Pepper Sev 35gm\",\"mrp\":\"20\",\"weight\":\"42\",\"qty\":\"8\",\"id\":\"20\",\"p_sku\":\"4500644\",\"p_qty\":\"8\",\"p_return_sku\":\"4500679\",\"p_return_qty\":\"5\",\"return_sku\":\"4500679\",\"return_qty\":\"5\",\"return_image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500679-7835.png\",\"l_sku\":\"4500679\",\"l_qty\":\"5\"},\"21\":{\"tray_id\":\"21\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500648-8\",\"org_sku\":\"4500648\",\"active\":\"1\",\"created_at\":\"2026-06-26 16:54:06\",\"modified_at\":\"2026-06-26 16:54:06\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500648-25.webp\",\"name\":\"Modern kitchens Banana Chips 21gm\",\"mrp\":\"10\",\"weight\":\"25\",\"qty\":\"8\",\"id\":\"21\",\"p_sku\":\"4500648\",\"p_qty\":\"8\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"l_sku\":\"4500648\",\"l_qty\":\"3\"},\"22\":{\"id\":\"22\",\"tray_id\":\"22\",\"door_id\":\"1\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500697-7388.webp\",\"name\":\"McVities Butter Cookies 58gm\",\"mrp\":\"10\",\"weight\":\"60\",\"qty\":0,\"org_sku\":\"4500697\",\"p_sku\":\"4500697\",\"p_qty\":0,\"l_sku\":\"4500697\",\"l_qty\":\"11\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500697-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-06-27 17:03:14\",\"created_at\":\"2026-06-27 17:03:14\"},\"23\":{\"id\":\"23\",\"tray_id\":\"23\",\"door_id\":\"1\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500570-8490.jpg\",\"name\":\"Wellbe Crunchy Kodbale 25g\",\"mrp\":\"10\",\"weight\":\"35\",\"qty\":0,\"org_sku\":\"4500570\",\"p_sku\":\"4500570\",\"p_qty\":0,\"l_sku\":\"4500570\",\"l_qty\":\"4\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500570-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-06-27 17:03:14\",\"created_at\":\"2026-06-27 17:03:14\"},\"24\":{\"id\":\"24\",\"tray_id\":\"24\",\"door_id\":\"1\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500710-1463.png\",\"name\":\"MaxVita Premium crunch Rusk 51gm\",\"mrp\":\"10\",\"weight\":\"55\",\"qty\":0,\"org_sku\":\"4500710\",\"p_sku\":\"4500710\",\"p_qty\":0,\"l_sku\":\"4500710\",\"l_qty\":\"8\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500710-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-06-27 17:03:14\",\"created_at\":\"2026-06-27 17:03:14\"},\"25\":{\"tray_id\":\"25\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500646-10\",\"org_sku\":\"4500646\",\"active\":\"1\",\"created_at\":\"2026-06-26 16:54:06\",\"modified_at\":\"2026-06-26 16:54:06\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500646-2968.webp\",\"name\":\"Modern Kitchens Moong daal 30g\",\"mrp\":\"10\",\"weight\":\"35\",\"qty\":\"10\",\"id\":\"25\",\"p_sku\":\"4500646\",\"p_qty\":\"10\",\"p_return_sku\":\"4500557\",\"p_return_qty\":\"3\",\"return_sku\":\"4500557\",\"return_qty\":\"3\",\"return_image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500557-4993.jpeg\",\"l_sku\":\"4500557\",\"l_qty\":\"3\"},\"26\":{\"tray_id\":\"26\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500650-6\",\"org_sku\":\"4500650\",\"active\":\"1\",\"created_at\":\"2026-06-26 16:54:06\",\"modified_at\":\"2026-06-26 16:54:06\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500650-61.webp\",\"name\":\"Modern kitchens Green Peas 26gm\",\"mrp\":\"10\",\"weight\":\"30\",\"qty\":\"6\",\"id\":\"26\",\"p_sku\":\"4500650\",\"p_qty\":\"6\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"l_sku\":\"4500650\",\"l_qty\":\"4\"},\"27\":{\"id\":\"27\",\"tray_id\":\"27\",\"door_id\":\"1\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500647-1968.png\",\"name\":\"Modern kitchens Roasted Channa 32g\",\"mrp\":\"10\",\"weight\":\"36\",\"qty\":0,\"org_sku\":\"4500647\",\"p_sku\":\"4500647\",\"p_qty\":0,\"l_sku\":\"4500647\",\"l_qty\":\"8\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500647-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-06-27 17:03:14\",\"created_at\":\"2026-06-27 17:03:14\"},\"31\":{\"tray_id\":\"31\",\"door_id\":\"2\",\"tray_weight\":\"99999\",\"sku_json\":\"166327-1\",\"org_sku\":\"166327\",\"active\":\"1\",\"created_at\":\"2026-06-26 16:54:06\",\"modified_at\":\"2026-06-26 16:54:06\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/166327-5644.jpg\",\"name\":\"Epigamia Chocolate Milkshake 200g\",\"mrp\":\"38\",\"weight\":\"210\",\"qty\":\"1\",\"id\":\"31\",\"p_sku\":\"166327\",\"p_qty\":\"1\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"l_sku\":\"166327\",\"l_qty\":\"5\"},\"32\":{\"id\":\"32\",\"tray_id\":\"32\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/108676-2689.jpg\",\"name\":\"Paper Boat Orange Pouch - 150Ml\",\"mrp\":\"25\",\"weight\":\"177\",\"qty\":0,\"org_sku\":\"108676\",\"p_sku\":\"108676\",\"p_qty\":0,\"l_sku\":\"108676\",\"l_qty\":\"5\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"108676-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-06-27 17:03:14\",\"created_at\":\"2026-06-27 17:03:14\"},\"33\":{\"tray_id\":\"33\",\"door_id\":\"2\",\"tray_weight\":\"99999\",\"sku_json\":\"186043-8\",\"org_sku\":\"186043\",\"active\":\"1\",\"created_at\":\"2026-06-26 16:54:06\",\"modified_at\":\"2026-06-26 16:54:06\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/186043-5089.png\",\"name\":\"Bindu Fizz Jeera Masala 250 ML\",\"mrp\":\"20\",\"weight\":\"295\",\"qty\":\"8\",\"id\":\"33\",\"p_sku\":\"186043\",\"p_qty\":\"8\",\"p_return_sku\":\"4500651\",\"p_return_qty\":\"2\",\"return_sku\":\"4500651\",\"return_qty\":\"2\",\"return_image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500651-8004.webp\",\"l_sku\":\"4500651\",\"l_qty\":\"2\"},\"34\":{\"id\":\"34\",\"tray_id\":\"34\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500407-2060.jpg\",\"name\":\"Paper boat Alphonso Mango 160ml\",\"mrp\":\"25\",\"weight\":\"175\",\"qty\":0,\"org_sku\":\"4500407\",\"p_sku\":\"4500407\",\"p_qty\":0,\"l_sku\":\"4500407\",\"l_qty\":\"5\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500407-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-06-27 17:03:14\",\"created_at\":\"2026-06-27 17:03:14\"},\"35\":{\"id\":\"35\",\"tray_id\":\"35\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/186078-2883.png\",\"name\":\"Paper boat Aam Panna 150ml\",\"mrp\":\"25\",\"weight\":\"166\",\"qty\":0,\"org_sku\":\"186078\",\"p_sku\":\"186078\",\"p_qty\":0,\"l_sku\":\"186078\",\"l_qty\":\"4\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"186078-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-06-27 17:03:14\",\"created_at\":\"2026-06-27 17:03:14\"},\"36\":{\"tray_id\":\"36\",\"door_id\":\"2\",\"tray_weight\":\"99999\",\"sku_json\":\"4500675-1\",\"org_sku\":\"4500675\",\"active\":\"1\",\"created_at\":\"2026-06-26 16:54:06\",\"modified_at\":\"2026-06-26 16:54:06\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500675-5033.jpg\",\"name\":\"Paper Boat Lychee 160ml\",\"mrp\":\"25\",\"weight\":\"175\",\"qty\":\"1\",\"id\":\"36\",\"p_sku\":\"4500675\",\"p_qty\":\"1\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"l_sku\":\"4500675\",\"l_qty\":\"5\"},\"37\":{\"id\":\"37\",\"tray_id\":\"37\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500702-1302.webp\",\"name\":\"Raw Masala Shikanji 200ml\",\"mrp\":\"30\",\"weight\":\"222\",\"qty\":0,\"org_sku\":\"4500702\",\"p_sku\":\"4500702\",\"p_qty\":0,\"l_sku\":\"4500702\",\"l_qty\":\"5\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500702-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-06-27 17:03:14\",\"created_at\":\"2026-06-27 17:03:14\"},\"38\":{\"id\":\"38\",\"tray_id\":\"38\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500656-2520.webp\",\"name\":\"BRU Cold Coffee Classic 200ml\",\"mrp\":\"60\",\"weight\":\"225\",\"qty\":0,\"org_sku\":\"4500656\",\"p_sku\":\"4500656\",\"p_qty\":0,\"l_sku\":\"4500656\",\"l_qty\":\"5\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500656-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-06-27 17:03:14\",\"created_at\":\"2026-06-27 17:03:14\"},\"39\":{\"id\":\"39\",\"tray_id\":\"39\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500499-5719.webp\",\"name\":\"Heritage A1 Spiced Butter Milk180ml\",\"mrp\":\"20\",\"weight\":\"192\",\"qty\":0,\"org_sku\":\"4500499\",\"p_sku\":\"4500499\",\"p_qty\":0,\"l_sku\":\"4500499\",\"l_qty\":\"6\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500499-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-06-27 17:03:14\",\"created_at\":\"2026-06-27 17:03:14\"},\"40\":{\"tray_id\":\"40\",\"door_id\":\"2\",\"tray_weight\":\"99999\",\"sku_json\":\"4500541-15\",\"org_sku\":\"4500541\",\"active\":\"1\",\"created_at\":\"2026-06-26 16:54:06\",\"modified_at\":\"2026-06-26 16:54:06\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500541-6798.jpg\",\"name\":\"Cad bury Dairy Milk Chocolate 18gm\",\"mrp\":\"20\",\"weight\":\"19\",\"qty\":\"15\",\"id\":\"40\",\"p_sku\":\"4500541\",\"p_qty\":\"15\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"l_sku\":\"4500541\",\"l_qty\":\"1\"},\"41\":{\"tray_id\":\"41\",\"door_id\":\"2\",\"tray_weight\":\"99999\",\"sku_json\":\"4500571-15\",\"org_sku\":\"4500571\",\"active\":\"1\",\"created_at\":\"2026-06-26 16:54:06\",\"modified_at\":\"2026-06-26 16:54:06\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500571-5060.jpg\",\"name\":\"Cad bury Perk Plus 38g\",\"mrp\":\"20\",\"weight\":\"42\",\"qty\":\"15\",\"id\":\"41\",\"p_sku\":\"4500571\",\"p_qty\":\"15\",\"p_return_sku\":\"112220\",\"p_return_qty\":\"0\",\"return_sku\":\"112220\",\"return_qty\":\"0\",\"return_image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/112220-2513.jpg\",\"l_sku\":\"112220\",\"l_qty\":\"0\"},\"42\":{\"tray_id\":\"42\",\"door_id\":\"2\",\"tray_weight\":\"99999\",\"sku_json\":\"4500694-6\",\"org_sku\":\"4500667\",\"active\":\"1\",\"created_at\":\"2026-06-26 16:54:06\",\"modified_at\":\"2026-06-26 16:54:06\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500694-1219.png\",\"name\":\"Aatral Natural Electrolytes 200ml\",\"mrp\":\"60\",\"weight\":\"232\",\"qty\":\"6\",\"id\":\"42\",\"p_sku\":\"4500694\",\"p_qty\":\"6\",\"p_return_sku\":\"186084\",\"p_return_qty\":\"0\",\"return_image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/186084-5395.png\",\"l_sku\":\"186084\",\"l_qty\":\"0\"},\"43\":{\"tray_id\":\"43\",\"door_id\":\"2\",\"tray_weight\":\"99999\",\"sku_json\":\"4500667-3\",\"org_sku\":\"4500694\",\"active\":\"1\",\"created_at\":\"2026-06-26 16:54:06\",\"modified_at\":\"2026-06-26 16:54:06\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500667-4339.webp\",\"name\":\"Farmely Classic date Bites 20gm\",\"mrp\":\"40\",\"weight\":\"23\",\"qty\":\"3\",\"id\":\"43\",\"p_sku\":\"4500667\",\"p_qty\":\"3\",\"p_return_sku\":\"4500667\",\"p_return_qty\":\"6\",\"l_sku\":\"4500667\",\"l_qty\":\"6\"},\"44\":{\"tray_id\":\"44\",\"door_id\":\"2\",\"tray_weight\":\"99999\",\"sku_json\":\"186059-6\",\"org_sku\":\"186059\",\"active\":\"1\",\"created_at\":\"2026-06-26 16:54:06\",\"modified_at\":\"2026-06-26 16:54:06\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/186059-5330.png\",\"name\":\"Pepsi ZeroSugar  300ml\",\"mrp\":\"40\",\"weight\":\"310\",\"qty\":\"6\",\"id\":\"44\",\"p_sku\":\"186059\",\"p_qty\":\"6\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"l_sku\":\"186059\",\"l_qty\":\"2\"},\"45\":{\"tray_id\":\"45\",\"door_id\":\"2\",\"tray_weight\":\"99999\",\"sku_json\":\"4500704-6\",\"org_sku\":\"4500704\",\"active\":\"1\",\"created_at\":\"2026-06-26 16:54:06\",\"modified_at\":\"2026-06-26 16:54:06\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500704-2291.webp\",\"name\":\"Heritage livo Badam milk 180ml\",\"mrp\":\"30\",\"weight\":\"210\",\"qty\":\"6\",\"id\":\"45\",\"p_sku\":\"4500704\",\"p_qty\":\"6\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"l_sku\":\"4500704\",\"l_qty\":\"0\"},\"46\":{\"tray_id\":\"46\",\"door_id\":\"2\",\"tray_weight\":\"99999\",\"sku_json\":\"4500706-1\",\"org_sku\":\"4500706\",\"active\":\"1\",\"created_at\":\"2026-06-26 16:54:06\",\"modified_at\":\"2026-06-26 16:54:06\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500706-1073.webp\",\"name\":\"MAA Mango flavoured Fruit drink 170ml\",\"mrp\":\"20\",\"weight\":\"185\",\"qty\":\"1\",\"id\":\"46\",\"p_sku\":\"4500706\",\"p_qty\":\"1\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"l_sku\":\"4500706\",\"l_qty\":\"4\"}},\"command_for\":\"server\"},{\"success\":true,\"tray_mismatches\":[{\"quantity_in_db\":\"6\",\"tray_id\":\"11\",\"quantity_on_tray\":\"6\",\"sku_id\":\"4500671\",\"sku_name\":\"Max Protein Cheese jalapeno  32gm\"},{\"quantity_in_db\":\"6\",\"tray_id\":\"12\",\"quantity_on_tray\":\"6\",\"sku_id\":\"4500452\",\"sku_name\":\"Bingo Chips Chilli Sprinkled 30gm\"},{\"quantity_in_db\":\"1\",\"tray_id\":\"13\",\"quantity_on_tray\":\"6\",\"sku_id\":\"4500713\",\"sku_name\":\"MaxVita Indian Style Cream and onion Potato Chips 40gms\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"14\",\"quantity_on_tray\":\"6\",\"sku_id\":\"4500672\",\"sku_name\":\"Modern kitchens Garlic Mixture 26gm\"},{\"quantity_in_db\":\"8\",\"tray_id\":\"15\",\"quantity_on_tray\":\"9\",\"sku_id\":\"4500605\",\"sku_name\":\"Ongibytes Garlic Muruku \"},{\"quantity_in_db\":\"12\",\"tray_id\":\"16\",\"quantity_on_tray\":\"10\",\"sku_id\":\"4500696\",\"sku_name\":\"McVities Cashew almond  Cookies 58gm\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"17\",\"quantity_on_tray\":\"9\",\"sku_id\":\"4500558\",\"sku_name\":\"Kiru Millet Crunchies Bayiruchi Masala 22gm\"},{\"quantity_in_db\":\"3\",\"tray_id\":\"18\",\"quantity_on_tray\":\"13\",\"sku_id\":\"4500681\",\"sku_name\":\"McVities Orange Cream Biscuts 61gm\"},{\"quantity_in_db\":\"10\",\"tray_id\":\"19\",\"quantity_on_tray\":\"9\",\"sku_id\":\"4500650\",\"sku_name\":\"Modern kitchens Green Peas 26gm\"},{\"quantity_in_db\":\"8\",\"tray_id\":\"20\",\"quantity_on_tray\":\"8\",\"sku_id\":\"4500644\",\"sku_name\":\"Ongibytes Pepper Sev 35gm\"},{\"quantity_in_db\":\"8\",\"tray_id\":\"21\",\"quantity_on_tray\":\"10\",\"sku_id\":\"4500648\",\"sku_name\":\"Modern kitchens Banana Chips 21gm\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"22\",\"quantity_on_tray\":\"11\",\"sku_id\":\"4500697\",\"sku_name\":\"McVities Butter Cookies 58gm\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"23\",\"quantity_on_tray\":\"5\",\"sku_id\":\"4500570\",\"sku_name\":\"Wellbe Crunchy Kodbale 25g\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"24\",\"quantity_on_tray\":\"8\",\"sku_id\":\"4500710\",\"sku_name\":\"MaxVita Premium crunch Rusk 51gm\"},{\"quantity_in_db\":\"10\",\"tray_id\":\"25\",\"quantity_on_tray\":\"7\",\"sku_id\":\"4500646\",\"sku_name\":\"Modern Kitchens Moong daal 30g\"},{\"quantity_in_db\":\"6\",\"tray_id\":\"26\",\"quantity_on_tray\":\"8\",\"sku_id\":\"4500650\",\"sku_name\":\"Modern kitchens Green Peas 26gm\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"27\",\"quantity_on_tray\":\"8\",\"sku_id\":\"4500647\",\"sku_name\":\"Modern kitchens Roasted Channa 32g\"},{\"quantity_in_db\":\"1\",\"tray_id\":\"31\",\"quantity_on_tray\":\"5\",\"sku_id\":\"166327\",\"sku_name\":\"Epigamia Chocolate Milkshake 200g\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"32\",\"quantity_on_tray\":\"5\",\"sku_id\":\"108676\",\"sku_name\":\"Paper Boat Orange Pouch - 150Ml\"},{\"quantity_in_db\":\"8\",\"tray_id\":\"33\",\"quantity_on_tray\":\"7\",\"sku_id\":\"186043\",\"sku_name\":\"Bindu Fizz Jeera Masala 250 ML\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"34\",\"quantity_on_tray\":\"5\",\"sku_id\":\"4500407\",\"sku_name\":\"Paper boat Alphonso Mango 160ml\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"35\",\"quantity_on_tray\":\"5\",\"sku_id\":\"186078\",\"sku_name\":\"Paper boat Aam Panna 150ml\"},{\"quantity_in_db\":\"1\",\"tray_id\":\"36\",\"quantity_on_tray\":\"6\",\"sku_id\":\"4500675\",\"sku_name\":\"Paper Boat Lychee 160ml\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"37\",\"quantity_on_tray\":\"5\",\"sku_id\":\"4500702\",\"sku_name\":\"Raw Masala Shikanji 200ml\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"38\",\"quantity_on_tray\":\"5\",\"sku_id\":\"4500656\",\"sku_name\":\"BRU Cold Coffee Classic 200ml\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"39\",\"quantity_on_tray\":\"7\",\"sku_id\":\"4500499\",\"sku_name\":\"Heritage A1 Spiced Butter Milk180ml\"},{\"quantity_in_db\":\"15\",\"tray_id\":\"40\",\"quantity_on_tray\":\"18\",\"sku_id\":\"4500541\",\"sku_name\":\"Cad bury Dairy Milk Chocolate 18gm\"},{\"quantity_in_db\":\"15\",\"tray_id\":\"41\",\"quantity_on_tray\":\"14\",\"sku_id\":\"4500571\",\"sku_name\":\"Cad bury Perk Plus 38g\"},{\"quantity_in_db\":\"6\",\"tray_id\":\"42\",\"quantity_on_tray\":\"9\",\"sku_id\":\"4500667\",\"sku_name\":\"Farmely Classic date Bites 20gm\"},{\"quantity_in_db\":\"3\",\"tray_id\":\"43\",\"quantity_on_tray\":\"6\",\"sku_id\":\"4500694\",\"sku_name\":\"Aatral Natural Electrolytes 200ml\"},{\"quantity_in_db\":\"6\",\"tray_id\":\"44\",\"quantity_on_tray\":\"8\",\"sku_id\":\"186059\",\"sku_name\":\"Pepsi ZeroSugar  300ml\"},{\"quantity_in_db\":\"6\",\"tray_id\":\"45\",\"quantity_on_tray\":\"6\",\"sku_id\":\"4500704\",\"sku_name\":\"Heritage livo Badam milk 180ml\"},{\"quantity_in_db\":\"1\",\"tray_id\":\"46\",\"quantity_on_tray\":\"5\",\"sku_id\":\"4500706\",\"sku_name\":\"MAA Mango flavoured Fruit drink 170ml\"}],\"message\":\"Tray mismatches found.\",\"user\":\"machine\"}]","type_of_order":"refill","command_request_data":"{\"user\":\"server\",\"refill_order_id\":\"TM06202304_refill_260627170312\",\"response_data\":{\"success\":true,\"tray_mismatches\":[{\"quantity_in_db\":\"6\",\"tray_id\":\"11\",\"quantity_on_tray\":\"6\",\"sku_id\":\"4500671\",\"sku_name\":\"Max Protein Cheese jalapeno  32gm\"},{\"quantity_in_db\":\"6\",\"tray_id\":\"12\",\"quantity_on_tray\":\"6\",\"sku_id\":\"4500452\",\"sku_name\":\"Bingo Chips Chilli Sprinkled 30gm\"},{\"quantity_in_db\":\"1\",\"tray_id\":\"13\",\"quantity_on_tray\":\"6\",\"sku_id\":\"4500713\",\"sku_name\":\"MaxVita Indian Style Cream and onion Potato Chips 40gms\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"14\",\"quantity_on_tray\":\"6\",\"sku_id\":\"4500672\",\"sku_name\":\"Modern kitchens Garlic Mixture 26gm\"},{\"quantity_in_db\":\"8\",\"tray_id\":\"15\",\"quantity_on_tray\":\"9\",\"sku_id\":\"4500605\",\"sku_name\":\"Ongibytes Garlic Muruku \"},{\"quantity_in_db\":\"12\",\"tray_id\":\"16\",\"quantity_on_tray\":\"10\",\"sku_id\":\"4500696\",\"sku_name\":\"McVities Cashew almond  Cookies 58gm\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"17\",\"quantity_on_tray\":\"9\",\"sku_id\":\"4500558\",\"sku_name\":\"Kiru Millet Crunchies Bayiruchi Masala 22gm\"},{\"quantity_in_db\":\"3\",\"tray_id\":\"18\",\"quantity_on_tray\":\"13\",\"sku_id\":\"4500681\",\"sku_name\":\"McVities Orange Cream Biscuts 61gm\"},{\"quantity_in_db\":\"10\",\"tray_id\":\"19\",\"quantity_on_tray\":\"9\",\"sku_id\":\"4500650\",\"sku_name\":\"Modern kitchens Green Peas 26gm\"},{\"quantity_in_db\":\"8\",\"tray_id\":\"20\",\"quantity_on_tray\":\"8\",\"sku_id\":\"4500644\",\"sku_name\":\"Ongibytes Pepper Sev 35gm\"},{\"quantity_in_db\":\"8\",\"tray_id\":\"21\",\"quantity_on_tray\":\"10\",\"sku_id\":\"4500648\",\"sku_name\":\"Modern kitchens Banana Chips 21gm\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"22\",\"quantity_on_tray\":\"11\",\"sku_id\":\"4500697\",\"sku_name\":\"McVities Butter Cookies 58gm\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"23\",\"quantity_on_tray\":\"5\",\"sku_id\":\"4500570\",\"sku_name\":\"Wellbe Crunchy Kodbale 25g\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"24\",\"quantity_on_tray\":\"8\",\"sku_id\":\"4500710\",\"sku_name\":\"MaxVita Premium crunch Rusk 51gm\"},{\"quantity_in_db\":\"10\",\"tray_id\":\"25\",\"quantity_on_tray\":\"7\",\"sku_id\":\"4500646\",\"sku_name\":\"Modern Kitchens Moong daal 30g\"},{\"quantity_in_db\":\"6\",\"tray_id\":\"26\",\"quantity_on_tray\":\"8\",\"sku_id\":\"4500650\",\"sku_name\":\"Modern kitchens Green Peas 26gm\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"27\",\"quantity_on_tray\":\"8\",\"sku_id\":\"4500647\",\"sku_name\":\"Modern kitchens Roasted Channa 32g\"},{\"quantity_in_db\":\"1\",\"tray_id\":\"31\",\"quantity_on_tray\":\"5\",\"sku_id\":\"166327\",\"sku_name\":\"Epigamia Chocolate Milkshake 200g\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"32\",\"quantity_on_tray\":\"5\",\"sku_id\":\"108676\",\"sku_name\":\"Paper Boat Orange Pouch - 150Ml\"},{\"quantity_in_db\":\"8\",\"tray_id\":\"33\",\"quantity_on_tray\":\"7\",\"sku_id\":\"186043\",\"sku_name\":\"Bindu Fizz Jeera Masala 250 ML\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"34\",\"quantity_on_tray\":\"5\",\"sku_id\":\"4500407\",\"sku_name\":\"Paper boat Alphonso Mango 160ml\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"35\",\"quantity_on_tray\":\"5\",\"sku_id\":\"186078\",\"sku_name\":\"Paper boat Aam Panna 150ml\"},{\"quantity_in_db\":\"1\",\"tray_id\":\"36\",\"quantity_on_tray\":\"6\",\"sku_id\":\"4500675\",\"sku_name\":\"Paper Boat Lychee 160ml\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"37\",\"quantity_on_tray\":\"5\",\"sku_id\":\"4500702\",\"sku_name\":\"Raw Masala Shikanji 200ml\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"38\",\"quantity_on_tray\":\"5\",\"sku_id\":\"4500656\",\"sku_name\":\"BRU Cold Coffee Classic 200ml\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"39\",\"quantity_on_tray\":\"7\",\"sku_id\":\"4500499\",\"sku_name\":\"Heritage A1 Spiced Butter Milk180ml\"},{\"quantity_in_db\":\"15\",\"tray_id\":\"40\",\"quantity_on_tray\":\"18\",\"sku_id\":\"4500541\",\"sku_name\":\"Cad bury Dairy Milk Chocolate 18gm\"},{\"quantity_in_db\":\"15\",\"tray_id\":\"41\",\"quantity_on_tray\":\"14\",\"sku_id\":\"4500571\",\"sku_name\":\"Cad bury Perk Plus 38g\"},{\"quantity_in_db\":\"6\",\"tray_id\":\"42\",\"quantity_on_tray\":\"9\",\"sku_id\":\"4500667\",\"sku_name\":\"Farmely Classic date Bites 20gm\"},{\"quantity_in_db\":\"3\",\"tray_id\":\"43\",\"quantity_on_tray\":\"6\",\"sku_id\":\"4500694\",\"sku_name\":\"Aatral Natural Electrolytes 200ml\"},{\"quantity_in_db\":\"6\",\"tray_id\":\"44\",\"quantity_on_tray\":\"8\",\"sku_id\":\"186059\",\"sku_name\":\"Pepsi ZeroSugar  300ml\"},{\"quantity_in_db\":\"6\",\"tray_id\":\"45\",\"quantity_on_tray\":\"6\",\"sku_id\":\"4500704\",\"sku_name\":\"Heritage livo Badam milk 180ml\"},{\"quantity_in_db\":\"1\",\"tray_id\":\"46\",\"quantity_on_tray\":\"5\",\"sku_id\":\"4500706\",\"sku_name\":\"MAA Mango flavoured Fruit drink 170ml\"}],\"message\":\"Tray mismatches found.\"},\"action_name\":\"verify refill Qty\",\"action\":\"open_door_process\",\"active_doors\":[\"1\",\"2\"],\"request_data\":{\"success\":true,\"tray_mismatches\":[{\"quantity_in_db\":\"6\",\"tray_id\":\"11\",\"quantity_on_tray\":\"6\",\"sku_id\":\"4500671\",\"sku_name\":\"Max Protein Cheese jalapeno  32gm\"},{\"quantity_in_db\":\"6\",\"tray_id\":\"12\",\"quantity_on_tray\":\"6\",\"sku_id\":\"4500452\",\"sku_name\":\"Bingo Chips Chilli Sprinkled 30gm\"},{\"quantity_in_db\":\"1\",\"tray_id\":\"13\",\"quantity_on_tray\":\"6\",\"sku_id\":\"4500713\",\"sku_name\":\"MaxVita Indian Style Cream and onion Potato Chips 40gms\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"14\",\"quantity_on_tray\":\"6\",\"sku_id\":\"4500672\",\"sku_name\":\"Modern kitchens Garlic Mixture 26gm\"},{\"quantity_in_db\":\"8\",\"tray_id\":\"15\",\"quantity_on_tray\":\"9\",\"sku_id\":\"4500605\",\"sku_name\":\"Ongibytes Garlic Muruku \"},{\"quantity_in_db\":\"12\",\"tray_id\":\"16\",\"quantity_on_tray\":\"10\",\"sku_id\":\"4500696\",\"sku_name\":\"McVities Cashew almond  Cookies 58gm\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"17\",\"quantity_on_tray\":\"9\",\"sku_id\":\"4500558\",\"sku_name\":\"Kiru Millet Crunchies Bayiruchi Masala 22gm\"},{\"quantity_in_db\":\"3\",\"tray_id\":\"18\",\"quantity_on_tray\":\"13\",\"sku_id\":\"4500681\",\"sku_name\":\"McVities Orange Cream Biscuts 61gm\"},{\"quantity_in_db\":\"10\",\"tray_id\":\"19\",\"quantity_on_tray\":\"9\",\"sku_id\":\"4500650\",\"sku_name\":\"Modern kitchens Green Peas 26gm\"},{\"quantity_in_db\":\"8\",\"tray_id\":\"20\",\"quantity_on_tray\":\"8\",\"sku_id\":\"4500644\",\"sku_name\":\"Ongibytes Pepper Sev 35gm\"},{\"quantity_in_db\":\"8\",\"tray_id\":\"21\",\"quantity_on_tray\":\"10\",\"sku_id\":\"4500648\",\"sku_name\":\"Modern kitchens Banana Chips 21gm\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"22\",\"quantity_on_tray\":\"11\",\"sku_id\":\"4500697\",\"sku_name\":\"McVities Butter Cookies 58gm\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"23\",\"quantity_on_tray\":\"5\",\"sku_id\":\"4500570\",\"sku_name\":\"Wellbe Crunchy Kodbale 25g\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"24\",\"quantity_on_tray\":\"8\",\"sku_id\":\"4500710\",\"sku_name\":\"MaxVita Premium crunch Rusk 51gm\"},{\"quantity_in_db\":\"10\",\"tray_id\":\"25\",\"quantity_on_tray\":\"7\",\"sku_id\":\"4500646\",\"sku_name\":\"Modern Kitchens Moong daal 30g\"},{\"quantity_in_db\":\"6\",\"tray_id\":\"26\",\"quantity_on_tray\":\"8\",\"sku_id\":\"4500650\",\"sku_name\":\"Modern kitchens Green Peas 26gm\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"27\",\"quantity_on_tray\":\"8\",\"sku_id\":\"4500647\",\"sku_name\":\"Modern kitchens Roasted Channa 32g\"},{\"quantity_in_db\":\"1\",\"tray_id\":\"31\",\"quantity_on_tray\":\"5\",\"sku_id\":\"166327\",\"sku_name\":\"Epigamia Chocolate Milkshake 200g\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"32\",\"quantity_on_tray\":\"5\",\"sku_id\":\"108676\",\"sku_name\":\"Paper Boat Orange Pouch - 150Ml\"},{\"quantity_in_db\":\"8\",\"tray_id\":\"33\",\"quantity_on_tray\":\"7\",\"sku_id\":\"186043\",\"sku_name\":\"Bindu Fizz Jeera Masala 250 ML\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"34\",\"quantity_on_tray\":\"5\",\"sku_id\":\"4500407\",\"sku_name\":\"Paper boat Alphonso Mango 160ml\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"35\",\"quantity_on_tray\":\"5\",\"sku_id\":\"186078\",\"sku_name\":\"Paper boat Aam Panna 150ml\"},{\"quantity_in_db\":\"1\",\"tray_id\":\"36\",\"quantity_on_tray\":\"6\",\"sku_id\":\"4500675\",\"sku_name\":\"Paper Boat Lychee 160ml\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"37\",\"quantity_on_tray\":\"5\",\"sku_id\":\"4500702\",\"sku_name\":\"Raw Masala Shikanji 200ml\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"38\",\"quantity_on_tray\":\"5\",\"sku_id\":\"4500656\",\"sku_name\":\"BRU Cold Coffee Classic 200ml\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"39\",\"quantity_on_tray\":\"7\",\"sku_id\":\"4500499\",\"sku_name\":\"Heritage A1 Spiced Butter Milk180ml\"},{\"quantity_in_db\":\"15\",\"tray_id\":\"40\",\"quantity_on_tray\":\"18\",\"sku_id\":\"4500541\",\"sku_name\":\"Cad bury Dairy Milk Chocolate 18gm\"},{\"quantity_in_db\":\"15\",\"tray_id\":\"41\",\"quantity_on_tray\":\"14\",\"sku_id\":\"4500571\",\"sku_name\":\"Cad bury Perk Plus 38g\"},{\"quantity_in_db\":\"6\",\"tray_id\":\"42\",\"quantity_on_tray\":\"9\",\"sku_id\":\"4500667\",\"sku_name\":\"Farmely Classic date Bites 20gm\"},{\"quantity_in_db\":\"3\",\"tray_id\":\"43\",\"quantity_on_tray\":\"6\",\"sku_id\":\"4500694\",\"sku_name\":\"Aatral Natural Electrolytes 200ml\"},{\"quantity_in_db\":\"6\",\"tray_id\":\"44\",\"quantity_on_tray\":\"8\",\"sku_id\":\"186059\",\"sku_name\":\"Pepsi ZeroSugar  300ml\"},{\"quantity_in_db\":\"6\",\"tray_id\":\"45\",\"quantity_on_tray\":\"6\",\"sku_id\":\"4500704\",\"sku_name\":\"Heritage livo Badam milk 180ml\"},{\"quantity_in_db\":\"1\",\"tray_id\":\"46\",\"quantity_on_tray\":\"5\",\"sku_id\":\"4500706\",\"sku_name\":\"MAA Mango flavoured Fruit drink 170ml\"}],\"message\":\"Tray mismatches found.\"},\"sub-action\":\"verify-refill\"}","command_for":"server","created_at":"2026-06-27 17:02:48","modified_at":"2026-06-27 17:12:28"}
[2026-06-27 17:12:28,788.788 INFO    ] {'server_response': '', 'status': 'active', 'server_status': 'in-progress', 'order_id': '9689994', 'type_of_order': 'refill', 'all_command_response': '[{"action":"get_user_mobile_no","mobile_no":"9036356553","command_for":"server"},{"user_id":9036356553,"allowed":"1","success":"true","refill_id":"9689994","otp":"7223","user":"machine"},{"action":"get_mobile_otp","mobile_no":"9036356553","otp":"7223","command_for":"server"},{"door_size":2,"order_id":"TM06202304_refill_260627170312","active_payment_gateways":"[{\\"payments\\": [{\\"label\\": \\"PayTM\\", \\"name\\": \\"PayTM\\", \\"active\\": 1}, {\\"label\\": \\"PhonePe\\", \\"name\\": \\"PhonePe\\", \\"active\\": 1}, {\\"label\\": \\"Google Pay\\", \\"name\\": \\"GooglePay\\", \\"active\\": 1}, {\\"label\\": \\"BHIM UPI\\", \\"name\\": \\"BHIM\\", \\"active\\": 1}], \\"header\\": \\"QR Payments\\"}, {\\"payments\\": [{\\"label\\": \\"Sodexo Card\\", \\"name\\": \\"Sodexo\\", \\"active\\": 1}, {\\"label\\": \\"Credit\\/Debit Card\\", \\"name\\": \\"Card\\", \\"active\\": 1}, {\\"label\\": \\"QwikCilver\\", \\"name\\": \\"Qwikcilver\\", \\"active\\": 0}], \\"header\\": \\"Card Payments\\"}, {\\"payments\\": [{\\"label\\": \\"LazyPay\\", \\"name\\": \\"LazyPay\\", \\"active\\": 1}, {\\"label\\": \\"OLA Money\\", \\"name\\": \\"Ola\\", \\"active\\": 0}, {\\"label\\": \\"Tiny Wallet\\", \\"name\\": \\"Neuu\\", \\"active\\": 0}], \\"header\\": \\"Wallet Payments\\"}]","status":"True","user_id":9036356553,"refill_order_id":"TM06202304_refill_260627170312","rstatus":true,"refill_id":"9689994","active_doors":["1","2"],"user":"machine"},{"action":"open_door_call","door_no":"1","command_for":"server"},{"SectionMain":{"Header":"Door Open"},"SectionStatus":{"SubHeader":"Please Pick products after opening","UI_Header":"DOOR 1\\nIS \\nOPEN \\nNOW","Header":"Opening Door 1","Note":"Please wait for door to open"},"error":{"umessage":"In Progress","code":20001,"tmessage":"In Progress","data":[]},"status":"False","voiceNote":"Opening Door 1","rstatus":false,"SectionSKU":{"Header":"Pick the below items from the door","skus":[]},"user":"machine"},{"action":"open_door_call","door_no":"2","command_for":"server"},{"SectionMain":{"Header":"Door Open"},"SectionStatus":{"SubHeader":"Please Pick products after opening","UI_Header":"DOOR 2\\nIS \\nOPEN \\nNOW","Header":"Opening Door 2","Note":"Please wait for door to open"},"error":{"umessage":"In Progress","code":20001,"tmessage":"In Progress","data":[]},"status":"False","voiceNote":"Opening Door 2","rstatus":false,"SectionSKU":{"Header":"Pick the below items from the door","skus":[]},"user":"machine"},{"action":"open_door_call","door_no":"1","command_for":"server"},{"SectionMain":{"Header":"Door Open"},"SectionStatus":{"SubHeader":"Please Pick products after opening","UI_Header":"DOOR 1\\nIS \\nOPEN \\nNOW","Header":"Opening Door 1","Note":"Please wait for door to open"},"error":{"umessage":"In Progress","code":20001,"tmessage":"In Progress","data":[]},"status":"False","voiceNote":"Opening Door 1","rstatus":false,"SectionSKU":{"Header":"Pick the below items from the door","skus":[]},"user":"machine"},{"action":"complete_refill","trays":{"11":{"tray_id":"11","door_id":"1","tray_weight":"99999","sku_json":"4500671-6","org_sku":"4500671","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/4500671-2117.jpg","name":"Max Protein Cheese jalapeno  32gm","mrp":"20","weight":"38","qty":"6","id":"11","p_sku":"4500671","p_qty":"6","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500671","l_qty":"1"},"12":{"tray_id":"12","door_id":"1","tray_weight":"99999","sku_json":"4500452-6","org_sku":"4500452","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/4500452-8664.jpg","name":"Bingo Chips Chilli Sprinkled 30gm","mrp":"20","weight":"35","qty":"6","id":"12","p_sku":"4500452","p_qty":"6","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500452","l_qty":"2"},"13":{"tray_id":"13","door_id":"1","tray_weight":"99999","sku_json":"4500713-1","org_sku":"4500713","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/4500713-9506.jpg","name":"MaxVita Indian Style Cream and onion Potato Chips 40gms","mrp":"20","weight":"47","qty":"1","id":"13","p_sku":"4500713","p_qty":"1","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500713","l_qty":"3"},"14":{"id":"14","tray_id":"14","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/4500672-7226.webp","name":"Modern kitchens Garlic Mixture 26gm","mrp":"10","weight":"29","qty":0,"org_sku":"4500672","p_sku":"4500672","p_qty":0,"l_sku":"4500672","l_qty":"4","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500672-0","tray_weight":"99999","modified_at":"2026-06-27 17:03:14","created_at":"2026-06-27 17:03:14"},"15":{"tray_id":"15","door_id":"1","tray_weight":"99999","sku_json":"4500605-8","org_sku":"4500605","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/4500605-6297.png","name":"Ongibytes Garlic Muruku ","mrp":"20","weight":"42","qty":"8","id":"15","p_sku":"4500605","p_qty":"8","p_return_sku":"4500623","p_return_qty":"0","return_sku":"4500623","return_qty":"0","return_image":"https:\\/\\/images.tinymart.in\\/product\\/4500623-9349.webp","l_sku":"4500623","l_qty":"0"},"16":{"tray_id":"16","door_id":"1","tray_weight":"99999","sku_json":"4500696-12","org_sku":"4500696","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/4500696-244.webp","name":"McVities Cashew almond  Cookies 58gm","mrp":"10","weight":"60","qty":"12","id":"16","p_sku":"4500696","p_qty":"12","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500696","l_qty":"4"},"17":{"id":"17","tray_id":"17","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/4500558-8740.jpeg","name":"Kiru Millet Crunchies Bayiruchi Masala 22gm","mrp":"10","weight":"25","qty":0,"org_sku":"4500558","p_sku":"4500558","p_qty":0,"l_sku":"4500558","l_qty":"8","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500558-0","tray_weight":"99999","modified_at":"2026-06-27 17:03:14","created_at":"2026-06-27 17:03:14"},"18":{"tray_id":"18","door_id":"1","tray_weight":"99999","sku_json":"4500681-3","org_sku":"4500681","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/4500681-9948.webp","name":"McVities Orange Cream Biscuts 61gm","mrp":"10","weight":"64","qty":"3","id":"18","p_sku":"4500681","p_qty":"3","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500681","l_qty":"9"},"19":{"tray_id":"19","door_id":"1","tray_weight":"99999","sku_json":"4500650-10","org_sku":"4500650","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/4500650-61.webp","name":"Modern kitchens Green Peas 26gm","mrp":"10","weight":"30","qty":"10","id":"19","p_sku":"4500650","p_qty":"10","p_return_sku":"4500695","p_return_qty":"4","return_sku":"4500695","return_qty":"4","return_image":"https:\\/\\/images.tinymart.in\\/product\\/4500695-4594.jpg","l_sku":"4500695","l_qty":"4"},"20":{"tray_id":"20","door_id":"1","tray_weight":"99999","sku_json":"4500644-8","org_sku":"4500644","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/4500644-3697.png","name":"Ongibytes Pepper Sev 35gm","mrp":"20","weight":"42","qty":"8","id":"20","p_sku":"4500644","p_qty":"8","p_return_sku":"4500679","p_return_qty":"5","return_sku":"4500679","return_qty":"5","return_image":"https:\\/\\/images.tinymart.in\\/product\\/4500679-7835.png","l_sku":"4500679","l_qty":"5"},"21":{"tray_id":"21","door_id":"1","tray_weight":"99999","sku_json":"4500648-8","org_sku":"4500648","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/4500648-25.webp","name":"Modern kitchens Banana Chips 21gm","mrp":"10","weight":"25","qty":"8","id":"21","p_sku":"4500648","p_qty":"8","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500648","l_qty":"3"},"22":{"id":"22","tray_id":"22","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/4500697-7388.webp","name":"McVities Butter Cookies 58gm","mrp":"10","weight":"60","qty":0,"org_sku":"4500697","p_sku":"4500697","p_qty":0,"l_sku":"4500697","l_qty":"11","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500697-0","tray_weight":"99999","modified_at":"2026-06-27 17:03:14","created_at":"2026-06-27 17:03:14"},"23":{"id":"23","tray_id":"23","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/4500570-8490.jpg","name":"Wellbe Crunchy Kodbale 25g","mrp":"10","weight":"35","qty":0,"org_sku":"4500570","p_sku":"4500570","p_qty":0,"l_sku":"4500570","l_qty":"4","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500570-0","tray_weight":"99999","modified_at":"2026-06-27 17:03:14","created_at":"2026-06-27 17:03:14"},"24":{"id":"24","tray_id":"24","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/4500710-1463.png","name":"MaxVita Premium crunch Rusk 51gm","mrp":"10","weight":"55","qty":0,"org_sku":"4500710","p_sku":"4500710","p_qty":0,"l_sku":"4500710","l_qty":"8","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500710-0","tray_weight":"99999","modified_at":"2026-06-27 17:03:14","created_at":"2026-06-27 17:03:14"},"25":{"tray_id":"25","door_id":"1","tray_weight":"99999","sku_json":"4500646-10","org_sku":"4500646","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/4500646-2968.webp","name":"Modern Kitchens Moong daal 30g","mrp":"10","weight":"35","qty":"10","id":"25","p_sku":"4500646","p_qty":"10","p_return_sku":"4500557","p_return_qty":"3","return_sku":"4500557","return_qty":"3","return_image":"https:\\/\\/images.tinymart.in\\/product\\/4500557-4993.jpeg","l_sku":"4500557","l_qty":"3"},"26":{"tray_id":"26","door_id":"1","tray_weight":"99999","sku_json":"4500650-6","org_sku":"4500650","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/4500650-61.webp","name":"Modern kitchens Green Peas 26gm","mrp":"10","weight":"30","qty":"6","id":"26","p_sku":"4500650","p_qty":"6","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500650","l_qty":"4"},"27":{"id":"27","tray_id":"27","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/4500647-1968.png","name":"Modern kitchens Roasted Channa 32g","mrp":"10","weight":"36","qty":0,"org_sku":"4500647","p_sku":"4500647","p_qty":0,"l_sku":"4500647","l_qty":"8","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500647-0","tray_weight":"99999","modified_at":"2026-06-27 17:03:14","created_at":"2026-06-27 17:03:14"},"31":{"tray_id":"31","door_id":"2","tray_weight":"99999","sku_json":"166327-1","org_sku":"166327","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/166327-5644.jpg","name":"Epigamia Chocolate Milkshake 200g","mrp":"38","weight":"210","qty":"1","id":"31","p_sku":"166327","p_qty":"1","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"166327","l_qty":"5"},"32":{"id":"32","tray_id":"32","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/108676-2689.jpg","name":"Paper Boat Orange Pouch - 150Ml","mrp":"25","weight":"177","qty":0,"org_sku":"108676","p_sku":"108676","p_qty":0,"l_sku":"108676","l_qty":"5","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"108676-0","tray_weight":"99999","modified_at":"2026-06-27 17:03:14","created_at":"2026-06-27 17:03:14"},"33":{"tray_id":"33","door_id":"2","tray_weight":"99999","sku_json":"186043-8","org_sku":"186043","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/186043-5089.png","name":"Bindu Fizz Jeera Masala 250 ML","mrp":"20","weight":"295","qty":"8","id":"33","p_sku":"186043","p_qty":"8","p_return_sku":"4500651","p_return_qty":"2","return_sku":"4500651","return_qty":"2","return_image":"https:\\/\\/images.tinymart.in\\/product\\/4500651-8004.webp","l_sku":"4500651","l_qty":"2"},"34":{"id":"34","tray_id":"34","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/4500407-2060.jpg","name":"Paper boat Alphonso Mango 160ml","mrp":"25","weight":"175","qty":0,"org_sku":"4500407","p_sku":"4500407","p_qty":0,"l_sku":"4500407","l_qty":"5","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500407-0","tray_weight":"99999","modified_at":"2026-06-27 17:03:14","created_at":"2026-06-27 17:03:14"},"35":{"id":"35","tray_id":"35","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/186078-2883.png","name":"Paper boat Aam Panna 150ml","mrp":"25","weight":"166","qty":0,"org_sku":"186078","p_sku":"186078","p_qty":0,"l_sku":"186078","l_qty":"4","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"186078-0","tray_weight":"99999","modified_at":"2026-06-27 17:03:14","created_at":"2026-06-27 17:03:14"},"36":{"tray_id":"36","door_id":"2","tray_weight":"99999","sku_json":"4500675-1","org_sku":"4500675","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/4500675-5033.jpg","name":"Paper Boat Lychee 160ml","mrp":"25","weight":"175","qty":"1","id":"36","p_sku":"4500675","p_qty":"1","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500675","l_qty":"5"},"37":{"id":"37","tray_id":"37","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/4500702-1302.webp","name":"Raw Masala Shikanji 200ml","mrp":"30","weight":"222","qty":0,"org_sku":"4500702","p_sku":"4500702","p_qty":0,"l_sku":"4500702","l_qty":"5","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500702-0","tray_weight":"99999","modified_at":"2026-06-27 17:03:14","created_at":"2026-06-27 17:03:14"},"38":{"id":"38","tray_id":"38","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/4500656-2520.webp","name":"BRU Cold Coffee Classic 200ml","mrp":"60","weight":"225","qty":0,"org_sku":"4500656","p_sku":"4500656","p_qty":0,"l_sku":"4500656","l_qty":"5","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500656-0","tray_weight":"99999","modified_at":"2026-06-27 17:03:14","created_at":"2026-06-27 17:03:14"},"39":{"id":"39","tray_id":"39","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/4500499-5719.webp","name":"Heritage A1 Spiced Butter Milk180ml","mrp":"20","weight":"192","qty":0,"org_sku":"4500499","p_sku":"4500499","p_qty":0,"l_sku":"4500499","l_qty":"6","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500499-0","tray_weight":"99999","modified_at":"2026-06-27 17:03:14","created_at":"2026-06-27 17:03:14"},"40":{"tray_id":"40","door_id":"2","tray_weight":"99999","sku_json":"4500541-15","org_sku":"4500541","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/4500541-6798.jpg","name":"Cad bury Dairy Milk Chocolate 18gm","mrp":"20","weight":"19","qty":"15","id":"40","p_sku":"4500541","p_qty":"15","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500541","l_qty":"1"},"41":{"tray_id":"41","door_id":"2","tray_weight":"99999","sku_json":"4500571-15","org_sku":"4500571","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/4500571-5060.jpg","name":"Cad bury Perk Plus 38g","mrp":"20","weight":"42","qty":"15","id":"41","p_sku":"4500571","p_qty":"15","p_return_sku":"112220","p_return_qty":"0","return_sku":"112220","return_qty":"0","return_image":"https:\\/\\/images.tinymart.in\\/product\\/112220-2513.jpg","l_sku":"112220","l_qty":"0"},"42":{"tray_id":"42","door_id":"2","tray_weight":"99999","sku_json":"4500694-6","org_sku":"4500667","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/4500694-1219.png","name":"Aatral Natural Electrolytes 200ml","mrp":"60","weight":"232","qty":"6","id":"42","p_sku":"4500694","p_qty":"6","p_return_sku":"186084","p_return_qty":"0","return_image":"https:\\/\\/images.tinymart.in\\/product\\/186084-5395.png","l_sku":"186084","l_qty":"0"},"43":{"tray_id":"43","door_id":"2","tray_weight":"99999","sku_json":"4500667-3","org_sku":"4500694","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/4500667-4339.webp","name":"Farmely Classic date Bites 20gm","mrp":"40","weight":"23","qty":"3","id":"43","p_sku":"4500667","p_qty":"3","p_return_sku":"4500667","p_return_qty":"6","l_sku":"4500667","l_qty":"6"},"44":{"tray_id":"44","door_id":"2","tray_weight":"99999","sku_json":"186059-6","org_sku":"186059","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/186059-5330.png","name":"Pepsi ZeroSugar  300ml","mrp":"40","weight":"310","qty":"6","id":"44","p_sku":"186059","p_qty":"6","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"186059","l_qty":"2"},"45":{"tray_id":"45","door_id":"2","tray_weight":"99999","sku_json":"4500704-6","org_sku":"4500704","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/4500704-2291.webp","name":"Heritage livo Badam milk 180ml","mrp":"30","weight":"210","qty":"6","id":"45","p_sku":"4500704","p_qty":"6","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500704","l_qty":"0"},"46":{"tray_id":"46","door_id":"2","tray_weight":"99999","sku_json":"4500706-1","org_sku":"4500706","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/4500706-1073.webp","name":"MAA Mango flavoured Fruit drink 170ml","mrp":"20","weight":"185","qty":"1","id":"46","p_sku":"4500706","p_qty":"1","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500706","l_qty":"4"}},"command_for":"server"},{"success":true,"tray_mismatches":[{"quantity_in_db":"6","tray_id":"11","quantity_on_tray":"6","sku_id":"4500671","sku_name":"Max Protein Cheese jalapeno  32gm"},{"quantity_in_db":"6","tray_id":"12","quantity_on_tray":"6","sku_id":"4500452","sku_name":"Bingo Chips Chilli Sprinkled 30gm"},{"quantity_in_db":"1","tray_id":"13","quantity_on_tray":"6","sku_id":"4500713","sku_name":"MaxVita Indian Style Cream and onion Potato Chips 40gms"},{"quantity_in_db":"0","tray_id":"14","quantity_on_tray":"6","sku_id":"4500672","sku_name":"Modern kitchens Garlic Mixture 26gm"},{"quantity_in_db":"8","tray_id":"15","quantity_on_tray":"9","sku_id":"4500605","sku_name":"Ongibytes Garlic Muruku "},{"quantity_in_db":"12","tray_id":"16","quantity_on_tray":"10","sku_id":"4500696","sku_name":"McVities Cashew almond  Cookies 58gm"},{"quantity_in_db":"0","tray_id":"17","quantity_on_tray":"9","sku_id":"4500558","sku_name":"Kiru Millet Crunchies Bayiruchi Masala 22gm"},{"quantity_in_db":"3","tray_id":"18","quantity_on_tray":"13","sku_id":"4500681","sku_name":"McVities Orange Cream Biscuts 61gm"},{"quantity_in_db":"10","tray_id":"19","quantity_on_tray":"9","sku_id":"4500650","sku_name":"Modern kitchens Green Peas 26gm"},{"quantity_in_db":"8","tray_id":"20","quantity_on_tray":"8","sku_id":"4500644","sku_name":"Ongibytes Pepper Sev 35gm"},{"quantity_in_db":"8","tray_id":"21","quantity_on_tray":"10","sku_id":"4500648","sku_name":"Modern kitchens Banana Chips 21gm"},{"quantity_in_db":"0","tray_id":"22","quantity_on_tray":"11","sku_id":"4500697","sku_name":"McVities Butter Cookies 58gm"},{"quantity_in_db":"0","tray_id":"23","quantity_on_tray":"5","sku_id":"4500570","sku_name":"Wellbe Crunchy Kodbale 25g"},{"quantity_in_db":"0","tray_id":"24","quantity_on_tray":"8","sku_id":"4500710","sku_name":"MaxVita Premium crunch Rusk 51gm"},{"quantity_in_db":"10","tray_id":"25","quantity_on_tray":"7","sku_id":"4500646","sku_name":"Modern Kitchens Moong daal 30g"},{"quantity_in_db":"6","tray_id":"26","quantity_on_tray":"8","sku_id":"4500650","sku_name":"Modern kitchens Green Peas 26gm"},{"quantity_in_db":"0","tray_id":"27","quantity_on_tray":"8","sku_id":"4500647","sku_name":"Modern kitchens Roasted Channa 32g"},{"quantity_in_db":"1","tray_id":"31","quantity_on_tray":"5","sku_id":"166327","sku_name":"Epigamia Chocolate Milkshake 200g"},{"quantity_in_db":"0","tray_id":"32","quantity_on_tray":"5","sku_id":"108676","sku_name":"Paper Boat Orange Pouch - 150Ml"},{"quantity_in_db":"8","tray_id":"33","quantity_on_tray":"7","sku_id":"186043","sku_name":"Bindu Fizz Jeera Masala 250 ML"},{"quantity_in_db":"0","tray_id":"34","quantity_on_tray":"5","sku_id":"4500407","sku_name":"Paper boat Alphonso Mango 160ml"},{"quantity_in_db":"0","tray_id":"35","quantity_on_tray":"5","sku_id":"186078","sku_name":"Paper boat Aam Panna 150ml"},{"quantity_in_db":"1","tray_id":"36","quantity_on_tray":"6","sku_id":"4500675","sku_name":"Paper Boat Lychee 160ml"},{"quantity_in_db":"0","tray_id":"37","quantity_on_tray":"5","sku_id":"4500702","sku_name":"Raw Masala Shikanji 200ml"},{"quantity_in_db":"0","tray_id":"38","quantity_on_tray":"5","sku_id":"4500656","sku_name":"BRU Cold Coffee Classic 200ml"},{"quantity_in_db":"0","tray_id":"39","quantity_on_tray":"7","sku_id":"4500499","sku_name":"Heritage A1 Spiced Butter Milk180ml"},{"quantity_in_db":"15","tray_id":"40","quantity_on_tray":"18","sku_id":"4500541","sku_name":"Cad bury Dairy Milk Chocolate 18gm"},{"quantity_in_db":"15","tray_id":"41","quantity_on_tray":"14","sku_id":"4500571","sku_name":"Cad bury Perk Plus 38g"},{"quantity_in_db":"6","tray_id":"42","quantity_on_tray":"9","sku_id":"4500667","sku_name":"Farmely Classic date Bites 20gm"},{"quantity_in_db":"3","tray_id":"43","quantity_on_tray":"6","sku_id":"4500694","sku_name":"Aatral Natural Electrolytes 200ml"},{"quantity_in_db":"6","tray_id":"44","quantity_on_tray":"8","sku_id":"186059","sku_name":"Pepsi ZeroSugar  300ml"},{"quantity_in_db":"6","tray_id":"45","quantity_on_tray":"6","sku_id":"4500704","sku_name":"Heritage livo Badam milk 180ml"},{"quantity_in_db":"1","tray_id":"46","quantity_on_tray":"5","sku_id":"4500706","sku_name":"MAA Mango flavoured Fruit drink 170ml"}],"message":"Tray mismatches found.","user":"machine"}]', 'command_for': 'server', 'created_at': '2026-06-27 17:02:48', 'command_request_data': '{"user":"server","refill_order_id":"TM06202304_refill_260627170312","response_data":{"success":true,"tray_mismatches":[{"quantity_in_db":"6","tray_id":"11","quantity_on_tray":"6","sku_id":"4500671","sku_name":"Max Protein Cheese jalapeno  32gm"},{"quantity_in_db":"6","tray_id":"12","quantity_on_tray":"6","sku_id":"4500452","sku_name":"Bingo Chips Chilli Sprinkled 30gm"},{"quantity_in_db":"1","tray_id":"13","quantity_on_tray":"6","sku_id":"4500713","sku_name":"MaxVita Indian Style Cream and onion Potato Chips 40gms"},{"quantity_in_db":"0","tray_id":"14","quantity_on_tray":"6","sku_id":"4500672","sku_name":"Modern kitchens Garlic Mixture 26gm"},{"quantity_in_db":"8","tray_id":"15","quantity_on_tray":"9","sku_id":"4500605","sku_name":"Ongibytes Garlic Muruku "},{"quantity_in_db":"12","tray_id":"16","quantity_on_tray":"10","sku_id":"4500696","sku_name":"McVities Cashew almond  Cookies 58gm"},{"quantity_in_db":"0","tray_id":"17","quantity_on_tray":"9","sku_id":"4500558","sku_name":"Kiru Millet Crunchies Bayiruchi Masala 22gm"},{"quantity_in_db":"3","tray_id":"18","quantity_on_tray":"13","sku_id":"4500681","sku_name":"McVities Orange Cream Biscuts 61gm"},{"quantity_in_db":"10","tray_id":"19","quantity_on_tray":"9","sku_id":"4500650","sku_name":"Modern kitchens Green Peas 26gm"},{"quantity_in_db":"8","tray_id":"20","quantity_on_tray":"8","sku_id":"4500644","sku_name":"Ongibytes Pepper Sev 35gm"},{"quantity_in_db":"8","tray_id":"21","quantity_on_tray":"10","sku_id":"4500648","sku_name":"Modern kitchens Banana Chips 21gm"},{"quantity_in_db":"0","tray_id":"22","quantity_on_tray":"11","sku_id":"4500697","sku_name":"McVities Butter Cookies 58gm"},{"quantity_in_db":"0","tray_id":"23","quantity_on_tray":"5","sku_id":"4500570","sku_name":"Wellbe Crunchy Kodbale 25g"},{"quantity_in_db":"0","tray_id":"24","quantity_on_tray":"8","sku_id":"4500710","sku_name":"MaxVita Premium crunch Rusk 51gm"},{"quantity_in_db":"10","tray_id":"25","quantity_on_tray":"7","sku_id":"4500646","sku_name":"Modern Kitchens Moong daal 30g"},{"quantity_in_db":"6","tray_id":"26","quantity_on_tray":"8","sku_id":"4500650","sku_name":"Modern kitchens Green Peas 26gm"},{"quantity_in_db":"0","tray_id":"27","quantity_on_tray":"8","sku_id":"4500647","sku_name":"Modern kitchens Roasted Channa 32g"},{"quantity_in_db":"1","tray_id":"31","quantity_on_tray":"5","sku_id":"166327","sku_name":"Epigamia Chocolate Milkshake 200g"},{"quantity_in_db":"0","tray_id":"32","quantity_on_tray":"5","sku_id":"108676","sku_name":"Paper Boat Orange Pouch - 150Ml"},{"quantity_in_db":"8","tray_id":"33","quantity_on_tray":"7","sku_id":"186043","sku_name":"Bindu Fizz Jeera Masala 250 ML"},{"quantity_in_db":"0","tray_id":"34","quantity_on_tray":"5","sku_id":"4500407","sku_name":"Paper boat Alphonso Mango 160ml"},{"quantity_in_db":"0","tray_id":"35","quantity_on_tray":"5","sku_id":"186078","sku_name":"Paper boat Aam Panna 150ml"},{"quantity_in_db":"1","tray_id":"36","quantity_on_tray":"6","sku_id":"4500675","sku_name":"Paper Boat Lychee 160ml"},{"quantity_in_db":"0","tray_id":"37","quantity_on_tray":"5","sku_id":"4500702","sku_name":"Raw Masala Shikanji 200ml"},{"quantity_in_db":"0","tray_id":"38","quantity_on_tray":"5","sku_id":"4500656","sku_name":"BRU Cold Coffee Classic 200ml"},{"quantity_in_db":"0","tray_id":"39","quantity_on_tray":"7","sku_id":"4500499","sku_name":"Heritage A1 Spiced Butter Milk180ml"},{"quantity_in_db":"15","tray_id":"40","quantity_on_tray":"18","sku_id":"4500541","sku_name":"Cad bury Dairy Milk Chocolate 18gm"},{"quantity_in_db":"15","tray_id":"41","quantity_on_tray":"14","sku_id":"4500571","sku_name":"Cad bury Perk Plus 38g"},{"quantity_in_db":"6","tray_id":"42","quantity_on_tray":"9","sku_id":"4500667","sku_name":"Farmely Classic date Bites 20gm"},{"quantity_in_db":"3","tray_id":"43","quantity_on_tray":"6","sku_id":"4500694","sku_name":"Aatral Natural Electrolytes 200ml"},{"quantity_in_db":"6","tray_id":"44","quantity_on_tray":"8","sku_id":"186059","sku_name":"Pepsi ZeroSugar  300ml"},{"quantity_in_db":"6","tray_id":"45","quantity_on_tray":"6","sku_id":"4500704","sku_name":"Heritage livo Badam milk 180ml"},{"quantity_in_db":"1","tray_id":"46","quantity_on_tray":"5","sku_id":"4500706","sku_name":"MAA Mango flavoured Fruit drink 170ml"}],"message":"Tray mismatches found."},"action_name":"verify refill Qty","action":"open_door_process","active_doors":["1","2"],"request_data":{"success":true,"tray_mismatches":[{"quantity_in_db":"6","tray_id":"11","quantity_on_tray":"6","sku_id":"4500671","sku_name":"Max Protein Cheese jalapeno  32gm"},{"quantity_in_db":"6","tray_id":"12","quantity_on_tray":"6","sku_id":"4500452","sku_name":"Bingo Chips Chilli Sprinkled 30gm"},{"quantity_in_db":"1","tray_id":"13","quantity_on_tray":"6","sku_id":"4500713","sku_name":"MaxVita Indian Style Cream and onion Potato Chips 40gms"},{"quantity_in_db":"0","tray_id":"14","quantity_on_tray":"6","sku_id":"4500672","sku_name":"Modern kitchens Garlic Mixture 26gm"},{"quantity_in_db":"8","tray_id":"15","quantity_on_tray":"9","sku_id":"4500605","sku_name":"Ongibytes Garlic Muruku "},{"quantity_in_db":"12","tray_id":"16","quantity_on_tray":"10","sku_id":"4500696","sku_name":"McVities Cashew almond  Cookies 58gm"},{"quantity_in_db":"0","tray_id":"17","quantity_on_tray":"9","sku_id":"4500558","sku_name":"Kiru Millet Crunchies Bayiruchi Masala 22gm"},{"quantity_in_db":"3","tray_id":"18","quantity_on_tray":"13","sku_id":"4500681","sku_name":"McVities Orange Cream Biscuts 61gm"},{"quantity_in_db":"10","tray_id":"19","quantity_on_tray":"9","sku_id":"4500650","sku_name":"Modern kitchens Green Peas 26gm"},{"quantity_in_db":"8","tray_id":"20","quantity_on_tray":"8","sku_id":"4500644","sku_name":"Ongibytes Pepper Sev 35gm"},{"quantity_in_db":"8","tray_id":"21","quantity_on_tray":"10","sku_id":"4500648","sku_name":"Modern kitchens Banana Chips 21gm"},{"quantity_in_db":"0","tray_id":"22","quantity_on_tray":"11","sku_id":"4500697","sku_name":"McVities Butter Cookies 58gm"},{"quantity_in_db":"0","tray_id":"23","quantity_on_tray":"5","sku_id":"4500570","sku_name":"Wellbe Crunchy Kodbale 25g"},{"quantity_in_db":"0","tray_id":"24","quantity_on_tray":"8","sku_id":"4500710","sku_name":"MaxVita Premium crunch Rusk 51gm"},{"quantity_in_db":"10","tray_id":"25","quantity_on_tray":"7","sku_id":"4500646","sku_name":"Modern Kitchens Moong daal 30g"},{"quantity_in_db":"6","tray_id":"26","quantity_on_tray":"8","sku_id":"4500650","sku_name":"Modern kitchens Green Peas 26gm"},{"quantity_in_db":"0","tray_id":"27","quantity_on_tray":"8","sku_id":"4500647","sku_name":"Modern kitchens Roasted Channa 32g"},{"quantity_in_db":"1","tray_id":"31","quantity_on_tray":"5","sku_id":"166327","sku_name":"Epigamia Chocolate Milkshake 200g"},{"quantity_in_db":"0","tray_id":"32","quantity_on_tray":"5","sku_id":"108676","sku_name":"Paper Boat Orange Pouch - 150Ml"},{"quantity_in_db":"8","tray_id":"33","quantity_on_tray":"7","sku_id":"186043","sku_name":"Bindu Fizz Jeera Masala 250 ML"},{"quantity_in_db":"0","tray_id":"34","quantity_on_tray":"5","sku_id":"4500407","sku_name":"Paper boat Alphonso Mango 160ml"},{"quantity_in_db":"0","tray_id":"35","quantity_on_tray":"5","sku_id":"186078","sku_name":"Paper boat Aam Panna 150ml"},{"quantity_in_db":"1","tray_id":"36","quantity_on_tray":"6","sku_id":"4500675","sku_name":"Paper Boat Lychee 160ml"},{"quantity_in_db":"0","tray_id":"37","quantity_on_tray":"5","sku_id":"4500702","sku_name":"Raw Masala Shikanji 200ml"},{"quantity_in_db":"0","tray_id":"38","quantity_on_tray":"5","sku_id":"4500656","sku_name":"BRU Cold Coffee Classic 200ml"},{"quantity_in_db":"0","tray_id":"39","quantity_on_tray":"7","sku_id":"4500499","sku_name":"Heritage A1 Spiced Butter Milk180ml"},{"quantity_in_db":"15","tray_id":"40","quantity_on_tray":"18","sku_id":"4500541","sku_name":"Cad bury Dairy Milk Chocolate 18gm"},{"quantity_in_db":"15","tray_id":"41","quantity_on_tray":"14","sku_id":"4500571","sku_name":"Cad bury Perk Plus 38g"},{"quantity_in_db":"6","tray_id":"42","quantity_on_tray":"9","sku_id":"4500667","sku_name":"Farmely Classic date Bites 20gm"},{"quantity_in_db":"3","tray_id":"43","quantity_on_tray":"6","sku_id":"4500694","sku_name":"Aatral Natural Electrolytes 200ml"},{"quantity_in_db":"6","tray_id":"44","quantity_on_tray":"8","sku_id":"186059","sku_name":"Pepsi ZeroSugar  300ml"},{"quantity_in_db":"6","tray_id":"45","quantity_on_tray":"6","sku_id":"4500704","sku_name":"Heritage livo Badam milk 180ml"},{"quantity_in_db":"1","tray_id":"46","quantity_on_tray":"5","sku_id":"4500706","sku_name":"MAA Mango flavoured Fruit drink 170ml"}],"message":"Tray mismatches found."},"sub-action":"verify-refill"}', 'command_todo': 'interactive-refill', 'last_command_response': '{"success":true,"tray_mismatches":[{"quantity_in_db":"6","tray_id":"11","quantity_on_tray":"6","sku_id":"4500671","sku_name":"Max Protein Cheese jalapeno  32gm"},{"quantity_in_db":"6","tray_id":"12","quantity_on_tray":"6","sku_id":"4500452","sku_name":"Bingo Chips Chilli Sprinkled 30gm"},{"quantity_in_db":"1","tray_id":"13","quantity_on_tray":"6","sku_id":"4500713","sku_name":"MaxVita Indian Style Cream and onion Potato Chips 40gms"},{"quantity_in_db":"0","tray_id":"14","quantity_on_tray":"6","sku_id":"4500672","sku_name":"Modern kitchens Garlic Mixture 26gm"},{"quantity_in_db":"8","tray_id":"15","quantity_on_tray":"9","sku_id":"4500605","sku_name":"Ongibytes Garlic Muruku "},{"quantity_in_db":"12","tray_id":"16","quantity_on_tray":"10","sku_id":"4500696","sku_name":"McVities Cashew almond  Cookies 58gm"},{"quantity_in_db":"0","tray_id":"17","quantity_on_tray":"9","sku_id":"4500558","sku_name":"Kiru Millet Crunchies Bayiruchi Masala 22gm"},{"quantity_in_db":"3","tray_id":"18","quantity_on_tray":"13","sku_id":"4500681","sku_name":"McVities Orange Cream Biscuts 61gm"},{"quantity_in_db":"10","tray_id":"19","quantity_on_tray":"9","sku_id":"4500650","sku_name":"Modern kitchens Green Peas 26gm"},{"quantity_in_db":"8","tray_id":"20","quantity_on_tray":"8","sku_id":"4500644","sku_name":"Ongibytes Pepper Sev 35gm"},{"quantity_in_db":"8","tray_id":"21","quantity_on_tray":"10","sku_id":"4500648","sku_name":"Modern kitchens Banana Chips 21gm"},{"quantity_in_db":"0","tray_id":"22","quantity_on_tray":"11","sku_id":"4500697","sku_name":"McVities Butter Cookies 58gm"},{"quantity_in_db":"0","tray_id":"23","quantity_on_tray":"5","sku_id":"4500570","sku_name":"Wellbe Crunchy Kodbale 25g"},{"quantity_in_db":"0","tray_id":"24","quantity_on_tray":"8","sku_id":"4500710","sku_name":"MaxVita Premium crunch Rusk 51gm"},{"quantity_in_db":"10","tray_id":"25","quantity_on_tray":"7","sku_id":"4500646","sku_name":"Modern Kitchens Moong daal 30g"},{"quantity_in_db":"6","tray_id":"26","quantity_on_tray":"8","sku_id":"4500650","sku_name":"Modern kitchens Green Peas 26gm"},{"quantity_in_db":"0","tray_id":"27","quantity_on_tray":"8","sku_id":"4500647","sku_name":"Modern kitchens Roasted Channa 32g"},{"quantity_in_db":"1","tray_id":"31","quantity_on_tray":"5","sku_id":"166327","sku_name":"Epigamia Chocolate Milkshake 200g"},{"quantity_in_db":"0","tray_id":"32","quantity_on_tray":"5","sku_id":"108676","sku_name":"Paper Boat Orange Pouch - 150Ml"},{"quantity_in_db":"8","tray_id":"33","quantity_on_tray":"7","sku_id":"186043","sku_name":"Bindu Fizz Jeera Masala 250 ML"},{"quantity_in_db":"0","tray_id":"34","quantity_on_tray":"5","sku_id":"4500407","sku_name":"Paper boat Alphonso Mango 160ml"},{"quantity_in_db":"0","tray_id":"35","quantity_on_tray":"5","sku_id":"186078","sku_name":"Paper boat Aam Panna 150ml"},{"quantity_in_db":"1","tray_id":"36","quantity_on_tray":"6","sku_id":"4500675","sku_name":"Paper Boat Lychee 160ml"},{"quantity_in_db":"0","tray_id":"37","quantity_on_tray":"5","sku_id":"4500702","sku_name":"Raw Masala Shikanji 200ml"},{"quantity_in_db":"0","tray_id":"38","quantity_on_tray":"5","sku_id":"4500656","sku_name":"BRU Cold Coffee Classic 200ml"},{"quantity_in_db":"0","tray_id":"39","quantity_on_tray":"7","sku_id":"4500499","sku_name":"Heritage A1 Spiced Butter Milk180ml"},{"quantity_in_db":"15","tray_id":"40","quantity_on_tray":"18","sku_id":"4500541","sku_name":"Cad bury Dairy Milk Chocolate 18gm"},{"quantity_in_db":"15","tray_id":"41","quantity_on_tray":"14","sku_id":"4500571","sku_name":"Cad bury Perk Plus 38g"},{"quantity_in_db":"6","tray_id":"42","quantity_on_tray":"9","sku_id":"4500667","sku_name":"Farmely Classic date Bites 20gm"},{"quantity_in_db":"3","tray_id":"43","quantity_on_tray":"6","sku_id":"4500694","sku_name":"Aatral Natural Electrolytes 200ml"},{"quantity_in_db":"6","tray_id":"44","quantity_on_tray":"8","sku_id":"186059","sku_name":"Pepsi ZeroSugar  300ml"},{"quantity_in_db":"6","tray_id":"45","quantity_on_tray":"6","sku_id":"4500704","sku_name":"Heritage livo Badam milk 180ml"},{"quantity_in_db":"1","tray_id":"46","quantity_on_tray":"5","sku_id":"4500706","sku_name":"MAA Mango flavoured Fruit drink 170ml"}],"message":"Tray mismatches found.","user":"machine"}', 'vm_id': '1686833081377', 'modified_at': '2026-06-27 17:12:28', 'user_id': '9036356553'}
[2026-06-27 17:12:28,790.790 INFO    ] {'server_response': '', 'status': 'active', 'server_status': 'in-progress', 'order_id': '9689994', 'type_of_order': 'refill', 'all_command_response': '[{"action":"get_user_mobile_no","mobile_no":"9036356553","command_for":"server"},{"user_id":9036356553,"allowed":"1","success":"true","refill_id":"9689994","otp":"7223","user":"machine"},{"action":"get_mobile_otp","mobile_no":"9036356553","otp":"7223","command_for":"server"},{"door_size":2,"order_id":"TM06202304_refill_260627170312","active_payment_gateways":"[{\\"payments\\": [{\\"label\\": \\"PayTM\\", \\"name\\": \\"PayTM\\", \\"active\\": 1}, {\\"label\\": \\"PhonePe\\", \\"name\\": \\"PhonePe\\", \\"active\\": 1}, {\\"label\\": \\"Google Pay\\", \\"name\\": \\"GooglePay\\", \\"active\\": 1}, {\\"label\\": \\"BHIM UPI\\", \\"name\\": \\"BHIM\\", \\"active\\": 1}], \\"header\\": \\"QR Payments\\"}, {\\"payments\\": [{\\"label\\": \\"Sodexo Card\\", \\"name\\": \\"Sodexo\\", \\"active\\": 1}, {\\"label\\": \\"Credit\\/Debit Card\\", \\"name\\": \\"Card\\", \\"active\\": 1}, {\\"label\\": \\"QwikCilver\\", \\"name\\": \\"Qwikcilver\\", \\"active\\": 0}], \\"header\\": \\"Card Payments\\"}, {\\"payments\\": [{\\"label\\": \\"LazyPay\\", \\"name\\": \\"LazyPay\\", \\"active\\": 1}, {\\"label\\": \\"OLA Money\\", \\"name\\": \\"Ola\\", \\"active\\": 0}, {\\"label\\": \\"Tiny Wallet\\", \\"name\\": \\"Neuu\\", \\"active\\": 0}], \\"header\\": \\"Wallet Payments\\"}]","status":"True","user_id":9036356553,"refill_order_id":"TM06202304_refill_260627170312","rstatus":true,"refill_id":"9689994","active_doors":["1","2"],"user":"machine"},{"action":"open_door_call","door_no":"1","command_for":"server"},{"SectionMain":{"Header":"Door Open"},"SectionStatus":{"SubHeader":"Please Pick products after opening","UI_Header":"DOOR 1\\nIS \\nOPEN \\nNOW","Header":"Opening Door 1","Note":"Please wait for door to open"},"error":{"umessage":"In Progress","code":20001,"tmessage":"In Progress","data":[]},"status":"False","voiceNote":"Opening Door 1","rstatus":false,"SectionSKU":{"Header":"Pick the below items from the door","skus":[]},"user":"machine"},{"action":"open_door_call","door_no":"2","command_for":"server"},{"SectionMain":{"Header":"Door Open"},"SectionStatus":{"SubHeader":"Please Pick products after opening","UI_Header":"DOOR 2\\nIS \\nOPEN \\nNOW","Header":"Opening Door 2","Note":"Please wait for door to open"},"error":{"umessage":"In Progress","code":20001,"tmessage":"In Progress","data":[]},"status":"False","voiceNote":"Opening Door 2","rstatus":false,"SectionSKU":{"Header":"Pick the below items from the door","skus":[]},"user":"machine"},{"action":"open_door_call","door_no":"1","command_for":"server"},{"SectionMain":{"Header":"Door Open"},"SectionStatus":{"SubHeader":"Please Pick products after opening","UI_Header":"DOOR 1\\nIS \\nOPEN \\nNOW","Header":"Opening Door 1","Note":"Please wait for door to open"},"error":{"umessage":"In Progress","code":20001,"tmessage":"In Progress","data":[]},"status":"False","voiceNote":"Opening Door 1","rstatus":false,"SectionSKU":{"Header":"Pick the below items from the door","skus":[]},"user":"machine"},{"action":"complete_refill","trays":{"11":{"tray_id":"11","door_id":"1","tray_weight":"99999","sku_json":"4500671-6","org_sku":"4500671","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/4500671-2117.jpg","name":"Max Protein Cheese jalapeno  32gm","mrp":"20","weight":"38","qty":"6","id":"11","p_sku":"4500671","p_qty":"6","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500671","l_qty":"1"},"12":{"tray_id":"12","door_id":"1","tray_weight":"99999","sku_json":"4500452-6","org_sku":"4500452","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/4500452-8664.jpg","name":"Bingo Chips Chilli Sprinkled 30gm","mrp":"20","weight":"35","qty":"6","id":"12","p_sku":"4500452","p_qty":"6","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500452","l_qty":"2"},"13":{"tray_id":"13","door_id":"1","tray_weight":"99999","sku_json":"4500713-1","org_sku":"4500713","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/4500713-9506.jpg","name":"MaxVita Indian Style Cream and onion Potato Chips 40gms","mrp":"20","weight":"47","qty":"1","id":"13","p_sku":"4500713","p_qty":"1","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500713","l_qty":"3"},"14":{"id":"14","tray_id":"14","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/4500672-7226.webp","name":"Modern kitchens Garlic Mixture 26gm","mrp":"10","weight":"29","qty":0,"org_sku":"4500672","p_sku":"4500672","p_qty":0,"l_sku":"4500672","l_qty":"4","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500672-0","tray_weight":"99999","modified_at":"2026-06-27 17:03:14","created_at":"2026-06-27 17:03:14"},"15":{"tray_id":"15","door_id":"1","tray_weight":"99999","sku_json":"4500605-8","org_sku":"4500605","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/4500605-6297.png","name":"Ongibytes Garlic Muruku ","mrp":"20","weight":"42","qty":"8","id":"15","p_sku":"4500605","p_qty":"8","p_return_sku":"4500623","p_return_qty":"0","return_sku":"4500623","return_qty":"0","return_image":"https:\\/\\/images.tinymart.in\\/product\\/4500623-9349.webp","l_sku":"4500623","l_qty":"0"},"16":{"tray_id":"16","door_id":"1","tray_weight":"99999","sku_json":"4500696-12","org_sku":"4500696","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/4500696-244.webp","name":"McVities Cashew almond  Cookies 58gm","mrp":"10","weight":"60","qty":"12","id":"16","p_sku":"4500696","p_qty":"12","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500696","l_qty":"4"},"17":{"id":"17","tray_id":"17","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/4500558-8740.jpeg","name":"Kiru Millet Crunchies Bayiruchi Masala 22gm","mrp":"10","weight":"25","qty":0,"org_sku":"4500558","p_sku":"4500558","p_qty":0,"l_sku":"4500558","l_qty":"8","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500558-0","tray_weight":"99999","modified_at":"2026-06-27 17:03:14","created_at":"2026-06-27 17:03:14"},"18":{"tray_id":"18","door_id":"1","tray_weight":"99999","sku_json":"4500681-3","org_sku":"4500681","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/4500681-9948.webp","name":"McVities Orange Cream Biscuts 61gm","mrp":"10","weight":"64","qty":"3","id":"18","p_sku":"4500681","p_qty":"3","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500681","l_qty":"9"},"19":{"tray_id":"19","door_id":"1","tray_weight":"99999","sku_json":"4500650-10","org_sku":"4500650","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/4500650-61.webp","name":"Modern kitchens Green Peas 26gm","mrp":"10","weight":"30","qty":"10","id":"19","p_sku":"4500650","p_qty":"10","p_return_sku":"4500695","p_return_qty":"4","return_sku":"4500695","return_qty":"4","return_image":"https:\\/\\/images.tinymart.in\\/product\\/4500695-4594.jpg","l_sku":"4500695","l_qty":"4"},"20":{"tray_id":"20","door_id":"1","tray_weight":"99999","sku_json":"4500644-8","org_sku":"4500644","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/4500644-3697.png","name":"Ongibytes Pepper Sev 35gm","mrp":"20","weight":"42","qty":"8","id":"20","p_sku":"4500644","p_qty":"8","p_return_sku":"4500679","p_return_qty":"5","return_sku":"4500679","return_qty":"5","return_image":"https:\\/\\/images.tinymart.in\\/product\\/4500679-7835.png","l_sku":"4500679","l_qty":"5"},"21":{"tray_id":"21","door_id":"1","tray_weight":"99999","sku_json":"4500648-8","org_sku":"4500648","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/4500648-25.webp","name":"Modern kitchens Banana Chips 21gm","mrp":"10","weight":"25","qty":"8","id":"21","p_sku":"4500648","p_qty":"8","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500648","l_qty":"3"},"22":{"id":"22","tray_id":"22","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/4500697-7388.webp","name":"McVities Butter Cookies 58gm","mrp":"10","weight":"60","qty":0,"org_sku":"4500697","p_sku":"4500697","p_qty":0,"l_sku":"4500697","l_qty":"11","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500697-0","tray_weight":"99999","modified_at":"2026-06-27 17:03:14","created_at":"2026-06-27 17:03:14"},"23":{"id":"23","tray_id":"23","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/4500570-8490.jpg","name":"Wellbe Crunchy Kodbale 25g","mrp":"10","weight":"35","qty":0,"org_sku":"4500570","p_sku":"4500570","p_qty":0,"l_sku":"4500570","l_qty":"4","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500570-0","tray_weight":"99999","modified_at":"2026-06-27 17:03:14","created_at":"2026-06-27 17:03:14"},"24":{"id":"24","tray_id":"24","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/4500710-1463.png","name":"MaxVita Premium crunch Rusk 51gm","mrp":"10","weight":"55","qty":0,"org_sku":"4500710","p_sku":"4500710","p_qty":0,"l_sku":"4500710","l_qty":"8","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500710-0","tray_weight":"99999","modified_at":"2026-06-27 17:03:14","created_at":"2026-06-27 17:03:14"},"25":{"tray_id":"25","door_id":"1","tray_weight":"99999","sku_json":"4500646-10","org_sku":"4500646","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/4500646-2968.webp","name":"Modern Kitchens Moong daal 30g","mrp":"10","weight":"35","qty":"10","id":"25","p_sku":"4500646","p_qty":"10","p_return_sku":"4500557","p_return_qty":"3","return_sku":"4500557","return_qty":"3","return_image":"https:\\/\\/images.tinymart.in\\/product\\/4500557-4993.jpeg","l_sku":"4500557","l_qty":"3"},"26":{"tray_id":"26","door_id":"1","tray_weight":"99999","sku_json":"4500650-6","org_sku":"4500650","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/4500650-61.webp","name":"Modern kitchens Green Peas 26gm","mrp":"10","weight":"30","qty":"6","id":"26","p_sku":"4500650","p_qty":"6","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500650","l_qty":"4"},"27":{"id":"27","tray_id":"27","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/4500647-1968.png","name":"Modern kitchens Roasted Channa 32g","mrp":"10","weight":"36","qty":0,"org_sku":"4500647","p_sku":"4500647","p_qty":0,"l_sku":"4500647","l_qty":"8","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500647-0","tray_weight":"99999","modified_at":"2026-06-27 17:03:14","created_at":"2026-06-27 17:03:14"},"31":{"tray_id":"31","door_id":"2","tray_weight":"99999","sku_json":"166327-1","org_sku":"166327","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/166327-5644.jpg","name":"Epigamia Chocolate Milkshake 200g","mrp":"38","weight":"210","qty":"1","id":"31","p_sku":"166327","p_qty":"1","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"166327","l_qty":"5"},"32":{"id":"32","tray_id":"32","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/108676-2689.jpg","name":"Paper Boat Orange Pouch - 150Ml","mrp":"25","weight":"177","qty":0,"org_sku":"108676","p_sku":"108676","p_qty":0,"l_sku":"108676","l_qty":"5","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"108676-0","tray_weight":"99999","modified_at":"2026-06-27 17:03:14","created_at":"2026-06-27 17:03:14"},"33":{"tray_id":"33","door_id":"2","tray_weight":"99999","sku_json":"186043-8","org_sku":"186043","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/186043-5089.png","name":"Bindu Fizz Jeera Masala 250 ML","mrp":"20","weight":"295","qty":"8","id":"33","p_sku":"186043","p_qty":"8","p_return_sku":"4500651","p_return_qty":"2","return_sku":"4500651","return_qty":"2","return_image":"https:\\/\\/images.tinymart.in\\/product\\/4500651-8004.webp","l_sku":"4500651","l_qty":"2"},"34":{"id":"34","tray_id":"34","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/4500407-2060.jpg","name":"Paper boat Alphonso Mango 160ml","mrp":"25","weight":"175","qty":0,"org_sku":"4500407","p_sku":"4500407","p_qty":0,"l_sku":"4500407","l_qty":"5","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500407-0","tray_weight":"99999","modified_at":"2026-06-27 17:03:14","created_at":"2026-06-27 17:03:14"},"35":{"id":"35","tray_id":"35","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/186078-2883.png","name":"Paper boat Aam Panna 150ml","mrp":"25","weight":"166","qty":0,"org_sku":"186078","p_sku":"186078","p_qty":0,"l_sku":"186078","l_qty":"4","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"186078-0","tray_weight":"99999","modified_at":"2026-06-27 17:03:14","created_at":"2026-06-27 17:03:14"},"36":{"tray_id":"36","door_id":"2","tray_weight":"99999","sku_json":"4500675-1","org_sku":"4500675","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/4500675-5033.jpg","name":"Paper Boat Lychee 160ml","mrp":"25","weight":"175","qty":"1","id":"36","p_sku":"4500675","p_qty":"1","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500675","l_qty":"5"},"37":{"id":"37","tray_id":"37","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/4500702-1302.webp","name":"Raw Masala Shikanji 200ml","mrp":"30","weight":"222","qty":0,"org_sku":"4500702","p_sku":"4500702","p_qty":0,"l_sku":"4500702","l_qty":"5","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500702-0","tray_weight":"99999","modified_at":"2026-06-27 17:03:14","created_at":"2026-06-27 17:03:14"},"38":{"id":"38","tray_id":"38","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/4500656-2520.webp","name":"BRU Cold Coffee Classic 200ml","mrp":"60","weight":"225","qty":0,"org_sku":"4500656","p_sku":"4500656","p_qty":0,"l_sku":"4500656","l_qty":"5","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500656-0","tray_weight":"99999","modified_at":"2026-06-27 17:03:14","created_at":"2026-06-27 17:03:14"},"39":{"id":"39","tray_id":"39","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/4500499-5719.webp","name":"Heritage A1 Spiced Butter Milk180ml","mrp":"20","weight":"192","qty":0,"org_sku":"4500499","p_sku":"4500499","p_qty":0,"l_sku":"4500499","l_qty":"6","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500499-0","tray_weight":"99999","modified_at":"2026-06-27 17:03:14","created_at":"2026-06-27 17:03:14"},"40":{"tray_id":"40","door_id":"2","tray_weight":"99999","sku_json":"4500541-15","org_sku":"4500541","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/4500541-6798.jpg","name":"Cad bury Dairy Milk Chocolate 18gm","mrp":"20","weight":"19","qty":"15","id":"40","p_sku":"4500541","p_qty":"15","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500541","l_qty":"1"},"41":{"tray_id":"41","door_id":"2","tray_weight":"99999","sku_json":"4500571-15","org_sku":"4500571","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/4500571-5060.jpg","name":"Cad bury Perk Plus 38g","mrp":"20","weight":"42","qty":"15","id":"41","p_sku":"4500571","p_qty":"15","p_return_sku":"112220","p_return_qty":"0","return_sku":"112220","return_qty":"0","return_image":"https:\\/\\/images.tinymart.in\\/product\\/112220-2513.jpg","l_sku":"112220","l_qty":"0"},"42":{"tray_id":"42","door_id":"2","tray_weight":"99999","sku_json":"4500694-6","org_sku":"4500667","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/4500694-1219.png","name":"Aatral Natural Electrolytes 200ml","mrp":"60","weight":"232","qty":"6","id":"42","p_sku":"4500694","p_qty":"6","p_return_sku":"186084","p_return_qty":"0","return_image":"https:\\/\\/images.tinymart.in\\/product\\/186084-5395.png","l_sku":"186084","l_qty":"0"},"43":{"tray_id":"43","door_id":"2","tray_weight":"99999","sku_json":"4500667-3","org_sku":"4500694","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/4500667-4339.webp","name":"Farmely Classic date Bites 20gm","mrp":"40","weight":"23","qty":"3","id":"43","p_sku":"4500667","p_qty":"3","p_return_sku":"4500667","p_return_qty":"6","l_sku":"4500667","l_qty":"6"},"44":{"tray_id":"44","door_id":"2","tray_weight":"99999","sku_json":"186059-6","org_sku":"186059","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/186059-5330.png","name":"Pepsi ZeroSugar  300ml","mrp":"40","weight":"310","qty":"6","id":"44","p_sku":"186059","p_qty":"6","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"186059","l_qty":"2"},"45":{"tray_id":"45","door_id":"2","tray_weight":"99999","sku_json":"4500704-6","org_sku":"4500704","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/4500704-2291.webp","name":"Heritage livo Badam milk 180ml","mrp":"30","weight":"210","qty":"6","id":"45","p_sku":"4500704","p_qty":"6","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500704","l_qty":"0"},"46":{"tray_id":"46","door_id":"2","tray_weight":"99999","sku_json":"4500706-1","org_sku":"4500706","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/4500706-1073.webp","name":"MAA Mango flavoured Fruit drink 170ml","mrp":"20","weight":"185","qty":"1","id":"46","p_sku":"4500706","p_qty":"1","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500706","l_qty":"4"}},"command_for":"server"},{"success":true,"tray_mismatches":[{"quantity_in_db":"6","tray_id":"11","quantity_on_tray":"6","sku_id":"4500671","sku_name":"Max Protein Cheese jalapeno  32gm"},{"quantity_in_db":"6","tray_id":"12","quantity_on_tray":"6","sku_id":"4500452","sku_name":"Bingo Chips Chilli Sprinkled 30gm"},{"quantity_in_db":"1","tray_id":"13","quantity_on_tray":"6","sku_id":"4500713","sku_name":"MaxVita Indian Style Cream and onion Potato Chips 40gms"},{"quantity_in_db":"0","tray_id":"14","quantity_on_tray":"6","sku_id":"4500672","sku_name":"Modern kitchens Garlic Mixture 26gm"},{"quantity_in_db":"8","tray_id":"15","quantity_on_tray":"9","sku_id":"4500605","sku_name":"Ongibytes Garlic Muruku "},{"quantity_in_db":"12","tray_id":"16","quantity_on_tray":"10","sku_id":"4500696","sku_name":"McVities Cashew almond  Cookies 58gm"},{"quantity_in_db":"0","tray_id":"17","quantity_on_tray":"9","sku_id":"4500558","sku_name":"Kiru Millet Crunchies Bayiruchi Masala 22gm"},{"quantity_in_db":"3","tray_id":"18","quantity_on_tray":"13","sku_id":"4500681","sku_name":"McVities Orange Cream Biscuts 61gm"},{"quantity_in_db":"10","tray_id":"19","quantity_on_tray":"9","sku_id":"4500650","sku_name":"Modern kitchens Green Peas 26gm"},{"quantity_in_db":"8","tray_id":"20","quantity_on_tray":"8","sku_id":"4500644","sku_name":"Ongibytes Pepper Sev 35gm"},{"quantity_in_db":"8","tray_id":"21","quantity_on_tray":"10","sku_id":"4500648","sku_name":"Modern kitchens Banana Chips 21gm"},{"quantity_in_db":"0","tray_id":"22","quantity_on_tray":"11","sku_id":"4500697","sku_name":"McVities Butter Cookies 58gm"},{"quantity_in_db":"0","tray_id":"23","quantity_on_tray":"5","sku_id":"4500570","sku_name":"Wellbe Crunchy Kodbale 25g"},{"quantity_in_db":"0","tray_id":"24","quantity_on_tray":"8","sku_id":"4500710","sku_name":"MaxVita Premium crunch Rusk 51gm"},{"quantity_in_db":"10","tray_id":"25","quantity_on_tray":"7","sku_id":"4500646","sku_name":"Modern Kitchens Moong daal 30g"},{"quantity_in_db":"6","tray_id":"26","quantity_on_tray":"8","sku_id":"4500650","sku_name":"Modern kitchens Green Peas 26gm"},{"quantity_in_db":"0","tray_id":"27","quantity_on_tray":"8","sku_id":"4500647","sku_name":"Modern kitchens Roasted Channa 32g"},{"quantity_in_db":"1","tray_id":"31","quantity_on_tray":"5","sku_id":"166327","sku_name":"Epigamia Chocolate Milkshake 200g"},{"quantity_in_db":"0","tray_id":"32","quantity_on_tray":"5","sku_id":"108676","sku_name":"Paper Boat Orange Pouch - 150Ml"},{"quantity_in_db":"8","tray_id":"33","quantity_on_tray":"7","sku_id":"186043","sku_name":"Bindu Fizz Jeera Masala 250 ML"},{"quantity_in_db":"0","tray_id":"34","quantity_on_tray":"5","sku_id":"4500407","sku_name":"Paper boat Alphonso Mango 160ml"},{"quantity_in_db":"0","tray_id":"35","quantity_on_tray":"5","sku_id":"186078","sku_name":"Paper boat Aam Panna 150ml"},{"quantity_in_db":"1","tray_id":"36","quantity_on_tray":"6","sku_id":"4500675","sku_name":"Paper Boat Lychee 160ml"},{"quantity_in_db":"0","tray_id":"37","quantity_on_tray":"5","sku_id":"4500702","sku_name":"Raw Masala Shikanji 200ml"},{"quantity_in_db":"0","tray_id":"38","quantity_on_tray":"5","sku_id":"4500656","sku_name":"BRU Cold Coffee Classic 200ml"},{"quantity_in_db":"0","tray_id":"39","quantity_on_tray":"7","sku_id":"4500499","sku_name":"Heritage A1 Spiced Butter Milk180ml"},{"quantity_in_db":"15","tray_id":"40","quantity_on_tray":"18","sku_id":"4500541","sku_name":"Cad bury Dairy Milk Chocolate 18gm"},{"quantity_in_db":"15","tray_id":"41","quantity_on_tray":"14","sku_id":"4500571","sku_name":"Cad bury Perk Plus 38g"},{"quantity_in_db":"6","tray_id":"42","quantity_on_tray":"9","sku_id":"4500667","sku_name":"Farmely Classic date Bites 20gm"},{"quantity_in_db":"3","tray_id":"43","quantity_on_tray":"6","sku_id":"4500694","sku_name":"Aatral Natural Electrolytes 200ml"},{"quantity_in_db":"6","tray_id":"44","quantity_on_tray":"8","sku_id":"186059","sku_name":"Pepsi ZeroSugar  300ml"},{"quantity_in_db":"6","tray_id":"45","quantity_on_tray":"6","sku_id":"4500704","sku_name":"Heritage livo Badam milk 180ml"},{"quantity_in_db":"1","tray_id":"46","quantity_on_tray":"5","sku_id":"4500706","sku_name":"MAA Mango flavoured Fruit drink 170ml"}],"message":"Tray mismatches found.","user":"machine"}]', 'command_for': 'server', 'created_at': '2026-06-27 17:02:48', 'command_request_data': '{"user":"server","refill_order_id":"TM06202304_refill_260627170312","response_data":{"success":true,"tray_mismatches":[{"quantity_in_db":"6","tray_id":"11","quantity_on_tray":"6","sku_id":"4500671","sku_name":"Max Protein Cheese jalapeno  32gm"},{"quantity_in_db":"6","tray_id":"12","quantity_on_tray":"6","sku_id":"4500452","sku_name":"Bingo Chips Chilli Sprinkled 30gm"},{"quantity_in_db":"1","tray_id":"13","quantity_on_tray":"6","sku_id":"4500713","sku_name":"MaxVita Indian Style Cream and onion Potato Chips 40gms"},{"quantity_in_db":"0","tray_id":"14","quantity_on_tray":"6","sku_id":"4500672","sku_name":"Modern kitchens Garlic Mixture 26gm"},{"quantity_in_db":"8","tray_id":"15","quantity_on_tray":"9","sku_id":"4500605","sku_name":"Ongibytes Garlic Muruku "},{"quantity_in_db":"12","tray_id":"16","quantity_on_tray":"10","sku_id":"4500696","sku_name":"McVities Cashew almond  Cookies 58gm"},{"quantity_in_db":"0","tray_id":"17","quantity_on_tray":"9","sku_id":"4500558","sku_name":"Kiru Millet Crunchies Bayiruchi Masala 22gm"},{"quantity_in_db":"3","tray_id":"18","quantity_on_tray":"13","sku_id":"4500681","sku_name":"McVities Orange Cream Biscuts 61gm"},{"quantity_in_db":"10","tray_id":"19","quantity_on_tray":"9","sku_id":"4500650","sku_name":"Modern kitchens Green Peas 26gm"},{"quantity_in_db":"8","tray_id":"20","quantity_on_tray":"8","sku_id":"4500644","sku_name":"Ongibytes Pepper Sev 35gm"},{"quantity_in_db":"8","tray_id":"21","quantity_on_tray":"10","sku_id":"4500648","sku_name":"Modern kitchens Banana Chips 21gm"},{"quantity_in_db":"0","tray_id":"22","quantity_on_tray":"11","sku_id":"4500697","sku_name":"McVities Butter Cookies 58gm"},{"quantity_in_db":"0","tray_id":"23","quantity_on_tray":"5","sku_id":"4500570","sku_name":"Wellbe Crunchy Kodbale 25g"},{"quantity_in_db":"0","tray_id":"24","quantity_on_tray":"8","sku_id":"4500710","sku_name":"MaxVita Premium crunch Rusk 51gm"},{"quantity_in_db":"10","tray_id":"25","quantity_on_tray":"7","sku_id":"4500646","sku_name":"Modern Kitchens Moong daal 30g"},{"quantity_in_db":"6","tray_id":"26","quantity_on_tray":"8","sku_id":"4500650","sku_name":"Modern kitchens Green Peas 26gm"},{"quantity_in_db":"0","tray_id":"27","quantity_on_tray":"8","sku_id":"4500647","sku_name":"Modern kitchens Roasted Channa 32g"},{"quantity_in_db":"1","tray_id":"31","quantity_on_tray":"5","sku_id":"166327","sku_name":"Epigamia Chocolate Milkshake 200g"},{"quantity_in_db":"0","tray_id":"32","quantity_on_tray":"5","sku_id":"108676","sku_name":"Paper Boat Orange Pouch - 150Ml"},{"quantity_in_db":"8","tray_id":"33","quantity_on_tray":"7","sku_id":"186043","sku_name":"Bindu Fizz Jeera Masala 250 ML"},{"quantity_in_db":"0","tray_id":"34","quantity_on_tray":"5","sku_id":"4500407","sku_name":"Paper boat Alphonso Mango 160ml"},{"quantity_in_db":"0","tray_id":"35","quantity_on_tray":"5","sku_id":"186078","sku_name":"Paper boat Aam Panna 150ml"},{"quantity_in_db":"1","tray_id":"36","quantity_on_tray":"6","sku_id":"4500675","sku_name":"Paper Boat Lychee 160ml"},{"quantity_in_db":"0","tray_id":"37","quantity_on_tray":"5","sku_id":"4500702","sku_name":"Raw Masala Shikanji 200ml"},{"quantity_in_db":"0","tray_id":"38","quantity_on_tray":"5","sku_id":"4500656","sku_name":"BRU Cold Coffee Classic 200ml"},{"quantity_in_db":"0","tray_id":"39","quantity_on_tray":"7","sku_id":"4500499","sku_name":"Heritage A1 Spiced Butter Milk180ml"},{"quantity_in_db":"15","tray_id":"40","quantity_on_tray":"18","sku_id":"4500541","sku_name":"Cad bury Dairy Milk Chocolate 18gm"},{"quantity_in_db":"15","tray_id":"41","quantity_on_tray":"14","sku_id":"4500571","sku_name":"Cad bury Perk Plus 38g"},{"quantity_in_db":"6","tray_id":"42","quantity_on_tray":"9","sku_id":"4500667","sku_name":"Farmely Classic date Bites 20gm"},{"quantity_in_db":"3","tray_id":"43","quantity_on_tray":"6","sku_id":"4500694","sku_name":"Aatral Natural Electrolytes 200ml"},{"quantity_in_db":"6","tray_id":"44","quantity_on_tray":"8","sku_id":"186059","sku_name":"Pepsi ZeroSugar  300ml"},{"quantity_in_db":"6","tray_id":"45","quantity_on_tray":"6","sku_id":"4500704","sku_name":"Heritage livo Badam milk 180ml"},{"quantity_in_db":"1","tray_id":"46","quantity_on_tray":"5","sku_id":"4500706","sku_name":"MAA Mango flavoured Fruit drink 170ml"}],"message":"Tray mismatches found."},"action_name":"verify refill Qty","action":"open_door_process","active_doors":["1","2"],"request_data":{"success":true,"tray_mismatches":[{"quantity_in_db":"6","tray_id":"11","quantity_on_tray":"6","sku_id":"4500671","sku_name":"Max Protein Cheese jalapeno  32gm"},{"quantity_in_db":"6","tray_id":"12","quantity_on_tray":"6","sku_id":"4500452","sku_name":"Bingo Chips Chilli Sprinkled 30gm"},{"quantity_in_db":"1","tray_id":"13","quantity_on_tray":"6","sku_id":"4500713","sku_name":"MaxVita Indian Style Cream and onion Potato Chips 40gms"},{"quantity_in_db":"0","tray_id":"14","quantity_on_tray":"6","sku_id":"4500672","sku_name":"Modern kitchens Garlic Mixture 26gm"},{"quantity_in_db":"8","tray_id":"15","quantity_on_tray":"9","sku_id":"4500605","sku_name":"Ongibytes Garlic Muruku "},{"quantity_in_db":"12","tray_id":"16","quantity_on_tray":"10","sku_id":"4500696","sku_name":"McVities Cashew almond  Cookies 58gm"},{"quantity_in_db":"0","tray_id":"17","quantity_on_tray":"9","sku_id":"4500558","sku_name":"Kiru Millet Crunchies Bayiruchi Masala 22gm"},{"quantity_in_db":"3","tray_id":"18","quantity_on_tray":"13","sku_id":"4500681","sku_name":"McVities Orange Cream Biscuts 61gm"},{"quantity_in_db":"10","tray_id":"19","quantity_on_tray":"9","sku_id":"4500650","sku_name":"Modern kitchens Green Peas 26gm"},{"quantity_in_db":"8","tray_id":"20","quantity_on_tray":"8","sku_id":"4500644","sku_name":"Ongibytes Pepper Sev 35gm"},{"quantity_in_db":"8","tray_id":"21","quantity_on_tray":"10","sku_id":"4500648","sku_name":"Modern kitchens Banana Chips 21gm"},{"quantity_in_db":"0","tray_id":"22","quantity_on_tray":"11","sku_id":"4500697","sku_name":"McVities Butter Cookies 58gm"},{"quantity_in_db":"0","tray_id":"23","quantity_on_tray":"5","sku_id":"4500570","sku_name":"Wellbe Crunchy Kodbale 25g"},{"quantity_in_db":"0","tray_id":"24","quantity_on_tray":"8","sku_id":"4500710","sku_name":"MaxVita Premium crunch Rusk 51gm"},{"quantity_in_db":"10","tray_id":"25","quantity_on_tray":"7","sku_id":"4500646","sku_name":"Modern Kitchens Moong daal 30g"},{"quantity_in_db":"6","tray_id":"26","quantity_on_tray":"8","sku_id":"4500650","sku_name":"Modern kitchens Green Peas 26gm"},{"quantity_in_db":"0","tray_id":"27","quantity_on_tray":"8","sku_id":"4500647","sku_name":"Modern kitchens Roasted Channa 32g"},{"quantity_in_db":"1","tray_id":"31","quantity_on_tray":"5","sku_id":"166327","sku_name":"Epigamia Chocolate Milkshake 200g"},{"quantity_in_db":"0","tray_id":"32","quantity_on_tray":"5","sku_id":"108676","sku_name":"Paper Boat Orange Pouch - 150Ml"},{"quantity_in_db":"8","tray_id":"33","quantity_on_tray":"7","sku_id":"186043","sku_name":"Bindu Fizz Jeera Masala 250 ML"},{"quantity_in_db":"0","tray_id":"34","quantity_on_tray":"5","sku_id":"4500407","sku_name":"Paper boat Alphonso Mango 160ml"},{"quantity_in_db":"0","tray_id":"35","quantity_on_tray":"5","sku_id":"186078","sku_name":"Paper boat Aam Panna 150ml"},{"quantity_in_db":"1","tray_id":"36","quantity_on_tray":"6","sku_id":"4500675","sku_name":"Paper Boat Lychee 160ml"},{"quantity_in_db":"0","tray_id":"37","quantity_on_tray":"5","sku_id":"4500702","sku_name":"Raw Masala Shikanji 200ml"},{"quantity_in_db":"0","tray_id":"38","quantity_on_tray":"5","sku_id":"4500656","sku_name":"BRU Cold Coffee Classic 200ml"},{"quantity_in_db":"0","tray_id":"39","quantity_on_tray":"7","sku_id":"4500499","sku_name":"Heritage A1 Spiced Butter Milk180ml"},{"quantity_in_db":"15","tray_id":"40","quantity_on_tray":"18","sku_id":"4500541","sku_name":"Cad bury Dairy Milk Chocolate 18gm"},{"quantity_in_db":"15","tray_id":"41","quantity_on_tray":"14","sku_id":"4500571","sku_name":"Cad bury Perk Plus 38g"},{"quantity_in_db":"6","tray_id":"42","quantity_on_tray":"9","sku_id":"4500667","sku_name":"Farmely Classic date Bites 20gm"},{"quantity_in_db":"3","tray_id":"43","quantity_on_tray":"6","sku_id":"4500694","sku_name":"Aatral Natural Electrolytes 200ml"},{"quantity_in_db":"6","tray_id":"44","quantity_on_tray":"8","sku_id":"186059","sku_name":"Pepsi ZeroSugar  300ml"},{"quantity_in_db":"6","tray_id":"45","quantity_on_tray":"6","sku_id":"4500704","sku_name":"Heritage livo Badam milk 180ml"},{"quantity_in_db":"1","tray_id":"46","quantity_on_tray":"5","sku_id":"4500706","sku_name":"MAA Mango flavoured Fruit drink 170ml"}],"message":"Tray mismatches found."},"sub-action":"verify-refill"}', 'command_todo': 'interactive-refill', 'last_command_response': '{"success":true,"tray_mismatches":[{"quantity_in_db":"6","tray_id":"11","quantity_on_tray":"6","sku_id":"4500671","sku_name":"Max Protein Cheese jalapeno  32gm"},{"quantity_in_db":"6","tray_id":"12","quantity_on_tray":"6","sku_id":"4500452","sku_name":"Bingo Chips Chilli Sprinkled 30gm"},{"quantity_in_db":"1","tray_id":"13","quantity_on_tray":"6","sku_id":"4500713","sku_name":"MaxVita Indian Style Cream and onion Potato Chips 40gms"},{"quantity_in_db":"0","tray_id":"14","quantity_on_tray":"6","sku_id":"4500672","sku_name":"Modern kitchens Garlic Mixture 26gm"},{"quantity_in_db":"8","tray_id":"15","quantity_on_tray":"9","sku_id":"4500605","sku_name":"Ongibytes Garlic Muruku "},{"quantity_in_db":"12","tray_id":"16","quantity_on_tray":"10","sku_id":"4500696","sku_name":"McVities Cashew almond  Cookies 58gm"},{"quantity_in_db":"0","tray_id":"17","quantity_on_tray":"9","sku_id":"4500558","sku_name":"Kiru Millet Crunchies Bayiruchi Masala 22gm"},{"quantity_in_db":"3","tray_id":"18","quantity_on_tray":"13","sku_id":"4500681","sku_name":"McVities Orange Cream Biscuts 61gm"},{"quantity_in_db":"10","tray_id":"19","quantity_on_tray":"9","sku_id":"4500650","sku_name":"Modern kitchens Green Peas 26gm"},{"quantity_in_db":"8","tray_id":"20","quantity_on_tray":"8","sku_id":"4500644","sku_name":"Ongibytes Pepper Sev 35gm"},{"quantity_in_db":"8","tray_id":"21","quantity_on_tray":"10","sku_id":"4500648","sku_name":"Modern kitchens Banana Chips 21gm"},{"quantity_in_db":"0","tray_id":"22","quantity_on_tray":"11","sku_id":"4500697","sku_name":"McVities Butter Cookies 58gm"},{"quantity_in_db":"0","tray_id":"23","quantity_on_tray":"5","sku_id":"4500570","sku_name":"Wellbe Crunchy Kodbale 25g"},{"quantity_in_db":"0","tray_id":"24","quantity_on_tray":"8","sku_id":"4500710","sku_name":"MaxVita Premium crunch Rusk 51gm"},{"quantity_in_db":"10","tray_id":"25","quantity_on_tray":"7","sku_id":"4500646","sku_name":"Modern Kitchens Moong daal 30g"},{"quantity_in_db":"6","tray_id":"26","quantity_on_tray":"8","sku_id":"4500650","sku_name":"Modern kitchens Green Peas 26gm"},{"quantity_in_db":"0","tray_id":"27","quantity_on_tray":"8","sku_id":"4500647","sku_name":"Modern kitchens Roasted Channa 32g"},{"quantity_in_db":"1","tray_id":"31","quantity_on_tray":"5","sku_id":"166327","sku_name":"Epigamia Chocolate Milkshake 200g"},{"quantity_in_db":"0","tray_id":"32","quantity_on_tray":"5","sku_id":"108676","sku_name":"Paper Boat Orange Pouch - 150Ml"},{"quantity_in_db":"8","tray_id":"33","quantity_on_tray":"7","sku_id":"186043","sku_name":"Bindu Fizz Jeera Masala 250 ML"},{"quantity_in_db":"0","tray_id":"34","quantity_on_tray":"5","sku_id":"4500407","sku_name":"Paper boat Alphonso Mango 160ml"},{"quantity_in_db":"0","tray_id":"35","quantity_on_tray":"5","sku_id":"186078","sku_name":"Paper boat Aam Panna 150ml"},{"quantity_in_db":"1","tray_id":"36","quantity_on_tray":"6","sku_id":"4500675","sku_name":"Paper Boat Lychee 160ml"},{"quantity_in_db":"0","tray_id":"37","quantity_on_tray":"5","sku_id":"4500702","sku_name":"Raw Masala Shikanji 200ml"},{"quantity_in_db":"0","tray_id":"38","quantity_on_tray":"5","sku_id":"4500656","sku_name":"BRU Cold Coffee Classic 200ml"},{"quantity_in_db":"0","tray_id":"39","quantity_on_tray":"7","sku_id":"4500499","sku_name":"Heritage A1 Spiced Butter Milk180ml"},{"quantity_in_db":"15","tray_id":"40","quantity_on_tray":"18","sku_id":"4500541","sku_name":"Cad bury Dairy Milk Chocolate 18gm"},{"quantity_in_db":"15","tray_id":"41","quantity_on_tray":"14","sku_id":"4500571","sku_name":"Cad bury Perk Plus 38g"},{"quantity_in_db":"6","tray_id":"42","quantity_on_tray":"9","sku_id":"4500667","sku_name":"Farmely Classic date Bites 20gm"},{"quantity_in_db":"3","tray_id":"43","quantity_on_tray":"6","sku_id":"4500694","sku_name":"Aatral Natural Electrolytes 200ml"},{"quantity_in_db":"6","tray_id":"44","quantity_on_tray":"8","sku_id":"186059","sku_name":"Pepsi ZeroSugar  300ml"},{"quantity_in_db":"6","tray_id":"45","quantity_on_tray":"6","sku_id":"4500704","sku_name":"Heritage livo Badam milk 180ml"},{"quantity_in_db":"1","tray_id":"46","quantity_on_tray":"5","sku_id":"4500706","sku_name":"MAA Mango flavoured Fruit drink 170ml"}],"message":"Tray mismatches found.","user":"machine"}', 'vm_id': '1686833081377', 'modified_at': '2026-06-27 17:12:28', 'user_id': '9036356553'}
[2026-06-27 17:12:28,792.792 INFO    ] in main while loops
[2026-06-27 17:12:31,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:12:31
[2026-06-27 17:12:32,042.042 INFO    ] 
inside get

[2026-06-27 17:12:32,045.045 INFO    ] 200
[2026-06-27 17:12:32,057.057 INFO    ] waiting for server
[2026-06-27 17:12:35,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:12:35
[2026-06-27 17:12:35,276.276 INFO    ] 
inside get

[2026-06-27 17:12:35,279.279 INFO    ] 200
[2026-06-27 17:12:35,291.291 INFO    ] waiting for server
[2026-06-27 17:12:38,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:12:38
[2026-06-27 17:12:38,473.473 INFO    ] 
inside get

[2026-06-27 17:12:38,476.476 INFO    ] 200
[2026-06-27 17:12:38,490.490 INFO    ] waiting for server
[2026-06-27 17:12:41,497.497 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:12:41
[2026-06-27 17:12:41,708.708 INFO    ] 
inside get

[2026-06-27 17:12:41,711.711 INFO    ] 200
[2026-06-27 17:12:41,725.725 INFO    ] waiting for server
[2026-06-27 17:12:44,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:12:44
[2026-06-27 17:12:44,918.918 INFO    ] 
inside get

[2026-06-27 17:12:44,920.920 INFO    ] 200
[2026-06-27 17:12:44,935.935 INFO    ] waiting for server
[2026-06-27 17:12:47,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:12:47
[2026-06-27 17:12:48,153.153 INFO    ] 
inside get

[2026-06-27 17:12:48,156.156 INFO    ] 200
[2026-06-27 17:12:48,170.170 INFO    ] waiting for server
[2026-06-27 17:12:51,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:12:51
[2026-06-27 17:12:51,362.362 INFO    ] 
inside get

[2026-06-27 17:12:51,365.365 INFO    ] 200
[2026-06-27 17:12:51,379.379 INFO    ] waiting for server
[2026-06-27 17:12:54,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:12:54
[2026-06-27 17:12:54,616.616 INFO    ] 
inside get

[2026-06-27 17:12:54,618.618 INFO    ] 200
[2026-06-27 17:12:54,630.630 INFO    ] waiting for server
[2026-06-27 17:12:57,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:12:57
[2026-06-27 17:12:57,841.841 INFO    ] 
inside get

[2026-06-27 17:12:57,844.844 INFO    ] 200
[2026-06-27 17:12:57,856.856 INFO    ] waiting for server
[2026-06-27 17:13:00,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:13:00
[2026-06-27 17:13:01,067.067 INFO    ] 
inside get

[2026-06-27 17:13:01,070.070 INFO    ] 200
[2026-06-27 17:13:01,082.082 INFO    ] waiting for server
[2026-06-27 17:13:04,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:13:04
[2026-06-27 17:13:04,268.268 INFO    ] 
inside get

[2026-06-27 17:13:04,270.270 INFO    ] 200
[2026-06-27 17:13:04,282.282 INFO    ] waiting for server
[2026-06-27 17:13:07,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:13:07
[2026-06-27 17:13:07,605.605 INFO    ] 
inside get

[2026-06-27 17:13:07,607.607 INFO    ] 200
[2026-06-27 17:13:07,619.619 INFO    ] waiting for server
[2026-06-27 17:13:10,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:13:10
[2026-06-27 17:13:10,826.826 INFO    ] 
inside get

[2026-06-27 17:13:10,828.828 INFO    ] 200
[2026-06-27 17:13:10,840.840 INFO    ] waiting for server
[2026-06-27 17:13:13,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:13:13
[2026-06-27 17:13:14,044.044 INFO    ] 
inside get

[2026-06-27 17:13:14,046.046 INFO    ] 200
[2026-06-27 17:13:14,058.058 INFO    ] waiting for server
[2026-06-27 17:13:17,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:13:17
[2026-06-27 17:13:17,258.258 INFO    ] 
inside get

[2026-06-27 17:13:17,260.260 INFO    ] 200
[2026-06-27 17:13:17,272.272 INFO    ] waiting for server
[2026-06-27 17:13:20,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:13:20
[2026-06-27 17:13:20,461.461 INFO    ] 
inside get

[2026-06-27 17:13:20,464.464 INFO    ] 200
[2026-06-27 17:13:20,476.476 INFO    ] waiting for server
[2026-06-27 17:13:23,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:13:23
[2026-06-27 17:13:23,648.648 INFO    ] 
inside get

[2026-06-27 17:13:23,650.650 INFO    ] 200
[2026-06-27 17:13:23,664.664 INFO    ] processing machine command
[2026-06-27 17:13:23,667.667 INFO    ] {"user":"machine","refill_order_id":"TM06202304_refill_260627170312","response_data":{"success":true,"tray_mismatches":[{"quantity_in_db":"6","tray_id":"11","quantity_on_tray":"6","sku_id":"4500671","sku_name":"Max Protein Cheese jalapeno  32gm"},{"quantity_in_db":"6","tray_id":"12","quantity_on_tray":"6","sku_id":"4500452","sku_name":"Bingo Chips Chilli Sprinkled 30gm"},{"quantity_in_db":"1","tray_id":"13","quantity_on_tray":"6","sku_id":"4500713","sku_name":"MaxVita Indian Style Cream and onion Potato Chips 40gms"},{"quantity_in_db":"0","tray_id":"14","quantity_on_tray":"6","sku_id":"4500672","sku_name":"Modern kitchens Garlic Mixture 26gm"},{"quantity_in_db":"8","tray_id":"15","quantity_on_tray":"9","sku_id":"4500605","sku_name":"Ongibytes Garlic Muruku "},{"quantity_in_db":"12","tray_id":"16","quantity_on_tray":"10","sku_id":"4500696","sku_name":"McVities Cashew almond  Cookies 58gm"},{"quantity_in_db":"0","tray_id":"17","quantity_on_tray":"9","sku_id":"4500558","sku_name":"Kiru Millet Crunchies Bayiruchi Masala 22gm"},{"quantity_in_db":"3","tray_id":"18","quantity_on_tray":"13","sku_id":"4500681","sku_name":"McVities Orange Cream Biscuts 61gm"},{"quantity_in_db":"10","tray_id":"19","quantity_on_tray":"9","sku_id":"4500650","sku_name":"Modern kitchens Green Peas 26gm"},{"quantity_in_db":"8","tray_id":"20","quantity_on_tray":"8","sku_id":"4500644","sku_name":"Ongibytes Pepper Sev 35gm"},{"quantity_in_db":"8","tray_id":"21","quantity_on_tray":"10","sku_id":"4500648","sku_name":"Modern kitchens Banana Chips 21gm"},{"quantity_in_db":"0","tray_id":"22","quantity_on_tray":"11","sku_id":"4500697","sku_name":"McVities Butter Cookies 58gm"},{"quantity_in_db":"0","tray_id":"23","quantity_on_tray":"5","sku_id":"4500570","sku_name":"Wellbe Crunchy Kodbale 25g"},{"quantity_in_db":"0","tray_id":"24","quantity_on_tray":"8","sku_id":"4500710","sku_name":"MaxVita Premium crunch Rusk 51gm"},{"quantity_in_db":"10","tray_id":"25","quantity_on_tray":"7","sku_id":"4500646","sku_name":"Modern Kitchens Moong daal 30g"},{"quantity_in_db":"6","tray_id":"26","quantity_on_tray":"8","sku_id":"4500650","sku_name":"Modern kitchens Green Peas 26gm"},{"quantity_in_db":"0","tray_id":"27","quantity_on_tray":"8","sku_id":"4500647","sku_name":"Modern kitchens Roasted Channa 32g"},{"quantity_in_db":"1","tray_id":"31","quantity_on_tray":"5","sku_id":"166327","sku_name":"Epigamia Chocolate Milkshake 200g"},{"quantity_in_db":"0","tray_id":"32","quantity_on_tray":"5","sku_id":"108676","sku_name":"Paper Boat Orange Pouch - 150Ml"},{"quantity_in_db":"8","tray_id":"33","quantity_on_tray":"7","sku_id":"186043","sku_name":"Bindu Fizz Jeera Masala 250 ML"},{"quantity_in_db":"0","tray_id":"34","quantity_on_tray":"5","sku_id":"4500407","sku_name":"Paper boat Alphonso Mango 160ml"},{"quantity_in_db":"0","tray_id":"35","quantity_on_tray":"5","sku_id":"186078","sku_name":"Paper boat Aam Panna 150ml"},{"quantity_in_db":"1","tray_id":"36","quantity_on_tray":"6","sku_id":"4500675","sku_name":"Paper Boat Lychee 160ml"},{"quantity_in_db":"0","tray_id":"37","quantity_on_tray":"5","sku_id":"4500702","sku_name":"Raw Masala Shikanji 200ml"},{"quantity_in_db":"0","tray_id":"38","quantity_on_tray":"5","sku_id":"4500656","sku_name":"BRU Cold Coffee Classic 200ml"},{"quantity_in_db":"0","tray_id":"39","quantity_on_tray":"7","sku_id":"4500499","sku_name":"Heritage A1 Spiced Butter Milk180ml"},{"quantity_in_db":"15","tray_id":"40","quantity_on_tray":"18","sku_id":"4500541","sku_name":"Cad bury Dairy Milk Chocolate 18gm"},{"quantity_in_db":"15","tray_id":"41","quantity_on_tray":"14","sku_id":"4500571","sku_name":"Cad bury Perk Plus 38g"},{"quantity_in_db":"6","tray_id":"42","quantity_on_tray":"9","sku_id":"4500667","sku_name":"Farmely Classic date Bites 20gm"},{"quantity_in_db":"3","tray_id":"43","quantity_on_tray":"6","sku_id":"4500694","sku_name":"Aatral Natural Electrolytes 200ml"},{"quantity_in_db":"6","tray_id":"44","quantity_on_tray":"8","sku_id":"186059","sku_name":"Pepsi ZeroSugar  300ml"},{"quantity_in_db":"6","tray_id":"45","quantity_on_tray":"6","sku_id":"4500704","sku_name":"Heritage livo Badam milk 180ml"},{"quantity_in_db":"1","tray_id":"46","quantity_on_tray":"5","sku_id":"4500706","sku_name":"MAA Mango flavoured Fruit drink 170ml"}],"message":"Tray mismatches found."},"action_name":"Waiting for Machine to Complete Verify Refill","action":"invoice_refill","active_doors":["1","2"],"request_data":{"order_id":"TM06202304_refill_260627170312","door_id":[1],"txnType":"refill","door_open_init":true,"refill_id":"9689994","content":[{"quantity_in_db":"6","tray_id":"11","quantity_on_tray":"6","sku_id":"4500671","sku_name":"Max Protein Cheese jalapeno  32gm","check_enabled":true},{"quantity_in_db":"6","tray_id":"12","quantity_on_tray":"6","sku_id":"4500452","sku_name":"Bingo Chips Chilli Sprinkled 30gm","check_enabled":true},{"quantity_in_db":"1","tray_id":"13","quantity_on_tray":"6","sku_id":"4500713","sku_name":"MaxVita Indian Style Cream and onion Potato Chips 40gms","check_enabled":true},{"quantity_in_db":"0","tray_id":"14","quantity_on_tray":"8","sku_id":"4500672","sku_name":"Modern kitchens Garlic Mixture 26gm","check_enabled":true},{"quantity_in_db":"8","tray_id":"15","quantity_on_tray":"8","sku_id":"4500605","sku_name":"Ongibytes Garlic Muruku ","check_enabled":true},{"quantity_in_db":"12","tray_id":"16","quantity_on_tray":"10","sku_id":"4500696","sku_name":"McVities Cashew almond  Cookies 58gm","check_enabled":true},{"quantity_in_db":"0","tray_id":"17","quantity_on_tray":"9","sku_id":"4500558","sku_name":"Kiru Millet Crunchies Bayiruchi Masala 22gm","check_enabled":true},{"quantity_in_db":"3","tray_id":"18","quantity_on_tray":"13","sku_id":"4500681","sku_name":"McVities Orange Cream Biscuts 61gm","check_enabled":true},{"quantity_in_db":"10","tray_id":"19","quantity_on_tray":"9","sku_id":"4500650","sku_name":"Modern kitchens Green Peas 26gm","check_enabled":true},{"quantity_in_db":"8","tray_id":"20","quantity_on_tray":"8","sku_id":"4500644","sku_name":"Ongibytes Pepper Sev 35gm","check_enabled":true},{"quantity_in_db":"8","tray_id":"21","quantity_on_tray":"10","sku_id":"4500648","sku_name":"Modern kitchens Banana Chips 21gm","check_enabled":true},{"quantity_in_db":"0","tray_id":"22","quantity_on_tray":"11","sku_id":"4500697","sku_name":"McVities Butter Cookies 58gm","check_enabled":true},{"quantity_in_db":"0","tray_id":"23","quantity_on_tray":"6","sku_id":"4500570","sku_name":"Wellbe Crunchy Kodbale 25g","check_enabled":true},{"quantity_in_db":"0","tray_id":"24","quantity_on_tray":"8","sku_id":"4500710","sku_name":"MaxVita Premium crunch Rusk 51gm","check_enabled":true},{"quantity_in_db":"10","tray_id":"25","quantity_on_tray":"8","sku_id":"4500646","sku_name":"Modern Kitchens Moong daal 30g","check_enabled":true},{"quantity_in_db":"6","tray_id":"26","quantity_on_tray":"8","sku_id":"4500650","sku_name":"Modern kitchens Green Peas 26gm","check_enabled":true},{"quantity_in_db":"0","tray_id":"27","quantity_on_tray":"8","sku_id":"4500647","sku_name":"Modern kitchens Roasted Channa 32g","check_enabled":true},{"quantity_in_db":"1","tray_id":"31","quantity_on_tray":"6","sku_id":"166327","sku_name":"Epigamia Chocolate Milkshake 200g","check_enabled":true},{"quantity_in_db":"0","tray_id":"32","quantity_on_tray":"5","sku_id":"108676","sku_name":"Paper Boat Orange Pouch - 150Ml","check_enabled":true},{"quantity_in_db":"8","tray_id":"33","quantity_on_tray":"8","sku_id":"186043","sku_name":"Bindu Fizz Jeera Masala 250 ML","check_enabled":true},{"quantity_in_db":"0","tray_id":"34","quantity_on_tray":"5","sku_id":"4500407","sku_name":"Paper boat Alphonso Mango 160ml","check_enabled":true},{"quantity_in_db":"0","tray_id":"35","quantity_on_tray":"5","sku_id":"186078","sku_name":"Paper boat Aam Panna 150ml","check_enabled":true},{"quantity_in_db":"1","tray_id":"36","quantity_on_tray":"6","sku_id":"4500675","sku_name":"Paper Boat Lychee 160ml","check_enabled":true},{"quantity_in_db":"0","tray_id":"37","quantity_on_tray":"5","sku_id":"4500702","sku_name":"Raw Masala Shikanji 200ml","check_enabled":true},{"quantity_in_db":"0","tray_id":"38","quantity_on_tray":"5","sku_id":"4500656","sku_name":"BRU Cold Coffee Classic 200ml","check_enabled":true},{"quantity_in_db":"0","tray_id":"39","quantity_on_tray":"7","sku_id":"4500499","sku_name":"Heritage A1 Spiced Butter Milk180ml","check_enabled":true},{"quantity_in_db":"15","tray_id":"40","quantity_on_tray":"18","sku_id":"4500541","sku_name":"Cad bury Dairy Milk Chocolate 18gm","check_enabled":true},{"quantity_in_db":"15","tray_id":"41","quantity_on_tray":"15","sku_id":"4500571","sku_name":"Cad bury Perk Plus 38g","check_enabled":true},{"quantity_in_db":"6","tray_id":"42","quantity_on_tray":"10","sku_id":"4500667","sku_name":"Farmely Classic date Bites 20gm","check_enabled":true},{"quantity_in_db":"3","tray_id":"43","quantity_on_tray":"6","sku_id":"4500694","sku_name":"Aatral Natural Electrolytes 200ml","check_enabled":true},{"quantity_in_db":"6","tray_id":"44","quantity_on_tray":"8","sku_id":"186059","sku_name":"Pepsi ZeroSugar  300ml","check_enabled":true},{"quantity_in_db":"6","tray_id":"45","quantity_on_tray":"6","sku_id":"4500704","sku_name":"Heritage livo Badam milk 180ml","check_enabled":true},{"quantity_in_db":"1","tray_id":"46","quantity_on_tray":"5","sku_id":"4500706","sku_name":"MAA Mango flavoured Fruit drink 170ml","check_enabled":true}]},"sub-action":"invoice_refill"}
[2026-06-27 17:13:25,208.208 INFO    ] {"success": true}
[2026-06-27 17:13:25,209.209 INFO    ] {"success": true}
[2026-06-27 17:13:25,364.364 INFO    ] 
inside post

[2026-06-27 17:13:25,366.366 INFO    ] 200
[2026-06-27 17:13:25,368.368 INFO    ] {"order_id":"9689994","vm_id":"1686833081377","user_id":"9036356553","status":"active","server_status":"completed","server_response":"","command_todo":"interactive-refill","last_command_response":"{\"success\":true,\"user\":\"machine\"}","all_command_response":"[{\"action\":\"get_user_mobile_no\",\"mobile_no\":\"9036356553\",\"command_for\":\"server\"},{\"user_id\":9036356553,\"allowed\":\"1\",\"success\":\"true\",\"refill_id\":\"9689994\",\"otp\":\"7223\",\"user\":\"machine\"},{\"action\":\"get_mobile_otp\",\"mobile_no\":\"9036356553\",\"otp\":\"7223\",\"command_for\":\"server\"},{\"door_size\":2,\"order_id\":\"TM06202304_refill_260627170312\",\"active_payment_gateways\":\"[{\\\"payments\\\": [{\\\"label\\\": \\\"PayTM\\\", \\\"name\\\": \\\"PayTM\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"PhonePe\\\", \\\"name\\\": \\\"PhonePe\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"Google Pay\\\", \\\"name\\\": \\\"GooglePay\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"BHIM UPI\\\", \\\"name\\\": \\\"BHIM\\\", \\\"active\\\": 1}], \\\"header\\\": \\\"QR Payments\\\"}, {\\\"payments\\\": [{\\\"label\\\": \\\"Sodexo Card\\\", \\\"name\\\": \\\"Sodexo\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"Credit\\\/Debit Card\\\", \\\"name\\\": \\\"Card\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"QwikCilver\\\", \\\"name\\\": \\\"Qwikcilver\\\", \\\"active\\\": 0}], \\\"header\\\": \\\"Card Payments\\\"}, {\\\"payments\\\": [{\\\"label\\\": \\\"LazyPay\\\", \\\"name\\\": \\\"LazyPay\\\", \\\"active\\\": 1}, {\\\"label\\\": \\\"OLA Money\\\", \\\"name\\\": \\\"Ola\\\", \\\"active\\\": 0}, {\\\"label\\\": \\\"Tiny Wallet\\\", \\\"name\\\": \\\"Neuu\\\", \\\"active\\\": 0}], \\\"header\\\": \\\"Wallet Payments\\\"}]\",\"status\":\"True\",\"user_id\":9036356553,\"refill_order_id\":\"TM06202304_refill_260627170312\",\"rstatus\":true,\"refill_id\":\"9689994\",\"active_doors\":[\"1\",\"2\"],\"user\":\"machine\"},{\"action\":\"open_door_call\",\"door_no\":\"1\",\"command_for\":\"server\"},{\"SectionMain\":{\"Header\":\"Door Open\"},\"SectionStatus\":{\"SubHeader\":\"Please Pick products after opening\",\"UI_Header\":\"DOOR 1\\nIS \\nOPEN \\nNOW\",\"Header\":\"Opening Door 1\",\"Note\":\"Please wait for door to open\"},\"error\":{\"umessage\":\"In Progress\",\"code\":20001,\"tmessage\":\"In Progress\",\"data\":[]},\"status\":\"False\",\"voiceNote\":\"Opening Door 1\",\"rstatus\":false,\"SectionSKU\":{\"Header\":\"Pick the below items from the door\",\"skus\":[]},\"user\":\"machine\"},{\"action\":\"open_door_call\",\"door_no\":\"2\",\"command_for\":\"server\"},{\"SectionMain\":{\"Header\":\"Door Open\"},\"SectionStatus\":{\"SubHeader\":\"Please Pick products after opening\",\"UI_Header\":\"DOOR 2\\nIS \\nOPEN \\nNOW\",\"Header\":\"Opening Door 2\",\"Note\":\"Please wait for door to open\"},\"error\":{\"umessage\":\"In Progress\",\"code\":20001,\"tmessage\":\"In Progress\",\"data\":[]},\"status\":\"False\",\"voiceNote\":\"Opening Door 2\",\"rstatus\":false,\"SectionSKU\":{\"Header\":\"Pick the below items from the door\",\"skus\":[]},\"user\":\"machine\"},{\"action\":\"open_door_call\",\"door_no\":\"1\",\"command_for\":\"server\"},{\"SectionMain\":{\"Header\":\"Door Open\"},\"SectionStatus\":{\"SubHeader\":\"Please Pick products after opening\",\"UI_Header\":\"DOOR 1\\nIS \\nOPEN \\nNOW\",\"Header\":\"Opening Door 1\",\"Note\":\"Please wait for door to open\"},\"error\":{\"umessage\":\"In Progress\",\"code\":20001,\"tmessage\":\"In Progress\",\"data\":[]},\"status\":\"False\",\"voiceNote\":\"Opening Door 1\",\"rstatus\":false,\"SectionSKU\":{\"Header\":\"Pick the below items from the door\",\"skus\":[]},\"user\":\"machine\"},{\"action\":\"complete_refill\",\"trays\":{\"11\":{\"tray_id\":\"11\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500671-6\",\"org_sku\":\"4500671\",\"active\":\"1\",\"created_at\":\"2026-06-26 16:54:06\",\"modified_at\":\"2026-06-26 16:54:06\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500671-2117.jpg\",\"name\":\"Max Protein Cheese jalapeno  32gm\",\"mrp\":\"20\",\"weight\":\"38\",\"qty\":\"6\",\"id\":\"11\",\"p_sku\":\"4500671\",\"p_qty\":\"6\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"l_sku\":\"4500671\",\"l_qty\":\"1\"},\"12\":{\"tray_id\":\"12\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500452-6\",\"org_sku\":\"4500452\",\"active\":\"1\",\"created_at\":\"2026-06-26 16:54:06\",\"modified_at\":\"2026-06-26 16:54:06\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500452-8664.jpg\",\"name\":\"Bingo Chips Chilli Sprinkled 30gm\",\"mrp\":\"20\",\"weight\":\"35\",\"qty\":\"6\",\"id\":\"12\",\"p_sku\":\"4500452\",\"p_qty\":\"6\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"l_sku\":\"4500452\",\"l_qty\":\"2\"},\"13\":{\"tray_id\":\"13\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500713-1\",\"org_sku\":\"4500713\",\"active\":\"1\",\"created_at\":\"2026-06-26 16:54:06\",\"modified_at\":\"2026-06-26 16:54:06\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500713-9506.jpg\",\"name\":\"MaxVita Indian Style Cream and onion Potato Chips 40gms\",\"mrp\":\"20\",\"weight\":\"47\",\"qty\":\"1\",\"id\":\"13\",\"p_sku\":\"4500713\",\"p_qty\":\"1\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"l_sku\":\"4500713\",\"l_qty\":\"3\"},\"14\":{\"id\":\"14\",\"tray_id\":\"14\",\"door_id\":\"1\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500672-7226.webp\",\"name\":\"Modern kitchens Garlic Mixture 26gm\",\"mrp\":\"10\",\"weight\":\"29\",\"qty\":0,\"org_sku\":\"4500672\",\"p_sku\":\"4500672\",\"p_qty\":0,\"l_sku\":\"4500672\",\"l_qty\":\"4\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500672-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-06-27 17:03:14\",\"created_at\":\"2026-06-27 17:03:14\"},\"15\":{\"tray_id\":\"15\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500605-8\",\"org_sku\":\"4500605\",\"active\":\"1\",\"created_at\":\"2026-06-26 16:54:06\",\"modified_at\":\"2026-06-26 16:54:06\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500605-6297.png\",\"name\":\"Ongibytes Garlic Muruku \",\"mrp\":\"20\",\"weight\":\"42\",\"qty\":\"8\",\"id\":\"15\",\"p_sku\":\"4500605\",\"p_qty\":\"8\",\"p_return_sku\":\"4500623\",\"p_return_qty\":\"0\",\"return_sku\":\"4500623\",\"return_qty\":\"0\",\"return_image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500623-9349.webp\",\"l_sku\":\"4500623\",\"l_qty\":\"0\"},\"16\":{\"tray_id\":\"16\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500696-12\",\"org_sku\":\"4500696\",\"active\":\"1\",\"created_at\":\"2026-06-26 16:54:06\",\"modified_at\":\"2026-06-26 16:54:06\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500696-244.webp\",\"name\":\"McVities Cashew almond  Cookies 58gm\",\"mrp\":\"10\",\"weight\":\"60\",\"qty\":\"12\",\"id\":\"16\",\"p_sku\":\"4500696\",\"p_qty\":\"12\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"l_sku\":\"4500696\",\"l_qty\":\"4\"},\"17\":{\"id\":\"17\",\"tray_id\":\"17\",\"door_id\":\"1\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500558-8740.jpeg\",\"name\":\"Kiru Millet Crunchies Bayiruchi Masala 22gm\",\"mrp\":\"10\",\"weight\":\"25\",\"qty\":0,\"org_sku\":\"4500558\",\"p_sku\":\"4500558\",\"p_qty\":0,\"l_sku\":\"4500558\",\"l_qty\":\"8\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500558-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-06-27 17:03:14\",\"created_at\":\"2026-06-27 17:03:14\"},\"18\":{\"tray_id\":\"18\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500681-3\",\"org_sku\":\"4500681\",\"active\":\"1\",\"created_at\":\"2026-06-26 16:54:06\",\"modified_at\":\"2026-06-26 16:54:06\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500681-9948.webp\",\"name\":\"McVities Orange Cream Biscuts 61gm\",\"mrp\":\"10\",\"weight\":\"64\",\"qty\":\"3\",\"id\":\"18\",\"p_sku\":\"4500681\",\"p_qty\":\"3\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"l_sku\":\"4500681\",\"l_qty\":\"9\"},\"19\":{\"tray_id\":\"19\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500650-10\",\"org_sku\":\"4500650\",\"active\":\"1\",\"created_at\":\"2026-06-26 16:54:06\",\"modified_at\":\"2026-06-26 16:54:06\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500650-61.webp\",\"name\":\"Modern kitchens Green Peas 26gm\",\"mrp\":\"10\",\"weight\":\"30\",\"qty\":\"10\",\"id\":\"19\",\"p_sku\":\"4500650\",\"p_qty\":\"10\",\"p_return_sku\":\"4500695\",\"p_return_qty\":\"4\",\"return_sku\":\"4500695\",\"return_qty\":\"4\",\"return_image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500695-4594.jpg\",\"l_sku\":\"4500695\",\"l_qty\":\"4\"},\"20\":{\"tray_id\":\"20\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500644-8\",\"org_sku\":\"4500644\",\"active\":\"1\",\"created_at\":\"2026-06-26 16:54:06\",\"modified_at\":\"2026-06-26 16:54:06\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500644-3697.png\",\"name\":\"Ongibytes Pepper Sev 35gm\",\"mrp\":\"20\",\"weight\":\"42\",\"qty\":\"8\",\"id\":\"20\",\"p_sku\":\"4500644\",\"p_qty\":\"8\",\"p_return_sku\":\"4500679\",\"p_return_qty\":\"5\",\"return_sku\":\"4500679\",\"return_qty\":\"5\",\"return_image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500679-7835.png\",\"l_sku\":\"4500679\",\"l_qty\":\"5\"},\"21\":{\"tray_id\":\"21\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500648-8\",\"org_sku\":\"4500648\",\"active\":\"1\",\"created_at\":\"2026-06-26 16:54:06\",\"modified_at\":\"2026-06-26 16:54:06\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500648-25.webp\",\"name\":\"Modern kitchens Banana Chips 21gm\",\"mrp\":\"10\",\"weight\":\"25\",\"qty\":\"8\",\"id\":\"21\",\"p_sku\":\"4500648\",\"p_qty\":\"8\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"l_sku\":\"4500648\",\"l_qty\":\"3\"},\"22\":{\"id\":\"22\",\"tray_id\":\"22\",\"door_id\":\"1\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500697-7388.webp\",\"name\":\"McVities Butter Cookies 58gm\",\"mrp\":\"10\",\"weight\":\"60\",\"qty\":0,\"org_sku\":\"4500697\",\"p_sku\":\"4500697\",\"p_qty\":0,\"l_sku\":\"4500697\",\"l_qty\":\"11\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500697-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-06-27 17:03:14\",\"created_at\":\"2026-06-27 17:03:14\"},\"23\":{\"id\":\"23\",\"tray_id\":\"23\",\"door_id\":\"1\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500570-8490.jpg\",\"name\":\"Wellbe Crunchy Kodbale 25g\",\"mrp\":\"10\",\"weight\":\"35\",\"qty\":0,\"org_sku\":\"4500570\",\"p_sku\":\"4500570\",\"p_qty\":0,\"l_sku\":\"4500570\",\"l_qty\":\"4\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500570-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-06-27 17:03:14\",\"created_at\":\"2026-06-27 17:03:14\"},\"24\":{\"id\":\"24\",\"tray_id\":\"24\",\"door_id\":\"1\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500710-1463.png\",\"name\":\"MaxVita Premium crunch Rusk 51gm\",\"mrp\":\"10\",\"weight\":\"55\",\"qty\":0,\"org_sku\":\"4500710\",\"p_sku\":\"4500710\",\"p_qty\":0,\"l_sku\":\"4500710\",\"l_qty\":\"8\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500710-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-06-27 17:03:14\",\"created_at\":\"2026-06-27 17:03:14\"},\"25\":{\"tray_id\":\"25\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500646-10\",\"org_sku\":\"4500646\",\"active\":\"1\",\"created_at\":\"2026-06-26 16:54:06\",\"modified_at\":\"2026-06-26 16:54:06\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500646-2968.webp\",\"name\":\"Modern Kitchens Moong daal 30g\",\"mrp\":\"10\",\"weight\":\"35\",\"qty\":\"10\",\"id\":\"25\",\"p_sku\":\"4500646\",\"p_qty\":\"10\",\"p_return_sku\":\"4500557\",\"p_return_qty\":\"3\",\"return_sku\":\"4500557\",\"return_qty\":\"3\",\"return_image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500557-4993.jpeg\",\"l_sku\":\"4500557\",\"l_qty\":\"3\"},\"26\":{\"tray_id\":\"26\",\"door_id\":\"1\",\"tray_weight\":\"99999\",\"sku_json\":\"4500650-6\",\"org_sku\":\"4500650\",\"active\":\"1\",\"created_at\":\"2026-06-26 16:54:06\",\"modified_at\":\"2026-06-26 16:54:06\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500650-61.webp\",\"name\":\"Modern kitchens Green Peas 26gm\",\"mrp\":\"10\",\"weight\":\"30\",\"qty\":\"6\",\"id\":\"26\",\"p_sku\":\"4500650\",\"p_qty\":\"6\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"l_sku\":\"4500650\",\"l_qty\":\"4\"},\"27\":{\"id\":\"27\",\"tray_id\":\"27\",\"door_id\":\"1\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500647-1968.png\",\"name\":\"Modern kitchens Roasted Channa 32g\",\"mrp\":\"10\",\"weight\":\"36\",\"qty\":0,\"org_sku\":\"4500647\",\"p_sku\":\"4500647\",\"p_qty\":0,\"l_sku\":\"4500647\",\"l_qty\":\"8\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500647-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-06-27 17:03:14\",\"created_at\":\"2026-06-27 17:03:14\"},\"31\":{\"tray_id\":\"31\",\"door_id\":\"2\",\"tray_weight\":\"99999\",\"sku_json\":\"166327-1\",\"org_sku\":\"166327\",\"active\":\"1\",\"created_at\":\"2026-06-26 16:54:06\",\"modified_at\":\"2026-06-26 16:54:06\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/166327-5644.jpg\",\"name\":\"Epigamia Chocolate Milkshake 200g\",\"mrp\":\"38\",\"weight\":\"210\",\"qty\":\"1\",\"id\":\"31\",\"p_sku\":\"166327\",\"p_qty\":\"1\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"l_sku\":\"166327\",\"l_qty\":\"5\"},\"32\":{\"id\":\"32\",\"tray_id\":\"32\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/108676-2689.jpg\",\"name\":\"Paper Boat Orange Pouch - 150Ml\",\"mrp\":\"25\",\"weight\":\"177\",\"qty\":0,\"org_sku\":\"108676\",\"p_sku\":\"108676\",\"p_qty\":0,\"l_sku\":\"108676\",\"l_qty\":\"5\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"108676-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-06-27 17:03:14\",\"created_at\":\"2026-06-27 17:03:14\"},\"33\":{\"tray_id\":\"33\",\"door_id\":\"2\",\"tray_weight\":\"99999\",\"sku_json\":\"186043-8\",\"org_sku\":\"186043\",\"active\":\"1\",\"created_at\":\"2026-06-26 16:54:06\",\"modified_at\":\"2026-06-26 16:54:06\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/186043-5089.png\",\"name\":\"Bindu Fizz Jeera Masala 250 ML\",\"mrp\":\"20\",\"weight\":\"295\",\"qty\":\"8\",\"id\":\"33\",\"p_sku\":\"186043\",\"p_qty\":\"8\",\"p_return_sku\":\"4500651\",\"p_return_qty\":\"2\",\"return_sku\":\"4500651\",\"return_qty\":\"2\",\"return_image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500651-8004.webp\",\"l_sku\":\"4500651\",\"l_qty\":\"2\"},\"34\":{\"id\":\"34\",\"tray_id\":\"34\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500407-2060.jpg\",\"name\":\"Paper boat Alphonso Mango 160ml\",\"mrp\":\"25\",\"weight\":\"175\",\"qty\":0,\"org_sku\":\"4500407\",\"p_sku\":\"4500407\",\"p_qty\":0,\"l_sku\":\"4500407\",\"l_qty\":\"5\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500407-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-06-27 17:03:14\",\"created_at\":\"2026-06-27 17:03:14\"},\"35\":{\"id\":\"35\",\"tray_id\":\"35\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/186078-2883.png\",\"name\":\"Paper boat Aam Panna 150ml\",\"mrp\":\"25\",\"weight\":\"166\",\"qty\":0,\"org_sku\":\"186078\",\"p_sku\":\"186078\",\"p_qty\":0,\"l_sku\":\"186078\",\"l_qty\":\"4\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"186078-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-06-27 17:03:14\",\"created_at\":\"2026-06-27 17:03:14\"},\"36\":{\"tray_id\":\"36\",\"door_id\":\"2\",\"tray_weight\":\"99999\",\"sku_json\":\"4500675-1\",\"org_sku\":\"4500675\",\"active\":\"1\",\"created_at\":\"2026-06-26 16:54:06\",\"modified_at\":\"2026-06-26 16:54:06\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500675-5033.jpg\",\"name\":\"Paper Boat Lychee 160ml\",\"mrp\":\"25\",\"weight\":\"175\",\"qty\":\"1\",\"id\":\"36\",\"p_sku\":\"4500675\",\"p_qty\":\"1\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"l_sku\":\"4500675\",\"l_qty\":\"5\"},\"37\":{\"id\":\"37\",\"tray_id\":\"37\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500702-1302.webp\",\"name\":\"Raw Masala Shikanji 200ml\",\"mrp\":\"30\",\"weight\":\"222\",\"qty\":0,\"org_sku\":\"4500702\",\"p_sku\":\"4500702\",\"p_qty\":0,\"l_sku\":\"4500702\",\"l_qty\":\"5\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500702-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-06-27 17:03:14\",\"created_at\":\"2026-06-27 17:03:14\"},\"38\":{\"id\":\"38\",\"tray_id\":\"38\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500656-2520.webp\",\"name\":\"BRU Cold Coffee Classic 200ml\",\"mrp\":\"60\",\"weight\":\"225\",\"qty\":0,\"org_sku\":\"4500656\",\"p_sku\":\"4500656\",\"p_qty\":0,\"l_sku\":\"4500656\",\"l_qty\":\"5\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500656-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-06-27 17:03:14\",\"created_at\":\"2026-06-27 17:03:14\"},\"39\":{\"id\":\"39\",\"tray_id\":\"39\",\"door_id\":\"2\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500499-5719.webp\",\"name\":\"Heritage A1 Spiced Butter Milk180ml\",\"mrp\":\"20\",\"weight\":\"192\",\"qty\":0,\"org_sku\":\"4500499\",\"p_sku\":\"4500499\",\"p_qty\":0,\"l_sku\":\"4500499\",\"l_qty\":\"6\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"sku_json\":\"4500499-0\",\"tray_weight\":\"99999\",\"modified_at\":\"2026-06-27 17:03:14\",\"created_at\":\"2026-06-27 17:03:14\"},\"40\":{\"tray_id\":\"40\",\"door_id\":\"2\",\"tray_weight\":\"99999\",\"sku_json\":\"4500541-15\",\"org_sku\":\"4500541\",\"active\":\"1\",\"created_at\":\"2026-06-26 16:54:06\",\"modified_at\":\"2026-06-26 16:54:06\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500541-6798.jpg\",\"name\":\"Cad bury Dairy Milk Chocolate 18gm\",\"mrp\":\"20\",\"weight\":\"19\",\"qty\":\"15\",\"id\":\"40\",\"p_sku\":\"4500541\",\"p_qty\":\"15\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"l_sku\":\"4500541\",\"l_qty\":\"1\"},\"41\":{\"tray_id\":\"41\",\"door_id\":\"2\",\"tray_weight\":\"99999\",\"sku_json\":\"4500571-15\",\"org_sku\":\"4500571\",\"active\":\"1\",\"created_at\":\"2026-06-26 16:54:06\",\"modified_at\":\"2026-06-26 16:54:06\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500571-5060.jpg\",\"name\":\"Cad bury Perk Plus 38g\",\"mrp\":\"20\",\"weight\":\"42\",\"qty\":\"15\",\"id\":\"41\",\"p_sku\":\"4500571\",\"p_qty\":\"15\",\"p_return_sku\":\"112220\",\"p_return_qty\":\"0\",\"return_sku\":\"112220\",\"return_qty\":\"0\",\"return_image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/112220-2513.jpg\",\"l_sku\":\"112220\",\"l_qty\":\"0\"},\"42\":{\"tray_id\":\"42\",\"door_id\":\"2\",\"tray_weight\":\"99999\",\"sku_json\":\"4500694-6\",\"org_sku\":\"4500667\",\"active\":\"1\",\"created_at\":\"2026-06-26 16:54:06\",\"modified_at\":\"2026-06-26 16:54:06\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500694-1219.png\",\"name\":\"Aatral Natural Electrolytes 200ml\",\"mrp\":\"60\",\"weight\":\"232\",\"qty\":\"6\",\"id\":\"42\",\"p_sku\":\"4500694\",\"p_qty\":\"6\",\"p_return_sku\":\"186084\",\"p_return_qty\":\"0\",\"return_image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/186084-5395.png\",\"l_sku\":\"186084\",\"l_qty\":\"0\"},\"43\":{\"tray_id\":\"43\",\"door_id\":\"2\",\"tray_weight\":\"99999\",\"sku_json\":\"4500667-3\",\"org_sku\":\"4500694\",\"active\":\"1\",\"created_at\":\"2026-06-26 16:54:06\",\"modified_at\":\"2026-06-26 16:54:06\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500667-4339.webp\",\"name\":\"Farmely Classic date Bites 20gm\",\"mrp\":\"40\",\"weight\":\"23\",\"qty\":\"3\",\"id\":\"43\",\"p_sku\":\"4500667\",\"p_qty\":\"3\",\"p_return_sku\":\"4500667\",\"p_return_qty\":\"6\",\"l_sku\":\"4500667\",\"l_qty\":\"6\"},\"44\":{\"tray_id\":\"44\",\"door_id\":\"2\",\"tray_weight\":\"99999\",\"sku_json\":\"186059-6\",\"org_sku\":\"186059\",\"active\":\"1\",\"created_at\":\"2026-06-26 16:54:06\",\"modified_at\":\"2026-06-26 16:54:06\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/186059-5330.png\",\"name\":\"Pepsi ZeroSugar  300ml\",\"mrp\":\"40\",\"weight\":\"310\",\"qty\":\"6\",\"id\":\"44\",\"p_sku\":\"186059\",\"p_qty\":\"6\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"l_sku\":\"186059\",\"l_qty\":\"2\"},\"45\":{\"tray_id\":\"45\",\"door_id\":\"2\",\"tray_weight\":\"99999\",\"sku_json\":\"4500704-6\",\"org_sku\":\"4500704\",\"active\":\"1\",\"created_at\":\"2026-06-26 16:54:06\",\"modified_at\":\"2026-06-26 16:54:06\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500704-2291.webp\",\"name\":\"Heritage livo Badam milk 180ml\",\"mrp\":\"30\",\"weight\":\"210\",\"qty\":\"6\",\"id\":\"45\",\"p_sku\":\"4500704\",\"p_qty\":\"6\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"l_sku\":\"4500704\",\"l_qty\":\"0\"},\"46\":{\"tray_id\":\"46\",\"door_id\":\"2\",\"tray_weight\":\"99999\",\"sku_json\":\"4500706-1\",\"org_sku\":\"4500706\",\"active\":\"1\",\"created_at\":\"2026-06-26 16:54:06\",\"modified_at\":\"2026-06-26 16:54:06\",\"image\":\"https:\\\/\\\/images.tinymart.in\\\/product\\\/4500706-1073.webp\",\"name\":\"MAA Mango flavoured Fruit drink 170ml\",\"mrp\":\"20\",\"weight\":\"185\",\"qty\":\"1\",\"id\":\"46\",\"p_sku\":\"4500706\",\"p_qty\":\"1\",\"p_return_sku\":\"\",\"p_return_qty\":0,\"return_sku\":\"\",\"return_qty\":0,\"l_sku\":\"4500706\",\"l_qty\":\"4\"}},\"command_for\":\"server\"},{\"success\":true,\"tray_mismatches\":[{\"quantity_in_db\":\"6\",\"tray_id\":\"11\",\"quantity_on_tray\":\"6\",\"sku_id\":\"4500671\",\"sku_name\":\"Max Protein Cheese jalapeno  32gm\"},{\"quantity_in_db\":\"6\",\"tray_id\":\"12\",\"quantity_on_tray\":\"6\",\"sku_id\":\"4500452\",\"sku_name\":\"Bingo Chips Chilli Sprinkled 30gm\"},{\"quantity_in_db\":\"1\",\"tray_id\":\"13\",\"quantity_on_tray\":\"6\",\"sku_id\":\"4500713\",\"sku_name\":\"MaxVita Indian Style Cream and onion Potato Chips 40gms\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"14\",\"quantity_on_tray\":\"6\",\"sku_id\":\"4500672\",\"sku_name\":\"Modern kitchens Garlic Mixture 26gm\"},{\"quantity_in_db\":\"8\",\"tray_id\":\"15\",\"quantity_on_tray\":\"9\",\"sku_id\":\"4500605\",\"sku_name\":\"Ongibytes Garlic Muruku \"},{\"quantity_in_db\":\"12\",\"tray_id\":\"16\",\"quantity_on_tray\":\"10\",\"sku_id\":\"4500696\",\"sku_name\":\"McVities Cashew almond  Cookies 58gm\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"17\",\"quantity_on_tray\":\"9\",\"sku_id\":\"4500558\",\"sku_name\":\"Kiru Millet Crunchies Bayiruchi Masala 22gm\"},{\"quantity_in_db\":\"3\",\"tray_id\":\"18\",\"quantity_on_tray\":\"13\",\"sku_id\":\"4500681\",\"sku_name\":\"McVities Orange Cream Biscuts 61gm\"},{\"quantity_in_db\":\"10\",\"tray_id\":\"19\",\"quantity_on_tray\":\"9\",\"sku_id\":\"4500650\",\"sku_name\":\"Modern kitchens Green Peas 26gm\"},{\"quantity_in_db\":\"8\",\"tray_id\":\"20\",\"quantity_on_tray\":\"8\",\"sku_id\":\"4500644\",\"sku_name\":\"Ongibytes Pepper Sev 35gm\"},{\"quantity_in_db\":\"8\",\"tray_id\":\"21\",\"quantity_on_tray\":\"10\",\"sku_id\":\"4500648\",\"sku_name\":\"Modern kitchens Banana Chips 21gm\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"22\",\"quantity_on_tray\":\"11\",\"sku_id\":\"4500697\",\"sku_name\":\"McVities Butter Cookies 58gm\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"23\",\"quantity_on_tray\":\"5\",\"sku_id\":\"4500570\",\"sku_name\":\"Wellbe Crunchy Kodbale 25g\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"24\",\"quantity_on_tray\":\"8\",\"sku_id\":\"4500710\",\"sku_name\":\"MaxVita Premium crunch Rusk 51gm\"},{\"quantity_in_db\":\"10\",\"tray_id\":\"25\",\"quantity_on_tray\":\"7\",\"sku_id\":\"4500646\",\"sku_name\":\"Modern Kitchens Moong daal 30g\"},{\"quantity_in_db\":\"6\",\"tray_id\":\"26\",\"quantity_on_tray\":\"8\",\"sku_id\":\"4500650\",\"sku_name\":\"Modern kitchens Green Peas 26gm\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"27\",\"quantity_on_tray\":\"8\",\"sku_id\":\"4500647\",\"sku_name\":\"Modern kitchens Roasted Channa 32g\"},{\"quantity_in_db\":\"1\",\"tray_id\":\"31\",\"quantity_on_tray\":\"5\",\"sku_id\":\"166327\",\"sku_name\":\"Epigamia Chocolate Milkshake 200g\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"32\",\"quantity_on_tray\":\"5\",\"sku_id\":\"108676\",\"sku_name\":\"Paper Boat Orange Pouch - 150Ml\"},{\"quantity_in_db\":\"8\",\"tray_id\":\"33\",\"quantity_on_tray\":\"7\",\"sku_id\":\"186043\",\"sku_name\":\"Bindu Fizz Jeera Masala 250 ML\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"34\",\"quantity_on_tray\":\"5\",\"sku_id\":\"4500407\",\"sku_name\":\"Paper boat Alphonso Mango 160ml\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"35\",\"quantity_on_tray\":\"5\",\"sku_id\":\"186078\",\"sku_name\":\"Paper boat Aam Panna 150ml\"},{\"quantity_in_db\":\"1\",\"tray_id\":\"36\",\"quantity_on_tray\":\"6\",\"sku_id\":\"4500675\",\"sku_name\":\"Paper Boat Lychee 160ml\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"37\",\"quantity_on_tray\":\"5\",\"sku_id\":\"4500702\",\"sku_name\":\"Raw Masala Shikanji 200ml\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"38\",\"quantity_on_tray\":\"5\",\"sku_id\":\"4500656\",\"sku_name\":\"BRU Cold Coffee Classic 200ml\"},{\"quantity_in_db\":\"0\",\"tray_id\":\"39\",\"quantity_on_tray\":\"7\",\"sku_id\":\"4500499\",\"sku_name\":\"Heritage A1 Spiced Butter Milk180ml\"},{\"quantity_in_db\":\"15\",\"tray_id\":\"40\",\"quantity_on_tray\":\"18\",\"sku_id\":\"4500541\",\"sku_name\":\"Cad bury Dairy Milk Chocolate 18gm\"},{\"quantity_in_db\":\"15\",\"tray_id\":\"41\",\"quantity_on_tray\":\"14\",\"sku_id\":\"4500571\",\"sku_name\":\"Cad bury Perk Plus 38g\"},{\"quantity_in_db\":\"6\",\"tray_id\":\"42\",\"quantity_on_tray\":\"9\",\"sku_id\":\"4500667\",\"sku_name\":\"Farmely Classic date Bites 20gm\"},{\"quantity_in_db\":\"3\",\"tray_id\":\"43\",\"quantity_on_tray\":\"6\",\"sku_id\":\"4500694\",\"sku_name\":\"Aatral Natural Electrolytes 200ml\"},{\"quantity_in_db\":\"6\",\"tray_id\":\"44\",\"quantity_on_tray\":\"8\",\"sku_id\":\"186059\",\"sku_name\":\"Pepsi ZeroSugar  300ml\"},{\"quantity_in_db\":\"6\",\"tray_id\":\"45\",\"quantity_on_tray\":\"6\",\"sku_id\":\"4500704\",\"sku_name\":\"Heritage livo Badam milk 180ml\"},{\"quantity_in_db\":\"1\",\"tray_id\":\"46\",\"quantity_on_tray\":\"5\",\"sku_id\":\"4500706\",\"sku_name\":\"MAA Mango flavoured Fruit drink 170ml\"}],\"message\":\"Tray mismatches found.\",\"user\":\"machine\"},{\"action\":\"verify_refill\",\"quantity_on_tray_11\":\"6\",\"confirmed_11\":\"on\",\"quantity_on_tray_12\":\"6\",\"confirmed_12\":\"on\",\"quantity_on_tray_13\":\"6\",\"confirmed_13\":\"on\",\"quantity_on_tray_14\":\"8\",\"confirmed_14\":\"on\",\"quantity_on_tray_15\":\"8\",\"confirmed_15\":\"on\",\"quantity_on_tray_16\":\"10\",\"confirmed_16\":\"on\",\"quantity_on_tray_17\":\"9\",\"confirmed_17\":\"on\",\"quantity_on_tray_18\":\"13\",\"confirmed_18\":\"on\",\"quantity_on_tray_19\":\"9\",\"confirmed_19\":\"on\",\"quantity_on_tray_20\":\"8\",\"confirmed_20\":\"on\",\"quantity_on_tray_21\":\"10\",\"confirmed_21\":\"on\",\"quantity_on_tray_22\":\"11\",\"confirmed_22\":\"on\",\"quantity_on_tray_23\":\"6\",\"confirmed_23\":\"on\",\"quantity_on_tray_24\":\"8\",\"confirmed_24\":\"on\",\"quantity_on_tray_25\":\"8\",\"confirmed_25\":\"on\",\"quantity_on_tray_26\":\"8\",\"confirmed_26\":\"on\",\"quantity_on_tray_27\":\"8\",\"confirmed_27\":\"on\",\"quantity_on_tray_31\":\"6\",\"confirmed_31\":\"on\",\"quantity_on_tray_32\":\"5\",\"confirmed_32\":\"on\",\"quantity_on_tray_33\":\"8\",\"confirmed_33\":\"on\",\"quantity_on_tray_34\":\"5\",\"confirmed_34\":\"on\",\"quantity_on_tray_35\":\"5\",\"confirmed_35\":\"on\",\"quantity_on_tray_36\":\"6\",\"confirmed_36\":\"on\",\"quantity_on_tray_37\":\"5\",\"confirmed_37\":\"on\",\"quantity_on_tray_38\":\"5\",\"confirmed_38\":\"on\",\"quantity_on_tray_39\":\"7\",\"confirmed_39\":\"on\",\"quantity_on_tray_40\":\"18\",\"confirmed_40\":\"on\",\"quantity_on_tray_41\":\"15\",\"confirmed_41\":\"on\",\"quantity_on_tray_42\":\"10\",\"confirmed_42\":\"on\",\"quantity_on_tray_43\":\"6\",\"confirmed_43\":\"on\",\"quantity_on_tray_44\":\"8\",\"confirmed_44\":\"on\",\"quantity_on_tray_45\":\"6\",\"confirmed_45\":\"on\",\"quantity_on_tray_46\":\"5\",\"confirmed_46\":\"on\",\"command_for\":\"server\"},{\"success\":true,\"user\":\"machine\"}]","type_of_order":"refill","command_request_data":"{\"user\":\"machine\",\"refill_order_id\":\"TM06202304_refill_260627170312\",\"response_data\":{\"success\":true},\"action_name\":\"completed\",\"action\":\"completed\",\"sub-action\":\"completed\",\"request_data\":{\"door_id\":[1],\"order_id\":\"TM06202304_refill_260627170312\",\"content\":[{\"sku_name\":\"Max Protein Cheese jalapeno  32gm\",\"check_enabled\":true,\"quantity_in_db\":\"6\",\"tray_id\":\"11\",\"quantity_on_tray\":\"6\",\"sku_id\":\"4500671\"},{\"sku_name\":\"Bingo Chips Chilli Sprinkled 30gm\",\"check_enabled\":true,\"quantity_in_db\":\"6\",\"tray_id\":\"12\",\"quantity_on_tray\":\"6\",\"sku_id\":\"4500452\"},{\"sku_name\":\"MaxVita Indian Style Cream and onion Potato Chips 40gms\",\"check_enabled\":true,\"quantity_in_db\":\"1\",\"tray_id\":\"13\",\"quantity_on_tray\":\"6\",\"sku_id\":\"4500713\"},{\"sku_name\":\"Modern kitchens Garlic Mixture 26gm\",\"check_enabled\":true,\"quantity_in_db\":\"0\",\"tray_id\":\"14\",\"quantity_on_tray\":\"8\",\"sku_id\":\"4500672\"},{\"sku_name\":\"Ongibytes Garlic Muruku \",\"check_enabled\":true,\"quantity_in_db\":\"8\",\"tray_id\":\"15\",\"quantity_on_tray\":\"8\",\"sku_id\":\"4500605\"},{\"sku_name\":\"McVities Cashew almond  Cookies 58gm\",\"check_enabled\":true,\"quantity_in_db\":\"12\",\"tray_id\":\"16\",\"quantity_on_tray\":\"10\",\"sku_id\":\"4500696\"},{\"sku_name\":\"Kiru Millet Crunchies Bayiruchi Masala 22gm\",\"check_enabled\":true,\"quantity_in_db\":\"0\",\"tray_id\":\"17\",\"quantity_on_tray\":\"9\",\"sku_id\":\"4500558\"},{\"sku_name\":\"McVities Orange Cream Biscuts 61gm\",\"check_enabled\":true,\"quantity_in_db\":\"3\",\"tray_id\":\"18\",\"quantity_on_tray\":\"13\",\"sku_id\":\"4500681\"},{\"sku_name\":\"Modern kitchens Green Peas 26gm\",\"check_enabled\":true,\"quantity_in_db\":\"10\",\"tray_id\":\"19\",\"quantity_on_tray\":\"9\",\"sku_id\":\"4500650\"},{\"sku_name\":\"Ongibytes Pepper Sev 35gm\",\"check_enabled\":true,\"quantity_in_db\":\"8\",\"tray_id\":\"20\",\"quantity_on_tray\":\"8\",\"sku_id\":\"4500644\"},{\"sku_name\":\"Modern kitchens Banana Chips 21gm\",\"check_enabled\":true,\"quantity_in_db\":\"8\",\"tray_id\":\"21\",\"quantity_on_tray\":\"10\",\"sku_id\":\"4500648\"},{\"sku_name\":\"McVities Butter Cookies 58gm\",\"check_enabled\":true,\"quantity_in_db\":\"0\",\"tray_id\":\"22\",\"quantity_on_tray\":\"11\",\"sku_id\":\"4500697\"},{\"sku_name\":\"Wellbe Crunchy Kodbale 25g\",\"check_enabled\":true,\"quantity_in_db\":\"0\",\"tray_id\":\"23\",\"quantity_on_tray\":\"6\",\"sku_id\":\"4500570\"},{\"sku_name\":\"MaxVita Premium crunch Rusk 51gm\",\"check_enabled\":true,\"quantity_in_db\":\"0\",\"tray_id\":\"24\",\"quantity_on_tray\":\"8\",\"sku_id\":\"4500710\"},{\"sku_name\":\"Modern Kitchens Moong daal 30g\",\"check_enabled\":true,\"quantity_in_db\":\"10\",\"tray_id\":\"25\",\"quantity_on_tray\":\"8\",\"sku_id\":\"4500646\"},{\"sku_name\":\"Modern kitchens Green Peas 26gm\",\"check_enabled\":true,\"quantity_in_db\":\"6\",\"tray_id\":\"26\",\"quantity_on_tray\":\"8\",\"sku_id\":\"4500650\"},{\"sku_name\":\"Modern kitchens Roasted Channa 32g\",\"check_enabled\":true,\"quantity_in_db\":\"0\",\"tray_id\":\"27\",\"quantity_on_tray\":\"8\",\"sku_id\":\"4500647\"},{\"sku_name\":\"Epigamia Chocolate Milkshake 200g\",\"check_enabled\":true,\"quantity_in_db\":\"1\",\"tray_id\":\"31\",\"quantity_on_tray\":\"6\",\"sku_id\":\"166327\"},{\"sku_name\":\"Paper Boat Orange Pouch - 150Ml\",\"check_enabled\":true,\"quantity_in_db\":\"0\",\"tray_id\":\"32\",\"quantity_on_tray\":\"5\",\"sku_id\":\"108676\"},{\"sku_name\":\"Bindu Fizz Jeera Masala 250 ML\",\"check_enabled\":true,\"quantity_in_db\":\"8\",\"tray_id\":\"33\",\"quantity_on_tray\":\"8\",\"sku_id\":\"186043\"},{\"sku_name\":\"Paper boat Alphonso Mango 160ml\",\"check_enabled\":true,\"quantity_in_db\":\"0\",\"tray_id\":\"34\",\"quantity_on_tray\":\"5\",\"sku_id\":\"4500407\"},{\"sku_name\":\"Paper boat Aam Panna 150ml\",\"check_enabled\":true,\"quantity_in_db\":\"0\",\"tray_id\":\"35\",\"quantity_on_tray\":\"5\",\"sku_id\":\"186078\"},{\"sku_name\":\"Paper Boat Lychee 160ml\",\"check_enabled\":true,\"quantity_in_db\":\"1\",\"tray_id\":\"36\",\"quantity_on_tray\":\"6\",\"sku_id\":\"4500675\"},{\"sku_name\":\"Raw Masala Shikanji 200ml\",\"check_enabled\":true,\"quantity_in_db\":\"0\",\"tray_id\":\"37\",\"quantity_on_tray\":\"5\",\"sku_id\":\"4500702\"},{\"sku_name\":\"BRU Cold Coffee Classic 200ml\",\"check_enabled\":true,\"quantity_in_db\":\"0\",\"tray_id\":\"38\",\"quantity_on_tray\":\"5\",\"sku_id\":\"4500656\"},{\"sku_name\":\"Heritage A1 Spiced Butter Milk180ml\",\"check_enabled\":true,\"quantity_in_db\":\"0\",\"tray_id\":\"39\",\"quantity_on_tray\":\"7\",\"sku_id\":\"4500499\"},{\"sku_name\":\"Cad bury Dairy Milk Chocolate 18gm\",\"check_enabled\":true,\"quantity_in_db\":\"15\",\"tray_id\":\"40\",\"quantity_on_tray\":\"18\",\"sku_id\":\"4500541\"},{\"sku_name\":\"Cad bury Perk Plus 38g\",\"check_enabled\":true,\"quantity_in_db\":\"15\",\"tray_id\":\"41\",\"quantity_on_tray\":\"15\",\"sku_id\":\"4500571\"},{\"sku_name\":\"Farmely Classic date Bites 20gm\",\"check_enabled\":true,\"quantity_in_db\":\"6\",\"tray_id\":\"42\",\"quantity_on_tray\":\"10\",\"sku_id\":\"4500667\"},{\"sku_name\":\"Aatral Natural Electrolytes 200ml\",\"check_enabled\":true,\"quantity_in_db\":\"3\",\"tray_id\":\"43\",\"quantity_on_tray\":\"6\",\"sku_id\":\"4500694\"},{\"sku_name\":\"Pepsi ZeroSugar  300ml\",\"check_enabled\":true,\"quantity_in_db\":\"6\",\"tray_id\":\"44\",\"quantity_on_tray\":\"8\",\"sku_id\":\"186059\"},{\"sku_name\":\"Heritage livo Badam milk 180ml\",\"check_enabled\":true,\"quantity_in_db\":\"6\",\"tray_id\":\"45\",\"quantity_on_tray\":\"6\",\"sku_id\":\"4500704\"},{\"sku_name\":\"MAA Mango flavoured Fruit drink 170ml\",\"check_enabled\":true,\"quantity_in_db\":\"1\",\"tray_id\":\"46\",\"quantity_on_tray\":\"5\",\"sku_id\":\"4500706\"}],\"txnType\":\"refill\",\"door_open_init\":true,\"refill_id\":\"9689994\"},\"active_doors\":[\"1\",\"2\"]}","command_for":"server","created_at":"2026-06-27 17:02:48","modified_at":"2026-06-27 17:13:25"}
[2026-06-27 17:13:25,381.381 INFO    ] {'server_response': '', 'status': 'active', 'server_status': 'completed', 'order_id': '9689994', 'type_of_order': 'refill', 'all_command_response': '[{"action":"get_user_mobile_no","mobile_no":"9036356553","command_for":"server"},{"user_id":9036356553,"allowed":"1","success":"true","refill_id":"9689994","otp":"7223","user":"machine"},{"action":"get_mobile_otp","mobile_no":"9036356553","otp":"7223","command_for":"server"},{"door_size":2,"order_id":"TM06202304_refill_260627170312","active_payment_gateways":"[{\\"payments\\": [{\\"label\\": \\"PayTM\\", \\"name\\": \\"PayTM\\", \\"active\\": 1}, {\\"label\\": \\"PhonePe\\", \\"name\\": \\"PhonePe\\", \\"active\\": 1}, {\\"label\\": \\"Google Pay\\", \\"name\\": \\"GooglePay\\", \\"active\\": 1}, {\\"label\\": \\"BHIM UPI\\", \\"name\\": \\"BHIM\\", \\"active\\": 1}], \\"header\\": \\"QR Payments\\"}, {\\"payments\\": [{\\"label\\": \\"Sodexo Card\\", \\"name\\": \\"Sodexo\\", \\"active\\": 1}, {\\"label\\": \\"Credit\\/Debit Card\\", \\"name\\": \\"Card\\", \\"active\\": 1}, {\\"label\\": \\"QwikCilver\\", \\"name\\": \\"Qwikcilver\\", \\"active\\": 0}], \\"header\\": \\"Card Payments\\"}, {\\"payments\\": [{\\"label\\": \\"LazyPay\\", \\"name\\": \\"LazyPay\\", \\"active\\": 1}, {\\"label\\": \\"OLA Money\\", \\"name\\": \\"Ola\\", \\"active\\": 0}, {\\"label\\": \\"Tiny Wallet\\", \\"name\\": \\"Neuu\\", \\"active\\": 0}], \\"header\\": \\"Wallet Payments\\"}]","status":"True","user_id":9036356553,"refill_order_id":"TM06202304_refill_260627170312","rstatus":true,"refill_id":"9689994","active_doors":["1","2"],"user":"machine"},{"action":"open_door_call","door_no":"1","command_for":"server"},{"SectionMain":{"Header":"Door Open"},"SectionStatus":{"SubHeader":"Please Pick products after opening","UI_Header":"DOOR 1\\nIS \\nOPEN \\nNOW","Header":"Opening Door 1","Note":"Please wait for door to open"},"error":{"umessage":"In Progress","code":20001,"tmessage":"In Progress","data":[]},"status":"False","voiceNote":"Opening Door 1","rstatus":false,"SectionSKU":{"Header":"Pick the below items from the door","skus":[]},"user":"machine"},{"action":"open_door_call","door_no":"2","command_for":"server"},{"SectionMain":{"Header":"Door Open"},"SectionStatus":{"SubHeader":"Please Pick products after opening","UI_Header":"DOOR 2\\nIS \\nOPEN \\nNOW","Header":"Opening Door 2","Note":"Please wait for door to open"},"error":{"umessage":"In Progress","code":20001,"tmessage":"In Progress","data":[]},"status":"False","voiceNote":"Opening Door 2","rstatus":false,"SectionSKU":{"Header":"Pick the below items from the door","skus":[]},"user":"machine"},{"action":"open_door_call","door_no":"1","command_for":"server"},{"SectionMain":{"Header":"Door Open"},"SectionStatus":{"SubHeader":"Please Pick products after opening","UI_Header":"DOOR 1\\nIS \\nOPEN \\nNOW","Header":"Opening Door 1","Note":"Please wait for door to open"},"error":{"umessage":"In Progress","code":20001,"tmessage":"In Progress","data":[]},"status":"False","voiceNote":"Opening Door 1","rstatus":false,"SectionSKU":{"Header":"Pick the below items from the door","skus":[]},"user":"machine"},{"action":"complete_refill","trays":{"11":{"tray_id":"11","door_id":"1","tray_weight":"99999","sku_json":"4500671-6","org_sku":"4500671","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/4500671-2117.jpg","name":"Max Protein Cheese jalapeno  32gm","mrp":"20","weight":"38","qty":"6","id":"11","p_sku":"4500671","p_qty":"6","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500671","l_qty":"1"},"12":{"tray_id":"12","door_id":"1","tray_weight":"99999","sku_json":"4500452-6","org_sku":"4500452","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/4500452-8664.jpg","name":"Bingo Chips Chilli Sprinkled 30gm","mrp":"20","weight":"35","qty":"6","id":"12","p_sku":"4500452","p_qty":"6","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500452","l_qty":"2"},"13":{"tray_id":"13","door_id":"1","tray_weight":"99999","sku_json":"4500713-1","org_sku":"4500713","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/4500713-9506.jpg","name":"MaxVita Indian Style Cream and onion Potato Chips 40gms","mrp":"20","weight":"47","qty":"1","id":"13","p_sku":"4500713","p_qty":"1","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500713","l_qty":"3"},"14":{"id":"14","tray_id":"14","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/4500672-7226.webp","name":"Modern kitchens Garlic Mixture 26gm","mrp":"10","weight":"29","qty":0,"org_sku":"4500672","p_sku":"4500672","p_qty":0,"l_sku":"4500672","l_qty":"4","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500672-0","tray_weight":"99999","modified_at":"2026-06-27 17:03:14","created_at":"2026-06-27 17:03:14"},"15":{"tray_id":"15","door_id":"1","tray_weight":"99999","sku_json":"4500605-8","org_sku":"4500605","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/4500605-6297.png","name":"Ongibytes Garlic Muruku ","mrp":"20","weight":"42","qty":"8","id":"15","p_sku":"4500605","p_qty":"8","p_return_sku":"4500623","p_return_qty":"0","return_sku":"4500623","return_qty":"0","return_image":"https:\\/\\/images.tinymart.in\\/product\\/4500623-9349.webp","l_sku":"4500623","l_qty":"0"},"16":{"tray_id":"16","door_id":"1","tray_weight":"99999","sku_json":"4500696-12","org_sku":"4500696","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/4500696-244.webp","name":"McVities Cashew almond  Cookies 58gm","mrp":"10","weight":"60","qty":"12","id":"16","p_sku":"4500696","p_qty":"12","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500696","l_qty":"4"},"17":{"id":"17","tray_id":"17","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/4500558-8740.jpeg","name":"Kiru Millet Crunchies Bayiruchi Masala 22gm","mrp":"10","weight":"25","qty":0,"org_sku":"4500558","p_sku":"4500558","p_qty":0,"l_sku":"4500558","l_qty":"8","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500558-0","tray_weight":"99999","modified_at":"2026-06-27 17:03:14","created_at":"2026-06-27 17:03:14"},"18":{"tray_id":"18","door_id":"1","tray_weight":"99999","sku_json":"4500681-3","org_sku":"4500681","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/4500681-9948.webp","name":"McVities Orange Cream Biscuts 61gm","mrp":"10","weight":"64","qty":"3","id":"18","p_sku":"4500681","p_qty":"3","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500681","l_qty":"9"},"19":{"tray_id":"19","door_id":"1","tray_weight":"99999","sku_json":"4500650-10","org_sku":"4500650","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/4500650-61.webp","name":"Modern kitchens Green Peas 26gm","mrp":"10","weight":"30","qty":"10","id":"19","p_sku":"4500650","p_qty":"10","p_return_sku":"4500695","p_return_qty":"4","return_sku":"4500695","return_qty":"4","return_image":"https:\\/\\/images.tinymart.in\\/product\\/4500695-4594.jpg","l_sku":"4500695","l_qty":"4"},"20":{"tray_id":"20","door_id":"1","tray_weight":"99999","sku_json":"4500644-8","org_sku":"4500644","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/4500644-3697.png","name":"Ongibytes Pepper Sev 35gm","mrp":"20","weight":"42","qty":"8","id":"20","p_sku":"4500644","p_qty":"8","p_return_sku":"4500679","p_return_qty":"5","return_sku":"4500679","return_qty":"5","return_image":"https:\\/\\/images.tinymart.in\\/product\\/4500679-7835.png","l_sku":"4500679","l_qty":"5"},"21":{"tray_id":"21","door_id":"1","tray_weight":"99999","sku_json":"4500648-8","org_sku":"4500648","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/4500648-25.webp","name":"Modern kitchens Banana Chips 21gm","mrp":"10","weight":"25","qty":"8","id":"21","p_sku":"4500648","p_qty":"8","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500648","l_qty":"3"},"22":{"id":"22","tray_id":"22","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/4500697-7388.webp","name":"McVities Butter Cookies 58gm","mrp":"10","weight":"60","qty":0,"org_sku":"4500697","p_sku":"4500697","p_qty":0,"l_sku":"4500697","l_qty":"11","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500697-0","tray_weight":"99999","modified_at":"2026-06-27 17:03:14","created_at":"2026-06-27 17:03:14"},"23":{"id":"23","tray_id":"23","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/4500570-8490.jpg","name":"Wellbe Crunchy Kodbale 25g","mrp":"10","weight":"35","qty":0,"org_sku":"4500570","p_sku":"4500570","p_qty":0,"l_sku":"4500570","l_qty":"4","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500570-0","tray_weight":"99999","modified_at":"2026-06-27 17:03:14","created_at":"2026-06-27 17:03:14"},"24":{"id":"24","tray_id":"24","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/4500710-1463.png","name":"MaxVita Premium crunch Rusk 51gm","mrp":"10","weight":"55","qty":0,"org_sku":"4500710","p_sku":"4500710","p_qty":0,"l_sku":"4500710","l_qty":"8","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500710-0","tray_weight":"99999","modified_at":"2026-06-27 17:03:14","created_at":"2026-06-27 17:03:14"},"25":{"tray_id":"25","door_id":"1","tray_weight":"99999","sku_json":"4500646-10","org_sku":"4500646","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/4500646-2968.webp","name":"Modern Kitchens Moong daal 30g","mrp":"10","weight":"35","qty":"10","id":"25","p_sku":"4500646","p_qty":"10","p_return_sku":"4500557","p_return_qty":"3","return_sku":"4500557","return_qty":"3","return_image":"https:\\/\\/images.tinymart.in\\/product\\/4500557-4993.jpeg","l_sku":"4500557","l_qty":"3"},"26":{"tray_id":"26","door_id":"1","tray_weight":"99999","sku_json":"4500650-6","org_sku":"4500650","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/4500650-61.webp","name":"Modern kitchens Green Peas 26gm","mrp":"10","weight":"30","qty":"6","id":"26","p_sku":"4500650","p_qty":"6","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500650","l_qty":"4"},"27":{"id":"27","tray_id":"27","door_id":"1","image":"https:\\/\\/images.tinymart.in\\/product\\/4500647-1968.png","name":"Modern kitchens Roasted Channa 32g","mrp":"10","weight":"36","qty":0,"org_sku":"4500647","p_sku":"4500647","p_qty":0,"l_sku":"4500647","l_qty":"8","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500647-0","tray_weight":"99999","modified_at":"2026-06-27 17:03:14","created_at":"2026-06-27 17:03:14"},"31":{"tray_id":"31","door_id":"2","tray_weight":"99999","sku_json":"166327-1","org_sku":"166327","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/166327-5644.jpg","name":"Epigamia Chocolate Milkshake 200g","mrp":"38","weight":"210","qty":"1","id":"31","p_sku":"166327","p_qty":"1","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"166327","l_qty":"5"},"32":{"id":"32","tray_id":"32","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/108676-2689.jpg","name":"Paper Boat Orange Pouch - 150Ml","mrp":"25","weight":"177","qty":0,"org_sku":"108676","p_sku":"108676","p_qty":0,"l_sku":"108676","l_qty":"5","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"108676-0","tray_weight":"99999","modified_at":"2026-06-27 17:03:14","created_at":"2026-06-27 17:03:14"},"33":{"tray_id":"33","door_id":"2","tray_weight":"99999","sku_json":"186043-8","org_sku":"186043","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/186043-5089.png","name":"Bindu Fizz Jeera Masala 250 ML","mrp":"20","weight":"295","qty":"8","id":"33","p_sku":"186043","p_qty":"8","p_return_sku":"4500651","p_return_qty":"2","return_sku":"4500651","return_qty":"2","return_image":"https:\\/\\/images.tinymart.in\\/product\\/4500651-8004.webp","l_sku":"4500651","l_qty":"2"},"34":{"id":"34","tray_id":"34","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/4500407-2060.jpg","name":"Paper boat Alphonso Mango 160ml","mrp":"25","weight":"175","qty":0,"org_sku":"4500407","p_sku":"4500407","p_qty":0,"l_sku":"4500407","l_qty":"5","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500407-0","tray_weight":"99999","modified_at":"2026-06-27 17:03:14","created_at":"2026-06-27 17:03:14"},"35":{"id":"35","tray_id":"35","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/186078-2883.png","name":"Paper boat Aam Panna 150ml","mrp":"25","weight":"166","qty":0,"org_sku":"186078","p_sku":"186078","p_qty":0,"l_sku":"186078","l_qty":"4","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"186078-0","tray_weight":"99999","modified_at":"2026-06-27 17:03:14","created_at":"2026-06-27 17:03:14"},"36":{"tray_id":"36","door_id":"2","tray_weight":"99999","sku_json":"4500675-1","org_sku":"4500675","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/4500675-5033.jpg","name":"Paper Boat Lychee 160ml","mrp":"25","weight":"175","qty":"1","id":"36","p_sku":"4500675","p_qty":"1","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500675","l_qty":"5"},"37":{"id":"37","tray_id":"37","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/4500702-1302.webp","name":"Raw Masala Shikanji 200ml","mrp":"30","weight":"222","qty":0,"org_sku":"4500702","p_sku":"4500702","p_qty":0,"l_sku":"4500702","l_qty":"5","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500702-0","tray_weight":"99999","modified_at":"2026-06-27 17:03:14","created_at":"2026-06-27 17:03:14"},"38":{"id":"38","tray_id":"38","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/4500656-2520.webp","name":"BRU Cold Coffee Classic 200ml","mrp":"60","weight":"225","qty":0,"org_sku":"4500656","p_sku":"4500656","p_qty":0,"l_sku":"4500656","l_qty":"5","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500656-0","tray_weight":"99999","modified_at":"2026-06-27 17:03:14","created_at":"2026-06-27 17:03:14"},"39":{"id":"39","tray_id":"39","door_id":"2","image":"https:\\/\\/images.tinymart.in\\/product\\/4500499-5719.webp","name":"Heritage A1 Spiced Butter Milk180ml","mrp":"20","weight":"192","qty":0,"org_sku":"4500499","p_sku":"4500499","p_qty":0,"l_sku":"4500499","l_qty":"6","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"sku_json":"4500499-0","tray_weight":"99999","modified_at":"2026-06-27 17:03:14","created_at":"2026-06-27 17:03:14"},"40":{"tray_id":"40","door_id":"2","tray_weight":"99999","sku_json":"4500541-15","org_sku":"4500541","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/4500541-6798.jpg","name":"Cad bury Dairy Milk Chocolate 18gm","mrp":"20","weight":"19","qty":"15","id":"40","p_sku":"4500541","p_qty":"15","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500541","l_qty":"1"},"41":{"tray_id":"41","door_id":"2","tray_weight":"99999","sku_json":"4500571-15","org_sku":"4500571","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/4500571-5060.jpg","name":"Cad bury Perk Plus 38g","mrp":"20","weight":"42","qty":"15","id":"41","p_sku":"4500571","p_qty":"15","p_return_sku":"112220","p_return_qty":"0","return_sku":"112220","return_qty":"0","return_image":"https:\\/\\/images.tinymart.in\\/product\\/112220-2513.jpg","l_sku":"112220","l_qty":"0"},"42":{"tray_id":"42","door_id":"2","tray_weight":"99999","sku_json":"4500694-6","org_sku":"4500667","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/4500694-1219.png","name":"Aatral Natural Electrolytes 200ml","mrp":"60","weight":"232","qty":"6","id":"42","p_sku":"4500694","p_qty":"6","p_return_sku":"186084","p_return_qty":"0","return_image":"https:\\/\\/images.tinymart.in\\/product\\/186084-5395.png","l_sku":"186084","l_qty":"0"},"43":{"tray_id":"43","door_id":"2","tray_weight":"99999","sku_json":"4500667-3","org_sku":"4500694","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/4500667-4339.webp","name":"Farmely Classic date Bites 20gm","mrp":"40","weight":"23","qty":"3","id":"43","p_sku":"4500667","p_qty":"3","p_return_sku":"4500667","p_return_qty":"6","l_sku":"4500667","l_qty":"6"},"44":{"tray_id":"44","door_id":"2","tray_weight":"99999","sku_json":"186059-6","org_sku":"186059","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/186059-5330.png","name":"Pepsi ZeroSugar  300ml","mrp":"40","weight":"310","qty":"6","id":"44","p_sku":"186059","p_qty":"6","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"186059","l_qty":"2"},"45":{"tray_id":"45","door_id":"2","tray_weight":"99999","sku_json":"4500704-6","org_sku":"4500704","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/4500704-2291.webp","name":"Heritage livo Badam milk 180ml","mrp":"30","weight":"210","qty":"6","id":"45","p_sku":"4500704","p_qty":"6","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500704","l_qty":"0"},"46":{"tray_id":"46","door_id":"2","tray_weight":"99999","sku_json":"4500706-1","org_sku":"4500706","active":"1","created_at":"2026-06-26 16:54:06","modified_at":"2026-06-26 16:54:06","image":"https:\\/\\/images.tinymart.in\\/product\\/4500706-1073.webp","name":"MAA Mango flavoured Fruit drink 170ml","mrp":"20","weight":"185","qty":"1","id":"46","p_sku":"4500706","p_qty":"1","p_return_sku":"","p_return_qty":0,"return_sku":"","return_qty":0,"l_sku":"4500706","l_qty":"4"}},"command_for":"server"},{"success":true,"tray_mismatches":[{"quantity_in_db":"6","tray_id":"11","quantity_on_tray":"6","sku_id":"4500671","sku_name":"Max Protein Cheese jalapeno  32gm"},{"quantity_in_db":"6","tray_id":"12","quantity_on_tray":"6","sku_id":"4500452","sku_name":"Bingo Chips Chilli Sprinkled 30gm"},{"quantity_in_db":"1","tray_id":"13","quantity_on_tray":"6","sku_id":"4500713","sku_name":"MaxVita Indian Style Cream and onion Potato Chips 40gms"},{"quantity_in_db":"0","tray_id":"14","quantity_on_tray":"6","sku_id":"4500672","sku_name":"Modern kitchens Garlic Mixture 26gm"},{"quantity_in_db":"8","tray_id":"15","quantity_on_tray":"9","sku_id":"4500605","sku_name":"Ongibytes Garlic Muruku "},{"quantity_in_db":"12","tray_id":"16","quantity_on_tray":"10","sku_id":"4500696","sku_name":"McVities Cashew almond  Cookies 58gm"},{"quantity_in_db":"0","tray_id":"17","quantity_on_tray":"9","sku_id":"4500558","sku_name":"Kiru Millet Crunchies Bayiruchi Masala 22gm"},{"quantity_in_db":"3","tray_id":"18","quantity_on_tray":"13","sku_id":"4500681","sku_name":"McVities Orange Cream Biscuts 61gm"},{"quantity_in_db":"10","tray_id":"19","quantity_on_tray":"9","sku_id":"4500650","sku_name":"Modern kitchens Green Peas 26gm"},{"quantity_in_db":"8","tray_id":"20","quantity_on_tray":"8","sku_id":"4500644","sku_name":"Ongibytes Pepper Sev 35gm"},{"quantity_in_db":"8","tray_id":"21","quantity_on_tray":"10","sku_id":"4500648","sku_name":"Modern kitchens Banana Chips 21gm"},{"quantity_in_db":"0","tray_id":"22","quantity_on_tray":"11","sku_id":"4500697","sku_name":"McVities Butter Cookies 58gm"},{"quantity_in_db":"0","tray_id":"23","quantity_on_tray":"5","sku_id":"4500570","sku_name":"Wellbe Crunchy Kodbale 25g"},{"quantity_in_db":"0","tray_id":"24","quantity_on_tray":"8","sku_id":"4500710","sku_name":"MaxVita Premium crunch Rusk 51gm"},{"quantity_in_db":"10","tray_id":"25","quantity_on_tray":"7","sku_id":"4500646","sku_name":"Modern Kitchens Moong daal 30g"},{"quantity_in_db":"6","tray_id":"26","quantity_on_tray":"8","sku_id":"4500650","sku_name":"Modern kitchens Green Peas 26gm"},{"quantity_in_db":"0","tray_id":"27","quantity_on_tray":"8","sku_id":"4500647","sku_name":"Modern kitchens Roasted Channa 32g"},{"quantity_in_db":"1","tray_id":"31","quantity_on_tray":"5","sku_id":"166327","sku_name":"Epigamia Chocolate Milkshake 200g"},{"quantity_in_db":"0","tray_id":"32","quantity_on_tray":"5","sku_id":"108676","sku_name":"Paper Boat Orange Pouch - 150Ml"},{"quantity_in_db":"8","tray_id":"33","quantity_on_tray":"7","sku_id":"186043","sku_name":"Bindu Fizz Jeera Masala 250 ML"},{"quantity_in_db":"0","tray_id":"34","quantity_on_tray":"5","sku_id":"4500407","sku_name":"Paper boat Alphonso Mango 160ml"},{"quantity_in_db":"0","tray_id":"35","quantity_on_tray":"5","sku_id":"186078","sku_name":"Paper boat Aam Panna 150ml"},{"quantity_in_db":"1","tray_id":"36","quantity_on_tray":"6","sku_id":"4500675","sku_name":"Paper Boat Lychee 160ml"},{"quantity_in_db":"0","tray_id":"37","quantity_on_tray":"5","sku_id":"4500702","sku_name":"Raw Masala Shikanji 200ml"},{"quantity_in_db":"0","tray_id":"38","quantity_on_tray":"5","sku_id":"4500656","sku_name":"BRU Cold Coffee Classic 200ml"},{"quantity_in_db":"0","tray_id":"39","quantity_on_tray":"7","sku_id":"4500499","sku_name":"Heritage A1 Spiced Butter Milk180ml"},{"quantity_in_db":"15","tray_id":"40","quantity_on_tray":"18","sku_id":"4500541","sku_name":"Cad bury Dairy Milk Chocolate 18gm"},{"quantity_in_db":"15","tray_id":"41","quantity_on_tray":"14","sku_id":"4500571","sku_name":"Cad bury Perk Plus 38g"},{"quantity_in_db":"6","tray_id":"42","quantity_on_tray":"9","sku_id":"4500667","sku_name":"Farmely Classic date Bites 20gm"},{"quantity_in_db":"3","tray_id":"43","quantity_on_tray":"6","sku_id":"4500694","sku_name":"Aatral Natural Electrolytes 200ml"},{"quantity_in_db":"6","tray_id":"44","quantity_on_tray":"8","sku_id":"186059","sku_name":"Pepsi ZeroSugar  300ml"},{"quantity_in_db":"6","tray_id":"45","quantity_on_tray":"6","sku_id":"4500704","sku_name":"Heritage livo Badam milk 180ml"},{"quantity_in_db":"1","tray_id":"46","quantity_on_tray":"5","sku_id":"4500706","sku_name":"MAA Mango flavoured Fruit drink 170ml"}],"message":"Tray mismatches found.","user":"machine"},{"action":"verify_refill","quantity_on_tray_11":"6","confirmed_11":"on","quantity_on_tray_12":"6","confirmed_12":"on","quantity_on_tray_13":"6","confirmed_13":"on","quantity_on_tray_14":"8","confirmed_14":"on","quantity_on_tray_15":"8","confirmed_15":"on","quantity_on_tray_16":"10","confirmed_16":"on","quantity_on_tray_17":"9","confirmed_17":"on","quantity_on_tray_18":"13","confirmed_18":"on","quantity_on_tray_19":"9","confirmed_19":"on","quantity_on_tray_20":"8","confirmed_20":"on","quantity_on_tray_21":"10","confirmed_21":"on","quantity_on_tray_22":"11","confirmed_22":"on","quantity_on_tray_23":"6","confirmed_23":"on","quantity_on_tray_24":"8","confirmed_24":"on","quantity_on_tray_25":"8","confirmed_25":"on","quantity_on_tray_26":"8","confirmed_26":"on","quantity_on_tray_27":"8","confirmed_27":"on","quantity_on_tray_31":"6","confirmed_31":"on","quantity_on_tray_32":"5","confirmed_32":"on","quantity_on_tray_33":"8","confirmed_33":"on","quantity_on_tray_34":"5","confirmed_34":"on","quantity_on_tray_35":"5","confirmed_35":"on","quantity_on_tray_36":"6","confirmed_36":"on","quantity_on_tray_37":"5","confirmed_37":"on","quantity_on_tray_38":"5","confirmed_38":"on","quantity_on_tray_39":"7","confirmed_39":"on","quantity_on_tray_40":"18","confirmed_40":"on","quantity_on_tray_41":"15","confirmed_41":"on","quantity_on_tray_42":"10","confirmed_42":"on","quantity_on_tray_43":"6","confirmed_43":"on","quantity_on_tray_44":"8","confirmed_44":"on","quantity_on_tray_45":"6","confirmed_45":"on","quantity_on_tray_46":"5","confirmed_46":"on","command_for":"server"},{"success":true,"user":"machine"}]', 'command_for': 'server', 'created_at': '2026-06-27 17:02:48', 'command_request_data': '{"user":"machine","refill_order_id":"TM06202304_refill_260627170312","response_data":{"success":true},"action_name":"completed","action":"completed","sub-action":"completed","request_data":{"door_id":[1],"order_id":"TM06202304_refill_260627170312","content":[{"sku_name":"Max Protein Cheese jalapeno  32gm","check_enabled":true,"quantity_in_db":"6","tray_id":"11","quantity_on_tray":"6","sku_id":"4500671"},{"sku_name":"Bingo Chips Chilli Sprinkled 30gm","check_enabled":true,"quantity_in_db":"6","tray_id":"12","quantity_on_tray":"6","sku_id":"4500452"},{"sku_name":"MaxVita Indian Style Cream and onion Potato Chips 40gms","check_enabled":true,"quantity_in_db":"1","tray_id":"13","quantity_on_tray":"6","sku_id":"4500713"},{"sku_name":"Modern kitchens Garlic Mixture 26gm","check_enabled":true,"quantity_in_db":"0","tray_id":"14","quantity_on_tray":"8","sku_id":"4500672"},{"sku_name":"Ongibytes Garlic Muruku ","check_enabled":true,"quantity_in_db":"8","tray_id":"15","quantity_on_tray":"8","sku_id":"4500605"},{"sku_name":"McVities Cashew almond  Cookies 58gm","check_enabled":true,"quantity_in_db":"12","tray_id":"16","quantity_on_tray":"10","sku_id":"4500696"},{"sku_name":"Kiru Millet Crunchies Bayiruchi Masala 22gm","check_enabled":true,"quantity_in_db":"0","tray_id":"17","quantity_on_tray":"9","sku_id":"4500558"},{"sku_name":"McVities Orange Cream Biscuts 61gm","check_enabled":true,"quantity_in_db":"3","tray_id":"18","quantity_on_tray":"13","sku_id":"4500681"},{"sku_name":"Modern kitchens Green Peas 26gm","check_enabled":true,"quantity_in_db":"10","tray_id":"19","quantity_on_tray":"9","sku_id":"4500650"},{"sku_name":"Ongibytes Pepper Sev 35gm","check_enabled":true,"quantity_in_db":"8","tray_id":"20","quantity_on_tray":"8","sku_id":"4500644"},{"sku_name":"Modern kitchens Banana Chips 21gm","check_enabled":true,"quantity_in_db":"8","tray_id":"21","quantity_on_tray":"10","sku_id":"4500648"},{"sku_name":"McVities Butter Cookies 58gm","check_enabled":true,"quantity_in_db":"0","tray_id":"22","quantity_on_tray":"11","sku_id":"4500697"},{"sku_name":"Wellbe Crunchy Kodbale 25g","check_enabled":true,"quantity_in_db":"0","tray_id":"23","quantity_on_tray":"6","sku_id":"4500570"},{"sku_name":"MaxVita Premium crunch Rusk 51gm","check_enabled":true,"quantity_in_db":"0","tray_id":"24","quantity_on_tray":"8","sku_id":"4500710"},{"sku_name":"Modern Kitchens Moong daal 30g","check_enabled":true,"quantity_in_db":"10","tray_id":"25","quantity_on_tray":"8","sku_id":"4500646"},{"sku_name":"Modern kitchens Green Peas 26gm","check_enabled":true,"quantity_in_db":"6","tray_id":"26","quantity_on_tray":"8","sku_id":"4500650"},{"sku_name":"Modern kitchens Roasted Channa 32g","check_enabled":true,"quantity_in_db":"0","tray_id":"27","quantity_on_tray":"8","sku_id":"4500647"},{"sku_name":"Epigamia Chocolate Milkshake 200g","check_enabled":true,"quantity_in_db":"1","tray_id":"31","quantity_on_tray":"6","sku_id":"166327"},{"sku_name":"Paper Boat Orange Pouch - 150Ml","check_enabled":true,"quantity_in_db":"0","tray_id":"32","quantity_on_tray":"5","sku_id":"108676"},{"sku_name":"Bindu Fizz Jeera Masala 250 ML","check_enabled":true,"quantity_in_db":"8","tray_id":"33","quantity_on_tray":"8","sku_id":"186043"},{"sku_name":"Paper boat Alphonso Mango 160ml","check_enabled":true,"quantity_in_db":"0","tray_id":"34","quantity_on_tray":"5","sku_id":"4500407"},{"sku_name":"Paper boat Aam Panna 150ml","check_enabled":true,"quantity_in_db":"0","tray_id":"35","quantity_on_tray":"5","sku_id":"186078"},{"sku_name":"Paper Boat Lychee 160ml","check_enabled":true,"quantity_in_db":"1","tray_id":"36","quantity_on_tray":"6","sku_id":"4500675"},{"sku_name":"Raw Masala Shikanji 200ml","check_enabled":true,"quantity_in_db":"0","tray_id":"37","quantity_on_tray":"5","sku_id":"4500702"},{"sku_name":"BRU Cold Coffee Classic 200ml","check_enabled":true,"quantity_in_db":"0","tray_id":"38","quantity_on_tray":"5","sku_id":"4500656"},{"sku_name":"Heritage A1 Spiced Butter Milk180ml","check_enabled":true,"quantity_in_db":"0","tray_id":"39","quantity_on_tray":"7","sku_id":"4500499"},{"sku_name":"Cad bury Dairy Milk Chocolate 18gm","check_enabled":true,"quantity_in_db":"15","tray_id":"40","quantity_on_tray":"18","sku_id":"4500541"},{"sku_name":"Cad bury Perk Plus 38g","check_enabled":true,"quantity_in_db":"15","tray_id":"41","quantity_on_tray":"15","sku_id":"4500571"},{"sku_name":"Farmely Classic date Bites 20gm","check_enabled":true,"quantity_in_db":"6","tray_id":"42","quantity_on_tray":"10","sku_id":"4500667"},{"sku_name":"Aatral Natural Electrolytes 200ml","check_enabled":true,"quantity_in_db":"3","tray_id":"43","quantity_on_tray":"6","sku_id":"4500694"},{"sku_name":"Pepsi ZeroSugar  300ml","check_enabled":true,"quantity_in_db":"6","tray_id":"44","quantity_on_tray":"8","sku_id":"186059"},{"sku_name":"Heritage livo Badam milk 180ml","check_enabled":true,"quantity_in_db":"6","tray_id":"45","quantity_on_tray":"6","sku_id":"4500704"},{"sku_name":"MAA Mango flavoured Fruit drink 170ml","check_enabled":true,"quantity_in_db":"1","tray_id":"46","quantity_on_tray":"5","sku_id":"4500706"}],"txnType":"refill","door_open_init":true,"refill_id":"9689994"},"active_doors":["1","2"]}', 'command_todo': 'interactive-refill', 'last_command_response': '{"success":true,"user":"machine"}', 'vm_id': '1686833081377', 'modified_at': '2026-06-27 17:13:25', 'user_id': '9036356553'}
[2026-06-27 17:13:25,385.385 INFO    ] refill verification completed 
[2026-06-27 17:13:25,888.888 INFO    ] 200
[2026-06-27 17:13:25,889.889 INFO    ] {"status": true, "orders_synced": [], "orders_data": [], "orders": [], "order_items": [], "orders_data_synced": [], "tray_synced": ["no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry"], "tray_sync": [], "order_items_synced": []}
[2026-06-27 17:13:25,891.891 INFO    ] Checking for system updates...
[2026-06-27 17:13:25,912.912 INFO    ] 200
[2026-06-27 17:13:25,914.914 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:13:25,947.947 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:13:25,949.949 INFO    ] No update needed
[2026-06-27 17:13:25,950.950 INFO    ] Checking for camera pi updates...
[2026-06-27 17:13:25,972.972 INFO    ] 200
[2026-06-27 17:13:25,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:13:25,997.997 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:13:26,044.044 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:13:26,046.046 INFO    ] No camera update needed
[2026-06-27 17:13:26,047.047 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:13:26,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:13:26,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:13:26,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:13:28,079.079 INFO    ] ================================================
[2026-06-27 17:13:28,088.088 INFO    ] Launching Daemon at Sat Jun 27 17:13:28 IST 2026
[2026-06-27 17:13:28,094.094 INFO    ] ================================================
[2026-06-27 17:13:28,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:13:28
[2026-06-27 17:13:28,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:13:28,886.886 INFO    ] Initializing speech engine...
[2026-06-27 17:13:28,891.891 INFO    ] 2026-06-27 17:13:28
[2026-06-27 17:13:29,095.095 INFO    ] 2026-06-27 17:13:29
[2026-06-27 17:13:29,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:13:29,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:13:29,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:13:29,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:13:29,603.603 INFO    ] time= 27/06/2026 17:13:29
[2026-06-27 17:13:29,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:13:29,629.629 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:13:29,725.725 INFO    ] No existing commands found in stream
[2026-06-27 17:13:34,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:13:34,738.738 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-27 17:13:38,926.926 INFO    ] {'response': {'status': False, 'msg': 'order not active ', 'data': 'order not active'}}
[2026-06-27 17:13:38,928.928 INFO    ] Checking for system updates...
[2026-06-27 17:13:38,949.949 INFO    ] 200
[2026-06-27 17:13:38,950.950 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:13:38,984.984 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:13:38,985.985 INFO    ] No update needed
[2026-06-27 17:13:38,987.987 INFO    ] Checking for camera pi updates...
[2026-06-27 17:13:39,006.006 INFO    ] 200
[2026-06-27 17:13:39,008.008 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:13:39,034.034 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:13:39,090.090 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:13:39,092.092 INFO    ] No camera update needed
[2026-06-27 17:13:39,093.093 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:13:39,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:13:39,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:13:39,100.100 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:13:41,132.132 INFO    ] ================================================
[2026-06-27 17:13:41,142.142 INFO    ] Launching Daemon at Sat Jun 27 17:13:41 IST 2026
[2026-06-27 17:13:41,149.149 INFO    ] ================================================
[2026-06-27 17:13:41,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:13:41
[2026-06-27 17:13:41,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:13:41,939.939 INFO    ] Initializing speech engine...
[2026-06-27 17:13:41,952.952 INFO    ] 2026-06-27 17:13:41
[2026-06-27 17:13:42,176.176 INFO    ] 2026-06-27 17:13:42
[2026-06-27 17:13:42,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:13:42,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:13:42,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:13:42,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:13:42,630.630 INFO    ] time= 27/06/2026 17:13:42
[2026-06-27 17:13:42,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:13:42,668.668 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:13:42,747.747 INFO    ] No existing commands found in stream
[2026-06-27 17:13:47,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:13:47,768.768 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-27 17:13:48,308.308 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 17:13:48,310.310 INFO    ] Checking for system updates...
[2026-06-27 17:13:48,331.331 INFO    ] 200
[2026-06-27 17:13:48,332.332 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:13:48,362.362 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:13:48,363.363 INFO    ] No update needed
[2026-06-27 17:13:48,365.365 INFO    ] Checking for camera pi updates...
[2026-06-27 17:13:48,386.386 INFO    ] 200
[2026-06-27 17:13:48,387.387 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:13:48,410.410 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:13:48,556.556 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:13:48,558.558 INFO    ] No camera update needed
[2026-06-27 17:13:48,559.559 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:13:48,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:13:48,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:13:48,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:13:50,605.605 INFO    ] ================================================
[2026-06-27 17:13:50,620.620 INFO    ] Launching Daemon at Sat Jun 27 17:13:50 IST 2026
[2026-06-27 17:13:50,631.631 INFO    ] ================================================
[2026-06-27 17:13:51,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:13:51
[2026-06-27 17:13:51,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:13:51,457.457 INFO    ] Initializing speech engine...
[2026-06-27 17:13:51,465.465 INFO    ] 2026-06-27 17:13:51
[2026-06-27 17:13:51,681.681 INFO    ] 2026-06-27 17:13:51
[2026-06-27 17:13:51,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:13:51,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:13:51,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:13:52,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:13:52,120.120 INFO    ] time= 27/06/2026 17:13:52
[2026-06-27 17:13:52,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:13:52,127.127 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:13:52,194.194 INFO    ] No existing commands found in stream
[2026-06-27 17:13:57,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:13:57,211.211 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-27 17:14:01,565.565 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 17:14:01,569.569 INFO    ] Checking for system updates...
[2026-06-27 17:14:01,614.614 INFO    ] 200
[2026-06-27 17:14:01,617.617 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:14:01,686.686 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:14:01,689.689 INFO    ] No update needed
[2026-06-27 17:14:01,694.694 INFO    ] Checking for camera pi updates...
[2026-06-27 17:14:01,723.723 INFO    ] 200
[2026-06-27 17:14:01,726.726 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:14:01,797.797 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:14:01,888.888 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:14:01,890.890 INFO    ] No camera update needed
[2026-06-27 17:14:01,893.893 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:14:01,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:14:01,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:14:01,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:14:03,946.946 INFO    ] ================================================
[2026-06-27 17:14:03,962.962 INFO    ] Launching Daemon at Sat Jun 27 17:14:03 IST 2026
[2026-06-27 17:14:03,972.972 INFO    ] ================================================
[2026-06-27 17:14:04,337.337 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:14:04
[2026-06-27 17:14:04,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:14:04,852.852 INFO    ] Initializing speech engine...
[2026-06-27 17:14:04,858.858 INFO    ] 2026-06-27 17:14:04
[2026-06-27 17:14:05,055.055 INFO    ] 2026-06-27 17:14:05
[2026-06-27 17:14:05,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:14:05,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:14:05,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:14:05,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:14:05,475.475 INFO    ] time= 27/06/2026 17:14:05
[2026-06-27 17:14:05,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:14:05,503.503 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:14:05,569.569 INFO    ] No existing commands found in stream
[2026-06-27 17:14:10,578.578 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:14:10,581.581 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-27 17:14:11,844.844 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 17:14:11,846.846 INFO    ] Checking for system updates...
[2026-06-27 17:14:11,868.868 INFO    ] 200
[2026-06-27 17:14:11,870.870 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:14:11,900.900 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:14:11,901.901 INFO    ] No update needed
[2026-06-27 17:14:11,902.902 INFO    ] Checking for camera pi updates...
[2026-06-27 17:14:11,922.922 INFO    ] 200
[2026-06-27 17:14:11,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:14:11,949.949 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:14:11,995.995 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:14:11,996.996 INFO    ] No camera update needed
[2026-06-27 17:14:11,997.997 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:14:11,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:14:12,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:14:12,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:14:14,043.043 INFO    ] ================================================
[2026-06-27 17:14:14,058.058 INFO    ] Launching Daemon at Sat Jun 27 17:14:14 IST 2026
[2026-06-27 17:14:14,069.069 INFO    ] ================================================
[2026-06-27 17:14:14,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:14:14
[2026-06-27 17:14:14,728.728 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:14:14,866.866 INFO    ] Initializing speech engine...
[2026-06-27 17:14:14,876.876 INFO    ] 2026-06-27 17:14:14
[2026-06-27 17:14:15,082.082 INFO    ] 2026-06-27 17:14:15
[2026-06-27 17:14:15,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:14:15,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:14:15,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:14:15,454.454 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:14:15,509.509 INFO    ] time= 27/06/2026 17:14:15
[2026-06-27 17:14:15,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:14:15,537.537 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:14:15,605.605 INFO    ] No existing commands found in stream
[2026-06-27 17:14:20,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:14:20,617.617 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-27 17:14:24,297.297 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 17:14:24,299.299 INFO    ] Checking for system updates...
[2026-06-27 17:14:24,322.322 INFO    ] 200
[2026-06-27 17:14:24,324.324 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:14:24,360.360 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:14:24,362.362 INFO    ] No update needed
[2026-06-27 17:14:24,363.363 INFO    ] Checking for camera pi updates...
[2026-06-27 17:14:24,388.388 INFO    ] 200
[2026-06-27 17:14:24,389.389 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:14:24,417.417 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:14:24,476.476 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:14:24,477.477 INFO    ] No camera update needed
[2026-06-27 17:14:24,479.479 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:14:24,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:14:24,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:14:24,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:14:26,527.527 INFO    ] ================================================
[2026-06-27 17:14:26,542.542 INFO    ] Launching Daemon at Sat Jun 27 17:14:26 IST 2026
[2026-06-27 17:14:26,554.554 INFO    ] ================================================
[2026-06-27 17:14:26,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:14:26
[2026-06-27 17:14:27,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:14:27,456.456 INFO    ] Initializing speech engine...
[2026-06-27 17:14:27,462.462 INFO    ] 2026-06-27 17:14:27
[2026-06-27 17:14:27,673.673 INFO    ] 2026-06-27 17:14:27
[2026-06-27 17:14:27,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:14:27,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:14:27,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:14:28,044.044 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:14:28,096.096 INFO    ] time= 27/06/2026 17:14:28
[2026-06-27 17:14:28,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:14:28,127.127 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:14:28,194.194 INFO    ] No existing commands found in stream
[2026-06-27 17:14:33,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:14:33,212.212 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-27 17:14:37,335.335 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 17:14:37,337.337 INFO    ] Checking for system updates...
[2026-06-27 17:14:37,360.360 INFO    ] 200
[2026-06-27 17:14:37,362.362 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:14:37,395.395 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:14:37,397.397 INFO    ] No update needed
[2026-06-27 17:14:37,398.398 INFO    ] Checking for camera pi updates...
[2026-06-27 17:14:37,418.418 INFO    ] 200
[2026-06-27 17:14:37,420.420 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:14:37,446.446 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:14:37,722.722 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:14:37,724.724 INFO    ] No camera update needed
[2026-06-27 17:14:37,725.725 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:14:37,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:14:37,730.730 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:14:37,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:14:39,774.774 INFO    ] ================================================
[2026-06-27 17:14:39,790.790 INFO    ] Launching Daemon at Sat Jun 27 17:14:39 IST 2026
[2026-06-27 17:14:39,801.801 INFO    ] ================================================
[2026-06-27 17:14:40,165.165 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:14:40
[2026-06-27 17:14:40,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:14:40,618.618 INFO    ] Initializing speech engine...
[2026-06-27 17:14:40,626.626 INFO    ] 2026-06-27 17:14:40
[2026-06-27 17:14:40,840.840 INFO    ] 2026-06-27 17:14:40
[2026-06-27 17:14:40,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:14:41,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:14:41,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:14:41,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:14:41,261.261 INFO    ] time= 27/06/2026 17:14:41
[2026-06-27 17:14:41,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:14:41,289.289 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:14:41,357.357 INFO    ] No existing commands found in stream
[2026-06-27 17:14:46,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:14:46,369.369 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-27 17:14:50,048.048 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 17:14:50,050.050 INFO    ] Checking for system updates...
[2026-06-27 17:14:50,072.072 INFO    ] 200
[2026-06-27 17:14:50,073.073 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:14:50,104.104 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:14:50,105.105 INFO    ] No update needed
[2026-06-27 17:14:50,107.107 INFO    ] Checking for camera pi updates...
[2026-06-27 17:14:50,129.129 INFO    ] 200
[2026-06-27 17:14:50,130.130 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:14:50,157.157 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:14:50,205.205 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:14:50,206.206 INFO    ] No camera update needed
[2026-06-27 17:14:50,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:14:50,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:14:50,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:14:50,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:14:52,255.255 INFO    ] ================================================
[2026-06-27 17:14:52,270.270 INFO    ] Launching Daemon at Sat Jun 27 17:14:52 IST 2026
[2026-06-27 17:14:52,282.282 INFO    ] ================================================
[2026-06-27 17:14:52,620.620 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:14:52
[2026-06-27 17:14:52,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:14:53,080.080 INFO    ] Initializing speech engine...
[2026-06-27 17:14:53,086.086 INFO    ] 2026-06-27 17:14:53
[2026-06-27 17:14:53,290.290 INFO    ] 2026-06-27 17:14:53
[2026-06-27 17:14:53,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:14:53,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:14:53,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:14:53,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:14:53,708.708 INFO    ] time= 27/06/2026 17:14:53
[2026-06-27 17:14:53,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:14:53,735.735 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:14:53,803.803 INFO    ] No existing commands found in stream
[2026-06-27 17:14:58,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:14:58,825.825 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-27 17:15:00,344.344 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 17:15:00,346.346 INFO    ] Checking for system updates...
[2026-06-27 17:15:00,367.367 INFO    ] 200
[2026-06-27 17:15:00,368.368 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:15:00,399.399 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:15:00,400.400 INFO    ] No update needed
[2026-06-27 17:15:00,402.402 INFO    ] Checking for camera pi updates...
[2026-06-27 17:15:00,421.421 INFO    ] 200
[2026-06-27 17:15:00,423.423 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:15:00,446.446 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:15:00,493.493 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:15:00,494.494 INFO    ] No camera update needed
[2026-06-27 17:15:00,495.495 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:15:00,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:15:00,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:15:00,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:15:02,541.541 INFO    ] ================================================
[2026-06-27 17:15:02,558.558 INFO    ] Launching Daemon at Sat Jun 27 17:15:02 IST 2026
[2026-06-27 17:15:02,569.569 INFO    ] ================================================
[2026-06-27 17:15:02,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:15:02
[2026-06-27 17:15:03,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:15:03,395.395 INFO    ] Initializing speech engine...
[2026-06-27 17:15:03,400.400 INFO    ] 2026-06-27 17:15:03
[2026-06-27 17:15:03,605.605 INFO    ] 2026-06-27 17:15:03
[2026-06-27 17:15:03,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:15:03,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:15:03,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:15:04,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:15:04,078.078 INFO    ] time= 27/06/2026 17:15:04
[2026-06-27 17:15:04,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:15:04,126.126 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:15:04,204.204 INFO    ] No existing commands found in stream
[2026-06-27 17:15:09,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:15:09,217.217 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-27 17:15:13,407.407 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 17:15:13,409.409 INFO    ] Checking for system updates...
[2026-06-27 17:15:13,432.432 INFO    ] 200
[2026-06-27 17:15:13,433.433 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:15:13,466.466 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:15:13,468.468 INFO    ] No update needed
[2026-06-27 17:15:13,469.469 INFO    ] Checking for camera pi updates...
[2026-06-27 17:15:13,489.489 INFO    ] 200
[2026-06-27 17:15:13,490.490 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:15:13,515.515 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:15:13,560.560 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:15:13,561.561 INFO    ] No camera update needed
[2026-06-27 17:15:13,563.563 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:15:13,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:15:13,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:15:13,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:15:15,610.610 INFO    ] ================================================
[2026-06-27 17:15:15,626.626 INFO    ] Launching Daemon at Sat Jun 27 17:15:15 IST 2026
[2026-06-27 17:15:15,637.637 INFO    ] ================================================
[2026-06-27 17:15:16,027.027 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:15:16
[2026-06-27 17:15:16,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:15:16,524.524 INFO    ] Initializing speech engine...
[2026-06-27 17:15:16,528.528 INFO    ] 2026-06-27 17:15:16
[2026-06-27 17:15:16,737.737 INFO    ] 2026-06-27 17:15:16
[2026-06-27 17:15:16,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:15:16,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:15:16,964.964 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:15:17,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:15:17,079.079 INFO    ] time= 27/06/2026 17:15:17
[2026-06-27 17:15:17,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:15:17,152.152 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:15:17,264.264 INFO    ] No existing commands found in stream
[2026-06-27 17:15:22,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:15:22,278.278 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-27 17:15:23,204.204 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 17:15:23,206.206 INFO    ] Checking for system updates...
[2026-06-27 17:15:23,229.229 INFO    ] 200
[2026-06-27 17:15:23,230.230 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:15:23,261.261 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:15:23,263.263 INFO    ] No update needed
[2026-06-27 17:15:23,264.264 INFO    ] Checking for camera pi updates...
[2026-06-27 17:15:23,285.285 INFO    ] 200
[2026-06-27 17:15:23,287.287 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:15:23,313.313 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:15:23,357.357 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:15:23,359.359 INFO    ] No camera update needed
[2026-06-27 17:15:23,360.360 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:15:23,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:15:23,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:15:23,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:15:25,407.407 INFO    ] ================================================
[2026-06-27 17:15:25,423.423 INFO    ] Launching Daemon at Sat Jun 27 17:15:25 IST 2026
[2026-06-27 17:15:25,435.435 INFO    ] ================================================
[2026-06-27 17:15:25,801.801 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:15:25
[2026-06-27 17:15:26,143.143 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:15:26,287.287 INFO    ] Initializing speech engine...
[2026-06-27 17:15:26,299.299 INFO    ] 2026-06-27 17:15:26
[2026-06-27 17:15:26,516.516 INFO    ] 2026-06-27 17:15:26
[2026-06-27 17:15:26,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:15:26,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:15:26,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:15:26,875.875 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:15:26,939.939 INFO    ] time= 27/06/2026 17:15:26
[2026-06-27 17:15:26,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:15:26,974.974 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:15:27,043.043 INFO    ] No existing commands found in stream
[2026-06-27 17:15:32,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:15:32,057.057 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-27 17:15:33,207.207 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 17:15:33,208.208 INFO    ] Checking for system updates...
[2026-06-27 17:15:33,229.229 INFO    ] 200
[2026-06-27 17:15:33,231.231 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:15:33,262.262 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:15:33,263.263 INFO    ] No update needed
[2026-06-27 17:15:33,265.265 INFO    ] Checking for camera pi updates...
[2026-06-27 17:15:33,286.286 INFO    ] 200
[2026-06-27 17:15:33,287.287 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:15:33,311.311 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:15:33,354.354 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:15:33,355.355 INFO    ] No camera update needed
[2026-06-27 17:15:33,356.356 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:15:33,358.358 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:15:33,360.360 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:15:33,363.363 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:15:35,403.403 INFO    ] ================================================
[2026-06-27 17:15:35,419.419 INFO    ] Launching Daemon at Sat Jun 27 17:15:35 IST 2026
[2026-06-27 17:15:35,430.430 INFO    ] ================================================
[2026-06-27 17:15:35,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:15:35
[2026-06-27 17:15:36,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:15:36,248.248 INFO    ] Initializing speech engine...
[2026-06-27 17:15:36,253.253 INFO    ] 2026-06-27 17:15:36
[2026-06-27 17:15:36,458.458 INFO    ] 2026-06-27 17:15:36
[2026-06-27 17:15:36,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:15:36,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:15:36,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:15:36,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:15:36,879.879 INFO    ] time= 27/06/2026 17:15:36
[2026-06-27 17:15:36,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:15:36,908.908 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:15:36,975.975 INFO    ] No existing commands found in stream
[2026-06-27 17:15:41,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:15:41,992.992 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-27 17:15:44,848.848 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 17:15:44,849.849 INFO    ] Checking for system updates...
[2026-06-27 17:15:44,872.872 INFO    ] 200
[2026-06-27 17:15:44,873.873 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:15:44,903.903 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:15:44,905.905 INFO    ] No update needed
[2026-06-27 17:15:44,907.907 INFO    ] Checking for camera pi updates...
[2026-06-27 17:15:44,927.927 INFO    ] 200
[2026-06-27 17:15:44,929.929 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:15:44,952.952 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:15:45,006.006 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:15:45,007.007 INFO    ] No camera update needed
[2026-06-27 17:15:45,008.008 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:15:45,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:15:45,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:15:45,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:15:47,054.054 INFO    ] ================================================
[2026-06-27 17:15:47,070.070 INFO    ] Launching Daemon at Sat Jun 27 17:15:47 IST 2026
[2026-06-27 17:15:47,082.082 INFO    ] ================================================
[2026-06-27 17:15:47,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:15:47
[2026-06-27 17:15:47,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:15:47,944.944 INFO    ] Initializing speech engine...
[2026-06-27 17:15:47,950.950 INFO    ] 2026-06-27 17:15:47
[2026-06-27 17:15:48,162.162 INFO    ] 2026-06-27 17:15:48
[2026-06-27 17:15:48,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:15:48,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:15:48,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:15:48,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:15:48,595.595 INFO    ] time= 27/06/2026 17:15:48
[2026-06-27 17:15:48,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:15:48,625.625 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:15:48,693.693 INFO    ] No existing commands found in stream
[2026-06-27 17:15:53,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:15:53,706.706 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-27 17:15:54,425.425 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 17:15:54,427.427 INFO    ] Checking for system updates...
[2026-06-27 17:15:54,448.448 INFO    ] 200
[2026-06-27 17:15:54,449.449 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:15:54,480.480 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:15:54,482.482 INFO    ] No update needed
[2026-06-27 17:15:54,483.483 INFO    ] Checking for camera pi updates...
[2026-06-27 17:15:54,504.504 INFO    ] 200
[2026-06-27 17:15:54,505.505 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:15:54,529.529 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:15:54,662.662 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:15:54,663.663 INFO    ] No camera update needed
[2026-06-27 17:15:54,665.665 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:15:54,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:15:54,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:15:54,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:15:56,715.715 INFO    ] ================================================
[2026-06-27 17:15:56,731.731 INFO    ] Launching Daemon at Sat Jun 27 17:15:56 IST 2026
[2026-06-27 17:15:56,742.742 INFO    ] ================================================
[2026-06-27 17:15:57,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:15:57
[2026-06-27 17:15:57,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:15:57,542.542 INFO    ] Initializing speech engine...
[2026-06-27 17:15:57,547.547 INFO    ] 2026-06-27 17:15:57
[2026-06-27 17:15:57,752.752 INFO    ] 2026-06-27 17:15:57
[2026-06-27 17:15:57,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:15:57,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:15:57,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:15:58,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:15:58,161.161 INFO    ] time= 27/06/2026 17:15:58
[2026-06-27 17:15:58,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:15:58,199.199 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:15:58,267.267 INFO    ] No existing commands found in stream
[2026-06-27 17:16:03,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:16:03,279.279 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-27 17:16:06,878.878 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 17:16:06,879.879 INFO    ] Checking for system updates...
[2026-06-27 17:16:06,900.900 INFO    ] 200
[2026-06-27 17:16:06,901.901 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:16:06,935.935 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:16:06,937.937 INFO    ] No update needed
[2026-06-27 17:16:06,938.938 INFO    ] Checking for camera pi updates...
[2026-06-27 17:16:06,959.959 INFO    ] 200
[2026-06-27 17:16:06,960.960 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:16:06,985.985 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:16:07,027.027 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:16:07,029.029 INFO    ] No camera update needed
[2026-06-27 17:16:07,030.030 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:16:07,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:16:07,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:16:07,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:16:09,078.078 INFO    ] ================================================
[2026-06-27 17:16:09,094.094 INFO    ] Launching Daemon at Sat Jun 27 17:16:09 IST 2026
[2026-06-27 17:16:09,105.105 INFO    ] ================================================
[2026-06-27 17:16:09,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:16:09
[2026-06-27 17:16:09,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:16:09,899.899 INFO    ] Initializing speech engine...
[2026-06-27 17:16:09,905.905 INFO    ] 2026-06-27 17:16:09
[2026-06-27 17:16:10,109.109 INFO    ] 2026-06-27 17:16:10
[2026-06-27 17:16:10,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:16:10,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:16:10,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:16:10,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:16:10,547.547 INFO    ] time= 27/06/2026 17:16:10
[2026-06-27 17:16:10,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:16:10,554.554 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:16:10,621.621 INFO    ] No existing commands found in stream
[2026-06-27 17:16:15,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:16:15,632.632 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-27 17:16:18,077.077 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 17:16:18,079.079 INFO    ] Checking for system updates...
[2026-06-27 17:16:18,100.100 INFO    ] 200
[2026-06-27 17:16:18,101.101 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:16:18,131.131 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:16:18,133.133 INFO    ] No update needed
[2026-06-27 17:16:18,134.134 INFO    ] Checking for camera pi updates...
[2026-06-27 17:16:18,154.154 INFO    ] 200
[2026-06-27 17:16:18,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:16:18,178.178 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:16:18,222.222 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:16:18,223.223 INFO    ] No camera update needed
[2026-06-27 17:16:18,224.224 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:16:18,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:16:18,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:16:18,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:16:20,263.263 INFO    ] ================================================
[2026-06-27 17:16:20,279.279 INFO    ] Launching Daemon at Sat Jun 27 17:16:20 IST 2026
[2026-06-27 17:16:20,291.291 INFO    ] ================================================
[2026-06-27 17:16:20,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:16:20
[2026-06-27 17:16:20,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:16:21,089.089 INFO    ] Initializing speech engine...
[2026-06-27 17:16:21,097.097 INFO    ] 2026-06-27 17:16:21
[2026-06-27 17:16:21,311.311 INFO    ] 2026-06-27 17:16:21
[2026-06-27 17:16:21,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:16:21,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:16:21,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:16:21,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:16:21,732.732 INFO    ] time= 27/06/2026 17:16:21
[2026-06-27 17:16:21,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:16:21,761.761 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:16:21,827.827 INFO    ] No existing commands found in stream
[2026-06-27 17:16:26,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:16:26,840.840 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-27 17:16:28,922.922 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 17:16:28,924.924 INFO    ] Checking for system updates...
[2026-06-27 17:16:28,947.947 INFO    ] 200
[2026-06-27 17:16:28,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:16:28,981.981 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:16:28,983.983 INFO    ] No update needed
[2026-06-27 17:16:28,984.984 INFO    ] Checking for camera pi updates...
[2026-06-27 17:16:29,004.004 INFO    ] 200
[2026-06-27 17:16:29,005.005 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:16:29,030.030 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:16:29,073.073 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:16:29,075.075 INFO    ] No camera update needed
[2026-06-27 17:16:29,076.076 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:16:29,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:16:29,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:16:29,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:16:31,121.121 INFO    ] ================================================
[2026-06-27 17:16:31,137.137 INFO    ] Launching Daemon at Sat Jun 27 17:16:31 IST 2026
[2026-06-27 17:16:31,149.149 INFO    ] ================================================
[2026-06-27 17:16:31,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:16:31
[2026-06-27 17:16:31,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:16:32,023.023 INFO    ] Initializing speech engine...
[2026-06-27 17:16:32,033.033 INFO    ] 2026-06-27 17:16:32
[2026-06-27 17:16:32,244.244 INFO    ] 2026-06-27 17:16:32
[2026-06-27 17:16:32,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:16:32,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:16:32,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:16:32,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:16:32,671.671 INFO    ] time= 27/06/2026 17:16:32
[2026-06-27 17:16:32,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:16:32,699.699 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:16:32,767.767 INFO    ] No existing commands found in stream
[2026-06-27 17:16:37,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:16:37,779.779 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-27 17:16:39,958.958 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 17:16:39,960.960 INFO    ] Checking for system updates...
[2026-06-27 17:16:39,982.982 INFO    ] 200
[2026-06-27 17:16:39,983.983 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:16:40,017.017 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:16:40,019.019 INFO    ] No update needed
[2026-06-27 17:16:40,020.020 INFO    ] Checking for camera pi updates...
[2026-06-27 17:16:40,040.040 INFO    ] 200
[2026-06-27 17:16:40,041.041 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:16:40,064.064 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:16:40,109.109 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:16:40,110.110 INFO    ] No camera update needed
[2026-06-27 17:16:40,111.111 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:16:40,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:16:40,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:16:40,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:16:42,157.157 INFO    ] ================================================
[2026-06-27 17:16:42,172.172 INFO    ] Launching Daemon at Sat Jun 27 17:16:42 IST 2026
[2026-06-27 17:16:42,182.182 INFO    ] ================================================
[2026-06-27 17:16:42,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:16:42
[2026-06-27 17:16:42,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:16:43,050.050 INFO    ] Initializing speech engine...
[2026-06-27 17:16:43,055.055 INFO    ] 2026-06-27 17:16:43
[2026-06-27 17:16:43,268.268 INFO    ] 2026-06-27 17:16:43
[2026-06-27 17:16:43,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:16:43,482.482 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:16:43,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:16:43,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:16:43,713.713 INFO    ] time= 27/06/2026 17:16:43
[2026-06-27 17:16:43,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:16:43,720.720 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:16:43,789.789 INFO    ] No existing commands found in stream
[2026-06-27 17:16:48,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:16:48,807.807 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-27 17:16:50,746.746 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 17:16:50,747.747 INFO    ] Checking for system updates...
[2026-06-27 17:16:50,770.770 INFO    ] 200
[2026-06-27 17:16:50,771.771 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:16:50,805.805 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:16:50,807.807 INFO    ] No update needed
[2026-06-27 17:16:50,808.808 INFO    ] Checking for camera pi updates...
[2026-06-27 17:16:50,829.829 INFO    ] 200
[2026-06-27 17:16:50,831.831 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:16:50,861.861 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:16:50,904.904 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:16:50,905.905 INFO    ] No camera update needed
[2026-06-27 17:16:50,907.907 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:16:50,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:16:50,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:16:50,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:16:52,954.954 INFO    ] ================================================
[2026-06-27 17:16:52,969.969 INFO    ] Launching Daemon at Sat Jun 27 17:16:52 IST 2026
[2026-06-27 17:16:52,980.980 INFO    ] ================================================
[2026-06-27 17:16:53,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:16:53
[2026-06-27 17:16:53,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:16:53,771.771 INFO    ] Initializing speech engine...
[2026-06-27 17:16:53,782.782 INFO    ] 2026-06-27 17:16:53
[2026-06-27 17:16:53,986.986 INFO    ] 2026-06-27 17:16:53
[2026-06-27 17:16:54,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:16:54,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:16:54,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:16:54,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:16:54,409.409 INFO    ] time= 27/06/2026 17:16:54
[2026-06-27 17:16:54,431.431 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:16:54,437.437 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:16:54,504.504 INFO    ] No existing commands found in stream
[2026-06-27 17:16:59,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:16:59,516.516 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-27 17:17:00,002.002 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 17:17:00,004.004 INFO    ] Checking for system updates...
[2026-06-27 17:17:00,027.027 INFO    ] 200
[2026-06-27 17:17:00,028.028 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:17:00,059.059 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:17:00,061.061 INFO    ] No update needed
[2026-06-27 17:17:00,062.062 INFO    ] Checking for camera pi updates...
[2026-06-27 17:17:00,085.085 INFO    ] 200
[2026-06-27 17:17:00,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:17:00,112.112 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:17:00,155.155 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:17:00,157.157 INFO    ] No camera update needed
[2026-06-27 17:17:00,158.158 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:17:00,160.160 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:17:00,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:17:00,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:17:02,195.195 INFO    ] ================================================
[2026-06-27 17:17:02,209.209 INFO    ] Launching Daemon at Sat Jun 27 17:17:02 IST 2026
[2026-06-27 17:17:02,220.220 INFO    ] ================================================
[2026-06-27 17:17:02,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:17:02
[2026-06-27 17:17:02,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:17:03,032.032 INFO    ] Initializing speech engine...
[2026-06-27 17:17:03,037.037 INFO    ] 2026-06-27 17:17:03
[2026-06-27 17:17:03,241.241 INFO    ] 2026-06-27 17:17:03
[2026-06-27 17:17:03,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:17:03,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:17:03,484.484 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:17:03,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:17:03,684.684 INFO    ] time= 27/06/2026 17:17:03
[2026-06-27 17:17:03,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:17:03,691.691 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:17:03,757.757 INFO    ] No existing commands found in stream
[2026-06-27 17:17:08,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:17:08,770.770 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-27 17:17:12,128.128 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 17:17:12,130.130 INFO    ] Checking for system updates...
[2026-06-27 17:17:12,151.151 INFO    ] 200
[2026-06-27 17:17:12,153.153 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:17:12,184.184 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:17:12,185.185 INFO    ] No update needed
[2026-06-27 17:17:12,187.187 INFO    ] Checking for camera pi updates...
[2026-06-27 17:17:12,209.209 INFO    ] 200
[2026-06-27 17:17:12,210.210 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:17:12,236.236 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:17:12,275.275 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:17:12,277.277 INFO    ] No camera update needed
[2026-06-27 17:17:12,278.278 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:17:12,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:17:12,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:17:12,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:17:14,333.333 INFO    ] ================================================
[2026-06-27 17:17:14,350.350 INFO    ] Launching Daemon at Sat Jun 27 17:17:14 IST 2026
[2026-06-27 17:17:14,360.360 INFO    ] ================================================
[2026-06-27 17:17:14,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:17:14
[2026-06-27 17:17:15,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:17:15,187.187 INFO    ] Initializing speech engine...
[2026-06-27 17:17:15,192.192 INFO    ] 2026-06-27 17:17:15
[2026-06-27 17:17:15,412.412 INFO    ] 2026-06-27 17:17:15
[2026-06-27 17:17:15,442.442 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:17:15,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:17:15,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:17:15,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:17:15,841.841 INFO    ] time= 27/06/2026 17:17:15
[2026-06-27 17:17:15,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:17:15,870.870 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:17:15,935.935 INFO    ] No existing commands found in stream
[2026-06-27 17:17:20,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:17:20,949.949 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-27 17:17:22,286.286 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 17:17:22,287.287 INFO    ] Checking for system updates...
[2026-06-27 17:17:22,308.308 INFO    ] 200
[2026-06-27 17:17:22,310.310 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:17:22,341.341 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:17:22,342.342 INFO    ] No update needed
[2026-06-27 17:17:22,344.344 INFO    ] Checking for camera pi updates...
[2026-06-27 17:17:22,363.363 INFO    ] 200
[2026-06-27 17:17:22,364.364 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:17:22,390.390 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:17:22,432.432 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:17:22,433.433 INFO    ] No camera update needed
[2026-06-27 17:17:22,434.434 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:17:22,436.436 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:17:22,439.439 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:17:22,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:17:24,479.479 INFO    ] ================================================
[2026-06-27 17:17:24,496.496 INFO    ] Launching Daemon at Sat Jun 27 17:17:24 IST 2026
[2026-06-27 17:17:24,507.507 INFO    ] ================================================
[2026-06-27 17:17:24,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:17:24
[2026-06-27 17:17:25,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:17:25,385.385 INFO    ] Initializing speech engine...
[2026-06-27 17:17:25,395.395 INFO    ] 2026-06-27 17:17:25
[2026-06-27 17:17:25,606.606 INFO    ] 2026-06-27 17:17:25
[2026-06-27 17:17:25,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:17:25,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:17:25,835.835 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:17:26,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:17:26,057.057 INFO    ] time= 27/06/2026 17:17:26
[2026-06-27 17:17:26,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:17:26,064.064 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:17:26,133.133 INFO    ] No existing commands found in stream
[2026-06-27 17:17:31,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:17:31,147.147 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-27 17:17:33,525.525 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 17:17:33,526.526 INFO    ] Checking for system updates...
[2026-06-27 17:17:33,549.549 INFO    ] 200
[2026-06-27 17:17:33,551.551 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:17:33,581.581 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:17:33,583.583 INFO    ] No update needed
[2026-06-27 17:17:33,584.584 INFO    ] Checking for camera pi updates...
[2026-06-27 17:17:33,604.604 INFO    ] 200
[2026-06-27 17:17:33,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:17:33,630.630 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:17:33,676.676 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:17:33,677.677 INFO    ] No camera update needed
[2026-06-27 17:17:33,679.679 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:17:33,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:17:33,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:17:33,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:17:35,727.727 INFO    ] ================================================
[2026-06-27 17:17:35,743.743 INFO    ] Launching Daemon at Sat Jun 27 17:17:35 IST 2026
[2026-06-27 17:17:35,753.753 INFO    ] ================================================
[2026-06-27 17:17:36,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:17:36
[2026-06-27 17:17:36,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:17:36,543.543 INFO    ] Initializing speech engine...
[2026-06-27 17:17:36,560.560 INFO    ] 2026-06-27 17:17:36
[2026-06-27 17:17:36,773.773 INFO    ] 2026-06-27 17:17:36
[2026-06-27 17:17:36,803.803 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:17:36,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:17:36,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:17:37,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:17:37,201.201 INFO    ] time= 27/06/2026 17:17:37
[2026-06-27 17:17:37,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:17:37,233.233 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:17:37,301.301 INFO    ] No existing commands found in stream
[2026-06-27 17:17:42,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:17:42,314.314 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-27 17:17:44,379.379 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 17:17:44,381.381 INFO    ] Checking for system updates...
[2026-06-27 17:17:44,403.403 INFO    ] 200
[2026-06-27 17:17:44,405.405 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:17:44,435.435 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:17:44,436.436 INFO    ] No update needed
[2026-06-27 17:17:44,438.438 INFO    ] Checking for camera pi updates...
[2026-06-27 17:17:44,459.459 INFO    ] 200
[2026-06-27 17:17:44,461.461 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:17:44,484.484 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:17:44,530.530 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:17:44,531.531 INFO    ] No camera update needed
[2026-06-27 17:17:44,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:17:44,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:17:44,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:17:44,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:17:46,577.577 INFO    ] ================================================
[2026-06-27 17:17:46,592.592 INFO    ] Launching Daemon at Sat Jun 27 17:17:46 IST 2026
[2026-06-27 17:17:46,603.603 INFO    ] ================================================
[2026-06-27 17:17:46,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:17:46
[2026-06-27 17:17:47,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:17:47,456.456 INFO    ] Initializing speech engine...
[2026-06-27 17:17:47,463.463 INFO    ] 2026-06-27 17:17:47
[2026-06-27 17:17:47,667.667 INFO    ] 2026-06-27 17:17:47
[2026-06-27 17:17:47,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:17:47,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:17:47,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:17:48,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:17:48,088.088 INFO    ] time= 27/06/2026 17:17:48
[2026-06-27 17:17:48,113.113 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:17:48,118.118 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:17:48,188.188 INFO    ] No existing commands found in stream
[2026-06-27 17:17:53,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:17:53,216.216 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-27 17:17:54,029.029 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 17:17:54,030.030 INFO    ] Checking for system updates...
[2026-06-27 17:17:54,051.051 INFO    ] 200
[2026-06-27 17:17:54,052.052 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:17:54,082.082 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:17:54,084.084 INFO    ] No update needed
[2026-06-27 17:17:54,085.085 INFO    ] Checking for camera pi updates...
[2026-06-27 17:17:54,106.106 INFO    ] 200
[2026-06-27 17:17:54,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:17:54,131.131 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:17:54,214.214 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:17:54,216.216 INFO    ] No camera update needed
[2026-06-27 17:17:54,217.217 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:17:54,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:17:54,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:17:54,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:17:56,263.263 INFO    ] ================================================
[2026-06-27 17:17:56,278.278 INFO    ] Launching Daemon at Sat Jun 27 17:17:56 IST 2026
[2026-06-27 17:17:56,289.289 INFO    ] ================================================
[2026-06-27 17:17:56,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:17:56
[2026-06-27 17:17:56,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:17:57,117.117 INFO    ] Initializing speech engine...
[2026-06-27 17:17:57,122.122 INFO    ] 2026-06-27 17:17:57
[2026-06-27 17:17:57,326.326 INFO    ] 2026-06-27 17:17:57
[2026-06-27 17:17:57,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:17:57,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:17:57,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:17:57,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:17:57,766.766 INFO    ] time= 27/06/2026 17:17:57
[2026-06-27 17:17:57,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:17:57,773.773 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:17:57,841.841 INFO    ] No existing commands found in stream
[2026-06-27 17:18:02,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:18:02,856.856 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-27 17:18:05,870.870 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 17:18:05,872.872 INFO    ] Checking for system updates...
[2026-06-27 17:18:05,893.893 INFO    ] 200
[2026-06-27 17:18:05,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:18:05,935.935 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:18:05,937.937 INFO    ] No update needed
[2026-06-27 17:18:05,939.939 INFO    ] Checking for camera pi updates...
[2026-06-27 17:18:05,968.968 INFO    ] 200
[2026-06-27 17:18:05,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:18:05,996.996 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:18:06,047.047 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:18:06,048.048 INFO    ] No camera update needed
[2026-06-27 17:18:06,049.049 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:18:06,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:18:06,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:18:06,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:18:08,097.097 INFO    ] ================================================
[2026-06-27 17:18:08,112.112 INFO    ] Launching Daemon at Sat Jun 27 17:18:08 IST 2026
[2026-06-27 17:18:08,122.122 INFO    ] ================================================
[2026-06-27 17:18:08,516.516 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:18:08
[2026-06-27 17:18:08,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:18:08,977.977 INFO    ] Initializing speech engine...
[2026-06-27 17:18:08,981.981 INFO    ] 2026-06-27 17:18:08
[2026-06-27 17:18:09,215.215 INFO    ] 2026-06-27 17:18:09
[2026-06-27 17:18:09,245.245 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:18:09,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:18:09,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:18:09,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:18:09,628.628 INFO    ] time= 27/06/2026 17:18:09
[2026-06-27 17:18:09,660.660 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:18:09,666.666 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:18:09,733.733 INFO    ] No existing commands found in stream
[2026-06-27 17:18:14,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:18:14,749.749 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-27 17:18:15,351.351 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 17:18:15,352.352 INFO    ] Checking for system updates...
[2026-06-27 17:18:15,374.374 INFO    ] 200
[2026-06-27 17:18:15,376.376 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:18:15,407.407 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:18:15,408.408 INFO    ] No update needed
[2026-06-27 17:18:15,409.409 INFO    ] Checking for camera pi updates...
[2026-06-27 17:18:15,431.431 INFO    ] 200
[2026-06-27 17:18:15,432.432 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:18:15,456.456 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:18:15,504.504 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:18:15,505.505 INFO    ] No camera update needed
[2026-06-27 17:18:15,507.507 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:18:15,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:18:15,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:18:15,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:18:17,551.551 INFO    ] ================================================
[2026-06-27 17:18:17,567.567 INFO    ] Launching Daemon at Sat Jun 27 17:18:17 IST 2026
[2026-06-27 17:18:17,577.577 INFO    ] ================================================
[2026-06-27 17:18:17,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:18:17
[2026-06-27 17:18:18,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:18:18,364.364 INFO    ] Initializing speech engine...
[2026-06-27 17:18:18,369.369 INFO    ] 2026-06-27 17:18:18
[2026-06-27 17:18:18,562.562 INFO    ] 2026-06-27 17:18:18
[2026-06-27 17:18:18,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:18:18,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:18:18,810.810 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:18:18,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:18:19,032.032 INFO    ] time= 27/06/2026 17:18:18
[2026-06-27 17:18:19,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:18:19,095.095 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:18:19,172.172 INFO    ] No existing commands found in stream
[2026-06-27 17:18:24,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:18:24,186.186 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-27 17:18:28,595.595 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 17:18:28,596.596 INFO    ] Checking for system updates...
[2026-06-27 17:18:28,618.618 INFO    ] 200
[2026-06-27 17:18:28,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:18:28,652.652 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:18:28,653.653 INFO    ] No update needed
[2026-06-27 17:18:28,655.655 INFO    ] Checking for camera pi updates...
[2026-06-27 17:18:28,675.675 INFO    ] 200
[2026-06-27 17:18:28,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:18:28,700.700 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:18:28,741.741 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:18:28,743.743 INFO    ] No camera update needed
[2026-06-27 17:18:28,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:18:28,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:18:28,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:18:28,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:18:30,791.791 INFO    ] ================================================
[2026-06-27 17:18:30,807.807 INFO    ] Launching Daemon at Sat Jun 27 17:18:30 IST 2026
[2026-06-27 17:18:30,818.818 INFO    ] ================================================
[2026-06-27 17:18:31,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:18:31
[2026-06-27 17:18:31,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:18:31,633.633 INFO    ] Initializing speech engine...
[2026-06-27 17:18:31,639.639 INFO    ] 2026-06-27 17:18:31
[2026-06-27 17:18:31,857.857 INFO    ] 2026-06-27 17:18:31
[2026-06-27 17:18:31,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:18:32,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:18:32,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:18:32,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:18:32,312.312 INFO    ] time= 27/06/2026 17:18:32
[2026-06-27 17:18:32,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:18:32,342.342 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:18:32,410.410 INFO    ] No existing commands found in stream
[2026-06-27 17:18:37,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:18:37,438.438 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-27 17:18:38,249.249 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 17:18:38,251.251 INFO    ] Checking for system updates...
[2026-06-27 17:18:38,271.271 INFO    ] 200
[2026-06-27 17:18:38,273.273 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:18:38,303.303 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:18:38,305.305 INFO    ] No update needed
[2026-06-27 17:18:38,306.306 INFO    ] Checking for camera pi updates...
[2026-06-27 17:18:38,325.325 INFO    ] 200
[2026-06-27 17:18:38,327.327 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:18:38,352.352 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:18:38,395.395 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:18:38,396.396 INFO    ] No camera update needed
[2026-06-27 17:18:38,398.398 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:18:38,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:18:38,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:18:38,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:18:40,442.442 INFO    ] ================================================
[2026-06-27 17:18:40,457.457 INFO    ] Launching Daemon at Sat Jun 27 17:18:40 IST 2026
[2026-06-27 17:18:40,468.468 INFO    ] ================================================
[2026-06-27 17:18:40,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:18:40
[2026-06-27 17:18:41,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:18:41,286.286 INFO    ] Initializing speech engine...
[2026-06-27 17:18:41,291.291 INFO    ] 2026-06-27 17:18:41
[2026-06-27 17:18:41,495.495 INFO    ] 2026-06-27 17:18:41
[2026-06-27 17:18:41,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:18:41,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:18:41,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:18:41,845.845 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:18:41,912.912 INFO    ] time= 27/06/2026 17:18:41
[2026-06-27 17:18:41,936.936 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:18:41,942.942 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:18:42,009.009 INFO    ] No existing commands found in stream
[2026-06-27 17:18:47,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:18:47,026.026 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-27 17:18:51,375.375 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 17:18:51,377.377 INFO    ] Checking for system updates...
[2026-06-27 17:18:51,398.398 INFO    ] 200
[2026-06-27 17:18:51,399.399 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:18:51,429.429 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:18:51,431.431 INFO    ] No update needed
[2026-06-27 17:18:51,432.432 INFO    ] Checking for camera pi updates...
[2026-06-27 17:18:51,452.452 INFO    ] 200
[2026-06-27 17:18:51,454.454 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:18:51,479.479 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:18:51,523.523 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:18:51,525.525 INFO    ] No camera update needed
[2026-06-27 17:18:51,526.526 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:18:51,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:18:51,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:18:51,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:18:53,572.572 INFO    ] ================================================
[2026-06-27 17:18:53,589.589 INFO    ] Launching Daemon at Sat Jun 27 17:18:53 IST 2026
[2026-06-27 17:18:53,600.600 INFO    ] ================================================
[2026-06-27 17:18:53,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:18:53
[2026-06-27 17:18:54,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:18:54,476.476 INFO    ] Initializing speech engine...
[2026-06-27 17:18:54,481.481 INFO    ] 2026-06-27 17:18:54
[2026-06-27 17:18:54,688.688 INFO    ] 2026-06-27 17:18:54
[2026-06-27 17:18:54,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:18:54,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:18:54,911.911 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:18:55,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:18:55,106.106 INFO    ] time= 27/06/2026 17:18:55
[2026-06-27 17:18:55,130.130 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:18:55,135.135 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:18:55,202.202 INFO    ] No existing commands found in stream
[2026-06-27 17:19:00,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:19:00,220.220 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-27 17:19:01,159.159 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 17:19:01,160.160 INFO    ] Checking for system updates...
[2026-06-27 17:19:01,181.181 INFO    ] 200
[2026-06-27 17:19:01,183.183 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:19:01,216.216 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:19:01,218.218 INFO    ] No update needed
[2026-06-27 17:19:01,219.219 INFO    ] Checking for camera pi updates...
[2026-06-27 17:19:01,239.239 INFO    ] 200
[2026-06-27 17:19:01,241.241 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:19:01,264.264 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:19:01,319.319 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:19:01,321.321 INFO    ] No camera update needed
[2026-06-27 17:19:01,322.322 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:19:01,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:19:01,327.327 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:19:01,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:19:03,355.355 INFO    ] ================================================
[2026-06-27 17:19:03,363.363 INFO    ] Launching Daemon at Sat Jun 27 17:19:03 IST 2026
[2026-06-27 17:19:03,369.369 INFO    ] ================================================
[2026-06-27 17:19:03,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:19:03
[2026-06-27 17:19:04,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:19:04,201.201 INFO    ] Initializing speech engine...
[2026-06-27 17:19:04,206.206 INFO    ] 2026-06-27 17:19:04
[2026-06-27 17:19:04,412.412 INFO    ] 2026-06-27 17:19:04
[2026-06-27 17:19:04,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:19:04,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:19:04,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:19:04,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:19:04,853.853 INFO    ] time= 27/06/2026 17:19:04
[2026-06-27 17:19:04,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:19:04,860.860 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:19:04,929.929 INFO    ] No existing commands found in stream
[2026-06-27 17:19:09,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:19:09,945.945 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-27 17:19:10,870.870 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 17:19:10,872.872 INFO    ] Checking for system updates...
[2026-06-27 17:19:10,894.894 INFO    ] 200
[2026-06-27 17:19:10,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:19:10,927.927 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:19:10,928.928 INFO    ] No update needed
[2026-06-27 17:19:10,929.929 INFO    ] Checking for camera pi updates...
[2026-06-27 17:19:10,949.949 INFO    ] 200
[2026-06-27 17:19:10,951.951 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:19:10,975.975 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:19:11,016.016 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:19:11,017.017 INFO    ] No camera update needed
[2026-06-27 17:19:11,019.019 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:19:11,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:19:11,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:19:11,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:19:13,066.066 INFO    ] ================================================
[2026-06-27 17:19:13,081.081 INFO    ] Launching Daemon at Sat Jun 27 17:19:13 IST 2026
[2026-06-27 17:19:13,091.091 INFO    ] ================================================
[2026-06-27 17:19:13,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:19:13
[2026-06-27 17:19:13,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:19:13,940.940 INFO    ] Initializing speech engine...
[2026-06-27 17:19:13,946.946 INFO    ] 2026-06-27 17:19:13
[2026-06-27 17:19:14,156.156 INFO    ] 2026-06-27 17:19:14
[2026-06-27 17:19:14,184.184 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:19:14,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:19:14,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:19:14,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:19:14,599.599 INFO    ] time= 27/06/2026 17:19:14
[2026-06-27 17:19:14,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:19:14,610.610 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:19:14,701.701 INFO    ] No existing commands found in stream
[2026-06-27 17:19:19,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:19:19,719.719 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-27 17:19:24,085.085 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 17:19:24,087.087 INFO    ] Checking for system updates...
[2026-06-27 17:19:24,109.109 INFO    ] 200
[2026-06-27 17:19:24,110.110 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:19:24,141.141 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:19:24,142.142 INFO    ] No update needed
[2026-06-27 17:19:24,144.144 INFO    ] Checking for camera pi updates...
[2026-06-27 17:19:24,166.166 INFO    ] 200
[2026-06-27 17:19:24,167.167 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:19:24,190.190 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:19:24,245.245 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:19:24,246.246 INFO    ] No camera update needed
[2026-06-27 17:19:24,247.247 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:19:24,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:19:24,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:19:24,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:19:26,294.294 INFO    ] ================================================
[2026-06-27 17:19:26,309.309 INFO    ] Launching Daemon at Sat Jun 27 17:19:26 IST 2026
[2026-06-27 17:19:26,320.320 INFO    ] ================================================
[2026-06-27 17:19:26,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:19:26
[2026-06-27 17:19:26,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:19:27,128.128 INFO    ] Initializing speech engine...
[2026-06-27 17:19:27,134.134 INFO    ] 2026-06-27 17:19:27
[2026-06-27 17:19:27,336.336 INFO    ] 2026-06-27 17:19:27
[2026-06-27 17:19:27,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:19:27,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:19:27,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:19:27,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:19:27,777.777 INFO    ] time= 27/06/2026 17:19:27
[2026-06-27 17:19:27,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:19:27,784.784 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:19:27,849.849 INFO    ] No existing commands found in stream
[2026-06-27 17:19:32,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:19:32,860.860 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-27 17:19:36,358.358 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 17:19:36,359.359 INFO    ] Checking for system updates...
[2026-06-27 17:19:36,380.380 INFO    ] 200
[2026-06-27 17:19:36,381.381 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:19:36,412.412 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:19:36,414.414 INFO    ] No update needed
[2026-06-27 17:19:36,415.415 INFO    ] Checking for camera pi updates...
[2026-06-27 17:19:36,435.435 INFO    ] 200
[2026-06-27 17:19:36,436.436 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:19:36,462.462 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:19:36,508.508 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:19:36,509.509 INFO    ] No camera update needed
[2026-06-27 17:19:36,510.510 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:19:36,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:19:36,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:19:36,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:19:38,555.555 INFO    ] ================================================
[2026-06-27 17:19:38,571.571 INFO    ] Launching Daemon at Sat Jun 27 17:19:38 IST 2026
[2026-06-27 17:19:38,582.582 INFO    ] ================================================
[2026-06-27 17:19:38,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:19:38
[2026-06-27 17:19:39,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:19:39,455.455 INFO    ] Initializing speech engine...
[2026-06-27 17:19:39,460.460 INFO    ] 2026-06-27 17:19:39
[2026-06-27 17:19:39,670.670 INFO    ] 2026-06-27 17:19:39
[2026-06-27 17:19:39,699.699 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:19:39,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:19:39,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:19:40,086.086 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:19:40,115.115 INFO    ] time= 27/06/2026 17:19:40
[2026-06-27 17:19:40,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:19:40,122.122 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:19:40,190.190 INFO    ] No existing commands found in stream
[2026-06-27 17:19:45,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:19:45,217.217 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-27 17:19:47,002.002 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 17:19:47,004.004 INFO    ] Checking for system updates...
[2026-06-27 17:19:47,025.025 INFO    ] 200
[2026-06-27 17:19:47,026.026 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:19:47,056.056 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:19:47,058.058 INFO    ] No update needed
[2026-06-27 17:19:47,059.059 INFO    ] Checking for camera pi updates...
[2026-06-27 17:19:47,078.078 INFO    ] 200
[2026-06-27 17:19:47,079.079 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:19:47,103.103 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:19:47,147.147 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:19:47,148.148 INFO    ] No camera update needed
[2026-06-27 17:19:47,150.150 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:19:47,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:19:47,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:19:47,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:19:49,195.195 INFO    ] ================================================
[2026-06-27 17:19:49,208.208 INFO    ] Launching Daemon at Sat Jun 27 17:19:49 IST 2026
[2026-06-27 17:19:49,215.215 INFO    ] ================================================
[2026-06-27 17:19:49,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:19:49
[2026-06-27 17:19:49,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:19:49,973.973 INFO    ] Initializing speech engine...
[2026-06-27 17:19:49,979.979 INFO    ] 2026-06-27 17:19:49
[2026-06-27 17:19:50,183.183 INFO    ] 2026-06-27 17:19:50
[2026-06-27 17:19:50,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:19:50,395.395 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:19:50,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:19:50,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:19:50,604.604 INFO    ] time= 27/06/2026 17:19:50
[2026-06-27 17:19:50,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:19:50,632.632 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:19:50,697.697 INFO    ] No existing commands found in stream
[2026-06-27 17:19:55,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:19:55,710.710 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-27 17:19:58,761.761 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 17:19:58,762.762 INFO    ] Checking for system updates...
[2026-06-27 17:19:58,784.784 INFO    ] 200
[2026-06-27 17:19:58,785.785 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:19:58,816.816 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:19:58,818.818 INFO    ] No update needed
[2026-06-27 17:19:58,820.820 INFO    ] Checking for camera pi updates...
[2026-06-27 17:19:58,840.840 INFO    ] 200
[2026-06-27 17:19:58,841.841 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:19:58,865.865 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:19:58,907.907 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:19:58,908.908 INFO    ] No camera update needed
[2026-06-27 17:19:58,910.910 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:19:58,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:19:58,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:19:58,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:20:00,957.957 INFO    ] ================================================
[2026-06-27 17:20:00,973.973 INFO    ] Launching Daemon at Sat Jun 27 17:20:00 IST 2026
[2026-06-27 17:20:00,984.984 INFO    ] ================================================
[2026-06-27 17:20:01,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:20:01
[2026-06-27 17:20:01,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:20:02,191.191 INFO    ] Initializing speech engine...
[2026-06-27 17:20:02,193.193 INFO    ] 2026-06-27 17:20:02
[2026-06-27 17:20:02,472.472 INFO    ] 2026-06-27 17:20:02
[2026-06-27 17:20:02,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:20:02,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:20:02,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:20:02,856.856 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:20:02,896.896 INFO    ] time= 27/06/2026 17:20:02
[2026-06-27 17:20:02,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:20:02,959.959 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:20:03,030.030 INFO    ] No existing commands found in stream
[2026-06-27 17:20:08,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:20:08,042.042 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-27 17:20:10,229.229 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 17:20:10,230.230 INFO    ] Checking for system updates...
[2026-06-27 17:20:10,252.252 INFO    ] 200
[2026-06-27 17:20:10,253.253 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:20:10,283.283 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:20:10,285.285 INFO    ] No update needed
[2026-06-27 17:20:10,287.287 INFO    ] Checking for camera pi updates...
[2026-06-27 17:20:10,306.306 INFO    ] 200
[2026-06-27 17:20:10,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:20:10,330.330 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:20:10,471.471 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:20:10,472.472 INFO    ] No camera update needed
[2026-06-27 17:20:10,474.474 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:20:10,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:20:10,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:20:10,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:20:12,519.519 INFO    ] ================================================
[2026-06-27 17:20:12,535.535 INFO    ] Launching Daemon at Sat Jun 27 17:20:12 IST 2026
[2026-06-27 17:20:12,547.547 INFO    ] ================================================
[2026-06-27 17:20:12,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:20:12
[2026-06-27 17:20:13,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:20:13,352.352 INFO    ] Initializing speech engine...
[2026-06-27 17:20:13,356.356 INFO    ] 2026-06-27 17:20:13
[2026-06-27 17:20:13,586.586 INFO    ] 2026-06-27 17:20:13
[2026-06-27 17:20:13,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:20:13,816.816 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:20:13,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:20:13,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:20:14,017.017 INFO    ] time= 27/06/2026 17:20:13
[2026-06-27 17:20:14,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:20:14,072.072 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:20:14,142.142 INFO    ] No existing commands found in stream
[2026-06-27 17:20:19,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:20:19,156.156 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-27 17:20:22,165.165 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 17:20:22,167.167 INFO    ] Checking for system updates...
[2026-06-27 17:20:22,187.187 INFO    ] 200
[2026-06-27 17:20:22,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:20:22,218.218 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:20:22,220.220 INFO    ] No update needed
[2026-06-27 17:20:22,221.221 INFO    ] Checking for camera pi updates...
[2026-06-27 17:20:22,243.243 INFO    ] 200
[2026-06-27 17:20:22,244.244 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:20:22,267.267 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:20:22,306.306 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:20:22,308.308 INFO    ] No camera update needed
[2026-06-27 17:20:22,309.309 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:20:22,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:20:22,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:20:22,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:20:24,355.355 INFO    ] ================================================
[2026-06-27 17:20:24,370.370 INFO    ] Launching Daemon at Sat Jun 27 17:20:24 IST 2026
[2026-06-27 17:20:24,381.381 INFO    ] ================================================
[2026-06-27 17:20:24,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:20:24
[2026-06-27 17:20:25,059.059 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:20:25,202.202 INFO    ] Initializing speech engine...
[2026-06-27 17:20:25,207.207 INFO    ] 2026-06-27 17:20:25
[2026-06-27 17:20:25,412.412 INFO    ] 2026-06-27 17:20:25
[2026-06-27 17:20:25,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:20:25,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:20:25,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:20:25,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:20:25,853.853 INFO    ] time= 27/06/2026 17:20:25
[2026-06-27 17:20:25,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:20:25,861.861 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:20:25,927.927 INFO    ] No existing commands found in stream
[2026-06-27 17:20:30,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:20:30,939.939 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-27 17:20:34,908.908 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 17:20:34,909.909 INFO    ] Checking for system updates...
[2026-06-27 17:20:34,930.930 INFO    ] 200
[2026-06-27 17:20:34,931.931 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:20:34,964.964 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:20:34,965.965 INFO    ] No update needed
[2026-06-27 17:20:34,967.967 INFO    ] Checking for camera pi updates...
[2026-06-27 17:20:34,986.986 INFO    ] 200
[2026-06-27 17:20:34,988.988 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:20:35,011.011 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:20:35,057.057 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:20:35,058.058 INFO    ] No camera update needed
[2026-06-27 17:20:35,060.060 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:20:35,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:20:35,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:20:35,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:20:37,110.110 INFO    ] ================================================
[2026-06-27 17:20:37,126.126 INFO    ] Launching Daemon at Sat Jun 27 17:20:37 IST 2026
[2026-06-27 17:20:37,137.137 INFO    ] ================================================
[2026-06-27 17:20:37,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:20:37
[2026-06-27 17:20:37,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:20:37,948.948 INFO    ] Initializing speech engine...
[2026-06-27 17:20:37,952.952 INFO    ] 2026-06-27 17:20:37
[2026-06-27 17:20:38,176.176 INFO    ] 2026-06-27 17:20:38
[2026-06-27 17:20:38,209.209 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:20:38,343.343 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:20:38,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:20:38,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:20:38,605.605 INFO    ] time= 27/06/2026 17:20:38
[2026-06-27 17:20:38,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:20:38,635.635 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:20:38,702.702 INFO    ] No existing commands found in stream
[2026-06-27 17:20:43,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:20:43,716.716 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-27 17:20:45,019.019 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 17:20:45,020.020 INFO    ] Checking for system updates...
[2026-06-27 17:20:45,041.041 INFO    ] 200
[2026-06-27 17:20:45,042.042 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:20:45,073.073 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:20:45,075.075 INFO    ] No update needed
[2026-06-27 17:20:45,076.076 INFO    ] Checking for camera pi updates...
[2026-06-27 17:20:45,096.096 INFO    ] 200
[2026-06-27 17:20:45,097.097 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:20:45,122.122 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:20:45,164.164 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:20:45,166.166 INFO    ] No camera update needed
[2026-06-27 17:20:45,167.167 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:20:45,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:20:45,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:20:45,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:20:47,216.216 INFO    ] ================================================
[2026-06-27 17:20:47,232.232 INFO    ] Launching Daemon at Sat Jun 27 17:20:47 IST 2026
[2026-06-27 17:20:47,243.243 INFO    ] ================================================
[2026-06-27 17:20:47,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:20:47
[2026-06-27 17:20:47,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:20:48,030.030 INFO    ] Initializing speech engine...
[2026-06-27 17:20:48,038.038 INFO    ] 2026-06-27 17:20:48
[2026-06-27 17:20:48,249.249 INFO    ] 2026-06-27 17:20:48
[2026-06-27 17:20:48,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:20:48,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:20:48,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:20:48,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:20:48,670.670 INFO    ] time= 27/06/2026 17:20:48
[2026-06-27 17:20:48,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:20:48,700.700 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:20:48,767.767 INFO    ] No existing commands found in stream
[2026-06-27 17:20:53,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:20:53,777.777 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-27 17:20:57,250.250 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 17:20:57,252.252 INFO    ] Checking for system updates...
[2026-06-27 17:20:57,272.272 INFO    ] 200
[2026-06-27 17:20:57,274.274 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:20:57,304.304 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:20:57,305.305 INFO    ] No update needed
[2026-06-27 17:20:57,307.307 INFO    ] Checking for camera pi updates...
[2026-06-27 17:20:57,326.326 INFO    ] 200
[2026-06-27 17:20:57,327.327 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:20:57,351.351 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:20:57,397.397 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:20:57,398.398 INFO    ] No camera update needed
[2026-06-27 17:20:57,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:20:57,401.401 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:20:57,404.404 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:20:57,407.407 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:20:59,447.447 INFO    ] ================================================
[2026-06-27 17:20:59,462.462 INFO    ] Launching Daemon at Sat Jun 27 17:20:59 IST 2026
[2026-06-27 17:20:59,473.473 INFO    ] ================================================
[2026-06-27 17:20:59,834.834 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:20:59
[2026-06-27 17:21:00,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:21:00,323.323 INFO    ] Initializing speech engine...
[2026-06-27 17:21:00,329.329 INFO    ] 2026-06-27 17:21:00
[2026-06-27 17:21:00,539.539 INFO    ] 2026-06-27 17:21:00
[2026-06-27 17:21:00,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:21:00,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:21:00,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:21:01,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:21:01,050.050 INFO    ] time= 27/06/2026 17:21:01
[2026-06-27 17:21:01,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:21:01,078.078 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:21:01,185.185 INFO    ] No existing commands found in stream
[2026-06-27 17:21:06,195.195 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:21:06,198.198 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-27 17:21:08,745.745 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 17:21:08,747.747 INFO    ] Checking for system updates...
[2026-06-27 17:21:08,767.767 INFO    ] 200
[2026-06-27 17:21:08,769.769 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:21:08,801.801 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:21:08,803.803 INFO    ] No update needed
[2026-06-27 17:21:08,804.804 INFO    ] Checking for camera pi updates...
[2026-06-27 17:21:08,823.823 INFO    ] 200
[2026-06-27 17:21:08,825.825 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:21:08,849.849 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:21:08,890.890 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:21:08,891.891 INFO    ] No camera update needed
[2026-06-27 17:21:08,892.892 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:21:08,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:21:08,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:21:08,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:21:10,938.938 INFO    ] ================================================
[2026-06-27 17:21:10,954.954 INFO    ] Launching Daemon at Sat Jun 27 17:21:10 IST 2026
[2026-06-27 17:21:10,965.965 INFO    ] ================================================
[2026-06-27 17:21:11,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:21:11
[2026-06-27 17:21:11,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:21:11,818.818 INFO    ] Initializing speech engine...
[2026-06-27 17:21:11,823.823 INFO    ] 2026-06-27 17:21:11
[2026-06-27 17:21:12,031.031 INFO    ] 2026-06-27 17:21:12
[2026-06-27 17:21:12,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:21:12,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:21:12,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:21:12,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:21:12,455.455 INFO    ] time= 27/06/2026 17:21:12
[2026-06-27 17:21:12,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:21:12,484.484 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:21:12,551.551 INFO    ] No existing commands found in stream
[2026-06-27 17:21:17,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:21:17,569.569 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-27 17:21:20,939.939 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 17:21:20,940.940 INFO    ] Checking for system updates...
[2026-06-27 17:21:20,973.973 INFO    ] 200
[2026-06-27 17:21:20,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:21:21,020.020 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:21:21,022.022 INFO    ] No update needed
[2026-06-27 17:21:21,024.024 INFO    ] Checking for camera pi updates...
[2026-06-27 17:21:21,044.044 INFO    ] 200
[2026-06-27 17:21:21,046.046 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:21:21,069.069 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:21:21,113.113 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:21:21,115.115 INFO    ] No camera update needed
[2026-06-27 17:21:21,116.116 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:21:21,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:21:21,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:21:21,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:21:23,156.156 INFO    ] ================================================
[2026-06-27 17:21:23,171.171 INFO    ] Launching Daemon at Sat Jun 27 17:21:23 IST 2026
[2026-06-27 17:21:23,182.182 INFO    ] ================================================
[2026-06-27 17:21:23,528.528 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:21:23
[2026-06-27 17:21:23,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:21:24,020.020 INFO    ] Initializing speech engine...
[2026-06-27 17:21:24,026.026 INFO    ] 2026-06-27 17:21:24
[2026-06-27 17:21:24,234.234 INFO    ] 2026-06-27 17:21:24
[2026-06-27 17:21:24,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:21:24,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:21:24,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:21:24,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:21:24,641.641 INFO    ] time= 27/06/2026 17:21:24
[2026-06-27 17:21:24,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:21:24,681.681 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:21:24,752.752 INFO    ] No existing commands found in stream
[2026-06-27 17:21:29,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:21:29,769.769 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-27 17:21:32,745.745 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 17:21:32,746.746 INFO    ] Checking for system updates...
[2026-06-27 17:21:32,767.767 INFO    ] 200
[2026-06-27 17:21:32,769.769 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:21:32,811.811 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:21:32,813.813 INFO    ] No update needed
[2026-06-27 17:21:32,815.815 INFO    ] Checking for camera pi updates...
[2026-06-27 17:21:32,835.835 INFO    ] 200
[2026-06-27 17:21:32,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:21:32,862.862 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:21:32,889.889 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:21:32,891.891 INFO    ] No camera update needed
[2026-06-27 17:21:32,892.892 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:21:32,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:21:32,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:21:32,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:21:34,940.940 INFO    ] ================================================
[2026-06-27 17:21:34,956.956 INFO    ] Launching Daemon at Sat Jun 27 17:21:34 IST 2026
[2026-06-27 17:21:34,967.967 INFO    ] ================================================
[2026-06-27 17:21:35,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:21:35
[2026-06-27 17:21:35,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:21:35,792.792 INFO    ] Initializing speech engine...
[2026-06-27 17:21:35,798.798 INFO    ] 2026-06-27 17:21:35
[2026-06-27 17:21:36,007.007 INFO    ] 2026-06-27 17:21:35
[2026-06-27 17:21:36,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:21:36,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:21:36,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:21:36,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:21:36,444.444 INFO    ] time= 27/06/2026 17:21:36
[2026-06-27 17:21:36,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:21:36,456.456 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:21:36,522.522 INFO    ] No existing commands found in stream
[2026-06-27 17:21:41,532.532 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:21:41,535.535 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-27 17:21:43,141.141 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 17:21:43,142.142 INFO    ] Checking for system updates...
[2026-06-27 17:21:43,164.164 INFO    ] 200
[2026-06-27 17:21:43,166.166 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:21:43,196.196 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:21:43,198.198 INFO    ] No update needed
[2026-06-27 17:21:43,199.199 INFO    ] Checking for camera pi updates...
[2026-06-27 17:21:43,219.219 INFO    ] 200
[2026-06-27 17:21:43,220.220 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:21:43,244.244 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:21:43,287.287 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:21:43,288.288 INFO    ] No camera update needed
[2026-06-27 17:21:43,289.289 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:21:43,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:21:43,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:21:43,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:21:45,337.337 INFO    ] ================================================
[2026-06-27 17:21:45,353.353 INFO    ] Launching Daemon at Sat Jun 27 17:21:45 IST 2026
[2026-06-27 17:21:45,364.364 INFO    ] ================================================
[2026-06-27 17:21:45,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:21:45
[2026-06-27 17:21:46,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:21:46,150.150 INFO    ] Initializing speech engine...
[2026-06-27 17:21:46,163.163 INFO    ] 2026-06-27 17:21:46
[2026-06-27 17:21:46,384.384 INFO    ] 2026-06-27 17:21:46
[2026-06-27 17:21:46,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:21:46,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:21:46,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:21:46,760.760 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:21:46,822.822 INFO    ] time= 27/06/2026 17:21:46
[2026-06-27 17:21:46,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:21:46,869.869 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:21:46,945.945 INFO    ] No existing commands found in stream
[2026-06-27 17:21:51,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:21:51,959.959 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-27 17:21:56,069.069 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 17:21:56,070.070 INFO    ] Checking for system updates...
[2026-06-27 17:21:56,091.091 INFO    ] 200
[2026-06-27 17:21:56,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:21:56,123.123 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:21:56,125.125 INFO    ] No update needed
[2026-06-27 17:21:56,126.126 INFO    ] Checking for camera pi updates...
[2026-06-27 17:21:56,147.147 INFO    ] 200
[2026-06-27 17:21:56,148.148 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:21:56,171.171 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:21:56,214.214 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:21:56,216.216 INFO    ] No camera update needed
[2026-06-27 17:21:56,217.217 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:21:56,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:21:56,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:21:56,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:21:58,264.264 INFO    ] ================================================
[2026-06-27 17:21:58,280.280 INFO    ] Launching Daemon at Sat Jun 27 17:21:58 IST 2026
[2026-06-27 17:21:58,291.291 INFO    ] ================================================
[2026-06-27 17:21:58,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:21:58
[2026-06-27 17:21:58,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:21:59,081.081 INFO    ] Initializing speech engine...
[2026-06-27 17:21:59,091.091 INFO    ] 2026-06-27 17:21:59
[2026-06-27 17:21:59,316.316 INFO    ] 2026-06-27 17:21:59
[2026-06-27 17:21:59,347.347 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:21:59,480.480 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:21:59,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:21:59,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:21:59,746.746 INFO    ] time= 27/06/2026 17:21:59
[2026-06-27 17:21:59,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:21:59,801.801 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:21:59,872.872 INFO    ] No existing commands found in stream
[2026-06-27 17:22:04,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:22:04,885.885 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-27 17:22:07,929.929 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 17:22:07,931.931 INFO    ] Checking for system updates...
[2026-06-27 17:22:07,952.952 INFO    ] 200
[2026-06-27 17:22:07,953.953 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:22:07,984.984 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:22:07,985.985 INFO    ] No update needed
[2026-06-27 17:22:07,986.986 INFO    ] Checking for camera pi updates...
[2026-06-27 17:22:08,006.006 INFO    ] 200
[2026-06-27 17:22:08,008.008 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:22:08,033.033 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:22:08,080.080 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:22:08,081.081 INFO    ] No camera update needed
[2026-06-27 17:22:08,082.082 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:22:08,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:22:08,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:22:08,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:22:10,128.128 INFO    ] ================================================
[2026-06-27 17:22:10,142.142 INFO    ] Launching Daemon at Sat Jun 27 17:22:10 IST 2026
[2026-06-27 17:22:10,153.153 INFO    ] ================================================
[2026-06-27 17:22:10,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:22:10
[2026-06-27 17:22:10,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:22:10,960.960 INFO    ] Initializing speech engine...
[2026-06-27 17:22:10,965.965 INFO    ] 2026-06-27 17:22:10
[2026-06-27 17:22:11,169.169 INFO    ] 2026-06-27 17:22:11
[2026-06-27 17:22:11,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:22:11,380.380 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:22:11,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:22:11,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:22:11,577.577 INFO    ] time= 27/06/2026 17:22:11
[2026-06-27 17:22:11,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:22:11,616.616 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:22:11,683.683 INFO    ] No existing commands found in stream
[2026-06-27 17:22:16,697.697 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:22:16,699.699 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-27 17:22:19,935.935 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 17:22:19,937.937 INFO    ] Checking for system updates...
[2026-06-27 17:22:19,958.958 INFO    ] 200
[2026-06-27 17:22:19,960.960 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:22:19,990.990 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:22:19,991.991 INFO    ] No update needed
[2026-06-27 17:22:19,993.993 INFO    ] Checking for camera pi updates...
[2026-06-27 17:22:20,013.013 INFO    ] 200
[2026-06-27 17:22:20,015.015 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:22:20,039.039 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:22:20,178.178 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:22:20,180.180 INFO    ] No camera update needed
[2026-06-27 17:22:20,181.181 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:22:20,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:22:20,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:22:20,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:22:22,227.227 INFO    ] ================================================
[2026-06-27 17:22:22,242.242 INFO    ] Launching Daemon at Sat Jun 27 17:22:22 IST 2026
[2026-06-27 17:22:22,253.253 INFO    ] ================================================
[2026-06-27 17:22:22,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:22:22
[2026-06-27 17:22:22,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:22:23,124.124 INFO    ] Initializing speech engine...
[2026-06-27 17:22:23,129.129 INFO    ] 2026-06-27 17:22:23
[2026-06-27 17:22:23,335.335 INFO    ] 2026-06-27 17:22:23
[2026-06-27 17:22:23,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:22:23,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:22:23,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:22:23,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:22:23,756.756 INFO    ] time= 27/06/2026 17:22:23
[2026-06-27 17:22:23,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:22:23,791.791 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:22:23,857.857 INFO    ] No existing commands found in stream
[2026-06-27 17:22:28,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:22:28,870.870 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-27 17:22:32,372.372 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 17:22:32,374.374 INFO    ] Checking for system updates...
[2026-06-27 17:22:32,394.394 INFO    ] 200
[2026-06-27 17:22:32,396.396 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:22:32,426.426 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:22:32,427.427 INFO    ] No update needed
[2026-06-27 17:22:32,429.429 INFO    ] Checking for camera pi updates...
[2026-06-27 17:22:32,448.448 INFO    ] 200
[2026-06-27 17:22:32,450.450 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:22:32,473.473 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:22:32,509.509 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:22:32,511.511 INFO    ] No camera update needed
[2026-06-27 17:22:32,512.512 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:22:32,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:22:32,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:22:32,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:22:34,559.559 INFO    ] ================================================
[2026-06-27 17:22:34,574.574 INFO    ] Launching Daemon at Sat Jun 27 17:22:34 IST 2026
[2026-06-27 17:22:34,585.585 INFO    ] ================================================
[2026-06-27 17:22:34,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:22:34
[2026-06-27 17:22:35,267.267 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:22:35,421.421 INFO    ] Initializing speech engine...
[2026-06-27 17:22:35,426.426 INFO    ] 2026-06-27 17:22:35
[2026-06-27 17:22:35,639.639 INFO    ] 2026-06-27 17:22:35
[2026-06-27 17:22:35,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:22:35,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:22:35,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:22:36,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:22:36,047.047 INFO    ] time= 27/06/2026 17:22:36
[2026-06-27 17:22:36,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:22:36,104.104 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:22:36,201.201 INFO    ] No existing commands found in stream
[2026-06-27 17:22:41,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:22:41,229.229 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-27 17:22:42,098.098 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 17:22:42,100.100 INFO    ] Checking for system updates...
[2026-06-27 17:22:42,121.121 INFO    ] 200
[2026-06-27 17:22:42,122.122 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:22:42,153.153 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:22:42,155.155 INFO    ] No update needed
[2026-06-27 17:22:42,156.156 INFO    ] Checking for camera pi updates...
[2026-06-27 17:22:42,176.176 INFO    ] 200
[2026-06-27 17:22:42,177.177 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:22:42,201.201 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:22:42,259.259 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:22:42,260.260 INFO    ] No camera update needed
[2026-06-27 17:22:42,262.262 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:22:42,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:22:42,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:22:42,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:22:44,301.301 INFO    ] ================================================
[2026-06-27 17:22:44,310.310 INFO    ] Launching Daemon at Sat Jun 27 17:22:44 IST 2026
[2026-06-27 17:22:44,318.318 INFO    ] ================================================
[2026-06-27 17:22:44,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:22:44
[2026-06-27 17:22:44,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:22:45,125.125 INFO    ] Initializing speech engine...
[2026-06-27 17:22:45,131.131 INFO    ] 2026-06-27 17:22:45
[2026-06-27 17:22:45,338.338 INFO    ] 2026-06-27 17:22:45
[2026-06-27 17:22:45,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:22:45,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:22:45,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:22:45,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:22:45,818.818 INFO    ] time= 27/06/2026 17:22:45
[2026-06-27 17:22:45,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:22:45,888.888 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:22:45,977.977 INFO    ] No existing commands found in stream
[2026-06-27 17:22:50,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:22:50,989.989 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-27 17:22:52,480.480 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 17:22:52,481.481 INFO    ] Checking for system updates...
[2026-06-27 17:22:52,506.506 INFO    ] 200
[2026-06-27 17:22:52,507.507 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:22:52,538.538 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:22:52,539.539 INFO    ] No update needed
[2026-06-27 17:22:52,540.540 INFO    ] Checking for camera pi updates...
[2026-06-27 17:22:52,560.560 INFO    ] 200
[2026-06-27 17:22:52,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:22:52,584.584 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:22:52,626.626 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:22:52,627.627 INFO    ] No camera update needed
[2026-06-27 17:22:52,628.628 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:22:52,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:22:52,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:22:52,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:22:54,675.675 INFO    ] ================================================
[2026-06-27 17:22:54,691.691 INFO    ] Launching Daemon at Sat Jun 27 17:22:54 IST 2026
[2026-06-27 17:22:54,702.702 INFO    ] ================================================
[2026-06-27 17:22:55,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:22:55
[2026-06-27 17:22:55,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:22:55,499.499 INFO    ] Initializing speech engine...
[2026-06-27 17:22:55,507.507 INFO    ] 2026-06-27 17:22:55
[2026-06-27 17:22:55,720.720 INFO    ] 2026-06-27 17:22:55
[2026-06-27 17:22:55,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:22:55,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:22:55,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:22:56,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:22:56,162.162 INFO    ] time= 27/06/2026 17:22:56
[2026-06-27 17:22:56,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:22:56,169.169 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:22:56,235.235 INFO    ] No existing commands found in stream
[2026-06-27 17:23:01,259.259 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:23:01,262.262 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-27 17:23:05,739.739 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 17:23:05,740.740 INFO    ] Checking for system updates...
[2026-06-27 17:23:05,761.761 INFO    ] 200
[2026-06-27 17:23:05,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:23:05,793.793 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:23:05,795.795 INFO    ] No update needed
[2026-06-27 17:23:05,796.796 INFO    ] Checking for camera pi updates...
[2026-06-27 17:23:05,816.816 INFO    ] 200
[2026-06-27 17:23:05,818.818 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:23:05,843.843 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:23:05,891.891 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:23:05,893.893 INFO    ] No camera update needed
[2026-06-27 17:23:05,894.894 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:23:05,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:23:05,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:23:05,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:23:07,935.935 INFO    ] ================================================
[2026-06-27 17:23:07,950.950 INFO    ] Launching Daemon at Sat Jun 27 17:23:07 IST 2026
[2026-06-27 17:23:07,962.962 INFO    ] ================================================
[2026-06-27 17:23:08,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:23:08
[2026-06-27 17:23:08,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:23:08,798.798 INFO    ] Initializing speech engine...
[2026-06-27 17:23:08,806.806 INFO    ] 2026-06-27 17:23:08
[2026-06-27 17:23:09,020.020 INFO    ] 2026-06-27 17:23:08
[2026-06-27 17:23:09,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:23:09,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:23:09,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:23:09,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:23:09,436.436 INFO    ] time= 27/06/2026 17:23:09
[2026-06-27 17:23:09,468.468 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:23:09,474.474 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:23:09,541.541 INFO    ] No existing commands found in stream
[2026-06-27 17:23:14,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:23:14,549.549 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-27 17:23:16,173.173 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 17:23:16,175.175 INFO    ] Checking for system updates...
[2026-06-27 17:23:16,200.200 INFO    ] 200
[2026-06-27 17:23:16,201.201 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:23:16,234.234 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:23:16,235.235 INFO    ] No update needed
[2026-06-27 17:23:16,237.237 INFO    ] Checking for camera pi updates...
[2026-06-27 17:23:16,257.257 INFO    ] 200
[2026-06-27 17:23:16,259.259 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:23:16,282.282 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:23:16,324.324 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:23:16,325.325 INFO    ] No camera update needed
[2026-06-27 17:23:16,326.326 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:23:16,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:23:16,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:23:16,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:23:18,372.372 INFO    ] ================================================
[2026-06-27 17:23:18,387.387 INFO    ] Launching Daemon at Sat Jun 27 17:23:18 IST 2026
[2026-06-27 17:23:18,398.398 INFO    ] ================================================
[2026-06-27 17:23:18,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:23:18
[2026-06-27 17:23:19,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:23:19,216.216 INFO    ] Initializing speech engine...
[2026-06-27 17:23:19,221.221 INFO    ] 2026-06-27 17:23:19
[2026-06-27 17:23:19,425.425 INFO    ] 2026-06-27 17:23:19
[2026-06-27 17:23:19,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:23:19,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:23:19,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:23:19,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:23:19,842.842 INFO    ] time= 27/06/2026 17:23:19
[2026-06-27 17:23:19,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:23:19,870.870 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:23:19,935.935 INFO    ] No existing commands found in stream
[2026-06-27 17:23:24,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:23:24,948.948 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-27 17:23:26,045.045 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 17:23:26,046.046 INFO    ] Checking for system updates...
[2026-06-27 17:23:26,067.067 INFO    ] 200
[2026-06-27 17:23:26,068.068 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:23:26,098.098 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:23:26,100.100 INFO    ] No update needed
[2026-06-27 17:23:26,101.101 INFO    ] Checking for camera pi updates...
[2026-06-27 17:23:26,128.128 INFO    ] 200
[2026-06-27 17:23:26,129.129 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:23:26,152.152 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:23:26,200.200 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:23:26,201.201 INFO    ] No camera update needed
[2026-06-27 17:23:26,202.202 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:23:26,204.204 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:23:26,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:23:26,210.210 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:23:28,250.250 INFO    ] ================================================
[2026-06-27 17:23:28,266.266 INFO    ] Launching Daemon at Sat Jun 27 17:23:28 IST 2026
[2026-06-27 17:23:28,277.277 INFO    ] ================================================
[2026-06-27 17:23:28,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:23:28
[2026-06-27 17:23:28,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:23:29,115.115 INFO    ] Initializing speech engine...
[2026-06-27 17:23:29,118.118 INFO    ] 2026-06-27 17:23:29
[2026-06-27 17:23:29,325.325 INFO    ] 2026-06-27 17:23:29
[2026-06-27 17:23:29,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:23:29,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:23:29,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:23:29,681.681 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:23:29,742.742 INFO    ] time= 27/06/2026 17:23:29
[2026-06-27 17:23:29,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:23:29,772.772 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:23:29,839.839 INFO    ] No existing commands found in stream
[2026-06-27 17:23:34,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:23:34,851.851 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-27 17:23:37,208.208 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 17:23:37,215.215 INFO    ] Checking for system updates...
[2026-06-27 17:23:37,236.236 INFO    ] 200
[2026-06-27 17:23:37,237.237 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:23:37,270.270 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:23:37,271.271 INFO    ] No update needed
[2026-06-27 17:23:37,273.273 INFO    ] Checking for camera pi updates...
[2026-06-27 17:23:37,294.294 INFO    ] 200
[2026-06-27 17:23:37,295.295 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:23:37,320.320 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:23:37,374.374 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:23:37,375.375 INFO    ] No camera update needed
[2026-06-27 17:23:37,377.377 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:23:37,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:23:37,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:23:37,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:23:39,425.425 INFO    ] ================================================
[2026-06-27 17:23:39,441.441 INFO    ] Launching Daemon at Sat Jun 27 17:23:39 IST 2026
[2026-06-27 17:23:39,452.452 INFO    ] ================================================
[2026-06-27 17:23:39,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:23:39
[2026-06-27 17:23:40,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:23:40,231.231 INFO    ] Initializing speech engine...
[2026-06-27 17:23:40,237.237 INFO    ] 2026-06-27 17:23:40
[2026-06-27 17:23:40,442.442 INFO    ] 2026-06-27 17:23:40
[2026-06-27 17:23:40,470.470 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:23:40,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:23:40,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:23:40,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:23:40,861.861 INFO    ] time= 27/06/2026 17:23:40
[2026-06-27 17:23:40,884.884 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:23:40,890.890 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:23:40,987.987 INFO    ] No existing commands found in stream
[2026-06-27 17:23:45,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:23:45,999.999 INFO    ] Waiting 3.19 seconds before fallback handling...
[2026-06-27 17:23:49,564.564 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 17:23:49,565.565 INFO    ] Checking for system updates...
[2026-06-27 17:23:49,586.586 INFO    ] 200
[2026-06-27 17:23:49,587.587 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:23:49,617.617 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:23:49,619.619 INFO    ] No update needed
[2026-06-27 17:23:49,620.620 INFO    ] Checking for camera pi updates...
[2026-06-27 17:23:49,639.639 INFO    ] 200
[2026-06-27 17:23:49,641.641 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:23:49,666.666 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:23:49,709.709 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:23:49,710.710 INFO    ] No camera update needed
[2026-06-27 17:23:49,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:23:49,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:23:49,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:23:49,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:23:51,758.758 INFO    ] ================================================
[2026-06-27 17:23:51,774.774 INFO    ] Launching Daemon at Sat Jun 27 17:23:51 IST 2026
[2026-06-27 17:23:51,785.785 INFO    ] ================================================
[2026-06-27 17:23:52,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:23:52
[2026-06-27 17:23:52,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:23:52,611.611 INFO    ] Initializing speech engine...
[2026-06-27 17:23:52,621.621 INFO    ] 2026-06-27 17:23:52
[2026-06-27 17:23:52,826.826 INFO    ] 2026-06-27 17:23:52
[2026-06-27 17:23:52,854.854 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:23:52,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:23:53,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:23:53,182.182 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:23:53,244.244 INFO    ] time= 27/06/2026 17:23:53
[2026-06-27 17:23:53,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:23:53,273.273 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:23:53,340.340 INFO    ] No existing commands found in stream
[2026-06-27 17:23:58,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:23:58,352.352 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-27 17:24:01,592.592 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 17:24:01,595.595 INFO    ] Checking for system updates...
[2026-06-27 17:24:01,634.634 INFO    ] 200
[2026-06-27 17:24:01,636.636 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:24:01,710.710 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:24:01,712.712 INFO    ] No update needed
[2026-06-27 17:24:01,716.716 INFO    ] Checking for camera pi updates...
[2026-06-27 17:24:01,751.751 INFO    ] 200
[2026-06-27 17:24:01,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:24:01,783.783 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:24:01,829.829 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:24:01,831.831 INFO    ] No camera update needed
[2026-06-27 17:24:01,833.833 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:24:01,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:24:01,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:24:01,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:24:03,884.884 INFO    ] ================================================
[2026-06-27 17:24:03,900.900 INFO    ] Launching Daemon at Sat Jun 27 17:24:03 IST 2026
[2026-06-27 17:24:03,912.912 INFO    ] ================================================
[2026-06-27 17:24:04,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:24:04
[2026-06-27 17:24:04,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:24:04,712.712 INFO    ] Initializing speech engine...
[2026-06-27 17:24:04,725.725 INFO    ] 2026-06-27 17:24:04
[2026-06-27 17:24:04,932.932 INFO    ] 2026-06-27 17:24:04
[2026-06-27 17:24:04,961.961 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:24:05,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:24:05,148.148 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:24:05,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:24:05,343.343 INFO    ] time= 27/06/2026 17:24:05
[2026-06-27 17:24:05,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:24:05,381.381 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:24:05,448.448 INFO    ] No existing commands found in stream
[2026-06-27 17:24:10,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:24:10,460.460 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-27 17:24:14,618.618 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 17:24:14,620.620 INFO    ] Checking for system updates...
[2026-06-27 17:24:14,641.641 INFO    ] 200
[2026-06-27 17:24:14,642.642 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:24:14,672.672 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:24:14,674.674 INFO    ] No update needed
[2026-06-27 17:24:14,675.675 INFO    ] Checking for camera pi updates...
[2026-06-27 17:24:14,697.697 INFO    ] 200
[2026-06-27 17:24:14,701.701 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:24:14,724.724 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:24:14,772.772 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:24:14,773.773 INFO    ] No camera update needed
[2026-06-27 17:24:14,775.775 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:24:14,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:24:14,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:24:14,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:24:16,822.822 INFO    ] ================================================
[2026-06-27 17:24:16,838.838 INFO    ] Launching Daemon at Sat Jun 27 17:24:16 IST 2026
[2026-06-27 17:24:16,850.850 INFO    ] ================================================
[2026-06-27 17:24:17,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:24:17
[2026-06-27 17:24:17,500.500 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:24:17,639.639 INFO    ] Initializing speech engine...
[2026-06-27 17:24:17,648.648 INFO    ] 2026-06-27 17:24:17
[2026-06-27 17:24:17,853.853 INFO    ] 2026-06-27 17:24:17
[2026-06-27 17:24:17,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:24:18,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:24:18,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:24:18,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:24:18,275.275 INFO    ] time= 27/06/2026 17:24:18
[2026-06-27 17:24:18,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:24:18,305.305 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:24:18,372.372 INFO    ] No existing commands found in stream
[2026-06-27 17:24:23,381.381 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:24:23,384.384 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-27 17:24:26,583.583 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 17:24:26,584.584 INFO    ] Checking for system updates...
[2026-06-27 17:24:26,607.607 INFO    ] 200
[2026-06-27 17:24:26,609.609 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:24:26,639.639 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:24:26,641.641 INFO    ] No update needed
[2026-06-27 17:24:26,642.642 INFO    ] Checking for camera pi updates...
[2026-06-27 17:24:26,663.663 INFO    ] 200
[2026-06-27 17:24:26,664.664 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:24:26,689.689 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:24:26,843.843 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:24:26,844.844 INFO    ] No camera update needed
[2026-06-27 17:24:26,845.845 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:24:26,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:24:26,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:24:26,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:24:28,893.893 INFO    ] ================================================
[2026-06-27 17:24:28,908.908 INFO    ] Launching Daemon at Sat Jun 27 17:24:28 IST 2026
[2026-06-27 17:24:28,919.919 INFO    ] ================================================
[2026-06-27 17:24:29,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:24:29
[2026-06-27 17:24:29,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:24:29,708.708 INFO    ] Initializing speech engine...
[2026-06-27 17:24:29,712.712 INFO    ] 2026-06-27 17:24:29
[2026-06-27 17:24:29,905.905 INFO    ] 2026-06-27 17:24:29
[2026-06-27 17:24:29,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:24:30,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:24:30,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:24:30,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:24:30,332.332 INFO    ] time= 27/06/2026 17:24:30
[2026-06-27 17:24:30,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:24:30,434.434 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:24:30,505.505 INFO    ] No existing commands found in stream
[2026-06-27 17:24:35,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:24:35,519.519 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-27 17:24:39,053.053 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 17:24:39,055.055 INFO    ] Checking for system updates...
[2026-06-27 17:24:39,077.077 INFO    ] 200
[2026-06-27 17:24:39,078.078 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:24:39,109.109 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:24:39,111.111 INFO    ] No update needed
[2026-06-27 17:24:39,112.112 INFO    ] Checking for camera pi updates...
[2026-06-27 17:24:39,132.132 INFO    ] 200
[2026-06-27 17:24:39,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:24:39,157.157 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:24:39,206.206 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:24:39,207.207 INFO    ] No camera update needed
[2026-06-27 17:24:39,209.209 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:24:39,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:24:39,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:24:39,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:24:41,258.258 INFO    ] ================================================
[2026-06-27 17:24:41,274.274 INFO    ] Launching Daemon at Sat Jun 27 17:24:41 IST 2026
[2026-06-27 17:24:41,285.285 INFO    ] ================================================
[2026-06-27 17:24:41,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:24:41
[2026-06-27 17:24:41,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:24:42,086.086 INFO    ] Initializing speech engine...
[2026-06-27 17:24:42,094.094 INFO    ] 2026-06-27 17:24:42
[2026-06-27 17:24:42,309.309 INFO    ] 2026-06-27 17:24:42
[2026-06-27 17:24:42,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:24:42,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:24:42,528.528 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:24:42,665.665 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:24:42,724.724 INFO    ] time= 27/06/2026 17:24:42
[2026-06-27 17:24:42,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:24:42,760.760 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:24:42,832.832 INFO    ] No existing commands found in stream
[2026-06-27 17:24:47,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:24:47,843.843 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-27 17:24:50,574.574 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 17:24:50,575.575 INFO    ] Checking for system updates...
[2026-06-27 17:24:50,596.596 INFO    ] 200
[2026-06-27 17:24:50,597.597 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:24:50,627.627 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:24:50,628.628 INFO    ] No update needed
[2026-06-27 17:24:50,630.630 INFO    ] Checking for camera pi updates...
[2026-06-27 17:24:50,649.649 INFO    ] 200
[2026-06-27 17:24:50,650.650 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:24:50,676.676 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:24:50,721.721 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:24:50,722.722 INFO    ] No camera update needed
[2026-06-27 17:24:50,724.724 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:24:50,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:24:50,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:24:50,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:24:52,771.771 INFO    ] ================================================
[2026-06-27 17:24:52,787.787 INFO    ] Launching Daemon at Sat Jun 27 17:24:52 IST 2026
[2026-06-27 17:24:52,799.799 INFO    ] ================================================
[2026-06-27 17:24:53,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:24:53
[2026-06-27 17:24:53,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:24:53,603.603 INFO    ] Initializing speech engine...
[2026-06-27 17:24:53,608.608 INFO    ] 2026-06-27 17:24:53
[2026-06-27 17:24:53,811.811 INFO    ] 2026-06-27 17:24:53
[2026-06-27 17:24:53,840.840 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:24:53,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:24:54,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:24:54,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:24:54,168.168 INFO    ] time= 27/06/2026 17:24:54
[2026-06-27 17:24:54,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:24:54,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:24:54,356.356 INFO    ] No existing commands found in stream
[2026-06-27 17:24:59,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:24:59,368.368 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-27 17:25:03,191.191 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 17:25:03,193.193 INFO    ] Checking for system updates...
[2026-06-27 17:25:03,229.229 INFO    ] 200
[2026-06-27 17:25:03,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:25:03,279.279 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:25:03,280.280 INFO    ] No update needed
[2026-06-27 17:25:03,281.281 INFO    ] Checking for camera pi updates...
[2026-06-27 17:25:03,301.301 INFO    ] 200
[2026-06-27 17:25:03,303.303 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:25:03,326.326 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:25:03,367.367 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:25:03,369.369 INFO    ] No camera update needed
[2026-06-27 17:25:03,370.370 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:25:03,372.372 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:25:03,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:25:03,378.378 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:25:05,416.416 INFO    ] ================================================
[2026-06-27 17:25:05,432.432 INFO    ] Launching Daemon at Sat Jun 27 17:25:05 IST 2026
[2026-06-27 17:25:05,443.443 INFO    ] ================================================
[2026-06-27 17:25:05,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:25:05
[2026-06-27 17:25:06,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:25:06,274.274 INFO    ] Initializing speech engine...
[2026-06-27 17:25:06,284.284 INFO    ] 2026-06-27 17:25:06
[2026-06-27 17:25:06,492.492 INFO    ] 2026-06-27 17:25:06
[2026-06-27 17:25:06,521.521 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:25:06,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:25:06,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:25:06,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:25:06,903.903 INFO    ] time= 27/06/2026 17:25:06
[2026-06-27 17:25:06,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:25:06,941.941 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:25:07,008.008 INFO    ] No existing commands found in stream
[2026-06-27 17:25:12,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:25:12,019.019 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-27 17:25:13,158.158 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 17:25:13,159.159 INFO    ] Checking for system updates...
[2026-06-27 17:25:13,180.180 INFO    ] 200
[2026-06-27 17:25:13,181.181 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:25:13,212.212 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:25:13,213.213 INFO    ] No update needed
[2026-06-27 17:25:13,214.214 INFO    ] Checking for camera pi updates...
[2026-06-27 17:25:13,236.236 INFO    ] 200
[2026-06-27 17:25:13,237.237 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:25:13,263.263 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:25:13,302.302 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:25:13,303.303 INFO    ] No camera update needed
[2026-06-27 17:25:13,304.304 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:25:13,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:25:13,308.308 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:25:13,311.311 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:25:15,352.352 INFO    ] ================================================
[2026-06-27 17:25:15,368.368 INFO    ] Launching Daemon at Sat Jun 27 17:25:15 IST 2026
[2026-06-27 17:25:15,379.379 INFO    ] ================================================
[2026-06-27 17:25:15,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:25:15
[2026-06-27 17:25:16,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:25:16,252.252 INFO    ] Initializing speech engine...
[2026-06-27 17:25:16,256.256 INFO    ] 2026-06-27 17:25:16
[2026-06-27 17:25:16,462.462 INFO    ] 2026-06-27 17:25:16
[2026-06-27 17:25:16,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:25:16,677.677 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:25:16,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:25:16,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:25:16,886.886 INFO    ] time= 27/06/2026 17:25:16
[2026-06-27 17:25:16,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:25:16,913.913 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:25:16,980.980 INFO    ] No existing commands found in stream
[2026-06-27 17:25:22,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:25:22,016.016 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-27 17:25:22,450.450 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 17:25:22,451.451 INFO    ] Checking for system updates...
[2026-06-27 17:25:22,473.473 INFO    ] 200
[2026-06-27 17:25:22,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:25:22,505.505 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:25:22,507.507 INFO    ] No update needed
[2026-06-27 17:25:22,508.508 INFO    ] Checking for camera pi updates...
[2026-06-27 17:25:22,527.527 INFO    ] 200
[2026-06-27 17:25:22,529.529 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:25:22,552.552 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:25:22,598.598 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:25:22,599.599 INFO    ] No camera update needed
[2026-06-27 17:25:22,601.601 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:25:22,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:25:22,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:25:22,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:25:24,647.647 INFO    ] ================================================
[2026-06-27 17:25:24,663.663 INFO    ] Launching Daemon at Sat Jun 27 17:25:24 IST 2026
[2026-06-27 17:25:24,674.674 INFO    ] ================================================
[2026-06-27 17:25:25,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:25:25
[2026-06-27 17:25:25,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:25:25,521.521 INFO    ] Initializing speech engine...
[2026-06-27 17:25:25,526.526 INFO    ] 2026-06-27 17:25:25
[2026-06-27 17:25:25,745.745 INFO    ] 2026-06-27 17:25:25
[2026-06-27 17:25:25,778.778 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:25:25,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:25:25,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:25:26,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:25:26,149.149 INFO    ] time= 27/06/2026 17:25:26
[2026-06-27 17:25:26,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:25:26,151.151 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:25:26,223.223 INFO    ] No existing commands found in stream
[2026-06-27 17:25:31,240.240 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:25:31,243.243 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-27 17:25:32,114.114 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 17:25:32,116.116 INFO    ] Checking for system updates...
[2026-06-27 17:25:32,138.138 INFO    ] 200
[2026-06-27 17:25:32,140.140 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:25:32,176.176 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:25:32,178.178 INFO    ] No update needed
[2026-06-27 17:25:32,179.179 INFO    ] Checking for camera pi updates...
[2026-06-27 17:25:32,201.201 INFO    ] 200
[2026-06-27 17:25:32,203.203 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:25:32,230.230 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:25:32,262.262 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:25:32,264.264 INFO    ] No camera update needed
[2026-06-27 17:25:32,266.266 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:25:32,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:25:32,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:25:32,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:25:34,315.315 INFO    ] ================================================
[2026-06-27 17:25:34,331.331 INFO    ] Launching Daemon at Sat Jun 27 17:25:34 IST 2026
[2026-06-27 17:25:34,342.342 INFO    ] ================================================
[2026-06-27 17:25:34,708.708 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:25:34
[2026-06-27 17:25:35,024.024 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:25:35,161.161 INFO    ] Initializing speech engine...
[2026-06-27 17:25:35,171.171 INFO    ] 2026-06-27 17:25:35
[2026-06-27 17:25:35,379.379 INFO    ] 2026-06-27 17:25:35
[2026-06-27 17:25:35,407.407 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:25:35,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:25:35,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:25:35,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:25:35,794.794 INFO    ] time= 27/06/2026 17:25:35
[2026-06-27 17:25:35,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:25:35,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:25:35,901.901 INFO    ] No existing commands found in stream
[2026-06-27 17:25:40,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:25:40,914.914 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-27 17:25:44,946.946 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 17:25:44,948.948 INFO    ] Checking for system updates...
[2026-06-27 17:25:44,968.968 INFO    ] 200
[2026-06-27 17:25:44,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:25:45,004.004 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:25:45,005.005 INFO    ] No update needed
[2026-06-27 17:25:45,006.006 INFO    ] Checking for camera pi updates...
[2026-06-27 17:25:45,027.027 INFO    ] 200
[2026-06-27 17:25:45,029.029 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:25:45,052.052 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:25:45,105.105 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:25:45,107.107 INFO    ] No camera update needed
[2026-06-27 17:25:45,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:25:45,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:25:45,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:25:45,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:25:47,155.155 INFO    ] ================================================
[2026-06-27 17:25:47,171.171 INFO    ] Launching Daemon at Sat Jun 27 17:25:47 IST 2026
[2026-06-27 17:25:47,182.182 INFO    ] ================================================
[2026-06-27 17:25:47,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:25:47
[2026-06-27 17:25:47,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:25:47,990.990 INFO    ] Initializing speech engine...
[2026-06-27 17:25:47,995.995 INFO    ] 2026-06-27 17:25:47
[2026-06-27 17:25:48,199.199 INFO    ] 2026-06-27 17:25:48
[2026-06-27 17:25:48,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:25:48,361.361 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:25:48,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:25:48,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:25:48,606.606 INFO    ] time= 27/06/2026 17:25:48
[2026-06-27 17:25:48,642.642 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:25:48,644.644 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:25:48,739.739 INFO    ] No existing commands found in stream
[2026-06-27 17:25:53,753.753 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:25:53,756.756 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-27 17:25:55,680.680 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 17:25:55,681.681 INFO    ] Checking for system updates...
[2026-06-27 17:25:55,702.702 INFO    ] 200
[2026-06-27 17:25:55,704.704 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:25:55,734.734 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:25:55,736.736 INFO    ] No update needed
[2026-06-27 17:25:55,737.737 INFO    ] Checking for camera pi updates...
[2026-06-27 17:25:55,758.758 INFO    ] 200
[2026-06-27 17:25:55,760.760 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:25:55,783.783 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:25:55,813.813 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:25:55,814.814 INFO    ] No camera update needed
[2026-06-27 17:25:55,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:25:55,817.817 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:25:55,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:25:55,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:25:57,864.864 INFO    ] ================================================
[2026-06-27 17:25:57,880.880 INFO    ] Launching Daemon at Sat Jun 27 17:25:57 IST 2026
[2026-06-27 17:25:57,891.891 INFO    ] ================================================
[2026-06-27 17:25:58,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:25:58
[2026-06-27 17:25:58,557.557 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:25:58,688.688 INFO    ] Initializing speech engine...
[2026-06-27 17:25:58,691.691 INFO    ] 2026-06-27 17:25:58
[2026-06-27 17:25:58,907.907 INFO    ] 2026-06-27 17:25:58
[2026-06-27 17:25:58,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:25:59,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:25:59,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:25:59,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:25:59,327.327 INFO    ] time= 27/06/2026 17:25:59
[2026-06-27 17:25:59,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:25:59,355.355 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:25:59,422.422 INFO    ] No existing commands found in stream
[2026-06-27 17:26:04,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:26:04,439.439 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-27 17:26:06,351.351 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 17:26:06,352.352 INFO    ] Checking for system updates...
[2026-06-27 17:26:06,373.373 INFO    ] 200
[2026-06-27 17:26:06,374.374 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:26:06,404.404 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:26:06,406.406 INFO    ] No update needed
[2026-06-27 17:26:06,407.407 INFO    ] Checking for camera pi updates...
[2026-06-27 17:26:06,426.426 INFO    ] 200
[2026-06-27 17:26:06,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:26:06,453.453 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:26:06,495.495 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:26:06,496.496 INFO    ] No camera update needed
[2026-06-27 17:26:06,497.497 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:26:06,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:26:06,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:26:06,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:26:08,544.544 INFO    ] ================================================
[2026-06-27 17:26:08,560.560 INFO    ] Launching Daemon at Sat Jun 27 17:26:08 IST 2026
[2026-06-27 17:26:08,574.574 INFO    ] ================================================
[2026-06-27 17:26:08,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:26:08
[2026-06-27 17:26:09,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:26:09,379.379 INFO    ] Initializing speech engine...
[2026-06-27 17:26:09,387.387 INFO    ] 2026-06-27 17:26:09
[2026-06-27 17:26:09,601.601 INFO    ] 2026-06-27 17:26:09
[2026-06-27 17:26:09,630.630 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:26:09,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:26:09,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:26:09,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:26:09,960.960 INFO    ] time= 27/06/2026 17:26:09
[2026-06-27 17:26:10,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:26:10,055.055 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:26:10,128.128 INFO    ] No existing commands found in stream
[2026-06-27 17:26:15,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:26:15,145.145 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-27 17:26:16,089.089 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 17:26:16,090.090 INFO    ] Checking for system updates...
[2026-06-27 17:26:16,111.111 INFO    ] 200
[2026-06-27 17:26:16,113.113 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:26:16,143.143 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:26:16,145.145 INFO    ] No update needed
[2026-06-27 17:26:16,146.146 INFO    ] Checking for camera pi updates...
[2026-06-27 17:26:16,167.167 INFO    ] 200
[2026-06-27 17:26:16,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:26:16,192.192 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:26:16,234.234 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:26:16,236.236 INFO    ] No camera update needed
[2026-06-27 17:26:16,237.237 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:26:16,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:26:16,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:26:16,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:26:18,282.282 INFO    ] ================================================
[2026-06-27 17:26:18,298.298 INFO    ] Launching Daemon at Sat Jun 27 17:26:18 IST 2026
[2026-06-27 17:26:18,310.310 INFO    ] ================================================
[2026-06-27 17:26:18,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:26:18
[2026-06-27 17:26:18,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:26:19,126.126 INFO    ] Initializing speech engine...
[2026-06-27 17:26:19,131.131 INFO    ] 2026-06-27 17:26:19
[2026-06-27 17:26:19,363.363 INFO    ] 2026-06-27 17:26:19
[2026-06-27 17:26:19,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:26:19,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:26:19,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:26:19,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:26:19,822.822 INFO    ] time= 27/06/2026 17:26:19
[2026-06-27 17:26:19,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:26:19,855.855 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:26:19,926.926 INFO    ] No existing commands found in stream
[2026-06-27 17:26:24,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:26:24,939.939 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-27 17:26:28,435.435 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 17:26:28,437.437 INFO    ] Checking for system updates...
[2026-06-27 17:26:28,457.457 INFO    ] 200
[2026-06-27 17:26:28,459.459 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:26:28,489.489 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:26:28,490.490 INFO    ] No update needed
[2026-06-27 17:26:28,491.491 INFO    ] Checking for camera pi updates...
[2026-06-27 17:26:28,513.513 INFO    ] 200
[2026-06-27 17:26:28,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:26:28,538.538 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:26:28,676.676 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:26:28,677.677 INFO    ] No camera update needed
[2026-06-27 17:26:28,679.679 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:26:28,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:26:28,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:26:28,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:26:30,726.726 INFO    ] ================================================
[2026-06-27 17:26:30,741.741 INFO    ] Launching Daemon at Sat Jun 27 17:26:30 IST 2026
[2026-06-27 17:26:30,753.753 INFO    ] ================================================
[2026-06-27 17:26:31,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:26:31
[2026-06-27 17:26:31,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:26:31,608.608 INFO    ] Initializing speech engine...
[2026-06-27 17:26:31,612.612 INFO    ] 2026-06-27 17:26:31
[2026-06-27 17:26:31,820.820 INFO    ] 2026-06-27 17:26:31
[2026-06-27 17:26:31,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:26:31,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:26:32,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:26:32,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:26:32,259.259 INFO    ] time= 27/06/2026 17:26:32
[2026-06-27 17:26:32,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:26:32,304.304 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:26:32,377.377 INFO    ] No existing commands found in stream
[2026-06-27 17:26:37,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:26:37,394.394 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-27 17:26:40,084.084 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 17:26:40,086.086 INFO    ] Checking for system updates...
[2026-06-27 17:26:40,108.108 INFO    ] 200
[2026-06-27 17:26:40,109.109 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:26:40,143.143 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:26:40,144.144 INFO    ] No update needed
[2026-06-27 17:26:40,145.145 INFO    ] Checking for camera pi updates...
[2026-06-27 17:26:40,165.165 INFO    ] 200
[2026-06-27 17:26:40,166.166 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:26:40,191.191 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:26:40,240.240 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:26:40,241.241 INFO    ] No camera update needed
[2026-06-27 17:26:40,242.242 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:26:40,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:26:40,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:26:40,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:26:42,289.289 INFO    ] ================================================
[2026-06-27 17:26:42,306.306 INFO    ] Launching Daemon at Sat Jun 27 17:26:42 IST 2026
[2026-06-27 17:26:42,317.317 INFO    ] ================================================
[2026-06-27 17:26:42,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:26:42
[2026-06-27 17:26:42,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:26:43,110.110 INFO    ] Initializing speech engine...
[2026-06-27 17:26:43,115.115 INFO    ] 2026-06-27 17:26:43
[2026-06-27 17:26:43,332.332 INFO    ] 2026-06-27 17:26:43
[2026-06-27 17:26:43,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:26:43,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:26:43,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:26:43,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:26:43,741.741 INFO    ] time= 27/06/2026 17:26:43
[2026-06-27 17:26:43,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:26:43,814.814 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:26:43,893.893 INFO    ] No existing commands found in stream
[2026-06-27 17:26:48,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:26:48,905.905 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-27 17:26:50,568.568 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 17:26:50,570.570 INFO    ] Checking for system updates...
[2026-06-27 17:26:50,591.591 INFO    ] 200
[2026-06-27 17:26:50,592.592 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:26:50,625.625 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:26:50,627.627 INFO    ] No update needed
[2026-06-27 17:26:50,628.628 INFO    ] Checking for camera pi updates...
[2026-06-27 17:26:50,649.649 INFO    ] 200
[2026-06-27 17:26:50,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:26:50,678.678 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:26:50,704.704 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:26:50,706.706 INFO    ] No camera update needed
[2026-06-27 17:26:50,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:26:50,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:26:50,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:26:50,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:26:52,755.755 INFO    ] ================================================
[2026-06-27 17:26:52,771.771 INFO    ] Launching Daemon at Sat Jun 27 17:26:52 IST 2026
[2026-06-27 17:26:52,782.782 INFO    ] ================================================
[2026-06-27 17:26:53,114.114 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:26:53
[2026-06-27 17:26:53,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:26:53,580.580 INFO    ] Initializing speech engine...
[2026-06-27 17:26:53,585.585 INFO    ] 2026-06-27 17:26:53
[2026-06-27 17:26:53,792.792 INFO    ] 2026-06-27 17:26:53
[2026-06-27 17:26:53,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:26:54,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:26:54,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:26:54,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:26:54,235.235 INFO    ] time= 27/06/2026 17:26:54
[2026-06-27 17:26:54,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:26:54,244.244 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:26:54,311.311 INFO    ] No existing commands found in stream
[2026-06-27 17:26:59,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:26:59,329.329 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-27 17:27:00,693.693 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 17:27:00,695.695 INFO    ] Checking for system updates...
[2026-06-27 17:27:00,716.716 INFO    ] 200
[2026-06-27 17:27:00,718.718 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:27:00,752.752 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:27:00,753.753 INFO    ] No update needed
[2026-06-27 17:27:00,755.755 INFO    ] Checking for camera pi updates...
[2026-06-27 17:27:00,775.775 INFO    ] 200
[2026-06-27 17:27:00,776.776 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:27:00,800.800 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:27:00,831.831 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:27:00,832.832 INFO    ] No camera update needed
[2026-06-27 17:27:00,834.834 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:27:00,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:27:00,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:27:00,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:27:02,873.873 INFO    ] ================================================
[2026-06-27 17:27:02,889.889 INFO    ] Launching Daemon at Sat Jun 27 17:27:02 IST 2026
[2026-06-27 17:27:02,900.900 INFO    ] ================================================
[2026-06-27 17:27:03,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:27:03
[2026-06-27 17:27:03,554.554 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:27:03,696.696 INFO    ] Initializing speech engine...
[2026-06-27 17:27:03,701.701 INFO    ] 2026-06-27 17:27:03
[2026-06-27 17:27:03,904.904 INFO    ] 2026-06-27 17:27:03
[2026-06-27 17:27:03,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:27:04,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:27:04,126.126 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:27:04,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:27:04,324.324 INFO    ] time= 27/06/2026 17:27:04
[2026-06-27 17:27:04,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:27:04,353.353 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:27:04,420.420 INFO    ] No existing commands found in stream
[2026-06-27 17:27:09,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:27:09,432.432 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-27 17:27:10,636.636 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 17:27:10,638.638 INFO    ] Checking for system updates...
[2026-06-27 17:27:10,660.660 INFO    ] 200
[2026-06-27 17:27:10,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:27:10,692.692 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:27:10,693.693 INFO    ] No update needed
[2026-06-27 17:27:10,695.695 INFO    ] Checking for camera pi updates...
[2026-06-27 17:27:10,714.714 INFO    ] 200
[2026-06-27 17:27:10,715.715 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:27:10,740.740 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:27:10,768.768 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:27:10,769.769 INFO    ] No camera update needed
[2026-06-27 17:27:10,770.770 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:27:10,772.772 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:27:10,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:27:10,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:27:12,817.817 INFO    ] ================================================
[2026-06-27 17:27:12,833.833 INFO    ] Launching Daemon at Sat Jun 27 17:27:12 IST 2026
[2026-06-27 17:27:12,844.844 INFO    ] ================================================
[2026-06-27 17:27:13,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:27:13
[2026-06-27 17:27:13,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:27:13,649.649 INFO    ] Initializing speech engine...
[2026-06-27 17:27:13,663.663 INFO    ] 2026-06-27 17:27:13
[2026-06-27 17:27:13,870.870 INFO    ] 2026-06-27 17:27:13
[2026-06-27 17:27:13,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:27:14,041.041 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:27:14,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:27:14,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:27:14,289.289 INFO    ] time= 27/06/2026 17:27:14
[2026-06-27 17:27:14,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:27:14,316.316 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:27:14,387.387 INFO    ] No existing commands found in stream
[2026-06-27 17:27:19,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:27:19,404.404 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-27 17:27:23,122.122 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 17:27:23,124.124 INFO    ] Checking for system updates...
[2026-06-27 17:27:23,146.146 INFO    ] 200
[2026-06-27 17:27:23,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:27:23,178.178 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:27:23,179.179 INFO    ] No update needed
[2026-06-27 17:27:23,181.181 INFO    ] Checking for camera pi updates...
[2026-06-27 17:27:23,200.200 INFO    ] 200
[2026-06-27 17:27:23,201.201 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:27:23,227.227 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:27:23,270.270 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:27:23,271.271 INFO    ] No camera update needed
[2026-06-27 17:27:23,273.273 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:27:23,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:27:23,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:27:23,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:27:25,320.320 INFO    ] ================================================
[2026-06-27 17:27:25,336.336 INFO    ] Launching Daemon at Sat Jun 27 17:27:25 IST 2026
[2026-06-27 17:27:25,346.346 INFO    ] ================================================
[2026-06-27 17:27:25,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:27:25
[2026-06-27 17:27:26,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:27:26,154.154 INFO    ] Initializing speech engine...
[2026-06-27 17:27:26,159.159 INFO    ] 2026-06-27 17:27:26
[2026-06-27 17:27:26,364.364 INFO    ] 2026-06-27 17:27:26
[2026-06-27 17:27:26,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:27:26,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:27:26,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:27:26,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:27:26,779.779 INFO    ] time= 27/06/2026 17:27:26
[2026-06-27 17:27:26,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:27:26,809.809 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:27:26,879.879 INFO    ] No existing commands found in stream
[2026-06-27 17:27:31,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:27:31,887.887 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-27 17:27:35,484.484 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 17:27:35,486.486 INFO    ] Checking for system updates...
[2026-06-27 17:27:35,506.506 INFO    ] 200
[2026-06-27 17:27:35,508.508 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:27:35,541.541 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:27:35,542.542 INFO    ] No update needed
[2026-06-27 17:27:35,544.544 INFO    ] Checking for camera pi updates...
[2026-06-27 17:27:35,566.566 INFO    ] 200
[2026-06-27 17:27:35,568.568 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:27:35,593.593 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:27:35,643.643 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:27:35,645.645 INFO    ] No camera update needed
[2026-06-27 17:27:35,646.646 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:27:35,647.647 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:27:35,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:27:35,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:27:37,696.696 INFO    ] ================================================
[2026-06-27 17:27:37,711.711 INFO    ] Launching Daemon at Sat Jun 27 17:27:37 IST 2026
[2026-06-27 17:27:37,722.722 INFO    ] ================================================
[2026-06-27 17:27:38,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:27:38
[2026-06-27 17:27:38,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:27:38,613.613 INFO    ] Initializing speech engine...
[2026-06-27 17:27:38,618.618 INFO    ] 2026-06-27 17:27:38
[2026-06-27 17:27:38,827.827 INFO    ] 2026-06-27 17:27:38
[2026-06-27 17:27:38,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:27:38,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:27:39,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:27:39,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:27:39,273.273 INFO    ] time= 27/06/2026 17:27:39
[2026-06-27 17:27:39,280.280 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:27:39,281.281 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:27:39,350.350 INFO    ] No existing commands found in stream
[2026-06-27 17:27:44,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:27:44,368.368 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-27 17:27:45,369.369 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 17:27:45,371.371 INFO    ] Checking for system updates...
[2026-06-27 17:27:45,391.391 INFO    ] 200
[2026-06-27 17:27:45,393.393 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:27:45,424.424 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:27:45,425.425 INFO    ] No update needed
[2026-06-27 17:27:45,427.427 INFO    ] Checking for camera pi updates...
[2026-06-27 17:27:45,447.447 INFO    ] 200
[2026-06-27 17:27:45,448.448 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:27:45,471.471 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:27:45,512.512 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:27:45,513.513 INFO    ] No camera update needed
[2026-06-27 17:27:45,514.514 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:27:45,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:27:45,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:27:45,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:27:47,561.561 INFO    ] ================================================
[2026-06-27 17:27:47,579.579 INFO    ] Launching Daemon at Sat Jun 27 17:27:47 IST 2026
[2026-06-27 17:27:47,589.589 INFO    ] ================================================
[2026-06-27 17:27:47,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:27:47
[2026-06-27 17:27:48,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:27:48,385.385 INFO    ] Initializing speech engine...
[2026-06-27 17:27:48,390.390 INFO    ] 2026-06-27 17:27:48
[2026-06-27 17:27:48,596.596 INFO    ] 2026-06-27 17:27:48
[2026-06-27 17:27:48,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:27:48,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:27:48,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:27:48,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:27:49,012.012 INFO    ] time= 27/06/2026 17:27:48
[2026-06-27 17:27:49,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:27:49,070.070 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:27:49,188.188 INFO    ] No existing commands found in stream
[2026-06-27 17:27:54,209.209 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:27:54,212.212 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-27 17:27:55,959.959 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 17:27:55,961.961 INFO    ] Checking for system updates...
[2026-06-27 17:27:55,983.983 INFO    ] 200
[2026-06-27 17:27:55,985.985 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:27:56,015.015 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:27:56,017.017 INFO    ] No update needed
[2026-06-27 17:27:56,018.018 INFO    ] Checking for camera pi updates...
[2026-06-27 17:27:56,040.040 INFO    ] 200
[2026-06-27 17:27:56,042.042 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:27:56,065.065 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:27:56,112.112 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:27:56,113.113 INFO    ] No camera update needed
[2026-06-27 17:27:56,115.115 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:27:56,116.116 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:27:56,119.119 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:27:56,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:27:58,160.160 INFO    ] ================================================
[2026-06-27 17:27:58,177.177 INFO    ] Launching Daemon at Sat Jun 27 17:27:58 IST 2026
[2026-06-27 17:27:58,188.188 INFO    ] ================================================
[2026-06-27 17:27:58,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:27:58
[2026-06-27 17:27:58,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:27:58,980.980 INFO    ] Initializing speech engine...
[2026-06-27 17:27:58,989.989 INFO    ] 2026-06-27 17:27:58
[2026-06-27 17:27:59,218.218 INFO    ] 2026-06-27 17:27:59
[2026-06-27 17:27:59,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:27:59,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:27:59,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:27:59,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:27:59,660.660 INFO    ] time= 27/06/2026 17:27:59
[2026-06-27 17:27:59,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:27:59,707.707 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:27:59,785.785 INFO    ] No existing commands found in stream
[2026-06-27 17:28:04,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:28:04,797.797 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-27 17:28:06,466.466 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 17:28:06,468.468 INFO    ] Checking for system updates...
[2026-06-27 17:28:06,490.490 INFO    ] 200
[2026-06-27 17:28:06,492.492 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:28:06,524.524 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:28:06,525.525 INFO    ] No update needed
[2026-06-27 17:28:06,527.527 INFO    ] Checking for camera pi updates...
[2026-06-27 17:28:06,548.548 INFO    ] 200
[2026-06-27 17:28:06,549.549 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:28:06,573.573 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:28:06,615.615 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:28:06,616.616 INFO    ] No camera update needed
[2026-06-27 17:28:06,618.618 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:28:06,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:28:06,622.622 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:28:06,625.625 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:28:08,664.664 INFO    ] ================================================
[2026-06-27 17:28:08,681.681 INFO    ] Launching Daemon at Sat Jun 27 17:28:08 IST 2026
[2026-06-27 17:28:08,693.693 INFO    ] ================================================
[2026-06-27 17:28:09,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:28:09
[2026-06-27 17:28:09,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:28:09,472.472 INFO    ] Initializing speech engine...
[2026-06-27 17:28:09,477.477 INFO    ] 2026-06-27 17:28:09
[2026-06-27 17:28:09,707.707 INFO    ] 2026-06-27 17:28:09
[2026-06-27 17:28:09,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:28:09,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:28:09,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:28:10,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:28:10,130.130 INFO    ] time= 27/06/2026 17:28:10
[2026-06-27 17:28:10,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:28:10,179.179 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:28:10,250.250 INFO    ] No existing commands found in stream
[2026-06-27 17:28:15,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:28:15,259.259 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-27 17:28:19,147.147 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 17:28:19,149.149 INFO    ] Checking for system updates...
[2026-06-27 17:28:19,169.169 INFO    ] 200
[2026-06-27 17:28:19,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:28:19,202.202 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:28:19,203.203 INFO    ] No update needed
[2026-06-27 17:28:19,205.205 INFO    ] Checking for camera pi updates...
[2026-06-27 17:28:19,226.226 INFO    ] 200
[2026-06-27 17:28:19,227.227 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:28:19,252.252 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:28:19,297.297 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:28:19,298.298 INFO    ] No camera update needed
[2026-06-27 17:28:19,300.300 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:28:19,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:28:19,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:28:19,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:28:21,347.347 INFO    ] ================================================
[2026-06-27 17:28:21,362.362 INFO    ] Launching Daemon at Sat Jun 27 17:28:21 IST 2026
[2026-06-27 17:28:21,373.373 INFO    ] ================================================
[2026-06-27 17:28:21,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:28:21
[2026-06-27 17:28:22,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:28:22,241.241 INFO    ] Initializing speech engine...
[2026-06-27 17:28:22,246.246 INFO    ] 2026-06-27 17:28:22
[2026-06-27 17:28:22,457.457 INFO    ] 2026-06-27 17:28:22
[2026-06-27 17:28:22,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:28:22,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:28:22,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:28:22,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:28:22,881.881 INFO    ] time= 27/06/2026 17:28:22
[2026-06-27 17:28:22,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:28:22,916.916 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:28:22,984.984 INFO    ] No existing commands found in stream
[2026-06-27 17:28:27,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:28:27,997.997 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-27 17:28:31,135.135 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 17:28:31,137.137 INFO    ] Checking for system updates...
[2026-06-27 17:28:31,158.158 INFO    ] 200
[2026-06-27 17:28:31,160.160 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:28:31,190.190 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:28:31,192.192 INFO    ] No update needed
[2026-06-27 17:28:31,193.193 INFO    ] Checking for camera pi updates...
[2026-06-27 17:28:31,215.215 INFO    ] 200
[2026-06-27 17:28:31,216.216 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:28:31,245.245 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:28:31,398.398 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:28:31,400.400 INFO    ] No camera update needed
[2026-06-27 17:28:31,402.402 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:28:31,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:28:31,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:28:31,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:28:33,455.455 INFO    ] ================================================
[2026-06-27 17:28:33,471.471 INFO    ] Launching Daemon at Sat Jun 27 17:28:33 IST 2026
[2026-06-27 17:28:33,482.482 INFO    ] ================================================
[2026-06-27 17:28:33,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:28:33
[2026-06-27 17:28:34,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:28:34,321.321 INFO    ] Initializing speech engine...
[2026-06-27 17:28:34,327.327 INFO    ] 2026-06-27 17:28:34
[2026-06-27 17:28:34,531.531 INFO    ] 2026-06-27 17:28:34
[2026-06-27 17:28:34,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:28:34,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:28:34,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:28:34,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:28:34,943.943 INFO    ] time= 27/06/2026 17:28:34
[2026-06-27 17:28:34,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:28:34,978.978 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:28:35,050.050 INFO    ] No existing commands found in stream
[2026-06-27 17:28:40,059.059 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:28:40,062.062 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-27 17:28:43,174.174 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 17:28:43,175.175 INFO    ] Checking for system updates...
[2026-06-27 17:28:43,197.197 INFO    ] 200
[2026-06-27 17:28:43,199.199 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:28:43,232.232 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:28:43,233.233 INFO    ] No update needed
[2026-06-27 17:28:43,234.234 INFO    ] Checking for camera pi updates...
[2026-06-27 17:28:43,254.254 INFO    ] 200
[2026-06-27 17:28:43,256.256 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:28:43,279.279 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:28:43,329.329 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:28:43,330.330 INFO    ] No camera update needed
[2026-06-27 17:28:43,331.331 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:28:43,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:28:43,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:28:43,338.338 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:28:45,378.378 INFO    ] ================================================
[2026-06-27 17:28:45,393.393 INFO    ] Launching Daemon at Sat Jun 27 17:28:45 IST 2026
[2026-06-27 17:28:45,404.404 INFO    ] ================================================
[2026-06-27 17:28:45,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:28:45
[2026-06-27 17:28:46,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:28:46,212.212 INFO    ] Initializing speech engine...
[2026-06-27 17:28:46,216.216 INFO    ] 2026-06-27 17:28:46
[2026-06-27 17:28:46,433.433 INFO    ] 2026-06-27 17:28:46
[2026-06-27 17:28:46,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:28:46,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:28:46,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:28:46,790.790 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:28:46,858.858 INFO    ] time= 27/06/2026 17:28:46
[2026-06-27 17:28:46,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:28:46,888.888 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:28:46,956.956 INFO    ] No existing commands found in stream
[2026-06-27 17:28:51,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:28:51,968.968 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-27 17:28:54,890.890 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 17:28:54,892.892 INFO    ] Checking for system updates...
[2026-06-27 17:28:54,913.913 INFO    ] 200
[2026-06-27 17:28:54,914.914 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:28:54,945.945 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:28:54,946.946 INFO    ] No update needed
[2026-06-27 17:28:54,947.947 INFO    ] Checking for camera pi updates...
[2026-06-27 17:28:54,969.969 INFO    ] 200
[2026-06-27 17:28:54,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:28:54,993.993 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:28:55,020.020 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:28:55,022.022 INFO    ] No camera update needed
[2026-06-27 17:28:55,023.023 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:28:55,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:28:55,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:28:55,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:28:57,068.068 INFO    ] ================================================
[2026-06-27 17:28:57,084.084 INFO    ] Launching Daemon at Sat Jun 27 17:28:57 IST 2026
[2026-06-27 17:28:57,095.095 INFO    ] ================================================
[2026-06-27 17:28:57,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:28:57
[2026-06-27 17:28:57,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:28:57,874.874 INFO    ] Initializing speech engine...
[2026-06-27 17:28:57,883.883 INFO    ] 2026-06-27 17:28:57
[2026-06-27 17:28:58,096.096 INFO    ] 2026-06-27 17:28:58
[2026-06-27 17:28:58,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:28:58,312.312 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:28:58,321.321 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:28:58,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:28:58,521.521 INFO    ] time= 27/06/2026 17:28:58
[2026-06-27 17:28:58,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:28:58,551.551 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:28:58,618.618 INFO    ] No existing commands found in stream
[2026-06-27 17:29:03,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:29:03,635.635 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-27 17:29:04,914.914 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 17:29:04,915.915 INFO    ] Checking for system updates...
[2026-06-27 17:29:04,937.937 INFO    ] 200
[2026-06-27 17:29:04,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:29:04,971.971 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:29:04,972.972 INFO    ] No update needed
[2026-06-27 17:29:04,974.974 INFO    ] Checking for camera pi updates...
[2026-06-27 17:29:04,994.994 INFO    ] 200
[2026-06-27 17:29:04,996.996 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:29:05,021.021 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:29:05,063.063 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:29:05,065.065 INFO    ] No camera update needed
[2026-06-27 17:29:05,066.066 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:29:05,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:29:05,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:29:05,073.073 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:29:07,111.111 INFO    ] ================================================
[2026-06-27 17:29:07,127.127 INFO    ] Launching Daemon at Sat Jun 27 17:29:07 IST 2026
[2026-06-27 17:29:07,137.137 INFO    ] ================================================
[2026-06-27 17:29:07,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:29:07
[2026-06-27 17:29:07,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:29:07,986.986 INFO    ] Initializing speech engine...
[2026-06-27 17:29:07,999.999 INFO    ] 2026-06-27 17:29:07
[2026-06-27 17:29:08,214.214 INFO    ] 2026-06-27 17:29:08
[2026-06-27 17:29:08,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:29:08,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:29:08,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:29:08,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:29:08,642.642 INFO    ] time= 27/06/2026 17:29:08
[2026-06-27 17:29:08,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:29:08,670.670 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:29:08,737.737 INFO    ] No existing commands found in stream
[2026-06-27 17:29:13,770.770 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:29:13,773.773 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-27 17:29:17,630.630 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 17:29:17,632.632 INFO    ] Checking for system updates...
[2026-06-27 17:29:17,653.653 INFO    ] 200
[2026-06-27 17:29:17,654.654 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:29:17,684.684 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:29:17,686.686 INFO    ] No update needed
[2026-06-27 17:29:17,687.687 INFO    ] Checking for camera pi updates...
[2026-06-27 17:29:17,707.707 INFO    ] 200
[2026-06-27 17:29:17,708.708 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:29:17,731.731 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:29:17,772.772 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:29:17,773.773 INFO    ] No camera update needed
[2026-06-27 17:29:17,775.775 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:29:17,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:29:17,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:29:17,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:29:19,820.820 INFO    ] ================================================
[2026-06-27 17:29:19,836.836 INFO    ] Launching Daemon at Sat Jun 27 17:29:19 IST 2026
[2026-06-27 17:29:19,847.847 INFO    ] ================================================
[2026-06-27 17:29:20,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:29:20
[2026-06-27 17:29:20,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:29:20,644.644 INFO    ] Initializing speech engine...
[2026-06-27 17:29:20,649.649 INFO    ] 2026-06-27 17:29:20
[2026-06-27 17:29:20,854.854 INFO    ] 2026-06-27 17:29:20
[2026-06-27 17:29:20,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:29:21,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:29:21,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:29:21,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:29:21,263.263 INFO    ] time= 27/06/2026 17:29:21
[2026-06-27 17:29:21,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:29:21,308.308 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:29:21,376.376 INFO    ] No existing commands found in stream
[2026-06-27 17:29:26,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:29:26,388.388 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-27 17:29:27,409.409 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 17:29:27,411.411 INFO    ] Checking for system updates...
[2026-06-27 17:29:27,432.432 INFO    ] 200
[2026-06-27 17:29:27,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:29:27,468.468 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:29:27,470.470 INFO    ] No update needed
[2026-06-27 17:29:27,471.471 INFO    ] Checking for camera pi updates...
[2026-06-27 17:29:27,491.491 INFO    ] 200
[2026-06-27 17:29:27,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:29:27,518.518 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:29:27,566.566 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:29:27,567.567 INFO    ] No camera update needed
[2026-06-27 17:29:27,569.569 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:29:27,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:29:27,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:29:27,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:29:29,615.615 INFO    ] ================================================
[2026-06-27 17:29:29,630.630 INFO    ] Launching Daemon at Sat Jun 27 17:29:29 IST 2026
[2026-06-27 17:29:29,640.640 INFO    ] ================================================
[2026-06-27 17:29:29,999.999 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:29:29
[2026-06-27 17:29:30,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:29:30,461.461 INFO    ] Initializing speech engine...
[2026-06-27 17:29:30,466.466 INFO    ] 2026-06-27 17:29:30
[2026-06-27 17:29:30,672.672 INFO    ] 2026-06-27 17:29:30
[2026-06-27 17:29:30,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:29:30,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:29:30,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:29:31,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:29:31,094.094 INFO    ] time= 27/06/2026 17:29:31
[2026-06-27 17:29:31,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:29:31,121.121 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:29:31,189.189 INFO    ] No existing commands found in stream
[2026-06-27 17:29:36,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:29:36,206.206 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-27 17:29:40,110.110 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 17:29:40,111.111 INFO    ] Checking for system updates...
[2026-06-27 17:29:40,133.133 INFO    ] 200
[2026-06-27 17:29:40,135.135 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:29:40,167.167 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:29:40,169.169 INFO    ] No update needed
[2026-06-27 17:29:40,170.170 INFO    ] Checking for camera pi updates...
[2026-06-27 17:29:40,191.191 INFO    ] 200
[2026-06-27 17:29:40,192.192 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:29:40,217.217 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:29:40,256.256 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:29:40,257.257 INFO    ] No camera update needed
[2026-06-27 17:29:40,258.258 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:29:40,260.260 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:29:40,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:29:40,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:29:42,304.304 INFO    ] ================================================
[2026-06-27 17:29:42,319.319 INFO    ] Launching Daemon at Sat Jun 27 17:29:42 IST 2026
[2026-06-27 17:29:42,330.330 INFO    ] ================================================
[2026-06-27 17:29:42,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:29:42
[2026-06-27 17:29:42,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:29:43,130.130 INFO    ] Initializing speech engine...
[2026-06-27 17:29:43,143.143 INFO    ] 2026-06-27 17:29:43
[2026-06-27 17:29:43,364.364 INFO    ] 2026-06-27 17:29:43
[2026-06-27 17:29:43,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:29:43,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:29:43,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:29:43,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:29:43,797.797 INFO    ] time= 27/06/2026 17:29:43
[2026-06-27 17:29:43,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:29:43,849.849 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:29:43,926.926 INFO    ] No existing commands found in stream
[2026-06-27 17:29:48,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:29:48,940.940 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-27 17:29:52,974.974 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 17:29:52,975.975 INFO    ] Checking for system updates...
[2026-06-27 17:29:52,996.996 INFO    ] 200
[2026-06-27 17:29:52,997.997 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:29:53,030.030 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:29:53,031.031 INFO    ] No update needed
[2026-06-27 17:29:53,033.033 INFO    ] Checking for camera pi updates...
[2026-06-27 17:29:53,053.053 INFO    ] 200
[2026-06-27 17:29:53,055.055 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:29:53,080.080 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:29:53,122.122 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:29:53,124.124 INFO    ] No camera update needed
[2026-06-27 17:29:53,125.125 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:29:53,126.126 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:29:53,129.129 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:29:53,132.132 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:29:55,170.170 INFO    ] ================================================
[2026-06-27 17:29:55,185.185 INFO    ] Launching Daemon at Sat Jun 27 17:29:55 IST 2026
[2026-06-27 17:29:55,196.196 INFO    ] ================================================
[2026-06-27 17:29:55,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:29:55
[2026-06-27 17:29:55,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:29:55,962.962 INFO    ] Initializing speech engine...
[2026-06-27 17:29:55,975.975 INFO    ] 2026-06-27 17:29:55
[2026-06-27 17:29:56,183.183 INFO    ] 2026-06-27 17:29:56
[2026-06-27 17:29:56,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:29:56,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:29:56,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:29:56,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:29:56,607.607 INFO    ] time= 27/06/2026 17:29:56
[2026-06-27 17:29:56,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:29:56,641.641 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:29:56,707.707 INFO    ] No existing commands found in stream
[2026-06-27 17:30:01,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:30:01,721.721 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-27 17:30:08,698.698 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 17:30:08,700.700 INFO    ] Checking for system updates...
[2026-06-27 17:30:08,722.722 INFO    ] 200
[2026-06-27 17:30:08,723.723 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:30:08,755.755 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:30:08,757.757 INFO    ] No update needed
[2026-06-27 17:30:08,758.758 INFO    ] Checking for camera pi updates...
[2026-06-27 17:30:08,779.779 INFO    ] 200
[2026-06-27 17:30:08,780.780 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:30:08,805.805 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:30:08,846.846 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:30:08,848.848 INFO    ] No camera update needed
[2026-06-27 17:30:08,849.849 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:30:08,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:30:08,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:30:08,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:30:10,896.896 INFO    ] ================================================
[2026-06-27 17:30:10,911.911 INFO    ] Launching Daemon at Sat Jun 27 17:30:10 IST 2026
[2026-06-27 17:30:10,922.922 INFO    ] ================================================
[2026-06-27 17:30:11,277.277 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:30:11
[2026-06-27 17:30:11,589.589 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:30:11,721.721 INFO    ] Initializing speech engine...
[2026-06-27 17:30:11,734.734 INFO    ] 2026-06-27 17:30:11
[2026-06-27 17:30:11,940.940 INFO    ] 2026-06-27 17:30:11
[2026-06-27 17:30:11,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:30:12,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:30:12,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:30:12,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:30:12,359.359 INFO    ] time= 27/06/2026 17:30:12
[2026-06-27 17:30:12,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:30:12,389.389 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:30:12,479.479 INFO    ] No existing commands found in stream
[2026-06-27 17:30:17,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:30:17,497.497 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-27 17:30:19,138.138 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 17:30:19,140.140 INFO    ] Checking for system updates...
[2026-06-27 17:30:19,171.171 INFO    ] 200
[2026-06-27 17:30:19,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-27 17:30:19,175.175 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-27 17:30:19,177.177 INFO    ] Checking for camera pi updates...
[2026-06-27 17:30:19,200.200 INFO    ] 200
[2026-06-27 17:30:19,202.202 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-27 17:30:19,204.204 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-27 17:30:19,205.205 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:30:19,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:30:19,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:30:19,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:30:21,254.254 INFO    ] ================================================
[2026-06-27 17:30:21,269.269 INFO    ] Launching Daemon at Sat Jun 27 17:30:21 IST 2026
[2026-06-27 17:30:21,280.280 INFO    ] ================================================
[2026-06-27 17:30:21,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:30:21
[2026-06-27 17:30:21,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:30:22,097.097 INFO    ] Initializing speech engine...
[2026-06-27 17:30:22,108.108 INFO    ] 2026-06-27 17:30:22
[2026-06-27 17:30:22,312.312 INFO    ] 2026-06-27 17:30:22
[2026-06-27 17:30:22,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:30:22,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:30:22,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:30:22,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:30:22,724.724 INFO    ] time= 27/06/2026 17:30:22
[2026-06-27 17:30:22,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:30:22,762.762 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:30:22,830.830 INFO    ] No existing commands found in stream
[2026-06-27 17:30:27,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:30:27,847.847 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-27 17:30:31,300.300 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 17:30:31,301.301 INFO    ] Checking for system updates...
[2026-06-27 17:30:31,322.322 INFO    ] 200
[2026-06-27 17:30:31,323.323 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:30:31,354.354 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:30:31,355.355 INFO    ] No update needed
[2026-06-27 17:30:31,357.357 INFO    ] Checking for camera pi updates...
[2026-06-27 17:30:31,377.377 INFO    ] 200
[2026-06-27 17:30:31,379.379 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:30:31,403.403 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:30:31,446.446 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:30:31,447.447 INFO    ] No camera update needed
[2026-06-27 17:30:31,448.448 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:30:31,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:30:31,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:30:31,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:30:33,489.489 INFO    ] ================================================
[2026-06-27 17:30:33,504.504 INFO    ] Launching Daemon at Sat Jun 27 17:30:33 IST 2026
[2026-06-27 17:30:33,515.515 INFO    ] ================================================
[2026-06-27 17:30:33,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:30:33
[2026-06-27 17:30:34,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:30:34,316.316 INFO    ] Initializing speech engine...
[2026-06-27 17:30:34,324.324 INFO    ] 2026-06-27 17:30:34
[2026-06-27 17:30:34,535.535 INFO    ] 2026-06-27 17:30:34
[2026-06-27 17:30:34,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:30:34,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:30:34,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:30:34,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:30:34,954.954 INFO    ] time= 27/06/2026 17:30:34
[2026-06-27 17:30:34,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:30:34,989.989 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:30:35,055.055 INFO    ] No existing commands found in stream
[2026-06-27 17:30:40,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:30:40,068.068 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-27 17:30:44,210.210 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 17:30:44,212.212 INFO    ] Checking for system updates...
[2026-06-27 17:30:44,235.235 INFO    ] 200
[2026-06-27 17:30:44,237.237 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:30:44,267.267 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:30:44,269.269 INFO    ] No update needed
[2026-06-27 17:30:44,270.270 INFO    ] Checking for camera pi updates...
[2026-06-27 17:30:44,290.290 INFO    ] 200
[2026-06-27 17:30:44,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:30:44,315.315 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:30:44,455.455 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:30:44,457.457 INFO    ] No camera update needed
[2026-06-27 17:30:44,458.458 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:30:44,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:30:44,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:30:44,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:30:46,505.505 INFO    ] ================================================
[2026-06-27 17:30:46,520.520 INFO    ] Launching Daemon at Sat Jun 27 17:30:46 IST 2026
[2026-06-27 17:30:46,530.530 INFO    ] ================================================
[2026-06-27 17:30:46,899.899 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:30:46
[2026-06-27 17:30:47,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:30:47,362.362 INFO    ] Initializing speech engine...
[2026-06-27 17:30:47,368.368 INFO    ] 2026-06-27 17:30:47
[2026-06-27 17:30:47,572.572 INFO    ] 2026-06-27 17:30:47
[2026-06-27 17:30:47,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:30:47,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:30:47,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:30:47,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:30:47,998.998 INFO    ] time= 27/06/2026 17:30:47
[2026-06-27 17:30:48,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:30:48,028.028 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:30:48,095.095 INFO    ] No existing commands found in stream
[2026-06-27 17:30:53,105.105 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:30:53,108.108 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-27 17:30:54,445.445 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 17:30:54,446.446 INFO    ] Checking for system updates...
[2026-06-27 17:30:54,468.468 INFO    ] 200
[2026-06-27 17:30:54,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:30:54,500.500 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:30:54,501.501 INFO    ] No update needed
[2026-06-27 17:30:54,502.502 INFO    ] Checking for camera pi updates...
[2026-06-27 17:30:54,522.522 INFO    ] 200
[2026-06-27 17:30:54,523.523 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:30:54,547.547 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:30:54,578.578 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:30:54,580.580 INFO    ] No camera update needed
[2026-06-27 17:30:54,581.581 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:30:54,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:30:54,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:30:54,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:30:56,628.628 INFO    ] ================================================
[2026-06-27 17:30:56,643.643 INFO    ] Launching Daemon at Sat Jun 27 17:30:56 IST 2026
[2026-06-27 17:30:56,653.653 INFO    ] ================================================
[2026-06-27 17:30:57,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:30:57
[2026-06-27 17:30:57,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:30:57,478.478 INFO    ] Initializing speech engine...
[2026-06-27 17:30:57,487.487 INFO    ] 2026-06-27 17:30:57
[2026-06-27 17:30:57,677.677 INFO    ] 2026-06-27 17:30:57
[2026-06-27 17:30:57,710.710 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:30:57,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:30:57,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:30:58,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:30:58,079.079 INFO    ] time= 27/06/2026 17:30:58
[2026-06-27 17:30:58,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:30:58,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:30:58,266.266 INFO    ] No existing commands found in stream
[2026-06-27 17:31:03,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:31:03,280.280 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-27 17:31:06,102.102 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 17:31:06,104.104 INFO    ] Checking for system updates...
[2026-06-27 17:31:06,125.125 INFO    ] 200
[2026-06-27 17:31:06,126.126 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:31:06,157.157 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:31:06,158.158 INFO    ] No update needed
[2026-06-27 17:31:06,159.159 INFO    ] Checking for camera pi updates...
[2026-06-27 17:31:06,179.179 INFO    ] 200
[2026-06-27 17:31:06,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:31:06,203.203 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:31:06,248.248 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:31:06,249.249 INFO    ] No camera update needed
[2026-06-27 17:31:06,250.250 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:31:06,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:31:06,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:31:06,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:31:08,297.297 INFO    ] ================================================
[2026-06-27 17:31:08,312.312 INFO    ] Launching Daemon at Sat Jun 27 17:31:08 IST 2026
[2026-06-27 17:31:08,323.323 INFO    ] ================================================
[2026-06-27 17:31:08,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:31:08
[2026-06-27 17:31:09,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:31:09,198.198 INFO    ] Initializing speech engine...
[2026-06-27 17:31:09,204.204 INFO    ] 2026-06-27 17:31:09
[2026-06-27 17:31:09,417.417 INFO    ] 2026-06-27 17:31:09
[2026-06-27 17:31:09,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:31:09,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:31:09,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:31:09,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:31:09,861.861 INFO    ] time= 27/06/2026 17:31:09
[2026-06-27 17:31:09,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:31:09,868.868 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:31:09,936.936 INFO    ] No existing commands found in stream
[2026-06-27 17:31:14,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:31:14,960.960 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-27 17:31:18,289.289 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 17:31:18,290.290 INFO    ] Checking for system updates...
[2026-06-27 17:31:18,311.311 INFO    ] 200
[2026-06-27 17:31:18,312.312 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:31:18,343.343 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:31:18,344.344 INFO    ] No update needed
[2026-06-27 17:31:18,346.346 INFO    ] Checking for camera pi updates...
[2026-06-27 17:31:18,365.365 INFO    ] 200
[2026-06-27 17:31:18,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:31:18,389.389 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:31:18,435.435 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:31:18,436.436 INFO    ] No camera update needed
[2026-06-27 17:31:18,438.438 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:31:18,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:31:18,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:31:18,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:31:20,483.483 INFO    ] ================================================
[2026-06-27 17:31:20,498.498 INFO    ] Launching Daemon at Sat Jun 27 17:31:20 IST 2026
[2026-06-27 17:31:20,509.509 INFO    ] ================================================
[2026-06-27 17:31:20,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:31:20
[2026-06-27 17:31:21,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:31:21,319.319 INFO    ] Initializing speech engine...
[2026-06-27 17:31:21,330.330 INFO    ] 2026-06-27 17:31:21
[2026-06-27 17:31:21,533.533 INFO    ] 2026-06-27 17:31:21
[2026-06-27 17:31:21,563.563 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:31:21,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:31:21,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:31:21,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:31:21,974.974 INFO    ] time= 27/06/2026 17:31:21
[2026-06-27 17:31:21,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:31:21,982.982 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:31:22,048.048 INFO    ] No existing commands found in stream
[2026-06-27 17:31:27,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:31:27,060.060 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-27 17:31:30,989.989 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 17:31:30,990.990 INFO    ] Checking for system updates...
[2026-06-27 17:31:31,012.012 INFO    ] 200
[2026-06-27 17:31:31,013.013 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:31:31,046.046 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:31:31,047.047 INFO    ] No update needed
[2026-06-27 17:31:31,048.048 INFO    ] Checking for camera pi updates...
[2026-06-27 17:31:31,069.069 INFO    ] 200
[2026-06-27 17:31:31,070.070 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:31:31,096.096 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:31:31,151.151 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:31:31,152.152 INFO    ] No camera update needed
[2026-06-27 17:31:31,154.154 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:31:31,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:31:31,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:31:31,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:31:33,192.192 INFO    ] ================================================
[2026-06-27 17:31:33,207.207 INFO    ] Launching Daemon at Sat Jun 27 17:31:33 IST 2026
[2026-06-27 17:31:33,218.218 INFO    ] ================================================
[2026-06-27 17:31:33,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:31:33
[2026-06-27 17:31:33,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:31:34,062.062 INFO    ] Initializing speech engine...
[2026-06-27 17:31:34,066.066 INFO    ] 2026-06-27 17:31:34
[2026-06-27 17:31:34,286.286 INFO    ] 2026-06-27 17:31:34
[2026-06-27 17:31:34,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:31:34,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:31:34,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:31:34,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:31:34,700.700 INFO    ] time= 27/06/2026 17:31:34
[2026-06-27 17:31:34,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:31:34,739.739 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:31:34,806.806 INFO    ] No existing commands found in stream
[2026-06-27 17:31:39,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:31:39,824.824 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-27 17:31:42,518.518 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 17:31:42,519.519 INFO    ] Checking for system updates...
[2026-06-27 17:31:42,540.540 INFO    ] 200
[2026-06-27 17:31:42,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:31:42,572.572 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:31:42,573.573 INFO    ] No update needed
[2026-06-27 17:31:42,575.575 INFO    ] Checking for camera pi updates...
[2026-06-27 17:31:42,595.595 INFO    ] 200
[2026-06-27 17:31:42,597.597 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:31:42,621.621 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:31:42,667.667 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:31:42,668.668 INFO    ] No camera update needed
[2026-06-27 17:31:42,670.670 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:31:42,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:31:42,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:31:42,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:31:44,715.715 INFO    ] ================================================
[2026-06-27 17:31:44,729.729 INFO    ] Launching Daemon at Sat Jun 27 17:31:44 IST 2026
[2026-06-27 17:31:44,740.740 INFO    ] ================================================
[2026-06-27 17:31:45,075.075 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:31:45
[2026-06-27 17:31:45,395.395 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:31:45,537.537 INFO    ] Initializing speech engine...
[2026-06-27 17:31:45,542.542 INFO    ] 2026-06-27 17:31:45
[2026-06-27 17:31:45,748.748 INFO    ] 2026-06-27 17:31:45
[2026-06-27 17:31:45,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:31:45,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:31:45,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:31:46,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:31:46,169.169 INFO    ] time= 27/06/2026 17:31:46
[2026-06-27 17:31:46,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:31:46,200.200 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:31:46,290.290 INFO    ] No existing commands found in stream
[2026-06-27 17:31:51,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:31:51,302.302 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-27 17:31:53,032.032 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 17:31:53,034.034 INFO    ] Checking for system updates...
[2026-06-27 17:31:53,054.054 INFO    ] 200
[2026-06-27 17:31:53,056.056 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:31:53,089.089 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:31:53,090.090 INFO    ] No update needed
[2026-06-27 17:31:53,091.091 INFO    ] Checking for camera pi updates...
[2026-06-27 17:31:53,113.113 INFO    ] 200
[2026-06-27 17:31:53,114.114 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:31:53,139.139 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:31:53,186.186 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:31:53,191.191 INFO    ] No camera update needed
[2026-06-27 17:31:53,192.192 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:31:53,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:31:53,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:31:53,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:31:55,242.242 INFO    ] ================================================
[2026-06-27 17:31:55,258.258 INFO    ] Launching Daemon at Sat Jun 27 17:31:55 IST 2026
[2026-06-27 17:31:55,268.268 INFO    ] ================================================
[2026-06-27 17:31:55,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:31:55
[2026-06-27 17:31:55,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:31:56,148.148 INFO    ] Initializing speech engine...
[2026-06-27 17:31:56,154.154 INFO    ] 2026-06-27 17:31:56
[2026-06-27 17:31:56,368.368 INFO    ] 2026-06-27 17:31:56
[2026-06-27 17:31:56,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:31:56,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:31:56,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:31:56,739.739 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:31:56,792.792 INFO    ] time= 27/06/2026 17:31:56
[2026-06-27 17:31:56,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:31:56,820.820 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:31:56,888.888 INFO    ] No existing commands found in stream
[2026-06-27 17:32:01,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:32:01,918.918 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-27 17:32:03,811.811 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 17:32:03,812.812 INFO    ] Checking for system updates...
[2026-06-27 17:32:03,835.835 INFO    ] 200
[2026-06-27 17:32:03,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:32:03,868.868 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:32:03,870.870 INFO    ] No update needed
[2026-06-27 17:32:03,871.871 INFO    ] Checking for camera pi updates...
[2026-06-27 17:32:03,892.892 INFO    ] 200
[2026-06-27 17:32:03,893.893 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:32:03,919.919 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:32:03,965.965 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:32:03,967.967 INFO    ] No camera update needed
[2026-06-27 17:32:03,968.968 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:32:03,969.969 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:32:03,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:32:03,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:32:06,015.015 INFO    ] ================================================
[2026-06-27 17:32:06,030.030 INFO    ] Launching Daemon at Sat Jun 27 17:32:06 IST 2026
[2026-06-27 17:32:06,040.040 INFO    ] ================================================
[2026-06-27 17:32:06,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:32:06
[2026-06-27 17:32:06,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:32:06,883.883 INFO    ] Initializing speech engine...
[2026-06-27 17:32:06,888.888 INFO    ] 2026-06-27 17:32:06
[2026-06-27 17:32:07,099.099 INFO    ] 2026-06-27 17:32:07
[2026-06-27 17:32:07,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:32:07,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:32:07,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:32:07,473.473 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:32:07,526.526 INFO    ] time= 27/06/2026 17:32:07
[2026-06-27 17:32:07,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:32:07,556.556 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:32:07,624.624 INFO    ] No existing commands found in stream
[2026-06-27 17:32:12,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:32:12,641.641 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-27 17:32:15,169.169 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 17:32:15,170.170 INFO    ] Checking for system updates...
[2026-06-27 17:32:15,191.191 INFO    ] 200
[2026-06-27 17:32:15,193.193 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:32:15,226.226 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:32:15,227.227 INFO    ] No update needed
[2026-06-27 17:32:15,229.229 INFO    ] Checking for camera pi updates...
[2026-06-27 17:32:15,250.250 INFO    ] 200
[2026-06-27 17:32:15,251.251 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:32:15,279.279 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:32:15,325.325 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:32:15,327.327 INFO    ] No camera update needed
[2026-06-27 17:32:15,328.328 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:32:15,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:32:15,333.333 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:32:15,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:32:17,375.375 INFO    ] ================================================
[2026-06-27 17:32:17,390.390 INFO    ] Launching Daemon at Sat Jun 27 17:32:17 IST 2026
[2026-06-27 17:32:17,401.401 INFO    ] ================================================
[2026-06-27 17:32:17,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:32:17
[2026-06-27 17:32:18,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:32:18,183.183 INFO    ] Initializing speech engine...
[2026-06-27 17:32:18,189.189 INFO    ] 2026-06-27 17:32:18
[2026-06-27 17:32:18,392.392 INFO    ] 2026-06-27 17:32:18
[2026-06-27 17:32:18,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:32:18,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:32:18,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:32:18,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:32:18,808.808 INFO    ] time= 27/06/2026 17:32:18
[2026-06-27 17:32:18,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:32:18,838.838 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:32:18,904.904 INFO    ] No existing commands found in stream
[2026-06-27 17:32:23,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:32:23,916.916 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-27 17:32:27,593.593 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 17:32:27,594.594 INFO    ] Checking for system updates...
[2026-06-27 17:32:27,616.616 INFO    ] 200
[2026-06-27 17:32:27,618.618 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:32:27,648.648 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:32:27,649.649 INFO    ] No update needed
[2026-06-27 17:32:27,650.650 INFO    ] Checking for camera pi updates...
[2026-06-27 17:32:27,670.670 INFO    ] 200
[2026-06-27 17:32:27,672.672 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:32:27,696.696 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:32:27,738.738 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:32:27,740.740 INFO    ] No camera update needed
[2026-06-27 17:32:27,741.741 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:32:27,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:32:27,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:32:27,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:32:29,789.789 INFO    ] ================================================
[2026-06-27 17:32:29,804.804 INFO    ] Launching Daemon at Sat Jun 27 17:32:29 IST 2026
[2026-06-27 17:32:29,815.815 INFO    ] ================================================
[2026-06-27 17:32:30,155.155 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:32:30
[2026-06-27 17:32:30,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:32:30,612.612 INFO    ] Initializing speech engine...
[2026-06-27 17:32:30,617.617 INFO    ] 2026-06-27 17:32:30
[2026-06-27 17:32:30,823.823 INFO    ] 2026-06-27 17:32:30
[2026-06-27 17:32:30,853.853 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:32:30,978.978 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:32:31,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:32:31,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:32:31,247.247 INFO    ] time= 27/06/2026 17:32:31
[2026-06-27 17:32:31,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:32:31,282.282 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:32:31,350.350 INFO    ] No existing commands found in stream
[2026-06-27 17:32:36,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:32:36,362.362 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-27 17:32:39,241.241 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 17:32:39,243.243 INFO    ] Checking for system updates...
[2026-06-27 17:32:39,264.264 INFO    ] 200
[2026-06-27 17:32:39,265.265 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:32:39,298.298 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:32:39,300.300 INFO    ] No update needed
[2026-06-27 17:32:39,301.301 INFO    ] Checking for camera pi updates...
[2026-06-27 17:32:39,323.323 INFO    ] 200
[2026-06-27 17:32:39,325.325 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:32:39,348.348 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:32:39,393.393 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:32:39,395.395 INFO    ] No camera update needed
[2026-06-27 17:32:39,396.396 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:32:39,397.397 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:32:39,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:32:39,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:32:41,444.444 INFO    ] ================================================
[2026-06-27 17:32:41,459.459 INFO    ] Launching Daemon at Sat Jun 27 17:32:41 IST 2026
[2026-06-27 17:32:41,470.470 INFO    ] ================================================
[2026-06-27 17:32:41,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:32:41
[2026-06-27 17:32:42,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:32:42,295.295 INFO    ] Initializing speech engine...
[2026-06-27 17:32:42,301.301 INFO    ] 2026-06-27 17:32:42
[2026-06-27 17:32:42,505.505 INFO    ] 2026-06-27 17:32:42
[2026-06-27 17:32:42,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:32:42,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:32:42,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:32:42,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:32:42,943.943 INFO    ] time= 27/06/2026 17:32:42
[2026-06-27 17:32:42,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:32:42,950.950 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:32:43,016.016 INFO    ] No existing commands found in stream
[2026-06-27 17:32:48,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:32:48,028.028 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-27 17:32:50,601.601 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 17:32:50,603.603 INFO    ] Checking for system updates...
[2026-06-27 17:32:50,625.625 INFO    ] 200
[2026-06-27 17:32:50,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:32:50,658.658 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:32:50,659.659 INFO    ] No update needed
[2026-06-27 17:32:50,660.660 INFO    ] Checking for camera pi updates...
[2026-06-27 17:32:50,681.681 INFO    ] 200
[2026-06-27 17:32:50,683.683 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:32:50,706.706 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:32:50,855.855 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:32:50,856.856 INFO    ] No camera update needed
[2026-06-27 17:32:50,858.858 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:32:50,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:32:50,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:32:50,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:32:52,904.904 INFO    ] ================================================
[2026-06-27 17:32:52,920.920 INFO    ] Launching Daemon at Sat Jun 27 17:32:52 IST 2026
[2026-06-27 17:32:52,930.930 INFO    ] ================================================
[2026-06-27 17:32:53,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:32:53
[2026-06-27 17:32:53,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:32:53,731.731 INFO    ] Initializing speech engine...
[2026-06-27 17:32:53,736.736 INFO    ] 2026-06-27 17:32:53
[2026-06-27 17:32:53,951.951 INFO    ] 2026-06-27 17:32:53
[2026-06-27 17:32:53,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:32:54,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:32:54,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:32:54,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:32:54,368.368 INFO    ] time= 27/06/2026 17:32:54
[2026-06-27 17:32:54,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:32:54,398.398 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:32:54,465.465 INFO    ] No existing commands found in stream
[2026-06-27 17:32:59,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:32:59,477.477 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-27 17:33:02,167.167 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 17:33:02,169.169 INFO    ] Checking for system updates...
[2026-06-27 17:33:02,195.195 INFO    ] 200
[2026-06-27 17:33:02,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:33:02,240.240 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:33:02,241.241 INFO    ] No update needed
[2026-06-27 17:33:02,243.243 INFO    ] Checking for camera pi updates...
[2026-06-27 17:33:02,267.267 INFO    ] 200
[2026-06-27 17:33:02,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:33:02,298.298 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:33:02,327.327 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:33:02,328.328 INFO    ] No camera update needed
[2026-06-27 17:33:02,330.330 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:33:02,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:33:02,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:33:02,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:33:04,378.378 INFO    ] ================================================
[2026-06-27 17:33:04,394.394 INFO    ] Launching Daemon at Sat Jun 27 17:33:04 IST 2026
[2026-06-27 17:33:04,405.405 INFO    ] ================================================
[2026-06-27 17:33:04,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:33:04
[2026-06-27 17:33:05,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:33:05,224.224 INFO    ] Initializing speech engine...
[2026-06-27 17:33:05,229.229 INFO    ] 2026-06-27 17:33:05
[2026-06-27 17:33:05,433.433 INFO    ] 2026-06-27 17:33:05
[2026-06-27 17:33:05,462.462 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:33:05,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:33:05,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:33:05,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:33:05,833.833 INFO    ] time= 27/06/2026 17:33:05
[2026-06-27 17:33:05,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:33:05,906.906 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:33:05,977.977 INFO    ] No existing commands found in stream
[2026-06-27 17:33:10,986.986 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:33:10,989.989 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-27 17:33:12,542.542 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 17:33:12,544.544 INFO    ] Checking for system updates...
[2026-06-27 17:33:12,565.565 INFO    ] 200
[2026-06-27 17:33:12,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:33:12,599.599 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:33:12,600.600 INFO    ] No update needed
[2026-06-27 17:33:12,601.601 INFO    ] Checking for camera pi updates...
[2026-06-27 17:33:12,622.622 INFO    ] 200
[2026-06-27 17:33:12,623.623 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:33:12,647.647 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:33:12,689.689 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:33:12,691.691 INFO    ] No camera update needed
[2026-06-27 17:33:12,692.692 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:33:12,693.693 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:33:12,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:33:12,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:33:14,745.745 INFO    ] ================================================
[2026-06-27 17:33:14,760.760 INFO    ] Launching Daemon at Sat Jun 27 17:33:14 IST 2026
[2026-06-27 17:33:14,771.771 INFO    ] ================================================
[2026-06-27 17:33:15,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:33:15
[2026-06-27 17:33:15,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:33:15,559.559 INFO    ] Initializing speech engine...
[2026-06-27 17:33:15,564.564 INFO    ] 2026-06-27 17:33:15
[2026-06-27 17:33:15,781.781 INFO    ] 2026-06-27 17:33:15
[2026-06-27 17:33:15,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:33:15,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:33:15,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:33:16,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:33:16,195.195 INFO    ] time= 27/06/2026 17:33:16
[2026-06-27 17:33:16,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:33:16,233.233 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:33:16,299.299 INFO    ] No existing commands found in stream
[2026-06-27 17:33:21,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:33:21,312.312 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-27 17:33:24,276.276 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 17:33:24,278.278 INFO    ] Checking for system updates...
[2026-06-27 17:33:24,299.299 INFO    ] 200
[2026-06-27 17:33:24,300.300 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:33:24,332.332 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:33:24,333.333 INFO    ] No update needed
[2026-06-27 17:33:24,335.335 INFO    ] Checking for camera pi updates...
[2026-06-27 17:33:24,356.356 INFO    ] 200
[2026-06-27 17:33:24,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:33:24,382.382 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:33:24,434.434 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:33:24,436.436 INFO    ] No camera update needed
[2026-06-27 17:33:24,437.437 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:33:24,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:33:24,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:33:24,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:33:26,485.485 INFO    ] ================================================
[2026-06-27 17:33:26,499.499 INFO    ] Launching Daemon at Sat Jun 27 17:33:26 IST 2026
[2026-06-27 17:33:26,510.510 INFO    ] ================================================
[2026-06-27 17:33:26,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:33:26
[2026-06-27 17:33:27,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:33:27,316.316 INFO    ] Initializing speech engine...
[2026-06-27 17:33:27,329.329 INFO    ] 2026-06-27 17:33:27
[2026-06-27 17:33:27,544.544 INFO    ] 2026-06-27 17:33:27
[2026-06-27 17:33:27,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:33:27,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:33:27,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:33:27,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:33:27,973.973 INFO    ] time= 27/06/2026 17:33:27
[2026-06-27 17:33:28,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:33:28,036.036 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:33:28,106.106 INFO    ] No existing commands found in stream
[2026-06-27 17:33:33,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:33:33,119.119 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-27 17:33:34,097.097 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 17:33:34,099.099 INFO    ] Checking for system updates...
[2026-06-27 17:33:34,122.122 INFO    ] 200
[2026-06-27 17:33:34,123.123 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:33:34,155.155 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:33:34,156.156 INFO    ] No update needed
[2026-06-27 17:33:34,157.157 INFO    ] Checking for camera pi updates...
[2026-06-27 17:33:34,178.178 INFO    ] 200
[2026-06-27 17:33:34,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:33:34,204.204 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:33:34,251.251 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:33:34,253.253 INFO    ] No camera update needed
[2026-06-27 17:33:34,254.254 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:33:34,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:33:34,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:33:34,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:33:36,299.299 INFO    ] ================================================
[2026-06-27 17:33:36,314.314 INFO    ] Launching Daemon at Sat Jun 27 17:33:36 IST 2026
[2026-06-27 17:33:36,324.324 INFO    ] ================================================
[2026-06-27 17:33:36,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:33:36
[2026-06-27 17:33:36,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:33:37,116.116 INFO    ] Initializing speech engine...
[2026-06-27 17:33:37,121.121 INFO    ] 2026-06-27 17:33:37
[2026-06-27 17:33:37,326.326 INFO    ] 2026-06-27 17:33:37
[2026-06-27 17:33:37,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:33:37,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:33:37,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:33:37,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:33:37,744.744 INFO    ] time= 27/06/2026 17:33:37
[2026-06-27 17:33:37,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:33:37,777.777 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:33:37,845.845 INFO    ] No existing commands found in stream
[2026-06-27 17:33:42,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:33:42,856.856 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-27 17:33:46,145.145 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 17:33:46,147.147 INFO    ] Checking for system updates...
[2026-06-27 17:33:46,169.169 INFO    ] 200
[2026-06-27 17:33:46,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:33:46,201.201 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:33:46,202.202 INFO    ] No update needed
[2026-06-27 17:33:46,204.204 INFO    ] Checking for camera pi updates...
[2026-06-27 17:33:46,223.223 INFO    ] 200
[2026-06-27 17:33:46,225.225 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:33:46,249.249 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:33:46,303.303 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:33:46,304.304 INFO    ] No camera update needed
[2026-06-27 17:33:46,306.306 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:33:46,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:33:46,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:33:46,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:33:48,353.353 INFO    ] ================================================
[2026-06-27 17:33:48,368.368 INFO    ] Launching Daemon at Sat Jun 27 17:33:48 IST 2026
[2026-06-27 17:33:48,378.378 INFO    ] ================================================
[2026-06-27 17:33:48,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:33:48
[2026-06-27 17:33:49,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:33:49,234.234 INFO    ] Initializing speech engine...
[2026-06-27 17:33:49,239.239 INFO    ] 2026-06-27 17:33:49
[2026-06-27 17:33:49,446.446 INFO    ] 2026-06-27 17:33:49
[2026-06-27 17:33:49,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:33:49,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:33:49,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:33:49,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:33:49,863.863 INFO    ] time= 27/06/2026 17:33:49
[2026-06-27 17:33:49,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:33:49,893.893 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:33:49,959.959 INFO    ] No existing commands found in stream
[2026-06-27 17:33:54,968.968 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:33:54,971.971 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-27 17:33:55,732.732 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 17:33:55,733.733 INFO    ] Checking for system updates...
[2026-06-27 17:33:55,755.755 INFO    ] 200
[2026-06-27 17:33:55,757.757 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:33:55,789.789 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:33:55,791.791 INFO    ] No update needed
[2026-06-27 17:33:55,792.792 INFO    ] Checking for camera pi updates...
[2026-06-27 17:33:55,812.812 INFO    ] 200
[2026-06-27 17:33:55,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:33:55,837.837 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:33:55,863.863 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:33:55,865.865 INFO    ] No camera update needed
[2026-06-27 17:33:55,866.866 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:33:55,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:33:55,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:33:55,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:33:57,912.912 INFO    ] ================================================
[2026-06-27 17:33:57,928.928 INFO    ] Launching Daemon at Sat Jun 27 17:33:57 IST 2026
[2026-06-27 17:33:57,938.938 INFO    ] ================================================
[2026-06-27 17:33:58,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:33:58
[2026-06-27 17:33:58,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:33:58,744.744 INFO    ] Initializing speech engine...
[2026-06-27 17:33:58,754.754 INFO    ] 2026-06-27 17:33:58
[2026-06-27 17:33:58,963.963 INFO    ] 2026-06-27 17:33:58
[2026-06-27 17:33:58,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:33:59,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:33:59,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:33:59,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:33:59,385.385 INFO    ] time= 27/06/2026 17:33:59
[2026-06-27 17:33:59,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:33:59,414.414 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:33:59,482.482 INFO    ] No existing commands found in stream
[2026-06-27 17:34:04,496.496 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:34:04,499.499 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-27 17:34:07,195.195 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 17:34:07,197.197 INFO    ] Checking for system updates...
[2026-06-27 17:34:07,219.219 INFO    ] 200
[2026-06-27 17:34:07,220.220 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:34:07,253.253 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:34:07,255.255 INFO    ] No update needed
[2026-06-27 17:34:07,256.256 INFO    ] Checking for camera pi updates...
[2026-06-27 17:34:07,276.276 INFO    ] 200
[2026-06-27 17:34:07,277.277 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:34:07,300.300 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:34:07,346.346 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:34:07,347.347 INFO    ] No camera update needed
[2026-06-27 17:34:07,349.349 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:34:07,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:34:07,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:34:07,356.356 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:34:09,395.395 INFO    ] ================================================
[2026-06-27 17:34:09,410.410 INFO    ] Launching Daemon at Sat Jun 27 17:34:09 IST 2026
[2026-06-27 17:34:09,421.421 INFO    ] ================================================
[2026-06-27 17:34:09,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:34:09
[2026-06-27 17:34:10,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:34:10,276.276 INFO    ] Initializing speech engine...
[2026-06-27 17:34:10,280.280 INFO    ] 2026-06-27 17:34:10
[2026-06-27 17:34:10,497.497 INFO    ] 2026-06-27 17:34:10
[2026-06-27 17:34:10,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:34:10,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:34:10,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:34:10,851.851 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:34:10,919.919 INFO    ] time= 27/06/2026 17:34:10
[2026-06-27 17:34:10,944.944 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:34:10,950.950 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:34:11,018.018 INFO    ] No existing commands found in stream
[2026-06-27 17:34:16,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:34:16,052.052 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-27 17:34:17,486.486 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 17:34:17,488.488 INFO    ] Checking for system updates...
[2026-06-27 17:34:17,508.508 INFO    ] 200
[2026-06-27 17:34:17,510.510 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:34:17,540.540 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:34:17,542.542 INFO    ] No update needed
[2026-06-27 17:34:17,543.543 INFO    ] Checking for camera pi updates...
[2026-06-27 17:34:17,564.564 INFO    ] 200
[2026-06-27 17:34:17,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:34:17,588.588 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:34:17,630.630 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:34:17,631.631 INFO    ] No camera update needed
[2026-06-27 17:34:17,632.632 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:34:17,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:34:17,636.636 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:34:17,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:34:19,678.678 INFO    ] ================================================
[2026-06-27 17:34:19,694.694 INFO    ] Launching Daemon at Sat Jun 27 17:34:19 IST 2026
[2026-06-27 17:34:19,704.704 INFO    ] ================================================
[2026-06-27 17:34:20,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:34:20
[2026-06-27 17:34:20,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:34:20,494.494 INFO    ] Initializing speech engine...
[2026-06-27 17:34:20,498.498 INFO    ] 2026-06-27 17:34:20
[2026-06-27 17:34:20,707.707 INFO    ] 2026-06-27 17:34:20
[2026-06-27 17:34:20,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:34:20,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:34:20,924.924 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:34:21,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:34:21,061.061 INFO    ] time= 27/06/2026 17:34:21
[2026-06-27 17:34:21,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:34:21,162.162 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:34:21,242.242 INFO    ] No existing commands found in stream
[2026-06-27 17:34:26,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:34:26,255.255 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-27 17:34:30,269.269 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 17:34:30,270.270 INFO    ] Checking for system updates...
[2026-06-27 17:34:30,291.291 INFO    ] 200
[2026-06-27 17:34:30,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:34:30,322.322 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:34:30,324.324 INFO    ] No update needed
[2026-06-27 17:34:30,325.325 INFO    ] Checking for camera pi updates...
[2026-06-27 17:34:30,345.345 INFO    ] 200
[2026-06-27 17:34:30,346.346 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:34:30,371.371 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:34:30,422.422 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:34:30,423.423 INFO    ] No camera update needed
[2026-06-27 17:34:30,424.424 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:34:30,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:34:30,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:34:30,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:34:32,462.462 INFO    ] ================================================
[2026-06-27 17:34:32,472.472 INFO    ] Launching Daemon at Sat Jun 27 17:34:32 IST 2026
[2026-06-27 17:34:32,479.479 INFO    ] ================================================
[2026-06-27 17:34:32,824.824 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:34:32
[2026-06-27 17:34:33,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:34:33,269.269 INFO    ] Initializing speech engine...
[2026-06-27 17:34:33,273.273 INFO    ] 2026-06-27 17:34:33
[2026-06-27 17:34:33,493.493 INFO    ] 2026-06-27 17:34:33
[2026-06-27 17:34:33,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:34:33,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:34:33,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:34:33,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:34:33,923.923 INFO    ] time= 27/06/2026 17:34:33
[2026-06-27 17:34:33,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:34:33,985.985 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:34:34,061.061 INFO    ] No existing commands found in stream
[2026-06-27 17:34:39,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:34:39,073.073 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-27 17:34:42,065.065 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 17:34:42,067.067 INFO    ] Checking for system updates...
[2026-06-27 17:34:42,088.088 INFO    ] 200
[2026-06-27 17:34:42,090.090 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:34:42,119.119 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:34:42,121.121 INFO    ] No update needed
[2026-06-27 17:34:42,122.122 INFO    ] Checking for camera pi updates...
[2026-06-27 17:34:42,142.142 INFO    ] 200
[2026-06-27 17:34:42,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:34:42,166.166 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:34:42,213.213 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:34:42,214.214 INFO    ] No camera update needed
[2026-06-27 17:34:42,216.216 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:34:42,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:34:42,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:34:42,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:34:44,260.260 INFO    ] ================================================
[2026-06-27 17:34:44,276.276 INFO    ] Launching Daemon at Sat Jun 27 17:34:44 IST 2026
[2026-06-27 17:34:44,287.287 INFO    ] ================================================
[2026-06-27 17:34:44,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:34:44
[2026-06-27 17:34:44,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:34:45,138.138 INFO    ] Initializing speech engine...
[2026-06-27 17:34:45,143.143 INFO    ] 2026-06-27 17:34:45
[2026-06-27 17:34:45,351.351 INFO    ] 2026-06-27 17:34:45
[2026-06-27 17:34:45,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:34:45,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:34:45,573.573 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:34:45,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:34:45,770.770 INFO    ] time= 27/06/2026 17:34:45
[2026-06-27 17:34:45,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:34:45,800.800 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:34:45,867.867 INFO    ] No existing commands found in stream
[2026-06-27 17:34:50,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:34:50,895.895 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-27 17:34:52,827.827 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 17:34:52,829.829 INFO    ] Checking for system updates...
[2026-06-27 17:34:52,850.850 INFO    ] 200
[2026-06-27 17:34:52,852.852 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:34:52,884.884 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:34:52,885.885 INFO    ] No update needed
[2026-06-27 17:34:52,887.887 INFO    ] Checking for camera pi updates...
[2026-06-27 17:34:52,909.909 INFO    ] 200
[2026-06-27 17:34:52,910.910 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:34:52,935.935 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:34:53,074.074 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:34:53,075.075 INFO    ] No camera update needed
[2026-06-27 17:34:53,077.077 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:34:53,078.078 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:34:53,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:34:53,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:34:55,126.126 INFO    ] ================================================
[2026-06-27 17:34:55,141.141 INFO    ] Launching Daemon at Sat Jun 27 17:34:55 IST 2026
[2026-06-27 17:34:55,151.151 INFO    ] ================================================
[2026-06-27 17:34:55,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:34:55
[2026-06-27 17:34:55,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:34:55,960.960 INFO    ] Initializing speech engine...
[2026-06-27 17:34:55,963.963 INFO    ] 2026-06-27 17:34:55
[2026-06-27 17:34:56,157.157 INFO    ] 2026-06-27 17:34:56
[2026-06-27 17:34:56,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:34:56,358.358 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:34:56,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:34:56,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:34:56,638.638 INFO    ] time= 27/06/2026 17:34:56
[2026-06-27 17:34:56,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:34:56,678.678 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:34:56,748.748 INFO    ] No existing commands found in stream
[2026-06-27 17:35:01,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:35:01,757.757 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-27 17:35:04,872.872 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 17:35:04,873.873 INFO    ] Checking for system updates...
[2026-06-27 17:35:04,895.895 INFO    ] 200
[2026-06-27 17:35:04,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:35:04,927.927 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:35:04,928.928 INFO    ] No update needed
[2026-06-27 17:35:04,929.929 INFO    ] Checking for camera pi updates...
[2026-06-27 17:35:04,949.949 INFO    ] 200
[2026-06-27 17:35:04,950.950 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:35:04,975.975 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:35:05,021.021 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:35:05,022.022 INFO    ] No camera update needed
[2026-06-27 17:35:05,024.024 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:35:05,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:35:05,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:35:05,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:35:07,072.072 INFO    ] ================================================
[2026-06-27 17:35:07,087.087 INFO    ] Launching Daemon at Sat Jun 27 17:35:07 IST 2026
[2026-06-27 17:35:07,097.097 INFO    ] ================================================
[2026-06-27 17:35:07,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:35:07
[2026-06-27 17:35:07,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:35:07,955.955 INFO    ] Initializing speech engine...
[2026-06-27 17:35:07,960.960 INFO    ] 2026-06-27 17:35:07
[2026-06-27 17:35:08,165.165 INFO    ] 2026-06-27 17:35:08
[2026-06-27 17:35:08,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:35:08,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:35:08,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:35:08,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:35:08,585.585 INFO    ] time= 27/06/2026 17:35:08
[2026-06-27 17:35:08,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:35:08,616.616 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:35:08,684.684 INFO    ] No existing commands found in stream
[2026-06-27 17:35:13,693.693 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:35:13,696.696 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-27 17:35:16,846.846 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 17:35:16,847.847 INFO    ] Checking for system updates...
[2026-06-27 17:35:16,868.868 INFO    ] 200
[2026-06-27 17:35:16,870.870 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:35:16,900.900 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:35:16,902.902 INFO    ] No update needed
[2026-06-27 17:35:16,903.903 INFO    ] Checking for camera pi updates...
[2026-06-27 17:35:16,923.923 INFO    ] 200
[2026-06-27 17:35:16,925.925 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:35:16,948.948 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:35:16,978.978 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:35:16,979.979 INFO    ] No camera update needed
[2026-06-27 17:35:16,981.981 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:35:16,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:35:16,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:35:16,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:35:19,027.027 INFO    ] ================================================
[2026-06-27 17:35:19,043.043 INFO    ] Launching Daemon at Sat Jun 27 17:35:19 IST 2026
[2026-06-27 17:35:19,054.054 INFO    ] ================================================
[2026-06-27 17:35:19,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:35:19
[2026-06-27 17:35:19,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:35:19,850.850 INFO    ] Initializing speech engine...
[2026-06-27 17:35:19,855.855 INFO    ] 2026-06-27 17:35:19
[2026-06-27 17:35:20,063.063 INFO    ] 2026-06-27 17:35:20
[2026-06-27 17:35:20,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:35:20,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:35:20,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:35:20,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:35:20,484.484 INFO    ] time= 27/06/2026 17:35:20
[2026-06-27 17:35:20,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:35:20,514.514 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:35:20,581.581 INFO    ] No existing commands found in stream
[2026-06-27 17:35:25,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:35:25,599.599 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-27 17:35:26,600.600 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 17:35:26,602.602 INFO    ] Checking for system updates...
[2026-06-27 17:35:26,624.624 INFO    ] 200
[2026-06-27 17:35:26,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:35:26,658.658 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:35:26,659.659 INFO    ] No update needed
[2026-06-27 17:35:26,661.661 INFO    ] Checking for camera pi updates...
[2026-06-27 17:35:26,684.684 INFO    ] 200
[2026-06-27 17:35:26,686.686 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:35:26,710.710 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:35:26,743.743 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:35:26,744.744 INFO    ] No camera update needed
[2026-06-27 17:35:26,746.746 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:35:26,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:35:26,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:35:26,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:35:28,793.793 INFO    ] ================================================
[2026-06-27 17:35:28,808.808 INFO    ] Launching Daemon at Sat Jun 27 17:35:28 IST 2026
[2026-06-27 17:35:28,819.819 INFO    ] ================================================
[2026-06-27 17:35:29,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:35:29
[2026-06-27 17:35:29,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:35:29,649.649 INFO    ] Initializing speech engine...
[2026-06-27 17:35:29,657.657 INFO    ] 2026-06-27 17:35:29
[2026-06-27 17:35:29,875.875 INFO    ] 2026-06-27 17:35:29
[2026-06-27 17:35:29,905.905 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:35:30,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:35:30,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:35:30,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:35:30,314.314 INFO    ] time= 27/06/2026 17:35:30
[2026-06-27 17:35:30,347.347 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:35:30,349.349 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:35:30,424.424 INFO    ] No existing commands found in stream
[2026-06-27 17:35:35,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:35:35,437.437 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-27 17:35:36,709.709 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 17:35:36,710.710 INFO    ] Checking for system updates...
[2026-06-27 17:35:36,733.733 INFO    ] 200
[2026-06-27 17:35:36,735.735 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:35:36,766.766 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:35:36,767.767 INFO    ] No update needed
[2026-06-27 17:35:36,769.769 INFO    ] Checking for camera pi updates...
[2026-06-27 17:35:36,788.788 INFO    ] 200
[2026-06-27 17:35:36,790.790 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:35:36,815.815 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:35:36,843.843 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:35:36,844.844 INFO    ] No camera update needed
[2026-06-27 17:35:36,846.846 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:35:36,847.847 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:35:36,850.850 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:35:36,853.853 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:35:38,893.893 INFO    ] ================================================
[2026-06-27 17:35:38,909.909 INFO    ] Launching Daemon at Sat Jun 27 17:35:38 IST 2026
[2026-06-27 17:35:38,921.921 INFO    ] ================================================
[2026-06-27 17:35:39,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:35:39
[2026-06-27 17:35:39,604.604 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:35:39,738.738 INFO    ] Initializing speech engine...
[2026-06-27 17:35:39,743.743 INFO    ] 2026-06-27 17:35:39
[2026-06-27 17:35:39,935.935 INFO    ] 2026-06-27 17:35:39
[2026-06-27 17:35:39,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:35:40,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:35:40,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:35:40,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:35:40,347.347 INFO    ] time= 27/06/2026 17:35:40
[2026-06-27 17:35:40,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:35:40,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:35:40,527.527 INFO    ] No existing commands found in stream
[2026-06-27 17:35:41,075.075 INFO    ] Received new command: ID=1782561941023-0
[2026-06-27 17:35:41,078.078 INFO    ] process_and_cleanup_command: msg_id=1782561941023-0
[2026-06-27 17:35:41,084.084 INFO    ] is_command_expired: timestamp=2026-06-27T12:05:43.634Z, expiry=30s
[2026-06-27 17:35:41,161.161 INFO    ] Command removed from stream: 1782561941023-0. returning for processing...
[2026-06-27 17:35:41,169.169 INFO    ] ***** get_valid_command
[2026-06-27 17:35:41,174.174 INFO    ] {'timestamp': '2026-06-27T12:05:43.634Z', 'timeout': '10', 'command': 'start-order', 'source': 'webapp', 'data': '{"request_id":"start-order-1782561943634-08jbw4mu3","orderId":"TM06202304260627173454544","is_vending":false}'}
[2026-06-27 17:35:41,207.207 INFO    ] ***** Parsed command data: {'request_id': 'start-order-1782561943634-08jbw4mu3', 'orderId': 'TM06202304260627173454544', 'is_vending': False}
[2026-06-27 17:35:41,210.210 INFO    ] Handling start order...
[2026-06-27 17:35:41,215.215 INFO    ] handle_start_order_command
[2026-06-27 17:35:41,221.221 INFO    ] _send_start_order_success: request_id=start-order-1782561943634-08jbw4mu3, order_id=TM06202304260627173454544
[2026-06-27 17:35:41,224.224 INFO    ] [_send_start_order_success] Adding message to stream: machine:TM06202304
[2026-06-27 17:35:41,284.284 INFO    ] [_send_start_order_success] Message added to stream with ID: 1782561941246-0
[2026-06-27 17:35:41,294.294 INFO    ] ✅ Start-order command succeeded - order locked, waiting for process-order command
[2026-06-27 17:35:41,301.301 INFO    ] Checking for system updates...
[2026-06-27 17:35:41,365.365 INFO    ] 200
[2026-06-27 17:35:41,368.368 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:35:41,408.408 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:35:41,413.413 INFO    ] No update needed
[2026-06-27 17:35:41,426.426 INFO    ] Checking for camera pi updates...
[2026-06-27 17:35:41,459.459 INFO    ] 200
[2026-06-27 17:35:41,474.474 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:35:41,530.530 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:35:41,599.599 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:35:41,600.600 INFO    ] No camera update needed
[2026-06-27 17:35:41,601.601 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:35:41,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:35:41,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:35:41,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:35:43,647.647 INFO    ] ================================================
[2026-06-27 17:35:43,662.662 INFO    ] Launching Daemon at Sat Jun 27 17:35:43 IST 2026
[2026-06-27 17:35:43,672.672 INFO    ] ================================================
[2026-06-27 17:35:44,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:35:44
[2026-06-27 17:35:44,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:35:44,530.530 INFO    ] Initializing speech engine...
[2026-06-27 17:35:44,536.536 INFO    ] 2026-06-27 17:35:44
[2026-06-27 17:35:44,743.743 INFO    ] 2026-06-27 17:35:44
[2026-06-27 17:35:44,772.772 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:35:44,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:35:44,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:35:45,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:35:45,173.173 INFO    ] time= 27/06/2026 17:35:45
[2026-06-27 17:35:45,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:35:45,195.195 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:35:45,263.263 INFO    ] Found 2 existing command(s) in stream
[2026-06-27 17:35:45,265.265 INFO    ] Checking historical command: ID=1782561941246-0
[2026-06-27 17:35:45,291.291 INFO    ] process_and_cleanup_command: msg_id=1782561941246-0
[2026-06-27 17:35:45,303.303 INFO    ] is_command_expired: timestamp=2026-06-27T12:05:41.222476Z, expiry=30s
[2026-06-27 17:35:45,403.403 INFO    ] Command removed from stream: 1782561941246-0. returning for processing...
[2026-06-27 17:35:45,407.407 INFO    ] ***** get_valid_command
[2026-06-27 17:35:45,411.411 INFO    ] {'message_type': 'command_response', 'message': 'start-order success', 'timestamp': '2026-06-27T12:05:41.222476Z', 'imei': 'TM06202304', 'metadata_order_id': 'TM06202304260627173454544', 'metadata_request_id': 'start-order-1782561943634-08jbw4mu3', 'status': 'success'}
[2026-06-27 17:35:45,415.415 INFO    ] Checking historical command: ID=1782561943218-0
[2026-06-27 17:35:45,419.419 INFO    ] process_and_cleanup_command: msg_id=1782561943218-0
[2026-06-27 17:35:45,422.422 INFO    ] is_command_expired: timestamp=2026-06-27T12:05:45.712Z, expiry=30s
[2026-06-27 17:35:45,490.490 INFO    ] Command removed from stream: 1782561943218-0. returning for processing...
[2026-06-27 17:35:45,496.496 INFO    ] ***** get_valid_command
[2026-06-27 17:35:45,500.500 INFO    ] {'data': '{"request_id":"process-order-1782561945711-wwc93z5x1","orderId":"TM06202304260627173454544","is_vending":false,"accessCode":"40277125"}', 'timeout': '60', 'timestamp': '2026-06-27T12:05:45.712Z', 'command': 'process-order', 'source': 'webapp'}
[2026-06-27 17:35:45,504.504 INFO    ] ***** Parsed command data: {'accessCode': '40277125', 'is_vending': False, 'request_id': 'process-order-1782561945711-wwc93z5x1', 'orderId': 'TM06202304260627173454544'}
[2026-06-27 17:35:45,508.508 INFO    ] Handling process order...
[2026-06-27 17:35:45,513.513 INFO    ] Processing process-order command...
[2026-06-27 17:35:45,519.519 INFO    ] 🔍 Lock file Order ID: TM06202304260627173454544, TS: 2026-06-27 17:35:41
[2026-06-27 17:35:45,530.530 INFO    ] ✅ Order lock valid for TM06202304260627173454544
[2026-06-27 17:35:45,534.534 INFO    ] Received access code in process-order, skipping PHP API call
[2026-06-27 17:35:45,540.540 INFO    ] processing access code 40277125 for order TM06202304260627173454544
[2026-06-27 17:35:45,547.547 INFO    ] 🔍 Lock file Order ID: TM06202304260627173454544, TS: 2026-06-27 17:35:41
[2026-06-27 17:35:45,551.551 INFO    ] ✅ Order lock valid for TM06202304260627173454544
[2026-06-27 17:35:45,555.555 INFO    ] 2026-06-27 17:35:45
[2026-06-27 17:35:45,627.627 INFO    ] 200
[2026-06-27 17:35:45,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:35:45,654.654 INFO    ] 40277125
[2026-06-27 17:35:45,680.680 INFO    ] 2026-06-27 17:35:45
[2026-06-27 17:35:45,682.682 INFO    ] session id :867543519
[2026-06-27 17:35:45,685.685 INFO    ] http://localhost:5000/v2/getOrderByAccessCode?access_code=40277125&imei=TM06202304&session_id=867543519
[2026-06-27 17:35:46,344.344 INFO    ] 200
[2026-06-27 17:35:46,346.346 INFO    ] {"msg": "Order Data", "data": {"proposed_sku_json": [{"name": "Pepsi ZeroSugar  300ml", "mrp": "40", "unit_price": 40, "tray_id": "44", "door_id": "2", "offer_id": "", "offer_desc": "", "image_url": "https://images.tinymart.in/product/186059-5330.png", "skuid": "186059", "sku_total": 40, "qty": 1}], "order_id": "TM06202304260627173454544", "invoice_bill": "40", "access_code": "40277125", "bill_amount": "40", "mobile": "9986800349"}, "rstatus": true, "status": true}
[2026-06-27 17:35:46,347.347 INFO    ] 40
[2026-06-27 17:35:46,349.349 INFO    ] TM06202304260627173454544
[2026-06-27 17:35:46,350.350 INFO    ] 9986800349
[2026-06-27 17:35:46,351.351 INFO    ] 2026-06-27 17:35:46
[2026-06-27 17:35:46,353.353 INFO    ] Door Opening for user mobile ending with  zero three four nine 
[2026-06-27 17:35:46,354.354 INFO    ] Door Opening for user mobile ending with  zero three four nine 
[2026-06-27 17:35:46,356.356 INFO    ] be5104b31c3fb1febbeda09fca1dae05
[2026-06-27 17:35:46,357.357 INFO    ] 2026-06-27 17:35:46
[2026-06-27 17:35:46,359.359 INFO    ] playing audio file
[2026-06-27 17:35:46,369.369 INFO    ] 2026-06-27 17:35:46
[2026-06-27 17:35:46,371.371 INFO    ] 2026-06-27 17:35:46
[2026-06-27 17:35:46,374.374 INFO    ] publish_status: order_id=TM06202304260627173454544
[2026-06-27 17:35:46,376.376 INFO    ] [publish_status] Adding message to stream: order:TM06202304260627173454544
[2026-06-27 17:35:46,435.435 INFO    ] [publish_status] Message added to stream with ID: 1782561946406-0
[2026-06-27 17:35:46,437.437 INFO    ] Published to order:TM06202304260627173454544: {'server_status': 'order-started', 'server_response': '{"data": {"bill_amount": "40", "invoice_bill": "40", "access_code": "40277125", "proposed_sku_json": [{"qty": 1, "sku_total": 40, "unit_price": 40, "tray_id": "44", "name": "Pepsi ZeroSugar  300ml", "image_url": "https://images.tinymart.in/product/186059-5330.png", "door_id": "2", "mrp": "40", "offer_desc": "", "offer_id": "", "skuid": "186059"}], "order_id": "TM06202304260627173454544", "mobile": "9986800349"}, "status": true, "msg": "Order Data", "rstatus": true}', 'order_id': 'TM06202304260627173454544', 'timestamp': '2026-06-27T12:05:46.372965Z'} (ID: 1782561946406-0)
[2026-06-27 17:35:46,798.798 INFO    ] {'server_status': 'order-started', 'server_response': {'data': {'bill_amount': '40', 'invoice_bill': '40', 'access_code': '40277125', 'proposed_sku_json': [{'qty': 1, 'sku_total': 40, 'unit_price': 40, 'tray_id': '44', 'name': 'Pepsi ZeroSugar  300ml', 'image_url': 'https://images.tinymart.in/product/186059-5330.png', 'door_id': '2', 'mrp': '40', 'offer_desc': '', 'offer_id': '', 'skuid': '186059'}], 'order_id': 'TM06202304260627173454544', 'mobile': '9986800349'}, 'status': True, 'msg': 'Order Data', 'rstatus': True}, 'order_id': 'TM06202304260627173454544'}
[2026-06-27 17:35:46,800.800 INFO    ] 200
[2026-06-27 17:35:46,801.801 INFO    ] {"data":{"server_status":"order-started","server_response":{"data":{"bill_amount":"40","invoice_bill":"40","access_code":"40277125","proposed_sku_json":[{"qty":1,"sku_total":40,"unit_price":40,"tray_id":"44","name":"Pepsi ZeroSugar  300ml","image_url":"https:\/\/images.tinymart.in\/product\/186059-5330.png","door_id":"2","mrp":"40","offer_desc":"","offer_id":"","skuid":"186059"}],"order_id":"TM06202304260627173454544","mobile":"9986800349"},"status":true,"msg":"Order Data","rstatus":true},"order_id":"TM06202304260627173454544"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-27 17:35:46,803.803 INFO    ] {'data': {'server_status': 'order-started', 'order_id': 'TM06202304260627173454544', 'server_response': {'data': {'bill_amount': '40', 'invoice_bill': '40', 'access_code': '40277125', 'proposed_sku_json': [{'mrp': '40', 'unit_price': 40, 'tray_id': '44', 'name': 'Pepsi ZeroSugar  300ml', 'image_url': 'https://images.tinymart.in/product/186059-5330.png', 'offer_id': '', 'door_id': '2', 'sku_total': 40, 'offer_desc': '', 'qty': 1, 'skuid': '186059'}], 'order_id': 'TM06202304260627173454544', 'mobile': '9986800349'}, 'status': True, 'msg': 'Order Data', 'rstatus': True}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-27 17:35:46,805.805 INFO    ] 2026-06-27 17:35:46
[2026-06-27 17:35:46,830.830 INFO    ] 200
[2026-06-27 17:35:46,832.832 INFO    ] True
[2026-06-27 17:35:46,925.925 INFO    ] 200
[2026-06-27 17:35:46,927.927 INFO    ] {"SectionStatus": {"SubHeader": "Please wait while we process your order", "Note": "", "Header": " Your order is under process  ", "UI_Header": ""}, "voiceNote": "Please Wait", "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionMain": {"Header": "Processing Order"}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "rstatus": false, "status": "False"}
[2026-06-27 17:35:46,929.929 INFO    ] {'SectionMain': {'Header': 'Processing Order'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Note': '', 'Header': ' Your order is under process  '}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'voiceNote': 'Please Wait', 'rstatus': False}
[2026-06-27 17:35:46,930.930 INFO    ] *** process_order ***
[2026-06-27 17:35:47,992.992 INFO    ] 200
[2026-06-27 17:35:47,994.994 INFO    ] {"SectionStatus": {"SubHeader": "Please wait while we process your order", "Note": "", "Header": " Your order is under process  ", "UI_Header": ""}, "voiceNote": "Please Wait", "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionMain": {"Header": "Processing Order"}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "rstatus": false, "status": "False"}
[2026-06-27 17:35:47,996.996 INFO    ] {'SectionMain': {'Header': 'Processing Order'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Note': '', 'Header': ' Your order is under process  '}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'voiceNote': 'Please Wait', 'rstatus': False}
[2026-06-27 17:35:47,998.998 INFO    ] *** process_order ***
[2026-06-27 17:35:49,111.111 INFO    ] 200
[2026-06-27 17:35:49,112.112 INFO    ] {"SectionStatus": {"SubHeader": "Please wait while we process your order", "Note": "", "Header": " Your order is under process  ", "UI_Header": ""}, "voiceNote": "Please Wait", "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "SectionMain": {"Header": "Processing Order"}, "rstatus": true, "delay": 0, "status": "True"}
[2026-06-27 17:35:49,114.114 INFO    ] {'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'status': 'True', 'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Note': '', 'Header': ' Your order is under process  '}, 'delay': 0, 'voiceNote': 'Please Wait', 'rstatus': True}
[2026-06-27 17:35:49,116.116 INFO    ] *** process_order ***
[2026-06-27 17:35:49,117.117 INFO    ] publish_status: order_id=TM06202304260627173454544
[2026-06-27 17:35:49,119.119 INFO    ] [publish_status] Adding message to stream: order:TM06202304260627173454544
[2026-06-27 17:35:49,180.180 INFO    ] [publish_status] Message added to stream with ID: 1782561949151-0
[2026-06-27 17:35:49,182.182 INFO    ] Published to order:TM06202304260627173454544: {'server_status': 'doorOpened', 'server_response': '{"SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "status": "True", "SectionStatus": {"UI_Header": "", "SubHeader": "You can pull the door now.", "Note": "", "Header": " Your order is under process  "}, "delay": 0, "voiceNote": "Door is open...", "rstatus": true}', 'order_id': 'TM06202304260627173454544'} (ID: 1782561949151-0)
[2026-06-27 17:35:50,227.227 INFO    ] 2026-06-27 17:35:50
[2026-06-27 17:35:50,231.231 INFO    ] publish_status: order_id=TM06202304260627173454544
[2026-06-27 17:35:50,235.235 INFO    ] [publish_status] Adding message to stream: order:TM06202304260627173454544
[2026-06-27 17:35:50,295.295 INFO    ] [publish_status] Message added to stream with ID: 1782561950265-0
[2026-06-27 17:35:50,297.297 INFO    ] Published to order:TM06202304260627173454544: {'server_status': 'processOrder', 'server_response': '{"SectionMain": {"Header": "Processing Order"}, "SectionSKU": {"skus": [], "Header": "Thank you for bearing with us :)"}, "status": "True", "SectionStatus": {"UI_Header": "", "SubHeader": "Please wait while we process your order", "Note": "", "Header": " Your order is under process  "}, "delay": 0, "voiceNote": "Please Wait", "rstatus": true}', 'order_id': 'TM06202304260627173454544', 'timestamp': '2026-06-27T12:05:50.229604Z'} (ID: 1782561950265-0)
[2026-06-27 17:35:50,492.492 INFO    ] {'server_status': 'processOrder', 'server_response': {'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'status': 'True', 'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait while we process your order', 'Note': '', 'Header': ' Your order is under process  '}, 'delay': 0, 'voiceNote': 'Please Wait', 'rstatus': True}, 'order_id': 'TM06202304260627173454544'}
[2026-06-27 17:35:50,493.493 INFO    ] 200
[2026-06-27 17:35:50,495.495 INFO    ] {"data":{"server_status":"processOrder","server_response":{"SectionMain":{"Header":"Processing Order"},"SectionSKU":{"skus":[],"Header":"Thank you for bearing with us :)"},"status":"true","SectionStatus":{"UI_Header":"","SubHeader":"Please wait while we process your order","Note":"","Header":" Your order is under process  "},"delay":0,"voiceNote":"Please Wait","rstatus":true},"order_id":"TM06202304260627173454544"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-27 17:35:50,497.497 INFO    ] {'data': {'server_status': 'processOrder', 'order_id': 'TM06202304260627173454544', 'server_response': {'SectionMain': {'Header': 'Processing Order'}, 'SectionSKU': {'skus': [], 'Header': 'Thank you for bearing with us :)'}, 'status': 'true', 'SectionStatus': {'SubHeader': 'Please wait while we process your order', 'UI_Header': '', 'Note': '', 'Header': ' Your order is under process  '}, 'delay': 0, 'voiceNote': 'Please Wait', 'rstatus': True}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-27 17:35:50,499.499 INFO    ] 2026-06-27 17:35:50
[2026-06-27 17:35:50,500.500 INFO    ] None
[2026-06-27 17:35:50,502.502 INFO    ] Opening Door now
[2026-06-27 17:35:50,504.504 INFO    ] Opening Door now
[2026-06-27 17:35:50,506.506 INFO    ] 08e5d1063504bf393c26f0bfa436e9f9
[2026-06-27 17:35:50,508.508 INFO    ] 2026-06-27 17:35:50
[2026-06-27 17:35:50,509.509 INFO    ] playing audio file
[2026-06-27 17:35:50,520.520 INFO    ] 2026-06-27 17:35:50
[2026-06-27 17:35:50,522.522 INFO    ] 2026-06-27 17:35:50
[2026-06-27 17:35:53,558.558 INFO    ] 200
[2026-06-27 17:35:53,560.560 INFO    ] {"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"}, "voiceNote": "Door 2 is open now", "SectionSKU": {"skus": [{"name": "Pepsi ZeroSugar  300ml", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "rstatus": false, "status": "False"}
[2026-06-27 17:35:53,562.562 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'SectionStatus': {'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', 'Header': 'Please Close Door 2'}, 'SectionSKU': {'skus': [{'name': 'Pepsi ZeroSugar  300ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Door 2 is open now', 'rstatus': False}
[2026-06-27 17:35:56,600.600 INFO    ] 200
[2026-06-27 17:35:56,602.602 INFO    ] {"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"}, "voiceNote": "Please close door 2", "SectionSKU": {"skus": [{"name": "Pepsi ZeroSugar  300ml", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "rstatus": false, "status": "False"}
[2026-06-27 17:35:56,604.604 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'SectionStatus': {'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', 'Header': 'Please Close Door 2'}, 'SectionSKU': {'skus': [{'name': 'Pepsi ZeroSugar  300ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2', 'rstatus': False}
[2026-06-27 17:35:59,639.639 INFO    ] 200
[2026-06-27 17:35:59,641.641 INFO    ] {"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"}, "voiceNote": "Please close door 2", "SectionSKU": {"skus": [{"name": "Pepsi ZeroSugar  300ml", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "rstatus": false, "status": "False"}
[2026-06-27 17:35:59,642.642 INFO    ] Please close door 2
[2026-06-27 17:35:59,644.644 INFO    ] Please close door 2
[2026-06-27 17:35:59,646.646 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-27 17:35:59,648.648 INFO    ] 2026-06-27 17:35:59
[2026-06-27 17:35:59,650.650 INFO    ] playing audio file
[2026-06-27 17:35:59,661.661 INFO    ] 2026-06-27 17:35:59
[2026-06-27 17:35:59,664.664 INFO    ] publish_status: order_id=TM06202304260627173454544
[2026-06-27 17:35:59,666.666 INFO    ] [publish_status] Adding message to stream: order:TM06202304260627173454544
[2026-06-27 17:35:59,728.728 INFO    ] [publish_status] Message added to stream with ID: 1782561959696-0
[2026-06-27 17:35:59,730.730 INFO    ] Published to order:TM06202304260627173454544: {'server_status': 'OrderStatus', 'server_response': '{"SectionMain": {"Header": "Door Open"}, "error": {"code": 20001, "data": {}, "umessage": "In Progress", "tmessage": "In Progress"}, "status": "False", "SectionStatus": {"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", "Header": "Please Close Door 2"}, "SectionSKU": {"skus": [{"name": "Pepsi ZeroSugar  300ml", "qty": 1}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "rstatus": false}', 'order_id': 'TM06202304260627173454544', 'timestamp': '2026-06-27T12:05:59.662854Z'} (ID: 1782561959696-0)
[2026-06-27 17:36:00,142.142 INFO    ] {'server_status': 'OrderStatus', 'server_response': {'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'SectionStatus': {'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', 'Header': 'Please Close Door 2'}, 'SectionSKU': {'skus': [{'name': 'Pepsi ZeroSugar  300ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2', 'rstatus': False}, 'order_id': 'TM06202304260627173454544'}
[2026-06-27 17:36:00,143.143 INFO    ] 200
[2026-06-27 17:36:00,145.145 INFO    ] {"data":{"server_status":"OrderStatus","server_response":{"SectionMain":{"Header":"Door Open"},"error":{"code":20001,"data":[],"umessage":"In Progress","tmessage":"In Progress"},"status":"false","SectionStatus":{"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","Header":"Please Close Door 2"},"SectionSKU":{"skus":[{"name":"Pepsi ZeroSugar  300ml","qty":1}],"Header":"Pick the below items from the door"},"voiceNote":"Please close door 2","rstatus":false},"order_id":"TM06202304260627173454544"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-27 17:36:00,147.147 INFO    ] {'data': {'server_status': 'OrderStatus', 'order_id': 'TM06202304260627173454544', 'server_response': {'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'skus': [{'name': 'Pepsi ZeroSugar  300ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'false', 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2'}, 'error': {'code': 20001, 'data': [], 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'voiceNote': 'Please close door 2', 'rstatus': False}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-27 17:36:00,149.149 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'SectionStatus': {'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', 'Header': 'Please Close Door 2'}, 'SectionSKU': {'skus': [{'name': 'Pepsi ZeroSugar  300ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2', 'rstatus': False}
[2026-06-27 17:36:03,205.205 INFO    ] 200
[2026-06-27 17:36:03,207.207 INFO    ] {"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"}, "voiceNote": "Please close door 2", "SectionSKU": {"skus": [{"name": "Pepsi ZeroSugar  300ml", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "rstatus": false, "status": "False"}
[2026-06-27 17:36:03,209.209 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'SectionStatus': {'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', 'Header': 'Please Close Door 2'}, 'SectionSKU': {'skus': [{'name': 'Pepsi ZeroSugar  300ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2', 'rstatus': False}
[2026-06-27 17:36:06,247.247 INFO    ] 200
[2026-06-27 17:36:06,248.248 INFO    ] {"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"}, "voiceNote": "Please close door 2", "SectionSKU": {"skus": [{"name": "Pepsi ZeroSugar  300ml", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "rstatus": false, "status": "False"}
[2026-06-27 17:36:06,251.251 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'SectionStatus': {'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', 'Header': 'Please Close Door 2'}, 'SectionSKU': {'skus': [{'name': 'Pepsi ZeroSugar  300ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2', 'rstatus': False}
[2026-06-27 17:36:09,299.299 INFO    ] 200
[2026-06-27 17:36:09,301.301 INFO    ] {"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"}, "voiceNote": "Please close door 2", "SectionSKU": {"skus": [{"name": "Pepsi ZeroSugar  300ml", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "rstatus": false, "status": "False"}
[2026-06-27 17:36:09,303.303 INFO    ] Please close door 2
[2026-06-27 17:36:09,305.305 INFO    ] Please close door 2
[2026-06-27 17:36:09,307.307 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-27 17:36:09,309.309 INFO    ] 2026-06-27 17:36:09
[2026-06-27 17:36:09,310.310 INFO    ] playing audio file
[2026-06-27 17:36:09,322.322 INFO    ] 2026-06-27 17:36:09
[2026-06-27 17:36:09,325.325 INFO    ] publish_status: order_id=TM06202304260627173454544
[2026-06-27 17:36:09,328.328 INFO    ] [publish_status] Adding message to stream: order:TM06202304260627173454544
[2026-06-27 17:36:09,391.391 INFO    ] [publish_status] Message added to stream with ID: 1782561969361-0
[2026-06-27 17:36:09,394.394 INFO    ] Published to order:TM06202304260627173454544: {'server_status': 'OrderStatus', 'server_response': '{"SectionMain": {"Header": "Door Open"}, "error": {"code": 20001, "data": {}, "umessage": "In Progress", "tmessage": "In Progress"}, "status": "False", "SectionStatus": {"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", "Header": "Please Close Door 2"}, "SectionSKU": {"skus": [{"name": "Pepsi ZeroSugar  300ml", "qty": 1}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "rstatus": false}', 'order_id': 'TM06202304260627173454544', 'timestamp': '2026-06-27T12:06:09.324359Z'} (ID: 1782561969361-0)
[2026-06-27 17:36:09,802.802 INFO    ] {'server_status': 'OrderStatus', 'server_response': {'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'SectionStatus': {'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', 'Header': 'Please Close Door 2'}, 'SectionSKU': {'skus': [{'name': 'Pepsi ZeroSugar  300ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2', 'rstatus': False}, 'order_id': 'TM06202304260627173454544'}
[2026-06-27 17:36:09,804.804 INFO    ] 200
[2026-06-27 17:36:09,806.806 INFO    ] {"data":{"server_status":"OrderStatus","server_response":{"SectionMain":{"Header":"Door Open"},"error":{"code":20001,"data":[],"umessage":"In Progress","tmessage":"In Progress"},"status":"false","SectionStatus":{"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","Header":"Please Close Door 2"},"SectionSKU":{"skus":[{"name":"Pepsi ZeroSugar  300ml","qty":1}],"Header":"Pick the below items from the door"},"voiceNote":"Please close door 2","rstatus":false},"order_id":"TM06202304260627173454544"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-27 17:36:09,808.808 INFO    ] {'data': {'server_status': 'OrderStatus', 'order_id': 'TM06202304260627173454544', 'server_response': {'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'skus': [{'name': 'Pepsi ZeroSugar  300ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'false', 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2'}, 'error': {'code': 20001, 'data': [], 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'voiceNote': 'Please close door 2', 'rstatus': False}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-27 17:36:09,810.810 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'SectionStatus': {'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', 'Header': 'Please Close Door 2'}, 'SectionSKU': {'skus': [{'name': 'Pepsi ZeroSugar  300ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2', 'rstatus': False}
[2026-06-27 17:36:12,846.846 INFO    ] 200
[2026-06-27 17:36:12,848.848 INFO    ] {"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"}, "voiceNote": "Please close door 2", "SectionSKU": {"skus": [{"name": "Pepsi ZeroSugar  300ml", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "rstatus": false, "status": "False"}
[2026-06-27 17:36:12,850.850 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'SectionStatus': {'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', 'Header': 'Please Close Door 2'}, 'SectionSKU': {'skus': [{'name': 'Pepsi ZeroSugar  300ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2', 'rstatus': False}
[2026-06-27 17:36:15,881.881 INFO    ] 200
[2026-06-27 17:36:15,882.882 INFO    ] {"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"}, "voiceNote": "Please close door 2", "SectionSKU": {"skus": [{"name": "Pepsi ZeroSugar  300ml", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "rstatus": false, "status": "False"}
[2026-06-27 17:36:15,884.884 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'SectionStatus': {'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', 'Header': 'Please Close Door 2'}, 'SectionSKU': {'skus': [{'name': 'Pepsi ZeroSugar  300ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2', 'rstatus': False}
[2026-06-27 17:36:18,919.919 INFO    ] 200
[2026-06-27 17:36:18,921.921 INFO    ] {"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"}, "voiceNote": "Please close door 2", "SectionSKU": {"skus": [{"name": "Pepsi ZeroSugar  300ml", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "rstatus": false, "status": "False"}
[2026-06-27 17:36:18,922.922 INFO    ] Please close door 2
[2026-06-27 17:36:18,924.924 INFO    ] Please close door 2
[2026-06-27 17:36:18,926.926 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-27 17:36:18,927.927 INFO    ] 2026-06-27 17:36:18
[2026-06-27 17:36:18,929.929 INFO    ] playing audio file
[2026-06-27 17:36:18,941.941 INFO    ] 2026-06-27 17:36:18
[2026-06-27 17:36:18,944.944 INFO    ] publish_status: order_id=TM06202304260627173454544
[2026-06-27 17:36:18,946.946 INFO    ] [publish_status] Adding message to stream: order:TM06202304260627173454544
[2026-06-27 17:36:19,007.007 INFO    ] [publish_status] Message added to stream with ID: 1782561978977-0
[2026-06-27 17:36:19,009.009 INFO    ] Published to order:TM06202304260627173454544: {'server_status': 'OrderStatus', 'server_response': '{"SectionMain": {"Header": "Door Open"}, "error": {"code": 20001, "data": {}, "umessage": "In Progress", "tmessage": "In Progress"}, "status": "False", "SectionStatus": {"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", "Header": "Please Close Door 2"}, "SectionSKU": {"skus": [{"name": "Pepsi ZeroSugar  300ml", "qty": 1}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "rstatus": false}', 'order_id': 'TM06202304260627173454544', 'timestamp': '2026-06-27T12:06:18.942746Z'} (ID: 1782561978977-0)
[2026-06-27 17:36:19,408.408 INFO    ] {'server_status': 'OrderStatus', 'server_response': {'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'SectionStatus': {'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', 'Header': 'Please Close Door 2'}, 'SectionSKU': {'skus': [{'name': 'Pepsi ZeroSugar  300ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2', 'rstatus': False}, 'order_id': 'TM06202304260627173454544'}
[2026-06-27 17:36:19,412.412 INFO    ] 200
[2026-06-27 17:36:19,415.415 INFO    ] {"data":{"server_status":"OrderStatus","server_response":{"SectionMain":{"Header":"Door Open"},"error":{"code":20001,"data":[],"umessage":"In Progress","tmessage":"In Progress"},"status":"false","SectionStatus":{"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","Header":"Please Close Door 2"},"SectionSKU":{"skus":[{"name":"Pepsi ZeroSugar  300ml","qty":1}],"Header":"Pick the below items from the door"},"voiceNote":"Please close door 2","rstatus":false},"order_id":"TM06202304260627173454544"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-27 17:36:19,419.419 INFO    ] {'data': {'server_status': 'OrderStatus', 'order_id': 'TM06202304260627173454544', 'server_response': {'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'skus': [{'name': 'Pepsi ZeroSugar  300ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'false', 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2'}, 'error': {'code': 20001, 'data': [], 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'voiceNote': 'Please close door 2', 'rstatus': False}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-27 17:36:19,422.422 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'SectionStatus': {'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', 'Header': 'Please Close Door 2'}, 'SectionSKU': {'skus': [{'name': 'Pepsi ZeroSugar  300ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2', 'rstatus': False}
[2026-06-27 17:36:22,457.457 INFO    ] 200
[2026-06-27 17:36:22,458.458 INFO    ] {"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"}, "voiceNote": "Please close door 2", "SectionSKU": {"skus": [{"name": "Pepsi ZeroSugar  300ml", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "rstatus": false, "status": "False"}
[2026-06-27 17:36:22,460.460 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'SectionStatus': {'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', 'Header': 'Please Close Door 2'}, 'SectionSKU': {'skus': [{'name': 'Pepsi ZeroSugar  300ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2', 'rstatus': False}
[2026-06-27 17:36:25,501.501 INFO    ] 200
[2026-06-27 17:36:25,503.503 INFO    ] {"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"}, "voiceNote": "Please close door 2", "SectionSKU": {"skus": [{"name": "Pepsi ZeroSugar  300ml", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "rstatus": false, "status": "False"}
[2026-06-27 17:36:25,505.505 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'SectionStatus': {'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', 'Header': 'Please Close Door 2'}, 'SectionSKU': {'skus': [{'name': 'Pepsi ZeroSugar  300ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2', 'rstatus': False}
[2026-06-27 17:36:28,557.557 INFO    ] 200
[2026-06-27 17:36:28,559.559 INFO    ] {"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"}, "voiceNote": "Please close door 2", "SectionSKU": {"skus": [{"name": "Pepsi ZeroSugar  300ml", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "rstatus": false, "status": "False"}
[2026-06-27 17:36:28,561.561 INFO    ] Please close door 2
[2026-06-27 17:36:28,563.563 INFO    ] Please close door 2
[2026-06-27 17:36:28,564.564 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-27 17:36:28,566.566 INFO    ] 2026-06-27 17:36:28
[2026-06-27 17:36:28,568.568 INFO    ] playing audio file
[2026-06-27 17:36:28,579.579 INFO    ] 2026-06-27 17:36:28
[2026-06-27 17:36:28,581.581 INFO    ] publish_status: order_id=TM06202304260627173454544
[2026-06-27 17:36:28,584.584 INFO    ] [publish_status] Adding message to stream: order:TM06202304260627173454544
[2026-06-27 17:36:28,629.629 INFO    ] [publish_status] Message added to stream with ID: 1782561988596-0
[2026-06-27 17:36:28,630.630 INFO    ] Published to order:TM06202304260627173454544: {'server_status': 'OrderStatus', 'server_response': '{"SectionMain": {"Header": "Door Open"}, "error": {"code": 20001, "data": {}, "umessage": "In Progress", "tmessage": "In Progress"}, "status": "False", "SectionStatus": {"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", "Header": "Please Close Door 2"}, "SectionSKU": {"skus": [{"name": "Pepsi ZeroSugar  300ml", "qty": 1}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "rstatus": false}', 'order_id': 'TM06202304260627173454544', 'timestamp': '2026-06-27T12:06:28.580592Z'} (ID: 1782561988596-0)
[2026-06-27 17:36:29,111.111 INFO    ] {'server_status': 'OrderStatus', 'server_response': {'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'SectionStatus': {'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', 'Header': 'Please Close Door 2'}, 'SectionSKU': {'skus': [{'name': 'Pepsi ZeroSugar  300ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2', 'rstatus': False}, 'order_id': 'TM06202304260627173454544'}
[2026-06-27 17:36:29,113.113 INFO    ] 200
[2026-06-27 17:36:29,115.115 INFO    ] {"data":{"server_status":"OrderStatus","server_response":{"SectionMain":{"Header":"Door Open"},"error":{"code":20001,"data":[],"umessage":"In Progress","tmessage":"In Progress"},"status":"false","SectionStatus":{"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","Header":"Please Close Door 2"},"SectionSKU":{"skus":[{"name":"Pepsi ZeroSugar  300ml","qty":1}],"Header":"Pick the below items from the door"},"voiceNote":"Please close door 2","rstatus":false},"order_id":"TM06202304260627173454544"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-27 17:36:29,117.117 INFO    ] {'data': {'server_status': 'OrderStatus', 'order_id': 'TM06202304260627173454544', 'server_response': {'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'skus': [{'name': 'Pepsi ZeroSugar  300ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'false', 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2'}, 'error': {'code': 20001, 'data': [], 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'voiceNote': 'Please close door 2', 'rstatus': False}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-27 17:36:29,119.119 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'SectionStatus': {'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', 'Header': 'Please Close Door 2'}, 'SectionSKU': {'skus': [{'name': 'Pepsi ZeroSugar  300ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2', 'rstatus': False}
[2026-06-27 17:36:32,241.241 INFO    ] 200
[2026-06-27 17:36:32,243.243 INFO    ] {"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"}, "voiceNote": "Please close door 2", "SectionSKU": {"skus": [{"name": "Pepsi ZeroSugar  300ml", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "rstatus": false, "status": "False"}
[2026-06-27 17:36:32,246.246 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'SectionStatus': {'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', 'Header': 'Please Close Door 2'}, 'SectionSKU': {'skus': [{'name': 'Pepsi ZeroSugar  300ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2', 'rstatus': False}
[2026-06-27 17:36:35,321.321 INFO    ] 200
[2026-06-27 17:36:35,323.323 INFO    ] {"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"}, "voiceNote": "Please close door 2", "SectionSKU": {"skus": [{"name": "Pepsi ZeroSugar  300ml", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "rstatus": false, "status": "False"}
[2026-06-27 17:36:35,326.326 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'SectionStatus': {'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', 'Header': 'Please Close Door 2'}, 'SectionSKU': {'skus': [{'name': 'Pepsi ZeroSugar  300ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2', 'rstatus': False}
[2026-06-27 17:36:38,357.357 INFO    ] 200
[2026-06-27 17:36:38,358.358 INFO    ] {"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"}, "voiceNote": "Please close door 2", "SectionSKU": {"skus": [{"name": "Pepsi ZeroSugar  300ml", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "rstatus": false, "status": "False"}
[2026-06-27 17:36:38,360.360 INFO    ] Please close door 2
[2026-06-27 17:36:38,361.361 INFO    ] Please close door 2
[2026-06-27 17:36:38,362.362 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-27 17:36:38,364.364 INFO    ] 2026-06-27 17:36:38
[2026-06-27 17:36:38,365.365 INFO    ] playing audio file
[2026-06-27 17:36:38,376.376 INFO    ] 2026-06-27 17:36:38
[2026-06-27 17:36:38,378.378 INFO    ] publish_status: order_id=TM06202304260627173454544
[2026-06-27 17:36:38,380.380 INFO    ] [publish_status] Adding message to stream: order:TM06202304260627173454544
[2026-06-27 17:36:38,446.446 INFO    ] [publish_status] Message added to stream with ID: 1782561998411-0
[2026-06-27 17:36:38,447.447 INFO    ] Published to order:TM06202304260627173454544: {'server_status': 'OrderStatus', 'server_response': '{"SectionMain": {"Header": "Door Open"}, "error": {"code": 20001, "data": {}, "umessage": "In Progress", "tmessage": "In Progress"}, "status": "False", "SectionStatus": {"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", "Header": "Please Close Door 2"}, "SectionSKU": {"skus": [{"name": "Pepsi ZeroSugar  300ml", "qty": 1}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "rstatus": false}', 'order_id': 'TM06202304260627173454544', 'timestamp': '2026-06-27T12:06:38.377400Z'} (ID: 1782561998411-0)
[2026-06-27 17:36:38,880.880 INFO    ] {'server_status': 'OrderStatus', 'server_response': {'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'SectionStatus': {'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', 'Header': 'Please Close Door 2'}, 'SectionSKU': {'skus': [{'name': 'Pepsi ZeroSugar  300ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2', 'rstatus': False}, 'order_id': 'TM06202304260627173454544'}
[2026-06-27 17:36:38,886.886 INFO    ] 200
[2026-06-27 17:36:38,888.888 INFO    ] {"data":{"server_status":"OrderStatus","server_response":{"SectionMain":{"Header":"Door Open"},"error":{"code":20001,"data":[],"umessage":"In Progress","tmessage":"In Progress"},"status":"false","SectionStatus":{"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","Header":"Please Close Door 2"},"SectionSKU":{"skus":[{"name":"Pepsi ZeroSugar  300ml","qty":1}],"Header":"Pick the below items from the door"},"voiceNote":"Please close door 2","rstatus":false},"order_id":"TM06202304260627173454544"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-27 17:36:38,892.892 INFO    ] {'data': {'server_status': 'OrderStatus', 'order_id': 'TM06202304260627173454544', 'server_response': {'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'skus': [{'name': 'Pepsi ZeroSugar  300ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'false', 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2'}, 'error': {'code': 20001, 'data': [], 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'voiceNote': 'Please close door 2', 'rstatus': False}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-27 17:36:38,895.895 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'SectionStatus': {'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', 'Header': 'Please Close Door 2'}, 'SectionSKU': {'skus': [{'name': 'Pepsi ZeroSugar  300ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2', 'rstatus': False}
[2026-06-27 17:36:41,934.934 INFO    ] 200
[2026-06-27 17:36:41,935.935 INFO    ] {"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"}, "voiceNote": "Please close door 2", "SectionSKU": {"skus": [{"name": "Pepsi ZeroSugar  300ml", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "rstatus": false, "status": "False"}
[2026-06-27 17:36:41,937.937 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'SectionStatus': {'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', 'Header': 'Please Close Door 2'}, 'SectionSKU': {'skus': [{'name': 'Pepsi ZeroSugar  300ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2', 'rstatus': False}
[2026-06-27 17:36:44,991.991 INFO    ] 200
[2026-06-27 17:36:44,994.994 INFO    ] {"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"}, "voiceNote": "Please close door 2", "SectionSKU": {"skus": [{"name": "Pepsi ZeroSugar  300ml", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "rstatus": false, "status": "False"}
[2026-06-27 17:36:44,997.997 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'SectionStatus': {'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', 'Header': 'Please Close Door 2'}, 'SectionSKU': {'skus': [{'name': 'Pepsi ZeroSugar  300ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2', 'rstatus': False}
[2026-06-27 17:36:48,041.041 INFO    ] 200
[2026-06-27 17:36:48,042.042 INFO    ] {"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"}, "voiceNote": "Please close door 2", "SectionSKU": {"skus": [{"name": "Pepsi ZeroSugar  300ml", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "rstatus": false, "status": "False"}
[2026-06-27 17:36:48,044.044 INFO    ] Please close door 2
[2026-06-27 17:36:48,046.046 INFO    ] Please close door 2
[2026-06-27 17:36:48,047.047 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-27 17:36:48,049.049 INFO    ] 2026-06-27 17:36:48
[2026-06-27 17:36:48,050.050 INFO    ] playing audio file
[2026-06-27 17:36:48,060.060 INFO    ] 2026-06-27 17:36:48
[2026-06-27 17:36:48,062.062 INFO    ] publish_status: order_id=TM06202304260627173454544
[2026-06-27 17:36:48,064.064 INFO    ] [publish_status] Adding message to stream: order:TM06202304260627173454544
[2026-06-27 17:36:48,128.128 INFO    ] [publish_status] Message added to stream with ID: 1782562008092-0
[2026-06-27 17:36:48,130.130 INFO    ] Published to order:TM06202304260627173454544: {'server_status': 'OrderStatus', 'server_response': '{"SectionMain": {"Header": "Door Open"}, "error": {"code": 20001, "data": {}, "umessage": "In Progress", "tmessage": "In Progress"}, "status": "False", "SectionStatus": {"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", "Header": "Please Close Door 2"}, "SectionSKU": {"skus": [{"name": "Pepsi ZeroSugar  300ml", "qty": 1}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "rstatus": false}', 'order_id': 'TM06202304260627173454544', 'timestamp': '2026-06-27T12:06:48.061595Z'} (ID: 1782562008092-0)
[2026-06-27 17:36:48,553.553 INFO    ] {'server_status': 'OrderStatus', 'server_response': {'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'SectionStatus': {'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', 'Header': 'Please Close Door 2'}, 'SectionSKU': {'skus': [{'name': 'Pepsi ZeroSugar  300ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2', 'rstatus': False}, 'order_id': 'TM06202304260627173454544'}
[2026-06-27 17:36:48,554.554 INFO    ] 200
[2026-06-27 17:36:48,556.556 INFO    ] {"data":{"server_status":"OrderStatus","server_response":{"SectionMain":{"Header":"Door Open"},"error":{"code":20001,"data":[],"umessage":"In Progress","tmessage":"In Progress"},"status":"false","SectionStatus":{"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","Header":"Please Close Door 2"},"SectionSKU":{"skus":[{"name":"Pepsi ZeroSugar  300ml","qty":1}],"Header":"Pick the below items from the door"},"voiceNote":"Please close door 2","rstatus":false},"order_id":"TM06202304260627173454544"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-27 17:36:48,558.558 INFO    ] {'data': {'server_status': 'OrderStatus', 'order_id': 'TM06202304260627173454544', 'server_response': {'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'skus': [{'name': 'Pepsi ZeroSugar  300ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'false', 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2'}, 'error': {'code': 20001, 'data': [], 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'voiceNote': 'Please close door 2', 'rstatus': False}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-27 17:36:48,559.559 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'SectionStatus': {'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', 'Header': 'Please Close Door 2'}, 'SectionSKU': {'skus': [{'name': 'Pepsi ZeroSugar  300ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2', 'rstatus': False}
[2026-06-27 17:36:51,592.592 INFO    ] 200
[2026-06-27 17:36:51,593.593 INFO    ] {"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"}, "voiceNote": "Please close door 2", "SectionSKU": {"skus": [{"name": "Pepsi ZeroSugar  300ml", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "rstatus": false, "status": "False"}
[2026-06-27 17:36:51,595.595 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'SectionStatus': {'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', 'Header': 'Please Close Door 2'}, 'SectionSKU': {'skus': [{'name': 'Pepsi ZeroSugar  300ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2', 'rstatus': False}
[2026-06-27 17:36:54,627.627 INFO    ] 200
[2026-06-27 17:36:54,628.628 INFO    ] {"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"}, "voiceNote": "Please close door 2", "SectionSKU": {"skus": [{"name": "Pepsi ZeroSugar  300ml", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "rstatus": false, "status": "False"}
[2026-06-27 17:36:54,630.630 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'SectionStatus': {'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', 'Header': 'Please Close Door 2'}, 'SectionSKU': {'skus': [{'name': 'Pepsi ZeroSugar  300ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2', 'rstatus': False}
[2026-06-27 17:36:57,702.702 INFO    ] 200
[2026-06-27 17:36:57,704.704 INFO    ] {"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"}, "voiceNote": "Please close door 2", "SectionSKU": {"skus": [{"name": "Pepsi ZeroSugar  300ml", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "rstatus": false, "status": "False"}
[2026-06-27 17:36:57,706.706 INFO    ] Please close door 2
[2026-06-27 17:36:57,708.708 INFO    ] Please close door 2
[2026-06-27 17:36:57,709.709 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-27 17:36:57,711.711 INFO    ] 2026-06-27 17:36:57
[2026-06-27 17:36:57,712.712 INFO    ] playing audio file
[2026-06-27 17:36:57,723.723 INFO    ] 2026-06-27 17:36:57
[2026-06-27 17:36:57,725.725 INFO    ] publish_status: order_id=TM06202304260627173454544
[2026-06-27 17:36:57,727.727 INFO    ] [publish_status] Adding message to stream: order:TM06202304260627173454544
[2026-06-27 17:36:57,788.788 INFO    ] [publish_status] Message added to stream with ID: 1782562017757-0
[2026-06-27 17:36:57,790.790 INFO    ] Published to order:TM06202304260627173454544: {'server_status': 'OrderStatus', 'server_response': '{"SectionMain": {"Header": "Door Open"}, "error": {"code": 20001, "data": {}, "umessage": "In Progress", "tmessage": "In Progress"}, "status": "False", "SectionStatus": {"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", "Header": "Please Close Door 2"}, "SectionSKU": {"skus": [{"name": "Pepsi ZeroSugar  300ml", "qty": 1}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "rstatus": false}', 'order_id': 'TM06202304260627173454544', 'timestamp': '2026-06-27T12:06:57.724800Z'} (ID: 1782562017757-0)
[2026-06-27 17:36:58,181.181 INFO    ] {'server_status': 'OrderStatus', 'server_response': {'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'SectionStatus': {'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', 'Header': 'Please Close Door 2'}, 'SectionSKU': {'skus': [{'name': 'Pepsi ZeroSugar  300ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2', 'rstatus': False}, 'order_id': 'TM06202304260627173454544'}
[2026-06-27 17:36:58,183.183 INFO    ] 200
[2026-06-27 17:36:58,185.185 INFO    ] {"data":{"server_status":"OrderStatus","server_response":{"SectionMain":{"Header":"Door Open"},"error":{"code":20001,"data":[],"umessage":"In Progress","tmessage":"In Progress"},"status":"false","SectionStatus":{"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","Header":"Please Close Door 2"},"SectionSKU":{"skus":[{"name":"Pepsi ZeroSugar  300ml","qty":1}],"Header":"Pick the below items from the door"},"voiceNote":"Please close door 2","rstatus":false},"order_id":"TM06202304260627173454544"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-27 17:36:58,187.187 INFO    ] {'data': {'server_status': 'OrderStatus', 'order_id': 'TM06202304260627173454544', 'server_response': {'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'skus': [{'name': 'Pepsi ZeroSugar  300ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'false', 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2'}, 'error': {'code': 20001, 'data': [], 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'voiceNote': 'Please close door 2', 'rstatus': False}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-27 17:36:58,188.188 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'SectionStatus': {'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', 'Header': 'Please Close Door 2'}, 'SectionSKU': {'skus': [{'name': 'Pepsi ZeroSugar  300ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2', 'rstatus': False}
[2026-06-27 17:37:01,237.237 INFO    ] 200
[2026-06-27 17:37:01,238.238 INFO    ] {"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"}, "voiceNote": "Please close door 2", "SectionSKU": {"skus": [{"name": "Pepsi ZeroSugar  300ml", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "rstatus": false, "status": "False"}
[2026-06-27 17:37:01,240.240 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'SectionStatus': {'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', 'Header': 'Please Close Door 2'}, 'SectionSKU': {'skus': [{'name': 'Pepsi ZeroSugar  300ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2', 'rstatus': False}
[2026-06-27 17:37:04,286.286 INFO    ] 200
[2026-06-27 17:37:04,287.287 INFO    ] {"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"}, "voiceNote": "Please close door 2", "SectionSKU": {"skus": [{"name": "Pepsi ZeroSugar  300ml", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "rstatus": false, "status": "False"}
[2026-06-27 17:37:04,289.289 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'SectionStatus': {'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', 'Header': 'Please Close Door 2'}, 'SectionSKU': {'skus': [{'name': 'Pepsi ZeroSugar  300ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2', 'rstatus': False}
[2026-06-27 17:37:07,319.319 INFO    ] 200
[2026-06-27 17:37:07,320.320 INFO    ] {"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"}, "voiceNote": "Please close door 2", "SectionSKU": {"skus": [{"name": "Pepsi ZeroSugar  300ml", "qty": 1}], "Header": "Pick the below items from the door"}, "SectionMain": {"Header": "Door Open"}, "error": {"tmessage": "In Progress", "data": {}, "umessage": "In Progress", "code": 20001}, "rstatus": false, "status": "False"}
[2026-06-27 17:37:07,322.322 INFO    ] Please close door 2
[2026-06-27 17:37:07,323.323 INFO    ] Please close door 2
[2026-06-27 17:37:07,325.325 INFO    ] 758e46684c76e887a5f58d4738034bed
[2026-06-27 17:37:07,327.327 INFO    ] 2026-06-27 17:37:07
[2026-06-27 17:37:07,328.328 INFO    ] playing audio file
[2026-06-27 17:37:07,338.338 INFO    ] 2026-06-27 17:37:07
[2026-06-27 17:37:07,340.340 INFO    ] publish_status: order_id=TM06202304260627173454544
[2026-06-27 17:37:07,342.342 INFO    ] [publish_status] Adding message to stream: order:TM06202304260627173454544
[2026-06-27 17:37:07,399.399 INFO    ] [publish_status] Message added to stream with ID: 1782562027366-0
[2026-06-27 17:37:07,402.402 INFO    ] Published to order:TM06202304260627173454544: {'server_status': 'OrderStatus', 'server_response': '{"SectionMain": {"Header": "Door Open"}, "error": {"code": 20001, "data": {}, "umessage": "In Progress", "tmessage": "In Progress"}, "status": "False", "SectionStatus": {"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", "Header": "Please Close Door 2"}, "SectionSKU": {"skus": [{"name": "Pepsi ZeroSugar  300ml", "qty": 1}], "Header": "Pick the below items from the door"}, "voiceNote": "Please close door 2", "rstatus": false}', 'order_id': 'TM06202304260627173454544', 'timestamp': '2026-06-27T12:07:07.339611Z'} (ID: 1782562027366-0)
[2026-06-27 17:37:07,809.809 INFO    ] {'server_status': 'OrderStatus', 'server_response': {'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'SectionStatus': {'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', 'Header': 'Please Close Door 2'}, 'SectionSKU': {'skus': [{'name': 'Pepsi ZeroSugar  300ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2', 'rstatus': False}, 'order_id': 'TM06202304260627173454544'}
[2026-06-27 17:37:07,811.811 INFO    ] 200
[2026-06-27 17:37:07,812.812 INFO    ] {"data":{"server_status":"OrderStatus","server_response":{"SectionMain":{"Header":"Door Open"},"error":{"code":20001,"data":[],"umessage":"In Progress","tmessage":"In Progress"},"status":"false","SectionStatus":{"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","Header":"Please Close Door 2"},"SectionSKU":{"skus":[{"name":"Pepsi ZeroSugar  300ml","qty":1}],"Header":"Pick the below items from the door"},"voiceNote":"Please close door 2","rstatus":false},"order_id":"TM06202304260627173454544"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-27 17:37:07,813.813 INFO    ] {'data': {'server_status': 'OrderStatus', 'order_id': 'TM06202304260627173454544', 'server_response': {'SectionMain': {'Header': 'Door Open'}, 'SectionSKU': {'skus': [{'name': 'Pepsi ZeroSugar  300ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'status': 'false', 'SectionStatus': {'SubHeader': 'Please Pick the Products and close the door', 'UI_Header': 'DOOR 2\nIS \nOPEN \nNOW', 'Note': 'Please Close the door after picking up products', 'Header': 'Please Close Door 2'}, 'error': {'code': 20001, 'data': [], 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'voiceNote': 'Please close door 2', 'rstatus': False}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-27 17:37:07,815.815 INFO    ] {'SectionMain': {'Header': 'Door Open'}, 'error': {'code': 20001, 'data': {}, 'umessage': 'In Progress', 'tmessage': 'In Progress'}, 'status': 'False', 'SectionStatus': {'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', 'Header': 'Please Close Door 2'}, 'SectionSKU': {'skus': [{'name': 'Pepsi ZeroSugar  300ml', 'qty': 1}], 'Header': 'Pick the below items from the door'}, 'voiceNote': 'Please close door 2', 'rstatus': False}
[2026-06-27 17:37:10,849.849 INFO    ] 200
[2026-06-27 17:37:10,851.851 INFO    ] {"SectionStatus": {"SubHeader": "Please wait for invoice to generate", "Note": "If any due amount, clear at https://go.tinymart.in", "Header": " Order is complete ", "UI_Header": ""}, "voiceNote": "Transaction Completed", "SectionSKU": {"skus": [], "Header": "If you like us, tell others... else tell us"}, "SectionMain": {"Header": "Door Closed"}, "rstatus": true, "delay": 100, "status": "True"}
[2026-06-27 17:37:10,852.852 INFO    ] {'SectionMain': {'Header': 'Door Closed'}, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'status': 'True', 'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': ' Order is complete '}, 'delay': 100, 'voiceNote': 'Transaction Completed', 'rstatus': True}
[2026-06-27 17:37:10,854.854 INFO    ] 2026-06-27 17:37:10
[2026-06-27 17:37:10,856.856 INFO    ] Order Completed 
[2026-06-27 17:37:10,857.857 INFO    ] Order Completed 
[2026-06-27 17:37:10,859.859 INFO    ] 193c8a8cf3bf490ccfe0b23598544a83
[2026-06-27 17:37:10,860.860 INFO    ] 2026-06-27 17:37:10
[2026-06-27 17:37:10,861.861 INFO    ] playing audio file
[2026-06-27 17:37:10,872.872 INFO    ] 2026-06-27 17:37:10
[2026-06-27 17:37:10,874.874 INFO    ] {'SectionMain': {'Header': 'Door Closed'}, 'SectionSKU': {'skus': [], 'Header': 'If you like us, tell others... else tell us'}, 'status': 'True', 'SectionStatus': {'UI_Header': '', 'SubHeader': 'Please wait for invoice to generate', 'Note': 'If any due amount, clear at https://go.tinymart.in', 'Header': ' Order is complete '}, 'delay': 100, 'voiceNote': 'Transaction Completed', 'rstatus': True}
[2026-06-27 17:37:10,876.876 INFO    ] 2026-06-27 17:37:10
[2026-06-27 17:37:12,005.005 INFO    ] 200
[2026-06-27 17:37:12,008.008 INFO    ] {"res": "True", "orderId": "TM06202304260627173454544", "total_amount": 60.0, "skus": [{"name": "Aatral Natural Electrolytes 200ml per peice", "image_url": "https://images.tinymart.in/product/4500694-1219.png", "tray_id": "43", "mrp": "60", "qty": 1, "unit_price": "60", "skuid": "4500694", "sku_total": 60.0, "door_id": ""}], "anomaly": 0, "logic": "WBL", "rstatus": true}
[2026-06-27 17:37:12,010.010 INFO    ] {'res': 'True', 'skus': [{'unit_price': '60', 'tray_id': '43', 'name': 'Aatral Natural Electrolytes 200ml per peice', 'image_url': 'https://images.tinymart.in/product/4500694-1219.png', 'door_id': '', 'mrp': '60', 'skuid': '4500694', 'qty': 1, 'sku_total': 60.0}], 'anomaly': 0, 'logic': 'WBL', 'total_amount': 60.0, 'orderId': 'TM06202304260627173454544', 'rstatus': True}
[2026-06-27 17:37:12,013.013 INFO    ] {'res': 'True', 'skus': [{'unit_price': '60', 'tray_id': '43', 'name': 'Aatral Natural Electrolytes 200ml per peice', 'image_url': 'https://images.tinymart.in/product/4500694-1219.png', 'door_id': '', 'mrp': '60', 'skuid': '4500694', 'qty': 1, 'sku_total': 60.0}], 'anomaly': 0, 'logic': 'WBL', 'total_amount': 60.0, 'orderId': 'TM06202304260627173454544', 'rstatus': True}
[2026-06-27 17:37:12,016.016 INFO    ] 2026-06-27 17:37:12
[2026-06-27 17:37:12,018.018 INFO    ] 2026-06-27 17:37:12
[2026-06-27 17:37:12,020.020 INFO    ] 40
[2026-06-27 17:37:12,022.022 INFO    ] 2026-06-27 17:37:12
[2026-06-27 17:37:12,025.025 INFO    ] 2026-06-27 17:37:12
[2026-06-27 17:37:12,027.027 INFO    ]  You had Picked Excess of 20 Your Bill Amount is 60
[2026-06-27 17:37:12,030.030 INFO    ]  You had Picked Excess of 20 Your Bill Amount is 60
[2026-06-27 17:37:12,032.032 INFO    ] 663f5276d07a7fef8010ef445c1c0872
[2026-06-27 17:37:12,039.039 INFO    ] 2026-06-27 17:37:12
[2026-06-27 17:37:12,040.040 INFO    ] creating audio file
[2026-06-27 17:37:12,092.092 INFO    ] Calling gTTS API with 60s timeout...
[2026-06-27 17:37:12,994.994 INFO    ] gTTS API call completed successfully
[2026-06-27 17:37:15,592.592 INFO    ] 2026-06-27 17:37:15
[2026-06-27 17:37:15,594.594 INFO    ] playing audio file
[2026-06-27 17:37:15,605.605 INFO    ] 2026-06-27 17:37:15
[2026-06-27 17:37:15,606.606 INFO    ] 2026-06-27 17:37:15
[2026-06-27 17:37:15,608.608 INFO    ] publish_status: order_id=TM06202304260627173454544
[2026-06-27 17:37:15,610.610 INFO    ] [publish_status] Adding message to stream: order:TM06202304260627173454544
[2026-06-27 17:37:15,672.672 INFO    ] [publish_status] Message added to stream with ID: 1782562035641-0
[2026-06-27 17:37:15,674.674 INFO    ] Published to order:TM06202304260627173454544: {'server_status': 'invoiceOrder', 'server_response': '{"res": "True", "skus": [{"unit_price": "60", "tray_id": "43", "name": "Aatral Natural Electrolytes 200ml per peice", "image_url": "https://images.tinymart.in/product/4500694-1219.png", "door_id": "", "mrp": "60", "skuid": "4500694", "qty": 1, "sku_total": 60.0}], "anomaly": 0, "logic": "WBL", "total_amount": 60.0, "orderId": "TM06202304260627173454544", "rstatus": true}', 'order_id': 'TM06202304260627173454544', 'timestamp': '2026-06-27T12:07:15.607563Z'} (ID: 1782562035641-0)
[2026-06-27 17:37:16,067.067 INFO    ] {'server_status': 'invoiceOrder', 'server_response': {'res': 'True', 'skus': [{'unit_price': '60', 'tray_id': '43', 'name': 'Aatral Natural Electrolytes 200ml per peice', 'image_url': 'https://images.tinymart.in/product/4500694-1219.png', 'door_id': '', 'mrp': '60', 'skuid': '4500694', 'qty': 1, 'sku_total': 60.0}], 'anomaly': 0, 'logic': 'WBL', 'total_amount': 60.0, 'orderId': 'TM06202304260627173454544', 'rstatus': True}, 'order_id': 'TM06202304260627173454544'}
[2026-06-27 17:37:16,069.069 INFO    ] 200
[2026-06-27 17:37:16,070.070 INFO    ] {"data":{"server_status":"invoiceOrder","server_response":{"res":"true","skus":[{"unit_price":"60","tray_id":"43","name":"Aatral Natural Electrolytes 200ml per peice","image_url":"https:\/\/images.tinymart.in\/product\/4500694-1219.png","door_id":"","mrp":"60","skuid":"4500694","qty":1,"sku_total":60}],"anomaly":0,"logic":"WBL","total_amount":60,"orderId":"TM06202304260627173454544","rstatus":true},"order_id":"TM06202304260627173454544"},"response":{"status":true,"code":"ORDER_EXISTS","data":"order updated successfully","msg":"order updated successfully"}}
[2026-06-27 17:37:16,071.071 INFO    ] {'data': {'server_status': 'invoiceOrder', 'order_id': 'TM06202304260627173454544', 'server_response': {'res': 'true', 'skus': [{'unit_price': '60', 'tray_id': '43', 'name': 'Aatral Natural Electrolytes 200ml per peice', 'mrp': '60', 'door_id': '', 'image_url': 'https://images.tinymart.in/product/4500694-1219.png', 'skuid': '4500694', 'qty': 1, 'sku_total': 60}], 'anomaly': 0, 'rstatus': True, 'total_amount': 60, 'logic': 'WBL', 'orderId': 'TM06202304260627173454544'}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-27 17:37:16,073.073 INFO    ] {'data': {'server_status': 'invoiceOrder', 'order_id': 'TM06202304260627173454544', 'server_response': {'res': 'true', 'skus': [{'unit_price': '60', 'tray_id': '43', 'name': 'Aatral Natural Electrolytes 200ml per peice', 'mrp': '60', 'door_id': '', 'image_url': 'https://images.tinymart.in/product/4500694-1219.png', 'skuid': '4500694', 'qty': 1, 'sku_total': 60}], 'anomaly': 0, 'rstatus': True, 'total_amount': 60, 'logic': 'WBL', 'orderId': 'TM06202304260627173454544'}}, 'response': {'code': 'ORDER_EXISTS', 'data': 'order updated successfully', 'status': True, 'msg': 'order updated successfully'}}
[2026-06-27 17:37:16,074.074 INFO    ] 2026-06-27 17:37:16
[2026-06-27 17:37:16,615.615 INFO    ] 200
[2026-06-27 17:37:16,616.616 INFO    ] {"status": true, "orders_synced": [], "orders_data": [], "orders": [], "order_items": [], "orders_data_synced": [], "tray_synced": ["no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry", "no_entry"], "tray_sync": [], "order_items_synced": []}
[2026-06-27 17:37:16,618.618 INFO    ] 2026-06-27 17:37:16
[2026-06-27 17:37:16,683.683 INFO    ] 200
[2026-06-27 17:37:16,684.684 INFO    ] True
[2026-06-27 17:37:16,685.685 INFO    ] cleanup_start_order_file_after_processing: order_id=TM06202304260627173454544
[2026-06-27 17:37:16,687.687 INFO    ] start order file deleted
[2026-06-27 17:37:16,689.689 INFO    ] Checking for system updates...
[2026-06-27 17:37:16,708.708 INFO    ] 200
[2026-06-27 17:37:16,710.710 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:37:16,740.740 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:37:16,742.742 INFO    ] No update needed
[2026-06-27 17:37:16,743.743 INFO    ] Checking for camera pi updates...
[2026-06-27 17:37:16,765.765 INFO    ] 200
[2026-06-27 17:37:16,767.767 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:37:16,792.792 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:37:16,868.868 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:37:16,870.870 INFO    ] No camera update needed
[2026-06-27 17:37:16,871.871 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:37:16,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:37:16,875.875 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:37:16,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:37:18,918.918 INFO    ] ================================================
[2026-06-27 17:37:18,933.933 INFO    ] Launching Daemon at Sat Jun 27 17:37:18 IST 2026
[2026-06-27 17:37:18,944.944 INFO    ] ================================================
[2026-06-27 17:37:19,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:37:19
[2026-06-27 17:37:19,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:37:19,828.828 INFO    ] Initializing speech engine...
[2026-06-27 17:37:19,834.834 INFO    ] 2026-06-27 17:37:19
[2026-06-27 17:37:20,044.044 INFO    ] 2026-06-27 17:37:20
[2026-06-27 17:37:20,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:37:20,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:37:20,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:37:20,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:37:20,429.429 INFO    ] time= 27/06/2026 17:37:20
[2026-06-27 17:37:20,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:37:20,505.505 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:37:20,577.577 INFO    ] No existing commands found in stream
[2026-06-27 17:37:25,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:37:25,596.596 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-27 17:37:26,795.795 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 17:37:26,797.797 INFO    ] Checking for system updates...
[2026-06-27 17:37:26,819.819 INFO    ] 200
[2026-06-27 17:37:26,821.821 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:37:26,854.854 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:37:26,856.856 INFO    ] No update needed
[2026-06-27 17:37:26,857.857 INFO    ] Checking for camera pi updates...
[2026-06-27 17:37:26,877.877 INFO    ] 200
[2026-06-27 17:37:26,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:37:26,902.902 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:37:26,956.956 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:37:26,958.958 INFO    ] No camera update needed
[2026-06-27 17:37:26,959.959 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:37:26,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:37:26,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:37:26,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:37:29,007.007 INFO    ] ================================================
[2026-06-27 17:37:29,022.022 INFO    ] Launching Daemon at Sat Jun 27 17:37:29 IST 2026
[2026-06-27 17:37:29,033.033 INFO    ] ================================================
[2026-06-27 17:37:29,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:37:29
[2026-06-27 17:37:29,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:37:29,934.934 INFO    ] Initializing speech engine...
[2026-06-27 17:37:29,941.941 INFO    ] 2026-06-27 17:37:29
[2026-06-27 17:37:30,149.149 INFO    ] 2026-06-27 17:37:30
[2026-06-27 17:37:30,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:37:30,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:37:30,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:37:30,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:37:30,584.584 INFO    ] time= 27/06/2026 17:37:30
[2026-06-27 17:37:30,595.595 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:37:30,601.601 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:37:30,668.668 INFO    ] No existing commands found in stream
[2026-06-27 17:37:35,683.683 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:37:35,686.686 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-27 17:37:36,315.315 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 17:37:36,316.316 INFO    ] Checking for system updates...
[2026-06-27 17:37:36,339.339 INFO    ] 200
[2026-06-27 17:37:36,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:37:36,377.377 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:37:36,378.378 INFO    ] No update needed
[2026-06-27 17:37:36,380.380 INFO    ] Checking for camera pi updates...
[2026-06-27 17:37:36,403.403 INFO    ] 200
[2026-06-27 17:37:36,405.405 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:37:36,428.428 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:37:36,475.475 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:37:36,477.477 INFO    ] No camera update needed
[2026-06-27 17:37:36,478.478 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:37:36,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:37:36,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:37:36,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:37:38,525.525 INFO    ] ================================================
[2026-06-27 17:37:38,539.539 INFO    ] Launching Daemon at Sat Jun 27 17:37:38 IST 2026
[2026-06-27 17:37:38,550.550 INFO    ] ================================================
[2026-06-27 17:37:38,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:37:38
[2026-06-27 17:37:39,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:37:39,340.340 INFO    ] Initializing speech engine...
[2026-06-27 17:37:39,346.346 INFO    ] 2026-06-27 17:37:39
[2026-06-27 17:37:39,562.562 INFO    ] 2026-06-27 17:37:39
[2026-06-27 17:37:39,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:37:39,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:37:39,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:37:39,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:37:39,990.990 INFO    ] time= 27/06/2026 17:37:39
[2026-06-27 17:37:40,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:37:40,053.053 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:37:40,132.132 INFO    ] No existing commands found in stream
[2026-06-27 17:37:45,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:37:45,144.144 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-27 17:37:49,432.432 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 17:37:49,434.434 INFO    ] Checking for system updates...
[2026-06-27 17:37:49,456.456 INFO    ] 200
[2026-06-27 17:37:49,458.458 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:37:49,491.491 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:37:49,493.493 INFO    ] No update needed
[2026-06-27 17:37:49,494.494 INFO    ] Checking for camera pi updates...
[2026-06-27 17:37:49,515.515 INFO    ] 200
[2026-06-27 17:37:49,516.516 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:37:49,540.540 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:37:49,580.580 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:37:49,581.581 INFO    ] No camera update needed
[2026-06-27 17:37:49,583.583 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:37:49,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:37:49,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:37:49,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:37:51,628.628 INFO    ] ================================================
[2026-06-27 17:37:51,643.643 INFO    ] Launching Daemon at Sat Jun 27 17:37:51 IST 2026
[2026-06-27 17:37:51,654.654 INFO    ] ================================================
[2026-06-27 17:37:52,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:37:52
[2026-06-27 17:37:52,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:37:52,519.519 INFO    ] Initializing speech engine...
[2026-06-27 17:37:52,524.524 INFO    ] 2026-06-27 17:37:52
[2026-06-27 17:37:52,734.734 INFO    ] 2026-06-27 17:37:52
[2026-06-27 17:37:52,763.763 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:37:52,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:37:52,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:37:53,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:37:53,160.160 INFO    ] time= 27/06/2026 17:37:53
[2026-06-27 17:37:53,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:37:53,189.189 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:37:53,257.257 INFO    ] No existing commands found in stream
[2026-06-27 17:37:58,271.271 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:37:58,275.275 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-27 17:38:02,870.870 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 17:38:02,871.871 INFO    ] Checking for system updates...
[2026-06-27 17:38:02,902.902 INFO    ] 200
[2026-06-27 17:38:02,904.904 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:38:02,943.943 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:38:02,944.944 INFO    ] No update needed
[2026-06-27 17:38:02,946.946 INFO    ] Checking for camera pi updates...
[2026-06-27 17:38:02,966.966 INFO    ] 200
[2026-06-27 17:38:02,968.968 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:38:02,993.993 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:38:03,049.049 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:38:03,051.051 INFO    ] No camera update needed
[2026-06-27 17:38:03,054.054 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:38:03,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:38:03,060.060 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:38:03,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:38:05,104.104 INFO    ] ================================================
[2026-06-27 17:38:05,119.119 INFO    ] Launching Daemon at Sat Jun 27 17:38:05 IST 2026
[2026-06-27 17:38:05,130.130 INFO    ] ================================================
[2026-06-27 17:38:05,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:38:05
[2026-06-27 17:38:05,814.814 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:38:05,941.941 INFO    ] Initializing speech engine...
[2026-06-27 17:38:05,945.945 INFO    ] 2026-06-27 17:38:05
[2026-06-27 17:38:06,168.168 INFO    ] 2026-06-27 17:38:06
[2026-06-27 17:38:06,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:38:06,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:38:06,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:38:06,819.819 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:38:06,822.822 INFO    ] time= 27/06/2026 17:38:06
[2026-06-27 17:38:06,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:38:06,827.827 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:38:07,004.004 INFO    ] No existing commands found in stream
[2026-06-27 17:38:12,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:38:12,026.026 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-27 17:38:15,304.304 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 17:38:15,306.306 INFO    ] Checking for system updates...
[2026-06-27 17:38:15,330.330 INFO    ] 200
[2026-06-27 17:38:15,332.332 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:38:15,375.375 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:38:15,376.376 INFO    ] No update needed
[2026-06-27 17:38:15,377.377 INFO    ] Checking for camera pi updates...
[2026-06-27 17:38:15,399.399 INFO    ] 200
[2026-06-27 17:38:15,400.400 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:38:15,427.427 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:38:15,468.468 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:38:15,470.470 INFO    ] No camera update needed
[2026-06-27 17:38:15,471.471 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:38:15,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:38:15,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:38:15,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:38:17,518.518 INFO    ] ================================================
[2026-06-27 17:38:17,534.534 INFO    ] Launching Daemon at Sat Jun 27 17:38:17 IST 2026
[2026-06-27 17:38:17,545.545 INFO    ] ================================================
[2026-06-27 17:38:17,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:38:17
[2026-06-27 17:38:18,204.204 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:38:18,348.348 INFO    ] Initializing speech engine...
[2026-06-27 17:38:18,354.354 INFO    ] 2026-06-27 17:38:18
[2026-06-27 17:38:18,557.557 INFO    ] 2026-06-27 17:38:18
[2026-06-27 17:38:18,586.586 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:38:18,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:38:18,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:38:18,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:38:18,974.974 INFO    ] time= 27/06/2026 17:38:18
[2026-06-27 17:38:18,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:38:19,005.005 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:38:19,069.069 INFO    ] No existing commands found in stream
[2026-06-27 17:38:24,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:38:24,083.083 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-27 17:38:26,507.507 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 17:38:26,508.508 INFO    ] Checking for system updates...
[2026-06-27 17:38:26,529.529 INFO    ] 200
[2026-06-27 17:38:26,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:38:26,561.561 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:38:26,562.562 INFO    ] No update needed
[2026-06-27 17:38:26,564.564 INFO    ] Checking for camera pi updates...
[2026-06-27 17:38:26,584.584 INFO    ] 200
[2026-06-27 17:38:26,585.585 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:38:26,610.610 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:38:26,649.649 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:38:26,651.651 INFO    ] No camera update needed
[2026-06-27 17:38:26,652.652 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:38:26,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:38:26,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:38:26,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:38:28,691.691 INFO    ] ================================================
[2026-06-27 17:38:28,706.706 INFO    ] Launching Daemon at Sat Jun 27 17:38:28 IST 2026
[2026-06-27 17:38:28,717.717 INFO    ] ================================================
[2026-06-27 17:38:29,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:38:29
[2026-06-27 17:38:29,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:38:29,582.582 INFO    ] Initializing speech engine...
[2026-06-27 17:38:29,588.588 INFO    ] 2026-06-27 17:38:29
[2026-06-27 17:38:29,796.796 INFO    ] 2026-06-27 17:38:29
[2026-06-27 17:38:29,824.824 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:38:29,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:38:30,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:38:30,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:38:30,207.207 INFO    ] time= 27/06/2026 17:38:30
[2026-06-27 17:38:30,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:38:30,242.242 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:38:30,312.312 INFO    ] No existing commands found in stream
[2026-06-27 17:38:35,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:38:35,326.326 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-27 17:38:37,930.930 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 17:38:37,931.931 INFO    ] Checking for system updates...
[2026-06-27 17:38:37,956.956 INFO    ] 200
[2026-06-27 17:38:37,958.958 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:38:37,988.988 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:38:37,989.989 INFO    ] No update needed
[2026-06-27 17:38:37,991.991 INFO    ] Checking for camera pi updates...
[2026-06-27 17:38:38,010.010 INFO    ] 200
[2026-06-27 17:38:38,011.011 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:38:38,035.035 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:38:38,078.078 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:38:38,080.080 INFO    ] No camera update needed
[2026-06-27 17:38:38,081.081 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:38:38,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:38:38,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:38:38,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:38:40,131.131 INFO    ] ================================================
[2026-06-27 17:38:40,147.147 INFO    ] Launching Daemon at Sat Jun 27 17:38:40 IST 2026
[2026-06-27 17:38:40,158.158 INFO    ] ================================================
[2026-06-27 17:38:40,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:38:40
[2026-06-27 17:38:40,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:38:40,929.929 INFO    ] Initializing speech engine...
[2026-06-27 17:38:40,941.941 INFO    ] 2026-06-27 17:38:40
[2026-06-27 17:38:41,147.147 INFO    ] 2026-06-27 17:38:41
[2026-06-27 17:38:41,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:38:41,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:38:41,362.362 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:38:41,561.561 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:38:41,586.586 INFO    ] time= 27/06/2026 17:38:41
[2026-06-27 17:38:41,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:38:41,592.592 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:38:41,658.658 INFO    ] No existing commands found in stream
[2026-06-27 17:38:46,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:38:46,670.670 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-27 17:38:48,152.152 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 17:38:48,154.154 INFO    ] Checking for system updates...
[2026-06-27 17:38:48,175.175 INFO    ] 200
[2026-06-27 17:38:48,177.177 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:38:48,207.207 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:38:48,208.208 INFO    ] No update needed
[2026-06-27 17:38:48,209.209 INFO    ] Checking for camera pi updates...
[2026-06-27 17:38:48,231.231 INFO    ] 200
[2026-06-27 17:38:48,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:38:48,258.258 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:38:48,314.314 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:38:48,315.315 INFO    ] No camera update needed
[2026-06-27 17:38:48,317.317 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:38:48,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:38:48,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:38:48,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:38:50,366.366 INFO    ] ================================================
[2026-06-27 17:38:50,382.382 INFO    ] Launching Daemon at Sat Jun 27 17:38:50 IST 2026
[2026-06-27 17:38:50,393.393 INFO    ] ================================================
[2026-06-27 17:38:50,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:38:50
[2026-06-27 17:38:51,042.042 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:38:51,188.188 INFO    ] Initializing speech engine...
[2026-06-27 17:38:51,193.193 INFO    ] 2026-06-27 17:38:51
[2026-06-27 17:38:51,408.408 INFO    ] 2026-06-27 17:38:51
[2026-06-27 17:38:51,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:38:51,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:38:51,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:38:51,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:38:51,851.851 INFO    ] time= 27/06/2026 17:38:51
[2026-06-27 17:38:51,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:38:51,879.879 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:38:51,979.979 INFO    ] No existing commands found in stream
[2026-06-27 17:38:56,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:38:56,991.991 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-27 17:39:00,504.504 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 17:39:00,505.505 INFO    ] Checking for system updates...
[2026-06-27 17:39:00,527.527 INFO    ] 200
[2026-06-27 17:39:00,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:39:00,558.558 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:39:00,560.560 INFO    ] No update needed
[2026-06-27 17:39:00,561.561 INFO    ] Checking for camera pi updates...
[2026-06-27 17:39:00,580.580 INFO    ] 200
[2026-06-27 17:39:00,582.582 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:39:00,606.606 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:39:00,648.648 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:39:00,649.649 INFO    ] No camera update needed
[2026-06-27 17:39:00,651.651 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:39:00,652.652 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:39:00,655.655 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:39:00,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:39:02,683.683 INFO    ] ================================================
[2026-06-27 17:39:02,692.692 INFO    ] Launching Daemon at Sat Jun 27 17:39:02 IST 2026
[2026-06-27 17:39:02,698.698 INFO    ] ================================================
[2026-06-27 17:39:03,051.051 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:39:03
[2026-06-27 17:39:03,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:39:03,513.513 INFO    ] Initializing speech engine...
[2026-06-27 17:39:03,518.518 INFO    ] 2026-06-27 17:39:03
[2026-06-27 17:39:03,724.724 INFO    ] 2026-06-27 17:39:03
[2026-06-27 17:39:03,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:39:03,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:39:03,937.937 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:39:04,068.068 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:39:04,124.124 INFO    ] time= 27/06/2026 17:39:04
[2026-06-27 17:39:04,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:39:04,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:39:04,240.240 INFO    ] No existing commands found in stream
[2026-06-27 17:39:09,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:39:09,252.252 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-27 17:39:13,492.492 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 17:39:13,494.494 INFO    ] Checking for system updates...
[2026-06-27 17:39:13,515.515 INFO    ] 200
[2026-06-27 17:39:13,516.516 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:39:13,548.548 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:39:13,550.550 INFO    ] No update needed
[2026-06-27 17:39:13,551.551 INFO    ] Checking for camera pi updates...
[2026-06-27 17:39:13,570.570 INFO    ] 200
[2026-06-27 17:39:13,572.572 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:39:13,598.598 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:39:13,748.748 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:39:13,749.749 INFO    ] No camera update needed
[2026-06-27 17:39:13,751.751 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:39:13,752.752 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:39:13,755.755 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:39:13,758.758 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:39:15,796.796 INFO    ] ================================================
[2026-06-27 17:39:15,811.811 INFO    ] Launching Daemon at Sat Jun 27 17:39:15 IST 2026
[2026-06-27 17:39:15,822.822 INFO    ] ================================================
[2026-06-27 17:39:16,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:39:16
[2026-06-27 17:39:16,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:39:16,607.607 INFO    ] Initializing speech engine...
[2026-06-27 17:39:16,617.617 INFO    ] 2026-06-27 17:39:16
[2026-06-27 17:39:16,819.819 INFO    ] 2026-06-27 17:39:16
[2026-06-27 17:39:16,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:39:16,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:39:17,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:39:17,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:39:17,239.239 INFO    ] time= 27/06/2026 17:39:17
[2026-06-27 17:39:17,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:39:17,268.268 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:39:17,334.334 INFO    ] No existing commands found in stream
[2026-06-27 17:39:22,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:39:22,351.351 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-27 17:39:23,067.067 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 17:39:23,069.069 INFO    ] Checking for system updates...
[2026-06-27 17:39:23,090.090 INFO    ] 200
[2026-06-27 17:39:23,092.092 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:39:23,124.124 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:39:23,125.125 INFO    ] No update needed
[2026-06-27 17:39:23,126.126 INFO    ] Checking for camera pi updates...
[2026-06-27 17:39:23,148.148 INFO    ] 200
[2026-06-27 17:39:23,149.149 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:39:23,172.172 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:39:23,223.223 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:39:23,225.225 INFO    ] No camera update needed
[2026-06-27 17:39:23,226.226 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:39:23,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:39:23,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:39:23,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:39:25,274.274 INFO    ] ================================================
[2026-06-27 17:39:25,290.290 INFO    ] Launching Daemon at Sat Jun 27 17:39:25 IST 2026
[2026-06-27 17:39:25,301.301 INFO    ] ================================================
[2026-06-27 17:39:25,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:39:25
[2026-06-27 17:39:25,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:39:26,115.115 INFO    ] Initializing speech engine...
[2026-06-27 17:39:26,120.120 INFO    ] 2026-06-27 17:39:26
[2026-06-27 17:39:26,326.326 INFO    ] 2026-06-27 17:39:26
[2026-06-27 17:39:26,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:39:26,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:39:26,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:39:26,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:39:26,752.752 INFO    ] time= 27/06/2026 17:39:26
[2026-06-27 17:39:26,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:39:26,781.781 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:39:26,872.872 INFO    ] No existing commands found in stream
[2026-06-27 17:39:31,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:39:31,882.882 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-27 17:39:34,691.691 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 17:39:34,693.693 INFO    ] Checking for system updates...
[2026-06-27 17:39:34,714.714 INFO    ] 200
[2026-06-27 17:39:34,716.716 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:39:34,746.746 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:39:34,747.747 INFO    ] No update needed
[2026-06-27 17:39:34,748.748 INFO    ] Checking for camera pi updates...
[2026-06-27 17:39:34,768.768 INFO    ] 200
[2026-06-27 17:39:34,769.769 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:39:34,795.795 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:39:34,837.837 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:39:34,838.838 INFO    ] No camera update needed
[2026-06-27 17:39:34,840.840 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:39:34,841.841 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:39:34,844.844 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:39:34,847.847 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:39:36,891.891 INFO    ] ================================================
[2026-06-27 17:39:36,906.906 INFO    ] Launching Daemon at Sat Jun 27 17:39:36 IST 2026
[2026-06-27 17:39:36,916.916 INFO    ] ================================================
[2026-06-27 17:39:37,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:39:37
[2026-06-27 17:39:37,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:39:37,723.723 INFO    ] Initializing speech engine...
[2026-06-27 17:39:37,731.731 INFO    ] 2026-06-27 17:39:37
[2026-06-27 17:39:37,939.939 INFO    ] 2026-06-27 17:39:37
[2026-06-27 17:39:37,967.967 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:39:38,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:39:38,154.154 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:39:38,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:39:38,340.340 INFO    ] time= 27/06/2026 17:39:38
[2026-06-27 17:39:38,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:39:38,384.384 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:39:38,479.479 INFO    ] No existing commands found in stream
[2026-06-27 17:39:43,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:39:43,495.495 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-27 17:39:45,886.886 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 17:39:45,888.888 INFO    ] Checking for system updates...
[2026-06-27 17:39:45,910.910 INFO    ] 200
[2026-06-27 17:39:45,911.911 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:39:45,942.942 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:39:45,943.943 INFO    ] No update needed
[2026-06-27 17:39:45,944.944 INFO    ] Checking for camera pi updates...
[2026-06-27 17:39:45,965.965 INFO    ] 200
[2026-06-27 17:39:45,966.966 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:39:45,991.991 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:39:46,031.031 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:39:46,033.033 INFO    ] No camera update needed
[2026-06-27 17:39:46,034.034 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:39:46,035.035 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:39:46,038.038 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:39:46,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:39:48,079.079 INFO    ] ================================================
[2026-06-27 17:39:48,094.094 INFO    ] Launching Daemon at Sat Jun 27 17:39:48 IST 2026
[2026-06-27 17:39:48,105.105 INFO    ] ================================================
[2026-06-27 17:39:48,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:39:48
[2026-06-27 17:39:48,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:39:48,943.943 INFO    ] Initializing speech engine...
[2026-06-27 17:39:48,949.949 INFO    ] 2026-06-27 17:39:48
[2026-06-27 17:39:49,158.158 INFO    ] 2026-06-27 17:39:49
[2026-06-27 17:39:49,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:39:49,375.375 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:39:49,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:39:49,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:39:49,584.584 INFO    ] time= 27/06/2026 17:39:49
[2026-06-27 17:39:49,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:39:49,635.635 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:39:49,729.729 INFO    ] No existing commands found in stream
[2026-06-27 17:39:54,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:39:54,739.739 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-27 17:39:55,486.486 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 17:39:55,488.488 INFO    ] Checking for system updates...
[2026-06-27 17:39:55,509.509 INFO    ] 200
[2026-06-27 17:39:55,510.510 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:39:55,540.540 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:39:55,541.541 INFO    ] No update needed
[2026-06-27 17:39:55,543.543 INFO    ] Checking for camera pi updates...
[2026-06-27 17:39:55,563.563 INFO    ] 200
[2026-06-27 17:39:55,564.564 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:39:55,588.588 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:39:55,618.618 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:39:55,619.619 INFO    ] No camera update needed
[2026-06-27 17:39:55,620.620 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:39:55,622.622 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:39:55,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:39:55,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:39:57,658.658 INFO    ] ================================================
[2026-06-27 17:39:57,666.666 INFO    ] Launching Daemon at Sat Jun 27 17:39:57 IST 2026
[2026-06-27 17:39:57,672.672 INFO    ] ================================================
[2026-06-27 17:39:58,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:39:58
[2026-06-27 17:39:58,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:39:58,465.465 INFO    ] Initializing speech engine...
[2026-06-27 17:39:58,468.468 INFO    ] 2026-06-27 17:39:58
[2026-06-27 17:39:58,687.687 INFO    ] 2026-06-27 17:39:58
[2026-06-27 17:39:58,716.716 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:39:58,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:39:58,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:39:59,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:39:59,116.116 INFO    ] time= 27/06/2026 17:39:59
[2026-06-27 17:39:59,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:39:59,146.146 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:39:59,213.213 INFO    ] No existing commands found in stream
[2026-06-27 17:40:04,219.219 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:40:04,221.221 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-27 17:40:06,375.375 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 17:40:06,376.376 INFO    ] Checking for system updates...
[2026-06-27 17:40:06,399.399 INFO    ] 200
[2026-06-27 17:40:06,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:40:06,434.434 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:40:06,436.436 INFO    ] No update needed
[2026-06-27 17:40:06,437.437 INFO    ] Checking for camera pi updates...
[2026-06-27 17:40:06,457.457 INFO    ] 200
[2026-06-27 17:40:06,458.458 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:40:06,484.484 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:40:06,529.529 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:40:06,530.530 INFO    ] No camera update needed
[2026-06-27 17:40:06,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:40:06,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:40:06,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:40:06,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:40:08,577.577 INFO    ] ================================================
[2026-06-27 17:40:08,592.592 INFO    ] Launching Daemon at Sat Jun 27 17:40:08 IST 2026
[2026-06-27 17:40:08,603.603 INFO    ] ================================================
[2026-06-27 17:40:08,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:40:08
[2026-06-27 17:40:09,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:40:09,397.397 INFO    ] Initializing speech engine...
[2026-06-27 17:40:09,402.402 INFO    ] 2026-06-27 17:40:09
[2026-06-27 17:40:09,608.608 INFO    ] 2026-06-27 17:40:09
[2026-06-27 17:40:09,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:40:09,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:40:09,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:40:09,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:40:10,022.022 INFO    ] time= 27/06/2026 17:40:09
[2026-06-27 17:40:10,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:40:10,062.062 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:40:10,169.169 INFO    ] No existing commands found in stream
[2026-06-27 17:40:15,181.181 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:40:15,185.185 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-27 17:40:15,556.556 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 17:40:15,557.557 INFO    ] Checking for system updates...
[2026-06-27 17:40:15,578.578 INFO    ] 200
[2026-06-27 17:40:15,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:40:15,614.614 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:40:15,616.616 INFO    ] No update needed
[2026-06-27 17:40:15,617.617 INFO    ] Checking for camera pi updates...
[2026-06-27 17:40:15,636.636 INFO    ] 200
[2026-06-27 17:40:15,638.638 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:40:15,662.662 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:40:15,704.704 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:40:15,705.705 INFO    ] No camera update needed
[2026-06-27 17:40:15,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:40:15,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:40:15,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:40:15,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:40:17,753.753 INFO    ] ================================================
[2026-06-27 17:40:17,768.768 INFO    ] Launching Daemon at Sat Jun 27 17:40:17 IST 2026
[2026-06-27 17:40:17,778.778 INFO    ] ================================================
[2026-06-27 17:40:18,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:40:18
[2026-06-27 17:40:18,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:40:18,573.573 INFO    ] Initializing speech engine...
[2026-06-27 17:40:18,577.577 INFO    ] 2026-06-27 17:40:18
[2026-06-27 17:40:18,782.782 INFO    ] 2026-06-27 17:40:18
[2026-06-27 17:40:18,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:40:18,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:40:18,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:40:19,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:40:19,194.194 INFO    ] time= 27/06/2026 17:40:19
[2026-06-27 17:40:19,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:40:19,232.232 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:40:19,299.299 INFO    ] No existing commands found in stream
[2026-06-27 17:40:24,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:40:24,310.310 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-27 17:40:27,438.438 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 17:40:27,440.440 INFO    ] Checking for system updates...
[2026-06-27 17:40:27,462.462 INFO    ] 200
[2026-06-27 17:40:27,464.464 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:40:27,497.497 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:40:27,498.498 INFO    ] No update needed
[2026-06-27 17:40:27,499.499 INFO    ] Checking for camera pi updates...
[2026-06-27 17:40:27,522.522 INFO    ] 200
[2026-06-27 17:40:27,523.523 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:40:27,548.548 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:40:27,600.600 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:40:27,601.601 INFO    ] No camera update needed
[2026-06-27 17:40:27,603.603 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:40:27,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:40:27,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:40:27,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:40:29,650.650 INFO    ] ================================================
[2026-06-27 17:40:29,665.665 INFO    ] Launching Daemon at Sat Jun 27 17:40:29 IST 2026
[2026-06-27 17:40:29,676.676 INFO    ] ================================================
[2026-06-27 17:40:30,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:40:30
[2026-06-27 17:40:30,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:40:30,520.520 INFO    ] Initializing speech engine...
[2026-06-27 17:40:30,527.527 INFO    ] 2026-06-27 17:40:30
[2026-06-27 17:40:30,732.732 INFO    ] 2026-06-27 17:40:30
[2026-06-27 17:40:30,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:40:30,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:40:30,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:40:31,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:40:31,148.148 INFO    ] time= 27/06/2026 17:40:31
[2026-06-27 17:40:31,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:40:31,181.181 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:40:31,248.248 INFO    ] No existing commands found in stream
[2026-06-27 17:40:36,267.267 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:40:36,270.270 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-27 17:40:38,496.496 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 17:40:38,498.498 INFO    ] Checking for system updates...
[2026-06-27 17:40:38,519.519 INFO    ] 200
[2026-06-27 17:40:38,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:40:38,551.551 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:40:38,552.552 INFO    ] No update needed
[2026-06-27 17:40:38,554.554 INFO    ] Checking for camera pi updates...
[2026-06-27 17:40:38,574.574 INFO    ] 200
[2026-06-27 17:40:38,576.576 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:40:38,603.603 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:40:38,657.657 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:40:38,659.659 INFO    ] No camera update needed
[2026-06-27 17:40:38,660.660 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:40:38,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:40:38,665.665 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:40:38,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:40:40,708.708 INFO    ] ================================================
[2026-06-27 17:40:40,723.723 INFO    ] Launching Daemon at Sat Jun 27 17:40:40 IST 2026
[2026-06-27 17:40:40,734.734 INFO    ] ================================================
[2026-06-27 17:40:41,087.087 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:40:41
[2026-06-27 17:40:41,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:40:41,536.536 INFO    ] Initializing speech engine...
[2026-06-27 17:40:41,546.546 INFO    ] 2026-06-27 17:40:41
[2026-06-27 17:40:41,752.752 INFO    ] 2026-06-27 17:40:41
[2026-06-27 17:40:41,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:40:41,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:40:41,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:40:42,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:40:42,161.161 INFO    ] time= 27/06/2026 17:40:42
[2026-06-27 17:40:42,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:40:42,199.199 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:40:42,265.265 INFO    ] No existing commands found in stream
[2026-06-27 17:40:47,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:40:47,277.277 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-27 17:40:50,608.608 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 17:40:50,609.609 INFO    ] Checking for system updates...
[2026-06-27 17:40:50,631.631 INFO    ] 200
[2026-06-27 17:40:50,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:40:50,663.663 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:40:50,665.665 INFO    ] No update needed
[2026-06-27 17:40:50,666.666 INFO    ] Checking for camera pi updates...
[2026-06-27 17:40:50,687.687 INFO    ] 200
[2026-06-27 17:40:50,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:40:50,713.713 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:40:50,765.765 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:40:50,766.766 INFO    ] No camera update needed
[2026-06-27 17:40:50,768.768 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:40:50,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:40:50,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:40:50,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:40:52,814.814 INFO    ] ================================================
[2026-06-27 17:40:52,829.829 INFO    ] Launching Daemon at Sat Jun 27 17:40:52 IST 2026
[2026-06-27 17:40:52,840.840 INFO    ] ================================================
[2026-06-27 17:40:53,190.190 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:40:53
[2026-06-27 17:40:53,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:40:53,678.678 INFO    ] Initializing speech engine...
[2026-06-27 17:40:53,683.683 INFO    ] 2026-06-27 17:40:53
[2026-06-27 17:40:53,892.892 INFO    ] 2026-06-27 17:40:53
[2026-06-27 17:40:53,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:40:54,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:40:54,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:40:54,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:40:54,311.311 INFO    ] time= 27/06/2026 17:40:54
[2026-06-27 17:40:54,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:40:54,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:40:54,409.409 INFO    ] No existing commands found in stream
[2026-06-27 17:40:59,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:40:59,426.426 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-27 17:41:02,578.578 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 17:41:02,580.580 INFO    ] Checking for system updates...
[2026-06-27 17:41:02,608.608 INFO    ] 200
[2026-06-27 17:41:02,610.610 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:41:02,662.662 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:41:02,665.665 INFO    ] No update needed
[2026-06-27 17:41:02,668.668 INFO    ] Checking for camera pi updates...
[2026-06-27 17:41:02,696.696 INFO    ] 200
[2026-06-27 17:41:02,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:41:02,745.745 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:41:02,774.774 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:41:02,776.776 INFO    ] No camera update needed
[2026-06-27 17:41:02,777.777 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:41:02,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:41:02,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:41:02,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:41:04,824.824 INFO    ] ================================================
[2026-06-27 17:41:04,839.839 INFO    ] Launching Daemon at Sat Jun 27 17:41:04 IST 2026
[2026-06-27 17:41:04,850.850 INFO    ] ================================================
[2026-06-27 17:41:05,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:41:05
[2026-06-27 17:41:05,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:41:05,702.702 INFO    ] Initializing speech engine...
[2026-06-27 17:41:05,708.708 INFO    ] 2026-06-27 17:41:05
[2026-06-27 17:41:05,920.920 INFO    ] 2026-06-27 17:41:05
[2026-06-27 17:41:05,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:41:06,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:41:06,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:41:06,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:41:06,366.366 INFO    ] time= 27/06/2026 17:41:06
[2026-06-27 17:41:06,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:41:06,398.398 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:41:06,488.488 INFO    ] No existing commands found in stream
[2026-06-27 17:41:11,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:41:11,511.511 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-27 17:41:12,581.581 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 17:41:12,583.583 INFO    ] Checking for system updates...
[2026-06-27 17:41:12,605.605 INFO    ] 200
[2026-06-27 17:41:12,606.606 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:41:12,638.638 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:41:12,639.639 INFO    ] No update needed
[2026-06-27 17:41:12,640.640 INFO    ] Checking for camera pi updates...
[2026-06-27 17:41:12,661.661 INFO    ] 200
[2026-06-27 17:41:12,662.662 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:41:12,685.685 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:41:12,730.730 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:41:12,731.731 INFO    ] No camera update needed
[2026-06-27 17:41:12,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:41:12,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:41:12,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:41:12,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:41:14,777.777 INFO    ] ================================================
[2026-06-27 17:41:14,792.792 INFO    ] Launching Daemon at Sat Jun 27 17:41:14 IST 2026
[2026-06-27 17:41:14,803.803 INFO    ] ================================================
[2026-06-27 17:41:15,128.128 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:41:15
[2026-06-27 17:41:15,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:41:15,584.584 INFO    ] Initializing speech engine...
[2026-06-27 17:41:15,589.589 INFO    ] 2026-06-27 17:41:15
[2026-06-27 17:41:15,793.793 INFO    ] 2026-06-27 17:41:15
[2026-06-27 17:41:15,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:41:16,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:41:16,007.007 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:41:16,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:41:16,206.206 INFO    ] time= 27/06/2026 17:41:16
[2026-06-27 17:41:16,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:41:16,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:41:16,307.307 INFO    ] No existing commands found in stream
[2026-06-27 17:41:21,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:41:21,339.339 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-27 17:41:22,771.771 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 17:41:22,773.773 INFO    ] Checking for system updates...
[2026-06-27 17:41:22,796.796 INFO    ] 200
[2026-06-27 17:41:22,798.798 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:41:22,828.828 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:41:22,830.830 INFO    ] No update needed
[2026-06-27 17:41:22,831.831 INFO    ] Checking for camera pi updates...
[2026-06-27 17:41:22,851.851 INFO    ] 200
[2026-06-27 17:41:22,852.852 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:41:22,875.875 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:41:23,016.016 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:41:23,017.017 INFO    ] No camera update needed
[2026-06-27 17:41:23,018.018 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:41:23,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:41:23,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:41:23,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:41:25,066.066 INFO    ] ================================================
[2026-06-27 17:41:25,081.081 INFO    ] Launching Daemon at Sat Jun 27 17:41:25 IST 2026
[2026-06-27 17:41:25,092.092 INFO    ] ================================================
[2026-06-27 17:41:25,444.444 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:41:25
[2026-06-27 17:41:25,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:41:25,932.932 INFO    ] Initializing speech engine...
[2026-06-27 17:41:25,938.938 INFO    ] 2026-06-27 17:41:25
[2026-06-27 17:41:26,146.146 INFO    ] 2026-06-27 17:41:26
[2026-06-27 17:41:26,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:41:26,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:41:26,363.363 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:41:26,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:41:26,564.564 INFO    ] time= 27/06/2026 17:41:26
[2026-06-27 17:41:26,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:41:26,598.598 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:41:26,689.689 INFO    ] No existing commands found in stream
[2026-06-27 17:41:31,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:41:31,707.707 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-27 17:41:34,766.766 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 17:41:34,768.768 INFO    ] Checking for system updates...
[2026-06-27 17:41:34,789.789 INFO    ] 200
[2026-06-27 17:41:34,790.790 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:41:34,823.823 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:41:34,824.824 INFO    ] No update needed
[2026-06-27 17:41:34,826.826 INFO    ] Checking for camera pi updates...
[2026-06-27 17:41:34,846.846 INFO    ] 200
[2026-06-27 17:41:34,847.847 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:41:34,872.872 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:41:34,914.914 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:41:34,915.915 INFO    ] No camera update needed
[2026-06-27 17:41:34,916.916 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:41:34,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:41:34,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:41:34,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:41:36,961.961 INFO    ] ================================================
[2026-06-27 17:41:36,976.976 INFO    ] Launching Daemon at Sat Jun 27 17:41:36 IST 2026
[2026-06-27 17:41:36,987.987 INFO    ] ================================================
[2026-06-27 17:41:37,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:41:37
[2026-06-27 17:41:37,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:41:37,787.787 INFO    ] Initializing speech engine...
[2026-06-27 17:41:37,792.792 INFO    ] 2026-06-27 17:41:37
[2026-06-27 17:41:37,997.997 INFO    ] 2026-06-27 17:41:37
[2026-06-27 17:41:38,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:41:38,153.153 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:41:38,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:41:38,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:41:38,418.418 INFO    ] time= 27/06/2026 17:41:38
[2026-06-27 17:41:38,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:41:38,448.448 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:41:38,515.515 INFO    ] No existing commands found in stream
[2026-06-27 17:41:43,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:41:43,532.532 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-27 17:41:45,678.678 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 17:41:45,679.679 INFO    ] Checking for system updates...
[2026-06-27 17:41:45,700.700 INFO    ] 200
[2026-06-27 17:41:45,701.701 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:41:45,736.736 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:41:45,738.738 INFO    ] No update needed
[2026-06-27 17:41:45,739.739 INFO    ] Checking for camera pi updates...
[2026-06-27 17:41:45,758.758 INFO    ] 200
[2026-06-27 17:41:45,760.760 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:41:45,784.784 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:41:45,827.827 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:41:45,828.828 INFO    ] No camera update needed
[2026-06-27 17:41:45,829.829 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:41:45,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:41:45,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:41:45,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:41:47,876.876 INFO    ] ================================================
[2026-06-27 17:41:47,891.891 INFO    ] Launching Daemon at Sat Jun 27 17:41:47 IST 2026
[2026-06-27 17:41:47,902.902 INFO    ] ================================================
[2026-06-27 17:41:48,241.241 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:41:48
[2026-06-27 17:41:48,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:41:48,686.686 INFO    ] Initializing speech engine...
[2026-06-27 17:41:48,694.694 INFO    ] 2026-06-27 17:41:48
[2026-06-27 17:41:48,906.906 INFO    ] 2026-06-27 17:41:48
[2026-06-27 17:41:48,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:41:49,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:41:49,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:41:49,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:41:49,320.320 INFO    ] time= 27/06/2026 17:41:49
[2026-06-27 17:41:49,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:41:49,355.355 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:41:49,427.427 INFO    ] No existing commands found in stream
[2026-06-27 17:41:54,437.437 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:41:54,440.440 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-27 17:41:58,522.522 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 17:41:58,524.524 INFO    ] Checking for system updates...
[2026-06-27 17:41:58,546.546 INFO    ] 200
[2026-06-27 17:41:58,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:41:58,578.578 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:41:58,579.579 INFO    ] No update needed
[2026-06-27 17:41:58,580.580 INFO    ] Checking for camera pi updates...
[2026-06-27 17:41:58,600.600 INFO    ] 200
[2026-06-27 17:41:58,602.602 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:41:58,626.626 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:41:58,678.678 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:41:58,679.679 INFO    ] No camera update needed
[2026-06-27 17:41:58,680.680 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:41:58,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:41:58,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:41:58,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:42:00,727.727 INFO    ] ================================================
[2026-06-27 17:42:00,742.742 INFO    ] Launching Daemon at Sat Jun 27 17:42:00 IST 2026
[2026-06-27 17:42:00,753.753 INFO    ] ================================================
[2026-06-27 17:42:01,104.104 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:42:01
[2026-06-27 17:42:01,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:42:01,742.742 INFO    ] Initializing speech engine...
[2026-06-27 17:42:01,748.748 INFO    ] 2026-06-27 17:42:01
[2026-06-27 17:42:01,998.998 INFO    ] 2026-06-27 17:42:01
[2026-06-27 17:42:02,032.032 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:42:02,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:42:02,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:42:02,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:42:02,424.424 INFO    ] time= 27/06/2026 17:42:02
[2026-06-27 17:42:02,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:42:02,467.467 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:42:02,533.533 INFO    ] No existing commands found in stream
[2026-06-27 17:42:07,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:42:07,546.546 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-27 17:42:11,695.695 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 17:42:11,696.696 INFO    ] Checking for system updates...
[2026-06-27 17:42:11,718.718 INFO    ] 200
[2026-06-27 17:42:11,719.719 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:42:11,750.750 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:42:11,751.751 INFO    ] No update needed
[2026-06-27 17:42:11,752.752 INFO    ] Checking for camera pi updates...
[2026-06-27 17:42:11,772.772 INFO    ] 200
[2026-06-27 17:42:11,773.773 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:42:11,798.798 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:42:11,839.839 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:42:11,841.841 INFO    ] No camera update needed
[2026-06-27 17:42:11,842.842 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:42:11,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:42:11,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:42:11,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:42:13,890.890 INFO    ] ================================================
[2026-06-27 17:42:13,904.904 INFO    ] Launching Daemon at Sat Jun 27 17:42:13 IST 2026
[2026-06-27 17:42:13,915.915 INFO    ] ================================================
[2026-06-27 17:42:14,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:42:14
[2026-06-27 17:42:14,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:42:14,705.705 INFO    ] Initializing speech engine...
[2026-06-27 17:42:14,718.718 INFO    ] 2026-06-27 17:42:14
[2026-06-27 17:42:14,938.938 INFO    ] 2026-06-27 17:42:14
[2026-06-27 17:42:14,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:42:15,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:42:15,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:42:15,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:42:15,383.383 INFO    ] time= 27/06/2026 17:42:15
[2026-06-27 17:42:15,416.416 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:42:15,423.423 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:42:15,494.494 INFO    ] No existing commands found in stream
[2026-06-27 17:42:20,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:42:20,508.508 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-27 17:42:21,643.643 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 17:42:21,644.644 INFO    ] Checking for system updates...
[2026-06-27 17:42:21,667.667 INFO    ] 200
[2026-06-27 17:42:21,669.669 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:42:21,700.700 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:42:21,702.702 INFO    ] No update needed
[2026-06-27 17:42:21,703.703 INFO    ] Checking for camera pi updates...
[2026-06-27 17:42:21,724.724 INFO    ] 200
[2026-06-27 17:42:21,726.726 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:42:21,752.752 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:42:21,794.794 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:42:21,795.795 INFO    ] No camera update needed
[2026-06-27 17:42:21,797.797 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:42:21,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:42:21,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:42:21,804.804 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:42:23,844.844 INFO    ] ================================================
[2026-06-27 17:42:23,860.860 INFO    ] Launching Daemon at Sat Jun 27 17:42:23 IST 2026
[2026-06-27 17:42:23,870.870 INFO    ] ================================================
[2026-06-27 17:42:24,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:42:24
[2026-06-27 17:42:24,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:42:24,681.681 INFO    ] Initializing speech engine...
[2026-06-27 17:42:24,686.686 INFO    ] 2026-06-27 17:42:24
[2026-06-27 17:42:24,920.920 INFO    ] 2026-06-27 17:42:24
[2026-06-27 17:42:24,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:42:25,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:42:25,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:42:25,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:42:25,326.326 INFO    ] time= 27/06/2026 17:42:25
[2026-06-27 17:42:25,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:42:25,375.375 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:42:25,442.442 INFO    ] No existing commands found in stream
[2026-06-27 17:42:30,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:42:30,452.452 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-27 17:42:32,478.478 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 17:42:32,479.479 INFO    ] Checking for system updates...
[2026-06-27 17:42:32,502.502 INFO    ] 200
[2026-06-27 17:42:32,503.503 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:42:32,534.534 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:42:32,535.535 INFO    ] No update needed
[2026-06-27 17:42:32,537.537 INFO    ] Checking for camera pi updates...
[2026-06-27 17:42:32,558.558 INFO    ] 200
[2026-06-27 17:42:32,560.560 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:42:32,584.584 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:42:32,609.609 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:42:32,611.611 INFO    ] No camera update needed
[2026-06-27 17:42:32,612.612 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:42:32,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:42:32,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:42:32,619.619 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:42:34,657.657 INFO    ] ================================================
[2026-06-27 17:42:34,673.673 INFO    ] Launching Daemon at Sat Jun 27 17:42:34 IST 2026
[2026-06-27 17:42:34,684.684 INFO    ] ================================================
[2026-06-27 17:42:35,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:42:35
[2026-06-27 17:42:35,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:42:35,553.553 INFO    ] Initializing speech engine...
[2026-06-27 17:42:35,558.558 INFO    ] 2026-06-27 17:42:35
[2026-06-27 17:42:35,769.769 INFO    ] 2026-06-27 17:42:35
[2026-06-27 17:42:35,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:42:35,986.986 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:42:35,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:42:36,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:42:36,211.211 INFO    ] time= 27/06/2026 17:42:36
[2026-06-27 17:42:36,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:42:36,228.228 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:42:36,296.296 INFO    ] No existing commands found in stream
[2026-06-27 17:42:41,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:42:41,315.315 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-27 17:42:45,441.441 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 17:42:45,442.442 INFO    ] Checking for system updates...
[2026-06-27 17:42:45,464.464 INFO    ] 200
[2026-06-27 17:42:45,465.465 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:42:45,496.496 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:42:45,497.497 INFO    ] No update needed
[2026-06-27 17:42:45,499.499 INFO    ] Checking for camera pi updates...
[2026-06-27 17:42:45,520.520 INFO    ] 200
[2026-06-27 17:42:45,521.521 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:42:45,545.545 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:42:45,589.589 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:42:45,591.591 INFO    ] No camera update needed
[2026-06-27 17:42:45,592.592 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:42:45,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:42:45,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:42:45,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:42:47,639.639 INFO    ] ================================================
[2026-06-27 17:42:47,655.655 INFO    ] Launching Daemon at Sat Jun 27 17:42:47 IST 2026
[2026-06-27 17:42:47,666.666 INFO    ] ================================================
[2026-06-27 17:42:48,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:42:48
[2026-06-27 17:42:48,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:42:48,522.522 INFO    ] Initializing speech engine...
[2026-06-27 17:42:48,528.528 INFO    ] 2026-06-27 17:42:48
[2026-06-27 17:42:48,739.739 INFO    ] 2026-06-27 17:42:48
[2026-06-27 17:42:48,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:42:48,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:42:48,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:42:49,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:42:49,186.186 INFO    ] time= 27/06/2026 17:42:49
[2026-06-27 17:42:49,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:42:49,194.194 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:42:49,285.285 INFO    ] No existing commands found in stream
[2026-06-27 17:42:54,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:42:54,303.303 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-27 17:42:56,595.595 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 17:42:56,597.597 INFO    ] Checking for system updates...
[2026-06-27 17:42:56,617.617 INFO    ] 200
[2026-06-27 17:42:56,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:42:56,649.649 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:42:56,651.651 INFO    ] No update needed
[2026-06-27 17:42:56,652.652 INFO    ] Checking for camera pi updates...
[2026-06-27 17:42:56,674.674 INFO    ] 200
[2026-06-27 17:42:56,675.675 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:42:56,700.700 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:42:56,745.745 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:42:56,746.746 INFO    ] No camera update needed
[2026-06-27 17:42:56,747.747 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:42:56,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:42:56,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:42:56,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:42:58,794.794 INFO    ] ================================================
[2026-06-27 17:42:58,810.810 INFO    ] Launching Daemon at Sat Jun 27 17:42:58 IST 2026
[2026-06-27 17:42:58,821.821 INFO    ] ================================================
[2026-06-27 17:42:59,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:42:59
[2026-06-27 17:42:59,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:42:59,651.651 INFO    ] Initializing speech engine...
[2026-06-27 17:42:59,656.656 INFO    ] 2026-06-27 17:42:59
[2026-06-27 17:42:59,867.867 INFO    ] 2026-06-27 17:42:59
[2026-06-27 17:42:59,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:43:00,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:43:00,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:43:00,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:43:00,292.292 INFO    ] time= 27/06/2026 17:43:00
[2026-06-27 17:43:00,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:43:00,323.323 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:43:00,390.390 INFO    ] No existing commands found in stream
[2026-06-27 17:43:05,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:43:05,403.403 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-27 17:43:09,802.802 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 17:43:09,804.804 INFO    ] Checking for system updates...
[2026-06-27 17:43:09,825.825 INFO    ] 200
[2026-06-27 17:43:09,827.827 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:43:09,859.859 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:43:09,861.861 INFO    ] No update needed
[2026-06-27 17:43:09,862.862 INFO    ] Checking for camera pi updates...
[2026-06-27 17:43:09,881.881 INFO    ] 200
[2026-06-27 17:43:09,883.883 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:43:09,907.907 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:43:09,957.957 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:43:09,959.959 INFO    ] No camera update needed
[2026-06-27 17:43:09,960.960 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:43:09,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:43:09,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:43:09,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:43:12,007.007 INFO    ] ================================================
[2026-06-27 17:43:12,022.022 INFO    ] Launching Daemon at Sat Jun 27 17:43:12 IST 2026
[2026-06-27 17:43:12,033.033 INFO    ] ================================================
[2026-06-27 17:43:12,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:43:12
[2026-06-27 17:43:12,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:43:12,847.847 INFO    ] Initializing speech engine...
[2026-06-27 17:43:12,857.857 INFO    ] 2026-06-27 17:43:12
[2026-06-27 17:43:13,062.062 INFO    ] 2026-06-27 17:43:13
[2026-06-27 17:43:13,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:43:13,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:43:13,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:43:13,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:43:13,492.492 INFO    ] time= 27/06/2026 17:43:13
[2026-06-27 17:43:13,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:43:13,520.520 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:43:13,587.587 INFO    ] No existing commands found in stream
[2026-06-27 17:43:18,601.601 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:43:18,604.604 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-27 17:43:22,808.808 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 17:43:22,809.809 INFO    ] Checking for system updates...
[2026-06-27 17:43:22,830.830 INFO    ] 200
[2026-06-27 17:43:22,831.831 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:43:22,863.863 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:43:22,865.865 INFO    ] No update needed
[2026-06-27 17:43:22,866.866 INFO    ] Checking for camera pi updates...
[2026-06-27 17:43:22,886.886 INFO    ] 200
[2026-06-27 17:43:22,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:43:22,911.911 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:43:22,940.940 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:43:22,941.941 INFO    ] No camera update needed
[2026-06-27 17:43:22,943.943 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:43:22,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:43:22,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:43:22,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:43:24,989.989 INFO    ] ================================================
[2026-06-27 17:43:25,004.004 INFO    ] Launching Daemon at Sat Jun 27 17:43:24 IST 2026
[2026-06-27 17:43:25,015.015 INFO    ] ================================================
[2026-06-27 17:43:25,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:43:25
[2026-06-27 17:43:25,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:43:25,804.804 INFO    ] Initializing speech engine...
[2026-06-27 17:43:25,811.811 INFO    ] 2026-06-27 17:43:25
[2026-06-27 17:43:26,019.019 INFO    ] 2026-06-27 17:43:25
[2026-06-27 17:43:26,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:43:26,230.230 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:43:26,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:43:26,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:43:26,433.433 INFO    ] time= 27/06/2026 17:43:26
[2026-06-27 17:43:26,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:43:26,467.467 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:43:26,557.557 INFO    ] No existing commands found in stream
[2026-06-27 17:43:31,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:43:31,569.569 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-27 17:43:34,902.902 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 17:43:34,903.903 INFO    ] Checking for system updates...
[2026-06-27 17:43:34,927.927 INFO    ] 200
[2026-06-27 17:43:34,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:43:34,962.962 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:43:34,964.964 INFO    ] No update needed
[2026-06-27 17:43:34,966.966 INFO    ] Checking for camera pi updates...
[2026-06-27 17:43:34,987.987 INFO    ] 200
[2026-06-27 17:43:34,988.988 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:43:35,011.011 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:43:35,055.055 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:43:35,056.056 INFO    ] No camera update needed
[2026-06-27 17:43:35,057.057 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:43:35,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:43:35,061.061 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:43:35,064.064 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:43:37,107.107 INFO    ] ================================================
[2026-06-27 17:43:37,122.122 INFO    ] Launching Daemon at Sat Jun 27 17:43:37 IST 2026
[2026-06-27 17:43:37,133.133 INFO    ] ================================================
[2026-06-27 17:43:37,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:43:37
[2026-06-27 17:43:37,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:43:38,003.003 INFO    ] Initializing speech engine...
[2026-06-27 17:43:38,014.014 INFO    ] 2026-06-27 17:43:38
[2026-06-27 17:43:38,225.225 INFO    ] 2026-06-27 17:43:38
[2026-06-27 17:43:38,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:43:38,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:43:38,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:43:38,596.596 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:43:38,656.656 INFO    ] time= 27/06/2026 17:43:38
[2026-06-27 17:43:38,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:43:38,686.686 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:43:38,753.753 INFO    ] No existing commands found in stream
[2026-06-27 17:43:43,768.768 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:43:43,771.771 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-27 17:43:45,677.677 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 17:43:45,679.679 INFO    ] Checking for system updates...
[2026-06-27 17:43:45,701.701 INFO    ] 200
[2026-06-27 17:43:45,703.703 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:43:45,734.734 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:43:45,735.735 INFO    ] No update needed
[2026-06-27 17:43:45,737.737 INFO    ] Checking for camera pi updates...
[2026-06-27 17:43:45,757.757 INFO    ] 200
[2026-06-27 17:43:45,758.758 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:43:45,782.782 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:43:45,831.831 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:43:45,833.833 INFO    ] No camera update needed
[2026-06-27 17:43:45,834.834 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:43:45,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:43:45,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:43:45,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:43:47,881.881 INFO    ] ================================================
[2026-06-27 17:43:47,896.896 INFO    ] Launching Daemon at Sat Jun 27 17:43:47 IST 2026
[2026-06-27 17:43:47,907.907 INFO    ] ================================================
[2026-06-27 17:43:48,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:43:48
[2026-06-27 17:43:48,602.602 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:43:48,737.737 INFO    ] Initializing speech engine...
[2026-06-27 17:43:48,742.742 INFO    ] 2026-06-27 17:43:48
[2026-06-27 17:43:48,937.937 INFO    ] 2026-06-27 17:43:48
[2026-06-27 17:43:48,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:43:49,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:43:49,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:43:49,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:43:49,230.230 INFO    ] time= 27/06/2026 17:43:49
[2026-06-27 17:43:49,236.236 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:43:49,240.240 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:43:49,347.347 INFO    ] No existing commands found in stream
[2026-06-27 17:43:54,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:43:54,367.367 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-27 17:43:56,822.822 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 17:43:56,823.823 INFO    ] Checking for system updates...
[2026-06-27 17:43:56,845.845 INFO    ] 200
[2026-06-27 17:43:56,847.847 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:43:56,877.877 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:43:56,878.878 INFO    ] No update needed
[2026-06-27 17:43:56,879.879 INFO    ] Checking for camera pi updates...
[2026-06-27 17:43:56,901.901 INFO    ] 200
[2026-06-27 17:43:56,902.902 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:43:56,926.926 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:43:56,972.972 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:43:56,973.973 INFO    ] No camera update needed
[2026-06-27 17:43:56,975.975 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:43:56,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:43:56,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:43:56,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:43:59,020.020 INFO    ] ================================================
[2026-06-27 17:43:59,036.036 INFO    ] Launching Daemon at Sat Jun 27 17:43:59 IST 2026
[2026-06-27 17:43:59,047.047 INFO    ] ================================================
[2026-06-27 17:43:59,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:43:59
[2026-06-27 17:43:59,698.698 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:43:59,835.835 INFO    ] Initializing speech engine...
[2026-06-27 17:43:59,845.845 INFO    ] 2026-06-27 17:43:59
[2026-06-27 17:44:00,047.047 INFO    ] 2026-06-27 17:44:00
[2026-06-27 17:44:00,076.076 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:44:00,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:44:00,263.263 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:44:00,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:44:00,491.491 INFO    ] time= 27/06/2026 17:44:00
[2026-06-27 17:44:00,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:44:00,498.498 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:44:00,565.565 INFO    ] No existing commands found in stream
[2026-06-27 17:44:05,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:44:05,577.577 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-27 17:44:07,286.286 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 17:44:07,287.287 INFO    ] Checking for system updates...
[2026-06-27 17:44:07,308.308 INFO    ] 200
[2026-06-27 17:44:07,310.310 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:44:07,349.349 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:44:07,351.351 INFO    ] No update needed
[2026-06-27 17:44:07,352.352 INFO    ] Checking for camera pi updates...
[2026-06-27 17:44:07,374.374 INFO    ] 200
[2026-06-27 17:44:07,375.375 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:44:07,399.399 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:44:07,439.439 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:44:07,441.441 INFO    ] No camera update needed
[2026-06-27 17:44:07,442.442 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:44:07,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:44:07,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:44:07,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:44:09,491.491 INFO    ] ================================================
[2026-06-27 17:44:09,506.506 INFO    ] Launching Daemon at Sat Jun 27 17:44:09 IST 2026
[2026-06-27 17:44:09,517.517 INFO    ] ================================================
[2026-06-27 17:44:09,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:44:09
[2026-06-27 17:44:10,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:44:10,318.318 INFO    ] Initializing speech engine...
[2026-06-27 17:44:10,329.329 INFO    ] 2026-06-27 17:44:10
[2026-06-27 17:44:10,533.533 INFO    ] 2026-06-27 17:44:10
[2026-06-27 17:44:10,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:44:10,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:44:10,749.749 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:44:10,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:44:10,952.952 INFO    ] time= 27/06/2026 17:44:10
[2026-06-27 17:44:10,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:44:10,982.982 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:44:11,048.048 INFO    ] No existing commands found in stream
[2026-06-27 17:44:16,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:44:16,061.061 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-27 17:44:18,015.015 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 17:44:18,016.016 INFO    ] Checking for system updates...
[2026-06-27 17:44:18,037.037 INFO    ] 200
[2026-06-27 17:44:18,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:44:18,070.070 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:44:18,072.072 INFO    ] No update needed
[2026-06-27 17:44:18,073.073 INFO    ] Checking for camera pi updates...
[2026-06-27 17:44:18,094.094 INFO    ] 200
[2026-06-27 17:44:18,095.095 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:44:18,121.121 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:44:18,163.163 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:44:18,165.165 INFO    ] No camera update needed
[2026-06-27 17:44:18,166.166 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:44:18,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:44:18,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:44:18,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:44:20,215.215 INFO    ] ================================================
[2026-06-27 17:44:20,231.231 INFO    ] Launching Daemon at Sat Jun 27 17:44:20 IST 2026
[2026-06-27 17:44:20,242.242 INFO    ] ================================================
[2026-06-27 17:44:20,583.583 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:44:20
[2026-06-27 17:44:20,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:44:21,040.040 INFO    ] Initializing speech engine...
[2026-06-27 17:44:21,048.048 INFO    ] 2026-06-27 17:44:21
[2026-06-27 17:44:21,270.270 INFO    ] 2026-06-27 17:44:21
[2026-06-27 17:44:21,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:44:21,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:44:21,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:44:21,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:44:21,682.682 INFO    ] time= 27/06/2026 17:44:21
[2026-06-27 17:44:21,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:44:21,748.748 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:44:21,824.824 INFO    ] No existing commands found in stream
[2026-06-27 17:44:26,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:44:26,836.836 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-27 17:44:30,675.675 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 17:44:30,677.677 INFO    ] Checking for system updates...
[2026-06-27 17:44:30,698.698 INFO    ] 200
[2026-06-27 17:44:30,700.700 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:44:30,730.730 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:44:30,732.732 INFO    ] No update needed
[2026-06-27 17:44:30,733.733 INFO    ] Checking for camera pi updates...
[2026-06-27 17:44:30,753.753 INFO    ] 200
[2026-06-27 17:44:30,755.755 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:44:30,781.781 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:44:30,824.824 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:44:30,825.825 INFO    ] No camera update needed
[2026-06-27 17:44:30,827.827 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:44:30,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:44:30,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:44:30,834.834 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:44:32,866.866 INFO    ] ================================================
[2026-06-27 17:44:32,882.882 INFO    ] Launching Daemon at Sat Jun 27 17:44:32 IST 2026
[2026-06-27 17:44:32,894.894 INFO    ] ================================================
[2026-06-27 17:44:33,225.225 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:44:33
[2026-06-27 17:44:33,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:44:33,681.681 INFO    ] Initializing speech engine...
[2026-06-27 17:44:33,686.686 INFO    ] 2026-06-27 17:44:33
[2026-06-27 17:44:33,889.889 INFO    ] 2026-06-27 17:44:33
[2026-06-27 17:44:33,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:44:34,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:44:34,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:44:34,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:44:34,308.308 INFO    ] time= 27/06/2026 17:44:34
[2026-06-27 17:44:34,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:44:34,336.336 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:44:34,403.403 INFO    ] No existing commands found in stream
[2026-06-27 17:44:39,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:44:39,415.415 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-27 17:44:43,636.636 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 17:44:43,637.637 INFO    ] Checking for system updates...
[2026-06-27 17:44:43,659.659 INFO    ] 200
[2026-06-27 17:44:43,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:44:43,693.693 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:44:43,695.695 INFO    ] No update needed
[2026-06-27 17:44:43,696.696 INFO    ] Checking for camera pi updates...
[2026-06-27 17:44:43,715.715 INFO    ] 200
[2026-06-27 17:44:43,717.717 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:44:43,742.742 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:44:43,767.767 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:44:43,769.769 INFO    ] No camera update needed
[2026-06-27 17:44:43,770.770 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:44:43,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:44:43,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:44:43,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:44:45,817.817 INFO    ] ================================================
[2026-06-27 17:44:45,832.832 INFO    ] Launching Daemon at Sat Jun 27 17:44:45 IST 2026
[2026-06-27 17:44:45,844.844 INFO    ] ================================================
[2026-06-27 17:44:46,224.224 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:44:46
[2026-06-27 17:44:46,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:44:46,709.709 INFO    ] Initializing speech engine...
[2026-06-27 17:44:46,718.718 INFO    ] 2026-06-27 17:44:46
[2026-06-27 17:44:46,931.931 INFO    ] 2026-06-27 17:44:46
[2026-06-27 17:44:46,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:44:47,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:44:47,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:44:47,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:44:47,358.358 INFO    ] time= 27/06/2026 17:44:47
[2026-06-27 17:44:47,382.382 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:44:47,389.389 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:44:47,457.457 INFO    ] No existing commands found in stream
[2026-06-27 17:44:52,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:44:52,469.469 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-27 17:44:53,015.015 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 17:44:53,016.016 INFO    ] Checking for system updates...
[2026-06-27 17:44:53,037.037 INFO    ] 200
[2026-06-27 17:44:53,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:44:53,071.071 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:44:53,072.072 INFO    ] No update needed
[2026-06-27 17:44:53,073.073 INFO    ] Checking for camera pi updates...
[2026-06-27 17:44:53,093.093 INFO    ] 200
[2026-06-27 17:44:53,094.094 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:44:53,119.119 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:44:53,168.168 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:44:53,169.169 INFO    ] No camera update needed
[2026-06-27 17:44:53,171.171 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:44:53,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:44:53,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:44:53,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:44:55,217.217 INFO    ] ================================================
[2026-06-27 17:44:55,234.234 INFO    ] Launching Daemon at Sat Jun 27 17:44:55 IST 2026
[2026-06-27 17:44:55,245.245 INFO    ] ================================================
[2026-06-27 17:44:55,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:44:55
[2026-06-27 17:44:55,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:44:56,055.055 INFO    ] Initializing speech engine...
[2026-06-27 17:44:56,060.060 INFO    ] 2026-06-27 17:44:56
[2026-06-27 17:44:56,265.265 INFO    ] 2026-06-27 17:44:56
[2026-06-27 17:44:56,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:44:56,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:44:56,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:44:56,616.616 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:44:56,682.682 INFO    ] time= 27/06/2026 17:44:56
[2026-06-27 17:44:56,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:44:56,712.712 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:44:56,777.777 INFO    ] No existing commands found in stream
[2026-06-27 17:45:01,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:45:01,794.794 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-27 17:45:04,335.335 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 17:45:04,336.336 INFO    ] Checking for system updates...
[2026-06-27 17:45:04,358.358 INFO    ] 200
[2026-06-27 17:45:04,359.359 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:45:04,393.393 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:45:04,394.394 INFO    ] No update needed
[2026-06-27 17:45:04,395.395 INFO    ] Checking for camera pi updates...
[2026-06-27 17:45:04,415.415 INFO    ] 200
[2026-06-27 17:45:04,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:45:04,445.445 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:45:04,487.487 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:45:04,488.488 INFO    ] No camera update needed
[2026-06-27 17:45:04,489.489 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:45:04,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:45:04,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:45:04,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:45:06,537.537 INFO    ] ================================================
[2026-06-27 17:45:06,552.552 INFO    ] Launching Daemon at Sat Jun 27 17:45:06 IST 2026
[2026-06-27 17:45:06,563.563 INFO    ] ================================================
[2026-06-27 17:45:06,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:45:06
[2026-06-27 17:45:07,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:45:07,347.347 INFO    ] Initializing speech engine...
[2026-06-27 17:45:07,355.355 INFO    ] 2026-06-27 17:45:07
[2026-06-27 17:45:07,575.575 INFO    ] 2026-06-27 17:45:07
[2026-06-27 17:45:07,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:45:07,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:45:07,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:45:07,971.971 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:45:08,009.009 INFO    ] time= 27/06/2026 17:45:07
[2026-06-27 17:45:08,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:45:08,016.016 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:45:08,082.082 INFO    ] No existing commands found in stream
[2026-06-27 17:45:13,093.093 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:45:13,096.096 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-27 17:45:15,726.726 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 17:45:15,727.727 INFO    ] Checking for system updates...
[2026-06-27 17:45:15,748.748 INFO    ] 200
[2026-06-27 17:45:15,750.750 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:45:15,782.782 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:45:15,784.784 INFO    ] No update needed
[2026-06-27 17:45:15,785.785 INFO    ] Checking for camera pi updates...
[2026-06-27 17:45:15,805.805 INFO    ] 200
[2026-06-27 17:45:15,806.806 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:45:15,831.831 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:45:15,877.877 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:45:15,879.879 INFO    ] No camera update needed
[2026-06-27 17:45:15,880.880 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:45:15,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:45:15,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:45:15,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:45:17,926.926 INFO    ] ================================================
[2026-06-27 17:45:17,942.942 INFO    ] Launching Daemon at Sat Jun 27 17:45:17 IST 2026
[2026-06-27 17:45:17,953.953 INFO    ] ================================================
[2026-06-27 17:45:18,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:45:18
[2026-06-27 17:45:18,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:45:18,766.766 INFO    ] Initializing speech engine...
[2026-06-27 17:45:18,779.779 INFO    ] 2026-06-27 17:45:18
[2026-06-27 17:45:18,999.999 INFO    ] 2026-06-27 17:45:18
[2026-06-27 17:45:19,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:45:19,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:45:19,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:45:19,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:45:19,428.428 INFO    ] time= 27/06/2026 17:45:19
[2026-06-27 17:45:19,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:45:19,479.479 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:45:19,555.555 INFO    ] No existing commands found in stream
[2026-06-27 17:45:24,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:45:24,568.568 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-27 17:45:28,198.198 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 17:45:28,199.199 INFO    ] Checking for system updates...
[2026-06-27 17:45:28,221.221 INFO    ] 200
[2026-06-27 17:45:28,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:45:28,252.252 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:45:28,254.254 INFO    ] No update needed
[2026-06-27 17:45:28,255.255 INFO    ] Checking for camera pi updates...
[2026-06-27 17:45:28,277.277 INFO    ] 200
[2026-06-27 17:45:28,278.278 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:45:28,302.302 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:45:28,343.343 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:45:28,345.345 INFO    ] No camera update needed
[2026-06-27 17:45:28,352.352 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:45:28,353.353 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:45:28,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:45:28,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:45:30,397.397 INFO    ] ================================================
[2026-06-27 17:45:30,412.412 INFO    ] Launching Daemon at Sat Jun 27 17:45:30 IST 2026
[2026-06-27 17:45:30,423.423 INFO    ] ================================================
[2026-06-27 17:45:30,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:45:30
[2026-06-27 17:45:31,072.072 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:45:31,217.217 INFO    ] Initializing speech engine...
[2026-06-27 17:45:31,222.222 INFO    ] 2026-06-27 17:45:31
[2026-06-27 17:45:31,426.426 INFO    ] 2026-06-27 17:45:31
[2026-06-27 17:45:31,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:45:31,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:45:31,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:45:31,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:45:31,833.833 INFO    ] time= 27/06/2026 17:45:31
[2026-06-27 17:45:31,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:45:31,872.872 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:45:31,943.943 INFO    ] No existing commands found in stream
[2026-06-27 17:45:36,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:45:36,960.960 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-27 17:45:40,019.019 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 17:45:40,020.020 INFO    ] Checking for system updates...
[2026-06-27 17:45:40,041.041 INFO    ] 200
[2026-06-27 17:45:40,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:45:40,076.076 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:45:40,077.077 INFO    ] No update needed
[2026-06-27 17:45:40,078.078 INFO    ] Checking for camera pi updates...
[2026-06-27 17:45:40,098.098 INFO    ] 200
[2026-06-27 17:45:40,099.099 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:45:40,124.124 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:45:40,166.166 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:45:40,168.168 INFO    ] No camera update needed
[2026-06-27 17:45:40,169.169 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:45:40,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:45:40,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:45:40,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:45:42,216.216 INFO    ] ================================================
[2026-06-27 17:45:42,232.232 INFO    ] Launching Daemon at Sat Jun 27 17:45:42 IST 2026
[2026-06-27 17:45:42,243.243 INFO    ] ================================================
[2026-06-27 17:45:42,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:45:42
[2026-06-27 17:45:42,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:45:43,036.036 INFO    ] Initializing speech engine...
[2026-06-27 17:45:43,041.041 INFO    ] 2026-06-27 17:45:43
[2026-06-27 17:45:43,249.249 INFO    ] 2026-06-27 17:45:43
[2026-06-27 17:45:43,276.276 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:45:43,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:45:43,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:45:43,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:45:43,688.688 INFO    ] time= 27/06/2026 17:45:43
[2026-06-27 17:45:43,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:45:43,761.761 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:45:43,882.882 INFO    ] No existing commands found in stream
[2026-06-27 17:45:48,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:45:48,899.899 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-27 17:45:51,557.557 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 17:45:51,558.558 INFO    ] Checking for system updates...
[2026-06-27 17:45:51,579.579 INFO    ] 200
[2026-06-27 17:45:51,581.581 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:45:51,611.611 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:45:51,612.612 INFO    ] No update needed
[2026-06-27 17:45:51,614.614 INFO    ] Checking for camera pi updates...
[2026-06-27 17:45:51,634.634 INFO    ] 200
[2026-06-27 17:45:51,635.635 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:45:51,658.658 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:45:51,700.700 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:45:51,702.702 INFO    ] No camera update needed
[2026-06-27 17:45:51,703.703 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:45:51,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:45:51,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:45:51,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:45:53,753.753 INFO    ] ================================================
[2026-06-27 17:45:53,769.769 INFO    ] Launching Daemon at Sat Jun 27 17:45:53 IST 2026
[2026-06-27 17:45:53,780.780 INFO    ] ================================================
[2026-06-27 17:45:54,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:45:54
[2026-06-27 17:45:54,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:45:54,653.653 INFO    ] Initializing speech engine...
[2026-06-27 17:45:54,661.661 INFO    ] 2026-06-27 17:45:54
[2026-06-27 17:45:54,878.878 INFO    ] 2026-06-27 17:45:54
[2026-06-27 17:45:54,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:45:55,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:45:55,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:45:55,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:45:55,255.255 INFO    ] time= 27/06/2026 17:45:55
[2026-06-27 17:45:55,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:45:55,335.335 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:45:55,407.407 INFO    ] No existing commands found in stream
[2026-06-27 17:46:00,421.421 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:46:00,425.425 INFO    ] Waiting 1.78 seconds before fallback handling...
[2026-06-27 17:46:02,555.555 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 17:46:02,556.556 INFO    ] Checking for system updates...
[2026-06-27 17:46:02,577.577 INFO    ] 200
[2026-06-27 17:46:02,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:46:02,609.609 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:46:02,610.610 INFO    ] No update needed
[2026-06-27 17:46:02,612.612 INFO    ] Checking for camera pi updates...
[2026-06-27 17:46:02,631.631 INFO    ] 200
[2026-06-27 17:46:02,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:46:02,659.659 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:46:02,697.697 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:46:02,699.699 INFO    ] No camera update needed
[2026-06-27 17:46:02,700.700 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:46:02,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:46:02,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:46:02,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:46:04,746.746 INFO    ] ================================================
[2026-06-27 17:46:04,761.761 INFO    ] Launching Daemon at Sat Jun 27 17:46:04 IST 2026
[2026-06-27 17:46:04,772.772 INFO    ] ================================================
[2026-06-27 17:46:05,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:46:05
[2026-06-27 17:46:05,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:46:05,584.584 INFO    ] Initializing speech engine...
[2026-06-27 17:46:05,593.593 INFO    ] 2026-06-27 17:46:05
[2026-06-27 17:46:05,805.805 INFO    ] 2026-06-27 17:46:05
[2026-06-27 17:46:05,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:46:05,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:46:06,020.020 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:46:06,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:46:06,227.227 INFO    ] time= 27/06/2026 17:46:06
[2026-06-27 17:46:06,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:46:06,257.257 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:46:06,322.322 INFO    ] No existing commands found in stream
[2026-06-27 17:46:11,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:46:11,335.335 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-27 17:46:14,046.046 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 17:46:14,047.047 INFO    ] Checking for system updates...
[2026-06-27 17:46:14,069.069 INFO    ] 200
[2026-06-27 17:46:14,070.070 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:46:14,101.101 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:46:14,102.102 INFO    ] No update needed
[2026-06-27 17:46:14,104.104 INFO    ] Checking for camera pi updates...
[2026-06-27 17:46:14,123.123 INFO    ] 200
[2026-06-27 17:46:14,125.125 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:46:14,148.148 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:46:14,201.201 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:46:14,203.203 INFO    ] No camera update needed
[2026-06-27 17:46:14,204.204 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:46:14,206.206 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:46:14,208.208 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:46:14,211.211 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:46:16,251.251 INFO    ] ================================================
[2026-06-27 17:46:16,266.266 INFO    ] Launching Daemon at Sat Jun 27 17:46:16 IST 2026
[2026-06-27 17:46:16,276.276 INFO    ] ================================================
[2026-06-27 17:46:16,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:46:16
[2026-06-27 17:46:16,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:46:17,063.063 INFO    ] Initializing speech engine...
[2026-06-27 17:46:17,069.069 INFO    ] 2026-06-27 17:46:17
[2026-06-27 17:46:17,272.272 INFO    ] 2026-06-27 17:46:17
[2026-06-27 17:46:17,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:46:17,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:46:17,489.489 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:46:17,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:46:17,691.691 INFO    ] time= 27/06/2026 17:46:17
[2026-06-27 17:46:17,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:46:17,724.724 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:46:17,789.789 INFO    ] No existing commands found in stream
[2026-06-27 17:46:22,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:46:22,802.802 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-27 17:46:24,415.415 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 17:46:24,416.416 INFO    ] Checking for system updates...
[2026-06-27 17:46:24,437.437 INFO    ] 200
[2026-06-27 17:46:24,438.438 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:46:24,470.470 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:46:24,472.472 INFO    ] No update needed
[2026-06-27 17:46:24,473.473 INFO    ] Checking for camera pi updates...
[2026-06-27 17:46:24,494.494 INFO    ] 200
[2026-06-27 17:46:24,495.495 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:46:24,519.519 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:46:24,564.564 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:46:24,565.565 INFO    ] No camera update needed
[2026-06-27 17:46:24,567.567 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:46:24,568.568 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:46:24,571.571 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:46:24,574.574 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:46:26,612.612 INFO    ] ================================================
[2026-06-27 17:46:26,628.628 INFO    ] Launching Daemon at Sat Jun 27 17:46:26 IST 2026
[2026-06-27 17:46:26,638.638 INFO    ] ================================================
[2026-06-27 17:46:27,008.008 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:46:27
[2026-06-27 17:46:27,327.327 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:46:27,469.469 INFO    ] Initializing speech engine...
[2026-06-27 17:46:27,479.479 INFO    ] 2026-06-27 17:46:27
[2026-06-27 17:46:27,684.684 INFO    ] 2026-06-27 17:46:27
[2026-06-27 17:46:27,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:46:27,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:46:27,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:46:28,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:46:28,099.099 INFO    ] time= 27/06/2026 17:46:28
[2026-06-27 17:46:28,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:46:28,132.132 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:46:28,198.198 INFO    ] No existing commands found in stream
[2026-06-27 17:46:33,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:46:33,209.209 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-27 17:46:35,690.690 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 17:46:35,692.692 INFO    ] Checking for system updates...
[2026-06-27 17:46:35,713.713 INFO    ] 200
[2026-06-27 17:46:35,715.715 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:46:35,745.745 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:46:35,747.747 INFO    ] No update needed
[2026-06-27 17:46:35,748.748 INFO    ] Checking for camera pi updates...
[2026-06-27 17:46:35,769.769 INFO    ] 200
[2026-06-27 17:46:35,770.770 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:46:35,797.797 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:46:35,840.840 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:46:35,842.842 INFO    ] No camera update needed
[2026-06-27 17:46:35,843.843 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:46:35,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:46:35,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:46:35,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:46:37,889.889 INFO    ] ================================================
[2026-06-27 17:46:37,903.903 INFO    ] Launching Daemon at Sat Jun 27 17:46:37 IST 2026
[2026-06-27 17:46:37,910.910 INFO    ] ================================================
[2026-06-27 17:46:38,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:46:38
[2026-06-27 17:46:38,624.624 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:46:38,789.789 INFO    ] Initializing speech engine...
[2026-06-27 17:46:38,795.795 INFO    ] 2026-06-27 17:46:38
[2026-06-27 17:46:39,019.019 INFO    ] 2026-06-27 17:46:38
[2026-06-27 17:46:39,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:46:39,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:46:39,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:46:39,414.414 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:46:39,471.471 INFO    ] time= 27/06/2026 17:46:39
[2026-06-27 17:46:39,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:46:39,504.504 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:46:39,573.573 INFO    ] No existing commands found in stream
[2026-06-27 17:46:44,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:46:44,587.587 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-27 17:46:47,550.550 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 17:46:47,551.551 INFO    ] Checking for system updates...
[2026-06-27 17:46:47,573.573 INFO    ] 200
[2026-06-27 17:46:47,575.575 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:46:47,606.606 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:46:47,608.608 INFO    ] No update needed
[2026-06-27 17:46:47,609.609 INFO    ] Checking for camera pi updates...
[2026-06-27 17:46:47,629.629 INFO    ] 200
[2026-06-27 17:46:47,631.631 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:46:47,656.656 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:46:47,703.703 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:46:47,704.704 INFO    ] No camera update needed
[2026-06-27 17:46:47,706.706 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:46:47,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:46:47,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:46:47,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:46:49,751.751 INFO    ] ================================================
[2026-06-27 17:46:49,769.769 INFO    ] Launching Daemon at Sat Jun 27 17:46:49 IST 2026
[2026-06-27 17:46:49,780.780 INFO    ] ================================================
[2026-06-27 17:46:50,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:46:50
[2026-06-27 17:46:50,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:46:50,556.556 INFO    ] Initializing speech engine...
[2026-06-27 17:46:50,564.564 INFO    ] 2026-06-27 17:46:50
[2026-06-27 17:46:50,778.778 INFO    ] 2026-06-27 17:46:50
[2026-06-27 17:46:50,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:46:50,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:46:50,996.996 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:46:51,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:46:51,190.190 INFO    ] time= 27/06/2026 17:46:51
[2026-06-27 17:46:51,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:46:51,230.230 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:46:51,302.302 INFO    ] No existing commands found in stream
[2026-06-27 17:46:56,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:46:56,314.314 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-27 17:47:00,237.237 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 17:47:00,238.238 INFO    ] Checking for system updates...
[2026-06-27 17:47:00,259.259 INFO    ] 200
[2026-06-27 17:47:00,260.260 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:47:00,292.292 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:47:00,293.293 INFO    ] No update needed
[2026-06-27 17:47:00,294.294 INFO    ] Checking for camera pi updates...
[2026-06-27 17:47:00,314.314 INFO    ] 200
[2026-06-27 17:47:00,315.315 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:47:00,339.339 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:47:00,380.380 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:47:00,381.381 INFO    ] No camera update needed
[2026-06-27 17:47:00,382.382 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:47:00,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:47:00,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:47:00,389.389 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:47:02,431.431 INFO    ] ================================================
[2026-06-27 17:47:02,441.441 INFO    ] Launching Daemon at Sat Jun 27 17:47:02 IST 2026
[2026-06-27 17:47:02,448.448 INFO    ] ================================================
[2026-06-27 17:47:02,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:47:02
[2026-06-27 17:47:03,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:47:03,290.290 INFO    ] Initializing speech engine...
[2026-06-27 17:47:03,295.295 INFO    ] 2026-06-27 17:47:03
[2026-06-27 17:47:03,499.499 INFO    ] 2026-06-27 17:47:03
[2026-06-27 17:47:03,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:47:03,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:47:03,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:47:03,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:47:03,944.944 INFO    ] time= 27/06/2026 17:47:03
[2026-06-27 17:47:03,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:47:03,952.952 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:47:04,017.017 INFO    ] No existing commands found in stream
[2026-06-27 17:47:09,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:47:09,032.032 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-27 17:47:10,632.632 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 17:47:10,634.634 INFO    ] Checking for system updates...
[2026-06-27 17:47:10,655.655 INFO    ] 200
[2026-06-27 17:47:10,657.657 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:47:10,688.688 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:47:10,690.690 INFO    ] No update needed
[2026-06-27 17:47:10,691.691 INFO    ] Checking for camera pi updates...
[2026-06-27 17:47:10,711.711 INFO    ] 200
[2026-06-27 17:47:10,713.713 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:47:10,739.739 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:47:10,784.784 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:47:10,786.786 INFO    ] No camera update needed
[2026-06-27 17:47:10,787.787 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:47:10,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:47:10,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:47:10,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:47:12,833.833 INFO    ] ================================================
[2026-06-27 17:47:12,848.848 INFO    ] Launching Daemon at Sat Jun 27 17:47:12 IST 2026
[2026-06-27 17:47:12,859.859 INFO    ] ================================================
[2026-06-27 17:47:13,194.194 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:47:13
[2026-06-27 17:47:13,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:47:13,650.650 INFO    ] Initializing speech engine...
[2026-06-27 17:47:13,656.656 INFO    ] 2026-06-27 17:47:13
[2026-06-27 17:47:13,858.858 INFO    ] 2026-06-27 17:47:13
[2026-06-27 17:47:13,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:47:14,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:47:14,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:47:14,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:47:14,274.274 INFO    ] time= 27/06/2026 17:47:14
[2026-06-27 17:47:14,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:47:14,315.315 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:47:14,386.386 INFO    ] No existing commands found in stream
[2026-06-27 17:47:19,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:47:19,397.397 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-27 17:47:20,115.115 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 17:47:20,116.116 INFO    ] Checking for system updates...
[2026-06-27 17:47:20,137.137 INFO    ] 200
[2026-06-27 17:47:20,138.138 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:47:20,172.172 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:47:20,173.173 INFO    ] No update needed
[2026-06-27 17:47:20,175.175 INFO    ] Checking for camera pi updates...
[2026-06-27 17:47:20,196.196 INFO    ] 200
[2026-06-27 17:47:20,197.197 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:47:20,221.221 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:47:20,271.271 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:47:20,273.273 INFO    ] No camera update needed
[2026-06-27 17:47:20,274.274 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:47:20,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:47:20,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:47:20,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:47:22,320.320 INFO    ] ================================================
[2026-06-27 17:47:22,335.335 INFO    ] Launching Daemon at Sat Jun 27 17:47:22 IST 2026
[2026-06-27 17:47:22,346.346 INFO    ] ================================================
[2026-06-27 17:47:22,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:47:22
[2026-06-27 17:47:22,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:47:23,118.118 INFO    ] Initializing speech engine...
[2026-06-27 17:47:23,122.122 INFO    ] 2026-06-27 17:47:23
[2026-06-27 17:47:23,340.340 INFO    ] 2026-06-27 17:47:23
[2026-06-27 17:47:23,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:47:23,495.495 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:47:23,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:47:23,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:47:23,754.754 INFO    ] time= 27/06/2026 17:47:23
[2026-06-27 17:47:23,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:47:23,794.794 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:47:23,866.866 INFO    ] No existing commands found in stream
[2026-06-27 17:47:28,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:47:28,879.879 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-27 17:47:33,190.190 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 17:47:33,194.194 INFO    ] Checking for system updates...
[2026-06-27 17:47:33,231.231 INFO    ] 200
[2026-06-27 17:47:33,234.234 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:47:33,291.291 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:47:33,292.292 INFO    ] No update needed
[2026-06-27 17:47:33,294.294 INFO    ] Checking for camera pi updates...
[2026-06-27 17:47:33,313.313 INFO    ] 200
[2026-06-27 17:47:33,315.315 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:47:33,338.338 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:47:33,390.390 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:47:33,391.391 INFO    ] No camera update needed
[2026-06-27 17:47:33,392.392 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:47:33,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:47:33,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:47:33,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:47:35,439.439 INFO    ] ================================================
[2026-06-27 17:47:35,454.454 INFO    ] Launching Daemon at Sat Jun 27 17:47:35 IST 2026
[2026-06-27 17:47:35,465.465 INFO    ] ================================================
[2026-06-27 17:47:35,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:47:35
[2026-06-27 17:47:36,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:47:36,274.274 INFO    ] Initializing speech engine...
[2026-06-27 17:47:36,279.279 INFO    ] 2026-06-27 17:47:36
[2026-06-27 17:47:36,482.482 INFO    ] 2026-06-27 17:47:36
[2026-06-27 17:47:36,512.512 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:47:36,697.697 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:47:36,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:47:36,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:47:36,907.907 INFO    ] time= 27/06/2026 17:47:36
[2026-06-27 17:47:36,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:47:36,937.937 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:47:37,004.004 INFO    ] No existing commands found in stream
[2026-06-27 17:47:42,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:47:42,021.021 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-27 17:47:42,976.976 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 17:47:42,978.978 INFO    ] Checking for system updates...
[2026-06-27 17:47:43,000.000 INFO    ] 200
[2026-06-27 17:47:43,002.002 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:47:43,036.036 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:47:43,037.037 INFO    ] No update needed
[2026-06-27 17:47:43,038.038 INFO    ] Checking for camera pi updates...
[2026-06-27 17:47:43,058.058 INFO    ] 200
[2026-06-27 17:47:43,059.059 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:47:43,082.082 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:47:43,233.233 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:47:43,234.234 INFO    ] No camera update needed
[2026-06-27 17:47:43,235.235 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:47:43,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:47:43,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:47:43,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:47:45,281.281 INFO    ] ================================================
[2026-06-27 17:47:45,297.297 INFO    ] Launching Daemon at Sat Jun 27 17:47:45 IST 2026
[2026-06-27 17:47:45,309.309 INFO    ] ================================================
[2026-06-27 17:47:45,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:47:45
[2026-06-27 17:47:45,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:47:46,114.114 INFO    ] Initializing speech engine...
[2026-06-27 17:47:46,118.118 INFO    ] 2026-06-27 17:47:46
[2026-06-27 17:47:46,335.335 INFO    ] 2026-06-27 17:47:46
[2026-06-27 17:47:46,364.364 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:47:46,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:47:46,550.550 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:47:46,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:47:46,742.742 INFO    ] time= 27/06/2026 17:47:46
[2026-06-27 17:47:46,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:47:46,782.782 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:47:46,854.854 INFO    ] No existing commands found in stream
[2026-06-27 17:47:51,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:47:51,866.866 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-27 17:47:52,891.891 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 17:47:52,893.893 INFO    ] Checking for system updates...
[2026-06-27 17:47:52,915.915 INFO    ] 200
[2026-06-27 17:47:52,917.917 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:47:52,950.950 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:47:52,951.951 INFO    ] No update needed
[2026-06-27 17:47:52,953.953 INFO    ] Checking for camera pi updates...
[2026-06-27 17:47:52,973.973 INFO    ] 200
[2026-06-27 17:47:52,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:47:52,999.999 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:47:53,041.041 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:47:53,043.043 INFO    ] No camera update needed
[2026-06-27 17:47:53,044.044 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:47:53,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:47:53,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:47:53,051.051 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:47:55,090.090 INFO    ] ================================================
[2026-06-27 17:47:55,106.106 INFO    ] Launching Daemon at Sat Jun 27 17:47:55 IST 2026
[2026-06-27 17:47:55,118.118 INFO    ] ================================================
[2026-06-27 17:47:55,461.461 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:47:55
[2026-06-27 17:47:55,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:47:55,906.906 INFO    ] Initializing speech engine...
[2026-06-27 17:47:55,914.914 INFO    ] 2026-06-27 17:47:55
[2026-06-27 17:47:56,129.129 INFO    ] 2026-06-27 17:47:56
[2026-06-27 17:47:56,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:47:56,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:47:56,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:47:56,489.489 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:47:56,553.553 INFO    ] time= 27/06/2026 17:47:56
[2026-06-27 17:47:56,581.581 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:47:56,587.587 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:47:56,655.655 INFO    ] No existing commands found in stream
[2026-06-27 17:48:01,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:48:01,670.670 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-27 17:48:03,761.761 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 17:48:03,763.763 INFO    ] Checking for system updates...
[2026-06-27 17:48:03,784.784 INFO    ] 200
[2026-06-27 17:48:03,785.785 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:48:03,815.815 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:48:03,817.817 INFO    ] No update needed
[2026-06-27 17:48:03,818.818 INFO    ] Checking for camera pi updates...
[2026-06-27 17:48:03,839.839 INFO    ] 200
[2026-06-27 17:48:03,841.841 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:48:03,866.866 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:48:03,913.913 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:48:03,914.914 INFO    ] No camera update needed
[2026-06-27 17:48:03,916.916 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:48:03,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:48:03,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:48:03,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:48:05,963.963 INFO    ] ================================================
[2026-06-27 17:48:05,978.978 INFO    ] Launching Daemon at Sat Jun 27 17:48:05 IST 2026
[2026-06-27 17:48:05,990.990 INFO    ] ================================================
[2026-06-27 17:48:06,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:48:06
[2026-06-27 17:48:06,670.670 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:48:06,808.808 INFO    ] Initializing speech engine...
[2026-06-27 17:48:06,818.818 INFO    ] 2026-06-27 17:48:06
[2026-06-27 17:48:07,023.023 INFO    ] 2026-06-27 17:48:07
[2026-06-27 17:48:07,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:48:07,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:48:07,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:48:07,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:48:07,442.442 INFO    ] time= 27/06/2026 17:48:07
[2026-06-27 17:48:07,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:48:07,471.471 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:48:07,537.537 INFO    ] No existing commands found in stream
[2026-06-27 17:48:12,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:48:12,549.549 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-27 17:48:14,644.644 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 17:48:14,645.645 INFO    ] Checking for system updates...
[2026-06-27 17:48:14,666.666 INFO    ] 200
[2026-06-27 17:48:14,668.668 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:48:14,699.699 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:48:14,700.700 INFO    ] No update needed
[2026-06-27 17:48:14,702.702 INFO    ] Checking for camera pi updates...
[2026-06-27 17:48:14,723.723 INFO    ] 200
[2026-06-27 17:48:14,724.724 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:48:14,750.750 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:48:14,790.790 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:48:14,792.792 INFO    ] No camera update needed
[2026-06-27 17:48:14,793.793 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:48:14,795.795 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:48:14,798.798 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:48:14,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:48:16,842.842 INFO    ] ================================================
[2026-06-27 17:48:16,858.858 INFO    ] Launching Daemon at Sat Jun 27 17:48:16 IST 2026
[2026-06-27 17:48:16,870.870 INFO    ] ================================================
[2026-06-27 17:48:17,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:48:17
[2026-06-27 17:48:17,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:48:17,686.686 INFO    ] Initializing speech engine...
[2026-06-27 17:48:17,691.691 INFO    ] 2026-06-27 17:48:17
[2026-06-27 17:48:17,898.898 INFO    ] 2026-06-27 17:48:17
[2026-06-27 17:48:17,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:48:18,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:48:18,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:48:18,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:48:18,330.330 INFO    ] time= 27/06/2026 17:48:18
[2026-06-27 17:48:18,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:48:18,359.359 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:48:18,426.426 INFO    ] No existing commands found in stream
[2026-06-27 17:48:23,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:48:23,438.438 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-27 17:48:24,074.074 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 17:48:24,076.076 INFO    ] Checking for system updates...
[2026-06-27 17:48:24,098.098 INFO    ] 200
[2026-06-27 17:48:24,099.099 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:48:24,131.131 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:48:24,132.132 INFO    ] No update needed
[2026-06-27 17:48:24,133.133 INFO    ] Checking for camera pi updates...
[2026-06-27 17:48:24,155.155 INFO    ] 200
[2026-06-27 17:48:24,156.156 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:48:24,180.180 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:48:24,218.218 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:48:24,220.220 INFO    ] No camera update needed
[2026-06-27 17:48:24,221.221 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:48:24,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:48:24,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:48:24,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:48:26,268.268 INFO    ] ================================================
[2026-06-27 17:48:26,284.284 INFO    ] Launching Daemon at Sat Jun 27 17:48:26 IST 2026
[2026-06-27 17:48:26,295.295 INFO    ] ================================================
[2026-06-27 17:48:26,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:48:26
[2026-06-27 17:48:26,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:48:27,126.126 INFO    ] Initializing speech engine...
[2026-06-27 17:48:27,130.130 INFO    ] 2026-06-27 17:48:27
[2026-06-27 17:48:27,333.333 INFO    ] 2026-06-27 17:48:27
[2026-06-27 17:48:27,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:48:27,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:48:27,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:48:27,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:48:27,747.747 INFO    ] time= 27/06/2026 17:48:27
[2026-06-27 17:48:27,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:48:27,780.780 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:48:27,846.846 INFO    ] No existing commands found in stream
[2026-06-27 17:48:32,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:48:32,861.861 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-27 17:48:36,851.851 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 17:48:36,853.853 INFO    ] Checking for system updates...
[2026-06-27 17:48:36,874.874 INFO    ] 200
[2026-06-27 17:48:36,876.876 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:48:36,908.908 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:48:36,909.909 INFO    ] No update needed
[2026-06-27 17:48:36,911.911 INFO    ] Checking for camera pi updates...
[2026-06-27 17:48:36,938.938 INFO    ] 200
[2026-06-27 17:48:36,939.939 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:48:36,965.965 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:48:37,011.011 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:48:37,013.013 INFO    ] No camera update needed
[2026-06-27 17:48:37,014.014 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:48:37,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:48:37,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:48:37,022.022 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:48:39,063.063 INFO    ] ================================================
[2026-06-27 17:48:39,079.079 INFO    ] Launching Daemon at Sat Jun 27 17:48:39 IST 2026
[2026-06-27 17:48:39,090.090 INFO    ] ================================================
[2026-06-27 17:48:39,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:48:39
[2026-06-27 17:48:39,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:48:39,887.887 INFO    ] Initializing speech engine...
[2026-06-27 17:48:39,896.896 INFO    ] 2026-06-27 17:48:39
[2026-06-27 17:48:40,100.100 INFO    ] 2026-06-27 17:48:40
[2026-06-27 17:48:40,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:48:40,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:48:40,315.315 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:48:40,449.449 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:48:40,517.517 INFO    ] time= 27/06/2026 17:48:40
[2026-06-27 17:48:40,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:48:40,546.546 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:48:40,642.642 INFO    ] No existing commands found in stream
[2026-06-27 17:48:45,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:48:45,659.659 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-27 17:48:46,328.328 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 17:48:46,330.330 INFO    ] Checking for system updates...
[2026-06-27 17:48:46,351.351 INFO    ] 200
[2026-06-27 17:48:46,352.352 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:48:46,382.382 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:48:46,384.384 INFO    ] No update needed
[2026-06-27 17:48:46,385.385 INFO    ] Checking for camera pi updates...
[2026-06-27 17:48:46,404.404 INFO    ] 200
[2026-06-27 17:48:46,406.406 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:48:46,431.431 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:48:46,475.475 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:48:46,477.477 INFO    ] No camera update needed
[2026-06-27 17:48:46,478.478 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:48:46,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:48:46,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:48:46,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:48:48,523.523 INFO    ] ================================================
[2026-06-27 17:48:48,539.539 INFO    ] Launching Daemon at Sat Jun 27 17:48:48 IST 2026
[2026-06-27 17:48:48,551.551 INFO    ] ================================================
[2026-06-27 17:48:48,872.872 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:48:48
[2026-06-27 17:48:49,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:48:49,326.326 INFO    ] Initializing speech engine...
[2026-06-27 17:48:49,331.331 INFO    ] 2026-06-27 17:48:49
[2026-06-27 17:48:49,554.554 INFO    ] 2026-06-27 17:48:49
[2026-06-27 17:48:49,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:48:49,708.708 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:48:49,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:48:49,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:48:49,982.982 INFO    ] time= 27/06/2026 17:48:49
[2026-06-27 17:48:50,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:48:50,012.012 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:48:50,079.079 INFO    ] No existing commands found in stream
[2026-06-27 17:48:55,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:48:55,089.089 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-27 17:48:57,088.088 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 17:48:57,090.090 INFO    ] Checking for system updates...
[2026-06-27 17:48:57,111.111 INFO    ] 200
[2026-06-27 17:48:57,112.112 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:48:57,143.143 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:48:57,144.144 INFO    ] No update needed
[2026-06-27 17:48:57,146.146 INFO    ] Checking for camera pi updates...
[2026-06-27 17:48:57,165.165 INFO    ] 200
[2026-06-27 17:48:57,166.166 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:48:57,191.191 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:48:57,241.241 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:48:57,243.243 INFO    ] No camera update needed
[2026-06-27 17:48:57,244.244 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:48:57,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:48:57,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:48:57,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:48:59,291.291 INFO    ] ================================================
[2026-06-27 17:48:59,306.306 INFO    ] Launching Daemon at Sat Jun 27 17:48:59 IST 2026
[2026-06-27 17:48:59,318.318 INFO    ] ================================================
[2026-06-27 17:48:59,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:48:59
[2026-06-27 17:48:59,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:49:00,109.109 INFO    ] Initializing speech engine...
[2026-06-27 17:49:00,119.119 INFO    ] 2026-06-27 17:49:00
[2026-06-27 17:49:00,324.324 INFO    ] 2026-06-27 17:49:00
[2026-06-27 17:49:00,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:49:00,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:49:00,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:49:00,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:49:00,731.731 INFO    ] time= 27/06/2026 17:49:00
[2026-06-27 17:49:00,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:49:00,775.775 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:49:00,842.842 INFO    ] No existing commands found in stream
[2026-06-27 17:49:05,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:49:05,859.859 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-27 17:49:09,031.031 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 17:49:09,032.032 INFO    ] Checking for system updates...
[2026-06-27 17:49:09,054.054 INFO    ] 200
[2026-06-27 17:49:09,055.055 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:49:09,086.086 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:49:09,087.087 INFO    ] No update needed
[2026-06-27 17:49:09,088.088 INFO    ] Checking for camera pi updates...
[2026-06-27 17:49:09,109.109 INFO    ] 200
[2026-06-27 17:49:09,110.110 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:49:09,135.135 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:49:09,179.179 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:49:09,180.180 INFO    ] No camera update needed
[2026-06-27 17:49:09,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:49:09,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:49:09,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:49:09,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:49:11,228.228 INFO    ] ================================================
[2026-06-27 17:49:11,244.244 INFO    ] Launching Daemon at Sat Jun 27 17:49:11 IST 2026
[2026-06-27 17:49:11,255.255 INFO    ] ================================================
[2026-06-27 17:49:11,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:49:11
[2026-06-27 17:49:11,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:49:12,075.075 INFO    ] Initializing speech engine...
[2026-06-27 17:49:12,080.080 INFO    ] 2026-06-27 17:49:12
[2026-06-27 17:49:12,285.285 INFO    ] 2026-06-27 17:49:12
[2026-06-27 17:49:12,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:49:12,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:49:12,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:49:12,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:49:12,701.701 INFO    ] time= 27/06/2026 17:49:12
[2026-06-27 17:49:12,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:49:12,735.735 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:49:12,802.802 INFO    ] No existing commands found in stream
[2026-06-27 17:49:17,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:49:17,814.814 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-27 17:49:21,479.479 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 17:49:21,481.481 INFO    ] Checking for system updates...
[2026-06-27 17:49:21,505.505 INFO    ] 200
[2026-06-27 17:49:21,506.506 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:49:21,539.539 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:49:21,540.540 INFO    ] No update needed
[2026-06-27 17:49:21,541.541 INFO    ] Checking for camera pi updates...
[2026-06-27 17:49:21,564.564 INFO    ] 200
[2026-06-27 17:49:21,566.566 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:49:21,589.589 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:49:21,635.635 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:49:21,636.636 INFO    ] No camera update needed
[2026-06-27 17:49:21,638.638 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:49:21,639.639 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:49:21,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:49:21,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:49:23,691.691 INFO    ] ================================================
[2026-06-27 17:49:23,707.707 INFO    ] Launching Daemon at Sat Jun 27 17:49:23 IST 2026
[2026-06-27 17:49:23,718.718 INFO    ] ================================================
[2026-06-27 17:49:24,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:49:24
[2026-06-27 17:49:24,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:49:24,530.530 INFO    ] Initializing speech engine...
[2026-06-27 17:49:24,535.535 INFO    ] 2026-06-27 17:49:24
[2026-06-27 17:49:24,738.738 INFO    ] 2026-06-27 17:49:24
[2026-06-27 17:49:24,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:49:24,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:49:24,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:49:25,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:49:25,145.145 INFO    ] time= 27/06/2026 17:49:25
[2026-06-27 17:49:25,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:49:25,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:49:25,263.263 INFO    ] No existing commands found in stream
[2026-06-27 17:49:30,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:49:30,275.275 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-27 17:49:33,141.141 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 17:49:33,142.142 INFO    ] Checking for system updates...
[2026-06-27 17:49:33,163.163 INFO    ] 200
[2026-06-27 17:49:33,165.165 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:49:33,198.198 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:49:33,199.199 INFO    ] No update needed
[2026-06-27 17:49:33,201.201 INFO    ] Checking for camera pi updates...
[2026-06-27 17:49:33,220.220 INFO    ] 200
[2026-06-27 17:49:33,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:49:33,245.245 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:49:33,287.287 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:49:33,289.289 INFO    ] No camera update needed
[2026-06-27 17:49:33,290.290 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:49:33,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:49:33,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:49:33,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:49:35,337.337 INFO    ] ================================================
[2026-06-27 17:49:35,353.353 INFO    ] Launching Daemon at Sat Jun 27 17:49:35 IST 2026
[2026-06-27 17:49:35,365.365 INFO    ] ================================================
[2026-06-27 17:49:35,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:49:35
[2026-06-27 17:49:36,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:49:36,212.212 INFO    ] Initializing speech engine...
[2026-06-27 17:49:36,216.216 INFO    ] 2026-06-27 17:49:36
[2026-06-27 17:49:36,441.441 INFO    ] 2026-06-27 17:49:36
[2026-06-27 17:49:36,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:49:36,596.596 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:49:36,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:49:36,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:49:36,872.872 INFO    ] time= 27/06/2026 17:49:36
[2026-06-27 17:49:36,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:49:36,901.901 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:49:36,967.967 INFO    ] No existing commands found in stream
[2026-06-27 17:49:41,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:49:41,981.981 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-27 17:49:43,672.672 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 17:49:43,673.673 INFO    ] Checking for system updates...
[2026-06-27 17:49:43,696.696 INFO    ] 200
[2026-06-27 17:49:43,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:49:43,733.733 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:49:43,734.734 INFO    ] No update needed
[2026-06-27 17:49:43,736.736 INFO    ] Checking for camera pi updates...
[2026-06-27 17:49:43,758.758 INFO    ] 200
[2026-06-27 17:49:43,759.759 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:49:43,783.783 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:49:43,928.928 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:49:43,929.929 INFO    ] No camera update needed
[2026-06-27 17:49:43,931.931 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:49:43,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:49:43,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:49:43,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:49:45,982.982 INFO    ] ================================================
[2026-06-27 17:49:46,999.999 INFO    ] Launching Daemon at Sat Jun 27 17:49:45 IST 2026
[2026-06-27 17:49:46,010.010 INFO    ] ================================================
[2026-06-27 17:49:46,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:49:46
[2026-06-27 17:49:46,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:49:46,880.880 INFO    ] Initializing speech engine...
[2026-06-27 17:49:46,886.886 INFO    ] 2026-06-27 17:49:46
[2026-06-27 17:49:47,092.092 INFO    ] 2026-06-27 17:49:47
[2026-06-27 17:49:47,120.120 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:49:47,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:49:47,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:49:47,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:49:47,532.532 INFO    ] time= 27/06/2026 17:49:47
[2026-06-27 17:49:47,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:49:47,540.540 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:49:47,607.607 INFO    ] No existing commands found in stream
[2026-06-27 17:49:52,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:49:52,617.617 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-27 17:49:58,804.804 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 17:49:58,806.806 INFO    ] Checking for system updates...
[2026-06-27 17:49:58,827.827 INFO    ] 200
[2026-06-27 17:49:58,828.828 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:49:58,859.859 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:49:58,860.860 INFO    ] No update needed
[2026-06-27 17:49:58,862.862 INFO    ] Checking for camera pi updates...
[2026-06-27 17:49:58,881.881 INFO    ] 200
[2026-06-27 17:49:58,883.883 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:49:58,909.909 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:49:58,950.950 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:49:58,951.951 INFO    ] No camera update needed
[2026-06-27 17:49:58,952.952 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:49:58,954.954 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:49:58,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:49:58,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:50:01,998.998 INFO    ] ================================================
[2026-06-27 17:50:01,014.014 INFO    ] Launching Daemon at Sat Jun 27 17:50:01 IST 2026
[2026-06-27 17:50:01,025.025 INFO    ] ================================================
[2026-06-27 17:50:01,408.408 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:50:01
[2026-06-27 17:50:01,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:50:01,891.891 INFO    ] Initializing speech engine...
[2026-06-27 17:50:01,896.896 INFO    ] 2026-06-27 17:50:01
[2026-06-27 17:50:02,329.329 INFO    ] 2026-06-27 17:50:02
[2026-06-27 17:50:02,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:50:02,532.532 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:50:02,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:50:02,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:50:02,734.734 INFO    ] time= 27/06/2026 17:50:02
[2026-06-27 17:50:02,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:50:02,871.871 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:50:02,986.986 INFO    ] No existing commands found in stream
[2026-06-27 17:50:07,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:50:07,999.999 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-27 17:50:10,037.037 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 17:50:10,038.038 INFO    ] Checking for system updates...
[2026-06-27 17:50:10,060.060 INFO    ] 200
[2026-06-27 17:50:10,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:50:10,094.094 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:50:10,096.096 INFO    ] No update needed
[2026-06-27 17:50:10,097.097 INFO    ] Checking for camera pi updates...
[2026-06-27 17:50:10,118.118 INFO    ] 200
[2026-06-27 17:50:10,119.119 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:50:10,144.144 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:50:10,186.186 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:50:10,188.188 INFO    ] No camera update needed
[2026-06-27 17:50:10,189.189 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:50:10,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:50:10,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:50:10,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:50:12,235.235 INFO    ] ================================================
[2026-06-27 17:50:12,251.251 INFO    ] Launching Daemon at Sat Jun 27 17:50:12 IST 2026
[2026-06-27 17:50:12,262.262 INFO    ] ================================================
[2026-06-27 17:50:12,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:50:12
[2026-06-27 17:50:12,921.921 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:50:13,065.065 INFO    ] Initializing speech engine...
[2026-06-27 17:50:13,069.069 INFO    ] 2026-06-27 17:50:13
[2026-06-27 17:50:13,277.277 INFO    ] 2026-06-27 17:50:13
[2026-06-27 17:50:13,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:50:13,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:50:13,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:50:13,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:50:13,702.702 INFO    ] time= 27/06/2026 17:50:13
[2026-06-27 17:50:13,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:50:13,795.795 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:50:13,862.862 INFO    ] No existing commands found in stream
[2026-06-27 17:50:18,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:50:18,879.879 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-27 17:50:20,152.152 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 17:50:20,154.154 INFO    ] Checking for system updates...
[2026-06-27 17:50:20,175.175 INFO    ] 200
[2026-06-27 17:50:20,176.176 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:50:20,208.208 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:50:20,209.209 INFO    ] No update needed
[2026-06-27 17:50:20,210.210 INFO    ] Checking for camera pi updates...
[2026-06-27 17:50:20,230.230 INFO    ] 200
[2026-06-27 17:50:20,231.231 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:50:20,255.255 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:50:20,300.300 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:50:20,301.301 INFO    ] No camera update needed
[2026-06-27 17:50:20,302.302 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:50:20,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:50:20,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:50:20,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:50:22,349.349 INFO    ] ================================================
[2026-06-27 17:50:22,365.365 INFO    ] Launching Daemon at Sat Jun 27 17:50:22 IST 2026
[2026-06-27 17:50:22,376.376 INFO    ] ================================================
[2026-06-27 17:50:22,709.709 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:50:22
[2026-06-27 17:50:23,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:50:23,162.162 INFO    ] Initializing speech engine...
[2026-06-27 17:50:23,168.168 INFO    ] 2026-06-27 17:50:23
[2026-06-27 17:50:23,372.372 INFO    ] 2026-06-27 17:50:23
[2026-06-27 17:50:23,400.400 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:50:23,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:50:23,595.595 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:50:23,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:50:23,803.803 INFO    ] time= 27/06/2026 17:50:23
[2026-06-27 17:50:23,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:50:23,819.819 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:50:23,886.886 INFO    ] No existing commands found in stream
[2026-06-27 17:50:28,910.910 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:50:28,913.913 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-27 17:50:33,282.282 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 17:50:33,283.283 INFO    ] Checking for system updates...
[2026-06-27 17:50:33,305.305 INFO    ] 200
[2026-06-27 17:50:33,306.306 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:50:33,338.338 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:50:33,340.340 INFO    ] No update needed
[2026-06-27 17:50:33,341.341 INFO    ] Checking for camera pi updates...
[2026-06-27 17:50:33,361.361 INFO    ] 200
[2026-06-27 17:50:33,362.362 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:50:33,386.386 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:50:33,431.431 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:50:33,432.432 INFO    ] No camera update needed
[2026-06-27 17:50:33,433.433 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:50:33,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:50:33,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:50:33,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:50:35,478.478 INFO    ] ================================================
[2026-06-27 17:50:35,494.494 INFO    ] Launching Daemon at Sat Jun 27 17:50:35 IST 2026
[2026-06-27 17:50:35,505.505 INFO    ] ================================================
[2026-06-27 17:50:35,848.848 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:50:35
[2026-06-27 17:50:36,165.165 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:50:36,297.297 INFO    ] Initializing speech engine...
[2026-06-27 17:50:36,304.304 INFO    ] 2026-06-27 17:50:36
[2026-06-27 17:50:36,517.517 INFO    ] 2026-06-27 17:50:36
[2026-06-27 17:50:36,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:50:36,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:50:36,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:50:36,956.956 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:50:36,958.958 INFO    ] time= 27/06/2026 17:50:36
[2026-06-27 17:50:36,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:50:36,961.961 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:50:37,028.028 INFO    ] No existing commands found in stream
[2026-06-27 17:50:42,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:50:42,046.046 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-27 17:50:42,555.555 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 17:50:42,556.556 INFO    ] Checking for system updates...
[2026-06-27 17:50:42,579.579 INFO    ] 200
[2026-06-27 17:50:42,580.580 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:50:42,611.611 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:50:42,613.613 INFO    ] No update needed
[2026-06-27 17:50:42,614.614 INFO    ] Checking for camera pi updates...
[2026-06-27 17:50:42,636.636 INFO    ] 200
[2026-06-27 17:50:42,637.637 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:50:42,660.660 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:50:42,700.700 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:50:42,702.702 INFO    ] No camera update needed
[2026-06-27 17:50:42,703.703 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:50:42,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:50:42,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:50:42,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:50:44,750.750 INFO    ] ================================================
[2026-06-27 17:50:44,766.766 INFO    ] Launching Daemon at Sat Jun 27 17:50:44 IST 2026
[2026-06-27 17:50:44,778.778 INFO    ] ================================================
[2026-06-27 17:50:45,162.162 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:50:45
[2026-06-27 17:50:45,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:50:45,641.641 INFO    ] Initializing speech engine...
[2026-06-27 17:50:45,647.647 INFO    ] 2026-06-27 17:50:45
[2026-06-27 17:50:45,854.854 INFO    ] 2026-06-27 17:50:45
[2026-06-27 17:50:45,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:50:46,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:50:46,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:50:46,273.273 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:50:46,297.297 INFO    ] time= 27/06/2026 17:50:46
[2026-06-27 17:50:46,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:50:46,304.304 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:50:46,371.371 INFO    ] No existing commands found in stream
[2026-06-27 17:50:51,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:50:51,388.388 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-27 17:50:52,836.836 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 17:50:52,838.838 INFO    ] Checking for system updates...
[2026-06-27 17:50:52,859.859 INFO    ] 200
[2026-06-27 17:50:52,861.861 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:50:52,894.894 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:50:52,896.896 INFO    ] No update needed
[2026-06-27 17:50:52,897.897 INFO    ] Checking for camera pi updates...
[2026-06-27 17:50:52,918.918 INFO    ] 200
[2026-06-27 17:50:52,919.919 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:50:52,946.946 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:50:52,990.990 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:50:52,991.991 INFO    ] No camera update needed
[2026-06-27 17:50:52,992.992 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:50:52,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:50:52,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:50:52,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:50:55,038.038 INFO    ] ================================================
[2026-06-27 17:50:55,054.054 INFO    ] Launching Daemon at Sat Jun 27 17:50:55 IST 2026
[2026-06-27 17:50:55,065.065 INFO    ] ================================================
[2026-06-27 17:50:55,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:50:55
[2026-06-27 17:50:55,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:50:55,874.874 INFO    ] Initializing speech engine...
[2026-06-27 17:50:55,879.879 INFO    ] 2026-06-27 17:50:55
[2026-06-27 17:50:56,105.105 INFO    ] 2026-06-27 17:50:56
[2026-06-27 17:50:56,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:50:56,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:50:56,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:50:56,500.500 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:50:56,549.549 INFO    ] time= 27/06/2026 17:50:56
[2026-06-27 17:50:56,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:50:56,580.580 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:50:56,651.651 INFO    ] No existing commands found in stream
[2026-06-27 17:51:01,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:51:01,659.659 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-27 17:51:03,292.292 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 17:51:03,294.294 INFO    ] Checking for system updates...
[2026-06-27 17:51:03,315.315 INFO    ] 200
[2026-06-27 17:51:03,316.316 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:51:03,350.350 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:51:03,351.351 INFO    ] No update needed
[2026-06-27 17:51:03,353.353 INFO    ] Checking for camera pi updates...
[2026-06-27 17:51:03,373.373 INFO    ] 200
[2026-06-27 17:51:03,374.374 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:51:03,398.398 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:51:03,440.440 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:51:03,441.441 INFO    ] No camera update needed
[2026-06-27 17:51:03,442.442 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:51:03,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:51:03,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:51:03,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:51:05,490.490 INFO    ] ================================================
[2026-06-27 17:51:05,506.506 INFO    ] Launching Daemon at Sat Jun 27 17:51:05 IST 2026
[2026-06-27 17:51:05,516.516 INFO    ] ================================================
[2026-06-27 17:51:05,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:51:05
[2026-06-27 17:51:06,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:51:06,322.322 INFO    ] Initializing speech engine...
[2026-06-27 17:51:06,332.332 INFO    ] 2026-06-27 17:51:06
[2026-06-27 17:51:06,545.545 INFO    ] 2026-06-27 17:51:06
[2026-06-27 17:51:06,575.575 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:51:06,767.767 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:51:06,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:51:06,909.909 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:51:06,965.965 INFO    ] time= 27/06/2026 17:51:06
[2026-06-27 17:51:07,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:51:07,019.019 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:51:07,089.089 INFO    ] No existing commands found in stream
[2026-06-27 17:51:12,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:51:12,106.106 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-27 17:51:16,347.347 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 17:51:16,348.348 INFO    ] Checking for system updates...
[2026-06-27 17:51:16,369.369 INFO    ] 200
[2026-06-27 17:51:16,370.370 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:51:16,403.403 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:51:16,404.404 INFO    ] No update needed
[2026-06-27 17:51:16,406.406 INFO    ] Checking for camera pi updates...
[2026-06-27 17:51:16,428.428 INFO    ] 200
[2026-06-27 17:51:16,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:51:16,452.452 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:51:16,497.497 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:51:16,498.498 INFO    ] No camera update needed
[2026-06-27 17:51:16,499.499 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:51:16,500.500 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:51:16,503.503 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:51:16,506.506 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:51:18,546.546 INFO    ] ================================================
[2026-06-27 17:51:18,562.562 INFO    ] Launching Daemon at Sat Jun 27 17:51:18 IST 2026
[2026-06-27 17:51:18,573.573 INFO    ] ================================================
[2026-06-27 17:51:18,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:51:18
[2026-06-27 17:51:19,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:51:19,390.390 INFO    ] Initializing speech engine...
[2026-06-27 17:51:19,400.400 INFO    ] 2026-06-27 17:51:19
[2026-06-27 17:51:19,623.623 INFO    ] 2026-06-27 17:51:19
[2026-06-27 17:51:19,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:51:19,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:51:19,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:51:20,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:51:20,073.073 INFO    ] time= 27/06/2026 17:51:20
[2026-06-27 17:51:20,097.097 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:51:20,104.104 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:51:20,200.200 INFO    ] No existing commands found in stream
[2026-06-27 17:51:25,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:51:25,217.217 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-27 17:51:28,241.241 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 17:51:28,242.242 INFO    ] Checking for system updates...
[2026-06-27 17:51:28,264.264 INFO    ] 200
[2026-06-27 17:51:28,265.265 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:51:28,296.296 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:51:28,297.297 INFO    ] No update needed
[2026-06-27 17:51:28,299.299 INFO    ] Checking for camera pi updates...
[2026-06-27 17:51:28,321.321 INFO    ] 200
[2026-06-27 17:51:28,322.322 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:51:28,347.347 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:51:28,388.388 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:51:28,390.390 INFO    ] No camera update needed
[2026-06-27 17:51:28,391.391 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:51:28,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:51:28,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:51:28,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:51:30,439.439 INFO    ] ================================================
[2026-06-27 17:51:30,454.454 INFO    ] Launching Daemon at Sat Jun 27 17:51:30 IST 2026
[2026-06-27 17:51:30,465.465 INFO    ] ================================================
[2026-06-27 17:51:30,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:51:30
[2026-06-27 17:51:31,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:51:31,359.359 INFO    ] Initializing speech engine...
[2026-06-27 17:51:31,365.365 INFO    ] 2026-06-27 17:51:31
[2026-06-27 17:51:31,589.589 INFO    ] 2026-06-27 17:51:31
[2026-06-27 17:51:31,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:51:31,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:51:31,814.814 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:51:31,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:51:32,034.034 INFO    ] time= 27/06/2026 17:51:31
[2026-06-27 17:51:32,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:51:32,076.076 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:51:32,146.146 INFO    ] No existing commands found in stream
[2026-06-27 17:51:37,167.167 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:51:37,170.170 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-27 17:51:41,182.182 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 17:51:41,184.184 INFO    ] Checking for system updates...
[2026-06-27 17:51:41,205.205 INFO    ] 200
[2026-06-27 17:51:41,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:51:41,237.237 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:51:41,238.238 INFO    ] No update needed
[2026-06-27 17:51:41,240.240 INFO    ] Checking for camera pi updates...
[2026-06-27 17:51:41,261.261 INFO    ] 200
[2026-06-27 17:51:41,263.263 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:51:41,286.286 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:51:41,331.331 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:51:41,333.333 INFO    ] No camera update needed
[2026-06-27 17:51:41,334.334 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:51:41,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:51:41,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:51:41,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:51:43,387.387 INFO    ] ================================================
[2026-06-27 17:51:43,403.403 INFO    ] Launching Daemon at Sat Jun 27 17:51:43 IST 2026
[2026-06-27 17:51:43,414.414 INFO    ] ================================================
[2026-06-27 17:51:43,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:51:43
[2026-06-27 17:51:44,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:51:44,214.214 INFO    ] Initializing speech engine...
[2026-06-27 17:51:44,219.219 INFO    ] 2026-06-27 17:51:44
[2026-06-27 17:51:44,424.424 INFO    ] 2026-06-27 17:51:44
[2026-06-27 17:51:44,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:51:44,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:51:44,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:51:44,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:51:44,842.842 INFO    ] time= 27/06/2026 17:51:44
[2026-06-27 17:51:44,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:51:44,872.872 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:51:44,943.943 INFO    ] No existing commands found in stream
[2026-06-27 17:51:49,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:51:49,960.960 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-27 17:51:53,141.141 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 17:51:53,143.143 INFO    ] Checking for system updates...
[2026-06-27 17:51:53,168.168 INFO    ] 200
[2026-06-27 17:51:53,169.169 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:51:53,206.206 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:51:53,208.208 INFO    ] No update needed
[2026-06-27 17:51:53,210.210 INFO    ] Checking for camera pi updates...
[2026-06-27 17:51:53,235.235 INFO    ] 200
[2026-06-27 17:51:53,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:51:53,263.263 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:51:53,409.409 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:51:53,411.411 INFO    ] No camera update needed
[2026-06-27 17:51:53,412.412 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:51:53,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:51:53,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:51:53,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:51:55,451.451 INFO    ] ================================================
[2026-06-27 17:51:55,460.460 INFO    ] Launching Daemon at Sat Jun 27 17:51:55 IST 2026
[2026-06-27 17:51:55,466.466 INFO    ] ================================================
[2026-06-27 17:51:55,779.779 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:51:55
[2026-06-27 17:51:56,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:51:56,301.301 INFO    ] Initializing speech engine...
[2026-06-27 17:51:56,308.308 INFO    ] 2026-06-27 17:51:56
[2026-06-27 17:51:56,514.514 INFO    ] 2026-06-27 17:51:56
[2026-06-27 17:51:56,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:51:56,774.774 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:51:56,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:51:56,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:51:56,995.995 INFO    ] time= 27/06/2026 17:51:56
[2026-06-27 17:51:56,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:51:56,999.999 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:51:57,094.094 INFO    ] No existing commands found in stream
[2026-06-27 17:52:02,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:52:02,106.106 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-27 17:52:03,236.236 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 17:52:03,238.238 INFO    ] Checking for system updates...
[2026-06-27 17:52:03,265.265 INFO    ] 200
[2026-06-27 17:52:03,268.268 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:52:03,320.320 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:52:03,323.323 INFO    ] No update needed
[2026-06-27 17:52:03,325.325 INFO    ] Checking for camera pi updates...
[2026-06-27 17:52:03,356.356 INFO    ] 200
[2026-06-27 17:52:03,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:52:03,380.380 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:52:03,431.431 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:52:03,433.433 INFO    ] No camera update needed
[2026-06-27 17:52:03,434.434 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:52:03,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:52:03,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:52:03,442.442 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:52:05,482.482 INFO    ] ================================================
[2026-06-27 17:52:05,497.497 INFO    ] Launching Daemon at Sat Jun 27 17:52:05 IST 2026
[2026-06-27 17:52:05,508.508 INFO    ] ================================================
[2026-06-27 17:52:05,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:52:05
[2026-06-27 17:52:06,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:52:06,322.322 INFO    ] Initializing speech engine...
[2026-06-27 17:52:06,325.325 INFO    ] 2026-06-27 17:52:06
[2026-06-27 17:52:06,545.545 INFO    ] 2026-06-27 17:52:06
[2026-06-27 17:52:06,573.573 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:52:06,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:52:06,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:52:06,900.900 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:52:06,964.964 INFO    ] time= 27/06/2026 17:52:06
[2026-06-27 17:52:06,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:52:06,998.998 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:52:07,067.067 INFO    ] No existing commands found in stream
[2026-06-27 17:52:12,076.076 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:52:12,078.078 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-27 17:52:16,156.156 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 17:52:16,157.157 INFO    ] Checking for system updates...
[2026-06-27 17:52:16,178.178 INFO    ] 200
[2026-06-27 17:52:16,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:52:16,213.213 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:52:16,215.215 INFO    ] No update needed
[2026-06-27 17:52:16,216.216 INFO    ] Checking for camera pi updates...
[2026-06-27 17:52:16,237.237 INFO    ] 200
[2026-06-27 17:52:16,238.238 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:52:16,264.264 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:52:16,296.296 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:52:16,298.298 INFO    ] No camera update needed
[2026-06-27 17:52:16,299.299 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:52:16,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:52:16,304.304 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:52:16,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:52:18,346.346 INFO    ] ================================================
[2026-06-27 17:52:18,361.361 INFO    ] Launching Daemon at Sat Jun 27 17:52:18 IST 2026
[2026-06-27 17:52:18,372.372 INFO    ] ================================================
[2026-06-27 17:52:18,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:52:18
[2026-06-27 17:52:19,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:52:19,184.184 INFO    ] Initializing speech engine...
[2026-06-27 17:52:19,187.187 INFO    ] 2026-06-27 17:52:19
[2026-06-27 17:52:19,407.407 INFO    ] 2026-06-27 17:52:19
[2026-06-27 17:52:19,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:52:19,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:52:19,655.655 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:52:19,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:52:19,877.877 INFO    ] time= 27/06/2026 17:52:19
[2026-06-27 17:52:19,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:52:19,912.912 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:52:19,987.987 INFO    ] No existing commands found in stream
[2026-06-27 17:52:24,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:52:25,000.000 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-27 17:52:26,300.300 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 17:52:26,302.302 INFO    ] Checking for system updates...
[2026-06-27 17:52:26,323.323 INFO    ] 200
[2026-06-27 17:52:26,325.325 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:52:26,355.355 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:52:26,357.357 INFO    ] No update needed
[2026-06-27 17:52:26,358.358 INFO    ] Checking for camera pi updates...
[2026-06-27 17:52:26,379.379 INFO    ] 200
[2026-06-27 17:52:26,380.380 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:52:26,405.405 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:52:26,448.448 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:52:26,450.450 INFO    ] No camera update needed
[2026-06-27 17:52:26,451.451 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:52:26,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:52:26,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:52:26,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:52:28,497.497 INFO    ] ================================================
[2026-06-27 17:52:28,511.511 INFO    ] Launching Daemon at Sat Jun 27 17:52:28 IST 2026
[2026-06-27 17:52:28,522.522 INFO    ] ================================================
[2026-06-27 17:52:28,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:52:28
[2026-06-27 17:52:29,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:52:29,293.293 INFO    ] Initializing speech engine...
[2026-06-27 17:52:29,297.297 INFO    ] 2026-06-27 17:52:29
[2026-06-27 17:52:29,515.515 INFO    ] 2026-06-27 17:52:29
[2026-06-27 17:52:29,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:52:29,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:52:29,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:52:29,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:52:29,920.920 INFO    ] time= 27/06/2026 17:52:29
[2026-06-27 17:52:29,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:52:29,959.959 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:52:30,086.086 INFO    ] No existing commands found in stream
[2026-06-27 17:52:35,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:52:35,099.099 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-27 17:52:37,333.333 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 17:52:37,335.335 INFO    ] Checking for system updates...
[2026-06-27 17:52:37,356.356 INFO    ] 200
[2026-06-27 17:52:37,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:52:37,388.388 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:52:37,390.390 INFO    ] No update needed
[2026-06-27 17:52:37,391.391 INFO    ] Checking for camera pi updates...
[2026-06-27 17:52:37,411.411 INFO    ] 200
[2026-06-27 17:52:37,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:52:37,435.435 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:52:37,477.477 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:52:37,479.479 INFO    ] No camera update needed
[2026-06-27 17:52:37,480.480 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:52:37,482.482 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:52:37,485.485 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:52:37,488.488 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:52:39,527.527 INFO    ] ================================================
[2026-06-27 17:52:39,542.542 INFO    ] Launching Daemon at Sat Jun 27 17:52:39 IST 2026
[2026-06-27 17:52:39,553.553 INFO    ] ================================================
[2026-06-27 17:52:39,896.896 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:52:39
[2026-06-27 17:52:40,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:52:40,348.348 INFO    ] Initializing speech engine...
[2026-06-27 17:52:40,358.358 INFO    ] 2026-06-27 17:52:40
[2026-06-27 17:52:40,563.563 INFO    ] 2026-06-27 17:52:40
[2026-06-27 17:52:40,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:52:40,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:52:40,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:52:40,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:52:41,004.004 INFO    ] time= 27/06/2026 17:52:40
[2026-06-27 17:52:41,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:52:41,020.020 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:52:41,112.112 INFO    ] No existing commands found in stream
[2026-06-27 17:52:46,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:52:46,124.124 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-27 17:52:48,373.373 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 17:52:48,375.375 INFO    ] Checking for system updates...
[2026-06-27 17:52:48,397.397 INFO    ] 200
[2026-06-27 17:52:48,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:52:48,430.430 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:52:48,431.431 INFO    ] No update needed
[2026-06-27 17:52:48,433.433 INFO    ] Checking for camera pi updates...
[2026-06-27 17:52:48,453.453 INFO    ] 200
[2026-06-27 17:52:48,455.455 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:52:48,480.480 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:52:48,522.522 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:52:48,523.523 INFO    ] No camera update needed
[2026-06-27 17:52:48,525.525 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:52:48,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:52:48,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:52:48,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:52:50,572.572 INFO    ] ================================================
[2026-06-27 17:52:50,587.587 INFO    ] Launching Daemon at Sat Jun 27 17:52:50 IST 2026
[2026-06-27 17:52:50,597.597 INFO    ] ================================================
[2026-06-27 17:52:50,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:52:50
[2026-06-27 17:52:51,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:52:51,405.405 INFO    ] Initializing speech engine...
[2026-06-27 17:52:51,410.410 INFO    ] 2026-06-27 17:52:51
[2026-06-27 17:52:51,612.612 INFO    ] 2026-06-27 17:52:51
[2026-06-27 17:52:51,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:52:51,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:52:51,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:52:52,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:52:52,051.051 INFO    ] time= 27/06/2026 17:52:52
[2026-06-27 17:52:52,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:52:52,059.059 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:52:52,123.123 INFO    ] No existing commands found in stream
[2026-06-27 17:52:57,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:52:57,137.137 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-27 17:53:00,188.188 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 17:53:00,190.190 INFO    ] Checking for system updates...
[2026-06-27 17:53:00,211.211 INFO    ] 200
[2026-06-27 17:53:00,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:53:00,245.245 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:53:00,247.247 INFO    ] No update needed
[2026-06-27 17:53:00,248.248 INFO    ] Checking for camera pi updates...
[2026-06-27 17:53:00,268.268 INFO    ] 200
[2026-06-27 17:53:00,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:53:00,296.296 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:53:00,351.351 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:53:00,353.353 INFO    ] No camera update needed
[2026-06-27 17:53:00,354.354 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:53:00,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:53:00,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:53:00,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:53:02,396.396 INFO    ] ================================================
[2026-06-27 17:53:02,407.407 INFO    ] Launching Daemon at Sat Jun 27 17:53:02 IST 2026
[2026-06-27 17:53:02,416.416 INFO    ] ================================================
[2026-06-27 17:53:02,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:53:02
[2026-06-27 17:53:03,151.151 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:53:03,296.296 INFO    ] Initializing speech engine...
[2026-06-27 17:53:03,305.305 INFO    ] 2026-06-27 17:53:03
[2026-06-27 17:53:03,517.517 INFO    ] 2026-06-27 17:53:03
[2026-06-27 17:53:03,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:53:03,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:53:03,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:53:03,900.900 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:53:03,938.938 INFO    ] time= 27/06/2026 17:53:03
[2026-06-27 17:53:03,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:53:03,967.967 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:53:04,034.034 INFO    ] No existing commands found in stream
[2026-06-27 17:53:09,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:53:09,052.052 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-27 17:53:12,474.474 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 17:53:12,475.475 INFO    ] Checking for system updates...
[2026-06-27 17:53:12,497.497 INFO    ] 200
[2026-06-27 17:53:12,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:53:12,532.532 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:53:12,534.534 INFO    ] No update needed
[2026-06-27 17:53:12,536.536 INFO    ] Checking for camera pi updates...
[2026-06-27 17:53:12,556.556 INFO    ] 200
[2026-06-27 17:53:12,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:53:12,583.583 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:53:12,638.638 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:53:12,640.640 INFO    ] No camera update needed
[2026-06-27 17:53:12,641.641 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:53:12,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:53:12,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:53:12,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:53:14,688.688 INFO    ] ================================================
[2026-06-27 17:53:14,703.703 INFO    ] Launching Daemon at Sat Jun 27 17:53:14 IST 2026
[2026-06-27 17:53:14,713.713 INFO    ] ================================================
[2026-06-27 17:53:15,064.064 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:53:15
[2026-06-27 17:53:15,378.378 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:53:15,524.524 INFO    ] Initializing speech engine...
[2026-06-27 17:53:15,529.529 INFO    ] 2026-06-27 17:53:15
[2026-06-27 17:53:15,743.743 INFO    ] 2026-06-27 17:53:15
[2026-06-27 17:53:15,774.774 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:53:15,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:53:15,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:53:16,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:53:16,186.186 INFO    ] time= 27/06/2026 17:53:16
[2026-06-27 17:53:16,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:53:16,215.215 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:53:16,291.291 INFO    ] No existing commands found in stream
[2026-06-27 17:53:21,300.300 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:53:21,303.303 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-27 17:53:25,620.620 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 17:53:25,622.622 INFO    ] Checking for system updates...
[2026-06-27 17:53:25,644.644 INFO    ] 200
[2026-06-27 17:53:25,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:53:25,677.677 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:53:25,679.679 INFO    ] No update needed
[2026-06-27 17:53:25,680.680 INFO    ] Checking for camera pi updates...
[2026-06-27 17:53:25,700.700 INFO    ] 200
[2026-06-27 17:53:25,701.701 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:53:25,726.726 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:53:25,773.773 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:53:25,775.775 INFO    ] No camera update needed
[2026-06-27 17:53:25,776.776 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:53:25,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:53:25,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:53:25,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:53:27,821.821 INFO    ] ================================================
[2026-06-27 17:53:27,836.836 INFO    ] Launching Daemon at Sat Jun 27 17:53:27 IST 2026
[2026-06-27 17:53:27,847.847 INFO    ] ================================================
[2026-06-27 17:53:28,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:53:28
[2026-06-27 17:53:28,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:53:28,639.639 INFO    ] Initializing speech engine...
[2026-06-27 17:53:28,642.642 INFO    ] 2026-06-27 17:53:28
[2026-06-27 17:53:28,858.858 INFO    ] 2026-06-27 17:53:28
[2026-06-27 17:53:28,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:53:29,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:53:29,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:53:29,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:53:29,294.294 INFO    ] time= 27/06/2026 17:53:29
[2026-06-27 17:53:29,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:53:29,311.311 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:53:29,376.376 INFO    ] No existing commands found in stream
[2026-06-27 17:53:34,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:53:34,389.389 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-27 17:53:36,393.393 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 17:53:36,395.395 INFO    ] Checking for system updates...
[2026-06-27 17:53:36,415.415 INFO    ] 200
[2026-06-27 17:53:36,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:53:36,448.448 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:53:36,449.449 INFO    ] No update needed
[2026-06-27 17:53:36,451.451 INFO    ] Checking for camera pi updates...
[2026-06-27 17:53:36,470.470 INFO    ] 200
[2026-06-27 17:53:36,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:53:36,495.495 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:53:36,550.550 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:53:36,551.551 INFO    ] No camera update needed
[2026-06-27 17:53:36,553.553 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:53:36,554.554 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:53:36,557.557 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:53:36,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:53:38,599.599 INFO    ] ================================================
[2026-06-27 17:53:38,615.615 INFO    ] Launching Daemon at Sat Jun 27 17:53:38 IST 2026
[2026-06-27 17:53:38,626.626 INFO    ] ================================================
[2026-06-27 17:53:38,998.998 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:53:38
[2026-06-27 17:53:39,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:53:39,459.459 INFO    ] Initializing speech engine...
[2026-06-27 17:53:39,464.464 INFO    ] 2026-06-27 17:53:39
[2026-06-27 17:53:39,668.668 INFO    ] 2026-06-27 17:53:39
[2026-06-27 17:53:39,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:53:39,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:53:39,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:53:40,016.016 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:53:40,073.073 INFO    ] time= 27/06/2026 17:53:40
[2026-06-27 17:53:40,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:53:40,116.116 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:53:40,183.183 INFO    ] No existing commands found in stream
[2026-06-27 17:53:45,198.198 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:53:45,200.200 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-27 17:53:49,303.303 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 17:53:49,305.305 INFO    ] Checking for system updates...
[2026-06-27 17:53:49,325.325 INFO    ] 200
[2026-06-27 17:53:49,327.327 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:53:49,357.357 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:53:49,359.359 INFO    ] No update needed
[2026-06-27 17:53:49,360.360 INFO    ] Checking for camera pi updates...
[2026-06-27 17:53:49,380.380 INFO    ] 200
[2026-06-27 17:53:49,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:53:49,405.405 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:53:49,447.447 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:53:49,449.449 INFO    ] No camera update needed
[2026-06-27 17:53:49,450.450 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:53:49,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:53:49,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:53:49,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:53:51,497.497 INFO    ] ================================================
[2026-06-27 17:53:51,513.513 INFO    ] Launching Daemon at Sat Jun 27 17:53:51 IST 2026
[2026-06-27 17:53:51,525.525 INFO    ] ================================================
[2026-06-27 17:53:51,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:53:51
[2026-06-27 17:53:52,203.203 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:53:52,341.341 INFO    ] Initializing speech engine...
[2026-06-27 17:53:52,352.352 INFO    ] 2026-06-27 17:53:52
[2026-06-27 17:53:52,557.557 INFO    ] 2026-06-27 17:53:52
[2026-06-27 17:53:52,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:53:52,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:53:52,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:53:52,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:53:52,982.982 INFO    ] time= 27/06/2026 17:53:52
[2026-06-27 17:53:53,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:53:53,012.012 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:53:53,079.079 INFO    ] No existing commands found in stream
[2026-06-27 17:53:58,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:53:58,092.092 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-27 17:53:59,290.290 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 17:53:59,292.292 INFO    ] Checking for system updates...
[2026-06-27 17:53:59,314.314 INFO    ] 200
[2026-06-27 17:53:59,315.315 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:53:59,347.347 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:53:59,349.349 INFO    ] No update needed
[2026-06-27 17:53:59,350.350 INFO    ] Checking for camera pi updates...
[2026-06-27 17:53:59,370.370 INFO    ] 200
[2026-06-27 17:53:59,372.372 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:53:59,395.395 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:53:59,536.536 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:53:59,537.537 INFO    ] No camera update needed
[2026-06-27 17:53:59,538.538 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:53:59,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:53:59,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:53:59,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:54:01,583.583 INFO    ] ================================================
[2026-06-27 17:54:01,593.593 INFO    ] Launching Daemon at Sat Jun 27 17:54:01 IST 2026
[2026-06-27 17:54:01,601.601 INFO    ] ================================================
[2026-06-27 17:54:01,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:54:01
[2026-06-27 17:54:02,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:54:02,458.458 INFO    ] Initializing speech engine...
[2026-06-27 17:54:02,464.464 INFO    ] 2026-06-27 17:54:02
[2026-06-27 17:54:02,669.669 INFO    ] 2026-06-27 17:54:02
[2026-06-27 17:54:02,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:54:02,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:54:02,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:54:03,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:54:03,110.110 INFO    ] time= 27/06/2026 17:54:03
[2026-06-27 17:54:03,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:54:03,118.118 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:54:03,184.184 INFO    ] No existing commands found in stream
[2026-06-27 17:54:08,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:54:08,197.197 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-27 17:54:12,153.153 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 17:54:12,154.154 INFO    ] Checking for system updates...
[2026-06-27 17:54:12,175.175 INFO    ] 200
[2026-06-27 17:54:12,176.176 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:54:12,207.207 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:54:12,208.208 INFO    ] No update needed
[2026-06-27 17:54:12,209.209 INFO    ] Checking for camera pi updates...
[2026-06-27 17:54:12,229.229 INFO    ] 200
[2026-06-27 17:54:12,230.230 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:54:12,255.255 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:54:12,302.302 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:54:12,303.303 INFO    ] No camera update needed
[2026-06-27 17:54:12,305.305 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:54:12,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:54:12,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:54:12,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:54:14,351.351 INFO    ] ================================================
[2026-06-27 17:54:14,366.366 INFO    ] Launching Daemon at Sat Jun 27 17:54:14 IST 2026
[2026-06-27 17:54:14,377.377 INFO    ] ================================================
[2026-06-27 17:54:14,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:54:14
[2026-06-27 17:54:15,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:54:15,182.182 INFO    ] Initializing speech engine...
[2026-06-27 17:54:15,188.188 INFO    ] 2026-06-27 17:54:15
[2026-06-27 17:54:15,394.394 INFO    ] 2026-06-27 17:54:15
[2026-06-27 17:54:15,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:54:15,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:54:15,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:54:15,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:54:15,810.810 INFO    ] time= 27/06/2026 17:54:15
[2026-06-27 17:54:15,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:54:15,843.843 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:54:15,910.910 INFO    ] No existing commands found in stream
[2026-06-27 17:54:20,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:54:20,928.928 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-27 17:54:22,043.043 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 17:54:22,095.095 INFO    ] Checking for system updates...
[2026-06-27 17:54:22,117.117 INFO    ] 200
[2026-06-27 17:54:22,119.119 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:54:22,154.154 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:54:22,156.156 INFO    ] No update needed
[2026-06-27 17:54:22,157.157 INFO    ] Checking for camera pi updates...
[2026-06-27 17:54:22,178.178 INFO    ] 200
[2026-06-27 17:54:22,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:54:22,208.208 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:54:22,259.259 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:54:22,260.260 INFO    ] No camera update needed
[2026-06-27 17:54:22,262.262 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:54:22,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:54:22,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:54:22,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:54:24,309.309 INFO    ] ================================================
[2026-06-27 17:54:24,325.325 INFO    ] Launching Daemon at Sat Jun 27 17:54:24 IST 2026
[2026-06-27 17:54:24,336.336 INFO    ] ================================================
[2026-06-27 17:54:24,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:54:24
[2026-06-27 17:54:24,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:54:25,123.123 INFO    ] Initializing speech engine...
[2026-06-27 17:54:25,133.133 INFO    ] 2026-06-27 17:54:25
[2026-06-27 17:54:25,339.339 INFO    ] 2026-06-27 17:54:25
[2026-06-27 17:54:25,370.370 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:54:25,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:54:25,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:54:25,686.686 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:54:25,747.747 INFO    ] time= 27/06/2026 17:54:25
[2026-06-27 17:54:25,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:54:25,787.787 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:54:25,859.859 INFO    ] No existing commands found in stream
[2026-06-27 17:54:30,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:54:30,894.894 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-27 17:54:33,638.638 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 17:54:33,639.639 INFO    ] Checking for system updates...
[2026-06-27 17:54:33,660.660 INFO    ] 200
[2026-06-27 17:54:33,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:54:33,691.691 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:54:33,693.693 INFO    ] No update needed
[2026-06-27 17:54:33,694.694 INFO    ] Checking for camera pi updates...
[2026-06-27 17:54:33,714.714 INFO    ] 200
[2026-06-27 17:54:33,715.715 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:54:33,741.741 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:54:33,780.780 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:54:33,781.781 INFO    ] No camera update needed
[2026-06-27 17:54:33,782.782 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:54:33,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:54:33,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:54:33,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:54:35,829.829 INFO    ] ================================================
[2026-06-27 17:54:35,844.844 INFO    ] Launching Daemon at Sat Jun 27 17:54:35 IST 2026
[2026-06-27 17:54:35,855.855 INFO    ] ================================================
[2026-06-27 17:54:36,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:54:36
[2026-06-27 17:54:36,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:54:36,687.687 INFO    ] Initializing speech engine...
[2026-06-27 17:54:36,692.692 INFO    ] 2026-06-27 17:54:36
[2026-06-27 17:54:36,897.897 INFO    ] 2026-06-27 17:54:36
[2026-06-27 17:54:36,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:54:37,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:54:37,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:54:37,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:54:37,316.316 INFO    ] time= 27/06/2026 17:54:37
[2026-06-27 17:54:37,339.339 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:54:37,346.346 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:54:37,412.412 INFO    ] No existing commands found in stream
[2026-06-27 17:54:42,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:54:42,434.434 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-27 17:54:43,708.708 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 17:54:43,709.709 INFO    ] Checking for system updates...
[2026-06-27 17:54:43,730.730 INFO    ] 200
[2026-06-27 17:54:43,731.731 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:54:43,761.761 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:54:43,762.762 INFO    ] No update needed
[2026-06-27 17:54:43,764.764 INFO    ] Checking for camera pi updates...
[2026-06-27 17:54:43,784.784 INFO    ] 200
[2026-06-27 17:54:43,786.786 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:54:43,814.814 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:54:43,864.864 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:54:43,865.865 INFO    ] No camera update needed
[2026-06-27 17:54:43,867.867 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:54:43,868.868 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:54:43,871.871 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:54:43,874.874 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:54:45,913.913 INFO    ] ================================================
[2026-06-27 17:54:45,929.929 INFO    ] Launching Daemon at Sat Jun 27 17:54:45 IST 2026
[2026-06-27 17:54:45,940.940 INFO    ] ================================================
[2026-06-27 17:54:46,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:54:46
[2026-06-27 17:54:46,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:54:46,736.736 INFO    ] Initializing speech engine...
[2026-06-27 17:54:46,747.747 INFO    ] 2026-06-27 17:54:46
[2026-06-27 17:54:46,949.949 INFO    ] 2026-06-27 17:54:46
[2026-06-27 17:54:46,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:54:47,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:54:47,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:54:47,300.300 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:54:47,368.368 INFO    ] time= 27/06/2026 17:54:47
[2026-06-27 17:54:47,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:54:47,398.398 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:54:47,465.465 INFO    ] No existing commands found in stream
[2026-06-27 17:54:52,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:54:52,481.481 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-27 17:54:54,038.038 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 17:54:54,039.039 INFO    ] Checking for system updates...
[2026-06-27 17:54:54,084.084 INFO    ] 200
[2026-06-27 17:54:54,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:54:54,118.118 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:54:54,119.119 INFO    ] No update needed
[2026-06-27 17:54:54,120.120 INFO    ] Checking for camera pi updates...
[2026-06-27 17:54:54,140.140 INFO    ] 200
[2026-06-27 17:54:54,141.141 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:54:54,165.165 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:54:54,237.237 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:54:54,238.238 INFO    ] No camera update needed
[2026-06-27 17:54:54,239.239 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:54:54,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:54:54,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:54:54,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:54:56,285.285 INFO    ] ================================================
[2026-06-27 17:54:56,300.300 INFO    ] Launching Daemon at Sat Jun 27 17:54:56 IST 2026
[2026-06-27 17:54:56,310.310 INFO    ] ================================================
[2026-06-27 17:54:56,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:54:56
[2026-06-27 17:54:56,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:54:57,125.125 INFO    ] Initializing speech engine...
[2026-06-27 17:54:57,130.130 INFO    ] 2026-06-27 17:54:57
[2026-06-27 17:54:57,334.334 INFO    ] 2026-06-27 17:54:57
[2026-06-27 17:54:57,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:54:57,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:54:57,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:54:57,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:54:57,753.753 INFO    ] time= 27/06/2026 17:54:57
[2026-06-27 17:54:57,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:54:57,782.782 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:54:57,873.873 INFO    ] No existing commands found in stream
[2026-06-27 17:55:02,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:55:02,885.885 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-27 17:55:03,998.998 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 17:55:04,000.000 INFO    ] Checking for system updates...
[2026-06-27 17:55:04,020.020 INFO    ] 200
[2026-06-27 17:55:04,022.022 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:55:04,052.052 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:55:04,053.053 INFO    ] No update needed
[2026-06-27 17:55:04,055.055 INFO    ] Checking for camera pi updates...
[2026-06-27 17:55:04,075.075 INFO    ] 200
[2026-06-27 17:55:04,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:55:04,102.102 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:55:04,147.147 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:55:04,148.148 INFO    ] No camera update needed
[2026-06-27 17:55:04,150.150 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:55:04,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:55:04,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:55:04,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:55:06,196.196 INFO    ] ================================================
[2026-06-27 17:55:06,211.211 INFO    ] Launching Daemon at Sat Jun 27 17:55:06 IST 2026
[2026-06-27 17:55:06,222.222 INFO    ] ================================================
[2026-06-27 17:55:06,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:55:06
[2026-06-27 17:55:06,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:55:07,056.056 INFO    ] Initializing speech engine...
[2026-06-27 17:55:07,060.060 INFO    ] 2026-06-27 17:55:07
[2026-06-27 17:55:07,279.279 INFO    ] 2026-06-27 17:55:07
[2026-06-27 17:55:07,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:55:07,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:55:07,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:55:07,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:55:07,694.694 INFO    ] time= 27/06/2026 17:55:07
[2026-06-27 17:55:07,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:55:07,733.733 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:55:07,801.801 INFO    ] No existing commands found in stream
[2026-06-27 17:55:12,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:55:12,813.813 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-27 17:55:16,088.088 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 17:55:16,089.089 INFO    ] Checking for system updates...
[2026-06-27 17:55:16,110.110 INFO    ] 200
[2026-06-27 17:55:16,111.111 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:55:16,141.141 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:55:16,143.143 INFO    ] No update needed
[2026-06-27 17:55:16,144.144 INFO    ] Checking for camera pi updates...
[2026-06-27 17:55:16,163.163 INFO    ] 200
[2026-06-27 17:55:16,165.165 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:55:16,188.188 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:55:16,242.242 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:55:16,243.243 INFO    ] No camera update needed
[2026-06-27 17:55:16,244.244 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:55:16,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:55:16,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:55:16,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:55:18,290.290 INFO    ] ================================================
[2026-06-27 17:55:18,306.306 INFO    ] Launching Daemon at Sat Jun 27 17:55:18 IST 2026
[2026-06-27 17:55:18,316.316 INFO    ] ================================================
[2026-06-27 17:55:18,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:55:18
[2026-06-27 17:55:18,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:55:19,118.118 INFO    ] Initializing speech engine...
[2026-06-27 17:55:19,123.123 INFO    ] 2026-06-27 17:55:19
[2026-06-27 17:55:19,349.349 INFO    ] 2026-06-27 17:55:19
[2026-06-27 17:55:19,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:55:19,565.565 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:55:19,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:55:19,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:55:19,771.771 INFO    ] time= 27/06/2026 17:55:19
[2026-06-27 17:55:19,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:55:19,802.802 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:55:19,899.899 INFO    ] No existing commands found in stream
[2026-06-27 17:55:24,908.908 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:55:24,911.911 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-27 17:55:28,923.923 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 17:55:28,925.925 INFO    ] Checking for system updates...
[2026-06-27 17:55:28,948.948 INFO    ] 200
[2026-06-27 17:55:28,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:55:28,980.980 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:55:28,981.981 INFO    ] No update needed
[2026-06-27 17:55:28,982.982 INFO    ] Checking for camera pi updates...
[2026-06-27 17:55:29,002.002 INFO    ] 200
[2026-06-27 17:55:29,003.003 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:55:29,027.027 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:55:29,070.070 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:55:29,071.071 INFO    ] No camera update needed
[2026-06-27 17:55:29,072.072 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:55:29,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:55:29,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:55:29,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:55:31,117.117 INFO    ] ================================================
[2026-06-27 17:55:31,133.133 INFO    ] Launching Daemon at Sat Jun 27 17:55:31 IST 2026
[2026-06-27 17:55:31,144.144 INFO    ] ================================================
[2026-06-27 17:55:31,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:55:31
[2026-06-27 17:55:31,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:55:32,060.060 INFO    ] Initializing speech engine...
[2026-06-27 17:55:32,067.067 INFO    ] 2026-06-27 17:55:32
[2026-06-27 17:55:32,288.288 INFO    ] 2026-06-27 17:55:32
[2026-06-27 17:55:32,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:55:32,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:55:32,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:55:32,645.645 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:55:32,713.713 INFO    ] time= 27/06/2026 17:55:32
[2026-06-27 17:55:32,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:55:32,743.743 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:55:32,810.810 INFO    ] No existing commands found in stream
[2026-06-27 17:55:37,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:55:37,833.833 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-27 17:55:40,540.540 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 17:55:40,542.542 INFO    ] Checking for system updates...
[2026-06-27 17:55:40,565.565 INFO    ] 200
[2026-06-27 17:55:40,566.566 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:55:40,597.597 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:55:40,598.598 INFO    ] No update needed
[2026-06-27 17:55:40,599.599 INFO    ] Checking for camera pi updates...
[2026-06-27 17:55:40,621.621 INFO    ] 200
[2026-06-27 17:55:40,622.622 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:55:40,647.647 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:55:40,699.699 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:55:40,700.700 INFO    ] No camera update needed
[2026-06-27 17:55:40,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:55:40,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:55:40,706.706 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:55:40,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:55:42,746.746 INFO    ] ================================================
[2026-06-27 17:55:42,762.762 INFO    ] Launching Daemon at Sat Jun 27 17:55:42 IST 2026
[2026-06-27 17:55:42,773.773 INFO    ] ================================================
[2026-06-27 17:55:43,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:55:43
[2026-06-27 17:55:43,429.429 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:55:43,571.571 INFO    ] Initializing speech engine...
[2026-06-27 17:55:43,576.576 INFO    ] 2026-06-27 17:55:43
[2026-06-27 17:55:43,778.778 INFO    ] 2026-06-27 17:55:43
[2026-06-27 17:55:43,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:55:43,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:55:43,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:55:44,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:55:44,216.216 INFO    ] time= 27/06/2026 17:55:44
[2026-06-27 17:55:44,217.217 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:55:44,223.223 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:55:44,289.289 INFO    ] No existing commands found in stream
[2026-06-27 17:55:49,299.299 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:55:49,302.302 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-27 17:55:53,585.585 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 17:55:53,586.586 INFO    ] Checking for system updates...
[2026-06-27 17:55:53,607.607 INFO    ] 200
[2026-06-27 17:55:53,609.609 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:55:53,642.642 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:55:53,643.643 INFO    ] No update needed
[2026-06-27 17:55:53,645.645 INFO    ] Checking for camera pi updates...
[2026-06-27 17:55:53,664.664 INFO    ] 200
[2026-06-27 17:55:53,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:55:53,691.691 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:55:53,730.730 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:55:53,732.732 INFO    ] No camera update needed
[2026-06-27 17:55:53,733.733 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:55:53,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:55:53,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:55:53,740.740 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:55:55,778.778 INFO    ] ================================================
[2026-06-27 17:55:55,793.793 INFO    ] Launching Daemon at Sat Jun 27 17:55:55 IST 2026
[2026-06-27 17:55:55,804.804 INFO    ] ================================================
[2026-06-27 17:55:56,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:55:56
[2026-06-27 17:55:56,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:55:56,574.574 INFO    ] Initializing speech engine...
[2026-06-27 17:55:56,578.578 INFO    ] 2026-06-27 17:55:56
[2026-06-27 17:55:56,795.795 INFO    ] 2026-06-27 17:55:56
[2026-06-27 17:55:56,825.825 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:55:57,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:55:57,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:55:57,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:55:57,238.238 INFO    ] time= 27/06/2026 17:55:57
[2026-06-27 17:55:57,243.243 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:55:57,245.245 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:55:57,335.335 INFO    ] No existing commands found in stream
[2026-06-27 17:56:02,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:56:02,348.348 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-27 17:56:04,269.269 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 17:56:04,271.271 INFO    ] Checking for system updates...
[2026-06-27 17:56:04,292.292 INFO    ] 200
[2026-06-27 17:56:04,293.293 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:56:04,326.326 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:56:04,328.328 INFO    ] No update needed
[2026-06-27 17:56:04,329.329 INFO    ] Checking for camera pi updates...
[2026-06-27 17:56:04,348.348 INFO    ] 200
[2026-06-27 17:56:04,350.350 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:56:04,374.374 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:56:04,422.422 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:56:04,423.423 INFO    ] No camera update needed
[2026-06-27 17:56:04,425.425 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:56:04,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:56:04,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:56:04,431.431 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:56:06,471.471 INFO    ] ================================================
[2026-06-27 17:56:06,486.486 INFO    ] Launching Daemon at Sat Jun 27 17:56:06 IST 2026
[2026-06-27 17:56:06,497.497 INFO    ] ================================================
[2026-06-27 17:56:06,840.840 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:56:06
[2026-06-27 17:56:07,153.153 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:56:07,292.292 INFO    ] Initializing speech engine...
[2026-06-27 17:56:07,301.301 INFO    ] 2026-06-27 17:56:07
[2026-06-27 17:56:07,509.509 INFO    ] 2026-06-27 17:56:07
[2026-06-27 17:56:07,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:56:07,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:56:07,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:56:07,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:56:07,935.935 INFO    ] time= 27/06/2026 17:56:07
[2026-06-27 17:56:07,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:56:07,965.965 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:56:08,033.033 INFO    ] No existing commands found in stream
[2026-06-27 17:56:13,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:56:13,049.049 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-27 17:56:17,058.058 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 17:56:17,060.060 INFO    ] Checking for system updates...
[2026-06-27 17:56:17,080.080 INFO    ] 200
[2026-06-27 17:56:17,082.082 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:56:17,112.112 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:56:17,113.113 INFO    ] No update needed
[2026-06-27 17:56:17,115.115 INFO    ] Checking for camera pi updates...
[2026-06-27 17:56:17,134.134 INFO    ] 200
[2026-06-27 17:56:17,136.136 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:56:17,159.159 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:56:17,200.200 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:56:17,201.201 INFO    ] No camera update needed
[2026-06-27 17:56:17,202.202 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:56:17,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:56:17,207.207 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:56:17,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:56:19,252.252 INFO    ] ================================================
[2026-06-27 17:56:19,267.267 INFO    ] Launching Daemon at Sat Jun 27 17:56:19 IST 2026
[2026-06-27 17:56:19,278.278 INFO    ] ================================================
[2026-06-27 17:56:19,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:56:19
[2026-06-27 17:56:19,944.944 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:56:20,088.088 INFO    ] Initializing speech engine...
[2026-06-27 17:56:20,092.092 INFO    ] 2026-06-27 17:56:20
[2026-06-27 17:56:20,297.297 INFO    ] 2026-06-27 17:56:20
[2026-06-27 17:56:20,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:56:20,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:56:20,522.522 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:56:20,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:56:20,740.740 INFO    ] time= 27/06/2026 17:56:20
[2026-06-27 17:56:20,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:56:20,748.748 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:56:20,838.838 INFO    ] No existing commands found in stream
[2026-06-27 17:56:25,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:56:25,856.856 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-27 17:56:29,261.261 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 17:56:29,262.262 INFO    ] Checking for system updates...
[2026-06-27 17:56:29,285.285 INFO    ] 200
[2026-06-27 17:56:29,286.286 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:56:29,319.319 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:56:29,321.321 INFO    ] No update needed
[2026-06-27 17:56:29,322.322 INFO    ] Checking for camera pi updates...
[2026-06-27 17:56:29,345.345 INFO    ] 200
[2026-06-27 17:56:29,346.346 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:56:29,371.371 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:56:29,416.416 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:56:29,418.418 INFO    ] No camera update needed
[2026-06-27 17:56:29,419.419 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:56:29,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:56:29,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:56:29,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:56:31,466.466 INFO    ] ================================================
[2026-06-27 17:56:31,481.481 INFO    ] Launching Daemon at Sat Jun 27 17:56:31 IST 2026
[2026-06-27 17:56:31,492.492 INFO    ] ================================================
[2026-06-27 17:56:31,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:56:31
[2026-06-27 17:56:32,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:56:32,448.448 INFO    ] Initializing speech engine...
[2026-06-27 17:56:32,452.452 INFO    ] 2026-06-27 17:56:32
[2026-06-27 17:56:32,663.663 INFO    ] 2026-06-27 17:56:32
[2026-06-27 17:56:32,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:56:32,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:56:32,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:56:33,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:56:33,090.090 INFO    ] time= 27/06/2026 17:56:33
[2026-06-27 17:56:33,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:56:33,121.121 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:56:33,212.212 INFO    ] No existing commands found in stream
[2026-06-27 17:56:38,227.227 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:56:38,230.230 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-27 17:56:39,100.100 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 17:56:39,102.102 INFO    ] Checking for system updates...
[2026-06-27 17:56:39,125.125 INFO    ] 200
[2026-06-27 17:56:39,127.127 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:56:39,160.160 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:56:39,162.162 INFO    ] No update needed
[2026-06-27 17:56:39,163.163 INFO    ] Checking for camera pi updates...
[2026-06-27 17:56:39,183.183 INFO    ] 200
[2026-06-27 17:56:39,185.185 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:56:39,210.210 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:56:39,267.267 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:56:39,268.268 INFO    ] No camera update needed
[2026-06-27 17:56:39,270.270 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:56:39,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:56:39,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:56:39,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:56:41,316.316 INFO    ] ================================================
[2026-06-27 17:56:41,332.332 INFO    ] Launching Daemon at Sat Jun 27 17:56:41 IST 2026
[2026-06-27 17:56:41,343.343 INFO    ] ================================================
[2026-06-27 17:56:41,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:56:41
[2026-06-27 17:56:42,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:56:42,224.224 INFO    ] Initializing speech engine...
[2026-06-27 17:56:42,229.229 INFO    ] 2026-06-27 17:56:42
[2026-06-27 17:56:42,434.434 INFO    ] 2026-06-27 17:56:42
[2026-06-27 17:56:42,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:56:42,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:56:42,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:56:42,783.783 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:56:42,839.839 INFO    ] time= 27/06/2026 17:56:42
[2026-06-27 17:56:42,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:56:42,889.889 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:56:42,955.955 INFO    ] No existing commands found in stream
[2026-06-27 17:56:47,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:56:47,969.969 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-27 17:56:50,280.280 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 17:56:50,282.282 INFO    ] Checking for system updates...
[2026-06-27 17:56:50,302.302 INFO    ] 200
[2026-06-27 17:56:50,304.304 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:56:50,334.334 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:56:50,336.336 INFO    ] No update needed
[2026-06-27 17:56:50,337.337 INFO    ] Checking for camera pi updates...
[2026-06-27 17:56:50,359.359 INFO    ] 200
[2026-06-27 17:56:50,360.360 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:56:50,383.383 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:56:50,430.430 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:56:50,432.432 INFO    ] No camera update needed
[2026-06-27 17:56:50,433.433 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:56:50,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:56:50,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:56:50,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:56:52,482.482 INFO    ] ================================================
[2026-06-27 17:56:52,498.498 INFO    ] Launching Daemon at Sat Jun 27 17:56:52 IST 2026
[2026-06-27 17:56:52,508.508 INFO    ] ================================================
[2026-06-27 17:56:52,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:56:52
[2026-06-27 17:56:53,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:56:53,320.320 INFO    ] Initializing speech engine...
[2026-06-27 17:56:53,330.330 INFO    ] 2026-06-27 17:56:53
[2026-06-27 17:56:53,557.557 INFO    ] 2026-06-27 17:56:53
[2026-06-27 17:56:53,588.588 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:56:53,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:56:53,762.762 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:56:53,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:56:53,999.999 INFO    ] time= 27/06/2026 17:56:53
[2026-06-27 17:56:54,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:56:54,040.040 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:56:54,115.115 INFO    ] No existing commands found in stream
[2026-06-27 17:56:59,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:56:59,129.129 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-27 17:57:01,358.358 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 17:57:01,360.360 INFO    ] Checking for system updates...
[2026-06-27 17:57:01,380.380 INFO    ] 200
[2026-06-27 17:57:01,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:57:01,417.417 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:57:01,419.419 INFO    ] No update needed
[2026-06-27 17:57:01,420.420 INFO    ] Checking for camera pi updates...
[2026-06-27 17:57:01,442.442 INFO    ] 200
[2026-06-27 17:57:01,443.443 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:57:01,468.468 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:57:01,529.529 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:57:01,531.531 INFO    ] No camera update needed
[2026-06-27 17:57:01,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:57:01,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:57:01,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:57:01,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:57:03,574.574 INFO    ] ================================================
[2026-06-27 17:57:03,589.589 INFO    ] Launching Daemon at Sat Jun 27 17:57:03 IST 2026
[2026-06-27 17:57:03,599.599 INFO    ] ================================================
[2026-06-27 17:57:03,969.969 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:57:03
[2026-06-27 17:57:04,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:57:04,438.438 INFO    ] Initializing speech engine...
[2026-06-27 17:57:04,442.442 INFO    ] 2026-06-27 17:57:04
[2026-06-27 17:57:04,652.652 INFO    ] 2026-06-27 17:57:04
[2026-06-27 17:57:04,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:57:04,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:57:04,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:57:05,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:57:05,078.078 INFO    ] time= 27/06/2026 17:57:05
[2026-06-27 17:57:05,102.102 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:57:05,108.108 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:57:05,176.176 INFO    ] No existing commands found in stream
[2026-06-27 17:57:10,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:57:10,189.189 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-27 17:57:13,531.531 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 17:57:13,533.533 INFO    ] Checking for system updates...
[2026-06-27 17:57:13,555.555 INFO    ] 200
[2026-06-27 17:57:13,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:57:13,587.587 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:57:13,588.588 INFO    ] No update needed
[2026-06-27 17:57:13,589.589 INFO    ] Checking for camera pi updates...
[2026-06-27 17:57:13,609.609 INFO    ] 200
[2026-06-27 17:57:13,610.610 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:57:13,636.636 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:57:13,675.675 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:57:13,677.677 INFO    ] No camera update needed
[2026-06-27 17:57:13,678.678 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:57:13,679.679 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:57:13,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:57:13,685.685 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:57:15,724.724 INFO    ] ================================================
[2026-06-27 17:57:15,739.739 INFO    ] Launching Daemon at Sat Jun 27 17:57:15 IST 2026
[2026-06-27 17:57:15,750.750 INFO    ] ================================================
[2026-06-27 17:57:16,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:57:16
[2026-06-27 17:57:16,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:57:16,600.600 INFO    ] Initializing speech engine...
[2026-06-27 17:57:16,605.605 INFO    ] 2026-06-27 17:57:16
[2026-06-27 17:57:16,812.812 INFO    ] 2026-06-27 17:57:16
[2026-06-27 17:57:16,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:57:17,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:57:17,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:57:17,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:57:17,237.237 INFO    ] time= 27/06/2026 17:57:17
[2026-06-27 17:57:17,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:57:17,266.266 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:57:17,357.357 INFO    ] No existing commands found in stream
[2026-06-27 17:57:22,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:57:22,374.374 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-27 17:57:23,396.396 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 17:57:23,398.398 INFO    ] Checking for system updates...
[2026-06-27 17:57:23,419.419 INFO    ] 200
[2026-06-27 17:57:23,421.421 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:57:23,454.454 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:57:23,456.456 INFO    ] No update needed
[2026-06-27 17:57:23,457.457 INFO    ] Checking for camera pi updates...
[2026-06-27 17:57:23,476.476 INFO    ] 200
[2026-06-27 17:57:23,478.478 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:57:23,501.501 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:57:23,545.545 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:57:23,546.546 INFO    ] No camera update needed
[2026-06-27 17:57:23,548.548 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:57:23,549.549 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:57:23,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:57:23,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:57:25,601.601 INFO    ] ================================================
[2026-06-27 17:57:25,616.616 INFO    ] Launching Daemon at Sat Jun 27 17:57:25 IST 2026
[2026-06-27 17:57:25,627.627 INFO    ] ================================================
[2026-06-27 17:57:25,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:57:25
[2026-06-27 17:57:26,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:57:26,489.489 INFO    ] Initializing speech engine...
[2026-06-27 17:57:26,494.494 INFO    ] 2026-06-27 17:57:26
[2026-06-27 17:57:26,703.703 INFO    ] 2026-06-27 17:57:26
[2026-06-27 17:57:26,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:57:26,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:57:26,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:57:27,127.127 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:57:27,153.153 INFO    ] time= 27/06/2026 17:57:27
[2026-06-27 17:57:27,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:57:27,160.160 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:57:27,252.252 INFO    ] No existing commands found in stream
[2026-06-27 17:57:32,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:57:32,268.268 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-27 17:57:33,959.959 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 17:57:33,961.961 INFO    ] Checking for system updates...
[2026-06-27 17:57:33,982.982 INFO    ] 200
[2026-06-27 17:57:33,984.984 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:57:34,014.014 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:57:34,016.016 INFO    ] No update needed
[2026-06-27 17:57:34,017.017 INFO    ] Checking for camera pi updates...
[2026-06-27 17:57:34,037.037 INFO    ] 200
[2026-06-27 17:57:34,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:57:34,062.062 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:57:34,103.103 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:57:34,104.104 INFO    ] No camera update needed
[2026-06-27 17:57:34,105.105 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:57:34,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:57:34,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:57:34,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:57:36,150.150 INFO    ] ================================================
[2026-06-27 17:57:36,165.165 INFO    ] Launching Daemon at Sat Jun 27 17:57:36 IST 2026
[2026-06-27 17:57:36,176.176 INFO    ] ================================================
[2026-06-27 17:57:36,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:57:36
[2026-06-27 17:57:36,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:57:37,010.010 INFO    ] Initializing speech engine...
[2026-06-27 17:57:37,016.016 INFO    ] 2026-06-27 17:57:37
[2026-06-27 17:57:37,224.224 INFO    ] 2026-06-27 17:57:37
[2026-06-27 17:57:37,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:57:37,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:57:37,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:57:37,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:57:37,665.665 INFO    ] time= 27/06/2026 17:57:37
[2026-06-27 17:57:37,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:57:37,672.672 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:57:37,739.739 INFO    ] No existing commands found in stream
[2026-06-27 17:57:42,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:57:42,752.752 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-27 17:57:44,264.264 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 17:57:44,266.266 INFO    ] Checking for system updates...
[2026-06-27 17:57:44,287.287 INFO    ] 200
[2026-06-27 17:57:44,288.288 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:57:44,319.319 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:57:44,321.321 INFO    ] No update needed
[2026-06-27 17:57:44,322.322 INFO    ] Checking for camera pi updates...
[2026-06-27 17:57:44,342.342 INFO    ] 200
[2026-06-27 17:57:44,343.343 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:57:44,367.367 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:57:44,408.408 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:57:44,409.409 INFO    ] No camera update needed
[2026-06-27 17:57:44,411.411 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:57:44,412.412 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:57:44,416.416 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:57:44,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:57:46,457.457 INFO    ] ================================================
[2026-06-27 17:57:46,472.472 INFO    ] Launching Daemon at Sat Jun 27 17:57:46 IST 2026
[2026-06-27 17:57:46,482.482 INFO    ] ================================================
[2026-06-27 17:57:46,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:57:46
[2026-06-27 17:57:47,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:57:47,284.284 INFO    ] Initializing speech engine...
[2026-06-27 17:57:47,289.289 INFO    ] 2026-06-27 17:57:47
[2026-06-27 17:57:47,506.506 INFO    ] 2026-06-27 17:57:47
[2026-06-27 17:57:47,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:57:47,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:57:47,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:57:47,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:57:47,935.935 INFO    ] time= 27/06/2026 17:57:47
[2026-06-27 17:57:47,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:57:47,965.965 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:57:48,033.033 INFO    ] No existing commands found in stream
[2026-06-27 17:57:53,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:57:53,046.046 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-27 17:57:56,779.779 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 17:57:56,781.781 INFO    ] Checking for system updates...
[2026-06-27 17:57:56,803.803 INFO    ] 200
[2026-06-27 17:57:56,804.804 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:57:56,834.834 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:57:56,836.836 INFO    ] No update needed
[2026-06-27 17:57:56,837.837 INFO    ] Checking for camera pi updates...
[2026-06-27 17:57:56,856.856 INFO    ] 200
[2026-06-27 17:57:56,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:57:56,880.880 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:57:56,930.930 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:57:56,931.931 INFO    ] No camera update needed
[2026-06-27 17:57:56,933.933 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:57:56,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:57:56,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:57:56,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:57:58,977.977 INFO    ] ================================================
[2026-06-27 17:57:58,993.993 INFO    ] Launching Daemon at Sat Jun 27 17:57:58 IST 2026
[2026-06-27 17:57:59,004.004 INFO    ] ================================================
[2026-06-27 17:57:59,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:57:59
[2026-06-27 17:57:59,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:57:59,846.846 INFO    ] Initializing speech engine...
[2026-06-27 17:57:59,852.852 INFO    ] 2026-06-27 17:57:59
[2026-06-27 17:58:00,065.065 INFO    ] 2026-06-27 17:58:00
[2026-06-27 17:58:00,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:58:00,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:58:00,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:58:00,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:58:00,514.514 INFO    ] time= 27/06/2026 17:58:00
[2026-06-27 17:58:00,520.520 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:58:00,522.522 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:58:00,590.590 INFO    ] No existing commands found in stream
[2026-06-27 17:58:05,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:58:05,602.602 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-27 17:58:08,004.004 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 17:58:08,006.006 INFO    ] Checking for system updates...
[2026-06-27 17:58:08,027.027 INFO    ] 200
[2026-06-27 17:58:08,028.028 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:58:08,060.060 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:58:08,062.062 INFO    ] No update needed
[2026-06-27 17:58:08,063.063 INFO    ] Checking for camera pi updates...
[2026-06-27 17:58:08,082.082 INFO    ] 200
[2026-06-27 17:58:08,083.083 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:58:08,109.109 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:58:08,249.249 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:58:08,251.251 INFO    ] No camera update needed
[2026-06-27 17:58:08,252.252 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:58:08,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:58:08,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:58:08,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:58:10,297.297 INFO    ] ================================================
[2026-06-27 17:58:10,312.312 INFO    ] Launching Daemon at Sat Jun 27 17:58:10 IST 2026
[2026-06-27 17:58:10,323.323 INFO    ] ================================================
[2026-06-27 17:58:10,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:58:10
[2026-06-27 17:58:11,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:58:11,186.186 INFO    ] Initializing speech engine...
[2026-06-27 17:58:11,200.200 INFO    ] 2026-06-27 17:58:11
[2026-06-27 17:58:11,410.410 INFO    ] 2026-06-27 17:58:11
[2026-06-27 17:58:11,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:58:11,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:58:11,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:58:11,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:58:11,839.839 INFO    ] time= 27/06/2026 17:58:11
[2026-06-27 17:58:11,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:58:11,868.868 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:58:11,987.987 INFO    ] No existing commands found in stream
[2026-06-27 17:58:16,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:58:17,000.000 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-27 17:58:19,930.930 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 17:58:19,932.932 INFO    ] Checking for system updates...
[2026-06-27 17:58:19,953.953 INFO    ] 200
[2026-06-27 17:58:19,955.955 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:58:19,986.986 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:58:19,987.987 INFO    ] No update needed
[2026-06-27 17:58:19,989.989 INFO    ] Checking for camera pi updates...
[2026-06-27 17:58:20,009.009 INFO    ] 200
[2026-06-27 17:58:20,011.011 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:58:20,034.034 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:58:20,077.077 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:58:20,078.078 INFO    ] No camera update needed
[2026-06-27 17:58:20,079.079 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:58:20,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:58:20,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:58:20,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:58:22,124.124 INFO    ] ================================================
[2026-06-27 17:58:22,139.139 INFO    ] Launching Daemon at Sat Jun 27 17:58:22 IST 2026
[2026-06-27 17:58:22,149.149 INFO    ] ================================================
[2026-06-27 17:58:22,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:58:22
[2026-06-27 17:58:22,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:58:22,961.961 INFO    ] Initializing speech engine...
[2026-06-27 17:58:22,966.966 INFO    ] 2026-06-27 17:58:22
[2026-06-27 17:58:23,175.175 INFO    ] 2026-06-27 17:58:23
[2026-06-27 17:58:23,204.204 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:58:23,425.425 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:58:23,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:58:23,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:58:23,669.669 INFO    ] time= 27/06/2026 17:58:23
[2026-06-27 17:58:23,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:58:23,678.678 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:58:23,750.750 INFO    ] No existing commands found in stream
[2026-06-27 17:58:28,759.759 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:58:28,761.761 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-27 17:58:30,313.313 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 17:58:30,315.315 INFO    ] Checking for system updates...
[2026-06-27 17:58:30,335.335 INFO    ] 200
[2026-06-27 17:58:30,336.336 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:58:30,367.367 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:58:30,369.369 INFO    ] No update needed
[2026-06-27 17:58:30,370.370 INFO    ] Checking for camera pi updates...
[2026-06-27 17:58:30,389.389 INFO    ] 200
[2026-06-27 17:58:30,391.391 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:58:30,416.416 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:58:30,457.457 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:58:30,458.458 INFO    ] No camera update needed
[2026-06-27 17:58:30,459.459 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:58:30,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:58:30,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:58:30,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:58:32,499.499 INFO    ] ================================================
[2026-06-27 17:58:32,514.514 INFO    ] Launching Daemon at Sat Jun 27 17:58:32 IST 2026
[2026-06-27 17:58:32,525.525 INFO    ] ================================================
[2026-06-27 17:58:32,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:58:32
[2026-06-27 17:58:33,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:58:33,315.315 INFO    ] Initializing speech engine...
[2026-06-27 17:58:33,320.320 INFO    ] 2026-06-27 17:58:33
[2026-06-27 17:58:33,525.525 INFO    ] 2026-06-27 17:58:33
[2026-06-27 17:58:33,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:58:33,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:58:33,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:58:33,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:58:33,965.965 INFO    ] time= 27/06/2026 17:58:33
[2026-06-27 17:58:33,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:58:33,972.972 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:58:34,039.039 INFO    ] No existing commands found in stream
[2026-06-27 17:58:39,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:58:39,056.056 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-27 17:58:42,715.715 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 17:58:42,717.717 INFO    ] Checking for system updates...
[2026-06-27 17:58:42,738.738 INFO    ] 200
[2026-06-27 17:58:42,740.740 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:58:42,770.770 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:58:42,771.771 INFO    ] No update needed
[2026-06-27 17:58:42,772.772 INFO    ] Checking for camera pi updates...
[2026-06-27 17:58:42,792.792 INFO    ] 200
[2026-06-27 17:58:42,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:58:42,817.817 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:58:42,857.857 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:58:42,859.859 INFO    ] No camera update needed
[2026-06-27 17:58:42,860.860 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:58:42,861.861 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:58:42,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:58:42,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:58:44,906.906 INFO    ] ================================================
[2026-06-27 17:58:44,921.921 INFO    ] Launching Daemon at Sat Jun 27 17:58:44 IST 2026
[2026-06-27 17:58:44,932.932 INFO    ] ================================================
[2026-06-27 17:58:45,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:58:45
[2026-06-27 17:58:45,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:58:45,740.740 INFO    ] Initializing speech engine...
[2026-06-27 17:58:45,745.745 INFO    ] 2026-06-27 17:58:45
[2026-06-27 17:58:45,957.957 INFO    ] 2026-06-27 17:58:45
[2026-06-27 17:58:45,988.988 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:58:46,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:58:46,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:58:46,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:58:46,422.422 INFO    ] time= 27/06/2026 17:58:46
[2026-06-27 17:58:46,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:58:46,435.435 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:58:46,506.506 INFO    ] No existing commands found in stream
[2026-06-27 17:58:51,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:58:51,518.518 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-27 17:58:54,871.871 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 17:58:54,872.872 INFO    ] Checking for system updates...
[2026-06-27 17:58:54,893.893 INFO    ] 200
[2026-06-27 17:58:54,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:58:54,926.926 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:58:54,928.928 INFO    ] No update needed
[2026-06-27 17:58:54,929.929 INFO    ] Checking for camera pi updates...
[2026-06-27 17:58:54,948.948 INFO    ] 200
[2026-06-27 17:58:54,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:58:54,972.972 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:58:54,999.999 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:58:55,001.001 INFO    ] No camera update needed
[2026-06-27 17:58:55,002.002 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:58:55,003.003 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:58:55,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:58:55,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:58:57,049.049 INFO    ] ================================================
[2026-06-27 17:58:57,065.065 INFO    ] Launching Daemon at Sat Jun 27 17:58:57 IST 2026
[2026-06-27 17:58:57,077.077 INFO    ] ================================================
[2026-06-27 17:58:57,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:58:57
[2026-06-27 17:58:57,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:58:57,892.892 INFO    ] Initializing speech engine...
[2026-06-27 17:58:57,898.898 INFO    ] 2026-06-27 17:58:57
[2026-06-27 17:58:58,102.102 INFO    ] 2026-06-27 17:58:58
[2026-06-27 17:58:58,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:58:58,314.314 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:58:58,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:58:58,515.515 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:58:58,540.540 INFO    ] time= 27/06/2026 17:58:58
[2026-06-27 17:58:58,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:58:58,548.548 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:58:58,614.614 INFO    ] No existing commands found in stream
[2026-06-27 17:59:03,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:59:03,631.631 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-27 17:59:07,914.914 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 17:59:07,916.916 INFO    ] Checking for system updates...
[2026-06-27 17:59:07,937.937 INFO    ] 200
[2026-06-27 17:59:07,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:59:07,969.969 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:59:07,970.970 INFO    ] No update needed
[2026-06-27 17:59:07,971.971 INFO    ] Checking for camera pi updates...
[2026-06-27 17:59:07,992.992 INFO    ] 200
[2026-06-27 17:59:07,993.993 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:59:08,016.016 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:59:08,060.060 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 17:59:08,061.061 INFO    ] No camera update needed
[2026-06-27 17:59:08,063.063 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:59:08,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:59:08,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:59:08,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:59:10,109.109 INFO    ] ================================================
[2026-06-27 17:59:10,125.125 INFO    ] Launching Daemon at Sat Jun 27 17:59:10 IST 2026
[2026-06-27 17:59:10,136.136 INFO    ] ================================================
[2026-06-27 17:59:10,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:59:10
[2026-06-27 17:59:10,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:59:10,944.944 INFO    ] Initializing speech engine...
[2026-06-27 17:59:10,954.954 INFO    ] 2026-06-27 17:59:10
[2026-06-27 17:59:11,160.160 INFO    ] 2026-06-27 17:59:11
[2026-06-27 17:59:11,189.189 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:59:11,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:59:11,383.383 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:59:11,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:59:11,581.581 INFO    ] time= 27/06/2026 17:59:11
[2026-06-27 17:59:11,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:59:11,609.609 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:59:11,676.676 INFO    ] No existing commands found in stream
[2026-06-27 17:59:16,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:59:16,688.688 INFO    ] Waiting 2.77 seconds before fallback handling...
[2026-06-27 17:59:19,868.868 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 17:59:19,870.870 INFO    ] Checking for system updates...
[2026-06-27 17:59:19,891.891 INFO    ] 200
[2026-06-27 17:59:19,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:59:19,922.922 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:59:19,924.924 INFO    ] No update needed
[2026-06-27 17:59:19,925.925 INFO    ] Checking for camera pi updates...
[2026-06-27 17:59:19,945.945 INFO    ] 200
[2026-06-27 17:59:19,946.946 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:59:19,971.971 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:59:20,015.015 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:59:20,016.016 INFO    ] No camera update needed
[2026-06-27 17:59:20,018.018 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:59:20,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:59:20,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:59:20,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:59:22,064.064 INFO    ] ================================================
[2026-06-27 17:59:22,084.084 INFO    ] Launching Daemon at Sat Jun 27 17:59:22 IST 2026
[2026-06-27 17:59:22,096.096 INFO    ] ================================================
[2026-06-27 17:59:22,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:59:22
[2026-06-27 17:59:22,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:59:22,900.900 INFO    ] Initializing speech engine...
[2026-06-27 17:59:22,905.905 INFO    ] 2026-06-27 17:59:22
[2026-06-27 17:59:23,107.107 INFO    ] 2026-06-27 17:59:23
[2026-06-27 17:59:23,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:59:23,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:59:23,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:59:23,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:59:23,526.526 INFO    ] time= 27/06/2026 17:59:23
[2026-06-27 17:59:23,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:59:23,556.556 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:59:23,623.623 INFO    ] No existing commands found in stream
[2026-06-27 17:59:28,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:59:28,635.635 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-27 17:59:32,473.473 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 17:59:32,475.475 INFO    ] Checking for system updates...
[2026-06-27 17:59:32,496.496 INFO    ] 200
[2026-06-27 17:59:32,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:59:32,528.528 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:59:32,529.529 INFO    ] No update needed
[2026-06-27 17:59:32,531.531 INFO    ] Checking for camera pi updates...
[2026-06-27 17:59:32,554.554 INFO    ] 200
[2026-06-27 17:59:32,555.555 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:59:32,578.578 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:59:32,606.606 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:59:32,607.607 INFO    ] No camera update needed
[2026-06-27 17:59:32,609.609 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:59:32,610.610 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:59:32,613.613 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:59:32,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:59:34,656.656 INFO    ] ================================================
[2026-06-27 17:59:34,671.671 INFO    ] Launching Daemon at Sat Jun 27 17:59:34 IST 2026
[2026-06-27 17:59:34,682.682 INFO    ] ================================================
[2026-06-27 17:59:35,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:59:35
[2026-06-27 17:59:35,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:59:35,490.490 INFO    ] Initializing speech engine...
[2026-06-27 17:59:35,499.499 INFO    ] 2026-06-27 17:59:35
[2026-06-27 17:59:35,703.703 INFO    ] 2026-06-27 17:59:35
[2026-06-27 17:59:35,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:59:35,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:59:35,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:59:36,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:59:36,120.120 INFO    ] time= 27/06/2026 17:59:36
[2026-06-27 17:59:36,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:59:36,151.151 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:59:36,217.217 INFO    ] No existing commands found in stream
[2026-06-27 17:59:41,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:59:41,234.234 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-27 17:59:42,816.816 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 17:59:42,817.817 INFO    ] Checking for system updates...
[2026-06-27 17:59:42,838.838 INFO    ] 200
[2026-06-27 17:59:42,840.840 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:59:42,874.874 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:59:42,875.875 INFO    ] No update needed
[2026-06-27 17:59:42,877.877 INFO    ] Checking for camera pi updates...
[2026-06-27 17:59:42,897.897 INFO    ] 200
[2026-06-27 17:59:42,898.898 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:59:42,921.921 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:59:42,972.972 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:59:42,973.973 INFO    ] No camera update needed
[2026-06-27 17:59:42,975.975 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:59:42,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:59:42,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:59:42,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:59:45,024.024 INFO    ] ================================================
[2026-06-27 17:59:45,040.040 INFO    ] Launching Daemon at Sat Jun 27 17:59:45 IST 2026
[2026-06-27 17:59:45,051.051 INFO    ] ================================================
[2026-06-27 17:59:45,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:59:45
[2026-06-27 17:59:45,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:59:45,842.842 INFO    ] Initializing speech engine...
[2026-06-27 17:59:45,852.852 INFO    ] 2026-06-27 17:59:45
[2026-06-27 17:59:46,055.055 INFO    ] 2026-06-27 17:59:46
[2026-06-27 17:59:46,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:59:46,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:59:46,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:59:46,415.415 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:59:46,476.476 INFO    ] time= 27/06/2026 17:59:46
[2026-06-27 17:59:46,500.500 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:59:46,506.506 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:59:46,596.596 INFO    ] No existing commands found in stream
[2026-06-27 17:59:51,605.605 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 17:59:51,608.608 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-27 17:59:54,110.110 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 17:59:54,111.111 INFO    ] Checking for system updates...
[2026-06-27 17:59:54,132.132 INFO    ] 200
[2026-06-27 17:59:54,133.133 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:59:54,164.164 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:59:54,165.165 INFO    ] No update needed
[2026-06-27 17:59:54,167.167 INFO    ] Checking for camera pi updates...
[2026-06-27 17:59:54,187.187 INFO    ] 200
[2026-06-27 17:59:54,188.188 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 17:59:54,211.211 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 17:59:54,269.269 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 17:59:54,270.270 INFO    ] No camera update needed
[2026-06-27 17:59:54,271.271 INFO    ] Script finished. Safe exiting...
[2026-06-27 17:59:54,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 17:59:54,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 17:59:54,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 17:59:56,318.318 INFO    ] ================================================
[2026-06-27 17:59:56,334.334 INFO    ] Launching Daemon at Sat Jun 27 17:59:56 IST 2026
[2026-06-27 17:59:56,345.345 INFO    ] ================================================
[2026-06-27 17:59:56,711.711 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 17:59:56
[2026-06-27 17:59:57,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 17:59:57,152.152 INFO    ] Initializing speech engine...
[2026-06-27 17:59:57,157.157 INFO    ] 2026-06-27 17:59:57
[2026-06-27 17:59:57,374.374 INFO    ] 2026-06-27 17:59:57
[2026-06-27 17:59:57,402.402 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 17:59:57,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 17:59:57,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 17:59:57,746.746 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 17:59:57,795.795 INFO    ] time= 27/06/2026 17:59:57
[2026-06-27 17:59:57,816.816 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 17:59:57,822.822 INFO    ] Checking for existing commands in stream...
[2026-06-27 17:59:57,889.889 INFO    ] No existing commands found in stream
[2026-06-27 18:00:02,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:00:02,898.898 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-27 18:00:10,279.279 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 18:00:10,280.280 INFO    ] Checking for system updates...
[2026-06-27 18:00:10,301.301 INFO    ] 200
[2026-06-27 18:00:10,302.302 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:00:10,337.337 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:00:10,338.338 INFO    ] No update needed
[2026-06-27 18:00:10,339.339 INFO    ] Checking for camera pi updates...
[2026-06-27 18:00:10,360.360 INFO    ] 200
[2026-06-27 18:00:10,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:00:10,385.385 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:00:10,532.532 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:00:10,533.533 INFO    ] No camera update needed
[2026-06-27 18:00:10,535.535 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:00:10,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:00:10,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:00:10,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:00:12,581.581 INFO    ] ================================================
[2026-06-27 18:00:12,597.597 INFO    ] Launching Daemon at Sat Jun 27 18:00:12 IST 2026
[2026-06-27 18:00:12,616.616 INFO    ] ================================================
[2026-06-27 18:00:12,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:00:12
[2026-06-27 18:00:13,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:00:13,408.408 INFO    ] Initializing speech engine...
[2026-06-27 18:00:13,413.413 INFO    ] 2026-06-27 18:00:13
[2026-06-27 18:00:13,618.618 INFO    ] 2026-06-27 18:00:13
[2026-06-27 18:00:13,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:00:13,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:00:13,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:00:13,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:00:14,042.042 INFO    ] time= 27/06/2026 18:00:14
[2026-06-27 18:00:14,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:00:14,070.070 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:00:14,138.138 INFO    ] No existing commands found in stream
[2026-06-27 18:00:19,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:00:19,148.148 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-27 18:00:20,455.455 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:00:20,456.456 INFO    ] Checking for system updates...
[2026-06-27 18:00:20,477.477 INFO    ] 200
[2026-06-27 18:00:20,478.478 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:00:20,519.519 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:00:20,521.521 INFO    ] No update needed
[2026-06-27 18:00:20,524.524 INFO    ] Checking for camera pi updates...
[2026-06-27 18:00:20,561.561 INFO    ] 200
[2026-06-27 18:00:20,563.563 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:00:20,605.605 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:00:20,654.654 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:00:20,657.657 INFO    ] No camera update needed
[2026-06-27 18:00:20,659.659 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:00:20,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:00:20,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:00:20,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:00:22,706.706 INFO    ] ================================================
[2026-06-27 18:00:22,714.714 INFO    ] Launching Daemon at Sat Jun 27 18:00:22 IST 2026
[2026-06-27 18:00:22,720.720 INFO    ] ================================================
[2026-06-27 18:00:23,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:00:23
[2026-06-27 18:00:23,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:00:23,557.557 INFO    ] Initializing speech engine...
[2026-06-27 18:00:23,565.565 INFO    ] 2026-06-27 18:00:23
[2026-06-27 18:00:23,784.784 INFO    ] 2026-06-27 18:00:23
[2026-06-27 18:00:23,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:00:23,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:00:24,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:00:24,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:00:24,227.227 INFO    ] time= 27/06/2026 18:00:24
[2026-06-27 18:00:24,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:00:24,276.276 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:00:24,347.347 INFO    ] No existing commands found in stream
[2026-06-27 18:00:29,361.361 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:00:29,364.364 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-27 18:00:30,110.110 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:00:30,111.111 INFO    ] Checking for system updates...
[2026-06-27 18:00:30,132.132 INFO    ] 200
[2026-06-27 18:00:30,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:00:30,166.166 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:00:30,168.168 INFO    ] No update needed
[2026-06-27 18:00:30,169.169 INFO    ] Checking for camera pi updates...
[2026-06-27 18:00:30,189.189 INFO    ] 200
[2026-06-27 18:00:30,190.190 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:00:30,216.216 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:00:30,259.259 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:00:30,261.261 INFO    ] No camera update needed
[2026-06-27 18:00:30,262.262 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:00:30,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:00:30,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:00:30,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:00:32,301.301 INFO    ] ================================================
[2026-06-27 18:00:32,310.310 INFO    ] Launching Daemon at Sat Jun 27 18:00:32 IST 2026
[2026-06-27 18:00:32,317.317 INFO    ] ================================================
[2026-06-27 18:00:32,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:00:32
[2026-06-27 18:00:32,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:00:33,156.156 INFO    ] Initializing speech engine...
[2026-06-27 18:00:33,162.162 INFO    ] 2026-06-27 18:00:33
[2026-06-27 18:00:33,366.366 INFO    ] 2026-06-27 18:00:33
[2026-06-27 18:00:33,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:00:33,580.580 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:00:33,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:00:33,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:00:33,790.790 INFO    ] time= 27/06/2026 18:00:33
[2026-06-27 18:00:33,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:00:33,819.819 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:00:33,887.887 INFO    ] No existing commands found in stream
[2026-06-27 18:00:38,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:00:38,900.900 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-27 18:00:41,693.693 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 18:00:41,695.695 INFO    ] Checking for system updates...
[2026-06-27 18:00:41,718.718 INFO    ] 200
[2026-06-27 18:00:41,719.719 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:00:41,755.755 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:00:41,756.756 INFO    ] No update needed
[2026-06-27 18:00:41,758.758 INFO    ] Checking for camera pi updates...
[2026-06-27 18:00:41,781.781 INFO    ] 200
[2026-06-27 18:00:41,783.783 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:00:41,807.807 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:00:41,850.850 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:00:41,852.852 INFO    ] No camera update needed
[2026-06-27 18:00:41,855.855 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:00:41,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:00:41,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:00:41,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:00:43,898.898 INFO    ] ================================================
[2026-06-27 18:00:43,914.914 INFO    ] Launching Daemon at Sat Jun 27 18:00:43 IST 2026
[2026-06-27 18:00:43,925.925 INFO    ] ================================================
[2026-06-27 18:00:44,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:00:44
[2026-06-27 18:00:44,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:00:44,728.728 INFO    ] Initializing speech engine...
[2026-06-27 18:00:44,734.734 INFO    ] 2026-06-27 18:00:44
[2026-06-27 18:00:44,937.937 INFO    ] 2026-06-27 18:00:44
[2026-06-27 18:00:44,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:00:45,151.151 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:00:45,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:00:45,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:00:45,378.378 INFO    ] time= 27/06/2026 18:00:45
[2026-06-27 18:00:45,384.384 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:00:45,385.385 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:00:45,452.452 INFO    ] No existing commands found in stream
[2026-06-27 18:00:50,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:00:50,462.462 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-27 18:00:50,934.934 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 18:00:50,935.935 INFO    ] Checking for system updates...
[2026-06-27 18:00:50,963.963 INFO    ] 200
[2026-06-27 18:00:50,964.964 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-27 18:00:50,966.966 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-27 18:00:50,967.967 INFO    ] Checking for camera pi updates...
[2026-06-27 18:00:50,995.995 INFO    ] 200
[2026-06-27 18:00:50,997.997 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-27 18:00:50,998.998 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-27 18:00:50,999.999 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:00:51,001.001 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:00:51,004.004 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:00:51,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:00:53,048.048 INFO    ] ================================================
[2026-06-27 18:00:53,063.063 INFO    ] Launching Daemon at Sat Jun 27 18:00:53 IST 2026
[2026-06-27 18:00:53,074.074 INFO    ] ================================================
[2026-06-27 18:00:53,438.438 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:00:53
[2026-06-27 18:00:53,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:00:53,889.889 INFO    ] Initializing speech engine...
[2026-06-27 18:00:53,903.903 INFO    ] 2026-06-27 18:00:53
[2026-06-27 18:00:54,110.110 INFO    ] 2026-06-27 18:00:54
[2026-06-27 18:00:54,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:00:54,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:00:54,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:00:54,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:00:54,528.528 INFO    ] time= 27/06/2026 18:00:54
[2026-06-27 18:00:54,553.553 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:00:54,558.558 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:00:54,626.626 INFO    ] No existing commands found in stream
[2026-06-27 18:00:59,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:00:59,643.643 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-27 18:01:00,373.373 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 18:01:00,375.375 INFO    ] Checking for system updates...
[2026-06-27 18:01:00,398.398 INFO    ] 200
[2026-06-27 18:01:00,399.399 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:01:00,435.435 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:01:00,437.437 INFO    ] No update needed
[2026-06-27 18:01:00,438.438 INFO    ] Checking for camera pi updates...
[2026-06-27 18:01:00,461.461 INFO    ] 200
[2026-06-27 18:01:00,462.462 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:01:00,486.486 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:01:00,535.535 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:01:00,536.536 INFO    ] No camera update needed
[2026-06-27 18:01:00,538.538 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:01:00,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:01:00,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:01:00,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:01:02,598.598 INFO    ] ================================================
[2026-06-27 18:01:02,607.607 INFO    ] Launching Daemon at Sat Jun 27 18:01:02 IST 2026
[2026-06-27 18:01:02,613.613 INFO    ] ================================================
[2026-06-27 18:01:02,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:01:02
[2026-06-27 18:01:03,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:01:03,365.365 INFO    ] Initializing speech engine...
[2026-06-27 18:01:03,369.369 INFO    ] 2026-06-27 18:01:03
[2026-06-27 18:01:03,588.588 INFO    ] 2026-06-27 18:01:03
[2026-06-27 18:01:03,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:01:03,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:01:03,814.814 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:01:03,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:01:04,033.033 INFO    ] time= 27/06/2026 18:01:03
[2026-06-27 18:01:04,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:01:04,045.045 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:01:04,112.112 INFO    ] No existing commands found in stream
[2026-06-27 18:01:09,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:01:09,124.124 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-27 18:01:13,345.345 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 18:01:13,347.347 INFO    ] Checking for system updates...
[2026-06-27 18:01:13,367.367 INFO    ] 200
[2026-06-27 18:01:13,369.369 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:01:13,399.399 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:01:13,400.400 INFO    ] No update needed
[2026-06-27 18:01:13,402.402 INFO    ] Checking for camera pi updates...
[2026-06-27 18:01:13,423.423 INFO    ] 200
[2026-06-27 18:01:13,425.425 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:01:13,450.450 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:01:13,506.506 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:01:13,508.508 INFO    ] No camera update needed
[2026-06-27 18:01:13,509.509 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:01:13,510.510 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:01:13,513.513 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:01:13,516.516 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:01:15,557.557 INFO    ] ================================================
[2026-06-27 18:01:15,572.572 INFO    ] Launching Daemon at Sat Jun 27 18:01:15 IST 2026
[2026-06-27 18:01:15,584.584 INFO    ] ================================================
[2026-06-27 18:01:15,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:01:15
[2026-06-27 18:01:16,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:01:16,367.367 INFO    ] Initializing speech engine...
[2026-06-27 18:01:16,375.375 INFO    ] 2026-06-27 18:01:16
[2026-06-27 18:01:16,588.588 INFO    ] 2026-06-27 18:01:16
[2026-06-27 18:01:16,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:01:16,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:01:16,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:01:16,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:01:17,011.011 INFO    ] time= 27/06/2026 18:01:16
[2026-06-27 18:01:17,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:01:17,039.039 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:01:17,106.106 INFO    ] No existing commands found in stream
[2026-06-27 18:01:22,120.120 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:01:22,123.123 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-27 18:01:26,212.212 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:01:26,214.214 INFO    ] Checking for system updates...
[2026-06-27 18:01:26,236.236 INFO    ] 200
[2026-06-27 18:01:26,238.238 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:01:26,268.268 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:01:26,270.270 INFO    ] No update needed
[2026-06-27 18:01:26,271.271 INFO    ] Checking for camera pi updates...
[2026-06-27 18:01:26,292.292 INFO    ] 200
[2026-06-27 18:01:26,293.293 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:01:26,318.318 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:01:26,347.347 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:01:26,348.348 INFO    ] No camera update needed
[2026-06-27 18:01:26,350.350 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:01:26,351.351 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:01:26,354.354 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:01:26,357.357 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:01:28,397.397 INFO    ] ================================================
[2026-06-27 18:01:28,412.412 INFO    ] Launching Daemon at Sat Jun 27 18:01:28 IST 2026
[2026-06-27 18:01:28,423.423 INFO    ] ================================================
[2026-06-27 18:01:28,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:01:28
[2026-06-27 18:01:29,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:01:29,250.250 INFO    ] Initializing speech engine...
[2026-06-27 18:01:29,256.256 INFO    ] 2026-06-27 18:01:29
[2026-06-27 18:01:29,458.458 INFO    ] 2026-06-27 18:01:29
[2026-06-27 18:01:29,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:01:29,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:01:29,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:01:29,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:01:29,868.868 INFO    ] time= 27/06/2026 18:01:29
[2026-06-27 18:01:29,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:01:29,872.872 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:01:29,925.925 INFO    ] No existing commands found in stream
[2026-06-27 18:01:34,934.934 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:01:34,936.936 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-27 18:01:38,539.539 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:01:38,541.541 INFO    ] Checking for system updates...
[2026-06-27 18:01:38,563.563 INFO    ] 200
[2026-06-27 18:01:38,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:01:38,597.597 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:01:38,599.599 INFO    ] No update needed
[2026-06-27 18:01:38,600.600 INFO    ] Checking for camera pi updates...
[2026-06-27 18:01:38,620.620 INFO    ] 200
[2026-06-27 18:01:38,621.621 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:01:38,646.646 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:01:38,696.696 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:01:38,697.697 INFO    ] No camera update needed
[2026-06-27 18:01:38,698.698 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:01:38,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:01:38,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:01:38,705.705 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:01:40,745.745 INFO    ] ================================================
[2026-06-27 18:01:40,760.760 INFO    ] Launching Daemon at Sat Jun 27 18:01:40 IST 2026
[2026-06-27 18:01:40,771.771 INFO    ] ================================================
[2026-06-27 18:01:41,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:01:41
[2026-06-27 18:01:41,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:01:41,567.567 INFO    ] Initializing speech engine...
[2026-06-27 18:01:41,575.575 INFO    ] 2026-06-27 18:01:41
[2026-06-27 18:01:41,792.792 INFO    ] 2026-06-27 18:01:41
[2026-06-27 18:01:41,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:01:42,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:01:42,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:01:42,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:01:42,209.209 INFO    ] time= 27/06/2026 18:01:42
[2026-06-27 18:01:42,232.232 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:01:42,238.238 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:01:42,304.304 INFO    ] No existing commands found in stream
[2026-06-27 18:01:47,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:01:47,317.317 INFO    ] Waiting 1.26 seconds before fallback handling...
[2026-06-27 18:01:49,059.059 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:01:49,061.061 INFO    ] Checking for system updates...
[2026-06-27 18:01:49,083.083 INFO    ] 200
[2026-06-27 18:01:49,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:01:49,116.116 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:01:49,117.117 INFO    ] No update needed
[2026-06-27 18:01:49,118.118 INFO    ] Checking for camera pi updates...
[2026-06-27 18:01:49,140.140 INFO    ] 200
[2026-06-27 18:01:49,141.141 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:01:49,169.169 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:01:49,208.208 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:01:49,209.209 INFO    ] No camera update needed
[2026-06-27 18:01:49,211.211 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:01:49,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:01:49,215.215 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:01:49,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:01:51,258.258 INFO    ] ================================================
[2026-06-27 18:01:51,277.277 INFO    ] Launching Daemon at Sat Jun 27 18:01:51 IST 2026
[2026-06-27 18:01:51,288.288 INFO    ] ================================================
[2026-06-27 18:01:51,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:01:51
[2026-06-27 18:01:51,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:01:52,123.123 INFO    ] Initializing speech engine...
[2026-06-27 18:01:52,127.127 INFO    ] 2026-06-27 18:01:52
[2026-06-27 18:01:52,334.334 INFO    ] 2026-06-27 18:01:52
[2026-06-27 18:01:52,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:01:52,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:01:52,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:01:52,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:01:52,775.775 INFO    ] time= 27/06/2026 18:01:52
[2026-06-27 18:01:52,781.781 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:01:52,783.783 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:01:52,848.848 INFO    ] No existing commands found in stream
[2026-06-27 18:01:57,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:01:57,862.862 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-27 18:01:59,379.379 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:01:59,381.381 INFO    ] Checking for system updates...
[2026-06-27 18:01:59,404.404 INFO    ] 200
[2026-06-27 18:01:59,405.405 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:01:59,437.437 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:01:59,439.439 INFO    ] No update needed
[2026-06-27 18:01:59,440.440 INFO    ] Checking for camera pi updates...
[2026-06-27 18:01:59,460.460 INFO    ] 200
[2026-06-27 18:01:59,461.461 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:01:59,485.485 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:01:59,529.529 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:01:59,531.531 INFO    ] No camera update needed
[2026-06-27 18:01:59,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:01:59,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:01:59,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:01:59,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:02:01,580.580 INFO    ] ================================================
[2026-06-27 18:02:01,597.597 INFO    ] Launching Daemon at Sat Jun 27 18:02:01 IST 2026
[2026-06-27 18:02:01,607.607 INFO    ] ================================================
[2026-06-27 18:02:02,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:02:02
[2026-06-27 18:02:02,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:02:02,775.775 INFO    ] Initializing speech engine...
[2026-06-27 18:02:02,781.781 INFO    ] 2026-06-27 18:02:02
[2026-06-27 18:02:03,006.006 INFO    ] 2026-06-27 18:02:02
[2026-06-27 18:02:03,037.037 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:02:03,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:02:03,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:02:03,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:02:03,457.457 INFO    ] time= 27/06/2026 18:02:03
[2026-06-27 18:02:03,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:02:03,493.493 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:02:03,571.571 INFO    ] No existing commands found in stream
[2026-06-27 18:02:08,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:02:08,582.582 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-27 18:02:09,228.228 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:02:09,229.229 INFO    ] Checking for system updates...
[2026-06-27 18:02:09,251.251 INFO    ] 200
[2026-06-27 18:02:09,253.253 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:02:09,286.286 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:02:09,287.287 INFO    ] No update needed
[2026-06-27 18:02:09,288.288 INFO    ] Checking for camera pi updates...
[2026-06-27 18:02:09,308.308 INFO    ] 200
[2026-06-27 18:02:09,309.309 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:02:09,332.332 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:02:09,376.376 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:02:09,378.378 INFO    ] No camera update needed
[2026-06-27 18:02:09,379.379 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:02:09,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:02:09,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:02:09,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:02:11,425.425 INFO    ] ================================================
[2026-06-27 18:02:11,440.440 INFO    ] Launching Daemon at Sat Jun 27 18:02:11 IST 2026
[2026-06-27 18:02:11,451.451 INFO    ] ================================================
[2026-06-27 18:02:11,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:02:11
[2026-06-27 18:02:12,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:02:12,309.309 INFO    ] Initializing speech engine...
[2026-06-27 18:02:12,314.314 INFO    ] 2026-06-27 18:02:12
[2026-06-27 18:02:12,524.524 INFO    ] 2026-06-27 18:02:12
[2026-06-27 18:02:12,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:02:12,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:02:12,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:02:13,031.031 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:02:13,033.033 INFO    ] time= 27/06/2026 18:02:13
[2026-06-27 18:02:13,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:02:13,060.060 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:02:13,172.172 INFO    ] No existing commands found in stream
[2026-06-27 18:02:18,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:02:18,185.185 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-27 18:02:22,316.316 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 18:02:22,318.318 INFO    ] Checking for system updates...
[2026-06-27 18:02:22,340.340 INFO    ] 200
[2026-06-27 18:02:22,342.342 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:02:22,374.374 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:02:22,375.375 INFO    ] No update needed
[2026-06-27 18:02:22,376.376 INFO    ] Checking for camera pi updates...
[2026-06-27 18:02:22,396.396 INFO    ] 200
[2026-06-27 18:02:22,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:02:22,421.421 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:02:22,569.569 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:02:22,570.570 INFO    ] No camera update needed
[2026-06-27 18:02:22,572.572 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:02:22,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:02:22,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:02:22,579.579 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:02:24,618.618 INFO    ] ================================================
[2026-06-27 18:02:24,636.636 INFO    ] Launching Daemon at Sat Jun 27 18:02:24 IST 2026
[2026-06-27 18:02:24,647.647 INFO    ] ================================================
[2026-06-27 18:02:24,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:02:24
[2026-06-27 18:02:25,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:02:25,432.432 INFO    ] Initializing speech engine...
[2026-06-27 18:02:25,436.436 INFO    ] 2026-06-27 18:02:25
[2026-06-27 18:02:25,654.654 INFO    ] 2026-06-27 18:02:25
[2026-06-27 18:02:25,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:02:25,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:02:25,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:02:26,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:02:26,103.103 INFO    ] time= 27/06/2026 18:02:26
[2026-06-27 18:02:26,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:02:26,106.106 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:02:26,198.198 INFO    ] No existing commands found in stream
[2026-06-27 18:02:31,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:02:31,210.210 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-27 18:02:32,191.191 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:02:32,192.192 INFO    ] Checking for system updates...
[2026-06-27 18:02:32,216.216 INFO    ] 200
[2026-06-27 18:02:32,217.217 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:02:32,258.258 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:02:32,260.260 INFO    ] No update needed
[2026-06-27 18:02:32,262.262 INFO    ] Checking for camera pi updates...
[2026-06-27 18:02:32,285.285 INFO    ] 200
[2026-06-27 18:02:32,287.287 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:02:32,313.313 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:02:32,342.342 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:02:32,344.344 INFO    ] No camera update needed
[2026-06-27 18:02:32,345.345 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:02:32,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:02:32,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:02:32,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:02:34,391.391 INFO    ] ================================================
[2026-06-27 18:02:34,399.399 INFO    ] Launching Daemon at Sat Jun 27 18:02:34 IST 2026
[2026-06-27 18:02:34,405.405 INFO    ] ================================================
[2026-06-27 18:02:34,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:02:34
[2026-06-27 18:02:35,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:02:35,165.165 INFO    ] Initializing speech engine...
[2026-06-27 18:02:35,169.169 INFO    ] 2026-06-27 18:02:35
[2026-06-27 18:02:35,390.390 INFO    ] 2026-06-27 18:02:35
[2026-06-27 18:02:35,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:02:35,553.553 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:02:35,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:02:35,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:02:35,814.814 INFO    ] time= 27/06/2026 18:02:35
[2026-06-27 18:02:35,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:02:35,845.845 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:02:35,937.937 INFO    ] No existing commands found in stream
[2026-06-27 18:02:40,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:02:40,946.946 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-27 18:02:44,328.328 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:02:44,329.329 INFO    ] Checking for system updates...
[2026-06-27 18:02:44,351.351 INFO    ] 200
[2026-06-27 18:02:44,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:02:44,387.387 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:02:44,388.388 INFO    ] No update needed
[2026-06-27 18:02:44,390.390 INFO    ] Checking for camera pi updates...
[2026-06-27 18:02:44,419.419 INFO    ] 200
[2026-06-27 18:02:44,420.420 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:02:44,445.445 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:02:44,474.474 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:02:44,475.475 INFO    ] No camera update needed
[2026-06-27 18:02:44,477.477 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:02:44,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:02:44,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:02:44,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:02:46,525.525 INFO    ] ================================================
[2026-06-27 18:02:46,541.541 INFO    ] Launching Daemon at Sat Jun 27 18:02:46 IST 2026
[2026-06-27 18:02:46,551.551 INFO    ] ================================================
[2026-06-27 18:02:46,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:02:46
[2026-06-27 18:02:47,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:02:47,409.409 INFO    ] Initializing speech engine...
[2026-06-27 18:02:47,414.414 INFO    ] 2026-06-27 18:02:47
[2026-06-27 18:02:47,620.620 INFO    ] 2026-06-27 18:02:47
[2026-06-27 18:02:47,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:02:47,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:02:47,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:02:47,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:02:48,042.042 INFO    ] time= 27/06/2026 18:02:48
[2026-06-27 18:02:48,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:02:48,070.070 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:02:48,138.138 INFO    ] No existing commands found in stream
[2026-06-27 18:02:53,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:02:53,156.156 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-27 18:02:53,610.610 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:02:53,611.611 INFO    ] Checking for system updates...
[2026-06-27 18:02:53,632.632 INFO    ] 200
[2026-06-27 18:02:53,634.634 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:02:53,666.666 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:02:53,668.668 INFO    ] No update needed
[2026-06-27 18:02:53,670.670 INFO    ] Checking for camera pi updates...
[2026-06-27 18:02:53,691.691 INFO    ] 200
[2026-06-27 18:02:53,692.692 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:02:53,717.717 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:02:53,858.858 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:02:53,859.859 INFO    ] No camera update needed
[2026-06-27 18:02:53,861.861 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:02:53,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:02:53,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:02:53,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:02:55,907.907 INFO    ] ================================================
[2026-06-27 18:02:55,923.923 INFO    ] Launching Daemon at Sat Jun 27 18:02:55 IST 2026
[2026-06-27 18:02:55,933.933 INFO    ] ================================================
[2026-06-27 18:02:56,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:02:56
[2026-06-27 18:02:56,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:02:56,782.782 INFO    ] Initializing speech engine...
[2026-06-27 18:02:56,787.787 INFO    ] 2026-06-27 18:02:56
[2026-06-27 18:02:56,999.999 INFO    ] 2026-06-27 18:02:56
[2026-06-27 18:02:57,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:02:57,300.300 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:02:57,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:02:57,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:02:57,518.518 INFO    ] time= 27/06/2026 18:02:57
[2026-06-27 18:02:57,535.535 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:02:57,546.546 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:02:57,644.644 INFO    ] No existing commands found in stream
[2026-06-27 18:03:02,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:03:02,656.656 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-27 18:03:04,031.031 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:03:04,033.033 INFO    ] Checking for system updates...
[2026-06-27 18:03:04,056.056 INFO    ] 200
[2026-06-27 18:03:04,058.058 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:03:04,091.091 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:03:04,093.093 INFO    ] No update needed
[2026-06-27 18:03:04,094.094 INFO    ] Checking for camera pi updates...
[2026-06-27 18:03:04,118.118 INFO    ] 200
[2026-06-27 18:03:04,119.119 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:03:04,146.146 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:03:04,192.192 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:03:04,193.193 INFO    ] No camera update needed
[2026-06-27 18:03:04,195.195 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:03:04,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:03:04,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:03:04,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:03:06,246.246 INFO    ] ================================================
[2026-06-27 18:03:06,261.261 INFO    ] Launching Daemon at Sat Jun 27 18:03:06 IST 2026
[2026-06-27 18:03:06,272.272 INFO    ] ================================================
[2026-06-27 18:03:06,664.664 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:03:06
[2026-06-27 18:03:06,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:03:07,124.124 INFO    ] Initializing speech engine...
[2026-06-27 18:03:07,128.128 INFO    ] 2026-06-27 18:03:07
[2026-06-27 18:03:07,335.335 INFO    ] 2026-06-27 18:03:07
[2026-06-27 18:03:07,363.363 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:03:07,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:03:07,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:03:07,713.713 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:03:07,762.762 INFO    ] time= 27/06/2026 18:03:07
[2026-06-27 18:03:07,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:03:07,791.791 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:03:07,860.860 INFO    ] No existing commands found in stream
[2026-06-27 18:03:12,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:03:12,871.871 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-27 18:03:14,636.636 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:03:14,637.637 INFO    ] Checking for system updates...
[2026-06-27 18:03:14,658.658 INFO    ] 200
[2026-06-27 18:03:14,660.660 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:03:14,694.694 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:03:14,696.696 INFO    ] No update needed
[2026-06-27 18:03:14,697.697 INFO    ] Checking for camera pi updates...
[2026-06-27 18:03:14,717.717 INFO    ] 200
[2026-06-27 18:03:14,719.719 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:03:14,743.743 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:03:14,771.771 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:03:14,773.773 INFO    ] No camera update needed
[2026-06-27 18:03:14,774.774 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:03:14,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:03:14,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:03:14,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:03:16,820.820 INFO    ] ================================================
[2026-06-27 18:03:16,836.836 INFO    ] Launching Daemon at Sat Jun 27 18:03:16 IST 2026
[2026-06-27 18:03:16,846.846 INFO    ] ================================================
[2026-06-27 18:03:17,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:03:17
[2026-06-27 18:03:17,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:03:17,648.648 INFO    ] Initializing speech engine...
[2026-06-27 18:03:17,656.656 INFO    ] 2026-06-27 18:03:17
[2026-06-27 18:03:17,867.867 INFO    ] 2026-06-27 18:03:17
[2026-06-27 18:03:17,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:03:18,080.080 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:03:18,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:03:18,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:03:18,286.286 INFO    ] time= 27/06/2026 18:03:18
[2026-06-27 18:03:18,308.308 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:03:18,314.314 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:03:18,379.379 INFO    ] No existing commands found in stream
[2026-06-27 18:03:23,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:03:23,392.392 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-27 18:03:27,052.052 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 18:03:27,054.054 INFO    ] Checking for system updates...
[2026-06-27 18:03:27,075.075 INFO    ] 200
[2026-06-27 18:03:27,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:03:27,114.114 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:03:27,115.115 INFO    ] No update needed
[2026-06-27 18:03:27,117.117 INFO    ] Checking for camera pi updates...
[2026-06-27 18:03:27,136.136 INFO    ] 200
[2026-06-27 18:03:27,138.138 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:03:27,161.161 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:03:27,207.207 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:03:27,208.208 INFO    ] No camera update needed
[2026-06-27 18:03:27,210.210 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:03:27,211.211 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:03:27,214.214 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:03:27,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:03:29,258.258 INFO    ] ================================================
[2026-06-27 18:03:29,273.273 INFO    ] Launching Daemon at Sat Jun 27 18:03:29 IST 2026
[2026-06-27 18:03:29,283.283 INFO    ] ================================================
[2026-06-27 18:03:29,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:03:29
[2026-06-27 18:03:30,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:03:30,165.165 INFO    ] Initializing speech engine...
[2026-06-27 18:03:30,170.170 INFO    ] 2026-06-27 18:03:30
[2026-06-27 18:03:30,377.377 INFO    ] 2026-06-27 18:03:30
[2026-06-27 18:03:30,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:03:30,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:03:30,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:03:30,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:03:30,799.799 INFO    ] time= 27/06/2026 18:03:30
[2026-06-27 18:03:30,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:03:30,827.827 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:03:30,893.893 INFO    ] No existing commands found in stream
[2026-06-27 18:03:35,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:03:35,906.906 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-27 18:03:40,196.196 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 18:03:40,198.198 INFO    ] Checking for system updates...
[2026-06-27 18:03:40,220.220 INFO    ] 200
[2026-06-27 18:03:40,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:03:40,257.257 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:03:40,259.259 INFO    ] No update needed
[2026-06-27 18:03:40,260.260 INFO    ] Checking for camera pi updates...
[2026-06-27 18:03:40,284.284 INFO    ] 200
[2026-06-27 18:03:40,286.286 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:03:40,309.309 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:03:40,363.363 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:03:40,365.365 INFO    ] No camera update needed
[2026-06-27 18:03:40,366.366 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:03:40,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:03:40,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:03:40,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:03:42,415.415 INFO    ] ================================================
[2026-06-27 18:03:42,430.430 INFO    ] Launching Daemon at Sat Jun 27 18:03:42 IST 2026
[2026-06-27 18:03:42,441.441 INFO    ] ================================================
[2026-06-27 18:03:42,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:03:42
[2026-06-27 18:03:43,095.095 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:03:43,238.238 INFO    ] Initializing speech engine...
[2026-06-27 18:03:43,248.248 INFO    ] 2026-06-27 18:03:43
[2026-06-27 18:03:43,453.453 INFO    ] 2026-06-27 18:03:43
[2026-06-27 18:03:43,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:03:43,667.667 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:03:43,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:03:43,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:03:43,873.873 INFO    ] time= 27/06/2026 18:03:43
[2026-06-27 18:03:43,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:03:43,903.903 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:03:43,994.994 INFO    ] No existing commands found in stream
[2026-06-27 18:03:49,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:03:49,006.006 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-27 18:03:51,679.679 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 18:03:51,681.681 INFO    ] Checking for system updates...
[2026-06-27 18:03:51,702.702 INFO    ] 200
[2026-06-27 18:03:51,703.703 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:03:51,734.734 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:03:51,736.736 INFO    ] No update needed
[2026-06-27 18:03:51,737.737 INFO    ] Checking for camera pi updates...
[2026-06-27 18:03:51,759.759 INFO    ] 200
[2026-06-27 18:03:51,760.760 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:03:51,788.788 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:03:51,853.853 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:03:51,854.854 INFO    ] No camera update needed
[2026-06-27 18:03:51,856.856 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:03:51,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:03:51,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:03:51,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:03:53,902.902 INFO    ] ================================================
[2026-06-27 18:03:53,917.917 INFO    ] Launching Daemon at Sat Jun 27 18:03:53 IST 2026
[2026-06-27 18:03:53,928.928 INFO    ] ================================================
[2026-06-27 18:03:54,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:03:54
[2026-06-27 18:03:54,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:03:54,721.721 INFO    ] Initializing speech engine...
[2026-06-27 18:03:54,726.726 INFO    ] 2026-06-27 18:03:54
[2026-06-27 18:03:54,932.932 INFO    ] 2026-06-27 18:03:54
[2026-06-27 18:03:54,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:03:55,173.173 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:03:55,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:03:55,372.372 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:03:55,378.378 INFO    ] time= 27/06/2026 18:03:55
[2026-06-27 18:03:55,380.380 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:03:55,382.382 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:03:55,471.471 INFO    ] No existing commands found in stream
[2026-06-27 18:04:00,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:04:00,488.488 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-27 18:04:04,893.893 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:04:04,894.894 INFO    ] Checking for system updates...
[2026-06-27 18:04:04,915.915 INFO    ] 200
[2026-06-27 18:04:04,917.917 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:04:04,947.947 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:04:04,949.949 INFO    ] No update needed
[2026-06-27 18:04:04,950.950 INFO    ] Checking for camera pi updates...
[2026-06-27 18:04:04,969.969 INFO    ] 200
[2026-06-27 18:04:04,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:04:04,996.996 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:04:05,045.045 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:04:05,046.046 INFO    ] No camera update needed
[2026-06-27 18:04:05,048.048 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:04:05,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:04:05,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:04:05,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:04:07,095.095 INFO    ] ================================================
[2026-06-27 18:04:07,110.110 INFO    ] Launching Daemon at Sat Jun 27 18:04:07 IST 2026
[2026-06-27 18:04:07,121.121 INFO    ] ================================================
[2026-06-27 18:04:07,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:04:07
[2026-06-27 18:04:07,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:04:07,916.916 INFO    ] Initializing speech engine...
[2026-06-27 18:04:07,921.921 INFO    ] 2026-06-27 18:04:07
[2026-06-27 18:04:08,127.127 INFO    ] 2026-06-27 18:04:08
[2026-06-27 18:04:08,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:04:08,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:04:08,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:04:08,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:04:08,546.546 INFO    ] time= 27/06/2026 18:04:08
[2026-06-27 18:04:08,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:04:08,575.575 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:04:08,643.643 INFO    ] No existing commands found in stream
[2026-06-27 18:04:13,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:04:13,655.655 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-27 18:04:17,670.670 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 18:04:17,672.672 INFO    ] Checking for system updates...
[2026-06-27 18:04:17,693.693 INFO    ] 200
[2026-06-27 18:04:17,695.695 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:04:17,725.725 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:04:17,726.726 INFO    ] No update needed
[2026-06-27 18:04:17,727.727 INFO    ] Checking for camera pi updates...
[2026-06-27 18:04:17,747.747 INFO    ] 200
[2026-06-27 18:04:17,748.748 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:04:17,771.771 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:04:17,819.819 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:04:17,821.821 INFO    ] No camera update needed
[2026-06-27 18:04:17,823.823 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:04:17,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:04:17,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:04:17,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:04:19,871.871 INFO    ] ================================================
[2026-06-27 18:04:19,886.886 INFO    ] Launching Daemon at Sat Jun 27 18:04:19 IST 2026
[2026-06-27 18:04:19,896.896 INFO    ] ================================================
[2026-06-27 18:04:20,259.259 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:04:20
[2026-06-27 18:04:20,571.571 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:04:20,699.699 INFO    ] Initializing speech engine...
[2026-06-27 18:04:20,702.702 INFO    ] 2026-06-27 18:04:20
[2026-06-27 18:04:20,922.922 INFO    ] 2026-06-27 18:04:20
[2026-06-27 18:04:20,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:04:21,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:04:21,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:04:21,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:04:21,326.326 INFO    ] time= 27/06/2026 18:04:21
[2026-06-27 18:04:21,362.362 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:04:21,372.372 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:04:21,443.443 INFO    ] No existing commands found in stream
[2026-06-27 18:04:26,467.467 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:04:26,470.470 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-27 18:04:29,260.260 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:04:29,262.262 INFO    ] Checking for system updates...
[2026-06-27 18:04:29,282.282 INFO    ] 200
[2026-06-27 18:04:29,283.283 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:04:29,314.314 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:04:29,315.315 INFO    ] No update needed
[2026-06-27 18:04:29,317.317 INFO    ] Checking for camera pi updates...
[2026-06-27 18:04:29,336.336 INFO    ] 200
[2026-06-27 18:04:29,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:04:29,362.362 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:04:29,503.503 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:04:29,505.505 INFO    ] No camera update needed
[2026-06-27 18:04:29,506.506 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:04:29,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:04:29,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:04:29,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:04:31,545.545 INFO    ] ================================================
[2026-06-27 18:04:31,554.554 INFO    ] Launching Daemon at Sat Jun 27 18:04:31 IST 2026
[2026-06-27 18:04:31,561.561 INFO    ] ================================================
[2026-06-27 18:04:31,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:04:31
[2026-06-27 18:04:32,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:04:32,354.354 INFO    ] Initializing speech engine...
[2026-06-27 18:04:32,359.359 INFO    ] 2026-06-27 18:04:32
[2026-06-27 18:04:32,576.576 INFO    ] 2026-06-27 18:04:32
[2026-06-27 18:04:32,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:04:32,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:04:32,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:04:32,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:04:33,015.015 INFO    ] time= 27/06/2026 18:04:32
[2026-06-27 18:04:33,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:04:33,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:04:33,093.093 INFO    ] No existing commands found in stream
[2026-06-27 18:04:38,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:04:38,106.106 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-27 18:04:41,296.296 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:04:41,298.298 INFO    ] Checking for system updates...
[2026-06-27 18:04:41,319.319 INFO    ] 200
[2026-06-27 18:04:41,320.320 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:04:41,352.352 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:04:41,354.354 INFO    ] No update needed
[2026-06-27 18:04:41,355.355 INFO    ] Checking for camera pi updates...
[2026-06-27 18:04:41,374.374 INFO    ] 200
[2026-06-27 18:04:41,376.376 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:04:41,400.400 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:04:41,447.447 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:04:41,448.448 INFO    ] No camera update needed
[2026-06-27 18:04:41,450.450 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:04:41,451.451 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:04:41,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:04:41,457.457 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:04:43,496.496 INFO    ] ================================================
[2026-06-27 18:04:43,511.511 INFO    ] Launching Daemon at Sat Jun 27 18:04:43 IST 2026
[2026-06-27 18:04:43,522.522 INFO    ] ================================================
[2026-06-27 18:04:43,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:04:43
[2026-06-27 18:04:44,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:04:44,395.395 INFO    ] Initializing speech engine...
[2026-06-27 18:04:44,399.399 INFO    ] 2026-06-27 18:04:44
[2026-06-27 18:04:44,608.608 INFO    ] 2026-06-27 18:04:44
[2026-06-27 18:04:44,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:04:44,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:04:44,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:04:44,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:04:45,030.030 INFO    ] time= 27/06/2026 18:04:44
[2026-06-27 18:04:45,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:04:45,061.061 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:04:45,128.128 INFO    ] No existing commands found in stream
[2026-06-27 18:04:50,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:04:50,146.146 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-27 18:04:54,296.296 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:04:54,298.298 INFO    ] Checking for system updates...
[2026-06-27 18:04:54,322.322 INFO    ] 200
[2026-06-27 18:04:54,323.323 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:04:54,357.357 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:04:54,359.359 INFO    ] No update needed
[2026-06-27 18:04:54,360.360 INFO    ] Checking for camera pi updates...
[2026-06-27 18:04:54,380.380 INFO    ] 200
[2026-06-27 18:04:54,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:04:54,405.405 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:04:54,447.447 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:04:54,448.448 INFO    ] No camera update needed
[2026-06-27 18:04:54,449.449 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:04:54,450.450 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:04:54,454.454 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:04:54,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:04:56,495.495 INFO    ] ================================================
[2026-06-27 18:04:56,509.509 INFO    ] Launching Daemon at Sat Jun 27 18:04:56 IST 2026
[2026-06-27 18:04:56,520.520 INFO    ] ================================================
[2026-06-27 18:04:56,868.868 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:04:56
[2026-06-27 18:04:57,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:04:57,317.317 INFO    ] Initializing speech engine...
[2026-06-27 18:04:57,327.327 INFO    ] 2026-06-27 18:04:57
[2026-06-27 18:04:57,532.532 INFO    ] 2026-06-27 18:04:57
[2026-06-27 18:04:57,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:04:57,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:04:57,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:04:57,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:04:57,963.963 INFO    ] time= 27/06/2026 18:04:57
[2026-06-27 18:04:57,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:04:57,979.979 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:04:58,046.046 INFO    ] No existing commands found in stream
[2026-06-27 18:05:03,060.060 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:05:03,063.063 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-27 18:05:05,619.619 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 18:05:05,622.622 INFO    ] Checking for system updates...
[2026-06-27 18:05:05,644.644 INFO    ] 200
[2026-06-27 18:05:05,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:05:05,677.677 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:05:05,678.678 INFO    ] No update needed
[2026-06-27 18:05:05,680.680 INFO    ] Checking for camera pi updates...
[2026-06-27 18:05:05,701.701 INFO    ] 200
[2026-06-27 18:05:05,702.702 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:05:05,729.729 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:05:05,777.777 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:05:05,779.779 INFO    ] No camera update needed
[2026-06-27 18:05:05,780.780 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:05:05,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:05:05,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:05:05,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:05:07,829.829 INFO    ] ================================================
[2026-06-27 18:05:07,846.846 INFO    ] Launching Daemon at Sat Jun 27 18:05:07 IST 2026
[2026-06-27 18:05:07,857.857 INFO    ] ================================================
[2026-06-27 18:05:08,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:05:08
[2026-06-27 18:05:08,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:05:08,659.659 INFO    ] Initializing speech engine...
[2026-06-27 18:05:08,664.664 INFO    ] 2026-06-27 18:05:08
[2026-06-27 18:05:08,868.868 INFO    ] 2026-06-27 18:05:08
[2026-06-27 18:05:08,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:05:09,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:05:09,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:05:09,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:05:09,281.281 INFO    ] time= 27/06/2026 18:05:09
[2026-06-27 18:05:09,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:05:09,319.319 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:05:09,387.387 INFO    ] No existing commands found in stream
[2026-06-27 18:05:14,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:05:14,419.419 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-27 18:05:15,455.455 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 18:05:15,456.456 INFO    ] Checking for system updates...
[2026-06-27 18:05:15,479.479 INFO    ] 200
[2026-06-27 18:05:15,481.481 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:05:15,514.514 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:05:15,516.516 INFO    ] No update needed
[2026-06-27 18:05:15,518.518 INFO    ] Checking for camera pi updates...
[2026-06-27 18:05:15,538.538 INFO    ] 200
[2026-06-27 18:05:15,539.539 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:05:15,565.565 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:05:15,610.610 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:05:15,612.612 INFO    ] No camera update needed
[2026-06-27 18:05:15,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:05:15,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:05:15,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:05:15,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:05:17,658.658 INFO    ] ================================================
[2026-06-27 18:05:17,674.674 INFO    ] Launching Daemon at Sat Jun 27 18:05:17 IST 2026
[2026-06-27 18:05:17,685.685 INFO    ] ================================================
[2026-06-27 18:05:18,079.079 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:05:18
[2026-06-27 18:05:18,422.422 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:05:18,573.573 INFO    ] Initializing speech engine...
[2026-06-27 18:05:18,579.579 INFO    ] 2026-06-27 18:05:18
[2026-06-27 18:05:18,789.789 INFO    ] 2026-06-27 18:05:18
[2026-06-27 18:05:18,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:05:19,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:05:19,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:05:19,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:05:19,217.217 INFO    ] time= 27/06/2026 18:05:19
[2026-06-27 18:05:19,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:05:19,246.246 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:05:19,314.314 INFO    ] No existing commands found in stream
[2026-06-27 18:05:24,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:05:24,332.332 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-27 18:05:27,583.583 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:05:27,584.584 INFO    ] Checking for system updates...
[2026-06-27 18:05:27,606.606 INFO    ] 200
[2026-06-27 18:05:27,607.607 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:05:27,638.638 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:05:27,639.639 INFO    ] No update needed
[2026-06-27 18:05:27,640.640 INFO    ] Checking for camera pi updates...
[2026-06-27 18:05:27,660.660 INFO    ] 200
[2026-06-27 18:05:27,662.662 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:05:27,685.685 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:05:27,730.730 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:05:27,731.731 INFO    ] No camera update needed
[2026-06-27 18:05:27,733.733 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:05:27,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:05:27,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:05:27,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:05:29,781.781 INFO    ] ================================================
[2026-06-27 18:05:29,796.796 INFO    ] Launching Daemon at Sat Jun 27 18:05:29 IST 2026
[2026-06-27 18:05:29,808.808 INFO    ] ================================================
[2026-06-27 18:05:30,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:05:30
[2026-06-27 18:05:30,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:05:30,592.592 INFO    ] Initializing speech engine...
[2026-06-27 18:05:30,598.598 INFO    ] 2026-06-27 18:05:30
[2026-06-27 18:05:30,802.802 INFO    ] 2026-06-27 18:05:30
[2026-06-27 18:05:30,830.830 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:05:31,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:05:31,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:05:31,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:05:31,222.222 INFO    ] time= 27/06/2026 18:05:31
[2026-06-27 18:05:31,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:05:31,252.252 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:05:31,317.317 INFO    ] No existing commands found in stream
[2026-06-27 18:05:36,328.328 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:05:36,330.330 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-27 18:05:40,292.292 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:05:40,294.294 INFO    ] Checking for system updates...
[2026-06-27 18:05:40,315.315 INFO    ] 200
[2026-06-27 18:05:40,316.316 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:05:40,349.349 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:05:40,350.350 INFO    ] No update needed
[2026-06-27 18:05:40,351.351 INFO    ] Checking for camera pi updates...
[2026-06-27 18:05:40,372.372 INFO    ] 200
[2026-06-27 18:05:40,374.374 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:05:40,397.397 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:05:40,440.440 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:05:40,441.441 INFO    ] No camera update needed
[2026-06-27 18:05:40,443.443 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:05:40,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:05:40,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:05:40,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:05:42,491.491 INFO    ] ================================================
[2026-06-27 18:05:42,506.506 INFO    ] Launching Daemon at Sat Jun 27 18:05:42 IST 2026
[2026-06-27 18:05:42,518.518 INFO    ] ================================================
[2026-06-27 18:05:42,847.847 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:05:42
[2026-06-27 18:05:43,160.160 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:05:43,301.301 INFO    ] Initializing speech engine...
[2026-06-27 18:05:43,307.307 INFO    ] 2026-06-27 18:05:43
[2026-06-27 18:05:43,510.510 INFO    ] 2026-06-27 18:05:43
[2026-06-27 18:05:43,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:05:43,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:05:43,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:05:43,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:05:43,925.925 INFO    ] time= 27/06/2026 18:05:43
[2026-06-27 18:05:43,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:05:43,955.955 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:05:44,022.022 INFO    ] No existing commands found in stream
[2026-06-27 18:05:49,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:05:49,039.039 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-27 18:05:52,634.634 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:05:52,636.636 INFO    ] Checking for system updates...
[2026-06-27 18:05:52,661.661 INFO    ] 200
[2026-06-27 18:05:52,663.663 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:05:52,695.695 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:05:52,697.697 INFO    ] No update needed
[2026-06-27 18:05:52,698.698 INFO    ] Checking for camera pi updates...
[2026-06-27 18:05:52,719.719 INFO    ] 200
[2026-06-27 18:05:52,721.721 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:05:52,746.746 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:05:52,786.786 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:05:52,788.788 INFO    ] No camera update needed
[2026-06-27 18:05:52,789.789 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:05:52,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:05:52,794.794 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:05:52,797.797 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:05:54,837.837 INFO    ] ================================================
[2026-06-27 18:05:54,853.853 INFO    ] Launching Daemon at Sat Jun 27 18:05:54 IST 2026
[2026-06-27 18:05:54,865.865 INFO    ] ================================================
[2026-06-27 18:05:55,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:05:55
[2026-06-27 18:05:55,586.586 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:05:55,736.736 INFO    ] Initializing speech engine...
[2026-06-27 18:05:55,742.742 INFO    ] 2026-06-27 18:05:55
[2026-06-27 18:05:55,949.949 INFO    ] 2026-06-27 18:05:55
[2026-06-27 18:05:55,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:05:56,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:05:56,175.175 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:05:56,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:05:56,393.393 INFO    ] time= 27/06/2026 18:05:56
[2026-06-27 18:05:56,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:05:56,400.400 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:05:56,467.467 INFO    ] No existing commands found in stream
[2026-06-27 18:06:01,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:06:01,480.480 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-27 18:06:04,390.390 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:06:04,392.392 INFO    ] Checking for system updates...
[2026-06-27 18:06:04,414.414 INFO    ] 200
[2026-06-27 18:06:04,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:06:04,447.447 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:06:04,448.448 INFO    ] No update needed
[2026-06-27 18:06:04,450.450 INFO    ] Checking for camera pi updates...
[2026-06-27 18:06:04,469.469 INFO    ] 200
[2026-06-27 18:06:04,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:06:04,494.494 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:06:04,568.568 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:06:04,569.569 INFO    ] No camera update needed
[2026-06-27 18:06:04,571.571 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:06:04,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:06:04,575.575 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:06:04,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:06:06,616.616 INFO    ] ================================================
[2026-06-27 18:06:06,632.632 INFO    ] Launching Daemon at Sat Jun 27 18:06:06 IST 2026
[2026-06-27 18:06:06,644.644 INFO    ] ================================================
[2026-06-27 18:06:07,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:06:07
[2026-06-27 18:06:07,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:06:07,456.456 INFO    ] Initializing speech engine...
[2026-06-27 18:06:07,464.464 INFO    ] 2026-06-27 18:06:07
[2026-06-27 18:06:07,672.672 INFO    ] 2026-06-27 18:06:07
[2026-06-27 18:06:07,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:06:07,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:06:07,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:06:08,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:06:08,118.118 INFO    ] time= 27/06/2026 18:06:08
[2026-06-27 18:06:08,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:06:08,142.142 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:06:08,212.212 INFO    ] No existing commands found in stream
[2026-06-27 18:06:13,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:06:13,234.234 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-27 18:06:15,757.757 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:06:15,758.758 INFO    ] Checking for system updates...
[2026-06-27 18:06:15,791.791 INFO    ] 200
[2026-06-27 18:06:15,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:06:15,849.849 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:06:15,852.852 INFO    ] No update needed
[2026-06-27 18:06:15,854.854 INFO    ] Checking for camera pi updates...
[2026-06-27 18:06:15,881.881 INFO    ] 200
[2026-06-27 18:06:15,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:06:15,906.906 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:06:15,946.946 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:06:15,948.948 INFO    ] No camera update needed
[2026-06-27 18:06:15,949.949 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:06:15,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:06:15,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:06:15,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:06:17,988.988 INFO    ] ================================================
[2026-06-27 18:06:18,997.997 INFO    ] Launching Daemon at Sat Jun 27 18:06:17 IST 2026
[2026-06-27 18:06:18,003.003 INFO    ] ================================================
[2026-06-27 18:06:18,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:06:18
[2026-06-27 18:06:18,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:06:18,773.773 INFO    ] Initializing speech engine...
[2026-06-27 18:06:18,778.778 INFO    ] 2026-06-27 18:06:18
[2026-06-27 18:06:18,980.980 INFO    ] 2026-06-27 18:06:18
[2026-06-27 18:06:19,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:06:19,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:06:19,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:06:19,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:06:19,418.418 INFO    ] time= 27/06/2026 18:06:19
[2026-06-27 18:06:19,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:06:19,429.429 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:06:19,496.496 INFO    ] No existing commands found in stream
[2026-06-27 18:06:24,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:06:24,508.508 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-27 18:06:26,815.815 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 18:06:26,817.817 INFO    ] Checking for system updates...
[2026-06-27 18:06:26,838.838 INFO    ] 200
[2026-06-27 18:06:26,839.839 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:06:26,870.870 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:06:26,871.871 INFO    ] No update needed
[2026-06-27 18:06:26,872.872 INFO    ] Checking for camera pi updates...
[2026-06-27 18:06:26,894.894 INFO    ] 200
[2026-06-27 18:06:26,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:06:26,919.919 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:06:26,969.969 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:06:26,970.970 INFO    ] No camera update needed
[2026-06-27 18:06:26,972.972 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:06:26,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:06:26,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:06:26,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:06:29,018.018 INFO    ] ================================================
[2026-06-27 18:06:29,033.033 INFO    ] Launching Daemon at Sat Jun 27 18:06:29 IST 2026
[2026-06-27 18:06:29,044.044 INFO    ] ================================================
[2026-06-27 18:06:29,402.402 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:06:29
[2026-06-27 18:06:29,721.721 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:06:29,866.866 INFO    ] Initializing speech engine...
[2026-06-27 18:06:29,871.871 INFO    ] 2026-06-27 18:06:29
[2026-06-27 18:06:30,077.077 INFO    ] 2026-06-27 18:06:30
[2026-06-27 18:06:30,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:06:30,290.290 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:06:30,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:06:30,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:06:30,482.482 INFO    ] time= 27/06/2026 18:06:30
[2026-06-27 18:06:30,516.516 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:06:30,522.522 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:06:30,591.591 INFO    ] No existing commands found in stream
[2026-06-27 18:06:35,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:06:35,605.605 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-27 18:06:39,302.302 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 18:06:39,304.304 INFO    ] Checking for system updates...
[2026-06-27 18:06:39,325.325 INFO    ] 200
[2026-06-27 18:06:39,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:06:39,359.359 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:06:39,360.360 INFO    ] No update needed
[2026-06-27 18:06:39,361.361 INFO    ] Checking for camera pi updates...
[2026-06-27 18:06:39,382.382 INFO    ] 200
[2026-06-27 18:06:39,383.383 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:06:39,406.406 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:06:39,451.451 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:06:39,452.452 INFO    ] No camera update needed
[2026-06-27 18:06:39,454.454 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:06:39,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:06:39,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:06:39,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:06:41,500.500 INFO    ] ================================================
[2026-06-27 18:06:41,515.515 INFO    ] Launching Daemon at Sat Jun 27 18:06:41 IST 2026
[2026-06-27 18:06:41,527.527 INFO    ] ================================================
[2026-06-27 18:06:41,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:06:41
[2026-06-27 18:06:42,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:06:42,378.378 INFO    ] Initializing speech engine...
[2026-06-27 18:06:42,383.383 INFO    ] 2026-06-27 18:06:42
[2026-06-27 18:06:42,591.591 INFO    ] 2026-06-27 18:06:42
[2026-06-27 18:06:42,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:06:42,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:06:42,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:06:42,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:06:42,999.999 INFO    ] time= 27/06/2026 18:06:42
[2026-06-27 18:06:43,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:06:43,045.045 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:06:43,118.118 INFO    ] No existing commands found in stream
[2026-06-27 18:06:48,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:06:48,135.135 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-27 18:06:51,261.261 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 18:06:51,262.262 INFO    ] Checking for system updates...
[2026-06-27 18:06:51,284.284 INFO    ] 200
[2026-06-27 18:06:51,285.285 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:06:51,316.316 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:06:51,318.318 INFO    ] No update needed
[2026-06-27 18:06:51,319.319 INFO    ] Checking for camera pi updates...
[2026-06-27 18:06:51,340.340 INFO    ] 200
[2026-06-27 18:06:51,342.342 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:06:51,367.367 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:06:51,410.410 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:06:51,412.412 INFO    ] No camera update needed
[2026-06-27 18:06:51,413.413 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:06:51,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:06:51,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:06:51,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:06:53,459.459 INFO    ] ================================================
[2026-06-27 18:06:53,475.475 INFO    ] Launching Daemon at Sat Jun 27 18:06:53 IST 2026
[2026-06-27 18:06:53,487.487 INFO    ] ================================================
[2026-06-27 18:06:53,853.853 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:06:53
[2026-06-27 18:06:54,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:06:54,352.352 INFO    ] Initializing speech engine...
[2026-06-27 18:06:54,357.357 INFO    ] 2026-06-27 18:06:54
[2026-06-27 18:06:54,565.565 INFO    ] 2026-06-27 18:06:54
[2026-06-27 18:06:54,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:06:54,777.777 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:06:54,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:06:54,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:06:54,981.981 INFO    ] time= 27/06/2026 18:06:54
[2026-06-27 18:06:55,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:06:55,014.014 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:06:55,080.080 INFO    ] No existing commands found in stream
[2026-06-27 18:07:00,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:07:00,090.090 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-27 18:07:03,501.501 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 18:07:03,505.505 INFO    ] Checking for system updates...
[2026-06-27 18:07:03,543.543 INFO    ] 200
[2026-06-27 18:07:03,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:07:03,611.611 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:07:03,614.614 INFO    ] No update needed
[2026-06-27 18:07:03,616.616 INFO    ] Checking for camera pi updates...
[2026-06-27 18:07:03,648.648 INFO    ] 200
[2026-06-27 18:07:03,650.650 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:07:03,676.676 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:07:03,720.720 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:07:03,722.722 INFO    ] No camera update needed
[2026-06-27 18:07:03,723.723 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:07:03,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:07:03,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:07:03,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:07:05,769.769 INFO    ] ================================================
[2026-06-27 18:07:05,785.785 INFO    ] Launching Daemon at Sat Jun 27 18:07:05 IST 2026
[2026-06-27 18:07:05,796.796 INFO    ] ================================================
[2026-06-27 18:07:06,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:07:06
[2026-06-27 18:07:06,542.542 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:07:06,690.690 INFO    ] Initializing speech engine...
[2026-06-27 18:07:06,700.700 INFO    ] 2026-06-27 18:07:06
[2026-06-27 18:07:06,910.910 INFO    ] 2026-06-27 18:07:06
[2026-06-27 18:07:06,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:07:07,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:07:07,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:07:07,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:07:07,333.333 INFO    ] time= 27/06/2026 18:07:07
[2026-06-27 18:07:07,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:07:07,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:07:07,429.429 INFO    ] No existing commands found in stream
[2026-06-27 18:07:12,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:07:12,457.457 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-27 18:07:14,738.738 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 18:07:14,740.740 INFO    ] Checking for system updates...
[2026-06-27 18:07:14,761.761 INFO    ] 200
[2026-06-27 18:07:14,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:07:14,795.795 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:07:14,796.796 INFO    ] No update needed
[2026-06-27 18:07:14,798.798 INFO    ] Checking for camera pi updates...
[2026-06-27 18:07:14,818.818 INFO    ] 200
[2026-06-27 18:07:14,819.819 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:07:14,842.842 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:07:14,887.887 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:07:14,889.889 INFO    ] No camera update needed
[2026-06-27 18:07:14,890.890 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:07:14,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:07:14,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:07:14,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:07:16,935.935 INFO    ] ================================================
[2026-06-27 18:07:16,951.951 INFO    ] Launching Daemon at Sat Jun 27 18:07:16 IST 2026
[2026-06-27 18:07:16,963.963 INFO    ] ================================================
[2026-06-27 18:07:17,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:07:17
[2026-06-27 18:07:17,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:07:17,818.818 INFO    ] Initializing speech engine...
[2026-06-27 18:07:17,823.823 INFO    ] 2026-06-27 18:07:17
[2026-06-27 18:07:18,031.031 INFO    ] 2026-06-27 18:07:18
[2026-06-27 18:07:18,059.059 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:07:18,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:07:18,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:07:18,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:07:18,453.453 INFO    ] time= 27/06/2026 18:07:18
[2026-06-27 18:07:18,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:07:18,482.482 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:07:18,550.550 INFO    ] No existing commands found in stream
[2026-06-27 18:07:23,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:07:23,559.559 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-27 18:07:25,743.743 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 18:07:25,745.745 INFO    ] Checking for system updates...
[2026-06-27 18:07:25,765.765 INFO    ] 200
[2026-06-27 18:07:25,767.767 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:07:25,797.797 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:07:25,798.798 INFO    ] No update needed
[2026-06-27 18:07:25,799.799 INFO    ] Checking for camera pi updates...
[2026-06-27 18:07:25,821.821 INFO    ] 200
[2026-06-27 18:07:25,823.823 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:07:25,848.848 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:07:25,889.889 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:07:25,890.890 INFO    ] No camera update needed
[2026-06-27 18:07:25,891.891 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:07:25,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:07:25,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:07:25,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:07:27,938.938 INFO    ] ================================================
[2026-06-27 18:07:27,954.954 INFO    ] Launching Daemon at Sat Jun 27 18:07:27 IST 2026
[2026-06-27 18:07:27,965.965 INFO    ] ================================================
[2026-06-27 18:07:28,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:07:28
[2026-06-27 18:07:28,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:07:28,778.778 INFO    ] Initializing speech engine...
[2026-06-27 18:07:28,784.784 INFO    ] 2026-06-27 18:07:28
[2026-06-27 18:07:28,987.987 INFO    ] 2026-06-27 18:07:28
[2026-06-27 18:07:29,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:07:29,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:07:29,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:07:29,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:07:29,424.424 INFO    ] time= 27/06/2026 18:07:29
[2026-06-27 18:07:29,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:07:29,435.435 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:07:29,502.502 INFO    ] No existing commands found in stream
[2026-06-27 18:07:34,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:07:34,519.519 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-27 18:07:34,994.994 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 18:07:34,996.996 INFO    ] Checking for system updates...
[2026-06-27 18:07:35,018.018 INFO    ] 200
[2026-06-27 18:07:35,019.019 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:07:35,050.050 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:07:35,052.052 INFO    ] No update needed
[2026-06-27 18:07:35,054.054 INFO    ] Checking for camera pi updates...
[2026-06-27 18:07:35,073.073 INFO    ] 200
[2026-06-27 18:07:35,075.075 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:07:35,099.099 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:07:35,140.140 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:07:35,141.141 INFO    ] No camera update needed
[2026-06-27 18:07:35,143.143 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:07:35,144.144 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:07:35,147.147 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:07:35,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:07:37,194.194 INFO    ] ================================================
[2026-06-27 18:07:37,210.210 INFO    ] Launching Daemon at Sat Jun 27 18:07:37 IST 2026
[2026-06-27 18:07:37,221.221 INFO    ] ================================================
[2026-06-27 18:07:37,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:07:37
[2026-06-27 18:07:37,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:07:38,017.017 INFO    ] Initializing speech engine...
[2026-06-27 18:07:38,027.027 INFO    ] 2026-06-27 18:07:38
[2026-06-27 18:07:38,233.233 INFO    ] 2026-06-27 18:07:38
[2026-06-27 18:07:38,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:07:38,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:07:38,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:07:38,643.643 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:07:38,671.671 INFO    ] time= 27/06/2026 18:07:38
[2026-06-27 18:07:38,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:07:38,678.678 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:07:38,744.744 INFO    ] No existing commands found in stream
[2026-06-27 18:07:43,758.758 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:07:43,761.761 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-27 18:07:44,909.909 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:07:44,911.911 INFO    ] Checking for system updates...
[2026-06-27 18:07:44,931.931 INFO    ] 200
[2026-06-27 18:07:44,932.932 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:07:44,964.964 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:07:44,965.965 INFO    ] No update needed
[2026-06-27 18:07:44,967.967 INFO    ] Checking for camera pi updates...
[2026-06-27 18:07:44,987.987 INFO    ] 200
[2026-06-27 18:07:44,988.988 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:07:45,012.012 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:07:45,067.067 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:07:45,068.068 INFO    ] No camera update needed
[2026-06-27 18:07:45,069.069 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:07:45,070.070 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:07:45,073.073 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:07:45,076.076 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:07:47,116.116 INFO    ] ================================================
[2026-06-27 18:07:47,132.132 INFO    ] Launching Daemon at Sat Jun 27 18:07:47 IST 2026
[2026-06-27 18:07:47,143.143 INFO    ] ================================================
[2026-06-27 18:07:47,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:07:47
[2026-06-27 18:07:47,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:07:48,015.015 INFO    ] Initializing speech engine...
[2026-06-27 18:07:48,026.026 INFO    ] 2026-06-27 18:07:48
[2026-06-27 18:07:48,235.235 INFO    ] 2026-06-27 18:07:48
[2026-06-27 18:07:48,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:07:48,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:07:48,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:07:48,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:07:48,655.655 INFO    ] time= 27/06/2026 18:07:48
[2026-06-27 18:07:48,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:07:48,685.685 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:07:48,752.752 INFO    ] No existing commands found in stream
[2026-06-27 18:07:53,784.784 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:07:53,787.787 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-27 18:07:55,694.694 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:07:55,696.696 INFO    ] Checking for system updates...
[2026-06-27 18:07:55,718.718 INFO    ] 200
[2026-06-27 18:07:55,719.719 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:07:55,750.750 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:07:55,752.752 INFO    ] No update needed
[2026-06-27 18:07:55,753.753 INFO    ] Checking for camera pi updates...
[2026-06-27 18:07:55,774.774 INFO    ] 200
[2026-06-27 18:07:55,776.776 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:07:55,799.799 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:07:55,827.827 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:07:55,828.828 INFO    ] No camera update needed
[2026-06-27 18:07:55,829.829 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:07:55,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:07:55,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:07:55,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:07:57,875.875 INFO    ] ================================================
[2026-06-27 18:07:57,890.890 INFO    ] Launching Daemon at Sat Jun 27 18:07:57 IST 2026
[2026-06-27 18:07:57,900.900 INFO    ] ================================================
[2026-06-27 18:07:58,257.257 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:07:58
[2026-06-27 18:07:58,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:07:58,716.716 INFO    ] Initializing speech engine...
[2026-06-27 18:07:58,722.722 INFO    ] 2026-06-27 18:07:58
[2026-06-27 18:07:58,925.925 INFO    ] 2026-06-27 18:07:58
[2026-06-27 18:07:58,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:07:59,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:07:59,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:07:59,285.285 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:07:59,342.342 INFO    ] time= 27/06/2026 18:07:59
[2026-06-27 18:07:59,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:07:59,371.371 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:07:59,438.438 INFO    ] No existing commands found in stream
[2026-06-27 18:08:04,452.452 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:08:04,455.455 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-27 18:08:05,573.573 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:08:05,575.575 INFO    ] Checking for system updates...
[2026-06-27 18:08:05,596.596 INFO    ] 200
[2026-06-27 18:08:05,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:08:05,628.628 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:08:05,630.630 INFO    ] No update needed
[2026-06-27 18:08:05,631.631 INFO    ] Checking for camera pi updates...
[2026-06-27 18:08:05,651.651 INFO    ] 200
[2026-06-27 18:08:05,652.652 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:08:05,677.677 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:08:05,729.729 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:08:05,730.730 INFO    ] No camera update needed
[2026-06-27 18:08:05,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:08:05,733.733 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:08:05,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:08:05,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:08:07,779.779 INFO    ] ================================================
[2026-06-27 18:08:07,794.794 INFO    ] Launching Daemon at Sat Jun 27 18:08:07 IST 2026
[2026-06-27 18:08:07,805.805 INFO    ] ================================================
[2026-06-27 18:08:08,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:08:08
[2026-06-27 18:08:08,460.460 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:08:08,592.592 INFO    ] Initializing speech engine...
[2026-06-27 18:08:08,605.605 INFO    ] 2026-06-27 18:08:08
[2026-06-27 18:08:08,813.813 INFO    ] 2026-06-27 18:08:08
[2026-06-27 18:08:08,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:08:08,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:08:09,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:08:09,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:08:09,260.260 INFO    ] time= 27/06/2026 18:08:09
[2026-06-27 18:08:09,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:08:09,267.267 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:08:09,334.334 INFO    ] No existing commands found in stream
[2026-06-27 18:08:14,343.343 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:08:14,346.346 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-27 18:08:17,412.412 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:08:17,413.413 INFO    ] Checking for system updates...
[2026-06-27 18:08:17,435.435 INFO    ] 200
[2026-06-27 18:08:17,436.436 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:08:17,471.471 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:08:17,472.472 INFO    ] No update needed
[2026-06-27 18:08:17,474.474 INFO    ] Checking for camera pi updates...
[2026-06-27 18:08:17,495.495 INFO    ] 200
[2026-06-27 18:08:17,496.496 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:08:17,524.524 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:08:17,571.571 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:08:17,573.573 INFO    ] No camera update needed
[2026-06-27 18:08:17,574.574 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:08:17,576.576 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:08:17,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:08:17,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:08:19,621.621 INFO    ] ================================================
[2026-06-27 18:08:19,636.636 INFO    ] Launching Daemon at Sat Jun 27 18:08:19 IST 2026
[2026-06-27 18:08:19,646.646 INFO    ] ================================================
[2026-06-27 18:08:20,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:08:20
[2026-06-27 18:08:20,350.350 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:08:20,496.496 INFO    ] Initializing speech engine...
[2026-06-27 18:08:20,506.506 INFO    ] 2026-06-27 18:08:20
[2026-06-27 18:08:20,716.716 INFO    ] 2026-06-27 18:08:20
[2026-06-27 18:08:20,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:08:20,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:08:20,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:08:21,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:08:21,157.157 INFO    ] time= 27/06/2026 18:08:21
[2026-06-27 18:08:21,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:08:21,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:08:21,236.236 INFO    ] No existing commands found in stream
[2026-06-27 18:08:26,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:08:26,250.250 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-27 18:08:28,813.813 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 18:08:28,815.815 INFO    ] Checking for system updates...
[2026-06-27 18:08:28,841.841 INFO    ] 200
[2026-06-27 18:08:28,842.842 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:08:28,877.877 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:08:28,878.878 INFO    ] No update needed
[2026-06-27 18:08:28,880.880 INFO    ] Checking for camera pi updates...
[2026-06-27 18:08:28,915.915 INFO    ] 200
[2026-06-27 18:08:28,916.916 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:08:28,946.946 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:08:28,984.984 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:08:28,986.986 INFO    ] No camera update needed
[2026-06-27 18:08:28,987.987 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:08:28,989.989 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:08:28,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:08:28,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:08:31,022.022 INFO    ] ================================================
[2026-06-27 18:08:31,031.031 INFO    ] Launching Daemon at Sat Jun 27 18:08:31 IST 2026
[2026-06-27 18:08:31,037.037 INFO    ] ================================================
[2026-06-27 18:08:31,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:08:31
[2026-06-27 18:08:31,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:08:31,926.926 INFO    ] Initializing speech engine...
[2026-06-27 18:08:31,932.932 INFO    ] 2026-06-27 18:08:31
[2026-06-27 18:08:32,125.125 INFO    ] 2026-06-27 18:08:32
[2026-06-27 18:08:32,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:08:32,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:08:32,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:08:32,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:08:32,597.597 INFO    ] time= 27/06/2026 18:08:32
[2026-06-27 18:08:32,648.648 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:08:32,655.655 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:08:32,724.724 INFO    ] No existing commands found in stream
[2026-06-27 18:08:37,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:08:37,736.736 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-27 18:08:39,600.600 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:08:39,602.602 INFO    ] Checking for system updates...
[2026-06-27 18:08:39,623.623 INFO    ] 200
[2026-06-27 18:08:39,624.624 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:08:39,657.657 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:08:39,658.658 INFO    ] No update needed
[2026-06-27 18:08:39,660.660 INFO    ] Checking for camera pi updates...
[2026-06-27 18:08:39,679.679 INFO    ] 200
[2026-06-27 18:08:39,680.680 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:08:39,704.704 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:08:39,849.849 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:08:39,852.852 INFO    ] No camera update needed
[2026-06-27 18:08:39,854.854 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:08:39,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:08:39,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:08:39,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:08:41,909.909 INFO    ] ================================================
[2026-06-27 18:08:41,924.924 INFO    ] Launching Daemon at Sat Jun 27 18:08:41 IST 2026
[2026-06-27 18:08:41,935.935 INFO    ] ================================================
[2026-06-27 18:08:42,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:08:42
[2026-06-27 18:08:42,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:08:42,794.794 INFO    ] Initializing speech engine...
[2026-06-27 18:08:42,798.798 INFO    ] 2026-06-27 18:08:42
[2026-06-27 18:08:42,999.999 INFO    ] 2026-06-27 18:08:42
[2026-06-27 18:08:43,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:08:43,220.220 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:08:43,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:08:43,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:08:43,415.415 INFO    ] time= 27/06/2026 18:08:43
[2026-06-27 18:08:43,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:08:43,444.444 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:08:43,515.515 INFO    ] No existing commands found in stream
[2026-06-27 18:08:48,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:08:48,529.529 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-27 18:08:51,233.233 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 18:08:51,234.234 INFO    ] Checking for system updates...
[2026-06-27 18:08:51,255.255 INFO    ] 200
[2026-06-27 18:08:51,256.256 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:08:51,288.288 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:08:51,290.290 INFO    ] No update needed
[2026-06-27 18:08:51,291.291 INFO    ] Checking for camera pi updates...
[2026-06-27 18:08:51,311.311 INFO    ] 200
[2026-06-27 18:08:51,313.313 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:08:51,338.338 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:08:51,374.374 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:08:51,375.375 INFO    ] No camera update needed
[2026-06-27 18:08:51,376.376 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:08:51,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:08:51,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:08:51,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:08:53,422.422 INFO    ] ================================================
[2026-06-27 18:08:53,437.437 INFO    ] Launching Daemon at Sat Jun 27 18:08:53 IST 2026
[2026-06-27 18:08:53,448.448 INFO    ] ================================================
[2026-06-27 18:08:53,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:08:53
[2026-06-27 18:08:54,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:08:54,234.234 INFO    ] Initializing speech engine...
[2026-06-27 18:08:54,246.246 INFO    ] 2026-06-27 18:08:54
[2026-06-27 18:08:54,455.455 INFO    ] 2026-06-27 18:08:54
[2026-06-27 18:08:54,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:08:54,742.742 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:08:54,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:08:54,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:08:55,007.007 INFO    ] time= 27/06/2026 18:08:54
[2026-06-27 18:08:55,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:08:55,016.016 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:08:55,098.098 INFO    ] No existing commands found in stream
[2026-06-27 18:09:00,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:09:00,111.111 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-27 18:09:02,066.066 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 18:09:02,067.067 INFO    ] Checking for system updates...
[2026-06-27 18:09:02,089.089 INFO    ] 200
[2026-06-27 18:09:02,090.090 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:09:02,121.121 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:09:02,122.122 INFO    ] No update needed
[2026-06-27 18:09:02,124.124 INFO    ] Checking for camera pi updates...
[2026-06-27 18:09:02,151.151 INFO    ] 200
[2026-06-27 18:09:02,153.153 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:09:02,177.177 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:09:02,215.215 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:09:02,217.217 INFO    ] No camera update needed
[2026-06-27 18:09:02,218.218 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:09:02,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:09:02,223.223 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:09:02,226.226 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:09:04,264.264 INFO    ] ================================================
[2026-06-27 18:09:04,279.279 INFO    ] Launching Daemon at Sat Jun 27 18:09:04 IST 2026
[2026-06-27 18:09:04,290.290 INFO    ] ================================================
[2026-06-27 18:09:04,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:09:04
[2026-06-27 18:09:04,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:09:05,079.079 INFO    ] Initializing speech engine...
[2026-06-27 18:09:05,089.089 INFO    ] 2026-06-27 18:09:05
[2026-06-27 18:09:05,297.297 INFO    ] 2026-06-27 18:09:05
[2026-06-27 18:09:05,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:09:05,526.526 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:09:05,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:09:05,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:09:05,728.728 INFO    ] time= 27/06/2026 18:09:05
[2026-06-27 18:09:05,760.760 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:09:05,766.766 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:09:05,880.880 INFO    ] No existing commands found in stream
[2026-06-27 18:09:10,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:09:10,893.893 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-27 18:09:13,303.303 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:09:13,305.305 INFO    ] Checking for system updates...
[2026-06-27 18:09:13,327.327 INFO    ] 200
[2026-06-27 18:09:13,328.328 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:09:13,361.361 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:09:13,362.362 INFO    ] No update needed
[2026-06-27 18:09:13,364.364 INFO    ] Checking for camera pi updates...
[2026-06-27 18:09:13,383.383 INFO    ] 200
[2026-06-27 18:09:13,385.385 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:09:13,408.408 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:09:13,450.450 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:09:13,451.451 INFO    ] No camera update needed
[2026-06-27 18:09:13,452.452 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:09:13,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:09:13,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:09:13,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:09:15,498.498 INFO    ] ================================================
[2026-06-27 18:09:15,513.513 INFO    ] Launching Daemon at Sat Jun 27 18:09:15 IST 2026
[2026-06-27 18:09:15,524.524 INFO    ] ================================================
[2026-06-27 18:09:15,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:09:15
[2026-06-27 18:09:16,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:09:16,386.386 INFO    ] Initializing speech engine...
[2026-06-27 18:09:16,399.399 INFO    ] 2026-06-27 18:09:16
[2026-06-27 18:09:16,613.613 INFO    ] 2026-06-27 18:09:16
[2026-06-27 18:09:16,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:09:16,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:09:16,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:09:16,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:09:17,009.009 INFO    ] time= 27/06/2026 18:09:16
[2026-06-27 18:09:17,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:09:17,059.059 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:09:17,130.130 INFO    ] No existing commands found in stream
[2026-06-27 18:09:22,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:09:22,147.147 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-27 18:09:24,892.892 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:09:24,894.894 INFO    ] Checking for system updates...
[2026-06-27 18:09:24,915.915 INFO    ] 200
[2026-06-27 18:09:24,917.917 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:09:24,949.949 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:09:24,951.951 INFO    ] No update needed
[2026-06-27 18:09:24,952.952 INFO    ] Checking for camera pi updates...
[2026-06-27 18:09:24,975.975 INFO    ] 200
[2026-06-27 18:09:24,976.976 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:09:25,001.001 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:09:25,060.060 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:09:25,062.062 INFO    ] No camera update needed
[2026-06-27 18:09:25,063.063 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:09:25,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:09:25,068.068 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:09:25,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:09:27,111.111 INFO    ] ================================================
[2026-06-27 18:09:27,126.126 INFO    ] Launching Daemon at Sat Jun 27 18:09:27 IST 2026
[2026-06-27 18:09:27,137.137 INFO    ] ================================================
[2026-06-27 18:09:27,487.487 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:09:27
[2026-06-27 18:09:27,798.798 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:09:27,929.929 INFO    ] Initializing speech engine...
[2026-06-27 18:09:27,934.934 INFO    ] 2026-06-27 18:09:27
[2026-06-27 18:09:28,164.164 INFO    ] 2026-06-27 18:09:28
[2026-06-27 18:09:28,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:09:28,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:09:28,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:09:28,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:09:28,567.567 INFO    ] time= 27/06/2026 18:09:28
[2026-06-27 18:09:28,613.613 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:09:28,637.637 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:09:28,715.715 INFO    ] No existing commands found in stream
[2026-06-27 18:09:33,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:09:33,727.727 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-27 18:09:34,706.706 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:09:34,707.707 INFO    ] Checking for system updates...
[2026-06-27 18:09:34,728.728 INFO    ] 200
[2026-06-27 18:09:34,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:09:34,763.763 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:09:34,765.765 INFO    ] No update needed
[2026-06-27 18:09:34,766.766 INFO    ] Checking for camera pi updates...
[2026-06-27 18:09:34,785.785 INFO    ] 200
[2026-06-27 18:09:34,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:09:34,811.811 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:09:34,856.856 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:09:34,857.857 INFO    ] No camera update needed
[2026-06-27 18:09:34,858.858 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:09:34,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:09:34,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:09:34,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:09:36,905.905 INFO    ] ================================================
[2026-06-27 18:09:36,920.920 INFO    ] Launching Daemon at Sat Jun 27 18:09:36 IST 2026
[2026-06-27 18:09:36,931.931 INFO    ] ================================================
[2026-06-27 18:09:37,287.287 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:09:37
[2026-06-27 18:09:37,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:09:37,759.759 INFO    ] Initializing speech engine...
[2026-06-27 18:09:37,767.767 INFO    ] 2026-06-27 18:09:37
[2026-06-27 18:09:37,971.971 INFO    ] 2026-06-27 18:09:37
[2026-06-27 18:09:38,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:09:38,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:09:38,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:09:38,408.408 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:09:38,418.418 INFO    ] time= 27/06/2026 18:09:38
[2026-06-27 18:09:38,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:09:38,421.421 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:09:38,489.489 INFO    ] No existing commands found in stream
[2026-06-27 18:09:43,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:09:43,507.507 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-27 18:09:46,820.820 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 18:09:46,821.821 INFO    ] Checking for system updates...
[2026-06-27 18:09:46,844.844 INFO    ] 200
[2026-06-27 18:09:46,845.845 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:09:46,879.879 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:09:46,880.880 INFO    ] No update needed
[2026-06-27 18:09:46,882.882 INFO    ] Checking for camera pi updates...
[2026-06-27 18:09:46,902.902 INFO    ] 200
[2026-06-27 18:09:46,904.904 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:09:46,927.927 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:09:46,968.968 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:09:46,969.969 INFO    ] No camera update needed
[2026-06-27 18:09:46,970.970 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:09:46,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:09:46,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:09:46,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:09:49,017.017 INFO    ] ================================================
[2026-06-27 18:09:49,032.032 INFO    ] Launching Daemon at Sat Jun 27 18:09:49 IST 2026
[2026-06-27 18:09:49,042.042 INFO    ] ================================================
[2026-06-27 18:09:49,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:09:49
[2026-06-27 18:09:49,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:09:49,862.862 INFO    ] Initializing speech engine...
[2026-06-27 18:09:49,868.868 INFO    ] 2026-06-27 18:09:49
[2026-06-27 18:09:50,070.070 INFO    ] 2026-06-27 18:09:50
[2026-06-27 18:09:50,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:09:50,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:09:50,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:09:50,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:09:50,512.512 INFO    ] time= 27/06/2026 18:09:50
[2026-06-27 18:09:50,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:09:50,519.519 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:09:50,586.586 INFO    ] No existing commands found in stream
[2026-06-27 18:09:55,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:09:55,602.602 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-27 18:09:57,538.538 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 18:09:57,539.539 INFO    ] Checking for system updates...
[2026-06-27 18:09:57,562.562 INFO    ] 200
[2026-06-27 18:09:57,563.563 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:09:57,595.595 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:09:57,596.596 INFO    ] No update needed
[2026-06-27 18:09:57,598.598 INFO    ] Checking for camera pi updates...
[2026-06-27 18:09:57,617.617 INFO    ] 200
[2026-06-27 18:09:57,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:09:57,642.642 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:09:57,686.686 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:09:57,687.687 INFO    ] No camera update needed
[2026-06-27 18:09:57,689.689 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:09:57,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:09:57,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:09:57,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:09:59,736.736 INFO    ] ================================================
[2026-06-27 18:09:59,750.750 INFO    ] Launching Daemon at Sat Jun 27 18:09:59 IST 2026
[2026-06-27 18:09:59,761.761 INFO    ] ================================================
[2026-06-27 18:10:00,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:10:00
[2026-06-27 18:10:00,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:10:00,590.590 INFO    ] Initializing speech engine...
[2026-06-27 18:10:00,596.596 INFO    ] 2026-06-27 18:10:00
[2026-06-27 18:10:00,801.801 INFO    ] 2026-06-27 18:10:00
[2026-06-27 18:10:00,831.831 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:10:01,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:10:01,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:10:01,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:10:01,249.249 INFO    ] time= 27/06/2026 18:10:01
[2026-06-27 18:10:01,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:10:01,256.256 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:10:01,322.322 INFO    ] No existing commands found in stream
[2026-06-27 18:10:06,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:10:06,336.336 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-27 18:10:09,154.154 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 18:10:09,156.156 INFO    ] Checking for system updates...
[2026-06-27 18:10:09,178.178 INFO    ] 200
[2026-06-27 18:10:09,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:10:09,213.213 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:10:09,214.214 INFO    ] No update needed
[2026-06-27 18:10:09,216.216 INFO    ] Checking for camera pi updates...
[2026-06-27 18:10:09,236.236 INFO    ] 200
[2026-06-27 18:10:09,237.237 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:10:09,261.261 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:10:09,306.306 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:10:09,308.308 INFO    ] No camera update needed
[2026-06-27 18:10:09,309.309 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:10:09,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:10:09,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:10:09,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:10:11,358.358 INFO    ] ================================================
[2026-06-27 18:10:11,373.373 INFO    ] Launching Daemon at Sat Jun 27 18:10:11 IST 2026
[2026-06-27 18:10:11,384.384 INFO    ] ================================================
[2026-06-27 18:10:11,731.731 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:10:11
[2026-06-27 18:10:12,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:10:12,186.186 INFO    ] Initializing speech engine...
[2026-06-27 18:10:12,194.194 INFO    ] 2026-06-27 18:10:12
[2026-06-27 18:10:12,401.401 INFO    ] 2026-06-27 18:10:12
[2026-06-27 18:10:12,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:10:12,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:10:12,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:10:12,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:10:12,703.703 INFO    ] time= 27/06/2026 18:10:12
[2026-06-27 18:10:12,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:10:12,810.810 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:10:12,943.943 INFO    ] No existing commands found in stream
[2026-06-27 18:10:17,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:10:17,965.965 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-27 18:10:21,985.985 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:10:21,987.987 INFO    ] Checking for system updates...
[2026-06-27 18:10:22,008.008 INFO    ] 200
[2026-06-27 18:10:22,009.009 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:10:22,040.040 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:10:22,041.041 INFO    ] No update needed
[2026-06-27 18:10:22,042.042 INFO    ] Checking for camera pi updates...
[2026-06-27 18:10:22,064.064 INFO    ] 200
[2026-06-27 18:10:22,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:10:22,089.089 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:10:22,130.130 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:10:22,131.131 INFO    ] No camera update needed
[2026-06-27 18:10:22,133.133 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:10:22,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:10:22,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:10:22,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:10:24,179.179 INFO    ] ================================================
[2026-06-27 18:10:24,195.195 INFO    ] Launching Daemon at Sat Jun 27 18:10:24 IST 2026
[2026-06-27 18:10:24,207.207 INFO    ] ================================================
[2026-06-27 18:10:24,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:10:24
[2026-06-27 18:10:24,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:10:24,997.997 INFO    ] Initializing speech engine...
[2026-06-27 18:10:25,005.005 INFO    ] 2026-06-27 18:10:24
[2026-06-27 18:10:25,214.214 INFO    ] 2026-06-27 18:10:25
[2026-06-27 18:10:25,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:10:25,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:10:25,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:10:25,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:10:25,633.633 INFO    ] time= 27/06/2026 18:10:25
[2026-06-27 18:10:25,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:10:25,663.663 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:10:25,753.753 INFO    ] No existing commands found in stream
[2026-06-27 18:10:30,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:10:30,766.766 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-27 18:10:33,860.860 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 18:10:33,861.861 INFO    ] Checking for system updates...
[2026-06-27 18:10:33,884.884 INFO    ] 200
[2026-06-27 18:10:33,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:10:33,940.940 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:10:33,941.941 INFO    ] No update needed
[2026-06-27 18:10:33,943.943 INFO    ] Checking for camera pi updates...
[2026-06-27 18:10:33,963.963 INFO    ] 200
[2026-06-27 18:10:33,964.964 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:10:33,990.990 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:10:34,032.032 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:10:34,034.034 INFO    ] No camera update needed
[2026-06-27 18:10:34,035.035 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:10:34,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:10:34,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:10:34,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:10:36,080.080 INFO    ] ================================================
[2026-06-27 18:10:36,096.096 INFO    ] Launching Daemon at Sat Jun 27 18:10:36 IST 2026
[2026-06-27 18:10:36,107.107 INFO    ] ================================================
[2026-06-27 18:10:36,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:10:36
[2026-06-27 18:10:36,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:10:36,932.932 INFO    ] Initializing speech engine...
[2026-06-27 18:10:36,940.940 INFO    ] 2026-06-27 18:10:36
[2026-06-27 18:10:37,159.159 INFO    ] 2026-06-27 18:10:37
[2026-06-27 18:10:37,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:10:37,385.385 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:10:37,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:10:37,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:10:37,627.627 INFO    ] time= 27/06/2026 18:10:37
[2026-06-27 18:10:37,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:10:37,636.636 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:10:37,704.704 INFO    ] No existing commands found in stream
[2026-06-27 18:10:42,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:10:42,718.718 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-27 18:10:45,197.197 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:10:45,198.198 INFO    ] Checking for system updates...
[2026-06-27 18:10:45,219.219 INFO    ] 200
[2026-06-27 18:10:45,220.220 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:10:45,251.251 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:10:45,252.252 INFO    ] No update needed
[2026-06-27 18:10:45,253.253 INFO    ] Checking for camera pi updates...
[2026-06-27 18:10:45,273.273 INFO    ] 200
[2026-06-27 18:10:45,274.274 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:10:45,297.297 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:10:45,439.439 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:10:45,441.441 INFO    ] No camera update needed
[2026-06-27 18:10:45,442.442 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:10:45,443.443 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:10:45,446.446 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:10:45,449.449 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:10:47,487.487 INFO    ] ================================================
[2026-06-27 18:10:47,503.503 INFO    ] Launching Daemon at Sat Jun 27 18:10:47 IST 2026
[2026-06-27 18:10:47,514.514 INFO    ] ================================================
[2026-06-27 18:10:47,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:10:47
[2026-06-27 18:10:48,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:10:48,315.315 INFO    ] Initializing speech engine...
[2026-06-27 18:10:48,320.320 INFO    ] 2026-06-27 18:10:48
[2026-06-27 18:10:48,546.546 INFO    ] 2026-06-27 18:10:48
[2026-06-27 18:10:48,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:10:48,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:10:48,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:10:48,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:10:48,983.983 INFO    ] time= 27/06/2026 18:10:48
[2026-06-27 18:10:49,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:10:49,018.018 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:10:49,094.094 INFO    ] No existing commands found in stream
[2026-06-27 18:10:54,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:10:54,106.106 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-27 18:10:55,697.697 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 18:10:55,699.699 INFO    ] Checking for system updates...
[2026-06-27 18:10:55,719.719 INFO    ] 200
[2026-06-27 18:10:55,721.721 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:10:55,756.756 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:10:55,757.757 INFO    ] No update needed
[2026-06-27 18:10:55,758.758 INFO    ] Checking for camera pi updates...
[2026-06-27 18:10:55,778.778 INFO    ] 200
[2026-06-27 18:10:55,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:10:55,802.802 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:10:55,830.830 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:10:55,832.832 INFO    ] No camera update needed
[2026-06-27 18:10:55,833.833 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:10:55,834.834 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:10:55,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:10:55,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:10:57,880.880 INFO    ] ================================================
[2026-06-27 18:10:57,896.896 INFO    ] Launching Daemon at Sat Jun 27 18:10:57 IST 2026
[2026-06-27 18:10:57,908.908 INFO    ] ================================================
[2026-06-27 18:10:58,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:10:58
[2026-06-27 18:10:58,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:10:58,697.697 INFO    ] Initializing speech engine...
[2026-06-27 18:10:58,705.705 INFO    ] 2026-06-27 18:10:58
[2026-06-27 18:10:58,917.917 INFO    ] 2026-06-27 18:10:58
[2026-06-27 18:10:58,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:10:59,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:10:59,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:10:59,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:10:59,434.434 INFO    ] time= 27/06/2026 18:10:59
[2026-06-27 18:10:59,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:10:59,461.461 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:10:59,558.558 INFO    ] No existing commands found in stream
[2026-06-27 18:11:04,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:11:04,571.571 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-27 18:11:07,276.276 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 18:11:07,277.277 INFO    ] Checking for system updates...
[2026-06-27 18:11:07,298.298 INFO    ] 200
[2026-06-27 18:11:07,300.300 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:11:07,331.331 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:11:07,333.333 INFO    ] No update needed
[2026-06-27 18:11:07,334.334 INFO    ] Checking for camera pi updates...
[2026-06-27 18:11:07,353.353 INFO    ] 200
[2026-06-27 18:11:07,355.355 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:11:07,378.378 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:11:07,415.415 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:11:07,416.416 INFO    ] No camera update needed
[2026-06-27 18:11:07,418.418 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:11:07,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:11:07,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:11:07,424.424 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:11:09,464.464 INFO    ] ================================================
[2026-06-27 18:11:09,480.480 INFO    ] Launching Daemon at Sat Jun 27 18:11:09 IST 2026
[2026-06-27 18:11:09,492.492 INFO    ] ================================================
[2026-06-27 18:11:09,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:11:09
[2026-06-27 18:11:10,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:11:10,314.314 INFO    ] Initializing speech engine...
[2026-06-27 18:11:10,319.319 INFO    ] 2026-06-27 18:11:10
[2026-06-27 18:11:10,522.522 INFO    ] 2026-06-27 18:11:10
[2026-06-27 18:11:10,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:11:10,737.737 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:11:10,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:11:10,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:11:10,958.958 INFO    ] time= 27/06/2026 18:11:10
[2026-06-27 18:11:10,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:11:10,974.974 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:11:11,066.066 INFO    ] No existing commands found in stream
[2026-06-27 18:11:16,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:11:16,083.083 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-27 18:11:17,437.437 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:11:17,438.438 INFO    ] Checking for system updates...
[2026-06-27 18:11:17,459.459 INFO    ] 200
[2026-06-27 18:11:17,460.460 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:11:17,490.490 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:11:17,491.491 INFO    ] No update needed
[2026-06-27 18:11:17,493.493 INFO    ] Checking for camera pi updates...
[2026-06-27 18:11:17,513.513 INFO    ] 200
[2026-06-27 18:11:17,515.515 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:11:17,540.540 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:11:17,603.603 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:11:17,604.604 INFO    ] No camera update needed
[2026-06-27 18:11:17,606.606 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:11:17,607.607 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:11:17,610.610 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:11:17,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:11:19,652.652 INFO    ] ================================================
[2026-06-27 18:11:19,667.667 INFO    ] Launching Daemon at Sat Jun 27 18:11:19 IST 2026
[2026-06-27 18:11:19,679.679 INFO    ] ================================================
[2026-06-27 18:11:20,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:11:20
[2026-06-27 18:11:20,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:11:20,492.492 INFO    ] Initializing speech engine...
[2026-06-27 18:11:20,497.497 INFO    ] 2026-06-27 18:11:20
[2026-06-27 18:11:20,703.703 INFO    ] 2026-06-27 18:11:20
[2026-06-27 18:11:20,732.732 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:11:20,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:11:20,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:11:21,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:11:21,128.128 INFO    ] time= 27/06/2026 18:11:21
[2026-06-27 18:11:21,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:11:21,158.158 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:11:21,227.227 INFO    ] No existing commands found in stream
[2026-06-27 18:11:26,251.251 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:11:26,254.254 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-27 18:11:29,060.060 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 18:11:29,062.062 INFO    ] Checking for system updates...
[2026-06-27 18:11:29,083.083 INFO    ] 200
[2026-06-27 18:11:29,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:11:29,115.115 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:11:29,117.117 INFO    ] No update needed
[2026-06-27 18:11:29,118.118 INFO    ] Checking for camera pi updates...
[2026-06-27 18:11:29,138.138 INFO    ] 200
[2026-06-27 18:11:29,140.140 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:11:29,170.170 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:11:29,209.209 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:11:29,210.210 INFO    ] No camera update needed
[2026-06-27 18:11:29,212.212 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:11:29,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:11:29,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:11:29,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:11:31,251.251 INFO    ] ================================================
[2026-06-27 18:11:31,261.261 INFO    ] Launching Daemon at Sat Jun 27 18:11:31 IST 2026
[2026-06-27 18:11:31,269.269 INFO    ] ================================================
[2026-06-27 18:11:31,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:11:31
[2026-06-27 18:11:31,934.934 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:11:32,071.071 INFO    ] Initializing speech engine...
[2026-06-27 18:11:32,081.081 INFO    ] 2026-06-27 18:11:32
[2026-06-27 18:11:32,285.285 INFO    ] 2026-06-27 18:11:32
[2026-06-27 18:11:32,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:11:32,496.496 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:11:32,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:11:32,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:11:32,690.690 INFO    ] time= 27/06/2026 18:11:32
[2026-06-27 18:11:32,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:11:32,728.728 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:11:32,799.799 INFO    ] No existing commands found in stream
[2026-06-27 18:11:37,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:11:37,811.811 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-27 18:11:39,844.844 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:11:39,846.846 INFO    ] Checking for system updates...
[2026-06-27 18:11:39,868.868 INFO    ] 200
[2026-06-27 18:11:39,869.869 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:11:39,899.899 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:11:39,901.901 INFO    ] No update needed
[2026-06-27 18:11:39,902.902 INFO    ] Checking for camera pi updates...
[2026-06-27 18:11:39,922.922 INFO    ] 200
[2026-06-27 18:11:39,923.923 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:11:39,947.947 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:11:39,988.988 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:11:39,990.990 INFO    ] No camera update needed
[2026-06-27 18:11:39,991.991 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:11:39,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:11:39,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:11:39,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:11:42,039.039 INFO    ] ================================================
[2026-06-27 18:11:42,054.054 INFO    ] Launching Daemon at Sat Jun 27 18:11:42 IST 2026
[2026-06-27 18:11:42,066.066 INFO    ] ================================================
[2026-06-27 18:11:42,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:11:42
[2026-06-27 18:11:42,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:11:42,917.917 INFO    ] Initializing speech engine...
[2026-06-27 18:11:42,930.930 INFO    ] 2026-06-27 18:11:42
[2026-06-27 18:11:43,137.137 INFO    ] 2026-06-27 18:11:43
[2026-06-27 18:11:43,168.168 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:11:43,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:11:43,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:11:43,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:11:43,560.560 INFO    ] time= 27/06/2026 18:11:43
[2026-06-27 18:11:43,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:11:43,588.588 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:11:43,656.656 INFO    ] No existing commands found in stream
[2026-06-27 18:11:48,688.688 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:11:48,691.691 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-27 18:11:51,789.789 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 18:11:51,791.791 INFO    ] Checking for system updates...
[2026-06-27 18:11:51,811.811 INFO    ] 200
[2026-06-27 18:11:51,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:11:51,844.844 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:11:51,845.845 INFO    ] No update needed
[2026-06-27 18:11:51,846.846 INFO    ] Checking for camera pi updates...
[2026-06-27 18:11:51,868.868 INFO    ] 200
[2026-06-27 18:11:51,869.869 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:11:51,892.892 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:11:51,936.936 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:11:51,937.937 INFO    ] No camera update needed
[2026-06-27 18:11:51,938.938 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:11:51,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:11:51,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:11:51,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:11:53,986.986 INFO    ] ================================================
[2026-06-27 18:11:54,009.009 INFO    ] Launching Daemon at Sat Jun 27 18:11:54 IST 2026
[2026-06-27 18:11:54,020.020 INFO    ] ================================================
[2026-06-27 18:11:54,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:11:54
[2026-06-27 18:11:54,683.683 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:11:54,826.826 INFO    ] Initializing speech engine...
[2026-06-27 18:11:54,832.832 INFO    ] 2026-06-27 18:11:54
[2026-06-27 18:11:55,036.036 INFO    ] 2026-06-27 18:11:55
[2026-06-27 18:11:55,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:11:55,249.249 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:11:55,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:11:55,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:11:55,457.457 INFO    ] time= 27/06/2026 18:11:55
[2026-06-27 18:11:55,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:11:55,485.485 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:11:55,552.552 INFO    ] No existing commands found in stream
[2026-06-27 18:12:00,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:12:00,587.587 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-27 18:12:03,671.671 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:12:03,673.673 INFO    ] Checking for system updates...
[2026-06-27 18:12:03,695.695 INFO    ] 200
[2026-06-27 18:12:03,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:12:03,729.729 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:12:03,730.730 INFO    ] No update needed
[2026-06-27 18:12:03,732.732 INFO    ] Checking for camera pi updates...
[2026-06-27 18:12:03,752.752 INFO    ] 200
[2026-06-27 18:12:03,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:12:03,777.777 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:12:03,820.820 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:12:03,821.821 INFO    ] No camera update needed
[2026-06-27 18:12:03,823.823 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:12:03,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:12:03,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:12:03,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:12:05,870.870 INFO    ] ================================================
[2026-06-27 18:12:05,885.885 INFO    ] Launching Daemon at Sat Jun 27 18:12:05 IST 2026
[2026-06-27 18:12:05,896.896 INFO    ] ================================================
[2026-06-27 18:12:06,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:12:06
[2026-06-27 18:12:06,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:12:06,675.675 INFO    ] Initializing speech engine...
[2026-06-27 18:12:06,687.687 INFO    ] 2026-06-27 18:12:06
[2026-06-27 18:12:06,893.893 INFO    ] 2026-06-27 18:12:06
[2026-06-27 18:12:06,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:12:07,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:12:07,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:12:07,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:12:07,335.335 INFO    ] time= 27/06/2026 18:12:07
[2026-06-27 18:12:07,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:12:07,342.342 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:12:07,407.407 INFO    ] No existing commands found in stream
[2026-06-27 18:12:12,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:12:12,420.420 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-27 18:12:16,573.573 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:12:16,574.574 INFO    ] Checking for system updates...
[2026-06-27 18:12:16,595.595 INFO    ] 200
[2026-06-27 18:12:16,597.597 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:12:16,627.627 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:12:16,628.628 INFO    ] No update needed
[2026-06-27 18:12:16,630.630 INFO    ] Checking for camera pi updates...
[2026-06-27 18:12:16,650.650 INFO    ] 200
[2026-06-27 18:12:16,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:12:16,676.676 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:12:16,719.719 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:12:16,721.721 INFO    ] No camera update needed
[2026-06-27 18:12:16,722.722 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:12:16,723.723 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:12:16,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:12:16,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:12:18,768.768 INFO    ] ================================================
[2026-06-27 18:12:18,783.783 INFO    ] Launching Daemon at Sat Jun 27 18:12:18 IST 2026
[2026-06-27 18:12:18,793.793 INFO    ] ================================================
[2026-06-27 18:12:19,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:12:19
[2026-06-27 18:12:19,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:12:19,603.603 INFO    ] Initializing speech engine...
[2026-06-27 18:12:19,615.615 INFO    ] 2026-06-27 18:12:19
[2026-06-27 18:12:19,834.834 INFO    ] 2026-06-27 18:12:19
[2026-06-27 18:12:19,864.864 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:12:19,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:12:20,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:12:20,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:12:20,272.272 INFO    ] time= 27/06/2026 18:12:20
[2026-06-27 18:12:20,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:12:20,302.302 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:12:20,370.370 INFO    ] No existing commands found in stream
[2026-06-27 18:12:25,384.384 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:12:25,386.386 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-27 18:12:26,765.765 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:12:26,766.766 INFO    ] Checking for system updates...
[2026-06-27 18:12:26,787.787 INFO    ] 200
[2026-06-27 18:12:26,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:12:26,822.822 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:12:26,824.824 INFO    ] No update needed
[2026-06-27 18:12:26,825.825 INFO    ] Checking for camera pi updates...
[2026-06-27 18:12:26,845.845 INFO    ] 200
[2026-06-27 18:12:26,847.847 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:12:26,870.870 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:12:26,918.918 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:12:26,919.919 INFO    ] No camera update needed
[2026-06-27 18:12:26,920.920 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:12:26,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:12:26,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:12:26,928.928 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:12:28,965.965 INFO    ] ================================================
[2026-06-27 18:12:28,980.980 INFO    ] Launching Daemon at Sat Jun 27 18:12:28 IST 2026
[2026-06-27 18:12:28,991.991 INFO    ] ================================================
[2026-06-27 18:12:29,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:12:29
[2026-06-27 18:12:29,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:12:29,791.791 INFO    ] Initializing speech engine...
[2026-06-27 18:12:29,796.796 INFO    ] 2026-06-27 18:12:29
[2026-06-27 18:12:30,021.021 INFO    ] 2026-06-27 18:12:29
[2026-06-27 18:12:30,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:12:30,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:12:30,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:12:30,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:12:30,460.460 INFO    ] time= 27/06/2026 18:12:30
[2026-06-27 18:12:30,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:12:30,498.498 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:12:30,572.572 INFO    ] No existing commands found in stream
[2026-06-27 18:12:35,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:12:35,584.584 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-27 18:12:39,736.736 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:12:39,737.737 INFO    ] Checking for system updates...
[2026-06-27 18:12:39,759.759 INFO    ] 200
[2026-06-27 18:12:39,760.760 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:12:39,791.791 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:12:39,793.793 INFO    ] No update needed
[2026-06-27 18:12:39,794.794 INFO    ] Checking for camera pi updates...
[2026-06-27 18:12:39,814.814 INFO    ] 200
[2026-06-27 18:12:39,815.815 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:12:39,838.838 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:12:39,889.889 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:12:39,890.890 INFO    ] No camera update needed
[2026-06-27 18:12:39,891.891 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:12:39,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:12:39,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:12:39,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:12:41,936.936 INFO    ] ================================================
[2026-06-27 18:12:41,951.951 INFO    ] Launching Daemon at Sat Jun 27 18:12:41 IST 2026
[2026-06-27 18:12:41,962.962 INFO    ] ================================================
[2026-06-27 18:12:42,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:12:42
[2026-06-27 18:12:42,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:12:42,737.737 INFO    ] Initializing speech engine...
[2026-06-27 18:12:42,742.742 INFO    ] 2026-06-27 18:12:42
[2026-06-27 18:12:42,940.940 INFO    ] 2026-06-27 18:12:42
[2026-06-27 18:12:42,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:12:43,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:12:43,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:12:43,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:12:43,373.373 INFO    ] time= 27/06/2026 18:12:43
[2026-06-27 18:12:43,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:12:43,455.455 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:12:43,531.531 INFO    ] No existing commands found in stream
[2026-06-27 18:12:48,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:12:48,544.544 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-27 18:12:50,253.253 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 18:12:50,254.254 INFO    ] Checking for system updates...
[2026-06-27 18:12:50,275.275 INFO    ] 200
[2026-06-27 18:12:50,276.276 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:12:50,307.307 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:12:50,308.308 INFO    ] No update needed
[2026-06-27 18:12:50,309.309 INFO    ] Checking for camera pi updates...
[2026-06-27 18:12:50,330.330 INFO    ] 200
[2026-06-27 18:12:50,331.331 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:12:50,355.355 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:12:50,498.498 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:12:50,500.500 INFO    ] No camera update needed
[2026-06-27 18:12:50,501.501 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:12:50,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:12:50,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:12:50,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:12:52,547.547 INFO    ] ================================================
[2026-06-27 18:12:52,562.562 INFO    ] Launching Daemon at Sat Jun 27 18:12:52 IST 2026
[2026-06-27 18:12:52,573.573 INFO    ] ================================================
[2026-06-27 18:12:52,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:12:52
[2026-06-27 18:12:53,246.246 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:12:53,385.385 INFO    ] Initializing speech engine...
[2026-06-27 18:12:53,395.395 INFO    ] 2026-06-27 18:12:53
[2026-06-27 18:12:53,599.599 INFO    ] 2026-06-27 18:12:53
[2026-06-27 18:12:53,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:12:53,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:12:53,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:12:54,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:12:54,039.039 INFO    ] time= 27/06/2026 18:12:54
[2026-06-27 18:12:54,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:12:54,046.046 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:12:54,113.113 INFO    ] No existing commands found in stream
[2026-06-27 18:12:59,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:12:59,130.130 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-27 18:13:03,302.302 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:13:03,304.304 INFO    ] Checking for system updates...
[2026-06-27 18:13:03,325.325 INFO    ] 200
[2026-06-27 18:13:03,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:13:03,359.359 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:13:03,360.360 INFO    ] No update needed
[2026-06-27 18:13:03,362.362 INFO    ] Checking for camera pi updates...
[2026-06-27 18:13:03,382.382 INFO    ] 200
[2026-06-27 18:13:03,384.384 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:13:03,408.408 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:13:03,449.449 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:13:03,451.451 INFO    ] No camera update needed
[2026-06-27 18:13:03,452.452 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:13:03,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:13:03,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:13:03,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:13:05,498.498 INFO    ] ================================================
[2026-06-27 18:13:05,514.514 INFO    ] Launching Daemon at Sat Jun 27 18:13:05 IST 2026
[2026-06-27 18:13:05,524.524 INFO    ] ================================================
[2026-06-27 18:13:05,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:13:05
[2026-06-27 18:13:06,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:13:06,324.324 INFO    ] Initializing speech engine...
[2026-06-27 18:13:06,328.328 INFO    ] 2026-06-27 18:13:06
[2026-06-27 18:13:06,551.551 INFO    ] 2026-06-27 18:13:06
[2026-06-27 18:13:06,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:13:06,769.769 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:13:06,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:13:06,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:13:06,982.982 INFO    ] time= 27/06/2026 18:13:06
[2026-06-27 18:13:07,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:13:07,010.010 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:13:07,103.103 INFO    ] No existing commands found in stream
[2026-06-27 18:13:12,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:13:12,129.129 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-27 18:13:14,982.982 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:13:14,983.983 INFO    ] Checking for system updates...
[2026-06-27 18:13:15,004.004 INFO    ] 200
[2026-06-27 18:13:15,006.006 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:13:15,036.036 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:13:15,037.037 INFO    ] No update needed
[2026-06-27 18:13:15,039.039 INFO    ] Checking for camera pi updates...
[2026-06-27 18:13:15,060.060 INFO    ] 200
[2026-06-27 18:13:15,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:13:15,087.087 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:13:15,133.133 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:13:15,135.135 INFO    ] No camera update needed
[2026-06-27 18:13:15,136.136 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:13:15,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:13:15,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:13:15,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:13:17,182.182 INFO    ] ================================================
[2026-06-27 18:13:17,197.197 INFO    ] Launching Daemon at Sat Jun 27 18:13:17 IST 2026
[2026-06-27 18:13:17,209.209 INFO    ] ================================================
[2026-06-27 18:13:17,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:13:17
[2026-06-27 18:13:17,875.875 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:13:18,012.012 INFO    ] Initializing speech engine...
[2026-06-27 18:13:18,022.022 INFO    ] 2026-06-27 18:13:18
[2026-06-27 18:13:18,227.227 INFO    ] 2026-06-27 18:13:18
[2026-06-27 18:13:18,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:13:18,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:13:18,451.451 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:13:18,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:13:18,649.649 INFO    ] time= 27/06/2026 18:13:18
[2026-06-27 18:13:18,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:13:18,680.680 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:13:18,771.771 INFO    ] No existing commands found in stream
[2026-06-27 18:13:23,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:13:23,787.787 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-27 18:13:26,076.076 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 18:13:26,077.077 INFO    ] Checking for system updates...
[2026-06-27 18:13:26,099.099 INFO    ] 200
[2026-06-27 18:13:26,100.100 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:13:26,130.130 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:13:26,131.131 INFO    ] No update needed
[2026-06-27 18:13:26,133.133 INFO    ] Checking for camera pi updates...
[2026-06-27 18:13:26,153.153 INFO    ] 200
[2026-06-27 18:13:26,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:13:26,178.178 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:13:26,223.223 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:13:26,225.225 INFO    ] No camera update needed
[2026-06-27 18:13:26,226.226 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:13:26,227.227 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:13:26,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:13:26,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:13:28,272.272 INFO    ] ================================================
[2026-06-27 18:13:28,286.286 INFO    ] Launching Daemon at Sat Jun 27 18:13:28 IST 2026
[2026-06-27 18:13:28,297.297 INFO    ] ================================================
[2026-06-27 18:13:28,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:13:28
[2026-06-27 18:13:29,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:13:29,183.183 INFO    ] Initializing speech engine...
[2026-06-27 18:13:29,189.189 INFO    ] 2026-06-27 18:13:29
[2026-06-27 18:13:29,398.398 INFO    ] 2026-06-27 18:13:29
[2026-06-27 18:13:29,427.427 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:13:29,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:13:29,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:13:29,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:13:29,916.916 INFO    ] time= 27/06/2026 18:13:29
[2026-06-27 18:13:29,942.942 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:13:29,944.944 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:13:30,041.041 INFO    ] No existing commands found in stream
[2026-06-27 18:13:35,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:13:35,055.055 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-27 18:13:37,278.278 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:13:37,280.280 INFO    ] Checking for system updates...
[2026-06-27 18:13:37,303.303 INFO    ] 200
[2026-06-27 18:13:37,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:13:37,339.339 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:13:37,341.341 INFO    ] No update needed
[2026-06-27 18:13:37,342.342 INFO    ] Checking for camera pi updates...
[2026-06-27 18:13:37,365.365 INFO    ] 200
[2026-06-27 18:13:37,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:13:37,392.392 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:13:37,438.438 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:13:37,439.439 INFO    ] No camera update needed
[2026-06-27 18:13:37,441.441 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:13:37,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:13:37,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:13:37,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:13:39,488.488 INFO    ] ================================================
[2026-06-27 18:13:39,503.503 INFO    ] Launching Daemon at Sat Jun 27 18:13:39 IST 2026
[2026-06-27 18:13:39,514.514 INFO    ] ================================================
[2026-06-27 18:13:39,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:13:39
[2026-06-27 18:13:40,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:13:40,302.302 INFO    ] Initializing speech engine...
[2026-06-27 18:13:40,314.314 INFO    ] 2026-06-27 18:13:40
[2026-06-27 18:13:40,520.520 INFO    ] 2026-06-27 18:13:40
[2026-06-27 18:13:40,549.549 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:13:40,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:13:40,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:13:41,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:13:41,029.029 INFO    ] time= 27/06/2026 18:13:41
[2026-06-27 18:13:41,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:13:41,056.056 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:13:41,160.160 INFO    ] No existing commands found in stream
[2026-06-27 18:13:46,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:13:46,172.172 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-27 18:13:47,188.188 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:13:47,189.189 INFO    ] Checking for system updates...
[2026-06-27 18:13:47,210.210 INFO    ] 200
[2026-06-27 18:13:47,212.212 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:13:47,242.242 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:13:47,244.244 INFO    ] No update needed
[2026-06-27 18:13:47,246.246 INFO    ] Checking for camera pi updates...
[2026-06-27 18:13:47,266.266 INFO    ] 200
[2026-06-27 18:13:47,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:13:47,292.292 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:13:47,338.338 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:13:47,339.339 INFO    ] No camera update needed
[2026-06-27 18:13:47,340.340 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:13:47,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:13:47,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:13:47,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:13:49,385.385 INFO    ] ================================================
[2026-06-27 18:13:49,400.400 INFO    ] Launching Daemon at Sat Jun 27 18:13:49 IST 2026
[2026-06-27 18:13:49,411.411 INFO    ] ================================================
[2026-06-27 18:13:49,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:13:49
[2026-06-27 18:13:50,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:13:50,261.261 INFO    ] Initializing speech engine...
[2026-06-27 18:13:50,273.273 INFO    ] 2026-06-27 18:13:50
[2026-06-27 18:13:50,484.484 INFO    ] 2026-06-27 18:13:50
[2026-06-27 18:13:50,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:13:50,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:13:50,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:13:50,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:13:50,911.911 INFO    ] time= 27/06/2026 18:13:50
[2026-06-27 18:13:50,934.934 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:13:50,940.940 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:13:51,009.009 INFO    ] No existing commands found in stream
[2026-06-27 18:13:56,023.023 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:13:56,026.026 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-27 18:13:58,089.089 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:13:58,090.090 INFO    ] Checking for system updates...
[2026-06-27 18:13:58,111.111 INFO    ] 200
[2026-06-27 18:13:58,112.112 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:13:58,145.145 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:13:58,146.146 INFO    ] No update needed
[2026-06-27 18:13:58,147.147 INFO    ] Checking for camera pi updates...
[2026-06-27 18:13:58,167.167 INFO    ] 200
[2026-06-27 18:13:58,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:13:58,191.191 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:13:58,239.239 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:13:58,240.240 INFO    ] No camera update needed
[2026-06-27 18:13:58,241.241 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:13:58,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:13:58,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:13:58,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:14:00,286.286 INFO    ] ================================================
[2026-06-27 18:14:00,302.302 INFO    ] Launching Daemon at Sat Jun 27 18:14:00 IST 2026
[2026-06-27 18:14:00,312.312 INFO    ] ================================================
[2026-06-27 18:14:00,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:14:00
[2026-06-27 18:14:01,005.005 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:14:01,156.156 INFO    ] Initializing speech engine...
[2026-06-27 18:14:01,159.159 INFO    ] 2026-06-27 18:14:01
[2026-06-27 18:14:01,363.363 INFO    ] 2026-06-27 18:14:01
[2026-06-27 18:14:01,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:14:01,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:14:01,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:14:01,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:14:01,868.868 INFO    ] time= 27/06/2026 18:14:01
[2026-06-27 18:14:01,871.871 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:14:01,873.873 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:14:01,977.977 INFO    ] No existing commands found in stream
[2026-06-27 18:14:07,005.005 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:14:07,008.008 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-27 18:14:10,567.567 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 18:14:10,568.568 INFO    ] Checking for system updates...
[2026-06-27 18:14:10,589.589 INFO    ] 200
[2026-06-27 18:14:10,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:14:10,623.623 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:14:10,624.624 INFO    ] No update needed
[2026-06-27 18:14:10,626.626 INFO    ] Checking for camera pi updates...
[2026-06-27 18:14:10,645.645 INFO    ] 200
[2026-06-27 18:14:10,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:14:10,671.671 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:14:10,722.722 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:14:10,723.723 INFO    ] No camera update needed
[2026-06-27 18:14:10,725.725 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:14:10,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:14:10,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:14:10,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:14:12,770.770 INFO    ] ================================================
[2026-06-27 18:14:12,787.787 INFO    ] Launching Daemon at Sat Jun 27 18:14:12 IST 2026
[2026-06-27 18:14:12,798.798 INFO    ] ================================================
[2026-06-27 18:14:13,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:14:13
[2026-06-27 18:14:13,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:14:13,611.611 INFO    ] Initializing speech engine...
[2026-06-27 18:14:13,621.621 INFO    ] 2026-06-27 18:14:13
[2026-06-27 18:14:13,827.827 INFO    ] 2026-06-27 18:14:13
[2026-06-27 18:14:13,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:14:14,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:14:14,047.047 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:14:14,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:14:14,255.255 INFO    ] time= 27/06/2026 18:14:14
[2026-06-27 18:14:14,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:14:14,283.283 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:14:14,351.351 INFO    ] No existing commands found in stream
[2026-06-27 18:14:19,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:14:19,368.368 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-27 18:14:22,098.098 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:14:22,100.100 INFO    ] Checking for system updates...
[2026-06-27 18:14:22,124.124 INFO    ] 200
[2026-06-27 18:14:22,125.125 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:14:22,157.157 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:14:22,159.159 INFO    ] No update needed
[2026-06-27 18:14:22,160.160 INFO    ] Checking for camera pi updates...
[2026-06-27 18:14:22,182.182 INFO    ] 200
[2026-06-27 18:14:22,183.183 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:14:22,208.208 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:14:22,250.250 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:14:22,252.252 INFO    ] No camera update needed
[2026-06-27 18:14:22,253.253 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:14:22,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:14:22,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:14:22,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:14:24,298.298 INFO    ] ================================================
[2026-06-27 18:14:24,315.315 INFO    ] Launching Daemon at Sat Jun 27 18:14:24 IST 2026
[2026-06-27 18:14:24,326.326 INFO    ] ================================================
[2026-06-27 18:14:24,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:14:24
[2026-06-27 18:14:25,023.023 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:14:25,181.181 INFO    ] Initializing speech engine...
[2026-06-27 18:14:25,185.185 INFO    ] 2026-06-27 18:14:25
[2026-06-27 18:14:25,388.388 INFO    ] 2026-06-27 18:14:25
[2026-06-27 18:14:25,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:14:25,541.541 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:14:25,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:14:25,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:14:25,812.812 INFO    ] time= 27/06/2026 18:14:25
[2026-06-27 18:14:25,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:14:25,842.842 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:14:25,908.908 INFO    ] No existing commands found in stream
[2026-06-27 18:14:30,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:14:30,921.921 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-27 18:14:32,928.928 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 18:14:32,929.929 INFO    ] Checking for system updates...
[2026-06-27 18:14:32,949.949 INFO    ] 200
[2026-06-27 18:14:32,951.951 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:14:32,983.983 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:14:32,984.984 INFO    ] No update needed
[2026-06-27 18:14:32,985.985 INFO    ] Checking for camera pi updates...
[2026-06-27 18:14:33,005.005 INFO    ] 200
[2026-06-27 18:14:33,006.006 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:14:33,029.029 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:14:33,064.064 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:14:33,065.065 INFO    ] No camera update needed
[2026-06-27 18:14:33,067.067 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:14:33,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:14:33,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:14:33,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:14:35,113.113 INFO    ] ================================================
[2026-06-27 18:14:35,129.129 INFO    ] Launching Daemon at Sat Jun 27 18:14:35 IST 2026
[2026-06-27 18:14:35,141.141 INFO    ] ================================================
[2026-06-27 18:14:35,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:14:35
[2026-06-27 18:14:35,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:14:35,912.912 INFO    ] Initializing speech engine...
[2026-06-27 18:14:35,926.926 INFO    ] 2026-06-27 18:14:35
[2026-06-27 18:14:36,132.132 INFO    ] 2026-06-27 18:14:36
[2026-06-27 18:14:36,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:14:36,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:14:36,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:14:36,547.547 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:14:36,574.574 INFO    ] time= 27/06/2026 18:14:36
[2026-06-27 18:14:36,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:14:36,581.581 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:14:36,671.671 INFO    ] No existing commands found in stream
[2026-06-27 18:14:41,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:14:41,688.688 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-27 18:14:43,833.833 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:14:43,835.835 INFO    ] Checking for system updates...
[2026-06-27 18:14:43,856.856 INFO    ] 200
[2026-06-27 18:14:43,857.857 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:14:43,887.887 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:14:43,888.888 INFO    ] No update needed
[2026-06-27 18:14:43,889.889 INFO    ] Checking for camera pi updates...
[2026-06-27 18:14:43,912.912 INFO    ] 200
[2026-06-27 18:14:43,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:14:43,938.938 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:14:43,984.984 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:14:43,985.985 INFO    ] No camera update needed
[2026-06-27 18:14:43,987.987 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:14:43,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:14:43,991.991 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:14:43,993.993 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:14:46,033.033 INFO    ] ================================================
[2026-06-27 18:14:46,048.048 INFO    ] Launching Daemon at Sat Jun 27 18:14:46 IST 2026
[2026-06-27 18:14:46,060.060 INFO    ] ================================================
[2026-06-27 18:14:46,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:14:46
[2026-06-27 18:14:46,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:14:46,828.828 INFO    ] Initializing speech engine...
[2026-06-27 18:14:46,836.836 INFO    ] 2026-06-27 18:14:46
[2026-06-27 18:14:47,051.051 INFO    ] 2026-06-27 18:14:47
[2026-06-27 18:14:47,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:14:47,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:14:47,276.276 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:14:47,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:14:47,477.477 INFO    ] time= 27/06/2026 18:14:47
[2026-06-27 18:14:47,501.501 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:14:47,508.508 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:14:47,575.575 INFO    ] No existing commands found in stream
[2026-06-27 18:14:52,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:14:52,592.592 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-27 18:14:55,183.183 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:14:55,185.185 INFO    ] Checking for system updates...
[2026-06-27 18:14:55,206.206 INFO    ] 200
[2026-06-27 18:14:55,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:14:55,238.238 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:14:55,239.239 INFO    ] No update needed
[2026-06-27 18:14:55,240.240 INFO    ] Checking for camera pi updates...
[2026-06-27 18:14:55,261.261 INFO    ] 200
[2026-06-27 18:14:55,262.262 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:14:55,286.286 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:14:55,415.415 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:14:55,416.416 INFO    ] No camera update needed
[2026-06-27 18:14:55,418.418 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:14:55,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:14:55,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:14:55,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:14:57,463.463 INFO    ] ================================================
[2026-06-27 18:14:57,478.478 INFO    ] Launching Daemon at Sat Jun 27 18:14:57 IST 2026
[2026-06-27 18:14:57,489.489 INFO    ] ================================================
[2026-06-27 18:14:57,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:14:57
[2026-06-27 18:14:58,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:14:58,308.308 INFO    ] Initializing speech engine...
[2026-06-27 18:14:58,319.319 INFO    ] 2026-06-27 18:14:58
[2026-06-27 18:14:58,522.522 INFO    ] 2026-06-27 18:14:58
[2026-06-27 18:14:58,550.550 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:14:58,734.734 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:14:58,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:14:58,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:14:58,941.941 INFO    ] time= 27/06/2026 18:14:58
[2026-06-27 18:14:58,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:14:58,965.965 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:14:59,034.034 INFO    ] No existing commands found in stream
[2026-06-27 18:15:04,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:15:04,048.048 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-27 18:15:07,176.176 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:15:07,178.178 INFO    ] Checking for system updates...
[2026-06-27 18:15:07,199.199 INFO    ] 200
[2026-06-27 18:15:07,200.200 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:15:07,231.231 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:15:07,232.232 INFO    ] No update needed
[2026-06-27 18:15:07,233.233 INFO    ] Checking for camera pi updates...
[2026-06-27 18:15:07,254.254 INFO    ] 200
[2026-06-27 18:15:07,255.255 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:15:07,281.281 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:15:07,326.326 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:15:07,327.327 INFO    ] No camera update needed
[2026-06-27 18:15:07,328.328 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:15:07,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:15:07,333.333 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:15:07,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:15:09,374.374 INFO    ] ================================================
[2026-06-27 18:15:09,390.390 INFO    ] Launching Daemon at Sat Jun 27 18:15:09 IST 2026
[2026-06-27 18:15:09,401.401 INFO    ] ================================================
[2026-06-27 18:15:09,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:15:09
[2026-06-27 18:15:10,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:15:10,249.249 INFO    ] Initializing speech engine...
[2026-06-27 18:15:10,254.254 INFO    ] 2026-06-27 18:15:10
[2026-06-27 18:15:10,458.458 INFO    ] 2026-06-27 18:15:10
[2026-06-27 18:15:10,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:15:10,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:15:10,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:15:10,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:15:10,991.991 INFO    ] time= 27/06/2026 18:15:10
[2026-06-27 18:15:11,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:15:11,020.020 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:15:11,108.108 INFO    ] No existing commands found in stream
[2026-06-27 18:15:16,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:15:16,120.120 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-27 18:15:19,281.281 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:15:19,282.282 INFO    ] Checking for system updates...
[2026-06-27 18:15:19,306.306 INFO    ] 200
[2026-06-27 18:15:19,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:15:19,338.338 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:15:19,339.339 INFO    ] No update needed
[2026-06-27 18:15:19,340.340 INFO    ] Checking for camera pi updates...
[2026-06-27 18:15:19,360.360 INFO    ] 200
[2026-06-27 18:15:19,362.362 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:15:19,386.386 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:15:19,426.426 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:15:19,427.427 INFO    ] No camera update needed
[2026-06-27 18:15:19,429.429 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:15:19,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:15:19,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:15:19,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:15:21,476.476 INFO    ] ================================================
[2026-06-27 18:15:21,492.492 INFO    ] Launching Daemon at Sat Jun 27 18:15:21 IST 2026
[2026-06-27 18:15:21,503.503 INFO    ] ================================================
[2026-06-27 18:15:21,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:15:21
[2026-06-27 18:15:22,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:15:22,314.314 INFO    ] Initializing speech engine...
[2026-06-27 18:15:22,319.319 INFO    ] 2026-06-27 18:15:22
[2026-06-27 18:15:22,524.524 INFO    ] 2026-06-27 18:15:22
[2026-06-27 18:15:22,553.553 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:15:22,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:15:22,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:15:22,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:15:22,954.954 INFO    ] time= 27/06/2026 18:15:22
[2026-06-27 18:15:22,965.965 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:15:22,970.970 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:15:23,037.037 INFO    ] No existing commands found in stream
[2026-06-27 18:15:28,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:15:28,050.050 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-27 18:15:30,163.163 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 18:15:30,165.165 INFO    ] Checking for system updates...
[2026-06-27 18:15:30,197.197 INFO    ] 200
[2026-06-27 18:15:30,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:15:30,229.229 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:15:30,231.231 INFO    ] No update needed
[2026-06-27 18:15:30,232.232 INFO    ] Checking for camera pi updates...
[2026-06-27 18:15:30,252.252 INFO    ] 200
[2026-06-27 18:15:30,253.253 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:15:30,277.277 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:15:30,332.332 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:15:30,333.333 INFO    ] No camera update needed
[2026-06-27 18:15:30,335.335 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:15:30,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:15:30,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:15:30,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:15:32,376.376 INFO    ] ================================================
[2026-06-27 18:15:32,386.386 INFO    ] Launching Daemon at Sat Jun 27 18:15:32 IST 2026
[2026-06-27 18:15:32,393.393 INFO    ] ================================================
[2026-06-27 18:15:32,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:15:32
[2026-06-27 18:15:33,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:15:33,197.197 INFO    ] Initializing speech engine...
[2026-06-27 18:15:33,201.201 INFO    ] 2026-06-27 18:15:33
[2026-06-27 18:15:33,429.429 INFO    ] 2026-06-27 18:15:33
[2026-06-27 18:15:33,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:15:33,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:15:33,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:15:33,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:15:33,699.699 INFO    ] time= 27/06/2026 18:15:33
[2026-06-27 18:15:33,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:15:33,702.702 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:15:33,757.757 INFO    ] No existing commands found in stream
[2026-06-27 18:15:38,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:15:38,769.769 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-27 18:15:40,482.482 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:15:40,484.484 INFO    ] Checking for system updates...
[2026-06-27 18:15:40,505.505 INFO    ] 200
[2026-06-27 18:15:40,506.506 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:15:40,536.536 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:15:40,537.537 INFO    ] No update needed
[2026-06-27 18:15:40,539.539 INFO    ] Checking for camera pi updates...
[2026-06-27 18:15:40,559.559 INFO    ] 200
[2026-06-27 18:15:40,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:15:40,584.584 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:15:40,611.611 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:15:40,612.612 INFO    ] No camera update needed
[2026-06-27 18:15:40,614.614 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:15:40,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:15:40,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:15:40,621.621 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:15:42,663.663 INFO    ] ================================================
[2026-06-27 18:15:42,678.678 INFO    ] Launching Daemon at Sat Jun 27 18:15:42 IST 2026
[2026-06-27 18:15:42,689.689 INFO    ] ================================================
[2026-06-27 18:15:43,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:15:43
[2026-06-27 18:15:43,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:15:43,476.476 INFO    ] Initializing speech engine...
[2026-06-27 18:15:43,481.481 INFO    ] 2026-06-27 18:15:43
[2026-06-27 18:15:43,696.696 INFO    ] 2026-06-27 18:15:43
[2026-06-27 18:15:43,725.725 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:15:43,909.909 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:15:43,919.919 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:15:44,056.056 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:15:44,113.113 INFO    ] time= 27/06/2026 18:15:44
[2026-06-27 18:15:44,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:15:44,142.142 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:15:44,210.210 INFO    ] No existing commands found in stream
[2026-06-27 18:15:49,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:15:49,226.226 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-27 18:15:51,628.628 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:15:51,629.629 INFO    ] Checking for system updates...
[2026-06-27 18:15:51,651.651 INFO    ] 200
[2026-06-27 18:15:51,652.652 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:15:51,685.685 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:15:51,686.686 INFO    ] No update needed
[2026-06-27 18:15:51,687.687 INFO    ] Checking for camera pi updates...
[2026-06-27 18:15:51,707.707 INFO    ] 200
[2026-06-27 18:15:51,708.708 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:15:51,733.733 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:15:51,773.773 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:15:51,774.774 INFO    ] No camera update needed
[2026-06-27 18:15:51,776.776 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:15:51,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:15:51,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:15:51,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:15:53,823.823 INFO    ] ================================================
[2026-06-27 18:15:53,837.837 INFO    ] Launching Daemon at Sat Jun 27 18:15:53 IST 2026
[2026-06-27 18:15:53,849.849 INFO    ] ================================================
[2026-06-27 18:15:54,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:15:54
[2026-06-27 18:15:54,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:15:54,624.624 INFO    ] Initializing speech engine...
[2026-06-27 18:15:54,628.628 INFO    ] 2026-06-27 18:15:54
[2026-06-27 18:15:54,847.847 INFO    ] 2026-06-27 18:15:54
[2026-06-27 18:15:54,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:15:55,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:15:55,072.072 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:15:55,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:15:55,286.286 INFO    ] time= 27/06/2026 18:15:55
[2026-06-27 18:15:55,298.298 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:15:55,303.303 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:15:55,370.370 INFO    ] No existing commands found in stream
[2026-06-27 18:16:00,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:16:00,382.382 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-27 18:16:02,633.633 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:16:02,635.635 INFO    ] Checking for system updates...
[2026-06-27 18:16:02,655.655 INFO    ] 200
[2026-06-27 18:16:02,657.657 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:16:02,689.689 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:16:02,690.690 INFO    ] No update needed
[2026-06-27 18:16:02,691.691 INFO    ] Checking for camera pi updates...
[2026-06-27 18:16:02,711.711 INFO    ] 200
[2026-06-27 18:16:02,713.713 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:16:02,736.736 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:16:02,766.766 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:16:02,767.767 INFO    ] No camera update needed
[2026-06-27 18:16:02,768.768 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:16:02,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:16:02,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:16:02,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:16:04,813.813 INFO    ] ================================================
[2026-06-27 18:16:04,828.828 INFO    ] Launching Daemon at Sat Jun 27 18:16:04 IST 2026
[2026-06-27 18:16:04,839.839 INFO    ] ================================================
[2026-06-27 18:16:05,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:16:05
[2026-06-27 18:16:05,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:16:05,703.703 INFO    ] Initializing speech engine...
[2026-06-27 18:16:05,717.717 INFO    ] 2026-06-27 18:16:05
[2026-06-27 18:16:05,947.947 INFO    ] 2026-06-27 18:16:05
[2026-06-27 18:16:05,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:16:06,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:16:06,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:16:06,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:16:06,385.385 INFO    ] time= 27/06/2026 18:16:06
[2026-06-27 18:16:06,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:16:06,417.417 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:16:06,484.484 INFO    ] No existing commands found in stream
[2026-06-27 18:16:11,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:16:11,497.497 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-27 18:16:15,693.693 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 18:16:15,695.695 INFO    ] Checking for system updates...
[2026-06-27 18:16:15,716.716 INFO    ] 200
[2026-06-27 18:16:15,718.718 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:16:15,750.750 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:16:15,752.752 INFO    ] No update needed
[2026-06-27 18:16:15,753.753 INFO    ] Checking for camera pi updates...
[2026-06-27 18:16:15,774.774 INFO    ] 200
[2026-06-27 18:16:15,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:16:15,800.800 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:16:15,838.838 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:16:15,840.840 INFO    ] No camera update needed
[2026-06-27 18:16:15,841.841 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:16:15,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:16:15,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:16:15,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:16:17,888.888 INFO    ] ================================================
[2026-06-27 18:16:17,903.903 INFO    ] Launching Daemon at Sat Jun 27 18:16:17 IST 2026
[2026-06-27 18:16:17,914.914 INFO    ] ================================================
[2026-06-27 18:16:18,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:16:18
[2026-06-27 18:16:18,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:16:18,723.723 INFO    ] Initializing speech engine...
[2026-06-27 18:16:18,728.728 INFO    ] 2026-06-27 18:16:18
[2026-06-27 18:16:18,931.931 INFO    ] 2026-06-27 18:16:18
[2026-06-27 18:16:18,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:16:19,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:16:19,268.268 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:16:19,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:16:19,438.438 INFO    ] time= 27/06/2026 18:16:19
[2026-06-27 18:16:19,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:16:19,465.465 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:16:19,600.600 INFO    ] No existing commands found in stream
[2026-06-27 18:16:24,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:16:24,612.612 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-27 18:16:26,879.879 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:16:26,880.880 INFO    ] Checking for system updates...
[2026-06-27 18:16:26,901.901 INFO    ] 200
[2026-06-27 18:16:26,902.902 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:16:26,933.933 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:16:26,934.934 INFO    ] No update needed
[2026-06-27 18:16:26,936.936 INFO    ] Checking for camera pi updates...
[2026-06-27 18:16:26,956.956 INFO    ] 200
[2026-06-27 18:16:26,957.957 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:16:26,980.980 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:16:27,023.023 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:16:27,024.024 INFO    ] No camera update needed
[2026-06-27 18:16:27,026.026 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:16:27,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:16:27,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:16:27,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:16:29,072.072 INFO    ] ================================================
[2026-06-27 18:16:29,091.091 INFO    ] Launching Daemon at Sat Jun 27 18:16:29 IST 2026
[2026-06-27 18:16:29,102.102 INFO    ] ================================================
[2026-06-27 18:16:29,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:16:29
[2026-06-27 18:16:29,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:16:29,909.909 INFO    ] Initializing speech engine...
[2026-06-27 18:16:29,920.920 INFO    ] 2026-06-27 18:16:29
[2026-06-27 18:16:30,125.125 INFO    ] 2026-06-27 18:16:30
[2026-06-27 18:16:30,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:16:30,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:16:30,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:16:30,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:16:30,644.644 INFO    ] time= 27/06/2026 18:16:30
[2026-06-27 18:16:30,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:16:30,671.671 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:16:30,768.768 INFO    ] No existing commands found in stream
[2026-06-27 18:16:35,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:16:35,779.779 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-27 18:16:38,432.432 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:16:38,434.434 INFO    ] Checking for system updates...
[2026-06-27 18:16:38,455.455 INFO    ] 200
[2026-06-27 18:16:38,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:16:38,489.489 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:16:38,490.490 INFO    ] No update needed
[2026-06-27 18:16:38,492.492 INFO    ] Checking for camera pi updates...
[2026-06-27 18:16:38,511.511 INFO    ] 200
[2026-06-27 18:16:38,512.512 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:16:38,538.538 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:16:38,581.581 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:16:38,582.582 INFO    ] No camera update needed
[2026-06-27 18:16:38,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:16:38,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:16:38,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:16:38,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:16:40,628.628 INFO    ] ================================================
[2026-06-27 18:16:40,643.643 INFO    ] Launching Daemon at Sat Jun 27 18:16:40 IST 2026
[2026-06-27 18:16:40,654.654 INFO    ] ================================================
[2026-06-27 18:16:41,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:16:41
[2026-06-27 18:16:41,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:16:41,445.445 INFO    ] Initializing speech engine...
[2026-06-27 18:16:41,454.454 INFO    ] 2026-06-27 18:16:41
[2026-06-27 18:16:41,668.668 INFO    ] 2026-06-27 18:16:41
[2026-06-27 18:16:41,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:16:41,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:16:41,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:16:42,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:16:42,093.093 INFO    ] time= 27/06/2026 18:16:42
[2026-06-27 18:16:42,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:16:42,122.122 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:16:42,189.189 INFO    ] No existing commands found in stream
[2026-06-27 18:16:47,208.208 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:16:47,211.211 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-27 18:16:51,473.473 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:16:51,475.475 INFO    ] Checking for system updates...
[2026-06-27 18:16:51,496.496 INFO    ] 200
[2026-06-27 18:16:51,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:16:51,528.528 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:16:51,529.529 INFO    ] No update needed
[2026-06-27 18:16:51,530.530 INFO    ] Checking for camera pi updates...
[2026-06-27 18:16:51,550.550 INFO    ] 200
[2026-06-27 18:16:51,551.551 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:16:51,575.575 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:16:51,620.620 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:16:51,622.622 INFO    ] No camera update needed
[2026-06-27 18:16:51,623.623 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:16:51,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:16:51,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:16:51,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:16:53,667.667 INFO    ] ================================================
[2026-06-27 18:16:53,682.682 INFO    ] Launching Daemon at Sat Jun 27 18:16:53 IST 2026
[2026-06-27 18:16:53,694.694 INFO    ] ================================================
[2026-06-27 18:16:54,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:16:54
[2026-06-27 18:16:54,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:16:54,497.497 INFO    ] Initializing speech engine...
[2026-06-27 18:16:54,505.505 INFO    ] 2026-06-27 18:16:54
[2026-06-27 18:16:54,720.720 INFO    ] 2026-06-27 18:16:54
[2026-06-27 18:16:54,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:16:54,934.934 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:16:54,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:16:55,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:16:55,142.142 INFO    ] time= 27/06/2026 18:16:55
[2026-06-27 18:16:55,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:16:55,172.172 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:16:55,239.239 INFO    ] No existing commands found in stream
[2026-06-27 18:17:00,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:17:00,251.251 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-27 18:17:04,234.234 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 18:17:04,235.235 INFO    ] Checking for system updates...
[2026-06-27 18:17:04,257.257 INFO    ] 200
[2026-06-27 18:17:04,259.259 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:17:04,293.293 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:17:04,294.294 INFO    ] No update needed
[2026-06-27 18:17:04,296.296 INFO    ] Checking for camera pi updates...
[2026-06-27 18:17:04,315.315 INFO    ] 200
[2026-06-27 18:17:04,317.317 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:17:04,341.341 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:17:04,387.387 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:17:04,388.388 INFO    ] No camera update needed
[2026-06-27 18:17:04,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:17:04,390.390 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:17:04,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:17:04,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:17:06,436.436 INFO    ] ================================================
[2026-06-27 18:17:06,452.452 INFO    ] Launching Daemon at Sat Jun 27 18:17:06 IST 2026
[2026-06-27 18:17:06,463.463 INFO    ] ================================================
[2026-06-27 18:17:06,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:17:06
[2026-06-27 18:17:07,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:17:07,280.280 INFO    ] Initializing speech engine...
[2026-06-27 18:17:07,286.286 INFO    ] 2026-06-27 18:17:07
[2026-06-27 18:17:07,490.490 INFO    ] 2026-06-27 18:17:07
[2026-06-27 18:17:07,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:17:07,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:17:07,715.715 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:17:07,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:17:07,916.916 INFO    ] time= 27/06/2026 18:17:07
[2026-06-27 18:17:07,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:17:07,944.944 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:17:08,012.012 INFO    ] No existing commands found in stream
[2026-06-27 18:17:13,026.026 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:17:13,029.029 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-27 18:17:13,987.987 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:17:13,988.988 INFO    ] Checking for system updates...
[2026-06-27 18:17:14,032.032 INFO    ] 200
[2026-06-27 18:17:14,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:17:14,065.065 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:17:14,066.066 INFO    ] No update needed
[2026-06-27 18:17:14,068.068 INFO    ] Checking for camera pi updates...
[2026-06-27 18:17:14,088.088 INFO    ] 200
[2026-06-27 18:17:14,089.089 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:17:14,112.112 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:17:14,158.158 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:17:14,159.159 INFO    ] No camera update needed
[2026-06-27 18:17:14,161.161 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:17:14,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:17:14,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:17:14,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:17:16,213.213 INFO    ] ================================================
[2026-06-27 18:17:16,228.228 INFO    ] Launching Daemon at Sat Jun 27 18:17:16 IST 2026
[2026-06-27 18:17:16,239.239 INFO    ] ================================================
[2026-06-27 18:17:16,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:17:16
[2026-06-27 18:17:16,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:17:17,011.011 INFO    ] Initializing speech engine...
[2026-06-27 18:17:17,020.020 INFO    ] 2026-06-27 18:17:17
[2026-06-27 18:17:17,240.240 INFO    ] 2026-06-27 18:17:17
[2026-06-27 18:17:17,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:17:17,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:17:17,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:17:17,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:17:17,681.681 INFO    ] time= 27/06/2026 18:17:17
[2026-06-27 18:17:17,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:17:17,715.715 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:17:17,783.783 INFO    ] No existing commands found in stream
[2026-06-27 18:17:22,794.794 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:17:22,797.797 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-27 18:17:24,162.162 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 18:17:24,163.163 INFO    ] Checking for system updates...
[2026-06-27 18:17:24,184.184 INFO    ] 200
[2026-06-27 18:17:24,186.186 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:17:24,218.218 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:17:24,219.219 INFO    ] No update needed
[2026-06-27 18:17:24,221.221 INFO    ] Checking for camera pi updates...
[2026-06-27 18:17:24,243.243 INFO    ] 200
[2026-06-27 18:17:24,245.245 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:17:24,269.269 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:17:24,318.318 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:17:24,320.320 INFO    ] No camera update needed
[2026-06-27 18:17:24,321.321 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:17:24,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:17:24,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:17:24,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:17:26,361.361 INFO    ] ================================================
[2026-06-27 18:17:26,377.377 INFO    ] Launching Daemon at Sat Jun 27 18:17:26 IST 2026
[2026-06-27 18:17:26,388.388 INFO    ] ================================================
[2026-06-27 18:17:26,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:17:26
[2026-06-27 18:17:27,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:17:27,213.213 INFO    ] Initializing speech engine...
[2026-06-27 18:17:27,224.224 INFO    ] 2026-06-27 18:17:27
[2026-06-27 18:17:27,431.431 INFO    ] 2026-06-27 18:17:27
[2026-06-27 18:17:27,460.460 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:17:27,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:17:27,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:17:27,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:17:27,872.872 INFO    ] time= 27/06/2026 18:17:27
[2026-06-27 18:17:27,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:17:27,881.881 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:17:27,948.948 INFO    ] No existing commands found in stream
[2026-06-27 18:17:32,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:17:32,965.965 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-27 18:17:34,245.245 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:17:34,246.246 INFO    ] Checking for system updates...
[2026-06-27 18:17:34,268.268 INFO    ] 200
[2026-06-27 18:17:34,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:17:34,302.302 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:17:34,304.304 INFO    ] No update needed
[2026-06-27 18:17:34,305.305 INFO    ] Checking for camera pi updates...
[2026-06-27 18:17:34,325.325 INFO    ] 200
[2026-06-27 18:17:34,327.327 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:17:34,352.352 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:17:34,395.395 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:17:34,397.397 INFO    ] No camera update needed
[2026-06-27 18:17:34,398.398 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:17:34,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:17:34,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:17:34,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:17:36,446.446 INFO    ] ================================================
[2026-06-27 18:17:36,462.462 INFO    ] Launching Daemon at Sat Jun 27 18:17:36 IST 2026
[2026-06-27 18:17:36,473.473 INFO    ] ================================================
[2026-06-27 18:17:36,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:17:36
[2026-06-27 18:17:37,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:17:37,296.296 INFO    ] Initializing speech engine...
[2026-06-27 18:17:37,300.300 INFO    ] 2026-06-27 18:17:37
[2026-06-27 18:17:37,515.515 INFO    ] 2026-06-27 18:17:37
[2026-06-27 18:17:37,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:17:37,728.728 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:17:37,736.736 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:17:37,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:17:37,954.954 INFO    ] time= 27/06/2026 18:17:37
[2026-06-27 18:17:37,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:17:37,961.961 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:17:38,027.027 INFO    ] No existing commands found in stream
[2026-06-27 18:17:43,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:17:43,039.039 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-27 18:17:44,577.577 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:17:44,579.579 INFO    ] Checking for system updates...
[2026-06-27 18:17:44,600.600 INFO    ] 200
[2026-06-27 18:17:44,602.602 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:17:44,632.632 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:17:44,634.634 INFO    ] No update needed
[2026-06-27 18:17:44,635.635 INFO    ] Checking for camera pi updates...
[2026-06-27 18:17:44,655.655 INFO    ] 200
[2026-06-27 18:17:44,656.656 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:17:44,680.680 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:17:44,726.726 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:17:44,727.727 INFO    ] No camera update needed
[2026-06-27 18:17:44,729.729 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:17:44,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:17:44,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:17:44,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:17:46,776.776 INFO    ] ================================================
[2026-06-27 18:17:46,792.792 INFO    ] Launching Daemon at Sat Jun 27 18:17:46 IST 2026
[2026-06-27 18:17:46,803.803 INFO    ] ================================================
[2026-06-27 18:17:47,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:17:47
[2026-06-27 18:17:47,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:17:47,596.596 INFO    ] Initializing speech engine...
[2026-06-27 18:17:47,601.601 INFO    ] 2026-06-27 18:17:47
[2026-06-27 18:17:47,807.807 INFO    ] 2026-06-27 18:17:47
[2026-06-27 18:17:47,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:17:48,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:17:48,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:17:48,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:17:48,227.227 INFO    ] time= 27/06/2026 18:17:48
[2026-06-27 18:17:48,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:17:48,259.259 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:17:48,324.324 INFO    ] No existing commands found in stream
[2026-06-27 18:17:53,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:17:53,338.338 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-27 18:17:55,940.940 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 18:17:55,941.941 INFO    ] Checking for system updates...
[2026-06-27 18:17:55,962.962 INFO    ] 200
[2026-06-27 18:17:55,964.964 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:17:55,996.996 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:17:55,998.998 INFO    ] No update needed
[2026-06-27 18:17:55,999.999 INFO    ] Checking for camera pi updates...
[2026-06-27 18:17:56,018.018 INFO    ] 200
[2026-06-27 18:17:56,020.020 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:17:56,045.045 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:17:56,074.074 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:17:56,076.076 INFO    ] No camera update needed
[2026-06-27 18:17:56,078.078 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:17:56,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:17:56,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:17:56,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:17:58,124.124 INFO    ] ================================================
[2026-06-27 18:17:58,140.140 INFO    ] Launching Daemon at Sat Jun 27 18:17:58 IST 2026
[2026-06-27 18:17:58,151.151 INFO    ] ================================================
[2026-06-27 18:17:58,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:17:58
[2026-06-27 18:17:58,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:17:58,945.945 INFO    ] Initializing speech engine...
[2026-06-27 18:17:58,950.950 INFO    ] 2026-06-27 18:17:58
[2026-06-27 18:17:59,153.153 INFO    ] 2026-06-27 18:17:59
[2026-06-27 18:17:59,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:17:59,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:17:59,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:17:59,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:17:59,581.581 INFO    ] time= 27/06/2026 18:17:59
[2026-06-27 18:17:59,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:17:59,610.610 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:17:59,707.707 INFO    ] No existing commands found in stream
[2026-06-27 18:18:04,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:18:04,720.720 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-27 18:18:06,338.338 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:18:06,340.340 INFO    ] Checking for system updates...
[2026-06-27 18:18:06,360.360 INFO    ] 200
[2026-06-27 18:18:06,362.362 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:18:06,392.392 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:18:06,394.394 INFO    ] No update needed
[2026-06-27 18:18:06,395.395 INFO    ] Checking for camera pi updates...
[2026-06-27 18:18:06,414.414 INFO    ] 200
[2026-06-27 18:18:06,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:18:06,440.440 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:18:06,481.481 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:18:06,482.482 INFO    ] No camera update needed
[2026-06-27 18:18:06,484.484 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:18:06,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:18:06,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:18:06,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:18:08,531.531 INFO    ] ================================================
[2026-06-27 18:18:08,546.546 INFO    ] Launching Daemon at Sat Jun 27 18:18:08 IST 2026
[2026-06-27 18:18:08,557.557 INFO    ] ================================================
[2026-06-27 18:18:08,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:18:08
[2026-06-27 18:18:09,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:18:09,335.335 INFO    ] Initializing speech engine...
[2026-06-27 18:18:09,344.344 INFO    ] 2026-06-27 18:18:09
[2026-06-27 18:18:09,560.560 INFO    ] 2026-06-27 18:18:09
[2026-06-27 18:18:09,590.590 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:18:09,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:18:09,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:18:09,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:18:10,002.002 INFO    ] time= 27/06/2026 18:18:09
[2026-06-27 18:18:10,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:18:10,037.037 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:18:10,113.113 INFO    ] No existing commands found in stream
[2026-06-27 18:18:15,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:18:15,126.126 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-27 18:18:19,198.198 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 18:18:19,199.199 INFO    ] Checking for system updates...
[2026-06-27 18:18:19,220.220 INFO    ] 200
[2026-06-27 18:18:19,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:18:19,256.256 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:18:19,257.257 INFO    ] No update needed
[2026-06-27 18:18:19,258.258 INFO    ] Checking for camera pi updates...
[2026-06-27 18:18:19,278.278 INFO    ] 200
[2026-06-27 18:18:19,279.279 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:18:19,302.302 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:18:19,355.355 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:18:19,357.357 INFO    ] No camera update needed
[2026-06-27 18:18:19,358.358 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:18:19,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:18:19,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:18:19,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:18:21,403.403 INFO    ] ================================================
[2026-06-27 18:18:21,418.418 INFO    ] Launching Daemon at Sat Jun 27 18:18:21 IST 2026
[2026-06-27 18:18:21,429.429 INFO    ] ================================================
[2026-06-27 18:18:21,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:18:21
[2026-06-27 18:18:22,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:18:22,209.209 INFO    ] Initializing speech engine...
[2026-06-27 18:18:22,214.214 INFO    ] 2026-06-27 18:18:22
[2026-06-27 18:18:22,442.442 INFO    ] 2026-06-27 18:18:22
[2026-06-27 18:18:22,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:18:22,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:18:22,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:18:22,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:18:22,897.897 INFO    ] time= 27/06/2026 18:18:22
[2026-06-27 18:18:22,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:18:22,955.955 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:18:23,029.029 INFO    ] No existing commands found in stream
[2026-06-27 18:18:28,040.040 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:18:28,043.043 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-27 18:18:28,822.822 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:18:28,824.824 INFO    ] Checking for system updates...
[2026-06-27 18:18:28,844.844 INFO    ] 200
[2026-06-27 18:18:28,846.846 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:18:28,876.876 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:18:28,878.878 INFO    ] No update needed
[2026-06-27 18:18:28,879.879 INFO    ] Checking for camera pi updates...
[2026-06-27 18:18:28,898.898 INFO    ] 200
[2026-06-27 18:18:28,899.899 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:18:28,924.924 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:18:28,975.975 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:18:28,976.976 INFO    ] No camera update needed
[2026-06-27 18:18:28,977.977 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:18:28,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:18:28,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:18:28,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:18:31,023.023 INFO    ] ================================================
[2026-06-27 18:18:31,038.038 INFO    ] Launching Daemon at Sat Jun 27 18:18:31 IST 2026
[2026-06-27 18:18:31,049.049 INFO    ] ================================================
[2026-06-27 18:18:31,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:18:31
[2026-06-27 18:18:31,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:18:31,821.821 INFO    ] Initializing speech engine...
[2026-06-27 18:18:31,826.826 INFO    ] 2026-06-27 18:18:31
[2026-06-27 18:18:32,060.060 INFO    ] 2026-06-27 18:18:32
[2026-06-27 18:18:32,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:18:32,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:18:32,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:18:32,460.460 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:18:32,526.526 INFO    ] time= 27/06/2026 18:18:32
[2026-06-27 18:18:32,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:18:32,567.567 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:18:32,644.644 INFO    ] No existing commands found in stream
[2026-06-27 18:18:37,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:18:37,675.675 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-27 18:18:42,393.393 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 18:18:42,395.395 INFO    ] Checking for system updates...
[2026-06-27 18:18:42,429.429 INFO    ] 200
[2026-06-27 18:18:42,431.431 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:18:42,493.493 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:18:42,496.496 INFO    ] No update needed
[2026-06-27 18:18:42,499.499 INFO    ] Checking for camera pi updates...
[2026-06-27 18:18:42,521.521 INFO    ] 200
[2026-06-27 18:18:42,523.523 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:18:42,546.546 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:18:42,591.591 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:18:42,593.593 INFO    ] No camera update needed
[2026-06-27 18:18:42,594.594 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:18:42,596.596 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:18:42,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:18:42,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:18:44,644.644 INFO    ] ================================================
[2026-06-27 18:18:44,660.660 INFO    ] Launching Daemon at Sat Jun 27 18:18:44 IST 2026
[2026-06-27 18:18:44,670.670 INFO    ] ================================================
[2026-06-27 18:18:45,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:18:45
[2026-06-27 18:18:45,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:18:45,456.456 INFO    ] Initializing speech engine...
[2026-06-27 18:18:45,466.466 INFO    ] 2026-06-27 18:18:45
[2026-06-27 18:18:45,669.669 INFO    ] 2026-06-27 18:18:45
[2026-06-27 18:18:45,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:18:45,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:18:45,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:18:46,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:18:46,088.088 INFO    ] time= 27/06/2026 18:18:46
[2026-06-27 18:18:46,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:18:46,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:18:46,183.183 INFO    ] No existing commands found in stream
[2026-06-27 18:18:51,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:18:51,195.195 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-27 18:18:54,697.697 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 18:18:54,699.699 INFO    ] Checking for system updates...
[2026-06-27 18:18:54,720.720 INFO    ] 200
[2026-06-27 18:18:54,721.721 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:18:54,754.754 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:18:54,756.756 INFO    ] No update needed
[2026-06-27 18:18:54,757.757 INFO    ] Checking for camera pi updates...
[2026-06-27 18:18:54,776.776 INFO    ] 200
[2026-06-27 18:18:54,778.778 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:18:54,803.803 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:18:54,832.832 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:18:54,833.833 INFO    ] No camera update needed
[2026-06-27 18:18:54,835.835 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:18:54,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:18:54,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:18:54,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:18:56,880.880 INFO    ] ================================================
[2026-06-27 18:18:56,895.895 INFO    ] Launching Daemon at Sat Jun 27 18:18:56 IST 2026
[2026-06-27 18:18:56,906.906 INFO    ] ================================================
[2026-06-27 18:18:57,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:18:57
[2026-06-27 18:18:57,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:18:57,698.698 INFO    ] Initializing speech engine...
[2026-06-27 18:18:57,702.702 INFO    ] 2026-06-27 18:18:57
[2026-06-27 18:18:57,918.918 INFO    ] 2026-06-27 18:18:57
[2026-06-27 18:18:57,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:18:58,132.132 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:18:58,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:18:58,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:18:58,339.339 INFO    ] time= 27/06/2026 18:18:58
[2026-06-27 18:18:58,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:18:58,369.369 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:18:58,436.436 INFO    ] No existing commands found in stream
[2026-06-27 18:19:03,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:19:03,453.453 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-27 18:19:04,027.027 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:19:04,029.029 INFO    ] Checking for system updates...
[2026-06-27 18:19:04,051.051 INFO    ] 200
[2026-06-27 18:19:04,052.052 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:19:04,082.082 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:19:04,084.084 INFO    ] No update needed
[2026-06-27 18:19:04,085.085 INFO    ] Checking for camera pi updates...
[2026-06-27 18:19:04,105.105 INFO    ] 200
[2026-06-27 18:19:04,106.106 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:19:04,129.129 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:19:04,274.274 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:19:04,276.276 INFO    ] No camera update needed
[2026-06-27 18:19:04,277.277 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:19:04,278.278 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:19:04,281.281 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:19:04,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:19:06,324.324 INFO    ] ================================================
[2026-06-27 18:19:06,339.339 INFO    ] Launching Daemon at Sat Jun 27 18:19:06 IST 2026
[2026-06-27 18:19:06,350.350 INFO    ] ================================================
[2026-06-27 18:19:06,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:19:06
[2026-06-27 18:19:07,045.045 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:19:07,184.184 INFO    ] Initializing speech engine...
[2026-06-27 18:19:07,194.194 INFO    ] 2026-06-27 18:19:07
[2026-06-27 18:19:07,399.399 INFO    ] 2026-06-27 18:19:07
[2026-06-27 18:19:07,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:19:07,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:19:07,625.625 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:19:07,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:19:07,811.811 INFO    ] time= 27/06/2026 18:19:07
[2026-06-27 18:19:07,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:19:07,846.846 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:19:07,917.917 INFO    ] No existing commands found in stream
[2026-06-27 18:19:12,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:19:12,934.934 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-27 18:19:16,532.532 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 18:19:16,534.534 INFO    ] Checking for system updates...
[2026-06-27 18:19:16,555.555 INFO    ] 200
[2026-06-27 18:19:16,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:19:16,588.588 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:19:16,590.590 INFO    ] No update needed
[2026-06-27 18:19:16,591.591 INFO    ] Checking for camera pi updates...
[2026-06-27 18:19:16,611.611 INFO    ] 200
[2026-06-27 18:19:16,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:19:16,639.639 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:19:16,686.686 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:19:16,687.687 INFO    ] No camera update needed
[2026-06-27 18:19:16,688.688 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:19:16,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:19:16,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:19:16,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:19:18,737.737 INFO    ] ================================================
[2026-06-27 18:19:18,752.752 INFO    ] Launching Daemon at Sat Jun 27 18:19:18 IST 2026
[2026-06-27 18:19:18,762.762 INFO    ] ================================================
[2026-06-27 18:19:19,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:19:19
[2026-06-27 18:19:19,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:19:19,582.582 INFO    ] Initializing speech engine...
[2026-06-27 18:19:19,592.592 INFO    ] 2026-06-27 18:19:19
[2026-06-27 18:19:19,798.798 INFO    ] 2026-06-27 18:19:19
[2026-06-27 18:19:19,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:19:20,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:19:20,023.023 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:19:20,152.152 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:19:20,220.220 INFO    ] time= 27/06/2026 18:19:20
[2026-06-27 18:19:20,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:19:20,250.250 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:19:20,322.322 INFO    ] No existing commands found in stream
[2026-06-27 18:19:25,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:19:25,339.339 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-27 18:19:27,208.208 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:19:27,209.209 INFO    ] Checking for system updates...
[2026-06-27 18:19:27,231.231 INFO    ] 200
[2026-06-27 18:19:27,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:19:27,262.262 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:19:27,264.264 INFO    ] No update needed
[2026-06-27 18:19:27,266.266 INFO    ] Checking for camera pi updates...
[2026-06-27 18:19:27,286.286 INFO    ] 200
[2026-06-27 18:19:27,287.287 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:19:27,310.310 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:19:27,352.352 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:19:27,353.353 INFO    ] No camera update needed
[2026-06-27 18:19:27,355.355 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:19:27,356.356 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:19:27,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:19:27,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:19:29,401.401 INFO    ] ================================================
[2026-06-27 18:19:29,416.416 INFO    ] Launching Daemon at Sat Jun 27 18:19:29 IST 2026
[2026-06-27 18:19:29,427.427 INFO    ] ================================================
[2026-06-27 18:19:29,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:19:29
[2026-06-27 18:19:30,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:19:30,234.234 INFO    ] Initializing speech engine...
[2026-06-27 18:19:30,243.243 INFO    ] 2026-06-27 18:19:30
[2026-06-27 18:19:30,449.449 INFO    ] 2026-06-27 18:19:30
[2026-06-27 18:19:30,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:19:30,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:19:30,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:19:30,853.853 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:19:30,882.882 INFO    ] time= 27/06/2026 18:19:30
[2026-06-27 18:19:30,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:19:30,898.898 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:19:30,966.966 INFO    ] No existing commands found in stream
[2026-06-27 18:19:35,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:19:35,979.979 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-27 18:19:38,646.646 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:19:38,647.647 INFO    ] Checking for system updates...
[2026-06-27 18:19:38,668.668 INFO    ] 200
[2026-06-27 18:19:38,670.670 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:19:38,700.700 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:19:38,702.702 INFO    ] No update needed
[2026-06-27 18:19:38,703.703 INFO    ] Checking for camera pi updates...
[2026-06-27 18:19:38,723.723 INFO    ] 200
[2026-06-27 18:19:38,725.725 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:19:38,749.749 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:19:38,796.796 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:19:38,798.798 INFO    ] No camera update needed
[2026-06-27 18:19:38,799.799 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:19:38,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:19:38,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:19:38,807.807 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:19:40,845.845 INFO    ] ================================================
[2026-06-27 18:19:40,860.860 INFO    ] Launching Daemon at Sat Jun 27 18:19:40 IST 2026
[2026-06-27 18:19:40,870.870 INFO    ] ================================================
[2026-06-27 18:19:41,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:19:41
[2026-06-27 18:19:41,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:19:41,666.666 INFO    ] Initializing speech engine...
[2026-06-27 18:19:41,671.671 INFO    ] 2026-06-27 18:19:41
[2026-06-27 18:19:41,874.874 INFO    ] 2026-06-27 18:19:41
[2026-06-27 18:19:41,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:19:42,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:19:42,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:19:42,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:19:42,297.297 INFO    ] time= 27/06/2026 18:19:42
[2026-06-27 18:19:42,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:19:42,327.327 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:19:42,418.418 INFO    ] No existing commands found in stream
[2026-06-27 18:19:47,427.427 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:19:47,430.430 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-27 18:19:48,710.710 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:19:48,711.711 INFO    ] Checking for system updates...
[2026-06-27 18:19:48,734.734 INFO    ] 200
[2026-06-27 18:19:48,735.735 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:19:48,766.766 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:19:48,768.768 INFO    ] No update needed
[2026-06-27 18:19:48,769.769 INFO    ] Checking for camera pi updates...
[2026-06-27 18:19:48,789.789 INFO    ] 200
[2026-06-27 18:19:48,791.791 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:19:48,815.815 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:19:48,865.865 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:19:48,867.867 INFO    ] No camera update needed
[2026-06-27 18:19:48,868.868 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:19:48,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:19:48,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:19:48,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:19:50,913.913 INFO    ] ================================================
[2026-06-27 18:19:50,928.928 INFO    ] Launching Daemon at Sat Jun 27 18:19:50 IST 2026
[2026-06-27 18:19:50,939.939 INFO    ] ================================================
[2026-06-27 18:19:51,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:19:51
[2026-06-27 18:19:51,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:19:51,742.742 INFO    ] Initializing speech engine...
[2026-06-27 18:19:51,747.747 INFO    ] 2026-06-27 18:19:51
[2026-06-27 18:19:51,952.952 INFO    ] 2026-06-27 18:19:51
[2026-06-27 18:19:51,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:19:52,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:19:52,174.174 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:19:52,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:19:52,367.367 INFO    ] time= 27/06/2026 18:19:52
[2026-06-27 18:19:52,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:19:52,397.397 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:19:52,464.464 INFO    ] No existing commands found in stream
[2026-06-27 18:19:57,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:19:57,476.476 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-27 18:19:59,319.319 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:19:59,321.321 INFO    ] Checking for system updates...
[2026-06-27 18:19:59,341.341 INFO    ] 200
[2026-06-27 18:19:59,343.343 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:19:59,373.373 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:19:59,375.375 INFO    ] No update needed
[2026-06-27 18:19:59,376.376 INFO    ] Checking for camera pi updates...
[2026-06-27 18:19:59,395.395 INFO    ] 200
[2026-06-27 18:19:59,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:19:59,420.420 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:19:59,461.461 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:19:59,462.462 INFO    ] No camera update needed
[2026-06-27 18:19:59,464.464 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:19:59,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:19:59,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:19:59,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:20:01,520.520 INFO    ] ================================================
[2026-06-27 18:20:01,594.594 INFO    ] Launching Daemon at Sat Jun 27 18:20:01 IST 2026
[2026-06-27 18:20:01,617.617 INFO    ] ================================================
[2026-06-27 18:20:02,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:20:02
[2026-06-27 18:20:02,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:20:02,565.565 INFO    ] Initializing speech engine...
[2026-06-27 18:20:02,569.569 INFO    ] 2026-06-27 18:20:02
[2026-06-27 18:20:02,780.780 INFO    ] 2026-06-27 18:20:02
[2026-06-27 18:20:02,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:20:02,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:20:02,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:20:03,150.150 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:20:03,193.193 INFO    ] time= 27/06/2026 18:20:03
[2026-06-27 18:20:03,234.234 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:20:03,240.240 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:20:03,305.305 INFO    ] No existing commands found in stream
[2026-06-27 18:20:08,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:20:08,319.319 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-27 18:20:10,156.156 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 18:20:10,157.157 INFO    ] Checking for system updates...
[2026-06-27 18:20:10,179.179 INFO    ] 200
[2026-06-27 18:20:10,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:20:10,210.210 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:20:10,212.212 INFO    ] No update needed
[2026-06-27 18:20:10,213.213 INFO    ] Checking for camera pi updates...
[2026-06-27 18:20:10,234.234 INFO    ] 200
[2026-06-27 18:20:10,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:20:10,261.261 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:20:10,306.306 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:20:10,307.307 INFO    ] No camera update needed
[2026-06-27 18:20:10,308.308 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:20:10,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:20:10,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:20:10,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:20:12,355.355 INFO    ] ================================================
[2026-06-27 18:20:12,370.370 INFO    ] Launching Daemon at Sat Jun 27 18:20:12 IST 2026
[2026-06-27 18:20:12,380.380 INFO    ] ================================================
[2026-06-27 18:20:12,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:20:12
[2026-06-27 18:20:13,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:20:13,213.213 INFO    ] Initializing speech engine...
[2026-06-27 18:20:13,216.216 INFO    ] 2026-06-27 18:20:13
[2026-06-27 18:20:13,450.450 INFO    ] 2026-06-27 18:20:13
[2026-06-27 18:20:13,480.480 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:20:13,650.650 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:20:13,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:20:13,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:20:13,875.875 INFO    ] time= 27/06/2026 18:20:13
[2026-06-27 18:20:13,910.910 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:20:13,916.916 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:20:13,983.983 INFO    ] No existing commands found in stream
[2026-06-27 18:20:18,993.993 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:20:18,996.996 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-27 18:20:19,554.554 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 18:20:19,556.556 INFO    ] Checking for system updates...
[2026-06-27 18:20:19,577.577 INFO    ] 200
[2026-06-27 18:20:19,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:20:19,609.609 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:20:19,610.610 INFO    ] No update needed
[2026-06-27 18:20:19,612.612 INFO    ] Checking for camera pi updates...
[2026-06-27 18:20:19,631.631 INFO    ] 200
[2026-06-27 18:20:19,633.633 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:20:19,659.659 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:20:19,708.708 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:20:19,709.709 INFO    ] No camera update needed
[2026-06-27 18:20:19,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:20:19,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:20:19,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:20:19,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:20:21,759.759 INFO    ] ================================================
[2026-06-27 18:20:21,774.774 INFO    ] Launching Daemon at Sat Jun 27 18:20:21 IST 2026
[2026-06-27 18:20:21,785.785 INFO    ] ================================================
[2026-06-27 18:20:22,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:20:22
[2026-06-27 18:20:22,487.487 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:20:22,641.641 INFO    ] Initializing speech engine...
[2026-06-27 18:20:22,645.645 INFO    ] 2026-06-27 18:20:22
[2026-06-27 18:20:22,857.857 INFO    ] 2026-06-27 18:20:22
[2026-06-27 18:20:22,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:20:23,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:20:23,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:20:23,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:20:23,283.283 INFO    ] time= 27/06/2026 18:20:23
[2026-06-27 18:20:23,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:20:23,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:20:23,380.380 INFO    ] No existing commands found in stream
[2026-06-27 18:20:28,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:20:28,398.398 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-27 18:20:29,393.393 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 18:20:29,395.395 INFO    ] Checking for system updates...
[2026-06-27 18:20:29,416.416 INFO    ] 200
[2026-06-27 18:20:29,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:20:29,448.448 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:20:29,449.449 INFO    ] No update needed
[2026-06-27 18:20:29,451.451 INFO    ] Checking for camera pi updates...
[2026-06-27 18:20:29,471.471 INFO    ] 200
[2026-06-27 18:20:29,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:20:29,498.498 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:20:29,540.540 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:20:29,542.542 INFO    ] No camera update needed
[2026-06-27 18:20:29,543.543 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:20:29,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:20:29,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:20:29,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:20:31,582.582 INFO    ] ================================================
[2026-06-27 18:20:31,592.592 INFO    ] Launching Daemon at Sat Jun 27 18:20:31 IST 2026
[2026-06-27 18:20:31,598.598 INFO    ] ================================================
[2026-06-27 18:20:31,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:20:31
[2026-06-27 18:20:32,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:20:32,480.480 INFO    ] Initializing speech engine...
[2026-06-27 18:20:32,484.484 INFO    ] 2026-06-27 18:20:32
[2026-06-27 18:20:32,688.688 INFO    ] 2026-06-27 18:20:32
[2026-06-27 18:20:32,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:20:32,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:20:33,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:20:33,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:20:33,233.233 INFO    ] time= 27/06/2026 18:20:33
[2026-06-27 18:20:33,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:20:33,266.266 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:20:33,340.340 INFO    ] No existing commands found in stream
[2026-06-27 18:20:38,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:20:38,353.353 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-27 18:20:40,268.268 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 18:20:40,269.269 INFO    ] Checking for system updates...
[2026-06-27 18:20:40,291.291 INFO    ] 200
[2026-06-27 18:20:40,293.293 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:20:40,325.325 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:20:40,327.327 INFO    ] No update needed
[2026-06-27 18:20:40,328.328 INFO    ] Checking for camera pi updates...
[2026-06-27 18:20:40,347.347 INFO    ] 200
[2026-06-27 18:20:40,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:20:40,372.372 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:20:40,414.414 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:20:40,415.415 INFO    ] No camera update needed
[2026-06-27 18:20:40,416.416 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:20:40,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:20:40,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:20:40,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:20:42,463.463 INFO    ] ================================================
[2026-06-27 18:20:42,478.478 INFO    ] Launching Daemon at Sat Jun 27 18:20:42 IST 2026
[2026-06-27 18:20:42,489.489 INFO    ] ================================================
[2026-06-27 18:20:42,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:20:42
[2026-06-27 18:20:43,217.217 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:20:43,373.373 INFO    ] Initializing speech engine...
[2026-06-27 18:20:43,379.379 INFO    ] 2026-06-27 18:20:43
[2026-06-27 18:20:43,591.591 INFO    ] 2026-06-27 18:20:43
[2026-06-27 18:20:43,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:20:43,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:20:43,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:20:43,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:20:44,022.022 INFO    ] time= 27/06/2026 18:20:43
[2026-06-27 18:20:44,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:20:44,051.051 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:20:44,121.121 INFO    ] No existing commands found in stream
[2026-06-27 18:20:49,131.131 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:20:49,134.134 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-27 18:20:51,268.268 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 18:20:51,270.270 INFO    ] Checking for system updates...
[2026-06-27 18:20:51,291.291 INFO    ] 200
[2026-06-27 18:20:51,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:20:51,325.325 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:20:51,326.326 INFO    ] No update needed
[2026-06-27 18:20:51,327.327 INFO    ] Checking for camera pi updates...
[2026-06-27 18:20:51,347.347 INFO    ] 200
[2026-06-27 18:20:51,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:20:51,373.373 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:20:51,414.414 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:20:51,416.416 INFO    ] No camera update needed
[2026-06-27 18:20:51,417.417 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:20:51,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:20:51,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:20:51,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:20:53,465.465 INFO    ] ================================================
[2026-06-27 18:20:53,480.480 INFO    ] Launching Daemon at Sat Jun 27 18:20:53 IST 2026
[2026-06-27 18:20:53,491.491 INFO    ] ================================================
[2026-06-27 18:20:53,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:20:53
[2026-06-27 18:20:54,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:20:54,288.288 INFO    ] Initializing speech engine...
[2026-06-27 18:20:54,293.293 INFO    ] 2026-06-27 18:20:54
[2026-06-27 18:20:54,498.498 INFO    ] 2026-06-27 18:20:54
[2026-06-27 18:20:54,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:20:54,715.715 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:20:54,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:20:54,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:20:54,915.915 INFO    ] time= 27/06/2026 18:20:54
[2026-06-27 18:20:54,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:20:54,955.955 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:20:55,022.022 INFO    ] No existing commands found in stream
[2026-06-27 18:21:00,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:21:00,033.033 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-27 18:21:03,742.742 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 18:21:03,745.745 INFO    ] Checking for system updates...
[2026-06-27 18:21:03,781.781 INFO    ] 200
[2026-06-27 18:21:03,784.784 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:21:03,844.844 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:21:03,847.847 INFO    ] No update needed
[2026-06-27 18:21:03,849.849 INFO    ] Checking for camera pi updates...
[2026-06-27 18:21:03,870.870 INFO    ] 200
[2026-06-27 18:21:03,872.872 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:21:03,897.897 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:21:03,925.925 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:21:03,926.926 INFO    ] No camera update needed
[2026-06-27 18:21:03,928.928 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:21:03,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:21:03,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:21:03,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:21:05,957.957 INFO    ] ================================================
[2026-06-27 18:21:05,966.966 INFO    ] Launching Daemon at Sat Jun 27 18:21:05 IST 2026
[2026-06-27 18:21:05,972.972 INFO    ] ================================================
[2026-06-27 18:21:06,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:21:06
[2026-06-27 18:21:06,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:21:06,724.724 INFO    ] Initializing speech engine...
[2026-06-27 18:21:06,734.734 INFO    ] 2026-06-27 18:21:06
[2026-06-27 18:21:06,942.942 INFO    ] 2026-06-27 18:21:06
[2026-06-27 18:21:06,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:21:07,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:21:07,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:21:07,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:21:07,389.389 INFO    ] time= 27/06/2026 18:21:07
[2026-06-27 18:21:07,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:21:07,396.396 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:21:07,464.464 INFO    ] No existing commands found in stream
[2026-06-27 18:21:12,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:21:12,475.475 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-27 18:21:14,424.424 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:21:14,426.426 INFO    ] Checking for system updates...
[2026-06-27 18:21:14,447.447 INFO    ] 200
[2026-06-27 18:21:14,448.448 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:21:14,479.479 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:21:14,480.480 INFO    ] No update needed
[2026-06-27 18:21:14,481.481 INFO    ] Checking for camera pi updates...
[2026-06-27 18:21:14,501.501 INFO    ] 200
[2026-06-27 18:21:14,502.502 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:21:14,528.528 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:21:14,667.667 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:21:14,669.669 INFO    ] No camera update needed
[2026-06-27 18:21:14,670.670 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:21:14,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:21:14,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:21:14,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:21:16,716.716 INFO    ] ================================================
[2026-06-27 18:21:16,731.731 INFO    ] Launching Daemon at Sat Jun 27 18:21:16 IST 2026
[2026-06-27 18:21:16,741.741 INFO    ] ================================================
[2026-06-27 18:21:17,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:21:17
[2026-06-27 18:21:17,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:21:17,565.565 INFO    ] Initializing speech engine...
[2026-06-27 18:21:17,569.569 INFO    ] 2026-06-27 18:21:17
[2026-06-27 18:21:17,796.796 INFO    ] 2026-06-27 18:21:17
[2026-06-27 18:21:17,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:21:18,014.014 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:21:18,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:21:18,177.177 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:21:18,248.248 INFO    ] time= 27/06/2026 18:21:18
[2026-06-27 18:21:18,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:21:18,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:21:18,328.328 INFO    ] No existing commands found in stream
[2026-06-27 18:21:23,337.337 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:21:23,341.341 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-27 18:21:26,087.087 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:21:26,089.089 INFO    ] Checking for system updates...
[2026-06-27 18:21:26,110.110 INFO    ] 200
[2026-06-27 18:21:26,111.111 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:21:26,145.145 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:21:26,146.146 INFO    ] No update needed
[2026-06-27 18:21:26,148.148 INFO    ] Checking for camera pi updates...
[2026-06-27 18:21:26,172.172 INFO    ] 200
[2026-06-27 18:21:26,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:21:26,204.204 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:21:26,257.257 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:21:26,259.259 INFO    ] No camera update needed
[2026-06-27 18:21:26,260.260 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:21:26,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:21:26,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:21:26,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:21:28,309.309 INFO    ] ================================================
[2026-06-27 18:21:28,324.324 INFO    ] Launching Daemon at Sat Jun 27 18:21:28 IST 2026
[2026-06-27 18:21:28,335.335 INFO    ] ================================================
[2026-06-27 18:21:28,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:21:28
[2026-06-27 18:21:29,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:21:29,164.164 INFO    ] Initializing speech engine...
[2026-06-27 18:21:29,171.171 INFO    ] 2026-06-27 18:21:29
[2026-06-27 18:21:29,380.380 INFO    ] 2026-06-27 18:21:29
[2026-06-27 18:21:29,409.409 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:21:29,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:21:29,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:21:29,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:21:29,805.805 INFO    ] time= 27/06/2026 18:21:29
[2026-06-27 18:21:29,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:21:29,834.834 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:21:29,902.902 INFO    ] No existing commands found in stream
[2026-06-27 18:21:34,927.927 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:21:34,930.930 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-27 18:21:38,836.836 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 18:21:38,839.839 INFO    ] Checking for system updates...
[2026-06-27 18:21:38,907.907 INFO    ] 200
[2026-06-27 18:21:38,910.910 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:21:38,949.949 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:21:38,951.951 INFO    ] No update needed
[2026-06-27 18:21:38,952.952 INFO    ] Checking for camera pi updates...
[2026-06-27 18:21:38,985.985 INFO    ] 200
[2026-06-27 18:21:38,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:21:39,010.010 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:21:39,061.061 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:21:39,062.062 INFO    ] No camera update needed
[2026-06-27 18:21:39,063.063 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:21:39,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:21:39,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:21:39,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:21:41,109.109 INFO    ] ================================================
[2026-06-27 18:21:41,125.125 INFO    ] Launching Daemon at Sat Jun 27 18:21:41 IST 2026
[2026-06-27 18:21:41,136.136 INFO    ] ================================================
[2026-06-27 18:21:41,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:21:41
[2026-06-27 18:21:41,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:21:42,004.004 INFO    ] Initializing speech engine...
[2026-06-27 18:21:42,017.017 INFO    ] 2026-06-27 18:21:42
[2026-06-27 18:21:42,222.222 INFO    ] 2026-06-27 18:21:42
[2026-06-27 18:21:42,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:21:42,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:21:42,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:21:42,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:21:42,643.643 INFO    ] time= 27/06/2026 18:21:42
[2026-06-27 18:21:42,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:21:42,671.671 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:21:42,739.739 INFO    ] No existing commands found in stream
[2026-06-27 18:21:47,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:21:47,750.750 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-27 18:21:48,888.888 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:21:48,889.889 INFO    ] Checking for system updates...
[2026-06-27 18:21:48,912.912 INFO    ] 200
[2026-06-27 18:21:48,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:21:48,947.947 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:21:48,948.948 INFO    ] No update needed
[2026-06-27 18:21:48,949.949 INFO    ] Checking for camera pi updates...
[2026-06-27 18:21:48,969.969 INFO    ] 200
[2026-06-27 18:21:48,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:21:48,995.995 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:21:49,043.043 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:21:49,045.045 INFO    ] No camera update needed
[2026-06-27 18:21:49,046.046 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:21:49,047.047 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:21:49,050.050 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:21:49,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:21:51,091.091 INFO    ] ================================================
[2026-06-27 18:21:51,107.107 INFO    ] Launching Daemon at Sat Jun 27 18:21:51 IST 2026
[2026-06-27 18:21:51,119.119 INFO    ] ================================================
[2026-06-27 18:21:51,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:21:51
[2026-06-27 18:21:51,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:21:51,917.917 INFO    ] Initializing speech engine...
[2026-06-27 18:21:51,923.923 INFO    ] 2026-06-27 18:21:51
[2026-06-27 18:21:52,128.128 INFO    ] 2026-06-27 18:21:52
[2026-06-27 18:21:52,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:21:52,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:21:52,354.354 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:21:52,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:21:52,556.556 INFO    ] time= 27/06/2026 18:21:52
[2026-06-27 18:21:52,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:21:52,585.585 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:21:52,653.653 INFO    ] No existing commands found in stream
[2026-06-27 18:21:57,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:21:57,665.665 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-27 18:22:02,081.081 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 18:22:02,087.087 INFO    ] Checking for system updates...
[2026-06-27 18:22:02,116.116 INFO    ] 200
[2026-06-27 18:22:02,118.118 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:22:02,199.199 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:22:02,202.202 INFO    ] No update needed
[2026-06-27 18:22:02,204.204 INFO    ] Checking for camera pi updates...
[2026-06-27 18:22:02,245.245 INFO    ] 200
[2026-06-27 18:22:02,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:22:02,279.279 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:22:02,310.310 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:22:02,312.312 INFO    ] No camera update needed
[2026-06-27 18:22:02,314.314 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:22:02,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:22:02,320.320 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:22:02,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:22:04,363.363 INFO    ] ================================================
[2026-06-27 18:22:04,379.379 INFO    ] Launching Daemon at Sat Jun 27 18:22:04 IST 2026
[2026-06-27 18:22:04,391.391 INFO    ] ================================================
[2026-06-27 18:22:04,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:22:04
[2026-06-27 18:22:05,060.060 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:22:05,201.201 INFO    ] Initializing speech engine...
[2026-06-27 18:22:05,212.212 INFO    ] 2026-06-27 18:22:05
[2026-06-27 18:22:05,416.416 INFO    ] 2026-06-27 18:22:05
[2026-06-27 18:22:05,444.444 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:22:05,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:22:05,630.630 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:22:05,768.768 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:22:05,835.835 INFO    ] time= 27/06/2026 18:22:05
[2026-06-27 18:22:05,859.859 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:22:05,865.865 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:22:05,932.932 INFO    ] No existing commands found in stream
[2026-06-27 18:22:10,941.941 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:22:10,944.944 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-27 18:22:15,154.154 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 18:22:15,156.156 INFO    ] Checking for system updates...
[2026-06-27 18:22:15,177.177 INFO    ] 200
[2026-06-27 18:22:15,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:22:15,209.209 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:22:15,210.210 INFO    ] No update needed
[2026-06-27 18:22:15,211.211 INFO    ] Checking for camera pi updates...
[2026-06-27 18:22:15,231.231 INFO    ] 200
[2026-06-27 18:22:15,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:22:15,258.258 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:22:15,317.317 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:22:15,318.318 INFO    ] No camera update needed
[2026-06-27 18:22:15,320.320 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:22:15,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:22:15,324.324 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:22:15,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:22:17,367.367 INFO    ] ================================================
[2026-06-27 18:22:17,383.383 INFO    ] Launching Daemon at Sat Jun 27 18:22:17 IST 2026
[2026-06-27 18:22:17,394.394 INFO    ] ================================================
[2026-06-27 18:22:17,736.736 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:22:17
[2026-06-27 18:22:18,054.054 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:22:18,198.198 INFO    ] Initializing speech engine...
[2026-06-27 18:22:18,204.204 INFO    ] 2026-06-27 18:22:18
[2026-06-27 18:22:18,407.407 INFO    ] 2026-06-27 18:22:18
[2026-06-27 18:22:18,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:22:18,621.621 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:22:18,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:22:18,776.776 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:22:18,830.830 INFO    ] time= 27/06/2026 18:22:18
[2026-06-27 18:22:18,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:22:18,858.858 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:22:18,925.925 INFO    ] No existing commands found in stream
[2026-06-27 18:22:23,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:22:23,941.941 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-27 18:22:26,759.759 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:22:26,761.761 INFO    ] Checking for system updates...
[2026-06-27 18:22:26,783.783 INFO    ] 200
[2026-06-27 18:22:26,784.784 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:22:26,814.814 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:22:26,816.816 INFO    ] No update needed
[2026-06-27 18:22:26,817.817 INFO    ] Checking for camera pi updates...
[2026-06-27 18:22:26,837.837 INFO    ] 200
[2026-06-27 18:22:26,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:22:26,861.861 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:22:26,905.905 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:22:26,908.908 INFO    ] No camera update needed
[2026-06-27 18:22:26,910.910 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:22:26,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:22:26,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:22:26,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:22:28,959.959 INFO    ] ================================================
[2026-06-27 18:22:28,968.968 INFO    ] Launching Daemon at Sat Jun 27 18:22:28 IST 2026
[2026-06-27 18:22:28,974.974 INFO    ] ================================================
[2026-06-27 18:22:29,278.278 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:22:29
[2026-06-27 18:22:29,594.594 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:22:29,733.733 INFO    ] Initializing speech engine...
[2026-06-27 18:22:29,743.743 INFO    ] 2026-06-27 18:22:29
[2026-06-27 18:22:29,943.943 INFO    ] 2026-06-27 18:22:29
[2026-06-27 18:22:29,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:22:30,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:22:30,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:22:30,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:22:30,476.476 INFO    ] time= 27/06/2026 18:22:30
[2026-06-27 18:22:30,483.483 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:22:30,490.490 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:22:30,565.565 INFO    ] No existing commands found in stream
[2026-06-27 18:22:35,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:22:35,575.575 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-27 18:22:36,664.664 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:22:36,665.665 INFO    ] Checking for system updates...
[2026-06-27 18:22:36,686.686 INFO    ] 200
[2026-06-27 18:22:36,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:22:36,719.719 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:22:36,721.721 INFO    ] No update needed
[2026-06-27 18:22:36,722.722 INFO    ] Checking for camera pi updates...
[2026-06-27 18:22:36,741.741 INFO    ] 200
[2026-06-27 18:22:36,742.742 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:22:36,768.768 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:22:36,815.815 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:22:36,816.816 INFO    ] No camera update needed
[2026-06-27 18:22:36,817.817 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:22:36,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:22:36,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:22:36,824.824 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:22:38,862.862 INFO    ] ================================================
[2026-06-27 18:22:38,878.878 INFO    ] Launching Daemon at Sat Jun 27 18:22:38 IST 2026
[2026-06-27 18:22:38,889.889 INFO    ] ================================================
[2026-06-27 18:22:39,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:22:39
[2026-06-27 18:22:39,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:22:39,657.657 INFO    ] Initializing speech engine...
[2026-06-27 18:22:39,666.666 INFO    ] 2026-06-27 18:22:39
[2026-06-27 18:22:39,880.880 INFO    ] 2026-06-27 18:22:39
[2026-06-27 18:22:39,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:22:40,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:22:40,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:22:40,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:22:40,295.295 INFO    ] time= 27/06/2026 18:22:40
[2026-06-27 18:22:40,329.329 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:22:40,335.335 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:22:40,402.402 INFO    ] No existing commands found in stream
[2026-06-27 18:22:45,411.411 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:22:45,414.414 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-27 18:22:46,645.645 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:22:46,647.647 INFO    ] Checking for system updates...
[2026-06-27 18:22:46,668.668 INFO    ] 200
[2026-06-27 18:22:46,669.669 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:22:46,700.700 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:22:46,701.701 INFO    ] No update needed
[2026-06-27 18:22:46,702.702 INFO    ] Checking for camera pi updates...
[2026-06-27 18:22:46,722.722 INFO    ] 200
[2026-06-27 18:22:46,723.723 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:22:46,747.747 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:22:46,773.773 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:22:46,774.774 INFO    ] No camera update needed
[2026-06-27 18:22:46,775.775 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:22:46,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:22:46,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:22:46,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:22:48,820.820 INFO    ] ================================================
[2026-06-27 18:22:48,836.836 INFO    ] Launching Daemon at Sat Jun 27 18:22:48 IST 2026
[2026-06-27 18:22:48,846.846 INFO    ] ================================================
[2026-06-27 18:22:49,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:22:49
[2026-06-27 18:22:49,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:22:49,652.652 INFO    ] Initializing speech engine...
[2026-06-27 18:22:49,657.657 INFO    ] 2026-06-27 18:22:49
[2026-06-27 18:22:49,862.862 INFO    ] 2026-06-27 18:22:49
[2026-06-27 18:22:49,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:22:50,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:22:50,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:22:50,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:22:50,288.288 INFO    ] time= 27/06/2026 18:22:50
[2026-06-27 18:22:50,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:22:50,317.317 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:22:50,384.384 INFO    ] No existing commands found in stream
[2026-06-27 18:22:55,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:22:55,396.396 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-27 18:22:58,845.845 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:22:58,846.846 INFO    ] Checking for system updates...
[2026-06-27 18:22:58,868.868 INFO    ] 200
[2026-06-27 18:22:58,869.869 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:22:58,899.899 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:22:58,900.900 INFO    ] No update needed
[2026-06-27 18:22:58,901.901 INFO    ] Checking for camera pi updates...
[2026-06-27 18:22:58,923.923 INFO    ] 200
[2026-06-27 18:22:58,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:22:58,947.947 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:22:58,992.992 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:22:58,994.994 INFO    ] No camera update needed
[2026-06-27 18:22:58,995.995 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:22:58,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:22:58,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:22:59,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:23:01,040.040 INFO    ] ================================================
[2026-06-27 18:23:01,055.055 INFO    ] Launching Daemon at Sat Jun 27 18:23:01 IST 2026
[2026-06-27 18:23:01,067.067 INFO    ] ================================================
[2026-06-27 18:23:01,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:23:01
[2026-06-27 18:23:01,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:23:02,020.020 INFO    ] Initializing speech engine...
[2026-06-27 18:23:02,026.026 INFO    ] 2026-06-27 18:23:02
[2026-06-27 18:23:02,283.283 INFO    ] 2026-06-27 18:23:02
[2026-06-27 18:23:02,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:23:02,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:23:02,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:23:02,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:23:02,765.765 INFO    ] time= 27/06/2026 18:23:02
[2026-06-27 18:23:02,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:23:02,790.790 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:23:02,860.860 INFO    ] No existing commands found in stream
[2026-06-27 18:23:07,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:23:07,878.878 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-27 18:23:11,980.980 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:23:11,982.982 INFO    ] Checking for system updates...
[2026-06-27 18:23:12,004.004 INFO    ] 200
[2026-06-27 18:23:12,005.005 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:23:12,036.036 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:23:12,038.038 INFO    ] No update needed
[2026-06-27 18:23:12,039.039 INFO    ] Checking for camera pi updates...
[2026-06-27 18:23:12,062.062 INFO    ] 200
[2026-06-27 18:23:12,063.063 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:23:12,090.090 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:23:12,142.142 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:23:12,143.143 INFO    ] No camera update needed
[2026-06-27 18:23:12,145.145 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:23:12,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:23:12,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:23:12,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:23:14,194.194 INFO    ] ================================================
[2026-06-27 18:23:14,211.211 INFO    ] Launching Daemon at Sat Jun 27 18:23:14 IST 2026
[2026-06-27 18:23:14,223.223 INFO    ] ================================================
[2026-06-27 18:23:14,574.574 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:23:14
[2026-06-27 18:23:14,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:23:15,021.021 INFO    ] Initializing speech engine...
[2026-06-27 18:23:15,026.026 INFO    ] 2026-06-27 18:23:15
[2026-06-27 18:23:15,244.244 INFO    ] 2026-06-27 18:23:15
[2026-06-27 18:23:15,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:23:15,398.398 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:23:15,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:23:15,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:23:15,665.665 INFO    ] time= 27/06/2026 18:23:15
[2026-06-27 18:23:15,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:23:15,700.700 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:23:15,768.768 INFO    ] No existing commands found in stream
[2026-06-27 18:23:20,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:23:20,779.779 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-27 18:23:23,320.320 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 18:23:23,322.322 INFO    ] Checking for system updates...
[2026-06-27 18:23:23,342.342 INFO    ] 200
[2026-06-27 18:23:23,344.344 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:23:23,377.377 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:23:23,378.378 INFO    ] No update needed
[2026-06-27 18:23:23,379.379 INFO    ] Checking for camera pi updates...
[2026-06-27 18:23:23,400.400 INFO    ] 200
[2026-06-27 18:23:23,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:23:23,425.425 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:23:23,567.567 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:23:23,569.569 INFO    ] No camera update needed
[2026-06-27 18:23:23,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:23:23,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:23:23,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:23:23,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:23:25,615.615 INFO    ] ================================================
[2026-06-27 18:23:25,631.631 INFO    ] Launching Daemon at Sat Jun 27 18:23:25 IST 2026
[2026-06-27 18:23:25,642.642 INFO    ] ================================================
[2026-06-27 18:23:26,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:23:26
[2026-06-27 18:23:26,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:23:26,466.466 INFO    ] Initializing speech engine...
[2026-06-27 18:23:26,476.476 INFO    ] 2026-06-27 18:23:26
[2026-06-27 18:23:26,679.679 INFO    ] 2026-06-27 18:23:26
[2026-06-27 18:23:26,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:23:26,892.892 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:23:26,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:23:27,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:23:27,099.099 INFO    ] time= 27/06/2026 18:23:27
[2026-06-27 18:23:27,122.122 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:23:27,128.128 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:23:27,219.219 INFO    ] No existing commands found in stream
[2026-06-27 18:23:32,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:23:32,236.236 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-27 18:23:33,026.026 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 18:23:33,028.028 INFO    ] Checking for system updates...
[2026-06-27 18:23:33,048.048 INFO    ] 200
[2026-06-27 18:23:33,050.050 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:23:33,082.082 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:23:33,084.084 INFO    ] No update needed
[2026-06-27 18:23:33,085.085 INFO    ] Checking for camera pi updates...
[2026-06-27 18:23:33,106.106 INFO    ] 200
[2026-06-27 18:23:33,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:23:33,131.131 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:23:33,168.168 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:23:33,169.169 INFO    ] No camera update needed
[2026-06-27 18:23:33,171.171 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:23:33,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:23:33,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:23:33,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:23:35,216.216 INFO    ] ================================================
[2026-06-27 18:23:35,232.232 INFO    ] Launching Daemon at Sat Jun 27 18:23:35 IST 2026
[2026-06-27 18:23:35,243.243 INFO    ] ================================================
[2026-06-27 18:23:35,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:23:35
[2026-06-27 18:23:35,915.915 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:23:36,052.052 INFO    ] Initializing speech engine...
[2026-06-27 18:23:36,065.065 INFO    ] 2026-06-27 18:23:36
[2026-06-27 18:23:36,273.273 INFO    ] 2026-06-27 18:23:36
[2026-06-27 18:23:36,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:23:36,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:23:36,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:23:36,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:23:36,742.742 INFO    ] time= 27/06/2026 18:23:36
[2026-06-27 18:23:36,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:23:36,778.778 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:23:36,855.855 INFO    ] No existing commands found in stream
[2026-06-27 18:23:41,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:23:41,867.867 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-27 18:23:44,411.411 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 18:23:44,413.413 INFO    ] Checking for system updates...
[2026-06-27 18:23:44,434.434 INFO    ] 200
[2026-06-27 18:23:44,435.435 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:23:44,468.468 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:23:44,470.470 INFO    ] No update needed
[2026-06-27 18:23:44,471.471 INFO    ] Checking for camera pi updates...
[2026-06-27 18:23:44,490.490 INFO    ] 200
[2026-06-27 18:23:44,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:23:44,518.518 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:23:44,560.560 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:23:44,562.562 INFO    ] No camera update needed
[2026-06-27 18:23:44,563.563 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:23:44,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:23:44,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:23:44,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:23:46,608.608 INFO    ] ================================================
[2026-06-27 18:23:46,625.625 INFO    ] Launching Daemon at Sat Jun 27 18:23:46 IST 2026
[2026-06-27 18:23:46,636.636 INFO    ] ================================================
[2026-06-27 18:23:47,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:23:47
[2026-06-27 18:23:47,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:23:47,505.505 INFO    ] Initializing speech engine...
[2026-06-27 18:23:47,517.517 INFO    ] 2026-06-27 18:23:47
[2026-06-27 18:23:47,733.733 INFO    ] 2026-06-27 18:23:47
[2026-06-27 18:23:47,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:23:47,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:23:47,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:23:48,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:23:48,159.159 INFO    ] time= 27/06/2026 18:23:48
[2026-06-27 18:23:48,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:23:48,188.188 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:23:48,256.256 INFO    ] No existing commands found in stream
[2026-06-27 18:23:53,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:23:53,268.268 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-27 18:23:53,696.696 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 18:23:53,697.697 INFO    ] Checking for system updates...
[2026-06-27 18:23:53,718.718 INFO    ] 200
[2026-06-27 18:23:53,719.719 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:23:53,753.753 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:23:53,755.755 INFO    ] No update needed
[2026-06-27 18:23:53,756.756 INFO    ] Checking for camera pi updates...
[2026-06-27 18:23:53,776.776 INFO    ] 200
[2026-06-27 18:23:53,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:23:53,800.800 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:23:53,891.891 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:23:53,892.892 INFO    ] No camera update needed
[2026-06-27 18:23:53,893.893 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:23:53,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:23:53,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:23:53,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:23:55,938.938 INFO    ] ================================================
[2026-06-27 18:23:55,954.954 INFO    ] Launching Daemon at Sat Jun 27 18:23:55 IST 2026
[2026-06-27 18:23:55,965.965 INFO    ] ================================================
[2026-06-27 18:23:56,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:23:56
[2026-06-27 18:23:56,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:23:56,796.796 INFO    ] Initializing speech engine...
[2026-06-27 18:23:56,803.803 INFO    ] 2026-06-27 18:23:56
[2026-06-27 18:23:57,012.012 INFO    ] 2026-06-27 18:23:56
[2026-06-27 18:23:57,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:23:57,226.226 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:23:57,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:23:57,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:23:57,455.455 INFO    ] time= 27/06/2026 18:23:57
[2026-06-27 18:23:57,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:23:57,463.463 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:23:57,531.531 INFO    ] No existing commands found in stream
[2026-06-27 18:24:02,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:24:02,565.565 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-27 18:24:04,423.423 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 18:24:04,425.425 INFO    ] Checking for system updates...
[2026-06-27 18:24:04,447.447 INFO    ] 200
[2026-06-27 18:24:04,450.450 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:24:04,498.498 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:24:04,500.500 INFO    ] No update needed
[2026-06-27 18:24:04,501.501 INFO    ] Checking for camera pi updates...
[2026-06-27 18:24:04,521.521 INFO    ] 200
[2026-06-27 18:24:04,523.523 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:24:04,548.548 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:24:04,593.593 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:24:04,595.595 INFO    ] No camera update needed
[2026-06-27 18:24:04,596.596 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:24:04,598.598 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:24:04,601.601 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:24:04,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:24:06,644.644 INFO    ] ================================================
[2026-06-27 18:24:06,660.660 INFO    ] Launching Daemon at Sat Jun 27 18:24:06 IST 2026
[2026-06-27 18:24:06,671.671 INFO    ] ================================================
[2026-06-27 18:24:07,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:24:07
[2026-06-27 18:24:07,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:24:07,486.486 INFO    ] Initializing speech engine...
[2026-06-27 18:24:07,492.492 INFO    ] 2026-06-27 18:24:07
[2026-06-27 18:24:07,690.690 INFO    ] 2026-06-27 18:24:07
[2026-06-27 18:24:07,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:24:07,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:24:07,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:24:08,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:24:08,116.116 INFO    ] time= 27/06/2026 18:24:08
[2026-06-27 18:24:08,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:24:08,144.144 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:24:08,211.211 INFO    ] No existing commands found in stream
[2026-06-27 18:24:13,220.220 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:24:13,224.224 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-27 18:24:16,335.335 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:24:16,337.337 INFO    ] Checking for system updates...
[2026-06-27 18:24:16,358.358 INFO    ] 200
[2026-06-27 18:24:16,360.360 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:24:16,393.393 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:24:16,394.394 INFO    ] No update needed
[2026-06-27 18:24:16,396.396 INFO    ] Checking for camera pi updates...
[2026-06-27 18:24:16,418.418 INFO    ] 200
[2026-06-27 18:24:16,420.420 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:24:16,444.444 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:24:16,473.473 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:24:16,474.474 INFO    ] No camera update needed
[2026-06-27 18:24:16,476.476 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:24:16,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:24:16,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:24:16,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:24:18,512.512 INFO    ] ================================================
[2026-06-27 18:24:18,522.522 INFO    ] Launching Daemon at Sat Jun 27 18:24:18 IST 2026
[2026-06-27 18:24:18,528.528 INFO    ] ================================================
[2026-06-27 18:24:18,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:24:18
[2026-06-27 18:24:19,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:24:19,347.347 INFO    ] Initializing speech engine...
[2026-06-27 18:24:19,353.353 INFO    ] 2026-06-27 18:24:19
[2026-06-27 18:24:19,566.566 INFO    ] 2026-06-27 18:24:19
[2026-06-27 18:24:19,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:24:19,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:24:19,792.792 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:24:19,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:24:20,019.019 INFO    ] time= 27/06/2026 18:24:19
[2026-06-27 18:24:20,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:24:20,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:24:20,092.092 INFO    ] No existing commands found in stream
[2026-06-27 18:24:25,102.102 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:24:25,105.105 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-27 18:24:27,286.286 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 18:24:27,287.287 INFO    ] Checking for system updates...
[2026-06-27 18:24:27,310.310 INFO    ] 200
[2026-06-27 18:24:27,311.311 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:24:27,346.346 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:24:27,347.347 INFO    ] No update needed
[2026-06-27 18:24:27,349.349 INFO    ] Checking for camera pi updates...
[2026-06-27 18:24:27,369.369 INFO    ] 200
[2026-06-27 18:24:27,370.370 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:24:27,396.396 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:24:27,441.441 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:24:27,443.443 INFO    ] No camera update needed
[2026-06-27 18:24:27,444.444 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:24:27,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:24:27,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:24:27,451.451 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:24:29,489.489 INFO    ] ================================================
[2026-06-27 18:24:29,504.504 INFO    ] Launching Daemon at Sat Jun 27 18:24:29 IST 2026
[2026-06-27 18:24:29,515.515 INFO    ] ================================================
[2026-06-27 18:24:29,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:24:29
[2026-06-27 18:24:30,179.179 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:24:30,309.309 INFO    ] Initializing speech engine...
[2026-06-27 18:24:30,317.317 INFO    ] 2026-06-27 18:24:30
[2026-06-27 18:24:30,529.529 INFO    ] 2026-06-27 18:24:30
[2026-06-27 18:24:30,558.558 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:24:30,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:24:30,743.743 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:24:30,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:24:30,948.948 INFO    ] time= 27/06/2026 18:24:30
[2026-06-27 18:24:30,969.969 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:24:30,976.976 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:24:31,042.042 INFO    ] No existing commands found in stream
[2026-06-27 18:24:36,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:24:36,055.055 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-27 18:24:38,966.966 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:24:38,968.968 INFO    ] Checking for system updates...
[2026-06-27 18:24:38,989.989 INFO    ] 200
[2026-06-27 18:24:38,990.990 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:24:39,024.024 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:24:39,025.025 INFO    ] No update needed
[2026-06-27 18:24:39,026.026 INFO    ] Checking for camera pi updates...
[2026-06-27 18:24:39,046.046 INFO    ] 200
[2026-06-27 18:24:39,047.047 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:24:39,071.071 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:24:39,115.115 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:24:39,116.116 INFO    ] No camera update needed
[2026-06-27 18:24:39,118.118 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:24:39,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:24:39,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:24:39,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:24:41,164.164 INFO    ] ================================================
[2026-06-27 18:24:41,179.179 INFO    ] Launching Daemon at Sat Jun 27 18:24:41 IST 2026
[2026-06-27 18:24:41,190.190 INFO    ] ================================================
[2026-06-27 18:24:41,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:24:41
[2026-06-27 18:24:41,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:24:41,985.985 INFO    ] Initializing speech engine...
[2026-06-27 18:24:41,989.989 INFO    ] 2026-06-27 18:24:41
[2026-06-27 18:24:42,193.193 INFO    ] 2026-06-27 18:24:42
[2026-06-27 18:24:42,221.221 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:24:42,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:24:42,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:24:42,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:24:42,610.610 INFO    ] time= 27/06/2026 18:24:42
[2026-06-27 18:24:42,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:24:42,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:24:42,705.705 INFO    ] No existing commands found in stream
[2026-06-27 18:24:47,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:24:47,717.717 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-27 18:24:48,127.127 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:24:48,129.129 INFO    ] Checking for system updates...
[2026-06-27 18:24:48,149.149 INFO    ] 200
[2026-06-27 18:24:48,151.151 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:24:48,181.181 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:24:48,183.183 INFO    ] No update needed
[2026-06-27 18:24:48,184.184 INFO    ] Checking for camera pi updates...
[2026-06-27 18:24:48,206.206 INFO    ] 200
[2026-06-27 18:24:48,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:24:48,232.232 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:24:48,275.275 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:24:48,276.276 INFO    ] No camera update needed
[2026-06-27 18:24:48,277.277 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:24:48,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:24:48,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:24:48,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:24:50,326.326 INFO    ] ================================================
[2026-06-27 18:24:50,341.341 INFO    ] Launching Daemon at Sat Jun 27 18:24:50 IST 2026
[2026-06-27 18:24:50,352.352 INFO    ] ================================================
[2026-06-27 18:24:50,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:24:50
[2026-06-27 18:24:51,028.028 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:24:51,161.161 INFO    ] Initializing speech engine...
[2026-06-27 18:24:51,174.174 INFO    ] 2026-06-27 18:24:51
[2026-06-27 18:24:51,380.380 INFO    ] 2026-06-27 18:24:51
[2026-06-27 18:24:51,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:24:54,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:24:54,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:24:54,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:24:54,743.743 INFO    ] time= 27/06/2026 18:24:54
[2026-06-27 18:24:54,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:24:54,749.749 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:24:54,811.811 INFO    ] No existing commands found in stream
[2026-06-27 18:24:59,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:24:59,823.823 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-27 18:25:02,365.365 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:25:02,368.368 INFO    ] Checking for system updates...
[2026-06-27 18:25:02,394.394 INFO    ] 200
[2026-06-27 18:25:02,396.396 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:25:02,440.440 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:25:02,441.441 INFO    ] No update needed
[2026-06-27 18:25:02,443.443 INFO    ] Checking for camera pi updates...
[2026-06-27 18:25:02,471.471 INFO    ] 200
[2026-06-27 18:25:02,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:25:02,505.505 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:25:02,534.534 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:25:02,536.536 INFO    ] No camera update needed
[2026-06-27 18:25:02,538.538 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:25:02,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:25:02,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:25:02,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:25:04,589.589 INFO    ] ================================================
[2026-06-27 18:25:04,605.605 INFO    ] Launching Daemon at Sat Jun 27 18:25:04 IST 2026
[2026-06-27 18:25:04,615.615 INFO    ] ================================================
[2026-06-27 18:25:04,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:25:04
[2026-06-27 18:25:05,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:25:05,493.493 INFO    ] Initializing speech engine...
[2026-06-27 18:25:05,499.499 INFO    ] 2026-06-27 18:25:05
[2026-06-27 18:25:05,703.703 INFO    ] 2026-06-27 18:25:05
[2026-06-27 18:25:05,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:25:05,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:25:05,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:25:06,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:25:06,156.156 INFO    ] time= 27/06/2026 18:25:06
[2026-06-27 18:25:06,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:25:06,163.163 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:25:06,231.231 INFO    ] No existing commands found in stream
[2026-06-27 18:25:11,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:25:11,249.249 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-27 18:25:12,522.522 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 18:25:12,523.523 INFO    ] Checking for system updates...
[2026-06-27 18:25:12,545.545 INFO    ] 200
[2026-06-27 18:25:12,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:25:12,589.589 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:25:12,590.590 INFO    ] No update needed
[2026-06-27 18:25:12,592.592 INFO    ] Checking for camera pi updates...
[2026-06-27 18:25:12,613.613 INFO    ] 200
[2026-06-27 18:25:12,615.615 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:25:12,643.643 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:25:12,683.683 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:25:12,684.684 INFO    ] No camera update needed
[2026-06-27 18:25:12,686.686 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:25:12,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:25:12,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:25:12,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:25:14,733.733 INFO    ] ================================================
[2026-06-27 18:25:14,749.749 INFO    ] Launching Daemon at Sat Jun 27 18:25:14 IST 2026
[2026-06-27 18:25:14,760.760 INFO    ] ================================================
[2026-06-27 18:25:15,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:25:15
[2026-06-27 18:25:15,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:25:15,566.566 INFO    ] Initializing speech engine...
[2026-06-27 18:25:15,579.579 INFO    ] 2026-06-27 18:25:15
[2026-06-27 18:25:15,800.800 INFO    ] 2026-06-27 18:25:15
[2026-06-27 18:25:15,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:25:16,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:25:16,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:25:16,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:25:16,242.242 INFO    ] time= 27/06/2026 18:25:16
[2026-06-27 18:25:16,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:25:16,290.290 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:25:16,366.366 INFO    ] No existing commands found in stream
[2026-06-27 18:25:21,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:25:21,379.379 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-27 18:25:23,367.367 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 18:25:23,369.369 INFO    ] Checking for system updates...
[2026-06-27 18:25:23,390.390 INFO    ] 200
[2026-06-27 18:25:23,391.391 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:25:23,422.422 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:25:23,423.423 INFO    ] No update needed
[2026-06-27 18:25:23,425.425 INFO    ] Checking for camera pi updates...
[2026-06-27 18:25:23,446.446 INFO    ] 200
[2026-06-27 18:25:23,448.448 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:25:23,474.474 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:25:23,521.521 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:25:23,522.522 INFO    ] No camera update needed
[2026-06-27 18:25:23,524.524 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:25:23,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:25:23,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:25:23,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:25:25,570.570 INFO    ] ================================================
[2026-06-27 18:25:25,585.585 INFO    ] Launching Daemon at Sat Jun 27 18:25:25 IST 2026
[2026-06-27 18:25:25,596.596 INFO    ] ================================================
[2026-06-27 18:25:25,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:25:25
[2026-06-27 18:25:26,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:25:26,369.369 INFO    ] Initializing speech engine...
[2026-06-27 18:25:26,377.377 INFO    ] 2026-06-27 18:25:26
[2026-06-27 18:25:26,590.590 INFO    ] 2026-06-27 18:25:26
[2026-06-27 18:25:26,620.620 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:25:26,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:25:26,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:25:27,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:25:27,106.106 INFO    ] time= 27/06/2026 18:25:27
[2026-06-27 18:25:27,132.132 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:25:27,133.133 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:25:27,261.261 INFO    ] No existing commands found in stream
[2026-06-27 18:25:32,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:25:32,267.267 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-27 18:25:35,733.733 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:25:35,736.736 INFO    ] Checking for system updates...
[2026-06-27 18:25:35,776.776 INFO    ] 200
[2026-06-27 18:25:35,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:25:35,832.832 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:25:35,835.835 INFO    ] No update needed
[2026-06-27 18:25:35,837.837 INFO    ] Checking for camera pi updates...
[2026-06-27 18:25:35,871.871 INFO    ] 200
[2026-06-27 18:25:35,873.873 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:25:35,912.912 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:25:35,956.956 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:25:35,957.957 INFO    ] No camera update needed
[2026-06-27 18:25:35,958.958 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:25:35,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:25:35,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:25:35,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:25:38,004.004 INFO    ] ================================================
[2026-06-27 18:25:38,019.019 INFO    ] Launching Daemon at Sat Jun 27 18:25:38 IST 2026
[2026-06-27 18:25:38,030.030 INFO    ] ================================================
[2026-06-27 18:25:38,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:25:38
[2026-06-27 18:25:38,709.709 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:25:38,839.839 INFO    ] Initializing speech engine...
[2026-06-27 18:25:38,843.843 INFO    ] 2026-06-27 18:25:38
[2026-06-27 18:25:39,063.063 INFO    ] 2026-06-27 18:25:39
[2026-06-27 18:25:39,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:25:39,289.289 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:25:39,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:25:39,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:25:39,489.489 INFO    ] time= 27/06/2026 18:25:39
[2026-06-27 18:25:39,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:25:39,518.518 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:25:39,584.584 INFO    ] No existing commands found in stream
[2026-06-27 18:25:44,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:25:44,598.598 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-27 18:25:47,912.912 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 18:25:47,914.914 INFO    ] Checking for system updates...
[2026-06-27 18:25:47,935.935 INFO    ] 200
[2026-06-27 18:25:47,936.936 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:25:47,969.969 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:25:47,971.971 INFO    ] No update needed
[2026-06-27 18:25:47,972.972 INFO    ] Checking for camera pi updates...
[2026-06-27 18:25:47,992.992 INFO    ] 200
[2026-06-27 18:25:47,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:25:48,019.019 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:25:48,062.062 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:25:48,063.063 INFO    ] No camera update needed
[2026-06-27 18:25:48,064.064 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:25:48,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:25:48,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:25:48,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:25:50,112.112 INFO    ] ================================================
[2026-06-27 18:25:50,127.127 INFO    ] Launching Daemon at Sat Jun 27 18:25:50 IST 2026
[2026-06-27 18:25:50,138.138 INFO    ] ================================================
[2026-06-27 18:25:50,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:25:50
[2026-06-27 18:25:50,780.780 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:25:50,924.924 INFO    ] Initializing speech engine...
[2026-06-27 18:25:50,929.929 INFO    ] 2026-06-27 18:25:50
[2026-06-27 18:25:51,132.132 INFO    ] 2026-06-27 18:25:51
[2026-06-27 18:25:51,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:25:51,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:25:51,353.353 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:25:51,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:25:51,572.572 INFO    ] time= 27/06/2026 18:25:51
[2026-06-27 18:25:51,578.578 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:25:51,580.580 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:25:51,646.646 INFO    ] No existing commands found in stream
[2026-06-27 18:25:56,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:25:56,663.663 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-27 18:25:58,097.097 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 18:25:58,099.099 INFO    ] Checking for system updates...
[2026-06-27 18:25:58,120.120 INFO    ] 200
[2026-06-27 18:25:58,122.122 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:25:58,155.155 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:25:58,157.157 INFO    ] No update needed
[2026-06-27 18:25:58,158.158 INFO    ] Checking for camera pi updates...
[2026-06-27 18:25:58,177.177 INFO    ] 200
[2026-06-27 18:25:58,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:25:58,202.202 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:25:58,252.252 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:25:58,254.254 INFO    ] No camera update needed
[2026-06-27 18:25:58,255.255 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:25:58,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:25:58,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:25:58,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:26:00,301.301 INFO    ] ================================================
[2026-06-27 18:26:00,316.316 INFO    ] Launching Daemon at Sat Jun 27 18:26:00 IST 2026
[2026-06-27 18:26:00,328.328 INFO    ] ================================================
[2026-06-27 18:26:00,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:26:00
[2026-06-27 18:26:01,025.025 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:26:01,398.398 INFO    ] Initializing speech engine...
[2026-06-27 18:26:01,403.403 INFO    ] 2026-06-27 18:26:01
[2026-06-27 18:26:01,704.704 INFO    ] 2026-06-27 18:26:01
[2026-06-27 18:26:01,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:26:01,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:26:01,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:26:02,171.171 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:26:02,175.175 INFO    ] time= 27/06/2026 18:26:02
[2026-06-27 18:26:02,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:26:02,204.204 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:26:02,317.317 INFO    ] No existing commands found in stream
[2026-06-27 18:26:07,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:26:07,330.330 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-27 18:26:10,797.797 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:26:10,798.798 INFO    ] Checking for system updates...
[2026-06-27 18:26:10,819.819 INFO    ] 200
[2026-06-27 18:26:10,820.820 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:26:10,850.850 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:26:10,852.852 INFO    ] No update needed
[2026-06-27 18:26:10,853.853 INFO    ] Checking for camera pi updates...
[2026-06-27 18:26:10,872.872 INFO    ] 200
[2026-06-27 18:26:10,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:26:10,899.899 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:26:10,948.948 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:26:10,949.949 INFO    ] No camera update needed
[2026-06-27 18:26:10,950.950 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:26:10,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:26:10,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:26:10,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:26:13,997.997 INFO    ] ================================================
[2026-06-27 18:26:13,014.014 INFO    ] Launching Daemon at Sat Jun 27 18:26:13 IST 2026
[2026-06-27 18:26:13,024.024 INFO    ] ================================================
[2026-06-27 18:26:13,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:26:13
[2026-06-27 18:26:13,674.674 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:26:13,818.818 INFO    ] Initializing speech engine...
[2026-06-27 18:26:13,824.824 INFO    ] 2026-06-27 18:26:13
[2026-06-27 18:26:14,028.028 INFO    ] 2026-06-27 18:26:14
[2026-06-27 18:26:14,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:26:14,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:26:14,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:26:14,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:26:14,442.442 INFO    ] time= 27/06/2026 18:26:14
[2026-06-27 18:26:14,481.481 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:26:14,504.504 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:26:14,582.582 INFO    ] No existing commands found in stream
[2026-06-27 18:26:19,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:26:19,594.594 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-27 18:26:23,947.947 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 18:26:23,948.948 INFO    ] Checking for system updates...
[2026-06-27 18:26:23,970.970 INFO    ] 200
[2026-06-27 18:26:23,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:26:24,002.002 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:26:24,003.003 INFO    ] No update needed
[2026-06-27 18:26:24,004.004 INFO    ] Checking for camera pi updates...
[2026-06-27 18:26:24,024.024 INFO    ] 200
[2026-06-27 18:26:24,026.026 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:26:24,050.050 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:26:24,092.092 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:26:24,093.093 INFO    ] No camera update needed
[2026-06-27 18:26:24,095.095 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:26:24,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:26:24,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:26:24,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:26:26,142.142 INFO    ] ================================================
[2026-06-27 18:26:26,158.158 INFO    ] Launching Daemon at Sat Jun 27 18:26:26 IST 2026
[2026-06-27 18:26:26,173.173 INFO    ] ================================================
[2026-06-27 18:26:26,566.566 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:26:26
[2026-06-27 18:26:26,909.909 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:26:27,060.060 INFO    ] Initializing speech engine...
[2026-06-27 18:26:27,066.066 INFO    ] 2026-06-27 18:26:27
[2026-06-27 18:26:27,275.275 INFO    ] 2026-06-27 18:26:27
[2026-06-27 18:26:27,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:26:27,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:26:27,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:26:27,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:26:27,718.718 INFO    ] time= 27/06/2026 18:26:27
[2026-06-27 18:26:27,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:26:27,729.729 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:26:27,796.796 INFO    ] No existing commands found in stream
[2026-06-27 18:26:32,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:26:32,824.824 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-27 18:26:34,212.212 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 18:26:34,214.214 INFO    ] Checking for system updates...
[2026-06-27 18:26:34,235.235 INFO    ] 200
[2026-06-27 18:26:34,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:26:34,270.270 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:26:34,272.272 INFO    ] No update needed
[2026-06-27 18:26:34,274.274 INFO    ] Checking for camera pi updates...
[2026-06-27 18:26:34,294.294 INFO    ] 200
[2026-06-27 18:26:34,295.295 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:26:34,320.320 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:26:34,369.369 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:26:34,371.371 INFO    ] No camera update needed
[2026-06-27 18:26:34,372.372 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:26:34,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:26:34,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:26:34,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:26:36,419.419 INFO    ] ================================================
[2026-06-27 18:26:36,435.435 INFO    ] Launching Daemon at Sat Jun 27 18:26:36 IST 2026
[2026-06-27 18:26:36,446.446 INFO    ] ================================================
[2026-06-27 18:26:36,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:26:36
[2026-06-27 18:26:37,092.092 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:26:37,235.235 INFO    ] Initializing speech engine...
[2026-06-27 18:26:37,239.239 INFO    ] 2026-06-27 18:26:37
[2026-06-27 18:26:37,446.446 INFO    ] 2026-06-27 18:26:37
[2026-06-27 18:26:37,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:26:37,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:26:37,674.674 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:26:37,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:26:37,866.866 INFO    ] time= 27/06/2026 18:26:37
[2026-06-27 18:26:37,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:26:37,910.910 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:26:37,977.977 INFO    ] No existing commands found in stream
[2026-06-27 18:26:43,001.001 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:26:43,005.005 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-27 18:26:46,245.245 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:26:46,247.247 INFO    ] Checking for system updates...
[2026-06-27 18:26:46,268.268 INFO    ] 200
[2026-06-27 18:26:46,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:26:46,301.301 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:26:46,303.303 INFO    ] No update needed
[2026-06-27 18:26:46,304.304 INFO    ] Checking for camera pi updates...
[2026-06-27 18:26:46,327.327 INFO    ] 200
[2026-06-27 18:26:46,328.328 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:26:46,354.354 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:26:46,407.407 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:26:46,408.408 INFO    ] No camera update needed
[2026-06-27 18:26:46,410.410 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:26:46,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:26:46,415.415 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:26:46,418.418 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:26:48,461.461 INFO    ] ================================================
[2026-06-27 18:26:48,476.476 INFO    ] Launching Daemon at Sat Jun 27 18:26:48 IST 2026
[2026-06-27 18:26:48,487.487 INFO    ] ================================================
[2026-06-27 18:26:48,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:26:48
[2026-06-27 18:26:49,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:26:49,292.292 INFO    ] Initializing speech engine...
[2026-06-27 18:26:49,303.303 INFO    ] 2026-06-27 18:26:49
[2026-06-27 18:26:49,520.520 INFO    ] 2026-06-27 18:26:49
[2026-06-27 18:26:49,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:26:49,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:26:49,754.754 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:26:49,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:26:49,978.978 INFO    ] time= 27/06/2026 18:26:49
[2026-06-27 18:26:50,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:26:50,010.010 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:26:50,083.083 INFO    ] No existing commands found in stream
[2026-06-27 18:26:55,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:26:55,115.115 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-27 18:26:58,652.652 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:26:58,653.653 INFO    ] Checking for system updates...
[2026-06-27 18:26:58,674.674 INFO    ] 200
[2026-06-27 18:26:58,676.676 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:26:58,706.706 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:26:58,707.707 INFO    ] No update needed
[2026-06-27 18:26:58,708.708 INFO    ] Checking for camera pi updates...
[2026-06-27 18:26:58,731.731 INFO    ] 200
[2026-06-27 18:26:58,733.733 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:26:58,756.756 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:26:58,804.804 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:26:58,805.805 INFO    ] No camera update needed
[2026-06-27 18:26:58,806.806 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:26:58,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:26:58,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:26:58,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:27:00,851.851 INFO    ] ================================================
[2026-06-27 18:27:00,867.867 INFO    ] Launching Daemon at Sat Jun 27 18:27:00 IST 2026
[2026-06-27 18:27:00,878.878 INFO    ] ================================================
[2026-06-27 18:27:01,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:27:01
[2026-06-27 18:27:01,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:27:01,872.872 INFO    ] Initializing speech engine...
[2026-06-27 18:27:01,882.882 INFO    ] 2026-06-27 18:27:01
[2026-06-27 18:27:02,131.131 INFO    ] 2026-06-27 18:27:02
[2026-06-27 18:27:02,179.179 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:27:02,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:27:02,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:27:02,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:27:02,599.599 INFO    ] time= 27/06/2026 18:27:02
[2026-06-27 18:27:02,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:27:02,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:27:02,697.697 INFO    ] No existing commands found in stream
[2026-06-27 18:27:07,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:27:07,719.719 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-27 18:27:08,416.416 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:27:08,417.417 INFO    ] Checking for system updates...
[2026-06-27 18:27:08,438.438 INFO    ] 200
[2026-06-27 18:27:08,440.440 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:27:08,472.472 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:27:08,474.474 INFO    ] No update needed
[2026-06-27 18:27:08,475.475 INFO    ] Checking for camera pi updates...
[2026-06-27 18:27:08,495.495 INFO    ] 200
[2026-06-27 18:27:08,496.496 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:27:08,522.522 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:27:08,576.576 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:27:08,577.577 INFO    ] No camera update needed
[2026-06-27 18:27:08,579.579 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:27:08,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:27:08,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:27:08,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:27:10,624.624 INFO    ] ================================================
[2026-06-27 18:27:10,639.639 INFO    ] Launching Daemon at Sat Jun 27 18:27:10 IST 2026
[2026-06-27 18:27:10,649.649 INFO    ] ================================================
[2026-06-27 18:27:11,003.003 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:27:11
[2026-06-27 18:27:11,317.317 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:27:11,456.456 INFO    ] Initializing speech engine...
[2026-06-27 18:27:11,464.464 INFO    ] 2026-06-27 18:27:11
[2026-06-27 18:27:11,675.675 INFO    ] 2026-06-27 18:27:11
[2026-06-27 18:27:11,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:27:11,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:27:11,903.903 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:27:12,069.069 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:27:12,119.119 INFO    ] time= 27/06/2026 18:27:12
[2026-06-27 18:27:12,126.126 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:27:12,131.131 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:27:12,225.225 INFO    ] No existing commands found in stream
[2026-06-27 18:27:17,238.238 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:27:17,240.240 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-27 18:27:21,933.933 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:27:21,936.936 INFO    ] Checking for system updates...
[2026-06-27 18:27:21,972.972 INFO    ] 200
[2026-06-27 18:27:21,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:27:22,022.022 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:27:22,023.023 INFO    ] No update needed
[2026-06-27 18:27:22,025.025 INFO    ] Checking for camera pi updates...
[2026-06-27 18:27:22,044.044 INFO    ] 200
[2026-06-27 18:27:22,045.045 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:27:22,069.069 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:27:22,126.126 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:27:22,127.127 INFO    ] No camera update needed
[2026-06-27 18:27:22,128.128 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:27:22,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:27:22,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:27:22,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:27:24,175.175 INFO    ] ================================================
[2026-06-27 18:27:24,191.191 INFO    ] Launching Daemon at Sat Jun 27 18:27:24 IST 2026
[2026-06-27 18:27:24,201.201 INFO    ] ================================================
[2026-06-27 18:27:24,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:27:24
[2026-06-27 18:27:24,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:27:25,060.060 INFO    ] Initializing speech engine...
[2026-06-27 18:27:25,065.065 INFO    ] 2026-06-27 18:27:25
[2026-06-27 18:27:25,277.277 INFO    ] 2026-06-27 18:27:25
[2026-06-27 18:27:25,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:27:25,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:27:25,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:27:25,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:27:25,702.702 INFO    ] time= 27/06/2026 18:27:25
[2026-06-27 18:27:25,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:27:25,737.737 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:27:25,805.805 INFO    ] No existing commands found in stream
[2026-06-27 18:27:30,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:27:30,818.818 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-27 18:27:33,270.270 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:27:33,272.272 INFO    ] Checking for system updates...
[2026-06-27 18:27:33,293.293 INFO    ] 200
[2026-06-27 18:27:33,295.295 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:27:33,325.325 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:27:33,327.327 INFO    ] No update needed
[2026-06-27 18:27:33,328.328 INFO    ] Checking for camera pi updates...
[2026-06-27 18:27:33,347.347 INFO    ] 200
[2026-06-27 18:27:33,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:27:33,372.372 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:27:33,415.415 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:27:33,416.416 INFO    ] No camera update needed
[2026-06-27 18:27:33,418.418 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:27:33,419.419 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:27:33,422.422 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:27:33,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:27:35,465.465 INFO    ] ================================================
[2026-06-27 18:27:35,480.480 INFO    ] Launching Daemon at Sat Jun 27 18:27:35 IST 2026
[2026-06-27 18:27:35,491.491 INFO    ] ================================================
[2026-06-27 18:27:35,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:27:35
[2026-06-27 18:27:36,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:27:36,289.289 INFO    ] Initializing speech engine...
[2026-06-27 18:27:36,303.303 INFO    ] 2026-06-27 18:27:36
[2026-06-27 18:27:36,523.523 INFO    ] 2026-06-27 18:27:36
[2026-06-27 18:27:36,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:27:36,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:27:36,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:27:36,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:27:36,974.974 INFO    ] time= 27/06/2026 18:27:36
[2026-06-27 18:27:37,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:27:37,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:27:37,080.080 INFO    ] No existing commands found in stream
[2026-06-27 18:27:42,089.089 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:27:42,092.092 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-27 18:27:46,191.191 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 18:27:46,193.193 INFO    ] Checking for system updates...
[2026-06-27 18:27:46,214.214 INFO    ] 200
[2026-06-27 18:27:46,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:27:46,245.245 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:27:46,247.247 INFO    ] No update needed
[2026-06-27 18:27:46,248.248 INFO    ] Checking for camera pi updates...
[2026-06-27 18:27:46,268.268 INFO    ] 200
[2026-06-27 18:27:46,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:27:46,293.293 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:27:46,436.436 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:27:46,438.438 INFO    ] No camera update needed
[2026-06-27 18:27:46,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:27:46,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:27:46,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:27:46,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:27:48,485.485 INFO    ] ================================================
[2026-06-27 18:27:48,500.500 INFO    ] Launching Daemon at Sat Jun 27 18:27:48 IST 2026
[2026-06-27 18:27:48,511.511 INFO    ] ================================================
[2026-06-27 18:27:48,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:27:48
[2026-06-27 18:27:49,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:27:49,339.339 INFO    ] Initializing speech engine...
[2026-06-27 18:27:49,349.349 INFO    ] 2026-06-27 18:27:49
[2026-06-27 18:27:49,553.553 INFO    ] 2026-06-27 18:27:49
[2026-06-27 18:27:49,582.582 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:27:49,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:27:49,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:27:49,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:27:49,970.970 INFO    ] time= 27/06/2026 18:27:49
[2026-06-27 18:27:49,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:27:50,000.000 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:27:50,067.067 INFO    ] No existing commands found in stream
[2026-06-27 18:27:55,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:27:55,084.084 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-27 18:27:56,227.227 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 18:27:56,229.229 INFO    ] Checking for system updates...
[2026-06-27 18:27:56,252.252 INFO    ] 200
[2026-06-27 18:27:56,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:27:56,284.284 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:27:56,286.286 INFO    ] No update needed
[2026-06-27 18:27:56,287.287 INFO    ] Checking for camera pi updates...
[2026-06-27 18:27:56,306.306 INFO    ] 200
[2026-06-27 18:27:56,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:27:56,332.332 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:27:56,414.414 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:27:56,415.415 INFO    ] No camera update needed
[2026-06-27 18:27:56,416.416 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:27:56,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:27:56,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:27:56,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:27:58,462.462 INFO    ] ================================================
[2026-06-27 18:27:58,477.477 INFO    ] Launching Daemon at Sat Jun 27 18:27:58 IST 2026
[2026-06-27 18:27:58,488.488 INFO    ] ================================================
[2026-06-27 18:27:58,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:27:58
[2026-06-27 18:27:59,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:27:59,274.274 INFO    ] Initializing speech engine...
[2026-06-27 18:27:59,279.279 INFO    ] 2026-06-27 18:27:59
[2026-06-27 18:27:59,482.482 INFO    ] 2026-06-27 18:27:59
[2026-06-27 18:27:59,510.510 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:27:59,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:27:59,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:27:59,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:27:59,900.900 INFO    ] time= 27/06/2026 18:27:59
[2026-06-27 18:27:59,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:27:59,929.929 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:27:59,996.996 INFO    ] No existing commands found in stream
[2026-06-27 18:28:05,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:28:05,009.009 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-27 18:28:08,237.237 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 18:28:08,239.239 INFO    ] Checking for system updates...
[2026-06-27 18:28:08,259.259 INFO    ] 200
[2026-06-27 18:28:08,260.260 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:28:08,291.291 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:28:08,292.292 INFO    ] No update needed
[2026-06-27 18:28:08,294.294 INFO    ] Checking for camera pi updates...
[2026-06-27 18:28:08,313.313 INFO    ] 200
[2026-06-27 18:28:08,315.315 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:28:08,340.340 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:28:08,388.388 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:28:08,389.389 INFO    ] No camera update needed
[2026-06-27 18:28:08,391.391 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:28:08,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:28:08,395.395 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:28:08,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:28:10,436.436 INFO    ] ================================================
[2026-06-27 18:28:10,451.451 INFO    ] Launching Daemon at Sat Jun 27 18:28:10 IST 2026
[2026-06-27 18:28:10,462.462 INFO    ] ================================================
[2026-06-27 18:28:10,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:28:10
[2026-06-27 18:28:11,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:28:11,267.267 INFO    ] Initializing speech engine...
[2026-06-27 18:28:11,271.271 INFO    ] 2026-06-27 18:28:11
[2026-06-27 18:28:11,487.487 INFO    ] 2026-06-27 18:28:11
[2026-06-27 18:28:11,516.516 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:28:11,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:28:11,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:28:11,891.891 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:28:11,926.926 INFO    ] time= 27/06/2026 18:28:11
[2026-06-27 18:28:11,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:28:11,937.937 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:28:12,004.004 INFO    ] No existing commands found in stream
[2026-06-27 18:28:17,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:28:17,016.016 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-27 18:28:19,152.152 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:28:19,153.153 INFO    ] Checking for system updates...
[2026-06-27 18:28:19,174.174 INFO    ] 200
[2026-06-27 18:28:19,176.176 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:28:19,207.207 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:28:19,208.208 INFO    ] No update needed
[2026-06-27 18:28:19,209.209 INFO    ] Checking for camera pi updates...
[2026-06-27 18:28:19,231.231 INFO    ] 200
[2026-06-27 18:28:19,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:28:19,260.260 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:28:19,301.301 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:28:19,302.302 INFO    ] No camera update needed
[2026-06-27 18:28:19,304.304 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:28:19,305.305 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:28:19,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:28:19,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:28:21,350.350 INFO    ] ================================================
[2026-06-27 18:28:21,365.365 INFO    ] Launching Daemon at Sat Jun 27 18:28:21 IST 2026
[2026-06-27 18:28:21,377.377 INFO    ] ================================================
[2026-06-27 18:28:21,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:28:21
[2026-06-27 18:28:22,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:28:22,259.259 INFO    ] Initializing speech engine...
[2026-06-27 18:28:22,265.265 INFO    ] 2026-06-27 18:28:22
[2026-06-27 18:28:22,472.472 INFO    ] 2026-06-27 18:28:22
[2026-06-27 18:28:22,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:28:22,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:28:22,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:28:22,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:28:22,893.893 INFO    ] time= 27/06/2026 18:28:22
[2026-06-27 18:28:22,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:28:22,921.921 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:28:22,989.989 INFO    ] No existing commands found in stream
[2026-06-27 18:28:28,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:28:28,006.006 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-27 18:28:29,351.351 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:28:29,353.353 INFO    ] Checking for system updates...
[2026-06-27 18:28:29,375.375 INFO    ] 200
[2026-06-27 18:28:29,377.377 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:28:29,407.407 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:28:29,409.409 INFO    ] No update needed
[2026-06-27 18:28:29,410.410 INFO    ] Checking for camera pi updates...
[2026-06-27 18:28:29,431.431 INFO    ] 200
[2026-06-27 18:28:29,433.433 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:28:29,458.458 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:28:29,510.510 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:28:29,512.512 INFO    ] No camera update needed
[2026-06-27 18:28:29,513.513 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:28:29,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:28:29,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:28:29,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:28:31,560.560 INFO    ] ================================================
[2026-06-27 18:28:31,576.576 INFO    ] Launching Daemon at Sat Jun 27 18:28:31 IST 2026
[2026-06-27 18:28:31,587.587 INFO    ] ================================================
[2026-06-27 18:28:31,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:28:31
[2026-06-27 18:28:32,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:28:32,465.465 INFO    ] Initializing speech engine...
[2026-06-27 18:28:32,479.479 INFO    ] 2026-06-27 18:28:32
[2026-06-27 18:28:32,698.698 INFO    ] 2026-06-27 18:28:32
[2026-06-27 18:28:32,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:28:32,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:28:32,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:28:33,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:28:33,178.178 INFO    ] time= 27/06/2026 18:28:33
[2026-06-27 18:28:33,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:28:33,182.182 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:28:33,280.280 INFO    ] No existing commands found in stream
[2026-06-27 18:28:38,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:28:38,292.292 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-27 18:28:41,126.126 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:28:41,128.128 INFO    ] Checking for system updates...
[2026-06-27 18:28:41,149.149 INFO    ] 200
[2026-06-27 18:28:41,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:28:41,181.181 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:28:41,182.182 INFO    ] No update needed
[2026-06-27 18:28:41,184.184 INFO    ] Checking for camera pi updates...
[2026-06-27 18:28:41,206.206 INFO    ] 200
[2026-06-27 18:28:41,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:28:41,231.231 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:28:41,287.287 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:28:41,288.288 INFO    ] No camera update needed
[2026-06-27 18:28:41,289.289 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:28:41,290.290 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:28:41,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:28:41,296.296 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:28:43,334.334 INFO    ] ================================================
[2026-06-27 18:28:43,350.350 INFO    ] Launching Daemon at Sat Jun 27 18:28:43 IST 2026
[2026-06-27 18:28:43,364.364 INFO    ] ================================================
[2026-06-27 18:28:43,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:28:43
[2026-06-27 18:28:44,095.095 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:28:44,225.225 INFO    ] Initializing speech engine...
[2026-06-27 18:28:44,228.228 INFO    ] 2026-06-27 18:28:44
[2026-06-27 18:28:44,445.445 INFO    ] 2026-06-27 18:28:44
[2026-06-27 18:28:44,474.474 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:28:44,598.598 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:28:44,661.661 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:28:44,850.850 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:28:44,885.885 INFO    ] time= 27/06/2026 18:28:44
[2026-06-27 18:28:44,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:28:44,896.896 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:28:44,962.962 INFO    ] No existing commands found in stream
[2026-06-27 18:28:49,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:28:49,975.975 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-27 18:28:53,766.766 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:28:53,767.767 INFO    ] Checking for system updates...
[2026-06-27 18:28:53,789.789 INFO    ] 200
[2026-06-27 18:28:53,790.790 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:28:53,823.823 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:28:53,824.824 INFO    ] No update needed
[2026-06-27 18:28:53,826.826 INFO    ] Checking for camera pi updates...
[2026-06-27 18:28:53,846.846 INFO    ] 200
[2026-06-27 18:28:53,847.847 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:28:53,871.871 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:28:53,911.911 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:28:53,919.919 INFO    ] No camera update needed
[2026-06-27 18:28:53,920.920 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:28:53,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:28:53,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:28:53,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:28:55,968.968 INFO    ] ================================================
[2026-06-27 18:28:55,984.984 INFO    ] Launching Daemon at Sat Jun 27 18:28:55 IST 2026
[2026-06-27 18:28:55,994.994 INFO    ] ================================================
[2026-06-27 18:28:56,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:28:56
[2026-06-27 18:28:56,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:28:56,830.830 INFO    ] Initializing speech engine...
[2026-06-27 18:28:56,835.835 INFO    ] 2026-06-27 18:28:56
[2026-06-27 18:28:57,038.038 INFO    ] 2026-06-27 18:28:57
[2026-06-27 18:28:57,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:28:57,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:28:57,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:28:57,405.405 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:28:57,458.458 INFO    ] time= 27/06/2026 18:28:57
[2026-06-27 18:28:57,480.480 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:28:57,486.486 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:28:57,552.552 INFO    ] No existing commands found in stream
[2026-06-27 18:29:02,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:29:02,577.577 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-27 18:29:04,940.940 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 18:29:04,942.942 INFO    ] Checking for system updates...
[2026-06-27 18:29:04,963.963 INFO    ] 200
[2026-06-27 18:29:04,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:29:04,996.996 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:29:04,997.997 INFO    ] No update needed
[2026-06-27 18:29:04,999.999 INFO    ] Checking for camera pi updates...
[2026-06-27 18:29:05,019.019 INFO    ] 200
[2026-06-27 18:29:05,020.020 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:29:05,044.044 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:29:05,092.092 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:29:05,093.093 INFO    ] No camera update needed
[2026-06-27 18:29:05,095.095 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:29:05,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:29:05,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:29:05,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:29:07,142.142 INFO    ] ================================================
[2026-06-27 18:29:07,158.158 INFO    ] Launching Daemon at Sat Jun 27 18:29:07 IST 2026
[2026-06-27 18:29:07,169.169 INFO    ] ================================================
[2026-06-27 18:29:07,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:29:07
[2026-06-27 18:29:07,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:29:07,954.954 INFO    ] Initializing speech engine...
[2026-06-27 18:29:07,963.963 INFO    ] 2026-06-27 18:29:07
[2026-06-27 18:29:08,168.168 INFO    ] 2026-06-27 18:29:08
[2026-06-27 18:29:08,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:29:08,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:29:08,390.390 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:29:08,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:29:08,587.587 INFO    ] time= 27/06/2026 18:29:08
[2026-06-27 18:29:08,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:29:08,614.614 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:29:08,686.686 INFO    ] No existing commands found in stream
[2026-06-27 18:29:13,710.710 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:29:13,712.712 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-27 18:29:15,858.858 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:29:15,859.859 INFO    ] Checking for system updates...
[2026-06-27 18:29:15,880.880 INFO    ] 200
[2026-06-27 18:29:15,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:29:15,912.912 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:29:15,913.913 INFO    ] No update needed
[2026-06-27 18:29:15,914.914 INFO    ] Checking for camera pi updates...
[2026-06-27 18:29:15,934.934 INFO    ] 200
[2026-06-27 18:29:15,936.936 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:29:15,959.959 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:29:16,002.002 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:29:16,003.003 INFO    ] No camera update needed
[2026-06-27 18:29:16,005.005 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:29:16,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:29:16,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:29:16,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:29:18,052.052 INFO    ] ================================================
[2026-06-27 18:29:18,067.067 INFO    ] Launching Daemon at Sat Jun 27 18:29:18 IST 2026
[2026-06-27 18:29:18,078.078 INFO    ] ================================================
[2026-06-27 18:29:18,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:29:18
[2026-06-27 18:29:18,752.752 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:29:18,882.882 INFO    ] Initializing speech engine...
[2026-06-27 18:29:18,886.886 INFO    ] 2026-06-27 18:29:18
[2026-06-27 18:29:19,089.089 INFO    ] 2026-06-27 18:29:19
[2026-06-27 18:29:19,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:29:19,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:29:19,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:29:19,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:29:19,568.568 INFO    ] time= 27/06/2026 18:29:19
[2026-06-27 18:29:19,597.597 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:29:19,603.603 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:29:19,675.675 INFO    ] No existing commands found in stream
[2026-06-27 18:29:24,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:29:24,688.688 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-27 18:29:28,623.623 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:29:28,624.624 INFO    ] Checking for system updates...
[2026-06-27 18:29:28,645.645 INFO    ] 200
[2026-06-27 18:29:28,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:29:28,680.680 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:29:28,681.681 INFO    ] No update needed
[2026-06-27 18:29:28,682.682 INFO    ] Checking for camera pi updates...
[2026-06-27 18:29:28,702.702 INFO    ] 200
[2026-06-27 18:29:28,704.704 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:29:28,727.727 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:29:28,784.784 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:29:28,786.786 INFO    ] No camera update needed
[2026-06-27 18:29:28,787.787 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:29:28,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:29:28,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:29:28,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:29:30,835.835 INFO    ] ================================================
[2026-06-27 18:29:30,850.850 INFO    ] Launching Daemon at Sat Jun 27 18:29:30 IST 2026
[2026-06-27 18:29:30,861.861 INFO    ] ================================================
[2026-06-27 18:29:31,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:29:31
[2026-06-27 18:29:31,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:29:31,649.649 INFO    ] Initializing speech engine...
[2026-06-27 18:29:31,654.654 INFO    ] 2026-06-27 18:29:31
[2026-06-27 18:29:31,862.862 INFO    ] 2026-06-27 18:29:31
[2026-06-27 18:29:31,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:29:32,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:29:32,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:29:32,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:29:32,334.334 INFO    ] time= 27/06/2026 18:29:32
[2026-06-27 18:29:32,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:29:32,379.379 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:29:32,456.456 INFO    ] No existing commands found in stream
[2026-06-27 18:29:37,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:29:37,483.483 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-27 18:29:39,293.293 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:29:39,294.294 INFO    ] Checking for system updates...
[2026-06-27 18:29:39,315.315 INFO    ] 200
[2026-06-27 18:29:39,317.317 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:29:39,348.348 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:29:39,349.349 INFO    ] No update needed
[2026-06-27 18:29:39,350.350 INFO    ] Checking for camera pi updates...
[2026-06-27 18:29:39,370.370 INFO    ] 200
[2026-06-27 18:29:39,372.372 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:29:39,395.395 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:29:39,438.438 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:29:39,439.439 INFO    ] No camera update needed
[2026-06-27 18:29:39,441.441 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:29:39,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:29:39,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:29:39,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:29:41,489.489 INFO    ] ================================================
[2026-06-27 18:29:41,504.504 INFO    ] Launching Daemon at Sat Jun 27 18:29:41 IST 2026
[2026-06-27 18:29:41,515.515 INFO    ] ================================================
[2026-06-27 18:29:41,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:29:41
[2026-06-27 18:29:42,210.210 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:29:42,354.354 INFO    ] Initializing speech engine...
[2026-06-27 18:29:42,359.359 INFO    ] 2026-06-27 18:29:42
[2026-06-27 18:29:42,564.564 INFO    ] 2026-06-27 18:29:42
[2026-06-27 18:29:42,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:29:42,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:29:42,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:29:42,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:29:42,982.982 INFO    ] time= 27/06/2026 18:29:42
[2026-06-27 18:29:43,004.004 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:29:43,010.010 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:29:43,077.077 INFO    ] No existing commands found in stream
[2026-06-27 18:29:48,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:29:48,104.104 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-27 18:29:48,578.578 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:29:48,580.580 INFO    ] Checking for system updates...
[2026-06-27 18:29:48,601.601 INFO    ] 200
[2026-06-27 18:29:48,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:29:48,635.635 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:29:48,637.637 INFO    ] No update needed
[2026-06-27 18:29:48,638.638 INFO    ] Checking for camera pi updates...
[2026-06-27 18:29:48,657.657 INFO    ] 200
[2026-06-27 18:29:48,659.659 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:29:48,684.684 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:29:48,823.823 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:29:48,825.825 INFO    ] No camera update needed
[2026-06-27 18:29:48,826.826 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:29:48,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:29:48,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:29:48,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:29:50,872.872 INFO    ] ================================================
[2026-06-27 18:29:50,888.888 INFO    ] Launching Daemon at Sat Jun 27 18:29:50 IST 2026
[2026-06-27 18:29:50,898.898 INFO    ] ================================================
[2026-06-27 18:29:51,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:29:51
[2026-06-27 18:29:51,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:29:51,716.716 INFO    ] Initializing speech engine...
[2026-06-27 18:29:51,720.720 INFO    ] 2026-06-27 18:29:51
[2026-06-27 18:29:51,926.926 INFO    ] 2026-06-27 18:29:51
[2026-06-27 18:29:51,956.956 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:29:52,142.142 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:29:52,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:29:52,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:29:52,352.352 INFO    ] time= 27/06/2026 18:29:52
[2026-06-27 18:29:52,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:29:52,383.383 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:29:52,450.450 INFO    ] No existing commands found in stream
[2026-06-27 18:29:57,460.460 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:29:57,467.467 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-27 18:30:00,260.260 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 18:30:00,262.262 INFO    ] Checking for system updates...
[2026-06-27 18:30:00,288.288 INFO    ] 200
[2026-06-27 18:30:00,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:30:00,323.323 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:30:00,325.325 INFO    ] No update needed
[2026-06-27 18:30:00,327.327 INFO    ] Checking for camera pi updates...
[2026-06-27 18:30:00,346.346 INFO    ] 200
[2026-06-27 18:30:00,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:30:00,371.371 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:30:00,430.430 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:30:00,431.431 INFO    ] No camera update needed
[2026-06-27 18:30:00,432.432 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:30:00,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:30:00,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:30:00,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:30:02,483.483 INFO    ] ================================================
[2026-06-27 18:30:02,493.493 INFO    ] Launching Daemon at Sat Jun 27 18:30:02 IST 2026
[2026-06-27 18:30:02,503.503 INFO    ] ================================================
[2026-06-27 18:30:02,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:30:02
[2026-06-27 18:30:03,157.157 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:30:03,302.302 INFO    ] Initializing speech engine...
[2026-06-27 18:30:03,308.308 INFO    ] 2026-06-27 18:30:03
[2026-06-27 18:30:03,512.512 INFO    ] 2026-06-27 18:30:03
[2026-06-27 18:30:03,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:30:03,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:30:03,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:30:03,882.882 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:30:03,935.935 INFO    ] time= 27/06/2026 18:30:03
[2026-06-27 18:30:03,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:30:03,965.965 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:30:04,032.032 INFO    ] No existing commands found in stream
[2026-06-27 18:30:09,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:30:09,049.049 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-27 18:30:11,883.883 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 18:30:11,885.885 INFO    ] Checking for system updates...
[2026-06-27 18:30:11,911.911 INFO    ] 200
[2026-06-27 18:30:11,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:30:11,946.946 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:30:11,948.948 INFO    ] No update needed
[2026-06-27 18:30:11,949.949 INFO    ] Checking for camera pi updates...
[2026-06-27 18:30:11,968.968 INFO    ] 200
[2026-06-27 18:30:11,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:30:12,047.047 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:30:12,097.097 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:30:12,099.099 INFO    ] No camera update needed
[2026-06-27 18:30:12,100.100 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:30:12,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:30:12,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:30:12,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:30:14,150.150 INFO    ] ================================================
[2026-06-27 18:30:14,166.166 INFO    ] Launching Daemon at Sat Jun 27 18:30:14 IST 2026
[2026-06-27 18:30:14,177.177 INFO    ] ================================================
[2026-06-27 18:30:14,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:30:14
[2026-06-27 18:30:14,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:30:14,964.964 INFO    ] Initializing speech engine...
[2026-06-27 18:30:14,969.969 INFO    ] 2026-06-27 18:30:14
[2026-06-27 18:30:15,173.173 INFO    ] 2026-06-27 18:30:15
[2026-06-27 18:30:15,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:30:15,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:30:15,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:30:15,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:30:15,736.736 INFO    ] time= 27/06/2026 18:30:15
[2026-06-27 18:30:15,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:30:15,741.741 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:30:15,858.858 INFO    ] No existing commands found in stream
[2026-06-27 18:30:20,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:30:20,869.869 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-27 18:30:21,348.348 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:30:21,350.350 INFO    ] Checking for system updates...
[2026-06-27 18:30:21,372.372 INFO    ] 200
[2026-06-27 18:30:21,374.374 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:30:21,405.405 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:30:21,406.406 INFO    ] No update needed
[2026-06-27 18:30:21,408.408 INFO    ] Checking for camera pi updates...
[2026-06-27 18:30:21,427.427 INFO    ] 200
[2026-06-27 18:30:21,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:30:21,452.452 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:30:21,505.505 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:30:21,506.506 INFO    ] No camera update needed
[2026-06-27 18:30:21,507.507 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:30:21,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:30:21,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:30:21,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:30:23,557.557 INFO    ] ================================================
[2026-06-27 18:30:23,572.572 INFO    ] Launching Daemon at Sat Jun 27 18:30:23 IST 2026
[2026-06-27 18:30:23,584.584 INFO    ] ================================================
[2026-06-27 18:30:23,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:30:23
[2026-06-27 18:30:24,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:30:24,360.360 INFO    ] Initializing speech engine...
[2026-06-27 18:30:24,370.370 INFO    ] 2026-06-27 18:30:24
[2026-06-27 18:30:24,574.574 INFO    ] 2026-06-27 18:30:24
[2026-06-27 18:30:24,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:30:24,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:30:24,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:30:24,944.944 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:30:24,992.992 INFO    ] time= 27/06/2026 18:30:24
[2026-06-27 18:30:25,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:30:25,019.019 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:30:25,085.085 INFO    ] No existing commands found in stream
[2026-06-27 18:30:30,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:30:30,098.098 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-27 18:30:34,464.464 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 18:30:34,467.467 INFO    ] Checking for system updates...
[2026-06-27 18:30:34,506.506 INFO    ] 200
[2026-06-27 18:30:34,508.508 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:30:34,561.561 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:30:34,563.563 INFO    ] No update needed
[2026-06-27 18:30:34,565.565 INFO    ] Checking for camera pi updates...
[2026-06-27 18:30:34,590.590 INFO    ] 200
[2026-06-27 18:30:34,592.592 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:30:34,621.621 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:30:34,668.668 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:30:34,669.669 INFO    ] No camera update needed
[2026-06-27 18:30:34,671.671 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:30:34,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:30:34,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:30:34,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:30:36,705.705 INFO    ] ================================================
[2026-06-27 18:30:36,714.714 INFO    ] Launching Daemon at Sat Jun 27 18:30:36 IST 2026
[2026-06-27 18:30:36,720.720 INFO    ] ================================================
[2026-06-27 18:30:37,075.075 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:30:37
[2026-06-27 18:30:37,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:30:37,558.558 INFO    ] Initializing speech engine...
[2026-06-27 18:30:37,567.567 INFO    ] 2026-06-27 18:30:37
[2026-06-27 18:30:37,771.771 INFO    ] 2026-06-27 18:30:37
[2026-06-27 18:30:37,821.821 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:30:37,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:30:37,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:30:38,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:30:38,203.203 INFO    ] time= 27/06/2026 18:30:38
[2026-06-27 18:30:38,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:30:38,304.304 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:30:38,381.381 INFO    ] No existing commands found in stream
[2026-06-27 18:30:43,395.395 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:30:43,398.398 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-27 18:30:44,062.062 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:30:44,063.063 INFO    ] Checking for system updates...
[2026-06-27 18:30:44,085.085 INFO    ] 200
[2026-06-27 18:30:44,086.086 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:30:44,117.117 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:30:44,119.119 INFO    ] No update needed
[2026-06-27 18:30:44,120.120 INFO    ] Checking for camera pi updates...
[2026-06-27 18:30:44,140.140 INFO    ] 200
[2026-06-27 18:30:44,141.141 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:30:44,165.165 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:30:44,213.213 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:30:44,215.215 INFO    ] No camera update needed
[2026-06-27 18:30:44,216.216 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:30:44,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:30:44,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:30:44,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:30:46,262.262 INFO    ] ================================================
[2026-06-27 18:30:46,277.277 INFO    ] Launching Daemon at Sat Jun 27 18:30:46 IST 2026
[2026-06-27 18:30:46,288.288 INFO    ] ================================================
[2026-06-27 18:30:46,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:30:46
[2026-06-27 18:30:46,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:30:47,113.113 INFO    ] Initializing speech engine...
[2026-06-27 18:30:47,124.124 INFO    ] 2026-06-27 18:30:47
[2026-06-27 18:30:47,328.328 INFO    ] 2026-06-27 18:30:47
[2026-06-27 18:30:47,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:30:47,540.540 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:30:47,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:30:47,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:30:47,729.729 INFO    ] time= 27/06/2026 18:30:47
[2026-06-27 18:30:47,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:30:47,774.774 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:30:47,846.846 INFO    ] No existing commands found in stream
[2026-06-27 18:30:52,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:30:52,858.858 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-27 18:30:54,943.943 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 18:30:54,944.944 INFO    ] Checking for system updates...
[2026-06-27 18:30:54,965.965 INFO    ] 200
[2026-06-27 18:30:54,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:30:54,998.998 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:30:54,999.999 INFO    ] No update needed
[2026-06-27 18:30:55,000.000 INFO    ] Checking for camera pi updates...
[2026-06-27 18:30:55,021.021 INFO    ] 200
[2026-06-27 18:30:55,023.023 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:30:55,050.050 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:30:55,081.081 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:30:55,082.082 INFO    ] No camera update needed
[2026-06-27 18:30:55,084.084 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:30:55,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:30:55,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:30:55,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:30:57,132.132 INFO    ] ================================================
[2026-06-27 18:30:57,148.148 INFO    ] Launching Daemon at Sat Jun 27 18:30:57 IST 2026
[2026-06-27 18:30:57,160.160 INFO    ] ================================================
[2026-06-27 18:30:57,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:30:57
[2026-06-27 18:30:57,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:30:57,968.968 INFO    ] Initializing speech engine...
[2026-06-27 18:30:57,978.978 INFO    ] 2026-06-27 18:30:57
[2026-06-27 18:30:58,185.185 INFO    ] 2026-06-27 18:30:58
[2026-06-27 18:30:58,214.214 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:30:58,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:30:58,408.408 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:30:58,540.540 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:30:58,604.604 INFO    ] time= 27/06/2026 18:30:58
[2026-06-27 18:30:58,632.632 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:30:58,634.634 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:30:58,706.706 INFO    ] No existing commands found in stream
[2026-06-27 18:31:03,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:31:03,718.718 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-27 18:31:05,931.931 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 18:31:05,932.932 INFO    ] Checking for system updates...
[2026-06-27 18:31:05,954.954 INFO    ] 200
[2026-06-27 18:31:05,956.956 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:31:05,989.989 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:31:05,991.991 INFO    ] No update needed
[2026-06-27 18:31:05,992.992 INFO    ] Checking for camera pi updates...
[2026-06-27 18:31:06,012.012 INFO    ] 200
[2026-06-27 18:31:06,013.013 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:31:06,039.039 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:31:06,092.092 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:31:06,093.093 INFO    ] No camera update needed
[2026-06-27 18:31:06,095.095 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:31:06,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:31:06,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:31:06,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:31:08,142.142 INFO    ] ================================================
[2026-06-27 18:31:08,158.158 INFO    ] Launching Daemon at Sat Jun 27 18:31:08 IST 2026
[2026-06-27 18:31:08,169.169 INFO    ] ================================================
[2026-06-27 18:31:08,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:31:08
[2026-06-27 18:31:08,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:31:08,988.988 INFO    ] Initializing speech engine...
[2026-06-27 18:31:08,993.993 INFO    ] 2026-06-27 18:31:08
[2026-06-27 18:31:09,199.199 INFO    ] 2026-06-27 18:31:09
[2026-06-27 18:31:09,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:31:09,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:31:09,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:31:09,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:31:09,710.710 INFO    ] time= 27/06/2026 18:31:09
[2026-06-27 18:31:09,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:31:09,736.736 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:31:09,831.831 INFO    ] No existing commands found in stream
[2026-06-27 18:31:14,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:31:14,845.845 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-27 18:31:15,564.564 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 18:31:15,566.566 INFO    ] Checking for system updates...
[2026-06-27 18:31:15,587.587 INFO    ] 200
[2026-06-27 18:31:15,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:31:15,620.620 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:31:15,621.621 INFO    ] No update needed
[2026-06-27 18:31:15,623.623 INFO    ] Checking for camera pi updates...
[2026-06-27 18:31:15,643.643 INFO    ] 200
[2026-06-27 18:31:15,644.644 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:31:15,668.668 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:31:15,724.724 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:31:15,725.725 INFO    ] No camera update needed
[2026-06-27 18:31:15,726.726 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:31:15,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:31:15,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:31:15,733.733 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:31:17,772.772 INFO    ] ================================================
[2026-06-27 18:31:17,787.787 INFO    ] Launching Daemon at Sat Jun 27 18:31:17 IST 2026
[2026-06-27 18:31:17,798.798 INFO    ] ================================================
[2026-06-27 18:31:18,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:31:18
[2026-06-27 18:31:18,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:31:18,591.591 INFO    ] Initializing speech engine...
[2026-06-27 18:31:18,603.603 INFO    ] 2026-06-27 18:31:18
[2026-06-27 18:31:18,809.809 INFO    ] 2026-06-27 18:31:18
[2026-06-27 18:31:18,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:31:18,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:31:19,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:31:19,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:31:19,230.230 INFO    ] time= 27/06/2026 18:31:19
[2026-06-27 18:31:19,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:31:19,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:31:19,327.327 INFO    ] No existing commands found in stream
[2026-06-27 18:31:24,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:31:24,344.344 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-27 18:31:27,726.726 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 18:31:27,727.727 INFO    ] Checking for system updates...
[2026-06-27 18:31:27,749.749 INFO    ] 200
[2026-06-27 18:31:27,751.751 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:31:27,781.781 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:31:27,782.782 INFO    ] No update needed
[2026-06-27 18:31:27,784.784 INFO    ] Checking for camera pi updates...
[2026-06-27 18:31:27,803.803 INFO    ] 200
[2026-06-27 18:31:27,805.805 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:31:27,828.828 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:31:27,881.881 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:31:27,882.882 INFO    ] No camera update needed
[2026-06-27 18:31:27,883.883 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:31:27,885.885 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:31:27,888.888 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:31:27,891.891 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:31:29,930.930 INFO    ] ================================================
[2026-06-27 18:31:29,946.946 INFO    ] Launching Daemon at Sat Jun 27 18:31:29 IST 2026
[2026-06-27 18:31:29,958.958 INFO    ] ================================================
[2026-06-27 18:31:30,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:31:30
[2026-06-27 18:31:30,600.600 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:31:30,738.738 INFO    ] Initializing speech engine...
[2026-06-27 18:31:30,748.748 INFO    ] 2026-06-27 18:31:30
[2026-06-27 18:31:30,956.956 INFO    ] 2026-06-27 18:31:30
[2026-06-27 18:31:30,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:31:31,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:31:31,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:31:31,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:31:31,396.396 INFO    ] time= 27/06/2026 18:31:31
[2026-06-27 18:31:31,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:31:31,407.407 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:31:31,474.474 INFO    ] No existing commands found in stream
[2026-06-27 18:31:36,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:31:36,486.486 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-27 18:31:39,602.602 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 18:31:39,604.604 INFO    ] Checking for system updates...
[2026-06-27 18:31:39,625.625 INFO    ] 200
[2026-06-27 18:31:39,627.627 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:31:39,658.658 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:31:39,659.659 INFO    ] No update needed
[2026-06-27 18:31:39,660.660 INFO    ] Checking for camera pi updates...
[2026-06-27 18:31:39,681.681 INFO    ] 200
[2026-06-27 18:31:39,682.682 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:31:39,706.706 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:31:39,764.764 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:31:39,770.770 INFO    ] No camera update needed
[2026-06-27 18:31:39,772.772 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:31:39,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:31:39,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:31:39,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:31:41,820.820 INFO    ] ================================================
[2026-06-27 18:31:41,836.836 INFO    ] Launching Daemon at Sat Jun 27 18:31:41 IST 2026
[2026-06-27 18:31:41,847.847 INFO    ] ================================================
[2026-06-27 18:31:42,204.204 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:31:42
[2026-06-27 18:31:42,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:31:42,662.662 INFO    ] Initializing speech engine...
[2026-06-27 18:31:42,667.667 INFO    ] 2026-06-27 18:31:42
[2026-06-27 18:31:42,871.871 INFO    ] 2026-06-27 18:31:42
[2026-06-27 18:31:42,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:31:43,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:31:43,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:31:43,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:31:43,310.310 INFO    ] time= 27/06/2026 18:31:43
[2026-06-27 18:31:43,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:31:43,318.318 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:31:43,408.408 INFO    ] No existing commands found in stream
[2026-06-27 18:31:48,416.416 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:31:48,419.419 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-27 18:31:52,543.543 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:31:52,545.545 INFO    ] Checking for system updates...
[2026-06-27 18:31:52,566.566 INFO    ] 200
[2026-06-27 18:31:52,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:31:52,597.597 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:31:52,599.599 INFO    ] No update needed
[2026-06-27 18:31:52,600.600 INFO    ] Checking for camera pi updates...
[2026-06-27 18:31:52,621.621 INFO    ] 200
[2026-06-27 18:31:52,623.623 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:31:52,651.651 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:31:52,795.795 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:31:52,797.797 INFO    ] No camera update needed
[2026-06-27 18:31:52,798.798 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:31:52,800.800 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:31:52,803.803 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:31:52,806.806 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:31:54,846.846 INFO    ] ================================================
[2026-06-27 18:31:54,865.865 INFO    ] Launching Daemon at Sat Jun 27 18:31:54 IST 2026
[2026-06-27 18:31:54,877.877 INFO    ] ================================================
[2026-06-27 18:31:55,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:31:55
[2026-06-27 18:31:55,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:31:55,733.733 INFO    ] Initializing speech engine...
[2026-06-27 18:31:55,740.740 INFO    ] 2026-06-27 18:31:55
[2026-06-27 18:31:55,945.945 INFO    ] 2026-06-27 18:31:55
[2026-06-27 18:31:55,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:31:56,138.138 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:31:56,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:31:56,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:31:56,383.383 INFO    ] time= 27/06/2026 18:31:56
[2026-06-27 18:31:56,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:31:56,399.399 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:31:56,467.467 INFO    ] No existing commands found in stream
[2026-06-27 18:32:01,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:32:01,477.477 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-27 18:32:03,323.323 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 18:32:03,325.325 INFO    ] Checking for system updates...
[2026-06-27 18:32:03,345.345 INFO    ] 200
[2026-06-27 18:32:03,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:32:03,379.379 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:32:03,381.381 INFO    ] No update needed
[2026-06-27 18:32:03,382.382 INFO    ] Checking for camera pi updates...
[2026-06-27 18:32:03,401.401 INFO    ] 200
[2026-06-27 18:32:03,403.403 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:32:03,428.428 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:32:03,469.469 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:32:03,470.470 INFO    ] No camera update needed
[2026-06-27 18:32:03,471.471 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:32:03,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:32:03,476.476 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:32:03,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:32:05,518.518 INFO    ] ================================================
[2026-06-27 18:32:05,534.534 INFO    ] Launching Daemon at Sat Jun 27 18:32:05 IST 2026
[2026-06-27 18:32:05,545.545 INFO    ] ================================================
[2026-06-27 18:32:05,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:32:05
[2026-06-27 18:32:06,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:32:06,338.338 INFO    ] Initializing speech engine...
[2026-06-27 18:32:06,345.345 INFO    ] 2026-06-27 18:32:06
[2026-06-27 18:32:06,551.551 INFO    ] 2026-06-27 18:32:06
[2026-06-27 18:32:06,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:32:06,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:32:06,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:32:06,917.917 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:32:06,970.970 INFO    ] time= 27/06/2026 18:32:06
[2026-06-27 18:32:06,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:32:06,997.997 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:32:07,064.064 INFO    ] No existing commands found in stream
[2026-06-27 18:32:12,073.073 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:32:12,076.076 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-27 18:32:13,547.547 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:32:13,548.548 INFO    ] Checking for system updates...
[2026-06-27 18:32:13,569.569 INFO    ] 200
[2026-06-27 18:32:13,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:32:13,601.601 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:32:13,602.602 INFO    ] No update needed
[2026-06-27 18:32:13,603.603 INFO    ] Checking for camera pi updates...
[2026-06-27 18:32:13,623.623 INFO    ] 200
[2026-06-27 18:32:13,624.624 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:32:13,647.647 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:32:13,699.699 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:32:13,701.701 INFO    ] No camera update needed
[2026-06-27 18:32:13,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:32:13,703.703 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:32:13,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:32:13,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:32:15,747.747 INFO    ] ================================================
[2026-06-27 18:32:15,765.765 INFO    ] Launching Daemon at Sat Jun 27 18:32:15 IST 2026
[2026-06-27 18:32:15,776.776 INFO    ] ================================================
[2026-06-27 18:32:16,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:32:16
[2026-06-27 18:32:16,442.442 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:32:16,585.585 INFO    ] Initializing speech engine...
[2026-06-27 18:32:16,591.591 INFO    ] 2026-06-27 18:32:16
[2026-06-27 18:32:16,794.794 INFO    ] 2026-06-27 18:32:16
[2026-06-27 18:32:16,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:32:17,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:32:17,018.018 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:32:17,203.203 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:32:17,236.236 INFO    ] time= 27/06/2026 18:32:17
[2026-06-27 18:32:17,242.242 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:32:17,244.244 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:32:17,311.311 INFO    ] No existing commands found in stream
[2026-06-27 18:32:22,320.320 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:32:22,322.322 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-27 18:32:24,682.682 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 18:32:24,684.684 INFO    ] Checking for system updates...
[2026-06-27 18:32:24,707.707 INFO    ] 200
[2026-06-27 18:32:24,708.708 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:32:24,742.742 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:32:24,744.744 INFO    ] No update needed
[2026-06-27 18:32:24,746.746 INFO    ] Checking for camera pi updates...
[2026-06-27 18:32:24,766.766 INFO    ] 200
[2026-06-27 18:32:24,767.767 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:32:24,791.791 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:32:24,832.832 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:32:24,834.834 INFO    ] No camera update needed
[2026-06-27 18:32:24,835.835 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:32:24,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:32:24,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:32:24,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:32:26,888.888 INFO    ] ================================================
[2026-06-27 18:32:26,904.904 INFO    ] Launching Daemon at Sat Jun 27 18:32:26 IST 2026
[2026-06-27 18:32:26,915.915 INFO    ] ================================================
[2026-06-27 18:32:27,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:32:27
[2026-06-27 18:32:27,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:32:27,719.719 INFO    ] Initializing speech engine...
[2026-06-27 18:32:27,728.728 INFO    ] 2026-06-27 18:32:27
[2026-06-27 18:32:27,934.934 INFO    ] 2026-06-27 18:32:27
[2026-06-27 18:32:27,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:32:28,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:32:28,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:32:28,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:32:28,354.354 INFO    ] time= 27/06/2026 18:32:28
[2026-06-27 18:32:28,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:32:28,382.382 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:32:28,449.449 INFO    ] No existing commands found in stream
[2026-06-27 18:32:33,457.457 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:32:33,458.458 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-27 18:32:34,592.592 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:32:34,594.594 INFO    ] Checking for system updates...
[2026-06-27 18:32:34,616.616 INFO    ] 200
[2026-06-27 18:32:34,617.617 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:32:34,648.648 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:32:34,649.649 INFO    ] No update needed
[2026-06-27 18:32:34,650.650 INFO    ] Checking for camera pi updates...
[2026-06-27 18:32:34,674.674 INFO    ] 200
[2026-06-27 18:32:34,675.675 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:32:34,698.698 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:32:34,749.749 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:32:34,750.750 INFO    ] No camera update needed
[2026-06-27 18:32:34,752.752 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:32:34,753.753 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:32:34,756.756 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:32:34,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:32:36,798.798 INFO    ] ================================================
[2026-06-27 18:32:36,813.813 INFO    ] Launching Daemon at Sat Jun 27 18:32:36 IST 2026
[2026-06-27 18:32:36,825.825 INFO    ] ================================================
[2026-06-27 18:32:37,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:32:37
[2026-06-27 18:32:37,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:32:37,641.641 INFO    ] Initializing speech engine...
[2026-06-27 18:32:37,651.651 INFO    ] 2026-06-27 18:32:37
[2026-06-27 18:32:37,857.857 INFO    ] 2026-06-27 18:32:37
[2026-06-27 18:32:37,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:32:38,008.008 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:32:38,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:32:38,202.202 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:32:38,254.254 INFO    ] time= 27/06/2026 18:32:38
[2026-06-27 18:32:38,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:32:38,309.309 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:32:38,374.374 INFO    ] No existing commands found in stream
[2026-06-27 18:32:43,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:32:43,387.387 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-27 18:32:45,867.867 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:32:45,869.869 INFO    ] Checking for system updates...
[2026-06-27 18:32:45,890.890 INFO    ] 200
[2026-06-27 18:32:45,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:32:45,923.923 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:32:45,924.924 INFO    ] No update needed
[2026-06-27 18:32:45,926.926 INFO    ] Checking for camera pi updates...
[2026-06-27 18:32:45,946.946 INFO    ] 200
[2026-06-27 18:32:45,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:32:45,972.972 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:32:46,029.029 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:32:46,030.030 INFO    ] No camera update needed
[2026-06-27 18:32:46,031.031 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:32:46,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:32:46,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:32:46,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:32:48,080.080 INFO    ] ================================================
[2026-06-27 18:32:48,096.096 INFO    ] Launching Daemon at Sat Jun 27 18:32:48 IST 2026
[2026-06-27 18:32:48,108.108 INFO    ] ================================================
[2026-06-27 18:32:48,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:32:48
[2026-06-27 18:32:48,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:32:48,918.918 INFO    ] Initializing speech engine...
[2026-06-27 18:32:48,922.922 INFO    ] 2026-06-27 18:32:48
[2026-06-27 18:32:49,117.117 INFO    ] 2026-06-27 18:32:49
[2026-06-27 18:32:49,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:32:49,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:32:49,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:32:49,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:32:49,585.585 INFO    ] time= 27/06/2026 18:32:49
[2026-06-27 18:32:49,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:32:49,653.653 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:32:49,730.730 INFO    ] No existing commands found in stream
[2026-06-27 18:32:54,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:32:54,744.744 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-27 18:32:57,119.119 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 18:32:57,120.120 INFO    ] Checking for system updates...
[2026-06-27 18:32:57,142.142 INFO    ] 200
[2026-06-27 18:32:57,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:32:57,174.174 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:32:57,175.175 INFO    ] No update needed
[2026-06-27 18:32:57,176.176 INFO    ] Checking for camera pi updates...
[2026-06-27 18:32:57,196.196 INFO    ] 200
[2026-06-27 18:32:57,197.197 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:32:57,220.220 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:32:57,271.271 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:32:57,273.273 INFO    ] No camera update needed
[2026-06-27 18:32:57,274.274 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:32:57,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:32:57,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:32:57,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:32:59,321.321 INFO    ] ================================================
[2026-06-27 18:32:59,337.337 INFO    ] Launching Daemon at Sat Jun 27 18:32:59 IST 2026
[2026-06-27 18:32:59,349.349 INFO    ] ================================================
[2026-06-27 18:32:59,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:32:59
[2026-06-27 18:33:00,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:33:00,208.208 INFO    ] Initializing speech engine...
[2026-06-27 18:33:00,215.215 INFO    ] 2026-06-27 18:33:00
[2026-06-27 18:33:00,427.427 INFO    ] 2026-06-27 18:33:00
[2026-06-27 18:33:00,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:33:00,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:33:00,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:33:00,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:33:00,853.853 INFO    ] time= 27/06/2026 18:33:00
[2026-06-27 18:33:00,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:33:00,888.888 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:33:00,956.956 INFO    ] No existing commands found in stream
[2026-06-27 18:33:05,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:33:05,974.974 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-27 18:33:08,154.154 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 18:33:08,156.156 INFO    ] Checking for system updates...
[2026-06-27 18:33:08,178.178 INFO    ] 200
[2026-06-27 18:33:08,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:33:08,213.213 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:33:08,215.215 INFO    ] No update needed
[2026-06-27 18:33:08,216.216 INFO    ] Checking for camera pi updates...
[2026-06-27 18:33:08,237.237 INFO    ] 200
[2026-06-27 18:33:08,238.238 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:33:08,262.262 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:33:08,306.306 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:33:08,308.308 INFO    ] No camera update needed
[2026-06-27 18:33:08,309.309 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:33:08,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:33:08,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:33:08,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:33:10,359.359 INFO    ] ================================================
[2026-06-27 18:33:10,375.375 INFO    ] Launching Daemon at Sat Jun 27 18:33:10 IST 2026
[2026-06-27 18:33:10,387.387 INFO    ] ================================================
[2026-06-27 18:33:10,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:33:10
[2026-06-27 18:33:11,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:33:11,195.195 INFO    ] Initializing speech engine...
[2026-06-27 18:33:11,203.203 INFO    ] 2026-06-27 18:33:11
[2026-06-27 18:33:11,414.414 INFO    ] 2026-06-27 18:33:11
[2026-06-27 18:33:11,443.443 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:33:11,656.656 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:33:11,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:33:11,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:33:11,862.862 INFO    ] time= 27/06/2026 18:33:11
[2026-06-27 18:33:11,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:33:11,869.869 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:33:12,227.227 INFO    ] No existing commands found in stream
[2026-06-27 18:33:17,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:33:17,240.240 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-27 18:33:21,574.574 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:33:21,575.575 INFO    ] Checking for system updates...
[2026-06-27 18:33:21,596.596 INFO    ] 200
[2026-06-27 18:33:21,597.597 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:33:21,627.627 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:33:21,629.629 INFO    ] No update needed
[2026-06-27 18:33:21,630.630 INFO    ] Checking for camera pi updates...
[2026-06-27 18:33:21,650.650 INFO    ] 200
[2026-06-27 18:33:21,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:33:21,676.676 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:33:21,727.727 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:33:21,729.729 INFO    ] No camera update needed
[2026-06-27 18:33:21,730.730 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:33:21,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:33:21,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:33:21,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:33:23,778.778 INFO    ] ================================================
[2026-06-27 18:33:23,794.794 INFO    ] Launching Daemon at Sat Jun 27 18:33:23 IST 2026
[2026-06-27 18:33:23,805.805 INFO    ] ================================================
[2026-06-27 18:33:24,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:33:24
[2026-06-27 18:33:24,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:33:24,671.671 INFO    ] Initializing speech engine...
[2026-06-27 18:33:24,676.676 INFO    ] 2026-06-27 18:33:24
[2026-06-27 18:33:24,880.880 INFO    ] 2026-06-27 18:33:24
[2026-06-27 18:33:24,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:33:25,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:33:25,094.094 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:33:25,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:33:25,292.292 INFO    ] time= 27/06/2026 18:33:25
[2026-06-27 18:33:25,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:33:25,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:33:25,419.419 INFO    ] No existing commands found in stream
[2026-06-27 18:33:30,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:33:30,429.429 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-27 18:33:34,716.716 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 18:33:34,718.718 INFO    ] Checking for system updates...
[2026-06-27 18:33:34,739.739 INFO    ] 200
[2026-06-27 18:33:34,740.740 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:33:34,774.774 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:33:34,775.775 INFO    ] No update needed
[2026-06-27 18:33:34,776.776 INFO    ] Checking for camera pi updates...
[2026-06-27 18:33:34,797.797 INFO    ] 200
[2026-06-27 18:33:34,799.799 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:33:34,822.822 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:33:34,875.875 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:33:34,876.876 INFO    ] No camera update needed
[2026-06-27 18:33:34,877.877 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:33:34,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:33:34,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:33:34,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:33:36,923.923 INFO    ] ================================================
[2026-06-27 18:33:36,940.940 INFO    ] Launching Daemon at Sat Jun 27 18:33:36 IST 2026
[2026-06-27 18:33:36,951.951 INFO    ] ================================================
[2026-06-27 18:33:37,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:33:37
[2026-06-27 18:33:37,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:33:37,729.729 INFO    ] Initializing speech engine...
[2026-06-27 18:33:37,738.738 INFO    ] 2026-06-27 18:33:37
[2026-06-27 18:33:37,943.943 INFO    ] 2026-06-27 18:33:37
[2026-06-27 18:33:37,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:33:38,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:33:38,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:33:38,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:33:38,364.364 INFO    ] time= 27/06/2026 18:33:38
[2026-06-27 18:33:38,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:33:38,392.392 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:33:38,460.460 INFO    ] No existing commands found in stream
[2026-06-27 18:33:43,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:33:43,477.477 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-27 18:33:46,610.610 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 18:33:46,612.612 INFO    ] Checking for system updates...
[2026-06-27 18:33:46,632.632 INFO    ] 200
[2026-06-27 18:33:46,634.634 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:33:46,664.664 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:33:46,665.665 INFO    ] No update needed
[2026-06-27 18:33:46,667.667 INFO    ] Checking for camera pi updates...
[2026-06-27 18:33:46,686.686 INFO    ] 200
[2026-06-27 18:33:46,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:33:46,711.711 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:33:46,760.760 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:33:46,761.761 INFO    ] No camera update needed
[2026-06-27 18:33:46,763.763 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:33:46,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:33:46,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:33:46,770.770 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:33:48,809.809 INFO    ] ================================================
[2026-06-27 18:33:48,825.825 INFO    ] Launching Daemon at Sat Jun 27 18:33:48 IST 2026
[2026-06-27 18:33:48,837.837 INFO    ] ================================================
[2026-06-27 18:33:49,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:33:49
[2026-06-27 18:33:49,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:33:49,662.662 INFO    ] Initializing speech engine...
[2026-06-27 18:33:49,667.667 INFO    ] 2026-06-27 18:33:49
[2026-06-27 18:33:49,870.870 INFO    ] 2026-06-27 18:33:49
[2026-06-27 18:33:49,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:33:50,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:33:50,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:33:50,271.271 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:33:50,308.308 INFO    ] time= 27/06/2026 18:33:50
[2026-06-27 18:33:50,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:33:50,318.318 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:33:50,385.385 INFO    ] No existing commands found in stream
[2026-06-27 18:33:55,400.400 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:33:55,403.403 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-27 18:33:58,744.744 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:33:58,746.746 INFO    ] Checking for system updates...
[2026-06-27 18:33:58,768.768 INFO    ] 200
[2026-06-27 18:33:58,770.770 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:33:58,804.804 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:33:58,805.805 INFO    ] No update needed
[2026-06-27 18:33:58,807.807 INFO    ] Checking for camera pi updates...
[2026-06-27 18:33:58,829.829 INFO    ] 200
[2026-06-27 18:33:58,830.830 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:33:58,862.862 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:33:59,011.011 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:33:59,013.013 INFO    ] No camera update needed
[2026-06-27 18:33:59,014.014 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:33:59,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:33:59,020.020 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:33:59,023.023 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:34:01,065.065 INFO    ] ================================================
[2026-06-27 18:34:01,081.081 INFO    ] Launching Daemon at Sat Jun 27 18:34:01 IST 2026
[2026-06-27 18:34:01,093.093 INFO    ] ================================================
[2026-06-27 18:34:01,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:34:01
[2026-06-27 18:34:01,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:34:02,105.105 INFO    ] Initializing speech engine...
[2026-06-27 18:34:02,107.107 INFO    ] 2026-06-27 18:34:02
[2026-06-27 18:34:02,325.325 INFO    ] 2026-06-27 18:34:02
[2026-06-27 18:34:02,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:34:02,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:34:02,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:34:02,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:34:02,846.846 INFO    ] time= 27/06/2026 18:34:02
[2026-06-27 18:34:02,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:34:02,891.891 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:34:02,962.962 INFO    ] No existing commands found in stream
[2026-06-27 18:34:07,973.973 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:34:07,976.976 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-27 18:34:12,301.301 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:34:12,303.303 INFO    ] Checking for system updates...
[2026-06-27 18:34:12,324.324 INFO    ] 200
[2026-06-27 18:34:12,325.325 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:34:12,356.356 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:34:12,357.357 INFO    ] No update needed
[2026-06-27 18:34:12,359.359 INFO    ] Checking for camera pi updates...
[2026-06-27 18:34:12,378.378 INFO    ] 200
[2026-06-27 18:34:12,379.379 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:34:12,403.403 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:34:12,455.455 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:34:12,456.456 INFO    ] No camera update needed
[2026-06-27 18:34:12,457.457 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:34:12,458.458 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:34:12,461.461 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:34:12,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:34:14,503.503 INFO    ] ================================================
[2026-06-27 18:34:14,520.520 INFO    ] Launching Daemon at Sat Jun 27 18:34:14 IST 2026
[2026-06-27 18:34:14,531.531 INFO    ] ================================================
[2026-06-27 18:34:14,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:34:14
[2026-06-27 18:34:15,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:34:15,355.355 INFO    ] Initializing speech engine...
[2026-06-27 18:34:15,360.360 INFO    ] 2026-06-27 18:34:15
[2026-06-27 18:34:15,566.566 INFO    ] 2026-06-27 18:34:15
[2026-06-27 18:34:15,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:34:15,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:34:15,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:34:15,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:34:15,986.986 INFO    ] time= 27/06/2026 18:34:15
[2026-06-27 18:34:16,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:34:16,015.015 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:34:16,106.106 INFO    ] No existing commands found in stream
[2026-06-27 18:34:21,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:34:21,118.118 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-27 18:34:22,379.379 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 18:34:22,381.381 INFO    ] Checking for system updates...
[2026-06-27 18:34:22,402.402 INFO    ] 200
[2026-06-27 18:34:22,404.404 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:34:22,435.435 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:34:22,436.436 INFO    ] No update needed
[2026-06-27 18:34:22,438.438 INFO    ] Checking for camera pi updates...
[2026-06-27 18:34:22,457.457 INFO    ] 200
[2026-06-27 18:34:22,459.459 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:34:22,486.486 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:34:22,540.540 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:34:22,541.541 INFO    ] No camera update needed
[2026-06-27 18:34:22,543.543 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:34:22,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:34:22,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:34:22,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:34:24,591.591 INFO    ] ================================================
[2026-06-27 18:34:24,608.608 INFO    ] Launching Daemon at Sat Jun 27 18:34:24 IST 2026
[2026-06-27 18:34:24,619.619 INFO    ] ================================================
[2026-06-27 18:34:24,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:34:24
[2026-06-27 18:34:25,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:34:25,437.437 INFO    ] Initializing speech engine...
[2026-06-27 18:34:25,448.448 INFO    ] 2026-06-27 18:34:25
[2026-06-27 18:34:25,653.653 INFO    ] 2026-06-27 18:34:25
[2026-06-27 18:34:25,682.682 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:34:25,866.866 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:34:25,876.876 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:34:26,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:34:26,071.071 INFO    ] time= 27/06/2026 18:34:26
[2026-06-27 18:34:26,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:34:26,101.101 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:34:26,284.284 INFO    ] No existing commands found in stream
[2026-06-27 18:34:31,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:34:31,297.297 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-27 18:34:32,720.720 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:34:32,723.723 INFO    ] Checking for system updates...
[2026-06-27 18:34:32,767.767 INFO    ] 200
[2026-06-27 18:34:32,770.770 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:34:32,829.829 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:34:32,830.830 INFO    ] No update needed
[2026-06-27 18:34:32,831.831 INFO    ] Checking for camera pi updates...
[2026-06-27 18:34:32,851.851 INFO    ] 200
[2026-06-27 18:34:32,853.853 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:34:32,878.878 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:34:32,905.905 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:34:32,906.906 INFO    ] No camera update needed
[2026-06-27 18:34:32,908.908 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:34:32,909.909 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:34:32,912.912 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:34:32,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:34:34,955.955 INFO    ] ================================================
[2026-06-27 18:34:34,970.970 INFO    ] Launching Daemon at Sat Jun 27 18:34:34 IST 2026
[2026-06-27 18:34:34,981.981 INFO    ] ================================================
[2026-06-27 18:34:35,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:34:35
[2026-06-27 18:34:35,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:34:35,771.771 INFO    ] Initializing speech engine...
[2026-06-27 18:34:35,778.778 INFO    ] 2026-06-27 18:34:35
[2026-06-27 18:34:35,993.993 INFO    ] 2026-06-27 18:34:35
[2026-06-27 18:34:36,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:34:36,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:34:36,215.215 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:34:36,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:34:36,404.404 INFO    ] time= 27/06/2026 18:34:36
[2026-06-27 18:34:36,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:34:36,442.442 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:34:36,508.508 INFO    ] No existing commands found in stream
[2026-06-27 18:34:41,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:34:41,526.526 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-27 18:34:44,901.901 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:34:44,902.902 INFO    ] Checking for system updates...
[2026-06-27 18:34:44,923.923 INFO    ] 200
[2026-06-27 18:34:44,925.925 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:34:44,955.955 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:34:44,956.956 INFO    ] No update needed
[2026-06-27 18:34:44,958.958 INFO    ] Checking for camera pi updates...
[2026-06-27 18:34:44,977.977 INFO    ] 200
[2026-06-27 18:34:44,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:34:45,009.009 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:34:45,058.058 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:34:45,059.059 INFO    ] No camera update needed
[2026-06-27 18:34:45,060.060 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:34:45,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:34:45,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:34:45,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:34:47,105.105 INFO    ] ================================================
[2026-06-27 18:34:47,120.120 INFO    ] Launching Daemon at Sat Jun 27 18:34:47 IST 2026
[2026-06-27 18:34:47,131.131 INFO    ] ================================================
[2026-06-27 18:34:47,493.493 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:34:47
[2026-06-27 18:34:47,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:34:47,935.935 INFO    ] Initializing speech engine...
[2026-06-27 18:34:47,943.943 INFO    ] 2026-06-27 18:34:47
[2026-06-27 18:34:48,154.154 INFO    ] 2026-06-27 18:34:48
[2026-06-27 18:34:48,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:34:48,367.367 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:34:48,377.377 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:34:48,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:34:48,572.572 INFO    ] time= 27/06/2026 18:34:48
[2026-06-27 18:34:48,596.596 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:34:48,601.601 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:34:48,668.668 INFO    ] No existing commands found in stream
[2026-06-27 18:34:53,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:34:53,686.686 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-27 18:34:57,946.946 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:34:57,948.948 INFO    ] Checking for system updates...
[2026-06-27 18:34:57,969.969 INFO    ] 200
[2026-06-27 18:34:57,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:34:58,001.001 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:34:58,002.002 INFO    ] No update needed
[2026-06-27 18:34:58,003.003 INFO    ] Checking for camera pi updates...
[2026-06-27 18:34:58,024.024 INFO    ] 200
[2026-06-27 18:34:58,026.026 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:34:58,052.052 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:34:58,104.104 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:34:58,106.106 INFO    ] No camera update needed
[2026-06-27 18:34:58,107.107 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:34:58,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:34:58,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:34:58,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:35:00,152.152 INFO    ] ================================================
[2026-06-27 18:35:00,168.168 INFO    ] Launching Daemon at Sat Jun 27 18:35:00 IST 2026
[2026-06-27 18:35:00,179.179 INFO    ] ================================================
[2026-06-27 18:35:00,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:35:00
[2026-06-27 18:35:00,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:35:01,014.014 INFO    ] Initializing speech engine...
[2026-06-27 18:35:01,019.019 INFO    ] 2026-06-27 18:35:01
[2026-06-27 18:35:01,225.225 INFO    ] 2026-06-27 18:35:01
[2026-06-27 18:35:01,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:35:01,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:35:01,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:35:01,582.582 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:35:01,646.646 INFO    ] time= 27/06/2026 18:35:01
[2026-06-27 18:35:01,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:35:01,680.680 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:35:01,747.747 INFO    ] No existing commands found in stream
[2026-06-27 18:35:06,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:35:06,759.759 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-27 18:35:09,384.384 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:35:09,385.385 INFO    ] Checking for system updates...
[2026-06-27 18:35:09,407.407 INFO    ] 200
[2026-06-27 18:35:09,408.408 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:35:09,440.440 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:35:09,441.441 INFO    ] No update needed
[2026-06-27 18:35:09,443.443 INFO    ] Checking for camera pi updates...
[2026-06-27 18:35:09,464.464 INFO    ] 200
[2026-06-27 18:35:09,465.465 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:35:09,491.491 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:35:09,546.546 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:35:09,547.547 INFO    ] No camera update needed
[2026-06-27 18:35:09,549.549 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:35:09,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:35:09,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:35:09,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:35:11,597.597 INFO    ] ================================================
[2026-06-27 18:35:11,613.613 INFO    ] Launching Daemon at Sat Jun 27 18:35:11 IST 2026
[2026-06-27 18:35:11,626.626 INFO    ] ================================================
[2026-06-27 18:35:11,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:35:11
[2026-06-27 18:35:12,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:35:12,413.413 INFO    ] Initializing speech engine...
[2026-06-27 18:35:12,418.418 INFO    ] 2026-06-27 18:35:12
[2026-06-27 18:35:12,622.622 INFO    ] 2026-06-27 18:35:12
[2026-06-27 18:35:12,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:35:12,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:35:12,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:35:13,038.038 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:35:13,062.062 INFO    ] time= 27/06/2026 18:35:13
[2026-06-27 18:35:13,068.068 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:35:13,069.069 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:35:13,136.136 INFO    ] No existing commands found in stream
[2026-06-27 18:35:18,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:35:18,153.153 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-27 18:35:20,948.948 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:35:20,949.949 INFO    ] Checking for system updates...
[2026-06-27 18:35:20,971.971 INFO    ] 200
[2026-06-27 18:35:20,973.973 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:35:21,006.006 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:35:21,007.007 INFO    ] No update needed
[2026-06-27 18:35:21,008.008 INFO    ] Checking for camera pi updates...
[2026-06-27 18:35:21,028.028 INFO    ] 200
[2026-06-27 18:35:21,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:35:21,055.055 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:35:21,100.100 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:35:21,101.101 INFO    ] No camera update needed
[2026-06-27 18:35:21,102.102 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:35:21,104.104 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:35:21,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:35:21,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:35:23,148.148 INFO    ] ================================================
[2026-06-27 18:35:23,163.163 INFO    ] Launching Daemon at Sat Jun 27 18:35:23 IST 2026
[2026-06-27 18:35:23,174.174 INFO    ] ================================================
[2026-06-27 18:35:23,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:35:23
[2026-06-27 18:35:23,843.843 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:35:23,977.977 INFO    ] Initializing speech engine...
[2026-06-27 18:35:23,989.989 INFO    ] 2026-06-27 18:35:23
[2026-06-27 18:35:24,197.197 INFO    ] 2026-06-27 18:35:24
[2026-06-27 18:35:24,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:35:24,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:35:24,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:35:24,606.606 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:35:24,645.645 INFO    ] time= 27/06/2026 18:35:24
[2026-06-27 18:35:24,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:35:24,652.652 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:35:24,745.745 INFO    ] No existing commands found in stream
[2026-06-27 18:35:29,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:35:29,757.757 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-27 18:35:32,464.464 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 18:35:32,466.466 INFO    ] Checking for system updates...
[2026-06-27 18:35:32,491.491 INFO    ] 200
[2026-06-27 18:35:32,492.492 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:35:32,533.533 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:35:32,535.535 INFO    ] No update needed
[2026-06-27 18:35:32,536.536 INFO    ] Checking for camera pi updates...
[2026-06-27 18:35:32,558.558 INFO    ] 200
[2026-06-27 18:35:32,560.560 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:35:32,586.586 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:35:32,615.615 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:35:32,617.617 INFO    ] No camera update needed
[2026-06-27 18:35:32,618.618 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:35:32,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:35:32,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:35:32,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:35:34,668.668 INFO    ] ================================================
[2026-06-27 18:35:34,684.684 INFO    ] Launching Daemon at Sat Jun 27 18:35:34 IST 2026
[2026-06-27 18:35:34,695.695 INFO    ] ================================================
[2026-06-27 18:35:35,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:35:35
[2026-06-27 18:35:35,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:35:35,477.477 INFO    ] Initializing speech engine...
[2026-06-27 18:35:35,482.482 INFO    ] 2026-06-27 18:35:35
[2026-06-27 18:35:35,688.688 INFO    ] 2026-06-27 18:35:35
[2026-06-27 18:35:35,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:35:35,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:35:35,906.906 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:35:36,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:35:36,116.116 INFO    ] time= 27/06/2026 18:35:36
[2026-06-27 18:35:36,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:35:36,145.145 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:35:36,212.212 INFO    ] No existing commands found in stream
[2026-06-27 18:35:41,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:35:41,225.225 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-27 18:35:43,331.331 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:35:43,333.333 INFO    ] Checking for system updates...
[2026-06-27 18:35:43,354.354 INFO    ] 200
[2026-06-27 18:35:43,355.355 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:35:43,388.388 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:35:43,390.390 INFO    ] No update needed
[2026-06-27 18:35:43,391.391 INFO    ] Checking for camera pi updates...
[2026-06-27 18:35:43,411.411 INFO    ] 200
[2026-06-27 18:35:43,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:35:43,435.435 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:35:43,484.484 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:35:43,485.485 INFO    ] No camera update needed
[2026-06-27 18:35:43,486.486 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:35:43,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:35:43,490.490 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:35:43,493.493 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:35:45,531.531 INFO    ] ================================================
[2026-06-27 18:35:45,546.546 INFO    ] Launching Daemon at Sat Jun 27 18:35:45 IST 2026
[2026-06-27 18:35:45,557.557 INFO    ] ================================================
[2026-06-27 18:35:45,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:35:45
[2026-06-27 18:35:46,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:35:46,358.358 INFO    ] Initializing speech engine...
[2026-06-27 18:35:46,368.368 INFO    ] 2026-06-27 18:35:46
[2026-06-27 18:35:46,574.574 INFO    ] 2026-06-27 18:35:46
[2026-06-27 18:35:46,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:35:46,791.791 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:35:46,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:35:46,994.994 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:35:47,021.021 INFO    ] time= 27/06/2026 18:35:46
[2026-06-27 18:35:47,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:35:47,028.028 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:35:47,096.096 INFO    ] No existing commands found in stream
[2026-06-27 18:35:52,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:35:52,113.113 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-27 18:35:55,268.268 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 18:35:55,269.269 INFO    ] Checking for system updates...
[2026-06-27 18:35:55,292.292 INFO    ] 200
[2026-06-27 18:35:55,294.294 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:35:55,324.324 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:35:55,326.326 INFO    ] No update needed
[2026-06-27 18:35:55,327.327 INFO    ] Checking for camera pi updates...
[2026-06-27 18:35:55,348.348 INFO    ] 200
[2026-06-27 18:35:55,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:35:55,375.375 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:35:55,411.411 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:35:55,412.412 INFO    ] No camera update needed
[2026-06-27 18:35:55,414.414 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:35:55,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:35:55,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:35:55,421.421 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:35:57,460.460 INFO    ] ================================================
[2026-06-27 18:35:57,476.476 INFO    ] Launching Daemon at Sat Jun 27 18:35:57 IST 2026
[2026-06-27 18:35:57,487.487 INFO    ] ================================================
[2026-06-27 18:35:57,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:35:57
[2026-06-27 18:35:58,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:35:58,264.264 INFO    ] Initializing speech engine...
[2026-06-27 18:35:58,269.269 INFO    ] 2026-06-27 18:35:58
[2026-06-27 18:35:58,486.486 INFO    ] 2026-06-27 18:35:58
[2026-06-27 18:35:58,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:35:58,637.637 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:35:58,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:35:58,838.838 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:35:58,902.902 INFO    ] time= 27/06/2026 18:35:58
[2026-06-27 18:35:58,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:35:58,934.934 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:35:58,999.999 INFO    ] No existing commands found in stream
[2026-06-27 18:36:04,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:36:04,012.012 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-27 18:36:07,429.429 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:36:07,431.431 INFO    ] Checking for system updates...
[2026-06-27 18:36:07,451.451 INFO    ] 200
[2026-06-27 18:36:07,453.453 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:36:07,485.485 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:36:07,486.486 INFO    ] No update needed
[2026-06-27 18:36:07,487.487 INFO    ] Checking for camera pi updates...
[2026-06-27 18:36:07,507.507 INFO    ] 200
[2026-06-27 18:36:07,508.508 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:36:07,533.533 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:36:07,578.578 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:36:07,580.580 INFO    ] No camera update needed
[2026-06-27 18:36:07,581.581 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:36:07,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:36:07,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:36:07,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:36:09,627.627 INFO    ] ================================================
[2026-06-27 18:36:09,642.642 INFO    ] Launching Daemon at Sat Jun 27 18:36:09 IST 2026
[2026-06-27 18:36:09,653.653 INFO    ] ================================================
[2026-06-27 18:36:10,016.016 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:36:10
[2026-06-27 18:36:10,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:36:10,466.466 INFO    ] Initializing speech engine...
[2026-06-27 18:36:10,475.475 INFO    ] 2026-06-27 18:36:10
[2026-06-27 18:36:10,682.682 INFO    ] 2026-06-27 18:36:10
[2026-06-27 18:36:10,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:36:10,899.899 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:36:10,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:36:11,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:36:11,093.093 INFO    ] time= 27/06/2026 18:36:11
[2026-06-27 18:36:11,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:36:11,137.137 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:36:11,205.205 INFO    ] No existing commands found in stream
[2026-06-27 18:36:16,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:36:16,214.214 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-27 18:36:18,508.508 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 18:36:18,510.510 INFO    ] Checking for system updates...
[2026-06-27 18:36:18,531.531 INFO    ] 200
[2026-06-27 18:36:18,533.533 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:36:18,571.571 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:36:18,574.574 INFO    ] No update needed
[2026-06-27 18:36:18,576.576 INFO    ] Checking for camera pi updates...
[2026-06-27 18:36:18,614.614 INFO    ] 200
[2026-06-27 18:36:18,617.617 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:36:18,658.658 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:36:18,706.706 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:36:18,707.707 INFO    ] No camera update needed
[2026-06-27 18:36:18,708.708 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:36:18,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:36:18,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:36:18,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:36:20,756.756 INFO    ] ================================================
[2026-06-27 18:36:20,772.772 INFO    ] Launching Daemon at Sat Jun 27 18:36:20 IST 2026
[2026-06-27 18:36:20,783.783 INFO    ] ================================================
[2026-06-27 18:36:21,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:36:21
[2026-06-27 18:36:21,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:36:21,566.566 INFO    ] Initializing speech engine...
[2026-06-27 18:36:21,574.574 INFO    ] 2026-06-27 18:36:21
[2026-06-27 18:36:21,789.789 INFO    ] 2026-06-27 18:36:21
[2026-06-27 18:36:21,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:36:22,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:36:22,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:36:22,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:36:22,215.215 INFO    ] time= 27/06/2026 18:36:22
[2026-06-27 18:36:22,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:36:22,244.244 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:36:22,311.311 INFO    ] No existing commands found in stream
[2026-06-27 18:36:27,321.321 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:36:27,324.324 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-27 18:36:29,530.530 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:36:29,531.531 INFO    ] Checking for system updates...
[2026-06-27 18:36:29,551.551 INFO    ] 200
[2026-06-27 18:36:29,553.553 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:36:29,584.584 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:36:29,585.585 INFO    ] No update needed
[2026-06-27 18:36:29,587.587 INFO    ] Checking for camera pi updates...
[2026-06-27 18:36:29,606.606 INFO    ] 200
[2026-06-27 18:36:29,607.607 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:36:29,632.632 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:36:29,678.678 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:36:29,680.680 INFO    ] No camera update needed
[2026-06-27 18:36:29,681.681 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:36:29,682.682 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:36:29,685.685 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:36:29,688.688 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:36:31,720.720 INFO    ] ================================================
[2026-06-27 18:36:31,729.729 INFO    ] Launching Daemon at Sat Jun 27 18:36:31 IST 2026
[2026-06-27 18:36:31,736.736 INFO    ] ================================================
[2026-06-27 18:36:32,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:36:32
[2026-06-27 18:36:32,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:36:32,530.530 INFO    ] Initializing speech engine...
[2026-06-27 18:36:32,538.538 INFO    ] 2026-06-27 18:36:32
[2026-06-27 18:36:32,752.752 INFO    ] 2026-06-27 18:36:32
[2026-06-27 18:36:32,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:36:32,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:36:32,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:36:33,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:36:33,190.190 INFO    ] time= 27/06/2026 18:36:33
[2026-06-27 18:36:33,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:36:33,207.207 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:36:33,300.300 INFO    ] No existing commands found in stream
[2026-06-27 18:36:38,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:36:38,317.317 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-27 18:36:38,819.819 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:36:38,821.821 INFO    ] Checking for system updates...
[2026-06-27 18:36:38,841.841 INFO    ] 200
[2026-06-27 18:36:38,843.843 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:36:38,875.875 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:36:38,877.877 INFO    ] No update needed
[2026-06-27 18:36:38,878.878 INFO    ] Checking for camera pi updates...
[2026-06-27 18:36:38,897.897 INFO    ] 200
[2026-06-27 18:36:38,899.899 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:36:38,924.924 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:36:38,974.974 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:36:38,976.976 INFO    ] No camera update needed
[2026-06-27 18:36:38,977.977 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:36:38,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:36:38,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:36:38,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:36:41,022.022 INFO    ] ================================================
[2026-06-27 18:36:41,037.037 INFO    ] Launching Daemon at Sat Jun 27 18:36:41 IST 2026
[2026-06-27 18:36:41,048.048 INFO    ] ================================================
[2026-06-27 18:36:41,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:36:41
[2026-06-27 18:36:41,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:36:41,873.873 INFO    ] Initializing speech engine...
[2026-06-27 18:36:41,878.878 INFO    ] 2026-06-27 18:36:41
[2026-06-27 18:36:42,082.082 INFO    ] 2026-06-27 18:36:42
[2026-06-27 18:36:42,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:36:42,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:36:42,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:36:42,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:36:42,522.522 INFO    ] time= 27/06/2026 18:36:42
[2026-06-27 18:36:42,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:36:42,530.530 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:36:42,597.597 INFO    ] No existing commands found in stream
[2026-06-27 18:36:47,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:36:47,609.609 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-27 18:36:48,480.480 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:36:48,481.481 INFO    ] Checking for system updates...
[2026-06-27 18:36:48,503.503 INFO    ] 200
[2026-06-27 18:36:48,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:36:48,537.537 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:36:48,538.538 INFO    ] No update needed
[2026-06-27 18:36:48,540.540 INFO    ] Checking for camera pi updates...
[2026-06-27 18:36:48,559.559 INFO    ] 200
[2026-06-27 18:36:48,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:36:48,584.584 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:36:48,626.626 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:36:48,627.627 INFO    ] No camera update needed
[2026-06-27 18:36:48,628.628 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:36:48,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:36:48,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:36:48,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:36:50,674.674 INFO    ] ================================================
[2026-06-27 18:36:50,689.689 INFO    ] Launching Daemon at Sat Jun 27 18:36:50 IST 2026
[2026-06-27 18:36:50,700.700 INFO    ] ================================================
[2026-06-27 18:36:51,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:36:51
[2026-06-27 18:36:51,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:36:51,506.506 INFO    ] Initializing speech engine...
[2026-06-27 18:36:51,512.512 INFO    ] 2026-06-27 18:36:51
[2026-06-27 18:36:51,716.716 INFO    ] 2026-06-27 18:36:51
[2026-06-27 18:36:51,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:36:51,928.928 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:36:51,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:36:52,068.068 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:36:52,134.134 INFO    ] time= 27/06/2026 18:36:52
[2026-06-27 18:36:52,158.158 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:36:52,164.164 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:36:52,230.230 INFO    ] No existing commands found in stream
[2026-06-27 18:36:57,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:36:57,242.242 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-27 18:36:58,620.620 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 18:36:58,621.621 INFO    ] Checking for system updates...
[2026-06-27 18:36:58,645.645 INFO    ] 200
[2026-06-27 18:36:58,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:36:58,679.679 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:36:58,681.681 INFO    ] No update needed
[2026-06-27 18:36:58,682.682 INFO    ] Checking for camera pi updates...
[2026-06-27 18:36:58,702.702 INFO    ] 200
[2026-06-27 18:36:58,704.704 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:36:58,729.729 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:36:58,780.780 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:36:58,781.781 INFO    ] No camera update needed
[2026-06-27 18:36:58,782.782 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:36:58,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:36:58,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:36:58,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:37:00,829.829 INFO    ] ================================================
[2026-06-27 18:37:00,845.845 INFO    ] Launching Daemon at Sat Jun 27 18:37:00 IST 2026
[2026-06-27 18:37:00,855.855 INFO    ] ================================================
[2026-06-27 18:37:01,209.209 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:37:01
[2026-06-27 18:37:01,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:37:01,795.795 INFO    ] Initializing speech engine...
[2026-06-27 18:37:01,798.798 INFO    ] 2026-06-27 18:37:01
[2026-06-27 18:37:02,048.048 INFO    ] 2026-06-27 18:37:02
[2026-06-27 18:37:02,080.080 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:37:02,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:37:02,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:37:02,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:37:02,477.477 INFO    ] time= 27/06/2026 18:37:02
[2026-06-27 18:37:02,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:37:02,539.539 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:37:02,626.626 INFO    ] No existing commands found in stream
[2026-06-27 18:37:07,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:37:07,635.635 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-27 18:37:09,689.689 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 18:37:09,690.690 INFO    ] Checking for system updates...
[2026-06-27 18:37:09,711.711 INFO    ] 200
[2026-06-27 18:37:09,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:37:09,743.743 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:37:09,744.744 INFO    ] No update needed
[2026-06-27 18:37:09,745.745 INFO    ] Checking for camera pi updates...
[2026-06-27 18:37:09,766.766 INFO    ] 200
[2026-06-27 18:37:09,767.767 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:37:09,790.790 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:37:09,841.841 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:37:09,842.842 INFO    ] No camera update needed
[2026-06-27 18:37:09,843.843 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:37:09,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:37:09,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:37:09,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:37:11,889.889 INFO    ] ================================================
[2026-06-27 18:37:11,904.904 INFO    ] Launching Daemon at Sat Jun 27 18:37:11 IST 2026
[2026-06-27 18:37:11,915.915 INFO    ] ================================================
[2026-06-27 18:37:12,317.317 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:37:12
[2026-06-27 18:37:12,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:37:12,809.809 INFO    ] Initializing speech engine...
[2026-06-27 18:37:12,814.814 INFO    ] 2026-06-27 18:37:12
[2026-06-27 18:37:13,028.028 INFO    ] 2026-06-27 18:37:13
[2026-06-27 18:37:13,057.057 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:37:13,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:37:13,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:37:13,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:37:13,476.476 INFO    ] time= 27/06/2026 18:37:13
[2026-06-27 18:37:13,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:37:13,484.484 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:37:13,601.601 INFO    ] No existing commands found in stream
[2026-06-27 18:37:18,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:37:18,615.615 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-27 18:37:22,048.048 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:37:22,049.049 INFO    ] Checking for system updates...
[2026-06-27 18:37:22,071.071 INFO    ] 200
[2026-06-27 18:37:22,072.072 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:37:22,103.103 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:37:22,104.104 INFO    ] No update needed
[2026-06-27 18:37:22,106.106 INFO    ] Checking for camera pi updates...
[2026-06-27 18:37:22,125.125 INFO    ] 200
[2026-06-27 18:37:22,127.127 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:37:22,150.150 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:37:22,191.191 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:37:22,192.192 INFO    ] No camera update needed
[2026-06-27 18:37:22,193.193 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:37:22,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:37:22,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:37:22,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:37:24,238.238 INFO    ] ================================================
[2026-06-27 18:37:24,253.253 INFO    ] Launching Daemon at Sat Jun 27 18:37:24 IST 2026
[2026-06-27 18:37:24,264.264 INFO    ] ================================================
[2026-06-27 18:37:24,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:37:24
[2026-06-27 18:37:24,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:37:25,065.065 INFO    ] Initializing speech engine...
[2026-06-27 18:37:25,077.077 INFO    ] 2026-06-27 18:37:25
[2026-06-27 18:37:25,286.286 INFO    ] 2026-06-27 18:37:25
[2026-06-27 18:37:25,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:37:25,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:37:25,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:37:25,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:37:25,695.695 INFO    ] time= 27/06/2026 18:37:25
[2026-06-27 18:37:25,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:37:25,742.742 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:37:25,839.839 INFO    ] No existing commands found in stream
[2026-06-27 18:37:30,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:37:30,850.850 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-27 18:37:33,126.126 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 18:37:33,128.128 INFO    ] Checking for system updates...
[2026-06-27 18:37:33,150.150 INFO    ] 200
[2026-06-27 18:37:33,151.151 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:37:33,184.184 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:37:33,185.185 INFO    ] No update needed
[2026-06-27 18:37:33,187.187 INFO    ] Checking for camera pi updates...
[2026-06-27 18:37:33,208.208 INFO    ] 200
[2026-06-27 18:37:33,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:37:33,234.234 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:37:33,275.275 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:37:33,276.276 INFO    ] No camera update needed
[2026-06-27 18:37:33,278.278 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:37:33,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:37:33,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:37:33,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:37:35,324.324 INFO    ] ================================================
[2026-06-27 18:37:35,340.340 INFO    ] Launching Daemon at Sat Jun 27 18:37:35 IST 2026
[2026-06-27 18:37:35,351.351 INFO    ] ================================================
[2026-06-27 18:37:35,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:37:35
[2026-06-27 18:37:36,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:37:36,158.158 INFO    ] Initializing speech engine...
[2026-06-27 18:37:36,167.167 INFO    ] 2026-06-27 18:37:36
[2026-06-27 18:37:36,375.375 INFO    ] 2026-06-27 18:37:36
[2026-06-27 18:37:36,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:37:36,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:37:36,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:37:36,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:37:36,819.819 INFO    ] time= 27/06/2026 18:37:36
[2026-06-27 18:37:36,826.826 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:37:36,827.827 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:37:37,009.009 INFO    ] No existing commands found in stream
[2026-06-27 18:37:42,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:37:42,022.022 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-27 18:37:45,402.402 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 18:37:45,404.404 INFO    ] Checking for system updates...
[2026-06-27 18:37:45,424.424 INFO    ] 200
[2026-06-27 18:37:45,426.426 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:37:45,459.459 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:37:45,460.460 INFO    ] No update needed
[2026-06-27 18:37:45,462.462 INFO    ] Checking for camera pi updates...
[2026-06-27 18:37:45,481.481 INFO    ] 200
[2026-06-27 18:37:45,482.482 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:37:45,506.506 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:37:45,553.553 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:37:45,554.554 INFO    ] No camera update needed
[2026-06-27 18:37:45,555.555 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:37:45,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:37:45,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:37:45,562.562 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:37:47,600.600 INFO    ] ================================================
[2026-06-27 18:37:47,616.616 INFO    ] Launching Daemon at Sat Jun 27 18:37:47 IST 2026
[2026-06-27 18:37:47,626.626 INFO    ] ================================================
[2026-06-27 18:37:47,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:37:47
[2026-06-27 18:37:48,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:37:48,412.412 INFO    ] Initializing speech engine...
[2026-06-27 18:37:48,416.416 INFO    ] 2026-06-27 18:37:48
[2026-06-27 18:37:48,624.624 INFO    ] 2026-06-27 18:37:48
[2026-06-27 18:37:48,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:37:48,839.839 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:37:48,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:37:49,002.002 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:37:49,046.046 INFO    ] time= 27/06/2026 18:37:49
[2026-06-27 18:37:49,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:37:49,074.074 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:37:49,142.142 INFO    ] No existing commands found in stream
[2026-06-27 18:37:54,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:37:54,169.169 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-27 18:37:56,163.163 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:37:56,165.165 INFO    ] Checking for system updates...
[2026-06-27 18:37:56,186.186 INFO    ] 200
[2026-06-27 18:37:56,188.188 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:37:56,219.219 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:37:56,221.221 INFO    ] No update needed
[2026-06-27 18:37:56,222.222 INFO    ] Checking for camera pi updates...
[2026-06-27 18:37:56,247.247 INFO    ] 200
[2026-06-27 18:37:56,249.249 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:37:56,278.278 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:37:56,323.323 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:37:56,324.324 INFO    ] No camera update needed
[2026-06-27 18:37:56,326.326 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:37:56,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:37:56,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:37:56,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:37:58,373.373 INFO    ] ================================================
[2026-06-27 18:37:58,388.388 INFO    ] Launching Daemon at Sat Jun 27 18:37:58 IST 2026
[2026-06-27 18:37:58,399.399 INFO    ] ================================================
[2026-06-27 18:37:58,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:37:58
[2026-06-27 18:37:59,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:37:59,274.274 INFO    ] Initializing speech engine...
[2026-06-27 18:37:59,278.278 INFO    ] 2026-06-27 18:37:59
[2026-06-27 18:37:59,487.487 INFO    ] 2026-06-27 18:37:59
[2026-06-27 18:37:59,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:37:59,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:37:59,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:37:59,863.863 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:37:59,918.918 INFO    ] time= 27/06/2026 18:37:59
[2026-06-27 18:37:59,940.940 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:37:59,946.946 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:38:00,038.038 INFO    ] No existing commands found in stream
[2026-06-27 18:38:05,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:38:05,056.056 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-27 18:38:07,028.028 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 18:38:07,030.030 INFO    ] Checking for system updates...
[2026-06-27 18:38:07,051.051 INFO    ] 200
[2026-06-27 18:38:07,052.052 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:38:07,084.084 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:38:07,085.085 INFO    ] No update needed
[2026-06-27 18:38:07,087.087 INFO    ] Checking for camera pi updates...
[2026-06-27 18:38:07,113.113 INFO    ] 200
[2026-06-27 18:38:07,114.114 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:38:07,142.142 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:38:07,291.291 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:38:07,292.292 INFO    ] No camera update needed
[2026-06-27 18:38:07,294.294 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:38:07,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:38:07,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:38:07,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:38:09,340.340 INFO    ] ================================================
[2026-06-27 18:38:09,355.355 INFO    ] Launching Daemon at Sat Jun 27 18:38:09 IST 2026
[2026-06-27 18:38:09,366.366 INFO    ] ================================================
[2026-06-27 18:38:09,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:38:09
[2026-06-27 18:38:10,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:38:10,147.147 INFO    ] Initializing speech engine...
[2026-06-27 18:38:10,151.151 INFO    ] 2026-06-27 18:38:10
[2026-06-27 18:38:10,371.371 INFO    ] 2026-06-27 18:38:10
[2026-06-27 18:38:10,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:38:10,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:38:10,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:38:10,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:38:10,927.927 INFO    ] time= 27/06/2026 18:38:10
[2026-06-27 18:38:10,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:38:10,932.932 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:38:11,005.005 INFO    ] No existing commands found in stream
[2026-06-27 18:38:16,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:38:16,018.018 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-27 18:38:16,795.795 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 18:38:16,796.796 INFO    ] Checking for system updates...
[2026-06-27 18:38:16,817.817 INFO    ] 200
[2026-06-27 18:38:16,818.818 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:38:16,849.849 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:38:16,850.850 INFO    ] No update needed
[2026-06-27 18:38:16,851.851 INFO    ] Checking for camera pi updates...
[2026-06-27 18:38:16,872.872 INFO    ] 200
[2026-06-27 18:38:16,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:38:16,898.898 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:38:16,938.938 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:38:16,940.940 INFO    ] No camera update needed
[2026-06-27 18:38:16,941.941 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:38:16,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:38:16,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:38:16,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:38:18,986.986 INFO    ] ================================================
[2026-06-27 18:38:19,002.002 INFO    ] Launching Daemon at Sat Jun 27 18:38:18 IST 2026
[2026-06-27 18:38:19,013.013 INFO    ] ================================================
[2026-06-27 18:38:19,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:38:19
[2026-06-27 18:38:19,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:38:19,864.864 INFO    ] Initializing speech engine...
[2026-06-27 18:38:19,870.870 INFO    ] 2026-06-27 18:38:19
[2026-06-27 18:38:20,078.078 INFO    ] 2026-06-27 18:38:20
[2026-06-27 18:38:20,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:38:20,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:38:20,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:38:20,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:38:20,515.515 INFO    ] time= 27/06/2026 18:38:20
[2026-06-27 18:38:20,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:38:20,523.523 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:38:20,590.590 INFO    ] No existing commands found in stream
[2026-06-27 18:38:25,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:38:25,602.602 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-27 18:38:29,708.708 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:38:29,709.709 INFO    ] Checking for system updates...
[2026-06-27 18:38:29,731.731 INFO    ] 200
[2026-06-27 18:38:29,732.732 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:38:29,764.764 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:38:29,766.766 INFO    ] No update needed
[2026-06-27 18:38:29,767.767 INFO    ] Checking for camera pi updates...
[2026-06-27 18:38:29,787.787 INFO    ] 200
[2026-06-27 18:38:29,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:38:29,811.811 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:38:29,858.858 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:38:29,859.859 INFO    ] No camera update needed
[2026-06-27 18:38:29,860.860 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:38:29,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:38:29,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:38:29,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:38:31,907.907 INFO    ] ================================================
[2026-06-27 18:38:31,923.923 INFO    ] Launching Daemon at Sat Jun 27 18:38:31 IST 2026
[2026-06-27 18:38:31,934.934 INFO    ] ================================================
[2026-06-27 18:38:32,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:38:32
[2026-06-27 18:38:32,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:38:32,824.824 INFO    ] Initializing speech engine...
[2026-06-27 18:38:32,837.837 INFO    ] 2026-06-27 18:38:32
[2026-06-27 18:38:33,044.044 INFO    ] 2026-06-27 18:38:33
[2026-06-27 18:38:33,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:38:33,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:38:33,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:38:33,412.412 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:38:33,465.465 INFO    ] time= 27/06/2026 18:38:33
[2026-06-27 18:38:33,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:38:33,493.493 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:38:33,558.558 INFO    ] No existing commands found in stream
[2026-06-27 18:38:38,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:38:38,571.571 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-27 18:38:40,108.108 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 18:38:40,109.109 INFO    ] Checking for system updates...
[2026-06-27 18:38:40,132.132 INFO    ] 200
[2026-06-27 18:38:40,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:38:40,164.164 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:38:40,166.166 INFO    ] No update needed
[2026-06-27 18:38:40,167.167 INFO    ] Checking for camera pi updates...
[2026-06-27 18:38:40,188.188 INFO    ] 200
[2026-06-27 18:38:40,190.190 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:38:40,216.216 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:38:40,261.261 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:38:40,263.263 INFO    ] No camera update needed
[2026-06-27 18:38:40,265.265 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:38:40,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:38:40,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:38:40,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:38:42,315.315 INFO    ] ================================================
[2026-06-27 18:38:42,331.331 INFO    ] Launching Daemon at Sat Jun 27 18:38:42 IST 2026
[2026-06-27 18:38:42,342.342 INFO    ] ================================================
[2026-06-27 18:38:42,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:38:42
[2026-06-27 18:38:43,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:38:43,146.146 INFO    ] Initializing speech engine...
[2026-06-27 18:38:43,152.152 INFO    ] 2026-06-27 18:38:43
[2026-06-27 18:38:43,356.356 INFO    ] 2026-06-27 18:38:43
[2026-06-27 18:38:43,384.384 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:38:43,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:38:43,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:38:43,752.752 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:38:43,795.795 INFO    ] time= 27/06/2026 18:38:43
[2026-06-27 18:38:43,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:38:43,802.802 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:38:43,870.870 INFO    ] No existing commands found in stream
[2026-06-27 18:38:48,879.879 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:38:48,882.882 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-27 18:38:51,084.084 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:38:51,086.086 INFO    ] Checking for system updates...
[2026-06-27 18:38:51,107.107 INFO    ] 200
[2026-06-27 18:38:51,109.109 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:38:51,142.142 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:38:51,144.144 INFO    ] No update needed
[2026-06-27 18:38:51,146.146 INFO    ] Checking for camera pi updates...
[2026-06-27 18:38:51,166.166 INFO    ] 200
[2026-06-27 18:38:51,167.167 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:38:51,193.193 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:38:51,244.244 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:38:51,246.246 INFO    ] No camera update needed
[2026-06-27 18:38:51,247.247 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:38:51,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:38:51,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:38:51,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:38:53,297.297 INFO    ] ================================================
[2026-06-27 18:38:53,313.313 INFO    ] Launching Daemon at Sat Jun 27 18:38:53 IST 2026
[2026-06-27 18:38:53,324.324 INFO    ] ================================================
[2026-06-27 18:38:53,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:38:53
[2026-06-27 18:38:54,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:38:54,158.158 INFO    ] Initializing speech engine...
[2026-06-27 18:38:54,163.163 INFO    ] 2026-06-27 18:38:54
[2026-06-27 18:38:54,368.368 INFO    ] 2026-06-27 18:38:54
[2026-06-27 18:38:54,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:38:54,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:38:54,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:38:54,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:38:54,790.790 INFO    ] time= 27/06/2026 18:38:54
[2026-06-27 18:38:54,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:38:54,817.817 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:38:54,883.883 INFO    ] No existing commands found in stream
[2026-06-27 18:38:59,894.894 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:38:59,897.897 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-27 18:39:00,607.607 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 18:39:00,608.608 INFO    ] Checking for system updates...
[2026-06-27 18:39:00,630.630 INFO    ] 200
[2026-06-27 18:39:00,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:39:00,663.663 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:39:00,664.664 INFO    ] No update needed
[2026-06-27 18:39:00,665.665 INFO    ] Checking for camera pi updates...
[2026-06-27 18:39:00,687.687 INFO    ] 200
[2026-06-27 18:39:00,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:39:00,713.713 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:39:00,777.777 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:39:00,778.778 INFO    ] No camera update needed
[2026-06-27 18:39:00,780.780 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:39:00,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:39:00,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:39:00,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:39:02,819.819 INFO    ] ================================================
[2026-06-27 18:39:02,835.835 INFO    ] Launching Daemon at Sat Jun 27 18:39:02 IST 2026
[2026-06-27 18:39:02,850.850 INFO    ] ================================================
[2026-06-27 18:39:03,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:39:03
[2026-06-27 18:39:03,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:39:03,640.640 INFO    ] Initializing speech engine...
[2026-06-27 18:39:03,647.647 INFO    ] 2026-06-27 18:39:03
[2026-06-27 18:39:03,851.851 INFO    ] 2026-06-27 18:39:03
[2026-06-27 18:39:03,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:39:04,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:39:04,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:39:04,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:39:04,291.291 INFO    ] time= 27/06/2026 18:39:04
[2026-06-27 18:39:04,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:39:04,298.298 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:39:04,364.364 INFO    ] No existing commands found in stream
[2026-06-27 18:39:09,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:39:09,377.377 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-27 18:39:13,336.336 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 18:39:13,338.338 INFO    ] Checking for system updates...
[2026-06-27 18:39:13,359.359 INFO    ] 200
[2026-06-27 18:39:13,360.360 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:39:13,393.393 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:39:13,395.395 INFO    ] No update needed
[2026-06-27 18:39:13,396.396 INFO    ] Checking for camera pi updates...
[2026-06-27 18:39:13,416.416 INFO    ] 200
[2026-06-27 18:39:13,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:39:13,442.442 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:39:13,497.497 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:39:13,499.499 INFO    ] No camera update needed
[2026-06-27 18:39:13,500.500 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:39:13,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:39:13,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:39:13,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:39:15,546.546 INFO    ] ================================================
[2026-06-27 18:39:15,562.562 INFO    ] Launching Daemon at Sat Jun 27 18:39:15 IST 2026
[2026-06-27 18:39:15,574.574 INFO    ] ================================================
[2026-06-27 18:39:15,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:39:15
[2026-06-27 18:39:16,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:39:16,377.377 INFO    ] Initializing speech engine...
[2026-06-27 18:39:16,389.389 INFO    ] 2026-06-27 18:39:16
[2026-06-27 18:39:16,597.597 INFO    ] 2026-06-27 18:39:16
[2026-06-27 18:39:16,627.627 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:39:16,811.811 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:39:16,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:39:16,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:39:17,019.019 INFO    ] time= 27/06/2026 18:39:16
[2026-06-27 18:39:17,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:39:17,047.047 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:39:17,139.139 INFO    ] No existing commands found in stream
[2026-06-27 18:39:22,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:39:22,154.154 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-27 18:39:22,768.768 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:39:22,769.769 INFO    ] Checking for system updates...
[2026-06-27 18:39:22,791.791 INFO    ] 200
[2026-06-27 18:39:22,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:39:22,823.823 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:39:22,824.824 INFO    ] No update needed
[2026-06-27 18:39:22,826.826 INFO    ] Checking for camera pi updates...
[2026-06-27 18:39:22,847.847 INFO    ] 200
[2026-06-27 18:39:22,848.848 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:39:22,871.871 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:39:22,918.918 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:39:22,920.920 INFO    ] No camera update needed
[2026-06-27 18:39:22,921.921 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:39:22,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:39:22,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:39:22,928.928 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:39:24,968.968 INFO    ] ================================================
[2026-06-27 18:39:24,984.984 INFO    ] Launching Daemon at Sat Jun 27 18:39:24 IST 2026
[2026-06-27 18:39:25,995.995 INFO    ] ================================================
[2026-06-27 18:39:25,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:39:25
[2026-06-27 18:39:25,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:39:25,862.862 INFO    ] Initializing speech engine...
[2026-06-27 18:39:25,873.873 INFO    ] 2026-06-27 18:39:25
[2026-06-27 18:39:26,082.082 INFO    ] 2026-06-27 18:39:26
[2026-06-27 18:39:26,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:39:26,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:39:26,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:39:26,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:39:26,504.504 INFO    ] time= 27/06/2026 18:39:26
[2026-06-27 18:39:26,527.527 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:39:26,533.533 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:39:26,601.601 INFO    ] No existing commands found in stream
[2026-06-27 18:39:31,633.633 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:39:31,639.639 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-27 18:39:32,618.618 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:39:32,620.620 INFO    ] Checking for system updates...
[2026-06-27 18:39:32,641.641 INFO    ] 200
[2026-06-27 18:39:32,642.642 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:39:32,674.674 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:39:32,675.675 INFO    ] No update needed
[2026-06-27 18:39:32,676.676 INFO    ] Checking for camera pi updates...
[2026-06-27 18:39:32,697.697 INFO    ] 200
[2026-06-27 18:39:32,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:39:32,724.724 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:39:32,753.753 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:39:32,755.755 INFO    ] No camera update needed
[2026-06-27 18:39:32,756.756 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:39:32,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:39:32,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:39:32,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:39:34,804.804 INFO    ] ================================================
[2026-06-27 18:39:34,820.820 INFO    ] Launching Daemon at Sat Jun 27 18:39:34 IST 2026
[2026-06-27 18:39:34,832.832 INFO    ] ================================================
[2026-06-27 18:39:35,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:39:35
[2026-06-27 18:39:35,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:39:35,627.627 INFO    ] Initializing speech engine...
[2026-06-27 18:39:35,640.640 INFO    ] 2026-06-27 18:39:35
[2026-06-27 18:39:35,848.848 INFO    ] 2026-06-27 18:39:35
[2026-06-27 18:39:35,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:39:36,063.063 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:39:36,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:39:36,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:39:36,271.271 INFO    ] time= 27/06/2026 18:39:36
[2026-06-27 18:39:36,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:39:36,301.301 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:39:36,369.369 INFO    ] No existing commands found in stream
[2026-06-27 18:39:41,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:39:41,381.381 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-27 18:39:42,020.020 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 18:39:42,022.022 INFO    ] Checking for system updates...
[2026-06-27 18:39:42,044.044 INFO    ] 200
[2026-06-27 18:39:42,046.046 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:39:42,079.079 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:39:42,080.080 INFO    ] No update needed
[2026-06-27 18:39:42,082.082 INFO    ] Checking for camera pi updates...
[2026-06-27 18:39:42,102.102 INFO    ] 200
[2026-06-27 18:39:42,103.103 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:39:42,127.127 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:39:42,179.179 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:39:42,181.181 INFO    ] No camera update needed
[2026-06-27 18:39:42,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:39:42,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:39:42,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:39:42,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:39:44,229.229 INFO    ] ================================================
[2026-06-27 18:39:44,246.246 INFO    ] Launching Daemon at Sat Jun 27 18:39:44 IST 2026
[2026-06-27 18:39:44,257.257 INFO    ] ================================================
[2026-06-27 18:39:44,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:39:44
[2026-06-27 18:39:44,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:39:45,125.125 INFO    ] Initializing speech engine...
[2026-06-27 18:39:45,130.130 INFO    ] 2026-06-27 18:39:45
[2026-06-27 18:39:45,339.339 INFO    ] 2026-06-27 18:39:45
[2026-06-27 18:39:45,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:39:45,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:39:45,583.583 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:39:45,782.782 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:39:45,784.784 INFO    ] time= 27/06/2026 18:39:45
[2026-06-27 18:39:45,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:39:45,852.852 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:39:45,973.973 INFO    ] No existing commands found in stream
[2026-06-27 18:39:50,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:39:50,987.987 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-27 18:39:54,386.386 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:39:54,388.388 INFO    ] Checking for system updates...
[2026-06-27 18:39:54,409.409 INFO    ] 200
[2026-06-27 18:39:54,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:39:54,443.443 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:39:54,445.445 INFO    ] No update needed
[2026-06-27 18:39:54,446.446 INFO    ] Checking for camera pi updates...
[2026-06-27 18:39:54,469.469 INFO    ] 200
[2026-06-27 18:39:54,470.470 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:39:54,494.494 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:39:54,527.527 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:39:54,528.528 INFO    ] No camera update needed
[2026-06-27 18:39:54,529.529 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:39:54,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:39:54,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:39:54,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:39:56,576.576 INFO    ] ================================================
[2026-06-27 18:39:56,592.592 INFO    ] Launching Daemon at Sat Jun 27 18:39:56 IST 2026
[2026-06-27 18:39:56,603.603 INFO    ] ================================================
[2026-06-27 18:39:56,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:39:56
[2026-06-27 18:39:57,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:39:57,477.477 INFO    ] Initializing speech engine...
[2026-06-27 18:39:57,482.482 INFO    ] 2026-06-27 18:39:57
[2026-06-27 18:39:57,691.691 INFO    ] 2026-06-27 18:39:57
[2026-06-27 18:39:57,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:39:57,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:39:57,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:39:58,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:39:58,112.112 INFO    ] time= 27/06/2026 18:39:58
[2026-06-27 18:39:58,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:39:58,141.141 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:39:58,209.209 INFO    ] No existing commands found in stream
[2026-06-27 18:40:03,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:40:03,224.224 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-27 18:40:07,315.315 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:40:07,317.317 INFO    ] Checking for system updates...
[2026-06-27 18:40:07,339.339 INFO    ] 200
[2026-06-27 18:40:07,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:40:07,373.373 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:40:07,375.375 INFO    ] No update needed
[2026-06-27 18:40:07,376.376 INFO    ] Checking for camera pi updates...
[2026-06-27 18:40:07,396.396 INFO    ] 200
[2026-06-27 18:40:07,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:40:07,423.423 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:40:07,471.471 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:40:07,473.473 INFO    ] No camera update needed
[2026-06-27 18:40:07,474.474 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:40:07,476.476 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:40:07,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:40:07,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:40:09,522.522 INFO    ] ================================================
[2026-06-27 18:40:09,538.538 INFO    ] Launching Daemon at Sat Jun 27 18:40:09 IST 2026
[2026-06-27 18:40:09,549.549 INFO    ] ================================================
[2026-06-27 18:40:09,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:40:09
[2026-06-27 18:40:10,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:40:10,335.335 INFO    ] Initializing speech engine...
[2026-06-27 18:40:10,345.345 INFO    ] 2026-06-27 18:40:10
[2026-06-27 18:40:10,549.549 INFO    ] 2026-06-27 18:40:10
[2026-06-27 18:40:10,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:40:10,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:40:10,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:40:10,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:40:10,968.968 INFO    ] time= 27/06/2026 18:40:10
[2026-06-27 18:40:10,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:40:10,998.998 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:40:11,065.065 INFO    ] No existing commands found in stream
[2026-06-27 18:40:16,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:40:16,087.087 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-27 18:40:16,691.691 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 18:40:16,693.693 INFO    ] Checking for system updates...
[2026-06-27 18:40:16,714.714 INFO    ] 200
[2026-06-27 18:40:16,716.716 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:40:16,749.749 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:40:16,750.750 INFO    ] No update needed
[2026-06-27 18:40:16,752.752 INFO    ] Checking for camera pi updates...
[2026-06-27 18:40:16,772.772 INFO    ] 200
[2026-06-27 18:40:16,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:40:16,805.805 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:40:16,948.948 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:40:16,949.949 INFO    ] No camera update needed
[2026-06-27 18:40:16,950.950 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:40:16,952.952 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:40:16,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:40:16,958.958 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:40:19,997.997 INFO    ] ================================================
[2026-06-27 18:40:19,013.013 INFO    ] Launching Daemon at Sat Jun 27 18:40:19 IST 2026
[2026-06-27 18:40:19,024.024 INFO    ] ================================================
[2026-06-27 18:40:19,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:40:19
[2026-06-27 18:40:19,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:40:19,897.897 INFO    ] Initializing speech engine...
[2026-06-27 18:40:19,903.903 INFO    ] 2026-06-27 18:40:19
[2026-06-27 18:40:20,111.111 INFO    ] 2026-06-27 18:40:20
[2026-06-27 18:40:20,140.140 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:40:20,324.324 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:40:20,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:40:20,508.508 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:40:20,550.550 INFO    ] time= 27/06/2026 18:40:20
[2026-06-27 18:40:20,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:40:20,558.558 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:40:20,625.625 INFO    ] No existing commands found in stream
[2026-06-27 18:40:25,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:40:25,643.643 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-27 18:40:29,124.124 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 18:40:29,126.126 INFO    ] Checking for system updates...
[2026-06-27 18:40:29,148.148 INFO    ] 200
[2026-06-27 18:40:29,149.149 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:40:29,183.183 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:40:29,185.185 INFO    ] No update needed
[2026-06-27 18:40:29,186.186 INFO    ] Checking for camera pi updates...
[2026-06-27 18:40:29,207.207 INFO    ] 200
[2026-06-27 18:40:29,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:40:29,236.236 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:40:29,279.279 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:40:29,281.281 INFO    ] No camera update needed
[2026-06-27 18:40:29,282.282 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:40:29,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:40:29,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:40:29,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:40:31,329.329 INFO    ] ================================================
[2026-06-27 18:40:31,345.345 INFO    ] Launching Daemon at Sat Jun 27 18:40:31 IST 2026
[2026-06-27 18:40:31,356.356 INFO    ] ================================================
[2026-06-27 18:40:31,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:40:31
[2026-06-27 18:40:32,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:40:32,260.260 INFO    ] Initializing speech engine...
[2026-06-27 18:40:32,265.265 INFO    ] 2026-06-27 18:40:32
[2026-06-27 18:40:32,470.470 INFO    ] 2026-06-27 18:40:32
[2026-06-27 18:40:32,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:40:32,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:40:32,691.691 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:40:32,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:40:32,890.890 INFO    ] time= 27/06/2026 18:40:32
[2026-06-27 18:40:32,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:40:32,918.918 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:40:33,008.008 INFO    ] No existing commands found in stream
[2026-06-27 18:40:38,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:40:38,668.668 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-27 18:40:42,045.045 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:40:42,047.047 INFO    ] Checking for system updates...
[2026-06-27 18:40:42,074.074 INFO    ] 200
[2026-06-27 18:40:42,075.075 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:40:42,106.106 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:40:42,108.108 INFO    ] No update needed
[2026-06-27 18:40:42,109.109 INFO    ] Checking for camera pi updates...
[2026-06-27 18:40:42,129.129 INFO    ] 200
[2026-06-27 18:40:42,130.130 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:40:42,155.155 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:40:42,197.197 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:40:42,199.199 INFO    ] No camera update needed
[2026-06-27 18:40:42,200.200 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:40:42,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:40:42,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:40:42,207.207 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:40:44,246.246 INFO    ] ================================================
[2026-06-27 18:40:44,261.261 INFO    ] Launching Daemon at Sat Jun 27 18:40:44 IST 2026
[2026-06-27 18:40:44,272.272 INFO    ] ================================================
[2026-06-27 18:40:44,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:40:44
[2026-06-27 18:40:44,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:40:45,067.067 INFO    ] Initializing speech engine...
[2026-06-27 18:40:45,080.080 INFO    ] 2026-06-27 18:40:45
[2026-06-27 18:40:45,300.300 INFO    ] 2026-06-27 18:40:45
[2026-06-27 18:40:45,331.331 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:40:45,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:40:45,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:40:45,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:40:45,730.730 INFO    ] time= 27/06/2026 18:40:45
[2026-06-27 18:40:45,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:40:45,782.782 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:40:45,857.857 INFO    ] No existing commands found in stream
[2026-06-27 18:40:50,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:40:50,871.871 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-27 18:40:51,476.476 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:40:51,477.477 INFO    ] Checking for system updates...
[2026-06-27 18:40:51,498.498 INFO    ] 200
[2026-06-27 18:40:51,500.500 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:40:51,530.530 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:40:51,532.532 INFO    ] No update needed
[2026-06-27 18:40:51,533.533 INFO    ] Checking for camera pi updates...
[2026-06-27 18:40:51,555.555 INFO    ] 200
[2026-06-27 18:40:51,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:40:51,580.580 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:40:51,619.619 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:40:51,621.621 INFO    ] No camera update needed
[2026-06-27 18:40:51,622.622 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:40:51,623.623 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:40:51,626.626 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:40:51,629.629 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:40:53,668.668 INFO    ] ================================================
[2026-06-27 18:40:53,684.684 INFO    ] Launching Daemon at Sat Jun 27 18:40:53 IST 2026
[2026-06-27 18:40:53,695.695 INFO    ] ================================================
[2026-06-27 18:40:54,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:40:54
[2026-06-27 18:40:54,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:40:54,523.523 INFO    ] Initializing speech engine...
[2026-06-27 18:40:54,531.531 INFO    ] 2026-06-27 18:40:54
[2026-06-27 18:40:54,740.740 INFO    ] 2026-06-27 18:40:54
[2026-06-27 18:40:54,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:40:54,953.953 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:40:54,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:40:55,112.112 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:40:55,160.160 INFO    ] time= 27/06/2026 18:40:55
[2026-06-27 18:40:55,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:40:55,188.188 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:40:55,254.254 INFO    ] No existing commands found in stream
[2026-06-27 18:41:00,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:41:00,268.268 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-27 18:41:03,910.910 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 18:41:03,912.912 INFO    ] Checking for system updates...
[2026-06-27 18:41:03,934.934 INFO    ] 200
[2026-06-27 18:41:03,935.935 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:41:03,969.969 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:41:03,970.970 INFO    ] No update needed
[2026-06-27 18:41:03,971.971 INFO    ] Checking for camera pi updates...
[2026-06-27 18:41:03,991.991 INFO    ] 200
[2026-06-27 18:41:03,992.992 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:41:04,016.016 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:41:04,072.072 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:41:04,073.073 INFO    ] No camera update needed
[2026-06-27 18:41:04,075.075 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:41:04,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:41:04,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:41:04,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:41:06,123.123 INFO    ] ================================================
[2026-06-27 18:41:06,139.139 INFO    ] Launching Daemon at Sat Jun 27 18:41:06 IST 2026
[2026-06-27 18:41:06,150.150 INFO    ] ================================================
[2026-06-27 18:41:06,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:41:06
[2026-06-27 18:41:06,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:41:06,976.976 INFO    ] Initializing speech engine...
[2026-06-27 18:41:06,991.991 INFO    ] 2026-06-27 18:41:06
[2026-06-27 18:41:07,202.202 INFO    ] 2026-06-27 18:41:07
[2026-06-27 18:41:07,233.233 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:41:07,420.420 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:41:07,429.429 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:41:07,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:41:07,633.633 INFO    ] time= 27/06/2026 18:41:07
[2026-06-27 18:41:07,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:41:07,661.661 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:41:07,730.730 INFO    ] No existing commands found in stream
[2026-06-27 18:41:12,739.739 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:41:12,743.743 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-27 18:41:13,665.665 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 18:41:13,666.666 INFO    ] Checking for system updates...
[2026-06-27 18:41:13,689.689 INFO    ] 200
[2026-06-27 18:41:13,690.690 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:41:13,721.721 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:41:13,722.722 INFO    ] No update needed
[2026-06-27 18:41:13,724.724 INFO    ] Checking for camera pi updates...
[2026-06-27 18:41:13,745.745 INFO    ] 200
[2026-06-27 18:41:13,746.746 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:41:13,770.770 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:41:13,819.819 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:41:13,820.820 INFO    ] No camera update needed
[2026-06-27 18:41:13,821.821 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:41:13,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:41:13,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:41:13,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:41:15,867.867 INFO    ] ================================================
[2026-06-27 18:41:15,883.883 INFO    ] Launching Daemon at Sat Jun 27 18:41:15 IST 2026
[2026-06-27 18:41:15,894.894 INFO    ] ================================================
[2026-06-27 18:41:16,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:41:16
[2026-06-27 18:41:16,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:41:16,707.707 INFO    ] Initializing speech engine...
[2026-06-27 18:41:16,716.716 INFO    ] 2026-06-27 18:41:16
[2026-06-27 18:41:16,930.930 INFO    ] 2026-06-27 18:41:16
[2026-06-27 18:41:16,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:41:17,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:41:17,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:41:17,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:41:17,267.267 INFO    ] time= 27/06/2026 18:41:17
[2026-06-27 18:41:17,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:41:17,269.269 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:41:17,329.329 INFO    ] No existing commands found in stream
[2026-06-27 18:41:22,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:41:22,341.341 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-27 18:41:26,799.799 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 18:41:26,801.801 INFO    ] Checking for system updates...
[2026-06-27 18:41:26,822.822 INFO    ] 200
[2026-06-27 18:41:26,824.824 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:41:26,857.857 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:41:26,858.858 INFO    ] No update needed
[2026-06-27 18:41:26,859.859 INFO    ] Checking for camera pi updates...
[2026-06-27 18:41:26,879.879 INFO    ] 200
[2026-06-27 18:41:26,880.880 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:41:26,905.905 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:41:26,945.945 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:41:26,947.947 INFO    ] No camera update needed
[2026-06-27 18:41:26,948.948 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:41:26,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:41:26,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:41:26,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:41:29,995.995 INFO    ] ================================================
[2026-06-27 18:41:29,011.011 INFO    ] Launching Daemon at Sat Jun 27 18:41:29 IST 2026
[2026-06-27 18:41:29,022.022 INFO    ] ================================================
[2026-06-27 18:41:29,414.414 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:41:29
[2026-06-27 18:41:29,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:41:29,909.909 INFO    ] Initializing speech engine...
[2026-06-27 18:41:29,914.914 INFO    ] 2026-06-27 18:41:29
[2026-06-27 18:41:30,123.123 INFO    ] 2026-06-27 18:41:30
[2026-06-27 18:41:30,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:41:30,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:41:30,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:41:30,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:41:30,545.545 INFO    ] time= 27/06/2026 18:41:30
[2026-06-27 18:41:30,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:41:30,575.575 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:41:30,643.643 INFO    ] No existing commands found in stream
[2026-06-27 18:41:35,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:41:35,660.660 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-27 18:41:36,243.243 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:41:36,245.245 INFO    ] Checking for system updates...
[2026-06-27 18:41:36,267.267 INFO    ] 200
[2026-06-27 18:41:36,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:41:36,303.303 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:41:36,305.305 INFO    ] No update needed
[2026-06-27 18:41:36,306.306 INFO    ] Checking for camera pi updates...
[2026-06-27 18:41:36,326.326 INFO    ] 200
[2026-06-27 18:41:36,328.328 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:41:36,352.352 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:41:36,394.394 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:41:36,396.396 INFO    ] No camera update needed
[2026-06-27 18:41:36,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:41:36,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:41:36,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:41:36,405.405 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:41:38,444.444 INFO    ] ================================================
[2026-06-27 18:41:38,461.461 INFO    ] Launching Daemon at Sat Jun 27 18:41:38 IST 2026
[2026-06-27 18:41:38,473.473 INFO    ] ================================================
[2026-06-27 18:41:38,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:41:38
[2026-06-27 18:41:39,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:41:39,308.308 INFO    ] Initializing speech engine...
[2026-06-27 18:41:39,313.313 INFO    ] 2026-06-27 18:41:39
[2026-06-27 18:41:39,545.545 INFO    ] 2026-06-27 18:41:39
[2026-06-27 18:41:39,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:41:39,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:41:39,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:41:39,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:41:39,971.971 INFO    ] time= 27/06/2026 18:41:39
[2026-06-27 18:41:40,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:41:40,031.031 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:41:40,107.107 INFO    ] No existing commands found in stream
[2026-06-27 18:41:45,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:41:45,119.119 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-27 18:41:45,625.625 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:41:45,627.627 INFO    ] Checking for system updates...
[2026-06-27 18:41:45,647.647 INFO    ] 200
[2026-06-27 18:41:45,649.649 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:41:45,680.680 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:41:45,682.682 INFO    ] No update needed
[2026-06-27 18:41:45,683.683 INFO    ] Checking for camera pi updates...
[2026-06-27 18:41:45,703.703 INFO    ] 200
[2026-06-27 18:41:45,705.705 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:41:45,729.729 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:41:45,774.774 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:41:45,776.776 INFO    ] No camera update needed
[2026-06-27 18:41:45,777.777 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:41:45,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:41:45,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:41:45,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:41:47,825.825 INFO    ] ================================================
[2026-06-27 18:41:47,841.841 INFO    ] Launching Daemon at Sat Jun 27 18:41:47 IST 2026
[2026-06-27 18:41:47,852.852 INFO    ] ================================================
[2026-06-27 18:41:48,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:41:48
[2026-06-27 18:41:48,525.525 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:41:48,658.658 INFO    ] Initializing speech engine...
[2026-06-27 18:41:48,663.663 INFO    ] 2026-06-27 18:41:48
[2026-06-27 18:41:48,895.895 INFO    ] 2026-06-27 18:41:48
[2026-06-27 18:41:48,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:41:49,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:41:49,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:41:49,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:41:49,319.319 INFO    ] time= 27/06/2026 18:41:49
[2026-06-27 18:41:49,363.363 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:41:49,381.381 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:41:49,459.459 INFO    ] No existing commands found in stream
[2026-06-27 18:41:54,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:41:54,483.483 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-27 18:41:55,439.439 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 18:41:55,441.441 INFO    ] Checking for system updates...
[2026-06-27 18:41:55,463.463 INFO    ] 200
[2026-06-27 18:41:55,464.464 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:41:55,495.495 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:41:55,497.497 INFO    ] No update needed
[2026-06-27 18:41:55,498.498 INFO    ] Checking for camera pi updates...
[2026-06-27 18:41:55,518.518 INFO    ] 200
[2026-06-27 18:41:55,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:41:55,545.545 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:41:55,575.575 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:41:55,576.576 INFO    ] No camera update needed
[2026-06-27 18:41:55,577.577 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:41:55,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:41:55,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:41:55,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:41:57,623.623 INFO    ] ================================================
[2026-06-27 18:41:57,639.639 INFO    ] Launching Daemon at Sat Jun 27 18:41:57 IST 2026
[2026-06-27 18:41:57,651.651 INFO    ] ================================================
[2026-06-27 18:41:57,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:41:57
[2026-06-27 18:41:58,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:41:58,455.455 INFO    ] Initializing speech engine...
[2026-06-27 18:41:58,461.461 INFO    ] 2026-06-27 18:41:58
[2026-06-27 18:41:58,668.668 INFO    ] 2026-06-27 18:41:58
[2026-06-27 18:41:58,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:41:58,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:41:58,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:41:59,037.037 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:41:59,101.101 INFO    ] time= 27/06/2026 18:41:59
[2026-06-27 18:41:59,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:41:59,138.138 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:41:59,213.213 INFO    ] No existing commands found in stream
[2026-06-27 18:42:04,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:42:04,227.227 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-27 18:42:05,079.079 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 18:42:05,080.080 INFO    ] Checking for system updates...
[2026-06-27 18:42:05,101.101 INFO    ] 200
[2026-06-27 18:42:05,103.103 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:42:05,133.133 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:42:05,135.135 INFO    ] No update needed
[2026-06-27 18:42:05,136.136 INFO    ] Checking for camera pi updates...
[2026-06-27 18:42:05,155.155 INFO    ] 200
[2026-06-27 18:42:05,157.157 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:42:05,182.182 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:42:05,235.235 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:42:05,236.236 INFO    ] No camera update needed
[2026-06-27 18:42:05,237.237 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:42:05,239.239 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:42:05,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:42:05,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:42:07,285.285 INFO    ] ================================================
[2026-06-27 18:42:07,301.301 INFO    ] Launching Daemon at Sat Jun 27 18:42:07 IST 2026
[2026-06-27 18:42:07,312.312 INFO    ] ================================================
[2026-06-27 18:42:07,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:42:07
[2026-06-27 18:42:08,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:42:08,153.153 INFO    ] Initializing speech engine...
[2026-06-27 18:42:08,166.166 INFO    ] 2026-06-27 18:42:08
[2026-06-27 18:42:08,378.378 INFO    ] 2026-06-27 18:42:08
[2026-06-27 18:42:08,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:42:08,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:42:08,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:42:08,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:42:08,825.825 INFO    ] time= 27/06/2026 18:42:08
[2026-06-27 18:42:08,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:42:08,833.833 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:42:08,902.902 INFO    ] No existing commands found in stream
[2026-06-27 18:42:13,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:42:13,936.936 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-27 18:42:18,183.183 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 18:42:18,184.184 INFO    ] Checking for system updates...
[2026-06-27 18:42:18,206.206 INFO    ] 200
[2026-06-27 18:42:18,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:42:18,238.238 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:42:18,240.240 INFO    ] No update needed
[2026-06-27 18:42:18,241.241 INFO    ] Checking for camera pi updates...
[2026-06-27 18:42:18,262.262 INFO    ] 200
[2026-06-27 18:42:18,264.264 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:42:18,291.291 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:42:18,318.318 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:42:18,319.319 INFO    ] No camera update needed
[2026-06-27 18:42:18,321.321 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:42:18,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:42:18,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:42:18,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:42:20,369.369 INFO    ] ================================================
[2026-06-27 18:42:20,384.384 INFO    ] Launching Daemon at Sat Jun 27 18:42:20 IST 2026
[2026-06-27 18:42:20,395.395 INFO    ] ================================================
[2026-06-27 18:42:20,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:42:20
[2026-06-27 18:42:21,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:42:21,178.178 INFO    ] Initializing speech engine...
[2026-06-27 18:42:21,185.185 INFO    ] 2026-06-27 18:42:21
[2026-06-27 18:42:21,397.397 INFO    ] 2026-06-27 18:42:21
[2026-06-27 18:42:21,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:42:21,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:42:21,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:42:21,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:42:21,815.815 INFO    ] time= 27/06/2026 18:42:21
[2026-06-27 18:42:21,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:42:21,843.843 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:42:21,910.910 INFO    ] No existing commands found in stream
[2026-06-27 18:42:26,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:42:26,926.926 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-27 18:42:28,405.405 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:42:28,406.406 INFO    ] Checking for system updates...
[2026-06-27 18:42:28,428.428 INFO    ] 200
[2026-06-27 18:42:28,430.430 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:42:28,464.464 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:42:28,466.466 INFO    ] No update needed
[2026-06-27 18:42:28,467.467 INFO    ] Checking for camera pi updates...
[2026-06-27 18:42:28,488.488 INFO    ] 200
[2026-06-27 18:42:28,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:42:28,513.513 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:42:28,665.665 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:42:28,667.667 INFO    ] No camera update needed
[2026-06-27 18:42:28,668.668 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:42:28,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:42:28,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:42:28,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:42:30,708.708 INFO    ] ================================================
[2026-06-27 18:42:30,716.716 INFO    ] Launching Daemon at Sat Jun 27 18:42:30 IST 2026
[2026-06-27 18:42:30,723.723 INFO    ] ================================================
[2026-06-27 18:42:31,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:42:31
[2026-06-27 18:42:31,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:42:31,625.625 INFO    ] Initializing speech engine...
[2026-06-27 18:42:31,634.634 INFO    ] 2026-06-27 18:42:31
[2026-06-27 18:42:31,856.856 INFO    ] 2026-06-27 18:42:31
[2026-06-27 18:42:31,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:42:32,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:42:32,347.347 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:42:32,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:42:32,640.640 INFO    ] time= 27/06/2026 18:42:32
[2026-06-27 18:42:32,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:42:32,648.648 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:42:32,883.883 INFO    ] No existing commands found in stream
[2026-06-27 18:42:37,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:42:37,895.895 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-27 18:42:42,194.194 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:42:42,196.196 INFO    ] Checking for system updates...
[2026-06-27 18:42:42,217.217 INFO    ] 200
[2026-06-27 18:42:42,218.218 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:42:42,249.249 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:42:42,251.251 INFO    ] No update needed
[2026-06-27 18:42:42,252.252 INFO    ] Checking for camera pi updates...
[2026-06-27 18:42:42,272.272 INFO    ] 200
[2026-06-27 18:42:42,273.273 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:42:42,297.297 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:42:42,344.344 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:42:42,345.345 INFO    ] No camera update needed
[2026-06-27 18:42:42,347.347 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:42:42,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:42:42,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:42:42,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:42:44,394.394 INFO    ] ================================================
[2026-06-27 18:42:44,409.409 INFO    ] Launching Daemon at Sat Jun 27 18:42:44 IST 2026
[2026-06-27 18:42:44,420.420 INFO    ] ================================================
[2026-06-27 18:42:44,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:42:44
[2026-06-27 18:42:45,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:42:45,244.244 INFO    ] Initializing speech engine...
[2026-06-27 18:42:45,255.255 INFO    ] 2026-06-27 18:42:45
[2026-06-27 18:42:45,471.471 INFO    ] 2026-06-27 18:42:45
[2026-06-27 18:42:45,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:42:45,685.685 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:42:45,702.702 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:42:45,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:42:45,904.904 INFO    ] time= 27/06/2026 18:42:45
[2026-06-27 18:42:45,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:42:45,950.950 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:42:46,025.025 INFO    ] No existing commands found in stream
[2026-06-27 18:42:51,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:42:51,039.039 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-27 18:42:53,404.404 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:42:53,405.405 INFO    ] Checking for system updates...
[2026-06-27 18:42:53,426.426 INFO    ] 200
[2026-06-27 18:42:53,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:42:53,461.461 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:42:53,462.462 INFO    ] No update needed
[2026-06-27 18:42:53,463.463 INFO    ] Checking for camera pi updates...
[2026-06-27 18:42:53,483.483 INFO    ] 200
[2026-06-27 18:42:53,485.485 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:42:53,512.512 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:42:53,636.636 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:42:53,637.637 INFO    ] No camera update needed
[2026-06-27 18:42:53,639.639 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:42:53,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:42:53,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:42:53,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:42:55,685.685 INFO    ] ================================================
[2026-06-27 18:42:55,701.701 INFO    ] Launching Daemon at Sat Jun 27 18:42:55 IST 2026
[2026-06-27 18:42:55,711.711 INFO    ] ================================================
[2026-06-27 18:42:56,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:42:56
[2026-06-27 18:42:56,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:42:56,513.513 INFO    ] Initializing speech engine...
[2026-06-27 18:42:56,526.526 INFO    ] 2026-06-27 18:42:56
[2026-06-27 18:42:56,732.732 INFO    ] 2026-06-27 18:42:56
[2026-06-27 18:42:56,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:42:56,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:42:56,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:42:57,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:42:57,157.157 INFO    ] time= 27/06/2026 18:42:57
[2026-06-27 18:42:57,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:42:57,187.187 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:42:57,253.253 INFO    ] No existing commands found in stream
[2026-06-27 18:43:02,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:43:02,267.267 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-27 18:43:06,063.063 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:43:06,064.064 INFO    ] Checking for system updates...
[2026-06-27 18:43:06,085.085 INFO    ] 200
[2026-06-27 18:43:06,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:43:06,117.117 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:43:06,118.118 INFO    ] No update needed
[2026-06-27 18:43:06,119.119 INFO    ] Checking for camera pi updates...
[2026-06-27 18:43:06,139.139 INFO    ] 200
[2026-06-27 18:43:06,141.141 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:43:06,164.164 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:43:06,209.209 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:43:06,210.210 INFO    ] No camera update needed
[2026-06-27 18:43:06,211.211 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:43:06,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:43:06,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:43:06,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:43:08,256.256 INFO    ] ================================================
[2026-06-27 18:43:08,271.271 INFO    ] Launching Daemon at Sat Jun 27 18:43:08 IST 2026
[2026-06-27 18:43:08,282.282 INFO    ] ================================================
[2026-06-27 18:43:08,616.616 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:43:08
[2026-06-27 18:43:08,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:43:09,077.077 INFO    ] Initializing speech engine...
[2026-06-27 18:43:09,082.082 INFO    ] 2026-06-27 18:43:09
[2026-06-27 18:43:09,289.289 INFO    ] 2026-06-27 18:43:09
[2026-06-27 18:43:09,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:43:09,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:43:09,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:43:09,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:43:09,716.716 INFO    ] time= 27/06/2026 18:43:09
[2026-06-27 18:43:09,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:43:09,743.743 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:43:09,811.811 INFO    ] No existing commands found in stream
[2026-06-27 18:43:14,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:43:14,823.823 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-27 18:43:16,317.317 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:43:16,319.319 INFO    ] Checking for system updates...
[2026-06-27 18:43:16,340.340 INFO    ] 200
[2026-06-27 18:43:16,341.341 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:43:16,374.374 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:43:16,375.375 INFO    ] No update needed
[2026-06-27 18:43:16,377.377 INFO    ] Checking for camera pi updates...
[2026-06-27 18:43:16,398.398 INFO    ] 200
[2026-06-27 18:43:16,400.400 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:43:16,423.423 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:43:16,475.475 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:43:16,476.476 INFO    ] No camera update needed
[2026-06-27 18:43:16,477.477 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:43:16,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:43:16,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:43:16,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:43:18,527.527 INFO    ] ================================================
[2026-06-27 18:43:18,544.544 INFO    ] Launching Daemon at Sat Jun 27 18:43:18 IST 2026
[2026-06-27 18:43:18,555.555 INFO    ] ================================================
[2026-06-27 18:43:18,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:43:18
[2026-06-27 18:43:19,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:43:19,347.347 INFO    ] Initializing speech engine...
[2026-06-27 18:43:19,351.351 INFO    ] 2026-06-27 18:43:19
[2026-06-27 18:43:19,570.570 INFO    ] 2026-06-27 18:43:19
[2026-06-27 18:43:19,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:43:19,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:43:19,797.797 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:43:19,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:43:19,998.998 INFO    ] time= 27/06/2026 18:43:19
[2026-06-27 18:43:20,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:43:20,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:43:20,120.120 INFO    ] No existing commands found in stream
[2026-06-27 18:43:25,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:43:25,132.132 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-27 18:43:26,804.804 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:43:26,806.806 INFO    ] Checking for system updates...
[2026-06-27 18:43:26,827.827 INFO    ] 200
[2026-06-27 18:43:26,828.828 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:43:26,859.859 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:43:26,861.861 INFO    ] No update needed
[2026-06-27 18:43:26,862.862 INFO    ] Checking for camera pi updates...
[2026-06-27 18:43:26,882.882 INFO    ] 200
[2026-06-27 18:43:26,883.883 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:43:26,907.907 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:43:26,962.962 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:43:26,964.964 INFO    ] No camera update needed
[2026-06-27 18:43:26,965.965 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:43:26,966.966 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:43:26,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:43:26,972.972 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:43:29,011.011 INFO    ] ================================================
[2026-06-27 18:43:29,027.027 INFO    ] Launching Daemon at Sat Jun 27 18:43:29 IST 2026
[2026-06-27 18:43:29,038.038 INFO    ] ================================================
[2026-06-27 18:43:29,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:43:29
[2026-06-27 18:43:29,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:43:29,846.846 INFO    ] Initializing speech engine...
[2026-06-27 18:43:29,854.854 INFO    ] 2026-06-27 18:43:29
[2026-06-27 18:43:30,068.068 INFO    ] 2026-06-27 18:43:30
[2026-06-27 18:43:30,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:43:30,223.223 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:43:30,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:43:30,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:43:30,481.481 INFO    ] time= 27/06/2026 18:43:30
[2026-06-27 18:43:30,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:43:30,522.522 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:43:30,593.593 INFO    ] No existing commands found in stream
[2026-06-27 18:43:35,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:43:35,607.607 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-27 18:43:36,711.711 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:43:36,712.712 INFO    ] Checking for system updates...
[2026-06-27 18:43:36,733.733 INFO    ] 200
[2026-06-27 18:43:36,734.734 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:43:36,767.767 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:43:36,768.768 INFO    ] No update needed
[2026-06-27 18:43:36,769.769 INFO    ] Checking for camera pi updates...
[2026-06-27 18:43:36,789.789 INFO    ] 200
[2026-06-27 18:43:36,790.790 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:43:36,815.815 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:43:36,858.858 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:43:36,859.859 INFO    ] No camera update needed
[2026-06-27 18:43:36,860.860 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:43:36,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:43:36,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:43:36,867.867 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:43:38,905.905 INFO    ] ================================================
[2026-06-27 18:43:38,922.922 INFO    ] Launching Daemon at Sat Jun 27 18:43:38 IST 2026
[2026-06-27 18:43:38,933.933 INFO    ] ================================================
[2026-06-27 18:43:39,272.272 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:43:39
[2026-06-27 18:43:39,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:43:39,717.717 INFO    ] Initializing speech engine...
[2026-06-27 18:43:39,721.721 INFO    ] 2026-06-27 18:43:39
[2026-06-27 18:43:39,940.940 INFO    ] 2026-06-27 18:43:39
[2026-06-27 18:43:39,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:43:40,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:43:40,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:43:40,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:43:40,385.385 INFO    ] time= 27/06/2026 18:43:40
[2026-06-27 18:43:40,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:43:40,393.393 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:43:40,460.460 INFO    ] No existing commands found in stream
[2026-06-27 18:43:45,469.469 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:43:45,472.472 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-27 18:43:49,179.179 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 18:43:49,180.180 INFO    ] Checking for system updates...
[2026-06-27 18:43:49,205.205 INFO    ] 200
[2026-06-27 18:43:49,206.206 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:43:49,239.239 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:43:49,241.241 INFO    ] No update needed
[2026-06-27 18:43:49,242.242 INFO    ] Checking for camera pi updates...
[2026-06-27 18:43:49,265.265 INFO    ] 200
[2026-06-27 18:43:49,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:43:49,290.290 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:43:49,340.340 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:43:49,341.341 INFO    ] No camera update needed
[2026-06-27 18:43:49,342.342 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:43:49,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:43:49,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:43:49,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:43:51,390.390 INFO    ] ================================================
[2026-06-27 18:43:51,406.406 INFO    ] Launching Daemon at Sat Jun 27 18:43:51 IST 2026
[2026-06-27 18:43:51,417.417 INFO    ] ================================================
[2026-06-27 18:43:51,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:43:51
[2026-06-27 18:43:52,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:43:52,260.260 INFO    ] Initializing speech engine...
[2026-06-27 18:43:52,266.266 INFO    ] 2026-06-27 18:43:52
[2026-06-27 18:43:52,473.473 INFO    ] 2026-06-27 18:43:52
[2026-06-27 18:43:52,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:43:52,684.684 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:43:52,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:43:52,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:43:52,876.876 INFO    ] time= 27/06/2026 18:43:52
[2026-06-27 18:43:52,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:43:52,914.914 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:43:52,986.986 INFO    ] No existing commands found in stream
[2026-06-27 18:43:57,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:43:57,998.998 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-27 18:44:00,411.411 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 18:44:00,412.412 INFO    ] Checking for system updates...
[2026-06-27 18:44:00,433.433 INFO    ] 200
[2026-06-27 18:44:00,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:44:00,465.465 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:44:00,466.466 INFO    ] No update needed
[2026-06-27 18:44:00,467.467 INFO    ] Checking for camera pi updates...
[2026-06-27 18:44:00,489.489 INFO    ] 200
[2026-06-27 18:44:00,490.490 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:44:00,516.516 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:44:00,556.556 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:44:00,557.557 INFO    ] No camera update needed
[2026-06-27 18:44:00,558.558 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:44:00,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:44:00,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:44:00,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:44:02,596.596 INFO    ] ================================================
[2026-06-27 18:44:02,605.605 INFO    ] Launching Daemon at Sat Jun 27 18:44:02 IST 2026
[2026-06-27 18:44:02,611.611 INFO    ] ================================================
[2026-06-27 18:44:02,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:44:02
[2026-06-27 18:44:03,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:44:03,367.367 INFO    ] Initializing speech engine...
[2026-06-27 18:44:03,370.370 INFO    ] 2026-06-27 18:44:03
[2026-06-27 18:44:03,587.587 INFO    ] 2026-06-27 18:44:03
[2026-06-27 18:44:03,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:44:03,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:44:03,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:44:03,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:44:04,006.006 INFO    ] time= 27/06/2026 18:44:03
[2026-06-27 18:44:04,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:44:04,035.035 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:44:04,102.102 INFO    ] No existing commands found in stream
[2026-06-27 18:44:09,110.110 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:44:09,113.113 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-27 18:44:12,657.657 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 18:44:12,659.659 INFO    ] Checking for system updates...
[2026-06-27 18:44:12,681.681 INFO    ] 200
[2026-06-27 18:44:12,682.682 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:44:12,713.713 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:44:12,715.715 INFO    ] No update needed
[2026-06-27 18:44:12,716.716 INFO    ] Checking for camera pi updates...
[2026-06-27 18:44:12,736.736 INFO    ] 200
[2026-06-27 18:44:12,738.738 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:44:12,762.762 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:44:12,810.810 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:44:12,812.812 INFO    ] No camera update needed
[2026-06-27 18:44:12,813.813 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:44:12,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:44:12,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:44:12,820.820 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:44:14,861.861 INFO    ] ================================================
[2026-06-27 18:44:14,877.877 INFO    ] Launching Daemon at Sat Jun 27 18:44:14 IST 2026
[2026-06-27 18:44:14,888.888 INFO    ] ================================================
[2026-06-27 18:44:15,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:44:15
[2026-06-27 18:44:15,552.552 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:44:15,687.687 INFO    ] Initializing speech engine...
[2026-06-27 18:44:15,699.699 INFO    ] 2026-06-27 18:44:15
[2026-06-27 18:44:15,905.905 INFO    ] 2026-06-27 18:44:15
[2026-06-27 18:44:15,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:44:16,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:44:16,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:44:16,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:44:16,324.324 INFO    ] time= 27/06/2026 18:44:16
[2026-06-27 18:44:16,348.348 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:44:16,354.354 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:44:16,421.421 INFO    ] No existing commands found in stream
[2026-06-27 18:44:21,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:44:21,433.433 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-27 18:44:25,808.808 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:44:25,809.809 INFO    ] Checking for system updates...
[2026-06-27 18:44:25,830.830 INFO    ] 200
[2026-06-27 18:44:25,832.832 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:44:25,865.865 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:44:25,867.867 INFO    ] No update needed
[2026-06-27 18:44:25,868.868 INFO    ] Checking for camera pi updates...
[2026-06-27 18:44:25,888.888 INFO    ] 200
[2026-06-27 18:44:25,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:44:25,913.913 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:44:25,955.955 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:44:25,957.957 INFO    ] No camera update needed
[2026-06-27 18:44:25,958.958 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:44:25,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:44:25,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:44:25,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:44:28,004.004 INFO    ] ================================================
[2026-06-27 18:44:28,020.020 INFO    ] Launching Daemon at Sat Jun 27 18:44:28 IST 2026
[2026-06-27 18:44:28,031.031 INFO    ] ================================================
[2026-06-27 18:44:28,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:44:28
[2026-06-27 18:44:28,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:44:28,882.882 INFO    ] Initializing speech engine...
[2026-06-27 18:44:28,886.886 INFO    ] 2026-06-27 18:44:28
[2026-06-27 18:44:29,088.088 INFO    ] 2026-06-27 18:44:29
[2026-06-27 18:44:29,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:44:29,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:44:29,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:44:29,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:44:29,504.504 INFO    ] time= 27/06/2026 18:44:29
[2026-06-27 18:44:29,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:44:29,534.534 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:44:29,601.601 INFO    ] No existing commands found in stream
[2026-06-27 18:44:34,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:44:34,609.609 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-27 18:44:38,337.337 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:44:38,338.338 INFO    ] Checking for system updates...
[2026-06-27 18:44:38,360.360 INFO    ] 200
[2026-06-27 18:44:38,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:44:38,392.392 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:44:38,393.393 INFO    ] No update needed
[2026-06-27 18:44:38,394.394 INFO    ] Checking for camera pi updates...
[2026-06-27 18:44:38,418.418 INFO    ] 200
[2026-06-27 18:44:38,419.419 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:44:38,443.443 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:44:38,489.489 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:44:38,490.490 INFO    ] No camera update needed
[2026-06-27 18:44:38,491.491 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:44:38,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:44:38,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:44:38,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:44:40,538.538 INFO    ] ================================================
[2026-06-27 18:44:40,554.554 INFO    ] Launching Daemon at Sat Jun 27 18:44:40 IST 2026
[2026-06-27 18:44:40,564.564 INFO    ] ================================================
[2026-06-27 18:44:40,923.923 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:44:40
[2026-06-27 18:44:41,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:44:41,400.400 INFO    ] Initializing speech engine...
[2026-06-27 18:44:41,410.410 INFO    ] 2026-06-27 18:44:41
[2026-06-27 18:44:41,619.619 INFO    ] 2026-06-27 18:44:41
[2026-06-27 18:44:41,648.648 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:44:41,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:44:41,842.842 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:44:42,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:44:42,061.061 INFO    ] time= 27/06/2026 18:44:42
[2026-06-27 18:44:42,067.067 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:44:42,069.069 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:44:42,137.137 INFO    ] No existing commands found in stream
[2026-06-27 18:44:47,151.151 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:44:47,154.154 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-27 18:44:47,948.948 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 18:44:47,949.949 INFO    ] Checking for system updates...
[2026-06-27 18:44:47,971.971 INFO    ] 200
[2026-06-27 18:44:47,972.972 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:44:48,007.007 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:44:48,008.008 INFO    ] No update needed
[2026-06-27 18:44:48,009.009 INFO    ] Checking for camera pi updates...
[2026-06-27 18:44:48,030.030 INFO    ] 200
[2026-06-27 18:44:48,031.031 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:44:48,055.055 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:44:48,102.102 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:44:48,103.103 INFO    ] No camera update needed
[2026-06-27 18:44:48,104.104 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:44:48,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:44:48,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:44:48,111.111 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:44:50,150.150 INFO    ] ================================================
[2026-06-27 18:44:50,167.167 INFO    ] Launching Daemon at Sat Jun 27 18:44:50 IST 2026
[2026-06-27 18:44:50,177.177 INFO    ] ================================================
[2026-06-27 18:44:50,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:44:50
[2026-06-27 18:44:50,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:44:50,964.964 INFO    ] Initializing speech engine...
[2026-06-27 18:44:50,970.970 INFO    ] 2026-06-27 18:44:50
[2026-06-27 18:44:51,174.174 INFO    ] 2026-06-27 18:44:51
[2026-06-27 18:44:51,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:44:51,334.334 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:44:51,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:44:51,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:44:51,592.592 INFO    ] time= 27/06/2026 18:44:51
[2026-06-27 18:44:51,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:44:51,622.622 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:44:51,689.689 INFO    ] No existing commands found in stream
[2026-06-27 18:44:56,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:44:56,706.706 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-27 18:44:57,642.642 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:44:57,644.644 INFO    ] Checking for system updates...
[2026-06-27 18:44:57,665.665 INFO    ] 200
[2026-06-27 18:44:57,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:44:57,698.698 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:44:57,700.700 INFO    ] No update needed
[2026-06-27 18:44:57,701.701 INFO    ] Checking for camera pi updates...
[2026-06-27 18:44:57,721.721 INFO    ] 200
[2026-06-27 18:44:57,722.722 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:44:57,747.747 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:44:57,789.789 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:44:57,790.790 INFO    ] No camera update needed
[2026-06-27 18:44:57,791.791 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:44:57,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:44:57,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:44:57,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:44:59,837.837 INFO    ] ================================================
[2026-06-27 18:44:59,851.851 INFO    ] Launching Daemon at Sat Jun 27 18:44:59 IST 2026
[2026-06-27 18:44:59,862.862 INFO    ] ================================================
[2026-06-27 18:45:00,194.194 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:45:00
[2026-06-27 18:45:00,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:45:00,636.636 INFO    ] Initializing speech engine...
[2026-06-27 18:45:00,640.640 INFO    ] 2026-06-27 18:45:00
[2026-06-27 18:45:00,857.857 INFO    ] 2026-06-27 18:45:00
[2026-06-27 18:45:00,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:45:01,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:45:01,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:45:01,299.299 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:45:01,306.306 INFO    ] time= 27/06/2026 18:45:01
[2026-06-27 18:45:01,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:45:01,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:45:01,380.380 INFO    ] No existing commands found in stream
[2026-06-27 18:45:06,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:45:06,389.389 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-27 18:45:10,356.356 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 18:45:10,357.357 INFO    ] Checking for system updates...
[2026-06-27 18:45:10,378.378 INFO    ] 200
[2026-06-27 18:45:10,379.379 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:45:10,413.413 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:45:10,414.414 INFO    ] No update needed
[2026-06-27 18:45:10,415.415 INFO    ] Checking for camera pi updates...
[2026-06-27 18:45:10,436.436 INFO    ] 200
[2026-06-27 18:45:10,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:45:10,460.460 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:45:10,500.500 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:45:10,501.501 INFO    ] No camera update needed
[2026-06-27 18:45:10,502.502 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:45:10,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:45:10,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:45:10,509.509 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:45:12,548.548 INFO    ] ================================================
[2026-06-27 18:45:12,563.563 INFO    ] Launching Daemon at Sat Jun 27 18:45:12 IST 2026
[2026-06-27 18:45:12,575.575 INFO    ] ================================================
[2026-06-27 18:45:12,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:45:12
[2026-06-27 18:45:13,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:45:13,432.432 INFO    ] Initializing speech engine...
[2026-06-27 18:45:13,436.436 INFO    ] 2026-06-27 18:45:13
[2026-06-27 18:45:13,641.641 INFO    ] 2026-06-27 18:45:13
[2026-06-27 18:45:13,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:45:13,858.858 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:45:13,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:45:14,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:45:14,082.082 INFO    ] time= 27/06/2026 18:45:14
[2026-06-27 18:45:14,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:45:14,098.098 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:45:14,166.166 INFO    ] No existing commands found in stream
[2026-06-27 18:45:19,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:45:19,178.178 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-27 18:45:23,581.581 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:45:23,582.582 INFO    ] Checking for system updates...
[2026-06-27 18:45:23,604.604 INFO    ] 200
[2026-06-27 18:45:23,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:45:23,636.636 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:45:23,638.638 INFO    ] No update needed
[2026-06-27 18:45:23,639.639 INFO    ] Checking for camera pi updates...
[2026-06-27 18:45:23,658.658 INFO    ] 200
[2026-06-27 18:45:23,660.660 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:45:23,685.685 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:45:23,726.726 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:45:23,727.727 INFO    ] No camera update needed
[2026-06-27 18:45:23,729.729 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:45:23,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:45:23,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:45:23,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:45:25,774.774 INFO    ] ================================================
[2026-06-27 18:45:25,790.790 INFO    ] Launching Daemon at Sat Jun 27 18:45:25 IST 2026
[2026-06-27 18:45:25,801.801 INFO    ] ================================================
[2026-06-27 18:45:26,160.160 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:45:26
[2026-06-27 18:45:26,474.474 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:45:26,608.608 INFO    ] Initializing speech engine...
[2026-06-27 18:45:26,621.621 INFO    ] 2026-06-27 18:45:26
[2026-06-27 18:45:26,832.832 INFO    ] 2026-06-27 18:45:26
[2026-06-27 18:45:26,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:45:27,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:45:27,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:45:27,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:45:27,265.265 INFO    ] time= 27/06/2026 18:45:27
[2026-06-27 18:45:27,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:45:27,287.287 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:45:27,355.355 INFO    ] No existing commands found in stream
[2026-06-27 18:45:32,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:45:32,383.383 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-27 18:45:33,178.178 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 18:45:33,180.180 INFO    ] Checking for system updates...
[2026-06-27 18:45:33,201.201 INFO    ] 200
[2026-06-27 18:45:33,203.203 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:45:33,236.236 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:45:33,238.238 INFO    ] No update needed
[2026-06-27 18:45:33,239.239 INFO    ] Checking for camera pi updates...
[2026-06-27 18:45:33,261.261 INFO    ] 200
[2026-06-27 18:45:33,263.263 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:45:33,287.287 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:45:33,329.329 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:45:33,330.330 INFO    ] No camera update needed
[2026-06-27 18:45:33,332.332 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:45:33,334.334 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:45:33,337.337 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:45:33,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:45:35,380.380 INFO    ] ================================================
[2026-06-27 18:45:35,396.396 INFO    ] Launching Daemon at Sat Jun 27 18:45:35 IST 2026
[2026-06-27 18:45:35,406.406 INFO    ] ================================================
[2026-06-27 18:45:35,782.782 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:45:35
[2026-06-27 18:45:36,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:45:36,250.250 INFO    ] Initializing speech engine...
[2026-06-27 18:45:36,256.256 INFO    ] 2026-06-27 18:45:36
[2026-06-27 18:45:36,460.460 INFO    ] 2026-06-27 18:45:36
[2026-06-27 18:45:36,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:45:36,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:45:36,675.675 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:45:36,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:45:36,880.880 INFO    ] time= 27/06/2026 18:45:36
[2026-06-27 18:45:36,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:45:36,908.908 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:45:36,998.998 INFO    ] No existing commands found in stream
[2026-06-27 18:45:42,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:45:42,015.015 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-27 18:45:43,762.762 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:45:43,764.764 INFO    ] Checking for system updates...
[2026-06-27 18:45:43,786.786 INFO    ] 200
[2026-06-27 18:45:43,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:45:43,821.821 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:45:43,822.822 INFO    ] No update needed
[2026-06-27 18:45:43,824.824 INFO    ] Checking for camera pi updates...
[2026-06-27 18:45:43,843.843 INFO    ] 200
[2026-06-27 18:45:43,845.845 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:45:43,868.868 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:45:43,912.912 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:45:43,913.913 INFO    ] No camera update needed
[2026-06-27 18:45:43,915.915 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:45:43,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:45:43,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:45:43,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:45:45,961.961 INFO    ] ================================================
[2026-06-27 18:45:45,978.978 INFO    ] Launching Daemon at Sat Jun 27 18:45:45 IST 2026
[2026-06-27 18:45:45,989.989 INFO    ] ================================================
[2026-06-27 18:45:46,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:45:46
[2026-06-27 18:45:46,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:45:46,765.765 INFO    ] Initializing speech engine...
[2026-06-27 18:45:46,775.775 INFO    ] 2026-06-27 18:45:46
[2026-06-27 18:45:46,979.979 INFO    ] 2026-06-27 18:45:46
[2026-06-27 18:45:47,007.007 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:45:47,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:45:47,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:45:47,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:45:47,419.419 INFO    ] time= 27/06/2026 18:45:47
[2026-06-27 18:45:47,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:45:47,426.426 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:45:47,492.492 INFO    ] No existing commands found in stream
[2026-06-27 18:45:52,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:45:52,504.504 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-27 18:45:55,062.062 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 18:45:55,064.064 INFO    ] Checking for system updates...
[2026-06-27 18:45:55,085.085 INFO    ] 200
[2026-06-27 18:45:55,086.086 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:45:55,118.118 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:45:55,119.119 INFO    ] No update needed
[2026-06-27 18:45:55,121.121 INFO    ] Checking for camera pi updates...
[2026-06-27 18:45:55,142.142 INFO    ] 200
[2026-06-27 18:45:55,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:45:55,168.168 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:45:55,202.202 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:45:55,205.205 INFO    ] No camera update needed
[2026-06-27 18:45:55,208.208 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:45:55,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:45:55,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:45:55,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:45:57,262.262 INFO    ] ================================================
[2026-06-27 18:45:57,277.277 INFO    ] Launching Daemon at Sat Jun 27 18:45:57 IST 2026
[2026-06-27 18:45:57,288.288 INFO    ] ================================================
[2026-06-27 18:45:57,637.637 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:45:57
[2026-06-27 18:45:57,956.956 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:45:58,103.103 INFO    ] Initializing speech engine...
[2026-06-27 18:45:58,107.107 INFO    ] 2026-06-27 18:45:58
[2026-06-27 18:45:58,309.309 INFO    ] 2026-06-27 18:45:58
[2026-06-27 18:45:58,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:45:58,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:45:58,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:45:58,677.677 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:45:58,729.729 INFO    ] time= 27/06/2026 18:45:58
[2026-06-27 18:45:58,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:45:58,757.757 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:45:58,823.823 INFO    ] No existing commands found in stream
[2026-06-27 18:46:03,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:46:03,835.835 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-27 18:46:05,824.824 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:46:05,825.825 INFO    ] Checking for system updates...
[2026-06-27 18:46:05,846.846 INFO    ] 200
[2026-06-27 18:46:05,848.848 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:46:05,879.879 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:46:05,880.880 INFO    ] No update needed
[2026-06-27 18:46:05,883.883 INFO    ] Checking for camera pi updates...
[2026-06-27 18:46:05,920.920 INFO    ] 200
[2026-06-27 18:46:05,923.923 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:46:05,970.970 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:46:06,024.024 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:46:06,025.025 INFO    ] No camera update needed
[2026-06-27 18:46:06,027.027 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:46:06,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:46:06,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:46:06,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:46:08,066.066 INFO    ] ================================================
[2026-06-27 18:46:08,075.075 INFO    ] Launching Daemon at Sat Jun 27 18:46:08 IST 2026
[2026-06-27 18:46:08,082.082 INFO    ] ================================================
[2026-06-27 18:46:08,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:46:08
[2026-06-27 18:46:08,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:46:08,934.934 INFO    ] Initializing speech engine...
[2026-06-27 18:46:08,943.943 INFO    ] 2026-06-27 18:46:08
[2026-06-27 18:46:09,145.145 INFO    ] 2026-06-27 18:46:09
[2026-06-27 18:46:09,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:46:09,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:46:09,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:46:09,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:46:09,567.567 INFO    ] time= 27/06/2026 18:46:09
[2026-06-27 18:46:09,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:46:09,672.672 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:46:09,772.772 INFO    ] No existing commands found in stream
[2026-06-27 18:46:14,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:46:14,786.786 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-27 18:46:17,172.172 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:46:17,173.173 INFO    ] Checking for system updates...
[2026-06-27 18:46:17,194.194 INFO    ] 200
[2026-06-27 18:46:17,195.195 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:46:17,229.229 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:46:17,230.230 INFO    ] No update needed
[2026-06-27 18:46:17,231.231 INFO    ] Checking for camera pi updates...
[2026-06-27 18:46:17,252.252 INFO    ] 200
[2026-06-27 18:46:17,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:46:17,277.277 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:46:17,324.324 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:46:17,325.325 INFO    ] No camera update needed
[2026-06-27 18:46:17,327.327 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:46:17,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:46:17,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:46:17,334.334 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:46:19,373.373 INFO    ] ================================================
[2026-06-27 18:46:19,388.388 INFO    ] Launching Daemon at Sat Jun 27 18:46:19 IST 2026
[2026-06-27 18:46:19,399.399 INFO    ] ================================================
[2026-06-27 18:46:19,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:46:19
[2026-06-27 18:46:20,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:46:20,241.241 INFO    ] Initializing speech engine...
[2026-06-27 18:46:20,247.247 INFO    ] 2026-06-27 18:46:20
[2026-06-27 18:46:20,456.456 INFO    ] 2026-06-27 18:46:20
[2026-06-27 18:46:20,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:46:23,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:46:23,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:46:23,860.860 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:46:23,864.864 INFO    ] time= 27/06/2026 18:46:23
[2026-06-27 18:46:23,867.867 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:46:23,869.869 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:46:23,936.936 INFO    ] No existing commands found in stream
[2026-06-27 18:46:28,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:46:28,949.949 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-27 18:46:32,172.172 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 18:46:32,174.174 INFO    ] Checking for system updates...
[2026-06-27 18:46:32,199.199 INFO    ] 200
[2026-06-27 18:46:32,201.201 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:46:32,239.239 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:46:32,241.241 INFO    ] No update needed
[2026-06-27 18:46:32,244.244 INFO    ] Checking for camera pi updates...
[2026-06-27 18:46:32,269.269 INFO    ] 200
[2026-06-27 18:46:32,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:46:32,301.301 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:46:32,339.339 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:46:32,341.341 INFO    ] No camera update needed
[2026-06-27 18:46:32,342.342 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:46:32,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:46:32,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:46:32,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:46:34,389.389 INFO    ] ================================================
[2026-06-27 18:46:34,405.405 INFO    ] Launching Daemon at Sat Jun 27 18:46:34 IST 2026
[2026-06-27 18:46:34,415.415 INFO    ] ================================================
[2026-06-27 18:46:34,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:46:34
[2026-06-27 18:46:35,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:46:35,213.213 INFO    ] Initializing speech engine...
[2026-06-27 18:46:35,221.221 INFO    ] 2026-06-27 18:46:35
[2026-06-27 18:46:35,436.436 INFO    ] 2026-06-27 18:46:35
[2026-06-27 18:46:35,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:46:35,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:46:35,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:46:35,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:46:35,861.861 INFO    ] time= 27/06/2026 18:46:35
[2026-06-27 18:46:35,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:46:35,888.888 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:46:35,956.956 INFO    ] No existing commands found in stream
[2026-06-27 18:46:40,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:46:40,972.972 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-27 18:46:41,896.896 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:46:41,897.897 INFO    ] Checking for system updates...
[2026-06-27 18:46:41,918.918 INFO    ] 200
[2026-06-27 18:46:41,919.919 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:46:41,952.952 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:46:41,953.953 INFO    ] No update needed
[2026-06-27 18:46:41,955.955 INFO    ] Checking for camera pi updates...
[2026-06-27 18:46:41,979.979 INFO    ] 200
[2026-06-27 18:46:41,981.981 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:46:42,004.004 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:46:42,146.146 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:46:42,147.147 INFO    ] No camera update needed
[2026-06-27 18:46:42,148.148 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:46:42,149.149 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:46:42,152.152 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:46:42,155.155 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:46:44,194.194 INFO    ] ================================================
[2026-06-27 18:46:44,210.210 INFO    ] Launching Daemon at Sat Jun 27 18:46:44 IST 2026
[2026-06-27 18:46:44,220.220 INFO    ] ================================================
[2026-06-27 18:46:44,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:46:44
[2026-06-27 18:46:44,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:46:45,025.025 INFO    ] Initializing speech engine...
[2026-06-27 18:46:45,030.030 INFO    ] 2026-06-27 18:46:45
[2026-06-27 18:46:45,232.232 INFO    ] 2026-06-27 18:46:45
[2026-06-27 18:46:45,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:46:45,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:46:45,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:46:45,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:46:45,654.654 INFO    ] time= 27/06/2026 18:46:45
[2026-06-27 18:46:45,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:46:45,684.684 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:46:45,761.761 INFO    ] No existing commands found in stream
[2026-06-27 18:46:50,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:46:50,789.789 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-27 18:46:51,731.731 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:46:51,733.733 INFO    ] Checking for system updates...
[2026-06-27 18:46:51,756.756 INFO    ] 200
[2026-06-27 18:46:51,758.758 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:46:51,792.792 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:46:51,794.794 INFO    ] No update needed
[2026-06-27 18:46:51,795.795 INFO    ] Checking for camera pi updates...
[2026-06-27 18:46:51,815.815 INFO    ] 200
[2026-06-27 18:46:51,817.817 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:46:51,842.842 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:46:51,884.884 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:46:51,885.885 INFO    ] No camera update needed
[2026-06-27 18:46:51,887.887 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:46:51,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:46:51,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:46:51,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:46:53,936.936 INFO    ] ================================================
[2026-06-27 18:46:53,951.951 INFO    ] Launching Daemon at Sat Jun 27 18:46:53 IST 2026
[2026-06-27 18:46:53,962.962 INFO    ] ================================================
[2026-06-27 18:46:54,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:46:54
[2026-06-27 18:46:54,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:46:54,756.756 INFO    ] Initializing speech engine...
[2026-06-27 18:46:54,765.765 INFO    ] 2026-06-27 18:46:54
[2026-06-27 18:46:54,970.970 INFO    ] 2026-06-27 18:46:54
[2026-06-27 18:46:54,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:46:55,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:46:55,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:46:55,386.386 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:46:55,411.411 INFO    ] time= 27/06/2026 18:46:55
[2026-06-27 18:46:55,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:46:55,419.419 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:46:55,486.486 INFO    ] No existing commands found in stream
[2026-06-27 18:47:00,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:47:00,520.520 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-27 18:47:03,822.822 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:47:03,824.824 INFO    ] Checking for system updates...
[2026-06-27 18:47:03,845.845 INFO    ] 200
[2026-06-27 18:47:03,847.847 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:47:03,878.878 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:47:03,879.879 INFO    ] No update needed
[2026-06-27 18:47:03,881.881 INFO    ] Checking for camera pi updates...
[2026-06-27 18:47:03,900.900 INFO    ] 200
[2026-06-27 18:47:03,902.902 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:47:03,928.928 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:47:03,973.973 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:47:03,974.974 INFO    ] No camera update needed
[2026-06-27 18:47:03,975.975 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:47:03,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:47:03,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:47:03,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:47:06,021.021 INFO    ] ================================================
[2026-06-27 18:47:06,041.041 INFO    ] Launching Daemon at Sat Jun 27 18:47:06 IST 2026
[2026-06-27 18:47:06,052.052 INFO    ] ================================================
[2026-06-27 18:47:06,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:47:06
[2026-06-27 18:47:06,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:47:06,849.849 INFO    ] Initializing speech engine...
[2026-06-27 18:47:06,854.854 INFO    ] 2026-06-27 18:47:06
[2026-06-27 18:47:07,058.058 INFO    ] 2026-06-27 18:47:07
[2026-06-27 18:47:07,086.086 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:47:07,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:47:07,273.273 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:47:07,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:47:07,481.481 INFO    ] time= 27/06/2026 18:47:07
[2026-06-27 18:47:07,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:47:07,509.509 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:47:07,575.575 INFO    ] No existing commands found in stream
[2026-06-27 18:47:12,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:47:12,602.602 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-27 18:47:13,099.099 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:47:13,100.100 INFO    ] Checking for system updates...
[2026-06-27 18:47:13,121.121 INFO    ] 200
[2026-06-27 18:47:13,122.122 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:47:13,155.155 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:47:13,156.156 INFO    ] No update needed
[2026-06-27 18:47:13,158.158 INFO    ] Checking for camera pi updates...
[2026-06-27 18:47:13,178.178 INFO    ] 200
[2026-06-27 18:47:13,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:47:13,203.203 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:47:13,248.248 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:47:13,250.250 INFO    ] No camera update needed
[2026-06-27 18:47:13,251.251 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:47:13,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:47:13,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:47:13,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:47:15,299.299 INFO    ] ================================================
[2026-06-27 18:47:15,314.314 INFO    ] Launching Daemon at Sat Jun 27 18:47:15 IST 2026
[2026-06-27 18:47:15,324.324 INFO    ] ================================================
[2026-06-27 18:47:15,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:47:15
[2026-06-27 18:47:15,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:47:16,098.098 INFO    ] Initializing speech engine...
[2026-06-27 18:47:16,112.112 INFO    ] 2026-06-27 18:47:16
[2026-06-27 18:47:16,320.320 INFO    ] 2026-06-27 18:47:16
[2026-06-27 18:47:16,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:47:16,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:47:16,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:47:16,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:47:16,744.744 INFO    ] time= 27/06/2026 18:47:16
[2026-06-27 18:47:16,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:47:16,776.776 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:47:16,850.850 INFO    ] No existing commands found in stream
[2026-06-27 18:47:21,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:47:21,867.867 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-27 18:47:23,896.896 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:47:23,897.897 INFO    ] Checking for system updates...
[2026-06-27 18:47:23,920.920 INFO    ] 200
[2026-06-27 18:47:23,921.921 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:47:23,957.957 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:47:23,959.959 INFO    ] No update needed
[2026-06-27 18:47:23,960.960 INFO    ] Checking for camera pi updates...
[2026-06-27 18:47:23,983.983 INFO    ] 200
[2026-06-27 18:47:23,985.985 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:47:24,009.009 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:47:24,055.055 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:47:24,057.057 INFO    ] No camera update needed
[2026-06-27 18:47:24,058.058 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:47:24,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:47:24,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:47:24,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:47:26,110.110 INFO    ] ================================================
[2026-06-27 18:47:26,125.125 INFO    ] Launching Daemon at Sat Jun 27 18:47:26 IST 2026
[2026-06-27 18:47:26,136.136 INFO    ] ================================================
[2026-06-27 18:47:26,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:47:26
[2026-06-27 18:47:26,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:47:26,961.961 INFO    ] Initializing speech engine...
[2026-06-27 18:47:26,966.966 INFO    ] 2026-06-27 18:47:26
[2026-06-27 18:47:27,171.171 INFO    ] 2026-06-27 18:47:27
[2026-06-27 18:47:27,200.200 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:47:27,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:47:27,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:47:27,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:47:27,588.588 INFO    ] time= 27/06/2026 18:47:27
[2026-06-27 18:47:27,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:47:27,619.619 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:47:27,686.686 INFO    ] No existing commands found in stream
[2026-06-27 18:47:32,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:47:32,701.701 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-27 18:47:34,610.610 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:47:34,611.611 INFO    ] Checking for system updates...
[2026-06-27 18:47:34,632.632 INFO    ] 200
[2026-06-27 18:47:34,634.634 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:47:34,665.665 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:47:34,666.666 INFO    ] No update needed
[2026-06-27 18:47:34,668.668 INFO    ] Checking for camera pi updates...
[2026-06-27 18:47:34,689.689 INFO    ] 200
[2026-06-27 18:47:34,690.690 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:47:34,715.715 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:47:34,757.757 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:47:34,758.758 INFO    ] No camera update needed
[2026-06-27 18:47:34,759.759 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:47:34,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:47:34,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:47:34,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:47:36,808.808 INFO    ] ================================================
[2026-06-27 18:47:36,823.823 INFO    ] Launching Daemon at Sat Jun 27 18:47:36 IST 2026
[2026-06-27 18:47:36,835.835 INFO    ] ================================================
[2026-06-27 18:47:37,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:47:37
[2026-06-27 18:47:37,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:47:37,621.621 INFO    ] Initializing speech engine...
[2026-06-27 18:47:37,625.625 INFO    ] 2026-06-27 18:47:37
[2026-06-27 18:47:37,843.843 INFO    ] 2026-06-27 18:47:37
[2026-06-27 18:47:37,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:47:38,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:47:38,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:47:38,264.264 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:47:38,289.289 INFO    ] time= 27/06/2026 18:47:38
[2026-06-27 18:47:38,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:47:38,296.296 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:47:38,361.361 INFO    ] No existing commands found in stream
[2026-06-27 18:47:43,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:47:43,375.375 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-27 18:47:43,841.841 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 18:47:43,842.842 INFO    ] Checking for system updates...
[2026-06-27 18:47:43,863.863 INFO    ] 200
[2026-06-27 18:47:43,865.865 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:47:43,895.895 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:47:43,897.897 INFO    ] No update needed
[2026-06-27 18:47:43,898.898 INFO    ] Checking for camera pi updates...
[2026-06-27 18:47:43,917.917 INFO    ] 200
[2026-06-27 18:47:43,919.919 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:47:43,942.942 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:47:43,988.988 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:47:43,989.989 INFO    ] No camera update needed
[2026-06-27 18:47:43,991.991 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:47:43,992.992 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:47:43,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:47:43,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:47:46,036.036 INFO    ] ================================================
[2026-06-27 18:47:46,051.051 INFO    ] Launching Daemon at Sat Jun 27 18:47:46 IST 2026
[2026-06-27 18:47:46,061.061 INFO    ] ================================================
[2026-06-27 18:47:46,431.431 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:47:46
[2026-06-27 18:47:46,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:47:46,894.894 INFO    ] Initializing speech engine...
[2026-06-27 18:47:46,899.899 INFO    ] 2026-06-27 18:47:46
[2026-06-27 18:47:47,105.105 INFO    ] 2026-06-27 18:47:47
[2026-06-27 18:47:47,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:47:47,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:47:47,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:47:47,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:47:47,523.523 INFO    ] time= 27/06/2026 18:47:47
[2026-06-27 18:47:47,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:47:47,553.553 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:47:47,621.621 INFO    ] No existing commands found in stream
[2026-06-27 18:47:52,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:47:52,638.638 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-27 18:47:53,685.685 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:47:53,687.687 INFO    ] Checking for system updates...
[2026-06-27 18:47:53,709.709 INFO    ] 200
[2026-06-27 18:47:53,710.710 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:47:53,741.741 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:47:53,743.743 INFO    ] No update needed
[2026-06-27 18:47:53,745.745 INFO    ] Checking for camera pi updates...
[2026-06-27 18:47:53,764.764 INFO    ] 200
[2026-06-27 18:47:53,766.766 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:47:53,791.791 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:47:53,892.892 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:47:53,894.894 INFO    ] No camera update needed
[2026-06-27 18:47:53,895.895 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:47:53,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:47:53,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:47:53,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:47:55,941.941 INFO    ] ================================================
[2026-06-27 18:47:55,956.956 INFO    ] Launching Daemon at Sat Jun 27 18:47:55 IST 2026
[2026-06-27 18:47:55,967.967 INFO    ] ================================================
[2026-06-27 18:47:56,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:47:56
[2026-06-27 18:47:56,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:47:56,833.833 INFO    ] Initializing speech engine...
[2026-06-27 18:47:56,841.841 INFO    ] 2026-06-27 18:47:56
[2026-06-27 18:47:57,060.060 INFO    ] 2026-06-27 18:47:57
[2026-06-27 18:47:57,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:47:57,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:47:57,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:47:57,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:47:57,485.485 INFO    ] time= 27/06/2026 18:47:57
[2026-06-27 18:47:57,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:47:57,514.514 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:47:57,583.583 INFO    ] No existing commands found in stream
[2026-06-27 18:48:02,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:48:02,593.593 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-27 18:48:04,490.490 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 18:48:04,492.492 INFO    ] Checking for system updates...
[2026-06-27 18:48:04,514.514 INFO    ] 200
[2026-06-27 18:48:04,515.515 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:48:04,545.545 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:48:04,546.546 INFO    ] No update needed
[2026-06-27 18:48:04,548.548 INFO    ] Checking for camera pi updates...
[2026-06-27 18:48:04,569.569 INFO    ] 200
[2026-06-27 18:48:04,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:48:04,596.596 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:48:04,646.646 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:48:04,648.648 INFO    ] No camera update needed
[2026-06-27 18:48:04,649.649 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:48:04,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:48:04,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:48:04,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:48:06,695.695 INFO    ] ================================================
[2026-06-27 18:48:06,710.710 INFO    ] Launching Daemon at Sat Jun 27 18:48:06 IST 2026
[2026-06-27 18:48:06,721.721 INFO    ] ================================================
[2026-06-27 18:48:07,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:48:07
[2026-06-27 18:48:07,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:48:07,514.514 INFO    ] Initializing speech engine...
[2026-06-27 18:48:07,523.523 INFO    ] 2026-06-27 18:48:07
[2026-06-27 18:48:07,729.729 INFO    ] 2026-06-27 18:48:07
[2026-06-27 18:48:07,757.757 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:48:07,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:48:07,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:48:08,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:48:08,233.233 INFO    ] time= 27/06/2026 18:48:08
[2026-06-27 18:48:08,259.259 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:48:08,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:48:08,356.356 INFO    ] No existing commands found in stream
[2026-06-27 18:48:13,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:48:13,369.369 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-27 18:48:17,282.282 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:48:17,283.283 INFO    ] Checking for system updates...
[2026-06-27 18:48:17,305.305 INFO    ] 200
[2026-06-27 18:48:17,306.306 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:48:17,339.339 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:48:17,341.341 INFO    ] No update needed
[2026-06-27 18:48:17,343.343 INFO    ] Checking for camera pi updates...
[2026-06-27 18:48:17,364.364 INFO    ] 200
[2026-06-27 18:48:17,365.365 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:48:17,393.393 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:48:17,445.445 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:48:17,446.446 INFO    ] No camera update needed
[2026-06-27 18:48:17,448.448 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:48:17,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:48:17,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:48:17,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:48:19,495.495 INFO    ] ================================================
[2026-06-27 18:48:19,510.510 INFO    ] Launching Daemon at Sat Jun 27 18:48:19 IST 2026
[2026-06-27 18:48:19,521.521 INFO    ] ================================================
[2026-06-27 18:48:19,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:48:19
[2026-06-27 18:48:20,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:48:20,334.334 INFO    ] Initializing speech engine...
[2026-06-27 18:48:20,344.344 INFO    ] 2026-06-27 18:48:20
[2026-06-27 18:48:20,550.550 INFO    ] 2026-06-27 18:48:20
[2026-06-27 18:48:20,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:48:20,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:48:20,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:48:20,900.900 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:48:20,967.967 INFO    ] time= 27/06/2026 18:48:20
[2026-06-27 18:48:20,995.995 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:48:20,996.996 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:48:21,092.092 INFO    ] No existing commands found in stream
[2026-06-27 18:48:26,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:48:26,104.104 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-27 18:48:29,840.840 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 18:48:29,842.842 INFO    ] Checking for system updates...
[2026-06-27 18:48:29,865.865 INFO    ] 200
[2026-06-27 18:48:29,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:48:29,899.899 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:48:29,901.901 INFO    ] No update needed
[2026-06-27 18:48:29,902.902 INFO    ] Checking for camera pi updates...
[2026-06-27 18:48:29,924.924 INFO    ] 200
[2026-06-27 18:48:29,926.926 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:48:29,951.951 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:48:29,993.993 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:48:29,994.994 INFO    ] No camera update needed
[2026-06-27 18:48:29,996.996 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:48:29,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:48:30,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:48:30,004.004 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:48:32,044.044 INFO    ] ================================================
[2026-06-27 18:48:32,063.063 INFO    ] Launching Daemon at Sat Jun 27 18:48:32 IST 2026
[2026-06-27 18:48:32,075.075 INFO    ] ================================================
[2026-06-27 18:48:32,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:48:32
[2026-06-27 18:48:32,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:48:32,948.948 INFO    ] Initializing speech engine...
[2026-06-27 18:48:32,956.956 INFO    ] 2026-06-27 18:48:32
[2026-06-27 18:48:33,179.179 INFO    ] 2026-06-27 18:48:33
[2026-06-27 18:48:33,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:48:33,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:48:33,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:48:33,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:48:33,610.610 INFO    ] time= 27/06/2026 18:48:33
[2026-06-27 18:48:33,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:48:33,661.661 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:48:33,738.738 INFO    ] No existing commands found in stream
[2026-06-27 18:48:38,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:48:38,750.750 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-27 18:48:41,323.323 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 18:48:41,324.324 INFO    ] Checking for system updates...
[2026-06-27 18:48:41,347.347 INFO    ] 200
[2026-06-27 18:48:41,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:48:41,381.381 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:48:41,382.382 INFO    ] No update needed
[2026-06-27 18:48:41,384.384 INFO    ] Checking for camera pi updates...
[2026-06-27 18:48:41,404.404 INFO    ] 200
[2026-06-27 18:48:41,405.405 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:48:41,428.428 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:48:41,474.474 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:48:41,475.475 INFO    ] No camera update needed
[2026-06-27 18:48:41,477.477 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:48:41,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:48:41,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:48:41,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:48:43,522.522 INFO    ] ================================================
[2026-06-27 18:48:43,538.538 INFO    ] Launching Daemon at Sat Jun 27 18:48:43 IST 2026
[2026-06-27 18:48:43,548.548 INFO    ] ================================================
[2026-06-27 18:48:43,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:48:43
[2026-06-27 18:48:44,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:48:44,339.339 INFO    ] Initializing speech engine...
[2026-06-27 18:48:44,344.344 INFO    ] 2026-06-27 18:48:44
[2026-06-27 18:48:44,548.548 INFO    ] 2026-06-27 18:48:44
[2026-06-27 18:48:44,577.577 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:48:44,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:48:44,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:48:44,901.901 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:48:44,960.960 INFO    ] time= 27/06/2026 18:48:44
[2026-06-27 18:48:44,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:48:44,999.999 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:48:45,065.065 INFO    ] No existing commands found in stream
[2026-06-27 18:48:50,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:48:50,082.082 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-27 18:48:51,718.718 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:48:51,719.719 INFO    ] Checking for system updates...
[2026-06-27 18:48:51,746.746 INFO    ] 200
[2026-06-27 18:48:51,748.748 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:48:51,778.778 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:48:51,780.780 INFO    ] No update needed
[2026-06-27 18:48:51,781.781 INFO    ] Checking for camera pi updates...
[2026-06-27 18:48:51,801.801 INFO    ] 200
[2026-06-27 18:48:51,802.802 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:48:51,827.827 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:48:51,971.971 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:48:51,972.972 INFO    ] No camera update needed
[2026-06-27 18:48:51,973.973 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:48:51,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:48:51,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:48:51,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:48:54,020.020 INFO    ] ================================================
[2026-06-27 18:48:54,035.035 INFO    ] Launching Daemon at Sat Jun 27 18:48:54 IST 2026
[2026-06-27 18:48:54,046.046 INFO    ] ================================================
[2026-06-27 18:48:54,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:48:54
[2026-06-27 18:48:54,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:48:54,906.906 INFO    ] Initializing speech engine...
[2026-06-27 18:48:54,912.912 INFO    ] 2026-06-27 18:48:54
[2026-06-27 18:48:55,122.122 INFO    ] 2026-06-27 18:48:55
[2026-06-27 18:48:55,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:48:55,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:48:55,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:48:55,545.545 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:48:55,569.569 INFO    ] time= 27/06/2026 18:48:55
[2026-06-27 18:48:55,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:48:55,577.577 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:48:55,669.669 INFO    ] No existing commands found in stream
[2026-06-27 18:49:00,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:49:00,709.709 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-27 18:49:05,075.075 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:49:05,077.077 INFO    ] Checking for system updates...
[2026-06-27 18:49:05,099.099 INFO    ] 200
[2026-06-27 18:49:05,100.100 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:49:05,139.139 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:49:05,140.140 INFO    ] No update needed
[2026-06-27 18:49:05,142.142 INFO    ] Checking for camera pi updates...
[2026-06-27 18:49:05,165.165 INFO    ] 200
[2026-06-27 18:49:05,167.167 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:49:05,190.190 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:49:05,238.238 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:49:05,239.239 INFO    ] No camera update needed
[2026-06-27 18:49:05,241.241 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:49:05,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:49:05,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:49:05,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:49:07,288.288 INFO    ] ================================================
[2026-06-27 18:49:07,304.304 INFO    ] Launching Daemon at Sat Jun 27 18:49:07 IST 2026
[2026-06-27 18:49:07,314.314 INFO    ] ================================================
[2026-06-27 18:49:07,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:49:07
[2026-06-27 18:49:07,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:49:08,132.132 INFO    ] Initializing speech engine...
[2026-06-27 18:49:08,137.137 INFO    ] 2026-06-27 18:49:08
[2026-06-27 18:49:08,340.340 INFO    ] 2026-06-27 18:49:08
[2026-06-27 18:49:08,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:49:08,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:49:08,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:49:08,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:49:08,761.761 INFO    ] time= 27/06/2026 18:49:08
[2026-06-27 18:49:08,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:49:08,790.790 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:49:08,881.881 INFO    ] No existing commands found in stream
[2026-06-27 18:49:13,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:49:13,898.898 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-27 18:49:15,095.095 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 18:49:15,096.096 INFO    ] Checking for system updates...
[2026-06-27 18:49:15,117.117 INFO    ] 200
[2026-06-27 18:49:15,118.118 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:49:15,152.152 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:49:15,154.154 INFO    ] No update needed
[2026-06-27 18:49:15,155.155 INFO    ] Checking for camera pi updates...
[2026-06-27 18:49:15,175.175 INFO    ] 200
[2026-06-27 18:49:15,176.176 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:49:15,199.199 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:49:15,241.241 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:49:15,242.242 INFO    ] No camera update needed
[2026-06-27 18:49:15,244.244 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:49:15,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:49:15,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:49:15,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:49:17,289.289 INFO    ] ================================================
[2026-06-27 18:49:17,306.306 INFO    ] Launching Daemon at Sat Jun 27 18:49:17 IST 2026
[2026-06-27 18:49:17,316.316 INFO    ] ================================================
[2026-06-27 18:49:17,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:49:17
[2026-06-27 18:49:17,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:49:18,131.131 INFO    ] Initializing speech engine...
[2026-06-27 18:49:18,137.137 INFO    ] 2026-06-27 18:49:18
[2026-06-27 18:49:18,339.339 INFO    ] 2026-06-27 18:49:18
[2026-06-27 18:49:18,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:49:18,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:49:18,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:49:18,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:49:18,728.728 INFO    ] time= 27/06/2026 18:49:18
[2026-06-27 18:49:18,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:49:18,784.784 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:49:18,853.853 INFO    ] No existing commands found in stream
[2026-06-27 18:49:23,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:49:23,867.867 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-27 18:49:25,771.771 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:49:25,772.772 INFO    ] Checking for system updates...
[2026-06-27 18:49:25,804.804 INFO    ] 200
[2026-06-27 18:49:25,806.806 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:49:25,837.837 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:49:25,838.838 INFO    ] No update needed
[2026-06-27 18:49:25,840.840 INFO    ] Checking for camera pi updates...
[2026-06-27 18:49:25,859.859 INFO    ] 200
[2026-06-27 18:49:25,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:49:25,886.886 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:49:25,933.933 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:49:25,935.935 INFO    ] No camera update needed
[2026-06-27 18:49:25,936.936 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:49:25,937.937 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:49:25,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:49:25,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:49:27,982.982 INFO    ] ================================================
[2026-06-27 18:49:28,998.998 INFO    ] Launching Daemon at Sat Jun 27 18:49:27 IST 2026
[2026-06-27 18:49:28,009.009 INFO    ] ================================================
[2026-06-27 18:49:28,373.373 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:49:28
[2026-06-27 18:49:28,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:49:28,828.828 INFO    ] Initializing speech engine...
[2026-06-27 18:49:28,833.833 INFO    ] 2026-06-27 18:49:28
[2026-06-27 18:49:29,037.037 INFO    ] 2026-06-27 18:49:29
[2026-06-27 18:49:29,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:49:29,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:49:29,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:49:29,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:49:29,451.451 INFO    ] time= 27/06/2026 18:49:29
[2026-06-27 18:49:29,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:49:29,480.480 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:49:29,550.550 INFO    ] No existing commands found in stream
[2026-06-27 18:49:34,559.559 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:49:34,562.562 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-27 18:49:36,863.863 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 18:49:36,865.865 INFO    ] Checking for system updates...
[2026-06-27 18:49:36,888.888 INFO    ] 200
[2026-06-27 18:49:36,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:49:36,921.921 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:49:36,922.922 INFO    ] No update needed
[2026-06-27 18:49:36,923.923 INFO    ] Checking for camera pi updates...
[2026-06-27 18:49:36,943.943 INFO    ] 200
[2026-06-27 18:49:36,944.944 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:49:36,968.968 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:49:37,020.020 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:49:37,022.022 INFO    ] No camera update needed
[2026-06-27 18:49:37,023.023 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:49:37,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:49:37,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:49:37,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:49:39,069.069 INFO    ] ================================================
[2026-06-27 18:49:39,086.086 INFO    ] Launching Daemon at Sat Jun 27 18:49:39 IST 2026
[2026-06-27 18:49:39,097.097 INFO    ] ================================================
[2026-06-27 18:49:39,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:49:39
[2026-06-27 18:49:39,736.736 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:49:39,878.878 INFO    ] Initializing speech engine...
[2026-06-27 18:49:39,883.883 INFO    ] 2026-06-27 18:49:39
[2026-06-27 18:49:40,088.088 INFO    ] 2026-06-27 18:49:40
[2026-06-27 18:49:40,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:49:40,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:49:40,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:49:40,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:49:40,527.527 INFO    ] time= 27/06/2026 18:49:40
[2026-06-27 18:49:40,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:49:40,534.534 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:49:40,599.599 INFO    ] No existing commands found in stream
[2026-06-27 18:49:45,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:49:45,613.613 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-27 18:49:49,884.884 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:49:49,886.886 INFO    ] Checking for system updates...
[2026-06-27 18:49:49,907.907 INFO    ] 200
[2026-06-27 18:49:49,909.909 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:49:49,939.939 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:49:49,940.940 INFO    ] No update needed
[2026-06-27 18:49:49,942.942 INFO    ] Checking for camera pi updates...
[2026-06-27 18:49:49,963.963 INFO    ] 200
[2026-06-27 18:49:49,964.964 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:49:49,989.989 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:49:50,030.030 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:49:50,031.031 INFO    ] No camera update needed
[2026-06-27 18:49:50,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:49:50,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:49:50,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:49:50,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:49:52,071.071 INFO    ] ================================================
[2026-06-27 18:49:52,087.087 INFO    ] Launching Daemon at Sat Jun 27 18:49:52 IST 2026
[2026-06-27 18:49:52,098.098 INFO    ] ================================================
[2026-06-27 18:49:52,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:49:52
[2026-06-27 18:49:52,762.762 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:49:52,893.893 INFO    ] Initializing speech engine...
[2026-06-27 18:49:52,897.897 INFO    ] 2026-06-27 18:49:52
[2026-06-27 18:49:53,116.116 INFO    ] 2026-06-27 18:49:53
[2026-06-27 18:49:53,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:49:53,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:49:53,342.342 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:49:53,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:49:53,563.563 INFO    ] time= 27/06/2026 18:49:53
[2026-06-27 18:49:53,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:49:53,570.570 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:49:53,662.662 INFO    ] No existing commands found in stream
[2026-06-27 18:49:58,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:49:58,674.674 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-27 18:49:59,423.423 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:49:59,425.425 INFO    ] Checking for system updates...
[2026-06-27 18:49:59,447.447 INFO    ] 200
[2026-06-27 18:49:59,449.449 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:49:59,491.491 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:49:59,493.493 INFO    ] No update needed
[2026-06-27 18:49:59,494.494 INFO    ] Checking for camera pi updates...
[2026-06-27 18:49:59,517.517 INFO    ] 200
[2026-06-27 18:49:59,518.518 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:49:59,556.556 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:49:59,599.599 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:49:59,601.601 INFO    ] No camera update needed
[2026-06-27 18:49:59,602.602 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:49:59,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:49:59,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:49:59,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:50:01,657.657 INFO    ] ================================================
[2026-06-27 18:50:01,730.730 INFO    ] Launching Daemon at Sat Jun 27 18:50:01 IST 2026
[2026-06-27 18:50:01,746.746 INFO    ] ================================================
[2026-06-27 18:50:02,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:50:02
[2026-06-27 18:50:02,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:50:02,838.838 INFO    ] Initializing speech engine...
[2026-06-27 18:50:02,842.842 INFO    ] 2026-06-27 18:50:02
[2026-06-27 18:50:03,060.060 INFO    ] 2026-06-27 18:50:03
[2026-06-27 18:50:03,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:50:03,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:50:03,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:50:03,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:50:03,493.493 INFO    ] time= 27/06/2026 18:50:03
[2026-06-27 18:50:03,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:50:03,523.523 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:50:03,589.589 INFO    ] No existing commands found in stream
[2026-06-27 18:50:08,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:50:08,606.606 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-27 18:50:11,840.840 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 18:50:11,842.842 INFO    ] Checking for system updates...
[2026-06-27 18:50:11,866.866 INFO    ] 200
[2026-06-27 18:50:11,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:50:11,898.898 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:50:11,899.899 INFO    ] No update needed
[2026-06-27 18:50:11,901.901 INFO    ] Checking for camera pi updates...
[2026-06-27 18:50:11,921.921 INFO    ] 200
[2026-06-27 18:50:11,922.922 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:50:11,947.947 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:50:11,995.995 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:50:11,996.996 INFO    ] No camera update needed
[2026-06-27 18:50:11,997.997 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:50:11,999.999 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:50:12,002.002 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:50:12,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:50:14,045.045 INFO    ] ================================================
[2026-06-27 18:50:14,060.060 INFO    ] Launching Daemon at Sat Jun 27 18:50:14 IST 2026
[2026-06-27 18:50:14,071.071 INFO    ] ================================================
[2026-06-27 18:50:14,419.419 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:50:14
[2026-06-27 18:50:14,735.735 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:50:14,867.867 INFO    ] Initializing speech engine...
[2026-06-27 18:50:14,871.871 INFO    ] 2026-06-27 18:50:14
[2026-06-27 18:50:15,089.089 INFO    ] 2026-06-27 18:50:15
[2026-06-27 18:50:15,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:50:15,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:50:15,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:50:15,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:50:15,530.530 INFO    ] time= 27/06/2026 18:50:15
[2026-06-27 18:50:15,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:50:15,563.563 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:50:15,653.653 INFO    ] No existing commands found in stream
[2026-06-27 18:50:20,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:50:20,664.664 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-27 18:50:23,460.460 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:50:23,461.461 INFO    ] Checking for system updates...
[2026-06-27 18:50:23,482.482 INFO    ] 200
[2026-06-27 18:50:23,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:50:23,515.515 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:50:23,517.517 INFO    ] No update needed
[2026-06-27 18:50:23,518.518 INFO    ] Checking for camera pi updates...
[2026-06-27 18:50:23,539.539 INFO    ] 200
[2026-06-27 18:50:23,540.540 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:50:23,566.566 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:50:23,617.617 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:50:23,618.618 INFO    ] No camera update needed
[2026-06-27 18:50:23,620.620 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:50:23,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:50:23,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:50:23,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:50:25,658.658 INFO    ] ================================================
[2026-06-27 18:50:25,667.667 INFO    ] Launching Daemon at Sat Jun 27 18:50:25 IST 2026
[2026-06-27 18:50:25,674.674 INFO    ] ================================================
[2026-06-27 18:50:26,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:50:26
[2026-06-27 18:50:26,355.355 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:50:26,506.506 INFO    ] Initializing speech engine...
[2026-06-27 18:50:26,508.508 INFO    ] 2026-06-27 18:50:26
[2026-06-27 18:50:26,733.733 INFO    ] 2026-06-27 18:50:26
[2026-06-27 18:50:26,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:50:26,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:50:26,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:50:27,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:50:27,204.204 INFO    ] time= 27/06/2026 18:50:27
[2026-06-27 18:50:27,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:50:27,234.234 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:50:27,300.300 INFO    ] No existing commands found in stream
[2026-06-27 18:50:32,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:50:32,307.307 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-27 18:50:35,105.105 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:50:35,106.106 INFO    ] Checking for system updates...
[2026-06-27 18:50:35,127.127 INFO    ] 200
[2026-06-27 18:50:35,129.129 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:50:35,160.160 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:50:35,161.161 INFO    ] No update needed
[2026-06-27 18:50:35,162.162 INFO    ] Checking for camera pi updates...
[2026-06-27 18:50:35,182.182 INFO    ] 200
[2026-06-27 18:50:35,184.184 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:50:35,209.209 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:50:35,252.252 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:50:35,253.253 INFO    ] No camera update needed
[2026-06-27 18:50:35,255.255 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:50:35,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:50:35,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:50:35,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:50:37,302.302 INFO    ] ================================================
[2026-06-27 18:50:37,318.318 INFO    ] Launching Daemon at Sat Jun 27 18:50:37 IST 2026
[2026-06-27 18:50:37,329.329 INFO    ] ================================================
[2026-06-27 18:50:37,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:50:37
[2026-06-27 18:50:37,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:50:38,105.105 INFO    ] Initializing speech engine...
[2026-06-27 18:50:38,110.110 INFO    ] 2026-06-27 18:50:38
[2026-06-27 18:50:38,314.314 INFO    ] 2026-06-27 18:50:38
[2026-06-27 18:50:38,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:50:38,526.526 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:50:38,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:50:38,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:50:38,751.751 INFO    ] time= 27/06/2026 18:50:38
[2026-06-27 18:50:38,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:50:38,762.762 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:50:38,829.829 INFO    ] No existing commands found in stream
[2026-06-27 18:50:43,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:50:43,856.856 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-27 18:50:47,694.694 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:50:47,696.696 INFO    ] Checking for system updates...
[2026-06-27 18:50:47,717.717 INFO    ] 200
[2026-06-27 18:50:47,718.718 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:50:47,749.749 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:50:47,750.750 INFO    ] No update needed
[2026-06-27 18:50:47,752.752 INFO    ] Checking for camera pi updates...
[2026-06-27 18:50:47,771.771 INFO    ] 200
[2026-06-27 18:50:47,773.773 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:50:47,802.802 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:50:47,865.865 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:50:47,866.866 INFO    ] No camera update needed
[2026-06-27 18:50:47,868.868 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:50:47,869.869 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:50:47,872.872 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:50:47,875.875 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:50:49,915.915 INFO    ] ================================================
[2026-06-27 18:50:49,931.931 INFO    ] Launching Daemon at Sat Jun 27 18:50:49 IST 2026
[2026-06-27 18:50:49,941.941 INFO    ] ================================================
[2026-06-27 18:50:50,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:50:50
[2026-06-27 18:50:50,585.585 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:50:50,715.715 INFO    ] Initializing speech engine...
[2026-06-27 18:50:50,720.720 INFO    ] 2026-06-27 18:50:50
[2026-06-27 18:50:50,940.940 INFO    ] 2026-06-27 18:50:50
[2026-06-27 18:50:50,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:50:51,160.160 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:50:51,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:50:51,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:50:51,389.389 INFO    ] time= 27/06/2026 18:50:51
[2026-06-27 18:50:51,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:50:51,396.396 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:50:51,519.519 INFO    ] No existing commands found in stream
[2026-06-27 18:50:56,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:50:56,531.531 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-27 18:50:57,683.683 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:50:57,685.685 INFO    ] Checking for system updates...
[2026-06-27 18:50:57,707.707 INFO    ] 200
[2026-06-27 18:50:57,708.708 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:50:57,741.741 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:50:57,742.742 INFO    ] No update needed
[2026-06-27 18:50:57,743.743 INFO    ] Checking for camera pi updates...
[2026-06-27 18:50:57,763.763 INFO    ] 200
[2026-06-27 18:50:57,765.765 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:50:57,790.790 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:50:57,931.931 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:50:57,933.933 INFO    ] No camera update needed
[2026-06-27 18:50:57,934.934 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:50:57,935.935 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:50:57,938.938 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:50:57,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:50:59,979.979 INFO    ] ================================================
[2026-06-27 18:50:59,994.994 INFO    ] Launching Daemon at Sat Jun 27 18:50:59 IST 2026
[2026-06-27 18:51:00,005.005 INFO    ] ================================================
[2026-06-27 18:51:00,397.397 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:51:00
[2026-06-27 18:51:00,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:51:00,882.882 INFO    ] Initializing speech engine...
[2026-06-27 18:51:00,890.890 INFO    ] 2026-06-27 18:51:00
[2026-06-27 18:51:01,109.109 INFO    ] 2026-06-27 18:51:01
[2026-06-27 18:51:01,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:51:01,325.325 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:51:01,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:51:01,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:51:01,546.546 INFO    ] time= 27/06/2026 18:51:01
[2026-06-27 18:51:01,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:51:01,562.562 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:51:01,630.630 INFO    ] No existing commands found in stream
[2026-06-27 18:51:06,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:51:06,652.652 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-27 18:51:09,064.064 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 18:51:09,066.066 INFO    ] Checking for system updates...
[2026-06-27 18:51:09,087.087 INFO    ] 200
[2026-06-27 18:51:09,089.089 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:51:09,121.121 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:51:09,123.123 INFO    ] No update needed
[2026-06-27 18:51:09,124.124 INFO    ] Checking for camera pi updates...
[2026-06-27 18:51:09,144.144 INFO    ] 200
[2026-06-27 18:51:09,145.145 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:51:09,168.168 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:51:09,214.214 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:51:09,215.215 INFO    ] No camera update needed
[2026-06-27 18:51:09,216.216 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:51:09,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:51:09,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:51:09,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:51:11,261.261 INFO    ] ================================================
[2026-06-27 18:51:11,276.276 INFO    ] Launching Daemon at Sat Jun 27 18:51:11 IST 2026
[2026-06-27 18:51:11,287.287 INFO    ] ================================================
[2026-06-27 18:51:11,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:51:11
[2026-06-27 18:51:11,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:51:12,120.120 INFO    ] Initializing speech engine...
[2026-06-27 18:51:12,124.124 INFO    ] 2026-06-27 18:51:12
[2026-06-27 18:51:12,322.322 INFO    ] 2026-06-27 18:51:12
[2026-06-27 18:51:12,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:51:12,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:51:12,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:51:12,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:51:12,783.783 INFO    ] time= 27/06/2026 18:51:12
[2026-06-27 18:51:12,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:51:12,846.846 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:51:12,923.923 INFO    ] No existing commands found in stream
[2026-06-27 18:51:17,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:51:17,935.935 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-27 18:51:18,559.559 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:51:18,560.560 INFO    ] Checking for system updates...
[2026-06-27 18:51:18,581.581 INFO    ] 200
[2026-06-27 18:51:18,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:51:18,613.613 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:51:18,615.615 INFO    ] No update needed
[2026-06-27 18:51:18,616.616 INFO    ] Checking for camera pi updates...
[2026-06-27 18:51:18,637.637 INFO    ] 200
[2026-06-27 18:51:18,638.638 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:51:18,664.664 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:51:18,707.707 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:51:18,708.708 INFO    ] No camera update needed
[2026-06-27 18:51:18,709.709 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:51:18,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:51:18,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:51:18,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:51:20,754.754 INFO    ] ================================================
[2026-06-27 18:51:20,769.769 INFO    ] Launching Daemon at Sat Jun 27 18:51:20 IST 2026
[2026-06-27 18:51:20,780.780 INFO    ] ================================================
[2026-06-27 18:51:21,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:51:21
[2026-06-27 18:51:21,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:51:21,558.558 INFO    ] Initializing speech engine...
[2026-06-27 18:51:21,563.563 INFO    ] 2026-06-27 18:51:21
[2026-06-27 18:51:21,756.756 INFO    ] 2026-06-27 18:51:21
[2026-06-27 18:51:21,801.801 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:51:21,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:51:22,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:51:22,184.184 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:51:22,243.243 INFO    ] time= 27/06/2026 18:51:22
[2026-06-27 18:51:22,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:51:22,290.290 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:51:22,356.356 INFO    ] No existing commands found in stream
[2026-06-27 18:51:27,365.365 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:51:27,368.368 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-27 18:51:30,659.659 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:51:30,661.661 INFO    ] Checking for system updates...
[2026-06-27 18:51:30,684.684 INFO    ] 200
[2026-06-27 18:51:30,685.685 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:51:30,716.716 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:51:30,717.717 INFO    ] No update needed
[2026-06-27 18:51:30,719.719 INFO    ] Checking for camera pi updates...
[2026-06-27 18:51:30,738.738 INFO    ] 200
[2026-06-27 18:51:30,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:51:30,763.763 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:51:30,813.813 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:51:30,815.815 INFO    ] No camera update needed
[2026-06-27 18:51:30,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:51:30,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:51:30,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:51:30,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:51:32,861.861 INFO    ] ================================================
[2026-06-27 18:51:32,876.876 INFO    ] Launching Daemon at Sat Jun 27 18:51:32 IST 2026
[2026-06-27 18:51:32,887.887 INFO    ] ================================================
[2026-06-27 18:51:33,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:51:33
[2026-06-27 18:51:33,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:51:33,773.773 INFO    ] Initializing speech engine...
[2026-06-27 18:51:33,778.778 INFO    ] 2026-06-27 18:51:33
[2026-06-27 18:51:33,989.989 INFO    ] 2026-06-27 18:51:33
[2026-06-27 18:51:34,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:51:34,205.205 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:51:34,213.213 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:51:34,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:51:34,434.434 INFO    ] time= 27/06/2026 18:51:34
[2026-06-27 18:51:34,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:51:34,441.441 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:51:34,508.508 INFO    ] No existing commands found in stream
[2026-06-27 18:51:39,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:51:39,519.519 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-27 18:51:40,531.531 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:51:40,533.533 INFO    ] Checking for system updates...
[2026-06-27 18:51:40,554.554 INFO    ] 200
[2026-06-27 18:51:40,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:51:40,592.592 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:51:40,595.595 INFO    ] No update needed
[2026-06-27 18:51:40,598.598 INFO    ] Checking for camera pi updates...
[2026-06-27 18:51:40,637.637 INFO    ] 200
[2026-06-27 18:51:40,640.640 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:51:40,680.680 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:51:40,724.724 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:51:40,726.726 INFO    ] No camera update needed
[2026-06-27 18:51:40,727.727 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:51:40,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:51:40,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:51:40,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:51:42,773.773 INFO    ] ================================================
[2026-06-27 18:51:42,788.788 INFO    ] Launching Daemon at Sat Jun 27 18:51:42 IST 2026
[2026-06-27 18:51:42,799.799 INFO    ] ================================================
[2026-06-27 18:51:43,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:51:43
[2026-06-27 18:51:43,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:51:43,598.598 INFO    ] Initializing speech engine...
[2026-06-27 18:51:43,603.603 INFO    ] 2026-06-27 18:51:43
[2026-06-27 18:51:43,807.807 INFO    ] 2026-06-27 18:51:43
[2026-06-27 18:51:43,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:51:44,017.017 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:51:44,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:51:44,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:51:44,244.244 INFO    ] time= 27/06/2026 18:51:44
[2026-06-27 18:51:44,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:51:44,252.252 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:51:44,318.318 INFO    ] No existing commands found in stream
[2026-06-27 18:51:49,327.327 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:51:49,330.330 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-27 18:51:51,620.620 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 18:51:51,621.621 INFO    ] Checking for system updates...
[2026-06-27 18:51:51,643.643 INFO    ] 200
[2026-06-27 18:51:51,645.645 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:51:51,676.676 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:51:51,677.677 INFO    ] No update needed
[2026-06-27 18:51:51,678.678 INFO    ] Checking for camera pi updates...
[2026-06-27 18:51:51,701.701 INFO    ] 200
[2026-06-27 18:51:51,703.703 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:51:51,727.727 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:51:51,772.772 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:51:51,773.773 INFO    ] No camera update needed
[2026-06-27 18:51:51,775.775 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:51:51,776.776 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:51:51,779.779 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:51:51,782.782 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:51:53,821.821 INFO    ] ================================================
[2026-06-27 18:51:53,837.837 INFO    ] Launching Daemon at Sat Jun 27 18:51:53 IST 2026
[2026-06-27 18:51:53,848.848 INFO    ] ================================================
[2026-06-27 18:51:54,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:51:54
[2026-06-27 18:51:54,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:51:54,653.653 INFO    ] Initializing speech engine...
[2026-06-27 18:51:54,663.663 INFO    ] 2026-06-27 18:51:54
[2026-06-27 18:51:54,872.872 INFO    ] 2026-06-27 18:51:54
[2026-06-27 18:51:54,901.901 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:51:55,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:51:55,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:51:55,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:51:55,290.290 INFO    ] time= 27/06/2026 18:51:55
[2026-06-27 18:51:55,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:51:55,326.326 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:51:55,398.398 INFO    ] No existing commands found in stream
[2026-06-27 18:52:00,430.430 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:52:00,433.433 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-27 18:52:03,360.360 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 18:52:03,361.361 INFO    ] Checking for system updates...
[2026-06-27 18:52:03,382.382 INFO    ] 200
[2026-06-27 18:52:03,383.383 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:52:03,414.414 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:52:03,415.415 INFO    ] No update needed
[2026-06-27 18:52:03,416.416 INFO    ] Checking for camera pi updates...
[2026-06-27 18:52:03,436.436 INFO    ] 200
[2026-06-27 18:52:03,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:52:03,461.461 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:52:03,503.503 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:52:03,504.504 INFO    ] No camera update needed
[2026-06-27 18:52:03,505.505 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:52:03,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:52:03,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:52:03,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:52:05,550.550 INFO    ] ================================================
[2026-06-27 18:52:05,566.566 INFO    ] Launching Daemon at Sat Jun 27 18:52:05 IST 2026
[2026-06-27 18:52:05,576.576 INFO    ] ================================================
[2026-06-27 18:52:05,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:52:05
[2026-06-27 18:52:06,300.300 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:52:06,450.450 INFO    ] Initializing speech engine...
[2026-06-27 18:52:06,461.461 INFO    ] 2026-06-27 18:52:06
[2026-06-27 18:52:06,673.673 INFO    ] 2026-06-27 18:52:06
[2026-06-27 18:52:06,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:52:06,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:52:06,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:52:07,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:52:07,130.130 INFO    ] time= 27/06/2026 18:52:07
[2026-06-27 18:52:07,155.155 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:52:07,161.161 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:52:07,245.245 INFO    ] No existing commands found in stream
[2026-06-27 18:52:12,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:52:12,258.258 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-27 18:52:13,544.544 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 18:52:13,546.546 INFO    ] Checking for system updates...
[2026-06-27 18:52:13,567.567 INFO    ] 200
[2026-06-27 18:52:13,568.568 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:52:13,601.601 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:52:13,603.603 INFO    ] No update needed
[2026-06-27 18:52:13,604.604 INFO    ] Checking for camera pi updates...
[2026-06-27 18:52:13,625.625 INFO    ] 200
[2026-06-27 18:52:13,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:52:13,650.650 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:52:13,695.695 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:52:13,696.696 INFO    ] No camera update needed
[2026-06-27 18:52:13,698.698 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:52:13,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:52:13,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:52:13,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:52:15,743.743 INFO    ] ================================================
[2026-06-27 18:52:15,758.758 INFO    ] Launching Daemon at Sat Jun 27 18:52:15 IST 2026
[2026-06-27 18:52:15,769.769 INFO    ] ================================================
[2026-06-27 18:52:16,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:52:16
[2026-06-27 18:52:16,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:52:16,590.590 INFO    ] Initializing speech engine...
[2026-06-27 18:52:16,599.599 INFO    ] 2026-06-27 18:52:16
[2026-06-27 18:52:16,814.814 INFO    ] 2026-06-27 18:52:16
[2026-06-27 18:52:16,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:52:17,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:52:17,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:52:17,218.218 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:52:17,255.255 INFO    ] time= 27/06/2026 18:52:17
[2026-06-27 18:52:17,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:52:17,262.262 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:52:17,329.329 INFO    ] No existing commands found in stream
[2026-06-27 18:52:22,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:52:22,356.356 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-27 18:52:24,398.398 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:52:24,400.400 INFO    ] Checking for system updates...
[2026-06-27 18:52:24,421.421 INFO    ] 200
[2026-06-27 18:52:24,422.422 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:52:24,453.453 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:52:24,454.454 INFO    ] No update needed
[2026-06-27 18:52:24,455.455 INFO    ] Checking for camera pi updates...
[2026-06-27 18:52:24,475.475 INFO    ] 200
[2026-06-27 18:52:24,476.476 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:52:24,500.500 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:52:24,541.541 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:52:24,542.542 INFO    ] No camera update needed
[2026-06-27 18:52:24,543.543 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:52:24,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:52:24,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:52:24,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:52:26,589.589 INFO    ] ================================================
[2026-06-27 18:52:26,604.604 INFO    ] Launching Daemon at Sat Jun 27 18:52:26 IST 2026
[2026-06-27 18:52:26,615.615 INFO    ] ================================================
[2026-06-27 18:52:26,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:52:26
[2026-06-27 18:52:27,299.299 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:52:27,437.437 INFO    ] Initializing speech engine...
[2026-06-27 18:52:27,446.446 INFO    ] 2026-06-27 18:52:27
[2026-06-27 18:52:27,649.649 INFO    ] 2026-06-27 18:52:27
[2026-06-27 18:52:27,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:52:27,862.862 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:52:27,870.870 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:52:28,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:52:28,068.068 INFO    ] time= 27/06/2026 18:52:28
[2026-06-27 18:52:28,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:52:28,096.096 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:52:28,163.163 INFO    ] No existing commands found in stream
[2026-06-27 18:52:33,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:52:33,185.185 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-27 18:52:34,264.264 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 18:52:34,266.266 INFO    ] Checking for system updates...
[2026-06-27 18:52:34,286.286 INFO    ] 200
[2026-06-27 18:52:34,287.287 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:52:34,321.321 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:52:34,323.323 INFO    ] No update needed
[2026-06-27 18:52:34,324.324 INFO    ] Checking for camera pi updates...
[2026-06-27 18:52:34,344.344 INFO    ] 200
[2026-06-27 18:52:34,345.345 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:52:34,370.370 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:52:34,416.416 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:52:34,418.418 INFO    ] No camera update needed
[2026-06-27 18:52:34,419.419 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:52:34,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:52:34,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:52:34,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:52:36,465.465 INFO    ] ================================================
[2026-06-27 18:52:36,481.481 INFO    ] Launching Daemon at Sat Jun 27 18:52:36 IST 2026
[2026-06-27 18:52:36,492.492 INFO    ] ================================================
[2026-06-27 18:52:36,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:52:36
[2026-06-27 18:52:37,208.208 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:52:37,363.363 INFO    ] Initializing speech engine...
[2026-06-27 18:52:37,368.368 INFO    ] 2026-06-27 18:52:37
[2026-06-27 18:52:37,575.575 INFO    ] 2026-06-27 18:52:37
[2026-06-27 18:52:37,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:52:37,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:52:37,799.799 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:52:37,943.943 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:52:37,996.996 INFO    ] time= 27/06/2026 18:52:37
[2026-06-27 18:52:38,019.019 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:52:38,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:52:38,093.093 INFO    ] No existing commands found in stream
[2026-06-27 18:52:43,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:52:43,129.129 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-27 18:52:45,814.814 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 18:52:45,815.815 INFO    ] Checking for system updates...
[2026-06-27 18:52:45,839.839 INFO    ] 200
[2026-06-27 18:52:45,840.840 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:52:45,873.873 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:52:45,874.874 INFO    ] No update needed
[2026-06-27 18:52:45,876.876 INFO    ] Checking for camera pi updates...
[2026-06-27 18:52:45,895.895 INFO    ] 200
[2026-06-27 18:52:45,897.897 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:52:45,924.924 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:52:45,969.969 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:52:45,971.971 INFO    ] No camera update needed
[2026-06-27 18:52:45,972.972 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:52:45,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:52:45,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:52:45,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:52:48,018.018 INFO    ] ================================================
[2026-06-27 18:52:48,034.034 INFO    ] Launching Daemon at Sat Jun 27 18:52:48 IST 2026
[2026-06-27 18:52:48,044.044 INFO    ] ================================================
[2026-06-27 18:52:48,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:52:48
[2026-06-27 18:52:48,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:52:48,900.900 INFO    ] Initializing speech engine...
[2026-06-27 18:52:48,906.906 INFO    ] 2026-06-27 18:52:48
[2026-06-27 18:52:49,116.116 INFO    ] 2026-06-27 18:52:49
[2026-06-27 18:52:49,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:52:49,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:52:49,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:52:49,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:52:49,559.559 INFO    ] time= 27/06/2026 18:52:49
[2026-06-27 18:52:49,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:52:49,566.566 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:52:49,657.657 INFO    ] No existing commands found in stream
[2026-06-27 18:52:54,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:52:54,670.670 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-27 18:52:57,619.619 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:52:57,621.621 INFO    ] Checking for system updates...
[2026-06-27 18:52:57,642.642 INFO    ] 200
[2026-06-27 18:52:57,643.643 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:52:57,674.674 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:52:57,676.676 INFO    ] No update needed
[2026-06-27 18:52:57,677.677 INFO    ] Checking for camera pi updates...
[2026-06-27 18:52:57,699.699 INFO    ] 200
[2026-06-27 18:52:57,700.700 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:52:57,727.727 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:52:57,773.773 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:52:57,775.775 INFO    ] No camera update needed
[2026-06-27 18:52:57,776.776 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:52:57,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:52:57,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:52:57,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:52:59,823.823 INFO    ] ================================================
[2026-06-27 18:52:59,838.838 INFO    ] Launching Daemon at Sat Jun 27 18:52:59 IST 2026
[2026-06-27 18:52:59,850.850 INFO    ] ================================================
[2026-06-27 18:53:00,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:53:00
[2026-06-27 18:53:00,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:53:00,726.726 INFO    ] Initializing speech engine...
[2026-06-27 18:53:00,732.732 INFO    ] 2026-06-27 18:53:00
[2026-06-27 18:53:00,940.940 INFO    ] 2026-06-27 18:53:00
[2026-06-27 18:53:00,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:53:01,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:53:01,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:53:01,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:53:01,362.362 INFO    ] time= 27/06/2026 18:53:01
[2026-06-27 18:53:01,385.385 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:53:01,391.391 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:53:01,479.479 INFO    ] No existing commands found in stream
[2026-06-27 18:53:06,532.532 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:53:06,536.536 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-27 18:53:10,730.730 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:53:10,732.732 INFO    ] Checking for system updates...
[2026-06-27 18:53:10,754.754 INFO    ] 200
[2026-06-27 18:53:10,756.756 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:53:10,789.789 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:53:10,791.791 INFO    ] No update needed
[2026-06-27 18:53:10,792.792 INFO    ] Checking for camera pi updates...
[2026-06-27 18:53:10,815.815 INFO    ] 200
[2026-06-27 18:53:10,817.817 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:53:10,842.842 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:53:10,895.895 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:53:10,897.897 INFO    ] No camera update needed
[2026-06-27 18:53:10,898.898 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:53:10,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:53:10,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:53:10,906.906 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:53:12,952.952 INFO    ] ================================================
[2026-06-27 18:53:12,968.968 INFO    ] Launching Daemon at Sat Jun 27 18:53:12 IST 2026
[2026-06-27 18:53:12,978.978 INFO    ] ================================================
[2026-06-27 18:53:13,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:53:13
[2026-06-27 18:53:13,667.667 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:53:13,820.820 INFO    ] Initializing speech engine...
[2026-06-27 18:53:13,826.826 INFO    ] 2026-06-27 18:53:13
[2026-06-27 18:53:14,038.038 INFO    ] 2026-06-27 18:53:14
[2026-06-27 18:53:14,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:53:14,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:53:14,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:53:14,459.459 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:53:14,488.488 INFO    ] time= 27/06/2026 18:53:14
[2026-06-27 18:53:14,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:53:14,497.497 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:53:14,565.565 INFO    ] No existing commands found in stream
[2026-06-27 18:53:19,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:53:19,583.583 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-27 18:53:20,720.720 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:53:20,722.722 INFO    ] Checking for system updates...
[2026-06-27 18:53:20,744.744 INFO    ] 200
[2026-06-27 18:53:20,746.746 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:53:20,776.776 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:53:20,778.778 INFO    ] No update needed
[2026-06-27 18:53:20,779.779 INFO    ] Checking for camera pi updates...
[2026-06-27 18:53:20,799.799 INFO    ] 200
[2026-06-27 18:53:20,801.801 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:53:20,825.825 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:53:20,861.861 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:53:20,862.862 INFO    ] No camera update needed
[2026-06-27 18:53:20,864.864 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:53:20,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:53:20,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:53:20,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:53:22,910.910 INFO    ] ================================================
[2026-06-27 18:53:22,925.925 INFO    ] Launching Daemon at Sat Jun 27 18:53:22 IST 2026
[2026-06-27 18:53:22,936.936 INFO    ] ================================================
[2026-06-27 18:53:23,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:53:23
[2026-06-27 18:53:23,607.607 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:53:23,740.740 INFO    ] Initializing speech engine...
[2026-06-27 18:53:23,743.743 INFO    ] 2026-06-27 18:53:23
[2026-06-27 18:53:23,936.936 INFO    ] 2026-06-27 18:53:23
[2026-06-27 18:53:23,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:53:24,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:53:24,186.186 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:53:24,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:53:24,428.428 INFO    ] time= 27/06/2026 18:53:24
[2026-06-27 18:53:24,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:53:24,464.464 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:53:24,542.542 INFO    ] No existing commands found in stream
[2026-06-27 18:53:29,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:53:29,554.554 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-27 18:53:33,752.752 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:53:33,754.754 INFO    ] Checking for system updates...
[2026-06-27 18:53:33,776.776 INFO    ] 200
[2026-06-27 18:53:33,778.778 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:53:33,813.813 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:53:33,815.815 INFO    ] No update needed
[2026-06-27 18:53:33,816.816 INFO    ] Checking for camera pi updates...
[2026-06-27 18:53:33,836.836 INFO    ] 200
[2026-06-27 18:53:33,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:53:33,861.861 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:53:33,889.889 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:53:33,890.890 INFO    ] No camera update needed
[2026-06-27 18:53:33,892.892 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:53:33,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:53:33,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:53:33,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:53:35,939.939 INFO    ] ================================================
[2026-06-27 18:53:35,955.955 INFO    ] Launching Daemon at Sat Jun 27 18:53:35 IST 2026
[2026-06-27 18:53:35,966.966 INFO    ] ================================================
[2026-06-27 18:53:36,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:53:36
[2026-06-27 18:53:36,671.671 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:53:36,826.826 INFO    ] Initializing speech engine...
[2026-06-27 18:53:36,833.833 INFO    ] 2026-06-27 18:53:36
[2026-06-27 18:53:37,045.045 INFO    ] 2026-06-27 18:53:37
[2026-06-27 18:53:37,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:53:37,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:53:37,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:53:37,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:53:37,476.476 INFO    ] time= 27/06/2026 18:53:37
[2026-06-27 18:53:37,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:53:37,505.505 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:53:37,598.598 INFO    ] No existing commands found in stream
[2026-06-27 18:53:42,612.612 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:53:42,616.616 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-27 18:53:43,424.424 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:53:43,426.426 INFO    ] Checking for system updates...
[2026-06-27 18:53:43,446.446 INFO    ] 200
[2026-06-27 18:53:43,447.447 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:53:43,478.478 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:53:43,479.479 INFO    ] No update needed
[2026-06-27 18:53:43,481.481 INFO    ] Checking for camera pi updates...
[2026-06-27 18:53:43,500.500 INFO    ] 200
[2026-06-27 18:53:43,501.501 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:53:43,524.524 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:53:43,568.568 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:53:43,569.569 INFO    ] No camera update needed
[2026-06-27 18:53:43,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:53:43,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:53:43,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:53:43,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:53:45,617.617 INFO    ] ================================================
[2026-06-27 18:53:45,632.632 INFO    ] Launching Daemon at Sat Jun 27 18:53:45 IST 2026
[2026-06-27 18:53:45,643.643 INFO    ] ================================================
[2026-06-27 18:53:45,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:53:45
[2026-06-27 18:53:46,335.335 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:53:46,487.487 INFO    ] Initializing speech engine...
[2026-06-27 18:53:46,492.492 INFO    ] 2026-06-27 18:53:46
[2026-06-27 18:53:46,703.703 INFO    ] 2026-06-27 18:53:46
[2026-06-27 18:53:46,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:53:46,916.916 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:53:46,926.926 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:53:47,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:53:47,145.145 INFO    ] time= 27/06/2026 18:53:47
[2026-06-27 18:53:47,151.151 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:53:47,153.153 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:53:47,244.244 INFO    ] No existing commands found in stream
[2026-06-27 18:53:52,253.253 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:53:52,257.257 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-27 18:53:55,105.105 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:53:55,106.106 INFO    ] Checking for system updates...
[2026-06-27 18:53:55,127.127 INFO    ] 200
[2026-06-27 18:53:55,129.129 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:53:55,160.160 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:53:55,161.161 INFO    ] No update needed
[2026-06-27 18:53:55,163.163 INFO    ] Checking for camera pi updates...
[2026-06-27 18:53:55,184.184 INFO    ] 200
[2026-06-27 18:53:55,186.186 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:53:55,212.212 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:53:55,252.252 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:53:55,254.254 INFO    ] No camera update needed
[2026-06-27 18:53:55,255.255 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:53:55,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:53:55,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:53:55,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:53:57,301.301 INFO    ] ================================================
[2026-06-27 18:53:57,317.317 INFO    ] Launching Daemon at Sat Jun 27 18:53:57 IST 2026
[2026-06-27 18:53:57,327.327 INFO    ] ================================================
[2026-06-27 18:53:57,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:53:57
[2026-06-27 18:53:57,986.986 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:53:58,117.117 INFO    ] Initializing speech engine...
[2026-06-27 18:53:58,125.125 INFO    ] 2026-06-27 18:53:58
[2026-06-27 18:53:58,336.336 INFO    ] 2026-06-27 18:53:58
[2026-06-27 18:53:58,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:53:58,550.550 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:53:58,558.558 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:53:58,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:53:58,766.766 INFO    ] time= 27/06/2026 18:53:58
[2026-06-27 18:53:58,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:53:58,795.795 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:53:58,870.870 INFO    ] No existing commands found in stream
[2026-06-27 18:54:03,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:54:03,884.884 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-27 18:54:07,098.098 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:54:07,100.100 INFO    ] Checking for system updates...
[2026-06-27 18:54:07,120.120 INFO    ] 200
[2026-06-27 18:54:07,122.122 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:54:07,153.153 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:54:07,155.155 INFO    ] No update needed
[2026-06-27 18:54:07,156.156 INFO    ] Checking for camera pi updates...
[2026-06-27 18:54:07,175.175 INFO    ] 200
[2026-06-27 18:54:07,177.177 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:54:07,202.202 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:54:07,232.232 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:54:07,233.233 INFO    ] No camera update needed
[2026-06-27 18:54:07,235.235 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:54:07,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:54:07,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:54:07,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:54:09,284.284 INFO    ] ================================================
[2026-06-27 18:54:09,299.299 INFO    ] Launching Daemon at Sat Jun 27 18:54:09 IST 2026
[2026-06-27 18:54:09,310.310 INFO    ] ================================================
[2026-06-27 18:54:09,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:54:09
[2026-06-27 18:54:09,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:54:10,101.101 INFO    ] Initializing speech engine...
[2026-06-27 18:54:10,115.115 INFO    ] 2026-06-27 18:54:10
[2026-06-27 18:54:10,321.321 INFO    ] 2026-06-27 18:54:10
[2026-06-27 18:54:10,350.350 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:54:10,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:54:10,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:54:10,734.734 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:54:10,763.763 INFO    ] time= 27/06/2026 18:54:10
[2026-06-27 18:54:10,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:54:10,770.770 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:54:10,835.835 INFO    ] No existing commands found in stream
[2026-06-27 18:54:15,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:54:15,849.849 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-27 18:54:19,542.542 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 18:54:19,544.544 INFO    ] Checking for system updates...
[2026-06-27 18:54:19,565.565 INFO    ] 200
[2026-06-27 18:54:19,566.566 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:54:19,597.597 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:54:19,598.598 INFO    ] No update needed
[2026-06-27 18:54:19,600.600 INFO    ] Checking for camera pi updates...
[2026-06-27 18:54:19,623.623 INFO    ] 200
[2026-06-27 18:54:19,625.625 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:54:19,648.648 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:54:19,703.703 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:54:19,705.705 INFO    ] No camera update needed
[2026-06-27 18:54:19,706.706 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:54:19,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:54:19,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:54:19,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:54:21,753.753 INFO    ] ================================================
[2026-06-27 18:54:21,768.768 INFO    ] Launching Daemon at Sat Jun 27 18:54:21 IST 2026
[2026-06-27 18:54:21,778.778 INFO    ] ================================================
[2026-06-27 18:54:22,124.124 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:54:22
[2026-06-27 18:54:22,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:54:22,570.570 INFO    ] Initializing speech engine...
[2026-06-27 18:54:22,582.582 INFO    ] 2026-06-27 18:54:22
[2026-06-27 18:54:22,791.791 INFO    ] 2026-06-27 18:54:22
[2026-06-27 18:54:22,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:54:22,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:54:23,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:54:23,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:54:23,218.218 INFO    ] time= 27/06/2026 18:54:23
[2026-06-27 18:54:23,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:54:23,258.258 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:54:23,326.326 INFO    ] No existing commands found in stream
[2026-06-27 18:54:28,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:54:28,336.336 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-27 18:54:32,763.763 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:54:32,764.764 INFO    ] Checking for system updates...
[2026-06-27 18:54:32,785.785 INFO    ] 200
[2026-06-27 18:54:32,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:54:32,820.820 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:54:32,821.821 INFO    ] No update needed
[2026-06-27 18:54:32,822.822 INFO    ] Checking for camera pi updates...
[2026-06-27 18:54:32,842.842 INFO    ] 200
[2026-06-27 18:54:32,844.844 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:54:32,867.867 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:54:32,896.896 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:54:32,897.897 INFO    ] No camera update needed
[2026-06-27 18:54:32,899.899 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:54:32,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:54:32,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:54:32,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:54:34,945.945 INFO    ] ================================================
[2026-06-27 18:54:34,961.961 INFO    ] Launching Daemon at Sat Jun 27 18:54:34 IST 2026
[2026-06-27 18:54:34,972.972 INFO    ] ================================================
[2026-06-27 18:54:35,341.341 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:54:35
[2026-06-27 18:54:35,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:54:35,843.843 INFO    ] Initializing speech engine...
[2026-06-27 18:54:35,848.848 INFO    ] 2026-06-27 18:54:35
[2026-06-27 18:54:36,061.061 INFO    ] 2026-06-27 18:54:36
[2026-06-27 18:54:36,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:54:36,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:54:36,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:54:36,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:54:36,523.523 INFO    ] time= 27/06/2026 18:54:36
[2026-06-27 18:54:36,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:54:36,531.531 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:54:36,603.603 INFO    ] No existing commands found in stream
[2026-06-27 18:54:41,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:54:41,617.617 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-27 18:54:44,983.983 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:54:44,985.985 INFO    ] Checking for system updates...
[2026-06-27 18:54:45,007.007 INFO    ] 200
[2026-06-27 18:54:45,008.008 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:54:45,039.039 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:54:45,040.040 INFO    ] No update needed
[2026-06-27 18:54:45,042.042 INFO    ] Checking for camera pi updates...
[2026-06-27 18:54:45,065.065 INFO    ] 200
[2026-06-27 18:54:45,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:54:45,090.090 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:54:45,134.134 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:54:45,136.136 INFO    ] No camera update needed
[2026-06-27 18:54:45,137.137 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:54:45,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:54:45,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:54:45,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:54:47,184.184 INFO    ] ================================================
[2026-06-27 18:54:47,199.199 INFO    ] Launching Daemon at Sat Jun 27 18:54:47 IST 2026
[2026-06-27 18:54:47,210.210 INFO    ] ================================================
[2026-06-27 18:54:47,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:54:47
[2026-06-27 18:54:47,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:54:48,031.031 INFO    ] Initializing speech engine...
[2026-06-27 18:54:48,035.035 INFO    ] 2026-06-27 18:54:48
[2026-06-27 18:54:48,227.227 INFO    ] 2026-06-27 18:54:48
[2026-06-27 18:54:48,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:54:48,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:54:48,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:54:48,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:54:48,653.653 INFO    ] time= 27/06/2026 18:54:48
[2026-06-27 18:54:48,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:54:48,738.738 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:54:48,837.837 INFO    ] No existing commands found in stream
[2026-06-27 18:54:53,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:54:53,849.849 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-27 18:54:55,081.081 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 18:54:55,083.083 INFO    ] Checking for system updates...
[2026-06-27 18:54:55,105.105 INFO    ] 200
[2026-06-27 18:54:55,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:54:55,138.138 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:54:55,139.139 INFO    ] No update needed
[2026-06-27 18:54:55,141.141 INFO    ] Checking for camera pi updates...
[2026-06-27 18:54:55,161.161 INFO    ] 200
[2026-06-27 18:54:55,162.162 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:54:55,186.186 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:54:55,218.218 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:54:55,219.219 INFO    ] No camera update needed
[2026-06-27 18:54:55,221.221 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:54:55,222.222 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:54:55,226.226 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:54:55,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:54:57,268.268 INFO    ] ================================================
[2026-06-27 18:54:57,283.283 INFO    ] Launching Daemon at Sat Jun 27 18:54:57 IST 2026
[2026-06-27 18:54:57,294.294 INFO    ] ================================================
[2026-06-27 18:54:57,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:54:57
[2026-06-27 18:54:58,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:54:58,162.162 INFO    ] Initializing speech engine...
[2026-06-27 18:54:58,167.167 INFO    ] 2026-06-27 18:54:58
[2026-06-27 18:54:58,376.376 INFO    ] 2026-06-27 18:54:58
[2026-06-27 18:54:58,406.406 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:54:58,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:54:58,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:54:58,740.740 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:54:58,797.797 INFO    ] time= 27/06/2026 18:54:58
[2026-06-27 18:54:58,823.823 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:54:58,828.828 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:54:58,919.919 INFO    ] No existing commands found in stream
[2026-06-27 18:55:03,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:55:03,942.942 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-27 18:55:05,230.230 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:55:05,232.232 INFO    ] Checking for system updates...
[2026-06-27 18:55:05,254.254 INFO    ] 200
[2026-06-27 18:55:05,256.256 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:55:05,287.287 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:55:05,288.288 INFO    ] No update needed
[2026-06-27 18:55:05,290.290 INFO    ] Checking for camera pi updates...
[2026-06-27 18:55:05,310.310 INFO    ] 200
[2026-06-27 18:55:05,311.311 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:55:05,335.335 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:55:05,475.475 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:55:05,476.476 INFO    ] No camera update needed
[2026-06-27 18:55:05,478.478 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:55:05,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:55:05,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:55:05,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:55:07,524.524 INFO    ] ================================================
[2026-06-27 18:55:07,540.540 INFO    ] Launching Daemon at Sat Jun 27 18:55:07 IST 2026
[2026-06-27 18:55:07,550.550 INFO    ] ================================================
[2026-06-27 18:55:07,924.924 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:55:07
[2026-06-27 18:55:08,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:55:08,417.417 INFO    ] Initializing speech engine...
[2026-06-27 18:55:08,426.426 INFO    ] 2026-06-27 18:55:08
[2026-06-27 18:55:08,637.637 INFO    ] 2026-06-27 18:55:08
[2026-06-27 18:55:08,666.666 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:55:08,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:55:08,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:55:08,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:55:09,065.065 INFO    ] time= 27/06/2026 18:55:09
[2026-06-27 18:55:09,090.090 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:55:09,096.096 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:55:09,188.188 INFO    ] No existing commands found in stream
[2026-06-27 18:55:14,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:55:14,200.200 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-27 18:55:15,919.919 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:55:15,921.921 INFO    ] Checking for system updates...
[2026-06-27 18:55:15,942.942 INFO    ] 200
[2026-06-27 18:55:15,943.943 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:55:15,976.976 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:55:15,977.977 INFO    ] No update needed
[2026-06-27 18:55:15,978.978 INFO    ] Checking for camera pi updates...
[2026-06-27 18:55:15,999.999 INFO    ] 200
[2026-06-27 18:55:16,000.000 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:55:16,024.024 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:55:16,069.069 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:55:16,071.071 INFO    ] No camera update needed
[2026-06-27 18:55:16,072.072 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:55:16,073.073 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:55:16,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:55:16,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:55:18,119.119 INFO    ] ================================================
[2026-06-27 18:55:18,134.134 INFO    ] Launching Daemon at Sat Jun 27 18:55:18 IST 2026
[2026-06-27 18:55:18,145.145 INFO    ] ================================================
[2026-06-27 18:55:18,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:55:18
[2026-06-27 18:55:18,805.805 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:55:18,947.947 INFO    ] Initializing speech engine...
[2026-06-27 18:55:18,952.952 INFO    ] 2026-06-27 18:55:18
[2026-06-27 18:55:19,156.156 INFO    ] 2026-06-27 18:55:19
[2026-06-27 18:55:19,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:55:19,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:55:19,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:55:19,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:55:19,597.597 INFO    ] time= 27/06/2026 18:55:19
[2026-06-27 18:55:19,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:55:19,605.605 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:55:19,671.671 INFO    ] No existing commands found in stream
[2026-06-27 18:55:24,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:55:24,699.699 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-27 18:55:27,046.046 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 18:55:27,048.048 INFO    ] Checking for system updates...
[2026-06-27 18:55:27,069.069 INFO    ] 200
[2026-06-27 18:55:27,070.070 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:55:27,101.101 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:55:27,103.103 INFO    ] No update needed
[2026-06-27 18:55:27,105.105 INFO    ] Checking for camera pi updates...
[2026-06-27 18:55:27,126.126 INFO    ] 200
[2026-06-27 18:55:27,127.127 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:55:27,150.150 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:55:27,198.198 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:55:27,199.199 INFO    ] No camera update needed
[2026-06-27 18:55:27,201.201 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:55:27,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:55:27,205.205 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:55:27,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:55:29,247.247 INFO    ] ================================================
[2026-06-27 18:55:29,262.262 INFO    ] Launching Daemon at Sat Jun 27 18:55:29 IST 2026
[2026-06-27 18:55:29,274.274 INFO    ] ================================================
[2026-06-27 18:55:29,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:55:29
[2026-06-27 18:55:29,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:55:30,087.087 INFO    ] Initializing speech engine...
[2026-06-27 18:55:30,092.092 INFO    ] 2026-06-27 18:55:30
[2026-06-27 18:55:30,297.297 INFO    ] 2026-06-27 18:55:30
[2026-06-27 18:55:30,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:55:30,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:55:30,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:55:30,733.733 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:55:30,735.735 INFO    ] time= 27/06/2026 18:55:30
[2026-06-27 18:55:30,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:55:30,738.738 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:55:30,805.805 INFO    ] No existing commands found in stream
[2026-06-27 18:55:35,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:55:35,822.822 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-27 18:55:40,219.219 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 18:55:40,220.220 INFO    ] Checking for system updates...
[2026-06-27 18:55:40,241.241 INFO    ] 200
[2026-06-27 18:55:40,242.242 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:55:40,272.272 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:55:40,274.274 INFO    ] No update needed
[2026-06-27 18:55:40,275.275 INFO    ] Checking for camera pi updates...
[2026-06-27 18:55:40,297.297 INFO    ] 200
[2026-06-27 18:55:40,298.298 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:55:40,321.321 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:55:40,373.373 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:55:40,375.375 INFO    ] No camera update needed
[2026-06-27 18:55:40,376.376 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:55:40,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:55:40,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:55:40,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:55:42,421.421 INFO    ] ================================================
[2026-06-27 18:55:42,437.437 INFO    ] Launching Daemon at Sat Jun 27 18:55:42 IST 2026
[2026-06-27 18:55:42,448.448 INFO    ] ================================================
[2026-06-27 18:55:42,798.798 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:55:42
[2026-06-27 18:55:43,141.141 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:55:43,288.288 INFO    ] Initializing speech engine...
[2026-06-27 18:55:43,300.300 INFO    ] 2026-06-27 18:55:43
[2026-06-27 18:55:43,516.516 INFO    ] 2026-06-27 18:55:43
[2026-06-27 18:55:43,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:55:43,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:55:43,861.861 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:55:44,030.030 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:55:44,034.034 INFO    ] time= 27/06/2026 18:55:44
[2026-06-27 18:55:44,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:55:44,061.061 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:55:44,159.159 INFO    ] No existing commands found in stream
[2026-06-27 18:55:49,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:55:49,170.170 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-27 18:55:51,039.039 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:55:51,040.040 INFO    ] Checking for system updates...
[2026-06-27 18:55:51,062.062 INFO    ] 200
[2026-06-27 18:55:51,063.063 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:55:51,097.097 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:55:51,098.098 INFO    ] No update needed
[2026-06-27 18:55:51,100.100 INFO    ] Checking for camera pi updates...
[2026-06-27 18:55:51,122.122 INFO    ] 200
[2026-06-27 18:55:51,124.124 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:55:51,148.148 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:55:51,194.194 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:55:51,196.196 INFO    ] No camera update needed
[2026-06-27 18:55:51,197.197 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:55:51,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:55:51,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:55:51,205.205 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:55:53,243.243 INFO    ] ================================================
[2026-06-27 18:55:53,258.258 INFO    ] Launching Daemon at Sat Jun 27 18:55:53 IST 2026
[2026-06-27 18:55:53,269.269 INFO    ] ================================================
[2026-06-27 18:55:53,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:55:53
[2026-06-27 18:55:53,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:55:54,077.077 INFO    ] Initializing speech engine...
[2026-06-27 18:55:54,082.082 INFO    ] 2026-06-27 18:55:54
[2026-06-27 18:55:54,292.292 INFO    ] 2026-06-27 18:55:54
[2026-06-27 18:55:54,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:55:54,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:55:54,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:55:54,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:55:54,730.730 INFO    ] time= 27/06/2026 18:55:54
[2026-06-27 18:55:54,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:55:54,747.747 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:55:54,813.813 INFO    ] No existing commands found in stream
[2026-06-27 18:55:59,823.823 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:55:59,826.826 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-27 18:56:00,719.719 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 18:56:00,720.720 INFO    ] Checking for system updates...
[2026-06-27 18:56:00,742.742 INFO    ] 200
[2026-06-27 18:56:00,743.743 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:56:00,777.777 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:56:00,778.778 INFO    ] No update needed
[2026-06-27 18:56:00,779.779 INFO    ] Checking for camera pi updates...
[2026-06-27 18:56:00,798.798 INFO    ] 200
[2026-06-27 18:56:00,800.800 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:56:00,823.823 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:56:00,866.866 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:56:00,868.868 INFO    ] No camera update needed
[2026-06-27 18:56:00,869.869 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:56:00,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:56:00,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:56:00,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:56:02,908.908 INFO    ] ================================================
[2026-06-27 18:56:02,924.924 INFO    ] Launching Daemon at Sat Jun 27 18:56:02 IST 2026
[2026-06-27 18:56:02,935.935 INFO    ] ================================================
[2026-06-27 18:56:03,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:56:03
[2026-06-27 18:56:03,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:56:03,755.755 INFO    ] Initializing speech engine...
[2026-06-27 18:56:03,763.763 INFO    ] 2026-06-27 18:56:03
[2026-06-27 18:56:03,979.979 INFO    ] 2026-06-27 18:56:03
[2026-06-27 18:56:04,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:56:04,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:56:04,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:56:04,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:56:04,416.416 INFO    ] time= 27/06/2026 18:56:04
[2026-06-27 18:56:04,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:56:04,428.428 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:56:04,495.495 INFO    ] No existing commands found in stream
[2026-06-27 18:56:09,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:56:09,522.522 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-27 18:56:12,368.368 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 18:56:12,370.370 INFO    ] Checking for system updates...
[2026-06-27 18:56:12,391.391 INFO    ] 200
[2026-06-27 18:56:12,392.392 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:56:12,430.430 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:56:12,432.432 INFO    ] No update needed
[2026-06-27 18:56:12,433.433 INFO    ] Checking for camera pi updates...
[2026-06-27 18:56:12,454.454 INFO    ] 200
[2026-06-27 18:56:12,455.455 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:56:12,480.480 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:56:12,520.520 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:56:12,521.521 INFO    ] No camera update needed
[2026-06-27 18:56:12,523.523 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:56:12,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:56:12,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:56:12,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:56:14,568.568 INFO    ] ================================================
[2026-06-27 18:56:14,583.583 INFO    ] Launching Daemon at Sat Jun 27 18:56:14 IST 2026
[2026-06-27 18:56:14,600.600 INFO    ] ================================================
[2026-06-27 18:56:14,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:56:14
[2026-06-27 18:56:15,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:56:15,389.389 INFO    ] Initializing speech engine...
[2026-06-27 18:56:15,397.397 INFO    ] 2026-06-27 18:56:15
[2026-06-27 18:56:15,618.618 INFO    ] 2026-06-27 18:56:15
[2026-06-27 18:56:15,649.649 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:56:15,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:56:15,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:56:15,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:56:16,068.068 INFO    ] time= 27/06/2026 18:56:16
[2026-06-27 18:56:16,098.098 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:56:16,100.100 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:56:16,176.176 INFO    ] No existing commands found in stream
[2026-06-27 18:56:21,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:56:21,188.188 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-27 18:56:23,211.211 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 18:56:23,212.212 INFO    ] Checking for system updates...
[2026-06-27 18:56:23,233.233 INFO    ] 200
[2026-06-27 18:56:23,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:56:23,267.267 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:56:23,268.268 INFO    ] No update needed
[2026-06-27 18:56:23,270.270 INFO    ] Checking for camera pi updates...
[2026-06-27 18:56:23,291.291 INFO    ] 200
[2026-06-27 18:56:23,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:56:23,317.317 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:56:23,364.364 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:56:23,365.365 INFO    ] No camera update needed
[2026-06-27 18:56:23,366.366 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:56:23,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:56:23,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:56:23,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:56:25,417.417 INFO    ] ================================================
[2026-06-27 18:56:25,432.432 INFO    ] Launching Daemon at Sat Jun 27 18:56:25 IST 2026
[2026-06-27 18:56:25,443.443 INFO    ] ================================================
[2026-06-27 18:56:25,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:56:25
[2026-06-27 18:56:26,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:56:26,254.254 INFO    ] Initializing speech engine...
[2026-06-27 18:56:26,267.267 INFO    ] 2026-06-27 18:56:26
[2026-06-27 18:56:26,486.486 INFO    ] 2026-06-27 18:56:26
[2026-06-27 18:56:26,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:56:26,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:56:26,718.718 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:56:26,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:56:26,910.910 INFO    ] time= 27/06/2026 18:56:26
[2026-06-27 18:56:26,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:56:26,965.965 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:56:27,043.043 INFO    ] No existing commands found in stream
[2026-06-27 18:56:32,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:56:32,052.052 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-27 18:56:35,189.189 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:56:35,191.191 INFO    ] Checking for system updates...
[2026-06-27 18:56:35,212.212 INFO    ] 200
[2026-06-27 18:56:35,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:56:35,246.246 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:56:35,248.248 INFO    ] No update needed
[2026-06-27 18:56:35,249.249 INFO    ] Checking for camera pi updates...
[2026-06-27 18:56:35,271.271 INFO    ] 200
[2026-06-27 18:56:35,273.273 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:56:35,296.296 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:56:35,339.339 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:56:35,340.340 INFO    ] No camera update needed
[2026-06-27 18:56:35,342.342 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:56:35,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:56:35,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:56:35,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:56:37,389.389 INFO    ] ================================================
[2026-06-27 18:56:37,404.404 INFO    ] Launching Daemon at Sat Jun 27 18:56:37 IST 2026
[2026-06-27 18:56:37,414.414 INFO    ] ================================================
[2026-06-27 18:56:37,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:56:37
[2026-06-27 18:56:38,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:56:38,194.194 INFO    ] Initializing speech engine...
[2026-06-27 18:56:38,199.199 INFO    ] 2026-06-27 18:56:38
[2026-06-27 18:56:38,406.406 INFO    ] 2026-06-27 18:56:38
[2026-06-27 18:56:38,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:56:38,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:56:38,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:56:38,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:56:38,833.833 INFO    ] time= 27/06/2026 18:56:38
[2026-06-27 18:56:38,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:56:38,861.861 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:56:38,930.930 INFO    ] No existing commands found in stream
[2026-06-27 18:56:43,939.939 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:56:43,942.942 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-27 18:56:46,987.987 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 18:56:46,988.988 INFO    ] Checking for system updates...
[2026-06-27 18:56:47,010.010 INFO    ] 200
[2026-06-27 18:56:47,011.011 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:56:47,042.042 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:56:47,043.043 INFO    ] No update needed
[2026-06-27 18:56:47,044.044 INFO    ] Checking for camera pi updates...
[2026-06-27 18:56:47,066.066 INFO    ] 200
[2026-06-27 18:56:47,067.067 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:56:47,091.091 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:56:47,135.135 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:56:47,137.137 INFO    ] No camera update needed
[2026-06-27 18:56:47,138.138 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:56:47,139.139 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:56:47,142.142 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:56:47,145.145 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:56:49,183.183 INFO    ] ================================================
[2026-06-27 18:56:49,199.199 INFO    ] Launching Daemon at Sat Jun 27 18:56:49 IST 2026
[2026-06-27 18:56:49,209.209 INFO    ] ================================================
[2026-06-27 18:56:49,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:56:49
[2026-06-27 18:56:49,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:56:50,018.018 INFO    ] Initializing speech engine...
[2026-06-27 18:56:50,023.023 INFO    ] 2026-06-27 18:56:50
[2026-06-27 18:56:50,226.226 INFO    ] 2026-06-27 18:56:50
[2026-06-27 18:56:50,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:56:50,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:56:50,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:56:50,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:56:50,668.668 INFO    ] time= 27/06/2026 18:56:50
[2026-06-27 18:56:50,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:56:50,675.675 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:56:50,742.742 INFO    ] No existing commands found in stream
[2026-06-27 18:56:55,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:56:55,759.759 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-27 18:56:59,434.434 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:56:59,435.435 INFO    ] Checking for system updates...
[2026-06-27 18:56:59,458.458 INFO    ] 200
[2026-06-27 18:56:59,460.460 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:56:59,496.496 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:56:59,497.497 INFO    ] No update needed
[2026-06-27 18:56:59,498.498 INFO    ] Checking for camera pi updates...
[2026-06-27 18:56:59,519.519 INFO    ] 200
[2026-06-27 18:56:59,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:56:59,545.545 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:56:59,591.591 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:56:59,593.593 INFO    ] No camera update needed
[2026-06-27 18:56:59,594.594 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:56:59,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:56:59,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:56:59,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:57:01,651.651 INFO    ] ================================================
[2026-06-27 18:57:01,682.682 INFO    ] Launching Daemon at Sat Jun 27 18:57:01 IST 2026
[2026-06-27 18:57:01,717.717 INFO    ] ================================================
[2026-06-27 18:57:02,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:57:02
[2026-06-27 18:57:02,501.501 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:57:02,664.664 INFO    ] Initializing speech engine...
[2026-06-27 18:57:02,666.666 INFO    ] 2026-06-27 18:57:02
[2026-06-27 18:57:02,880.880 INFO    ] 2026-06-27 18:57:02
[2026-06-27 18:57:02,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:57:03,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:57:03,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:57:03,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:57:03,368.368 INFO    ] time= 27/06/2026 18:57:03
[2026-06-27 18:57:03,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:57:03,397.397 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:57:03,463.463 INFO    ] No existing commands found in stream
[2026-06-27 18:57:08,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:57:08,476.476 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-27 18:57:09,851.851 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 18:57:09,853.853 INFO    ] Checking for system updates...
[2026-06-27 18:57:09,874.874 INFO    ] 200
[2026-06-27 18:57:09,876.876 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:57:09,907.907 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:57:09,908.908 INFO    ] No update needed
[2026-06-27 18:57:09,914.914 INFO    ] Checking for camera pi updates...
[2026-06-27 18:57:09,935.935 INFO    ] 200
[2026-06-27 18:57:09,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:57:09,963.963 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:57:10,102.102 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:57:10,104.104 INFO    ] No camera update needed
[2026-06-27 18:57:10,105.105 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:57:10,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:57:10,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:57:10,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:57:12,156.156 INFO    ] ================================================
[2026-06-27 18:57:12,171.171 INFO    ] Launching Daemon at Sat Jun 27 18:57:12 IST 2026
[2026-06-27 18:57:12,183.183 INFO    ] ================================================
[2026-06-27 18:57:12,555.555 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:57:12
[2026-06-27 18:57:12,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:57:13,056.056 INFO    ] Initializing speech engine...
[2026-06-27 18:57:13,059.059 INFO    ] 2026-06-27 18:57:13
[2026-06-27 18:57:13,268.268 INFO    ] 2026-06-27 18:57:13
[2026-06-27 18:57:13,298.298 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:57:13,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:57:13,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:57:13,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:57:13,712.712 INFO    ] time= 27/06/2026 18:57:13
[2026-06-27 18:57:13,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:57:13,720.720 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:57:13,788.788 INFO    ] No existing commands found in stream
[2026-06-27 18:57:18,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:57:18,824.824 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-27 18:57:22,432.432 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:57:22,434.434 INFO    ] Checking for system updates...
[2026-06-27 18:57:22,455.455 INFO    ] 200
[2026-06-27 18:57:22,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:57:22,489.489 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:57:22,490.490 INFO    ] No update needed
[2026-06-27 18:57:22,492.492 INFO    ] Checking for camera pi updates...
[2026-06-27 18:57:22,516.516 INFO    ] 200
[2026-06-27 18:57:22,517.517 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:57:22,545.545 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:57:22,590.590 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:57:22,591.591 INFO    ] No camera update needed
[2026-06-27 18:57:22,592.592 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:57:22,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:57:22,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:57:22,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:57:24,641.641 INFO    ] ================================================
[2026-06-27 18:57:24,657.657 INFO    ] Launching Daemon at Sat Jun 27 18:57:24 IST 2026
[2026-06-27 18:57:24,668.668 INFO    ] ================================================
[2026-06-27 18:57:25,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:57:25
[2026-06-27 18:57:25,388.388 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:57:25,540.540 INFO    ] Initializing speech engine...
[2026-06-27 18:57:25,545.545 INFO    ] 2026-06-27 18:57:25
[2026-06-27 18:57:25,755.755 INFO    ] 2026-06-27 18:57:25
[2026-06-27 18:57:25,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:57:25,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:57:25,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:57:26,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:57:26,197.197 INFO    ] time= 27/06/2026 18:57:26
[2026-06-27 18:57:26,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:57:26,205.205 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:57:26,295.295 INFO    ] No existing commands found in stream
[2026-06-27 18:57:31,304.304 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:57:31,308.308 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-27 18:57:35,627.627 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 18:57:35,629.629 INFO    ] Checking for system updates...
[2026-06-27 18:57:35,651.651 INFO    ] 200
[2026-06-27 18:57:35,653.653 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:57:35,686.686 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:57:35,688.688 INFO    ] No update needed
[2026-06-27 18:57:35,689.689 INFO    ] Checking for camera pi updates...
[2026-06-27 18:57:35,709.709 INFO    ] 200
[2026-06-27 18:57:35,710.710 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:57:35,735.735 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:57:35,778.778 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:57:35,780.780 INFO    ] No camera update needed
[2026-06-27 18:57:35,781.781 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:57:35,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:57:35,786.786 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:57:35,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:57:37,828.828 INFO    ] ================================================
[2026-06-27 18:57:37,844.844 INFO    ] Launching Daemon at Sat Jun 27 18:57:37 IST 2026
[2026-06-27 18:57:37,855.855 INFO    ] ================================================
[2026-06-27 18:57:38,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:57:38
[2026-06-27 18:57:38,570.570 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:57:38,725.725 INFO    ] Initializing speech engine...
[2026-06-27 18:57:38,729.729 INFO    ] 2026-06-27 18:57:38
[2026-06-27 18:57:38,940.940 INFO    ] 2026-06-27 18:57:38
[2026-06-27 18:57:38,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:57:39,154.154 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:57:39,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:57:39,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:57:39,383.383 INFO    ] time= 27/06/2026 18:57:39
[2026-06-27 18:57:39,386.386 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:57:39,392.392 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:57:39,459.459 INFO    ] No existing commands found in stream
[2026-06-27 18:57:44,468.468 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:57:44,471.471 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-27 18:57:45,597.597 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 18:57:45,599.599 INFO    ] Checking for system updates...
[2026-06-27 18:57:45,621.621 INFO    ] 200
[2026-06-27 18:57:45,622.622 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:57:45,655.655 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:57:45,656.656 INFO    ] No update needed
[2026-06-27 18:57:45,657.657 INFO    ] Checking for camera pi updates...
[2026-06-27 18:57:45,677.677 INFO    ] 200
[2026-06-27 18:57:45,678.678 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:57:45,701.701 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:57:45,747.747 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:57:45,748.748 INFO    ] No camera update needed
[2026-06-27 18:57:45,749.749 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:57:45,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:57:45,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:57:45,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:57:47,796.796 INFO    ] ================================================
[2026-06-27 18:57:47,811.811 INFO    ] Launching Daemon at Sat Jun 27 18:57:47 IST 2026
[2026-06-27 18:57:47,822.822 INFO    ] ================================================
[2026-06-27 18:57:48,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:57:48
[2026-06-27 18:57:48,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:57:48,640.640 INFO    ] Initializing speech engine...
[2026-06-27 18:57:48,645.645 INFO    ] 2026-06-27 18:57:48
[2026-06-27 18:57:48,865.865 INFO    ] 2026-06-27 18:57:48
[2026-06-27 18:57:48,894.894 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:57:49,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:57:49,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:57:49,233.233 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:57:49,291.291 INFO    ] time= 27/06/2026 18:57:49
[2026-06-27 18:57:49,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:57:49,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:57:49,389.389 INFO    ] No existing commands found in stream
[2026-06-27 18:57:54,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:57:54,401.401 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-27 18:57:58,428.428 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 18:57:58,429.429 INFO    ] Checking for system updates...
[2026-06-27 18:57:58,452.452 INFO    ] 200
[2026-06-27 18:57:58,454.454 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:57:58,487.487 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:57:58,488.488 INFO    ] No update needed
[2026-06-27 18:57:58,490.490 INFO    ] Checking for camera pi updates...
[2026-06-27 18:57:58,511.511 INFO    ] 200
[2026-06-27 18:57:58,512.512 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:57:58,538.538 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:57:58,576.576 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:57:58,578.578 INFO    ] No camera update needed
[2026-06-27 18:57:58,579.579 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:57:58,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:57:58,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:57:58,587.587 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:58:00,626.626 INFO    ] ================================================
[2026-06-27 18:58:00,641.641 INFO    ] Launching Daemon at Sat Jun 27 18:58:00 IST 2026
[2026-06-27 18:58:00,652.652 INFO    ] ================================================
[2026-06-27 18:58:01,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:58:01
[2026-06-27 18:58:01,461.461 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:58:01,636.636 INFO    ] Initializing speech engine...
[2026-06-27 18:58:01,655.655 INFO    ] 2026-06-27 18:58:01
[2026-06-27 18:58:01,921.921 INFO    ] 2026-06-27 18:58:01
[2026-06-27 18:58:01,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:58:02,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:58:02,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:58:02,314.314 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:58:02,372.372 INFO    ] time= 27/06/2026 18:58:02
[2026-06-27 18:58:02,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:58:02,402.402 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:58:02,470.470 INFO    ] No existing commands found in stream
[2026-06-27 18:58:07,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:58:07,479.479 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-27 18:58:08,696.696 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:58:08,698.698 INFO    ] Checking for system updates...
[2026-06-27 18:58:08,719.719 INFO    ] 200
[2026-06-27 18:58:08,720.720 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:58:08,753.753 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:58:08,755.755 INFO    ] No update needed
[2026-06-27 18:58:08,757.757 INFO    ] Checking for camera pi updates...
[2026-06-27 18:58:08,777.777 INFO    ] 200
[2026-06-27 18:58:08,778.778 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:58:08,803.803 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:58:08,849.849 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:58:08,850.850 INFO    ] No camera update needed
[2026-06-27 18:58:08,852.852 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:58:08,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:58:08,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:58:08,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:58:10,902.902 INFO    ] ================================================
[2026-06-27 18:58:10,918.918 INFO    ] Launching Daemon at Sat Jun 27 18:58:10 IST 2026
[2026-06-27 18:58:10,929.929 INFO    ] ================================================
[2026-06-27 18:58:11,281.281 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:58:11
[2026-06-27 18:58:11,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:58:11,727.727 INFO    ] Initializing speech engine...
[2026-06-27 18:58:11,731.731 INFO    ] 2026-06-27 18:58:11
[2026-06-27 18:58:11,959.959 INFO    ] 2026-06-27 18:58:11
[2026-06-27 18:58:11,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:58:12,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:58:12,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:58:12,332.332 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:58:12,404.404 INFO    ] time= 27/06/2026 18:58:12
[2026-06-27 18:58:12,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:58:12,439.439 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:58:12,519.519 INFO    ] No existing commands found in stream
[2026-06-27 18:58:17,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:58:17,531.531 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-27 18:58:21,456.456 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:58:21,457.457 INFO    ] Checking for system updates...
[2026-06-27 18:58:21,478.478 INFO    ] 200
[2026-06-27 18:58:21,479.479 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:58:21,509.509 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:58:21,511.511 INFO    ] No update needed
[2026-06-27 18:58:21,512.512 INFO    ] Checking for camera pi updates...
[2026-06-27 18:58:21,534.534 INFO    ] 200
[2026-06-27 18:58:21,535.535 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:58:21,560.560 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:58:21,607.607 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:58:21,609.609 INFO    ] No camera update needed
[2026-06-27 18:58:21,610.610 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:58:21,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:58:21,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:58:21,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:58:23,656.656 INFO    ] ================================================
[2026-06-27 18:58:23,672.672 INFO    ] Launching Daemon at Sat Jun 27 18:58:23 IST 2026
[2026-06-27 18:58:23,683.683 INFO    ] ================================================
[2026-06-27 18:58:24,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:58:24
[2026-06-27 18:58:24,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:58:24,562.562 INFO    ] Initializing speech engine...
[2026-06-27 18:58:24,569.569 INFO    ] 2026-06-27 18:58:24
[2026-06-27 18:58:24,778.778 INFO    ] 2026-06-27 18:58:24
[2026-06-27 18:58:24,807.807 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:58:24,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:58:25,000.000 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:58:25,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:58:25,220.220 INFO    ] time= 27/06/2026 18:58:25
[2026-06-27 18:58:25,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:58:25,227.227 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:58:25,296.296 INFO    ] No existing commands found in stream
[2026-06-27 18:58:30,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:58:30,314.314 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-27 18:58:32,132.132 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 18:58:32,135.135 INFO    ] Checking for system updates...
[2026-06-27 18:58:32,172.172 INFO    ] 200
[2026-06-27 18:58:32,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:58:32,236.236 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:58:32,239.239 INFO    ] No update needed
[2026-06-27 18:58:32,241.241 INFO    ] Checking for camera pi updates...
[2026-06-27 18:58:32,280.280 INFO    ] 200
[2026-06-27 18:58:32,283.283 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:58:32,312.312 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:58:32,344.344 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:58:32,345.345 INFO    ] No camera update needed
[2026-06-27 18:58:32,347.347 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:58:32,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:58:32,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:58:32,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:58:34,395.395 INFO    ] ================================================
[2026-06-27 18:58:34,411.411 INFO    ] Launching Daemon at Sat Jun 27 18:58:34 IST 2026
[2026-06-27 18:58:34,423.423 INFO    ] ================================================
[2026-06-27 18:58:34,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:58:34
[2026-06-27 18:58:35,103.103 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:58:35,244.244 INFO    ] Initializing speech engine...
[2026-06-27 18:58:35,249.249 INFO    ] 2026-06-27 18:58:35
[2026-06-27 18:58:35,453.453 INFO    ] 2026-06-27 18:58:35
[2026-06-27 18:58:35,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:58:35,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:58:35,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:58:35,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:58:35,868.868 INFO    ] time= 27/06/2026 18:58:35
[2026-06-27 18:58:35,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:58:35,897.897 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:58:35,962.962 INFO    ] No existing commands found in stream
[2026-06-27 18:58:40,972.972 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:58:40,975.975 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-27 18:58:42,373.373 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:58:42,375.375 INFO    ] Checking for system updates...
[2026-06-27 18:58:42,395.395 INFO    ] 200
[2026-06-27 18:58:42,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:58:42,427.427 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:58:42,429.429 INFO    ] No update needed
[2026-06-27 18:58:42,430.430 INFO    ] Checking for camera pi updates...
[2026-06-27 18:58:42,449.449 INFO    ] 200
[2026-06-27 18:58:42,451.451 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:58:42,476.476 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:58:42,517.517 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:58:42,519.519 INFO    ] No camera update needed
[2026-06-27 18:58:42,520.520 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:58:42,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:58:42,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:58:42,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:58:44,568.568 INFO    ] ================================================
[2026-06-27 18:58:44,584.584 INFO    ] Launching Daemon at Sat Jun 27 18:58:44 IST 2026
[2026-06-27 18:58:44,594.594 INFO    ] ================================================
[2026-06-27 18:58:44,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:58:44
[2026-06-27 18:58:45,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:58:45,445.445 INFO    ] Initializing speech engine...
[2026-06-27 18:58:45,451.451 INFO    ] 2026-06-27 18:58:45
[2026-06-27 18:58:45,662.662 INFO    ] 2026-06-27 18:58:45
[2026-06-27 18:58:45,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:58:45,879.879 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:58:45,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:58:46,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:58:46,075.075 INFO    ] time= 27/06/2026 18:58:46
[2026-06-27 18:58:46,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:58:46,120.120 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:58:46,192.192 INFO    ] No existing commands found in stream
[2026-06-27 18:58:51,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:58:51,210.210 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-27 18:58:51,739.739 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:58:51,740.740 INFO    ] Checking for system updates...
[2026-06-27 18:58:51,762.762 INFO    ] 200
[2026-06-27 18:58:51,764.764 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:58:51,797.797 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:58:51,799.799 INFO    ] No update needed
[2026-06-27 18:58:51,800.800 INFO    ] Checking for camera pi updates...
[2026-06-27 18:58:51,821.821 INFO    ] 200
[2026-06-27 18:58:51,823.823 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:58:51,848.848 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:58:51,901.901 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:58:51,902.902 INFO    ] No camera update needed
[2026-06-27 18:58:51,904.904 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:58:51,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:58:51,909.909 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:58:51,912.912 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:58:53,954.954 INFO    ] ================================================
[2026-06-27 18:58:53,970.970 INFO    ] Launching Daemon at Sat Jun 27 18:58:53 IST 2026
[2026-06-27 18:58:53,982.982 INFO    ] ================================================
[2026-06-27 18:58:54,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:58:54
[2026-06-27 18:58:54,642.642 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:58:54,776.776 INFO    ] Initializing speech engine...
[2026-06-27 18:58:54,780.780 INFO    ] 2026-06-27 18:58:54
[2026-06-27 18:58:54,975.975 INFO    ] 2026-06-27 18:58:54
[2026-06-27 18:58:55,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:58:55,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:58:55,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:58:55,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:58:55,465.465 INFO    ] time= 27/06/2026 18:58:55
[2026-06-27 18:58:55,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:58:55,508.508 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:58:55,612.612 INFO    ] No existing commands found in stream
[2026-06-27 18:59:00,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:59:00,624.624 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-27 18:59:04,303.303 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 18:59:04,305.305 INFO    ] Checking for system updates...
[2026-06-27 18:59:04,326.326 INFO    ] 200
[2026-06-27 18:59:04,327.327 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:59:04,358.358 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:59:04,360.360 INFO    ] No update needed
[2026-06-27 18:59:04,361.361 INFO    ] Checking for camera pi updates...
[2026-06-27 18:59:04,381.381 INFO    ] 200
[2026-06-27 18:59:04,383.383 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:59:04,407.407 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:59:04,449.449 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 18:59:04,451.451 INFO    ] No camera update needed
[2026-06-27 18:59:04,452.452 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:59:04,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:59:04,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:59:04,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:59:06,501.501 INFO    ] ================================================
[2026-06-27 18:59:06,517.517 INFO    ] Launching Daemon at Sat Jun 27 18:59:06 IST 2026
[2026-06-27 18:59:06,527.527 INFO    ] ================================================
[2026-06-27 18:59:06,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:59:06
[2026-06-27 18:59:07,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:59:07,321.321 INFO    ] Initializing speech engine...
[2026-06-27 18:59:07,331.331 INFO    ] 2026-06-27 18:59:07
[2026-06-27 18:59:07,537.537 INFO    ] 2026-06-27 18:59:07
[2026-06-27 18:59:07,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:59:07,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:59:07,759.759 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:59:07,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:59:07,883.883 INFO    ] time= 27/06/2026 18:59:07
[2026-06-27 18:59:07,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:59:07,948.948 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:59:08,068.068 INFO    ] No existing commands found in stream
[2026-06-27 18:59:13,079.079 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:59:13,081.081 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-27 18:59:13,855.855 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 18:59:13,857.857 INFO    ] Checking for system updates...
[2026-06-27 18:59:13,878.878 INFO    ] 200
[2026-06-27 18:59:13,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:59:13,912.912 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:59:13,913.913 INFO    ] No update needed
[2026-06-27 18:59:13,915.915 INFO    ] Checking for camera pi updates...
[2026-06-27 18:59:13,936.936 INFO    ] 200
[2026-06-27 18:59:13,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:59:13,961.961 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:59:14,103.103 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:59:14,105.105 INFO    ] No camera update needed
[2026-06-27 18:59:14,106.106 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:59:14,107.107 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:59:14,110.110 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:59:14,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:59:16,151.151 INFO    ] ================================================
[2026-06-27 18:59:16,166.166 INFO    ] Launching Daemon at Sat Jun 27 18:59:16 IST 2026
[2026-06-27 18:59:16,176.176 INFO    ] ================================================
[2026-06-27 18:59:16,562.562 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:59:16
[2026-06-27 18:59:16,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:59:17,052.052 INFO    ] Initializing speech engine...
[2026-06-27 18:59:17,063.063 INFO    ] 2026-06-27 18:59:17
[2026-06-27 18:59:17,290.290 INFO    ] 2026-06-27 18:59:17
[2026-06-27 18:59:17,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:59:17,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:59:17,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:59:17,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:59:17,745.745 INFO    ] time= 27/06/2026 18:59:17
[2026-06-27 18:59:17,772.772 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:59:17,778.778 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:59:17,848.848 INFO    ] No existing commands found in stream
[2026-06-27 18:59:22,859.859 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:59:22,862.862 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-27 18:59:24,984.984 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 18:59:24,985.985 INFO    ] Checking for system updates...
[2026-06-27 18:59:25,008.008 INFO    ] 200
[2026-06-27 18:59:25,010.010 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:59:25,040.040 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:59:25,041.041 INFO    ] No update needed
[2026-06-27 18:59:25,042.042 INFO    ] Checking for camera pi updates...
[2026-06-27 18:59:25,065.065 INFO    ] 200
[2026-06-27 18:59:25,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:59:25,089.089 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:59:25,132.132 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:59:25,134.134 INFO    ] No camera update needed
[2026-06-27 18:59:25,135.135 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:59:25,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:59:25,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:59:25,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:59:27,182.182 INFO    ] ================================================
[2026-06-27 18:59:27,196.196 INFO    ] Launching Daemon at Sat Jun 27 18:59:27 IST 2026
[2026-06-27 18:59:27,207.207 INFO    ] ================================================
[2026-06-27 18:59:27,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:59:27
[2026-06-27 18:59:27,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:59:27,995.995 INFO    ] Initializing speech engine...
[2026-06-27 18:59:28,008.008 INFO    ] 2026-06-27 18:59:28
[2026-06-27 18:59:28,229.229 INFO    ] 2026-06-27 18:59:28
[2026-06-27 18:59:28,261.261 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:59:28,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:59:28,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:59:28,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:59:28,676.676 INFO    ] time= 27/06/2026 18:59:28
[2026-06-27 18:59:28,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:59:28,706.706 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:59:28,772.772 INFO    ] No existing commands found in stream
[2026-06-27 18:59:33,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:59:33,807.807 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-27 18:59:37,183.183 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 18:59:37,185.185 INFO    ] Checking for system updates...
[2026-06-27 18:59:37,206.206 INFO    ] 200
[2026-06-27 18:59:37,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:59:37,238.238 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:59:37,239.239 INFO    ] No update needed
[2026-06-27 18:59:37,241.241 INFO    ] Checking for camera pi updates...
[2026-06-27 18:59:37,260.260 INFO    ] 200
[2026-06-27 18:59:37,261.261 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:59:37,287.287 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:59:37,332.332 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:59:37,333.333 INFO    ] No camera update needed
[2026-06-27 18:59:37,335.335 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:59:37,336.336 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:59:37,339.339 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:59:37,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:59:39,381.381 INFO    ] ================================================
[2026-06-27 18:59:39,396.396 INFO    ] Launching Daemon at Sat Jun 27 18:59:39 IST 2026
[2026-06-27 18:59:39,406.406 INFO    ] ================================================
[2026-06-27 18:59:39,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:59:39
[2026-06-27 18:59:40,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:59:40,229.229 INFO    ] Initializing speech engine...
[2026-06-27 18:59:40,235.235 INFO    ] 2026-06-27 18:59:40
[2026-06-27 18:59:40,443.443 INFO    ] 2026-06-27 18:59:40
[2026-06-27 18:59:40,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:59:40,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:59:40,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:59:40,864.864 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:59:40,887.887 INFO    ] time= 27/06/2026 18:59:40
[2026-06-27 18:59:40,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:59:40,894.894 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:59:40,962.962 INFO    ] No existing commands found in stream
[2026-06-27 18:59:45,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:59:45,979.979 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-27 18:59:47,349.349 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 18:59:47,351.351 INFO    ] Checking for system updates...
[2026-06-27 18:59:47,373.373 INFO    ] 200
[2026-06-27 18:59:47,375.375 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:59:47,410.410 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:59:47,412.412 INFO    ] No update needed
[2026-06-27 18:59:47,413.413 INFO    ] Checking for camera pi updates...
[2026-06-27 18:59:47,436.436 INFO    ] 200
[2026-06-27 18:59:47,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:59:47,464.464 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:59:47,516.516 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:59:47,518.518 INFO    ] No camera update needed
[2026-06-27 18:59:47,519.519 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:59:47,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:59:47,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:59:47,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 18:59:49,565.565 INFO    ] ================================================
[2026-06-27 18:59:49,581.581 INFO    ] Launching Daemon at Sat Jun 27 18:59:49 IST 2026
[2026-06-27 18:59:49,591.591 INFO    ] ================================================
[2026-06-27 18:59:49,933.933 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 18:59:49
[2026-06-27 18:59:50,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 18:59:50,374.374 INFO    ] Initializing speech engine...
[2026-06-27 18:59:50,383.383 INFO    ] 2026-06-27 18:59:50
[2026-06-27 18:59:50,595.595 INFO    ] 2026-06-27 18:59:50
[2026-06-27 18:59:50,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 18:59:50,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 18:59:50,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 18:59:50,985.985 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 18:59:51,018.018 INFO    ] time= 27/06/2026 18:59:50
[2026-06-27 18:59:51,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 18:59:51,047.047 INFO    ] Checking for existing commands in stream...
[2026-06-27 18:59:51,138.138 INFO    ] No existing commands found in stream
[2026-06-27 18:59:56,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 18:59:56,149.149 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-27 18:59:58,350.350 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 18:59:58,351.351 INFO    ] Checking for system updates...
[2026-06-27 18:59:58,372.372 INFO    ] 200
[2026-06-27 18:59:58,374.374 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:59:58,404.404 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:59:58,406.406 INFO    ] No update needed
[2026-06-27 18:59:58,407.407 INFO    ] Checking for camera pi updates...
[2026-06-27 18:59:58,426.426 INFO    ] 200
[2026-06-27 18:59:58,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 18:59:58,453.453 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 18:59:58,480.480 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 18:59:58,481.481 INFO    ] No camera update needed
[2026-06-27 18:59:58,483.483 INFO    ] Script finished. Safe exiting...
[2026-06-27 18:59:58,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 18:59:58,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 18:59:58,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:00:00,531.531 INFO    ] ================================================
[2026-06-27 19:00:00,546.546 INFO    ] Launching Daemon at Sat Jun 27 19:00:00 IST 2026
[2026-06-27 19:00:00,558.558 INFO    ] ================================================
[2026-06-27 19:00:00,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:00:00
[2026-06-27 19:00:01,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:00:01,355.355 INFO    ] Initializing speech engine...
[2026-06-27 19:00:01,360.360 INFO    ] 2026-06-27 19:00:01
[2026-06-27 19:00:01,563.563 INFO    ] 2026-06-27 19:00:01
[2026-06-27 19:00:01,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:00:01,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:00:01,780.780 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:00:01,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:00:02,034.034 INFO    ] time= 27/06/2026 19:00:01
[2026-06-27 19:00:02,036.036 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:00:02,051.051 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:00:02,116.116 INFO    ] No existing commands found in stream
[2026-06-27 19:00:07,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:00:07,128.128 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-27 19:00:11,485.485 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 19:00:11,487.487 INFO    ] Checking for system updates...
[2026-06-27 19:00:11,508.508 INFO    ] 200
[2026-06-27 19:00:11,509.509 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:00:11,541.541 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:00:11,542.542 INFO    ] No update needed
[2026-06-27 19:00:11,544.544 INFO    ] Checking for camera pi updates...
[2026-06-27 19:00:11,566.566 INFO    ] 200
[2026-06-27 19:00:11,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:00:11,594.594 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:00:11,642.642 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:00:11,644.644 INFO    ] No camera update needed
[2026-06-27 19:00:11,645.645 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:00:11,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:00:11,649.649 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:00:11,652.652 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:00:13,693.693 INFO    ] ================================================
[2026-06-27 19:00:13,710.710 INFO    ] Launching Daemon at Sat Jun 27 19:00:13 IST 2026
[2026-06-27 19:00:13,726.726 INFO    ] ================================================
[2026-06-27 19:00:14,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:00:14
[2026-06-27 19:00:14,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:00:14,558.558 INFO    ] Initializing speech engine...
[2026-06-27 19:00:14,563.563 INFO    ] 2026-06-27 19:00:14
[2026-06-27 19:00:14,767.767 INFO    ] 2026-06-27 19:00:14
[2026-06-27 19:00:14,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:00:14,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:00:14,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:00:15,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:00:15,206.206 INFO    ] time= 27/06/2026 19:00:15
[2026-06-27 19:00:15,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:00:15,214.214 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:00:15,280.280 INFO    ] No existing commands found in stream
[2026-06-27 19:00:20,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:00:20,292.292 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-27 19:00:22,926.926 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 19:00:22,927.927 INFO    ] Checking for system updates...
[2026-06-27 19:00:22,948.948 INFO    ] 200
[2026-06-27 19:00:22,950.950 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:00:22,982.982 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:00:22,983.983 INFO    ] No update needed
[2026-06-27 19:00:22,984.984 INFO    ] Checking for camera pi updates...
[2026-06-27 19:00:23,004.004 INFO    ] 200
[2026-06-27 19:00:23,006.006 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:00:23,031.031 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:00:23,080.080 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:00:23,081.081 INFO    ] No camera update needed
[2026-06-27 19:00:23,082.082 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:00:23,084.084 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:00:23,087.087 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:00:23,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:00:25,129.129 INFO    ] ================================================
[2026-06-27 19:00:25,145.145 INFO    ] Launching Daemon at Sat Jun 27 19:00:25 IST 2026
[2026-06-27 19:00:25,155.155 INFO    ] ================================================
[2026-06-27 19:00:25,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:00:25
[2026-06-27 19:00:25,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:00:25,967.967 INFO    ] Initializing speech engine...
[2026-06-27 19:00:25,977.977 INFO    ] 2026-06-27 19:00:25
[2026-06-27 19:00:26,184.184 INFO    ] 2026-06-27 19:00:26
[2026-06-27 19:00:26,212.212 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:00:26,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:00:26,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:00:26,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:00:26,622.622 INFO    ] time= 27/06/2026 19:00:26
[2026-06-27 19:00:26,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:00:26,629.629 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:00:26,696.696 INFO    ] No existing commands found in stream
[2026-06-27 19:00:31,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:00:31,718.718 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-27 19:00:32,890.890 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 19:00:32,892.892 INFO    ] Checking for system updates...
[2026-06-27 19:00:32,916.916 INFO    ] 200
[2026-06-27 19:00:32,917.917 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:00:32,950.950 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:00:32,952.952 INFO    ] No update needed
[2026-06-27 19:00:32,953.953 INFO    ] Checking for camera pi updates...
[2026-06-27 19:00:32,976.976 INFO    ] 200
[2026-06-27 19:00:32,977.977 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:00:33,002.002 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:00:33,045.045 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:00:33,046.046 INFO    ] No camera update needed
[2026-06-27 19:00:33,048.048 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:00:33,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:00:33,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:00:33,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:00:35,095.095 INFO    ] ================================================
[2026-06-27 19:00:35,111.111 INFO    ] Launching Daemon at Sat Jun 27 19:00:35 IST 2026
[2026-06-27 19:00:35,122.122 INFO    ] ================================================
[2026-06-27 19:00:35,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:00:35
[2026-06-27 19:00:35,793.793 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:00:35,937.937 INFO    ] Initializing speech engine...
[2026-06-27 19:00:35,942.942 INFO    ] 2026-06-27 19:00:35
[2026-06-27 19:00:36,151.151 INFO    ] 2026-06-27 19:00:36
[2026-06-27 19:00:36,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:00:36,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:00:36,372.372 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:00:36,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:00:36,601.601 INFO    ] time= 27/06/2026 19:00:36
[2026-06-27 19:00:36,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:00:36,609.609 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:00:36,678.678 INFO    ] No existing commands found in stream
[2026-06-27 19:00:41,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:00:41,710.710 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-27 19:00:42,146.146 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:00:42,147.147 INFO    ] Checking for system updates...
[2026-06-27 19:00:42,168.168 INFO    ] 200
[2026-06-27 19:00:42,169.169 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:00:42,200.200 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:00:42,201.201 INFO    ] No update needed
[2026-06-27 19:00:42,203.203 INFO    ] Checking for camera pi updates...
[2026-06-27 19:00:42,223.223 INFO    ] 200
[2026-06-27 19:00:42,225.225 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:00:42,249.249 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:00:42,293.293 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:00:42,295.295 INFO    ] No camera update needed
[2026-06-27 19:00:42,296.296 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:00:42,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:00:42,301.301 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:00:42,304.304 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:00:44,344.344 INFO    ] ================================================
[2026-06-27 19:00:44,360.360 INFO    ] Launching Daemon at Sat Jun 27 19:00:44 IST 2026
[2026-06-27 19:00:44,371.371 INFO    ] ================================================
[2026-06-27 19:00:44,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:00:44
[2026-06-27 19:00:45,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:00:45,172.172 INFO    ] Initializing speech engine...
[2026-06-27 19:00:45,182.182 INFO    ] 2026-06-27 19:00:45
[2026-06-27 19:00:45,393.393 INFO    ] 2026-06-27 19:00:45
[2026-06-27 19:00:45,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:00:45,610.610 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:00:45,619.619 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:00:45,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:00:45,833.833 INFO    ] time= 27/06/2026 19:00:45
[2026-06-27 19:00:45,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:00:45,849.849 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:00:45,917.917 INFO    ] No existing commands found in stream
[2026-06-27 19:00:50,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:00:50,945.945 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-27 19:00:53,666.666 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:00:53,668.668 INFO    ] Checking for system updates...
[2026-06-27 19:00:53,692.692 INFO    ] 200
[2026-06-27 19:00:53,694.694 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:00:53,725.725 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:00:53,726.726 INFO    ] No update needed
[2026-06-27 19:00:53,728.728 INFO    ] Checking for camera pi updates...
[2026-06-27 19:00:53,749.749 INFO    ] 200
[2026-06-27 19:00:53,750.750 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:00:53,778.778 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:00:53,908.908 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:00:53,913.913 INFO    ] No camera update needed
[2026-06-27 19:00:53,915.915 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:00:53,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:00:53,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:00:53,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:00:55,962.962 INFO    ] ================================================
[2026-06-27 19:00:55,979.979 INFO    ] Launching Daemon at Sat Jun 27 19:00:55 IST 2026
[2026-06-27 19:00:55,990.990 INFO    ] ================================================
[2026-06-27 19:00:56,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:00:56
[2026-06-27 19:00:56,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:00:56,770.770 INFO    ] Initializing speech engine...
[2026-06-27 19:00:56,774.774 INFO    ] 2026-06-27 19:00:56
[2026-06-27 19:00:56,992.992 INFO    ] 2026-06-27 19:00:56
[2026-06-27 19:00:57,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:00:57,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:00:57,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:00:57,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:00:57,418.418 INFO    ] time= 27/06/2026 19:00:57
[2026-06-27 19:00:57,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:00:57,447.447 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:00:57,515.515 INFO    ] No existing commands found in stream
[2026-06-27 19:01:02,524.524 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:01:02,526.526 INFO    ] Waiting 3.56 seconds before fallback handling...
[2026-06-27 19:01:06,511.511 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:01:06,513.513 INFO    ] Checking for system updates...
[2026-06-27 19:01:06,533.533 INFO    ] 200
[2026-06-27 19:01:06,535.535 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:01:06,565.565 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:01:06,567.567 INFO    ] No update needed
[2026-06-27 19:01:06,568.568 INFO    ] Checking for camera pi updates...
[2026-06-27 19:01:06,590.590 INFO    ] 200
[2026-06-27 19:01:06,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:01:06,615.615 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:01:06,668.668 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:01:06,669.669 INFO    ] No camera update needed
[2026-06-27 19:01:06,670.670 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:01:06,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:01:06,675.675 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:01:06,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:01:08,717.717 INFO    ] ================================================
[2026-06-27 19:01:08,732.732 INFO    ] Launching Daemon at Sat Jun 27 19:01:08 IST 2026
[2026-06-27 19:01:08,743.743 INFO    ] ================================================
[2026-06-27 19:01:09,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:01:09
[2026-06-27 19:01:09,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:01:09,559.559 INFO    ] Initializing speech engine...
[2026-06-27 19:01:09,569.569 INFO    ] 2026-06-27 19:01:09
[2026-06-27 19:01:09,777.777 INFO    ] 2026-06-27 19:01:09
[2026-06-27 19:01:09,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:01:09,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:01:09,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:01:10,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:01:10,191.191 INFO    ] time= 27/06/2026 19:01:10
[2026-06-27 19:01:10,224.224 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:01:10,230.230 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:01:10,298.298 INFO    ] No existing commands found in stream
[2026-06-27 19:01:15,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:01:15,325.325 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-27 19:01:19,016.016 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:01:19,018.018 INFO    ] Checking for system updates...
[2026-06-27 19:01:19,061.061 INFO    ] 200
[2026-06-27 19:01:19,062.062 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:01:19,093.093 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:01:19,094.094 INFO    ] No update needed
[2026-06-27 19:01:19,096.096 INFO    ] Checking for camera pi updates...
[2026-06-27 19:01:19,117.117 INFO    ] 200
[2026-06-27 19:01:19,119.119 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:01:19,146.146 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:01:19,291.291 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:01:19,292.292 INFO    ] No camera update needed
[2026-06-27 19:01:19,294.294 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:01:19,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:01:19,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:01:19,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:01:21,341.341 INFO    ] ================================================
[2026-06-27 19:01:21,365.365 INFO    ] Launching Daemon at Sat Jun 27 19:01:21 IST 2026
[2026-06-27 19:01:21,376.376 INFO    ] ================================================
[2026-06-27 19:01:21,752.752 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:01:21
[2026-06-27 19:01:22,065.065 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:01:22,207.207 INFO    ] Initializing speech engine...
[2026-06-27 19:01:22,213.213 INFO    ] 2026-06-27 19:01:22
[2026-06-27 19:01:22,417.417 INFO    ] 2026-06-27 19:01:22
[2026-06-27 19:01:22,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:01:22,627.627 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:01:22,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:01:22,759.759 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:01:22,815.815 INFO    ] time= 27/06/2026 19:01:22
[2026-06-27 19:01:22,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:01:22,858.858 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:01:22,953.953 INFO    ] No existing commands found in stream
[2026-06-27 19:01:27,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:01:27,965.965 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-27 19:01:32,197.197 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:01:32,199.199 INFO    ] Checking for system updates...
[2026-06-27 19:01:32,224.224 INFO    ] 200
[2026-06-27 19:01:32,226.226 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:01:32,264.264 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:01:32,266.266 INFO    ] No update needed
[2026-06-27 19:01:32,268.268 INFO    ] Checking for camera pi updates...
[2026-06-27 19:01:32,294.294 INFO    ] 200
[2026-06-27 19:01:32,296.296 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:01:32,326.326 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:01:32,364.364 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:01:32,366.366 INFO    ] No camera update needed
[2026-06-27 19:01:32,368.368 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:01:32,370.370 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:01:32,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:01:32,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:01:34,418.418 INFO    ] ================================================
[2026-06-27 19:01:34,433.433 INFO    ] Launching Daemon at Sat Jun 27 19:01:34 IST 2026
[2026-06-27 19:01:34,444.444 INFO    ] ================================================
[2026-06-27 19:01:34,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:01:34
[2026-06-27 19:01:35,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:01:35,276.276 INFO    ] Initializing speech engine...
[2026-06-27 19:01:35,281.281 INFO    ] 2026-06-27 19:01:35
[2026-06-27 19:01:35,485.485 INFO    ] 2026-06-27 19:01:35
[2026-06-27 19:01:35,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:01:35,636.636 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:01:35,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:01:35,847.847 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:01:35,903.903 INFO    ] time= 27/06/2026 19:01:35
[2026-06-27 19:01:35,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:01:35,933.933 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:01:36,000.000 INFO    ] No existing commands found in stream
[2026-06-27 19:01:41,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:01:41,017.017 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-27 19:01:44,077.077 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:01:44,078.078 INFO    ] Checking for system updates...
[2026-06-27 19:01:44,100.100 INFO    ] 200
[2026-06-27 19:01:44,102.102 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:01:44,144.144 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:01:44,146.146 INFO    ] No update needed
[2026-06-27 19:01:44,147.147 INFO    ] Checking for camera pi updates...
[2026-06-27 19:01:44,168.168 INFO    ] 200
[2026-06-27 19:01:44,169.169 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:01:44,196.196 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:01:44,236.236 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:01:44,237.237 INFO    ] No camera update needed
[2026-06-27 19:01:44,239.239 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:01:44,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:01:44,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:01:44,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:01:46,285.285 INFO    ] ================================================
[2026-06-27 19:01:46,300.300 INFO    ] Launching Daemon at Sat Jun 27 19:01:46 IST 2026
[2026-06-27 19:01:46,311.311 INFO    ] ================================================
[2026-06-27 19:01:46,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:01:46
[2026-06-27 19:01:46,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:01:47,098.098 INFO    ] Initializing speech engine...
[2026-06-27 19:01:47,105.105 INFO    ] 2026-06-27 19:01:47
[2026-06-27 19:01:47,313.313 INFO    ] 2026-06-27 19:01:47
[2026-06-27 19:01:47,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:01:47,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:01:47,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:01:47,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:01:47,744.744 INFO    ] time= 27/06/2026 19:01:47
[2026-06-27 19:01:47,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:01:47,766.766 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:01:47,834.834 INFO    ] No existing commands found in stream
[2026-06-27 19:01:52,843.843 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:01:52,846.846 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-27 19:01:54,471.471 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:01:54,473.473 INFO    ] Checking for system updates...
[2026-06-27 19:01:54,494.494 INFO    ] 200
[2026-06-27 19:01:54,496.496 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:01:54,526.526 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:01:54,527.527 INFO    ] No update needed
[2026-06-27 19:01:54,529.529 INFO    ] Checking for camera pi updates...
[2026-06-27 19:01:54,548.548 INFO    ] 200
[2026-06-27 19:01:54,549.549 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:01:54,572.572 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:01:54,609.609 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:01:54,610.610 INFO    ] No camera update needed
[2026-06-27 19:01:54,611.611 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:01:54,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:01:54,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:01:54,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:01:56,649.649 INFO    ] ================================================
[2026-06-27 19:01:56,664.664 INFO    ] Launching Daemon at Sat Jun 27 19:01:56 IST 2026
[2026-06-27 19:01:56,675.675 INFO    ] ================================================
[2026-06-27 19:01:57,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:01:57
[2026-06-27 19:01:57,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:01:57,486.486 INFO    ] Initializing speech engine...
[2026-06-27 19:01:57,490.490 INFO    ] 2026-06-27 19:01:57
[2026-06-27 19:01:57,693.693 INFO    ] 2026-06-27 19:01:57
[2026-06-27 19:01:57,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:01:57,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:01:57,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:01:58,064.064 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:01:58,111.111 INFO    ] time= 27/06/2026 19:01:58
[2026-06-27 19:01:58,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:01:58,139.139 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:01:58,204.204 INFO    ] No existing commands found in stream
[2026-06-27 19:02:03,215.215 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:02:03,218.218 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-27 19:02:04,613.613 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 19:02:04,615.615 INFO    ] Checking for system updates...
[2026-06-27 19:02:04,640.640 INFO    ] 200
[2026-06-27 19:02:04,642.642 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:02:04,673.673 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:02:04,675.675 INFO    ] No update needed
[2026-06-27 19:02:04,676.676 INFO    ] Checking for camera pi updates...
[2026-06-27 19:02:04,697.697 INFO    ] 200
[2026-06-27 19:02:04,699.699 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:02:04,740.740 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:02:04,784.784 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:02:04,785.785 INFO    ] No camera update needed
[2026-06-27 19:02:04,787.787 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:02:04,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:02:04,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:02:04,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:02:06,833.833 INFO    ] ================================================
[2026-06-27 19:02:06,849.849 INFO    ] Launching Daemon at Sat Jun 27 19:02:06 IST 2026
[2026-06-27 19:02:06,860.860 INFO    ] ================================================
[2026-06-27 19:02:07,231.231 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:02:07
[2026-06-27 19:02:07,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:02:07,723.723 INFO    ] Initializing speech engine...
[2026-06-27 19:02:07,729.729 INFO    ] 2026-06-27 19:02:07
[2026-06-27 19:02:07,936.936 INFO    ] 2026-06-27 19:02:07
[2026-06-27 19:02:07,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:02:08,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:02:08,161.161 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:02:08,354.354 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:02:08,378.378 INFO    ] time= 27/06/2026 19:02:08
[2026-06-27 19:02:08,383.383 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:02:08,385.385 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:02:08,476.476 INFO    ] No existing commands found in stream
[2026-06-27 19:02:13,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:02:13,489.489 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-27 19:02:17,238.238 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:02:17,239.239 INFO    ] Checking for system updates...
[2026-06-27 19:02:17,262.262 INFO    ] 200
[2026-06-27 19:02:17,263.263 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:02:17,456.456 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:02:17,457.457 INFO    ] No update needed
[2026-06-27 19:02:17,458.458 INFO    ] Checking for camera pi updates...
[2026-06-27 19:02:17,480.480 INFO    ] 200
[2026-06-27 19:02:17,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:02:17,525.525 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:02:17,575.575 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:02:17,578.578 INFO    ] No camera update needed
[2026-06-27 19:02:17,580.580 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:02:17,583.583 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:02:17,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:02:17,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:02:19,636.636 INFO    ] ================================================
[2026-06-27 19:02:19,652.652 INFO    ] Launching Daemon at Sat Jun 27 19:02:19 IST 2026
[2026-06-27 19:02:19,662.662 INFO    ] ================================================
[2026-06-27 19:02:20,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:02:20
[2026-06-27 19:02:20,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:02:20,465.465 INFO    ] Initializing speech engine...
[2026-06-27 19:02:20,475.475 INFO    ] 2026-06-27 19:02:20
[2026-06-27 19:02:20,681.681 INFO    ] 2026-06-27 19:02:20
[2026-06-27 19:02:20,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:02:20,891.891 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:02:20,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:02:21,029.029 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:02:21,093.093 INFO    ] time= 27/06/2026 19:02:21
[2026-06-27 19:02:21,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:02:21,126.126 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:02:21,192.192 INFO    ] No existing commands found in stream
[2026-06-27 19:02:26,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:02:26,209.209 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-27 19:02:27,367.367 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 19:02:27,368.368 INFO    ] Checking for system updates...
[2026-06-27 19:02:27,390.390 INFO    ] 200
[2026-06-27 19:02:27,392.392 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:02:27,422.422 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:02:27,423.423 INFO    ] No update needed
[2026-06-27 19:02:27,425.425 INFO    ] Checking for camera pi updates...
[2026-06-27 19:02:27,445.445 INFO    ] 200
[2026-06-27 19:02:27,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:02:27,472.472 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:02:27,533.533 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:02:27,535.535 INFO    ] No camera update needed
[2026-06-27 19:02:27,536.536 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:02:27,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:02:27,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:02:27,543.543 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:02:29,582.582 INFO    ] ================================================
[2026-06-27 19:02:29,598.598 INFO    ] Launching Daemon at Sat Jun 27 19:02:29 IST 2026
[2026-06-27 19:02:29,609.609 INFO    ] ================================================
[2026-06-27 19:02:29,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:02:29
[2026-06-27 19:02:30,309.309 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:02:30,461.461 INFO    ] Initializing speech engine...
[2026-06-27 19:02:30,467.467 INFO    ] 2026-06-27 19:02:30
[2026-06-27 19:02:30,675.675 INFO    ] 2026-06-27 19:02:30
[2026-06-27 19:02:30,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:02:30,888.888 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:02:30,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:02:31,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:02:31,092.092 INFO    ] time= 27/06/2026 19:02:31
[2026-06-27 19:02:31,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:02:31,126.126 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:02:31,197.197 INFO    ] No existing commands found in stream
[2026-06-27 19:02:36,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:02:36,215.215 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-27 19:02:37,201.201 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:02:37,202.202 INFO    ] Checking for system updates...
[2026-06-27 19:02:37,224.224 INFO    ] 200
[2026-06-27 19:02:37,226.226 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:02:37,259.259 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:02:37,260.260 INFO    ] No update needed
[2026-06-27 19:02:37,262.262 INFO    ] Checking for camera pi updates...
[2026-06-27 19:02:37,283.283 INFO    ] 200
[2026-06-27 19:02:37,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:02:37,310.310 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:02:37,356.356 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:02:37,357.357 INFO    ] No camera update needed
[2026-06-27 19:02:37,359.359 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:02:37,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:02:37,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:02:37,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:02:39,405.405 INFO    ] ================================================
[2026-06-27 19:02:39,420.420 INFO    ] Launching Daemon at Sat Jun 27 19:02:39 IST 2026
[2026-06-27 19:02:39,431.431 INFO    ] ================================================
[2026-06-27 19:02:39,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:02:39
[2026-06-27 19:02:40,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:02:40,278.278 INFO    ] Initializing speech engine...
[2026-06-27 19:02:40,288.288 INFO    ] 2026-06-27 19:02:40
[2026-06-27 19:02:40,493.493 INFO    ] 2026-06-27 19:02:40
[2026-06-27 19:02:40,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:02:40,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:02:40,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:02:40,913.913 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:02:40,937.937 INFO    ] time= 27/06/2026 19:02:40
[2026-06-27 19:02:40,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:02:40,945.945 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:02:41,012.012 INFO    ] No existing commands found in stream
[2026-06-27 19:02:46,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:02:46,047.047 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-27 19:02:49,698.698 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:02:49,699.699 INFO    ] Checking for system updates...
[2026-06-27 19:02:49,720.720 INFO    ] 200
[2026-06-27 19:02:49,721.721 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:02:49,753.753 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:02:49,754.754 INFO    ] No update needed
[2026-06-27 19:02:49,756.756 INFO    ] Checking for camera pi updates...
[2026-06-27 19:02:49,776.776 INFO    ] 200
[2026-06-27 19:02:49,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:02:49,801.801 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:02:49,854.854 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:02:49,856.856 INFO    ] No camera update needed
[2026-06-27 19:02:49,857.857 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:02:49,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:02:49,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:02:49,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:02:51,904.904 INFO    ] ================================================
[2026-06-27 19:02:51,920.920 INFO    ] Launching Daemon at Sat Jun 27 19:02:51 IST 2026
[2026-06-27 19:02:51,931.931 INFO    ] ================================================
[2026-06-27 19:02:52,265.265 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:02:52
[2026-06-27 19:02:52,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:02:52,722.722 INFO    ] Initializing speech engine...
[2026-06-27 19:02:52,732.732 INFO    ] 2026-06-27 19:02:52
[2026-06-27 19:02:52,940.940 INFO    ] 2026-06-27 19:02:52
[2026-06-27 19:02:52,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:02:53,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:02:53,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:02:53,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:02:53,493.493 INFO    ] time= 27/06/2026 19:02:53
[2026-06-27 19:02:53,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:02:53,498.498 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:02:53,618.618 INFO    ] No existing commands found in stream
[2026-06-27 19:02:58,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:02:58,631.631 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-27 19:03:01,997.997 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:03:01,999.999 INFO    ] Checking for system updates...
[2026-06-27 19:03:02,028.028 INFO    ] 200
[2026-06-27 19:03:02,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:03:02,075.075 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:03:02,077.077 INFO    ] No update needed
[2026-06-27 19:03:02,079.079 INFO    ] Checking for camera pi updates...
[2026-06-27 19:03:02,106.106 INFO    ] 200
[2026-06-27 19:03:02,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:03:02,138.138 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:03:02,174.174 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:03:02,177.177 INFO    ] No camera update needed
[2026-06-27 19:03:02,180.180 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:03:02,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:03:02,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:03:02,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:03:04,233.233 INFO    ] ================================================
[2026-06-27 19:03:04,249.249 INFO    ] Launching Daemon at Sat Jun 27 19:03:04 IST 2026
[2026-06-27 19:03:04,260.260 INFO    ] ================================================
[2026-06-27 19:03:04,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:03:04
[2026-06-27 19:03:04,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:03:05,116.116 INFO    ] Initializing speech engine...
[2026-06-27 19:03:05,121.121 INFO    ] 2026-06-27 19:03:05
[2026-06-27 19:03:05,330.330 INFO    ] 2026-06-27 19:03:05
[2026-06-27 19:03:05,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:03:05,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:03:05,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:03:05,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:03:05,699.699 INFO    ] time= 27/06/2026 19:03:05
[2026-06-27 19:03:05,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:03:05,702.702 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:03:05,799.799 INFO    ] No existing commands found in stream
[2026-06-27 19:03:10,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:03:10,811.811 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-27 19:03:13,343.343 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:03:13,344.344 INFO    ] Checking for system updates...
[2026-06-27 19:03:13,365.365 INFO    ] 200
[2026-06-27 19:03:13,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:03:13,400.400 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:03:13,402.402 INFO    ] No update needed
[2026-06-27 19:03:13,403.403 INFO    ] Checking for camera pi updates...
[2026-06-27 19:03:13,424.424 INFO    ] 200
[2026-06-27 19:03:13,425.425 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:03:13,449.449 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:03:13,490.490 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:03:13,491.491 INFO    ] No camera update needed
[2026-06-27 19:03:13,493.493 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:03:13,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:03:13,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:03:13,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:03:15,539.539 INFO    ] ================================================
[2026-06-27 19:03:15,554.554 INFO    ] Launching Daemon at Sat Jun 27 19:03:15 IST 2026
[2026-06-27 19:03:15,565.565 INFO    ] ================================================
[2026-06-27 19:03:15,943.943 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:03:15
[2026-06-27 19:03:16,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:03:16,413.413 INFO    ] Initializing speech engine...
[2026-06-27 19:03:16,418.418 INFO    ] 2026-06-27 19:03:16
[2026-06-27 19:03:16,621.621 INFO    ] 2026-06-27 19:03:16
[2026-06-27 19:03:16,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:03:16,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:03:16,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:03:17,063.063 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:03:17,065.065 INFO    ] time= 27/06/2026 19:03:17
[2026-06-27 19:03:17,066.066 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:03:17,128.128 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:03:17,419.419 INFO    ] No existing commands found in stream
[2026-06-27 19:03:22,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:03:22,429.429 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-27 19:03:26,656.656 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:03:26,657.657 INFO    ] Checking for system updates...
[2026-06-27 19:03:26,679.679 INFO    ] 200
[2026-06-27 19:03:26,680.680 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:03:26,714.714 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:03:26,715.715 INFO    ] No update needed
[2026-06-27 19:03:26,717.717 INFO    ] Checking for camera pi updates...
[2026-06-27 19:03:26,736.736 INFO    ] 200
[2026-06-27 19:03:26,738.738 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:03:26,763.763 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:03:26,903.903 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:03:26,904.904 INFO    ] No camera update needed
[2026-06-27 19:03:26,906.906 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:03:26,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:03:26,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:03:26,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:03:28,952.952 INFO    ] ================================================
[2026-06-27 19:03:28,967.967 INFO    ] Launching Daemon at Sat Jun 27 19:03:28 IST 2026
[2026-06-27 19:03:28,978.978 INFO    ] ================================================
[2026-06-27 19:03:29,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:03:29
[2026-06-27 19:03:29,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:03:29,775.775 INFO    ] Initializing speech engine...
[2026-06-27 19:03:29,789.789 INFO    ] 2026-06-27 19:03:29
[2026-06-27 19:03:29,993.993 INFO    ] 2026-06-27 19:03:29
[2026-06-27 19:03:30,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:03:30,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:03:30,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:03:30,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:03:30,435.435 INFO    ] time= 27/06/2026 19:03:30
[2026-06-27 19:03:30,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:03:30,442.442 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:03:30,508.508 INFO    ] No existing commands found in stream
[2026-06-27 19:03:35,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:03:35,526.526 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-27 19:03:38,822.822 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:03:38,823.823 INFO    ] Checking for system updates...
[2026-06-27 19:03:38,848.848 INFO    ] 200
[2026-06-27 19:03:38,849.849 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:03:38,880.880 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:03:38,881.881 INFO    ] No update needed
[2026-06-27 19:03:38,883.883 INFO    ] Checking for camera pi updates...
[2026-06-27 19:03:38,902.902 INFO    ] 200
[2026-06-27 19:03:38,904.904 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:03:38,931.931 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:03:38,977.977 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:03:38,978.978 INFO    ] No camera update needed
[2026-06-27 19:03:38,979.979 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:03:38,981.981 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:03:38,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:03:38,987.987 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:03:41,026.026 INFO    ] ================================================
[2026-06-27 19:03:41,041.041 INFO    ] Launching Daemon at Sat Jun 27 19:03:41 IST 2026
[2026-06-27 19:03:41,052.052 INFO    ] ================================================
[2026-06-27 19:03:41,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:03:41
[2026-06-27 19:03:41,763.763 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:03:41,894.894 INFO    ] Initializing speech engine...
[2026-06-27 19:03:41,898.898 INFO    ] 2026-06-27 19:03:41
[2026-06-27 19:03:42,118.118 INFO    ] 2026-06-27 19:03:42
[2026-06-27 19:03:42,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:03:42,335.335 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:03:42,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:03:42,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:03:42,554.554 INFO    ] time= 27/06/2026 19:03:42
[2026-06-27 19:03:42,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:03:42,582.582 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:03:42,685.685 INFO    ] No existing commands found in stream
[2026-06-27 19:03:47,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:03:47,697.697 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-27 19:03:52,075.075 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 19:03:52,077.077 INFO    ] Checking for system updates...
[2026-06-27 19:03:52,098.098 INFO    ] 200
[2026-06-27 19:03:52,099.099 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:03:52,130.130 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:03:52,132.132 INFO    ] No update needed
[2026-06-27 19:03:52,133.133 INFO    ] Checking for camera pi updates...
[2026-06-27 19:03:52,153.153 INFO    ] 200
[2026-06-27 19:03:52,154.154 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:03:52,178.178 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:03:52,223.223 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:03:52,225.225 INFO    ] No camera update needed
[2026-06-27 19:03:52,226.226 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:03:52,228.228 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:03:52,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:03:52,234.234 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:03:54,276.276 INFO    ] ================================================
[2026-06-27 19:03:54,291.291 INFO    ] Launching Daemon at Sat Jun 27 19:03:54 IST 2026
[2026-06-27 19:03:54,301.301 INFO    ] ================================================
[2026-06-27 19:03:54,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:03:54
[2026-06-27 19:03:54,960.960 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:03:55,103.103 INFO    ] Initializing speech engine...
[2026-06-27 19:03:55,108.108 INFO    ] 2026-06-27 19:03:55
[2026-06-27 19:03:55,314.314 INFO    ] 2026-06-27 19:03:55
[2026-06-27 19:03:55,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:03:55,530.530 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:03:55,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:03:55,691.691 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:03:55,741.741 INFO    ] time= 27/06/2026 19:03:55
[2026-06-27 19:03:55,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:03:55,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:03:55,859.859 INFO    ] No existing commands found in stream
[2026-06-27 19:04:00,878.878 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:04:00,881.881 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-27 19:04:02,331.331 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:04:02,333.333 INFO    ] Checking for system updates...
[2026-06-27 19:04:02,361.361 INFO    ] 200
[2026-06-27 19:04:02,363.363 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:04:02,408.408 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:04:02,410.410 INFO    ] No update needed
[2026-06-27 19:04:02,414.414 INFO    ] Checking for camera pi updates...
[2026-06-27 19:04:02,450.450 INFO    ] 200
[2026-06-27 19:04:02,452.452 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:04:02,487.487 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:04:02,518.518 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:04:02,521.521 INFO    ] No camera update needed
[2026-06-27 19:04:02,523.523 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:04:02,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:04:02,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:04:02,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:04:04,572.572 INFO    ] ================================================
[2026-06-27 19:04:04,588.588 INFO    ] Launching Daemon at Sat Jun 27 19:04:04 IST 2026
[2026-06-27 19:04:04,600.600 INFO    ] ================================================
[2026-06-27 19:04:04,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:04:04
[2026-06-27 19:04:05,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:04:05,384.384 INFO    ] Initializing speech engine...
[2026-06-27 19:04:05,397.397 INFO    ] 2026-06-27 19:04:05
[2026-06-27 19:04:05,606.606 INFO    ] 2026-06-27 19:04:05
[2026-06-27 19:04:05,635.635 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:04:05,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:04:05,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:04:06,019.019 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:04:06,055.055 INFO    ] time= 27/06/2026 19:04:06
[2026-06-27 19:04:06,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:04:06,063.063 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:04:06,161.161 INFO    ] No existing commands found in stream
[2026-06-27 19:04:11,174.174 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:04:11,177.177 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-27 19:04:13,526.526 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:04:13,528.528 INFO    ] Checking for system updates...
[2026-06-27 19:04:13,549.549 INFO    ] 200
[2026-06-27 19:04:13,550.550 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:04:13,580.580 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:04:13,582.582 INFO    ] No update needed
[2026-06-27 19:04:13,583.583 INFO    ] Checking for camera pi updates...
[2026-06-27 19:04:13,603.603 INFO    ] 200
[2026-06-27 19:04:13,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:04:13,628.628 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:04:13,674.674 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:04:13,676.676 INFO    ] No camera update needed
[2026-06-27 19:04:13,677.677 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:04:13,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:04:13,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:04:13,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:04:15,724.724 INFO    ] ================================================
[2026-06-27 19:04:15,740.740 INFO    ] Launching Daemon at Sat Jun 27 19:04:15 IST 2026
[2026-06-27 19:04:15,750.750 INFO    ] ================================================
[2026-06-27 19:04:16,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:04:16
[2026-06-27 19:04:16,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:04:16,527.527 INFO    ] Initializing speech engine...
[2026-06-27 19:04:16,531.531 INFO    ] 2026-06-27 19:04:16
[2026-06-27 19:04:16,747.747 INFO    ] 2026-06-27 19:04:16
[2026-06-27 19:04:16,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:04:16,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:04:16,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:04:17,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:04:17,186.186 INFO    ] time= 27/06/2026 19:04:17
[2026-06-27 19:04:17,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:04:17,192.192 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:04:17,282.282 INFO    ] No existing commands found in stream
[2026-06-27 19:04:22,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:04:22,294.294 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-27 19:04:22,972.972 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 19:04:22,973.973 INFO    ] Checking for system updates...
[2026-06-27 19:04:22,995.995 INFO    ] 200
[2026-06-27 19:04:22,997.997 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:04:23,027.027 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:04:23,028.028 INFO    ] No update needed
[2026-06-27 19:04:23,030.030 INFO    ] Checking for camera pi updates...
[2026-06-27 19:04:23,049.049 INFO    ] 200
[2026-06-27 19:04:23,050.050 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:04:23,074.074 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:04:23,111.111 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:04:23,112.112 INFO    ] No camera update needed
[2026-06-27 19:04:23,114.114 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:04:23,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:04:23,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:04:23,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:04:25,159.159 INFO    ] ================================================
[2026-06-27 19:04:25,175.175 INFO    ] Launching Daemon at Sat Jun 27 19:04:25 IST 2026
[2026-06-27 19:04:25,186.186 INFO    ] ================================================
[2026-06-27 19:04:25,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:04:25
[2026-06-27 19:04:25,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:04:25,968.968 INFO    ] Initializing speech engine...
[2026-06-27 19:04:25,972.972 INFO    ] 2026-06-27 19:04:25
[2026-06-27 19:04:26,188.188 INFO    ] 2026-06-27 19:04:26
[2026-06-27 19:04:26,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:04:26,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:04:26,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:04:26,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:04:26,628.628 INFO    ] time= 27/06/2026 19:04:26
[2026-06-27 19:04:26,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:04:26,636.636 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:04:26,703.703 INFO    ] No existing commands found in stream
[2026-06-27 19:04:31,727.727 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:04:31,730.730 INFO    ] Waiting 2.66 seconds before fallback handling...
[2026-06-27 19:04:34,833.833 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 19:04:34,835.835 INFO    ] Checking for system updates...
[2026-06-27 19:04:34,855.855 INFO    ] 200
[2026-06-27 19:04:34,857.857 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:04:34,887.887 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:04:34,889.889 INFO    ] No update needed
[2026-06-27 19:04:34,890.890 INFO    ] Checking for camera pi updates...
[2026-06-27 19:04:34,911.911 INFO    ] 200
[2026-06-27 19:04:34,912.912 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:04:34,936.936 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:04:34,963.963 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:04:34,964.964 INFO    ] No camera update needed
[2026-06-27 19:04:34,966.966 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:04:34,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:04:34,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:04:34,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:04:37,013.013 INFO    ] ================================================
[2026-06-27 19:04:37,028.028 INFO    ] Launching Daemon at Sat Jun 27 19:04:37 IST 2026
[2026-06-27 19:04:37,039.039 INFO    ] ================================================
[2026-06-27 19:04:37,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:04:37
[2026-06-27 19:04:37,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:04:37,925.925 INFO    ] Initializing speech engine...
[2026-06-27 19:04:37,928.928 INFO    ] 2026-06-27 19:04:37
[2026-06-27 19:04:38,137.137 INFO    ] 2026-06-27 19:04:38
[2026-06-27 19:04:38,167.167 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:04:38,353.353 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:04:38,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:04:38,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:04:38,599.599 INFO    ] time= 27/06/2026 19:04:38
[2026-06-27 19:04:38,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:04:38,612.612 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:04:38,707.707 INFO    ] No existing commands found in stream
[2026-06-27 19:04:43,721.721 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:04:43,725.725 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-27 19:04:45,775.775 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:04:45,778.778 INFO    ] Checking for system updates...
[2026-06-27 19:04:45,824.824 INFO    ] 200
[2026-06-27 19:04:45,828.828 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:04:45,877.877 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:04:45,878.878 INFO    ] No update needed
[2026-06-27 19:04:45,880.880 INFO    ] Checking for camera pi updates...
[2026-06-27 19:04:45,900.900 INFO    ] 200
[2026-06-27 19:04:45,901.901 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:04:45,926.926 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:04:45,975.975 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:04:45,977.977 INFO    ] No camera update needed
[2026-06-27 19:04:45,978.978 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:04:45,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:04:45,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:04:45,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:04:48,026.026 INFO    ] ================================================
[2026-06-27 19:04:48,042.042 INFO    ] Launching Daemon at Sat Jun 27 19:04:48 IST 2026
[2026-06-27 19:04:48,053.053 INFO    ] ================================================
[2026-06-27 19:04:48,391.391 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:04:48
[2026-06-27 19:04:48,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:04:48,839.839 INFO    ] Initializing speech engine...
[2026-06-27 19:04:48,847.847 INFO    ] 2026-06-27 19:04:48
[2026-06-27 19:04:49,060.060 INFO    ] 2026-06-27 19:04:49
[2026-06-27 19:04:49,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:04:49,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:04:49,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:04:49,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:04:49,504.504 INFO    ] time= 27/06/2026 19:04:49
[2026-06-27 19:04:49,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:04:49,511.511 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:04:49,578.578 INFO    ] No existing commands found in stream
[2026-06-27 19:04:54,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:04:54,595.595 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-27 19:04:57,335.335 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:04:57,336.336 INFO    ] Checking for system updates...
[2026-06-27 19:04:57,357.357 INFO    ] 200
[2026-06-27 19:04:57,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:04:57,389.389 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:04:57,390.390 INFO    ] No update needed
[2026-06-27 19:04:57,391.391 INFO    ] Checking for camera pi updates...
[2026-06-27 19:04:57,411.411 INFO    ] 200
[2026-06-27 19:04:57,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:04:57,437.437 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:04:57,485.485 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:04:57,486.486 INFO    ] No camera update needed
[2026-06-27 19:04:57,488.488 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:04:57,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:04:57,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:04:57,495.495 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:04:59,534.534 INFO    ] ================================================
[2026-06-27 19:04:59,549.549 INFO    ] Launching Daemon at Sat Jun 27 19:04:59 IST 2026
[2026-06-27 19:04:59,560.560 INFO    ] ================================================
[2026-06-27 19:04:59,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:04:59
[2026-06-27 19:05:00,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:05:00,364.364 INFO    ] Initializing speech engine...
[2026-06-27 19:05:00,374.374 INFO    ] 2026-06-27 19:05:00
[2026-06-27 19:05:00,579.579 INFO    ] 2026-06-27 19:05:00
[2026-06-27 19:05:00,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:05:00,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:05:00,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:05:00,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:05:01,018.018 INFO    ] time= 27/06/2026 19:05:00
[2026-06-27 19:05:01,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:05:01,061.061 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:05:01,164.164 INFO    ] No existing commands found in stream
[2026-06-27 19:05:06,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:05:06,177.177 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-27 19:05:07,035.035 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:05:07,036.036 INFO    ] Checking for system updates...
[2026-06-27 19:05:07,059.059 INFO    ] 200
[2026-06-27 19:05:07,060.060 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:05:07,091.091 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:05:07,093.093 INFO    ] No update needed
[2026-06-27 19:05:07,094.094 INFO    ] Checking for camera pi updates...
[2026-06-27 19:05:07,115.115 INFO    ] 200
[2026-06-27 19:05:07,116.116 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:05:07,140.140 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:05:07,182.182 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:05:07,184.184 INFO    ] No camera update needed
[2026-06-27 19:05:07,185.185 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:05:07,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:05:07,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:05:07,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:05:09,233.233 INFO    ] ================================================
[2026-06-27 19:05:09,249.249 INFO    ] Launching Daemon at Sat Jun 27 19:05:09 IST 2026
[2026-06-27 19:05:09,260.260 INFO    ] ================================================
[2026-06-27 19:05:09,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:05:09
[2026-06-27 19:05:09,900.900 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:05:10,038.038 INFO    ] Initializing speech engine...
[2026-06-27 19:05:10,047.047 INFO    ] 2026-06-27 19:05:10
[2026-06-27 19:05:10,254.254 INFO    ] 2026-06-27 19:05:10
[2026-06-27 19:05:10,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:05:10,422.422 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:05:10,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:05:10,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:05:10,660.660 INFO    ] time= 27/06/2026 19:05:10
[2026-06-27 19:05:10,689.689 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:05:10,699.699 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:05:10,770.770 INFO    ] No existing commands found in stream
[2026-06-27 19:05:15,779.779 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:05:15,781.781 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-27 19:05:17,018.018 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 19:05:17,019.019 INFO    ] Checking for system updates...
[2026-06-27 19:05:17,041.041 INFO    ] 200
[2026-06-27 19:05:17,042.042 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:05:17,075.075 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:05:17,076.076 INFO    ] No update needed
[2026-06-27 19:05:17,078.078 INFO    ] Checking for camera pi updates...
[2026-06-27 19:05:17,098.098 INFO    ] 200
[2026-06-27 19:05:17,100.100 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:05:17,125.125 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:05:17,166.166 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:05:17,167.167 INFO    ] No camera update needed
[2026-06-27 19:05:17,168.168 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:05:17,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:05:17,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:05:17,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:05:19,215.215 INFO    ] ================================================
[2026-06-27 19:05:19,231.231 INFO    ] Launching Daemon at Sat Jun 27 19:05:19 IST 2026
[2026-06-27 19:05:19,242.242 INFO    ] ================================================
[2026-06-27 19:05:19,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:05:19
[2026-06-27 19:05:19,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:05:20,062.062 INFO    ] Initializing speech engine...
[2026-06-27 19:05:20,067.067 INFO    ] 2026-06-27 19:05:20
[2026-06-27 19:05:20,276.276 INFO    ] 2026-06-27 19:05:20
[2026-06-27 19:05:20,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:05:20,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:05:20,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:05:20,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:05:20,701.701 INFO    ] time= 27/06/2026 19:05:20
[2026-06-27 19:05:20,725.725 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:05:20,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:05:20,823.823 INFO    ] No existing commands found in stream
[2026-06-27 19:05:25,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:05:25,834.834 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-27 19:05:27,501.501 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:05:27,503.503 INFO    ] Checking for system updates...
[2026-06-27 19:05:27,523.523 INFO    ] 200
[2026-06-27 19:05:27,525.525 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:05:27,555.555 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:05:27,556.556 INFO    ] No update needed
[2026-06-27 19:05:27,558.558 INFO    ] Checking for camera pi updates...
[2026-06-27 19:05:27,579.579 INFO    ] 200
[2026-06-27 19:05:27,581.581 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:05:27,604.604 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:05:27,651.651 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:05:27,652.652 INFO    ] No camera update needed
[2026-06-27 19:05:27,653.653 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:05:27,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:05:27,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:05:27,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:05:29,702.702 INFO    ] ================================================
[2026-06-27 19:05:29,718.718 INFO    ] Launching Daemon at Sat Jun 27 19:05:29 IST 2026
[2026-06-27 19:05:29,729.729 INFO    ] ================================================
[2026-06-27 19:05:30,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:05:30
[2026-06-27 19:05:30,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:05:30,511.511 INFO    ] Initializing speech engine...
[2026-06-27 19:05:30,521.521 INFO    ] 2026-06-27 19:05:30
[2026-06-27 19:05:30,725.725 INFO    ] 2026-06-27 19:05:30
[2026-06-27 19:05:30,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:05:30,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:05:30,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:05:31,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:05:31,167.167 INFO    ] time= 27/06/2026 19:05:31
[2026-06-27 19:05:31,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:05:31,171.171 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:05:31,238.238 INFO    ] No existing commands found in stream
[2026-06-27 19:05:36,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:05:36,255.255 INFO    ] Waiting 0.18 seconds before fallback handling...
[2026-06-27 19:05:37,021.021 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 19:05:37,023.023 INFO    ] Checking for system updates...
[2026-06-27 19:05:37,045.045 INFO    ] 200
[2026-06-27 19:05:37,046.046 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:05:37,079.079 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:05:37,081.081 INFO    ] No update needed
[2026-06-27 19:05:37,082.082 INFO    ] Checking for camera pi updates...
[2026-06-27 19:05:37,104.104 INFO    ] 200
[2026-06-27 19:05:37,105.105 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:05:37,129.129 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:05:37,171.171 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:05:37,173.173 INFO    ] No camera update needed
[2026-06-27 19:05:37,175.175 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:05:37,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:05:37,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:05:37,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:05:39,221.221 INFO    ] ================================================
[2026-06-27 19:05:39,236.236 INFO    ] Launching Daemon at Sat Jun 27 19:05:39 IST 2026
[2026-06-27 19:05:39,247.247 INFO    ] ================================================
[2026-06-27 19:05:39,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:05:39
[2026-06-27 19:05:39,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:05:40,128.128 INFO    ] Initializing speech engine...
[2026-06-27 19:05:40,132.132 INFO    ] 2026-06-27 19:05:40
[2026-06-27 19:05:40,347.347 INFO    ] 2026-06-27 19:05:40
[2026-06-27 19:05:40,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:05:40,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:05:40,571.571 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:05:40,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:05:40,787.787 INFO    ] time= 27/06/2026 19:05:40
[2026-06-27 19:05:40,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:05:40,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:05:40,865.865 INFO    ] No existing commands found in stream
[2026-06-27 19:05:45,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:05:45,888.888 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-27 19:05:46,655.655 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 19:05:46,656.656 INFO    ] Checking for system updates...
[2026-06-27 19:05:46,678.678 INFO    ] 200
[2026-06-27 19:05:46,679.679 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:05:46,709.709 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:05:46,711.711 INFO    ] No update needed
[2026-06-27 19:05:46,712.712 INFO    ] Checking for camera pi updates...
[2026-06-27 19:05:46,732.732 INFO    ] 200
[2026-06-27 19:05:46,733.733 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:05:46,758.758 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:05:46,811.811 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:05:46,812.812 INFO    ] No camera update needed
[2026-06-27 19:05:46,814.814 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:05:46,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:05:46,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:05:46,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:05:48,860.860 INFO    ] ================================================
[2026-06-27 19:05:48,876.876 INFO    ] Launching Daemon at Sat Jun 27 19:05:48 IST 2026
[2026-06-27 19:05:48,888.888 INFO    ] ================================================
[2026-06-27 19:05:49,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:05:49
[2026-06-27 19:05:49,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:05:49,768.768 INFO    ] Initializing speech engine...
[2026-06-27 19:05:49,776.776 INFO    ] 2026-06-27 19:05:49
[2026-06-27 19:05:50,001.001 INFO    ] 2026-06-27 19:05:49
[2026-06-27 19:05:50,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:05:50,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:05:50,230.230 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:05:50,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:05:50,429.429 INFO    ] time= 27/06/2026 19:05:50
[2026-06-27 19:05:50,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:05:50,469.469 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:05:50,536.536 INFO    ] No existing commands found in stream
[2026-06-27 19:05:55,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:05:55,545.545 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-27 19:05:56,852.852 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 19:05:56,853.853 INFO    ] Checking for system updates...
[2026-06-27 19:05:56,876.876 INFO    ] 200
[2026-06-27 19:05:56,877.877 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:05:56,909.909 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:05:56,911.911 INFO    ] No update needed
[2026-06-27 19:05:56,912.912 INFO    ] Checking for camera pi updates...
[2026-06-27 19:05:56,932.932 INFO    ] 200
[2026-06-27 19:05:56,934.934 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:05:56,958.958 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:05:57,051.051 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:05:57,053.053 INFO    ] No camera update needed
[2026-06-27 19:05:57,055.055 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:05:57,056.056 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:05:57,059.059 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:05:57,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:05:59,096.096 INFO    ] ================================================
[2026-06-27 19:05:59,111.111 INFO    ] Launching Daemon at Sat Jun 27 19:05:59 IST 2026
[2026-06-27 19:05:59,122.122 INFO    ] ================================================
[2026-06-27 19:05:59,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:05:59
[2026-06-27 19:05:59,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:05:59,910.910 INFO    ] Initializing speech engine...
[2026-06-27 19:05:59,922.922 INFO    ] 2026-06-27 19:05:59
[2026-06-27 19:06:00,127.127 INFO    ] 2026-06-27 19:06:00
[2026-06-27 19:06:00,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:06:00,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:06:00,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:06:00,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:06:00,565.565 INFO    ] time= 27/06/2026 19:06:00
[2026-06-27 19:06:00,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:06:00,572.572 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:06:00,663.663 INFO    ] No existing commands found in stream
[2026-06-27 19:06:05,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:06:05,679.679 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-27 19:06:06,506.506 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:06:06,507.507 INFO    ] Checking for system updates...
[2026-06-27 19:06:06,530.530 INFO    ] 200
[2026-06-27 19:06:06,532.532 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:06:06,568.568 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:06:06,569.569 INFO    ] No update needed
[2026-06-27 19:06:06,571.571 INFO    ] Checking for camera pi updates...
[2026-06-27 19:06:06,594.594 INFO    ] 200
[2026-06-27 19:06:06,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:06:06,622.622 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:06:06,665.665 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:06:06,667.667 INFO    ] No camera update needed
[2026-06-27 19:06:06,668.668 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:06:06,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:06:06,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:06:06,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:06:08,716.716 INFO    ] ================================================
[2026-06-27 19:06:08,731.731 INFO    ] Launching Daemon at Sat Jun 27 19:06:08 IST 2026
[2026-06-27 19:06:08,742.742 INFO    ] ================================================
[2026-06-27 19:06:09,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:06:09
[2026-06-27 19:06:09,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:06:09,555.555 INFO    ] Initializing speech engine...
[2026-06-27 19:06:09,560.560 INFO    ] 2026-06-27 19:06:09
[2026-06-27 19:06:09,764.764 INFO    ] 2026-06-27 19:06:09
[2026-06-27 19:06:09,791.791 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:06:09,982.982 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:06:09,987.987 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:06:10,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:06:10,202.202 INFO    ] time= 27/06/2026 19:06:10
[2026-06-27 19:06:10,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:06:10,209.209 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:06:10,325.325 INFO    ] No existing commands found in stream
[2026-06-27 19:06:15,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:06:15,337.337 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-27 19:06:18,562.562 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 19:06:18,564.564 INFO    ] Checking for system updates...
[2026-06-27 19:06:18,585.585 INFO    ] 200
[2026-06-27 19:06:18,587.587 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:06:18,617.617 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:06:18,619.619 INFO    ] No update needed
[2026-06-27 19:06:18,621.621 INFO    ] Checking for camera pi updates...
[2026-06-27 19:06:18,641.641 INFO    ] 200
[2026-06-27 19:06:18,643.643 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:06:18,667.667 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:06:18,708.708 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:06:18,709.709 INFO    ] No camera update needed
[2026-06-27 19:06:18,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:06:18,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:06:18,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:06:18,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:06:20,760.760 INFO    ] ================================================
[2026-06-27 19:06:20,775.775 INFO    ] Launching Daemon at Sat Jun 27 19:06:20 IST 2026
[2026-06-27 19:06:20,786.786 INFO    ] ================================================
[2026-06-27 19:06:21,118.118 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:06:21
[2026-06-27 19:06:21,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:06:21,609.609 INFO    ] Initializing speech engine...
[2026-06-27 19:06:21,615.615 INFO    ] 2026-06-27 19:06:21
[2026-06-27 19:06:21,827.827 INFO    ] 2026-06-27 19:06:21
[2026-06-27 19:06:21,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:06:22,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:06:22,056.056 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:06:22,155.155 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:06:22,157.157 INFO    ] time= 27/06/2026 19:06:22
[2026-06-27 19:06:22,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:06:22,160.160 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:06:22,225.225 INFO    ] No existing commands found in stream
[2026-06-27 19:06:27,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:06:27,238.238 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-27 19:06:29,506.506 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 19:06:29,507.507 INFO    ] Checking for system updates...
[2026-06-27 19:06:29,529.529 INFO    ] 200
[2026-06-27 19:06:29,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:06:29,561.561 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:06:29,563.563 INFO    ] No update needed
[2026-06-27 19:06:29,564.564 INFO    ] Checking for camera pi updates...
[2026-06-27 19:06:29,584.584 INFO    ] 200
[2026-06-27 19:06:29,586.586 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:06:29,610.610 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:06:29,655.655 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:06:29,656.656 INFO    ] No camera update needed
[2026-06-27 19:06:29,658.658 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:06:29,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:06:29,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:06:29,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:06:31,700.700 INFO    ] ================================================
[2026-06-27 19:06:31,710.710 INFO    ] Launching Daemon at Sat Jun 27 19:06:31 IST 2026
[2026-06-27 19:06:31,717.717 INFO    ] ================================================
[2026-06-27 19:06:32,093.093 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:06:32
[2026-06-27 19:06:32,415.415 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:06:32,551.551 INFO    ] Initializing speech engine...
[2026-06-27 19:06:32,555.555 INFO    ] 2026-06-27 19:06:32
[2026-06-27 19:06:32,751.751 INFO    ] 2026-06-27 19:06:32
[2026-06-27 19:06:32,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:06:32,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:06:33,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:06:33,181.181 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:06:33,240.240 INFO    ] time= 27/06/2026 19:06:33
[2026-06-27 19:06:33,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:06:33,287.287 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:06:33,366.366 INFO    ] No existing commands found in stream
[2026-06-27 19:06:38,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:06:38,378.378 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-27 19:06:41,747.747 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:06:41,748.748 INFO    ] Checking for system updates...
[2026-06-27 19:06:41,771.771 INFO    ] 200
[2026-06-27 19:06:41,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:06:41,804.804 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:06:41,805.805 INFO    ] No update needed
[2026-06-27 19:06:41,807.807 INFO    ] Checking for camera pi updates...
[2026-06-27 19:06:41,828.828 INFO    ] 200
[2026-06-27 19:06:41,829.829 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:06:41,852.852 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:06:41,898.898 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:06:41,900.900 INFO    ] No camera update needed
[2026-06-27 19:06:41,901.901 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:06:41,902.902 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:06:41,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:06:41,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:06:43,947.947 INFO    ] ================================================
[2026-06-27 19:06:43,962.962 INFO    ] Launching Daemon at Sat Jun 27 19:06:43 IST 2026
[2026-06-27 19:06:43,974.974 INFO    ] ================================================
[2026-06-27 19:06:44,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:06:44
[2026-06-27 19:06:44,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:06:44,861.861 INFO    ] Initializing speech engine...
[2026-06-27 19:06:44,867.867 INFO    ] 2026-06-27 19:06:44
[2026-06-27 19:06:45,077.077 INFO    ] 2026-06-27 19:06:45
[2026-06-27 19:06:45,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:06:45,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:06:45,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:06:45,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:06:45,506.506 INFO    ] time= 27/06/2026 19:06:45
[2026-06-27 19:06:45,530.530 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:06:45,536.536 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:06:45,604.604 INFO    ] No existing commands found in stream
[2026-06-27 19:06:50,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:06:50,616.616 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-27 19:06:53,653.653 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:06:53,655.655 INFO    ] Checking for system updates...
[2026-06-27 19:06:53,676.676 INFO    ] 200
[2026-06-27 19:06:53,678.678 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:06:53,709.709 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:06:53,711.711 INFO    ] No update needed
[2026-06-27 19:06:53,712.712 INFO    ] Checking for camera pi updates...
[2026-06-27 19:06:53,735.735 INFO    ] 200
[2026-06-27 19:06:53,736.736 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:06:53,760.760 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:06:53,798.798 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:06:53,799.799 INFO    ] No camera update needed
[2026-06-27 19:06:53,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:06:53,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:06:53,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:06:53,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:06:55,850.850 INFO    ] ================================================
[2026-06-27 19:06:55,866.866 INFO    ] Launching Daemon at Sat Jun 27 19:06:55 IST 2026
[2026-06-27 19:06:55,877.877 INFO    ] ================================================
[2026-06-27 19:06:56,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:06:56
[2026-06-27 19:06:56,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:06:56,688.688 INFO    ] Initializing speech engine...
[2026-06-27 19:06:56,692.692 INFO    ] 2026-06-27 19:06:56
[2026-06-27 19:06:56,884.884 INFO    ] 2026-06-27 19:06:56
[2026-06-27 19:06:56,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:06:57,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:06:57,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:06:57,304.304 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:06:57,342.342 INFO    ] time= 27/06/2026 19:06:57
[2026-06-27 19:06:57,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:06:57,390.390 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:06:57,478.478 INFO    ] No existing commands found in stream
[2026-06-27 19:07:02,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:07:02,486.486 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-27 19:07:03,057.057 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 19:07:03,059.059 INFO    ] Checking for system updates...
[2026-06-27 19:07:03,082.082 INFO    ] 200
[2026-06-27 19:07:03,084.084 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:07:03,167.167 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:07:03,170.170 INFO    ] No update needed
[2026-06-27 19:07:03,172.172 INFO    ] Checking for camera pi updates...
[2026-06-27 19:07:03,206.206 INFO    ] 200
[2026-06-27 19:07:03,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:07:03,239.239 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:07:03,267.267 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:07:03,269.269 INFO    ] No camera update needed
[2026-06-27 19:07:03,270.270 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:07:03,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:07:03,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:07:03,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:07:05,317.317 INFO    ] ================================================
[2026-06-27 19:07:05,332.332 INFO    ] Launching Daemon at Sat Jun 27 19:07:05 IST 2026
[2026-06-27 19:07:05,344.344 INFO    ] ================================================
[2026-06-27 19:07:05,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:07:05
[2026-06-27 19:07:06,101.101 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:07:06,254.254 INFO    ] Initializing speech engine...
[2026-06-27 19:07:06,260.260 INFO    ] 2026-06-27 19:07:06
[2026-06-27 19:07:06,467.467 INFO    ] 2026-06-27 19:07:06
[2026-06-27 19:07:06,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:07:06,682.682 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:07:06,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:07:06,833.833 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:07:06,892.892 INFO    ] time= 27/06/2026 19:07:06
[2026-06-27 19:07:06,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:07:06,921.921 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:07:06,988.988 INFO    ] No existing commands found in stream
[2026-06-27 19:07:12,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:07:12,006.006 INFO    ] Waiting 1.23 seconds before fallback handling...
[2026-06-27 19:07:13,692.692 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 19:07:13,693.693 INFO    ] Checking for system updates...
[2026-06-27 19:07:13,715.715 INFO    ] 200
[2026-06-27 19:07:13,716.716 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:07:13,748.748 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:07:13,749.749 INFO    ] No update needed
[2026-06-27 19:07:13,750.750 INFO    ] Checking for camera pi updates...
[2026-06-27 19:07:13,771.771 INFO    ] 200
[2026-06-27 19:07:13,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:07:13,800.800 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:07:13,846.846 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:07:13,847.847 INFO    ] No camera update needed
[2026-06-27 19:07:13,849.849 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:07:13,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:07:13,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:07:13,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:07:15,897.897 INFO    ] ================================================
[2026-06-27 19:07:15,912.912 INFO    ] Launching Daemon at Sat Jun 27 19:07:15 IST 2026
[2026-06-27 19:07:15,924.924 INFO    ] ================================================
[2026-06-27 19:07:16,309.309 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:07:16
[2026-06-27 19:07:16,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:07:16,801.801 INFO    ] Initializing speech engine...
[2026-06-27 19:07:16,808.808 INFO    ] 2026-06-27 19:07:16
[2026-06-27 19:07:17,014.014 INFO    ] 2026-06-27 19:07:16
[2026-06-27 19:07:17,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:07:17,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:07:17,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:07:17,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:07:17,457.457 INFO    ] time= 27/06/2026 19:07:17
[2026-06-27 19:07:17,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:07:17,461.461 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:07:17,552.552 INFO    ] No existing commands found in stream
[2026-06-27 19:07:22,577.577 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:07:22,580.580 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-27 19:07:24,815.815 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 19:07:24,817.817 INFO    ] Checking for system updates...
[2026-06-27 19:07:24,838.838 INFO    ] 200
[2026-06-27 19:07:24,839.839 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:07:24,870.870 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:07:24,872.872 INFO    ] No update needed
[2026-06-27 19:07:24,873.873 INFO    ] Checking for camera pi updates...
[2026-06-27 19:07:24,893.893 INFO    ] 200
[2026-06-27 19:07:24,895.895 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:07:24,920.920 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:07:24,961.961 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:07:24,962.962 INFO    ] No camera update needed
[2026-06-27 19:07:24,963.963 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:07:24,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:07:24,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:07:24,970.970 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:07:27,010.010 INFO    ] ================================================
[2026-06-27 19:07:27,028.028 INFO    ] Launching Daemon at Sat Jun 27 19:07:27 IST 2026
[2026-06-27 19:07:27,039.039 INFO    ] ================================================
[2026-06-27 19:07:27,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:07:27
[2026-06-27 19:07:27,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:07:27,827.827 INFO    ] Initializing speech engine...
[2026-06-27 19:07:27,831.831 INFO    ] 2026-06-27 19:07:27
[2026-06-27 19:07:28,027.027 INFO    ] 2026-06-27 19:07:28
[2026-06-27 19:07:28,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:07:28,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:07:28,296.296 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:07:28,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:07:28,501.501 INFO    ] time= 27/06/2026 19:07:28
[2026-06-27 19:07:28,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:07:28,532.532 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:07:28,599.599 INFO    ] No existing commands found in stream
[2026-06-27 19:07:33,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:07:33,611.611 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-27 19:07:34,250.250 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:07:34,251.251 INFO    ] Checking for system updates...
[2026-06-27 19:07:34,274.274 INFO    ] 200
[2026-06-27 19:07:34,275.275 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:07:34,308.308 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:07:34,310.310 INFO    ] No update needed
[2026-06-27 19:07:34,311.311 INFO    ] Checking for camera pi updates...
[2026-06-27 19:07:34,330.330 INFO    ] 200
[2026-06-27 19:07:34,332.332 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:07:34,355.355 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:07:34,387.387 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:07:34,388.388 INFO    ] No camera update needed
[2026-06-27 19:07:34,389.389 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:07:34,391.391 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:07:34,394.394 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:07:34,397.397 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:07:36,436.436 INFO    ] ================================================
[2026-06-27 19:07:36,453.453 INFO    ] Launching Daemon at Sat Jun 27 19:07:36 IST 2026
[2026-06-27 19:07:36,464.464 INFO    ] ================================================
[2026-06-27 19:07:36,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:07:36
[2026-06-27 19:07:37,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:07:37,319.319 INFO    ] Initializing speech engine...
[2026-06-27 19:07:37,322.322 INFO    ] 2026-06-27 19:07:37
[2026-06-27 19:07:37,532.532 INFO    ] 2026-06-27 19:07:37
[2026-06-27 19:07:37,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:07:37,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:07:37,746.746 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:07:37,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:07:37,951.951 INFO    ] time= 27/06/2026 19:07:37
[2026-06-27 19:07:37,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:07:37,982.982 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:07:38,048.048 INFO    ] No existing commands found in stream
[2026-06-27 19:07:43,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:07:43,061.061 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-27 19:07:44,458.458 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:07:44,459.459 INFO    ] Checking for system updates...
[2026-06-27 19:07:44,481.481 INFO    ] 200
[2026-06-27 19:07:44,482.482 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:07:44,515.515 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:07:44,516.516 INFO    ] No update needed
[2026-06-27 19:07:44,518.518 INFO    ] Checking for camera pi updates...
[2026-06-27 19:07:44,537.537 INFO    ] 200
[2026-06-27 19:07:44,539.539 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:07:44,566.566 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:07:44,608.608 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:07:44,610.610 INFO    ] No camera update needed
[2026-06-27 19:07:44,611.611 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:07:44,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:07:44,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:07:44,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:07:46,656.656 INFO    ] ================================================
[2026-06-27 19:07:46,672.672 INFO    ] Launching Daemon at Sat Jun 27 19:07:46 IST 2026
[2026-06-27 19:07:46,684.684 INFO    ] ================================================
[2026-06-27 19:07:47,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:07:47
[2026-06-27 19:07:47,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:07:47,486.486 INFO    ] Initializing speech engine...
[2026-06-27 19:07:47,490.490 INFO    ] 2026-06-27 19:07:47
[2026-06-27 19:07:47,697.697 INFO    ] 2026-06-27 19:07:47
[2026-06-27 19:07:47,727.727 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:07:47,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:07:47,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:07:48,119.119 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:07:48,143.143 INFO    ] time= 27/06/2026 19:07:48
[2026-06-27 19:07:48,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:07:48,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:07:48,241.241 INFO    ] No existing commands found in stream
[2026-06-27 19:07:53,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:07:53,260.260 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-27 19:07:55,037.037 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:07:55,038.038 INFO    ] Checking for system updates...
[2026-06-27 19:07:55,061.061 INFO    ] 200
[2026-06-27 19:07:55,062.062 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:07:55,095.095 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:07:55,097.097 INFO    ] No update needed
[2026-06-27 19:07:55,099.099 INFO    ] Checking for camera pi updates...
[2026-06-27 19:07:55,120.120 INFO    ] 200
[2026-06-27 19:07:55,122.122 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:07:55,148.148 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:07:55,182.182 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:07:55,184.184 INFO    ] No camera update needed
[2026-06-27 19:07:55,185.185 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:07:55,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:07:55,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:07:55,193.193 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:07:57,234.234 INFO    ] ================================================
[2026-06-27 19:07:57,250.250 INFO    ] Launching Daemon at Sat Jun 27 19:07:57 IST 2026
[2026-06-27 19:07:57,261.261 INFO    ] ================================================
[2026-06-27 19:07:57,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:07:57
[2026-06-27 19:07:57,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:07:58,123.123 INFO    ] Initializing speech engine...
[2026-06-27 19:07:58,131.131 INFO    ] 2026-06-27 19:07:58
[2026-06-27 19:07:58,347.347 INFO    ] 2026-06-27 19:07:58
[2026-06-27 19:07:58,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:07:58,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:07:58,566.566 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:07:58,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:07:58,773.773 INFO    ] time= 27/06/2026 19:07:58
[2026-06-27 19:07:58,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:07:58,801.801 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:07:58,868.868 INFO    ] No existing commands found in stream
[2026-06-27 19:08:03,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:08:03,885.885 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-27 19:08:07,559.559 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:08:07,561.561 INFO    ] Checking for system updates...
[2026-06-27 19:08:07,584.584 INFO    ] 200
[2026-06-27 19:08:07,585.585 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:08:07,616.616 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:08:07,618.618 INFO    ] No update needed
[2026-06-27 19:08:07,619.619 INFO    ] Checking for camera pi updates...
[2026-06-27 19:08:07,639.639 INFO    ] 200
[2026-06-27 19:08:07,640.640 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:08:07,664.664 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:08:07,717.717 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:08:07,719.719 INFO    ] No camera update needed
[2026-06-27 19:08:07,720.720 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:08:07,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:08:07,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:08:07,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:08:09,768.768 INFO    ] ================================================
[2026-06-27 19:08:09,783.783 INFO    ] Launching Daemon at Sat Jun 27 19:08:09 IST 2026
[2026-06-27 19:08:09,794.794 INFO    ] ================================================
[2026-06-27 19:08:10,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:08:10
[2026-06-27 19:08:10,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:08:10,675.675 INFO    ] Initializing speech engine...
[2026-06-27 19:08:10,681.681 INFO    ] 2026-06-27 19:08:10
[2026-06-27 19:08:10,896.896 INFO    ] 2026-06-27 19:08:10
[2026-06-27 19:08:10,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:08:11,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:08:11,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:08:11,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:08:11,338.338 INFO    ] time= 27/06/2026 19:08:11
[2026-06-27 19:08:11,340.340 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:08:11,346.346 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:08:11,413.413 INFO    ] No existing commands found in stream
[2026-06-27 19:08:16,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:08:16,440.440 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-27 19:08:20,126.126 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:08:20,128.128 INFO    ] Checking for system updates...
[2026-06-27 19:08:20,149.149 INFO    ] 200
[2026-06-27 19:08:20,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:08:20,184.184 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:08:20,185.185 INFO    ] No update needed
[2026-06-27 19:08:20,186.186 INFO    ] Checking for camera pi updates...
[2026-06-27 19:08:20,207.207 INFO    ] 200
[2026-06-27 19:08:20,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:08:20,234.234 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:08:20,275.275 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:08:20,276.276 INFO    ] No camera update needed
[2026-06-27 19:08:20,277.277 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:08:20,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:08:20,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:08:20,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:08:22,324.324 INFO    ] ================================================
[2026-06-27 19:08:22,340.340 INFO    ] Launching Daemon at Sat Jun 27 19:08:22 IST 2026
[2026-06-27 19:08:22,351.351 INFO    ] ================================================
[2026-06-27 19:08:22,698.698 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:08:22
[2026-06-27 19:08:23,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:08:23,159.159 INFO    ] Initializing speech engine...
[2026-06-27 19:08:23,165.165 INFO    ] 2026-06-27 19:08:23
[2026-06-27 19:08:23,370.370 INFO    ] 2026-06-27 19:08:23
[2026-06-27 19:08:23,399.399 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:08:23,586.586 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:08:23,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:08:23,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:08:23,799.799 INFO    ] time= 27/06/2026 19:08:23
[2026-06-27 19:08:23,815.815 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:08:23,821.821 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:08:23,888.888 INFO    ] No existing commands found in stream
[2026-06-27 19:08:28,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:08:28,905.905 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-27 19:08:32,747.747 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 19:08:32,748.748 INFO    ] Checking for system updates...
[2026-06-27 19:08:32,770.770 INFO    ] 200
[2026-06-27 19:08:32,771.771 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:08:32,806.806 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:08:32,808.808 INFO    ] No update needed
[2026-06-27 19:08:32,809.809 INFO    ] Checking for camera pi updates...
[2026-06-27 19:08:32,842.842 INFO    ] 200
[2026-06-27 19:08:32,845.845 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:08:32,890.890 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:08:32,923.923 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:08:32,925.925 INFO    ] No camera update needed
[2026-06-27 19:08:32,926.926 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:08:32,927.927 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:08:32,930.930 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:08:32,933.933 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:08:34,973.973 INFO    ] ================================================
[2026-06-27 19:08:34,989.989 INFO    ] Launching Daemon at Sat Jun 27 19:08:34 IST 2026
[2026-06-27 19:08:35,001.001 INFO    ] ================================================
[2026-06-27 19:08:35,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:08:35
[2026-06-27 19:08:35,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:08:35,799.799 INFO    ] Initializing speech engine...
[2026-06-27 19:08:35,802.802 INFO    ] 2026-06-27 19:08:35
[2026-06-27 19:08:36,011.011 INFO    ] 2026-06-27 19:08:35
[2026-06-27 19:08:36,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:08:36,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:08:36,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:08:36,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:08:36,488.488 INFO    ] time= 27/06/2026 19:08:36
[2026-06-27 19:08:36,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:08:36,515.515 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:08:36,592.592 INFO    ] No existing commands found in stream
[2026-06-27 19:08:41,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:08:41,609.609 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-27 19:08:43,149.149 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 19:08:43,151.151 INFO    ] Checking for system updates...
[2026-06-27 19:08:43,173.173 INFO    ] 200
[2026-06-27 19:08:43,175.175 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:08:43,206.206 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:08:43,207.207 INFO    ] No update needed
[2026-06-27 19:08:43,208.208 INFO    ] Checking for camera pi updates...
[2026-06-27 19:08:43,228.228 INFO    ] 200
[2026-06-27 19:08:43,229.229 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:08:43,252.252 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:08:43,302.302 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:08:43,303.303 INFO    ] No camera update needed
[2026-06-27 19:08:43,305.305 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:08:43,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:08:43,309.309 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:08:43,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:08:45,351.351 INFO    ] ================================================
[2026-06-27 19:08:45,367.367 INFO    ] Launching Daemon at Sat Jun 27 19:08:45 IST 2026
[2026-06-27 19:08:45,378.378 INFO    ] ================================================
[2026-06-27 19:08:45,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:08:45
[2026-06-27 19:08:46,018.018 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:08:46,155.155 INFO    ] Initializing speech engine...
[2026-06-27 19:08:46,169.169 INFO    ] 2026-06-27 19:08:46
[2026-06-27 19:08:46,391.391 INFO    ] 2026-06-27 19:08:46
[2026-06-27 19:08:46,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:08:46,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:08:46,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:08:46,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:08:46,824.824 INFO    ] time= 27/06/2026 19:08:46
[2026-06-27 19:08:46,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:08:46,855.855 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:08:46,923.923 INFO    ] No existing commands found in stream
[2026-06-27 19:08:51,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:08:51,933.933 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-27 19:08:54,584.584 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:08:54,586.586 INFO    ] Checking for system updates...
[2026-06-27 19:08:54,608.608 INFO    ] 200
[2026-06-27 19:08:54,610.610 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:08:54,640.640 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:08:54,641.641 INFO    ] No update needed
[2026-06-27 19:08:54,643.643 INFO    ] Checking for camera pi updates...
[2026-06-27 19:08:54,663.663 INFO    ] 200
[2026-06-27 19:08:54,664.664 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:08:54,689.689 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:08:54,728.728 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:08:54,730.730 INFO    ] No camera update needed
[2026-06-27 19:08:54,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:08:54,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:08:54,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:08:54,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:08:56,778.778 INFO    ] ================================================
[2026-06-27 19:08:56,793.793 INFO    ] Launching Daemon at Sat Jun 27 19:08:56 IST 2026
[2026-06-27 19:08:56,805.805 INFO    ] ================================================
[2026-06-27 19:08:57,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:08:57
[2026-06-27 19:08:57,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:08:57,654.654 INFO    ] Initializing speech engine...
[2026-06-27 19:08:57,660.660 INFO    ] 2026-06-27 19:08:57
[2026-06-27 19:08:57,872.872 INFO    ] 2026-06-27 19:08:57
[2026-06-27 19:08:57,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:08:58,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:08:58,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:08:58,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:08:58,300.300 INFO    ] time= 27/06/2026 19:08:58
[2026-06-27 19:08:58,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:08:58,331.331 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:08:58,399.399 INFO    ] No existing commands found in stream
[2026-06-27 19:09:03,414.414 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:09:03,417.417 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-27 19:09:04,607.607 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 19:09:04,609.609 INFO    ] Checking for system updates...
[2026-06-27 19:09:04,630.630 INFO    ] 200
[2026-06-27 19:09:04,631.631 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:09:04,664.664 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:09:04,665.665 INFO    ] No update needed
[2026-06-27 19:09:04,666.666 INFO    ] Checking for camera pi updates...
[2026-06-27 19:09:04,688.688 INFO    ] 200
[2026-06-27 19:09:04,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:09:04,712.712 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:09:04,759.759 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:09:04,760.760 INFO    ] No camera update needed
[2026-06-27 19:09:04,761.761 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:09:04,763.763 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:09:04,767.767 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:09:04,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:09:06,808.808 INFO    ] ================================================
[2026-06-27 19:09:06,825.825 INFO    ] Launching Daemon at Sat Jun 27 19:09:06 IST 2026
[2026-06-27 19:09:06,836.836 INFO    ] ================================================
[2026-06-27 19:09:07,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:09:07
[2026-06-27 19:09:07,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:09:07,644.644 INFO    ] Initializing speech engine...
[2026-06-27 19:09:07,654.654 INFO    ] 2026-06-27 19:09:07
[2026-06-27 19:09:07,859.859 INFO    ] 2026-06-27 19:09:07
[2026-06-27 19:09:07,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:09:08,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:09:08,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:09:08,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:09:08,262.262 INFO    ] time= 27/06/2026 19:09:08
[2026-06-27 19:09:08,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:09:08,306.306 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:09:08,375.375 INFO    ] No existing commands found in stream
[2026-06-27 19:09:13,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:09:13,389.389 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-27 19:09:15,074.074 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 19:09:15,076.076 INFO    ] Checking for system updates...
[2026-06-27 19:09:15,097.097 INFO    ] 200
[2026-06-27 19:09:15,099.099 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:09:15,129.129 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:09:15,131.131 INFO    ] No update needed
[2026-06-27 19:09:15,132.132 INFO    ] Checking for camera pi updates...
[2026-06-27 19:09:15,153.153 INFO    ] 200
[2026-06-27 19:09:15,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:09:15,183.183 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:09:15,234.234 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:09:15,235.235 INFO    ] No camera update needed
[2026-06-27 19:09:15,237.237 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:09:15,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:09:15,242.242 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:09:15,245.245 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:09:17,284.284 INFO    ] ================================================
[2026-06-27 19:09:17,300.300 INFO    ] Launching Daemon at Sat Jun 27 19:09:17 IST 2026
[2026-06-27 19:09:17,311.311 INFO    ] ================================================
[2026-06-27 19:09:17,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:09:17
[2026-06-27 19:09:17,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:09:18,155.155 INFO    ] Initializing speech engine...
[2026-06-27 19:09:18,161.161 INFO    ] 2026-06-27 19:09:18
[2026-06-27 19:09:18,371.371 INFO    ] 2026-06-27 19:09:18
[2026-06-27 19:09:18,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:09:18,588.588 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:09:18,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:09:18,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:09:18,793.793 INFO    ] time= 27/06/2026 19:09:18
[2026-06-27 19:09:18,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:09:18,828.828 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:09:18,896.896 INFO    ] No existing commands found in stream
[2026-06-27 19:09:23,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:09:23,914.914 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-27 19:09:25,385.385 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 19:09:25,387.387 INFO    ] Checking for system updates...
[2026-06-27 19:09:25,409.409 INFO    ] 200
[2026-06-27 19:09:25,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:09:25,445.445 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:09:25,446.446 INFO    ] No update needed
[2026-06-27 19:09:25,448.448 INFO    ] Checking for camera pi updates...
[2026-06-27 19:09:25,467.467 INFO    ] 200
[2026-06-27 19:09:25,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:09:25,493.493 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:09:25,535.535 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:09:25,536.536 INFO    ] No camera update needed
[2026-06-27 19:09:25,538.538 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:09:25,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:09:25,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:09:25,546.546 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:09:27,585.585 INFO    ] ================================================
[2026-06-27 19:09:27,600.600 INFO    ] Launching Daemon at Sat Jun 27 19:09:27 IST 2026
[2026-06-27 19:09:27,611.611 INFO    ] ================================================
[2026-06-27 19:09:27,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:09:27
[2026-06-27 19:09:28,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:09:28,395.395 INFO    ] Initializing speech engine...
[2026-06-27 19:09:28,399.399 INFO    ] 2026-06-27 19:09:28
[2026-06-27 19:09:28,606.606 INFO    ] 2026-06-27 19:09:28
[2026-06-27 19:09:28,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:09:28,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:09:28,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:09:28,963.963 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:09:29,022.022 INFO    ] time= 27/06/2026 19:09:28
[2026-06-27 19:09:29,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:09:29,061.061 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:09:29,130.130 INFO    ] No existing commands found in stream
[2026-06-27 19:09:34,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:09:34,147.147 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-27 19:09:37,097.097 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:09:37,099.099 INFO    ] Checking for system updates...
[2026-06-27 19:09:37,119.119 INFO    ] 200
[2026-06-27 19:09:37,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:09:37,151.151 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:09:37,152.152 INFO    ] No update needed
[2026-06-27 19:09:37,153.153 INFO    ] Checking for camera pi updates...
[2026-06-27 19:09:37,174.174 INFO    ] 200
[2026-06-27 19:09:37,176.176 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:09:37,199.199 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:09:37,342.342 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:09:37,343.343 INFO    ] No camera update needed
[2026-06-27 19:09:37,344.344 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:09:37,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:09:37,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:09:37,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:09:39,389.389 INFO    ] ================================================
[2026-06-27 19:09:39,404.404 INFO    ] Launching Daemon at Sat Jun 27 19:09:39 IST 2026
[2026-06-27 19:09:39,415.415 INFO    ] ================================================
[2026-06-27 19:09:39,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:09:39
[2026-06-27 19:09:40,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:09:40,216.216 INFO    ] Initializing speech engine...
[2026-06-27 19:09:40,225.225 INFO    ] 2026-06-27 19:09:40
[2026-06-27 19:09:40,430.430 INFO    ] 2026-06-27 19:09:40
[2026-06-27 19:09:40,459.459 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:09:40,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:09:40,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:09:40,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:09:40,867.867 INFO    ] time= 27/06/2026 19:09:40
[2026-06-27 19:09:40,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:09:40,874.874 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:09:40,941.941 INFO    ] No existing commands found in stream
[2026-06-27 19:09:45,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:09:45,963.963 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-27 19:09:49,967.967 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:09:49,968.968 INFO    ] Checking for system updates...
[2026-06-27 19:09:49,992.992 INFO    ] 200
[2026-06-27 19:09:49,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:09:50,056.056 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:09:50,057.057 INFO    ] No update needed
[2026-06-27 19:09:50,059.059 INFO    ] Checking for camera pi updates...
[2026-06-27 19:09:50,078.078 INFO    ] 200
[2026-06-27 19:09:50,080.080 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:09:50,105.105 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:09:50,150.150 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:09:50,151.151 INFO    ] No camera update needed
[2026-06-27 19:09:50,152.152 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:09:50,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:09:50,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:09:50,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:09:52,201.201 INFO    ] ================================================
[2026-06-27 19:09:52,217.217 INFO    ] Launching Daemon at Sat Jun 27 19:09:52 IST 2026
[2026-06-27 19:09:52,227.227 INFO    ] ================================================
[2026-06-27 19:09:52,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:09:52
[2026-06-27 19:09:52,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:09:53,006.006 INFO    ] Initializing speech engine...
[2026-06-27 19:09:53,013.013 INFO    ] 2026-06-27 19:09:53
[2026-06-27 19:09:53,226.226 INFO    ] 2026-06-27 19:09:53
[2026-06-27 19:09:53,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:09:53,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:09:53,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:09:53,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:09:53,669.669 INFO    ] time= 27/06/2026 19:09:53
[2026-06-27 19:09:53,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:09:53,677.677 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:09:53,744.744 INFO    ] No existing commands found in stream
[2026-06-27 19:09:58,754.754 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:09:58,757.757 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-27 19:10:02,023.023 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:10:02,026.026 INFO    ] Checking for system updates...
[2026-06-27 19:10:02,061.061 INFO    ] 200
[2026-06-27 19:10:02,063.063 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:10:02,115.115 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:10:02,117.117 INFO    ] No update needed
[2026-06-27 19:10:02,119.119 INFO    ] Checking for camera pi updates...
[2026-06-27 19:10:02,153.153 INFO    ] 200
[2026-06-27 19:10:02,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:10:02,188.188 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:10:02,239.239 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:10:02,241.241 INFO    ] No camera update needed
[2026-06-27 19:10:02,242.242 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:10:02,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:10:02,249.249 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:10:02,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:10:04,293.293 INFO    ] ================================================
[2026-06-27 19:10:04,309.309 INFO    ] Launching Daemon at Sat Jun 27 19:10:04 IST 2026
[2026-06-27 19:10:04,319.319 INFO    ] ================================================
[2026-06-27 19:10:04,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:10:04
[2026-06-27 19:10:05,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:10:05,186.186 INFO    ] Initializing speech engine...
[2026-06-27 19:10:05,192.192 INFO    ] 2026-06-27 19:10:05
[2026-06-27 19:10:05,396.396 INFO    ] 2026-06-27 19:10:05
[2026-06-27 19:10:05,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:10:05,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:10:05,623.623 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:10:05,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:10:05,822.822 INFO    ] time= 27/06/2026 19:10:05
[2026-06-27 19:10:05,848.848 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:10:05,850.850 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:10:05,917.917 INFO    ] No existing commands found in stream
[2026-06-27 19:10:10,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:10:10,930.930 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-27 19:10:12,450.450 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 19:10:12,452.452 INFO    ] Checking for system updates...
[2026-06-27 19:10:12,473.473 INFO    ] 200
[2026-06-27 19:10:12,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:10:12,506.506 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:10:12,507.507 INFO    ] No update needed
[2026-06-27 19:10:12,509.509 INFO    ] Checking for camera pi updates...
[2026-06-27 19:10:12,530.530 INFO    ] 200
[2026-06-27 19:10:12,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:10:12,557.557 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:10:12,604.604 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:10:12,606.606 INFO    ] No camera update needed
[2026-06-27 19:10:12,607.607 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:10:12,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:10:12,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:10:12,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:10:14,654.654 INFO    ] ================================================
[2026-06-27 19:10:14,670.670 INFO    ] Launching Daemon at Sat Jun 27 19:10:14 IST 2026
[2026-06-27 19:10:14,680.680 INFO    ] ================================================
[2026-06-27 19:10:15,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:10:15
[2026-06-27 19:10:15,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:10:15,522.522 INFO    ] Initializing speech engine...
[2026-06-27 19:10:15,528.528 INFO    ] 2026-06-27 19:10:15
[2026-06-27 19:10:15,733.733 INFO    ] 2026-06-27 19:10:15
[2026-06-27 19:10:15,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:10:15,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:10:15,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:10:16,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:10:16,178.178 INFO    ] time= 27/06/2026 19:10:16
[2026-06-27 19:10:16,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:10:16,185.185 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:10:16,260.260 INFO    ] No existing commands found in stream
[2026-06-27 19:10:21,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:10:21,277.277 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-27 19:10:23,129.129 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:10:23,131.131 INFO    ] Checking for system updates...
[2026-06-27 19:10:23,152.152 INFO    ] 200
[2026-06-27 19:10:23,153.153 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:10:23,183.183 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:10:23,185.185 INFO    ] No update needed
[2026-06-27 19:10:23,186.186 INFO    ] Checking for camera pi updates...
[2026-06-27 19:10:23,206.206 INFO    ] 200
[2026-06-27 19:10:23,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:10:23,232.232 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:10:23,283.283 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:10:23,285.285 INFO    ] No camera update needed
[2026-06-27 19:10:23,286.286 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:10:23,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:10:23,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:10:23,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:10:25,332.332 INFO    ] ================================================
[2026-06-27 19:10:25,347.347 INFO    ] Launching Daemon at Sat Jun 27 19:10:25 IST 2026
[2026-06-27 19:10:25,358.358 INFO    ] ================================================
[2026-06-27 19:10:25,733.733 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:10:25
[2026-06-27 19:10:26,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:10:26,229.229 INFO    ] Initializing speech engine...
[2026-06-27 19:10:26,232.232 INFO    ] 2026-06-27 19:10:26
[2026-06-27 19:10:26,449.449 INFO    ] 2026-06-27 19:10:26
[2026-06-27 19:10:26,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:10:26,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:10:26,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:10:26,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:10:26,871.871 INFO    ] time= 27/06/2026 19:10:26
[2026-06-27 19:10:26,893.893 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:10:26,899.899 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:10:26,966.966 INFO    ] No existing commands found in stream
[2026-06-27 19:10:31,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:10:31,982.982 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-27 19:10:35,587.587 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:10:35,589.589 INFO    ] Checking for system updates...
[2026-06-27 19:10:35,609.609 INFO    ] 200
[2026-06-27 19:10:35,611.611 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:10:35,645.645 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:10:35,646.646 INFO    ] No update needed
[2026-06-27 19:10:35,648.648 INFO    ] Checking for camera pi updates...
[2026-06-27 19:10:35,667.667 INFO    ] 200
[2026-06-27 19:10:35,668.668 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:10:35,693.693 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:10:35,735.735 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:10:35,736.736 INFO    ] No camera update needed
[2026-06-27 19:10:35,738.738 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:10:35,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:10:35,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:10:35,745.745 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:10:37,783.783 INFO    ] ================================================
[2026-06-27 19:10:37,798.798 INFO    ] Launching Daemon at Sat Jun 27 19:10:37 IST 2026
[2026-06-27 19:10:37,810.810 INFO    ] ================================================
[2026-06-27 19:10:38,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:10:38
[2026-06-27 19:10:38,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:10:38,638.638 INFO    ] Initializing speech engine...
[2026-06-27 19:10:38,642.642 INFO    ] 2026-06-27 19:10:38
[2026-06-27 19:10:38,849.849 INFO    ] 2026-06-27 19:10:38
[2026-06-27 19:10:38,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:10:39,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:10:39,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:10:39,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:10:39,268.268 INFO    ] time= 27/06/2026 19:10:39
[2026-06-27 19:10:39,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:10:39,298.298 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:10:39,365.365 INFO    ] No existing commands found in stream
[2026-06-27 19:10:44,379.379 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:10:44,382.382 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-27 19:10:44,955.955 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 19:10:44,957.957 INFO    ] Checking for system updates...
[2026-06-27 19:10:44,978.978 INFO    ] 200
[2026-06-27 19:10:44,979.979 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:10:45,011.011 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:10:45,013.013 INFO    ] No update needed
[2026-06-27 19:10:45,014.014 INFO    ] Checking for camera pi updates...
[2026-06-27 19:10:45,034.034 INFO    ] 200
[2026-06-27 19:10:45,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:10:45,060.060 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:10:45,107.107 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:10:45,109.109 INFO    ] No camera update needed
[2026-06-27 19:10:45,110.110 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:10:45,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:10:45,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:10:45,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:10:47,158.158 INFO    ] ================================================
[2026-06-27 19:10:47,175.175 INFO    ] Launching Daemon at Sat Jun 27 19:10:47 IST 2026
[2026-06-27 19:10:47,185.185 INFO    ] ================================================
[2026-06-27 19:10:47,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:10:47
[2026-06-27 19:10:47,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:10:47,987.987 INFO    ] Initializing speech engine...
[2026-06-27 19:10:47,991.991 INFO    ] 2026-06-27 19:10:47
[2026-06-27 19:10:48,209.209 INFO    ] 2026-06-27 19:10:48
[2026-06-27 19:10:48,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:10:48,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:10:48,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:10:48,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:10:48,628.628 INFO    ] time= 27/06/2026 19:10:48
[2026-06-27 19:10:48,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:10:48,657.657 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:10:48,724.724 INFO    ] No existing commands found in stream
[2026-06-27 19:10:53,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:10:53,736.736 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-27 19:10:54,234.234 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:10:54,236.236 INFO    ] Checking for system updates...
[2026-06-27 19:10:54,256.256 INFO    ] 200
[2026-06-27 19:10:54,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:10:54,289.289 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:10:54,290.290 INFO    ] No update needed
[2026-06-27 19:10:54,291.291 INFO    ] Checking for camera pi updates...
[2026-06-27 19:10:54,312.312 INFO    ] 200
[2026-06-27 19:10:54,313.313 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:10:54,337.337 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:10:54,438.438 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:10:54,440.440 INFO    ] No camera update needed
[2026-06-27 19:10:54,441.441 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:10:54,442.442 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:10:54,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:10:54,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:10:56,490.490 INFO    ] ================================================
[2026-06-27 19:10:56,506.506 INFO    ] Launching Daemon at Sat Jun 27 19:10:56 IST 2026
[2026-06-27 19:10:56,517.517 INFO    ] ================================================
[2026-06-27 19:10:56,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:10:56
[2026-06-27 19:10:57,197.197 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:10:57,328.328 INFO    ] Initializing speech engine...
[2026-06-27 19:10:57,336.336 INFO    ] 2026-06-27 19:10:57
[2026-06-27 19:10:57,550.550 INFO    ] 2026-06-27 19:10:57
[2026-06-27 19:10:57,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:10:57,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:10:57,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:10:57,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:10:57,994.994 INFO    ] time= 27/06/2026 19:10:57
[2026-06-27 19:10:58,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:10:58,040.040 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:10:58,139.139 INFO    ] No existing commands found in stream
[2026-06-27 19:11:03,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:11:03,146.146 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-27 19:11:06,987.987 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:11:06,988.988 INFO    ] Checking for system updates...
[2026-06-27 19:11:07,011.011 INFO    ] 200
[2026-06-27 19:11:07,012.012 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:11:07,043.043 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:11:07,044.044 INFO    ] No update needed
[2026-06-27 19:11:07,046.046 INFO    ] Checking for camera pi updates...
[2026-06-27 19:11:07,065.065 INFO    ] 200
[2026-06-27 19:11:07,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:11:07,091.091 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:11:07,141.141 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:11:07,142.142 INFO    ] No camera update needed
[2026-06-27 19:11:07,144.144 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:11:07,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:11:07,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:11:07,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:11:09,194.194 INFO    ] ================================================
[2026-06-27 19:11:09,209.209 INFO    ] Launching Daemon at Sat Jun 27 19:11:09 IST 2026
[2026-06-27 19:11:09,220.220 INFO    ] ================================================
[2026-06-27 19:11:09,549.549 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:11:09
[2026-06-27 19:11:09,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:11:10,012.012 INFO    ] Initializing speech engine...
[2026-06-27 19:11:10,021.021 INFO    ] 2026-06-27 19:11:10
[2026-06-27 19:11:10,210.210 INFO    ] 2026-06-27 19:11:10
[2026-06-27 19:11:10,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:11:10,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:11:10,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:11:10,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:11:10,735.735 INFO    ] time= 27/06/2026 19:11:10
[2026-06-27 19:11:10,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:11:10,742.742 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:11:10,841.841 INFO    ] No existing commands found in stream
[2026-06-27 19:11:15,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:11:15,858.858 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-27 19:11:17,181.181 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:11:17,183.183 INFO    ] Checking for system updates...
[2026-06-27 19:11:17,205.205 INFO    ] 200
[2026-06-27 19:11:17,206.206 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:11:17,237.237 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:11:17,238.238 INFO    ] No update needed
[2026-06-27 19:11:17,239.239 INFO    ] Checking for camera pi updates...
[2026-06-27 19:11:17,259.259 INFO    ] 200
[2026-06-27 19:11:17,261.261 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:11:17,285.285 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:11:17,338.338 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:11:17,340.340 INFO    ] No camera update needed
[2026-06-27 19:11:17,341.341 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:11:17,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:11:17,345.345 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:11:17,348.348 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:11:19,386.386 INFO    ] ================================================
[2026-06-27 19:11:19,401.401 INFO    ] Launching Daemon at Sat Jun 27 19:11:19 IST 2026
[2026-06-27 19:11:19,412.412 INFO    ] ================================================
[2026-06-27 19:11:19,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:11:19
[2026-06-27 19:11:20,158.158 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:11:20,314.314 INFO    ] Initializing speech engine...
[2026-06-27 19:11:20,317.317 INFO    ] 2026-06-27 19:11:20
[2026-06-27 19:11:20,527.527 INFO    ] 2026-06-27 19:11:20
[2026-06-27 19:11:20,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:11:20,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:11:20,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:11:20,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:11:20,967.967 INFO    ] time= 27/06/2026 19:11:20
[2026-06-27 19:11:20,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:11:20,975.975 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:11:21,042.042 INFO    ] No existing commands found in stream
[2026-06-27 19:11:26,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:11:26,056.056 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-27 19:11:29,702.702 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:11:29,704.704 INFO    ] Checking for system updates...
[2026-06-27 19:11:29,727.727 INFO    ] 200
[2026-06-27 19:11:29,728.728 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:11:29,759.759 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:11:29,760.760 INFO    ] No update needed
[2026-06-27 19:11:29,761.761 INFO    ] Checking for camera pi updates...
[2026-06-27 19:11:29,785.785 INFO    ] 200
[2026-06-27 19:11:29,786.786 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:11:29,811.811 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:11:29,858.858 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:11:29,859.859 INFO    ] No camera update needed
[2026-06-27 19:11:29,860.860 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:11:29,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:11:29,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:11:29,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:11:31,905.905 INFO    ] ================================================
[2026-06-27 19:11:31,921.921 INFO    ] Launching Daemon at Sat Jun 27 19:11:31 IST 2026
[2026-06-27 19:11:31,931.931 INFO    ] ================================================
[2026-06-27 19:11:32,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:11:32
[2026-06-27 19:11:32,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:11:32,799.799 INFO    ] Initializing speech engine...
[2026-06-27 19:11:32,811.811 INFO    ] 2026-06-27 19:11:32
[2026-06-27 19:11:33,025.025 INFO    ] 2026-06-27 19:11:33
[2026-06-27 19:11:33,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:11:33,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:11:33,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:11:33,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:11:33,446.446 INFO    ] time= 27/06/2026 19:11:33
[2026-06-27 19:11:33,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:11:33,475.475 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:11:33,543.543 INFO    ] No existing commands found in stream
[2026-06-27 19:11:38,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:11:38,560.560 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-27 19:11:39,740.740 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:11:39,742.742 INFO    ] Checking for system updates...
[2026-06-27 19:11:39,763.763 INFO    ] 200
[2026-06-27 19:11:39,764.764 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:11:39,795.795 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:11:39,797.797 INFO    ] No update needed
[2026-06-27 19:11:39,798.798 INFO    ] Checking for camera pi updates...
[2026-06-27 19:11:39,820.820 INFO    ] 200
[2026-06-27 19:11:39,821.821 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:11:39,844.844 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:11:39,996.996 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:11:39,998.998 INFO    ] No camera update needed
[2026-06-27 19:11:39,999.999 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:11:40,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:11:40,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:11:40,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:11:42,046.046 INFO    ] ================================================
[2026-06-27 19:11:42,061.061 INFO    ] Launching Daemon at Sat Jun 27 19:11:42 IST 2026
[2026-06-27 19:11:42,072.072 INFO    ] ================================================
[2026-06-27 19:11:42,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:11:42
[2026-06-27 19:11:42,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:11:42,971.971 INFO    ] Initializing speech engine...
[2026-06-27 19:11:42,978.978 INFO    ] 2026-06-27 19:11:42
[2026-06-27 19:11:43,187.187 INFO    ] 2026-06-27 19:11:43
[2026-06-27 19:11:43,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:11:43,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:11:43,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:11:43,751.751 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:11:43,755.755 INFO    ] time= 27/06/2026 19:11:43
[2026-06-27 19:11:43,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:11:43,761.761 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:11:43,902.902 INFO    ] No existing commands found in stream
[2026-06-27 19:11:48,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:11:48,916.916 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-27 19:11:49,556.556 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 19:11:49,557.557 INFO    ] Checking for system updates...
[2026-06-27 19:11:49,579.579 INFO    ] 200
[2026-06-27 19:11:49,580.580 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:11:49,612.612 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:11:49,613.613 INFO    ] No update needed
[2026-06-27 19:11:49,615.615 INFO    ] Checking for camera pi updates...
[2026-06-27 19:11:49,636.636 INFO    ] 200
[2026-06-27 19:11:49,637.637 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:11:49,663.663 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:11:49,708.708 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:11:49,709.709 INFO    ] No camera update needed
[2026-06-27 19:11:49,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:11:49,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:11:49,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:11:49,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:11:51,756.756 INFO    ] ================================================
[2026-06-27 19:11:51,771.771 INFO    ] Launching Daemon at Sat Jun 27 19:11:51 IST 2026
[2026-06-27 19:11:51,781.781 INFO    ] ================================================
[2026-06-27 19:11:52,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:11:52
[2026-06-27 19:11:52,455.455 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:11:52,593.593 INFO    ] Initializing speech engine...
[2026-06-27 19:11:52,602.602 INFO    ] 2026-06-27 19:11:52
[2026-06-27 19:11:52,809.809 INFO    ] 2026-06-27 19:11:52
[2026-06-27 19:11:52,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:11:53,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:11:53,044.044 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:11:53,266.266 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:11:53,294.294 INFO    ] time= 27/06/2026 19:11:53
[2026-06-27 19:11:53,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:11:53,301.301 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:11:53,374.374 INFO    ] No existing commands found in stream
[2026-06-27 19:11:58,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:11:58,387.387 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-27 19:12:01,132.132 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 19:12:01,134.134 INFO    ] Checking for system updates...
[2026-06-27 19:12:01,155.155 INFO    ] 200
[2026-06-27 19:12:01,157.157 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:12:01,190.190 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:12:01,191.191 INFO    ] No update needed
[2026-06-27 19:12:01,193.193 INFO    ] Checking for camera pi updates...
[2026-06-27 19:12:01,214.214 INFO    ] 200
[2026-06-27 19:12:01,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:12:01,240.240 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:12:01,287.287 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:12:01,289.289 INFO    ] No camera update needed
[2026-06-27 19:12:01,290.290 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:12:01,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:12:01,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:12:01,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:12:03,328.328 INFO    ] ================================================
[2026-06-27 19:12:03,344.344 INFO    ] Launching Daemon at Sat Jun 27 19:12:03 IST 2026
[2026-06-27 19:12:03,355.355 INFO    ] ================================================
[2026-06-27 19:12:03,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:12:03
[2026-06-27 19:12:04,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:12:04,235.235 INFO    ] Initializing speech engine...
[2026-06-27 19:12:04,240.240 INFO    ] 2026-06-27 19:12:04
[2026-06-27 19:12:04,451.451 INFO    ] 2026-06-27 19:12:04
[2026-06-27 19:12:04,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:12:04,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:12:04,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:12:04,825.825 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:12:04,880.880 INFO    ] time= 27/06/2026 19:12:04
[2026-06-27 19:12:04,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:12:04,908.908 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:12:04,976.976 INFO    ] No existing commands found in stream
[2026-06-27 19:12:09,990.990 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:12:09,994.994 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-27 19:12:14,317.317 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:12:14,319.319 INFO    ] Checking for system updates...
[2026-06-27 19:12:14,340.340 INFO    ] 200
[2026-06-27 19:12:14,341.341 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:12:14,376.376 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:12:14,377.377 INFO    ] No update needed
[2026-06-27 19:12:14,379.379 INFO    ] Checking for camera pi updates...
[2026-06-27 19:12:14,401.401 INFO    ] 200
[2026-06-27 19:12:14,402.402 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:12:14,426.426 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:12:14,480.480 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:12:14,481.481 INFO    ] No camera update needed
[2026-06-27 19:12:14,483.483 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:12:14,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:12:14,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:12:14,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:12:16,531.531 INFO    ] ================================================
[2026-06-27 19:12:16,546.546 INFO    ] Launching Daemon at Sat Jun 27 19:12:16 IST 2026
[2026-06-27 19:12:16,557.557 INFO    ] ================================================
[2026-06-27 19:12:16,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:12:16
[2026-06-27 19:12:17,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:12:17,437.437 INFO    ] Initializing speech engine...
[2026-06-27 19:12:17,443.443 INFO    ] 2026-06-27 19:12:17
[2026-06-27 19:12:17,654.654 INFO    ] 2026-06-27 19:12:17
[2026-06-27 19:12:17,683.683 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:12:17,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:12:17,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:12:18,012.012 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:12:18,081.081 INFO    ] time= 27/06/2026 19:12:18
[2026-06-27 19:12:18,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:12:18,112.112 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:12:18,180.180 INFO    ] No existing commands found in stream
[2026-06-27 19:12:23,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:12:23,198.198 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-27 19:12:25,563.563 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 19:12:25,565.565 INFO    ] Checking for system updates...
[2026-06-27 19:12:25,588.588 INFO    ] 200
[2026-06-27 19:12:25,589.589 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:12:25,625.625 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:12:25,627.627 INFO    ] No update needed
[2026-06-27 19:12:25,628.628 INFO    ] Checking for camera pi updates...
[2026-06-27 19:12:25,648.648 INFO    ] 200
[2026-06-27 19:12:25,650.650 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:12:25,675.675 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:12:25,722.722 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:12:25,724.724 INFO    ] No camera update needed
[2026-06-27 19:12:25,726.726 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:12:25,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:12:25,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:12:25,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:12:27,776.776 INFO    ] ================================================
[2026-06-27 19:12:27,792.792 INFO    ] Launching Daemon at Sat Jun 27 19:12:27 IST 2026
[2026-06-27 19:12:27,802.802 INFO    ] ================================================
[2026-06-27 19:12:28,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:12:28
[2026-06-27 19:12:28,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:12:28,596.596 INFO    ] Initializing speech engine...
[2026-06-27 19:12:28,604.604 INFO    ] 2026-06-27 19:12:28
[2026-06-27 19:12:28,814.814 INFO    ] 2026-06-27 19:12:28
[2026-06-27 19:12:28,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:12:29,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:12:29,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:12:29,236.236 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:12:29,262.262 INFO    ] time= 27/06/2026 19:12:29
[2026-06-27 19:12:29,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:12:29,269.269 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:12:29,384.384 INFO    ] No existing commands found in stream
[2026-06-27 19:12:34,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:12:34,397.397 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-27 19:12:38,697.697 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 19:12:38,699.699 INFO    ] Checking for system updates...
[2026-06-27 19:12:38,721.721 INFO    ] 200
[2026-06-27 19:12:38,722.722 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:12:38,752.752 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:12:38,754.754 INFO    ] No update needed
[2026-06-27 19:12:38,755.755 INFO    ] Checking for camera pi updates...
[2026-06-27 19:12:38,775.775 INFO    ] 200
[2026-06-27 19:12:38,776.776 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:12:38,802.802 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:12:38,852.852 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:12:38,853.853 INFO    ] No camera update needed
[2026-06-27 19:12:38,854.854 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:12:38,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:12:38,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:12:38,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:12:40,901.901 INFO    ] ================================================
[2026-06-27 19:12:40,916.916 INFO    ] Launching Daemon at Sat Jun 27 19:12:40 IST 2026
[2026-06-27 19:12:40,927.927 INFO    ] ================================================
[2026-06-27 19:12:41,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:12:41
[2026-06-27 19:12:41,686.686 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:12:41,841.841 INFO    ] Initializing speech engine...
[2026-06-27 19:12:41,845.845 INFO    ] 2026-06-27 19:12:41
[2026-06-27 19:12:42,056.056 INFO    ] 2026-06-27 19:12:42
[2026-06-27 19:12:42,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:12:42,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:12:42,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:12:42,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:12:42,645.645 INFO    ] time= 27/06/2026 19:12:42
[2026-06-27 19:12:42,650.650 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:12:42,652.652 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:12:42,761.761 INFO    ] No existing commands found in stream
[2026-06-27 19:12:47,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:12:47,775.775 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-27 19:12:49,306.306 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:12:49,307.307 INFO    ] Checking for system updates...
[2026-06-27 19:12:49,330.330 INFO    ] 200
[2026-06-27 19:12:49,332.332 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:12:49,363.363 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:12:49,364.364 INFO    ] No update needed
[2026-06-27 19:12:49,366.366 INFO    ] Checking for camera pi updates...
[2026-06-27 19:12:49,386.386 INFO    ] 200
[2026-06-27 19:12:49,388.388 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:12:49,412.412 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:12:49,457.457 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:12:49,458.458 INFO    ] No camera update needed
[2026-06-27 19:12:49,460.460 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:12:49,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:12:49,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:12:49,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:12:51,506.506 INFO    ] ================================================
[2026-06-27 19:12:51,520.520 INFO    ] Launching Daemon at Sat Jun 27 19:12:51 IST 2026
[2026-06-27 19:12:51,531.531 INFO    ] ================================================
[2026-06-27 19:12:51,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:12:51
[2026-06-27 19:12:52,244.244 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:12:52,401.401 INFO    ] Initializing speech engine...
[2026-06-27 19:12:52,407.407 INFO    ] 2026-06-27 19:12:52
[2026-06-27 19:12:52,613.613 INFO    ] 2026-06-27 19:12:52
[2026-06-27 19:12:52,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:12:52,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:12:52,840.840 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:12:53,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:12:53,060.060 INFO    ] time= 27/06/2026 19:12:53
[2026-06-27 19:12:53,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:12:53,064.064 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:12:53,155.155 INFO    ] No existing commands found in stream
[2026-06-27 19:12:58,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:12:58,173.173 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-27 19:13:02,580.580 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 19:13:02,582.582 INFO    ] Checking for system updates...
[2026-06-27 19:13:02,607.607 INFO    ] 200
[2026-06-27 19:13:02,608.608 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:13:02,651.651 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:13:02,652.652 INFO    ] No update needed
[2026-06-27 19:13:02,653.653 INFO    ] Checking for camera pi updates...
[2026-06-27 19:13:02,675.675 INFO    ] 200
[2026-06-27 19:13:02,676.676 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:13:02,699.699 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:13:02,743.743 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:13:02,745.745 INFO    ] No camera update needed
[2026-06-27 19:13:02,746.746 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:13:02,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:13:02,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:13:02,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:13:04,793.793 INFO    ] ================================================
[2026-06-27 19:13:04,809.809 INFO    ] Launching Daemon at Sat Jun 27 19:13:04 IST 2026
[2026-06-27 19:13:04,819.819 INFO    ] ================================================
[2026-06-27 19:13:05,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:13:05
[2026-06-27 19:13:05,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:13:05,614.614 INFO    ] Initializing speech engine...
[2026-06-27 19:13:05,623.623 INFO    ] 2026-06-27 19:13:05
[2026-06-27 19:13:05,812.812 INFO    ] 2026-06-27 19:13:05
[2026-06-27 19:13:05,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:13:06,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:13:06,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:13:06,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:13:06,275.275 INFO    ] time= 27/06/2026 19:13:06
[2026-06-27 19:13:06,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:13:06,305.305 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:13:06,373.373 INFO    ] No existing commands found in stream
[2026-06-27 19:13:11,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:13:11,385.385 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-27 19:13:12,340.340 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:13:12,342.342 INFO    ] Checking for system updates...
[2026-06-27 19:13:12,365.365 INFO    ] 200
[2026-06-27 19:13:12,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:13:12,396.396 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:13:12,398.398 INFO    ] No update needed
[2026-06-27 19:13:12,399.399 INFO    ] Checking for camera pi updates...
[2026-06-27 19:13:12,421.421 INFO    ] 200
[2026-06-27 19:13:12,422.422 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:13:12,445.445 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:13:12,495.495 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:13:12,496.496 INFO    ] No camera update needed
[2026-06-27 19:13:12,498.498 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:13:12,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:13:12,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:13:12,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:13:14,543.543 INFO    ] ================================================
[2026-06-27 19:13:14,558.558 INFO    ] Launching Daemon at Sat Jun 27 19:13:14 IST 2026
[2026-06-27 19:13:14,569.569 INFO    ] ================================================
[2026-06-27 19:13:14,903.903 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:13:14
[2026-06-27 19:13:15,221.221 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:13:15,364.364 INFO    ] Initializing speech engine...
[2026-06-27 19:13:15,370.370 INFO    ] 2026-06-27 19:13:15
[2026-06-27 19:13:15,574.574 INFO    ] 2026-06-27 19:13:15
[2026-06-27 19:13:15,602.602 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:13:15,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:13:15,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:13:15,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:13:15,993.993 INFO    ] time= 27/06/2026 19:13:15
[2026-06-27 19:13:16,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:13:16,021.021 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:13:16,085.085 INFO    ] No existing commands found in stream
[2026-06-27 19:13:21,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:13:21,099.099 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-27 19:13:25,418.418 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 19:13:25,419.419 INFO    ] Checking for system updates...
[2026-06-27 19:13:25,440.440 INFO    ] 200
[2026-06-27 19:13:25,442.442 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:13:25,478.478 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:13:25,479.479 INFO    ] No update needed
[2026-06-27 19:13:25,480.480 INFO    ] Checking for camera pi updates...
[2026-06-27 19:13:25,502.502 INFO    ] 200
[2026-06-27 19:13:25,503.503 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:13:25,526.526 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:13:25,572.572 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:13:25,573.573 INFO    ] No camera update needed
[2026-06-27 19:13:25,575.575 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:13:25,576.576 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:13:25,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:13:25,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:13:27,620.620 INFO    ] ================================================
[2026-06-27 19:13:27,635.635 INFO    ] Launching Daemon at Sat Jun 27 19:13:27 IST 2026
[2026-06-27 19:13:27,646.646 INFO    ] ================================================
[2026-06-27 19:13:28,034.034 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:13:28
[2026-06-27 19:13:28,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:13:28,493.493 INFO    ] Initializing speech engine...
[2026-06-27 19:13:28,498.498 INFO    ] 2026-06-27 19:13:28
[2026-06-27 19:13:28,705.705 INFO    ] 2026-06-27 19:13:28
[2026-06-27 19:13:28,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:13:28,921.921 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:13:28,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:13:29,074.074 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:13:29,133.133 INFO    ] time= 27/06/2026 19:13:29
[2026-06-27 19:13:29,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:13:29,162.162 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:13:29,231.231 INFO    ] No existing commands found in stream
[2026-06-27 19:13:34,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:13:34,242.242 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-27 19:13:35,667.667 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:13:35,669.669 INFO    ] Checking for system updates...
[2026-06-27 19:13:35,696.696 INFO    ] 200
[2026-06-27 19:13:35,697.697 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:13:35,739.739 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:13:35,741.741 INFO    ] No update needed
[2026-06-27 19:13:35,743.743 INFO    ] Checking for camera pi updates...
[2026-06-27 19:13:35,765.765 INFO    ] 200
[2026-06-27 19:13:35,767.767 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:13:35,796.796 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:13:35,849.849 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:13:35,851.851 INFO    ] No camera update needed
[2026-06-27 19:13:35,853.853 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:13:35,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:13:35,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:13:35,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:13:37,906.906 INFO    ] ================================================
[2026-06-27 19:13:37,926.926 INFO    ] Launching Daemon at Sat Jun 27 19:13:37 IST 2026
[2026-06-27 19:13:37,938.938 INFO    ] ================================================
[2026-06-27 19:13:38,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:13:38
[2026-06-27 19:13:38,622.622 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:13:38,766.766 INFO    ] Initializing speech engine...
[2026-06-27 19:13:38,771.771 INFO    ] 2026-06-27 19:13:38
[2026-06-27 19:13:38,975.975 INFO    ] 2026-06-27 19:13:38
[2026-06-27 19:13:39,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:13:39,264.264 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:13:39,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:13:39,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:13:39,486.486 INFO    ] time= 27/06/2026 19:13:39
[2026-06-27 19:13:39,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:13:39,513.513 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:13:39,609.609 INFO    ] No existing commands found in stream
[2026-06-27 19:13:44,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:13:44,622.622 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-27 19:13:45,512.512 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:13:45,513.513 INFO    ] Checking for system updates...
[2026-06-27 19:13:45,537.537 INFO    ] 200
[2026-06-27 19:13:45,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:13:45,575.575 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:13:45,577.577 INFO    ] No update needed
[2026-06-27 19:13:45,578.578 INFO    ] Checking for camera pi updates...
[2026-06-27 19:13:45,602.602 INFO    ] 200
[2026-06-27 19:13:45,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:13:45,631.631 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:13:45,775.775 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:13:45,776.776 INFO    ] No camera update needed
[2026-06-27 19:13:45,778.778 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:13:45,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:13:45,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:13:45,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:13:47,824.824 INFO    ] ================================================
[2026-06-27 19:13:47,840.840 INFO    ] Launching Daemon at Sat Jun 27 19:13:47 IST 2026
[2026-06-27 19:13:47,852.852 INFO    ] ================================================
[2026-06-27 19:13:48,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:13:48
[2026-06-27 19:13:48,488.488 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:13:48,626.626 INFO    ] Initializing speech engine...
[2026-06-27 19:13:48,633.633 INFO    ] 2026-06-27 19:13:48
[2026-06-27 19:13:48,841.841 INFO    ] 2026-06-27 19:13:48
[2026-06-27 19:13:48,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:13:49,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:13:49,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:13:49,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:13:49,258.258 INFO    ] time= 27/06/2026 19:13:49
[2026-06-27 19:13:49,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:13:49,298.298 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:13:49,365.365 INFO    ] No existing commands found in stream
[2026-06-27 19:13:54,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:13:54,378.378 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-27 19:13:55,681.681 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:13:55,682.682 INFO    ] Checking for system updates...
[2026-06-27 19:13:55,705.705 INFO    ] 200
[2026-06-27 19:13:55,707.707 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:13:55,737.737 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:13:55,738.738 INFO    ] No update needed
[2026-06-27 19:13:55,739.739 INFO    ] Checking for camera pi updates...
[2026-06-27 19:13:55,759.759 INFO    ] 200
[2026-06-27 19:13:55,760.760 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:13:55,788.788 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:13:55,816.816 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:13:55,817.817 INFO    ] No camera update needed
[2026-06-27 19:13:55,819.819 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:13:55,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:13:55,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:13:55,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:13:57,864.864 INFO    ] ================================================
[2026-06-27 19:13:57,880.880 INFO    ] Launching Daemon at Sat Jun 27 19:13:57 IST 2026
[2026-06-27 19:13:57,891.891 INFO    ] ================================================
[2026-06-27 19:13:58,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:13:58
[2026-06-27 19:13:58,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:13:58,768.768 INFO    ] Initializing speech engine...
[2026-06-27 19:13:58,777.777 INFO    ] 2026-06-27 19:13:58
[2026-06-27 19:13:58,990.990 INFO    ] 2026-06-27 19:13:58
[2026-06-27 19:13:59,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:13:59,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:13:59,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:13:59,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:13:59,434.434 INFO    ] time= 27/06/2026 19:13:59
[2026-06-27 19:13:59,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:13:59,441.441 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:13:59,532.532 INFO    ] No existing commands found in stream
[2026-06-27 19:14:04,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:14:04,545.545 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-27 19:14:07,758.758 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:14:07,759.759 INFO    ] Checking for system updates...
[2026-06-27 19:14:07,782.782 INFO    ] 200
[2026-06-27 19:14:07,783.783 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:14:07,814.814 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:14:07,815.815 INFO    ] No update needed
[2026-06-27 19:14:07,817.817 INFO    ] Checking for camera pi updates...
[2026-06-27 19:14:07,838.838 INFO    ] 200
[2026-06-27 19:14:07,839.839 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:14:07,862.862 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:14:07,903.903 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:14:07,905.905 INFO    ] No camera update needed
[2026-06-27 19:14:07,906.906 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:14:07,907.907 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:14:07,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:14:07,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:14:09,952.952 INFO    ] ================================================
[2026-06-27 19:14:09,968.968 INFO    ] Launching Daemon at Sat Jun 27 19:14:09 IST 2026
[2026-06-27 19:14:09,980.980 INFO    ] ================================================
[2026-06-27 19:14:10,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:14:10
[2026-06-27 19:14:10,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:14:10,856.856 INFO    ] Initializing speech engine...
[2026-06-27 19:14:10,860.860 INFO    ] 2026-06-27 19:14:10
[2026-06-27 19:14:11,075.075 INFO    ] 2026-06-27 19:14:11
[2026-06-27 19:14:11,104.104 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:14:11,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:14:11,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:14:11,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:14:11,507.507 INFO    ] time= 27/06/2026 19:14:11
[2026-06-27 19:14:11,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:14:11,536.536 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:14:11,606.606 INFO    ] No existing commands found in stream
[2026-06-27 19:14:16,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:14:16,619.619 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-27 19:14:18,608.608 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 19:14:18,610.610 INFO    ] Checking for system updates...
[2026-06-27 19:14:18,632.632 INFO    ] 200
[2026-06-27 19:14:18,633.633 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:14:18,669.669 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:14:18,670.670 INFO    ] No update needed
[2026-06-27 19:14:18,671.671 INFO    ] Checking for camera pi updates...
[2026-06-27 19:14:18,691.691 INFO    ] 200
[2026-06-27 19:14:18,692.692 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:14:18,716.716 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:14:18,757.757 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:14:18,759.759 INFO    ] No camera update needed
[2026-06-27 19:14:18,760.760 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:14:18,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:14:18,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:14:18,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:14:20,805.805 INFO    ] ================================================
[2026-06-27 19:14:20,822.822 INFO    ] Launching Daemon at Sat Jun 27 19:14:20 IST 2026
[2026-06-27 19:14:20,833.833 INFO    ] ================================================
[2026-06-27 19:14:21,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:14:21
[2026-06-27 19:14:21,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:14:21,616.616 INFO    ] Initializing speech engine...
[2026-06-27 19:14:21,624.624 INFO    ] 2026-06-27 19:14:21
[2026-06-27 19:14:21,840.840 INFO    ] 2026-06-27 19:14:21
[2026-06-27 19:14:21,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:14:22,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:14:22,067.067 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:14:22,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:14:22,268.268 INFO    ] time= 27/06/2026 19:14:22
[2026-06-27 19:14:22,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:14:22,297.297 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:14:22,366.366 INFO    ] No existing commands found in stream
[2026-06-27 19:14:27,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:14:27,383.383 INFO    ] Waiting 3.27 seconds before fallback handling...
[2026-06-27 19:14:31,125.125 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 19:14:31,127.127 INFO    ] Checking for system updates...
[2026-06-27 19:14:31,151.151 INFO    ] 200
[2026-06-27 19:14:31,152.152 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:14:31,190.190 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:14:31,191.191 INFO    ] No update needed
[2026-06-27 19:14:31,193.193 INFO    ] Checking for camera pi updates...
[2026-06-27 19:14:31,216.216 INFO    ] 200
[2026-06-27 19:14:31,217.217 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:14:31,241.241 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:14:31,291.291 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:14:31,292.292 INFO    ] No camera update needed
[2026-06-27 19:14:31,294.294 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:14:31,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:14:31,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:14:31,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:14:33,327.327 INFO    ] ================================================
[2026-06-27 19:14:33,336.336 INFO    ] Launching Daemon at Sat Jun 27 19:14:33 IST 2026
[2026-06-27 19:14:33,342.342 INFO    ] ================================================
[2026-06-27 19:14:33,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:14:33
[2026-06-27 19:14:34,010.010 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:14:34,147.147 INFO    ] Initializing speech engine...
[2026-06-27 19:14:34,155.155 INFO    ] 2026-06-27 19:14:34
[2026-06-27 19:14:34,361.361 INFO    ] 2026-06-27 19:14:34
[2026-06-27 19:14:34,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:14:34,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:14:34,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:14:34,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:14:34,785.785 INFO    ] time= 27/06/2026 19:14:34
[2026-06-27 19:14:34,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:14:34,811.811 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:14:34,878.878 INFO    ] No existing commands found in stream
[2026-06-27 19:14:39,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:14:39,889.889 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-27 19:14:43,254.254 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:14:43,255.255 INFO    ] Checking for system updates...
[2026-06-27 19:14:43,276.276 INFO    ] 200
[2026-06-27 19:14:43,277.277 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:14:43,311.311 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:14:43,312.312 INFO    ] No update needed
[2026-06-27 19:14:43,313.313 INFO    ] Checking for camera pi updates...
[2026-06-27 19:14:43,333.333 INFO    ] 200
[2026-06-27 19:14:43,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:14:43,360.360 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:14:43,400.400 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:14:43,402.402 INFO    ] No camera update needed
[2026-06-27 19:14:43,403.403 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:14:43,405.405 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:14:43,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:14:43,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:14:45,449.449 INFO    ] ================================================
[2026-06-27 19:14:45,465.465 INFO    ] Launching Daemon at Sat Jun 27 19:14:45 IST 2026
[2026-06-27 19:14:45,476.476 INFO    ] ================================================
[2026-06-27 19:14:45,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:14:45
[2026-06-27 19:14:46,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:14:46,310.310 INFO    ] Initializing speech engine...
[2026-06-27 19:14:46,320.320 INFO    ] 2026-06-27 19:14:46
[2026-06-27 19:14:46,527.527 INFO    ] 2026-06-27 19:14:46
[2026-06-27 19:14:46,556.556 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:14:46,740.740 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:14:46,749.749 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:14:46,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:14:46,950.950 INFO    ] time= 27/06/2026 19:14:46
[2026-06-27 19:14:46,970.970 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:14:46,977.977 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:14:47,043.043 INFO    ] No existing commands found in stream
[2026-06-27 19:14:52,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:14:52,056.056 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-27 19:14:55,338.338 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 19:14:55,340.340 INFO    ] Checking for system updates...
[2026-06-27 19:14:55,362.362 INFO    ] 200
[2026-06-27 19:14:55,364.364 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:14:55,394.394 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:14:55,395.395 INFO    ] No update needed
[2026-06-27 19:14:55,396.396 INFO    ] Checking for camera pi updates...
[2026-06-27 19:14:55,416.416 INFO    ] 200
[2026-06-27 19:14:55,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:14:55,440.440 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:14:55,466.466 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:14:55,468.468 INFO    ] No camera update needed
[2026-06-27 19:14:55,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:14:55,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:14:55,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:14:55,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:14:57,517.517 INFO    ] ================================================
[2026-06-27 19:14:57,531.531 INFO    ] Launching Daemon at Sat Jun 27 19:14:57 IST 2026
[2026-06-27 19:14:57,542.542 INFO    ] ================================================
[2026-06-27 19:14:57,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:14:57
[2026-06-27 19:14:58,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:14:58,376.376 INFO    ] Initializing speech engine...
[2026-06-27 19:14:58,381.381 INFO    ] 2026-06-27 19:14:58
[2026-06-27 19:14:58,587.587 INFO    ] 2026-06-27 19:14:58
[2026-06-27 19:14:58,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:14:58,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:14:58,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:14:58,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:14:59,005.005 INFO    ] time= 27/06/2026 19:14:58
[2026-06-27 19:14:59,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:14:59,035.035 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:14:59,103.103 INFO    ] No existing commands found in stream
[2026-06-27 19:15:04,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:15:04,120.120 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-27 19:15:06,945.945 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:15:06,948.948 INFO    ] Checking for system updates...
[2026-06-27 19:15:06,985.985 INFO    ] 200
[2026-06-27 19:15:06,988.988 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:15:07,029.029 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:15:07,031.031 INFO    ] No update needed
[2026-06-27 19:15:07,032.032 INFO    ] Checking for camera pi updates...
[2026-06-27 19:15:07,052.052 INFO    ] 200
[2026-06-27 19:15:07,053.053 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:15:07,079.079 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:15:07,130.130 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:15:07,131.131 INFO    ] No camera update needed
[2026-06-27 19:15:07,133.133 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:15:07,134.134 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:15:07,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:15:07,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:15:09,181.181 INFO    ] ================================================
[2026-06-27 19:15:09,196.196 INFO    ] Launching Daemon at Sat Jun 27 19:15:09 IST 2026
[2026-06-27 19:15:09,207.207 INFO    ] ================================================
[2026-06-27 19:15:09,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:15:09
[2026-06-27 19:15:09,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:15:10,002.002 INFO    ] Initializing speech engine...
[2026-06-27 19:15:10,007.007 INFO    ] 2026-06-27 19:15:10
[2026-06-27 19:15:10,211.211 INFO    ] 2026-06-27 19:15:10
[2026-06-27 19:15:10,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:15:10,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:15:10,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:15:10,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:15:10,636.636 INFO    ] time= 27/06/2026 19:15:10
[2026-06-27 19:15:10,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:15:10,658.658 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:15:10,725.725 INFO    ] No existing commands found in stream
[2026-06-27 19:15:15,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:15:15,737.737 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-27 19:15:16,900.900 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 19:15:16,902.902 INFO    ] Checking for system updates...
[2026-06-27 19:15:16,925.925 INFO    ] 200
[2026-06-27 19:15:16,926.926 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:15:16,956.956 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:15:16,957.957 INFO    ] No update needed
[2026-06-27 19:15:16,959.959 INFO    ] Checking for camera pi updates...
[2026-06-27 19:15:16,978.978 INFO    ] 200
[2026-06-27 19:15:16,980.980 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:15:17,003.003 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:15:17,047.047 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:15:17,049.049 INFO    ] No camera update needed
[2026-06-27 19:15:17,050.050 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:15:17,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:15:17,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:15:17,057.057 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:15:19,096.096 INFO    ] ================================================
[2026-06-27 19:15:19,111.111 INFO    ] Launching Daemon at Sat Jun 27 19:15:19 IST 2026
[2026-06-27 19:15:19,122.122 INFO    ] ================================================
[2026-06-27 19:15:19,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:15:19
[2026-06-27 19:15:19,874.874 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:15:20,028.028 INFO    ] Initializing speech engine...
[2026-06-27 19:15:20,034.034 INFO    ] 2026-06-27 19:15:20
[2026-06-27 19:15:20,244.244 INFO    ] 2026-06-27 19:15:20
[2026-06-27 19:15:20,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:15:20,460.460 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:15:20,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:15:20,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:15:20,668.668 INFO    ] time= 27/06/2026 19:15:20
[2026-06-27 19:15:20,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:15:20,698.698 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:15:20,765.765 INFO    ] No existing commands found in stream
[2026-06-27 19:15:25,780.780 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:15:25,784.784 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-27 19:15:26,671.671 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 19:15:26,673.673 INFO    ] Checking for system updates...
[2026-06-27 19:15:26,694.694 INFO    ] 200
[2026-06-27 19:15:26,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:15:26,728.728 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:15:26,729.729 INFO    ] No update needed
[2026-06-27 19:15:26,730.730 INFO    ] Checking for camera pi updates...
[2026-06-27 19:15:26,750.750 INFO    ] 200
[2026-06-27 19:15:26,752.752 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:15:26,776.776 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:15:26,819.819 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:15:26,820.820 INFO    ] No camera update needed
[2026-06-27 19:15:26,822.822 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:15:26,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:15:26,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:15:26,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:15:28,871.871 INFO    ] ================================================
[2026-06-27 19:15:28,887.887 INFO    ] Launching Daemon at Sat Jun 27 19:15:28 IST 2026
[2026-06-27 19:15:28,897.897 INFO    ] ================================================
[2026-06-27 19:15:29,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:15:29
[2026-06-27 19:15:29,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:15:29,723.723 INFO    ] Initializing speech engine...
[2026-06-27 19:15:29,728.728 INFO    ] 2026-06-27 19:15:29
[2026-06-27 19:15:29,934.934 INFO    ] 2026-06-27 19:15:29
[2026-06-27 19:15:29,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:15:30,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:15:30,158.158 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:15:30,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:15:30,356.356 INFO    ] time= 27/06/2026 19:15:30
[2026-06-27 19:15:30,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:15:30,384.384 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:15:30,451.451 INFO    ] No existing commands found in stream
[2026-06-27 19:15:35,465.465 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:15:35,468.468 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-27 19:15:37,878.878 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 19:15:37,880.880 INFO    ] Checking for system updates...
[2026-06-27 19:15:37,902.902 INFO    ] 200
[2026-06-27 19:15:37,903.903 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:15:37,936.936 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:15:37,937.937 INFO    ] No update needed
[2026-06-27 19:15:37,938.938 INFO    ] Checking for camera pi updates...
[2026-06-27 19:15:37,959.959 INFO    ] 200
[2026-06-27 19:15:37,961.961 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:15:37,985.985 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:15:38,029.029 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:15:38,030.030 INFO    ] No camera update needed
[2026-06-27 19:15:38,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:15:38,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:15:38,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:15:38,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:15:40,077.077 INFO    ] ================================================
[2026-06-27 19:15:40,092.092 INFO    ] Launching Daemon at Sat Jun 27 19:15:40 IST 2026
[2026-06-27 19:15:40,103.103 INFO    ] ================================================
[2026-06-27 19:15:40,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:15:40
[2026-06-27 19:15:40,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:15:40,892.892 INFO    ] Initializing speech engine...
[2026-06-27 19:15:40,902.902 INFO    ] 2026-06-27 19:15:40
[2026-06-27 19:15:41,086.086 INFO    ] 2026-06-27 19:15:41
[2026-06-27 19:15:41,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:15:41,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:15:41,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:15:41,396.396 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:15:41,401.401 INFO    ] time= 27/06/2026 19:15:41
[2026-06-27 19:15:41,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:15:41,448.448 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:15:41,538.538 INFO    ] No existing commands found in stream
[2026-06-27 19:15:46,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:15:46,573.573 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-27 19:15:50,634.634 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:15:50,636.636 INFO    ] Checking for system updates...
[2026-06-27 19:15:50,656.656 INFO    ] 200
[2026-06-27 19:15:50,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:15:50,689.689 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:15:50,690.690 INFO    ] No update needed
[2026-06-27 19:15:50,692.692 INFO    ] Checking for camera pi updates...
[2026-06-27 19:15:50,711.711 INFO    ] 200
[2026-06-27 19:15:50,712.712 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:15:50,738.738 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:15:50,876.876 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:15:50,878.878 INFO    ] No camera update needed
[2026-06-27 19:15:50,879.879 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:15:50,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:15:50,883.883 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:15:50,886.886 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:15:52,925.925 INFO    ] ================================================
[2026-06-27 19:15:52,940.940 INFO    ] Launching Daemon at Sat Jun 27 19:15:52 IST 2026
[2026-06-27 19:15:52,951.951 INFO    ] ================================================
[2026-06-27 19:15:53,312.312 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:15:53
[2026-06-27 19:15:53,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:15:53,775.775 INFO    ] Initializing speech engine...
[2026-06-27 19:15:53,781.781 INFO    ] 2026-06-27 19:15:53
[2026-06-27 19:15:53,988.988 INFO    ] 2026-06-27 19:15:53
[2026-06-27 19:15:54,017.017 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:15:54,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:15:54,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:15:54,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:15:54,406.406 INFO    ] time= 27/06/2026 19:15:54
[2026-06-27 19:15:54,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:15:54,435.435 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:15:54,502.502 INFO    ] No existing commands found in stream
[2026-06-27 19:15:59,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:15:59,519.519 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-27 19:16:04,971.971 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:16:04,973.973 INFO    ] Checking for system updates...
[2026-06-27 19:16:04,994.994 INFO    ] 200
[2026-06-27 19:16:04,996.996 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:16:05,027.027 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:16:05,029.029 INFO    ] No update needed
[2026-06-27 19:16:05,030.030 INFO    ] Checking for camera pi updates...
[2026-06-27 19:16:05,051.051 INFO    ] 200
[2026-06-27 19:16:05,052.052 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:16:05,076.076 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:16:05,116.116 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:16:05,118.118 INFO    ] No camera update needed
[2026-06-27 19:16:05,119.119 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:16:05,120.120 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:16:05,123.123 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:16:05,126.126 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:16:07,170.170 INFO    ] ================================================
[2026-06-27 19:16:07,186.186 INFO    ] Launching Daemon at Sat Jun 27 19:16:07 IST 2026
[2026-06-27 19:16:07,197.197 INFO    ] ================================================
[2026-06-27 19:16:07,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:16:07
[2026-06-27 19:16:07,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:16:08,027.027 INFO    ] Initializing speech engine...
[2026-06-27 19:16:08,035.035 INFO    ] 2026-06-27 19:16:08
[2026-06-27 19:16:08,255.255 INFO    ] 2026-06-27 19:16:08
[2026-06-27 19:16:08,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:16:08,413.413 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:16:08,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:16:08,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:16:08,699.699 INFO    ] time= 27/06/2026 19:16:08
[2026-06-27 19:16:08,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:16:08,707.707 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:16:08,773.773 INFO    ] No existing commands found in stream
[2026-06-27 19:16:13,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:16:13,791.791 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-27 19:16:17,670.670 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:16:17,672.672 INFO    ] Checking for system updates...
[2026-06-27 19:16:17,694.694 INFO    ] 200
[2026-06-27 19:16:17,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:16:17,730.730 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:16:17,731.731 INFO    ] No update needed
[2026-06-27 19:16:17,733.733 INFO    ] Checking for camera pi updates...
[2026-06-27 19:16:17,755.755 INFO    ] 200
[2026-06-27 19:16:17,757.757 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:16:17,795.795 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:16:17,849.849 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:16:17,852.852 INFO    ] No camera update needed
[2026-06-27 19:16:17,855.855 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:16:17,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:16:17,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:16:17,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:16:19,911.911 INFO    ] ================================================
[2026-06-27 19:16:19,927.927 INFO    ] Launching Daemon at Sat Jun 27 19:16:19 IST 2026
[2026-06-27 19:16:19,938.938 INFO    ] ================================================
[2026-06-27 19:16:20,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:16:20
[2026-06-27 19:16:20,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:16:20,815.815 INFO    ] Initializing speech engine...
[2026-06-27 19:16:20,821.821 INFO    ] 2026-06-27 19:16:20
[2026-06-27 19:16:21,029.029 INFO    ] 2026-06-27 19:16:21
[2026-06-27 19:16:21,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:16:21,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:16:21,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:16:21,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:16:21,452.452 INFO    ] time= 27/06/2026 19:16:21
[2026-06-27 19:16:21,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:16:21,480.480 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:16:21,548.548 INFO    ] No existing commands found in stream
[2026-06-27 19:16:26,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:16:26,560.560 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-27 19:16:29,229.229 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:16:29,231.231 INFO    ] Checking for system updates...
[2026-06-27 19:16:29,252.252 INFO    ] 200
[2026-06-27 19:16:29,253.253 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:16:29,284.284 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:16:29,285.285 INFO    ] No update needed
[2026-06-27 19:16:29,286.286 INFO    ] Checking for camera pi updates...
[2026-06-27 19:16:29,307.307 INFO    ] 200
[2026-06-27 19:16:29,309.309 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:16:29,332.332 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:16:29,384.384 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:16:29,386.386 INFO    ] No camera update needed
[2026-06-27 19:16:29,387.387 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:16:29,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:16:29,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:16:29,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:16:31,432.432 INFO    ] ================================================
[2026-06-27 19:16:31,447.447 INFO    ] Launching Daemon at Sat Jun 27 19:16:31 IST 2026
[2026-06-27 19:16:31,458.458 INFO    ] ================================================
[2026-06-27 19:16:31,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:16:31
[2026-06-27 19:16:32,176.176 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:16:32,321.321 INFO    ] Initializing speech engine...
[2026-06-27 19:16:32,338.338 INFO    ] 2026-06-27 19:16:32
[2026-06-27 19:16:32,563.563 INFO    ] 2026-06-27 19:16:32
[2026-06-27 19:16:32,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:16:32,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:16:32,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:16:32,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:16:33,007.007 INFO    ] time= 27/06/2026 19:16:32
[2026-06-27 19:16:33,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:16:33,014.014 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:16:33,081.081 INFO    ] No existing commands found in stream
[2026-06-27 19:16:38,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:16:38,095.095 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-27 19:16:39,081.081 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:16:39,083.083 INFO    ] Checking for system updates...
[2026-06-27 19:16:39,104.104 INFO    ] 200
[2026-06-27 19:16:39,105.105 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:16:39,139.139 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:16:39,140.140 INFO    ] No update needed
[2026-06-27 19:16:39,142.142 INFO    ] Checking for camera pi updates...
[2026-06-27 19:16:39,161.161 INFO    ] 200
[2026-06-27 19:16:39,162.162 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:16:39,189.189 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:16:39,236.236 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:16:39,237.237 INFO    ] No camera update needed
[2026-06-27 19:16:39,239.239 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:16:39,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:16:39,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:16:39,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:16:41,285.285 INFO    ] ================================================
[2026-06-27 19:16:41,300.300 INFO    ] Launching Daemon at Sat Jun 27 19:16:41 IST 2026
[2026-06-27 19:16:41,310.310 INFO    ] ================================================
[2026-06-27 19:16:41,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:16:41
[2026-06-27 19:16:41,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:16:42,119.119 INFO    ] Initializing speech engine...
[2026-06-27 19:16:42,124.124 INFO    ] 2026-06-27 19:16:42
[2026-06-27 19:16:42,330.330 INFO    ] 2026-06-27 19:16:42
[2026-06-27 19:16:42,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:16:42,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:16:42,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:16:42,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:16:42,771.771 INFO    ] time= 27/06/2026 19:16:42
[2026-06-27 19:16:42,777.777 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:16:42,778.778 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:16:42,846.846 INFO    ] No existing commands found in stream
[2026-06-27 19:16:47,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:16:47,864.864 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-27 19:16:52,217.217 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:16:52,219.219 INFO    ] Checking for system updates...
[2026-06-27 19:16:52,241.241 INFO    ] 200
[2026-06-27 19:16:52,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:16:52,273.273 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:16:52,275.275 INFO    ] No update needed
[2026-06-27 19:16:52,276.276 INFO    ] Checking for camera pi updates...
[2026-06-27 19:16:52,296.296 INFO    ] 200
[2026-06-27 19:16:52,297.297 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:16:52,320.320 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:16:52,366.366 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:16:52,368.368 INFO    ] No camera update needed
[2026-06-27 19:16:52,370.370 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:16:52,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:16:52,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:16:52,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:16:54,420.420 INFO    ] ================================================
[2026-06-27 19:16:54,435.435 INFO    ] Launching Daemon at Sat Jun 27 19:16:54 IST 2026
[2026-06-27 19:16:54,446.446 INFO    ] ================================================
[2026-06-27 19:16:54,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:16:54
[2026-06-27 19:16:55,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:16:55,271.271 INFO    ] Initializing speech engine...
[2026-06-27 19:16:55,282.282 INFO    ] 2026-06-27 19:16:55
[2026-06-27 19:16:55,486.486 INFO    ] 2026-06-27 19:16:55
[2026-06-27 19:16:55,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:16:55,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:16:55,712.712 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:16:55,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:16:55,910.910 INFO    ] time= 27/06/2026 19:16:55
[2026-06-27 19:16:55,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:16:55,938.938 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:16:56,006.006 INFO    ] No existing commands found in stream
[2026-06-27 19:17:01,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:17:01,015.015 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-27 19:17:03,917.917 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 19:17:03,919.919 INFO    ] Checking for system updates...
[2026-06-27 19:17:03,941.941 INFO    ] 200
[2026-06-27 19:17:03,943.943 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:17:03,974.974 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:17:03,976.976 INFO    ] No update needed
[2026-06-27 19:17:03,977.977 INFO    ] Checking for camera pi updates...
[2026-06-27 19:17:03,998.998 INFO    ] 200
[2026-06-27 19:17:04,000.000 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:17:04,028.028 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:17:04,070.070 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:17:04,072.072 INFO    ] No camera update needed
[2026-06-27 19:17:04,073.073 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:17:04,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:17:04,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:17:04,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:17:06,121.121 INFO    ] ================================================
[2026-06-27 19:17:06,137.137 INFO    ] Launching Daemon at Sat Jun 27 19:17:06 IST 2026
[2026-06-27 19:17:06,149.149 INFO    ] ================================================
[2026-06-27 19:17:06,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:17:06
[2026-06-27 19:17:06,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:17:06,931.931 INFO    ] Initializing speech engine...
[2026-06-27 19:17:06,939.939 INFO    ] 2026-06-27 19:17:06
[2026-06-27 19:17:07,155.155 INFO    ] 2026-06-27 19:17:07
[2026-06-27 19:17:07,185.185 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:17:07,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:17:07,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:17:07,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:17:07,569.569 INFO    ] time= 27/06/2026 19:17:07
[2026-06-27 19:17:07,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:17:07,614.614 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:17:07,681.681 INFO    ] No existing commands found in stream
[2026-06-27 19:17:12,691.691 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:17:12,694.694 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-27 19:17:15,047.047 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:17:15,049.049 INFO    ] Checking for system updates...
[2026-06-27 19:17:15,071.071 INFO    ] 200
[2026-06-27 19:17:15,072.072 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:17:15,102.102 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:17:15,104.104 INFO    ] No update needed
[2026-06-27 19:17:15,105.105 INFO    ] Checking for camera pi updates...
[2026-06-27 19:17:15,127.127 INFO    ] 200
[2026-06-27 19:17:15,129.129 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:17:15,152.152 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:17:15,195.195 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:17:15,197.197 INFO    ] No camera update needed
[2026-06-27 19:17:15,198.198 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:17:15,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:17:15,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:17:15,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:17:17,248.248 INFO    ] ================================================
[2026-06-27 19:17:17,264.264 INFO    ] Launching Daemon at Sat Jun 27 19:17:17 IST 2026
[2026-06-27 19:17:17,276.276 INFO    ] ================================================
[2026-06-27 19:17:17,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:17:17
[2026-06-27 19:17:17,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:17:18,131.131 INFO    ] Initializing speech engine...
[2026-06-27 19:17:18,144.144 INFO    ] 2026-06-27 19:17:18
[2026-06-27 19:17:18,360.360 INFO    ] 2026-06-27 19:17:18
[2026-06-27 19:17:18,389.389 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:17:18,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:17:18,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:17:18,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:17:18,805.805 INFO    ] time= 27/06/2026 19:17:18
[2026-06-27 19:17:18,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:17:18,812.812 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:17:18,879.879 INFO    ] No existing commands found in stream
[2026-06-27 19:17:23,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:17:23,908.908 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-27 19:17:24,422.422 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:17:24,423.423 INFO    ] Checking for system updates...
[2026-06-27 19:17:24,445.445 INFO    ] 200
[2026-06-27 19:17:24,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:17:24,480.480 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:17:24,482.482 INFO    ] No update needed
[2026-06-27 19:17:24,485.485 INFO    ] Checking for camera pi updates...
[2026-06-27 19:17:24,505.505 INFO    ] 200
[2026-06-27 19:17:24,506.506 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:17:24,530.530 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:17:24,578.578 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:17:24,579.579 INFO    ] No camera update needed
[2026-06-27 19:17:24,581.581 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:17:24,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:17:24,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:17:24,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:17:26,631.631 INFO    ] ================================================
[2026-06-27 19:17:26,648.648 INFO    ] Launching Daemon at Sat Jun 27 19:17:26 IST 2026
[2026-06-27 19:17:26,659.659 INFO    ] ================================================
[2026-06-27 19:17:27,015.015 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:17:27
[2026-06-27 19:17:27,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:17:27,477.477 INFO    ] Initializing speech engine...
[2026-06-27 19:17:27,482.482 INFO    ] 2026-06-27 19:17:27
[2026-06-27 19:17:27,688.688 INFO    ] 2026-06-27 19:17:27
[2026-06-27 19:17:27,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:17:27,903.903 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:17:27,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:17:28,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:17:28,112.112 INFO    ] time= 27/06/2026 19:17:28
[2026-06-27 19:17:28,134.134 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:17:28,140.140 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:17:28,207.207 INFO    ] No existing commands found in stream
[2026-06-27 19:17:33,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:17:33,219.219 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-27 19:17:37,496.496 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:17:37,498.498 INFO    ] Checking for system updates...
[2026-06-27 19:17:37,520.520 INFO    ] 200
[2026-06-27 19:17:37,521.521 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:17:37,552.552 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:17:37,554.554 INFO    ] No update needed
[2026-06-27 19:17:37,555.555 INFO    ] Checking for camera pi updates...
[2026-06-27 19:17:37,576.576 INFO    ] 200
[2026-06-27 19:17:37,577.577 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:17:37,601.601 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:17:37,650.650 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:17:37,651.651 INFO    ] No camera update needed
[2026-06-27 19:17:37,653.653 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:17:37,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:17:37,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:17:37,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:17:39,700.700 INFO    ] ================================================
[2026-06-27 19:17:39,716.716 INFO    ] Launching Daemon at Sat Jun 27 19:17:39 IST 2026
[2026-06-27 19:17:39,728.728 INFO    ] ================================================
[2026-06-27 19:17:40,063.063 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:17:40
[2026-06-27 19:17:40,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:17:40,518.518 INFO    ] Initializing speech engine...
[2026-06-27 19:17:40,528.528 INFO    ] 2026-06-27 19:17:40
[2026-06-27 19:17:40,733.733 INFO    ] 2026-06-27 19:17:40
[2026-06-27 19:17:40,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:17:40,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:17:40,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:17:41,099.099 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:17:41,152.152 INFO    ] time= 27/06/2026 19:17:41
[2026-06-27 19:17:41,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:17:41,181.181 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:17:41,249.249 INFO    ] No existing commands found in stream
[2026-06-27 19:17:46,258.258 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:17:46,260.260 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-27 19:17:48,530.530 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:17:48,531.531 INFO    ] Checking for system updates...
[2026-06-27 19:17:48,552.552 INFO    ] 200
[2026-06-27 19:17:48,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:17:48,585.585 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:17:48,587.587 INFO    ] No update needed
[2026-06-27 19:17:48,588.588 INFO    ] Checking for camera pi updates...
[2026-06-27 19:17:48,608.608 INFO    ] 200
[2026-06-27 19:17:48,609.609 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:17:48,635.635 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:17:48,690.690 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:17:48,693.693 INFO    ] No camera update needed
[2026-06-27 19:17:48,696.696 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:17:48,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:17:48,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:17:48,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:17:50,755.755 INFO    ] ================================================
[2026-06-27 19:17:50,770.770 INFO    ] Launching Daemon at Sat Jun 27 19:17:50 IST 2026
[2026-06-27 19:17:50,781.781 INFO    ] ================================================
[2026-06-27 19:17:51,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:17:51
[2026-06-27 19:17:51,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:17:51,577.577 INFO    ] Initializing speech engine...
[2026-06-27 19:17:51,589.589 INFO    ] 2026-06-27 19:17:51
[2026-06-27 19:17:51,798.798 INFO    ] 2026-06-27 19:17:51
[2026-06-27 19:17:51,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:17:52,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:17:52,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:17:52,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:17:52,230.230 INFO    ] time= 27/06/2026 19:17:52
[2026-06-27 19:17:52,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:17:52,262.262 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:17:52,330.330 INFO    ] No existing commands found in stream
[2026-06-27 19:17:57,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:17:57,347.347 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-27 19:17:58,529.529 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 19:17:58,531.531 INFO    ] Checking for system updates...
[2026-06-27 19:17:58,554.554 INFO    ] 200
[2026-06-27 19:17:58,555.555 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:17:58,586.586 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:17:58,587.587 INFO    ] No update needed
[2026-06-27 19:17:58,589.589 INFO    ] Checking for camera pi updates...
[2026-06-27 19:17:58,611.611 INFO    ] 200
[2026-06-27 19:17:58,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:17:58,636.636 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:17:58,774.774 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:17:58,776.776 INFO    ] No camera update needed
[2026-06-27 19:17:58,777.777 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:17:58,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:17:58,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:17:58,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:18:00,824.824 INFO    ] ================================================
[2026-06-27 19:18:00,839.839 INFO    ] Launching Daemon at Sat Jun 27 19:18:00 IST 2026
[2026-06-27 19:18:00,850.850 INFO    ] ================================================
[2026-06-27 19:18:01,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:18:01
[2026-06-27 19:18:01,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:18:01,853.853 INFO    ] Initializing speech engine...
[2026-06-27 19:18:01,858.858 INFO    ] 2026-06-27 19:18:01
[2026-06-27 19:18:02,072.072 INFO    ] 2026-06-27 19:18:02
[2026-06-27 19:18:02,094.094 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:18:02,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:18:02,235.235 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:18:02,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:18:02,387.387 INFO    ] time= 27/06/2026 19:18:02
[2026-06-27 19:18:02,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:18:02,407.407 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:18:02,513.513 INFO    ] No existing commands found in stream
[2026-06-27 19:18:07,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:18:07,527.527 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-27 19:18:11,802.802 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 19:18:11,804.804 INFO    ] Checking for system updates...
[2026-06-27 19:18:11,824.824 INFO    ] 200
[2026-06-27 19:18:11,826.826 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:18:11,860.860 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:18:11,861.861 INFO    ] No update needed
[2026-06-27 19:18:11,862.862 INFO    ] Checking for camera pi updates...
[2026-06-27 19:18:11,882.882 INFO    ] 200
[2026-06-27 19:18:11,883.883 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:18:11,908.908 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:18:11,949.949 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:18:11,950.950 INFO    ] No camera update needed
[2026-06-27 19:18:11,952.952 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:18:11,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:18:11,956.956 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:18:11,959.959 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:18:14,999.999 INFO    ] ================================================
[2026-06-27 19:18:14,015.015 INFO    ] Launching Daemon at Sat Jun 27 19:18:14 IST 2026
[2026-06-27 19:18:14,027.027 INFO    ] ================================================
[2026-06-27 19:18:14,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:18:14
[2026-06-27 19:18:14,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:18:14,889.889 INFO    ] Initializing speech engine...
[2026-06-27 19:18:14,894.894 INFO    ] 2026-06-27 19:18:14
[2026-06-27 19:18:15,101.101 INFO    ] 2026-06-27 19:18:15
[2026-06-27 19:18:15,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:18:15,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:18:15,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:18:15,519.519 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:18:15,546.546 INFO    ] time= 27/06/2026 19:18:15
[2026-06-27 19:18:15,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:18:15,554.554 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:18:15,622.622 INFO    ] No existing commands found in stream
[2026-06-27 19:18:20,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:18:20,640.640 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-27 19:18:21,140.140 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:18:21,142.142 INFO    ] Checking for system updates...
[2026-06-27 19:18:21,165.165 INFO    ] 200
[2026-06-27 19:18:21,167.167 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:18:21,198.198 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:18:21,200.200 INFO    ] No update needed
[2026-06-27 19:18:21,201.201 INFO    ] Checking for camera pi updates...
[2026-06-27 19:18:21,221.221 INFO    ] 200
[2026-06-27 19:18:21,223.223 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:18:21,247.247 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:18:21,279.279 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:18:21,281.281 INFO    ] No camera update needed
[2026-06-27 19:18:21,282.282 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:18:21,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:18:21,287.287 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:18:21,290.290 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:18:23,332.332 INFO    ] ================================================
[2026-06-27 19:18:23,348.348 INFO    ] Launching Daemon at Sat Jun 27 19:18:23 IST 2026
[2026-06-27 19:18:23,360.360 INFO    ] ================================================
[2026-06-27 19:18:23,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:18:23
[2026-06-27 19:18:24,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:18:24,167.167 INFO    ] Initializing speech engine...
[2026-06-27 19:18:24,180.180 INFO    ] 2026-06-27 19:18:24
[2026-06-27 19:18:24,387.387 INFO    ] 2026-06-27 19:18:24
[2026-06-27 19:18:24,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:18:24,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:18:24,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:18:24,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:18:24,829.829 INFO    ] time= 27/06/2026 19:18:24
[2026-06-27 19:18:24,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:18:24,836.836 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:18:24,903.903 INFO    ] No existing commands found in stream
[2026-06-27 19:18:29,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:18:29,915.915 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-27 19:18:31,532.532 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 19:18:31,534.534 INFO    ] Checking for system updates...
[2026-06-27 19:18:31,560.560 INFO    ] 200
[2026-06-27 19:18:31,562.562 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:18:31,603.603 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:18:31,605.605 INFO    ] No update needed
[2026-06-27 19:18:31,607.607 INFO    ] Checking for camera pi updates...
[2026-06-27 19:18:31,629.629 INFO    ] 200
[2026-06-27 19:18:31,631.631 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:18:31,658.658 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:18:31,696.696 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:18:31,698.698 INFO    ] No camera update needed
[2026-06-27 19:18:31,700.700 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:18:31,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:18:31,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:18:31,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:18:33,748.748 INFO    ] ================================================
[2026-06-27 19:18:33,764.764 INFO    ] Launching Daemon at Sat Jun 27 19:18:33 IST 2026
[2026-06-27 19:18:33,776.776 INFO    ] ================================================
[2026-06-27 19:18:34,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:18:34
[2026-06-27 19:18:34,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:18:34,594.594 INFO    ] Initializing speech engine...
[2026-06-27 19:18:34,599.599 INFO    ] 2026-06-27 19:18:34
[2026-06-27 19:18:34,806.806 INFO    ] 2026-06-27 19:18:34
[2026-06-27 19:18:34,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:18:35,022.022 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:18:35,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:18:35,183.183 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:18:35,232.232 INFO    ] time= 27/06/2026 19:18:35
[2026-06-27 19:18:35,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:18:35,261.261 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:18:35,327.327 INFO    ] No existing commands found in stream
[2026-06-27 19:18:40,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:18:40,340.340 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-27 19:18:40,756.756 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:18:40,758.758 INFO    ] Checking for system updates...
[2026-06-27 19:18:40,781.781 INFO    ] 200
[2026-06-27 19:18:40,783.783 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:18:40,819.819 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:18:40,820.820 INFO    ] No update needed
[2026-06-27 19:18:40,822.822 INFO    ] Checking for camera pi updates...
[2026-06-27 19:18:40,843.843 INFO    ] 200
[2026-06-27 19:18:40,845.845 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:18:40,868.868 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:18:40,912.912 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:18:40,913.913 INFO    ] No camera update needed
[2026-06-27 19:18:40,915.915 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:18:40,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:18:40,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:18:40,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:18:42,956.956 INFO    ] ================================================
[2026-06-27 19:18:42,965.965 INFO    ] Launching Daemon at Sat Jun 27 19:18:42 IST 2026
[2026-06-27 19:18:42,971.971 INFO    ] ================================================
[2026-06-27 19:18:43,274.274 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:18:43
[2026-06-27 19:18:43,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:18:43,723.723 INFO    ] Initializing speech engine...
[2026-06-27 19:18:43,727.727 INFO    ] 2026-06-27 19:18:43
[2026-06-27 19:18:43,921.921 INFO    ] 2026-06-27 19:18:43
[2026-06-27 19:18:43,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:18:44,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:18:44,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:18:44,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:18:44,378.378 INFO    ] time= 27/06/2026 19:18:44
[2026-06-27 19:18:44,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:18:44,451.451 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:18:44,531.531 INFO    ] No existing commands found in stream
[2026-06-27 19:18:49,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:18:49,542.542 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-27 19:18:53,502.502 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 19:18:53,503.503 INFO    ] Checking for system updates...
[2026-06-27 19:18:53,524.524 INFO    ] 200
[2026-06-27 19:18:53,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:18:53,561.561 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:18:53,562.562 INFO    ] No update needed
[2026-06-27 19:18:53,564.564 INFO    ] Checking for camera pi updates...
[2026-06-27 19:18:53,584.584 INFO    ] 200
[2026-06-27 19:18:53,585.585 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:18:53,608.608 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:18:53,672.672 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:18:53,674.674 INFO    ] No camera update needed
[2026-06-27 19:18:53,675.675 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:18:53,676.676 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:18:53,679.679 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:18:53,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:18:55,722.722 INFO    ] ================================================
[2026-06-27 19:18:55,738.738 INFO    ] Launching Daemon at Sat Jun 27 19:18:55 IST 2026
[2026-06-27 19:18:55,749.749 INFO    ] ================================================
[2026-06-27 19:18:56,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:18:56
[2026-06-27 19:18:56,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:18:56,587.587 INFO    ] Initializing speech engine...
[2026-06-27 19:18:56,592.592 INFO    ] 2026-06-27 19:18:56
[2026-06-27 19:18:56,797.797 INFO    ] 2026-06-27 19:18:56
[2026-06-27 19:18:56,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:18:57,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:18:57,062.062 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:18:57,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:18:57,310.310 INFO    ] time= 27/06/2026 19:18:57
[2026-06-27 19:18:57,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:18:57,319.319 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:18:57,392.392 INFO    ] No existing commands found in stream
[2026-06-27 19:19:02,425.425 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:19:02,426.426 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-27 19:19:02,873.873 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 19:19:02,876.876 INFO    ] Checking for system updates...
[2026-06-27 19:19:02,916.916 INFO    ] 200
[2026-06-27 19:19:02,918.918 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:19:02,971.971 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:19:02,973.973 INFO    ] No update needed
[2026-06-27 19:19:02,976.976 INFO    ] Checking for camera pi updates...
[2026-06-27 19:19:03,010.010 INFO    ] 200
[2026-06-27 19:19:03,012.012 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:19:03,053.053 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:19:03,083.083 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:19:03,084.084 INFO    ] No camera update needed
[2026-06-27 19:19:03,085.085 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:19:03,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:19:03,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:19:03,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:19:05,132.132 INFO    ] ================================================
[2026-06-27 19:19:05,148.148 INFO    ] Launching Daemon at Sat Jun 27 19:19:05 IST 2026
[2026-06-27 19:19:05,160.160 INFO    ] ================================================
[2026-06-27 19:19:05,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:19:05
[2026-06-27 19:19:05,820.820 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:19:05,951.951 INFO    ] Initializing speech engine...
[2026-06-27 19:19:05,956.956 INFO    ] 2026-06-27 19:19:05
[2026-06-27 19:19:06,173.173 INFO    ] 2026-06-27 19:19:06
[2026-06-27 19:19:06,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:19:06,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:19:06,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:19:06,550.550 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:19:06,600.600 INFO    ] time= 27/06/2026 19:19:06
[2026-06-27 19:19:06,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:19:06,628.628 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:19:06,695.695 INFO    ] No existing commands found in stream
[2026-06-27 19:19:11,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:19:11,712.712 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-27 19:19:14,122.122 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 19:19:14,124.124 INFO    ] Checking for system updates...
[2026-06-27 19:19:14,145.145 INFO    ] 200
[2026-06-27 19:19:14,146.146 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:19:14,177.177 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:19:14,178.178 INFO    ] No update needed
[2026-06-27 19:19:14,179.179 INFO    ] Checking for camera pi updates...
[2026-06-27 19:19:14,198.198 INFO    ] 200
[2026-06-27 19:19:14,200.200 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:19:14,225.225 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:19:14,270.270 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:19:14,272.272 INFO    ] No camera update needed
[2026-06-27 19:19:14,273.273 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:19:14,274.274 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:19:14,277.277 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:19:14,280.280 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:19:16,321.321 INFO    ] ================================================
[2026-06-27 19:19:16,336.336 INFO    ] Launching Daemon at Sat Jun 27 19:19:16 IST 2026
[2026-06-27 19:19:16,347.347 INFO    ] ================================================
[2026-06-27 19:19:16,691.691 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:19:16
[2026-06-27 19:19:17,004.004 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:19:17,139.139 INFO    ] Initializing speech engine...
[2026-06-27 19:19:17,151.151 INFO    ] 2026-06-27 19:19:17
[2026-06-27 19:19:17,359.359 INFO    ] 2026-06-27 19:19:17
[2026-06-27 19:19:17,390.390 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:19:17,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:19:17,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:19:17,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:19:17,784.784 INFO    ] time= 27/06/2026 19:19:17
[2026-06-27 19:19:17,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:19:17,812.812 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:19:17,880.880 INFO    ] No existing commands found in stream
[2026-06-27 19:19:22,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:19:22,892.892 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-27 19:19:27,230.230 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:19:27,232.232 INFO    ] Checking for system updates...
[2026-06-27 19:19:27,252.252 INFO    ] 200
[2026-06-27 19:19:27,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:19:27,284.284 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:19:27,286.286 INFO    ] No update needed
[2026-06-27 19:19:27,287.287 INFO    ] Checking for camera pi updates...
[2026-06-27 19:19:27,307.307 INFO    ] 200
[2026-06-27 19:19:27,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:19:27,333.333 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:19:27,378.378 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:19:27,379.379 INFO    ] No camera update needed
[2026-06-27 19:19:27,380.380 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:19:27,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:19:27,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:19:27,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:19:29,428.428 INFO    ] ================================================
[2026-06-27 19:19:29,444.444 INFO    ] Launching Daemon at Sat Jun 27 19:19:29 IST 2026
[2026-06-27 19:19:29,455.455 INFO    ] ================================================
[2026-06-27 19:19:29,811.811 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:19:29
[2026-06-27 19:19:30,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:19:30,293.293 INFO    ] Initializing speech engine...
[2026-06-27 19:19:30,299.299 INFO    ] 2026-06-27 19:19:30
[2026-06-27 19:19:30,506.506 INFO    ] 2026-06-27 19:19:30
[2026-06-27 19:19:30,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:19:30,721.721 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:19:30,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:19:30,907.907 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:19:30,943.943 INFO    ] time= 27/06/2026 19:19:30
[2026-06-27 19:19:30,953.953 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:19:30,960.960 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:19:31,028.028 INFO    ] No existing commands found in stream
[2026-06-27 19:19:36,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:19:36,046.046 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-27 19:19:38,229.229 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 19:19:38,230.230 INFO    ] Checking for system updates...
[2026-06-27 19:19:38,251.251 INFO    ] 200
[2026-06-27 19:19:38,252.252 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:19:38,283.283 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:19:38,285.285 INFO    ] No update needed
[2026-06-27 19:19:38,286.286 INFO    ] Checking for camera pi updates...
[2026-06-27 19:19:38,306.306 INFO    ] 200
[2026-06-27 19:19:38,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:19:38,331.331 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:19:38,377.377 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:19:38,378.378 INFO    ] No camera update needed
[2026-06-27 19:19:38,380.380 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:19:38,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:19:38,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:19:38,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:19:40,427.427 INFO    ] ================================================
[2026-06-27 19:19:40,442.442 INFO    ] Launching Daemon at Sat Jun 27 19:19:40 IST 2026
[2026-06-27 19:19:40,453.453 INFO    ] ================================================
[2026-06-27 19:19:40,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:19:40
[2026-06-27 19:19:41,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:19:41,293.293 INFO    ] Initializing speech engine...
[2026-06-27 19:19:41,296.296 INFO    ] 2026-06-27 19:19:41
[2026-06-27 19:19:41,506.506 INFO    ] 2026-06-27 19:19:41
[2026-06-27 19:19:41,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:19:41,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:19:41,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:19:41,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:19:41,959.959 INFO    ] time= 27/06/2026 19:19:41
[2026-06-27 19:19:41,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:19:41,966.966 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:19:42,034.034 INFO    ] No existing commands found in stream
[2026-06-27 19:19:47,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:19:47,052.052 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-27 19:19:48,384.384 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 19:19:48,385.385 INFO    ] Checking for system updates...
[2026-06-27 19:19:48,407.407 INFO    ] 200
[2026-06-27 19:19:48,409.409 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:19:48,439.439 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:19:48,440.440 INFO    ] No update needed
[2026-06-27 19:19:48,442.442 INFO    ] Checking for camera pi updates...
[2026-06-27 19:19:48,461.461 INFO    ] 200
[2026-06-27 19:19:48,463.463 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:19:48,488.488 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:19:48,536.536 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:19:48,537.537 INFO    ] No camera update needed
[2026-06-27 19:19:48,538.538 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:19:48,540.540 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:19:48,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:19:48,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:19:50,584.584 INFO    ] ================================================
[2026-06-27 19:19:50,600.600 INFO    ] Launching Daemon at Sat Jun 27 19:19:50 IST 2026
[2026-06-27 19:19:50,610.610 INFO    ] ================================================
[2026-06-27 19:19:50,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:19:50
[2026-06-27 19:19:51,307.307 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:19:51,451.451 INFO    ] Initializing speech engine...
[2026-06-27 19:19:51,457.457 INFO    ] 2026-06-27 19:19:51
[2026-06-27 19:19:51,661.661 INFO    ] 2026-06-27 19:19:51
[2026-06-27 19:19:51,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:19:51,872.872 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:19:51,875.875 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:19:52,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:19:52,096.096 INFO    ] time= 27/06/2026 19:19:52
[2026-06-27 19:19:52,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:19:52,107.107 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:19:52,174.174 INFO    ] No existing commands found in stream
[2026-06-27 19:19:57,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:19:57,209.209 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-27 19:20:00,213.213 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:20:00,215.215 INFO    ] Checking for system updates...
[2026-06-27 19:20:00,236.236 INFO    ] 200
[2026-06-27 19:20:00,238.238 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:20:00,270.270 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:20:00,272.272 INFO    ] No update needed
[2026-06-27 19:20:00,273.273 INFO    ] Checking for camera pi updates...
[2026-06-27 19:20:00,292.292 INFO    ] 200
[2026-06-27 19:20:00,294.294 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:20:00,317.317 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:20:00,362.362 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:20:00,364.364 INFO    ] No camera update needed
[2026-06-27 19:20:00,365.365 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:20:00,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:20:00,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:20:00,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:20:02,410.410 INFO    ] ================================================
[2026-06-27 19:20:02,426.426 INFO    ] Launching Daemon at Sat Jun 27 19:20:02 IST 2026
[2026-06-27 19:20:02,438.438 INFO    ] ================================================
[2026-06-27 19:20:02,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:20:02
[2026-06-27 19:20:03,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:20:03,289.289 INFO    ] Initializing speech engine...
[2026-06-27 19:20:03,294.294 INFO    ] 2026-06-27 19:20:03
[2026-06-27 19:20:03,499.499 INFO    ] 2026-06-27 19:20:03
[2026-06-27 19:20:03,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:20:03,712.712 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:20:03,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:20:03,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:20:03,952.952 INFO    ] time= 27/06/2026 19:20:03
[2026-06-27 19:20:03,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:20:03,960.960 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:20:04,056.056 INFO    ] No existing commands found in stream
[2026-06-27 19:20:09,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:20:09,072.072 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-27 19:20:11,334.334 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:20:11,335.335 INFO    ] Checking for system updates...
[2026-06-27 19:20:11,356.356 INFO    ] 200
[2026-06-27 19:20:11,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:20:11,389.389 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:20:11,390.390 INFO    ] No update needed
[2026-06-27 19:20:11,391.391 INFO    ] Checking for camera pi updates...
[2026-06-27 19:20:11,412.412 INFO    ] 200
[2026-06-27 19:20:11,413.413 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:20:11,438.438 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:20:11,487.487 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:20:11,488.488 INFO    ] No camera update needed
[2026-06-27 19:20:11,490.490 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:20:11,491.491 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:20:11,494.494 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:20:11,497.497 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:20:13,535.535 INFO    ] ================================================
[2026-06-27 19:20:13,550.550 INFO    ] Launching Daemon at Sat Jun 27 19:20:13 IST 2026
[2026-06-27 19:20:13,561.561 INFO    ] ================================================
[2026-06-27 19:20:13,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:20:13
[2026-06-27 19:20:14,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:20:14,348.348 INFO    ] Initializing speech engine...
[2026-06-27 19:20:14,356.356 INFO    ] 2026-06-27 19:20:14
[2026-06-27 19:20:14,576.576 INFO    ] 2026-06-27 19:20:14
[2026-06-27 19:20:14,607.607 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:20:14,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:20:14,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:20:14,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:20:14,992.992 INFO    ] time= 27/06/2026 19:20:14
[2026-06-27 19:20:15,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:20:15,041.041 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:20:15,112.112 INFO    ] No existing commands found in stream
[2026-06-27 19:20:20,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:20:20,129.129 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-27 19:20:22,524.524 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 19:20:22,526.526 INFO    ] Checking for system updates...
[2026-06-27 19:20:22,547.547 INFO    ] 200
[2026-06-27 19:20:22,548.548 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:20:22,579.579 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:20:22,580.580 INFO    ] No update needed
[2026-06-27 19:20:22,582.582 INFO    ] Checking for camera pi updates...
[2026-06-27 19:20:22,601.601 INFO    ] 200
[2026-06-27 19:20:22,602.602 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:20:22,626.626 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:20:22,668.668 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:20:22,669.669 INFO    ] No camera update needed
[2026-06-27 19:20:22,671.671 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:20:22,672.672 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:20:22,675.675 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:20:22,678.678 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:20:24,709.709 INFO    ] ================================================
[2026-06-27 19:20:24,717.717 INFO    ] Launching Daemon at Sat Jun 27 19:20:24 IST 2026
[2026-06-27 19:20:24,723.723 INFO    ] ================================================
[2026-06-27 19:20:25,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:20:25
[2026-06-27 19:20:25,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:20:25,535.535 INFO    ] Initializing speech engine...
[2026-06-27 19:20:25,548.548 INFO    ] 2026-06-27 19:20:25
[2026-06-27 19:20:25,754.754 INFO    ] 2026-06-27 19:20:25
[2026-06-27 19:20:25,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:20:25,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:20:25,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:20:26,166.166 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:20:26,190.190 INFO    ] time= 27/06/2026 19:20:26
[2026-06-27 19:20:26,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:20:26,197.197 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:20:26,288.288 INFO    ] No existing commands found in stream
[2026-06-27 19:20:31,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:20:31,305.305 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-27 19:20:32,908.908 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:20:32,910.910 INFO    ] Checking for system updates...
[2026-06-27 19:20:32,932.932 INFO    ] 200
[2026-06-27 19:20:32,933.933 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:20:32,964.964 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:20:32,965.965 INFO    ] No update needed
[2026-06-27 19:20:32,967.967 INFO    ] Checking for camera pi updates...
[2026-06-27 19:20:32,987.987 INFO    ] 200
[2026-06-27 19:20:32,988.988 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:20:33,012.012 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:20:33,044.044 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:20:33,046.046 INFO    ] No camera update needed
[2026-06-27 19:20:33,047.047 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:20:33,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:20:33,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:20:33,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:20:35,095.095 INFO    ] ================================================
[2026-06-27 19:20:35,110.110 INFO    ] Launching Daemon at Sat Jun 27 19:20:35 IST 2026
[2026-06-27 19:20:35,121.121 INFO    ] ================================================
[2026-06-27 19:20:35,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:20:35
[2026-06-27 19:20:35,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:20:35,925.925 INFO    ] Initializing speech engine...
[2026-06-27 19:20:35,929.929 INFO    ] 2026-06-27 19:20:35
[2026-06-27 19:20:36,158.158 INFO    ] 2026-06-27 19:20:36
[2026-06-27 19:20:36,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:20:36,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:20:36,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:20:36,536.536 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:20:36,605.605 INFO    ] time= 27/06/2026 19:20:36
[2026-06-27 19:20:36,628.628 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:20:36,634.634 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:20:36,710.710 INFO    ] No existing commands found in stream
[2026-06-27 19:20:41,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:20:41,722.722 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-27 19:20:45,474.474 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 19:20:45,476.476 INFO    ] Checking for system updates...
[2026-06-27 19:20:45,497.497 INFO    ] 200
[2026-06-27 19:20:45,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:20:45,531.531 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:20:45,532.532 INFO    ] No update needed
[2026-06-27 19:20:45,534.534 INFO    ] Checking for camera pi updates...
[2026-06-27 19:20:45,557.557 INFO    ] 200
[2026-06-27 19:20:45,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:20:45,581.581 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:20:45,625.625 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:20:45,627.627 INFO    ] No camera update needed
[2026-06-27 19:20:45,628.628 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:20:45,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:20:45,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:20:45,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:20:47,674.674 INFO    ] ================================================
[2026-06-27 19:20:47,690.690 INFO    ] Launching Daemon at Sat Jun 27 19:20:47 IST 2026
[2026-06-27 19:20:47,700.700 INFO    ] ================================================
[2026-06-27 19:20:48,062.062 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:20:48
[2026-06-27 19:20:48,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:20:48,522.522 INFO    ] Initializing speech engine...
[2026-06-27 19:20:48,528.528 INFO    ] 2026-06-27 19:20:48
[2026-06-27 19:20:48,761.761 INFO    ] 2026-06-27 19:20:48
[2026-06-27 19:20:48,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:20:48,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:20:48,976.976 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:20:49,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:20:49,162.162 INFO    ] time= 27/06/2026 19:20:49
[2026-06-27 19:20:49,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:20:49,217.217 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:20:49,290.290 INFO    ] No existing commands found in stream
[2026-06-27 19:20:54,304.304 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:20:54,307.307 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-27 19:20:58,443.443 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 19:20:58,445.445 INFO    ] Checking for system updates...
[2026-06-27 19:20:58,466.466 INFO    ] 200
[2026-06-27 19:20:58,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:20:58,501.501 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:20:58,502.502 INFO    ] No update needed
[2026-06-27 19:20:58,505.505 INFO    ] Checking for camera pi updates...
[2026-06-27 19:20:58,525.525 INFO    ] 200
[2026-06-27 19:20:58,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:20:58,550.550 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:20:58,597.597 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:20:58,599.599 INFO    ] No camera update needed
[2026-06-27 19:20:58,600.600 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:20:58,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:20:58,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:20:58,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:21:00,647.647 INFO    ] ================================================
[2026-06-27 19:21:00,662.662 INFO    ] Launching Daemon at Sat Jun 27 19:21:00 IST 2026
[2026-06-27 19:21:00,673.673 INFO    ] ================================================
[2026-06-27 19:21:01,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:21:01
[2026-06-27 19:21:01,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:21:01,475.475 INFO    ] Initializing speech engine...
[2026-06-27 19:21:01,480.480 INFO    ] 2026-06-27 19:21:01
[2026-06-27 19:21:01,684.684 INFO    ] 2026-06-27 19:21:01
[2026-06-27 19:21:01,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:21:01,898.898 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:21:01,902.902 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:21:02,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:21:02,106.106 INFO    ] time= 27/06/2026 19:21:02
[2026-06-27 19:21:02,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:21:02,199.199 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:21:02,315.315 INFO    ] No existing commands found in stream
[2026-06-27 19:21:07,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:21:07,332.332 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-27 19:21:10,763.763 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 19:21:10,765.765 INFO    ] Checking for system updates...
[2026-06-27 19:21:10,787.787 INFO    ] 200
[2026-06-27 19:21:10,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:21:10,819.819 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:21:10,820.820 INFO    ] No update needed
[2026-06-27 19:21:10,821.821 INFO    ] Checking for camera pi updates...
[2026-06-27 19:21:10,840.840 INFO    ] 200
[2026-06-27 19:21:10,842.842 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:21:10,865.865 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:21:10,917.917 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:21:10,918.918 INFO    ] No camera update needed
[2026-06-27 19:21:10,920.920 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:21:10,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:21:10,924.924 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:21:10,927.927 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:21:12,967.967 INFO    ] ================================================
[2026-06-27 19:21:12,982.982 INFO    ] Launching Daemon at Sat Jun 27 19:21:12 IST 2026
[2026-06-27 19:21:12,993.993 INFO    ] ================================================
[2026-06-27 19:21:13,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:21:13
[2026-06-27 19:21:13,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:21:13,793.793 INFO    ] Initializing speech engine...
[2026-06-27 19:21:13,798.798 INFO    ] 2026-06-27 19:21:13
[2026-06-27 19:21:14,001.001 INFO    ] 2026-06-27 19:21:13
[2026-06-27 19:21:14,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:21:14,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:21:14,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:21:14,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:21:14,424.424 INFO    ] time= 27/06/2026 19:21:14
[2026-06-27 19:21:14,445.445 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:21:14,451.451 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:21:14,518.518 INFO    ] No existing commands found in stream
[2026-06-27 19:21:19,532.532 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:21:19,535.535 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-27 19:21:22,174.174 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:21:22,176.176 INFO    ] Checking for system updates...
[2026-06-27 19:21:22,199.199 INFO    ] 200
[2026-06-27 19:21:22,200.200 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:21:22,232.232 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:21:22,234.234 INFO    ] No update needed
[2026-06-27 19:21:22,235.235 INFO    ] Checking for camera pi updates...
[2026-06-27 19:21:22,254.254 INFO    ] 200
[2026-06-27 19:21:22,256.256 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:21:22,279.279 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:21:22,329.329 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:21:22,330.330 INFO    ] No camera update needed
[2026-06-27 19:21:22,331.331 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:21:22,333.333 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:21:22,336.336 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:21:22,339.339 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:21:24,378.378 INFO    ] ================================================
[2026-06-27 19:21:24,393.393 INFO    ] Launching Daemon at Sat Jun 27 19:21:24 IST 2026
[2026-06-27 19:21:24,404.404 INFO    ] ================================================
[2026-06-27 19:21:24,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:21:24
[2026-06-27 19:21:25,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:21:25,228.228 INFO    ] Initializing speech engine...
[2026-06-27 19:21:25,237.237 INFO    ] 2026-06-27 19:21:25
[2026-06-27 19:21:25,455.455 INFO    ] 2026-06-27 19:21:25
[2026-06-27 19:21:25,484.484 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:21:25,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:21:25,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:21:25,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:21:25,874.874 INFO    ] time= 27/06/2026 19:21:25
[2026-06-27 19:21:25,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:21:25,907.907 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:21:25,975.975 INFO    ] No existing commands found in stream
[2026-06-27 19:21:30,989.989 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:21:30,993.993 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-27 19:21:35,334.334 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 19:21:35,336.336 INFO    ] Checking for system updates...
[2026-06-27 19:21:35,357.357 INFO    ] 200
[2026-06-27 19:21:35,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:21:35,393.393 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:21:35,394.394 INFO    ] No update needed
[2026-06-27 19:21:35,395.395 INFO    ] Checking for camera pi updates...
[2026-06-27 19:21:35,415.415 INFO    ] 200
[2026-06-27 19:21:35,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:21:35,441.441 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:21:35,490.490 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:21:35,491.491 INFO    ] No camera update needed
[2026-06-27 19:21:35,493.493 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:21:35,494.494 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:21:35,497.497 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:21:35,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:21:37,538.538 INFO    ] ================================================
[2026-06-27 19:21:37,554.554 INFO    ] Launching Daemon at Sat Jun 27 19:21:37 IST 2026
[2026-06-27 19:21:37,564.564 INFO    ] ================================================
[2026-06-27 19:21:37,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:21:37
[2026-06-27 19:21:38,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:21:38,346.346 INFO    ] Initializing speech engine...
[2026-06-27 19:21:38,354.354 INFO    ] 2026-06-27 19:21:38
[2026-06-27 19:21:38,566.566 INFO    ] 2026-06-27 19:21:38
[2026-06-27 19:21:38,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:21:38,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:21:38,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:21:38,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:21:38,987.987 INFO    ] time= 27/06/2026 19:21:38
[2026-06-27 19:21:39,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:21:39,015.015 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:21:39,087.087 INFO    ] No existing commands found in stream
[2026-06-27 19:21:44,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:21:44,124.124 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-27 19:21:44,879.879 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 19:21:44,880.880 INFO    ] Checking for system updates...
[2026-06-27 19:21:44,901.901 INFO    ] 200
[2026-06-27 19:21:44,903.903 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:21:44,933.933 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:21:44,935.935 INFO    ] No update needed
[2026-06-27 19:21:44,936.936 INFO    ] Checking for camera pi updates...
[2026-06-27 19:21:44,955.955 INFO    ] 200
[2026-06-27 19:21:44,957.957 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:21:44,980.980 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:21:45,021.021 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:21:45,023.023 INFO    ] No camera update needed
[2026-06-27 19:21:45,024.024 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:21:45,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:21:45,028.028 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:21:45,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:21:47,071.071 INFO    ] ================================================
[2026-06-27 19:21:47,086.086 INFO    ] Launching Daemon at Sat Jun 27 19:21:47 IST 2026
[2026-06-27 19:21:47,097.097 INFO    ] ================================================
[2026-06-27 19:21:47,420.420 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:21:47
[2026-06-27 19:21:47,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:21:47,863.863 INFO    ] Initializing speech engine...
[2026-06-27 19:21:47,868.868 INFO    ] 2026-06-27 19:21:47
[2026-06-27 19:21:48,089.089 INFO    ] 2026-06-27 19:21:48
[2026-06-27 19:21:48,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:21:48,305.305 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:21:48,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:21:48,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:21:48,516.516 INFO    ] time= 27/06/2026 19:21:48
[2026-06-27 19:21:48,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:21:48,547.547 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:21:48,616.616 INFO    ] No existing commands found in stream
[2026-06-27 19:21:53,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:21:53,646.646 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-27 19:21:54,185.185 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 19:21:54,189.189 INFO    ] Checking for system updates...
[2026-06-27 19:21:54,225.225 INFO    ] 200
[2026-06-27 19:21:54,228.228 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:21:54,288.288 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:21:54,291.291 INFO    ] No update needed
[2026-06-27 19:21:54,293.293 INFO    ] Checking for camera pi updates...
[2026-06-27 19:21:54,332.332 INFO    ] 200
[2026-06-27 19:21:54,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:21:54,358.358 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:21:54,449.449 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:21:54,451.451 INFO    ] No camera update needed
[2026-06-27 19:21:54,452.452 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:21:54,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:21:54,456.456 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:21:54,459.459 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:21:56,499.499 INFO    ] ================================================
[2026-06-27 19:21:56,514.514 INFO    ] Launching Daemon at Sat Jun 27 19:21:56 IST 2026
[2026-06-27 19:21:56,525.525 INFO    ] ================================================
[2026-06-27 19:21:56,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:21:56
[2026-06-27 19:21:57,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:21:57,311.311 INFO    ] Initializing speech engine...
[2026-06-27 19:21:57,316.316 INFO    ] 2026-06-27 19:21:57
[2026-06-27 19:21:57,536.536 INFO    ] 2026-06-27 19:21:57
[2026-06-27 19:21:57,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:21:57,752.752 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:21:57,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:21:57,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:21:57,952.952 INFO    ] time= 27/06/2026 19:21:57
[2026-06-27 19:21:57,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:21:57,987.987 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:21:58,059.059 INFO    ] No existing commands found in stream
[2026-06-27 19:22:03,069.069 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:22:03,076.076 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-27 19:22:05,664.664 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:22:05,666.666 INFO    ] Checking for system updates...
[2026-06-27 19:22:05,687.687 INFO    ] 200
[2026-06-27 19:22:05,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:22:05,719.719 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:22:05,720.720 INFO    ] No update needed
[2026-06-27 19:22:05,722.722 INFO    ] Checking for camera pi updates...
[2026-06-27 19:22:05,742.742 INFO    ] 200
[2026-06-27 19:22:05,743.743 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:22:05,767.767 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:22:05,918.918 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:22:05,919.919 INFO    ] No camera update needed
[2026-06-27 19:22:05,921.921 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:22:05,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:22:05,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:22:05,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:22:07,969.969 INFO    ] ================================================
[2026-06-27 19:22:07,984.984 INFO    ] Launching Daemon at Sat Jun 27 19:22:07 IST 2026
[2026-06-27 19:22:08,995.995 INFO    ] ================================================
[2026-06-27 19:22:08,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:22:08
[2026-06-27 19:22:08,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:22:08,803.803 INFO    ] Initializing speech engine...
[2026-06-27 19:22:08,813.813 INFO    ] 2026-06-27 19:22:08
[2026-06-27 19:22:09,018.018 INFO    ] 2026-06-27 19:22:08
[2026-06-27 19:22:09,046.046 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:22:09,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:22:09,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:22:09,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:22:09,323.323 INFO    ] time= 27/06/2026 19:22:09
[2026-06-27 19:22:09,369.369 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:22:09,415.415 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:22:09,559.559 INFO    ] No existing commands found in stream
[2026-06-27 19:22:14,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:22:14,574.574 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-27 19:22:17,032.032 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 19:22:17,034.034 INFO    ] Checking for system updates...
[2026-06-27 19:22:17,057.057 INFO    ] 200
[2026-06-27 19:22:17,058.058 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:22:17,091.091 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:22:17,093.093 INFO    ] No update needed
[2026-06-27 19:22:17,095.095 INFO    ] Checking for camera pi updates...
[2026-06-27 19:22:17,119.119 INFO    ] 200
[2026-06-27 19:22:17,120.120 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:22:17,144.144 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:22:17,185.185 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:22:17,187.187 INFO    ] No camera update needed
[2026-06-27 19:22:17,188.188 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:22:17,190.190 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:22:17,193.193 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:22:17,196.196 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:22:19,242.242 INFO    ] ================================================
[2026-06-27 19:22:19,258.258 INFO    ] Launching Daemon at Sat Jun 27 19:22:19 IST 2026
[2026-06-27 19:22:19,269.269 INFO    ] ================================================
[2026-06-27 19:22:19,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:22:19
[2026-06-27 19:22:19,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:22:20,066.066 INFO    ] Initializing speech engine...
[2026-06-27 19:22:20,071.071 INFO    ] 2026-06-27 19:22:20
[2026-06-27 19:22:20,278.278 INFO    ] 2026-06-27 19:22:20
[2026-06-27 19:22:20,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:22:20,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:22:20,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:22:20,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:22:20,703.703 INFO    ] time= 27/06/2026 19:22:20
[2026-06-27 19:22:20,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:22:20,739.739 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:22:20,808.808 INFO    ] No existing commands found in stream
[2026-06-27 19:22:25,822.822 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:22:25,824.824 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-27 19:22:26,684.684 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:22:26,685.685 INFO    ] Checking for system updates...
[2026-06-27 19:22:26,708.708 INFO    ] 200
[2026-06-27 19:22:26,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:22:26,743.743 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:22:26,745.745 INFO    ] No update needed
[2026-06-27 19:22:26,747.747 INFO    ] Checking for camera pi updates...
[2026-06-27 19:22:26,766.766 INFO    ] 200
[2026-06-27 19:22:26,768.768 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:22:26,794.794 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:22:26,849.849 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:22:26,852.852 INFO    ] No camera update needed
[2026-06-27 19:22:26,855.855 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:22:26,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:22:26,864.864 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:22:26,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:22:28,912.912 INFO    ] ================================================
[2026-06-27 19:22:28,927.927 INFO    ] Launching Daemon at Sat Jun 27 19:22:28 IST 2026
[2026-06-27 19:22:28,938.938 INFO    ] ================================================
[2026-06-27 19:22:29,261.261 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:22:29
[2026-06-27 19:22:29,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:22:29,769.769 INFO    ] Initializing speech engine...
[2026-06-27 19:22:29,773.773 INFO    ] 2026-06-27 19:22:29
[2026-06-27 19:22:29,980.980 INFO    ] 2026-06-27 19:22:29
[2026-06-27 19:22:30,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:22:30,194.194 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:22:30,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:22:30,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:22:30,404.404 INFO    ] time= 27/06/2026 19:22:30
[2026-06-27 19:22:30,435.435 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:22:30,442.442 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:22:30,510.510 INFO    ] No existing commands found in stream
[2026-06-27 19:22:35,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:22:35,546.546 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-27 19:22:38,666.666 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 19:22:38,668.668 INFO    ] Checking for system updates...
[2026-06-27 19:22:38,689.689 INFO    ] 200
[2026-06-27 19:22:38,690.690 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:22:38,721.721 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:22:38,722.722 INFO    ] No update needed
[2026-06-27 19:22:38,724.724 INFO    ] Checking for camera pi updates...
[2026-06-27 19:22:38,744.744 INFO    ] 200
[2026-06-27 19:22:38,745.745 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:22:38,774.774 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:22:38,815.815 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:22:38,816.816 INFO    ] No camera update needed
[2026-06-27 19:22:38,818.818 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:22:38,819.819 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:22:38,822.822 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:22:38,825.825 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:22:40,864.864 INFO    ] ================================================
[2026-06-27 19:22:40,880.880 INFO    ] Launching Daemon at Sat Jun 27 19:22:40 IST 2026
[2026-06-27 19:22:40,890.890 INFO    ] ================================================
[2026-06-27 19:22:41,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:22:41
[2026-06-27 19:22:41,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:22:41,691.691 INFO    ] Initializing speech engine...
[2026-06-27 19:22:41,699.699 INFO    ] 2026-06-27 19:22:41
[2026-06-27 19:22:41,919.919 INFO    ] 2026-06-27 19:22:41
[2026-06-27 19:22:41,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:22:42,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:22:42,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:22:42,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:22:42,354.354 INFO    ] time= 27/06/2026 19:22:42
[2026-06-27 19:22:42,381.381 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:22:42,406.406 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:22:42,477.477 INFO    ] No existing commands found in stream
[2026-06-27 19:22:47,487.487 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:22:47,490.490 INFO    ] Waiting 0.00 seconds before fallback handling...
[2026-06-27 19:22:47,906.906 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:22:47,908.908 INFO    ] Checking for system updates...
[2026-06-27 19:22:47,929.929 INFO    ] 200
[2026-06-27 19:22:47,930.930 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:22:47,961.961 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:22:47,962.962 INFO    ] No update needed
[2026-06-27 19:22:47,964.964 INFO    ] Checking for camera pi updates...
[2026-06-27 19:22:47,984.984 INFO    ] 200
[2026-06-27 19:22:47,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:22:48,011.011 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:22:48,056.056 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:22:48,057.057 INFO    ] No camera update needed
[2026-06-27 19:22:48,058.058 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:22:48,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:22:48,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:22:48,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:22:50,104.104 INFO    ] ================================================
[2026-06-27 19:22:50,119.119 INFO    ] Launching Daemon at Sat Jun 27 19:22:50 IST 2026
[2026-06-27 19:22:50,130.130 INFO    ] ================================================
[2026-06-27 19:22:50,475.475 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:22:50
[2026-06-27 19:22:50,789.789 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:22:50,932.932 INFO    ] Initializing speech engine...
[2026-06-27 19:22:50,937.937 INFO    ] 2026-06-27 19:22:50
[2026-06-27 19:22:51,140.140 INFO    ] 2026-06-27 19:22:51
[2026-06-27 19:22:51,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:22:51,355.355 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:22:51,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:22:51,495.495 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:22:51,559.559 INFO    ] time= 27/06/2026 19:22:51
[2026-06-27 19:22:51,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:22:51,595.595 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:22:51,664.664 INFO    ] No existing commands found in stream
[2026-06-27 19:22:56,673.673 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:22:56,676.676 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-27 19:22:57,780.780 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 19:22:57,781.781 INFO    ] Checking for system updates...
[2026-06-27 19:22:57,802.802 INFO    ] 200
[2026-06-27 19:22:57,804.804 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:22:57,834.834 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:22:57,836.836 INFO    ] No update needed
[2026-06-27 19:22:57,838.838 INFO    ] Checking for camera pi updates...
[2026-06-27 19:22:57,859.859 INFO    ] 200
[2026-06-27 19:22:57,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:22:57,884.884 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:22:57,930.930 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:22:57,931.931 INFO    ] No camera update needed
[2026-06-27 19:22:57,933.933 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:22:57,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:22:57,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:22:57,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:22:59,980.980 INFO    ] ================================================
[2026-06-27 19:23:00,995.995 INFO    ] Launching Daemon at Sat Jun 27 19:22:59 IST 2026
[2026-06-27 19:23:00,006.006 INFO    ] ================================================
[2026-06-27 19:23:00,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:23:00
[2026-06-27 19:23:00,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:23:00,880.880 INFO    ] Initializing speech engine...
[2026-06-27 19:23:00,886.886 INFO    ] 2026-06-27 19:23:00
[2026-06-27 19:23:01,095.095 INFO    ] 2026-06-27 19:23:01
[2026-06-27 19:23:01,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:23:01,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:23:01,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:23:01,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:23:01,515.515 INFO    ] time= 27/06/2026 19:23:01
[2026-06-27 19:23:01,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:23:01,545.545 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:23:01,607.607 INFO    ] No existing commands found in stream
[2026-06-27 19:23:06,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:23:06,626.626 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-27 19:23:10,628.628 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 19:23:10,630.630 INFO    ] Checking for system updates...
[2026-06-27 19:23:10,651.651 INFO    ] 200
[2026-06-27 19:23:10,652.652 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:23:10,686.686 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:23:10,688.688 INFO    ] No update needed
[2026-06-27 19:23:10,689.689 INFO    ] Checking for camera pi updates...
[2026-06-27 19:23:10,708.708 INFO    ] 200
[2026-06-27 19:23:10,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:23:10,735.735 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:23:10,780.780 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:23:10,781.781 INFO    ] No camera update needed
[2026-06-27 19:23:10,782.782 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:23:10,783.783 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:23:10,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:23:10,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:23:12,827.827 INFO    ] ================================================
[2026-06-27 19:23:12,843.843 INFO    ] Launching Daemon at Sat Jun 27 19:23:12 IST 2026
[2026-06-27 19:23:12,854.854 INFO    ] ================================================
[2026-06-27 19:23:13,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:23:13
[2026-06-27 19:23:13,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:23:13,717.717 INFO    ] Initializing speech engine...
[2026-06-27 19:23:13,723.723 INFO    ] 2026-06-27 19:23:13
[2026-06-27 19:23:13,935.935 INFO    ] 2026-06-27 19:23:13
[2026-06-27 19:23:13,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:23:14,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:23:14,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:23:14,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:23:14,376.376 INFO    ] time= 27/06/2026 19:23:14
[2026-06-27 19:23:14,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:23:14,434.434 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:23:14,556.556 INFO    ] No existing commands found in stream
[2026-06-27 19:23:19,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:23:19,570.570 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-27 19:23:22,652.652 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 19:23:22,654.654 INFO    ] Checking for system updates...
[2026-06-27 19:23:22,675.675 INFO    ] 200
[2026-06-27 19:23:22,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:23:22,710.710 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:23:22,711.711 INFO    ] No update needed
[2026-06-27 19:23:22,712.712 INFO    ] Checking for camera pi updates...
[2026-06-27 19:23:22,733.733 INFO    ] 200
[2026-06-27 19:23:22,735.735 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:23:22,758.758 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:23:22,808.808 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:23:22,809.809 INFO    ] No camera update needed
[2026-06-27 19:23:22,810.810 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:23:22,812.812 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:23:22,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:23:22,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:23:24,855.855 INFO    ] ================================================
[2026-06-27 19:23:24,871.871 INFO    ] Launching Daemon at Sat Jun 27 19:23:24 IST 2026
[2026-06-27 19:23:24,882.882 INFO    ] ================================================
[2026-06-27 19:23:25,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:23:25
[2026-06-27 19:23:25,532.532 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:23:25,666.666 INFO    ] Initializing speech engine...
[2026-06-27 19:23:25,671.671 INFO    ] 2026-06-27 19:23:25
[2026-06-27 19:23:25,888.888 INFO    ] 2026-06-27 19:23:25
[2026-06-27 19:23:25,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:23:26,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:23:26,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:23:26,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:23:26,350.350 INFO    ] time= 27/06/2026 19:23:26
[2026-06-27 19:23:26,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:23:26,379.379 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:23:26,446.446 INFO    ] No existing commands found in stream
[2026-06-27 19:23:31,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:23:31,458.458 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-27 19:23:35,470.470 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:23:35,471.471 INFO    ] Checking for system updates...
[2026-06-27 19:23:35,492.492 INFO    ] 200
[2026-06-27 19:23:35,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:23:35,524.524 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:23:35,525.525 INFO    ] No update needed
[2026-06-27 19:23:35,526.526 INFO    ] Checking for camera pi updates...
[2026-06-27 19:23:35,546.546 INFO    ] 200
[2026-06-27 19:23:35,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:23:35,572.572 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:23:35,617.617 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:23:35,618.618 INFO    ] No camera update needed
[2026-06-27 19:23:35,620.620 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:23:35,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:23:35,624.624 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:23:35,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:23:37,666.666 INFO    ] ================================================
[2026-06-27 19:23:37,681.681 INFO    ] Launching Daemon at Sat Jun 27 19:23:37 IST 2026
[2026-06-27 19:23:37,692.692 INFO    ] ================================================
[2026-06-27 19:23:38,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:23:38
[2026-06-27 19:23:38,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:23:38,518.518 INFO    ] Initializing speech engine...
[2026-06-27 19:23:38,522.522 INFO    ] 2026-06-27 19:23:38
[2026-06-27 19:23:38,730.730 INFO    ] 2026-06-27 19:23:38
[2026-06-27 19:23:38,759.759 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:23:38,984.984 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:23:38,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:23:39,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:23:39,234.234 INFO    ] time= 27/06/2026 19:23:39
[2026-06-27 19:23:39,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:23:39,242.242 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:23:39,316.316 INFO    ] No existing commands found in stream
[2026-06-27 19:23:44,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:23:44,328.328 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-27 19:23:46,190.190 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:23:46,191.191 INFO    ] Checking for system updates...
[2026-06-27 19:23:46,212.212 INFO    ] 200
[2026-06-27 19:23:46,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:23:46,244.244 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:23:46,245.245 INFO    ] No update needed
[2026-06-27 19:23:46,246.246 INFO    ] Checking for camera pi updates...
[2026-06-27 19:23:46,267.267 INFO    ] 200
[2026-06-27 19:23:46,268.268 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:23:46,293.293 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:23:46,348.348 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:23:46,349.349 INFO    ] No camera update needed
[2026-06-27 19:23:46,351.351 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:23:46,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:23:46,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:23:46,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:23:48,397.397 INFO    ] ================================================
[2026-06-27 19:23:48,412.412 INFO    ] Launching Daemon at Sat Jun 27 19:23:48 IST 2026
[2026-06-27 19:23:48,423.423 INFO    ] ================================================
[2026-06-27 19:23:48,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:23:48
[2026-06-27 19:23:49,075.075 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:23:49,208.208 INFO    ] Initializing speech engine...
[2026-06-27 19:23:49,220.220 INFO    ] 2026-06-27 19:23:49
[2026-06-27 19:23:49,426.426 INFO    ] 2026-06-27 19:23:49
[2026-06-27 19:23:49,455.455 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:23:49,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:23:49,639.639 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:23:49,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:23:49,843.843 INFO    ] time= 27/06/2026 19:23:49
[2026-06-27 19:23:49,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:23:49,876.876 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:23:49,943.943 INFO    ] No existing commands found in stream
[2026-06-27 19:23:54,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:23:54,953.953 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-27 19:23:57,090.090 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 19:23:57,091.091 INFO    ] Checking for system updates...
[2026-06-27 19:23:57,113.113 INFO    ] 200
[2026-06-27 19:23:57,115.115 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:23:57,148.148 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:23:57,149.149 INFO    ] No update needed
[2026-06-27 19:23:57,150.150 INFO    ] Checking for camera pi updates...
[2026-06-27 19:23:57,170.170 INFO    ] 200
[2026-06-27 19:23:57,172.172 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:23:57,196.196 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:23:57,224.224 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:23:57,226.226 INFO    ] No camera update needed
[2026-06-27 19:23:57,227.227 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:23:57,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:23:57,232.232 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:23:57,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:23:59,274.274 INFO    ] ================================================
[2026-06-27 19:23:59,289.289 INFO    ] Launching Daemon at Sat Jun 27 19:23:59 IST 2026
[2026-06-27 19:23:59,299.299 INFO    ] ================================================
[2026-06-27 19:23:59,632.632 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:23:59
[2026-06-27 19:23:59,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:24:00,123.123 INFO    ] Initializing speech engine...
[2026-06-27 19:24:00,130.130 INFO    ] 2026-06-27 19:24:00
[2026-06-27 19:24:00,350.350 INFO    ] 2026-06-27 19:24:00
[2026-06-27 19:24:00,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:24:00,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:24:00,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:24:00,839.839 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:24:00,853.853 INFO    ] time= 27/06/2026 19:24:00
[2026-06-27 19:24:00,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:24:00,857.857 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:24:01,038.038 INFO    ] No existing commands found in stream
[2026-06-27 19:24:06,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:24:06,049.049 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-27 19:24:07,927.927 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 19:24:07,929.929 INFO    ] Checking for system updates...
[2026-06-27 19:24:07,952.952 INFO    ] 200
[2026-06-27 19:24:07,953.953 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:24:07,984.984 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:24:07,985.985 INFO    ] No update needed
[2026-06-27 19:24:07,987.987 INFO    ] Checking for camera pi updates...
[2026-06-27 19:24:08,006.006 INFO    ] 200
[2026-06-27 19:24:08,007.007 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:24:08,032.032 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:24:08,172.172 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:24:08,174.174 INFO    ] No camera update needed
[2026-06-27 19:24:08,175.175 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:24:08,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:24:08,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:24:08,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:24:10,221.221 INFO    ] ================================================
[2026-06-27 19:24:10,237.237 INFO    ] Launching Daemon at Sat Jun 27 19:24:10 IST 2026
[2026-06-27 19:24:10,248.248 INFO    ] ================================================
[2026-06-27 19:24:10,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:24:10
[2026-06-27 19:24:10,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:24:11,053.053 INFO    ] Initializing speech engine...
[2026-06-27 19:24:11,066.066 INFO    ] 2026-06-27 19:24:11
[2026-06-27 19:24:11,285.285 INFO    ] 2026-06-27 19:24:11
[2026-06-27 19:24:11,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:24:11,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:24:11,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:24:11,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:24:11,713.713 INFO    ] time= 27/06/2026 19:24:11
[2026-06-27 19:24:11,752.752 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:24:11,768.768 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:24:11,840.840 INFO    ] No existing commands found in stream
[2026-06-27 19:24:16,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:24:16,876.876 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-27 19:24:17,480.480 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:24:17,482.482 INFO    ] Checking for system updates...
[2026-06-27 19:24:17,503.503 INFO    ] 200
[2026-06-27 19:24:17,505.505 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:24:17,537.537 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:24:17,538.538 INFO    ] No update needed
[2026-06-27 19:24:17,540.540 INFO    ] Checking for camera pi updates...
[2026-06-27 19:24:17,560.560 INFO    ] 200
[2026-06-27 19:24:17,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:24:17,586.586 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:24:17,627.627 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:24:17,628.628 INFO    ] No camera update needed
[2026-06-27 19:24:17,629.629 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:24:17,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:24:17,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:24:17,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:24:19,675.675 INFO    ] ================================================
[2026-06-27 19:24:19,691.691 INFO    ] Launching Daemon at Sat Jun 27 19:24:19 IST 2026
[2026-06-27 19:24:19,707.707 INFO    ] ================================================
[2026-06-27 19:24:20,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:24:20
[2026-06-27 19:24:20,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:24:20,518.518 INFO    ] Initializing speech engine...
[2026-06-27 19:24:20,521.521 INFO    ] 2026-06-27 19:24:20
[2026-06-27 19:24:20,737.737 INFO    ] 2026-06-27 19:24:20
[2026-06-27 19:24:20,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:24:20,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:24:20,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:24:21,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:24:21,154.154 INFO    ] time= 27/06/2026 19:24:21
[2026-06-27 19:24:21,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:24:21,188.188 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:24:21,255.255 INFO    ] No existing commands found in stream
[2026-06-27 19:24:26,269.269 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:24:26,272.272 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-27 19:24:28,771.771 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:24:28,772.772 INFO    ] Checking for system updates...
[2026-06-27 19:24:28,793.793 INFO    ] 200
[2026-06-27 19:24:28,795.795 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:24:28,826.826 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:24:28,828.828 INFO    ] No update needed
[2026-06-27 19:24:28,829.829 INFO    ] Checking for camera pi updates...
[2026-06-27 19:24:28,849.849 INFO    ] 200
[2026-06-27 19:24:28,850.850 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:24:28,875.875 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:24:28,930.930 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:24:28,931.931 INFO    ] No camera update needed
[2026-06-27 19:24:28,932.932 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:24:28,934.934 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:24:28,937.937 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:24:28,940.940 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:24:30,980.980 INFO    ] ================================================
[2026-06-27 19:24:31,996.996 INFO    ] Launching Daemon at Sat Jun 27 19:24:30 IST 2026
[2026-06-27 19:24:31,007.007 INFO    ] ================================================
[2026-06-27 19:24:31,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:24:31
[2026-06-27 19:24:31,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:24:31,887.887 INFO    ] Initializing speech engine...
[2026-06-27 19:24:31,894.894 INFO    ] 2026-06-27 19:24:31
[2026-06-27 19:24:32,133.133 INFO    ] 2026-06-27 19:24:32
[2026-06-27 19:24:32,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:24:32,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:24:32,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:24:32,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:24:32,595.595 INFO    ] time= 27/06/2026 19:24:32
[2026-06-27 19:24:32,639.639 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:24:32,662.662 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:24:32,738.738 INFO    ] No existing commands found in stream
[2026-06-27 19:24:37,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:24:37,751.751 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-27 19:24:40,910.910 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 19:24:40,911.911 INFO    ] Checking for system updates...
[2026-06-27 19:24:40,932.932 INFO    ] 200
[2026-06-27 19:24:40,934.934 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:24:40,964.964 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:24:40,966.966 INFO    ] No update needed
[2026-06-27 19:24:40,967.967 INFO    ] Checking for camera pi updates...
[2026-06-27 19:24:40,988.988 INFO    ] 200
[2026-06-27 19:24:40,990.990 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:24:41,015.015 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:24:41,062.062 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:24:41,063.063 INFO    ] No camera update needed
[2026-06-27 19:24:41,065.065 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:24:41,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:24:41,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:24:41,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:24:43,111.111 INFO    ] ================================================
[2026-06-27 19:24:43,128.128 INFO    ] Launching Daemon at Sat Jun 27 19:24:43 IST 2026
[2026-06-27 19:24:43,139.139 INFO    ] ================================================
[2026-06-27 19:24:43,481.481 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:24:43
[2026-06-27 19:24:43,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:24:43,954.954 INFO    ] Initializing speech engine...
[2026-06-27 19:24:43,959.959 INFO    ] 2026-06-27 19:24:43
[2026-06-27 19:24:44,167.167 INFO    ] 2026-06-27 19:24:44
[2026-06-27 19:24:44,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:24:44,382.382 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:24:44,391.391 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:24:44,587.587 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:24:44,612.612 INFO    ] time= 27/06/2026 19:24:44
[2026-06-27 19:24:44,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:24:44,620.620 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:24:44,687.687 INFO    ] No existing commands found in stream
[2026-06-27 19:24:49,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:24:49,699.699 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-27 19:24:50,482.482 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:24:50,484.484 INFO    ] Checking for system updates...
[2026-06-27 19:24:50,506.506 INFO    ] 200
[2026-06-27 19:24:50,508.508 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:24:50,541.541 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:24:50,542.542 INFO    ] No update needed
[2026-06-27 19:24:50,544.544 INFO    ] Checking for camera pi updates...
[2026-06-27 19:24:50,566.566 INFO    ] 200
[2026-06-27 19:24:50,568.568 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:24:50,594.594 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:24:50,650.650 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:24:50,652.652 INFO    ] No camera update needed
[2026-06-27 19:24:50,653.653 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:24:50,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:24:50,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:24:50,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:24:52,701.701 INFO    ] ================================================
[2026-06-27 19:24:52,717.717 INFO    ] Launching Daemon at Sat Jun 27 19:24:52 IST 2026
[2026-06-27 19:24:52,728.728 INFO    ] ================================================
[2026-06-27 19:24:53,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:24:53
[2026-06-27 19:24:53,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:24:53,523.523 INFO    ] Initializing speech engine...
[2026-06-27 19:24:53,530.530 INFO    ] 2026-06-27 19:24:53
[2026-06-27 19:24:53,754.754 INFO    ] 2026-06-27 19:24:53
[2026-06-27 19:24:53,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:24:53,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:24:53,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:24:54,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:24:54,207.207 INFO    ] time= 27/06/2026 19:24:54
[2026-06-27 19:24:54,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:24:54,237.237 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:24:54,313.313 INFO    ] No existing commands found in stream
[2026-06-27 19:24:59,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:24:59,326.326 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-27 19:25:01,165.165 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 19:25:01,167.167 INFO    ] Checking for system updates...
[2026-06-27 19:25:01,187.187 INFO    ] 200
[2026-06-27 19:25:01,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:25:01,219.219 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:25:01,220.220 INFO    ] No update needed
[2026-06-27 19:25:01,222.222 INFO    ] Checking for camera pi updates...
[2026-06-27 19:25:01,243.243 INFO    ] 200
[2026-06-27 19:25:01,244.244 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:25:01,269.269 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:25:01,346.346 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:25:01,347.347 INFO    ] No camera update needed
[2026-06-27 19:25:01,348.348 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:25:01,350.350 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:25:01,353.353 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:25:01,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:25:03,383.383 INFO    ] ================================================
[2026-06-27 19:25:03,392.392 INFO    ] Launching Daemon at Sat Jun 27 19:25:03 IST 2026
[2026-06-27 19:25:03,398.398 INFO    ] ================================================
[2026-06-27 19:25:03,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:25:03
[2026-06-27 19:25:04,128.128 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:25:04,280.280 INFO    ] Initializing speech engine...
[2026-06-27 19:25:04,285.285 INFO    ] 2026-06-27 19:25:04
[2026-06-27 19:25:04,495.495 INFO    ] 2026-06-27 19:25:04
[2026-06-27 19:25:04,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:25:04,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:25:04,721.721 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:25:04,874.874 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:25:04,934.934 INFO    ] time= 27/06/2026 19:25:04
[2026-06-27 19:25:04,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:25:04,945.945 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:25:05,012.012 INFO    ] No existing commands found in stream
[2026-06-27 19:25:10,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:25:10,030.030 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-27 19:25:14,109.109 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 19:25:14,110.110 INFO    ] Checking for system updates...
[2026-06-27 19:25:14,132.132 INFO    ] 200
[2026-06-27 19:25:14,133.133 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:25:14,164.164 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:25:14,166.166 INFO    ] No update needed
[2026-06-27 19:25:14,167.167 INFO    ] Checking for camera pi updates...
[2026-06-27 19:25:14,188.188 INFO    ] 200
[2026-06-27 19:25:14,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:25:14,215.215 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:25:14,275.275 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:25:14,277.277 INFO    ] No camera update needed
[2026-06-27 19:25:14,278.278 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:25:14,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:25:14,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:25:14,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:25:16,327.327 INFO    ] ================================================
[2026-06-27 19:25:16,346.346 INFO    ] Launching Daemon at Sat Jun 27 19:25:16 IST 2026
[2026-06-27 19:25:16,357.357 INFO    ] ================================================
[2026-06-27 19:25:16,713.713 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:25:16
[2026-06-27 19:25:17,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:25:17,158.158 INFO    ] Initializing speech engine...
[2026-06-27 19:25:17,162.162 INFO    ] 2026-06-27 19:25:17
[2026-06-27 19:25:17,355.355 INFO    ] 2026-06-27 19:25:17
[2026-06-27 19:25:17,401.401 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:25:17,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:25:17,616.616 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:25:17,757.757 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:25:17,819.819 INFO    ] time= 27/06/2026 19:25:17
[2026-06-27 19:25:17,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:25:17,849.849 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:25:17,937.937 INFO    ] No existing commands found in stream
[2026-06-27 19:25:22,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:25:22,952.952 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-27 19:25:24,114.114 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:25:24,116.116 INFO    ] Checking for system updates...
[2026-06-27 19:25:24,137.137 INFO    ] 200
[2026-06-27 19:25:24,139.139 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:25:24,171.171 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:25:24,172.172 INFO    ] No update needed
[2026-06-27 19:25:24,174.174 INFO    ] Checking for camera pi updates...
[2026-06-27 19:25:24,194.194 INFO    ] 200
[2026-06-27 19:25:24,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:25:24,221.221 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:25:24,264.264 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:25:24,266.266 INFO    ] No camera update needed
[2026-06-27 19:25:24,267.267 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:25:24,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:25:24,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:25:24,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:25:26,312.312 INFO    ] ================================================
[2026-06-27 19:25:26,327.327 INFO    ] Launching Daemon at Sat Jun 27 19:25:26 IST 2026
[2026-06-27 19:25:26,338.338 INFO    ] ================================================
[2026-06-27 19:25:26,673.673 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:25:26
[2026-06-27 19:25:26,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:25:27,114.114 INFO    ] Initializing speech engine...
[2026-06-27 19:25:27,118.118 INFO    ] 2026-06-27 19:25:27
[2026-06-27 19:25:27,337.337 INFO    ] 2026-06-27 19:25:27
[2026-06-27 19:25:27,366.366 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:25:27,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:25:27,561.561 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:25:27,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:25:27,761.761 INFO    ] time= 27/06/2026 19:25:27
[2026-06-27 19:25:27,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:25:27,791.791 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:25:27,859.859 INFO    ] No existing commands found in stream
[2026-06-27 19:25:32,872.872 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:25:32,874.874 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-27 19:25:35,605.605 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 19:25:35,607.607 INFO    ] Checking for system updates...
[2026-06-27 19:25:35,629.629 INFO    ] 200
[2026-06-27 19:25:35,631.631 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:25:35,666.666 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:25:35,668.668 INFO    ] No update needed
[2026-06-27 19:25:35,669.669 INFO    ] Checking for camera pi updates...
[2026-06-27 19:25:35,692.692 INFO    ] 200
[2026-06-27 19:25:35,693.693 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:25:35,717.717 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:25:35,775.775 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:25:35,776.776 INFO    ] No camera update needed
[2026-06-27 19:25:35,778.778 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:25:35,779.779 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:25:35,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:25:35,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:25:37,832.832 INFO    ] ================================================
[2026-06-27 19:25:37,848.848 INFO    ] Launching Daemon at Sat Jun 27 19:25:37 IST 2026
[2026-06-27 19:25:37,860.860 INFO    ] ================================================
[2026-06-27 19:25:38,210.210 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:25:38
[2026-06-27 19:25:38,523.523 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:25:38,666.666 INFO    ] Initializing speech engine...
[2026-06-27 19:25:38,672.672 INFO    ] 2026-06-27 19:25:38
[2026-06-27 19:25:38,876.876 INFO    ] 2026-06-27 19:25:38
[2026-06-27 19:25:38,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:25:39,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:25:39,090.090 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:25:39,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:25:39,297.297 INFO    ] time= 27/06/2026 19:25:39
[2026-06-27 19:25:39,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:25:39,325.325 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:25:39,393.393 INFO    ] No existing commands found in stream
[2026-06-27 19:25:44,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:25:44,404.404 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-27 19:25:45,400.400 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:25:45,402.402 INFO    ] Checking for system updates...
[2026-06-27 19:25:45,422.422 INFO    ] 200
[2026-06-27 19:25:45,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:25:45,456.456 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:25:45,457.457 INFO    ] No update needed
[2026-06-27 19:25:45,458.458 INFO    ] Checking for camera pi updates...
[2026-06-27 19:25:45,478.478 INFO    ] 200
[2026-06-27 19:25:45,479.479 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:25:45,503.503 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:25:45,541.541 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:25:45,543.543 INFO    ] No camera update needed
[2026-06-27 19:25:45,544.544 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:25:45,545.545 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:25:45,548.548 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:25:45,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:25:47,590.590 INFO    ] ================================================
[2026-06-27 19:25:47,605.605 INFO    ] Launching Daemon at Sat Jun 27 19:25:47 IST 2026
[2026-06-27 19:25:47,616.616 INFO    ] ================================================
[2026-06-27 19:25:47,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:25:47
[2026-06-27 19:25:48,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:25:48,407.407 INFO    ] Initializing speech engine...
[2026-06-27 19:25:48,412.412 INFO    ] 2026-06-27 19:25:48
[2026-06-27 19:25:48,615.615 INFO    ] 2026-06-27 19:25:48
[2026-06-27 19:25:48,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:25:48,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:25:48,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:25:48,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:25:49,034.034 INFO    ] time= 27/06/2026 19:25:48
[2026-06-27 19:25:49,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:25:49,063.063 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:25:49,130.130 INFO    ] No existing commands found in stream
[2026-06-27 19:25:54,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:25:54,142.142 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-27 19:25:56,490.490 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:25:56,492.492 INFO    ] Checking for system updates...
[2026-06-27 19:25:56,515.515 INFO    ] 200
[2026-06-27 19:25:56,516.516 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:25:56,549.549 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:25:56,550.550 INFO    ] No update needed
[2026-06-27 19:25:56,551.551 INFO    ] Checking for camera pi updates...
[2026-06-27 19:25:56,572.572 INFO    ] 200
[2026-06-27 19:25:56,574.574 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:25:56,597.597 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:25:56,623.623 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:25:56,624.624 INFO    ] No camera update needed
[2026-06-27 19:25:56,625.625 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:25:56,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:25:56,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:25:56,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:25:58,673.673 INFO    ] ================================================
[2026-06-27 19:25:58,688.688 INFO    ] Launching Daemon at Sat Jun 27 19:25:58 IST 2026
[2026-06-27 19:25:58,700.700 INFO    ] ================================================
[2026-06-27 19:25:59,049.049 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:25:59
[2026-06-27 19:25:59,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:25:59,502.502 INFO    ] Initializing speech engine...
[2026-06-27 19:25:59,508.508 INFO    ] 2026-06-27 19:25:59
[2026-06-27 19:25:59,714.714 INFO    ] 2026-06-27 19:25:59
[2026-06-27 19:25:59,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:25:59,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:25:59,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:26:00,061.061 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:26:00,120.120 INFO    ] time= 27/06/2026 19:26:00
[2026-06-27 19:26:00,152.152 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:26:00,162.162 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:26:00,231.231 INFO    ] No existing commands found in stream
[2026-06-27 19:26:05,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:26:05,245.245 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-27 19:26:09,331.331 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 19:26:09,332.332 INFO    ] Checking for system updates...
[2026-06-27 19:26:09,353.353 INFO    ] 200
[2026-06-27 19:26:09,354.354 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:26:09,387.387 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:26:09,388.388 INFO    ] No update needed
[2026-06-27 19:26:09,389.389 INFO    ] Checking for camera pi updates...
[2026-06-27 19:26:09,409.409 INFO    ] 200
[2026-06-27 19:26:09,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:26:09,433.433 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:26:09,497.497 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:26:09,499.499 INFO    ] No camera update needed
[2026-06-27 19:26:09,500.500 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:26:09,501.501 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:26:09,504.504 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:26:09,507.507 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:26:11,546.546 INFO    ] ================================================
[2026-06-27 19:26:11,562.562 INFO    ] Launching Daemon at Sat Jun 27 19:26:11 IST 2026
[2026-06-27 19:26:11,574.574 INFO    ] ================================================
[2026-06-27 19:26:11,946.946 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:26:11
[2026-06-27 19:26:12,274.274 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:26:12,406.406 INFO    ] Initializing speech engine...
[2026-06-27 19:26:12,409.409 INFO    ] 2026-06-27 19:26:12
[2026-06-27 19:26:12,627.627 INFO    ] 2026-06-27 19:26:12
[2026-06-27 19:26:12,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:26:12,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:26:12,873.873 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:26:13,140.140 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:26:13,144.144 INFO    ] time= 27/06/2026 19:26:13
[2026-06-27 19:26:13,170.170 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:26:13,172.172 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:26:13,270.270 INFO    ] No existing commands found in stream
[2026-06-27 19:26:18,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:26:18,279.279 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-27 19:26:21,328.328 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 19:26:21,329.329 INFO    ] Checking for system updates...
[2026-06-27 19:26:21,350.350 INFO    ] 200
[2026-06-27 19:26:21,351.351 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:26:21,386.386 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:26:21,387.387 INFO    ] No update needed
[2026-06-27 19:26:21,389.389 INFO    ] Checking for camera pi updates...
[2026-06-27 19:26:21,409.409 INFO    ] 200
[2026-06-27 19:26:21,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:26:21,435.435 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:26:21,583.583 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:26:21,584.584 INFO    ] No camera update needed
[2026-06-27 19:26:21,586.586 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:26:21,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:26:21,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:26:21,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:26:23,632.632 INFO    ] ================================================
[2026-06-27 19:26:23,648.648 INFO    ] Launching Daemon at Sat Jun 27 19:26:23 IST 2026
[2026-06-27 19:26:23,659.659 INFO    ] ================================================
[2026-06-27 19:26:24,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:26:24
[2026-06-27 19:26:24,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:26:24,480.480 INFO    ] Initializing speech engine...
[2026-06-27 19:26:24,485.485 INFO    ] 2026-06-27 19:26:24
[2026-06-27 19:26:24,716.716 INFO    ] 2026-06-27 19:26:24
[2026-06-27 19:26:24,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:26:24,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:26:24,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:26:25,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:26:25,191.191 INFO    ] time= 27/06/2026 19:26:25
[2026-06-27 19:26:25,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:26:25,199.199 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:26:25,295.295 INFO    ] No existing commands found in stream
[2026-06-27 19:26:30,304.304 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:26:30,308.308 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-27 19:26:34,604.604 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 19:26:34,605.605 INFO    ] Checking for system updates...
[2026-06-27 19:26:34,626.626 INFO    ] 200
[2026-06-27 19:26:34,627.627 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:26:34,661.661 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:26:34,662.662 INFO    ] No update needed
[2026-06-27 19:26:34,663.663 INFO    ] Checking for camera pi updates...
[2026-06-27 19:26:34,684.684 INFO    ] 200
[2026-06-27 19:26:34,685.685 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:26:34,709.709 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:26:34,758.758 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:26:34,759.759 INFO    ] No camera update needed
[2026-06-27 19:26:34,760.760 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:26:34,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:26:34,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:26:34,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:26:36,807.807 INFO    ] ================================================
[2026-06-27 19:26:36,822.822 INFO    ] Launching Daemon at Sat Jun 27 19:26:36 IST 2026
[2026-06-27 19:26:36,833.833 INFO    ] ================================================
[2026-06-27 19:26:37,202.202 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:26:37
[2026-06-27 19:26:37,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:26:37,683.683 INFO    ] Initializing speech engine...
[2026-06-27 19:26:37,694.694 INFO    ] 2026-06-27 19:26:37
[2026-06-27 19:26:37,903.903 INFO    ] 2026-06-27 19:26:37
[2026-06-27 19:26:37,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:26:38,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:26:38,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:26:38,270.270 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:26:38,324.324 INFO    ] time= 27/06/2026 19:26:38
[2026-06-27 19:26:38,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:26:38,351.351 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:26:38,441.441 INFO    ] No existing commands found in stream
[2026-06-27 19:26:43,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:26:43,469.469 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-27 19:26:48,166.166 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:26:48,167.167 INFO    ] Checking for system updates...
[2026-06-27 19:26:48,188.188 INFO    ] 200
[2026-06-27 19:26:48,190.190 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:26:48,221.221 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:26:48,223.223 INFO    ] No update needed
[2026-06-27 19:26:48,225.225 INFO    ] Checking for camera pi updates...
[2026-06-27 19:26:48,244.244 INFO    ] 200
[2026-06-27 19:26:48,246.246 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:26:48,270.270 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:26:48,311.311 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:26:48,313.313 INFO    ] No camera update needed
[2026-06-27 19:26:48,314.314 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:26:48,315.315 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:26:48,318.318 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:26:48,321.321 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:26:50,359.359 INFO    ] ================================================
[2026-06-27 19:26:50,374.374 INFO    ] Launching Daemon at Sat Jun 27 19:26:50 IST 2026
[2026-06-27 19:26:50,384.384 INFO    ] ================================================
[2026-06-27 19:26:50,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:26:50
[2026-06-27 19:26:51,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:26:51,201.201 INFO    ] Initializing speech engine...
[2026-06-27 19:26:51,205.205 INFO    ] 2026-06-27 19:26:51
[2026-06-27 19:26:51,436.436 INFO    ] 2026-06-27 19:26:51
[2026-06-27 19:26:51,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:26:51,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:26:51,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:26:51,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:26:51,858.858 INFO    ] time= 27/06/2026 19:26:51
[2026-06-27 19:26:51,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:26:51,914.914 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:26:52,016.016 INFO    ] No existing commands found in stream
[2026-06-27 19:26:57,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:26:57,028.028 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-27 19:27:00,254.254 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:27:00,255.255 INFO    ] Checking for system updates...
[2026-06-27 19:27:00,277.277 INFO    ] 200
[2026-06-27 19:27:00,279.279 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:27:00,311.311 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:27:00,312.312 INFO    ] No update needed
[2026-06-27 19:27:00,314.314 INFO    ] Checking for camera pi updates...
[2026-06-27 19:27:00,333.333 INFO    ] 200
[2026-06-27 19:27:00,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:27:00,362.362 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:27:00,406.406 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:27:00,407.407 INFO    ] No camera update needed
[2026-06-27 19:27:00,408.408 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:27:00,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:27:00,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:27:00,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:27:02,445.445 INFO    ] ================================================
[2026-06-27 19:27:02,453.453 INFO    ] Launching Daemon at Sat Jun 27 19:27:02 IST 2026
[2026-06-27 19:27:02,459.459 INFO    ] ================================================
[2026-06-27 19:27:02,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:27:02
[2026-06-27 19:27:03,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:27:03,278.278 INFO    ] Initializing speech engine...
[2026-06-27 19:27:03,284.284 INFO    ] 2026-06-27 19:27:03
[2026-06-27 19:27:03,491.491 INFO    ] 2026-06-27 19:27:03
[2026-06-27 19:27:03,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:27:03,665.665 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:27:03,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:27:03,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:27:03,902.902 INFO    ] time= 27/06/2026 19:27:03
[2026-06-27 19:27:03,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:27:03,941.941 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:27:04,013.013 INFO    ] No existing commands found in stream
[2026-06-27 19:27:09,022.022 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:27:09,026.026 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-27 19:27:11,072.072 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 19:27:11,074.074 INFO    ] Checking for system updates...
[2026-06-27 19:27:11,095.095 INFO    ] 200
[2026-06-27 19:27:11,096.096 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:27:11,129.129 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:27:11,130.130 INFO    ] No update needed
[2026-06-27 19:27:11,132.132 INFO    ] Checking for camera pi updates...
[2026-06-27 19:27:11,154.154 INFO    ] 200
[2026-06-27 19:27:11,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:27:11,179.179 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:27:11,224.224 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:27:11,226.226 INFO    ] No camera update needed
[2026-06-27 19:27:11,227.227 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:27:11,228.228 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:27:11,231.231 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:27:11,235.235 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:27:13,274.274 INFO    ] ================================================
[2026-06-27 19:27:13,289.289 INFO    ] Launching Daemon at Sat Jun 27 19:27:13 IST 2026
[2026-06-27 19:27:13,300.300 INFO    ] ================================================
[2026-06-27 19:27:13,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:27:13
[2026-06-27 19:27:14,021.021 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:27:14,172.172 INFO    ] Initializing speech engine...
[2026-06-27 19:27:14,177.177 INFO    ] 2026-06-27 19:27:14
[2026-06-27 19:27:14,385.385 INFO    ] 2026-06-27 19:27:14
[2026-06-27 19:27:14,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:27:14,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:27:14,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:27:14,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:27:14,828.828 INFO    ] time= 27/06/2026 19:27:14
[2026-06-27 19:27:14,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:27:14,835.835 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:27:14,961.961 INFO    ] No existing commands found in stream
[2026-06-27 19:27:19,971.971 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:27:19,974.974 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-27 19:27:20,656.656 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 19:27:20,658.658 INFO    ] Checking for system updates...
[2026-06-27 19:27:20,679.679 INFO    ] 200
[2026-06-27 19:27:20,681.681 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:27:20,713.713 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:27:20,715.715 INFO    ] No update needed
[2026-06-27 19:27:20,716.716 INFO    ] Checking for camera pi updates...
[2026-06-27 19:27:20,737.737 INFO    ] 200
[2026-06-27 19:27:20,738.738 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:27:20,762.762 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:27:20,808.808 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:27:20,809.809 INFO    ] No camera update needed
[2026-06-27 19:27:20,810.810 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:27:20,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:27:20,815.815 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:27:20,817.817 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:27:22,856.856 INFO    ] ================================================
[2026-06-27 19:27:22,871.871 INFO    ] Launching Daemon at Sat Jun 27 19:27:22 IST 2026
[2026-06-27 19:27:22,882.882 INFO    ] ================================================
[2026-06-27 19:27:23,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:27:23
[2026-06-27 19:27:23,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:27:23,681.681 INFO    ] Initializing speech engine...
[2026-06-27 19:27:23,692.692 INFO    ] 2026-06-27 19:27:23
[2026-06-27 19:27:23,903.903 INFO    ] 2026-06-27 19:27:23
[2026-06-27 19:27:23,934.934 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:27:24,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:27:24,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:27:24,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:27:24,336.336 INFO    ] time= 27/06/2026 19:27:24
[2026-06-27 19:27:24,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:27:24,381.381 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:27:24,458.458 INFO    ] No existing commands found in stream
[2026-06-27 19:27:29,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:27:29,469.469 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-27 19:27:33,010.010 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:27:33,011.011 INFO    ] Checking for system updates...
[2026-06-27 19:27:33,034.034 INFO    ] 200
[2026-06-27 19:27:33,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:27:33,068.068 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:27:33,069.069 INFO    ] No update needed
[2026-06-27 19:27:33,070.070 INFO    ] Checking for camera pi updates...
[2026-06-27 19:27:33,093.093 INFO    ] 200
[2026-06-27 19:27:33,095.095 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:27:33,118.118 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:27:33,167.167 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:27:33,169.169 INFO    ] No camera update needed
[2026-06-27 19:27:33,170.170 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:27:33,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:27:33,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:27:33,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:27:35,216.216 INFO    ] ================================================
[2026-06-27 19:27:35,231.231 INFO    ] Launching Daemon at Sat Jun 27 19:27:35 IST 2026
[2026-06-27 19:27:35,242.242 INFO    ] ================================================
[2026-06-27 19:27:35,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:27:35
[2026-06-27 19:27:35,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:27:36,090.090 INFO    ] Initializing speech engine...
[2026-06-27 19:27:36,101.101 INFO    ] 2026-06-27 19:27:36
[2026-06-27 19:27:36,310.310 INFO    ] 2026-06-27 19:27:36
[2026-06-27 19:27:36,339.339 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:27:36,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:27:36,533.533 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:27:36,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:27:36,753.753 INFO    ] time= 27/06/2026 19:27:36
[2026-06-27 19:27:36,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:27:36,760.760 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:27:36,828.828 INFO    ] No existing commands found in stream
[2026-06-27 19:27:41,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:27:41,846.846 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-27 19:27:42,569.569 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:27:42,570.570 INFO    ] Checking for system updates...
[2026-06-27 19:27:42,592.592 INFO    ] 200
[2026-06-27 19:27:42,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:27:42,624.624 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:27:42,625.625 INFO    ] No update needed
[2026-06-27 19:27:42,626.626 INFO    ] Checking for camera pi updates...
[2026-06-27 19:27:42,646.646 INFO    ] 200
[2026-06-27 19:27:42,647.647 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:27:42,670.670 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:27:42,721.721 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:27:42,722.722 INFO    ] No camera update needed
[2026-06-27 19:27:42,723.723 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:27:42,725.725 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:27:42,728.728 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:27:42,730.730 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:27:44,769.769 INFO    ] ================================================
[2026-06-27 19:27:44,784.784 INFO    ] Launching Daemon at Sat Jun 27 19:27:44 IST 2026
[2026-06-27 19:27:44,795.795 INFO    ] ================================================
[2026-06-27 19:27:45,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:27:45
[2026-06-27 19:27:45,436.436 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:27:45,574.574 INFO    ] Initializing speech engine...
[2026-06-27 19:27:45,587.587 INFO    ] 2026-06-27 19:27:45
[2026-06-27 19:27:45,794.794 INFO    ] 2026-06-27 19:27:45
[2026-06-27 19:27:45,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:27:45,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:27:46,011.011 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:27:46,149.149 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:27:46,217.217 INFO    ] time= 27/06/2026 19:27:46
[2026-06-27 19:27:46,241.241 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:27:46,247.247 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:27:46,314.314 INFO    ] No existing commands found in stream
[2026-06-27 19:27:51,323.323 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:27:51,326.326 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-27 19:27:53,792.792 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:27:53,793.793 INFO    ] Checking for system updates...
[2026-06-27 19:27:53,815.815 INFO    ] 200
[2026-06-27 19:27:53,817.817 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:27:53,850.850 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:27:53,851.851 INFO    ] No update needed
[2026-06-27 19:27:53,852.852 INFO    ] Checking for camera pi updates...
[2026-06-27 19:27:53,876.876 INFO    ] 200
[2026-06-27 19:27:53,877.877 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:27:53,901.901 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:27:53,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:27:53,942.942 INFO    ] No camera update needed
[2026-06-27 19:27:53,943.943 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:27:53,945.945 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:27:53,948.948 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:27:53,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:27:55,990.990 INFO    ] ================================================
[2026-06-27 19:27:56,005.005 INFO    ] Launching Daemon at Sat Jun 27 19:27:56 IST 2026
[2026-06-27 19:27:56,016.016 INFO    ] ================================================
[2026-06-27 19:27:56,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:27:56
[2026-06-27 19:27:56,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:27:56,802.802 INFO    ] Initializing speech engine...
[2026-06-27 19:27:56,806.806 INFO    ] 2026-06-27 19:27:56
[2026-06-27 19:27:57,032.032 INFO    ] 2026-06-27 19:27:57
[2026-06-27 19:27:57,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:27:57,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:27:57,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:27:57,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:27:57,454.454 INFO    ] time= 27/06/2026 19:27:57
[2026-06-27 19:27:57,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:27:57,504.504 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:27:57,605.605 INFO    ] No existing commands found in stream
[2026-06-27 19:28:02,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:28:02,616.616 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-27 19:28:04,124.124 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:28:04,126.126 INFO    ] Checking for system updates...
[2026-06-27 19:28:04,148.148 INFO    ] 200
[2026-06-27 19:28:04,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:28:04,180.180 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:28:04,181.181 INFO    ] No update needed
[2026-06-27 19:28:04,183.183 INFO    ] Checking for camera pi updates...
[2026-06-27 19:28:04,203.203 INFO    ] 200
[2026-06-27 19:28:04,205.205 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:28:04,228.228 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:28:04,282.282 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:28:04,284.284 INFO    ] No camera update needed
[2026-06-27 19:28:04,285.285 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:28:04,286.286 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:28:04,289.289 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:28:04,292.292 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:28:06,331.331 INFO    ] ================================================
[2026-06-27 19:28:06,347.347 INFO    ] Launching Daemon at Sat Jun 27 19:28:06 IST 2026
[2026-06-27 19:28:06,359.359 INFO    ] ================================================
[2026-06-27 19:28:06,739.739 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:28:06
[2026-06-27 19:28:07,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:28:07,228.228 INFO    ] Initializing speech engine...
[2026-06-27 19:28:07,234.234 INFO    ] 2026-06-27 19:28:07
[2026-06-27 19:28:07,443.443 INFO    ] 2026-06-27 19:28:07
[2026-06-27 19:28:07,473.473 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:28:07,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:28:07,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:28:07,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:28:07,869.869 INFO    ] time= 27/06/2026 19:28:07
[2026-06-27 19:28:07,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:28:07,900.900 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:28:07,968.968 INFO    ] No existing commands found in stream
[2026-06-27 19:28:12,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:28:12,990.990 INFO    ] Waiting 0.34 seconds before fallback handling...
[2026-06-27 19:28:13,950.950 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:28:13,951.951 INFO    ] Checking for system updates...
[2026-06-27 19:28:13,973.973 INFO    ] 200
[2026-06-27 19:28:13,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:28:14,007.007 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:28:14,008.008 INFO    ] No update needed
[2026-06-27 19:28:14,010.010 INFO    ] Checking for camera pi updates...
[2026-06-27 19:28:14,032.032 INFO    ] 200
[2026-06-27 19:28:14,034.034 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:28:14,059.059 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:28:14,101.101 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:28:14,103.103 INFO    ] No camera update needed
[2026-06-27 19:28:14,105.105 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:28:14,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:28:14,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:28:14,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:28:16,151.151 INFO    ] ================================================
[2026-06-27 19:28:16,166.166 INFO    ] Launching Daemon at Sat Jun 27 19:28:16 IST 2026
[2026-06-27 19:28:16,177.177 INFO    ] ================================================
[2026-06-27 19:28:16,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:28:16
[2026-06-27 19:28:16,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:28:17,017.017 INFO    ] Initializing speech engine...
[2026-06-27 19:28:17,021.021 INFO    ] 2026-06-27 19:28:17
[2026-06-27 19:28:17,225.225 INFO    ] 2026-06-27 19:28:17
[2026-06-27 19:28:17,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:28:17,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:28:17,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:28:17,578.578 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:28:17,644.644 INFO    ] time= 27/06/2026 19:28:17
[2026-06-27 19:28:17,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:28:17,674.674 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:28:17,740.740 INFO    ] No existing commands found in stream
[2026-06-27 19:28:22,749.749 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:28:22,752.752 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-27 19:28:26,410.410 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 19:28:26,412.412 INFO    ] Checking for system updates...
[2026-06-27 19:28:26,432.432 INFO    ] 200
[2026-06-27 19:28:26,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:28:26,464.464 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:28:26,465.465 INFO    ] No update needed
[2026-06-27 19:28:26,467.467 INFO    ] Checking for camera pi updates...
[2026-06-27 19:28:26,487.487 INFO    ] 200
[2026-06-27 19:28:26,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:28:26,513.513 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:28:26,653.653 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:28:26,655.655 INFO    ] No camera update needed
[2026-06-27 19:28:26,656.656 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:28:26,657.657 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:28:26,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:28:26,663.663 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:28:28,702.702 INFO    ] ================================================
[2026-06-27 19:28:28,717.717 INFO    ] Launching Daemon at Sat Jun 27 19:28:28 IST 2026
[2026-06-27 19:28:28,728.728 INFO    ] ================================================
[2026-06-27 19:28:29,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:28:29
[2026-06-27 19:28:29,377.377 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:28:29,507.507 INFO    ] Initializing speech engine...
[2026-06-27 19:28:29,512.512 INFO    ] 2026-06-27 19:28:29
[2026-06-27 19:28:29,739.739 INFO    ] 2026-06-27 19:28:29
[2026-06-27 19:28:29,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:28:29,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:28:29,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:28:30,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:28:30,206.206 INFO    ] time= 27/06/2026 19:28:30
[2026-06-27 19:28:30,213.213 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:28:30,218.218 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:28:30,287.287 INFO    ] No existing commands found in stream
[2026-06-27 19:28:35,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:28:35,300.300 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-27 19:28:38,427.427 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:28:38,428.428 INFO    ] Checking for system updates...
[2026-06-27 19:28:38,449.449 INFO    ] 200
[2026-06-27 19:28:38,450.450 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:28:38,482.482 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:28:38,483.483 INFO    ] No update needed
[2026-06-27 19:28:38,485.485 INFO    ] Checking for camera pi updates...
[2026-06-27 19:28:38,504.504 INFO    ] 200
[2026-06-27 19:28:38,505.505 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:28:38,529.529 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:28:38,578.578 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:28:38,579.579 INFO    ] No camera update needed
[2026-06-27 19:28:38,581.581 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:28:38,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:28:38,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:28:38,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:28:40,626.626 INFO    ] ================================================
[2026-06-27 19:28:40,642.642 INFO    ] Launching Daemon at Sat Jun 27 19:28:40 IST 2026
[2026-06-27 19:28:40,652.652 INFO    ] ================================================
[2026-06-27 19:28:40,979.979 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:28:40
[2026-06-27 19:28:41,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:28:41,440.440 INFO    ] Initializing speech engine...
[2026-06-27 19:28:41,445.445 INFO    ] 2026-06-27 19:28:41
[2026-06-27 19:28:41,649.649 INFO    ] 2026-06-27 19:28:41
[2026-06-27 19:28:41,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:28:41,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:28:41,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:28:42,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:28:42,086.086 INFO    ] time= 27/06/2026 19:28:42
[2026-06-27 19:28:42,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:28:42,093.093 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:28:42,159.159 INFO    ] No existing commands found in stream
[2026-06-27 19:28:47,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:28:47,173.173 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-27 19:28:51,427.427 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:28:51,428.428 INFO    ] Checking for system updates...
[2026-06-27 19:28:51,450.450 INFO    ] 200
[2026-06-27 19:28:51,451.451 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:28:51,482.482 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:28:51,483.483 INFO    ] No update needed
[2026-06-27 19:28:51,485.485 INFO    ] Checking for camera pi updates...
[2026-06-27 19:28:51,507.507 INFO    ] 200
[2026-06-27 19:28:51,508.508 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:28:51,531.531 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:28:51,588.588 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:28:51,589.589 INFO    ] No camera update needed
[2026-06-27 19:28:51,591.591 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:28:51,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:28:51,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:28:51,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:28:53,638.638 INFO    ] ================================================
[2026-06-27 19:28:53,654.654 INFO    ] Launching Daemon at Sat Jun 27 19:28:53 IST 2026
[2026-06-27 19:28:53,664.664 INFO    ] ================================================
[2026-06-27 19:28:54,031.031 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:28:54
[2026-06-27 19:28:54,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:28:54,498.498 INFO    ] Initializing speech engine...
[2026-06-27 19:28:54,501.501 INFO    ] 2026-06-27 19:28:54
[2026-06-27 19:28:54,709.709 INFO    ] 2026-06-27 19:28:54
[2026-06-27 19:28:54,737.737 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:28:54,922.922 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:28:54,933.933 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:28:55,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:28:55,130.130 INFO    ] time= 27/06/2026 19:28:55
[2026-06-27 19:28:55,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:28:55,160.160 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:28:55,251.251 INFO    ] No existing commands found in stream
[2026-06-27 19:29:00,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:29:00,264.264 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-27 19:29:04,037.037 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:29:04,039.039 INFO    ] Checking for system updates...
[2026-06-27 19:29:04,062.062 INFO    ] 200
[2026-06-27 19:29:04,064.064 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:29:04,097.097 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:29:04,098.098 INFO    ] No update needed
[2026-06-27 19:29:04,099.099 INFO    ] Checking for camera pi updates...
[2026-06-27 19:29:04,119.119 INFO    ] 200
[2026-06-27 19:29:04,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:29:04,147.147 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:29:04,190.190 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:29:04,191.191 INFO    ] No camera update needed
[2026-06-27 19:29:04,192.192 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:29:04,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:29:04,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:29:04,199.199 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:29:06,237.237 INFO    ] ================================================
[2026-06-27 19:29:06,253.253 INFO    ] Launching Daemon at Sat Jun 27 19:29:06 IST 2026
[2026-06-27 19:29:06,264.264 INFO    ] ================================================
[2026-06-27 19:29:06,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:29:06
[2026-06-27 19:29:06,930.930 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:29:07,074.074 INFO    ] Initializing speech engine...
[2026-06-27 19:29:07,080.080 INFO    ] 2026-06-27 19:29:07
[2026-06-27 19:29:07,288.288 INFO    ] 2026-06-27 19:29:07
[2026-06-27 19:29:07,317.317 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:29:07,500.500 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:29:07,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:29:07,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:29:07,708.708 INFO    ] time= 27/06/2026 19:29:07
[2026-06-27 19:29:07,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:29:07,739.739 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:29:07,806.806 INFO    ] No existing commands found in stream
[2026-06-27 19:29:12,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:29:12,820.820 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-27 19:29:17,056.056 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 19:29:17,057.057 INFO    ] Checking for system updates...
[2026-06-27 19:29:17,079.079 INFO    ] 200
[2026-06-27 19:29:17,080.080 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:29:17,113.113 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:29:17,114.114 INFO    ] No update needed
[2026-06-27 19:29:17,116.116 INFO    ] Checking for camera pi updates...
[2026-06-27 19:29:17,136.136 INFO    ] 200
[2026-06-27 19:29:17,138.138 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:29:17,172.172 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:29:17,230.230 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:29:17,232.232 INFO    ] No camera update needed
[2026-06-27 19:29:17,233.233 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:29:17,234.234 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:29:17,237.237 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:29:17,240.240 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:29:19,278.278 INFO    ] ================================================
[2026-06-27 19:29:19,293.293 INFO    ] Launching Daemon at Sat Jun 27 19:29:19 IST 2026
[2026-06-27 19:29:19,310.310 INFO    ] ================================================
[2026-06-27 19:29:19,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:29:19
[2026-06-27 19:29:19,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:29:20,118.118 INFO    ] Initializing speech engine...
[2026-06-27 19:29:20,121.121 INFO    ] 2026-06-27 19:29:20
[2026-06-27 19:29:20,329.329 INFO    ] 2026-06-27 19:29:20
[2026-06-27 19:29:20,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:29:20,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:29:20,502.502 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:29:20,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:29:20,692.692 INFO    ] time= 27/06/2026 19:29:20
[2026-06-27 19:29:20,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:29:20,802.802 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:29:20,994.994 INFO    ] No existing commands found in stream
[2026-06-27 19:29:26,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:29:26,006.006 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-27 19:29:29,400.400 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 19:29:29,402.402 INFO    ] Checking for system updates...
[2026-06-27 19:29:29,423.423 INFO    ] 200
[2026-06-27 19:29:29,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:29:29,458.458 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:29:29,459.459 INFO    ] No update needed
[2026-06-27 19:29:29,460.460 INFO    ] Checking for camera pi updates...
[2026-06-27 19:29:29,480.480 INFO    ] 200
[2026-06-27 19:29:29,481.481 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:29:29,505.505 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:29:29,551.551 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:29:29,552.552 INFO    ] No camera update needed
[2026-06-27 19:29:29,554.554 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:29:29,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:29:29,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:29:29,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:29:31,600.600 INFO    ] ================================================
[2026-06-27 19:29:31,615.615 INFO    ] Launching Daemon at Sat Jun 27 19:29:31 IST 2026
[2026-06-27 19:29:31,626.626 INFO    ] ================================================
[2026-06-27 19:29:31,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:29:31
[2026-06-27 19:29:32,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:29:32,533.533 INFO    ] Initializing speech engine...
[2026-06-27 19:29:32,540.540 INFO    ] 2026-06-27 19:29:32
[2026-06-27 19:29:32,774.774 INFO    ] 2026-06-27 19:29:32
[2026-06-27 19:29:32,804.804 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:29:33,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:29:33,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:29:33,288.288 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:29:33,292.292 INFO    ] time= 27/06/2026 19:29:33
[2026-06-27 19:29:33,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:29:33,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:29:33,418.418 INFO    ] No existing commands found in stream
[2026-06-27 19:29:38,428.428 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:29:38,431.431 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-27 19:29:42,845.845 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 19:29:42,847.847 INFO    ] Checking for system updates...
[2026-06-27 19:29:42,872.872 INFO    ] 200
[2026-06-27 19:29:42,873.873 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:29:42,904.904 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:29:42,906.906 INFO    ] No update needed
[2026-06-27 19:29:42,907.907 INFO    ] Checking for camera pi updates...
[2026-06-27 19:29:42,928.928 INFO    ] 200
[2026-06-27 19:29:42,930.930 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:29:42,956.956 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:29:42,998.998 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:29:43,000.000 INFO    ] No camera update needed
[2026-06-27 19:29:43,001.001 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:29:43,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:29:43,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:29:43,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:29:45,047.047 INFO    ] ================================================
[2026-06-27 19:29:45,062.062 INFO    ] Launching Daemon at Sat Jun 27 19:29:45 IST 2026
[2026-06-27 19:29:45,073.073 INFO    ] ================================================
[2026-06-27 19:29:45,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:29:45
[2026-06-27 19:29:45,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:29:45,880.880 INFO    ] Initializing speech engine...
[2026-06-27 19:29:45,888.888 INFO    ] 2026-06-27 19:29:45
[2026-06-27 19:29:46,104.104 INFO    ] 2026-06-27 19:29:46
[2026-06-27 19:29:46,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:29:46,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:29:46,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:29:46,526.526 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:29:46,551.551 INFO    ] time= 27/06/2026 19:29:46
[2026-06-27 19:29:46,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:29:46,558.558 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:29:46,649.649 INFO    ] No existing commands found in stream
[2026-06-27 19:29:51,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:29:51,666.666 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-27 19:29:52,827.827 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:29:52,829.829 INFO    ] Checking for system updates...
[2026-06-27 19:29:52,851.851 INFO    ] 200
[2026-06-27 19:29:52,852.852 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:29:52,886.886 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:29:52,888.888 INFO    ] No update needed
[2026-06-27 19:29:52,889.889 INFO    ] Checking for camera pi updates...
[2026-06-27 19:29:52,909.909 INFO    ] 200
[2026-06-27 19:29:52,910.910 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:29:52,933.933 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:29:52,977.977 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:29:52,978.978 INFO    ] No camera update needed
[2026-06-27 19:29:52,979.979 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:29:52,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:29:52,984.984 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:29:52,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:29:55,026.026 INFO    ] ================================================
[2026-06-27 19:29:55,041.041 INFO    ] Launching Daemon at Sat Jun 27 19:29:55 IST 2026
[2026-06-27 19:29:55,052.052 INFO    ] ================================================
[2026-06-27 19:29:55,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:29:55
[2026-06-27 19:29:55,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:29:55,821.821 INFO    ] Initializing speech engine...
[2026-06-27 19:29:55,825.825 INFO    ] 2026-06-27 19:29:55
[2026-06-27 19:29:56,042.042 INFO    ] 2026-06-27 19:29:56
[2026-06-27 19:29:56,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:29:56,260.260 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:29:56,270.270 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:29:56,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:29:56,468.468 INFO    ] time= 27/06/2026 19:29:56
[2026-06-27 19:29:56,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:29:56,498.498 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:29:56,567.567 INFO    ] No existing commands found in stream
[2026-06-27 19:30:01,591.591 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:30:01,597.597 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-27 19:30:05,590.590 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 19:30:05,592.592 INFO    ] Checking for system updates...
[2026-06-27 19:30:05,618.618 INFO    ] 200
[2026-06-27 19:30:05,620.620 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:30:05,664.664 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:30:05,666.666 INFO    ] No update needed
[2026-06-27 19:30:05,668.668 INFO    ] Checking for camera pi updates...
[2026-06-27 19:30:05,689.689 INFO    ] 200
[2026-06-27 19:30:05,691.691 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:30:05,714.714 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:30:05,747.747 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:30:05,749.749 INFO    ] No camera update needed
[2026-06-27 19:30:05,750.750 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:30:05,751.751 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:30:05,754.754 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:30:05,757.757 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:30:07,797.797 INFO    ] ================================================
[2026-06-27 19:30:07,820.820 INFO    ] Launching Daemon at Sat Jun 27 19:30:07 IST 2026
[2026-06-27 19:30:07,831.831 INFO    ] ================================================
[2026-06-27 19:30:08,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:30:08
[2026-06-27 19:30:08,515.515 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:30:08,660.660 INFO    ] Initializing speech engine...
[2026-06-27 19:30:08,665.665 INFO    ] 2026-06-27 19:30:08
[2026-06-27 19:30:08,870.870 INFO    ] 2026-06-27 19:30:08
[2026-06-27 19:30:08,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:30:09,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:30:09,092.092 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:30:09,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:30:09,291.291 INFO    ] time= 27/06/2026 19:30:09
[2026-06-27 19:30:09,313.313 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:30:09,319.319 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:30:09,410.410 INFO    ] No existing commands found in stream
[2026-06-27 19:30:14,424.424 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:30:14,427.427 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-27 19:30:16,665.665 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 19:30:16,666.666 INFO    ] Checking for system updates...
[2026-06-27 19:30:16,688.688 INFO    ] 200
[2026-06-27 19:30:16,690.690 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:30:16,723.723 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:30:16,724.724 INFO    ] No update needed
[2026-06-27 19:30:16,726.726 INFO    ] Checking for camera pi updates...
[2026-06-27 19:30:16,745.745 INFO    ] 200
[2026-06-27 19:30:16,747.747 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:30:16,770.770 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:30:16,822.822 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:30:16,824.824 INFO    ] No camera update needed
[2026-06-27 19:30:16,825.825 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:30:16,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:30:16,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:30:16,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:30:18,871.871 INFO    ] ================================================
[2026-06-27 19:30:18,887.887 INFO    ] Launching Daemon at Sat Jun 27 19:30:18 IST 2026
[2026-06-27 19:30:18,898.898 INFO    ] ================================================
[2026-06-27 19:30:19,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:30:19
[2026-06-27 19:30:19,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:30:19,686.686 INFO    ] Initializing speech engine...
[2026-06-27 19:30:19,699.699 INFO    ] 2026-06-27 19:30:19
[2026-06-27 19:30:19,907.907 INFO    ] 2026-06-27 19:30:19
[2026-06-27 19:30:19,938.938 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:30:20,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:30:20,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:30:20,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:30:20,314.314 INFO    ] time= 27/06/2026 19:30:20
[2026-06-27 19:30:20,348.348 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:30:20,359.359 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:30:20,432.432 INFO    ] No existing commands found in stream
[2026-06-27 19:30:25,441.441 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:30:25,444.444 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-27 19:30:28,405.405 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:30:28,407.407 INFO    ] Checking for system updates...
[2026-06-27 19:30:28,428.428 INFO    ] 200
[2026-06-27 19:30:28,430.430 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:30:28,460.460 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:30:28,462.462 INFO    ] No update needed
[2026-06-27 19:30:28,463.463 INFO    ] Checking for camera pi updates...
[2026-06-27 19:30:28,482.482 INFO    ] 200
[2026-06-27 19:30:28,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:30:28,507.507 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:30:28,651.651 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:30:28,652.652 INFO    ] No camera update needed
[2026-06-27 19:30:28,653.653 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:30:28,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:30:28,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:30:28,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:30:30,698.698 INFO    ] ================================================
[2026-06-27 19:30:30,714.714 INFO    ] Launching Daemon at Sat Jun 27 19:30:30 IST 2026
[2026-06-27 19:30:30,725.725 INFO    ] ================================================
[2026-06-27 19:30:31,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:30:31
[2026-06-27 19:30:31,430.430 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:30:31,602.602 INFO    ] Initializing speech engine...
[2026-06-27 19:30:31,607.607 INFO    ] 2026-06-27 19:30:31
[2026-06-27 19:30:31,849.849 INFO    ] 2026-06-27 19:30:31
[2026-06-27 19:30:31,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:30:32,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:30:32,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:30:32,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:30:32,349.349 INFO    ] time= 27/06/2026 19:30:32
[2026-06-27 19:30:32,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:30:32,356.356 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:30:32,606.606 INFO    ] No existing commands found in stream
[2026-06-27 19:30:37,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:30:37,619.619 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-27 19:30:39,756.756 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 19:30:39,757.757 INFO    ] Checking for system updates...
[2026-06-27 19:30:39,778.778 INFO    ] 200
[2026-06-27 19:30:39,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:30:39,812.812 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:30:39,814.814 INFO    ] No update needed
[2026-06-27 19:30:39,815.815 INFO    ] Checking for camera pi updates...
[2026-06-27 19:30:39,835.835 INFO    ] 200
[2026-06-27 19:30:39,836.836 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:30:39,861.861 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:30:39,915.915 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:30:39,917.917 INFO    ] No camera update needed
[2026-06-27 19:30:39,918.918 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:30:39,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:30:39,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:30:39,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:30:41,965.965 INFO    ] ================================================
[2026-06-27 19:30:41,981.981 INFO    ] Launching Daemon at Sat Jun 27 19:30:41 IST 2026
[2026-06-27 19:30:41,992.992 INFO    ] ================================================
[2026-06-27 19:30:42,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:30:42
[2026-06-27 19:30:42,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:30:42,769.769 INFO    ] Initializing speech engine...
[2026-06-27 19:30:42,776.776 INFO    ] 2026-06-27 19:30:42
[2026-06-27 19:30:42,988.988 INFO    ] 2026-06-27 19:30:42
[2026-06-27 19:30:43,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:30:43,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:30:43,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:30:43,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:30:43,405.405 INFO    ] time= 27/06/2026 19:30:43
[2026-06-27 19:30:43,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:30:43,440.440 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:30:43,508.508 INFO    ] No existing commands found in stream
[2026-06-27 19:30:48,522.522 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:30:48,525.525 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-27 19:30:50,825.825 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 19:30:50,827.827 INFO    ] Checking for system updates...
[2026-06-27 19:30:50,849.849 INFO    ] 200
[2026-06-27 19:30:50,851.851 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:30:50,881.881 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:30:50,883.883 INFO    ] No update needed
[2026-06-27 19:30:50,884.884 INFO    ] Checking for camera pi updates...
[2026-06-27 19:30:50,905.905 INFO    ] 200
[2026-06-27 19:30:50,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:30:50,930.930 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:30:50,978.978 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:30:50,980.980 INFO    ] No camera update needed
[2026-06-27 19:30:50,981.981 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:30:50,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:30:50,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:30:50,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:30:53,032.032 INFO    ] ================================================
[2026-06-27 19:30:53,048.048 INFO    ] Launching Daemon at Sat Jun 27 19:30:53 IST 2026
[2026-06-27 19:30:53,060.060 INFO    ] ================================================
[2026-06-27 19:30:53,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:30:53
[2026-06-27 19:30:53,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:30:53,850.850 INFO    ] Initializing speech engine...
[2026-06-27 19:30:53,856.856 INFO    ] 2026-06-27 19:30:53
[2026-06-27 19:30:54,059.059 INFO    ] 2026-06-27 19:30:54
[2026-06-27 19:30:54,087.087 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:30:54,209.209 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:30:54,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:30:54,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:30:54,480.480 INFO    ] time= 27/06/2026 19:30:54
[2026-06-27 19:30:54,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:30:54,509.509 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:30:54,575.575 INFO    ] No existing commands found in stream
[2026-06-27 19:30:59,589.589 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:30:59,592.592 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-27 19:31:01,067.067 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:31:01,069.069 INFO    ] Checking for system updates...
[2026-06-27 19:31:01,089.089 INFO    ] 200
[2026-06-27 19:31:01,091.091 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:31:01,123.123 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:31:01,125.125 INFO    ] No update needed
[2026-06-27 19:31:01,126.126 INFO    ] Checking for camera pi updates...
[2026-06-27 19:31:01,146.146 INFO    ] 200
[2026-06-27 19:31:01,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:31:01,172.172 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:31:01,222.222 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:31:01,223.223 INFO    ] No camera update needed
[2026-06-27 19:31:01,224.224 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:31:01,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:31:01,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:31:01,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:31:03,265.265 INFO    ] ================================================
[2026-06-27 19:31:03,282.282 INFO    ] Launching Daemon at Sat Jun 27 19:31:03 IST 2026
[2026-06-27 19:31:03,294.294 INFO    ] ================================================
[2026-06-27 19:31:03,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:31:03
[2026-06-27 19:31:03,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:31:04,103.103 INFO    ] Initializing speech engine...
[2026-06-27 19:31:04,108.108 INFO    ] 2026-06-27 19:31:04
[2026-06-27 19:31:04,312.312 INFO    ] 2026-06-27 19:31:04
[2026-06-27 19:31:04,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:31:04,526.526 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:31:04,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:31:04,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:31:04,736.736 INFO    ] time= 27/06/2026 19:31:04
[2026-06-27 19:31:04,757.757 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:31:04,763.763 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:31:04,830.830 INFO    ] No existing commands found in stream
[2026-06-27 19:31:09,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:31:09,842.842 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-27 19:31:12,452.452 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 19:31:12,454.454 INFO    ] Checking for system updates...
[2026-06-27 19:31:12,476.476 INFO    ] 200
[2026-06-27 19:31:12,477.477 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:31:12,509.509 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:31:12,511.511 INFO    ] No update needed
[2026-06-27 19:31:12,512.512 INFO    ] Checking for camera pi updates...
[2026-06-27 19:31:12,532.532 INFO    ] 200
[2026-06-27 19:31:12,533.533 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:31:12,556.556 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:31:12,597.597 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:31:12,598.598 INFO    ] No camera update needed
[2026-06-27 19:31:12,600.600 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:31:12,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:31:12,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:31:12,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:31:14,645.645 INFO    ] ================================================
[2026-06-27 19:31:14,662.662 INFO    ] Launching Daemon at Sat Jun 27 19:31:14 IST 2026
[2026-06-27 19:31:14,673.673 INFO    ] ================================================
[2026-06-27 19:31:15,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:31:15
[2026-06-27 19:31:15,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:31:15,544.544 INFO    ] Initializing speech engine...
[2026-06-27 19:31:15,548.548 INFO    ] 2026-06-27 19:31:15
[2026-06-27 19:31:15,756.756 INFO    ] 2026-06-27 19:31:15
[2026-06-27 19:31:15,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:31:15,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:31:15,981.981 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:31:16,175.175 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:31:16,199.199 INFO    ] time= 27/06/2026 19:31:16
[2026-06-27 19:31:16,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:31:16,207.207 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:31:16,275.275 INFO    ] No existing commands found in stream
[2026-06-27 19:31:21,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:31:21,292.292 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-27 19:31:23,386.386 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 19:31:23,387.387 INFO    ] Checking for system updates...
[2026-06-27 19:31:23,409.409 INFO    ] 200
[2026-06-27 19:31:23,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:31:23,443.443 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:31:23,445.445 INFO    ] No update needed
[2026-06-27 19:31:23,446.446 INFO    ] Checking for camera pi updates...
[2026-06-27 19:31:23,469.469 INFO    ] 200
[2026-06-27 19:31:23,470.470 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:31:23,495.495 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:31:23,546.546 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:31:23,547.547 INFO    ] No camera update needed
[2026-06-27 19:31:23,548.548 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:31:23,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:31:23,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:31:23,556.556 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:31:25,597.597 INFO    ] ================================================
[2026-06-27 19:31:25,613.613 INFO    ] Launching Daemon at Sat Jun 27 19:31:25 IST 2026
[2026-06-27 19:31:25,624.624 INFO    ] ================================================
[2026-06-27 19:31:25,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:31:25
[2026-06-27 19:31:26,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:31:26,410.410 INFO    ] Initializing speech engine...
[2026-06-27 19:31:26,415.415 INFO    ] 2026-06-27 19:31:26
[2026-06-27 19:31:26,644.644 INFO    ] 2026-06-27 19:31:26
[2026-06-27 19:31:26,674.674 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:31:26,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:31:26,884.884 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:31:27,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:31:27,108.108 INFO    ] time= 27/06/2026 19:31:27
[2026-06-27 19:31:27,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:31:27,126.126 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:31:27,196.196 INFO    ] No existing commands found in stream
[2026-06-27 19:31:32,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:31:32,207.207 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-27 19:31:34,542.542 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:31:34,543.543 INFO    ] Checking for system updates...
[2026-06-27 19:31:34,565.565 INFO    ] 200
[2026-06-27 19:31:34,566.566 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:31:34,598.598 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:31:34,600.600 INFO    ] No update needed
[2026-06-27 19:31:34,601.601 INFO    ] Checking for camera pi updates...
[2026-06-27 19:31:34,621.621 INFO    ] 200
[2026-06-27 19:31:34,623.623 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:31:34,646.646 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:31:34,696.696 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:31:34,698.698 INFO    ] No camera update needed
[2026-06-27 19:31:34,699.699 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:31:34,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:31:34,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:31:34,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:31:36,744.744 INFO    ] ================================================
[2026-06-27 19:31:36,760.760 INFO    ] Launching Daemon at Sat Jun 27 19:31:36 IST 2026
[2026-06-27 19:31:36,771.771 INFO    ] ================================================
[2026-06-27 19:31:37,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:31:37
[2026-06-27 19:31:37,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:31:37,568.568 INFO    ] Initializing speech engine...
[2026-06-27 19:31:37,573.573 INFO    ] 2026-06-27 19:31:37
[2026-06-27 19:31:37,781.781 INFO    ] 2026-06-27 19:31:37
[2026-06-27 19:31:37,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:31:37,967.967 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:31:37,989.989 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:31:38,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:31:38,178.178 INFO    ] time= 27/06/2026 19:31:38
[2026-06-27 19:31:38,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:31:38,264.264 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:31:38,415.415 INFO    ] No existing commands found in stream
[2026-06-27 19:31:43,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:31:43,423.423 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-27 19:31:45,702.702 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 19:31:45,703.703 INFO    ] Checking for system updates...
[2026-06-27 19:31:45,726.726 INFO    ] 200
[2026-06-27 19:31:45,728.728 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:31:45,758.758 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:31:45,760.760 INFO    ] No update needed
[2026-06-27 19:31:45,761.761 INFO    ] Checking for camera pi updates...
[2026-06-27 19:31:45,783.783 INFO    ] 200
[2026-06-27 19:31:45,784.784 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:31:45,807.807 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:31:45,866.866 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:31:45,867.867 INFO    ] No camera update needed
[2026-06-27 19:31:45,869.869 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:31:45,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:31:45,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:31:45,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:31:47,916.916 INFO    ] ================================================
[2026-06-27 19:31:47,932.932 INFO    ] Launching Daemon at Sat Jun 27 19:31:47 IST 2026
[2026-06-27 19:31:47,944.944 INFO    ] ================================================
[2026-06-27 19:31:48,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:31:48
[2026-06-27 19:31:48,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:31:48,811.811 INFO    ] Initializing speech engine...
[2026-06-27 19:31:48,817.817 INFO    ] 2026-06-27 19:31:48
[2026-06-27 19:31:49,024.024 INFO    ] 2026-06-27 19:31:49
[2026-06-27 19:31:49,053.053 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:31:49,176.176 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:31:49,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:31:49,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:31:49,442.442 INFO    ] time= 27/06/2026 19:31:49
[2026-06-27 19:31:49,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:31:49,476.476 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:31:49,544.544 INFO    ] No existing commands found in stream
[2026-06-27 19:31:54,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:31:54,556.556 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-27 19:31:55,677.677 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 19:31:55,678.678 INFO    ] Checking for system updates...
[2026-06-27 19:31:55,700.700 INFO    ] 200
[2026-06-27 19:31:55,702.702 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:31:55,735.735 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:31:55,736.736 INFO    ] No update needed
[2026-06-27 19:31:55,737.737 INFO    ] Checking for camera pi updates...
[2026-06-27 19:31:55,758.758 INFO    ] 200
[2026-06-27 19:31:55,760.760 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:31:55,785.785 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:31:55,818.818 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:31:55,820.820 INFO    ] No camera update needed
[2026-06-27 19:31:55,821.821 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:31:55,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:31:55,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:31:55,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:31:57,869.869 INFO    ] ================================================
[2026-06-27 19:31:57,885.885 INFO    ] Launching Daemon at Sat Jun 27 19:31:57 IST 2026
[2026-06-27 19:31:57,895.895 INFO    ] ================================================
[2026-06-27 19:31:58,269.269 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:31:58
[2026-06-27 19:31:58,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:31:58,720.720 INFO    ] Initializing speech engine...
[2026-06-27 19:31:58,725.725 INFO    ] 2026-06-27 19:31:58
[2026-06-27 19:31:58,954.954 INFO    ] 2026-06-27 19:31:58
[2026-06-27 19:31:58,985.985 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:31:59,183.183 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:31:59,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:31:59,326.326 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:31:59,388.388 INFO    ] time= 27/06/2026 19:31:59
[2026-06-27 19:31:59,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:31:59,433.433 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:31:59,508.508 INFO    ] No existing commands found in stream
[2026-06-27 19:32:04,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:32:04,521.521 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-27 19:32:05,853.853 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 19:32:05,855.855 INFO    ] Checking for system updates...
[2026-06-27 19:32:05,875.875 INFO    ] 200
[2026-06-27 19:32:05,877.877 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:32:05,909.909 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:32:05,911.911 INFO    ] No update needed
[2026-06-27 19:32:05,912.912 INFO    ] Checking for camera pi updates...
[2026-06-27 19:32:05,941.941 INFO    ] 200
[2026-06-27 19:32:05,942.942 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:32:05,975.975 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:32:06,029.029 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:32:06,030.030 INFO    ] No camera update needed
[2026-06-27 19:32:06,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:32:06,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:32:06,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:32:06,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:32:08,077.077 INFO    ] ================================================
[2026-06-27 19:32:08,101.101 INFO    ] Launching Daemon at Sat Jun 27 19:32:08 IST 2026
[2026-06-27 19:32:08,114.114 INFO    ] ================================================
[2026-06-27 19:32:08,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:32:08
[2026-06-27 19:32:08,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:32:08,878.878 INFO    ] Initializing speech engine...
[2026-06-27 19:32:08,893.893 INFO    ] 2026-06-27 19:32:08
[2026-06-27 19:32:09,102.102 INFO    ] 2026-06-27 19:32:09
[2026-06-27 19:32:09,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:32:09,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:32:09,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:32:09,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:32:09,522.522 INFO    ] time= 27/06/2026 19:32:09
[2026-06-27 19:32:09,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:32:09,557.557 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:32:09,625.625 INFO    ] No existing commands found in stream
[2026-06-27 19:32:14,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:32:14,637.637 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-27 19:32:18,102.102 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:32:18,104.104 INFO    ] Checking for system updates...
[2026-06-27 19:32:18,127.127 INFO    ] 200
[2026-06-27 19:32:18,128.128 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:32:18,159.159 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:32:18,160.160 INFO    ] No update needed
[2026-06-27 19:32:18,161.161 INFO    ] Checking for camera pi updates...
[2026-06-27 19:32:18,181.181 INFO    ] 200
[2026-06-27 19:32:18,182.182 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:32:18,207.207 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:32:18,250.250 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:32:18,251.251 INFO    ] No camera update needed
[2026-06-27 19:32:18,252.252 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:32:18,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:32:18,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:32:18,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:32:20,300.300 INFO    ] ================================================
[2026-06-27 19:32:20,315.315 INFO    ] Launching Daemon at Sat Jun 27 19:32:20 IST 2026
[2026-06-27 19:32:20,326.326 INFO    ] ================================================
[2026-06-27 19:32:20,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:32:20
[2026-06-27 19:32:21,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:32:21,163.163 INFO    ] Initializing speech engine...
[2026-06-27 19:32:21,173.173 INFO    ] 2026-06-27 19:32:21
[2026-06-27 19:32:21,382.382 INFO    ] 2026-06-27 19:32:21
[2026-06-27 19:32:21,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:32:21,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:32:21,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:32:21,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:32:21,720.720 INFO    ] time= 27/06/2026 19:32:21
[2026-06-27 19:32:21,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:32:21,722.722 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:32:21,836.836 INFO    ] No existing commands found in stream
[2026-06-27 19:32:26,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:32:26,849.849 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-27 19:32:30,148.148 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:32:30,150.150 INFO    ] Checking for system updates...
[2026-06-27 19:32:30,171.171 INFO    ] 200
[2026-06-27 19:32:30,172.172 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:32:30,205.205 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:32:30,206.206 INFO    ] No update needed
[2026-06-27 19:32:30,207.207 INFO    ] Checking for camera pi updates...
[2026-06-27 19:32:30,231.231 INFO    ] 200
[2026-06-27 19:32:30,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:32:30,258.258 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:32:30,403.403 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:32:30,404.404 INFO    ] No camera update needed
[2026-06-27 19:32:30,406.406 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:32:30,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:32:30,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:32:30,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:32:32,448.448 INFO    ] ================================================
[2026-06-27 19:32:32,459.459 INFO    ] Launching Daemon at Sat Jun 27 19:32:32 IST 2026
[2026-06-27 19:32:32,466.466 INFO    ] ================================================
[2026-06-27 19:32:32,812.812 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:32:32
[2026-06-27 19:32:33,126.126 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:32:33,268.268 INFO    ] Initializing speech engine...
[2026-06-27 19:32:33,273.273 INFO    ] 2026-06-27 19:32:33
[2026-06-27 19:32:33,477.477 INFO    ] 2026-06-27 19:32:33
[2026-06-27 19:32:33,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:32:33,629.629 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:32:33,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:32:33,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:32:33,868.868 INFO    ] time= 27/06/2026 19:32:33
[2026-06-27 19:32:33,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:32:33,923.923 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:32:33,992.992 INFO    ] No existing commands found in stream
[2026-06-27 19:32:39,003.003 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:32:39,006.006 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-27 19:32:42,596.596 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:32:42,598.598 INFO    ] Checking for system updates...
[2026-06-27 19:32:42,620.620 INFO    ] 200
[2026-06-27 19:32:42,622.622 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:32:42,655.655 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:32:42,657.657 INFO    ] No update needed
[2026-06-27 19:32:42,658.658 INFO    ] Checking for camera pi updates...
[2026-06-27 19:32:42,679.679 INFO    ] 200
[2026-06-27 19:32:42,680.680 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:32:42,707.707 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:32:42,757.757 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:32:42,759.759 INFO    ] No camera update needed
[2026-06-27 19:32:42,760.760 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:32:42,762.762 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:32:42,766.766 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:32:42,769.769 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:32:44,809.809 INFO    ] ================================================
[2026-06-27 19:32:44,824.824 INFO    ] Launching Daemon at Sat Jun 27 19:32:44 IST 2026
[2026-06-27 19:32:44,836.836 INFO    ] ================================================
[2026-06-27 19:32:45,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:32:45
[2026-06-27 19:32:45,481.481 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:32:45,624.624 INFO    ] Initializing speech engine...
[2026-06-27 19:32:45,629.629 INFO    ] 2026-06-27 19:32:45
[2026-06-27 19:32:45,835.835 INFO    ] 2026-06-27 19:32:45
[2026-06-27 19:32:45,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:32:46,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:32:46,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:32:46,189.189 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:32:46,248.248 INFO    ] time= 27/06/2026 19:32:46
[2026-06-27 19:32:46,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:32:46,283.283 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:32:46,354.354 INFO    ] No existing commands found in stream
[2026-06-27 19:32:51,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:32:51,367.367 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-27 19:32:54,607.607 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 19:32:54,608.608 INFO    ] Checking for system updates...
[2026-06-27 19:32:54,629.629 INFO    ] 200
[2026-06-27 19:32:54,631.631 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:32:54,662.662 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:32:54,663.663 INFO    ] No update needed
[2026-06-27 19:32:54,664.664 INFO    ] Checking for camera pi updates...
[2026-06-27 19:32:54,685.685 INFO    ] 200
[2026-06-27 19:32:54,686.686 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:32:54,710.710 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:32:54,743.743 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:32:54,745.745 INFO    ] No camera update needed
[2026-06-27 19:32:54,746.746 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:32:54,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:32:54,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:32:54,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:32:56,792.792 INFO    ] ================================================
[2026-06-27 19:32:56,808.808 INFO    ] Launching Daemon at Sat Jun 27 19:32:56 IST 2026
[2026-06-27 19:32:56,819.819 INFO    ] ================================================
[2026-06-27 19:32:57,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:32:57
[2026-06-27 19:32:57,473.473 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:32:57,604.604 INFO    ] Initializing speech engine...
[2026-06-27 19:32:57,607.607 INFO    ] 2026-06-27 19:32:57
[2026-06-27 19:32:57,834.834 INFO    ] 2026-06-27 19:32:57
[2026-06-27 19:32:57,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:32:58,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:32:58,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:32:58,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:32:58,270.270 INFO    ] time= 27/06/2026 19:32:58
[2026-06-27 19:32:58,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:32:58,298.298 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:32:58,372.372 INFO    ] No existing commands found in stream
[2026-06-27 19:33:03,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:33:03,382.382 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-27 19:33:07,051.051 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 19:33:07,054.054 INFO    ] Checking for system updates...
[2026-06-27 19:33:07,091.091 INFO    ] 200
[2026-06-27 19:33:07,094.094 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:33:07,148.148 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:33:07,151.151 INFO    ] No update needed
[2026-06-27 19:33:07,153.153 INFO    ] Checking for camera pi updates...
[2026-06-27 19:33:07,190.190 INFO    ] 200
[2026-06-27 19:33:07,192.192 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:33:07,225.225 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:33:07,276.276 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:33:07,278.278 INFO    ] No camera update needed
[2026-06-27 19:33:07,279.279 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:33:07,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:33:07,283.283 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:33:07,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:33:09,318.318 INFO    ] ================================================
[2026-06-27 19:33:09,332.332 INFO    ] Launching Daemon at Sat Jun 27 19:33:09 IST 2026
[2026-06-27 19:33:09,343.343 INFO    ] ================================================
[2026-06-27 19:33:09,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:33:09
[2026-06-27 19:33:10,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:33:10,145.145 INFO    ] Initializing speech engine...
[2026-06-27 19:33:10,149.149 INFO    ] 2026-06-27 19:33:10
[2026-06-27 19:33:10,367.367 INFO    ] 2026-06-27 19:33:10
[2026-06-27 19:33:10,397.397 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:33:10,520.520 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:33:10,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:33:10,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:33:10,788.788 INFO    ] time= 27/06/2026 19:33:10
[2026-06-27 19:33:10,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:33:10,816.816 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:33:10,888.888 INFO    ] No existing commands found in stream
[2026-06-27 19:33:15,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:33:15,905.905 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-27 19:33:16,627.627 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:33:16,628.628 INFO    ] Checking for system updates...
[2026-06-27 19:33:16,652.652 INFO    ] 200
[2026-06-27 19:33:16,654.654 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:33:16,685.685 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:33:16,686.686 INFO    ] No update needed
[2026-06-27 19:33:16,688.688 INFO    ] Checking for camera pi updates...
[2026-06-27 19:33:16,708.708 INFO    ] 200
[2026-06-27 19:33:16,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:33:16,733.733 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:33:16,792.792 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:33:16,794.794 INFO    ] No camera update needed
[2026-06-27 19:33:16,795.795 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:33:16,796.796 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:33:16,820.820 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:33:16,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:33:18,863.863 INFO    ] ================================================
[2026-06-27 19:33:18,879.879 INFO    ] Launching Daemon at Sat Jun 27 19:33:18 IST 2026
[2026-06-27 19:33:18,890.890 INFO    ] ================================================
[2026-06-27 19:33:19,246.246 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:33:19
[2026-06-27 19:33:19,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:33:19,732.732 INFO    ] Initializing speech engine...
[2026-06-27 19:33:19,738.738 INFO    ] 2026-06-27 19:33:19
[2026-06-27 19:33:19,945.945 INFO    ] 2026-06-27 19:33:19
[2026-06-27 19:33:19,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:33:20,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:33:20,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:33:20,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:33:20,364.364 INFO    ] time= 27/06/2026 19:33:20
[2026-06-27 19:33:20,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:33:20,392.392 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:33:20,460.460 INFO    ] No existing commands found in stream
[2026-06-27 19:33:25,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:33:25,477.477 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-27 19:33:29,237.237 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 19:33:29,239.239 INFO    ] Checking for system updates...
[2026-06-27 19:33:29,261.261 INFO    ] 200
[2026-06-27 19:33:29,262.262 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:33:29,295.295 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:33:29,296.296 INFO    ] No update needed
[2026-06-27 19:33:29,297.297 INFO    ] Checking for camera pi updates...
[2026-06-27 19:33:29,317.317 INFO    ] 200
[2026-06-27 19:33:29,319.319 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:33:29,342.342 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:33:29,382.382 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:33:29,383.383 INFO    ] No camera update needed
[2026-06-27 19:33:29,385.385 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:33:29,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:33:29,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:33:29,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:33:31,432.432 INFO    ] ================================================
[2026-06-27 19:33:31,447.447 INFO    ] Launching Daemon at Sat Jun 27 19:33:31 IST 2026
[2026-06-27 19:33:31,458.458 INFO    ] ================================================
[2026-06-27 19:33:31,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:33:31
[2026-06-27 19:33:32,120.120 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:33:32,287.287 INFO    ] Initializing speech engine...
[2026-06-27 19:33:32,294.294 INFO    ] 2026-06-27 19:33:32
[2026-06-27 19:33:32,492.492 INFO    ] 2026-06-27 19:33:32
[2026-06-27 19:33:32,543.543 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:33:32,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:33:32,757.757 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:33:32,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:33:32,941.941 INFO    ] time= 27/06/2026 19:33:32
[2026-06-27 19:33:32,983.983 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:33:33,024.024 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:33:33,123.123 INFO    ] No existing commands found in stream
[2026-06-27 19:33:38,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:33:38,137.137 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-27 19:33:38,607.607 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 19:33:38,609.609 INFO    ] Checking for system updates...
[2026-06-27 19:33:38,631.631 INFO    ] 200
[2026-06-27 19:33:38,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:33:38,665.665 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:33:38,666.666 INFO    ] No update needed
[2026-06-27 19:33:38,668.668 INFO    ] Checking for camera pi updates...
[2026-06-27 19:33:38,687.687 INFO    ] 200
[2026-06-27 19:33:38,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:33:38,714.714 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:33:38,758.758 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:33:38,759.759 INFO    ] No camera update needed
[2026-06-27 19:33:38,760.760 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:33:38,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:33:38,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:33:38,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:33:40,806.806 INFO    ] ================================================
[2026-06-27 19:33:40,820.820 INFO    ] Launching Daemon at Sat Jun 27 19:33:40 IST 2026
[2026-06-27 19:33:40,831.831 INFO    ] ================================================
[2026-06-27 19:33:41,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:33:41
[2026-06-27 19:33:41,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:33:41,620.620 INFO    ] Initializing speech engine...
[2026-06-27 19:33:41,628.628 INFO    ] 2026-06-27 19:33:41
[2026-06-27 19:33:41,840.840 INFO    ] 2026-06-27 19:33:41
[2026-06-27 19:33:41,869.869 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:33:42,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:33:42,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:33:42,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:33:42,261.261 INFO    ] time= 27/06/2026 19:33:42
[2026-06-27 19:33:42,284.284 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:33:42,290.290 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:33:42,356.356 INFO    ] No existing commands found in stream
[2026-06-27 19:33:47,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:33:47,369.369 INFO    ] Waiting 1.59 seconds before fallback handling...
[2026-06-27 19:33:49,374.374 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:33:49,375.375 INFO    ] Checking for system updates...
[2026-06-27 19:33:49,397.397 INFO    ] 200
[2026-06-27 19:33:49,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:33:49,430.430 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:33:49,431.431 INFO    ] No update needed
[2026-06-27 19:33:49,432.432 INFO    ] Checking for camera pi updates...
[2026-06-27 19:33:49,455.455 INFO    ] 200
[2026-06-27 19:33:49,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:33:49,481.481 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:33:49,522.522 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:33:49,524.524 INFO    ] No camera update needed
[2026-06-27 19:33:49,525.525 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:33:49,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:33:49,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:33:49,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:33:51,570.570 INFO    ] ================================================
[2026-06-27 19:33:51,586.586 INFO    ] Launching Daemon at Sat Jun 27 19:33:51 IST 2026
[2026-06-27 19:33:51,596.596 INFO    ] ================================================
[2026-06-27 19:33:51,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:33:51
[2026-06-27 19:33:52,232.232 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:33:52,369.369 INFO    ] Initializing speech engine...
[2026-06-27 19:33:52,379.379 INFO    ] 2026-06-27 19:33:52
[2026-06-27 19:33:52,584.584 INFO    ] 2026-06-27 19:33:52
[2026-06-27 19:33:52,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:33:52,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:33:52,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:33:52,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:33:52,930.930 INFO    ] time= 27/06/2026 19:33:52
[2026-06-27 19:33:52,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:33:53,025.025 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:33:53,123.123 INFO    ] No existing commands found in stream
[2026-06-27 19:33:58,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:33:58,135.135 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-27 19:33:58,808.808 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:33:58,810.810 INFO    ] Checking for system updates...
[2026-06-27 19:33:58,833.833 INFO    ] 200
[2026-06-27 19:33:58,835.835 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:33:58,873.873 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:33:58,875.875 INFO    ] No update needed
[2026-06-27 19:33:58,877.877 INFO    ] Checking for camera pi updates...
[2026-06-27 19:33:58,898.898 INFO    ] 200
[2026-06-27 19:33:58,900.900 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:33:58,939.939 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:33:58,986.986 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:33:58,988.988 INFO    ] No camera update needed
[2026-06-27 19:33:58,989.989 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:33:58,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:33:58,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:33:58,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:34:01,027.027 INFO    ] ================================================
[2026-06-27 19:34:01,036.036 INFO    ] Launching Daemon at Sat Jun 27 19:34:01 IST 2026
[2026-06-27 19:34:01,042.042 INFO    ] ================================================
[2026-06-27 19:34:01,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:34:01
[2026-06-27 19:34:01,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:34:02,094.094 INFO    ] Initializing speech engine...
[2026-06-27 19:34:02,110.110 INFO    ] 2026-06-27 19:34:02
[2026-06-27 19:34:02,355.355 INFO    ] 2026-06-27 19:34:02
[2026-06-27 19:34:02,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:34:02,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:34:02,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:34:02,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:34:02,778.778 INFO    ] time= 27/06/2026 19:34:02
[2026-06-27 19:34:02,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:34:02,835.835 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:34:02,911.911 INFO    ] No existing commands found in stream
[2026-06-27 19:34:07,921.921 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:34:07,924.924 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-27 19:34:09,606.606 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:34:09,607.607 INFO    ] Checking for system updates...
[2026-06-27 19:34:09,628.628 INFO    ] 200
[2026-06-27 19:34:09,629.629 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:34:09,659.659 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:34:09,661.661 INFO    ] No update needed
[2026-06-27 19:34:09,662.662 INFO    ] Checking for camera pi updates...
[2026-06-27 19:34:09,682.682 INFO    ] 200
[2026-06-27 19:34:09,683.683 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:34:09,707.707 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:34:09,754.754 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:34:09,755.755 INFO    ] No camera update needed
[2026-06-27 19:34:09,756.756 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:34:09,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:34:09,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:34:09,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:34:11,803.803 INFO    ] ================================================
[2026-06-27 19:34:11,818.818 INFO    ] Launching Daemon at Sat Jun 27 19:34:11 IST 2026
[2026-06-27 19:34:11,829.829 INFO    ] ================================================
[2026-06-27 19:34:12,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:34:12
[2026-06-27 19:34:12,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:34:12,640.640 INFO    ] Initializing speech engine...
[2026-06-27 19:34:12,657.657 INFO    ] 2026-06-27 19:34:12
[2026-06-27 19:34:12,890.890 INFO    ] 2026-06-27 19:34:12
[2026-06-27 19:34:12,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:34:13,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:34:13,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:34:13,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:34:13,338.338 INFO    ] time= 27/06/2026 19:34:13
[2026-06-27 19:34:13,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:34:13,345.345 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:34:13,411.411 INFO    ] No existing commands found in stream
[2026-06-27 19:34:18,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:34:18,425.425 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-27 19:34:22,467.467 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:34:22,469.469 INFO    ] Checking for system updates...
[2026-06-27 19:34:22,490.490 INFO    ] 200
[2026-06-27 19:34:22,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:34:22,521.521 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:34:22,523.523 INFO    ] No update needed
[2026-06-27 19:34:22,524.524 INFO    ] Checking for camera pi updates...
[2026-06-27 19:34:22,547.547 INFO    ] 200
[2026-06-27 19:34:22,549.549 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:34:22,572.572 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:34:22,616.616 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:34:22,617.617 INFO    ] No camera update needed
[2026-06-27 19:34:22,619.619 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:34:22,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:34:22,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:34:22,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:34:24,666.666 INFO    ] ================================================
[2026-06-27 19:34:24,681.681 INFO    ] Launching Daemon at Sat Jun 27 19:34:24 IST 2026
[2026-06-27 19:34:24,692.692 INFO    ] ================================================
[2026-06-27 19:34:25,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:34:25
[2026-06-27 19:34:25,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:34:25,498.498 INFO    ] Initializing speech engine...
[2026-06-27 19:34:25,508.508 INFO    ] 2026-06-27 19:34:25
[2026-06-27 19:34:25,725.725 INFO    ] 2026-06-27 19:34:25
[2026-06-27 19:34:25,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:34:25,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:34:25,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:34:26,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:34:26,162.162 INFO    ] time= 27/06/2026 19:34:26
[2026-06-27 19:34:26,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:34:26,209.209 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:34:26,285.285 INFO    ] No existing commands found in stream
[2026-06-27 19:34:31,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:34:31,319.319 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-27 19:34:33,381.381 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:34:33,383.383 INFO    ] Checking for system updates...
[2026-06-27 19:34:33,404.404 INFO    ] 200
[2026-06-27 19:34:33,405.405 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:34:33,435.435 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:34:33,436.436 INFO    ] No update needed
[2026-06-27 19:34:33,438.438 INFO    ] Checking for camera pi updates...
[2026-06-27 19:34:33,458.458 INFO    ] 200
[2026-06-27 19:34:33,459.459 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:34:33,484.484 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:34:33,527.527 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:34:33,528.528 INFO    ] No camera update needed
[2026-06-27 19:34:33,530.530 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:34:33,531.531 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:34:33,534.534 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:34:33,537.537 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:34:35,576.576 INFO    ] ================================================
[2026-06-27 19:34:35,591.591 INFO    ] Launching Daemon at Sat Jun 27 19:34:35 IST 2026
[2026-06-27 19:34:35,601.601 INFO    ] ================================================
[2026-06-27 19:34:35,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:34:35
[2026-06-27 19:34:36,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:34:36,402.402 INFO    ] Initializing speech engine...
[2026-06-27 19:34:36,407.407 INFO    ] 2026-06-27 19:34:36
[2026-06-27 19:34:36,637.637 INFO    ] 2026-06-27 19:34:36
[2026-06-27 19:34:36,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:34:36,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:34:36,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:34:37,088.088 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:34:37,115.115 INFO    ] time= 27/06/2026 19:34:37
[2026-06-27 19:34:37,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:34:37,122.122 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:34:37,194.194 INFO    ] No existing commands found in stream
[2026-06-27 19:34:42,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:34:42,207.207 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-27 19:34:43,588.588 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:34:43,589.589 INFO    ] Checking for system updates...
[2026-06-27 19:34:43,611.611 INFO    ] 200
[2026-06-27 19:34:43,613.613 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:34:43,643.643 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:34:43,645.645 INFO    ] No update needed
[2026-06-27 19:34:43,646.646 INFO    ] Checking for camera pi updates...
[2026-06-27 19:34:43,668.668 INFO    ] 200
[2026-06-27 19:34:43,669.669 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:34:43,692.692 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:34:43,739.739 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:34:43,740.740 INFO    ] No camera update needed
[2026-06-27 19:34:43,741.741 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:34:43,743.743 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:34:43,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:34:43,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:34:45,787.787 INFO    ] ================================================
[2026-06-27 19:34:45,802.802 INFO    ] Launching Daemon at Sat Jun 27 19:34:45 IST 2026
[2026-06-27 19:34:45,814.814 INFO    ] ================================================
[2026-06-27 19:34:46,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:34:46
[2026-06-27 19:34:46,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:34:46,620.620 INFO    ] Initializing speech engine...
[2026-06-27 19:34:46,625.625 INFO    ] 2026-06-27 19:34:46
[2026-06-27 19:34:46,829.829 INFO    ] 2026-06-27 19:34:46
[2026-06-27 19:34:46,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:34:47,042.042 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:34:47,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:34:47,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:34:47,250.250 INFO    ] time= 27/06/2026 19:34:47
[2026-06-27 19:34:47,273.273 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:34:47,343.343 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:34:47,464.464 INFO    ] No existing commands found in stream
[2026-06-27 19:34:52,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:34:52,478.478 INFO    ] Waiting 2.22 seconds before fallback handling...
[2026-06-27 19:34:55,201.201 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:34:55,202.202 INFO    ] Checking for system updates...
[2026-06-27 19:34:55,223.223 INFO    ] 200
[2026-06-27 19:34:55,225.225 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:34:55,258.258 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:34:55,259.259 INFO    ] No update needed
[2026-06-27 19:34:55,260.260 INFO    ] Checking for camera pi updates...
[2026-06-27 19:34:55,280.280 INFO    ] 200
[2026-06-27 19:34:55,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:34:55,305.305 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:34:55,336.336 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:34:55,338.338 INFO    ] No camera update needed
[2026-06-27 19:34:55,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:34:55,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:34:55,343.343 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:34:55,346.346 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:34:57,384.384 INFO    ] ================================================
[2026-06-27 19:34:57,399.399 INFO    ] Launching Daemon at Sat Jun 27 19:34:57 IST 2026
[2026-06-27 19:34:57,410.410 INFO    ] ================================================
[2026-06-27 19:34:57,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:34:57
[2026-06-27 19:34:58,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:34:58,244.244 INFO    ] Initializing speech engine...
[2026-06-27 19:34:58,256.256 INFO    ] 2026-06-27 19:34:58
[2026-06-27 19:34:58,465.465 INFO    ] 2026-06-27 19:34:58
[2026-06-27 19:34:58,496.496 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:34:58,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:34:58,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:34:58,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:34:58,890.890 INFO    ] time= 27/06/2026 19:34:58
[2026-06-27 19:34:58,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:34:58,918.918 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:34:58,985.985 INFO    ] No existing commands found in stream
[2026-06-27 19:35:03,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:35:04,001.001 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-27 19:35:05,264.264 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:35:05,265.265 INFO    ] Checking for system updates...
[2026-06-27 19:35:05,286.286 INFO    ] 200
[2026-06-27 19:35:05,288.288 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:35:05,320.320 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:35:05,322.322 INFO    ] No update needed
[2026-06-27 19:35:05,323.323 INFO    ] Checking for camera pi updates...
[2026-06-27 19:35:05,347.347 INFO    ] 200
[2026-06-27 19:35:05,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:35:05,375.375 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:35:05,421.421 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:35:05,423.423 INFO    ] No camera update needed
[2026-06-27 19:35:05,425.425 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:35:05,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:35:05,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:35:05,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:35:07,471.471 INFO    ] ================================================
[2026-06-27 19:35:07,486.486 INFO    ] Launching Daemon at Sat Jun 27 19:35:07 IST 2026
[2026-06-27 19:35:07,496.496 INFO    ] ================================================
[2026-06-27 19:35:07,843.843 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:35:07
[2026-06-27 19:35:08,155.155 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:35:08,288.288 INFO    ] Initializing speech engine...
[2026-06-27 19:35:08,296.296 INFO    ] 2026-06-27 19:35:08
[2026-06-27 19:35:08,511.511 INFO    ] 2026-06-27 19:35:08
[2026-06-27 19:35:08,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:35:08,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:35:08,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:35:08,869.869 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:35:08,937.937 INFO    ] time= 27/06/2026 19:35:08
[2026-06-27 19:35:08,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:35:08,968.968 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:35:09,035.035 INFO    ] No existing commands found in stream
[2026-06-27 19:35:14,044.044 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:35:14,047.047 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-27 19:35:15,316.316 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:35:15,317.317 INFO    ] Checking for system updates...
[2026-06-27 19:35:15,339.339 INFO    ] 200
[2026-06-27 19:35:15,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:35:15,370.370 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:35:15,372.372 INFO    ] No update needed
[2026-06-27 19:35:15,373.373 INFO    ] Checking for camera pi updates...
[2026-06-27 19:35:15,394.394 INFO    ] 200
[2026-06-27 19:35:15,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:35:15,418.418 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:35:15,462.462 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:35:15,463.463 INFO    ] No camera update needed
[2026-06-27 19:35:15,465.465 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:35:15,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:35:15,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:35:15,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:35:17,510.510 INFO    ] ================================================
[2026-06-27 19:35:17,526.526 INFO    ] Launching Daemon at Sat Jun 27 19:35:17 IST 2026
[2026-06-27 19:35:17,536.536 INFO    ] ================================================
[2026-06-27 19:35:17,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:35:17
[2026-06-27 19:35:18,273.273 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:35:18,425.425 INFO    ] Initializing speech engine...
[2026-06-27 19:35:18,431.431 INFO    ] 2026-06-27 19:35:18
[2026-06-27 19:35:18,641.641 INFO    ] 2026-06-27 19:35:18
[2026-06-27 19:35:18,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:35:18,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:35:18,983.983 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:35:19,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:35:19,271.271 INFO    ] time= 27/06/2026 19:35:19
[2026-06-27 19:35:19,274.274 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:35:19,279.279 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:35:19,349.349 INFO    ] No existing commands found in stream
[2026-06-27 19:35:24,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:35:24,363.363 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-27 19:35:25,748.748 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:35:25,750.750 INFO    ] Checking for system updates...
[2026-06-27 19:35:25,771.771 INFO    ] 200
[2026-06-27 19:35:25,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:35:25,803.803 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:35:25,805.805 INFO    ] No update needed
[2026-06-27 19:35:25,806.806 INFO    ] Checking for camera pi updates...
[2026-06-27 19:35:25,826.826 INFO    ] 200
[2026-06-27 19:35:25,828.828 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:35:25,851.851 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:35:25,897.897 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:35:25,899.899 INFO    ] No camera update needed
[2026-06-27 19:35:25,900.900 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:35:25,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:35:25,905.905 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:35:25,908.908 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:35:27,946.946 INFO    ] ================================================
[2026-06-27 19:35:27,962.962 INFO    ] Launching Daemon at Sat Jun 27 19:35:27 IST 2026
[2026-06-27 19:35:27,973.973 INFO    ] ================================================
[2026-06-27 19:35:28,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:35:28
[2026-06-27 19:35:28,644.644 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:35:28,779.779 INFO    ] Initializing speech engine...
[2026-06-27 19:35:28,791.791 INFO    ] 2026-06-27 19:35:28
[2026-06-27 19:35:28,997.997 INFO    ] 2026-06-27 19:35:28
[2026-06-27 19:35:29,027.027 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:35:29,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:35:29,219.219 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:35:29,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:35:29,414.414 INFO    ] time= 27/06/2026 19:35:29
[2026-06-27 19:35:29,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:35:29,444.444 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:35:29,511.511 INFO    ] No existing commands found in stream
[2026-06-27 19:35:34,535.535 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:35:34,538.538 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-27 19:35:36,768.768 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:35:36,769.769 INFO    ] Checking for system updates...
[2026-06-27 19:35:36,792.792 INFO    ] 200
[2026-06-27 19:35:36,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:35:36,826.826 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:35:36,828.828 INFO    ] No update needed
[2026-06-27 19:35:36,829.829 INFO    ] Checking for camera pi updates...
[2026-06-27 19:35:36,849.849 INFO    ] 200
[2026-06-27 19:35:36,851.851 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:35:36,876.876 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:35:36,947.947 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:35:36,949.949 INFO    ] No camera update needed
[2026-06-27 19:35:36,950.950 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:35:36,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:35:36,955.955 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:35:36,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:35:39,998.998 INFO    ] ================================================
[2026-06-27 19:35:39,013.013 INFO    ] Launching Daemon at Sat Jun 27 19:35:39 IST 2026
[2026-06-27 19:35:39,024.024 INFO    ] ================================================
[2026-06-27 19:35:39,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:35:39
[2026-06-27 19:35:39,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:35:39,821.821 INFO    ] Initializing speech engine...
[2026-06-27 19:35:39,824.824 INFO    ] 2026-06-27 19:35:39
[2026-06-27 19:35:40,024.024 INFO    ] 2026-06-27 19:35:40
[2026-06-27 19:35:40,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:35:40,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:35:40,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:35:40,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:35:40,485.485 INFO    ] time= 27/06/2026 19:35:40
[2026-06-27 19:35:40,534.534 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:35:40,541.541 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:35:40,618.618 INFO    ] No existing commands found in stream
[2026-06-27 19:35:45,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:35:45,635.635 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-27 19:35:48,406.406 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 19:35:48,408.408 INFO    ] Checking for system updates...
[2026-06-27 19:35:48,429.429 INFO    ] 200
[2026-06-27 19:35:48,430.430 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:35:48,463.463 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:35:48,464.464 INFO    ] No update needed
[2026-06-27 19:35:48,466.466 INFO    ] Checking for camera pi updates...
[2026-06-27 19:35:48,485.485 INFO    ] 200
[2026-06-27 19:35:48,487.487 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:35:48,510.510 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:35:48,557.557 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:35:48,558.558 INFO    ] No camera update needed
[2026-06-27 19:35:48,560.560 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:35:48,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:35:48,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:35:48,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:35:50,606.606 INFO    ] ================================================
[2026-06-27 19:35:50,622.622 INFO    ] Launching Daemon at Sat Jun 27 19:35:50 IST 2026
[2026-06-27 19:35:50,633.633 INFO    ] ================================================
[2026-06-27 19:35:51,026.026 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:35:51
[2026-06-27 19:35:51,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:35:51,520.520 INFO    ] Initializing speech engine...
[2026-06-27 19:35:51,526.526 INFO    ] 2026-06-27 19:35:51
[2026-06-27 19:35:51,736.736 INFO    ] 2026-06-27 19:35:51
[2026-06-27 19:35:51,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:35:51,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:35:51,956.956 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:35:52,094.094 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:35:52,162.162 INFO    ] time= 27/06/2026 19:35:52
[2026-06-27 19:35:52,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:35:52,193.193 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:35:52,261.261 INFO    ] No existing commands found in stream
[2026-06-27 19:35:57,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:35:57,274.274 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-27 19:35:58,779.779 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:35:58,781.781 INFO    ] Checking for system updates...
[2026-06-27 19:35:58,802.802 INFO    ] 200
[2026-06-27 19:35:58,803.803 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:35:58,834.834 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:35:58,836.836 INFO    ] No update needed
[2026-06-27 19:35:58,837.837 INFO    ] Checking for camera pi updates...
[2026-06-27 19:35:58,857.857 INFO    ] 200
[2026-06-27 19:35:58,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:35:58,885.885 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:35:58,927.927 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:35:58,929.929 INFO    ] No camera update needed
[2026-06-27 19:35:58,930.930 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:35:58,931.931 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:35:58,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:35:58,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:36:00,975.975 INFO    ] ================================================
[2026-06-27 19:36:00,991.991 INFO    ] Launching Daemon at Sat Jun 27 19:36:00 IST 2026
[2026-06-27 19:36:01,002.002 INFO    ] ================================================
[2026-06-27 19:36:01,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:36:01
[2026-06-27 19:36:01,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:36:01,786.786 INFO    ] Initializing speech engine...
[2026-06-27 19:36:01,794.794 INFO    ] 2026-06-27 19:36:01
[2026-06-27 19:36:02,006.006 INFO    ] 2026-06-27 19:36:02
[2026-06-27 19:36:02,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:36:02,197.197 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:36:02,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:36:02,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:36:02,378.378 INFO    ] time= 27/06/2026 19:36:02
[2026-06-27 19:36:02,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:36:02,409.409 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:36:02,471.471 INFO    ] No existing commands found in stream
[2026-06-27 19:36:07,480.480 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:36:07,483.483 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-27 19:36:10,953.953 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:36:10,955.955 INFO    ] Checking for system updates...
[2026-06-27 19:36:10,978.978 INFO    ] 200
[2026-06-27 19:36:10,979.979 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:36:11,009.009 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:36:11,011.011 INFO    ] No update needed
[2026-06-27 19:36:11,012.012 INFO    ] Checking for camera pi updates...
[2026-06-27 19:36:11,031.031 INFO    ] 200
[2026-06-27 19:36:11,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:36:11,058.058 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:36:11,098.098 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:36:11,099.099 INFO    ] No camera update needed
[2026-06-27 19:36:11,101.101 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:36:11,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:36:11,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:36:11,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:36:13,147.147 INFO    ] ================================================
[2026-06-27 19:36:13,162.162 INFO    ] Launching Daemon at Sat Jun 27 19:36:13 IST 2026
[2026-06-27 19:36:13,173.173 INFO    ] ================================================
[2026-06-27 19:36:13,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:36:13
[2026-06-27 19:36:13,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:36:14,006.006 INFO    ] Initializing speech engine...
[2026-06-27 19:36:14,011.011 INFO    ] 2026-06-27 19:36:14
[2026-06-27 19:36:14,215.215 INFO    ] 2026-06-27 19:36:14
[2026-06-27 19:36:14,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:36:14,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:36:14,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:36:14,581.581 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:36:14,639.639 INFO    ] time= 27/06/2026 19:36:14
[2026-06-27 19:36:14,677.677 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:36:14,684.684 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:36:14,758.758 INFO    ] No existing commands found in stream
[2026-06-27 19:36:19,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:36:19,770.770 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-27 19:36:23,038.038 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 19:36:23,040.040 INFO    ] Checking for system updates...
[2026-06-27 19:36:23,061.061 INFO    ] 200
[2026-06-27 19:36:23,062.062 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:36:23,093.093 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:36:23,095.095 INFO    ] No update needed
[2026-06-27 19:36:23,096.096 INFO    ] Checking for camera pi updates...
[2026-06-27 19:36:23,116.116 INFO    ] 200
[2026-06-27 19:36:23,118.118 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:36:23,143.143 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:36:23,190.190 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:36:23,191.191 INFO    ] No camera update needed
[2026-06-27 19:36:23,192.192 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:36:23,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:36:23,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:36:23,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:36:25,240.240 INFO    ] ================================================
[2026-06-27 19:36:25,256.256 INFO    ] Launching Daemon at Sat Jun 27 19:36:25 IST 2026
[2026-06-27 19:36:25,266.266 INFO    ] ================================================
[2026-06-27 19:36:25,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:36:25
[2026-06-27 19:36:25,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:36:26,044.044 INFO    ] Initializing speech engine...
[2026-06-27 19:36:26,049.049 INFO    ] 2026-06-27 19:36:26
[2026-06-27 19:36:26,265.265 INFO    ] 2026-06-27 19:36:26
[2026-06-27 19:36:26,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:36:26,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:36:26,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:36:26,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:36:26,705.705 INFO    ] time= 27/06/2026 19:36:26
[2026-06-27 19:36:26,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:36:26,737.737 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:36:26,802.802 INFO    ] No existing commands found in stream
[2026-06-27 19:36:31,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:36:31,816.816 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-27 19:36:33,972.972 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:36:33,973.973 INFO    ] Checking for system updates...
[2026-06-27 19:36:33,994.994 INFO    ] 200
[2026-06-27 19:36:33,996.996 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:36:34,026.026 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:36:34,028.028 INFO    ] No update needed
[2026-06-27 19:36:34,029.029 INFO    ] Checking for camera pi updates...
[2026-06-27 19:36:34,050.050 INFO    ] 200
[2026-06-27 19:36:34,051.051 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:36:34,075.075 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:36:34,213.213 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:36:34,214.214 INFO    ] No camera update needed
[2026-06-27 19:36:34,215.215 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:36:34,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:36:34,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:36:34,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:36:36,261.261 INFO    ] ================================================
[2026-06-27 19:36:36,277.277 INFO    ] Launching Daemon at Sat Jun 27 19:36:36 IST 2026
[2026-06-27 19:36:36,288.288 INFO    ] ================================================
[2026-06-27 19:36:36,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:36:36
[2026-06-27 19:36:36,952.952 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:36:37,095.095 INFO    ] Initializing speech engine...
[2026-06-27 19:36:37,101.101 INFO    ] 2026-06-27 19:36:37
[2026-06-27 19:36:37,308.308 INFO    ] 2026-06-27 19:36:37
[2026-06-27 19:36:37,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:36:37,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:36:37,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:36:37,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:36:37,776.776 INFO    ] time= 27/06/2026 19:36:37
[2026-06-27 19:36:37,782.782 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:36:37,784.784 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:36:37,857.857 INFO    ] No existing commands found in stream
[2026-06-27 19:36:42,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:36:42,868.868 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-27 19:36:45,628.628 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 19:36:45,629.629 INFO    ] Checking for system updates...
[2026-06-27 19:36:45,651.651 INFO    ] 200
[2026-06-27 19:36:45,652.652 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:36:45,683.683 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:36:45,684.684 INFO    ] No update needed
[2026-06-27 19:36:45,685.685 INFO    ] Checking for camera pi updates...
[2026-06-27 19:36:45,707.707 INFO    ] 200
[2026-06-27 19:36:45,708.708 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:36:45,731.731 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:36:45,777.777 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:36:45,778.778 INFO    ] No camera update needed
[2026-06-27 19:36:45,780.780 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:36:45,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:36:45,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:36:45,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:36:47,827.827 INFO    ] ================================================
[2026-06-27 19:36:47,843.843 INFO    ] Launching Daemon at Sat Jun 27 19:36:47 IST 2026
[2026-06-27 19:36:47,854.854 INFO    ] ================================================
[2026-06-27 19:36:48,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:36:48
[2026-06-27 19:36:48,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:36:48,634.634 INFO    ] Initializing speech engine...
[2026-06-27 19:36:48,642.642 INFO    ] 2026-06-27 19:36:48
[2026-06-27 19:36:48,851.851 INFO    ] 2026-06-27 19:36:48
[2026-06-27 19:36:48,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:36:49,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:36:49,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:36:49,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:36:49,275.275 INFO    ] time= 27/06/2026 19:36:49
[2026-06-27 19:36:49,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:36:49,306.306 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:36:49,373.373 INFO    ] No existing commands found in stream
[2026-06-27 19:36:54,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:36:54,385.385 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-27 19:36:56,493.493 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 19:36:56,494.494 INFO    ] Checking for system updates...
[2026-06-27 19:36:56,515.515 INFO    ] 200
[2026-06-27 19:36:56,516.516 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:36:56,547.547 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:36:56,548.548 INFO    ] No update needed
[2026-06-27 19:36:56,549.549 INFO    ] Checking for camera pi updates...
[2026-06-27 19:36:56,570.570 INFO    ] 200
[2026-06-27 19:36:56,572.572 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:36:56,597.597 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:36:56,639.639 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:36:56,640.640 INFO    ] No camera update needed
[2026-06-27 19:36:56,642.642 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:36:56,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:36:56,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:36:56,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:36:58,690.690 INFO    ] ================================================
[2026-06-27 19:36:58,705.705 INFO    ] Launching Daemon at Sat Jun 27 19:36:58 IST 2026
[2026-06-27 19:36:58,716.716 INFO    ] ================================================
[2026-06-27 19:36:59,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:36:59
[2026-06-27 19:36:59,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:36:59,530.530 INFO    ] Initializing speech engine...
[2026-06-27 19:36:59,537.537 INFO    ] 2026-06-27 19:36:59
[2026-06-27 19:36:59,763.763 INFO    ] 2026-06-27 19:36:59
[2026-06-27 19:36:59,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:36:59,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:36:59,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:37:00,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:37:00,221.221 INFO    ] time= 27/06/2026 19:37:00
[2026-06-27 19:37:00,246.246 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:37:00,252.252 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:37:00,377.377 INFO    ] No existing commands found in stream
[2026-06-27 19:37:05,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:37:05,390.390 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-27 19:37:05,963.963 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:37:05,965.965 INFO    ] Checking for system updates...
[2026-06-27 19:37:05,987.987 INFO    ] 200
[2026-06-27 19:37:05,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:37:06,023.023 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:37:06,024.024 INFO    ] No update needed
[2026-06-27 19:37:06,026.026 INFO    ] Checking for camera pi updates...
[2026-06-27 19:37:06,045.045 INFO    ] 200
[2026-06-27 19:37:06,047.047 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:37:06,070.070 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:37:06,119.119 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:37:06,120.120 INFO    ] No camera update needed
[2026-06-27 19:37:06,122.122 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:37:06,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:37:06,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:37:06,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:37:08,167.167 INFO    ] ================================================
[2026-06-27 19:37:08,182.182 INFO    ] Launching Daemon at Sat Jun 27 19:37:08 IST 2026
[2026-06-27 19:37:08,193.193 INFO    ] ================================================
[2026-06-27 19:37:08,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:37:08
[2026-06-27 19:37:08,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:37:08,985.985 INFO    ] Initializing speech engine...
[2026-06-27 19:37:08,988.988 INFO    ] 2026-06-27 19:37:08
[2026-06-27 19:37:09,206.206 INFO    ] 2026-06-27 19:37:09
[2026-06-27 19:37:09,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:37:09,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:37:09,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:37:09,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:37:09,626.626 INFO    ] time= 27/06/2026 19:37:09
[2026-06-27 19:37:09,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:37:09,655.655 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:37:09,722.722 INFO    ] No existing commands found in stream
[2026-06-27 19:37:14,731.731 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:37:14,734.734 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-27 19:37:17,471.471 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 19:37:17,473.473 INFO    ] Checking for system updates...
[2026-06-27 19:37:17,493.493 INFO    ] 200
[2026-06-27 19:37:17,495.495 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:37:17,525.525 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:37:17,527.527 INFO    ] No update needed
[2026-06-27 19:37:17,528.528 INFO    ] Checking for camera pi updates...
[2026-06-27 19:37:17,549.549 INFO    ] 200
[2026-06-27 19:37:17,550.550 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:37:17,575.575 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:37:17,622.622 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:37:17,623.623 INFO    ] No camera update needed
[2026-06-27 19:37:17,625.625 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:37:17,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:37:17,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:37:17,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:37:19,672.672 INFO    ] ================================================
[2026-06-27 19:37:19,687.687 INFO    ] Launching Daemon at Sat Jun 27 19:37:19 IST 2026
[2026-06-27 19:37:19,698.698 INFO    ] ================================================
[2026-06-27 19:37:20,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:37:20
[2026-06-27 19:37:20,427.427 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:37:20,572.572 INFO    ] Initializing speech engine...
[2026-06-27 19:37:20,584.584 INFO    ] 2026-06-27 19:37:20
[2026-06-27 19:37:20,798.798 INFO    ] 2026-06-27 19:37:20
[2026-06-27 19:37:20,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:37:21,018.018 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:37:21,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:37:21,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:37:21,226.226 INFO    ] time= 27/06/2026 19:37:21
[2026-06-27 19:37:21,251.251 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:37:21,257.257 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:37:21,349.349 INFO    ] No existing commands found in stream
[2026-06-27 19:37:26,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:37:26,361.361 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-27 19:37:28,404.404 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:37:28,405.405 INFO    ] Checking for system updates...
[2026-06-27 19:37:28,426.426 INFO    ] 200
[2026-06-27 19:37:28,428.428 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:37:28,462.462 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:37:28,463.463 INFO    ] No update needed
[2026-06-27 19:37:28,466.466 INFO    ] Checking for camera pi updates...
[2026-06-27 19:37:28,486.486 INFO    ] 200
[2026-06-27 19:37:28,487.487 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:37:28,510.510 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:37:28,552.552 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:37:28,554.554 INFO    ] No camera update needed
[2026-06-27 19:37:28,555.555 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:37:28,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:37:28,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:37:28,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:37:30,603.603 INFO    ] ================================================
[2026-06-27 19:37:30,619.619 INFO    ] Launching Daemon at Sat Jun 27 19:37:30 IST 2026
[2026-06-27 19:37:30,630.630 INFO    ] ================================================
[2026-06-27 19:37:30,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:37:30
[2026-06-27 19:37:31,315.315 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:37:31,479.479 INFO    ] Initializing speech engine...
[2026-06-27 19:37:31,485.485 INFO    ] 2026-06-27 19:37:31
[2026-06-27 19:37:31,706.706 INFO    ] 2026-06-27 19:37:31
[2026-06-27 19:37:31,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:37:31,935.935 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:37:31,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:37:32,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:37:32,154.154 INFO    ] time= 27/06/2026 19:37:32
[2026-06-27 19:37:32,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:37:32,185.185 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:37:32,277.277 INFO    ] No existing commands found in stream
[2026-06-27 19:37:37,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:37:37,288.288 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-27 19:37:38,684.684 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 19:37:38,686.686 INFO    ] Checking for system updates...
[2026-06-27 19:37:38,709.709 INFO    ] 200
[2026-06-27 19:37:38,710.710 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:37:38,743.743 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:37:38,745.745 INFO    ] No update needed
[2026-06-27 19:37:38,746.746 INFO    ] Checking for camera pi updates...
[2026-06-27 19:37:38,766.766 INFO    ] 200
[2026-06-27 19:37:38,767.767 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:37:38,793.793 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:37:38,838.838 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:37:38,840.840 INFO    ] No camera update needed
[2026-06-27 19:37:38,841.841 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:37:38,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:37:38,846.846 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:37:38,849.849 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:37:40,895.895 INFO    ] ================================================
[2026-06-27 19:37:40,910.910 INFO    ] Launching Daemon at Sat Jun 27 19:37:40 IST 2026
[2026-06-27 19:37:40,921.921 INFO    ] ================================================
[2026-06-27 19:37:41,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:37:41
[2026-06-27 19:37:41,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:37:41,704.704 INFO    ] Initializing speech engine...
[2026-06-27 19:37:41,710.710 INFO    ] 2026-06-27 19:37:41
[2026-06-27 19:37:41,912.912 INFO    ] 2026-06-27 19:37:41
[2026-06-27 19:37:41,940.940 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:37:42,126.126 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:37:42,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:37:42,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:37:42,328.328 INFO    ] time= 27/06/2026 19:37:42
[2026-06-27 19:37:42,355.355 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:37:42,357.357 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:37:42,452.452 INFO    ] No existing commands found in stream
[2026-06-27 19:37:47,461.461 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:37:47,464.464 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-27 19:37:51,408.408 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:37:51,410.410 INFO    ] Checking for system updates...
[2026-06-27 19:37:51,431.431 INFO    ] 200
[2026-06-27 19:37:51,432.432 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:37:51,466.466 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:37:51,467.467 INFO    ] No update needed
[2026-06-27 19:37:51,469.469 INFO    ] Checking for camera pi updates...
[2026-06-27 19:37:51,490.490 INFO    ] 200
[2026-06-27 19:37:51,492.492 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:37:51,516.516 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:37:51,563.563 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:37:51,565.565 INFO    ] No camera update needed
[2026-06-27 19:37:51,566.566 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:37:51,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:37:51,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:37:51,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:37:53,611.611 INFO    ] ================================================
[2026-06-27 19:37:53,626.626 INFO    ] Launching Daemon at Sat Jun 27 19:37:53 IST 2026
[2026-06-27 19:37:53,637.637 INFO    ] ================================================
[2026-06-27 19:37:53,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:37:53
[2026-06-27 19:37:54,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:37:54,508.508 INFO    ] Initializing speech engine...
[2026-06-27 19:37:54,515.515 INFO    ] 2026-06-27 19:37:54
[2026-06-27 19:37:54,741.741 INFO    ] 2026-06-27 19:37:54
[2026-06-27 19:37:54,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:37:54,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:37:54,982.982 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:37:55,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:37:55,217.217 INFO    ] time= 27/06/2026 19:37:55
[2026-06-27 19:37:55,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:37:55,225.225 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:37:55,319.319 INFO    ] No existing commands found in stream
[2026-06-27 19:38:00,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:38:00,337.337 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-27 19:38:00,882.882 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 19:38:00,883.883 INFO    ] Checking for system updates...
[2026-06-27 19:38:00,904.904 INFO    ] 200
[2026-06-27 19:38:00,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:38:00,939.939 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:38:00,940.940 INFO    ] No update needed
[2026-06-27 19:38:00,942.942 INFO    ] Checking for camera pi updates...
[2026-06-27 19:38:00,965.965 INFO    ] 200
[2026-06-27 19:38:00,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:38:00,991.991 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:38:01,038.038 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:38:01,039.039 INFO    ] No camera update needed
[2026-06-27 19:38:01,041.041 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:38:01,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:38:01,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:38:01,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:38:03,082.082 INFO    ] ================================================
[2026-06-27 19:38:03,098.098 INFO    ] Launching Daemon at Sat Jun 27 19:38:03 IST 2026
[2026-06-27 19:38:03,109.109 INFO    ] ================================================
[2026-06-27 19:38:03,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:38:03
[2026-06-27 19:38:03,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:38:03,895.895 INFO    ] Initializing speech engine...
[2026-06-27 19:38:03,903.903 INFO    ] 2026-06-27 19:38:03
[2026-06-27 19:38:04,118.118 INFO    ] 2026-06-27 19:38:04
[2026-06-27 19:38:04,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:38:04,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:38:04,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:38:04,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:38:04,529.529 INFO    ] time= 27/06/2026 19:38:04
[2026-06-27 19:38:04,565.565 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:38:04,570.570 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:38:04,643.643 INFO    ] No existing commands found in stream
[2026-06-27 19:38:09,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:38:09,655.655 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-27 19:38:13,008.008 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:38:13,010.010 INFO    ] Checking for system updates...
[2026-06-27 19:38:13,030.030 INFO    ] 200
[2026-06-27 19:38:13,032.032 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:38:13,071.071 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:38:13,072.072 INFO    ] No update needed
[2026-06-27 19:38:13,075.075 INFO    ] Checking for camera pi updates...
[2026-06-27 19:38:13,100.100 INFO    ] 200
[2026-06-27 19:38:13,102.102 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:38:13,128.128 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:38:13,179.179 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:38:13,181.181 INFO    ] No camera update needed
[2026-06-27 19:38:13,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:38:13,184.184 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:38:13,187.187 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:38:13,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:38:15,231.231 INFO    ] ================================================
[2026-06-27 19:38:15,247.247 INFO    ] Launching Daemon at Sat Jun 27 19:38:15 IST 2026
[2026-06-27 19:38:15,257.257 INFO    ] ================================================
[2026-06-27 19:38:15,613.613 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:38:15
[2026-06-27 19:38:15,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:38:16,053.053 INFO    ] Initializing speech engine...
[2026-06-27 19:38:16,058.058 INFO    ] 2026-06-27 19:38:16
[2026-06-27 19:38:16,275.275 INFO    ] 2026-06-27 19:38:16
[2026-06-27 19:38:16,304.304 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:38:16,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:38:16,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:38:16,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:38:16,785.785 INFO    ] time= 27/06/2026 19:38:16
[2026-06-27 19:38:16,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:38:16,812.812 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:38:16,908.908 INFO    ] No existing commands found in stream
[2026-06-27 19:38:21,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:38:21,921.921 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-27 19:38:25,857.857 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:38:25,859.859 INFO    ] Checking for system updates...
[2026-06-27 19:38:25,880.880 INFO    ] 200
[2026-06-27 19:38:25,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:38:25,912.912 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:38:25,914.914 INFO    ] No update needed
[2026-06-27 19:38:25,916.916 INFO    ] Checking for camera pi updates...
[2026-06-27 19:38:25,935.935 INFO    ] 200
[2026-06-27 19:38:25,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:38:25,960.960 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:38:26,001.001 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:38:26,003.003 INFO    ] No camera update needed
[2026-06-27 19:38:26,004.004 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:38:26,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:38:26,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:38:26,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:38:28,053.053 INFO    ] ================================================
[2026-06-27 19:38:28,068.068 INFO    ] Launching Daemon at Sat Jun 27 19:38:28 IST 2026
[2026-06-27 19:38:28,079.079 INFO    ] ================================================
[2026-06-27 19:38:28,427.427 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:38:28
[2026-06-27 19:38:28,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:38:28,890.890 INFO    ] Initializing speech engine...
[2026-06-27 19:38:28,895.895 INFO    ] 2026-06-27 19:38:28
[2026-06-27 19:38:29,099.099 INFO    ] 2026-06-27 19:38:29
[2026-06-27 19:38:29,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:38:29,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:38:29,323.323 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:38:29,470.470 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:38:29,524.524 INFO    ] time= 27/06/2026 19:38:29
[2026-06-27 19:38:29,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:38:29,552.552 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:38:29,618.618 INFO    ] No existing commands found in stream
[2026-06-27 19:38:34,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:38:34,631.631 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-27 19:38:37,763.763 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:38:37,764.764 INFO    ] Checking for system updates...
[2026-06-27 19:38:37,785.785 INFO    ] 200
[2026-06-27 19:38:37,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:38:37,817.817 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:38:37,819.819 INFO    ] No update needed
[2026-06-27 19:38:37,821.821 INFO    ] Checking for camera pi updates...
[2026-06-27 19:38:37,843.843 INFO    ] 200
[2026-06-27 19:38:37,844.844 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:38:37,867.867 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:38:38,006.006 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:38:38,007.007 INFO    ] No camera update needed
[2026-06-27 19:38:38,009.009 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:38:38,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:38:38,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:38:38,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:38:40,057.057 INFO    ] ================================================
[2026-06-27 19:38:40,072.072 INFO    ] Launching Daemon at Sat Jun 27 19:38:40 IST 2026
[2026-06-27 19:38:40,084.084 INFO    ] ================================================
[2026-06-27 19:38:40,439.439 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:38:40
[2026-06-27 19:38:40,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:38:40,902.902 INFO    ] Initializing speech engine...
[2026-06-27 19:38:40,907.907 INFO    ] 2026-06-27 19:38:40
[2026-06-27 19:38:41,114.114 INFO    ] 2026-06-27 19:38:41
[2026-06-27 19:38:41,143.143 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:38:41,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:38:41,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:38:41,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:38:41,540.540 INFO    ] time= 27/06/2026 19:38:41
[2026-06-27 19:38:41,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:38:41,568.568 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:38:41,635.635 INFO    ] No existing commands found in stream
[2026-06-27 19:38:46,645.645 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:38:46,647.647 INFO    ] Waiting 3.16 seconds before fallback handling...
[2026-06-27 19:38:50,213.213 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 19:38:50,215.215 INFO    ] Checking for system updates...
[2026-06-27 19:38:50,237.237 INFO    ] 200
[2026-06-27 19:38:50,239.239 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:38:50,271.271 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:38:50,273.273 INFO    ] No update needed
[2026-06-27 19:38:50,274.274 INFO    ] Checking for camera pi updates...
[2026-06-27 19:38:50,294.294 INFO    ] 200
[2026-06-27 19:38:50,295.295 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:38:50,320.320 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:38:50,364.364 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:38:50,366.366 INFO    ] No camera update needed
[2026-06-27 19:38:50,367.367 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:38:50,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:38:50,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:38:50,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:38:52,414.414 INFO    ] ================================================
[2026-06-27 19:38:52,431.431 INFO    ] Launching Daemon at Sat Jun 27 19:38:52 IST 2026
[2026-06-27 19:38:52,443.443 INFO    ] ================================================
[2026-06-27 19:38:52,828.828 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:38:52
[2026-06-27 19:38:53,170.170 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:38:53,328.328 INFO    ] Initializing speech engine...
[2026-06-27 19:38:53,332.332 INFO    ] 2026-06-27 19:38:53
[2026-06-27 19:38:53,541.541 INFO    ] 2026-06-27 19:38:53
[2026-06-27 19:38:53,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:38:53,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:38:53,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:38:53,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:38:53,975.975 INFO    ] time= 27/06/2026 19:38:53
[2026-06-27 19:38:53,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:38:54,003.003 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:38:54,071.071 INFO    ] No existing commands found in stream
[2026-06-27 19:38:59,081.081 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:38:59,084.084 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-27 19:39:03,339.339 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:39:03,340.340 INFO    ] Checking for system updates...
[2026-06-27 19:39:03,361.361 INFO    ] 200
[2026-06-27 19:39:03,363.363 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:39:03,394.394 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:39:03,396.396 INFO    ] No update needed
[2026-06-27 19:39:03,397.397 INFO    ] Checking for camera pi updates...
[2026-06-27 19:39:03,417.417 INFO    ] 200
[2026-06-27 19:39:03,418.418 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:39:03,443.443 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:39:03,482.482 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:39:03,483.483 INFO    ] No camera update needed
[2026-06-27 19:39:03,485.485 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:39:03,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:39:03,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:39:03,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:39:05,533.533 INFO    ] ================================================
[2026-06-27 19:39:05,549.549 INFO    ] Launching Daemon at Sat Jun 27 19:39:05 IST 2026
[2026-06-27 19:39:05,560.560 INFO    ] ================================================
[2026-06-27 19:39:05,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:39:05
[2026-06-27 19:39:06,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:39:06,394.394 INFO    ] Initializing speech engine...
[2026-06-27 19:39:06,399.399 INFO    ] 2026-06-27 19:39:06
[2026-06-27 19:39:06,602.602 INFO    ] 2026-06-27 19:39:06
[2026-06-27 19:39:06,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:39:06,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:39:06,828.828 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:39:06,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:39:07,024.024 INFO    ] time= 27/06/2026 19:39:06
[2026-06-27 19:39:07,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:39:07,053.053 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:39:07,120.120 INFO    ] No existing commands found in stream
[2026-06-27 19:39:12,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:39:12,137.137 INFO    ] Waiting 3.72 seconds before fallback handling...
[2026-06-27 19:39:16,342.342 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:39:16,344.344 INFO    ] Checking for system updates...
[2026-06-27 19:39:16,367.367 INFO    ] 200
[2026-06-27 19:39:16,368.368 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:39:16,402.402 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:39:16,404.404 INFO    ] No update needed
[2026-06-27 19:39:16,405.405 INFO    ] Checking for camera pi updates...
[2026-06-27 19:39:16,426.426 INFO    ] 200
[2026-06-27 19:39:16,427.427 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:39:16,452.452 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:39:16,492.492 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:39:16,493.493 INFO    ] No camera update needed
[2026-06-27 19:39:16,495.495 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:39:16,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:39:16,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:39:16,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:39:18,542.542 INFO    ] ================================================
[2026-06-27 19:39:18,558.558 INFO    ] Launching Daemon at Sat Jun 27 19:39:18 IST 2026
[2026-06-27 19:39:18,569.569 INFO    ] ================================================
[2026-06-27 19:39:18,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:39:18
[2026-06-27 19:39:19,223.223 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:39:19,366.366 INFO    ] Initializing speech engine...
[2026-06-27 19:39:19,371.371 INFO    ] 2026-06-27 19:39:19
[2026-06-27 19:39:19,577.577 INFO    ] 2026-06-27 19:39:19
[2026-06-27 19:39:19,606.606 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:39:19,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:39:19,798.798 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:39:19,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:39:19,998.998 INFO    ] time= 27/06/2026 19:39:19
[2026-06-27 19:39:20,021.021 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:39:20,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:39:20,092.092 INFO    ] No existing commands found in stream
[2026-06-27 19:39:25,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:39:25,106.106 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-27 19:39:28,554.554 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:39:28,556.556 INFO    ] Checking for system updates...
[2026-06-27 19:39:28,577.577 INFO    ] 200
[2026-06-27 19:39:28,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:39:28,609.609 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:39:28,610.610 INFO    ] No update needed
[2026-06-27 19:39:28,611.611 INFO    ] Checking for camera pi updates...
[2026-06-27 19:39:28,633.633 INFO    ] 200
[2026-06-27 19:39:28,634.634 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:39:28,657.657 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:39:28,710.710 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:39:28,711.711 INFO    ] No camera update needed
[2026-06-27 19:39:28,713.713 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:39:28,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:39:28,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:39:28,720.720 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:39:30,760.760 INFO    ] ================================================
[2026-06-27 19:39:30,775.775 INFO    ] Launching Daemon at Sat Jun 27 19:39:30 IST 2026
[2026-06-27 19:39:30,786.786 INFO    ] ================================================
[2026-06-27 19:39:31,139.139 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:39:31
[2026-06-27 19:39:31,470.470 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:39:31,614.614 INFO    ] Initializing speech engine...
[2026-06-27 19:39:31,619.619 INFO    ] 2026-06-27 19:39:31
[2026-06-27 19:39:31,839.839 INFO    ] 2026-06-27 19:39:31
[2026-06-27 19:39:31,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:39:32,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:39:32,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:39:32,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:39:32,287.287 INFO    ] time= 27/06/2026 19:39:32
[2026-06-27 19:39:32,312.312 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:39:32,319.319 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:39:32,389.389 INFO    ] No existing commands found in stream
[2026-06-27 19:39:37,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:39:37,401.401 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-27 19:39:39,237.237 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:39:39,239.239 INFO    ] Checking for system updates...
[2026-06-27 19:39:39,261.261 INFO    ] 200
[2026-06-27 19:39:39,263.263 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:39:39,294.294 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:39:39,296.296 INFO    ] No update needed
[2026-06-27 19:39:39,297.297 INFO    ] Checking for camera pi updates...
[2026-06-27 19:39:39,318.318 INFO    ] 200
[2026-06-27 19:39:39,319.319 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:39:39,345.345 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:39:39,389.389 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:39:39,391.391 INFO    ] No camera update needed
[2026-06-27 19:39:39,392.392 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:39:39,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:39:39,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:39:39,399.399 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:39:41,441.441 INFO    ] ================================================
[2026-06-27 19:39:41,457.457 INFO    ] Launching Daemon at Sat Jun 27 19:39:41 IST 2026
[2026-06-27 19:39:41,469.469 INFO    ] ================================================
[2026-06-27 19:39:41,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:39:41
[2026-06-27 19:39:42,150.150 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:39:42,294.294 INFO    ] Initializing speech engine...
[2026-06-27 19:39:42,299.299 INFO    ] 2026-06-27 19:39:42
[2026-06-27 19:39:42,502.502 INFO    ] 2026-06-27 19:39:42
[2026-06-27 19:39:42,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:39:42,717.717 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:39:42,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:39:42,858.858 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:39:42,910.910 INFO    ] time= 27/06/2026 19:39:42
[2026-06-27 19:39:42,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:39:42,966.966 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:39:43,042.042 INFO    ] No existing commands found in stream
[2026-06-27 19:39:48,053.053 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:39:48,056.056 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-27 19:39:50,669.669 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 19:39:50,670.670 INFO    ] Checking for system updates...
[2026-06-27 19:39:50,693.693 INFO    ] 200
[2026-06-27 19:39:50,695.695 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:39:50,725.725 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:39:50,727.727 INFO    ] No update needed
[2026-06-27 19:39:50,728.728 INFO    ] Checking for camera pi updates...
[2026-06-27 19:39:50,747.747 INFO    ] 200
[2026-06-27 19:39:50,748.748 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:39:50,771.771 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:39:50,820.820 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:39:50,821.821 INFO    ] No camera update needed
[2026-06-27 19:39:50,822.822 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:39:50,824.824 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:39:50,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:39:50,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:39:52,869.869 INFO    ] ================================================
[2026-06-27 19:39:52,885.885 INFO    ] Launching Daemon at Sat Jun 27 19:39:52 IST 2026
[2026-06-27 19:39:52,897.897 INFO    ] ================================================
[2026-06-27 19:39:53,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:39:53
[2026-06-27 19:39:53,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:39:53,751.751 INFO    ] Initializing speech engine...
[2026-06-27 19:39:53,762.762 INFO    ] 2026-06-27 19:39:53
[2026-06-27 19:39:53,974.974 INFO    ] 2026-06-27 19:39:53
[2026-06-27 19:39:54,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:39:54,144.144 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:39:54,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:39:54,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:39:54,422.422 INFO    ] time= 27/06/2026 19:39:54
[2026-06-27 19:39:54,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:39:54,431.431 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:39:54,499.499 INFO    ] No existing commands found in stream
[2026-06-27 19:39:59,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:39:59,517.517 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-27 19:40:01,921.921 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 19:40:01,937.937 INFO    ] Checking for system updates...
[2026-06-27 19:40:01,973.973 INFO    ] 200
[2026-06-27 19:40:01,976.976 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:40:02,115.115 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:40:02,118.118 INFO    ] No update needed
[2026-06-27 19:40:02,121.121 INFO    ] Checking for camera pi updates...
[2026-06-27 19:40:02,239.239 INFO    ] 200
[2026-06-27 19:40:02,257.257 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:40:02,310.310 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:40:02,391.391 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:40:02,395.395 INFO    ] No camera update needed
[2026-06-27 19:40:02,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:40:02,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:40:02,406.406 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:40:02,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:40:04,446.446 INFO    ] ================================================
[2026-06-27 19:40:04,462.462 INFO    ] Launching Daemon at Sat Jun 27 19:40:04 IST 2026
[2026-06-27 19:40:04,474.474 INFO    ] ================================================
[2026-06-27 19:40:04,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:40:04
[2026-06-27 19:40:05,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:40:05,302.302 INFO    ] Initializing speech engine...
[2026-06-27 19:40:05,308.308 INFO    ] 2026-06-27 19:40:05
[2026-06-27 19:40:05,518.518 INFO    ] 2026-06-27 19:40:05
[2026-06-27 19:40:05,547.547 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:40:05,741.741 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:40:05,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:40:05,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:40:05,958.958 INFO    ] time= 27/06/2026 19:40:05
[2026-06-27 19:40:05,964.964 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:40:05,965.965 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:40:06,033.033 INFO    ] No existing commands found in stream
[2026-06-27 19:40:11,046.046 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:40:11,049.049 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-27 19:40:14,449.449 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:40:14,451.451 INFO    ] Checking for system updates...
[2026-06-27 19:40:14,472.472 INFO    ] 200
[2026-06-27 19:40:14,474.474 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:40:14,507.507 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:40:14,508.508 INFO    ] No update needed
[2026-06-27 19:40:14,510.510 INFO    ] Checking for camera pi updates...
[2026-06-27 19:40:14,532.532 INFO    ] 200
[2026-06-27 19:40:14,533.533 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:40:14,559.559 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:40:14,603.603 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:40:14,605.605 INFO    ] No camera update needed
[2026-06-27 19:40:14,607.607 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:40:14,608.608 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:40:14,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:40:14,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:40:16,656.656 INFO    ] ================================================
[2026-06-27 19:40:16,672.672 INFO    ] Launching Daemon at Sat Jun 27 19:40:16 IST 2026
[2026-06-27 19:40:16,683.683 INFO    ] ================================================
[2026-06-27 19:40:17,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:40:17
[2026-06-27 19:40:17,339.339 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:40:17,482.482 INFO    ] Initializing speech engine...
[2026-06-27 19:40:17,487.487 INFO    ] 2026-06-27 19:40:17
[2026-06-27 19:40:17,695.695 INFO    ] 2026-06-27 19:40:17
[2026-06-27 19:40:17,724.724 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:40:17,911.911 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:40:17,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:40:18,073.073 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:40:18,122.122 INFO    ] time= 27/06/2026 19:40:18
[2026-06-27 19:40:18,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:40:18,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:40:18,217.217 INFO    ] No existing commands found in stream
[2026-06-27 19:40:23,228.228 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:40:23,230.230 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-27 19:40:25,314.314 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 19:40:25,315.315 INFO    ] Checking for system updates...
[2026-06-27 19:40:25,336.336 INFO    ] 200
[2026-06-27 19:40:25,337.337 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:40:25,368.368 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:40:25,370.370 INFO    ] No update needed
[2026-06-27 19:40:25,371.371 INFO    ] Checking for camera pi updates...
[2026-06-27 19:40:25,390.390 INFO    ] 200
[2026-06-27 19:40:25,392.392 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:40:25,415.415 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:40:25,459.459 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:40:25,460.460 INFO    ] No camera update needed
[2026-06-27 19:40:25,462.462 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:40:25,463.463 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:40:25,466.466 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:40:25,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:40:27,508.508 INFO    ] ================================================
[2026-06-27 19:40:27,523.523 INFO    ] Launching Daemon at Sat Jun 27 19:40:27 IST 2026
[2026-06-27 19:40:27,535.535 INFO    ] ================================================
[2026-06-27 19:40:27,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:40:27
[2026-06-27 19:40:28,220.220 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:40:28,371.371 INFO    ] Initializing speech engine...
[2026-06-27 19:40:28,377.377 INFO    ] 2026-06-27 19:40:28
[2026-06-27 19:40:28,588.588 INFO    ] 2026-06-27 19:40:28
[2026-06-27 19:40:28,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:40:28,754.754 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:40:28,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:40:28,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:40:29,020.020 INFO    ] time= 27/06/2026 19:40:28
[2026-06-27 19:40:29,042.042 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:40:29,048.048 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:40:29,116.116 INFO    ] No existing commands found in stream
[2026-06-27 19:40:34,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:40:34,139.139 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-27 19:40:36,293.293 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 19:40:36,294.294 INFO    ] Checking for system updates...
[2026-06-27 19:40:36,316.316 INFO    ] 200
[2026-06-27 19:40:36,317.317 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:40:36,350.350 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:40:36,351.351 INFO    ] No update needed
[2026-06-27 19:40:36,352.352 INFO    ] Checking for camera pi updates...
[2026-06-27 19:40:36,374.374 INFO    ] 200
[2026-06-27 19:40:36,375.375 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:40:36,398.398 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:40:36,445.445 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:40:36,446.446 INFO    ] No camera update needed
[2026-06-27 19:40:36,448.448 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:40:36,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:40:36,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:40:36,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:40:38,492.492 INFO    ] ================================================
[2026-06-27 19:40:38,508.508 INFO    ] Launching Daemon at Sat Jun 27 19:40:38 IST 2026
[2026-06-27 19:40:38,520.520 INFO    ] ================================================
[2026-06-27 19:40:38,851.851 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:40:38
[2026-06-27 19:40:39,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:40:39,293.293 INFO    ] Initializing speech engine...
[2026-06-27 19:40:39,298.298 INFO    ] 2026-06-27 19:40:39
[2026-06-27 19:40:39,516.516 INFO    ] 2026-06-27 19:40:39
[2026-06-27 19:40:39,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:40:39,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:40:39,739.739 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:40:39,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:40:39,934.934 INFO    ] time= 27/06/2026 19:40:39
[2026-06-27 19:40:39,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:40:39,965.965 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:40:40,036.036 INFO    ] No existing commands found in stream
[2026-06-27 19:40:45,050.050 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:40:45,053.053 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-27 19:40:45,583.583 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 19:40:45,585.585 INFO    ] Checking for system updates...
[2026-06-27 19:40:45,608.608 INFO    ] 200
[2026-06-27 19:40:45,609.609 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:40:45,639.639 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:40:45,640.640 INFO    ] No update needed
[2026-06-27 19:40:45,642.642 INFO    ] Checking for camera pi updates...
[2026-06-27 19:40:45,662.662 INFO    ] 200
[2026-06-27 19:40:45,664.664 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:40:45,688.688 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:40:45,826.826 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:40:45,827.827 INFO    ] No camera update needed
[2026-06-27 19:40:45,829.829 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:40:45,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:40:45,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:40:45,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:40:47,875.875 INFO    ] ================================================
[2026-06-27 19:40:47,891.891 INFO    ] Launching Daemon at Sat Jun 27 19:40:47 IST 2026
[2026-06-27 19:40:47,902.902 INFO    ] ================================================
[2026-06-27 19:40:48,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:40:48
[2026-06-27 19:40:48,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:40:48,690.690 INFO    ] Initializing speech engine...
[2026-06-27 19:40:48,696.696 INFO    ] 2026-06-27 19:40:48
[2026-06-27 19:40:48,898.898 INFO    ] 2026-06-27 19:40:48
[2026-06-27 19:40:48,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:40:49,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:40:49,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:40:49,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:40:49,314.314 INFO    ] time= 27/06/2026 19:40:49
[2026-06-27 19:40:49,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:40:49,347.347 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:40:49,414.414 INFO    ] No existing commands found in stream
[2026-06-27 19:40:54,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:40:54,429.429 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-27 19:40:56,919.919 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:40:56,920.920 INFO    ] Checking for system updates...
[2026-06-27 19:40:56,942.942 INFO    ] 200
[2026-06-27 19:40:56,944.944 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:40:56,977.977 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:40:56,978.978 INFO    ] No update needed
[2026-06-27 19:40:56,980.980 INFO    ] Checking for camera pi updates...
[2026-06-27 19:40:56,999.999 INFO    ] 200
[2026-06-27 19:40:57,000.000 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:40:57,024.024 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:40:57,067.067 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:40:57,068.068 INFO    ] No camera update needed
[2026-06-27 19:40:57,069.069 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:40:57,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:40:57,074.074 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:40:57,077.077 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:40:59,118.118 INFO    ] ================================================
[2026-06-27 19:40:59,135.135 INFO    ] Launching Daemon at Sat Jun 27 19:40:59 IST 2026
[2026-06-27 19:40:59,147.147 INFO    ] ================================================
[2026-06-27 19:40:59,518.518 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:40:59
[2026-06-27 19:40:59,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:40:59,975.975 INFO    ] Initializing speech engine...
[2026-06-27 19:40:59,980.980 INFO    ] 2026-06-27 19:40:59
[2026-06-27 19:41:00,184.184 INFO    ] 2026-06-27 19:41:00
[2026-06-27 19:41:00,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:41:00,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:41:00,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:41:00,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:41:00,604.604 INFO    ] time= 27/06/2026 19:41:00
[2026-06-27 19:41:00,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:41:00,632.632 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:41:00,699.699 INFO    ] No existing commands found in stream
[2026-06-27 19:41:05,708.708 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:41:05,710.710 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-27 19:41:08,150.150 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:41:08,151.151 INFO    ] Checking for system updates...
[2026-06-27 19:41:08,173.173 INFO    ] 200
[2026-06-27 19:41:08,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:41:08,205.205 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:41:08,206.206 INFO    ] No update needed
[2026-06-27 19:41:08,207.207 INFO    ] Checking for camera pi updates...
[2026-06-27 19:41:08,228.228 INFO    ] 200
[2026-06-27 19:41:08,230.230 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:41:08,255.255 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:41:08,295.295 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:41:08,297.297 INFO    ] No camera update needed
[2026-06-27 19:41:08,298.298 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:41:08,299.299 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:41:08,302.302 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:41:08,305.305 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:41:10,343.343 INFO    ] ================================================
[2026-06-27 19:41:10,359.359 INFO    ] Launching Daemon at Sat Jun 27 19:41:10 IST 2026
[2026-06-27 19:41:10,371.371 INFO    ] ================================================
[2026-06-27 19:41:10,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:41:10
[2026-06-27 19:41:11,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:41:11,245.245 INFO    ] Initializing speech engine...
[2026-06-27 19:41:11,252.252 INFO    ] 2026-06-27 19:41:11
[2026-06-27 19:41:11,460.460 INFO    ] 2026-06-27 19:41:11
[2026-06-27 19:41:11,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:41:11,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:41:11,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:41:11,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:41:11,884.884 INFO    ] time= 27/06/2026 19:41:11
[2026-06-27 19:41:11,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:41:11,912.912 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:41:11,979.979 INFO    ] No existing commands found in stream
[2026-06-27 19:41:16,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:41:16,997.997 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-27 19:41:17,492.492 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:41:17,494.494 INFO    ] Checking for system updates...
[2026-06-27 19:41:17,517.517 INFO    ] 200
[2026-06-27 19:41:17,518.518 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:41:17,552.552 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:41:17,554.554 INFO    ] No update needed
[2026-06-27 19:41:17,555.555 INFO    ] Checking for camera pi updates...
[2026-06-27 19:41:17,576.576 INFO    ] 200
[2026-06-27 19:41:17,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:41:17,604.604 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:41:17,655.655 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:41:17,656.656 INFO    ] No camera update needed
[2026-06-27 19:41:17,657.657 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:41:17,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:41:17,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:41:17,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:41:19,705.705 INFO    ] ================================================
[2026-06-27 19:41:19,720.720 INFO    ] Launching Daemon at Sat Jun 27 19:41:19 IST 2026
[2026-06-27 19:41:19,732.732 INFO    ] ================================================
[2026-06-27 19:41:20,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:41:20
[2026-06-27 19:41:20,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:41:20,601.601 INFO    ] Initializing speech engine...
[2026-06-27 19:41:20,606.606 INFO    ] 2026-06-27 19:41:20
[2026-06-27 19:41:20,815.815 INFO    ] 2026-06-27 19:41:20
[2026-06-27 19:41:20,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:41:21,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:41:21,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:41:21,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:41:21,239.239 INFO    ] time= 27/06/2026 19:41:21
[2026-06-27 19:41:21,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:41:21,275.275 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:41:21,342.342 INFO    ] No existing commands found in stream
[2026-06-27 19:41:26,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:41:26,356.356 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-27 19:41:29,840.840 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 19:41:29,841.841 INFO    ] Checking for system updates...
[2026-06-27 19:41:29,866.866 INFO    ] 200
[2026-06-27 19:41:29,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:41:29,899.899 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:41:29,900.900 INFO    ] No update needed
[2026-06-27 19:41:29,902.902 INFO    ] Checking for camera pi updates...
[2026-06-27 19:41:29,923.923 INFO    ] 200
[2026-06-27 19:41:29,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:41:29,949.949 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:41:29,989.989 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:41:29,991.991 INFO    ] No camera update needed
[2026-06-27 19:41:29,992.992 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:41:29,993.993 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:41:29,996.996 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:41:29,999.999 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:41:32,034.034 INFO    ] ================================================
[2026-06-27 19:41:32,044.044 INFO    ] Launching Daemon at Sat Jun 27 19:41:32 IST 2026
[2026-06-27 19:41:32,054.054 INFO    ] ================================================
[2026-06-27 19:41:32,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:41:32
[2026-06-27 19:41:32,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:41:32,864.864 INFO    ] Initializing speech engine...
[2026-06-27 19:41:32,869.869 INFO    ] 2026-06-27 19:41:32
[2026-06-27 19:41:33,073.073 INFO    ] 2026-06-27 19:41:33
[2026-06-27 19:41:33,102.102 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:41:33,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:41:33,297.297 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:41:33,446.446 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:41:33,472.472 INFO    ] time= 27/06/2026 19:41:33
[2026-06-27 19:41:33,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:41:33,570.570 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:41:33,666.666 INFO    ] No existing commands found in stream
[2026-06-27 19:41:38,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:41:38,678.678 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-27 19:41:39,975.975 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 19:41:39,977.977 INFO    ] Checking for system updates...
[2026-06-27 19:41:39,999.999 INFO    ] 200
[2026-06-27 19:41:40,000.000 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:41:40,030.030 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:41:40,032.032 INFO    ] No update needed
[2026-06-27 19:41:40,033.033 INFO    ] Checking for camera pi updates...
[2026-06-27 19:41:40,054.054 INFO    ] 200
[2026-06-27 19:41:40,056.056 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:41:40,081.081 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:41:40,127.127 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:41:40,129.129 INFO    ] No camera update needed
[2026-06-27 19:41:40,130.130 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:41:40,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:41:40,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:41:40,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:41:42,176.176 INFO    ] ================================================
[2026-06-27 19:41:42,192.192 INFO    ] Launching Daemon at Sat Jun 27 19:41:42 IST 2026
[2026-06-27 19:41:42,203.203 INFO    ] ================================================
[2026-06-27 19:41:42,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:41:42
[2026-06-27 19:41:42,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:41:43,017.017 INFO    ] Initializing speech engine...
[2026-06-27 19:41:43,025.025 INFO    ] 2026-06-27 19:41:43
[2026-06-27 19:41:43,239.239 INFO    ] 2026-06-27 19:41:43
[2026-06-27 19:41:43,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:41:43,451.451 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:41:43,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:41:43,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:41:43,649.649 INFO    ] time= 27/06/2026 19:41:43
[2026-06-27 19:41:43,681.681 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:41:43,687.687 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:41:43,755.755 INFO    ] No existing commands found in stream
[2026-06-27 19:41:48,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:41:48,772.772 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-27 19:41:50,940.940 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 19:41:50,942.942 INFO    ] Checking for system updates...
[2026-06-27 19:41:50,963.963 INFO    ] 200
[2026-06-27 19:41:50,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:41:50,995.995 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:41:50,997.997 INFO    ] No update needed
[2026-06-27 19:41:50,998.998 INFO    ] Checking for camera pi updates...
[2026-06-27 19:41:51,019.019 INFO    ] 200
[2026-06-27 19:41:51,020.020 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:41:51,045.045 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:41:51,087.087 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:41:51,088.088 INFO    ] No camera update needed
[2026-06-27 19:41:51,089.089 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:41:51,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:41:51,093.093 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:41:51,096.096 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:41:53,135.135 INFO    ] ================================================
[2026-06-27 19:41:53,152.152 INFO    ] Launching Daemon at Sat Jun 27 19:41:53 IST 2026
[2026-06-27 19:41:53,165.165 INFO    ] ================================================
[2026-06-27 19:41:53,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:41:53
[2026-06-27 19:41:53,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:41:53,982.982 INFO    ] Initializing speech engine...
[2026-06-27 19:41:53,987.987 INFO    ] 2026-06-27 19:41:53
[2026-06-27 19:41:54,191.191 INFO    ] 2026-06-27 19:41:54
[2026-06-27 19:41:54,219.219 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:41:54,401.401 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:41:54,411.411 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:41:54,566.566 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:41:54,609.609 INFO    ] time= 27/06/2026 19:41:54
[2026-06-27 19:41:54,631.631 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:41:54,637.637 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:41:54,728.728 INFO    ] No existing commands found in stream
[2026-06-27 19:41:59,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:41:59,745.745 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-27 19:42:01,785.785 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 19:42:01,787.787 INFO    ] Checking for system updates...
[2026-06-27 19:42:01,811.811 INFO    ] 200
[2026-06-27 19:42:01,812.812 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:42:01,854.854 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:42:01,855.855 INFO    ] No update needed
[2026-06-27 19:42:01,857.857 INFO    ] Checking for camera pi updates...
[2026-06-27 19:42:01,882.882 INFO    ] 200
[2026-06-27 19:42:01,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:42:01,925.925 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:42:01,972.972 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:42:01,974.974 INFO    ] No camera update needed
[2026-06-27 19:42:01,976.976 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:42:01,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:42:01,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:42:01,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:42:04,030.030 INFO    ] ================================================
[2026-06-27 19:42:04,047.047 INFO    ] Launching Daemon at Sat Jun 27 19:42:04 IST 2026
[2026-06-27 19:42:04,057.057 INFO    ] ================================================
[2026-06-27 19:42:04,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:42:04
[2026-06-27 19:42:04,773.773 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:42:04,928.928 INFO    ] Initializing speech engine...
[2026-06-27 19:42:04,933.933 INFO    ] 2026-06-27 19:42:04
[2026-06-27 19:42:05,143.143 INFO    ] 2026-06-27 19:42:05
[2026-06-27 19:42:05,172.172 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:42:05,357.357 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:42:05,367.367 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:42:05,511.511 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:42:05,564.564 INFO    ] time= 27/06/2026 19:42:05
[2026-06-27 19:42:05,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:42:05,646.646 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:42:05,790.790 INFO    ] No existing commands found in stream
[2026-06-27 19:42:10,800.800 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:42:10,803.803 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-27 19:42:12,158.158 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 19:42:12,160.160 INFO    ] Checking for system updates...
[2026-06-27 19:42:12,182.182 INFO    ] 200
[2026-06-27 19:42:12,183.183 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:42:12,214.214 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:42:12,215.215 INFO    ] No update needed
[2026-06-27 19:42:12,216.216 INFO    ] Checking for camera pi updates...
[2026-06-27 19:42:12,236.236 INFO    ] 200
[2026-06-27 19:42:12,238.238 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:42:12,261.261 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:42:12,302.302 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:42:12,304.304 INFO    ] No camera update needed
[2026-06-27 19:42:12,305.305 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:42:12,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:42:12,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:42:12,312.312 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:42:14,352.352 INFO    ] ================================================
[2026-06-27 19:42:14,367.367 INFO    ] Launching Daemon at Sat Jun 27 19:42:14 IST 2026
[2026-06-27 19:42:14,378.378 INFO    ] ================================================
[2026-06-27 19:42:14,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:42:14
[2026-06-27 19:42:15,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:42:15,266.266 INFO    ] Initializing speech engine...
[2026-06-27 19:42:15,273.273 INFO    ] 2026-06-27 19:42:15
[2026-06-27 19:42:15,480.480 INFO    ] 2026-06-27 19:42:15
[2026-06-27 19:42:15,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:42:15,693.693 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:42:15,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:42:15,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:42:15,922.922 INFO    ] time= 27/06/2026 19:42:15
[2026-06-27 19:42:15,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:42:15,930.930 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:42:15,997.997 INFO    ] No existing commands found in stream
[2026-06-27 19:42:21,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:42:21,010.010 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-27 19:42:22,050.050 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:42:22,051.051 INFO    ] Checking for system updates...
[2026-06-27 19:42:22,074.074 INFO    ] 200
[2026-06-27 19:42:22,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:42:22,108.108 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:42:22,109.109 INFO    ] No update needed
[2026-06-27 19:42:22,111.111 INFO    ] Checking for camera pi updates...
[2026-06-27 19:42:22,132.132 INFO    ] 200
[2026-06-27 19:42:22,133.133 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:42:22,162.162 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:42:22,203.203 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:42:22,205.205 INFO    ] No camera update needed
[2026-06-27 19:42:22,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:42:22,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:42:22,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:42:22,215.215 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:42:24,258.258 INFO    ] ================================================
[2026-06-27 19:42:24,274.274 INFO    ] Launching Daemon at Sat Jun 27 19:42:24 IST 2026
[2026-06-27 19:42:24,285.285 INFO    ] ================================================
[2026-06-27 19:42:24,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:42:24
[2026-06-27 19:42:24,963.963 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:42:25,107.107 INFO    ] Initializing speech engine...
[2026-06-27 19:42:25,112.112 INFO    ] 2026-06-27 19:42:25
[2026-06-27 19:42:25,302.302 INFO    ] 2026-06-27 19:42:25
[2026-06-27 19:42:25,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:42:25,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:42:25,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:42:25,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:42:25,770.770 INFO    ] time= 27/06/2026 19:42:25
[2026-06-27 19:42:25,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:42:25,813.813 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:42:25,891.891 INFO    ] No existing commands found in stream
[2026-06-27 19:42:30,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:42:30,903.903 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-27 19:42:33,748.748 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:42:33,750.750 INFO    ] Checking for system updates...
[2026-06-27 19:42:33,772.772 INFO    ] 200
[2026-06-27 19:42:33,773.773 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:42:33,804.804 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:42:33,805.805 INFO    ] No update needed
[2026-06-27 19:42:33,807.807 INFO    ] Checking for camera pi updates...
[2026-06-27 19:42:33,826.826 INFO    ] 200
[2026-06-27 19:42:33,827.827 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:42:33,853.853 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:42:33,897.897 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:42:33,898.898 INFO    ] No camera update needed
[2026-06-27 19:42:33,899.899 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:42:33,901.901 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:42:33,904.904 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:42:33,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:42:35,930.930 INFO    ] ================================================
[2026-06-27 19:42:35,939.939 INFO    ] Launching Daemon at Sat Jun 27 19:42:35 IST 2026
[2026-06-27 19:42:35,945.945 INFO    ] ================================================
[2026-06-27 19:42:36,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:42:36
[2026-06-27 19:42:36,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:42:36,744.744 INFO    ] Initializing speech engine...
[2026-06-27 19:42:36,747.747 INFO    ] 2026-06-27 19:42:36
[2026-06-27 19:42:36,966.966 INFO    ] 2026-06-27 19:42:36
[2026-06-27 19:42:36,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:42:37,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:42:37,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:42:37,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:42:37,393.393 INFO    ] time= 27/06/2026 19:42:37
[2026-06-27 19:42:37,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:42:37,423.423 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:42:37,515.515 INFO    ] No existing commands found in stream
[2026-06-27 19:42:42,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:42:42,532.532 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-27 19:42:44,528.528 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 19:42:44,530.530 INFO    ] Checking for system updates...
[2026-06-27 19:42:44,550.550 INFO    ] 200
[2026-06-27 19:42:44,552.552 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:42:44,585.585 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:42:44,586.586 INFO    ] No update needed
[2026-06-27 19:42:44,587.587 INFO    ] Checking for camera pi updates...
[2026-06-27 19:42:44,607.607 INFO    ] 200
[2026-06-27 19:42:44,608.608 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:42:44,635.635 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:42:44,680.680 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:42:44,682.682 INFO    ] No camera update needed
[2026-06-27 19:42:44,683.683 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:42:44,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:42:44,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:42:44,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:42:46,731.731 INFO    ] ================================================
[2026-06-27 19:42:46,747.747 INFO    ] Launching Daemon at Sat Jun 27 19:42:46 IST 2026
[2026-06-27 19:42:46,758.758 INFO    ] ================================================
[2026-06-27 19:42:47,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:42:47
[2026-06-27 19:42:47,459.459 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:42:47,613.613 INFO    ] Initializing speech engine...
[2026-06-27 19:42:47,619.619 INFO    ] 2026-06-27 19:42:47
[2026-06-27 19:42:47,829.829 INFO    ] 2026-06-27 19:42:47
[2026-06-27 19:42:47,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:42:48,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:42:48,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:42:48,205.205 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:42:48,258.258 INFO    ] time= 27/06/2026 19:42:48
[2026-06-27 19:42:48,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:42:48,287.287 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:42:48,355.355 INFO    ] No existing commands found in stream
[2026-06-27 19:42:53,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:42:53,370.370 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-27 19:42:56,634.634 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:42:56,636.636 INFO    ] Checking for system updates...
[2026-06-27 19:42:56,657.657 INFO    ] 200
[2026-06-27 19:42:56,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:42:56,692.692 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:42:56,694.694 INFO    ] No update needed
[2026-06-27 19:42:56,695.695 INFO    ] Checking for camera pi updates...
[2026-06-27 19:42:56,715.715 INFO    ] 200
[2026-06-27 19:42:56,716.716 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:42:56,741.741 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:42:56,883.883 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:42:56,885.885 INFO    ] No camera update needed
[2026-06-27 19:42:56,886.886 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:42:56,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:42:56,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:42:56,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:42:58,932.932 INFO    ] ================================================
[2026-06-27 19:42:58,948.948 INFO    ] Launching Daemon at Sat Jun 27 19:42:58 IST 2026
[2026-06-27 19:42:58,960.960 INFO    ] ================================================
[2026-06-27 19:42:59,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:42:59
[2026-06-27 19:42:59,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:42:59,764.764 INFO    ] Initializing speech engine...
[2026-06-27 19:42:59,767.767 INFO    ] 2026-06-27 19:42:59
[2026-06-27 19:42:59,987.987 INFO    ] 2026-06-27 19:42:59
[2026-06-27 19:43:00,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:43:00,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:43:00,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:43:00,344.344 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:43:00,412.412 INFO    ] time= 27/06/2026 19:43:00
[2026-06-27 19:43:00,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:43:00,442.442 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:43:00,510.510 INFO    ] No existing commands found in stream
[2026-06-27 19:43:05,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:43:05,522.522 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-27 19:43:07,832.832 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:43:07,834.834 INFO    ] Checking for system updates...
[2026-06-27 19:43:07,856.856 INFO    ] 200
[2026-06-27 19:43:07,857.857 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:43:07,890.890 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:43:07,891.891 INFO    ] No update needed
[2026-06-27 19:43:07,893.893 INFO    ] Checking for camera pi updates...
[2026-06-27 19:43:07,914.914 INFO    ] 200
[2026-06-27 19:43:07,915.915 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:43:07,940.940 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:43:07,983.983 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:43:07,984.984 INFO    ] No camera update needed
[2026-06-27 19:43:07,986.986 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:43:07,987.987 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:43:07,990.990 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:43:07,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:43:10,032.032 INFO    ] ================================================
[2026-06-27 19:43:10,048.048 INFO    ] Launching Daemon at Sat Jun 27 19:43:10 IST 2026
[2026-06-27 19:43:10,059.059 INFO    ] ================================================
[2026-06-27 19:43:10,410.410 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:43:10
[2026-06-27 19:43:10,757.757 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:43:10,911.911 INFO    ] Initializing speech engine...
[2026-06-27 19:43:10,918.918 INFO    ] 2026-06-27 19:43:10
[2026-06-27 19:43:11,127.127 INFO    ] 2026-06-27 19:43:11
[2026-06-27 19:43:11,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:43:11,341.341 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:43:11,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:43:11,492.492 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:43:11,550.550 INFO    ] time= 27/06/2026 19:43:11
[2026-06-27 19:43:11,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:43:11,579.579 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:43:11,646.646 INFO    ] No existing commands found in stream
[2026-06-27 19:43:16,661.661 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:43:16,664.664 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-27 19:43:17,954.954 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:43:17,955.955 INFO    ] Checking for system updates...
[2026-06-27 19:43:17,978.978 INFO    ] 200
[2026-06-27 19:43:17,980.980 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:43:18,014.014 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:43:18,015.015 INFO    ] No update needed
[2026-06-27 19:43:18,017.017 INFO    ] Checking for camera pi updates...
[2026-06-27 19:43:18,037.037 INFO    ] 200
[2026-06-27 19:43:18,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:43:18,064.064 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:43:18,103.103 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:43:18,105.105 INFO    ] No camera update needed
[2026-06-27 19:43:18,106.106 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:43:18,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:43:18,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:43:18,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:43:20,155.155 INFO    ] ================================================
[2026-06-27 19:43:20,171.171 INFO    ] Launching Daemon at Sat Jun 27 19:43:20 IST 2026
[2026-06-27 19:43:20,182.182 INFO    ] ================================================
[2026-06-27 19:43:20,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:43:20
[2026-06-27 19:43:20,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:43:21,038.038 INFO    ] Initializing speech engine...
[2026-06-27 19:43:21,044.044 INFO    ] 2026-06-27 19:43:21
[2026-06-27 19:43:21,254.254 INFO    ] 2026-06-27 19:43:21
[2026-06-27 19:43:21,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:43:21,470.470 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:43:21,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:43:21,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:43:21,678.678 INFO    ] time= 27/06/2026 19:43:21
[2026-06-27 19:43:21,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:43:21,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:43:21,777.777 INFO    ] No existing commands found in stream
[2026-06-27 19:43:26,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:43:26,795.795 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-27 19:43:28,060.060 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:43:28,062.062 INFO    ] Checking for system updates...
[2026-06-27 19:43:28,083.083 INFO    ] 200
[2026-06-27 19:43:28,084.084 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:43:28,118.118 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:43:28,120.120 INFO    ] No update needed
[2026-06-27 19:43:28,122.122 INFO    ] Checking for camera pi updates...
[2026-06-27 19:43:28,142.142 INFO    ] 200
[2026-06-27 19:43:28,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:43:28,168.168 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:43:28,213.213 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:43:28,215.215 INFO    ] No camera update needed
[2026-06-27 19:43:28,216.216 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:43:28,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:43:28,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:43:28,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:43:30,264.264 INFO    ] ================================================
[2026-06-27 19:43:30,281.281 INFO    ] Launching Daemon at Sat Jun 27 19:43:30 IST 2026
[2026-06-27 19:43:30,292.292 INFO    ] ================================================
[2026-06-27 19:43:30,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:43:30
[2026-06-27 19:43:30,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:43:31,130.130 INFO    ] Initializing speech engine...
[2026-06-27 19:43:31,135.135 INFO    ] 2026-06-27 19:43:31
[2026-06-27 19:43:31,339.339 INFO    ] 2026-06-27 19:43:31
[2026-06-27 19:43:31,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:43:31,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:43:31,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:43:31,781.781 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:43:31,792.792 INFO    ] time= 27/06/2026 19:43:31
[2026-06-27 19:43:31,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:43:31,862.862 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:43:31,989.989 INFO    ] No existing commands found in stream
[2026-06-27 19:43:36,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:43:37,001.001 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-27 19:43:41,139.139 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:43:41,141.141 INFO    ] Checking for system updates...
[2026-06-27 19:43:41,163.163 INFO    ] 200
[2026-06-27 19:43:41,165.165 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:43:41,199.199 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:43:41,200.200 INFO    ] No update needed
[2026-06-27 19:43:41,201.201 INFO    ] Checking for camera pi updates...
[2026-06-27 19:43:41,222.222 INFO    ] 200
[2026-06-27 19:43:41,224.224 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:43:41,247.247 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:43:41,291.291 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:43:41,292.292 INFO    ] No camera update needed
[2026-06-27 19:43:41,294.294 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:43:41,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:43:41,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:43:41,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:43:43,345.345 INFO    ] ================================================
[2026-06-27 19:43:43,361.361 INFO    ] Launching Daemon at Sat Jun 27 19:43:43 IST 2026
[2026-06-27 19:43:43,372.372 INFO    ] ================================================
[2026-06-27 19:43:43,717.717 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:43:43
[2026-06-27 19:43:44,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:43:44,161.161 INFO    ] Initializing speech engine...
[2026-06-27 19:43:44,166.166 INFO    ] 2026-06-27 19:43:44
[2026-06-27 19:43:44,384.384 INFO    ] 2026-06-27 19:43:44
[2026-06-27 19:43:44,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:43:44,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:43:44,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:43:44,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:43:44,811.811 INFO    ] time= 27/06/2026 19:43:44
[2026-06-27 19:43:44,833.833 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:43:44,839.839 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:43:44,906.906 INFO    ] No existing commands found in stream
[2026-06-27 19:43:49,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:43:49,918.918 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-27 19:43:52,219.219 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:43:52,221.221 INFO    ] Checking for system updates...
[2026-06-27 19:43:52,243.243 INFO    ] 200
[2026-06-27 19:43:52,245.245 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:43:52,275.275 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:43:52,277.277 INFO    ] No update needed
[2026-06-27 19:43:52,278.278 INFO    ] Checking for camera pi updates...
[2026-06-27 19:43:52,297.297 INFO    ] 200
[2026-06-27 19:43:52,299.299 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:43:52,323.323 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:43:52,365.365 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:43:52,366.366 INFO    ] No camera update needed
[2026-06-27 19:43:52,367.367 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:43:52,368.368 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:43:52,371.371 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:43:52,374.374 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:43:54,414.414 INFO    ] ================================================
[2026-06-27 19:43:54,430.430 INFO    ] Launching Daemon at Sat Jun 27 19:43:54 IST 2026
[2026-06-27 19:43:54,442.442 INFO    ] ================================================
[2026-06-27 19:43:54,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:43:54
[2026-06-27 19:43:55,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:43:55,271.271 INFO    ] Initializing speech engine...
[2026-06-27 19:43:55,277.277 INFO    ] 2026-06-27 19:43:55
[2026-06-27 19:43:55,483.483 INFO    ] 2026-06-27 19:43:55
[2026-06-27 19:43:55,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:43:55,694.694 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:43:55,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:43:55,830.830 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:43:55,897.897 INFO    ] time= 27/06/2026 19:43:55
[2026-06-27 19:43:55,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:43:55,931.931 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:43:55,997.997 INFO    ] No existing commands found in stream
[2026-06-27 19:44:01,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:44:01,009.009 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-27 19:44:04,968.968 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:44:04,970.970 INFO    ] Checking for system updates...
[2026-06-27 19:44:04,993.993 INFO    ] 200
[2026-06-27 19:44:04,995.995 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:44:05,029.029 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:44:05,030.030 INFO    ] No update needed
[2026-06-27 19:44:05,031.031 INFO    ] Checking for camera pi updates...
[2026-06-27 19:44:05,052.052 INFO    ] 200
[2026-06-27 19:44:05,054.054 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:44:05,077.077 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:44:05,118.118 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:44:05,120.120 INFO    ] No camera update needed
[2026-06-27 19:44:05,121.121 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:44:05,122.122 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:44:05,125.125 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:44:05,128.128 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:44:07,167.167 INFO    ] ================================================
[2026-06-27 19:44:07,184.184 INFO    ] Launching Daemon at Sat Jun 27 19:44:07 IST 2026
[2026-06-27 19:44:07,195.195 INFO    ] ================================================
[2026-06-27 19:44:07,551.551 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:44:07
[2026-06-27 19:44:07,872.872 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:44:08,017.017 INFO    ] Initializing speech engine...
[2026-06-27 19:44:08,022.022 INFO    ] 2026-06-27 19:44:08
[2026-06-27 19:44:08,228.228 INFO    ] 2026-06-27 19:44:08
[2026-06-27 19:44:08,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:44:08,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:44:08,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:44:08,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:44:08,639.639 INFO    ] time= 27/06/2026 19:44:08
[2026-06-27 19:44:08,672.672 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:44:08,678.678 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:44:08,768.768 INFO    ] No existing commands found in stream
[2026-06-27 19:44:13,782.782 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:44:13,786.786 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-27 19:44:14,824.824 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 19:44:14,826.826 INFO    ] Checking for system updates...
[2026-06-27 19:44:14,846.846 INFO    ] 200
[2026-06-27 19:44:14,848.848 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:44:14,878.878 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:44:14,880.880 INFO    ] No update needed
[2026-06-27 19:44:14,881.881 INFO    ] Checking for camera pi updates...
[2026-06-27 19:44:14,902.902 INFO    ] 200
[2026-06-27 19:44:14,903.903 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:44:14,927.927 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:44:14,971.971 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:44:14,972.972 INFO    ] No camera update needed
[2026-06-27 19:44:14,973.973 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:44:14,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:44:14,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:44:14,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:44:17,019.019 INFO    ] ================================================
[2026-06-27 19:44:17,038.038 INFO    ] Launching Daemon at Sat Jun 27 19:44:17 IST 2026
[2026-06-27 19:44:17,050.050 INFO    ] ================================================
[2026-06-27 19:44:17,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:44:17
[2026-06-27 19:44:17,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:44:17,868.868 INFO    ] Initializing speech engine...
[2026-06-27 19:44:17,877.877 INFO    ] 2026-06-27 19:44:17
[2026-06-27 19:44:18,081.081 INFO    ] 2026-06-27 19:44:18
[2026-06-27 19:44:18,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:44:18,296.296 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:44:18,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:44:18,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:44:18,503.503 INFO    ] time= 27/06/2026 19:44:18
[2026-06-27 19:44:18,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:44:18,532.532 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:44:18,599.599 INFO    ] No existing commands found in stream
[2026-06-27 19:44:23,608.608 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:44:23,611.611 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-27 19:44:26,075.075 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:44:26,076.076 INFO    ] Checking for system updates...
[2026-06-27 19:44:26,099.099 INFO    ] 200
[2026-06-27 19:44:26,100.100 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:44:26,131.131 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:44:26,133.133 INFO    ] No update needed
[2026-06-27 19:44:26,134.134 INFO    ] Checking for camera pi updates...
[2026-06-27 19:44:26,154.154 INFO    ] 200
[2026-06-27 19:44:26,156.156 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:44:26,182.182 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:44:26,225.225 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:44:26,227.227 INFO    ] No camera update needed
[2026-06-27 19:44:26,228.228 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:44:26,229.229 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:44:26,233.233 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:44:26,236.236 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:44:28,276.276 INFO    ] ================================================
[2026-06-27 19:44:28,292.292 INFO    ] Launching Daemon at Sat Jun 27 19:44:28 IST 2026
[2026-06-27 19:44:28,302.302 INFO    ] ================================================
[2026-06-27 19:44:28,660.660 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:44:28
[2026-06-27 19:44:28,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:44:29,105.105 INFO    ] Initializing speech engine...
[2026-06-27 19:44:29,108.108 INFO    ] 2026-06-27 19:44:29
[2026-06-27 19:44:29,331.331 INFO    ] 2026-06-27 19:44:29
[2026-06-27 19:44:29,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:44:29,564.564 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:44:29,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:44:29,712.712 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:44:29,767.767 INFO    ] time= 27/06/2026 19:44:29
[2026-06-27 19:44:29,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:44:29,827.827 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:44:29,902.902 INFO    ] No existing commands found in stream
[2026-06-27 19:44:34,912.912 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:44:34,915.915 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-27 19:44:35,476.476 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:44:35,478.478 INFO    ] Checking for system updates...
[2026-06-27 19:44:35,500.500 INFO    ] 200
[2026-06-27 19:44:35,502.502 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:44:35,537.537 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:44:35,539.539 INFO    ] No update needed
[2026-06-27 19:44:35,540.540 INFO    ] Checking for camera pi updates...
[2026-06-27 19:44:35,563.563 INFO    ] 200
[2026-06-27 19:44:35,564.564 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:44:35,590.590 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:44:35,631.631 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:44:35,632.632 INFO    ] No camera update needed
[2026-06-27 19:44:35,634.634 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:44:35,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:44:35,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:44:35,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:44:37,681.681 INFO    ] ================================================
[2026-06-27 19:44:37,697.697 INFO    ] Launching Daemon at Sat Jun 27 19:44:37 IST 2026
[2026-06-27 19:44:37,707.707 INFO    ] ================================================
[2026-06-27 19:44:38,065.065 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:44:38
[2026-06-27 19:44:38,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:44:38,528.528 INFO    ] Initializing speech engine...
[2026-06-27 19:44:38,532.532 INFO    ] 2026-06-27 19:44:38
[2026-06-27 19:44:38,739.739 INFO    ] 2026-06-27 19:44:38
[2026-06-27 19:44:38,768.768 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:44:38,952.952 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:44:38,962.962 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:44:39,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:44:39,158.158 INFO    ] time= 27/06/2026 19:44:39
[2026-06-27 19:44:39,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:44:39,187.187 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:44:39,255.255 INFO    ] No existing commands found in stream
[2026-06-27 19:44:44,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:44:44,267.267 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-27 19:44:45,518.518 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:44:45,519.519 INFO    ] Checking for system updates...
[2026-06-27 19:44:45,540.540 INFO    ] 200
[2026-06-27 19:44:45,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:44:45,575.575 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:44:45,576.576 INFO    ] No update needed
[2026-06-27 19:44:45,577.577 INFO    ] Checking for camera pi updates...
[2026-06-27 19:44:45,598.598 INFO    ] 200
[2026-06-27 19:44:45,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:44:45,623.623 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:44:45,666.666 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:44:45,667.667 INFO    ] No camera update needed
[2026-06-27 19:44:45,668.668 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:44:45,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:44:45,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:44:45,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:44:47,714.714 INFO    ] ================================================
[2026-06-27 19:44:47,730.730 INFO    ] Launching Daemon at Sat Jun 27 19:44:47 IST 2026
[2026-06-27 19:44:47,741.741 INFO    ] ================================================
[2026-06-27 19:44:48,110.110 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:44:48
[2026-06-27 19:44:48,462.462 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:44:48,619.619 INFO    ] Initializing speech engine...
[2026-06-27 19:44:48,623.623 INFO    ] 2026-06-27 19:44:48
[2026-06-27 19:44:48,832.832 INFO    ] 2026-06-27 19:44:48
[2026-06-27 19:44:48,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:44:49,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:44:49,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:44:49,191.191 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:44:49,259.259 INFO    ] time= 27/06/2026 19:44:49
[2026-06-27 19:44:49,283.283 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:44:49,290.290 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:44:49,357.357 INFO    ] No existing commands found in stream
[2026-06-27 19:44:54,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:44:54,376.376 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-27 19:44:57,016.016 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 19:44:57,018.018 INFO    ] Checking for system updates...
[2026-06-27 19:44:57,039.039 INFO    ] 200
[2026-06-27 19:44:57,040.040 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:44:57,071.071 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:44:57,072.072 INFO    ] No update needed
[2026-06-27 19:44:57,074.074 INFO    ] Checking for camera pi updates...
[2026-06-27 19:44:57,094.094 INFO    ] 200
[2026-06-27 19:44:57,096.096 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:44:57,120.120 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:44:57,168.168 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:44:57,170.170 INFO    ] No camera update needed
[2026-06-27 19:44:57,171.171 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:44:57,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:44:57,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:44:57,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:44:59,219.219 INFO    ] ================================================
[2026-06-27 19:44:59,234.234 INFO    ] Launching Daemon at Sat Jun 27 19:44:59 IST 2026
[2026-06-27 19:44:59,245.245 INFO    ] ================================================
[2026-06-27 19:44:59,624.624 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:44:59
[2026-06-27 19:44:59,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:45:00,116.116 INFO    ] Initializing speech engine...
[2026-06-27 19:45:00,120.120 INFO    ] 2026-06-27 19:45:00
[2026-06-27 19:45:00,329.329 INFO    ] 2026-06-27 19:45:00
[2026-06-27 19:45:00,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:45:00,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:45:00,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:45:00,678.678 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:45:00,734.734 INFO    ] time= 27/06/2026 19:45:00
[2026-06-27 19:45:00,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:45:00,783.783 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:45:00,852.852 INFO    ] No existing commands found in stream
[2026-06-27 19:45:05,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:45:05,859.859 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-27 19:45:10,202.202 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 19:45:10,204.204 INFO    ] Checking for system updates...
[2026-06-27 19:45:10,225.225 INFO    ] 200
[2026-06-27 19:45:10,226.226 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:45:10,260.260 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:45:10,261.261 INFO    ] No update needed
[2026-06-27 19:45:10,262.262 INFO    ] Checking for camera pi updates...
[2026-06-27 19:45:10,284.284 INFO    ] 200
[2026-06-27 19:45:10,286.286 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:45:10,309.309 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:45:10,350.350 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:45:10,352.352 INFO    ] No camera update needed
[2026-06-27 19:45:10,353.353 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:45:10,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:45:10,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:45:10,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:45:12,400.400 INFO    ] ================================================
[2026-06-27 19:45:12,415.415 INFO    ] Launching Daemon at Sat Jun 27 19:45:12 IST 2026
[2026-06-27 19:45:12,426.426 INFO    ] ================================================
[2026-06-27 19:45:12,772.772 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:45:12
[2026-06-27 19:45:13,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:45:13,226.226 INFO    ] Initializing speech engine...
[2026-06-27 19:45:13,238.238 INFO    ] 2026-06-27 19:45:13
[2026-06-27 19:45:13,446.446 INFO    ] 2026-06-27 19:45:13
[2026-06-27 19:45:13,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:45:13,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:45:13,683.683 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:45:13,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:45:13,891.891 INFO    ] time= 27/06/2026 19:45:13
[2026-06-27 19:45:13,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:45:13,934.934 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:45:14,006.006 INFO    ] No existing commands found in stream
[2026-06-27 19:45:19,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:45:19,020.020 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-27 19:45:20,159.159 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:45:20,161.161 INFO    ] Checking for system updates...
[2026-06-27 19:45:20,182.182 INFO    ] 200
[2026-06-27 19:45:20,183.183 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:45:20,214.214 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:45:20,215.215 INFO    ] No update needed
[2026-06-27 19:45:20,217.217 INFO    ] Checking for camera pi updates...
[2026-06-27 19:45:20,236.236 INFO    ] 200
[2026-06-27 19:45:20,237.237 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:45:20,261.261 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:45:20,303.303 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:45:20,305.305 INFO    ] No camera update needed
[2026-06-27 19:45:20,306.306 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:45:20,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:45:20,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:45:20,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:45:22,352.352 INFO    ] ================================================
[2026-06-27 19:45:22,368.368 INFO    ] Launching Daemon at Sat Jun 27 19:45:22 IST 2026
[2026-06-27 19:45:22,378.378 INFO    ] ================================================
[2026-06-27 19:45:22,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:45:22
[2026-06-27 19:45:23,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:45:23,173.173 INFO    ] Initializing speech engine...
[2026-06-27 19:45:23,178.178 INFO    ] 2026-06-27 19:45:23
[2026-06-27 19:45:23,381.381 INFO    ] 2026-06-27 19:45:23
[2026-06-27 19:45:23,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:45:23,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:45:23,596.596 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:45:23,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:45:23,774.774 INFO    ] time= 27/06/2026 19:45:23
[2026-06-27 19:45:23,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:45:23,824.824 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:45:23,894.894 INFO    ] No existing commands found in stream
[2026-06-27 19:45:28,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:45:28,906.906 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-27 19:45:32,053.053 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:45:32,056.056 INFO    ] Checking for system updates...
[2026-06-27 19:45:32,080.080 INFO    ] 200
[2026-06-27 19:45:32,082.082 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:45:32,128.128 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:45:32,129.129 INFO    ] No update needed
[2026-06-27 19:45:32,130.130 INFO    ] Checking for camera pi updates...
[2026-06-27 19:45:32,151.151 INFO    ] 200
[2026-06-27 19:45:32,153.153 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:45:32,176.176 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:45:32,206.206 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:45:32,207.207 INFO    ] No camera update needed
[2026-06-27 19:45:32,209.209 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:45:32,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:45:32,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:45:32,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:45:34,255.255 INFO    ] ================================================
[2026-06-27 19:45:34,270.270 INFO    ] Launching Daemon at Sat Jun 27 19:45:34 IST 2026
[2026-06-27 19:45:34,281.281 INFO    ] ================================================
[2026-06-27 19:45:34,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:45:34
[2026-06-27 19:45:34,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:45:35,102.102 INFO    ] Initializing speech engine...
[2026-06-27 19:45:35,106.106 INFO    ] 2026-06-27 19:45:35
[2026-06-27 19:45:35,324.324 INFO    ] 2026-06-27 19:45:35
[2026-06-27 19:45:35,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:45:35,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:45:35,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:45:35,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:45:35,739.739 INFO    ] time= 27/06/2026 19:45:35
[2026-06-27 19:45:35,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:45:35,772.772 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:45:35,839.839 INFO    ] No existing commands found in stream
[2026-06-27 19:45:40,848.848 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:45:40,851.851 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-27 19:45:43,639.639 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 19:45:43,641.641 INFO    ] Checking for system updates...
[2026-06-27 19:45:43,662.662 INFO    ] 200
[2026-06-27 19:45:43,663.663 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:45:43,694.694 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:45:43,695.695 INFO    ] No update needed
[2026-06-27 19:45:43,696.696 INFO    ] Checking for camera pi updates...
[2026-06-27 19:45:43,716.716 INFO    ] 200
[2026-06-27 19:45:43,717.717 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:45:43,740.740 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:45:43,786.786 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:45:43,788.788 INFO    ] No camera update needed
[2026-06-27 19:45:43,789.789 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:45:43,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:45:43,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:45:43,796.796 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:45:45,835.835 INFO    ] ================================================
[2026-06-27 19:45:45,850.850 INFO    ] Launching Daemon at Sat Jun 27 19:45:45 IST 2026
[2026-06-27 19:45:45,861.861 INFO    ] ================================================
[2026-06-27 19:45:46,213.213 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:45:46
[2026-06-27 19:45:46,558.558 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:45:46,714.714 INFO    ] Initializing speech engine...
[2026-06-27 19:45:46,718.718 INFO    ] 2026-06-27 19:45:46
[2026-06-27 19:45:46,925.925 INFO    ] 2026-06-27 19:45:46
[2026-06-27 19:45:46,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:45:47,140.140 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:45:47,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:45:47,306.306 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:45:47,350.350 INFO    ] time= 27/06/2026 19:45:47
[2026-06-27 19:45:47,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:45:47,377.377 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:45:47,445.445 INFO    ] No existing commands found in stream
[2026-06-27 19:45:52,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:45:52,466.466 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-27 19:45:54,062.062 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:45:54,064.064 INFO    ] Checking for system updates...
[2026-06-27 19:45:54,087.087 INFO    ] 200
[2026-06-27 19:45:54,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:45:54,119.119 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:45:54,120.120 INFO    ] No update needed
[2026-06-27 19:45:54,121.121 INFO    ] Checking for camera pi updates...
[2026-06-27 19:45:54,142.142 INFO    ] 200
[2026-06-27 19:45:54,144.144 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:45:54,167.167 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:45:54,217.217 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:45:54,218.218 INFO    ] No camera update needed
[2026-06-27 19:45:54,220.220 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:45:54,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:45:54,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:45:54,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:45:56,265.265 INFO    ] ================================================
[2026-06-27 19:45:56,281.281 INFO    ] Launching Daemon at Sat Jun 27 19:45:56 IST 2026
[2026-06-27 19:45:56,292.292 INFO    ] ================================================
[2026-06-27 19:45:56,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:45:56
[2026-06-27 19:45:56,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:45:57,088.088 INFO    ] Initializing speech engine...
[2026-06-27 19:45:57,094.094 INFO    ] 2026-06-27 19:45:57
[2026-06-27 19:45:57,298.298 INFO    ] 2026-06-27 19:45:57
[2026-06-27 19:45:57,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:45:57,511.511 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:45:57,520.520 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:45:57,671.671 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:45:57,720.720 INFO    ] time= 27/06/2026 19:45:57
[2026-06-27 19:45:57,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:45:57,748.748 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:45:57,814.814 INFO    ] No existing commands found in stream
[2026-06-27 19:46:02,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:46:02,826.826 INFO    ] Waiting 0.08 seconds before fallback handling...
[2026-06-27 19:46:03,230.230 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 19:46:03,232.232 INFO    ] Checking for system updates...
[2026-06-27 19:46:03,256.256 INFO    ] 200
[2026-06-27 19:46:03,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:46:03,312.312 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:46:03,314.314 INFO    ] No update needed
[2026-06-27 19:46:03,317.317 INFO    ] Checking for camera pi updates...
[2026-06-27 19:46:03,351.351 INFO    ] 200
[2026-06-27 19:46:03,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:46:03,377.377 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:46:03,417.417 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:46:03,419.419 INFO    ] No camera update needed
[2026-06-27 19:46:03,420.420 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:46:03,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:46:03,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:46:03,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:46:05,468.468 INFO    ] ================================================
[2026-06-27 19:46:05,484.484 INFO    ] Launching Daemon at Sat Jun 27 19:46:05 IST 2026
[2026-06-27 19:46:05,495.495 INFO    ] ================================================
[2026-06-27 19:46:05,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:46:05
[2026-06-27 19:46:06,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:46:06,328.328 INFO    ] Initializing speech engine...
[2026-06-27 19:46:06,341.341 INFO    ] 2026-06-27 19:46:06
[2026-06-27 19:46:06,551.551 INFO    ] 2026-06-27 19:46:06
[2026-06-27 19:46:06,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:46:06,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:46:06,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:46:06,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:46:06,972.972 INFO    ] time= 27/06/2026 19:46:06
[2026-06-27 19:46:06,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:46:07,000.000 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:46:07,066.066 INFO    ] No existing commands found in stream
[2026-06-27 19:46:12,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:46:12,094.094 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-27 19:46:16,220.220 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 19:46:16,221.221 INFO    ] Checking for system updates...
[2026-06-27 19:46:16,242.242 INFO    ] 200
[2026-06-27 19:46:16,243.243 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:46:16,274.274 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:46:16,275.275 INFO    ] No update needed
[2026-06-27 19:46:16,276.276 INFO    ] Checking for camera pi updates...
[2026-06-27 19:46:16,297.297 INFO    ] 200
[2026-06-27 19:46:16,299.299 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:46:16,325.325 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:46:16,376.376 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:46:16,378.378 INFO    ] No camera update needed
[2026-06-27 19:46:16,379.379 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:46:16,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:46:16,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:46:16,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:46:18,424.424 INFO    ] ================================================
[2026-06-27 19:46:18,439.439 INFO    ] Launching Daemon at Sat Jun 27 19:46:18 IST 2026
[2026-06-27 19:46:18,450.450 INFO    ] ================================================
[2026-06-27 19:46:18,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:46:18
[2026-06-27 19:46:19,163.163 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:46:19,310.310 INFO    ] Initializing speech engine...
[2026-06-27 19:46:19,323.323 INFO    ] 2026-06-27 19:46:19
[2026-06-27 19:46:19,538.538 INFO    ] 2026-06-27 19:46:19
[2026-06-27 19:46:19,567.567 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:46:19,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:46:19,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:46:19,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:46:19,968.968 INFO    ] time= 27/06/2026 19:46:19
[2026-06-27 19:46:19,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:46:19,999.999 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:46:20,067.067 INFO    ] No existing commands found in stream
[2026-06-27 19:46:25,082.082 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:46:25,085.085 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-27 19:46:25,551.551 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 19:46:25,553.553 INFO    ] Checking for system updates...
[2026-06-27 19:46:25,576.576 INFO    ] 200
[2026-06-27 19:46:25,577.577 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:46:25,614.614 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:46:25,615.615 INFO    ] No update needed
[2026-06-27 19:46:25,617.617 INFO    ] Checking for camera pi updates...
[2026-06-27 19:46:25,641.641 INFO    ] 200
[2026-06-27 19:46:25,642.642 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:46:25,668.668 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:46:25,716.716 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:46:25,718.718 INFO    ] No camera update needed
[2026-06-27 19:46:25,719.719 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:46:25,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:46:25,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:46:25,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:46:27,771.771 INFO    ] ================================================
[2026-06-27 19:46:27,786.786 INFO    ] Launching Daemon at Sat Jun 27 19:46:27 IST 2026
[2026-06-27 19:46:27,797.797 INFO    ] ================================================
[2026-06-27 19:46:28,130.130 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:46:28
[2026-06-27 19:46:28,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:46:28,586.586 INFO    ] Initializing speech engine...
[2026-06-27 19:46:28,594.594 INFO    ] 2026-06-27 19:46:28
[2026-06-27 19:46:28,802.802 INFO    ] 2026-06-27 19:46:28
[2026-06-27 19:46:28,829.829 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:46:28,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:46:29,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:46:29,164.164 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:46:29,221.221 INFO    ] time= 27/06/2026 19:46:29
[2026-06-27 19:46:29,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:46:29,250.250 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:46:29,317.317 INFO    ] No existing commands found in stream
[2026-06-27 19:46:34,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:46:34,329.329 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-27 19:46:38,367.367 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 19:46:38,369.369 INFO    ] Checking for system updates...
[2026-06-27 19:46:38,390.390 INFO    ] 200
[2026-06-27 19:46:38,391.391 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:46:38,422.422 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:46:38,423.423 INFO    ] No update needed
[2026-06-27 19:46:38,425.425 INFO    ] Checking for camera pi updates...
[2026-06-27 19:46:38,445.445 INFO    ] 200
[2026-06-27 19:46:38,447.447 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:46:38,470.470 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:46:38,514.514 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:46:38,516.516 INFO    ] No camera update needed
[2026-06-27 19:46:38,517.517 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:46:38,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:46:38,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:46:38,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:46:40,566.566 INFO    ] ================================================
[2026-06-27 19:46:40,581.581 INFO    ] Launching Daemon at Sat Jun 27 19:46:40 IST 2026
[2026-06-27 19:46:40,592.592 INFO    ] ================================================
[2026-06-27 19:46:40,947.947 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:46:40
[2026-06-27 19:46:41,282.282 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:46:41,429.429 INFO    ] Initializing speech engine...
[2026-06-27 19:46:41,445.445 INFO    ] 2026-06-27 19:46:41
[2026-06-27 19:46:41,700.700 INFO    ] 2026-06-27 19:46:41
[2026-06-27 19:46:41,731.731 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:46:41,920.920 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:46:41,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:46:42,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:46:42,122.122 INFO    ] time= 27/06/2026 19:46:42
[2026-06-27 19:46:42,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:46:42,184.184 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:46:42,261.261 INFO    ] No existing commands found in stream
[2026-06-27 19:46:47,270.270 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:46:47,273.273 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-27 19:46:49,316.316 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 19:46:49,317.317 INFO    ] Checking for system updates...
[2026-06-27 19:46:49,338.338 INFO    ] 200
[2026-06-27 19:46:49,339.339 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:46:49,372.372 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:46:49,374.374 INFO    ] No update needed
[2026-06-27 19:46:49,375.375 INFO    ] Checking for camera pi updates...
[2026-06-27 19:46:49,397.397 INFO    ] 200
[2026-06-27 19:46:49,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:46:49,423.423 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:46:49,464.464 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:46:49,465.465 INFO    ] No camera update needed
[2026-06-27 19:46:49,466.466 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:46:49,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:46:49,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:46:49,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:46:51,511.511 INFO    ] ================================================
[2026-06-27 19:46:51,527.527 INFO    ] Launching Daemon at Sat Jun 27 19:46:51 IST 2026
[2026-06-27 19:46:51,538.538 INFO    ] ================================================
[2026-06-27 19:46:51,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:46:51
[2026-06-27 19:46:52,231.231 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:46:52,376.376 INFO    ] Initializing speech engine...
[2026-06-27 19:46:52,385.385 INFO    ] 2026-06-27 19:46:52
[2026-06-27 19:46:52,608.608 INFO    ] 2026-06-27 19:46:52
[2026-06-27 19:46:52,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:46:52,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:46:52,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:46:53,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:46:53,088.088 INFO    ] time= 27/06/2026 19:46:53
[2026-06-27 19:46:53,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:46:53,095.095 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:46:53,168.168 INFO    ] No existing commands found in stream
[2026-06-27 19:46:58,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:46:58,180.180 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-27 19:47:01,504.504 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:47:01,506.506 INFO    ] Checking for system updates...
[2026-06-27 19:47:01,528.528 INFO    ] 200
[2026-06-27 19:47:01,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:47:01,560.560 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:47:01,562.562 INFO    ] No update needed
[2026-06-27 19:47:01,563.563 INFO    ] Checking for camera pi updates...
[2026-06-27 19:47:01,583.583 INFO    ] 200
[2026-06-27 19:47:01,584.584 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:47:01,609.609 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:47:01,649.649 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:47:01,650.650 INFO    ] No camera update needed
[2026-06-27 19:47:01,651.651 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:47:01,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:47:01,656.656 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:47:01,659.659 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:47:03,692.692 INFO    ] ================================================
[2026-06-27 19:47:03,708.708 INFO    ] Launching Daemon at Sat Jun 27 19:47:03 IST 2026
[2026-06-27 19:47:03,719.719 INFO    ] ================================================
[2026-06-27 19:47:04,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:47:04
[2026-06-27 19:47:04,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:47:04,517.517 INFO    ] Initializing speech engine...
[2026-06-27 19:47:04,523.523 INFO    ] 2026-06-27 19:47:04
[2026-06-27 19:47:04,735.735 INFO    ] 2026-06-27 19:47:04
[2026-06-27 19:47:04,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:47:04,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:47:04,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:47:05,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:47:05,157.157 INFO    ] time= 27/06/2026 19:47:05
[2026-06-27 19:47:05,183.183 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:47:05,206.206 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:47:05,282.282 INFO    ] No existing commands found in stream
[2026-06-27 19:47:10,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:47:10,294.294 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-27 19:47:12,271.271 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 19:47:12,272.272 INFO    ] Checking for system updates...
[2026-06-27 19:47:12,293.293 INFO    ] 200
[2026-06-27 19:47:12,294.294 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:47:12,324.324 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:47:12,326.326 INFO    ] No update needed
[2026-06-27 19:47:12,327.327 INFO    ] Checking for camera pi updates...
[2026-06-27 19:47:12,346.346 INFO    ] 200
[2026-06-27 19:47:12,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:47:12,372.372 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:47:12,510.510 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:47:12,512.512 INFO    ] No camera update needed
[2026-06-27 19:47:12,513.513 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:47:12,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:47:12,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:47:12,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:47:14,558.558 INFO    ] ================================================
[2026-06-27 19:47:14,573.573 INFO    ] Launching Daemon at Sat Jun 27 19:47:14 IST 2026
[2026-06-27 19:47:14,584.584 INFO    ] ================================================
[2026-06-27 19:47:14,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:47:14
[2026-06-27 19:47:15,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:47:15,419.419 INFO    ] Initializing speech engine...
[2026-06-27 19:47:15,424.424 INFO    ] 2026-06-27 19:47:15
[2026-06-27 19:47:15,629.629 INFO    ] 2026-06-27 19:47:15
[2026-06-27 19:47:15,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:47:15,841.841 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:47:15,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:47:15,981.981 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:47:16,049.049 INFO    ] time= 27/06/2026 19:47:15
[2026-06-27 19:47:16,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:47:16,079.079 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:47:16,147.147 INFO    ] No existing commands found in stream
[2026-06-27 19:47:21,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:47:21,158.158 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-27 19:47:24,262.262 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 19:47:24,264.264 INFO    ] Checking for system updates...
[2026-06-27 19:47:24,286.286 INFO    ] 200
[2026-06-27 19:47:24,288.288 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:47:24,319.319 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:47:24,321.321 INFO    ] No update needed
[2026-06-27 19:47:24,322.322 INFO    ] Checking for camera pi updates...
[2026-06-27 19:47:24,342.342 INFO    ] 200
[2026-06-27 19:47:24,344.344 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:47:24,367.367 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:47:24,416.416 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:47:24,418.418 INFO    ] No camera update needed
[2026-06-27 19:47:24,419.419 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:47:24,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:47:24,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:47:24,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:47:26,469.469 INFO    ] ================================================
[2026-06-27 19:47:26,486.486 INFO    ] Launching Daemon at Sat Jun 27 19:47:26 IST 2026
[2026-06-27 19:47:26,497.497 INFO    ] ================================================
[2026-06-27 19:47:26,841.841 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:47:26
[2026-06-27 19:47:27,171.171 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:47:27,314.314 INFO    ] Initializing speech engine...
[2026-06-27 19:47:27,325.325 INFO    ] 2026-06-27 19:47:27
[2026-06-27 19:47:27,532.532 INFO    ] 2026-06-27 19:47:27
[2026-06-27 19:47:27,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:47:27,745.745 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:47:27,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:47:27,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:47:27,950.950 INFO    ] time= 27/06/2026 19:47:27
[2026-06-27 19:47:27,974.974 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:47:27,981.981 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:47:28,048.048 INFO    ] No existing commands found in stream
[2026-06-27 19:47:33,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:47:33,065.065 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-27 19:47:35,320.320 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:47:35,321.321 INFO    ] Checking for system updates...
[2026-06-27 19:47:35,343.343 INFO    ] 200
[2026-06-27 19:47:35,345.345 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:47:35,376.376 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:47:35,377.377 INFO    ] No update needed
[2026-06-27 19:47:35,379.379 INFO    ] Checking for camera pi updates...
[2026-06-27 19:47:35,398.398 INFO    ] 200
[2026-06-27 19:47:35,400.400 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:47:35,423.423 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:47:35,471.471 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:47:35,472.472 INFO    ] No camera update needed
[2026-06-27 19:47:35,474.474 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:47:35,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:47:35,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:47:35,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:47:37,521.521 INFO    ] ================================================
[2026-06-27 19:47:37,537.537 INFO    ] Launching Daemon at Sat Jun 27 19:47:37 IST 2026
[2026-06-27 19:47:37,547.547 INFO    ] ================================================
[2026-06-27 19:47:37,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:47:37
[2026-06-27 19:47:38,206.206 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:47:38,339.339 INFO    ] Initializing speech engine...
[2026-06-27 19:47:38,344.344 INFO    ] 2026-06-27 19:47:38
[2026-06-27 19:47:38,570.570 INFO    ] 2026-06-27 19:47:38
[2026-06-27 19:47:38,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:47:38,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:47:38,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:47:38,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:47:38,998.998 INFO    ] time= 27/06/2026 19:47:38
[2026-06-27 19:47:39,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:47:39,047.047 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:47:39,118.118 INFO    ] No existing commands found in stream
[2026-06-27 19:47:44,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:47:44,130.130 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-27 19:47:45,810.810 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 19:47:45,812.812 INFO    ] Checking for system updates...
[2026-06-27 19:47:45,832.832 INFO    ] 200
[2026-06-27 19:47:45,833.833 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:47:45,864.864 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:47:45,865.865 INFO    ] No update needed
[2026-06-27 19:47:45,866.866 INFO    ] Checking for camera pi updates...
[2026-06-27 19:47:45,886.886 INFO    ] 200
[2026-06-27 19:47:45,888.888 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:47:45,912.912 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:47:45,959.959 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:47:45,961.961 INFO    ] No camera update needed
[2026-06-27 19:47:45,962.962 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:47:45,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:47:45,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:47:45,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:47:48,008.008 INFO    ] ================================================
[2026-06-27 19:47:48,023.023 INFO    ] Launching Daemon at Sat Jun 27 19:47:48 IST 2026
[2026-06-27 19:47:48,034.034 INFO    ] ================================================
[2026-06-27 19:47:48,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:47:48
[2026-06-27 19:47:48,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:47:48,904.904 INFO    ] Initializing speech engine...
[2026-06-27 19:47:48,913.913 INFO    ] 2026-06-27 19:47:48
[2026-06-27 19:47:49,110.110 INFO    ] 2026-06-27 19:47:49
[2026-06-27 19:47:49,152.152 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:47:49,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:47:49,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:47:49,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:47:49,498.498 INFO    ] time= 27/06/2026 19:47:49
[2026-06-27 19:47:49,550.550 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:47:49,596.596 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:47:49,693.693 INFO    ] No existing commands found in stream
[2026-06-27 19:47:54,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:47:54,707.707 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-27 19:47:55,444.444 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 19:47:55,445.445 INFO    ] Checking for system updates...
[2026-06-27 19:47:55,466.466 INFO    ] 200
[2026-06-27 19:47:55,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:47:55,500.500 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:47:55,502.502 INFO    ] No update needed
[2026-06-27 19:47:55,503.503 INFO    ] Checking for camera pi updates...
[2026-06-27 19:47:55,522.522 INFO    ] 200
[2026-06-27 19:47:55,524.524 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:47:55,554.554 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:47:55,581.581 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:47:55,583.583 INFO    ] No camera update needed
[2026-06-27 19:47:55,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:47:55,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:47:55,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:47:55,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:47:57,630.630 INFO    ] ================================================
[2026-06-27 19:47:57,645.645 INFO    ] Launching Daemon at Sat Jun 27 19:47:57 IST 2026
[2026-06-27 19:47:57,656.656 INFO    ] ================================================
[2026-06-27 19:47:58,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:47:58
[2026-06-27 19:47:58,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:47:58,509.509 INFO    ] Initializing speech engine...
[2026-06-27 19:47:58,515.515 INFO    ] 2026-06-27 19:47:58
[2026-06-27 19:47:58,723.723 INFO    ] 2026-06-27 19:47:58
[2026-06-27 19:47:58,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:47:58,938.938 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:47:58,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:47:59,139.139 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:47:59,169.169 INFO    ] time= 27/06/2026 19:47:59
[2026-06-27 19:47:59,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:47:59,177.177 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:47:59,270.270 INFO    ] No existing commands found in stream
[2026-06-27 19:48:04,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:48:04,287.287 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-27 19:48:08,059.059 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 19:48:08,061.061 INFO    ] Checking for system updates...
[2026-06-27 19:48:08,081.081 INFO    ] 200
[2026-06-27 19:48:08,083.083 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:48:08,113.113 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:48:08,115.115 INFO    ] No update needed
[2026-06-27 19:48:08,116.116 INFO    ] Checking for camera pi updates...
[2026-06-27 19:48:08,137.137 INFO    ] 200
[2026-06-27 19:48:08,138.138 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:48:08,163.163 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:48:08,206.206 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:48:08,208.208 INFO    ] No camera update needed
[2026-06-27 19:48:08,209.209 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:48:08,210.210 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:48:08,213.213 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:48:08,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:48:10,255.255 INFO    ] ================================================
[2026-06-27 19:48:10,270.270 INFO    ] Launching Daemon at Sat Jun 27 19:48:10 IST 2026
[2026-06-27 19:48:10,280.280 INFO    ] ================================================
[2026-06-27 19:48:10,639.639 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:48:10
[2026-06-27 19:48:10,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:48:11,093.093 INFO    ] Initializing speech engine...
[2026-06-27 19:48:11,104.104 INFO    ] 2026-06-27 19:48:11
[2026-06-27 19:48:11,307.307 INFO    ] 2026-06-27 19:48:11
[2026-06-27 19:48:11,335.335 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:48:11,519.519 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:48:11,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:48:11,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:48:11,713.713 INFO    ] time= 27/06/2026 19:48:11
[2026-06-27 19:48:11,751.751 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:48:11,753.753 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:48:11,824.824 INFO    ] No existing commands found in stream
[2026-06-27 19:48:16,838.838 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:48:16,841.841 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-27 19:48:19,935.935 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:48:19,936.936 INFO    ] Checking for system updates...
[2026-06-27 19:48:19,959.959 INFO    ] 200
[2026-06-27 19:48:19,960.960 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:48:19,997.997 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:48:19,999.999 INFO    ] No update needed
[2026-06-27 19:48:20,000.000 INFO    ] Checking for camera pi updates...
[2026-06-27 19:48:20,023.023 INFO    ] 200
[2026-06-27 19:48:20,024.024 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:48:20,048.048 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:48:20,095.095 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:48:20,096.096 INFO    ] No camera update needed
[2026-06-27 19:48:20,098.098 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:48:20,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:48:20,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:48:20,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:48:22,148.148 INFO    ] ================================================
[2026-06-27 19:48:22,163.163 INFO    ] Launching Daemon at Sat Jun 27 19:48:22 IST 2026
[2026-06-27 19:48:22,174.174 INFO    ] ================================================
[2026-06-27 19:48:22,530.530 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:48:22
[2026-06-27 19:48:22,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:48:23,031.031 INFO    ] Initializing speech engine...
[2026-06-27 19:48:23,038.038 INFO    ] 2026-06-27 19:48:23
[2026-06-27 19:48:23,244.244 INFO    ] 2026-06-27 19:48:23
[2026-06-27 19:48:23,273.273 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:48:23,458.458 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:48:23,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:48:23,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:48:23,666.666 INFO    ] time= 27/06/2026 19:48:23
[2026-06-27 19:48:23,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:48:23,695.695 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:48:23,762.762 INFO    ] No existing commands found in stream
[2026-06-27 19:48:28,771.771 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:48:28,775.775 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-27 19:48:31,520.520 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 19:48:31,522.522 INFO    ] Checking for system updates...
[2026-06-27 19:48:31,548.548 INFO    ] 200
[2026-06-27 19:48:31,550.550 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:48:31,588.588 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:48:31,590.590 INFO    ] No update needed
[2026-06-27 19:48:31,592.592 INFO    ] Checking for camera pi updates...
[2026-06-27 19:48:31,618.618 INFO    ] 200
[2026-06-27 19:48:31,620.620 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:48:31,648.648 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:48:31,680.680 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:48:31,682.682 INFO    ] No camera update needed
[2026-06-27 19:48:31,684.684 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:48:31,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:48:31,690.690 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:48:31,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:48:33,735.735 INFO    ] ================================================
[2026-06-27 19:48:33,751.751 INFO    ] Launching Daemon at Sat Jun 27 19:48:33 IST 2026
[2026-06-27 19:48:33,763.763 INFO    ] ================================================
[2026-06-27 19:48:34,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:48:34
[2026-06-27 19:48:34,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:48:34,565.565 INFO    ] Initializing speech engine...
[2026-06-27 19:48:34,571.571 INFO    ] 2026-06-27 19:48:34
[2026-06-27 19:48:34,776.776 INFO    ] 2026-06-27 19:48:34
[2026-06-27 19:48:34,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:48:34,994.994 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:48:35,003.003 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:48:35,128.128 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:48:35,184.184 INFO    ] time= 27/06/2026 19:48:35
[2026-06-27 19:48:35,230.230 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:48:35,234.234 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:48:35,307.307 INFO    ] No existing commands found in stream
[2026-06-27 19:48:40,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:48:40,318.318 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-27 19:48:40,902.902 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 19:48:40,904.904 INFO    ] Checking for system updates...
[2026-06-27 19:48:40,925.925 INFO    ] 200
[2026-06-27 19:48:40,926.926 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:48:40,958.958 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:48:40,959.959 INFO    ] No update needed
[2026-06-27 19:48:40,960.960 INFO    ] Checking for camera pi updates...
[2026-06-27 19:48:40,981.981 INFO    ] 200
[2026-06-27 19:48:40,983.983 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:48:41,007.007 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:48:41,059.059 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:48:41,060.060 INFO    ] No camera update needed
[2026-06-27 19:48:41,061.061 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:48:41,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:48:41,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:48:41,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:48:43,107.107 INFO    ] ================================================
[2026-06-27 19:48:43,123.123 INFO    ] Launching Daemon at Sat Jun 27 19:48:43 IST 2026
[2026-06-27 19:48:43,133.133 INFO    ] ================================================
[2026-06-27 19:48:43,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:48:43
[2026-06-27 19:48:43,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:48:43,918.918 INFO    ] Initializing speech engine...
[2026-06-27 19:48:43,930.930 INFO    ] 2026-06-27 19:48:43
[2026-06-27 19:48:44,136.136 INFO    ] 2026-06-27 19:48:44
[2026-06-27 19:48:44,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:48:44,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:48:44,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:48:44,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:48:44,531.531 INFO    ] time= 27/06/2026 19:48:44
[2026-06-27 19:48:44,570.570 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:48:44,580.580 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:48:44,650.650 INFO    ] No existing commands found in stream
[2026-06-27 19:48:49,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:48:49,663.663 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-27 19:48:53,888.888 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:48:53,889.889 INFO    ] Checking for system updates...
[2026-06-27 19:48:53,910.910 INFO    ] 200
[2026-06-27 19:48:53,912.912 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:48:53,942.942 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:48:53,944.944 INFO    ] No update needed
[2026-06-27 19:48:53,945.945 INFO    ] Checking for camera pi updates...
[2026-06-27 19:48:53,965.965 INFO    ] 200
[2026-06-27 19:48:53,966.966 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:48:53,989.989 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:48:54,101.101 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:48:54,102.102 INFO    ] No camera update needed
[2026-06-27 19:48:54,103.103 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:48:54,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:48:54,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:48:54,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:48:56,149.149 INFO    ] ================================================
[2026-06-27 19:48:56,165.165 INFO    ] Launching Daemon at Sat Jun 27 19:48:56 IST 2026
[2026-06-27 19:48:56,176.176 INFO    ] ================================================
[2026-06-27 19:48:56,525.525 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:48:56
[2026-06-27 19:48:56,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:48:56,996.996 INFO    ] Initializing speech engine...
[2026-06-27 19:48:57,004.004 INFO    ] 2026-06-27 19:48:56
[2026-06-27 19:48:57,212.212 INFO    ] 2026-06-27 19:48:57
[2026-06-27 19:48:57,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:48:57,424.424 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:48:57,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:48:57,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:48:57,651.651 INFO    ] time= 27/06/2026 19:48:57
[2026-06-27 19:48:57,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:48:57,658.658 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:48:57,725.725 INFO    ] No existing commands found in stream
[2026-06-27 19:49:02,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:49:02,740.740 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-27 19:49:04,194.194 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 19:49:04,196.196 INFO    ] Checking for system updates...
[2026-06-27 19:49:04,216.216 INFO    ] 200
[2026-06-27 19:49:04,218.218 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:49:04,249.249 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:49:04,251.251 INFO    ] No update needed
[2026-06-27 19:49:04,252.252 INFO    ] Checking for camera pi updates...
[2026-06-27 19:49:04,272.272 INFO    ] 200
[2026-06-27 19:49:04,273.273 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:49:04,298.298 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:49:04,340.340 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:49:04,341.341 INFO    ] No camera update needed
[2026-06-27 19:49:04,342.342 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:49:04,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:49:04,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:49:04,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:49:06,390.390 INFO    ] ================================================
[2026-06-27 19:49:06,406.406 INFO    ] Launching Daemon at Sat Jun 27 19:49:06 IST 2026
[2026-06-27 19:49:06,418.418 INFO    ] ================================================
[2026-06-27 19:49:06,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:49:06
[2026-06-27 19:49:07,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:49:07,209.209 INFO    ] Initializing speech engine...
[2026-06-27 19:49:07,217.217 INFO    ] 2026-06-27 19:49:07
[2026-06-27 19:49:07,433.433 INFO    ] 2026-06-27 19:49:07
[2026-06-27 19:49:07,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:49:07,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:49:07,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:49:07,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:49:07,856.856 INFO    ] time= 27/06/2026 19:49:07
[2026-06-27 19:49:07,895.895 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:49:07,907.907 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:49:07,981.981 INFO    ] No existing commands found in stream
[2026-06-27 19:49:12,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:49:12,994.994 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-27 19:49:13,684.684 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 19:49:13,686.686 INFO    ] Checking for system updates...
[2026-06-27 19:49:13,708.708 INFO    ] 200
[2026-06-27 19:49:13,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:49:13,744.744 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:49:13,746.746 INFO    ] No update needed
[2026-06-27 19:49:13,747.747 INFO    ] Checking for camera pi updates...
[2026-06-27 19:49:13,767.767 INFO    ] 200
[2026-06-27 19:49:13,769.769 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:49:13,792.792 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:49:13,937.937 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:49:13,938.938 INFO    ] No camera update needed
[2026-06-27 19:49:13,939.939 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:49:13,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:49:13,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:49:13,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:49:15,988.988 INFO    ] ================================================
[2026-06-27 19:49:16,005.005 INFO    ] Launching Daemon at Sat Jun 27 19:49:15 IST 2026
[2026-06-27 19:49:16,016.016 INFO    ] ================================================
[2026-06-27 19:49:16,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:49:16
[2026-06-27 19:49:16,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:49:16,803.803 INFO    ] Initializing speech engine...
[2026-06-27 19:49:16,808.808 INFO    ] 2026-06-27 19:49:16
[2026-06-27 19:49:17,014.014 INFO    ] 2026-06-27 19:49:16
[2026-06-27 19:49:17,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:49:17,229.229 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:49:17,240.240 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:49:17,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:49:17,439.439 INFO    ] time= 27/06/2026 19:49:17
[2026-06-27 19:49:17,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:49:17,468.468 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:49:17,562.562 INFO    ] No existing commands found in stream
[2026-06-27 19:49:22,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:49:22,579.579 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-27 19:49:26,189.189 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:49:26,191.191 INFO    ] Checking for system updates...
[2026-06-27 19:49:26,212.212 INFO    ] 200
[2026-06-27 19:49:26,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:49:26,246.246 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:49:26,247.247 INFO    ] No update needed
[2026-06-27 19:49:26,248.248 INFO    ] Checking for camera pi updates...
[2026-06-27 19:49:26,268.268 INFO    ] 200
[2026-06-27 19:49:26,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:49:26,295.295 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:49:26,342.342 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:49:26,344.344 INFO    ] No camera update needed
[2026-06-27 19:49:26,345.345 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:49:26,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:49:26,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:49:26,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:49:28,392.392 INFO    ] ================================================
[2026-06-27 19:49:28,407.407 INFO    ] Launching Daemon at Sat Jun 27 19:49:28 IST 2026
[2026-06-27 19:49:28,418.418 INFO    ] ================================================
[2026-06-27 19:49:28,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:49:28
[2026-06-27 19:49:29,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:49:29,216.216 INFO    ] Initializing speech engine...
[2026-06-27 19:49:29,221.221 INFO    ] 2026-06-27 19:49:29
[2026-06-27 19:49:29,438.438 INFO    ] 2026-06-27 19:49:29
[2026-06-27 19:49:29,467.467 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:49:29,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:49:29,662.662 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:49:29,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:49:29,852.852 INFO    ] time= 27/06/2026 19:49:29
[2026-06-27 19:49:29,885.885 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:49:29,891.891 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:49:29,958.958 INFO    ] No existing commands found in stream
[2026-06-27 19:49:34,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:49:34,970.970 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-27 19:49:37,943.943 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:49:37,945.945 INFO    ] Checking for system updates...
[2026-06-27 19:49:37,967.967 INFO    ] 200
[2026-06-27 19:49:37,968.968 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:49:38,000.000 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:49:38,001.001 INFO    ] No update needed
[2026-06-27 19:49:38,003.003 INFO    ] Checking for camera pi updates...
[2026-06-27 19:49:38,022.022 INFO    ] 200
[2026-06-27 19:49:38,023.023 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:49:38,046.046 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:49:38,088.088 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:49:38,089.089 INFO    ] No camera update needed
[2026-06-27 19:49:38,090.090 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:49:38,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:49:38,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:49:38,097.097 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:49:40,136.136 INFO    ] ================================================
[2026-06-27 19:49:40,152.152 INFO    ] Launching Daemon at Sat Jun 27 19:49:40 IST 2026
[2026-06-27 19:49:40,164.164 INFO    ] ================================================
[2026-06-27 19:49:40,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:49:40
[2026-06-27 19:49:40,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:49:40,982.982 INFO    ] Initializing speech engine...
[2026-06-27 19:49:40,997.997 INFO    ] 2026-06-27 19:49:40
[2026-06-27 19:49:41,211.211 INFO    ] 2026-06-27 19:49:41
[2026-06-27 19:49:41,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:49:41,373.373 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:49:41,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:49:41,580.580 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:49:41,621.621 INFO    ] time= 27/06/2026 19:49:41
[2026-06-27 19:49:41,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:49:41,687.687 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:49:41,762.762 INFO    ] No existing commands found in stream
[2026-06-27 19:49:46,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:49:46,776.776 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-27 19:49:49,728.728 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:49:49,730.730 INFO    ] Checking for system updates...
[2026-06-27 19:49:49,750.750 INFO    ] 200
[2026-06-27 19:49:49,752.752 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:49:49,785.785 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:49:49,787.787 INFO    ] No update needed
[2026-06-27 19:49:49,788.788 INFO    ] Checking for camera pi updates...
[2026-06-27 19:49:49,810.810 INFO    ] 200
[2026-06-27 19:49:49,811.811 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:49:49,837.837 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:49:49,879.879 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:49:49,881.881 INFO    ] No camera update needed
[2026-06-27 19:49:49,882.882 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:49:49,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:49:49,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:49:49,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:49:51,929.929 INFO    ] ================================================
[2026-06-27 19:49:51,945.945 INFO    ] Launching Daemon at Sat Jun 27 19:49:51 IST 2026
[2026-06-27 19:49:51,956.956 INFO    ] ================================================
[2026-06-27 19:49:52,338.338 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:49:52
[2026-06-27 19:49:52,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:49:52,790.790 INFO    ] Initializing speech engine...
[2026-06-27 19:49:52,795.795 INFO    ] 2026-06-27 19:49:52
[2026-06-27 19:49:53,015.015 INFO    ] 2026-06-27 19:49:52
[2026-06-27 19:49:53,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:49:53,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:49:53,251.251 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:49:53,401.401 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:49:53,455.455 INFO    ] time= 27/06/2026 19:49:53
[2026-06-27 19:49:53,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:49:53,504.504 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:49:53,573.573 INFO    ] No existing commands found in stream
[2026-06-27 19:49:58,584.584 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:49:58,587.587 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-27 19:50:01,110.110 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 19:50:01,112.112 INFO    ] Checking for system updates...
[2026-06-27 19:50:01,133.133 INFO    ] 200
[2026-06-27 19:50:01,135.135 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:50:01,166.166 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:50:01,168.168 INFO    ] No update needed
[2026-06-27 19:50:01,169.169 INFO    ] Checking for camera pi updates...
[2026-06-27 19:50:01,189.189 INFO    ] 200
[2026-06-27 19:50:01,190.190 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:50:01,215.215 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:50:01,284.284 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:50:01,285.285 INFO    ] No camera update needed
[2026-06-27 19:50:01,287.287 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:50:01,288.288 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:50:01,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:50:01,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:50:03,328.328 INFO    ] ================================================
[2026-06-27 19:50:03,344.344 INFO    ] Launching Daemon at Sat Jun 27 19:50:03 IST 2026
[2026-06-27 19:50:03,355.355 INFO    ] ================================================
[2026-06-27 19:50:03,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:50:03
[2026-06-27 19:50:03,999.999 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:50:04,133.133 INFO    ] Initializing speech engine...
[2026-06-27 19:50:04,141.141 INFO    ] 2026-06-27 19:50:04
[2026-06-27 19:50:04,364.364 INFO    ] 2026-06-27 19:50:04
[2026-06-27 19:50:04,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:50:04,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:50:04,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:50:04,728.728 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:50:04,790.790 INFO    ] time= 27/06/2026 19:50:04
[2026-06-27 19:50:04,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:50:04,835.835 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:50:04,910.910 INFO    ] No existing commands found in stream
[2026-06-27 19:50:09,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:50:09,927.927 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-27 19:50:11,368.368 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:50:11,370.370 INFO    ] Checking for system updates...
[2026-06-27 19:50:11,390.390 INFO    ] 200
[2026-06-27 19:50:11,391.391 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:50:11,422.422 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:50:11,423.423 INFO    ] No update needed
[2026-06-27 19:50:11,425.425 INFO    ] Checking for camera pi updates...
[2026-06-27 19:50:11,444.444 INFO    ] 200
[2026-06-27 19:50:11,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:50:11,471.471 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:50:11,517.517 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:50:11,519.519 INFO    ] No camera update needed
[2026-06-27 19:50:11,520.520 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:50:11,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:50:11,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:50:11,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:50:13,566.566 INFO    ] ================================================
[2026-06-27 19:50:13,581.581 INFO    ] Launching Daemon at Sat Jun 27 19:50:13 IST 2026
[2026-06-27 19:50:13,592.592 INFO    ] ================================================
[2026-06-27 19:50:13,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:50:13
[2026-06-27 19:50:14,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:50:14,408.408 INFO    ] Initializing speech engine...
[2026-06-27 19:50:14,412.412 INFO    ] 2026-06-27 19:50:14
[2026-06-27 19:50:14,623.623 INFO    ] 2026-06-27 19:50:14
[2026-06-27 19:50:14,654.654 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:50:14,848.848 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:50:14,851.851 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:50:14,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:50:15,029.029 INFO    ] time= 27/06/2026 19:50:14
[2026-06-27 19:50:15,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:50:15,094.094 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:50:15,169.169 INFO    ] No existing commands found in stream
[2026-06-27 19:50:20,178.178 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:50:20,181.181 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-27 19:50:21,704.704 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 19:50:21,705.705 INFO    ] Checking for system updates...
[2026-06-27 19:50:21,727.727 INFO    ] 200
[2026-06-27 19:50:21,728.728 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:50:21,760.760 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:50:21,761.761 INFO    ] No update needed
[2026-06-27 19:50:21,763.763 INFO    ] Checking for camera pi updates...
[2026-06-27 19:50:21,783.783 INFO    ] 200
[2026-06-27 19:50:21,785.785 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:50:21,809.809 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:50:21,852.852 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:50:21,853.853 INFO    ] No camera update needed
[2026-06-27 19:50:21,855.855 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:50:21,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:50:21,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:50:21,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:50:23,902.902 INFO    ] ================================================
[2026-06-27 19:50:23,918.918 INFO    ] Launching Daemon at Sat Jun 27 19:50:23 IST 2026
[2026-06-27 19:50:23,929.929 INFO    ] ================================================
[2026-06-27 19:50:24,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:50:24
[2026-06-27 19:50:24,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:50:24,749.749 INFO    ] Initializing speech engine...
[2026-06-27 19:50:24,757.757 INFO    ] 2026-06-27 19:50:24
[2026-06-27 19:50:24,981.981 INFO    ] 2026-06-27 19:50:24
[2026-06-27 19:50:25,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:50:25,208.208 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:50:25,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:50:25,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:50:25,426.426 INFO    ] time= 27/06/2026 19:50:25
[2026-06-27 19:50:25,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:50:25,457.457 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:50:25,528.528 INFO    ] No existing commands found in stream
[2026-06-27 19:50:30,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:50:30,540.540 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-27 19:50:31,515.515 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:50:31,516.516 INFO    ] Checking for system updates...
[2026-06-27 19:50:31,538.538 INFO    ] 200
[2026-06-27 19:50:31,539.539 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:50:31,570.570 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:50:31,571.571 INFO    ] No update needed
[2026-06-27 19:50:31,572.572 INFO    ] Checking for camera pi updates...
[2026-06-27 19:50:31,591.591 INFO    ] 200
[2026-06-27 19:50:31,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:50:31,616.616 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:50:31,648.648 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:50:31,650.650 INFO    ] No camera update needed
[2026-06-27 19:50:31,652.652 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:50:31,655.655 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:50:31,658.658 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:50:31,661.661 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:50:33,692.692 INFO    ] ================================================
[2026-06-27 19:50:33,707.707 INFO    ] Launching Daemon at Sat Jun 27 19:50:33 IST 2026
[2026-06-27 19:50:33,718.718 INFO    ] ================================================
[2026-06-27 19:50:34,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:50:34
[2026-06-27 19:50:34,390.390 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:50:34,532.532 INFO    ] Initializing speech engine...
[2026-06-27 19:50:34,543.543 INFO    ] 2026-06-27 19:50:34
[2026-06-27 19:50:34,756.756 INFO    ] 2026-06-27 19:50:34
[2026-06-27 19:50:34,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:50:34,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:50:34,988.988 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:50:35,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:50:35,190.190 INFO    ] time= 27/06/2026 19:50:35
[2026-06-27 19:50:35,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:50:35,224.224 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:50:35,299.299 INFO    ] No existing commands found in stream
[2026-06-27 19:50:40,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:50:40,311.311 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-27 19:50:44,479.479 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:50:44,480.480 INFO    ] Checking for system updates...
[2026-06-27 19:50:44,501.501 INFO    ] 200
[2026-06-27 19:50:44,503.503 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:50:44,533.533 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:50:44,535.535 INFO    ] No update needed
[2026-06-27 19:50:44,536.536 INFO    ] Checking for camera pi updates...
[2026-06-27 19:50:44,556.556 INFO    ] 200
[2026-06-27 19:50:44,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:50:44,581.581 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:50:44,623.623 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:50:44,625.625 INFO    ] No camera update needed
[2026-06-27 19:50:44,627.627 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:50:44,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:50:44,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:50:44,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:50:46,673.673 INFO    ] ================================================
[2026-06-27 19:50:46,689.689 INFO    ] Launching Daemon at Sat Jun 27 19:50:46 IST 2026
[2026-06-27 19:50:46,701.701 INFO    ] ================================================
[2026-06-27 19:50:47,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:50:47
[2026-06-27 19:50:47,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:50:47,531.531 INFO    ] Initializing speech engine...
[2026-06-27 19:50:47,538.538 INFO    ] 2026-06-27 19:50:47
[2026-06-27 19:50:47,749.749 INFO    ] 2026-06-27 19:50:47
[2026-06-27 19:50:47,777.777 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:50:47,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:50:47,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:50:48,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:50:48,184.184 INFO    ] time= 27/06/2026 19:50:48
[2026-06-27 19:50:48,212.212 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:50:48,223.223 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:50:48,294.294 INFO    ] No existing commands found in stream
[2026-06-27 19:50:53,308.308 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:50:53,310.310 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-27 19:50:57,371.371 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:50:57,372.372 INFO    ] Checking for system updates...
[2026-06-27 19:50:57,394.394 INFO    ] 200
[2026-06-27 19:50:57,396.396 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:50:57,429.429 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:50:57,431.431 INFO    ] No update needed
[2026-06-27 19:50:57,432.432 INFO    ] Checking for camera pi updates...
[2026-06-27 19:50:57,454.454 INFO    ] 200
[2026-06-27 19:50:57,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:50:57,482.482 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:50:57,523.523 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:50:57,525.525 INFO    ] No camera update needed
[2026-06-27 19:50:57,526.526 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:50:57,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:50:57,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:50:57,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:50:59,574.574 INFO    ] ================================================
[2026-06-27 19:50:59,589.589 INFO    ] Launching Daemon at Sat Jun 27 19:50:59 IST 2026
[2026-06-27 19:50:59,601.601 INFO    ] ================================================
[2026-06-27 19:50:59,973.973 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:50:59
[2026-06-27 19:51:00,287.287 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:51:00,418.418 INFO    ] Initializing speech engine...
[2026-06-27 19:51:00,422.422 INFO    ] 2026-06-27 19:51:00
[2026-06-27 19:51:00,651.651 INFO    ] 2026-06-27 19:51:00
[2026-06-27 19:51:00,681.681 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:51:00,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:51:00,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:51:01,017.017 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:51:01,074.074 INFO    ] time= 27/06/2026 19:51:01
[2026-06-27 19:51:01,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:51:01,128.128 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:51:01,199.199 INFO    ] No existing commands found in stream
[2026-06-27 19:51:06,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:51:06,209.209 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-27 19:51:08,369.369 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:51:08,370.370 INFO    ] Checking for system updates...
[2026-06-27 19:51:08,392.392 INFO    ] 200
[2026-06-27 19:51:08,393.393 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:51:08,424.424 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:51:08,425.425 INFO    ] No update needed
[2026-06-27 19:51:08,427.427 INFO    ] Checking for camera pi updates...
[2026-06-27 19:51:08,447.447 INFO    ] 200
[2026-06-27 19:51:08,448.448 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:51:08,472.472 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:51:08,515.515 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:51:08,516.516 INFO    ] No camera update needed
[2026-06-27 19:51:08,517.517 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:51:08,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:51:08,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:51:08,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:51:10,564.564 INFO    ] ================================================
[2026-06-27 19:51:10,579.579 INFO    ] Launching Daemon at Sat Jun 27 19:51:10 IST 2026
[2026-06-27 19:51:10,590.590 INFO    ] ================================================
[2026-06-27 19:51:10,940.940 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:51:10
[2026-06-27 19:51:11,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:51:11,423.423 INFO    ] Initializing speech engine...
[2026-06-27 19:51:11,429.429 INFO    ] 2026-06-27 19:51:11
[2026-06-27 19:51:11,640.640 INFO    ] 2026-06-27 19:51:11
[2026-06-27 19:51:11,668.668 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:51:11,805.805 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:51:11,858.858 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:51:11,988.988 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:51:11,991.991 INFO    ] time= 27/06/2026 19:51:11
[2026-06-27 19:51:11,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:51:11,997.997 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:51:12,094.094 INFO    ] No existing commands found in stream
[2026-06-27 19:51:17,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:51:17,109.109 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-27 19:51:18,750.750 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 19:51:18,752.752 INFO    ] Checking for system updates...
[2026-06-27 19:51:18,774.774 INFO    ] 200
[2026-06-27 19:51:18,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:51:18,807.807 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:51:18,808.808 INFO    ] No update needed
[2026-06-27 19:51:18,810.810 INFO    ] Checking for camera pi updates...
[2026-06-27 19:51:18,830.830 INFO    ] 200
[2026-06-27 19:51:18,831.831 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:51:18,856.856 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:51:18,984.984 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:51:18,986.986 INFO    ] No camera update needed
[2026-06-27 19:51:18,987.987 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:51:18,988.988 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:51:18,992.992 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:51:18,995.995 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:51:21,034.034 INFO    ] ================================================
[2026-06-27 19:51:21,050.050 INFO    ] Launching Daemon at Sat Jun 27 19:51:21 IST 2026
[2026-06-27 19:51:21,061.061 INFO    ] ================================================
[2026-06-27 19:51:21,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:51:21
[2026-06-27 19:51:21,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:51:21,885.885 INFO    ] Initializing speech engine...
[2026-06-27 19:51:21,898.898 INFO    ] 2026-06-27 19:51:21
[2026-06-27 19:51:22,115.115 INFO    ] 2026-06-27 19:51:22
[2026-06-27 19:51:22,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:51:22,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:51:22,344.344 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:51:22,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:51:22,562.562 INFO    ] time= 27/06/2026 19:51:22
[2026-06-27 19:51:22,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:51:22,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:51:22,659.659 INFO    ] No existing commands found in stream
[2026-06-27 19:51:27,670.670 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:51:27,673.673 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-27 19:51:30,694.694 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 19:51:30,696.696 INFO    ] Checking for system updates...
[2026-06-27 19:51:30,716.716 INFO    ] 200
[2026-06-27 19:51:30,718.718 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:51:30,750.750 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:51:30,751.751 INFO    ] No update needed
[2026-06-27 19:51:30,753.753 INFO    ] Checking for camera pi updates...
[2026-06-27 19:51:30,773.773 INFO    ] 200
[2026-06-27 19:51:30,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:51:30,798.798 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:51:30,841.841 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:51:30,842.842 INFO    ] No camera update needed
[2026-06-27 19:51:30,843.843 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:51:30,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:51:30,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:51:30,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:51:32,883.883 INFO    ] ================================================
[2026-06-27 19:51:32,892.892 INFO    ] Launching Daemon at Sat Jun 27 19:51:32 IST 2026
[2026-06-27 19:51:32,898.898 INFO    ] ================================================
[2026-06-27 19:51:33,217.217 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:51:33
[2026-06-27 19:51:33,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:51:33,699.699 INFO    ] Initializing speech engine...
[2026-06-27 19:51:33,704.704 INFO    ] 2026-06-27 19:51:33
[2026-06-27 19:51:33,911.911 INFO    ] 2026-06-27 19:51:33
[2026-06-27 19:51:33,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:51:34,125.125 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:51:34,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:51:34,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:51:34,332.332 INFO    ] time= 27/06/2026 19:51:34
[2026-06-27 19:51:34,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:51:34,361.361 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:51:34,452.452 INFO    ] No existing commands found in stream
[2026-06-27 19:51:39,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:51:39,480.480 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-27 19:51:41,901.901 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:51:41,904.904 INFO    ] Checking for system updates...
[2026-06-27 19:51:41,941.941 INFO    ] 200
[2026-06-27 19:51:41,944.944 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:51:41,991.991 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:51:41,992.992 INFO    ] No update needed
[2026-06-27 19:51:41,994.994 INFO    ] Checking for camera pi updates...
[2026-06-27 19:51:42,016.016 INFO    ] 200
[2026-06-27 19:51:42,017.017 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:51:42,042.042 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:51:42,088.088 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:51:42,090.090 INFO    ] No camera update needed
[2026-06-27 19:51:42,091.091 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:51:42,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:51:42,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:51:42,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:51:44,141.141 INFO    ] ================================================
[2026-06-27 19:51:44,156.156 INFO    ] Launching Daemon at Sat Jun 27 19:51:44 IST 2026
[2026-06-27 19:51:44,167.167 INFO    ] ================================================
[2026-06-27 19:51:44,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:51:44
[2026-06-27 19:51:44,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:51:44,952.952 INFO    ] Initializing speech engine...
[2026-06-27 19:51:44,961.961 INFO    ] 2026-06-27 19:51:44
[2026-06-27 19:51:45,165.165 INFO    ] 2026-06-27 19:51:45
[2026-06-27 19:51:45,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:51:45,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:51:45,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:51:45,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:51:45,585.585 INFO    ] time= 27/06/2026 19:51:45
[2026-06-27 19:51:45,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:51:45,613.613 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:51:45,680.680 INFO    ] No existing commands found in stream
[2026-06-27 19:51:50,689.689 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:51:50,692.692 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-27 19:51:52,913.913 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 19:51:52,915.915 INFO    ] Checking for system updates...
[2026-06-27 19:51:52,935.935 INFO    ] 200
[2026-06-27 19:51:52,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:51:52,967.967 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:51:52,968.968 INFO    ] No update needed
[2026-06-27 19:51:52,970.970 INFO    ] Checking for camera pi updates...
[2026-06-27 19:51:52,989.989 INFO    ] 200
[2026-06-27 19:51:52,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:51:53,017.017 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:51:53,061.061 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:51:53,062.062 INFO    ] No camera update needed
[2026-06-27 19:51:53,064.064 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:51:53,065.065 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:51:53,068.068 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:51:53,071.071 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:51:55,110.110 INFO    ] ================================================
[2026-06-27 19:51:55,126.126 INFO    ] Launching Daemon at Sat Jun 27 19:51:55 IST 2026
[2026-06-27 19:51:55,137.137 INFO    ] ================================================
[2026-06-27 19:51:55,468.468 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:51:55
[2026-06-27 19:51:55,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:51:55,923.923 INFO    ] Initializing speech engine...
[2026-06-27 19:51:55,928.928 INFO    ] 2026-06-27 19:51:55
[2026-06-27 19:51:56,134.134 INFO    ] 2026-06-27 19:51:56
[2026-06-27 19:51:56,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:51:56,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:51:56,359.359 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:51:56,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:51:56,562.562 INFO    ] time= 27/06/2026 19:51:56
[2026-06-27 19:51:56,585.585 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:51:56,591.591 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:51:56,658.658 INFO    ] No existing commands found in stream
[2026-06-27 19:52:01,672.672 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:52:01,674.674 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-27 19:52:03,479.479 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 19:52:03,481.481 INFO    ] Checking for system updates...
[2026-06-27 19:52:03,501.501 INFO    ] 200
[2026-06-27 19:52:03,503.503 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:52:03,534.534 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:52:03,535.535 INFO    ] No update needed
[2026-06-27 19:52:03,537.537 INFO    ] Checking for camera pi updates...
[2026-06-27 19:52:03,556.556 INFO    ] 200
[2026-06-27 19:52:03,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:52:03,582.582 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:52:03,622.622 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:52:03,623.623 INFO    ] No camera update needed
[2026-06-27 19:52:03,625.625 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:52:03,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:52:03,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:52:03,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:52:05,671.671 INFO    ] ================================================
[2026-06-27 19:52:05,687.687 INFO    ] Launching Daemon at Sat Jun 27 19:52:05 IST 2026
[2026-06-27 19:52:05,699.699 INFO    ] ================================================
[2026-06-27 19:52:06,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:52:06
[2026-06-27 19:52:06,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:52:06,468.468 INFO    ] Initializing speech engine...
[2026-06-27 19:52:06,471.471 INFO    ] 2026-06-27 19:52:06
[2026-06-27 19:52:06,691.691 INFO    ] 2026-06-27 19:52:06
[2026-06-27 19:52:06,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:52:06,917.917 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:52:06,932.932 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:52:07,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:52:07,137.137 INFO    ] time= 27/06/2026 19:52:07
[2026-06-27 19:52:07,142.142 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:52:07,144.144 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:52:07,237.237 INFO    ] No existing commands found in stream
[2026-06-27 19:52:12,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:52:12,248.248 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-27 19:52:14,015.015 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 19:52:14,016.016 INFO    ] Checking for system updates...
[2026-06-27 19:52:14,038.038 INFO    ] 200
[2026-06-27 19:52:14,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:52:14,070.070 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:52:14,071.071 INFO    ] No update needed
[2026-06-27 19:52:14,072.072 INFO    ] Checking for camera pi updates...
[2026-06-27 19:52:14,092.092 INFO    ] 200
[2026-06-27 19:52:14,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:52:14,118.118 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:52:14,167.167 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:52:14,168.168 INFO    ] No camera update needed
[2026-06-27 19:52:14,169.169 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:52:14,170.170 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:52:14,173.173 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:52:14,176.176 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:52:16,215.215 INFO    ] ================================================
[2026-06-27 19:52:16,231.231 INFO    ] Launching Daemon at Sat Jun 27 19:52:16 IST 2026
[2026-06-27 19:52:16,242.242 INFO    ] ================================================
[2026-06-27 19:52:16,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:52:16
[2026-06-27 19:52:16,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:52:17,051.051 INFO    ] Initializing speech engine...
[2026-06-27 19:52:17,056.056 INFO    ] 2026-06-27 19:52:17
[2026-06-27 19:52:17,281.281 INFO    ] 2026-06-27 19:52:17
[2026-06-27 19:52:17,312.312 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:52:17,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:52:17,506.506 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:52:17,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:52:17,706.706 INFO    ] time= 27/06/2026 19:52:17
[2026-06-27 19:52:17,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:52:17,735.735 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:52:17,802.802 INFO    ] No existing commands found in stream
[2026-06-27 19:52:22,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:52:22,815.815 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-27 19:52:26,333.333 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 19:52:26,335.335 INFO    ] Checking for system updates...
[2026-06-27 19:52:26,356.356 INFO    ] 200
[2026-06-27 19:52:26,358.358 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:52:26,388.388 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:52:26,389.389 INFO    ] No update needed
[2026-06-27 19:52:26,390.390 INFO    ] Checking for camera pi updates...
[2026-06-27 19:52:26,412.412 INFO    ] 200
[2026-06-27 19:52:26,414.414 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:52:26,437.437 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:52:26,465.465 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:52:26,467.467 INFO    ] No camera update needed
[2026-06-27 19:52:26,468.468 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:52:26,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:52:26,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:52:26,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:52:28,514.514 INFO    ] ================================================
[2026-06-27 19:52:28,530.530 INFO    ] Launching Daemon at Sat Jun 27 19:52:28 IST 2026
[2026-06-27 19:52:28,541.541 INFO    ] ================================================
[2026-06-27 19:52:28,891.891 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:52:28
[2026-06-27 19:52:29,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:52:29,343.343 INFO    ] Initializing speech engine...
[2026-06-27 19:52:29,356.356 INFO    ] 2026-06-27 19:52:29
[2026-06-27 19:52:29,564.564 INFO    ] 2026-06-27 19:52:29
[2026-06-27 19:52:29,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:52:29,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:52:29,782.782 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:52:29,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:52:29,974.974 INFO    ] time= 27/06/2026 19:52:29
[2026-06-27 19:52:30,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:52:30,013.013 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:52:30,087.087 INFO    ] No existing commands found in stream
[2026-06-27 19:52:35,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:52:35,099.099 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-27 19:52:38,563.563 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:52:38,565.565 INFO    ] Checking for system updates...
[2026-06-27 19:52:38,586.586 INFO    ] 200
[2026-06-27 19:52:38,587.587 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:52:38,618.618 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:52:38,619.619 INFO    ] No update needed
[2026-06-27 19:52:38,621.621 INFO    ] Checking for camera pi updates...
[2026-06-27 19:52:38,641.641 INFO    ] 200
[2026-06-27 19:52:38,642.642 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:52:38,666.666 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:52:38,703.703 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:52:38,704.704 INFO    ] No camera update needed
[2026-06-27 19:52:38,706.706 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:52:38,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:52:38,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:52:38,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:52:40,752.752 INFO    ] ================================================
[2026-06-27 19:52:40,768.768 INFO    ] Launching Daemon at Sat Jun 27 19:52:40 IST 2026
[2026-06-27 19:52:40,780.780 INFO    ] ================================================
[2026-06-27 19:52:41,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:52:41
[2026-06-27 19:52:41,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:52:41,602.602 INFO    ] Initializing speech engine...
[2026-06-27 19:52:41,612.612 INFO    ] 2026-06-27 19:52:41
[2026-06-27 19:52:41,821.821 INFO    ] 2026-06-27 19:52:41
[2026-06-27 19:52:41,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:52:41,974.974 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:52:42,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:52:42,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:52:42,237.237 INFO    ] time= 27/06/2026 19:52:42
[2026-06-27 19:52:42,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:52:42,272.272 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:52:42,345.345 INFO    ] No existing commands found in stream
[2026-06-27 19:52:47,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:52:47,357.357 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-27 19:52:47,799.799 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:52:47,800.800 INFO    ] Checking for system updates...
[2026-06-27 19:52:47,823.823 INFO    ] 200
[2026-06-27 19:52:47,825.825 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:52:47,855.855 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:52:47,856.856 INFO    ] No update needed
[2026-06-27 19:52:47,858.858 INFO    ] Checking for camera pi updates...
[2026-06-27 19:52:47,878.878 INFO    ] 200
[2026-06-27 19:52:47,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:52:47,904.904 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:52:47,955.955 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:52:47,957.957 INFO    ] No camera update needed
[2026-06-27 19:52:47,958.958 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:52:47,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:52:47,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:52:47,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:52:50,005.005 INFO    ] ================================================
[2026-06-27 19:52:50,021.021 INFO    ] Launching Daemon at Sat Jun 27 19:52:50 IST 2026
[2026-06-27 19:52:50,032.032 INFO    ] ================================================
[2026-06-27 19:52:50,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:52:50
[2026-06-27 19:52:50,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:52:50,836.836 INFO    ] Initializing speech engine...
[2026-06-27 19:52:50,841.841 INFO    ] 2026-06-27 19:52:50
[2026-06-27 19:52:51,061.061 INFO    ] 2026-06-27 19:52:51
[2026-06-27 19:52:51,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:52:51,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:52:51,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:52:51,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:52:51,469.469 INFO    ] time= 27/06/2026 19:52:51
[2026-06-27 19:52:51,509.509 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:52:51,515.515 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:52:51,585.585 INFO    ] No existing commands found in stream
[2026-06-27 19:52:56,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:52:56,599.599 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-27 19:52:58,372.372 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:52:58,374.374 INFO    ] Checking for system updates...
[2026-06-27 19:52:58,395.395 INFO    ] 200
[2026-06-27 19:52:58,396.396 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:52:58,426.426 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:52:58,427.427 INFO    ] No update needed
[2026-06-27 19:52:58,429.429 INFO    ] Checking for camera pi updates...
[2026-06-27 19:52:58,448.448 INFO    ] 200
[2026-06-27 19:52:58,450.450 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:52:58,473.473 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:52:58,520.520 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:52:58,521.521 INFO    ] No camera update needed
[2026-06-27 19:52:58,522.522 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:52:58,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:52:58,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:52:58,529.529 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:53:00,567.567 INFO    ] ================================================
[2026-06-27 19:53:00,584.584 INFO    ] Launching Daemon at Sat Jun 27 19:53:00 IST 2026
[2026-06-27 19:53:00,595.595 INFO    ] ================================================
[2026-06-27 19:53:00,958.958 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:53:00
[2026-06-27 19:53:01,277.277 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:53:01,475.475 INFO    ] Initializing speech engine...
[2026-06-27 19:53:01,499.499 INFO    ] 2026-06-27 19:53:01
[2026-06-27 19:53:01,696.696 INFO    ] 2026-06-27 19:53:01
[2026-06-27 19:53:01,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:53:01,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:53:01,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:53:02,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:53:02,070.070 INFO    ] time= 27/06/2026 19:53:02
[2026-06-27 19:53:02,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:53:02,095.095 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:53:02,188.188 INFO    ] No existing commands found in stream
[2026-06-27 19:53:07,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:53:07,235.235 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-27 19:53:11,084.084 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:53:11,086.086 INFO    ] Checking for system updates...
[2026-06-27 19:53:11,107.107 INFO    ] 200
[2026-06-27 19:53:11,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:53:11,139.139 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:53:11,140.140 INFO    ] No update needed
[2026-06-27 19:53:11,142.142 INFO    ] Checking for camera pi updates...
[2026-06-27 19:53:11,163.163 INFO    ] 200
[2026-06-27 19:53:11,165.165 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:53:11,189.189 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:53:11,239.239 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:53:11,241.241 INFO    ] No camera update needed
[2026-06-27 19:53:11,242.242 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:53:11,244.244 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:53:11,247.247 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:53:11,250.250 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:53:13,291.291 INFO    ] ================================================
[2026-06-27 19:53:13,306.306 INFO    ] Launching Daemon at Sat Jun 27 19:53:13 IST 2026
[2026-06-27 19:53:13,317.317 INFO    ] ================================================
[2026-06-27 19:53:13,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:53:13
[2026-06-27 19:53:13,987.987 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:53:14,116.116 INFO    ] Initializing speech engine...
[2026-06-27 19:53:14,121.121 INFO    ] 2026-06-27 19:53:14
[2026-06-27 19:53:14,341.341 INFO    ] 2026-06-27 19:53:14
[2026-06-27 19:53:14,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:53:14,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:53:14,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:53:14,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:53:14,760.760 INFO    ] time= 27/06/2026 19:53:14
[2026-06-27 19:53:14,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:53:14,790.790 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:53:14,857.857 INFO    ] No existing commands found in stream
[2026-06-27 19:53:19,866.866 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:53:19,868.868 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-27 19:53:22,779.779 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:53:22,780.780 INFO    ] Checking for system updates...
[2026-06-27 19:53:22,803.803 INFO    ] 200
[2026-06-27 19:53:22,805.805 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:53:22,839.839 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:53:22,841.841 INFO    ] No update needed
[2026-06-27 19:53:22,842.842 INFO    ] Checking for camera pi updates...
[2026-06-27 19:53:22,864.864 INFO    ] 200
[2026-06-27 19:53:22,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:53:22,889.889 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:53:23,034.034 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:53:23,035.035 INFO    ] No camera update needed
[2026-06-27 19:53:23,037.037 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:53:23,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:53:23,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:53:23,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:53:25,077.077 INFO    ] ================================================
[2026-06-27 19:53:25,092.092 INFO    ] Launching Daemon at Sat Jun 27 19:53:25 IST 2026
[2026-06-27 19:53:25,105.105 INFO    ] ================================================
[2026-06-27 19:53:25,462.462 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:53:25
[2026-06-27 19:53:25,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:53:25,905.905 INFO    ] Initializing speech engine...
[2026-06-27 19:53:25,908.908 INFO    ] 2026-06-27 19:53:25
[2026-06-27 19:53:26,128.128 INFO    ] 2026-06-27 19:53:26
[2026-06-27 19:53:26,158.158 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:53:26,282.282 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:53:26,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:53:26,490.490 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:53:26,554.554 INFO    ] time= 27/06/2026 19:53:26
[2026-06-27 19:53:26,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:53:26,589.589 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:53:26,657.657 INFO    ] No existing commands found in stream
[2026-06-27 19:53:31,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:53:31,667.667 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-27 19:53:32,914.914 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:53:32,915.915 INFO    ] Checking for system updates...
[2026-06-27 19:53:32,936.936 INFO    ] 200
[2026-06-27 19:53:32,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:53:32,970.970 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:53:32,971.971 INFO    ] No update needed
[2026-06-27 19:53:32,972.972 INFO    ] Checking for camera pi updates...
[2026-06-27 19:53:32,992.992 INFO    ] 200
[2026-06-27 19:53:32,993.993 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:53:33,017.017 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:53:33,059.059 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:53:33,060.060 INFO    ] No camera update needed
[2026-06-27 19:53:33,061.061 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:53:33,063.063 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:53:33,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:53:33,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:53:35,110.110 INFO    ] ================================================
[2026-06-27 19:53:35,127.127 INFO    ] Launching Daemon at Sat Jun 27 19:53:35 IST 2026
[2026-06-27 19:53:35,138.138 INFO    ] ================================================
[2026-06-27 19:53:35,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:53:35
[2026-06-27 19:53:35,844.844 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:53:35,996.996 INFO    ] Initializing speech engine...
[2026-06-27 19:53:36,001.001 INFO    ] 2026-06-27 19:53:35
[2026-06-27 19:53:36,210.210 INFO    ] 2026-06-27 19:53:36
[2026-06-27 19:53:36,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:53:36,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:53:36,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:53:36,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:53:36,563.563 INFO    ] time= 27/06/2026 19:53:36
[2026-06-27 19:53:36,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:53:36,644.644 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:53:36,780.780 INFO    ] No existing commands found in stream
[2026-06-27 19:53:41,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:53:41,787.787 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-27 19:53:43,928.928 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:53:43,931.931 INFO    ] Checking for system updates...
[2026-06-27 19:53:43,968.968 INFO    ] 200
[2026-06-27 19:53:43,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:53:44,025.025 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:53:44,028.028 INFO    ] No update needed
[2026-06-27 19:53:44,031.031 INFO    ] Checking for camera pi updates...
[2026-06-27 19:53:44,057.057 INFO    ] 200
[2026-06-27 19:53:44,058.058 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:53:44,082.082 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:53:44,132.132 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:53:44,134.134 INFO    ] No camera update needed
[2026-06-27 19:53:44,135.135 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:53:44,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:53:44,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:53:44,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:53:46,182.182 INFO    ] ================================================
[2026-06-27 19:53:46,197.197 INFO    ] Launching Daemon at Sat Jun 27 19:53:46 IST 2026
[2026-06-27 19:53:46,208.208 INFO    ] ================================================
[2026-06-27 19:53:46,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:53:46
[2026-06-27 19:53:46,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:53:46,986.986 INFO    ] Initializing speech engine...
[2026-06-27 19:53:46,995.995 INFO    ] 2026-06-27 19:53:46
[2026-06-27 19:53:47,212.212 INFO    ] 2026-06-27 19:53:47
[2026-06-27 19:53:47,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:53:47,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:53:47,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:53:47,588.588 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:53:47,634.634 INFO    ] time= 27/06/2026 19:53:47
[2026-06-27 19:53:47,658.658 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:53:47,665.665 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:53:47,732.732 INFO    ] No existing commands found in stream
[2026-06-27 19:53:52,741.741 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:53:52,744.744 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-27 19:53:53,579.579 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:53:53,581.581 INFO    ] Checking for system updates...
[2026-06-27 19:53:53,603.603 INFO    ] 200
[2026-06-27 19:53:53,604.604 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:53:53,640.640 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:53:53,641.641 INFO    ] No update needed
[2026-06-27 19:53:53,643.643 INFO    ] Checking for camera pi updates...
[2026-06-27 19:53:53,666.666 INFO    ] 200
[2026-06-27 19:53:53,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:53:53,693.693 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:53:53,832.832 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:53:53,834.834 INFO    ] No camera update needed
[2026-06-27 19:53:53,835.835 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:53:53,837.837 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:53:53,840.840 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:53:53,843.843 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:53:55,883.883 INFO    ] ================================================
[2026-06-27 19:53:55,898.898 INFO    ] Launching Daemon at Sat Jun 27 19:53:55 IST 2026
[2026-06-27 19:53:55,908.908 INFO    ] ================================================
[2026-06-27 19:53:56,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:53:56
[2026-06-27 19:53:56,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:53:56,699.699 INFO    ] Initializing speech engine...
[2026-06-27 19:53:56,704.704 INFO    ] 2026-06-27 19:53:56
[2026-06-27 19:53:56,935.935 INFO    ] 2026-06-27 19:53:56
[2026-06-27 19:53:56,966.966 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:53:57,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:53:57,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:53:57,361.361 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:53:57,396.396 INFO    ] time= 27/06/2026 19:53:57
[2026-06-27 19:53:57,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:53:57,426.426 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:53:57,524.524 INFO    ] No existing commands found in stream
[2026-06-27 19:54:02,532.532 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:54:02,534.534 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-27 19:54:04,314.314 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 19:54:04,315.315 INFO    ] Checking for system updates...
[2026-06-27 19:54:04,337.337 INFO    ] 200
[2026-06-27 19:54:04,339.339 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:54:04,371.371 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:54:04,372.372 INFO    ] No update needed
[2026-06-27 19:54:04,374.374 INFO    ] Checking for camera pi updates...
[2026-06-27 19:54:04,393.393 INFO    ] 200
[2026-06-27 19:54:04,394.394 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:54:04,418.418 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:54:04,467.467 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:54:04,468.468 INFO    ] No camera update needed
[2026-06-27 19:54:04,470.470 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:54:04,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:54:04,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:54:04,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:54:06,506.506 INFO    ] ================================================
[2026-06-27 19:54:06,515.515 INFO    ] Launching Daemon at Sat Jun 27 19:54:06 IST 2026
[2026-06-27 19:54:06,521.521 INFO    ] ================================================
[2026-06-27 19:54:06,823.823 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:54:06
[2026-06-27 19:54:07,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:54:07,266.266 INFO    ] Initializing speech engine...
[2026-06-27 19:54:07,274.274 INFO    ] 2026-06-27 19:54:07
[2026-06-27 19:54:07,488.488 INFO    ] 2026-06-27 19:54:07
[2026-06-27 19:54:07,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:54:07,705.705 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:54:07,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:54:07,844.844 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:54:07,912.912 INFO    ] time= 27/06/2026 19:54:07
[2026-06-27 19:54:07,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:54:07,943.943 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:54:08,011.011 INFO    ] No existing commands found in stream
[2026-06-27 19:54:13,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:54:13,022.022 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-27 19:54:14,814.814 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 19:54:14,815.815 INFO    ] Checking for system updates...
[2026-06-27 19:54:14,836.836 INFO    ] 200
[2026-06-27 19:54:14,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:54:14,868.868 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:54:14,869.869 INFO    ] No update needed
[2026-06-27 19:54:14,870.870 INFO    ] Checking for camera pi updates...
[2026-06-27 19:54:14,890.890 INFO    ] 200
[2026-06-27 19:54:14,891.891 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:54:14,914.914 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:54:14,958.958 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:54:14,959.959 INFO    ] No camera update needed
[2026-06-27 19:54:14,961.961 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:54:14,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:54:14,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:54:14,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:54:17,007.007 INFO    ] ================================================
[2026-06-27 19:54:17,022.022 INFO    ] Launching Daemon at Sat Jun 27 19:54:17 IST 2026
[2026-06-27 19:54:17,033.033 INFO    ] ================================================
[2026-06-27 19:54:17,368.368 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:54:17
[2026-06-27 19:54:17,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:54:17,827.827 INFO    ] Initializing speech engine...
[2026-06-27 19:54:17,833.833 INFO    ] 2026-06-27 19:54:17
[2026-06-27 19:54:18,046.046 INFO    ] 2026-06-27 19:54:18
[2026-06-27 19:54:18,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:54:18,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:54:18,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:54:18,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:54:18,471.471 INFO    ] time= 27/06/2026 19:54:18
[2026-06-27 19:54:18,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:54:18,529.529 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:54:18,605.605 INFO    ] No existing commands found in stream
[2026-06-27 19:54:23,614.614 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:54:23,615.615 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-27 19:54:27,473.473 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 19:54:27,475.475 INFO    ] Checking for system updates...
[2026-06-27 19:54:27,497.497 INFO    ] 200
[2026-06-27 19:54:27,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:54:27,531.531 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:54:27,532.532 INFO    ] No update needed
[2026-06-27 19:54:27,534.534 INFO    ] Checking for camera pi updates...
[2026-06-27 19:54:27,554.554 INFO    ] 200
[2026-06-27 19:54:27,555.555 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:54:27,578.578 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:54:27,621.621 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:54:27,623.623 INFO    ] No camera update needed
[2026-06-27 19:54:27,624.624 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:54:27,625.625 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:54:27,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:54:27,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:54:29,656.656 INFO    ] ================================================
[2026-06-27 19:54:29,664.664 INFO    ] Launching Daemon at Sat Jun 27 19:54:29 IST 2026
[2026-06-27 19:54:29,670.670 INFO    ] ================================================
[2026-06-27 19:54:30,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:54:30
[2026-06-27 19:54:30,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:54:30,471.471 INFO    ] Initializing speech engine...
[2026-06-27 19:54:30,481.481 INFO    ] 2026-06-27 19:54:30
[2026-06-27 19:54:30,686.686 INFO    ] 2026-06-27 19:54:30
[2026-06-27 19:54:30,715.715 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:54:30,837.837 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:54:30,901.901 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:54:31,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:54:31,098.098 INFO    ] time= 27/06/2026 19:54:31
[2026-06-27 19:54:31,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:54:31,137.137 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:54:31,204.204 INFO    ] No existing commands found in stream
[2026-06-27 19:54:36,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:54:36,216.216 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-27 19:54:36,975.975 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:54:36,976.976 INFO    ] Checking for system updates...
[2026-06-27 19:54:36,997.997 INFO    ] 200
[2026-06-27 19:54:36,998.998 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:54:37,030.030 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:54:37,031.031 INFO    ] No update needed
[2026-06-27 19:54:37,033.033 INFO    ] Checking for camera pi updates...
[2026-06-27 19:54:37,054.054 INFO    ] 200
[2026-06-27 19:54:37,055.055 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:54:37,080.080 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:54:37,121.121 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:54:37,122.122 INFO    ] No camera update needed
[2026-06-27 19:54:37,124.124 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:54:37,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:54:37,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:54:37,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:54:39,170.170 INFO    ] ================================================
[2026-06-27 19:54:39,185.185 INFO    ] Launching Daemon at Sat Jun 27 19:54:39 IST 2026
[2026-06-27 19:54:39,197.197 INFO    ] ================================================
[2026-06-27 19:54:39,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:54:39
[2026-06-27 19:54:39,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:54:40,017.017 INFO    ] Initializing speech engine...
[2026-06-27 19:54:40,025.025 INFO    ] 2026-06-27 19:54:40
[2026-06-27 19:54:40,236.236 INFO    ] 2026-06-27 19:54:40
[2026-06-27 19:54:40,266.266 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:54:40,504.504 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:54:40,530.530 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:54:40,747.747 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:54:40,773.773 INFO    ] time= 27/06/2026 19:54:40
[2026-06-27 19:54:40,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:54:40,800.800 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:54:40,877.877 INFO    ] No existing commands found in stream
[2026-06-27 19:54:45,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:54:45,889.889 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-27 19:54:49,100.100 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:54:49,101.101 INFO    ] Checking for system updates...
[2026-06-27 19:54:49,123.123 INFO    ] 200
[2026-06-27 19:54:49,124.124 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:54:49,155.155 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:54:49,156.156 INFO    ] No update needed
[2026-06-27 19:54:49,157.157 INFO    ] Checking for camera pi updates...
[2026-06-27 19:54:49,179.179 INFO    ] 200
[2026-06-27 19:54:49,181.181 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:54:49,206.206 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:54:49,252.252 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:54:49,254.254 INFO    ] No camera update needed
[2026-06-27 19:54:49,255.255 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:54:49,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:54:49,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:54:49,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:54:51,300.300 INFO    ] ================================================
[2026-06-27 19:54:51,315.315 INFO    ] Launching Daemon at Sat Jun 27 19:54:51 IST 2026
[2026-06-27 19:54:51,325.325 INFO    ] ================================================
[2026-06-27 19:54:51,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:54:51
[2026-06-27 19:54:51,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:54:52,137.137 INFO    ] Initializing speech engine...
[2026-06-27 19:54:52,143.143 INFO    ] 2026-06-27 19:54:52
[2026-06-27 19:54:52,348.348 INFO    ] 2026-06-27 19:54:52
[2026-06-27 19:54:52,376.376 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:54:52,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:54:52,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:54:52,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:54:52,765.765 INFO    ] time= 27/06/2026 19:54:52
[2026-06-27 19:54:52,787.787 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:54:52,793.793 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:54:52,859.859 INFO    ] No existing commands found in stream
[2026-06-27 19:54:57,869.869 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:54:57,872.872 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-27 19:55:00,759.759 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:55:00,761.761 INFO    ] Checking for system updates...
[2026-06-27 19:55:00,783.783 INFO    ] 200
[2026-06-27 19:55:00,784.784 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:55:00,815.815 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:55:00,817.817 INFO    ] No update needed
[2026-06-27 19:55:00,818.818 INFO    ] Checking for camera pi updates...
[2026-06-27 19:55:00,841.841 INFO    ] 200
[2026-06-27 19:55:00,843.843 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:55:00,868.868 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:55:00,925.925 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:55:00,926.926 INFO    ] No camera update needed
[2026-06-27 19:55:00,927.927 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:55:00,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:55:00,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:55:00,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:55:02,985.985 INFO    ] ================================================
[2026-06-27 19:55:02,994.994 INFO    ] Launching Daemon at Sat Jun 27 19:55:02 IST 2026
[2026-06-27 19:55:03,000.000 INFO    ] ================================================
[2026-06-27 19:55:03,302.302 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:55:03
[2026-06-27 19:55:03,615.615 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:55:03,762.762 INFO    ] Initializing speech engine...
[2026-06-27 19:55:03,767.767 INFO    ] 2026-06-27 19:55:03
[2026-06-27 19:55:03,973.973 INFO    ] 2026-06-27 19:55:03
[2026-06-27 19:55:04,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:55:04,187.187 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:55:04,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:55:04,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:55:04,410.410 INFO    ] time= 27/06/2026 19:55:04
[2026-06-27 19:55:04,425.425 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:55:04,427.427 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:55:04,522.522 INFO    ] No existing commands found in stream
[2026-06-27 19:55:09,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:55:09,534.534 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-27 19:55:10,057.057 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 19:55:10,059.059 INFO    ] Checking for system updates...
[2026-06-27 19:55:10,081.081 INFO    ] 200
[2026-06-27 19:55:10,082.082 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:55:10,115.115 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:55:10,117.117 INFO    ] No update needed
[2026-06-27 19:55:10,118.118 INFO    ] Checking for camera pi updates...
[2026-06-27 19:55:10,138.138 INFO    ] 200
[2026-06-27 19:55:10,140.140 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:55:10,163.163 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:55:10,204.204 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:55:10,206.206 INFO    ] No camera update needed
[2026-06-27 19:55:10,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:55:10,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:55:10,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:55:10,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:55:12,255.255 INFO    ] ================================================
[2026-06-27 19:55:12,281.281 INFO    ] Launching Daemon at Sat Jun 27 19:55:12 IST 2026
[2026-06-27 19:55:12,292.292 INFO    ] ================================================
[2026-06-27 19:55:12,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:55:12
[2026-06-27 19:55:13,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:55:13,158.158 INFO    ] Initializing speech engine...
[2026-06-27 19:55:13,167.167 INFO    ] 2026-06-27 19:55:13
[2026-06-27 19:55:13,376.376 INFO    ] 2026-06-27 19:55:13
[2026-06-27 19:55:13,404.404 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:55:13,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:55:13,601.601 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:55:13,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:55:13,800.800 INFO    ] time= 27/06/2026 19:55:13
[2026-06-27 19:55:13,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:55:13,829.829 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:55:13,946.946 INFO    ] No existing commands found in stream
[2026-06-27 19:55:18,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:55:18,960.960 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-27 19:55:20,249.249 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 19:55:20,250.250 INFO    ] Checking for system updates...
[2026-06-27 19:55:20,272.272 INFO    ] 200
[2026-06-27 19:55:20,274.274 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:55:20,306.306 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:55:20,307.307 INFO    ] No update needed
[2026-06-27 19:55:20,309.309 INFO    ] Checking for camera pi updates...
[2026-06-27 19:55:20,330.330 INFO    ] 200
[2026-06-27 19:55:20,331.331 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:55:20,359.359 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:55:20,412.412 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:55:20,414.414 INFO    ] No camera update needed
[2026-06-27 19:55:20,415.415 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:55:20,417.417 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:55:20,420.420 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:55:20,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:55:22,463.463 INFO    ] ================================================
[2026-06-27 19:55:22,478.478 INFO    ] Launching Daemon at Sat Jun 27 19:55:22 IST 2026
[2026-06-27 19:55:22,489.489 INFO    ] ================================================
[2026-06-27 19:55:22,839.839 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:55:22
[2026-06-27 19:55:23,154.154 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:55:23,292.292 INFO    ] Initializing speech engine...
[2026-06-27 19:55:23,303.303 INFO    ] 2026-06-27 19:55:23
[2026-06-27 19:55:23,510.510 INFO    ] 2026-06-27 19:55:23
[2026-06-27 19:55:23,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:55:23,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:55:23,728.728 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:55:23,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:55:23,934.934 INFO    ] time= 27/06/2026 19:55:23
[2026-06-27 19:55:23,958.958 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:55:23,964.964 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:55:24,057.057 INFO    ] No existing commands found in stream
[2026-06-27 19:55:29,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:55:29,069.069 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-27 19:55:32,940.940 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:55:32,943.943 INFO    ] Checking for system updates...
[2026-06-27 19:55:32,981.981 INFO    ] 200
[2026-06-27 19:55:32,985.985 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:55:33,039.039 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:55:33,041.041 INFO    ] No update needed
[2026-06-27 19:55:33,044.044 INFO    ] Checking for camera pi updates...
[2026-06-27 19:55:33,082.082 INFO    ] 200
[2026-06-27 19:55:33,084.084 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:55:33,128.128 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:55:33,155.155 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:55:33,157.157 INFO    ] No camera update needed
[2026-06-27 19:55:33,158.158 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:55:33,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:55:33,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:55:33,166.166 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:55:35,205.205 INFO    ] ================================================
[2026-06-27 19:55:35,220.220 INFO    ] Launching Daemon at Sat Jun 27 19:55:35 IST 2026
[2026-06-27 19:55:35,231.231 INFO    ] ================================================
[2026-06-27 19:55:35,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:55:35
[2026-06-27 19:55:35,922.922 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:55:36,080.080 INFO    ] Initializing speech engine...
[2026-06-27 19:55:36,086.086 INFO    ] 2026-06-27 19:55:36
[2026-06-27 19:55:36,289.289 INFO    ] 2026-06-27 19:55:36
[2026-06-27 19:55:36,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:55:36,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:55:36,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:55:36,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:55:36,717.717 INFO    ] time= 27/06/2026 19:55:36
[2026-06-27 19:55:36,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:55:36,746.746 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:55:36,813.813 INFO    ] No existing commands found in stream
[2026-06-27 19:55:41,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:55:41,839.839 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-27 19:55:44,770.770 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:55:44,772.772 INFO    ] Checking for system updates...
[2026-06-27 19:55:44,793.793 INFO    ] 200
[2026-06-27 19:55:44,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:55:44,827.827 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:55:44,829.829 INFO    ] No update needed
[2026-06-27 19:55:44,830.830 INFO    ] Checking for camera pi updates...
[2026-06-27 19:55:44,852.852 INFO    ] 200
[2026-06-27 19:55:44,854.854 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:55:44,878.878 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:55:44,920.920 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:55:44,922.922 INFO    ] No camera update needed
[2026-06-27 19:55:44,923.923 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:55:44,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:55:44,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:55:44,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:55:46,969.969 INFO    ] ================================================
[2026-06-27 19:55:46,984.984 INFO    ] Launching Daemon at Sat Jun 27 19:55:46 IST 2026
[2026-06-27 19:55:47,995.995 INFO    ] ================================================
[2026-06-27 19:55:47,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:55:47
[2026-06-27 19:55:47,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:55:47,782.782 INFO    ] Initializing speech engine...
[2026-06-27 19:55:47,788.788 INFO    ] 2026-06-27 19:55:47
[2026-06-27 19:55:47,991.991 INFO    ] 2026-06-27 19:55:47
[2026-06-27 19:55:48,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:55:48,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:55:48,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:55:48,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:55:48,407.407 INFO    ] time= 27/06/2026 19:55:48
[2026-06-27 19:55:48,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:55:48,439.439 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:55:48,507.507 INFO    ] No existing commands found in stream
[2026-06-27 19:55:53,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:55:53,524.524 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-27 19:55:57,850.850 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 19:55:57,852.852 INFO    ] Checking for system updates...
[2026-06-27 19:55:57,874.874 INFO    ] 200
[2026-06-27 19:55:57,875.875 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:55:57,905.905 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:55:57,907.907 INFO    ] No update needed
[2026-06-27 19:55:57,908.908 INFO    ] Checking for camera pi updates...
[2026-06-27 19:55:57,927.927 INFO    ] 200
[2026-06-27 19:55:57,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:55:57,951.951 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:55:57,993.993 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:55:57,994.994 INFO    ] No camera update needed
[2026-06-27 19:55:57,996.996 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:55:57,997.997 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:55:58,000.000 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:55:58,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:56:00,040.040 INFO    ] ================================================
[2026-06-27 19:56:00,055.055 INFO    ] Launching Daemon at Sat Jun 27 19:56:00 IST 2026
[2026-06-27 19:56:00,066.066 INFO    ] ================================================
[2026-06-27 19:56:00,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:56:00
[2026-06-27 19:56:00,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:56:00,865.865 INFO    ] Initializing speech engine...
[2026-06-27 19:56:00,875.875 INFO    ] 2026-06-27 19:56:00
[2026-06-27 19:56:01,076.076 INFO    ] 2026-06-27 19:56:01
[2026-06-27 19:56:01,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:56:01,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:56:01,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:56:01,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:56:01,660.660 INFO    ] time= 27/06/2026 19:56:01
[2026-06-27 19:56:01,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:56:01,693.693 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:56:01,761.761 INFO    ] No existing commands found in stream
[2026-06-27 19:56:06,773.773 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:56:06,776.776 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-27 19:56:07,869.869 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 19:56:07,870.870 INFO    ] Checking for system updates...
[2026-06-27 19:56:07,892.892 INFO    ] 200
[2026-06-27 19:56:07,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:56:07,927.927 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:56:07,928.928 INFO    ] No update needed
[2026-06-27 19:56:07,929.929 INFO    ] Checking for camera pi updates...
[2026-06-27 19:56:07,949.949 INFO    ] 200
[2026-06-27 19:56:07,951.951 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:56:07,975.975 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:56:08,029.029 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:56:08,030.030 INFO    ] No camera update needed
[2026-06-27 19:56:08,031.031 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:56:08,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:56:08,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:56:08,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:56:10,080.080 INFO    ] ================================================
[2026-06-27 19:56:10,095.095 INFO    ] Launching Daemon at Sat Jun 27 19:56:10 IST 2026
[2026-06-27 19:56:10,105.105 INFO    ] ================================================
[2026-06-27 19:56:10,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:56:10
[2026-06-27 19:56:10,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:56:10,902.902 INFO    ] Initializing speech engine...
[2026-06-27 19:56:10,910.910 INFO    ] 2026-06-27 19:56:10
[2026-06-27 19:56:11,118.118 INFO    ] 2026-06-27 19:56:11
[2026-06-27 19:56:11,147.147 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:56:11,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:56:11,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:56:11,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:56:11,560.560 INFO    ] time= 27/06/2026 19:56:11
[2026-06-27 19:56:11,566.566 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:56:11,567.567 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:56:11,634.634 INFO    ] No existing commands found in stream
[2026-06-27 19:56:16,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:56:16,646.646 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-27 19:56:20,807.807 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:56:20,809.809 INFO    ] Checking for system updates...
[2026-06-27 19:56:20,830.830 INFO    ] 200
[2026-06-27 19:56:20,831.831 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:56:20,864.864 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:56:20,866.866 INFO    ] No update needed
[2026-06-27 19:56:20,867.867 INFO    ] Checking for camera pi updates...
[2026-06-27 19:56:20,887.887 INFO    ] 200
[2026-06-27 19:56:20,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:56:20,912.912 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:56:20,938.938 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:56:20,940.940 INFO    ] No camera update needed
[2026-06-27 19:56:20,941.941 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:56:20,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:56:20,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:56:20,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:56:22,987.987 INFO    ] ================================================
[2026-06-27 19:56:23,002.002 INFO    ] Launching Daemon at Sat Jun 27 19:56:22 IST 2026
[2026-06-27 19:56:23,013.013 INFO    ] ================================================
[2026-06-27 19:56:23,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:56:23
[2026-06-27 19:56:23,666.666 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:56:23,804.804 INFO    ] Initializing speech engine...
[2026-06-27 19:56:23,812.812 INFO    ] 2026-06-27 19:56:23
[2026-06-27 19:56:24,019.019 INFO    ] 2026-06-27 19:56:23
[2026-06-27 19:56:24,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:56:24,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:56:24,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:56:24,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:56:24,439.439 INFO    ] time= 27/06/2026 19:56:24
[2026-06-27 19:56:24,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:56:24,468.468 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:56:24,559.559 INFO    ] No existing commands found in stream
[2026-06-27 19:56:29,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:56:29,571.571 INFO    ] Waiting 1.89 seconds before fallback handling...
[2026-06-27 19:56:31,831.831 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:56:31,833.833 INFO    ] Checking for system updates...
[2026-06-27 19:56:31,855.855 INFO    ] 200
[2026-06-27 19:56:31,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:56:31,887.887 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:56:31,888.888 INFO    ] No update needed
[2026-06-27 19:56:31,890.890 INFO    ] Checking for camera pi updates...
[2026-06-27 19:56:31,909.909 INFO    ] 200
[2026-06-27 19:56:31,911.911 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:56:31,935.935 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:56:31,973.973 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:56:31,974.974 INFO    ] No camera update needed
[2026-06-27 19:56:31,975.975 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:56:31,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:56:31,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:56:31,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:56:34,021.021 INFO    ] ================================================
[2026-06-27 19:56:34,036.036 INFO    ] Launching Daemon at Sat Jun 27 19:56:34 IST 2026
[2026-06-27 19:56:34,047.047 INFO    ] ================================================
[2026-06-27 19:56:34,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:56:34
[2026-06-27 19:56:34,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:56:34,841.841 INFO    ] Initializing speech engine...
[2026-06-27 19:56:34,847.847 INFO    ] 2026-06-27 19:56:34
[2026-06-27 19:56:35,049.049 INFO    ] 2026-06-27 19:56:35
[2026-06-27 19:56:35,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:56:35,263.263 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:56:35,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:56:35,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:56:35,470.470 INFO    ] time= 27/06/2026 19:56:35
[2026-06-27 19:56:35,492.492 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:56:35,498.498 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:56:35,563.563 INFO    ] No existing commands found in stream
[2026-06-27 19:56:40,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:56:40,576.576 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-27 19:56:43,819.819 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:56:43,821.821 INFO    ] Checking for system updates...
[2026-06-27 19:56:43,841.841 INFO    ] 200
[2026-06-27 19:56:43,843.843 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:56:43,873.873 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:56:43,875.875 INFO    ] No update needed
[2026-06-27 19:56:43,877.877 INFO    ] Checking for camera pi updates...
[2026-06-27 19:56:43,898.898 INFO    ] 200
[2026-06-27 19:56:43,899.899 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:56:43,922.922 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:56:43,969.969 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:56:43,970.970 INFO    ] No camera update needed
[2026-06-27 19:56:43,971.971 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:56:43,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:56:43,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:56:43,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:56:46,019.019 INFO    ] ================================================
[2026-06-27 19:56:46,035.035 INFO    ] Launching Daemon at Sat Jun 27 19:56:46 IST 2026
[2026-06-27 19:56:46,046.046 INFO    ] ================================================
[2026-06-27 19:56:46,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:56:46
[2026-06-27 19:56:46,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:56:46,843.843 INFO    ] Initializing speech engine...
[2026-06-27 19:56:46,849.849 INFO    ] 2026-06-27 19:56:46
[2026-06-27 19:56:47,052.052 INFO    ] 2026-06-27 19:56:47
[2026-06-27 19:56:47,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:56:47,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:56:47,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:56:47,424.424 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:56:47,482.482 INFO    ] time= 27/06/2026 19:56:47
[2026-06-27 19:56:47,506.506 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:56:47,539.539 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:56:47,616.616 INFO    ] No existing commands found in stream
[2026-06-27 19:56:52,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:56:52,628.628 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-27 19:56:56,435.435 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:56:56,436.436 INFO    ] Checking for system updates...
[2026-06-27 19:56:56,459.459 INFO    ] 200
[2026-06-27 19:56:56,460.460 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:56:56,495.495 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:56:56,497.497 INFO    ] No update needed
[2026-06-27 19:56:56,498.498 INFO    ] Checking for camera pi updates...
[2026-06-27 19:56:56,520.520 INFO    ] 200
[2026-06-27 19:56:56,521.521 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:56:56,545.545 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:56:56,589.589 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:56:56,590.590 INFO    ] No camera update needed
[2026-06-27 19:56:56,592.592 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:56:56,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:56:56,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:56:56,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:56:58,640.640 INFO    ] ================================================
[2026-06-27 19:56:58,655.655 INFO    ] Launching Daemon at Sat Jun 27 19:56:58 IST 2026
[2026-06-27 19:56:58,666.666 INFO    ] ================================================
[2026-06-27 19:56:59,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:56:59
[2026-06-27 19:56:59,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:56:59,478.478 INFO    ] Initializing speech engine...
[2026-06-27 19:56:59,491.491 INFO    ] 2026-06-27 19:56:59
[2026-06-27 19:56:59,699.699 INFO    ] 2026-06-27 19:56:59
[2026-06-27 19:56:59,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:56:59,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:56:59,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:57:00,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:57:00,123.123 INFO    ] time= 27/06/2026 19:57:00
[2026-06-27 19:57:00,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:57:00,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:57:00,216.216 INFO    ] No existing commands found in stream
[2026-06-27 19:57:05,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:57:05,229.229 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-27 19:57:07,565.565 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 19:57:07,566.566 INFO    ] Checking for system updates...
[2026-06-27 19:57:07,587.587 INFO    ] 200
[2026-06-27 19:57:07,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:57:07,622.622 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:57:07,623.623 INFO    ] No update needed
[2026-06-27 19:57:07,625.625 INFO    ] Checking for camera pi updates...
[2026-06-27 19:57:07,644.644 INFO    ] 200
[2026-06-27 19:57:07,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:57:07,675.675 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:57:07,719.719 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:57:07,720.720 INFO    ] No camera update needed
[2026-06-27 19:57:07,721.721 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:57:07,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:57:07,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:57:07,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:57:09,767.767 INFO    ] ================================================
[2026-06-27 19:57:09,782.782 INFO    ] Launching Daemon at Sat Jun 27 19:57:09 IST 2026
[2026-06-27 19:57:09,793.793 INFO    ] ================================================
[2026-06-27 19:57:10,134.134 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:57:10
[2026-06-27 19:57:10,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:57:10,596.596 INFO    ] Initializing speech engine...
[2026-06-27 19:57:10,601.601 INFO    ] 2026-06-27 19:57:10
[2026-06-27 19:57:10,807.807 INFO    ] 2026-06-27 19:57:10
[2026-06-27 19:57:10,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:57:11,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:57:11,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:57:11,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:57:11,247.247 INFO    ] time= 27/06/2026 19:57:11
[2026-06-27 19:57:11,252.252 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:57:11,254.254 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:57:11,320.320 INFO    ] No existing commands found in stream
[2026-06-27 19:57:16,326.326 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:57:16,329.329 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-27 19:57:17,557.557 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 19:57:17,559.559 INFO    ] Checking for system updates...
[2026-06-27 19:57:17,580.580 INFO    ] 200
[2026-06-27 19:57:17,581.581 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:57:17,614.614 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:57:17,615.615 INFO    ] No update needed
[2026-06-27 19:57:17,616.616 INFO    ] Checking for camera pi updates...
[2026-06-27 19:57:17,637.637 INFO    ] 200
[2026-06-27 19:57:17,639.639 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:57:17,663.663 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:57:17,706.706 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:57:17,707.707 INFO    ] No camera update needed
[2026-06-27 19:57:17,708.708 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:57:17,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:57:17,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:57:17,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:57:19,755.755 INFO    ] ================================================
[2026-06-27 19:57:19,770.770 INFO    ] Launching Daemon at Sat Jun 27 19:57:19 IST 2026
[2026-06-27 19:57:19,781.781 INFO    ] ================================================
[2026-06-27 19:57:20,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:57:20
[2026-06-27 19:57:20,476.476 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:57:20,625.625 INFO    ] Initializing speech engine...
[2026-06-27 19:57:20,630.630 INFO    ] 2026-06-27 19:57:20
[2026-06-27 19:57:20,837.837 INFO    ] 2026-06-27 19:57:20
[2026-06-27 19:57:20,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:57:21,052.052 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:57:21,060.060 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:57:21,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:57:21,259.259 INFO    ] time= 27/06/2026 19:57:21
[2026-06-27 19:57:21,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:57:21,288.288 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:57:21,355.355 INFO    ] No existing commands found in stream
[2026-06-27 19:57:26,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:57:26,378.378 INFO    ] Waiting 1.42 seconds before fallback handling...
[2026-06-27 19:57:28,215.215 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:57:28,217.217 INFO    ] Checking for system updates...
[2026-06-27 19:57:28,238.238 INFO    ] 200
[2026-06-27 19:57:28,239.239 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:57:28,269.269 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:57:28,271.271 INFO    ] No update needed
[2026-06-27 19:57:28,272.272 INFO    ] Checking for camera pi updates...
[2026-06-27 19:57:28,292.292 INFO    ] 200
[2026-06-27 19:57:28,294.294 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:57:28,318.318 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:57:28,373.373 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:57:28,374.374 INFO    ] No camera update needed
[2026-06-27 19:57:28,376.376 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:57:28,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:57:28,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:57:28,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:57:30,422.422 INFO    ] ================================================
[2026-06-27 19:57:30,438.438 INFO    ] Launching Daemon at Sat Jun 27 19:57:30 IST 2026
[2026-06-27 19:57:30,448.448 INFO    ] ================================================
[2026-06-27 19:57:30,814.814 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:57:30
[2026-06-27 19:57:31,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:57:31,258.258 INFO    ] Initializing speech engine...
[2026-06-27 19:57:31,272.272 INFO    ] 2026-06-27 19:57:31
[2026-06-27 19:57:31,468.468 INFO    ] 2026-06-27 19:57:31
[2026-06-27 19:57:31,508.508 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:57:31,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:57:31,705.705 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:57:31,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:57:31,964.964 INFO    ] time= 27/06/2026 19:57:31
[2026-06-27 19:57:31,997.997 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:57:32,018.018 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:57:32,114.114 INFO    ] No existing commands found in stream
[2026-06-27 19:57:37,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:57:37,132.132 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-27 19:57:37,859.859 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 19:57:37,861.861 INFO    ] Checking for system updates...
[2026-06-27 19:57:37,883.883 INFO    ] 200
[2026-06-27 19:57:37,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:57:37,916.916 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:57:37,917.917 INFO    ] No update needed
[2026-06-27 19:57:37,919.919 INFO    ] Checking for camera pi updates...
[2026-06-27 19:57:37,939.939 INFO    ] 200
[2026-06-27 19:57:37,940.940 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:57:37,965.965 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:57:38,102.102 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:57:38,104.104 INFO    ] No camera update needed
[2026-06-27 19:57:38,105.105 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:57:38,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:57:38,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:57:38,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:57:40,152.152 INFO    ] ================================================
[2026-06-27 19:57:40,167.167 INFO    ] Launching Daemon at Sat Jun 27 19:57:40 IST 2026
[2026-06-27 19:57:40,178.178 INFO    ] ================================================
[2026-06-27 19:57:40,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:57:40
[2026-06-27 19:57:40,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:57:40,995.995 INFO    ] Initializing speech engine...
[2026-06-27 19:57:41,000.000 INFO    ] 2026-06-27 19:57:40
[2026-06-27 19:57:41,206.206 INFO    ] 2026-06-27 19:57:41
[2026-06-27 19:57:41,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:57:41,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:57:41,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:57:41,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:57:41,639.639 INFO    ] time= 27/06/2026 19:57:41
[2026-06-27 19:57:41,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:57:41,662.662 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:57:41,754.754 INFO    ] No existing commands found in stream
[2026-06-27 19:57:46,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:57:46,766.766 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-27 19:57:47,895.895 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 19:57:47,896.896 INFO    ] Checking for system updates...
[2026-06-27 19:57:47,918.918 INFO    ] 200
[2026-06-27 19:57:47,919.919 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:57:47,951.951 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:57:47,953.953 INFO    ] No update needed
[2026-06-27 19:57:47,954.954 INFO    ] Checking for camera pi updates...
[2026-06-27 19:57:47,974.974 INFO    ] 200
[2026-06-27 19:57:47,976.976 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:57:47,999.999 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:57:48,045.045 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:57:48,047.047 INFO    ] No camera update needed
[2026-06-27 19:57:48,048.048 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:57:48,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:57:48,052.052 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:57:48,055.055 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:57:50,098.098 INFO    ] ================================================
[2026-06-27 19:57:50,115.115 INFO    ] Launching Daemon at Sat Jun 27 19:57:50 IST 2026
[2026-06-27 19:57:50,126.126 INFO    ] ================================================
[2026-06-27 19:57:50,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:57:50
[2026-06-27 19:57:50,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:57:50,939.939 INFO    ] Initializing speech engine...
[2026-06-27 19:57:50,952.952 INFO    ] 2026-06-27 19:57:50
[2026-06-27 19:57:51,160.160 INFO    ] 2026-06-27 19:57:51
[2026-06-27 19:57:51,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:57:51,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:57:51,376.376 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:57:51,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:57:51,566.566 INFO    ] time= 27/06/2026 19:57:51
[2026-06-27 19:57:51,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:57:51,609.609 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:57:51,675.675 INFO    ] No existing commands found in stream
[2026-06-27 19:57:56,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:57:56,687.687 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-27 19:57:59,002.002 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 19:57:59,004.004 INFO    ] Checking for system updates...
[2026-06-27 19:57:59,025.025 INFO    ] 200
[2026-06-27 19:57:59,026.026 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:57:59,057.057 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:57:59,059.059 INFO    ] No update needed
[2026-06-27 19:57:59,060.060 INFO    ] Checking for camera pi updates...
[2026-06-27 19:57:59,079.079 INFO    ] 200
[2026-06-27 19:57:59,081.081 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:57:59,104.104 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:57:59,149.149 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:57:59,150.150 INFO    ] No camera update needed
[2026-06-27 19:57:59,151.151 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:57:59,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:57:59,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:57:59,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:58:01,198.198 INFO    ] ================================================
[2026-06-27 19:58:01,213.213 INFO    ] Launching Daemon at Sat Jun 27 19:58:01 IST 2026
[2026-06-27 19:58:01,224.224 INFO    ] ================================================
[2026-06-27 19:58:01,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:58:01
[2026-06-27 19:58:02,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:58:02,245.245 INFO    ] Initializing speech engine...
[2026-06-27 19:58:02,254.254 INFO    ] 2026-06-27 19:58:02
[2026-06-27 19:58:02,460.460 INFO    ] 2026-06-27 19:58:02
[2026-06-27 19:58:02,514.514 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:58:02,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:58:02,733.733 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:58:02,867.867 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:58:02,919.919 INFO    ] time= 27/06/2026 19:58:02
[2026-06-27 19:58:02,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:58:02,964.964 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:58:03,034.034 INFO    ] No existing commands found in stream
[2026-06-27 19:58:08,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:58:08,048.048 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-27 19:58:09,684.684 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 19:58:09,686.686 INFO    ] Checking for system updates...
[2026-06-27 19:58:09,707.707 INFO    ] 200
[2026-06-27 19:58:09,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:58:09,739.739 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:58:09,741.741 INFO    ] No update needed
[2026-06-27 19:58:09,742.742 INFO    ] Checking for camera pi updates...
[2026-06-27 19:58:09,762.762 INFO    ] 200
[2026-06-27 19:58:09,764.764 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:58:09,789.789 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:58:09,841.841 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:58:09,842.842 INFO    ] No camera update needed
[2026-06-27 19:58:09,843.843 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:58:09,845.845 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:58:09,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:58:09,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:58:11,888.888 INFO    ] ================================================
[2026-06-27 19:58:11,904.904 INFO    ] Launching Daemon at Sat Jun 27 19:58:11 IST 2026
[2026-06-27 19:58:11,914.914 INFO    ] ================================================
[2026-06-27 19:58:12,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:58:12
[2026-06-27 19:58:12,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:58:12,731.731 INFO    ] Initializing speech engine...
[2026-06-27 19:58:12,736.736 INFO    ] 2026-06-27 19:58:12
[2026-06-27 19:58:12,943.943 INFO    ] 2026-06-27 19:58:12
[2026-06-27 19:58:12,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:58:13,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:58:13,170.170 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:58:13,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:58:13,388.388 INFO    ] time= 27/06/2026 19:58:13
[2026-06-27 19:58:13,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:58:13,392.392 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:58:13,484.484 INFO    ] No existing commands found in stream
[2026-06-27 19:58:18,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:58:18,501.501 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-27 19:58:20,727.727 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:58:20,730.730 INFO    ] Checking for system updates...
[2026-06-27 19:58:20,766.766 INFO    ] 200
[2026-06-27 19:58:20,769.769 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:58:20,820.820 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:58:20,822.822 INFO    ] No update needed
[2026-06-27 19:58:20,823.823 INFO    ] Checking for camera pi updates...
[2026-06-27 19:58:20,843.843 INFO    ] 200
[2026-06-27 19:58:20,845.845 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:58:20,868.868 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:58:20,918.918 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:58:20,919.919 INFO    ] No camera update needed
[2026-06-27 19:58:20,921.921 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:58:20,922.922 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:58:20,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:58:20,928.928 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:58:22,967.967 INFO    ] ================================================
[2026-06-27 19:58:22,982.982 INFO    ] Launching Daemon at Sat Jun 27 19:58:22 IST 2026
[2026-06-27 19:58:22,992.992 INFO    ] ================================================
[2026-06-27 19:58:23,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:58:23
[2026-06-27 19:58:23,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:58:23,833.833 INFO    ] Initializing speech engine...
[2026-06-27 19:58:23,847.847 INFO    ] 2026-06-27 19:58:23
[2026-06-27 19:58:24,071.071 INFO    ] 2026-06-27 19:58:24
[2026-06-27 19:58:24,100.100 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:58:24,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:58:24,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:58:24,420.420 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:58:24,486.486 INFO    ] time= 27/06/2026 19:58:24
[2026-06-27 19:58:24,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:58:24,520.520 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:58:24,586.586 INFO    ] No existing commands found in stream
[2026-06-27 19:58:29,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:58:29,598.598 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-27 19:58:30,775.775 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:58:30,777.777 INFO    ] Checking for system updates...
[2026-06-27 19:58:30,797.797 INFO    ] 200
[2026-06-27 19:58:30,799.799 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:58:30,831.831 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:58:30,832.832 INFO    ] No update needed
[2026-06-27 19:58:30,834.834 INFO    ] Checking for camera pi updates...
[2026-06-27 19:58:30,854.854 INFO    ] 200
[2026-06-27 19:58:30,856.856 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:58:30,879.879 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:58:30,934.934 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:58:30,936.936 INFO    ] No camera update needed
[2026-06-27 19:58:30,937.937 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:58:30,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:58:30,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:58:30,944.944 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:58:32,968.968 INFO    ] ================================================
[2026-06-27 19:58:32,977.977 INFO    ] Launching Daemon at Sat Jun 27 19:58:32 IST 2026
[2026-06-27 19:58:32,982.982 INFO    ] ================================================
[2026-06-27 19:58:33,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:58:33
[2026-06-27 19:58:33,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:58:33,784.784 INFO    ] Initializing speech engine...
[2026-06-27 19:58:33,793.793 INFO    ] 2026-06-27 19:58:33
[2026-06-27 19:58:34,002.002 INFO    ] 2026-06-27 19:58:33
[2026-06-27 19:58:34,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:58:34,217.217 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:58:34,227.227 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:58:34,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:58:34,448.448 INFO    ] time= 27/06/2026 19:58:34
[2026-06-27 19:58:34,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:58:34,456.456 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:58:34,524.524 INFO    ] No existing commands found in stream
[2026-06-27 19:58:39,533.533 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:58:39,536.536 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-27 19:58:42,740.740 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:58:42,741.741 INFO    ] Checking for system updates...
[2026-06-27 19:58:42,764.764 INFO    ] 200
[2026-06-27 19:58:42,766.766 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:58:42,799.799 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:58:42,800.800 INFO    ] No update needed
[2026-06-27 19:58:42,802.802 INFO    ] Checking for camera pi updates...
[2026-06-27 19:58:42,821.821 INFO    ] 200
[2026-06-27 19:58:42,822.822 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:58:42,846.846 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:58:42,895.895 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:58:42,896.896 INFO    ] No camera update needed
[2026-06-27 19:58:42,897.897 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:58:42,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:58:42,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:58:42,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:58:44,944.944 INFO    ] ================================================
[2026-06-27 19:58:44,959.959 INFO    ] Launching Daemon at Sat Jun 27 19:58:44 IST 2026
[2026-06-27 19:58:44,970.970 INFO    ] ================================================
[2026-06-27 19:58:45,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:58:45
[2026-06-27 19:58:45,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:58:45,759.759 INFO    ] Initializing speech engine...
[2026-06-27 19:58:45,769.769 INFO    ] 2026-06-27 19:58:45
[2026-06-27 19:58:45,972.972 INFO    ] 2026-06-27 19:58:45
[2026-06-27 19:58:46,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:58:46,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:58:46,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:58:46,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:58:46,411.411 INFO    ] time= 27/06/2026 19:58:46
[2026-06-27 19:58:46,417.417 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:58:46,418.418 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:58:46,486.486 INFO    ] No existing commands found in stream
[2026-06-27 19:58:51,500.500 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:58:51,502.502 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-27 19:58:54,715.715 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 19:58:54,716.716 INFO    ] Checking for system updates...
[2026-06-27 19:58:54,737.737 INFO    ] 200
[2026-06-27 19:58:54,738.738 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:58:54,769.769 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:58:54,771.771 INFO    ] No update needed
[2026-06-27 19:58:54,772.772 INFO    ] Checking for camera pi updates...
[2026-06-27 19:58:54,794.794 INFO    ] 200
[2026-06-27 19:58:54,795.795 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:58:54,819.819 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:58:54,854.854 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:58:54,855.855 INFO    ] No camera update needed
[2026-06-27 19:58:54,856.856 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:58:54,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:58:54,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:58:54,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:58:56,904.904 INFO    ] ================================================
[2026-06-27 19:58:56,919.919 INFO    ] Launching Daemon at Sat Jun 27 19:58:56 IST 2026
[2026-06-27 19:58:56,930.930 INFO    ] ================================================
[2026-06-27 19:58:57,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:58:57
[2026-06-27 19:58:57,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:58:57,779.779 INFO    ] Initializing speech engine...
[2026-06-27 19:58:57,784.784 INFO    ] 2026-06-27 19:58:57
[2026-06-27 19:58:57,990.990 INFO    ] 2026-06-27 19:58:57
[2026-06-27 19:58:58,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:58:58,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:58:58,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:58:58,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:58:58,422.422 INFO    ] time= 27/06/2026 19:58:58
[2026-06-27 19:58:58,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:58:58,445.445 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:58:58,512.512 INFO    ] No existing commands found in stream
[2026-06-27 19:59:03,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:59:03,525.525 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-27 19:59:03,945.945 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 19:59:03,947.947 INFO    ] Checking for system updates...
[2026-06-27 19:59:03,968.968 INFO    ] 200
[2026-06-27 19:59:03,969.969 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:59:04,002.002 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:59:04,003.003 INFO    ] No update needed
[2026-06-27 19:59:04,005.005 INFO    ] Checking for camera pi updates...
[2026-06-27 19:59:04,028.028 INFO    ] 200
[2026-06-27 19:59:04,029.029 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:59:04,057.057 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:59:04,107.107 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:59:04,108.108 INFO    ] No camera update needed
[2026-06-27 19:59:04,109.109 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:59:04,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:59:04,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:59:04,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:59:06,156.156 INFO    ] ================================================
[2026-06-27 19:59:06,171.171 INFO    ] Launching Daemon at Sat Jun 27 19:59:06 IST 2026
[2026-06-27 19:59:06,181.181 INFO    ] ================================================
[2026-06-27 19:59:06,553.553 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:59:06
[2026-06-27 19:59:06,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:59:07,009.009 INFO    ] Initializing speech engine...
[2026-06-27 19:59:07,014.014 INFO    ] 2026-06-27 19:59:07
[2026-06-27 19:59:07,243.243 INFO    ] 2026-06-27 19:59:07
[2026-06-27 19:59:07,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:59:07,415.415 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:59:07,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:59:07,687.687 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:59:07,714.714 INFO    ] time= 27/06/2026 19:59:07
[2026-06-27 19:59:07,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:59:07,721.721 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:59:07,792.792 INFO    ] No existing commands found in stream
[2026-06-27 19:59:12,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:59:12,809.809 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-27 19:59:15,532.532 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 19:59:15,534.534 INFO    ] Checking for system updates...
[2026-06-27 19:59:15,554.554 INFO    ] 200
[2026-06-27 19:59:15,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:59:15,587.587 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:59:15,588.588 INFO    ] No update needed
[2026-06-27 19:59:15,589.589 INFO    ] Checking for camera pi updates...
[2026-06-27 19:59:15,610.610 INFO    ] 200
[2026-06-27 19:59:15,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:59:15,635.635 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:59:15,676.676 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:59:15,678.678 INFO    ] No camera update needed
[2026-06-27 19:59:15,679.679 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:59:15,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:59:15,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:59:15,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:59:17,724.724 INFO    ] ================================================
[2026-06-27 19:59:17,739.739 INFO    ] Launching Daemon at Sat Jun 27 19:59:17 IST 2026
[2026-06-27 19:59:17,749.749 INFO    ] ================================================
[2026-06-27 19:59:18,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:59:18
[2026-06-27 19:59:18,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:59:18,514.514 INFO    ] Initializing speech engine...
[2026-06-27 19:59:18,522.522 INFO    ] 2026-06-27 19:59:18
[2026-06-27 19:59:18,723.723 INFO    ] 2026-06-27 19:59:18
[2026-06-27 19:59:18,764.764 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:59:18,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:59:18,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:59:19,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:59:19,160.160 INFO    ] time= 27/06/2026 19:59:19
[2026-06-27 19:59:19,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:59:19,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:59:19,282.282 INFO    ] No existing commands found in stream
[2026-06-27 19:59:24,291.291 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:59:24,294.294 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-27 19:59:26,577.577 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 19:59:26,579.579 INFO    ] Checking for system updates...
[2026-06-27 19:59:26,600.600 INFO    ] 200
[2026-06-27 19:59:26,601.601 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:59:26,634.634 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:59:26,635.635 INFO    ] No update needed
[2026-06-27 19:59:26,636.636 INFO    ] Checking for camera pi updates...
[2026-06-27 19:59:26,656.656 INFO    ] 200
[2026-06-27 19:59:26,657.657 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:59:26,681.681 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:59:26,729.729 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 19:59:26,730.730 INFO    ] No camera update needed
[2026-06-27 19:59:26,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:59:26,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:59:26,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:59:26,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:59:28,776.776 INFO    ] ================================================
[2026-06-27 19:59:28,792.792 INFO    ] Launching Daemon at Sat Jun 27 19:59:28 IST 2026
[2026-06-27 19:59:28,803.803 INFO    ] ================================================
[2026-06-27 19:59:29,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:59:29
[2026-06-27 19:59:29,483.483 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:59:29,622.622 INFO    ] Initializing speech engine...
[2026-06-27 19:59:29,632.632 INFO    ] 2026-06-27 19:59:29
[2026-06-27 19:59:29,836.836 INFO    ] 2026-06-27 19:59:29
[2026-06-27 19:59:29,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:59:30,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:59:30,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:59:30,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:59:30,234.234 INFO    ] time= 27/06/2026 19:59:30
[2026-06-27 19:59:30,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:59:30,279.279 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:59:30,350.350 INFO    ] No existing commands found in stream
[2026-06-27 19:59:35,359.359 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:59:35,361.361 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-27 19:59:36,149.149 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 19:59:36,150.150 INFO    ] Checking for system updates...
[2026-06-27 19:59:36,172.172 INFO    ] 200
[2026-06-27 19:59:36,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:59:36,206.206 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:59:36,207.207 INFO    ] No update needed
[2026-06-27 19:59:36,209.209 INFO    ] Checking for camera pi updates...
[2026-06-27 19:59:36,228.228 INFO    ] 200
[2026-06-27 19:59:36,230.230 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:59:36,253.253 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:59:36,306.306 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:59:36,307.307 INFO    ] No camera update needed
[2026-06-27 19:59:36,309.309 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:59:36,310.310 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:59:36,313.313 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:59:36,316.316 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:59:38,354.354 INFO    ] ================================================
[2026-06-27 19:59:38,376.376 INFO    ] Launching Daemon at Sat Jun 27 19:59:38 IST 2026
[2026-06-27 19:59:38,387.387 INFO    ] ================================================
[2026-06-27 19:59:38,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:59:38
[2026-06-27 19:59:39,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:59:39,196.196 INFO    ] Initializing speech engine...
[2026-06-27 19:59:39,201.201 INFO    ] 2026-06-27 19:59:39
[2026-06-27 19:59:39,428.428 INFO    ] 2026-06-27 19:59:39
[2026-06-27 19:59:39,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:59:39,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:59:39,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:59:39,868.868 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:59:39,895.895 INFO    ] time= 27/06/2026 19:59:39
[2026-06-27 19:59:39,897.897 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:59:39,903.903 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:59:39,974.974 INFO    ] No existing commands found in stream
[2026-06-27 19:59:44,983.983 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:59:44,986.986 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-27 19:59:48,487.487 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 19:59:48,488.488 INFO    ] Checking for system updates...
[2026-06-27 19:59:48,509.509 INFO    ] 200
[2026-06-27 19:59:48,510.510 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:59:48,542.542 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:59:48,544.544 INFO    ] No update needed
[2026-06-27 19:59:48,545.545 INFO    ] Checking for camera pi updates...
[2026-06-27 19:59:48,564.564 INFO    ] 200
[2026-06-27 19:59:48,566.566 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 19:59:48,588.588 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 19:59:48,737.737 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 19:59:48,739.739 INFO    ] No camera update needed
[2026-06-27 19:59:48,740.740 INFO    ] Script finished. Safe exiting...
[2026-06-27 19:59:48,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 19:59:48,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 19:59:48,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 19:59:50,788.788 INFO    ] ================================================
[2026-06-27 19:59:50,803.803 INFO    ] Launching Daemon at Sat Jun 27 19:59:50 IST 2026
[2026-06-27 19:59:50,814.814 INFO    ] ================================================
[2026-06-27 19:59:51,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 19:59:51
[2026-06-27 19:59:51,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 19:59:51,657.657 INFO    ] Initializing speech engine...
[2026-06-27 19:59:51,662.662 INFO    ] 2026-06-27 19:59:51
[2026-06-27 19:59:51,873.873 INFO    ] 2026-06-27 19:59:51
[2026-06-27 19:59:51,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 19:59:52,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 19:59:52,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 19:59:52,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 19:59:52,300.300 INFO    ] time= 27/06/2026 19:59:52
[2026-06-27 19:59:52,324.324 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 19:59:52,330.330 INFO    ] Checking for existing commands in stream...
[2026-06-27 19:59:52,398.398 INFO    ] No existing commands found in stream
[2026-06-27 19:59:57,423.423 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 19:59:57,426.426 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-27 20:00:01,529.529 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 20:00:01,531.531 INFO    ] Checking for system updates...
[2026-06-27 20:00:01,553.553 INFO    ] 200
[2026-06-27 20:00:01,555.555 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:00:01,586.586 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:00:01,588.588 INFO    ] No update needed
[2026-06-27 20:00:01,589.589 INFO    ] Checking for camera pi updates...
[2026-06-27 20:00:01,610.610 INFO    ] 200
[2026-06-27 20:00:01,611.611 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:00:01,635.635 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:00:01,681.681 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:00:01,682.682 INFO    ] No camera update needed
[2026-06-27 20:00:01,684.684 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:00:01,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:00:01,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:00:01,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:00:03,776.776 INFO    ] ================================================
[2026-06-27 20:00:03,845.845 INFO    ] Launching Daemon at Sat Jun 27 20:00:03 IST 2026
[2026-06-27 20:00:03,884.884 INFO    ] ================================================
[2026-06-27 20:00:04,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:00:04
[2026-06-27 20:00:05,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:00:05,238.238 INFO    ] Initializing speech engine...
[2026-06-27 20:00:05,247.247 INFO    ] 2026-06-27 20:00:05
[2026-06-27 20:00:05,472.472 INFO    ] 2026-06-27 20:00:05
[2026-06-27 20:00:05,503.503 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:00:05,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:00:05,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:00:05,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:00:05,892.892 INFO    ] time= 27/06/2026 20:00:05
[2026-06-27 20:00:05,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:00:05,954.954 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:00:06,059.059 INFO    ] No existing commands found in stream
[2026-06-27 20:00:11,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:00:11,070.070 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-27 20:00:11,608.608 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 20:00:11,609.609 INFO    ] Checking for system updates...
[2026-06-27 20:00:11,631.631 INFO    ] 200
[2026-06-27 20:00:11,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:00:11,666.666 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:00:11,667.667 INFO    ] No update needed
[2026-06-27 20:00:11,669.669 INFO    ] Checking for camera pi updates...
[2026-06-27 20:00:11,688.688 INFO    ] 200
[2026-06-27 20:00:11,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:00:11,712.712 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:00:11,774.774 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:00:11,776.776 INFO    ] No camera update needed
[2026-06-27 20:00:11,777.777 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:00:11,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:00:11,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:00:11,784.784 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:00:13,823.823 INFO    ] ================================================
[2026-06-27 20:00:13,838.838 INFO    ] Launching Daemon at Sat Jun 27 20:00:13 IST 2026
[2026-06-27 20:00:13,849.849 INFO    ] ================================================
[2026-06-27 20:00:14,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:00:14
[2026-06-27 20:00:14,536.536 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:00:14,686.686 INFO    ] Initializing speech engine...
[2026-06-27 20:00:14,693.693 INFO    ] 2026-06-27 20:00:14
[2026-06-27 20:00:14,900.900 INFO    ] 2026-06-27 20:00:14
[2026-06-27 20:00:14,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:00:15,112.112 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:00:15,122.122 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:00:15,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:00:15,340.340 INFO    ] time= 27/06/2026 20:00:15
[2026-06-27 20:00:15,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:00:15,347.347 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:00:15,414.414 INFO    ] No existing commands found in stream
[2026-06-27 20:00:20,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:00:20,432.432 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-27 20:00:24,378.378 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 20:00:24,379.379 INFO    ] Checking for system updates...
[2026-06-27 20:00:24,401.401 INFO    ] 200
[2026-06-27 20:00:24,403.403 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:00:24,435.435 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:00:24,437.437 INFO    ] No update needed
[2026-06-27 20:00:24,438.438 INFO    ] Checking for camera pi updates...
[2026-06-27 20:00:24,459.459 INFO    ] 200
[2026-06-27 20:00:24,460.460 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:00:24,486.486 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:00:24,538.538 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:00:24,539.539 INFO    ] No camera update needed
[2026-06-27 20:00:24,541.541 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:00:24,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:00:24,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:00:24,548.548 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:00:26,587.587 INFO    ] ================================================
[2026-06-27 20:00:26,603.603 INFO    ] Launching Daemon at Sat Jun 27 20:00:26 IST 2026
[2026-06-27 20:00:26,615.615 INFO    ] ================================================
[2026-06-27 20:00:26,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:00:26
[2026-06-27 20:00:27,291.291 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:00:27,434.434 INFO    ] Initializing speech engine...
[2026-06-27 20:00:27,438.438 INFO    ] 2026-06-27 20:00:27
[2026-06-27 20:00:27,642.642 INFO    ] 2026-06-27 20:00:27
[2026-06-27 20:00:27,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:00:27,793.793 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:00:27,836.836 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:00:28,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:00:28,081.081 INFO    ] time= 27/06/2026 20:00:28
[2026-06-27 20:00:28,087.087 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:00:28,089.089 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:00:28,156.156 INFO    ] No existing commands found in stream
[2026-06-27 20:00:33,169.169 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:00:33,171.171 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-27 20:00:36,732.732 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 20:00:36,734.734 INFO    ] Checking for system updates...
[2026-06-27 20:00:36,755.755 INFO    ] 200
[2026-06-27 20:00:36,757.757 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:00:36,787.787 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:00:36,788.788 INFO    ] No update needed
[2026-06-27 20:00:36,790.790 INFO    ] Checking for camera pi updates...
[2026-06-27 20:00:36,810.810 INFO    ] 200
[2026-06-27 20:00:36,812.812 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:00:36,836.836 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:00:36,880.880 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:00:36,882.882 INFO    ] No camera update needed
[2026-06-27 20:00:36,883.883 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:00:36,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:00:36,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:00:36,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:00:38,930.930 INFO    ] ================================================
[2026-06-27 20:00:38,946.946 INFO    ] Launching Daemon at Sat Jun 27 20:00:38 IST 2026
[2026-06-27 20:00:38,958.958 INFO    ] ================================================
[2026-06-27 20:00:39,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:00:39
[2026-06-27 20:00:39,613.613 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:00:39,745.745 INFO    ] Initializing speech engine...
[2026-06-27 20:00:39,752.752 INFO    ] 2026-06-27 20:00:39
[2026-06-27 20:00:39,964.964 INFO    ] 2026-06-27 20:00:39
[2026-06-27 20:00:39,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:00:40,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:00:40,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:00:40,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:00:40,374.374 INFO    ] time= 27/06/2026 20:00:40
[2026-06-27 20:00:40,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:00:40,407.407 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:00:40,477.477 INFO    ] No existing commands found in stream
[2026-06-27 20:00:45,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:00:45,490.490 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-27 20:00:46,709.709 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:00:46,711.711 INFO    ] Checking for system updates...
[2026-06-27 20:00:46,732.732 INFO    ] 200
[2026-06-27 20:00:46,733.733 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:00:46,765.765 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:00:46,766.766 INFO    ] No update needed
[2026-06-27 20:00:46,768.768 INFO    ] Checking for camera pi updates...
[2026-06-27 20:00:46,787.787 INFO    ] 200
[2026-06-27 20:00:46,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:00:46,813.813 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:00:46,858.858 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:00:46,860.860 INFO    ] No camera update needed
[2026-06-27 20:00:46,861.861 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:00:46,862.862 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:00:46,865.865 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:00:46,868.868 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:00:48,906.906 INFO    ] ================================================
[2026-06-27 20:00:48,922.922 INFO    ] Launching Daemon at Sat Jun 27 20:00:48 IST 2026
[2026-06-27 20:00:48,937.937 INFO    ] ================================================
[2026-06-27 20:00:49,308.308 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:00:49
[2026-06-27 20:00:49,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:00:49,796.796 INFO    ] Initializing speech engine...
[2026-06-27 20:00:49,802.802 INFO    ] 2026-06-27 20:00:49
[2026-06-27 20:00:50,010.010 INFO    ] 2026-06-27 20:00:49
[2026-06-27 20:00:50,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:00:50,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:00:50,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:00:50,385.385 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:00:50,445.445 INFO    ] time= 27/06/2026 20:00:50
[2026-06-27 20:00:50,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:00:50,461.461 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:00:50,528.528 INFO    ] No existing commands found in stream
[2026-06-27 20:00:55,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:00:55,540.540 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-27 20:00:59,818.818 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 20:00:59,819.819 INFO    ] Checking for system updates...
[2026-06-27 20:00:59,841.841 INFO    ] 200
[2026-06-27 20:00:59,842.842 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:00:59,875.875 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:00:59,876.876 INFO    ] No update needed
[2026-06-27 20:00:59,878.878 INFO    ] Checking for camera pi updates...
[2026-06-27 20:00:59,899.899 INFO    ] 200
[2026-06-27 20:00:59,900.900 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:00:59,923.923 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:00:59,967.967 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:00:59,968.968 INFO    ] No camera update needed
[2026-06-27 20:00:59,969.969 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:00:59,971.971 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:00:59,974.974 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:00:59,977.977 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:01:02,027.027 INFO    ] ================================================
[2026-06-27 20:01:02,054.054 INFO    ] Launching Daemon at Sat Jun 27 20:01:02 IST 2026
[2026-06-27 20:01:02,065.065 INFO    ] ================================================
[2026-06-27 20:01:02,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:01:02
[2026-06-27 20:01:02,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:01:03,055.055 INFO    ] Initializing speech engine...
[2026-06-27 20:01:03,059.059 INFO    ] 2026-06-27 20:01:03
[2026-06-27 20:01:03,279.279 INFO    ] 2026-06-27 20:01:03
[2026-06-27 20:01:03,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:01:03,440.440 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:01:03,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:01:03,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:01:03,665.665 INFO    ] time= 27/06/2026 20:01:03
[2026-06-27 20:01:03,733.733 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:01:03,757.757 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:01:03,828.828 INFO    ] No existing commands found in stream
[2026-06-27 20:01:08,837.837 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:01:08,840.840 INFO    ] Waiting 3.58 seconds before fallback handling...
[2026-06-27 20:01:12,850.850 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 20:01:12,852.852 INFO    ] Checking for system updates...
[2026-06-27 20:01:12,877.877 INFO    ] 200
[2026-06-27 20:01:12,878.878 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:01:12,910.910 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:01:12,912.912 INFO    ] No update needed
[2026-06-27 20:01:12,913.913 INFO    ] Checking for camera pi updates...
[2026-06-27 20:01:12,933.933 INFO    ] 200
[2026-06-27 20:01:12,934.934 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:01:12,958.958 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:01:13,004.004 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:01:13,006.006 INFO    ] No camera update needed
[2026-06-27 20:01:13,007.007 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:01:13,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:01:13,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:01:13,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:01:15,054.054 INFO    ] ================================================
[2026-06-27 20:01:15,070.070 INFO    ] Launching Daemon at Sat Jun 27 20:01:15 IST 2026
[2026-06-27 20:01:15,082.082 INFO    ] ================================================
[2026-06-27 20:01:15,421.421 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:01:15
[2026-06-27 20:01:15,732.732 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:01:15,876.876 INFO    ] Initializing speech engine...
[2026-06-27 20:01:15,881.881 INFO    ] 2026-06-27 20:01:15
[2026-06-27 20:01:16,087.087 INFO    ] 2026-06-27 20:01:16
[2026-06-27 20:01:16,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:01:16,427.427 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:01:16,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:01:16,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:01:16,722.722 INFO    ] time= 27/06/2026 20:01:16
[2026-06-27 20:01:16,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:01:16,728.728 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:01:16,811.811 INFO    ] No existing commands found in stream
[2026-06-27 20:01:21,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:01:21,824.824 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-27 20:01:23,790.790 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 20:01:23,791.791 INFO    ] Checking for system updates...
[2026-06-27 20:01:23,816.816 INFO    ] 200
[2026-06-27 20:01:23,817.817 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:01:23,850.850 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:01:23,851.851 INFO    ] No update needed
[2026-06-27 20:01:23,852.852 INFO    ] Checking for camera pi updates...
[2026-06-27 20:01:23,874.874 INFO    ] 200
[2026-06-27 20:01:23,875.875 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:01:23,898.898 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:01:23,943.943 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:01:23,945.945 INFO    ] No camera update needed
[2026-06-27 20:01:23,946.946 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:01:23,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:01:23,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:01:23,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:01:25,993.993 INFO    ] ================================================
[2026-06-27 20:01:26,009.009 INFO    ] Launching Daemon at Sat Jun 27 20:01:26 IST 2026
[2026-06-27 20:01:26,021.021 INFO    ] ================================================
[2026-06-27 20:01:26,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:01:26
[2026-06-27 20:01:26,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:01:26,867.867 INFO    ] Initializing speech engine...
[2026-06-27 20:01:26,872.872 INFO    ] 2026-06-27 20:01:26
[2026-06-27 20:01:27,083.083 INFO    ] 2026-06-27 20:01:27
[2026-06-27 20:01:27,112.112 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:01:27,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:01:27,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:01:27,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:01:27,489.489 INFO    ] time= 27/06/2026 20:01:27
[2026-06-27 20:01:27,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:01:27,539.539 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:01:27,631.631 INFO    ] No existing commands found in stream
[2026-06-27 20:01:32,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:01:32,641.641 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-27 20:01:35,858.858 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:01:35,860.860 INFO    ] Checking for system updates...
[2026-06-27 20:01:35,881.881 INFO    ] 200
[2026-06-27 20:01:35,883.883 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:01:35,917.917 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:01:35,918.918 INFO    ] No update needed
[2026-06-27 20:01:35,919.919 INFO    ] Checking for camera pi updates...
[2026-06-27 20:01:35,940.940 INFO    ] 200
[2026-06-27 20:01:35,941.941 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:01:35,965.965 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:01:36,010.010 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:01:36,012.012 INFO    ] No camera update needed
[2026-06-27 20:01:36,013.013 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:01:36,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:01:36,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:01:36,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:01:38,059.059 INFO    ] ================================================
[2026-06-27 20:01:38,074.074 INFO    ] Launching Daemon at Sat Jun 27 20:01:38 IST 2026
[2026-06-27 20:01:38,086.086 INFO    ] ================================================
[2026-06-27 20:01:38,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:01:38
[2026-06-27 20:01:38,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:01:38,949.949 INFO    ] Initializing speech engine...
[2026-06-27 20:01:38,960.960 INFO    ] 2026-06-27 20:01:38
[2026-06-27 20:01:39,166.166 INFO    ] 2026-06-27 20:01:39
[2026-06-27 20:01:39,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:01:39,321.321 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:01:39,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:01:39,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:01:39,581.581 INFO    ] time= 27/06/2026 20:01:39
[2026-06-27 20:01:39,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:01:39,627.627 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:01:39,696.696 INFO    ] No existing commands found in stream
[2026-06-27 20:01:44,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:01:44,708.708 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-27 20:01:48,812.812 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 20:01:48,820.820 INFO    ] Checking for system updates...
[2026-06-27 20:01:48,843.843 INFO    ] 200
[2026-06-27 20:01:48,844.844 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:01:48,875.875 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:01:48,876.876 INFO    ] No update needed
[2026-06-27 20:01:48,878.878 INFO    ] Checking for camera pi updates...
[2026-06-27 20:01:48,897.897 INFO    ] 200
[2026-06-27 20:01:48,898.898 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:01:48,922.922 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:01:48,970.970 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:01:48,972.972 INFO    ] No camera update needed
[2026-06-27 20:01:48,973.973 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:01:48,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:01:48,977.977 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:01:48,980.980 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:01:51,018.018 INFO    ] ================================================
[2026-06-27 20:01:51,034.034 INFO    ] Launching Daemon at Sat Jun 27 20:01:51 IST 2026
[2026-06-27 20:01:51,045.045 INFO    ] ================================================
[2026-06-27 20:01:51,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:01:51
[2026-06-27 20:01:51,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:01:51,917.917 INFO    ] Initializing speech engine...
[2026-06-27 20:01:51,923.923 INFO    ] 2026-06-27 20:01:51
[2026-06-27 20:01:52,131.131 INFO    ] 2026-06-27 20:01:52
[2026-06-27 20:01:52,160.160 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:01:52,345.345 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:01:52,355.355 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:01:52,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:01:52,551.551 INFO    ] time= 27/06/2026 20:01:52
[2026-06-27 20:01:52,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:01:52,581.581 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:01:52,649.649 INFO    ] No existing commands found in stream
[2026-06-27 20:01:57,663.663 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:01:57,667.667 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-27 20:02:01,194.194 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 20:02:01,196.196 INFO    ] Checking for system updates...
[2026-06-27 20:02:01,218.218 INFO    ] 200
[2026-06-27 20:02:01,219.219 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:02:01,263.263 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:02:01,266.266 INFO    ] No update needed
[2026-06-27 20:02:01,269.269 INFO    ] Checking for camera pi updates...
[2026-06-27 20:02:01,315.315 INFO    ] 200
[2026-06-27 20:02:01,318.318 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:02:01,359.359 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:02:01,505.505 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:02:01,509.509 INFO    ] No camera update needed
[2026-06-27 20:02:01,511.511 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:02:01,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:02:01,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:02:01,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:02:03,559.559 INFO    ] ================================================
[2026-06-27 20:02:03,575.575 INFO    ] Launching Daemon at Sat Jun 27 20:02:03 IST 2026
[2026-06-27 20:02:03,586.586 INFO    ] ================================================
[2026-06-27 20:02:03,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:02:03
[2026-06-27 20:02:04,284.284 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:02:04,429.429 INFO    ] Initializing speech engine...
[2026-06-27 20:02:04,437.437 INFO    ] 2026-06-27 20:02:04
[2026-06-27 20:02:04,646.646 INFO    ] 2026-06-27 20:02:04
[2026-06-27 20:02:04,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:02:04,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:02:04,896.896 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:02:05,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:02:05,101.101 INFO    ] time= 27/06/2026 20:02:05
[2026-06-27 20:02:05,105.105 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:02:05,107.107 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:02:05,197.197 INFO    ] No existing commands found in stream
[2026-06-27 20:02:10,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:02:10,215.215 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-27 20:02:12,186.186 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 20:02:12,187.187 INFO    ] Checking for system updates...
[2026-06-27 20:02:12,209.209 INFO    ] 200
[2026-06-27 20:02:12,211.211 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:02:12,268.268 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:02:12,269.269 INFO    ] No update needed
[2026-06-27 20:02:12,271.271 INFO    ] Checking for camera pi updates...
[2026-06-27 20:02:12,305.305 INFO    ] 200
[2026-06-27 20:02:12,306.306 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:02:12,330.330 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:02:12,357.357 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:02:12,358.358 INFO    ] No camera update needed
[2026-06-27 20:02:12,360.360 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:02:12,361.361 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:02:12,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:02:12,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:02:14,407.407 INFO    ] ================================================
[2026-06-27 20:02:14,424.424 INFO    ] Launching Daemon at Sat Jun 27 20:02:14 IST 2026
[2026-06-27 20:02:14,435.435 INFO    ] ================================================
[2026-06-27 20:02:14,778.778 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:02:14
[2026-06-27 20:02:15,090.090 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:02:15,226.226 INFO    ] Initializing speech engine...
[2026-06-27 20:02:15,236.236 INFO    ] 2026-06-27 20:02:15
[2026-06-27 20:02:15,457.457 INFO    ] 2026-06-27 20:02:15
[2026-06-27 20:02:15,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:02:15,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:02:15,694.694 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:02:15,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:02:15,893.893 INFO    ] time= 27/06/2026 20:02:15
[2026-06-27 20:02:15,925.925 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:02:15,927.927 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:02:15,998.998 INFO    ] No existing commands found in stream
[2026-06-27 20:02:21,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:02:21,015.015 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-27 20:02:22,487.487 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 20:02:22,489.489 INFO    ] Checking for system updates...
[2026-06-27 20:02:22,509.509 INFO    ] 200
[2026-06-27 20:02:22,511.511 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:02:22,542.542 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:02:22,543.543 INFO    ] No update needed
[2026-06-27 20:02:22,545.545 INFO    ] Checking for camera pi updates...
[2026-06-27 20:02:22,564.564 INFO    ] 200
[2026-06-27 20:02:22,566.566 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:02:22,603.603 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:02:22,667.667 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:02:22,669.669 INFO    ] No camera update needed
[2026-06-27 20:02:22,670.670 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:02:22,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:02:22,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:02:22,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:02:24,718.718 INFO    ] ================================================
[2026-06-27 20:02:24,733.733 INFO    ] Launching Daemon at Sat Jun 27 20:02:24 IST 2026
[2026-06-27 20:02:24,745.745 INFO    ] ================================================
[2026-06-27 20:02:25,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:02:25
[2026-06-27 20:02:25,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:02:25,543.543 INFO    ] Initializing speech engine...
[2026-06-27 20:02:25,548.548 INFO    ] 2026-06-27 20:02:25
[2026-06-27 20:02:25,754.754 INFO    ] 2026-06-27 20:02:25
[2026-06-27 20:02:25,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:02:25,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:02:25,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:02:26,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:02:26,162.162 INFO    ] time= 27/06/2026 20:02:26
[2026-06-27 20:02:26,187.187 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:02:26,202.202 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:02:26,274.274 INFO    ] No existing commands found in stream
[2026-06-27 20:02:31,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:02:31,286.286 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-27 20:02:35,211.211 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 20:02:35,213.213 INFO    ] Checking for system updates...
[2026-06-27 20:02:35,238.238 INFO    ] 200
[2026-06-27 20:02:35,240.240 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:02:35,280.280 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:02:35,282.282 INFO    ] No update needed
[2026-06-27 20:02:35,283.283 INFO    ] Checking for camera pi updates...
[2026-06-27 20:02:35,306.306 INFO    ] 200
[2026-06-27 20:02:35,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:02:35,331.331 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:02:35,374.374 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:02:35,375.375 INFO    ] No camera update needed
[2026-06-27 20:02:35,377.377 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:02:35,378.378 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:02:35,381.381 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:02:35,384.384 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:02:37,426.426 INFO    ] ================================================
[2026-06-27 20:02:37,442.442 INFO    ] Launching Daemon at Sat Jun 27 20:02:37 IST 2026
[2026-06-27 20:02:37,454.454 INFO    ] ================================================
[2026-06-27 20:02:37,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:02:37
[2026-06-27 20:02:38,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:02:38,252.252 INFO    ] Initializing speech engine...
[2026-06-27 20:02:38,257.257 INFO    ] 2026-06-27 20:02:38
[2026-06-27 20:02:38,464.464 INFO    ] 2026-06-27 20:02:38
[2026-06-27 20:02:38,494.494 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:02:38,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:02:38,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:02:38,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:02:38,888.888 INFO    ] time= 27/06/2026 20:02:38
[2026-06-27 20:02:38,911.911 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:02:38,916.916 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:02:39,007.007 INFO    ] No existing commands found in stream
[2026-06-27 20:02:44,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:02:44,034.034 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-27 20:02:45,743.743 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 20:02:45,745.745 INFO    ] Checking for system updates...
[2026-06-27 20:02:45,767.767 INFO    ] 200
[2026-06-27 20:02:45,768.768 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:02:45,802.802 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:02:45,803.803 INFO    ] No update needed
[2026-06-27 20:02:45,805.805 INFO    ] Checking for camera pi updates...
[2026-06-27 20:02:45,825.825 INFO    ] 200
[2026-06-27 20:02:45,827.827 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:02:45,851.851 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:02:45,895.895 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:02:45,896.896 INFO    ] No camera update needed
[2026-06-27 20:02:45,898.898 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:02:45,899.899 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:02:45,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:02:45,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:02:47,940.940 INFO    ] ================================================
[2026-06-27 20:02:47,950.950 INFO    ] Launching Daemon at Sat Jun 27 20:02:47 IST 2026
[2026-06-27 20:02:47,957.957 INFO    ] ================================================
[2026-06-27 20:02:48,286.286 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:02:48
[2026-06-27 20:02:48,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:02:48,803.803 INFO    ] Initializing speech engine...
[2026-06-27 20:02:48,809.809 INFO    ] 2026-06-27 20:02:48
[2026-06-27 20:02:49,018.018 INFO    ] 2026-06-27 20:02:48
[2026-06-27 20:02:49,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:02:49,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:02:49,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:02:49,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:02:49,538.538 INFO    ] time= 27/06/2026 20:02:49
[2026-06-27 20:02:49,564.564 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:02:49,566.566 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:02:49,664.664 INFO    ] No existing commands found in stream
[2026-06-27 20:02:54,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:02:54,678.678 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-27 20:02:58,718.718 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:02:58,719.719 INFO    ] Checking for system updates...
[2026-06-27 20:02:58,740.740 INFO    ] 200
[2026-06-27 20:02:58,742.742 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:02:58,773.773 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:02:58,774.774 INFO    ] No update needed
[2026-06-27 20:02:58,776.776 INFO    ] Checking for camera pi updates...
[2026-06-27 20:02:58,796.796 INFO    ] 200
[2026-06-27 20:02:58,798.798 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:02:58,827.827 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:02:58,871.871 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:02:58,872.872 INFO    ] No camera update needed
[2026-06-27 20:02:58,874.874 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:02:58,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:02:58,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:02:58,881.881 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:03:00,918.918 INFO    ] ================================================
[2026-06-27 20:03:00,935.935 INFO    ] Launching Daemon at Sat Jun 27 20:03:00 IST 2026
[2026-06-27 20:03:00,948.948 INFO    ] ================================================
[2026-06-27 20:03:01,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:03:01
[2026-06-27 20:03:01,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:03:01,904.904 INFO    ] Initializing speech engine...
[2026-06-27 20:03:01,916.916 INFO    ] 2026-06-27 20:03:01
[2026-06-27 20:03:02,180.180 INFO    ] 2026-06-27 20:03:02
[2026-06-27 20:03:02,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:03:02,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:03:02,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:03:02,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:03:02,654.654 INFO    ] time= 27/06/2026 20:03:02
[2026-06-27 20:03:02,667.667 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:03:02,690.690 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:03:02,765.765 INFO    ] No existing commands found in stream
[2026-06-27 20:03:07,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:03:07,778.778 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-27 20:03:10,877.877 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 20:03:10,879.879 INFO    ] Checking for system updates...
[2026-06-27 20:03:10,900.900 INFO    ] 200
[2026-06-27 20:03:10,901.901 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:03:10,934.934 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:03:10,936.936 INFO    ] No update needed
[2026-06-27 20:03:10,937.937 INFO    ] Checking for camera pi updates...
[2026-06-27 20:03:10,958.958 INFO    ] 200
[2026-06-27 20:03:10,959.959 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:03:10,983.983 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:03:11,027.027 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:03:11,029.029 INFO    ] No camera update needed
[2026-06-27 20:03:11,030.030 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:03:11,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:03:11,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:03:11,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:03:13,079.079 INFO    ] ================================================
[2026-06-27 20:03:13,095.095 INFO    ] Launching Daemon at Sat Jun 27 20:03:13 IST 2026
[2026-06-27 20:03:13,106.106 INFO    ] ================================================
[2026-06-27 20:03:13,492.492 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:03:13
[2026-06-27 20:03:13,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:03:13,983.983 INFO    ] Initializing speech engine...
[2026-06-27 20:03:13,987.987 INFO    ] 2026-06-27 20:03:13
[2026-06-27 20:03:14,197.197 INFO    ] 2026-06-27 20:03:14
[2026-06-27 20:03:14,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:03:14,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:03:14,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:03:14,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:03:14,610.610 INFO    ] time= 27/06/2026 20:03:14
[2026-06-27 20:03:14,640.640 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:03:14,651.651 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:03:14,724.724 INFO    ] No existing commands found in stream
[2026-06-27 20:03:19,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:03:19,737.737 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-27 20:03:23,759.759 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:03:23,760.760 INFO    ] Checking for system updates...
[2026-06-27 20:03:23,782.782 INFO    ] 200
[2026-06-27 20:03:23,784.784 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:03:23,815.815 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:03:23,817.817 INFO    ] No update needed
[2026-06-27 20:03:23,818.818 INFO    ] Checking for camera pi updates...
[2026-06-27 20:03:23,838.838 INFO    ] 200
[2026-06-27 20:03:23,839.839 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:03:23,863.863 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:03:23,915.915 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:03:23,917.917 INFO    ] No camera update needed
[2026-06-27 20:03:23,918.918 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:03:23,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:03:23,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:03:23,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:03:25,965.965 INFO    ] ================================================
[2026-06-27 20:03:25,981.981 INFO    ] Launching Daemon at Sat Jun 27 20:03:25 IST 2026
[2026-06-27 20:03:25,991.991 INFO    ] ================================================
[2026-06-27 20:03:26,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:03:26
[2026-06-27 20:03:26,652.652 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:03:26,789.789 INFO    ] Initializing speech engine...
[2026-06-27 20:03:26,799.799 INFO    ] 2026-06-27 20:03:26
[2026-06-27 20:03:27,005.005 INFO    ] 2026-06-27 20:03:26
[2026-06-27 20:03:27,035.035 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:03:27,169.169 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:03:27,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:03:27,355.355 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:03:27,416.416 INFO    ] time= 27/06/2026 20:03:27
[2026-06-27 20:03:27,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:03:27,457.457 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:03:27,530.530 INFO    ] No existing commands found in stream
[2026-06-27 20:03:32,539.539 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:03:32,541.541 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-27 20:03:35,579.579 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 20:03:35,580.580 INFO    ] Checking for system updates...
[2026-06-27 20:03:35,601.601 INFO    ] 200
[2026-06-27 20:03:35,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:03:35,647.647 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:03:35,648.648 INFO    ] No update needed
[2026-06-27 20:03:35,649.649 INFO    ] Checking for camera pi updates...
[2026-06-27 20:03:35,669.669 INFO    ] 200
[2026-06-27 20:03:35,670.670 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:03:35,694.694 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:03:35,754.754 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:03:35,755.755 INFO    ] No camera update needed
[2026-06-27 20:03:35,756.756 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:03:35,757.757 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:03:35,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:03:35,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:03:37,801.801 INFO    ] ================================================
[2026-06-27 20:03:37,818.818 INFO    ] Launching Daemon at Sat Jun 27 20:03:37 IST 2026
[2026-06-27 20:03:37,829.829 INFO    ] ================================================
[2026-06-27 20:03:38,175.175 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:03:38
[2026-06-27 20:03:38,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:03:38,660.660 INFO    ] Initializing speech engine...
[2026-06-27 20:03:38,665.665 INFO    ] 2026-06-27 20:03:38
[2026-06-27 20:03:38,873.873 INFO    ] 2026-06-27 20:03:38
[2026-06-27 20:03:38,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:03:39,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:03:39,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:03:39,280.280 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:03:39,309.309 INFO    ] time= 27/06/2026 20:03:39
[2026-06-27 20:03:39,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:03:39,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:03:39,387.387 INFO    ] No existing commands found in stream
[2026-06-27 20:03:44,402.402 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:03:44,405.405 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-27 20:03:48,203.203 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 20:03:48,204.204 INFO    ] Checking for system updates...
[2026-06-27 20:03:48,225.225 INFO    ] 200
[2026-06-27 20:03:48,227.227 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:03:48,260.260 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:03:48,262.262 INFO    ] No update needed
[2026-06-27 20:03:48,264.264 INFO    ] Checking for camera pi updates...
[2026-06-27 20:03:48,284.284 INFO    ] 200
[2026-06-27 20:03:48,285.285 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:03:48,309.309 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:03:48,353.353 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:03:48,354.354 INFO    ] No camera update needed
[2026-06-27 20:03:48,356.356 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:03:48,357.357 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:03:48,361.361 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:03:48,364.364 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:03:50,405.405 INFO    ] ================================================
[2026-06-27 20:03:50,420.420 INFO    ] Launching Daemon at Sat Jun 27 20:03:50 IST 2026
[2026-06-27 20:03:50,432.432 INFO    ] ================================================
[2026-06-27 20:03:50,769.769 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:03:50
[2026-06-27 20:03:51,088.088 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:03:51,232.232 INFO    ] Initializing speech engine...
[2026-06-27 20:03:51,237.237 INFO    ] 2026-06-27 20:03:51
[2026-06-27 20:03:51,440.440 INFO    ] 2026-06-27 20:03:51
[2026-06-27 20:03:51,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:03:51,652.652 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:03:51,660.660 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:03:51,786.786 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:03:51,844.844 INFO    ] time= 27/06/2026 20:03:51
[2026-06-27 20:03:51,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:03:51,883.883 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:03:51,955.955 INFO    ] No existing commands found in stream
[2026-06-27 20:03:56,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:03:56,969.969 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-27 20:03:59,311.311 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 20:03:59,312.312 INFO    ] Checking for system updates...
[2026-06-27 20:03:59,334.334 INFO    ] 200
[2026-06-27 20:03:59,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:03:59,369.369 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:03:59,370.370 INFO    ] No update needed
[2026-06-27 20:03:59,372.372 INFO    ] Checking for camera pi updates...
[2026-06-27 20:03:59,395.395 INFO    ] 200
[2026-06-27 20:03:59,396.396 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:03:59,424.424 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:03:59,468.468 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:03:59,470.470 INFO    ] No camera update needed
[2026-06-27 20:03:59,471.471 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:03:59,472.472 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:03:59,475.475 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:03:59,478.478 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:04:01,516.516 INFO    ] ================================================
[2026-06-27 20:04:01,532.532 INFO    ] Launching Daemon at Sat Jun 27 20:04:01 IST 2026
[2026-06-27 20:04:01,545.545 INFO    ] ================================================
[2026-06-27 20:04:02,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:04:02
[2026-06-27 20:04:02,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:04:02,642.642 INFO    ] Initializing speech engine...
[2026-06-27 20:04:02,648.648 INFO    ] 2026-06-27 20:04:02
[2026-06-27 20:04:02,865.865 INFO    ] 2026-06-27 20:04:02
[2026-06-27 20:04:02,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:04:03,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:04:03,228.228 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:04:03,374.374 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:04:03,376.376 INFO    ] time= 27/06/2026 20:04:03
[2026-06-27 20:04:03,401.401 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:04:03,402.402 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:04:03,516.516 INFO    ] No existing commands found in stream
[2026-06-27 20:04:08,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:04:08,528.528 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-27 20:04:10,291.291 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:04:10,292.292 INFO    ] Checking for system updates...
[2026-06-27 20:04:10,313.313 INFO    ] 200
[2026-06-27 20:04:10,314.314 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:04:10,347.347 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:04:10,348.348 INFO    ] No update needed
[2026-06-27 20:04:10,350.350 INFO    ] Checking for camera pi updates...
[2026-06-27 20:04:10,369.369 INFO    ] 200
[2026-06-27 20:04:10,370.370 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:04:10,394.394 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:04:10,532.532 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:04:10,533.533 INFO    ] No camera update needed
[2026-06-27 20:04:10,535.535 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:04:10,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:04:10,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:04:10,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:04:12,581.581 INFO    ] ================================================
[2026-06-27 20:04:12,597.597 INFO    ] Launching Daemon at Sat Jun 27 20:04:12 IST 2026
[2026-06-27 20:04:12,609.609 INFO    ] ================================================
[2026-06-27 20:04:12,964.964 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:04:12
[2026-06-27 20:04:13,276.276 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:04:13,415.415 INFO    ] Initializing speech engine...
[2026-06-27 20:04:13,425.425 INFO    ] 2026-06-27 20:04:13
[2026-06-27 20:04:13,631.631 INFO    ] 2026-06-27 20:04:13
[2026-06-27 20:04:13,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:04:13,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:04:13,857.857 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:04:14,052.052 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:04:14,077.077 INFO    ] time= 27/06/2026 20:04:14
[2026-06-27 20:04:14,079.079 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:04:14,085.085 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:04:14,176.176 INFO    ] No existing commands found in stream
[2026-06-27 20:04:19,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:04:19,188.188 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-27 20:04:19,938.938 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 20:04:19,940.940 INFO    ] Checking for system updates...
[2026-06-27 20:04:19,961.961 INFO    ] 200
[2026-06-27 20:04:19,962.962 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:04:19,995.995 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:04:19,997.997 INFO    ] No update needed
[2026-06-27 20:04:19,998.998 INFO    ] Checking for camera pi updates...
[2026-06-27 20:04:20,020.020 INFO    ] 200
[2026-06-27 20:04:20,021.021 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:04:20,047.047 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:04:20,093.093 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:04:20,095.095 INFO    ] No camera update needed
[2026-06-27 20:04:20,096.096 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:04:20,097.097 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:04:20,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:04:20,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:04:22,144.144 INFO    ] ================================================
[2026-06-27 20:04:22,159.159 INFO    ] Launching Daemon at Sat Jun 27 20:04:22 IST 2026
[2026-06-27 20:04:22,170.170 INFO    ] ================================================
[2026-06-27 20:04:22,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:04:22
[2026-06-27 20:04:22,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:04:22,965.965 INFO    ] Initializing speech engine...
[2026-06-27 20:04:22,970.970 INFO    ] 2026-06-27 20:04:22
[2026-06-27 20:04:23,177.177 INFO    ] 2026-06-27 20:04:23
[2026-06-27 20:04:23,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:04:23,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:04:23,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:04:23,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:04:23,607.607 INFO    ] time= 27/06/2026 20:04:23
[2026-06-27 20:04:23,631.631 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:04:23,637.637 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:04:23,728.728 INFO    ] No existing commands found in stream
[2026-06-27 20:04:28,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:04:28,745.745 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-27 20:04:31,150.150 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 20:04:31,152.152 INFO    ] Checking for system updates...
[2026-06-27 20:04:31,172.172 INFO    ] 200
[2026-06-27 20:04:31,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:04:31,205.205 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:04:31,206.206 INFO    ] No update needed
[2026-06-27 20:04:31,207.207 INFO    ] Checking for camera pi updates...
[2026-06-27 20:04:31,226.226 INFO    ] 200
[2026-06-27 20:04:31,228.228 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:04:31,251.251 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:04:31,299.299 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:04:31,300.300 INFO    ] No camera update needed
[2026-06-27 20:04:31,302.302 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:04:31,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:04:31,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:04:31,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:04:33,342.342 INFO    ] ================================================
[2026-06-27 20:04:33,357.357 INFO    ] Launching Daemon at Sat Jun 27 20:04:33 IST 2026
[2026-06-27 20:04:33,368.368 INFO    ] ================================================
[2026-06-27 20:04:33,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:04:33
[2026-06-27 20:04:34,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:04:34,226.226 INFO    ] Initializing speech engine...
[2026-06-27 20:04:34,236.236 INFO    ] 2026-06-27 20:04:34
[2026-06-27 20:04:34,443.443 INFO    ] 2026-06-27 20:04:34
[2026-06-27 20:04:34,472.472 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:04:34,612.612 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:04:34,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:04:34,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:04:34,860.860 INFO    ] time= 27/06/2026 20:04:34
[2026-06-27 20:04:34,899.899 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:04:34,924.924 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:04:35,023.023 INFO    ] No existing commands found in stream
[2026-06-27 20:04:40,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:04:40,038.038 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-27 20:04:42,450.450 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:04:42,451.451 INFO    ] Checking for system updates...
[2026-06-27 20:04:42,473.473 INFO    ] 200
[2026-06-27 20:04:42,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:04:42,506.506 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:04:42,508.508 INFO    ] No update needed
[2026-06-27 20:04:42,509.509 INFO    ] Checking for camera pi updates...
[2026-06-27 20:04:42,530.530 INFO    ] 200
[2026-06-27 20:04:42,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:04:42,555.555 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:04:42,611.611 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:04:42,613.613 INFO    ] No camera update needed
[2026-06-27 20:04:42,615.615 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:04:42,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:04:42,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:04:42,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:04:44,667.667 INFO    ] ================================================
[2026-06-27 20:04:44,682.682 INFO    ] Launching Daemon at Sat Jun 27 20:04:44 IST 2026
[2026-06-27 20:04:44,693.693 INFO    ] ================================================
[2026-06-27 20:04:45,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:04:45
[2026-06-27 20:04:45,401.401 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:04:45,552.552 INFO    ] Initializing speech engine...
[2026-06-27 20:04:45,558.558 INFO    ] 2026-06-27 20:04:45
[2026-06-27 20:04:45,768.768 INFO    ] 2026-06-27 20:04:45
[2026-06-27 20:04:45,797.797 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:04:45,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:04:45,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:04:46,049.049 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:04:46,051.051 INFO    ] time= 27/06/2026 20:04:46
[2026-06-27 20:04:46,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:04:46,053.053 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:04:46,145.145 INFO    ] No existing commands found in stream
[2026-06-27 20:04:51,179.179 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:04:51,183.183 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-27 20:04:54,063.063 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 20:04:54,064.064 INFO    ] Checking for system updates...
[2026-06-27 20:04:54,086.086 INFO    ] 200
[2026-06-27 20:04:54,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:04:54,120.120 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:04:54,121.121 INFO    ] No update needed
[2026-06-27 20:04:54,122.122 INFO    ] Checking for camera pi updates...
[2026-06-27 20:04:54,144.144 INFO    ] 200
[2026-06-27 20:04:54,146.146 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:04:54,169.169 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:04:54,244.244 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:04:54,246.246 INFO    ] No camera update needed
[2026-06-27 20:04:54,247.247 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:04:54,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:04:54,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:04:54,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:04:56,293.293 INFO    ] ================================================
[2026-06-27 20:04:56,308.308 INFO    ] Launching Daemon at Sat Jun 27 20:04:56 IST 2026
[2026-06-27 20:04:56,320.320 INFO    ] ================================================
[2026-06-27 20:04:56,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:04:56
[2026-06-27 20:04:56,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:04:57,095.095 INFO    ] Initializing speech engine...
[2026-06-27 20:04:57,100.100 INFO    ] 2026-06-27 20:04:57
[2026-06-27 20:04:57,319.319 INFO    ] 2026-06-27 20:04:57
[2026-06-27 20:04:57,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:04:57,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:04:57,536.536 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:04:57,730.730 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:04:57,769.769 INFO    ] time= 27/06/2026 20:04:57
[2026-06-27 20:04:57,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:04:57,782.782 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:04:57,852.852 INFO    ] No existing commands found in stream
[2026-06-27 20:05:02,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:05:02,863.863 INFO    ] Waiting 2.02 seconds before fallback handling...
[2026-06-27 20:05:05,329.329 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 20:05:05,330.330 INFO    ] Checking for system updates...
[2026-06-27 20:05:05,352.352 INFO    ] 200
[2026-06-27 20:05:05,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:05:05,384.384 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:05:05,385.385 INFO    ] No update needed
[2026-06-27 20:05:05,387.387 INFO    ] Checking for camera pi updates...
[2026-06-27 20:05:05,407.407 INFO    ] 200
[2026-06-27 20:05:05,409.409 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:05:05,435.435 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:05:05,485.485 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:05:05,486.486 INFO    ] No camera update needed
[2026-06-27 20:05:05,487.487 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:05:05,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:05:05,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:05:05,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:05:07,534.534 INFO    ] ================================================
[2026-06-27 20:05:07,550.550 INFO    ] Launching Daemon at Sat Jun 27 20:05:07 IST 2026
[2026-06-27 20:05:07,561.561 INFO    ] ================================================
[2026-06-27 20:05:07,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:05:07
[2026-06-27 20:05:08,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:05:08,391.391 INFO    ] Initializing speech engine...
[2026-06-27 20:05:08,396.396 INFO    ] 2026-06-27 20:05:08
[2026-06-27 20:05:08,603.603 INFO    ] 2026-06-27 20:05:08
[2026-06-27 20:05:08,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:05:08,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:05:08,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:05:08,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:05:09,033.033 INFO    ] time= 27/06/2026 20:05:08
[2026-06-27 20:05:09,072.072 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:05:09,081.081 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:05:09,180.180 INFO    ] No existing commands found in stream
[2026-06-27 20:05:14,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:05:14,194.194 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-27 20:05:16,405.405 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 20:05:16,407.407 INFO    ] Checking for system updates...
[2026-06-27 20:05:16,428.428 INFO    ] 200
[2026-06-27 20:05:16,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:05:16,460.460 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:05:16,462.462 INFO    ] No update needed
[2026-06-27 20:05:16,463.463 INFO    ] Checking for camera pi updates...
[2026-06-27 20:05:16,483.483 INFO    ] 200
[2026-06-27 20:05:16,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:05:16,508.508 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:05:16,550.550 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:05:16,552.552 INFO    ] No camera update needed
[2026-06-27 20:05:16,554.554 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:05:16,556.556 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:05:16,559.559 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:05:16,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:05:18,603.603 INFO    ] ================================================
[2026-06-27 20:05:18,619.619 INFO    ] Launching Daemon at Sat Jun 27 20:05:18 IST 2026
[2026-06-27 20:05:18,630.630 INFO    ] ================================================
[2026-06-27 20:05:18,966.966 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:05:18
[2026-06-27 20:05:19,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:05:19,410.410 INFO    ] Initializing speech engine...
[2026-06-27 20:05:19,423.423 INFO    ] 2026-06-27 20:05:19
[2026-06-27 20:05:19,631.631 INFO    ] 2026-06-27 20:05:19
[2026-06-27 20:05:19,661.661 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:05:19,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:05:19,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:05:19,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:05:20,039.039 INFO    ] time= 27/06/2026 20:05:19
[2026-06-27 20:05:20,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:05:20,090.090 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:05:20,165.165 INFO    ] No existing commands found in stream
[2026-06-27 20:05:25,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:05:25,179.179 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-27 20:05:27,123.123 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 20:05:27,125.125 INFO    ] Checking for system updates...
[2026-06-27 20:05:27,146.146 INFO    ] 200
[2026-06-27 20:05:27,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:05:27,179.179 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:05:27,181.181 INFO    ] No update needed
[2026-06-27 20:05:27,182.182 INFO    ] Checking for camera pi updates...
[2026-06-27 20:05:27,201.201 INFO    ] 200
[2026-06-27 20:05:27,203.203 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:05:27,226.226 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:05:27,272.272 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:05:27,274.274 INFO    ] No camera update needed
[2026-06-27 20:05:27,275.275 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:05:27,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:05:27,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:05:27,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:05:29,321.321 INFO    ] ================================================
[2026-06-27 20:05:29,336.336 INFO    ] Launching Daemon at Sat Jun 27 20:05:29 IST 2026
[2026-06-27 20:05:29,346.346 INFO    ] ================================================
[2026-06-27 20:05:29,730.730 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:05:29
[2026-06-27 20:05:30,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:05:30,191.191 INFO    ] Initializing speech engine...
[2026-06-27 20:05:30,195.195 INFO    ] 2026-06-27 20:05:30
[2026-06-27 20:05:30,424.424 INFO    ] 2026-06-27 20:05:30
[2026-06-27 20:05:30,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:05:30,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:05:30,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:05:30,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:05:30,852.852 INFO    ] time= 27/06/2026 20:05:30
[2026-06-27 20:05:30,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:05:30,881.881 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:05:30,953.953 INFO    ] No existing commands found in stream
[2026-06-27 20:05:35,967.967 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:05:35,970.970 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-27 20:05:37,374.374 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 20:05:37,376.376 INFO    ] Checking for system updates...
[2026-06-27 20:05:37,397.397 INFO    ] 200
[2026-06-27 20:05:37,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:05:37,429.429 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:05:37,430.430 INFO    ] No update needed
[2026-06-27 20:05:37,431.431 INFO    ] Checking for camera pi updates...
[2026-06-27 20:05:37,451.451 INFO    ] 200
[2026-06-27 20:05:37,453.453 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:05:37,476.476 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:05:37,521.521 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:05:37,523.523 INFO    ] No camera update needed
[2026-06-27 20:05:37,524.524 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:05:37,525.525 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:05:37,528.528 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:05:37,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:05:39,572.572 INFO    ] ================================================
[2026-06-27 20:05:39,588.588 INFO    ] Launching Daemon at Sat Jun 27 20:05:39 IST 2026
[2026-06-27 20:05:39,600.600 INFO    ] ================================================
[2026-06-27 20:05:39,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:05:39
[2026-06-27 20:05:40,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:05:40,402.402 INFO    ] Initializing speech engine...
[2026-06-27 20:05:40,414.414 INFO    ] 2026-06-27 20:05:40
[2026-06-27 20:05:40,622.622 INFO    ] 2026-06-27 20:05:40
[2026-06-27 20:05:40,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:05:40,834.834 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:05:40,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:05:40,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:05:41,039.039 INFO    ] time= 27/06/2026 20:05:41
[2026-06-27 20:05:41,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:05:41,068.068 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:05:41,133.133 INFO    ] No existing commands found in stream
[2026-06-27 20:05:46,144.144 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:05:46,147.147 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-27 20:05:47,539.539 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 20:05:47,540.540 INFO    ] Checking for system updates...
[2026-06-27 20:05:47,561.561 INFO    ] 200
[2026-06-27 20:05:47,562.562 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:05:47,592.592 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:05:47,594.594 INFO    ] No update needed
[2026-06-27 20:05:47,595.595 INFO    ] Checking for camera pi updates...
[2026-06-27 20:05:47,615.615 INFO    ] 200
[2026-06-27 20:05:47,617.617 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:05:47,640.640 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:05:47,694.694 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:05:47,696.696 INFO    ] No camera update needed
[2026-06-27 20:05:47,697.697 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:05:47,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:05:47,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:05:47,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:05:49,743.743 INFO    ] ================================================
[2026-06-27 20:05:49,759.759 INFO    ] Launching Daemon at Sat Jun 27 20:05:49 IST 2026
[2026-06-27 20:05:49,771.771 INFO    ] ================================================
[2026-06-27 20:05:50,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:05:50
[2026-06-27 20:05:50,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:05:50,567.567 INFO    ] Initializing speech engine...
[2026-06-27 20:05:50,575.575 INFO    ] 2026-06-27 20:05:50
[2026-06-27 20:05:50,787.787 INFO    ] 2026-06-27 20:05:50
[2026-06-27 20:05:50,820.820 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:05:51,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:05:51,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:05:51,154.154 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:05:51,212.212 INFO    ] time= 27/06/2026 20:05:51
[2026-06-27 20:05:51,235.235 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:05:51,241.241 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:05:51,308.308 INFO    ] No existing commands found in stream
[2026-06-27 20:05:56,322.322 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:05:56,325.325 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-27 20:05:59,772.772 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 20:05:59,774.774 INFO    ] Checking for system updates...
[2026-06-27 20:05:59,822.822 INFO    ] 200
[2026-06-27 20:05:59,824.824 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-27 20:05:59,826.826 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping update check
[2026-06-27 20:05:59,829.829 INFO    ] Checking for camera pi updates...
[2026-06-27 20:05:59,877.877 INFO    ] 200
[2026-06-27 20:05:59,880.880 INFO    ] {"msg": "Status of machine", "state": "STATE_HEALTH_CHECK", "status": true}
[2026-06-27 20:05:59,884.884 INFO    ] Machine not idle (state: STATE_HEALTH_CHECK), skipping camera update check
[2026-06-27 20:05:59,887.887 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:05:59,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:05:59,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:05:59,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:06:01,943.943 INFO    ] ================================================
[2026-06-27 20:06:01,954.954 INFO    ] Launching Daemon at Sat Jun 27 20:06:01 IST 2026
[2026-06-27 20:06:01,963.963 INFO    ] ================================================
[2026-06-27 20:06:02,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:06:02
[2026-06-27 20:06:02,662.662 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:06:02,796.796 INFO    ] Initializing speech engine...
[2026-06-27 20:06:02,808.808 INFO    ] 2026-06-27 20:06:02
[2026-06-27 20:06:03,019.019 INFO    ] 2026-06-27 20:06:02
[2026-06-27 20:06:03,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:06:03,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:06:03,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:06:03,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:06:03,427.427 INFO    ] time= 27/06/2026 20:06:03
[2026-06-27 20:06:03,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:06:03,484.484 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:06:03,561.561 INFO    ] No existing commands found in stream
[2026-06-27 20:06:08,570.570 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:06:08,573.573 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-27 20:06:10,616.616 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:06:10,618.618 INFO    ] Checking for system updates...
[2026-06-27 20:06:10,639.639 INFO    ] 200
[2026-06-27 20:06:10,641.641 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:06:10,671.671 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:06:10,673.673 INFO    ] No update needed
[2026-06-27 20:06:10,674.674 INFO    ] Checking for camera pi updates...
[2026-06-27 20:06:10,695.695 INFO    ] 200
[2026-06-27 20:06:10,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:06:10,720.720 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:06:10,869.869 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:06:10,870.870 INFO    ] No camera update needed
[2026-06-27 20:06:10,872.872 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:06:10,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:06:10,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:06:10,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:06:12,919.919 INFO    ] ================================================
[2026-06-27 20:06:12,936.936 INFO    ] Launching Daemon at Sat Jun 27 20:06:12 IST 2026
[2026-06-27 20:06:12,948.948 INFO    ] ================================================
[2026-06-27 20:06:13,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:06:13
[2026-06-27 20:06:13,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:06:13,740.740 INFO    ] Initializing speech engine...
[2026-06-27 20:06:13,745.745 INFO    ] 2026-06-27 20:06:13
[2026-06-27 20:06:13,974.974 INFO    ] 2026-06-27 20:06:13
[2026-06-27 20:06:14,005.005 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:06:14,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:06:14,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:06:14,297.297 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:06:14,351.351 INFO    ] time= 27/06/2026 20:06:14
[2026-06-27 20:06:14,378.378 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:06:14,434.434 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:06:14,533.533 INFO    ] No existing commands found in stream
[2026-06-27 20:06:19,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:06:19,547.547 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-27 20:06:23,764.764 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 20:06:23,766.766 INFO    ] Checking for system updates...
[2026-06-27 20:06:23,787.787 INFO    ] 200
[2026-06-27 20:06:23,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:06:23,818.818 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:06:23,820.820 INFO    ] No update needed
[2026-06-27 20:06:23,821.821 INFO    ] Checking for camera pi updates...
[2026-06-27 20:06:23,840.840 INFO    ] 200
[2026-06-27 20:06:23,841.841 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:06:23,865.865 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:06:23,908.908 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:06:23,910.910 INFO    ] No camera update needed
[2026-06-27 20:06:23,911.911 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:06:23,912.912 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:06:23,915.915 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:06:23,918.918 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:06:25,956.956 INFO    ] ================================================
[2026-06-27 20:06:25,971.971 INFO    ] Launching Daemon at Sat Jun 27 20:06:25 IST 2026
[2026-06-27 20:06:25,982.982 INFO    ] ================================================
[2026-06-27 20:06:26,319.319 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:06:26
[2026-06-27 20:06:26,632.632 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:06:26,780.780 INFO    ] Initializing speech engine...
[2026-06-27 20:06:26,785.785 INFO    ] 2026-06-27 20:06:26
[2026-06-27 20:06:27,004.004 INFO    ] 2026-06-27 20:06:26
[2026-06-27 20:06:27,034.034 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:06:27,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:06:27,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:06:27,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:06:27,467.467 INFO    ] time= 27/06/2026 20:06:27
[2026-06-27 20:06:27,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:06:27,492.492 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:06:27,564.564 INFO    ] No existing commands found in stream
[2026-06-27 20:06:32,573.573 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:06:32,576.576 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-27 20:06:36,364.364 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 20:06:36,366.366 INFO    ] Checking for system updates...
[2026-06-27 20:06:36,387.387 INFO    ] 200
[2026-06-27 20:06:36,388.388 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:06:36,419.419 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:06:36,420.420 INFO    ] No update needed
[2026-06-27 20:06:36,422.422 INFO    ] Checking for camera pi updates...
[2026-06-27 20:06:36,444.444 INFO    ] 200
[2026-06-27 20:06:36,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:06:36,468.468 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:06:36,516.516 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:06:36,517.517 INFO    ] No camera update needed
[2026-06-27 20:06:36,518.518 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:06:36,520.520 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:06:36,523.523 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:06:36,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:06:38,564.564 INFO    ] ================================================
[2026-06-27 20:06:38,580.580 INFO    ] Launching Daemon at Sat Jun 27 20:06:38 IST 2026
[2026-06-27 20:06:38,591.591 INFO    ] ================================================
[2026-06-27 20:06:38,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:06:38
[2026-06-27 20:06:39,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:06:39,405.405 INFO    ] Initializing speech engine...
[2026-06-27 20:06:39,415.415 INFO    ] 2026-06-27 20:06:39
[2026-06-27 20:06:39,620.620 INFO    ] 2026-06-27 20:06:39
[2026-06-27 20:06:39,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:06:39,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:06:39,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:06:39,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:06:40,016.016 INFO    ] time= 27/06/2026 20:06:39
[2026-06-27 20:06:40,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:06:40,063.063 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:06:40,134.134 INFO    ] No existing commands found in stream
[2026-06-27 20:06:45,138.138 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:06:45,141.141 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-27 20:06:48,998.998 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 20:06:48,999.999 INFO    ] Checking for system updates...
[2026-06-27 20:06:49,020.020 INFO    ] 200
[2026-06-27 20:06:49,022.022 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:06:49,053.053 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:06:49,054.054 INFO    ] No update needed
[2026-06-27 20:06:49,056.056 INFO    ] Checking for camera pi updates...
[2026-06-27 20:06:49,076.076 INFO    ] 200
[2026-06-27 20:06:49,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:06:49,101.101 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:06:49,149.149 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:06:49,151.151 INFO    ] No camera update needed
[2026-06-27 20:06:49,152.152 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:06:49,154.154 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:06:49,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:06:49,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:06:51,199.199 INFO    ] ================================================
[2026-06-27 20:06:51,215.215 INFO    ] Launching Daemon at Sat Jun 27 20:06:51 IST 2026
[2026-06-27 20:06:51,226.226 INFO    ] ================================================
[2026-06-27 20:06:51,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:06:51
[2026-06-27 20:06:51,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:06:52,014.014 INFO    ] Initializing speech engine...
[2026-06-27 20:06:52,019.019 INFO    ] 2026-06-27 20:06:52
[2026-06-27 20:06:52,227.227 INFO    ] 2026-06-27 20:06:52
[2026-06-27 20:06:52,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:06:52,444.444 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:06:52,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:06:52,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:06:52,654.654 INFO    ] time= 27/06/2026 20:06:52
[2026-06-27 20:06:52,678.678 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:06:52,685.685 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:06:52,751.751 INFO    ] No existing commands found in stream
[2026-06-27 20:06:57,762.762 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:06:57,764.764 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-27 20:06:58,510.510 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 20:06:58,512.512 INFO    ] Checking for system updates...
[2026-06-27 20:06:58,532.532 INFO    ] 200
[2026-06-27 20:06:58,534.534 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:06:58,565.565 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:06:58,566.566 INFO    ] No update needed
[2026-06-27 20:06:58,568.568 INFO    ] Checking for camera pi updates...
[2026-06-27 20:06:58,587.587 INFO    ] 200
[2026-06-27 20:06:58,589.589 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:06:58,617.617 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:06:58,667.667 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:06:58,668.668 INFO    ] No camera update needed
[2026-06-27 20:06:58,670.670 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:06:58,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:06:58,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:06:58,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:07:00,716.716 INFO    ] ================================================
[2026-06-27 20:07:00,732.732 INFO    ] Launching Daemon at Sat Jun 27 20:07:00 IST 2026
[2026-06-27 20:07:00,742.742 INFO    ] ================================================
[2026-06-27 20:07:01,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:07:01
[2026-06-27 20:07:01,465.465 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:07:01,755.755 INFO    ] Initializing speech engine...
[2026-06-27 20:07:01,757.757 INFO    ] 2026-06-27 20:07:01
[2026-06-27 20:07:02,053.053 INFO    ] 2026-06-27 20:07:02
[2026-06-27 20:07:02,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:07:02,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:07:02,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:07:02,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:07:02,503.503 INFO    ] time= 27/06/2026 20:07:02
[2026-06-27 20:07:02,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:07:02,609.609 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:07:02,708.708 INFO    ] No existing commands found in stream
[2026-06-27 20:07:07,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:07:07,722.722 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-27 20:07:09,173.173 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 20:07:09,174.174 INFO    ] Checking for system updates...
[2026-06-27 20:07:09,195.195 INFO    ] 200
[2026-06-27 20:07:09,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:07:09,227.227 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:07:09,228.228 INFO    ] No update needed
[2026-06-27 20:07:09,230.230 INFO    ] Checking for camera pi updates...
[2026-06-27 20:07:09,249.249 INFO    ] 200
[2026-06-27 20:07:09,251.251 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:07:09,276.276 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:07:09,328.328 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:07:09,329.329 INFO    ] No camera update needed
[2026-06-27 20:07:09,330.330 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:07:09,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:07:09,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:07:09,337.337 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:07:11,377.377 INFO    ] ================================================
[2026-06-27 20:07:11,394.394 INFO    ] Launching Daemon at Sat Jun 27 20:07:11 IST 2026
[2026-06-27 20:07:11,405.405 INFO    ] ================================================
[2026-06-27 20:07:11,787.787 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:07:11
[2026-06-27 20:07:12,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:07:12,279.279 INFO    ] Initializing speech engine...
[2026-06-27 20:07:12,285.285 INFO    ] 2026-06-27 20:07:12
[2026-06-27 20:07:12,493.493 INFO    ] 2026-06-27 20:07:12
[2026-06-27 20:07:12,522.522 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:07:12,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:07:12,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:07:12,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:07:12,925.925 INFO    ] time= 27/06/2026 20:07:12
[2026-06-27 20:07:12,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:07:12,953.953 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:07:13,023.023 INFO    ] No existing commands found in stream
[2026-06-27 20:07:18,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:07:18,037.037 INFO    ] Waiting 2.12 seconds before fallback handling...
[2026-06-27 20:07:20,549.549 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:07:20,551.551 INFO    ] Checking for system updates...
[2026-06-27 20:07:20,572.572 INFO    ] 200
[2026-06-27 20:07:20,573.573 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:07:20,604.604 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:07:20,606.606 INFO    ] No update needed
[2026-06-27 20:07:20,607.607 INFO    ] Checking for camera pi updates...
[2026-06-27 20:07:20,627.627 INFO    ] 200
[2026-06-27 20:07:20,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:07:20,651.651 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:07:20,700.700 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:07:20,702.702 INFO    ] No camera update needed
[2026-06-27 20:07:20,703.703 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:07:20,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:07:20,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:07:20,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:07:22,748.748 INFO    ] ================================================
[2026-06-27 20:07:22,764.764 INFO    ] Launching Daemon at Sat Jun 27 20:07:22 IST 2026
[2026-06-27 20:07:22,776.776 INFO    ] ================================================
[2026-06-27 20:07:23,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:07:23
[2026-06-27 20:07:23,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:07:23,635.635 INFO    ] Initializing speech engine...
[2026-06-27 20:07:23,641.641 INFO    ] 2026-06-27 20:07:23
[2026-06-27 20:07:23,847.847 INFO    ] 2026-06-27 20:07:23
[2026-06-27 20:07:23,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:07:24,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:07:24,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:07:24,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:07:24,269.269 INFO    ] time= 27/06/2026 20:07:24
[2026-06-27 20:07:24,291.291 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:07:24,297.297 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:07:24,387.387 INFO    ] No existing commands found in stream
[2026-06-27 20:07:29,401.401 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:07:29,405.405 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-27 20:07:31,831.831 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:07:31,833.833 INFO    ] Checking for system updates...
[2026-06-27 20:07:31,862.862 INFO    ] 200
[2026-06-27 20:07:31,864.864 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:07:31,906.906 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:07:31,908.908 INFO    ] No update needed
[2026-06-27 20:07:31,909.909 INFO    ] Checking for camera pi updates...
[2026-06-27 20:07:31,936.936 INFO    ] 200
[2026-06-27 20:07:31,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:07:31,968.968 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:07:32,001.001 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:07:32,002.002 INFO    ] No camera update needed
[2026-06-27 20:07:32,004.004 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:07:32,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:07:32,010.010 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:07:32,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:07:34,054.054 INFO    ] ================================================
[2026-06-27 20:07:34,069.069 INFO    ] Launching Daemon at Sat Jun 27 20:07:34 IST 2026
[2026-06-27 20:07:34,080.080 INFO    ] ================================================
[2026-06-27 20:07:34,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:07:34
[2026-06-27 20:07:34,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:07:34,872.872 INFO    ] Initializing speech engine...
[2026-06-27 20:07:34,882.882 INFO    ] 2026-06-27 20:07:34
[2026-06-27 20:07:35,087.087 INFO    ] 2026-06-27 20:07:35
[2026-06-27 20:07:35,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:07:35,302.302 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:07:35,311.311 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:07:35,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:07:35,511.511 INFO    ] time= 27/06/2026 20:07:35
[2026-06-27 20:07:35,532.532 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:07:35,538.538 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:07:35,605.605 INFO    ] No existing commands found in stream
[2026-06-27 20:07:40,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:07:40,622.622 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-27 20:07:42,440.440 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 20:07:42,442.442 INFO    ] Checking for system updates...
[2026-06-27 20:07:42,463.463 INFO    ] 200
[2026-06-27 20:07:42,465.465 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:07:42,500.500 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:07:42,501.501 INFO    ] No update needed
[2026-06-27 20:07:42,502.502 INFO    ] Checking for camera pi updates...
[2026-06-27 20:07:42,525.525 INFO    ] 200
[2026-06-27 20:07:42,527.527 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:07:42,550.550 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:07:42,601.601 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:07:42,603.603 INFO    ] No camera update needed
[2026-06-27 20:07:42,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:07:42,606.606 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:07:42,609.609 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:07:42,612.612 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:07:44,652.652 INFO    ] ================================================
[2026-06-27 20:07:44,667.667 INFO    ] Launching Daemon at Sat Jun 27 20:07:44 IST 2026
[2026-06-27 20:07:44,678.678 INFO    ] ================================================
[2026-06-27 20:07:45,060.060 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:07:45
[2026-06-27 20:07:45,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:07:45,545.545 INFO    ] Initializing speech engine...
[2026-06-27 20:07:45,554.554 INFO    ] 2026-06-27 20:07:45
[2026-06-27 20:07:45,783.783 INFO    ] 2026-06-27 20:07:45
[2026-06-27 20:07:45,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:07:45,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:07:46,004.004 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:07:46,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:07:46,223.223 INFO    ] time= 27/06/2026 20:07:46
[2026-06-27 20:07:46,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:07:46,230.230 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:07:46,321.321 INFO    ] No existing commands found in stream
[2026-06-27 20:07:51,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:07:51,333.333 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-27 20:07:53,272.272 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 20:07:53,274.274 INFO    ] Checking for system updates...
[2026-06-27 20:07:53,296.296 INFO    ] 200
[2026-06-27 20:07:53,298.298 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:07:53,328.328 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:07:53,329.329 INFO    ] No update needed
[2026-06-27 20:07:53,331.331 INFO    ] Checking for camera pi updates...
[2026-06-27 20:07:53,350.350 INFO    ] 200
[2026-06-27 20:07:53,351.351 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:07:53,377.377 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:07:53,426.426 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:07:53,427.427 INFO    ] No camera update needed
[2026-06-27 20:07:53,428.428 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:07:53,430.430 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:07:53,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:07:53,436.436 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:07:55,473.473 INFO    ] ================================================
[2026-06-27 20:07:55,488.488 INFO    ] Launching Daemon at Sat Jun 27 20:07:55 IST 2026
[2026-06-27 20:07:55,499.499 INFO    ] ================================================
[2026-06-27 20:07:55,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:07:55
[2026-06-27 20:07:56,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:07:56,354.354 INFO    ] Initializing speech engine...
[2026-06-27 20:07:56,358.358 INFO    ] 2026-06-27 20:07:56
[2026-06-27 20:07:56,564.564 INFO    ] 2026-06-27 20:07:56
[2026-06-27 20:07:56,593.593 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:07:56,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:07:56,779.779 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:07:56,915.915 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:07:56,981.981 INFO    ] time= 27/06/2026 20:07:56
[2026-06-27 20:07:57,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:07:57,012.012 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:07:57,127.127 INFO    ] No existing commands found in stream
[2026-06-27 20:08:02,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:08:02,148.148 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-27 20:08:04,913.913 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 20:08:04,914.914 INFO    ] Checking for system updates...
[2026-06-27 20:08:04,936.936 INFO    ] 200
[2026-06-27 20:08:04,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:08:04,970.970 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:08:04,972.972 INFO    ] No update needed
[2026-06-27 20:08:04,973.973 INFO    ] Checking for camera pi updates...
[2026-06-27 20:08:04,996.996 INFO    ] 200
[2026-06-27 20:08:04,997.997 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:08:05,021.021 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:08:05,071.071 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:08:05,073.073 INFO    ] No camera update needed
[2026-06-27 20:08:05,074.074 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:08:05,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:08:05,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:08:05,082.082 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:08:07,120.120 INFO    ] ================================================
[2026-06-27 20:08:07,136.136 INFO    ] Launching Daemon at Sat Jun 27 20:08:07 IST 2026
[2026-06-27 20:08:07,146.146 INFO    ] ================================================
[2026-06-27 20:08:07,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:08:07
[2026-06-27 20:08:07,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:08:07,965.965 INFO    ] Initializing speech engine...
[2026-06-27 20:08:07,970.970 INFO    ] 2026-06-27 20:08:07
[2026-06-27 20:08:08,174.174 INFO    ] 2026-06-27 20:08:08
[2026-06-27 20:08:08,202.202 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:08:08,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:08:08,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:08:08,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:08:08,596.596 INFO    ] time= 27/06/2026 20:08:08
[2026-06-27 20:08:08,619.619 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:08:08,626.626 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:08:08,716.716 INFO    ] No existing commands found in stream
[2026-06-27 20:08:13,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:08:13,727.727 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-27 20:08:15,478.478 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 20:08:15,479.479 INFO    ] Checking for system updates...
[2026-06-27 20:08:15,501.501 INFO    ] 200
[2026-06-27 20:08:15,502.502 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:08:15,533.533 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:08:15,534.534 INFO    ] No update needed
[2026-06-27 20:08:15,536.536 INFO    ] Checking for camera pi updates...
[2026-06-27 20:08:15,557.557 INFO    ] 200
[2026-06-27 20:08:15,559.559 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:08:15,586.586 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:08:15,732.732 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:08:15,733.733 INFO    ] No camera update needed
[2026-06-27 20:08:15,735.735 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:08:15,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:08:15,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:08:15,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:08:17,781.781 INFO    ] ================================================
[2026-06-27 20:08:17,797.797 INFO    ] Launching Daemon at Sat Jun 27 20:08:17 IST 2026
[2026-06-27 20:08:17,809.809 INFO    ] ================================================
[2026-06-27 20:08:18,182.182 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:08:18
[2026-06-27 20:08:18,494.494 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:08:18,636.636 INFO    ] Initializing speech engine...
[2026-06-27 20:08:18,641.641 INFO    ] 2026-06-27 20:08:18
[2026-06-27 20:08:18,844.844 INFO    ] 2026-06-27 20:08:18
[2026-06-27 20:08:18,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:08:19,004.004 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:08:19,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:08:19,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:08:19,253.253 INFO    ] time= 27/06/2026 20:08:19
[2026-06-27 20:08:19,285.285 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:08:19,291.291 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:08:19,355.355 INFO    ] No existing commands found in stream
[2026-06-27 20:08:24,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:08:24,369.369 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-27 20:08:25,233.233 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 20:08:25,235.235 INFO    ] Checking for system updates...
[2026-06-27 20:08:25,256.256 INFO    ] 200
[2026-06-27 20:08:25,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:08:25,288.288 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:08:25,290.290 INFO    ] No update needed
[2026-06-27 20:08:25,291.291 INFO    ] Checking for camera pi updates...
[2026-06-27 20:08:25,312.312 INFO    ] 200
[2026-06-27 20:08:25,313.313 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:08:25,338.338 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:08:25,390.390 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:08:25,396.396 INFO    ] No camera update needed
[2026-06-27 20:08:25,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:08:25,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:08:25,402.402 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:08:25,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:08:27,446.446 INFO    ] ================================================
[2026-06-27 20:08:27,462.462 INFO    ] Launching Daemon at Sat Jun 27 20:08:27 IST 2026
[2026-06-27 20:08:27,473.473 INFO    ] ================================================
[2026-06-27 20:08:27,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:08:27
[2026-06-27 20:08:28,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:08:28,256.256 INFO    ] Initializing speech engine...
[2026-06-27 20:08:28,261.261 INFO    ] 2026-06-27 20:08:28
[2026-06-27 20:08:28,480.480 INFO    ] 2026-06-27 20:08:28
[2026-06-27 20:08:28,509.509 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:08:28,696.696 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:08:28,704.704 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:08:28,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:08:28,926.926 INFO    ] time= 27/06/2026 20:08:28
[2026-06-27 20:08:28,928.928 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:08:28,933.933 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:08:28,999.999 INFO    ] No existing commands found in stream
[2026-06-27 20:08:34,010.010 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:08:34,012.012 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-27 20:08:37,014.014 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 20:08:37,016.016 INFO    ] Checking for system updates...
[2026-06-27 20:08:37,037.037 INFO    ] 200
[2026-06-27 20:08:37,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:08:37,070.070 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:08:37,072.072 INFO    ] No update needed
[2026-06-27 20:08:37,073.073 INFO    ] Checking for camera pi updates...
[2026-06-27 20:08:37,092.092 INFO    ] 200
[2026-06-27 20:08:37,094.094 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:08:37,117.117 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:08:37,167.167 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:08:37,168.168 INFO    ] No camera update needed
[2026-06-27 20:08:37,170.170 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:08:37,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:08:37,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:08:37,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:08:39,217.217 INFO    ] ================================================
[2026-06-27 20:08:39,232.232 INFO    ] Launching Daemon at Sat Jun 27 20:08:39 IST 2026
[2026-06-27 20:08:39,244.244 INFO    ] ================================================
[2026-06-27 20:08:39,625.625 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:08:39
[2026-06-27 20:08:39,957.957 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:08:40,107.107 INFO    ] Initializing speech engine...
[2026-06-27 20:08:40,113.113 INFO    ] 2026-06-27 20:08:40
[2026-06-27 20:08:40,323.323 INFO    ] 2026-06-27 20:08:40
[2026-06-27 20:08:40,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:08:40,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:08:40,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:08:40,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:08:40,754.754 INFO    ] time= 27/06/2026 20:08:40
[2026-06-27 20:08:40,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:08:40,782.782 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:08:40,875.875 INFO    ] No existing commands found in stream
[2026-06-27 20:08:45,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:08:45,887.887 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-27 20:08:46,430.430 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 20:08:46,431.431 INFO    ] Checking for system updates...
[2026-06-27 20:08:46,454.454 INFO    ] 200
[2026-06-27 20:08:46,455.455 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:08:46,487.487 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:08:46,488.488 INFO    ] No update needed
[2026-06-27 20:08:46,490.490 INFO    ] Checking for camera pi updates...
[2026-06-27 20:08:46,509.509 INFO    ] 200
[2026-06-27 20:08:46,511.511 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:08:46,534.534 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:08:46,586.586 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:08:46,587.587 INFO    ] No camera update needed
[2026-06-27 20:08:46,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:08:46,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:08:46,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:08:46,596.596 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:08:48,635.635 INFO    ] ================================================
[2026-06-27 20:08:48,651.651 INFO    ] Launching Daemon at Sat Jun 27 20:08:48 IST 2026
[2026-06-27 20:08:48,662.662 INFO    ] ================================================
[2026-06-27 20:08:49,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:08:49
[2026-06-27 20:08:49,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:08:49,490.490 INFO    ] Initializing speech engine...
[2026-06-27 20:08:49,500.500 INFO    ] 2026-06-27 20:08:49
[2026-06-27 20:08:49,706.706 INFO    ] 2026-06-27 20:08:49
[2026-06-27 20:08:49,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:08:49,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:08:49,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:08:50,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:08:50,146.146 INFO    ] time= 27/06/2026 20:08:50
[2026-06-27 20:08:50,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:08:50,154.154 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:08:50,221.221 INFO    ] No existing commands found in stream
[2026-06-27 20:08:55,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:08:55,232.232 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-27 20:08:55,699.699 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 20:08:55,701.701 INFO    ] Checking for system updates...
[2026-06-27 20:08:55,724.724 INFO    ] 200
[2026-06-27 20:08:55,725.725 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:08:55,756.756 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:08:55,757.757 INFO    ] No update needed
[2026-06-27 20:08:55,758.758 INFO    ] Checking for camera pi updates...
[2026-06-27 20:08:55,779.779 INFO    ] 200
[2026-06-27 20:08:55,780.780 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:08:55,803.803 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:08:55,831.831 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:08:55,832.832 INFO    ] No camera update needed
[2026-06-27 20:08:55,834.834 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:08:55,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:08:55,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:08:55,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:08:57,880.880 INFO    ] ================================================
[2026-06-27 20:08:57,895.895 INFO    ] Launching Daemon at Sat Jun 27 20:08:57 IST 2026
[2026-06-27 20:08:57,906.906 INFO    ] ================================================
[2026-06-27 20:08:58,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:08:58
[2026-06-27 20:08:58,564.564 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:08:58,708.708 INFO    ] Initializing speech engine...
[2026-06-27 20:08:58,712.712 INFO    ] 2026-06-27 20:08:58
[2026-06-27 20:08:58,917.917 INFO    ] 2026-06-27 20:08:58
[2026-06-27 20:08:58,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:08:59,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:08:59,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:08:59,293.293 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:08:59,337.337 INFO    ] time= 27/06/2026 20:08:59
[2026-06-27 20:08:59,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:08:59,365.365 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:08:59,430.430 INFO    ] No existing commands found in stream
[2026-06-27 20:09:04,440.440 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:09:04,443.443 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-27 20:09:07,871.871 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 20:09:07,872.872 INFO    ] Checking for system updates...
[2026-06-27 20:09:07,893.893 INFO    ] 200
[2026-06-27 20:09:07,895.895 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:09:07,927.927 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:09:07,928.928 INFO    ] No update needed
[2026-06-27 20:09:07,930.930 INFO    ] Checking for camera pi updates...
[2026-06-27 20:09:07,949.949 INFO    ] 200
[2026-06-27 20:09:07,950.950 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:09:07,974.974 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:09:08,017.017 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:09:08,018.018 INFO    ] No camera update needed
[2026-06-27 20:09:08,019.019 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:09:08,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:09:08,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:09:08,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:09:10,067.067 INFO    ] ================================================
[2026-06-27 20:09:10,082.082 INFO    ] Launching Daemon at Sat Jun 27 20:09:10 IST 2026
[2026-06-27 20:09:10,093.093 INFO    ] ================================================
[2026-06-27 20:09:10,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:09:10
[2026-06-27 20:09:10,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:09:10,882.882 INFO    ] Initializing speech engine...
[2026-06-27 20:09:10,890.890 INFO    ] 2026-06-27 20:09:10
[2026-06-27 20:09:11,108.108 INFO    ] 2026-06-27 20:09:11
[2026-06-27 20:09:11,139.139 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:09:11,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:09:11,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:09:11,471.471 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:09:11,534.534 INFO    ] time= 27/06/2026 20:09:11
[2026-06-27 20:09:11,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:09:11,565.565 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:09:11,632.632 INFO    ] No existing commands found in stream
[2026-06-27 20:09:16,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:09:16,645.645 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-27 20:09:18,639.639 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 20:09:18,641.641 INFO    ] Checking for system updates...
[2026-06-27 20:09:18,675.675 INFO    ] 200
[2026-06-27 20:09:18,676.676 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:09:18,707.707 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:09:18,708.708 INFO    ] No update needed
[2026-06-27 20:09:18,709.709 INFO    ] Checking for camera pi updates...
[2026-06-27 20:09:18,729.729 INFO    ] 200
[2026-06-27 20:09:18,730.730 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:09:18,754.754 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:09:18,799.799 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:09:18,800.800 INFO    ] No camera update needed
[2026-06-27 20:09:18,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:09:18,803.803 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:09:18,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:09:18,809.809 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:09:20,847.847 INFO    ] ================================================
[2026-06-27 20:09:20,862.862 INFO    ] Launching Daemon at Sat Jun 27 20:09:20 IST 2026
[2026-06-27 20:09:20,874.874 INFO    ] ================================================
[2026-06-27 20:09:21,230.230 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:09:21
[2026-06-27 20:09:21,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:09:21,698.698 INFO    ] Initializing speech engine...
[2026-06-27 20:09:21,713.713 INFO    ] 2026-06-27 20:09:21
[2026-06-27 20:09:21,955.955 INFO    ] 2026-06-27 20:09:21
[2026-06-27 20:09:21,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:09:22,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:09:22,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:09:22,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:09:22,395.395 INFO    ] time= 27/06/2026 20:09:22
[2026-06-27 20:09:22,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:09:22,434.434 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:09:22,506.506 INFO    ] No existing commands found in stream
[2026-06-27 20:09:27,515.515 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:09:27,518.518 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-27 20:09:31,014.014 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 20:09:31,015.015 INFO    ] Checking for system updates...
[2026-06-27 20:09:31,036.036 INFO    ] 200
[2026-06-27 20:09:31,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:09:31,068.068 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:09:31,069.069 INFO    ] No update needed
[2026-06-27 20:09:31,070.070 INFO    ] Checking for camera pi updates...
[2026-06-27 20:09:31,092.092 INFO    ] 200
[2026-06-27 20:09:31,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:09:31,116.116 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:09:31,159.159 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:09:31,160.160 INFO    ] No camera update needed
[2026-06-27 20:09:31,161.161 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:09:31,162.162 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:09:31,165.165 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:09:31,168.168 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:09:33,200.200 INFO    ] ================================================
[2026-06-27 20:09:33,215.215 INFO    ] Launching Daemon at Sat Jun 27 20:09:33 IST 2026
[2026-06-27 20:09:33,227.227 INFO    ] ================================================
[2026-06-27 20:09:33,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:09:33
[2026-06-27 20:09:33,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:09:34,085.085 INFO    ] Initializing speech engine...
[2026-06-27 20:09:34,091.091 INFO    ] 2026-06-27 20:09:34
[2026-06-27 20:09:34,296.296 INFO    ] 2026-06-27 20:09:34
[2026-06-27 20:09:34,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:09:34,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:09:34,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:09:34,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:09:34,728.728 INFO    ] time= 27/06/2026 20:09:34
[2026-06-27 20:09:34,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:09:34,745.745 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:09:34,813.813 INFO    ] No existing commands found in stream
[2026-06-27 20:09:39,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:09:39,830.830 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-27 20:09:44,079.079 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 20:09:44,081.081 INFO    ] Checking for system updates...
[2026-06-27 20:09:44,104.104 INFO    ] 200
[2026-06-27 20:09:44,106.106 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:09:44,137.137 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:09:44,139.139 INFO    ] No update needed
[2026-06-27 20:09:44,140.140 INFO    ] Checking for camera pi updates...
[2026-06-27 20:09:44,165.165 INFO    ] 200
[2026-06-27 20:09:44,166.166 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:09:44,190.190 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:09:44,238.238 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:09:44,240.240 INFO    ] No camera update needed
[2026-06-27 20:09:44,241.241 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:09:44,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:09:44,245.245 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:09:44,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:09:46,287.287 INFO    ] ================================================
[2026-06-27 20:09:46,302.302 INFO    ] Launching Daemon at Sat Jun 27 20:09:46 IST 2026
[2026-06-27 20:09:46,314.314 INFO    ] ================================================
[2026-06-27 20:09:46,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:09:46
[2026-06-27 20:09:46,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:09:47,110.110 INFO    ] Initializing speech engine...
[2026-06-27 20:09:47,120.120 INFO    ] 2026-06-27 20:09:47
[2026-06-27 20:09:47,327.327 INFO    ] 2026-06-27 20:09:47
[2026-06-27 20:09:47,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:09:47,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:09:47,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:09:47,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:09:47,744.744 INFO    ] time= 27/06/2026 20:09:47
[2026-06-27 20:09:47,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:09:47,784.784 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:09:47,876.876 INFO    ] No existing commands found in stream
[2026-06-27 20:09:52,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:09:52,889.889 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-27 20:09:54,551.551 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 20:09:54,554.554 INFO    ] Checking for system updates...
[2026-06-27 20:09:54,591.591 INFO    ] 200
[2026-06-27 20:09:54,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:09:54,655.655 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:09:54,657.657 INFO    ] No update needed
[2026-06-27 20:09:54,660.660 INFO    ] Checking for camera pi updates...
[2026-06-27 20:09:54,694.694 INFO    ] 200
[2026-06-27 20:09:54,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:09:54,719.719 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:09:54,755.755 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:09:54,757.757 INFO    ] No camera update needed
[2026-06-27 20:09:54,758.758 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:09:54,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:09:54,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:09:54,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:09:56,804.804 INFO    ] ================================================
[2026-06-27 20:09:56,820.820 INFO    ] Launching Daemon at Sat Jun 27 20:09:56 IST 2026
[2026-06-27 20:09:56,831.831 INFO    ] ================================================
[2026-06-27 20:09:57,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:09:57
[2026-06-27 20:09:57,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:09:57,669.669 INFO    ] Initializing speech engine...
[2026-06-27 20:09:57,674.674 INFO    ] 2026-06-27 20:09:57
[2026-06-27 20:09:57,879.879 INFO    ] 2026-06-27 20:09:57
[2026-06-27 20:09:57,909.909 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:09:58,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:09:58,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:09:58,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:09:58,291.291 INFO    ] time= 27/06/2026 20:09:58
[2026-06-27 20:09:58,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:09:58,325.325 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:09:58,397.397 INFO    ] No existing commands found in stream
[2026-06-27 20:10:03,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:10:03,412.412 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-27 20:10:07,715.715 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:10:07,716.716 INFO    ] Checking for system updates...
[2026-06-27 20:10:07,737.737 INFO    ] 200
[2026-06-27 20:10:07,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:10:07,770.770 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:10:07,771.771 INFO    ] No update needed
[2026-06-27 20:10:07,773.773 INFO    ] Checking for camera pi updates...
[2026-06-27 20:10:07,794.794 INFO    ] 200
[2026-06-27 20:10:07,795.795 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:10:07,823.823 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:10:07,872.872 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:10:07,873.873 INFO    ] No camera update needed
[2026-06-27 20:10:07,875.875 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:10:07,876.876 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:10:07,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:10:07,883.883 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:10:09,925.925 INFO    ] ================================================
[2026-06-27 20:10:09,941.941 INFO    ] Launching Daemon at Sat Jun 27 20:10:09 IST 2026
[2026-06-27 20:10:09,952.952 INFO    ] ================================================
[2026-06-27 20:10:10,292.292 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:10:10
[2026-06-27 20:10:10,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:10:10,744.744 INFO    ] Initializing speech engine...
[2026-06-27 20:10:10,751.751 INFO    ] 2026-06-27 20:10:10
[2026-06-27 20:10:10,959.959 INFO    ] 2026-06-27 20:10:10
[2026-06-27 20:10:10,987.987 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:10:11,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:10:11,181.181 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:10:11,301.301 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:10:11,361.361 INFO    ] time= 27/06/2026 20:10:11
[2026-06-27 20:10:11,395.395 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:10:11,404.404 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:10:11,495.495 INFO    ] No existing commands found in stream
[2026-06-27 20:10:16,504.504 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:10:16,507.507 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-27 20:10:17,779.779 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 20:10:17,780.780 INFO    ] Checking for system updates...
[2026-06-27 20:10:17,802.802 INFO    ] 200
[2026-06-27 20:10:17,804.804 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:10:17,841.841 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:10:17,842.842 INFO    ] No update needed
[2026-06-27 20:10:17,844.844 INFO    ] Checking for camera pi updates...
[2026-06-27 20:10:17,866.866 INFO    ] 200
[2026-06-27 20:10:17,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:10:17,894.894 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:10:18,041.041 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:10:18,045.045 INFO    ] No camera update needed
[2026-06-27 20:10:18,047.047 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:10:18,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:10:18,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:10:18,062.062 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:10:20,104.104 INFO    ] ================================================
[2026-06-27 20:10:20,120.120 INFO    ] Launching Daemon at Sat Jun 27 20:10:20 IST 2026
[2026-06-27 20:10:20,131.131 INFO    ] ================================================
[2026-06-27 20:10:20,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:10:20
[2026-06-27 20:10:20,802.802 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:10:20,948.948 INFO    ] Initializing speech engine...
[2026-06-27 20:10:20,953.953 INFO    ] 2026-06-27 20:10:20
[2026-06-27 20:10:21,157.157 INFO    ] 2026-06-27 20:10:21
[2026-06-27 20:10:21,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:10:21,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:10:21,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:10:21,556.556 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:10:21,598.598 INFO    ] time= 27/06/2026 20:10:21
[2026-06-27 20:10:21,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:10:21,606.606 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:10:21,673.673 INFO    ] No existing commands found in stream
[2026-06-27 20:10:26,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:10:26,685.685 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-27 20:10:27,275.275 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:10:27,276.276 INFO    ] Checking for system updates...
[2026-06-27 20:10:27,297.297 INFO    ] 200
[2026-06-27 20:10:27,299.299 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:10:27,329.329 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:10:27,331.331 INFO    ] No update needed
[2026-06-27 20:10:27,332.332 INFO    ] Checking for camera pi updates...
[2026-06-27 20:10:27,353.353 INFO    ] 200
[2026-06-27 20:10:27,354.354 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:10:27,379.379 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:10:27,423.423 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:10:27,425.425 INFO    ] No camera update needed
[2026-06-27 20:10:27,426.426 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:10:27,427.427 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:10:27,430.430 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:10:27,434.434 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:10:29,475.475 INFO    ] ================================================
[2026-06-27 20:10:29,490.490 INFO    ] Launching Daemon at Sat Jun 27 20:10:29 IST 2026
[2026-06-27 20:10:29,501.501 INFO    ] ================================================
[2026-06-27 20:10:29,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:10:29
[2026-06-27 20:10:30,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:10:30,299.299 INFO    ] Initializing speech engine...
[2026-06-27 20:10:30,304.304 INFO    ] 2026-06-27 20:10:30
[2026-06-27 20:10:30,517.517 INFO    ] 2026-06-27 20:10:30
[2026-06-27 20:10:30,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:10:30,789.789 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:10:30,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:10:30,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:10:31,003.003 INFO    ] time= 27/06/2026 20:10:30
[2026-06-27 20:10:31,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:10:31,010.010 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:10:31,106.106 INFO    ] No existing commands found in stream
[2026-06-27 20:10:36,115.115 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:10:36,118.118 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-27 20:10:38,756.756 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:10:38,757.757 INFO    ] Checking for system updates...
[2026-06-27 20:10:38,778.778 INFO    ] 200
[2026-06-27 20:10:38,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:10:38,812.812 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:10:38,813.813 INFO    ] No update needed
[2026-06-27 20:10:38,814.814 INFO    ] Checking for camera pi updates...
[2026-06-27 20:10:38,835.835 INFO    ] 200
[2026-06-27 20:10:38,836.836 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:10:38,860.860 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:10:38,906.906 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:10:38,908.908 INFO    ] No camera update needed
[2026-06-27 20:10:38,909.909 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:10:38,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:10:38,913.913 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:10:38,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:10:40,954.954 INFO    ] ================================================
[2026-06-27 20:10:40,970.970 INFO    ] Launching Daemon at Sat Jun 27 20:10:40 IST 2026
[2026-06-27 20:10:40,986.986 INFO    ] ================================================
[2026-06-27 20:10:41,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:10:41
[2026-06-27 20:10:41,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:10:41,802.802 INFO    ] Initializing speech engine...
[2026-06-27 20:10:41,807.807 INFO    ] 2026-06-27 20:10:41
[2026-06-27 20:10:42,014.014 INFO    ] 2026-06-27 20:10:41
[2026-06-27 20:10:42,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:10:42,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:10:42,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:10:42,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:10:42,445.445 INFO    ] time= 27/06/2026 20:10:42
[2026-06-27 20:10:42,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:10:42,467.467 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:10:42,534.534 INFO    ] No existing commands found in stream
[2026-06-27 20:10:47,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:10:47,551.551 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-27 20:10:49,238.238 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 20:10:49,239.239 INFO    ] Checking for system updates...
[2026-06-27 20:10:49,260.260 INFO    ] 200
[2026-06-27 20:10:49,261.261 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:10:49,294.294 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:10:49,295.295 INFO    ] No update needed
[2026-06-27 20:10:49,296.296 INFO    ] Checking for camera pi updates...
[2026-06-27 20:10:49,316.316 INFO    ] 200
[2026-06-27 20:10:49,317.317 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:10:49,340.340 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:10:49,383.383 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:10:49,385.385 INFO    ] No camera update needed
[2026-06-27 20:10:49,386.386 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:10:49,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:10:49,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:10:49,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:10:51,433.433 INFO    ] ================================================
[2026-06-27 20:10:51,447.447 INFO    ] Launching Daemon at Sat Jun 27 20:10:51 IST 2026
[2026-06-27 20:10:51,458.458 INFO    ] ================================================
[2026-06-27 20:10:51,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:10:51
[2026-06-27 20:10:52,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:10:52,280.280 INFO    ] Initializing speech engine...
[2026-06-27 20:10:52,290.290 INFO    ] 2026-06-27 20:10:52
[2026-06-27 20:10:52,496.496 INFO    ] 2026-06-27 20:10:52
[2026-06-27 20:10:52,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:10:52,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:10:52,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:10:52,918.918 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:10:52,940.940 INFO    ] time= 27/06/2026 20:10:52
[2026-06-27 20:10:52,946.946 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:10:52,947.947 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:10:53,013.013 INFO    ] No existing commands found in stream
[2026-06-27 20:10:58,024.024 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:10:58,027.027 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-27 20:11:00,141.141 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 20:11:00,142.142 INFO    ] Checking for system updates...
[2026-06-27 20:11:00,163.163 INFO    ] 200
[2026-06-27 20:11:00,165.165 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:11:00,197.197 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:11:00,199.199 INFO    ] No update needed
[2026-06-27 20:11:00,200.200 INFO    ] Checking for camera pi updates...
[2026-06-27 20:11:00,221.221 INFO    ] 200
[2026-06-27 20:11:00,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:11:00,246.246 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:11:00,291.291 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:11:00,293.293 INFO    ] No camera update needed
[2026-06-27 20:11:00,294.294 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:11:00,296.296 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:11:00,299.299 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:11:00,302.302 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:11:02,338.338 INFO    ] ================================================
[2026-06-27 20:11:02,350.350 INFO    ] Launching Daemon at Sat Jun 27 20:11:02 IST 2026
[2026-06-27 20:11:02,359.359 INFO    ] ================================================
[2026-06-27 20:11:02,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:11:02
[2026-06-27 20:11:03,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:11:03,176.176 INFO    ] Initializing speech engine...
[2026-06-27 20:11:03,181.181 INFO    ] 2026-06-27 20:11:03
[2026-06-27 20:11:03,384.384 INFO    ] 2026-06-27 20:11:03
[2026-06-27 20:11:03,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:11:03,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:11:03,599.599 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:11:03,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:11:03,803.803 INFO    ] time= 27/06/2026 20:11:03
[2026-06-27 20:11:03,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:11:03,833.833 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:11:03,900.900 INFO    ] No existing commands found in stream
[2026-06-27 20:11:08,909.909 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:11:08,912.912 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-27 20:11:11,375.375 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 20:11:11,376.376 INFO    ] Checking for system updates...
[2026-06-27 20:11:11,398.398 INFO    ] 200
[2026-06-27 20:11:11,400.400 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:11:11,431.431 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:11:11,432.432 INFO    ] No update needed
[2026-06-27 20:11:11,434.434 INFO    ] Checking for camera pi updates...
[2026-06-27 20:11:11,454.454 INFO    ] 200
[2026-06-27 20:11:11,455.455 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:11:11,480.480 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:11:11,529.529 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:11:11,530.530 INFO    ] No camera update needed
[2026-06-27 20:11:11,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:11:11,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:11:11,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:11:11,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:11:13,582.582 INFO    ] ================================================
[2026-06-27 20:11:13,597.597 INFO    ] Launching Daemon at Sat Jun 27 20:11:13 IST 2026
[2026-06-27 20:11:13,607.607 INFO    ] ================================================
[2026-06-27 20:11:13,936.936 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:11:13
[2026-06-27 20:11:14,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:11:14,379.379 INFO    ] Initializing speech engine...
[2026-06-27 20:11:14,384.384 INFO    ] 2026-06-27 20:11:14
[2026-06-27 20:11:14,602.602 INFO    ] 2026-06-27 20:11:14
[2026-06-27 20:11:14,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:11:14,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:11:14,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:11:15,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:11:15,048.048 INFO    ] time= 27/06/2026 20:11:15
[2026-06-27 20:11:15,054.054 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:11:15,055.055 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:11:15,124.124 INFO    ] No existing commands found in stream
[2026-06-27 20:11:20,133.133 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:11:20,136.136 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-27 20:11:24,475.475 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:11:24,476.476 INFO    ] Checking for system updates...
[2026-06-27 20:11:24,497.497 INFO    ] 200
[2026-06-27 20:11:24,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:11:24,529.529 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:11:24,531.531 INFO    ] No update needed
[2026-06-27 20:11:24,532.532 INFO    ] Checking for camera pi updates...
[2026-06-27 20:11:24,552.552 INFO    ] 200
[2026-06-27 20:11:24,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:11:24,578.578 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:11:24,622.622 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:11:24,624.624 INFO    ] No camera update needed
[2026-06-27 20:11:24,625.625 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:11:24,627.627 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:11:24,630.630 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:11:24,633.633 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:11:26,673.673 INFO    ] ================================================
[2026-06-27 20:11:26,689.689 INFO    ] Launching Daemon at Sat Jun 27 20:11:26 IST 2026
[2026-06-27 20:11:26,700.700 INFO    ] ================================================
[2026-06-27 20:11:27,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:11:27
[2026-06-27 20:11:27,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:11:27,486.486 INFO    ] Initializing speech engine...
[2026-06-27 20:11:27,491.491 INFO    ] 2026-06-27 20:11:27
[2026-06-27 20:11:27,697.697 INFO    ] 2026-06-27 20:11:27
[2026-06-27 20:11:27,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:11:27,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:11:27,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:11:28,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:11:28,123.123 INFO    ] time= 27/06/2026 20:11:28
[2026-06-27 20:11:28,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:11:28,151.151 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:11:28,218.218 INFO    ] No existing commands found in stream
[2026-06-27 20:11:33,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:11:33,232.232 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-27 20:11:34,331.331 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 20:11:34,332.332 INFO    ] Checking for system updates...
[2026-06-27 20:11:34,353.353 INFO    ] 200
[2026-06-27 20:11:34,355.355 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:11:34,386.386 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:11:34,387.387 INFO    ] No update needed
[2026-06-27 20:11:34,389.389 INFO    ] Checking for camera pi updates...
[2026-06-27 20:11:34,410.410 INFO    ] 200
[2026-06-27 20:11:34,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:11:34,437.437 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:11:34,481.481 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:11:34,483.483 INFO    ] No camera update needed
[2026-06-27 20:11:34,484.484 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:11:34,486.486 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:11:34,489.489 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:11:34,492.492 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:11:36,532.532 INFO    ] ================================================
[2026-06-27 20:11:36,547.547 INFO    ] Launching Daemon at Sat Jun 27 20:11:36 IST 2026
[2026-06-27 20:11:36,558.558 INFO    ] ================================================
[2026-06-27 20:11:36,923.923 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:11:36
[2026-06-27 20:11:37,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:11:37,385.385 INFO    ] Initializing speech engine...
[2026-06-27 20:11:37,389.389 INFO    ] 2026-06-27 20:11:37
[2026-06-27 20:11:37,595.595 INFO    ] 2026-06-27 20:11:37
[2026-06-27 20:11:37,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:11:37,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:11:37,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:11:38,011.011 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:11:38,034.034 INFO    ] time= 27/06/2026 20:11:38
[2026-06-27 20:11:38,039.039 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:11:38,041.041 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:11:38,132.132 INFO    ] No existing commands found in stream
[2026-06-27 20:11:43,141.141 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:11:43,144.144 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-27 20:11:46,188.188 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 20:11:46,190.190 INFO    ] Checking for system updates...
[2026-06-27 20:11:46,211.211 INFO    ] 200
[2026-06-27 20:11:46,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:11:46,246.246 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:11:46,247.247 INFO    ] No update needed
[2026-06-27 20:11:46,248.248 INFO    ] Checking for camera pi updates...
[2026-06-27 20:11:46,277.277 INFO    ] 200
[2026-06-27 20:11:46,278.278 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:11:46,304.304 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:11:46,351.351 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:11:46,352.352 INFO    ] No camera update needed
[2026-06-27 20:11:46,354.354 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:11:46,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:11:46,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:11:46,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:11:48,400.400 INFO    ] ================================================
[2026-06-27 20:11:48,416.416 INFO    ] Launching Daemon at Sat Jun 27 20:11:48 IST 2026
[2026-06-27 20:11:48,427.427 INFO    ] ================================================
[2026-06-27 20:11:48,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:11:48
[2026-06-27 20:11:49,102.102 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:11:49,242.242 INFO    ] Initializing speech engine...
[2026-06-27 20:11:49,252.252 INFO    ] 2026-06-27 20:11:49
[2026-06-27 20:11:49,454.454 INFO    ] 2026-06-27 20:11:49
[2026-06-27 20:11:49,482.482 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:11:49,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:11:49,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:11:49,813.813 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:11:49,874.874 INFO    ] time= 27/06/2026 20:11:49
[2026-06-27 20:11:49,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:11:49,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:11:49,970.970 INFO    ] No existing commands found in stream
[2026-06-27 20:11:54,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:11:54,987.987 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-27 20:11:56,056.056 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 20:11:56,057.057 INFO    ] Checking for system updates...
[2026-06-27 20:11:56,078.078 INFO    ] 200
[2026-06-27 20:11:56,080.080 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:11:56,110.110 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:11:56,111.111 INFO    ] No update needed
[2026-06-27 20:11:56,112.112 INFO    ] Checking for camera pi updates...
[2026-06-27 20:11:56,135.135 INFO    ] 200
[2026-06-27 20:11:56,136.136 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:11:56,159.159 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:11:56,194.194 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:11:56,195.195 INFO    ] No camera update needed
[2026-06-27 20:11:56,196.196 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:11:56,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:11:56,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:11:56,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:11:58,244.244 INFO    ] ================================================
[2026-06-27 20:11:58,259.259 INFO    ] Launching Daemon at Sat Jun 27 20:11:58 IST 2026
[2026-06-27 20:11:58,269.269 INFO    ] ================================================
[2026-06-27 20:11:58,635.635 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:11:58
[2026-06-27 20:11:58,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:11:59,093.093 INFO    ] Initializing speech engine...
[2026-06-27 20:11:59,098.098 INFO    ] 2026-06-27 20:11:59
[2026-06-27 20:11:59,302.302 INFO    ] 2026-06-27 20:11:59
[2026-06-27 20:11:59,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:11:59,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:11:59,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:11:59,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:11:59,738.738 INFO    ] time= 27/06/2026 20:11:59
[2026-06-27 20:11:59,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:11:59,749.749 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:11:59,840.840 INFO    ] No existing commands found in stream
[2026-06-27 20:12:04,854.854 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:12:04,857.857 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-27 20:12:08,986.986 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 20:12:08,988.988 INFO    ] Checking for system updates...
[2026-06-27 20:12:09,008.008 INFO    ] 200
[2026-06-27 20:12:09,009.009 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:12:09,042.042 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:12:09,043.043 INFO    ] No update needed
[2026-06-27 20:12:09,045.045 INFO    ] Checking for camera pi updates...
[2026-06-27 20:12:09,066.066 INFO    ] 200
[2026-06-27 20:12:09,067.067 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:12:09,092.092 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:12:09,137.137 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:12:09,138.138 INFO    ] No camera update needed
[2026-06-27 20:12:09,140.140 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:12:09,141.141 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:12:09,144.144 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:12:09,147.147 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:12:11,185.185 INFO    ] ================================================
[2026-06-27 20:12:11,200.200 INFO    ] Launching Daemon at Sat Jun 27 20:12:11 IST 2026
[2026-06-27 20:12:11,211.211 INFO    ] ================================================
[2026-06-27 20:12:11,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:12:11
[2026-06-27 20:12:11,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:12:12,026.026 INFO    ] Initializing speech engine...
[2026-06-27 20:12:12,031.031 INFO    ] 2026-06-27 20:12:12
[2026-06-27 20:12:12,239.239 INFO    ] 2026-06-27 20:12:12
[2026-06-27 20:12:12,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:12:12,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:12:12,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:12:12,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:12:12,662.662 INFO    ] time= 27/06/2026 20:12:12
[2026-06-27 20:12:12,687.687 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:12:12,693.693 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:12:12,761.761 INFO    ] No existing commands found in stream
[2026-06-27 20:12:17,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:12:17,778.778 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-27 20:12:21,425.425 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 20:12:21,426.426 INFO    ] Checking for system updates...
[2026-06-27 20:12:21,447.447 INFO    ] 200
[2026-06-27 20:12:21,448.448 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:12:21,481.481 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:12:21,482.482 INFO    ] No update needed
[2026-06-27 20:12:21,483.483 INFO    ] Checking for camera pi updates...
[2026-06-27 20:12:21,503.503 INFO    ] 200
[2026-06-27 20:12:21,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:12:21,530.530 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:12:21,682.682 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:12:21,684.684 INFO    ] No camera update needed
[2026-06-27 20:12:21,685.685 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:12:21,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:12:21,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:12:21,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:12:23,731.731 INFO    ] ================================================
[2026-06-27 20:12:23,746.746 INFO    ] Launching Daemon at Sat Jun 27 20:12:23 IST 2026
[2026-06-27 20:12:23,757.757 INFO    ] ================================================
[2026-06-27 20:12:24,129.129 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:12:24
[2026-06-27 20:12:24,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:12:24,589.589 INFO    ] Initializing speech engine...
[2026-06-27 20:12:24,592.592 INFO    ] 2026-06-27 20:12:24
[2026-06-27 20:12:24,794.794 INFO    ] 2026-06-27 20:12:24
[2026-06-27 20:12:24,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:12:25,005.005 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:12:25,013.013 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:12:25,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:12:25,211.211 INFO    ] time= 27/06/2026 20:12:25
[2026-06-27 20:12:25,233.233 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:12:25,239.239 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:12:25,330.330 INFO    ] No existing commands found in stream
[2026-06-27 20:12:30,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:12:30,346.346 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-27 20:12:32,316.316 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 20:12:32,318.318 INFO    ] Checking for system updates...
[2026-06-27 20:12:32,343.343 INFO    ] 200
[2026-06-27 20:12:32,345.345 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:12:32,382.382 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:12:32,384.384 INFO    ] No update needed
[2026-06-27 20:12:32,386.386 INFO    ] Checking for camera pi updates...
[2026-06-27 20:12:32,410.410 INFO    ] 200
[2026-06-27 20:12:32,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:12:32,439.439 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:12:32,469.469 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:12:32,471.471 INFO    ] No camera update needed
[2026-06-27 20:12:32,473.473 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:12:32,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:12:32,478.478 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:12:32,481.481 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:12:34,513.513 INFO    ] ================================================
[2026-06-27 20:12:34,528.528 INFO    ] Launching Daemon at Sat Jun 27 20:12:34 IST 2026
[2026-06-27 20:12:34,539.539 INFO    ] ================================================
[2026-06-27 20:12:34,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:12:34
[2026-06-27 20:12:35,248.248 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:12:35,399.399 INFO    ] Initializing speech engine...
[2026-06-27 20:12:35,405.405 INFO    ] 2026-06-27 20:12:35
[2026-06-27 20:12:35,615.615 INFO    ] 2026-06-27 20:12:35
[2026-06-27 20:12:35,644.644 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:12:35,783.783 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:12:35,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:12:35,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:12:36,029.029 INFO    ] time= 27/06/2026 20:12:35
[2026-06-27 20:12:36,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:12:36,068.068 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:12:36,136.136 INFO    ] No existing commands found in stream
[2026-06-27 20:12:41,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:12:41,152.152 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-27 20:12:43,281.281 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 20:12:43,282.282 INFO    ] Checking for system updates...
[2026-06-27 20:12:43,304.304 INFO    ] 200
[2026-06-27 20:12:43,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:12:43,335.335 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:12:43,337.337 INFO    ] No update needed
[2026-06-27 20:12:43,338.338 INFO    ] Checking for camera pi updates...
[2026-06-27 20:12:43,361.361 INFO    ] 200
[2026-06-27 20:12:43,363.363 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:12:43,388.388 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:12:43,431.431 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:12:43,432.432 INFO    ] No camera update needed
[2026-06-27 20:12:43,433.433 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:12:43,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:12:43,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:12:43,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:12:45,479.479 INFO    ] ================================================
[2026-06-27 20:12:45,494.494 INFO    ] Launching Daemon at Sat Jun 27 20:12:45 IST 2026
[2026-06-27 20:12:45,504.504 INFO    ] ================================================
[2026-06-27 20:12:45,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:12:45
[2026-06-27 20:12:46,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:12:46,305.305 INFO    ] Initializing speech engine...
[2026-06-27 20:12:46,310.310 INFO    ] 2026-06-27 20:12:46
[2026-06-27 20:12:46,515.515 INFO    ] 2026-06-27 20:12:46
[2026-06-27 20:12:46,544.544 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:12:46,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:12:46,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:12:46,914.914 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:12:46,953.953 INFO    ] time= 27/06/2026 20:12:46
[2026-06-27 20:12:46,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:12:46,965.965 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:12:47,056.056 INFO    ] No existing commands found in stream
[2026-06-27 20:12:52,070.070 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:12:52,072.072 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-27 20:12:56,161.161 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 20:12:56,162.162 INFO    ] Checking for system updates...
[2026-06-27 20:12:56,183.183 INFO    ] 200
[2026-06-27 20:12:56,185.185 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:12:56,215.215 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:12:56,217.217 INFO    ] No update needed
[2026-06-27 20:12:56,218.218 INFO    ] Checking for camera pi updates...
[2026-06-27 20:12:56,239.239 INFO    ] 200
[2026-06-27 20:12:56,240.240 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:12:56,264.264 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:12:56,310.310 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:12:56,311.311 INFO    ] No camera update needed
[2026-06-27 20:12:56,312.312 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:12:56,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:12:56,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:12:56,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:12:58,359.359 INFO    ] ================================================
[2026-06-27 20:12:58,375.375 INFO    ] Launching Daemon at Sat Jun 27 20:12:58 IST 2026
[2026-06-27 20:12:58,385.385 INFO    ] ================================================
[2026-06-27 20:12:58,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:12:58
[2026-06-27 20:12:59,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:12:59,176.176 INFO    ] Initializing speech engine...
[2026-06-27 20:12:59,180.180 INFO    ] 2026-06-27 20:12:59
[2026-06-27 20:12:59,383.383 INFO    ] 2026-06-27 20:12:59
[2026-06-27 20:12:59,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:12:59,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:12:59,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:12:59,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:12:59,806.806 INFO    ] time= 27/06/2026 20:12:59
[2026-06-27 20:12:59,830.830 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:12:59,837.837 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:12:59,904.904 INFO    ] No existing commands found in stream
[2026-06-27 20:13:04,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:13:04,921.921 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-27 20:13:08,995.995 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 20:13:08,997.997 INFO    ] Checking for system updates...
[2026-06-27 20:13:09,022.022 INFO    ] 200
[2026-06-27 20:13:09,024.024 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:13:09,055.055 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:13:09,057.057 INFO    ] No update needed
[2026-06-27 20:13:09,058.058 INFO    ] Checking for camera pi updates...
[2026-06-27 20:13:09,078.078 INFO    ] 200
[2026-06-27 20:13:09,080.080 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:13:09,103.103 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:13:09,146.146 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:13:09,147.147 INFO    ] No camera update needed
[2026-06-27 20:13:09,149.149 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:13:09,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:13:09,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:13:09,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:13:11,195.195 INFO    ] ================================================
[2026-06-27 20:13:11,210.210 INFO    ] Launching Daemon at Sat Jun 27 20:13:11 IST 2026
[2026-06-27 20:13:11,221.221 INFO    ] ================================================
[2026-06-27 20:13:11,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:13:11
[2026-06-27 20:13:11,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:13:12,030.030 INFO    ] Initializing speech engine...
[2026-06-27 20:13:12,040.040 INFO    ] 2026-06-27 20:13:12
[2026-06-27 20:13:12,257.257 INFO    ] 2026-06-27 20:13:12
[2026-06-27 20:13:12,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:13:12,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:13:12,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:13:12,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:13:12,726.726 INFO    ] time= 27/06/2026 20:13:12
[2026-06-27 20:13:12,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:13:12,733.733 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:13:12,855.855 INFO    ] No existing commands found in stream
[2026-06-27 20:13:17,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:13:17,868.868 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-27 20:13:22,155.155 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 20:13:22,156.156 INFO    ] Checking for system updates...
[2026-06-27 20:13:22,178.178 INFO    ] 200
[2026-06-27 20:13:22,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:13:22,213.213 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:13:22,215.215 INFO    ] No update needed
[2026-06-27 20:13:22,216.216 INFO    ] Checking for camera pi updates...
[2026-06-27 20:13:22,236.236 INFO    ] 200
[2026-06-27 20:13:22,237.237 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:13:22,262.262 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:13:22,309.309 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:13:22,310.310 INFO    ] No camera update needed
[2026-06-27 20:13:22,312.312 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:13:22,313.313 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:13:22,316.316 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:13:22,319.319 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:13:24,357.357 INFO    ] ================================================
[2026-06-27 20:13:24,372.372 INFO    ] Launching Daemon at Sat Jun 27 20:13:24 IST 2026
[2026-06-27 20:13:24,383.383 INFO    ] ================================================
[2026-06-27 20:13:24,703.703 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:13:24
[2026-06-27 20:13:25,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:13:25,145.145 INFO    ] Initializing speech engine...
[2026-06-27 20:13:25,149.149 INFO    ] 2026-06-27 20:13:25
[2026-06-27 20:13:25,368.368 INFO    ] 2026-06-27 20:13:25
[2026-06-27 20:13:25,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:13:25,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:13:25,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:13:25,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:13:25,811.811 INFO    ] time= 27/06/2026 20:13:25
[2026-06-27 20:13:25,813.813 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:13:25,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:13:25,888.888 INFO    ] No existing commands found in stream
[2026-06-27 20:13:30,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:13:30,910.910 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-27 20:13:31,872.872 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 20:13:31,874.874 INFO    ] Checking for system updates...
[2026-06-27 20:13:31,900.900 INFO    ] 200
[2026-06-27 20:13:31,902.902 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:13:31,945.945 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:13:31,946.946 INFO    ] No update needed
[2026-06-27 20:13:31,948.948 INFO    ] Checking for camera pi updates...
[2026-06-27 20:13:31,970.970 INFO    ] 200
[2026-06-27 20:13:31,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:13:31,996.996 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:13:32,044.044 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:13:32,045.045 INFO    ] No camera update needed
[2026-06-27 20:13:32,046.046 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:13:32,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:13:32,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:13:32,053.053 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:13:34,092.092 INFO    ] ================================================
[2026-06-27 20:13:34,108.108 INFO    ] Launching Daemon at Sat Jun 27 20:13:34 IST 2026
[2026-06-27 20:13:34,120.120 INFO    ] ================================================
[2026-06-27 20:13:34,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:13:34
[2026-06-27 20:13:34,775.775 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:13:34,909.909 INFO    ] Initializing speech engine...
[2026-06-27 20:13:34,921.921 INFO    ] 2026-06-27 20:13:34
[2026-06-27 20:13:35,130.130 INFO    ] 2026-06-27 20:13:35
[2026-06-27 20:13:35,159.159 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:13:35,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:13:35,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:13:35,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:13:35,567.567 INFO    ] time= 27/06/2026 20:13:35
[2026-06-27 20:13:35,573.573 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:13:35,578.578 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:13:35,643.643 INFO    ] No existing commands found in stream
[2026-06-27 20:13:40,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:13:40,656.656 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-27 20:13:42,716.716 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 20:13:42,718.718 INFO    ] Checking for system updates...
[2026-06-27 20:13:42,738.738 INFO    ] 200
[2026-06-27 20:13:42,740.740 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:13:42,771.771 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:13:42,773.773 INFO    ] No update needed
[2026-06-27 20:13:42,774.774 INFO    ] Checking for camera pi updates...
[2026-06-27 20:13:42,794.794 INFO    ] 200
[2026-06-27 20:13:42,795.795 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:13:42,818.818 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:13:42,869.869 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:13:42,871.871 INFO    ] No camera update needed
[2026-06-27 20:13:42,872.872 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:13:42,873.873 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:13:42,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:13:42,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:13:44,918.918 INFO    ] ================================================
[2026-06-27 20:13:44,933.933 INFO    ] Launching Daemon at Sat Jun 27 20:13:44 IST 2026
[2026-06-27 20:13:44,945.945 INFO    ] ================================================
[2026-06-27 20:13:45,303.303 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:13:45
[2026-06-27 20:13:45,634.634 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:13:45,771.771 INFO    ] Initializing speech engine...
[2026-06-27 20:13:45,775.775 INFO    ] 2026-06-27 20:13:45
[2026-06-27 20:13:45,998.998 INFO    ] 2026-06-27 20:13:45
[2026-06-27 20:13:46,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:13:46,323.323 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:13:46,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:13:46,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:13:46,517.517 INFO    ] time= 27/06/2026 20:13:46
[2026-06-27 20:13:46,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:13:46,544.544 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:13:46,641.641 INFO    ] No existing commands found in stream
[2026-06-27 20:13:51,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:13:51,655.655 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-27 20:13:54,101.101 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 20:13:54,103.103 INFO    ] Checking for system updates...
[2026-06-27 20:13:54,124.124 INFO    ] 200
[2026-06-27 20:13:54,125.125 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:13:54,156.156 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:13:54,157.157 INFO    ] No update needed
[2026-06-27 20:13:54,159.159 INFO    ] Checking for camera pi updates...
[2026-06-27 20:13:54,179.179 INFO    ] 200
[2026-06-27 20:13:54,180.180 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:13:54,205.205 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:13:54,259.259 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:13:54,260.260 INFO    ] No camera update needed
[2026-06-27 20:13:54,261.261 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:13:54,263.263 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:13:54,266.266 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:13:54,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:13:56,308.308 INFO    ] ================================================
[2026-06-27 20:13:56,324.324 INFO    ] Launching Daemon at Sat Jun 27 20:13:56 IST 2026
[2026-06-27 20:13:56,335.335 INFO    ] ================================================
[2026-06-27 20:13:56,687.687 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:13:56
[2026-06-27 20:13:57,000.000 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:13:57,136.136 INFO    ] Initializing speech engine...
[2026-06-27 20:13:57,143.143 INFO    ] 2026-06-27 20:13:57
[2026-06-27 20:13:57,363.363 INFO    ] 2026-06-27 20:13:57
[2026-06-27 20:13:57,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:13:57,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:13:57,724.724 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:13:57,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:13:57,947.947 INFO    ] time= 27/06/2026 20:13:57
[2026-06-27 20:13:57,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:13:57,962.962 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:13:58,071.071 INFO    ] No existing commands found in stream
[2026-06-27 20:14:03,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:14:03,083.083 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-27 20:14:05,438.438 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 20:14:05,439.439 INFO    ] Checking for system updates...
[2026-06-27 20:14:05,462.462 INFO    ] 200
[2026-06-27 20:14:05,464.464 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:14:05,497.497 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:14:05,499.499 INFO    ] No update needed
[2026-06-27 20:14:05,500.500 INFO    ] Checking for camera pi updates...
[2026-06-27 20:14:05,519.519 INFO    ] 200
[2026-06-27 20:14:05,521.521 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:14:05,548.548 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:14:05,591.591 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:14:05,592.592 INFO    ] No camera update needed
[2026-06-27 20:14:05,594.594 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:14:05,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:14:05,599.599 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:14:05,604.604 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:14:07,644.644 INFO    ] ================================================
[2026-06-27 20:14:07,660.660 INFO    ] Launching Daemon at Sat Jun 27 20:14:07 IST 2026
[2026-06-27 20:14:07,672.672 INFO    ] ================================================
[2026-06-27 20:14:08,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:14:07
[2026-06-27 20:14:08,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:14:08,446.446 INFO    ] Initializing speech engine...
[2026-06-27 20:14:08,454.454 INFO    ] 2026-06-27 20:14:08
[2026-06-27 20:14:08,666.666 INFO    ] 2026-06-27 20:14:08
[2026-06-27 20:14:08,695.695 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:14:08,823.823 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:14:08,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:14:09,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:14:09,108.108 INFO    ] time= 27/06/2026 20:14:09
[2026-06-27 20:14:09,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:14:09,116.116 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:14:09,183.183 INFO    ] No existing commands found in stream
[2026-06-27 20:14:14,192.192 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:14:14,195.195 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-27 20:14:18,551.551 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:14:18,553.553 INFO    ] Checking for system updates...
[2026-06-27 20:14:18,575.575 INFO    ] 200
[2026-06-27 20:14:18,576.576 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:14:18,609.609 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:14:18,611.611 INFO    ] No update needed
[2026-06-27 20:14:18,612.612 INFO    ] Checking for camera pi updates...
[2026-06-27 20:14:18,631.631 INFO    ] 200
[2026-06-27 20:14:18,633.633 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:14:18,656.656 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:14:18,708.708 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:14:18,709.709 INFO    ] No camera update needed
[2026-06-27 20:14:18,710.710 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:14:18,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:14:18,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:14:18,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:14:20,757.757 INFO    ] ================================================
[2026-06-27 20:14:20,773.773 INFO    ] Launching Daemon at Sat Jun 27 20:14:20 IST 2026
[2026-06-27 20:14:20,785.785 INFO    ] ================================================
[2026-06-27 20:14:21,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:14:21
[2026-06-27 20:14:21,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:14:21,643.643 INFO    ] Initializing speech engine...
[2026-06-27 20:14:21,649.649 INFO    ] 2026-06-27 20:14:21
[2026-06-27 20:14:21,858.858 INFO    ] 2026-06-27 20:14:21
[2026-06-27 20:14:21,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:14:22,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:14:22,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:14:22,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:14:22,283.283 INFO    ] time= 27/06/2026 20:14:22
[2026-06-27 20:14:22,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:14:22,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:14:22,379.379 INFO    ] No existing commands found in stream
[2026-06-27 20:14:27,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:14:27,397.397 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-27 20:14:31,711.711 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 20:14:31,713.713 INFO    ] Checking for system updates...
[2026-06-27 20:14:31,743.743 INFO    ] 200
[2026-06-27 20:14:31,745.745 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:14:31,789.789 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:14:31,791.791 INFO    ] No update needed
[2026-06-27 20:14:31,793.793 INFO    ] Checking for camera pi updates...
[2026-06-27 20:14:31,818.818 INFO    ] 200
[2026-06-27 20:14:31,819.819 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:14:31,849.849 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:14:31,895.895 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:14:31,896.896 INFO    ] No camera update needed
[2026-06-27 20:14:31,898.898 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:14:31,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:14:31,903.903 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:14:31,907.907 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:14:33,946.946 INFO    ] ================================================
[2026-06-27 20:14:33,963.963 INFO    ] Launching Daemon at Sat Jun 27 20:14:33 IST 2026
[2026-06-27 20:14:33,973.973 INFO    ] ================================================
[2026-06-27 20:14:34,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:14:34
[2026-06-27 20:14:34,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:14:34,784.784 INFO    ] Initializing speech engine...
[2026-06-27 20:14:34,792.792 INFO    ] 2026-06-27 20:14:34
[2026-06-27 20:14:34,998.998 INFO    ] 2026-06-27 20:14:34
[2026-06-27 20:14:35,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:14:35,210.210 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:14:35,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:14:35,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:14:35,424.424 INFO    ] time= 27/06/2026 20:14:35
[2026-06-27 20:14:35,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:14:35,446.446 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:14:35,537.537 INFO    ] No existing commands found in stream
[2026-06-27 20:14:40,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:14:40,554.554 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-27 20:14:43,736.736 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:14:43,738.738 INFO    ] Checking for system updates...
[2026-06-27 20:14:43,760.760 INFO    ] 200
[2026-06-27 20:14:43,761.761 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:14:43,795.795 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:14:43,796.796 INFO    ] No update needed
[2026-06-27 20:14:43,798.798 INFO    ] Checking for camera pi updates...
[2026-06-27 20:14:43,818.818 INFO    ] 200
[2026-06-27 20:14:43,820.820 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:14:43,844.844 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:14:43,887.887 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:14:43,889.889 INFO    ] No camera update needed
[2026-06-27 20:14:43,890.890 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:14:43,892.892 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:14:43,895.895 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:14:43,898.898 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:14:45,938.938 INFO    ] ================================================
[2026-06-27 20:14:47,231.231 INFO    ] Launching Daemon at Sat Jun 27 20:14:47 IST 2026
[2026-06-27 20:14:47,242.242 INFO    ] ================================================
[2026-06-27 20:14:47,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:14:47
[2026-06-27 20:14:47,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:14:48,067.067 INFO    ] Initializing speech engine...
[2026-06-27 20:14:48,071.071 INFO    ] 2026-06-27 20:14:48
[2026-06-27 20:14:48,265.265 INFO    ] 2026-06-27 20:14:48
[2026-06-27 20:14:48,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:14:48,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:14:48,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:14:48,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:14:48,744.744 INFO    ] time= 27/06/2026 20:14:48
[2026-06-27 20:14:48,778.778 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:14:48,796.796 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:14:48,874.874 INFO    ] No existing commands found in stream
[2026-06-27 20:14:53,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:14:53,888.888 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-27 20:14:54,536.536 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 20:14:54,538.538 INFO    ] Checking for system updates...
[2026-06-27 20:14:54,560.560 INFO    ] 200
[2026-06-27 20:14:54,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:14:54,594.594 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:14:54,596.596 INFO    ] No update needed
[2026-06-27 20:14:54,597.597 INFO    ] Checking for camera pi updates...
[2026-06-27 20:14:54,617.617 INFO    ] 200
[2026-06-27 20:14:54,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:14:54,644.644 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:14:54,671.671 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:14:54,672.672 INFO    ] No camera update needed
[2026-06-27 20:14:54,673.673 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:14:54,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:14:54,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:14:54,680.680 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:14:56,719.719 INFO    ] ================================================
[2026-06-27 20:14:56,735.735 INFO    ] Launching Daemon at Sat Jun 27 20:14:56 IST 2026
[2026-06-27 20:14:56,746.746 INFO    ] ================================================
[2026-06-27 20:14:57,126.126 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:14:57
[2026-06-27 20:14:57,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:14:57,586.586 INFO    ] Initializing speech engine...
[2026-06-27 20:14:57,590.590 INFO    ] 2026-06-27 20:14:57
[2026-06-27 20:14:57,797.797 INFO    ] 2026-06-27 20:14:57
[2026-06-27 20:14:57,826.826 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:14:57,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:14:58,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:14:58,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:14:58,217.217 INFO    ] time= 27/06/2026 20:14:58
[2026-06-27 20:14:58,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:14:58,251.251 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:14:58,319.319 INFO    ] No existing commands found in stream
[2026-06-27 20:15:03,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:15:03,336.336 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-27 20:15:06,143.143 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 20:15:06,145.145 INFO    ] Checking for system updates...
[2026-06-27 20:15:06,168.168 INFO    ] 200
[2026-06-27 20:15:06,170.170 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:15:06,203.203 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:15:06,205.205 INFO    ] No update needed
[2026-06-27 20:15:06,207.207 INFO    ] Checking for camera pi updates...
[2026-06-27 20:15:06,229.229 INFO    ] 200
[2026-06-27 20:15:06,230.230 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:15:06,254.254 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:15:06,304.304 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:15:06,306.306 INFO    ] No camera update needed
[2026-06-27 20:15:06,307.307 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:15:06,309.309 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:15:06,312.312 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:15:06,315.315 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:15:08,347.347 INFO    ] ================================================
[2026-06-27 20:15:08,363.363 INFO    ] Launching Daemon at Sat Jun 27 20:15:08 IST 2026
[2026-06-27 20:15:08,374.374 INFO    ] ================================================
[2026-06-27 20:15:08,762.762 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:15:08
[2026-06-27 20:15:09,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:15:09,266.266 INFO    ] Initializing speech engine...
[2026-06-27 20:15:09,271.271 INFO    ] 2026-06-27 20:15:09
[2026-06-27 20:15:09,484.484 INFO    ] 2026-06-27 20:15:09
[2026-06-27 20:15:09,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:15:09,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:15:09,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:15:09,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:15:09,908.908 INFO    ] time= 27/06/2026 20:15:09
[2026-06-27 20:15:09,937.937 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:15:09,943.943 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:15:10,011.011 INFO    ] No existing commands found in stream
[2026-06-27 20:15:15,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:15:15,024.024 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-27 20:15:19,309.309 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 20:15:19,310.310 INFO    ] Checking for system updates...
[2026-06-27 20:15:19,334.334 INFO    ] 200
[2026-06-27 20:15:19,336.336 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:15:19,368.368 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:15:19,369.369 INFO    ] No update needed
[2026-06-27 20:15:19,371.371 INFO    ] Checking for camera pi updates...
[2026-06-27 20:15:19,392.392 INFO    ] 200
[2026-06-27 20:15:19,393.393 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:15:19,418.418 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:15:19,460.460 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:15:19,461.461 INFO    ] No camera update needed
[2026-06-27 20:15:19,463.463 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:15:19,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:15:19,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:15:19,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:15:21,510.510 INFO    ] ================================================
[2026-06-27 20:15:21,525.525 INFO    ] Launching Daemon at Sat Jun 27 20:15:21 IST 2026
[2026-06-27 20:15:21,536.536 INFO    ] ================================================
[2026-06-27 20:15:21,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:15:21
[2026-06-27 20:15:22,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:15:22,406.406 INFO    ] Initializing speech engine...
[2026-06-27 20:15:22,412.412 INFO    ] 2026-06-27 20:15:22
[2026-06-27 20:15:22,625.625 INFO    ] 2026-06-27 20:15:22
[2026-06-27 20:15:22,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:15:22,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:15:22,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:15:23,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:15:23,065.065 INFO    ] time= 27/06/2026 20:15:23
[2026-06-27 20:15:23,077.077 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:15:23,082.082 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:15:23,150.150 INFO    ] No existing commands found in stream
[2026-06-27 20:15:28,170.170 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:15:28,173.173 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-27 20:15:30,785.785 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 20:15:30,787.787 INFO    ] Checking for system updates...
[2026-06-27 20:15:30,808.808 INFO    ] 200
[2026-06-27 20:15:30,809.809 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:15:30,840.840 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:15:30,841.841 INFO    ] No update needed
[2026-06-27 20:15:30,843.843 INFO    ] Checking for camera pi updates...
[2026-06-27 20:15:30,862.862 INFO    ] 200
[2026-06-27 20:15:30,864.864 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:15:30,888.888 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:15:30,928.928 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:15:30,929.929 INFO    ] No camera update needed
[2026-06-27 20:15:30,931.931 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:15:30,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:15:30,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:15:30,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:15:32,982.982 INFO    ] ================================================
[2026-06-27 20:15:33,998.998 INFO    ] Launching Daemon at Sat Jun 27 20:15:32 IST 2026
[2026-06-27 20:15:33,011.011 INFO    ] ================================================
[2026-06-27 20:15:33,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:15:33
[2026-06-27 20:15:33,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:15:33,819.819 INFO    ] Initializing speech engine...
[2026-06-27 20:15:33,827.827 INFO    ] 2026-06-27 20:15:33
[2026-06-27 20:15:34,038.038 INFO    ] 2026-06-27 20:15:34
[2026-06-27 20:15:34,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:15:34,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:15:34,256.256 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:15:34,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:15:34,461.461 INFO    ] time= 27/06/2026 20:15:34
[2026-06-27 20:15:34,484.484 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:15:34,490.490 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:15:34,557.557 INFO    ] No existing commands found in stream
[2026-06-27 20:15:39,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:15:39,569.569 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-27 20:15:40,519.519 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 20:15:40,520.520 INFO    ] Checking for system updates...
[2026-06-27 20:15:40,542.542 INFO    ] 200
[2026-06-27 20:15:40,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:15:40,578.578 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:15:40,579.579 INFO    ] No update needed
[2026-06-27 20:15:40,580.580 INFO    ] Checking for camera pi updates...
[2026-06-27 20:15:40,600.600 INFO    ] 200
[2026-06-27 20:15:40,601.601 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:15:40,627.627 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:15:40,674.674 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:15:40,675.675 INFO    ] No camera update needed
[2026-06-27 20:15:40,676.676 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:15:40,678.678 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:15:40,681.681 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:15:40,684.684 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:15:42,724.724 INFO    ] ================================================
[2026-06-27 20:15:42,741.741 INFO    ] Launching Daemon at Sat Jun 27 20:15:42 IST 2026
[2026-06-27 20:15:42,753.753 INFO    ] ================================================
[2026-06-27 20:15:43,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:15:43
[2026-06-27 20:15:43,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:15:43,565.565 INFO    ] Initializing speech engine...
[2026-06-27 20:15:43,569.569 INFO    ] 2026-06-27 20:15:43
[2026-06-27 20:15:43,787.787 INFO    ] 2026-06-27 20:15:43
[2026-06-27 20:15:43,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:15:44,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:15:44,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:15:44,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:15:44,186.186 INFO    ] time= 27/06/2026 20:15:44
[2026-06-27 20:15:44,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:15:44,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:15:44,331.331 INFO    ] No existing commands found in stream
[2026-06-27 20:15:49,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:15:49,348.348 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-27 20:15:50,206.206 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 20:15:50,207.207 INFO    ] Checking for system updates...
[2026-06-27 20:15:50,228.228 INFO    ] 200
[2026-06-27 20:15:50,230.230 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:15:50,261.261 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:15:50,262.262 INFO    ] No update needed
[2026-06-27 20:15:50,264.264 INFO    ] Checking for camera pi updates...
[2026-06-27 20:15:50,284.284 INFO    ] 200
[2026-06-27 20:15:50,286.286 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:15:50,311.311 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:15:50,356.356 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:15:50,357.357 INFO    ] No camera update needed
[2026-06-27 20:15:50,359.359 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:15:50,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:15:50,363.363 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:15:50,366.366 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:15:52,408.408 INFO    ] ================================================
[2026-06-27 20:15:52,425.425 INFO    ] Launching Daemon at Sat Jun 27 20:15:52 IST 2026
[2026-06-27 20:15:52,437.437 INFO    ] ================================================
[2026-06-27 20:15:52,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:15:52
[2026-06-27 20:15:53,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:15:53,257.257 INFO    ] Initializing speech engine...
[2026-06-27 20:15:53,262.262 INFO    ] 2026-06-27 20:15:53
[2026-06-27 20:15:53,467.467 INFO    ] 2026-06-27 20:15:53
[2026-06-27 20:15:53,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:15:53,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:15:53,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:15:53,884.884 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:15:53,908.908 INFO    ] time= 27/06/2026 20:15:53
[2026-06-27 20:15:53,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:15:53,916.916 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:15:53,983.983 INFO    ] No existing commands found in stream
[2026-06-27 20:15:58,992.992 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:15:58,995.995 INFO    ] Waiting 1.71 seconds before fallback handling...
[2026-06-27 20:16:01,134.134 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 20:16:01,141.141 INFO    ] Checking for system updates...
[2026-06-27 20:16:01,198.198 INFO    ] 200
[2026-06-27 20:16:01,200.200 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:16:01,252.252 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:16:01,255.255 INFO    ] No update needed
[2026-06-27 20:16:01,258.258 INFO    ] Checking for camera pi updates...
[2026-06-27 20:16:01,323.323 INFO    ] 200
[2026-06-27 20:16:01,325.325 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:16:01,386.386 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:16:01,435.435 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:16:01,437.437 INFO    ] No camera update needed
[2026-06-27 20:16:01,438.438 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:16:01,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:16:01,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:16:01,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:16:03,489.489 INFO    ] ================================================
[2026-06-27 20:16:03,504.504 INFO    ] Launching Daemon at Sat Jun 27 20:16:03 IST 2026
[2026-06-27 20:16:03,516.516 INFO    ] ================================================
[2026-06-27 20:16:03,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:16:03
[2026-06-27 20:16:04,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:16:04,313.313 INFO    ] Initializing speech engine...
[2026-06-27 20:16:04,317.317 INFO    ] 2026-06-27 20:16:04
[2026-06-27 20:16:04,528.528 INFO    ] 2026-06-27 20:16:04
[2026-06-27 20:16:04,557.557 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:16:04,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:16:04,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:16:04,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:16:05,001.001 INFO    ] time= 27/06/2026 20:16:04
[2026-06-27 20:16:05,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:16:05,032.032 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:16:05,109.109 INFO    ] No existing commands found in stream
[2026-06-27 20:16:10,118.118 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:16:10,120.120 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-27 20:16:14,450.450 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 20:16:14,451.451 INFO    ] Checking for system updates...
[2026-06-27 20:16:14,473.473 INFO    ] 200
[2026-06-27 20:16:14,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:16:14,505.505 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:16:14,507.507 INFO    ] No update needed
[2026-06-27 20:16:14,508.508 INFO    ] Checking for camera pi updates...
[2026-06-27 20:16:14,528.528 INFO    ] 200
[2026-06-27 20:16:14,529.529 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:16:14,552.552 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:16:14,706.706 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:16:14,707.707 INFO    ] No camera update needed
[2026-06-27 20:16:14,708.708 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:16:14,710.710 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:16:14,713.713 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:16:14,716.716 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:16:16,755.755 INFO    ] ================================================
[2026-06-27 20:16:16,771.771 INFO    ] Launching Daemon at Sat Jun 27 20:16:16 IST 2026
[2026-06-27 20:16:16,782.782 INFO    ] ================================================
[2026-06-27 20:16:17,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:16:17
[2026-06-27 20:16:17,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:16:17,575.575 INFO    ] Initializing speech engine...
[2026-06-27 20:16:17,586.586 INFO    ] 2026-06-27 20:16:17
[2026-06-27 20:16:17,791.791 INFO    ] 2026-06-27 20:16:17
[2026-06-27 20:16:17,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:16:18,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:16:18,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:16:18,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:16:18,180.180 INFO    ] time= 27/06/2026 20:16:18
[2026-06-27 20:16:18,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:16:18,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:16:18,330.330 INFO    ] No existing commands found in stream
[2026-06-27 20:16:23,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:16:23,352.352 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-27 20:16:24,491.491 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 20:16:24,492.492 INFO    ] Checking for system updates...
[2026-06-27 20:16:24,517.517 INFO    ] 200
[2026-06-27 20:16:24,518.518 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:16:24,548.548 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:16:24,550.550 INFO    ] No update needed
[2026-06-27 20:16:24,551.551 INFO    ] Checking for camera pi updates...
[2026-06-27 20:16:24,570.570 INFO    ] 200
[2026-06-27 20:16:24,572.572 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:16:24,596.596 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:16:24,639.639 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:16:24,641.641 INFO    ] No camera update needed
[2026-06-27 20:16:24,642.642 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:16:24,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:16:24,646.646 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:16:24,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:16:26,687.687 INFO    ] ================================================
[2026-06-27 20:16:26,702.702 INFO    ] Launching Daemon at Sat Jun 27 20:16:26 IST 2026
[2026-06-27 20:16:26,713.713 INFO    ] ================================================
[2026-06-27 20:16:27,058.058 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:16:27
[2026-06-27 20:16:27,371.371 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:16:27,504.504 INFO    ] Initializing speech engine...
[2026-06-27 20:16:27,507.507 INFO    ] 2026-06-27 20:16:27
[2026-06-27 20:16:27,726.726 INFO    ] 2026-06-27 20:16:27
[2026-06-27 20:16:27,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:16:27,885.885 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:16:27,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:16:28,095.095 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:16:28,153.153 INFO    ] time= 27/06/2026 20:16:28
[2026-06-27 20:16:28,177.177 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:16:28,183.183 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:16:28,251.251 INFO    ] No existing commands found in stream
[2026-06-27 20:16:33,265.265 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:16:33,268.268 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-27 20:16:36,109.109 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 20:16:36,110.110 INFO    ] Checking for system updates...
[2026-06-27 20:16:36,131.131 INFO    ] 200
[2026-06-27 20:16:36,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:16:36,167.167 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:16:36,169.169 INFO    ] No update needed
[2026-06-27 20:16:36,170.170 INFO    ] Checking for camera pi updates...
[2026-06-27 20:16:36,190.190 INFO    ] 200
[2026-06-27 20:16:36,191.191 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:16:36,215.215 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:16:36,260.260 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:16:36,262.262 INFO    ] No camera update needed
[2026-06-27 20:16:36,263.263 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:16:36,265.265 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:16:36,268.268 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:16:36,271.271 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:16:38,317.317 INFO    ] ================================================
[2026-06-27 20:16:38,332.332 INFO    ] Launching Daemon at Sat Jun 27 20:16:38 IST 2026
[2026-06-27 20:16:38,343.343 INFO    ] ================================================
[2026-06-27 20:16:38,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:16:38
[2026-06-27 20:16:38,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:16:39,123.123 INFO    ] Initializing speech engine...
[2026-06-27 20:16:39,138.138 INFO    ] 2026-06-27 20:16:39
[2026-06-27 20:16:39,344.344 INFO    ] 2026-06-27 20:16:39
[2026-06-27 20:16:39,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:16:39,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:16:39,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:16:39,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:16:39,769.769 INFO    ] time= 27/06/2026 20:16:39
[2026-06-27 20:16:39,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:16:39,797.797 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:16:39,865.865 INFO    ] No existing commands found in stream
[2026-06-27 20:16:44,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:16:44,877.877 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-27 20:16:46,015.015 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 20:16:46,016.016 INFO    ] Checking for system updates...
[2026-06-27 20:16:46,037.037 INFO    ] 200
[2026-06-27 20:16:46,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:16:46,070.070 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:16:46,071.071 INFO    ] No update needed
[2026-06-27 20:16:46,073.073 INFO    ] Checking for camera pi updates...
[2026-06-27 20:16:46,093.093 INFO    ] 200
[2026-06-27 20:16:46,095.095 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:16:46,118.118 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:16:46,167.167 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:16:46,168.168 INFO    ] No camera update needed
[2026-06-27 20:16:46,170.170 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:16:46,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:16:46,175.175 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:16:46,178.178 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:16:48,220.220 INFO    ] ================================================
[2026-06-27 20:16:48,235.235 INFO    ] Launching Daemon at Sat Jun 27 20:16:48 IST 2026
[2026-06-27 20:16:48,246.246 INFO    ] ================================================
[2026-06-27 20:16:48,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:16:48
[2026-06-27 20:16:48,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:16:49,047.047 INFO    ] Initializing speech engine...
[2026-06-27 20:16:49,052.052 INFO    ] 2026-06-27 20:16:49
[2026-06-27 20:16:49,272.272 INFO    ] 2026-06-27 20:16:49
[2026-06-27 20:16:49,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:16:49,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:16:49,490.490 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:16:49,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:16:49,721.721 INFO    ] time= 27/06/2026 20:16:49
[2026-06-27 20:16:49,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:16:49,728.728 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:16:49,820.820 INFO    ] No existing commands found in stream
[2026-06-27 20:16:54,834.834 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:16:54,837.837 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-27 20:16:57,418.418 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 20:16:57,420.420 INFO    ] Checking for system updates...
[2026-06-27 20:16:57,442.442 INFO    ] 200
[2026-06-27 20:16:57,444.444 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:16:57,475.475 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:16:57,476.476 INFO    ] No update needed
[2026-06-27 20:16:57,478.478 INFO    ] Checking for camera pi updates...
[2026-06-27 20:16:57,500.500 INFO    ] 200
[2026-06-27 20:16:57,501.501 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:16:57,529.529 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:16:57,578.578 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:16:57,579.579 INFO    ] No camera update needed
[2026-06-27 20:16:57,581.581 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:16:57,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:16:57,586.586 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:16:57,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:16:59,629.629 INFO    ] ================================================
[2026-06-27 20:16:59,645.645 INFO    ] Launching Daemon at Sat Jun 27 20:16:59 IST 2026
[2026-06-27 20:16:59,656.656 INFO    ] ================================================
[2026-06-27 20:17:00,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:17:00
[2026-06-27 20:17:00,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:17:00,539.539 INFO    ] Initializing speech engine...
[2026-06-27 20:17:00,545.545 INFO    ] 2026-06-27 20:17:00
[2026-06-27 20:17:00,755.755 INFO    ] 2026-06-27 20:17:00
[2026-06-27 20:17:00,784.784 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:17:00,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:17:00,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:17:01,110.110 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:17:01,178.178 INFO    ] time= 27/06/2026 20:17:01
[2026-06-27 20:17:01,202.202 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:17:01,209.209 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:17:01,275.275 INFO    ] No existing commands found in stream
[2026-06-27 20:17:06,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:17:06,293.293 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-27 20:17:09,979.979 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:17:09,981.981 INFO    ] Checking for system updates...
[2026-06-27 20:17:10,002.002 INFO    ] 200
[2026-06-27 20:17:10,003.003 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:17:10,035.035 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:17:10,036.036 INFO    ] No update needed
[2026-06-27 20:17:10,038.038 INFO    ] Checking for camera pi updates...
[2026-06-27 20:17:10,058.058 INFO    ] 200
[2026-06-27 20:17:10,059.059 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:17:10,083.083 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:17:10,131.131 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:17:10,132.132 INFO    ] No camera update needed
[2026-06-27 20:17:10,134.134 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:17:10,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:17:10,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:17:10,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:17:12,182.182 INFO    ] ================================================
[2026-06-27 20:17:12,197.197 INFO    ] Launching Daemon at Sat Jun 27 20:17:12 IST 2026
[2026-06-27 20:17:12,209.209 INFO    ] ================================================
[2026-06-27 20:17:12,536.536 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:17:12
[2026-06-27 20:17:12,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:17:13,008.008 INFO    ] Initializing speech engine...
[2026-06-27 20:17:13,019.019 INFO    ] 2026-06-27 20:17:13
[2026-06-27 20:17:13,231.231 INFO    ] 2026-06-27 20:17:13
[2026-06-27 20:17:13,260.260 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:17:13,410.410 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:17:13,450.450 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:17:13,600.600 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:17:13,658.658 INFO    ] time= 27/06/2026 20:17:13
[2026-06-27 20:17:13,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:17:13,689.689 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:17:13,757.757 INFO    ] No existing commands found in stream
[2026-06-27 20:17:18,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:17:18,770.770 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-27 20:17:21,256.256 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 20:17:21,258.258 INFO    ] Checking for system updates...
[2026-06-27 20:17:21,279.279 INFO    ] 200
[2026-06-27 20:17:21,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:17:21,314.314 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:17:21,316.316 INFO    ] No update needed
[2026-06-27 20:17:21,318.318 INFO    ] Checking for camera pi updates...
[2026-06-27 20:17:21,338.338 INFO    ] 200
[2026-06-27 20:17:21,339.339 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:17:21,363.363 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:17:21,410.410 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:17:21,411.411 INFO    ] No camera update needed
[2026-06-27 20:17:21,413.413 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:17:21,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:17:21,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:17:21,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:17:23,462.462 INFO    ] ================================================
[2026-06-27 20:17:23,477.477 INFO    ] Launching Daemon at Sat Jun 27 20:17:23 IST 2026
[2026-06-27 20:17:23,488.488 INFO    ] ================================================
[2026-06-27 20:17:23,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:17:23
[2026-06-27 20:17:24,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:17:24,267.267 INFO    ] Initializing speech engine...
[2026-06-27 20:17:24,276.276 INFO    ] 2026-06-27 20:17:24
[2026-06-27 20:17:24,490.490 INFO    ] 2026-06-27 20:17:24
[2026-06-27 20:17:24,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:17:24,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:17:24,714.714 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:17:24,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:17:24,938.938 INFO    ] time= 27/06/2026 20:17:24
[2026-06-27 20:17:24,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:17:24,945.945 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:17:25,012.012 INFO    ] No existing commands found in stream
[2026-06-27 20:17:30,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:17:30,025.025 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-27 20:17:33,415.415 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 20:17:33,417.417 INFO    ] Checking for system updates...
[2026-06-27 20:17:33,439.439 INFO    ] 200
[2026-06-27 20:17:33,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:17:33,475.475 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:17:33,476.476 INFO    ] No update needed
[2026-06-27 20:17:33,478.478 INFO    ] Checking for camera pi updates...
[2026-06-27 20:17:33,498.498 INFO    ] 200
[2026-06-27 20:17:33,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:17:33,525.525 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:17:33,577.577 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:17:33,578.578 INFO    ] No camera update needed
[2026-06-27 20:17:33,580.580 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:17:33,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:17:33,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:17:33,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:17:35,629.629 INFO    ] ================================================
[2026-06-27 20:17:35,651.651 INFO    ] Launching Daemon at Sat Jun 27 20:17:35 IST 2026
[2026-06-27 20:17:35,662.662 INFO    ] ================================================
[2026-06-27 20:17:36,006.006 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:17:36
[2026-06-27 20:17:36,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:17:36,458.458 INFO    ] Initializing speech engine...
[2026-06-27 20:17:36,462.462 INFO    ] 2026-06-27 20:17:36
[2026-06-27 20:17:36,681.681 INFO    ] 2026-06-27 20:17:36
[2026-06-27 20:17:36,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:17:36,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:17:36,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:17:37,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:17:37,171.171 INFO    ] time= 27/06/2026 20:17:37
[2026-06-27 20:17:37,182.182 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:17:37,189.189 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:17:37,263.263 INFO    ] No existing commands found in stream
[2026-06-27 20:17:42,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:17:42,275.275 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-27 20:17:46,399.399 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 20:17:46,401.401 INFO    ] Checking for system updates...
[2026-06-27 20:17:46,422.422 INFO    ] 200
[2026-06-27 20:17:46,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:17:46,457.457 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:17:46,458.458 INFO    ] No update needed
[2026-06-27 20:17:46,460.460 INFO    ] Checking for camera pi updates...
[2026-06-27 20:17:46,480.480 INFO    ] 200
[2026-06-27 20:17:46,482.482 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:17:46,505.505 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:17:46,550.550 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:17:46,552.552 INFO    ] No camera update needed
[2026-06-27 20:17:46,553.553 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:17:46,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:17:46,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:17:46,561.561 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:17:48,593.593 INFO    ] ================================================
[2026-06-27 20:17:48,602.602 INFO    ] Launching Daemon at Sat Jun 27 20:17:48 IST 2026
[2026-06-27 20:17:48,608.608 INFO    ] ================================================
[2026-06-27 20:17:48,918.918 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:17:48
[2026-06-27 20:17:49,264.264 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:17:49,420.420 INFO    ] Initializing speech engine...
[2026-06-27 20:17:49,432.432 INFO    ] 2026-06-27 20:17:49
[2026-06-27 20:17:49,658.658 INFO    ] 2026-06-27 20:17:49
[2026-06-27 20:17:49,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:17:49,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:17:49,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:17:50,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:17:50,120.120 INFO    ] time= 27/06/2026 20:17:50
[2026-06-27 20:17:50,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:17:50,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:17:50,220.220 INFO    ] No existing commands found in stream
[2026-06-27 20:17:55,229.229 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:17:55,232.232 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-27 20:17:58,915.915 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:17:58,917.917 INFO    ] Checking for system updates...
[2026-06-27 20:17:58,937.937 INFO    ] 200
[2026-06-27 20:17:58,939.939 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:17:58,971.971 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:17:58,973.973 INFO    ] No update needed
[2026-06-27 20:17:58,974.974 INFO    ] Checking for camera pi updates...
[2026-06-27 20:17:58,995.995 INFO    ] 200
[2026-06-27 20:17:58,996.996 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:17:59,019.019 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:17:59,070.070 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:17:59,072.072 INFO    ] No camera update needed
[2026-06-27 20:17:59,073.073 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:17:59,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:17:59,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:17:59,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:18:01,127.127 INFO    ] ================================================
[2026-06-27 20:18:01,142.142 INFO    ] Launching Daemon at Sat Jun 27 20:18:01 IST 2026
[2026-06-27 20:18:01,153.153 INFO    ] ================================================
[2026-06-27 20:18:01,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:18:01
[2026-06-27 20:18:01,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:18:02,125.125 INFO    ] Initializing speech engine...
[2026-06-27 20:18:02,133.133 INFO    ] 2026-06-27 20:18:02
[2026-06-27 20:18:02,361.361 INFO    ] 2026-06-27 20:18:02
[2026-06-27 20:18:02,412.412 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:18:02,597.597 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:18:02,654.654 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:18:02,827.827 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:18:02,889.889 INFO    ] time= 27/06/2026 20:18:02
[2026-06-27 20:18:02,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:18:02,919.919 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:18:03,010.010 INFO    ] No existing commands found in stream
[2026-06-27 20:18:08,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:18:08,019.019 INFO    ] Waiting 0.14 seconds before fallback handling...
[2026-06-27 20:18:08,611.611 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 20:18:08,612.612 INFO    ] Checking for system updates...
[2026-06-27 20:18:08,634.634 INFO    ] 200
[2026-06-27 20:18:08,635.635 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:18:08,667.667 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:18:08,668.668 INFO    ] No update needed
[2026-06-27 20:18:08,669.669 INFO    ] Checking for camera pi updates...
[2026-06-27 20:18:08,689.689 INFO    ] 200
[2026-06-27 20:18:08,690.690 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:18:08,715.715 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:18:08,755.755 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:18:08,757.757 INFO    ] No camera update needed
[2026-06-27 20:18:08,758.758 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:18:08,759.759 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:18:08,762.762 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:18:08,765.765 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:18:10,805.805 INFO    ] ================================================
[2026-06-27 20:18:10,820.820 INFO    ] Launching Daemon at Sat Jun 27 20:18:10 IST 2026
[2026-06-27 20:18:10,831.831 INFO    ] ================================================
[2026-06-27 20:18:11,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:18:11
[2026-06-27 20:18:11,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:18:11,667.667 INFO    ] Initializing speech engine...
[2026-06-27 20:18:11,673.673 INFO    ] 2026-06-27 20:18:11
[2026-06-27 20:18:11,876.876 INFO    ] 2026-06-27 20:18:11
[2026-06-27 20:18:11,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:18:12,090.090 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:18:12,101.101 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:18:12,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:18:12,303.303 INFO    ] time= 27/06/2026 20:18:12
[2026-06-27 20:18:12,319.319 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:18:12,325.325 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:18:12,391.391 INFO    ] No existing commands found in stream
[2026-06-27 20:18:17,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:18:17,408.408 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-27 20:18:19,466.466 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 20:18:19,468.468 INFO    ] Checking for system updates...
[2026-06-27 20:18:19,488.488 INFO    ] 200
[2026-06-27 20:18:19,490.490 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:18:19,520.520 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:18:19,521.521 INFO    ] No update needed
[2026-06-27 20:18:19,523.523 INFO    ] Checking for camera pi updates...
[2026-06-27 20:18:19,542.542 INFO    ] 200
[2026-06-27 20:18:19,543.543 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:18:19,568.568 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:18:19,708.708 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:18:19,709.709 INFO    ] No camera update needed
[2026-06-27 20:18:19,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:18:19,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:18:19,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:18:19,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:18:21,760.760 INFO    ] ================================================
[2026-06-27 20:18:21,776.776 INFO    ] Launching Daemon at Sat Jun 27 20:18:21 IST 2026
[2026-06-27 20:18:21,786.786 INFO    ] ================================================
[2026-06-27 20:18:22,124.124 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:18:22
[2026-06-27 20:18:22,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:18:22,569.569 INFO    ] Initializing speech engine...
[2026-06-27 20:18:22,581.581 INFO    ] 2026-06-27 20:18:22
[2026-06-27 20:18:22,789.789 INFO    ] 2026-06-27 20:18:22
[2026-06-27 20:18:22,818.818 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:18:23,007.007 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:18:23,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:18:23,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:18:23,212.212 INFO    ] time= 27/06/2026 20:18:23
[2026-06-27 20:18:23,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:18:23,247.247 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:18:23,314.314 INFO    ] No existing commands found in stream
[2026-06-27 20:18:28,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:18:28,326.326 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-27 20:18:30,964.964 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 20:18:30,965.965 INFO    ] Checking for system updates...
[2026-06-27 20:18:30,990.990 INFO    ] 200
[2026-06-27 20:18:30,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:18:31,021.021 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:18:31,023.023 INFO    ] No update needed
[2026-06-27 20:18:31,024.024 INFO    ] Checking for camera pi updates...
[2026-06-27 20:18:31,046.046 INFO    ] 200
[2026-06-27 20:18:31,047.047 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:18:31,072.072 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:18:31,113.113 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:18:31,115.115 INFO    ] No camera update needed
[2026-06-27 20:18:31,116.116 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:18:31,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:18:31,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:18:31,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:18:33,155.155 INFO    ] ================================================
[2026-06-27 20:18:33,170.170 INFO    ] Launching Daemon at Sat Jun 27 20:18:33 IST 2026
[2026-06-27 20:18:33,181.181 INFO    ] ================================================
[2026-06-27 20:18:33,535.535 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:18:33
[2026-06-27 20:18:33,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:18:33,996.996 INFO    ] Initializing speech engine...
[2026-06-27 20:18:34,002.002 INFO    ] 2026-06-27 20:18:33
[2026-06-27 20:18:34,206.206 INFO    ] 2026-06-27 20:18:34
[2026-06-27 20:18:34,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:18:34,418.418 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:18:34,428.428 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:18:34,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:18:34,647.647 INFO    ] time= 27/06/2026 20:18:34
[2026-06-27 20:18:34,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:18:34,654.654 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:18:34,721.721 INFO    ] No existing commands found in stream
[2026-06-27 20:18:39,735.735 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:18:39,738.738 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-27 20:18:43,340.340 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 20:18:43,341.341 INFO    ] Checking for system updates...
[2026-06-27 20:18:43,362.362 INFO    ] 200
[2026-06-27 20:18:43,364.364 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:18:43,394.394 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:18:43,395.395 INFO    ] No update needed
[2026-06-27 20:18:43,397.397 INFO    ] Checking for camera pi updates...
[2026-06-27 20:18:43,418.418 INFO    ] 200
[2026-06-27 20:18:43,420.420 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:18:43,443.443 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:18:43,495.495 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:18:43,496.496 INFO    ] No camera update needed
[2026-06-27 20:18:43,498.498 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:18:43,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:18:43,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:18:43,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:18:45,544.544 INFO    ] ================================================
[2026-06-27 20:18:45,559.559 INFO    ] Launching Daemon at Sat Jun 27 20:18:45 IST 2026
[2026-06-27 20:18:45,569.569 INFO    ] ================================================
[2026-06-27 20:18:45,901.901 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:18:45
[2026-06-27 20:18:46,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:18:46,364.364 INFO    ] Initializing speech engine...
[2026-06-27 20:18:46,369.369 INFO    ] 2026-06-27 20:18:46
[2026-06-27 20:18:46,577.577 INFO    ] 2026-06-27 20:18:46
[2026-06-27 20:18:46,609.609 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:18:46,808.808 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:18:46,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:18:46,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:18:47,030.030 INFO    ] time= 27/06/2026 20:18:46
[2026-06-27 20:18:47,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:18:47,068.068 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:18:47,166.166 INFO    ] No existing commands found in stream
[2026-06-27 20:18:52,175.175 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:18:52,178.178 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-27 20:18:56,519.519 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 20:18:56,521.521 INFO    ] Checking for system updates...
[2026-06-27 20:18:56,542.542 INFO    ] 200
[2026-06-27 20:18:56,543.543 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:18:56,574.574 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:18:56,575.575 INFO    ] No update needed
[2026-06-27 20:18:56,576.576 INFO    ] Checking for camera pi updates...
[2026-06-27 20:18:56,597.597 INFO    ] 200
[2026-06-27 20:18:56,599.599 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:18:56,623.623 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:18:56,669.669 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:18:56,670.670 INFO    ] No camera update needed
[2026-06-27 20:18:56,671.671 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:18:56,673.673 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:18:56,676.676 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:18:56,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:18:58,717.717 INFO    ] ================================================
[2026-06-27 20:18:58,732.732 INFO    ] Launching Daemon at Sat Jun 27 20:18:58 IST 2026
[2026-06-27 20:18:58,743.743 INFO    ] ================================================
[2026-06-27 20:18:59,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:18:59
[2026-06-27 20:18:59,417.417 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:18:59,559.559 INFO    ] Initializing speech engine...
[2026-06-27 20:18:59,564.564 INFO    ] 2026-06-27 20:18:59
[2026-06-27 20:18:59,765.765 INFO    ] 2026-06-27 20:18:59
[2026-06-27 20:18:59,795.795 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:19:00,053.053 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:19:00,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:19:00,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:19:00,276.276 INFO    ] time= 27/06/2026 20:19:00
[2026-06-27 20:19:00,301.301 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:19:00,303.303 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:19:00,399.399 INFO    ] No existing commands found in stream
[2026-06-27 20:19:05,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:19:05,410.410 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-27 20:19:06,816.816 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 20:19:06,818.818 INFO    ] Checking for system updates...
[2026-06-27 20:19:06,839.839 INFO    ] 200
[2026-06-27 20:19:06,840.840 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:19:06,870.870 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:19:06,872.872 INFO    ] No update needed
[2026-06-27 20:19:06,873.873 INFO    ] Checking for camera pi updates...
[2026-06-27 20:19:06,894.894 INFO    ] 200
[2026-06-27 20:19:06,895.895 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:19:06,918.918 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:19:06,964.964 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:19:06,966.966 INFO    ] No camera update needed
[2026-06-27 20:19:06,967.967 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:19:06,968.968 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:19:06,971.971 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:19:06,974.974 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:19:09,015.015 INFO    ] ================================================
[2026-06-27 20:19:09,030.030 INFO    ] Launching Daemon at Sat Jun 27 20:19:09 IST 2026
[2026-06-27 20:19:09,041.041 INFO    ] ================================================
[2026-06-27 20:19:09,384.384 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:19:09
[2026-06-27 20:19:09,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:19:09,844.844 INFO    ] Initializing speech engine...
[2026-06-27 20:19:09,850.850 INFO    ] 2026-06-27 20:19:09
[2026-06-27 20:19:10,057.057 INFO    ] 2026-06-27 20:19:10
[2026-06-27 20:19:10,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:19:10,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:19:10,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:19:10,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:19:10,469.469 INFO    ] time= 27/06/2026 20:19:10
[2026-06-27 20:19:10,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:19:10,510.510 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:19:10,583.583 INFO    ] No existing commands found in stream
[2026-06-27 20:19:15,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:19:15,595.595 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-27 20:19:16,141.141 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 20:19:16,142.142 INFO    ] Checking for system updates...
[2026-06-27 20:19:16,164.164 INFO    ] 200
[2026-06-27 20:19:16,166.166 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:19:16,198.198 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:19:16,200.200 INFO    ] No update needed
[2026-06-27 20:19:16,201.201 INFO    ] Checking for camera pi updates...
[2026-06-27 20:19:16,222.222 INFO    ] 200
[2026-06-27 20:19:16,223.223 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:19:16,248.248 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:19:16,300.300 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:19:16,301.301 INFO    ] No camera update needed
[2026-06-27 20:19:16,303.303 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:19:16,304.304 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:19:16,307.307 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:19:16,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:19:18,341.341 INFO    ] ================================================
[2026-06-27 20:19:18,356.356 INFO    ] Launching Daemon at Sat Jun 27 20:19:18 IST 2026
[2026-06-27 20:19:18,367.367 INFO    ] ================================================
[2026-06-27 20:19:18,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:19:18
[2026-06-27 20:19:19,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:19:19,186.186 INFO    ] Initializing speech engine...
[2026-06-27 20:19:19,191.191 INFO    ] 2026-06-27 20:19:19
[2026-06-27 20:19:19,394.394 INFO    ] 2026-06-27 20:19:19
[2026-06-27 20:19:19,423.423 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:19:19,549.549 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:19:19,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:19:19,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:19:19,819.819 INFO    ] time= 27/06/2026 20:19:19
[2026-06-27 20:19:19,842.842 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:19:19,849.849 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:19:19,915.915 INFO    ] No existing commands found in stream
[2026-06-27 20:19:24,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:19:24,932.932 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-27 20:19:26,989.989 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 20:19:26,991.991 INFO    ] Checking for system updates...
[2026-06-27 20:19:27,016.016 INFO    ] 200
[2026-06-27 20:19:27,018.018 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:19:27,048.048 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:19:27,050.050 INFO    ] No update needed
[2026-06-27 20:19:27,051.051 INFO    ] Checking for camera pi updates...
[2026-06-27 20:19:27,074.074 INFO    ] 200
[2026-06-27 20:19:27,075.075 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:19:27,098.098 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:19:27,143.143 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:19:27,145.145 INFO    ] No camera update needed
[2026-06-27 20:19:27,146.146 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:19:27,147.147 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:19:27,150.150 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:19:27,153.153 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:19:29,193.193 INFO    ] ================================================
[2026-06-27 20:19:29,208.208 INFO    ] Launching Daemon at Sat Jun 27 20:19:29 IST 2026
[2026-06-27 20:19:29,218.218 INFO    ] ================================================
[2026-06-27 20:19:29,581.581 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:19:29
[2026-06-27 20:19:29,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:19:30,033.033 INFO    ] Initializing speech engine...
[2026-06-27 20:19:30,046.046 INFO    ] 2026-06-27 20:19:30
[2026-06-27 20:19:30,254.254 INFO    ] 2026-06-27 20:19:30
[2026-06-27 20:19:30,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:19:30,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:19:30,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:19:30,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:19:30,671.671 INFO    ] time= 27/06/2026 20:19:30
[2026-06-27 20:19:30,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:19:30,701.701 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:19:30,796.796 INFO    ] No existing commands found in stream
[2026-06-27 20:19:35,810.810 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:19:35,813.813 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-27 20:19:38,069.069 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:19:38,070.070 INFO    ] Checking for system updates...
[2026-06-27 20:19:38,092.092 INFO    ] 200
[2026-06-27 20:19:38,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:19:38,124.124 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:19:38,125.125 INFO    ] No update needed
[2026-06-27 20:19:38,127.127 INFO    ] Checking for camera pi updates...
[2026-06-27 20:19:38,147.147 INFO    ] 200
[2026-06-27 20:19:38,149.149 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:19:38,177.177 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:19:38,203.203 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:19:38,205.205 INFO    ] No camera update needed
[2026-06-27 20:19:38,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:19:38,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:19:38,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:19:38,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:19:40,254.254 INFO    ] ================================================
[2026-06-27 20:19:40,269.269 INFO    ] Launching Daemon at Sat Jun 27 20:19:40 IST 2026
[2026-06-27 20:19:40,280.280 INFO    ] ================================================
[2026-06-27 20:19:40,610.610 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:19:40
[2026-06-27 20:19:40,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:19:41,061.061 INFO    ] Initializing speech engine...
[2026-06-27 20:19:41,071.071 INFO    ] 2026-06-27 20:19:41
[2026-06-27 20:19:41,283.283 INFO    ] 2026-06-27 20:19:41
[2026-06-27 20:19:41,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:19:41,500.500 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:19:41,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:19:41,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:19:41,710.710 INFO    ] time= 27/06/2026 20:19:41
[2026-06-27 20:19:41,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:19:41,741.741 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:19:41,807.807 INFO    ] No existing commands found in stream
[2026-06-27 20:19:46,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:19:46,820.820 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-27 20:19:50,454.454 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 20:19:50,456.456 INFO    ] Checking for system updates...
[2026-06-27 20:19:50,478.478 INFO    ] 200
[2026-06-27 20:19:50,479.479 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:19:50,515.515 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:19:50,516.516 INFO    ] No update needed
[2026-06-27 20:19:50,517.517 INFO    ] Checking for camera pi updates...
[2026-06-27 20:19:50,541.541 INFO    ] 200
[2026-06-27 20:19:50,542.542 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:19:50,570.570 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:19:50,611.611 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:19:50,613.613 INFO    ] No camera update needed
[2026-06-27 20:19:50,614.614 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:19:50,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:19:50,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:19:50,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:19:52,661.661 INFO    ] ================================================
[2026-06-27 20:19:52,676.676 INFO    ] Launching Daemon at Sat Jun 27 20:19:52 IST 2026
[2026-06-27 20:19:52,686.686 INFO    ] ================================================
[2026-06-27 20:19:53,074.074 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:19:53
[2026-06-27 20:19:53,413.413 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:19:53,558.558 INFO    ] Initializing speech engine...
[2026-06-27 20:19:53,567.567 INFO    ] 2026-06-27 20:19:53
[2026-06-27 20:19:53,777.777 INFO    ] 2026-06-27 20:19:53
[2026-06-27 20:19:53,806.806 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:19:53,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:19:54,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:19:54,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:19:54,218.218 INFO    ] time= 27/06/2026 20:19:54
[2026-06-27 20:19:54,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:19:54,225.225 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:19:54,316.316 INFO    ] No existing commands found in stream
[2026-06-27 20:19:59,330.330 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:19:59,334.334 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-27 20:20:02,905.905 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:20:02,907.907 INFO    ] Checking for system updates...
[2026-06-27 20:20:02,928.928 INFO    ] 200
[2026-06-27 20:20:02,929.929 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:20:02,960.960 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:20:02,962.962 INFO    ] No update needed
[2026-06-27 20:20:02,963.963 INFO    ] Checking for camera pi updates...
[2026-06-27 20:20:02,984.984 INFO    ] 200
[2026-06-27 20:20:02,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:20:03,014.014 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:20:03,041.041 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:20:03,043.043 INFO    ] No camera update needed
[2026-06-27 20:20:03,047.047 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:20:03,049.049 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:20:03,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:20:03,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:20:05,100.100 INFO    ] ================================================
[2026-06-27 20:20:05,117.117 INFO    ] Launching Daemon at Sat Jun 27 20:20:05 IST 2026
[2026-06-27 20:20:05,128.128 INFO    ] ================================================
[2026-06-27 20:20:05,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:20:05
[2026-06-27 20:20:05,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:20:05,908.908 INFO    ] Initializing speech engine...
[2026-06-27 20:20:05,912.912 INFO    ] 2026-06-27 20:20:05
[2026-06-27 20:20:06,116.116 INFO    ] 2026-06-27 20:20:06
[2026-06-27 20:20:06,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:20:06,329.329 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:20:06,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:20:06,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:20:06,533.533 INFO    ] time= 27/06/2026 20:20:06
[2026-06-27 20:20:06,560.560 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:20:06,566.566 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:20:06,632.632 INFO    ] No existing commands found in stream
[2026-06-27 20:20:11,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:20:11,649.649 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-27 20:20:13,951.951 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:20:13,952.952 INFO    ] Checking for system updates...
[2026-06-27 20:20:13,990.990 INFO    ] 200
[2026-06-27 20:20:13,993.993 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:20:14,061.061 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:20:14,065.065 INFO    ] No update needed
[2026-06-27 20:20:14,067.067 INFO    ] Checking for camera pi updates...
[2026-06-27 20:20:14,092.092 INFO    ] 200
[2026-06-27 20:20:14,094.094 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:20:14,127.127 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:20:14,178.178 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:20:14,179.179 INFO    ] No camera update needed
[2026-06-27 20:20:14,181.181 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:20:14,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:20:14,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:20:14,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:20:16,230.230 INFO    ] ================================================
[2026-06-27 20:20:16,246.246 INFO    ] Launching Daemon at Sat Jun 27 20:20:16 IST 2026
[2026-06-27 20:20:16,257.257 INFO    ] ================================================
[2026-06-27 20:20:16,582.582 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:20:16
[2026-06-27 20:20:16,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:20:17,032.032 INFO    ] Initializing speech engine...
[2026-06-27 20:20:17,036.036 INFO    ] 2026-06-27 20:20:17
[2026-06-27 20:20:17,228.228 INFO    ] 2026-06-27 20:20:17
[2026-06-27 20:20:17,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:20:17,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:20:17,461.461 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:20:17,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:20:17,647.647 INFO    ] time= 27/06/2026 20:20:17
[2026-06-27 20:20:17,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:20:17,744.744 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:20:17,832.832 INFO    ] No existing commands found in stream
[2026-06-27 20:20:22,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:20:22,844.844 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-27 20:20:24,278.278 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 20:20:24,280.280 INFO    ] Checking for system updates...
[2026-06-27 20:20:24,301.301 INFO    ] 200
[2026-06-27 20:20:24,302.302 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:20:24,333.333 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:20:24,334.334 INFO    ] No update needed
[2026-06-27 20:20:24,336.336 INFO    ] Checking for camera pi updates...
[2026-06-27 20:20:24,355.355 INFO    ] 200
[2026-06-27 20:20:24,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:20:24,380.380 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:20:24,520.520 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:20:24,521.521 INFO    ] No camera update needed
[2026-06-27 20:20:24,523.523 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:20:24,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:20:24,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:20:24,530.530 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:20:26,568.568 INFO    ] ================================================
[2026-06-27 20:20:26,583.583 INFO    ] Launching Daemon at Sat Jun 27 20:20:26 IST 2026
[2026-06-27 20:20:26,594.594 INFO    ] ================================================
[2026-06-27 20:20:26,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:20:26
[2026-06-27 20:20:27,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:20:27,375.375 INFO    ] Initializing speech engine...
[2026-06-27 20:20:27,383.383 INFO    ] 2026-06-27 20:20:27
[2026-06-27 20:20:27,587.587 INFO    ] 2026-06-27 20:20:27
[2026-06-27 20:20:27,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:20:27,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:20:27,776.776 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:20:27,931.931 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:20:27,972.972 INFO    ] time= 27/06/2026 20:20:27
[2026-06-27 20:20:27,998.998 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:20:28,062.062 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:20:28,170.170 INFO    ] No existing commands found in stream
[2026-06-27 20:20:33,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:20:33,179.179 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-27 20:20:38,016.016 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:20:38,018.018 INFO    ] Checking for system updates...
[2026-06-27 20:20:38,054.054 INFO    ] 200
[2026-06-27 20:20:38,057.057 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:20:38,117.117 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:20:38,119.119 INFO    ] No update needed
[2026-06-27 20:20:38,122.122 INFO    ] Checking for camera pi updates...
[2026-06-27 20:20:38,144.144 INFO    ] 200
[2026-06-27 20:20:38,145.145 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:20:38,171.171 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:20:38,216.216 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:20:38,217.217 INFO    ] No camera update needed
[2026-06-27 20:20:38,218.218 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:20:38,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:20:38,222.222 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:20:38,225.225 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:20:40,263.263 INFO    ] ================================================
[2026-06-27 20:20:40,279.279 INFO    ] Launching Daemon at Sat Jun 27 20:20:40 IST 2026
[2026-06-27 20:20:40,291.291 INFO    ] ================================================
[2026-06-27 20:20:40,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:20:40
[2026-06-27 20:20:40,955.955 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:20:41,087.087 INFO    ] Initializing speech engine...
[2026-06-27 20:20:41,091.091 INFO    ] 2026-06-27 20:20:41
[2026-06-27 20:20:41,311.311 INFO    ] 2026-06-27 20:20:41
[2026-06-27 20:20:41,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:20:41,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:20:41,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:20:41,670.670 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:20:41,738.738 INFO    ] time= 27/06/2026 20:20:41
[2026-06-27 20:20:41,763.763 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:20:41,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:20:41,837.837 INFO    ] No existing commands found in stream
[2026-06-27 20:20:46,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:20:46,854.854 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-27 20:20:48,431.431 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:20:48,432.432 INFO    ] Checking for system updates...
[2026-06-27 20:20:48,453.453 INFO    ] 200
[2026-06-27 20:20:48,454.454 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:20:48,485.485 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:20:48,487.487 INFO    ] No update needed
[2026-06-27 20:20:48,488.488 INFO    ] Checking for camera pi updates...
[2026-06-27 20:20:48,507.507 INFO    ] 200
[2026-06-27 20:20:48,509.509 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:20:48,532.532 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:20:48,568.568 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:20:48,570.570 INFO    ] No camera update needed
[2026-06-27 20:20:48,571.571 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:20:48,572.572 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:20:48,575.575 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:20:48,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:20:50,619.619 INFO    ] ================================================
[2026-06-27 20:20:50,634.634 INFO    ] Launching Daemon at Sat Jun 27 20:20:50 IST 2026
[2026-06-27 20:20:50,644.644 INFO    ] ================================================
[2026-06-27 20:20:50,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:20:50
[2026-06-27 20:20:51,292.292 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:20:51,429.429 INFO    ] Initializing speech engine...
[2026-06-27 20:20:51,442.442 INFO    ] 2026-06-27 20:20:51
[2026-06-27 20:20:51,663.663 INFO    ] 2026-06-27 20:20:51
[2026-06-27 20:20:51,696.696 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:20:51,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:20:51,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:20:52,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:20:52,101.101 INFO    ] time= 27/06/2026 20:20:52
[2026-06-27 20:20:52,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:20:52,147.147 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:20:52,225.225 INFO    ] No existing commands found in stream
[2026-06-27 20:20:57,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:20:57,237.237 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-27 20:20:57,711.711 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 20:20:57,713.713 INFO    ] Checking for system updates...
[2026-06-27 20:20:57,735.735 INFO    ] 200
[2026-06-27 20:20:57,736.736 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:20:57,767.767 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:20:57,769.769 INFO    ] No update needed
[2026-06-27 20:20:57,770.770 INFO    ] Checking for camera pi updates...
[2026-06-27 20:20:57,789.789 INFO    ] 200
[2026-06-27 20:20:57,791.791 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:20:57,814.814 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:20:57,852.852 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:20:57,854.854 INFO    ] No camera update needed
[2026-06-27 20:20:57,855.855 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:20:57,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:20:57,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:20:57,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:20:59,901.901 INFO    ] ================================================
[2026-06-27 20:20:59,916.916 INFO    ] Launching Daemon at Sat Jun 27 20:20:59 IST 2026
[2026-06-27 20:20:59,928.928 INFO    ] ================================================
[2026-06-27 20:21:00,288.288 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:21:00
[2026-06-27 20:21:00,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:21:00,742.742 INFO    ] Initializing speech engine...
[2026-06-27 20:21:00,750.750 INFO    ] 2026-06-27 20:21:00
[2026-06-27 20:21:00,968.968 INFO    ] 2026-06-27 20:21:00
[2026-06-27 20:21:00,999.999 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:21:01,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:21:01,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:21:01,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:21:01,410.410 INFO    ] time= 27/06/2026 20:21:01
[2026-06-27 20:21:01,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:21:01,456.456 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:21:01,526.526 INFO    ] No existing commands found in stream
[2026-06-27 20:21:06,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:21:06,540.540 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-27 20:21:07,479.479 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 20:21:07,481.481 INFO    ] Checking for system updates...
[2026-06-27 20:21:07,506.506 INFO    ] 200
[2026-06-27 20:21:07,508.508 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:21:07,541.541 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:21:07,543.543 INFO    ] No update needed
[2026-06-27 20:21:07,545.545 INFO    ] Checking for camera pi updates...
[2026-06-27 20:21:07,569.569 INFO    ] 200
[2026-06-27 20:21:07,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:21:07,601.601 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:21:07,650.650 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:21:07,652.652 INFO    ] No camera update needed
[2026-06-27 20:21:07,654.654 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:21:07,656.656 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:21:07,660.660 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:21:07,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:21:09,698.698 INFO    ] ================================================
[2026-06-27 20:21:09,713.713 INFO    ] Launching Daemon at Sat Jun 27 20:21:09 IST 2026
[2026-06-27 20:21:09,724.724 INFO    ] ================================================
[2026-06-27 20:21:10,068.068 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:21:10
[2026-06-27 20:21:10,387.387 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:21:10,520.520 INFO    ] Initializing speech engine...
[2026-06-27 20:21:10,527.527 INFO    ] 2026-06-27 20:21:10
[2026-06-27 20:21:10,741.741 INFO    ] 2026-06-27 20:21:10
[2026-06-27 20:21:10,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:21:10,954.954 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:21:10,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:21:11,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:21:11,146.146 INFO    ] time= 27/06/2026 20:21:11
[2026-06-27 20:21:11,185.185 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:21:11,191.191 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:21:11,259.259 INFO    ] No existing commands found in stream
[2026-06-27 20:21:16,268.268 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:21:16,270.270 INFO    ] Waiting 2.84 seconds before fallback handling...
[2026-06-27 20:21:19,535.535 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 20:21:19,536.536 INFO    ] Checking for system updates...
[2026-06-27 20:21:19,558.558 INFO    ] 200
[2026-06-27 20:21:19,560.560 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:21:19,591.591 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:21:19,592.592 INFO    ] No update needed
[2026-06-27 20:21:19,594.594 INFO    ] Checking for camera pi updates...
[2026-06-27 20:21:19,614.614 INFO    ] 200
[2026-06-27 20:21:19,615.615 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:21:19,639.639 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:21:19,691.691 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:21:19,693.693 INFO    ] No camera update needed
[2026-06-27 20:21:19,694.694 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:21:19,695.695 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:21:19,698.698 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:21:19,701.701 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:21:21,741.741 INFO    ] ================================================
[2026-06-27 20:21:21,757.757 INFO    ] Launching Daemon at Sat Jun 27 20:21:21 IST 2026
[2026-06-27 20:21:21,769.769 INFO    ] ================================================
[2026-06-27 20:21:22,105.105 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:21:22
[2026-06-27 20:21:22,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:21:22,568.568 INFO    ] Initializing speech engine...
[2026-06-27 20:21:22,573.573 INFO    ] 2026-06-27 20:21:22
[2026-06-27 20:21:22,783.783 INFO    ] 2026-06-27 20:21:22
[2026-06-27 20:21:22,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:21:22,951.951 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:21:22,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:21:23,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:21:23,169.169 INFO    ] time= 27/06/2026 20:21:23
[2026-06-27 20:21:23,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:21:23,256.256 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:21:23,356.356 INFO    ] No existing commands found in stream
[2026-06-27 20:21:28,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:21:28,369.369 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-27 20:21:32,406.406 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 20:21:32,408.408 INFO    ] Checking for system updates...
[2026-06-27 20:21:32,430.430 INFO    ] 200
[2026-06-27 20:21:32,432.432 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:21:32,469.469 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:21:32,470.470 INFO    ] No update needed
[2026-06-27 20:21:32,472.472 INFO    ] Checking for camera pi updates...
[2026-06-27 20:21:32,498.498 INFO    ] 200
[2026-06-27 20:21:32,500.500 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:21:32,530.530 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:21:32,559.559 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:21:32,560.560 INFO    ] No camera update needed
[2026-06-27 20:21:32,561.561 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:21:32,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:21:32,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:21:32,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:21:34,607.607 INFO    ] ================================================
[2026-06-27 20:21:34,623.623 INFO    ] Launching Daemon at Sat Jun 27 20:21:34 IST 2026
[2026-06-27 20:21:34,634.634 INFO    ] ================================================
[2026-06-27 20:21:35,010.010 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:21:35
[2026-06-27 20:21:35,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:21:35,501.501 INFO    ] Initializing speech engine...
[2026-06-27 20:21:35,505.505 INFO    ] 2026-06-27 20:21:35
[2026-06-27 20:21:35,713.713 INFO    ] 2026-06-27 20:21:35
[2026-06-27 20:21:35,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:21:35,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:21:35,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:21:36,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:21:36,135.135 INFO    ] time= 27/06/2026 20:21:36
[2026-06-27 20:21:36,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:21:36,165.165 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:21:36,234.234 INFO    ] No existing commands found in stream
[2026-06-27 20:21:41,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:21:41,250.250 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-27 20:21:43,651.651 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 20:21:43,653.653 INFO    ] Checking for system updates...
[2026-06-27 20:21:43,676.676 INFO    ] 200
[2026-06-27 20:21:43,678.678 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:21:43,711.711 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:21:43,713.713 INFO    ] No update needed
[2026-06-27 20:21:43,715.715 INFO    ] Checking for camera pi updates...
[2026-06-27 20:21:43,734.734 INFO    ] 200
[2026-06-27 20:21:43,736.736 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:21:43,760.760 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:21:43,803.803 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:21:43,805.805 INFO    ] No camera update needed
[2026-06-27 20:21:43,806.806 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:21:43,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:21:43,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:21:43,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:21:45,854.854 INFO    ] ================================================
[2026-06-27 20:21:45,870.870 INFO    ] Launching Daemon at Sat Jun 27 20:21:45 IST 2026
[2026-06-27 20:21:45,881.881 INFO    ] ================================================
[2026-06-27 20:21:46,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:21:46
[2026-06-27 20:21:46,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:21:46,700.700 INFO    ] Initializing speech engine...
[2026-06-27 20:21:46,711.711 INFO    ] 2026-06-27 20:21:46
[2026-06-27 20:21:46,916.916 INFO    ] 2026-06-27 20:21:46
[2026-06-27 20:21:46,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:21:47,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:21:47,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:21:47,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:21:47,336.336 INFO    ] time= 27/06/2026 20:21:47
[2026-06-27 20:21:47,360.360 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:21:47,366.366 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:21:47,434.434 INFO    ] No existing commands found in stream
[2026-06-27 20:21:52,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:21:52,446.446 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-27 20:21:53,676.676 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 20:21:53,678.678 INFO    ] Checking for system updates...
[2026-06-27 20:21:53,700.700 INFO    ] 200
[2026-06-27 20:21:53,701.701 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:21:53,735.735 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:21:53,737.737 INFO    ] No update needed
[2026-06-27 20:21:53,738.738 INFO    ] Checking for camera pi updates...
[2026-06-27 20:21:53,757.757 INFO    ] 200
[2026-06-27 20:21:53,759.759 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:21:53,782.782 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:21:53,868.868 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:21:53,869.869 INFO    ] No camera update needed
[2026-06-27 20:21:53,871.871 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:21:53,872.872 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:21:53,876.876 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:21:53,878.878 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:21:55,920.920 INFO    ] ================================================
[2026-06-27 20:21:55,936.936 INFO    ] Launching Daemon at Sat Jun 27 20:21:55 IST 2026
[2026-06-27 20:21:55,946.946 INFO    ] ================================================
[2026-06-27 20:21:56,321.321 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:21:56
[2026-06-27 20:21:56,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:21:56,814.814 INFO    ] Initializing speech engine...
[2026-06-27 20:21:56,818.818 INFO    ] 2026-06-27 20:21:56
[2026-06-27 20:21:57,027.027 INFO    ] 2026-06-27 20:21:57
[2026-06-27 20:21:57,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:21:57,243.243 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:21:57,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:21:57,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:21:57,473.473 INFO    ] time= 27/06/2026 20:21:57
[2026-06-27 20:21:57,478.478 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:21:57,480.480 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:21:57,548.548 INFO    ] No existing commands found in stream
[2026-06-27 20:22:02,562.562 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:22:02,564.564 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-27 20:22:05,872.872 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 20:22:05,874.874 INFO    ] Checking for system updates...
[2026-06-27 20:22:05,896.896 INFO    ] 200
[2026-06-27 20:22:05,898.898 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:22:05,929.929 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:22:05,931.931 INFO    ] No update needed
[2026-06-27 20:22:05,932.932 INFO    ] Checking for camera pi updates...
[2026-06-27 20:22:05,952.952 INFO    ] 200
[2026-06-27 20:22:05,954.954 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:22:05,978.978 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:22:06,020.020 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:22:06,021.021 INFO    ] No camera update needed
[2026-06-27 20:22:06,023.023 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:22:06,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:22:06,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:22:06,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:22:08,071.071 INFO    ] ================================================
[2026-06-27 20:22:08,086.086 INFO    ] Launching Daemon at Sat Jun 27 20:22:08 IST 2026
[2026-06-27 20:22:08,097.097 INFO    ] ================================================
[2026-06-27 20:22:08,433.433 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:22:08
[2026-06-27 20:22:08,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:22:08,874.874 INFO    ] Initializing speech engine...
[2026-06-27 20:22:08,882.882 INFO    ] 2026-06-27 20:22:08
[2026-06-27 20:22:09,096.096 INFO    ] 2026-06-27 20:22:09
[2026-06-27 20:22:09,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:22:09,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:22:09,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:22:09,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:22:09,519.519 INFO    ] time= 27/06/2026 20:22:09
[2026-06-27 20:22:09,542.542 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:22:09,549.549 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:22:09,640.640 INFO    ] No existing commands found in stream
[2026-06-27 20:22:14,649.649 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:22:14,651.651 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-27 20:22:17,120.120 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 20:22:17,121.121 INFO    ] Checking for system updates...
[2026-06-27 20:22:17,143.143 INFO    ] 200
[2026-06-27 20:22:17,145.145 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:22:17,178.178 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:22:17,179.179 INFO    ] No update needed
[2026-06-27 20:22:17,180.180 INFO    ] Checking for camera pi updates...
[2026-06-27 20:22:17,200.200 INFO    ] 200
[2026-06-27 20:22:17,201.201 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:22:17,227.227 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:22:17,268.268 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:22:17,269.269 INFO    ] No camera update needed
[2026-06-27 20:22:17,270.270 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:22:17,271.271 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:22:17,274.274 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:22:17,277.277 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:22:19,315.315 INFO    ] ================================================
[2026-06-27 20:22:19,330.330 INFO    ] Launching Daemon at Sat Jun 27 20:22:19 IST 2026
[2026-06-27 20:22:19,341.341 INFO    ] ================================================
[2026-06-27 20:22:19,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:22:19
[2026-06-27 20:22:20,013.013 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:22:20,155.155 INFO    ] Initializing speech engine...
[2026-06-27 20:22:20,161.161 INFO    ] 2026-06-27 20:22:20
[2026-06-27 20:22:20,363.363 INFO    ] 2026-06-27 20:22:20
[2026-06-27 20:22:20,393.393 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:22:20,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:22:20,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:22:20,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:22:20,782.782 INFO    ] time= 27/06/2026 20:22:20
[2026-06-27 20:22:20,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:22:20,812.812 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:22:20,877.877 INFO    ] No existing commands found in stream
[2026-06-27 20:22:25,886.886 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:22:25,889.889 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-27 20:22:28,710.710 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 20:22:28,711.711 INFO    ] Checking for system updates...
[2026-06-27 20:22:28,732.732 INFO    ] 200
[2026-06-27 20:22:28,733.733 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:22:28,764.764 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:22:28,766.766 INFO    ] No update needed
[2026-06-27 20:22:28,767.767 INFO    ] Checking for camera pi updates...
[2026-06-27 20:22:28,787.787 INFO    ] 200
[2026-06-27 20:22:28,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:22:28,813.813 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:22:28,959.959 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:22:28,960.960 INFO    ] No camera update needed
[2026-06-27 20:22:28,962.962 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:22:28,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:22:28,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:22:28,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:22:31,009.009 INFO    ] ================================================
[2026-06-27 20:22:31,024.024 INFO    ] Launching Daemon at Sat Jun 27 20:22:31 IST 2026
[2026-06-27 20:22:31,035.035 INFO    ] ================================================
[2026-06-27 20:22:31,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:22:31
[2026-06-27 20:22:31,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:22:31,820.820 INFO    ] Initializing speech engine...
[2026-06-27 20:22:31,826.826 INFO    ] 2026-06-27 20:22:31
[2026-06-27 20:22:32,030.030 INFO    ] 2026-06-27 20:22:32
[2026-06-27 20:22:32,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:22:32,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:22:32,239.239 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:22:32,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:22:32,486.486 INFO    ] time= 27/06/2026 20:22:32
[2026-06-27 20:22:32,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:22:32,529.529 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:22:32,600.600 INFO    ] No existing commands found in stream
[2026-06-27 20:22:37,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:22:37,612.612 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-27 20:22:38,730.730 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 20:22:38,731.731 INFO    ] Checking for system updates...
[2026-06-27 20:22:38,754.754 INFO    ] 200
[2026-06-27 20:22:38,756.756 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:22:38,786.786 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:22:38,788.788 INFO    ] No update needed
[2026-06-27 20:22:38,789.789 INFO    ] Checking for camera pi updates...
[2026-06-27 20:22:38,809.809 INFO    ] 200
[2026-06-27 20:22:38,810.810 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:22:38,837.837 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:22:38,879.879 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:22:38,881.881 INFO    ] No camera update needed
[2026-06-27 20:22:38,882.882 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:22:38,883.883 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:22:38,886.886 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:22:38,889.889 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:22:40,927.927 INFO    ] ================================================
[2026-06-27 20:22:40,942.942 INFO    ] Launching Daemon at Sat Jun 27 20:22:40 IST 2026
[2026-06-27 20:22:40,953.953 INFO    ] ================================================
[2026-06-27 20:22:41,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:22:41
[2026-06-27 20:22:41,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:22:41,822.822 INFO    ] Initializing speech engine...
[2026-06-27 20:22:41,828.828 INFO    ] 2026-06-27 20:22:41
[2026-06-27 20:22:42,038.038 INFO    ] 2026-06-27 20:22:42
[2026-06-27 20:22:42,068.068 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:22:42,256.256 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:22:42,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:22:42,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:22:42,462.462 INFO    ] time= 27/06/2026 20:22:42
[2026-06-27 20:22:42,491.491 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:22:42,497.497 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:22:42,566.566 INFO    ] No existing commands found in stream
[2026-06-27 20:22:47,580.580 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:22:47,584.584 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-27 20:22:49,522.522 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 20:22:49,523.523 INFO    ] Checking for system updates...
[2026-06-27 20:22:49,546.546 INFO    ] 200
[2026-06-27 20:22:49,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:22:49,579.579 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:22:49,580.580 INFO    ] No update needed
[2026-06-27 20:22:49,581.581 INFO    ] Checking for camera pi updates...
[2026-06-27 20:22:49,603.603 INFO    ] 200
[2026-06-27 20:22:49,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:22:49,628.628 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:22:49,673.673 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:22:49,674.674 INFO    ] No camera update needed
[2026-06-27 20:22:49,676.676 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:22:49,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:22:49,680.680 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:22:49,682.682 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:22:51,720.720 INFO    ] ================================================
[2026-06-27 20:22:51,736.736 INFO    ] Launching Daemon at Sat Jun 27 20:22:51 IST 2026
[2026-06-27 20:22:51,746.746 INFO    ] ================================================
[2026-06-27 20:22:52,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:22:52
[2026-06-27 20:22:52,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:22:52,529.529 INFO    ] Initializing speech engine...
[2026-06-27 20:22:52,541.541 INFO    ] 2026-06-27 20:22:52
[2026-06-27 20:22:52,747.747 INFO    ] 2026-06-27 20:22:52
[2026-06-27 20:22:52,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:22:52,959.959 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:22:52,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:22:53,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:22:53,157.157 INFO    ] time= 27/06/2026 20:22:53
[2026-06-27 20:22:53,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:22:53,196.196 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:22:53,262.262 INFO    ] No existing commands found in stream
[2026-06-27 20:22:58,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:22:58,275.275 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-27 20:23:00,366.366 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 20:23:00,368.368 INFO    ] Checking for system updates...
[2026-06-27 20:23:00,389.389 INFO    ] 200
[2026-06-27 20:23:00,391.391 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:23:00,421.421 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:23:00,422.422 INFO    ] No update needed
[2026-06-27 20:23:00,424.424 INFO    ] Checking for camera pi updates...
[2026-06-27 20:23:00,444.444 INFO    ] 200
[2026-06-27 20:23:00,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:23:00,469.469 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:23:00,513.513 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:23:00,514.514 INFO    ] No camera update needed
[2026-06-27 20:23:00,516.516 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:23:00,517.517 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:23:00,520.520 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:23:00,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:23:02,548.548 INFO    ] ================================================
[2026-06-27 20:23:02,556.556 INFO    ] Launching Daemon at Sat Jun 27 20:23:02 IST 2026
[2026-06-27 20:23:02,562.562 INFO    ] ================================================
[2026-06-27 20:23:02,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:23:02
[2026-06-27 20:23:03,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:23:03,387.387 INFO    ] Initializing speech engine...
[2026-06-27 20:23:03,397.397 INFO    ] 2026-06-27 20:23:03
[2026-06-27 20:23:03,602.602 INFO    ] 2026-06-27 20:23:03
[2026-06-27 20:23:03,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:23:03,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:23:03,818.818 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:23:03,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:23:04,023.023 INFO    ] time= 27/06/2026 20:23:03
[2026-06-27 20:23:04,045.045 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:23:04,051.051 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:23:04,123.123 INFO    ] No existing commands found in stream
[2026-06-27 20:23:09,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:23:09,153.153 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-27 20:23:10,586.586 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 20:23:10,588.588 INFO    ] Checking for system updates...
[2026-06-27 20:23:10,611.611 INFO    ] 200
[2026-06-27 20:23:10,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:23:10,642.642 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:23:10,643.643 INFO    ] No update needed
[2026-06-27 20:23:10,645.645 INFO    ] Checking for camera pi updates...
[2026-06-27 20:23:10,665.665 INFO    ] 200
[2026-06-27 20:23:10,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:23:10,691.691 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:23:10,740.740 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:23:10,741.741 INFO    ] No camera update needed
[2026-06-27 20:23:10,742.742 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:23:10,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:23:10,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:23:10,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:23:12,788.788 INFO    ] ================================================
[2026-06-27 20:23:12,803.803 INFO    ] Launching Daemon at Sat Jun 27 20:23:12 IST 2026
[2026-06-27 20:23:12,813.813 INFO    ] ================================================
[2026-06-27 20:23:13,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:23:13
[2026-06-27 20:23:13,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:23:13,628.628 INFO    ] Initializing speech engine...
[2026-06-27 20:23:13,636.636 INFO    ] 2026-06-27 20:23:13
[2026-06-27 20:23:13,843.843 INFO    ] 2026-06-27 20:23:13
[2026-06-27 20:23:13,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:23:14,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:23:14,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:23:14,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:23:14,470.470 INFO    ] time= 27/06/2026 20:23:14
[2026-06-27 20:23:14,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:23:14,477.477 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:23:14,562.562 INFO    ] No existing commands found in stream
[2026-06-27 20:23:19,572.572 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:23:19,575.575 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-27 20:23:26,331.331 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 20:23:26,332.332 INFO    ] Checking for system updates...
[2026-06-27 20:23:26,355.355 INFO    ] 200
[2026-06-27 20:23:26,356.356 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:23:26,389.389 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:23:26,391.391 INFO    ] No update needed
[2026-06-27 20:23:26,392.392 INFO    ] Checking for camera pi updates...
[2026-06-27 20:23:26,412.412 INFO    ] 200
[2026-06-27 20:23:26,413.413 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:23:26,437.437 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:23:26,481.481 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:23:26,483.483 INFO    ] No camera update needed
[2026-06-27 20:23:26,484.484 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:23:26,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:23:26,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:23:26,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:23:28,534.534 INFO    ] ================================================
[2026-06-27 20:23:28,549.549 INFO    ] Launching Daemon at Sat Jun 27 20:23:28 IST 2026
[2026-06-27 20:23:28,559.559 INFO    ] ================================================
[2026-06-27 20:23:28,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:23:28
[2026-06-27 20:23:29,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:23:29,359.359 INFO    ] Initializing speech engine...
[2026-06-27 20:23:29,367.367 INFO    ] 2026-06-27 20:23:29
[2026-06-27 20:23:29,581.581 INFO    ] 2026-06-27 20:23:29
[2026-06-27 20:23:29,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:23:29,797.797 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:23:29,807.807 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:23:29,938.938 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:23:30,002.002 INFO    ] time= 27/06/2026 20:23:29
[2026-06-27 20:23:30,030.030 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:23:30,036.036 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:23:30,105.105 INFO    ] No existing commands found in stream
[2026-06-27 20:23:35,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:23:35,116.116 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-27 20:23:39,184.184 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 20:23:39,185.185 INFO    ] Checking for system updates...
[2026-06-27 20:23:39,207.207 INFO    ] 200
[2026-06-27 20:23:39,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:23:39,239.239 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:23:39,240.240 INFO    ] No update needed
[2026-06-27 20:23:39,241.241 INFO    ] Checking for camera pi updates...
[2026-06-27 20:23:39,265.265 INFO    ] 200
[2026-06-27 20:23:39,266.266 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:23:39,294.294 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:23:39,348.348 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:23:39,349.349 INFO    ] No camera update needed
[2026-06-27 20:23:39,351.351 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:23:39,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:23:39,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:23:39,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:23:41,395.395 INFO    ] ================================================
[2026-06-27 20:23:41,410.410 INFO    ] Launching Daemon at Sat Jun 27 20:23:41 IST 2026
[2026-06-27 20:23:41,421.421 INFO    ] ================================================
[2026-06-27 20:23:41,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:23:41
[2026-06-27 20:23:42,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:23:42,221.221 INFO    ] Initializing speech engine...
[2026-06-27 20:23:42,227.227 INFO    ] 2026-06-27 20:23:42
[2026-06-27 20:23:42,431.431 INFO    ] 2026-06-27 20:23:42
[2026-06-27 20:23:42,458.458 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:23:42,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:23:42,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:23:42,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:23:42,828.828 INFO    ] time= 27/06/2026 20:23:42
[2026-06-27 20:23:42,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:23:42,877.877 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:23:42,947.947 INFO    ] No existing commands found in stream
[2026-06-27 20:23:47,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:23:47,960.960 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-27 20:23:49,231.231 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 20:23:49,233.233 INFO    ] Checking for system updates...
[2026-06-27 20:23:49,254.254 INFO    ] 200
[2026-06-27 20:23:49,256.256 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:23:49,289.289 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:23:49,290.290 INFO    ] No update needed
[2026-06-27 20:23:49,291.291 INFO    ] Checking for camera pi updates...
[2026-06-27 20:23:49,312.312 INFO    ] 200
[2026-06-27 20:23:49,314.314 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:23:49,337.337 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:23:49,388.388 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:23:49,389.389 INFO    ] No camera update needed
[2026-06-27 20:23:49,391.391 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:23:49,392.392 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:23:49,396.396 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:23:49,398.398 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:23:51,437.437 INFO    ] ================================================
[2026-06-27 20:23:51,453.453 INFO    ] Launching Daemon at Sat Jun 27 20:23:51 IST 2026
[2026-06-27 20:23:51,464.464 INFO    ] ================================================
[2026-06-27 20:23:51,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:23:51
[2026-06-27 20:23:52,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:23:52,320.320 INFO    ] Initializing speech engine...
[2026-06-27 20:23:52,333.333 INFO    ] 2026-06-27 20:23:52
[2026-06-27 20:23:52,543.543 INFO    ] 2026-06-27 20:23:52
[2026-06-27 20:23:52,572.572 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:23:52,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:23:52,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:23:52,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:23:52,953.953 INFO    ] time= 27/06/2026 20:23:52
[2026-06-27 20:23:52,988.988 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:23:52,993.993 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:23:53,064.064 INFO    ] No existing commands found in stream
[2026-06-27 20:23:58,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:23:58,077.077 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-27 20:24:01,945.945 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 20:24:01,948.948 INFO    ] Checking for system updates...
[2026-06-27 20:24:01,980.980 INFO    ] 200
[2026-06-27 20:24:01,982.982 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:24:02,028.028 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:24:02,030.030 INFO    ] No update needed
[2026-06-27 20:24:02,032.032 INFO    ] Checking for camera pi updates...
[2026-06-27 20:24:02,057.057 INFO    ] 200
[2026-06-27 20:24:02,059.059 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:24:02,088.088 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:24:02,123.123 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:24:02,125.125 INFO    ] No camera update needed
[2026-06-27 20:24:02,127.127 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:24:02,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:24:02,133.133 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:24:02,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:24:04,177.177 INFO    ] ================================================
[2026-06-27 20:24:04,192.192 INFO    ] Launching Daemon at Sat Jun 27 20:24:04 IST 2026
[2026-06-27 20:24:04,203.203 INFO    ] ================================================
[2026-06-27 20:24:04,589.589 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:24:04
[2026-06-27 20:24:04,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:24:05,070.070 INFO    ] Initializing speech engine...
[2026-06-27 20:24:05,080.080 INFO    ] 2026-06-27 20:24:05
[2026-06-27 20:24:05,289.289 INFO    ] 2026-06-27 20:24:05
[2026-06-27 20:24:05,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:24:05,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:24:05,512.512 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:24:05,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:24:05,703.703 INFO    ] time= 27/06/2026 20:24:05
[2026-06-27 20:24:05,747.747 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:24:05,748.748 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:24:05,826.826 INFO    ] No existing commands found in stream
[2026-06-27 20:24:10,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:24:10,837.837 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-27 20:24:12,079.079 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 20:24:12,081.081 INFO    ] Checking for system updates...
[2026-06-27 20:24:12,102.102 INFO    ] 200
[2026-06-27 20:24:12,104.104 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:24:12,136.136 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:24:12,137.137 INFO    ] No update needed
[2026-06-27 20:24:12,139.139 INFO    ] Checking for camera pi updates...
[2026-06-27 20:24:12,158.158 INFO    ] 200
[2026-06-27 20:24:12,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:24:12,186.186 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:24:12,236.236 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:24:12,238.238 INFO    ] No camera update needed
[2026-06-27 20:24:12,239.239 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:24:12,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:24:12,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:24:12,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:24:14,285.285 INFO    ] ================================================
[2026-06-27 20:24:14,299.299 INFO    ] Launching Daemon at Sat Jun 27 20:24:14 IST 2026
[2026-06-27 20:24:14,310.310 INFO    ] ================================================
[2026-06-27 20:24:14,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:24:14
[2026-06-27 20:24:14,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:24:15,119.119 INFO    ] Initializing speech engine...
[2026-06-27 20:24:15,124.124 INFO    ] 2026-06-27 20:24:15
[2026-06-27 20:24:15,330.330 INFO    ] 2026-06-27 20:24:15
[2026-06-27 20:24:15,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:24:15,487.487 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:24:15,545.545 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:24:15,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:24:15,736.736 INFO    ] time= 27/06/2026 20:24:15
[2026-06-27 20:24:15,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:24:15,775.775 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:24:15,846.846 INFO    ] No existing commands found in stream
[2026-06-27 20:24:20,860.860 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:24:20,863.863 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-27 20:24:23,569.569 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:24:23,570.570 INFO    ] Checking for system updates...
[2026-06-27 20:24:23,592.592 INFO    ] 200
[2026-06-27 20:24:23,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:24:23,627.627 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:24:23,628.628 INFO    ] No update needed
[2026-06-27 20:24:23,629.629 INFO    ] Checking for camera pi updates...
[2026-06-27 20:24:23,650.650 INFO    ] 200
[2026-06-27 20:24:23,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:24:23,675.675 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:24:23,717.717 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:24:23,718.718 INFO    ] No camera update needed
[2026-06-27 20:24:23,720.720 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:24:23,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:24:23,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:24:23,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:24:25,764.764 INFO    ] ================================================
[2026-06-27 20:24:25,779.779 INFO    ] Launching Daemon at Sat Jun 27 20:24:25 IST 2026
[2026-06-27 20:24:25,790.790 INFO    ] ================================================
[2026-06-27 20:24:26,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:24:26
[2026-06-27 20:24:26,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:24:26,597.597 INFO    ] Initializing speech engine...
[2026-06-27 20:24:26,605.605 INFO    ] 2026-06-27 20:24:26
[2026-06-27 20:24:26,812.812 INFO    ] 2026-06-27 20:24:26
[2026-06-27 20:24:26,841.841 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:24:27,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:24:27,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:24:27,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:24:27,256.256 INFO    ] time= 27/06/2026 20:24:27
[2026-06-27 20:24:27,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:24:27,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:24:27,327.327 INFO    ] No existing commands found in stream
[2026-06-27 20:24:32,355.355 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:24:32,357.357 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-27 20:24:34,922.922 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 20:24:34,924.924 INFO    ] Checking for system updates...
[2026-06-27 20:24:34,945.945 INFO    ] 200
[2026-06-27 20:24:34,946.946 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:24:34,977.977 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:24:34,978.978 INFO    ] No update needed
[2026-06-27 20:24:34,979.979 INFO    ] Checking for camera pi updates...
[2026-06-27 20:24:35,000.000 INFO    ] 200
[2026-06-27 20:24:35,002.002 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:24:35,027.027 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:24:35,071.071 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:24:35,073.073 INFO    ] No camera update needed
[2026-06-27 20:24:35,074.074 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:24:35,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:24:35,079.079 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:24:35,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:24:37,122.122 INFO    ] ================================================
[2026-06-27 20:24:37,138.138 INFO    ] Launching Daemon at Sat Jun 27 20:24:37 IST 2026
[2026-06-27 20:24:37,149.149 INFO    ] ================================================
[2026-06-27 20:24:37,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:24:37
[2026-06-27 20:24:37,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:24:37,942.942 INFO    ] Initializing speech engine...
[2026-06-27 20:24:37,955.955 INFO    ] 2026-06-27 20:24:37
[2026-06-27 20:24:38,164.164 INFO    ] 2026-06-27 20:24:38
[2026-06-27 20:24:38,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:24:38,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:24:38,382.382 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:24:38,522.522 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:24:38,586.586 INFO    ] time= 27/06/2026 20:24:38
[2026-06-27 20:24:38,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:24:38,621.621 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:24:38,689.689 INFO    ] No existing commands found in stream
[2026-06-27 20:24:43,703.703 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:24:43,706.706 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-27 20:24:45,298.298 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 20:24:45,300.300 INFO    ] Checking for system updates...
[2026-06-27 20:24:45,321.321 INFO    ] 200
[2026-06-27 20:24:45,322.322 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:24:45,355.355 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:24:45,356.356 INFO    ] No update needed
[2026-06-27 20:24:45,358.358 INFO    ] Checking for camera pi updates...
[2026-06-27 20:24:45,377.377 INFO    ] 200
[2026-06-27 20:24:45,378.378 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:24:45,403.403 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:24:45,449.449 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:24:45,451.451 INFO    ] No camera update needed
[2026-06-27 20:24:45,454.454 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:24:45,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:24:45,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:24:45,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:24:47,500.500 INFO    ] ================================================
[2026-06-27 20:24:47,516.516 INFO    ] Launching Daemon at Sat Jun 27 20:24:47 IST 2026
[2026-06-27 20:24:47,527.527 INFO    ] ================================================
[2026-06-27 20:24:47,876.876 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:24:47
[2026-06-27 20:24:48,189.189 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:24:48,331.331 INFO    ] Initializing speech engine...
[2026-06-27 20:24:48,337.337 INFO    ] 2026-06-27 20:24:48
[2026-06-27 20:24:48,542.542 INFO    ] 2026-06-27 20:24:48
[2026-06-27 20:24:48,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:24:48,692.692 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:24:48,695.695 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:24:48,837.837 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:24:48,889.889 INFO    ] time= 27/06/2026 20:24:48
[2026-06-27 20:24:48,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:24:48,966.966 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:24:49,057.057 INFO    ] No existing commands found in stream
[2026-06-27 20:24:54,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:24:54,070.070 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-27 20:24:57,202.202 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:24:57,203.203 INFO    ] Checking for system updates...
[2026-06-27 20:24:57,224.224 INFO    ] 200
[2026-06-27 20:24:57,226.226 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:24:57,256.256 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:24:57,257.257 INFO    ] No update needed
[2026-06-27 20:24:57,259.259 INFO    ] Checking for camera pi updates...
[2026-06-27 20:24:57,280.280 INFO    ] 200
[2026-06-27 20:24:57,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:24:57,306.306 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:24:57,350.350 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:24:57,351.351 INFO    ] No camera update needed
[2026-06-27 20:24:57,352.352 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:24:57,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:24:57,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:24:57,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:24:59,398.398 INFO    ] ================================================
[2026-06-27 20:24:59,413.413 INFO    ] Launching Daemon at Sat Jun 27 20:24:59 IST 2026
[2026-06-27 20:24:59,424.424 INFO    ] ================================================
[2026-06-27 20:24:59,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:24:59
[2026-06-27 20:25:00,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:25:00,259.259 INFO    ] Initializing speech engine...
[2026-06-27 20:25:00,263.263 INFO    ] 2026-06-27 20:25:00
[2026-06-27 20:25:00,470.470 INFO    ] 2026-06-27 20:25:00
[2026-06-27 20:25:00,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:25:00,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:25:00,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:25:00,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:25:00,895.895 INFO    ] time= 27/06/2026 20:25:00
[2026-06-27 20:25:00,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:25:00,924.924 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:25:00,991.991 INFO    ] No existing commands found in stream
[2026-06-27 20:25:05,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:25:06,001.001 INFO    ] Waiting 2.48 seconds before fallback handling...
[2026-06-27 20:25:08,884.884 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 20:25:08,885.885 INFO    ] Checking for system updates...
[2026-06-27 20:25:08,907.907 INFO    ] 200
[2026-06-27 20:25:08,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:25:08,941.941 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:25:08,942.942 INFO    ] No update needed
[2026-06-27 20:25:08,944.944 INFO    ] Checking for camera pi updates...
[2026-06-27 20:25:08,963.963 INFO    ] 200
[2026-06-27 20:25:08,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:25:08,992.992 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:25:09,036.036 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:25:09,038.038 INFO    ] No camera update needed
[2026-06-27 20:25:09,039.039 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:25:09,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:25:09,043.043 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:25:09,046.046 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:25:11,084.084 INFO    ] ================================================
[2026-06-27 20:25:11,100.100 INFO    ] Launching Daemon at Sat Jun 27 20:25:11 IST 2026
[2026-06-27 20:25:11,111.111 INFO    ] ================================================
[2026-06-27 20:25:11,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:25:11
[2026-06-27 20:25:11,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:25:11,882.882 INFO    ] Initializing speech engine...
[2026-06-27 20:25:11,894.894 INFO    ] 2026-06-27 20:25:11
[2026-06-27 20:25:12,105.105 INFO    ] 2026-06-27 20:25:12
[2026-06-27 20:25:12,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:25:12,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:25:12,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:25:12,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:25:12,509.509 INFO    ] time= 27/06/2026 20:25:12
[2026-06-27 20:25:12,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:25:12,559.559 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:25:12,626.626 INFO    ] No existing commands found in stream
[2026-06-27 20:25:17,637.637 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:25:17,639.639 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-27 20:25:19,670.670 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:25:19,671.671 INFO    ] Checking for system updates...
[2026-06-27 20:25:19,692.692 INFO    ] 200
[2026-06-27 20:25:19,694.694 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:25:19,724.724 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:25:19,725.725 INFO    ] No update needed
[2026-06-27 20:25:19,727.727 INFO    ] Checking for camera pi updates...
[2026-06-27 20:25:19,748.748 INFO    ] 200
[2026-06-27 20:25:19,749.749 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:25:19,775.775 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:25:19,824.824 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:25:19,826.826 INFO    ] No camera update needed
[2026-06-27 20:25:19,827.827 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:25:19,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:25:19,831.831 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:25:19,834.834 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:25:21,874.874 INFO    ] ================================================
[2026-06-27 20:25:21,889.889 INFO    ] Launching Daemon at Sat Jun 27 20:25:21 IST 2026
[2026-06-27 20:25:21,900.900 INFO    ] ================================================
[2026-06-27 20:25:22,243.243 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:25:22
[2026-06-27 20:25:22,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:25:22,705.705 INFO    ] Initializing speech engine...
[2026-06-27 20:25:22,710.710 INFO    ] 2026-06-27 20:25:22
[2026-06-27 20:25:22,915.915 INFO    ] 2026-06-27 20:25:22
[2026-06-27 20:25:22,944.944 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:25:23,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:25:23,136.136 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:25:23,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:25:23,332.332 INFO    ] time= 27/06/2026 20:25:23
[2026-06-27 20:25:23,357.357 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:25:23,362.362 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:25:23,429.429 INFO    ] No existing commands found in stream
[2026-06-27 20:25:28,438.438 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:25:28,441.441 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-27 20:25:30,202.202 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 20:25:30,203.203 INFO    ] Checking for system updates...
[2026-06-27 20:25:30,224.224 INFO    ] 200
[2026-06-27 20:25:30,226.226 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:25:30,260.260 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:25:30,261.261 INFO    ] No update needed
[2026-06-27 20:25:30,263.263 INFO    ] Checking for camera pi updates...
[2026-06-27 20:25:30,284.284 INFO    ] 200
[2026-06-27 20:25:30,285.285 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:25:30,308.308 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:25:30,362.362 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:25:30,364.364 INFO    ] No camera update needed
[2026-06-27 20:25:30,365.365 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:25:30,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:25:30,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:25:30,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:25:32,405.405 INFO    ] ================================================
[2026-06-27 20:25:32,415.415 INFO    ] Launching Daemon at Sat Jun 27 20:25:32 IST 2026
[2026-06-27 20:25:32,422.422 INFO    ] ================================================
[2026-06-27 20:25:32,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:25:32
[2026-06-27 20:25:33,069.069 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:25:33,215.215 INFO    ] Initializing speech engine...
[2026-06-27 20:25:33,221.221 INFO    ] 2026-06-27 20:25:33
[2026-06-27 20:25:33,427.427 INFO    ] 2026-06-27 20:25:33
[2026-06-27 20:25:33,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:25:33,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:25:33,641.641 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:25:33,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:25:33,845.845 INFO    ] time= 27/06/2026 20:25:33
[2026-06-27 20:25:33,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:25:33,875.875 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:25:33,943.943 INFO    ] No existing commands found in stream
[2026-06-27 20:25:38,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:25:38,955.955 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-27 20:25:42,159.159 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:25:42,161.161 INFO    ] Checking for system updates...
[2026-06-27 20:25:42,184.184 INFO    ] 200
[2026-06-27 20:25:42,185.185 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:25:42,215.215 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:25:42,217.217 INFO    ] No update needed
[2026-06-27 20:25:42,218.218 INFO    ] Checking for camera pi updates...
[2026-06-27 20:25:42,239.239 INFO    ] 200
[2026-06-27 20:25:42,241.241 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:25:42,266.266 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:25:42,324.324 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:25:42,325.325 INFO    ] No camera update needed
[2026-06-27 20:25:42,326.326 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:25:42,328.328 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:25:42,331.331 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:25:42,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:25:44,365.365 INFO    ] ================================================
[2026-06-27 20:25:44,379.379 INFO    ] Launching Daemon at Sat Jun 27 20:25:44 IST 2026
[2026-06-27 20:25:44,390.390 INFO    ] ================================================
[2026-06-27 20:25:44,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:25:44
[2026-06-27 20:25:45,047.047 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:25:45,178.178 INFO    ] Initializing speech engine...
[2026-06-27 20:25:45,186.186 INFO    ] 2026-06-27 20:25:45
[2026-06-27 20:25:45,402.402 INFO    ] 2026-06-27 20:25:45
[2026-06-27 20:25:45,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:25:45,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:25:45,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:25:45,811.811 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:25:45,850.850 INFO    ] time= 27/06/2026 20:25:45
[2026-06-27 20:25:45,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:25:45,859.859 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:25:45,925.925 INFO    ] No existing commands found in stream
[2026-06-27 20:25:50,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:25:50,938.938 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-27 20:25:54,138.138 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:25:54,139.139 INFO    ] Checking for system updates...
[2026-06-27 20:25:54,160.160 INFO    ] 200
[2026-06-27 20:25:54,162.162 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:25:54,200.200 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:25:54,202.202 INFO    ] No update needed
[2026-06-27 20:25:54,204.204 INFO    ] Checking for camera pi updates...
[2026-06-27 20:25:54,225.225 INFO    ] 200
[2026-06-27 20:25:54,226.226 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:25:54,252.252 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:25:54,297.297 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:25:54,298.298 INFO    ] No camera update needed
[2026-06-27 20:25:54,300.300 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:25:54,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:25:54,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:25:54,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:25:56,348.348 INFO    ] ================================================
[2026-06-27 20:25:56,363.363 INFO    ] Launching Daemon at Sat Jun 27 20:25:56 IST 2026
[2026-06-27 20:25:56,375.375 INFO    ] ================================================
[2026-06-27 20:25:56,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:25:56
[2026-06-27 20:25:57,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:25:57,146.146 INFO    ] Initializing speech engine...
[2026-06-27 20:25:57,159.159 INFO    ] 2026-06-27 20:25:57
[2026-06-27 20:25:57,365.365 INFO    ] 2026-06-27 20:25:57
[2026-06-27 20:25:57,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:25:57,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:25:57,698.698 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:25:57,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:25:57,919.919 INFO    ] time= 27/06/2026 20:25:57
[2026-06-27 20:25:57,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:25:57,925.925 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:25:58,033.033 INFO    ] No existing commands found in stream
[2026-06-27 20:26:03,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:26:03,046.046 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-27 20:26:06,986.986 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 20:26:06,988.988 INFO    ] Checking for system updates...
[2026-06-27 20:26:07,010.010 INFO    ] 200
[2026-06-27 20:26:07,011.011 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:26:07,048.048 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:26:07,050.050 INFO    ] No update needed
[2026-06-27 20:26:07,051.051 INFO    ] Checking for camera pi updates...
[2026-06-27 20:26:07,072.072 INFO    ] 200
[2026-06-27 20:26:07,074.074 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:26:07,097.097 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:26:07,147.147 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:26:07,148.148 INFO    ] No camera update needed
[2026-06-27 20:26:07,149.149 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:26:07,150.150 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:26:07,153.153 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:26:07,156.156 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:26:09,187.187 INFO    ] ================================================
[2026-06-27 20:26:09,203.203 INFO    ] Launching Daemon at Sat Jun 27 20:26:09 IST 2026
[2026-06-27 20:26:09,214.214 INFO    ] ================================================
[2026-06-27 20:26:09,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:26:09
[2026-06-27 20:26:09,862.862 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:26:10,009.009 INFO    ] Initializing speech engine...
[2026-06-27 20:26:10,016.016 INFO    ] 2026-06-27 20:26:10
[2026-06-27 20:26:10,227.227 INFO    ] 2026-06-27 20:26:10
[2026-06-27 20:26:10,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:26:10,441.441 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:26:10,453.453 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:26:10,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:26:10,649.649 INFO    ] time= 27/06/2026 20:26:10
[2026-06-27 20:26:10,673.673 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:26:10,679.679 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:26:10,745.745 INFO    ] No existing commands found in stream
[2026-06-27 20:26:15,756.756 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:26:15,760.760 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-27 20:26:18,823.823 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 20:26:18,825.825 INFO    ] Checking for system updates...
[2026-06-27 20:26:18,846.846 INFO    ] 200
[2026-06-27 20:26:18,847.847 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:26:18,881.881 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:26:18,882.882 INFO    ] No update needed
[2026-06-27 20:26:18,884.884 INFO    ] Checking for camera pi updates...
[2026-06-27 20:26:18,909.909 INFO    ] 200
[2026-06-27 20:26:18,910.910 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:26:18,937.937 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:26:18,978.978 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:26:18,979.979 INFO    ] No camera update needed
[2026-06-27 20:26:18,980.980 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:26:18,982.982 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:26:18,985.985 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:26:18,988.988 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:26:21,027.027 INFO    ] ================================================
[2026-06-27 20:26:21,042.042 INFO    ] Launching Daemon at Sat Jun 27 20:26:21 IST 2026
[2026-06-27 20:26:21,053.053 INFO    ] ================================================
[2026-06-27 20:26:21,424.424 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:26:21
[2026-06-27 20:26:21,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:26:21,872.872 INFO    ] Initializing speech engine...
[2026-06-27 20:26:21,884.884 INFO    ] 2026-06-27 20:26:21
[2026-06-27 20:26:22,095.095 INFO    ] 2026-06-27 20:26:22
[2026-06-27 20:26:22,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:26:22,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:26:22,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:26:22,466.466 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:26:22,521.521 INFO    ] time= 27/06/2026 20:26:22
[2026-06-27 20:26:22,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:26:22,549.549 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:26:22,617.617 INFO    ] No existing commands found in stream
[2026-06-27 20:26:27,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:26:27,628.628 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-27 20:26:28,723.723 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 20:26:28,725.725 INFO    ] Checking for system updates...
[2026-06-27 20:26:28,747.747 INFO    ] 200
[2026-06-27 20:26:28,748.748 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:26:28,781.781 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:26:28,783.783 INFO    ] No update needed
[2026-06-27 20:26:28,784.784 INFO    ] Checking for camera pi updates...
[2026-06-27 20:26:28,805.805 INFO    ] 200
[2026-06-27 20:26:28,806.806 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:26:28,831.831 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:26:28,893.893 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:26:28,894.894 INFO    ] No camera update needed
[2026-06-27 20:26:28,896.896 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:26:28,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:26:28,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:26:28,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:26:30,944.944 INFO    ] ================================================
[2026-06-27 20:26:30,959.959 INFO    ] Launching Daemon at Sat Jun 27 20:26:30 IST 2026
[2026-06-27 20:26:30,969.969 INFO    ] ================================================
[2026-06-27 20:26:31,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:26:31
[2026-06-27 20:26:31,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:26:31,826.826 INFO    ] Initializing speech engine...
[2026-06-27 20:26:31,831.831 INFO    ] 2026-06-27 20:26:31
[2026-06-27 20:26:32,027.027 INFO    ] 2026-06-27 20:26:32
[2026-06-27 20:26:32,074.074 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:26:32,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:26:32,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:26:32,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:26:32,511.511 INFO    ] time= 27/06/2026 20:26:32
[2026-06-27 20:26:32,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:26:32,560.560 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:26:32,636.636 INFO    ] No existing commands found in stream
[2026-06-27 20:26:37,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:26:37,649.649 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-27 20:26:41,922.922 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 20:26:41,924.924 INFO    ] Checking for system updates...
[2026-06-27 20:26:41,945.945 INFO    ] 200
[2026-06-27 20:26:41,946.946 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:26:41,980.980 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:26:41,981.981 INFO    ] No update needed
[2026-06-27 20:26:41,982.982 INFO    ] Checking for camera pi updates...
[2026-06-27 20:26:42,001.001 INFO    ] 200
[2026-06-27 20:26:42,003.003 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:26:42,026.026 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:26:42,173.173 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:26:42,175.175 INFO    ] No camera update needed
[2026-06-27 20:26:42,176.176 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:26:42,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:26:42,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:26:42,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:26:44,223.223 INFO    ] ================================================
[2026-06-27 20:26:44,238.238 INFO    ] Launching Daemon at Sat Jun 27 20:26:44 IST 2026
[2026-06-27 20:26:44,250.250 INFO    ] ================================================
[2026-06-27 20:26:44,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:26:44
[2026-06-27 20:26:44,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:26:45,109.109 INFO    ] Initializing speech engine...
[2026-06-27 20:26:45,119.119 INFO    ] 2026-06-27 20:26:45
[2026-06-27 20:26:45,331.331 INFO    ] 2026-06-27 20:26:45
[2026-06-27 20:26:45,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:26:45,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:26:45,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:26:45,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:26:45,762.762 INFO    ] time= 27/06/2026 20:26:45
[2026-06-27 20:26:45,785.785 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:26:45,791.791 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:26:45,859.859 INFO    ] No existing commands found in stream
[2026-06-27 20:26:50,873.873 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:26:50,877.877 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-27 20:26:51,599.599 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 20:26:51,600.600 INFO    ] Checking for system updates...
[2026-06-27 20:26:51,622.622 INFO    ] 200
[2026-06-27 20:26:51,623.623 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:26:51,656.656 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:26:51,657.657 INFO    ] No update needed
[2026-06-27 20:26:51,659.659 INFO    ] Checking for camera pi updates...
[2026-06-27 20:26:51,680.680 INFO    ] 200
[2026-06-27 20:26:51,681.681 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:26:51,706.706 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:26:51,757.757 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:26:51,758.758 INFO    ] No camera update needed
[2026-06-27 20:26:51,759.759 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:26:51,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:26:51,765.765 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:26:51,768.768 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:26:53,808.808 INFO    ] ================================================
[2026-06-27 20:26:53,824.824 INFO    ] Launching Daemon at Sat Jun 27 20:26:53 IST 2026
[2026-06-27 20:26:53,835.835 INFO    ] ================================================
[2026-06-27 20:26:54,192.192 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:26:54
[2026-06-27 20:26:54,505.505 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:26:54,635.635 INFO    ] Initializing speech engine...
[2026-06-27 20:26:54,640.640 INFO    ] 2026-06-27 20:26:54
[2026-06-27 20:26:54,859.859 INFO    ] 2026-06-27 20:26:54
[2026-06-27 20:26:54,887.887 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:26:55,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:26:55,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:26:55,238.238 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:26:55,287.287 INFO    ] time= 27/06/2026 20:26:55
[2026-06-27 20:26:55,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:26:55,316.316 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:26:55,382.382 INFO    ] No existing commands found in stream
[2026-06-27 20:27:00,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:27:00,396.396 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-27 20:27:02,686.686 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:27:02,687.687 INFO    ] Checking for system updates...
[2026-06-27 20:27:02,708.708 INFO    ] 200
[2026-06-27 20:27:02,710.710 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:27:02,743.743 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:27:02,745.745 INFO    ] No update needed
[2026-06-27 20:27:02,747.747 INFO    ] Checking for camera pi updates...
[2026-06-27 20:27:02,769.769 INFO    ] 200
[2026-06-27 20:27:02,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:27:02,815.815 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:27:02,847.847 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:27:02,850.850 INFO    ] No camera update needed
[2026-06-27 20:27:02,853.853 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:27:02,855.855 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:27:02,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:27:02,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:27:04,906.906 INFO    ] ================================================
[2026-06-27 20:27:04,921.921 INFO    ] Launching Daemon at Sat Jun 27 20:27:04 IST 2026
[2026-06-27 20:27:04,931.931 INFO    ] ================================================
[2026-06-27 20:27:05,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:27:05
[2026-06-27 20:27:05,639.639 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:27:05,770.770 INFO    ] Initializing speech engine...
[2026-06-27 20:27:05,779.779 INFO    ] 2026-06-27 20:27:05
[2026-06-27 20:27:05,995.995 INFO    ] 2026-06-27 20:27:05
[2026-06-27 20:27:06,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:27:06,213.213 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:27:06,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:27:06,370.370 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:27:06,423.423 INFO    ] time= 27/06/2026 20:27:06
[2026-06-27 20:27:06,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:27:06,452.452 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:27:06,520.520 INFO    ] No existing commands found in stream
[2026-06-27 20:27:11,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:27:11,532.532 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-27 20:27:13,948.948 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 20:27:13,950.950 INFO    ] Checking for system updates...
[2026-06-27 20:27:13,970.970 INFO    ] 200
[2026-06-27 20:27:13,972.972 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:27:14,004.004 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:27:14,005.005 INFO    ] No update needed
[2026-06-27 20:27:14,007.007 INFO    ] Checking for camera pi updates...
[2026-06-27 20:27:14,026.026 INFO    ] 200
[2026-06-27 20:27:14,027.027 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:27:14,052.052 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:27:14,098.098 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:27:14,100.100 INFO    ] No camera update needed
[2026-06-27 20:27:14,101.101 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:27:14,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:27:14,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:27:14,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:27:16,151.151 INFO    ] ================================================
[2026-06-27 20:27:16,166.166 INFO    ] Launching Daemon at Sat Jun 27 20:27:16 IST 2026
[2026-06-27 20:27:16,178.178 INFO    ] ================================================
[2026-06-27 20:27:16,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:27:16
[2026-06-27 20:27:16,881.881 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:27:17,037.037 INFO    ] Initializing speech engine...
[2026-06-27 20:27:17,041.041 INFO    ] 2026-06-27 20:27:17
[2026-06-27 20:27:17,248.248 INFO    ] 2026-06-27 20:27:17
[2026-06-27 20:27:17,277.277 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:27:17,461.461 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:27:17,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:27:17,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:27:17,668.668 INFO    ] time= 27/06/2026 20:27:17
[2026-06-27 20:27:17,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:27:17,697.697 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:27:17,764.764 INFO    ] No existing commands found in stream
[2026-06-27 20:27:22,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:27:22,782.782 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-27 20:27:26,543.543 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 20:27:26,545.545 INFO    ] Checking for system updates...
[2026-06-27 20:27:26,567.567 INFO    ] 200
[2026-06-27 20:27:26,569.569 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:27:26,602.602 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:27:26,603.603 INFO    ] No update needed
[2026-06-27 20:27:26,605.605 INFO    ] Checking for camera pi updates...
[2026-06-27 20:27:26,626.626 INFO    ] 200
[2026-06-27 20:27:26,627.627 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:27:26,653.653 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:27:26,710.710 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:27:26,711.711 INFO    ] No camera update needed
[2026-06-27 20:27:26,712.712 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:27:26,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:27:26,717.717 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:27:26,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:27:28,758.758 INFO    ] ================================================
[2026-06-27 20:27:28,774.774 INFO    ] Launching Daemon at Sat Jun 27 20:27:28 IST 2026
[2026-06-27 20:27:28,785.785 INFO    ] ================================================
[2026-06-27 20:27:29,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:27:29
[2026-06-27 20:27:29,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:27:29,586.586 INFO    ] Initializing speech engine...
[2026-06-27 20:27:29,594.594 INFO    ] 2026-06-27 20:27:29
[2026-06-27 20:27:29,805.805 INFO    ] 2026-06-27 20:27:29
[2026-06-27 20:27:29,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:27:29,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:27:30,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:27:30,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:27:30,235.235 INFO    ] time= 27/06/2026 20:27:30
[2026-06-27 20:27:30,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:27:30,264.264 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:27:30,332.332 INFO    ] No existing commands found in stream
[2026-06-27 20:27:35,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:27:35,344.344 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-27 20:27:37,639.639 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:27:37,640.640 INFO    ] Checking for system updates...
[2026-06-27 20:27:37,661.661 INFO    ] 200
[2026-06-27 20:27:37,662.662 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:27:37,692.692 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:27:37,694.694 INFO    ] No update needed
[2026-06-27 20:27:37,695.695 INFO    ] Checking for camera pi updates...
[2026-06-27 20:27:37,715.715 INFO    ] 200
[2026-06-27 20:27:37,716.716 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:27:37,739.739 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:27:37,785.785 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:27:37,786.786 INFO    ] No camera update needed
[2026-06-27 20:27:37,788.788 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:27:37,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:27:37,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:27:37,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:27:39,833.833 INFO    ] ================================================
[2026-06-27 20:27:39,848.848 INFO    ] Launching Daemon at Sat Jun 27 20:27:39 IST 2026
[2026-06-27 20:27:39,859.859 INFO    ] ================================================
[2026-06-27 20:27:40,219.219 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:27:40
[2026-06-27 20:27:40,537.537 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:27:40,673.673 INFO    ] Initializing speech engine...
[2026-06-27 20:27:40,677.677 INFO    ] 2026-06-27 20:27:40
[2026-06-27 20:27:40,900.900 INFO    ] 2026-06-27 20:27:40
[2026-06-27 20:27:40,941.941 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:27:41,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:27:41,143.143 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:27:41,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:27:41,338.338 INFO    ] time= 27/06/2026 20:27:41
[2026-06-27 20:27:41,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:27:41,395.395 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:27:41,471.471 INFO    ] No existing commands found in stream
[2026-06-27 20:27:46,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:27:46,484.484 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-27 20:27:50,636.636 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:27:50,638.638 INFO    ] Checking for system updates...
[2026-06-27 20:27:50,658.658 INFO    ] 200
[2026-06-27 20:27:50,660.660 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:27:50,692.692 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:27:50,694.694 INFO    ] No update needed
[2026-06-27 20:27:50,695.695 INFO    ] Checking for camera pi updates...
[2026-06-27 20:27:50,716.716 INFO    ] 200
[2026-06-27 20:27:50,717.717 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:27:50,742.742 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:27:50,796.796 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:27:50,798.798 INFO    ] No camera update needed
[2026-06-27 20:27:50,799.799 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:27:50,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:27:50,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:27:50,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:27:52,846.846 INFO    ] ================================================
[2026-06-27 20:27:52,861.861 INFO    ] Launching Daemon at Sat Jun 27 20:27:52 IST 2026
[2026-06-27 20:27:52,872.872 INFO    ] ================================================
[2026-06-27 20:27:53,200.200 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:27:53
[2026-06-27 20:27:53,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:27:53,655.655 INFO    ] Initializing speech engine...
[2026-06-27 20:27:53,660.660 INFO    ] 2026-06-27 20:27:53
[2026-06-27 20:27:53,863.863 INFO    ] 2026-06-27 20:27:53
[2026-06-27 20:27:53,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:27:54,079.079 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:27:54,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:27:54,267.267 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:27:54,305.305 INFO    ] time= 27/06/2026 20:27:54
[2026-06-27 20:27:54,314.314 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:27:54,316.316 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:27:54,440.440 INFO    ] No existing commands found in stream
[2026-06-27 20:27:59,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:27:59,453.453 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-27 20:28:00,328.328 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 20:28:00,330.330 INFO    ] Checking for system updates...
[2026-06-27 20:28:00,352.352 INFO    ] 200
[2026-06-27 20:28:00,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:28:00,386.386 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:28:00,387.387 INFO    ] No update needed
[2026-06-27 20:28:00,389.389 INFO    ] Checking for camera pi updates...
[2026-06-27 20:28:00,409.409 INFO    ] 200
[2026-06-27 20:28:00,411.411 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:28:00,439.439 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:28:00,498.498 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:28:00,499.499 INFO    ] No camera update needed
[2026-06-27 20:28:00,501.501 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:28:00,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:28:00,505.505 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:28:00,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:28:02,547.547 INFO    ] ================================================
[2026-06-27 20:28:02,557.557 INFO    ] Launching Daemon at Sat Jun 27 20:28:02 IST 2026
[2026-06-27 20:28:02,564.564 INFO    ] ================================================
[2026-06-27 20:28:02,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:28:02
[2026-06-27 20:28:03,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:28:03,322.322 INFO    ] Initializing speech engine...
[2026-06-27 20:28:03,332.332 INFO    ] 2026-06-27 20:28:03
[2026-06-27 20:28:03,538.538 INFO    ] 2026-06-27 20:28:03
[2026-06-27 20:28:03,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:28:03,691.691 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:28:03,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:28:03,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:28:03,965.965 INFO    ] time= 27/06/2026 20:28:03
[2026-06-27 20:28:03,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:28:03,995.995 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:28:04,063.063 INFO    ] No existing commands found in stream
[2026-06-27 20:28:09,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:28:09,089.089 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-27 20:28:10,287.287 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 20:28:10,288.288 INFO    ] Checking for system updates...
[2026-06-27 20:28:10,311.311 INFO    ] 200
[2026-06-27 20:28:10,313.313 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:28:10,345.345 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:28:10,346.346 INFO    ] No update needed
[2026-06-27 20:28:10,347.347 INFO    ] Checking for camera pi updates...
[2026-06-27 20:28:10,367.367 INFO    ] 200
[2026-06-27 20:28:10,369.369 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:28:10,394.394 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:28:10,445.445 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:28:10,447.447 INFO    ] No camera update needed
[2026-06-27 20:28:10,448.448 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:28:10,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:28:10,453.453 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:28:10,456.456 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:28:12,495.495 INFO    ] ================================================
[2026-06-27 20:28:12,510.510 INFO    ] Launching Daemon at Sat Jun 27 20:28:12 IST 2026
[2026-06-27 20:28:12,521.521 INFO    ] ================================================
[2026-06-27 20:28:12,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:28:12
[2026-06-27 20:28:13,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:28:13,332.332 INFO    ] Initializing speech engine...
[2026-06-27 20:28:13,338.338 INFO    ] 2026-06-27 20:28:13
[2026-06-27 20:28:13,543.543 INFO    ] 2026-06-27 20:28:13
[2026-06-27 20:28:13,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:28:13,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:28:13,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:28:13,926.926 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:28:13,965.965 INFO    ] time= 27/06/2026 20:28:13
[2026-06-27 20:28:13,987.987 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:28:13,992.992 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:28:14,059.059 INFO    ] No existing commands found in stream
[2026-06-27 20:28:19,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:28:19,071.071 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-27 20:28:21,458.458 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 20:28:21,460.460 INFO    ] Checking for system updates...
[2026-06-27 20:28:21,482.482 INFO    ] 200
[2026-06-27 20:28:21,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:28:21,518.518 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:28:21,520.520 INFO    ] No update needed
[2026-06-27 20:28:21,521.521 INFO    ] Checking for camera pi updates...
[2026-06-27 20:28:21,545.545 INFO    ] 200
[2026-06-27 20:28:21,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:28:21,573.573 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:28:21,617.617 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:28:21,618.618 INFO    ] No camera update needed
[2026-06-27 20:28:21,620.620 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:28:21,621.621 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:28:21,625.625 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:28:21,628.628 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:28:23,667.667 INFO    ] ================================================
[2026-06-27 20:28:23,682.682 INFO    ] Launching Daemon at Sat Jun 27 20:28:23 IST 2026
[2026-06-27 20:28:23,694.694 INFO    ] ================================================
[2026-06-27 20:28:24,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:28:24
[2026-06-27 20:28:24,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:28:24,492.492 INFO    ] Initializing speech engine...
[2026-06-27 20:28:24,496.496 INFO    ] 2026-06-27 20:28:24
[2026-06-27 20:28:24,713.713 INFO    ] 2026-06-27 20:28:24
[2026-06-27 20:28:24,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:28:24,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:28:24,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:28:25,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:28:25,131.131 INFO    ] time= 27/06/2026 20:28:25
[2026-06-27 20:28:25,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:28:25,160.160 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:28:25,230.230 INFO    ] No existing commands found in stream
[2026-06-27 20:28:30,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:28:30,241.241 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-27 20:28:34,131.131 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 20:28:34,132.132 INFO    ] Checking for system updates...
[2026-06-27 20:28:34,153.153 INFO    ] 200
[2026-06-27 20:28:34,154.154 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:28:34,185.185 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:28:34,186.186 INFO    ] No update needed
[2026-06-27 20:28:34,187.187 INFO    ] Checking for camera pi updates...
[2026-06-27 20:28:34,207.207 INFO    ] 200
[2026-06-27 20:28:34,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:28:34,231.231 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:28:34,275.275 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:28:34,276.276 INFO    ] No camera update needed
[2026-06-27 20:28:34,277.277 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:28:34,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:28:34,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:28:34,284.284 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:28:36,324.324 INFO    ] ================================================
[2026-06-27 20:28:36,340.340 INFO    ] Launching Daemon at Sat Jun 27 20:28:36 IST 2026
[2026-06-27 20:28:36,351.351 INFO    ] ================================================
[2026-06-27 20:28:36,704.704 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:28:36
[2026-06-27 20:28:37,016.016 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:28:37,160.160 INFO    ] Initializing speech engine...
[2026-06-27 20:28:37,166.166 INFO    ] 2026-06-27 20:28:37
[2026-06-27 20:28:37,369.369 INFO    ] 2026-06-27 20:28:37
[2026-06-27 20:28:37,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:28:37,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:28:37,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:28:37,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:28:37,813.813 INFO    ] time= 27/06/2026 20:28:37
[2026-06-27 20:28:37,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:28:37,820.820 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:28:37,941.941 INFO    ] No existing commands found in stream
[2026-06-27 20:28:42,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:28:42,953.953 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-27 20:28:46,199.199 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 20:28:46,201.201 INFO    ] Checking for system updates...
[2026-06-27 20:28:46,223.223 INFO    ] 200
[2026-06-27 20:28:46,225.225 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:28:46,256.256 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:28:46,257.257 INFO    ] No update needed
[2026-06-27 20:28:46,259.259 INFO    ] Checking for camera pi updates...
[2026-06-27 20:28:46,280.280 INFO    ] 200
[2026-06-27 20:28:46,281.281 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:28:46,308.308 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:28:46,456.456 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:28:46,458.458 INFO    ] No camera update needed
[2026-06-27 20:28:46,459.459 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:28:46,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:28:46,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:28:46,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:28:48,507.507 INFO    ] ================================================
[2026-06-27 20:28:48,524.524 INFO    ] Launching Daemon at Sat Jun 27 20:28:48 IST 2026
[2026-06-27 20:28:48,536.536 INFO    ] ================================================
[2026-06-27 20:28:48,894.894 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:28:48
[2026-06-27 20:28:49,236.236 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:28:49,388.388 INFO    ] Initializing speech engine...
[2026-06-27 20:28:49,395.395 INFO    ] 2026-06-27 20:28:49
[2026-06-27 20:28:49,603.603 INFO    ] 2026-06-27 20:28:49
[2026-06-27 20:28:49,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:28:49,773.773 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:28:49,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:28:49,974.974 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:28:50,027.027 INFO    ] time= 27/06/2026 20:28:49
[2026-06-27 20:28:50,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:28:50,056.056 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:28:50,123.123 INFO    ] No existing commands found in stream
[2026-06-27 20:28:55,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:28:55,140.140 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-27 20:28:55,619.619 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 20:28:55,620.620 INFO    ] Checking for system updates...
[2026-06-27 20:28:55,642.642 INFO    ] 200
[2026-06-27 20:28:55,643.643 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:28:55,675.675 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:28:55,676.676 INFO    ] No update needed
[2026-06-27 20:28:55,677.677 INFO    ] Checking for camera pi updates...
[2026-06-27 20:28:55,765.765 INFO    ] 200
[2026-06-27 20:28:55,766.766 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:28:55,799.799 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:28:55,826.826 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:28:55,828.828 INFO    ] No camera update needed
[2026-06-27 20:28:55,829.829 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:28:55,830.830 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:28:55,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:28:55,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:28:57,882.882 INFO    ] ================================================
[2026-06-27 20:28:57,897.897 INFO    ] Launching Daemon at Sat Jun 27 20:28:57 IST 2026
[2026-06-27 20:28:57,908.908 INFO    ] ================================================
[2026-06-27 20:28:58,304.304 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:28:58
[2026-06-27 20:28:58,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:28:58,799.799 INFO    ] Initializing speech engine...
[2026-06-27 20:28:58,805.805 INFO    ] 2026-06-27 20:28:58
[2026-06-27 20:28:59,014.014 INFO    ] 2026-06-27 20:28:58
[2026-06-27 20:28:59,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:28:59,167.167 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:28:59,229.229 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:28:59,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:28:59,400.400 INFO    ] time= 27/06/2026 20:28:59
[2026-06-27 20:28:59,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:28:59,471.471 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:28:59,542.542 INFO    ] No existing commands found in stream
[2026-06-27 20:29:04,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:29:04,555.555 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-27 20:29:07,189.189 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 20:29:07,190.190 INFO    ] Checking for system updates...
[2026-06-27 20:29:07,212.212 INFO    ] 200
[2026-06-27 20:29:07,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:29:07,244.244 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:29:07,246.246 INFO    ] No update needed
[2026-06-27 20:29:07,247.247 INFO    ] Checking for camera pi updates...
[2026-06-27 20:29:07,267.267 INFO    ] 200
[2026-06-27 20:29:07,268.268 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:29:07,295.295 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:29:07,340.340 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:29:07,341.341 INFO    ] No camera update needed
[2026-06-27 20:29:07,343.343 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:29:07,345.345 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:29:07,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:29:07,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:29:09,390.390 INFO    ] ================================================
[2026-06-27 20:29:09,406.406 INFO    ] Launching Daemon at Sat Jun 27 20:29:09 IST 2026
[2026-06-27 20:29:09,417.417 INFO    ] ================================================
[2026-06-27 20:29:09,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:29:09
[2026-06-27 20:29:10,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:29:10,232.232 INFO    ] Initializing speech engine...
[2026-06-27 20:29:10,242.242 INFO    ] 2026-06-27 20:29:10
[2026-06-27 20:29:10,447.447 INFO    ] 2026-06-27 20:29:10
[2026-06-27 20:29:10,475.475 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:29:10,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:29:10,666.666 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:29:10,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:29:10,859.859 INFO    ] time= 27/06/2026 20:29:10
[2026-06-27 20:29:10,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:29:10,892.892 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:29:10,959.959 INFO    ] No existing commands found in stream
[2026-06-27 20:29:15,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:29:15,967.967 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-27 20:29:16,766.766 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 20:29:16,767.767 INFO    ] Checking for system updates...
[2026-06-27 20:29:16,788.788 INFO    ] 200
[2026-06-27 20:29:16,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:29:16,822.822 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:29:16,824.824 INFO    ] No update needed
[2026-06-27 20:29:16,825.825 INFO    ] Checking for camera pi updates...
[2026-06-27 20:29:16,848.848 INFO    ] 200
[2026-06-27 20:29:16,850.850 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:29:16,873.873 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:29:16,915.915 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:29:16,916.916 INFO    ] No camera update needed
[2026-06-27 20:29:16,917.917 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:29:16,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:29:16,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:29:16,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:29:18,963.963 INFO    ] ================================================
[2026-06-27 20:29:18,978.978 INFO    ] Launching Daemon at Sat Jun 27 20:29:18 IST 2026
[2026-06-27 20:29:18,989.989 INFO    ] ================================================
[2026-06-27 20:29:19,361.361 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:29:19
[2026-06-27 20:29:19,676.676 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:29:19,809.809 INFO    ] Initializing speech engine...
[2026-06-27 20:29:19,813.813 INFO    ] 2026-06-27 20:29:19
[2026-06-27 20:29:20,029.029 INFO    ] 2026-06-27 20:29:20
[2026-06-27 20:29:20,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:29:20,180.180 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:29:20,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:29:20,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:29:20,448.448 INFO    ] time= 27/06/2026 20:29:20
[2026-06-27 20:29:20,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:29:20,478.478 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:29:20,544.544 INFO    ] No existing commands found in stream
[2026-06-27 20:29:25,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:29:25,556.556 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-27 20:29:26,056.056 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 20:29:26,057.057 INFO    ] Checking for system updates...
[2026-06-27 20:29:26,079.079 INFO    ] 200
[2026-06-27 20:29:26,080.080 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:29:26,111.111 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:29:26,112.112 INFO    ] No update needed
[2026-06-27 20:29:26,113.113 INFO    ] Checking for camera pi updates...
[2026-06-27 20:29:26,135.135 INFO    ] 200
[2026-06-27 20:29:26,136.136 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:29:26,160.160 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:29:26,211.211 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:29:26,212.212 INFO    ] No camera update needed
[2026-06-27 20:29:26,214.214 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:29:26,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:29:26,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:29:26,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:29:28,261.261 INFO    ] ================================================
[2026-06-27 20:29:28,276.276 INFO    ] Launching Daemon at Sat Jun 27 20:29:28 IST 2026
[2026-06-27 20:29:28,287.287 INFO    ] ================================================
[2026-06-27 20:29:28,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:29:28
[2026-06-27 20:29:28,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:29:29,078.078 INFO    ] Initializing speech engine...
[2026-06-27 20:29:29,081.081 INFO    ] 2026-06-27 20:29:29
[2026-06-27 20:29:29,300.300 INFO    ] 2026-06-27 20:29:29
[2026-06-27 20:29:29,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:29:29,465.465 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:29:29,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:29:29,679.679 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:29:29,728.728 INFO    ] time= 27/06/2026 20:29:29
[2026-06-27 20:29:29,750.750 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:29:29,757.757 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:29:29,849.849 INFO    ] No existing commands found in stream
[2026-06-27 20:29:34,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:29:34,861.861 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-27 20:29:39,126.126 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 20:29:39,128.128 INFO    ] Checking for system updates...
[2026-06-27 20:29:39,149.149 INFO    ] 200
[2026-06-27 20:29:39,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:29:39,183.183 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:29:39,185.185 INFO    ] No update needed
[2026-06-27 20:29:39,186.186 INFO    ] Checking for camera pi updates...
[2026-06-27 20:29:39,205.205 INFO    ] 200
[2026-06-27 20:29:39,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:29:39,231.231 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:29:39,273.273 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:29:39,274.274 INFO    ] No camera update needed
[2026-06-27 20:29:39,276.276 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:29:39,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:29:39,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:29:39,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:29:41,321.321 INFO    ] ================================================
[2026-06-27 20:29:41,337.337 INFO    ] Launching Daemon at Sat Jun 27 20:29:41 IST 2026
[2026-06-27 20:29:41,349.349 INFO    ] ================================================
[2026-06-27 20:29:41,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:29:41
[2026-06-27 20:29:41,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:29:42,125.125 INFO    ] Initializing speech engine...
[2026-06-27 20:29:42,129.129 INFO    ] 2026-06-27 20:29:42
[2026-06-27 20:29:42,358.358 INFO    ] 2026-06-27 20:29:42
[2026-06-27 20:29:42,388.388 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:29:42,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:29:42,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:29:42,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:29:42,793.793 INFO    ] time= 27/06/2026 20:29:42
[2026-06-27 20:29:42,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:29:42,833.833 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:29:42,909.909 INFO    ] No existing commands found in stream
[2026-06-27 20:29:47,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:29:47,921.921 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-27 20:29:50,130.130 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 20:29:50,131.131 INFO    ] Checking for system updates...
[2026-06-27 20:29:50,153.153 INFO    ] 200
[2026-06-27 20:29:50,154.154 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:29:50,187.187 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:29:50,188.188 INFO    ] No update needed
[2026-06-27 20:29:50,190.190 INFO    ] Checking for camera pi updates...
[2026-06-27 20:29:50,212.212 INFO    ] 200
[2026-06-27 20:29:50,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:29:50,237.237 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:29:50,283.283 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:29:50,285.285 INFO    ] No camera update needed
[2026-06-27 20:29:50,286.286 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:29:50,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:29:50,291.291 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:29:50,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:29:52,336.336 INFO    ] ================================================
[2026-06-27 20:29:52,351.351 INFO    ] Launching Daemon at Sat Jun 27 20:29:52 IST 2026
[2026-06-27 20:29:52,363.363 INFO    ] ================================================
[2026-06-27 20:29:52,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:29:52
[2026-06-27 20:29:53,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:29:53,139.139 INFO    ] Initializing speech engine...
[2026-06-27 20:29:53,142.142 INFO    ] 2026-06-27 20:29:53
[2026-06-27 20:29:53,361.361 INFO    ] 2026-06-27 20:29:53
[2026-06-27 20:29:53,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:29:53,575.575 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:29:53,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:29:53,732.732 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:29:53,785.785 INFO    ] time= 27/06/2026 20:29:53
[2026-06-27 20:29:53,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:29:53,815.815 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:29:53,906.906 INFO    ] No existing commands found in stream
[2026-06-27 20:29:58,915.915 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:29:58,918.918 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-27 20:30:05,373.373 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 20:30:05,375.375 INFO    ] Checking for system updates...
[2026-06-27 20:30:05,412.412 INFO    ] 200
[2026-06-27 20:30:05,415.415 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:30:05,469.469 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:30:05,472.472 INFO    ] No update needed
[2026-06-27 20:30:05,474.474 INFO    ] Checking for camera pi updates...
[2026-06-27 20:30:05,508.508 INFO    ] 200
[2026-06-27 20:30:05,511.511 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:30:05,556.556 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:30:05,606.606 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:30:05,608.608 INFO    ] No camera update needed
[2026-06-27 20:30:05,610.610 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:30:05,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:30:05,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:30:05,623.623 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:30:07,666.666 INFO    ] ================================================
[2026-06-27 20:30:07,682.682 INFO    ] Launching Daemon at Sat Jun 27 20:30:07 IST 2026
[2026-06-27 20:30:07,694.694 INFO    ] ================================================
[2026-06-27 20:30:08,043.043 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:30:08
[2026-06-27 20:30:08,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:30:08,533.533 INFO    ] Initializing speech engine...
[2026-06-27 20:30:08,538.538 INFO    ] 2026-06-27 20:30:08
[2026-06-27 20:30:08,747.747 INFO    ] 2026-06-27 20:30:08
[2026-06-27 20:30:08,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:30:08,964.964 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:30:08,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:30:09,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:30:09,174.174 INFO    ] time= 27/06/2026 20:30:09
[2026-06-27 20:30:09,199.199 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:30:09,200.200 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:30:09,273.273 INFO    ] No existing commands found in stream
[2026-06-27 20:30:14,282.282 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:30:14,285.285 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-27 20:30:15,226.226 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 20:30:15,227.227 INFO    ] Checking for system updates...
[2026-06-27 20:30:15,248.248 INFO    ] 200
[2026-06-27 20:30:15,250.250 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:30:15,282.282 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:30:15,284.284 INFO    ] No update needed
[2026-06-27 20:30:15,285.285 INFO    ] Checking for camera pi updates...
[2026-06-27 20:30:15,305.305 INFO    ] 200
[2026-06-27 20:30:15,306.306 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:30:15,332.332 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:30:15,382.382 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:30:15,383.383 INFO    ] No camera update needed
[2026-06-27 20:30:15,385.385 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:30:15,386.386 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:30:15,389.389 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:30:15,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:30:17,430.430 INFO    ] ================================================
[2026-06-27 20:30:17,447.447 INFO    ] Launching Daemon at Sat Jun 27 20:30:17 IST 2026
[2026-06-27 20:30:17,458.458 INFO    ] ================================================
[2026-06-27 20:30:17,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:30:17
[2026-06-27 20:30:18,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:30:18,254.254 INFO    ] Initializing speech engine...
[2026-06-27 20:30:18,259.259 INFO    ] 2026-06-27 20:30:18
[2026-06-27 20:30:18,465.465 INFO    ] 2026-06-27 20:30:18
[2026-06-27 20:30:18,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:30:18,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:30:18,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:30:18,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:30:18,902.902 INFO    ] time= 27/06/2026 20:30:18
[2026-06-27 20:30:18,908.908 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:30:18,910.910 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:30:19,000.000 INFO    ] No existing commands found in stream
[2026-06-27 20:30:24,014.014 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:30:24,017.017 INFO    ] Waiting 3.90 seconds before fallback handling...
[2026-06-27 20:30:28,311.311 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 20:30:28,313.313 INFO    ] Checking for system updates...
[2026-06-27 20:30:28,334.334 INFO    ] 200
[2026-06-27 20:30:28,336.336 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:30:28,367.367 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:30:28,369.369 INFO    ] No update needed
[2026-06-27 20:30:28,370.370 INFO    ] Checking for camera pi updates...
[2026-06-27 20:30:28,393.393 INFO    ] 200
[2026-06-27 20:30:28,395.395 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:30:28,419.419 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:30:28,463.463 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:30:28,464.464 INFO    ] No camera update needed
[2026-06-27 20:30:28,466.466 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:30:28,467.467 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:30:28,470.470 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:30:28,473.473 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:30:30,514.514 INFO    ] ================================================
[2026-06-27 20:30:30,529.529 INFO    ] Launching Daemon at Sat Jun 27 20:30:30 IST 2026
[2026-06-27 20:30:30,541.541 INFO    ] ================================================
[2026-06-27 20:30:30,877.877 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:30:30
[2026-06-27 20:30:31,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:30:31,335.335 INFO    ] Initializing speech engine...
[2026-06-27 20:30:31,344.344 INFO    ] 2026-06-27 20:30:31
[2026-06-27 20:30:31,550.550 INFO    ] 2026-06-27 20:30:31
[2026-06-27 20:30:31,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:30:31,762.762 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:30:31,766.766 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:30:31,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:30:31,969.969 INFO    ] time= 27/06/2026 20:30:31
[2026-06-27 20:30:31,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:30:32,000.000 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:30:32,066.066 INFO    ] No existing commands found in stream
[2026-06-27 20:30:37,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:30:37,075.075 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-27 20:30:40,221.221 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 20:30:40,222.222 INFO    ] Checking for system updates...
[2026-06-27 20:30:40,244.244 INFO    ] 200
[2026-06-27 20:30:40,245.245 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:30:40,279.279 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:30:40,280.280 INFO    ] No update needed
[2026-06-27 20:30:40,282.282 INFO    ] Checking for camera pi updates...
[2026-06-27 20:30:40,302.302 INFO    ] 200
[2026-06-27 20:30:40,303.303 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:30:40,327.327 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:30:40,380.380 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:30:40,382.382 INFO    ] No camera update needed
[2026-06-27 20:30:40,383.383 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:30:40,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:30:40,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:30:40,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:30:42,428.428 INFO    ] ================================================
[2026-06-27 20:30:42,444.444 INFO    ] Launching Daemon at Sat Jun 27 20:30:42 IST 2026
[2026-06-27 20:30:42,455.455 INFO    ] ================================================
[2026-06-27 20:30:42,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:30:42
[2026-06-27 20:30:43,114.114 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:30:43,258.258 INFO    ] Initializing speech engine...
[2026-06-27 20:30:43,264.264 INFO    ] 2026-06-27 20:30:43
[2026-06-27 20:30:43,467.467 INFO    ] 2026-06-27 20:30:43
[2026-06-27 20:30:43,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:30:43,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:30:43,688.688 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:30:43,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:30:43,884.884 INFO    ] time= 27/06/2026 20:30:43
[2026-06-27 20:30:43,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:30:43,913.913 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:30:44,003.003 INFO    ] No existing commands found in stream
[2026-06-27 20:30:49,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:30:49,020.020 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-27 20:30:52,240.240 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 20:30:52,242.242 INFO    ] Checking for system updates...
[2026-06-27 20:30:52,262.262 INFO    ] 200
[2026-06-27 20:30:52,264.264 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:30:52,294.294 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:30:52,296.296 INFO    ] No update needed
[2026-06-27 20:30:52,297.297 INFO    ] Checking for camera pi updates...
[2026-06-27 20:30:52,317.317 INFO    ] 200
[2026-06-27 20:30:52,318.318 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:30:52,342.342 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:30:52,480.480 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:30:52,481.481 INFO    ] No camera update needed
[2026-06-27 20:30:52,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:30:52,484.484 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:30:52,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:30:52,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:30:54,528.528 INFO    ] ================================================
[2026-06-27 20:30:54,544.544 INFO    ] Launching Daemon at Sat Jun 27 20:30:54 IST 2026
[2026-06-27 20:30:54,555.555 INFO    ] ================================================
[2026-06-27 20:30:54,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:30:54
[2026-06-27 20:30:55,263.263 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:30:55,416.416 INFO    ] Initializing speech engine...
[2026-06-27 20:30:55,419.419 INFO    ] 2026-06-27 20:30:55
[2026-06-27 20:30:55,626.626 INFO    ] 2026-06-27 20:30:55
[2026-06-27 20:30:55,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:30:55,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:30:55,994.994 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:30:56,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:30:56,183.183 INFO    ] time= 27/06/2026 20:30:56
[2026-06-27 20:30:56,186.186 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:30:56,189.189 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:30:56,296.296 INFO    ] No existing commands found in stream
[2026-06-27 20:31:01,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:31:01,309.309 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-27 20:31:01,923.923 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 20:31:01,926.926 INFO    ] Checking for system updates...
[2026-06-27 20:31:01,962.962 INFO    ] 200
[2026-06-27 20:31:01,964.964 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:31:02,002.002 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:31:02,003.003 INFO    ] No update needed
[2026-06-27 20:31:02,005.005 INFO    ] Checking for camera pi updates...
[2026-06-27 20:31:02,031.031 INFO    ] 200
[2026-06-27 20:31:02,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:31:02,063.063 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:31:02,096.096 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:31:02,099.099 INFO    ] No camera update needed
[2026-06-27 20:31:02,101.101 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:31:02,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:31:02,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:31:02,113.113 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:31:04,153.153 INFO    ] ================================================
[2026-06-27 20:31:04,169.169 INFO    ] Launching Daemon at Sat Jun 27 20:31:04 IST 2026
[2026-06-27 20:31:04,180.180 INFO    ] ================================================
[2026-06-27 20:31:04,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:31:04
[2026-06-27 20:31:04,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:31:04,974.974 INFO    ] Initializing speech engine...
[2026-06-27 20:31:04,982.982 INFO    ] 2026-06-27 20:31:04
[2026-06-27 20:31:05,204.204 INFO    ] 2026-06-27 20:31:05
[2026-06-27 20:31:05,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:31:05,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:31:05,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:31:05,654.654 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:31:05,680.680 INFO    ] time= 27/06/2026 20:31:05
[2026-06-27 20:31:05,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:31:05,687.687 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:31:05,764.764 INFO    ] No existing commands found in stream
[2026-06-27 20:31:10,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:31:10,792.792 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-27 20:31:12,819.819 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 20:31:12,821.821 INFO    ] Checking for system updates...
[2026-06-27 20:31:12,844.844 INFO    ] 200
[2026-06-27 20:31:12,846.846 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:31:12,879.879 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:31:12,880.880 INFO    ] No update needed
[2026-06-27 20:31:12,881.881 INFO    ] Checking for camera pi updates...
[2026-06-27 20:31:12,904.904 INFO    ] 200
[2026-06-27 20:31:12,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:31:12,929.929 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:31:12,979.979 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:31:12,980.980 INFO    ] No camera update needed
[2026-06-27 20:31:12,982.982 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:31:12,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:31:12,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:31:12,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:31:15,030.030 INFO    ] ================================================
[2026-06-27 20:31:15,046.046 INFO    ] Launching Daemon at Sat Jun 27 20:31:15 IST 2026
[2026-06-27 20:31:15,057.057 INFO    ] ================================================
[2026-06-27 20:31:15,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:31:15
[2026-06-27 20:31:15,700.700 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:31:15,837.837 INFO    ] Initializing speech engine...
[2026-06-27 20:31:15,847.847 INFO    ] 2026-06-27 20:31:15
[2026-06-27 20:31:16,053.053 INFO    ] 2026-06-27 20:31:16
[2026-06-27 20:31:16,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:31:16,271.271 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:31:16,280.280 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:31:16,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:31:16,481.481 INFO    ] time= 27/06/2026 20:31:16
[2026-06-27 20:31:16,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:31:16,511.511 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:31:16,579.579 INFO    ] No existing commands found in stream
[2026-06-27 20:31:21,598.598 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:31:21,601.601 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-27 20:31:24,851.851 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 20:31:24,853.853 INFO    ] Checking for system updates...
[2026-06-27 20:31:24,874.874 INFO    ] 200
[2026-06-27 20:31:24,876.876 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:31:24,909.909 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:31:24,910.910 INFO    ] No update needed
[2026-06-27 20:31:24,911.911 INFO    ] Checking for camera pi updates...
[2026-06-27 20:31:24,932.932 INFO    ] 200
[2026-06-27 20:31:24,934.934 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:31:24,960.960 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:31:25,015.015 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:31:25,016.016 INFO    ] No camera update needed
[2026-06-27 20:31:25,018.018 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:31:25,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:31:25,022.022 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:31:25,025.025 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:31:27,066.066 INFO    ] ================================================
[2026-06-27 20:31:27,082.082 INFO    ] Launching Daemon at Sat Jun 27 20:31:27 IST 2026
[2026-06-27 20:31:27,094.094 INFO    ] ================================================
[2026-06-27 20:31:27,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:31:27
[2026-06-27 20:31:27,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:31:27,897.897 INFO    ] Initializing speech engine...
[2026-06-27 20:31:27,906.906 INFO    ] 2026-06-27 20:31:27
[2026-06-27 20:31:28,129.129 INFO    ] 2026-06-27 20:31:28
[2026-06-27 20:31:28,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:31:28,292.292 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:31:28,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:31:28,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:31:28,582.582 INFO    ] time= 27/06/2026 20:31:28
[2026-06-27 20:31:28,610.610 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:31:28,617.617 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:31:28,690.690 INFO    ] No existing commands found in stream
[2026-06-27 20:31:33,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:31:33,702.702 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-27 20:31:37,979.979 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 20:31:37,981.981 INFO    ] Checking for system updates...
[2026-06-27 20:31:38,003.003 INFO    ] 200
[2026-06-27 20:31:38,004.004 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:31:38,038.038 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:31:38,039.039 INFO    ] No update needed
[2026-06-27 20:31:38,040.040 INFO    ] Checking for camera pi updates...
[2026-06-27 20:31:38,060.060 INFO    ] 200
[2026-06-27 20:31:38,061.061 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:31:38,084.084 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:31:38,129.129 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:31:38,131.131 INFO    ] No camera update needed
[2026-06-27 20:31:38,132.132 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:31:38,133.133 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:31:38,137.137 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:31:38,140.140 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:31:40,181.181 INFO    ] ================================================
[2026-06-27 20:31:40,197.197 INFO    ] Launching Daemon at Sat Jun 27 20:31:40 IST 2026
[2026-06-27 20:31:40,209.209 INFO    ] ================================================
[2026-06-27 20:31:40,561.561 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:31:40
[2026-06-27 20:31:40,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:31:41,049.049 INFO    ] Initializing speech engine...
[2026-06-27 20:31:41,061.061 INFO    ] 2026-06-27 20:31:41
[2026-06-27 20:31:41,273.273 INFO    ] 2026-06-27 20:31:41
[2026-06-27 20:31:41,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:31:41,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:31:41,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:31:41,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:31:41,725.725 INFO    ] time= 27/06/2026 20:31:41
[2026-06-27 20:31:41,731.731 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:31:41,733.733 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:31:41,801.801 INFO    ] No existing commands found in stream
[2026-06-27 20:31:46,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:31:46,819.819 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-27 20:31:51,207.207 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 20:31:51,209.209 INFO    ] Checking for system updates...
[2026-06-27 20:31:51,231.231 INFO    ] 200
[2026-06-27 20:31:51,232.232 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:31:51,267.267 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:31:51,268.268 INFO    ] No update needed
[2026-06-27 20:31:51,270.270 INFO    ] Checking for camera pi updates...
[2026-06-27 20:31:51,289.289 INFO    ] 200
[2026-06-27 20:31:51,291.291 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:31:51,315.315 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:31:51,356.356 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:31:51,357.357 INFO    ] No camera update needed
[2026-06-27 20:31:51,359.359 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:31:51,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:31:51,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:31:51,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:31:53,408.408 INFO    ] ================================================
[2026-06-27 20:31:53,424.424 INFO    ] Launching Daemon at Sat Jun 27 20:31:53 IST 2026
[2026-06-27 20:31:53,435.435 INFO    ] ================================================
[2026-06-27 20:31:53,770.770 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:31:53
[2026-06-27 20:31:54,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:31:54,224.224 INFO    ] Initializing speech engine...
[2026-06-27 20:31:54,229.229 INFO    ] 2026-06-27 20:31:54
[2026-06-27 20:31:54,433.433 INFO    ] 2026-06-27 20:31:54
[2026-06-27 20:31:54,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:31:54,664.664 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:31:54,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:31:54,809.809 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:31:54,881.881 INFO    ] time= 27/06/2026 20:31:54
[2026-06-27 20:31:54,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:31:54,917.917 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:31:54,993.993 INFO    ] No existing commands found in stream
[2026-06-27 20:32:00,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:32:00,007.007 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-27 20:32:02,997.997 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 20:32:02,998.998 INFO    ] Checking for system updates...
[2026-06-27 20:32:03,020.020 INFO    ] 200
[2026-06-27 20:32:03,021.021 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:32:03,054.054 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:32:03,055.055 INFO    ] No update needed
[2026-06-27 20:32:03,057.057 INFO    ] Checking for camera pi updates...
[2026-06-27 20:32:03,076.076 INFO    ] 200
[2026-06-27 20:32:03,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:32:03,101.101 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:32:03,128.128 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:32:03,129.129 INFO    ] No camera update needed
[2026-06-27 20:32:03,131.131 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:32:03,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:32:03,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:32:03,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:32:05,178.178 INFO    ] ================================================
[2026-06-27 20:32:05,194.194 INFO    ] Launching Daemon at Sat Jun 27 20:32:05 IST 2026
[2026-06-27 20:32:05,205.205 INFO    ] ================================================
[2026-06-27 20:32:05,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:32:05
[2026-06-27 20:32:05,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:32:06,041.041 INFO    ] Initializing speech engine...
[2026-06-27 20:32:06,045.045 INFO    ] 2026-06-27 20:32:06
[2026-06-27 20:32:06,267.267 INFO    ] 2026-06-27 20:32:06
[2026-06-27 20:32:06,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:32:06,483.483 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:32:06,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:32:06,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:32:06,679.679 INFO    ] time= 27/06/2026 20:32:06
[2026-06-27 20:32:06,710.710 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:32:06,721.721 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:32:06,794.794 INFO    ] No existing commands found in stream
[2026-06-27 20:32:11,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:32:11,806.806 INFO    ] Waiting 4.00 seconds before fallback handling...
[2026-06-27 20:32:16,222.222 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 20:32:16,224.224 INFO    ] Checking for system updates...
[2026-06-27 20:32:16,245.245 INFO    ] 200
[2026-06-27 20:32:16,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:32:16,278.278 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:32:16,279.279 INFO    ] No update needed
[2026-06-27 20:32:16,281.281 INFO    ] Checking for camera pi updates...
[2026-06-27 20:32:16,301.301 INFO    ] 200
[2026-06-27 20:32:16,302.302 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:32:16,326.326 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:32:16,380.380 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:32:16,381.381 INFO    ] No camera update needed
[2026-06-27 20:32:16,383.383 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:32:16,385.385 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:32:16,388.388 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:32:16,391.391 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:32:18,432.432 INFO    ] ================================================
[2026-06-27 20:32:18,448.448 INFO    ] Launching Daemon at Sat Jun 27 20:32:18 IST 2026
[2026-06-27 20:32:18,459.459 INFO    ] ================================================
[2026-06-27 20:32:18,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:32:18
[2026-06-27 20:32:19,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:32:19,253.253 INFO    ] Initializing speech engine...
[2026-06-27 20:32:19,258.258 INFO    ] 2026-06-27 20:32:19
[2026-06-27 20:32:19,464.464 INFO    ] 2026-06-27 20:32:19
[2026-06-27 20:32:19,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:32:19,678.678 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:32:19,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:32:19,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:32:19,908.908 INFO    ] time= 27/06/2026 20:32:19
[2026-06-27 20:32:19,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:32:19,915.915 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:32:20,006.006 INFO    ] No existing commands found in stream
[2026-06-27 20:32:25,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:32:25,018.018 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-27 20:32:26,650.650 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 20:32:26,651.651 INFO    ] Checking for system updates...
[2026-06-27 20:32:26,672.672 INFO    ] 200
[2026-06-27 20:32:26,673.673 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:32:26,704.704 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:32:26,705.705 INFO    ] No update needed
[2026-06-27 20:32:26,707.707 INFO    ] Checking for camera pi updates...
[2026-06-27 20:32:26,727.727 INFO    ] 200
[2026-06-27 20:32:26,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:32:26,754.754 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:32:26,806.806 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:32:26,807.807 INFO    ] No camera update needed
[2026-06-27 20:32:26,809.809 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:32:26,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:32:26,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:32:26,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:32:28,856.856 INFO    ] ================================================
[2026-06-27 20:32:28,872.872 INFO    ] Launching Daemon at Sat Jun 27 20:32:28 IST 2026
[2026-06-27 20:32:28,883.883 INFO    ] ================================================
[2026-06-27 20:32:29,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:32:29
[2026-06-27 20:32:29,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:32:29,669.669 INFO    ] Initializing speech engine...
[2026-06-27 20:32:29,673.673 INFO    ] 2026-06-27 20:32:29
[2026-06-27 20:32:29,880.880 INFO    ] 2026-06-27 20:32:29
[2026-06-27 20:32:29,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:32:30,043.043 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:32:30,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:32:30,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:32:30,286.286 INFO    ] time= 27/06/2026 20:32:30
[2026-06-27 20:32:30,296.296 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:32:30,354.354 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:32:30,468.468 INFO    ] No existing commands found in stream
[2026-06-27 20:32:35,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:32:35,481.481 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-27 20:32:39,383.383 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 20:32:39,384.384 INFO    ] Checking for system updates...
[2026-06-27 20:32:39,406.406 INFO    ] 200
[2026-06-27 20:32:39,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:32:39,438.438 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:32:39,439.439 INFO    ] No update needed
[2026-06-27 20:32:39,440.440 INFO    ] Checking for camera pi updates...
[2026-06-27 20:32:39,460.460 INFO    ] 200
[2026-06-27 20:32:39,461.461 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:32:39,485.485 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:32:39,532.532 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:32:39,533.533 INFO    ] No camera update needed
[2026-06-27 20:32:39,535.535 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:32:39,536.536 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:32:39,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:32:39,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:32:41,580.580 INFO    ] ================================================
[2026-06-27 20:32:41,596.596 INFO    ] Launching Daemon at Sat Jun 27 20:32:41 IST 2026
[2026-06-27 20:32:41,607.607 INFO    ] ================================================
[2026-06-27 20:32:41,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:32:41
[2026-06-27 20:32:42,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:32:42,434.434 INFO    ] Initializing speech engine...
[2026-06-27 20:32:42,443.443 INFO    ] 2026-06-27 20:32:42
[2026-06-27 20:32:42,648.648 INFO    ] 2026-06-27 20:32:42
[2026-06-27 20:32:42,676.676 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:32:42,860.860 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:32:42,868.868 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:32:42,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:32:43,064.064 INFO    ] time= 27/06/2026 20:32:43
[2026-06-27 20:32:43,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:32:43,094.094 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:32:43,185.185 INFO    ] No existing commands found in stream
[2026-06-27 20:32:48,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:32:48,200.200 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-27 20:32:52,011.011 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:32:52,013.013 INFO    ] Checking for system updates...
[2026-06-27 20:32:52,034.034 INFO    ] 200
[2026-06-27 20:32:52,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:32:52,067.067 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:32:52,069.069 INFO    ] No update needed
[2026-06-27 20:32:52,070.070 INFO    ] Checking for camera pi updates...
[2026-06-27 20:32:52,091.091 INFO    ] 200
[2026-06-27 20:32:52,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:32:52,118.118 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:32:52,163.163 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:32:52,164.164 INFO    ] No camera update needed
[2026-06-27 20:32:52,166.166 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:32:52,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:32:52,171.171 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:32:52,174.174 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:32:54,214.214 INFO    ] ================================================
[2026-06-27 20:32:54,230.230 INFO    ] Launching Daemon at Sat Jun 27 20:32:54 IST 2026
[2026-06-27 20:32:54,240.240 INFO    ] ================================================
[2026-06-27 20:32:54,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:32:54
[2026-06-27 20:32:54,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:32:55,061.061 INFO    ] Initializing speech engine...
[2026-06-27 20:32:55,071.071 INFO    ] 2026-06-27 20:32:55
[2026-06-27 20:32:55,277.277 INFO    ] 2026-06-27 20:32:55
[2026-06-27 20:32:55,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:32:55,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:32:55,486.486 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:32:55,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:32:55,692.692 INFO    ] time= 27/06/2026 20:32:55
[2026-06-27 20:32:55,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:32:55,743.743 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:32:55,864.864 INFO    ] No existing commands found in stream
[2026-06-27 20:33:00,875.875 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:33:00,878.878 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-27 20:33:05,060.060 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:33:05,061.061 INFO    ] Checking for system updates...
[2026-06-27 20:33:05,082.082 INFO    ] 200
[2026-06-27 20:33:05,084.084 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:33:05,119.119 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:33:05,120.120 INFO    ] No update needed
[2026-06-27 20:33:05,121.121 INFO    ] Checking for camera pi updates...
[2026-06-27 20:33:05,141.141 INFO    ] 200
[2026-06-27 20:33:05,142.142 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:33:05,166.166 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:33:05,209.209 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:33:05,210.210 INFO    ] No camera update needed
[2026-06-27 20:33:05,211.211 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:33:05,212.212 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:33:05,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:33:05,218.218 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:33:07,262.262 INFO    ] ================================================
[2026-06-27 20:33:07,278.278 INFO    ] Launching Daemon at Sat Jun 27 20:33:07 IST 2026
[2026-06-27 20:33:07,290.290 INFO    ] ================================================
[2026-06-27 20:33:07,645.645 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:33:07
[2026-06-27 20:33:07,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:33:08,091.091 INFO    ] Initializing speech engine...
[2026-06-27 20:33:08,096.096 INFO    ] 2026-06-27 20:33:08
[2026-06-27 20:33:08,287.287 INFO    ] 2026-06-27 20:33:08
[2026-06-27 20:33:08,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:33:08,493.493 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:33:08,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:33:08,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:33:08,707.707 INFO    ] time= 27/06/2026 20:33:08
[2026-06-27 20:33:08,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:33:08,800.800 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:33:08,892.892 INFO    ] No existing commands found in stream
[2026-06-27 20:33:13,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:33:13,906.906 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-27 20:33:15,368.368 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 20:33:15,369.369 INFO    ] Checking for system updates...
[2026-06-27 20:33:15,390.390 INFO    ] 200
[2026-06-27 20:33:15,391.391 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:33:15,422.422 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:33:15,424.424 INFO    ] No update needed
[2026-06-27 20:33:15,425.425 INFO    ] Checking for camera pi updates...
[2026-06-27 20:33:15,445.445 INFO    ] 200
[2026-06-27 20:33:15,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:33:15,472.472 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:33:15,511.511 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:33:15,512.512 INFO    ] No camera update needed
[2026-06-27 20:33:15,513.513 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:33:15,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:33:15,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:33:15,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:33:17,560.560 INFO    ] ================================================
[2026-06-27 20:33:17,576.576 INFO    ] Launching Daemon at Sat Jun 27 20:33:17 IST 2026
[2026-06-27 20:33:17,587.587 INFO    ] ================================================
[2026-06-27 20:33:17,926.926 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:33:17
[2026-06-27 20:33:18,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:33:18,369.369 INFO    ] Initializing speech engine...
[2026-06-27 20:33:18,373.373 INFO    ] 2026-06-27 20:33:18
[2026-06-27 20:33:18,591.591 INFO    ] 2026-06-27 20:33:18
[2026-06-27 20:33:18,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:33:18,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:33:18,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:33:18,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:33:19,047.047 INFO    ] time= 27/06/2026 20:33:19
[2026-06-27 20:33:19,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:33:19,078.078 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:33:19,151.151 INFO    ] No existing commands found in stream
[2026-06-27 20:33:24,160.160 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:33:24,163.163 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-27 20:33:27,147.147 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 20:33:27,148.148 INFO    ] Checking for system updates...
[2026-06-27 20:33:27,169.169 INFO    ] 200
[2026-06-27 20:33:27,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:33:27,201.201 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:33:27,203.203 INFO    ] No update needed
[2026-06-27 20:33:27,204.204 INFO    ] Checking for camera pi updates...
[2026-06-27 20:33:27,224.224 INFO    ] 200
[2026-06-27 20:33:27,225.225 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:33:27,248.248 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:33:27,291.291 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:33:27,292.292 INFO    ] No camera update needed
[2026-06-27 20:33:27,293.293 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:33:27,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:33:27,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:33:27,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:33:29,340.340 INFO    ] ================================================
[2026-06-27 20:33:29,357.357 INFO    ] Launching Daemon at Sat Jun 27 20:33:29 IST 2026
[2026-06-27 20:33:29,368.368 INFO    ] ================================================
[2026-06-27 20:33:29,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:33:29
[2026-06-27 20:33:30,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:33:30,174.174 INFO    ] Initializing speech engine...
[2026-06-27 20:33:30,178.178 INFO    ] 2026-06-27 20:33:30
[2026-06-27 20:33:30,382.382 INFO    ] 2026-06-27 20:33:30
[2026-06-27 20:33:30,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:33:30,595.595 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:33:30,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:33:30,797.797 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:33:30,822.822 INFO    ] time= 27/06/2026 20:33:30
[2026-06-27 20:33:30,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:33:30,830.830 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:33:30,895.895 INFO    ] No existing commands found in stream
[2026-06-27 20:33:35,906.906 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:33:35,908.908 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-27 20:33:37,332.332 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 20:33:37,334.334 INFO    ] Checking for system updates...
[2026-06-27 20:33:37,355.355 INFO    ] 200
[2026-06-27 20:33:37,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:33:37,388.388 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:33:37,389.389 INFO    ] No update needed
[2026-06-27 20:33:37,391.391 INFO    ] Checking for camera pi updates...
[2026-06-27 20:33:37,411.411 INFO    ] 200
[2026-06-27 20:33:37,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:33:37,437.437 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:33:37,495.495 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:33:37,496.496 INFO    ] No camera update needed
[2026-06-27 20:33:37,498.498 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:33:37,499.499 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:33:37,502.502 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:33:37,505.505 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:33:39,545.545 INFO    ] ================================================
[2026-06-27 20:33:39,561.561 INFO    ] Launching Daemon at Sat Jun 27 20:33:39 IST 2026
[2026-06-27 20:33:39,572.572 INFO    ] ================================================
[2026-06-27 20:33:39,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:33:39
[2026-06-27 20:33:40,205.205 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:33:40,349.349 INFO    ] Initializing speech engine...
[2026-06-27 20:33:40,353.353 INFO    ] 2026-06-27 20:33:40
[2026-06-27 20:33:40,561.561 INFO    ] 2026-06-27 20:33:40
[2026-06-27 20:33:40,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:33:40,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:33:40,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:33:40,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:33:40,982.982 INFO    ] time= 27/06/2026 20:33:40
[2026-06-27 20:33:41,007.007 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:33:41,012.012 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:33:41,117.117 INFO    ] No existing commands found in stream
[2026-06-27 20:33:46,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:33:46,145.145 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-27 20:33:50,090.090 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 20:33:50,091.091 INFO    ] Checking for system updates...
[2026-06-27 20:33:50,112.112 INFO    ] 200
[2026-06-27 20:33:50,113.113 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:33:50,147.147 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:33:50,148.148 INFO    ] No update needed
[2026-06-27 20:33:50,149.149 INFO    ] Checking for camera pi updates...
[2026-06-27 20:33:50,170.170 INFO    ] 200
[2026-06-27 20:33:50,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:33:50,195.195 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:33:50,248.248 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:33:50,250.250 INFO    ] No camera update needed
[2026-06-27 20:33:50,251.251 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:33:50,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:33:50,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:33:50,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:33:52,297.297 INFO    ] ================================================
[2026-06-27 20:33:52,313.313 INFO    ] Launching Daemon at Sat Jun 27 20:33:52 IST 2026
[2026-06-27 20:33:52,325.325 INFO    ] ================================================
[2026-06-27 20:33:52,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:33:52
[2026-06-27 20:33:52,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:33:53,106.106 INFO    ] Initializing speech engine...
[2026-06-27 20:33:53,116.116 INFO    ] 2026-06-27 20:33:53
[2026-06-27 20:33:53,321.321 INFO    ] 2026-06-27 20:33:53
[2026-06-27 20:33:53,348.348 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:33:53,531.531 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:33:53,542.542 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:33:53,738.738 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:33:53,763.763 INFO    ] time= 27/06/2026 20:33:53
[2026-06-27 20:33:53,768.768 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:33:53,770.770 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:33:53,863.863 INFO    ] No existing commands found in stream
[2026-06-27 20:33:58,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:33:58,880.880 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-27 20:34:01,112.112 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 20:34:01,114.114 INFO    ] Checking for system updates...
[2026-06-27 20:34:01,135.135 INFO    ] 200
[2026-06-27 20:34:01,136.136 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:34:01,167.167 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:34:01,168.168 INFO    ] No update needed
[2026-06-27 20:34:01,170.170 INFO    ] Checking for camera pi updates...
[2026-06-27 20:34:01,189.189 INFO    ] 200
[2026-06-27 20:34:01,190.190 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:34:01,214.214 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:34:01,256.256 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:34:01,261.261 INFO    ] No camera update needed
[2026-06-27 20:34:01,266.266 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:34:01,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:34:01,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:34:01,287.287 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:34:03,322.322 INFO    ] ================================================
[2026-06-27 20:34:03,337.337 INFO    ] Launching Daemon at Sat Jun 27 20:34:03 IST 2026
[2026-06-27 20:34:03,348.348 INFO    ] ================================================
[2026-06-27 20:34:03,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:34:03
[2026-06-27 20:34:04,008.008 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:34:04,137.137 INFO    ] Initializing speech engine...
[2026-06-27 20:34:04,141.141 INFO    ] 2026-06-27 20:34:04
[2026-06-27 20:34:04,362.362 INFO    ] 2026-06-27 20:34:04
[2026-06-27 20:34:04,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:34:04,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:34:04,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:34:04,716.716 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:34:04,781.781 INFO    ] time= 27/06/2026 20:34:04
[2026-06-27 20:34:04,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:34:04,815.815 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:34:04,882.882 INFO    ] No existing commands found in stream
[2026-06-27 20:34:09,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:34:09,894.894 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-27 20:34:11,168.168 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 20:34:11,169.169 INFO    ] Checking for system updates...
[2026-06-27 20:34:11,190.190 INFO    ] 200
[2026-06-27 20:34:11,192.192 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:34:11,223.223 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:34:11,225.225 INFO    ] No update needed
[2026-06-27 20:34:11,227.227 INFO    ] Checking for camera pi updates...
[2026-06-27 20:34:11,247.247 INFO    ] 200
[2026-06-27 20:34:11,248.248 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:34:11,274.274 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:34:11,317.317 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:34:11,319.319 INFO    ] No camera update needed
[2026-06-27 20:34:11,320.320 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:34:11,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:34:11,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:34:11,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:34:13,369.369 INFO    ] ================================================
[2026-06-27 20:34:13,386.386 INFO    ] Launching Daemon at Sat Jun 27 20:34:13 IST 2026
[2026-06-27 20:34:13,397.397 INFO    ] ================================================
[2026-06-27 20:34:13,764.764 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:34:13
[2026-06-27 20:34:14,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:34:14,226.226 INFO    ] Initializing speech engine...
[2026-06-27 20:34:14,231.231 INFO    ] 2026-06-27 20:34:14
[2026-06-27 20:34:14,435.435 INFO    ] 2026-06-27 20:34:14
[2026-06-27 20:34:14,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:34:14,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:34:14,657.657 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:34:14,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:34:14,846.846 INFO    ] time= 27/06/2026 20:34:14
[2026-06-27 20:34:14,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:34:14,880.880 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:34:14,950.950 INFO    ] No existing commands found in stream
[2026-06-27 20:34:19,961.961 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:34:19,964.964 INFO    ] Waiting 0.39 seconds before fallback handling...
[2026-06-27 20:34:20,776.776 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 20:34:20,778.778 INFO    ] Checking for system updates...
[2026-06-27 20:34:20,798.798 INFO    ] 200
[2026-06-27 20:34:20,799.799 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:34:20,829.829 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:34:20,831.831 INFO    ] No update needed
[2026-06-27 20:34:20,832.832 INFO    ] Checking for camera pi updates...
[2026-06-27 20:34:20,889.889 INFO    ] 200
[2026-06-27 20:34:20,890.890 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:34:20,914.914 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:34:20,956.956 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:34:20,957.957 INFO    ] No camera update needed
[2026-06-27 20:34:20,958.958 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:34:20,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:34:20,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:34:20,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:34:23,003.003 INFO    ] ================================================
[2026-06-27 20:34:23,018.018 INFO    ] Launching Daemon at Sat Jun 27 20:34:23 IST 2026
[2026-06-27 20:34:23,029.029 INFO    ] ================================================
[2026-06-27 20:34:23,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:34:23
[2026-06-27 20:34:23,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:34:23,877.877 INFO    ] Initializing speech engine...
[2026-06-27 20:34:23,882.882 INFO    ] 2026-06-27 20:34:23
[2026-06-27 20:34:24,104.104 INFO    ] 2026-06-27 20:34:24
[2026-06-27 20:34:24,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:34:24,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:34:24,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:34:24,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:34:24,542.542 INFO    ] time= 27/06/2026 20:34:24
[2026-06-27 20:34:24,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:34:24,595.595 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:34:24,672.672 INFO    ] No existing commands found in stream
[2026-06-27 20:34:29,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:34:29,716.716 INFO    ] Waiting 0.99 seconds before fallback handling...
[2026-06-27 20:34:31,102.102 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 20:34:31,103.103 INFO    ] Checking for system updates...
[2026-06-27 20:34:31,124.124 INFO    ] 200
[2026-06-27 20:34:31,125.125 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:34:31,156.156 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:34:31,157.157 INFO    ] No update needed
[2026-06-27 20:34:31,158.158 INFO    ] Checking for camera pi updates...
[2026-06-27 20:34:31,178.178 INFO    ] 200
[2026-06-27 20:34:31,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:34:31,206.206 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:34:31,252.252 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:34:31,253.253 INFO    ] No camera update needed
[2026-06-27 20:34:31,255.255 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:34:31,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:34:31,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:34:31,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:34:33,294.294 INFO    ] ================================================
[2026-06-27 20:34:33,309.309 INFO    ] Launching Daemon at Sat Jun 27 20:34:33 IST 2026
[2026-06-27 20:34:33,320.320 INFO    ] ================================================
[2026-06-27 20:34:33,685.685 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:34:33
[2026-06-27 20:34:33,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:34:34,129.129 INFO    ] Initializing speech engine...
[2026-06-27 20:34:34,142.142 INFO    ] 2026-06-27 20:34:34
[2026-06-27 20:34:34,351.351 INFO    ] 2026-06-27 20:34:34
[2026-06-27 20:34:34,380.380 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:34:34,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:34:34,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:34:34,777.777 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:34:34,799.799 INFO    ] time= 27/06/2026 20:34:34
[2026-06-27 20:34:34,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:34:34,806.806 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:34:34,874.874 INFO    ] No existing commands found in stream
[2026-06-27 20:34:39,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:34:39,891.891 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-27 20:34:43,217.217 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 20:34:43,218.218 INFO    ] Checking for system updates...
[2026-06-27 20:34:43,239.239 INFO    ] 200
[2026-06-27 20:34:43,240.240 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:34:43,273.273 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:34:43,274.274 INFO    ] No update needed
[2026-06-27 20:34:43,276.276 INFO    ] Checking for camera pi updates...
[2026-06-27 20:34:43,295.295 INFO    ] 200
[2026-06-27 20:34:43,297.297 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:34:43,322.322 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:34:43,375.375 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:34:43,376.376 INFO    ] No camera update needed
[2026-06-27 20:34:43,378.378 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:34:43,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:34:43,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:34:43,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:34:45,422.422 INFO    ] ================================================
[2026-06-27 20:34:45,438.438 INFO    ] Launching Daemon at Sat Jun 27 20:34:45 IST 2026
[2026-06-27 20:34:45,449.449 INFO    ] ================================================
[2026-06-27 20:34:45,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:34:45
[2026-06-27 20:34:46,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:34:46,255.255 INFO    ] Initializing speech engine...
[2026-06-27 20:34:46,262.262 INFO    ] 2026-06-27 20:34:46
[2026-06-27 20:34:46,476.476 INFO    ] 2026-06-27 20:34:46
[2026-06-27 20:34:46,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:34:46,688.688 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:34:46,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:34:46,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:34:46,895.895 INFO    ] time= 27/06/2026 20:34:46
[2026-06-27 20:34:46,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:34:46,922.922 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:34:46,989.989 INFO    ] No existing commands found in stream
[2026-06-27 20:34:51,998.998 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:34:52,001.001 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-27 20:34:52,642.642 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 20:34:52,643.643 INFO    ] Checking for system updates...
[2026-06-27 20:34:52,664.664 INFO    ] 200
[2026-06-27 20:34:52,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:34:52,696.696 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:34:52,698.698 INFO    ] No update needed
[2026-06-27 20:34:52,699.699 INFO    ] Checking for camera pi updates...
[2026-06-27 20:34:52,719.719 INFO    ] 200
[2026-06-27 20:34:52,720.720 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:34:52,744.744 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:34:52,795.795 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:34:52,796.796 INFO    ] No camera update needed
[2026-06-27 20:34:52,797.797 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:34:52,798.798 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:34:52,801.801 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:34:52,805.805 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:34:54,846.846 INFO    ] ================================================
[2026-06-27 20:34:54,862.862 INFO    ] Launching Daemon at Sat Jun 27 20:34:54 IST 2026
[2026-06-27 20:34:54,873.873 INFO    ] ================================================
[2026-06-27 20:34:55,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:34:55
[2026-06-27 20:34:55,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:34:55,700.700 INFO    ] Initializing speech engine...
[2026-06-27 20:34:55,705.705 INFO    ] 2026-06-27 20:34:55
[2026-06-27 20:34:55,911.911 INFO    ] 2026-06-27 20:34:55
[2026-06-27 20:34:55,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:34:56,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:34:56,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:34:56,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:34:56,338.338 INFO    ] time= 27/06/2026 20:34:56
[2026-06-27 20:34:56,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:34:56,366.366 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:34:56,432.432 INFO    ] No existing commands found in stream
[2026-06-27 20:35:01,443.443 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:35:01,448.448 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-27 20:35:02,588.588 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:35:02,590.590 INFO    ] Checking for system updates...
[2026-06-27 20:35:02,616.616 INFO    ] 200
[2026-06-27 20:35:02,617.617 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:35:02,655.655 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:35:02,657.657 INFO    ] No update needed
[2026-06-27 20:35:02,658.658 INFO    ] Checking for camera pi updates...
[2026-06-27 20:35:02,678.678 INFO    ] 200
[2026-06-27 20:35:02,679.679 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:35:02,702.702 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:35:02,737.737 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:35:02,738.738 INFO    ] No camera update needed
[2026-06-27 20:35:02,739.739 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:35:02,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:35:02,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:35:02,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:35:04,787.787 INFO    ] ================================================
[2026-06-27 20:35:04,804.804 INFO    ] Launching Daemon at Sat Jun 27 20:35:04 IST 2026
[2026-06-27 20:35:04,816.816 INFO    ] ================================================
[2026-06-27 20:35:05,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:35:05
[2026-06-27 20:35:05,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:35:05,636.636 INFO    ] Initializing speech engine...
[2026-06-27 20:35:05,641.641 INFO    ] 2026-06-27 20:35:05
[2026-06-27 20:35:05,830.830 INFO    ] 2026-06-27 20:35:05
[2026-06-27 20:35:05,867.867 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:35:06,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:35:06,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:35:06,283.283 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:35:06,305.305 INFO    ] time= 27/06/2026 20:35:06
[2026-06-27 20:35:06,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:35:06,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:35:06,403.403 INFO    ] No existing commands found in stream
[2026-06-27 20:35:11,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:35:11,415.415 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-27 20:35:14,206.206 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 20:35:14,207.207 INFO    ] Checking for system updates...
[2026-06-27 20:35:14,228.228 INFO    ] 200
[2026-06-27 20:35:14,230.230 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:35:14,260.260 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:35:14,262.262 INFO    ] No update needed
[2026-06-27 20:35:14,263.263 INFO    ] Checking for camera pi updates...
[2026-06-27 20:35:14,283.283 INFO    ] 200
[2026-06-27 20:35:14,285.285 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:35:14,308.308 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:35:14,448.448 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:35:14,450.450 INFO    ] No camera update needed
[2026-06-27 20:35:14,452.452 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:35:14,453.453 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:35:14,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:35:14,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:35:16,499.499 INFO    ] ================================================
[2026-06-27 20:35:16,518.518 INFO    ] Launching Daemon at Sat Jun 27 20:35:16 IST 2026
[2026-06-27 20:35:16,533.533 INFO    ] ================================================
[2026-06-27 20:35:16,880.880 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:35:16
[2026-06-27 20:35:17,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:35:17,348.348 INFO    ] Initializing speech engine...
[2026-06-27 20:35:17,352.352 INFO    ] 2026-06-27 20:35:17
[2026-06-27 20:35:17,566.566 INFO    ] 2026-06-27 20:35:17
[2026-06-27 20:35:17,594.594 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:35:17,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:35:17,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:35:17,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:35:17,984.984 INFO    ] time= 27/06/2026 20:35:17
[2026-06-27 20:35:18,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:35:18,017.017 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:35:18,109.109 INFO    ] No existing commands found in stream
[2026-06-27 20:35:23,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:35:23,127.127 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-27 20:35:23,648.648 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 20:35:23,649.649 INFO    ] Checking for system updates...
[2026-06-27 20:35:23,672.672 INFO    ] 200
[2026-06-27 20:35:23,673.673 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:35:23,705.705 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:35:23,707.707 INFO    ] No update needed
[2026-06-27 20:35:23,708.708 INFO    ] Checking for camera pi updates...
[2026-06-27 20:35:23,729.729 INFO    ] 200
[2026-06-27 20:35:23,730.730 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:35:23,755.755 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:35:23,807.807 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:35:23,808.808 INFO    ] No camera update needed
[2026-06-27 20:35:23,810.810 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:35:23,811.811 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:35:23,814.814 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:35:23,818.818 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:35:25,857.857 INFO    ] ================================================
[2026-06-27 20:35:25,872.872 INFO    ] Launching Daemon at Sat Jun 27 20:35:25 IST 2026
[2026-06-27 20:35:25,883.883 INFO    ] ================================================
[2026-06-27 20:35:26,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:35:26
[2026-06-27 20:35:26,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:35:26,732.732 INFO    ] Initializing speech engine...
[2026-06-27 20:35:26,739.739 INFO    ] 2026-06-27 20:35:26
[2026-06-27 20:35:26,947.947 INFO    ] 2026-06-27 20:35:26
[2026-06-27 20:35:26,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:35:27,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:35:27,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:35:27,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:35:27,490.490 INFO    ] time= 27/06/2026 20:35:27
[2026-06-27 20:35:27,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:35:27,520.520 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:35:27,638.638 INFO    ] No existing commands found in stream
[2026-06-27 20:35:32,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:35:32,649.649 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-27 20:35:36,846.846 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 20:35:36,849.849 INFO    ] Checking for system updates...
[2026-06-27 20:35:36,886.886 INFO    ] 200
[2026-06-27 20:35:36,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:35:36,939.939 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:35:36,941.941 INFO    ] No update needed
[2026-06-27 20:35:36,942.942 INFO    ] Checking for camera pi updates...
[2026-06-27 20:35:36,964.964 INFO    ] 200
[2026-06-27 20:35:36,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:35:36,990.990 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:35:37,032.032 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:35:37,033.033 INFO    ] No camera update needed
[2026-06-27 20:35:37,035.035 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:35:37,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:35:37,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:35:37,041.041 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:35:39,080.080 INFO    ] ================================================
[2026-06-27 20:35:39,095.095 INFO    ] Launching Daemon at Sat Jun 27 20:35:39 IST 2026
[2026-06-27 20:35:39,105.105 INFO    ] ================================================
[2026-06-27 20:35:39,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:35:39
[2026-06-27 20:35:39,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:35:39,956.956 INFO    ] Initializing speech engine...
[2026-06-27 20:35:39,960.960 INFO    ] 2026-06-27 20:35:39
[2026-06-27 20:35:40,167.167 INFO    ] 2026-06-27 20:35:40
[2026-06-27 20:35:40,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:35:40,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:35:40,448.448 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:35:40,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:35:40,710.710 INFO    ] time= 27/06/2026 20:35:40
[2026-06-27 20:35:40,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:35:40,713.713 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:35:40,808.808 INFO    ] No existing commands found in stream
[2026-06-27 20:35:45,821.821 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:35:45,825.825 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-27 20:35:49,908.908 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 20:35:49,909.909 INFO    ] Checking for system updates...
[2026-06-27 20:35:49,932.932 INFO    ] 200
[2026-06-27 20:35:49,934.934 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:35:49,970.970 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:35:49,972.972 INFO    ] No update needed
[2026-06-27 20:35:49,973.973 INFO    ] Checking for camera pi updates...
[2026-06-27 20:35:49,998.998 INFO    ] 200
[2026-06-27 20:35:50,000.000 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:35:50,029.029 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:35:50,072.072 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:35:50,074.074 INFO    ] No camera update needed
[2026-06-27 20:35:50,076.076 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:35:50,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:35:50,081.081 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:35:50,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:35:52,118.118 INFO    ] ================================================
[2026-06-27 20:35:52,132.132 INFO    ] Launching Daemon at Sat Jun 27 20:35:52 IST 2026
[2026-06-27 20:35:52,143.143 INFO    ] ================================================
[2026-06-27 20:35:52,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:35:52
[2026-06-27 20:35:52,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:35:52,927.927 INFO    ] Initializing speech engine...
[2026-06-27 20:35:52,930.930 INFO    ] 2026-06-27 20:35:52
[2026-06-27 20:35:53,124.124 INFO    ] 2026-06-27 20:35:53
[2026-06-27 20:35:53,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:35:53,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:35:53,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:35:53,436.436 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:35:53,437.437 INFO    ] time= 27/06/2026 20:35:53
[2026-06-27 20:35:53,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:35:53,440.440 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:35:53,492.492 INFO    ] No existing commands found in stream
[2026-06-27 20:35:58,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:35:58,503.503 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-27 20:35:59,375.375 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 20:35:59,377.377 INFO    ] Checking for system updates...
[2026-06-27 20:35:59,399.399 INFO    ] 200
[2026-06-27 20:35:59,400.400 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:35:59,430.430 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:35:59,432.432 INFO    ] No update needed
[2026-06-27 20:35:59,433.433 INFO    ] Checking for camera pi updates...
[2026-06-27 20:35:59,452.452 INFO    ] 200
[2026-06-27 20:35:59,454.454 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:35:59,478.478 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:35:59,530.530 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:35:59,531.531 INFO    ] No camera update needed
[2026-06-27 20:35:59,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:35:59,534.534 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:35:59,537.537 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:35:59,540.540 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:36:01,578.578 INFO    ] ================================================
[2026-06-27 20:36:01,593.593 INFO    ] Launching Daemon at Sat Jun 27 20:36:01 IST 2026
[2026-06-27 20:36:01,604.604 INFO    ] ================================================
[2026-06-27 20:36:02,025.025 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:36:02
[2026-06-27 20:36:02,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:36:02,590.590 INFO    ] Initializing speech engine...
[2026-06-27 20:36:02,597.597 INFO    ] 2026-06-27 20:36:02
[2026-06-27 20:36:02,844.844 INFO    ] 2026-06-27 20:36:02
[2026-06-27 20:36:02,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:36:03,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:36:03,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:36:03,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:36:03,272.272 INFO    ] time= 27/06/2026 20:36:03
[2026-06-27 20:36:03,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:36:03,306.306 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:36:03,377.377 INFO    ] No existing commands found in stream
[2026-06-27 20:36:08,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:36:08,388.388 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-27 20:36:11,894.894 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 20:36:11,896.896 INFO    ] Checking for system updates...
[2026-06-27 20:36:11,916.916 INFO    ] 200
[2026-06-27 20:36:11,918.918 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:36:11,952.952 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:36:11,954.954 INFO    ] No update needed
[2026-06-27 20:36:11,955.955 INFO    ] Checking for camera pi updates...
[2026-06-27 20:36:11,975.975 INFO    ] 200
[2026-06-27 20:36:11,976.976 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:36:12,002.002 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:36:12,057.057 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:36:12,058.058 INFO    ] No camera update needed
[2026-06-27 20:36:12,059.059 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:36:12,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:36:12,063.063 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:36:12,066.066 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:36:14,105.105 INFO    ] ================================================
[2026-06-27 20:36:14,120.120 INFO    ] Launching Daemon at Sat Jun 27 20:36:14 IST 2026
[2026-06-27 20:36:14,131.131 INFO    ] ================================================
[2026-06-27 20:36:14,471.471 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:36:14
[2026-06-27 20:36:14,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:36:14,935.935 INFO    ] Initializing speech engine...
[2026-06-27 20:36:14,940.940 INFO    ] 2026-06-27 20:36:14
[2026-06-27 20:36:15,145.145 INFO    ] 2026-06-27 20:36:15
[2026-06-27 20:36:15,173.173 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:36:15,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:36:15,367.367 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:36:15,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:36:15,567.567 INFO    ] time= 27/06/2026 20:36:15
[2026-06-27 20:36:15,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:36:15,594.594 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:36:15,660.660 INFO    ] No existing commands found in stream
[2026-06-27 20:36:20,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:36:20,673.673 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-27 20:36:23,234.234 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:36:23,236.236 INFO    ] Checking for system updates...
[2026-06-27 20:36:23,257.257 INFO    ] 200
[2026-06-27 20:36:23,259.259 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:36:23,289.289 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:36:23,291.291 INFO    ] No update needed
[2026-06-27 20:36:23,292.292 INFO    ] Checking for camera pi updates...
[2026-06-27 20:36:23,313.313 INFO    ] 200
[2026-06-27 20:36:23,315.315 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:36:23,338.338 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:36:23,390.390 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:36:23,391.391 INFO    ] No camera update needed
[2026-06-27 20:36:23,392.392 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:36:23,394.394 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:36:23,397.397 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:36:23,400.400 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:36:25,438.438 INFO    ] ================================================
[2026-06-27 20:36:25,453.453 INFO    ] Launching Daemon at Sat Jun 27 20:36:25 IST 2026
[2026-06-27 20:36:25,463.463 INFO    ] ================================================
[2026-06-27 20:36:25,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:36:25
[2026-06-27 20:36:26,099.099 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:36:26,232.232 INFO    ] Initializing speech engine...
[2026-06-27 20:36:26,245.245 INFO    ] 2026-06-27 20:36:26
[2026-06-27 20:36:26,454.454 INFO    ] 2026-06-27 20:36:26
[2026-06-27 20:36:26,485.485 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:36:26,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:36:26,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:36:26,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:36:26,902.902 INFO    ] time= 27/06/2026 20:36:26
[2026-06-27 20:36:26,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:36:26,909.909 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:36:27,001.001 INFO    ] No existing commands found in stream
[2026-06-27 20:36:32,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:36:32,018.018 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-27 20:36:36,387.387 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 20:36:36,388.388 INFO    ] Checking for system updates...
[2026-06-27 20:36:36,409.409 INFO    ] 200
[2026-06-27 20:36:36,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:36:36,443.443 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:36:36,444.444 INFO    ] No update needed
[2026-06-27 20:36:36,446.446 INFO    ] Checking for camera pi updates...
[2026-06-27 20:36:36,465.465 INFO    ] 200
[2026-06-27 20:36:36,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:36:36,489.489 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:36:36,533.533 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:36:36,534.534 INFO    ] No camera update needed
[2026-06-27 20:36:36,535.535 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:36:36,537.537 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:36:36,540.540 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:36:36,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:36:38,582.582 INFO    ] ================================================
[2026-06-27 20:36:38,598.598 INFO    ] Launching Daemon at Sat Jun 27 20:36:38 IST 2026
[2026-06-27 20:36:38,610.610 INFO    ] ================================================
[2026-06-27 20:36:38,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:36:38
[2026-06-27 20:36:39,262.262 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:36:39,400.400 INFO    ] Initializing speech engine...
[2026-06-27 20:36:39,410.410 INFO    ] 2026-06-27 20:36:39
[2026-06-27 20:36:39,617.617 INFO    ] 2026-06-27 20:36:39
[2026-06-27 20:36:39,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:36:39,831.831 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:36:39,841.841 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:36:40,125.125 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:36:40,128.128 INFO    ] time= 27/06/2026 20:36:40
[2026-06-27 20:36:40,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:36:40,156.156 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:36:40,253.253 INFO    ] No existing commands found in stream
[2026-06-27 20:36:45,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:36:45,266.266 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-27 20:36:46,398.398 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 20:36:46,400.400 INFO    ] Checking for system updates...
[2026-06-27 20:36:46,422.422 INFO    ] 200
[2026-06-27 20:36:46,423.423 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:36:46,456.456 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:36:46,457.457 INFO    ] No update needed
[2026-06-27 20:36:46,459.459 INFO    ] Checking for camera pi updates...
[2026-06-27 20:36:46,478.478 INFO    ] 200
[2026-06-27 20:36:46,480.480 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:36:46,503.503 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:36:46,554.554 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:36:46,556.556 INFO    ] No camera update needed
[2026-06-27 20:36:46,557.557 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:36:46,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:36:46,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:36:46,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:36:48,602.602 INFO    ] ================================================
[2026-06-27 20:36:48,617.617 INFO    ] Launching Daemon at Sat Jun 27 20:36:48 IST 2026
[2026-06-27 20:36:48,628.628 INFO    ] ================================================
[2026-06-27 20:36:48,972.972 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:36:48
[2026-06-27 20:36:49,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:36:49,433.433 INFO    ] Initializing speech engine...
[2026-06-27 20:36:49,438.438 INFO    ] 2026-06-27 20:36:49
[2026-06-27 20:36:49,642.642 INFO    ] 2026-06-27 20:36:49
[2026-06-27 20:36:49,670.670 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:36:49,854.854 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:36:49,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:36:50,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:36:50,082.082 INFO    ] time= 27/06/2026 20:36:50
[2026-06-27 20:36:50,088.088 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:36:50,090.090 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:36:50,156.156 INFO    ] No existing commands found in stream
[2026-06-27 20:36:55,171.171 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:36:55,178.178 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-27 20:36:55,872.872 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 20:36:55,874.874 INFO    ] Checking for system updates...
[2026-06-27 20:36:55,895.895 INFO    ] 200
[2026-06-27 20:36:55,897.897 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:36:55,929.929 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:36:55,930.930 INFO    ] No update needed
[2026-06-27 20:36:55,932.932 INFO    ] Checking for camera pi updates...
[2026-06-27 20:36:55,951.951 INFO    ] 200
[2026-06-27 20:36:55,952.952 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:36:55,975.975 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:36:56,001.001 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:36:56,002.002 INFO    ] No camera update needed
[2026-06-27 20:36:56,003.003 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:36:56,005.005 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:36:56,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:36:56,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:36:58,048.048 INFO    ] ================================================
[2026-06-27 20:36:58,064.064 INFO    ] Launching Daemon at Sat Jun 27 20:36:58 IST 2026
[2026-06-27 20:36:58,076.076 INFO    ] ================================================
[2026-06-27 20:36:58,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:36:58
[2026-06-27 20:36:58,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:36:58,868.868 INFO    ] Initializing speech engine...
[2026-06-27 20:36:58,876.876 INFO    ] 2026-06-27 20:36:58
[2026-06-27 20:36:59,087.087 INFO    ] 2026-06-27 20:36:59
[2026-06-27 20:36:59,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:36:59,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:36:59,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:36:59,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:36:59,505.505 INFO    ] time= 27/06/2026 20:36:59
[2026-06-27 20:36:59,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:36:59,534.534 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:36:59,601.601 INFO    ] No existing commands found in stream
[2026-06-27 20:37:04,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:37:04,618.618 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-27 20:37:08,618.618 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 20:37:08,619.619 INFO    ] Checking for system updates...
[2026-06-27 20:37:08,642.642 INFO    ] 200
[2026-06-27 20:37:08,644.644 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:37:08,674.674 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:37:08,675.675 INFO    ] No update needed
[2026-06-27 20:37:08,676.676 INFO    ] Checking for camera pi updates...
[2026-06-27 20:37:08,697.697 INFO    ] 200
[2026-06-27 20:37:08,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:37:08,723.723 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:37:08,773.773 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:37:08,774.774 INFO    ] No camera update needed
[2026-06-27 20:37:08,776.776 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:37:08,777.777 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:37:08,780.780 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:37:08,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:37:10,825.825 INFO    ] ================================================
[2026-06-27 20:37:10,841.841 INFO    ] Launching Daemon at Sat Jun 27 20:37:10 IST 2026
[2026-06-27 20:37:10,852.852 INFO    ] ================================================
[2026-06-27 20:37:11,179.179 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:37:11
[2026-06-27 20:37:11,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:37:11,637.637 INFO    ] Initializing speech engine...
[2026-06-27 20:37:11,642.642 INFO    ] 2026-06-27 20:37:11
[2026-06-27 20:37:11,845.845 INFO    ] 2026-06-27 20:37:11
[2026-06-27 20:37:11,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:37:12,058.058 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:37:12,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:37:12,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:37:12,263.263 INFO    ] time= 27/06/2026 20:37:12
[2026-06-27 20:37:12,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:37:12,291.291 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:37:12,358.358 INFO    ] No existing commands found in stream
[2026-06-27 20:37:17,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:37:17,369.369 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-27 20:37:17,856.856 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 20:37:17,858.858 INFO    ] Checking for system updates...
[2026-06-27 20:37:17,880.880 INFO    ] 200
[2026-06-27 20:37:17,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:37:17,914.914 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:37:17,916.916 INFO    ] No update needed
[2026-06-27 20:37:17,917.917 INFO    ] Checking for camera pi updates...
[2026-06-27 20:37:17,936.936 INFO    ] 200
[2026-06-27 20:37:17,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:37:17,963.963 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:37:18,107.107 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:37:18,108.108 INFO    ] No camera update needed
[2026-06-27 20:37:18,109.109 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:37:18,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:37:18,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:37:18,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:37:20,158.158 INFO    ] ================================================
[2026-06-27 20:37:20,174.174 INFO    ] Launching Daemon at Sat Jun 27 20:37:20 IST 2026
[2026-06-27 20:37:20,186.186 INFO    ] ================================================
[2026-06-27 20:37:20,514.514 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:37:20
[2026-06-27 20:37:20,827.827 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:37:20,958.958 INFO    ] Initializing speech engine...
[2026-06-27 20:37:20,962.962 INFO    ] 2026-06-27 20:37:20
[2026-06-27 20:37:21,181.181 INFO    ] 2026-06-27 20:37:21
[2026-06-27 20:37:21,211.211 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:37:21,397.397 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:37:21,407.407 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:37:21,532.532 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:37:21,587.587 INFO    ] time= 27/06/2026 20:37:21
[2026-06-27 20:37:21,623.623 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:37:21,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:37:21,730.730 INFO    ] No existing commands found in stream
[2026-06-27 20:37:26,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:37:26,741.741 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-27 20:37:27,812.812 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 20:37:27,814.814 INFO    ] Checking for system updates...
[2026-06-27 20:37:27,837.837 INFO    ] 200
[2026-06-27 20:37:27,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:37:27,868.868 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:37:27,869.869 INFO    ] No update needed
[2026-06-27 20:37:27,871.871 INFO    ] Checking for camera pi updates...
[2026-06-27 20:37:27,891.891 INFO    ] 200
[2026-06-27 20:37:27,893.893 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:37:27,916.916 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:37:27,958.958 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:37:27,959.959 INFO    ] No camera update needed
[2026-06-27 20:37:27,961.961 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:37:27,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:37:27,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:37:27,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:37:30,007.007 INFO    ] ================================================
[2026-06-27 20:37:30,023.023 INFO    ] Launching Daemon at Sat Jun 27 20:37:30 IST 2026
[2026-06-27 20:37:30,034.034 INFO    ] ================================================
[2026-06-27 20:37:30,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:37:30
[2026-06-27 20:37:30,697.697 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:37:30,829.829 INFO    ] Initializing speech engine...
[2026-06-27 20:37:30,837.837 INFO    ] 2026-06-27 20:37:30
[2026-06-27 20:37:31,049.049 INFO    ] 2026-06-27 20:37:31
[2026-06-27 20:37:31,078.078 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:37:31,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:37:31,292.292 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:37:31,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:37:31,512.512 INFO    ] time= 27/06/2026 20:37:31
[2026-06-27 20:37:31,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:37:31,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:37:31,629.629 INFO    ] No existing commands found in stream
[2026-06-27 20:37:36,638.638 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:37:36,641.641 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-27 20:37:37,239.239 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 20:37:37,240.240 INFO    ] Checking for system updates...
[2026-06-27 20:37:37,263.263 INFO    ] 200
[2026-06-27 20:37:37,264.264 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:37:37,296.296 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:37:37,297.297 INFO    ] No update needed
[2026-06-27 20:37:37,299.299 INFO    ] Checking for camera pi updates...
[2026-06-27 20:37:37,320.320 INFO    ] 200
[2026-06-27 20:37:37,321.321 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:37:37,346.346 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:37:37,402.402 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:37:37,403.403 INFO    ] No camera update needed
[2026-06-27 20:37:37,404.404 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:37:37,406.406 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:37:37,409.409 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:37:37,411.411 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:37:39,454.454 INFO    ] ================================================
[2026-06-27 20:37:39,470.470 INFO    ] Launching Daemon at Sat Jun 27 20:37:39 IST 2026
[2026-06-27 20:37:39,481.481 INFO    ] ================================================
[2026-06-27 20:37:39,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:37:39
[2026-06-27 20:37:40,139.139 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:37:40,283.283 INFO    ] Initializing speech engine...
[2026-06-27 20:37:40,290.290 INFO    ] 2026-06-27 20:37:40
[2026-06-27 20:37:40,493.493 INFO    ] 2026-06-27 20:37:40
[2026-06-27 20:37:40,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:37:40,704.704 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:37:40,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:37:40,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:37:40,908.908 INFO    ] time= 27/06/2026 20:37:40
[2026-06-27 20:37:40,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:37:40,938.938 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:37:41,006.006 INFO    ] No existing commands found in stream
[2026-06-27 20:37:46,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:37:46,022.022 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-27 20:37:47,187.187 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 20:37:47,188.188 INFO    ] Checking for system updates...
[2026-06-27 20:37:47,211.211 INFO    ] 200
[2026-06-27 20:37:47,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:37:47,243.243 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:37:47,245.245 INFO    ] No update needed
[2026-06-27 20:37:47,246.246 INFO    ] Checking for camera pi updates...
[2026-06-27 20:37:47,267.267 INFO    ] 200
[2026-06-27 20:37:47,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:37:47,295.295 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:37:47,345.345 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:37:47,347.347 INFO    ] No camera update needed
[2026-06-27 20:37:47,348.348 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:37:47,349.349 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:37:47,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:37:47,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:37:49,394.394 INFO    ] ================================================
[2026-06-27 20:37:49,409.409 INFO    ] Launching Daemon at Sat Jun 27 20:37:49 IST 2026
[2026-06-27 20:37:49,420.420 INFO    ] ================================================
[2026-06-27 20:37:49,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:37:49
[2026-06-27 20:37:50,149.149 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:37:50,302.302 INFO    ] Initializing speech engine...
[2026-06-27 20:37:50,307.307 INFO    ] 2026-06-27 20:37:50
[2026-06-27 20:37:50,516.516 INFO    ] 2026-06-27 20:37:50
[2026-06-27 20:37:50,546.546 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:37:50,731.731 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:37:50,740.740 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:37:50,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:37:50,938.938 INFO    ] time= 27/06/2026 20:37:50
[2026-06-27 20:37:50,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:37:50,968.968 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:37:51,035.035 INFO    ] No existing commands found in stream
[2026-06-27 20:37:56,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:37:56,058.058 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-27 20:37:59,015.015 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 20:37:59,017.017 INFO    ] Checking for system updates...
[2026-06-27 20:37:59,038.038 INFO    ] 200
[2026-06-27 20:37:59,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:37:59,073.073 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:37:59,075.075 INFO    ] No update needed
[2026-06-27 20:37:59,077.077 INFO    ] Checking for camera pi updates...
[2026-06-27 20:37:59,096.096 INFO    ] 200
[2026-06-27 20:37:59,098.098 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:37:59,124.124 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:37:59,172.172 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:37:59,174.174 INFO    ] No camera update needed
[2026-06-27 20:37:59,175.175 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:37:59,177.177 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:37:59,180.180 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:37:59,183.183 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:38:01,222.222 INFO    ] ================================================
[2026-06-27 20:38:01,237.237 INFO    ] Launching Daemon at Sat Jun 27 20:38:01 IST 2026
[2026-06-27 20:38:01,248.248 INFO    ] ================================================
[2026-06-27 20:38:01,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:38:01
[2026-06-27 20:38:02,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:38:02,212.212 INFO    ] Initializing speech engine...
[2026-06-27 20:38:02,218.218 INFO    ] 2026-06-27 20:38:02
[2026-06-27 20:38:02,449.449 INFO    ] 2026-06-27 20:38:02
[2026-06-27 20:38:02,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:38:02,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:38:02,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:38:02,873.873 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:38:02,928.928 INFO    ] time= 27/06/2026 20:38:02
[2026-06-27 20:38:02,949.949 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:38:02,956.956 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:38:03,024.024 INFO    ] No existing commands found in stream
[2026-06-27 20:38:08,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:38:08,040.040 INFO    ] Waiting 0.89 seconds before fallback handling...
[2026-06-27 20:38:09,649.649 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 20:38:09,651.651 INFO    ] Checking for system updates...
[2026-06-27 20:38:09,675.675 INFO    ] 200
[2026-06-27 20:38:09,676.676 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:38:09,712.712 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:38:09,714.714 INFO    ] No update needed
[2026-06-27 20:38:09,715.715 INFO    ] Checking for camera pi updates...
[2026-06-27 20:38:09,737.737 INFO    ] 200
[2026-06-27 20:38:09,738.738 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:38:09,761.761 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:38:09,805.805 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:38:09,807.807 INFO    ] No camera update needed
[2026-06-27 20:38:09,808.808 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:38:09,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:38:09,812.812 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:38:09,815.815 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:38:11,854.854 INFO    ] ================================================
[2026-06-27 20:38:11,870.870 INFO    ] Launching Daemon at Sat Jun 27 20:38:11 IST 2026
[2026-06-27 20:38:11,880.880 INFO    ] ================================================
[2026-06-27 20:38:12,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:38:12
[2026-06-27 20:38:12,567.567 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:38:12,699.699 INFO    ] Initializing speech engine...
[2026-06-27 20:38:12,703.703 INFO    ] 2026-06-27 20:38:12
[2026-06-27 20:38:12,921.921 INFO    ] 2026-06-27 20:38:12
[2026-06-27 20:38:12,950.950 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:38:13,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:38:13,151.151 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:38:13,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:38:13,343.343 INFO    ] time= 27/06/2026 20:38:13
[2026-06-27 20:38:13,371.371 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:38:13,376.376 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:38:13,448.448 INFO    ] No existing commands found in stream
[2026-06-27 20:38:18,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:38:18,466.466 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-27 20:38:20,943.943 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 20:38:20,945.945 INFO    ] Checking for system updates...
[2026-06-27 20:38:20,967.967 INFO    ] 200
[2026-06-27 20:38:20,969.969 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:38:21,009.009 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:38:21,011.011 INFO    ] No update needed
[2026-06-27 20:38:21,012.012 INFO    ] Checking for camera pi updates...
[2026-06-27 20:38:21,035.035 INFO    ] 200
[2026-06-27 20:38:21,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:38:21,060.060 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:38:21,109.109 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:38:21,110.110 INFO    ] No camera update needed
[2026-06-27 20:38:21,112.112 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:38:21,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:38:21,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:38:21,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:38:23,158.158 INFO    ] ================================================
[2026-06-27 20:38:23,173.173 INFO    ] Launching Daemon at Sat Jun 27 20:38:23 IST 2026
[2026-06-27 20:38:23,184.184 INFO    ] ================================================
[2026-06-27 20:38:23,542.542 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:38:23
[2026-06-27 20:38:23,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:38:23,992.992 INFO    ] Initializing speech engine...
[2026-06-27 20:38:23,996.996 INFO    ] 2026-06-27 20:38:23
[2026-06-27 20:38:24,189.189 INFO    ] 2026-06-27 20:38:24
[2026-06-27 20:38:24,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:38:24,466.466 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:38:24,469.469 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:38:24,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:38:24,673.673 INFO    ] time= 27/06/2026 20:38:24
[2026-06-27 20:38:24,723.723 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:38:24,725.725 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:38:24,804.804 INFO    ] No existing commands found in stream
[2026-06-27 20:38:29,813.813 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:38:29,816.816 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-27 20:38:32,888.888 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 20:38:32,889.889 INFO    ] Checking for system updates...
[2026-06-27 20:38:32,912.912 INFO    ] 200
[2026-06-27 20:38:32,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:38:32,946.946 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:38:32,947.947 INFO    ] No update needed
[2026-06-27 20:38:32,949.949 INFO    ] Checking for camera pi updates...
[2026-06-27 20:38:32,968.968 INFO    ] 200
[2026-06-27 20:38:32,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:38:32,995.995 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:38:33,022.022 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:38:33,024.024 INFO    ] No camera update needed
[2026-06-27 20:38:33,028.028 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:38:33,030.030 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:38:33,034.034 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:38:33,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:38:35,076.076 INFO    ] ================================================
[2026-06-27 20:38:35,092.092 INFO    ] Launching Daemon at Sat Jun 27 20:38:35 IST 2026
[2026-06-27 20:38:35,103.103 INFO    ] ================================================
[2026-06-27 20:38:35,488.488 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:38:35
[2026-06-27 20:38:35,834.834 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:38:35,987.987 INFO    ] Initializing speech engine...
[2026-06-27 20:38:35,993.993 INFO    ] 2026-06-27 20:38:35
[2026-06-27 20:38:36,205.205 INFO    ] 2026-06-27 20:38:36
[2026-06-27 20:38:36,234.234 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:38:36,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:38:36,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:38:36,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:38:36,649.649 INFO    ] time= 27/06/2026 20:38:36
[2026-06-27 20:38:36,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:38:36,661.661 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:38:36,729.729 INFO    ] No existing commands found in stream
[2026-06-27 20:38:41,738.738 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:38:41,740.740 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-27 20:38:43,247.247 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 20:38:43,248.248 INFO    ] Checking for system updates...
[2026-06-27 20:38:43,269.269 INFO    ] 200
[2026-06-27 20:38:43,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:38:43,304.304 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:38:43,306.306 INFO    ] No update needed
[2026-06-27 20:38:43,308.308 INFO    ] Checking for camera pi updates...
[2026-06-27 20:38:43,327.327 INFO    ] 200
[2026-06-27 20:38:43,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:38:43,355.355 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:38:43,396.396 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:38:43,397.397 INFO    ] No camera update needed
[2026-06-27 20:38:43,399.399 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:38:43,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:38:43,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:38:43,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:38:45,445.445 INFO    ] ================================================
[2026-06-27 20:38:45,461.461 INFO    ] Launching Daemon at Sat Jun 27 20:38:45 IST 2026
[2026-06-27 20:38:45,473.473 INFO    ] ================================================
[2026-06-27 20:38:45,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:38:45
[2026-06-27 20:38:46,144.144 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:38:46,280.280 INFO    ] Initializing speech engine...
[2026-06-27 20:38:46,284.284 INFO    ] 2026-06-27 20:38:46
[2026-06-27 20:38:46,502.502 INFO    ] 2026-06-27 20:38:46
[2026-06-27 20:38:46,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:38:46,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:38:46,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:38:46,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:38:46,956.956 INFO    ] time= 27/06/2026 20:38:46
[2026-06-27 20:38:46,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:38:46,985.985 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:38:47,051.051 INFO    ] No existing commands found in stream
[2026-06-27 20:38:52,061.061 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:38:52,064.064 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-27 20:38:56,054.054 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 20:38:56,055.055 INFO    ] Checking for system updates...
[2026-06-27 20:38:56,078.078 INFO    ] 200
[2026-06-27 20:38:56,079.079 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:38:56,113.113 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:38:56,114.114 INFO    ] No update needed
[2026-06-27 20:38:56,116.116 INFO    ] Checking for camera pi updates...
[2026-06-27 20:38:56,136.136 INFO    ] 200
[2026-06-27 20:38:56,137.137 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:38:56,162.162 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:38:56,195.195 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:38:56,196.196 INFO    ] No camera update needed
[2026-06-27 20:38:56,198.198 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:38:56,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:38:56,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:38:56,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:38:58,245.245 INFO    ] ================================================
[2026-06-27 20:38:58,260.260 INFO    ] Launching Daemon at Sat Jun 27 20:38:58 IST 2026
[2026-06-27 20:38:58,272.272 INFO    ] ================================================
[2026-06-27 20:38:58,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:38:58
[2026-06-27 20:38:58,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:38:59,074.074 INFO    ] Initializing speech engine...
[2026-06-27 20:38:59,083.083 INFO    ] 2026-06-27 20:38:59
[2026-06-27 20:38:59,292.292 INFO    ] 2026-06-27 20:38:59
[2026-06-27 20:38:59,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:38:59,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:38:59,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:38:59,650.650 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:38:59,714.714 INFO    ] time= 27/06/2026 20:38:59
[2026-06-27 20:38:59,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:38:59,749.749 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:38:59,818.818 INFO    ] No existing commands found in stream
[2026-06-27 20:39:04,827.827 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:39:04,830.830 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-27 20:39:07,897.897 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 20:39:07,898.898 INFO    ] Checking for system updates...
[2026-06-27 20:39:07,923.923 INFO    ] 200
[2026-06-27 20:39:07,925.925 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:39:07,955.955 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:39:07,956.956 INFO    ] No update needed
[2026-06-27 20:39:07,957.957 INFO    ] Checking for camera pi updates...
[2026-06-27 20:39:07,979.979 INFO    ] 200
[2026-06-27 20:39:07,980.980 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:39:08,003.003 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:39:08,029.029 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:39:08,031.031 INFO    ] No camera update needed
[2026-06-27 20:39:08,032.032 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:39:08,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:39:08,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:39:08,039.039 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:39:10,079.079 INFO    ] ================================================
[2026-06-27 20:39:10,095.095 INFO    ] Launching Daemon at Sat Jun 27 20:39:10 IST 2026
[2026-06-27 20:39:10,106.106 INFO    ] ================================================
[2026-06-27 20:39:10,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:39:10
[2026-06-27 20:39:10,776.776 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:39:10,911.911 INFO    ] Initializing speech engine...
[2026-06-27 20:39:10,923.923 INFO    ] 2026-06-27 20:39:10
[2026-06-27 20:39:11,132.132 INFO    ] 2026-06-27 20:39:11
[2026-06-27 20:39:11,163.163 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:39:11,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:39:11,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:39:11,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:39:11,582.582 INFO    ] time= 27/06/2026 20:39:11
[2026-06-27 20:39:11,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:39:11,619.619 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:39:11,695.695 INFO    ] No existing commands found in stream
[2026-06-27 20:39:16,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:39:16,708.708 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-27 20:39:19,392.392 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 20:39:19,394.394 INFO    ] Checking for system updates...
[2026-06-27 20:39:19,416.416 INFO    ] 200
[2026-06-27 20:39:19,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:39:19,448.448 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:39:19,449.449 INFO    ] No update needed
[2026-06-27 20:39:19,450.450 INFO    ] Checking for camera pi updates...
[2026-06-27 20:39:19,470.470 INFO    ] 200
[2026-06-27 20:39:19,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:39:19,494.494 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:39:19,635.635 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:39:19,636.636 INFO    ] No camera update needed
[2026-06-27 20:39:19,637.637 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:39:19,639.639 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:39:19,642.642 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:39:19,645.645 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:39:21,684.684 INFO    ] ================================================
[2026-06-27 20:39:21,701.701 INFO    ] Launching Daemon at Sat Jun 27 20:39:21 IST 2026
[2026-06-27 20:39:21,712.712 INFO    ] ================================================
[2026-06-27 20:39:22,075.075 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:39:22
[2026-06-27 20:39:22,392.392 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:39:22,544.544 INFO    ] Initializing speech engine...
[2026-06-27 20:39:22,549.549 INFO    ] 2026-06-27 20:39:22
[2026-06-27 20:39:22,758.758 INFO    ] 2026-06-27 20:39:22
[2026-06-27 20:39:22,787.787 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:39:22,970.970 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:39:22,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:39:23,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:39:23,198.198 INFO    ] time= 27/06/2026 20:39:23
[2026-06-27 20:39:23,204.204 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:39:23,206.206 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:39:23,274.274 INFO    ] No existing commands found in stream
[2026-06-27 20:39:28,288.288 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:39:28,292.292 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-27 20:39:32,196.196 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 20:39:32,198.198 INFO    ] Checking for system updates...
[2026-06-27 20:39:32,224.224 INFO    ] 200
[2026-06-27 20:39:32,226.226 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:39:32,261.261 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:39:32,263.263 INFO    ] No update needed
[2026-06-27 20:39:32,265.265 INFO    ] Checking for camera pi updates...
[2026-06-27 20:39:32,289.289 INFO    ] 200
[2026-06-27 20:39:32,291.291 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:39:32,318.318 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:39:32,350.350 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:39:32,352.352 INFO    ] No camera update needed
[2026-06-27 20:39:32,353.353 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:39:32,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:39:32,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:39:32,361.361 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:39:34,402.402 INFO    ] ================================================
[2026-06-27 20:39:34,419.419 INFO    ] Launching Daemon at Sat Jun 27 20:39:34 IST 2026
[2026-06-27 20:39:34,430.430 INFO    ] ================================================
[2026-06-27 20:39:34,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:39:34
[2026-06-27 20:39:35,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:39:35,231.231 INFO    ] Initializing speech engine...
[2026-06-27 20:39:35,242.242 INFO    ] 2026-06-27 20:39:35
[2026-06-27 20:39:35,458.458 INFO    ] 2026-06-27 20:39:35
[2026-06-27 20:39:35,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:39:35,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:39:35,693.693 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:39:35,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:39:35,912.912 INFO    ] time= 27/06/2026 20:39:35
[2026-06-27 20:39:35,938.938 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:39:35,940.940 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:39:36,016.016 INFO    ] No existing commands found in stream
[2026-06-27 20:39:41,027.027 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:39:41,029.029 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-27 20:39:44,748.748 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:39:44,750.750 INFO    ] Checking for system updates...
[2026-06-27 20:39:44,770.770 INFO    ] 200
[2026-06-27 20:39:44,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:39:44,803.803 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:39:44,804.804 INFO    ] No update needed
[2026-06-27 20:39:44,805.805 INFO    ] Checking for camera pi updates...
[2026-06-27 20:39:44,825.825 INFO    ] 200
[2026-06-27 20:39:44,827.827 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:39:44,852.852 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:39:44,914.914 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:39:44,915.915 INFO    ] No camera update needed
[2026-06-27 20:39:44,917.917 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:39:44,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:39:44,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:39:44,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:39:46,962.962 INFO    ] ================================================
[2026-06-27 20:39:46,977.977 INFO    ] Launching Daemon at Sat Jun 27 20:39:46 IST 2026
[2026-06-27 20:39:46,988.988 INFO    ] ================================================
[2026-06-27 20:39:47,369.369 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:39:47
[2026-06-27 20:39:47,711.711 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:39:47,866.866 INFO    ] Initializing speech engine...
[2026-06-27 20:39:47,872.872 INFO    ] 2026-06-27 20:39:47
[2026-06-27 20:39:48,092.092 INFO    ] 2026-06-27 20:39:48
[2026-06-27 20:39:48,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:39:48,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:39:48,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:39:48,478.478 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:39:48,541.541 INFO    ] time= 27/06/2026 20:39:48
[2026-06-27 20:39:48,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:39:48,582.582 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:39:48,650.650 INFO    ] No existing commands found in stream
[2026-06-27 20:39:53,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:39:53,663.663 INFO    ] Waiting 2.37 seconds before fallback handling...
[2026-06-27 20:39:56,469.469 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 20:39:56,471.471 INFO    ] Checking for system updates...
[2026-06-27 20:39:56,493.493 INFO    ] 200
[2026-06-27 20:39:56,495.495 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:39:56,528.528 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:39:56,530.530 INFO    ] No update needed
[2026-06-27 20:39:56,531.531 INFO    ] Checking for camera pi updates...
[2026-06-27 20:39:56,555.555 INFO    ] 200
[2026-06-27 20:39:56,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:39:56,581.581 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:39:56,636.636 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:39:56,638.638 INFO    ] No camera update needed
[2026-06-27 20:39:56,639.639 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:39:56,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:39:56,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:39:56,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:39:58,687.687 INFO    ] ================================================
[2026-06-27 20:39:58,703.703 INFO    ] Launching Daemon at Sat Jun 27 20:39:58 IST 2026
[2026-06-27 20:39:58,714.714 INFO    ] ================================================
[2026-06-27 20:39:59,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:39:59
[2026-06-27 20:39:59,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:39:59,515.515 INFO    ] Initializing speech engine...
[2026-06-27 20:39:59,521.521 INFO    ] 2026-06-27 20:39:59
[2026-06-27 20:39:59,723.723 INFO    ] 2026-06-27 20:39:59
[2026-06-27 20:39:59,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:39:59,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:39:59,947.947 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:40:00,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:40:00,165.165 INFO    ] time= 27/06/2026 20:40:00
[2026-06-27 20:40:00,166.166 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:40:00,172.172 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:40:00,240.240 INFO    ] No existing commands found in stream
[2026-06-27 20:40:05,261.261 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:40:05,264.264 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-27 20:40:08,800.800 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:40:08,801.801 INFO    ] Checking for system updates...
[2026-06-27 20:40:08,823.823 INFO    ] 200
[2026-06-27 20:40:08,825.825 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:40:08,855.855 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:40:08,857.857 INFO    ] No update needed
[2026-06-27 20:40:08,858.858 INFO    ] Checking for camera pi updates...
[2026-06-27 20:40:08,878.878 INFO    ] 200
[2026-06-27 20:40:08,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:40:08,902.902 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:40:08,956.956 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:40:08,958.958 INFO    ] No camera update needed
[2026-06-27 20:40:08,959.959 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:40:08,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:40:08,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:40:08,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:40:11,007.007 INFO    ] ================================================
[2026-06-27 20:40:11,023.023 INFO    ] Launching Daemon at Sat Jun 27 20:40:11 IST 2026
[2026-06-27 20:40:11,035.035 INFO    ] ================================================
[2026-06-27 20:40:11,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:40:11
[2026-06-27 20:40:11,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:40:11,845.845 INFO    ] Initializing speech engine...
[2026-06-27 20:40:11,850.850 INFO    ] 2026-06-27 20:40:11
[2026-06-27 20:40:12,057.057 INFO    ] 2026-06-27 20:40:12
[2026-06-27 20:40:12,087.087 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:40:12,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:40:12,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:40:12,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:40:12,486.486 INFO    ] time= 27/06/2026 20:40:12
[2026-06-27 20:40:12,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:40:12,516.516 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:40:12,585.585 INFO    ] No existing commands found in stream
[2026-06-27 20:40:17,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:40:17,612.612 INFO    ] Waiting 0.82 seconds before fallback handling...
[2026-06-27 20:40:18,873.873 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 20:40:18,875.875 INFO    ] Checking for system updates...
[2026-06-27 20:40:18,896.896 INFO    ] 200
[2026-06-27 20:40:18,898.898 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:40:18,929.929 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:40:18,930.930 INFO    ] No update needed
[2026-06-27 20:40:18,931.931 INFO    ] Checking for camera pi updates...
[2026-06-27 20:40:18,951.951 INFO    ] 200
[2026-06-27 20:40:18,952.952 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:40:18,976.976 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:40:19,016.016 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:40:19,018.018 INFO    ] No camera update needed
[2026-06-27 20:40:19,019.019 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:40:19,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:40:19,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:40:19,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:40:21,066.066 INFO    ] ================================================
[2026-06-27 20:40:21,081.081 INFO    ] Launching Daemon at Sat Jun 27 20:40:21 IST 2026
[2026-06-27 20:40:21,092.092 INFO    ] ================================================
[2026-06-27 20:40:21,464.464 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:40:21
[2026-06-27 20:40:21,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:40:21,927.927 INFO    ] Initializing speech engine...
[2026-06-27 20:40:21,932.932 INFO    ] 2026-06-27 20:40:21
[2026-06-27 20:40:22,138.138 INFO    ] 2026-06-27 20:40:22
[2026-06-27 20:40:22,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:40:22,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:40:22,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:40:22,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:40:22,578.578 INFO    ] time= 27/06/2026 20:40:22
[2026-06-27 20:40:22,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:40:22,585.585 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:40:22,652.652 INFO    ] No existing commands found in stream
[2026-06-27 20:40:27,661.661 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:40:27,664.664 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-27 20:40:30,168.168 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 20:40:30,169.169 INFO    ] Checking for system updates...
[2026-06-27 20:40:30,191.191 INFO    ] 200
[2026-06-27 20:40:30,193.193 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:40:30,223.223 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:40:30,224.224 INFO    ] No update needed
[2026-06-27 20:40:30,226.226 INFO    ] Checking for camera pi updates...
[2026-06-27 20:40:30,245.245 INFO    ] 200
[2026-06-27 20:40:30,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:40:30,270.270 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:40:30,325.325 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:40:30,327.327 INFO    ] No camera update needed
[2026-06-27 20:40:30,328.328 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:40:30,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:40:30,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:40:30,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:40:32,367.367 INFO    ] ================================================
[2026-06-27 20:40:32,377.377 INFO    ] Launching Daemon at Sat Jun 27 20:40:32 IST 2026
[2026-06-27 20:40:32,384.384 INFO    ] ================================================
[2026-06-27 20:40:32,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:40:32
[2026-06-27 20:40:33,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:40:33,240.240 INFO    ] Initializing speech engine...
[2026-06-27 20:40:33,246.246 INFO    ] 2026-06-27 20:40:33
[2026-06-27 20:40:33,455.455 INFO    ] 2026-06-27 20:40:33
[2026-06-27 20:40:33,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:40:33,699.699 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:40:33,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:40:33,876.876 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:40:33,900.900 INFO    ] time= 27/06/2026 20:40:33
[2026-06-27 20:40:33,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:40:33,907.907 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:40:33,976.976 INFO    ] No existing commands found in stream
[2026-06-27 20:40:38,985.985 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:40:38,989.989 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-27 20:40:43,401.401 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 20:40:43,402.402 INFO    ] Checking for system updates...
[2026-06-27 20:40:43,424.424 INFO    ] 200
[2026-06-27 20:40:43,426.426 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:40:43,460.460 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:40:43,461.461 INFO    ] No update needed
[2026-06-27 20:40:43,462.462 INFO    ] Checking for camera pi updates...
[2026-06-27 20:40:43,485.485 INFO    ] 200
[2026-06-27 20:40:43,486.486 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:40:43,510.510 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:40:43,555.555 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:40:43,557.557 INFO    ] No camera update needed
[2026-06-27 20:40:43,558.558 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:40:43,559.559 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:40:43,562.562 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:40:43,565.565 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:40:45,606.606 INFO    ] ================================================
[2026-06-27 20:40:45,621.621 INFO    ] Launching Daemon at Sat Jun 27 20:40:45 IST 2026
[2026-06-27 20:40:45,633.633 INFO    ] ================================================
[2026-06-27 20:40:45,975.975 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:40:45
[2026-06-27 20:40:46,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:40:46,427.427 INFO    ] Initializing speech engine...
[2026-06-27 20:40:46,440.440 INFO    ] 2026-06-27 20:40:46
[2026-06-27 20:40:46,642.642 INFO    ] 2026-06-27 20:40:46
[2026-06-27 20:40:46,671.671 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:40:46,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:40:47,026.026 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:40:47,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:40:47,275.275 INFO    ] time= 27/06/2026 20:40:47
[2026-06-27 20:40:47,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:40:47,281.281 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:40:47,361.361 INFO    ] No existing commands found in stream
[2026-06-27 20:40:52,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:40:52,374.374 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-27 20:40:53,695.695 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 20:40:53,696.696 INFO    ] Checking for system updates...
[2026-06-27 20:40:53,718.718 INFO    ] 200
[2026-06-27 20:40:53,719.719 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:40:53,750.750 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:40:53,752.752 INFO    ] No update needed
[2026-06-27 20:40:53,753.753 INFO    ] Checking for camera pi updates...
[2026-06-27 20:40:53,778.778 INFO    ] 200
[2026-06-27 20:40:53,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:40:53,805.805 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:40:53,884.884 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:40:53,885.885 INFO    ] No camera update needed
[2026-06-27 20:40:53,886.886 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:40:53,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:40:53,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:40:53,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:40:55,933.933 INFO    ] ================================================
[2026-06-27 20:40:55,948.948 INFO    ] Launching Daemon at Sat Jun 27 20:40:55 IST 2026
[2026-06-27 20:40:55,959.959 INFO    ] ================================================
[2026-06-27 20:40:56,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:40:56
[2026-06-27 20:40:56,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:40:56,788.788 INFO    ] Initializing speech engine...
[2026-06-27 20:40:56,792.792 INFO    ] 2026-06-27 20:40:56
[2026-06-27 20:40:57,014.014 INFO    ] 2026-06-27 20:40:56
[2026-06-27 20:40:57,044.044 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:40:57,168.168 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:40:57,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:40:57,368.368 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:40:57,430.430 INFO    ] time= 27/06/2026 20:40:57
[2026-06-27 20:40:57,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:40:57,469.469 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:40:57,536.536 INFO    ] No existing commands found in stream
[2026-06-27 20:41:02,545.545 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:41:02,547.547 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-27 20:41:04,555.555 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 20:41:04,556.556 INFO    ] Checking for system updates...
[2026-06-27 20:41:04,577.577 INFO    ] 200
[2026-06-27 20:41:04,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:41:04,609.609 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:41:04,611.611 INFO    ] No update needed
[2026-06-27 20:41:04,612.612 INFO    ] Checking for camera pi updates...
[2026-06-27 20:41:04,632.632 INFO    ] 200
[2026-06-27 20:41:04,634.634 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:41:04,660.660 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:41:04,701.701 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:41:04,702.702 INFO    ] No camera update needed
[2026-06-27 20:41:04,703.703 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:41:04,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:41:04,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:41:04,710.710 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:41:06,749.749 INFO    ] ================================================
[2026-06-27 20:41:06,765.765 INFO    ] Launching Daemon at Sat Jun 27 20:41:06 IST 2026
[2026-06-27 20:41:06,776.776 INFO    ] ================================================
[2026-06-27 20:41:07,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:41:07
[2026-06-27 20:41:07,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:41:07,563.563 INFO    ] Initializing speech engine...
[2026-06-27 20:41:07,572.572 INFO    ] 2026-06-27 20:41:07
[2026-06-27 20:41:07,786.786 INFO    ] 2026-06-27 20:41:07
[2026-06-27 20:41:07,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:41:08,002.002 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:41:08,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:41:08,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:41:08,234.234 INFO    ] time= 27/06/2026 20:41:08
[2026-06-27 20:41:08,240.240 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:41:08,241.241 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:41:08,308.308 INFO    ] No existing commands found in stream
[2026-06-27 20:41:13,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:41:13,321.321 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-27 20:41:16,985.985 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 20:41:16,987.987 INFO    ] Checking for system updates...
[2026-06-27 20:41:17,008.008 INFO    ] 200
[2026-06-27 20:41:17,009.009 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:41:17,041.041 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:41:17,042.042 INFO    ] No update needed
[2026-06-27 20:41:17,044.044 INFO    ] Checking for camera pi updates...
[2026-06-27 20:41:17,064.064 INFO    ] 200
[2026-06-27 20:41:17,066.066 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:41:17,090.090 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:41:17,131.131 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:41:17,133.133 INFO    ] No camera update needed
[2026-06-27 20:41:17,134.134 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:41:17,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:41:17,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:41:17,142.142 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:41:19,182.182 INFO    ] ================================================
[2026-06-27 20:41:19,197.197 INFO    ] Launching Daemon at Sat Jun 27 20:41:19 IST 2026
[2026-06-27 20:41:19,208.208 INFO    ] ================================================
[2026-06-27 20:41:19,566.566 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:41:19
[2026-06-27 20:41:19,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:41:20,027.027 INFO    ] Initializing speech engine...
[2026-06-27 20:41:20,032.032 INFO    ] 2026-06-27 20:41:20
[2026-06-27 20:41:20,238.238 INFO    ] 2026-06-27 20:41:20
[2026-06-27 20:41:20,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:41:20,450.450 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:41:20,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:41:20,604.604 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:41:20,656.656 INFO    ] time= 27/06/2026 20:41:20
[2026-06-27 20:41:20,679.679 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:41:20,685.685 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:41:20,751.751 INFO    ] No existing commands found in stream
[2026-06-27 20:41:25,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:41:25,765.765 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-27 20:41:28,909.909 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 20:41:28,910.910 INFO    ] Checking for system updates...
[2026-06-27 20:41:28,933.933 INFO    ] 200
[2026-06-27 20:41:28,934.934 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:41:28,968.968 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:41:28,970.970 INFO    ] No update needed
[2026-06-27 20:41:28,971.971 INFO    ] Checking for camera pi updates...
[2026-06-27 20:41:28,991.991 INFO    ] 200
[2026-06-27 20:41:28,992.992 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:41:29,018.018 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:41:29,167.167 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:41:29,169.169 INFO    ] No camera update needed
[2026-06-27 20:41:29,170.170 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:41:29,171.171 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:41:29,174.174 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:41:29,177.177 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:41:31,218.218 INFO    ] ================================================
[2026-06-27 20:41:31,234.234 INFO    ] Launching Daemon at Sat Jun 27 20:41:31 IST 2026
[2026-06-27 20:41:31,245.245 INFO    ] ================================================
[2026-06-27 20:41:31,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:41:31
[2026-06-27 20:41:31,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:41:32,117.117 INFO    ] Initializing speech engine...
[2026-06-27 20:41:32,122.122 INFO    ] 2026-06-27 20:41:32
[2026-06-27 20:41:32,348.348 INFO    ] 2026-06-27 20:41:32
[2026-06-27 20:41:32,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:41:32,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:41:32,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:41:32,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:41:32,768.768 INFO    ] time= 27/06/2026 20:41:32
[2026-06-27 20:41:32,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:41:32,803.803 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:41:32,869.869 INFO    ] No existing commands found in stream
[2026-06-27 20:41:37,880.880 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:41:37,883.883 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-27 20:41:42,019.019 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 20:41:42,020.020 INFO    ] Checking for system updates...
[2026-06-27 20:41:42,041.041 INFO    ] 200
[2026-06-27 20:41:42,042.042 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:41:42,073.073 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:41:42,074.074 INFO    ] No update needed
[2026-06-27 20:41:42,075.075 INFO    ] Checking for camera pi updates...
[2026-06-27 20:41:42,096.096 INFO    ] 200
[2026-06-27 20:41:42,098.098 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:41:42,121.121 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:41:42,163.163 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:41:42,164.164 INFO    ] No camera update needed
[2026-06-27 20:41:42,166.166 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:41:42,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:41:42,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:41:42,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:41:44,214.214 INFO    ] ================================================
[2026-06-27 20:41:44,230.230 INFO    ] Launching Daemon at Sat Jun 27 20:41:44 IST 2026
[2026-06-27 20:41:44,241.241 INFO    ] ================================================
[2026-06-27 20:41:44,579.579 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:41:44
[2026-06-27 20:41:44,897.897 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:41:45,041.041 INFO    ] Initializing speech engine...
[2026-06-27 20:41:45,046.046 INFO    ] 2026-06-27 20:41:45
[2026-06-27 20:41:45,251.251 INFO    ] 2026-06-27 20:41:45
[2026-06-27 20:41:45,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:41:45,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:41:45,465.465 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:41:45,608.608 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:41:45,670.670 INFO    ] time= 27/06/2026 20:41:45
[2026-06-27 20:41:45,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:41:45,699.699 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:41:45,766.766 INFO    ] No existing commands found in stream
[2026-06-27 20:41:50,776.776 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:41:50,779.779 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-27 20:41:52,100.100 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:41:52,102.102 INFO    ] Checking for system updates...
[2026-06-27 20:41:52,123.123 INFO    ] 200
[2026-06-27 20:41:52,124.124 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:41:52,155.155 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:41:52,157.157 INFO    ] No update needed
[2026-06-27 20:41:52,158.158 INFO    ] Checking for camera pi updates...
[2026-06-27 20:41:52,178.178 INFO    ] 200
[2026-06-27 20:41:52,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:41:52,203.203 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:41:52,247.247 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:41:52,248.248 INFO    ] No camera update needed
[2026-06-27 20:41:52,250.250 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:41:52,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:41:52,254.254 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:41:52,257.257 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:41:54,297.297 INFO    ] ================================================
[2026-06-27 20:41:54,313.313 INFO    ] Launching Daemon at Sat Jun 27 20:41:54 IST 2026
[2026-06-27 20:41:54,325.325 INFO    ] ================================================
[2026-06-27 20:41:54,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:41:54
[2026-06-27 20:41:54,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:41:55,109.109 INFO    ] Initializing speech engine...
[2026-06-27 20:41:55,113.113 INFO    ] 2026-06-27 20:41:55
[2026-06-27 20:41:55,332.332 INFO    ] 2026-06-27 20:41:55
[2026-06-27 20:41:55,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:41:55,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:41:55,551.551 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:41:55,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:41:55,756.756 INFO    ] time= 27/06/2026 20:41:55
[2026-06-27 20:41:55,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:41:55,786.786 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:41:55,854.854 INFO    ] No existing commands found in stream
[2026-06-27 20:42:00,868.868 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:42:00,871.871 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-27 20:42:04,959.959 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 20:42:04,960.960 INFO    ] Checking for system updates...
[2026-06-27 20:42:04,982.982 INFO    ] 200
[2026-06-27 20:42:04,984.984 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:42:05,014.014 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:42:05,018.018 INFO    ] No update needed
[2026-06-27 20:42:05,019.019 INFO    ] Checking for camera pi updates...
[2026-06-27 20:42:05,039.039 INFO    ] 200
[2026-06-27 20:42:05,040.040 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:42:05,063.063 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:42:05,101.101 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:42:05,102.102 INFO    ] No camera update needed
[2026-06-27 20:42:05,104.104 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:42:05,105.105 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:42:05,108.108 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:42:05,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:42:07,150.150 INFO    ] ================================================
[2026-06-27 20:42:07,173.173 INFO    ] Launching Daemon at Sat Jun 27 20:42:07 IST 2026
[2026-06-27 20:42:07,186.186 INFO    ] ================================================
[2026-06-27 20:42:07,517.517 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:42:07
[2026-06-27 20:42:07,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:42:07,973.973 INFO    ] Initializing speech engine...
[2026-06-27 20:42:07,978.978 INFO    ] 2026-06-27 20:42:07
[2026-06-27 20:42:08,182.182 INFO    ] 2026-06-27 20:42:08
[2026-06-27 20:42:08,210.210 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:42:08,394.394 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:42:08,404.404 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:42:08,553.553 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:42:08,601.601 INFO    ] time= 27/06/2026 20:42:08
[2026-06-27 20:42:08,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:42:08,629.629 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:42:08,694.694 INFO    ] No existing commands found in stream
[2026-06-27 20:42:13,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:42:13,708.708 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-27 20:42:15,957.957 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 20:42:15,959.959 INFO    ] Checking for system updates...
[2026-06-27 20:42:15,979.979 INFO    ] 200
[2026-06-27 20:42:15,981.981 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:42:16,011.011 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:42:16,013.013 INFO    ] No update needed
[2026-06-27 20:42:16,014.014 INFO    ] Checking for camera pi updates...
[2026-06-27 20:42:16,034.034 INFO    ] 200
[2026-06-27 20:42:16,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:42:16,060.060 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:42:16,107.107 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:42:16,108.108 INFO    ] No camera update needed
[2026-06-27 20:42:16,109.109 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:42:16,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:42:16,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:42:16,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:42:18,156.156 INFO    ] ================================================
[2026-06-27 20:42:18,171.171 INFO    ] Launching Daemon at Sat Jun 27 20:42:18 IST 2026
[2026-06-27 20:42:18,183.183 INFO    ] ================================================
[2026-06-27 20:42:18,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:42:18
[2026-06-27 20:42:18,845.845 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:42:18,984.984 INFO    ] Initializing speech engine...
[2026-06-27 20:42:18,998.998 INFO    ] 2026-06-27 20:42:18
[2026-06-27 20:42:19,213.213 INFO    ] 2026-06-27 20:42:19
[2026-06-27 20:42:19,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:42:19,368.368 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:42:19,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:42:19,565.565 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:42:19,621.621 INFO    ] time= 27/06/2026 20:42:19
[2026-06-27 20:42:19,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:42:19,672.672 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:42:19,740.740 INFO    ] No existing commands found in stream
[2026-06-27 20:42:24,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:42:24,753.753 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-27 20:42:26,468.468 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 20:42:26,469.469 INFO    ] Checking for system updates...
[2026-06-27 20:42:26,491.491 INFO    ] 200
[2026-06-27 20:42:26,492.492 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:42:26,525.525 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:42:26,527.527 INFO    ] No update needed
[2026-06-27 20:42:26,528.528 INFO    ] Checking for camera pi updates...
[2026-06-27 20:42:26,549.549 INFO    ] 200
[2026-06-27 20:42:26,550.550 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:42:26,573.573 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:42:26,631.631 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:42:26,633.633 INFO    ] No camera update needed
[2026-06-27 20:42:26,634.634 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:42:26,636.636 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:42:26,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:42:26,641.641 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:42:28,681.681 INFO    ] ================================================
[2026-06-27 20:42:28,697.697 INFO    ] Launching Daemon at Sat Jun 27 20:42:28 IST 2026
[2026-06-27 20:42:28,708.708 INFO    ] ================================================
[2026-06-27 20:42:29,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:42:29
[2026-06-27 20:42:29,400.400 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:42:29,554.554 INFO    ] Initializing speech engine...
[2026-06-27 20:42:29,560.560 INFO    ] 2026-06-27 20:42:29
[2026-06-27 20:42:29,771.771 INFO    ] 2026-06-27 20:42:29
[2026-06-27 20:42:29,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:42:29,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:42:29,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:42:30,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:42:30,202.202 INFO    ] time= 27/06/2026 20:42:30
[2026-06-27 20:42:30,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:42:30,230.230 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:42:30,299.299 INFO    ] No existing commands found in stream
[2026-06-27 20:42:35,314.314 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:42:35,318.318 INFO    ] Waiting 0.76 seconds before fallback handling...
[2026-06-27 20:42:36,430.430 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 20:42:36,432.432 INFO    ] Checking for system updates...
[2026-06-27 20:42:36,454.454 INFO    ] 200
[2026-06-27 20:42:36,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:42:36,490.490 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:42:36,491.491 INFO    ] No update needed
[2026-06-27 20:42:36,493.493 INFO    ] Checking for camera pi updates...
[2026-06-27 20:42:36,516.516 INFO    ] 200
[2026-06-27 20:42:36,518.518 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:42:36,546.546 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:42:36,575.575 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:42:36,576.576 INFO    ] No camera update needed
[2026-06-27 20:42:36,577.577 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:42:36,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:42:36,582.582 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:42:36,585.585 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:42:38,626.626 INFO    ] ================================================
[2026-06-27 20:42:38,642.642 INFO    ] Launching Daemon at Sat Jun 27 20:42:38 IST 2026
[2026-06-27 20:42:38,652.652 INFO    ] ================================================
[2026-06-27 20:42:38,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:42:38
[2026-06-27 20:42:39,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:42:39,483.483 INFO    ] Initializing speech engine...
[2026-06-27 20:42:39,488.488 INFO    ] 2026-06-27 20:42:39
[2026-06-27 20:42:39,697.697 INFO    ] 2026-06-27 20:42:39
[2026-06-27 20:42:39,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:42:39,913.913 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:42:39,925.925 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:42:40,067.067 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:42:40,122.122 INFO    ] time= 27/06/2026 20:42:40
[2026-06-27 20:42:40,144.144 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:42:40,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:42:40,217.217 INFO    ] No existing commands found in stream
[2026-06-27 20:42:45,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:42:45,229.229 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-27 20:42:47,810.810 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 20:42:47,811.811 INFO    ] Checking for system updates...
[2026-06-27 20:42:47,832.832 INFO    ] 200
[2026-06-27 20:42:47,835.835 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:42:47,865.865 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:42:47,866.866 INFO    ] No update needed
[2026-06-27 20:42:47,868.868 INFO    ] Checking for camera pi updates...
[2026-06-27 20:42:47,888.888 INFO    ] 200
[2026-06-27 20:42:47,890.890 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:42:47,916.916 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:42:47,971.971 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:42:47,973.973 INFO    ] No camera update needed
[2026-06-27 20:42:47,976.976 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:42:47,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:42:47,985.985 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:42:47,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:42:50,034.034 INFO    ] ================================================
[2026-06-27 20:42:50,051.051 INFO    ] Launching Daemon at Sat Jun 27 20:42:50 IST 2026
[2026-06-27 20:42:50,064.064 INFO    ] ================================================
[2026-06-27 20:42:50,452.452 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:42:50
[2026-06-27 20:42:50,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:42:50,941.941 INFO    ] Initializing speech engine...
[2026-06-27 20:42:50,945.945 INFO    ] 2026-06-27 20:42:50
[2026-06-27 20:42:51,151.151 INFO    ] 2026-06-27 20:42:51
[2026-06-27 20:42:51,180.180 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:42:51,456.456 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:42:51,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:42:51,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:42:51,661.661 INFO    ] time= 27/06/2026 20:42:51
[2026-06-27 20:42:51,686.686 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:42:51,693.693 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:42:51,808.808 INFO    ] No existing commands found in stream
[2026-06-27 20:42:56,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:42:56,822.822 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-27 20:43:00,280.280 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:43:00,282.282 INFO    ] Checking for system updates...
[2026-06-27 20:43:00,305.305 INFO    ] 200
[2026-06-27 20:43:00,307.307 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:43:00,340.340 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:43:00,341.341 INFO    ] No update needed
[2026-06-27 20:43:00,343.343 INFO    ] Checking for camera pi updates...
[2026-06-27 20:43:00,364.364 INFO    ] 200
[2026-06-27 20:43:00,365.365 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:43:00,392.392 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:43:00,437.437 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:43:00,438.438 INFO    ] No camera update needed
[2026-06-27 20:43:00,440.440 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:43:00,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:43:00,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:43:00,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:43:02,483.483 INFO    ] ================================================
[2026-06-27 20:43:02,494.494 INFO    ] Launching Daemon at Sat Jun 27 20:43:02 IST 2026
[2026-06-27 20:43:02,501.501 INFO    ] ================================================
[2026-06-27 20:43:02,878.878 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:43:02
[2026-06-27 20:43:03,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:43:03,379.379 INFO    ] Initializing speech engine...
[2026-06-27 20:43:03,385.385 INFO    ] 2026-06-27 20:43:03
[2026-06-27 20:43:03,595.595 INFO    ] 2026-06-27 20:43:03
[2026-06-27 20:43:03,624.624 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:43:03,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:43:03,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:43:03,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:43:04,020.020 INFO    ] time= 27/06/2026 20:43:03
[2026-06-27 20:43:04,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:43:04,050.050 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:43:04,118.118 INFO    ] No existing commands found in stream
[2026-06-27 20:43:09,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:43:09,157.157 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-27 20:43:12,145.145 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 20:43:12,147.147 INFO    ] Checking for system updates...
[2026-06-27 20:43:12,169.169 INFO    ] 200
[2026-06-27 20:43:12,170.170 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:43:12,204.204 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:43:12,206.206 INFO    ] No update needed
[2026-06-27 20:43:12,207.207 INFO    ] Checking for camera pi updates...
[2026-06-27 20:43:12,228.228 INFO    ] 200
[2026-06-27 20:43:12,229.229 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:43:12,253.253 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:43:12,296.296 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:43:12,297.297 INFO    ] No camera update needed
[2026-06-27 20:43:12,298.298 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:43:12,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:43:12,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:43:12,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:43:14,346.346 INFO    ] ================================================
[2026-06-27 20:43:14,361.361 INFO    ] Launching Daemon at Sat Jun 27 20:43:14 IST 2026
[2026-06-27 20:43:14,373.373 INFO    ] ================================================
[2026-06-27 20:43:14,751.751 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:43:14
[2026-06-27 20:43:15,091.091 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:43:15,245.245 INFO    ] Initializing speech engine...
[2026-06-27 20:43:15,250.250 INFO    ] 2026-06-27 20:43:15
[2026-06-27 20:43:15,458.458 INFO    ] 2026-06-27 20:43:15
[2026-06-27 20:43:15,487.487 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:43:15,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:43:15,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:43:15,892.892 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:43:15,899.899 INFO    ] time= 27/06/2026 20:43:15
[2026-06-27 20:43:15,904.904 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:43:15,906.906 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:43:15,972.972 INFO    ] No existing commands found in stream
[2026-06-27 20:43:20,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:43:20,990.990 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-27 20:43:22,920.920 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:43:22,921.921 INFO    ] Checking for system updates...
[2026-06-27 20:43:22,945.945 INFO    ] 200
[2026-06-27 20:43:22,946.946 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:43:22,980.980 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:43:22,981.981 INFO    ] No update needed
[2026-06-27 20:43:22,983.983 INFO    ] Checking for camera pi updates...
[2026-06-27 20:43:23,005.005 INFO    ] 200
[2026-06-27 20:43:23,007.007 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:43:23,031.031 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:43:23,075.075 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:43:23,076.076 INFO    ] No camera update needed
[2026-06-27 20:43:23,078.078 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:43:23,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:43:23,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:43:23,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:43:25,126.126 INFO    ] ================================================
[2026-06-27 20:43:25,142.142 INFO    ] Launching Daemon at Sat Jun 27 20:43:25 IST 2026
[2026-06-27 20:43:25,153.153 INFO    ] ================================================
[2026-06-27 20:43:25,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:43:25
[2026-06-27 20:43:25,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:43:26,062.062 INFO    ] Initializing speech engine...
[2026-06-27 20:43:26,067.067 INFO    ] 2026-06-27 20:43:26
[2026-06-27 20:43:26,277.277 INFO    ] 2026-06-27 20:43:26
[2026-06-27 20:43:26,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:43:26,490.490 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:43:26,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:43:26,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:43:26,697.697 INFO    ] time= 27/06/2026 20:43:26
[2026-06-27 20:43:26,721.721 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:43:26,726.726 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:43:26,792.792 INFO    ] No existing commands found in stream
[2026-06-27 20:43:31,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:43:31,807.807 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-27 20:43:33,164.164 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 20:43:33,165.165 INFO    ] Checking for system updates...
[2026-06-27 20:43:33,188.188 INFO    ] 200
[2026-06-27 20:43:33,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:43:33,220.220 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:43:33,221.221 INFO    ] No update needed
[2026-06-27 20:43:33,222.222 INFO    ] Checking for camera pi updates...
[2026-06-27 20:43:33,243.243 INFO    ] 200
[2026-06-27 20:43:33,245.245 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:43:33,270.270 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:43:33,299.299 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:43:33,301.301 INFO    ] No camera update needed
[2026-06-27 20:43:33,302.302 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:43:33,303.303 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:43:33,306.306 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:43:33,309.309 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:43:35,349.349 INFO    ] ================================================
[2026-06-27 20:43:35,364.364 INFO    ] Launching Daemon at Sat Jun 27 20:43:35 IST 2026
[2026-06-27 20:43:35,375.375 INFO    ] ================================================
[2026-06-27 20:43:35,774.774 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:43:35
[2026-06-27 20:43:36,087.087 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:43:36,224.224 INFO    ] Initializing speech engine...
[2026-06-27 20:43:36,234.234 INFO    ] 2026-06-27 20:43:36
[2026-06-27 20:43:36,436.436 INFO    ] 2026-06-27 20:43:36
[2026-06-27 20:43:36,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:43:36,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:43:36,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:43:36,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:43:36,846.846 INFO    ] time= 27/06/2026 20:43:36
[2026-06-27 20:43:36,878.878 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:43:36,883.883 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:43:36,948.948 INFO    ] No existing commands found in stream
[2026-06-27 20:43:41,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:43:41,962.962 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-27 20:43:43,496.496 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 20:43:43,498.498 INFO    ] Checking for system updates...
[2026-06-27 20:43:43,518.518 INFO    ] 200
[2026-06-27 20:43:43,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:43:43,550.550 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:43:43,551.551 INFO    ] No update needed
[2026-06-27 20:43:43,553.553 INFO    ] Checking for camera pi updates...
[2026-06-27 20:43:43,572.572 INFO    ] 200
[2026-06-27 20:43:43,573.573 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:43:43,600.600 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:43:43,654.654 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:43:43,655.655 INFO    ] No camera update needed
[2026-06-27 20:43:43,657.657 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:43:43,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:43:43,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:43:43,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:43:45,704.704 INFO    ] ================================================
[2026-06-27 20:43:45,719.719 INFO    ] Launching Daemon at Sat Jun 27 20:43:45 IST 2026
[2026-06-27 20:43:45,729.729 INFO    ] ================================================
[2026-06-27 20:43:46,098.098 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:43:46
[2026-06-27 20:43:46,411.411 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:43:46,549.549 INFO    ] Initializing speech engine...
[2026-06-27 20:43:46,558.558 INFO    ] 2026-06-27 20:43:46
[2026-06-27 20:43:46,764.764 INFO    ] 2026-06-27 20:43:46
[2026-06-27 20:43:46,794.794 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:43:46,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:43:46,991.991 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:43:47,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:43:47,192.192 INFO    ] time= 27/06/2026 20:43:47
[2026-06-27 20:43:47,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:43:47,221.221 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:43:47,288.288 INFO    ] No existing commands found in stream
[2026-06-27 20:43:52,313.313 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:43:52,316.316 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-27 20:43:54,793.793 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 20:43:54,795.795 INFO    ] Checking for system updates...
[2026-06-27 20:43:54,817.817 INFO    ] 200
[2026-06-27 20:43:54,819.819 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:43:54,855.855 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:43:54,856.856 INFO    ] No update needed
[2026-06-27 20:43:54,858.858 INFO    ] Checking for camera pi updates...
[2026-06-27 20:43:54,879.879 INFO    ] 200
[2026-06-27 20:43:54,880.880 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:43:54,907.907 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:43:54,935.935 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:43:54,937.937 INFO    ] No camera update needed
[2026-06-27 20:43:54,938.938 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:43:54,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:43:54,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:43:54,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:43:56,984.984 INFO    ] ================================================
[2026-06-27 20:43:57,999.999 INFO    ] Launching Daemon at Sat Jun 27 20:43:56 IST 2026
[2026-06-27 20:43:57,010.010 INFO    ] ================================================
[2026-06-27 20:43:57,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:43:57
[2026-06-27 20:43:57,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:43:57,875.875 INFO    ] Initializing speech engine...
[2026-06-27 20:43:57,887.887 INFO    ] 2026-06-27 20:43:57
[2026-06-27 20:43:58,099.099 INFO    ] 2026-06-27 20:43:58
[2026-06-27 20:43:58,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:43:58,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:43:58,324.324 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:43:58,473.473 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:43:58,522.522 INFO    ] time= 27/06/2026 20:43:58
[2026-06-27 20:43:58,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:43:58,551.551 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:43:58,621.621 INFO    ] No existing commands found in stream
[2026-06-27 20:44:03,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:44:03,634.634 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-27 20:44:07,957.957 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 20:44:07,958.958 INFO    ] Checking for system updates...
[2026-06-27 20:44:07,981.981 INFO    ] 200
[2026-06-27 20:44:07,983.983 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:44:08,015.015 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:44:08,016.016 INFO    ] No update needed
[2026-06-27 20:44:08,018.018 INFO    ] Checking for camera pi updates...
[2026-06-27 20:44:08,039.039 INFO    ] 200
[2026-06-27 20:44:08,040.040 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:44:08,067.067 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:44:08,120.120 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:44:08,122.122 INFO    ] No camera update needed
[2026-06-27 20:44:08,123.123 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:44:08,125.125 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:44:08,128.128 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:44:08,131.131 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:44:10,170.170 INFO    ] ================================================
[2026-06-27 20:44:10,185.185 INFO    ] Launching Daemon at Sat Jun 27 20:44:10 IST 2026
[2026-06-27 20:44:10,196.196 INFO    ] ================================================
[2026-06-27 20:44:10,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:44:10
[2026-06-27 20:44:10,901.901 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:44:11,037.037 INFO    ] Initializing speech engine...
[2026-06-27 20:44:11,045.045 INFO    ] 2026-06-27 20:44:11
[2026-06-27 20:44:11,251.251 INFO    ] 2026-06-27 20:44:11
[2026-06-27 20:44:11,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:44:11,463.463 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:44:11,472.472 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:44:11,611.611 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:44:11,667.667 INFO    ] time= 27/06/2026 20:44:11
[2026-06-27 20:44:11,692.692 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:44:11,697.697 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:44:11,764.764 INFO    ] No existing commands found in stream
[2026-06-27 20:44:16,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:44:16,781.781 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-27 20:44:21,045.045 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 20:44:21,046.046 INFO    ] Checking for system updates...
[2026-06-27 20:44:21,068.068 INFO    ] 200
[2026-06-27 20:44:21,070.070 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:44:21,100.100 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:44:21,101.101 INFO    ] No update needed
[2026-06-27 20:44:21,102.102 INFO    ] Checking for camera pi updates...
[2026-06-27 20:44:21,124.124 INFO    ] 200
[2026-06-27 20:44:21,125.125 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:44:21,150.150 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:44:21,195.195 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:44:21,196.196 INFO    ] No camera update needed
[2026-06-27 20:44:21,198.198 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:44:21,199.199 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:44:21,202.202 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:44:21,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:44:23,243.243 INFO    ] ================================================
[2026-06-27 20:44:23,258.258 INFO    ] Launching Daemon at Sat Jun 27 20:44:23 IST 2026
[2026-06-27 20:44:23,269.269 INFO    ] ================================================
[2026-06-27 20:44:23,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:44:23
[2026-06-27 20:44:23,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:44:24,067.067 INFO    ] Initializing speech engine...
[2026-06-27 20:44:24,075.075 INFO    ] 2026-06-27 20:44:24
[2026-06-27 20:44:24,290.290 INFO    ] 2026-06-27 20:44:24
[2026-06-27 20:44:24,319.319 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:44:24,443.443 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:44:24,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:44:24,646.646 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:44:24,712.712 INFO    ] time= 27/06/2026 20:44:24
[2026-06-27 20:44:24,740.740 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:44:24,746.746 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:44:24,813.813 INFO    ] No existing commands found in stream
[2026-06-27 20:44:29,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:44:29,827.827 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-27 20:44:31,121.121 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 20:44:31,122.122 INFO    ] Checking for system updates...
[2026-06-27 20:44:31,143.143 INFO    ] 200
[2026-06-27 20:44:31,145.145 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:44:31,178.178 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:44:31,179.179 INFO    ] No update needed
[2026-06-27 20:44:31,180.180 INFO    ] Checking for camera pi updates...
[2026-06-27 20:44:31,200.200 INFO    ] 200
[2026-06-27 20:44:31,201.201 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:44:31,233.233 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:44:31,282.282 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:44:31,284.284 INFO    ] No camera update needed
[2026-06-27 20:44:31,285.285 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:44:31,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:44:31,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:44:31,294.294 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:44:33,326.326 INFO    ] ================================================
[2026-06-27 20:44:33,342.342 INFO    ] Launching Daemon at Sat Jun 27 20:44:33 IST 2026
[2026-06-27 20:44:33,352.352 INFO    ] ================================================
[2026-06-27 20:44:33,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:44:33
[2026-06-27 20:44:34,019.019 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:44:34,164.164 INFO    ] Initializing speech engine...
[2026-06-27 20:44:34,169.169 INFO    ] 2026-06-27 20:44:34
[2026-06-27 20:44:34,375.375 INFO    ] 2026-06-27 20:44:34
[2026-06-27 20:44:34,403.403 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:44:34,603.603 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:44:34,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:44:34,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:44:34,790.790 INFO    ] time= 27/06/2026 20:44:34
[2026-06-27 20:44:34,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:44:34,857.857 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:44:34,929.929 INFO    ] No existing commands found in stream
[2026-06-27 20:44:39,938.938 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:44:39,941.941 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-27 20:44:41,294.294 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:44:41,295.295 INFO    ] Checking for system updates...
[2026-06-27 20:44:41,316.316 INFO    ] 200
[2026-06-27 20:44:41,317.317 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:44:41,350.350 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:44:41,351.351 INFO    ] No update needed
[2026-06-27 20:44:41,352.352 INFO    ] Checking for camera pi updates...
[2026-06-27 20:44:41,373.373 INFO    ] 200
[2026-06-27 20:44:41,375.375 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:44:41,398.398 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:44:41,444.444 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:44:41,446.446 INFO    ] No camera update needed
[2026-06-27 20:44:41,447.447 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:44:41,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:44:41,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:44:41,454.454 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:44:43,493.493 INFO    ] ================================================
[2026-06-27 20:44:43,508.508 INFO    ] Launching Daemon at Sat Jun 27 20:44:43 IST 2026
[2026-06-27 20:44:43,520.520 INFO    ] ================================================
[2026-06-27 20:44:43,861.861 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:44:43
[2026-06-27 20:44:44,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:44:44,322.322 INFO    ] Initializing speech engine...
[2026-06-27 20:44:44,327.327 INFO    ] 2026-06-27 20:44:44
[2026-06-27 20:44:44,536.536 INFO    ] 2026-06-27 20:44:44
[2026-06-27 20:44:44,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:44:44,770.770 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:44:44,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:44:44,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:44:44,973.973 INFO    ] time= 27/06/2026 20:44:44
[2026-06-27 20:44:45,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:44:45,026.026 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:44:45,102.102 INFO    ] No existing commands found in stream
[2026-06-27 20:44:50,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:44:50,116.116 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-27 20:44:54,008.008 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 20:44:54,010.010 INFO    ] Checking for system updates...
[2026-06-27 20:44:54,031.031 INFO    ] 200
[2026-06-27 20:44:54,032.032 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:44:54,066.066 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:44:54,067.067 INFO    ] No update needed
[2026-06-27 20:44:54,068.068 INFO    ] Checking for camera pi updates...
[2026-06-27 20:44:54,089.089 INFO    ] 200
[2026-06-27 20:44:54,091.091 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:44:54,116.116 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:44:54,159.159 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:44:54,160.160 INFO    ] No camera update needed
[2026-06-27 20:44:54,162.162 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:44:54,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:44:54,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:44:54,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:44:56,210.210 INFO    ] ================================================
[2026-06-27 20:44:56,225.225 INFO    ] Launching Daemon at Sat Jun 27 20:44:56 IST 2026
[2026-06-27 20:44:56,236.236 INFO    ] ================================================
[2026-06-27 20:44:56,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:44:56
[2026-06-27 20:44:56,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:44:57,028.028 INFO    ] Initializing speech engine...
[2026-06-27 20:44:57,040.040 INFO    ] 2026-06-27 20:44:57
[2026-06-27 20:44:57,249.249 INFO    ] 2026-06-27 20:44:57
[2026-06-27 20:44:57,279.279 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:44:57,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:44:57,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:44:57,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:44:57,657.657 INFO    ] time= 27/06/2026 20:44:57
[2026-06-27 20:44:57,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:44:57,703.703 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:44:57,776.776 INFO    ] No existing commands found in stream
[2026-06-27 20:45:02,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:45:02,786.786 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-27 20:45:05,861.861 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 20:45:05,862.862 INFO    ] Checking for system updates...
[2026-06-27 20:45:05,883.883 INFO    ] 200
[2026-06-27 20:45:05,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:45:05,918.918 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:45:05,920.920 INFO    ] No update needed
[2026-06-27 20:45:05,921.921 INFO    ] Checking for camera pi updates...
[2026-06-27 20:45:05,941.941 INFO    ] 200
[2026-06-27 20:45:05,942.942 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:45:05,965.965 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:45:06,086.086 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:45:06,087.087 INFO    ] No camera update needed
[2026-06-27 20:45:06,088.088 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:45:06,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:45:06,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:45:06,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:45:08,136.136 INFO    ] ================================================
[2026-06-27 20:45:08,151.151 INFO    ] Launching Daemon at Sat Jun 27 20:45:08 IST 2026
[2026-06-27 20:45:08,162.162 INFO    ] ================================================
[2026-06-27 20:45:08,541.541 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:45:08
[2026-06-27 20:45:08,854.854 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:45:08,985.985 INFO    ] Initializing speech engine...
[2026-06-27 20:45:08,994.994 INFO    ] 2026-06-27 20:45:08
[2026-06-27 20:45:09,208.208 INFO    ] 2026-06-27 20:45:09
[2026-06-27 20:45:09,238.238 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:45:09,423.423 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:45:09,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:45:09,563.563 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:45:09,629.629 INFO    ] time= 27/06/2026 20:45:09
[2026-06-27 20:45:09,651.651 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:45:09,661.661 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:45:09,732.732 INFO    ] No existing commands found in stream
[2026-06-27 20:45:14,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:45:14,745.745 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-27 20:45:15,866.866 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 20:45:15,867.867 INFO    ] Checking for system updates...
[2026-06-27 20:45:15,888.888 INFO    ] 200
[2026-06-27 20:45:15,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:45:15,924.924 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:45:15,926.926 INFO    ] No update needed
[2026-06-27 20:45:15,927.927 INFO    ] Checking for camera pi updates...
[2026-06-27 20:45:15,947.947 INFO    ] 200
[2026-06-27 20:45:15,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:45:15,974.974 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:45:16,023.023 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:45:16,024.024 INFO    ] No camera update needed
[2026-06-27 20:45:16,026.026 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:45:16,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:45:16,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:45:16,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:45:18,073.073 INFO    ] ================================================
[2026-06-27 20:45:18,089.089 INFO    ] Launching Daemon at Sat Jun 27 20:45:18 IST 2026
[2026-06-27 20:45:18,099.099 INFO    ] ================================================
[2026-06-27 20:45:18,447.447 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:45:18
[2026-06-27 20:45:18,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:45:18,903.903 INFO    ] Initializing speech engine...
[2026-06-27 20:45:18,908.908 INFO    ] 2026-06-27 20:45:18
[2026-06-27 20:45:19,113.113 INFO    ] 2026-06-27 20:45:19
[2026-06-27 20:45:19,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:45:19,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:45:19,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:45:19,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:45:19,529.529 INFO    ] time= 27/06/2026 20:45:19
[2026-06-27 20:45:19,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:45:19,563.563 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:45:19,631.631 INFO    ] No existing commands found in stream
[2026-06-27 20:45:24,639.639 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:45:24,642.642 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-27 20:45:25,949.949 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 20:45:25,951.951 INFO    ] Checking for system updates...
[2026-06-27 20:45:25,972.972 INFO    ] 200
[2026-06-27 20:45:25,973.973 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:45:26,006.006 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:45:26,008.008 INFO    ] No update needed
[2026-06-27 20:45:26,009.009 INFO    ] Checking for camera pi updates...
[2026-06-27 20:45:26,032.032 INFO    ] 200
[2026-06-27 20:45:26,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:45:26,059.059 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:45:26,108.108 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:45:26,109.109 INFO    ] No camera update needed
[2026-06-27 20:45:26,110.110 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:45:26,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:45:26,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:45:26,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:45:28,151.151 INFO    ] ================================================
[2026-06-27 20:45:28,166.166 INFO    ] Launching Daemon at Sat Jun 27 20:45:28 IST 2026
[2026-06-27 20:45:28,177.177 INFO    ] ================================================
[2026-06-27 20:45:28,529.529 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:45:28
[2026-06-27 20:45:28,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:45:28,973.973 INFO    ] Initializing speech engine...
[2026-06-27 20:45:28,981.981 INFO    ] 2026-06-27 20:45:28
[2026-06-27 20:45:29,194.194 INFO    ] 2026-06-27 20:45:29
[2026-06-27 20:45:29,223.223 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:45:29,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:45:29,418.418 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:45:29,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:45:29,621.621 INFO    ] time= 27/06/2026 20:45:29
[2026-06-27 20:45:29,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:45:29,650.650 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:45:29,717.717 INFO    ] No existing commands found in stream
[2026-06-27 20:45:34,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:45:34,731.731 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-27 20:45:38,109.109 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 20:45:38,110.110 INFO    ] Checking for system updates...
[2026-06-27 20:45:38,136.136 INFO    ] 200
[2026-06-27 20:45:38,138.138 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:45:38,170.170 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:45:38,172.172 INFO    ] No update needed
[2026-06-27 20:45:38,173.173 INFO    ] Checking for camera pi updates...
[2026-06-27 20:45:38,194.194 INFO    ] 200
[2026-06-27 20:45:38,195.195 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:45:38,220.220 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:45:38,368.368 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:45:38,369.369 INFO    ] No camera update needed
[2026-06-27 20:45:38,370.370 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:45:38,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:45:38,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:45:38,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:45:40,416.416 INFO    ] ================================================
[2026-06-27 20:45:40,432.432 INFO    ] Launching Daemon at Sat Jun 27 20:45:40 IST 2026
[2026-06-27 20:45:40,443.443 INFO    ] ================================================
[2026-06-27 20:45:40,807.807 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:45:40
[2026-06-27 20:45:41,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:45:41,251.251 INFO    ] Initializing speech engine...
[2026-06-27 20:45:41,264.264 INFO    ] 2026-06-27 20:45:41
[2026-06-27 20:45:41,471.471 INFO    ] 2026-06-27 20:45:41
[2026-06-27 20:45:41,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:45:41,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:45:41,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:45:41,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:45:41,889.889 INFO    ] time= 27/06/2026 20:45:41
[2026-06-27 20:45:41,914.914 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:45:41,919.919 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:45:41,986.986 INFO    ] No existing commands found in stream
[2026-06-27 20:45:47,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:45:47,003.003 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-27 20:45:48,904.904 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 20:45:48,906.906 INFO    ] Checking for system updates...
[2026-06-27 20:45:48,927.927 INFO    ] 200
[2026-06-27 20:45:48,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:45:48,962.962 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:45:48,963.963 INFO    ] No update needed
[2026-06-27 20:45:48,965.965 INFO    ] Checking for camera pi updates...
[2026-06-27 20:45:48,987.987 INFO    ] 200
[2026-06-27 20:45:48,988.988 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:45:49,014.014 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:45:49,056.056 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:45:49,058.058 INFO    ] No camera update needed
[2026-06-27 20:45:49,059.059 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:45:49,060.060 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:45:49,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:45:49,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:45:51,109.109 INFO    ] ================================================
[2026-06-27 20:45:51,126.126 INFO    ] Launching Daemon at Sat Jun 27 20:45:51 IST 2026
[2026-06-27 20:45:51,138.138 INFO    ] ================================================
[2026-06-27 20:45:51,484.484 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:45:51
[2026-06-27 20:45:51,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:45:51,945.945 INFO    ] Initializing speech engine...
[2026-06-27 20:45:51,950.950 INFO    ] 2026-06-27 20:45:51
[2026-06-27 20:45:52,156.156 INFO    ] 2026-06-27 20:45:52
[2026-06-27 20:45:52,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:45:52,372.372 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:45:52,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:45:52,528.528 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:45:52,583.583 INFO    ] time= 27/06/2026 20:45:52
[2026-06-27 20:45:52,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:45:52,611.611 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:45:52,703.703 INFO    ] No existing commands found in stream
[2026-06-27 20:45:57,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:45:57,720.720 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-27 20:46:00,651.651 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 20:46:00,653.653 INFO    ] Checking for system updates...
[2026-06-27 20:46:00,674.674 INFO    ] 200
[2026-06-27 20:46:00,675.675 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:46:00,708.708 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:46:00,709.709 INFO    ] No update needed
[2026-06-27 20:46:00,711.711 INFO    ] Checking for camera pi updates...
[2026-06-27 20:46:00,732.732 INFO    ] 200
[2026-06-27 20:46:00,733.733 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:46:00,758.758 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:46:00,810.810 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:46:00,811.811 INFO    ] No camera update needed
[2026-06-27 20:46:00,812.812 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:46:00,814.814 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:46:00,817.817 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:46:00,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:46:02,859.859 INFO    ] ================================================
[2026-06-27 20:46:02,868.868 INFO    ] Launching Daemon at Sat Jun 27 20:46:02 IST 2026
[2026-06-27 20:46:02,875.875 INFO    ] ================================================
[2026-06-27 20:46:03,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:46:03
[2026-06-27 20:46:03,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:46:03,639.639 INFO    ] Initializing speech engine...
[2026-06-27 20:46:03,644.644 INFO    ] 2026-06-27 20:46:03
[2026-06-27 20:46:03,847.847 INFO    ] 2026-06-27 20:46:03
[2026-06-27 20:46:03,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:46:03,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:46:04,061.061 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:46:04,193.193 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:46:04,259.259 INFO    ] time= 27/06/2026 20:46:04
[2026-06-27 20:46:04,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:46:04,292.292 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:46:04,364.364 INFO    ] No existing commands found in stream
[2026-06-27 20:46:09,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:46:09,375.375 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-27 20:46:11,752.752 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 20:46:11,754.754 INFO    ] Checking for system updates...
[2026-06-27 20:46:11,783.783 INFO    ] 200
[2026-06-27 20:46:11,785.785 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:46:11,818.818 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:46:11,819.819 INFO    ] No update needed
[2026-06-27 20:46:11,820.820 INFO    ] Checking for camera pi updates...
[2026-06-27 20:46:11,843.843 INFO    ] 200
[2026-06-27 20:46:11,844.844 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:46:11,869.869 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:46:11,909.909 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:46:11,910.910 INFO    ] No camera update needed
[2026-06-27 20:46:11,912.912 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:46:11,913.913 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:46:11,916.916 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:46:11,919.919 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:46:13,960.960 INFO    ] ================================================
[2026-06-27 20:46:13,976.976 INFO    ] Launching Daemon at Sat Jun 27 20:46:13 IST 2026
[2026-06-27 20:46:13,987.987 INFO    ] ================================================
[2026-06-27 20:46:14,326.326 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:46:14
[2026-06-27 20:46:14,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:46:14,775.775 INFO    ] Initializing speech engine...
[2026-06-27 20:46:14,783.783 INFO    ] 2026-06-27 20:46:14
[2026-06-27 20:46:14,999.999 INFO    ] 2026-06-27 20:46:14
[2026-06-27 20:46:15,029.029 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:46:15,216.216 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:46:15,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:46:15,359.359 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:46:15,428.428 INFO    ] time= 27/06/2026 20:46:15
[2026-06-27 20:46:15,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:46:15,455.455 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:46:15,527.527 INFO    ] No existing commands found in stream
[2026-06-27 20:46:20,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:46:20,544.544 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-27 20:46:21,050.050 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 20:46:21,052.052 INFO    ] Checking for system updates...
[2026-06-27 20:46:21,073.073 INFO    ] 200
[2026-06-27 20:46:21,075.075 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:46:21,108.108 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:46:21,109.109 INFO    ] No update needed
[2026-06-27 20:46:21,111.111 INFO    ] Checking for camera pi updates...
[2026-06-27 20:46:21,130.130 INFO    ] 200
[2026-06-27 20:46:21,131.131 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:46:21,154.154 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:46:21,196.196 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:46:21,197.197 INFO    ] No camera update needed
[2026-06-27 20:46:21,199.199 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:46:21,200.200 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:46:21,203.203 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:46:21,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:46:23,245.245 INFO    ] ================================================
[2026-06-27 20:46:23,261.261 INFO    ] Launching Daemon at Sat Jun 27 20:46:23 IST 2026
[2026-06-27 20:46:23,272.272 INFO    ] ================================================
[2026-06-27 20:46:23,606.606 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:46:23
[2026-06-27 20:46:23,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:46:24,047.047 INFO    ] Initializing speech engine...
[2026-06-27 20:46:24,052.052 INFO    ] 2026-06-27 20:46:24
[2026-06-27 20:46:24,268.268 INFO    ] 2026-06-27 20:46:24
[2026-06-27 20:46:24,296.296 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:46:24,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:46:24,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:46:24,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:46:24,775.775 INFO    ] time= 27/06/2026 20:46:24
[2026-06-27 20:46:24,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:46:24,802.802 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:46:24,935.935 INFO    ] No existing commands found in stream
[2026-06-27 20:46:29,943.943 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:46:29,945.945 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-27 20:46:31,805.805 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 20:46:31,807.807 INFO    ] Checking for system updates...
[2026-06-27 20:46:31,829.829 INFO    ] 200
[2026-06-27 20:46:31,830.830 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:46:31,860.860 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:46:31,862.862 INFO    ] No update needed
[2026-06-27 20:46:31,863.863 INFO    ] Checking for camera pi updates...
[2026-06-27 20:46:31,882.882 INFO    ] 200
[2026-06-27 20:46:31,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:46:31,916.916 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:46:31,948.948 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:46:31,949.949 INFO    ] No camera update needed
[2026-06-27 20:46:31,951.951 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:46:31,953.953 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:46:31,957.957 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:46:31,960.960 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:46:33,992.992 INFO    ] ================================================
[2026-06-27 20:46:34,008.008 INFO    ] Launching Daemon at Sat Jun 27 20:46:34 IST 2026
[2026-06-27 20:46:34,020.020 INFO    ] ================================================
[2026-06-27 20:46:34,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:46:34
[2026-06-27 20:46:34,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:46:34,866.866 INFO    ] Initializing speech engine...
[2026-06-27 20:46:34,878.878 INFO    ] 2026-06-27 20:46:34
[2026-06-27 20:46:35,093.093 INFO    ] 2026-06-27 20:46:35
[2026-06-27 20:46:35,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:46:35,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:46:35,318.318 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:46:35,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:46:35,502.502 INFO    ] time= 27/06/2026 20:46:35
[2026-06-27 20:46:35,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:46:35,546.546 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:46:35,613.613 INFO    ] No existing commands found in stream
[2026-06-27 20:46:40,623.623 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:46:40,626.626 INFO    ] Waiting 1.62 seconds before fallback handling...
[2026-06-27 20:46:42,623.623 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 20:46:42,624.624 INFO    ] Checking for system updates...
[2026-06-27 20:46:42,645.645 INFO    ] 200
[2026-06-27 20:46:42,647.647 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:46:42,677.677 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:46:42,678.678 INFO    ] No update needed
[2026-06-27 20:46:42,680.680 INFO    ] Checking for camera pi updates...
[2026-06-27 20:46:42,700.700 INFO    ] 200
[2026-06-27 20:46:42,702.702 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:46:42,727.727 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:46:42,780.780 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:46:42,781.781 INFO    ] No camera update needed
[2026-06-27 20:46:42,782.782 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:46:42,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:46:42,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:46:42,790.790 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:46:44,830.830 INFO    ] ================================================
[2026-06-27 20:46:44,846.846 INFO    ] Launching Daemon at Sat Jun 27 20:46:44 IST 2026
[2026-06-27 20:46:44,856.856 INFO    ] ================================================
[2026-06-27 20:46:45,183.183 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:46:45
[2026-06-27 20:46:45,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:46:45,638.638 INFO    ] Initializing speech engine...
[2026-06-27 20:46:45,643.643 INFO    ] 2026-06-27 20:46:45
[2026-06-27 20:46:45,850.850 INFO    ] 2026-06-27 20:46:45
[2026-06-27 20:46:45,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:46:46,062.062 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:46:46,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:46:46,201.201 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:46:46,265.265 INFO    ] time= 27/06/2026 20:46:46
[2026-06-27 20:46:46,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:46:46,298.298 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:46:46,365.365 INFO    ] No existing commands found in stream
[2026-06-27 20:46:51,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:46:51,376.376 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-27 20:46:53,604.604 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:46:53,605.605 INFO    ] Checking for system updates...
[2026-06-27 20:46:53,627.627 INFO    ] 200
[2026-06-27 20:46:53,629.629 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:46:53,667.667 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:46:53,669.669 INFO    ] No update needed
[2026-06-27 20:46:53,670.670 INFO    ] Checking for camera pi updates...
[2026-06-27 20:46:53,699.699 INFO    ] 200
[2026-06-27 20:46:53,700.700 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:46:53,736.736 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:46:53,786.786 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:46:53,787.787 INFO    ] No camera update needed
[2026-06-27 20:46:53,788.788 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:46:53,790.790 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:46:53,792.792 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:46:53,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:46:55,835.835 INFO    ] ================================================
[2026-06-27 20:46:55,851.851 INFO    ] Launching Daemon at Sat Jun 27 20:46:55 IST 2026
[2026-06-27 20:46:55,863.863 INFO    ] ================================================
[2026-06-27 20:46:56,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:46:56
[2026-06-27 20:46:56,496.496 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:46:56,627.627 INFO    ] Initializing speech engine...
[2026-06-27 20:46:56,635.635 INFO    ] 2026-06-27 20:46:56
[2026-06-27 20:46:56,848.848 INFO    ] 2026-06-27 20:46:56
[2026-06-27 20:46:56,876.876 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:46:57,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:46:57,070.070 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:46:57,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:46:57,267.267 INFO    ] time= 27/06/2026 20:46:57
[2026-06-27 20:46:57,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:46:57,296.296 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:46:57,362.362 INFO    ] No existing commands found in stream
[2026-06-27 20:47:02,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:47:02,377.377 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-27 20:47:06,006.006 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 20:47:06,008.008 INFO    ] Checking for system updates...
[2026-06-27 20:47:06,029.029 INFO    ] 200
[2026-06-27 20:47:06,031.031 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:47:06,063.063 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:47:06,065.065 INFO    ] No update needed
[2026-06-27 20:47:06,066.066 INFO    ] Checking for camera pi updates...
[2026-06-27 20:47:06,085.085 INFO    ] 200
[2026-06-27 20:47:06,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:47:06,118.118 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:47:06,161.161 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:47:06,162.162 INFO    ] No camera update needed
[2026-06-27 20:47:06,163.163 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:47:06,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:47:06,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:47:06,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:47:08,212.212 INFO    ] ================================================
[2026-06-27 20:47:08,227.227 INFO    ] Launching Daemon at Sat Jun 27 20:47:08 IST 2026
[2026-06-27 20:47:08,238.238 INFO    ] ================================================
[2026-06-27 20:47:08,608.608 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:47:08
[2026-06-27 20:47:08,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:47:09,098.098 INFO    ] Initializing speech engine...
[2026-06-27 20:47:09,103.103 INFO    ] 2026-06-27 20:47:09
[2026-06-27 20:47:09,311.311 INFO    ] 2026-06-27 20:47:09
[2026-06-27 20:47:09,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:47:09,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:47:09,534.534 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:47:09,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:47:09,730.730 INFO    ] time= 27/06/2026 20:47:09
[2026-06-27 20:47:09,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:47:09,761.761 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:47:09,827.827 INFO    ] No existing commands found in stream
[2026-06-27 20:47:14,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:47:14,839.839 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-27 20:47:19,089.089 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 20:47:19,091.091 INFO    ] Checking for system updates...
[2026-06-27 20:47:19,113.113 INFO    ] 200
[2026-06-27 20:47:19,114.114 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:47:19,147.147 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:47:19,148.148 INFO    ] No update needed
[2026-06-27 20:47:19,149.149 INFO    ] Checking for camera pi updates...
[2026-06-27 20:47:19,169.169 INFO    ] 200
[2026-06-27 20:47:19,170.170 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:47:19,194.194 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:47:19,239.239 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:47:19,240.240 INFO    ] No camera update needed
[2026-06-27 20:47:19,241.241 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:47:19,242.242 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:47:19,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:47:19,248.248 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:47:21,287.287 INFO    ] ================================================
[2026-06-27 20:47:21,303.303 INFO    ] Launching Daemon at Sat Jun 27 20:47:21 IST 2026
[2026-06-27 20:47:21,314.314 INFO    ] ================================================
[2026-06-27 20:47:21,668.668 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:47:21
[2026-06-27 20:47:21,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:47:22,124.124 INFO    ] Initializing speech engine...
[2026-06-27 20:47:22,129.129 INFO    ] 2026-06-27 20:47:22
[2026-06-27 20:47:22,334.334 INFO    ] 2026-06-27 20:47:22
[2026-06-27 20:47:22,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:47:22,485.485 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:47:22,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:47:22,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:47:22,749.749 INFO    ] time= 27/06/2026 20:47:22
[2026-06-27 20:47:22,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:47:22,782.782 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:47:22,849.849 INFO    ] No existing commands found in stream
[2026-06-27 20:47:27,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:47:27,866.866 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-27 20:47:29,799.799 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 20:47:29,800.800 INFO    ] Checking for system updates...
[2026-06-27 20:47:29,822.822 INFO    ] 200
[2026-06-27 20:47:29,824.824 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:47:29,856.856 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:47:29,858.858 INFO    ] No update needed
[2026-06-27 20:47:29,859.859 INFO    ] Checking for camera pi updates...
[2026-06-27 20:47:29,878.878 INFO    ] 200
[2026-06-27 20:47:29,880.880 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:47:29,903.903 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:47:29,944.944 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:47:29,946.946 INFO    ] No camera update needed
[2026-06-27 20:47:29,947.947 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:47:29,948.948 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:47:29,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:47:29,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:47:32,997.997 INFO    ] ================================================
[2026-06-27 20:47:32,012.012 INFO    ] Launching Daemon at Sat Jun 27 20:47:32 IST 2026
[2026-06-27 20:47:32,023.023 INFO    ] ================================================
[2026-06-27 20:47:32,405.405 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:47:32
[2026-06-27 20:47:32,791.791 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:47:32,947.947 INFO    ] Initializing speech engine...
[2026-06-27 20:47:32,951.951 INFO    ] 2026-06-27 20:47:32
[2026-06-27 20:47:33,159.159 INFO    ] 2026-06-27 20:47:33
[2026-06-27 20:47:33,188.188 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:47:33,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:47:33,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:47:33,518.518 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:47:33,582.582 INFO    ] time= 27/06/2026 20:47:33
[2026-06-27 20:47:33,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:47:33,610.610 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:47:33,678.678 INFO    ] No existing commands found in stream
[2026-06-27 20:47:38,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:47:38,696.696 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-27 20:47:40,466.466 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 20:47:40,468.468 INFO    ] Checking for system updates...
[2026-06-27 20:47:40,490.490 INFO    ] 200
[2026-06-27 20:47:40,492.492 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:47:40,522.522 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:47:40,524.524 INFO    ] No update needed
[2026-06-27 20:47:40,525.525 INFO    ] Checking for camera pi updates...
[2026-06-27 20:47:40,546.546 INFO    ] 200
[2026-06-27 20:47:40,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:47:40,573.573 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:47:40,716.716 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:47:40,717.717 INFO    ] No camera update needed
[2026-06-27 20:47:40,719.719 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:47:40,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:47:40,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:47:40,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:47:42,765.765 INFO    ] ================================================
[2026-06-27 20:47:42,781.781 INFO    ] Launching Daemon at Sat Jun 27 20:47:42 IST 2026
[2026-06-27 20:47:42,791.791 INFO    ] ================================================
[2026-06-27 20:47:43,152.152 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:47:43
[2026-06-27 20:47:43,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:47:43,647.647 INFO    ] Initializing speech engine...
[2026-06-27 20:47:43,653.653 INFO    ] 2026-06-27 20:47:43
[2026-06-27 20:47:43,862.862 INFO    ] 2026-06-27 20:47:43
[2026-06-27 20:47:43,890.890 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:47:44,076.076 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:47:44,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:47:44,234.234 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:47:44,283.283 INFO    ] time= 27/06/2026 20:47:44
[2026-06-27 20:47:44,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:47:44,311.311 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:47:44,378.378 INFO    ] No existing commands found in stream
[2026-06-27 20:47:49,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:47:49,396.396 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-27 20:47:52,851.851 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 20:47:52,853.853 INFO    ] Checking for system updates...
[2026-06-27 20:47:52,876.876 INFO    ] 200
[2026-06-27 20:47:52,878.878 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:47:52,908.908 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:47:52,910.910 INFO    ] No update needed
[2026-06-27 20:47:52,911.911 INFO    ] Checking for camera pi updates...
[2026-06-27 20:47:52,931.931 INFO    ] 200
[2026-06-27 20:47:52,933.933 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:47:52,959.959 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:47:53,017.017 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:47:53,018.018 INFO    ] No camera update needed
[2026-06-27 20:47:53,020.020 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:47:53,021.021 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:47:53,024.024 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:47:53,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:47:55,070.070 INFO    ] ================================================
[2026-06-27 20:47:55,085.085 INFO    ] Launching Daemon at Sat Jun 27 20:47:55 IST 2026
[2026-06-27 20:47:55,096.096 INFO    ] ================================================
[2026-06-27 20:47:55,443.443 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:47:55
[2026-06-27 20:47:55,756.756 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:47:55,898.898 INFO    ] Initializing speech engine...
[2026-06-27 20:47:55,902.902 INFO    ] 2026-06-27 20:47:55
[2026-06-27 20:47:56,107.107 INFO    ] 2026-06-27 20:47:56
[2026-06-27 20:47:56,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:47:56,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:47:56,460.460 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:47:56,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:47:56,659.659 INFO    ] time= 27/06/2026 20:47:56
[2026-06-27 20:47:56,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:47:56,664.664 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:47:56,809.809 INFO    ] No existing commands found in stream
[2026-06-27 20:48:01,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:48:01,817.817 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-27 20:48:05,175.175 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 20:48:05,177.177 INFO    ] Checking for system updates...
[2026-06-27 20:48:05,197.197 INFO    ] 200
[2026-06-27 20:48:05,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:48:05,229.229 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:48:05,230.230 INFO    ] No update needed
[2026-06-27 20:48:05,232.232 INFO    ] Checking for camera pi updates...
[2026-06-27 20:48:05,252.252 INFO    ] 200
[2026-06-27 20:48:05,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:48:05,289.289 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:48:05,333.333 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:48:05,334.334 INFO    ] No camera update needed
[2026-06-27 20:48:05,336.336 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:48:05,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:48:05,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:48:05,342.342 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:48:07,382.382 INFO    ] ================================================
[2026-06-27 20:48:07,397.397 INFO    ] Launching Daemon at Sat Jun 27 20:48:07 IST 2026
[2026-06-27 20:48:07,408.408 INFO    ] ================================================
[2026-06-27 20:48:07,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:48:07
[2026-06-27 20:48:08,072.072 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:48:08,206.206 INFO    ] Initializing speech engine...
[2026-06-27 20:48:08,218.218 INFO    ] 2026-06-27 20:48:08
[2026-06-27 20:48:08,426.426 INFO    ] 2026-06-27 20:48:08
[2026-06-27 20:48:08,456.456 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:48:08,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:48:08,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:48:08,801.801 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:48:08,850.850 INFO    ] time= 27/06/2026 20:48:08
[2026-06-27 20:48:08,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:48:08,878.878 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:48:08,945.945 INFO    ] No existing commands found in stream
[2026-06-27 20:48:13,959.959 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:48:13,962.962 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-27 20:48:18,154.154 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 20:48:18,156.156 INFO    ] Checking for system updates...
[2026-06-27 20:48:18,177.177 INFO    ] 200
[2026-06-27 20:48:18,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:48:18,209.209 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:48:18,211.211 INFO    ] No update needed
[2026-06-27 20:48:18,212.212 INFO    ] Checking for camera pi updates...
[2026-06-27 20:48:18,233.233 INFO    ] 200
[2026-06-27 20:48:18,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:48:18,260.260 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:48:18,303.303 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:48:18,305.305 INFO    ] No camera update needed
[2026-06-27 20:48:18,306.306 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:48:18,307.307 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:48:18,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:48:18,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:48:20,352.352 INFO    ] ================================================
[2026-06-27 20:48:20,367.367 INFO    ] Launching Daemon at Sat Jun 27 20:48:20 IST 2026
[2026-06-27 20:48:20,379.379 INFO    ] ================================================
[2026-06-27 20:48:20,720.720 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:48:20
[2026-06-27 20:48:21,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:48:21,170.170 INFO    ] Initializing speech engine...
[2026-06-27 20:48:21,184.184 INFO    ] 2026-06-27 20:48:21
[2026-06-27 20:48:21,393.393 INFO    ] 2026-06-27 20:48:21
[2026-06-27 20:48:21,422.422 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:48:21,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:48:21,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:48:21,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:48:21,830.830 INFO    ] time= 27/06/2026 20:48:21
[2026-06-27 20:48:21,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:48:21,842.842 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:48:21,933.933 INFO    ] No existing commands found in stream
[2026-06-27 20:48:26,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:48:26,951.951 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-27 20:48:30,773.773 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 20:48:30,774.774 INFO    ] Checking for system updates...
[2026-06-27 20:48:30,796.796 INFO    ] 200
[2026-06-27 20:48:30,797.797 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:48:30,830.830 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:48:30,831.831 INFO    ] No update needed
[2026-06-27 20:48:30,832.832 INFO    ] Checking for camera pi updates...
[2026-06-27 20:48:30,853.853 INFO    ] 200
[2026-06-27 20:48:30,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:48:30,879.879 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:48:30,925.925 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:48:30,926.926 INFO    ] No camera update needed
[2026-06-27 20:48:30,928.928 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:48:30,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:48:30,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:48:30,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:48:32,968.968 INFO    ] ================================================
[2026-06-27 20:48:32,983.983 INFO    ] Launching Daemon at Sat Jun 27 20:48:32 IST 2026
[2026-06-27 20:48:33,995.995 INFO    ] ================================================
[2026-06-27 20:48:33,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:48:33
[2026-06-27 20:48:33,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:48:33,803.803 INFO    ] Initializing speech engine...
[2026-06-27 20:48:33,807.807 INFO    ] 2026-06-27 20:48:33
[2026-06-27 20:48:34,013.013 INFO    ] 2026-06-27 20:48:33
[2026-06-27 20:48:34,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:48:34,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:48:34,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:48:34,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:48:34,426.426 INFO    ] time= 27/06/2026 20:48:34
[2026-06-27 20:48:34,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:48:34,461.461 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:48:34,532.532 INFO    ] No existing commands found in stream
[2026-06-27 20:48:39,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:48:39,546.546 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-27 20:48:41,262.262 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:48:41,264.264 INFO    ] Checking for system updates...
[2026-06-27 20:48:41,284.284 INFO    ] 200
[2026-06-27 20:48:41,286.286 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:48:41,322.322 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:48:41,324.324 INFO    ] No update needed
[2026-06-27 20:48:41,325.325 INFO    ] Checking for camera pi updates...
[2026-06-27 20:48:41,346.346 INFO    ] 200
[2026-06-27 20:48:41,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:48:41,370.370 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:48:41,416.416 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:48:41,417.417 INFO    ] No camera update needed
[2026-06-27 20:48:41,419.419 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:48:41,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:48:41,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:48:41,425.425 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:48:43,465.465 INFO    ] ================================================
[2026-06-27 20:48:43,481.481 INFO    ] Launching Daemon at Sat Jun 27 20:48:43 IST 2026
[2026-06-27 20:48:43,492.492 INFO    ] ================================================
[2026-06-27 20:48:43,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:48:43
[2026-06-27 20:48:44,178.178 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:48:44,323.323 INFO    ] Initializing speech engine...
[2026-06-27 20:48:44,328.328 INFO    ] 2026-06-27 20:48:44
[2026-06-27 20:48:44,532.532 INFO    ] 2026-06-27 20:48:44
[2026-06-27 20:48:44,561.561 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:48:44,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:48:44,750.750 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:48:44,903.903 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:48:44,957.957 INFO    ] time= 27/06/2026 20:48:44
[2026-06-27 20:48:44,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:48:44,986.986 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:48:45,052.052 INFO    ] No existing commands found in stream
[2026-06-27 20:48:50,063.063 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:48:50,066.066 INFO    ] Waiting 1.10 seconds before fallback handling...
[2026-06-27 20:48:51,566.566 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 20:48:51,568.568 INFO    ] Checking for system updates...
[2026-06-27 20:48:51,592.592 INFO    ] 200
[2026-06-27 20:48:51,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:48:51,625.625 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:48:51,626.626 INFO    ] No update needed
[2026-06-27 20:48:51,627.627 INFO    ] Checking for camera pi updates...
[2026-06-27 20:48:51,650.650 INFO    ] 200
[2026-06-27 20:48:51,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:48:51,676.676 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:48:51,722.722 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:48:51,723.723 INFO    ] No camera update needed
[2026-06-27 20:48:51,725.725 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:48:51,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:48:51,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:48:51,732.732 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:48:53,770.770 INFO    ] ================================================
[2026-06-27 20:48:53,785.785 INFO    ] Launching Daemon at Sat Jun 27 20:48:53 IST 2026
[2026-06-27 20:48:53,796.796 INFO    ] ================================================
[2026-06-27 20:48:54,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:48:54
[2026-06-27 20:48:54,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:48:54,671.671 INFO    ] Initializing speech engine...
[2026-06-27 20:48:54,682.682 INFO    ] 2026-06-27 20:48:54
[2026-06-27 20:48:54,884.884 INFO    ] 2026-06-27 20:48:54
[2026-06-27 20:48:54,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:48:55,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:48:55,109.109 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:48:55,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:48:55,282.282 INFO    ] time= 27/06/2026 20:48:55
[2026-06-27 20:48:55,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:48:55,337.337 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:48:55,404.404 INFO    ] No existing commands found in stream
[2026-06-27 20:49:00,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:49:00,421.421 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-27 20:49:04,526.526 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:49:04,528.528 INFO    ] Checking for system updates...
[2026-06-27 20:49:04,549.549 INFO    ] 200
[2026-06-27 20:49:04,551.551 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:49:04,587.587 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:49:04,588.588 INFO    ] No update needed
[2026-06-27 20:49:04,590.590 INFO    ] Checking for camera pi updates...
[2026-06-27 20:49:04,610.610 INFO    ] 200
[2026-06-27 20:49:04,611.611 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:49:04,634.634 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:49:04,685.685 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:49:04,687.687 INFO    ] No camera update needed
[2026-06-27 20:49:04,688.688 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:49:04,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:49:04,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:49:04,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:49:06,734.734 INFO    ] ================================================
[2026-06-27 20:49:06,749.749 INFO    ] Launching Daemon at Sat Jun 27 20:49:06 IST 2026
[2026-06-27 20:49:06,759.759 INFO    ] ================================================
[2026-06-27 20:49:07,124.124 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:49:07
[2026-06-27 20:49:07,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:49:07,568.568 INFO    ] Initializing speech engine...
[2026-06-27 20:49:07,576.576 INFO    ] 2026-06-27 20:49:07
[2026-06-27 20:49:07,788.788 INFO    ] 2026-06-27 20:49:07
[2026-06-27 20:49:07,817.817 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:49:08,001.001 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:49:08,010.010 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:49:08,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:49:08,225.225 INFO    ] time= 27/06/2026 20:49:08
[2026-06-27 20:49:08,231.231 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:49:08,237.237 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:49:08,353.353 INFO    ] No existing commands found in stream
[2026-06-27 20:49:13,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:49:13,367.367 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-27 20:49:17,080.080 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 20:49:17,082.082 INFO    ] Checking for system updates...
[2026-06-27 20:49:17,105.105 INFO    ] 200
[2026-06-27 20:49:17,106.106 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:49:17,141.141 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:49:17,143.143 INFO    ] No update needed
[2026-06-27 20:49:17,144.144 INFO    ] Checking for camera pi updates...
[2026-06-27 20:49:17,168.168 INFO    ] 200
[2026-06-27 20:49:17,169.169 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:49:17,197.197 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:49:17,245.245 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:49:17,247.247 INFO    ] No camera update needed
[2026-06-27 20:49:17,248.248 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:49:17,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:49:17,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:49:17,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:49:19,294.294 INFO    ] ================================================
[2026-06-27 20:49:19,309.309 INFO    ] Launching Daemon at Sat Jun 27 20:49:19 IST 2026
[2026-06-27 20:49:19,320.320 INFO    ] ================================================
[2026-06-27 20:49:19,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:49:19
[2026-06-27 20:49:19,978.978 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:49:20,166.166 INFO    ] Initializing speech engine...
[2026-06-27 20:49:20,175.175 INFO    ] 2026-06-27 20:49:20
[2026-06-27 20:49:20,382.382 INFO    ] 2026-06-27 20:49:20
[2026-06-27 20:49:20,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:49:20,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:49:20,597.597 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:49:20,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:49:20,794.794 INFO    ] time= 27/06/2026 20:49:20
[2026-06-27 20:49:20,827.827 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:49:20,834.834 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:49:20,901.901 INFO    ] No existing commands found in stream
[2026-06-27 20:49:25,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:49:25,928.928 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-27 20:49:29,429.429 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 20:49:29,431.431 INFO    ] Checking for system updates...
[2026-06-27 20:49:29,452.452 INFO    ] 200
[2026-06-27 20:49:29,454.454 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:49:29,484.484 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:49:29,485.485 INFO    ] No update needed
[2026-06-27 20:49:29,487.487 INFO    ] Checking for camera pi updates...
[2026-06-27 20:49:29,507.507 INFO    ] 200
[2026-06-27 20:49:29,508.508 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:49:29,531.531 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:49:29,577.577 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:49:29,579.579 INFO    ] No camera update needed
[2026-06-27 20:49:29,580.580 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:49:29,581.581 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:49:29,584.584 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:49:29,587.587 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:49:31,620.620 INFO    ] ================================================
[2026-06-27 20:49:31,629.629 INFO    ] Launching Daemon at Sat Jun 27 20:49:31 IST 2026
[2026-06-27 20:49:31,636.636 INFO    ] ================================================
[2026-06-27 20:49:31,967.967 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:49:31
[2026-06-27 20:49:32,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:49:32,439.439 INFO    ] Initializing speech engine...
[2026-06-27 20:49:32,453.453 INFO    ] 2026-06-27 20:49:32
[2026-06-27 20:49:32,659.659 INFO    ] 2026-06-27 20:49:32
[2026-06-27 20:49:32,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:49:32,875.875 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:49:32,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:49:33,014.014 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:49:33,078.078 INFO    ] time= 27/06/2026 20:49:33
[2026-06-27 20:49:33,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:49:33,113.113 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:49:33,181.181 INFO    ] No existing commands found in stream
[2026-06-27 20:49:38,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:49:38,193.193 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-27 20:49:40,167.167 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 20:49:40,168.168 INFO    ] Checking for system updates...
[2026-06-27 20:49:40,190.190 INFO    ] 200
[2026-06-27 20:49:40,191.191 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:49:40,223.223 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:49:40,225.225 INFO    ] No update needed
[2026-06-27 20:49:40,226.226 INFO    ] Checking for camera pi updates...
[2026-06-27 20:49:40,245.245 INFO    ] 200
[2026-06-27 20:49:40,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:49:40,271.271 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:49:40,314.314 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:49:40,315.315 INFO    ] No camera update needed
[2026-06-27 20:49:40,317.317 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:49:40,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:49:40,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:49:40,323.323 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:49:42,362.362 INFO    ] ================================================
[2026-06-27 20:49:42,377.377 INFO    ] Launching Daemon at Sat Jun 27 20:49:42 IST 2026
[2026-06-27 20:49:42,388.388 INFO    ] ================================================
[2026-06-27 20:49:42,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:49:42
[2026-06-27 20:49:43,020.020 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:49:43,152.152 INFO    ] Initializing speech engine...
[2026-06-27 20:49:43,156.156 INFO    ] 2026-06-27 20:49:43
[2026-06-27 20:49:43,385.385 INFO    ] 2026-06-27 20:49:43
[2026-06-27 20:49:43,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:49:43,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:49:43,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:49:43,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:49:43,823.823 INFO    ] time= 27/06/2026 20:49:43
[2026-06-27 20:49:43,856.856 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:49:43,858.858 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:49:43,931.931 INFO    ] No existing commands found in stream
[2026-06-27 20:49:48,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:49:48,948.948 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-27 20:49:50,384.384 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:49:50,386.386 INFO    ] Checking for system updates...
[2026-06-27 20:49:50,406.406 INFO    ] 200
[2026-06-27 20:49:50,408.408 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:49:50,440.440 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:49:50,441.441 INFO    ] No update needed
[2026-06-27 20:49:50,442.442 INFO    ] Checking for camera pi updates...
[2026-06-27 20:49:50,463.463 INFO    ] 200
[2026-06-27 20:49:50,465.465 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:49:50,490.490 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:49:50,633.633 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:49:50,635.635 INFO    ] No camera update needed
[2026-06-27 20:49:50,636.636 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:49:50,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:49:50,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:49:50,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:49:52,682.682 INFO    ] ================================================
[2026-06-27 20:49:52,698.698 INFO    ] Launching Daemon at Sat Jun 27 20:49:52 IST 2026
[2026-06-27 20:49:52,709.709 INFO    ] ================================================
[2026-06-27 20:49:53,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:49:53
[2026-06-27 20:49:53,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:49:53,495.495 INFO    ] Initializing speech engine...
[2026-06-27 20:49:53,498.498 INFO    ] 2026-06-27 20:49:53
[2026-06-27 20:49:53,725.725 INFO    ] 2026-06-27 20:49:53
[2026-06-27 20:49:53,756.756 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:49:53,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:49:53,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:49:54,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:49:54,158.158 INFO    ] time= 27/06/2026 20:49:54
[2026-06-27 20:49:54,188.188 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:49:54,211.211 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:49:54,288.288 INFO    ] No existing commands found in stream
[2026-06-27 20:49:59,297.297 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:49:59,300.300 INFO    ] Waiting 2.72 seconds before fallback handling...
[2026-06-27 20:50:03,028.028 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 20:50:03,031.031 INFO    ] Checking for system updates...
[2026-06-27 20:50:03,070.070 INFO    ] 200
[2026-06-27 20:50:03,072.072 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:50:03,128.128 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:50:03,130.130 INFO    ] No update needed
[2026-06-27 20:50:03,132.132 INFO    ] Checking for camera pi updates...
[2026-06-27 20:50:03,170.170 INFO    ] 200
[2026-06-27 20:50:03,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:50:03,214.214 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:50:03,265.265 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:50:03,268.268 INFO    ] No camera update needed
[2026-06-27 20:50:03,271.271 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:50:03,273.273 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:50:03,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:50:03,286.286 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:50:05,328.328 INFO    ] ================================================
[2026-06-27 20:50:05,344.344 INFO    ] Launching Daemon at Sat Jun 27 20:50:05 IST 2026
[2026-06-27 20:50:05,354.354 INFO    ] ================================================
[2026-06-27 20:50:05,714.714 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:50:05
[2026-06-27 20:50:06,032.032 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:50:06,177.177 INFO    ] Initializing speech engine...
[2026-06-27 20:50:06,182.182 INFO    ] 2026-06-27 20:50:06
[2026-06-27 20:50:06,386.386 INFO    ] 2026-06-27 20:50:06
[2026-06-27 20:50:06,414.414 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:50:06,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:50:06,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:50:06,737.737 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:50:06,808.808 INFO    ] time= 27/06/2026 20:50:06
[2026-06-27 20:50:06,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:50:06,843.843 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:50:06,910.910 INFO    ] No existing commands found in stream
[2026-06-27 20:50:11,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:50:11,923.923 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-27 20:50:13,846.846 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 20:50:13,848.848 INFO    ] Checking for system updates...
[2026-06-27 20:50:13,869.869 INFO    ] 200
[2026-06-27 20:50:13,871.871 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:50:13,904.904 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:50:13,905.905 INFO    ] No update needed
[2026-06-27 20:50:13,906.906 INFO    ] Checking for camera pi updates...
[2026-06-27 20:50:13,926.926 INFO    ] 200
[2026-06-27 20:50:13,927.927 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:50:13,952.952 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:50:13,999.999 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:50:14,000.000 INFO    ] No camera update needed
[2026-06-27 20:50:14,001.001 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:50:14,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:50:14,005.005 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:50:14,008.008 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:50:16,048.048 INFO    ] ================================================
[2026-06-27 20:50:16,063.063 INFO    ] Launching Daemon at Sat Jun 27 20:50:16 IST 2026
[2026-06-27 20:50:16,073.073 INFO    ] ================================================
[2026-06-27 20:50:16,432.432 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:50:16
[2026-06-27 20:50:16,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:50:16,930.930 INFO    ] Initializing speech engine...
[2026-06-27 20:50:16,936.936 INFO    ] 2026-06-27 20:50:16
[2026-06-27 20:50:17,160.160 INFO    ] 2026-06-27 20:50:17
[2026-06-27 20:50:17,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:50:17,363.363 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:50:17,400.400 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:50:17,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:50:17,632.632 INFO    ] time= 27/06/2026 20:50:17
[2026-06-27 20:50:17,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:50:17,639.639 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:50:17,732.732 INFO    ] No existing commands found in stream
[2026-06-27 20:50:22,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:50:22,749.749 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-27 20:50:24,127.127 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 20:50:24,129.129 INFO    ] Checking for system updates...
[2026-06-27 20:50:24,150.150 INFO    ] 200
[2026-06-27 20:50:24,151.151 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:50:24,182.182 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:50:24,184.184 INFO    ] No update needed
[2026-06-27 20:50:24,185.185 INFO    ] Checking for camera pi updates...
[2026-06-27 20:50:24,205.205 INFO    ] 200
[2026-06-27 20:50:24,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:50:24,232.232 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:50:24,276.276 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:50:24,278.278 INFO    ] No camera update needed
[2026-06-27 20:50:24,279.279 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:50:24,280.280 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:50:24,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:50:24,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:50:26,331.331 INFO    ] ================================================
[2026-06-27 20:50:26,346.346 INFO    ] Launching Daemon at Sat Jun 27 20:50:26 IST 2026
[2026-06-27 20:50:26,357.357 INFO    ] ================================================
[2026-06-27 20:50:26,679.679 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:50:26
[2026-06-27 20:50:26,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:50:27,133.133 INFO    ] Initializing speech engine...
[2026-06-27 20:50:27,138.138 INFO    ] 2026-06-27 20:50:27
[2026-06-27 20:50:27,344.344 INFO    ] 2026-06-27 20:50:27
[2026-06-27 20:50:27,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:50:27,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:50:27,568.568 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:50:27,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:50:27,771.771 INFO    ] time= 27/06/2026 20:50:27
[2026-06-27 20:50:27,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:50:27,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:50:27,890.890 INFO    ] No existing commands found in stream
[2026-06-27 20:50:32,914.914 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:50:32,917.917 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-27 20:50:37,010.010 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:50:37,012.012 INFO    ] Checking for system updates...
[2026-06-27 20:50:37,033.033 INFO    ] 200
[2026-06-27 20:50:37,034.034 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:50:37,068.068 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:50:37,069.069 INFO    ] No update needed
[2026-06-27 20:50:37,070.070 INFO    ] Checking for camera pi updates...
[2026-06-27 20:50:37,090.090 INFO    ] 200
[2026-06-27 20:50:37,092.092 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:50:37,117.117 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:50:37,159.159 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:50:37,160.160 INFO    ] No camera update needed
[2026-06-27 20:50:37,162.162 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:50:37,163.163 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:50:37,166.166 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:50:37,169.169 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:50:39,209.209 INFO    ] ================================================
[2026-06-27 20:50:39,224.224 INFO    ] Launching Daemon at Sat Jun 27 20:50:39 IST 2026
[2026-06-27 20:50:39,235.235 INFO    ] ================================================
[2026-06-27 20:50:39,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:50:39
[2026-06-27 20:50:39,898.898 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:50:40,037.037 INFO    ] Initializing speech engine...
[2026-06-27 20:50:40,048.048 INFO    ] 2026-06-27 20:50:40
[2026-06-27 20:50:40,252.252 INFO    ] 2026-06-27 20:50:40
[2026-06-27 20:50:40,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:50:40,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:50:40,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:50:40,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:50:40,765.765 INFO    ] time= 27/06/2026 20:50:40
[2026-06-27 20:50:40,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:50:40,792.792 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:50:40,900.900 INFO    ] No existing commands found in stream
[2026-06-27 20:50:45,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:50:45,914.914 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-27 20:50:46,383.383 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 20:50:46,385.385 INFO    ] Checking for system updates...
[2026-06-27 20:50:46,406.406 INFO    ] 200
[2026-06-27 20:50:46,407.407 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:50:46,443.443 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:50:46,444.444 INFO    ] No update needed
[2026-06-27 20:50:46,446.446 INFO    ] Checking for camera pi updates...
[2026-06-27 20:50:46,468.468 INFO    ] 200
[2026-06-27 20:50:46,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:50:46,493.493 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:50:46,538.538 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:50:46,539.539 INFO    ] No camera update needed
[2026-06-27 20:50:46,540.540 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:50:46,542.542 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:50:46,545.545 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:50:46,549.549 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:50:48,590.590 INFO    ] ================================================
[2026-06-27 20:50:48,606.606 INFO    ] Launching Daemon at Sat Jun 27 20:50:48 IST 2026
[2026-06-27 20:50:48,617.617 INFO    ] ================================================
[2026-06-27 20:50:48,983.983 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:50:48
[2026-06-27 20:50:49,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:50:49,447.447 INFO    ] Initializing speech engine...
[2026-06-27 20:50:49,451.451 INFO    ] 2026-06-27 20:50:49
[2026-06-27 20:50:49,656.656 INFO    ] 2026-06-27 20:50:49
[2026-06-27 20:50:49,685.685 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:50:49,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:50:49,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:50:50,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:50:50,072.072 INFO    ] time= 27/06/2026 20:50:50
[2026-06-27 20:50:50,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:50:50,106.106 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:50:50,173.173 INFO    ] No existing commands found in stream
[2026-06-27 20:50:55,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:50:55,185.185 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-27 20:50:57,151.151 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 20:50:57,153.153 INFO    ] Checking for system updates...
[2026-06-27 20:50:57,175.175 INFO    ] 200
[2026-06-27 20:50:57,176.176 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:50:57,209.209 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:50:57,210.210 INFO    ] No update needed
[2026-06-27 20:50:57,212.212 INFO    ] Checking for camera pi updates...
[2026-06-27 20:50:57,231.231 INFO    ] 200
[2026-06-27 20:50:57,233.233 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:50:57,264.264 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:50:57,307.307 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:50:57,308.308 INFO    ] No camera update needed
[2026-06-27 20:50:57,310.310 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:50:57,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:50:57,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:50:57,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:50:59,355.355 INFO    ] ================================================
[2026-06-27 20:50:59,371.371 INFO    ] Launching Daemon at Sat Jun 27 20:50:59 IST 2026
[2026-06-27 20:50:59,382.382 INFO    ] ================================================
[2026-06-27 20:50:59,710.710 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:50:59
[2026-06-27 20:51:00,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:51:00,167.167 INFO    ] Initializing speech engine...
[2026-06-27 20:51:00,172.172 INFO    ] 2026-06-27 20:51:00
[2026-06-27 20:51:00,377.377 INFO    ] 2026-06-27 20:51:00
[2026-06-27 20:51:00,405.405 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:51:00,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:51:00,594.594 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:51:00,725.725 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:51:00,781.781 INFO    ] time= 27/06/2026 20:51:00
[2026-06-27 20:51:00,824.824 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:51:00,831.831 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:51:00,897.897 INFO    ] No existing commands found in stream
[2026-06-27 20:51:05,907.907 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:51:05,910.910 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-27 20:51:08,588.588 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 20:51:08,589.589 INFO    ] Checking for system updates...
[2026-06-27 20:51:08,611.611 INFO    ] 200
[2026-06-27 20:51:08,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:51:08,642.642 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:51:08,644.644 INFO    ] No update needed
[2026-06-27 20:51:08,645.645 INFO    ] Checking for camera pi updates...
[2026-06-27 20:51:08,664.664 INFO    ] 200
[2026-06-27 20:51:08,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:51:08,690.690 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:51:08,742.742 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:51:08,744.744 INFO    ] No camera update needed
[2026-06-27 20:51:08,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:51:08,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:51:08,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:51:08,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:51:10,790.790 INFO    ] ================================================
[2026-06-27 20:51:10,805.805 INFO    ] Launching Daemon at Sat Jun 27 20:51:10 IST 2026
[2026-06-27 20:51:10,816.816 INFO    ] ================================================
[2026-06-27 20:51:11,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:51:11
[2026-06-27 20:51:11,509.509 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:51:11,648.648 INFO    ] Initializing speech engine...
[2026-06-27 20:51:11,658.658 INFO    ] 2026-06-27 20:51:11
[2026-06-27 20:51:11,863.863 INFO    ] 2026-06-27 20:51:11
[2026-06-27 20:51:11,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:51:12,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:51:12,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:51:12,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:51:12,281.281 INFO    ] time= 27/06/2026 20:51:12
[2026-06-27 20:51:12,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:51:12,310.310 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:51:12,377.377 INFO    ] No existing commands found in stream
[2026-06-27 20:51:17,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:51:17,394.394 INFO    ] Waiting 1.96 seconds before fallback handling...
[2026-06-27 20:51:19,974.974 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 20:51:19,976.976 INFO    ] Checking for system updates...
[2026-06-27 20:51:20,002.002 INFO    ] 200
[2026-06-27 20:51:20,004.004 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:51:20,034.034 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:51:20,036.036 INFO    ] No update needed
[2026-06-27 20:51:20,037.037 INFO    ] Checking for camera pi updates...
[2026-06-27 20:51:20,057.057 INFO    ] 200
[2026-06-27 20:51:20,059.059 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:51:20,084.084 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:51:20,127.127 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:51:20,128.128 INFO    ] No camera update needed
[2026-06-27 20:51:20,129.129 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:51:20,130.130 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:51:20,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:51:20,136.136 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:51:22,174.174 INFO    ] ================================================
[2026-06-27 20:51:22,189.189 INFO    ] Launching Daemon at Sat Jun 27 20:51:22 IST 2026
[2026-06-27 20:51:22,200.200 INFO    ] ================================================
[2026-06-27 20:51:22,526.526 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:51:22
[2026-06-27 20:51:22,839.839 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:51:22,972.972 INFO    ] Initializing speech engine...
[2026-06-27 20:51:22,985.985 INFO    ] 2026-06-27 20:51:22
[2026-06-27 20:51:23,191.191 INFO    ] 2026-06-27 20:51:23
[2026-06-27 20:51:23,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:51:23,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:51:23,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:51:23,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:51:23,612.612 INFO    ] time= 27/06/2026 20:51:23
[2026-06-27 20:51:23,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:51:23,640.640 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:51:23,707.707 INFO    ] No existing commands found in stream
[2026-06-27 20:51:28,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:51:28,719.719 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-27 20:51:32,944.944 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 20:51:32,946.946 INFO    ] Checking for system updates...
[2026-06-27 20:51:32,968.968 INFO    ] 200
[2026-06-27 20:51:32,969.969 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:51:33,002.002 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:51:33,003.003 INFO    ] No update needed
[2026-06-27 20:51:33,005.005 INFO    ] Checking for camera pi updates...
[2026-06-27 20:51:33,026.026 INFO    ] 200
[2026-06-27 20:51:33,027.027 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:51:33,052.052 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:51:33,106.106 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:51:33,107.107 INFO    ] No camera update needed
[2026-06-27 20:51:33,108.108 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:51:33,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:51:33,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:51:33,115.115 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:51:35,155.155 INFO    ] ================================================
[2026-06-27 20:51:35,170.170 INFO    ] Launching Daemon at Sat Jun 27 20:51:35 IST 2026
[2026-06-27 20:51:35,181.181 INFO    ] ================================================
[2026-06-27 20:51:35,552.552 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:51:35
[2026-06-27 20:51:35,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:51:35,999.999 INFO    ] Initializing speech engine...
[2026-06-27 20:51:36,012.012 INFO    ] 2026-06-27 20:51:36
[2026-06-27 20:51:36,222.222 INFO    ] 2026-06-27 20:51:36
[2026-06-27 20:51:36,251.251 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:51:36,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:51:36,449.449 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:51:36,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:51:36,628.628 INFO    ] time= 27/06/2026 20:51:36
[2026-06-27 20:51:36,663.663 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:51:36,674.674 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:51:36,746.746 INFO    ] No existing commands found in stream
[2026-06-27 20:51:41,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:51:41,758.758 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-27 20:51:45,677.677 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 20:51:45,678.678 INFO    ] Checking for system updates...
[2026-06-27 20:51:45,699.699 INFO    ] 200
[2026-06-27 20:51:45,700.700 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:51:45,733.733 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:51:45,734.734 INFO    ] No update needed
[2026-06-27 20:51:45,736.736 INFO    ] Checking for camera pi updates...
[2026-06-27 20:51:45,757.757 INFO    ] 200
[2026-06-27 20:51:45,758.758 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:51:45,782.782 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:51:45,821.821 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:51:45,822.822 INFO    ] No camera update needed
[2026-06-27 20:51:45,824.824 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:51:45,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:51:45,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:51:45,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:51:47,871.871 INFO    ] ================================================
[2026-06-27 20:51:47,886.886 INFO    ] Launching Daemon at Sat Jun 27 20:51:47 IST 2026
[2026-06-27 20:51:47,897.897 INFO    ] ================================================
[2026-06-27 20:51:48,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:51:48
[2026-06-27 20:51:48,549.549 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:51:48,692.692 INFO    ] Initializing speech engine...
[2026-06-27 20:51:48,697.697 INFO    ] 2026-06-27 20:51:48
[2026-06-27 20:51:48,901.901 INFO    ] 2026-06-27 20:51:48
[2026-06-27 20:51:48,930.930 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:51:49,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:51:49,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:51:49,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:51:49,329.329 INFO    ] time= 27/06/2026 20:51:49
[2026-06-27 20:51:49,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:51:49,359.359 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:51:49,425.425 INFO    ] No existing commands found in stream
[2026-06-27 20:51:54,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:51:54,438.438 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-27 20:51:55,981.981 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 20:51:55,982.982 INFO    ] Checking for system updates...
[2026-06-27 20:51:56,003.003 INFO    ] 200
[2026-06-27 20:51:56,004.004 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:51:56,037.037 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:51:56,038.038 INFO    ] No update needed
[2026-06-27 20:51:56,040.040 INFO    ] Checking for camera pi updates...
[2026-06-27 20:51:56,060.060 INFO    ] 200
[2026-06-27 20:51:56,062.062 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:51:56,085.085 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:51:56,210.210 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:51:56,212.212 INFO    ] No camera update needed
[2026-06-27 20:51:56,213.213 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:51:56,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:51:56,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:51:56,220.220 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:51:58,259.259 INFO    ] ================================================
[2026-06-27 20:51:58,275.275 INFO    ] Launching Daemon at Sat Jun 27 20:51:58 IST 2026
[2026-06-27 20:51:58,286.286 INFO    ] ================================================
[2026-06-27 20:51:58,671.671 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:51:58
[2026-06-27 20:51:58,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:51:59,132.132 INFO    ] Initializing speech engine...
[2026-06-27 20:51:59,138.138 INFO    ] 2026-06-27 20:51:59
[2026-06-27 20:51:59,342.342 INFO    ] 2026-06-27 20:51:59
[2026-06-27 20:51:59,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:51:59,502.502 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:51:59,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:51:59,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:51:59,748.748 INFO    ] time= 27/06/2026 20:51:59
[2026-06-27 20:51:59,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:51:59,802.802 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:51:59,931.931 INFO    ] No existing commands found in stream
[2026-06-27 20:52:04,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:52:04,939.939 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-27 20:52:07,368.368 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 20:52:07,369.369 INFO    ] Checking for system updates...
[2026-06-27 20:52:07,391.391 INFO    ] 200
[2026-06-27 20:52:07,393.393 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:52:07,431.431 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:52:07,432.432 INFO    ] No update needed
[2026-06-27 20:52:07,434.434 INFO    ] Checking for camera pi updates...
[2026-06-27 20:52:07,454.454 INFO    ] 200
[2026-06-27 20:52:07,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:52:07,481.481 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:52:07,522.522 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:52:07,524.524 INFO    ] No camera update needed
[2026-06-27 20:52:07,525.525 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:52:07,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:52:07,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:52:07,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:52:09,572.572 INFO    ] ================================================
[2026-06-27 20:52:09,587.587 INFO    ] Launching Daemon at Sat Jun 27 20:52:09 IST 2026
[2026-06-27 20:52:09,598.598 INFO    ] ================================================
[2026-06-27 20:52:09,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:52:09
[2026-06-27 20:52:10,298.298 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:52:10,449.449 INFO    ] Initializing speech engine...
[2026-06-27 20:52:10,454.454 INFO    ] 2026-06-27 20:52:10
[2026-06-27 20:52:10,664.664 INFO    ] 2026-06-27 20:52:10
[2026-06-27 20:52:10,693.693 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:52:10,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:52:10,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:52:11,032.032 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:52:11,086.086 INFO    ] time= 27/06/2026 20:52:11
[2026-06-27 20:52:11,108.108 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:52:11,115.115 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:52:11,182.182 INFO    ] No existing commands found in stream
[2026-06-27 20:52:16,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:52:16,200.200 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-27 20:52:18,763.763 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 20:52:18,765.765 INFO    ] Checking for system updates...
[2026-06-27 20:52:18,786.786 INFO    ] 200
[2026-06-27 20:52:18,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:52:18,818.818 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:52:18,819.819 INFO    ] No update needed
[2026-06-27 20:52:18,821.821 INFO    ] Checking for camera pi updates...
[2026-06-27 20:52:18,840.840 INFO    ] 200
[2026-06-27 20:52:18,842.842 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:52:18,867.867 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:52:18,907.907 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:52:18,908.908 INFO    ] No camera update needed
[2026-06-27 20:52:18,910.910 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:52:18,911.911 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:52:18,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:52:18,917.917 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:52:20,956.956 INFO    ] ================================================
[2026-06-27 20:52:20,975.975 INFO    ] Launching Daemon at Sat Jun 27 20:52:20 IST 2026
[2026-06-27 20:52:20,986.986 INFO    ] ================================================
[2026-06-27 20:52:21,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:52:21
[2026-06-27 20:52:21,612.612 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:52:21,742.742 INFO    ] Initializing speech engine...
[2026-06-27 20:52:21,747.747 INFO    ] 2026-06-27 20:52:21
[2026-06-27 20:52:21,967.967 INFO    ] 2026-06-27 20:52:21
[2026-06-27 20:52:21,996.996 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:52:22,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:52:22,163.163 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:52:22,325.325 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:52:22,389.389 INFO    ] time= 27/06/2026 20:52:22
[2026-06-27 20:52:22,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:52:22,420.420 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:52:22,490.490 INFO    ] No existing commands found in stream
[2026-06-27 20:52:27,501.501 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:52:27,504.504 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-27 20:52:28,373.373 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:52:28,374.374 INFO    ] Checking for system updates...
[2026-06-27 20:52:28,395.395 INFO    ] 200
[2026-06-27 20:52:28,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:52:28,429.429 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:52:28,430.430 INFO    ] No update needed
[2026-06-27 20:52:28,431.431 INFO    ] Checking for camera pi updates...
[2026-06-27 20:52:28,452.452 INFO    ] 200
[2026-06-27 20:52:28,454.454 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:52:28,477.477 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:52:28,529.529 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:52:28,530.530 INFO    ] No camera update needed
[2026-06-27 20:52:28,532.532 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:52:28,533.533 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:52:28,536.536 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:52:28,539.539 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:52:30,579.579 INFO    ] ================================================
[2026-06-27 20:52:30,595.595 INFO    ] Launching Daemon at Sat Jun 27 20:52:30 IST 2026
[2026-06-27 20:52:30,606.606 INFO    ] ================================================
[2026-06-27 20:52:30,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:52:30
[2026-06-27 20:52:31,288.288 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:52:31,417.417 INFO    ] Initializing speech engine...
[2026-06-27 20:52:31,421.421 INFO    ] 2026-06-27 20:52:31
[2026-06-27 20:52:31,642.642 INFO    ] 2026-06-27 20:52:31
[2026-06-27 20:52:31,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:52:31,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:52:31,859.859 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:52:31,999.999 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:52:32,087.087 INFO    ] time= 27/06/2026 20:52:32
[2026-06-27 20:52:32,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:52:32,107.107 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:52:32,178.178 INFO    ] No existing commands found in stream
[2026-06-27 20:52:37,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:52:37,190.190 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-27 20:52:39,727.727 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:52:39,729.729 INFO    ] Checking for system updates...
[2026-06-27 20:52:39,750.750 INFO    ] 200
[2026-06-27 20:52:39,751.751 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:52:39,781.781 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:52:39,783.783 INFO    ] No update needed
[2026-06-27 20:52:39,784.784 INFO    ] Checking for camera pi updates...
[2026-06-27 20:52:39,805.805 INFO    ] 200
[2026-06-27 20:52:39,806.806 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:52:39,831.831 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:52:39,862.862 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:52:39,863.863 INFO    ] No camera update needed
[2026-06-27 20:52:39,865.865 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:52:39,866.866 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:52:39,869.869 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:52:39,872.872 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:52:41,910.910 INFO    ] ================================================
[2026-06-27 20:52:41,925.925 INFO    ] Launching Daemon at Sat Jun 27 20:52:41 IST 2026
[2026-06-27 20:52:41,937.937 INFO    ] ================================================
[2026-06-27 20:52:42,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:52:42
[2026-06-27 20:52:42,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:52:42,737.737 INFO    ] Initializing speech engine...
[2026-06-27 20:52:42,746.746 INFO    ] 2026-06-27 20:52:42
[2026-06-27 20:52:42,952.952 INFO    ] 2026-06-27 20:52:42
[2026-06-27 20:52:42,981.981 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:52:43,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:52:43,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:52:43,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:52:43,377.377 INFO    ] time= 27/06/2026 20:52:43
[2026-06-27 20:52:43,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:52:43,405.405 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:52:43,472.472 INFO    ] No existing commands found in stream
[2026-06-27 20:52:48,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:52:48,479.479 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-27 20:52:51,416.416 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:52:51,418.418 INFO    ] Checking for system updates...
[2026-06-27 20:52:51,439.439 INFO    ] 200
[2026-06-27 20:52:51,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:52:51,473.473 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:52:51,474.474 INFO    ] No update needed
[2026-06-27 20:52:51,476.476 INFO    ] Checking for camera pi updates...
[2026-06-27 20:52:51,496.496 INFO    ] 200
[2026-06-27 20:52:51,498.498 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:52:51,527.527 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:52:51,571.571 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:52:51,573.573 INFO    ] No camera update needed
[2026-06-27 20:52:51,575.575 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:52:51,576.576 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:52:51,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:52:51,582.582 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:52:53,621.621 INFO    ] ================================================
[2026-06-27 20:52:53,637.637 INFO    ] Launching Daemon at Sat Jun 27 20:52:53 IST 2026
[2026-06-27 20:52:53,649.649 INFO    ] ================================================
[2026-06-27 20:52:53,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:52:53
[2026-06-27 20:52:54,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:52:54,427.427 INFO    ] Initializing speech engine...
[2026-06-27 20:52:54,435.435 INFO    ] 2026-06-27 20:52:54
[2026-06-27 20:52:54,649.649 INFO    ] 2026-06-27 20:52:54
[2026-06-27 20:52:54,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:52:54,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:52:54,993.993 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:52:55,486.486 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:52:55,488.488 INFO    ] time= 27/06/2026 20:52:55
[2026-06-27 20:52:55,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:52:55,490.490 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:52:55,548.548 INFO    ] No existing commands found in stream
[2026-06-27 20:53:00,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:53:00,559.559 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-27 20:53:01,879.879 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:53:01,880.880 INFO    ] Checking for system updates...
[2026-06-27 20:53:01,907.907 INFO    ] 200
[2026-06-27 20:53:01,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:53:01,947.947 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:53:01,949.949 INFO    ] No update needed
[2026-06-27 20:53:01,951.951 INFO    ] Checking for camera pi updates...
[2026-06-27 20:53:01,983.983 INFO    ] 200
[2026-06-27 20:53:01,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:53:02,028.028 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:53:02,068.068 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:53:02,069.069 INFO    ] No camera update needed
[2026-06-27 20:53:02,071.071 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:53:02,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:53:02,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:53:02,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:53:04,117.117 INFO    ] ================================================
[2026-06-27 20:53:04,133.133 INFO    ] Launching Daemon at Sat Jun 27 20:53:04 IST 2026
[2026-06-27 20:53:04,144.144 INFO    ] ================================================
[2026-06-27 20:53:04,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:53:04
[2026-06-27 20:53:04,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:53:04,961.961 INFO    ] Initializing speech engine...
[2026-06-27 20:53:04,972.972 INFO    ] 2026-06-27 20:53:04
[2026-06-27 20:53:05,177.177 INFO    ] 2026-06-27 20:53:05
[2026-06-27 20:53:05,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:53:05,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:53:05,405.405 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:53:05,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:53:05,607.607 INFO    ] time= 27/06/2026 20:53:05
[2026-06-27 20:53:05,631.631 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:53:05,637.637 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:53:05,724.724 INFO    ] No existing commands found in stream
[2026-06-27 20:53:10,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:53:10,739.739 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-27 20:53:11,362.362 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 20:53:11,364.364 INFO    ] Checking for system updates...
[2026-06-27 20:53:11,385.385 INFO    ] 200
[2026-06-27 20:53:11,386.386 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:53:11,417.417 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:53:11,418.418 INFO    ] No update needed
[2026-06-27 20:53:11,419.419 INFO    ] Checking for camera pi updates...
[2026-06-27 20:53:11,440.440 INFO    ] 200
[2026-06-27 20:53:11,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:53:11,465.465 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:53:11,510.510 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:53:11,512.512 INFO    ] No camera update needed
[2026-06-27 20:53:11,513.513 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:53:11,514.514 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:53:11,517.517 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:53:11,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:53:13,559.559 INFO    ] ================================================
[2026-06-27 20:53:13,575.575 INFO    ] Launching Daemon at Sat Jun 27 20:53:13 IST 2026
[2026-06-27 20:53:13,586.586 INFO    ] ================================================
[2026-06-27 20:53:13,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:53:13
[2026-06-27 20:53:14,222.222 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:53:14,359.359 INFO    ] Initializing speech engine...
[2026-06-27 20:53:14,368.368 INFO    ] 2026-06-27 20:53:14
[2026-06-27 20:53:14,574.574 INFO    ] 2026-06-27 20:53:14
[2026-06-27 20:53:14,604.604 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:53:14,786.786 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:53:14,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:53:14,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:53:14,991.991 INFO    ] time= 27/06/2026 20:53:14
[2026-06-27 20:53:15,015.015 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:53:15,020.020 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:53:15,087.087 INFO    ] No existing commands found in stream
[2026-06-27 20:53:20,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:53:20,099.099 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-27 20:53:24,317.317 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 20:53:24,318.318 INFO    ] Checking for system updates...
[2026-06-27 20:53:24,340.340 INFO    ] 200
[2026-06-27 20:53:24,341.341 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:53:24,372.372 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:53:24,373.373 INFO    ] No update needed
[2026-06-27 20:53:24,374.374 INFO    ] Checking for camera pi updates...
[2026-06-27 20:53:24,396.396 INFO    ] 200
[2026-06-27 20:53:24,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:53:24,422.422 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:53:24,466.466 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:53:24,467.467 INFO    ] No camera update needed
[2026-06-27 20:53:24,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:53:24,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:53:24,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:53:24,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:53:26,515.515 INFO    ] ================================================
[2026-06-27 20:53:26,531.531 INFO    ] Launching Daemon at Sat Jun 27 20:53:26 IST 2026
[2026-06-27 20:53:26,542.542 INFO    ] ================================================
[2026-06-27 20:53:26,885.885 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:53:26
[2026-06-27 20:53:27,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:53:27,346.346 INFO    ] Initializing speech engine...
[2026-06-27 20:53:27,352.352 INFO    ] 2026-06-27 20:53:27
[2026-06-27 20:53:27,557.557 INFO    ] 2026-06-27 20:53:27
[2026-06-27 20:53:27,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:53:27,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:53:27,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:53:27,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:53:27,978.978 INFO    ] time= 27/06/2026 20:53:27
[2026-06-27 20:53:28,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:53:28,007.007 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:53:28,074.074 INFO    ] No existing commands found in stream
[2026-06-27 20:53:33,084.084 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:53:33,087.087 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-27 20:53:34,851.851 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 20:53:34,852.852 INFO    ] Checking for system updates...
[2026-06-27 20:53:34,873.873 INFO    ] 200
[2026-06-27 20:53:34,875.875 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:53:34,905.905 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:53:34,907.907 INFO    ] No update needed
[2026-06-27 20:53:34,908.908 INFO    ] Checking for camera pi updates...
[2026-06-27 20:53:34,929.929 INFO    ] 200
[2026-06-27 20:53:34,930.930 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:53:34,957.957 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:53:35,005.005 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:53:35,007.007 INFO    ] No camera update needed
[2026-06-27 20:53:35,008.008 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:53:35,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:53:35,013.013 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:53:35,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:53:37,056.056 INFO    ] ================================================
[2026-06-27 20:53:37,071.071 INFO    ] Launching Daemon at Sat Jun 27 20:53:37 IST 2026
[2026-06-27 20:53:37,081.081 INFO    ] ================================================
[2026-06-27 20:53:37,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:53:37
[2026-06-27 20:53:37,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:53:37,895.895 INFO    ] Initializing speech engine...
[2026-06-27 20:53:37,904.904 INFO    ] 2026-06-27 20:53:37
[2026-06-27 20:53:38,108.108 INFO    ] 2026-06-27 20:53:38
[2026-06-27 20:53:38,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:53:38,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:53:38,328.328 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:53:38,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:53:38,516.516 INFO    ] time= 27/06/2026 20:53:38
[2026-06-27 20:53:38,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:53:38,554.554 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:53:38,620.620 INFO    ] No existing commands found in stream
[2026-06-27 20:53:43,629.629 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:53:43,632.632 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-27 20:53:45,488.488 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 20:53:45,489.489 INFO    ] Checking for system updates...
[2026-06-27 20:53:45,511.511 INFO    ] 200
[2026-06-27 20:53:45,512.512 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:53:45,542.542 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:53:45,544.544 INFO    ] No update needed
[2026-06-27 20:53:45,545.545 INFO    ] Checking for camera pi updates...
[2026-06-27 20:53:45,567.567 INFO    ] 200
[2026-06-27 20:53:45,568.568 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:53:45,592.592 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:53:45,641.641 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:53:45,642.642 INFO    ] No camera update needed
[2026-06-27 20:53:45,644.644 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:53:45,645.645 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:53:45,648.648 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:53:45,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:53:47,689.689 INFO    ] ================================================
[2026-06-27 20:53:47,704.704 INFO    ] Launching Daemon at Sat Jun 27 20:53:47 IST 2026
[2026-06-27 20:53:47,715.715 INFO    ] ================================================
[2026-06-27 20:53:48,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:53:48
[2026-06-27 20:53:48,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:53:48,497.497 INFO    ] Initializing speech engine...
[2026-06-27 20:53:48,502.502 INFO    ] 2026-06-27 20:53:48
[2026-06-27 20:53:48,705.705 INFO    ] 2026-06-27 20:53:48
[2026-06-27 20:53:48,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:53:48,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:53:48,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:53:49,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:53:49,125.125 INFO    ] time= 27/06/2026 20:53:49
[2026-06-27 20:53:49,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:53:49,153.153 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:53:49,218.218 INFO    ] No existing commands found in stream
[2026-06-27 20:53:54,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:53:54,229.229 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-27 20:53:57,663.663 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 20:53:57,665.665 INFO    ] Checking for system updates...
[2026-06-27 20:53:57,685.685 INFO    ] 200
[2026-06-27 20:53:57,687.687 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:53:57,724.724 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:53:57,725.725 INFO    ] No update needed
[2026-06-27 20:53:57,727.727 INFO    ] Checking for camera pi updates...
[2026-06-27 20:53:57,747.747 INFO    ] 200
[2026-06-27 20:53:57,748.748 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:53:57,772.772 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:53:57,817.817 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:53:57,818.818 INFO    ] No camera update needed
[2026-06-27 20:53:57,820.820 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:53:57,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:53:57,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:53:57,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:53:59,866.866 INFO    ] ================================================
[2026-06-27 20:53:59,881.881 INFO    ] Launching Daemon at Sat Jun 27 20:53:59 IST 2026
[2026-06-27 20:53:59,891.891 INFO    ] ================================================
[2026-06-27 20:54:00,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:54:00
[2026-06-27 20:54:00,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:54:00,686.686 INFO    ] Initializing speech engine...
[2026-06-27 20:54:00,698.698 INFO    ] 2026-06-27 20:54:00
[2026-06-27 20:54:00,904.904 INFO    ] 2026-06-27 20:54:00
[2026-06-27 20:54:00,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:54:01,189.189 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:54:01,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:54:01,410.410 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:54:01,419.419 INFO    ] time= 27/06/2026 20:54:01
[2026-06-27 20:54:01,433.433 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:54:01,436.436 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:54:01,615.615 INFO    ] No existing commands found in stream
[2026-06-27 20:54:06,624.624 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:54:06,626.626 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-27 20:54:10,149.149 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:54:10,151.151 INFO    ] Checking for system updates...
[2026-06-27 20:54:10,172.172 INFO    ] 200
[2026-06-27 20:54:10,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:54:10,206.206 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:54:10,208.208 INFO    ] No update needed
[2026-06-27 20:54:10,209.209 INFO    ] Checking for camera pi updates...
[2026-06-27 20:54:10,229.229 INFO    ] 200
[2026-06-27 20:54:10,231.231 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:54:10,255.255 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:54:10,297.297 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:54:10,298.298 INFO    ] No camera update needed
[2026-06-27 20:54:10,300.300 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:54:10,301.301 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:54:10,305.305 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:54:10,308.308 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:54:12,349.349 INFO    ] ================================================
[2026-06-27 20:54:12,365.365 INFO    ] Launching Daemon at Sat Jun 27 20:54:12 IST 2026
[2026-06-27 20:54:12,377.377 INFO    ] ================================================
[2026-06-27 20:54:12,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:54:12
[2026-06-27 20:54:13,040.040 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:54:13,180.180 INFO    ] Initializing speech engine...
[2026-06-27 20:54:13,190.190 INFO    ] 2026-06-27 20:54:13
[2026-06-27 20:54:13,396.396 INFO    ] 2026-06-27 20:54:13
[2026-06-27 20:54:13,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:54:13,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:54:13,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:54:13,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:54:13,808.808 INFO    ] time= 27/06/2026 20:54:13
[2026-06-27 20:54:13,839.839 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:54:13,841.841 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:54:13,913.913 INFO    ] No existing commands found in stream
[2026-06-27 20:54:18,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:54:18,926.926 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-27 20:54:22,966.966 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:54:22,967.967 INFO    ] Checking for system updates...
[2026-06-27 20:54:22,990.990 INFO    ] 200
[2026-06-27 20:54:22,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:54:23,021.021 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:54:23,023.023 INFO    ] No update needed
[2026-06-27 20:54:23,024.024 INFO    ] Checking for camera pi updates...
[2026-06-27 20:54:23,044.044 INFO    ] 200
[2026-06-27 20:54:23,045.045 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:54:23,069.069 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:54:23,108.108 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:54:23,110.110 INFO    ] No camera update needed
[2026-06-27 20:54:23,111.111 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:54:23,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:54:23,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:54:23,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:54:25,157.157 INFO    ] ================================================
[2026-06-27 20:54:25,172.172 INFO    ] Launching Daemon at Sat Jun 27 20:54:25 IST 2026
[2026-06-27 20:54:25,184.184 INFO    ] ================================================
[2026-06-27 20:54:25,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:54:25
[2026-06-27 20:54:25,869.869 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:54:26,014.014 INFO    ] Initializing speech engine...
[2026-06-27 20:54:26,020.020 INFO    ] 2026-06-27 20:54:26
[2026-06-27 20:54:26,224.224 INFO    ] 2026-06-27 20:54:26
[2026-06-27 20:54:26,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:54:26,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:54:26,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:54:26,576.576 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:54:26,643.643 INFO    ] time= 27/06/2026 20:54:26
[2026-06-27 20:54:26,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:54:26,672.672 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:54:26,737.737 INFO    ] No existing commands found in stream
[2026-06-27 20:54:31,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:54:31,749.749 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-27 20:54:32,936.936 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 20:54:32,938.938 INFO    ] Checking for system updates...
[2026-06-27 20:54:32,959.959 INFO    ] 200
[2026-06-27 20:54:32,960.960 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:54:32,992.992 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:54:32,993.993 INFO    ] No update needed
[2026-06-27 20:54:32,994.994 INFO    ] Checking for camera pi updates...
[2026-06-27 20:54:33,015.015 INFO    ] 200
[2026-06-27 20:54:33,017.017 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:54:33,040.040 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:54:33,065.065 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:54:33,067.067 INFO    ] No camera update needed
[2026-06-27 20:54:33,068.068 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:54:33,069.069 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:54:33,072.072 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:54:33,075.075 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:54:35,114.114 INFO    ] ================================================
[2026-06-27 20:54:35,129.129 INFO    ] Launching Daemon at Sat Jun 27 20:54:35 IST 2026
[2026-06-27 20:54:35,140.140 INFO    ] ================================================
[2026-06-27 20:54:35,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:54:35
[2026-06-27 20:54:35,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:54:35,966.966 INFO    ] Initializing speech engine...
[2026-06-27 20:54:35,971.971 INFO    ] 2026-06-27 20:54:35
[2026-06-27 20:54:36,174.174 INFO    ] 2026-06-27 20:54:36
[2026-06-27 20:54:36,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:54:36,388.388 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:54:36,398.398 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:54:36,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:54:36,615.615 INFO    ] time= 27/06/2026 20:54:36
[2026-06-27 20:54:36,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:54:36,623.623 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:54:36,690.690 INFO    ] No existing commands found in stream
[2026-06-27 20:54:41,723.723 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:54:41,725.725 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-27 20:54:43,487.487 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:54:43,488.488 INFO    ] Checking for system updates...
[2026-06-27 20:54:43,509.509 INFO    ] 200
[2026-06-27 20:54:43,510.510 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:54:43,541.541 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:54:43,542.542 INFO    ] No update needed
[2026-06-27 20:54:43,543.543 INFO    ] Checking for camera pi updates...
[2026-06-27 20:54:43,565.565 INFO    ] 200
[2026-06-27 20:54:43,567.567 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:54:43,596.596 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:54:43,641.641 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:54:43,643.643 INFO    ] No camera update needed
[2026-06-27 20:54:43,645.645 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:54:43,646.646 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:54:43,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:54:43,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:54:45,686.686 INFO    ] ================================================
[2026-06-27 20:54:45,696.696 INFO    ] Launching Daemon at Sat Jun 27 20:54:45 IST 2026
[2026-06-27 20:54:45,703.703 INFO    ] ================================================
[2026-06-27 20:54:46,037.037 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:54:46
[2026-06-27 20:54:46,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:54:46,507.507 INFO    ] Initializing speech engine...
[2026-06-27 20:54:46,511.511 INFO    ] 2026-06-27 20:54:46
[2026-06-27 20:54:46,748.748 INFO    ] 2026-06-27 20:54:46
[2026-06-27 20:54:46,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:54:46,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:54:46,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:54:47,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:54:47,191.191 INFO    ] time= 27/06/2026 20:54:47
[2026-06-27 20:54:47,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:54:47,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:54:47,305.305 INFO    ] No existing commands found in stream
[2026-06-27 20:54:52,318.318 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:54:52,320.320 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-27 20:54:56,051.051 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:54:56,053.053 INFO    ] Checking for system updates...
[2026-06-27 20:54:56,073.073 INFO    ] 200
[2026-06-27 20:54:56,075.075 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:54:56,105.105 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:54:56,106.106 INFO    ] No update needed
[2026-06-27 20:54:56,108.108 INFO    ] Checking for camera pi updates...
[2026-06-27 20:54:56,127.127 INFO    ] 200
[2026-06-27 20:54:56,128.128 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:54:56,155.155 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:54:56,209.209 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:54:56,211.211 INFO    ] No camera update needed
[2026-06-27 20:54:56,212.212 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:54:56,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:54:56,217.217 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:54:56,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:54:58,260.260 INFO    ] ================================================
[2026-06-27 20:54:58,275.275 INFO    ] Launching Daemon at Sat Jun 27 20:54:58 IST 2026
[2026-06-27 20:54:58,286.286 INFO    ] ================================================
[2026-06-27 20:54:58,662.662 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:54:58
[2026-06-27 20:54:59,007.007 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:54:59,167.167 INFO    ] Initializing speech engine...
[2026-06-27 20:54:59,171.171 INFO    ] 2026-06-27 20:54:59
[2026-06-27 20:54:59,381.381 INFO    ] 2026-06-27 20:54:59
[2026-06-27 20:54:59,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:54:59,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:54:59,604.604 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:54:59,743.743 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:54:59,812.812 INFO    ] time= 27/06/2026 20:54:59
[2026-06-27 20:54:59,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:54:59,843.843 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:54:59,911.911 INFO    ] No existing commands found in stream
[2026-06-27 20:55:04,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:55:04,929.929 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-27 20:55:06,747.747 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 20:55:06,785.785 INFO    ] Checking for system updates...
[2026-06-27 20:55:06,806.806 INFO    ] 200
[2026-06-27 20:55:06,808.808 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:55:06,838.838 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:55:06,839.839 INFO    ] No update needed
[2026-06-27 20:55:06,841.841 INFO    ] Checking for camera pi updates...
[2026-06-27 20:55:06,860.860 INFO    ] 200
[2026-06-27 20:55:06,861.861 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:55:06,885.885 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:55:06,928.928 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:55:06,930.930 INFO    ] No camera update needed
[2026-06-27 20:55:06,931.931 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:55:06,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:55:06,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:55:06,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:55:08,976.976 INFO    ] ================================================
[2026-06-27 20:55:08,992.992 INFO    ] Launching Daemon at Sat Jun 27 20:55:08 IST 2026
[2026-06-27 20:55:09,003.003 INFO    ] ================================================
[2026-06-27 20:55:09,351.351 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:55:09
[2026-06-27 20:55:09,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:55:09,800.800 INFO    ] Initializing speech engine...
[2026-06-27 20:55:09,810.810 INFO    ] 2026-06-27 20:55:09
[2026-06-27 20:55:10,015.015 INFO    ] 2026-06-27 20:55:09
[2026-06-27 20:55:10,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:55:10,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:55:10,257.257 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:55:10,433.433 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:55:10,455.455 INFO    ] time= 27/06/2026 20:55:10
[2026-06-27 20:55:10,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:55:10,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:55:10,528.528 INFO    ] No existing commands found in stream
[2026-06-27 20:55:15,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:55:15,541.541 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-27 20:55:17,427.427 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:55:17,428.428 INFO    ] Checking for system updates...
[2026-06-27 20:55:17,451.451 INFO    ] 200
[2026-06-27 20:55:17,452.452 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:55:17,484.484 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:55:17,485.485 INFO    ] No update needed
[2026-06-27 20:55:17,487.487 INFO    ] Checking for camera pi updates...
[2026-06-27 20:55:17,509.509 INFO    ] 200
[2026-06-27 20:55:17,510.510 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:55:17,538.538 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:55:17,584.584 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:55:17,585.585 INFO    ] No camera update needed
[2026-06-27 20:55:17,586.586 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:55:17,587.587 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:55:17,590.590 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:55:17,593.593 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:55:19,633.633 INFO    ] ================================================
[2026-06-27 20:55:19,648.648 INFO    ] Launching Daemon at Sat Jun 27 20:55:19 IST 2026
[2026-06-27 20:55:19,658.658 INFO    ] ================================================
[2026-06-27 20:55:20,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:55:20
[2026-06-27 20:55:20,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:55:20,457.457 INFO    ] Initializing speech engine...
[2026-06-27 20:55:20,460.460 INFO    ] 2026-06-27 20:55:20
[2026-06-27 20:55:20,679.679 INFO    ] 2026-06-27 20:55:20
[2026-06-27 20:55:20,708.708 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:55:20,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:55:20,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:55:21,035.035 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:55:21,104.104 INFO    ] time= 27/06/2026 20:55:21
[2026-06-27 20:55:21,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:55:21,135.135 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:55:21,203.203 INFO    ] No existing commands found in stream
[2026-06-27 20:55:26,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:55:26,215.215 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-27 20:55:28,351.351 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 20:55:28,352.352 INFO    ] Checking for system updates...
[2026-06-27 20:55:28,374.374 INFO    ] 200
[2026-06-27 20:55:28,375.375 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:55:28,409.409 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:55:28,411.411 INFO    ] No update needed
[2026-06-27 20:55:28,412.412 INFO    ] Checking for camera pi updates...
[2026-06-27 20:55:28,432.432 INFO    ] 200
[2026-06-27 20:55:28,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:55:28,458.458 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:55:28,499.499 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:55:28,501.501 INFO    ] No camera update needed
[2026-06-27 20:55:28,502.502 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:55:28,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:55:28,507.507 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:55:28,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:55:30,552.552 INFO    ] ================================================
[2026-06-27 20:55:30,568.568 INFO    ] Launching Daemon at Sat Jun 27 20:55:30 IST 2026
[2026-06-27 20:55:30,579.579 INFO    ] ================================================
[2026-06-27 20:55:30,941.941 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:55:30
[2026-06-27 20:55:31,281.281 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:55:31,436.436 INFO    ] Initializing speech engine...
[2026-06-27 20:55:31,439.439 INFO    ] 2026-06-27 20:55:31
[2026-06-27 20:55:31,650.650 INFO    ] 2026-06-27 20:55:31
[2026-06-27 20:55:31,679.679 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:55:31,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:55:31,894.894 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:55:32,028.028 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:55:32,112.112 INFO    ] time= 27/06/2026 20:55:32
[2026-06-27 20:55:32,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:55:32,147.147 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:55:32,218.218 INFO    ] No existing commands found in stream
[2026-06-27 20:55:37,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:55:37,256.256 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-27 20:55:41,475.475 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 20:55:41,476.476 INFO    ] Checking for system updates...
[2026-06-27 20:55:41,497.497 INFO    ] 200
[2026-06-27 20:55:41,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:55:41,530.530 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:55:41,531.531 INFO    ] No update needed
[2026-06-27 20:55:41,532.532 INFO    ] Checking for camera pi updates...
[2026-06-27 20:55:41,553.553 INFO    ] 200
[2026-06-27 20:55:41,555.555 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:55:41,581.581 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:55:41,630.630 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:55:41,631.631 INFO    ] No camera update needed
[2026-06-27 20:55:41,632.632 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:55:41,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:55:41,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:55:41,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:55:43,679.679 INFO    ] ================================================
[2026-06-27 20:55:43,694.694 INFO    ] Launching Daemon at Sat Jun 27 20:55:43 IST 2026
[2026-06-27 20:55:43,705.705 INFO    ] ================================================
[2026-06-27 20:55:44,042.042 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:55:44
[2026-06-27 20:55:44,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:55:44,487.487 INFO    ] Initializing speech engine...
[2026-06-27 20:55:44,491.491 INFO    ] 2026-06-27 20:55:44
[2026-06-27 20:55:44,722.722 INFO    ] 2026-06-27 20:55:44
[2026-06-27 20:55:44,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:55:44,887.887 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:55:44,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:55:45,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:55:45,172.172 INFO    ] time= 27/06/2026 20:55:45
[2026-06-27 20:55:45,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:55:45,207.207 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:55:45,285.285 INFO    ] No existing commands found in stream
[2026-06-27 20:55:50,294.294 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:55:50,297.297 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-27 20:55:51,370.370 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 20:55:51,372.372 INFO    ] Checking for system updates...
[2026-06-27 20:55:51,392.392 INFO    ] 200
[2026-06-27 20:55:51,394.394 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:55:51,424.424 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:55:51,426.426 INFO    ] No update needed
[2026-06-27 20:55:51,427.427 INFO    ] Checking for camera pi updates...
[2026-06-27 20:55:51,448.448 INFO    ] 200
[2026-06-27 20:55:51,450.450 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:55:51,473.473 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:55:51,517.517 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:55:51,518.518 INFO    ] No camera update needed
[2026-06-27 20:55:51,520.520 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:55:51,521.521 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:55:51,524.524 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:55:51,527.527 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:55:53,568.568 INFO    ] ================================================
[2026-06-27 20:55:53,583.583 INFO    ] Launching Daemon at Sat Jun 27 20:55:53 IST 2026
[2026-06-27 20:55:53,594.594 INFO    ] ================================================
[2026-06-27 20:55:53,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:55:53
[2026-06-27 20:55:54,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:55:54,409.409 INFO    ] Initializing speech engine...
[2026-06-27 20:55:54,414.414 INFO    ] 2026-06-27 20:55:54
[2026-06-27 20:55:54,617.617 INFO    ] 2026-06-27 20:55:54
[2026-06-27 20:55:54,645.645 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:55:54,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:55:54,833.833 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:55:54,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:55:55,026.026 INFO    ] time= 27/06/2026 20:55:54
[2026-06-27 20:55:55,058.058 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:55:55,064.064 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:55:55,130.130 INFO    ] No existing commands found in stream
[2026-06-27 20:56:00,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:56:00,142.142 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-27 20:56:04,007.007 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 20:56:04,008.008 INFO    ] Checking for system updates...
[2026-06-27 20:56:04,029.029 INFO    ] 200
[2026-06-27 20:56:04,030.030 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:56:04,061.061 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:56:04,062.062 INFO    ] No update needed
[2026-06-27 20:56:04,063.063 INFO    ] Checking for camera pi updates...
[2026-06-27 20:56:04,083.083 INFO    ] 200
[2026-06-27 20:56:04,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:56:04,108.108 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:56:04,156.156 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:56:04,157.157 INFO    ] No camera update needed
[2026-06-27 20:56:04,158.158 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:56:04,159.159 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:56:04,162.162 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:56:04,165.165 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:56:06,203.203 INFO    ] ================================================
[2026-06-27 20:56:06,218.218 INFO    ] Launching Daemon at Sat Jun 27 20:56:06 IST 2026
[2026-06-27 20:56:06,229.229 INFO    ] ================================================
[2026-06-27 20:56:06,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:56:06
[2026-06-27 20:56:06,937.937 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:56:07,089.089 INFO    ] Initializing speech engine...
[2026-06-27 20:56:07,094.094 INFO    ] 2026-06-27 20:56:07
[2026-06-27 20:56:07,304.304 INFO    ] 2026-06-27 20:56:07
[2026-06-27 20:56:07,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:56:07,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:56:07,544.544 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:56:07,726.726 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:56:07,748.748 INFO    ] time= 27/06/2026 20:56:07
[2026-06-27 20:56:07,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:56:07,755.755 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:56:08,102.102 INFO    ] No existing commands found in stream
[2026-06-27 20:56:13,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:56:13,120.120 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-27 20:56:14,309.309 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:56:14,311.311 INFO    ] Checking for system updates...
[2026-06-27 20:56:14,332.332 INFO    ] 200
[2026-06-27 20:56:14,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:56:14,367.367 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:56:14,369.369 INFO    ] No update needed
[2026-06-27 20:56:14,370.370 INFO    ] Checking for camera pi updates...
[2026-06-27 20:56:14,391.391 INFO    ] 200
[2026-06-27 20:56:14,393.393 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:56:14,419.419 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:56:14,567.567 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:56:14,569.569 INFO    ] No camera update needed
[2026-06-27 20:56:14,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:56:14,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:56:14,574.574 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:56:14,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:56:16,615.615 INFO    ] ================================================
[2026-06-27 20:56:16,630.630 INFO    ] Launching Daemon at Sat Jun 27 20:56:16 IST 2026
[2026-06-27 20:56:16,641.641 INFO    ] ================================================
[2026-06-27 20:56:16,990.990 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:56:16
[2026-06-27 20:56:17,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:56:17,435.435 INFO    ] Initializing speech engine...
[2026-06-27 20:56:17,443.443 INFO    ] 2026-06-27 20:56:17
[2026-06-27 20:56:17,657.657 INFO    ] 2026-06-27 20:56:17
[2026-06-27 20:56:17,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:56:17,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:56:17,882.882 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:56:18,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:56:18,052.052 INFO    ] time= 27/06/2026 20:56:18
[2026-06-27 20:56:18,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:56:18,108.108 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:56:18,181.181 INFO    ] No existing commands found in stream
[2026-06-27 20:56:23,190.190 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:56:23,193.193 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-27 20:56:26,965.965 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 20:56:26,966.966 INFO    ] Checking for system updates...
[2026-06-27 20:56:26,987.987 INFO    ] 200
[2026-06-27 20:56:26,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:56:27,019.019 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:56:27,020.020 INFO    ] No update needed
[2026-06-27 20:56:27,021.021 INFO    ] Checking for camera pi updates...
[2026-06-27 20:56:27,043.043 INFO    ] 200
[2026-06-27 20:56:27,044.044 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:56:27,069.069 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:56:27,111.111 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:56:27,113.113 INFO    ] No camera update needed
[2026-06-27 20:56:27,114.114 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:56:27,115.115 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:56:27,118.118 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:56:27,121.121 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:56:29,160.160 INFO    ] ================================================
[2026-06-27 20:56:29,175.175 INFO    ] Launching Daemon at Sat Jun 27 20:56:29 IST 2026
[2026-06-27 20:56:29,186.186 INFO    ] ================================================
[2026-06-27 20:56:29,548.548 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:56:29
[2026-06-27 20:56:29,893.893 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:56:30,045.045 INFO    ] Initializing speech engine...
[2026-06-27 20:56:30,050.050 INFO    ] 2026-06-27 20:56:30
[2026-06-27 20:56:30,261.261 INFO    ] 2026-06-27 20:56:30
[2026-06-27 20:56:30,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:56:30,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:56:30,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:56:30,632.632 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:56:30,682.682 INFO    ] time= 27/06/2026 20:56:30
[2026-06-27 20:56:30,703.703 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:56:30,709.709 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:56:30,776.776 INFO    ] No existing commands found in stream
[2026-06-27 20:56:35,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:56:35,794.794 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-27 20:56:36,533.533 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 20:56:36,535.535 INFO    ] Checking for system updates...
[2026-06-27 20:56:36,556.556 INFO    ] 200
[2026-06-27 20:56:36,558.558 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:56:36,588.588 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:56:36,590.590 INFO    ] No update needed
[2026-06-27 20:56:36,591.591 INFO    ] Checking for camera pi updates...
[2026-06-27 20:56:36,611.611 INFO    ] 200
[2026-06-27 20:56:36,613.613 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:56:36,637.637 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:56:36,685.685 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:56:36,686.686 INFO    ] No camera update needed
[2026-06-27 20:56:36,688.688 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:56:36,689.689 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:56:36,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:56:36,695.695 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:56:38,736.736 INFO    ] ================================================
[2026-06-27 20:56:38,751.751 INFO    ] Launching Daemon at Sat Jun 27 20:56:38 IST 2026
[2026-06-27 20:56:38,762.762 INFO    ] ================================================
[2026-06-27 20:56:39,131.131 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:56:39
[2026-06-27 20:56:39,445.445 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:56:39,578.578 INFO    ] Initializing speech engine...
[2026-06-27 20:56:39,582.582 INFO    ] 2026-06-27 20:56:39
[2026-06-27 20:56:39,775.775 INFO    ] 2026-06-27 20:56:39
[2026-06-27 20:56:39,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:56:40,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:56:40,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:56:40,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:56:40,247.247 INFO    ] time= 27/06/2026 20:56:40
[2026-06-27 20:56:40,293.293 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:56:40,304.304 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:56:40,383.383 INFO    ] No existing commands found in stream
[2026-06-27 20:56:45,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:56:45,395.395 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-27 20:56:49,940.940 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 20:56:49,941.941 INFO    ] Checking for system updates...
[2026-06-27 20:56:49,963.963 INFO    ] 200
[2026-06-27 20:56:49,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:56:49,998.998 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:56:49,999.999 INFO    ] No update needed
[2026-06-27 20:56:50,000.000 INFO    ] Checking for camera pi updates...
[2026-06-27 20:56:50,021.021 INFO    ] 200
[2026-06-27 20:56:50,023.023 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:56:50,048.048 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:56:50,094.094 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:56:50,096.096 INFO    ] No camera update needed
[2026-06-27 20:56:50,097.097 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:56:50,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:56:50,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:56:50,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:56:52,142.142 INFO    ] ================================================
[2026-06-27 20:56:52,157.157 INFO    ] Launching Daemon at Sat Jun 27 20:56:52 IST 2026
[2026-06-27 20:56:52,169.169 INFO    ] ================================================
[2026-06-27 20:56:52,508.508 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:56:52
[2026-06-27 20:56:52,859.859 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:56:53,012.012 INFO    ] Initializing speech engine...
[2026-06-27 20:56:53,018.018 INFO    ] 2026-06-27 20:56:53
[2026-06-27 20:56:53,226.226 INFO    ] 2026-06-27 20:56:53
[2026-06-27 20:56:53,257.257 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:56:53,449.449 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:56:53,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:56:53,602.602 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:56:53,651.651 INFO    ] time= 27/06/2026 20:56:53
[2026-06-27 20:56:53,675.675 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:56:53,680.680 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:56:53,748.748 INFO    ] No existing commands found in stream
[2026-06-27 20:56:58,763.763 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:56:58,766.766 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-27 20:57:02,197.197 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 20:57:02,198.198 INFO    ] Checking for system updates...
[2026-06-27 20:57:02,221.221 INFO    ] 200
[2026-06-27 20:57:02,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:57:02,253.253 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:57:02,255.255 INFO    ] No update needed
[2026-06-27 20:57:02,257.257 INFO    ] Checking for camera pi updates...
[2026-06-27 20:57:02,280.280 INFO    ] 200
[2026-06-27 20:57:02,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:57:02,309.309 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:57:02,339.339 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:57:02,340.340 INFO    ] No camera update needed
[2026-06-27 20:57:02,341.341 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:57:02,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:57:02,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:57:02,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:57:04,387.387 INFO    ] ================================================
[2026-06-27 20:57:04,402.402 INFO    ] Launching Daemon at Sat Jun 27 20:57:04 IST 2026
[2026-06-27 20:57:04,415.415 INFO    ] ================================================
[2026-06-27 20:57:04,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:57:04
[2026-06-27 20:57:05,052.052 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:57:05,185.185 INFO    ] Initializing speech engine...
[2026-06-27 20:57:05,198.198 INFO    ] 2026-06-27 20:57:05
[2026-06-27 20:57:05,382.382 INFO    ] 2026-06-27 20:57:05
[2026-06-27 20:57:05,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:57:05,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:57:05,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:57:05,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:57:05,832.832 INFO    ] time= 27/06/2026 20:57:05
[2026-06-27 20:57:05,863.863 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:57:05,869.869 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:57:05,937.937 INFO    ] No existing commands found in stream
[2026-06-27 20:57:10,945.945 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:57:10,948.948 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-27 20:57:13,231.231 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 20:57:13,232.232 INFO    ] Checking for system updates...
[2026-06-27 20:57:13,253.253 INFO    ] 200
[2026-06-27 20:57:13,255.255 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:57:13,287.287 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:57:13,288.288 INFO    ] No update needed
[2026-06-27 20:57:13,289.289 INFO    ] Checking for camera pi updates...
[2026-06-27 20:57:13,310.310 INFO    ] 200
[2026-06-27 20:57:13,311.311 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:57:13,336.336 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:57:13,396.396 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:57:13,398.398 INFO    ] No camera update needed
[2026-06-27 20:57:13,399.399 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:57:13,400.400 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:57:13,403.403 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:57:13,406.406 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:57:15,448.448 INFO    ] ================================================
[2026-06-27 20:57:15,464.464 INFO    ] Launching Daemon at Sat Jun 27 20:57:15 IST 2026
[2026-06-27 20:57:15,475.475 INFO    ] ================================================
[2026-06-27 20:57:15,827.827 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:57:15
[2026-06-27 20:57:16,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:57:16,315.315 INFO    ] Initializing speech engine...
[2026-06-27 20:57:16,321.321 INFO    ] 2026-06-27 20:57:16
[2026-06-27 20:57:16,531.531 INFO    ] 2026-06-27 20:57:16
[2026-06-27 20:57:16,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:57:16,747.747 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:57:16,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:57:16,902.902 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:57:16,956.956 INFO    ] time= 27/06/2026 20:57:16
[2026-06-27 20:57:16,979.979 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:57:16,985.985 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:57:17,052.052 INFO    ] No existing commands found in stream
[2026-06-27 20:57:22,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:57:22,070.070 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-27 20:57:23,464.464 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:57:23,466.466 INFO    ] Checking for system updates...
[2026-06-27 20:57:23,487.487 INFO    ] 200
[2026-06-27 20:57:23,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:57:23,519.519 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:57:23,520.520 INFO    ] No update needed
[2026-06-27 20:57:23,522.522 INFO    ] Checking for camera pi updates...
[2026-06-27 20:57:23,542.542 INFO    ] 200
[2026-06-27 20:57:23,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:57:23,567.567 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:57:23,612.612 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:57:23,614.614 INFO    ] No camera update needed
[2026-06-27 20:57:23,615.615 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:57:23,616.616 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:57:23,619.619 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:57:23,622.622 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:57:25,661.661 INFO    ] ================================================
[2026-06-27 20:57:25,676.676 INFO    ] Launching Daemon at Sat Jun 27 20:57:25 IST 2026
[2026-06-27 20:57:25,688.688 INFO    ] ================================================
[2026-06-27 20:57:26,053.053 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:57:26
[2026-06-27 20:57:26,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:57:26,497.497 INFO    ] Initializing speech engine...
[2026-06-27 20:57:26,509.509 INFO    ] 2026-06-27 20:57:26
[2026-06-27 20:57:26,715.715 INFO    ] 2026-06-27 20:57:26
[2026-06-27 20:57:26,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:57:26,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:57:26,929.929 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:57:27,058.058 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:57:27,109.109 INFO    ] time= 27/06/2026 20:57:27
[2026-06-27 20:57:27,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:57:27,158.158 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:57:27,227.227 INFO    ] No existing commands found in stream
[2026-06-27 20:57:32,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:57:32,240.240 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-27 20:57:36,204.204 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 20:57:36,205.205 INFO    ] Checking for system updates...
[2026-06-27 20:57:36,226.226 INFO    ] 200
[2026-06-27 20:57:36,227.227 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:57:36,260.260 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:57:36,261.261 INFO    ] No update needed
[2026-06-27 20:57:36,262.262 INFO    ] Checking for camera pi updates...
[2026-06-27 20:57:36,283.283 INFO    ] 200
[2026-06-27 20:57:36,284.284 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:57:36,308.308 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:57:36,350.350 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:57:36,351.351 INFO    ] No camera update needed
[2026-06-27 20:57:36,353.353 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:57:36,354.354 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:57:36,357.357 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:57:36,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:57:38,400.400 INFO    ] ================================================
[2026-06-27 20:57:38,416.416 INFO    ] Launching Daemon at Sat Jun 27 20:57:38 IST 2026
[2026-06-27 20:57:38,427.427 INFO    ] ================================================
[2026-06-27 20:57:38,799.799 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:57:38
[2026-06-27 20:57:39,118.118 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:57:39,256.256 INFO    ] Initializing speech engine...
[2026-06-27 20:57:39,265.265 INFO    ] 2026-06-27 20:57:39
[2026-06-27 20:57:39,472.472 INFO    ] 2026-06-27 20:57:39
[2026-06-27 20:57:39,500.500 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:57:39,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:57:39,692.692 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:57:39,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:57:39,888.888 INFO    ] time= 27/06/2026 20:57:39
[2026-06-27 20:57:39,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:57:39,921.921 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:57:39,987.987 INFO    ] No existing commands found in stream
[2026-06-27 20:57:44,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:57:45,000.000 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-27 20:57:46,474.474 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:57:46,476.476 INFO    ] Checking for system updates...
[2026-06-27 20:57:46,498.498 INFO    ] 200
[2026-06-27 20:57:46,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:57:46,531.531 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:57:46,533.533 INFO    ] No update needed
[2026-06-27 20:57:46,534.534 INFO    ] Checking for camera pi updates...
[2026-06-27 20:57:46,555.555 INFO    ] 200
[2026-06-27 20:57:46,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:57:46,580.580 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:57:46,630.630 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:57:46,631.631 INFO    ] No camera update needed
[2026-06-27 20:57:46,633.633 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:57:46,634.634 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:57:46,637.637 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:57:46,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:57:48,678.678 INFO    ] ================================================
[2026-06-27 20:57:48,695.695 INFO    ] Launching Daemon at Sat Jun 27 20:57:48 IST 2026
[2026-06-27 20:57:48,706.706 INFO    ] ================================================
[2026-06-27 20:57:49,073.073 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:57:49
[2026-06-27 20:57:49,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:57:49,515.515 INFO    ] Initializing speech engine...
[2026-06-27 20:57:49,523.523 INFO    ] 2026-06-27 20:57:49
[2026-06-27 20:57:49,736.736 INFO    ] 2026-06-27 20:57:49
[2026-06-27 20:57:49,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:57:49,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:57:49,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:57:50,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:57:50,137.137 INFO    ] time= 27/06/2026 20:57:50
[2026-06-27 20:57:50,180.180 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:57:50,187.187 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:57:50,253.253 INFO    ] No existing commands found in stream
[2026-06-27 20:57:55,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:57:55,266.266 INFO    ] Waiting 2.65 seconds before fallback handling...
[2026-06-27 20:57:58,848.848 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 20:57:58,851.851 INFO    ] Checking for system updates...
[2026-06-27 20:57:58,887.887 INFO    ] 200
[2026-06-27 20:57:58,890.890 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:57:58,950.950 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:57:58,952.952 INFO    ] No update needed
[2026-06-27 20:57:58,955.955 INFO    ] Checking for camera pi updates...
[2026-06-27 20:57:58,991.991 INFO    ] 200
[2026-06-27 20:57:58,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:57:59,028.028 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:57:59,076.076 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:57:59,078.078 INFO    ] No camera update needed
[2026-06-27 20:57:59,079.079 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:57:59,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:57:59,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:57:59,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:58:01,124.124 INFO    ] ================================================
[2026-06-27 20:58:01,140.140 INFO    ] Launching Daemon at Sat Jun 27 20:58:01 IST 2026
[2026-06-27 20:58:01,151.151 INFO    ] ================================================
[2026-06-27 20:58:01,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:58:01
[2026-06-27 20:58:01,977.977 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:58:02,157.157 INFO    ] Initializing speech engine...
[2026-06-27 20:58:02,175.175 INFO    ] 2026-06-27 20:58:02
[2026-06-27 20:58:02,417.417 INFO    ] 2026-06-27 20:58:02
[2026-06-27 20:58:02,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:58:02,600.600 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:58:02,637.637 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:58:02,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:58:02,827.827 INFO    ] time= 27/06/2026 20:58:02
[2026-06-27 20:58:02,870.870 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:58:02,876.876 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:58:02,951.951 INFO    ] No existing commands found in stream
[2026-06-27 20:58:07,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:58:07,965.965 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-27 20:58:09,887.887 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 20:58:09,888.888 INFO    ] Checking for system updates...
[2026-06-27 20:58:09,909.909 INFO    ] 200
[2026-06-27 20:58:09,910.910 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:58:09,941.941 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:58:09,942.942 INFO    ] No update needed
[2026-06-27 20:58:09,943.943 INFO    ] Checking for camera pi updates...
[2026-06-27 20:58:09,964.964 INFO    ] 200
[2026-06-27 20:58:09,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:58:09,990.990 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:58:10,033.033 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:58:10,035.035 INFO    ] No camera update needed
[2026-06-27 20:58:10,036.036 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:58:10,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:58:10,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:58:10,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:58:12,084.084 INFO    ] ================================================
[2026-06-27 20:58:12,099.099 INFO    ] Launching Daemon at Sat Jun 27 20:58:12 IST 2026
[2026-06-27 20:58:12,110.110 INFO    ] ================================================
[2026-06-27 20:58:12,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:58:12
[2026-06-27 20:58:12,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:58:12,967.967 INFO    ] Initializing speech engine...
[2026-06-27 20:58:12,971.971 INFO    ] 2026-06-27 20:58:12
[2026-06-27 20:58:13,177.177 INFO    ] 2026-06-27 20:58:13
[2026-06-27 20:58:13,207.207 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:58:13,393.393 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:58:13,401.401 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:58:13,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:58:13,601.601 INFO    ] time= 27/06/2026 20:58:13
[2026-06-27 20:58:13,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:58:13,630.630 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:58:13,697.697 INFO    ] No existing commands found in stream
[2026-06-27 20:58:18,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:58:18,709.709 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-27 20:58:23,942.942 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 20:58:23,944.944 INFO    ] Checking for system updates...
[2026-06-27 20:58:23,966.966 INFO    ] 200
[2026-06-27 20:58:23,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:58:24,002.002 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:58:24,003.003 INFO    ] No update needed
[2026-06-27 20:58:24,005.005 INFO    ] Checking for camera pi updates...
[2026-06-27 20:58:24,027.027 INFO    ] 200
[2026-06-27 20:58:24,029.029 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:58:24,054.054 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:58:24,194.194 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:58:24,195.195 INFO    ] No camera update needed
[2026-06-27 20:58:24,197.197 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:58:24,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:58:24,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:58:24,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:58:26,244.244 INFO    ] ================================================
[2026-06-27 20:58:26,260.260 INFO    ] Launching Daemon at Sat Jun 27 20:58:26 IST 2026
[2026-06-27 20:58:26,271.271 INFO    ] ================================================
[2026-06-27 20:58:26,602.602 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:58:26
[2026-06-27 20:58:26,913.913 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:58:27,043.043 INFO    ] Initializing speech engine...
[2026-06-27 20:58:27,056.056 INFO    ] 2026-06-27 20:58:27
[2026-06-27 20:58:27,265.265 INFO    ] 2026-06-27 20:58:27
[2026-06-27 20:58:27,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:58:27,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:58:27,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:58:27,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:58:27,711.711 INFO    ] time= 27/06/2026 20:58:27
[2026-06-27 20:58:27,713.713 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:58:27,718.718 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:58:27,786.786 INFO    ] No existing commands found in stream
[2026-06-27 20:58:32,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:58:32,798.798 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-27 20:58:33,464.464 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 20:58:33,466.466 INFO    ] Checking for system updates...
[2026-06-27 20:58:33,488.488 INFO    ] 200
[2026-06-27 20:58:33,489.489 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:58:33,519.519 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:58:33,521.521 INFO    ] No update needed
[2026-06-27 20:58:33,522.522 INFO    ] Checking for camera pi updates...
[2026-06-27 20:58:33,542.542 INFO    ] 200
[2026-06-27 20:58:33,544.544 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:58:33,569.569 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:58:33,627.627 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:58:33,628.628 INFO    ] No camera update needed
[2026-06-27 20:58:33,630.630 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:58:33,631.631 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:58:33,634.634 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:58:33,637.637 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:58:35,677.677 INFO    ] ================================================
[2026-06-27 20:58:35,693.693 INFO    ] Launching Daemon at Sat Jun 27 20:58:35 IST 2026
[2026-06-27 20:58:35,704.704 INFO    ] ================================================
[2026-06-27 20:58:36,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:58:36
[2026-06-27 20:58:36,384.384 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:58:36,528.528 INFO    ] Initializing speech engine...
[2026-06-27 20:58:36,533.533 INFO    ] 2026-06-27 20:58:36
[2026-06-27 20:58:36,737.737 INFO    ] 2026-06-27 20:58:36
[2026-06-27 20:58:36,765.765 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:58:37,027.027 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:58:37,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:58:37,246.246 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:58:37,250.250 INFO    ] time= 27/06/2026 20:58:37
[2026-06-27 20:58:37,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:58:37,277.277 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:58:37,373.373 INFO    ] No existing commands found in stream
[2026-06-27 20:58:42,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:58:42,386.386 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-27 20:58:45,246.246 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:58:45,248.248 INFO    ] Checking for system updates...
[2026-06-27 20:58:45,268.268 INFO    ] 200
[2026-06-27 20:58:45,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:58:45,302.302 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:58:45,303.303 INFO    ] No update needed
[2026-06-27 20:58:45,305.305 INFO    ] Checking for camera pi updates...
[2026-06-27 20:58:45,325.325 INFO    ] 200
[2026-06-27 20:58:45,327.327 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:58:45,351.351 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:58:45,403.403 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:58:45,405.405 INFO    ] No camera update needed
[2026-06-27 20:58:45,406.406 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:58:45,407.407 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:58:45,410.410 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:58:45,413.413 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:58:47,453.453 INFO    ] ================================================
[2026-06-27 20:58:47,469.469 INFO    ] Launching Daemon at Sat Jun 27 20:58:47 IST 2026
[2026-06-27 20:58:47,480.480 INFO    ] ================================================
[2026-06-27 20:58:47,852.852 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:58:47
[2026-06-27 20:58:48,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:58:48,316.316 INFO    ] Initializing speech engine...
[2026-06-27 20:58:48,320.320 INFO    ] 2026-06-27 20:58:48
[2026-06-27 20:58:48,588.588 INFO    ] 2026-06-27 20:58:48
[2026-06-27 20:58:48,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:58:48,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:58:48,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:58:49,093.093 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:58:49,097.097 INFO    ] time= 27/06/2026 20:58:49
[2026-06-27 20:58:49,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:58:49,125.125 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:58:49,221.221 INFO    ] No existing commands found in stream
[2026-06-27 20:58:54,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:58:54,234.234 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-27 20:58:54,899.899 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 20:58:54,901.901 INFO    ] Checking for system updates...
[2026-06-27 20:58:54,922.922 INFO    ] 200
[2026-06-27 20:58:54,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:58:54,954.954 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:58:54,956.956 INFO    ] No update needed
[2026-06-27 20:58:54,957.957 INFO    ] Checking for camera pi updates...
[2026-06-27 20:58:54,980.980 INFO    ] 200
[2026-06-27 20:58:54,981.981 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:58:55,007.007 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:58:55,042.042 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:58:55,043.043 INFO    ] No camera update needed
[2026-06-27 20:58:55,045.045 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:58:55,046.046 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:58:55,049.049 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:58:55,052.052 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:58:57,090.090 INFO    ] ================================================
[2026-06-27 20:58:57,106.106 INFO    ] Launching Daemon at Sat Jun 27 20:58:57 IST 2026
[2026-06-27 20:58:57,117.117 INFO    ] ================================================
[2026-06-27 20:58:57,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:58:57
[2026-06-27 20:58:57,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:58:57,959.959 INFO    ] Initializing speech engine...
[2026-06-27 20:58:57,965.965 INFO    ] 2026-06-27 20:58:57
[2026-06-27 20:58:58,170.170 INFO    ] 2026-06-27 20:58:58
[2026-06-27 20:58:58,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:58:58,447.447 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:58:58,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:58:58,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:58:58,679.679 INFO    ] time= 27/06/2026 20:58:58
[2026-06-27 20:58:58,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:58:58,706.706 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:58:58,802.802 INFO    ] No existing commands found in stream
[2026-06-27 20:59:03,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:59:03,815.815 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-27 20:59:04,677.677 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 20:59:04,678.678 INFO    ] Checking for system updates...
[2026-06-27 20:59:04,700.700 INFO    ] 200
[2026-06-27 20:59:04,702.702 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:59:04,733.733 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:59:04,734.734 INFO    ] No update needed
[2026-06-27 20:59:04,736.736 INFO    ] Checking for camera pi updates...
[2026-06-27 20:59:04,755.755 INFO    ] 200
[2026-06-27 20:59:04,757.757 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:59:04,781.781 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:59:04,825.825 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:59:04,827.827 INFO    ] No camera update needed
[2026-06-27 20:59:04,828.828 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:59:04,829.829 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:59:04,833.833 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:59:04,836.836 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:59:06,877.877 INFO    ] ================================================
[2026-06-27 20:59:06,893.893 INFO    ] Launching Daemon at Sat Jun 27 20:59:06 IST 2026
[2026-06-27 20:59:06,904.904 INFO    ] ================================================
[2026-06-27 20:59:07,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:59:07
[2026-06-27 20:59:07,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:59:07,721.721 INFO    ] Initializing speech engine...
[2026-06-27 20:59:07,726.726 INFO    ] 2026-06-27 20:59:07
[2026-06-27 20:59:07,947.947 INFO    ] 2026-06-27 20:59:07
[2026-06-27 20:59:07,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:59:08,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:59:08,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:59:08,321.321 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:59:08,375.375 INFO    ] time= 27/06/2026 20:59:08
[2026-06-27 20:59:08,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:59:08,404.404 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:59:08,470.470 INFO    ] No existing commands found in stream
[2026-06-27 20:59:13,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:59:13,479.479 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-27 20:59:16,569.569 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 20:59:16,571.571 INFO    ] Checking for system updates...
[2026-06-27 20:59:16,593.593 INFO    ] 200
[2026-06-27 20:59:16,595.595 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:59:16,626.626 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:59:16,627.627 INFO    ] No update needed
[2026-06-27 20:59:16,629.629 INFO    ] Checking for camera pi updates...
[2026-06-27 20:59:16,649.649 INFO    ] 200
[2026-06-27 20:59:16,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:59:16,678.678 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:59:16,724.724 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:59:16,725.725 INFO    ] No camera update needed
[2026-06-27 20:59:16,727.727 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:59:16,728.728 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:59:16,731.731 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:59:16,734.734 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:59:18,774.774 INFO    ] ================================================
[2026-06-27 20:59:18,790.790 INFO    ] Launching Daemon at Sat Jun 27 20:59:18 IST 2026
[2026-06-27 20:59:18,801.801 INFO    ] ================================================
[2026-06-27 20:59:19,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:59:19
[2026-06-27 20:59:19,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:59:19,623.623 INFO    ] Initializing speech engine...
[2026-06-27 20:59:19,628.628 INFO    ] 2026-06-27 20:59:19
[2026-06-27 20:59:19,833.833 INFO    ] 2026-06-27 20:59:19
[2026-06-27 20:59:19,861.861 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:59:20,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:59:20,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:59:20,185.185 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:59:20,253.253 INFO    ] time= 27/06/2026 20:59:20
[2026-06-27 20:59:20,276.276 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:59:20,283.283 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:59:20,349.349 INFO    ] No existing commands found in stream
[2026-06-27 20:59:25,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:59:25,361.361 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-27 20:59:28,977.977 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 20:59:28,978.978 INFO    ] Checking for system updates...
[2026-06-27 20:59:29,000.000 INFO    ] 200
[2026-06-27 20:59:29,001.001 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:59:29,034.034 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:59:29,036.036 INFO    ] No update needed
[2026-06-27 20:59:29,037.037 INFO    ] Checking for camera pi updates...
[2026-06-27 20:59:29,057.057 INFO    ] 200
[2026-06-27 20:59:29,058.058 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:59:29,083.083 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:59:29,124.124 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:59:29,126.126 INFO    ] No camera update needed
[2026-06-27 20:59:29,127.127 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:59:29,128.128 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:59:29,131.131 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:59:29,134.134 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:59:31,173.173 INFO    ] ================================================
[2026-06-27 20:59:31,188.188 INFO    ] Launching Daemon at Sat Jun 27 20:59:31 IST 2026
[2026-06-27 20:59:31,200.200 INFO    ] ================================================
[2026-06-27 20:59:31,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:59:31
[2026-06-27 20:59:31,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:59:32,037.037 INFO    ] Initializing speech engine...
[2026-06-27 20:59:32,042.042 INFO    ] 2026-06-27 20:59:32
[2026-06-27 20:59:32,279.279 INFO    ] 2026-06-27 20:59:32
[2026-06-27 20:59:32,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:59:32,446.446 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:59:32,510.510 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:59:32,651.651 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:59:32,715.715 INFO    ] time= 27/06/2026 20:59:32
[2026-06-27 20:59:32,741.741 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:59:32,748.748 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:59:32,815.815 INFO    ] No existing commands found in stream
[2026-06-27 20:59:37,829.829 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:59:37,832.832 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-27 20:59:38,550.550 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 20:59:38,551.551 INFO    ] Checking for system updates...
[2026-06-27 20:59:38,572.572 INFO    ] 200
[2026-06-27 20:59:38,573.573 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:59:38,604.604 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:59:38,605.605 INFO    ] No update needed
[2026-06-27 20:59:38,606.606 INFO    ] Checking for camera pi updates...
[2026-06-27 20:59:38,628.628 INFO    ] 200
[2026-06-27 20:59:38,629.629 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:59:38,654.654 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:59:38,694.694 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 20:59:38,696.696 INFO    ] No camera update needed
[2026-06-27 20:59:38,697.697 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:59:38,698.698 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:59:38,701.701 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:59:38,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:59:40,746.746 INFO    ] ================================================
[2026-06-27 20:59:40,762.762 INFO    ] Launching Daemon at Sat Jun 27 20:59:40 IST 2026
[2026-06-27 20:59:40,773.773 INFO    ] ================================================
[2026-06-27 20:59:41,132.132 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:59:41
[2026-06-27 20:59:41,444.444 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:59:41,581.581 INFO    ] Initializing speech engine...
[2026-06-27 20:59:41,592.592 INFO    ] 2026-06-27 20:59:41
[2026-06-27 20:59:41,798.798 INFO    ] 2026-06-27 20:59:41
[2026-06-27 20:59:41,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:59:42,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:59:42,022.022 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:59:42,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:59:42,224.224 INFO    ] time= 27/06/2026 20:59:42
[2026-06-27 20:59:42,247.247 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:59:42,253.253 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:59:42,320.320 INFO    ] No existing commands found in stream
[2026-06-27 20:59:47,331.331 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:59:47,334.334 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-27 20:59:48,150.150 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 20:59:48,151.151 INFO    ] Checking for system updates...
[2026-06-27 20:59:48,182.182 INFO    ] 200
[2026-06-27 20:59:48,183.183 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:59:48,216.216 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:59:48,217.217 INFO    ] No update needed
[2026-06-27 20:59:48,219.219 INFO    ] Checking for camera pi updates...
[2026-06-27 20:59:48,239.239 INFO    ] 200
[2026-06-27 20:59:48,240.240 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:59:48,266.266 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:59:48,318.318 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:59:48,319.319 INFO    ] No camera update needed
[2026-06-27 20:59:48,320.320 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:59:48,321.321 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:59:48,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:59:48,327.327 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:59:50,366.366 INFO    ] ================================================
[2026-06-27 20:59:50,382.382 INFO    ] Launching Daemon at Sat Jun 27 20:59:50 IST 2026
[2026-06-27 20:59:50,393.393 INFO    ] ================================================
[2026-06-27 20:59:50,721.721 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 20:59:50
[2026-06-27 20:59:51,034.034 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 20:59:51,177.177 INFO    ] Initializing speech engine...
[2026-06-27 20:59:51,182.182 INFO    ] 2026-06-27 20:59:51
[2026-06-27 20:59:51,390.390 INFO    ] 2026-06-27 20:59:51
[2026-06-27 20:59:51,419.419 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 20:59:51,543.543 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 20:59:51,607.607 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 20:59:51,748.748 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 20:59:51,807.807 INFO    ] time= 27/06/2026 20:59:51
[2026-06-27 20:59:51,840.840 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 20:59:51,847.847 INFO    ] Checking for existing commands in stream...
[2026-06-27 20:59:51,914.914 INFO    ] No existing commands found in stream
[2026-06-27 20:59:56,923.923 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 20:59:56,926.926 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-27 20:59:57,695.695 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 20:59:57,696.696 INFO    ] Checking for system updates...
[2026-06-27 20:59:57,719.719 INFO    ] 200
[2026-06-27 20:59:57,721.721 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:59:57,751.751 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:59:57,752.752 INFO    ] No update needed
[2026-06-27 20:59:57,754.754 INFO    ] Checking for camera pi updates...
[2026-06-27 20:59:57,774.774 INFO    ] 200
[2026-06-27 20:59:57,776.776 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 20:59:57,802.802 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 20:59:57,849.849 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 20:59:57,850.850 INFO    ] No camera update needed
[2026-06-27 20:59:57,852.852 INFO    ] Script finished. Safe exiting...
[2026-06-27 20:59:57,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 20:59:57,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 20:59:57,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 20:59:59,898.898 INFO    ] ================================================
[2026-06-27 20:59:59,914.914 INFO    ] Launching Daemon at Sat Jun 27 20:59:59 IST 2026
[2026-06-27 20:59:59,925.925 INFO    ] ================================================
[2026-06-27 21:00:00,290.290 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:00:00
[2026-06-27 21:00:00,606.606 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:00:00,738.738 INFO    ] Initializing speech engine...
[2026-06-27 21:00:00,746.746 INFO    ] 2026-06-27 21:00:00
[2026-06-27 21:00:00,959.959 INFO    ] 2026-06-27 21:00:00
[2026-06-27 21:00:00,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:00:01,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:00:01,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:00:01,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:00:01,357.357 INFO    ] time= 27/06/2026 21:00:01
[2026-06-27 21:00:01,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:00:01,414.414 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:00:01,486.486 INFO    ] No existing commands found in stream
[2026-06-27 21:00:06,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:00:06,498.498 INFO    ] Waiting 2.61 seconds before fallback handling...
[2026-06-27 21:00:09,899.899 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 21:00:09,900.900 INFO    ] Checking for system updates...
[2026-06-27 21:00:09,921.921 INFO    ] 200
[2026-06-27 21:00:09,923.923 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:00:09,956.956 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:00:09,958.958 INFO    ] No update needed
[2026-06-27 21:00:09,959.959 INFO    ] Checking for camera pi updates...
[2026-06-27 21:00:09,980.980 INFO    ] 200
[2026-06-27 21:00:09,981.981 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:00:10,008.008 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:00:10,068.068 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:00:10,071.071 INFO    ] No camera update needed
[2026-06-27 21:00:10,074.074 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:00:10,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:00:10,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:00:10,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:00:12,131.131 INFO    ] ================================================
[2026-06-27 21:00:12,146.146 INFO    ] Launching Daemon at Sat Jun 27 21:00:12 IST 2026
[2026-06-27 21:00:12,157.157 INFO    ] ================================================
[2026-06-27 21:00:12,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:00:12
[2026-06-27 21:00:12,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:00:12,953.953 INFO    ] Initializing speech engine...
[2026-06-27 21:00:12,958.958 INFO    ] 2026-06-27 21:00:12
[2026-06-27 21:00:13,164.164 INFO    ] 2026-06-27 21:00:13
[2026-06-27 21:00:13,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:00:13,378.378 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:00:13,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:00:13,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:00:13,581.581 INFO    ] time= 27/06/2026 21:00:13
[2026-06-27 21:00:13,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:00:13,614.614 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:00:13,680.680 INFO    ] No existing commands found in stream
[2026-06-27 21:00:18,695.695 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:00:18,698.698 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-27 21:00:19,689.689 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:00:19,691.691 INFO    ] Checking for system updates...
[2026-06-27 21:00:19,713.713 INFO    ] 200
[2026-06-27 21:00:19,715.715 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:00:19,745.745 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:00:19,746.746 INFO    ] No update needed
[2026-06-27 21:00:19,748.748 INFO    ] Checking for camera pi updates...
[2026-06-27 21:00:19,767.767 INFO    ] 200
[2026-06-27 21:00:19,769.769 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:00:19,794.794 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:00:19,838.838 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:00:19,840.840 INFO    ] No camera update needed
[2026-06-27 21:00:19,841.841 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:00:19,842.842 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:00:19,845.845 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:00:19,848.848 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:00:21,889.889 INFO    ] ================================================
[2026-06-27 21:00:21,905.905 INFO    ] Launching Daemon at Sat Jun 27 21:00:21 IST 2026
[2026-06-27 21:00:21,916.916 INFO    ] ================================================
[2026-06-27 21:00:22,311.311 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:00:22
[2026-06-27 21:00:22,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:00:22,814.814 INFO    ] Initializing speech engine...
[2026-06-27 21:00:22,820.820 INFO    ] 2026-06-27 21:00:22
[2026-06-27 21:00:23,034.034 INFO    ] 2026-06-27 21:00:23
[2026-06-27 21:00:23,064.064 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:00:23,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:00:23,261.261 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:00:23,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:00:23,465.465 INFO    ] time= 27/06/2026 21:00:23
[2026-06-27 21:00:23,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:00:23,494.494 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:00:23,562.562 INFO    ] No existing commands found in stream
[2026-06-27 21:00:28,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:00:28,591.591 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-27 21:00:32,260.260 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:00:32,262.262 INFO    ] Checking for system updates...
[2026-06-27 21:00:32,287.287 INFO    ] 200
[2026-06-27 21:00:32,289.289 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:00:32,328.328 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:00:32,332.332 INFO    ] No update needed
[2026-06-27 21:00:32,336.336 INFO    ] Checking for camera pi updates...
[2026-06-27 21:00:32,374.374 INFO    ] 200
[2026-06-27 21:00:32,377.377 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:00:32,425.425 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:00:32,556.556 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:00:32,558.558 INFO    ] No camera update needed
[2026-06-27 21:00:32,560.560 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:00:32,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:00:32,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:00:32,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:00:34,603.603 INFO    ] ================================================
[2026-06-27 21:00:34,619.619 INFO    ] Launching Daemon at Sat Jun 27 21:00:34 IST 2026
[2026-06-27 21:00:34,631.631 INFO    ] ================================================
[2026-06-27 21:00:34,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:00:34
[2026-06-27 21:00:35,275.275 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:00:35,414.414 INFO    ] Initializing speech engine...
[2026-06-27 21:00:35,423.423 INFO    ] 2026-06-27 21:00:35
[2026-06-27 21:00:35,630.630 INFO    ] 2026-06-27 21:00:35
[2026-06-27 21:00:35,658.658 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:00:35,840.840 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:00:35,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:00:35,990.990 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:00:36,047.047 INFO    ] time= 27/06/2026 21:00:36
[2026-06-27 21:00:36,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:00:36,076.076 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:00:36,141.141 INFO    ] No existing commands found in stream
[2026-06-27 21:00:41,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:00:41,155.155 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-27 21:00:43,598.598 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 21:00:43,600.600 INFO    ] Checking for system updates...
[2026-06-27 21:00:43,622.622 INFO    ] 200
[2026-06-27 21:00:43,623.623 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:00:43,656.656 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:00:43,657.657 INFO    ] No update needed
[2026-06-27 21:00:43,659.659 INFO    ] Checking for camera pi updates...
[2026-06-27 21:00:43,682.682 INFO    ] 200
[2026-06-27 21:00:43,684.684 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:00:43,709.709 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:00:43,751.751 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:00:43,752.752 INFO    ] No camera update needed
[2026-06-27 21:00:43,753.753 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:00:43,755.755 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:00:43,758.758 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:00:43,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:00:45,802.802 INFO    ] ================================================
[2026-06-27 21:00:45,818.818 INFO    ] Launching Daemon at Sat Jun 27 21:00:45 IST 2026
[2026-06-27 21:00:45,829.829 INFO    ] ================================================
[2026-06-27 21:00:46,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:00:46
[2026-06-27 21:00:46,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:00:46,662.662 INFO    ] Initializing speech engine...
[2026-06-27 21:00:46,672.672 INFO    ] 2026-06-27 21:00:46
[2026-06-27 21:00:46,878.878 INFO    ] 2026-06-27 21:00:46
[2026-06-27 21:00:46,906.906 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:00:47,091.091 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:00:47,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:00:47,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:00:47,288.288 INFO    ] time= 27/06/2026 21:00:47
[2026-06-27 21:00:47,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:00:47,322.322 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:00:47,393.393 INFO    ] No existing commands found in stream
[2026-06-27 21:00:52,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:00:52,410.410 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-27 21:00:54,795.795 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 21:00:54,796.796 INFO    ] Checking for system updates...
[2026-06-27 21:00:54,818.818 INFO    ] 200
[2026-06-27 21:00:54,819.819 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:00:54,850.850 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:00:54,851.851 INFO    ] No update needed
[2026-06-27 21:00:54,853.853 INFO    ] Checking for camera pi updates...
[2026-06-27 21:00:54,874.874 INFO    ] 200
[2026-06-27 21:00:54,875.875 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:00:54,899.899 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:00:54,929.929 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:00:54,930.930 INFO    ] No camera update needed
[2026-06-27 21:00:54,931.931 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:00:54,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:00:54,936.936 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:00:54,938.938 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:00:56,979.979 INFO    ] ================================================
[2026-06-27 21:00:57,995.995 INFO    ] Launching Daemon at Sat Jun 27 21:00:56 IST 2026
[2026-06-27 21:00:57,007.007 INFO    ] ================================================
[2026-06-27 21:00:57,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:00:57
[2026-06-27 21:00:57,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:00:57,796.796 INFO    ] Initializing speech engine...
[2026-06-27 21:00:57,804.804 INFO    ] 2026-06-27 21:00:57
[2026-06-27 21:00:58,018.018 INFO    ] 2026-06-27 21:00:57
[2026-06-27 21:00:58,047.047 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:00:58,231.231 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:00:58,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:00:58,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:00:58,437.437 INFO    ] time= 27/06/2026 21:00:58
[2026-06-27 21:00:58,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:00:58,467.467 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:00:58,534.534 INFO    ] No existing commands found in stream
[2026-06-27 21:01:03,543.543 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:01:03,546.546 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-27 21:01:04,267.267 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 21:01:04,269.269 INFO    ] Checking for system updates...
[2026-06-27 21:01:04,290.290 INFO    ] 200
[2026-06-27 21:01:04,291.291 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:01:04,322.322 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:01:04,323.323 INFO    ] No update needed
[2026-06-27 21:01:04,325.325 INFO    ] Checking for camera pi updates...
[2026-06-27 21:01:04,344.344 INFO    ] 200
[2026-06-27 21:01:04,346.346 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:01:04,369.369 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:01:04,410.410 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:01:04,412.412 INFO    ] No camera update needed
[2026-06-27 21:01:04,413.413 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:01:04,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:01:04,418.418 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:01:04,420.420 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:01:06,459.459 INFO    ] ================================================
[2026-06-27 21:01:06,476.476 INFO    ] Launching Daemon at Sat Jun 27 21:01:06 IST 2026
[2026-06-27 21:01:06,486.486 INFO    ] ================================================
[2026-06-27 21:01:06,838.838 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:01:06
[2026-06-27 21:01:07,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:01:07,295.295 INFO    ] Initializing speech engine...
[2026-06-27 21:01:07,301.301 INFO    ] 2026-06-27 21:01:07
[2026-06-27 21:01:07,507.507 INFO    ] 2026-06-27 21:01:07
[2026-06-27 21:01:07,536.536 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:01:07,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:01:07,732.732 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:01:07,857.857 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:01:07,908.908 INFO    ] time= 27/06/2026 21:01:07
[2026-06-27 21:01:07,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:01:07,959.959 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:01:08,055.055 INFO    ] No existing commands found in stream
[2026-06-27 21:01:13,064.064 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:01:13,067.067 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-27 21:01:14,220.220 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 21:01:14,221.221 INFO    ] Checking for system updates...
[2026-06-27 21:01:14,244.244 INFO    ] 200
[2026-06-27 21:01:14,245.245 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:01:14,279.279 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:01:14,280.280 INFO    ] No update needed
[2026-06-27 21:01:14,281.281 INFO    ] Checking for camera pi updates...
[2026-06-27 21:01:14,301.301 INFO    ] 200
[2026-06-27 21:01:14,302.302 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:01:14,326.326 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:01:14,370.370 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:01:14,372.372 INFO    ] No camera update needed
[2026-06-27 21:01:14,373.373 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:01:14,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:01:14,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:01:14,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:01:16,420.420 INFO    ] ================================================
[2026-06-27 21:01:16,436.436 INFO    ] Launching Daemon at Sat Jun 27 21:01:16 IST 2026
[2026-06-27 21:01:16,447.447 INFO    ] ================================================
[2026-06-27 21:01:16,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:01:16
[2026-06-27 21:01:17,164.164 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:01:17,303.303 INFO    ] Initializing speech engine...
[2026-06-27 21:01:17,312.312 INFO    ] 2026-06-27 21:01:17
[2026-06-27 21:01:17,519.519 INFO    ] 2026-06-27 21:01:17
[2026-06-27 21:01:17,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:01:17,732.732 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:01:17,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:01:17,886.886 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:01:17,938.938 INFO    ] time= 27/06/2026 21:01:17
[2026-06-27 21:01:17,962.962 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:01:17,968.968 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:01:18,035.035 INFO    ] No existing commands found in stream
[2026-06-27 21:01:23,049.049 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:01:23,052.052 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-27 21:01:23,935.935 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 21:01:23,936.936 INFO    ] Checking for system updates...
[2026-06-27 21:01:23,957.957 INFO    ] 200
[2026-06-27 21:01:23,958.958 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:01:23,990.990 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:01:23,992.992 INFO    ] No update needed
[2026-06-27 21:01:23,993.993 INFO    ] Checking for camera pi updates...
[2026-06-27 21:01:24,012.012 INFO    ] 200
[2026-06-27 21:01:24,014.014 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:01:24,037.037 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:01:24,089.089 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:01:24,091.091 INFO    ] No camera update needed
[2026-06-27 21:01:24,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:01:24,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:01:24,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:01:24,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:01:26,138.138 INFO    ] ================================================
[2026-06-27 21:01:26,154.154 INFO    ] Launching Daemon at Sat Jun 27 21:01:26 IST 2026
[2026-06-27 21:01:26,165.165 INFO    ] ================================================
[2026-06-27 21:01:26,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:01:26
[2026-06-27 21:01:26,810.810 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:01:26,954.954 INFO    ] Initializing speech engine...
[2026-06-27 21:01:26,959.959 INFO    ] 2026-06-27 21:01:26
[2026-06-27 21:01:27,164.164 INFO    ] 2026-06-27 21:01:27
[2026-06-27 21:01:27,193.193 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:01:27,320.320 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:01:27,378.378 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:01:27,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:01:27,584.584 INFO    ] time= 27/06/2026 21:01:27
[2026-06-27 21:01:27,606.606 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:01:27,612.612 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:01:27,679.679 INFO    ] No existing commands found in stream
[2026-06-27 21:01:32,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:01:32,689.689 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-27 21:01:36,456.456 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 21:01:36,458.458 INFO    ] Checking for system updates...
[2026-06-27 21:01:36,479.479 INFO    ] 200
[2026-06-27 21:01:36,480.480 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:01:36,511.511 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:01:36,512.512 INFO    ] No update needed
[2026-06-27 21:01:36,513.513 INFO    ] Checking for camera pi updates...
[2026-06-27 21:01:36,534.534 INFO    ] 200
[2026-06-27 21:01:36,536.536 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:01:36,561.561 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:01:36,591.591 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:01:36,592.592 INFO    ] No camera update needed
[2026-06-27 21:01:36,594.594 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:01:36,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:01:36,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:01:36,601.601 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:01:38,641.641 INFO    ] ================================================
[2026-06-27 21:01:38,657.657 INFO    ] Launching Daemon at Sat Jun 27 21:01:38 IST 2026
[2026-06-27 21:01:38,668.668 INFO    ] ================================================
[2026-06-27 21:01:39,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:01:39
[2026-06-27 21:01:39,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:01:39,474.474 INFO    ] Initializing speech engine...
[2026-06-27 21:01:39,479.479 INFO    ] 2026-06-27 21:01:39
[2026-06-27 21:01:39,699.699 INFO    ] 2026-06-27 21:01:39
[2026-06-27 21:01:39,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:01:39,914.914 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:01:39,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:01:40,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:01:40,106.106 INFO    ] time= 27/06/2026 21:01:40
[2026-06-27 21:01:40,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:01:40,155.155 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:01:40,223.223 INFO    ] No existing commands found in stream
[2026-06-27 21:01:45,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:01:45,235.235 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-27 21:01:48,643.643 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 21:01:48,645.645 INFO    ] Checking for system updates...
[2026-06-27 21:01:48,679.679 INFO    ] 200
[2026-06-27 21:01:48,680.680 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:01:48,710.710 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:01:48,712.712 INFO    ] No update needed
[2026-06-27 21:01:48,713.713 INFO    ] Checking for camera pi updates...
[2026-06-27 21:01:48,733.733 INFO    ] 200
[2026-06-27 21:01:48,734.734 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:01:48,760.760 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:01:48,804.804 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:01:48,805.805 INFO    ] No camera update needed
[2026-06-27 21:01:48,806.806 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:01:48,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:01:48,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:01:48,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:01:50,853.853 INFO    ] ================================================
[2026-06-27 21:01:50,870.870 INFO    ] Launching Daemon at Sat Jun 27 21:01:50 IST 2026
[2026-06-27 21:01:50,882.882 INFO    ] ================================================
[2026-06-27 21:01:51,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:01:51
[2026-06-27 21:01:51,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:01:51,696.696 INFO    ] Initializing speech engine...
[2026-06-27 21:01:51,700.700 INFO    ] 2026-06-27 21:01:51
[2026-06-27 21:01:51,904.904 INFO    ] 2026-06-27 21:01:51
[2026-06-27 21:01:51,939.939 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:01:52,100.100 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:01:52,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:01:52,313.313 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:01:52,365.365 INFO    ] time= 27/06/2026 21:01:52
[2026-06-27 21:01:52,399.399 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:01:52,422.422 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:01:52,501.501 INFO    ] No existing commands found in stream
[2026-06-27 21:01:57,510.510 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:01:57,512.512 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-27 21:02:00,487.487 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 21:02:00,489.489 INFO    ] Checking for system updates...
[2026-06-27 21:02:00,510.510 INFO    ] 200
[2026-06-27 21:02:00,511.511 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:02:00,541.541 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:02:00,543.543 INFO    ] No update needed
[2026-06-27 21:02:00,544.544 INFO    ] Checking for camera pi updates...
[2026-06-27 21:02:00,564.564 INFO    ] 200
[2026-06-27 21:02:00,565.565 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:02:00,589.589 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:02:00,634.634 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:02:00,635.635 INFO    ] No camera update needed
[2026-06-27 21:02:00,636.636 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:02:00,638.638 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:02:00,641.641 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:02:00,643.643 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:02:02,669.669 INFO    ] ================================================
[2026-06-27 21:02:02,677.677 INFO    ] Launching Daemon at Sat Jun 27 21:02:02 IST 2026
[2026-06-27 21:02:02,684.684 INFO    ] ================================================
[2026-06-27 21:02:03,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:02:03
[2026-06-27 21:02:03,409.409 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:02:03,576.576 INFO    ] Initializing speech engine...
[2026-06-27 21:02:03,584.584 INFO    ] 2026-06-27 21:02:03
[2026-06-27 21:02:03,778.778 INFO    ] 2026-06-27 21:02:03
[2026-06-27 21:02:03,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:02:03,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:02:03,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:02:04,040.040 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:02:04,041.041 INFO    ] time= 27/06/2026 21:02:04
[2026-06-27 21:02:04,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:02:04,045.045 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:02:04,133.133 INFO    ] No existing commands found in stream
[2026-06-27 21:02:09,166.166 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:02:09,168.168 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-27 21:02:13,206.206 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 21:02:13,208.208 INFO    ] Checking for system updates...
[2026-06-27 21:02:13,230.230 INFO    ] 200
[2026-06-27 21:02:13,231.231 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:02:13,267.267 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:02:13,269.269 INFO    ] No update needed
[2026-06-27 21:02:13,271.271 INFO    ] Checking for camera pi updates...
[2026-06-27 21:02:13,293.293 INFO    ] 200
[2026-06-27 21:02:13,294.294 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:02:13,320.320 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:02:13,375.375 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:02:13,376.376 INFO    ] No camera update needed
[2026-06-27 21:02:13,378.378 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:02:13,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:02:13,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:02:13,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:02:15,427.427 INFO    ] ================================================
[2026-06-27 21:02:15,444.444 INFO    ] Launching Daemon at Sat Jun 27 21:02:15 IST 2026
[2026-06-27 21:02:15,456.456 INFO    ] ================================================
[2026-06-27 21:02:15,790.790 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:02:15
[2026-06-27 21:02:16,107.107 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:02:16,249.249 INFO    ] Initializing speech engine...
[2026-06-27 21:02:16,255.255 INFO    ] 2026-06-27 21:02:16
[2026-06-27 21:02:16,457.457 INFO    ] 2026-06-27 21:02:16
[2026-06-27 21:02:16,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:02:16,671.671 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:02:16,680.680 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:02:16,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:02:16,878.878 INFO    ] time= 27/06/2026 21:02:16
[2026-06-27 21:02:16,900.900 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:02:16,906.906 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:02:16,972.972 INFO    ] No existing commands found in stream
[2026-06-27 21:02:21,982.982 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:02:21,985.985 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-27 21:02:25,958.958 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 21:02:25,960.960 INFO    ] Checking for system updates...
[2026-06-27 21:02:26,000.000 INFO    ] 200
[2026-06-27 21:02:26,003.003 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:02:26,057.057 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:02:26,059.059 INFO    ] No update needed
[2026-06-27 21:02:26,062.062 INFO    ] Checking for camera pi updates...
[2026-06-27 21:02:26,096.096 INFO    ] 200
[2026-06-27 21:02:26,098.098 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:02:26,137.137 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:02:26,193.193 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:02:26,194.194 INFO    ] No camera update needed
[2026-06-27 21:02:26,196.196 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:02:26,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:02:26,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:02:26,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:02:28,247.247 INFO    ] ================================================
[2026-06-27 21:02:28,264.264 INFO    ] Launching Daemon at Sat Jun 27 21:02:28 IST 2026
[2026-06-27 21:02:28,275.275 INFO    ] ================================================
[2026-06-27 21:02:28,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:02:28
[2026-06-27 21:02:28,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:02:29,083.083 INFO    ] Initializing speech engine...
[2026-06-27 21:02:29,088.088 INFO    ] 2026-06-27 21:02:29
[2026-06-27 21:02:29,293.293 INFO    ] 2026-06-27 21:02:29
[2026-06-27 21:02:29,323.323 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:02:29,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:02:29,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:02:29,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:02:29,715.715 INFO    ] time= 27/06/2026 21:02:29
[2026-06-27 21:02:29,736.736 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:02:29,743.743 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:02:29,810.810 INFO    ] No existing commands found in stream
[2026-06-27 21:02:34,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:02:34,821.821 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-27 21:02:36,550.550 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 21:02:36,552.552 INFO    ] Checking for system updates...
[2026-06-27 21:02:36,574.574 INFO    ] 200
[2026-06-27 21:02:36,576.576 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:02:36,606.606 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:02:36,607.607 INFO    ] No update needed
[2026-06-27 21:02:36,608.608 INFO    ] Checking for camera pi updates...
[2026-06-27 21:02:36,628.628 INFO    ] 200
[2026-06-27 21:02:36,629.629 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:02:36,652.652 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:02:36,780.780 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:02:36,781.781 INFO    ] No camera update needed
[2026-06-27 21:02:36,782.782 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:02:36,784.784 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:02:36,787.787 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:02:36,789.789 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:02:38,830.830 INFO    ] ================================================
[2026-06-27 21:02:38,856.856 INFO    ] Launching Daemon at Sat Jun 27 21:02:38 IST 2026
[2026-06-27 21:02:38,866.866 INFO    ] ================================================
[2026-06-27 21:02:39,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:02:39
[2026-06-27 21:02:39,597.597 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:02:39,747.747 INFO    ] Initializing speech engine...
[2026-06-27 21:02:39,752.752 INFO    ] 2026-06-27 21:02:39
[2026-06-27 21:02:39,960.960 INFO    ] 2026-06-27 21:02:39
[2026-06-27 21:02:39,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:02:40,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:02:40,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:02:40,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:02:40,401.401 INFO    ] time= 27/06/2026 21:02:40
[2026-06-27 21:02:40,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:02:40,410.410 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:02:40,477.477 INFO    ] No existing commands found in stream
[2026-06-27 21:02:45,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:02:45,510.510 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-27 21:02:48,803.803 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 21:02:48,805.805 INFO    ] Checking for system updates...
[2026-06-27 21:02:48,827.827 INFO    ] 200
[2026-06-27 21:02:48,828.828 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:02:48,862.862 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:02:48,864.864 INFO    ] No update needed
[2026-06-27 21:02:48,865.865 INFO    ] Checking for camera pi updates...
[2026-06-27 21:02:48,888.888 INFO    ] 200
[2026-06-27 21:02:48,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:02:48,913.913 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:02:48,957.957 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:02:48,958.958 INFO    ] No camera update needed
[2026-06-27 21:02:48,960.960 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:02:48,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:02:48,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:02:48,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:02:51,010.010 INFO    ] ================================================
[2026-06-27 21:02:51,028.028 INFO    ] Launching Daemon at Sat Jun 27 21:02:51 IST 2026
[2026-06-27 21:02:51,038.038 INFO    ] ================================================
[2026-06-27 21:02:51,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:02:51
[2026-06-27 21:02:51,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:02:51,817.817 INFO    ] Initializing speech engine...
[2026-06-27 21:02:51,825.825 INFO    ] 2026-06-27 21:02:51
[2026-06-27 21:02:52,030.030 INFO    ] 2026-06-27 21:02:52
[2026-06-27 21:02:52,060.060 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:02:52,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:02:52,253.253 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:02:52,382.382 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:02:52,446.446 INFO    ] time= 27/06/2026 21:02:52
[2026-06-27 21:02:52,473.473 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:02:52,479.479 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:02:52,546.546 INFO    ] No existing commands found in stream
[2026-06-27 21:02:57,555.555 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:02:57,558.558 INFO    ] Waiting 2.58 seconds before fallback handling...
[2026-06-27 21:03:00,777.777 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 21:03:00,778.778 INFO    ] Checking for system updates...
[2026-06-27 21:03:00,799.799 INFO    ] 200
[2026-06-27 21:03:00,800.800 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:03:00,833.833 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:03:00,834.834 INFO    ] No update needed
[2026-06-27 21:03:00,836.836 INFO    ] Checking for camera pi updates...
[2026-06-27 21:03:00,856.856 INFO    ] 200
[2026-06-27 21:03:00,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:03:00,880.880 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:03:00,922.922 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:03:00,923.923 INFO    ] No camera update needed
[2026-06-27 21:03:00,924.924 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:03:00,926.926 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:03:00,929.929 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:03:00,931.931 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:03:02,964.964 INFO    ] ================================================
[2026-06-27 21:03:02,980.980 INFO    ] Launching Daemon at Sat Jun 27 21:03:02 IST 2026
[2026-06-27 21:03:02,991.991 INFO    ] ================================================
[2026-06-27 21:03:03,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:03:03
[2026-06-27 21:03:03,688.688 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:03:03,829.829 INFO    ] Initializing speech engine...
[2026-06-27 21:03:03,840.840 INFO    ] 2026-06-27 21:03:03
[2026-06-27 21:03:04,043.043 INFO    ] 2026-06-27 21:03:04
[2026-06-27 21:03:04,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:03:04,201.201 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:03:04,258.258 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:03:04,388.388 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:03:04,444.444 INFO    ] time= 27/06/2026 21:03:04
[2026-06-27 21:03:04,485.485 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:03:04,487.487 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:03:04,558.558 INFO    ] No existing commands found in stream
[2026-06-27 21:03:09,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:03:09,569.569 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-27 21:03:10,183.183 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 21:03:10,184.184 INFO    ] Checking for system updates...
[2026-06-27 21:03:10,206.206 INFO    ] 200
[2026-06-27 21:03:10,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:03:10,239.239 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:03:10,240.240 INFO    ] No update needed
[2026-06-27 21:03:10,242.242 INFO    ] Checking for camera pi updates...
[2026-06-27 21:03:10,263.263 INFO    ] 200
[2026-06-27 21:03:10,265.265 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:03:10,291.291 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:03:10,336.336 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:03:10,337.337 INFO    ] No camera update needed
[2026-06-27 21:03:10,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:03:10,340.340 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:03:10,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:03:10,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:03:12,388.388 INFO    ] ================================================
[2026-06-27 21:03:12,403.403 INFO    ] Launching Daemon at Sat Jun 27 21:03:12 IST 2026
[2026-06-27 21:03:12,414.414 INFO    ] ================================================
[2026-06-27 21:03:12,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:03:12
[2026-06-27 21:03:13,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:03:13,285.285 INFO    ] Initializing speech engine...
[2026-06-27 21:03:13,291.291 INFO    ] 2026-06-27 21:03:13
[2026-06-27 21:03:13,499.499 INFO    ] 2026-06-27 21:03:13
[2026-06-27 21:03:13,527.527 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:03:13,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:03:13,722.722 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:03:13,919.919 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:03:13,942.942 INFO    ] time= 27/06/2026 21:03:13
[2026-06-27 21:03:13,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:03:13,950.950 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:03:14,017.017 INFO    ] No existing commands found in stream
[2026-06-27 21:03:19,042.042 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:03:19,046.046 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-27 21:03:21,440.440 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 21:03:21,442.442 INFO    ] Checking for system updates...
[2026-06-27 21:03:21,464.464 INFO    ] 200
[2026-06-27 21:03:21,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:03:21,500.500 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:03:21,501.501 INFO    ] No update needed
[2026-06-27 21:03:21,502.502 INFO    ] Checking for camera pi updates...
[2026-06-27 21:03:21,525.525 INFO    ] 200
[2026-06-27 21:03:21,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:03:21,551.551 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:03:21,605.605 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:03:21,606.606 INFO    ] No camera update needed
[2026-06-27 21:03:21,608.608 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:03:21,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:03:21,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:03:21,616.616 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:03:23,655.655 INFO    ] ================================================
[2026-06-27 21:03:23,672.672 INFO    ] Launching Daemon at Sat Jun 27 21:03:23 IST 2026
[2026-06-27 21:03:23,683.683 INFO    ] ================================================
[2026-06-27 21:03:24,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:03:24
[2026-06-27 21:03:24,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:03:24,503.503 INFO    ] Initializing speech engine...
[2026-06-27 21:03:24,508.508 INFO    ] 2026-06-27 21:03:24
[2026-06-27 21:03:24,717.717 INFO    ] 2026-06-27 21:03:24
[2026-06-27 21:03:24,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:03:24,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:03:24,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:03:25,068.068 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:03:25,135.135 INFO    ] time= 27/06/2026 21:03:25
[2026-06-27 21:03:25,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:03:25,166.166 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:03:25,232.232 INFO    ] No existing commands found in stream
[2026-06-27 21:03:30,246.246 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:03:30,249.249 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-27 21:03:31,115.115 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:03:31,117.117 INFO    ] Checking for system updates...
[2026-06-27 21:03:31,138.138 INFO    ] 200
[2026-06-27 21:03:31,139.139 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:03:31,172.172 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:03:31,173.173 INFO    ] No update needed
[2026-06-27 21:03:31,175.175 INFO    ] Checking for camera pi updates...
[2026-06-27 21:03:31,197.197 INFO    ] 200
[2026-06-27 21:03:31,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:03:31,222.222 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:03:31,268.268 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:03:31,269.269 INFO    ] No camera update needed
[2026-06-27 21:03:31,271.271 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:03:31,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:03:31,275.275 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:03:31,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:03:33,311.311 INFO    ] ================================================
[2026-06-27 21:03:33,327.327 INFO    ] Launching Daemon at Sat Jun 27 21:03:33 IST 2026
[2026-06-27 21:03:33,338.338 INFO    ] ================================================
[2026-06-27 21:03:33,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:03:33
[2026-06-27 21:03:33,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:03:34,131.131 INFO    ] Initializing speech engine...
[2026-06-27 21:03:34,139.139 INFO    ] 2026-06-27 21:03:34
[2026-06-27 21:03:34,364.364 INFO    ] 2026-06-27 21:03:34
[2026-06-27 21:03:34,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:03:34,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:03:34,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:03:34,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:03:34,737.737 INFO    ] time= 27/06/2026 21:03:34
[2026-06-27 21:03:34,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:03:34,820.820 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:03:34,916.916 INFO    ] No existing commands found in stream
[2026-06-27 21:03:39,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:03:39,929.929 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-27 21:03:44,567.567 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 21:03:44,569.569 INFO    ] Checking for system updates...
[2026-06-27 21:03:44,590.590 INFO    ] 200
[2026-06-27 21:03:44,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:03:44,624.624 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:03:44,625.625 INFO    ] No update needed
[2026-06-27 21:03:44,627.627 INFO    ] Checking for camera pi updates...
[2026-06-27 21:03:44,647.647 INFO    ] 200
[2026-06-27 21:03:44,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:03:44,671.671 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:03:44,725.725 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:03:44,726.726 INFO    ] No camera update needed
[2026-06-27 21:03:44,727.727 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:03:44,729.729 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:03:44,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:03:44,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:03:46,775.775 INFO    ] ================================================
[2026-06-27 21:03:46,791.791 INFO    ] Launching Daemon at Sat Jun 27 21:03:46 IST 2026
[2026-06-27 21:03:46,802.802 INFO    ] ================================================
[2026-06-27 21:03:47,157.157 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:03:47
[2026-06-27 21:03:47,471.471 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:03:47,609.609 INFO    ] Initializing speech engine...
[2026-06-27 21:03:47,618.618 INFO    ] 2026-06-27 21:03:47
[2026-06-27 21:03:47,823.823 INFO    ] 2026-06-27 21:03:47
[2026-06-27 21:03:47,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:03:47,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:03:48,037.037 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:03:48,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:03:48,245.245 INFO    ] time= 27/06/2026 21:03:48
[2026-06-27 21:03:48,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:03:48,272.272 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:03:48,339.339 INFO    ] No existing commands found in stream
[2026-06-27 21:03:53,348.348 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:03:53,351.351 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-27 21:03:54,761.761 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 21:03:54,762.762 INFO    ] Checking for system updates...
[2026-06-27 21:03:54,785.785 INFO    ] 200
[2026-06-27 21:03:54,786.786 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:03:54,816.816 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:03:54,818.818 INFO    ] No update needed
[2026-06-27 21:03:54,819.819 INFO    ] Checking for camera pi updates...
[2026-06-27 21:03:54,839.839 INFO    ] 200
[2026-06-27 21:03:54,841.841 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:03:54,865.865 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:03:54,893.893 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:03:54,894.894 INFO    ] No camera update needed
[2026-06-27 21:03:54,896.896 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:03:54,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:03:54,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:03:54,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:03:56,942.942 INFO    ] ================================================
[2026-06-27 21:03:56,957.957 INFO    ] Launching Daemon at Sat Jun 27 21:03:56 IST 2026
[2026-06-27 21:03:56,968.968 INFO    ] ================================================
[2026-06-27 21:03:57,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:03:57
[2026-06-27 21:03:57,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:03:57,766.766 INFO    ] Initializing speech engine...
[2026-06-27 21:03:57,774.774 INFO    ] 2026-06-27 21:03:57
[2026-06-27 21:03:57,979.979 INFO    ] 2026-06-27 21:03:57
[2026-06-27 21:03:58,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:03:58,192.192 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:03:58,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:03:58,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:03:58,397.397 INFO    ] time= 27/06/2026 21:03:58
[2026-06-27 21:03:58,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:03:58,427.427 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:03:58,494.494 INFO    ] No existing commands found in stream
[2026-06-27 21:04:03,503.503 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:04:03,506.506 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-27 21:04:07,417.417 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:04:07,418.418 INFO    ] Checking for system updates...
[2026-06-27 21:04:07,440.440 INFO    ] 200
[2026-06-27 21:04:07,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:04:07,471.471 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:04:07,473.473 INFO    ] No update needed
[2026-06-27 21:04:07,474.474 INFO    ] Checking for camera pi updates...
[2026-06-27 21:04:07,494.494 INFO    ] 200
[2026-06-27 21:04:07,495.495 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:04:07,518.518 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:04:07,560.560 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:04:07,562.562 INFO    ] No camera update needed
[2026-06-27 21:04:07,563.563 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:04:07,565.565 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:04:07,568.568 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:04:07,571.571 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:04:09,611.611 INFO    ] ================================================
[2026-06-27 21:04:09,628.628 INFO    ] Launching Daemon at Sat Jun 27 21:04:09 IST 2026
[2026-06-27 21:04:09,639.639 INFO    ] ================================================
[2026-06-27 21:04:10,018.018 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:04:10
[2026-06-27 21:04:10,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:04:10,514.514 INFO    ] Initializing speech engine...
[2026-06-27 21:04:10,520.520 INFO    ] 2026-06-27 21:04:10
[2026-06-27 21:04:10,729.729 INFO    ] 2026-06-27 21:04:10
[2026-06-27 21:04:10,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:04:10,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:04:10,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:04:11,098.098 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:04:11,152.152 INFO    ] time= 27/06/2026 21:04:11
[2026-06-27 21:04:11,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:04:11,180.180 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:04:11,247.247 INFO    ] No existing commands found in stream
[2026-06-27 21:04:16,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:04:16,260.260 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-27 21:04:19,082.082 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:04:19,084.084 INFO    ] Checking for system updates...
[2026-06-27 21:04:19,106.106 INFO    ] 200
[2026-06-27 21:04:19,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:04:19,138.138 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:04:19,139.139 INFO    ] No update needed
[2026-06-27 21:04:19,140.140 INFO    ] Checking for camera pi updates...
[2026-06-27 21:04:19,161.161 INFO    ] 200
[2026-06-27 21:04:19,163.163 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:04:19,188.188 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:04:19,228.228 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:04:19,229.229 INFO    ] No camera update needed
[2026-06-27 21:04:19,235.235 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:04:19,236.236 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:04:19,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:04:19,242.242 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:04:21,283.283 INFO    ] ================================================
[2026-06-27 21:04:21,299.299 INFO    ] Launching Daemon at Sat Jun 27 21:04:21 IST 2026
[2026-06-27 21:04:21,311.311 INFO    ] ================================================
[2026-06-27 21:04:21,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:04:21
[2026-06-27 21:04:21,958.958 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:04:22,093.093 INFO    ] Initializing speech engine...
[2026-06-27 21:04:22,101.101 INFO    ] 2026-06-27 21:04:22
[2026-06-27 21:04:22,315.315 INFO    ] 2026-06-27 21:04:22
[2026-06-27 21:04:22,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:04:22,536.536 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:04:22,547.547 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:04:22,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:04:22,748.748 INFO    ] time= 27/06/2026 21:04:22
[2026-06-27 21:04:22,769.769 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:04:22,775.775 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:04:22,867.867 INFO    ] No existing commands found in stream
[2026-06-27 21:04:27,876.876 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:04:27,879.879 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-27 21:04:30,816.816 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 21:04:30,818.818 INFO    ] Checking for system updates...
[2026-06-27 21:04:30,839.839 INFO    ] 200
[2026-06-27 21:04:30,840.840 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:04:30,872.872 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:04:30,874.874 INFO    ] No update needed
[2026-06-27 21:04:30,875.875 INFO    ] Checking for camera pi updates...
[2026-06-27 21:04:30,895.895 INFO    ] 200
[2026-06-27 21:04:30,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:04:30,920.920 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:04:30,959.959 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:04:30,961.961 INFO    ] No camera update needed
[2026-06-27 21:04:30,962.962 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:04:30,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:04:30,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:04:30,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:04:32,993.993 INFO    ] ================================================
[2026-06-27 21:04:33,002.002 INFO    ] Launching Daemon at Sat Jun 27 21:04:32 IST 2026
[2026-06-27 21:04:33,008.008 INFO    ] ================================================
[2026-06-27 21:04:33,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:04:33
[2026-06-27 21:04:33,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:04:33,882.882 INFO    ] Initializing speech engine...
[2026-06-27 21:04:33,894.894 INFO    ] 2026-06-27 21:04:33
[2026-06-27 21:04:34,114.114 INFO    ] 2026-06-27 21:04:34
[2026-06-27 21:04:34,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:04:34,344.344 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:04:34,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:04:34,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:04:34,544.544 INFO    ] time= 27/06/2026 21:04:34
[2026-06-27 21:04:34,576.576 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:04:34,583.583 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:04:34,650.650 INFO    ] No existing commands found in stream
[2026-06-27 21:04:39,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:04:39,682.682 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-27 21:04:41,555.555 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 21:04:41,557.557 INFO    ] Checking for system updates...
[2026-06-27 21:04:41,579.579 INFO    ] 200
[2026-06-27 21:04:41,580.580 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:04:41,610.610 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:04:41,612.612 INFO    ] No update needed
[2026-06-27 21:04:41,613.613 INFO    ] Checking for camera pi updates...
[2026-06-27 21:04:41,635.635 INFO    ] 200
[2026-06-27 21:04:41,636.636 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:04:41,661.661 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:04:41,804.804 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:04:41,806.806 INFO    ] No camera update needed
[2026-06-27 21:04:41,807.807 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:04:41,808.808 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:04:41,811.811 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:04:41,814.814 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:04:43,853.853 INFO    ] ================================================
[2026-06-27 21:04:43,869.869 INFO    ] Launching Daemon at Sat Jun 27 21:04:43 IST 2026
[2026-06-27 21:04:43,880.880 INFO    ] ================================================
[2026-06-27 21:04:44,256.256 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:04:44
[2026-06-27 21:04:44,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:04:44,787.787 INFO    ] Initializing speech engine...
[2026-06-27 21:04:44,798.798 INFO    ] 2026-06-27 21:04:44
[2026-06-27 21:04:45,013.013 INFO    ] 2026-06-27 21:04:45
[2026-06-27 21:04:45,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:04:45,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:04:45,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:04:45,371.371 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:04:45,434.434 INFO    ] time= 27/06/2026 21:04:45
[2026-06-27 21:04:45,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:04:45,464.464 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:04:45,531.531 INFO    ] No existing commands found in stream
[2026-06-27 21:04:50,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:04:50,549.549 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-27 21:04:52,868.868 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 21:04:52,869.869 INFO    ] Checking for system updates...
[2026-06-27 21:04:52,892.892 INFO    ] 200
[2026-06-27 21:04:52,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:04:52,927.927 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:04:52,929.929 INFO    ] No update needed
[2026-06-27 21:04:52,930.930 INFO    ] Checking for camera pi updates...
[2026-06-27 21:04:52,952.952 INFO    ] 200
[2026-06-27 21:04:52,954.954 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:04:52,978.978 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:04:53,031.031 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:04:53,033.033 INFO    ] No camera update needed
[2026-06-27 21:04:53,035.035 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:04:53,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:04:53,039.039 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:04:53,042.042 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:04:55,083.083 INFO    ] ================================================
[2026-06-27 21:04:55,098.098 INFO    ] Launching Daemon at Sat Jun 27 21:04:55 IST 2026
[2026-06-27 21:04:55,109.109 INFO    ] ================================================
[2026-06-27 21:04:55,472.472 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:04:55
[2026-06-27 21:04:55,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:04:55,925.925 INFO    ] Initializing speech engine...
[2026-06-27 21:04:55,938.938 INFO    ] 2026-06-27 21:04:55
[2026-06-27 21:04:56,159.159 INFO    ] 2026-06-27 21:04:56
[2026-06-27 21:04:56,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:04:56,389.389 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:04:56,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:04:56,533.533 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:04:56,579.579 INFO    ] time= 27/06/2026 21:04:56
[2026-06-27 21:04:56,618.618 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:04:56,641.641 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:04:56,717.717 INFO    ] No existing commands found in stream
[2026-06-27 21:05:01,728.728 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:05:01,730.730 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-27 21:05:04,275.275 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 21:05:04,278.278 INFO    ] Checking for system updates...
[2026-06-27 21:05:04,317.317 INFO    ] 200
[2026-06-27 21:05:04,318.318 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:05:04,350.350 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:05:04,351.351 INFO    ] No update needed
[2026-06-27 21:05:04,353.353 INFO    ] Checking for camera pi updates...
[2026-06-27 21:05:04,372.372 INFO    ] 200
[2026-06-27 21:05:04,373.373 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:05:04,398.398 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:05:04,440.440 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:05:04,441.441 INFO    ] No camera update needed
[2026-06-27 21:05:04,442.442 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:05:04,444.444 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:05:04,447.447 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:05:04,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:05:06,490.490 INFO    ] ================================================
[2026-06-27 21:05:06,505.505 INFO    ] Launching Daemon at Sat Jun 27 21:05:06 IST 2026
[2026-06-27 21:05:06,515.515 INFO    ] ================================================
[2026-06-27 21:05:06,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:05:06
[2026-06-27 21:05:07,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:05:07,329.329 INFO    ] Initializing speech engine...
[2026-06-27 21:05:07,333.333 INFO    ] 2026-06-27 21:05:07
[2026-06-27 21:05:07,562.562 INFO    ] 2026-06-27 21:05:07
[2026-06-27 21:05:07,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:05:07,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:05:07,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:05:07,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:05:07,984.984 INFO    ] time= 27/06/2026 21:05:07
[2026-06-27 21:05:08,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:05:08,040.040 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:05:08,115.115 INFO    ] No existing commands found in stream
[2026-06-27 21:05:13,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:05:13,128.128 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-27 21:05:15,410.410 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:05:15,412.412 INFO    ] Checking for system updates...
[2026-06-27 21:05:15,438.438 INFO    ] 200
[2026-06-27 21:05:15,439.439 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:05:15,470.470 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:05:15,471.471 INFO    ] No update needed
[2026-06-27 21:05:15,472.472 INFO    ] Checking for camera pi updates...
[2026-06-27 21:05:15,492.492 INFO    ] 200
[2026-06-27 21:05:15,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:05:15,518.518 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:05:15,566.566 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:05:15,567.567 INFO    ] No camera update needed
[2026-06-27 21:05:15,569.569 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:05:15,570.570 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:05:15,573.573 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:05:15,576.576 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:05:17,616.616 INFO    ] ================================================
[2026-06-27 21:05:17,631.631 INFO    ] Launching Daemon at Sat Jun 27 21:05:17 IST 2026
[2026-06-27 21:05:17,642.642 INFO    ] ================================================
[2026-06-27 21:05:18,029.029 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:05:18
[2026-06-27 21:05:18,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:05:18,510.510 INFO    ] Initializing speech engine...
[2026-06-27 21:05:18,519.519 INFO    ] 2026-06-27 21:05:18
[2026-06-27 21:05:18,730.730 INFO    ] 2026-06-27 21:05:18
[2026-06-27 21:05:18,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:05:19,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:05:19,071.071 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:05:19,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:05:19,292.292 INFO    ] time= 27/06/2026 21:05:19
[2026-06-27 21:05:19,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:05:19,297.297 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:05:19,368.368 INFO    ] No existing commands found in stream
[2026-06-27 21:05:24,378.378 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:05:24,381.381 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-27 21:05:28,077.077 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 21:05:28,079.079 INFO    ] Checking for system updates...
[2026-06-27 21:05:28,101.101 INFO    ] 200
[2026-06-27 21:05:28,102.102 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:05:28,137.137 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:05:28,139.139 INFO    ] No update needed
[2026-06-27 21:05:28,140.140 INFO    ] Checking for camera pi updates...
[2026-06-27 21:05:28,160.160 INFO    ] 200
[2026-06-27 21:05:28,162.162 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:05:28,186.186 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:05:28,231.231 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:05:28,232.232 INFO    ] No camera update needed
[2026-06-27 21:05:28,234.234 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:05:28,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:05:28,239.239 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:05:28,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:05:30,281.281 INFO    ] ================================================
[2026-06-27 21:05:30,297.297 INFO    ] Launching Daemon at Sat Jun 27 21:05:30 IST 2026
[2026-06-27 21:05:30,308.308 INFO    ] ================================================
[2026-06-27 21:05:30,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:05:30
[2026-06-27 21:05:31,029.029 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:05:31,173.173 INFO    ] Initializing speech engine...
[2026-06-27 21:05:31,184.184 INFO    ] 2026-06-27 21:05:31
[2026-06-27 21:05:31,392.392 INFO    ] 2026-06-27 21:05:31
[2026-06-27 21:05:31,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:05:31,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:05:31,608.608 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:05:31,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:05:31,811.811 INFO    ] time= 27/06/2026 21:05:31
[2026-06-27 21:05:31,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:05:31,842.842 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:05:31,915.915 INFO    ] No existing commands found in stream
[2026-06-27 21:05:36,936.936 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:05:36,939.939 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-27 21:05:40,369.369 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 21:05:40,371.371 INFO    ] Checking for system updates...
[2026-06-27 21:05:40,392.392 INFO    ] 200
[2026-06-27 21:05:40,393.393 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:05:40,428.428 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:05:40,429.429 INFO    ] No update needed
[2026-06-27 21:05:40,430.430 INFO    ] Checking for camera pi updates...
[2026-06-27 21:05:40,450.450 INFO    ] 200
[2026-06-27 21:05:40,451.451 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:05:40,475.475 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:05:40,523.523 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:05:40,524.524 INFO    ] No camera update needed
[2026-06-27 21:05:40,526.526 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:05:40,527.527 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:05:40,530.530 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:05:40,533.533 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:05:42,575.575 INFO    ] ================================================
[2026-06-27 21:05:42,590.590 INFO    ] Launching Daemon at Sat Jun 27 21:05:42 IST 2026
[2026-06-27 21:05:42,602.602 INFO    ] ================================================
[2026-06-27 21:05:42,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:05:42
[2026-06-27 21:05:43,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:05:43,387.387 INFO    ] Initializing speech engine...
[2026-06-27 21:05:43,400.400 INFO    ] 2026-06-27 21:05:43
[2026-06-27 21:05:43,608.608 INFO    ] 2026-06-27 21:05:43
[2026-06-27 21:05:43,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:05:43,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:05:43,820.820 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:05:43,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:05:44,006.006 INFO    ] time= 27/06/2026 21:05:43
[2026-06-27 21:05:44,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:05:44,053.053 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:05:44,121.121 INFO    ] No existing commands found in stream
[2026-06-27 21:05:49,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:05:49,129.129 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-27 21:05:53,109.109 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 21:05:53,111.111 INFO    ] Checking for system updates...
[2026-06-27 21:05:53,132.132 INFO    ] 200
[2026-06-27 21:05:53,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:05:53,165.165 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:05:53,166.166 INFO    ] No update needed
[2026-06-27 21:05:53,168.168 INFO    ] Checking for camera pi updates...
[2026-06-27 21:05:53,188.188 INFO    ] 200
[2026-06-27 21:05:53,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:05:53,214.214 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:05:53,262.262 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:05:53,264.264 INFO    ] No camera update needed
[2026-06-27 21:05:53,265.265 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:05:53,266.266 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:05:53,269.269 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:05:53,272.272 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:05:55,310.310 INFO    ] ================================================
[2026-06-27 21:05:55,326.326 INFO    ] Launching Daemon at Sat Jun 27 21:05:55 IST 2026
[2026-06-27 21:05:55,337.337 INFO    ] ================================================
[2026-06-27 21:05:55,661.661 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:05:55
[2026-06-27 21:05:55,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:05:56,120.120 INFO    ] Initializing speech engine...
[2026-06-27 21:05:56,126.126 INFO    ] 2026-06-27 21:05:56
[2026-06-27 21:05:56,347.347 INFO    ] 2026-06-27 21:05:56
[2026-06-27 21:05:56,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:05:56,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:05:56,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:05:56,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:05:56,793.793 INFO    ] time= 27/06/2026 21:05:56
[2026-06-27 21:05:56,821.821 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:05:56,827.827 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:05:56,897.897 INFO    ] No existing commands found in stream
[2026-06-27 21:06:01,905.905 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:06:01,907.907 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-27 21:06:05,079.079 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 21:06:05,080.080 INFO    ] Checking for system updates...
[2026-06-27 21:06:05,101.101 INFO    ] 200
[2026-06-27 21:06:05,103.103 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:06:05,133.133 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:06:05,135.135 INFO    ] No update needed
[2026-06-27 21:06:05,136.136 INFO    ] Checking for camera pi updates...
[2026-06-27 21:06:05,156.156 INFO    ] 200
[2026-06-27 21:06:05,157.157 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:06:05,182.182 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:06:05,227.227 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:06:05,228.228 INFO    ] No camera update needed
[2026-06-27 21:06:05,230.230 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:06:05,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:06:05,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:06:05,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:06:07,276.276 INFO    ] ================================================
[2026-06-27 21:06:07,292.292 INFO    ] Launching Daemon at Sat Jun 27 21:06:07 IST 2026
[2026-06-27 21:06:07,303.303 INFO    ] ================================================
[2026-06-27 21:06:07,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:06:07
[2026-06-27 21:06:07,953.953 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:06:08,086.086 INFO    ] Initializing speech engine...
[2026-06-27 21:06:08,091.091 INFO    ] 2026-06-27 21:06:08
[2026-06-27 21:06:08,301.301 INFO    ] 2026-06-27 21:06:08
[2026-06-27 21:06:08,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:06:08,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:06:08,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:06:08,710.710 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:06:08,766.766 INFO    ] time= 27/06/2026 21:06:08
[2026-06-27 21:06:08,802.802 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:06:08,814.814 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:06:08,890.890 INFO    ] No existing commands found in stream
[2026-06-27 21:06:13,901.901 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:06:13,904.904 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-27 21:06:16,649.649 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 21:06:16,650.650 INFO    ] Checking for system updates...
[2026-06-27 21:06:16,671.671 INFO    ] 200
[2026-06-27 21:06:16,673.673 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:06:16,703.703 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:06:16,705.705 INFO    ] No update needed
[2026-06-27 21:06:16,706.706 INFO    ] Checking for camera pi updates...
[2026-06-27 21:06:16,726.726 INFO    ] 200
[2026-06-27 21:06:16,727.727 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:06:16,751.751 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:06:16,798.798 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:06:16,799.799 INFO    ] No camera update needed
[2026-06-27 21:06:16,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:06:16,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:06:16,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:06:16,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:06:18,838.838 INFO    ] ================================================
[2026-06-27 21:06:18,846.846 INFO    ] Launching Daemon at Sat Jun 27 21:06:18 IST 2026
[2026-06-27 21:06:18,853.853 INFO    ] ================================================
[2026-06-27 21:06:19,169.169 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:06:19
[2026-06-27 21:06:19,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:06:19,646.646 INFO    ] Initializing speech engine...
[2026-06-27 21:06:19,652.652 INFO    ] 2026-06-27 21:06:19
[2026-06-27 21:06:19,876.876 INFO    ] 2026-06-27 21:06:19
[2026-06-27 21:06:19,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:06:20,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:06:20,099.099 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:06:20,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:06:20,306.306 INFO    ] time= 27/06/2026 21:06:20
[2026-06-27 21:06:20,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:06:20,342.342 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:06:20,435.435 INFO    ] No existing commands found in stream
[2026-06-27 21:06:25,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:06:25,447.447 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-27 21:06:26,310.310 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 21:06:26,312.312 INFO    ] Checking for system updates...
[2026-06-27 21:06:26,334.334 INFO    ] 200
[2026-06-27 21:06:26,336.336 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:06:26,367.367 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:06:26,368.368 INFO    ] No update needed
[2026-06-27 21:06:26,370.370 INFO    ] Checking for camera pi updates...
[2026-06-27 21:06:26,390.390 INFO    ] 200
[2026-06-27 21:06:26,392.392 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:06:26,415.415 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:06:26,457.457 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:06:26,459.459 INFO    ] No camera update needed
[2026-06-27 21:06:26,460.460 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:06:26,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:06:26,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:06:26,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:06:28,509.509 INFO    ] ================================================
[2026-06-27 21:06:28,525.525 INFO    ] Launching Daemon at Sat Jun 27 21:06:28 IST 2026
[2026-06-27 21:06:28,536.536 INFO    ] ================================================
[2026-06-27 21:06:28,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:06:28
[2026-06-27 21:06:29,259.259 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:06:29,397.397 INFO    ] Initializing speech engine...
[2026-06-27 21:06:29,407.407 INFO    ] 2026-06-27 21:06:29
[2026-06-27 21:06:29,612.612 INFO    ] 2026-06-27 21:06:29
[2026-06-27 21:06:29,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:06:29,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:06:29,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:06:29,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:06:30,027.027 INFO    ] time= 27/06/2026 21:06:29
[2026-06-27 21:06:30,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:06:30,067.067 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:06:30,138.138 INFO    ] No existing commands found in stream
[2026-06-27 21:06:35,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:06:35,150.150 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-27 21:06:36,256.256 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:06:36,257.257 INFO    ] Checking for system updates...
[2026-06-27 21:06:36,278.278 INFO    ] 200
[2026-06-27 21:06:36,279.279 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:06:36,311.311 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:06:36,312.312 INFO    ] No update needed
[2026-06-27 21:06:36,314.314 INFO    ] Checking for camera pi updates...
[2026-06-27 21:06:36,333.333 INFO    ] 200
[2026-06-27 21:06:36,335.335 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:06:36,358.358 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:06:36,405.405 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:06:36,407.407 INFO    ] No camera update needed
[2026-06-27 21:06:36,408.408 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:06:36,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:06:36,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:06:36,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:06:38,453.453 INFO    ] ================================================
[2026-06-27 21:06:38,468.468 INFO    ] Launching Daemon at Sat Jun 27 21:06:38 IST 2026
[2026-06-27 21:06:38,479.479 INFO    ] ================================================
[2026-06-27 21:06:38,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:06:38
[2026-06-27 21:06:39,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:06:39,355.355 INFO    ] Initializing speech engine...
[2026-06-27 21:06:39,361.361 INFO    ] 2026-06-27 21:06:39
[2026-06-27 21:06:39,571.571 INFO    ] 2026-06-27 21:06:39
[2026-06-27 21:06:39,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:06:39,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:06:39,788.788 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:06:39,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:06:39,995.995 INFO    ] time= 27/06/2026 21:06:39
[2026-06-27 21:06:40,016.016 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:06:40,022.022 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:06:40,089.089 INFO    ] No existing commands found in stream
[2026-06-27 21:06:45,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:06:45,104.104 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-27 21:06:47,811.811 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 21:06:47,812.812 INFO    ] Checking for system updates...
[2026-06-27 21:06:47,834.834 INFO    ] 200
[2026-06-27 21:06:47,836.836 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:06:47,866.866 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:06:47,868.868 INFO    ] No update needed
[2026-06-27 21:06:47,869.869 INFO    ] Checking for camera pi updates...
[2026-06-27 21:06:47,889.889 INFO    ] 200
[2026-06-27 21:06:47,891.891 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:06:47,917.917 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:06:48,067.067 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:06:48,068.068 INFO    ] No camera update needed
[2026-06-27 21:06:48,070.070 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:06:48,071.071 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:06:48,076.076 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:06:48,079.079 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:06:50,119.119 INFO    ] ================================================
[2026-06-27 21:06:50,135.135 INFO    ] Launching Daemon at Sat Jun 27 21:06:50 IST 2026
[2026-06-27 21:06:50,146.146 INFO    ] ================================================
[2026-06-27 21:06:50,483.483 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:06:50
[2026-06-27 21:06:50,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:06:50,946.946 INFO    ] Initializing speech engine...
[2026-06-27 21:06:50,951.951 INFO    ] 2026-06-27 21:06:50
[2026-06-27 21:06:51,157.157 INFO    ] 2026-06-27 21:06:51
[2026-06-27 21:06:51,186.186 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:06:51,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:06:51,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:06:51,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:06:51,577.577 INFO    ] time= 27/06/2026 21:06:51
[2026-06-27 21:06:51,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:06:51,605.605 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:06:51,670.670 INFO    ] No existing commands found in stream
[2026-06-27 21:06:56,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:06:56,683.683 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-27 21:06:59,125.125 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 21:06:59,127.127 INFO    ] Checking for system updates...
[2026-06-27 21:06:59,148.148 INFO    ] 200
[2026-06-27 21:06:59,149.149 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:06:59,180.180 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:06:59,182.182 INFO    ] No update needed
[2026-06-27 21:06:59,183.183 INFO    ] Checking for camera pi updates...
[2026-06-27 21:06:59,205.205 INFO    ] 200
[2026-06-27 21:06:59,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:06:59,231.231 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:06:59,271.271 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:06:59,272.272 INFO    ] No camera update needed
[2026-06-27 21:06:59,274.274 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:06:59,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:06:59,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:06:59,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:07:01,329.329 INFO    ] ================================================
[2026-06-27 21:07:01,360.360 INFO    ] Launching Daemon at Sat Jun 27 21:07:01 IST 2026
[2026-06-27 21:07:01,397.397 INFO    ] ================================================
[2026-06-27 21:07:01,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:07:01
[2026-06-27 21:07:02,188.188 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:07:02,379.379 INFO    ] Initializing speech engine...
[2026-06-27 21:07:02,384.384 INFO    ] 2026-06-27 21:07:02
[2026-06-27 21:07:02,604.604 INFO    ] 2026-06-27 21:07:02
[2026-06-27 21:07:02,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:07:02,758.758 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:07:02,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:07:02,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:07:03,030.030 INFO    ] time= 27/06/2026 21:07:02
[2026-06-27 21:07:03,053.053 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:07:03,059.059 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:07:03,126.126 INFO    ] No existing commands found in stream
[2026-06-27 21:07:08,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:07:08,138.138 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-27 21:07:11,041.041 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 21:07:11,042.042 INFO    ] Checking for system updates...
[2026-06-27 21:07:11,062.062 INFO    ] 200
[2026-06-27 21:07:11,064.064 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:07:11,097.097 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:07:11,098.098 INFO    ] No update needed
[2026-06-27 21:07:11,100.100 INFO    ] Checking for camera pi updates...
[2026-06-27 21:07:11,120.120 INFO    ] 200
[2026-06-27 21:07:11,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:07:11,144.144 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:07:11,189.189 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:07:11,190.190 INFO    ] No camera update needed
[2026-06-27 21:07:11,191.191 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:07:11,193.193 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:07:11,196.196 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:07:11,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:07:13,237.237 INFO    ] ================================================
[2026-06-27 21:07:13,252.252 INFO    ] Launching Daemon at Sat Jun 27 21:07:13 IST 2026
[2026-06-27 21:07:13,263.263 INFO    ] ================================================
[2026-06-27 21:07:13,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:07:13
[2026-06-27 21:07:13,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:07:14,057.057 INFO    ] Initializing speech engine...
[2026-06-27 21:07:14,061.061 INFO    ] 2026-06-27 21:07:14
[2026-06-27 21:07:14,276.276 INFO    ] 2026-06-27 21:07:14
[2026-06-27 21:07:14,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:07:14,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:07:14,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:07:14,640.640 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:07:14,697.697 INFO    ] time= 27/06/2026 21:07:14
[2026-06-27 21:07:14,720.720 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:07:14,726.726 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:07:14,793.793 INFO    ] No existing commands found in stream
[2026-06-27 21:07:19,802.802 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:07:19,805.805 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-27 21:07:23,046.046 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 21:07:23,047.047 INFO    ] Checking for system updates...
[2026-06-27 21:07:23,068.068 INFO    ] 200
[2026-06-27 21:07:23,070.070 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:07:23,101.101 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:07:23,103.103 INFO    ] No update needed
[2026-06-27 21:07:23,104.104 INFO    ] Checking for camera pi updates...
[2026-06-27 21:07:23,124.124 INFO    ] 200
[2026-06-27 21:07:23,126.126 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:07:23,150.150 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:07:23,192.192 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:07:23,193.193 INFO    ] No camera update needed
[2026-06-27 21:07:23,195.195 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:07:23,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:07:23,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:07:23,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:07:25,240.240 INFO    ] ================================================
[2026-06-27 21:07:25,255.255 INFO    ] Launching Daemon at Sat Jun 27 21:07:25 IST 2026
[2026-06-27 21:07:25,266.266 INFO    ] ================================================
[2026-06-27 21:07:25,642.642 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:07:25
[2026-06-27 21:07:25,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:07:26,145.145 INFO    ] Initializing speech engine...
[2026-06-27 21:07:26,149.149 INFO    ] 2026-06-27 21:07:26
[2026-06-27 21:07:26,356.356 INFO    ] 2026-06-27 21:07:26
[2026-06-27 21:07:26,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:07:26,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:07:26,584.584 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:07:26,771.771 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:07:26,799.799 INFO    ] time= 27/06/2026 21:07:26
[2026-06-27 21:07:26,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:07:26,807.807 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:07:26,874.874 INFO    ] No existing commands found in stream
[2026-06-27 21:07:31,887.887 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:07:31,889.889 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-27 21:07:35,644.644 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 21:07:35,646.646 INFO    ] Checking for system updates...
[2026-06-27 21:07:35,667.667 INFO    ] 200
[2026-06-27 21:07:35,669.669 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:07:35,700.700 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:07:35,702.702 INFO    ] No update needed
[2026-06-27 21:07:35,703.703 INFO    ] Checking for camera pi updates...
[2026-06-27 21:07:35,724.724 INFO    ] 200
[2026-06-27 21:07:35,726.726 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:07:35,750.750 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:07:35,797.797 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:07:35,799.799 INFO    ] No camera update needed
[2026-06-27 21:07:35,800.800 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:07:35,801.801 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:07:35,805.805 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:07:35,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:07:37,847.847 INFO    ] ================================================
[2026-06-27 21:07:37,862.862 INFO    ] Launching Daemon at Sat Jun 27 21:07:37 IST 2026
[2026-06-27 21:07:37,872.872 INFO    ] ================================================
[2026-06-27 21:07:38,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:07:38
[2026-06-27 21:07:38,530.530 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:07:38,666.666 INFO    ] Initializing speech engine...
[2026-06-27 21:07:38,675.675 INFO    ] 2026-06-27 21:07:38
[2026-06-27 21:07:38,879.879 INFO    ] 2026-06-27 21:07:38
[2026-06-27 21:07:38,907.907 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:07:39,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:07:39,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:07:39,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:07:39,294.294 INFO    ] time= 27/06/2026 21:07:39
[2026-06-27 21:07:39,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:07:39,323.323 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:07:39,394.394 INFO    ] No existing commands found in stream
[2026-06-27 21:07:44,408.408 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:07:44,411.411 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-27 21:07:45,394.394 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:07:45,395.395 INFO    ] Checking for system updates...
[2026-06-27 21:07:45,417.417 INFO    ] 200
[2026-06-27 21:07:45,419.419 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:07:45,449.449 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:07:45,451.451 INFO    ] No update needed
[2026-06-27 21:07:45,452.452 INFO    ] Checking for camera pi updates...
[2026-06-27 21:07:45,471.471 INFO    ] 200
[2026-06-27 21:07:45,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:07:45,498.498 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:07:45,543.543 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:07:45,544.544 INFO    ] No camera update needed
[2026-06-27 21:07:45,545.545 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:07:45,547.547 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:07:45,550.550 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:07:45,552.552 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:07:47,590.590 INFO    ] ================================================
[2026-06-27 21:07:47,606.606 INFO    ] Launching Daemon at Sat Jun 27 21:07:47 IST 2026
[2026-06-27 21:07:47,616.616 INFO    ] ================================================
[2026-06-27 21:07:47,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:07:47
[2026-06-27 21:07:48,304.304 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:07:48,448.448 INFO    ] Initializing speech engine...
[2026-06-27 21:07:48,453.453 INFO    ] 2026-06-27 21:07:48
[2026-06-27 21:07:48,657.657 INFO    ] 2026-06-27 21:07:48
[2026-06-27 21:07:48,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:07:48,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:07:48,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:07:49,006.006 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:07:49,069.069 INFO    ] time= 27/06/2026 21:07:49
[2026-06-27 21:07:49,101.101 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:07:49,107.107 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:07:49,174.174 INFO    ] No existing commands found in stream
[2026-06-27 21:07:54,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:07:54,186.186 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-27 21:07:55,789.789 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 21:07:55,790.790 INFO    ] Checking for system updates...
[2026-06-27 21:07:55,811.811 INFO    ] 200
[2026-06-27 21:07:55,812.812 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:07:55,843.843 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:07:55,844.844 INFO    ] No update needed
[2026-06-27 21:07:55,846.846 INFO    ] Checking for camera pi updates...
[2026-06-27 21:07:55,865.865 INFO    ] 200
[2026-06-27 21:07:55,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:07:55,890.890 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:07:55,916.916 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:07:55,917.917 INFO    ] No camera update needed
[2026-06-27 21:07:55,919.919 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:07:55,920.920 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:07:55,923.923 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:07:55,926.926 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:07:57,967.967 INFO    ] ================================================
[2026-06-27 21:07:57,982.982 INFO    ] Launching Daemon at Sat Jun 27 21:07:57 IST 2026
[2026-06-27 21:07:57,993.993 INFO    ] ================================================
[2026-06-27 21:07:58,346.346 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:07:58
[2026-06-27 21:07:58,668.668 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:07:58,800.800 INFO    ] Initializing speech engine...
[2026-06-27 21:07:58,808.808 INFO    ] 2026-06-27 21:07:58
[2026-06-27 21:07:59,023.023 INFO    ] 2026-06-27 21:07:58
[2026-06-27 21:07:59,052.052 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:07:59,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:07:59,250.250 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:07:59,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:07:59,445.445 INFO    ] time= 27/06/2026 21:07:59
[2026-06-27 21:07:59,474.474 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:07:59,480.480 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:07:59,546.546 INFO    ] No existing commands found in stream
[2026-06-27 21:08:04,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:08:04,560.560 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-27 21:08:07,670.670 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 21:08:07,671.671 INFO    ] Checking for system updates...
[2026-06-27 21:08:07,695.695 INFO    ] 200
[2026-06-27 21:08:07,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:08:07,729.729 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:08:07,730.730 INFO    ] No update needed
[2026-06-27 21:08:07,732.732 INFO    ] Checking for camera pi updates...
[2026-06-27 21:08:07,752.752 INFO    ] 200
[2026-06-27 21:08:07,753.753 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:08:07,778.778 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:08:07,822.822 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:08:07,824.824 INFO    ] No camera update needed
[2026-06-27 21:08:07,825.825 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:08:07,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:08:07,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:08:07,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:08:09,872.872 INFO    ] ================================================
[2026-06-27 21:08:09,887.887 INFO    ] Launching Daemon at Sat Jun 27 21:08:09 IST 2026
[2026-06-27 21:08:09,898.898 INFO    ] ================================================
[2026-06-27 21:08:10,253.253 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:08:10
[2026-06-27 21:08:10,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:08:10,709.709 INFO    ] Initializing speech engine...
[2026-06-27 21:08:10,714.714 INFO    ] 2026-06-27 21:08:10
[2026-06-27 21:08:10,920.920 INFO    ] 2026-06-27 21:08:10
[2026-06-27 21:08:10,949.949 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:08:11,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:08:11,135.135 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:08:11,276.276 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:08:11,334.334 INFO    ] time= 27/06/2026 21:08:11
[2026-06-27 21:08:11,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:08:11,372.372 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:08:11,440.440 INFO    ] No existing commands found in stream
[2026-06-27 21:08:16,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:08:16,449.449 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-27 21:08:18,245.245 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 21:08:18,247.247 INFO    ] Checking for system updates...
[2026-06-27 21:08:18,268.268 INFO    ] 200
[2026-06-27 21:08:18,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:08:18,301.301 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:08:18,302.302 INFO    ] No update needed
[2026-06-27 21:08:18,304.304 INFO    ] Checking for camera pi updates...
[2026-06-27 21:08:18,324.324 INFO    ] 200
[2026-06-27 21:08:18,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:08:18,349.349 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:08:18,392.392 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:08:18,393.393 INFO    ] No camera update needed
[2026-06-27 21:08:18,395.395 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:08:18,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:08:18,400.400 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:08:18,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:08:20,442.442 INFO    ] ================================================
[2026-06-27 21:08:20,457.457 INFO    ] Launching Daemon at Sat Jun 27 21:08:20 IST 2026
[2026-06-27 21:08:20,467.467 INFO    ] ================================================
[2026-06-27 21:08:20,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:08:20
[2026-06-27 21:08:21,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:08:21,235.235 INFO    ] Initializing speech engine...
[2026-06-27 21:08:21,239.239 INFO    ] 2026-06-27 21:08:21
[2026-06-27 21:08:21,458.458 INFO    ] 2026-06-27 21:08:21
[2026-06-27 21:08:21,488.488 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:08:21,674.674 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:08:21,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:08:21,904.904 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:08:21,906.906 INFO    ] time= 27/06/2026 21:08:21
[2026-06-27 21:08:21,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:08:21,909.909 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:08:22,038.038 INFO    ] No existing commands found in stream
[2026-06-27 21:08:27,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:08:27,051.051 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-27 21:08:28,011.011 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 21:08:28,012.012 INFO    ] Checking for system updates...
[2026-06-27 21:08:28,033.033 INFO    ] 200
[2026-06-27 21:08:28,035.035 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:08:28,066.066 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:08:28,067.067 INFO    ] No update needed
[2026-06-27 21:08:28,068.068 INFO    ] Checking for camera pi updates...
[2026-06-27 21:08:28,088.088 INFO    ] 200
[2026-06-27 21:08:28,090.090 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:08:28,113.113 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:08:28,157.157 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:08:28,158.158 INFO    ] No camera update needed
[2026-06-27 21:08:28,160.160 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:08:28,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:08:28,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:08:28,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:08:30,208.208 INFO    ] ================================================
[2026-06-27 21:08:30,224.224 INFO    ] Launching Daemon at Sat Jun 27 21:08:30 IST 2026
[2026-06-27 21:08:30,235.235 INFO    ] ================================================
[2026-06-27 21:08:30,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:08:30
[2026-06-27 21:08:30,947.947 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:08:31,104.104 INFO    ] Initializing speech engine...
[2026-06-27 21:08:31,108.108 INFO    ] 2026-06-27 21:08:31
[2026-06-27 21:08:31,322.322 INFO    ] 2026-06-27 21:08:31
[2026-06-27 21:08:31,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:08:31,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:08:31,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:08:31,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:08:31,800.800 INFO    ] time= 27/06/2026 21:08:31
[2026-06-27 21:08:31,829.829 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:08:31,836.836 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:08:31,933.933 INFO    ] No existing commands found in stream
[2026-06-27 21:08:36,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:08:36,960.960 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-27 21:08:39,884.884 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 21:08:39,886.886 INFO    ] Checking for system updates...
[2026-06-27 21:08:39,907.907 INFO    ] 200
[2026-06-27 21:08:39,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:08:39,939.939 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:08:39,940.940 INFO    ] No update needed
[2026-06-27 21:08:39,942.942 INFO    ] Checking for camera pi updates...
[2026-06-27 21:08:39,963.963 INFO    ] 200
[2026-06-27 21:08:39,964.964 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:08:39,987.987 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:08:40,035.035 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:08:40,036.036 INFO    ] No camera update needed
[2026-06-27 21:08:40,037.037 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:08:40,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:08:40,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:08:40,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:08:42,084.084 INFO    ] ================================================
[2026-06-27 21:08:42,100.100 INFO    ] Launching Daemon at Sat Jun 27 21:08:42 IST 2026
[2026-06-27 21:08:42,112.112 INFO    ] ================================================
[2026-06-27 21:08:42,458.458 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:08:42
[2026-06-27 21:08:42,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:08:42,914.914 INFO    ] Initializing speech engine...
[2026-06-27 21:08:42,919.919 INFO    ] 2026-06-27 21:08:42
[2026-06-27 21:08:43,125.125 INFO    ] 2026-06-27 21:08:43
[2026-06-27 21:08:43,153.153 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:08:43,277.277 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:08:43,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:08:43,499.499 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:08:43,548.548 INFO    ] time= 27/06/2026 21:08:43
[2026-06-27 21:08:43,569.569 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:08:43,576.576 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:08:43,642.642 INFO    ] No existing commands found in stream
[2026-06-27 21:08:48,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:08:48,654.654 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-27 21:08:52,685.685 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:08:52,687.687 INFO    ] Checking for system updates...
[2026-06-27 21:08:52,708.708 INFO    ] 200
[2026-06-27 21:08:52,710.710 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:08:52,741.741 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:08:52,742.742 INFO    ] No update needed
[2026-06-27 21:08:52,745.745 INFO    ] Checking for camera pi updates...
[2026-06-27 21:08:52,765.765 INFO    ] 200
[2026-06-27 21:08:52,766.766 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:08:52,790.790 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:08:52,935.935 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:08:52,937.937 INFO    ] No camera update needed
[2026-06-27 21:08:52,938.938 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:08:52,940.940 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:08:52,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:08:52,946.946 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:08:54,987.987 INFO    ] ================================================
[2026-06-27 21:08:55,002.002 INFO    ] Launching Daemon at Sat Jun 27 21:08:54 IST 2026
[2026-06-27 21:08:55,013.013 INFO    ] ================================================
[2026-06-27 21:08:55,374.374 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:08:55
[2026-06-27 21:08:55,699.699 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:08:55,839.839 INFO    ] Initializing speech engine...
[2026-06-27 21:08:55,849.849 INFO    ] 2026-06-27 21:08:55
[2026-06-27 21:08:56,054.054 INFO    ] 2026-06-27 21:08:56
[2026-06-27 21:08:56,084.084 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:08:56,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:08:56,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:08:56,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:08:56,466.466 INFO    ] time= 27/06/2026 21:08:56
[2026-06-27 21:08:56,499.499 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:08:56,505.505 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:08:56,571.571 INFO    ] No existing commands found in stream
[2026-06-27 21:09:01,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:09:01,585.585 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-27 21:09:05,119.119 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 21:09:05,120.120 INFO    ] Checking for system updates...
[2026-06-27 21:09:05,142.142 INFO    ] 200
[2026-06-27 21:09:05,144.144 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:09:05,177.177 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:09:05,178.178 INFO    ] No update needed
[2026-06-27 21:09:05,180.180 INFO    ] Checking for camera pi updates...
[2026-06-27 21:09:05,203.203 INFO    ] 200
[2026-06-27 21:09:05,204.204 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:09:05,228.228 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:09:05,275.275 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:09:05,276.276 INFO    ] No camera update needed
[2026-06-27 21:09:05,278.278 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:09:05,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:09:05,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:09:05,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:09:07,326.326 INFO    ] ================================================
[2026-06-27 21:09:07,341.341 INFO    ] Launching Daemon at Sat Jun 27 21:09:07 IST 2026
[2026-06-27 21:09:07,352.352 INFO    ] ================================================
[2026-06-27 21:09:07,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:09:07
[2026-06-27 21:09:08,002.002 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:09:08,133.133 INFO    ] Initializing speech engine...
[2026-06-27 21:09:08,137.137 INFO    ] 2026-06-27 21:09:08
[2026-06-27 21:09:08,355.355 INFO    ] 2026-06-27 21:09:08
[2026-06-27 21:09:08,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:09:08,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:09:08,580.580 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:09:08,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:09:08,767.767 INFO    ] time= 27/06/2026 21:09:08
[2026-06-27 21:09:08,797.797 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:09:08,807.807 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:09:08,878.878 INFO    ] No existing commands found in stream
[2026-06-27 21:09:13,889.889 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:09:13,891.891 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-27 21:09:16,725.725 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 21:09:16,727.727 INFO    ] Checking for system updates...
[2026-06-27 21:09:16,749.749 INFO    ] 200
[2026-06-27 21:09:16,750.750 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:09:16,781.781 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:09:16,782.782 INFO    ] No update needed
[2026-06-27 21:09:16,784.784 INFO    ] Checking for camera pi updates...
[2026-06-27 21:09:16,804.804 INFO    ] 200
[2026-06-27 21:09:16,805.805 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:09:16,830.830 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:09:16,876.876 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:09:16,877.877 INFO    ] No camera update needed
[2026-06-27 21:09:16,879.879 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:09:16,880.880 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:09:16,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:09:16,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:09:18,925.925 INFO    ] ================================================
[2026-06-27 21:09:18,941.941 INFO    ] Launching Daemon at Sat Jun 27 21:09:18 IST 2026
[2026-06-27 21:09:18,953.953 INFO    ] ================================================
[2026-06-27 21:09:19,294.294 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:09:19
[2026-06-27 21:09:19,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:09:19,743.743 INFO    ] Initializing speech engine...
[2026-06-27 21:09:19,751.751 INFO    ] 2026-06-27 21:09:19
[2026-06-27 21:09:19,976.976 INFO    ] 2026-06-27 21:09:19
[2026-06-27 21:09:20,008.008 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:09:20,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:09:20,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:09:20,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:09:20,402.402 INFO    ] time= 27/06/2026 21:09:20
[2026-06-27 21:09:20,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:09:20,458.458 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:09:20,535.535 INFO    ] No existing commands found in stream
[2026-06-27 21:09:25,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:09:25,548.548 INFO    ] Waiting 2.19 seconds before fallback handling...
[2026-06-27 21:09:28,109.109 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 21:09:28,110.110 INFO    ] Checking for system updates...
[2026-06-27 21:09:28,131.131 INFO    ] 200
[2026-06-27 21:09:28,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:09:28,165.165 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:09:28,166.166 INFO    ] No update needed
[2026-06-27 21:09:28,168.168 INFO    ] Checking for camera pi updates...
[2026-06-27 21:09:28,187.187 INFO    ] 200
[2026-06-27 21:09:28,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:09:28,212.212 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:09:28,264.264 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:09:28,266.266 INFO    ] No camera update needed
[2026-06-27 21:09:28,267.267 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:09:28,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:09:28,271.271 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:09:28,274.274 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:09:30,314.314 INFO    ] ================================================
[2026-06-27 21:09:30,330.330 INFO    ] Launching Daemon at Sat Jun 27 21:09:30 IST 2026
[2026-06-27 21:09:30,341.341 INFO    ] ================================================
[2026-06-27 21:09:30,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:09:30
[2026-06-27 21:09:31,003.003 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:09:31,140.140 INFO    ] Initializing speech engine...
[2026-06-27 21:09:31,150.150 INFO    ] 2026-06-27 21:09:31
[2026-06-27 21:09:31,353.353 INFO    ] 2026-06-27 21:09:31
[2026-06-27 21:09:31,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:09:31,566.566 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:09:31,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:09:31,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:09:31,774.774 INFO    ] time= 27/06/2026 21:09:31
[2026-06-27 21:09:31,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:09:31,801.801 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:09:31,868.868 INFO    ] No existing commands found in stream
[2026-06-27 21:09:36,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:09:36,880.880 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-27 21:09:39,959.959 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 21:09:39,960.960 INFO    ] Checking for system updates...
[2026-06-27 21:09:39,983.983 INFO    ] 200
[2026-06-27 21:09:39,984.984 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:09:40,015.015 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:09:40,017.017 INFO    ] No update needed
[2026-06-27 21:09:40,018.018 INFO    ] Checking for camera pi updates...
[2026-06-27 21:09:40,037.037 INFO    ] 200
[2026-06-27 21:09:40,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:09:40,064.064 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:09:40,107.107 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:09:40,109.109 INFO    ] No camera update needed
[2026-06-27 21:09:40,110.110 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:09:40,111.111 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:09:40,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:09:40,117.117 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:09:42,158.158 INFO    ] ================================================
[2026-06-27 21:09:42,174.174 INFO    ] Launching Daemon at Sat Jun 27 21:09:42 IST 2026
[2026-06-27 21:09:42,185.185 INFO    ] ================================================
[2026-06-27 21:09:42,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:09:42
[2026-06-27 21:09:42,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:09:43,033.033 INFO    ] Initializing speech engine...
[2026-06-27 21:09:43,039.039 INFO    ] 2026-06-27 21:09:43
[2026-06-27 21:09:43,249.249 INFO    ] 2026-06-27 21:09:43
[2026-06-27 21:09:43,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:09:43,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:09:43,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:09:43,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:09:43,688.688 INFO    ] time= 27/06/2026 21:09:43
[2026-06-27 21:09:43,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:09:43,721.721 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:09:43,787.787 INFO    ] No existing commands found in stream
[2026-06-27 21:09:48,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:09:48,800.800 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-27 21:09:49,632.632 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 21:09:49,633.633 INFO    ] Checking for system updates...
[2026-06-27 21:09:49,654.654 INFO    ] 200
[2026-06-27 21:09:49,656.656 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:09:49,686.686 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:09:49,688.688 INFO    ] No update needed
[2026-06-27 21:09:49,689.689 INFO    ] Checking for camera pi updates...
[2026-06-27 21:09:49,708.708 INFO    ] 200
[2026-06-27 21:09:49,710.710 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:09:49,735.735 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:09:49,778.778 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:09:49,779.779 INFO    ] No camera update needed
[2026-06-27 21:09:49,781.781 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:09:49,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:09:49,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:09:49,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:09:51,827.827 INFO    ] ================================================
[2026-06-27 21:09:51,842.842 INFO    ] Launching Daemon at Sat Jun 27 21:09:51 IST 2026
[2026-06-27 21:09:51,854.854 INFO    ] ================================================
[2026-06-27 21:09:52,240.240 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:09:52
[2026-06-27 21:09:52,578.578 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:09:52,731.731 INFO    ] Initializing speech engine...
[2026-06-27 21:09:52,737.737 INFO    ] 2026-06-27 21:09:52
[2026-06-27 21:09:52,946.946 INFO    ] 2026-06-27 21:09:52
[2026-06-27 21:09:52,975.975 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:09:53,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:09:53,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:09:53,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:09:53,388.388 INFO    ] time= 27/06/2026 21:09:53
[2026-06-27 21:09:53,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:09:53,396.396 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:09:53,463.463 INFO    ] No existing commands found in stream
[2026-06-27 21:09:58,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:09:58,481.481 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-27 21:10:01,128.128 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 21:10:01,130.130 INFO    ] Checking for system updates...
[2026-06-27 21:10:01,157.157 INFO    ] 200
[2026-06-27 21:10:01,160.160 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:10:01,303.303 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:10:01,310.310 INFO    ] No update needed
[2026-06-27 21:10:01,313.313 INFO    ] Checking for camera pi updates...
[2026-06-27 21:10:01,480.480 INFO    ] 200
[2026-06-27 21:10:01,482.482 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:10:01,583.583 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:10:01,629.629 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:10:01,637.637 INFO    ] No camera update needed
[2026-06-27 21:10:01,640.640 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:10:01,653.653 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:10:01,659.659 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:10:01,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:10:03,702.702 INFO    ] ================================================
[2026-06-27 21:10:03,719.719 INFO    ] Launching Daemon at Sat Jun 27 21:10:03 IST 2026
[2026-06-27 21:10:03,730.730 INFO    ] ================================================
[2026-06-27 21:10:04,085.085 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:10:04
[2026-06-27 21:10:04,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:10:04,528.528 INFO    ] Initializing speech engine...
[2026-06-27 21:10:04,536.536 INFO    ] 2026-06-27 21:10:04
[2026-06-27 21:10:04,751.751 INFO    ] 2026-06-27 21:10:04
[2026-06-27 21:10:04,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:10:04,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:10:04,968.968 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:10:05,101.101 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:10:05,166.166 INFO    ] time= 27/06/2026 21:10:05
[2026-06-27 21:10:05,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:10:05,202.202 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:10:05,273.273 INFO    ] No existing commands found in stream
[2026-06-27 21:10:10,283.283 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:10:10,286.286 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-27 21:10:13,520.520 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:10:13,522.522 INFO    ] Checking for system updates...
[2026-06-27 21:10:13,544.544 INFO    ] 200
[2026-06-27 21:10:13,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:10:13,577.577 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:10:13,579.579 INFO    ] No update needed
[2026-06-27 21:10:13,580.580 INFO    ] Checking for camera pi updates...
[2026-06-27 21:10:13,601.601 INFO    ] 200
[2026-06-27 21:10:13,602.602 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:10:13,631.631 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:10:13,670.670 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:10:13,671.671 INFO    ] No camera update needed
[2026-06-27 21:10:13,672.672 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:10:13,674.674 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:10:13,677.677 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:10:13,679.679 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:10:15,719.719 INFO    ] ================================================
[2026-06-27 21:10:15,741.741 INFO    ] Launching Daemon at Sat Jun 27 21:10:15 IST 2026
[2026-06-27 21:10:15,752.752 INFO    ] ================================================
[2026-06-27 21:10:16,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:10:16
[2026-06-27 21:10:16,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:10:16,547.547 INFO    ] Initializing speech engine...
[2026-06-27 21:10:16,550.550 INFO    ] 2026-06-27 21:10:16
[2026-06-27 21:10:16,767.767 INFO    ] 2026-06-27 21:10:16
[2026-06-27 21:10:16,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:10:17,060.060 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:10:17,108.108 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:10:17,274.274 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:10:17,277.277 INFO    ] time= 27/06/2026 21:10:17
[2026-06-27 21:10:17,279.279 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:10:17,304.304 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:10:17,420.420 INFO    ] No existing commands found in stream
[2026-06-27 21:10:22,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:10:22,435.435 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-27 21:10:24,952.952 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 21:10:24,953.953 INFO    ] Checking for system updates...
[2026-06-27 21:10:24,974.974 INFO    ] 200
[2026-06-27 21:10:24,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:10:25,008.008 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:10:25,009.009 INFO    ] No update needed
[2026-06-27 21:10:25,011.011 INFO    ] Checking for camera pi updates...
[2026-06-27 21:10:25,032.032 INFO    ] 200
[2026-06-27 21:10:25,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:10:25,058.058 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:10:25,095.095 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:10:25,096.096 INFO    ] No camera update needed
[2026-06-27 21:10:25,098.098 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:10:25,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:10:25,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:10:25,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:10:27,144.144 INFO    ] ================================================
[2026-06-27 21:10:27,160.160 INFO    ] Launching Daemon at Sat Jun 27 21:10:27 IST 2026
[2026-06-27 21:10:27,172.172 INFO    ] ================================================
[2026-06-27 21:10:27,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:10:27
[2026-06-27 21:10:27,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:10:27,962.962 INFO    ] Initializing speech engine...
[2026-06-27 21:10:27,966.966 INFO    ] 2026-06-27 21:10:27
[2026-06-27 21:10:28,172.172 INFO    ] 2026-06-27 21:10:28
[2026-06-27 21:10:28,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:10:28,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:10:28,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:10:28,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:10:28,592.592 INFO    ] time= 27/06/2026 21:10:28
[2026-06-27 21:10:28,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:10:28,618.618 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:10:28,690.690 INFO    ] No existing commands found in stream
[2026-06-27 21:10:33,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:10:33,702.702 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-27 21:10:36,653.653 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 21:10:36,655.655 INFO    ] Checking for system updates...
[2026-06-27 21:10:36,676.676 INFO    ] 200
[2026-06-27 21:10:36,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:10:36,709.709 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:10:36,711.711 INFO    ] No update needed
[2026-06-27 21:10:36,712.712 INFO    ] Checking for camera pi updates...
[2026-06-27 21:10:36,732.732 INFO    ] 200
[2026-06-27 21:10:36,734.734 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:10:36,758.758 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:10:36,802.802 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:10:36,804.804 INFO    ] No camera update needed
[2026-06-27 21:10:36,805.805 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:10:36,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:10:36,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:10:36,813.813 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:10:38,853.853 INFO    ] ================================================
[2026-06-27 21:10:38,869.869 INFO    ] Launching Daemon at Sat Jun 27 21:10:38 IST 2026
[2026-06-27 21:10:38,880.880 INFO    ] ================================================
[2026-06-27 21:10:39,258.258 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:10:39
[2026-06-27 21:10:39,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:10:39,721.721 INFO    ] Initializing speech engine...
[2026-06-27 21:10:39,726.726 INFO    ] 2026-06-27 21:10:39
[2026-06-27 21:10:39,930.930 INFO    ] 2026-06-27 21:10:39
[2026-06-27 21:10:39,958.958 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:10:40,143.143 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:10:40,152.152 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:10:40,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:10:40,346.346 INFO    ] time= 27/06/2026 21:10:40
[2026-06-27 21:10:40,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:10:40,375.375 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:10:40,445.445 INFO    ] No existing commands found in stream
[2026-06-27 21:10:45,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:10:45,458.458 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-27 21:10:46,089.089 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 21:10:46,091.091 INFO    ] Checking for system updates...
[2026-06-27 21:10:46,113.113 INFO    ] 200
[2026-06-27 21:10:46,115.115 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:10:46,148.148 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:10:46,150.150 INFO    ] No update needed
[2026-06-27 21:10:46,151.151 INFO    ] Checking for camera pi updates...
[2026-06-27 21:10:46,175.175 INFO    ] 200
[2026-06-27 21:10:46,177.177 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:10:46,203.203 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:10:46,264.264 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:10:46,266.266 INFO    ] No camera update needed
[2026-06-27 21:10:46,267.267 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:10:46,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:10:46,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:10:46,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:10:48,314.314 INFO    ] ================================================
[2026-06-27 21:10:48,330.330 INFO    ] Launching Daemon at Sat Jun 27 21:10:48 IST 2026
[2026-06-27 21:10:48,341.341 INFO    ] ================================================
[2026-06-27 21:10:48,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:10:48
[2026-06-27 21:10:49,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:10:49,153.153 INFO    ] Initializing speech engine...
[2026-06-27 21:10:49,159.159 INFO    ] 2026-06-27 21:10:49
[2026-06-27 21:10:49,363.363 INFO    ] 2026-06-27 21:10:49
[2026-06-27 21:10:49,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:10:49,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:10:49,586.586 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:10:49,708.708 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:10:49,760.760 INFO    ] time= 27/06/2026 21:10:49
[2026-06-27 21:10:49,808.808 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:10:49,814.814 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:10:49,881.881 INFO    ] No existing commands found in stream
[2026-06-27 21:10:54,890.890 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:10:54,892.892 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-27 21:10:57,338.338 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 21:10:57,340.340 INFO    ] Checking for system updates...
[2026-06-27 21:10:57,362.362 INFO    ] 200
[2026-06-27 21:10:57,363.363 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:10:57,396.396 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:10:57,397.397 INFO    ] No update needed
[2026-06-27 21:10:57,399.399 INFO    ] Checking for camera pi updates...
[2026-06-27 21:10:57,420.420 INFO    ] 200
[2026-06-27 21:10:57,421.421 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:10:57,446.446 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:10:57,590.590 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:10:57,591.591 INFO    ] No camera update needed
[2026-06-27 21:10:57,593.593 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:10:57,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:10:57,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:10:57,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:10:59,640.640 INFO    ] ================================================
[2026-06-27 21:10:59,656.656 INFO    ] Launching Daemon at Sat Jun 27 21:10:59 IST 2026
[2026-06-27 21:10:59,667.667 INFO    ] ================================================
[2026-06-27 21:11:00,038.038 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:11:00
[2026-06-27 21:11:00,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:11:00,504.504 INFO    ] Initializing speech engine...
[2026-06-27 21:11:00,510.510 INFO    ] 2026-06-27 21:11:00
[2026-06-27 21:11:00,716.716 INFO    ] 2026-06-27 21:11:00
[2026-06-27 21:11:00,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:11:00,930.930 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:11:00,941.941 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:11:01,068.068 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:11:01,129.129 INFO    ] time= 27/06/2026 21:11:01
[2026-06-27 21:11:01,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:11:01,164.164 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:11:01,235.235 INFO    ] No existing commands found in stream
[2026-06-27 21:11:06,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:11:06,247.247 INFO    ] Waiting 1.98 seconds before fallback handling...
[2026-06-27 21:11:08,654.654 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:11:08,656.656 INFO    ] Checking for system updates...
[2026-06-27 21:11:08,677.677 INFO    ] 200
[2026-06-27 21:11:08,678.678 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:11:08,709.709 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:11:08,711.711 INFO    ] No update needed
[2026-06-27 21:11:08,712.712 INFO    ] Checking for camera pi updates...
[2026-06-27 21:11:08,732.732 INFO    ] 200
[2026-06-27 21:11:08,733.733 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:11:08,759.759 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:11:08,798.798 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:11:08,800.800 INFO    ] No camera update needed
[2026-06-27 21:11:08,801.801 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:11:08,802.802 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:11:08,806.806 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:11:08,808.808 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:11:10,848.848 INFO    ] ================================================
[2026-06-27 21:11:10,864.864 INFO    ] Launching Daemon at Sat Jun 27 21:11:10 IST 2026
[2026-06-27 21:11:10,875.875 INFO    ] ================================================
[2026-06-27 21:11:11,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:11:11
[2026-06-27 21:11:11,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:11:11,687.687 INFO    ] Initializing speech engine...
[2026-06-27 21:11:11,697.697 INFO    ] 2026-06-27 21:11:11
[2026-06-27 21:11:11,900.900 INFO    ] 2026-06-27 21:11:11
[2026-06-27 21:11:11,929.929 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:11:12,051.051 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:11:12,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:11:12,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:11:12,316.316 INFO    ] time= 27/06/2026 21:11:12
[2026-06-27 21:11:12,343.343 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:11:12,349.349 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:11:12,415.415 INFO    ] No existing commands found in stream
[2026-06-27 21:11:17,429.429 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:11:17,432.432 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-27 21:11:19,824.824 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 21:11:19,826.826 INFO    ] Checking for system updates...
[2026-06-27 21:11:19,847.847 INFO    ] 200
[2026-06-27 21:11:19,848.848 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:11:19,880.880 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:11:19,881.881 INFO    ] No update needed
[2026-06-27 21:11:19,883.883 INFO    ] Checking for camera pi updates...
[2026-06-27 21:11:19,904.904 INFO    ] 200
[2026-06-27 21:11:19,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:11:19,933.933 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:11:19,974.974 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:11:19,976.976 INFO    ] No camera update needed
[2026-06-27 21:11:19,977.977 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:11:19,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:11:19,982.982 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:11:19,985.985 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:11:22,031.031 INFO    ] ================================================
[2026-06-27 21:11:22,046.046 INFO    ] Launching Daemon at Sat Jun 27 21:11:22 IST 2026
[2026-06-27 21:11:22,058.058 INFO    ] ================================================
[2026-06-27 21:11:22,418.418 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:11:22
[2026-06-27 21:11:22,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:11:22,870.870 INFO    ] Initializing speech engine...
[2026-06-27 21:11:22,883.883 INFO    ] 2026-06-27 21:11:22
[2026-06-27 21:11:23,092.092 INFO    ] 2026-06-27 21:11:23
[2026-06-27 21:11:23,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:11:23,305.305 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:11:23,309.309 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:11:23,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:11:23,494.494 INFO    ] time= 27/06/2026 21:11:23
[2026-06-27 21:11:23,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:11:23,539.539 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:11:23,611.611 INFO    ] No existing commands found in stream
[2026-06-27 21:11:28,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:11:28,623.623 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-27 21:11:29,802.802 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 21:11:29,804.804 INFO    ] Checking for system updates...
[2026-06-27 21:11:29,826.826 INFO    ] 200
[2026-06-27 21:11:29,827.827 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:11:29,858.858 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:11:29,860.860 INFO    ] No update needed
[2026-06-27 21:11:29,861.861 INFO    ] Checking for camera pi updates...
[2026-06-27 21:11:29,883.883 INFO    ] 200
[2026-06-27 21:11:29,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:11:29,908.908 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:11:29,971.971 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:11:29,972.972 INFO    ] No camera update needed
[2026-06-27 21:11:29,974.974 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:11:29,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:11:29,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:11:29,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:11:32,012.012 INFO    ] ================================================
[2026-06-27 21:11:32,024.024 INFO    ] Launching Daemon at Sat Jun 27 21:11:32 IST 2026
[2026-06-27 21:11:32,031.031 INFO    ] ================================================
[2026-06-27 21:11:32,362.362 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:11:32
[2026-06-27 21:11:32,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:11:32,826.826 INFO    ] Initializing speech engine...
[2026-06-27 21:11:32,829.829 INFO    ] 2026-06-27 21:11:32
[2026-06-27 21:11:33,049.049 INFO    ] 2026-06-27 21:11:33
[2026-06-27 21:11:33,077.077 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:11:33,262.262 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:11:33,271.271 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:11:33,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:11:33,471.471 INFO    ] time= 27/06/2026 21:11:33
[2026-06-27 21:11:33,493.493 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:11:33,499.499 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:11:33,566.566 INFO    ] No existing commands found in stream
[2026-06-27 21:11:38,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:11:38,578.578 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-27 21:11:39,496.496 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 21:11:39,497.497 INFO    ] Checking for system updates...
[2026-06-27 21:11:39,518.518 INFO    ] 200
[2026-06-27 21:11:39,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:11:39,552.552 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:11:39,554.554 INFO    ] No update needed
[2026-06-27 21:11:39,555.555 INFO    ] Checking for camera pi updates...
[2026-06-27 21:11:39,576.576 INFO    ] 200
[2026-06-27 21:11:39,577.577 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:11:39,602.602 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:11:39,645.645 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:11:39,647.647 INFO    ] No camera update needed
[2026-06-27 21:11:39,648.648 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:11:39,649.649 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:11:39,652.652 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:11:39,655.655 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:11:41,695.695 INFO    ] ================================================
[2026-06-27 21:11:41,711.711 INFO    ] Launching Daemon at Sat Jun 27 21:11:41 IST 2026
[2026-06-27 21:11:41,722.722 INFO    ] ================================================
[2026-06-27 21:11:42,050.050 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:11:42
[2026-06-27 21:11:42,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:11:42,496.496 INFO    ] Initializing speech engine...
[2026-06-27 21:11:42,504.504 INFO    ] 2026-06-27 21:11:42
[2026-06-27 21:11:42,716.716 INFO    ] 2026-06-27 21:11:42
[2026-06-27 21:11:42,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:11:42,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:11:42,939.939 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:11:43,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:11:43,138.138 INFO    ] time= 27/06/2026 21:11:43
[2026-06-27 21:11:43,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:11:43,166.166 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:11:43,233.233 INFO    ] No existing commands found in stream
[2026-06-27 21:11:48,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:11:48,250.250 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-27 21:11:50,917.917 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 21:11:50,919.919 INFO    ] Checking for system updates...
[2026-06-27 21:11:50,940.940 INFO    ] 200
[2026-06-27 21:11:50,941.941 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:11:50,974.974 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:11:50,975.975 INFO    ] No update needed
[2026-06-27 21:11:50,976.976 INFO    ] Checking for camera pi updates...
[2026-06-27 21:11:50,997.997 INFO    ] 200
[2026-06-27 21:11:50,998.998 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:11:51,022.022 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:11:51,066.066 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:11:51,072.072 INFO    ] No camera update needed
[2026-06-27 21:11:51,073.073 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:11:51,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:11:51,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:11:51,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:11:53,119.119 INFO    ] ================================================
[2026-06-27 21:11:53,134.134 INFO    ] Launching Daemon at Sat Jun 27 21:11:53 IST 2026
[2026-06-27 21:11:53,145.145 INFO    ] ================================================
[2026-06-27 21:11:53,504.504 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:11:53
[2026-06-27 21:11:53,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:11:54,004.004 INFO    ] Initializing speech engine...
[2026-06-27 21:11:54,009.009 INFO    ] 2026-06-27 21:11:54
[2026-06-27 21:11:54,218.218 INFO    ] 2026-06-27 21:11:54
[2026-06-27 21:11:54,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:11:54,436.436 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:11:54,447.447 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:11:54,593.593 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:11:54,647.647 INFO    ] time= 27/06/2026 21:11:54
[2026-06-27 21:11:54,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:11:54,677.677 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:11:54,745.745 INFO    ] No existing commands found in stream
[2026-06-27 21:11:59,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:11:59,758.758 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-27 21:12:03,774.774 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 21:12:03,776.776 INFO    ] Checking for system updates...
[2026-06-27 21:12:03,797.797 INFO    ] 200
[2026-06-27 21:12:03,798.798 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:12:03,833.833 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:12:03,834.834 INFO    ] No update needed
[2026-06-27 21:12:03,836.836 INFO    ] Checking for camera pi updates...
[2026-06-27 21:12:03,856.856 INFO    ] 200
[2026-06-27 21:12:03,857.857 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:12:03,882.882 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:12:03,925.925 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:12:03,926.926 INFO    ] No camera update needed
[2026-06-27 21:12:03,927.927 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:12:03,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:12:03,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:12:03,934.934 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:12:05,978.978 INFO    ] ================================================
[2026-06-27 21:12:06,994.994 INFO    ] Launching Daemon at Sat Jun 27 21:12:05 IST 2026
[2026-06-27 21:12:06,006.006 INFO    ] ================================================
[2026-06-27 21:12:06,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:12:06
[2026-06-27 21:12:06,660.660 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:12:06,814.814 INFO    ] Initializing speech engine...
[2026-06-27 21:12:06,817.817 INFO    ] 2026-06-27 21:12:06
[2026-06-27 21:12:07,027.027 INFO    ] 2026-06-27 21:12:07
[2026-06-27 21:12:07,056.056 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:12:07,181.181 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:12:07,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:12:07,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:12:07,440.440 INFO    ] time= 27/06/2026 21:12:07
[2026-06-27 21:12:07,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:12:07,481.481 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:12:07,554.554 INFO    ] No existing commands found in stream
[2026-06-27 21:12:12,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:12:12,571.571 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-27 21:12:14,091.091 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 21:12:14,093.093 INFO    ] Checking for system updates...
[2026-06-27 21:12:14,114.114 INFO    ] 200
[2026-06-27 21:12:14,116.116 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:12:14,149.149 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:12:14,150.150 INFO    ] No update needed
[2026-06-27 21:12:14,151.151 INFO    ] Checking for camera pi updates...
[2026-06-27 21:12:14,173.173 INFO    ] 200
[2026-06-27 21:12:14,175.175 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:12:14,200.200 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:12:14,249.249 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:12:14,251.251 INFO    ] No camera update needed
[2026-06-27 21:12:14,252.252 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:12:14,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:12:14,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:12:14,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:12:16,297.297 INFO    ] ================================================
[2026-06-27 21:12:16,312.312 INFO    ] Launching Daemon at Sat Jun 27 21:12:16 IST 2026
[2026-06-27 21:12:16,324.324 INFO    ] ================================================
[2026-06-27 21:12:16,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:12:16
[2026-06-27 21:12:16,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:12:17,107.107 INFO    ] Initializing speech engine...
[2026-06-27 21:12:17,117.117 INFO    ] 2026-06-27 21:12:17
[2026-06-27 21:12:17,326.326 INFO    ] 2026-06-27 21:12:17
[2026-06-27 21:12:17,356.356 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:12:17,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:12:17,546.546 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:12:17,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:12:17,742.742 INFO    ] time= 27/06/2026 21:12:17
[2026-06-27 21:12:17,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:12:17,777.777 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:12:17,849.849 INFO    ] No existing commands found in stream
[2026-06-27 21:12:22,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:12:22,861.861 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-27 21:12:24,284.284 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 21:12:24,286.286 INFO    ] Checking for system updates...
[2026-06-27 21:12:24,307.307 INFO    ] 200
[2026-06-27 21:12:24,309.309 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:12:24,340.340 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:12:24,341.341 INFO    ] No update needed
[2026-06-27 21:12:24,343.343 INFO    ] Checking for camera pi updates...
[2026-06-27 21:12:24,364.364 INFO    ] 200
[2026-06-27 21:12:24,365.365 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:12:24,391.391 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:12:24,434.434 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:12:24,435.435 INFO    ] No camera update needed
[2026-06-27 21:12:24,437.437 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:12:24,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:12:24,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:12:24,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:12:26,483.483 INFO    ] ================================================
[2026-06-27 21:12:26,500.500 INFO    ] Launching Daemon at Sat Jun 27 21:12:26 IST 2026
[2026-06-27 21:12:26,511.511 INFO    ] ================================================
[2026-06-27 21:12:26,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:12:26
[2026-06-27 21:12:27,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:12:27,278.278 INFO    ] Initializing speech engine...
[2026-06-27 21:12:27,281.281 INFO    ] 2026-06-27 21:12:27
[2026-06-27 21:12:27,499.499 INFO    ] 2026-06-27 21:12:27
[2026-06-27 21:12:27,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:12:27,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:12:27,716.716 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:12:27,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:12:27,927.927 INFO    ] time= 27/06/2026 21:12:27
[2026-06-27 21:12:27,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:12:27,955.955 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:12:28,046.046 INFO    ] No existing commands found in stream
[2026-06-27 21:12:33,055.055 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:12:33,058.058 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-27 21:12:34,223.223 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 21:12:34,225.225 INFO    ] Checking for system updates...
[2026-06-27 21:12:34,246.246 INFO    ] 200
[2026-06-27 21:12:34,248.248 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:12:34,280.280 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:12:34,282.282 INFO    ] No update needed
[2026-06-27 21:12:34,283.283 INFO    ] Checking for camera pi updates...
[2026-06-27 21:12:34,304.304 INFO    ] 200
[2026-06-27 21:12:34,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:12:34,329.329 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:12:34,370.370 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:12:34,372.372 INFO    ] No camera update needed
[2026-06-27 21:12:34,373.373 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:12:34,374.374 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:12:34,377.377 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:12:34,380.380 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:12:36,421.421 INFO    ] ================================================
[2026-06-27 21:12:36,436.436 INFO    ] Launching Daemon at Sat Jun 27 21:12:36 IST 2026
[2026-06-27 21:12:36,447.447 INFO    ] ================================================
[2026-06-27 21:12:36,822.822 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:12:36
[2026-06-27 21:12:37,159.159 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:12:37,312.312 INFO    ] Initializing speech engine...
[2026-06-27 21:12:37,316.316 INFO    ] 2026-06-27 21:12:37
[2026-06-27 21:12:37,524.524 INFO    ] 2026-06-27 21:12:37
[2026-06-27 21:12:37,552.552 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:12:37,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:12:37,747.747 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:12:37,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:12:37,965.965 INFO    ] time= 27/06/2026 21:12:37
[2026-06-27 21:12:37,971.971 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:12:37,973.973 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:12:38,041.041 INFO    ] No existing commands found in stream
[2026-06-27 21:12:43,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:12:43,059.059 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-27 21:12:46,862.862 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 21:12:46,864.864 INFO    ] Checking for system updates...
[2026-06-27 21:12:46,885.885 INFO    ] 200
[2026-06-27 21:12:46,886.886 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:12:46,919.919 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:12:46,920.920 INFO    ] No update needed
[2026-06-27 21:12:46,922.922 INFO    ] Checking for camera pi updates...
[2026-06-27 21:12:46,942.942 INFO    ] 200
[2026-06-27 21:12:46,943.943 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:12:46,968.968 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:12:47,019.019 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:12:47,020.020 INFO    ] No camera update needed
[2026-06-27 21:12:47,021.021 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:12:47,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:12:47,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:12:47,028.028 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:12:49,067.067 INFO    ] ================================================
[2026-06-27 21:12:49,083.083 INFO    ] Launching Daemon at Sat Jun 27 21:12:49 IST 2026
[2026-06-27 21:12:49,094.094 INFO    ] ================================================
[2026-06-27 21:12:49,445.445 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:12:49
[2026-06-27 21:12:49,764.764 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:12:49,912.912 INFO    ] Initializing speech engine...
[2026-06-27 21:12:49,918.918 INFO    ] 2026-06-27 21:12:49
[2026-06-27 21:12:50,168.168 INFO    ] 2026-06-27 21:12:50
[2026-06-27 21:12:50,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:12:50,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:12:50,392.392 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:12:50,544.544 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:12:50,595.595 INFO    ] time= 27/06/2026 21:12:50
[2026-06-27 21:12:50,616.616 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:12:50,621.621 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:12:50,691.691 INFO    ] No existing commands found in stream
[2026-06-27 21:12:55,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:12:55,702.702 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-27 21:12:56,722.722 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 21:12:56,723.723 INFO    ] Checking for system updates...
[2026-06-27 21:12:56,744.744 INFO    ] 200
[2026-06-27 21:12:56,746.746 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:12:56,776.776 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:12:56,778.778 INFO    ] No update needed
[2026-06-27 21:12:56,779.779 INFO    ] Checking for camera pi updates...
[2026-06-27 21:12:56,800.800 INFO    ] 200
[2026-06-27 21:12:56,801.801 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:12:56,828.828 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:12:56,873.873 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:12:56,874.874 INFO    ] No camera update needed
[2026-06-27 21:12:56,876.876 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:12:56,877.877 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:12:56,880.880 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:12:56,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:12:58,922.922 INFO    ] ================================================
[2026-06-27 21:12:58,938.938 INFO    ] Launching Daemon at Sat Jun 27 21:12:58 IST 2026
[2026-06-27 21:12:58,950.950 INFO    ] ================================================
[2026-06-27 21:12:59,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:12:59
[2026-06-27 21:12:59,608.608 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:12:59,754.754 INFO    ] Initializing speech engine...
[2026-06-27 21:12:59,758.758 INFO    ] 2026-06-27 21:12:59
[2026-06-27 21:12:59,962.962 INFO    ] 2026-06-27 21:12:59
[2026-06-27 21:12:59,991.991 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:13:00,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:13:00,182.182 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:13:00,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:13:00,399.399 INFO    ] time= 27/06/2026 21:13:00
[2026-06-27 21:13:00,405.405 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:13:00,407.407 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:13:00,473.473 INFO    ] No existing commands found in stream
[2026-06-27 21:13:05,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:13:05,486.486 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-27 21:13:09,317.317 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 21:13:09,318.318 INFO    ] Checking for system updates...
[2026-06-27 21:13:09,339.339 INFO    ] 200
[2026-06-27 21:13:09,341.341 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:13:09,372.372 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:13:09,374.374 INFO    ] No update needed
[2026-06-27 21:13:09,375.375 INFO    ] Checking for camera pi updates...
[2026-06-27 21:13:09,395.395 INFO    ] 200
[2026-06-27 21:13:09,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:13:09,420.420 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:13:09,461.461 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:13:09,462.462 INFO    ] No camera update needed
[2026-06-27 21:13:09,464.464 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:13:09,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:13:09,468.468 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:13:09,471.471 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:13:11,514.514 INFO    ] ================================================
[2026-06-27 21:13:11,530.530 INFO    ] Launching Daemon at Sat Jun 27 21:13:11 IST 2026
[2026-06-27 21:13:11,542.542 INFO    ] ================================================
[2026-06-27 21:13:11,871.871 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:13:11
[2026-06-27 21:13:12,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:13:12,325.325 INFO    ] Initializing speech engine...
[2026-06-27 21:13:12,330.330 INFO    ] 2026-06-27 21:13:12
[2026-06-27 21:13:12,537.537 INFO    ] 2026-06-27 21:13:12
[2026-06-27 21:13:12,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:13:12,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:13:12,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:13:12,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:13:12,951.951 INFO    ] time= 27/06/2026 21:13:12
[2026-06-27 21:13:12,984.984 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:13:12,990.990 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:13:13,056.056 INFO    ] No existing commands found in stream
[2026-06-27 21:13:18,067.067 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:13:18,069.069 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-27 21:13:22,442.442 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 21:13:22,443.443 INFO    ] Checking for system updates...
[2026-06-27 21:13:22,465.465 INFO    ] 200
[2026-06-27 21:13:22,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:13:22,498.498 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:13:22,499.499 INFO    ] No update needed
[2026-06-27 21:13:22,501.501 INFO    ] Checking for camera pi updates...
[2026-06-27 21:13:22,520.520 INFO    ] 200
[2026-06-27 21:13:22,521.521 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:13:22,545.545 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:13:22,590.590 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:13:22,591.591 INFO    ] No camera update needed
[2026-06-27 21:13:22,592.592 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:13:22,594.594 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:13:22,597.597 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:13:22,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:13:24,637.637 INFO    ] ================================================
[2026-06-27 21:13:24,654.654 INFO    ] Launching Daemon at Sat Jun 27 21:13:24 IST 2026
[2026-06-27 21:13:24,664.664 INFO    ] ================================================
[2026-06-27 21:13:25,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:13:25
[2026-06-27 21:13:25,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:13:25,474.474 INFO    ] Initializing speech engine...
[2026-06-27 21:13:25,479.479 INFO    ] 2026-06-27 21:13:25
[2026-06-27 21:13:25,682.682 INFO    ] 2026-06-27 21:13:25
[2026-06-27 21:13:25,711.711 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:13:25,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:13:25,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:13:26,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:13:26,121.121 INFO    ] time= 27/06/2026 21:13:26
[2026-06-27 21:13:26,124.124 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:13:26,130.130 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:13:26,195.195 INFO    ] No existing commands found in stream
[2026-06-27 21:13:31,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:13:31,209.209 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-27 21:13:32,069.069 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 21:13:32,072.072 INFO    ] Checking for system updates...
[2026-06-27 21:13:32,109.109 INFO    ] 200
[2026-06-27 21:13:32,111.111 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:13:32,170.170 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:13:32,173.173 INFO    ] No update needed
[2026-06-27 21:13:32,175.175 INFO    ] Checking for camera pi updates...
[2026-06-27 21:13:32,205.205 INFO    ] 200
[2026-06-27 21:13:32,206.206 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:13:32,230.230 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:13:32,260.260 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:13:32,261.261 INFO    ] No camera update needed
[2026-06-27 21:13:32,262.262 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:13:32,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:13:32,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:13:32,269.269 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:13:34,309.309 INFO    ] ================================================
[2026-06-27 21:13:34,324.324 INFO    ] Launching Daemon at Sat Jun 27 21:13:34 IST 2026
[2026-06-27 21:13:34,335.335 INFO    ] ================================================
[2026-06-27 21:13:34,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:13:34
[2026-06-27 21:13:35,051.051 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:13:35,197.197 INFO    ] Initializing speech engine...
[2026-06-27 21:13:35,208.208 INFO    ] 2026-06-27 21:13:35
[2026-06-27 21:13:35,419.419 INFO    ] 2026-06-27 21:13:35
[2026-06-27 21:13:35,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:13:35,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:13:35,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:13:35,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:13:35,838.838 INFO    ] time= 27/06/2026 21:13:35
[2026-06-27 21:13:35,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:13:35,879.879 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:13:35,947.947 INFO    ] No existing commands found in stream
[2026-06-27 21:13:40,962.962 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:13:40,965.965 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-27 21:13:43,085.085 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:13:43,086.086 INFO    ] Checking for system updates...
[2026-06-27 21:13:43,108.108 INFO    ] 200
[2026-06-27 21:13:43,109.109 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:13:43,140.140 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:13:43,142.142 INFO    ] No update needed
[2026-06-27 21:13:43,143.143 INFO    ] Checking for camera pi updates...
[2026-06-27 21:13:43,163.163 INFO    ] 200
[2026-06-27 21:13:43,165.165 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:13:43,189.189 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:13:43,234.234 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:13:43,236.236 INFO    ] No camera update needed
[2026-06-27 21:13:43,237.237 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:13:43,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:13:43,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:13:43,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:13:45,284.284 INFO    ] ================================================
[2026-06-27 21:13:45,299.299 INFO    ] Launching Daemon at Sat Jun 27 21:13:45 IST 2026
[2026-06-27 21:13:45,311.311 INFO    ] ================================================
[2026-06-27 21:13:45,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:13:45
[2026-06-27 21:13:45,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:13:46,108.108 INFO    ] Initializing speech engine...
[2026-06-27 21:13:46,111.111 INFO    ] 2026-06-27 21:13:46
[2026-06-27 21:13:46,314.314 INFO    ] 2026-06-27 21:13:46
[2026-06-27 21:13:46,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:13:46,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:13:46,603.603 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:13:46,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:13:46,760.760 INFO    ] time= 27/06/2026 21:13:46
[2026-06-27 21:13:46,761.761 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:13:46,763.763 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:13:46,828.828 INFO    ] No existing commands found in stream
[2026-06-27 21:13:51,839.839 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:13:51,841.841 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-27 21:13:55,823.823 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 21:13:55,825.825 INFO    ] Checking for system updates...
[2026-06-27 21:13:55,846.846 INFO    ] 200
[2026-06-27 21:13:55,848.848 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:13:55,878.878 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:13:55,880.880 INFO    ] No update needed
[2026-06-27 21:13:55,881.881 INFO    ] Checking for camera pi updates...
[2026-06-27 21:13:55,900.900 INFO    ] 200
[2026-06-27 21:13:55,902.902 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:13:55,927.927 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:13:55,959.959 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:13:55,961.961 INFO    ] No camera update needed
[2026-06-27 21:13:55,962.962 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:13:55,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:13:55,967.967 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:13:55,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:13:58,009.009 INFO    ] ================================================
[2026-06-27 21:13:58,025.025 INFO    ] Launching Daemon at Sat Jun 27 21:13:58 IST 2026
[2026-06-27 21:13:58,036.036 INFO    ] ================================================
[2026-06-27 21:13:58,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:13:58
[2026-06-27 21:13:58,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:13:58,853.853 INFO    ] Initializing speech engine...
[2026-06-27 21:13:58,859.859 INFO    ] 2026-06-27 21:13:58
[2026-06-27 21:13:59,064.064 INFO    ] 2026-06-27 21:13:59
[2026-06-27 21:13:59,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:13:59,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:13:59,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:13:59,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:13:59,472.472 INFO    ] time= 27/06/2026 21:13:59
[2026-06-27 21:13:59,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:13:59,510.510 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:13:59,576.576 INFO    ] No existing commands found in stream
[2026-06-27 21:14:04,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:14:04,588.588 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-27 21:14:05,424.424 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:14:05,425.425 INFO    ] Checking for system updates...
[2026-06-27 21:14:05,447.447 INFO    ] 200
[2026-06-27 21:14:05,449.449 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:14:05,479.479 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:14:05,480.480 INFO    ] No update needed
[2026-06-27 21:14:05,482.482 INFO    ] Checking for camera pi updates...
[2026-06-27 21:14:05,501.501 INFO    ] 200
[2026-06-27 21:14:05,503.503 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:14:05,526.526 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:14:05,569.569 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:14:05,570.570 INFO    ] No camera update needed
[2026-06-27 21:14:05,572.572 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:14:05,575.575 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:14:05,579.579 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:14:05,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:14:07,622.622 INFO    ] ================================================
[2026-06-27 21:14:07,638.638 INFO    ] Launching Daemon at Sat Jun 27 21:14:07 IST 2026
[2026-06-27 21:14:07,649.649 INFO    ] ================================================
[2026-06-27 21:14:08,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:14:08
[2026-06-27 21:14:08,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:14:08,507.507 INFO    ] Initializing speech engine...
[2026-06-27 21:14:08,512.512 INFO    ] 2026-06-27 21:14:08
[2026-06-27 21:14:08,721.721 INFO    ] 2026-06-27 21:14:08
[2026-06-27 21:14:08,750.750 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:14:08,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:14:08,942.942 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:14:09,082.082 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:14:09,139.139 INFO    ] time= 27/06/2026 21:14:09
[2026-06-27 21:14:09,161.161 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:14:09,168.168 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:14:09,234.234 INFO    ] No existing commands found in stream
[2026-06-27 21:14:14,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:14:14,247.247 INFO    ] Waiting 0.03 seconds before fallback handling...
[2026-06-27 21:14:14,692.692 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 21:14:14,694.694 INFO    ] Checking for system updates...
[2026-06-27 21:14:14,717.717 INFO    ] 200
[2026-06-27 21:14:14,718.718 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:14:14,753.753 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:14:14,755.755 INFO    ] No update needed
[2026-06-27 21:14:14,756.756 INFO    ] Checking for camera pi updates...
[2026-06-27 21:14:14,778.778 INFO    ] 200
[2026-06-27 21:14:14,780.780 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:14:14,805.805 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:14:14,848.848 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:14:14,849.849 INFO    ] No camera update needed
[2026-06-27 21:14:14,851.851 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:14:14,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:14:14,855.855 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:14:14,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:14:16,899.899 INFO    ] ================================================
[2026-06-27 21:14:16,914.914 INFO    ] Launching Daemon at Sat Jun 27 21:14:16 IST 2026
[2026-06-27 21:14:16,924.924 INFO    ] ================================================
[2026-06-27 21:14:17,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:14:17
[2026-06-27 21:14:17,588.588 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:14:17,725.725 INFO    ] Initializing speech engine...
[2026-06-27 21:14:17,735.735 INFO    ] 2026-06-27 21:14:17
[2026-06-27 21:14:17,942.942 INFO    ] 2026-06-27 21:14:17
[2026-06-27 21:14:17,971.971 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:14:18,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:14:18,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:14:18,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:14:18,358.358 INFO    ] time= 27/06/2026 21:14:18
[2026-06-27 21:14:18,392.392 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:14:18,399.399 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:14:18,467.467 INFO    ] No existing commands found in stream
[2026-06-27 21:14:23,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:14:23,478.478 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-27 21:14:27,296.296 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 21:14:27,297.297 INFO    ] Checking for system updates...
[2026-06-27 21:14:27,320.320 INFO    ] 200
[2026-06-27 21:14:27,321.321 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:14:27,352.352 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:14:27,353.353 INFO    ] No update needed
[2026-06-27 21:14:27,354.354 INFO    ] Checking for camera pi updates...
[2026-06-27 21:14:27,377.377 INFO    ] 200
[2026-06-27 21:14:27,379.379 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:14:27,403.403 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:14:27,453.453 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:14:27,454.454 INFO    ] No camera update needed
[2026-06-27 21:14:27,455.455 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:14:27,457.457 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:14:27,460.460 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:14:27,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:14:29,500.500 INFO    ] ================================================
[2026-06-27 21:14:29,515.515 INFO    ] Launching Daemon at Sat Jun 27 21:14:29 IST 2026
[2026-06-27 21:14:29,526.526 INFO    ] ================================================
[2026-06-27 21:14:29,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:14:29
[2026-06-27 21:14:30,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:14:30,307.307 INFO    ] Initializing speech engine...
[2026-06-27 21:14:30,315.315 INFO    ] 2026-06-27 21:14:30
[2026-06-27 21:14:30,526.526 INFO    ] 2026-06-27 21:14:30
[2026-06-27 21:14:30,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:14:30,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:14:30,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:14:30,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:14:30,966.966 INFO    ] time= 27/06/2026 21:14:30
[2026-06-27 21:14:30,972.972 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:14:30,973.973 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:14:31,042.042 INFO    ] No existing commands found in stream
[2026-06-27 21:14:36,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:14:36,077.077 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-27 21:14:40,047.047 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 21:14:40,049.049 INFO    ] Checking for system updates...
[2026-06-27 21:14:40,069.069 INFO    ] 200
[2026-06-27 21:14:40,071.071 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:14:40,101.101 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:14:40,102.102 INFO    ] No update needed
[2026-06-27 21:14:40,104.104 INFO    ] Checking for camera pi updates...
[2026-06-27 21:14:40,124.124 INFO    ] 200
[2026-06-27 21:14:40,125.125 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:14:40,148.148 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:14:40,194.194 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:14:40,195.195 INFO    ] No camera update needed
[2026-06-27 21:14:40,196.196 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:14:40,197.197 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:14:40,200.200 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:14:40,203.203 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:14:42,241.241 INFO    ] ================================================
[2026-06-27 21:14:42,256.256 INFO    ] Launching Daemon at Sat Jun 27 21:14:42 IST 2026
[2026-06-27 21:14:42,267.267 INFO    ] ================================================
[2026-06-27 21:14:42,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:14:42
[2026-06-27 21:14:42,914.914 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:14:43,045.045 INFO    ] Initializing speech engine...
[2026-06-27 21:14:43,049.049 INFO    ] 2026-06-27 21:14:43
[2026-06-27 21:14:43,270.270 INFO    ] 2026-06-27 21:14:43
[2026-06-27 21:14:43,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:14:43,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:14:43,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:14:43,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:14:43,683.683 INFO    ] time= 27/06/2026 21:14:43
[2026-06-27 21:14:43,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:14:43,730.730 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:14:43,798.798 INFO    ] No existing commands found in stream
[2026-06-27 21:14:48,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:14:48,815.815 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-27 21:14:49,652.652 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 21:14:49,654.654 INFO    ] Checking for system updates...
[2026-06-27 21:14:49,676.676 INFO    ] 200
[2026-06-27 21:14:49,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:14:49,707.707 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:14:49,708.708 INFO    ] No update needed
[2026-06-27 21:14:49,710.710 INFO    ] Checking for camera pi updates...
[2026-06-27 21:14:49,729.729 INFO    ] 200
[2026-06-27 21:14:49,730.730 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:14:49,755.755 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:14:49,803.803 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:14:49,804.804 INFO    ] No camera update needed
[2026-06-27 21:14:49,805.805 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:14:49,807.807 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:14:49,810.810 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:14:49,812.812 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:14:51,850.850 INFO    ] ================================================
[2026-06-27 21:14:51,870.870 INFO    ] Launching Daemon at Sat Jun 27 21:14:51 IST 2026
[2026-06-27 21:14:51,885.885 INFO    ] ================================================
[2026-06-27 21:14:52,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:14:52
[2026-06-27 21:14:52,518.518 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:14:52,650.650 INFO    ] Initializing speech engine...
[2026-06-27 21:14:52,663.663 INFO    ] 2026-06-27 21:14:52
[2026-06-27 21:14:52,870.870 INFO    ] 2026-06-27 21:14:52
[2026-06-27 21:14:52,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:14:53,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:14:53,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:14:53,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:14:53,315.315 INFO    ] time= 27/06/2026 21:14:53
[2026-06-27 21:14:53,318.318 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:14:53,323.323 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:14:53,390.390 INFO    ] No existing commands found in stream
[2026-06-27 21:14:58,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:14:58,407.407 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-27 21:15:00,790.790 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 21:15:00,792.792 INFO    ] Checking for system updates...
[2026-06-27 21:15:00,815.815 INFO    ] 200
[2026-06-27 21:15:00,816.816 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:15:00,848.848 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:15:00,850.850 INFO    ] No update needed
[2026-06-27 21:15:00,851.851 INFO    ] Checking for camera pi updates...
[2026-06-27 21:15:00,871.871 INFO    ] 200
[2026-06-27 21:15:00,873.873 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:15:00,897.897 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:15:00,940.940 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:15:00,942.942 INFO    ] No camera update needed
[2026-06-27 21:15:00,943.943 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:15:00,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:15:00,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:15:00,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:15:02,980.980 INFO    ] ================================================
[2026-06-27 21:15:02,988.988 INFO    ] Launching Daemon at Sat Jun 27 21:15:02 IST 2026
[2026-06-27 21:15:02,994.994 INFO    ] ================================================
[2026-06-27 21:15:03,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:15:03
[2026-06-27 21:15:03,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:15:03,766.766 INFO    ] Initializing speech engine...
[2026-06-27 21:15:03,772.772 INFO    ] 2026-06-27 21:15:03
[2026-06-27 21:15:03,978.978 INFO    ] 2026-06-27 21:15:03
[2026-06-27 21:15:04,006.006 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:15:04,129.129 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:15:04,192.192 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:15:04,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:15:04,421.421 INFO    ] time= 27/06/2026 21:15:04
[2026-06-27 21:15:04,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:15:04,429.429 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:15:04,496.496 INFO    ] No existing commands found in stream
[2026-06-27 21:15:09,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:15:09,514.514 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-27 21:15:13,434.434 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 21:15:13,435.435 INFO    ] Checking for system updates...
[2026-06-27 21:15:13,457.457 INFO    ] 200
[2026-06-27 21:15:13,458.458 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:15:13,489.489 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:15:13,490.490 INFO    ] No update needed
[2026-06-27 21:15:13,491.491 INFO    ] Checking for camera pi updates...
[2026-06-27 21:15:13,512.512 INFO    ] 200
[2026-06-27 21:15:13,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:15:13,537.537 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:15:13,679.679 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:15:13,682.682 INFO    ] No camera update needed
[2026-06-27 21:15:13,684.684 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:15:13,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:15:13,692.692 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:15:13,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:15:15,737.737 INFO    ] ================================================
[2026-06-27 21:15:15,752.752 INFO    ] Launching Daemon at Sat Jun 27 21:15:15 IST 2026
[2026-06-27 21:15:15,763.763 INFO    ] ================================================
[2026-06-27 21:15:16,092.092 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:15:16
[2026-06-27 21:15:16,405.405 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:15:16,543.543 INFO    ] Initializing speech engine...
[2026-06-27 21:15:16,552.552 INFO    ] 2026-06-27 21:15:16
[2026-06-27 21:15:16,760.760 INFO    ] 2026-06-27 21:15:16
[2026-06-27 21:15:16,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:15:16,977.977 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:15:16,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:15:17,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:15:17,204.204 INFO    ] time= 27/06/2026 21:15:17
[2026-06-27 21:15:17,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:15:17,216.216 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:15:17,282.282 INFO    ] No existing commands found in stream
[2026-06-27 21:15:22,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:15:22,296.296 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-27 21:15:24,434.434 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:15:24,435.435 INFO    ] Checking for system updates...
[2026-06-27 21:15:24,457.457 INFO    ] 200
[2026-06-27 21:15:24,458.458 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:15:24,490.490 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:15:24,492.492 INFO    ] No update needed
[2026-06-27 21:15:24,493.493 INFO    ] Checking for camera pi updates...
[2026-06-27 21:15:24,513.513 INFO    ] 200
[2026-06-27 21:15:24,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:15:24,538.538 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:15:24,582.582 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:15:24,583.583 INFO    ] No camera update needed
[2026-06-27 21:15:24,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:15:24,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:15:24,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:15:24,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:15:26,630.630 INFO    ] ================================================
[2026-06-27 21:15:26,645.645 INFO    ] Launching Daemon at Sat Jun 27 21:15:26 IST 2026
[2026-06-27 21:15:26,656.656 INFO    ] ================================================
[2026-06-27 21:15:26,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:15:26
[2026-06-27 21:15:27,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:15:27,435.435 INFO    ] Initializing speech engine...
[2026-06-27 21:15:27,448.448 INFO    ] 2026-06-27 21:15:27
[2026-06-27 21:15:27,657.657 INFO    ] 2026-06-27 21:15:27
[2026-06-27 21:15:27,686.686 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:15:27,809.809 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:15:27,872.872 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:15:28,033.033 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:15:28,081.081 INFO    ] time= 27/06/2026 21:15:28
[2026-06-27 21:15:28,104.104 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:15:28,110.110 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:15:28,176.176 INFO    ] No existing commands found in stream
[2026-06-27 21:15:33,187.187 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:15:33,190.190 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-27 21:15:34,905.905 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:15:34,907.907 INFO    ] Checking for system updates...
[2026-06-27 21:15:34,928.928 INFO    ] 200
[2026-06-27 21:15:34,929.929 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:15:34,964.964 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:15:34,966.966 INFO    ] No update needed
[2026-06-27 21:15:34,967.967 INFO    ] Checking for camera pi updates...
[2026-06-27 21:15:34,987.987 INFO    ] 200
[2026-06-27 21:15:34,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:15:35,012.012 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:15:35,057.057 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:15:35,059.059 INFO    ] No camera update needed
[2026-06-27 21:15:35,060.060 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:15:35,061.061 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:15:35,064.064 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:15:35,067.067 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:15:37,105.105 INFO    ] ================================================
[2026-06-27 21:15:37,120.120 INFO    ] Launching Daemon at Sat Jun 27 21:15:37 IST 2026
[2026-06-27 21:15:37,130.130 INFO    ] ================================================
[2026-06-27 21:15:37,473.473 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:15:37
[2026-06-27 21:15:37,785.785 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:15:37,917.917 INFO    ] Initializing speech engine...
[2026-06-27 21:15:37,930.930 INFO    ] 2026-06-27 21:15:37
[2026-06-27 21:15:38,140.140 INFO    ] 2026-06-27 21:15:38
[2026-06-27 21:15:38,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:15:38,356.356 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:15:38,365.365 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:15:38,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:15:38,567.567 INFO    ] time= 27/06/2026 21:15:38
[2026-06-27 21:15:38,589.589 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:15:38,595.595 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:15:38,663.663 INFO    ] No existing commands found in stream
[2026-06-27 21:15:43,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:15:43,672.672 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-27 21:15:46,002.002 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 21:15:46,004.004 INFO    ] Checking for system updates...
[2026-06-27 21:15:46,026.026 INFO    ] 200
[2026-06-27 21:15:46,028.028 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:15:46,061.061 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:15:46,062.062 INFO    ] No update needed
[2026-06-27 21:15:46,063.063 INFO    ] Checking for camera pi updates...
[2026-06-27 21:15:46,084.084 INFO    ] 200
[2026-06-27 21:15:46,086.086 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:15:46,109.109 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:15:46,168.168 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:15:46,169.169 INFO    ] No camera update needed
[2026-06-27 21:15:46,171.171 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:15:46,172.172 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:15:46,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:15:46,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:15:48,220.220 INFO    ] ================================================
[2026-06-27 21:15:48,235.235 INFO    ] Launching Daemon at Sat Jun 27 21:15:48 IST 2026
[2026-06-27 21:15:48,246.246 INFO    ] ================================================
[2026-06-27 21:15:48,575.575 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:15:48
[2026-06-27 21:15:48,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:15:49,032.032 INFO    ] Initializing speech engine...
[2026-06-27 21:15:49,037.037 INFO    ] 2026-06-27 21:15:49
[2026-06-27 21:15:49,240.240 INFO    ] 2026-06-27 21:15:49
[2026-06-27 21:15:49,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:15:49,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:15:49,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:15:49,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:15:49,661.661 INFO    ] time= 27/06/2026 21:15:49
[2026-06-27 21:15:49,685.685 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:15:49,690.690 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:15:49,755.755 INFO    ] No existing commands found in stream
[2026-06-27 21:15:54,765.765 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:15:54,768.768 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-27 21:15:57,035.035 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 21:15:57,037.037 INFO    ] Checking for system updates...
[2026-06-27 21:15:57,059.059 INFO    ] 200
[2026-06-27 21:15:57,060.060 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:15:57,090.090 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:15:57,092.092 INFO    ] No update needed
[2026-06-27 21:15:57,093.093 INFO    ] Checking for camera pi updates...
[2026-06-27 21:15:57,114.114 INFO    ] 200
[2026-06-27 21:15:57,116.116 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:15:57,143.143 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:15:57,191.191 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:15:57,192.192 INFO    ] No camera update needed
[2026-06-27 21:15:57,194.194 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:15:57,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:15:57,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:15:57,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:15:59,242.242 INFO    ] ================================================
[2026-06-27 21:15:59,258.258 INFO    ] Launching Daemon at Sat Jun 27 21:15:59 IST 2026
[2026-06-27 21:15:59,269.269 INFO    ] ================================================
[2026-06-27 21:15:59,604.604 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:15:59
[2026-06-27 21:15:59,917.917 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:16:00,061.061 INFO    ] Initializing speech engine...
[2026-06-27 21:16:00,066.066 INFO    ] 2026-06-27 21:16:00
[2026-06-27 21:16:00,273.273 INFO    ] 2026-06-27 21:16:00
[2026-06-27 21:16:00,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:16:00,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:16:00,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:16:00,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:16:00,678.678 INFO    ] time= 27/06/2026 21:16:00
[2026-06-27 21:16:00,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:16:00,723.723 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:16:00,795.795 INFO    ] No existing commands found in stream
[2026-06-27 21:16:05,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:16:05,807.807 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-27 21:16:09,809.809 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:16:09,811.811 INFO    ] Checking for system updates...
[2026-06-27 21:16:09,832.832 INFO    ] 200
[2026-06-27 21:16:09,833.833 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:16:09,864.864 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:16:09,865.865 INFO    ] No update needed
[2026-06-27 21:16:09,866.866 INFO    ] Checking for camera pi updates...
[2026-06-27 21:16:09,886.886 INFO    ] 200
[2026-06-27 21:16:09,888.888 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:16:09,911.911 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:16:09,961.961 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:16:09,962.962 INFO    ] No camera update needed
[2026-06-27 21:16:09,964.964 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:16:09,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:16:09,969.969 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:16:09,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:16:12,011.011 INFO    ] ================================================
[2026-06-27 21:16:12,027.027 INFO    ] Launching Daemon at Sat Jun 27 21:16:12 IST 2026
[2026-06-27 21:16:12,039.039 INFO    ] ================================================
[2026-06-27 21:16:12,411.411 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:16:12
[2026-06-27 21:16:12,727.727 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:16:12,871.871 INFO    ] Initializing speech engine...
[2026-06-27 21:16:12,876.876 INFO    ] 2026-06-27 21:16:12
[2026-06-27 21:16:13,079.079 INFO    ] 2026-06-27 21:16:13
[2026-06-27 21:16:13,109.109 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:16:13,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:16:13,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:16:13,497.497 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:16:13,521.521 INFO    ] time= 27/06/2026 21:16:13
[2026-06-27 21:16:13,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:16:13,528.528 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:16:13,593.593 INFO    ] No existing commands found in stream
[2026-06-27 21:16:18,603.603 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:16:18,606.606 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-27 21:16:19,724.724 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:16:19,725.725 INFO    ] Checking for system updates...
[2026-06-27 21:16:19,771.771 INFO    ] 200
[2026-06-27 21:16:19,773.773 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:16:19,805.805 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:16:19,807.807 INFO    ] No update needed
[2026-06-27 21:16:19,808.808 INFO    ] Checking for camera pi updates...
[2026-06-27 21:16:19,828.828 INFO    ] 200
[2026-06-27 21:16:19,830.830 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:16:19,853.853 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:16:19,900.900 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:16:19,901.901 INFO    ] No camera update needed
[2026-06-27 21:16:19,903.903 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:16:19,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:16:19,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:16:19,910.910 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:16:21,949.949 INFO    ] ================================================
[2026-06-27 21:16:21,965.965 INFO    ] Launching Daemon at Sat Jun 27 21:16:21 IST 2026
[2026-06-27 21:16:21,975.975 INFO    ] ================================================
[2026-06-27 21:16:22,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:16:22
[2026-06-27 21:16:22,663.663 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:16:22,807.807 INFO    ] Initializing speech engine...
[2026-06-27 21:16:22,813.813 INFO    ] 2026-06-27 21:16:22
[2026-06-27 21:16:23,021.021 INFO    ] 2026-06-27 21:16:23
[2026-06-27 21:16:23,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:16:23,235.235 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:16:23,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:16:23,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:16:23,443.443 INFO    ] time= 27/06/2026 21:16:23
[2026-06-27 21:16:23,465.465 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:16:23,470.470 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:16:23,537.537 INFO    ] No existing commands found in stream
[2026-06-27 21:16:28,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:16:28,559.559 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-27 21:16:32,292.292 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 21:16:32,294.294 INFO    ] Checking for system updates...
[2026-06-27 21:16:32,326.326 INFO    ] 200
[2026-06-27 21:16:32,327.327 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:16:32,360.360 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:16:32,361.361 INFO    ] No update needed
[2026-06-27 21:16:32,362.362 INFO    ] Checking for camera pi updates...
[2026-06-27 21:16:32,382.382 INFO    ] 200
[2026-06-27 21:16:32,383.383 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:16:32,408.408 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:16:32,436.436 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:16:32,437.437 INFO    ] No camera update needed
[2026-06-27 21:16:32,438.438 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:16:32,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:16:32,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:16:32,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:16:34,484.484 INFO    ] ================================================
[2026-06-27 21:16:34,500.500 INFO    ] Launching Daemon at Sat Jun 27 21:16:34 IST 2026
[2026-06-27 21:16:34,511.511 INFO    ] ================================================
[2026-06-27 21:16:34,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:16:34
[2026-06-27 21:16:35,198.198 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:16:35,330.330 INFO    ] Initializing speech engine...
[2026-06-27 21:16:35,338.338 INFO    ] 2026-06-27 21:16:35
[2026-06-27 21:16:35,550.550 INFO    ] 2026-06-27 21:16:35
[2026-06-27 21:16:35,579.579 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:16:35,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:16:35,772.772 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:16:35,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:16:35,971.971 INFO    ] time= 27/06/2026 21:16:35
[2026-06-27 21:16:35,993.993 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:16:35,999.999 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:16:36,066.066 INFO    ] No existing commands found in stream
[2026-06-27 21:16:41,075.075 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:16:41,078.078 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-27 21:16:43,611.611 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 21:16:43,613.613 INFO    ] Checking for system updates...
[2026-06-27 21:16:43,634.634 INFO    ] 200
[2026-06-27 21:16:43,636.636 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:16:43,667.667 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:16:43,669.669 INFO    ] No update needed
[2026-06-27 21:16:43,670.670 INFO    ] Checking for camera pi updates...
[2026-06-27 21:16:43,690.690 INFO    ] 200
[2026-06-27 21:16:43,692.692 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:16:43,716.716 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:16:43,764.764 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:16:43,765.765 INFO    ] No camera update needed
[2026-06-27 21:16:43,767.767 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:16:43,768.768 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:16:43,771.771 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:16:43,774.774 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:16:45,813.813 INFO    ] ================================================
[2026-06-27 21:16:45,829.829 INFO    ] Launching Daemon at Sat Jun 27 21:16:45 IST 2026
[2026-06-27 21:16:45,841.841 INFO    ] ================================================
[2026-06-27 21:16:46,178.178 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:16:46
[2026-06-27 21:16:46,491.491 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:16:46,635.635 INFO    ] Initializing speech engine...
[2026-06-27 21:16:46,640.640 INFO    ] 2026-06-27 21:16:46
[2026-06-27 21:16:46,845.845 INFO    ] 2026-06-27 21:16:46
[2026-06-27 21:16:46,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:16:47,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:16:47,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:16:47,192.192 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:16:47,249.249 INFO    ] time= 27/06/2026 21:16:47
[2026-06-27 21:16:47,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:16:47,292.292 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:16:47,384.384 INFO    ] No existing commands found in stream
[2026-06-27 21:16:52,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:16:52,401.401 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-27 21:16:55,257.257 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 21:16:55,259.259 INFO    ] Checking for system updates...
[2026-06-27 21:16:55,281.281 INFO    ] 200
[2026-06-27 21:16:55,282.282 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:16:55,315.315 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:16:55,317.317 INFO    ] No update needed
[2026-06-27 21:16:55,318.318 INFO    ] Checking for camera pi updates...
[2026-06-27 21:16:55,338.338 INFO    ] 200
[2026-06-27 21:16:55,339.339 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:16:55,364.364 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:16:55,400.400 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:16:55,402.402 INFO    ] No camera update needed
[2026-06-27 21:16:55,403.403 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:16:55,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:16:55,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:16:55,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:16:57,449.449 INFO    ] ================================================
[2026-06-27 21:16:57,465.465 INFO    ] Launching Daemon at Sat Jun 27 21:16:57 IST 2026
[2026-06-27 21:16:57,477.477 INFO    ] ================================================
[2026-06-27 21:16:57,816.816 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:16:57
[2026-06-27 21:16:58,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:16:58,277.277 INFO    ] Initializing speech engine...
[2026-06-27 21:16:58,282.282 INFO    ] 2026-06-27 21:16:58
[2026-06-27 21:16:58,486.486 INFO    ] 2026-06-27 21:16:58
[2026-06-27 21:16:58,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:16:58,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:16:58,701.701 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:16:58,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:16:58,897.897 INFO    ] time= 27/06/2026 21:16:58
[2026-06-27 21:16:58,930.930 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:16:58,936.936 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:16:59,028.028 INFO    ] No existing commands found in stream
[2026-06-27 21:17:04,052.052 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:17:04,055.055 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-27 21:17:06,692.692 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:17:06,694.694 INFO    ] Checking for system updates...
[2026-06-27 21:17:06,715.715 INFO    ] 200
[2026-06-27 21:17:06,717.717 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:17:06,749.749 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:17:06,750.750 INFO    ] No update needed
[2026-06-27 21:17:06,752.752 INFO    ] Checking for camera pi updates...
[2026-06-27 21:17:06,771.771 INFO    ] 200
[2026-06-27 21:17:06,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:17:06,796.796 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:17:06,842.842 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:17:06,843.843 INFO    ] No camera update needed
[2026-06-27 21:17:06,844.844 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:17:06,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:17:06,848.848 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:17:06,851.851 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:17:08,891.891 INFO    ] ================================================
[2026-06-27 21:17:08,907.907 INFO    ] Launching Daemon at Sat Jun 27 21:17:08 IST 2026
[2026-06-27 21:17:08,918.918 INFO    ] ================================================
[2026-06-27 21:17:09,271.271 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:17:09
[2026-06-27 21:17:09,583.583 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:17:09,714.714 INFO    ] Initializing speech engine...
[2026-06-27 21:17:09,717.717 INFO    ] 2026-06-27 21:17:09
[2026-06-27 21:17:09,938.938 INFO    ] 2026-06-27 21:17:09
[2026-06-27 21:17:09,968.968 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:17:10,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:17:10,164.164 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:17:10,295.295 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:17:10,365.365 INFO    ] time= 27/06/2026 21:17:10
[2026-06-27 21:17:10,388.388 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:17:10,395.395 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:17:10,461.461 INFO    ] No existing commands found in stream
[2026-06-27 21:17:15,472.472 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:17:15,475.475 INFO    ] Waiting 0.64 seconds before fallback handling...
[2026-06-27 21:17:16,518.518 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:17:16,519.519 INFO    ] Checking for system updates...
[2026-06-27 21:17:16,540.540 INFO    ] 200
[2026-06-27 21:17:16,542.542 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:17:16,573.573 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:17:16,575.575 INFO    ] No update needed
[2026-06-27 21:17:16,576.576 INFO    ] Checking for camera pi updates...
[2026-06-27 21:17:16,597.597 INFO    ] 200
[2026-06-27 21:17:16,598.598 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:17:16,626.626 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:17:16,766.766 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:17:16,767.767 INFO    ] No camera update needed
[2026-06-27 21:17:16,768.768 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:17:16,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:17:16,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:17:16,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:17:18,816.816 INFO    ] ================================================
[2026-06-27 21:17:18,832.832 INFO    ] Launching Daemon at Sat Jun 27 21:17:18 IST 2026
[2026-06-27 21:17:18,842.842 INFO    ] ================================================
[2026-06-27 21:17:19,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:17:19
[2026-06-27 21:17:19,513.513 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:17:19,642.642 INFO    ] Initializing speech engine...
[2026-06-27 21:17:19,647.647 INFO    ] 2026-06-27 21:17:19
[2026-06-27 21:17:19,863.863 INFO    ] 2026-06-27 21:17:19
[2026-06-27 21:17:19,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:17:20,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:17:20,078.078 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:17:20,207.207 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:17:20,263.263 INFO    ] time= 27/06/2026 21:17:20
[2026-06-27 21:17:20,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:17:20,308.308 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:17:20,379.379 INFO    ] No existing commands found in stream
[2026-06-27 21:17:25,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:17:25,391.391 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-27 21:17:27,974.974 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 21:17:27,975.975 INFO    ] Checking for system updates...
[2026-06-27 21:17:27,998.998 INFO    ] 200
[2026-06-27 21:17:27,999.999 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:17:28,035.035 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:17:28,036.036 INFO    ] No update needed
[2026-06-27 21:17:28,038.038 INFO    ] Checking for camera pi updates...
[2026-06-27 21:17:28,061.061 INFO    ] 200
[2026-06-27 21:17:28,063.063 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:17:28,088.088 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:17:28,142.142 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:17:28,143.143 INFO    ] No camera update needed
[2026-06-27 21:17:28,145.145 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:17:28,146.146 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:17:28,149.149 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:17:28,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:17:30,192.192 INFO    ] ================================================
[2026-06-27 21:17:30,209.209 INFO    ] Launching Daemon at Sat Jun 27 21:17:30 IST 2026
[2026-06-27 21:17:30,221.221 INFO    ] ================================================
[2026-06-27 21:17:30,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:17:30
[2026-06-27 21:17:30,871.871 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:17:31,001.001 INFO    ] Initializing speech engine...
[2026-06-27 21:17:31,006.006 INFO    ] 2026-06-27 21:17:31
[2026-06-27 21:17:31,227.227 INFO    ] 2026-06-27 21:17:31
[2026-06-27 21:17:31,256.256 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:17:31,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:17:31,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:17:31,590.590 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:17:31,662.662 INFO    ] time= 27/06/2026 21:17:31
[2026-06-27 21:17:31,694.694 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:17:31,700.700 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:17:31,769.769 INFO    ] No existing commands found in stream
[2026-06-27 21:17:36,778.778 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:17:36,781.781 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-27 21:17:37,950.950 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:17:37,952.952 INFO    ] Checking for system updates...
[2026-06-27 21:17:37,974.974 INFO    ] 200
[2026-06-27 21:17:37,976.976 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:17:38,006.006 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:17:38,007.007 INFO    ] No update needed
[2026-06-27 21:17:38,009.009 INFO    ] Checking for camera pi updates...
[2026-06-27 21:17:38,029.029 INFO    ] 200
[2026-06-27 21:17:38,031.031 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:17:38,055.055 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:17:38,097.097 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:17:38,098.098 INFO    ] No camera update needed
[2026-06-27 21:17:38,100.100 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:17:38,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:17:38,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:17:38,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:17:40,149.149 INFO    ] ================================================
[2026-06-27 21:17:40,164.164 INFO    ] Launching Daemon at Sat Jun 27 21:17:40 IST 2026
[2026-06-27 21:17:40,176.176 INFO    ] ================================================
[2026-06-27 21:17:40,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:17:40
[2026-06-27 21:17:40,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:17:41,068.068 INFO    ] Initializing speech engine...
[2026-06-27 21:17:41,073.073 INFO    ] 2026-06-27 21:17:41
[2026-06-27 21:17:41,292.292 INFO    ] 2026-06-27 21:17:41
[2026-06-27 21:17:41,340.340 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:17:41,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:17:41,503.503 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:17:41,662.662 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:17:41,718.718 INFO    ] time= 27/06/2026 21:17:41
[2026-06-27 21:17:41,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:17:41,798.798 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:17:41,890.890 INFO    ] No existing commands found in stream
[2026-06-27 21:17:46,900.900 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:17:46,903.903 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-27 21:17:50,666.666 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 21:17:50,668.668 INFO    ] Checking for system updates...
[2026-06-27 21:17:50,690.690 INFO    ] 200
[2026-06-27 21:17:50,691.691 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:17:50,725.725 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:17:50,726.726 INFO    ] No update needed
[2026-06-27 21:17:50,727.727 INFO    ] Checking for camera pi updates...
[2026-06-27 21:17:50,748.748 INFO    ] 200
[2026-06-27 21:17:50,749.749 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:17:50,774.774 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:17:50,824.824 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:17:50,826.826 INFO    ] No camera update needed
[2026-06-27 21:17:50,827.827 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:17:50,828.828 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:17:50,832.832 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:17:50,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:17:52,875.875 INFO    ] ================================================
[2026-06-27 21:17:52,890.890 INFO    ] Launching Daemon at Sat Jun 27 21:17:52 IST 2026
[2026-06-27 21:17:52,901.901 INFO    ] ================================================
[2026-06-27 21:17:53,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:17:53
[2026-06-27 21:17:53,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:17:53,677.677 INFO    ] Initializing speech engine...
[2026-06-27 21:17:53,682.682 INFO    ] 2026-06-27 21:17:53
[2026-06-27 21:17:53,878.878 INFO    ] 2026-06-27 21:17:53
[2026-06-27 21:17:53,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:17:54,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:17:54,058.058 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:17:54,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:17:54,162.162 INFO    ] time= 27/06/2026 21:17:54
[2026-06-27 21:17:54,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:17:54,169.169 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:17:54,270.270 INFO    ] No existing commands found in stream
[2026-06-27 21:17:59,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:17:59,295.295 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-27 21:18:00,816.816 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 21:18:00,817.817 INFO    ] Checking for system updates...
[2026-06-27 21:18:00,838.838 INFO    ] 200
[2026-06-27 21:18:00,839.839 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:18:00,871.871 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:18:00,872.872 INFO    ] No update needed
[2026-06-27 21:18:00,873.873 INFO    ] Checking for camera pi updates...
[2026-06-27 21:18:00,893.893 INFO    ] 200
[2026-06-27 21:18:00,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:18:00,918.918 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:18:00,959.959 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:18:00,960.960 INFO    ] No camera update needed
[2026-06-27 21:18:00,962.962 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:18:00,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:18:00,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:18:00,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:18:02,993.993 INFO    ] ================================================
[2026-06-27 21:18:03,001.001 INFO    ] Launching Daemon at Sat Jun 27 21:18:02 IST 2026
[2026-06-27 21:18:03,007.007 INFO    ] ================================================
[2026-06-27 21:18:03,376.376 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:18:03
[2026-06-27 21:18:03,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:18:03,866.866 INFO    ] Initializing speech engine...
[2026-06-27 21:18:03,871.871 INFO    ] 2026-06-27 21:18:03
[2026-06-27 21:18:04,082.082 INFO    ] 2026-06-27 21:18:04
[2026-06-27 21:18:04,111.111 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:18:04,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:18:04,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:18:04,456.456 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:18:04,510.510 INFO    ] time= 27/06/2026 21:18:04
[2026-06-27 21:18:04,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:18:04,539.539 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:18:04,607.607 INFO    ] No existing commands found in stream
[2026-06-27 21:18:09,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:18:09,625.625 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-27 21:18:13,495.495 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 21:18:13,496.496 INFO    ] Checking for system updates...
[2026-06-27 21:18:13,519.519 INFO    ] 200
[2026-06-27 21:18:13,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:18:13,555.555 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:18:13,557.557 INFO    ] No update needed
[2026-06-27 21:18:13,558.558 INFO    ] Checking for camera pi updates...
[2026-06-27 21:18:13,582.582 INFO    ] 200
[2026-06-27 21:18:13,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:18:13,607.607 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:18:13,658.658 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:18:13,660.660 INFO    ] No camera update needed
[2026-06-27 21:18:13,661.661 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:18:13,663.663 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:18:13,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:18:13,669.669 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:18:15,709.709 INFO    ] ================================================
[2026-06-27 21:18:15,724.724 INFO    ] Launching Daemon at Sat Jun 27 21:18:15 IST 2026
[2026-06-27 21:18:15,735.735 INFO    ] ================================================
[2026-06-27 21:18:16,112.112 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:18:16
[2026-06-27 21:18:16,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:18:16,605.605 INFO    ] Initializing speech engine...
[2026-06-27 21:18:16,611.611 INFO    ] 2026-06-27 21:18:16
[2026-06-27 21:18:16,818.818 INFO    ] 2026-06-27 21:18:16
[2026-06-27 21:18:16,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:18:17,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:18:17,043.043 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:18:17,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:18:17,250.250 INFO    ] time= 27/06/2026 21:18:17
[2026-06-27 21:18:17,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:18:17,272.272 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:18:17,339.339 INFO    ] No existing commands found in stream
[2026-06-27 21:18:22,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:18:22,357.357 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-27 21:18:23,614.614 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 21:18:23,615.615 INFO    ] Checking for system updates...
[2026-06-27 21:18:23,638.638 INFO    ] 200
[2026-06-27 21:18:23,640.640 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:18:23,673.673 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:18:23,674.674 INFO    ] No update needed
[2026-06-27 21:18:23,676.676 INFO    ] Checking for camera pi updates...
[2026-06-27 21:18:23,697.697 INFO    ] 200
[2026-06-27 21:18:23,699.699 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:18:23,723.723 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:18:23,767.767 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:18:23,768.768 INFO    ] No camera update needed
[2026-06-27 21:18:23,769.769 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:18:23,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:18:23,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:18:23,776.776 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:18:25,816.816 INFO    ] ================================================
[2026-06-27 21:18:25,831.831 INFO    ] Launching Daemon at Sat Jun 27 21:18:25 IST 2026
[2026-06-27 21:18:25,842.842 INFO    ] ================================================
[2026-06-27 21:18:26,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:18:26
[2026-06-27 21:18:26,534.534 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:18:26,678.678 INFO    ] Initializing speech engine...
[2026-06-27 21:18:26,683.683 INFO    ] 2026-06-27 21:18:26
[2026-06-27 21:18:26,887.887 INFO    ] 2026-06-27 21:18:26
[2026-06-27 21:18:26,916.916 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:18:27,101.101 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:18:27,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:18:27,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:18:27,305.305 INFO    ] time= 27/06/2026 21:18:27
[2026-06-27 21:18:27,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:18:27,335.335 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:18:27,406.406 INFO    ] No existing commands found in stream
[2026-06-27 21:18:32,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:18:32,418.418 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-27 21:18:32,916.916 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:18:32,918.918 INFO    ] Checking for system updates...
[2026-06-27 21:18:32,943.943 INFO    ] 200
[2026-06-27 21:18:32,944.944 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:18:32,980.980 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:18:32,981.981 INFO    ] No update needed
[2026-06-27 21:18:32,983.983 INFO    ] Checking for camera pi updates...
[2026-06-27 21:18:33,002.002 INFO    ] 200
[2026-06-27 21:18:33,004.004 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:18:33,027.027 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:18:33,083.083 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:18:33,084.084 INFO    ] No camera update needed
[2026-06-27 21:18:33,085.085 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:18:33,087.087 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:18:33,090.090 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:18:33,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:18:35,132.132 INFO    ] ================================================
[2026-06-27 21:18:35,149.149 INFO    ] Launching Daemon at Sat Jun 27 21:18:35 IST 2026
[2026-06-27 21:18:35,160.160 INFO    ] ================================================
[2026-06-27 21:18:35,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:18:35
[2026-06-27 21:18:35,836.836 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:18:35,980.980 INFO    ] Initializing speech engine...
[2026-06-27 21:18:35,984.984 INFO    ] 2026-06-27 21:18:35
[2026-06-27 21:18:36,190.190 INFO    ] 2026-06-27 21:18:36
[2026-06-27 21:18:36,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:18:36,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:18:36,412.412 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:18:36,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:18:36,609.609 INFO    ] time= 27/06/2026 21:18:36
[2026-06-27 21:18:36,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:18:36,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:18:36,703.703 INFO    ] No existing commands found in stream
[2026-06-27 21:18:41,714.714 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:18:41,717.717 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-27 21:18:45,845.845 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 21:18:45,846.846 INFO    ] Checking for system updates...
[2026-06-27 21:18:45,868.868 INFO    ] 200
[2026-06-27 21:18:45,869.869 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:18:45,900.900 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:18:45,901.901 INFO    ] No update needed
[2026-06-27 21:18:45,903.903 INFO    ] Checking for camera pi updates...
[2026-06-27 21:18:45,922.922 INFO    ] 200
[2026-06-27 21:18:45,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:18:45,950.950 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:18:46,004.004 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:18:46,005.005 INFO    ] No camera update needed
[2026-06-27 21:18:46,007.007 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:18:46,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:18:46,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:18:46,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:18:48,054.054 INFO    ] ================================================
[2026-06-27 21:18:48,069.069 INFO    ] Launching Daemon at Sat Jun 27 21:18:48 IST 2026
[2026-06-27 21:18:48,080.080 INFO    ] ================================================
[2026-06-27 21:18:48,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:18:48
[2026-06-27 21:18:48,760.760 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:18:48,904.904 INFO    ] Initializing speech engine...
[2026-06-27 21:18:48,909.909 INFO    ] 2026-06-27 21:18:48
[2026-06-27 21:18:49,116.116 INFO    ] 2026-06-27 21:18:49
[2026-06-27 21:18:49,146.146 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:18:49,332.332 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:18:49,336.336 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:18:49,512.512 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:18:49,546.546 INFO    ] time= 27/06/2026 21:18:49
[2026-06-27 21:18:49,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:18:49,574.574 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:18:49,641.641 INFO    ] No existing commands found in stream
[2026-06-27 21:18:54,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:18:54,654.654 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-27 21:18:58,587.587 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 21:18:58,588.588 INFO    ] Checking for system updates...
[2026-06-27 21:18:58,609.609 INFO    ] 200
[2026-06-27 21:18:58,611.611 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:18:58,643.643 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:18:58,645.645 INFO    ] No update needed
[2026-06-27 21:18:58,646.646 INFO    ] Checking for camera pi updates...
[2026-06-27 21:18:58,668.668 INFO    ] 200
[2026-06-27 21:18:58,669.669 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:18:58,695.695 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:18:58,740.740 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:18:58,741.741 INFO    ] No camera update needed
[2026-06-27 21:18:58,743.743 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:18:58,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:18:58,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:18:58,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:19:00,791.791 INFO    ] ================================================
[2026-06-27 21:19:00,807.807 INFO    ] Launching Daemon at Sat Jun 27 21:19:00 IST 2026
[2026-06-27 21:19:00,818.818 INFO    ] ================================================
[2026-06-27 21:19:01,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:19:01
[2026-06-27 21:19:01,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:19:01,681.681 INFO    ] Initializing speech engine...
[2026-06-27 21:19:01,686.686 INFO    ] 2026-06-27 21:19:01
[2026-06-27 21:19:01,896.896 INFO    ] 2026-06-27 21:19:01
[2026-06-27 21:19:01,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:19:02,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:19:02,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:19:02,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:19:02,296.296 INFO    ] time= 27/06/2026 21:19:02
[2026-06-27 21:19:02,302.302 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:19:02,310.310 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:19:02,450.450 INFO    ] No existing commands found in stream
[2026-06-27 21:19:07,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:19:07,478.478 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-27 21:19:08,082.082 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 21:19:08,083.083 INFO    ] Checking for system updates...
[2026-06-27 21:19:08,108.108 INFO    ] 200
[2026-06-27 21:19:08,110.110 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:19:08,146.146 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:19:08,147.147 INFO    ] No update needed
[2026-06-27 21:19:08,149.149 INFO    ] Checking for camera pi updates...
[2026-06-27 21:19:08,170.170 INFO    ] 200
[2026-06-27 21:19:08,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:19:08,195.195 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:19:08,243.243 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:19:08,244.244 INFO    ] No camera update needed
[2026-06-27 21:19:08,246.246 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:19:08,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:19:08,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:19:08,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:19:10,294.294 INFO    ] ================================================
[2026-06-27 21:19:10,309.309 INFO    ] Launching Daemon at Sat Jun 27 21:19:10 IST 2026
[2026-06-27 21:19:10,320.320 INFO    ] ================================================
[2026-06-27 21:19:10,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:19:10
[2026-06-27 21:19:10,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:19:11,103.103 INFO    ] Initializing speech engine...
[2026-06-27 21:19:11,112.112 INFO    ] 2026-06-27 21:19:11
[2026-06-27 21:19:11,332.332 INFO    ] 2026-06-27 21:19:11
[2026-06-27 21:19:11,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:19:11,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:19:11,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:19:11,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:19:11,777.777 INFO    ] time= 27/06/2026 21:19:11
[2026-06-27 21:19:11,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:19:11,784.784 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:19:11,850.850 INFO    ] No existing commands found in stream
[2026-06-27 21:19:16,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:19:16,863.863 INFO    ] Waiting 1.44 seconds before fallback handling...
[2026-06-27 21:19:18,662.662 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 21:19:18,663.663 INFO    ] Checking for system updates...
[2026-06-27 21:19:18,685.685 INFO    ] 200
[2026-06-27 21:19:18,686.686 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:19:18,717.717 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:19:18,718.718 INFO    ] No update needed
[2026-06-27 21:19:18,720.720 INFO    ] Checking for camera pi updates...
[2026-06-27 21:19:18,739.739 INFO    ] 200
[2026-06-27 21:19:18,741.741 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:19:18,767.767 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:19:18,909.909 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:19:18,911.911 INFO    ] No camera update needed
[2026-06-27 21:19:18,912.912 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:19:18,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:19:18,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:19:18,921.921 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:19:20,959.959 INFO    ] ================================================
[2026-06-27 21:19:20,976.976 INFO    ] Launching Daemon at Sat Jun 27 21:19:20 IST 2026
[2026-06-27 21:19:20,986.986 INFO    ] ================================================
[2026-06-27 21:19:21,353.353 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:19:21
[2026-06-27 21:19:21,665.665 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:19:21,797.797 INFO    ] Initializing speech engine...
[2026-06-27 21:19:21,810.810 INFO    ] 2026-06-27 21:19:21
[2026-06-27 21:19:22,018.018 INFO    ] 2026-06-27 21:19:21
[2026-06-27 21:19:22,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:19:22,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:19:22,245.245 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:19:22,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:19:22,442.442 INFO    ] time= 27/06/2026 21:19:22
[2026-06-27 21:19:22,470.470 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:19:22,472.472 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:19:22,544.544 INFO    ] No existing commands found in stream
[2026-06-27 21:19:27,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:19:27,556.556 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-27 21:19:31,863.863 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 21:19:31,864.864 INFO    ] Checking for system updates...
[2026-06-27 21:19:31,886.886 INFO    ] 200
[2026-06-27 21:19:31,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:19:31,922.922 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:19:31,924.924 INFO    ] No update needed
[2026-06-27 21:19:31,926.926 INFO    ] Checking for camera pi updates...
[2026-06-27 21:19:31,959.959 INFO    ] 200
[2026-06-27 21:19:31,961.961 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:19:31,992.992 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:19:32,035.035 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:19:32,037.037 INFO    ] No camera update needed
[2026-06-27 21:19:32,039.039 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:19:32,040.040 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:19:32,044.044 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:19:32,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:19:34,089.089 INFO    ] ================================================
[2026-06-27 21:19:34,106.106 INFO    ] Launching Daemon at Sat Jun 27 21:19:34 IST 2026
[2026-06-27 21:19:34,117.117 INFO    ] ================================================
[2026-06-27 21:19:34,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:19:34
[2026-06-27 21:19:34,772.772 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:19:34,916.916 INFO    ] Initializing speech engine...
[2026-06-27 21:19:34,921.921 INFO    ] 2026-06-27 21:19:34
[2026-06-27 21:19:35,126.126 INFO    ] 2026-06-27 21:19:35
[2026-06-27 21:19:35,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:19:35,339.339 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:19:35,348.348 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:19:35,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:19:35,567.567 INFO    ] time= 27/06/2026 21:19:35
[2026-06-27 21:19:35,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:19:35,574.574 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:19:35,665.665 INFO    ] No existing commands found in stream
[2026-06-27 21:19:40,679.679 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:19:40,682.682 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-27 21:19:42,578.578 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 21:19:42,579.579 INFO    ] Checking for system updates...
[2026-06-27 21:19:42,601.601 INFO    ] 200
[2026-06-27 21:19:42,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:19:42,635.635 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:19:42,636.636 INFO    ] No update needed
[2026-06-27 21:19:42,638.638 INFO    ] Checking for camera pi updates...
[2026-06-27 21:19:42,658.658 INFO    ] 200
[2026-06-27 21:19:42,659.659 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:19:42,685.685 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:19:42,731.731 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:19:42,733.733 INFO    ] No camera update needed
[2026-06-27 21:19:42,735.735 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:19:42,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:19:42,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:19:42,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:19:44,782.782 INFO    ] ================================================
[2026-06-27 21:19:44,798.798 INFO    ] Launching Daemon at Sat Jun 27 21:19:44 IST 2026
[2026-06-27 21:19:44,810.810 INFO    ] ================================================
[2026-06-27 21:19:45,159.159 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:19:45
[2026-06-27 21:19:45,475.475 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:19:45,618.618 INFO    ] Initializing speech engine...
[2026-06-27 21:19:45,628.628 INFO    ] 2026-06-27 21:19:45
[2026-06-27 21:19:45,846.846 INFO    ] 2026-06-27 21:19:45
[2026-06-27 21:19:45,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:19:46,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:19:46,068.068 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:19:46,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:19:46,276.276 INFO    ] time= 27/06/2026 21:19:46
[2026-06-27 21:19:46,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:19:46,306.306 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:19:46,372.372 INFO    ] No existing commands found in stream
[2026-06-27 21:19:51,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:19:51,386.386 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-27 21:19:54,558.558 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 21:19:54,559.559 INFO    ] Checking for system updates...
[2026-06-27 21:19:54,580.580 INFO    ] 200
[2026-06-27 21:19:54,581.581 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:19:54,614.614 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:19:54,615.615 INFO    ] No update needed
[2026-06-27 21:19:54,617.617 INFO    ] Checking for camera pi updates...
[2026-06-27 21:19:54,636.636 INFO    ] 200
[2026-06-27 21:19:54,637.637 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:19:54,661.661 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:19:54,695.695 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:19:54,696.696 INFO    ] No camera update needed
[2026-06-27 21:19:54,697.697 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:19:54,699.699 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:19:54,702.702 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:19:54,704.704 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:19:56,742.742 INFO    ] ================================================
[2026-06-27 21:19:56,758.758 INFO    ] Launching Daemon at Sat Jun 27 21:19:56 IST 2026
[2026-06-27 21:19:56,770.770 INFO    ] ================================================
[2026-06-27 21:19:57,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:19:57
[2026-06-27 21:19:57,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:19:57,553.553 INFO    ] Initializing speech engine...
[2026-06-27 21:19:57,562.562 INFO    ] 2026-06-27 21:19:57
[2026-06-27 21:19:57,781.781 INFO    ] 2026-06-27 21:19:57
[2026-06-27 21:19:57,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:19:57,949.949 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:19:58,017.017 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:19:58,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:19:58,226.226 INFO    ] time= 27/06/2026 21:19:58
[2026-06-27 21:19:58,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:19:58,268.268 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:19:58,336.336 INFO    ] No existing commands found in stream
[2026-06-27 21:20:03,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:20:03,347.347 INFO    ] Waiting 2.42 seconds before fallback handling...
[2026-06-27 21:20:07,646.646 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:20:07,650.650 INFO    ] Checking for system updates...
[2026-06-27 21:20:07,701.701 INFO    ] 200
[2026-06-27 21:20:07,704.704 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:20:07,754.754 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:20:07,755.755 INFO    ] No update needed
[2026-06-27 21:20:07,757.757 INFO    ] Checking for camera pi updates...
[2026-06-27 21:20:07,776.776 INFO    ] 200
[2026-06-27 21:20:07,777.777 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:20:07,802.802 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:20:07,849.849 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:20:07,850.850 INFO    ] No camera update needed
[2026-06-27 21:20:07,851.851 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:20:07,852.852 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:20:07,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:20:07,858.858 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:20:09,897.897 INFO    ] ================================================
[2026-06-27 21:20:09,913.913 INFO    ] Launching Daemon at Sat Jun 27 21:20:09 IST 2026
[2026-06-27 21:20:09,925.925 INFO    ] ================================================
[2026-06-27 21:20:10,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:20:10
[2026-06-27 21:20:10,592.592 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:20:10,728.728 INFO    ] Initializing speech engine...
[2026-06-27 21:20:10,731.731 INFO    ] 2026-06-27 21:20:10
[2026-06-27 21:20:10,961.961 INFO    ] 2026-06-27 21:20:10
[2026-06-27 21:20:10,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:20:11,191.191 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:20:11,194.194 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:20:11,334.334 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:20:11,380.380 INFO    ] time= 27/06/2026 21:20:11
[2026-06-27 21:20:11,419.419 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:20:11,442.442 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:20:11,517.517 INFO    ] No existing commands found in stream
[2026-06-27 21:20:16,528.528 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:20:16,531.531 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-27 21:20:20,300.300 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:20:20,302.302 INFO    ] Checking for system updates...
[2026-06-27 21:20:20,323.323 INFO    ] 200
[2026-06-27 21:20:20,324.324 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:20:20,354.354 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:20:20,356.356 INFO    ] No update needed
[2026-06-27 21:20:20,357.357 INFO    ] Checking for camera pi updates...
[2026-06-27 21:20:20,377.377 INFO    ] 200
[2026-06-27 21:20:20,378.378 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:20:20,401.401 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:20:20,450.450 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:20:20,451.451 INFO    ] No camera update needed
[2026-06-27 21:20:20,452.452 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:20:20,454.454 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:20:20,457.457 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:20:20,460.460 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:20:22,498.498 INFO    ] ================================================
[2026-06-27 21:20:22,513.513 INFO    ] Launching Daemon at Sat Jun 27 21:20:22 IST 2026
[2026-06-27 21:20:22,524.524 INFO    ] ================================================
[2026-06-27 21:20:22,908.908 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:20:22
[2026-06-27 21:20:23,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:20:23,393.393 INFO    ] Initializing speech engine...
[2026-06-27 21:20:23,404.404 INFO    ] 2026-06-27 21:20:23
[2026-06-27 21:20:23,609.609 INFO    ] 2026-06-27 21:20:23
[2026-06-27 21:20:23,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:20:23,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:20:23,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:20:23,955.955 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:20:24,017.017 INFO    ] time= 27/06/2026 21:20:23
[2026-06-27 21:20:24,050.050 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:20:24,055.055 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:20:24,122.122 INFO    ] No existing commands found in stream
[2026-06-27 21:20:29,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:20:29,139.139 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-27 21:20:30,568.568 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:20:30,569.569 INFO    ] Checking for system updates...
[2026-06-27 21:20:30,591.591 INFO    ] 200
[2026-06-27 21:20:30,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:20:30,624.624 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:20:30,625.625 INFO    ] No update needed
[2026-06-27 21:20:30,626.626 INFO    ] Checking for camera pi updates...
[2026-06-27 21:20:30,646.646 INFO    ] 200
[2026-06-27 21:20:30,647.647 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:20:30,672.672 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:20:30,718.718 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:20:30,720.720 INFO    ] No camera update needed
[2026-06-27 21:20:30,721.721 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:20:30,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:20:30,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:20:30,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:20:32,762.762 INFO    ] ================================================
[2026-06-27 21:20:32,780.780 INFO    ] Launching Daemon at Sat Jun 27 21:20:32 IST 2026
[2026-06-27 21:20:32,792.792 INFO    ] ================================================
[2026-06-27 21:20:33,145.145 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:20:33
[2026-06-27 21:20:33,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:20:33,614.614 INFO    ] Initializing speech engine...
[2026-06-27 21:20:33,620.620 INFO    ] 2026-06-27 21:20:33
[2026-06-27 21:20:33,827.827 INFO    ] 2026-06-27 21:20:33
[2026-06-27 21:20:33,856.856 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:20:34,040.040 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:20:34,049.049 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:20:34,179.179 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:20:34,246.246 INFO    ] time= 27/06/2026 21:20:34
[2026-06-27 21:20:34,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:20:34,276.276 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:20:34,343.343 INFO    ] No existing commands found in stream
[2026-06-27 21:20:39,358.358 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:20:39,361.361 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-27 21:20:42,292.292 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 21:20:42,294.294 INFO    ] Checking for system updates...
[2026-06-27 21:20:42,314.314 INFO    ] 200
[2026-06-27 21:20:42,316.316 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:20:42,346.346 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:20:42,348.348 INFO    ] No update needed
[2026-06-27 21:20:42,349.349 INFO    ] Checking for camera pi updates...
[2026-06-27 21:20:42,368.368 INFO    ] 200
[2026-06-27 21:20:42,370.370 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:20:42,393.393 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:20:42,438.438 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:20:42,439.439 INFO    ] No camera update needed
[2026-06-27 21:20:42,440.440 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:20:42,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:20:42,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:20:42,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:20:44,485.485 INFO    ] ================================================
[2026-06-27 21:20:44,500.500 INFO    ] Launching Daemon at Sat Jun 27 21:20:44 IST 2026
[2026-06-27 21:20:44,511.511 INFO    ] ================================================
[2026-06-27 21:20:44,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:20:44
[2026-06-27 21:20:45,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:20:45,322.322 INFO    ] Initializing speech engine...
[2026-06-27 21:20:45,326.326 INFO    ] 2026-06-27 21:20:45
[2026-06-27 21:20:45,531.531 INFO    ] 2026-06-27 21:20:45
[2026-06-27 21:20:45,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:20:45,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:20:45,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:20:45,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:20:45,996.996 INFO    ] time= 27/06/2026 21:20:45
[2026-06-27 21:20:46,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:20:46,010.010 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:20:46,076.076 INFO    ] No existing commands found in stream
[2026-06-27 21:20:51,090.090 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:20:51,093.093 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-27 21:20:53,622.622 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:20:53,623.623 INFO    ] Checking for system updates...
[2026-06-27 21:20:53,645.645 INFO    ] 200
[2026-06-27 21:20:53,647.647 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:20:53,677.677 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:20:53,678.678 INFO    ] No update needed
[2026-06-27 21:20:53,680.680 INFO    ] Checking for camera pi updates...
[2026-06-27 21:20:53,699.699 INFO    ] 200
[2026-06-27 21:20:53,700.700 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:20:53,724.724 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:20:53,763.763 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:20:53,765.765 INFO    ] No camera update needed
[2026-06-27 21:20:53,766.766 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:20:53,767.767 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:20:53,770.770 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:20:53,773.773 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:20:55,811.811 INFO    ] ================================================
[2026-06-27 21:20:55,826.826 INFO    ] Launching Daemon at Sat Jun 27 21:20:55 IST 2026
[2026-06-27 21:20:55,837.837 INFO    ] ================================================
[2026-06-27 21:20:56,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:20:56
[2026-06-27 21:20:56,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:20:56,639.639 INFO    ] Initializing speech engine...
[2026-06-27 21:20:56,645.645 INFO    ] 2026-06-27 21:20:56
[2026-06-27 21:20:56,849.849 INFO    ] 2026-06-27 21:20:56
[2026-06-27 21:20:56,878.878 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:20:57,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:20:57,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:20:57,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:20:57,268.268 INFO    ] time= 27/06/2026 21:20:57
[2026-06-27 21:20:57,297.297 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:20:57,303.303 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:20:57,369.369 INFO    ] No existing commands found in stream
[2026-06-27 21:21:02,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:21:02,377.377 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-27 21:21:03,958.958 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:21:03,959.959 INFO    ] Checking for system updates...
[2026-06-27 21:21:03,980.980 INFO    ] 200
[2026-06-27 21:21:03,981.981 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:21:04,014.014 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:21:04,016.016 INFO    ] No update needed
[2026-06-27 21:21:04,017.017 INFO    ] Checking for camera pi updates...
[2026-06-27 21:21:04,037.037 INFO    ] 200
[2026-06-27 21:21:04,038.038 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:21:04,062.062 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:21:04,089.089 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:21:04,090.090 INFO    ] No camera update needed
[2026-06-27 21:21:04,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:21:04,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:21:04,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:21:04,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:21:06,137.137 INFO    ] ================================================
[2026-06-27 21:21:06,152.152 INFO    ] Launching Daemon at Sat Jun 27 21:21:06 IST 2026
[2026-06-27 21:21:06,164.164 INFO    ] ================================================
[2026-06-27 21:21:06,511.511 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:21:06
[2026-06-27 21:21:06,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:21:06,966.966 INFO    ] Initializing speech engine...
[2026-06-27 21:21:06,971.971 INFO    ] 2026-06-27 21:21:06
[2026-06-27 21:21:07,176.176 INFO    ] 2026-06-27 21:21:07
[2026-06-27 21:21:07,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:21:07,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:21:07,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:21:07,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:21:07,585.585 INFO    ] time= 27/06/2026 21:21:07
[2026-06-27 21:21:07,624.624 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:21:07,625.625 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:21:07,698.698 INFO    ] No existing commands found in stream
[2026-06-27 21:21:12,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:21:12,715.715 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-27 21:21:15,063.063 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 21:21:15,065.065 INFO    ] Checking for system updates...
[2026-06-27 21:21:15,086.086 INFO    ] 200
[2026-06-27 21:21:15,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:21:15,118.118 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:21:15,119.119 INFO    ] No update needed
[2026-06-27 21:21:15,121.121 INFO    ] Checking for camera pi updates...
[2026-06-27 21:21:15,142.142 INFO    ] 200
[2026-06-27 21:21:15,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:21:15,167.167 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:21:15,272.272 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:21:15,274.274 INFO    ] No camera update needed
[2026-06-27 21:21:15,275.275 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:21:15,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:21:15,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:21:15,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:21:17,323.323 INFO    ] ================================================
[2026-06-27 21:21:17,339.339 INFO    ] Launching Daemon at Sat Jun 27 21:21:17 IST 2026
[2026-06-27 21:21:17,350.350 INFO    ] ================================================
[2026-06-27 21:21:17,706.706 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:21:17
[2026-06-27 21:21:18,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:21:18,161.161 INFO    ] Initializing speech engine...
[2026-06-27 21:21:18,171.171 INFO    ] 2026-06-27 21:21:18
[2026-06-27 21:21:18,395.395 INFO    ] 2026-06-27 21:21:18
[2026-06-27 21:21:18,426.426 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:21:18,618.618 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:21:18,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:21:18,761.761 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:21:18,825.825 INFO    ] time= 27/06/2026 21:21:18
[2026-06-27 21:21:18,852.852 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:21:18,859.859 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:21:18,926.926 INFO    ] No existing commands found in stream
[2026-06-27 21:21:23,935.935 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:21:23,938.938 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-27 21:21:25,601.601 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 21:21:25,603.603 INFO    ] Checking for system updates...
[2026-06-27 21:21:25,625.625 INFO    ] 200
[2026-06-27 21:21:25,627.627 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:21:25,661.661 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:21:25,662.662 INFO    ] No update needed
[2026-06-27 21:21:25,663.663 INFO    ] Checking for camera pi updates...
[2026-06-27 21:21:25,683.683 INFO    ] 200
[2026-06-27 21:21:25,684.684 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:21:25,708.708 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:21:25,846.846 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:21:25,847.847 INFO    ] No camera update needed
[2026-06-27 21:21:25,848.848 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:21:25,850.850 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:21:25,853.853 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:21:25,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:21:27,894.894 INFO    ] ================================================
[2026-06-27 21:21:27,909.909 INFO    ] Launching Daemon at Sat Jun 27 21:21:27 IST 2026
[2026-06-27 21:21:27,920.920 INFO    ] ================================================
[2026-06-27 21:21:28,285.285 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:21:28
[2026-06-27 21:21:28,598.598 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:21:28,733.733 INFO    ] Initializing speech engine...
[2026-06-27 21:21:28,745.745 INFO    ] 2026-06-27 21:21:28
[2026-06-27 21:21:28,953.953 INFO    ] 2026-06-27 21:21:28
[2026-06-27 21:21:28,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:21:29,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:21:29,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:21:29,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:21:29,369.369 INFO    ] time= 27/06/2026 21:21:29
[2026-06-27 21:21:29,402.402 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:21:29,409.409 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:21:29,476.476 INFO    ] No existing commands found in stream
[2026-06-27 21:21:34,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:21:34,488.488 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-27 21:21:36,290.290 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 21:21:36,292.292 INFO    ] Checking for system updates...
[2026-06-27 21:21:36,312.312 INFO    ] 200
[2026-06-27 21:21:36,314.314 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:21:36,344.344 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:21:36,346.346 INFO    ] No update needed
[2026-06-27 21:21:36,347.347 INFO    ] Checking for camera pi updates...
[2026-06-27 21:21:36,366.366 INFO    ] 200
[2026-06-27 21:21:36,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:21:36,390.390 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:21:36,445.445 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:21:36,447.447 INFO    ] No camera update needed
[2026-06-27 21:21:36,448.448 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:21:36,449.449 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:21:36,452.452 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:21:36,455.455 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:21:38,497.497 INFO    ] ================================================
[2026-06-27 21:21:38,512.512 INFO    ] Launching Daemon at Sat Jun 27 21:21:38 IST 2026
[2026-06-27 21:21:38,523.523 INFO    ] ================================================
[2026-06-27 21:21:38,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:21:38
[2026-06-27 21:21:39,196.196 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:21:39,335.335 INFO    ] Initializing speech engine...
[2026-06-27 21:21:39,346.346 INFO    ] 2026-06-27 21:21:39
[2026-06-27 21:21:39,551.551 INFO    ] 2026-06-27 21:21:39
[2026-06-27 21:21:39,580.580 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:21:39,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:21:39,771.771 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:21:39,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:21:39,969.969 INFO    ] time= 27/06/2026 21:21:39
[2026-06-27 21:21:39,991.991 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:21:39,997.997 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:21:40,061.061 INFO    ] No existing commands found in stream
[2026-06-27 21:21:45,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:21:45,075.075 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-27 21:21:48,343.343 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:21:48,344.344 INFO    ] Checking for system updates...
[2026-06-27 21:21:48,365.365 INFO    ] 200
[2026-06-27 21:21:48,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:21:48,400.400 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:21:48,401.401 INFO    ] No update needed
[2026-06-27 21:21:48,402.402 INFO    ] Checking for camera pi updates...
[2026-06-27 21:21:48,422.422 INFO    ] 200
[2026-06-27 21:21:48,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:21:48,449.449 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:21:48,493.493 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:21:48,494.494 INFO    ] No camera update needed
[2026-06-27 21:21:48,495.495 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:21:48,497.497 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:21:48,500.500 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:21:48,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:21:50,541.541 INFO    ] ================================================
[2026-06-27 21:21:50,557.557 INFO    ] Launching Daemon at Sat Jun 27 21:21:50 IST 2026
[2026-06-27 21:21:50,567.567 INFO    ] ================================================
[2026-06-27 21:21:50,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:21:50
[2026-06-27 21:21:51,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:21:51,372.372 INFO    ] Initializing speech engine...
[2026-06-27 21:21:51,376.376 INFO    ] 2026-06-27 21:21:51
[2026-06-27 21:21:51,573.573 INFO    ] 2026-06-27 21:21:51
[2026-06-27 21:21:51,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:21:51,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:21:51,844.844 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:21:51,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:21:52,045.045 INFO    ] time= 27/06/2026 21:21:52
[2026-06-27 21:21:52,091.091 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:21:52,102.102 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:21:52,184.184 INFO    ] No existing commands found in stream
[2026-06-27 21:21:57,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:21:57,196.196 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-27 21:21:58,177.177 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:21:58,178.178 INFO    ] Checking for system updates...
[2026-06-27 21:21:58,205.205 INFO    ] 200
[2026-06-27 21:21:58,206.206 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:21:58,236.236 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:21:58,237.237 INFO    ] No update needed
[2026-06-27 21:21:58,239.239 INFO    ] Checking for camera pi updates...
[2026-06-27 21:21:58,260.260 INFO    ] 200
[2026-06-27 21:21:58,262.262 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:21:58,285.285 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:21:58,319.319 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:21:58,320.320 INFO    ] No camera update needed
[2026-06-27 21:21:58,321.321 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:21:58,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:21:58,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:21:58,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:22:00,367.367 INFO    ] ================================================
[2026-06-27 21:22:00,382.382 INFO    ] Launching Daemon at Sat Jun 27 21:22:00 IST 2026
[2026-06-27 21:22:00,393.393 INFO    ] ================================================
[2026-06-27 21:22:00,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:22:00
[2026-06-27 21:22:01,063.063 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:22:01,207.207 INFO    ] Initializing speech engine...
[2026-06-27 21:22:01,213.213 INFO    ] 2026-06-27 21:22:01
[2026-06-27 21:22:01,418.418 INFO    ] 2026-06-27 21:22:01
[2026-06-27 21:22:01,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:22:01,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:22:01,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:22:01,916.916 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:22:01,919.919 INFO    ] time= 27/06/2026 21:22:01
[2026-06-27 21:22:01,921.921 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:22:01,948.948 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:22:02,193.193 INFO    ] No existing commands found in stream
[2026-06-27 21:22:07,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:22:07,203.203 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-27 21:22:11,305.305 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 21:22:11,306.306 INFO    ] Checking for system updates...
[2026-06-27 21:22:11,327.327 INFO    ] 200
[2026-06-27 21:22:11,328.328 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:22:11,361.361 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:22:11,362.362 INFO    ] No update needed
[2026-06-27 21:22:11,364.364 INFO    ] Checking for camera pi updates...
[2026-06-27 21:22:11,383.383 INFO    ] 200
[2026-06-27 21:22:11,385.385 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:22:11,410.410 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:22:11,451.451 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:22:11,453.453 INFO    ] No camera update needed
[2026-06-27 21:22:11,454.454 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:22:11,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:22:11,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:22:11,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:22:13,500.500 INFO    ] ================================================
[2026-06-27 21:22:13,517.517 INFO    ] Launching Daemon at Sat Jun 27 21:22:13 IST 2026
[2026-06-27 21:22:13,528.528 INFO    ] ================================================
[2026-06-27 21:22:13,897.897 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:22:13
[2026-06-27 21:22:14,215.215 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:22:14,360.360 INFO    ] Initializing speech engine...
[2026-06-27 21:22:14,366.366 INFO    ] 2026-06-27 21:22:14
[2026-06-27 21:22:14,572.572 INFO    ] 2026-06-27 21:22:14
[2026-06-27 21:22:14,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:22:14,738.738 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:22:14,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:22:14,923.923 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:22:14,980.980 INFO    ] time= 27/06/2026 21:22:14
[2026-06-27 21:22:15,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:22:15,019.019 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:22:15,091.091 INFO    ] No existing commands found in stream
[2026-06-27 21:22:20,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:22:20,108.108 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-27 21:22:21,516.516 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 21:22:21,517.517 INFO    ] Checking for system updates...
[2026-06-27 21:22:21,539.539 INFO    ] 200
[2026-06-27 21:22:21,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:22:21,571.571 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:22:21,572.572 INFO    ] No update needed
[2026-06-27 21:22:21,574.574 INFO    ] Checking for camera pi updates...
[2026-06-27 21:22:21,593.593 INFO    ] 200
[2026-06-27 21:22:21,595.595 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:22:21,621.621 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:22:21,663.663 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:22:21,665.665 INFO    ] No camera update needed
[2026-06-27 21:22:21,666.666 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:22:21,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:22:21,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:22:21,673.673 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:22:23,715.715 INFO    ] ================================================
[2026-06-27 21:22:23,730.730 INFO    ] Launching Daemon at Sat Jun 27 21:22:23 IST 2026
[2026-06-27 21:22:23,741.741 INFO    ] ================================================
[2026-06-27 21:22:24,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:22:24
[2026-06-27 21:22:24,448.448 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:22:24,602.602 INFO    ] Initializing speech engine...
[2026-06-27 21:22:24,606.606 INFO    ] 2026-06-27 21:22:24
[2026-06-27 21:22:24,816.816 INFO    ] 2026-06-27 21:22:24
[2026-06-27 21:22:24,844.844 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:22:25,028.028 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:22:25,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:22:25,167.167 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:22:25,231.231 INFO    ] time= 27/06/2026 21:22:25
[2026-06-27 21:22:25,258.258 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:22:25,264.264 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:22:25,329.329 INFO    ] No existing commands found in stream
[2026-06-27 21:22:30,339.339 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:22:30,342.342 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-27 21:22:33,192.192 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 21:22:33,195.195 INFO    ] Checking for system updates...
[2026-06-27 21:22:33,232.232 INFO    ] 200
[2026-06-27 21:22:33,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:22:33,272.272 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:22:33,273.273 INFO    ] No update needed
[2026-06-27 21:22:33,275.275 INFO    ] Checking for camera pi updates...
[2026-06-27 21:22:33,298.298 INFO    ] 200
[2026-06-27 21:22:33,300.300 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:22:33,326.326 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:22:33,356.356 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:22:33,358.358 INFO    ] No camera update needed
[2026-06-27 21:22:33,359.359 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:22:33,360.360 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:22:33,364.364 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:22:33,367.367 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:22:35,406.406 INFO    ] ================================================
[2026-06-27 21:22:35,421.421 INFO    ] Launching Daemon at Sat Jun 27 21:22:35 IST 2026
[2026-06-27 21:22:35,433.433 INFO    ] ================================================
[2026-06-27 21:22:35,794.794 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:22:35
[2026-06-27 21:22:36,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:22:36,290.290 INFO    ] Initializing speech engine...
[2026-06-27 21:22:36,296.296 INFO    ] 2026-06-27 21:22:36
[2026-06-27 21:22:36,504.504 INFO    ] 2026-06-27 21:22:36
[2026-06-27 21:22:36,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:22:36,718.718 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:22:36,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:22:36,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:22:36,925.925 INFO    ] time= 27/06/2026 21:22:36
[2026-06-27 21:22:36,947.947 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:22:36,952.952 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:22:37,019.019 INFO    ] No existing commands found in stream
[2026-06-27 21:22:42,028.028 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:22:42,029.029 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-27 21:22:44,975.975 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 21:22:44,976.976 INFO    ] Checking for system updates...
[2026-06-27 21:22:44,999.999 INFO    ] 200
[2026-06-27 21:22:45,001.001 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:22:45,031.031 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:22:45,032.032 INFO    ] No update needed
[2026-06-27 21:22:45,033.033 INFO    ] Checking for camera pi updates...
[2026-06-27 21:22:45,053.053 INFO    ] 200
[2026-06-27 21:22:45,055.055 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:22:45,078.078 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:22:45,128.128 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:22:45,129.129 INFO    ] No camera update needed
[2026-06-27 21:22:45,130.130 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:22:45,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:22:45,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:22:45,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:22:47,176.176 INFO    ] ================================================
[2026-06-27 21:22:47,192.192 INFO    ] Launching Daemon at Sat Jun 27 21:22:47 IST 2026
[2026-06-27 21:22:47,203.203 INFO    ] ================================================
[2026-06-27 21:22:47,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:22:47
[2026-06-27 21:22:47,911.911 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:22:48,067.067 INFO    ] Initializing speech engine...
[2026-06-27 21:22:48,074.074 INFO    ] 2026-06-27 21:22:48
[2026-06-27 21:22:48,285.285 INFO    ] 2026-06-27 21:22:48
[2026-06-27 21:22:48,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:22:48,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:22:48,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:22:48,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:22:48,729.729 INFO    ] time= 27/06/2026 21:22:48
[2026-06-27 21:22:48,734.734 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:22:48,741.741 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:22:48,809.809 INFO    ] No existing commands found in stream
[2026-06-27 21:22:53,817.817 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:22:53,820.820 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-27 21:22:54,652.652 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 21:22:54,654.654 INFO    ] Checking for system updates...
[2026-06-27 21:22:54,675.675 INFO    ] 200
[2026-06-27 21:22:54,676.676 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:22:54,710.710 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:22:54,712.712 INFO    ] No update needed
[2026-06-27 21:22:54,713.713 INFO    ] Checking for camera pi updates...
[2026-06-27 21:22:54,735.735 INFO    ] 200
[2026-06-27 21:22:54,737.737 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:22:54,762.762 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:22:54,800.800 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:22:54,801.801 INFO    ] No camera update needed
[2026-06-27 21:22:54,803.803 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:22:54,804.804 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:22:54,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:22:54,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:22:56,849.849 INFO    ] ================================================
[2026-06-27 21:22:56,866.866 INFO    ] Launching Daemon at Sat Jun 27 21:22:56 IST 2026
[2026-06-27 21:22:56,877.877 INFO    ] ================================================
[2026-06-27 21:22:57,239.239 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:22:57
[2026-06-27 21:22:57,556.556 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:22:57,690.690 INFO    ] Initializing speech engine...
[2026-06-27 21:22:57,695.695 INFO    ] 2026-06-27 21:22:57
[2026-06-27 21:22:57,889.889 INFO    ] 2026-06-27 21:22:57
[2026-06-27 21:22:57,936.936 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:22:58,096.096 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:22:58,139.139 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:22:58,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:22:58,370.370 INFO    ] time= 27/06/2026 21:22:58
[2026-06-27 21:22:58,406.406 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:22:58,417.417 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:22:58,494.494 INFO    ] No existing commands found in stream
[2026-06-27 21:23:03,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:23:03,508.508 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-27 21:23:04,446.446 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 21:23:04,447.447 INFO    ] Checking for system updates...
[2026-06-27 21:23:04,469.469 INFO    ] 200
[2026-06-27 21:23:04,470.470 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:23:04,503.503 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:23:04,505.505 INFO    ] No update needed
[2026-06-27 21:23:04,506.506 INFO    ] Checking for camera pi updates...
[2026-06-27 21:23:04,527.527 INFO    ] 200
[2026-06-27 21:23:04,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:23:04,552.552 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:23:04,600.600 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:23:04,602.602 INFO    ] No camera update needed
[2026-06-27 21:23:04,603.603 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:23:04,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:23:04,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:23:04,610.610 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:23:06,649.649 INFO    ] ================================================
[2026-06-27 21:23:06,664.664 INFO    ] Launching Daemon at Sat Jun 27 21:23:06 IST 2026
[2026-06-27 21:23:06,675.675 INFO    ] ================================================
[2026-06-27 21:23:07,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:23:07
[2026-06-27 21:23:07,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:23:07,473.473 INFO    ] Initializing speech engine...
[2026-06-27 21:23:07,477.477 INFO    ] 2026-06-27 21:23:07
[2026-06-27 21:23:07,693.693 INFO    ] 2026-06-27 21:23:07
[2026-06-27 21:23:07,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:23:07,849.849 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:23:07,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:23:08,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:23:08,097.097 INFO    ] time= 27/06/2026 21:23:08
[2026-06-27 21:23:08,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:23:08,154.154 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:23:08,229.229 INFO    ] No existing commands found in stream
[2026-06-27 21:23:13,239.239 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:23:13,242.242 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-27 21:23:15,097.097 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:23:15,098.098 INFO    ] Checking for system updates...
[2026-06-27 21:23:15,119.119 INFO    ] 200
[2026-06-27 21:23:15,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:23:15,151.151 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:23:15,152.152 INFO    ] No update needed
[2026-06-27 21:23:15,154.154 INFO    ] Checking for camera pi updates...
[2026-06-27 21:23:15,175.175 INFO    ] 200
[2026-06-27 21:23:15,177.177 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:23:15,206.206 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:23:15,246.246 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:23:15,248.248 INFO    ] No camera update needed
[2026-06-27 21:23:15,249.249 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:23:15,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:23:15,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:23:15,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:23:17,295.295 INFO    ] ================================================
[2026-06-27 21:23:17,310.310 INFO    ] Launching Daemon at Sat Jun 27 21:23:17 IST 2026
[2026-06-27 21:23:17,321.321 INFO    ] ================================================
[2026-06-27 21:23:17,707.707 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:23:17
[2026-06-27 21:23:18,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:23:18,189.189 INFO    ] Initializing speech engine...
[2026-06-27 21:23:18,199.199 INFO    ] 2026-06-27 21:23:18
[2026-06-27 21:23:18,410.410 INFO    ] 2026-06-27 21:23:18
[2026-06-27 21:23:18,439.439 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:23:18,609.609 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:23:18,628.628 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:23:18,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:23:18,822.822 INFO    ] time= 27/06/2026 21:23:18
[2026-06-27 21:23:18,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:23:18,867.867 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:23:18,935.935 INFO    ] No existing commands found in stream
[2026-06-27 21:23:23,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:23:23,953.953 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-27 21:23:26,151.151 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 21:23:26,153.153 INFO    ] Checking for system updates...
[2026-06-27 21:23:26,185.185 INFO    ] 200
[2026-06-27 21:23:26,186.186 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:23:26,221.221 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:23:26,222.222 INFO    ] No update needed
[2026-06-27 21:23:26,224.224 INFO    ] Checking for camera pi updates...
[2026-06-27 21:23:26,245.245 INFO    ] 200
[2026-06-27 21:23:26,246.246 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:23:26,271.271 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:23:26,318.318 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:23:26,319.319 INFO    ] No camera update needed
[2026-06-27 21:23:26,321.321 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:23:26,322.322 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:23:26,325.325 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:23:26,328.328 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:23:28,368.368 INFO    ] ================================================
[2026-06-27 21:23:28,384.384 INFO    ] Launching Daemon at Sat Jun 27 21:23:28 IST 2026
[2026-06-27 21:23:28,396.396 INFO    ] ================================================
[2026-06-27 21:23:28,755.755 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:23:28
[2026-06-27 21:23:29,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:23:29,209.209 INFO    ] Initializing speech engine...
[2026-06-27 21:23:29,214.214 INFO    ] 2026-06-27 21:23:29
[2026-06-27 21:23:29,406.406 INFO    ] 2026-06-27 21:23:29
[2026-06-27 21:23:29,452.452 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:23:29,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:23:29,681.681 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:23:29,823.823 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:23:29,879.879 INFO    ] time= 27/06/2026 21:23:29
[2026-06-27 21:23:29,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:23:29,931.931 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:23:30,008.008 INFO    ] No existing commands found in stream
[2026-06-27 21:23:35,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:23:35,016.016 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-27 21:23:39,305.305 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 21:23:39,307.307 INFO    ] Checking for system updates...
[2026-06-27 21:23:39,330.330 INFO    ] 200
[2026-06-27 21:23:39,332.332 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:23:39,367.367 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:23:39,369.369 INFO    ] No update needed
[2026-06-27 21:23:39,370.370 INFO    ] Checking for camera pi updates...
[2026-06-27 21:23:39,395.395 INFO    ] 200
[2026-06-27 21:23:39,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:23:39,427.427 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:23:39,470.470 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:23:39,472.472 INFO    ] No camera update needed
[2026-06-27 21:23:39,473.473 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:23:39,475.475 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:23:39,479.479 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:23:39,482.482 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:23:41,514.514 INFO    ] ================================================
[2026-06-27 21:23:41,530.530 INFO    ] Launching Daemon at Sat Jun 27 21:23:41 IST 2026
[2026-06-27 21:23:41,541.541 INFO    ] ================================================
[2026-06-27 21:23:41,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:23:41
[2026-06-27 21:23:42,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:23:42,393.393 INFO    ] Initializing speech engine...
[2026-06-27 21:23:42,397.397 INFO    ] 2026-06-27 21:23:42
[2026-06-27 21:23:42,602.602 INFO    ] 2026-06-27 21:23:42
[2026-06-27 21:23:42,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:23:42,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:23:42,806.806 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:23:42,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:23:43,036.036 INFO    ] time= 27/06/2026 21:23:42
[2026-06-27 21:23:43,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:23:43,077.077 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:23:43,146.146 INFO    ] No existing commands found in stream
[2026-06-27 21:23:48,157.157 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:23:48,160.160 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-27 21:23:50,223.223 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 21:23:50,224.224 INFO    ] Checking for system updates...
[2026-06-27 21:23:50,247.247 INFO    ] 200
[2026-06-27 21:23:50,248.248 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:23:50,282.282 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:23:50,285.285 INFO    ] No update needed
[2026-06-27 21:23:50,287.287 INFO    ] Checking for camera pi updates...
[2026-06-27 21:23:50,307.307 INFO    ] 200
[2026-06-27 21:23:50,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:23:50,334.334 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:23:50,375.375 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:23:50,376.376 INFO    ] No camera update needed
[2026-06-27 21:23:50,377.377 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:23:50,379.379 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:23:50,382.382 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:23:50,385.385 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:23:52,426.426 INFO    ] ================================================
[2026-06-27 21:23:52,441.441 INFO    ] Launching Daemon at Sat Jun 27 21:23:52 IST 2026
[2026-06-27 21:23:52,452.452 INFO    ] ================================================
[2026-06-27 21:23:52,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:23:52
[2026-06-27 21:23:53,168.168 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:23:53,320.320 INFO    ] Initializing speech engine...
[2026-06-27 21:23:53,325.325 INFO    ] 2026-06-27 21:23:53
[2026-06-27 21:23:53,532.532 INFO    ] 2026-06-27 21:23:53
[2026-06-27 21:23:53,560.560 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:23:53,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:23:53,727.727 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:23:53,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:23:53,837.837 INFO    ] time= 27/06/2026 21:23:53
[2026-06-27 21:23:53,838.838 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:23:53,872.872 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:23:54,005.005 INFO    ] No existing commands found in stream
[2026-06-27 21:23:59,037.037 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:23:59,040.040 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-27 21:24:01,682.682 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 21:24:01,684.684 INFO    ] Checking for system updates...
[2026-06-27 21:24:01,711.711 INFO    ] 200
[2026-06-27 21:24:01,713.713 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:24:01,755.755 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:24:01,757.757 INFO    ] No update needed
[2026-06-27 21:24:01,758.758 INFO    ] Checking for camera pi updates...
[2026-06-27 21:24:01,783.783 INFO    ] 200
[2026-06-27 21:24:01,785.785 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:24:01,821.821 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:24:01,933.933 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:24:01,935.935 INFO    ] No camera update needed
[2026-06-27 21:24:01,937.937 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:24:01,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:24:01,943.943 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:24:01,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:24:03,979.979 INFO    ] ================================================
[2026-06-27 21:24:04,995.995 INFO    ] Launching Daemon at Sat Jun 27 21:24:03 IST 2026
[2026-06-27 21:24:04,005.005 INFO    ] ================================================
[2026-06-27 21:24:04,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:24:04
[2026-06-27 21:24:04,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:24:04,861.861 INFO    ] Initializing speech engine...
[2026-06-27 21:24:04,870.870 INFO    ] 2026-06-27 21:24:04
[2026-06-27 21:24:05,103.103 INFO    ] 2026-06-27 21:24:05
[2026-06-27 21:24:05,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:24:05,315.315 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:24:05,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:24:05,453.453 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:24:05,512.512 INFO    ] time= 27/06/2026 21:24:05
[2026-06-27 21:24:05,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:24:05,563.563 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:24:05,630.630 INFO    ] No existing commands found in stream
[2026-06-27 21:24:10,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:24:10,657.657 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-27 21:24:12,562.562 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 21:24:12,564.564 INFO    ] Checking for system updates...
[2026-06-27 21:24:12,585.585 INFO    ] 200
[2026-06-27 21:24:12,587.587 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:24:12,617.617 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:24:12,618.618 INFO    ] No update needed
[2026-06-27 21:24:12,619.619 INFO    ] Checking for camera pi updates...
[2026-06-27 21:24:12,640.640 INFO    ] 200
[2026-06-27 21:24:12,642.642 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:24:12,667.667 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:24:12,712.712 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:24:12,714.714 INFO    ] No camera update needed
[2026-06-27 21:24:12,716.716 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:24:12,717.717 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:24:12,721.721 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:24:12,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:24:14,764.764 INFO    ] ================================================
[2026-06-27 21:24:14,779.779 INFO    ] Launching Daemon at Sat Jun 27 21:24:14 IST 2026
[2026-06-27 21:24:14,789.789 INFO    ] ================================================
[2026-06-27 21:24:15,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:24:15
[2026-06-27 21:24:15,432.432 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:24:15,564.564 INFO    ] Initializing speech engine...
[2026-06-27 21:24:15,576.576 INFO    ] 2026-06-27 21:24:15
[2026-06-27 21:24:15,783.783 INFO    ] 2026-06-27 21:24:15
[2026-06-27 21:24:15,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:24:15,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:24:16,006.006 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:24:16,136.136 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:24:16,200.200 INFO    ] time= 27/06/2026 21:24:16
[2026-06-27 21:24:16,227.227 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:24:16,233.233 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:24:16,300.300 INFO    ] No existing commands found in stream
[2026-06-27 21:24:21,309.309 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:24:21,312.312 INFO    ] Waiting 1.37 seconds before fallback handling...
[2026-06-27 21:24:23,088.088 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 21:24:23,090.090 INFO    ] Checking for system updates...
[2026-06-27 21:24:23,111.111 INFO    ] 200
[2026-06-27 21:24:23,112.112 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:24:23,147.147 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:24:23,148.148 INFO    ] No update needed
[2026-06-27 21:24:23,150.150 INFO    ] Checking for camera pi updates...
[2026-06-27 21:24:23,169.169 INFO    ] 200
[2026-06-27 21:24:23,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:24:23,196.196 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:24:23,244.244 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:24:23,246.246 INFO    ] No camera update needed
[2026-06-27 21:24:23,247.247 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:24:23,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:24:23,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:24:23,254.254 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:24:25,297.297 INFO    ] ================================================
[2026-06-27 21:24:25,312.312 INFO    ] Launching Daemon at Sat Jun 27 21:24:25 IST 2026
[2026-06-27 21:24:25,322.322 INFO    ] ================================================
[2026-06-27 21:24:25,663.663 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:24:25
[2026-06-27 21:24:25,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:24:26,104.104 INFO    ] Initializing speech engine...
[2026-06-27 21:24:26,108.108 INFO    ] 2026-06-27 21:24:26
[2026-06-27 21:24:26,325.325 INFO    ] 2026-06-27 21:24:26
[2026-06-27 21:24:26,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:24:26,535.535 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:24:26,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:24:26,673.673 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:24:26,734.734 INFO    ] time= 27/06/2026 21:24:26
[2026-06-27 21:24:26,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:24:26,772.772 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:24:26,838.838 INFO    ] No existing commands found in stream
[2026-06-27 21:24:31,851.851 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:24:31,853.853 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-27 21:24:33,092.092 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 21:24:33,094.094 INFO    ] Checking for system updates...
[2026-06-27 21:24:33,116.116 INFO    ] 200
[2026-06-27 21:24:33,117.117 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:24:33,148.148 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:24:33,149.149 INFO    ] No update needed
[2026-06-27 21:24:33,150.150 INFO    ] Checking for camera pi updates...
[2026-06-27 21:24:33,170.170 INFO    ] 200
[2026-06-27 21:24:33,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:24:33,195.195 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:24:33,222.222 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:24:33,223.223 INFO    ] No camera update needed
[2026-06-27 21:24:33,225.225 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:24:33,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:24:33,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:24:33,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:24:35,270.270 INFO    ] ================================================
[2026-06-27 21:24:35,285.285 INFO    ] Launching Daemon at Sat Jun 27 21:24:35 IST 2026
[2026-06-27 21:24:35,296.296 INFO    ] ================================================
[2026-06-27 21:24:35,649.649 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:24:35
[2026-06-27 21:24:35,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:24:36,097.097 INFO    ] Initializing speech engine...
[2026-06-27 21:24:36,109.109 INFO    ] 2026-06-27 21:24:36
[2026-06-27 21:24:36,316.316 INFO    ] 2026-06-27 21:24:36
[2026-06-27 21:24:36,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:24:36,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:24:36,532.532 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:24:36,719.719 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:24:36,748.748 INFO    ] time= 27/06/2026 21:24:36
[2026-06-27 21:24:36,759.759 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:24:36,765.765 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:24:36,832.832 INFO    ] No existing commands found in stream
[2026-06-27 21:24:41,846.846 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:24:41,849.849 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-27 21:24:45,547.547 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 21:24:45,548.548 INFO    ] Checking for system updates...
[2026-06-27 21:24:45,570.570 INFO    ] 200
[2026-06-27 21:24:45,571.571 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:24:45,602.602 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:24:45,604.604 INFO    ] No update needed
[2026-06-27 21:24:45,605.605 INFO    ] Checking for camera pi updates...
[2026-06-27 21:24:45,625.625 INFO    ] 200
[2026-06-27 21:24:45,627.627 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:24:45,651.651 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:24:45,696.696 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:24:45,698.698 INFO    ] No camera update needed
[2026-06-27 21:24:45,699.699 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:24:45,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:24:45,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:24:45,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:24:47,746.746 INFO    ] ================================================
[2026-06-27 21:24:47,761.761 INFO    ] Launching Daemon at Sat Jun 27 21:24:47 IST 2026
[2026-06-27 21:24:47,772.772 INFO    ] ================================================
[2026-06-27 21:24:48,109.109 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:24:48
[2026-06-27 21:24:48,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:24:48,558.558 INFO    ] Initializing speech engine...
[2026-06-27 21:24:48,568.568 INFO    ] 2026-06-27 21:24:48
[2026-06-27 21:24:48,772.772 INFO    ] 2026-06-27 21:24:48
[2026-06-27 21:24:48,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:24:49,092.092 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:24:49,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:24:49,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:24:49,304.304 INFO    ] time= 27/06/2026 21:24:49
[2026-06-27 21:24:49,330.330 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:24:49,333.333 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:24:49,568.568 INFO    ] No existing commands found in stream
[2026-06-27 21:24:54,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:24:54,581.581 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-27 21:24:56,479.479 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 21:24:56,481.481 INFO    ] Checking for system updates...
[2026-06-27 21:24:56,502.502 INFO    ] 200
[2026-06-27 21:24:56,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:24:56,536.536 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:24:56,538.538 INFO    ] No update needed
[2026-06-27 21:24:56,539.539 INFO    ] Checking for camera pi updates...
[2026-06-27 21:24:56,559.559 INFO    ] 200
[2026-06-27 21:24:56,561.561 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:24:56,584.584 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:24:56,624.624 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:24:56,626.626 INFO    ] No camera update needed
[2026-06-27 21:24:56,628.628 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:24:56,629.629 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:24:56,632.632 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:24:56,635.635 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:24:58,675.675 INFO    ] ================================================
[2026-06-27 21:24:58,690.690 INFO    ] Launching Daemon at Sat Jun 27 21:24:58 IST 2026
[2026-06-27 21:24:58,701.701 INFO    ] ================================================
[2026-06-27 21:24:59,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:24:59
[2026-06-27 21:24:59,342.342 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:24:59,479.479 INFO    ] Initializing speech engine...
[2026-06-27 21:24:59,491.491 INFO    ] 2026-06-27 21:24:59
[2026-06-27 21:24:59,696.696 INFO    ] 2026-06-27 21:24:59
[2026-06-27 21:24:59,725.725 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:24:59,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:24:59,922.922 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:25:00,079.079 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:25:00,123.123 INFO    ] time= 27/06/2026 21:25:00
[2026-06-27 21:25:00,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:25:00,151.151 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:25:00,219.219 INFO    ] No existing commands found in stream
[2026-06-27 21:25:05,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:25:05,236.236 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-27 21:25:06,589.589 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 21:25:06,591.591 INFO    ] Checking for system updates...
[2026-06-27 21:25:06,612.612 INFO    ] 200
[2026-06-27 21:25:06,614.614 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:25:06,644.644 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:25:06,645.645 INFO    ] No update needed
[2026-06-27 21:25:06,647.647 INFO    ] Checking for camera pi updates...
[2026-06-27 21:25:06,667.667 INFO    ] 200
[2026-06-27 21:25:06,668.668 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:25:06,693.693 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:25:06,740.740 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:25:06,741.741 INFO    ] No camera update needed
[2026-06-27 21:25:06,743.743 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:25:06,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:25:06,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:25:06,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:25:08,789.789 INFO    ] ================================================
[2026-06-27 21:25:08,804.804 INFO    ] Launching Daemon at Sat Jun 27 21:25:08 IST 2026
[2026-06-27 21:25:08,815.815 INFO    ] ================================================
[2026-06-27 21:25:09,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:25:09
[2026-06-27 21:25:09,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:25:09,619.619 INFO    ] Initializing speech engine...
[2026-06-27 21:25:09,631.631 INFO    ] 2026-06-27 21:25:09
[2026-06-27 21:25:09,837.837 INFO    ] 2026-06-27 21:25:09
[2026-06-27 21:25:09,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:25:10,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:25:10,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:25:10,180.180 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:25:10,236.236 INFO    ] time= 27/06/2026 21:25:10
[2026-06-27 21:25:10,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:25:10,280.280 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:25:10,349.349 INFO    ] No existing commands found in stream
[2026-06-27 21:25:15,360.360 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:25:15,363.363 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-27 21:25:17,266.266 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 21:25:17,267.267 INFO    ] Checking for system updates...
[2026-06-27 21:25:17,289.289 INFO    ] 200
[2026-06-27 21:25:17,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:25:17,320.320 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:25:17,321.321 INFO    ] No update needed
[2026-06-27 21:25:17,323.323 INFO    ] Checking for camera pi updates...
[2026-06-27 21:25:17,343.343 INFO    ] 200
[2026-06-27 21:25:17,345.345 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:25:17,368.368 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:25:17,410.410 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:25:17,411.411 INFO    ] No camera update needed
[2026-06-27 21:25:17,412.412 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:25:17,414.414 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:25:17,417.417 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:25:17,419.419 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:25:19,460.460 INFO    ] ================================================
[2026-06-27 21:25:19,475.475 INFO    ] Launching Daemon at Sat Jun 27 21:25:19 IST 2026
[2026-06-27 21:25:19,486.486 INFO    ] ================================================
[2026-06-27 21:25:19,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:25:19
[2026-06-27 21:25:20,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:25:20,294.294 INFO    ] Initializing speech engine...
[2026-06-27 21:25:20,297.297 INFO    ] 2026-06-27 21:25:20
[2026-06-27 21:25:20,513.513 INFO    ] 2026-06-27 21:25:20
[2026-06-27 21:25:20,541.541 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:25:20,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:25:20,763.763 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:25:20,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:25:20,964.964 INFO    ] time= 27/06/2026 21:25:20
[2026-06-27 21:25:20,987.987 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:25:21,009.009 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:25:21,086.086 INFO    ] No existing commands found in stream
[2026-06-27 21:25:26,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:25:26,098.098 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-27 21:25:30,067.067 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 21:25:30,069.069 INFO    ] Checking for system updates...
[2026-06-27 21:25:30,105.105 INFO    ] 200
[2026-06-27 21:25:30,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:25:30,166.166 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:25:30,168.168 INFO    ] No update needed
[2026-06-27 21:25:30,169.169 INFO    ] Checking for camera pi updates...
[2026-06-27 21:25:30,189.189 INFO    ] 200
[2026-06-27 21:25:30,191.191 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:25:30,214.214 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:25:30,252.252 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:25:30,253.253 INFO    ] No camera update needed
[2026-06-27 21:25:30,254.254 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:25:30,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:25:30,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:25:30,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:25:32,293.293 INFO    ] ================================================
[2026-06-27 21:25:32,303.303 INFO    ] Launching Daemon at Sat Jun 27 21:25:32 IST 2026
[2026-06-27 21:25:32,309.309 INFO    ] ================================================
[2026-06-27 21:25:32,681.681 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:25:32
[2026-06-27 21:25:32,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:25:33,132.132 INFO    ] Initializing speech engine...
[2026-06-27 21:25:33,141.141 INFO    ] 2026-06-27 21:25:33
[2026-06-27 21:25:33,348.348 INFO    ] 2026-06-27 21:25:33
[2026-06-27 21:25:33,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:25:33,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:25:33,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:25:33,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:25:33,758.758 INFO    ] time= 27/06/2026 21:25:33
[2026-06-27 21:25:33,793.793 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:25:33,804.804 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:25:33,874.874 INFO    ] No existing commands found in stream
[2026-06-27 21:25:38,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:25:38,887.887 INFO    ] Waiting 3.55 seconds before fallback handling...
[2026-06-27 21:25:42,846.846 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 21:25:42,847.847 INFO    ] Checking for system updates...
[2026-06-27 21:25:42,869.869 INFO    ] 200
[2026-06-27 21:25:42,870.870 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:25:42,901.901 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:25:42,902.902 INFO    ] No update needed
[2026-06-27 21:25:42,904.904 INFO    ] Checking for camera pi updates...
[2026-06-27 21:25:42,926.926 INFO    ] 200
[2026-06-27 21:25:42,927.927 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:25:42,952.952 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:25:43,099.099 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:25:43,100.100 INFO    ] No camera update needed
[2026-06-27 21:25:43,102.102 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:25:43,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:25:43,106.106 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:25:43,109.109 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:25:45,148.148 INFO    ] ================================================
[2026-06-27 21:25:45,163.163 INFO    ] Launching Daemon at Sat Jun 27 21:25:45 IST 2026
[2026-06-27 21:25:45,174.174 INFO    ] ================================================
[2026-06-27 21:25:45,569.569 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:25:45
[2026-06-27 21:25:45,906.906 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:25:46,044.044 INFO    ] Initializing speech engine...
[2026-06-27 21:25:46,053.053 INFO    ] 2026-06-27 21:25:46
[2026-06-27 21:25:46,272.272 INFO    ] 2026-06-27 21:25:46
[2026-06-27 21:25:46,300.300 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:25:46,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:25:46,495.495 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:25:46,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:25:46,694.694 INFO    ] time= 27/06/2026 21:25:46
[2026-06-27 21:25:46,718.718 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:25:46,723.723 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:25:46,790.790 INFO    ] No existing commands found in stream
[2026-06-27 21:25:51,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:25:51,804.804 INFO    ] Waiting 2.44 seconds before fallback handling...
[2026-06-27 21:25:54,632.632 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 21:25:54,634.634 INFO    ] Checking for system updates...
[2026-06-27 21:25:54,655.655 INFO    ] 200
[2026-06-27 21:25:54,656.656 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:25:54,689.689 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:25:54,691.691 INFO    ] No update needed
[2026-06-27 21:25:54,692.692 INFO    ] Checking for camera pi updates...
[2026-06-27 21:25:54,713.713 INFO    ] 200
[2026-06-27 21:25:54,715.715 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:25:54,741.741 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:25:54,771.771 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:25:54,773.773 INFO    ] No camera update needed
[2026-06-27 21:25:54,774.774 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:25:54,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:25:54,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:25:54,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:25:56,819.819 INFO    ] ================================================
[2026-06-27 21:25:56,835.835 INFO    ] Launching Daemon at Sat Jun 27 21:25:56 IST 2026
[2026-06-27 21:25:56,845.845 INFO    ] ================================================
[2026-06-27 21:25:57,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:25:57
[2026-06-27 21:25:57,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:25:57,674.674 INFO    ] Initializing speech engine...
[2026-06-27 21:25:57,679.679 INFO    ] 2026-06-27 21:25:57
[2026-06-27 21:25:57,888.888 INFO    ] 2026-06-27 21:25:57
[2026-06-27 21:25:57,918.918 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:25:58,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:25:58,238.238 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:25:58,403.403 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:25:58,407.407 INFO    ] time= 27/06/2026 21:25:58
[2026-06-27 21:25:58,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:25:58,434.434 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:25:58,532.532 INFO    ] No existing commands found in stream
[2026-06-27 21:26:03,544.544 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:26:03,547.547 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-27 21:26:07,548.548 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 21:26:07,549.549 INFO    ] Checking for system updates...
[2026-06-27 21:26:07,570.570 INFO    ] 200
[2026-06-27 21:26:07,572.572 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:26:07,603.603 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:26:07,605.605 INFO    ] No update needed
[2026-06-27 21:26:07,606.606 INFO    ] Checking for camera pi updates...
[2026-06-27 21:26:07,627.627 INFO    ] 200
[2026-06-27 21:26:07,629.629 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:26:07,651.651 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:26:07,692.692 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:26:07,694.694 INFO    ] No camera update needed
[2026-06-27 21:26:07,695.695 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:26:07,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:26:07,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:26:07,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:26:09,740.740 INFO    ] ================================================
[2026-06-27 21:26:09,756.756 INFO    ] Launching Daemon at Sat Jun 27 21:26:09 IST 2026
[2026-06-27 21:26:09,767.767 INFO    ] ================================================
[2026-06-27 21:26:10,136.136 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:26:10
[2026-06-27 21:26:10,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:26:10,585.585 INFO    ] Initializing speech engine...
[2026-06-27 21:26:10,594.594 INFO    ] 2026-06-27 21:26:10
[2026-06-27 21:26:10,806.806 INFO    ] 2026-06-27 21:26:10
[2026-06-27 21:26:10,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:26:10,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:26:11,021.021 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:26:11,159.159 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:26:11,223.223 INFO    ] time= 27/06/2026 21:26:11
[2026-06-27 21:26:11,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:26:11,256.256 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:26:11,324.324 INFO    ] No existing commands found in stream
[2026-06-27 21:26:16,333.333 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:26:16,336.336 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-27 21:26:20,524.524 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:26:20,526.526 INFO    ] Checking for system updates...
[2026-06-27 21:26:20,548.548 INFO    ] 200
[2026-06-27 21:26:20,549.549 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:26:20,583.583 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:26:20,584.584 INFO    ] No update needed
[2026-06-27 21:26:20,585.585 INFO    ] Checking for camera pi updates...
[2026-06-27 21:26:20,605.605 INFO    ] 200
[2026-06-27 21:26:20,606.606 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:26:20,631.631 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:26:20,681.681 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:26:20,682.682 INFO    ] No camera update needed
[2026-06-27 21:26:20,684.684 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:26:20,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:26:20,688.688 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:26:20,691.691 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:26:22,729.729 INFO    ] ================================================
[2026-06-27 21:26:22,745.745 INFO    ] Launching Daemon at Sat Jun 27 21:26:22 IST 2026
[2026-06-27 21:26:22,756.756 INFO    ] ================================================
[2026-06-27 21:26:23,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:26:23
[2026-06-27 21:26:23,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:26:23,603.603 INFO    ] Initializing speech engine...
[2026-06-27 21:26:23,611.611 INFO    ] 2026-06-27 21:26:23
[2026-06-27 21:26:23,828.828 INFO    ] 2026-06-27 21:26:23
[2026-06-27 21:26:23,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:26:24,064.064 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:26:24,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:26:24,247.247 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:26:24,269.269 INFO    ] time= 27/06/2026 21:26:24
[2026-06-27 21:26:24,275.275 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:26:24,276.276 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:26:24,368.368 INFO    ] No existing commands found in stream
[2026-06-27 21:26:29,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:26:29,386.386 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-27 21:26:31,168.168 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 21:26:31,169.169 INFO    ] Checking for system updates...
[2026-06-27 21:26:31,190.190 INFO    ] 200
[2026-06-27 21:26:31,191.191 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:26:31,224.224 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:26:31,225.225 INFO    ] No update needed
[2026-06-27 21:26:31,227.227 INFO    ] Checking for camera pi updates...
[2026-06-27 21:26:31,246.246 INFO    ] 200
[2026-06-27 21:26:31,247.247 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:26:31,273.273 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:26:31,320.320 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:26:31,322.322 INFO    ] No camera update needed
[2026-06-27 21:26:31,323.323 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:26:31,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:26:31,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:26:31,330.330 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:26:33,363.363 INFO    ] ================================================
[2026-06-27 21:26:33,378.378 INFO    ] Launching Daemon at Sat Jun 27 21:26:33 IST 2026
[2026-06-27 21:26:33,389.389 INFO    ] ================================================
[2026-06-27 21:26:33,737.737 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:26:33
[2026-06-27 21:26:34,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:26:34,204.204 INFO    ] Initializing speech engine...
[2026-06-27 21:26:34,209.209 INFO    ] 2026-06-27 21:26:34
[2026-06-27 21:26:34,416.416 INFO    ] 2026-06-27 21:26:34
[2026-06-27 21:26:34,445.445 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:26:34,567.567 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:26:34,629.629 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:26:34,767.767 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:26:34,821.821 INFO    ] time= 27/06/2026 21:26:34
[2026-06-27 21:26:34,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:26:34,860.860 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:26:34,935.935 INFO    ] No existing commands found in stream
[2026-06-27 21:26:39,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:26:39,947.947 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-27 21:26:41,731.731 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 21:26:41,733.733 INFO    ] Checking for system updates...
[2026-06-27 21:26:41,754.754 INFO    ] 200
[2026-06-27 21:26:41,755.755 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:26:41,789.789 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:26:41,790.790 INFO    ] No update needed
[2026-06-27 21:26:41,792.792 INFO    ] Checking for camera pi updates...
[2026-06-27 21:26:41,814.814 INFO    ] 200
[2026-06-27 21:26:41,816.816 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:26:41,841.841 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:26:41,895.895 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:26:41,897.897 INFO    ] No camera update needed
[2026-06-27 21:26:41,898.898 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:26:41,900.900 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:26:41,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:26:41,915.915 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:26:43,954.954 INFO    ] ================================================
[2026-06-27 21:26:43,970.970 INFO    ] Launching Daemon at Sat Jun 27 21:26:43 IST 2026
[2026-06-27 21:26:43,981.981 INFO    ] ================================================
[2026-06-27 21:26:44,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:26:44
[2026-06-27 21:26:44,630.630 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:26:44,767.767 INFO    ] Initializing speech engine...
[2026-06-27 21:26:44,777.777 INFO    ] 2026-06-27 21:26:44
[2026-06-27 21:26:44,982.982 INFO    ] 2026-06-27 21:26:44
[2026-06-27 21:26:45,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:26:45,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:26:45,197.197 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:26:45,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:26:45,385.385 INFO    ] time= 27/06/2026 21:26:45
[2026-06-27 21:26:45,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:26:45,428.428 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:26:45,500.500 INFO    ] No existing commands found in stream
[2026-06-27 21:26:50,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:26:50,512.512 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-27 21:26:51,874.874 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 21:26:51,876.876 INFO    ] Checking for system updates...
[2026-06-27 21:26:51,898.898 INFO    ] 200
[2026-06-27 21:26:51,899.899 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:26:51,929.929 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:26:51,930.930 INFO    ] No update needed
[2026-06-27 21:26:51,932.932 INFO    ] Checking for camera pi updates...
[2026-06-27 21:26:51,952.952 INFO    ] 200
[2026-06-27 21:26:51,954.954 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:26:51,980.980 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:26:52,023.023 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:26:52,024.024 INFO    ] No camera update needed
[2026-06-27 21:26:52,026.026 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:26:52,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:26:52,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:26:52,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:26:54,073.073 INFO    ] ================================================
[2026-06-27 21:26:54,089.089 INFO    ] Launching Daemon at Sat Jun 27 21:26:54 IST 2026
[2026-06-27 21:26:54,100.100 INFO    ] ================================================
[2026-06-27 21:26:54,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:26:54
[2026-06-27 21:26:54,783.783 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:26:54,928.928 INFO    ] Initializing speech engine...
[2026-06-27 21:26:54,934.934 INFO    ] 2026-06-27 21:26:54
[2026-06-27 21:26:55,150.150 INFO    ] 2026-06-27 21:26:55
[2026-06-27 21:26:55,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:26:55,381.381 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:26:55,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:26:55,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:26:55,581.581 INFO    ] time= 27/06/2026 21:26:55
[2026-06-27 21:26:55,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:26:55,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:26:55,708.708 INFO    ] No existing commands found in stream
[2026-06-27 21:27:00,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:27:00,722.722 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-27 21:27:02,730.730 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:27:02,733.733 INFO    ] Checking for system updates...
[2026-06-27 21:27:02,772.772 INFO    ] 200
[2026-06-27 21:27:02,775.775 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:27:02,818.818 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:27:02,819.819 INFO    ] No update needed
[2026-06-27 21:27:02,820.820 INFO    ] Checking for camera pi updates...
[2026-06-27 21:27:02,842.842 INFO    ] 200
[2026-06-27 21:27:02,843.843 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:27:02,867.867 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:27:02,913.913 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:27:02,914.914 INFO    ] No camera update needed
[2026-06-27 21:27:02,916.916 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:27:02,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:27:02,920.920 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:27:02,923.923 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:27:04,961.961 INFO    ] ================================================
[2026-06-27 21:27:04,976.976 INFO    ] Launching Daemon at Sat Jun 27 21:27:04 IST 2026
[2026-06-27 21:27:04,986.986 INFO    ] ================================================
[2026-06-27 21:27:05,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:27:05
[2026-06-27 21:27:05,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:27:05,795.795 INFO    ] Initializing speech engine...
[2026-06-27 21:27:05,803.803 INFO    ] 2026-06-27 21:27:05
[2026-06-27 21:27:06,018.018 INFO    ] 2026-06-27 21:27:05
[2026-06-27 21:27:06,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:27:06,234.234 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:27:06,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:27:06,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:27:06,442.442 INFO    ] time= 27/06/2026 21:27:06
[2026-06-27 21:27:06,464.464 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:27:06,471.471 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:27:06,538.538 INFO    ] No existing commands found in stream
[2026-06-27 21:27:11,552.552 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:27:11,556.556 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-27 21:27:13,741.741 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:27:13,743.743 INFO    ] Checking for system updates...
[2026-06-27 21:27:13,766.766 INFO    ] 200
[2026-06-27 21:27:13,767.767 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:27:13,800.800 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:27:13,802.802 INFO    ] No update needed
[2026-06-27 21:27:13,803.803 INFO    ] Checking for camera pi updates...
[2026-06-27 21:27:13,825.825 INFO    ] 200
[2026-06-27 21:27:13,826.826 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:27:13,853.853 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:27:13,891.891 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:27:13,892.892 INFO    ] No camera update needed
[2026-06-27 21:27:13,894.894 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:27:13,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:27:13,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:27:13,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:27:15,941.941 INFO    ] ================================================
[2026-06-27 21:27:15,957.957 INFO    ] Launching Daemon at Sat Jun 27 21:27:15 IST 2026
[2026-06-27 21:27:15,968.968 INFO    ] ================================================
[2026-06-27 21:27:16,313.313 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:27:16
[2026-06-27 21:27:16,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:27:16,769.769 INFO    ] Initializing speech engine...
[2026-06-27 21:27:16,779.779 INFO    ] 2026-06-27 21:27:16
[2026-06-27 21:27:16,983.983 INFO    ] 2026-06-27 21:27:16
[2026-06-27 21:27:17,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:27:17,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:27:17,196.196 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:27:17,328.328 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:27:17,384.384 INFO    ] time= 27/06/2026 21:27:17
[2026-06-27 21:27:17,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:27:17,433.433 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:27:17,500.500 INFO    ] No existing commands found in stream
[2026-06-27 21:27:22,532.532 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:27:22,535.535 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-27 21:27:26,096.096 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 21:27:26,098.098 INFO    ] Checking for system updates...
[2026-06-27 21:27:26,120.120 INFO    ] 200
[2026-06-27 21:27:26,122.122 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:27:26,155.155 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:27:26,156.156 INFO    ] No update needed
[2026-06-27 21:27:26,158.158 INFO    ] Checking for camera pi updates...
[2026-06-27 21:27:26,177.177 INFO    ] 200
[2026-06-27 21:27:26,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:27:26,202.202 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:27:26,246.246 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:27:26,247.247 INFO    ] No camera update needed
[2026-06-27 21:27:26,248.248 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:27:26,250.250 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:27:26,253.253 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:27:26,256.256 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:27:28,295.295 INFO    ] ================================================
[2026-06-27 21:27:28,311.311 INFO    ] Launching Daemon at Sat Jun 27 21:27:28 IST 2026
[2026-06-27 21:27:28,322.322 INFO    ] ================================================
[2026-06-27 21:27:28,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:27:28
[2026-06-27 21:27:28,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:27:29,121.121 INFO    ] Initializing speech engine...
[2026-06-27 21:27:29,125.125 INFO    ] 2026-06-27 21:27:29
[2026-06-27 21:27:29,330.330 INFO    ] 2026-06-27 21:27:29
[2026-06-27 21:27:29,359.359 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:27:29,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:27:29,553.553 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:27:29,699.699 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:27:29,752.752 INFO    ] time= 27/06/2026 21:27:29
[2026-06-27 21:27:29,775.775 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:27:29,781.781 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:27:29,848.848 INFO    ] No existing commands found in stream
[2026-06-27 21:27:34,858.858 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:27:34,861.861 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-27 21:27:38,322.322 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:27:38,324.324 INFO    ] Checking for system updates...
[2026-06-27 21:27:38,345.345 INFO    ] 200
[2026-06-27 21:27:38,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:27:38,377.377 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:27:38,379.379 INFO    ] No update needed
[2026-06-27 21:27:38,380.380 INFO    ] Checking for camera pi updates...
[2026-06-27 21:27:38,400.400 INFO    ] 200
[2026-06-27 21:27:38,402.402 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:27:38,425.425 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:27:38,479.479 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:27:38,480.480 INFO    ] No camera update needed
[2026-06-27 21:27:38,482.482 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:27:38,483.483 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:27:38,487.487 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:27:38,490.490 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:27:40,529.529 INFO    ] ================================================
[2026-06-27 21:27:40,544.544 INFO    ] Launching Daemon at Sat Jun 27 21:27:40 IST 2026
[2026-06-27 21:27:40,555.555 INFO    ] ================================================
[2026-06-27 21:27:40,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:27:40
[2026-06-27 21:27:41,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:27:41,347.347 INFO    ] Initializing speech engine...
[2026-06-27 21:27:41,355.355 INFO    ] 2026-06-27 21:27:41
[2026-06-27 21:27:41,569.569 INFO    ] 2026-06-27 21:27:41
[2026-06-27 21:27:41,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:27:41,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:27:41,912.912 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:27:42,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:27:42,194.194 INFO    ] time= 27/06/2026 21:27:42
[2026-06-27 21:27:42,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:27:42,201.201 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:27:42,361.361 INFO    ] No existing commands found in stream
[2026-06-27 21:27:47,372.372 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:27:47,375.375 INFO    ] Waiting 2.87 seconds before fallback handling...
[2026-06-27 21:27:50,886.886 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 21:27:50,887.887 INFO    ] Checking for system updates...
[2026-06-27 21:27:50,908.908 INFO    ] 200
[2026-06-27 21:27:50,909.909 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:27:50,942.942 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:27:50,944.944 INFO    ] No update needed
[2026-06-27 21:27:50,945.945 INFO    ] Checking for camera pi updates...
[2026-06-27 21:27:50,965.965 INFO    ] 200
[2026-06-27 21:27:50,966.966 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:27:50,991.991 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:27:51,133.133 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:27:51,135.135 INFO    ] No camera update needed
[2026-06-27 21:27:51,136.136 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:27:51,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:27:51,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:27:51,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:27:53,189.189 INFO    ] ================================================
[2026-06-27 21:27:53,204.204 INFO    ] Launching Daemon at Sat Jun 27 21:27:53 IST 2026
[2026-06-27 21:27:53,215.215 INFO    ] ================================================
[2026-06-27 21:27:53,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:27:53
[2026-06-27 21:27:53,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:27:54,020.020 INFO    ] Initializing speech engine...
[2026-06-27 21:27:54,033.033 INFO    ] 2026-06-27 21:27:54
[2026-06-27 21:27:54,238.238 INFO    ] 2026-06-27 21:27:54
[2026-06-27 21:27:54,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:27:54,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:27:54,463.463 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:27:54,591.591 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:27:54,659.659 INFO    ] time= 27/06/2026 21:27:54
[2026-06-27 21:27:54,682.682 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:27:54,688.688 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:27:54,761.761 INFO    ] No existing commands found in stream
[2026-06-27 21:27:59,789.789 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:27:59,792.792 INFO    ] Waiting 1.12 seconds before fallback handling...
[2026-06-27 21:28:01,304.304 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:28:01,305.305 INFO    ] Checking for system updates...
[2026-06-27 21:28:01,326.326 INFO    ] 200
[2026-06-27 21:28:01,328.328 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:28:01,358.358 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:28:01,359.359 INFO    ] No update needed
[2026-06-27 21:28:01,360.360 INFO    ] Checking for camera pi updates...
[2026-06-27 21:28:01,380.380 INFO    ] 200
[2026-06-27 21:28:01,381.381 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:28:01,406.406 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:28:01,452.452 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:28:01,453.453 INFO    ] No camera update needed
[2026-06-27 21:28:01,455.455 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:28:01,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:28:01,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:28:01,462.462 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:28:03,494.494 INFO    ] ================================================
[2026-06-27 21:28:03,509.509 INFO    ] Launching Daemon at Sat Jun 27 21:28:03 IST 2026
[2026-06-27 21:28:03,520.520 INFO    ] ================================================
[2026-06-27 21:28:03,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:28:03
[2026-06-27 21:28:04,187.187 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:28:04,332.332 INFO    ] Initializing speech engine...
[2026-06-27 21:28:04,336.336 INFO    ] 2026-06-27 21:28:04
[2026-06-27 21:28:04,538.538 INFO    ] 2026-06-27 21:28:04
[2026-06-27 21:28:04,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:28:04,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:28:04,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:28:04,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:28:04,953.953 INFO    ] time= 27/06/2026 21:28:04
[2026-06-27 21:28:04,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:28:04,982.982 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:28:05,049.049 INFO    ] No existing commands found in stream
[2026-06-27 21:28:10,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:28:10,061.061 INFO    ] Waiting 1.24 seconds before fallback handling...
[2026-06-27 21:28:11,737.737 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 21:28:11,739.739 INFO    ] Checking for system updates...
[2026-06-27 21:28:11,759.759 INFO    ] 200
[2026-06-27 21:28:11,761.761 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:28:11,792.792 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:28:11,793.793 INFO    ] No update needed
[2026-06-27 21:28:11,795.795 INFO    ] Checking for camera pi updates...
[2026-06-27 21:28:11,815.815 INFO    ] 200
[2026-06-27 21:28:11,816.816 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:28:11,841.841 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:28:11,884.884 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:28:11,885.885 INFO    ] No camera update needed
[2026-06-27 21:28:11,887.887 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:28:11,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:28:11,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:28:11,894.894 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:28:13,935.935 INFO    ] ================================================
[2026-06-27 21:28:13,950.950 INFO    ] Launching Daemon at Sat Jun 27 21:28:13 IST 2026
[2026-06-27 21:28:13,962.962 INFO    ] ================================================
[2026-06-27 21:28:14,315.315 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:28:14
[2026-06-27 21:28:14,629.629 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:28:14,773.773 INFO    ] Initializing speech engine...
[2026-06-27 21:28:14,778.778 INFO    ] 2026-06-27 21:28:14
[2026-06-27 21:28:14,981.981 INFO    ] 2026-06-27 21:28:14
[2026-06-27 21:28:15,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:28:15,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:28:15,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:28:15,353.353 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:28:15,413.413 INFO    ] time= 27/06/2026 21:28:15
[2026-06-27 21:28:15,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:28:15,435.435 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:28:15,502.502 INFO    ] No existing commands found in stream
[2026-06-27 21:28:20,511.511 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:28:20,514.514 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-27 21:28:24,666.666 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 21:28:24,667.667 INFO    ] Checking for system updates...
[2026-06-27 21:28:24,690.690 INFO    ] 200
[2026-06-27 21:28:24,691.691 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:28:24,723.723 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:28:24,724.724 INFO    ] No update needed
[2026-06-27 21:28:24,726.726 INFO    ] Checking for camera pi updates...
[2026-06-27 21:28:24,748.748 INFO    ] 200
[2026-06-27 21:28:24,749.749 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:28:24,772.772 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:28:24,814.814 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:28:24,815.815 INFO    ] No camera update needed
[2026-06-27 21:28:24,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:28:24,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:28:24,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:28:24,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:28:26,864.864 INFO    ] ================================================
[2026-06-27 21:28:26,879.879 INFO    ] Launching Daemon at Sat Jun 27 21:28:26 IST 2026
[2026-06-27 21:28:26,890.890 INFO    ] ================================================
[2026-06-27 21:28:27,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:28:27
[2026-06-27 21:28:27,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:28:27,709.709 INFO    ] Initializing speech engine...
[2026-06-27 21:28:27,718.718 INFO    ] 2026-06-27 21:28:27
[2026-06-27 21:28:27,924.924 INFO    ] 2026-06-27 21:28:27
[2026-06-27 21:28:27,954.954 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:28:28,136.136 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:28:28,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:28:28,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:28:28,340.340 INFO    ] time= 27/06/2026 21:28:28
[2026-06-27 21:28:28,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:28:28,370.370 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:28:28,460.460 INFO    ] No existing commands found in stream
[2026-06-27 21:28:33,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:28:33,487.487 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-27 21:28:37,356.356 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 21:28:37,358.358 INFO    ] Checking for system updates...
[2026-06-27 21:28:37,380.380 INFO    ] 200
[2026-06-27 21:28:37,381.381 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:28:37,412.412 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:28:37,413.413 INFO    ] No update needed
[2026-06-27 21:28:37,415.415 INFO    ] Checking for camera pi updates...
[2026-06-27 21:28:37,435.435 INFO    ] 200
[2026-06-27 21:28:37,436.436 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:28:37,460.460 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:28:37,507.507 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:28:37,509.509 INFO    ] No camera update needed
[2026-06-27 21:28:37,510.510 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:28:37,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:28:37,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:28:37,518.518 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:28:39,557.557 INFO    ] ================================================
[2026-06-27 21:28:39,573.573 INFO    ] Launching Daemon at Sat Jun 27 21:28:39 IST 2026
[2026-06-27 21:28:39,584.584 INFO    ] ================================================
[2026-06-27 21:28:39,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:28:39
[2026-06-27 21:28:40,245.245 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:28:40,390.390 INFO    ] Initializing speech engine...
[2026-06-27 21:28:40,395.395 INFO    ] 2026-06-27 21:28:40
[2026-06-27 21:28:40,599.599 INFO    ] 2026-06-27 21:28:40
[2026-06-27 21:28:40,628.628 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:28:40,813.813 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:28:40,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:28:40,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:28:41,015.015 INFO    ] time= 27/06/2026 21:28:40
[2026-06-27 21:28:41,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:28:41,047.047 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:28:41,115.115 INFO    ] No existing commands found in stream
[2026-06-27 21:28:46,124.124 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:28:46,127.127 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-27 21:28:49,884.884 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 21:28:49,886.886 INFO    ] Checking for system updates...
[2026-06-27 21:28:49,908.908 INFO    ] 200
[2026-06-27 21:28:49,910.910 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:28:49,940.940 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:28:49,941.941 INFO    ] No update needed
[2026-06-27 21:28:49,942.942 INFO    ] Checking for camera pi updates...
[2026-06-27 21:28:49,963.963 INFO    ] 200
[2026-06-27 21:28:49,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:28:49,991.991 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:28:50,033.033 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:28:50,035.035 INFO    ] No camera update needed
[2026-06-27 21:28:50,036.036 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:28:50,037.037 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:28:50,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:28:50,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:28:52,086.086 INFO    ] ================================================
[2026-06-27 21:28:52,102.102 INFO    ] Launching Daemon at Sat Jun 27 21:28:52 IST 2026
[2026-06-27 21:28:52,112.112 INFO    ] ================================================
[2026-06-27 21:28:52,467.467 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:28:52
[2026-06-27 21:28:52,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:28:52,917.917 INFO    ] Initializing speech engine...
[2026-06-27 21:28:52,920.920 INFO    ] 2026-06-27 21:28:52
[2026-06-27 21:28:53,137.137 INFO    ] 2026-06-27 21:28:53
[2026-06-27 21:28:53,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:28:53,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:28:53,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:28:53,570.570 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:28:53,602.602 INFO    ] time= 27/06/2026 21:28:53
[2026-06-27 21:28:53,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:28:53,609.609 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:28:53,677.677 INFO    ] No existing commands found in stream
[2026-06-27 21:28:58,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:28:58,709.709 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-27 21:29:02,906.906 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 21:29:02,908.908 INFO    ] Checking for system updates...
[2026-06-27 21:29:02,928.928 INFO    ] 200
[2026-06-27 21:29:02,930.930 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:29:02,960.960 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:29:02,962.962 INFO    ] No update needed
[2026-06-27 21:29:02,963.963 INFO    ] Checking for camera pi updates...
[2026-06-27 21:29:02,984.984 INFO    ] 200
[2026-06-27 21:29:02,985.985 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:29:03,009.009 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:29:03,048.048 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:29:03,050.050 INFO    ] No camera update needed
[2026-06-27 21:29:03,051.051 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:29:03,053.053 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:29:03,056.056 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:29:03,059.059 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:29:05,098.098 INFO    ] ================================================
[2026-06-27 21:29:05,114.114 INFO    ] Launching Daemon at Sat Jun 27 21:29:05 IST 2026
[2026-06-27 21:29:05,126.126 INFO    ] ================================================
[2026-06-27 21:29:05,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:29:05
[2026-06-27 21:29:05,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:29:05,985.985 INFO    ] Initializing speech engine...
[2026-06-27 21:29:05,990.990 INFO    ] 2026-06-27 21:29:05
[2026-06-27 21:29:06,197.197 INFO    ] 2026-06-27 21:29:06
[2026-06-27 21:29:06,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:29:06,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:29:06,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:29:06,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:29:06,606.606 INFO    ] time= 27/06/2026 21:29:06
[2026-06-27 21:29:06,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:29:06,646.646 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:29:06,719.719 INFO    ] No existing commands found in stream
[2026-06-27 21:29:11,733.733 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:29:11,736.736 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-27 21:29:13,962.962 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 21:29:13,963.963 INFO    ] Checking for system updates...
[2026-06-27 21:29:13,984.984 INFO    ] 200
[2026-06-27 21:29:13,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:29:14,016.016 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:29:14,017.017 INFO    ] No update needed
[2026-06-27 21:29:14,019.019 INFO    ] Checking for camera pi updates...
[2026-06-27 21:29:14,042.042 INFO    ] 200
[2026-06-27 21:29:14,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:29:14,066.066 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:29:14,106.106 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:29:14,108.108 INFO    ] No camera update needed
[2026-06-27 21:29:14,109.109 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:29:14,110.110 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:29:14,113.113 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:29:14,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:29:16,156.156 INFO    ] ================================================
[2026-06-27 21:29:16,172.172 INFO    ] Launching Daemon at Sat Jun 27 21:29:16 IST 2026
[2026-06-27 21:29:16,182.182 INFO    ] ================================================
[2026-06-27 21:29:16,560.560 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:29:16
[2026-06-27 21:29:16,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:29:17,051.051 INFO    ] Initializing speech engine...
[2026-06-27 21:29:17,057.057 INFO    ] 2026-06-27 21:29:17
[2026-06-27 21:29:17,274.274 INFO    ] 2026-06-27 21:29:17
[2026-06-27 21:29:17,305.305 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:29:17,432.432 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:29:17,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:29:17,620.620 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:29:17,672.672 INFO    ] time= 27/06/2026 21:29:17
[2026-06-27 21:29:17,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:29:17,726.726 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:29:17,793.793 INFO    ] No existing commands found in stream
[2026-06-27 21:29:22,807.807 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:29:22,810.810 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-27 21:29:26,837.837 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 21:29:26,838.838 INFO    ] Checking for system updates...
[2026-06-27 21:29:26,859.859 INFO    ] 200
[2026-06-27 21:29:26,861.861 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:29:26,892.892 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:29:26,894.894 INFO    ] No update needed
[2026-06-27 21:29:26,895.895 INFO    ] Checking for camera pi updates...
[2026-06-27 21:29:26,916.916 INFO    ] 200
[2026-06-27 21:29:26,917.917 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:29:26,941.941 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:29:26,990.990 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:29:26,992.992 INFO    ] No camera update needed
[2026-06-27 21:29:26,993.993 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:29:26,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:29:26,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:29:27,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:29:29,041.041 INFO    ] ================================================
[2026-06-27 21:29:29,056.056 INFO    ] Launching Daemon at Sat Jun 27 21:29:29 IST 2026
[2026-06-27 21:29:29,067.067 INFO    ] ================================================
[2026-06-27 21:29:29,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:29:29
[2026-06-27 21:29:29,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:29:29,887.887 INFO    ] Initializing speech engine...
[2026-06-27 21:29:29,896.896 INFO    ] 2026-06-27 21:29:29
[2026-06-27 21:29:30,102.102 INFO    ] 2026-06-27 21:29:30
[2026-06-27 21:29:30,131.131 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:29:30,252.252 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:29:30,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:29:30,450.450 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:29:30,509.509 INFO    ] time= 27/06/2026 21:29:30
[2026-06-27 21:29:30,541.541 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:29:30,543.543 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:29:30,614.614 INFO    ] No existing commands found in stream
[2026-06-27 21:29:35,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:29:35,630.630 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-27 21:29:36,457.457 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:29:36,459.459 INFO    ] Checking for system updates...
[2026-06-27 21:29:36,479.479 INFO    ] 200
[2026-06-27 21:29:36,481.481 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:29:36,517.517 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:29:36,518.518 INFO    ] No update needed
[2026-06-27 21:29:36,520.520 INFO    ] Checking for camera pi updates...
[2026-06-27 21:29:36,539.539 INFO    ] 200
[2026-06-27 21:29:36,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:29:36,566.566 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:29:36,626.626 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:29:36,627.627 INFO    ] No camera update needed
[2026-06-27 21:29:36,629.629 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:29:36,630.630 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:29:36,633.633 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:29:36,636.636 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:29:38,675.675 INFO    ] ================================================
[2026-06-27 21:29:38,690.690 INFO    ] Launching Daemon at Sat Jun 27 21:29:38 IST 2026
[2026-06-27 21:29:38,701.701 INFO    ] ================================================
[2026-06-27 21:29:39,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:29:39
[2026-06-27 21:29:39,366.366 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:29:39,504.504 INFO    ] Initializing speech engine...
[2026-06-27 21:29:39,513.513 INFO    ] 2026-06-27 21:29:39
[2026-06-27 21:29:39,717.717 INFO    ] 2026-06-27 21:29:39
[2026-06-27 21:29:39,747.747 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:29:39,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:29:39,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:29:40,062.062 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:29:40,128.128 INFO    ] time= 27/06/2026 21:29:40
[2026-06-27 21:29:40,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:29:40,166.166 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:29:40,234.234 INFO    ] No existing commands found in stream
[2026-06-27 21:29:45,243.243 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:29:45,246.246 INFO    ] Waiting 3.82 seconds before fallback handling...
[2026-06-27 21:29:49,513.513 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 21:29:49,514.514 INFO    ] Checking for system updates...
[2026-06-27 21:29:49,535.535 INFO    ] 200
[2026-06-27 21:29:49,537.537 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:29:49,570.570 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:29:49,572.572 INFO    ] No update needed
[2026-06-27 21:29:49,573.573 INFO    ] Checking for camera pi updates...
[2026-06-27 21:29:49,596.596 INFO    ] 200
[2026-06-27 21:29:49,597.597 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:29:49,622.622 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:29:49,664.664 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:29:49,666.666 INFO    ] No camera update needed
[2026-06-27 21:29:49,667.667 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:29:49,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:29:49,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:29:49,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:29:51,715.715 INFO    ] ================================================
[2026-06-27 21:29:51,731.731 INFO    ] Launching Daemon at Sat Jun 27 21:29:51 IST 2026
[2026-06-27 21:29:51,742.742 INFO    ] ================================================
[2026-06-27 21:29:52,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:29:52
[2026-06-27 21:29:52,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:29:52,552.552 INFO    ] Initializing speech engine...
[2026-06-27 21:29:52,565.565 INFO    ] 2026-06-27 21:29:52
[2026-06-27 21:29:52,772.772 INFO    ] 2026-06-27 21:29:52
[2026-06-27 21:29:52,802.802 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:29:52,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:29:52,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:29:53,221.221 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:29:53,223.223 INFO    ] time= 27/06/2026 21:29:53
[2026-06-27 21:29:53,225.225 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:29:53,226.226 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:29:53,292.292 INFO    ] No existing commands found in stream
[2026-06-27 21:29:58,303.303 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:29:58,306.306 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-27 21:30:02,474.474 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:30:02,477.477 INFO    ] Checking for system updates...
[2026-06-27 21:30:02,512.512 INFO    ] 200
[2026-06-27 21:30:02,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:30:02,594.594 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:30:02,598.598 INFO    ] No update needed
[2026-06-27 21:30:02,600.600 INFO    ] Checking for camera pi updates...
[2026-06-27 21:30:02,630.630 INFO    ] 200
[2026-06-27 21:30:02,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:30:02,670.670 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:30:02,701.701 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:30:02,703.703 INFO    ] No camera update needed
[2026-06-27 21:30:02,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:30:02,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:30:02,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:30:02,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:30:04,752.752 INFO    ] ================================================
[2026-06-27 21:30:04,767.767 INFO    ] Launching Daemon at Sat Jun 27 21:30:04 IST 2026
[2026-06-27 21:30:04,777.777 INFO    ] ================================================
[2026-06-27 21:30:05,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:30:05
[2026-06-27 21:30:05,450.450 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:30:05,580.580 INFO    ] Initializing speech engine...
[2026-06-27 21:30:05,584.584 INFO    ] 2026-06-27 21:30:05
[2026-06-27 21:30:05,803.803 INFO    ] 2026-06-27 21:30:05
[2026-06-27 21:30:05,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:30:06,021.021 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:30:06,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:30:06,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:30:06,220.220 INFO    ] time= 27/06/2026 21:30:06
[2026-06-27 21:30:06,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:30:06,257.257 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:30:06,327.327 INFO    ] No existing commands found in stream
[2026-06-27 21:30:11,338.338 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:30:11,340.340 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-27 21:30:14,316.316 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 21:30:14,318.318 INFO    ] Checking for system updates...
[2026-06-27 21:30:14,338.338 INFO    ] 200
[2026-06-27 21:30:14,339.339 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:30:14,374.374 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:30:14,375.375 INFO    ] No update needed
[2026-06-27 21:30:14,377.377 INFO    ] Checking for camera pi updates...
[2026-06-27 21:30:14,396.396 INFO    ] 200
[2026-06-27 21:30:14,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:30:14,421.421 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:30:14,457.457 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:30:14,458.458 INFO    ] No camera update needed
[2026-06-27 21:30:14,460.460 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:30:14,461.461 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:30:14,464.464 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:30:14,467.467 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:30:16,506.506 INFO    ] ================================================
[2026-06-27 21:30:16,522.522 INFO    ] Launching Daemon at Sat Jun 27 21:30:16 IST 2026
[2026-06-27 21:30:16,533.533 INFO    ] ================================================
[2026-06-27 21:30:16,883.883 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:30:16
[2026-06-27 21:30:17,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:30:17,345.345 INFO    ] Initializing speech engine...
[2026-06-27 21:30:17,350.350 INFO    ] 2026-06-27 21:30:17
[2026-06-27 21:30:17,555.555 INFO    ] 2026-06-27 21:30:17
[2026-06-27 21:30:17,584.584 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:30:17,768.768 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:30:17,777.777 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:30:17,908.908 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:30:17,970.970 INFO    ] time= 27/06/2026 21:30:17
[2026-06-27 21:30:18,002.002 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:30:18,008.008 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:30:18,076.076 INFO    ] No existing commands found in stream
[2026-06-27 21:30:23,085.085 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:30:23,087.087 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-27 21:30:26,006.006 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 21:30:26,007.007 INFO    ] Checking for system updates...
[2026-06-27 21:30:26,028.028 INFO    ] 200
[2026-06-27 21:30:26,029.029 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:30:26,069.069 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:30:26,070.070 INFO    ] No update needed
[2026-06-27 21:30:26,072.072 INFO    ] Checking for camera pi updates...
[2026-06-27 21:30:26,094.094 INFO    ] 200
[2026-06-27 21:30:26,095.095 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:30:26,120.120 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:30:26,162.162 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:30:26,164.164 INFO    ] No camera update needed
[2026-06-27 21:30:26,165.165 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:30:26,167.167 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:30:26,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:30:26,172.172 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:30:28,214.214 INFO    ] ================================================
[2026-06-27 21:30:28,230.230 INFO    ] Launching Daemon at Sat Jun 27 21:30:28 IST 2026
[2026-06-27 21:30:28,242.242 INFO    ] ================================================
[2026-06-27 21:30:28,621.621 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:30:28
[2026-06-27 21:30:28,959.959 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:30:29,110.110 INFO    ] Initializing speech engine...
[2026-06-27 21:30:29,115.115 INFO    ] 2026-06-27 21:30:29
[2026-06-27 21:30:29,324.324 INFO    ] 2026-06-27 21:30:29
[2026-06-27 21:30:29,354.354 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:30:29,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:30:29,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:30:29,695.695 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:30:29,749.749 INFO    ] time= 27/06/2026 21:30:29
[2026-06-27 21:30:29,771.771 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:30:29,777.777 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:30:29,846.846 INFO    ] No existing commands found in stream
[2026-06-27 21:30:34,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:30:34,858.858 INFO    ] Waiting 3.39 seconds before fallback handling...
[2026-06-27 21:30:39,118.118 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 21:30:39,121.121 INFO    ] Checking for system updates...
[2026-06-27 21:30:39,159.159 INFO    ] 200
[2026-06-27 21:30:39,162.162 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:30:39,216.216 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:30:39,218.218 INFO    ] No update needed
[2026-06-27 21:30:39,219.219 INFO    ] Checking for camera pi updates...
[2026-06-27 21:30:39,239.239 INFO    ] 200
[2026-06-27 21:30:39,241.241 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:30:39,266.266 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:30:39,307.307 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:30:39,309.309 INFO    ] No camera update needed
[2026-06-27 21:30:39,310.310 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:30:39,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:30:39,314.314 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:30:39,317.317 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:30:41,357.357 INFO    ] ================================================
[2026-06-27 21:30:41,374.374 INFO    ] Launching Daemon at Sat Jun 27 21:30:41 IST 2026
[2026-06-27 21:30:41,385.385 INFO    ] ================================================
[2026-06-27 21:30:41,724.724 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:30:41
[2026-06-27 21:30:42,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:30:42,175.175 INFO    ] Initializing speech engine...
[2026-06-27 21:30:42,185.185 INFO    ] 2026-06-27 21:30:42
[2026-06-27 21:30:42,391.391 INFO    ] 2026-06-27 21:30:42
[2026-06-27 21:30:42,421.421 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:30:42,607.607 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:30:42,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:30:42,778.778 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:30:42,822.822 INFO    ] time= 27/06/2026 21:30:42
[2026-06-27 21:30:42,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:30:42,851.851 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:30:42,918.918 INFO    ] No existing commands found in stream
[2026-06-27 21:30:47,926.926 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:30:47,929.929 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-27 21:30:51,658.658 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 21:30:51,659.659 INFO    ] Checking for system updates...
[2026-06-27 21:30:51,680.680 INFO    ] 200
[2026-06-27 21:30:51,682.682 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:30:51,712.712 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:30:51,714.714 INFO    ] No update needed
[2026-06-27 21:30:51,715.715 INFO    ] Checking for camera pi updates...
[2026-06-27 21:30:51,735.735 INFO    ] 200
[2026-06-27 21:30:51,736.736 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:30:51,760.760 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:30:51,802.802 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:30:51,803.803 INFO    ] No camera update needed
[2026-06-27 21:30:51,804.804 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:30:51,806.806 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:30:51,809.809 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:30:51,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:30:53,851.851 INFO    ] ================================================
[2026-06-27 21:30:53,866.866 INFO    ] Launching Daemon at Sat Jun 27 21:30:53 IST 2026
[2026-06-27 21:30:53,878.878 INFO    ] ================================================
[2026-06-27 21:30:54,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:30:54
[2026-06-27 21:30:54,605.605 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:30:54,757.757 INFO    ] Initializing speech engine...
[2026-06-27 21:30:54,762.762 INFO    ] 2026-06-27 21:30:54
[2026-06-27 21:30:54,972.972 INFO    ] 2026-06-27 21:30:54
[2026-06-27 21:30:55,001.001 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:30:55,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:30:55,191.191 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:30:55,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:30:55,395.395 INFO    ] time= 27/06/2026 21:30:55
[2026-06-27 21:30:55,418.418 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:30:55,424.424 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:30:55,489.489 INFO    ] No existing commands found in stream
[2026-06-27 21:31:00,499.499 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:31:00,502.502 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-27 21:31:03,971.971 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 21:31:03,972.972 INFO    ] Checking for system updates...
[2026-06-27 21:31:03,993.993 INFO    ] 200
[2026-06-27 21:31:03,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:31:04,027.027 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:31:04,028.028 INFO    ] No update needed
[2026-06-27 21:31:04,030.030 INFO    ] Checking for camera pi updates...
[2026-06-27 21:31:04,049.049 INFO    ] 200
[2026-06-27 21:31:04,050.050 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:31:04,075.075 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:31:04,115.115 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:31:04,116.116 INFO    ] No camera update needed
[2026-06-27 21:31:04,117.117 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:31:04,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:31:04,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:31:04,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:31:06,156.156 INFO    ] ================================================
[2026-06-27 21:31:06,171.171 INFO    ] Launching Daemon at Sat Jun 27 21:31:06 IST 2026
[2026-06-27 21:31:06,182.182 INFO    ] ================================================
[2026-06-27 21:31:06,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:31:06
[2026-06-27 21:31:06,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:31:07,037.037 INFO    ] Initializing speech engine...
[2026-06-27 21:31:07,042.042 INFO    ] 2026-06-27 21:31:07
[2026-06-27 21:31:07,254.254 INFO    ] 2026-06-27 21:31:07
[2026-06-27 21:31:07,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:31:07,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:31:07,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:31:07,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:31:07,684.684 INFO    ] time= 27/06/2026 21:31:07
[2026-06-27 21:31:07,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:31:07,712.712 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:31:07,780.780 INFO    ] No existing commands found in stream
[2026-06-27 21:31:12,805.805 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:31:12,808.808 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-27 21:31:14,944.944 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:31:14,947.947 INFO    ] Checking for system updates...
[2026-06-27 21:31:14,985.985 INFO    ] 200
[2026-06-27 21:31:14,987.987 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:31:15,044.044 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:31:15,046.046 INFO    ] No update needed
[2026-06-27 21:31:15,048.048 INFO    ] Checking for camera pi updates...
[2026-06-27 21:31:15,083.083 INFO    ] 200
[2026-06-27 21:31:15,086.086 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:31:15,124.124 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:31:15,178.178 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:31:15,180.180 INFO    ] No camera update needed
[2026-06-27 21:31:15,181.181 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:31:15,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:31:15,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:31:15,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:31:17,227.227 INFO    ] ================================================
[2026-06-27 21:31:17,243.243 INFO    ] Launching Daemon at Sat Jun 27 21:31:17 IST 2026
[2026-06-27 21:31:17,255.255 INFO    ] ================================================
[2026-06-27 21:31:17,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:31:17
[2026-06-27 21:31:17,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:31:18,123.123 INFO    ] Initializing speech engine...
[2026-06-27 21:31:18,128.128 INFO    ] 2026-06-27 21:31:18
[2026-06-27 21:31:18,339.339 INFO    ] 2026-06-27 21:31:18
[2026-06-27 21:31:18,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:31:18,558.558 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:31:18,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:31:18,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:31:18,769.769 INFO    ] time= 27/06/2026 21:31:18
[2026-06-27 21:31:18,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:31:18,799.799 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:31:18,867.867 INFO    ] No existing commands found in stream
[2026-06-27 21:31:23,881.881 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:31:23,885.885 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-27 21:31:25,062.062 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 21:31:25,064.064 INFO    ] Checking for system updates...
[2026-06-27 21:31:25,085.085 INFO    ] 200
[2026-06-27 21:31:25,086.086 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:31:25,117.117 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:31:25,118.118 INFO    ] No update needed
[2026-06-27 21:31:25,119.119 INFO    ] Checking for camera pi updates...
[2026-06-27 21:31:25,141.141 INFO    ] 200
[2026-06-27 21:31:25,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:31:25,167.167 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:31:25,214.214 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:31:25,215.215 INFO    ] No camera update needed
[2026-06-27 21:31:25,216.216 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:31:25,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:31:25,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:31:25,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:31:27,263.263 INFO    ] ================================================
[2026-06-27 21:31:27,278.278 INFO    ] Launching Daemon at Sat Jun 27 21:31:27 IST 2026
[2026-06-27 21:31:27,289.289 INFO    ] ================================================
[2026-06-27 21:31:27,630.630 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:31:27
[2026-06-27 21:31:27,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:31:28,083.083 INFO    ] Initializing speech engine...
[2026-06-27 21:31:28,093.093 INFO    ] 2026-06-27 21:31:28
[2026-06-27 21:31:28,313.313 INFO    ] 2026-06-27 21:31:28
[2026-06-27 21:31:28,344.344 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:31:28,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:31:28,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:31:28,688.688 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:31:28,744.744 INFO    ] time= 27/06/2026 21:31:28
[2026-06-27 21:31:28,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:31:28,797.797 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:31:28,873.873 INFO    ] No existing commands found in stream
[2026-06-27 21:31:33,884.884 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:31:33,887.887 INFO    ] Waiting 0.31 seconds before fallback handling...
[2026-06-27 21:31:34,603.603 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:31:34,604.604 INFO    ] Checking for system updates...
[2026-06-27 21:31:34,626.626 INFO    ] 200
[2026-06-27 21:31:34,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:31:34,658.658 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:31:34,660.660 INFO    ] No update needed
[2026-06-27 21:31:34,661.661 INFO    ] Checking for camera pi updates...
[2026-06-27 21:31:34,680.680 INFO    ] 200
[2026-06-27 21:31:34,682.682 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:31:34,707.707 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:31:34,822.822 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:31:34,823.823 INFO    ] No camera update needed
[2026-06-27 21:31:34,825.825 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:31:34,826.826 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:31:34,829.829 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:31:34,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:31:36,871.871 INFO    ] ================================================
[2026-06-27 21:31:36,886.886 INFO    ] Launching Daemon at Sat Jun 27 21:31:36 IST 2026
[2026-06-27 21:31:36,897.897 INFO    ] ================================================
[2026-06-27 21:31:37,280.280 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:31:37
[2026-06-27 21:31:37,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:31:37,782.782 INFO    ] Initializing speech engine...
[2026-06-27 21:31:37,790.790 INFO    ] 2026-06-27 21:31:37
[2026-06-27 21:31:38,000.000 INFO    ] 2026-06-27 21:31:37
[2026-06-27 21:31:38,030.030 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:31:38,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:31:38,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:31:38,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:31:38,426.426 INFO    ] time= 27/06/2026 21:31:38
[2026-06-27 21:31:38,448.448 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:31:38,454.454 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:31:38,526.526 INFO    ] No existing commands found in stream
[2026-06-27 21:31:43,554.554 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:31:43,557.557 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-27 21:31:46,930.930 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 21:31:46,932.932 INFO    ] Checking for system updates...
[2026-06-27 21:31:46,953.953 INFO    ] 200
[2026-06-27 21:31:46,955.955 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:31:46,986.986 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:31:46,988.988 INFO    ] No update needed
[2026-06-27 21:31:46,989.989 INFO    ] Checking for camera pi updates...
[2026-06-27 21:31:47,010.010 INFO    ] 200
[2026-06-27 21:31:47,012.012 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:31:47,036.036 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:31:47,067.067 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:31:47,069.069 INFO    ] No camera update needed
[2026-06-27 21:31:47,070.070 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:31:47,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:31:47,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:31:47,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:31:49,118.118 INFO    ] ================================================
[2026-06-27 21:31:49,134.134 INFO    ] Launching Daemon at Sat Jun 27 21:31:49 IST 2026
[2026-06-27 21:31:49,145.145 INFO    ] ================================================
[2026-06-27 21:31:49,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:31:49
[2026-06-27 21:31:49,863.863 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:31:50,016.016 INFO    ] Initializing speech engine...
[2026-06-27 21:31:50,022.022 INFO    ] 2026-06-27 21:31:50
[2026-06-27 21:31:50,232.232 INFO    ] 2026-06-27 21:31:50
[2026-06-27 21:31:50,262.262 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:31:50,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:31:50,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:31:50,582.582 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:31:50,638.638 INFO    ] time= 27/06/2026 21:31:50
[2026-06-27 21:31:50,674.674 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:31:50,684.684 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:31:50,757.757 INFO    ] No existing commands found in stream
[2026-06-27 21:31:55,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:31:55,769.769 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-27 21:31:59,148.148 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 21:31:59,150.150 INFO    ] Checking for system updates...
[2026-06-27 21:31:59,172.172 INFO    ] 200
[2026-06-27 21:31:59,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:31:59,205.205 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:31:59,206.206 INFO    ] No update needed
[2026-06-27 21:31:59,208.208 INFO    ] Checking for camera pi updates...
[2026-06-27 21:31:59,228.228 INFO    ] 200
[2026-06-27 21:31:59,229.229 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:31:59,253.253 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:31:59,302.302 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:31:59,304.304 INFO    ] No camera update needed
[2026-06-27 21:31:59,305.305 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:31:59,306.306 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:31:59,310.310 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:31:59,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:32:01,344.344 INFO    ] ================================================
[2026-06-27 21:32:01,354.354 INFO    ] Launching Daemon at Sat Jun 27 21:32:01 IST 2026
[2026-06-27 21:32:01,360.360 INFO    ] ================================================
[2026-06-27 21:32:01,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:32:01
[2026-06-27 21:32:02,156.156 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:32:02,319.319 INFO    ] Initializing speech engine...
[2026-06-27 21:32:02,321.321 INFO    ] 2026-06-27 21:32:02
[2026-06-27 21:32:02,520.520 INFO    ] 2026-06-27 21:32:02
[2026-06-27 21:32:02,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:32:02,730.730 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:32:02,735.735 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:32:02,880.880 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:32:02,889.889 INFO    ] time= 27/06/2026 21:32:02
[2026-06-27 21:32:02,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:32:02,910.910 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:32:02,997.997 INFO    ] No existing commands found in stream
[2026-06-27 21:32:08,029.029 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:32:08,032.032 INFO    ] Waiting 2.56 seconds before fallback handling...
[2026-06-27 21:32:11,001.001 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 21:32:11,002.002 INFO    ] Checking for system updates...
[2026-06-27 21:32:11,024.024 INFO    ] 200
[2026-06-27 21:32:11,026.026 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:32:11,058.058 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:32:11,060.060 INFO    ] No update needed
[2026-06-27 21:32:11,061.061 INFO    ] Checking for camera pi updates...
[2026-06-27 21:32:11,084.084 INFO    ] 200
[2026-06-27 21:32:11,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:32:11,109.109 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:32:11,257.257 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:32:11,259.259 INFO    ] No camera update needed
[2026-06-27 21:32:11,260.260 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:32:11,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:32:11,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:32:11,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:32:13,309.309 INFO    ] ================================================
[2026-06-27 21:32:13,325.325 INFO    ] Launching Daemon at Sat Jun 27 21:32:13 IST 2026
[2026-06-27 21:32:13,336.336 INFO    ] ================================================
[2026-06-27 21:32:13,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:32:13
[2026-06-27 21:32:14,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:32:14,185.185 INFO    ] Initializing speech engine...
[2026-06-27 21:32:14,189.189 INFO    ] 2026-06-27 21:32:14
[2026-06-27 21:32:14,400.400 INFO    ] 2026-06-27 21:32:14
[2026-06-27 21:32:14,429.429 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:32:14,617.617 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:32:14,626.626 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:32:14,763.763 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:32:14,827.827 INFO    ] time= 27/06/2026 21:32:14
[2026-06-27 21:32:14,851.851 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:32:14,858.858 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:32:14,926.926 INFO    ] No existing commands found in stream
[2026-06-27 21:32:19,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:32:19,944.944 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-27 21:32:21,818.818 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 21:32:21,819.819 INFO    ] Checking for system updates...
[2026-06-27 21:32:21,840.840 INFO    ] 200
[2026-06-27 21:32:21,841.841 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:32:21,871.871 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:32:21,872.872 INFO    ] No update needed
[2026-06-27 21:32:21,874.874 INFO    ] Checking for camera pi updates...
[2026-06-27 21:32:21,893.893 INFO    ] 200
[2026-06-27 21:32:21,895.895 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:32:21,918.918 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:32:21,968.968 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:32:21,970.970 INFO    ] No camera update needed
[2026-06-27 21:32:21,971.971 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:32:21,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:32:21,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:32:21,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:32:24,018.018 INFO    ] ================================================
[2026-06-27 21:32:24,033.033 INFO    ] Launching Daemon at Sat Jun 27 21:32:24 IST 2026
[2026-06-27 21:32:24,043.043 INFO    ] ================================================
[2026-06-27 21:32:24,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:32:24
[2026-06-27 21:32:24,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:32:24,840.840 INFO    ] Initializing speech engine...
[2026-06-27 21:32:24,850.850 INFO    ] 2026-06-27 21:32:24
[2026-06-27 21:32:25,068.068 INFO    ] 2026-06-27 21:32:25
[2026-06-27 21:32:25,098.098 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:32:25,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:32:25,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:32:25,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:32:25,481.481 INFO    ] time= 27/06/2026 21:32:25
[2026-06-27 21:32:25,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:32:25,547.547 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:32:25,651.651 INFO    ] No existing commands found in stream
[2026-06-27 21:32:30,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:32:30,663.663 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-27 21:32:31,821.821 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:32:31,823.823 INFO    ] Checking for system updates...
[2026-06-27 21:32:31,846.846 INFO    ] 200
[2026-06-27 21:32:31,848.848 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:32:31,885.885 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:32:31,887.887 INFO    ] No update needed
[2026-06-27 21:32:31,889.889 INFO    ] Checking for camera pi updates...
[2026-06-27 21:32:31,910.910 INFO    ] 200
[2026-06-27 21:32:31,911.911 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:32:31,942.942 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:32:31,979.979 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:32:31,981.981 INFO    ] No camera update needed
[2026-06-27 21:32:31,982.982 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:32:31,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:32:31,988.988 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:32:31,991.991 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:32:34,015.015 INFO    ] ================================================
[2026-06-27 21:32:34,024.024 INFO    ] Launching Daemon at Sat Jun 27 21:32:34 IST 2026
[2026-06-27 21:32:34,029.029 INFO    ] ================================================
[2026-06-27 21:32:34,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:32:34
[2026-06-27 21:32:34,685.685 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:32:34,838.838 INFO    ] Initializing speech engine...
[2026-06-27 21:32:34,842.842 INFO    ] 2026-06-27 21:32:34
[2026-06-27 21:32:35,050.050 INFO    ] 2026-06-27 21:32:35
[2026-06-27 21:32:35,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:32:35,219.219 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:32:35,269.269 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:32:35,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:32:35,456.456 INFO    ] time= 27/06/2026 21:32:35
[2026-06-27 21:32:35,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:32:35,542.542 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:32:35,655.655 INFO    ] No existing commands found in stream
[2026-06-27 21:32:40,675.675 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:32:40,678.678 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-27 21:32:41,067.067 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 21:32:41,068.068 INFO    ] Checking for system updates...
[2026-06-27 21:32:41,091.091 INFO    ] 200
[2026-06-27 21:32:41,092.092 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:32:41,125.125 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:32:41,126.126 INFO    ] No update needed
[2026-06-27 21:32:41,128.128 INFO    ] Checking for camera pi updates...
[2026-06-27 21:32:41,148.148 INFO    ] 200
[2026-06-27 21:32:41,149.149 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:32:41,173.173 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:32:41,221.221 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:32:41,223.223 INFO    ] No camera update needed
[2026-06-27 21:32:41,225.225 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:32:41,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:32:41,230.230 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:32:41,233.233 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:32:43,274.274 INFO    ] ================================================
[2026-06-27 21:32:43,290.290 INFO    ] Launching Daemon at Sat Jun 27 21:32:43 IST 2026
[2026-06-27 21:32:43,301.301 INFO    ] ================================================
[2026-06-27 21:32:43,626.626 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:32:43
[2026-06-27 21:32:43,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:32:44,084.084 INFO    ] Initializing speech engine...
[2026-06-27 21:32:44,088.088 INFO    ] 2026-06-27 21:32:44
[2026-06-27 21:32:44,296.296 INFO    ] 2026-06-27 21:32:44
[2026-06-27 21:32:44,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:32:44,615.615 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:32:44,645.645 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:32:45,142.142 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:32:45,146.146 INFO    ] time= 27/06/2026 21:32:45
[2026-06-27 21:32:45,149.149 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:32:45,155.155 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:32:45,457.457 INFO    ] No existing commands found in stream
[2026-06-27 21:32:50,470.470 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:32:50,473.473 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-27 21:32:54,598.598 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 21:32:54,600.600 INFO    ] Checking for system updates...
[2026-06-27 21:32:54,621.621 INFO    ] 200
[2026-06-27 21:32:54,622.622 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:32:54,653.653 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:32:54,655.655 INFO    ] No update needed
[2026-06-27 21:32:54,656.656 INFO    ] Checking for camera pi updates...
[2026-06-27 21:32:54,676.676 INFO    ] 200
[2026-06-27 21:32:54,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:32:54,702.702 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:32:54,741.741 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:32:54,743.743 INFO    ] No camera update needed
[2026-06-27 21:32:54,745.745 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:32:54,746.746 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:32:54,749.749 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:32:54,752.752 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:32:56,792.792 INFO    ] ================================================
[2026-06-27 21:32:56,808.808 INFO    ] Launching Daemon at Sat Jun 27 21:32:56 IST 2026
[2026-06-27 21:32:56,819.819 INFO    ] ================================================
[2026-06-27 21:32:57,185.185 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:32:57
[2026-06-27 21:32:57,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:32:57,663.663 INFO    ] Initializing speech engine...
[2026-06-27 21:32:57,669.669 INFO    ] 2026-06-27 21:32:57
[2026-06-27 21:32:57,879.879 INFO    ] 2026-06-27 21:32:57
[2026-06-27 21:32:57,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:32:58,095.095 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:32:58,104.104 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:32:58,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:32:58,294.294 INFO    ] time= 27/06/2026 21:32:58
[2026-06-27 21:32:58,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:32:58,329.329 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:32:58,401.401 INFO    ] No existing commands found in stream
[2026-06-27 21:33:03,420.420 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:33:03,423.423 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-27 21:33:06,962.962 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 21:33:06,965.965 INFO    ] Checking for system updates...
[2026-06-27 21:33:07,013.013 INFO    ] 200
[2026-06-27 21:33:07,015.015 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:33:07,074.074 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:33:07,077.077 INFO    ] No update needed
[2026-06-27 21:33:07,080.080 INFO    ] Checking for camera pi updates...
[2026-06-27 21:33:07,108.108 INFO    ] 200
[2026-06-27 21:33:07,110.110 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:33:07,134.134 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:33:07,178.178 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:33:07,179.179 INFO    ] No camera update needed
[2026-06-27 21:33:07,181.181 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:33:07,182.182 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:33:07,185.185 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:33:07,188.188 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:33:09,230.230 INFO    ] ================================================
[2026-06-27 21:33:09,246.246 INFO    ] Launching Daemon at Sat Jun 27 21:33:09 IST 2026
[2026-06-27 21:33:09,256.256 INFO    ] ================================================
[2026-06-27 21:33:09,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:33:09
[2026-06-27 21:33:09,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:33:10,058.058 INFO    ] Initializing speech engine...
[2026-06-27 21:33:10,069.069 INFO    ] 2026-06-27 21:33:10
[2026-06-27 21:33:10,274.274 INFO    ] 2026-06-27 21:33:10
[2026-06-27 21:33:10,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:33:10,486.486 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:33:10,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:33:10,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:33:10,691.691 INFO    ] time= 27/06/2026 21:33:10
[2026-06-27 21:33:10,715.715 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:33:10,721.721 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:33:10,788.788 INFO    ] No existing commands found in stream
[2026-06-27 21:33:15,797.797 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:33:15,800.800 INFO    ] Waiting 3.99 seconds before fallback handling...
[2026-06-27 21:33:20,208.208 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 21:33:20,209.209 INFO    ] Checking for system updates...
[2026-06-27 21:33:20,232.232 INFO    ] 200
[2026-06-27 21:33:20,234.234 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:33:20,265.265 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:33:20,266.266 INFO    ] No update needed
[2026-06-27 21:33:20,267.267 INFO    ] Checking for camera pi updates...
[2026-06-27 21:33:20,287.287 INFO    ] 200
[2026-06-27 21:33:20,288.288 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:33:20,313.313 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:33:20,355.355 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:33:20,356.356 INFO    ] No camera update needed
[2026-06-27 21:33:20,358.358 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:33:20,359.359 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:33:20,362.362 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:33:20,365.365 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:33:22,404.404 INFO    ] ================================================
[2026-06-27 21:33:22,420.420 INFO    ] Launching Daemon at Sat Jun 27 21:33:22 IST 2026
[2026-06-27 21:33:22,430.430 INFO    ] ================================================
[2026-06-27 21:33:22,808.808 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:33:22
[2026-06-27 21:33:23,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:33:23,302.302 INFO    ] Initializing speech engine...
[2026-06-27 21:33:23,309.309 INFO    ] 2026-06-27 21:33:23
[2026-06-27 21:33:23,511.511 INFO    ] 2026-06-27 21:33:23
[2026-06-27 21:33:23,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:33:23,726.726 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:33:23,738.738 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:33:23,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:33:23,955.955 INFO    ] time= 27/06/2026 21:33:23
[2026-06-27 21:33:23,957.957 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:33:23,963.963 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:33:24,029.029 INFO    ] No existing commands found in stream
[2026-06-27 21:33:29,041.041 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:33:29,044.044 INFO    ] Waiting 3.87 seconds before fallback handling...
[2026-06-27 21:33:33,344.344 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 21:33:33,345.345 INFO    ] Checking for system updates...
[2026-06-27 21:33:33,366.366 INFO    ] 200
[2026-06-27 21:33:33,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:33:33,398.398 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:33:33,399.399 INFO    ] No update needed
[2026-06-27 21:33:33,400.400 INFO    ] Checking for camera pi updates...
[2026-06-27 21:33:33,422.422 INFO    ] 200
[2026-06-27 21:33:33,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:33:33,450.450 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:33:33,492.492 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:33:33,494.494 INFO    ] No camera update needed
[2026-06-27 21:33:33,495.495 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:33:33,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:33:33,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:33:33,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:33:35,540.540 INFO    ] ================================================
[2026-06-27 21:33:35,556.556 INFO    ] Launching Daemon at Sat Jun 27 21:33:35 IST 2026
[2026-06-27 21:33:35,566.566 INFO    ] ================================================
[2026-06-27 21:33:35,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:33:35
[2026-06-27 21:33:36,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:33:36,388.388 INFO    ] Initializing speech engine...
[2026-06-27 21:33:36,392.392 INFO    ] 2026-06-27 21:33:36
[2026-06-27 21:33:36,608.608 INFO    ] 2026-06-27 21:33:36
[2026-06-27 21:33:36,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:33:36,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:33:36,822.822 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:33:36,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:33:37,021.021 INFO    ] time= 27/06/2026 21:33:36
[2026-06-27 21:33:37,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:33:37,058.058 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:33:37,125.125 INFO    ] No existing commands found in stream
[2026-06-27 21:33:42,139.139 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:33:42,142.142 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-27 21:33:43,267.267 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:33:43,269.269 INFO    ] Checking for system updates...
[2026-06-27 21:33:43,290.290 INFO    ] 200
[2026-06-27 21:33:43,291.291 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:33:43,322.322 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:33:43,324.324 INFO    ] No update needed
[2026-06-27 21:33:43,325.325 INFO    ] Checking for camera pi updates...
[2026-06-27 21:33:43,345.345 INFO    ] 200
[2026-06-27 21:33:43,346.346 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:33:43,369.369 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:33:43,412.412 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:33:43,414.414 INFO    ] No camera update needed
[2026-06-27 21:33:43,415.415 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:33:43,416.416 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:33:43,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:33:43,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:33:45,461.461 INFO    ] ================================================
[2026-06-27 21:33:45,480.480 INFO    ] Launching Daemon at Sat Jun 27 21:33:45 IST 2026
[2026-06-27 21:33:45,491.491 INFO    ] ================================================
[2026-06-27 21:33:45,835.835 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:33:45
[2026-06-27 21:33:46,147.147 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:33:46,281.281 INFO    ] Initializing speech engine...
[2026-06-27 21:33:46,293.293 INFO    ] 2026-06-27 21:33:46
[2026-06-27 21:33:46,502.502 INFO    ] 2026-06-27 21:33:46
[2026-06-27 21:33:46,531.531 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:33:46,707.707 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:33:46,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:33:46,870.870 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:33:46,928.928 INFO    ] time= 27/06/2026 21:33:46
[2026-06-27 21:33:46,967.967 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:33:46,973.973 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:33:47,087.087 INFO    ] No existing commands found in stream
[2026-06-27 21:33:52,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:33:52,111.111 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-27 21:33:54,097.097 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 21:33:54,099.099 INFO    ] Checking for system updates...
[2026-06-27 21:33:54,120.120 INFO    ] 200
[2026-06-27 21:33:54,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:33:54,152.152 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:33:54,153.153 INFO    ] No update needed
[2026-06-27 21:33:54,154.154 INFO    ] Checking for camera pi updates...
[2026-06-27 21:33:54,176.176 INFO    ] 200
[2026-06-27 21:33:54,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:33:54,201.201 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:33:54,319.319 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:33:54,320.320 INFO    ] No camera update needed
[2026-06-27 21:33:54,322.322 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:33:54,323.323 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:33:54,326.326 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:33:54,329.329 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:33:56,367.367 INFO    ] ================================================
[2026-06-27 21:33:56,382.382 INFO    ] Launching Daemon at Sat Jun 27 21:33:56 IST 2026
[2026-06-27 21:33:56,393.393 INFO    ] ================================================
[2026-06-27 21:33:56,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:33:56
[2026-06-27 21:33:57,082.082 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:33:57,228.228 INFO    ] Initializing speech engine...
[2026-06-27 21:33:57,232.232 INFO    ] 2026-06-27 21:33:57
[2026-06-27 21:33:57,436.436 INFO    ] 2026-06-27 21:33:57
[2026-06-27 21:33:57,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:33:57,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:33:57,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:33:57,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:33:57,875.875 INFO    ] time= 27/06/2026 21:33:57
[2026-06-27 21:33:57,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:33:57,887.887 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:33:57,954.954 INFO    ] No existing commands found in stream
[2026-06-27 21:34:02,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:34:02,966.966 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-27 21:34:04,628.628 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:34:04,629.629 INFO    ] Checking for system updates...
[2026-06-27 21:34:04,650.650 INFO    ] 200
[2026-06-27 21:34:04,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:34:04,685.685 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:34:04,686.686 INFO    ] No update needed
[2026-06-27 21:34:04,687.687 INFO    ] Checking for camera pi updates...
[2026-06-27 21:34:04,707.707 INFO    ] 200
[2026-06-27 21:34:04,708.708 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:34:04,734.734 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:34:04,771.771 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:34:04,772.772 INFO    ] No camera update needed
[2026-06-27 21:34:04,774.774 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:34:04,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:34:04,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:34:04,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:34:06,822.822 INFO    ] ================================================
[2026-06-27 21:34:06,837.837 INFO    ] Launching Daemon at Sat Jun 27 21:34:06 IST 2026
[2026-06-27 21:34:06,848.848 INFO    ] ================================================
[2026-06-27 21:34:07,208.208 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:34:07
[2026-06-27 21:34:07,524.524 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:34:07,666.666 INFO    ] Initializing speech engine...
[2026-06-27 21:34:07,671.671 INFO    ] 2026-06-27 21:34:07
[2026-06-27 21:34:07,876.876 INFO    ] 2026-06-27 21:34:07
[2026-06-27 21:34:07,904.904 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:34:08,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:34:08,089.089 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:34:08,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:34:08,292.292 INFO    ] time= 27/06/2026 21:34:08
[2026-06-27 21:34:08,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:34:08,322.322 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:34:08,388.388 INFO    ] No existing commands found in stream
[2026-06-27 21:34:13,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:34:13,399.399 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-27 21:34:15,565.565 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 21:34:15,567.567 INFO    ] Checking for system updates...
[2026-06-27 21:34:15,587.587 INFO    ] 200
[2026-06-27 21:34:15,589.589 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:34:15,622.622 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:34:15,623.623 INFO    ] No update needed
[2026-06-27 21:34:15,624.624 INFO    ] Checking for camera pi updates...
[2026-06-27 21:34:15,644.644 INFO    ] 200
[2026-06-27 21:34:15,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:34:15,669.669 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:34:15,817.817 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:34:15,819.819 INFO    ] No camera update needed
[2026-06-27 21:34:15,820.820 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:34:15,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:34:15,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:34:15,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:34:17,867.867 INFO    ] ================================================
[2026-06-27 21:34:17,882.882 INFO    ] Launching Daemon at Sat Jun 27 21:34:17 IST 2026
[2026-06-27 21:34:17,893.893 INFO    ] ================================================
[2026-06-27 21:34:18,275.275 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:34:18
[2026-06-27 21:34:18,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:34:18,775.775 INFO    ] Initializing speech engine...
[2026-06-27 21:34:18,780.780 INFO    ] 2026-06-27 21:34:18
[2026-06-27 21:34:18,986.986 INFO    ] 2026-06-27 21:34:18
[2026-06-27 21:34:19,015.015 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:34:19,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:34:19,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:34:19,336.336 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:34:19,406.406 INFO    ] time= 27/06/2026 21:34:19
[2026-06-27 21:34:19,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:34:19,436.436 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:34:19,503.503 INFO    ] No existing commands found in stream
[2026-06-27 21:34:24,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:34:24,527.527 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-27 21:34:27,377.377 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 21:34:27,378.378 INFO    ] Checking for system updates...
[2026-06-27 21:34:27,400.400 INFO    ] 200
[2026-06-27 21:34:27,401.401 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:34:27,432.432 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:34:27,434.434 INFO    ] No update needed
[2026-06-27 21:34:27,435.435 INFO    ] Checking for camera pi updates...
[2026-06-27 21:34:27,456.456 INFO    ] 200
[2026-06-27 21:34:27,458.458 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:34:27,485.485 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:34:27,537.537 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:34:27,538.538 INFO    ] No camera update needed
[2026-06-27 21:34:27,540.540 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:34:27,541.541 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:34:27,544.544 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:34:27,547.547 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:34:29,586.586 INFO    ] ================================================
[2026-06-27 21:34:29,601.601 INFO    ] Launching Daemon at Sat Jun 27 21:34:29 IST 2026
[2026-06-27 21:34:29,612.612 INFO    ] ================================================
[2026-06-27 21:34:29,955.955 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:34:29
[2026-06-27 21:34:30,269.269 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:34:30,402.402 INFO    ] Initializing speech engine...
[2026-06-27 21:34:30,415.415 INFO    ] 2026-06-27 21:34:30
[2026-06-27 21:34:30,621.621 INFO    ] 2026-06-27 21:34:30
[2026-06-27 21:34:30,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:34:30,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:34:30,843.843 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:34:30,970.970 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:34:31,027.027 INFO    ] time= 27/06/2026 21:34:30
[2026-06-27 21:34:31,062.062 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:34:31,067.067 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:34:31,139.139 INFO    ] No existing commands found in stream
[2026-06-27 21:34:36,148.148 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:34:36,150.150 INFO    ] Waiting 0.32 seconds before fallback handling...
[2026-06-27 21:34:36,866.866 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:34:36,867.867 INFO    ] Checking for system updates...
[2026-06-27 21:34:36,889.889 INFO    ] 200
[2026-06-27 21:34:36,891.891 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:34:36,921.921 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:34:36,922.922 INFO    ] No update needed
[2026-06-27 21:34:36,923.923 INFO    ] Checking for camera pi updates...
[2026-06-27 21:34:36,946.946 INFO    ] 200
[2026-06-27 21:34:36,947.947 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:34:36,970.970 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:34:37,012.012 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:34:37,016.016 INFO    ] No camera update needed
[2026-06-27 21:34:37,018.018 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:34:37,019.019 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:34:37,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:34:37,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:34:39,064.064 INFO    ] ================================================
[2026-06-27 21:34:39,079.079 INFO    ] Launching Daemon at Sat Jun 27 21:34:39 IST 2026
[2026-06-27 21:34:39,090.090 INFO    ] ================================================
[2026-06-27 21:34:39,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:34:39
[2026-06-27 21:34:39,748.748 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:34:39,891.891 INFO    ] Initializing speech engine...
[2026-06-27 21:34:39,896.896 INFO    ] 2026-06-27 21:34:39
[2026-06-27 21:34:40,100.100 INFO    ] 2026-06-27 21:34:40
[2026-06-27 21:34:40,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:34:40,311.311 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:34:40,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:34:40,463.463 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:34:40,515.515 INFO    ] time= 27/06/2026 21:34:40
[2026-06-27 21:34:40,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:34:40,544.544 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:34:40,612.612 INFO    ] No existing commands found in stream
[2026-06-27 21:34:45,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:34:45,628.628 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-27 21:34:48,555.555 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 21:34:48,557.557 INFO    ] Checking for system updates...
[2026-06-27 21:34:48,580.580 INFO    ] 200
[2026-06-27 21:34:48,582.582 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:34:48,614.614 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:34:48,616.616 INFO    ] No update needed
[2026-06-27 21:34:48,617.617 INFO    ] Checking for camera pi updates...
[2026-06-27 21:34:48,637.637 INFO    ] 200
[2026-06-27 21:34:48,639.639 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:34:48,662.662 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:34:48,709.709 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:34:48,711.711 INFO    ] No camera update needed
[2026-06-27 21:34:48,712.712 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:34:48,714.714 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:34:48,718.718 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:34:48,721.721 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:34:50,753.753 INFO    ] ================================================
[2026-06-27 21:34:50,769.769 INFO    ] Launching Daemon at Sat Jun 27 21:34:50 IST 2026
[2026-06-27 21:34:50,781.781 INFO    ] ================================================
[2026-06-27 21:34:51,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:34:51
[2026-06-27 21:34:51,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:34:51,638.638 INFO    ] Initializing speech engine...
[2026-06-27 21:34:51,643.643 INFO    ] 2026-06-27 21:34:51
[2026-06-27 21:34:51,836.836 INFO    ] 2026-06-27 21:34:51
[2026-06-27 21:34:51,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:34:52,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:34:52,052.052 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:34:52,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:34:52,284.284 INFO    ] time= 27/06/2026 21:34:52
[2026-06-27 21:34:52,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:34:52,370.370 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:34:52,483.483 INFO    ] No existing commands found in stream
[2026-06-27 21:34:57,494.494 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:34:57,497.497 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-27 21:34:59,086.086 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 21:34:59,087.087 INFO    ] Checking for system updates...
[2026-06-27 21:34:59,108.108 INFO    ] 200
[2026-06-27 21:34:59,109.109 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:34:59,142.142 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:34:59,143.143 INFO    ] No update needed
[2026-06-27 21:34:59,145.145 INFO    ] Checking for camera pi updates...
[2026-06-27 21:34:59,164.164 INFO    ] 200
[2026-06-27 21:34:59,166.166 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:34:59,191.191 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:34:59,241.241 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:34:59,242.242 INFO    ] No camera update needed
[2026-06-27 21:34:59,244.244 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:34:59,246.246 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:34:59,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:34:59,253.253 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:35:01,291.291 INFO    ] ================================================
[2026-06-27 21:35:01,306.306 INFO    ] Launching Daemon at Sat Jun 27 21:35:01 IST 2026
[2026-06-27 21:35:01,317.317 INFO    ] ================================================
[2026-06-27 21:35:01,780.780 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:35:01
[2026-06-27 21:35:02,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:35:02,385.385 INFO    ] Initializing speech engine...
[2026-06-27 21:35:02,390.390 INFO    ] 2026-06-27 21:35:02
[2026-06-27 21:35:02,616.616 INFO    ] 2026-06-27 21:35:02
[2026-06-27 21:35:02,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:35:02,798.798 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:35:02,832.832 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:35:02,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:35:03,030.030 INFO    ] time= 27/06/2026 21:35:02
[2026-06-27 21:35:03,055.055 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:35:03,108.108 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:35:03,199.199 INFO    ] No existing commands found in stream
[2026-06-27 21:35:08,213.213 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:35:08,216.216 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-27 21:35:10,990.990 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 21:35:10,992.992 INFO    ] Checking for system updates...
[2026-06-27 21:35:11,013.013 INFO    ] 200
[2026-06-27 21:35:11,014.014 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:35:11,045.045 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:35:11,046.046 INFO    ] No update needed
[2026-06-27 21:35:11,047.047 INFO    ] Checking for camera pi updates...
[2026-06-27 21:35:11,067.067 INFO    ] 200
[2026-06-27 21:35:11,068.068 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:35:11,091.091 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:35:11,134.134 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:35:11,135.135 INFO    ] No camera update needed
[2026-06-27 21:35:11,136.136 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:35:11,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:35:11,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:35:11,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:35:13,188.188 INFO    ] ================================================
[2026-06-27 21:35:13,204.204 INFO    ] Launching Daemon at Sat Jun 27 21:35:13 IST 2026
[2026-06-27 21:35:13,217.217 INFO    ] ================================================
[2026-06-27 21:35:13,599.599 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:35:13
[2026-06-27 21:35:13,946.946 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:35:14,088.088 INFO    ] Initializing speech engine...
[2026-06-27 21:35:14,093.093 INFO    ] 2026-06-27 21:35:14
[2026-06-27 21:35:14,287.287 INFO    ] 2026-06-27 21:35:14
[2026-06-27 21:35:14,341.341 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:35:14,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:35:14,554.554 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:35:14,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:35:14,778.778 INFO    ] time= 27/06/2026 21:35:14
[2026-06-27 21:35:14,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:35:14,807.807 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:35:14,874.874 INFO    ] No existing commands found in stream
[2026-06-27 21:35:19,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:35:19,891.891 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-27 21:35:22,282.282 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 21:35:22,315.315 INFO    ] Checking for system updates...
[2026-06-27 21:35:22,339.339 INFO    ] 200
[2026-06-27 21:35:22,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:35:22,373.373 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:35:22,374.374 INFO    ] No update needed
[2026-06-27 21:35:22,376.376 INFO    ] Checking for camera pi updates...
[2026-06-27 21:35:22,397.397 INFO    ] 200
[2026-06-27 21:35:22,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:35:22,421.421 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:35:22,464.464 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:35:22,465.465 INFO    ] No camera update needed
[2026-06-27 21:35:22,467.467 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:35:22,468.468 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:35:22,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:35:22,474.474 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:35:24,512.512 INFO    ] ================================================
[2026-06-27 21:35:24,527.527 INFO    ] Launching Daemon at Sat Jun 27 21:35:24 IST 2026
[2026-06-27 21:35:24,538.538 INFO    ] ================================================
[2026-06-27 21:35:24,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:35:24
[2026-06-27 21:35:25,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:35:25,344.344 INFO    ] Initializing speech engine...
[2026-06-27 21:35:25,349.349 INFO    ] 2026-06-27 21:35:25
[2026-06-27 21:35:25,552.552 INFO    ] 2026-06-27 21:35:25
[2026-06-27 21:35:25,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:35:25,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:35:25,773.773 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:35:25,895.895 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:35:25,956.956 INFO    ] time= 27/06/2026 21:35:25
[2026-06-27 21:35:25,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:35:25,994.994 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:35:26,063.063 INFO    ] No existing commands found in stream
[2026-06-27 21:35:31,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:35:31,077.077 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-27 21:35:32,569.569 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 21:35:32,571.571 INFO    ] Checking for system updates...
[2026-06-27 21:35:32,607.607 INFO    ] 200
[2026-06-27 21:35:32,610.610 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:35:32,663.663 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:35:32,665.665 INFO    ] No update needed
[2026-06-27 21:35:32,667.667 INFO    ] Checking for camera pi updates...
[2026-06-27 21:35:32,686.686 INFO    ] 200
[2026-06-27 21:35:32,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:35:32,711.711 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:35:32,740.740 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:35:32,741.741 INFO    ] No camera update needed
[2026-06-27 21:35:32,743.743 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:35:32,744.744 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:35:32,747.747 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:35:32,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:35:34,788.788 INFO    ] ================================================
[2026-06-27 21:35:34,804.804 INFO    ] Launching Daemon at Sat Jun 27 21:35:34 IST 2026
[2026-06-27 21:35:34,814.814 INFO    ] ================================================
[2026-06-27 21:35:35,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:35:35
[2026-06-27 21:35:35,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:35:35,717.717 INFO    ] Initializing speech engine...
[2026-06-27 21:35:35,722.722 INFO    ] 2026-06-27 21:35:35
[2026-06-27 21:35:35,925.925 INFO    ] 2026-06-27 21:35:35
[2026-06-27 21:35:35,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:35:36,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:35:36,147.147 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:35:36,272.272 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:35:36,335.335 INFO    ] time= 27/06/2026 21:35:36
[2026-06-27 21:35:36,366.366 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:35:36,372.372 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:35:36,439.439 INFO    ] No existing commands found in stream
[2026-06-27 21:35:41,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:35:41,457.457 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-27 21:35:44,636.636 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 21:35:44,638.638 INFO    ] Checking for system updates...
[2026-06-27 21:35:44,659.659 INFO    ] 200
[2026-06-27 21:35:44,660.660 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:35:44,691.691 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:35:44,692.692 INFO    ] No update needed
[2026-06-27 21:35:44,694.694 INFO    ] Checking for camera pi updates...
[2026-06-27 21:35:44,716.716 INFO    ] 200
[2026-06-27 21:35:44,717.717 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:35:44,742.742 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:35:44,786.786 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:35:44,787.787 INFO    ] No camera update needed
[2026-06-27 21:35:44,788.788 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:35:44,789.789 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:35:44,793.793 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:35:44,795.795 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:35:46,834.834 INFO    ] ================================================
[2026-06-27 21:35:46,849.849 INFO    ] Launching Daemon at Sat Jun 27 21:35:46 IST 2026
[2026-06-27 21:35:46,860.860 INFO    ] ================================================
[2026-06-27 21:35:47,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:35:47
[2026-06-27 21:35:47,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:35:47,661.661 INFO    ] Initializing speech engine...
[2026-06-27 21:35:47,664.664 INFO    ] 2026-06-27 21:35:47
[2026-06-27 21:35:47,883.883 INFO    ] 2026-06-27 21:35:47
[2026-06-27 21:35:47,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:35:48,098.098 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:35:48,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:35:48,240.240 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:35:48,304.304 INFO    ] time= 27/06/2026 21:35:48
[2026-06-27 21:35:48,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:35:48,339.339 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:35:48,406.406 INFO    ] No existing commands found in stream
[2026-06-27 21:35:53,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:35:53,418.418 INFO    ] Waiting 3.04 seconds before fallback handling...
[2026-06-27 21:35:56,842.842 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 21:35:56,844.844 INFO    ] Checking for system updates...
[2026-06-27 21:35:56,864.864 INFO    ] 200
[2026-06-27 21:35:56,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:35:56,899.899 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:35:56,901.901 INFO    ] No update needed
[2026-06-27 21:35:56,902.902 INFO    ] Checking for camera pi updates...
[2026-06-27 21:35:56,921.921 INFO    ] 200
[2026-06-27 21:35:56,922.922 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:35:56,948.948 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:35:56,986.986 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:35:56,988.988 INFO    ] No camera update needed
[2026-06-27 21:35:56,989.989 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:35:56,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:35:56,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:35:56,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:35:59,035.035 INFO    ] ================================================
[2026-06-27 21:35:59,050.050 INFO    ] Launching Daemon at Sat Jun 27 21:35:59 IST 2026
[2026-06-27 21:35:59,061.061 INFO    ] ================================================
[2026-06-27 21:35:59,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:35:59
[2026-06-27 21:35:59,702.702 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:35:59,840.840 INFO    ] Initializing speech engine...
[2026-06-27 21:35:59,850.850 INFO    ] 2026-06-27 21:35:59
[2026-06-27 21:36:00,057.057 INFO    ] 2026-06-27 21:36:00
[2026-06-27 21:36:00,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:36:00,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:36:00,281.281 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:36:00,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:36:00,481.481 INFO    ] time= 27/06/2026 21:36:00
[2026-06-27 21:36:00,504.504 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:36:00,510.510 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:36:00,578.578 INFO    ] No existing commands found in stream
[2026-06-27 21:36:05,587.587 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:36:05,589.589 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-27 21:36:06,843.843 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 21:36:06,844.844 INFO    ] Checking for system updates...
[2026-06-27 21:36:06,865.865 INFO    ] 200
[2026-06-27 21:36:06,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:36:06,897.897 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:36:06,898.898 INFO    ] No update needed
[2026-06-27 21:36:06,899.899 INFO    ] Checking for camera pi updates...
[2026-06-27 21:36:06,919.919 INFO    ] 200
[2026-06-27 21:36:06,920.920 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:36:06,946.946 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:36:07,000.000 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:36:07,002.002 INFO    ] No camera update needed
[2026-06-27 21:36:07,003.003 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:36:07,004.004 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:36:07,007.007 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:36:07,010.010 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:36:09,048.048 INFO    ] ================================================
[2026-06-27 21:36:09,063.063 INFO    ] Launching Daemon at Sat Jun 27 21:36:09 IST 2026
[2026-06-27 21:36:09,074.074 INFO    ] ================================================
[2026-06-27 21:36:09,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:36:09
[2026-06-27 21:36:09,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:36:09,875.875 INFO    ] Initializing speech engine...
[2026-06-27 21:36:09,880.880 INFO    ] 2026-06-27 21:36:09
[2026-06-27 21:36:10,086.086 INFO    ] 2026-06-27 21:36:10
[2026-06-27 21:36:10,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:36:10,240.240 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:36:10,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:36:10,437.437 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:36:10,498.498 INFO    ] time= 27/06/2026 21:36:10
[2026-06-27 21:36:10,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:36:10,538.538 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:36:10,611.611 INFO    ] No existing commands found in stream
[2026-06-27 21:36:15,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:36:15,623.623 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-27 21:36:19,387.387 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:36:19,389.389 INFO    ] Checking for system updates...
[2026-06-27 21:36:19,411.411 INFO    ] 200
[2026-06-27 21:36:19,412.412 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:36:19,443.443 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:36:19,445.445 INFO    ] No update needed
[2026-06-27 21:36:19,446.446 INFO    ] Checking for camera pi updates...
[2026-06-27 21:36:19,466.466 INFO    ] 200
[2026-06-27 21:36:19,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:36:19,495.495 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:36:19,646.646 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:36:19,648.648 INFO    ] No camera update needed
[2026-06-27 21:36:19,649.649 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:36:19,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:36:19,653.653 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:36:19,656.656 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:36:21,694.694 INFO    ] ================================================
[2026-06-27 21:36:21,709.709 INFO    ] Launching Daemon at Sat Jun 27 21:36:21 IST 2026
[2026-06-27 21:36:21,720.720 INFO    ] ================================================
[2026-06-27 21:36:22,082.082 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:36:22
[2026-06-27 21:36:22,396.396 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:36:22,534.534 INFO    ] Initializing speech engine...
[2026-06-27 21:36:22,542.542 INFO    ] 2026-06-27 21:36:22
[2026-06-27 21:36:22,751.751 INFO    ] 2026-06-27 21:36:22
[2026-06-27 21:36:22,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:36:22,969.969 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:36:22,979.979 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:36:23,107.107 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:36:23,164.164 INFO    ] time= 27/06/2026 21:36:23
[2026-06-27 21:36:23,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:36:23,206.206 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:36:23,278.278 INFO    ] No existing commands found in stream
[2026-06-27 21:36:28,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:36:28,290.290 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-27 21:36:32,503.503 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 21:36:32,505.505 INFO    ] Checking for system updates...
[2026-06-27 21:36:32,529.529 INFO    ] 200
[2026-06-27 21:36:32,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:36:32,565.565 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:36:32,567.567 INFO    ] No update needed
[2026-06-27 21:36:32,568.568 INFO    ] Checking for camera pi updates...
[2026-06-27 21:36:32,590.590 INFO    ] 200
[2026-06-27 21:36:32,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:36:32,617.617 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:36:32,653.653 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:36:32,655.655 INFO    ] No camera update needed
[2026-06-27 21:36:32,657.657 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:36:32,659.659 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:36:32,663.663 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:36:32,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:36:34,706.706 INFO    ] ================================================
[2026-06-27 21:36:34,721.721 INFO    ] Launching Daemon at Sat Jun 27 21:36:34 IST 2026
[2026-06-27 21:36:34,732.732 INFO    ] ================================================
[2026-06-27 21:36:35,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:36:35
[2026-06-27 21:36:35,399.399 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:36:35,596.596 INFO    ] Initializing speech engine...
[2026-06-27 21:36:35,599.599 INFO    ] 2026-06-27 21:36:35
[2026-06-27 21:36:35,804.804 INFO    ] 2026-06-27 21:36:35
[2026-06-27 21:36:35,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:36:36,016.016 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:36:36,024.024 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:36:36,150.150 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:36:36,212.212 INFO    ] time= 27/06/2026 21:36:36
[2026-06-27 21:36:36,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:36:36,250.250 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:36:36,318.318 INFO    ] No existing commands found in stream
[2026-06-27 21:36:41,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:36:41,335.335 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-27 21:36:45,024.024 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 21:36:45,026.026 INFO    ] Checking for system updates...
[2026-06-27 21:36:45,048.048 INFO    ] 200
[2026-06-27 21:36:45,050.050 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:36:45,083.083 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:36:45,084.084 INFO    ] No update needed
[2026-06-27 21:36:45,086.086 INFO    ] Checking for camera pi updates...
[2026-06-27 21:36:45,107.107 INFO    ] 200
[2026-06-27 21:36:45,108.108 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:36:45,136.136 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:36:45,175.175 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:36:45,177.177 INFO    ] No camera update needed
[2026-06-27 21:36:45,178.178 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:36:45,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:36:45,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:36:45,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:36:47,225.225 INFO    ] ================================================
[2026-06-27 21:36:47,241.241 INFO    ] Launching Daemon at Sat Jun 27 21:36:47 IST 2026
[2026-06-27 21:36:47,253.253 INFO    ] ================================================
[2026-06-27 21:36:47,664.664 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:36:47
[2026-06-27 21:36:47,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:36:48,143.143 INFO    ] Initializing speech engine...
[2026-06-27 21:36:48,149.149 INFO    ] 2026-06-27 21:36:48
[2026-06-27 21:36:48,362.362 INFO    ] 2026-06-27 21:36:48
[2026-06-27 21:36:48,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:36:48,657.657 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:36:48,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:36:48,877.877 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:36:48,903.903 INFO    ] time= 27/06/2026 21:36:48
[2026-06-27 21:36:48,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:36:48,932.932 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:36:49,037.037 INFO    ] No existing commands found in stream
[2026-06-27 21:36:54,047.047 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:36:54,051.051 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-27 21:36:56,756.756 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 21:36:56,758.758 INFO    ] Checking for system updates...
[2026-06-27 21:36:56,780.780 INFO    ] 200
[2026-06-27 21:36:56,781.781 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:36:56,815.815 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:36:56,816.816 INFO    ] No update needed
[2026-06-27 21:36:56,818.818 INFO    ] Checking for camera pi updates...
[2026-06-27 21:36:56,839.839 INFO    ] 200
[2026-06-27 21:36:56,840.840 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:36:56,864.864 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:36:56,912.912 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:36:56,913.913 INFO    ] No camera update needed
[2026-06-27 21:36:56,915.915 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:36:56,916.916 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:36:56,919.919 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:36:56,922.922 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:36:58,961.961 INFO    ] ================================================
[2026-06-27 21:36:58,977.977 INFO    ] Launching Daemon at Sat Jun 27 21:36:58 IST 2026
[2026-06-27 21:36:58,988.988 INFO    ] ================================================
[2026-06-27 21:36:59,331.331 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:36:59
[2026-06-27 21:36:59,651.651 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:36:59,797.797 INFO    ] Initializing speech engine...
[2026-06-27 21:36:59,802.802 INFO    ] 2026-06-27 21:36:59
[2026-06-27 21:37:00,007.007 INFO    ] 2026-06-27 21:36:59
[2026-06-27 21:37:00,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:37:00,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:37:00,222.222 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:37:00,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:37:00,420.420 INFO    ] time= 27/06/2026 21:37:00
[2026-06-27 21:37:00,453.453 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:37:00,455.455 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:37:00,527.527 INFO    ] No existing commands found in stream
[2026-06-27 21:37:05,536.536 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:37:05,539.539 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-27 21:37:06,085.085 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 21:37:06,087.087 INFO    ] Checking for system updates...
[2026-06-27 21:37:06,107.107 INFO    ] 200
[2026-06-27 21:37:06,109.109 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:37:06,147.147 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:37:06,149.149 INFO    ] No update needed
[2026-06-27 21:37:06,151.151 INFO    ] Checking for camera pi updates...
[2026-06-27 21:37:06,180.180 INFO    ] 200
[2026-06-27 21:37:06,182.182 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:37:06,211.211 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:37:06,257.257 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:37:06,258.258 INFO    ] No camera update needed
[2026-06-27 21:37:06,259.259 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:37:06,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:37:06,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:37:06,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:37:08,305.305 INFO    ] ================================================
[2026-06-27 21:37:08,320.320 INFO    ] Launching Daemon at Sat Jun 27 21:37:08 IST 2026
[2026-06-27 21:37:08,331.331 INFO    ] ================================================
[2026-06-27 21:37:08,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:37:08
[2026-06-27 21:37:08,989.989 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:37:09,132.132 INFO    ] Initializing speech engine...
[2026-06-27 21:37:09,137.137 INFO    ] 2026-06-27 21:37:09
[2026-06-27 21:37:09,341.341 INFO    ] 2026-06-27 21:37:09
[2026-06-27 21:37:09,369.369 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:37:09,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:37:09,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:37:09,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:37:09,761.761 INFO    ] time= 27/06/2026 21:37:09
[2026-06-27 21:37:09,784.784 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:37:09,790.790 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:37:09,857.857 INFO    ] No existing commands found in stream
[2026-06-27 21:37:14,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:37:14,873.873 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-27 21:37:15,557.557 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:37:15,559.559 INFO    ] Checking for system updates...
[2026-06-27 21:37:15,581.581 INFO    ] 200
[2026-06-27 21:37:15,582.582 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:37:15,612.612 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:37:15,614.614 INFO    ] No update needed
[2026-06-27 21:37:15,615.615 INFO    ] Checking for camera pi updates...
[2026-06-27 21:37:15,637.637 INFO    ] 200
[2026-06-27 21:37:15,638.638 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:37:15,662.662 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:37:15,717.717 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:37:15,718.718 INFO    ] No camera update needed
[2026-06-27 21:37:15,719.719 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:37:15,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:37:15,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:37:15,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:37:17,765.765 INFO    ] ================================================
[2026-06-27 21:37:17,780.780 INFO    ] Launching Daemon at Sat Jun 27 21:37:17 IST 2026
[2026-06-27 21:37:17,791.791 INFO    ] ================================================
[2026-06-27 21:37:18,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:37:18
[2026-06-27 21:37:18,456.456 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:37:18,594.594 INFO    ] Initializing speech engine...
[2026-06-27 21:37:18,605.605 INFO    ] 2026-06-27 21:37:18
[2026-06-27 21:37:18,812.812 INFO    ] 2026-06-27 21:37:18
[2026-06-27 21:37:18,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:37:18,981.981 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:37:19,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:37:19,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:37:19,224.224 INFO    ] time= 27/06/2026 21:37:19
[2026-06-27 21:37:19,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:37:19,265.265 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:37:19,337.337 INFO    ] No existing commands found in stream
[2026-06-27 21:37:24,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:37:24,348.348 INFO    ] Waiting 0.94 seconds before fallback handling...
[2026-06-27 21:37:25,723.723 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 21:37:25,724.724 INFO    ] Checking for system updates...
[2026-06-27 21:37:25,745.745 INFO    ] 200
[2026-06-27 21:37:25,747.747 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:37:25,778.778 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:37:25,779.779 INFO    ] No update needed
[2026-06-27 21:37:25,780.780 INFO    ] Checking for camera pi updates...
[2026-06-27 21:37:25,800.800 INFO    ] 200
[2026-06-27 21:37:25,801.801 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:37:25,826.826 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:37:25,878.878 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:37:25,879.879 INFO    ] No camera update needed
[2026-06-27 21:37:25,880.880 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:37:25,881.881 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:37:25,884.884 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:37:25,887.887 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:37:27,927.927 INFO    ] ================================================
[2026-06-27 21:37:27,943.943 INFO    ] Launching Daemon at Sat Jun 27 21:37:27 IST 2026
[2026-06-27 21:37:27,954.954 INFO    ] ================================================
[2026-06-27 21:37:28,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:37:28
[2026-06-27 21:37:28,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:37:28,785.785 INFO    ] Initializing speech engine...
[2026-06-27 21:37:28,791.791 INFO    ] 2026-06-27 21:37:28
[2026-06-27 21:37:28,996.996 INFO    ] 2026-06-27 21:37:28
[2026-06-27 21:37:29,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:37:29,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:37:29,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:37:29,389.389 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:37:29,428.428 INFO    ] time= 27/06/2026 21:37:29
[2026-06-27 21:37:29,438.438 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:37:29,444.444 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:37:29,512.512 INFO    ] No existing commands found in stream
[2026-06-27 21:37:34,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:37:34,524.524 INFO    ] Waiting 3.64 seconds before fallback handling...
[2026-06-27 21:37:38,595.595 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 21:37:38,597.597 INFO    ] Checking for system updates...
[2026-06-27 21:37:38,618.618 INFO    ] 200
[2026-06-27 21:37:38,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:37:38,653.653 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:37:38,655.655 INFO    ] No update needed
[2026-06-27 21:37:38,656.656 INFO    ] Checking for camera pi updates...
[2026-06-27 21:37:38,676.676 INFO    ] 200
[2026-06-27 21:37:38,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:37:38,700.700 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:37:38,740.740 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:37:38,742.742 INFO    ] No camera update needed
[2026-06-27 21:37:38,743.743 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:37:38,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:37:38,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:37:38,750.750 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:37:40,790.790 INFO    ] ================================================
[2026-06-27 21:37:40,805.805 INFO    ] Launching Daemon at Sat Jun 27 21:37:40 IST 2026
[2026-06-27 21:37:40,815.815 INFO    ] ================================================
[2026-06-27 21:37:41,166.166 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:37:41
[2026-06-27 21:37:41,478.478 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:37:41,608.608 INFO    ] Initializing speech engine...
[2026-06-27 21:37:41,612.612 INFO    ] 2026-06-27 21:37:41
[2026-06-27 21:37:41,831.831 INFO    ] 2026-06-27 21:37:41
[2026-06-27 21:37:41,860.860 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:37:42,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:37:42,055.055 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:37:42,186.186 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:37:42,254.254 INFO    ] time= 27/06/2026 21:37:42
[2026-06-27 21:37:42,278.278 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:37:42,284.284 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:37:42,351.351 INFO    ] No existing commands found in stream
[2026-06-27 21:37:47,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:37:47,365.365 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-27 21:37:50,268.268 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 21:37:50,269.269 INFO    ] Checking for system updates...
[2026-06-27 21:37:50,290.290 INFO    ] 200
[2026-06-27 21:37:50,291.291 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:37:50,325.325 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:37:50,326.326 INFO    ] No update needed
[2026-06-27 21:37:50,328.328 INFO    ] Checking for camera pi updates...
[2026-06-27 21:37:50,347.347 INFO    ] 200
[2026-06-27 21:37:50,348.348 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:37:50,373.373 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:37:50,419.419 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:37:50,420.420 INFO    ] No camera update needed
[2026-06-27 21:37:50,422.422 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:37:50,423.423 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:37:50,426.426 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:37:50,429.429 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:37:52,461.461 INFO    ] ================================================
[2026-06-27 21:37:52,476.476 INFO    ] Launching Daemon at Sat Jun 27 21:37:52 IST 2026
[2026-06-27 21:37:52,487.487 INFO    ] ================================================
[2026-06-27 21:37:52,820.820 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:37:52
[2026-06-27 21:37:53,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:37:53,276.276 INFO    ] Initializing speech engine...
[2026-06-27 21:37:53,280.280 INFO    ] 2026-06-27 21:37:53
[2026-06-27 21:37:53,486.486 INFO    ] 2026-06-27 21:37:53
[2026-06-27 21:37:53,515.515 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:37:53,702.702 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:37:53,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:37:53,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:37:53,895.895 INFO    ] time= 27/06/2026 21:37:53
[2026-06-27 21:37:53,933.933 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:37:53,935.935 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:37:54,005.005 INFO    ] No existing commands found in stream
[2026-06-27 21:37:59,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:37:59,019.019 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-27 21:38:02,511.511 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:38:02,513.513 INFO    ] Checking for system updates...
[2026-06-27 21:38:02,535.535 INFO    ] 200
[2026-06-27 21:38:02,536.536 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:38:02,572.572 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:38:02,574.574 INFO    ] No update needed
[2026-06-27 21:38:02,576.576 INFO    ] Checking for camera pi updates...
[2026-06-27 21:38:02,602.602 INFO    ] 200
[2026-06-27 21:38:02,603.603 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:38:02,627.627 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:38:02,660.660 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:38:02,662.662 INFO    ] No camera update needed
[2026-06-27 21:38:02,663.663 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:38:02,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:38:02,667.667 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:38:02,670.670 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:38:04,709.709 INFO    ] ================================================
[2026-06-27 21:38:04,724.724 INFO    ] Launching Daemon at Sat Jun 27 21:38:04 IST 2026
[2026-06-27 21:38:04,736.736 INFO    ] ================================================
[2026-06-27 21:38:05,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:38:05
[2026-06-27 21:38:05,386.386 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:38:05,528.528 INFO    ] Initializing speech engine...
[2026-06-27 21:38:05,534.534 INFO    ] 2026-06-27 21:38:05
[2026-06-27 21:38:05,763.763 INFO    ] 2026-06-27 21:38:05
[2026-06-27 21:38:05,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:38:05,992.992 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:38:06,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:38:06,137.137 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:38:06,189.189 INFO    ] time= 27/06/2026 21:38:06
[2026-06-27 21:38:06,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:38:06,244.244 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:38:06,314.314 INFO    ] No existing commands found in stream
[2026-06-27 21:38:11,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:38:11,327.327 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-27 21:38:13,522.522 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 21:38:13,524.524 INFO    ] Checking for system updates...
[2026-06-27 21:38:13,545.545 INFO    ] 200
[2026-06-27 21:38:13,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:38:13,577.577 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:38:13,579.579 INFO    ] No update needed
[2026-06-27 21:38:13,580.580 INFO    ] Checking for camera pi updates...
[2026-06-27 21:38:13,600.600 INFO    ] 200
[2026-06-27 21:38:13,601.601 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:38:13,627.627 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:38:13,676.676 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:38:13,678.678 INFO    ] No camera update needed
[2026-06-27 21:38:13,679.679 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:38:13,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:38:13,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:38:13,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:38:15,726.726 INFO    ] ================================================
[2026-06-27 21:38:15,741.741 INFO    ] Launching Daemon at Sat Jun 27 21:38:15 IST 2026
[2026-06-27 21:38:15,752.752 INFO    ] ================================================
[2026-06-27 21:38:16,094.094 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:38:16
[2026-06-27 21:38:16,412.412 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:38:16,552.552 INFO    ] Initializing speech engine...
[2026-06-27 21:38:16,560.560 INFO    ] 2026-06-27 21:38:16
[2026-06-27 21:38:16,768.768 INFO    ] 2026-06-27 21:38:16
[2026-06-27 21:38:16,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:38:17,009.009 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:38:17,014.014 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:38:17,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:38:17,217.217 INFO    ] time= 27/06/2026 21:38:17
[2026-06-27 21:38:17,218.218 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:38:17,220.220 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:38:17,338.338 INFO    ] No existing commands found in stream
[2026-06-27 21:38:22,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:38:22,350.350 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-27 21:38:23,396.396 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 21:38:23,397.397 INFO    ] Checking for system updates...
[2026-06-27 21:38:23,419.419 INFO    ] 200
[2026-06-27 21:38:23,420.420 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:38:23,453.453 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:38:23,454.454 INFO    ] No update needed
[2026-06-27 21:38:23,456.456 INFO    ] Checking for camera pi updates...
[2026-06-27 21:38:23,475.475 INFO    ] 200
[2026-06-27 21:38:23,477.477 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:38:23,502.502 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:38:23,647.647 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:38:23,648.648 INFO    ] No camera update needed
[2026-06-27 21:38:23,650.650 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:38:23,651.651 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:38:23,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:38:23,658.658 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:38:25,698.698 INFO    ] ================================================
[2026-06-27 21:38:25,714.714 INFO    ] Launching Daemon at Sat Jun 27 21:38:25 IST 2026
[2026-06-27 21:38:25,725.725 INFO    ] ================================================
[2026-06-27 21:38:26,080.080 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:38:26
[2026-06-27 21:38:26,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:38:26,525.525 INFO    ] Initializing speech engine...
[2026-06-27 21:38:26,538.538 INFO    ] 2026-06-27 21:38:26
[2026-06-27 21:38:26,746.746 INFO    ] 2026-06-27 21:38:26
[2026-06-27 21:38:26,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:38:26,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:38:26,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:38:27,104.104 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:38:27,171.171 INFO    ] time= 27/06/2026 21:38:27
[2026-06-27 21:38:27,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:38:27,202.202 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:38:27,269.269 INFO    ] No existing commands found in stream
[2026-06-27 21:38:32,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:38:32,276.276 INFO    ] Waiting 0.48 seconds before fallback handling...
[2026-06-27 21:38:33,184.184 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 21:38:33,185.185 INFO    ] Checking for system updates...
[2026-06-27 21:38:33,206.206 INFO    ] 200
[2026-06-27 21:38:33,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:38:33,240.240 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:38:33,242.242 INFO    ] No update needed
[2026-06-27 21:38:33,243.243 INFO    ] Checking for camera pi updates...
[2026-06-27 21:38:33,262.262 INFO    ] 200
[2026-06-27 21:38:33,264.264 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:38:33,287.287 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:38:33,351.351 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:38:33,352.352 INFO    ] No camera update needed
[2026-06-27 21:38:33,353.353 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:38:33,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:38:33,358.358 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:38:33,360.360 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:38:35,401.401 INFO    ] ================================================
[2026-06-27 21:38:35,417.417 INFO    ] Launching Daemon at Sat Jun 27 21:38:35 IST 2026
[2026-06-27 21:38:35,428.428 INFO    ] ================================================
[2026-06-27 21:38:35,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:38:35
[2026-06-27 21:38:36,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:38:36,219.219 INFO    ] Initializing speech engine...
[2026-06-27 21:38:36,222.222 INFO    ] 2026-06-27 21:38:36
[2026-06-27 21:38:36,440.440 INFO    ] 2026-06-27 21:38:36
[2026-06-27 21:38:36,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:38:36,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:38:36,659.659 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:38:36,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:38:36,865.865 INFO    ] time= 27/06/2026 21:38:36
[2026-06-27 21:38:36,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:38:36,895.895 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:38:36,962.962 INFO    ] No existing commands found in stream
[2026-06-27 21:38:41,976.976 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:38:41,979.979 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-27 21:38:45,562.562 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 21:38:45,564.564 INFO    ] Checking for system updates...
[2026-06-27 21:38:45,585.585 INFO    ] 200
[2026-06-27 21:38:45,586.586 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:38:45,616.616 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:38:45,618.618 INFO    ] No update needed
[2026-06-27 21:38:45,619.619 INFO    ] Checking for camera pi updates...
[2026-06-27 21:38:45,639.639 INFO    ] 200
[2026-06-27 21:38:45,640.640 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:38:45,665.665 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:38:45,717.717 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:38:45,718.718 INFO    ] No camera update needed
[2026-06-27 21:38:45,719.719 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:38:45,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:38:45,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:38:45,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:38:47,765.765 INFO    ] ================================================
[2026-06-27 21:38:47,781.781 INFO    ] Launching Daemon at Sat Jun 27 21:38:47 IST 2026
[2026-06-27 21:38:47,792.792 INFO    ] ================================================
[2026-06-27 21:38:48,154.154 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:38:48
[2026-06-27 21:38:48,492.492 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:38:48,643.643 INFO    ] Initializing speech engine...
[2026-06-27 21:38:48,647.647 INFO    ] 2026-06-27 21:38:48
[2026-06-27 21:38:48,854.854 INFO    ] 2026-06-27 21:38:48
[2026-06-27 21:38:48,884.884 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:38:49,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:38:49,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:38:49,211.211 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:38:49,270.270 INFO    ] time= 27/06/2026 21:38:49
[2026-06-27 21:38:49,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:38:49,306.306 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:38:49,376.376 INFO    ] No existing commands found in stream
[2026-06-27 21:38:54,387.387 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:38:54,390.390 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-27 21:38:56,616.616 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 21:38:56,617.617 INFO    ] Checking for system updates...
[2026-06-27 21:38:56,639.639 INFO    ] 200
[2026-06-27 21:38:56,641.641 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:38:56,673.673 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:38:56,675.675 INFO    ] No update needed
[2026-06-27 21:38:56,676.676 INFO    ] Checking for camera pi updates...
[2026-06-27 21:38:56,696.696 INFO    ] 200
[2026-06-27 21:38:56,697.697 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:38:56,721.721 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:38:56,778.778 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:38:56,780.780 INFO    ] No camera update needed
[2026-06-27 21:38:56,781.781 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:38:56,782.782 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:38:56,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:38:56,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:38:58,828.828 INFO    ] ================================================
[2026-06-27 21:38:58,844.844 INFO    ] Launching Daemon at Sat Jun 27 21:38:58 IST 2026
[2026-06-27 21:38:58,855.855 INFO    ] ================================================
[2026-06-27 21:38:59,205.205 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:38:59
[2026-06-27 21:38:59,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:38:59,666.666 INFO    ] Initializing speech engine...
[2026-06-27 21:38:59,672.672 INFO    ] 2026-06-27 21:38:59
[2026-06-27 21:38:59,879.879 INFO    ] 2026-06-27 21:38:59
[2026-06-27 21:38:59,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:39:00,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:39:00,103.103 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:39:00,231.231 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:39:00,294.294 INFO    ] time= 27/06/2026 21:39:00
[2026-06-27 21:39:00,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:39:00,333.333 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:39:00,399.399 INFO    ] No existing commands found in stream
[2026-06-27 21:39:05,410.410 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:39:05,413.413 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-27 21:39:08,759.759 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 21:39:08,760.760 INFO    ] Checking for system updates...
[2026-06-27 21:39:08,782.782 INFO    ] 200
[2026-06-27 21:39:08,783.783 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:39:08,817.817 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:39:08,819.819 INFO    ] No update needed
[2026-06-27 21:39:08,820.820 INFO    ] Checking for camera pi updates...
[2026-06-27 21:39:08,840.840 INFO    ] 200
[2026-06-27 21:39:08,841.841 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:39:08,865.865 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:39:08,917.917 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:39:08,919.919 INFO    ] No camera update needed
[2026-06-27 21:39:08,920.920 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:39:08,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:39:08,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:39:08,928.928 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:39:10,968.968 INFO    ] ================================================
[2026-06-27 21:39:10,984.984 INFO    ] Launching Daemon at Sat Jun 27 21:39:10 IST 2026
[2026-06-27 21:39:11,995.995 INFO    ] ================================================
[2026-06-27 21:39:11,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:39:11
[2026-06-27 21:39:11,638.638 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:39:11,781.781 INFO    ] Initializing speech engine...
[2026-06-27 21:39:11,785.785 INFO    ] 2026-06-27 21:39:11
[2026-06-27 21:39:11,991.991 INFO    ] 2026-06-27 21:39:11
[2026-06-27 21:39:12,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:39:12,206.206 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:39:12,216.216 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:39:12,393.393 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:39:12,437.437 INFO    ] time= 27/06/2026 21:39:12
[2026-06-27 21:39:12,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:39:12,445.445 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:39:12,512.512 INFO    ] No existing commands found in stream
[2026-06-27 21:39:17,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:39:17,529.529 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-27 21:39:19,071.071 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 21:39:19,073.073 INFO    ] Checking for system updates...
[2026-06-27 21:39:19,095.095 INFO    ] 200
[2026-06-27 21:39:19,096.096 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:39:19,129.129 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:39:19,131.131 INFO    ] No update needed
[2026-06-27 21:39:19,132.132 INFO    ] Checking for camera pi updates...
[2026-06-27 21:39:19,151.151 INFO    ] 200
[2026-06-27 21:39:19,153.153 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:39:19,178.178 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:39:19,213.213 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:39:19,215.215 INFO    ] No camera update needed
[2026-06-27 21:39:19,216.216 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:39:19,217.217 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:39:19,220.220 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:39:19,223.223 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:39:21,264.264 INFO    ] ================================================
[2026-06-27 21:39:21,280.280 INFO    ] Launching Daemon at Sat Jun 27 21:39:21 IST 2026
[2026-06-27 21:39:21,291.291 INFO    ] ================================================
[2026-06-27 21:39:21,627.627 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:39:21
[2026-06-27 21:39:21,939.939 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:39:22,076.076 INFO    ] Initializing speech engine...
[2026-06-27 21:39:22,086.086 INFO    ] 2026-06-27 21:39:22
[2026-06-27 21:39:22,291.291 INFO    ] 2026-06-27 21:39:22
[2026-06-27 21:39:22,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:39:22,509.509 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:39:22,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:39:22,647.647 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:39:22,714.714 INFO    ] time= 27/06/2026 21:39:22
[2026-06-27 21:39:22,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:39:22,748.748 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:39:22,816.816 INFO    ] No existing commands found in stream
[2026-06-27 21:39:27,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:39:27,829.829 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-27 21:39:28,977.977 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 21:39:28,978.978 INFO    ] Checking for system updates...
[2026-06-27 21:39:28,999.999 INFO    ] 200
[2026-06-27 21:39:29,000.000 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:39:29,031.031 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:39:29,033.033 INFO    ] No update needed
[2026-06-27 21:39:29,035.035 INFO    ] Checking for camera pi updates...
[2026-06-27 21:39:29,055.055 INFO    ] 200
[2026-06-27 21:39:29,056.056 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:39:29,081.081 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:39:29,126.126 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:39:29,128.128 INFO    ] No camera update needed
[2026-06-27 21:39:29,129.129 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:39:29,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:39:29,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:39:29,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:39:31,163.163 INFO    ] ================================================
[2026-06-27 21:39:31,173.173 INFO    ] Launching Daemon at Sat Jun 27 21:39:31 IST 2026
[2026-06-27 21:39:31,179.179 INFO    ] ================================================
[2026-06-27 21:39:31,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:39:31
[2026-06-27 21:39:31,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:39:32,028.028 INFO    ] Initializing speech engine...
[2026-06-27 21:39:32,036.036 INFO    ] 2026-06-27 21:39:32
[2026-06-27 21:39:32,274.274 INFO    ] 2026-06-27 21:39:32
[2026-06-27 21:39:32,307.307 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:39:32,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:39:32,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:39:32,690.690 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:39:32,743.743 INFO    ] time= 27/06/2026 21:39:32
[2026-06-27 21:39:32,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:39:32,772.772 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:39:32,839.839 INFO    ] No existing commands found in stream
[2026-06-27 21:39:37,853.853 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:39:37,856.856 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-27 21:39:41,683.683 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 21:39:41,685.685 INFO    ] Checking for system updates...
[2026-06-27 21:39:41,706.706 INFO    ] 200
[2026-06-27 21:39:41,708.708 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:39:41,741.741 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:39:41,743.743 INFO    ] No update needed
[2026-06-27 21:39:41,745.745 INFO    ] Checking for camera pi updates...
[2026-06-27 21:39:41,766.766 INFO    ] 200
[2026-06-27 21:39:41,767.767 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:39:41,795.795 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:39:41,848.848 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:39:41,850.850 INFO    ] No camera update needed
[2026-06-27 21:39:41,851.851 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:39:41,853.853 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:39:41,856.856 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:39:41,859.859 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:39:43,901.901 INFO    ] ================================================
[2026-06-27 21:39:43,917.917 INFO    ] Launching Daemon at Sat Jun 27 21:39:43 IST 2026
[2026-06-27 21:39:43,928.928 INFO    ] ================================================
[2026-06-27 21:39:44,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:39:44
[2026-06-27 21:39:44,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:39:44,829.829 INFO    ] Initializing speech engine...
[2026-06-27 21:39:44,838.838 INFO    ] 2026-06-27 21:39:44
[2026-06-27 21:39:45,045.045 INFO    ] 2026-06-27 21:39:45
[2026-06-27 21:39:45,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:39:45,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:39:45,262.262 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:39:45,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:39:45,446.446 INFO    ] time= 27/06/2026 21:39:45
[2026-06-27 21:39:45,488.488 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:39:45,495.495 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:39:45,562.562 INFO    ] No existing commands found in stream
[2026-06-27 21:39:50,576.576 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:39:50,579.579 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-27 21:39:52,328.328 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:39:52,329.329 INFO    ] Checking for system updates...
[2026-06-27 21:39:52,352.352 INFO    ] 200
[2026-06-27 21:39:52,353.353 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:39:52,384.384 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:39:52,385.385 INFO    ] No update needed
[2026-06-27 21:39:52,387.387 INFO    ] Checking for camera pi updates...
[2026-06-27 21:39:52,407.407 INFO    ] 200
[2026-06-27 21:39:52,408.408 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:39:52,431.431 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:39:52,475.475 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:39:52,476.476 INFO    ] No camera update needed
[2026-06-27 21:39:52,478.478 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:39:52,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:39:52,482.482 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:39:52,485.485 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:39:54,524.524 INFO    ] ================================================
[2026-06-27 21:39:54,540.540 INFO    ] Launching Daemon at Sat Jun 27 21:39:54 IST 2026
[2026-06-27 21:39:54,551.551 INFO    ] ================================================
[2026-06-27 21:39:54,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:39:54
[2026-06-27 21:39:55,201.201 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:39:55,339.339 INFO    ] Initializing speech engine...
[2026-06-27 21:39:55,349.349 INFO    ] 2026-06-27 21:39:55
[2026-06-27 21:39:55,556.556 INFO    ] 2026-06-27 21:39:55
[2026-06-27 21:39:55,585.585 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:39:55,779.779 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:39:55,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:39:55,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:39:56,005.005 INFO    ] time= 27/06/2026 21:39:55
[2026-06-27 21:39:56,010.010 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:39:56,011.011 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:39:56,078.078 INFO    ] No existing commands found in stream
[2026-06-27 21:40:01,086.086 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:40:01,089.089 INFO    ] Waiting 2.46 seconds before fallback handling...
[2026-06-27 21:40:06,938.938 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 21:40:06,939.939 INFO    ] Checking for system updates...
[2026-06-27 21:40:06,959.959 INFO    ] 200
[2026-06-27 21:40:06,961.961 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:40:06,991.991 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:40:06,992.992 INFO    ] No update needed
[2026-06-27 21:40:06,994.994 INFO    ] Checking for camera pi updates...
[2026-06-27 21:40:07,014.014 INFO    ] 200
[2026-06-27 21:40:07,016.016 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:40:07,039.039 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:40:07,081.081 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:40:07,082.082 INFO    ] No camera update needed
[2026-06-27 21:40:07,084.084 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:40:07,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:40:07,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:40:07,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:40:09,130.130 INFO    ] ================================================
[2026-06-27 21:40:09,145.145 INFO    ] Launching Daemon at Sat Jun 27 21:40:09 IST 2026
[2026-06-27 21:40:09,157.157 INFO    ] ================================================
[2026-06-27 21:40:09,527.527 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:40:09
[2026-06-27 21:40:09,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:40:09,986.986 INFO    ] Initializing speech engine...
[2026-06-27 21:40:09,999.999 INFO    ] 2026-06-27 21:40:09
[2026-06-27 21:40:10,210.210 INFO    ] 2026-06-27 21:40:10
[2026-06-27 21:40:10,239.239 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:40:10,426.426 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:40:10,435.435 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:40:10,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:40:10,615.615 INFO    ] time= 27/06/2026 21:40:10
[2026-06-27 21:40:10,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:40:10,661.661 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:40:10,732.732 INFO    ] No existing commands found in stream
[2026-06-27 21:40:15,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:40:15,749.749 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-27 21:40:18,359.359 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 21:40:18,360.360 INFO    ] Checking for system updates...
[2026-06-27 21:40:18,382.382 INFO    ] 200
[2026-06-27 21:40:18,384.384 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:40:18,414.414 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:40:18,416.416 INFO    ] No update needed
[2026-06-27 21:40:18,417.417 INFO    ] Checking for camera pi updates...
[2026-06-27 21:40:18,436.436 INFO    ] 200
[2026-06-27 21:40:18,438.438 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:40:18,461.461 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:40:18,508.508 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:40:18,509.509 INFO    ] No camera update needed
[2026-06-27 21:40:18,510.510 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:40:18,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:40:18,515.515 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:40:18,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:40:20,557.557 INFO    ] ================================================
[2026-06-27 21:40:20,573.573 INFO    ] Launching Daemon at Sat Jun 27 21:40:20 IST 2026
[2026-06-27 21:40:20,583.583 INFO    ] ================================================
[2026-06-27 21:40:20,963.963 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:40:20
[2026-06-27 21:40:21,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:40:21,456.456 INFO    ] Initializing speech engine...
[2026-06-27 21:40:21,462.462 INFO    ] 2026-06-27 21:40:21
[2026-06-27 21:40:21,668.668 INFO    ] 2026-06-27 21:40:21
[2026-06-27 21:40:21,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:40:21,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:40:21,892.892 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:40:22,021.021 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:40:22,079.079 INFO    ] time= 27/06/2026 21:40:22
[2026-06-27 21:40:22,103.103 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:40:22,119.119 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:40:22,190.190 INFO    ] No existing commands found in stream
[2026-06-27 21:40:27,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:40:27,203.203 INFO    ] Waiting 3.18 seconds before fallback handling...
[2026-06-27 21:40:30,769.769 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:40:30,770.770 INFO    ] Checking for system updates...
[2026-06-27 21:40:30,792.792 INFO    ] 200
[2026-06-27 21:40:30,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:40:30,825.825 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:40:30,826.826 INFO    ] No update needed
[2026-06-27 21:40:30,827.827 INFO    ] Checking for camera pi updates...
[2026-06-27 21:40:30,847.847 INFO    ] 200
[2026-06-27 21:40:30,848.848 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:40:30,871.871 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:40:31,023.023 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:40:31,025.025 INFO    ] No camera update needed
[2026-06-27 21:40:31,026.026 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:40:31,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:40:31,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:40:31,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:40:33,079.079 INFO    ] ================================================
[2026-06-27 21:40:33,094.094 INFO    ] Launching Daemon at Sat Jun 27 21:40:33 IST 2026
[2026-06-27 21:40:33,106.106 INFO    ] ================================================
[2026-06-27 21:40:33,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:40:33
[2026-06-27 21:40:33,797.797 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:40:33,926.926 INFO    ] Initializing speech engine...
[2026-06-27 21:40:33,930.930 INFO    ] 2026-06-27 21:40:33
[2026-06-27 21:40:34,149.149 INFO    ] 2026-06-27 21:40:34
[2026-06-27 21:40:34,178.178 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:40:34,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:40:34,364.364 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:40:34,507.507 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:40:34,569.569 INFO    ] time= 27/06/2026 21:40:34
[2026-06-27 21:40:34,593.593 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:40:34,598.598 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:40:34,666.666 INFO    ] No existing commands found in stream
[2026-06-27 21:40:39,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:40:39,683.683 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-27 21:40:41,096.096 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 21:40:41,098.098 INFO    ] Checking for system updates...
[2026-06-27 21:40:41,118.118 INFO    ] 200
[2026-06-27 21:40:41,120.120 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:40:41,153.153 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:40:41,154.154 INFO    ] No update needed
[2026-06-27 21:40:41,156.156 INFO    ] Checking for camera pi updates...
[2026-06-27 21:40:41,175.175 INFO    ] 200
[2026-06-27 21:40:41,177.177 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:40:41,200.200 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:40:41,251.251 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:40:41,253.253 INFO    ] No camera update needed
[2026-06-27 21:40:41,254.254 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:40:41,255.255 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:40:41,258.258 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:40:41,261.261 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:40:43,299.299 INFO    ] ================================================
[2026-06-27 21:40:43,316.316 INFO    ] Launching Daemon at Sat Jun 27 21:40:43 IST 2026
[2026-06-27 21:40:43,327.327 INFO    ] ================================================
[2026-06-27 21:40:43,690.690 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:40:43
[2026-06-27 21:40:44,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:40:44,158.158 INFO    ] Initializing speech engine...
[2026-06-27 21:40:44,163.163 INFO    ] 2026-06-27 21:40:44
[2026-06-27 21:40:44,368.368 INFO    ] 2026-06-27 21:40:44
[2026-06-27 21:40:44,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:40:44,528.528 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:40:44,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:40:44,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:40:44,783.783 INFO    ] time= 27/06/2026 21:40:44
[2026-06-27 21:40:44,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:40:44,816.816 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:40:44,883.883 INFO    ] No existing commands found in stream
[2026-06-27 21:40:49,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:40:49,900.900 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-27 21:40:53,089.089 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:40:53,090.090 INFO    ] Checking for system updates...
[2026-06-27 21:40:53,111.111 INFO    ] 200
[2026-06-27 21:40:53,112.112 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:40:53,145.145 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:40:53,147.147 INFO    ] No update needed
[2026-06-27 21:40:53,148.148 INFO    ] Checking for camera pi updates...
[2026-06-27 21:40:53,167.167 INFO    ] 200
[2026-06-27 21:40:53,169.169 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:40:53,192.192 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:40:53,233.233 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:40:53,234.234 INFO    ] No camera update needed
[2026-06-27 21:40:53,236.236 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:40:53,237.237 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:40:53,240.240 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:40:53,243.243 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:40:55,282.282 INFO    ] ================================================
[2026-06-27 21:40:55,298.298 INFO    ] Launching Daemon at Sat Jun 27 21:40:55 IST 2026
[2026-06-27 21:40:55,311.311 INFO    ] ================================================
[2026-06-27 21:40:55,643.643 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:40:55
[2026-06-27 21:40:55,954.954 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:40:56,091.091 INFO    ] Initializing speech engine...
[2026-06-27 21:40:56,100.100 INFO    ] 2026-06-27 21:40:56
[2026-06-27 21:40:56,304.304 INFO    ] 2026-06-27 21:40:56
[2026-06-27 21:40:56,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:40:56,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:40:56,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:40:56,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:40:56,704.704 INFO    ] time= 27/06/2026 21:40:56
[2026-06-27 21:40:56,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:40:56,749.749 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:40:56,820.820 INFO    ] No existing commands found in stream
[2026-06-27 21:41:01,833.833 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:41:01,835.835 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-27 21:41:04,373.373 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 21:41:04,374.374 INFO    ] Checking for system updates...
[2026-06-27 21:41:04,397.397 INFO    ] 200
[2026-06-27 21:41:04,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:41:04,428.428 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:41:04,430.430 INFO    ] No update needed
[2026-06-27 21:41:04,431.431 INFO    ] Checking for camera pi updates...
[2026-06-27 21:41:04,450.450 INFO    ] 200
[2026-06-27 21:41:04,452.452 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:41:04,477.477 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:41:04,523.523 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:41:04,525.525 INFO    ] No camera update needed
[2026-06-27 21:41:04,527.527 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:41:04,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:41:04,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:41:04,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:41:06,576.576 INFO    ] ================================================
[2026-06-27 21:41:06,592.592 INFO    ] Launching Daemon at Sat Jun 27 21:41:06 IST 2026
[2026-06-27 21:41:06,603.603 INFO    ] ================================================
[2026-06-27 21:41:06,942.942 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:41:06
[2026-06-27 21:41:07,256.256 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:41:07,389.389 INFO    ] Initializing speech engine...
[2026-06-27 21:41:07,402.402 INFO    ] 2026-06-27 21:41:07
[2026-06-27 21:41:07,612.612 INFO    ] 2026-06-27 21:41:07
[2026-06-27 21:41:07,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:41:07,829.829 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:41:07,838.838 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:41:07,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:41:08,034.034 INFO    ] time= 27/06/2026 21:41:07
[2026-06-27 21:41:08,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:41:08,069.069 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:41:08,137.137 INFO    ] No existing commands found in stream
[2026-06-27 21:41:13,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:41:13,150.150 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-27 21:41:15,626.626 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 21:41:15,627.627 INFO    ] Checking for system updates...
[2026-06-27 21:41:15,649.649 INFO    ] 200
[2026-06-27 21:41:15,650.650 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:41:15,683.683 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:41:15,684.684 INFO    ] No update needed
[2026-06-27 21:41:15,686.686 INFO    ] Checking for camera pi updates...
[2026-06-27 21:41:15,706.706 INFO    ] 200
[2026-06-27 21:41:15,707.707 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:41:15,733.733 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:41:15,784.784 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:41:15,786.786 INFO    ] No camera update needed
[2026-06-27 21:41:15,787.787 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:41:15,788.788 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:41:15,791.791 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:41:15,794.794 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:41:17,834.834 INFO    ] ================================================
[2026-06-27 21:41:17,850.850 INFO    ] Launching Daemon at Sat Jun 27 21:41:17 IST 2026
[2026-06-27 21:41:17,861.861 INFO    ] ================================================
[2026-06-27 21:41:18,238.238 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:41:18
[2026-06-27 21:41:18,561.561 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:41:18,705.705 INFO    ] Initializing speech engine...
[2026-06-27 21:41:18,710.710 INFO    ] 2026-06-27 21:41:18
[2026-06-27 21:41:18,914.914 INFO    ] 2026-06-27 21:41:18
[2026-06-27 21:41:18,943.943 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:41:19,130.130 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:41:19,138.138 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:41:19,268.268 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:41:19,332.332 INFO    ] time= 27/06/2026 21:41:19
[2026-06-27 21:41:19,359.359 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:41:19,365.365 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:41:19,433.433 INFO    ] No existing commands found in stream
[2026-06-27 21:41:24,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:41:24,445.445 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-27 21:41:27,683.683 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 21:41:27,685.685 INFO    ] Checking for system updates...
[2026-06-27 21:41:27,706.706 INFO    ] 200
[2026-06-27 21:41:27,707.707 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:41:27,740.740 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:41:27,742.742 INFO    ] No update needed
[2026-06-27 21:41:27,743.743 INFO    ] Checking for camera pi updates...
[2026-06-27 21:41:27,763.763 INFO    ] 200
[2026-06-27 21:41:27,765.765 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:41:27,790.790 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:41:27,831.831 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:41:27,833.833 INFO    ] No camera update needed
[2026-06-27 21:41:27,838.838 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:41:27,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:41:27,843.843 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:41:27,846.846 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:41:29,886.886 INFO    ] ================================================
[2026-06-27 21:41:29,901.901 INFO    ] Launching Daemon at Sat Jun 27 21:41:29 IST 2026
[2026-06-27 21:41:29,912.912 INFO    ] ================================================
[2026-06-27 21:41:30,267.267 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:41:30
[2026-06-27 21:41:30,582.582 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:41:30,713.713 INFO    ] Initializing speech engine...
[2026-06-27 21:41:30,717.717 INFO    ] 2026-06-27 21:41:30
[2026-06-27 21:41:30,936.936 INFO    ] 2026-06-27 21:41:30
[2026-06-27 21:41:30,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:41:31,152.152 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:41:31,162.162 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:41:31,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:41:31,339.339 INFO    ] time= 27/06/2026 21:41:31
[2026-06-27 21:41:31,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:41:31,404.404 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:41:31,474.474 INFO    ] No existing commands found in stream
[2026-06-27 21:41:36,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:41:36,488.488 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-27 21:41:38,363.363 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 21:41:38,364.364 INFO    ] Checking for system updates...
[2026-06-27 21:41:38,385.385 INFO    ] 200
[2026-06-27 21:41:38,387.387 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:41:38,417.417 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:41:38,419.419 INFO    ] No update needed
[2026-06-27 21:41:38,420.420 INFO    ] Checking for camera pi updates...
[2026-06-27 21:41:38,441.441 INFO    ] 200
[2026-06-27 21:41:38,443.443 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:41:38,467.467 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:41:38,510.510 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:41:38,512.512 INFO    ] No camera update needed
[2026-06-27 21:41:38,513.513 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:41:38,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:41:38,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:41:38,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:41:40,562.562 INFO    ] ================================================
[2026-06-27 21:41:40,578.578 INFO    ] Launching Daemon at Sat Jun 27 21:41:40 IST 2026
[2026-06-27 21:41:40,589.589 INFO    ] ================================================
[2026-06-27 21:41:40,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:41:40
[2026-06-27 21:41:41,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:41:41,389.389 INFO    ] Initializing speech engine...
[2026-06-27 21:41:41,401.401 INFO    ] 2026-06-27 21:41:41
[2026-06-27 21:41:41,609.609 INFO    ] 2026-06-27 21:41:41
[2026-06-27 21:41:41,637.637 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:41:41,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:41:41,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:41:42,013.013 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:41:42,050.050 INFO    ] time= 27/06/2026 21:41:42
[2026-06-27 21:41:42,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:41:42,058.058 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:41:42,149.149 INFO    ] No existing commands found in stream
[2026-06-27 21:41:47,158.158 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:41:47,161.161 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-27 21:41:47,932.932 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 21:41:47,934.934 INFO    ] Checking for system updates...
[2026-06-27 21:41:47,956.956 INFO    ] 200
[2026-06-27 21:41:47,957.957 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:41:47,988.988 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:41:47,989.989 INFO    ] No update needed
[2026-06-27 21:41:47,990.990 INFO    ] Checking for camera pi updates...
[2026-06-27 21:41:48,009.009 INFO    ] 200
[2026-06-27 21:41:48,011.011 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:41:48,034.034 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:41:48,085.085 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:41:48,087.087 INFO    ] No camera update needed
[2026-06-27 21:41:48,088.088 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:41:48,089.089 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:41:48,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:41:48,095.095 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:41:50,138.138 INFO    ] ================================================
[2026-06-27 21:41:50,153.153 INFO    ] Launching Daemon at Sat Jun 27 21:41:50 IST 2026
[2026-06-27 21:41:50,165.165 INFO    ] ================================================
[2026-06-27 21:41:50,557.557 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:41:50
[2026-06-27 21:41:50,902.902 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:41:51,057.057 INFO    ] Initializing speech engine...
[2026-06-27 21:41:51,063.063 INFO    ] 2026-06-27 21:41:51
[2026-06-27 21:41:51,275.275 INFO    ] 2026-06-27 21:41:51
[2026-06-27 21:41:51,306.306 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:41:51,498.498 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:41:51,508.508 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:41:51,659.659 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:41:51,708.708 INFO    ] time= 27/06/2026 21:41:51
[2026-06-27 21:41:51,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:41:51,737.737 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:41:51,805.805 INFO    ] No existing commands found in stream
[2026-06-27 21:41:56,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:41:56,817.817 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-27 21:41:59,714.714 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 21:41:59,715.715 INFO    ] Checking for system updates...
[2026-06-27 21:41:59,738.738 INFO    ] 200
[2026-06-27 21:41:59,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:41:59,770.770 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:41:59,771.771 INFO    ] No update needed
[2026-06-27 21:41:59,773.773 INFO    ] Checking for camera pi updates...
[2026-06-27 21:41:59,792.792 INFO    ] 200
[2026-06-27 21:41:59,794.794 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:41:59,819.819 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:41:59,870.870 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:41:59,871.871 INFO    ] No camera update needed
[2026-06-27 21:41:59,873.873 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:41:59,874.874 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:41:59,877.877 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:41:59,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:42:01,912.912 INFO    ] ================================================
[2026-06-27 21:42:01,926.926 INFO    ] Launching Daemon at Sat Jun 27 21:42:01 IST 2026
[2026-06-27 21:42:01,937.937 INFO    ] ================================================
[2026-06-27 21:42:02,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:42:02
[2026-06-27 21:42:02,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:42:02,785.785 INFO    ] Initializing speech engine...
[2026-06-27 21:42:02,798.798 INFO    ] 2026-06-27 21:42:02
[2026-06-27 21:42:03,007.007 INFO    ] 2026-06-27 21:42:02
[2026-06-27 21:42:03,037.037 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:42:03,223.223 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:42:03,226.226 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:42:03,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:42:03,413.413 INFO    ] time= 27/06/2026 21:42:03
[2026-06-27 21:42:03,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:42:03,459.459 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:42:03,535.535 INFO    ] No existing commands found in stream
[2026-06-27 21:42:08,568.568 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:42:08,571.571 INFO    ] Waiting 1.00 seconds before fallback handling...
[2026-06-27 21:42:10,029.029 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:42:10,030.030 INFO    ] Checking for system updates...
[2026-06-27 21:42:10,051.051 INFO    ] 200
[2026-06-27 21:42:10,053.053 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:42:10,085.085 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:42:10,087.087 INFO    ] No update needed
[2026-06-27 21:42:10,088.088 INFO    ] Checking for camera pi updates...
[2026-06-27 21:42:10,109.109 INFO    ] 200
[2026-06-27 21:42:10,111.111 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:42:10,135.135 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:42:10,187.187 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:42:10,188.188 INFO    ] No camera update needed
[2026-06-27 21:42:10,190.190 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:42:10,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:42:10,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:42:10,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:42:12,239.239 INFO    ] ================================================
[2026-06-27 21:42:12,255.255 INFO    ] Launching Daemon at Sat Jun 27 21:42:12 IST 2026
[2026-06-27 21:42:12,267.267 INFO    ] ================================================
[2026-06-27 21:42:12,605.605 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:42:12
[2026-06-27 21:42:12,925.925 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:42:13,070.070 INFO    ] Initializing speech engine...
[2026-06-27 21:42:13,074.074 INFO    ] 2026-06-27 21:42:13
[2026-06-27 21:42:13,281.281 INFO    ] 2026-06-27 21:42:13
[2026-06-27 21:42:13,310.310 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:42:13,494.494 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:42:13,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:42:13,645.645 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:42:13,704.704 INFO    ] time= 27/06/2026 21:42:13
[2026-06-27 21:42:13,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:42:13,732.732 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:42:13,799.799 INFO    ] No existing commands found in stream
[2026-06-27 21:42:18,814.814 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:42:18,817.817 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-27 21:42:22,991.991 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 21:42:22,993.993 INFO    ] Checking for system updates...
[2026-06-27 21:42:23,014.014 INFO    ] 200
[2026-06-27 21:42:23,016.016 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:42:23,047.047 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:42:23,048.048 INFO    ] No update needed
[2026-06-27 21:42:23,049.049 INFO    ] Checking for camera pi updates...
[2026-06-27 21:42:23,069.069 INFO    ] 200
[2026-06-27 21:42:23,071.071 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:42:23,095.095 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:42:23,143.143 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:42:23,145.145 INFO    ] No camera update needed
[2026-06-27 21:42:23,146.146 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:42:23,148.148 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:42:23,151.151 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:42:23,154.154 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:42:25,195.195 INFO    ] ================================================
[2026-06-27 21:42:25,211.211 INFO    ] Launching Daemon at Sat Jun 27 21:42:25 IST 2026
[2026-06-27 21:42:25,222.222 INFO    ] ================================================
[2026-06-27 21:42:25,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:42:25
[2026-06-27 21:42:25,899.899 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:42:26,042.042 INFO    ] Initializing speech engine...
[2026-06-27 21:42:26,047.047 INFO    ] 2026-06-27 21:42:26
[2026-06-27 21:42:26,252.252 INFO    ] 2026-06-27 21:42:26
[2026-06-27 21:42:26,280.280 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:42:26,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:42:26,473.473 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:42:26,652.652 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:42:26,675.675 INFO    ] time= 27/06/2026 21:42:26
[2026-06-27 21:42:26,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:42:26,697.697 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:42:26,762.762 INFO    ] No existing commands found in stream
[2026-06-27 21:42:31,772.772 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:42:31,774.774 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-27 21:42:34,583.583 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 21:42:34,584.584 INFO    ] Checking for system updates...
[2026-06-27 21:42:34,605.605 INFO    ] 200
[2026-06-27 21:42:34,607.607 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:42:34,637.637 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:42:34,639.639 INFO    ] No update needed
[2026-06-27 21:42:34,640.640 INFO    ] Checking for camera pi updates...
[2026-06-27 21:42:34,660.660 INFO    ] 200
[2026-06-27 21:42:34,662.662 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:42:34,687.687 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:42:34,836.836 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:42:34,837.837 INFO    ] No camera update needed
[2026-06-27 21:42:34,838.838 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:42:34,840.840 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:42:34,842.842 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:42:34,845.845 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:42:36,887.887 INFO    ] ================================================
[2026-06-27 21:42:36,902.902 INFO    ] Launching Daemon at Sat Jun 27 21:42:36 IST 2026
[2026-06-27 21:42:36,913.913 INFO    ] ================================================
[2026-06-27 21:42:37,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:42:37
[2026-06-27 21:42:37,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:42:37,811.811 INFO    ] Initializing speech engine...
[2026-06-27 21:42:37,817.817 INFO    ] 2026-06-27 21:42:37
[2026-06-27 21:42:38,028.028 INFO    ] 2026-06-27 21:42:38
[2026-06-27 21:42:38,058.058 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:42:38,245.245 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:42:38,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:42:38,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:42:38,436.436 INFO    ] time= 27/06/2026 21:42:38
[2026-06-27 21:42:38,479.479 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:42:38,481.481 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:42:38,553.553 INFO    ] No existing commands found in stream
[2026-06-27 21:42:43,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:42:43,570.570 INFO    ] Waiting 2.33 seconds before fallback handling...
[2026-06-27 21:42:46,343.343 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:42:46,344.344 INFO    ] Checking for system updates...
[2026-06-27 21:42:46,365.365 INFO    ] 200
[2026-06-27 21:42:46,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:42:46,397.397 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:42:46,399.399 INFO    ] No update needed
[2026-06-27 21:42:46,400.400 INFO    ] Checking for camera pi updates...
[2026-06-27 21:42:46,420.420 INFO    ] 200
[2026-06-27 21:42:46,421.421 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:42:46,444.444 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:42:46,489.489 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:42:46,490.490 INFO    ] No camera update needed
[2026-06-27 21:42:46,491.491 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:42:46,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:42:46,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:42:46,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:42:48,536.536 INFO    ] ================================================
[2026-06-27 21:42:48,551.551 INFO    ] Launching Daemon at Sat Jun 27 21:42:48 IST 2026
[2026-06-27 21:42:48,562.562 INFO    ] ================================================
[2026-06-27 21:42:48,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:42:48
[2026-06-27 21:42:49,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:42:49,358.358 INFO    ] Initializing speech engine...
[2026-06-27 21:42:49,368.368 INFO    ] 2026-06-27 21:42:49
[2026-06-27 21:42:49,568.568 INFO    ] 2026-06-27 21:42:49
[2026-06-27 21:42:49,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:42:49,814.814 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:42:49,824.824 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:42:50,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:42:50,042.042 INFO    ] time= 27/06/2026 21:42:50
[2026-06-27 21:42:50,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:42:50,050.050 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:42:50,115.115 INFO    ] No existing commands found in stream
[2026-06-27 21:42:55,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:42:55,128.128 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-27 21:42:56,483.483 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 21:42:56,484.484 INFO    ] Checking for system updates...
[2026-06-27 21:42:56,505.505 INFO    ] 200
[2026-06-27 21:42:56,506.506 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:42:56,536.536 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:42:56,538.538 INFO    ] No update needed
[2026-06-27 21:42:56,539.539 INFO    ] Checking for camera pi updates...
[2026-06-27 21:42:56,559.559 INFO    ] 200
[2026-06-27 21:42:56,560.560 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:42:56,583.583 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:42:56,633.633 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:42:56,634.634 INFO    ] No camera update needed
[2026-06-27 21:42:56,635.635 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:42:56,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:42:56,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:42:56,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:42:58,683.683 INFO    ] ================================================
[2026-06-27 21:42:58,699.699 INFO    ] Launching Daemon at Sat Jun 27 21:42:58 IST 2026
[2026-06-27 21:42:58,711.711 INFO    ] ================================================
[2026-06-27 21:42:59,097.097 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:42:59
[2026-06-27 21:42:59,443.443 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:42:59,587.587 INFO    ] Initializing speech engine...
[2026-06-27 21:42:59,600.600 INFO    ] 2026-06-27 21:42:59
[2026-06-27 21:42:59,815.815 INFO    ] 2026-06-27 21:42:59
[2026-06-27 21:42:59,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:43:00,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:43:00,042.042 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:43:00,225.225 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:43:00,264.264 INFO    ] time= 27/06/2026 21:43:00
[2026-06-27 21:43:00,270.270 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:43:00,272.272 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:43:00,340.340 INFO    ] No existing commands found in stream
[2026-06-27 21:43:05,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:43:05,353.353 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-27 21:43:09,643.643 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 21:43:09,645.645 INFO    ] Checking for system updates...
[2026-06-27 21:43:09,666.666 INFO    ] 200
[2026-06-27 21:43:09,668.668 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:43:09,699.699 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:43:09,701.701 INFO    ] No update needed
[2026-06-27 21:43:09,703.703 INFO    ] Checking for camera pi updates...
[2026-06-27 21:43:09,723.723 INFO    ] 200
[2026-06-27 21:43:09,724.724 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:43:09,748.748 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:43:09,788.788 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:43:09,789.789 INFO    ] No camera update needed
[2026-06-27 21:43:09,791.791 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:43:09,792.792 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:43:09,795.795 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:43:09,798.798 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:43:11,837.837 INFO    ] ================================================
[2026-06-27 21:43:11,853.853 INFO    ] Launching Daemon at Sat Jun 27 21:43:11 IST 2026
[2026-06-27 21:43:11,865.865 INFO    ] ================================================
[2026-06-27 21:43:12,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:43:12
[2026-06-27 21:43:12,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:43:12,662.662 INFO    ] Initializing speech engine...
[2026-06-27 21:43:12,675.675 INFO    ] 2026-06-27 21:43:12
[2026-06-27 21:43:12,881.881 INFO    ] 2026-06-27 21:43:12
[2026-06-27 21:43:12,911.911 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:43:13,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:43:13,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:43:13,252.252 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:43:13,300.300 INFO    ] time= 27/06/2026 21:43:13
[2026-06-27 21:43:13,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:43:13,329.329 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:43:13,395.395 INFO    ] No existing commands found in stream
[2026-06-27 21:43:18,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:43:18,408.408 INFO    ] Waiting 3.52 seconds before fallback handling...
[2026-06-27 21:43:22,382.382 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 21:43:22,384.384 INFO    ] Checking for system updates...
[2026-06-27 21:43:22,404.404 INFO    ] 200
[2026-06-27 21:43:22,406.406 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:43:22,439.439 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:43:22,440.440 INFO    ] No update needed
[2026-06-27 21:43:22,441.441 INFO    ] Checking for camera pi updates...
[2026-06-27 21:43:22,465.465 INFO    ] 200
[2026-06-27 21:43:22,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:43:22,492.492 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:43:22,544.544 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:43:22,546.546 INFO    ] No camera update needed
[2026-06-27 21:43:22,547.547 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:43:22,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:43:22,552.552 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:43:22,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:43:24,595.595 INFO    ] ================================================
[2026-06-27 21:43:24,611.611 INFO    ] Launching Daemon at Sat Jun 27 21:43:24 IST 2026
[2026-06-27 21:43:24,622.622 INFO    ] ================================================
[2026-06-27 21:43:24,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:43:24
[2026-06-27 21:43:25,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:43:25,467.467 INFO    ] Initializing speech engine...
[2026-06-27 21:43:25,472.472 INFO    ] 2026-06-27 21:43:25
[2026-06-27 21:43:25,675.675 INFO    ] 2026-06-27 21:43:25
[2026-06-27 21:43:25,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:43:25,886.886 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:43:25,895.895 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:43:26,025.025 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:43:26,091.091 INFO    ] time= 27/06/2026 21:43:26
[2026-06-27 21:43:26,116.116 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:43:26,121.121 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:43:26,188.188 INFO    ] No existing commands found in stream
[2026-06-27 21:43:31,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:43:31,200.200 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-27 21:43:35,168.168 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 21:43:35,171.171 INFO    ] Checking for system updates...
[2026-06-27 21:43:35,208.208 INFO    ] 200
[2026-06-27 21:43:35,210.210 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:43:35,257.257 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:43:35,259.259 INFO    ] No update needed
[2026-06-27 21:43:35,260.260 INFO    ] Checking for camera pi updates...
[2026-06-27 21:43:35,282.282 INFO    ] 200
[2026-06-27 21:43:35,283.283 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:43:35,306.306 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:43:35,351.351 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:43:35,353.353 INFO    ] No camera update needed
[2026-06-27 21:43:35,354.354 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:43:35,355.355 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:43:35,359.359 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:43:35,362.362 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:43:37,401.401 INFO    ] ================================================
[2026-06-27 21:43:37,417.417 INFO    ] Launching Daemon at Sat Jun 27 21:43:37 IST 2026
[2026-06-27 21:43:37,428.428 INFO    ] ================================================
[2026-06-27 21:43:37,789.789 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:43:37
[2026-06-27 21:43:38,105.105 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:43:38,238.238 INFO    ] Initializing speech engine...
[2026-06-27 21:43:38,251.251 INFO    ] 2026-06-27 21:43:38
[2026-06-27 21:43:38,459.459 INFO    ] 2026-06-27 21:43:38
[2026-06-27 21:43:38,489.489 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:43:38,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:43:38,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:43:38,829.829 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:43:38,883.883 INFO    ] time= 27/06/2026 21:43:38
[2026-06-27 21:43:38,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:43:38,912.912 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:43:39,003.003 INFO    ] No existing commands found in stream
[2026-06-27 21:43:44,017.017 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:43:44,020.020 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-27 21:43:48,456.456 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 21:43:48,458.458 INFO    ] Checking for system updates...
[2026-06-27 21:43:48,478.478 INFO    ] 200
[2026-06-27 21:43:48,480.480 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:43:48,510.510 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:43:48,511.511 INFO    ] No update needed
[2026-06-27 21:43:48,512.512 INFO    ] Checking for camera pi updates...
[2026-06-27 21:43:48,534.534 INFO    ] 200
[2026-06-27 21:43:48,535.535 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:43:48,558.558 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:43:48,600.600 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:43:48,601.601 INFO    ] No camera update needed
[2026-06-27 21:43:48,602.602 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:43:48,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:43:48,607.607 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:43:48,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:43:50,647.647 INFO    ] ================================================
[2026-06-27 21:43:50,663.663 INFO    ] Launching Daemon at Sat Jun 27 21:43:50 IST 2026
[2026-06-27 21:43:50,675.675 INFO    ] ================================================
[2026-06-27 21:43:51,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:43:51
[2026-06-27 21:43:51,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:43:51,504.504 INFO    ] Initializing speech engine...
[2026-06-27 21:43:51,509.509 INFO    ] 2026-06-27 21:43:51
[2026-06-27 21:43:51,716.716 INFO    ] 2026-06-27 21:43:51
[2026-06-27 21:43:51,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:43:51,933.933 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:43:51,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:43:52,089.089 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:43:52,144.144 INFO    ] time= 27/06/2026 21:43:52
[2026-06-27 21:43:52,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:43:52,172.172 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:43:52,264.264 INFO    ] No existing commands found in stream
[2026-06-27 21:43:57,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:43:57,280.280 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-27 21:43:59,802.802 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 21:43:59,803.803 INFO    ] Checking for system updates...
[2026-06-27 21:43:59,825.825 INFO    ] 200
[2026-06-27 21:43:59,827.827 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:43:59,860.860 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:43:59,861.861 INFO    ] No update needed
[2026-06-27 21:43:59,863.863 INFO    ] Checking for camera pi updates...
[2026-06-27 21:43:59,882.882 INFO    ] 200
[2026-06-27 21:43:59,883.883 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:43:59,907.907 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:43:59,959.959 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:43:59,960.960 INFO    ] No camera update needed
[2026-06-27 21:43:59,961.961 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:43:59,963.963 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:43:59,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:43:59,969.969 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:44:02,002.002 INFO    ] ================================================
[2026-06-27 21:44:02,016.016 INFO    ] Launching Daemon at Sat Jun 27 21:44:02 IST 2026
[2026-06-27 21:44:02,028.028 INFO    ] ================================================
[2026-06-27 21:44:02,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:44:02
[2026-06-27 21:44:02,695.695 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:44:02,824.824 INFO    ] Initializing speech engine...
[2026-06-27 21:44:02,833.833 INFO    ] 2026-06-27 21:44:02
[2026-06-27 21:44:03,046.046 INFO    ] 2026-06-27 21:44:03
[2026-06-27 21:44:03,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:44:03,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:44:03,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:44:03,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:44:03,483.483 INFO    ] time= 27/06/2026 21:44:03
[2026-06-27 21:44:03,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:44:03,494.494 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:44:03,559.559 INFO    ] No existing commands found in stream
[2026-06-27 21:44:08,569.569 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:44:08,572.572 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-27 21:44:09,692.692 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:44:09,693.693 INFO    ] Checking for system updates...
[2026-06-27 21:44:09,714.714 INFO    ] 200
[2026-06-27 21:44:09,716.716 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:44:09,746.746 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:44:09,747.747 INFO    ] No update needed
[2026-06-27 21:44:09,749.749 INFO    ] Checking for camera pi updates...
[2026-06-27 21:44:09,770.770 INFO    ] 200
[2026-06-27 21:44:09,772.772 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:44:09,795.795 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:44:09,841.841 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:44:09,843.843 INFO    ] No camera update needed
[2026-06-27 21:44:09,844.844 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:44:09,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:44:09,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:44:09,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:44:11,890.890 INFO    ] ================================================
[2026-06-27 21:44:11,906.906 INFO    ] Launching Daemon at Sat Jun 27 21:44:11 IST 2026
[2026-06-27 21:44:11,918.918 INFO    ] ================================================
[2026-06-27 21:44:12,279.279 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:44:12
[2026-06-27 21:44:12,599.599 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:44:12,738.738 INFO    ] Initializing speech engine...
[2026-06-27 21:44:12,748.748 INFO    ] 2026-06-27 21:44:12
[2026-06-27 21:44:12,954.954 INFO    ] 2026-06-27 21:44:12
[2026-06-27 21:44:12,982.982 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:44:13,165.165 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:44:13,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:44:13,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:44:13,393.393 INFO    ] time= 27/06/2026 21:44:13
[2026-06-27 21:44:13,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:44:13,401.401 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:44:13,468.468 INFO    ] No existing commands found in stream
[2026-06-27 21:44:18,477.477 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:44:18,480.480 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-27 21:44:22,573.573 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 21:44:22,575.575 INFO    ] Checking for system updates...
[2026-06-27 21:44:22,595.595 INFO    ] 200
[2026-06-27 21:44:22,597.597 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:44:22,627.627 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:44:22,628.628 INFO    ] No update needed
[2026-06-27 21:44:22,630.630 INFO    ] Checking for camera pi updates...
[2026-06-27 21:44:22,651.651 INFO    ] 200
[2026-06-27 21:44:22,652.652 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:44:22,678.678 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:44:22,727.727 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:44:22,729.729 INFO    ] No camera update needed
[2026-06-27 21:44:22,730.730 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:44:22,731.731 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:44:22,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:44:22,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:44:24,778.778 INFO    ] ================================================
[2026-06-27 21:44:24,792.792 INFO    ] Launching Daemon at Sat Jun 27 21:44:24 IST 2026
[2026-06-27 21:44:24,803.803 INFO    ] ================================================
[2026-06-27 21:44:25,156.156 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:44:25
[2026-06-27 21:44:25,469.469 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:44:25,626.626 INFO    ] Initializing speech engine...
[2026-06-27 21:44:25,632.632 INFO    ] 2026-06-27 21:44:25
[2026-06-27 21:44:25,833.833 INFO    ] 2026-06-27 21:44:25
[2026-06-27 21:44:25,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:44:26,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:44:26,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:44:26,222.222 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:44:26,261.261 INFO    ] time= 27/06/2026 21:44:26
[2026-06-27 21:44:26,277.277 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:44:26,284.284 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:44:26,349.349 INFO    ] No existing commands found in stream
[2026-06-27 21:44:31,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:44:31,361.361 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-27 21:44:32,584.584 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 21:44:32,586.586 INFO    ] Checking for system updates...
[2026-06-27 21:44:32,607.607 INFO    ] 200
[2026-06-27 21:44:32,608.608 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:44:32,641.641 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:44:32,643.643 INFO    ] No update needed
[2026-06-27 21:44:32,644.644 INFO    ] Checking for camera pi updates...
[2026-06-27 21:44:32,664.664 INFO    ] 200
[2026-06-27 21:44:32,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:44:32,689.689 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:44:32,730.730 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:44:32,731.731 INFO    ] No camera update needed
[2026-06-27 21:44:32,732.732 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:44:32,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:44:32,737.737 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:44:32,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:44:34,780.780 INFO    ] ================================================
[2026-06-27 21:44:34,795.795 INFO    ] Launching Daemon at Sat Jun 27 21:44:34 IST 2026
[2026-06-27 21:44:34,806.806 INFO    ] ================================================
[2026-06-27 21:44:35,137.137 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:44:35
[2026-06-27 21:44:35,452.452 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:44:35,611.611 INFO    ] Initializing speech engine...
[2026-06-27 21:44:35,617.617 INFO    ] 2026-06-27 21:44:35
[2026-06-27 21:44:35,830.830 INFO    ] 2026-06-27 21:44:35
[2026-06-27 21:44:35,858.858 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:44:36,048.048 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:44:36,059.059 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:44:36,258.258 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:44:36,283.283 INFO    ] time= 27/06/2026 21:44:36
[2026-06-27 21:44:36,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:44:36,290.290 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:44:36,359.359 INFO    ] No existing commands found in stream
[2026-06-27 21:44:41,373.373 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:44:41,377.377 INFO    ] Waiting 3.32 seconds before fallback handling...
[2026-06-27 21:44:45,097.097 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 21:44:45,098.098 INFO    ] Checking for system updates...
[2026-06-27 21:44:45,120.120 INFO    ] 200
[2026-06-27 21:44:45,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:44:45,153.153 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:44:45,155.155 INFO    ] No update needed
[2026-06-27 21:44:45,156.156 INFO    ] Checking for camera pi updates...
[2026-06-27 21:44:45,176.176 INFO    ] 200
[2026-06-27 21:44:45,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:44:45,204.204 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:44:45,343.343 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:44:45,345.345 INFO    ] No camera update needed
[2026-06-27 21:44:45,346.346 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:44:45,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:44:45,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:44:45,354.354 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:44:47,393.393 INFO    ] ================================================
[2026-06-27 21:44:47,409.409 INFO    ] Launching Daemon at Sat Jun 27 21:44:47 IST 2026
[2026-06-27 21:44:47,420.420 INFO    ] ================================================
[2026-06-27 21:44:47,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:44:47
[2026-06-27 21:44:48,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:44:48,241.241 INFO    ] Initializing speech engine...
[2026-06-27 21:44:48,245.245 INFO    ] 2026-06-27 21:44:48
[2026-06-27 21:44:48,448.448 INFO    ] 2026-06-27 21:44:48
[2026-06-27 21:44:48,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:44:48,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:44:48,671.671 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:44:48,852.852 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:44:48,886.886 INFO    ] time= 27/06/2026 21:44:48
[2026-06-27 21:44:48,892.892 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:44:48,897.897 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:44:48,987.987 INFO    ] No existing commands found in stream
[2026-06-27 21:44:53,996.996 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:44:53,999.999 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-27 21:44:57,688.688 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:44:57,690.690 INFO    ] Checking for system updates...
[2026-06-27 21:44:57,711.711 INFO    ] 200
[2026-06-27 21:44:57,713.713 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:44:57,748.748 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:44:57,749.749 INFO    ] No update needed
[2026-06-27 21:44:57,751.751 INFO    ] Checking for camera pi updates...
[2026-06-27 21:44:57,775.775 INFO    ] 200
[2026-06-27 21:44:57,776.776 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:44:57,802.802 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:44:57,845.845 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:44:57,846.846 INFO    ] No camera update needed
[2026-06-27 21:44:57,848.848 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:44:57,849.849 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:44:57,852.852 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:44:57,856.856 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:44:59,897.897 INFO    ] ================================================
[2026-06-27 21:44:59,912.912 INFO    ] Launching Daemon at Sat Jun 27 21:44:59 IST 2026
[2026-06-27 21:44:59,922.922 INFO    ] ================================================
[2026-06-27 21:45:00,320.320 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:45:00
[2026-06-27 21:45:00,633.633 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:45:00,774.774 INFO    ] Initializing speech engine...
[2026-06-27 21:45:00,779.779 INFO    ] 2026-06-27 21:45:00
[2026-06-27 21:45:00,983.983 INFO    ] 2026-06-27 21:45:00
[2026-06-27 21:45:01,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:45:01,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:45:01,204.204 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:45:01,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:45:01,402.402 INFO    ] time= 27/06/2026 21:45:01
[2026-06-27 21:45:01,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:45:01,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:45:01,496.496 INFO    ] No existing commands found in stream
[2026-06-27 21:45:06,505.505 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:45:06,508.508 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-27 21:45:07,874.874 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 21:45:07,875.875 INFO    ] Checking for system updates...
[2026-06-27 21:45:07,896.896 INFO    ] 200
[2026-06-27 21:45:07,897.897 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:45:07,927.927 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:45:07,929.929 INFO    ] No update needed
[2026-06-27 21:45:07,930.930 INFO    ] Checking for camera pi updates...
[2026-06-27 21:45:07,950.950 INFO    ] 200
[2026-06-27 21:45:07,951.951 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:45:07,979.979 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:45:08,047.047 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:45:08,048.048 INFO    ] No camera update needed
[2026-06-27 21:45:08,049.049 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:45:08,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:45:08,054.054 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:45:08,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:45:10,095.095 INFO    ] ================================================
[2026-06-27 21:45:10,109.109 INFO    ] Launching Daemon at Sat Jun 27 21:45:10 IST 2026
[2026-06-27 21:45:10,120.120 INFO    ] ================================================
[2026-06-27 21:45:10,478.478 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:45:10
[2026-06-27 21:45:10,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:45:10,929.929 INFO    ] Initializing speech engine...
[2026-06-27 21:45:10,937.937 INFO    ] 2026-06-27 21:45:10
[2026-06-27 21:45:11,151.151 INFO    ] 2026-06-27 21:45:11
[2026-06-27 21:45:11,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:45:11,366.366 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:45:11,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:45:11,502.502 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:45:11,563.563 INFO    ] time= 27/06/2026 21:45:11
[2026-06-27 21:45:11,592.592 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:45:11,597.597 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:45:11,668.668 INFO    ] No existing commands found in stream
[2026-06-27 21:45:16,677.677 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:45:16,680.680 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-27 21:45:19,699.699 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 21:45:19,700.700 INFO    ] Checking for system updates...
[2026-06-27 21:45:19,722.722 INFO    ] 200
[2026-06-27 21:45:19,723.723 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:45:19,758.758 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:45:19,759.759 INFO    ] No update needed
[2026-06-27 21:45:19,760.760 INFO    ] Checking for camera pi updates...
[2026-06-27 21:45:19,782.782 INFO    ] 200
[2026-06-27 21:45:19,783.783 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:45:19,806.806 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:45:19,850.850 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:45:19,852.852 INFO    ] No camera update needed
[2026-06-27 21:45:19,853.853 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:45:19,854.854 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:45:19,857.857 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:45:19,861.861 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:45:21,891.891 INFO    ] ================================================
[2026-06-27 21:45:21,900.900 INFO    ] Launching Daemon at Sat Jun 27 21:45:21 IST 2026
[2026-06-27 21:45:21,906.906 INFO    ] ================================================
[2026-06-27 21:45:22,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:45:22
[2026-06-27 21:45:22,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:45:22,680.680 INFO    ] Initializing speech engine...
[2026-06-27 21:45:22,685.685 INFO    ] 2026-06-27 21:45:22
[2026-06-27 21:45:22,904.904 INFO    ] 2026-06-27 21:45:22
[2026-06-27 21:45:22,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:45:23,121.121 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:45:23,131.131 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:45:23,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:45:23,353.353 INFO    ] time= 27/06/2026 21:45:23
[2026-06-27 21:45:23,358.358 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:45:23,360.360 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:45:23,427.427 INFO    ] No existing commands found in stream
[2026-06-27 21:45:28,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:45:28,439.439 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-27 21:45:30,938.938 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 21:45:30,940.940 INFO    ] Checking for system updates...
[2026-06-27 21:45:30,960.960 INFO    ] 200
[2026-06-27 21:45:30,962.962 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:45:30,997.997 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:45:30,999.999 INFO    ] No update needed
[2026-06-27 21:45:31,000.000 INFO    ] Checking for camera pi updates...
[2026-06-27 21:45:31,021.021 INFO    ] 200
[2026-06-27 21:45:31,023.023 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:45:31,046.046 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:45:31,092.092 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:45:31,094.094 INFO    ] No camera update needed
[2026-06-27 21:45:31,095.095 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:45:31,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:45:31,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:45:31,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:45:33,136.136 INFO    ] ================================================
[2026-06-27 21:45:33,151.151 INFO    ] Launching Daemon at Sat Jun 27 21:45:33 IST 2026
[2026-06-27 21:45:33,162.162 INFO    ] ================================================
[2026-06-27 21:45:33,533.533 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:45:33
[2026-06-27 21:45:33,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:45:33,978.978 INFO    ] Initializing speech engine...
[2026-06-27 21:45:33,982.982 INFO    ] 2026-06-27 21:45:33
[2026-06-27 21:45:34,177.177 INFO    ] 2026-06-27 21:45:34
[2026-06-27 21:45:34,224.224 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:45:34,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:45:34,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:45:34,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:45:34,492.492 INFO    ] time= 27/06/2026 21:45:34
[2026-06-27 21:45:34,525.525 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:45:34,562.562 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:45:34,687.687 INFO    ] No existing commands found in stream
[2026-06-27 21:45:39,700.700 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:45:39,703.703 INFO    ] Waiting 2.81 seconds before fallback handling...
[2026-06-27 21:45:42,971.971 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 21:45:42,973.973 INFO    ] Checking for system updates...
[2026-06-27 21:45:42,995.995 INFO    ] 200
[2026-06-27 21:45:42,996.996 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:45:43,027.027 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:45:43,028.028 INFO    ] No update needed
[2026-06-27 21:45:43,029.029 INFO    ] Checking for camera pi updates...
[2026-06-27 21:45:43,049.049 INFO    ] 200
[2026-06-27 21:45:43,050.050 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:45:43,078.078 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:45:43,127.127 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:45:43,128.128 INFO    ] No camera update needed
[2026-06-27 21:45:43,130.130 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:45:43,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:45:43,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:45:43,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:45:45,175.175 INFO    ] ================================================
[2026-06-27 21:45:45,190.190 INFO    ] Launching Daemon at Sat Jun 27 21:45:45 IST 2026
[2026-06-27 21:45:45,201.201 INFO    ] ================================================
[2026-06-27 21:45:45,567.567 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:45:45
[2026-06-27 21:45:45,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:45:46,022.022 INFO    ] Initializing speech engine...
[2026-06-27 21:45:46,032.032 INFO    ] 2026-06-27 21:45:46
[2026-06-27 21:45:46,237.237 INFO    ] 2026-06-27 21:45:46
[2026-06-27 21:45:46,265.265 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:45:46,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:45:46,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:45:46,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:45:46,653.653 INFO    ] time= 27/06/2026 21:45:46
[2026-06-27 21:45:46,676.676 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:45:46,681.681 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:45:46,748.748 INFO    ] No existing commands found in stream
[2026-06-27 21:45:51,757.757 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:45:51,760.760 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-27 21:45:52,224.224 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 21:45:52,226.226 INFO    ] Checking for system updates...
[2026-06-27 21:45:52,248.248 INFO    ] 200
[2026-06-27 21:45:52,249.249 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:45:52,281.281 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:45:52,282.282 INFO    ] No update needed
[2026-06-27 21:45:52,284.284 INFO    ] Checking for camera pi updates...
[2026-06-27 21:45:52,304.304 INFO    ] 200
[2026-06-27 21:45:52,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:45:52,331.331 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:45:52,376.376 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:45:52,378.378 INFO    ] No camera update needed
[2026-06-27 21:45:52,379.379 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:45:52,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:45:52,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:45:52,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:45:54,428.428 INFO    ] ================================================
[2026-06-27 21:45:54,443.443 INFO    ] Launching Daemon at Sat Jun 27 21:45:54 IST 2026
[2026-06-27 21:45:54,455.455 INFO    ] ================================================
[2026-06-27 21:45:54,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:45:54
[2026-06-27 21:45:55,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:45:55,293.293 INFO    ] Initializing speech engine...
[2026-06-27 21:45:55,298.298 INFO    ] 2026-06-27 21:45:55
[2026-06-27 21:45:55,504.504 INFO    ] 2026-06-27 21:45:55
[2026-06-27 21:45:55,533.533 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:45:55,729.729 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:45:55,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:45:55,924.924 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:45:55,949.949 INFO    ] time= 27/06/2026 21:45:55
[2026-06-27 21:45:55,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:45:55,957.957 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:45:56,024.024 INFO    ] No existing commands found in stream
[2026-06-27 21:46:01,039.039 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:46:01,042.042 INFO    ] Waiting 1.48 seconds before fallback handling...
[2026-06-27 21:46:02,943.943 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 21:46:02,945.945 INFO    ] Checking for system updates...
[2026-06-27 21:46:02,967.967 INFO    ] 200
[2026-06-27 21:46:02,969.969 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:46:03,002.002 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:46:03,003.003 INFO    ] No update needed
[2026-06-27 21:46:03,005.005 INFO    ] Checking for camera pi updates...
[2026-06-27 21:46:03,025.025 INFO    ] 200
[2026-06-27 21:46:03,026.026 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:46:03,051.051 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:46:03,091.091 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:46:03,093.093 INFO    ] No camera update needed
[2026-06-27 21:46:03,094.094 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:46:03,096.096 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:46:03,099.099 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:46:03,102.102 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:46:05,142.142 INFO    ] ================================================
[2026-06-27 21:46:05,158.158 INFO    ] Launching Daemon at Sat Jun 27 21:46:05 IST 2026
[2026-06-27 21:46:05,170.170 INFO    ] ================================================
[2026-06-27 21:46:05,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:46:05
[2026-06-27 21:46:05,853.853 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:46:05,986.986 INFO    ] Initializing speech engine...
[2026-06-27 21:46:05,998.998 INFO    ] 2026-06-27 21:46:05
[2026-06-27 21:46:06,207.207 INFO    ] 2026-06-27 21:46:06
[2026-06-27 21:46:06,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:46:06,428.428 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:46:06,434.434 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:46:06,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:46:06,651.651 INFO    ] time= 27/06/2026 21:46:06
[2026-06-27 21:46:06,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:46:06,658.658 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:46:06,726.726 INFO    ] No existing commands found in stream
[2026-06-27 21:46:11,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:46:11,748.748 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-27 21:46:13,448.448 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 21:46:13,450.450 INFO    ] Checking for system updates...
[2026-06-27 21:46:13,472.472 INFO    ] 200
[2026-06-27 21:46:13,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:46:13,505.505 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:46:13,506.506 INFO    ] No update needed
[2026-06-27 21:46:13,508.508 INFO    ] Checking for camera pi updates...
[2026-06-27 21:46:13,529.529 INFO    ] 200
[2026-06-27 21:46:13,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:46:13,557.557 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:46:13,598.598 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:46:13,599.599 INFO    ] No camera update needed
[2026-06-27 21:46:13,601.601 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:46:13,602.602 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:46:13,605.605 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:46:13,608.608 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:46:15,648.648 INFO    ] ================================================
[2026-06-27 21:46:15,663.663 INFO    ] Launching Daemon at Sat Jun 27 21:46:15 IST 2026
[2026-06-27 21:46:15,674.674 INFO    ] ================================================
[2026-06-27 21:46:16,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:46:16
[2026-06-27 21:46:16,326.326 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:46:16,459.459 INFO    ] Initializing speech engine...
[2026-06-27 21:46:16,469.469 INFO    ] 2026-06-27 21:46:16
[2026-06-27 21:46:16,658.658 INFO    ] 2026-06-27 21:46:16
[2026-06-27 21:46:16,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:46:16,926.926 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:46:16,930.930 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:46:17,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:46:17,131.131 INFO    ] time= 27/06/2026 21:46:17
[2026-06-27 21:46:17,165.165 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:46:17,177.177 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:46:17,252.252 INFO    ] No existing commands found in stream
[2026-06-27 21:46:22,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:46:22,266.266 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-27 21:46:24,571.571 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 21:46:24,573.573 INFO    ] Checking for system updates...
[2026-06-27 21:46:24,598.598 INFO    ] 200
[2026-06-27 21:46:24,600.600 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:46:24,632.632 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:46:24,633.633 INFO    ] No update needed
[2026-06-27 21:46:24,635.635 INFO    ] Checking for camera pi updates...
[2026-06-27 21:46:24,654.654 INFO    ] 200
[2026-06-27 21:46:24,656.656 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:46:24,679.679 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:46:24,722.722 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:46:24,723.723 INFO    ] No camera update needed
[2026-06-27 21:46:24,724.724 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:46:24,726.726 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:46:24,729.729 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:46:24,731.731 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:46:26,770.770 INFO    ] ================================================
[2026-06-27 21:46:26,785.785 INFO    ] Launching Daemon at Sat Jun 27 21:46:26 IST 2026
[2026-06-27 21:46:26,796.796 INFO    ] ================================================
[2026-06-27 21:46:27,163.163 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:46:27
[2026-06-27 21:46:27,504.504 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:46:27,649.649 INFO    ] Initializing speech engine...
[2026-06-27 21:46:27,659.659 INFO    ] 2026-06-27 21:46:27
[2026-06-27 21:46:27,868.868 INFO    ] 2026-06-27 21:46:27
[2026-06-27 21:46:27,896.896 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:46:28,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:46:28,093.093 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:46:28,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:46:28,294.294 INFO    ] time= 27/06/2026 21:46:28
[2026-06-27 21:46:28,310.310 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:46:28,316.316 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:46:28,383.383 INFO    ] No existing commands found in stream
[2026-06-27 21:46:33,392.392 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:46:33,396.396 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-27 21:46:37,608.608 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 21:46:37,610.610 INFO    ] Checking for system updates...
[2026-06-27 21:46:37,631.631 INFO    ] 200
[2026-06-27 21:46:37,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:46:37,663.663 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:46:37,665.665 INFO    ] No update needed
[2026-06-27 21:46:37,666.666 INFO    ] Checking for camera pi updates...
[2026-06-27 21:46:37,687.687 INFO    ] 200
[2026-06-27 21:46:37,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:46:37,713.713 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:46:37,754.754 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:46:37,755.755 INFO    ] No camera update needed
[2026-06-27 21:46:37,757.757 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:46:37,758.758 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:46:37,761.761 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:46:37,764.764 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:46:39,802.802 INFO    ] ================================================
[2026-06-27 21:46:39,817.817 INFO    ] Launching Daemon at Sat Jun 27 21:46:39 IST 2026
[2026-06-27 21:46:39,828.828 INFO    ] ================================================
[2026-06-27 21:46:40,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:46:40
[2026-06-27 21:46:40,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:46:40,647.647 INFO    ] Initializing speech engine...
[2026-06-27 21:46:40,651.651 INFO    ] 2026-06-27 21:46:40
[2026-06-27 21:46:40,857.857 INFO    ] 2026-06-27 21:46:40
[2026-06-27 21:46:40,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:46:41,070.070 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:46:41,080.080 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:46:41,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:46:41,272.272 INFO    ] time= 27/06/2026 21:46:41
[2026-06-27 21:46:41,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:46:41,306.306 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:46:41,373.373 INFO    ] No existing commands found in stream
[2026-06-27 21:46:46,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:46:46,385.385 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-27 21:46:50,591.591 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 21:46:50,592.592 INFO    ] Checking for system updates...
[2026-06-27 21:46:50,613.613 INFO    ] 200
[2026-06-27 21:46:50,615.615 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:46:50,655.655 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:46:50,657.657 INFO    ] No update needed
[2026-06-27 21:46:50,659.659 INFO    ] Checking for camera pi updates...
[2026-06-27 21:46:50,685.685 INFO    ] 200
[2026-06-27 21:46:50,686.686 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:46:50,714.714 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:46:50,854.854 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:46:50,855.855 INFO    ] No camera update needed
[2026-06-27 21:46:50,857.857 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:46:50,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:46:50,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:46:50,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:46:52,888.888 INFO    ] ================================================
[2026-06-27 21:46:52,898.898 INFO    ] Launching Daemon at Sat Jun 27 21:46:52 IST 2026
[2026-06-27 21:46:52,905.905 INFO    ] ================================================
[2026-06-27 21:46:53,220.220 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:46:53
[2026-06-27 21:46:53,539.539 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:46:53,686.686 INFO    ] Initializing speech engine...
[2026-06-27 21:46:53,690.690 INFO    ] 2026-06-27 21:46:53
[2026-06-27 21:46:53,896.896 INFO    ] 2026-06-27 21:46:53
[2026-06-27 21:46:53,924.924 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:46:54,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:46:54,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:46:54,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:46:54,340.340 INFO    ] time= 27/06/2026 21:46:54
[2026-06-27 21:46:54,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:46:54,407.407 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:46:54,469.469 INFO    ] No existing commands found in stream
[2026-06-27 21:46:59,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:46:59,483.483 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-27 21:47:01,861.861 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 21:47:01,864.864 INFO    ] Checking for system updates...
[2026-06-27 21:47:01,892.892 INFO    ] 200
[2026-06-27 21:47:01,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:47:01,935.935 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:47:01,937.937 INFO    ] No update needed
[2026-06-27 21:47:01,939.939 INFO    ] Checking for camera pi updates...
[2026-06-27 21:47:01,966.966 INFO    ] 200
[2026-06-27 21:47:01,968.968 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:47:02,002.002 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:47:02,102.102 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:47:02,104.104 INFO    ] No camera update needed
[2026-06-27 21:47:02,106.106 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:47:02,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:47:02,112.112 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:47:02,116.116 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:47:04,156.156 INFO    ] ================================================
[2026-06-27 21:47:04,171.171 INFO    ] Launching Daemon at Sat Jun 27 21:47:04 IST 2026
[2026-06-27 21:47:04,183.183 INFO    ] ================================================
[2026-06-27 21:47:04,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:47:04
[2026-06-27 21:47:04,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:47:04,971.971 INFO    ] Initializing speech engine...
[2026-06-27 21:47:04,976.976 INFO    ] 2026-06-27 21:47:04
[2026-06-27 21:47:05,180.180 INFO    ] 2026-06-27 21:47:05
[2026-06-27 21:47:05,208.208 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:47:05,336.336 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:47:05,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:47:05,542.542 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:47:05,608.608 INFO    ] time= 27/06/2026 21:47:05
[2026-06-27 21:47:05,635.635 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:47:05,641.641 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:47:05,708.708 INFO    ] No existing commands found in stream
[2026-06-27 21:47:10,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:47:10,720.720 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-27 21:47:12,106.106 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:47:12,108.108 INFO    ] Checking for system updates...
[2026-06-27 21:47:12,129.129 INFO    ] 200
[2026-06-27 21:47:12,131.131 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:47:12,162.162 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:47:12,164.164 INFO    ] No update needed
[2026-06-27 21:47:12,165.165 INFO    ] Checking for camera pi updates...
[2026-06-27 21:47:12,185.185 INFO    ] 200
[2026-06-27 21:47:12,186.186 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:47:12,210.210 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:47:12,269.269 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:47:12,270.270 INFO    ] No camera update needed
[2026-06-27 21:47:12,271.271 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:47:12,272.272 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:47:12,276.276 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:47:12,278.278 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:47:14,318.318 INFO    ] ================================================
[2026-06-27 21:47:14,338.338 INFO    ] Launching Daemon at Sat Jun 27 21:47:14 IST 2026
[2026-06-27 21:47:14,349.349 INFO    ] ================================================
[2026-06-27 21:47:14,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:47:14
[2026-06-27 21:47:15,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:47:15,172.172 INFO    ] Initializing speech engine...
[2026-06-27 21:47:15,182.182 INFO    ] 2026-06-27 21:47:15
[2026-06-27 21:47:15,385.385 INFO    ] 2026-06-27 21:47:15
[2026-06-27 21:47:15,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:47:15,599.599 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:47:15,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:47:15,789.789 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:47:15,830.830 INFO    ] time= 27/06/2026 21:47:15
[2026-06-27 21:47:15,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:47:15,841.841 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:47:15,909.909 INFO    ] No existing commands found in stream
[2026-06-27 21:47:20,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:47:20,927.927 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-27 21:47:25,162.162 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 21:47:25,164.164 INFO    ] Checking for system updates...
[2026-06-27 21:47:25,185.185 INFO    ] 200
[2026-06-27 21:47:25,186.186 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:47:25,222.222 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:47:25,223.223 INFO    ] No update needed
[2026-06-27 21:47:25,225.225 INFO    ] Checking for camera pi updates...
[2026-06-27 21:47:25,244.244 INFO    ] 200
[2026-06-27 21:47:25,246.246 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:47:25,269.269 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:47:25,312.312 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:47:25,314.314 INFO    ] No camera update needed
[2026-06-27 21:47:25,315.315 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:47:25,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:47:25,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:47:25,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:47:27,361.361 INFO    ] ================================================
[2026-06-27 21:47:27,376.376 INFO    ] Launching Daemon at Sat Jun 27 21:47:27 IST 2026
[2026-06-27 21:47:27,387.387 INFO    ] ================================================
[2026-06-27 21:47:27,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:47:27
[2026-06-27 21:47:28,031.031 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:47:28,162.162 INFO    ] Initializing speech engine...
[2026-06-27 21:47:28,165.165 INFO    ] 2026-06-27 21:47:28
[2026-06-27 21:47:28,386.386 INFO    ] 2026-06-27 21:47:28
[2026-06-27 21:47:28,415.415 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:47:28,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:47:28,611.611 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:47:28,735.735 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:47:28,806.806 INFO    ] time= 27/06/2026 21:47:28
[2026-06-27 21:47:28,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:47:28,836.836 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:47:28,909.909 INFO    ] No existing commands found in stream
[2026-06-27 21:47:33,916.916 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:47:33,919.919 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-27 21:47:38,339.339 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 21:47:38,340.340 INFO    ] Checking for system updates...
[2026-06-27 21:47:38,361.361 INFO    ] 200
[2026-06-27 21:47:38,362.362 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:47:38,394.394 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:47:38,395.395 INFO    ] No update needed
[2026-06-27 21:47:38,397.397 INFO    ] Checking for camera pi updates...
[2026-06-27 21:47:38,416.416 INFO    ] 200
[2026-06-27 21:47:38,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:47:38,441.441 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:47:38,481.481 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:47:38,482.482 INFO    ] No camera update needed
[2026-06-27 21:47:38,484.484 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:47:38,485.485 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:47:38,488.488 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:47:38,491.491 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:47:40,529.529 INFO    ] ================================================
[2026-06-27 21:47:40,545.545 INFO    ] Launching Daemon at Sat Jun 27 21:47:40 IST 2026
[2026-06-27 21:47:40,557.557 INFO    ] ================================================
[2026-06-27 21:47:40,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:47:40
[2026-06-27 21:47:41,290.290 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:47:41,446.446 INFO    ] Initializing speech engine...
[2026-06-27 21:47:41,450.450 INFO    ] 2026-06-27 21:47:41
[2026-06-27 21:47:41,658.658 INFO    ] 2026-06-27 21:47:41
[2026-06-27 21:47:41,680.680 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:47:41,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:47:41,886.886 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:47:42,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:47:42,098.098 INFO    ] time= 27/06/2026 21:47:42
[2026-06-27 21:47:42,110.110 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:47:42,115.115 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:47:42,184.184 INFO    ] No existing commands found in stream
[2026-06-27 21:47:47,194.194 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:47:47,197.197 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-27 21:47:49,369.369 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 21:47:49,370.370 INFO    ] Checking for system updates...
[2026-06-27 21:47:49,392.392 INFO    ] 200
[2026-06-27 21:47:49,393.393 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:47:49,425.425 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:47:49,426.426 INFO    ] No update needed
[2026-06-27 21:47:49,427.427 INFO    ] Checking for camera pi updates...
[2026-06-27 21:47:49,447.447 INFO    ] 200
[2026-06-27 21:47:49,449.449 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:47:49,474.474 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:47:49,528.528 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:47:49,529.529 INFO    ] No camera update needed
[2026-06-27 21:47:49,531.531 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:47:49,532.532 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:47:49,535.535 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:47:49,538.538 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:47:51,578.578 INFO    ] ================================================
[2026-06-27 21:47:51,593.593 INFO    ] Launching Daemon at Sat Jun 27 21:47:51 IST 2026
[2026-06-27 21:47:51,604.604 INFO    ] ================================================
[2026-06-27 21:47:51,935.935 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:47:51
[2026-06-27 21:47:52,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:47:52,391.391 INFO    ] Initializing speech engine...
[2026-06-27 21:47:52,401.401 INFO    ] 2026-06-27 21:47:52
[2026-06-27 21:47:52,609.609 INFO    ] 2026-06-27 21:47:52
[2026-06-27 21:47:52,638.638 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:47:52,760.760 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:47:52,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:47:52,960.960 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:47:53,024.024 INFO    ] time= 27/06/2026 21:47:52
[2026-06-27 21:47:53,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:47:53,058.058 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:47:53,125.125 INFO    ] No existing commands found in stream
[2026-06-27 21:47:58,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:47:58,137.137 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-27 21:48:02,429.429 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 21:48:02,431.431 INFO    ] Checking for system updates...
[2026-06-27 21:48:02,455.455 INFO    ] 200
[2026-06-27 21:48:02,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:48:02,505.505 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:48:02,508.508 INFO    ] No update needed
[2026-06-27 21:48:02,510.510 INFO    ] Checking for camera pi updates...
[2026-06-27 21:48:02,530.530 INFO    ] 200
[2026-06-27 21:48:02,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:48:02,561.561 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:48:02,588.588 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:48:02,589.589 INFO    ] No camera update needed
[2026-06-27 21:48:02,591.591 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:48:02,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:48:02,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:48:02,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:48:04,636.636 INFO    ] ================================================
[2026-06-27 21:48:04,651.651 INFO    ] Launching Daemon at Sat Jun 27 21:48:04 IST 2026
[2026-06-27 21:48:04,662.662 INFO    ] ================================================
[2026-06-27 21:48:05,024.024 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:48:05
[2026-06-27 21:48:05,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:48:05,519.519 INFO    ] Initializing speech engine...
[2026-06-27 21:48:05,525.525 INFO    ] 2026-06-27 21:48:05
[2026-06-27 21:48:05,739.739 INFO    ] 2026-06-27 21:48:05
[2026-06-27 21:48:05,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:48:05,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:48:05,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:48:06,102.102 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:48:06,166.166 INFO    ] time= 27/06/2026 21:48:06
[2026-06-27 21:48:06,194.194 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:48:06,200.200 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:48:06,266.266 INFO    ] No existing commands found in stream
[2026-06-27 21:48:11,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:48:11,280.280 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-27 21:48:12,087.087 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 21:48:12,088.088 INFO    ] Checking for system updates...
[2026-06-27 21:48:12,110.110 INFO    ] 200
[2026-06-27 21:48:12,111.111 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:48:12,145.145 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:48:12,147.147 INFO    ] No update needed
[2026-06-27 21:48:12,148.148 INFO    ] Checking for camera pi updates...
[2026-06-27 21:48:12,167.167 INFO    ] 200
[2026-06-27 21:48:12,169.169 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:48:12,192.192 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:48:12,236.236 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:48:12,238.238 INFO    ] No camera update needed
[2026-06-27 21:48:12,239.239 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:48:12,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:48:12,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:48:12,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:48:14,286.286 INFO    ] ================================================
[2026-06-27 21:48:14,300.300 INFO    ] Launching Daemon at Sat Jun 27 21:48:14 IST 2026
[2026-06-27 21:48:14,312.312 INFO    ] ================================================
[2026-06-27 21:48:14,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:48:14
[2026-06-27 21:48:14,971.971 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:48:15,104.104 INFO    ] Initializing speech engine...
[2026-06-27 21:48:15,113.113 INFO    ] 2026-06-27 21:48:15
[2026-06-27 21:48:15,334.334 INFO    ] 2026-06-27 21:48:15
[2026-06-27 21:48:15,365.365 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:48:15,552.552 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:48:15,562.562 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:48:15,717.717 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:48:15,767.767 INFO    ] time= 27/06/2026 21:48:15
[2026-06-27 21:48:15,792.792 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:48:15,794.794 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:48:15,862.862 INFO    ] No existing commands found in stream
[2026-06-27 21:48:20,871.871 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:48:20,875.875 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-27 21:48:24,125.125 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 21:48:24,126.126 INFO    ] Checking for system updates...
[2026-06-27 21:48:24,149.149 INFO    ] 200
[2026-06-27 21:48:24,151.151 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:48:24,181.181 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:48:24,182.182 INFO    ] No update needed
[2026-06-27 21:48:24,184.184 INFO    ] Checking for camera pi updates...
[2026-06-27 21:48:24,205.205 INFO    ] 200
[2026-06-27 21:48:24,206.206 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:48:24,232.232 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:48:24,273.273 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:48:24,274.274 INFO    ] No camera update needed
[2026-06-27 21:48:24,276.276 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:48:24,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:48:24,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:48:24,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:48:26,321.321 INFO    ] ================================================
[2026-06-27 21:48:26,337.337 INFO    ] Launching Daemon at Sat Jun 27 21:48:26 IST 2026
[2026-06-27 21:48:26,348.348 INFO    ] ================================================
[2026-06-27 21:48:26,692.692 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:48:26
[2026-06-27 21:48:27,012.012 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:48:27,156.156 INFO    ] Initializing speech engine...
[2026-06-27 21:48:27,161.161 INFO    ] 2026-06-27 21:48:27
[2026-06-27 21:48:27,368.368 INFO    ] 2026-06-27 21:48:27
[2026-06-27 21:48:27,398.398 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:48:27,582.582 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:48:27,591.591 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:48:27,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:48:27,811.811 INFO    ] time= 27/06/2026 21:48:27
[2026-06-27 21:48:27,817.817 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:48:27,819.819 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:48:27,886.886 INFO    ] No existing commands found in stream
[2026-06-27 21:48:32,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:48:32,898.898 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-27 21:48:34,529.529 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:48:34,531.531 INFO    ] Checking for system updates...
[2026-06-27 21:48:34,552.552 INFO    ] 200
[2026-06-27 21:48:34,553.553 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:48:34,585.585 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:48:34,587.587 INFO    ] No update needed
[2026-06-27 21:48:34,588.588 INFO    ] Checking for camera pi updates...
[2026-06-27 21:48:34,607.607 INFO    ] 200
[2026-06-27 21:48:34,609.609 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:48:34,632.632 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:48:34,677.677 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:48:34,678.678 INFO    ] No camera update needed
[2026-06-27 21:48:34,679.679 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:48:34,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:48:34,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:48:34,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:48:36,727.727 INFO    ] ================================================
[2026-06-27 21:48:36,743.743 INFO    ] Launching Daemon at Sat Jun 27 21:48:36 IST 2026
[2026-06-27 21:48:36,754.754 INFO    ] ================================================
[2026-06-27 21:48:37,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:48:37
[2026-06-27 21:48:37,466.466 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:48:37,620.620 INFO    ] Initializing speech engine...
[2026-06-27 21:48:37,627.627 INFO    ] 2026-06-27 21:48:37
[2026-06-27 21:48:37,839.839 INFO    ] 2026-06-27 21:48:37
[2026-06-27 21:48:37,868.868 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:48:38,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:48:38,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:48:38,209.209 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:48:38,268.268 INFO    ] time= 27/06/2026 21:48:38
[2026-06-27 21:48:38,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:48:38,298.298 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:48:38,366.366 INFO    ] No existing commands found in stream
[2026-06-27 21:48:43,376.376 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:48:43,379.379 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-27 21:48:46,956.956 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 21:48:46,958.958 INFO    ] Checking for system updates...
[2026-06-27 21:48:46,981.981 INFO    ] 200
[2026-06-27 21:48:46,982.982 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:48:47,015.015 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:48:47,017.017 INFO    ] No update needed
[2026-06-27 21:48:47,018.018 INFO    ] Checking for camera pi updates...
[2026-06-27 21:48:47,040.040 INFO    ] 200
[2026-06-27 21:48:47,041.041 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:48:47,067.067 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:48:47,113.113 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:48:47,115.115 INFO    ] No camera update needed
[2026-06-27 21:48:47,116.116 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:48:47,118.118 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:48:47,121.121 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:48:47,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:48:49,166.166 INFO    ] ================================================
[2026-06-27 21:48:49,182.182 INFO    ] Launching Daemon at Sat Jun 27 21:48:49 IST 2026
[2026-06-27 21:48:49,192.192 INFO    ] ================================================
[2026-06-27 21:48:49,537.537 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:48:49
[2026-06-27 21:48:49,850.850 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:48:49,994.994 INFO    ] Initializing speech engine...
[2026-06-27 21:48:49,998.998 INFO    ] 2026-06-27 21:48:49
[2026-06-27 21:48:50,202.202 INFO    ] 2026-06-27 21:48:50
[2026-06-27 21:48:50,231.231 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:48:50,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:48:50,426.426 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:48:50,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:48:50,561.561 INFO    ] time= 27/06/2026 21:48:50
[2026-06-27 21:48:50,563.563 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:48:50,615.615 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:48:50,718.718 INFO    ] No existing commands found in stream
[2026-06-27 21:48:55,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:48:55,731.731 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-27 21:48:57,824.824 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 21:48:57,825.825 INFO    ] Checking for system updates...
[2026-06-27 21:48:57,847.847 INFO    ] 200
[2026-06-27 21:48:57,849.849 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:48:57,880.880 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:48:57,881.881 INFO    ] No update needed
[2026-06-27 21:48:57,882.882 INFO    ] Checking for camera pi updates...
[2026-06-27 21:48:57,903.903 INFO    ] 200
[2026-06-27 21:48:57,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:48:57,928.928 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:48:58,070.070 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:48:58,071.071 INFO    ] No camera update needed
[2026-06-27 21:48:58,073.073 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:48:58,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:48:58,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:48:58,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:49:00,120.120 INFO    ] ================================================
[2026-06-27 21:49:00,136.136 INFO    ] Launching Daemon at Sat Jun 27 21:49:00 IST 2026
[2026-06-27 21:49:00,147.147 INFO    ] ================================================
[2026-06-27 21:49:00,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:49:00
[2026-06-27 21:49:00,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:49:00,970.970 INFO    ] Initializing speech engine...
[2026-06-27 21:49:00,980.980 INFO    ] 2026-06-27 21:49:00
[2026-06-27 21:49:01,187.187 INFO    ] 2026-06-27 21:49:01
[2026-06-27 21:49:01,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:49:01,402.402 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:49:01,406.406 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:49:01,543.543 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:49:01,607.607 INFO    ] time= 27/06/2026 21:49:01
[2026-06-27 21:49:01,636.636 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:49:01,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:49:01,709.709 INFO    ] No existing commands found in stream
[2026-06-27 21:49:06,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:49:06,722.722 INFO    ] Waiting 3.74 seconds before fallback handling...
[2026-06-27 21:49:10,917.917 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 21:49:10,919.919 INFO    ] Checking for system updates...
[2026-06-27 21:49:10,945.945 INFO    ] 200
[2026-06-27 21:49:10,946.946 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:49:10,977.977 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:49:10,978.978 INFO    ] No update needed
[2026-06-27 21:49:10,979.979 INFO    ] Checking for camera pi updates...
[2026-06-27 21:49:11,001.001 INFO    ] 200
[2026-06-27 21:49:11,002.002 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:49:11,029.029 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:49:11,070.070 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:49:11,072.072 INFO    ] No camera update needed
[2026-06-27 21:49:11,073.073 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:49:11,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:49:11,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:49:11,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:49:13,114.114 INFO    ] ================================================
[2026-06-27 21:49:13,130.130 INFO    ] Launching Daemon at Sat Jun 27 21:49:13 IST 2026
[2026-06-27 21:49:13,142.142 INFO    ] ================================================
[2026-06-27 21:49:13,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:49:13
[2026-06-27 21:49:13,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:49:13,948.948 INFO    ] Initializing speech engine...
[2026-06-27 21:49:13,958.958 INFO    ] 2026-06-27 21:49:13
[2026-06-27 21:49:14,162.162 INFO    ] 2026-06-27 21:49:14
[2026-06-27 21:49:14,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:49:14,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:49:14,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:49:14,513.513 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:49:14,577.577 INFO    ] time= 27/06/2026 21:49:14
[2026-06-27 21:49:14,605.605 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:49:14,611.611 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:49:14,678.678 INFO    ] No existing commands found in stream
[2026-06-27 21:49:19,692.692 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:49:19,695.695 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-27 21:49:20,306.306 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:49:20,307.307 INFO    ] Checking for system updates...
[2026-06-27 21:49:20,329.329 INFO    ] 200
[2026-06-27 21:49:20,331.331 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:49:20,361.361 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:49:20,363.363 INFO    ] No update needed
[2026-06-27 21:49:20,364.364 INFO    ] Checking for camera pi updates...
[2026-06-27 21:49:20,385.385 INFO    ] 200
[2026-06-27 21:49:20,387.387 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:49:20,410.410 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:49:20,455.455 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:49:20,456.456 INFO    ] No camera update needed
[2026-06-27 21:49:20,458.458 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:49:20,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:49:20,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:49:20,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:49:22,504.504 INFO    ] ================================================
[2026-06-27 21:49:22,520.520 INFO    ] Launching Daemon at Sat Jun 27 21:49:22 IST 2026
[2026-06-27 21:49:22,531.531 INFO    ] ================================================
[2026-06-27 21:49:22,887.887 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:49:22
[2026-06-27 21:49:23,206.206 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:49:23,345.345 INFO    ] Initializing speech engine...
[2026-06-27 21:49:23,355.355 INFO    ] 2026-06-27 21:49:23
[2026-06-27 21:49:23,560.560 INFO    ] 2026-06-27 21:49:23
[2026-06-27 21:49:23,588.588 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:49:23,771.771 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:49:23,781.781 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:49:23,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:49:23,999.999 INFO    ] time= 27/06/2026 21:49:23
[2026-06-27 21:49:24,005.005 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:49:24,007.007 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:49:24,074.074 INFO    ] No existing commands found in stream
[2026-06-27 21:49:29,088.088 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:49:29,091.091 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-27 21:49:30,063.063 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 21:49:30,065.065 INFO    ] Checking for system updates...
[2026-06-27 21:49:30,087.087 INFO    ] 200
[2026-06-27 21:49:30,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:49:30,119.119 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:49:30,120.120 INFO    ] No update needed
[2026-06-27 21:49:30,121.121 INFO    ] Checking for camera pi updates...
[2026-06-27 21:49:30,143.143 INFO    ] 200
[2026-06-27 21:49:30,145.145 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:49:30,168.168 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:49:30,209.209 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:49:30,210.210 INFO    ] No camera update needed
[2026-06-27 21:49:30,212.212 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:49:30,213.213 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:49:30,216.216 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:49:30,219.219 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:49:32,251.251 INFO    ] ================================================
[2026-06-27 21:49:32,261.261 INFO    ] Launching Daemon at Sat Jun 27 21:49:32 IST 2026
[2026-06-27 21:49:32,269.269 INFO    ] ================================================
[2026-06-27 21:49:32,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:49:32
[2026-06-27 21:49:32,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:49:33,072.072 INFO    ] Initializing speech engine...
[2026-06-27 21:49:33,082.082 INFO    ] 2026-06-27 21:49:33
[2026-06-27 21:49:33,287.287 INFO    ] 2026-06-27 21:49:33
[2026-06-27 21:49:33,316.316 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:49:33,500.500 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:49:33,504.504 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:49:33,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:49:33,730.730 INFO    ] time= 27/06/2026 21:49:33
[2026-06-27 21:49:33,735.735 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:49:33,737.737 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:49:33,803.803 INFO    ] No existing commands found in stream
[2026-06-27 21:49:38,818.818 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:49:38,820.820 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-27 21:49:43,081.081 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:49:43,083.083 INFO    ] Checking for system updates...
[2026-06-27 21:49:43,104.104 INFO    ] 200
[2026-06-27 21:49:43,105.105 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:49:43,138.138 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:49:43,140.140 INFO    ] No update needed
[2026-06-27 21:49:43,141.141 INFO    ] Checking for camera pi updates...
[2026-06-27 21:49:43,162.162 INFO    ] 200
[2026-06-27 21:49:43,163.163 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:49:43,189.189 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:49:43,237.237 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:49:43,238.238 INFO    ] No camera update needed
[2026-06-27 21:49:43,239.239 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:49:43,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:49:43,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:49:43,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:49:45,285.285 INFO    ] ================================================
[2026-06-27 21:49:45,301.301 INFO    ] Launching Daemon at Sat Jun 27 21:49:45 IST 2026
[2026-06-27 21:49:45,312.312 INFO    ] ================================================
[2026-06-27 21:49:45,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:49:45
[2026-06-27 21:49:46,033.033 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:49:46,187.187 INFO    ] Initializing speech engine...
[2026-06-27 21:49:46,194.194 INFO    ] 2026-06-27 21:49:46
[2026-06-27 21:49:46,403.403 INFO    ] 2026-06-27 21:49:46
[2026-06-27 21:49:46,432.432 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:49:46,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:49:46,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:49:46,774.774 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:49:46,826.826 INFO    ] time= 27/06/2026 21:49:46
[2026-06-27 21:49:46,850.850 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:49:46,856.856 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:49:46,923.923 INFO    ] No existing commands found in stream
[2026-06-27 21:49:51,956.956 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:49:51,959.959 INFO    ] Waiting 3.05 seconds before fallback handling...
[2026-06-27 21:49:55,478.478 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 21:49:55,480.480 INFO    ] Checking for system updates...
[2026-06-27 21:49:55,501.501 INFO    ] 200
[2026-06-27 21:49:55,503.503 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:49:55,537.537 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:49:55,539.539 INFO    ] No update needed
[2026-06-27 21:49:55,540.540 INFO    ] Checking for camera pi updates...
[2026-06-27 21:49:55,565.565 INFO    ] 200
[2026-06-27 21:49:55,566.566 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:49:55,592.592 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:49:55,628.628 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:49:55,629.629 INFO    ] No camera update needed
[2026-06-27 21:49:55,631.631 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:49:55,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:49:55,636.636 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:49:55,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:49:57,680.680 INFO    ] ================================================
[2026-06-27 21:49:57,696.696 INFO    ] Launching Daemon at Sat Jun 27 21:49:57 IST 2026
[2026-06-27 21:49:57,707.707 INFO    ] ================================================
[2026-06-27 21:49:58,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:49:58
[2026-06-27 21:49:58,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:49:58,489.489 INFO    ] Initializing speech engine...
[2026-06-27 21:49:58,494.494 INFO    ] 2026-06-27 21:49:58
[2026-06-27 21:49:58,706.706 INFO    ] 2026-06-27 21:49:58
[2026-06-27 21:49:58,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:49:58,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:49:58,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:49:59,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:49:59,150.150 INFO    ] time= 27/06/2026 21:49:59
[2026-06-27 21:49:59,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:49:59,219.219 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:49:59,297.297 INFO    ] No existing commands found in stream
[2026-06-27 21:50:04,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:50:04,308.308 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-27 21:50:08,359.359 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 21:50:08,360.360 INFO    ] Checking for system updates...
[2026-06-27 21:50:08,383.383 INFO    ] 200
[2026-06-27 21:50:08,385.385 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:50:08,418.418 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:50:08,419.419 INFO    ] No update needed
[2026-06-27 21:50:08,421.421 INFO    ] Checking for camera pi updates...
[2026-06-27 21:50:08,442.442 INFO    ] 200
[2026-06-27 21:50:08,443.443 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:50:08,467.467 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:50:08,511.511 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:50:08,512.512 INFO    ] No camera update needed
[2026-06-27 21:50:08,513.513 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:50:08,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:50:08,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:50:08,521.521 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:50:10,561.561 INFO    ] ================================================
[2026-06-27 21:50:10,577.577 INFO    ] Launching Daemon at Sat Jun 27 21:50:10 IST 2026
[2026-06-27 21:50:10,588.588 INFO    ] ================================================
[2026-06-27 21:50:10,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:50:10
[2026-06-27 21:50:11,265.265 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:50:11,396.396 INFO    ] Initializing speech engine...
[2026-06-27 21:50:11,401.401 INFO    ] 2026-06-27 21:50:11
[2026-06-27 21:50:11,606.606 INFO    ] 2026-06-27 21:50:11
[2026-06-27 21:50:11,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:50:11,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:50:11,855.855 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:50:12,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:50:12,075.075 INFO    ] time= 27/06/2026 21:50:12
[2026-06-27 21:50:12,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:50:12,130.130 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:50:12,209.209 INFO    ] No existing commands found in stream
[2026-06-27 21:50:17,216.216 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:50:17,219.219 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-27 21:50:18,044.044 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 21:50:18,046.046 INFO    ] Checking for system updates...
[2026-06-27 21:50:18,068.068 INFO    ] 200
[2026-06-27 21:50:18,069.069 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:50:18,099.099 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:50:18,101.101 INFO    ] No update needed
[2026-06-27 21:50:18,102.102 INFO    ] Checking for camera pi updates...
[2026-06-27 21:50:18,122.122 INFO    ] 200
[2026-06-27 21:50:18,123.123 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:50:18,146.146 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:50:18,190.190 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:50:18,191.191 INFO    ] No camera update needed
[2026-06-27 21:50:18,193.193 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:50:18,194.194 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:50:18,197.197 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:50:18,200.200 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:50:20,239.239 INFO    ] ================================================
[2026-06-27 21:50:20,256.256 INFO    ] Launching Daemon at Sat Jun 27 21:50:20 IST 2026
[2026-06-27 21:50:20,267.267 INFO    ] ================================================
[2026-06-27 21:50:20,633.633 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:50:20
[2026-06-27 21:50:20,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:50:21,082.082 INFO    ] Initializing speech engine...
[2026-06-27 21:50:21,085.085 INFO    ] 2026-06-27 21:50:21
[2026-06-27 21:50:21,279.279 INFO    ] 2026-06-27 21:50:21
[2026-06-27 21:50:21,326.326 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:50:21,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:50:21,526.526 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:50:21,666.666 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:50:21,706.706 INFO    ] time= 27/06/2026 21:50:21
[2026-06-27 21:50:21,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:50:21,804.804 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:50:21,891.891 INFO    ] No existing commands found in stream
[2026-06-27 21:50:26,902.902 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:50:26,905.905 INFO    ] Waiting 3.07 seconds before fallback handling...
[2026-06-27 21:50:30,344.344 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 21:50:30,345.345 INFO    ] Checking for system updates...
[2026-06-27 21:50:30,367.367 INFO    ] 200
[2026-06-27 21:50:30,368.368 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:50:30,401.401 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:50:30,403.403 INFO    ] No update needed
[2026-06-27 21:50:30,405.405 INFO    ] Checking for camera pi updates...
[2026-06-27 21:50:30,425.425 INFO    ] 200
[2026-06-27 21:50:30,426.426 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:50:30,450.450 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:50:30,502.502 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:50:30,503.503 INFO    ] No camera update needed
[2026-06-27 21:50:30,505.505 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:50:30,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:50:30,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:50:30,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:50:32,548.548 INFO    ] ================================================
[2026-06-27 21:50:32,564.564 INFO    ] Launching Daemon at Sat Jun 27 21:50:32 IST 2026
[2026-06-27 21:50:32,576.576 INFO    ] ================================================
[2026-06-27 21:50:32,927.927 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:50:32
[2026-06-27 21:50:33,241.241 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:50:33,388.388 INFO    ] Initializing speech engine...
[2026-06-27 21:50:33,391.391 INFO    ] 2026-06-27 21:50:33
[2026-06-27 21:50:33,593.593 INFO    ] 2026-06-27 21:50:33
[2026-06-27 21:50:33,621.621 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:50:33,806.806 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:50:33,817.817 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:50:33,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:50:34,012.012 INFO    ] time= 27/06/2026 21:50:33
[2026-06-27 21:50:34,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:50:34,040.040 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:50:34,107.107 INFO    ] No existing commands found in stream
[2026-06-27 21:50:39,116.116 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:50:39,119.119 INFO    ] Waiting 0.52 seconds before fallback handling...
[2026-06-27 21:50:40,066.066 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 21:50:40,068.068 INFO    ] Checking for system updates...
[2026-06-27 21:50:40,090.090 INFO    ] 200
[2026-06-27 21:50:40,091.091 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:50:40,124.124 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:50:40,126.126 INFO    ] No update needed
[2026-06-27 21:50:40,127.127 INFO    ] Checking for camera pi updates...
[2026-06-27 21:50:40,148.148 INFO    ] 200
[2026-06-27 21:50:40,149.149 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:50:40,174.174 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:50:40,218.218 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:50:40,219.219 INFO    ] No camera update needed
[2026-06-27 21:50:40,220.220 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:50:40,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:50:40,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:50:40,228.228 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:50:42,269.269 INFO    ] ================================================
[2026-06-27 21:50:42,290.290 INFO    ] Launching Daemon at Sat Jun 27 21:50:42 IST 2026
[2026-06-27 21:50:42,306.306 INFO    ] ================================================
[2026-06-27 21:50:42,700.700 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:50:42
[2026-06-27 21:50:43,044.044 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:50:43,196.196 INFO    ] Initializing speech engine...
[2026-06-27 21:50:43,202.202 INFO    ] 2026-06-27 21:50:43
[2026-06-27 21:50:43,410.410 INFO    ] 2026-06-27 21:50:43
[2026-06-27 21:50:43,440.440 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:50:43,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:50:43,638.638 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:50:43,831.831 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:50:43,853.853 INFO    ] time= 27/06/2026 21:50:43
[2026-06-27 21:50:43,858.858 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:50:43,860.860 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:50:43,927.927 INFO    ] No existing commands found in stream
[2026-06-27 21:50:48,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:50:48,964.964 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-27 21:50:49,924.924 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 21:50:49,925.925 INFO    ] Checking for system updates...
[2026-06-27 21:50:49,946.946 INFO    ] 200
[2026-06-27 21:50:49,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:50:49,979.979 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:50:49,980.980 INFO    ] No update needed
[2026-06-27 21:50:49,982.982 INFO    ] Checking for camera pi updates...
[2026-06-27 21:50:50,002.002 INFO    ] 200
[2026-06-27 21:50:50,004.004 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:50:50,028.028 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:50:50,077.077 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:50:50,080.080 INFO    ] No camera update needed
[2026-06-27 21:50:50,082.082 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:50:50,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:50:50,092.092 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:50:50,098.098 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:50:52,138.138 INFO    ] ================================================
[2026-06-27 21:50:52,154.154 INFO    ] Launching Daemon at Sat Jun 27 21:50:52 IST 2026
[2026-06-27 21:50:52,165.165 INFO    ] ================================================
[2026-06-27 21:50:52,532.532 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:50:52
[2026-06-27 21:50:52,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:50:52,978.978 INFO    ] Initializing speech engine...
[2026-06-27 21:50:52,986.986 INFO    ] 2026-06-27 21:50:52
[2026-06-27 21:50:53,198.198 INFO    ] 2026-06-27 21:50:53
[2026-06-27 21:50:53,227.227 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:50:53,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:50:53,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:50:53,605.605 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:50:53,637.637 INFO    ] time= 27/06/2026 21:50:53
[2026-06-27 21:50:53,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:50:53,645.645 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:50:53,710.710 INFO    ] No existing commands found in stream
[2026-06-27 21:50:58,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:50:58,719.719 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-27 21:51:02,204.204 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 21:51:02,206.206 INFO    ] Checking for system updates...
[2026-06-27 21:51:02,232.232 INFO    ] 200
[2026-06-27 21:51:02,234.234 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:51:02,272.272 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:51:02,275.275 INFO    ] No update needed
[2026-06-27 21:51:02,277.277 INFO    ] Checking for camera pi updates...
[2026-06-27 21:51:02,306.306 INFO    ] 200
[2026-06-27 21:51:02,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:51:02,376.376 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:51:02,409.409 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:51:02,411.411 INFO    ] No camera update needed
[2026-06-27 21:51:02,413.413 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:51:02,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:51:02,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:51:02,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:51:04,464.464 INFO    ] ================================================
[2026-06-27 21:51:04,479.479 INFO    ] Launching Daemon at Sat Jun 27 21:51:04 IST 2026
[2026-06-27 21:51:04,490.490 INFO    ] ================================================
[2026-06-27 21:51:04,857.857 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:51:04
[2026-06-27 21:51:05,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:51:05,359.359 INFO    ] Initializing speech engine...
[2026-06-27 21:51:05,366.366 INFO    ] 2026-06-27 21:51:05
[2026-06-27 21:51:05,571.571 INFO    ] 2026-06-27 21:51:05
[2026-06-27 21:51:05,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:51:05,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:51:05,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:51:05,983.983 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:51:06,016.016 INFO    ] time= 27/06/2026 21:51:05
[2026-06-27 21:51:06,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:51:06,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:51:06,094.094 INFO    ] No existing commands found in stream
[2026-06-27 21:51:11,103.103 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:51:11,106.106 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-27 21:51:13,514.514 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 21:51:13,515.515 INFO    ] Checking for system updates...
[2026-06-27 21:51:13,536.536 INFO    ] 200
[2026-06-27 21:51:13,538.538 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:51:13,571.571 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:51:13,572.572 INFO    ] No update needed
[2026-06-27 21:51:13,574.574 INFO    ] Checking for camera pi updates...
[2026-06-27 21:51:13,593.593 INFO    ] 200
[2026-06-27 21:51:13,595.595 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:51:13,618.618 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:51:13,644.644 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:51:13,645.645 INFO    ] No camera update needed
[2026-06-27 21:51:13,647.647 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:51:13,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:51:13,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:51:13,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:51:15,694.694 INFO    ] ================================================
[2026-06-27 21:51:15,710.710 INFO    ] Launching Daemon at Sat Jun 27 21:51:15 IST 2026
[2026-06-27 21:51:15,727.727 INFO    ] ================================================
[2026-06-27 21:51:16,056.056 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:51:16
[2026-06-27 21:51:16,370.370 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:51:16,507.507 INFO    ] Initializing speech engine...
[2026-06-27 21:51:16,516.516 INFO    ] 2026-06-27 21:51:16
[2026-06-27 21:51:16,723.723 INFO    ] 2026-06-27 21:51:16
[2026-06-27 21:51:16,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:51:16,941.941 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:51:16,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:51:17,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:51:17,139.139 INFO    ] time= 27/06/2026 21:51:17
[2026-06-27 21:51:17,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:51:17,176.176 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:51:17,246.246 INFO    ] No existing commands found in stream
[2026-06-27 21:51:22,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:51:22,259.259 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-27 21:51:26,408.408 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 21:51:26,409.409 INFO    ] Checking for system updates...
[2026-06-27 21:51:26,430.430 INFO    ] 200
[2026-06-27 21:51:26,431.431 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:51:26,464.464 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:51:26,465.465 INFO    ] No update needed
[2026-06-27 21:51:26,467.467 INFO    ] Checking for camera pi updates...
[2026-06-27 21:51:26,486.486 INFO    ] 200
[2026-06-27 21:51:26,487.487 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:51:26,512.512 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:51:26,559.559 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:51:26,561.561 INFO    ] No camera update needed
[2026-06-27 21:51:26,562.562 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:51:26,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:51:26,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:51:26,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:51:28,609.609 INFO    ] ================================================
[2026-06-27 21:51:28,626.626 INFO    ] Launching Daemon at Sat Jun 27 21:51:28 IST 2026
[2026-06-27 21:51:28,637.637 INFO    ] ================================================
[2026-06-27 21:51:29,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:51:28
[2026-06-27 21:51:29,321.321 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:51:29,466.466 INFO    ] Initializing speech engine...
[2026-06-27 21:51:29,471.471 INFO    ] 2026-06-27 21:51:29
[2026-06-27 21:51:29,676.676 INFO    ] 2026-06-27 21:51:29
[2026-06-27 21:51:29,704.704 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:51:29,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:51:29,899.899 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:51:30,043.043 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:51:30,097.097 INFO    ] time= 27/06/2026 21:51:30
[2026-06-27 21:51:30,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:51:30,124.124 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:51:30,189.189 INFO    ] No existing commands found in stream
[2026-06-27 21:51:35,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:51:35,203.203 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-27 21:51:36,672.672 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 21:51:36,674.674 INFO    ] Checking for system updates...
[2026-06-27 21:51:36,695.695 INFO    ] 200
[2026-06-27 21:51:36,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:51:36,729.729 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:51:36,730.730 INFO    ] No update needed
[2026-06-27 21:51:36,732.732 INFO    ] Checking for camera pi updates...
[2026-06-27 21:51:36,753.753 INFO    ] 200
[2026-06-27 21:51:36,755.755 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:51:36,778.778 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:51:36,832.832 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:51:36,834.834 INFO    ] No camera update needed
[2026-06-27 21:51:36,835.835 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:51:36,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:51:36,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:51:36,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:51:38,881.881 INFO    ] ================================================
[2026-06-27 21:51:38,898.898 INFO    ] Launching Daemon at Sat Jun 27 21:51:38 IST 2026
[2026-06-27 21:51:38,909.909 INFO    ] ================================================
[2026-06-27 21:51:39,249.249 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:51:39
[2026-06-27 21:51:39,565.565 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:51:39,698.698 INFO    ] Initializing speech engine...
[2026-06-27 21:51:39,711.711 INFO    ] 2026-06-27 21:51:39
[2026-06-27 21:51:39,917.917 INFO    ] 2026-06-27 21:51:39
[2026-06-27 21:51:39,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:51:40,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:51:40,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:51:40,335.335 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:51:40,359.359 INFO    ] time= 27/06/2026 21:51:40
[2026-06-27 21:51:40,364.364 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:51:40,366.366 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:51:40,433.433 INFO    ] No existing commands found in stream
[2026-06-27 21:51:45,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:51:45,446.446 INFO    ] Waiting 3.41 seconds before fallback handling...
[2026-06-27 21:51:49,228.228 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 21:51:49,230.230 INFO    ] Checking for system updates...
[2026-06-27 21:51:49,251.251 INFO    ] 200
[2026-06-27 21:51:49,252.252 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:51:49,284.284 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:51:49,285.285 INFO    ] No update needed
[2026-06-27 21:51:49,287.287 INFO    ] Checking for camera pi updates...
[2026-06-27 21:51:49,306.306 INFO    ] 200
[2026-06-27 21:51:49,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:51:49,333.333 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:51:49,378.378 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:51:49,379.379 INFO    ] No camera update needed
[2026-06-27 21:51:49,380.380 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:51:49,382.382 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:51:49,385.385 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:51:49,388.388 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:51:51,414.414 INFO    ] ================================================
[2026-06-27 21:51:51,424.424 INFO    ] Launching Daemon at Sat Jun 27 21:51:51 IST 2026
[2026-06-27 21:51:51,431.431 INFO    ] ================================================
[2026-06-27 21:51:51,766.766 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:51:51
[2026-06-27 21:51:52,115.115 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:51:52,270.270 INFO    ] Initializing speech engine...
[2026-06-27 21:51:52,280.280 INFO    ] 2026-06-27 21:51:52
[2026-06-27 21:51:52,505.505 INFO    ] 2026-06-27 21:51:52
[2026-06-27 21:51:52,545.545 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:51:52,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:51:52,745.745 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:51:52,893.893 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:51:52,964.964 INFO    ] time= 27/06/2026 21:51:52
[2026-06-27 21:51:52,990.990 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:51:52,997.997 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:51:53,066.066 INFO    ] No existing commands found in stream
[2026-06-27 21:51:58,080.080 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:51:58,083.083 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-27 21:52:02,183.183 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 21:52:02,185.185 INFO    ] Checking for system updates...
[2026-06-27 21:52:02,227.227 INFO    ] 200
[2026-06-27 21:52:02,229.229 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:52:02,276.276 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:52:02,278.278 INFO    ] No update needed
[2026-06-27 21:52:02,280.280 INFO    ] Checking for camera pi updates...
[2026-06-27 21:52:02,307.307 INFO    ] 200
[2026-06-27 21:52:02,309.309 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:52:02,339.339 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:52:02,365.365 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:52:02,367.367 INFO    ] No camera update needed
[2026-06-27 21:52:02,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:52:02,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:52:02,375.375 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:52:02,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:52:04,422.422 INFO    ] ================================================
[2026-06-27 21:52:04,437.437 INFO    ] Launching Daemon at Sat Jun 27 21:52:04 IST 2026
[2026-06-27 21:52:04,448.448 INFO    ] ================================================
[2026-06-27 21:52:04,813.813 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:52:04
[2026-06-27 21:52:05,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:52:05,275.275 INFO    ] Initializing speech engine...
[2026-06-27 21:52:05,280.280 INFO    ] 2026-06-27 21:52:05
[2026-06-27 21:52:05,483.483 INFO    ] 2026-06-27 21:52:05
[2026-06-27 21:52:05,513.513 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:52:05,698.698 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:52:05,708.708 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:52:05,899.899 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:52:05,937.937 INFO    ] time= 27/06/2026 21:52:05
[2026-06-27 21:52:05,984.984 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:52:06,017.017 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:52:06,148.148 INFO    ] No existing commands found in stream
[2026-06-27 21:52:11,156.156 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:52:11,159.159 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-27 21:52:13,014.014 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 21:52:13,015.015 INFO    ] Checking for system updates...
[2026-06-27 21:52:13,037.037 INFO    ] 200
[2026-06-27 21:52:13,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:52:13,070.070 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:52:13,071.071 INFO    ] No update needed
[2026-06-27 21:52:13,073.073 INFO    ] Checking for camera pi updates...
[2026-06-27 21:52:13,094.094 INFO    ] 200
[2026-06-27 21:52:13,095.095 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:52:13,118.118 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:52:13,165.165 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:52:13,166.166 INFO    ] No camera update needed
[2026-06-27 21:52:13,168.168 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:52:13,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:52:13,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:52:13,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:52:15,215.215 INFO    ] ================================================
[2026-06-27 21:52:15,230.230 INFO    ] Launching Daemon at Sat Jun 27 21:52:15 IST 2026
[2026-06-27 21:52:15,241.241 INFO    ] ================================================
[2026-06-27 21:52:15,644.644 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:52:15
[2026-06-27 21:52:15,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:52:16,141.141 INFO    ] Initializing speech engine...
[2026-06-27 21:52:16,147.147 INFO    ] 2026-06-27 21:52:16
[2026-06-27 21:52:16,356.356 INFO    ] 2026-06-27 21:52:16
[2026-06-27 21:52:16,385.385 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:52:16,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:52:16,579.579 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:52:16,724.724 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:52:16,794.794 INFO    ] time= 27/06/2026 21:52:16
[2026-06-27 21:52:16,805.805 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:52:16,814.814 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:52:16,883.883 INFO    ] No existing commands found in stream
[2026-06-27 21:52:21,893.893 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:52:21,897.897 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-27 21:52:22,720.720 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 21:52:22,721.721 INFO    ] Checking for system updates...
[2026-06-27 21:52:22,745.745 INFO    ] 200
[2026-06-27 21:52:22,746.746 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:52:22,779.779 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:52:22,781.781 INFO    ] No update needed
[2026-06-27 21:52:22,782.782 INFO    ] Checking for camera pi updates...
[2026-06-27 21:52:22,804.804 INFO    ] 200
[2026-06-27 21:52:22,805.805 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:52:22,834.834 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:52:22,892.892 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:52:22,894.894 INFO    ] No camera update needed
[2026-06-27 21:52:22,895.895 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:52:22,897.897 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:52:22,900.900 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:52:22,903.903 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:52:24,942.942 INFO    ] ================================================
[2026-06-27 21:52:24,957.957 INFO    ] Launching Daemon at Sat Jun 27 21:52:24 IST 2026
[2026-06-27 21:52:24,968.968 INFO    ] ================================================
[2026-06-27 21:52:25,333.333 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:52:25
[2026-06-27 21:52:25,661.661 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:52:25,793.793 INFO    ] Initializing speech engine...
[2026-06-27 21:52:25,797.797 INFO    ] 2026-06-27 21:52:25
[2026-06-27 21:52:26,017.017 INFO    ] 2026-06-27 21:52:25
[2026-06-27 21:52:26,046.046 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:52:26,233.233 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:52:26,242.242 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:52:26,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:52:26,428.428 INFO    ] time= 27/06/2026 21:52:26
[2026-06-27 21:52:26,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:52:26,469.469 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:52:26,540.540 INFO    ] No existing commands found in stream
[2026-06-27 21:52:31,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:52:31,554.554 INFO    ] Waiting 1.29 seconds before fallback handling...
[2026-06-27 21:52:33,419.419 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 21:52:33,420.420 INFO    ] Checking for system updates...
[2026-06-27 21:52:33,443.443 INFO    ] 200
[2026-06-27 21:52:33,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:52:33,481.481 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:52:33,482.482 INFO    ] No update needed
[2026-06-27 21:52:33,484.484 INFO    ] Checking for camera pi updates...
[2026-06-27 21:52:33,507.507 INFO    ] 200
[2026-06-27 21:52:33,508.508 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:52:33,534.534 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:52:33,576.576 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:52:33,577.577 INFO    ] No camera update needed
[2026-06-27 21:52:33,579.579 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:52:33,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:52:33,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:52:33,587.587 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:52:35,625.625 INFO    ] ================================================
[2026-06-27 21:52:35,642.642 INFO    ] Launching Daemon at Sat Jun 27 21:52:35 IST 2026
[2026-06-27 21:52:35,652.652 INFO    ] ================================================
[2026-06-27 21:52:35,976.976 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:52:35
[2026-06-27 21:52:36,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:52:36,419.419 INFO    ] Initializing speech engine...
[2026-06-27 21:52:36,424.424 INFO    ] 2026-06-27 21:52:36
[2026-06-27 21:52:36,644.644 INFO    ] 2026-06-27 21:52:36
[2026-06-27 21:52:36,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:52:36,859.859 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:52:36,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:52:37,001.001 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:52:37,069.069 INFO    ] time= 27/06/2026 21:52:37
[2026-06-27 21:52:37,093.093 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:52:37,099.099 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:52:37,166.166 INFO    ] No existing commands found in stream
[2026-06-27 21:52:42,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:52:42,179.179 INFO    ] Waiting 2.90 seconds before fallback handling...
[2026-06-27 21:52:45,477.477 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 21:52:45,478.478 INFO    ] Checking for system updates...
[2026-06-27 21:52:45,499.499 INFO    ] 200
[2026-06-27 21:52:45,500.500 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:52:45,533.533 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:52:45,535.535 INFO    ] No update needed
[2026-06-27 21:52:45,536.536 INFO    ] Checking for camera pi updates...
[2026-06-27 21:52:45,555.555 INFO    ] 200
[2026-06-27 21:52:45,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:52:45,582.582 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:52:45,608.608 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:52:45,609.609 INFO    ] No camera update needed
[2026-06-27 21:52:45,610.610 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:52:45,611.611 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:52:45,614.614 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:52:45,617.617 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:52:47,655.655 INFO    ] ================================================
[2026-06-27 21:52:47,671.671 INFO    ] Launching Daemon at Sat Jun 27 21:52:47 IST 2026
[2026-06-27 21:52:47,682.682 INFO    ] ================================================
[2026-06-27 21:52:48,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:52:48
[2026-06-27 21:52:48,353.353 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:52:48,496.496 INFO    ] Initializing speech engine...
[2026-06-27 21:52:48,500.500 INFO    ] 2026-06-27 21:52:48
[2026-06-27 21:52:48,705.705 INFO    ] 2026-06-27 21:52:48
[2026-06-27 21:52:48,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:52:48,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:52:48,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:52:49,054.054 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:52:49,116.116 INFO    ] time= 27/06/2026 21:52:49
[2026-06-27 21:52:49,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:52:49,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:52:49,221.221 INFO    ] No existing commands found in stream
[2026-06-27 21:52:54,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:52:54,238.238 INFO    ] Waiting 2.21 seconds before fallback handling...
[2026-06-27 21:52:56,847.847 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 21:52:56,848.848 INFO    ] Checking for system updates...
[2026-06-27 21:52:56,869.869 INFO    ] 200
[2026-06-27 21:52:56,870.870 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:52:56,903.903 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:52:56,904.904 INFO    ] No update needed
[2026-06-27 21:52:56,906.906 INFO    ] Checking for camera pi updates...
[2026-06-27 21:52:56,925.925 INFO    ] 200
[2026-06-27 21:52:56,927.927 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:52:56,950.950 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:52:56,992.992 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:52:56,994.994 INFO    ] No camera update needed
[2026-06-27 21:52:56,995.995 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:52:56,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:52:56,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:52:57,002.002 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:52:59,040.040 INFO    ] ================================================
[2026-06-27 21:52:59,056.056 INFO    ] Launching Daemon at Sat Jun 27 21:52:59 IST 2026
[2026-06-27 21:52:59,067.067 INFO    ] ================================================
[2026-06-27 21:52:59,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:52:59
[2026-06-27 21:52:59,741.741 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:52:59,883.883 INFO    ] Initializing speech engine...
[2026-06-27 21:52:59,889.889 INFO    ] 2026-06-27 21:52:59
[2026-06-27 21:53:00,091.091 INFO    ] 2026-06-27 21:53:00
[2026-06-27 21:53:00,119.119 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:53:00,241.241 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:53:00,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:53:00,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:53:00,495.495 INFO    ] time= 27/06/2026 21:53:00
[2026-06-27 21:53:00,529.529 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:53:00,534.534 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:53:00,605.605 INFO    ] No existing commands found in stream
[2026-06-27 21:53:05,619.619 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:53:05,621.621 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-27 21:53:09,325.325 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 21:53:09,326.326 INFO    ] Checking for system updates...
[2026-06-27 21:53:09,348.348 INFO    ] 200
[2026-06-27 21:53:09,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:53:09,380.380 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:53:09,381.381 INFO    ] No update needed
[2026-06-27 21:53:09,383.383 INFO    ] Checking for camera pi updates...
[2026-06-27 21:53:09,403.403 INFO    ] 200
[2026-06-27 21:53:09,405.405 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:53:09,430.430 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:53:09,569.569 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:53:09,570.570 INFO    ] No camera update needed
[2026-06-27 21:53:09,572.572 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:53:09,573.573 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:53:09,576.576 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:53:09,578.578 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:53:11,618.618 INFO    ] ================================================
[2026-06-27 21:53:11,634.634 INFO    ] Launching Daemon at Sat Jun 27 21:53:11 IST 2026
[2026-06-27 21:53:11,646.646 INFO    ] ================================================
[2026-06-27 21:53:12,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:53:12
[2026-06-27 21:53:12,316.316 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:53:12,458.458 INFO    ] Initializing speech engine...
[2026-06-27 21:53:12,464.464 INFO    ] 2026-06-27 21:53:12
[2026-06-27 21:53:12,665.665 INFO    ] 2026-06-27 21:53:12
[2026-06-27 21:53:12,694.694 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:53:12,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:53:12,869.869 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:53:13,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:53:13,086.086 INFO    ] time= 27/06/2026 21:53:13
[2026-06-27 21:53:13,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:53:13,138.138 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:53:13,231.231 INFO    ] No existing commands found in stream
[2026-06-27 21:53:18,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:53:18,258.258 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-27 21:53:20,037.037 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:53:20,039.039 INFO    ] Checking for system updates...
[2026-06-27 21:53:20,061.061 INFO    ] 200
[2026-06-27 21:53:20,063.063 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:53:20,095.095 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:53:20,097.097 INFO    ] No update needed
[2026-06-27 21:53:20,098.098 INFO    ] Checking for camera pi updates...
[2026-06-27 21:53:20,117.117 INFO    ] 200
[2026-06-27 21:53:20,119.119 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:53:20,144.144 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:53:20,187.187 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:53:20,188.188 INFO    ] No camera update needed
[2026-06-27 21:53:20,190.190 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:53:20,191.191 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:53:20,194.194 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:53:20,197.197 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:53:22,235.235 INFO    ] ================================================
[2026-06-27 21:53:22,251.251 INFO    ] Launching Daemon at Sat Jun 27 21:53:22 IST 2026
[2026-06-27 21:53:22,262.262 INFO    ] ================================================
[2026-06-27 21:53:22,598.598 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:53:22
[2026-06-27 21:53:22,912.912 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:53:23,050.050 INFO    ] Initializing speech engine...
[2026-06-27 21:53:23,060.060 INFO    ] 2026-06-27 21:53:23
[2026-06-27 21:53:23,266.266 INFO    ] 2026-06-27 21:53:23
[2026-06-27 21:53:23,295.295 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:53:23,431.431 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:53:23,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:53:23,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:53:23,682.682 INFO    ] time= 27/06/2026 21:53:23
[2026-06-27 21:53:23,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:53:23,712.712 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:53:23,776.776 INFO    ] No existing commands found in stream
[2026-06-27 21:53:28,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:53:28,790.790 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-27 21:53:30,854.854 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 21:53:30,856.856 INFO    ] Checking for system updates...
[2026-06-27 21:53:30,877.877 INFO    ] 200
[2026-06-27 21:53:30,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:53:30,912.912 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:53:30,913.913 INFO    ] No update needed
[2026-06-27 21:53:30,915.915 INFO    ] Checking for camera pi updates...
[2026-06-27 21:53:30,935.935 INFO    ] 200
[2026-06-27 21:53:30,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:53:30,960.960 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:53:31,020.020 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:53:31,022.022 INFO    ] No camera update needed
[2026-06-27 21:53:31,023.023 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:53:31,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:53:31,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:53:31,030.030 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:53:33,075.075 INFO    ] ================================================
[2026-06-27 21:53:33,091.091 INFO    ] Launching Daemon at Sat Jun 27 21:53:33 IST 2026
[2026-06-27 21:53:33,102.102 INFO    ] ================================================
[2026-06-27 21:53:33,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:53:33
[2026-06-27 21:53:33,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:53:33,915.915 INFO    ] Initializing speech engine...
[2026-06-27 21:53:33,925.925 INFO    ] 2026-06-27 21:53:33
[2026-06-27 21:53:34,132.132 INFO    ] 2026-06-27 21:53:34
[2026-06-27 21:53:34,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:53:34,348.348 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:53:34,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:53:34,514.514 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:53:34,558.558 INFO    ] time= 27/06/2026 21:53:34
[2026-06-27 21:53:34,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:53:34,586.586 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:53:34,654.654 INFO    ] No existing commands found in stream
[2026-06-27 21:53:39,667.667 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:53:39,670.670 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-27 21:53:41,886.886 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 21:53:41,888.888 INFO    ] Checking for system updates...
[2026-06-27 21:53:41,908.908 INFO    ] 200
[2026-06-27 21:53:41,910.910 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:53:41,942.942 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:53:41,944.944 INFO    ] No update needed
[2026-06-27 21:53:41,945.945 INFO    ] Checking for camera pi updates...
[2026-06-27 21:53:41,966.966 INFO    ] 200
[2026-06-27 21:53:41,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:53:41,992.992 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:53:42,039.039 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:53:42,040.040 INFO    ] No camera update needed
[2026-06-27 21:53:42,042.042 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:53:42,043.043 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:53:42,046.046 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:53:42,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:53:44,088.088 INFO    ] ================================================
[2026-06-27 21:53:44,104.104 INFO    ] Launching Daemon at Sat Jun 27 21:53:44 IST 2026
[2026-06-27 21:53:44,119.119 INFO    ] ================================================
[2026-06-27 21:53:44,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:53:44
[2026-06-27 21:53:44,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:53:44,911.911 INFO    ] Initializing speech engine...
[2026-06-27 21:53:44,919.919 INFO    ] 2026-06-27 21:53:44
[2026-06-27 21:53:45,133.133 INFO    ] 2026-06-27 21:53:45
[2026-06-27 21:53:45,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:53:45,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:53:45,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:53:45,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:53:45,555.555 INFO    ] time= 27/06/2026 21:53:45
[2026-06-27 21:53:45,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:53:45,585.585 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:53:45,657.657 INFO    ] No existing commands found in stream
[2026-06-27 21:53:50,671.671 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:53:50,674.674 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-27 21:53:51,546.546 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 21:53:51,548.548 INFO    ] Checking for system updates...
[2026-06-27 21:53:51,570.570 INFO    ] 200
[2026-06-27 21:53:51,571.571 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:53:51,602.602 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:53:51,603.603 INFO    ] No update needed
[2026-06-27 21:53:51,605.605 INFO    ] Checking for camera pi updates...
[2026-06-27 21:53:51,625.625 INFO    ] 200
[2026-06-27 21:53:51,627.627 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:53:51,651.651 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:53:51,697.697 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:53:51,699.699 INFO    ] No camera update needed
[2026-06-27 21:53:51,700.700 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:53:51,701.701 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:53:51,704.704 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:53:51,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:53:53,747.747 INFO    ] ================================================
[2026-06-27 21:53:53,764.764 INFO    ] Launching Daemon at Sat Jun 27 21:53:53 IST 2026
[2026-06-27 21:53:53,775.775 INFO    ] ================================================
[2026-06-27 21:53:54,147.147 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:53:54
[2026-06-27 21:53:54,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:53:54,645.645 INFO    ] Initializing speech engine...
[2026-06-27 21:53:54,648.648 INFO    ] 2026-06-27 21:53:54
[2026-06-27 21:53:54,856.856 INFO    ] 2026-06-27 21:53:54
[2026-06-27 21:53:54,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:53:55,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:53:55,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:53:55,227.227 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:53:55,280.280 INFO    ] time= 27/06/2026 21:53:55
[2026-06-27 21:53:55,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:53:55,309.309 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:53:55,376.376 INFO    ] No existing commands found in stream
[2026-06-27 21:54:00,405.405 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:54:00,409.409 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-27 21:54:01,716.716 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 21:54:01,718.718 INFO    ] Checking for system updates...
[2026-06-27 21:54:01,746.746 INFO    ] 200
[2026-06-27 21:54:01,748.748 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:54:01,792.792 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:54:01,794.794 INFO    ] No update needed
[2026-06-27 21:54:01,796.796 INFO    ] Checking for camera pi updates...
[2026-06-27 21:54:01,821.821 INFO    ] 200
[2026-06-27 21:54:01,822.822 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:54:01,856.856 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:54:01,889.889 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:54:01,891.891 INFO    ] No camera update needed
[2026-06-27 21:54:01,893.893 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:54:01,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:54:01,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:54:01,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:54:03,945.945 INFO    ] ================================================
[2026-06-27 21:54:03,960.960 INFO    ] Launching Daemon at Sat Jun 27 21:54:03 IST 2026
[2026-06-27 21:54:03,971.971 INFO    ] ================================================
[2026-06-27 21:54:04,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:54:04
[2026-06-27 21:54:04,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:54:04,802.802 INFO    ] Initializing speech engine...
[2026-06-27 21:54:04,807.807 INFO    ] 2026-06-27 21:54:04
[2026-06-27 21:54:05,011.011 INFO    ] 2026-06-27 21:54:04
[2026-06-27 21:54:05,040.040 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:54:05,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:54:05,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:54:05,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:54:05,423.423 INFO    ] time= 27/06/2026 21:54:05
[2026-06-27 21:54:05,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:54:05,478.478 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:54:05,544.544 INFO    ] No existing commands found in stream
[2026-06-27 21:54:10,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:54:10,556.556 INFO    ] Waiting 0.53 seconds before fallback handling...
[2026-06-27 21:54:11,479.479 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 21:54:11,481.481 INFO    ] Checking for system updates...
[2026-06-27 21:54:11,503.503 INFO    ] 200
[2026-06-27 21:54:11,505.505 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:54:11,538.538 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:54:11,539.539 INFO    ] No update needed
[2026-06-27 21:54:11,541.541 INFO    ] Checking for camera pi updates...
[2026-06-27 21:54:11,564.564 INFO    ] 200
[2026-06-27 21:54:11,566.566 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:54:11,592.592 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:54:11,649.649 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:54:11,651.651 INFO    ] No camera update needed
[2026-06-27 21:54:11,652.652 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:54:11,654.654 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:54:11,657.657 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:54:11,660.660 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:54:13,703.703 INFO    ] ================================================
[2026-06-27 21:54:13,718.718 INFO    ] Launching Daemon at Sat Jun 27 21:54:13 IST 2026
[2026-06-27 21:54:13,729.729 INFO    ] ================================================
[2026-06-27 21:54:14,084.084 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:54:14
[2026-06-27 21:54:14,424.424 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:54:14,575.575 INFO    ] Initializing speech engine...
[2026-06-27 21:54:14,580.580 INFO    ] 2026-06-27 21:54:14
[2026-06-27 21:54:14,790.790 INFO    ] 2026-06-27 21:54:14
[2026-06-27 21:54:14,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:54:15,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:54:15,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:54:15,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:54:15,239.239 INFO    ] time= 27/06/2026 21:54:15
[2026-06-27 21:54:15,245.245 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:54:15,247.247 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:54:15,315.315 INFO    ] No existing commands found in stream
[2026-06-27 21:54:20,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:54:20,327.327 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-27 21:54:21,577.577 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 21:54:21,578.578 INFO    ] Checking for system updates...
[2026-06-27 21:54:21,600.600 INFO    ] 200
[2026-06-27 21:54:21,601.601 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:54:21,634.634 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:54:21,636.636 INFO    ] No update needed
[2026-06-27 21:54:21,637.637 INFO    ] Checking for camera pi updates...
[2026-06-27 21:54:21,657.657 INFO    ] 200
[2026-06-27 21:54:21,659.659 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:54:21,684.684 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:54:21,735.735 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:54:21,737.737 INFO    ] No camera update needed
[2026-06-27 21:54:21,738.738 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:54:21,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:54:21,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:54:21,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:54:23,787.787 INFO    ] ================================================
[2026-06-27 21:54:23,804.804 INFO    ] Launching Daemon at Sat Jun 27 21:54:23 IST 2026
[2026-06-27 21:54:23,816.816 INFO    ] ================================================
[2026-06-27 21:54:24,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:54:24
[2026-06-27 21:54:24,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:54:24,590.590 INFO    ] Initializing speech engine...
[2026-06-27 21:54:24,603.603 INFO    ] 2026-06-27 21:54:24
[2026-06-27 21:54:24,812.812 INFO    ] 2026-06-27 21:54:24
[2026-06-27 21:54:24,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:54:24,966.966 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:54:25,030.030 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:54:25,169.169 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:54:25,233.233 INFO    ] time= 27/06/2026 21:54:25
[2026-06-27 21:54:25,261.261 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:54:25,267.267 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:54:25,336.336 INFO    ] No existing commands found in stream
[2026-06-27 21:54:30,344.344 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:54:30,347.347 INFO    ] Waiting 0.92 seconds before fallback handling...
[2026-06-27 21:54:31,657.657 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 21:54:31,659.659 INFO    ] Checking for system updates...
[2026-06-27 21:54:31,684.684 INFO    ] 200
[2026-06-27 21:54:31,686.686 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:54:31,726.726 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:54:31,727.727 INFO    ] No update needed
[2026-06-27 21:54:31,729.729 INFO    ] Checking for camera pi updates...
[2026-06-27 21:54:31,751.751 INFO    ] 200
[2026-06-27 21:54:31,753.753 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:54:31,784.784 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:54:31,817.817 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:54:31,818.818 INFO    ] No camera update needed
[2026-06-27 21:54:31,820.820 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:54:31,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:54:31,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:54:31,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:54:33,871.871 INFO    ] ================================================
[2026-06-27 21:54:33,887.887 INFO    ] Launching Daemon at Sat Jun 27 21:54:33 IST 2026
[2026-06-27 21:54:33,898.898 INFO    ] ================================================
[2026-06-27 21:54:34,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:54:34
[2026-06-27 21:54:34,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:54:34,780.780 INFO    ] Initializing speech engine...
[2026-06-27 21:54:34,786.786 INFO    ] 2026-06-27 21:54:34
[2026-06-27 21:54:34,995.995 INFO    ] 2026-06-27 21:54:34
[2026-06-27 21:54:35,026.026 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:54:35,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:54:35,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:54:35,356.356 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:54:35,425.425 INFO    ] time= 27/06/2026 21:54:35
[2026-06-27 21:54:35,449.449 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:54:35,455.455 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:54:35,547.547 INFO    ] No existing commands found in stream
[2026-06-27 21:54:40,557.557 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:54:40,560.560 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-27 21:54:42,784.784 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 21:54:42,786.786 INFO    ] Checking for system updates...
[2026-06-27 21:54:42,807.807 INFO    ] 200
[2026-06-27 21:54:42,808.808 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:54:42,841.841 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:54:42,842.842 INFO    ] No update needed
[2026-06-27 21:54:42,844.844 INFO    ] Checking for camera pi updates...
[2026-06-27 21:54:42,864.864 INFO    ] 200
[2026-06-27 21:54:42,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:54:42,889.889 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:54:42,934.934 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:54:42,935.935 INFO    ] No camera update needed
[2026-06-27 21:54:42,937.937 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:54:42,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:54:42,941.941 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:54:42,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:54:44,982.982 INFO    ] ================================================
[2026-06-27 21:54:45,998.998 INFO    ] Launching Daemon at Sat Jun 27 21:54:44 IST 2026
[2026-06-27 21:54:45,010.010 INFO    ] ================================================
[2026-06-27 21:54:45,342.342 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:54:45
[2026-06-27 21:54:45,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:54:45,787.787 INFO    ] Initializing speech engine...
[2026-06-27 21:54:45,796.796 INFO    ] 2026-06-27 21:54:45
[2026-06-27 21:54:46,019.019 INFO    ] 2026-06-27 21:54:45
[2026-06-27 21:54:46,051.051 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:54:46,203.203 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:54:46,249.249 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:54:46,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:54:46,461.461 INFO    ] time= 27/06/2026 21:54:46
[2026-06-27 21:54:46,494.494 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:54:46,496.496 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:54:46,571.571 INFO    ] No existing commands found in stream
[2026-06-27 21:54:51,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:54:51,584.584 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-27 21:54:53,581.581 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 21:54:53,583.583 INFO    ] Checking for system updates...
[2026-06-27 21:54:53,604.604 INFO    ] 200
[2026-06-27 21:54:53,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:54:53,635.635 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:54:53,637.637 INFO    ] No update needed
[2026-06-27 21:54:53,638.638 INFO    ] Checking for camera pi updates...
[2026-06-27 21:54:53,657.657 INFO    ] 200
[2026-06-27 21:54:53,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:54:53,681.681 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:54:53,809.809 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:54:53,810.810 INFO    ] No camera update needed
[2026-06-27 21:54:53,812.812 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:54:53,813.813 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:54:53,816.816 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:54:53,819.819 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:54:55,857.857 INFO    ] ================================================
[2026-06-27 21:54:55,880.880 INFO    ] Launching Daemon at Sat Jun 27 21:54:55 IST 2026
[2026-06-27 21:54:55,892.892 INFO    ] ================================================
[2026-06-27 21:54:56,251.251 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:54:56
[2026-06-27 21:54:56,568.568 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:54:56,702.702 INFO    ] Initializing speech engine...
[2026-06-27 21:54:56,707.707 INFO    ] 2026-06-27 21:54:56
[2026-06-27 21:54:56,939.939 INFO    ] 2026-06-27 21:54:56
[2026-06-27 21:54:56,970.970 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:54:57,172.172 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:54:57,177.177 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:54:57,317.317 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:54:57,378.378 INFO    ] time= 27/06/2026 21:54:57
[2026-06-27 21:54:57,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:54:57,429.429 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:54:57,502.502 INFO    ] No existing commands found in stream
[2026-06-27 21:55:02,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:55:02,514.514 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-27 21:55:03,652.652 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 21:55:03,654.654 INFO    ] Checking for system updates...
[2026-06-27 21:55:03,675.675 INFO    ] 200
[2026-06-27 21:55:03,676.676 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:55:03,710.710 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:55:03,712.712 INFO    ] No update needed
[2026-06-27 21:55:03,713.713 INFO    ] Checking for camera pi updates...
[2026-06-27 21:55:03,734.734 INFO    ] 200
[2026-06-27 21:55:03,736.736 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:55:03,759.759 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:55:03,817.817 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:55:03,819.819 INFO    ] No camera update needed
[2026-06-27 21:55:03,820.820 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:55:03,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:55:03,825.825 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:55:03,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:55:05,866.866 INFO    ] ================================================
[2026-06-27 21:55:05,883.883 INFO    ] Launching Daemon at Sat Jun 27 21:55:05 IST 2026
[2026-06-27 21:55:05,902.902 INFO    ] ================================================
[2026-06-27 21:55:06,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:55:06
[2026-06-27 21:55:06,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:55:06,681.681 INFO    ] Initializing speech engine...
[2026-06-27 21:55:06,686.686 INFO    ] 2026-06-27 21:55:06
[2026-06-27 21:55:06,881.881 INFO    ] 2026-06-27 21:55:06
[2026-06-27 21:55:06,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:55:07,087.087 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:55:07,095.095 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:55:07,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:55:07,292.292 INFO    ] time= 27/06/2026 21:55:07
[2026-06-27 21:55:07,346.346 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:55:07,383.383 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:55:07,478.478 INFO    ] No existing commands found in stream
[2026-06-27 21:55:12,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:55:12,495.495 INFO    ] Waiting 2.54 seconds before fallback handling...
[2026-06-27 21:55:15,443.443 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 21:55:15,445.445 INFO    ] Checking for system updates...
[2026-06-27 21:55:15,466.466 INFO    ] 200
[2026-06-27 21:55:15,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:55:15,497.497 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:55:15,499.499 INFO    ] No update needed
[2026-06-27 21:55:15,500.500 INFO    ] Checking for camera pi updates...
[2026-06-27 21:55:15,520.520 INFO    ] 200
[2026-06-27 21:55:15,521.521 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:55:15,544.544 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:55:15,677.677 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:55:15,679.679 INFO    ] No camera update needed
[2026-06-27 21:55:15,680.680 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:55:15,681.681 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:55:15,684.684 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:55:15,687.687 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:55:17,726.726 INFO    ] ================================================
[2026-06-27 21:55:17,742.742 INFO    ] Launching Daemon at Sat Jun 27 21:55:17 IST 2026
[2026-06-27 21:55:17,753.753 INFO    ] ================================================
[2026-06-27 21:55:18,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:55:18
[2026-06-27 21:55:18,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:55:18,546.546 INFO    ] Initializing speech engine...
[2026-06-27 21:55:18,554.554 INFO    ] 2026-06-27 21:55:18
[2026-06-27 21:55:18,768.768 INFO    ] 2026-06-27 21:55:18
[2026-06-27 21:55:18,796.796 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:55:18,998.998 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:55:19,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:55:19,213.213 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:55:19,241.241 INFO    ] time= 27/06/2026 21:55:19
[2026-06-27 21:55:19,244.244 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:55:19,249.249 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:55:19,363.363 INFO    ] No existing commands found in stream
[2026-06-27 21:55:24,374.374 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:55:24,377.377 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-27 21:55:25,281.281 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 21:55:25,283.283 INFO    ] Checking for system updates...
[2026-06-27 21:55:25,305.305 INFO    ] 200
[2026-06-27 21:55:25,306.306 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:55:25,337.337 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:55:25,338.338 INFO    ] No update needed
[2026-06-27 21:55:25,339.339 INFO    ] Checking for camera pi updates...
[2026-06-27 21:55:25,360.360 INFO    ] 200
[2026-06-27 21:55:25,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:55:25,385.385 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:55:25,431.431 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:55:25,432.432 INFO    ] No camera update needed
[2026-06-27 21:55:25,433.433 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:55:25,435.435 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:55:25,438.438 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:55:25,441.441 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:55:27,479.479 INFO    ] ================================================
[2026-06-27 21:55:27,495.495 INFO    ] Launching Daemon at Sat Jun 27 21:55:27 IST 2026
[2026-06-27 21:55:27,507.507 INFO    ] ================================================
[2026-06-27 21:55:27,854.854 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:55:27
[2026-06-27 21:55:28,167.167 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:55:28,311.311 INFO    ] Initializing speech engine...
[2026-06-27 21:55:28,316.316 INFO    ] 2026-06-27 21:55:28
[2026-06-27 21:55:28,523.523 INFO    ] 2026-06-27 21:55:28
[2026-06-27 21:55:28,554.554 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:55:28,689.689 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:55:28,742.742 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:55:28,905.905 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:55:28,948.948 INFO    ] time= 27/06/2026 21:55:28
[2026-06-27 21:55:28,992.992 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:55:29,016.016 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:55:29,095.095 INFO    ] No existing commands found in stream
[2026-06-27 21:55:34,109.109 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:55:34,112.112 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-27 21:55:36,332.332 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 21:55:36,333.333 INFO    ] Checking for system updates...
[2026-06-27 21:55:36,355.355 INFO    ] 200
[2026-06-27 21:55:36,357.357 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:55:36,389.389 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:55:36,391.391 INFO    ] No update needed
[2026-06-27 21:55:36,392.392 INFO    ] Checking for camera pi updates...
[2026-06-27 21:55:36,411.411 INFO    ] 200
[2026-06-27 21:55:36,413.413 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:55:36,436.436 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:55:36,477.477 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:55:36,478.478 INFO    ] No camera update needed
[2026-06-27 21:55:36,480.480 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:55:36,481.481 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:55:36,484.484 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:55:36,487.487 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:55:38,525.525 INFO    ] ================================================
[2026-06-27 21:55:38,541.541 INFO    ] Launching Daemon at Sat Jun 27 21:55:38 IST 2026
[2026-06-27 21:55:38,552.552 INFO    ] ================================================
[2026-06-27 21:55:38,900.900 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:55:38
[2026-06-27 21:55:39,214.214 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:55:39,348.348 INFO    ] Initializing speech engine...
[2026-06-27 21:55:39,352.352 INFO    ] 2026-06-27 21:55:39
[2026-06-27 21:55:39,570.570 INFO    ] 2026-06-27 21:55:39
[2026-06-27 21:55:39,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:55:39,788.788 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:55:39,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:55:39,945.945 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:55:39,999.999 INFO    ] time= 27/06/2026 21:55:39
[2026-06-27 21:55:40,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:55:40,028.028 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:55:40,095.095 INFO    ] No existing commands found in stream
[2026-06-27 21:55:45,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:55:45,108.108 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-27 21:55:46,239.239 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 21:55:46,241.241 INFO    ] Checking for system updates...
[2026-06-27 21:55:46,261.261 INFO    ] 200
[2026-06-27 21:55:46,263.263 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:55:46,293.293 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:55:46,294.294 INFO    ] No update needed
[2026-06-27 21:55:46,296.296 INFO    ] Checking for camera pi updates...
[2026-06-27 21:55:46,315.315 INFO    ] 200
[2026-06-27 21:55:46,317.317 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:55:46,342.342 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:55:46,385.385 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:55:46,386.386 INFO    ] No camera update needed
[2026-06-27 21:55:46,387.387 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:55:46,389.389 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:55:46,392.392 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:55:46,395.395 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:55:48,436.436 INFO    ] ================================================
[2026-06-27 21:55:48,452.452 INFO    ] Launching Daemon at Sat Jun 27 21:55:48 IST 2026
[2026-06-27 21:55:48,463.463 INFO    ] ================================================
[2026-06-27 21:55:48,826.826 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:55:48
[2026-06-27 21:55:49,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:55:49,329.329 INFO    ] Initializing speech engine...
[2026-06-27 21:55:49,334.334 INFO    ] 2026-06-27 21:55:49
[2026-06-27 21:55:49,536.536 INFO    ] 2026-06-27 21:55:49
[2026-06-27 21:55:49,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:55:49,749.749 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:55:49,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:55:49,881.881 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:55:49,936.936 INFO    ] time= 27/06/2026 21:55:49
[2026-06-27 21:55:49,977.977 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:55:49,982.982 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:55:50,053.053 INFO    ] No existing commands found in stream
[2026-06-27 21:55:55,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:55:55,065.065 INFO    ] Waiting 0.47 seconds before fallback handling...
[2026-06-27 21:55:55,926.926 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 21:55:55,928.928 INFO    ] Checking for system updates...
[2026-06-27 21:55:55,948.948 INFO    ] 200
[2026-06-27 21:55:55,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:55:55,983.983 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:55:55,984.984 INFO    ] No update needed
[2026-06-27 21:55:55,986.986 INFO    ] Checking for camera pi updates...
[2026-06-27 21:55:56,005.005 INFO    ] 200
[2026-06-27 21:55:56,006.006 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:55:56,031.031 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:55:56,076.076 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:55:56,078.078 INFO    ] No camera update needed
[2026-06-27 21:55:56,079.079 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:55:56,080.080 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:55:56,083.083 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:55:56,086.086 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:55:58,126.126 INFO    ] ================================================
[2026-06-27 21:55:58,142.142 INFO    ] Launching Daemon at Sat Jun 27 21:55:58 IST 2026
[2026-06-27 21:55:58,153.153 INFO    ] ================================================
[2026-06-27 21:55:58,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:55:58
[2026-06-27 21:55:58,830.830 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:55:58,973.973 INFO    ] Initializing speech engine...
[2026-06-27 21:55:58,979.979 INFO    ] 2026-06-27 21:55:58
[2026-06-27 21:55:59,187.187 INFO    ] 2026-06-27 21:55:59
[2026-06-27 21:55:59,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:55:59,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:55:59,414.414 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:55:59,631.631 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:55:59,688.688 INFO    ] time= 27/06/2026 21:55:59
[2026-06-27 21:55:59,698.698 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:55:59,702.702 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:55:59,822.822 INFO    ] No existing commands found in stream
[2026-06-27 21:56:04,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:56:04,835.835 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-27 21:56:05,912.912 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:56:05,913.913 INFO    ] Checking for system updates...
[2026-06-27 21:56:05,935.935 INFO    ] 200
[2026-06-27 21:56:05,936.936 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:56:05,977.977 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:56:05,979.979 INFO    ] No update needed
[2026-06-27 21:56:05,981.981 INFO    ] Checking for camera pi updates...
[2026-06-27 21:56:06,006.006 INFO    ] 200
[2026-06-27 21:56:06,007.007 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:56:06,030.030 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:56:06,058.058 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:56:06,060.060 INFO    ] No camera update needed
[2026-06-27 21:56:06,061.061 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:56:06,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:56:06,065.065 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:56:06,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:56:08,108.108 INFO    ] ================================================
[2026-06-27 21:56:08,124.124 INFO    ] Launching Daemon at Sat Jun 27 21:56:08 IST 2026
[2026-06-27 21:56:08,135.135 INFO    ] ================================================
[2026-06-27 21:56:08,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:56:08
[2026-06-27 21:56:08,848.848 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:56:09,000.000 INFO    ] Initializing speech engine...
[2026-06-27 21:56:09,005.005 INFO    ] 2026-06-27 21:56:09
[2026-06-27 21:56:09,215.215 INFO    ] 2026-06-27 21:56:09
[2026-06-27 21:56:09,244.244 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:56:09,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:56:09,443.443 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:56:09,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:56:09,653.653 INFO    ] time= 27/06/2026 21:56:09
[2026-06-27 21:56:09,666.666 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:56:09,672.672 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:56:09,739.739 INFO    ] No existing commands found in stream
[2026-06-27 21:56:14,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:56:14,767.767 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-27 21:56:17,344.344 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 21:56:17,346.346 INFO    ] Checking for system updates...
[2026-06-27 21:56:17,368.368 INFO    ] 200
[2026-06-27 21:56:17,370.370 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:56:17,406.406 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:56:17,407.407 INFO    ] No update needed
[2026-06-27 21:56:17,409.409 INFO    ] Checking for camera pi updates...
[2026-06-27 21:56:17,431.431 INFO    ] 200
[2026-06-27 21:56:17,433.433 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:56:17,458.458 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:56:17,502.502 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:56:17,503.503 INFO    ] No camera update needed
[2026-06-27 21:56:17,505.505 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:56:17,506.506 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:56:17,509.509 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:56:17,512.512 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:56:19,551.551 INFO    ] ================================================
[2026-06-27 21:56:19,567.567 INFO    ] Launching Daemon at Sat Jun 27 21:56:19 IST 2026
[2026-06-27 21:56:19,578.578 INFO    ] ================================================
[2026-06-27 21:56:19,954.954 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:56:19
[2026-06-27 21:56:20,296.296 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:56:20,447.447 INFO    ] Initializing speech engine...
[2026-06-27 21:56:20,453.453 INFO    ] 2026-06-27 21:56:20
[2026-06-27 21:56:20,661.661 INFO    ] 2026-06-27 21:56:20
[2026-06-27 21:56:20,690.690 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:56:20,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:56:20,885.885 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:56:21,015.015 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:56:21,082.082 INFO    ] time= 27/06/2026 21:56:21
[2026-06-27 21:56:21,106.106 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:56:21,112.112 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:56:21,179.179 INFO    ] No existing commands found in stream
[2026-06-27 21:56:26,204.204 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:56:26,207.207 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-27 21:56:27,108.108 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 21:56:27,109.109 INFO    ] Checking for system updates...
[2026-06-27 21:56:27,131.131 INFO    ] 200
[2026-06-27 21:56:27,132.132 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:56:27,166.166 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:56:27,168.168 INFO    ] No update needed
[2026-06-27 21:56:27,169.169 INFO    ] Checking for camera pi updates...
[2026-06-27 21:56:27,191.191 INFO    ] 200
[2026-06-27 21:56:27,193.193 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:56:27,217.217 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:56:27,262.262 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:56:27,264.264 INFO    ] No camera update needed
[2026-06-27 21:56:27,265.265 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:56:27,267.267 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:56:27,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:56:27,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:56:29,313.313 INFO    ] ================================================
[2026-06-27 21:56:29,328.328 INFO    ] Launching Daemon at Sat Jun 27 21:56:29 IST 2026
[2026-06-27 21:56:29,339.339 INFO    ] ================================================
[2026-06-27 21:56:29,672.672 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:56:29
[2026-06-27 21:56:29,991.991 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:56:30,137.137 INFO    ] Initializing speech engine...
[2026-06-27 21:56:30,141.141 INFO    ] 2026-06-27 21:56:30
[2026-06-27 21:56:30,345.345 INFO    ] 2026-06-27 21:56:30
[2026-06-27 21:56:30,375.375 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:56:30,559.559 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:56:30,567.567 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:56:30,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:56:30,764.764 INFO    ] time= 27/06/2026 21:56:30
[2026-06-27 21:56:30,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:56:30,794.794 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:56:30,860.860 INFO    ] No existing commands found in stream
[2026-06-27 21:56:35,874.874 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:56:35,877.877 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-27 21:56:40,248.248 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 21:56:40,250.250 INFO    ] Checking for system updates...
[2026-06-27 21:56:40,271.271 INFO    ] 200
[2026-06-27 21:56:40,272.272 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:56:40,302.302 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:56:40,304.304 INFO    ] No update needed
[2026-06-27 21:56:40,305.305 INFO    ] Checking for camera pi updates...
[2026-06-27 21:56:40,325.325 INFO    ] 200
[2026-06-27 21:56:40,327.327 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:56:40,350.350 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:56:40,391.391 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:56:40,393.393 INFO    ] No camera update needed
[2026-06-27 21:56:40,394.394 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:56:40,395.395 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:56:40,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:56:40,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:56:42,442.442 INFO    ] ================================================
[2026-06-27 21:56:42,458.458 INFO    ] Launching Daemon at Sat Jun 27 21:56:42 IST 2026
[2026-06-27 21:56:42,469.469 INFO    ] ================================================
[2026-06-27 21:56:42,833.833 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:56:42
[2026-06-27 21:56:43,145.145 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:56:43,277.277 INFO    ] Initializing speech engine...
[2026-06-27 21:56:43,290.290 INFO    ] 2026-06-27 21:56:43
[2026-06-27 21:56:43,499.499 INFO    ] 2026-06-27 21:56:43
[2026-06-27 21:56:43,529.529 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:56:43,725.725 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:56:43,730.730 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:56:43,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:56:43,927.927 INFO    ] time= 27/06/2026 21:56:43
[2026-06-27 21:56:43,952.952 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:56:43,954.954 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:56:44,026.026 INFO    ] No existing commands found in stream
[2026-06-27 21:56:49,035.035 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:56:49,038.038 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-27 21:56:51,445.445 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:56:51,447.447 INFO    ] Checking for system updates...
[2026-06-27 21:56:51,469.469 INFO    ] 200
[2026-06-27 21:56:51,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:56:51,501.501 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:56:51,502.502 INFO    ] No update needed
[2026-06-27 21:56:51,504.504 INFO    ] Checking for camera pi updates...
[2026-06-27 21:56:51,525.525 INFO    ] 200
[2026-06-27 21:56:51,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:56:51,554.554 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:56:51,596.596 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:56:51,598.598 INFO    ] No camera update needed
[2026-06-27 21:56:51,599.599 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:56:51,600.600 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:56:51,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:56:51,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:56:53,646.646 INFO    ] ================================================
[2026-06-27 21:56:53,662.662 INFO    ] Launching Daemon at Sat Jun 27 21:56:53 IST 2026
[2026-06-27 21:56:53,674.674 INFO    ] ================================================
[2026-06-27 21:56:54,019.019 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:56:54
[2026-06-27 21:56:54,332.332 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:56:54,474.474 INFO    ] Initializing speech engine...
[2026-06-27 21:56:54,479.479 INFO    ] 2026-06-27 21:56:54
[2026-06-27 21:56:54,683.683 INFO    ] 2026-06-27 21:56:54
[2026-06-27 21:56:54,712.712 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:56:54,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:56:54,904.904 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:56:55,034.034 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:56:55,101.101 INFO    ] time= 27/06/2026 21:56:55
[2026-06-27 21:56:55,125.125 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:56:55,131.131 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:56:55,198.198 INFO    ] No existing commands found in stream
[2026-06-27 21:57:00,212.212 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:57:00,215.215 INFO    ] Waiting 1.76 seconds before fallback handling...
[2026-06-27 21:57:02,328.328 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 21:57:02,330.330 INFO    ] Checking for system updates...
[2026-06-27 21:57:02,350.350 INFO    ] 200
[2026-06-27 21:57:02,351.351 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:57:02,382.382 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:57:02,383.383 INFO    ] No update needed
[2026-06-27 21:57:02,384.384 INFO    ] Checking for camera pi updates...
[2026-06-27 21:57:02,404.404 INFO    ] 200
[2026-06-27 21:57:02,405.405 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:57:02,428.428 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:57:02,460.460 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:57:02,461.461 INFO    ] No camera update needed
[2026-06-27 21:57:02,462.462 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:57:02,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:57:02,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:57:02,469.469 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:57:04,511.511 INFO    ] ================================================
[2026-06-27 21:57:04,527.527 INFO    ] Launching Daemon at Sat Jun 27 21:57:04 IST 2026
[2026-06-27 21:57:04,539.539 INFO    ] ================================================
[2026-06-27 21:57:04,863.863 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:57:04
[2026-06-27 21:57:05,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:57:05,319.319 INFO    ] Initializing speech engine...
[2026-06-27 21:57:05,324.324 INFO    ] 2026-06-27 21:57:05
[2026-06-27 21:57:05,540.540 INFO    ] 2026-06-27 21:57:05
[2026-06-27 21:57:05,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:57:05,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:57:05,760.760 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:57:05,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:57:05,944.944 INFO    ] time= 27/06/2026 21:57:05
[2026-06-27 21:57:05,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:57:05,987.987 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:57:06,054.054 INFO    ] No existing commands found in stream
[2026-06-27 21:57:11,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:57:11,068.068 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-27 21:57:14,097.097 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 21:57:14,099.099 INFO    ] Checking for system updates...
[2026-06-27 21:57:14,144.144 INFO    ] 200
[2026-06-27 21:57:14,146.146 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:57:14,178.178 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:57:14,179.179 INFO    ] No update needed
[2026-06-27 21:57:14,181.181 INFO    ] Checking for camera pi updates...
[2026-06-27 21:57:14,201.201 INFO    ] 200
[2026-06-27 21:57:14,202.202 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:57:14,226.226 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:57:14,272.272 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:57:14,273.273 INFO    ] No camera update needed
[2026-06-27 21:57:14,275.275 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:57:14,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:57:14,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:57:14,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:57:16,321.321 INFO    ] ================================================
[2026-06-27 21:57:16,337.337 INFO    ] Launching Daemon at Sat Jun 27 21:57:16 IST 2026
[2026-06-27 21:57:16,348.348 INFO    ] ================================================
[2026-06-27 21:57:16,694.694 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:57:16
[2026-06-27 21:57:17,006.006 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:57:17,139.139 INFO    ] Initializing speech engine...
[2026-06-27 21:57:17,151.151 INFO    ] 2026-06-27 21:57:17
[2026-06-27 21:57:17,357.357 INFO    ] 2026-06-27 21:57:17
[2026-06-27 21:57:17,386.386 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:57:17,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:57:17,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:57:17,770.770 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:57:17,795.795 INFO    ] time= 27/06/2026 21:57:17
[2026-06-27 21:57:17,800.800 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:57:17,801.801 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:57:17,868.868 INFO    ] No existing commands found in stream
[2026-06-27 21:57:22,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:57:22,879.879 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-27 21:57:25,043.043 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:57:25,044.044 INFO    ] Checking for system updates...
[2026-06-27 21:57:25,066.066 INFO    ] 200
[2026-06-27 21:57:25,068.068 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:57:25,101.101 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:57:25,102.102 INFO    ] No update needed
[2026-06-27 21:57:25,103.103 INFO    ] Checking for camera pi updates...
[2026-06-27 21:57:25,125.125 INFO    ] 200
[2026-06-27 21:57:25,126.126 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:57:25,152.152 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:57:25,296.296 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:57:25,297.297 INFO    ] No camera update needed
[2026-06-27 21:57:25,298.298 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:57:25,300.300 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:57:25,303.303 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:57:25,306.306 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:57:27,347.347 INFO    ] ================================================
[2026-06-27 21:57:27,362.362 INFO    ] Launching Daemon at Sat Jun 27 21:57:27 IST 2026
[2026-06-27 21:57:27,373.373 INFO    ] ================================================
[2026-06-27 21:57:27,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:57:27
[2026-06-27 21:57:28,074.074 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:57:28,207.207 INFO    ] Initializing speech engine...
[2026-06-27 21:57:28,211.211 INFO    ] 2026-06-27 21:57:28
[2026-06-27 21:57:28,440.440 INFO    ] 2026-06-27 21:57:28
[2026-06-27 21:57:28,471.471 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:57:28,640.640 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:57:28,672.672 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:57:28,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:57:28,852.852 INFO    ] time= 27/06/2026 21:57:28
[2026-06-27 21:57:28,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:57:28,907.907 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:57:28,999.999 INFO    ] No existing commands found in stream
[2026-06-27 21:57:34,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:57:34,009.009 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-27 21:57:35,558.558 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:57:35,560.560 INFO    ] Checking for system updates...
[2026-06-27 21:57:35,581.581 INFO    ] 200
[2026-06-27 21:57:35,582.582 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:57:35,612.612 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:57:35,613.613 INFO    ] No update needed
[2026-06-27 21:57:35,615.615 INFO    ] Checking for camera pi updates...
[2026-06-27 21:57:35,634.634 INFO    ] 200
[2026-06-27 21:57:35,635.635 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:57:35,660.660 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:57:35,705.705 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:57:35,707.707 INFO    ] No camera update needed
[2026-06-27 21:57:35,708.708 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:57:35,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:57:35,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:57:35,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:57:37,755.755 INFO    ] ================================================
[2026-06-27 21:57:37,771.771 INFO    ] Launching Daemon at Sat Jun 27 21:57:37 IST 2026
[2026-06-27 21:57:37,782.782 INFO    ] ================================================
[2026-06-27 21:57:38,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:57:38
[2026-06-27 21:57:38,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:57:38,584.584 INFO    ] Initializing speech engine...
[2026-06-27 21:57:38,588.588 INFO    ] 2026-06-27 21:57:38
[2026-06-27 21:57:38,795.795 INFO    ] 2026-06-27 21:57:38
[2026-06-27 21:57:38,823.823 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:57:38,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:57:39,012.012 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:57:39,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:57:39,199.199 INFO    ] time= 27/06/2026 21:57:39
[2026-06-27 21:57:39,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:57:39,243.243 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:57:39,315.315 INFO    ] No existing commands found in stream
[2026-06-27 21:57:44,329.329 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:57:44,332.332 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-27 21:57:45,384.384 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 21:57:45,386.386 INFO    ] Checking for system updates...
[2026-06-27 21:57:45,408.408 INFO    ] 200
[2026-06-27 21:57:45,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:57:45,442.442 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:57:45,443.443 INFO    ] No update needed
[2026-06-27 21:57:45,445.445 INFO    ] Checking for camera pi updates...
[2026-06-27 21:57:45,465.465 INFO    ] 200
[2026-06-27 21:57:45,466.466 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:57:45,491.491 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:57:45,535.535 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:57:45,536.536 INFO    ] No camera update needed
[2026-06-27 21:57:45,537.537 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:57:45,538.538 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:57:45,541.541 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:57:45,544.544 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:57:47,584.584 INFO    ] ================================================
[2026-06-27 21:57:47,600.600 INFO    ] Launching Daemon at Sat Jun 27 21:57:47 IST 2026
[2026-06-27 21:57:47,611.611 INFO    ] ================================================
[2026-06-27 21:57:47,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:57:47
[2026-06-27 21:57:48,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:57:48,438.438 INFO    ] Initializing speech engine...
[2026-06-27 21:57:48,443.443 INFO    ] 2026-06-27 21:57:48
[2026-06-27 21:57:48,649.649 INFO    ] 2026-06-27 21:57:48
[2026-06-27 21:57:48,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:57:48,800.800 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:57:48,863.863 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:57:49,024.024 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:57:49,073.073 INFO    ] time= 27/06/2026 21:57:49
[2026-06-27 21:57:49,096.096 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:57:49,102.102 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:57:49,168.168 INFO    ] No existing commands found in stream
[2026-06-27 21:57:54,176.176 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:57:54,179.179 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-27 21:57:56,788.788 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:57:56,790.790 INFO    ] Checking for system updates...
[2026-06-27 21:57:56,811.811 INFO    ] 200
[2026-06-27 21:57:56,812.812 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:57:56,843.843 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:57:56,845.845 INFO    ] No update needed
[2026-06-27 21:57:56,846.846 INFO    ] Checking for camera pi updates...
[2026-06-27 21:57:56,866.866 INFO    ] 200
[2026-06-27 21:57:56,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:57:56,891.891 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:57:56,940.940 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:57:56,941.941 INFO    ] No camera update needed
[2026-06-27 21:57:56,942.942 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:57:56,944.944 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:57:56,947.947 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:57:56,950.950 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:57:58,989.989 INFO    ] ================================================
[2026-06-27 21:57:59,006.006 INFO    ] Launching Daemon at Sat Jun 27 21:57:59 IST 2026
[2026-06-27 21:57:59,018.018 INFO    ] ================================================
[2026-06-27 21:57:59,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:57:59
[2026-06-27 21:57:59,680.680 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:57:59,819.819 INFO    ] Initializing speech engine...
[2026-06-27 21:57:59,829.829 INFO    ] 2026-06-27 21:57:59
[2026-06-27 21:58:00,034.034 INFO    ] 2026-06-27 21:58:00
[2026-06-27 21:58:00,062.062 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:58:00,246.246 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:58:00,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:58:00,406.406 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:58:00,453.453 INFO    ] time= 27/06/2026 21:58:00
[2026-06-27 21:58:00,476.476 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:58:00,482.482 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:58:00,548.548 INFO    ] No existing commands found in stream
[2026-06-27 21:58:05,563.563 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:58:05,566.566 INFO    ] Waiting 1.28 seconds before fallback handling...
[2026-06-27 21:58:07,262.262 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 21:58:07,263.263 INFO    ] Checking for system updates...
[2026-06-27 21:58:07,285.285 INFO    ] 200
[2026-06-27 21:58:07,286.286 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:58:07,319.319 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:58:07,320.320 INFO    ] No update needed
[2026-06-27 21:58:07,322.322 INFO    ] Checking for camera pi updates...
[2026-06-27 21:58:07,341.341 INFO    ] 200
[2026-06-27 21:58:07,342.342 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:58:07,367.367 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:58:07,417.417 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:58:07,418.418 INFO    ] No camera update needed
[2026-06-27 21:58:07,420.420 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:58:07,421.421 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:58:07,424.424 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:58:07,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:58:09,465.465 INFO    ] ================================================
[2026-06-27 21:58:09,480.480 INFO    ] Launching Daemon at Sat Jun 27 21:58:09 IST 2026
[2026-06-27 21:58:09,491.491 INFO    ] ================================================
[2026-06-27 21:58:09,850.850 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:58:09
[2026-06-27 21:58:10,194.194 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:58:10,345.345 INFO    ] Initializing speech engine...
[2026-06-27 21:58:10,351.351 INFO    ] 2026-06-27 21:58:10
[2026-06-27 21:58:10,560.560 INFO    ] 2026-06-27 21:58:10
[2026-06-27 21:58:10,589.589 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:58:10,716.716 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:58:10,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:58:10,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:58:11,002.002 INFO    ] time= 27/06/2026 21:58:10
[2026-06-27 21:58:11,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:58:11,011.011 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:58:11,078.078 INFO    ] No existing commands found in stream
[2026-06-27 21:58:16,092.092 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:58:16,096.096 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-27 21:58:17,848.848 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 21:58:17,850.850 INFO    ] Checking for system updates...
[2026-06-27 21:58:17,872.872 INFO    ] 200
[2026-06-27 21:58:17,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:58:17,907.907 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:58:17,908.908 INFO    ] No update needed
[2026-06-27 21:58:17,910.910 INFO    ] Checking for camera pi updates...
[2026-06-27 21:58:17,932.932 INFO    ] 200
[2026-06-27 21:58:17,933.933 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:58:17,957.957 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:58:17,998.998 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:58:17,999.999 INFO    ] No camera update needed
[2026-06-27 21:58:18,001.001 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:58:18,002.002 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:58:18,006.006 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:58:18,009.009 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:58:20,048.048 INFO    ] ================================================
[2026-06-27 21:58:20,063.063 INFO    ] Launching Daemon at Sat Jun 27 21:58:20 IST 2026
[2026-06-27 21:58:20,074.074 INFO    ] ================================================
[2026-06-27 21:58:20,437.437 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:58:20
[2026-06-27 21:58:20,750.750 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:58:20,893.893 INFO    ] Initializing speech engine...
[2026-06-27 21:58:20,898.898 INFO    ] 2026-06-27 21:58:20
[2026-06-27 21:58:21,102.102 INFO    ] 2026-06-27 21:58:21
[2026-06-27 21:58:21,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:58:21,314.314 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:58:21,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:58:21,503.503 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:58:21,532.532 INFO    ] time= 27/06/2026 21:58:21
[2026-06-27 21:58:21,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:58:21,548.548 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:58:21,616.616 INFO    ] No existing commands found in stream
[2026-06-27 21:58:26,625.625 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:58:26,628.628 INFO    ] Waiting 2.83 seconds before fallback handling...
[2026-06-27 21:58:29,863.863 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:58:29,865.865 INFO    ] Checking for system updates...
[2026-06-27 21:58:29,886.886 INFO    ] 200
[2026-06-27 21:58:29,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:58:29,918.918 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:58:29,919.919 INFO    ] No update needed
[2026-06-27 21:58:29,921.921 INFO    ] Checking for camera pi updates...
[2026-06-27 21:58:29,940.940 INFO    ] 200
[2026-06-27 21:58:29,941.941 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:58:29,965.965 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:58:30,009.009 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:58:30,011.011 INFO    ] No camera update needed
[2026-06-27 21:58:30,012.012 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:58:30,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:58:30,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:58:30,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:58:32,050.050 INFO    ] ================================================
[2026-06-27 21:58:32,059.059 INFO    ] Launching Daemon at Sat Jun 27 21:58:32 IST 2026
[2026-06-27 21:58:32,065.065 INFO    ] ================================================
[2026-06-27 21:58:32,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:58:32
[2026-06-27 21:58:32,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:58:32,864.864 INFO    ] Initializing speech engine...
[2026-06-27 21:58:32,877.877 INFO    ] 2026-06-27 21:58:32
[2026-06-27 21:58:33,097.097 INFO    ] 2026-06-27 21:58:33
[2026-06-27 21:58:33,128.128 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:58:33,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:58:33,337.337 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:58:33,534.534 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:58:33,573.573 INFO    ] time= 27/06/2026 21:58:33
[2026-06-27 21:58:33,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:58:33,581.581 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:58:33,656.656 INFO    ] No existing commands found in stream
[2026-06-27 21:58:38,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:58:38,666.666 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-27 21:58:39,129.129 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 21:58:39,130.130 INFO    ] Checking for system updates...
[2026-06-27 21:58:39,157.157 INFO    ] 200
[2026-06-27 21:58:39,158.158 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:58:39,198.198 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:58:39,199.199 INFO    ] No update needed
[2026-06-27 21:58:39,200.200 INFO    ] Checking for camera pi updates...
[2026-06-27 21:58:39,220.220 INFO    ] 200
[2026-06-27 21:58:39,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:58:39,248.248 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:58:39,293.293 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:58:39,294.294 INFO    ] No camera update needed
[2026-06-27 21:58:39,296.296 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:58:39,297.297 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:58:39,300.300 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:58:39,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:58:41,344.344 INFO    ] ================================================
[2026-06-27 21:58:41,359.359 INFO    ] Launching Daemon at Sat Jun 27 21:58:41 IST 2026
[2026-06-27 21:58:41,370.370 INFO    ] ================================================
[2026-06-27 21:58:41,747.747 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:58:41
[2026-06-27 21:58:42,086.086 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:58:42,237.237 INFO    ] Initializing speech engine...
[2026-06-27 21:58:42,242.242 INFO    ] 2026-06-27 21:58:42
[2026-06-27 21:58:42,450.450 INFO    ] 2026-06-27 21:58:42
[2026-06-27 21:58:42,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:58:42,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:58:42,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:58:42,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:58:42,869.869 INFO    ] time= 27/06/2026 21:58:42
[2026-06-27 21:58:42,891.891 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:58:42,897.897 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:58:42,964.964 INFO    ] No existing commands found in stream
[2026-06-27 21:58:47,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:58:47,977.977 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-27 21:58:49,797.797 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 21:58:49,799.799 INFO    ] Checking for system updates...
[2026-06-27 21:58:49,820.820 INFO    ] 200
[2026-06-27 21:58:49,822.822 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:58:49,852.852 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:58:49,854.854 INFO    ] No update needed
[2026-06-27 21:58:49,855.855 INFO    ] Checking for camera pi updates...
[2026-06-27 21:58:49,875.875 INFO    ] 200
[2026-06-27 21:58:49,876.876 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:58:49,900.900 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:58:49,944.944 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:58:49,946.946 INFO    ] No camera update needed
[2026-06-27 21:58:49,947.947 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:58:49,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:58:49,952.952 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:58:49,955.955 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:58:52,996.996 INFO    ] ================================================
[2026-06-27 21:58:52,011.011 INFO    ] Launching Daemon at Sat Jun 27 21:58:52 IST 2026
[2026-06-27 21:58:52,022.022 INFO    ] ================================================
[2026-06-27 21:58:52,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:58:52
[2026-06-27 21:58:52,669.669 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:58:52,806.806 INFO    ] Initializing speech engine...
[2026-06-27 21:58:52,817.817 INFO    ] 2026-06-27 21:58:52
[2026-06-27 21:58:53,019.019 INFO    ] 2026-06-27 21:58:53
[2026-06-27 21:58:53,048.048 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:58:53,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:58:53,233.233 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:58:53,376.376 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:58:53,437.437 INFO    ] time= 27/06/2026 21:58:53
[2026-06-27 21:58:53,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:58:53,467.467 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:58:53,534.534 INFO    ] No existing commands found in stream
[2026-06-27 21:58:58,548.548 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:58:58,550.550 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-27 21:58:59,303.303 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 21:58:59,305.305 INFO    ] Checking for system updates...
[2026-06-27 21:58:59,325.325 INFO    ] 200
[2026-06-27 21:58:59,327.327 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:58:59,357.357 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:58:59,359.359 INFO    ] No update needed
[2026-06-27 21:58:59,360.360 INFO    ] Checking for camera pi updates...
[2026-06-27 21:58:59,381.381 INFO    ] 200
[2026-06-27 21:58:59,382.382 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:58:59,407.407 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:58:59,466.466 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:58:59,467.467 INFO    ] No camera update needed
[2026-06-27 21:58:59,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:58:59,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:58:59,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:58:59,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:59:01,529.529 INFO    ] ================================================
[2026-06-27 21:59:01,576.576 INFO    ] Launching Daemon at Sat Jun 27 21:59:01 IST 2026
[2026-06-27 21:59:01,609.609 INFO    ] ================================================
[2026-06-27 21:59:02,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:59:02
[2026-06-27 21:59:02,431.431 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:59:02,603.603 INFO    ] Initializing speech engine...
[2026-06-27 21:59:02,611.611 INFO    ] 2026-06-27 21:59:02
[2026-06-27 21:59:02,828.828 INFO    ] 2026-06-27 21:59:02
[2026-06-27 21:59:02,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:59:02,980.980 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:59:03,032.032 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:59:03,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:59:03,239.239 INFO    ] time= 27/06/2026 21:59:03
[2026-06-27 21:59:03,271.271 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:59:03,277.277 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:59:03,345.345 INFO    ] No existing commands found in stream
[2026-06-27 21:59:08,354.354 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:59:08,356.356 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-27 21:59:12,299.299 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 21:59:12,300.300 INFO    ] Checking for system updates...
[2026-06-27 21:59:12,323.323 INFO    ] 200
[2026-06-27 21:59:12,325.325 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:59:12,355.355 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:59:12,356.356 INFO    ] No update needed
[2026-06-27 21:59:12,357.357 INFO    ] Checking for camera pi updates...
[2026-06-27 21:59:12,380.380 INFO    ] 200
[2026-06-27 21:59:12,381.381 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:59:12,404.404 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:59:12,448.448 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:59:12,450.450 INFO    ] No camera update needed
[2026-06-27 21:59:12,451.451 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:59:12,452.452 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:59:12,455.455 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:59:12,458.458 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:59:14,497.497 INFO    ] ================================================
[2026-06-27 21:59:14,512.512 INFO    ] Launching Daemon at Sat Jun 27 21:59:14 IST 2026
[2026-06-27 21:59:14,529.529 INFO    ] ================================================
[2026-06-27 21:59:14,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:59:14
[2026-06-27 21:59:15,206.206 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:59:15,349.349 INFO    ] Initializing speech engine...
[2026-06-27 21:59:15,360.360 INFO    ] 2026-06-27 21:59:15
[2026-06-27 21:59:15,567.567 INFO    ] 2026-06-27 21:59:15
[2026-06-27 21:59:15,596.596 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:59:15,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:59:15,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:59:15,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:59:15,988.988 INFO    ] time= 27/06/2026 21:59:15
[2026-06-27 21:59:16,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:59:16,017.017 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:59:16,085.085 INFO    ] No existing commands found in stream
[2026-06-27 21:59:21,096.096 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:59:21,099.099 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-27 21:59:23,557.557 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 21:59:23,558.558 INFO    ] Checking for system updates...
[2026-06-27 21:59:23,579.579 INFO    ] 200
[2026-06-27 21:59:23,581.581 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:59:23,613.613 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:59:23,615.615 INFO    ] No update needed
[2026-06-27 21:59:23,617.617 INFO    ] Checking for camera pi updates...
[2026-06-27 21:59:23,637.637 INFO    ] 200
[2026-06-27 21:59:23,639.639 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:59:23,664.664 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:59:23,708.708 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:59:23,709.709 INFO    ] No camera update needed
[2026-06-27 21:59:23,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:59:23,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:59:23,715.715 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:59:23,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:59:25,757.757 INFO    ] ================================================
[2026-06-27 21:59:25,772.772 INFO    ] Launching Daemon at Sat Jun 27 21:59:25 IST 2026
[2026-06-27 21:59:25,782.782 INFO    ] ================================================
[2026-06-27 21:59:26,146.146 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:59:26
[2026-06-27 21:59:26,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:59:26,588.588 INFO    ] Initializing speech engine...
[2026-06-27 21:59:26,591.591 INFO    ] 2026-06-27 21:59:26
[2026-06-27 21:59:26,818.818 INFO    ] 2026-06-27 21:59:26
[2026-06-27 21:59:26,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:59:27,047.047 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:59:27,057.057 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:59:27,194.194 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:59:27,258.258 INFO    ] time= 27/06/2026 21:59:27
[2026-06-27 21:59:27,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:59:27,297.297 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:59:27,367.367 INFO    ] No existing commands found in stream
[2026-06-27 21:59:32,375.375 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:59:32,376.376 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-27 21:59:32,964.964 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 21:59:32,966.966 INFO    ] Checking for system updates...
[2026-06-27 21:59:32,987.987 INFO    ] 200
[2026-06-27 21:59:32,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:59:33,019.019 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:59:33,020.020 INFO    ] No update needed
[2026-06-27 21:59:33,022.022 INFO    ] Checking for camera pi updates...
[2026-06-27 21:59:33,042.042 INFO    ] 200
[2026-06-27 21:59:33,043.043 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:59:33,066.066 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:59:33,096.096 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 21:59:33,098.098 INFO    ] No camera update needed
[2026-06-27 21:59:33,099.099 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:59:33,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:59:33,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:59:33,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:59:35,144.144 INFO    ] ================================================
[2026-06-27 21:59:35,159.159 INFO    ] Launching Daemon at Sat Jun 27 21:59:35 IST 2026
[2026-06-27 21:59:35,170.170 INFO    ] ================================================
[2026-06-27 21:59:35,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:59:35
[2026-06-27 21:59:35,855.855 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:59:35,999.999 INFO    ] Initializing speech engine...
[2026-06-27 21:59:36,002.002 INFO    ] 2026-06-27 21:59:36
[2026-06-27 21:59:36,208.208 INFO    ] 2026-06-27 21:59:36
[2026-06-27 21:59:36,237.237 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:59:36,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:59:36,422.422 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:59:36,574.574 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:59:36,627.627 INFO    ] time= 27/06/2026 21:59:36
[2026-06-27 21:59:36,649.649 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:59:36,656.656 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:59:36,722.722 INFO    ] No existing commands found in stream
[2026-06-27 21:59:41,736.736 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:59:41,739.739 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-27 21:59:45,092.092 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 21:59:45,093.093 INFO    ] Checking for system updates...
[2026-06-27 21:59:45,114.114 INFO    ] 200
[2026-06-27 21:59:45,115.115 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:59:45,148.148 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:59:45,149.149 INFO    ] No update needed
[2026-06-27 21:59:45,150.150 INFO    ] Checking for camera pi updates...
[2026-06-27 21:59:45,170.170 INFO    ] 200
[2026-06-27 21:59:45,171.171 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:59:45,195.195 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:59:45,234.234 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:59:45,236.236 INFO    ] No camera update needed
[2026-06-27 21:59:45,237.237 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:59:45,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:59:45,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:59:45,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:59:47,284.284 INFO    ] ================================================
[2026-06-27 21:59:47,299.299 INFO    ] Launching Daemon at Sat Jun 27 21:59:47 IST 2026
[2026-06-27 21:59:47,310.310 INFO    ] ================================================
[2026-06-27 21:59:47,656.656 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:59:47
[2026-06-27 21:59:47,968.968 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:59:48,099.099 INFO    ] Initializing speech engine...
[2026-06-27 21:59:48,103.103 INFO    ] 2026-06-27 21:59:48
[2026-06-27 21:59:48,323.323 INFO    ] 2026-06-27 21:59:48
[2026-06-27 21:59:48,352.352 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:59:48,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:59:48,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:59:48,697.697 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:59:48,751.751 INFO    ] time= 27/06/2026 21:59:48
[2026-06-27 21:59:48,774.774 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:59:48,780.780 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:59:48,872.872 INFO    ] No existing commands found in stream
[2026-06-27 21:59:53,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 21:59:53,885.885 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-27 21:59:55,022.022 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 21:59:55,023.023 INFO    ] Checking for system updates...
[2026-06-27 21:59:55,044.044 INFO    ] 200
[2026-06-27 21:59:55,046.046 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:59:55,078.078 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:59:55,079.079 INFO    ] No update needed
[2026-06-27 21:59:55,080.080 INFO    ] Checking for camera pi updates...
[2026-06-27 21:59:55,099.099 INFO    ] 200
[2026-06-27 21:59:55,101.101 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 21:59:55,128.128 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 21:59:55,162.162 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 21:59:55,163.163 INFO    ] No camera update needed
[2026-06-27 21:59:55,165.165 INFO    ] Script finished. Safe exiting...
[2026-06-27 21:59:55,166.166 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 21:59:55,169.169 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 21:59:55,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 21:59:57,209.209 INFO    ] ================================================
[2026-06-27 21:59:57,225.225 INFO    ] Launching Daemon at Sat Jun 27 21:59:57 IST 2026
[2026-06-27 21:59:57,235.235 INFO    ] ================================================
[2026-06-27 21:59:57,593.593 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 21:59:57
[2026-06-27 21:59:57,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 21:59:58,037.037 INFO    ] Initializing speech engine...
[2026-06-27 21:59:58,045.045 INFO    ] 2026-06-27 21:59:58
[2026-06-27 21:59:58,260.260 INFO    ] 2026-06-27 21:59:58
[2026-06-27 21:59:58,290.290 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 21:59:58,476.476 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 21:59:58,485.485 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 21:59:58,613.613 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 21:59:58,676.676 INFO    ] time= 27/06/2026 21:59:58
[2026-06-27 21:59:58,709.709 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 21:59:58,715.715 INFO    ] Checking for existing commands in stream...
[2026-06-27 21:59:58,783.783 INFO    ] No existing commands found in stream
[2026-06-27 22:00:03,791.791 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:00:03,793.793 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-27 22:00:07,497.497 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 22:00:07,499.499 INFO    ] Checking for system updates...
[2026-06-27 22:00:07,520.520 INFO    ] 200
[2026-06-27 22:00:07,521.521 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:00:07,552.552 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:00:07,554.554 INFO    ] No update needed
[2026-06-27 22:00:07,556.556 INFO    ] Checking for camera pi updates...
[2026-06-27 22:00:07,581.581 INFO    ] 200
[2026-06-27 22:00:07,584.584 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:00:07,615.615 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:00:07,665.665 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:00:07,667.667 INFO    ] No camera update needed
[2026-06-27 22:00:07,668.668 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:00:07,669.669 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:00:07,672.672 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:00:07,675.675 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:00:09,715.715 INFO    ] ================================================
[2026-06-27 22:00:09,730.730 INFO    ] Launching Daemon at Sat Jun 27 22:00:09 IST 2026
[2026-06-27 22:00:09,741.741 INFO    ] ================================================
[2026-06-27 22:00:10,069.069 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:00:10
[2026-06-27 22:00:10,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:00:10,523.523 INFO    ] Initializing speech engine...
[2026-06-27 22:00:10,528.528 INFO    ] 2026-06-27 22:00:10
[2026-06-27 22:00:10,731.731 INFO    ] 2026-06-27 22:00:10
[2026-06-27 22:00:10,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:00:10,881.881 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:00:10,920.920 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:00:11,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:00:11,151.151 INFO    ] time= 27/06/2026 22:00:11
[2026-06-27 22:00:11,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:00:11,181.181 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:00:11,248.248 INFO    ] No existing commands found in stream
[2026-06-27 22:00:16,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:00:16,260.260 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-27 22:00:16,678.678 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 22:00:16,679.679 INFO    ] Checking for system updates...
[2026-06-27 22:00:16,702.702 INFO    ] 200
[2026-06-27 22:00:16,704.704 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:00:16,736.736 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:00:16,738.738 INFO    ] No update needed
[2026-06-27 22:00:16,739.739 INFO    ] Checking for camera pi updates...
[2026-06-27 22:00:16,760.760 INFO    ] 200
[2026-06-27 22:00:16,761.761 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:00:16,787.787 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:00:16,832.832 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:00:16,834.834 INFO    ] No camera update needed
[2026-06-27 22:00:16,835.835 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:00:16,836.836 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:00:16,839.839 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:00:16,842.842 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:00:18,881.881 INFO    ] ================================================
[2026-06-27 22:00:18,896.896 INFO    ] Launching Daemon at Sat Jun 27 22:00:18 IST 2026
[2026-06-27 22:00:18,907.907 INFO    ] ================================================
[2026-06-27 22:00:19,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:00:19
[2026-06-27 22:00:19,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:00:19,700.700 INFO    ] Initializing speech engine...
[2026-06-27 22:00:19,712.712 INFO    ] 2026-06-27 22:00:19
[2026-06-27 22:00:19,922.922 INFO    ] 2026-06-27 22:00:19
[2026-06-27 22:00:19,951.951 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:00:20,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:00:20,133.133 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:00:20,291.291 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:00:20,350.350 INFO    ] time= 27/06/2026 22:00:20
[2026-06-27 22:00:20,373.373 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:00:20,379.379 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:00:20,447.447 INFO    ] No existing commands found in stream
[2026-06-27 22:00:25,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:00:25,458.458 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-27 22:00:26,668.668 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 22:00:26,670.670 INFO    ] Checking for system updates...
[2026-06-27 22:00:26,692.692 INFO    ] 200
[2026-06-27 22:00:26,694.694 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:00:26,726.726 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:00:26,727.727 INFO    ] No update needed
[2026-06-27 22:00:26,728.728 INFO    ] Checking for camera pi updates...
[2026-06-27 22:00:26,748.748 INFO    ] 200
[2026-06-27 22:00:26,750.750 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:00:26,774.774 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:00:26,819.819 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:00:26,821.821 INFO    ] No camera update needed
[2026-06-27 22:00:26,822.822 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:00:26,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:00:26,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:00:26,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:00:28,867.867 INFO    ] ================================================
[2026-06-27 22:00:28,882.882 INFO    ] Launching Daemon at Sat Jun 27 22:00:28 IST 2026
[2026-06-27 22:00:28,893.893 INFO    ] ================================================
[2026-06-27 22:00:29,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:00:29
[2026-06-27 22:00:29,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:00:29,678.678 INFO    ] Initializing speech engine...
[2026-06-27 22:00:29,684.684 INFO    ] 2026-06-27 22:00:29
[2026-06-27 22:00:29,891.891 INFO    ] 2026-06-27 22:00:29
[2026-06-27 22:00:29,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:00:30,103.103 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:00:30,113.113 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:00:30,290.290 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:00:30,314.314 INFO    ] time= 27/06/2026 22:00:30
[2026-06-27 22:00:30,335.335 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:00:30,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:00:30,408.408 INFO    ] No existing commands found in stream
[2026-06-27 22:00:35,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:00:35,421.421 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-27 22:00:37,644.644 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 22:00:37,646.646 INFO    ] Checking for system updates...
[2026-06-27 22:00:37,667.667 INFO    ] 200
[2026-06-27 22:00:37,668.668 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:00:37,700.700 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:00:37,701.701 INFO    ] No update needed
[2026-06-27 22:00:37,703.703 INFO    ] Checking for camera pi updates...
[2026-06-27 22:00:37,722.722 INFO    ] 200
[2026-06-27 22:00:37,724.724 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:00:37,749.749 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:00:37,801.801 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:00:37,802.802 INFO    ] No camera update needed
[2026-06-27 22:00:37,803.803 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:00:37,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:00:37,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:00:37,810.810 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:00:39,848.848 INFO    ] ================================================
[2026-06-27 22:00:39,863.863 INFO    ] Launching Daemon at Sat Jun 27 22:00:39 IST 2026
[2026-06-27 22:00:39,874.874 INFO    ] ================================================
[2026-06-27 22:00:40,232.232 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:00:40
[2026-06-27 22:00:40,543.543 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:00:40,681.681 INFO    ] Initializing speech engine...
[2026-06-27 22:00:40,690.690 INFO    ] 2026-06-27 22:00:40
[2026-06-27 22:00:40,893.893 INFO    ] 2026-06-27 22:00:40
[2026-06-27 22:00:40,922.922 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:00:41,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:00:41,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:00:41,244.244 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:00:41,298.298 INFO    ] time= 27/06/2026 22:00:41
[2026-06-27 22:00:41,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:00:41,341.341 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:00:41,409.409 INFO    ] No existing commands found in stream
[2026-06-27 22:00:46,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:00:46,429.429 INFO    ] Waiting 1.20 seconds before fallback handling...
[2026-06-27 22:00:48,047.047 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 22:00:48,049.049 INFO    ] Checking for system updates...
[2026-06-27 22:00:48,070.070 INFO    ] 200
[2026-06-27 22:00:48,071.071 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:00:48,102.102 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:00:48,103.103 INFO    ] No update needed
[2026-06-27 22:00:48,105.105 INFO    ] Checking for camera pi updates...
[2026-06-27 22:00:48,125.125 INFO    ] 200
[2026-06-27 22:00:48,126.126 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:00:48,150.150 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:00:48,199.199 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:00:48,200.200 INFO    ] No camera update needed
[2026-06-27 22:00:48,201.201 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:00:48,203.203 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:00:48,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:00:48,209.209 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:00:50,243.243 INFO    ] ================================================
[2026-06-27 22:00:50,252.252 INFO    ] Launching Daemon at Sat Jun 27 22:00:50 IST 2026
[2026-06-27 22:00:50,259.259 INFO    ] ================================================
[2026-06-27 22:00:50,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:00:50
[2026-06-27 22:00:50,980.980 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:00:51,131.131 INFO    ] Initializing speech engine...
[2026-06-27 22:00:51,137.137 INFO    ] 2026-06-27 22:00:51
[2026-06-27 22:00:51,351.351 INFO    ] 2026-06-27 22:00:51
[2026-06-27 22:00:51,381.381 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:00:51,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:00:51,575.575 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:00:51,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:00:51,790.790 INFO    ] time= 27/06/2026 22:00:51
[2026-06-27 22:00:51,811.811 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:00:51,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:00:51,886.886 INFO    ] No existing commands found in stream
[2026-06-27 22:00:56,895.895 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:00:56,898.898 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-27 22:00:59,331.331 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:00:59,333.333 INFO    ] Checking for system updates...
[2026-06-27 22:00:59,353.353 INFO    ] 200
[2026-06-27 22:00:59,355.355 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:00:59,385.385 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:00:59,387.387 INFO    ] No update needed
[2026-06-27 22:00:59,388.388 INFO    ] Checking for camera pi updates...
[2026-06-27 22:00:59,408.408 INFO    ] 200
[2026-06-27 22:00:59,409.409 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:00:59,435.435 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:00:59,486.486 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:00:59,488.488 INFO    ] No camera update needed
[2026-06-27 22:00:59,489.489 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:00:59,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:00:59,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:00:59,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:01:01,536.536 INFO    ] ================================================
[2026-06-27 22:01:01,553.553 INFO    ] Launching Daemon at Sat Jun 27 22:01:01 IST 2026
[2026-06-27 22:01:01,564.564 INFO    ] ================================================
[2026-06-27 22:01:02,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:01:02
[2026-06-27 22:01:02,379.379 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:01:02,559.559 INFO    ] Initializing speech engine...
[2026-06-27 22:01:02,577.577 INFO    ] 2026-06-27 22:01:02
[2026-06-27 22:01:02,813.813 INFO    ] 2026-06-27 22:01:02
[2026-06-27 22:01:02,852.852 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:01:02,975.975 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:01:03,038.038 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:01:03,170.170 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:01:03,225.225 INFO    ] time= 27/06/2026 22:01:03
[2026-06-27 22:01:03,255.255 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:01:03,271.271 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:01:03,342.342 INFO    ] No existing commands found in stream
[2026-06-27 22:01:08,356.356 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:01:08,359.359 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-27 22:01:09,864.864 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:01:09,865.865 INFO    ] Checking for system updates...
[2026-06-27 22:01:09,886.886 INFO    ] 200
[2026-06-27 22:01:09,887.887 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:01:09,918.918 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:01:09,919.919 INFO    ] No update needed
[2026-06-27 22:01:09,920.920 INFO    ] Checking for camera pi updates...
[2026-06-27 22:01:09,940.940 INFO    ] 200
[2026-06-27 22:01:09,941.941 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:01:09,964.964 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:01:10,018.018 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:01:10,020.020 INFO    ] No camera update needed
[2026-06-27 22:01:10,021.021 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:01:10,022.022 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:01:10,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:01:10,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:01:12,068.068 INFO    ] ================================================
[2026-06-27 22:01:12,084.084 INFO    ] Launching Daemon at Sat Jun 27 22:01:12 IST 2026
[2026-06-27 22:01:12,094.094 INFO    ] ================================================
[2026-06-27 22:01:12,470.470 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:01:12
[2026-06-27 22:01:12,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:01:12,982.982 INFO    ] Initializing speech engine...
[2026-06-27 22:01:12,987.987 INFO    ] 2026-06-27 22:01:12
[2026-06-27 22:01:13,199.199 INFO    ] 2026-06-27 22:01:13
[2026-06-27 22:01:13,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:01:13,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:01:13,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:01:13,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:01:13,631.631 INFO    ] time= 27/06/2026 22:01:13
[2026-06-27 22:01:13,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:01:13,661.661 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:01:13,729.729 INFO    ] No existing commands found in stream
[2026-06-27 22:01:18,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:01:18,748.748 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-27 22:01:20,079.079 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:01:20,081.081 INFO    ] Checking for system updates...
[2026-06-27 22:01:20,102.102 INFO    ] 200
[2026-06-27 22:01:20,104.104 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:01:20,135.135 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:01:20,136.136 INFO    ] No update needed
[2026-06-27 22:01:20,137.137 INFO    ] Checking for camera pi updates...
[2026-06-27 22:01:20,161.161 INFO    ] 200
[2026-06-27 22:01:20,162.162 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:01:20,188.188 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:01:20,245.245 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:01:20,246.246 INFO    ] No camera update needed
[2026-06-27 22:01:20,247.247 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:01:20,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:01:20,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:01:20,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:01:22,293.293 INFO    ] ================================================
[2026-06-27 22:01:22,309.309 INFO    ] Launching Daemon at Sat Jun 27 22:01:22 IST 2026
[2026-06-27 22:01:22,320.320 INFO    ] ================================================
[2026-06-27 22:01:22,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:01:22
[2026-06-27 22:01:22,993.993 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:01:23,138.138 INFO    ] Initializing speech engine...
[2026-06-27 22:01:23,143.143 INFO    ] 2026-06-27 22:01:23
[2026-06-27 22:01:23,334.334 INFO    ] 2026-06-27 22:01:23
[2026-06-27 22:01:23,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:01:23,537.537 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:01:23,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:01:23,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:01:23,758.758 INFO    ] time= 27/06/2026 22:01:23
[2026-06-27 22:01:23,799.799 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:01:23,844.844 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:01:23,945.945 INFO    ] No existing commands found in stream
[2026-06-27 22:01:28,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:01:28,958.958 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-27 22:01:31,622.622 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 22:01:31,624.624 INFO    ] Checking for system updates...
[2026-06-27 22:01:31,646.646 INFO    ] 200
[2026-06-27 22:01:31,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:01:31,682.682 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:01:31,684.684 INFO    ] No update needed
[2026-06-27 22:01:31,686.686 INFO    ] Checking for camera pi updates...
[2026-06-27 22:01:31,720.720 INFO    ] 200
[2026-06-27 22:01:31,722.722 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:01:31,754.754 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:01:31,789.789 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:01:31,790.790 INFO    ] No camera update needed
[2026-06-27 22:01:31,792.792 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:01:31,794.794 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:01:31,797.797 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:01:31,801.801 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:01:33,841.841 INFO    ] ================================================
[2026-06-27 22:01:33,857.857 INFO    ] Launching Daemon at Sat Jun 27 22:01:33 IST 2026
[2026-06-27 22:01:33,868.868 INFO    ] ================================================
[2026-06-27 22:01:34,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:01:34
[2026-06-27 22:01:34,511.511 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:01:34,654.654 INFO    ] Initializing speech engine...
[2026-06-27 22:01:34,659.659 INFO    ] 2026-06-27 22:01:34
[2026-06-27 22:01:34,864.864 INFO    ] 2026-06-27 22:01:34
[2026-06-27 22:01:34,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:01:35,086.086 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:01:35,100.100 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:01:35,367.367 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:01:35,371.371 INFO    ] time= 27/06/2026 22:01:35
[2026-06-27 22:01:35,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:01:35,398.398 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:01:35,499.499 INFO    ] No existing commands found in stream
[2026-06-27 22:01:40,508.508 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:01:40,511.511 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-27 22:01:41,463.463 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 22:01:41,464.464 INFO    ] Checking for system updates...
[2026-06-27 22:01:41,485.485 INFO    ] 200
[2026-06-27 22:01:41,486.486 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:01:41,517.517 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:01:41,519.519 INFO    ] No update needed
[2026-06-27 22:01:41,520.520 INFO    ] Checking for camera pi updates...
[2026-06-27 22:01:41,539.539 INFO    ] 200
[2026-06-27 22:01:41,541.541 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:01:41,564.564 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:01:41,705.705 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:01:41,706.706 INFO    ] No camera update needed
[2026-06-27 22:01:41,707.707 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:01:41,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:01:41,711.711 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:01:41,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:01:43,753.753 INFO    ] ================================================
[2026-06-27 22:01:43,767.767 INFO    ] Launching Daemon at Sat Jun 27 22:01:43 IST 2026
[2026-06-27 22:01:43,779.779 INFO    ] ================================================
[2026-06-27 22:01:44,174.174 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:01:44
[2026-06-27 22:01:44,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:01:44,675.675 INFO    ] Initializing speech engine...
[2026-06-27 22:01:44,679.679 INFO    ] 2026-06-27 22:01:44
[2026-06-27 22:01:44,890.890 INFO    ] 2026-06-27 22:01:44
[2026-06-27 22:01:44,921.921 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:01:45,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:01:45,107.107 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:01:45,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:01:45,310.310 INFO    ] time= 27/06/2026 22:01:45
[2026-06-27 22:01:45,336.336 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:01:45,343.343 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:01:45,409.409 INFO    ] No existing commands found in stream
[2026-06-27 22:01:50,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:01:50,421.421 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-27 22:01:50,811.811 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 22:01:50,813.813 INFO    ] Checking for system updates...
[2026-06-27 22:01:50,834.834 INFO    ] 200
[2026-06-27 22:01:50,835.835 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:01:50,873.873 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:01:50,874.874 INFO    ] No update needed
[2026-06-27 22:01:50,876.876 INFO    ] Checking for camera pi updates...
[2026-06-27 22:01:50,897.897 INFO    ] 200
[2026-06-27 22:01:50,898.898 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:01:50,923.923 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:01:50,975.975 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:01:50,977.977 INFO    ] No camera update needed
[2026-06-27 22:01:50,978.978 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:01:50,979.979 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:01:50,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:01:50,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:01:53,024.024 INFO    ] ================================================
[2026-06-27 22:01:53,040.040 INFO    ] Launching Daemon at Sat Jun 27 22:01:53 IST 2026
[2026-06-27 22:01:53,051.051 INFO    ] ================================================
[2026-06-27 22:01:53,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:01:53
[2026-06-27 22:01:53,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:01:53,837.837 INFO    ] Initializing speech engine...
[2026-06-27 22:01:53,841.841 INFO    ] 2026-06-27 22:01:53
[2026-06-27 22:01:54,056.056 INFO    ] 2026-06-27 22:01:54
[2026-06-27 22:01:54,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:01:54,293.293 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:01:54,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:01:54,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:01:54,563.563 INFO    ] time= 27/06/2026 22:01:54
[2026-06-27 22:01:54,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:01:54,595.595 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:01:54,705.705 INFO    ] No existing commands found in stream
[2026-06-27 22:01:59,715.715 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:01:59,718.718 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-27 22:02:02,199.199 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 22:02:02,202.202 INFO    ] Checking for system updates...
[2026-06-27 22:02:02,236.236 INFO    ] 200
[2026-06-27 22:02:02,239.239 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:02:02,278.278 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:02:02,280.280 INFO    ] No update needed
[2026-06-27 22:02:02,282.282 INFO    ] Checking for camera pi updates...
[2026-06-27 22:02:02,318.318 INFO    ] 200
[2026-06-27 22:02:02,320.320 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:02:02,348.348 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:02:02,380.380 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:02:02,382.382 INFO    ] No camera update needed
[2026-06-27 22:02:02,385.385 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:02:02,393.393 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:02:02,398.398 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:02:02,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:02:04,442.442 INFO    ] ================================================
[2026-06-27 22:02:04,458.458 INFO    ] Launching Daemon at Sat Jun 27 22:02:04 IST 2026
[2026-06-27 22:02:04,469.469 INFO    ] ================================================
[2026-06-27 22:02:04,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:02:04
[2026-06-27 22:02:05,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:02:05,259.259 INFO    ] Initializing speech engine...
[2026-06-27 22:02:05,273.273 INFO    ] 2026-06-27 22:02:05
[2026-06-27 22:02:05,456.456 INFO    ] 2026-06-27 22:02:05
[2026-06-27 22:02:05,502.502 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:02:05,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:02:05,713.713 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:02:05,824.824 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:02:05,827.827 INFO    ] time= 27/06/2026 22:02:05
[2026-06-27 22:02:05,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:02:05,855.855 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:02:05,964.964 INFO    ] No existing commands found in stream
[2026-06-27 22:02:10,994.994 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:02:10,997.997 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-27 22:02:12,587.587 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 22:02:12,588.588 INFO    ] Checking for system updates...
[2026-06-27 22:02:12,609.609 INFO    ] 200
[2026-06-27 22:02:12,611.611 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:02:12,646.646 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:02:12,648.648 INFO    ] No update needed
[2026-06-27 22:02:12,649.649 INFO    ] Checking for camera pi updates...
[2026-06-27 22:02:12,669.669 INFO    ] 200
[2026-06-27 22:02:12,671.671 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:02:12,697.697 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:02:12,739.739 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:02:12,741.741 INFO    ] No camera update needed
[2026-06-27 22:02:12,743.743 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:02:12,745.745 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:02:12,748.748 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:02:12,751.751 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:02:14,791.791 INFO    ] ================================================
[2026-06-27 22:02:14,807.807 INFO    ] Launching Daemon at Sat Jun 27 22:02:14 IST 2026
[2026-06-27 22:02:14,819.819 INFO    ] ================================================
[2026-06-27 22:02:15,173.173 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:02:15
[2026-06-27 22:02:15,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:02:15,629.629 INFO    ] Initializing speech engine...
[2026-06-27 22:02:15,634.634 INFO    ] 2026-06-27 22:02:15
[2026-06-27 22:02:15,834.834 INFO    ] 2026-06-27 22:02:15
[2026-06-27 22:02:15,881.881 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:02:16,046.046 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:02:16,114.114 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:02:16,275.275 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:02:16,318.318 INFO    ] time= 27/06/2026 22:02:16
[2026-06-27 22:02:16,365.365 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:02:16,389.389 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:02:16,470.470 INFO    ] No existing commands found in stream
[2026-06-27 22:02:21,481.481 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:02:21,484.484 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-27 22:02:24,948.948 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:02:24,950.950 INFO    ] Checking for system updates...
[2026-06-27 22:02:24,971.971 INFO    ] 200
[2026-06-27 22:02:24,972.972 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:02:25,004.004 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:02:25,005.005 INFO    ] No update needed
[2026-06-27 22:02:25,006.006 INFO    ] Checking for camera pi updates...
[2026-06-27 22:02:25,026.026 INFO    ] 200
[2026-06-27 22:02:25,028.028 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:02:25,052.052 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:02:25,097.097 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:02:25,099.099 INFO    ] No camera update needed
[2026-06-27 22:02:25,100.100 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:02:25,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:02:25,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:02:25,107.107 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:02:27,138.138 INFO    ] ================================================
[2026-06-27 22:02:27,146.146 INFO    ] Launching Daemon at Sat Jun 27 22:02:27 IST 2026
[2026-06-27 22:02:27,152.152 INFO    ] ================================================
[2026-06-27 22:02:27,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:02:27
[2026-06-27 22:02:27,778.778 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:02:27,910.910 INFO    ] Initializing speech engine...
[2026-06-27 22:02:27,918.918 INFO    ] 2026-06-27 22:02:27
[2026-06-27 22:02:28,144.144 INFO    ] 2026-06-27 22:02:28
[2026-06-27 22:02:28,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:02:28,308.308 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:02:28,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:02:28,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:02:28,615.615 INFO    ] time= 27/06/2026 22:02:28
[2026-06-27 22:02:28,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:02:28,627.627 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:02:28,697.697 INFO    ] No existing commands found in stream
[2026-06-27 22:02:33,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:02:33,706.706 INFO    ] Waiting 2.62 seconds before fallback handling...
[2026-06-27 22:02:36,747.747 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 22:02:36,748.748 INFO    ] Checking for system updates...
[2026-06-27 22:02:36,769.769 INFO    ] 200
[2026-06-27 22:02:36,771.771 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:02:36,802.802 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:02:36,804.804 INFO    ] No update needed
[2026-06-27 22:02:36,805.805 INFO    ] Checking for camera pi updates...
[2026-06-27 22:02:36,826.826 INFO    ] 200
[2026-06-27 22:02:36,827.827 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:02:36,851.851 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:02:36,901.901 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:02:36,903.903 INFO    ] No camera update needed
[2026-06-27 22:02:36,904.904 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:02:36,905.905 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:02:36,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:02:36,911.911 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:02:38,951.951 INFO    ] ================================================
[2026-06-27 22:02:38,966.966 INFO    ] Launching Daemon at Sat Jun 27 22:02:38 IST 2026
[2026-06-27 22:02:38,977.977 INFO    ] ================================================
[2026-06-27 22:02:39,335.335 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:02:39
[2026-06-27 22:02:39,655.655 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:02:39,787.787 INFO    ] Initializing speech engine...
[2026-06-27 22:02:39,795.795 INFO    ] 2026-06-27 22:02:39
[2026-06-27 22:02:40,007.007 INFO    ] 2026-06-27 22:02:39
[2026-06-27 22:02:40,036.036 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:02:40,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:02:40,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:02:40,362.362 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:02:40,421.421 INFO    ] time= 27/06/2026 22:02:40
[2026-06-27 22:02:40,454.454 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:02:40,460.460 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:02:40,527.527 INFO    ] No existing commands found in stream
[2026-06-27 22:02:45,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:02:45,544.544 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-27 22:02:48,880.880 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 22:02:48,881.881 INFO    ] Checking for system updates...
[2026-06-27 22:02:48,902.902 INFO    ] 200
[2026-06-27 22:02:48,903.903 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:02:48,937.937 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:02:48,938.938 INFO    ] No update needed
[2026-06-27 22:02:48,940.940 INFO    ] Checking for camera pi updates...
[2026-06-27 22:02:48,959.959 INFO    ] 200
[2026-06-27 22:02:48,960.960 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:02:48,986.986 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:02:49,030.030 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:02:49,031.031 INFO    ] No camera update needed
[2026-06-27 22:02:49,033.033 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:02:49,034.034 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:02:49,037.037 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:02:49,040.040 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:02:51,086.086 INFO    ] ================================================
[2026-06-27 22:02:51,103.103 INFO    ] Launching Daemon at Sat Jun 27 22:02:51 IST 2026
[2026-06-27 22:02:51,115.115 INFO    ] ================================================
[2026-06-27 22:02:51,465.465 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:02:51
[2026-06-27 22:02:51,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:02:51,966.966 INFO    ] Initializing speech engine...
[2026-06-27 22:02:51,974.974 INFO    ] 2026-06-27 22:02:51
[2026-06-27 22:02:52,177.177 INFO    ] 2026-06-27 22:02:52
[2026-06-27 22:02:52,205.205 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:02:52,333.333 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:02:52,396.396 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:02:52,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:02:52,604.604 INFO    ] time= 27/06/2026 22:02:52
[2026-06-27 22:02:52,627.627 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:02:52,633.633 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:02:52,698.698 INFO    ] No existing commands found in stream
[2026-06-27 22:02:57,707.707 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:02:57,710.710 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-27 22:03:00,068.068 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 22:03:00,074.074 INFO    ] Checking for system updates...
[2026-06-27 22:03:00,096.096 INFO    ] 200
[2026-06-27 22:03:00,097.097 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:03:00,129.129 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:03:00,130.130 INFO    ] No update needed
[2026-06-27 22:03:00,131.131 INFO    ] Checking for camera pi updates...
[2026-06-27 22:03:00,151.151 INFO    ] 200
[2026-06-27 22:03:00,153.153 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:03:00,185.185 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:03:00,229.229 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:03:00,231.231 INFO    ] No camera update needed
[2026-06-27 22:03:00,232.232 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:03:00,233.233 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:03:00,236.236 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:03:00,239.239 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:03:02,266.266 INFO    ] ================================================
[2026-06-27 22:03:02,280.280 INFO    ] Launching Daemon at Sat Jun 27 22:03:02 IST 2026
[2026-06-27 22:03:02,287.287 INFO    ] ================================================
[2026-06-27 22:03:02,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:03:02
[2026-06-27 22:03:02,976.976 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:03:03,131.131 INFO    ] Initializing speech engine...
[2026-06-27 22:03:03,135.135 INFO    ] 2026-06-27 22:03:03
[2026-06-27 22:03:03,342.342 INFO    ] 2026-06-27 22:03:03
[2026-06-27 22:03:03,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:03:03,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:03:03,559.559 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:03:03,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:03:03,782.782 INFO    ] time= 27/06/2026 22:03:03
[2026-06-27 22:03:03,789.789 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:03:03,791.791 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:03:03,857.857 INFO    ] No existing commands found in stream
[2026-06-27 22:03:08,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:03:08,870.870 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-27 22:03:12,798.798 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 22:03:12,799.799 INFO    ] Checking for system updates...
[2026-06-27 22:03:12,820.820 INFO    ] 200
[2026-06-27 22:03:12,822.822 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:03:12,854.854 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:03:12,856.856 INFO    ] No update needed
[2026-06-27 22:03:12,857.857 INFO    ] Checking for camera pi updates...
[2026-06-27 22:03:12,876.876 INFO    ] 200
[2026-06-27 22:03:12,878.878 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:03:12,903.903 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:03:12,957.957 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:03:12,958.958 INFO    ] No camera update needed
[2026-06-27 22:03:12,959.959 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:03:12,960.960 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:03:12,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:03:12,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:03:15,005.005 INFO    ] ================================================
[2026-06-27 22:03:15,020.020 INFO    ] Launching Daemon at Sat Jun 27 22:03:15 IST 2026
[2026-06-27 22:03:15,031.031 INFO    ] ================================================
[2026-06-27 22:03:15,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:03:15
[2026-06-27 22:03:15,720.720 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:03:15,873.873 INFO    ] Initializing speech engine...
[2026-06-27 22:03:15,879.879 INFO    ] 2026-06-27 22:03:15
[2026-06-27 22:03:16,089.089 INFO    ] 2026-06-27 22:03:16
[2026-06-27 22:03:16,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:03:16,244.244 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:03:16,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:03:16,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:03:16,514.514 INFO    ] time= 27/06/2026 22:03:16
[2026-06-27 22:03:16,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:03:16,549.549 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:03:16,617.617 INFO    ] No existing commands found in stream
[2026-06-27 22:03:21,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:03:21,635.635 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-27 22:03:25,128.128 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 22:03:25,130.130 INFO    ] Checking for system updates...
[2026-06-27 22:03:25,151.151 INFO    ] 200
[2026-06-27 22:03:25,153.153 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:03:25,186.186 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:03:25,188.188 INFO    ] No update needed
[2026-06-27 22:03:25,190.190 INFO    ] Checking for camera pi updates...
[2026-06-27 22:03:25,213.213 INFO    ] 200
[2026-06-27 22:03:25,214.214 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:03:25,238.238 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:03:25,290.290 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:03:25,291.291 INFO    ] No camera update needed
[2026-06-27 22:03:25,292.292 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:03:25,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:03:25,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:03:25,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:03:27,343.343 INFO    ] ================================================
[2026-06-27 22:03:27,359.359 INFO    ] Launching Daemon at Sat Jun 27 22:03:27 IST 2026
[2026-06-27 22:03:27,370.370 INFO    ] ================================================
[2026-06-27 22:03:27,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:03:27
[2026-06-27 22:03:28,078.078 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:03:28,230.230 INFO    ] Initializing speech engine...
[2026-06-27 22:03:28,236.236 INFO    ] 2026-06-27 22:03:28
[2026-06-27 22:03:28,447.447 INFO    ] 2026-06-27 22:03:28
[2026-06-27 22:03:28,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:03:28,761.761 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:03:28,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:03:28,959.959 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:03:28,963.963 INFO    ] time= 27/06/2026 22:03:28
[2026-06-27 22:03:28,989.989 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:03:28,990.990 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:03:29,088.088 INFO    ] No existing commands found in stream
[2026-06-27 22:03:34,098.098 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:03:34,102.102 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-27 22:03:35,708.708 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 22:03:35,710.710 INFO    ] Checking for system updates...
[2026-06-27 22:03:35,731.731 INFO    ] 200
[2026-06-27 22:03:35,732.732 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:03:35,763.763 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:03:35,765.765 INFO    ] No update needed
[2026-06-27 22:03:35,766.766 INFO    ] Checking for camera pi updates...
[2026-06-27 22:03:35,786.786 INFO    ] 200
[2026-06-27 22:03:35,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:03:35,810.810 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:03:35,856.856 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:03:35,857.857 INFO    ] No camera update needed
[2026-06-27 22:03:35,859.859 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:03:35,860.860 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:03:35,863.863 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:03:35,866.866 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:03:37,904.904 INFO    ] ================================================
[2026-06-27 22:03:37,919.919 INFO    ] Launching Daemon at Sat Jun 27 22:03:37 IST 2026
[2026-06-27 22:03:37,929.929 INFO    ] ================================================
[2026-06-27 22:03:38,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:03:38
[2026-06-27 22:03:38,618.618 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:03:38,758.758 INFO    ] Initializing speech engine...
[2026-06-27 22:03:38,769.769 INFO    ] 2026-06-27 22:03:38
[2026-06-27 22:03:38,973.973 INFO    ] 2026-06-27 22:03:38
[2026-06-27 22:03:39,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:03:39,185.185 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:03:39,195.195 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:03:39,330.330 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:03:39,392.392 INFO    ] time= 27/06/2026 22:03:39
[2026-06-27 22:03:39,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:03:39,422.422 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:03:39,489.489 INFO    ] No existing commands found in stream
[2026-06-27 22:03:44,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:03:44,501.501 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-27 22:03:47,609.609 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 22:03:47,611.611 INFO    ] Checking for system updates...
[2026-06-27 22:03:47,633.633 INFO    ] 200
[2026-06-27 22:03:47,635.635 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:03:47,668.668 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:03:47,669.669 INFO    ] No update needed
[2026-06-27 22:03:47,670.670 INFO    ] Checking for camera pi updates...
[2026-06-27 22:03:47,691.691 INFO    ] 200
[2026-06-27 22:03:47,692.692 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:03:47,717.717 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:03:47,860.860 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:03:47,861.861 INFO    ] No camera update needed
[2026-06-27 22:03:47,862.862 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:03:47,864.864 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:03:47,867.867 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:03:47,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:03:49,909.909 INFO    ] ================================================
[2026-06-27 22:03:49,924.924 INFO    ] Launching Daemon at Sat Jun 27 22:03:49 IST 2026
[2026-06-27 22:03:49,934.934 INFO    ] ================================================
[2026-06-27 22:03:50,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:03:50
[2026-06-27 22:03:50,649.649 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:03:50,782.782 INFO    ] Initializing speech engine...
[2026-06-27 22:03:50,787.787 INFO    ] 2026-06-27 22:03:50
[2026-06-27 22:03:50,996.996 INFO    ] 2026-06-27 22:03:50
[2026-06-27 22:03:51,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:03:51,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:03:51,221.221 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:03:51,394.394 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:03:51,446.446 INFO    ] time= 27/06/2026 22:03:51
[2026-06-27 22:03:51,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:03:51,504.504 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:03:51,581.581 INFO    ] No existing commands found in stream
[2026-06-27 22:03:56,590.590 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:03:56,593.593 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-27 22:03:59,713.713 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 22:03:59,715.715 INFO    ] Checking for system updates...
[2026-06-27 22:03:59,737.737 INFO    ] 200
[2026-06-27 22:03:59,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:03:59,769.769 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:03:59,770.770 INFO    ] No update needed
[2026-06-27 22:03:59,772.772 INFO    ] Checking for camera pi updates...
[2026-06-27 22:03:59,792.792 INFO    ] 200
[2026-06-27 22:03:59,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:03:59,819.819 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:03:59,861.861 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:03:59,862.862 INFO    ] No camera update needed
[2026-06-27 22:03:59,863.863 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:03:59,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:03:59,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:03:59,870.870 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:04:01,904.904 INFO    ] ================================================
[2026-06-27 22:04:01,917.917 INFO    ] Launching Daemon at Sat Jun 27 22:04:01 IST 2026
[2026-06-27 22:04:01,925.925 INFO    ] ================================================
[2026-06-27 22:04:02,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:04:02
[2026-06-27 22:04:02,643.643 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:04:02,775.775 INFO    ] Initializing speech engine...
[2026-06-27 22:04:02,783.783 INFO    ] 2026-06-27 22:04:02
[2026-06-27 22:04:02,994.994 INFO    ] 2026-06-27 22:04:02
[2026-06-27 22:04:03,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:04:03,150.150 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:04:03,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:04:03,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:04:03,413.413 INFO    ] time= 27/06/2026 22:04:03
[2026-06-27 22:04:03,436.436 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:04:03,442.442 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:04:03,509.509 INFO    ] No existing commands found in stream
[2026-06-27 22:04:08,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:04:08,521.521 INFO    ] Waiting 1.19 seconds before fallback handling...
[2026-06-27 22:04:10,146.146 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:04:10,147.147 INFO    ] Checking for system updates...
[2026-06-27 22:04:10,168.168 INFO    ] 200
[2026-06-27 22:04:10,169.169 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:04:10,202.202 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:04:10,203.203 INFO    ] No update needed
[2026-06-27 22:04:10,204.204 INFO    ] Checking for camera pi updates...
[2026-06-27 22:04:10,225.225 INFO    ] 200
[2026-06-27 22:04:10,227.227 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:04:10,251.251 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:04:10,290.290 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:04:10,291.291 INFO    ] No camera update needed
[2026-06-27 22:04:10,293.293 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:04:10,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:04:10,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:04:10,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:04:12,339.339 INFO    ] ================================================
[2026-06-27 22:04:12,354.354 INFO    ] Launching Daemon at Sat Jun 27 22:04:12 IST 2026
[2026-06-27 22:04:12,365.365 INFO    ] ================================================
[2026-06-27 22:04:12,723.723 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:04:12
[2026-06-27 22:04:13,041.041 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:04:13,175.175 INFO    ] Initializing speech engine...
[2026-06-27 22:04:13,180.180 INFO    ] 2026-06-27 22:04:13
[2026-06-27 22:04:13,410.410 INFO    ] 2026-06-27 22:04:13
[2026-06-27 22:04:13,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:04:13,574.574 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:04:13,612.612 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:04:13,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:04:13,787.787 INFO    ] time= 27/06/2026 22:04:13
[2026-06-27 22:04:13,828.828 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:04:13,873.873 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:04:13,969.969 INFO    ] No existing commands found in stream
[2026-06-27 22:04:18,980.980 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:04:18,983.983 INFO    ] Waiting 0.71 seconds before fallback handling...
[2026-06-27 22:04:20,186.186 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 22:04:20,188.188 INFO    ] Checking for system updates...
[2026-06-27 22:04:20,210.210 INFO    ] 200
[2026-06-27 22:04:20,211.211 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:04:20,242.242 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:04:20,243.243 INFO    ] No update needed
[2026-06-27 22:04:20,245.245 INFO    ] Checking for camera pi updates...
[2026-06-27 22:04:20,266.266 INFO    ] 200
[2026-06-27 22:04:20,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:04:20,291.291 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:04:20,339.339 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:04:20,340.340 INFO    ] No camera update needed
[2026-06-27 22:04:20,342.342 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:04:20,343.343 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:04:20,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:04:20,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:04:22,387.387 INFO    ] ================================================
[2026-06-27 22:04:22,402.402 INFO    ] Launching Daemon at Sat Jun 27 22:04:22 IST 2026
[2026-06-27 22:04:22,412.412 INFO    ] ================================================
[2026-06-27 22:04:22,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:04:22
[2026-06-27 22:04:23,137.137 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:04:23,290.290 INFO    ] Initializing speech engine...
[2026-06-27 22:04:23,296.296 INFO    ] 2026-06-27 22:04:23
[2026-06-27 22:04:23,506.506 INFO    ] 2026-06-27 22:04:23
[2026-06-27 22:04:23,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:04:23,724.724 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:04:23,734.734 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:04:23,866.866 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:04:23,934.934 INFO    ] time= 27/06/2026 22:04:23
[2026-06-27 22:04:23,959.959 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:04:23,965.965 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:04:24,038.038 INFO    ] No existing commands found in stream
[2026-06-27 22:04:29,066.066 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:04:29,069.069 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-27 22:04:31,022.022 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:04:31,023.023 INFO    ] Checking for system updates...
[2026-06-27 22:04:31,045.045 INFO    ] 200
[2026-06-27 22:04:31,047.047 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:04:31,077.077 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:04:31,079.079 INFO    ] No update needed
[2026-06-27 22:04:31,080.080 INFO    ] Checking for camera pi updates...
[2026-06-27 22:04:31,101.101 INFO    ] 200
[2026-06-27 22:04:31,102.102 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:04:31,125.125 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:04:31,183.183 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:04:31,184.184 INFO    ] No camera update needed
[2026-06-27 22:04:31,186.186 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:04:31,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:04:31,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:04:31,192.192 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:04:33,223.223 INFO    ] ================================================
[2026-06-27 22:04:33,239.239 INFO    ] Launching Daemon at Sat Jun 27 22:04:33 IST 2026
[2026-06-27 22:04:33,249.249 INFO    ] ================================================
[2026-06-27 22:04:33,595.595 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:04:33
[2026-06-27 22:04:33,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:04:34,050.050 INFO    ] Initializing speech engine...
[2026-06-27 22:04:34,055.055 INFO    ] 2026-06-27 22:04:34
[2026-06-27 22:04:34,260.260 INFO    ] 2026-06-27 22:04:34
[2026-06-27 22:04:34,288.288 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:04:34,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:04:34,482.482 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:04:34,612.612 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:04:34,680.680 INFO    ] time= 27/06/2026 22:04:34
[2026-06-27 22:04:34,705.705 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:04:34,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:04:34,779.779 INFO    ] No existing commands found in stream
[2026-06-27 22:04:39,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:04:39,791.791 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-27 22:04:40,956.956 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:04:40,958.958 INFO    ] Checking for system updates...
[2026-06-27 22:04:40,981.981 INFO    ] 200
[2026-06-27 22:04:40,982.982 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:04:41,014.014 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:04:41,016.016 INFO    ] No update needed
[2026-06-27 22:04:41,017.017 INFO    ] Checking for camera pi updates...
[2026-06-27 22:04:41,037.037 INFO    ] 200
[2026-06-27 22:04:41,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:04:41,063.063 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:04:41,109.109 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:04:41,110.110 INFO    ] No camera update needed
[2026-06-27 22:04:41,111.111 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:04:41,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:04:41,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:04:41,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:04:43,156.156 INFO    ] ================================================
[2026-06-27 22:04:43,171.171 INFO    ] Launching Daemon at Sat Jun 27 22:04:43 IST 2026
[2026-06-27 22:04:43,182.182 INFO    ] ================================================
[2026-06-27 22:04:43,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:04:43
[2026-06-27 22:04:43,837.837 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:04:43,978.978 INFO    ] Initializing speech engine...
[2026-06-27 22:04:43,983.983 INFO    ] 2026-06-27 22:04:43
[2026-06-27 22:04:44,188.188 INFO    ] 2026-06-27 22:04:44
[2026-06-27 22:04:44,215.215 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:04:44,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:04:44,409.409 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:04:44,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:04:44,602.602 INFO    ] time= 27/06/2026 22:04:44
[2026-06-27 22:04:44,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:04:44,635.635 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:04:44,702.702 INFO    ] No existing commands found in stream
[2026-06-27 22:04:49,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:04:49,719.719 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-27 22:04:50,198.198 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:04:50,199.199 INFO    ] Checking for system updates...
[2026-06-27 22:04:50,220.220 INFO    ] 200
[2026-06-27 22:04:50,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:04:50,256.256 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:04:50,257.257 INFO    ] No update needed
[2026-06-27 22:04:50,258.258 INFO    ] Checking for camera pi updates...
[2026-06-27 22:04:50,279.279 INFO    ] 200
[2026-06-27 22:04:50,280.280 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:04:50,304.304 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:04:50,343.343 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:04:50,344.344 INFO    ] No camera update needed
[2026-06-27 22:04:50,346.346 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:04:50,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:04:50,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:04:50,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:04:52,390.390 INFO    ] ================================================
[2026-06-27 22:04:52,405.405 INFO    ] Launching Daemon at Sat Jun 27 22:04:52 IST 2026
[2026-06-27 22:04:52,416.416 INFO    ] ================================================
[2026-06-27 22:04:52,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:04:52
[2026-06-27 22:04:53,084.084 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:04:53,229.229 INFO    ] Initializing speech engine...
[2026-06-27 22:04:53,233.233 INFO    ] 2026-06-27 22:04:53
[2026-06-27 22:04:53,437.437 INFO    ] 2026-06-27 22:04:53
[2026-06-27 22:04:53,465.465 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:04:53,623.623 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:04:53,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:04:53,806.806 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:04:53,860.860 INFO    ] time= 27/06/2026 22:04:53
[2026-06-27 22:04:53,882.882 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:04:53,888.888 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:04:53,956.956 INFO    ] No existing commands found in stream
[2026-06-27 22:04:58,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:04:58,968.968 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-27 22:05:00,422.422 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:05:00,424.424 INFO    ] Checking for system updates...
[2026-06-27 22:05:00,445.445 INFO    ] 200
[2026-06-27 22:05:00,447.447 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:05:00,479.479 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:05:00,481.481 INFO    ] No update needed
[2026-06-27 22:05:00,482.482 INFO    ] Checking for camera pi updates...
[2026-06-27 22:05:00,501.501 INFO    ] 200
[2026-06-27 22:05:00,503.503 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:05:00,526.526 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:05:00,574.574 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:05:00,575.575 INFO    ] No camera update needed
[2026-06-27 22:05:00,577.577 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:05:00,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:05:00,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:05:00,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:05:02,613.613 INFO    ] ================================================
[2026-06-27 22:05:02,623.623 INFO    ] Launching Daemon at Sat Jun 27 22:05:02 IST 2026
[2026-06-27 22:05:02,632.632 INFO    ] ================================================
[2026-06-27 22:05:02,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:05:02
[2026-06-27 22:05:03,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:05:03,416.416 INFO    ] Initializing speech engine...
[2026-06-27 22:05:03,421.421 INFO    ] 2026-06-27 22:05:03
[2026-06-27 22:05:03,623.623 INFO    ] 2026-06-27 22:05:03
[2026-06-27 22:05:03,653.653 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:05:03,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:05:03,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:05:03,969.969 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:05:04,025.025 INFO    ] time= 27/06/2026 22:05:03
[2026-06-27 22:05:04,064.064 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:05:04,069.069 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:05:04,141.141 INFO    ] No existing commands found in stream
[2026-06-27 22:05:09,150.150 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:05:09,152.152 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-27 22:05:10,545.545 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:05:10,547.547 INFO    ] Checking for system updates...
[2026-06-27 22:05:10,569.569 INFO    ] 200
[2026-06-27 22:05:10,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:05:10,602.602 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:05:10,604.604 INFO    ] No update needed
[2026-06-27 22:05:10,605.605 INFO    ] Checking for camera pi updates...
[2026-06-27 22:05:10,626.626 INFO    ] 200
[2026-06-27 22:05:10,627.627 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:05:10,652.652 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:05:10,694.694 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:05:10,695.695 INFO    ] No camera update needed
[2026-06-27 22:05:10,696.696 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:05:10,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:05:10,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:05:10,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:05:12,743.743 INFO    ] ================================================
[2026-06-27 22:05:12,758.758 INFO    ] Launching Daemon at Sat Jun 27 22:05:12 IST 2026
[2026-06-27 22:05:12,769.769 INFO    ] ================================================
[2026-06-27 22:05:13,120.120 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:05:13
[2026-06-27 22:05:13,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:05:13,588.588 INFO    ] Initializing speech engine...
[2026-06-27 22:05:13,593.593 INFO    ] 2026-06-27 22:05:13
[2026-06-27 22:05:13,802.802 INFO    ] 2026-06-27 22:05:13
[2026-06-27 22:05:13,832.832 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:05:13,958.958 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:05:13,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:05:14,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:05:14,059.059 INFO    ] time= 27/06/2026 22:05:14
[2026-06-27 22:05:14,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:05:14,061.061 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:05:14,120.120 INFO    ] No existing commands found in stream
[2026-06-27 22:05:19,129.129 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:05:19,133.133 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-27 22:05:23,232.232 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:05:23,234.234 INFO    ] Checking for system updates...
[2026-06-27 22:05:23,256.256 INFO    ] 200
[2026-06-27 22:05:23,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:05:23,290.290 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:05:23,292.292 INFO    ] No update needed
[2026-06-27 22:05:23,293.293 INFO    ] Checking for camera pi updates...
[2026-06-27 22:05:23,313.313 INFO    ] 200
[2026-06-27 22:05:23,315.315 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:05:23,340.340 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:05:23,383.383 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:05:23,384.384 INFO    ] No camera update needed
[2026-06-27 22:05:23,385.385 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:05:23,387.387 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:05:23,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:05:23,392.392 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:05:25,432.432 INFO    ] ================================================
[2026-06-27 22:05:25,447.447 INFO    ] Launching Daemon at Sat Jun 27 22:05:25 IST 2026
[2026-06-27 22:05:25,458.458 INFO    ] ================================================
[2026-06-27 22:05:25,818.818 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:05:25
[2026-06-27 22:05:26,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:05:26,273.273 INFO    ] Initializing speech engine...
[2026-06-27 22:05:26,278.278 INFO    ] 2026-06-27 22:05:26
[2026-06-27 22:05:26,482.482 INFO    ] 2026-06-27 22:05:26
[2026-06-27 22:05:26,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:05:26,633.633 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:05:26,696.696 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:05:26,826.826 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:05:26,876.876 INFO    ] time= 27/06/2026 22:05:26
[2026-06-27 22:05:26,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:05:26,929.929 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:05:26,996.996 INFO    ] No existing commands found in stream
[2026-06-27 22:05:32,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:05:32,011.011 INFO    ] Waiting 1.02 seconds before fallback handling...
[2026-06-27 22:05:33,466.466 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:05:33,467.467 INFO    ] Checking for system updates...
[2026-06-27 22:05:33,490.490 INFO    ] 200
[2026-06-27 22:05:33,492.492 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:05:33,528.528 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:05:33,529.529 INFO    ] No update needed
[2026-06-27 22:05:33,530.530 INFO    ] Checking for camera pi updates...
[2026-06-27 22:05:33,554.554 INFO    ] 200
[2026-06-27 22:05:33,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:05:33,582.582 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:05:33,608.608 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:05:33,609.609 INFO    ] No camera update needed
[2026-06-27 22:05:33,611.611 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:05:33,612.612 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:05:33,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:05:33,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:05:35,661.661 INFO    ] ================================================
[2026-06-27 22:05:35,676.676 INFO    ] Launching Daemon at Sat Jun 27 22:05:35 IST 2026
[2026-06-27 22:05:35,687.687 INFO    ] ================================================
[2026-06-27 22:05:36,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:05:36
[2026-06-27 22:05:36,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:05:36,496.496 INFO    ] Initializing speech engine...
[2026-06-27 22:05:36,509.509 INFO    ] 2026-06-27 22:05:36
[2026-06-27 22:05:36,737.737 INFO    ] 2026-06-27 22:05:36
[2026-06-27 22:05:36,769.769 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:05:36,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:05:36,980.980 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:05:37,135.135 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:05:37,189.189 INFO    ] time= 27/06/2026 22:05:37
[2026-06-27 22:05:37,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:05:37,211.211 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:05:37,278.278 INFO    ] No existing commands found in stream
[2026-06-27 22:05:42,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:05:42,295.295 INFO    ] Waiting 1.97 seconds before fallback handling...
[2026-06-27 22:05:44,663.663 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 22:05:44,664.664 INFO    ] Checking for system updates...
[2026-06-27 22:05:44,686.686 INFO    ] 200
[2026-06-27 22:05:44,687.687 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:05:44,717.717 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:05:44,719.719 INFO    ] No update needed
[2026-06-27 22:05:44,720.720 INFO    ] Checking for camera pi updates...
[2026-06-27 22:05:44,741.741 INFO    ] 200
[2026-06-27 22:05:44,742.742 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:05:44,767.767 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:05:44,818.818 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:05:44,820.820 INFO    ] No camera update needed
[2026-06-27 22:05:44,821.821 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:05:44,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:05:44,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:05:44,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:05:46,866.866 INFO    ] ================================================
[2026-06-27 22:05:46,881.881 INFO    ] Launching Daemon at Sat Jun 27 22:05:46 IST 2026
[2026-06-27 22:05:46,892.892 INFO    ] ================================================
[2026-06-27 22:05:47,214.214 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:05:47
[2026-06-27 22:05:47,526.526 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:05:47,656.656 INFO    ] Initializing speech engine...
[2026-06-27 22:05:47,659.659 INFO    ] 2026-06-27 22:05:47
[2026-06-27 22:05:47,880.880 INFO    ] 2026-06-27 22:05:47
[2026-06-27 22:05:47,908.908 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:05:48,094.094 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:05:48,102.102 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:05:48,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:05:48,291.291 INFO    ] time= 27/06/2026 22:05:48
[2026-06-27 22:05:48,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:05:48,328.328 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:05:48,399.399 INFO    ] No existing commands found in stream
[2026-06-27 22:05:53,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:05:53,410.410 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-27 22:05:54,578.578 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:05:54,579.579 INFO    ] Checking for system updates...
[2026-06-27 22:05:54,604.604 INFO    ] 200
[2026-06-27 22:05:54,606.606 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:05:54,638.638 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:05:54,640.640 INFO    ] No update needed
[2026-06-27 22:05:54,641.641 INFO    ] Checking for camera pi updates...
[2026-06-27 22:05:54,660.660 INFO    ] 200
[2026-06-27 22:05:54,662.662 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:05:54,685.685 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:05:54,814.814 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:05:54,815.815 INFO    ] No camera update needed
[2026-06-27 22:05:54,816.816 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:05:54,818.818 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:05:54,821.821 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:05:54,823.823 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:05:56,862.862 INFO    ] ================================================
[2026-06-27 22:05:56,878.878 INFO    ] Launching Daemon at Sat Jun 27 22:05:56 IST 2026
[2026-06-27 22:05:56,889.889 INFO    ] ================================================
[2026-06-27 22:05:57,250.250 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:05:57
[2026-06-27 22:05:57,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:05:57,720.720 INFO    ] Initializing speech engine...
[2026-06-27 22:05:57,726.726 INFO    ] 2026-06-27 22:05:57
[2026-06-27 22:05:57,934.934 INFO    ] 2026-06-27 22:05:57
[2026-06-27 22:05:57,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:05:58,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:05:58,150.150 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:05:58,287.287 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:05:58,353.353 INFO    ] time= 27/06/2026 22:05:58
[2026-06-27 22:05:58,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:05:58,384.384 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:05:58,451.451 INFO    ] No existing commands found in stream
[2026-06-27 22:06:03,483.483 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:06:03,487.487 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-27 22:06:07,562.562 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 22:06:07,563.563 INFO    ] Checking for system updates...
[2026-06-27 22:06:07,587.587 INFO    ] 200
[2026-06-27 22:06:07,589.589 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:06:07,619.619 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:06:07,621.621 INFO    ] No update needed
[2026-06-27 22:06:07,622.622 INFO    ] Checking for camera pi updates...
[2026-06-27 22:06:07,641.641 INFO    ] 200
[2026-06-27 22:06:07,643.643 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:06:07,666.666 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:06:07,716.716 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:06:07,717.717 INFO    ] No camera update needed
[2026-06-27 22:06:07,719.719 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:06:07,720.720 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:06:07,723.723 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:06:07,726.726 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:06:09,765.765 INFO    ] ================================================
[2026-06-27 22:06:09,781.781 INFO    ] Launching Daemon at Sat Jun 27 22:06:09 IST 2026
[2026-06-27 22:06:09,791.791 INFO    ] ================================================
[2026-06-27 22:06:10,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:06:10
[2026-06-27 22:06:10,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:06:10,650.650 INFO    ] Initializing speech engine...
[2026-06-27 22:06:10,655.655 INFO    ] 2026-06-27 22:06:10
[2026-06-27 22:06:10,867.867 INFO    ] 2026-06-27 22:06:10
[2026-06-27 22:06:10,898.898 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:06:11,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:06:11,096.096 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:06:11,228.228 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:06:11,293.293 INFO    ] time= 27/06/2026 22:06:11
[2026-06-27 22:06:11,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:06:11,327.327 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:06:11,393.393 INFO    ] No existing commands found in stream
[2026-06-27 22:06:16,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:06:16,408.408 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-27 22:06:18,562.562 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:06:18,564.564 INFO    ] Checking for system updates...
[2026-06-27 22:06:18,587.587 INFO    ] 200
[2026-06-27 22:06:18,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:06:18,621.621 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:06:18,622.622 INFO    ] No update needed
[2026-06-27 22:06:18,624.624 INFO    ] Checking for camera pi updates...
[2026-06-27 22:06:18,645.645 INFO    ] 200
[2026-06-27 22:06:18,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:06:18,671.671 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:06:18,718.718 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:06:18,719.719 INFO    ] No camera update needed
[2026-06-27 22:06:18,720.720 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:06:18,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:06:18,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:06:18,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:06:20,753.753 INFO    ] ================================================
[2026-06-27 22:06:20,762.762 INFO    ] Launching Daemon at Sat Jun 27 22:06:20 IST 2026
[2026-06-27 22:06:20,768.768 INFO    ] ================================================
[2026-06-27 22:06:21,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:06:21
[2026-06-27 22:06:21,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:06:21,577.577 INFO    ] Initializing speech engine...
[2026-06-27 22:06:21,582.582 INFO    ] 2026-06-27 22:06:21
[2026-06-27 22:06:21,787.787 INFO    ] 2026-06-27 22:06:21
[2026-06-27 22:06:21,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:06:22,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:06:22,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:06:22,151.151 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:06:22,203.203 INFO    ] time= 27/06/2026 22:06:22
[2026-06-27 22:06:22,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:06:22,261.261 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:06:22,338.338 INFO    ] No existing commands found in stream
[2026-06-27 22:06:27,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:06:27,352.352 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-27 22:06:27,905.905 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 22:06:27,906.906 INFO    ] Checking for system updates...
[2026-06-27 22:06:27,927.927 INFO    ] 200
[2026-06-27 22:06:27,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:06:27,961.961 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:06:27,962.962 INFO    ] No update needed
[2026-06-27 22:06:27,963.963 INFO    ] Checking for camera pi updates...
[2026-06-27 22:06:27,988.988 INFO    ] 200
[2026-06-27 22:06:27,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:06:28,014.014 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:06:28,062.062 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:06:28,063.063 INFO    ] No camera update needed
[2026-06-27 22:06:28,065.065 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:06:28,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:06:28,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:06:28,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:06:30,111.111 INFO    ] ================================================
[2026-06-27 22:06:30,127.127 INFO    ] Launching Daemon at Sat Jun 27 22:06:30 IST 2026
[2026-06-27 22:06:30,138.138 INFO    ] ================================================
[2026-06-27 22:06:30,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:06:30
[2026-06-27 22:06:30,818.818 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:06:30,997.997 INFO    ] Initializing speech engine...
[2026-06-27 22:06:31,006.006 INFO    ] 2026-06-27 22:06:30
[2026-06-27 22:06:31,220.220 INFO    ] 2026-06-27 22:06:31
[2026-06-27 22:06:31,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:06:31,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:06:31,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:06:31,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:06:31,641.641 INFO    ] time= 27/06/2026 22:06:31
[2026-06-27 22:06:31,669.669 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:06:31,675.675 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:06:31,741.741 INFO    ] No existing commands found in stream
[2026-06-27 22:06:36,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:06:36,754.754 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-27 22:06:38,573.573 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:06:38,575.575 INFO    ] Checking for system updates...
[2026-06-27 22:06:38,597.597 INFO    ] 200
[2026-06-27 22:06:38,599.599 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:06:38,632.632 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:06:38,634.634 INFO    ] No update needed
[2026-06-27 22:06:38,636.636 INFO    ] Checking for camera pi updates...
[2026-06-27 22:06:38,656.656 INFO    ] 200
[2026-06-27 22:06:38,657.657 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:06:38,681.681 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:06:38,726.726 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:06:38,727.727 INFO    ] No camera update needed
[2026-06-27 22:06:38,728.728 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:06:38,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:06:38,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:06:38,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:06:40,779.779 INFO    ] ================================================
[2026-06-27 22:06:40,796.796 INFO    ] Launching Daemon at Sat Jun 27 22:06:40 IST 2026
[2026-06-27 22:06:40,812.812 INFO    ] ================================================
[2026-06-27 22:06:41,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:06:41
[2026-06-27 22:06:41,451.451 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:06:41,590.590 INFO    ] Initializing speech engine...
[2026-06-27 22:06:41,601.601 INFO    ] 2026-06-27 22:06:41
[2026-06-27 22:06:41,807.807 INFO    ] 2026-06-27 22:06:41
[2026-06-27 22:06:41,837.837 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:06:42,024.024 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:06:42,033.033 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:06:42,161.161 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:06:42,224.224 INFO    ] time= 27/06/2026 22:06:42
[2026-06-27 22:06:42,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:06:42,263.263 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:06:42,330.330 INFO    ] No existing commands found in stream
[2026-06-27 22:06:47,341.341 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:06:47,344.344 INFO    ] Waiting 2.27 seconds before fallback handling...
[2026-06-27 22:06:50,039.039 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 22:06:50,041.041 INFO    ] Checking for system updates...
[2026-06-27 22:06:50,062.062 INFO    ] 200
[2026-06-27 22:06:50,064.064 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:06:50,097.097 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:06:50,099.099 INFO    ] No update needed
[2026-06-27 22:06:50,100.100 INFO    ] Checking for camera pi updates...
[2026-06-27 22:06:50,122.122 INFO    ] 200
[2026-06-27 22:06:50,123.123 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:06:50,150.150 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:06:50,191.191 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:06:50,193.193 INFO    ] No camera update needed
[2026-06-27 22:06:50,194.194 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:06:50,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:06:50,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:06:50,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:06:52,244.244 INFO    ] ================================================
[2026-06-27 22:06:52,259.259 INFO    ] Launching Daemon at Sat Jun 27 22:06:52 IST 2026
[2026-06-27 22:06:52,270.270 INFO    ] ================================================
[2026-06-27 22:06:52,611.611 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:06:52
[2026-06-27 22:06:52,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:06:53,082.082 INFO    ] Initializing speech engine...
[2026-06-27 22:06:53,092.092 INFO    ] 2026-06-27 22:06:53
[2026-06-27 22:06:53,305.305 INFO    ] 2026-06-27 22:06:53
[2026-06-27 22:06:53,334.334 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:06:53,521.521 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:06:53,531.531 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:06:53,668.668 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:06:53,730.730 INFO    ] time= 27/06/2026 22:06:53
[2026-06-27 22:06:53,754.754 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:06:53,761.761 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:06:53,829.829 INFO    ] No existing commands found in stream
[2026-06-27 22:06:58,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:06:58,847.847 INFO    ] Waiting 1.30 seconds before fallback handling...
[2026-06-27 22:07:00,545.545 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 22:07:00,547.547 INFO    ] Checking for system updates...
[2026-06-27 22:07:00,568.568 INFO    ] 200
[2026-06-27 22:07:00,569.569 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:07:00,604.604 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:07:00,606.606 INFO    ] No update needed
[2026-06-27 22:07:00,607.607 INFO    ] Checking for camera pi updates...
[2026-06-27 22:07:00,628.628 INFO    ] 200
[2026-06-27 22:07:00,629.629 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:07:00,654.654 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:07:00,702.702 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:07:00,704.704 INFO    ] No camera update needed
[2026-06-27 22:07:00,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:07:00,706.706 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:07:00,709.709 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:07:00,712.712 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:07:02,746.746 INFO    ] ================================================
[2026-06-27 22:07:02,762.762 INFO    ] Launching Daemon at Sat Jun 27 22:07:02 IST 2026
[2026-06-27 22:07:02,773.773 INFO    ] ================================================
[2026-06-27 22:07:03,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:07:03
[2026-06-27 22:07:03,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:07:03,594.594 INFO    ] Initializing speech engine...
[2026-06-27 22:07:03,598.598 INFO    ] 2026-06-27 22:07:03
[2026-06-27 22:07:03,817.817 INFO    ] 2026-06-27 22:07:03
[2026-06-27 22:07:03,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:07:04,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:07:04,036.036 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:07:04,195.195 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:07:04,244.244 INFO    ] time= 27/06/2026 22:07:04
[2026-06-27 22:07:04,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:07:04,272.272 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:07:04,339.339 INFO    ] No existing commands found in stream
[2026-06-27 22:07:09,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:07:09,352.352 INFO    ] Waiting 3.37 seconds before fallback handling...
[2026-06-27 22:07:13,145.145 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:07:13,146.146 INFO    ] Checking for system updates...
[2026-06-27 22:07:13,167.167 INFO    ] 200
[2026-06-27 22:07:13,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:07:13,201.201 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:07:13,202.202 INFO    ] No update needed
[2026-06-27 22:07:13,203.203 INFO    ] Checking for camera pi updates...
[2026-06-27 22:07:13,224.224 INFO    ] 200
[2026-06-27 22:07:13,226.226 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:07:13,249.249 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:07:13,290.290 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:07:13,291.291 INFO    ] No camera update needed
[2026-06-27 22:07:13,293.293 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:07:13,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:07:13,297.297 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:07:13,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:07:15,342.342 INFO    ] ================================================
[2026-06-27 22:07:15,357.357 INFO    ] Launching Daemon at Sat Jun 27 22:07:15 IST 2026
[2026-06-27 22:07:15,367.367 INFO    ] ================================================
[2026-06-27 22:07:15,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:07:15
[2026-06-27 22:07:16,022.022 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:07:16,158.158 INFO    ] Initializing speech engine...
[2026-06-27 22:07:16,163.163 INFO    ] 2026-06-27 22:07:16
[2026-06-27 22:07:16,394.394 INFO    ] 2026-06-27 22:07:16
[2026-06-27 22:07:16,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:07:16,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:07:16,633.633 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:07:16,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:07:16,829.829 INFO    ] time= 27/06/2026 22:07:16
[2026-06-27 22:07:16,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:07:16,883.883 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:07:16,956.956 INFO    ] No existing commands found in stream
[2026-06-27 22:07:21,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:07:21,968.968 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-27 22:07:23,307.307 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 22:07:23,309.309 INFO    ] Checking for system updates...
[2026-06-27 22:07:23,329.329 INFO    ] 200
[2026-06-27 22:07:23,331.331 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:07:23,363.363 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:07:23,365.365 INFO    ] No update needed
[2026-06-27 22:07:23,366.366 INFO    ] Checking for camera pi updates...
[2026-06-27 22:07:23,387.387 INFO    ] 200
[2026-06-27 22:07:23,388.388 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:07:23,413.413 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:07:23,458.458 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:07:23,460.460 INFO    ] No camera update needed
[2026-06-27 22:07:23,461.461 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:07:23,462.462 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:07:23,465.465 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:07:23,468.468 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:07:25,508.508 INFO    ] ================================================
[2026-06-27 22:07:25,523.523 INFO    ] Launching Daemon at Sat Jun 27 22:07:25 IST 2026
[2026-06-27 22:07:25,534.534 INFO    ] ================================================
[2026-06-27 22:07:25,919.919 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:07:25
[2026-06-27 22:07:26,257.257 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:07:26,387.387 INFO    ] Initializing speech engine...
[2026-06-27 22:07:26,392.392 INFO    ] 2026-06-27 22:07:26
[2026-06-27 22:07:26,610.610 INFO    ] 2026-06-27 22:07:26
[2026-06-27 22:07:26,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:07:26,764.764 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:07:26,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:07:26,978.978 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:07:27,035.035 INFO    ] time= 27/06/2026 22:07:26
[2026-06-27 22:07:27,059.059 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:07:27,066.066 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:07:27,132.132 INFO    ] No existing commands found in stream
[2026-06-27 22:07:32,142.142 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:07:32,143.143 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-27 22:07:35,187.187 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:07:35,188.188 INFO    ] Checking for system updates...
[2026-06-27 22:07:35,209.209 INFO    ] 200
[2026-06-27 22:07:35,210.210 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:07:35,243.243 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:07:35,244.244 INFO    ] No update needed
[2026-06-27 22:07:35,245.245 INFO    ] Checking for camera pi updates...
[2026-06-27 22:07:35,266.266 INFO    ] 200
[2026-06-27 22:07:35,268.268 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:07:35,291.291 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:07:35,335.335 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:07:35,336.336 INFO    ] No camera update needed
[2026-06-27 22:07:35,338.338 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:07:35,339.339 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:07:35,342.342 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:07:35,345.345 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:07:37,384.384 INFO    ] ================================================
[2026-06-27 22:07:37,399.399 INFO    ] Launching Daemon at Sat Jun 27 22:07:37 IST 2026
[2026-06-27 22:07:37,410.410 INFO    ] ================================================
[2026-06-27 22:07:37,768.768 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:07:37
[2026-06-27 22:07:38,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:07:38,216.216 INFO    ] Initializing speech engine...
[2026-06-27 22:07:38,229.229 INFO    ] 2026-06-27 22:07:38
[2026-06-27 22:07:38,448.448 INFO    ] 2026-06-27 22:07:38
[2026-06-27 22:07:38,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:07:38,680.680 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:07:38,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:07:38,822.822 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:07:38,869.869 INFO    ] time= 27/06/2026 22:07:38
[2026-06-27 22:07:38,907.907 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:07:38,931.931 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:07:39,007.007 INFO    ] No existing commands found in stream
[2026-06-27 22:07:44,018.018 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:07:44,021.021 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-27 22:07:47,146.146 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:07:47,147.147 INFO    ] Checking for system updates...
[2026-06-27 22:07:47,168.168 INFO    ] 200
[2026-06-27 22:07:47,169.169 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:07:47,199.199 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:07:47,201.201 INFO    ] No update needed
[2026-06-27 22:07:47,202.202 INFO    ] Checking for camera pi updates...
[2026-06-27 22:07:47,221.221 INFO    ] 200
[2026-06-27 22:07:47,222.222 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:07:47,249.249 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:07:47,304.304 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:07:47,305.305 INFO    ] No camera update needed
[2026-06-27 22:07:47,306.306 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:07:47,308.308 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:07:47,311.311 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:07:47,313.313 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:07:49,353.353 INFO    ] ================================================
[2026-06-27 22:07:49,371.371 INFO    ] Launching Daemon at Sat Jun 27 22:07:49 IST 2026
[2026-06-27 22:07:49,383.383 INFO    ] ================================================
[2026-06-27 22:07:49,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:07:49
[2026-06-27 22:07:50,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:07:50,180.180 INFO    ] Initializing speech engine...
[2026-06-27 22:07:50,185.185 INFO    ] 2026-06-27 22:07:50
[2026-06-27 22:07:50,399.399 INFO    ] 2026-06-27 22:07:50
[2026-06-27 22:07:50,425.425 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:07:50,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:07:50,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:07:50,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:07:50,853.853 INFO    ] time= 27/06/2026 22:07:50
[2026-06-27 22:07:50,888.888 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:07:50,900.900 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:07:50,979.979 INFO    ] No existing commands found in stream
[2026-06-27 22:07:55,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:07:55,987.987 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-27 22:07:59,304.304 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 22:07:59,306.306 INFO    ] Checking for system updates...
[2026-06-27 22:07:59,328.328 INFO    ] 200
[2026-06-27 22:07:59,329.329 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:07:59,360.360 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:07:59,361.361 INFO    ] No update needed
[2026-06-27 22:07:59,363.363 INFO    ] Checking for camera pi updates...
[2026-06-27 22:07:59,383.383 INFO    ] 200
[2026-06-27 22:07:59,385.385 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:07:59,408.408 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:07:59,551.551 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:07:59,552.552 INFO    ] No camera update needed
[2026-06-27 22:07:59,553.553 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:07:59,555.555 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:07:59,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:07:59,560.560 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:08:01,597.597 INFO    ] ================================================
[2026-06-27 22:08:01,615.615 INFO    ] Launching Daemon at Sat Jun 27 22:08:01 IST 2026
[2026-06-27 22:08:01,627.627 INFO    ] ================================================
[2026-06-27 22:08:01,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:08:01
[2026-06-27 22:08:02,349.349 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:08:02,496.496 INFO    ] Initializing speech engine...
[2026-06-27 22:08:02,501.501 INFO    ] 2026-06-27 22:08:02
[2026-06-27 22:08:02,736.736 INFO    ] 2026-06-27 22:08:02
[2026-06-27 22:08:02,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:08:02,901.901 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:08:02,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:08:03,144.144 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:08:03,198.198 INFO    ] time= 27/06/2026 22:08:03
[2026-06-27 22:08:03,223.223 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:08:03,229.229 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:08:03,302.302 INFO    ] No existing commands found in stream
[2026-06-27 22:08:08,311.311 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:08:08,314.314 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-27 22:08:10,780.780 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 22:08:10,781.781 INFO    ] Checking for system updates...
[2026-06-27 22:08:10,802.802 INFO    ] 200
[2026-06-27 22:08:10,803.803 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:08:10,836.836 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:08:10,838.838 INFO    ] No update needed
[2026-06-27 22:08:10,839.839 INFO    ] Checking for camera pi updates...
[2026-06-27 22:08:10,858.858 INFO    ] 200
[2026-06-27 22:08:10,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:08:10,883.883 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:08:10,928.928 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:08:10,929.929 INFO    ] No camera update needed
[2026-06-27 22:08:10,931.931 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:08:10,932.932 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:08:10,935.935 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:08:10,937.937 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:08:12,976.976 INFO    ] ================================================
[2026-06-27 22:08:12,993.993 INFO    ] Launching Daemon at Sat Jun 27 22:08:12 IST 2026
[2026-06-27 22:08:13,004.004 INFO    ] ================================================
[2026-06-27 22:08:13,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:08:13
[2026-06-27 22:08:13,657.657 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:08:13,788.788 INFO    ] Initializing speech engine...
[2026-06-27 22:08:13,793.793 INFO    ] 2026-06-27 22:08:13
[2026-06-27 22:08:14,059.059 INFO    ] 2026-06-27 22:08:14
[2026-06-27 22:08:14,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:08:14,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:08:14,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:08:14,475.475 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:08:14,506.506 INFO    ] time= 27/06/2026 22:08:14
[2026-06-27 22:08:14,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:08:14,514.514 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:08:14,582.582 INFO    ] No existing commands found in stream
[2026-06-27 22:08:19,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:08:19,599.599 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-27 22:08:22,869.869 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:08:22,871.871 INFO    ] Checking for system updates...
[2026-06-27 22:08:22,894.894 INFO    ] 200
[2026-06-27 22:08:22,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:08:22,930.930 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:08:22,931.931 INFO    ] No update needed
[2026-06-27 22:08:22,933.933 INFO    ] Checking for camera pi updates...
[2026-06-27 22:08:22,953.953 INFO    ] 200
[2026-06-27 22:08:22,955.955 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:08:22,978.978 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:08:23,023.023 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:08:23,024.024 INFO    ] No camera update needed
[2026-06-27 22:08:23,026.026 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:08:23,027.027 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:08:23,030.030 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:08:23,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:08:25,076.076 INFO    ] ================================================
[2026-06-27 22:08:25,091.091 INFO    ] Launching Daemon at Sat Jun 27 22:08:25 IST 2026
[2026-06-27 22:08:25,102.102 INFO    ] ================================================
[2026-06-27 22:08:25,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:08:25
[2026-06-27 22:08:25,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:08:25,902.902 INFO    ] Initializing speech engine...
[2026-06-27 22:08:25,907.907 INFO    ] 2026-06-27 22:08:25
[2026-06-27 22:08:26,126.126 INFO    ] 2026-06-27 22:08:26
[2026-06-27 22:08:26,156.156 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:08:26,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:08:26,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:08:26,476.476 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:08:26,522.522 INFO    ] time= 27/06/2026 22:08:26
[2026-06-27 22:08:26,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:08:26,578.578 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:08:26,650.650 INFO    ] No existing commands found in stream
[2026-06-27 22:08:31,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:08:31,659.659 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-27 22:08:34,176.176 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 22:08:34,177.177 INFO    ] Checking for system updates...
[2026-06-27 22:08:34,199.199 INFO    ] 200
[2026-06-27 22:08:34,200.200 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:08:34,233.233 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:08:34,234.234 INFO    ] No update needed
[2026-06-27 22:08:34,236.236 INFO    ] Checking for camera pi updates...
[2026-06-27 22:08:34,255.255 INFO    ] 200
[2026-06-27 22:08:34,256.256 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:08:34,280.280 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:08:34,325.325 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:08:34,327.327 INFO    ] No camera update needed
[2026-06-27 22:08:34,328.328 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:08:34,329.329 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:08:34,332.332 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:08:34,335.335 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:08:36,374.374 INFO    ] ================================================
[2026-06-27 22:08:36,390.390 INFO    ] Launching Daemon at Sat Jun 27 22:08:36 IST 2026
[2026-06-27 22:08:36,401.401 INFO    ] ================================================
[2026-06-27 22:08:36,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:08:36
[2026-06-27 22:08:37,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:08:37,210.210 INFO    ] Initializing speech engine...
[2026-06-27 22:08:37,215.215 INFO    ] 2026-06-27 22:08:37
[2026-06-27 22:08:37,421.421 INFO    ] 2026-06-27 22:08:37
[2026-06-27 22:08:37,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:08:37,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:08:37,642.642 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:08:37,793.793 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:08:37,841.841 INFO    ] time= 27/06/2026 22:08:37
[2026-06-27 22:08:37,864.864 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:08:37,869.869 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:08:37,937.937 INFO    ] No existing commands found in stream
[2026-06-27 22:08:42,946.946 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:08:42,948.948 INFO    ] Waiting 3.44 seconds before fallback handling...
[2026-06-27 22:08:46,827.827 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 22:08:46,828.828 INFO    ] Checking for system updates...
[2026-06-27 22:08:46,850.850 INFO    ] 200
[2026-06-27 22:08:46,852.852 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:08:46,882.882 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:08:46,884.884 INFO    ] No update needed
[2026-06-27 22:08:46,885.885 INFO    ] Checking for camera pi updates...
[2026-06-27 22:08:46,905.905 INFO    ] 200
[2026-06-27 22:08:46,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:08:46,930.930 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:08:46,972.972 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:08:46,973.973 INFO    ] No camera update needed
[2026-06-27 22:08:46,975.975 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:08:46,976.976 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:08:46,979.979 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:08:46,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:08:49,021.021 INFO    ] ================================================
[2026-06-27 22:08:49,037.037 INFO    ] Launching Daemon at Sat Jun 27 22:08:49 IST 2026
[2026-06-27 22:08:49,049.049 INFO    ] ================================================
[2026-06-27 22:08:49,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:08:49
[2026-06-27 22:08:49,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:08:49,847.847 INFO    ] Initializing speech engine...
[2026-06-27 22:08:49,853.853 INFO    ] 2026-06-27 22:08:49
[2026-06-27 22:08:50,059.059 INFO    ] 2026-06-27 22:08:50
[2026-06-27 22:08:50,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:08:50,275.275 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:08:50,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:08:50,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:08:50,504.504 INFO    ] time= 27/06/2026 22:08:50
[2026-06-27 22:08:50,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:08:50,511.511 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:08:50,604.604 INFO    ] No existing commands found in stream
[2026-06-27 22:08:55,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:08:55,630.630 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-27 22:08:57,112.112 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 22:08:57,113.113 INFO    ] Checking for system updates...
[2026-06-27 22:08:57,138.138 INFO    ] 200
[2026-06-27 22:08:57,140.140 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:08:57,175.175 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:08:57,176.176 INFO    ] No update needed
[2026-06-27 22:08:57,178.178 INFO    ] Checking for camera pi updates...
[2026-06-27 22:08:57,201.201 INFO    ] 200
[2026-06-27 22:08:57,203.203 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:08:57,228.228 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:08:57,256.256 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:08:57,258.258 INFO    ] No camera update needed
[2026-06-27 22:08:57,259.259 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:08:57,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:08:57,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:08:57,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:08:59,306.306 INFO    ] ================================================
[2026-06-27 22:08:59,322.322 INFO    ] Launching Daemon at Sat Jun 27 22:08:59 IST 2026
[2026-06-27 22:08:59,334.334 INFO    ] ================================================
[2026-06-27 22:08:59,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:08:59
[2026-06-27 22:09:00,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:09:00,189.189 INFO    ] Initializing speech engine...
[2026-06-27 22:09:00,195.195 INFO    ] 2026-06-27 22:09:00
[2026-06-27 22:09:00,406.406 INFO    ] 2026-06-27 22:09:00
[2026-06-27 22:09:00,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:09:00,700.700 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:09:00,752.752 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:09:01,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:09:01,066.066 INFO    ] time= 27/06/2026 22:09:01
[2026-06-27 22:09:01,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:09:01,073.073 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:09:01,142.142 INFO    ] No existing commands found in stream
[2026-06-27 22:09:06,153.153 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:09:06,157.157 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-27 22:09:08,439.439 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 22:09:08,441.441 INFO    ] Checking for system updates...
[2026-06-27 22:09:08,461.461 INFO    ] 200
[2026-06-27 22:09:08,463.463 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:09:08,494.494 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:09:08,496.496 INFO    ] No update needed
[2026-06-27 22:09:08,497.497 INFO    ] Checking for camera pi updates...
[2026-06-27 22:09:08,518.518 INFO    ] 200
[2026-06-27 22:09:08,519.519 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:09:08,547.547 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:09:08,599.599 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:09:08,600.600 INFO    ] No camera update needed
[2026-06-27 22:09:08,601.601 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:09:08,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:09:08,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:09:08,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:09:10,647.647 INFO    ] ================================================
[2026-06-27 22:09:10,662.662 INFO    ] Launching Daemon at Sat Jun 27 22:09:10 IST 2026
[2026-06-27 22:09:10,674.674 INFO    ] ================================================
[2026-06-27 22:09:11,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:09:11
[2026-06-27 22:09:11,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:09:11,467.467 INFO    ] Initializing speech engine...
[2026-06-27 22:09:11,473.473 INFO    ] 2026-06-27 22:09:11
[2026-06-27 22:09:11,676.676 INFO    ] 2026-06-27 22:09:11
[2026-06-27 22:09:11,706.706 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:09:11,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:09:11,898.898 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:09:12,090.090 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:09:12,115.115 INFO    ] time= 27/06/2026 22:09:12
[2026-06-27 22:09:12,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:09:12,122.122 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:09:12,188.188 INFO    ] No existing commands found in stream
[2026-06-27 22:09:17,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:09:17,200.200 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-27 22:09:20,361.361 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 22:09:20,362.362 INFO    ] Checking for system updates...
[2026-06-27 22:09:20,385.385 INFO    ] 200
[2026-06-27 22:09:20,386.386 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:09:20,416.416 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:09:20,418.418 INFO    ] No update needed
[2026-06-27 22:09:20,419.419 INFO    ] Checking for camera pi updates...
[2026-06-27 22:09:20,451.451 INFO    ] 200
[2026-06-27 22:09:20,453.453 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:09:20,495.495 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:09:20,544.544 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:09:20,547.547 INFO    ] No camera update needed
[2026-06-27 22:09:20,550.550 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:09:20,552.552 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:09:20,558.558 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:09:20,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:09:22,605.605 INFO    ] ================================================
[2026-06-27 22:09:22,620.620 INFO    ] Launching Daemon at Sat Jun 27 22:09:22 IST 2026
[2026-06-27 22:09:22,631.631 INFO    ] ================================================
[2026-06-27 22:09:22,960.960 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:09:22
[2026-06-27 22:09:23,272.272 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:09:23,414.414 INFO    ] Initializing speech engine...
[2026-06-27 22:09:23,420.420 INFO    ] 2026-06-27 22:09:23
[2026-06-27 22:09:23,624.624 INFO    ] 2026-06-27 22:09:23
[2026-06-27 22:09:23,651.651 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:09:23,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:09:23,845.845 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:09:23,995.995 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:09:24,043.043 INFO    ] time= 27/06/2026 22:09:24
[2026-06-27 22:09:24,065.065 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:09:24,071.071 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:09:24,138.138 INFO    ] No existing commands found in stream
[2026-06-27 22:09:29,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:09:29,150.150 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-27 22:09:30,916.916 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:09:30,917.917 INFO    ] Checking for system updates...
[2026-06-27 22:09:30,939.939 INFO    ] 200
[2026-06-27 22:09:30,940.940 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:09:30,971.971 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:09:30,972.972 INFO    ] No update needed
[2026-06-27 22:09:30,974.974 INFO    ] Checking for camera pi updates...
[2026-06-27 22:09:30,993.993 INFO    ] 200
[2026-06-27 22:09:30,995.995 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:09:31,018.018 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:09:31,063.063 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:09:31,064.064 INFO    ] No camera update needed
[2026-06-27 22:09:31,066.066 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:09:31,067.067 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:09:31,070.070 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:09:31,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:09:33,107.107 INFO    ] ================================================
[2026-06-27 22:09:33,123.123 INFO    ] Launching Daemon at Sat Jun 27 22:09:33 IST 2026
[2026-06-27 22:09:33,134.134 INFO    ] ================================================
[2026-06-27 22:09:33,496.496 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:09:33
[2026-06-27 22:09:33,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:09:33,981.981 INFO    ] Initializing speech engine...
[2026-06-27 22:09:33,987.987 INFO    ] 2026-06-27 22:09:33
[2026-06-27 22:09:34,196.196 INFO    ] 2026-06-27 22:09:34
[2026-06-27 22:09:34,225.225 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:09:34,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:09:34,420.420 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:09:34,603.603 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:09:34,637.637 INFO    ] time= 27/06/2026 22:09:34
[2026-06-27 22:09:34,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:09:34,645.645 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:09:34,711.711 INFO    ] No existing commands found in stream
[2026-06-27 22:09:39,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:09:39,730.730 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-27 22:09:43,764.764 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 22:09:43,765.765 INFO    ] Checking for system updates...
[2026-06-27 22:09:43,788.788 INFO    ] 200
[2026-06-27 22:09:43,789.789 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:09:43,823.823 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:09:43,825.825 INFO    ] No update needed
[2026-06-27 22:09:43,826.826 INFO    ] Checking for camera pi updates...
[2026-06-27 22:09:43,846.846 INFO    ] 200
[2026-06-27 22:09:43,847.847 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:09:43,870.870 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:09:43,920.920 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:09:43,921.921 INFO    ] No camera update needed
[2026-06-27 22:09:43,922.922 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:09:43,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:09:43,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:09:43,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:09:45,968.968 INFO    ] ================================================
[2026-06-27 22:09:45,984.984 INFO    ] Launching Daemon at Sat Jun 27 22:09:45 IST 2026
[2026-06-27 22:09:45,994.994 INFO    ] ================================================
[2026-06-27 22:09:46,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:09:46
[2026-06-27 22:09:46,679.679 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:09:46,811.811 INFO    ] Initializing speech engine...
[2026-06-27 22:09:46,819.819 INFO    ] 2026-06-27 22:09:46
[2026-06-27 22:09:47,034.034 INFO    ] 2026-06-27 22:09:47
[2026-06-27 22:09:47,063.063 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:09:47,242.242 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:09:47,243.243 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:09:47,392.392 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:09:47,449.449 INFO    ] time= 27/06/2026 22:09:47
[2026-06-27 22:09:47,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:09:47,499.499 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:09:47,574.574 INFO    ] No existing commands found in stream
[2026-06-27 22:09:52,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:09:52,588.588 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-27 22:09:55,655.655 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:09:55,656.656 INFO    ] Checking for system updates...
[2026-06-27 22:09:55,679.679 INFO    ] 200
[2026-06-27 22:09:55,680.680 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:09:55,711.711 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:09:55,712.712 INFO    ] No update needed
[2026-06-27 22:09:55,714.714 INFO    ] Checking for camera pi updates...
[2026-06-27 22:09:55,735.735 INFO    ] 200
[2026-06-27 22:09:55,736.736 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:09:55,760.760 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:09:55,788.788 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:09:55,790.790 INFO    ] No camera update needed
[2026-06-27 22:09:55,791.791 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:09:55,793.793 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:09:55,796.796 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:09:55,799.799 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:09:57,838.838 INFO    ] ================================================
[2026-06-27 22:09:57,852.852 INFO    ] Launching Daemon at Sat Jun 27 22:09:57 IST 2026
[2026-06-27 22:09:57,863.863 INFO    ] ================================================
[2026-06-27 22:09:58,195.195 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:09:58
[2026-06-27 22:09:58,507.507 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:09:58,650.650 INFO    ] Initializing speech engine...
[2026-06-27 22:09:58,656.656 INFO    ] 2026-06-27 22:09:58
[2026-06-27 22:09:58,860.860 INFO    ] 2026-06-27 22:09:58
[2026-06-27 22:09:58,889.889 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:09:59,074.074 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:09:59,084.084 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:09:59,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:09:59,285.285 INFO    ] time= 27/06/2026 22:09:59
[2026-06-27 22:09:59,306.306 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:09:59,312.312 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:09:59,404.404 INFO    ] No existing commands found in stream
[2026-06-27 22:10:04,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:10:04,416.416 INFO    ] Waiting 3.69 seconds before fallback handling...
[2026-06-27 22:10:08,836.836 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 22:10:08,838.838 INFO    ] Checking for system updates...
[2026-06-27 22:10:08,860.860 INFO    ] 200
[2026-06-27 22:10:08,861.861 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:10:08,891.891 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:10:08,892.892 INFO    ] No update needed
[2026-06-27 22:10:08,894.894 INFO    ] Checking for camera pi updates...
[2026-06-27 22:10:08,914.914 INFO    ] 200
[2026-06-27 22:10:08,916.916 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:10:08,939.939 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:10:08,986.986 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:10:08,988.988 INFO    ] No camera update needed
[2026-06-27 22:10:08,989.989 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:10:08,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:10:08,995.995 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:10:09,000.000 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:10:11,042.042 INFO    ] ================================================
[2026-06-27 22:10:11,057.057 INFO    ] Launching Daemon at Sat Jun 27 22:10:11 IST 2026
[2026-06-27 22:10:11,068.068 INFO    ] ================================================
[2026-06-27 22:10:11,459.459 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:10:11
[2026-06-27 22:10:11,801.801 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:10:11,954.954 INFO    ] Initializing speech engine...
[2026-06-27 22:10:11,960.960 INFO    ] 2026-06-27 22:10:11
[2026-06-27 22:10:12,169.169 INFO    ] 2026-06-27 22:10:12
[2026-06-27 22:10:12,199.199 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:10:12,386.386 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:10:12,397.397 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:10:12,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:10:12,615.615 INFO    ] time= 27/06/2026 22:10:12
[2026-06-27 22:10:12,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:10:12,623.623 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:10:12,715.715 INFO    ] No existing commands found in stream
[2026-06-27 22:10:17,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:10:17,733.733 INFO    ] Waiting 1.61 seconds before fallback handling...
[2026-06-27 22:10:19,799.799 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:10:19,800.800 INFO    ] Checking for system updates...
[2026-06-27 22:10:19,823.823 INFO    ] 200
[2026-06-27 22:10:19,825.825 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:10:19,858.858 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:10:19,859.859 INFO    ] No update needed
[2026-06-27 22:10:19,861.861 INFO    ] Checking for camera pi updates...
[2026-06-27 22:10:19,881.881 INFO    ] 200
[2026-06-27 22:10:19,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:10:19,907.907 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:10:19,955.955 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:10:19,957.957 INFO    ] No camera update needed
[2026-06-27 22:10:19,958.958 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:10:19,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:10:19,963.963 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:10:19,966.966 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:10:22,005.005 INFO    ] ================================================
[2026-06-27 22:10:22,021.021 INFO    ] Launching Daemon at Sat Jun 27 22:10:22 IST 2026
[2026-06-27 22:10:22,031.031 INFO    ] ================================================
[2026-06-27 22:10:22,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:10:22
[2026-06-27 22:10:22,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:10:22,847.847 INFO    ] Initializing speech engine...
[2026-06-27 22:10:22,852.852 INFO    ] 2026-06-27 22:10:22
[2026-06-27 22:10:23,057.057 INFO    ] 2026-06-27 22:10:23
[2026-06-27 22:10:23,085.085 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:10:23,269.269 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:10:23,278.278 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:10:23,407.407 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:10:23,466.466 INFO    ] time= 27/06/2026 22:10:23
[2026-06-27 22:10:23,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:10:23,504.504 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:10:23,571.571 INFO    ] No existing commands found in stream
[2026-06-27 22:10:28,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:10:28,588.588 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-27 22:10:30,315.315 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 22:10:30,316.316 INFO    ] Checking for system updates...
[2026-06-27 22:10:30,337.337 INFO    ] 200
[2026-06-27 22:10:30,338.338 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:10:30,368.368 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:10:30,370.370 INFO    ] No update needed
[2026-06-27 22:10:30,371.371 INFO    ] Checking for camera pi updates...
[2026-06-27 22:10:30,390.390 INFO    ] 200
[2026-06-27 22:10:30,392.392 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:10:30,418.418 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:10:30,460.460 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:10:30,461.461 INFO    ] No camera update needed
[2026-06-27 22:10:30,463.463 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:10:30,464.464 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:10:30,467.467 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:10:30,470.470 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:10:32,502.502 INFO    ] ================================================
[2026-06-27 22:10:32,511.511 INFO    ] Launching Daemon at Sat Jun 27 22:10:32 IST 2026
[2026-06-27 22:10:32,518.518 INFO    ] ================================================
[2026-06-27 22:10:32,849.849 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:10:32
[2026-06-27 22:10:33,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:10:33,304.304 INFO    ] Initializing speech engine...
[2026-06-27 22:10:33,309.309 INFO    ] 2026-06-27 22:10:33
[2026-06-27 22:10:33,512.512 INFO    ] 2026-06-27 22:10:33
[2026-06-27 22:10:33,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:10:33,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:10:33,725.725 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:10:33,859.859 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:10:33,916.916 INFO    ] time= 27/06/2026 22:10:33
[2026-06-27 22:10:33,950.950 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:10:33,955.955 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:10:34,027.027 INFO    ] No existing commands found in stream
[2026-06-27 22:10:39,036.036 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:10:39,038.038 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-27 22:10:43,243.243 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:10:43,245.245 INFO    ] Checking for system updates...
[2026-06-27 22:10:43,265.265 INFO    ] 200
[2026-06-27 22:10:43,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:10:43,297.297 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:10:43,298.298 INFO    ] No update needed
[2026-06-27 22:10:43,299.299 INFO    ] Checking for camera pi updates...
[2026-06-27 22:10:43,319.319 INFO    ] 200
[2026-06-27 22:10:43,320.320 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:10:43,348.348 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:10:43,392.392 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:10:43,394.394 INFO    ] No camera update needed
[2026-06-27 22:10:43,395.395 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:10:43,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:10:43,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:10:43,402.402 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:10:45,444.444 INFO    ] ================================================
[2026-06-27 22:10:45,459.459 INFO    ] Launching Daemon at Sat Jun 27 22:10:45 IST 2026
[2026-06-27 22:10:45,470.470 INFO    ] ================================================
[2026-06-27 22:10:45,821.821 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:10:45
[2026-06-27 22:10:46,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:10:46,262.262 INFO    ] Initializing speech engine...
[2026-06-27 22:10:46,267.267 INFO    ] 2026-06-27 22:10:46
[2026-06-27 22:10:46,487.487 INFO    ] 2026-06-27 22:10:46
[2026-06-27 22:10:46,517.517 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:10:46,644.644 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:10:46,707.707 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:10:46,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:10:46,900.900 INFO    ] time= 27/06/2026 22:10:46
[2026-06-27 22:10:46,935.935 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:10:46,940.940 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:10:47,011.011 INFO    ] No existing commands found in stream
[2026-06-27 22:10:52,021.021 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:10:52,025.025 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-27 22:10:55,424.424 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 22:10:55,425.425 INFO    ] Checking for system updates...
[2026-06-27 22:10:55,446.446 INFO    ] 200
[2026-06-27 22:10:55,447.447 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:10:55,477.477 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:10:55,479.479 INFO    ] No update needed
[2026-06-27 22:10:55,480.480 INFO    ] Checking for camera pi updates...
[2026-06-27 22:10:55,500.500 INFO    ] 200
[2026-06-27 22:10:55,502.502 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:10:55,529.529 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:10:55,559.559 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:10:55,560.560 INFO    ] No camera update needed
[2026-06-27 22:10:55,562.562 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:10:55,563.563 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:10:55,566.566 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:10:55,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:10:57,607.607 INFO    ] ================================================
[2026-06-27 22:10:57,622.622 INFO    ] Launching Daemon at Sat Jun 27 22:10:57 IST 2026
[2026-06-27 22:10:57,632.632 INFO    ] ================================================
[2026-06-27 22:10:57,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:10:57
[2026-06-27 22:10:58,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:10:58,482.482 INFO    ] Initializing speech engine...
[2026-06-27 22:10:58,489.489 INFO    ] 2026-06-27 22:10:58
[2026-06-27 22:10:58,693.693 INFO    ] 2026-06-27 22:10:58
[2026-06-27 22:10:58,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:10:58,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:10:58,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:10:59,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:10:59,201.201 INFO    ] time= 27/06/2026 22:10:59
[2026-06-27 22:10:59,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:10:59,228.228 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:10:59,324.324 INFO    ] No existing commands found in stream
[2026-06-27 22:11:04,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:11:04,338.338 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-27 22:11:04,840.840 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 22:11:04,842.842 INFO    ] Checking for system updates...
[2026-06-27 22:11:04,865.865 INFO    ] 200
[2026-06-27 22:11:04,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:11:04,902.902 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:11:04,904.904 INFO    ] No update needed
[2026-06-27 22:11:04,905.905 INFO    ] Checking for camera pi updates...
[2026-06-27 22:11:04,928.928 INFO    ] 200
[2026-06-27 22:11:04,929.929 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:11:04,953.953 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:11:04,994.994 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:11:04,996.996 INFO    ] No camera update needed
[2026-06-27 22:11:04,997.997 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:11:04,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:11:05,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:11:05,005.005 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:11:07,046.046 INFO    ] ================================================
[2026-06-27 22:11:07,062.062 INFO    ] Launching Daemon at Sat Jun 27 22:11:07 IST 2026
[2026-06-27 22:11:07,073.073 INFO    ] ================================================
[2026-06-27 22:11:07,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:11:07
[2026-06-27 22:11:07,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:11:07,910.910 INFO    ] Initializing speech engine...
[2026-06-27 22:11:07,920.920 INFO    ] 2026-06-27 22:11:07
[2026-06-27 22:11:08,125.125 INFO    ] 2026-06-27 22:11:08
[2026-06-27 22:11:08,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:11:08,280.280 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:11:08,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:11:08,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:11:08,544.544 INFO    ] time= 27/06/2026 22:11:08
[2026-06-27 22:11:08,584.584 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:11:08,601.601 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:11:08,682.682 INFO    ] No existing commands found in stream
[2026-06-27 22:11:13,686.686 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:11:13,689.689 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-27 22:11:14,175.175 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:11:14,176.176 INFO    ] Checking for system updates...
[2026-06-27 22:11:14,199.199 INFO    ] 200
[2026-06-27 22:11:14,200.200 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:11:14,233.233 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:11:14,234.234 INFO    ] No update needed
[2026-06-27 22:11:14,236.236 INFO    ] Checking for camera pi updates...
[2026-06-27 22:11:14,256.256 INFO    ] 200
[2026-06-27 22:11:14,257.257 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:11:14,280.280 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:11:14,335.335 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:11:14,336.336 INFO    ] No camera update needed
[2026-06-27 22:11:14,337.337 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:11:14,338.338 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:11:14,341.341 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:11:14,344.344 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:11:16,382.382 INFO    ] ================================================
[2026-06-27 22:11:16,398.398 INFO    ] Launching Daemon at Sat Jun 27 22:11:16 IST 2026
[2026-06-27 22:11:16,408.408 INFO    ] ================================================
[2026-06-27 22:11:16,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:11:16
[2026-06-27 22:11:17,058.058 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:11:17,202.202 INFO    ] Initializing speech engine...
[2026-06-27 22:11:17,207.207 INFO    ] 2026-06-27 22:11:17
[2026-06-27 22:11:17,411.411 INFO    ] 2026-06-27 22:11:17
[2026-06-27 22:11:17,438.438 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:11:17,625.625 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:11:17,634.634 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:11:17,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:11:17,830.830 INFO    ] time= 27/06/2026 22:11:17
[2026-06-27 22:11:17,853.853 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:11:17,863.863 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:11:17,954.954 INFO    ] No existing commands found in stream
[2026-06-27 22:11:22,963.963 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:11:22,965.965 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-27 22:11:25,641.641 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:11:25,642.642 INFO    ] Checking for system updates...
[2026-06-27 22:11:25,665.665 INFO    ] 200
[2026-06-27 22:11:25,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:11:25,696.696 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:11:25,698.698 INFO    ] No update needed
[2026-06-27 22:11:25,699.699 INFO    ] Checking for camera pi updates...
[2026-06-27 22:11:25,719.719 INFO    ] 200
[2026-06-27 22:11:25,720.720 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:11:25,743.743 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:11:25,792.792 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:11:25,794.794 INFO    ] No camera update needed
[2026-06-27 22:11:25,795.795 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:11:25,797.797 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:11:25,800.800 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:11:25,802.802 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:11:27,840.840 INFO    ] ================================================
[2026-06-27 22:11:27,856.856 INFO    ] Launching Daemon at Sat Jun 27 22:11:27 IST 2026
[2026-06-27 22:11:27,866.866 INFO    ] ================================================
[2026-06-27 22:11:28,226.226 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:11:28
[2026-06-27 22:11:28,548.548 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:11:28,702.702 INFO    ] Initializing speech engine...
[2026-06-27 22:11:28,706.706 INFO    ] 2026-06-27 22:11:28
[2026-06-27 22:11:28,914.914 INFO    ] 2026-06-27 22:11:28
[2026-06-27 22:11:28,942.942 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:11:29,127.127 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:11:29,137.137 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:11:29,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:11:29,309.309 INFO    ] time= 27/06/2026 22:11:29
[2026-06-27 22:11:29,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:11:29,358.358 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:11:29,429.429 INFO    ] No existing commands found in stream
[2026-06-27 22:11:34,444.444 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:11:34,447.447 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-27 22:11:37,214.214 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 22:11:37,216.216 INFO    ] Checking for system updates...
[2026-06-27 22:11:37,239.239 INFO    ] 200
[2026-06-27 22:11:37,241.241 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:11:37,271.271 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:11:37,272.272 INFO    ] No update needed
[2026-06-27 22:11:37,273.273 INFO    ] Checking for camera pi updates...
[2026-06-27 22:11:37,293.293 INFO    ] 200
[2026-06-27 22:11:37,294.294 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:11:37,318.318 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:11:37,360.360 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:11:37,361.361 INFO    ] No camera update needed
[2026-06-27 22:11:37,362.362 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:11:37,364.364 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:11:37,367.367 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:11:37,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:11:39,408.408 INFO    ] ================================================
[2026-06-27 22:11:39,423.423 INFO    ] Launching Daemon at Sat Jun 27 22:11:39 IST 2026
[2026-06-27 22:11:39,434.434 INFO    ] ================================================
[2026-06-27 22:11:39,785.785 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:11:39
[2026-06-27 22:11:40,098.098 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:11:40,236.236 INFO    ] Initializing speech engine...
[2026-06-27 22:11:40,247.247 INFO    ] 2026-06-27 22:11:40
[2026-06-27 22:11:40,454.454 INFO    ] 2026-06-27 22:11:40
[2026-06-27 22:11:40,483.483 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:11:40,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:11:40,679.679 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:11:40,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:11:40,845.845 INFO    ] time= 27/06/2026 22:11:40
[2026-06-27 22:11:40,889.889 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:11:40,913.913 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:11:40,988.988 INFO    ] No existing commands found in stream
[2026-06-27 22:11:45,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:11:46,002.002 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-27 22:11:48,442.442 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 22:11:48,444.444 INFO    ] Checking for system updates...
[2026-06-27 22:11:48,466.466 INFO    ] 200
[2026-06-27 22:11:48,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:11:48,498.498 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:11:48,499.499 INFO    ] No update needed
[2026-06-27 22:11:48,500.500 INFO    ] Checking for camera pi updates...
[2026-06-27 22:11:48,520.520 INFO    ] 200
[2026-06-27 22:11:48,521.521 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:11:48,545.545 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:11:48,589.589 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:11:48,590.590 INFO    ] No camera update needed
[2026-06-27 22:11:48,592.592 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:11:48,593.593 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:11:48,596.596 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:11:48,599.599 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:11:50,639.639 INFO    ] ================================================
[2026-06-27 22:11:50,654.654 INFO    ] Launching Daemon at Sat Jun 27 22:11:50 IST 2026
[2026-06-27 22:11:50,665.665 INFO    ] ================================================
[2026-06-27 22:11:51,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:11:51
[2026-06-27 22:11:51,356.356 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:11:51,506.506 INFO    ] Initializing speech engine...
[2026-06-27 22:11:51,511.511 INFO    ] 2026-06-27 22:11:51
[2026-06-27 22:11:51,730.730 INFO    ] 2026-06-27 22:11:51
[2026-06-27 22:11:51,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:11:51,961.961 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:11:51,965.965 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:11:52,106.106 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:11:52,147.147 INFO    ] time= 27/06/2026 22:11:52
[2026-06-27 22:11:52,190.190 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:11:52,215.215 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:11:52,273.273 INFO    ] No existing commands found in stream
[2026-06-27 22:11:57,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:11:57,301.301 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-27 22:11:59,840.840 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 22:11:59,841.841 INFO    ] Checking for system updates...
[2026-06-27 22:11:59,862.862 INFO    ] 200
[2026-06-27 22:11:59,863.863 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:11:59,894.894 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:11:59,895.895 INFO    ] No update needed
[2026-06-27 22:11:59,896.896 INFO    ] Checking for camera pi updates...
[2026-06-27 22:11:59,917.917 INFO    ] 200
[2026-06-27 22:11:59,919.919 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:11:59,943.943 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:11:59,972.972 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:11:59,974.974 INFO    ] No camera update needed
[2026-06-27 22:11:59,975.975 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:11:59,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:11:59,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:11:59,982.982 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:12:02,018.018 INFO    ] ================================================
[2026-06-27 22:12:02,030.030 INFO    ] Launching Daemon at Sat Jun 27 22:12:02 IST 2026
[2026-06-27 22:12:02,038.038 INFO    ] ================================================
[2026-06-27 22:12:02,417.417 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:12:02
[2026-06-27 22:12:02,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:12:02,880.880 INFO    ] Initializing speech engine...
[2026-06-27 22:12:02,893.893 INFO    ] 2026-06-27 22:12:02
[2026-06-27 22:12:03,112.112 INFO    ] 2026-06-27 22:12:03
[2026-06-27 22:12:03,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:12:03,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:12:03,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:12:03,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:12:03,501.501 INFO    ] time= 27/06/2026 22:12:03
[2026-06-27 22:12:03,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:12:03,594.594 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:12:03,670.670 INFO    ] No existing commands found in stream
[2026-06-27 22:12:08,680.680 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:12:08,683.683 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-27 22:12:09,187.187 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 22:12:09,189.189 INFO    ] Checking for system updates...
[2026-06-27 22:12:09,209.209 INFO    ] 200
[2026-06-27 22:12:09,211.211 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:12:09,245.245 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:12:09,246.246 INFO    ] No update needed
[2026-06-27 22:12:09,247.247 INFO    ] Checking for camera pi updates...
[2026-06-27 22:12:09,268.268 INFO    ] 200
[2026-06-27 22:12:09,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:12:09,292.292 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:12:09,434.434 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:12:09,436.436 INFO    ] No camera update needed
[2026-06-27 22:12:09,437.437 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:12:09,438.438 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:12:09,441.441 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:12:09,444.444 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:12:11,483.483 INFO    ] ================================================
[2026-06-27 22:12:11,499.499 INFO    ] Launching Daemon at Sat Jun 27 22:12:11 IST 2026
[2026-06-27 22:12:11,510.510 INFO    ] ================================================
[2026-06-27 22:12:11,864.864 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:12:11
[2026-06-27 22:12:12,177.177 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:12:12,307.307 INFO    ] Initializing speech engine...
[2026-06-27 22:12:12,311.311 INFO    ] 2026-06-27 22:12:12
[2026-06-27 22:12:12,530.530 INFO    ] 2026-06-27 22:12:12
[2026-06-27 22:12:12,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:12:12,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:12:12,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:12:12,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:12:12,978.978 INFO    ] time= 27/06/2026 22:12:12
[2026-06-27 22:12:13,006.006 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:12:13,030.030 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:12:13,106.106 INFO    ] No existing commands found in stream
[2026-06-27 22:12:18,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:12:18,119.119 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-27 22:12:21,860.860 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:12:21,861.861 INFO    ] Checking for system updates...
[2026-06-27 22:12:21,882.882 INFO    ] 200
[2026-06-27 22:12:21,884.884 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:12:21,914.914 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:12:21,916.916 INFO    ] No update needed
[2026-06-27 22:12:21,917.917 INFO    ] Checking for camera pi updates...
[2026-06-27 22:12:21,936.936 INFO    ] 200
[2026-06-27 22:12:21,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:12:21,963.963 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:12:21,992.992 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:12:21,993.993 INFO    ] No camera update needed
[2026-06-27 22:12:21,994.994 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:12:21,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:12:21,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:12:22,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:12:24,041.041 INFO    ] ================================================
[2026-06-27 22:12:24,057.057 INFO    ] Launching Daemon at Sat Jun 27 22:12:24 IST 2026
[2026-06-27 22:12:24,068.068 INFO    ] ================================================
[2026-06-27 22:12:24,395.395 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:12:24
[2026-06-27 22:12:24,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:12:24,844.844 INFO    ] Initializing speech engine...
[2026-06-27 22:12:24,856.856 INFO    ] 2026-06-27 22:12:24
[2026-06-27 22:12:25,075.075 INFO    ] 2026-06-27 22:12:25
[2026-06-27 22:12:25,106.106 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:12:25,304.304 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:12:25,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:12:25,448.448 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:12:25,499.499 INFO    ] time= 27/06/2026 22:12:25
[2026-06-27 22:12:25,533.533 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:12:25,557.557 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:12:25,634.634 INFO    ] No existing commands found in stream
[2026-06-27 22:12:30,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:12:30,646.646 INFO    ] Waiting 2.01 seconds before fallback handling...
[2026-06-27 22:12:33,059.059 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 22:12:33,061.061 INFO    ] Checking for system updates...
[2026-06-27 22:12:33,083.083 INFO    ] 200
[2026-06-27 22:12:33,084.084 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:12:33,117.117 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:12:33,119.119 INFO    ] No update needed
[2026-06-27 22:12:33,120.120 INFO    ] Checking for camera pi updates...
[2026-06-27 22:12:33,139.139 INFO    ] 200
[2026-06-27 22:12:33,140.140 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:12:33,164.164 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:12:33,217.217 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:12:33,218.218 INFO    ] No camera update needed
[2026-06-27 22:12:33,220.220 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:12:33,221.221 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:12:33,224.224 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:12:33,227.227 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:12:35,260.260 INFO    ] ================================================
[2026-06-27 22:12:35,275.275 INFO    ] Launching Daemon at Sat Jun 27 22:12:35 IST 2026
[2026-06-27 22:12:35,286.286 INFO    ] ================================================
[2026-06-27 22:12:35,617.617 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:12:35
[2026-06-27 22:12:35,936.936 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:12:36,077.077 INFO    ] Initializing speech engine...
[2026-06-27 22:12:36,086.086 INFO    ] 2026-06-27 22:12:36
[2026-06-27 22:12:36,292.292 INFO    ] 2026-06-27 22:12:36
[2026-06-27 22:12:36,320.320 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:12:36,505.505 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:12:36,513.513 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:12:36,704.704 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:12:36,732.732 INFO    ] time= 27/06/2026 22:12:36
[2026-06-27 22:12:36,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:12:36,739.739 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:12:36,857.857 INFO    ] No existing commands found in stream
[2026-06-27 22:12:41,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:12:41,870.870 INFO    ] Waiting 0.90 seconds before fallback handling...
[2026-06-27 22:12:43,180.180 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:12:43,182.182 INFO    ] Checking for system updates...
[2026-06-27 22:12:43,204.204 INFO    ] 200
[2026-06-27 22:12:43,206.206 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:12:43,240.240 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:12:43,242.242 INFO    ] No update needed
[2026-06-27 22:12:43,244.244 INFO    ] Checking for camera pi updates...
[2026-06-27 22:12:43,265.265 INFO    ] 200
[2026-06-27 22:12:43,267.267 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:12:43,291.291 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:12:43,340.340 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:12:43,342.342 INFO    ] No camera update needed
[2026-06-27 22:12:43,343.343 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:12:43,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:12:43,348.348 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:12:43,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:12:45,391.391 INFO    ] ================================================
[2026-06-27 22:12:45,406.406 INFO    ] Launching Daemon at Sat Jun 27 22:12:45 IST 2026
[2026-06-27 22:12:45,417.417 INFO    ] ================================================
[2026-06-27 22:12:45,767.767 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:12:45
[2026-06-27 22:12:46,079.079 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:12:46,213.213 INFO    ] Initializing speech engine...
[2026-06-27 22:12:46,225.225 INFO    ] 2026-06-27 22:12:46
[2026-06-27 22:12:46,434.434 INFO    ] 2026-06-27 22:12:46
[2026-06-27 22:12:46,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:12:46,648.648 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:12:46,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:12:46,805.805 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:12:46,852.852 INFO    ] time= 27/06/2026 22:12:46
[2026-06-27 22:12:46,876.876 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:12:46,882.882 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:12:46,949.949 INFO    ] No existing commands found in stream
[2026-06-27 22:12:51,978.978 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:12:51,981.981 INFO    ] Waiting 1.41 seconds before fallback handling...
[2026-06-27 22:12:53,792.792 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 22:12:53,794.794 INFO    ] Checking for system updates...
[2026-06-27 22:12:53,814.814 INFO    ] 200
[2026-06-27 22:12:53,816.816 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:12:53,850.850 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:12:53,852.852 INFO    ] No update needed
[2026-06-27 22:12:53,853.853 INFO    ] Checking for camera pi updates...
[2026-06-27 22:12:53,874.874 INFO    ] 200
[2026-06-27 22:12:53,875.875 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:12:53,900.900 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:12:53,979.979 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:12:53,980.980 INFO    ] No camera update needed
[2026-06-27 22:12:53,981.981 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:12:53,983.983 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:12:53,986.986 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:12:53,989.989 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:12:56,028.028 INFO    ] ================================================
[2026-06-27 22:12:56,043.043 INFO    ] Launching Daemon at Sat Jun 27 22:12:56 IST 2026
[2026-06-27 22:12:56,054.054 INFO    ] ================================================
[2026-06-27 22:12:56,394.394 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:12:56
[2026-06-27 22:12:56,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:12:56,855.855 INFO    ] Initializing speech engine...
[2026-06-27 22:12:56,860.860 INFO    ] 2026-06-27 22:12:56
[2026-06-27 22:12:57,065.065 INFO    ] 2026-06-27 22:12:57
[2026-06-27 22:12:57,092.092 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:12:57,294.294 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:12:57,298.298 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:12:57,438.438 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:12:57,489.489 INFO    ] time= 27/06/2026 22:12:57
[2026-06-27 22:12:57,523.523 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:12:57,546.546 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:12:57,623.623 INFO    ] No existing commands found in stream
[2026-06-27 22:13:02,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:13:02,633.633 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-27 22:13:04,653.653 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 22:13:04,655.655 INFO    ] Checking for system updates...
[2026-06-27 22:13:04,677.677 INFO    ] 200
[2026-06-27 22:13:04,679.679 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:13:04,711.711 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:13:04,713.713 INFO    ] No update needed
[2026-06-27 22:13:04,714.714 INFO    ] Checking for camera pi updates...
[2026-06-27 22:13:04,734.734 INFO    ] 200
[2026-06-27 22:13:04,736.736 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:13:04,761.761 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:13:04,805.805 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:13:04,807.807 INFO    ] No camera update needed
[2026-06-27 22:13:04,808.808 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:13:04,809.809 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:13:04,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:13:04,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:13:06,855.855 INFO    ] ================================================
[2026-06-27 22:13:06,870.870 INFO    ] Launching Daemon at Sat Jun 27 22:13:06 IST 2026
[2026-06-27 22:13:06,880.880 INFO    ] ================================================
[2026-06-27 22:13:07,245.245 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:13:07
[2026-06-27 22:13:07,590.590 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:13:07,744.744 INFO    ] Initializing speech engine...
[2026-06-27 22:13:07,750.750 INFO    ] 2026-06-27 22:13:07
[2026-06-27 22:13:07,960.960 INFO    ] 2026-06-27 22:13:07
[2026-06-27 22:13:07,989.989 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:13:08,253.253 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:13:08,301.301 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:13:08,468.468 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:13:08,472.472 INFO    ] time= 27/06/2026 22:13:08
[2026-06-27 22:13:08,497.497 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:13:08,499.499 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:13:08,602.602 INFO    ] No existing commands found in stream
[2026-06-27 22:13:13,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:13:13,616.616 INFO    ] Waiting 0.26 seconds before fallback handling...
[2026-06-27 22:13:14,280.280 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 22:13:14,281.281 INFO    ] Checking for system updates...
[2026-06-27 22:13:14,302.302 INFO    ] 200
[2026-06-27 22:13:14,304.304 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:13:14,336.336 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:13:14,338.338 INFO    ] No update needed
[2026-06-27 22:13:14,339.339 INFO    ] Checking for camera pi updates...
[2026-06-27 22:13:14,358.358 INFO    ] 200
[2026-06-27 22:13:14,359.359 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:13:14,385.385 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:13:14,425.425 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:13:14,426.426 INFO    ] No camera update needed
[2026-06-27 22:13:14,428.428 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:13:14,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:13:14,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:13:14,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:13:16,472.472 INFO    ] ================================================
[2026-06-27 22:13:16,488.488 INFO    ] Launching Daemon at Sat Jun 27 22:13:16 IST 2026
[2026-06-27 22:13:16,499.499 INFO    ] ================================================
[2026-06-27 22:13:16,869.869 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:13:16
[2026-06-27 22:13:17,182.182 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:13:17,325.325 INFO    ] Initializing speech engine...
[2026-06-27 22:13:17,329.329 INFO    ] 2026-06-27 22:13:17
[2026-06-27 22:13:17,533.533 INFO    ] 2026-06-27 22:13:17
[2026-06-27 22:13:17,568.568 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:13:17,748.748 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:13:17,758.758 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:13:17,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:13:17,952.952 INFO    ] time= 27/06/2026 22:13:17
[2026-06-27 22:13:17,976.976 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:13:17,982.982 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:13:18,048.048 INFO    ] No existing commands found in stream
[2026-06-27 22:13:23,057.057 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:13:23,060.060 INFO    ] Waiting 1.45 seconds before fallback handling...
[2026-06-27 22:13:24,943.943 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 22:13:24,944.944 INFO    ] Checking for system updates...
[2026-06-27 22:13:24,971.971 INFO    ] 200
[2026-06-27 22:13:24,973.973 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:13:25,007.007 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:13:25,008.008 INFO    ] No update needed
[2026-06-27 22:13:25,010.010 INFO    ] Checking for camera pi updates...
[2026-06-27 22:13:25,030.030 INFO    ] 200
[2026-06-27 22:13:25,031.031 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:13:25,055.055 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:13:25,108.108 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:13:25,110.110 INFO    ] No camera update needed
[2026-06-27 22:13:25,111.111 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:13:25,113.113 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:13:25,116.116 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:13:25,119.119 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:13:27,159.159 INFO    ] ================================================
[2026-06-27 22:13:27,175.175 INFO    ] Launching Daemon at Sat Jun 27 22:13:27 IST 2026
[2026-06-27 22:13:27,185.185 INFO    ] ================================================
[2026-06-27 22:13:27,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:13:27
[2026-06-27 22:13:27,864.864 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:13:28,009.009 INFO    ] Initializing speech engine...
[2026-06-27 22:13:28,015.015 INFO    ] 2026-06-27 22:13:28
[2026-06-27 22:13:28,219.219 INFO    ] 2026-06-27 22:13:28
[2026-06-27 22:13:28,247.247 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:13:28,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:13:28,440.440 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:13:28,569.569 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:13:28,633.633 INFO    ] time= 27/06/2026 22:13:28
[2026-06-27 22:13:28,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:13:28,667.667 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:13:28,734.734 INFO    ] No existing commands found in stream
[2026-06-27 22:13:33,748.748 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:13:33,751.751 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-27 22:13:35,577.577 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 22:13:35,579.579 INFO    ] Checking for system updates...
[2026-06-27 22:13:35,601.601 INFO    ] 200
[2026-06-27 22:13:35,602.602 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:13:35,632.632 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:13:35,634.634 INFO    ] No update needed
[2026-06-27 22:13:35,635.635 INFO    ] Checking for camera pi updates...
[2026-06-27 22:13:35,656.656 INFO    ] 200
[2026-06-27 22:13:35,657.657 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:13:35,681.681 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:13:35,726.726 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:13:35,727.727 INFO    ] No camera update needed
[2026-06-27 22:13:35,729.729 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:13:35,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:13:35,733.733 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:13:35,736.736 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:13:37,776.776 INFO    ] ================================================
[2026-06-27 22:13:37,792.792 INFO    ] Launching Daemon at Sat Jun 27 22:13:37 IST 2026
[2026-06-27 22:13:37,803.803 INFO    ] ================================================
[2026-06-27 22:13:38,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:13:38
[2026-06-27 22:13:38,490.490 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:13:38,635.635 INFO    ] Initializing speech engine...
[2026-06-27 22:13:38,640.640 INFO    ] 2026-06-27 22:13:38
[2026-06-27 22:13:38,844.844 INFO    ] 2026-06-27 22:13:38
[2026-06-27 22:13:38,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:13:39,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:13:39,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:13:39,206.206 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:13:39,262.262 INFO    ] time= 27/06/2026 22:13:39
[2026-06-27 22:13:39,286.286 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:13:39,292.292 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:13:39,358.358 INFO    ] No existing commands found in stream
[2026-06-27 22:13:44,367.367 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:13:44,370.370 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-27 22:13:48,543.543 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:13:48,545.545 INFO    ] Checking for system updates...
[2026-06-27 22:13:48,567.567 INFO    ] 200
[2026-06-27 22:13:48,569.569 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:13:48,599.599 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:13:48,600.600 INFO    ] No update needed
[2026-06-27 22:13:48,602.602 INFO    ] Checking for camera pi updates...
[2026-06-27 22:13:48,622.622 INFO    ] 200
[2026-06-27 22:13:48,624.624 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:13:48,649.649 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:13:48,705.705 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:13:48,707.707 INFO    ] No camera update needed
[2026-06-27 22:13:48,708.708 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:13:48,709.709 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:13:48,712.712 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:13:48,715.715 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:13:50,754.754 INFO    ] ================================================
[2026-06-27 22:13:50,769.769 INFO    ] Launching Daemon at Sat Jun 27 22:13:50 IST 2026
[2026-06-27 22:13:50,780.780 INFO    ] ================================================
[2026-06-27 22:13:51,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:13:51
[2026-06-27 22:13:51,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:13:51,575.575 INFO    ] Initializing speech engine...
[2026-06-27 22:13:51,580.580 INFO    ] 2026-06-27 22:13:51
[2026-06-27 22:13:51,784.784 INFO    ] 2026-06-27 22:13:51
[2026-06-27 22:13:51,812.812 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:13:52,071.071 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:13:52,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:13:52,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:13:52,292.292 INFO    ] time= 27/06/2026 22:13:52
[2026-06-27 22:13:52,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:13:52,319.319 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:13:52,415.415 INFO    ] No existing commands found in stream
[2026-06-27 22:13:57,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:13:57,428.428 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-27 22:13:57,889.889 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 22:13:57,890.890 INFO    ] Checking for system updates...
[2026-06-27 22:13:57,912.912 INFO    ] 200
[2026-06-27 22:13:57,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:13:57,945.945 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:13:57,946.946 INFO    ] No update needed
[2026-06-27 22:13:57,947.947 INFO    ] Checking for camera pi updates...
[2026-06-27 22:13:57,967.967 INFO    ] 200
[2026-06-27 22:13:57,968.968 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:13:57,992.992 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:13:58,047.047 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:13:58,048.048 INFO    ] No camera update needed
[2026-06-27 22:13:58,050.050 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:13:58,051.051 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:13:58,055.055 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:13:58,058.058 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:14:00,099.099 INFO    ] ================================================
[2026-06-27 22:14:00,115.115 INFO    ] Launching Daemon at Sat Jun 27 22:14:00 IST 2026
[2026-06-27 22:14:00,126.126 INFO    ] ================================================
[2026-06-27 22:14:00,498.498 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:14:00
[2026-06-27 22:14:00,841.841 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:14:00,989.989 INFO    ] Initializing speech engine...
[2026-06-27 22:14:00,998.998 INFO    ] 2026-06-27 22:14:00
[2026-06-27 22:14:01,211.211 INFO    ] 2026-06-27 22:14:01
[2026-06-27 22:14:01,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:14:01,408.408 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:14:01,410.410 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:14:01,560.560 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:14:01,577.577 INFO    ] time= 27/06/2026 22:14:01
[2026-06-27 22:14:01,599.599 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:14:01,607.607 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:14:01,727.727 INFO    ] No existing commands found in stream
[2026-06-27 22:14:06,767.767 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:14:06,770.770 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-27 22:14:11,099.099 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 22:14:11,101.101 INFO    ] Checking for system updates...
[2026-06-27 22:14:11,123.123 INFO    ] 200
[2026-06-27 22:14:11,125.125 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:14:11,156.156 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:14:11,157.157 INFO    ] No update needed
[2026-06-27 22:14:11,159.159 INFO    ] Checking for camera pi updates...
[2026-06-27 22:14:11,179.179 INFO    ] 200
[2026-06-27 22:14:11,181.181 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:14:11,205.205 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:14:11,344.344 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:14:11,346.346 INFO    ] No camera update needed
[2026-06-27 22:14:11,347.347 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:14:11,348.348 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:14:11,352.352 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:14:11,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:14:13,394.394 INFO    ] ================================================
[2026-06-27 22:14:13,410.410 INFO    ] Launching Daemon at Sat Jun 27 22:14:13 IST 2026
[2026-06-27 22:14:13,420.420 INFO    ] ================================================
[2026-06-27 22:14:13,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:14:13
[2026-06-27 22:14:14,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:14:14,206.206 INFO    ] Initializing speech engine...
[2026-06-27 22:14:14,210.210 INFO    ] 2026-06-27 22:14:14
[2026-06-27 22:14:14,431.431 INFO    ] 2026-06-27 22:14:14
[2026-06-27 22:14:14,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:14:14,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:14:14,656.656 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:14:14,788.788 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:14:14,856.856 INFO    ] time= 27/06/2026 22:14:14
[2026-06-27 22:14:14,881.881 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:14:14,883.883 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:14:14,955.955 INFO    ] No existing commands found in stream
[2026-06-27 22:14:19,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:14:19,967.967 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-27 22:14:23,609.609 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 22:14:23,610.610 INFO    ] Checking for system updates...
[2026-06-27 22:14:23,633.633 INFO    ] 200
[2026-06-27 22:14:23,635.635 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:14:23,668.668 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:14:23,669.669 INFO    ] No update needed
[2026-06-27 22:14:23,671.671 INFO    ] Checking for camera pi updates...
[2026-06-27 22:14:23,693.693 INFO    ] 200
[2026-06-27 22:14:23,694.694 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:14:23,718.718 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:14:23,767.767 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:14:23,769.769 INFO    ] No camera update needed
[2026-06-27 22:14:23,770.770 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:14:23,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:14:23,775.775 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:14:23,778.778 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:14:25,818.818 INFO    ] ================================================
[2026-06-27 22:14:25,833.833 INFO    ] Launching Daemon at Sat Jun 27 22:14:25 IST 2026
[2026-06-27 22:14:25,843.843 INFO    ] ================================================
[2026-06-27 22:14:26,188.188 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:14:26
[2026-06-27 22:14:26,506.506 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:14:26,650.650 INFO    ] Initializing speech engine...
[2026-06-27 22:14:26,655.655 INFO    ] 2026-06-27 22:14:26
[2026-06-27 22:14:26,860.860 INFO    ] 2026-06-27 22:14:26
[2026-06-27 22:14:26,888.888 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:14:27,083.083 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:14:27,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:14:27,277.277 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:14:27,298.298 INFO    ] time= 27/06/2026 22:14:27
[2026-06-27 22:14:27,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:14:27,305.305 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:14:27,372.372 INFO    ] No existing commands found in stream
[2026-06-27 22:14:32,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:14:32,389.389 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-27 22:14:33,044.044 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 22:14:33,045.045 INFO    ] Checking for system updates...
[2026-06-27 22:14:33,066.066 INFO    ] 200
[2026-06-27 22:14:33,067.067 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:14:33,098.098 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:14:33,099.099 INFO    ] No update needed
[2026-06-27 22:14:33,101.101 INFO    ] Checking for camera pi updates...
[2026-06-27 22:14:33,120.120 INFO    ] 200
[2026-06-27 22:14:33,121.121 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:14:33,146.146 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:14:33,192.192 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:14:33,194.194 INFO    ] No camera update needed
[2026-06-27 22:14:33,195.195 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:14:33,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:14:33,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:14:33,202.202 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:14:35,243.243 INFO    ] ================================================
[2026-06-27 22:14:35,258.258 INFO    ] Launching Daemon at Sat Jun 27 22:14:35 IST 2026
[2026-06-27 22:14:35,269.269 INFO    ] ================================================
[2026-06-27 22:14:35,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:14:35
[2026-06-27 22:14:35,942.942 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:14:36,072.072 INFO    ] Initializing speech engine...
[2026-06-27 22:14:36,077.077 INFO    ] 2026-06-27 22:14:36
[2026-06-27 22:14:36,296.296 INFO    ] 2026-06-27 22:14:36
[2026-06-27 22:14:36,325.325 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:14:36,514.514 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:14:36,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:14:36,742.742 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:14:36,747.747 INFO    ] time= 27/06/2026 22:14:36
[2026-06-27 22:14:36,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:14:36,751.751 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:14:36,878.878 INFO    ] No existing commands found in stream
[2026-06-27 22:14:41,888.888 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:14:41,890.890 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-27 22:14:43,425.425 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:14:43,426.426 INFO    ] Checking for system updates...
[2026-06-27 22:14:43,447.447 INFO    ] 200
[2026-06-27 22:14:43,449.449 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:14:43,480.480 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:14:43,481.481 INFO    ] No update needed
[2026-06-27 22:14:43,483.483 INFO    ] Checking for camera pi updates...
[2026-06-27 22:14:43,502.502 INFO    ] 200
[2026-06-27 22:14:43,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:14:43,529.529 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:14:43,575.575 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:14:43,576.576 INFO    ] No camera update needed
[2026-06-27 22:14:43,577.577 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:14:43,579.579 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:14:43,582.582 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:14:43,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:14:45,627.627 INFO    ] ================================================
[2026-06-27 22:14:45,643.643 INFO    ] Launching Daemon at Sat Jun 27 22:14:45 IST 2026
[2026-06-27 22:14:45,653.653 INFO    ] ================================================
[2026-06-27 22:14:46,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:14:45
[2026-06-27 22:14:46,338.338 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:14:46,487.487 INFO    ] Initializing speech engine...
[2026-06-27 22:14:46,492.492 INFO    ] 2026-06-27 22:14:46
[2026-06-27 22:14:46,702.702 INFO    ] 2026-06-27 22:14:46
[2026-06-27 22:14:46,730.730 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:14:46,889.889 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:14:46,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:14:47,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:14:47,113.113 INFO    ] time= 27/06/2026 22:14:47
[2026-06-27 22:14:47,145.145 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:14:47,151.151 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:14:47,219.219 INFO    ] No existing commands found in stream
[2026-06-27 22:14:52,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:14:52,236.236 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-27 22:14:56,598.598 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 22:14:56,599.599 INFO    ] Checking for system updates...
[2026-06-27 22:14:56,622.622 INFO    ] 200
[2026-06-27 22:14:56,623.623 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:14:56,655.655 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:14:56,657.657 INFO    ] No update needed
[2026-06-27 22:14:56,658.658 INFO    ] Checking for camera pi updates...
[2026-06-27 22:14:56,678.678 INFO    ] 200
[2026-06-27 22:14:56,679.679 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:14:56,703.703 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:14:56,731.731 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:14:56,732.732 INFO    ] No camera update needed
[2026-06-27 22:14:56,734.734 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:14:56,735.735 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:14:56,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:14:56,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:14:58,780.780 INFO    ] ================================================
[2026-06-27 22:14:58,798.798 INFO    ] Launching Daemon at Sat Jun 27 22:14:58 IST 2026
[2026-06-27 22:14:58,809.809 INFO    ] ================================================
[2026-06-27 22:14:59,135.135 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:14:59
[2026-06-27 22:14:59,449.449 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:14:59,585.585 INFO    ] Initializing speech engine...
[2026-06-27 22:14:59,598.598 INFO    ] 2026-06-27 22:14:59
[2026-06-27 22:14:59,818.818 INFO    ] 2026-06-27 22:14:59
[2026-06-27 22:14:59,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:14:59,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:15:00,050.050 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:15:00,197.197 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:15:00,251.251 INFO    ] time= 27/06/2026 22:15:00
[2026-06-27 22:15:00,290.290 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:15:00,296.296 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:15:00,371.371 INFO    ] No existing commands found in stream
[2026-06-27 22:15:05,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:15:05,385.385 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-27 22:15:08,999.999 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:15:09,000.000 INFO    ] Checking for system updates...
[2026-06-27 22:15:09,021.021 INFO    ] 200
[2026-06-27 22:15:09,023.023 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:15:09,054.054 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:15:09,055.055 INFO    ] No update needed
[2026-06-27 22:15:09,057.057 INFO    ] Checking for camera pi updates...
[2026-06-27 22:15:09,077.077 INFO    ] 200
[2026-06-27 22:15:09,079.079 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:15:09,103.103 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:15:09,141.141 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:15:09,143.143 INFO    ] No camera update needed
[2026-06-27 22:15:09,144.144 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:15:09,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:15:09,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:15:09,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:15:11,190.190 INFO    ] ================================================
[2026-06-27 22:15:11,206.206 INFO    ] Launching Daemon at Sat Jun 27 22:15:11 IST 2026
[2026-06-27 22:15:11,217.217 INFO    ] ================================================
[2026-06-27 22:15:11,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:15:11
[2026-06-27 22:15:11,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:15:12,010.010 INFO    ] Initializing speech engine...
[2026-06-27 22:15:12,013.013 INFO    ] 2026-06-27 22:15:12
[2026-06-27 22:15:12,234.234 INFO    ] 2026-06-27 22:15:12
[2026-06-27 22:15:12,263.263 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:15:12,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:15:12,466.466 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:15:12,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:15:12,677.677 INFO    ] time= 27/06/2026 22:15:12
[2026-06-27 22:15:12,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:15:12,713.713 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:15:12,789.789 INFO    ] No existing commands found in stream
[2026-06-27 22:15:17,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:15:17,802.802 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-27 22:15:18,434.434 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 22:15:18,435.435 INFO    ] Checking for system updates...
[2026-06-27 22:15:18,457.457 INFO    ] 200
[2026-06-27 22:15:18,458.458 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:15:18,489.489 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:15:18,490.490 INFO    ] No update needed
[2026-06-27 22:15:18,492.492 INFO    ] Checking for camera pi updates...
[2026-06-27 22:15:18,512.512 INFO    ] 200
[2026-06-27 22:15:18,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:15:18,537.537 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:15:18,586.586 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:15:18,587.587 INFO    ] No camera update needed
[2026-06-27 22:15:18,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:15:18,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:15:18,593.593 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:15:18,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:15:20,636.636 INFO    ] ================================================
[2026-06-27 22:15:20,652.652 INFO    ] Launching Daemon at Sat Jun 27 22:15:20 IST 2026
[2026-06-27 22:15:20,662.662 INFO    ] ================================================
[2026-06-27 22:15:21,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:15:21
[2026-06-27 22:15:21,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:15:21,486.486 INFO    ] Initializing speech engine...
[2026-06-27 22:15:21,491.491 INFO    ] 2026-06-27 22:15:21
[2026-06-27 22:15:21,701.701 INFO    ] 2026-06-27 22:15:21
[2026-06-27 22:15:21,733.733 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:15:21,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:15:21,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:15:22,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:15:22,124.124 INFO    ] time= 27/06/2026 22:15:22
[2026-06-27 22:15:22,162.162 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:15:22,186.186 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:15:22,261.261 INFO    ] No existing commands found in stream
[2026-06-27 22:15:27,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:15:27,275.275 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-27 22:15:30,240.240 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:15:30,242.242 INFO    ] Checking for system updates...
[2026-06-27 22:15:30,263.263 INFO    ] 200
[2026-06-27 22:15:30,264.264 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:15:30,295.295 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:15:30,297.297 INFO    ] No update needed
[2026-06-27 22:15:30,298.298 INFO    ] Checking for camera pi updates...
[2026-06-27 22:15:30,318.318 INFO    ] 200
[2026-06-27 22:15:30,320.320 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:15:30,343.343 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:15:30,393.393 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:15:30,395.395 INFO    ] No camera update needed
[2026-06-27 22:15:30,396.396 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:15:30,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:15:30,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:15:30,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:15:32,444.444 INFO    ] ================================================
[2026-06-27 22:15:32,461.461 INFO    ] Launching Daemon at Sat Jun 27 22:15:32 IST 2026
[2026-06-27 22:15:32,472.472 INFO    ] ================================================
[2026-06-27 22:15:32,806.806 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:15:32
[2026-06-27 22:15:33,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:15:33,265.265 INFO    ] Initializing speech engine...
[2026-06-27 22:15:33,271.271 INFO    ] 2026-06-27 22:15:33
[2026-06-27 22:15:33,476.476 INFO    ] 2026-06-27 22:15:33
[2026-06-27 22:15:33,506.506 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:15:33,695.695 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:15:33,703.703 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:15:33,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:15:33,883.883 INFO    ] time= 27/06/2026 22:15:33
[2026-06-27 22:15:33,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:15:33,928.928 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:15:34,000.000 INFO    ] No existing commands found in stream
[2026-06-27 22:15:39,009.009 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:15:39,012.012 INFO    ] Waiting 1.55 seconds before fallback handling...
[2026-06-27 22:15:40,979.979 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 22:15:40,980.980 INFO    ] Checking for system updates...
[2026-06-27 22:15:41,000.000 INFO    ] 200
[2026-06-27 22:15:41,002.002 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:15:41,032.032 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:15:41,034.034 INFO    ] No update needed
[2026-06-27 22:15:41,035.035 INFO    ] Checking for camera pi updates...
[2026-06-27 22:15:41,056.056 INFO    ] 200
[2026-06-27 22:15:41,057.057 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:15:41,080.080 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:15:41,125.125 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:15:41,127.127 INFO    ] No camera update needed
[2026-06-27 22:15:41,128.128 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:15:41,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:15:41,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:15:41,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:15:43,175.175 INFO    ] ================================================
[2026-06-27 22:15:43,191.191 INFO    ] Launching Daemon at Sat Jun 27 22:15:43 IST 2026
[2026-06-27 22:15:43,203.203 INFO    ] ================================================
[2026-06-27 22:15:43,590.590 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:15:43
[2026-06-27 22:15:43,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:15:44,048.048 INFO    ] Initializing speech engine...
[2026-06-27 22:15:44,053.053 INFO    ] 2026-06-27 22:15:44
[2026-06-27 22:15:44,278.278 INFO    ] 2026-06-27 22:15:44
[2026-06-27 22:15:44,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:15:44,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:15:44,517.517 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:15:44,655.655 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:15:44,691.691 INFO    ] time= 27/06/2026 22:15:44
[2026-06-27 22:15:44,739.739 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:15:44,765.765 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:15:44,840.840 INFO    ] No existing commands found in stream
[2026-06-27 22:15:49,850.850 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:15:49,853.853 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-27 22:15:52,750.750 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:15:52,751.751 INFO    ] Checking for system updates...
[2026-06-27 22:15:52,772.772 INFO    ] 200
[2026-06-27 22:15:52,773.773 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:15:52,804.804 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:15:52,805.805 INFO    ] No update needed
[2026-06-27 22:15:52,806.806 INFO    ] Checking for camera pi updates...
[2026-06-27 22:15:52,826.826 INFO    ] 200
[2026-06-27 22:15:52,827.827 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:15:52,851.851 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:15:52,895.895 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:15:52,896.896 INFO    ] No camera update needed
[2026-06-27 22:15:52,897.897 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:15:52,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:15:52,901.901 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:15:52,904.904 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:15:54,946.946 INFO    ] ================================================
[2026-06-27 22:15:54,962.962 INFO    ] Launching Daemon at Sat Jun 27 22:15:54 IST 2026
[2026-06-27 22:15:54,973.973 INFO    ] ================================================
[2026-06-27 22:15:55,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:15:55
[2026-06-27 22:15:55,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:15:55,767.767 INFO    ] Initializing speech engine...
[2026-06-27 22:15:55,778.778 INFO    ] 2026-06-27 22:15:55
[2026-06-27 22:15:55,983.983 INFO    ] 2026-06-27 22:15:55
[2026-06-27 22:15:56,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:15:56,270.270 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:15:56,315.315 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:15:56,487.487 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:15:56,490.490 INFO    ] time= 27/06/2026 22:15:56
[2026-06-27 22:15:56,507.507 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:15:56,518.518 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:15:56,640.640 INFO    ] No existing commands found in stream
[2026-06-27 22:16:01,650.650 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:16:01,653.653 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-27 22:16:05,190.190 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:16:05,191.191 INFO    ] Checking for system updates...
[2026-06-27 22:16:05,212.212 INFO    ] 200
[2026-06-27 22:16:05,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:16:05,243.243 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:16:05,245.245 INFO    ] No update needed
[2026-06-27 22:16:05,246.246 INFO    ] Checking for camera pi updates...
[2026-06-27 22:16:05,267.267 INFO    ] 200
[2026-06-27 22:16:05,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:16:05,292.292 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:16:05,334.334 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:16:05,339.339 INFO    ] No camera update needed
[2026-06-27 22:16:05,340.340 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:16:05,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:16:05,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:16:05,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:16:07,387.387 INFO    ] ================================================
[2026-06-27 22:16:07,402.402 INFO    ] Launching Daemon at Sat Jun 27 22:16:07 IST 2026
[2026-06-27 22:16:07,412.412 INFO    ] ================================================
[2026-06-27 22:16:07,777.777 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:16:07
[2026-06-27 22:16:08,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:16:08,237.237 INFO    ] Initializing speech engine...
[2026-06-27 22:16:08,241.241 INFO    ] 2026-06-27 22:16:08
[2026-06-27 22:16:08,448.448 INFO    ] 2026-06-27 22:16:08
[2026-06-27 22:16:08,477.477 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:16:08,742.742 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:16:08,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:16:09,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:16:09,083.083 INFO    ] time= 27/06/2026 22:16:09
[2026-06-27 22:16:09,086.086 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:16:09,090.090 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:16:09,197.197 INFO    ] No existing commands found in stream
[2026-06-27 22:16:14,206.206 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:16:14,209.209 INFO    ] Waiting 1.83 seconds before fallback handling...
[2026-06-27 22:16:16,419.419 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:16:16,420.420 INFO    ] Checking for system updates...
[2026-06-27 22:16:16,440.440 INFO    ] 200
[2026-06-27 22:16:16,442.442 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:16:16,475.475 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:16:16,476.476 INFO    ] No update needed
[2026-06-27 22:16:16,477.477 INFO    ] Checking for camera pi updates...
[2026-06-27 22:16:16,497.497 INFO    ] 200
[2026-06-27 22:16:16,499.499 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:16:16,523.523 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:16:16,671.671 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:16:16,672.672 INFO    ] No camera update needed
[2026-06-27 22:16:16,673.673 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:16:16,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:16:16,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:16:16,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:16:18,722.722 INFO    ] ================================================
[2026-06-27 22:16:18,738.738 INFO    ] Launching Daemon at Sat Jun 27 22:16:18 IST 2026
[2026-06-27 22:16:18,749.749 INFO    ] ================================================
[2026-06-27 22:16:19,138.138 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:16:19
[2026-06-27 22:16:19,477.477 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:16:19,632.632 INFO    ] Initializing speech engine...
[2026-06-27 22:16:19,636.636 INFO    ] 2026-06-27 22:16:19
[2026-06-27 22:16:19,845.845 INFO    ] 2026-06-27 22:16:19
[2026-06-27 22:16:19,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:16:20,061.061 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:16:20,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:16:20,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:16:20,279.279 INFO    ] time= 27/06/2026 22:16:20
[2026-06-27 22:16:20,299.299 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:16:20,301.301 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:16:20,369.369 INFO    ] No existing commands found in stream
[2026-06-27 22:16:25,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:16:25,385.385 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-27 22:16:27,287.287 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 22:16:27,290.290 INFO    ] Checking for system updates...
[2026-06-27 22:16:27,328.328 INFO    ] 200
[2026-06-27 22:16:27,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:16:27,386.386 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:16:27,388.388 INFO    ] No update needed
[2026-06-27 22:16:27,392.392 INFO    ] Checking for camera pi updates...
[2026-06-27 22:16:27,432.432 INFO    ] 200
[2026-06-27 22:16:27,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:16:27,465.465 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:16:27,504.504 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:16:27,506.506 INFO    ] No camera update needed
[2026-06-27 22:16:27,507.507 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:16:27,509.509 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:16:27,512.512 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:16:27,515.515 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:16:29,557.557 INFO    ] ================================================
[2026-06-27 22:16:29,575.575 INFO    ] Launching Daemon at Sat Jun 27 22:16:29 IST 2026
[2026-06-27 22:16:29,586.586 INFO    ] ================================================
[2026-06-27 22:16:29,921.921 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:16:29
[2026-06-27 22:16:30,237.237 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:16:30,369.369 INFO    ] Initializing speech engine...
[2026-06-27 22:16:30,377.377 INFO    ] 2026-06-27 22:16:30
[2026-06-27 22:16:30,597.597 INFO    ] 2026-06-27 22:16:30
[2026-06-27 22:16:30,623.623 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:16:30,810.810 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:16:30,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:16:30,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:16:31,022.022 INFO    ] time= 27/06/2026 22:16:30
[2026-06-27 22:16:31,044.044 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:16:31,050.050 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:16:31,118.118 INFO    ] No existing commands found in stream
[2026-06-27 22:16:36,127.127 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:16:36,130.130 INFO    ] Waiting 0.97 seconds before fallback handling...
[2026-06-27 22:16:37,507.507 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:16:37,509.509 INFO    ] Checking for system updates...
[2026-06-27 22:16:37,529.529 INFO    ] 200
[2026-06-27 22:16:37,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:16:37,563.563 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:16:37,565.565 INFO    ] No update needed
[2026-06-27 22:16:37,566.566 INFO    ] Checking for camera pi updates...
[2026-06-27 22:16:37,587.587 INFO    ] 200
[2026-06-27 22:16:37,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:16:37,613.613 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:16:37,657.657 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:16:37,658.658 INFO    ] No camera update needed
[2026-06-27 22:16:37,660.660 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:16:37,661.661 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:16:37,664.664 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:16:37,667.667 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:16:39,707.707 INFO    ] ================================================
[2026-06-27 22:16:39,722.722 INFO    ] Launching Daemon at Sat Jun 27 22:16:39 IST 2026
[2026-06-27 22:16:39,733.733 INFO    ] ================================================
[2026-06-27 22:16:40,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:16:40
[2026-06-27 22:16:40,447.447 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:16:40,585.585 INFO    ] Initializing speech engine...
[2026-06-27 22:16:40,593.593 INFO    ] 2026-06-27 22:16:40
[2026-06-27 22:16:40,811.811 INFO    ] 2026-06-27 22:16:40
[2026-06-27 22:16:40,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:16:41,013.013 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:16:41,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:16:41,162.162 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:16:41,215.215 INFO    ] time= 27/06/2026 22:16:41
[2026-06-27 22:16:41,257.257 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:16:41,264.264 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:16:41,331.331 INFO    ] No existing commands found in stream
[2026-06-27 22:16:46,346.346 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:16:46,349.349 INFO    ] Waiting 1.01 seconds before fallback handling...
[2026-06-27 22:16:47,834.834 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:16:47,835.835 INFO    ] Checking for system updates...
[2026-06-27 22:16:47,856.856 INFO    ] 200
[2026-06-27 22:16:47,858.858 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:16:47,888.888 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:16:47,890.890 INFO    ] No update needed
[2026-06-27 22:16:47,891.891 INFO    ] Checking for camera pi updates...
[2026-06-27 22:16:47,911.911 INFO    ] 200
[2026-06-27 22:16:47,913.913 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:16:47,936.936 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:16:47,986.986 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:16:47,987.987 INFO    ] No camera update needed
[2026-06-27 22:16:47,989.989 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:16:47,990.990 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:16:47,993.993 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:16:47,996.996 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:16:50,036.036 INFO    ] ================================================
[2026-06-27 22:16:50,052.052 INFO    ] Launching Daemon at Sat Jun 27 22:16:50 IST 2026
[2026-06-27 22:16:50,062.062 INFO    ] ================================================
[2026-06-27 22:16:50,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:16:50
[2026-06-27 22:16:50,745.745 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:16:50,876.876 INFO    ] Initializing speech engine...
[2026-06-27 22:16:50,884.884 INFO    ] 2026-06-27 22:16:50
[2026-06-27 22:16:51,096.096 INFO    ] 2026-06-27 22:16:51
[2026-06-27 22:16:51,125.125 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:16:51,247.247 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:16:51,305.305 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:16:51,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:16:51,511.511 INFO    ] time= 27/06/2026 22:16:51
[2026-06-27 22:16:51,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:16:51,544.544 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:16:51,611.611 INFO    ] No existing commands found in stream
[2026-06-27 22:16:56,620.620 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:16:56,623.623 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-27 22:17:00,709.709 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:17:00,710.710 INFO    ] Checking for system updates...
[2026-06-27 22:17:00,731.731 INFO    ] 200
[2026-06-27 22:17:00,732.732 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:17:00,762.762 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:17:00,764.764 INFO    ] No update needed
[2026-06-27 22:17:00,765.765 INFO    ] Checking for camera pi updates...
[2026-06-27 22:17:00,785.785 INFO    ] 200
[2026-06-27 22:17:00,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:17:00,810.810 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:17:00,856.856 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:17:00,857.857 INFO    ] No camera update needed
[2026-06-27 22:17:00,858.858 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:17:00,859.859 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:17:00,862.862 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:17:00,865.865 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:17:02,897.897 INFO    ] ================================================
[2026-06-27 22:17:02,912.912 INFO    ] Launching Daemon at Sat Jun 27 22:17:02 IST 2026
[2026-06-27 22:17:02,923.923 INFO    ] ================================================
[2026-06-27 22:17:03,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:17:03
[2026-06-27 22:17:03,596.596 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:17:03,761.761 INFO    ] Initializing speech engine...
[2026-06-27 22:17:03,765.765 INFO    ] 2026-06-27 22:17:03
[2026-06-27 22:17:03,970.970 INFO    ] 2026-06-27 22:17:03
[2026-06-27 22:17:04,002.002 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:17:04,135.135 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:17:04,189.189 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:17:04,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:17:04,399.399 INFO    ] time= 27/06/2026 22:17:04
[2026-06-27 22:17:04,421.421 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:17:04,427.427 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:17:04,495.495 INFO    ] No existing commands found in stream
[2026-06-27 22:17:09,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:17:09,512.512 INFO    ] Waiting 3.47 seconds before fallback handling...
[2026-06-27 22:17:13,415.415 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 22:17:13,416.416 INFO    ] Checking for system updates...
[2026-06-27 22:17:13,437.437 INFO    ] 200
[2026-06-27 22:17:13,439.439 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:17:13,469.469 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:17:13,470.470 INFO    ] No update needed
[2026-06-27 22:17:13,471.471 INFO    ] Checking for camera pi updates...
[2026-06-27 22:17:13,500.500 INFO    ] 200
[2026-06-27 22:17:13,501.501 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:17:13,526.526 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:17:13,574.574 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:17:13,576.576 INFO    ] No camera update needed
[2026-06-27 22:17:13,577.577 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:17:13,578.578 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:17:13,581.581 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:17:13,584.584 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:17:15,624.624 INFO    ] ================================================
[2026-06-27 22:17:15,639.639 INFO    ] Launching Daemon at Sat Jun 27 22:17:15 IST 2026
[2026-06-27 22:17:15,649.649 INFO    ] ================================================
[2026-06-27 22:17:15,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:17:15
[2026-06-27 22:17:16,313.313 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:17:16,449.449 INFO    ] Initializing speech engine...
[2026-06-27 22:17:16,458.458 INFO    ] 2026-06-27 22:17:16
[2026-06-27 22:17:16,679.679 INFO    ] 2026-06-27 22:17:16
[2026-06-27 22:17:16,709.709 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:17:16,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:17:16,913.913 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:17:17,044.044 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:17:17,090.090 INFO    ] time= 27/06/2026 22:17:17
[2026-06-27 22:17:17,112.112 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:17:17,130.130 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:17:17,225.225 INFO    ] No existing commands found in stream
[2026-06-27 22:17:22,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:17:22,237.237 INFO    ] Waiting 1.84 seconds before fallback handling...
[2026-06-27 22:17:24,496.496 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 22:17:24,498.498 INFO    ] Checking for system updates...
[2026-06-27 22:17:24,519.519 INFO    ] 200
[2026-06-27 22:17:24,521.521 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:17:24,553.553 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:17:24,554.554 INFO    ] No update needed
[2026-06-27 22:17:24,556.556 INFO    ] Checking for camera pi updates...
[2026-06-27 22:17:24,575.575 INFO    ] 200
[2026-06-27 22:17:24,576.576 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:17:24,599.599 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:17:24,644.644 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:17:24,646.646 INFO    ] No camera update needed
[2026-06-27 22:17:24,647.647 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:17:24,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:17:24,651.651 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:17:24,654.654 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:17:26,692.692 INFO    ] ================================================
[2026-06-27 22:17:26,707.707 INFO    ] Launching Daemon at Sat Jun 27 22:17:26 IST 2026
[2026-06-27 22:17:26,717.717 INFO    ] ================================================
[2026-06-27 22:17:27,086.086 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:17:27
[2026-06-27 22:17:27,419.419 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:17:27,571.571 INFO    ] Initializing speech engine...
[2026-06-27 22:17:27,575.575 INFO    ] 2026-06-27 22:17:27
[2026-06-27 22:17:27,782.782 INFO    ] 2026-06-27 22:17:27
[2026-06-27 22:17:27,811.811 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:17:27,996.996 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:17:27,998.998 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:17:28,117.117 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:17:28,119.119 INFO    ] time= 27/06/2026 22:17:28
[2026-06-27 22:17:28,120.120 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:17:28,150.150 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:17:28,241.241 INFO    ] No existing commands found in stream
[2026-06-27 22:17:33,252.252 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:17:33,254.254 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-27 22:17:34,399.399 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:17:34,401.401 INFO    ] Checking for system updates...
[2026-06-27 22:17:34,422.422 INFO    ] 200
[2026-06-27 22:17:34,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:17:34,455.455 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:17:34,456.456 INFO    ] No update needed
[2026-06-27 22:17:34,457.457 INFO    ] Checking for camera pi updates...
[2026-06-27 22:17:34,477.477 INFO    ] 200
[2026-06-27 22:17:34,479.479 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:17:34,502.502 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:17:34,556.556 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:17:34,557.557 INFO    ] No camera update needed
[2026-06-27 22:17:34,559.559 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:17:34,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:17:34,564.564 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:17:34,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:17:36,605.605 INFO    ] ================================================
[2026-06-27 22:17:36,620.620 INFO    ] Launching Daemon at Sat Jun 27 22:17:36 IST 2026
[2026-06-27 22:17:36,630.630 INFO    ] ================================================
[2026-06-27 22:17:37,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:17:36
[2026-06-27 22:17:37,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:17:37,463.463 INFO    ] Initializing speech engine...
[2026-06-27 22:17:37,468.468 INFO    ] 2026-06-27 22:17:37
[2026-06-27 22:17:37,677.677 INFO    ] 2026-06-27 22:17:37
[2026-06-27 22:17:37,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:17:37,890.890 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:17:37,900.900 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:17:38,026.026 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:17:38,076.076 INFO    ] time= 27/06/2026 22:17:38
[2026-06-27 22:17:38,121.121 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:17:38,126.126 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:17:38,198.198 INFO    ] No existing commands found in stream
[2026-06-27 22:17:43,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:17:43,209.209 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-27 22:17:46,837.837 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:17:46,839.839 INFO    ] Checking for system updates...
[2026-06-27 22:17:46,860.860 INFO    ] 200
[2026-06-27 22:17:46,862.862 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:17:46,895.895 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:17:46,896.896 INFO    ] No update needed
[2026-06-27 22:17:46,897.897 INFO    ] Checking for camera pi updates...
[2026-06-27 22:17:46,917.917 INFO    ] 200
[2026-06-27 22:17:46,918.918 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:17:46,941.941 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:17:46,981.981 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:17:46,983.983 INFO    ] No camera update needed
[2026-06-27 22:17:46,984.984 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:17:46,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:17:46,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:17:46,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:17:49,031.031 INFO    ] ================================================
[2026-06-27 22:17:49,046.046 INFO    ] Launching Daemon at Sat Jun 27 22:17:49 IST 2026
[2026-06-27 22:17:49,057.057 INFO    ] ================================================
[2026-06-27 22:17:49,389.389 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:17:49
[2026-06-27 22:17:49,707.707 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:17:49,840.840 INFO    ] Initializing speech engine...
[2026-06-27 22:17:49,853.853 INFO    ] 2026-06-27 22:17:49
[2026-06-27 22:17:50,060.060 INFO    ] 2026-06-27 22:17:50
[2026-06-27 22:17:50,090.090 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:17:50,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:17:50,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:17:50,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:17:50,472.472 INFO    ] time= 27/06/2026 22:17:50
[2026-06-27 22:17:50,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:17:50,506.506 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:17:50,578.578 INFO    ] No existing commands found in stream
[2026-06-27 22:17:55,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:17:55,595.595 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-27 22:17:58,094.094 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:17:58,096.096 INFO    ] Checking for system updates...
[2026-06-27 22:17:58,117.117 INFO    ] 200
[2026-06-27 22:17:58,118.118 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:17:58,152.152 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:17:58,154.154 INFO    ] No update needed
[2026-06-27 22:17:58,156.156 INFO    ] Checking for camera pi updates...
[2026-06-27 22:17:58,175.175 INFO    ] 200
[2026-06-27 22:17:58,176.176 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:17:58,200.200 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:17:58,242.242 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:17:58,244.244 INFO    ] No camera update needed
[2026-06-27 22:17:58,245.245 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:17:58,247.247 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:17:58,250.250 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:17:58,252.252 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:18:00,292.292 INFO    ] ================================================
[2026-06-27 22:18:00,307.307 INFO    ] Launching Daemon at Sat Jun 27 22:18:00 IST 2026
[2026-06-27 22:18:00,318.318 INFO    ] ================================================
[2026-06-27 22:18:00,653.653 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:18:00
[2026-06-27 22:18:00,970.970 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:18:01,106.106 INFO    ] Initializing speech engine...
[2026-06-27 22:18:01,113.113 INFO    ] 2026-06-27 22:18:01
[2026-06-27 22:18:01,320.320 INFO    ] 2026-06-27 22:18:01
[2026-06-27 22:18:01,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:18:01,542.542 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:18:01,582.582 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:18:01,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:18:01,825.825 INFO    ] time= 27/06/2026 22:18:01
[2026-06-27 22:18:01,886.886 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:18:01,920.920 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:18:02,021.021 INFO    ] No existing commands found in stream
[2026-06-27 22:18:07,034.034 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:18:07,037.037 INFO    ] Waiting 1.03 seconds before fallback handling...
[2026-06-27 22:18:08,492.492 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 22:18:08,494.494 INFO    ] Checking for system updates...
[2026-06-27 22:18:08,517.517 INFO    ] 200
[2026-06-27 22:18:08,518.518 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:18:08,564.564 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:18:08,566.566 INFO    ] No update needed
[2026-06-27 22:18:08,567.567 INFO    ] Checking for camera pi updates...
[2026-06-27 22:18:08,587.587 INFO    ] 200
[2026-06-27 22:18:08,589.589 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:18:08,613.613 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:18:08,659.659 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:18:08,660.660 INFO    ] No camera update needed
[2026-06-27 22:18:08,661.661 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:18:08,662.662 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:18:08,666.666 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:18:08,668.668 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:18:10,707.707 INFO    ] ================================================
[2026-06-27 22:18:10,722.722 INFO    ] Launching Daemon at Sat Jun 27 22:18:10 IST 2026
[2026-06-27 22:18:10,733.733 INFO    ] ================================================
[2026-06-27 22:18:11,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:18:11
[2026-06-27 22:18:11,418.418 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:18:11,561.561 INFO    ] Initializing speech engine...
[2026-06-27 22:18:11,565.565 INFO    ] 2026-06-27 22:18:11
[2026-06-27 22:18:11,770.770 INFO    ] 2026-06-27 22:18:11
[2026-06-27 22:18:11,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:18:11,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:18:11,992.992 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:18:12,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:18:12,179.179 INFO    ] time= 27/06/2026 22:18:12
[2026-06-27 22:18:12,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:18:12,217.217 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:18:12,284.284 INFO    ] No existing commands found in stream
[2026-06-27 22:18:17,292.292 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:18:17,295.295 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-27 22:18:17,800.800 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:18:17,801.801 INFO    ] Checking for system updates...
[2026-06-27 22:18:17,822.822 INFO    ] 200
[2026-06-27 22:18:17,823.823 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:18:17,855.855 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:18:17,856.856 INFO    ] No update needed
[2026-06-27 22:18:17,858.858 INFO    ] Checking for camera pi updates...
[2026-06-27 22:18:17,877.877 INFO    ] 200
[2026-06-27 22:18:17,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:18:17,904.904 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:18:17,932.932 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:18:17,933.933 INFO    ] No camera update needed
[2026-06-27 22:18:17,935.935 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:18:17,936.936 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:18:17,939.939 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:18:17,941.941 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:18:19,979.979 INFO    ] ================================================
[2026-06-27 22:18:20,995.995 INFO    ] Launching Daemon at Sat Jun 27 22:18:19 IST 2026
[2026-06-27 22:18:20,005.005 INFO    ] ================================================
[2026-06-27 22:18:20,340.340 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:18:20
[2026-06-27 22:18:20,659.659 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:18:20,803.803 INFO    ] Initializing speech engine...
[2026-06-27 22:18:20,808.808 INFO    ] 2026-06-27 22:18:20
[2026-06-27 22:18:21,014.014 INFO    ] 2026-06-27 22:18:20
[2026-06-27 22:18:21,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:18:21,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:18:21,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:18:21,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:18:21,454.454 INFO    ] time= 27/06/2026 22:18:21
[2026-06-27 22:18:21,460.460 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:18:21,461.461 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:18:21,529.529 INFO    ] No existing commands found in stream
[2026-06-27 22:18:26,538.538 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:18:26,540.540 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-27 22:18:30,932.932 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 22:18:30,933.933 INFO    ] Checking for system updates...
[2026-06-27 22:18:30,954.954 INFO    ] 200
[2026-06-27 22:18:30,956.956 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:18:30,987.987 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:18:30,989.989 INFO    ] No update needed
[2026-06-27 22:18:30,990.990 INFO    ] Checking for camera pi updates...
[2026-06-27 22:18:31,009.009 INFO    ] 200
[2026-06-27 22:18:31,011.011 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:18:31,035.035 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:18:31,176.176 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:18:31,177.177 INFO    ] No camera update needed
[2026-06-27 22:18:31,179.179 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:18:31,180.180 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:18:31,183.183 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:18:31,186.186 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:18:33,219.219 INFO    ] ================================================
[2026-06-27 22:18:33,235.235 INFO    ] Launching Daemon at Sat Jun 27 22:18:33 IST 2026
[2026-06-27 22:18:33,246.246 INFO    ] ================================================
[2026-06-27 22:18:33,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:18:33
[2026-06-27 22:18:33,950.950 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:18:34,105.105 INFO    ] Initializing speech engine...
[2026-06-27 22:18:34,111.111 INFO    ] 2026-06-27 22:18:34
[2026-06-27 22:18:34,321.321 INFO    ] 2026-06-27 22:18:34
[2026-06-27 22:18:34,351.351 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:18:34,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:18:34,539.539 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:18:34,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:18:34,751.751 INFO    ] time= 27/06/2026 22:18:34
[2026-06-27 22:18:34,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:18:34,783.783 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:18:34,850.850 INFO    ] No existing commands found in stream
[2026-06-27 22:18:39,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:18:39,868.868 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-27 22:18:40,728.728 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:18:40,729.729 INFO    ] Checking for system updates...
[2026-06-27 22:18:40,752.752 INFO    ] 200
[2026-06-27 22:18:40,753.753 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:18:40,786.786 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:18:40,787.787 INFO    ] No update needed
[2026-06-27 22:18:40,788.788 INFO    ] Checking for camera pi updates...
[2026-06-27 22:18:40,809.809 INFO    ] 200
[2026-06-27 22:18:40,810.810 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:18:40,833.833 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:18:40,887.887 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:18:40,888.888 INFO    ] No camera update needed
[2026-06-27 22:18:40,890.890 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:18:40,891.891 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:18:40,894.894 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:18:40,897.897 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:18:42,935.935 INFO    ] ================================================
[2026-06-27 22:18:42,951.951 INFO    ] Launching Daemon at Sat Jun 27 22:18:42 IST 2026
[2026-06-27 22:18:42,962.962 INFO    ] ================================================
[2026-06-27 22:18:43,348.348 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:18:43
[2026-06-27 22:18:43,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:18:43,806.806 INFO    ] Initializing speech engine...
[2026-06-27 22:18:43,814.814 INFO    ] 2026-06-27 22:18:43
[2026-06-27 22:18:44,025.025 INFO    ] 2026-06-27 22:18:44
[2026-06-27 22:18:44,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:18:44,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:18:44,246.246 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:18:44,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:18:44,424.424 INFO    ] time= 27/06/2026 22:18:44
[2026-06-27 22:18:44,466.466 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:18:44,473.473 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:18:44,539.539 INFO    ] No existing commands found in stream
[2026-06-27 22:18:49,553.553 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:18:49,556.556 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-27 22:18:51,479.479 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 22:18:51,480.480 INFO    ] Checking for system updates...
[2026-06-27 22:18:51,502.502 INFO    ] 200
[2026-06-27 22:18:51,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:18:51,535.535 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:18:51,536.536 INFO    ] No update needed
[2026-06-27 22:18:51,538.538 INFO    ] Checking for camera pi updates...
[2026-06-27 22:18:51,558.558 INFO    ] 200
[2026-06-27 22:18:51,560.560 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:18:51,583.583 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:18:51,629.629 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:18:51,630.630 INFO    ] No camera update needed
[2026-06-27 22:18:51,632.632 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:18:51,633.633 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:18:51,636.636 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:18:51,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:18:53,682.682 INFO    ] ================================================
[2026-06-27 22:18:53,697.697 INFO    ] Launching Daemon at Sat Jun 27 22:18:53 IST 2026
[2026-06-27 22:18:53,707.707 INFO    ] ================================================
[2026-06-27 22:18:54,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:18:54
[2026-06-27 22:18:54,358.358 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:18:54,489.489 INFO    ] Initializing speech engine...
[2026-06-27 22:18:54,492.492 INFO    ] 2026-06-27 22:18:54
[2026-06-27 22:18:54,710.710 INFO    ] 2026-06-27 22:18:54
[2026-06-27 22:18:54,739.739 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:18:54,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:18:54,951.951 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:18:55,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:18:55,131.131 INFO    ] time= 27/06/2026 22:18:55
[2026-06-27 22:18:55,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:18:55,159.159 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:18:55,227.227 INFO    ] No existing commands found in stream
[2026-06-27 22:19:00,236.236 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:19:00,238.238 INFO    ] Waiting 0.24 seconds before fallback handling...
[2026-06-27 22:19:00,902.902 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:19:00,903.903 INFO    ] Checking for system updates...
[2026-06-27 22:19:00,925.925 INFO    ] 200
[2026-06-27 22:19:00,926.926 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:19:00,962.962 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:19:00,964.964 INFO    ] No update needed
[2026-06-27 22:19:00,965.965 INFO    ] Checking for camera pi updates...
[2026-06-27 22:19:00,985.985 INFO    ] 200
[2026-06-27 22:19:00,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:19:01,011.011 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:19:01,055.055 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:19:01,057.057 INFO    ] No camera update needed
[2026-06-27 22:19:01,058.058 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:19:01,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:19:01,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:19:01,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:19:03,091.091 INFO    ] ================================================
[2026-06-27 22:19:03,100.100 INFO    ] Launching Daemon at Sat Jun 27 22:19:03 IST 2026
[2026-06-27 22:19:03,105.105 INFO    ] ================================================
[2026-06-27 22:19:03,456.456 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:19:03
[2026-06-27 22:19:03,771.771 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:19:03,901.901 INFO    ] Initializing speech engine...
[2026-06-27 22:19:03,915.915 INFO    ] 2026-06-27 22:19:03
[2026-06-27 22:19:04,122.122 INFO    ] 2026-06-27 22:19:04
[2026-06-27 22:19:04,151.151 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:19:04,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:19:04,341.341 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:19:04,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:19:04,544.544 INFO    ] time= 27/06/2026 22:19:04
[2026-06-27 22:19:04,574.574 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:19:04,580.580 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:19:04,647.647 INFO    ] No existing commands found in stream
[2026-06-27 22:19:09,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:19:09,679.679 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-27 22:19:13,012.012 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 22:19:13,014.014 INFO    ] Checking for system updates...
[2026-06-27 22:19:13,047.047 INFO    ] 200
[2026-06-27 22:19:13,049.049 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:19:13,082.082 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:19:13,084.084 INFO    ] No update needed
[2026-06-27 22:19:13,085.085 INFO    ] Checking for camera pi updates...
[2026-06-27 22:19:13,106.106 INFO    ] 200
[2026-06-27 22:19:13,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:19:13,132.132 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:19:13,181.181 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:19:13,182.182 INFO    ] No camera update needed
[2026-06-27 22:19:13,183.183 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:19:13,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:19:13,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:19:13,190.190 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:19:15,220.220 INFO    ] ================================================
[2026-06-27 22:19:15,229.229 INFO    ] Launching Daemon at Sat Jun 27 22:19:15 IST 2026
[2026-06-27 22:19:15,235.235 INFO    ] ================================================
[2026-06-27 22:19:15,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:19:15
[2026-06-27 22:19:15,896.896 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:19:16,027.027 INFO    ] Initializing speech engine...
[2026-06-27 22:19:16,030.030 INFO    ] 2026-06-27 22:19:16
[2026-06-27 22:19:16,225.225 INFO    ] 2026-06-27 22:19:16
[2026-06-27 22:19:16,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:19:16,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:19:16,498.498 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:19:16,644.644 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:19:16,700.700 INFO    ] time= 27/06/2026 22:19:16
[2026-06-27 22:19:16,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:19:16,754.754 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:19:16,830.830 INFO    ] No existing commands found in stream
[2026-06-27 22:19:21,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:19:21,843.843 INFO    ] Waiting 2.60 seconds before fallback handling...
[2026-06-27 22:19:24,901.901 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 22:19:24,902.902 INFO    ] Checking for system updates...
[2026-06-27 22:19:24,923.923 INFO    ] 200
[2026-06-27 22:19:24,925.925 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:19:24,958.958 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:19:24,960.960 INFO    ] No update needed
[2026-06-27 22:19:24,961.961 INFO    ] Checking for camera pi updates...
[2026-06-27 22:19:24,980.980 INFO    ] 200
[2026-06-27 22:19:24,981.981 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:19:25,006.006 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:19:25,051.051 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:19:25,052.052 INFO    ] No camera update needed
[2026-06-27 22:19:25,054.054 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:19:25,055.055 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:19:25,058.058 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:19:25,061.061 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:19:27,099.099 INFO    ] ================================================
[2026-06-27 22:19:27,114.114 INFO    ] Launching Daemon at Sat Jun 27 22:19:27 IST 2026
[2026-06-27 22:19:27,125.125 INFO    ] ================================================
[2026-06-27 22:19:27,460.460 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:19:27
[2026-06-27 22:19:27,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:19:27,918.918 INFO    ] Initializing speech engine...
[2026-06-27 22:19:27,931.931 INFO    ] 2026-06-27 22:19:27
[2026-06-27 22:19:28,152.152 INFO    ] 2026-06-27 22:19:28
[2026-06-27 22:19:28,181.181 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:19:28,319.319 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:19:28,387.387 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:19:28,535.535 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:19:28,600.600 INFO    ] time= 27/06/2026 22:19:28
[2026-06-27 22:19:28,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:19:28,639.639 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:19:28,715.715 INFO    ] No existing commands found in stream
[2026-06-27 22:19:33,724.724 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:19:33,727.727 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-27 22:19:36,841.841 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 22:19:36,843.843 INFO    ] Checking for system updates...
[2026-06-27 22:19:36,865.865 INFO    ] 200
[2026-06-27 22:19:36,867.867 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:19:36,900.900 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:19:36,901.901 INFO    ] No update needed
[2026-06-27 22:19:36,903.903 INFO    ] Checking for camera pi updates...
[2026-06-27 22:19:36,922.922 INFO    ] 200
[2026-06-27 22:19:36,924.924 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:19:36,949.949 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:19:36,990.990 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:19:36,992.992 INFO    ] No camera update needed
[2026-06-27 22:19:36,993.993 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:19:36,994.994 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:19:36,997.997 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:19:37,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:19:39,038.038 INFO    ] ================================================
[2026-06-27 22:19:39,055.055 INFO    ] Launching Daemon at Sat Jun 27 22:19:39 IST 2026
[2026-06-27 22:19:39,066.066 INFO    ] ================================================
[2026-06-27 22:19:39,434.434 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:19:39
[2026-06-27 22:19:39,774.774 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:19:39,925.925 INFO    ] Initializing speech engine...
[2026-06-27 22:19:39,931.931 INFO    ] 2026-06-27 22:19:39
[2026-06-27 22:19:40,137.137 INFO    ] 2026-06-27 22:19:40
[2026-06-27 22:19:40,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:19:40,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:19:40,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:19:40,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:19:40,579.579 INFO    ] time= 27/06/2026 22:19:40
[2026-06-27 22:19:40,586.586 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:19:40,588.588 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:19:40,661.661 INFO    ] No existing commands found in stream
[2026-06-27 22:19:45,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:19:45,690.690 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-27 22:19:46,947.947 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 22:19:46,948.948 INFO    ] Checking for system updates...
[2026-06-27 22:19:46,971.971 INFO    ] 200
[2026-06-27 22:19:46,972.972 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:19:47,005.005 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:19:47,007.007 INFO    ] No update needed
[2026-06-27 22:19:47,008.008 INFO    ] Checking for camera pi updates...
[2026-06-27 22:19:47,030.030 INFO    ] 200
[2026-06-27 22:19:47,031.031 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:19:47,056.056 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:19:47,103.103 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:19:47,105.105 INFO    ] No camera update needed
[2026-06-27 22:19:47,107.107 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:19:47,108.108 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:19:47,111.111 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:19:47,114.114 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:19:49,153.153 INFO    ] ================================================
[2026-06-27 22:19:49,169.169 INFO    ] Launching Daemon at Sat Jun 27 22:19:49 IST 2026
[2026-06-27 22:19:49,179.179 INFO    ] ================================================
[2026-06-27 22:19:49,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:19:49
[2026-06-27 22:19:49,873.873 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:19:50,025.025 INFO    ] Initializing speech engine...
[2026-06-27 22:19:50,030.030 INFO    ] 2026-06-27 22:19:50
[2026-06-27 22:19:50,246.246 INFO    ] 2026-06-27 22:19:50
[2026-06-27 22:19:50,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:19:50,411.411 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:19:50,454.454 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:19:50,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:19:50,701.701 INFO    ] time= 27/06/2026 22:19:50
[2026-06-27 22:19:50,726.726 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:19:50,733.733 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:19:50,806.806 INFO    ] No existing commands found in stream
[2026-06-27 22:19:55,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:19:55,818.818 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-27 22:19:59,233.233 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 22:19:59,235.235 INFO    ] Checking for system updates...
[2026-06-27 22:19:59,257.257 INFO    ] 200
[2026-06-27 22:19:59,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:19:59,291.291 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:19:59,292.292 INFO    ] No update needed
[2026-06-27 22:19:59,294.294 INFO    ] Checking for camera pi updates...
[2026-06-27 22:19:59,315.315 INFO    ] 200
[2026-06-27 22:19:59,316.316 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:19:59,340.340 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:19:59,392.392 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:19:59,393.393 INFO    ] No camera update needed
[2026-06-27 22:19:59,395.395 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:19:59,396.396 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:19:59,399.399 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:19:59,401.401 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:20:01,439.439 INFO    ] ================================================
[2026-06-27 22:20:01,455.455 INFO    ] Launching Daemon at Sat Jun 27 22:20:01 IST 2026
[2026-06-27 22:20:01,466.466 INFO    ] ================================================
[2026-06-27 22:20:01,805.805 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:20:01
[2026-06-27 22:20:02,347.347 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:20:02,625.625 INFO    ] Initializing speech engine...
[2026-06-27 22:20:02,628.628 INFO    ] 2026-06-27 22:20:02
[2026-06-27 22:20:02,883.883 INFO    ] 2026-06-27 22:20:02
[2026-06-27 22:20:02,920.920 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:20:03,134.134 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:20:03,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:20:03,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:20:03,348.348 INFO    ] time= 27/06/2026 22:20:03
[2026-06-27 22:20:03,391.391 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:20:03,411.411 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:20:03,486.486 INFO    ] No existing commands found in stream
[2026-06-27 22:20:08,495.495 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:20:08,498.498 INFO    ] Waiting 0.01 seconds before fallback handling...
[2026-06-27 22:20:09,123.123 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 22:20:09,125.125 INFO    ] Checking for system updates...
[2026-06-27 22:20:09,146.146 INFO    ] 200
[2026-06-27 22:20:09,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:20:09,178.178 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:20:09,179.179 INFO    ] No update needed
[2026-06-27 22:20:09,180.180 INFO    ] Checking for camera pi updates...
[2026-06-27 22:20:09,202.202 INFO    ] 200
[2026-06-27 22:20:09,204.204 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:20:09,230.230 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:20:09,274.274 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:20:09,275.275 INFO    ] No camera update needed
[2026-06-27 22:20:09,276.276 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:20:09,277.277 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:20:09,280.280 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:20:09,283.283 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:20:11,316.316 INFO    ] ================================================
[2026-06-27 22:20:11,331.331 INFO    ] Launching Daemon at Sat Jun 27 22:20:11 IST 2026
[2026-06-27 22:20:11,342.342 INFO    ] ================================================
[2026-06-27 22:20:11,674.674 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:20:11
[2026-06-27 22:20:11,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:20:12,125.125 INFO    ] Initializing speech engine...
[2026-06-27 22:20:12,133.133 INFO    ] 2026-06-27 22:20:12
[2026-06-27 22:20:12,339.339 INFO    ] 2026-06-27 22:20:12
[2026-06-27 22:20:12,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:20:12,489.489 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:20:12,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:20:12,685.685 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:20:12,748.748 INFO    ] time= 27/06/2026 22:20:12
[2026-06-27 22:20:12,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:20:12,785.785 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:20:12,852.852 INFO    ] No existing commands found in stream
[2026-06-27 22:20:17,861.861 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:20:17,864.864 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-27 22:20:22,244.244 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 22:20:22,245.245 INFO    ] Checking for system updates...
[2026-06-27 22:20:22,267.267 INFO    ] 200
[2026-06-27 22:20:22,268.268 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:20:22,299.299 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:20:22,301.301 INFO    ] No update needed
[2026-06-27 22:20:22,303.303 INFO    ] Checking for camera pi updates...
[2026-06-27 22:20:22,323.323 INFO    ] 200
[2026-06-27 22:20:22,325.325 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:20:22,350.350 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:20:22,398.398 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:20:22,400.400 INFO    ] No camera update needed
[2026-06-27 22:20:22,401.401 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:20:22,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:20:22,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:20:22,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:20:24,448.448 INFO    ] ================================================
[2026-06-27 22:20:24,463.463 INFO    ] Launching Daemon at Sat Jun 27 22:20:24 IST 2026
[2026-06-27 22:20:24,473.473 INFO    ] ================================================
[2026-06-27 22:20:24,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:20:24
[2026-06-27 22:20:25,133.133 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:20:25,268.268 INFO    ] Initializing speech engine...
[2026-06-27 22:20:25,276.276 INFO    ] 2026-06-27 22:20:25
[2026-06-27 22:20:25,490.490 INFO    ] 2026-06-27 22:20:25
[2026-06-27 22:20:25,519.519 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:20:25,653.653 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:20:25,706.706 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:20:25,840.840 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:20:25,893.893 INFO    ] time= 27/06/2026 22:20:25
[2026-06-27 22:20:25,923.923 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:20:25,939.939 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:20:26,011.011 INFO    ] No existing commands found in stream
[2026-06-27 22:20:31,016.016 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:20:31,019.019 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-27 22:20:31,892.892 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 22:20:31,894.894 INFO    ] Checking for system updates...
[2026-06-27 22:20:31,914.914 INFO    ] 200
[2026-06-27 22:20:31,916.916 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:20:31,951.951 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:20:31,953.953 INFO    ] No update needed
[2026-06-27 22:20:31,954.954 INFO    ] Checking for camera pi updates...
[2026-06-27 22:20:31,975.975 INFO    ] 200
[2026-06-27 22:20:31,977.977 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:20:32,000.000 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:20:32,126.126 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:20:32,128.128 INFO    ] No camera update needed
[2026-06-27 22:20:32,129.129 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:20:32,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:20:32,135.135 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:20:32,138.138 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:20:34,170.170 INFO    ] ================================================
[2026-06-27 22:20:34,186.186 INFO    ] Launching Daemon at Sat Jun 27 22:20:34 IST 2026
[2026-06-27 22:20:34,196.196 INFO    ] ================================================
[2026-06-27 22:20:34,524.524 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:20:34
[2026-06-27 22:20:34,846.846 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:20:34,991.991 INFO    ] Initializing speech engine...
[2026-06-27 22:20:34,996.996 INFO    ] 2026-06-27 22:20:34
[2026-06-27 22:20:35,201.201 INFO    ] 2026-06-27 22:20:35
[2026-06-27 22:20:35,229.229 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:20:35,414.414 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:20:35,423.423 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:20:35,548.548 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:20:35,605.605 INFO    ] time= 27/06/2026 22:20:35
[2026-06-27 22:20:35,643.643 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:20:35,645.645 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:20:35,715.715 INFO    ] No existing commands found in stream
[2026-06-27 22:20:40,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:20:40,728.728 INFO    ] Waiting 1.25 seconds before fallback handling...
[2026-06-27 22:20:42,426.426 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 22:20:42,427.427 INFO    ] Checking for system updates...
[2026-06-27 22:20:42,448.448 INFO    ] 200
[2026-06-27 22:20:42,449.449 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:20:42,484.484 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:20:42,485.485 INFO    ] No update needed
[2026-06-27 22:20:42,486.486 INFO    ] Checking for camera pi updates...
[2026-06-27 22:20:42,506.506 INFO    ] 200
[2026-06-27 22:20:42,507.507 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:20:42,530.530 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:20:42,581.581 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:20:42,582.582 INFO    ] No camera update needed
[2026-06-27 22:20:42,583.583 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:20:42,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:20:42,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:20:42,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:20:44,629.629 INFO    ] ================================================
[2026-06-27 22:20:44,644.644 INFO    ] Launching Daemon at Sat Jun 27 22:20:44 IST 2026
[2026-06-27 22:20:44,655.655 INFO    ] ================================================
[2026-06-27 22:20:45,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:20:45
[2026-06-27 22:20:45,348.348 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:20:45,498.498 INFO    ] Initializing speech engine...
[2026-06-27 22:20:45,504.504 INFO    ] 2026-06-27 22:20:45
[2026-06-27 22:20:45,712.712 INFO    ] 2026-06-27 22:20:45
[2026-06-27 22:20:45,741.741 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:20:45,924.924 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:20:45,928.928 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:20:46,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:20:46,122.122 INFO    ] time= 27/06/2026 22:20:46
[2026-06-27 22:20:46,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:20:46,156.156 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:20:46,227.227 INFO    ] No existing commands found in stream
[2026-06-27 22:20:51,242.242 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:20:51,246.246 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-27 22:20:53,807.807 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:20:53,809.809 INFO    ] Checking for system updates...
[2026-06-27 22:20:53,830.830 INFO    ] 200
[2026-06-27 22:20:53,831.831 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:20:53,864.864 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:20:53,866.866 INFO    ] No update needed
[2026-06-27 22:20:53,867.867 INFO    ] Checking for camera pi updates...
[2026-06-27 22:20:53,891.891 INFO    ] 200
[2026-06-27 22:20:53,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:20:53,918.918 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:20:53,967.967 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:20:53,969.969 INFO    ] No camera update needed
[2026-06-27 22:20:53,970.970 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:20:53,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:20:53,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:20:53,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:20:56,018.018 INFO    ] ================================================
[2026-06-27 22:20:56,034.034 INFO    ] Launching Daemon at Sat Jun 27 22:20:56 IST 2026
[2026-06-27 22:20:56,044.044 INFO    ] ================================================
[2026-06-27 22:20:56,392.392 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:20:56
[2026-06-27 22:20:56,704.704 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:20:56,841.841 INFO    ] Initializing speech engine...
[2026-06-27 22:20:56,851.851 INFO    ] 2026-06-27 22:20:56
[2026-06-27 22:20:57,055.055 INFO    ] 2026-06-27 22:20:57
[2026-06-27 22:20:57,083.083 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:20:57,267.267 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:20:57,277.277 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:20:57,421.421 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:20:57,474.474 INFO    ] time= 27/06/2026 22:20:57
[2026-06-27 22:20:57,496.496 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:20:57,502.502 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:20:57,569.569 INFO    ] No existing commands found in stream
[2026-06-27 22:21:02,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:21:02,576.576 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-27 22:21:06,732.732 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 22:21:06,734.734 INFO    ] Checking for system updates...
[2026-06-27 22:21:06,755.755 INFO    ] 200
[2026-06-27 22:21:06,756.756 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:21:06,786.786 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:21:06,788.788 INFO    ] No update needed
[2026-06-27 22:21:06,789.789 INFO    ] Checking for camera pi updates...
[2026-06-27 22:21:06,810.810 INFO    ] 200
[2026-06-27 22:21:06,811.811 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:21:06,836.836 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:21:06,889.889 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:21:06,891.891 INFO    ] No camera update needed
[2026-06-27 22:21:06,892.892 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:21:06,893.893 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:21:06,896.896 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:21:06,899.899 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:21:08,940.940 INFO    ] ================================================
[2026-06-27 22:21:08,955.955 INFO    ] Launching Daemon at Sat Jun 27 22:21:08 IST 2026
[2026-06-27 22:21:08,966.966 INFO    ] ================================================
[2026-06-27 22:21:09,289.289 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:21:09
[2026-06-27 22:21:09,601.601 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:21:09,738.738 INFO    ] Initializing speech engine...
[2026-06-27 22:21:09,751.751 INFO    ] 2026-06-27 22:21:09
[2026-06-27 22:21:09,970.970 INFO    ] 2026-06-27 22:21:09
[2026-06-27 22:21:10,000.000 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:21:10,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:21:10,209.209 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:21:10,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:21:10,403.403 INFO    ] time= 27/06/2026 22:21:10
[2026-06-27 22:21:10,443.443 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:21:10,445.445 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:21:10,517.517 INFO    ] No existing commands found in stream
[2026-06-27 22:21:15,531.531 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:21:15,534.534 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-27 22:21:17,521.521 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:21:17,523.523 INFO    ] Checking for system updates...
[2026-06-27 22:21:17,544.544 INFO    ] 200
[2026-06-27 22:21:17,545.545 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:21:17,579.579 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:21:17,580.580 INFO    ] No update needed
[2026-06-27 22:21:17,581.581 INFO    ] Checking for camera pi updates...
[2026-06-27 22:21:17,604.604 INFO    ] 200
[2026-06-27 22:21:17,606.606 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:21:17,631.631 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:21:17,673.673 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:21:17,674.674 INFO    ] No camera update needed
[2026-06-27 22:21:17,676.676 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:21:17,677.677 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:21:17,682.682 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:21:17,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:21:19,725.725 INFO    ] ================================================
[2026-06-27 22:21:19,741.741 INFO    ] Launching Daemon at Sat Jun 27 22:21:19 IST 2026
[2026-06-27 22:21:19,751.751 INFO    ] ================================================
[2026-06-27 22:21:20,116.116 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:21:20
[2026-06-27 22:21:20,435.435 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:21:20,579.579 INFO    ] Initializing speech engine...
[2026-06-27 22:21:20,583.583 INFO    ] 2026-06-27 22:21:20
[2026-06-27 22:21:20,789.789 INFO    ] 2026-06-27 22:21:20
[2026-06-27 22:21:20,816.816 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:21:20,999.999 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:21:21,009.009 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:21:21,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:21:21,197.197 INFO    ] time= 27/06/2026 22:21:21
[2026-06-27 22:21:21,229.229 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:21:21,235.235 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:21:21,302.302 INFO    ] No existing commands found in stream
[2026-06-27 22:21:26,316.316 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:21:26,319.319 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-27 22:21:27,822.822 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:21:27,824.824 INFO    ] Checking for system updates...
[2026-06-27 22:21:27,845.845 INFO    ] 200
[2026-06-27 22:21:27,846.846 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:21:27,877.877 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:21:27,878.878 INFO    ] No update needed
[2026-06-27 22:21:27,880.880 INFO    ] Checking for camera pi updates...
[2026-06-27 22:21:27,901.901 INFO    ] 200
[2026-06-27 22:21:27,902.902 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:21:27,930.930 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:21:27,980.980 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:21:27,981.981 INFO    ] No camera update needed
[2026-06-27 22:21:27,982.982 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:21:27,984.984 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:21:27,987.987 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:21:27,990.990 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:21:30,029.029 INFO    ] ================================================
[2026-06-27 22:21:30,044.044 INFO    ] Launching Daemon at Sat Jun 27 22:21:30 IST 2026
[2026-06-27 22:21:30,055.055 INFO    ] ================================================
[2026-06-27 22:21:30,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:21:30
[2026-06-27 22:21:30,753.753 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:21:30,900.900 INFO    ] Initializing speech engine...
[2026-06-27 22:21:30,910.910 INFO    ] 2026-06-27 22:21:30
[2026-06-27 22:21:31,124.124 INFO    ] 2026-06-27 22:21:31
[2026-06-27 22:21:31,155.155 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:21:31,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:21:31,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:21:31,484.484 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:21:31,552.552 INFO    ] time= 27/06/2026 22:21:31
[2026-06-27 22:21:31,577.577 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:21:31,583.583 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:21:31,651.651 INFO    ] No existing commands found in stream
[2026-06-27 22:21:36,660.660 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:21:36,664.664 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-27 22:21:37,491.491 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:21:37,492.492 INFO    ] Checking for system updates...
[2026-06-27 22:21:37,515.515 INFO    ] 200
[2026-06-27 22:21:37,516.516 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:21:37,551.551 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:21:37,552.552 INFO    ] No update needed
[2026-06-27 22:21:37,554.554 INFO    ] Checking for camera pi updates...
[2026-06-27 22:21:37,574.574 INFO    ] 200
[2026-06-27 22:21:37,575.575 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:21:37,600.600 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:21:37,646.646 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:21:37,647.647 INFO    ] No camera update needed
[2026-06-27 22:21:37,649.649 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:21:37,650.650 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:21:37,654.654 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:21:37,657.657 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:21:39,695.695 INFO    ] ================================================
[2026-06-27 22:21:39,710.710 INFO    ] Launching Daemon at Sat Jun 27 22:21:39 IST 2026
[2026-06-27 22:21:39,720.720 INFO    ] ================================================
[2026-06-27 22:21:40,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:21:40
[2026-06-27 22:21:40,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:21:40,492.492 INFO    ] Initializing speech engine...
[2026-06-27 22:21:40,497.497 INFO    ] 2026-06-27 22:21:40
[2026-06-27 22:21:40,712.712 INFO    ] 2026-06-27 22:21:40
[2026-06-27 22:21:40,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:21:40,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:21:40,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:21:41,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:21:41,133.133 INFO    ] time= 27/06/2026 22:21:41
[2026-06-27 22:21:41,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:21:41,160.160 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:21:41,227.227 INFO    ] No existing commands found in stream
[2026-06-27 22:21:46,241.241 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:21:46,244.244 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-27 22:21:50,392.392 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 22:21:50,394.394 INFO    ] Checking for system updates...
[2026-06-27 22:21:50,416.416 INFO    ] 200
[2026-06-27 22:21:50,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:21:50,448.448 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:21:50,449.449 INFO    ] No update needed
[2026-06-27 22:21:50,450.450 INFO    ] Checking for camera pi updates...
[2026-06-27 22:21:50,470.470 INFO    ] 200
[2026-06-27 22:21:50,471.471 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:21:50,497.497 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:21:50,553.553 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:21:50,555.555 INFO    ] No camera update needed
[2026-06-27 22:21:50,556.556 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:21:50,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:21:50,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:21:50,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:21:52,606.606 INFO    ] ================================================
[2026-06-27 22:21:52,622.622 INFO    ] Launching Daemon at Sat Jun 27 22:21:52 IST 2026
[2026-06-27 22:21:52,633.633 INFO    ] ================================================
[2026-06-27 22:21:52,994.994 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:21:52
[2026-06-27 22:21:53,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:21:53,480.480 INFO    ] Initializing speech engine...
[2026-06-27 22:21:53,486.486 INFO    ] 2026-06-27 22:21:53
[2026-06-27 22:21:53,692.692 INFO    ] 2026-06-27 22:21:53
[2026-06-27 22:21:53,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:21:53,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:21:53,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:21:54,060.060 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:21:54,114.114 INFO    ] time= 27/06/2026 22:21:54
[2026-06-27 22:21:54,135.135 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:21:54,141.141 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:21:54,208.208 INFO    ] No existing commands found in stream
[2026-06-27 22:21:59,222.222 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:21:59,226.226 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-27 22:22:02,963.963 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 22:22:02,965.965 INFO    ] Checking for system updates...
[2026-06-27 22:22:02,991.991 INFO    ] 200
[2026-06-27 22:22:02,994.994 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:22:03,026.026 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:22:03,027.027 INFO    ] No update needed
[2026-06-27 22:22:03,029.029 INFO    ] Checking for camera pi updates...
[2026-06-27 22:22:03,049.049 INFO    ] 200
[2026-06-27 22:22:03,051.051 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:22:03,074.074 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:22:03,102.102 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:22:03,104.104 INFO    ] No camera update needed
[2026-06-27 22:22:03,105.105 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:22:03,106.106 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:22:03,109.109 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:22:03,112.112 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:22:05,151.151 INFO    ] ================================================
[2026-06-27 22:22:05,167.167 INFO    ] Launching Daemon at Sat Jun 27 22:22:05 IST 2026
[2026-06-27 22:22:05,178.178 INFO    ] ================================================
[2026-06-27 22:22:05,534.534 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:22:05
[2026-06-27 22:22:05,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:22:05,996.996 INFO    ] Initializing speech engine...
[2026-06-27 22:22:06,001.001 INFO    ] 2026-06-27 22:22:05
[2026-06-27 22:22:06,220.220 INFO    ] 2026-06-27 22:22:06
[2026-06-27 22:22:06,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:22:06,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:22:06,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:22:06,656.656 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:22:06,663.663 INFO    ] time= 27/06/2026 22:22:06
[2026-06-27 22:22:06,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:22:06,666.666 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:22:06,780.780 INFO    ] No existing commands found in stream
[2026-06-27 22:22:11,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:22:11,793.793 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-27 22:22:13,913.913 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 22:22:13,915.915 INFO    ] Checking for system updates...
[2026-06-27 22:22:13,937.937 INFO    ] 200
[2026-06-27 22:22:13,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:22:13,968.968 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:22:13,970.970 INFO    ] No update needed
[2026-06-27 22:22:13,971.971 INFO    ] Checking for camera pi updates...
[2026-06-27 22:22:13,994.994 INFO    ] 200
[2026-06-27 22:22:13,995.995 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:22:14,019.019 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:22:14,070.070 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:22:14,071.071 INFO    ] No camera update needed
[2026-06-27 22:22:14,073.073 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:22:14,074.074 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:22:14,077.077 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:22:14,080.080 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:22:16,120.120 INFO    ] ================================================
[2026-06-27 22:22:16,136.136 INFO    ] Launching Daemon at Sat Jun 27 22:22:16 IST 2026
[2026-06-27 22:22:16,147.147 INFO    ] ================================================
[2026-06-27 22:22:16,501.501 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:22:16
[2026-06-27 22:22:16,813.813 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:22:16,956.956 INFO    ] Initializing speech engine...
[2026-06-27 22:22:16,962.962 INFO    ] 2026-06-27 22:22:16
[2026-06-27 22:22:17,168.168 INFO    ] 2026-06-27 22:22:17
[2026-06-27 22:22:17,197.197 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:22:17,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:22:17,393.393 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:22:17,525.525 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:22:17,593.593 INFO    ] time= 27/06/2026 22:22:17
[2026-06-27 22:22:17,617.617 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:22:17,623.623 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:22:17,690.690 INFO    ] No existing commands found in stream
[2026-06-27 22:22:22,699.699 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:22:22,702.702 INFO    ] Waiting 2.69 seconds before fallback handling...
[2026-06-27 22:22:25,809.809 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 22:22:25,811.811 INFO    ] Checking for system updates...
[2026-06-27 22:22:25,832.832 INFO    ] 200
[2026-06-27 22:22:25,834.834 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:22:25,867.867 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:22:25,868.868 INFO    ] No update needed
[2026-06-27 22:22:25,870.870 INFO    ] Checking for camera pi updates...
[2026-06-27 22:22:25,890.890 INFO    ] 200
[2026-06-27 22:22:25,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:22:25,918.918 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:22:25,966.966 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:22:25,967.967 INFO    ] No camera update needed
[2026-06-27 22:22:25,969.969 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:22:25,970.970 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:22:25,973.973 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:22:25,976.976 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:22:28,017.017 INFO    ] ================================================
[2026-06-27 22:22:28,032.032 INFO    ] Launching Daemon at Sat Jun 27 22:22:28 IST 2026
[2026-06-27 22:22:28,044.044 INFO    ] ================================================
[2026-06-27 22:22:28,416.416 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:22:28
[2026-06-27 22:22:28,759.759 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:22:28,912.912 INFO    ] Initializing speech engine...
[2026-06-27 22:22:28,918.918 INFO    ] 2026-06-27 22:22:28
[2026-06-27 22:22:29,131.131 INFO    ] 2026-06-27 22:22:29
[2026-06-27 22:22:29,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:22:29,350.350 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:22:29,360.360 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:22:29,554.554 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:22:29,600.600 INFO    ] time= 27/06/2026 22:22:29
[2026-06-27 22:22:29,656.656 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:22:29,660.660 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:22:29,722.722 INFO    ] No existing commands found in stream
[2026-06-27 22:22:34,732.732 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:22:34,736.736 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-27 22:22:37,262.262 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:22:37,264.264 INFO    ] Checking for system updates...
[2026-06-27 22:22:37,285.285 INFO    ] 200
[2026-06-27 22:22:37,286.286 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:22:37,319.319 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:22:37,321.321 INFO    ] No update needed
[2026-06-27 22:22:37,322.322 INFO    ] Checking for camera pi updates...
[2026-06-27 22:22:37,345.345 INFO    ] 200
[2026-06-27 22:22:37,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:22:37,370.370 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:22:37,513.513 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:22:37,515.515 INFO    ] No camera update needed
[2026-06-27 22:22:37,516.516 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:22:37,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:22:37,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:22:37,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:22:39,564.564 INFO    ] ================================================
[2026-06-27 22:22:39,579.579 INFO    ] Launching Daemon at Sat Jun 27 22:22:39 IST 2026
[2026-06-27 22:22:39,590.590 INFO    ] ================================================
[2026-06-27 22:22:39,948.948 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:22:39
[2026-06-27 22:22:40,260.260 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:22:40,403.403 INFO    ] Initializing speech engine...
[2026-06-27 22:22:40,408.408 INFO    ] 2026-06-27 22:22:40
[2026-06-27 22:22:40,612.612 INFO    ] 2026-06-27 22:22:40
[2026-06-27 22:22:40,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:22:40,825.825 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:22:40,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:22:40,965.965 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:22:41,032.032 INFO    ] time= 27/06/2026 22:22:40
[2026-06-27 22:22:41,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:22:41,062.062 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:22:41,131.131 INFO    ] No existing commands found in stream
[2026-06-27 22:22:46,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:22:46,148.148 INFO    ] Waiting 1.65 seconds before fallback handling...
[2026-06-27 22:22:48,196.196 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 22:22:48,197.197 INFO    ] Checking for system updates...
[2026-06-27 22:22:48,218.218 INFO    ] 200
[2026-06-27 22:22:48,219.219 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:22:48,251.251 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:22:48,253.253 INFO    ] No update needed
[2026-06-27 22:22:48,254.254 INFO    ] Checking for camera pi updates...
[2026-06-27 22:22:48,275.275 INFO    ] 200
[2026-06-27 22:22:48,277.277 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:22:48,299.299 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:22:48,343.343 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:22:48,344.344 INFO    ] No camera update needed
[2026-06-27 22:22:48,346.346 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:22:48,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:22:48,350.350 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:22:48,352.352 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:22:50,391.391 INFO    ] ================================================
[2026-06-27 22:22:50,406.406 INFO    ] Launching Daemon at Sat Jun 27 22:22:50 IST 2026
[2026-06-27 22:22:50,417.417 INFO    ] ================================================
[2026-06-27 22:22:50,765.765 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:22:50
[2026-06-27 22:22:51,077.077 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:22:51,212.212 INFO    ] Initializing speech engine...
[2026-06-27 22:22:51,222.222 INFO    ] 2026-06-27 22:22:51
[2026-06-27 22:22:51,425.425 INFO    ] 2026-06-27 22:22:51
[2026-06-27 22:22:51,453.453 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:22:51,638.638 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:22:51,647.647 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:22:51,796.796 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:22:51,845.845 INFO    ] time= 27/06/2026 22:22:51
[2026-06-27 22:22:51,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:22:51,872.872 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:22:51,939.939 INFO    ] No existing commands found in stream
[2026-06-27 22:22:56,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:22:56,950.950 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-27 22:22:57,444.444 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:22:57,445.445 INFO    ] Checking for system updates...
[2026-06-27 22:22:57,466.466 INFO    ] 200
[2026-06-27 22:22:57,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:22:57,501.501 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:22:57,502.502 INFO    ] No update needed
[2026-06-27 22:22:57,504.504 INFO    ] Checking for camera pi updates...
[2026-06-27 22:22:57,526.526 INFO    ] 200
[2026-06-27 22:22:57,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:22:57,552.552 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:22:57,598.598 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:22:57,600.600 INFO    ] No camera update needed
[2026-06-27 22:22:57,601.601 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:22:57,603.603 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:22:57,606.606 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:22:57,609.609 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:22:59,651.651 INFO    ] ================================================
[2026-06-27 22:22:59,667.667 INFO    ] Launching Daemon at Sat Jun 27 22:22:59 IST 2026
[2026-06-27 22:22:59,678.678 INFO    ] ================================================
[2026-06-27 22:23:00,012.012 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:23:00
[2026-06-27 22:23:00,330.330 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:23:00,474.474 INFO    ] Initializing speech engine...
[2026-06-27 22:23:00,480.480 INFO    ] 2026-06-27 22:23:00
[2026-06-27 22:23:00,684.684 INFO    ] 2026-06-27 22:23:00
[2026-06-27 22:23:00,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:23:00,896.896 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:23:00,905.905 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:23:01,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:23:01,113.113 INFO    ] time= 27/06/2026 22:23:01
[2026-06-27 22:23:01,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:23:01,219.219 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:23:01,296.296 INFO    ] No existing commands found in stream
[2026-06-27 22:23:06,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:23:06,309.309 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-27 22:23:10,452.452 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 22:23:10,454.454 INFO    ] Checking for system updates...
[2026-06-27 22:23:10,475.475 INFO    ] 200
[2026-06-27 22:23:10,476.476 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:23:10,510.510 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:23:10,511.511 INFO    ] No update needed
[2026-06-27 22:23:10,512.512 INFO    ] Checking for camera pi updates...
[2026-06-27 22:23:10,532.532 INFO    ] 200
[2026-06-27 22:23:10,533.533 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:23:10,560.560 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:23:10,609.609 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:23:10,610.610 INFO    ] No camera update needed
[2026-06-27 22:23:10,611.611 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:23:10,613.613 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:23:10,616.616 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:23:10,618.618 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:23:12,657.657 INFO    ] ================================================
[2026-06-27 22:23:12,673.673 INFO    ] Launching Daemon at Sat Jun 27 22:23:12 IST 2026
[2026-06-27 22:23:12,684.684 INFO    ] ================================================
[2026-06-27 22:23:13,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:23:13
[2026-06-27 22:23:13,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:23:13,537.537 INFO    ] Initializing speech engine...
[2026-06-27 22:23:13,541.541 INFO    ] 2026-06-27 22:23:13
[2026-06-27 22:23:13,754.754 INFO    ] 2026-06-27 22:23:13
[2026-06-27 22:23:13,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:23:13,968.968 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:23:13,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:23:14,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:23:14,167.167 INFO    ] time= 27/06/2026 22:23:14
[2026-06-27 22:23:14,200.200 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:23:14,206.206 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:23:14,273.273 INFO    ] No existing commands found in stream
[2026-06-27 22:23:19,286.286 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:23:19,290.290 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-27 22:23:21,122.122 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:23:21,124.124 INFO    ] Checking for system updates...
[2026-06-27 22:23:21,145.145 INFO    ] 200
[2026-06-27 22:23:21,147.147 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:23:21,177.177 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:23:21,178.178 INFO    ] No update needed
[2026-06-27 22:23:21,180.180 INFO    ] Checking for camera pi updates...
[2026-06-27 22:23:21,199.199 INFO    ] 200
[2026-06-27 22:23:21,200.200 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:23:21,226.226 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:23:21,271.271 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:23:21,272.272 INFO    ] No camera update needed
[2026-06-27 22:23:21,274.274 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:23:21,275.275 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:23:21,278.278 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:23:21,281.281 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:23:23,313.313 INFO    ] ================================================
[2026-06-27 22:23:23,323.323 INFO    ] Launching Daemon at Sat Jun 27 22:23:23 IST 2026
[2026-06-27 22:23:23,330.330 INFO    ] ================================================
[2026-06-27 22:23:23,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:23:23
[2026-06-27 22:23:23,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:23:24,113.113 INFO    ] Initializing speech engine...
[2026-06-27 22:23:24,116.116 INFO    ] 2026-06-27 22:23:24
[2026-06-27 22:23:24,345.345 INFO    ] 2026-06-27 22:23:24
[2026-06-27 22:23:24,374.374 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:23:24,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:23:24,576.576 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:23:24,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:23:24,790.790 INFO    ] time= 27/06/2026 22:23:24
[2026-06-27 22:23:24,807.807 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:23:24,814.814 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:23:24,881.881 INFO    ] No existing commands found in stream
[2026-06-27 22:23:29,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:23:29,894.894 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-27 22:23:31,077.077 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 22:23:31,079.079 INFO    ] Checking for system updates...
[2026-06-27 22:23:31,102.102 INFO    ] 200
[2026-06-27 22:23:31,104.104 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:23:31,136.136 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:23:31,138.138 INFO    ] No update needed
[2026-06-27 22:23:31,140.140 INFO    ] Checking for camera pi updates...
[2026-06-27 22:23:31,164.164 INFO    ] 200
[2026-06-27 22:23:31,167.167 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:23:31,200.200 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:23:31,245.245 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:23:31,247.247 INFO    ] No camera update needed
[2026-06-27 22:23:31,249.249 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:23:31,251.251 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:23:31,255.255 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:23:31,258.258 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:23:33,300.300 INFO    ] ================================================
[2026-06-27 22:23:33,316.316 INFO    ] Launching Daemon at Sat Jun 27 22:23:33 IST 2026
[2026-06-27 22:23:33,328.328 INFO    ] ================================================
[2026-06-27 22:23:33,667.667 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:23:33
[2026-06-27 22:23:33,985.985 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:23:34,130.130 INFO    ] Initializing speech engine...
[2026-06-27 22:23:34,135.135 INFO    ] 2026-06-27 22:23:34
[2026-06-27 22:23:34,340.340 INFO    ] 2026-06-27 22:23:34
[2026-06-27 22:23:34,368.368 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:23:34,551.551 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:23:34,560.560 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:23:34,705.705 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:23:34,758.758 INFO    ] time= 27/06/2026 22:23:34
[2026-06-27 22:23:34,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:23:34,786.786 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:23:34,853.853 INFO    ] No existing commands found in stream
[2026-06-27 22:23:39,867.867 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:23:39,870.870 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-27 22:23:40,348.348 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 22:23:40,350.350 INFO    ] Checking for system updates...
[2026-06-27 22:23:40,372.372 INFO    ] 200
[2026-06-27 22:23:40,374.374 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:23:40,408.408 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:23:40,409.409 INFO    ] No update needed
[2026-06-27 22:23:40,411.411 INFO    ] Checking for camera pi updates...
[2026-06-27 22:23:40,430.430 INFO    ] 200
[2026-06-27 22:23:40,432.432 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:23:40,457.457 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:23:40,507.507 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:23:40,508.508 INFO    ] No camera update needed
[2026-06-27 22:23:40,509.509 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:23:40,511.511 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:23:40,514.514 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:23:40,517.517 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:23:42,556.556 INFO    ] ================================================
[2026-06-27 22:23:42,573.573 INFO    ] Launching Daemon at Sat Jun 27 22:23:42 IST 2026
[2026-06-27 22:23:42,584.584 INFO    ] ================================================
[2026-06-27 22:23:42,974.974 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:23:42
[2026-06-27 22:23:43,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:23:43,449.449 INFO    ] Initializing speech engine...
[2026-06-27 22:23:43,457.457 INFO    ] 2026-06-27 22:23:43
[2026-06-27 22:23:43,664.664 INFO    ] 2026-06-27 22:23:43
[2026-06-27 22:23:43,692.692 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:23:43,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:23:43,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:23:44,084.084 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:23:44,110.110 INFO    ] time= 27/06/2026 22:23:44
[2026-06-27 22:23:44,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:23:44,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:23:44,184.184 INFO    ] No existing commands found in stream
[2026-06-27 22:23:49,203.203 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:23:49,206.206 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-27 22:23:50,877.877 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:23:50,879.879 INFO    ] Checking for system updates...
[2026-06-27 22:23:50,900.900 INFO    ] 200
[2026-06-27 22:23:50,902.902 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:23:50,932.932 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:23:50,934.934 INFO    ] No update needed
[2026-06-27 22:23:50,936.936 INFO    ] Checking for camera pi updates...
[2026-06-27 22:23:50,957.957 INFO    ] 200
[2026-06-27 22:23:50,958.958 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:23:50,984.984 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:23:51,029.029 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:23:51,030.030 INFO    ] No camera update needed
[2026-06-27 22:23:51,031.031 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:23:51,033.033 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:23:51,036.036 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:23:51,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:23:53,079.079 INFO    ] ================================================
[2026-06-27 22:23:53,094.094 INFO    ] Launching Daemon at Sat Jun 27 22:23:53 IST 2026
[2026-06-27 22:23:53,105.105 INFO    ] ================================================
[2026-06-27 22:23:53,457.457 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:23:53
[2026-06-27 22:23:53,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:23:53,902.902 INFO    ] Initializing speech engine...
[2026-06-27 22:23:53,906.906 INFO    ] 2026-06-27 22:23:53
[2026-06-27 22:23:54,134.134 INFO    ] 2026-06-27 22:23:54
[2026-06-27 22:23:54,164.164 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:23:54,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:23:54,351.351 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:23:54,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:23:54,555.555 INFO    ] time= 27/06/2026 22:23:54
[2026-06-27 22:23:54,579.579 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:23:54,585.585 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:23:54,652.652 INFO    ] No existing commands found in stream
[2026-06-27 22:23:59,661.661 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:23:59,664.664 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-27 22:24:02,477.477 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 22:24:02,478.478 INFO    ] Checking for system updates...
[2026-06-27 22:24:02,500.500 INFO    ] 200
[2026-06-27 22:24:02,501.501 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:24:02,539.539 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:24:02,541.541 INFO    ] No update needed
[2026-06-27 22:24:02,543.543 INFO    ] Checking for camera pi updates...
[2026-06-27 22:24:02,564.564 INFO    ] 200
[2026-06-27 22:24:02,566.566 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:24:02,589.589 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:24:02,620.620 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:24:02,621.621 INFO    ] No camera update needed
[2026-06-27 22:24:02,622.622 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:24:02,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:24:02,627.627 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:24:02,630.630 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:24:04,670.670 INFO    ] ================================================
[2026-06-27 22:24:04,686.686 INFO    ] Launching Daemon at Sat Jun 27 22:24:04 IST 2026
[2026-06-27 22:24:04,697.697 INFO    ] ================================================
[2026-06-27 22:24:05,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:24:05
[2026-06-27 22:24:05,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:24:05,574.574 INFO    ] Initializing speech engine...
[2026-06-27 22:24:05,583.583 INFO    ] 2026-06-27 22:24:05
[2026-06-27 22:24:05,816.816 INFO    ] 2026-06-27 22:24:05
[2026-06-27 22:24:05,848.848 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:24:06,050.050 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:24:06,054.054 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:24:06,196.196 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:24:06,252.252 INFO    ] time= 27/06/2026 22:24:06
[2026-06-27 22:24:06,294.294 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:24:06,305.305 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:24:06,382.382 INFO    ] No existing commands found in stream
[2026-06-27 22:24:11,393.393 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:24:11,396.396 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-27 22:24:14,591.591 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 22:24:14,593.593 INFO    ] Checking for system updates...
[2026-06-27 22:24:14,616.616 INFO    ] 200
[2026-06-27 22:24:14,617.617 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:24:14,648.648 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:24:14,649.649 INFO    ] No update needed
[2026-06-27 22:24:14,651.651 INFO    ] Checking for camera pi updates...
[2026-06-27 22:24:14,671.671 INFO    ] 200
[2026-06-27 22:24:14,672.672 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:24:14,696.696 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:24:14,757.757 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:24:14,758.758 INFO    ] No camera update needed
[2026-06-27 22:24:14,760.760 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:24:14,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:24:14,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:24:14,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:24:16,807.807 INFO    ] ================================================
[2026-06-27 22:24:16,823.823 INFO    ] Launching Daemon at Sat Jun 27 22:24:16 IST 2026
[2026-06-27 22:24:16,834.834 INFO    ] ================================================
[2026-06-27 22:24:17,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:24:17
[2026-06-27 22:24:17,495.495 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:24:17,627.627 INFO    ] Initializing speech engine...
[2026-06-27 22:24:17,635.635 INFO    ] 2026-06-27 22:24:17
[2026-06-27 22:24:17,850.850 INFO    ] 2026-06-27 22:24:17
[2026-06-27 22:24:17,879.879 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:24:18,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:24:18,075.075 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:24:18,259.259 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:24:18,284.284 INFO    ] time= 27/06/2026 22:24:18
[2026-06-27 22:24:18,301.301 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:24:18,306.306 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:24:18,373.373 INFO    ] No existing commands found in stream
[2026-06-27 22:24:23,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:24:23,385.385 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-27 22:24:24,277.277 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:24:24,279.279 INFO    ] Checking for system updates...
[2026-06-27 22:24:24,301.301 INFO    ] 200
[2026-06-27 22:24:24,302.302 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:24:24,335.335 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:24:24,336.336 INFO    ] No update needed
[2026-06-27 22:24:24,338.338 INFO    ] Checking for camera pi updates...
[2026-06-27 22:24:24,358.358 INFO    ] 200
[2026-06-27 22:24:24,360.360 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:24:24,384.384 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:24:24,425.425 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:24:24,427.427 INFO    ] No camera update needed
[2026-06-27 22:24:24,428.428 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:24:24,429.429 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:24:24,432.432 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:24:24,435.435 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:24:26,474.474 INFO    ] ================================================
[2026-06-27 22:24:26,491.491 INFO    ] Launching Daemon at Sat Jun 27 22:24:26 IST 2026
[2026-06-27 22:24:26,503.503 INFO    ] ================================================
[2026-06-27 22:24:26,907.907 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:24:26
[2026-06-27 22:24:27,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:24:27,372.372 INFO    ] Initializing speech engine...
[2026-06-27 22:24:27,376.376 INFO    ] 2026-06-27 22:24:27
[2026-06-27 22:24:27,584.584 INFO    ] 2026-06-27 22:24:27
[2026-06-27 22:24:27,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:24:27,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:24:27,805.805 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:24:27,934.934 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:24:27,988.988 INFO    ] time= 27/06/2026 22:24:27
[2026-06-27 22:24:28,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:24:28,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:24:28,099.099 INFO    ] No existing commands found in stream
[2026-06-27 22:24:33,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:24:33,116.116 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-27 22:24:38,901.901 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 22:24:38,903.903 INFO    ] Checking for system updates...
[2026-06-27 22:24:38,924.924 INFO    ] 200
[2026-06-27 22:24:38,926.926 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:24:38,956.956 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:24:38,958.958 INFO    ] No update needed
[2026-06-27 22:24:38,959.959 INFO    ] Checking for camera pi updates...
[2026-06-27 22:24:38,979.979 INFO    ] 200
[2026-06-27 22:24:38,981.981 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:24:39,008.008 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:24:39,146.146 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:24:39,148.148 INFO    ] No camera update needed
[2026-06-27 22:24:39,149.149 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:24:39,151.151 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:24:39,154.154 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:24:39,157.157 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:24:41,199.199 INFO    ] ================================================
[2026-06-27 22:24:41,216.216 INFO    ] Launching Daemon at Sat Jun 27 22:24:41 IST 2026
[2026-06-27 22:24:41,227.227 INFO    ] ================================================
[2026-06-27 22:24:41,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:24:41
[2026-06-27 22:24:41,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:24:42,059.059 INFO    ] Initializing speech engine...
[2026-06-27 22:24:42,068.068 INFO    ] 2026-06-27 22:24:42
[2026-06-27 22:24:42,253.253 INFO    ] 2026-06-27 22:24:42
[2026-06-27 22:24:42,282.282 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:24:42,488.488 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:24:42,491.491 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:24:42,663.663 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:24:42,712.712 INFO    ] time= 27/06/2026 22:24:42
[2026-06-27 22:24:42,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:24:42,723.723 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:24:42,788.788 INFO    ] No existing commands found in stream
[2026-06-27 22:24:47,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:24:47,802.802 INFO    ] Waiting 1.17 seconds before fallback handling...
[2026-06-27 22:24:49,436.436 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:24:49,438.438 INFO    ] Checking for system updates...
[2026-06-27 22:24:49,458.458 INFO    ] 200
[2026-06-27 22:24:49,460.460 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:24:49,490.490 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:24:49,491.491 INFO    ] No update needed
[2026-06-27 22:24:49,492.492 INFO    ] Checking for camera pi updates...
[2026-06-27 22:24:49,514.514 INFO    ] 200
[2026-06-27 22:24:49,515.515 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:24:49,540.540 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:24:49,585.585 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:24:49,586.586 INFO    ] No camera update needed
[2026-06-27 22:24:49,587.587 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:24:49,589.589 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:24:49,592.592 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:24:49,594.594 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:24:51,634.634 INFO    ] ================================================
[2026-06-27 22:24:51,650.650 INFO    ] Launching Daemon at Sat Jun 27 22:24:51 IST 2026
[2026-06-27 22:24:51,662.662 INFO    ] ================================================
[2026-06-27 22:24:51,988.988 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:24:51
[2026-06-27 22:24:52,301.301 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:24:52,436.436 INFO    ] Initializing speech engine...
[2026-06-27 22:24:52,440.440 INFO    ] 2026-06-27 22:24:52
[2026-06-27 22:24:52,671.671 INFO    ] 2026-06-27 22:24:52
[2026-06-27 22:24:52,703.703 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:24:52,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:24:52,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:24:53,050.050 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:24:53,111.111 INFO    ] time= 27/06/2026 22:24:53
[2026-06-27 22:24:53,157.157 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:24:53,159.159 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:24:53,236.236 INFO    ] No existing commands found in stream
[2026-06-27 22:24:58,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:24:58,249.249 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-27 22:24:59,298.298 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 22:24:59,299.299 INFO    ] Checking for system updates...
[2026-06-27 22:24:59,320.320 INFO    ] 200
[2026-06-27 22:24:59,322.322 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:24:59,352.352 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:24:59,353.353 INFO    ] No update needed
[2026-06-27 22:24:59,355.355 INFO    ] Checking for camera pi updates...
[2026-06-27 22:24:59,374.374 INFO    ] 200
[2026-06-27 22:24:59,376.376 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:24:59,399.399 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:24:59,444.444 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:24:59,445.445 INFO    ] No camera update needed
[2026-06-27 22:24:59,446.446 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:24:59,448.448 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:24:59,451.451 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:24:59,453.453 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:25:01,494.494 INFO    ] ================================================
[2026-06-27 22:25:01,509.509 INFO    ] Launching Daemon at Sat Jun 27 22:25:01 IST 2026
[2026-06-27 22:25:01,521.521 INFO    ] ================================================
[2026-06-27 22:25:02,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:25:02
[2026-06-27 22:25:02,522.522 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:25:02,723.723 INFO    ] Initializing speech engine...
[2026-06-27 22:25:02,729.729 INFO    ] 2026-06-27 22:25:02
[2026-06-27 22:25:02,964.964 INFO    ] 2026-06-27 22:25:02
[2026-06-27 22:25:02,995.995 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:25:03,188.188 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:25:03,198.198 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:25:03,327.327 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:25:03,394.394 INFO    ] time= 27/06/2026 22:25:03
[2026-06-27 22:25:03,423.423 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:25:03,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:25:03,498.498 INFO    ] No existing commands found in stream
[2026-06-27 22:25:08,512.512 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:25:08,516.516 INFO    ] Waiting 2.59 seconds before fallback handling...
[2026-06-27 22:25:11,539.539 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 22:25:11,541.541 INFO    ] Checking for system updates...
[2026-06-27 22:25:11,564.564 INFO    ] 200
[2026-06-27 22:25:11,566.566 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:25:11,600.600 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:25:11,602.602 INFO    ] No update needed
[2026-06-27 22:25:11,603.603 INFO    ] Checking for camera pi updates...
[2026-06-27 22:25:11,627.627 INFO    ] 200
[2026-06-27 22:25:11,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:25:11,655.655 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:25:11,712.712 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:25:11,714.714 INFO    ] No camera update needed
[2026-06-27 22:25:11,715.715 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:25:11,716.716 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:25:11,720.720 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:25:11,723.723 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:25:13,761.761 INFO    ] ================================================
[2026-06-27 22:25:13,777.777 INFO    ] Launching Daemon at Sat Jun 27 22:25:13 IST 2026
[2026-06-27 22:25:13,788.788 INFO    ] ================================================
[2026-06-27 22:25:14,122.122 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:25:14
[2026-06-27 22:25:14,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:25:14,584.584 INFO    ] Initializing speech engine...
[2026-06-27 22:25:14,588.588 INFO    ] 2026-06-27 22:25:14
[2026-06-27 22:25:14,793.793 INFO    ] 2026-06-27 22:25:14
[2026-06-27 22:25:14,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:25:14,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:25:14,977.977 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:25:15,145.145 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:25:15,213.213 INFO    ] time= 27/06/2026 22:25:15
[2026-06-27 22:25:15,237.237 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:25:15,244.244 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:25:15,311.311 INFO    ] No existing commands found in stream
[2026-06-27 22:25:20,325.325 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:25:20,328.328 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-27 22:25:23,002.002 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 22:25:23,003.003 INFO    ] Checking for system updates...
[2026-06-27 22:25:23,024.024 INFO    ] 200
[2026-06-27 22:25:23,026.026 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:25:23,056.056 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:25:23,057.057 INFO    ] No update needed
[2026-06-27 22:25:23,059.059 INFO    ] Checking for camera pi updates...
[2026-06-27 22:25:23,081.081 INFO    ] 200
[2026-06-27 22:25:23,082.082 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:25:23,107.107 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:25:23,151.151 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:25:23,153.153 INFO    ] No camera update needed
[2026-06-27 22:25:23,154.154 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:25:23,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:25:23,158.158 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:25:23,161.161 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:25:25,199.199 INFO    ] ================================================
[2026-06-27 22:25:25,216.216 INFO    ] Launching Daemon at Sat Jun 27 22:25:25 IST 2026
[2026-06-27 22:25:25,226.226 INFO    ] ================================================
[2026-06-27 22:25:25,584.584 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:25:25
[2026-06-27 22:25:25,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:25:26,049.049 INFO    ] Initializing speech engine...
[2026-06-27 22:25:26,056.056 INFO    ] 2026-06-27 22:25:26
[2026-06-27 22:25:26,259.259 INFO    ] 2026-06-27 22:25:26
[2026-06-27 22:25:26,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:25:26,471.471 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:25:26,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:25:26,601.601 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:25:26,666.666 INFO    ] time= 27/06/2026 22:25:26
[2026-06-27 22:25:26,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:25:26,705.705 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:25:26,771.771 INFO    ] No existing commands found in stream
[2026-06-27 22:25:31,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:25:31,790.790 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-27 22:25:35,092.092 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 22:25:35,094.094 INFO    ] Checking for system updates...
[2026-06-27 22:25:35,115.115 INFO    ] 200
[2026-06-27 22:25:35,116.116 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:25:35,150.150 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:25:35,151.151 INFO    ] No update needed
[2026-06-27 22:25:35,152.152 INFO    ] Checking for camera pi updates...
[2026-06-27 22:25:35,172.172 INFO    ] 200
[2026-06-27 22:25:35,173.173 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:25:35,196.196 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:25:35,250.250 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:25:35,251.251 INFO    ] No camera update needed
[2026-06-27 22:25:35,252.252 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:25:35,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:25:35,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:25:35,260.260 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:25:37,300.300 INFO    ] ================================================
[2026-06-27 22:25:37,317.317 INFO    ] Launching Daemon at Sat Jun 27 22:25:37 IST 2026
[2026-06-27 22:25:37,328.328 INFO    ] ================================================
[2026-06-27 22:25:37,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:25:37
[2026-06-27 22:25:38,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:25:38,145.145 INFO    ] Initializing speech engine...
[2026-06-27 22:25:38,158.158 INFO    ] 2026-06-27 22:25:38
[2026-06-27 22:25:38,379.379 INFO    ] 2026-06-27 22:25:38
[2026-06-27 22:25:38,410.410 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:25:38,611.611 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:25:38,622.622 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:25:38,836.836 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:25:38,860.860 INFO    ] time= 27/06/2026 22:25:38
[2026-06-27 22:25:38,865.865 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:25:38,867.867 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:25:38,994.994 INFO    ] No existing commands found in stream
[2026-06-27 22:25:44,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:25:44,007.007 INFO    ] Waiting 2.38 seconds before fallback handling...
[2026-06-27 22:25:46,781.781 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 22:25:46,782.782 INFO    ] Checking for system updates...
[2026-06-27 22:25:46,805.805 INFO    ] 200
[2026-06-27 22:25:46,807.807 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:25:46,840.840 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:25:46,842.842 INFO    ] No update needed
[2026-06-27 22:25:46,843.843 INFO    ] Checking for camera pi updates...
[2026-06-27 22:25:46,864.864 INFO    ] 200
[2026-06-27 22:25:46,865.865 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:25:46,889.889 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:25:46,937.937 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:25:46,938.938 INFO    ] No camera update needed
[2026-06-27 22:25:46,940.940 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:25:46,941.941 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:25:46,944.944 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:25:46,947.947 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:25:48,987.987 INFO    ] ================================================
[2026-06-27 22:25:49,003.003 INFO    ] Launching Daemon at Sat Jun 27 22:25:48 IST 2026
[2026-06-27 22:25:49,014.014 INFO    ] ================================================
[2026-06-27 22:25:49,386.386 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:25:49
[2026-06-27 22:25:49,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:25:49,885.885 INFO    ] Initializing speech engine...
[2026-06-27 22:25:49,890.890 INFO    ] 2026-06-27 22:25:49
[2026-06-27 22:25:50,100.100 INFO    ] 2026-06-27 22:25:50
[2026-06-27 22:25:50,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:25:50,342.342 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:25:50,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:25:50,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:25:50,553.553 INFO    ] time= 27/06/2026 22:25:50
[2026-06-27 22:25:50,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:25:50,560.560 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:25:50,628.628 INFO    ] No existing commands found in stream
[2026-06-27 22:25:55,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:25:55,646.646 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-27 22:25:58,579.579 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:25:58,581.581 INFO    ] Checking for system updates...
[2026-06-27 22:25:58,603.603 INFO    ] 200
[2026-06-27 22:25:58,605.605 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:25:58,641.641 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:25:58,642.642 INFO    ] No update needed
[2026-06-27 22:25:58,644.644 INFO    ] Checking for camera pi updates...
[2026-06-27 22:25:58,665.665 INFO    ] 200
[2026-06-27 22:25:58,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:25:58,690.690 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:25:58,737.737 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:25:58,738.738 INFO    ] No camera update needed
[2026-06-27 22:25:58,739.739 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:25:58,741.741 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:25:58,744.744 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:25:58,747.747 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:26:00,788.788 INFO    ] ================================================
[2026-06-27 22:26:00,803.803 INFO    ] Launching Daemon at Sat Jun 27 22:26:00 IST 2026
[2026-06-27 22:26:00,815.815 INFO    ] ================================================
[2026-06-27 22:26:01,229.229 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:26:01
[2026-06-27 22:26:01,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:26:01,819.819 INFO    ] Initializing speech engine...
[2026-06-27 22:26:01,825.825 INFO    ] 2026-06-27 22:26:01
[2026-06-27 22:26:02,058.058 INFO    ] 2026-06-27 22:26:02
[2026-06-27 22:26:02,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:26:02,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:26:02,300.300 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:26:02,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:26:02,481.481 INFO    ] time= 27/06/2026 22:26:02
[2026-06-27 22:26:02,539.539 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:26:02,562.562 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:26:02,633.633 INFO    ] No existing commands found in stream
[2026-06-27 22:26:07,642.642 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:26:07,645.645 INFO    ] Waiting 0.15 seconds before fallback handling...
[2026-06-27 22:26:08,178.178 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:26:08,180.180 INFO    ] Checking for system updates...
[2026-06-27 22:26:08,200.200 INFO    ] 200
[2026-06-27 22:26:08,202.202 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:26:08,232.232 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:26:08,234.234 INFO    ] No update needed
[2026-06-27 22:26:08,235.235 INFO    ] Checking for camera pi updates...
[2026-06-27 22:26:08,257.257 INFO    ] 200
[2026-06-27 22:26:08,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:26:08,285.285 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:26:08,333.333 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:26:08,335.335 INFO    ] No camera update needed
[2026-06-27 22:26:08,336.336 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:26:08,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:26:08,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:26:08,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:26:10,381.381 INFO    ] ================================================
[2026-06-27 22:26:10,397.397 INFO    ] Launching Daemon at Sat Jun 27 22:26:10 IST 2026
[2026-06-27 22:26:10,408.408 INFO    ] ================================================
[2026-06-27 22:26:10,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:26:10
[2026-06-27 22:26:11,089.089 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:26:11,233.233 INFO    ] Initializing speech engine...
[2026-06-27 22:26:11,238.238 INFO    ] 2026-06-27 22:26:11
[2026-06-27 22:26:11,441.441 INFO    ] 2026-06-27 22:26:11
[2026-06-27 22:26:11,469.469 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:26:11,654.654 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:26:11,664.664 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:26:11,798.798 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:26:11,859.859 INFO    ] time= 27/06/2026 22:26:11
[2026-06-27 22:26:11,883.883 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:26:11,889.889 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:26:11,956.956 INFO    ] No existing commands found in stream
[2026-06-27 22:26:16,970.970 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:26:16,973.973 INFO    ] Waiting 0.44 seconds before fallback handling...
[2026-06-27 22:26:17,842.842 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:26:17,844.844 INFO    ] Checking for system updates...
[2026-06-27 22:26:17,865.865 INFO    ] 200
[2026-06-27 22:26:17,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:26:17,897.897 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:26:17,899.899 INFO    ] No update needed
[2026-06-27 22:26:17,900.900 INFO    ] Checking for camera pi updates...
[2026-06-27 22:26:17,921.921 INFO    ] 200
[2026-06-27 22:26:17,922.922 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:26:17,946.946 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:26:17,982.982 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:26:17,984.984 INFO    ] No camera update needed
[2026-06-27 22:26:17,985.985 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:26:17,986.986 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:26:17,989.989 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:26:17,992.992 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:26:20,032.032 INFO    ] ================================================
[2026-06-27 22:26:20,047.047 INFO    ] Launching Daemon at Sat Jun 27 22:26:20 IST 2026
[2026-06-27 22:26:20,058.058 INFO    ] ================================================
[2026-06-27 22:26:20,450.450 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:26:20
[2026-06-27 22:26:20,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:26:20,949.949 INFO    ] Initializing speech engine...
[2026-06-27 22:26:20,954.954 INFO    ] 2026-06-27 22:26:20
[2026-06-27 22:26:21,160.160 INFO    ] 2026-06-27 22:26:21
[2026-06-27 22:26:21,190.190 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:26:21,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:26:21,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:26:21,509.509 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:26:21,565.565 INFO    ] time= 27/06/2026 22:26:21
[2026-06-27 22:26:21,600.600 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:26:21,614.614 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:26:21,681.681 INFO    ] No existing commands found in stream
[2026-06-27 22:26:26,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:26:26,699.699 INFO    ] Waiting 2.18 seconds before fallback handling...
[2026-06-27 22:26:29,362.362 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:26:29,364.364 INFO    ] Checking for system updates...
[2026-06-27 22:26:29,386.386 INFO    ] 200
[2026-06-27 22:26:29,387.387 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:26:29,418.418 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:26:29,419.419 INFO    ] No update needed
[2026-06-27 22:26:29,421.421 INFO    ] Checking for camera pi updates...
[2026-06-27 22:26:29,442.442 INFO    ] 200
[2026-06-27 22:26:29,443.443 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:26:29,468.468 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:26:29,512.512 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:26:29,513.513 INFO    ] No camera update needed
[2026-06-27 22:26:29,515.515 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:26:29,516.516 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:26:29,519.519 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:26:29,523.523 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:26:31,556.556 INFO    ] ================================================
[2026-06-27 22:26:31,567.567 INFO    ] Launching Daemon at Sat Jun 27 22:26:31 IST 2026
[2026-06-27 22:26:31,574.574 INFO    ] ================================================
[2026-06-27 22:26:31,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:26:31
[2026-06-27 22:26:32,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:26:32,423.423 INFO    ] Initializing speech engine...
[2026-06-27 22:26:32,428.428 INFO    ] 2026-06-27 22:26:32
[2026-06-27 22:26:32,632.632 INFO    ] 2026-06-27 22:26:32
[2026-06-27 22:26:32,659.659 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:26:32,844.844 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:26:32,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:26:32,982.982 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:26:33,049.049 INFO    ] time= 27/06/2026 22:26:32
[2026-06-27 22:26:33,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:26:33,078.078 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:26:33,146.146 INFO    ] No existing commands found in stream
[2026-06-27 22:26:38,155.155 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:26:38,158.158 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-27 22:26:39,321.321 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:26:39,323.323 INFO    ] Checking for system updates...
[2026-06-27 22:26:39,344.344 INFO    ] 200
[2026-06-27 22:26:39,345.345 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:26:39,376.376 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:26:39,378.378 INFO    ] No update needed
[2026-06-27 22:26:39,379.379 INFO    ] Checking for camera pi updates...
[2026-06-27 22:26:39,399.399 INFO    ] 200
[2026-06-27 22:26:39,400.400 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:26:39,424.424 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:26:39,467.467 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:26:39,468.468 INFO    ] No camera update needed
[2026-06-27 22:26:39,469.469 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:26:39,470.470 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:26:39,473.473 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:26:39,476.476 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:26:41,515.515 INFO    ] ================================================
[2026-06-27 22:26:41,531.531 INFO    ] Launching Daemon at Sat Jun 27 22:26:41 IST 2026
[2026-06-27 22:26:41,542.542 INFO    ] ================================================
[2026-06-27 22:26:41,937.937 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:26:41
[2026-06-27 22:26:42,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:26:42,408.408 INFO    ] Initializing speech engine...
[2026-06-27 22:26:42,418.418 INFO    ] 2026-06-27 22:26:42
[2026-06-27 22:26:42,627.627 INFO    ] 2026-06-27 22:26:42
[2026-06-27 22:26:42,655.655 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:26:42,842.842 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:26:42,852.852 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:26:42,987.987 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:26:43,056.056 INFO    ] time= 27/06/2026 22:26:42
[2026-06-27 22:26:43,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:26:43,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:26:43,154.154 INFO    ] No existing commands found in stream
[2026-06-27 22:26:48,163.163 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:26:48,166.166 INFO    ] Waiting 2.09 seconds before fallback handling...
[2026-06-27 22:26:50,696.696 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 22:26:50,698.698 INFO    ] Checking for system updates...
[2026-06-27 22:26:50,719.719 INFO    ] 200
[2026-06-27 22:26:50,721.721 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:26:50,756.756 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:26:50,757.757 INFO    ] No update needed
[2026-06-27 22:26:50,758.758 INFO    ] Checking for camera pi updates...
[2026-06-27 22:26:50,778.778 INFO    ] 200
[2026-06-27 22:26:50,779.779 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:26:50,803.803 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:26:50,943.943 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:26:50,945.945 INFO    ] No camera update needed
[2026-06-27 22:26:50,946.946 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:26:50,947.947 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:26:50,950.950 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:26:50,953.953 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:26:52,991.991 INFO    ] ================================================
[2026-06-27 22:26:53,006.006 INFO    ] Launching Daemon at Sat Jun 27 22:26:53 IST 2026
[2026-06-27 22:26:53,016.016 INFO    ] ================================================
[2026-06-27 22:26:53,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:26:53
[2026-06-27 22:26:53,689.689 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:26:53,821.821 INFO    ] Initializing speech engine...
[2026-06-27 22:26:53,829.829 INFO    ] 2026-06-27 22:26:53
[2026-06-27 22:26:54,042.042 INFO    ] 2026-06-27 22:26:54
[2026-06-27 22:26:54,072.072 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:26:54,257.257 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:26:54,260.260 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:26:54,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:26:54,457.457 INFO    ] time= 27/06/2026 22:26:54
[2026-06-27 22:26:54,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:26:54,492.492 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:26:54,566.566 INFO    ] No existing commands found in stream
[2026-06-27 22:26:59,575.575 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:26:59,577.577 INFO    ] Waiting 0.77 seconds before fallback handling...
[2026-06-27 22:27:01,045.045 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 22:27:01,047.047 INFO    ] Checking for system updates...
[2026-06-27 22:27:01,067.067 INFO    ] 200
[2026-06-27 22:27:01,069.069 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:27:01,099.099 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:27:01,100.100 INFO    ] No update needed
[2026-06-27 22:27:01,102.102 INFO    ] Checking for camera pi updates...
[2026-06-27 22:27:01,121.121 INFO    ] 200
[2026-06-27 22:27:01,122.122 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:27:01,145.145 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:27:01,186.186 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:27:01,187.187 INFO    ] No camera update needed
[2026-06-27 22:27:01,188.188 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:27:01,189.189 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:27:01,192.192 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:27:01,195.195 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:27:03,228.228 INFO    ] ================================================
[2026-06-27 22:27:03,243.243 INFO    ] Launching Daemon at Sat Jun 27 22:27:03 IST 2026
[2026-06-27 22:27:03,254.254 INFO    ] ================================================
[2026-06-27 22:27:03,609.609 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:27:03
[2026-06-27 22:27:03,926.926 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:27:04,071.071 INFO    ] Initializing speech engine...
[2026-06-27 22:27:04,076.076 INFO    ] 2026-06-27 22:27:04
[2026-06-27 22:27:04,280.280 INFO    ] 2026-06-27 22:27:04
[2026-06-27 22:27:04,309.309 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:27:04,438.438 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:27:04,496.496 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:27:04,696.696 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:27:04,724.724 INFO    ] time= 27/06/2026 22:27:04
[2026-06-27 22:27:04,730.730 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:27:04,732.732 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:27:04,799.799 INFO    ] No existing commands found in stream
[2026-06-27 22:27:09,808.808 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:27:09,811.811 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-27 22:27:10,810.810 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 22:27:10,811.811 INFO    ] Checking for system updates...
[2026-06-27 22:27:10,833.833 INFO    ] 200
[2026-06-27 22:27:10,834.834 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:27:10,865.865 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:27:10,867.867 INFO    ] No update needed
[2026-06-27 22:27:10,868.868 INFO    ] Checking for camera pi updates...
[2026-06-27 22:27:10,889.889 INFO    ] 200
[2026-06-27 22:27:10,890.890 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:27:10,915.915 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:27:10,959.959 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:27:10,960.960 INFO    ] No camera update needed
[2026-06-27 22:27:10,961.961 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:27:10,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:27:10,966.966 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:27:10,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:27:13,008.008 INFO    ] ================================================
[2026-06-27 22:27:13,023.023 INFO    ] Launching Daemon at Sat Jun 27 22:27:13 IST 2026
[2026-06-27 22:27:13,034.034 INFO    ] ================================================
[2026-06-27 22:27:13,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:27:13
[2026-06-27 22:27:13,708.708 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:27:13,852.852 INFO    ] Initializing speech engine...
[2026-06-27 22:27:13,858.858 INFO    ] 2026-06-27 22:27:13
[2026-06-27 22:27:14,061.061 INFO    ] 2026-06-27 22:27:14
[2026-06-27 22:27:14,089.089 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:27:14,349.349 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:27:14,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:27:14,567.567 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:27:14,570.570 INFO    ] time= 27/06/2026 22:27:14
[2026-06-27 22:27:14,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:27:14,597.597 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:27:14,695.695 INFO    ] No existing commands found in stream
[2026-06-27 22:27:19,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:27:19,708.708 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-27 22:27:22,432.432 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 22:27:22,433.433 INFO    ] Checking for system updates...
[2026-06-27 22:27:22,455.455 INFO    ] 200
[2026-06-27 22:27:22,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:27:22,487.487 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:27:22,489.489 INFO    ] No update needed
[2026-06-27 22:27:22,490.490 INFO    ] Checking for camera pi updates...
[2026-06-27 22:27:22,509.509 INFO    ] 200
[2026-06-27 22:27:22,511.511 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:27:22,536.536 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:27:22,578.578 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:27:22,579.579 INFO    ] No camera update needed
[2026-06-27 22:27:22,581.581 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:27:22,582.582 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:27:22,585.585 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:27:22,588.588 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:27:24,628.628 INFO    ] ================================================
[2026-06-27 22:27:24,643.643 INFO    ] Launching Daemon at Sat Jun 27 22:27:24 IST 2026
[2026-06-27 22:27:24,654.654 INFO    ] ================================================
[2026-06-27 22:27:25,020.020 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:27:25
[2026-06-27 22:27:25,333.333 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:27:25,470.470 INFO    ] Initializing speech engine...
[2026-06-27 22:27:25,481.481 INFO    ] 2026-06-27 22:27:25
[2026-06-27 22:27:25,684.684 INFO    ] 2026-06-27 22:27:25
[2026-06-27 22:27:25,713.713 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:27:25,900.900 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:27:25,910.910 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:27:26,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:27:26,126.126 INFO    ] time= 27/06/2026 22:27:26
[2026-06-27 22:27:26,131.131 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:27:26,137.137 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:27:26,257.257 INFO    ] No existing commands found in stream
[2026-06-27 22:27:31,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:27:31,269.269 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-27 22:27:31,999.999 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:27:32,001.001 INFO    ] Checking for system updates...
[2026-06-27 22:27:32,024.024 INFO    ] 200
[2026-06-27 22:27:32,026.026 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:27:32,064.064 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:27:32,066.066 INFO    ] No update needed
[2026-06-27 22:27:32,067.067 INFO    ] Checking for camera pi updates...
[2026-06-27 22:27:32,091.091 INFO    ] 200
[2026-06-27 22:27:32,092.092 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:27:32,119.119 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:27:32,151.151 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:27:32,152.152 INFO    ] No camera update needed
[2026-06-27 22:27:32,154.154 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:27:32,155.155 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:27:32,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:27:32,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:27:34,202.202 INFO    ] ================================================
[2026-06-27 22:27:34,218.218 INFO    ] Launching Daemon at Sat Jun 27 22:27:34 IST 2026
[2026-06-27 22:27:34,229.229 INFO    ] ================================================
[2026-06-27 22:27:34,601.601 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:27:34
[2026-06-27 22:27:34,919.919 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:27:35,062.062 INFO    ] Initializing speech engine...
[2026-06-27 22:27:35,067.067 INFO    ] 2026-06-27 22:27:35
[2026-06-27 22:27:35,272.272 INFO    ] 2026-06-27 22:27:35
[2026-06-27 22:27:35,299.299 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:27:35,484.484 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:27:35,492.492 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:27:35,627.627 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:27:35,685.685 INFO    ] time= 27/06/2026 22:27:35
[2026-06-27 22:27:35,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:27:35,718.718 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:27:35,784.784 INFO    ] No existing commands found in stream
[2026-06-27 22:27:40,795.795 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:27:40,798.798 INFO    ] Waiting 3.91 seconds before fallback handling...
[2026-06-27 22:27:45,121.121 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 22:27:45,123.123 INFO    ] Checking for system updates...
[2026-06-27 22:27:45,144.144 INFO    ] 200
[2026-06-27 22:27:45,146.146 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:27:45,180.180 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:27:45,181.181 INFO    ] No update needed
[2026-06-27 22:27:45,183.183 INFO    ] Checking for camera pi updates...
[2026-06-27 22:27:45,204.204 INFO    ] 200
[2026-06-27 22:27:45,206.206 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:27:45,229.229 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:27:45,287.287 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:27:45,288.288 INFO    ] No camera update needed
[2026-06-27 22:27:45,291.291 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:27:45,294.294 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:27:45,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:27:45,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:27:47,341.341 INFO    ] ================================================
[2026-06-27 22:27:47,357.357 INFO    ] Launching Daemon at Sat Jun 27 22:27:47 IST 2026
[2026-06-27 22:27:47,368.368 INFO    ] ================================================
[2026-06-27 22:27:47,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:27:47
[2026-06-27 22:27:48,015.015 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:27:48,149.149 INFO    ] Initializing speech engine...
[2026-06-27 22:27:48,158.158 INFO    ] 2026-06-27 22:27:48
[2026-06-27 22:27:48,383.383 INFO    ] 2026-06-27 22:27:48
[2026-06-27 22:27:48,413.413 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:27:48,547.547 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:27:48,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:27:48,764.764 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:27:48,825.825 INFO    ] time= 27/06/2026 22:27:48
[2026-06-27 22:27:48,860.860 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:27:48,866.866 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:27:48,943.943 INFO    ] No existing commands found in stream
[2026-06-27 22:27:53,952.952 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:27:53,955.955 INFO    ] Waiting 2.14 seconds before fallback handling...
[2026-06-27 22:27:56,504.504 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:27:56,506.506 INFO    ] Checking for system updates...
[2026-06-27 22:27:56,529.529 INFO    ] 200
[2026-06-27 22:27:56,530.530 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:27:56,560.560 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:27:56,562.562 INFO    ] No update needed
[2026-06-27 22:27:56,563.563 INFO    ] Checking for camera pi updates...
[2026-06-27 22:27:56,583.583 INFO    ] 200
[2026-06-27 22:27:56,584.584 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:27:56,607.607 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:27:56,654.654 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:27:56,656.656 INFO    ] No camera update needed
[2026-06-27 22:27:56,657.657 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:27:56,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:27:56,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:27:56,664.664 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:27:58,702.702 INFO    ] ================================================
[2026-06-27 22:27:58,718.718 INFO    ] Launching Daemon at Sat Jun 27 22:27:58 IST 2026
[2026-06-27 22:27:58,730.730 INFO    ] ================================================
[2026-06-27 22:27:59,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:27:59
[2026-06-27 22:27:59,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:27:59,589.589 INFO    ] Initializing speech engine...
[2026-06-27 22:27:59,595.595 INFO    ] 2026-06-27 22:27:59
[2026-06-27 22:27:59,804.804 INFO    ] 2026-06-27 22:27:59
[2026-06-27 22:27:59,833.833 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:28:00,019.019 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:28:00,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:28:00,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:28:00,248.248 INFO    ] time= 27/06/2026 22:28:00
[2026-06-27 22:28:00,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:28:00,256.256 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:28:00,373.373 INFO    ] No existing commands found in stream
[2026-06-27 22:28:05,383.383 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:28:05,387.387 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-27 22:28:09,261.261 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 22:28:09,262.262 INFO    ] Checking for system updates...
[2026-06-27 22:28:09,284.284 INFO    ] 200
[2026-06-27 22:28:09,285.285 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:28:09,318.318 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:28:09,319.319 INFO    ] No update needed
[2026-06-27 22:28:09,321.321 INFO    ] Checking for camera pi updates...
[2026-06-27 22:28:09,341.341 INFO    ] 200
[2026-06-27 22:28:09,342.342 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:28:09,366.366 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:28:09,411.411 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:28:09,413.413 INFO    ] No camera update needed
[2026-06-27 22:28:09,414.414 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:28:09,415.415 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:28:09,419.419 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:28:09,422.422 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:28:11,462.462 INFO    ] ================================================
[2026-06-27 22:28:11,479.479 INFO    ] Launching Daemon at Sat Jun 27 22:28:11 IST 2026
[2026-06-27 22:28:11,496.496 INFO    ] ================================================
[2026-06-27 22:28:11,844.844 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:28:11
[2026-06-27 22:28:12,180.180 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:28:12,335.335 INFO    ] Initializing speech engine...
[2026-06-27 22:28:12,339.339 INFO    ] 2026-06-27 22:28:12
[2026-06-27 22:28:12,545.545 INFO    ] 2026-06-27 22:28:12
[2026-06-27 22:28:12,576.576 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:28:12,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:28:12,775.775 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:28:12,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:28:12,975.975 INFO    ] time= 27/06/2026 22:28:12
[2026-06-27 22:28:12,999.999 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:28:13,005.005 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:28:13,073.073 INFO    ] No existing commands found in stream
[2026-06-27 22:28:18,083.083 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:28:18,086.086 INFO    ] Waiting 3.03 seconds before fallback handling...
[2026-06-27 22:28:21,588.588 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:28:21,590.590 INFO    ] Checking for system updates...
[2026-06-27 22:28:21,611.611 INFO    ] 200
[2026-06-27 22:28:21,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:28:21,643.643 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:28:21,644.644 INFO    ] No update needed
[2026-06-27 22:28:21,646.646 INFO    ] Checking for camera pi updates...
[2026-06-27 22:28:21,666.666 INFO    ] 200
[2026-06-27 22:28:21,667.667 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:28:21,690.690 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:28:21,745.745 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:28:21,746.746 INFO    ] No camera update needed
[2026-06-27 22:28:21,747.747 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:28:21,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:28:21,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:28:21,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:28:23,794.794 INFO    ] ================================================
[2026-06-27 22:28:23,810.810 INFO    ] Launching Daemon at Sat Jun 27 22:28:23 IST 2026
[2026-06-27 22:28:23,822.822 INFO    ] ================================================
[2026-06-27 22:28:24,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:28:24
[2026-06-27 22:28:24,517.517 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:28:24,659.659 INFO    ] Initializing speech engine...
[2026-06-27 22:28:24,666.666 INFO    ] 2026-06-27 22:28:24
[2026-06-27 22:28:24,890.890 INFO    ] 2026-06-27 22:28:24
[2026-06-27 22:28:24,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:28:25,107.107 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:28:25,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:28:25,249.249 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:28:25,310.310 INFO    ] time= 27/06/2026 22:28:25
[2026-06-27 22:28:25,350.350 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:28:25,352.352 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:28:25,423.423 INFO    ] No existing commands found in stream
[2026-06-27 22:28:30,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:28:30,438.438 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-27 22:28:31,756.756 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 22:28:31,757.757 INFO    ] Checking for system updates...
[2026-06-27 22:28:31,778.778 INFO    ] 200
[2026-06-27 22:28:31,780.780 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:28:31,812.812 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:28:31,814.814 INFO    ] No update needed
[2026-06-27 22:28:31,816.816 INFO    ] Checking for camera pi updates...
[2026-06-27 22:28:31,844.844 INFO    ] 200
[2026-06-27 22:28:31,847.847 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:28:31,877.877 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:28:31,912.912 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:28:31,914.914 INFO    ] No camera update needed
[2026-06-27 22:28:31,915.915 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:28:31,917.917 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:28:31,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:28:31,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:28:33,958.958 INFO    ] ================================================
[2026-06-27 22:28:33,974.974 INFO    ] Launching Daemon at Sat Jun 27 22:28:33 IST 2026
[2026-06-27 22:28:33,985.985 INFO    ] ================================================
[2026-06-27 22:28:34,339.339 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:28:34
[2026-06-27 22:28:34,656.656 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:28:34,789.789 INFO    ] Initializing speech engine...
[2026-06-27 22:28:34,797.797 INFO    ] 2026-06-27 22:28:34
[2026-06-27 22:28:35,008.008 INFO    ] 2026-06-27 22:28:34
[2026-06-27 22:28:35,037.037 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:28:35,221.221 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:28:35,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:28:35,447.447 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:28:35,449.449 INFO    ] time= 27/06/2026 22:28:35
[2026-06-27 22:28:35,451.451 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:28:35,453.453 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:28:35,540.540 INFO    ] No existing commands found in stream
[2026-06-27 22:28:40,549.549 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:28:40,552.552 INFO    ] Waiting 0.61 seconds before fallback handling...
[2026-06-27 22:28:41,566.566 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 22:28:41,568.568 INFO    ] Checking for system updates...
[2026-06-27 22:28:41,588.588 INFO    ] 200
[2026-06-27 22:28:41,590.590 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:28:41,620.620 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:28:41,621.621 INFO    ] No update needed
[2026-06-27 22:28:41,623.623 INFO    ] Checking for camera pi updates...
[2026-06-27 22:28:41,642.642 INFO    ] 200
[2026-06-27 22:28:41,644.644 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:28:41,667.667 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:28:41,709.709 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:28:41,711.711 INFO    ] No camera update needed
[2026-06-27 22:28:41,712.712 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:28:41,713.713 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:28:41,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:28:41,719.719 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:28:43,758.758 INFO    ] ================================================
[2026-06-27 22:28:43,774.774 INFO    ] Launching Daemon at Sat Jun 27 22:28:43 IST 2026
[2026-06-27 22:28:43,785.785 INFO    ] ================================================
[2026-06-27 22:28:44,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:28:44
[2026-06-27 22:28:44,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:28:44,602.602 INFO    ] Initializing speech engine...
[2026-06-27 22:28:44,611.611 INFO    ] 2026-06-27 22:28:44
[2026-06-27 22:28:44,817.817 INFO    ] 2026-06-27 22:28:44
[2026-06-27 22:28:44,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:28:45,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:28:45,039.039 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:28:45,215.215 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:28:45,257.257 INFO    ] time= 27/06/2026 22:28:45
[2026-06-27 22:28:45,263.263 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:28:45,264.264 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:28:45,331.331 INFO    ] No existing commands found in stream
[2026-06-27 22:28:50,345.345 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:28:50,348.348 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-27 22:28:54,593.593 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 22:28:54,594.594 INFO    ] Checking for system updates...
[2026-06-27 22:28:54,615.615 INFO    ] 200
[2026-06-27 22:28:54,616.616 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:28:54,647.647 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:28:54,648.648 INFO    ] No update needed
[2026-06-27 22:28:54,650.650 INFO    ] Checking for camera pi updates...
[2026-06-27 22:28:54,669.669 INFO    ] 200
[2026-06-27 22:28:54,670.670 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:28:54,693.693 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:28:54,819.819 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:28:54,821.821 INFO    ] No camera update needed
[2026-06-27 22:28:54,822.822 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:28:54,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:28:54,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:28:54,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:28:56,868.868 INFO    ] ================================================
[2026-06-27 22:28:56,884.884 INFO    ] Launching Daemon at Sat Jun 27 22:28:56 IST 2026
[2026-06-27 22:28:56,895.895 INFO    ] ================================================
[2026-06-27 22:28:57,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:28:57
[2026-06-27 22:28:57,584.584 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:28:57,738.738 INFO    ] Initializing speech engine...
[2026-06-27 22:28:57,744.744 INFO    ] 2026-06-27 22:28:57
[2026-06-27 22:28:57,950.950 INFO    ] 2026-06-27 22:28:57
[2026-06-27 22:28:57,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:28:58,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:28:58,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:28:58,329.329 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:28:58,372.372 INFO    ] time= 27/06/2026 22:28:58
[2026-06-27 22:28:58,396.396 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:28:58,402.402 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:28:58,469.469 INFO    ] No existing commands found in stream
[2026-06-27 22:29:03,484.484 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:29:03,488.488 INFO    ] Waiting 3.96 seconds before fallback handling...
[2026-06-27 22:29:07,841.841 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:29:07,843.843 INFO    ] Checking for system updates...
[2026-06-27 22:29:07,864.864 INFO    ] 200
[2026-06-27 22:29:07,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:29:07,897.897 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:29:07,898.898 INFO    ] No update needed
[2026-06-27 22:29:07,900.900 INFO    ] Checking for camera pi updates...
[2026-06-27 22:29:07,919.919 INFO    ] 200
[2026-06-27 22:29:07,921.921 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:29:07,944.944 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:29:07,986.986 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:29:07,988.988 INFO    ] No camera update needed
[2026-06-27 22:29:07,989.989 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:29:07,991.991 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:29:07,994.994 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:29:07,997.997 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:29:10,038.038 INFO    ] ================================================
[2026-06-27 22:29:10,054.054 INFO    ] Launching Daemon at Sat Jun 27 22:29:10 IST 2026
[2026-06-27 22:29:10,065.065 INFO    ] ================================================
[2026-06-27 22:29:10,429.429 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:29:10
[2026-06-27 22:29:10,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:29:10,893.893 INFO    ] Initializing speech engine...
[2026-06-27 22:29:10,898.898 INFO    ] 2026-06-27 22:29:10
[2026-06-27 22:29:11,107.107 INFO    ] 2026-06-27 22:29:11
[2026-06-27 22:29:11,137.137 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:29:11,322.322 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:29:11,332.332 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:29:11,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:29:11,520.520 INFO    ] time= 27/06/2026 22:29:11
[2026-06-27 22:29:11,552.552 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:29:11,559.559 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:29:11,627.627 INFO    ] No existing commands found in stream
[2026-06-27 22:29:16,636.636 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:29:16,639.639 INFO    ] Waiting 1.27 seconds before fallback handling...
[2026-06-27 22:29:18,318.318 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 22:29:18,319.319 INFO    ] Checking for system updates...
[2026-06-27 22:29:18,340.340 INFO    ] 200
[2026-06-27 22:29:18,341.341 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:29:18,372.372 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:29:18,374.374 INFO    ] No update needed
[2026-06-27 22:29:18,375.375 INFO    ] Checking for camera pi updates...
[2026-06-27 22:29:18,395.395 INFO    ] 200
[2026-06-27 22:29:18,396.396 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:29:18,420.420 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:29:18,472.472 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:29:18,474.474 INFO    ] No camera update needed
[2026-06-27 22:29:18,476.476 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:29:18,477.477 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:29:18,480.480 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:29:18,483.483 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:29:20,522.522 INFO    ] ================================================
[2026-06-27 22:29:20,537.537 INFO    ] Launching Daemon at Sat Jun 27 22:29:20 IST 2026
[2026-06-27 22:29:20,548.548 INFO    ] ================================================
[2026-06-27 22:29:20,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:29:20
[2026-06-27 22:29:21,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:29:21,367.367 INFO    ] Initializing speech engine...
[2026-06-27 22:29:21,375.375 INFO    ] 2026-06-27 22:29:21
[2026-06-27 22:29:21,588.588 INFO    ] 2026-06-27 22:29:21
[2026-06-27 22:29:21,616.616 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:29:21,804.804 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:29:21,813.813 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:29:21,937.937 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:29:22,008.008 INFO    ] time= 27/06/2026 22:29:21
[2026-06-27 22:29:22,035.035 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:29:22,041.041 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:29:22,108.108 INFO    ] No existing commands found in stream
[2026-06-27 22:29:27,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:29:27,120.120 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-27 22:29:30,838.838 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:29:30,839.839 INFO    ] Checking for system updates...
[2026-06-27 22:29:30,860.860 INFO    ] 200
[2026-06-27 22:29:30,861.861 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:29:30,896.896 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:29:30,898.898 INFO    ] No update needed
[2026-06-27 22:29:30,899.899 INFO    ] Checking for camera pi updates...
[2026-06-27 22:29:30,918.918 INFO    ] 200
[2026-06-27 22:29:30,920.920 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:29:30,943.943 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:29:30,991.991 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:29:30,992.992 INFO    ] No camera update needed
[2026-06-27 22:29:30,994.994 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:29:30,995.995 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:29:30,998.998 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:29:31,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:29:33,040.040 INFO    ] ================================================
[2026-06-27 22:29:33,056.056 INFO    ] Launching Daemon at Sat Jun 27 22:29:33 IST 2026
[2026-06-27 22:29:33,067.067 INFO    ] ================================================
[2026-06-27 22:29:33,426.426 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:29:33
[2026-06-27 22:29:33,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:29:33,875.875 INFO    ] Initializing speech engine...
[2026-06-27 22:29:33,885.885 INFO    ] 2026-06-27 22:29:33
[2026-06-27 22:29:34,091.091 INFO    ] 2026-06-27 22:29:34
[2026-06-27 22:29:34,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:29:34,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:29:34,317.317 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:29:34,441.441 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:29:34,497.497 INFO    ] time= 27/06/2026 22:29:34
[2026-06-27 22:29:34,537.537 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:29:34,547.547 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:29:34,640.640 INFO    ] No existing commands found in stream
[2026-06-27 22:29:39,654.654 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:29:39,656.656 INFO    ] Waiting 0.98 seconds before fallback handling...
[2026-06-27 22:29:41,057.057 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:29:41,058.058 INFO    ] Checking for system updates...
[2026-06-27 22:29:41,079.079 INFO    ] 200
[2026-06-27 22:29:41,080.080 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:29:41,111.111 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:29:41,112.112 INFO    ] No update needed
[2026-06-27 22:29:41,113.113 INFO    ] Checking for camera pi updates...
[2026-06-27 22:29:41,136.136 INFO    ] 200
[2026-06-27 22:29:41,137.137 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:29:41,163.163 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:29:41,207.207 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:29:41,213.213 INFO    ] No camera update needed
[2026-06-27 22:29:41,214.214 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:29:41,216.216 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:29:41,219.219 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:29:41,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:29:43,260.260 INFO    ] ================================================
[2026-06-27 22:29:43,276.276 INFO    ] Launching Daemon at Sat Jun 27 22:29:43 IST 2026
[2026-06-27 22:29:43,287.287 INFO    ] ================================================
[2026-06-27 22:29:43,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:29:43
[2026-06-27 22:29:43,949.949 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:29:44,094.094 INFO    ] Initializing speech engine...
[2026-06-27 22:29:44,100.100 INFO    ] 2026-06-27 22:29:44
[2026-06-27 22:29:44,307.307 INFO    ] 2026-06-27 22:29:44
[2026-06-27 22:29:44,338.338 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:29:44,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:29:44,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:29:44,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:29:44,732.732 INFO    ] time= 27/06/2026 22:29:44
[2026-06-27 22:29:44,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:29:44,762.762 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:29:44,829.829 INFO    ] No existing commands found in stream
[2026-06-27 22:29:49,842.842 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:29:49,844.844 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-27 22:29:51,750.750 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 22:29:51,752.752 INFO    ] Checking for system updates...
[2026-06-27 22:29:51,773.773 INFO    ] 200
[2026-06-27 22:29:51,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:29:51,805.805 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:29:51,806.806 INFO    ] No update needed
[2026-06-27 22:29:51,807.807 INFO    ] Checking for camera pi updates...
[2026-06-27 22:29:51,826.826 INFO    ] 200
[2026-06-27 22:29:51,828.828 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:29:51,851.851 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:29:51,892.892 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:29:51,893.893 INFO    ] No camera update needed
[2026-06-27 22:29:51,895.895 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:29:51,896.896 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:29:51,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:29:51,902.902 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:29:53,942.942 INFO    ] ================================================
[2026-06-27 22:29:53,957.957 INFO    ] Launching Daemon at Sat Jun 27 22:29:53 IST 2026
[2026-06-27 22:29:53,968.968 INFO    ] ================================================
[2026-06-27 22:29:54,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:29:54
[2026-06-27 22:29:54,625.625 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:29:54,760.760 INFO    ] Initializing speech engine...
[2026-06-27 22:29:54,765.765 INFO    ] 2026-06-27 22:29:54
[2026-06-27 22:29:54,993.993 INFO    ] 2026-06-27 22:29:54
[2026-06-27 22:29:55,022.022 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:29:55,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:29:55,217.217 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:29:55,358.358 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:29:55,417.417 INFO    ] time= 27/06/2026 22:29:55
[2026-06-27 22:29:55,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:29:55,445.445 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:29:55,512.512 INFO    ] No existing commands found in stream
[2026-06-27 22:30:00,526.526 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:30:00,529.529 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-27 22:30:01,987.987 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:30:01,989.989 INFO    ] Checking for system updates...
[2026-06-27 22:30:02,021.021 INFO    ] 200
[2026-06-27 22:30:02,024.024 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:30:02,075.075 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:30:02,077.077 INFO    ] No update needed
[2026-06-27 22:30:02,080.080 INFO    ] Checking for camera pi updates...
[2026-06-27 22:30:02,123.123 INFO    ] 200
[2026-06-27 22:30:02,125.125 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:30:02,168.168 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:30:02,249.249 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:30:02,251.251 INFO    ] No camera update needed
[2026-06-27 22:30:02,254.254 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:30:02,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:30:02,262.262 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:30:02,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:30:04,301.301 INFO    ] ================================================
[2026-06-27 22:30:04,316.316 INFO    ] Launching Daemon at Sat Jun 27 22:30:04 IST 2026
[2026-06-27 22:30:04,328.328 INFO    ] ================================================
[2026-06-27 22:30:04,678.678 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:30:04
[2026-06-27 22:30:04,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:30:05,147.147 INFO    ] Initializing speech engine...
[2026-06-27 22:30:05,156.156 INFO    ] 2026-06-27 22:30:05
[2026-06-27 22:30:05,363.363 INFO    ] 2026-06-27 22:30:05
[2026-06-27 22:30:05,392.392 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:30:05,534.534 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:30:05,577.577 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:30:05,707.707 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:30:05,754.754 INFO    ] time= 27/06/2026 22:30:05
[2026-06-27 22:30:05,756.756 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:30:05,757.757 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:30:05,810.810 INFO    ] No existing commands found in stream
[2026-06-27 22:30:10,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:30:10,836.836 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-27 22:30:12,247.247 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 22:30:12,249.249 INFO    ] Checking for system updates...
[2026-06-27 22:30:12,270.270 INFO    ] 200
[2026-06-27 22:30:12,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:30:12,304.304 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:30:12,305.305 INFO    ] No update needed
[2026-06-27 22:30:12,307.307 INFO    ] Checking for camera pi updates...
[2026-06-27 22:30:12,326.326 INFO    ] 200
[2026-06-27 22:30:12,328.328 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:30:12,352.352 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:30:12,404.404 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:30:12,405.405 INFO    ] No camera update needed
[2026-06-27 22:30:12,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:30:12,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:30:12,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:30:12,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:30:14,447.447 INFO    ] ================================================
[2026-06-27 22:30:14,461.461 INFO    ] Launching Daemon at Sat Jun 27 22:30:14 IST 2026
[2026-06-27 22:30:14,469.469 INFO    ] ================================================
[2026-06-27 22:30:14,781.781 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:30:14
[2026-06-27 22:30:15,094.094 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:30:15,227.227 INFO    ] Initializing speech engine...
[2026-06-27 22:30:15,234.234 INFO    ] 2026-06-27 22:30:15
[2026-06-27 22:30:15,449.449 INFO    ] 2026-06-27 22:30:15
[2026-06-27 22:30:15,479.479 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:30:15,666.666 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:30:15,677.677 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:30:15,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:30:15,897.897 INFO    ] time= 27/06/2026 22:30:15
[2026-06-27 22:30:15,902.902 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:30:15,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:30:15,972.972 INFO    ] No existing commands found in stream
[2026-06-27 22:30:20,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:30:20,984.984 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-27 22:30:25,197.197 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:30:25,198.198 INFO    ] Checking for system updates...
[2026-06-27 22:30:25,219.219 INFO    ] 200
[2026-06-27 22:30:25,221.221 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:30:25,251.251 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:30:25,253.253 INFO    ] No update needed
[2026-06-27 22:30:25,254.254 INFO    ] Checking for camera pi updates...
[2026-06-27 22:30:25,274.274 INFO    ] 200
[2026-06-27 22:30:25,275.275 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:30:25,300.300 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:30:25,342.342 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:30:25,343.343 INFO    ] No camera update needed
[2026-06-27 22:30:25,345.345 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:30:25,346.346 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:30:25,349.349 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:30:25,351.351 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:30:27,389.389 INFO    ] ================================================
[2026-06-27 22:30:27,405.405 INFO    ] Launching Daemon at Sat Jun 27 22:30:27 IST 2026
[2026-06-27 22:30:27,416.416 INFO    ] ================================================
[2026-06-27 22:30:27,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:30:27
[2026-06-27 22:30:28,131.131 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:30:28,284.284 INFO    ] Initializing speech engine...
[2026-06-27 22:30:28,288.288 INFO    ] 2026-06-27 22:30:28
[2026-06-27 22:30:28,501.501 INFO    ] 2026-06-27 22:30:28
[2026-06-27 22:30:28,530.530 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:30:28,720.720 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:30:28,729.729 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:30:28,872.872 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:30:28,930.930 INFO    ] time= 27/06/2026 22:30:28
[2026-06-27 22:30:28,955.955 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:30:28,961.961 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:30:29,030.030 INFO    ] No existing commands found in stream
[2026-06-27 22:30:34,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:30:34,053.053 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-27 22:30:37,851.851 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:30:37,852.852 INFO    ] Checking for system updates...
[2026-06-27 22:30:37,875.875 INFO    ] 200
[2026-06-27 22:30:37,877.877 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:30:37,910.910 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:30:37,912.912 INFO    ] No update needed
[2026-06-27 22:30:37,913.913 INFO    ] Checking for camera pi updates...
[2026-06-27 22:30:37,934.934 INFO    ] 200
[2026-06-27 22:30:37,935.935 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:30:37,962.962 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:30:38,005.005 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:30:38,006.006 INFO    ] No camera update needed
[2026-06-27 22:30:38,008.008 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:30:38,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:30:38,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:30:38,015.015 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:30:40,054.054 INFO    ] ================================================
[2026-06-27 22:30:40,069.069 INFO    ] Launching Daemon at Sat Jun 27 22:30:40 IST 2026
[2026-06-27 22:30:40,080.080 INFO    ] ================================================
[2026-06-27 22:30:40,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:30:40
[2026-06-27 22:30:40,765.765 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:30:40,910.910 INFO    ] Initializing speech engine...
[2026-06-27 22:30:40,916.916 INFO    ] 2026-06-27 22:30:40
[2026-06-27 22:30:41,119.119 INFO    ] 2026-06-27 22:30:41
[2026-06-27 22:30:41,149.149 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:30:41,281.281 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:30:41,333.333 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:30:41,482.482 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:30:41,539.539 INFO    ] time= 27/06/2026 22:30:41
[2026-06-27 22:30:41,562.562 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:30:41,568.568 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:30:41,635.635 INFO    ] No existing commands found in stream
[2026-06-27 22:30:46,643.643 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:30:46,645.645 INFO    ] Waiting 3.30 seconds before fallback handling...
[2026-06-27 22:30:50,290.290 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:30:50,292.292 INFO    ] Checking for system updates...
[2026-06-27 22:30:50,315.315 INFO    ] 200
[2026-06-27 22:30:50,317.317 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:30:50,355.355 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:30:50,356.356 INFO    ] No update needed
[2026-06-27 22:30:50,358.358 INFO    ] Checking for camera pi updates...
[2026-06-27 22:30:50,383.383 INFO    ] 200
[2026-06-27 22:30:50,385.385 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:30:50,411.411 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:30:50,460.460 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:30:50,462.462 INFO    ] No camera update needed
[2026-06-27 22:30:50,463.463 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:30:50,465.465 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:30:50,469.469 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:30:50,472.472 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:30:52,505.505 INFO    ] ================================================
[2026-06-27 22:30:52,514.514 INFO    ] Launching Daemon at Sat Jun 27 22:30:52 IST 2026
[2026-06-27 22:30:52,519.519 INFO    ] ================================================
[2026-06-27 22:30:52,893.893 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:30:52
[2026-06-27 22:30:53,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:30:53,366.366 INFO    ] Initializing speech engine...
[2026-06-27 22:30:53,370.370 INFO    ] 2026-06-27 22:30:53
[2026-06-27 22:30:53,556.556 INFO    ] 2026-06-27 22:30:53
[2026-06-27 22:30:53,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:30:53,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:30:53,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:30:53,954.954 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:30:54,012.012 INFO    ] time= 27/06/2026 22:30:53
[2026-06-27 22:30:54,041.041 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:30:54,052.052 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:30:54,123.123 INFO    ] No existing commands found in stream
[2026-06-27 22:30:59,132.132 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:30:59,135.135 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-27 22:31:01,421.421 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 22:31:01,423.423 INFO    ] Checking for system updates...
[2026-06-27 22:31:01,444.444 INFO    ] 200
[2026-06-27 22:31:01,445.445 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:31:01,475.475 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:31:01,477.477 INFO    ] No update needed
[2026-06-27 22:31:01,478.478 INFO    ] Checking for camera pi updates...
[2026-06-27 22:31:01,499.499 INFO    ] 200
[2026-06-27 22:31:01,500.500 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:31:01,534.534 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:31:01,662.662 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:31:01,663.663 INFO    ] No camera update needed
[2026-06-27 22:31:01,665.665 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:31:01,666.666 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:31:01,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:31:01,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:31:03,704.704 INFO    ] ================================================
[2026-06-27 22:31:03,720.720 INFO    ] Launching Daemon at Sat Jun 27 22:31:03 IST 2026
[2026-06-27 22:31:03,731.731 INFO    ] ================================================
[2026-06-27 22:31:04,067.067 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:31:04
[2026-06-27 22:31:04,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:31:04,523.523 INFO    ] Initializing speech engine...
[2026-06-27 22:31:04,528.528 INFO    ] 2026-06-27 22:31:04
[2026-06-27 22:31:04,733.733 INFO    ] 2026-06-27 22:31:04
[2026-06-27 22:31:04,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:31:04,883.883 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:31:04,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:31:05,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:31:05,137.137 INFO    ] time= 27/06/2026 22:31:05
[2026-06-27 22:31:05,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:31:05,176.176 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:31:05,248.248 INFO    ] No existing commands found in stream
[2026-06-27 22:31:10,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:31:10,265.265 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-27 22:31:13,420.420 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:31:13,422.422 INFO    ] Checking for system updates...
[2026-06-27 22:31:13,442.442 INFO    ] 200
[2026-06-27 22:31:13,444.444 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:31:13,478.478 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:31:13,479.479 INFO    ] No update needed
[2026-06-27 22:31:13,480.480 INFO    ] Checking for camera pi updates...
[2026-06-27 22:31:13,500.500 INFO    ] 200
[2026-06-27 22:31:13,501.501 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:31:13,526.526 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:31:13,560.560 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:31:13,561.561 INFO    ] No camera update needed
[2026-06-27 22:31:13,562.562 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:31:13,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:31:13,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:31:13,569.569 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:31:15,608.608 INFO    ] ================================================
[2026-06-27 22:31:15,623.623 INFO    ] Launching Daemon at Sat Jun 27 22:31:15 IST 2026
[2026-06-27 22:31:15,634.634 INFO    ] ================================================
[2026-06-27 22:31:16,028.028 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:31:16
[2026-06-27 22:31:16,367.367 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:31:16,519.519 INFO    ] Initializing speech engine...
[2026-06-27 22:31:16,531.531 INFO    ] 2026-06-27 22:31:16
[2026-06-27 22:31:16,734.734 INFO    ] 2026-06-27 22:31:16
[2026-06-27 22:31:16,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:31:16,948.948 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:31:16,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:31:17,097.097 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:31:17,155.155 INFO    ] time= 27/06/2026 22:31:17
[2026-06-27 22:31:17,179.179 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:31:17,185.185 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:31:17,251.251 INFO    ] No existing commands found in stream
[2026-06-27 22:31:22,266.266 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:31:22,268.268 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-27 22:31:25,401.401 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:31:25,403.403 INFO    ] Checking for system updates...
[2026-06-27 22:31:25,423.423 INFO    ] 200
[2026-06-27 22:31:25,425.425 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:31:25,458.458 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:31:25,459.459 INFO    ] No update needed
[2026-06-27 22:31:25,460.460 INFO    ] Checking for camera pi updates...
[2026-06-27 22:31:25,481.481 INFO    ] 200
[2026-06-27 22:31:25,482.482 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:31:25,507.507 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:31:25,546.546 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:31:25,548.548 INFO    ] No camera update needed
[2026-06-27 22:31:25,550.550 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:31:25,551.551 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:31:25,554.554 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:31:25,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:31:27,597.597 INFO    ] ================================================
[2026-06-27 22:31:27,612.612 INFO    ] Launching Daemon at Sat Jun 27 22:31:27 IST 2026
[2026-06-27 22:31:27,625.625 INFO    ] ================================================
[2026-06-27 22:31:27,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:31:27
[2026-06-27 22:31:28,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:31:28,426.426 INFO    ] Initializing speech engine...
[2026-06-27 22:31:28,436.436 INFO    ] 2026-06-27 22:31:28
[2026-06-27 22:31:28,638.638 INFO    ] 2026-06-27 22:31:28
[2026-06-27 22:31:28,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:31:28,850.850 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:31:28,853.853 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:31:29,053.053 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:31:29,077.077 INFO    ] time= 27/06/2026 22:31:29
[2026-06-27 22:31:29,082.082 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:31:29,084.084 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:31:29,150.150 INFO    ] No existing commands found in stream
[2026-06-27 22:31:34,183.183 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:31:34,186.186 INFO    ] Waiting 2.41 seconds before fallback handling...
[2026-06-27 22:31:36,995.995 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:31:36,997.997 INFO    ] Checking for system updates...
[2026-06-27 22:31:37,019.019 INFO    ] 200
[2026-06-27 22:31:37,020.020 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:31:37,052.052 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:31:37,054.054 INFO    ] No update needed
[2026-06-27 22:31:37,055.055 INFO    ] Checking for camera pi updates...
[2026-06-27 22:31:37,076.076 INFO    ] 200
[2026-06-27 22:31:37,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:31:37,103.103 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:31:37,132.132 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:31:37,133.133 INFO    ] No camera update needed
[2026-06-27 22:31:37,135.135 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:31:37,136.136 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:31:37,139.139 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:31:37,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:31:39,181.181 INFO    ] ================================================
[2026-06-27 22:31:39,197.197 INFO    ] Launching Daemon at Sat Jun 27 22:31:39 IST 2026
[2026-06-27 22:31:39,208.208 INFO    ] ================================================
[2026-06-27 22:31:39,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:31:39
[2026-06-27 22:31:39,857.857 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:31:39,988.988 INFO    ] Initializing speech engine...
[2026-06-27 22:31:39,992.992 INFO    ] 2026-06-27 22:31:39
[2026-06-27 22:31:40,206.206 INFO    ] 2026-06-27 22:31:40
[2026-06-27 22:31:40,236.236 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:31:40,419.419 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:31:40,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:31:40,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:31:40,625.625 INFO    ] time= 27/06/2026 22:31:40
[2026-06-27 22:31:40,646.646 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:31:40,653.653 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:31:40,720.720 INFO    ] No existing commands found in stream
[2026-06-27 22:31:45,734.734 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:31:45,737.737 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-27 22:31:49,118.118 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 22:31:49,119.119 INFO    ] Checking for system updates...
[2026-06-27 22:31:49,141.141 INFO    ] 200
[2026-06-27 22:31:49,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:31:49,174.174 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:31:49,175.175 INFO    ] No update needed
[2026-06-27 22:31:49,177.177 INFO    ] Checking for camera pi updates...
[2026-06-27 22:31:49,196.196 INFO    ] 200
[2026-06-27 22:31:49,197.197 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:31:49,223.223 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:31:49,266.266 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:31:49,267.267 INFO    ] No camera update needed
[2026-06-27 22:31:49,268.268 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:31:49,270.270 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:31:49,272.272 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:31:49,275.275 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:31:51,315.315 INFO    ] ================================================
[2026-06-27 22:31:51,329.329 INFO    ] Launching Daemon at Sat Jun 27 22:31:51 IST 2026
[2026-06-27 22:31:51,340.340 INFO    ] ================================================
[2026-06-27 22:31:51,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:31:51
[2026-06-27 22:31:52,036.036 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:31:52,179.179 INFO    ] Initializing speech engine...
[2026-06-27 22:31:52,184.184 INFO    ] 2026-06-27 22:31:52
[2026-06-27 22:31:52,388.388 INFO    ] 2026-06-27 22:31:52
[2026-06-27 22:31:52,417.417 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:31:52,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:31:52,609.609 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:31:52,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:31:52,807.807 INFO    ] time= 27/06/2026 22:31:52
[2026-06-27 22:31:52,831.831 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:31:52,837.837 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:31:52,902.902 INFO    ] No existing commands found in stream
[2026-06-27 22:31:57,913.913 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:31:57,916.916 INFO    ] Waiting 3.29 seconds before fallback handling...
[2026-06-27 22:32:01,621.621 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 22:32:01,622.622 INFO    ] Checking for system updates...
[2026-06-27 22:32:01,656.656 INFO    ] 200
[2026-06-27 22:32:01,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:32:01,697.697 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:32:01,699.699 INFO    ] No update needed
[2026-06-27 22:32:01,701.701 INFO    ] Checking for camera pi updates...
[2026-06-27 22:32:01,727.727 INFO    ] 200
[2026-06-27 22:32:01,729.729 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:32:01,768.768 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:32:01,818.818 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:32:01,820.820 INFO    ] No camera update needed
[2026-06-27 22:32:01,822.822 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:32:01,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:32:01,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:32:01,835.835 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:32:03,877.877 INFO    ] ================================================
[2026-06-27 22:32:03,893.893 INFO    ] Launching Daemon at Sat Jun 27 22:32:03 IST 2026
[2026-06-27 22:32:03,903.903 INFO    ] ================================================
[2026-06-27 22:32:04,242.242 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:32:04
[2026-06-27 22:32:04,559.559 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:32:04,702.702 INFO    ] Initializing speech engine...
[2026-06-27 22:32:04,707.707 INFO    ] 2026-06-27 22:32:04
[2026-06-27 22:32:04,917.917 INFO    ] 2026-06-27 22:32:04
[2026-06-27 22:32:04,946.946 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:32:05,133.133 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:32:05,141.141 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:32:05,281.281 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:32:05,337.337 INFO    ] time= 27/06/2026 22:32:05
[2026-06-27 22:32:05,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:32:05,385.385 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:32:05,475.475 INFO    ] No existing commands found in stream
[2026-06-27 22:32:10,489.489 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:32:10,492.492 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-27 22:32:13,925.925 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 22:32:13,926.926 INFO    ] Checking for system updates...
[2026-06-27 22:32:13,948.948 INFO    ] 200
[2026-06-27 22:32:13,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:32:13,982.982 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:32:13,983.983 INFO    ] No update needed
[2026-06-27 22:32:13,985.985 INFO    ] Checking for camera pi updates...
[2026-06-27 22:32:14,006.006 INFO    ] 200
[2026-06-27 22:32:14,007.007 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:32:14,031.031 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:32:14,073.073 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:32:14,075.075 INFO    ] No camera update needed
[2026-06-27 22:32:14,076.076 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:32:14,077.077 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:32:14,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:32:14,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:32:16,122.122 INFO    ] ================================================
[2026-06-27 22:32:16,137.137 INFO    ] Launching Daemon at Sat Jun 27 22:32:16 IST 2026
[2026-06-27 22:32:16,148.148 INFO    ] ================================================
[2026-06-27 22:32:16,480.480 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:32:16
[2026-06-27 22:32:16,792.792 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:32:16,937.937 INFO    ] Initializing speech engine...
[2026-06-27 22:32:16,941.941 INFO    ] 2026-06-27 22:32:16
[2026-06-27 22:32:17,148.148 INFO    ] 2026-06-27 22:32:17
[2026-06-27 22:32:17,177.177 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:32:17,371.371 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:32:17,379.379 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:32:17,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:32:17,580.580 INFO    ] time= 27/06/2026 22:32:17
[2026-06-27 22:32:17,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:32:17,610.610 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:32:17,703.703 INFO    ] No existing commands found in stream
[2026-06-27 22:32:22,712.712 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:32:22,715.715 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-27 22:32:26,977.977 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 22:32:26,978.978 INFO    ] Checking for system updates...
[2026-06-27 22:32:27,005.005 INFO    ] 200
[2026-06-27 22:32:27,006.006 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:32:27,038.038 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:32:27,039.039 INFO    ] No update needed
[2026-06-27 22:32:27,041.041 INFO    ] Checking for camera pi updates...
[2026-06-27 22:32:27,062.062 INFO    ] 200
[2026-06-27 22:32:27,064.064 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:32:27,089.089 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:32:27,134.134 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:32:27,135.135 INFO    ] No camera update needed
[2026-06-27 22:32:27,137.137 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:32:27,138.138 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:32:27,141.141 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:32:27,144.144 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:32:29,184.184 INFO    ] ================================================
[2026-06-27 22:32:29,199.199 INFO    ] Launching Daemon at Sat Jun 27 22:32:29 IST 2026
[2026-06-27 22:32:29,210.210 INFO    ] ================================================
[2026-06-27 22:32:29,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:32:29
[2026-06-27 22:32:29,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:32:30,004.004 INFO    ] Initializing speech engine...
[2026-06-27 22:32:30,009.009 INFO    ] 2026-06-27 22:32:30
[2026-06-27 22:32:30,214.214 INFO    ] 2026-06-27 22:32:30
[2026-06-27 22:32:30,241.241 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:32:30,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:32:30,427.427 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:32:30,558.558 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:32:30,614.614 INFO    ] time= 27/06/2026 22:32:30
[2026-06-27 22:32:30,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:32:30,662.662 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:32:30,729.729 INFO    ] No existing commands found in stream
[2026-06-27 22:32:35,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:32:35,764.764 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-27 22:32:39,445.445 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:32:39,446.446 INFO    ] Checking for system updates...
[2026-06-27 22:32:39,467.467 INFO    ] 200
[2026-06-27 22:32:39,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:32:39,501.501 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:32:39,503.503 INFO    ] No update needed
[2026-06-27 22:32:39,504.504 INFO    ] Checking for camera pi updates...
[2026-06-27 22:32:39,525.525 INFO    ] 200
[2026-06-27 22:32:39,526.526 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:32:39,551.551 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:32:39,605.605 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:32:39,606.606 INFO    ] No camera update needed
[2026-06-27 22:32:39,608.608 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:32:39,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:32:39,612.612 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:32:39,615.615 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:32:41,656.656 INFO    ] ================================================
[2026-06-27 22:32:41,672.672 INFO    ] Launching Daemon at Sat Jun 27 22:32:41 IST 2026
[2026-06-27 22:32:41,683.683 INFO    ] ================================================
[2026-06-27 22:32:42,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:32:42
[2026-06-27 22:32:42,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:32:42,527.527 INFO    ] Initializing speech engine...
[2026-06-27 22:32:42,536.536 INFO    ] 2026-06-27 22:32:42
[2026-06-27 22:32:42,746.746 INFO    ] 2026-06-27 22:32:42
[2026-06-27 22:32:42,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:32:42,962.962 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:32:42,972.972 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:32:43,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:32:43,174.174 INFO    ] time= 27/06/2026 22:32:43
[2026-06-27 22:32:43,195.195 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:32:43,201.201 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:32:43,267.267 INFO    ] No existing commands found in stream
[2026-06-27 22:32:48,278.278 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:32:48,281.281 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-27 22:32:50,422.422 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:32:50,424.424 INFO    ] Checking for system updates...
[2026-06-27 22:32:50,446.446 INFO    ] 200
[2026-06-27 22:32:50,448.448 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:32:50,481.481 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:32:50,482.482 INFO    ] No update needed
[2026-06-27 22:32:50,484.484 INFO    ] Checking for camera pi updates...
[2026-06-27 22:32:50,505.505 INFO    ] 200
[2026-06-27 22:32:50,506.506 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:32:50,530.530 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:32:50,586.586 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:32:50,587.587 INFO    ] No camera update needed
[2026-06-27 22:32:50,589.589 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:32:50,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:32:50,594.594 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:32:50,597.597 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:32:52,635.635 INFO    ] ================================================
[2026-06-27 22:32:52,651.651 INFO    ] Launching Daemon at Sat Jun 27 22:32:52 IST 2026
[2026-06-27 22:32:52,662.662 INFO    ] ================================================
[2026-06-27 22:32:53,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:32:53
[2026-06-27 22:32:53,331.331 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:32:53,475.475 INFO    ] Initializing speech engine...
[2026-06-27 22:32:53,480.480 INFO    ] 2026-06-27 22:32:53
[2026-06-27 22:32:53,686.686 INFO    ] 2026-06-27 22:32:53
[2026-06-27 22:32:53,714.714 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:32:53,897.897 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:32:53,907.907 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:32:54,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:32:54,103.103 INFO    ] time= 27/06/2026 22:32:54
[2026-06-27 22:32:54,127.127 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:32:54,132.132 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:32:54,199.199 INFO    ] No existing commands found in stream
[2026-06-27 22:32:59,214.214 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:32:59,217.217 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-27 22:33:01,887.887 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 22:33:01,889.889 INFO    ] Checking for system updates...
[2026-06-27 22:33:01,917.917 INFO    ] 200
[2026-06-27 22:33:01,919.919 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:33:01,959.959 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:33:01,961.961 INFO    ] No update needed
[2026-06-27 22:33:01,963.963 INFO    ] Checking for camera pi updates...
[2026-06-27 22:33:01,995.995 INFO    ] 200
[2026-06-27 22:33:01,997.997 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:33:02,026.026 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:33:02,083.083 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:33:02,085.085 INFO    ] No camera update needed
[2026-06-27 22:33:02,087.087 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:33:02,090.090 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:33:02,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:33:02,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:33:04,147.147 INFO    ] ================================================
[2026-06-27 22:33:04,162.162 INFO    ] Launching Daemon at Sat Jun 27 22:33:04 IST 2026
[2026-06-27 22:33:04,174.174 INFO    ] ================================================
[2026-06-27 22:33:04,545.545 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:33:04
[2026-06-27 22:33:04,876.876 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:33:05,017.017 INFO    ] Initializing speech engine...
[2026-06-27 22:33:05,029.029 INFO    ] 2026-06-27 22:33:05
[2026-06-27 22:33:05,234.234 INFO    ] 2026-06-27 22:33:05
[2026-06-27 22:33:05,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:33:05,448.448 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:33:05,457.457 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:33:05,592.592 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:33:05,642.642 INFO    ] time= 27/06/2026 22:33:05
[2026-06-27 22:33:05,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:33:05,697.697 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:33:05,764.764 INFO    ] No existing commands found in stream
[2026-06-27 22:33:10,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:33:10,778.778 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-27 22:33:14,785.785 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 22:33:14,787.787 INFO    ] Checking for system updates...
[2026-06-27 22:33:14,808.808 INFO    ] 200
[2026-06-27 22:33:14,810.810 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:33:14,842.842 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:33:14,843.843 INFO    ] No update needed
[2026-06-27 22:33:14,844.844 INFO    ] Checking for camera pi updates...
[2026-06-27 22:33:14,864.864 INFO    ] 200
[2026-06-27 22:33:14,865.865 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:33:14,889.889 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:33:15,029.029 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:33:15,030.030 INFO    ] No camera update needed
[2026-06-27 22:33:15,031.031 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:33:15,032.032 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:33:15,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:33:15,038.038 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:33:17,078.078 INFO    ] ================================================
[2026-06-27 22:33:17,094.094 INFO    ] Launching Daemon at Sat Jun 27 22:33:17 IST 2026
[2026-06-27 22:33:17,105.105 INFO    ] ================================================
[2026-06-27 22:33:17,455.455 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:33:17
[2026-06-27 22:33:17,768.768 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:33:17,903.903 INFO    ] Initializing speech engine...
[2026-06-27 22:33:17,916.916 INFO    ] 2026-06-27 22:33:17
[2026-06-27 22:33:18,131.131 INFO    ] 2026-06-27 22:33:18
[2026-06-27 22:33:18,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:33:18,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:33:18,302.302 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:33:18,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:33:18,486.486 INFO    ] time= 27/06/2026 22:33:18
[2026-06-27 22:33:18,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:33:18,565.565 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:33:18,707.707 INFO    ] No existing commands found in stream
[2026-06-27 22:33:23,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:33:23,720.720 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-27 22:33:25,700.700 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 22:33:25,701.701 INFO    ] Checking for system updates...
[2026-06-27 22:33:25,722.722 INFO    ] 200
[2026-06-27 22:33:25,723.723 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:33:25,756.756 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:33:25,757.757 INFO    ] No update needed
[2026-06-27 22:33:25,759.759 INFO    ] Checking for camera pi updates...
[2026-06-27 22:33:25,779.779 INFO    ] 200
[2026-06-27 22:33:25,780.780 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:33:25,805.805 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:33:25,854.854 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:33:25,855.855 INFO    ] No camera update needed
[2026-06-27 22:33:25,857.857 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:33:25,858.858 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:33:25,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:33:25,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:33:27,903.903 INFO    ] ================================================
[2026-06-27 22:33:27,919.919 INFO    ] Launching Daemon at Sat Jun 27 22:33:27 IST 2026
[2026-06-27 22:33:27,930.930 INFO    ] ================================================
[2026-06-27 22:33:28,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:33:28
[2026-06-27 22:33:28,614.614 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:33:28,761.761 INFO    ] Initializing speech engine...
[2026-06-27 22:33:28,770.770 INFO    ] 2026-06-27 22:33:28
[2026-06-27 22:33:28,980.980 INFO    ] 2026-06-27 22:33:28
[2026-06-27 22:33:29,009.009 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:33:29,193.193 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:33:29,203.203 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:33:29,346.346 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:33:29,399.399 INFO    ] time= 27/06/2026 22:33:29
[2026-06-27 22:33:29,422.422 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:33:29,427.427 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:33:29,495.495 INFO    ] No existing commands found in stream
[2026-06-27 22:33:34,509.509 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:33:34,512.512 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-27 22:33:37,617.617 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 22:33:37,619.619 INFO    ] Checking for system updates...
[2026-06-27 22:33:37,641.641 INFO    ] 200
[2026-06-27 22:33:37,642.642 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:33:37,675.675 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:33:37,677.677 INFO    ] No update needed
[2026-06-27 22:33:37,678.678 INFO    ] Checking for camera pi updates...
[2026-06-27 22:33:37,699.699 INFO    ] 200
[2026-06-27 22:33:37,700.700 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:33:37,727.727 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:33:37,766.766 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:33:37,768.768 INFO    ] No camera update needed
[2026-06-27 22:33:37,769.769 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:33:37,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:33:37,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:33:37,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:33:39,815.815 INFO    ] ================================================
[2026-06-27 22:33:39,830.830 INFO    ] Launching Daemon at Sat Jun 27 22:33:39 IST 2026
[2026-06-27 22:33:39,841.841 INFO    ] ================================================
[2026-06-27 22:33:40,177.177 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:33:40
[2026-06-27 22:33:40,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:33:40,632.632 INFO    ] Initializing speech engine...
[2026-06-27 22:33:40,637.637 INFO    ] 2026-06-27 22:33:40
[2026-06-27 22:33:40,842.842 INFO    ] 2026-06-27 22:33:40
[2026-06-27 22:33:40,870.870 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:33:41,056.056 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:33:41,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:33:41,208.208 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:33:41,266.266 INFO    ] time= 27/06/2026 22:33:41
[2026-06-27 22:33:41,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:33:41,295.295 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:33:41,361.361 INFO    ] No existing commands found in stream
[2026-06-27 22:33:46,380.380 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:33:46,383.383 INFO    ] Waiting 0.55 seconds before fallback handling...
[2026-06-27 22:33:47,316.316 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 22:33:47,318.318 INFO    ] Checking for system updates...
[2026-06-27 22:33:47,339.339 INFO    ] 200
[2026-06-27 22:33:47,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:33:47,370.370 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:33:47,372.372 INFO    ] No update needed
[2026-06-27 22:33:47,373.373 INFO    ] Checking for camera pi updates...
[2026-06-27 22:33:47,394.394 INFO    ] 200
[2026-06-27 22:33:47,396.396 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:33:47,419.419 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:33:47,465.465 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:33:47,467.467 INFO    ] No camera update needed
[2026-06-27 22:33:47,468.468 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:33:47,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:33:47,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:33:47,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:33:49,514.514 INFO    ] ================================================
[2026-06-27 22:33:49,529.529 INFO    ] Launching Daemon at Sat Jun 27 22:33:49 IST 2026
[2026-06-27 22:33:49,540.540 INFO    ] ================================================
[2026-06-27 22:33:49,866.866 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:33:49
[2026-06-27 22:33:50,184.184 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:33:50,317.317 INFO    ] Initializing speech engine...
[2026-06-27 22:33:50,325.325 INFO    ] 2026-06-27 22:33:50
[2026-06-27 22:33:50,537.537 INFO    ] 2026-06-27 22:33:50
[2026-06-27 22:33:50,566.566 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:33:50,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:33:50,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:33:51,047.047 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:33:51,049.049 INFO    ] time= 27/06/2026 22:33:51
[2026-06-27 22:33:51,075.075 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:33:51,076.076 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:33:51,201.201 INFO    ] No existing commands found in stream
[2026-06-27 22:33:56,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:33:56,214.214 INFO    ] Waiting 3.34 seconds before fallback handling...
[2026-06-27 22:33:59,953.953 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:33:59,954.954 INFO    ] Checking for system updates...
[2026-06-27 22:33:59,975.975 INFO    ] 200
[2026-06-27 22:33:59,977.977 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:34:00,007.007 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:34:00,009.009 INFO    ] No update needed
[2026-06-27 22:34:00,010.010 INFO    ] Checking for camera pi updates...
[2026-06-27 22:34:00,033.033 INFO    ] 200
[2026-06-27 22:34:00,034.034 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:34:00,059.059 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:34:00,113.113 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:34:00,115.115 INFO    ] No camera update needed
[2026-06-27 22:34:00,116.116 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:34:00,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:34:00,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:34:00,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:34:02,160.160 INFO    ] ================================================
[2026-06-27 22:34:02,186.186 INFO    ] Launching Daemon at Sat Jun 27 22:34:02 IST 2026
[2026-06-27 22:34:02,194.194 INFO    ] ================================================
[2026-06-27 22:34:02,540.540 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:34:02
[2026-06-27 22:34:02,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:34:03,006.006 INFO    ] Initializing speech engine...
[2026-06-27 22:34:03,016.016 INFO    ] 2026-06-27 22:34:03
[2026-06-27 22:34:03,220.220 INFO    ] 2026-06-27 22:34:03
[2026-06-27 22:34:03,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:34:03,370.370 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:34:03,433.433 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:34:03,577.577 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:34:03,638.638 INFO    ] time= 27/06/2026 22:34:03
[2026-06-27 22:34:03,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:34:03,667.667 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:34:03,733.733 INFO    ] No existing commands found in stream
[2026-06-27 22:34:08,747.747 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:34:08,750.750 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-27 22:34:10,052.052 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 22:34:10,054.054 INFO    ] Checking for system updates...
[2026-06-27 22:34:10,075.075 INFO    ] 200
[2026-06-27 22:34:10,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:34:10,109.109 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:34:10,110.110 INFO    ] No update needed
[2026-06-27 22:34:10,111.111 INFO    ] Checking for camera pi updates...
[2026-06-27 22:34:10,132.132 INFO    ] 200
[2026-06-27 22:34:10,133.133 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:34:10,158.158 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:34:10,203.203 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:34:10,205.205 INFO    ] No camera update needed
[2026-06-27 22:34:10,206.206 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:34:10,207.207 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:34:10,210.210 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:34:10,213.213 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:34:12,252.252 INFO    ] ================================================
[2026-06-27 22:34:12,267.267 INFO    ] Launching Daemon at Sat Jun 27 22:34:12 IST 2026
[2026-06-27 22:34:12,278.278 INFO    ] ================================================
[2026-06-27 22:34:12,614.614 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:34:12
[2026-06-27 22:34:12,933.933 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:34:13,072.072 INFO    ] Initializing speech engine...
[2026-06-27 22:34:13,082.082 INFO    ] 2026-06-27 22:34:13
[2026-06-27 22:34:13,285.285 INFO    ] 2026-06-27 22:34:13
[2026-06-27 22:34:13,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:34:13,452.452 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:34:13,499.499 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:34:13,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:34:13,701.701 INFO    ] time= 27/06/2026 22:34:13
[2026-06-27 22:34:13,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:34:13,734.734 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:34:13,801.801 INFO    ] No existing commands found in stream
[2026-06-27 22:34:18,816.816 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:34:18,819.819 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-27 22:34:20,541.541 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 22:34:20,543.543 INFO    ] Checking for system updates...
[2026-06-27 22:34:20,565.565 INFO    ] 200
[2026-06-27 22:34:20,566.566 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:34:20,597.597 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:34:20,598.598 INFO    ] No update needed
[2026-06-27 22:34:20,600.600 INFO    ] Checking for camera pi updates...
[2026-06-27 22:34:20,619.619 INFO    ] 200
[2026-06-27 22:34:20,621.621 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:34:20,645.645 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:34:20,686.686 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:34:20,688.688 INFO    ] No camera update needed
[2026-06-27 22:34:20,689.689 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:34:20,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:34:20,694.694 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:34:20,697.697 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:34:22,740.740 INFO    ] ================================================
[2026-06-27 22:34:22,755.755 INFO    ] Launching Daemon at Sat Jun 27 22:34:22 IST 2026
[2026-06-27 22:34:22,766.766 INFO    ] ================================================
[2026-06-27 22:34:23,100.100 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:34:23
[2026-06-27 22:34:23,414.414 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:34:23,544.544 INFO    ] Initializing speech engine...
[2026-06-27 22:34:23,548.548 INFO    ] 2026-06-27 22:34:23
[2026-06-27 22:34:23,770.770 INFO    ] 2026-06-27 22:34:23
[2026-06-27 22:34:23,798.798 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:34:23,985.985 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:34:23,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:34:24,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:34:24,188.188 INFO    ] time= 27/06/2026 22:34:24
[2026-06-27 22:34:24,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:34:24,221.221 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:34:24,288.288 INFO    ] No existing commands found in stream
[2026-06-27 22:34:29,298.298 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:34:29,301.301 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-27 22:34:29,825.825 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 22:34:29,826.826 INFO    ] Checking for system updates...
[2026-06-27 22:34:29,848.848 INFO    ] 200
[2026-06-27 22:34:29,849.849 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:34:29,882.882 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:34:29,883.883 INFO    ] No update needed
[2026-06-27 22:34:29,885.885 INFO    ] Checking for camera pi updates...
[2026-06-27 22:34:29,905.905 INFO    ] 200
[2026-06-27 22:34:29,906.906 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:34:29,931.931 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:34:29,974.974 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:34:29,976.976 INFO    ] No camera update needed
[2026-06-27 22:34:29,977.977 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:34:29,978.978 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:34:29,981.981 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:34:29,984.984 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:34:32,016.016 INFO    ] ================================================
[2026-06-27 22:34:32,026.026 INFO    ] Launching Daemon at Sat Jun 27 22:34:32 IST 2026
[2026-06-27 22:34:32,033.033 INFO    ] ================================================
[2026-06-27 22:34:32,382.382 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:34:32
[2026-06-27 22:34:32,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:34:32,871.871 INFO    ] Initializing speech engine...
[2026-06-27 22:34:32,880.880 INFO    ] 2026-06-27 22:34:32
[2026-06-27 22:34:33,092.092 INFO    ] 2026-06-27 22:34:33
[2026-06-27 22:34:33,121.121 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:34:33,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:34:33,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:34:33,516.516 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:34:33,540.540 INFO    ] time= 27/06/2026 22:34:33
[2026-06-27 22:34:33,546.546 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:34:33,548.548 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:34:33,639.639 INFO    ] No existing commands found in stream
[2026-06-27 22:34:38,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:34:38,667.667 INFO    ] Waiting 3.35 seconds before fallback handling...
[2026-06-27 22:34:42,434.434 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:34:42,436.436 INFO    ] Checking for system updates...
[2026-06-27 22:34:42,457.457 INFO    ] 200
[2026-06-27 22:34:42,458.458 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:34:42,489.489 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:34:42,490.490 INFO    ] No update needed
[2026-06-27 22:34:42,492.492 INFO    ] Checking for camera pi updates...
[2026-06-27 22:34:42,511.511 INFO    ] 200
[2026-06-27 22:34:42,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:34:42,537.537 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:34:42,587.587 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:34:42,589.589 INFO    ] No camera update needed
[2026-06-27 22:34:42,590.590 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:34:42,592.592 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:34:42,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:34:42,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:34:44,636.636 INFO    ] ================================================
[2026-06-27 22:34:44,652.652 INFO    ] Launching Daemon at Sat Jun 27 22:34:44 IST 2026
[2026-06-27 22:34:44,663.663 INFO    ] ================================================
[2026-06-27 22:34:45,021.021 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:34:45
[2026-06-27 22:34:45,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:34:45,516.516 INFO    ] Initializing speech engine...
[2026-06-27 22:34:45,521.521 INFO    ] 2026-06-27 22:34:45
[2026-06-27 22:34:45,725.725 INFO    ] 2026-06-27 22:34:45
[2026-06-27 22:34:45,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:34:45,939.939 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:34:45,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:34:46,070.070 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:34:46,126.126 INFO    ] time= 27/06/2026 22:34:46
[2026-06-27 22:34:46,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:34:46,169.169 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:34:46,240.240 INFO    ] No existing commands found in stream
[2026-06-27 22:34:51,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:34:51,252.252 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-27 22:34:54,157.157 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:34:54,159.159 INFO    ] Checking for system updates...
[2026-06-27 22:34:54,179.179 INFO    ] 200
[2026-06-27 22:34:54,181.181 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:34:54,215.215 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:34:54,216.216 INFO    ] No update needed
[2026-06-27 22:34:54,218.218 INFO    ] Checking for camera pi updates...
[2026-06-27 22:34:54,238.238 INFO    ] 200
[2026-06-27 22:34:54,239.239 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:34:54,264.264 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:34:54,394.394 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:34:54,395.395 INFO    ] No camera update needed
[2026-06-27 22:34:54,396.396 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:34:54,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:34:54,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:34:54,403.403 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:34:56,442.442 INFO    ] ================================================
[2026-06-27 22:34:56,459.459 INFO    ] Launching Daemon at Sat Jun 27 22:34:56 IST 2026
[2026-06-27 22:34:56,470.470 INFO    ] ================================================
[2026-06-27 22:34:56,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:34:56
[2026-06-27 22:34:57,169.169 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:34:57,321.321 INFO    ] Initializing speech engine...
[2026-06-27 22:34:57,328.328 INFO    ] 2026-06-27 22:34:57
[2026-06-27 22:34:57,536.536 INFO    ] 2026-06-27 22:34:57
[2026-06-27 22:34:57,565.565 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:34:57,751.751 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:34:57,761.761 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:34:57,911.911 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:34:57,959.959 INFO    ] time= 27/06/2026 22:34:57
[2026-06-27 22:34:57,982.982 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:34:57,987.987 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:34:58,055.055 INFO    ] No existing commands found in stream
[2026-06-27 22:35:03,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:35:03,067.067 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-27 22:35:03,776.776 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 22:35:03,777.777 INFO    ] Checking for system updates...
[2026-06-27 22:35:03,798.798 INFO    ] 200
[2026-06-27 22:35:03,800.800 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:35:03,832.832 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:35:03,833.833 INFO    ] No update needed
[2026-06-27 22:35:03,835.835 INFO    ] Checking for camera pi updates...
[2026-06-27 22:35:03,856.856 INFO    ] 200
[2026-06-27 22:35:03,857.857 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:35:03,885.885 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:35:03,938.938 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:35:03,939.939 INFO    ] No camera update needed
[2026-06-27 22:35:03,941.941 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:35:03,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:35:03,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:35:03,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:35:05,981.981 INFO    ] ================================================
[2026-06-27 22:35:06,998.998 INFO    ] Launching Daemon at Sat Jun 27 22:35:05 IST 2026
[2026-06-27 22:35:06,009.009 INFO    ] ================================================
[2026-06-27 22:35:06,359.359 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:35:06
[2026-06-27 22:35:06,694.694 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:35:06,850.850 INFO    ] Initializing speech engine...
[2026-06-27 22:35:06,857.857 INFO    ] 2026-06-27 22:35:06
[2026-06-27 22:35:07,064.064 INFO    ] 2026-06-27 22:35:07
[2026-06-27 22:35:07,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:35:07,239.239 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:35:07,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:35:07,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:35:07,497.497 INFO    ] time= 27/06/2026 22:35:07
[2026-06-27 22:35:07,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:35:07,526.526 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:35:07,595.595 INFO    ] No existing commands found in stream
[2026-06-27 22:35:12,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:35:12,612.612 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-27 22:35:16,631.631 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 22:35:16,632.632 INFO    ] Checking for system updates...
[2026-06-27 22:35:16,655.655 INFO    ] 200
[2026-06-27 22:35:16,657.657 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:35:16,692.692 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:35:16,694.694 INFO    ] No update needed
[2026-06-27 22:35:16,695.695 INFO    ] Checking for camera pi updates...
[2026-06-27 22:35:16,718.718 INFO    ] 200
[2026-06-27 22:35:16,719.719 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:35:16,743.743 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:35:16,889.889 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:35:16,891.891 INFO    ] No camera update needed
[2026-06-27 22:35:16,892.892 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:35:16,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:35:16,897.897 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:35:16,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:35:18,931.931 INFO    ] ================================================
[2026-06-27 22:35:18,940.940 INFO    ] Launching Daemon at Sat Jun 27 22:35:18 IST 2026
[2026-06-27 22:35:18,946.946 INFO    ] ================================================
[2026-06-27 22:35:19,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:35:19
[2026-06-27 22:35:19,618.618 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:35:19,773.773 INFO    ] Initializing speech engine...
[2026-06-27 22:35:19,779.779 INFO    ] 2026-06-27 22:35:19
[2026-06-27 22:35:19,988.988 INFO    ] 2026-06-27 22:35:19
[2026-06-27 22:35:20,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:35:20,156.156 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:35:20,210.210 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:35:20,348.348 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:35:20,404.404 INFO    ] time= 27/06/2026 22:35:20
[2026-06-27 22:35:20,439.439 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:35:20,445.445 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:35:20,541.541 INFO    ] No existing commands found in stream
[2026-06-27 22:35:25,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:35:25,559.559 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-27 22:35:28,062.062 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:35:28,064.064 INFO    ] Checking for system updates...
[2026-06-27 22:35:28,086.086 INFO    ] 200
[2026-06-27 22:35:28,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:35:28,120.120 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:35:28,121.121 INFO    ] No update needed
[2026-06-27 22:35:28,123.123 INFO    ] Checking for camera pi updates...
[2026-06-27 22:35:28,145.145 INFO    ] 200
[2026-06-27 22:35:28,146.146 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:35:28,169.169 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:35:28,214.214 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:35:28,215.215 INFO    ] No camera update needed
[2026-06-27 22:35:28,217.217 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:35:28,218.218 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:35:28,221.221 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:35:28,224.224 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:35:30,264.264 INFO    ] ================================================
[2026-06-27 22:35:30,279.279 INFO    ] Launching Daemon at Sat Jun 27 22:35:30 IST 2026
[2026-06-27 22:35:30,290.290 INFO    ] ================================================
[2026-06-27 22:35:30,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:35:30
[2026-06-27 22:35:30,938.938 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:35:31,074.074 INFO    ] Initializing speech engine...
[2026-06-27 22:35:31,082.082 INFO    ] 2026-06-27 22:35:31
[2026-06-27 22:35:31,292.292 INFO    ] 2026-06-27 22:35:31
[2026-06-27 22:35:31,321.321 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:35:31,539.539 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:35:31,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:35:31,689.689 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:35:31,737.737 INFO    ] time= 27/06/2026 22:35:31
[2026-06-27 22:35:31,738.738 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:35:31,777.777 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:35:31,888.888 INFO    ] No existing commands found in stream
[2026-06-27 22:35:36,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:35:36,899.899 INFO    ] Waiting 1.07 seconds before fallback handling...
[2026-06-27 22:35:38,400.400 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 22:35:38,402.402 INFO    ] Checking for system updates...
[2026-06-27 22:35:38,425.425 INFO    ] 200
[2026-06-27 22:35:38,426.426 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:35:38,462.462 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:35:38,463.463 INFO    ] No update needed
[2026-06-27 22:35:38,465.465 INFO    ] Checking for camera pi updates...
[2026-06-27 22:35:38,486.486 INFO    ] 200
[2026-06-27 22:35:38,488.488 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:35:38,514.514 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:35:38,556.556 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:35:38,557.557 INFO    ] No camera update needed
[2026-06-27 22:35:38,558.558 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:35:38,560.560 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:35:38,563.563 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:35:38,566.566 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:35:40,606.606 INFO    ] ================================================
[2026-06-27 22:35:40,622.622 INFO    ] Launching Daemon at Sat Jun 27 22:35:40 IST 2026
[2026-06-27 22:35:40,633.633 INFO    ] ================================================
[2026-06-27 22:35:41,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:35:41
[2026-06-27 22:35:41,344.344 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:35:41,499.499 INFO    ] Initializing speech engine...
[2026-06-27 22:35:41,504.504 INFO    ] 2026-06-27 22:35:41
[2026-06-27 22:35:41,716.716 INFO    ] 2026-06-27 22:35:41
[2026-06-27 22:35:41,746.746 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:35:41,943.943 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:35:41,959.959 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:35:42,074.074 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:35:42,142.142 INFO    ] time= 27/06/2026 22:35:42
[2026-06-27 22:35:42,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:35:42,172.172 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:35:42,240.240 INFO    ] No existing commands found in stream
[2026-06-27 22:35:47,260.260 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:35:47,263.263 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-27 22:35:48,985.985 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:35:48,987.987 INFO    ] Checking for system updates...
[2026-06-27 22:35:49,009.009 INFO    ] 200
[2026-06-27 22:35:49,010.010 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:35:49,044.044 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:35:49,045.045 INFO    ] No update needed
[2026-06-27 22:35:49,047.047 INFO    ] Checking for camera pi updates...
[2026-06-27 22:35:49,069.069 INFO    ] 200
[2026-06-27 22:35:49,071.071 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:35:49,094.094 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:35:49,135.135 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:35:49,137.137 INFO    ] No camera update needed
[2026-06-27 22:35:49,138.138 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:35:49,140.140 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:35:49,143.143 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:35:49,146.146 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:35:51,184.184 INFO    ] ================================================
[2026-06-27 22:35:51,199.199 INFO    ] Launching Daemon at Sat Jun 27 22:35:51 IST 2026
[2026-06-27 22:35:51,210.210 INFO    ] ================================================
[2026-06-27 22:35:51,546.546 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:35:51
[2026-06-27 22:35:51,860.860 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:35:51,992.992 INFO    ] Initializing speech engine...
[2026-06-27 22:35:52,006.006 INFO    ] 2026-06-27 22:35:51
[2026-06-27 22:35:52,211.211 INFO    ] 2026-06-27 22:35:52
[2026-06-27 22:35:52,240.240 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:35:52,362.362 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:35:52,424.424 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:35:52,582.582 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:35:52,605.605 INFO    ] time= 27/06/2026 22:35:52
[2026-06-27 22:35:52,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:35:52,661.661 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:35:52,738.738 INFO    ] No existing commands found in stream
[2026-06-27 22:35:57,746.746 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:35:57,749.749 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-27 22:35:58,997.997 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 22:35:58,999.999 INFO    ] Checking for system updates...
[2026-06-27 22:35:59,020.020 INFO    ] 200
[2026-06-27 22:35:59,021.021 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:35:59,052.052 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:35:59,053.053 INFO    ] No update needed
[2026-06-27 22:35:59,054.054 INFO    ] Checking for camera pi updates...
[2026-06-27 22:35:59,074.074 INFO    ] 200
[2026-06-27 22:35:59,075.075 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:35:59,101.101 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:35:59,149.149 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:35:59,150.150 INFO    ] No camera update needed
[2026-06-27 22:35:59,152.152 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:35:59,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:35:59,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:35:59,159.159 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:36:01,230.230 INFO    ] ================================================
[2026-06-27 22:36:01,251.251 INFO    ] Launching Daemon at Sat Jun 27 22:36:01 IST 2026
[2026-06-27 22:36:01,263.263 INFO    ] ================================================
[2026-06-27 22:36:01,683.683 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:36:01
[2026-06-27 22:36:02,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:36:02,228.228 INFO    ] Initializing speech engine...
[2026-06-27 22:36:02,232.232 INFO    ] 2026-06-27 22:36:02
[2026-06-27 22:36:02,435.435 INFO    ] 2026-06-27 22:36:02
[2026-06-27 22:36:02,481.481 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:36:02,642.642 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:36:02,676.676 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:36:02,835.835 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:36:02,868.868 INFO    ] time= 27/06/2026 22:36:02
[2026-06-27 22:36:02,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:36:02,963.963 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:36:03,049.049 INFO    ] No existing commands found in stream
[2026-06-27 22:36:08,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:36:08,060.060 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-27 22:36:10,321.321 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 22:36:10,322.322 INFO    ] Checking for system updates...
[2026-06-27 22:36:10,345.345 INFO    ] 200
[2026-06-27 22:36:10,347.347 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:36:10,378.378 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:36:10,380.380 INFO    ] No update needed
[2026-06-27 22:36:10,381.381 INFO    ] Checking for camera pi updates...
[2026-06-27 22:36:10,401.401 INFO    ] 200
[2026-06-27 22:36:10,403.403 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:36:10,429.429 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:36:10,490.490 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:36:10,492.492 INFO    ] No camera update needed
[2026-06-27 22:36:10,493.493 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:36:10,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:36:10,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:36:10,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:36:12,545.545 INFO    ] ================================================
[2026-06-27 22:36:12,561.561 INFO    ] Launching Daemon at Sat Jun 27 22:36:12 IST 2026
[2026-06-27 22:36:12,574.574 INFO    ] ================================================
[2026-06-27 22:36:12,916.916 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:36:12
[2026-06-27 22:36:13,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:36:13,379.379 INFO    ] Initializing speech engine...
[2026-06-27 22:36:13,385.385 INFO    ] 2026-06-27 22:36:13
[2026-06-27 22:36:13,590.590 INFO    ] 2026-06-27 22:36:13
[2026-06-27 22:36:13,618.618 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:36:13,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:36:13,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:36:13,940.940 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:36:14,004.004 INFO    ] time= 27/06/2026 22:36:13
[2026-06-27 22:36:14,031.031 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:36:14,033.033 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:36:14,103.103 INFO    ] No existing commands found in stream
[2026-06-27 22:36:19,114.114 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:36:19,117.117 INFO    ] Waiting 1.64 seconds before fallback handling...
[2026-06-27 22:36:21,141.141 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:36:21,143.143 INFO    ] Checking for system updates...
[2026-06-27 22:36:21,164.164 INFO    ] 200
[2026-06-27 22:36:21,165.165 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:36:21,196.196 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:36:21,197.197 INFO    ] No update needed
[2026-06-27 22:36:21,198.198 INFO    ] Checking for camera pi updates...
[2026-06-27 22:36:21,218.218 INFO    ] 200
[2026-06-27 22:36:21,220.220 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:36:21,243.243 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:36:21,294.294 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:36:21,295.295 INFO    ] No camera update needed
[2026-06-27 22:36:21,296.296 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:36:21,298.298 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:36:21,301.301 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:36:21,303.303 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:36:23,343.343 INFO    ] ================================================
[2026-06-27 22:36:23,358.358 INFO    ] Launching Daemon at Sat Jun 27 22:36:23 IST 2026
[2026-06-27 22:36:23,369.369 INFO    ] ================================================
[2026-06-27 22:36:23,727.727 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:36:23
[2026-06-27 22:36:24,048.048 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:36:24,185.185 INFO    ] Initializing speech engine...
[2026-06-27 22:36:24,189.189 INFO    ] 2026-06-27 22:36:24
[2026-06-27 22:36:24,382.382 INFO    ] 2026-06-27 22:36:24
[2026-06-27 22:36:24,428.428 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:36:24,590.590 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:36:24,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:36:24,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:36:24,879.879 INFO    ] time= 27/06/2026 22:36:24
[2026-06-27 22:36:24,915.915 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:36:24,922.922 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:36:24,994.994 INFO    ] No existing commands found in stream
[2026-06-27 22:36:30,004.004 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:36:30,007.007 INFO    ] Waiting 2.89 seconds before fallback handling...
[2026-06-27 22:36:33,310.310 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 22:36:33,312.312 INFO    ] Checking for system updates...
[2026-06-27 22:36:33,332.332 INFO    ] 200
[2026-06-27 22:36:33,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:36:33,368.368 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:36:33,370.370 INFO    ] No update needed
[2026-06-27 22:36:33,371.371 INFO    ] Checking for camera pi updates...
[2026-06-27 22:36:33,390.390 INFO    ] 200
[2026-06-27 22:36:33,392.392 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:36:33,415.415 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:36:33,465.465 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:36:33,467.467 INFO    ] No camera update needed
[2026-06-27 22:36:33,468.468 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:36:33,469.469 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:36:33,472.472 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:36:33,475.475 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:36:35,515.515 INFO    ] ================================================
[2026-06-27 22:36:35,531.531 INFO    ] Launching Daemon at Sat Jun 27 22:36:35 IST 2026
[2026-06-27 22:36:35,542.542 INFO    ] ================================================
[2026-06-27 22:36:35,906.906 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:36:35
[2026-06-27 22:36:36,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:36:36,351.351 INFO    ] Initializing speech engine...
[2026-06-27 22:36:36,359.359 INFO    ] 2026-06-27 22:36:36
[2026-06-27 22:36:36,575.575 INFO    ] 2026-06-27 22:36:36
[2026-06-27 22:36:36,603.603 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:36:36,790.790 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:36:36,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:36:36,941.941 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:36:36,998.998 INFO    ] time= 27/06/2026 22:36:36
[2026-06-27 22:36:37,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:36:37,029.029 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:36:37,096.096 INFO    ] No existing commands found in stream
[2026-06-27 22:36:42,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:36:42,116.116 INFO    ] Waiting 2.43 seconds before fallback handling...
[2026-06-27 22:36:44,993.993 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 22:36:44,995.995 INFO    ] Checking for system updates...
[2026-06-27 22:36:45,016.016 INFO    ] 200
[2026-06-27 22:36:45,018.018 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:36:45,049.049 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:36:45,051.051 INFO    ] No update needed
[2026-06-27 22:36:45,052.052 INFO    ] Checking for camera pi updates...
[2026-06-27 22:36:45,075.075 INFO    ] 200
[2026-06-27 22:36:45,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:36:45,103.103 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:36:45,149.149 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:36:45,151.151 INFO    ] No camera update needed
[2026-06-27 22:36:45,152.152 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:36:45,153.153 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:36:45,157.157 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:36:45,160.160 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:36:47,200.200 INFO    ] ================================================
[2026-06-27 22:36:47,216.216 INFO    ] Launching Daemon at Sat Jun 27 22:36:47 IST 2026
[2026-06-27 22:36:47,228.228 INFO    ] ================================================
[2026-06-27 22:36:47,565.565 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:36:47
[2026-06-27 22:36:47,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:36:48,028.028 INFO    ] Initializing speech engine...
[2026-06-27 22:36:48,038.038 INFO    ] 2026-06-27 22:36:48
[2026-06-27 22:36:48,251.251 INFO    ] 2026-06-27 22:36:48
[2026-06-27 22:36:48,283.283 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:36:48,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:36:48,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:36:48,617.617 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:36:48,685.685 INFO    ] time= 27/06/2026 22:36:48
[2026-06-27 22:36:48,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:36:48,715.715 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:36:48,781.781 INFO    ] No existing commands found in stream
[2026-06-27 22:36:53,790.790 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:36:53,793.793 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-27 22:36:56,100.100 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:36:56,102.102 INFO    ] Checking for system updates...
[2026-06-27 22:36:56,124.124 INFO    ] 200
[2026-06-27 22:36:56,125.125 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:36:56,156.156 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:36:56,157.157 INFO    ] No update needed
[2026-06-27 22:36:56,158.158 INFO    ] Checking for camera pi updates...
[2026-06-27 22:36:56,178.178 INFO    ] 200
[2026-06-27 22:36:56,179.179 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:36:56,205.205 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:36:56,252.252 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:36:56,253.253 INFO    ] No camera update needed
[2026-06-27 22:36:56,254.254 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:36:56,256.256 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:36:56,259.259 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:36:56,262.262 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:36:58,302.302 INFO    ] ================================================
[2026-06-27 22:36:58,317.317 INFO    ] Launching Daemon at Sat Jun 27 22:36:58 IST 2026
[2026-06-27 22:36:58,328.328 INFO    ] ================================================
[2026-06-27 22:36:58,665.665 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:36:58
[2026-06-27 22:36:58,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:36:59,112.112 INFO    ] Initializing speech engine...
[2026-06-27 22:36:59,116.116 INFO    ] 2026-06-27 22:36:59
[2026-06-27 22:36:59,309.309 INFO    ] 2026-06-27 22:36:59
[2026-06-27 22:36:59,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:36:59,585.585 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:36:59,589.589 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:36:59,736.736 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:36:59,798.798 INFO    ] time= 27/06/2026 22:36:59
[2026-06-27 22:36:59,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:36:59,841.841 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:36:59,946.946 INFO    ] No existing commands found in stream
[2026-06-27 22:37:04,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:37:04,958.958 INFO    ] Waiting 3.63 seconds before fallback handling...
[2026-06-27 22:37:08,957.957 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 22:37:08,958.958 INFO    ] Checking for system updates...
[2026-06-27 22:37:08,981.981 INFO    ] 200
[2026-06-27 22:37:08,982.982 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:37:09,013.013 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:37:09,014.014 INFO    ] No update needed
[2026-06-27 22:37:09,015.015 INFO    ] Checking for camera pi updates...
[2026-06-27 22:37:09,035.035 INFO    ] 200
[2026-06-27 22:37:09,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:37:09,061.061 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:37:09,108.108 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:37:09,110.110 INFO    ] No camera update needed
[2026-06-27 22:37:09,111.111 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:37:09,112.112 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:37:09,115.115 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:37:09,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:37:11,158.158 INFO    ] ================================================
[2026-06-27 22:37:11,175.175 INFO    ] Launching Daemon at Sat Jun 27 22:37:11 IST 2026
[2026-06-27 22:37:11,186.186 INFO    ] ================================================
[2026-06-27 22:37:11,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:37:11
[2026-06-27 22:37:11,879.879 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:37:12,031.031 INFO    ] Initializing speech engine...
[2026-06-27 22:37:12,039.039 INFO    ] 2026-06-27 22:37:12
[2026-06-27 22:37:12,242.242 INFO    ] 2026-06-27 22:37:12
[2026-06-27 22:37:12,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:37:12,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:37:12,458.458 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:37:12,614.614 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:37:12,662.662 INFO    ] time= 27/06/2026 22:37:12
[2026-06-27 22:37:12,684.684 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:37:12,690.690 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:37:12,757.757 INFO    ] No existing commands found in stream
[2026-06-27 22:37:17,766.766 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:37:17,770.770 INFO    ] Waiting 3.86 seconds before fallback handling...
[2026-06-27 22:37:22,055.055 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 22:37:22,056.056 INFO    ] Checking for system updates...
[2026-06-27 22:37:22,079.079 INFO    ] 200
[2026-06-27 22:37:22,080.080 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:37:22,113.113 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:37:22,114.114 INFO    ] No update needed
[2026-06-27 22:37:22,116.116 INFO    ] Checking for camera pi updates...
[2026-06-27 22:37:22,136.136 INFO    ] 200
[2026-06-27 22:37:22,137.137 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:37:22,163.163 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:37:22,311.311 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:37:22,313.313 INFO    ] No camera update needed
[2026-06-27 22:37:22,314.314 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:37:22,316.316 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:37:22,319.319 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:37:22,322.322 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:37:24,361.361 INFO    ] ================================================
[2026-06-27 22:37:24,377.377 INFO    ] Launching Daemon at Sat Jun 27 22:37:24 IST 2026
[2026-06-27 22:37:24,388.388 INFO    ] ================================================
[2026-06-27 22:37:24,735.735 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:37:24
[2026-06-27 22:37:25,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:37:25,189.189 INFO    ] Initializing speech engine...
[2026-06-27 22:37:25,202.202 INFO    ] 2026-06-27 22:37:25
[2026-06-27 22:37:25,412.412 INFO    ] 2026-06-27 22:37:25
[2026-06-27 22:37:25,441.441 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:37:25,626.626 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:37:25,636.636 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:37:25,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:37:25,832.832 INFO    ] time= 27/06/2026 22:37:25
[2026-06-27 22:37:25,855.855 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:37:25,861.861 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:37:25,928.928 INFO    ] No existing commands found in stream
[2026-06-27 22:37:30,942.942 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:37:30,945.945 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-27 22:37:34,577.577 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 22:37:34,579.579 INFO    ] Checking for system updates...
[2026-06-27 22:37:34,600.600 INFO    ] 200
[2026-06-27 22:37:34,601.601 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:37:34,633.633 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:37:34,634.634 INFO    ] No update needed
[2026-06-27 22:37:34,636.636 INFO    ] Checking for camera pi updates...
[2026-06-27 22:37:34,656.656 INFO    ] 200
[2026-06-27 22:37:34,657.657 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:37:34,681.681 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:37:34,736.736 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:37:34,737.737 INFO    ] No camera update needed
[2026-06-27 22:37:34,739.739 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:37:34,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:37:34,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:37:34,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:37:36,786.786 INFO    ] ================================================
[2026-06-27 22:37:36,801.801 INFO    ] Launching Daemon at Sat Jun 27 22:37:36 IST 2026
[2026-06-27 22:37:36,812.812 INFO    ] ================================================
[2026-06-27 22:37:37,181.181 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:37:37
[2026-06-27 22:37:37,528.528 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:37:37,673.673 INFO    ] Initializing speech engine...
[2026-06-27 22:37:37,678.678 INFO    ] 2026-06-27 22:37:37
[2026-06-27 22:37:37,884.884 INFO    ] 2026-06-27 22:37:37
[2026-06-27 22:37:37,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:37:38,099.099 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:37:38,110.110 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:37:38,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:37:38,309.309 INFO    ] time= 27/06/2026 22:37:38
[2026-06-27 22:37:38,332.332 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:37:38,338.338 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:37:38,406.406 INFO    ] No existing commands found in stream
[2026-06-27 22:37:43,415.415 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:37:43,418.418 INFO    ] Waiting 2.63 seconds before fallback handling...
[2026-06-27 22:37:46,464.464 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 22:37:46,465.465 INFO    ] Checking for system updates...
[2026-06-27 22:37:46,487.487 INFO    ] 200
[2026-06-27 22:37:46,488.488 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:37:46,524.524 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:37:46,526.526 INFO    ] No update needed
[2026-06-27 22:37:46,527.527 INFO    ] Checking for camera pi updates...
[2026-06-27 22:37:46,548.548 INFO    ] 200
[2026-06-27 22:37:46,549.549 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:37:46,572.572 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:37:46,622.622 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:37:46,624.624 INFO    ] No camera update needed
[2026-06-27 22:37:46,625.625 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:37:46,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:37:46,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:37:46,632.632 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:37:48,671.671 INFO    ] ================================================
[2026-06-27 22:37:48,687.687 INFO    ] Launching Daemon at Sat Jun 27 22:37:48 IST 2026
[2026-06-27 22:37:48,698.698 INFO    ] ================================================
[2026-06-27 22:37:49,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:37:49
[2026-06-27 22:37:49,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:37:49,487.487 INFO    ] Initializing speech engine...
[2026-06-27 22:37:49,491.491 INFO    ] 2026-06-27 22:37:49
[2026-06-27 22:37:49,709.709 INFO    ] 2026-06-27 22:37:49
[2026-06-27 22:37:49,738.738 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:37:49,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:37:49,935.935 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:37:50,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:37:50,110.110 INFO    ] time= 27/06/2026 22:37:50
[2026-06-27 22:37:50,150.150 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:37:50,162.162 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:37:50,234.234 INFO    ] No existing commands found in stream
[2026-06-27 22:37:55,248.248 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:37:55,252.252 INFO    ] Waiting 1.11 seconds before fallback handling...
[2026-06-27 22:37:56,759.759 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 22:37:56,761.761 INFO    ] Checking for system updates...
[2026-06-27 22:37:56,782.782 INFO    ] 200
[2026-06-27 22:37:56,783.783 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:37:56,814.814 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:37:56,815.815 INFO    ] No update needed
[2026-06-27 22:37:56,816.816 INFO    ] Checking for camera pi updates...
[2026-06-27 22:37:56,838.838 INFO    ] 200
[2026-06-27 22:37:56,839.839 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:37:56,862.862 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:37:56,955.955 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:37:56,956.956 INFO    ] No camera update needed
[2026-06-27 22:37:56,957.957 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:37:56,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:37:56,961.961 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:37:56,964.964 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:37:59,004.004 INFO    ] ================================================
[2026-06-27 22:37:59,019.019 INFO    ] Launching Daemon at Sat Jun 27 22:37:59 IST 2026
[2026-06-27 22:37:59,030.030 INFO    ] ================================================
[2026-06-27 22:37:59,399.399 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:37:59
[2026-06-27 22:37:59,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:37:59,889.889 INFO    ] Initializing speech engine...
[2026-06-27 22:37:59,894.894 INFO    ] 2026-06-27 22:37:59
[2026-06-27 22:38:00,105.105 INFO    ] 2026-06-27 22:38:00
[2026-06-27 22:38:00,136.136 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:38:00,347.347 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:38:00,352.352 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:38:00,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:38:00,555.555 INFO    ] time= 27/06/2026 22:38:00
[2026-06-27 22:38:00,557.557 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:38:00,559.559 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:38:00,677.677 INFO    ] No existing commands found in stream
[2026-06-27 22:38:05,687.687 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:38:05,690.690 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-27 22:38:09,811.811 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:38:09,813.813 INFO    ] Checking for system updates...
[2026-06-27 22:38:09,834.834 INFO    ] 200
[2026-06-27 22:38:09,836.836 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:38:09,869.869 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:38:09,870.870 INFO    ] No update needed
[2026-06-27 22:38:09,872.872 INFO    ] Checking for camera pi updates...
[2026-06-27 22:38:09,895.895 INFO    ] 200
[2026-06-27 22:38:09,896.896 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:38:09,921.921 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:38:09,968.968 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:38:09,969.969 INFO    ] No camera update needed
[2026-06-27 22:38:09,970.970 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:38:09,972.972 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:38:09,975.975 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:38:09,978.978 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:38:12,019.019 INFO    ] ================================================
[2026-06-27 22:38:12,034.034 INFO    ] Launching Daemon at Sat Jun 27 22:38:12 IST 2026
[2026-06-27 22:38:12,044.044 INFO    ] ================================================
[2026-06-27 22:38:12,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:38:12
[2026-06-27 22:38:12,692.692 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:38:12,834.834 INFO    ] Initializing speech engine...
[2026-06-27 22:38:12,839.839 INFO    ] 2026-06-27 22:38:12
[2026-06-27 22:38:13,043.043 INFO    ] 2026-06-27 22:38:13
[2026-06-27 22:38:13,071.071 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:38:13,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:38:13,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:38:13,423.423 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:38:13,467.467 INFO    ] time= 27/06/2026 22:38:13
[2026-06-27 22:38:13,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:38:13,495.495 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:38:13,561.561 INFO    ] No existing commands found in stream
[2026-06-27 22:38:18,571.571 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:38:18,574.574 INFO    ] Waiting 3.59 seconds before fallback handling...
[2026-06-27 22:38:22,594.594 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 22:38:22,596.596 INFO    ] Checking for system updates...
[2026-06-27 22:38:22,617.617 INFO    ] 200
[2026-06-27 22:38:22,618.618 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:38:22,648.648 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:38:22,650.650 INFO    ] No update needed
[2026-06-27 22:38:22,651.651 INFO    ] Checking for camera pi updates...
[2026-06-27 22:38:22,672.672 INFO    ] 200
[2026-06-27 22:38:22,673.673 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:38:22,696.696 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:38:22,745.745 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:38:22,747.747 INFO    ] No camera update needed
[2026-06-27 22:38:22,748.748 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:38:22,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:38:22,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:38:22,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:38:24,795.795 INFO    ] ================================================
[2026-06-27 22:38:24,811.811 INFO    ] Launching Daemon at Sat Jun 27 22:38:24 IST 2026
[2026-06-27 22:38:24,822.822 INFO    ] ================================================
[2026-06-27 22:38:25,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:38:25
[2026-06-27 22:38:25,493.493 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:38:25,629.629 INFO    ] Initializing speech engine...
[2026-06-27 22:38:25,640.640 INFO    ] 2026-06-27 22:38:25
[2026-06-27 22:38:25,844.844 INFO    ] 2026-06-27 22:38:25
[2026-06-27 22:38:25,871.871 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:38:26,055.055 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:38:26,065.065 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:38:26,265.265 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:38:26,281.281 INFO    ] time= 27/06/2026 22:38:26
[2026-06-27 22:38:26,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:38:26,288.288 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:38:26,354.354 INFO    ] No existing commands found in stream
[2026-06-27 22:38:31,364.364 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:38:31,367.367 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-27 22:38:32,387.387 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 22:38:32,389.389 INFO    ] Checking for system updates...
[2026-06-27 22:38:32,414.414 INFO    ] 200
[2026-06-27 22:38:32,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:38:32,453.453 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:38:32,455.455 INFO    ] No update needed
[2026-06-27 22:38:32,457.457 INFO    ] Checking for camera pi updates...
[2026-06-27 22:38:32,492.492 INFO    ] 200
[2026-06-27 22:38:32,494.494 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:38:32,528.528 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:38:32,557.557 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:38:32,559.559 INFO    ] No camera update needed
[2026-06-27 22:38:32,560.560 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:38:32,561.561 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:38:32,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:38:32,567.567 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:38:34,601.601 INFO    ] ================================================
[2026-06-27 22:38:34,610.610 INFO    ] Launching Daemon at Sat Jun 27 22:38:34 IST 2026
[2026-06-27 22:38:34,616.616 INFO    ] ================================================
[2026-06-27 22:38:34,930.930 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:38:34
[2026-06-27 22:38:35,251.251 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:38:35,397.397 INFO    ] Initializing speech engine...
[2026-06-27 22:38:35,400.400 INFO    ] 2026-06-27 22:38:35
[2026-06-27 22:38:35,602.602 INFO    ] 2026-06-27 22:38:35
[2026-06-27 22:38:35,631.631 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:38:35,815.815 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:38:35,823.823 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:38:36,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:38:36,042.042 INFO    ] time= 27/06/2026 22:38:36
[2026-06-27 22:38:36,047.047 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:38:36,049.049 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:38:36,116.116 INFO    ] No existing commands found in stream
[2026-06-27 22:38:41,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:38:41,132.132 INFO    ] Waiting 2.28 seconds before fallback handling...
[2026-06-27 22:38:43,848.848 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 22:38:43,850.850 INFO    ] Checking for system updates...
[2026-06-27 22:38:43,871.871 INFO    ] 200
[2026-06-27 22:38:43,873.873 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:38:43,905.905 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:38:43,907.907 INFO    ] No update needed
[2026-06-27 22:38:43,908.908 INFO    ] Checking for camera pi updates...
[2026-06-27 22:38:43,928.928 INFO    ] 200
[2026-06-27 22:38:43,929.929 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:38:43,952.952 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:38:43,996.996 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:38:43,997.997 INFO    ] No camera update needed
[2026-06-27 22:38:43,999.999 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:38:44,000.000 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:38:44,003.003 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:38:44,006.006 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:38:46,044.044 INFO    ] ================================================
[2026-06-27 22:38:46,060.060 INFO    ] Launching Daemon at Sat Jun 27 22:38:46 IST 2026
[2026-06-27 22:38:46,072.072 INFO    ] ================================================
[2026-06-27 22:38:46,412.412 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:38:46
[2026-06-27 22:38:46,738.738 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:38:46,890.890 INFO    ] Initializing speech engine...
[2026-06-27 22:38:46,896.896 INFO    ] 2026-06-27 22:38:46
[2026-06-27 22:38:47,105.105 INFO    ] 2026-06-27 22:38:47
[2026-06-27 22:38:47,134.134 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:38:47,318.318 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:38:47,327.327 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:38:47,457.457 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:38:47,526.526 INFO    ] time= 27/06/2026 22:38:47
[2026-06-27 22:38:47,548.548 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:38:47,554.554 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:38:47,621.621 INFO    ] No existing commands found in stream
[2026-06-27 22:38:52,630.630 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:38:52,634.634 INFO    ] Waiting 2.45 seconds before fallback handling...
[2026-06-27 22:38:55,520.520 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 22:38:55,522.522 INFO    ] Checking for system updates...
[2026-06-27 22:38:55,543.543 INFO    ] 200
[2026-06-27 22:38:55,545.545 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:38:55,578.578 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:38:55,579.579 INFO    ] No update needed
[2026-06-27 22:38:55,580.580 INFO    ] Checking for camera pi updates...
[2026-06-27 22:38:55,600.600 INFO    ] 200
[2026-06-27 22:38:55,601.601 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:38:55,627.627 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:38:55,661.661 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:38:55,663.663 INFO    ] No camera update needed
[2026-06-27 22:38:55,664.664 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:38:55,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:38:55,668.668 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:38:55,671.671 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:38:57,709.709 INFO    ] ================================================
[2026-06-27 22:38:57,725.725 INFO    ] Launching Daemon at Sat Jun 27 22:38:57 IST 2026
[2026-06-27 22:38:57,736.736 INFO    ] ================================================
[2026-06-27 22:38:58,106.106 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:38:58
[2026-06-27 22:38:58,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:38:58,562.562 INFO    ] Initializing speech engine...
[2026-06-27 22:38:58,568.568 INFO    ] 2026-06-27 22:38:58
[2026-06-27 22:38:58,772.772 INFO    ] 2026-06-27 22:38:58
[2026-06-27 22:38:58,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:38:58,983.983 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:38:58,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:38:59,123.123 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:38:59,182.182 INFO    ] time= 27/06/2026 22:38:59
[2026-06-27 22:38:59,214.214 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:38:59,220.220 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:38:59,287.287 INFO    ] No existing commands found in stream
[2026-06-27 22:39:04,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:39:04,299.299 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-27 22:39:06,035.035 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:39:06,036.036 INFO    ] Checking for system updates...
[2026-06-27 22:39:06,067.067 INFO    ] 200
[2026-06-27 22:39:06,068.068 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:39:06,109.109 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:39:06,111.111 INFO    ] No update needed
[2026-06-27 22:39:06,112.112 INFO    ] Checking for camera pi updates...
[2026-06-27 22:39:06,133.133 INFO    ] 200
[2026-06-27 22:39:06,135.135 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:39:06,160.160 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:39:06,221.221 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:39:06,222.222 INFO    ] No camera update needed
[2026-06-27 22:39:06,224.224 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:39:06,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:39:06,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:39:06,230.230 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:39:08,270.270 INFO    ] ================================================
[2026-06-27 22:39:08,288.288 INFO    ] Launching Daemon at Sat Jun 27 22:39:08 IST 2026
[2026-06-27 22:39:08,298.298 INFO    ] ================================================
[2026-06-27 22:39:08,647.647 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:39:08
[2026-06-27 22:39:08,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:39:09,105.105 INFO    ] Initializing speech engine...
[2026-06-27 22:39:09,110.110 INFO    ] 2026-06-27 22:39:09
[2026-06-27 22:39:09,316.316 INFO    ] 2026-06-27 22:39:09
[2026-06-27 22:39:09,345.345 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:39:09,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:39:09,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:39:09,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:39:09,726.726 INFO    ] time= 27/06/2026 22:39:09
[2026-06-27 22:39:09,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:39:09,764.764 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:39:09,830.830 INFO    ] No existing commands found in stream
[2026-06-27 22:39:14,836.836 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:39:14,839.839 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-27 22:39:15,399.399 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 22:39:15,401.401 INFO    ] Checking for system updates...
[2026-06-27 22:39:15,422.422 INFO    ] 200
[2026-06-27 22:39:15,423.423 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:39:15,456.456 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:39:15,457.457 INFO    ] No update needed
[2026-06-27 22:39:15,458.458 INFO    ] Checking for camera pi updates...
[2026-06-27 22:39:15,478.478 INFO    ] 200
[2026-06-27 22:39:15,479.479 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:39:15,505.505 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:39:15,547.547 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:39:15,548.548 INFO    ] No camera update needed
[2026-06-27 22:39:15,549.549 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:39:15,550.550 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:39:15,553.553 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:39:15,557.557 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:39:17,596.596 INFO    ] ================================================
[2026-06-27 22:39:17,612.612 INFO    ] Launching Daemon at Sat Jun 27 22:39:17 IST 2026
[2026-06-27 22:39:17,623.623 INFO    ] ================================================
[2026-06-27 22:39:18,004.004 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:39:18
[2026-06-27 22:39:18,346.346 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:39:18,500.500 INFO    ] Initializing speech engine...
[2026-06-27 22:39:18,506.506 INFO    ] 2026-06-27 22:39:18
[2026-06-27 22:39:18,714.714 INFO    ] 2026-06-27 22:39:18
[2026-06-27 22:39:18,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:39:18,931.931 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:39:18,944.944 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:39:19,092.092 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:39:19,142.142 INFO    ] time= 27/06/2026 22:39:19
[2026-06-27 22:39:19,168.168 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:39:19,169.169 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:39:19,237.237 INFO    ] No existing commands found in stream
[2026-06-27 22:39:24,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:39:24,266.266 INFO    ] Waiting 2.35 seconds before fallback handling...
[2026-06-27 22:39:26,988.988 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 22:39:26,990.990 INFO    ] Checking for system updates...
[2026-06-27 22:39:27,012.012 INFO    ] 200
[2026-06-27 22:39:27,013.013 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:39:27,044.044 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:39:27,045.045 INFO    ] No update needed
[2026-06-27 22:39:27,046.046 INFO    ] Checking for camera pi updates...
[2026-06-27 22:39:27,068.068 INFO    ] 200
[2026-06-27 22:39:27,069.069 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:39:27,095.095 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:39:27,235.235 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:39:27,236.236 INFO    ] No camera update needed
[2026-06-27 22:39:27,237.237 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:39:27,238.238 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:39:27,241.241 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:39:27,244.244 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:39:29,282.282 INFO    ] ================================================
[2026-06-27 22:39:29,297.297 INFO    ] Launching Daemon at Sat Jun 27 22:39:29 IST 2026
[2026-06-27 22:39:29,308.308 INFO    ] ================================================
[2026-06-27 22:39:29,654.654 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:39:29
[2026-06-27 22:39:29,967.967 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:39:30,103.103 INFO    ] Initializing speech engine...
[2026-06-27 22:39:30,113.113 INFO    ] 2026-06-27 22:39:30
[2026-06-27 22:39:30,318.318 INFO    ] 2026-06-27 22:39:30
[2026-06-27 22:39:30,346.346 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:39:30,529.529 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:39:30,538.538 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:39:30,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:39:30,733.733 INFO    ] time= 27/06/2026 22:39:30
[2026-06-27 22:39:30,758.758 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:39:30,759.759 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:39:30,830.830 INFO    ] No existing commands found in stream
[2026-06-27 22:39:35,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:39:35,847.847 INFO    ] Waiting 1.34 seconds before fallback handling...
[2026-06-27 22:39:37,554.554 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 22:39:37,555.555 INFO    ] Checking for system updates...
[2026-06-27 22:39:37,578.578 INFO    ] 200
[2026-06-27 22:39:37,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:39:37,614.614 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:39:37,615.615 INFO    ] No update needed
[2026-06-27 22:39:37,617.617 INFO    ] Checking for camera pi updates...
[2026-06-27 22:39:37,636.636 INFO    ] 200
[2026-06-27 22:39:37,638.638 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:39:37,663.663 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:39:37,718.718 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:39:37,720.720 INFO    ] No camera update needed
[2026-06-27 22:39:37,721.721 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:39:37,722.722 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:39:37,726.726 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:39:37,729.729 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:39:39,769.769 INFO    ] ================================================
[2026-06-27 22:39:39,784.784 INFO    ] Launching Daemon at Sat Jun 27 22:39:39 IST 2026
[2026-06-27 22:39:39,795.795 INFO    ] ================================================
[2026-06-27 22:39:40,140.140 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:39:40
[2026-06-27 22:39:40,453.453 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:39:40,596.596 INFO    ] Initializing speech engine...
[2026-06-27 22:39:40,601.601 INFO    ] 2026-06-27 22:39:40
[2026-06-27 22:39:40,807.807 INFO    ] 2026-06-27 22:39:40
[2026-06-27 22:39:40,836.836 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:39:41,023.023 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:39:41,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:39:41,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:39:41,230.230 INFO    ] time= 27/06/2026 22:39:41
[2026-06-27 22:39:41,254.254 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:39:41,260.260 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:39:41,326.326 INFO    ] No existing commands found in stream
[2026-06-27 22:39:46,336.336 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:39:46,339.339 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-27 22:39:50,158.158 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 22:39:50,159.159 INFO    ] Checking for system updates...
[2026-06-27 22:39:50,182.182 INFO    ] 200
[2026-06-27 22:39:50,184.184 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:39:50,219.219 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:39:50,222.222 INFO    ] No update needed
[2026-06-27 22:39:50,225.225 INFO    ] Checking for camera pi updates...
[2026-06-27 22:39:50,265.265 INFO    ] 200
[2026-06-27 22:39:50,268.268 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:39:50,316.316 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:39:50,358.358 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:39:50,360.360 INFO    ] No camera update needed
[2026-06-27 22:39:50,361.361 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:39:50,363.363 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:39:50,366.366 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:39:50,369.369 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:39:52,407.407 INFO    ] ================================================
[2026-06-27 22:39:52,423.423 INFO    ] Launching Daemon at Sat Jun 27 22:39:52 IST 2026
[2026-06-27 22:39:52,433.433 INFO    ] ================================================
[2026-06-27 22:39:52,825.825 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:39:52
[2026-06-27 22:39:53,138.138 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:39:53,274.274 INFO    ] Initializing speech engine...
[2026-06-27 22:39:53,283.283 INFO    ] 2026-06-27 22:39:53
[2026-06-27 22:39:53,489.489 INFO    ] 2026-06-27 22:39:53
[2026-06-27 22:39:53,518.518 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:39:53,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:39:53,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:39:53,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:39:53,906.906 INFO    ] time= 27/06/2026 22:39:53
[2026-06-27 22:39:53,929.929 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:39:53,935.935 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:39:54,002.002 INFO    ] No existing commands found in stream
[2026-06-27 22:39:59,012.012 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:39:59,015.015 INFO    ] Waiting 1.21 seconds before fallback handling...
[2026-06-27 22:40:00,618.618 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 22:40:00,619.619 INFO    ] Checking for system updates...
[2026-06-27 22:40:00,642.642 INFO    ] 200
[2026-06-27 22:40:00,643.643 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:40:00,676.676 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:40:00,677.677 INFO    ] No update needed
[2026-06-27 22:40:00,679.679 INFO    ] Checking for camera pi updates...
[2026-06-27 22:40:00,699.699 INFO    ] 200
[2026-06-27 22:40:00,700.700 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:40:00,724.724 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:40:00,774.774 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:40:00,775.775 INFO    ] No camera update needed
[2026-06-27 22:40:00,777.777 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:40:00,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:40:00,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:40:00,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:40:02,820.820 INFO    ] ================================================
[2026-06-27 22:40:02,835.835 INFO    ] Launching Daemon at Sat Jun 27 22:40:02 IST 2026
[2026-06-27 22:40:02,846.846 INFO    ] ================================================
[2026-06-27 22:40:03,215.215 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:40:03
[2026-06-27 22:40:03,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:40:03,685.685 INFO    ] Initializing speech engine...
[2026-06-27 22:40:03,690.690 INFO    ] 2026-06-27 22:40:03
[2026-06-27 22:40:03,898.898 INFO    ] 2026-06-27 22:40:03
[2026-06-27 22:40:03,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:40:04,059.059 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:40:04,117.117 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:40:04,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:40:04,348.348 INFO    ] time= 27/06/2026 22:40:04
[2026-06-27 22:40:04,354.354 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:40:04,355.355 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:40:04,422.422 INFO    ] No existing commands found in stream
[2026-06-27 22:40:09,432.432 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:40:09,435.435 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-27 22:40:13,177.177 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 22:40:13,179.179 INFO    ] Checking for system updates...
[2026-06-27 22:40:13,201.201 INFO    ] 200
[2026-06-27 22:40:13,203.203 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:40:13,236.236 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:40:13,237.237 INFO    ] No update needed
[2026-06-27 22:40:13,239.239 INFO    ] Checking for camera pi updates...
[2026-06-27 22:40:13,262.262 INFO    ] 200
[2026-06-27 22:40:13,263.263 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:40:13,288.288 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:40:13,328.328 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:40:13,330.330 INFO    ] No camera update needed
[2026-06-27 22:40:13,331.331 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:40:13,332.332 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:40:13,335.335 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:40:13,338.338 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:40:15,378.378 INFO    ] ================================================
[2026-06-27 22:40:15,392.392 INFO    ] Launching Daemon at Sat Jun 27 22:40:15 IST 2026
[2026-06-27 22:40:15,403.403 INFO    ] ================================================
[2026-06-27 22:40:15,742.742 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:40:15
[2026-06-27 22:40:16,053.053 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:40:16,196.196 INFO    ] Initializing speech engine...
[2026-06-27 22:40:16,201.201 INFO    ] 2026-06-27 22:40:16
[2026-06-27 22:40:16,406.406 INFO    ] 2026-06-27 22:40:16
[2026-06-27 22:40:16,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:40:16,622.622 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:40:16,631.631 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:40:16,758.758 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:40:16,810.810 INFO    ] time= 27/06/2026 22:40:16
[2026-06-27 22:40:16,854.854 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:40:16,856.856 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:40:16,928.928 INFO    ] No existing commands found in stream
[2026-06-27 22:40:21,937.937 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:40:21,940.940 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-27 22:40:23,179.179 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 22:40:23,181.181 INFO    ] Checking for system updates...
[2026-06-27 22:40:23,202.202 INFO    ] 200
[2026-06-27 22:40:23,204.204 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:40:23,236.236 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:40:23,237.237 INFO    ] No update needed
[2026-06-27 22:40:23,239.239 INFO    ] Checking for camera pi updates...
[2026-06-27 22:40:23,259.259 INFO    ] 200
[2026-06-27 22:40:23,260.260 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:40:23,284.284 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:40:23,331.331 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:40:23,332.332 INFO    ] No camera update needed
[2026-06-27 22:40:23,333.333 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:40:23,335.335 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:40:23,338.338 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:40:23,340.340 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:40:25,378.378 INFO    ] ================================================
[2026-06-27 22:40:25,393.393 INFO    ] Launching Daemon at Sat Jun 27 22:40:25 IST 2026
[2026-06-27 22:40:25,403.403 INFO    ] ================================================
[2026-06-27 22:40:25,743.743 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:40:25
[2026-06-27 22:40:26,055.055 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:40:26,186.186 INFO    ] Initializing speech engine...
[2026-06-27 22:40:26,189.189 INFO    ] 2026-06-27 22:40:26
[2026-06-27 22:40:26,406.406 INFO    ] 2026-06-27 22:40:26
[2026-06-27 22:40:26,435.435 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:40:26,557.557 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:40:26,620.620 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:40:26,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:40:26,811.811 INFO    ] time= 27/06/2026 22:40:26
[2026-06-27 22:40:26,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:40:26,850.850 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:40:26,920.920 INFO    ] No existing commands found in stream
[2026-06-27 22:40:31,925.925 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:40:31,927.927 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-27 22:40:35,545.545 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 22:40:35,546.546 INFO    ] Checking for system updates...
[2026-06-27 22:40:35,569.569 INFO    ] 200
[2026-06-27 22:40:35,570.570 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:40:35,604.604 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:40:35,605.605 INFO    ] No update needed
[2026-06-27 22:40:35,607.607 INFO    ] Checking for camera pi updates...
[2026-06-27 22:40:35,627.627 INFO    ] 200
[2026-06-27 22:40:35,629.629 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:40:35,655.655 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:40:35,702.702 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:40:35,704.704 INFO    ] No camera update needed
[2026-06-27 22:40:35,705.705 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:40:35,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:40:35,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:40:35,714.714 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:40:37,755.755 INFO    ] ================================================
[2026-06-27 22:40:37,771.771 INFO    ] Launching Daemon at Sat Jun 27 22:40:37 IST 2026
[2026-06-27 22:40:37,782.782 INFO    ] ================================================
[2026-06-27 22:40:38,121.121 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:40:38
[2026-06-27 22:40:38,437.437 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:40:38,579.579 INFO    ] Initializing speech engine...
[2026-06-27 22:40:38,589.589 INFO    ] 2026-06-27 22:40:38
[2026-06-27 22:40:38,794.794 INFO    ] 2026-06-27 22:40:38
[2026-06-27 22:40:38,822.822 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:40:39,011.011 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:40:39,019.019 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:40:39,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:40:39,197.197 INFO    ] time= 27/06/2026 22:40:39
[2026-06-27 22:40:39,239.239 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:40:39,245.245 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:40:39,345.345 INFO    ] No existing commands found in stream
[2026-06-27 22:40:44,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:40:44,360.360 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-27 22:40:49,417.417 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 22:40:49,418.418 INFO    ] Checking for system updates...
[2026-06-27 22:40:49,439.439 INFO    ] 200
[2026-06-27 22:40:49,441.441 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:40:49,473.473 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:40:49,474.474 INFO    ] No update needed
[2026-06-27 22:40:49,476.476 INFO    ] Checking for camera pi updates...
[2026-06-27 22:40:49,496.496 INFO    ] 200
[2026-06-27 22:40:49,497.497 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:40:49,521.521 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:40:49,566.566 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:40:49,567.567 INFO    ] No camera update needed
[2026-06-27 22:40:49,568.568 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:40:49,569.569 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:40:49,572.572 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:40:49,575.575 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:40:51,613.613 INFO    ] ================================================
[2026-06-27 22:40:51,628.628 INFO    ] Launching Daemon at Sat Jun 27 22:40:51 IST 2026
[2026-06-27 22:40:51,639.639 INFO    ] ================================================
[2026-06-27 22:40:52,007.007 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:40:52
[2026-06-27 22:40:52,323.323 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:40:52,467.467 INFO    ] Initializing speech engine...
[2026-06-27 22:40:52,472.472 INFO    ] 2026-06-27 22:40:52
[2026-06-27 22:40:52,676.676 INFO    ] 2026-06-27 22:40:52
[2026-06-27 22:40:52,705.705 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:40:52,827.827 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:40:52,890.890 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:40:53,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:40:53,091.091 INFO    ] time= 27/06/2026 22:40:53
[2026-06-27 22:40:53,118.118 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:40:53,120.120 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:40:53,192.192 INFO    ] No existing commands found in stream
[2026-06-27 22:40:58,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:40:58,204.204 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-27 22:41:00,237.237 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 22:41:00,238.238 INFO    ] Checking for system updates...
[2026-06-27 22:41:00,260.260 INFO    ] 200
[2026-06-27 22:41:00,261.261 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:41:00,294.294 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:41:00,295.295 INFO    ] No update needed
[2026-06-27 22:41:00,297.297 INFO    ] Checking for camera pi updates...
[2026-06-27 22:41:00,316.316 INFO    ] 200
[2026-06-27 22:41:00,317.317 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:41:00,340.340 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:41:00,380.380 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:41:00,382.382 INFO    ] No camera update needed
[2026-06-27 22:41:00,383.383 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:41:00,384.384 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:41:00,387.387 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:41:00,390.390 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:41:02,420.420 INFO    ] ================================================
[2026-06-27 22:41:02,431.431 INFO    ] Launching Daemon at Sat Jun 27 22:41:02 IST 2026
[2026-06-27 22:41:02,440.440 INFO    ] ================================================
[2026-06-27 22:41:02,761.761 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:41:02
[2026-06-27 22:41:03,080.080 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:41:03,224.224 INFO    ] Initializing speech engine...
[2026-06-27 22:41:03,230.230 INFO    ] 2026-06-27 22:41:03
[2026-06-27 22:41:03,435.435 INFO    ] 2026-06-27 22:41:03
[2026-06-27 22:41:03,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:41:03,649.649 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:41:03,658.658 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:41:03,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:41:03,851.851 INFO    ] time= 27/06/2026 22:41:03
[2026-06-27 22:41:03,879.879 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:41:03,885.885 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:41:03,954.954 INFO    ] No existing commands found in stream
[2026-06-27 22:41:08,964.964 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:41:08,967.967 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-27 22:41:09,523.523 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 22:41:09,524.524 INFO    ] Checking for system updates...
[2026-06-27 22:41:09,546.546 INFO    ] 200
[2026-06-27 22:41:09,547.547 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:41:09,581.581 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:41:09,582.582 INFO    ] No update needed
[2026-06-27 22:41:09,584.584 INFO    ] Checking for camera pi updates...
[2026-06-27 22:41:09,605.605 INFO    ] 200
[2026-06-27 22:41:09,607.607 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:41:09,633.633 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:41:09,683.683 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:41:09,685.685 INFO    ] No camera update needed
[2026-06-27 22:41:09,686.686 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:41:09,687.687 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:41:09,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:41:09,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:41:11,735.735 INFO    ] ================================================
[2026-06-27 22:41:11,750.750 INFO    ] Launching Daemon at Sat Jun 27 22:41:11 IST 2026
[2026-06-27 22:41:11,762.762 INFO    ] ================================================
[2026-06-27 22:41:12,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:41:12
[2026-06-27 22:41:12,428.428 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:41:12,561.561 INFO    ] Initializing speech engine...
[2026-06-27 22:41:12,574.574 INFO    ] 2026-06-27 22:41:12
[2026-06-27 22:41:12,785.785 INFO    ] 2026-06-27 22:41:12
[2026-06-27 22:41:12,815.815 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:41:12,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:41:13,002.002 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:41:13,143.143 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:41:13,205.205 INFO    ] time= 27/06/2026 22:41:13
[2026-06-27 22:41:13,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:41:13,234.234 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:41:13,301.301 INFO    ] No existing commands found in stream
[2026-06-27 22:41:18,310.310 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:41:18,314.314 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-27 22:41:20,862.862 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:41:20,864.864 INFO    ] Checking for system updates...
[2026-06-27 22:41:20,887.887 INFO    ] 200
[2026-06-27 22:41:20,888.888 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:41:20,921.921 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:41:20,923.923 INFO    ] No update needed
[2026-06-27 22:41:20,924.924 INFO    ] Checking for camera pi updates...
[2026-06-27 22:41:20,944.944 INFO    ] 200
[2026-06-27 22:41:20,946.946 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:41:20,969.969 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:41:21,019.019 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:41:21,021.021 INFO    ] No camera update needed
[2026-06-27 22:41:21,022.022 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:41:21,024.024 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:41:21,027.027 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:41:21,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:41:23,069.069 INFO    ] ================================================
[2026-06-27 22:41:23,086.086 INFO    ] Launching Daemon at Sat Jun 27 22:41:23 IST 2026
[2026-06-27 22:41:23,097.097 INFO    ] ================================================
[2026-06-27 22:41:23,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:41:23
[2026-06-27 22:41:23,788.788 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:41:23,931.931 INFO    ] Initializing speech engine...
[2026-06-27 22:41:23,936.936 INFO    ] 2026-06-27 22:41:23
[2026-06-27 22:41:24,141.141 INFO    ] 2026-06-27 22:41:24
[2026-06-27 22:41:24,169.169 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:41:24,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:41:24,361.361 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:41:24,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:41:24,558.558 INFO    ] time= 27/06/2026 22:41:24
[2026-06-27 22:41:24,580.580 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:41:24,587.587 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:41:24,652.652 INFO    ] No existing commands found in stream
[2026-06-27 22:41:29,662.662 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:41:29,665.665 INFO    ] Waiting 0.10 seconds before fallback handling...
[2026-06-27 22:41:30,170.170 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 22:41:30,172.172 INFO    ] Checking for system updates...
[2026-06-27 22:41:30,193.193 INFO    ] 200
[2026-06-27 22:41:30,195.195 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:41:30,229.229 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:41:30,230.230 INFO    ] No update needed
[2026-06-27 22:41:30,232.232 INFO    ] Checking for camera pi updates...
[2026-06-27 22:41:30,253.253 INFO    ] 200
[2026-06-27 22:41:30,254.254 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:41:30,280.280 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:41:30,416.416 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:41:30,418.418 INFO    ] No camera update needed
[2026-06-27 22:41:30,419.419 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:41:30,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:41:30,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:41:30,427.427 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:41:32,465.465 INFO    ] ================================================
[2026-06-27 22:41:32,480.480 INFO    ] Launching Daemon at Sat Jun 27 22:41:32 IST 2026
[2026-06-27 22:41:32,491.491 INFO    ] ================================================
[2026-06-27 22:41:32,886.886 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:41:32
[2026-06-27 22:41:33,228.228 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:41:33,384.384 INFO    ] Initializing speech engine...
[2026-06-27 22:41:33,389.389 INFO    ] 2026-06-27 22:41:33
[2026-06-27 22:41:33,597.597 INFO    ] 2026-06-27 22:41:33
[2026-06-27 22:41:33,626.626 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:41:33,763.763 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:41:33,811.811 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:41:33,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:41:34,018.018 INFO    ] time= 27/06/2026 22:41:33
[2026-06-27 22:41:34,040.040 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:41:34,046.046 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:41:34,114.114 INFO    ] No existing commands found in stream
[2026-06-27 22:41:39,126.126 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:41:39,129.129 INFO    ] Waiting 1.05 seconds before fallback handling...
[2026-06-27 22:41:40,587.587 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 22:41:40,588.588 INFO    ] Checking for system updates...
[2026-06-27 22:41:40,610.610 INFO    ] 200
[2026-06-27 22:41:40,611.611 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:41:40,644.644 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:41:40,646.646 INFO    ] No update needed
[2026-06-27 22:41:40,647.647 INFO    ] Checking for camera pi updates...
[2026-06-27 22:41:40,668.668 INFO    ] 200
[2026-06-27 22:41:40,670.670 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:41:40,695.695 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:41:40,736.736 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:41:40,737.737 INFO    ] No camera update needed
[2026-06-27 22:41:40,738.738 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:41:40,740.740 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:41:40,743.743 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:41:40,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:41:42,788.788 INFO    ] ================================================
[2026-06-27 22:41:42,803.803 INFO    ] Launching Daemon at Sat Jun 27 22:41:42 IST 2026
[2026-06-27 22:41:42,814.814 INFO    ] ================================================
[2026-06-27 22:41:43,158.158 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:41:43
[2026-06-27 22:41:43,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:41:43,613.613 INFO    ] Initializing speech engine...
[2026-06-27 22:41:43,617.617 INFO    ] 2026-06-27 22:41:43
[2026-06-27 22:41:43,811.811 INFO    ] 2026-06-27 22:41:43
[2026-06-27 22:41:43,857.857 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:41:44,015.015 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:41:44,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:41:44,220.220 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:41:44,277.277 INFO    ] time= 27/06/2026 22:41:44
[2026-06-27 22:41:44,320.320 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:41:44,327.327 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:41:44,393.393 INFO    ] No existing commands found in stream
[2026-06-27 22:41:49,404.404 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:41:49,406.406 INFO    ] Waiting 2.97 seconds before fallback handling...
[2026-06-27 22:41:52,759.759 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 22:41:52,760.760 INFO    ] Checking for system updates...
[2026-06-27 22:41:52,782.782 INFO    ] 200
[2026-06-27 22:41:52,783.783 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:41:52,813.813 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:41:52,815.815 INFO    ] No update needed
[2026-06-27 22:41:52,816.816 INFO    ] Checking for camera pi updates...
[2026-06-27 22:41:52,835.835 INFO    ] 200
[2026-06-27 22:41:52,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:41:52,862.862 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:41:52,919.919 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:41:52,920.920 INFO    ] No camera update needed
[2026-06-27 22:41:52,922.922 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:41:52,923.923 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:41:52,926.926 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:41:52,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:41:54,969.969 INFO    ] ================================================
[2026-06-27 22:41:54,985.985 INFO    ] Launching Daemon at Sat Jun 27 22:41:54 IST 2026
[2026-06-27 22:41:55,997.997 INFO    ] ================================================
[2026-06-27 22:41:55,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:41:55
[2026-06-27 22:41:55,714.714 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:41:55,869.869 INFO    ] Initializing speech engine...
[2026-06-27 22:41:55,874.874 INFO    ] 2026-06-27 22:41:55
[2026-06-27 22:41:56,086.086 INFO    ] 2026-06-27 22:41:56
[2026-06-27 22:41:56,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:41:56,301.301 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:41:56,310.310 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:41:56,460.460 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:41:56,509.509 INFO    ] time= 27/06/2026 22:41:56
[2026-06-27 22:41:56,531.531 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:41:56,537.537 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:41:56,604.604 INFO    ] No existing commands found in stream
[2026-06-27 22:42:01,626.626 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:42:01,630.630 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-27 22:42:03,359.359 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:42:03,362.362 INFO    ] Checking for system updates...
[2026-06-27 22:42:03,401.401 INFO    ] 200
[2026-06-27 22:42:03,404.404 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:42:03,459.459 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:42:03,462.462 INFO    ] No update needed
[2026-06-27 22:42:03,465.465 INFO    ] Checking for camera pi updates...
[2026-06-27 22:42:03,501.501 INFO    ] 200
[2026-06-27 22:42:03,504.504 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:42:03,537.537 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:42:03,579.579 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:42:03,581.581 INFO    ] No camera update needed
[2026-06-27 22:42:03,582.582 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:42:03,584.584 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:42:03,587.587 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:42:03,590.590 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:42:05,630.630 INFO    ] ================================================
[2026-06-27 22:42:05,646.646 INFO    ] Launching Daemon at Sat Jun 27 22:42:05 IST 2026
[2026-06-27 22:42:05,657.657 INFO    ] ================================================
[2026-06-27 22:42:06,041.041 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:42:06
[2026-06-27 22:42:06,383.383 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:42:06,522.522 INFO    ] Initializing speech engine...
[2026-06-27 22:42:06,532.532 INFO    ] 2026-06-27 22:42:06
[2026-06-27 22:42:06,738.738 INFO    ] 2026-06-27 22:42:06
[2026-06-27 22:42:06,767.767 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:42:06,894.894 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:42:06,952.952 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:42:07,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:42:07,143.143 INFO    ] time= 27/06/2026 22:42:07
[2026-06-27 22:42:07,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:42:07,183.183 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:42:07,254.254 INFO    ] No existing commands found in stream
[2026-06-27 22:42:12,263.263 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:42:12,266.266 INFO    ] Waiting 2.92 seconds before fallback handling...
[2026-06-27 22:42:15,576.576 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:42:15,578.578 INFO    ] Checking for system updates...
[2026-06-27 22:42:15,600.600 INFO    ] 200
[2026-06-27 22:42:15,602.602 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:42:15,635.635 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:42:15,636.636 INFO    ] No update needed
[2026-06-27 22:42:15,638.638 INFO    ] Checking for camera pi updates...
[2026-06-27 22:42:15,658.658 INFO    ] 200
[2026-06-27 22:42:15,659.659 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:42:15,683.683 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:42:15,726.726 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:42:15,727.727 INFO    ] No camera update needed
[2026-06-27 22:42:15,729.729 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:42:15,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:42:15,734.734 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:42:15,737.737 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:42:17,777.777 INFO    ] ================================================
[2026-06-27 22:42:17,793.793 INFO    ] Launching Daemon at Sat Jun 27 22:42:17 IST 2026
[2026-06-27 22:42:17,804.804 INFO    ] ================================================
[2026-06-27 22:42:18,172.172 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:42:18
[2026-06-27 22:42:18,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:42:18,674.674 INFO    ] Initializing speech engine...
[2026-06-27 22:42:18,678.678 INFO    ] 2026-06-27 22:42:18
[2026-06-27 22:42:18,885.885 INFO    ] 2026-06-27 22:42:18
[2026-06-27 22:42:18,913.913 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:42:19,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:42:19,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:42:19,235.235 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:42:19,294.294 INFO    ] time= 27/06/2026 22:42:19
[2026-06-27 22:42:19,327.327 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:42:19,333.333 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:42:19,400.400 INFO    ] No existing commands found in stream
[2026-06-27 22:42:24,409.409 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:42:24,412.412 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-27 22:42:26,207.207 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 22:42:26,210.210 INFO    ] Checking for system updates...
[2026-06-27 22:42:26,251.251 INFO    ] 200
[2026-06-27 22:42:26,253.253 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:42:26,304.304 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:42:26,306.306 INFO    ] No update needed
[2026-06-27 22:42:26,307.307 INFO    ] Checking for camera pi updates...
[2026-06-27 22:42:26,327.327 INFO    ] 200
[2026-06-27 22:42:26,328.328 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:42:26,353.353 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:42:26,404.404 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:42:26,405.405 INFO    ] No camera update needed
[2026-06-27 22:42:26,407.407 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:42:26,408.408 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:42:26,411.411 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:42:26,414.414 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:42:28,454.454 INFO    ] ================================================
[2026-06-27 22:42:28,470.470 INFO    ] Launching Daemon at Sat Jun 27 22:42:28 IST 2026
[2026-06-27 22:42:28,482.482 INFO    ] ================================================
[2026-06-27 22:42:28,810.810 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:42:28
[2026-06-27 22:42:29,122.122 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:42:29,257.257 INFO    ] Initializing speech engine...
[2026-06-27 22:42:29,266.266 INFO    ] 2026-06-27 22:42:29
[2026-06-27 22:42:29,484.484 INFO    ] 2026-06-27 22:42:29
[2026-06-27 22:42:29,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:42:29,701.701 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:42:29,710.710 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:42:29,855.855 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:42:29,909.909 INFO    ] time= 27/06/2026 22:42:29
[2026-06-27 22:42:29,931.931 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:42:29,937.937 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:42:30,002.002 INFO    ] No existing commands found in stream
[2026-06-27 22:42:35,013.013 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:42:35,016.016 INFO    ] Waiting 2.20 seconds before fallback handling...
[2026-06-27 22:42:37,615.615 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:42:37,616.616 INFO    ] Checking for system updates...
[2026-06-27 22:42:37,638.638 INFO    ] 200
[2026-06-27 22:42:37,639.639 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:42:37,673.673 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:42:37,674.674 INFO    ] No update needed
[2026-06-27 22:42:37,676.676 INFO    ] Checking for camera pi updates...
[2026-06-27 22:42:37,696.696 INFO    ] 200
[2026-06-27 22:42:37,697.697 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:42:37,721.721 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:42:37,766.766 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:42:37,767.767 INFO    ] No camera update needed
[2026-06-27 22:42:37,768.768 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:42:37,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:42:37,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:42:37,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:42:39,815.815 INFO    ] ================================================
[2026-06-27 22:42:39,830.830 INFO    ] Launching Daemon at Sat Jun 27 22:42:39 IST 2026
[2026-06-27 22:42:39,841.841 INFO    ] ================================================
[2026-06-27 22:42:40,207.207 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:42:40
[2026-06-27 22:42:40,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:42:40,706.706 INFO    ] Initializing speech engine...
[2026-06-27 22:42:40,710.710 INFO    ] 2026-06-27 22:42:40
[2026-06-27 22:42:40,918.918 INFO    ] 2026-06-27 22:42:40
[2026-06-27 22:42:40,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:42:41,131.131 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:42:41,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:42:41,269.269 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:42:41,334.334 INFO    ] time= 27/06/2026 22:42:41
[2026-06-27 22:42:41,361.361 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:42:41,367.367 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:42:41,434.434 INFO    ] No existing commands found in stream
[2026-06-27 22:42:46,449.449 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:42:46,452.452 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-27 22:42:48,818.818 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:42:48,820.820 INFO    ] Checking for system updates...
[2026-06-27 22:42:48,842.842 INFO    ] 200
[2026-06-27 22:42:48,844.844 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:42:48,875.875 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:42:48,876.876 INFO    ] No update needed
[2026-06-27 22:42:48,878.878 INFO    ] Checking for camera pi updates...
[2026-06-27 22:42:48,897.897 INFO    ] 200
[2026-06-27 22:42:48,898.898 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:42:48,921.921 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:42:48,971.971 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:42:48,972.972 INFO    ] No camera update needed
[2026-06-27 22:42:48,974.974 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:42:48,975.975 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:42:48,978.978 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:42:48,981.981 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:42:51,020.020 INFO    ] ================================================
[2026-06-27 22:42:51,035.035 INFO    ] Launching Daemon at Sat Jun 27 22:42:51 IST 2026
[2026-06-27 22:42:51,045.045 INFO    ] ================================================
[2026-06-27 22:42:51,396.396 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:42:51
[2026-06-27 22:42:51,739.739 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:42:51,891.891 INFO    ] Initializing speech engine...
[2026-06-27 22:42:51,897.897 INFO    ] 2026-06-27 22:42:51
[2026-06-27 22:42:52,112.112 INFO    ] 2026-06-27 22:42:52
[2026-06-27 22:42:52,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:42:52,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:42:52,343.343 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:42:52,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:42:52,565.565 INFO    ] time= 27/06/2026 22:42:52
[2026-06-27 22:42:52,571.571 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:42:52,573.573 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:42:52,641.641 INFO    ] No existing commands found in stream
[2026-06-27 22:42:57,647.647 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:42:57,650.650 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-27 22:43:01,713.713 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 22:43:01,714.714 INFO    ] Checking for system updates...
[2026-06-27 22:43:01,738.738 INFO    ] 200
[2026-06-27 22:43:01,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:43:01,770.770 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:43:01,771.771 INFO    ] No update needed
[2026-06-27 22:43:01,772.772 INFO    ] Checking for camera pi updates...
[2026-06-27 22:43:01,794.794 INFO    ] 200
[2026-06-27 22:43:01,795.795 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:43:01,819.819 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:43:01,912.912 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:43:01,919.919 INFO    ] No camera update needed
[2026-06-27 22:43:01,922.922 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:43:01,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:43:01,933.933 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:43:01,939.939 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:43:03,974.974 INFO    ] ================================================
[2026-06-27 22:43:03,989.989 INFO    ] Launching Daemon at Sat Jun 27 22:43:03 IST 2026
[2026-06-27 22:43:04,000.000 INFO    ] ================================================
[2026-06-27 22:43:04,355.355 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:43:04
[2026-06-27 22:43:04,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:43:04,816.816 INFO    ] Initializing speech engine...
[2026-06-27 22:43:04,821.821 INFO    ] 2026-06-27 22:43:04
[2026-06-27 22:43:05,026.026 INFO    ] 2026-06-27 22:43:05
[2026-06-27 22:43:05,055.055 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:43:05,238.238 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:43:05,248.248 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:43:05,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:43:05,435.435 INFO    ] time= 27/06/2026 22:43:05
[2026-06-27 22:43:05,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:43:05,473.473 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:43:05,546.546 INFO    ] No existing commands found in stream
[2026-06-27 22:43:10,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:43:10,558.558 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-27 22:43:11,598.598 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 22:43:11,599.599 INFO    ] Checking for system updates...
[2026-06-27 22:43:11,620.620 INFO    ] 200
[2026-06-27 22:43:11,622.622 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:43:11,652.652 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:43:11,653.653 INFO    ] No update needed
[2026-06-27 22:43:11,655.655 INFO    ] Checking for camera pi updates...
[2026-06-27 22:43:11,675.675 INFO    ] 200
[2026-06-27 22:43:11,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:43:11,701.701 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:43:11,744.744 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:43:11,746.746 INFO    ] No camera update needed
[2026-06-27 22:43:11,747.747 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:43:11,748.748 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:43:11,751.751 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:43:11,754.754 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:43:13,794.794 INFO    ] ================================================
[2026-06-27 22:43:13,809.809 INFO    ] Launching Daemon at Sat Jun 27 22:43:13 IST 2026
[2026-06-27 22:43:13,820.820 INFO    ] ================================================
[2026-06-27 22:43:14,151.151 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:43:14
[2026-06-27 22:43:14,464.464 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:43:14,602.602 INFO    ] Initializing speech engine...
[2026-06-27 22:43:14,609.609 INFO    ] 2026-06-27 22:43:14
[2026-06-27 22:43:14,835.835 INFO    ] 2026-06-27 22:43:14
[2026-06-27 22:43:14,866.866 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:43:15,068.068 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:43:15,076.076 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:43:15,214.214 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:43:15,277.277 INFO    ] time= 27/06/2026 22:43:15
[2026-06-27 22:43:15,317.317 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:43:15,332.332 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:43:15,444.444 INFO    ] No existing commands found in stream
[2026-06-27 22:43:20,454.454 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:43:20,457.457 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-27 22:43:22,663.663 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 22:43:22,665.665 INFO    ] Checking for system updates...
[2026-06-27 22:43:22,686.686 INFO    ] 200
[2026-06-27 22:43:22,687.687 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:43:22,720.720 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:43:22,722.722 INFO    ] No update needed
[2026-06-27 22:43:22,723.723 INFO    ] Checking for camera pi updates...
[2026-06-27 22:43:22,746.746 INFO    ] 200
[2026-06-27 22:43:22,747.747 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:43:22,771.771 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:43:22,815.815 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:43:22,817.817 INFO    ] No camera update needed
[2026-06-27 22:43:22,818.818 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:43:22,820.820 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:43:22,823.823 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:43:22,826.826 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:43:24,864.864 INFO    ] ================================================
[2026-06-27 22:43:24,965.965 INFO    ] Launching Daemon at Sat Jun 27 22:43:24 IST 2026
[2026-06-27 22:43:24,976.976 INFO    ] ================================================
[2026-06-27 22:43:25,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:43:25
[2026-06-27 22:43:25,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:43:25,869.869 INFO    ] Initializing speech engine...
[2026-06-27 22:43:25,873.873 INFO    ] 2026-06-27 22:43:25
[2026-06-27 22:43:26,081.081 INFO    ] 2026-06-27 22:43:26
[2026-06-27 22:43:26,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:43:26,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:43:26,306.306 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:43:26,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:43:26,500.500 INFO    ] time= 27/06/2026 22:43:26
[2026-06-27 22:43:26,524.524 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:43:26,529.529 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:43:26,597.597 INFO    ] No existing commands found in stream
[2026-06-27 22:43:31,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:43:31,609.609 INFO    ] Waiting 3.93 seconds before fallback handling...
[2026-06-27 22:43:35,954.954 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:43:35,955.955 INFO    ] Checking for system updates...
[2026-06-27 22:43:35,977.977 INFO    ] 200
[2026-06-27 22:43:35,978.978 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:43:36,011.011 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:43:36,013.013 INFO    ] No update needed
[2026-06-27 22:43:36,014.014 INFO    ] Checking for camera pi updates...
[2026-06-27 22:43:36,038.038 INFO    ] 200
[2026-06-27 22:43:36,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:43:36,066.066 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:43:36,112.112 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:43:36,114.114 INFO    ] No camera update needed
[2026-06-27 22:43:36,115.115 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:43:36,117.117 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:43:36,120.120 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:43:36,123.123 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:43:38,161.161 INFO    ] ================================================
[2026-06-27 22:43:38,177.177 INFO    ] Launching Daemon at Sat Jun 27 22:43:38 IST 2026
[2026-06-27 22:43:38,188.188 INFO    ] ================================================
[2026-06-27 22:43:38,556.556 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:43:38
[2026-06-27 22:43:38,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:43:38,998.998 INFO    ] Initializing speech engine...
[2026-06-27 22:43:39,002.002 INFO    ] 2026-06-27 22:43:38
[2026-06-27 22:43:39,218.218 INFO    ] 2026-06-27 22:43:39
[2026-06-27 22:43:39,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:43:39,430.430 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:43:39,439.439 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:43:39,579.579 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:43:39,635.635 INFO    ] time= 27/06/2026 22:43:39
[2026-06-27 22:43:39,659.659 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:43:39,664.664 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:43:39,730.730 INFO    ] No existing commands found in stream
[2026-06-27 22:43:44,740.740 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:43:44,743.743 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-27 22:43:46,975.975 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 22:43:46,977.977 INFO    ] Checking for system updates...
[2026-06-27 22:43:46,997.997 INFO    ] 200
[2026-06-27 22:43:46,999.999 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:43:47,029.029 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:43:47,030.030 INFO    ] No update needed
[2026-06-27 22:43:47,031.031 INFO    ] Checking for camera pi updates...
[2026-06-27 22:43:47,051.051 INFO    ] 200
[2026-06-27 22:43:47,052.052 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:43:47,075.075 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:43:47,119.119 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:43:47,121.121 INFO    ] No camera update needed
[2026-06-27 22:43:47,122.122 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:43:47,123.123 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:43:47,126.126 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:43:47,129.129 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:43:49,170.170 INFO    ] ================================================
[2026-06-27 22:43:49,186.186 INFO    ] Launching Daemon at Sat Jun 27 22:43:49 IST 2026
[2026-06-27 22:43:49,196.196 INFO    ] ================================================
[2026-06-27 22:43:49,564.564 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:43:49
[2026-06-27 22:43:49,877.877 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:43:50,021.021 INFO    ] Initializing speech engine...
[2026-06-27 22:43:50,027.027 INFO    ] 2026-06-27 22:43:50
[2026-06-27 22:43:50,241.241 INFO    ] 2026-06-27 22:43:50
[2026-06-27 22:43:50,271.271 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:43:50,396.396 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:43:50,459.459 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:43:50,595.595 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:43:50,656.656 INFO    ] time= 27/06/2026 22:43:50
[2026-06-27 22:43:50,691.691 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:43:50,696.696 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:43:50,768.768 INFO    ] No existing commands found in stream
[2026-06-27 22:43:55,777.777 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:43:55,780.780 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-27 22:43:56,517.517 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:43:56,519.519 INFO    ] Checking for system updates...
[2026-06-27 22:43:56,541.541 INFO    ] 200
[2026-06-27 22:43:56,542.542 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:43:56,573.573 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:43:56,574.574 INFO    ] No update needed
[2026-06-27 22:43:56,575.575 INFO    ] Checking for camera pi updates...
[2026-06-27 22:43:56,595.595 INFO    ] 200
[2026-06-27 22:43:56,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:43:56,619.619 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:43:56,667.667 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:43:56,669.669 INFO    ] No camera update needed
[2026-06-27 22:43:56,670.670 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:43:56,671.671 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:43:56,674.674 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:43:56,677.677 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:43:58,715.715 INFO    ] ================================================
[2026-06-27 22:43:58,731.731 INFO    ] Launching Daemon at Sat Jun 27 22:43:58 IST 2026
[2026-06-27 22:43:58,742.742 INFO    ] ================================================
[2026-06-27 22:43:59,123.123 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:43:59
[2026-06-27 22:43:59,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:43:59,622.622 INFO    ] Initializing speech engine...
[2026-06-27 22:43:59,626.626 INFO    ] 2026-06-27 22:43:59
[2026-06-27 22:43:59,835.835 INFO    ] 2026-06-27 22:43:59
[2026-06-27 22:43:59,865.865 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:44:00,044.044 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:44:00,053.053 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:44:00,216.216 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:44:00,260.260 INFO    ] time= 27/06/2026 22:44:00
[2026-06-27 22:44:00,282.282 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:44:00,288.288 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:44:00,355.355 INFO    ] No existing commands found in stream
[2026-06-27 22:44:05,366.366 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:44:05,370.370 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-27 22:44:09,644.644 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:44:09,646.646 INFO    ] Checking for system updates...
[2026-06-27 22:44:09,667.667 INFO    ] 200
[2026-06-27 22:44:09,668.668 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:44:09,699.699 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:44:09,700.700 INFO    ] No update needed
[2026-06-27 22:44:09,702.702 INFO    ] Checking for camera pi updates...
[2026-06-27 22:44:09,737.737 INFO    ] 200
[2026-06-27 22:44:09,739.739 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:44:09,782.782 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:44:09,829.829 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:44:09,830.830 INFO    ] No camera update needed
[2026-06-27 22:44:09,832.832 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:44:09,833.833 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:44:09,837.837 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:44:09,840.840 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:44:11,879.879 INFO    ] ================================================
[2026-06-27 22:44:11,895.895 INFO    ] Launching Daemon at Sat Jun 27 22:44:11 IST 2026
[2026-06-27 22:44:11,905.905 INFO    ] ================================================
[2026-06-27 22:44:12,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:44:12
[2026-06-27 22:44:12,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:44:12,725.725 INFO    ] Initializing speech engine...
[2026-06-27 22:44:12,730.730 INFO    ] 2026-06-27 22:44:12
[2026-06-27 22:44:12,935.935 INFO    ] 2026-06-27 22:44:12
[2026-06-27 22:44:12,963.963 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:44:13,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:44:13,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:44:13,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:44:13,374.374 INFO    ] time= 27/06/2026 22:44:13
[2026-06-27 22:44:13,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:44:13,381.381 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:44:13,471.471 INFO    ] No existing commands found in stream
[2026-06-27 22:44:18,485.485 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:44:18,488.488 INFO    ] Waiting 2.74 seconds before fallback handling...
[2026-06-27 22:44:21,655.655 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 22:44:21,657.657 INFO    ] Checking for system updates...
[2026-06-27 22:44:21,677.677 INFO    ] 200
[2026-06-27 22:44:21,679.679 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:44:21,709.709 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:44:21,710.710 INFO    ] No update needed
[2026-06-27 22:44:21,711.711 INFO    ] Checking for camera pi updates...
[2026-06-27 22:44:21,732.732 INFO    ] 200
[2026-06-27 22:44:21,734.734 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:44:21,757.757 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:44:21,811.811 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:44:21,813.813 INFO    ] No camera update needed
[2026-06-27 22:44:21,814.814 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:44:21,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:44:21,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:44:21,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:44:23,862.862 INFO    ] ================================================
[2026-06-27 22:44:23,877.877 INFO    ] Launching Daemon at Sat Jun 27 22:44:23 IST 2026
[2026-06-27 22:44:23,888.888 INFO    ] ================================================
[2026-06-27 22:44:24,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:44:24
[2026-06-27 22:44:24,545.545 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:44:24,678.678 INFO    ] Initializing speech engine...
[2026-06-27 22:44:24,690.690 INFO    ] 2026-06-27 22:44:24
[2026-06-27 22:44:24,897.897 INFO    ] 2026-06-27 22:44:24
[2026-06-27 22:44:24,927.927 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:44:25,049.049 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:44:25,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:44:25,251.251 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:44:25,317.317 INFO    ] time= 27/06/2026 22:44:25
[2026-06-27 22:44:25,341.341 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:44:25,347.347 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:44:25,414.414 INFO    ] No existing commands found in stream
[2026-06-27 22:44:30,422.422 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:44:30,425.425 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-27 22:44:32,600.600 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:44:32,601.601 INFO    ] Checking for system updates...
[2026-06-27 22:44:32,624.624 INFO    ] 200
[2026-06-27 22:44:32,626.626 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:44:32,657.657 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:44:32,659.659 INFO    ] No update needed
[2026-06-27 22:44:32,660.660 INFO    ] Checking for camera pi updates...
[2026-06-27 22:44:32,681.681 INFO    ] 200
[2026-06-27 22:44:32,683.683 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:44:32,708.708 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:44:32,735.735 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:44:32,736.736 INFO    ] No camera update needed
[2026-06-27 22:44:32,738.738 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:44:32,739.739 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:44:32,742.742 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:44:32,746.746 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:44:34,786.786 INFO    ] ================================================
[2026-06-27 22:44:34,802.802 INFO    ] Launching Daemon at Sat Jun 27 22:44:34 IST 2026
[2026-06-27 22:44:34,813.813 INFO    ] ================================================
[2026-06-27 22:44:35,141.141 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:44:35
[2026-06-27 22:44:35,454.454 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:44:35,588.588 INFO    ] Initializing speech engine...
[2026-06-27 22:44:35,591.591 INFO    ] 2026-06-27 22:44:35
[2026-06-27 22:44:35,794.794 INFO    ] 2026-06-27 22:44:35
[2026-06-27 22:44:35,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:44:35,989.989 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:44:36,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:44:36,199.199 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:44:36,257.257 INFO    ] time= 27/06/2026 22:44:36
[2026-06-27 22:44:36,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:44:36,313.313 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:44:36,385.385 INFO    ] No existing commands found in stream
[2026-06-27 22:44:41,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:44:41,398.398 INFO    ] Waiting 3.25 seconds before fallback handling...
[2026-06-27 22:44:45,161.161 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:44:45,162.162 INFO    ] Checking for system updates...
[2026-06-27 22:44:45,183.183 INFO    ] 200
[2026-06-27 22:44:45,184.184 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:44:45,215.215 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:44:45,216.216 INFO    ] No update needed
[2026-06-27 22:44:45,218.218 INFO    ] Checking for camera pi updates...
[2026-06-27 22:44:45,237.237 INFO    ] 200
[2026-06-27 22:44:45,238.238 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:44:45,267.267 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:44:45,310.310 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:44:45,311.311 INFO    ] No camera update needed
[2026-06-27 22:44:45,312.312 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:44:45,314.314 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:44:45,317.317 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:44:45,320.320 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:44:47,360.360 INFO    ] ================================================
[2026-06-27 22:44:47,376.376 INFO    ] Launching Daemon at Sat Jun 27 22:44:47 IST 2026
[2026-06-27 22:44:47,387.387 INFO    ] ================================================
[2026-06-27 22:44:47,757.757 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:44:47
[2026-06-27 22:44:48,076.076 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:44:48,211.211 INFO    ] Initializing speech engine...
[2026-06-27 22:44:48,214.214 INFO    ] 2026-06-27 22:44:48
[2026-06-27 22:44:48,409.409 INFO    ] 2026-06-27 22:44:48
[2026-06-27 22:44:48,454.454 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:44:48,613.613 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:44:48,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:44:48,772.772 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:44:48,824.824 INFO    ] time= 27/06/2026 22:44:48
[2026-06-27 22:44:48,832.832 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:44:48,888.888 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:44:49,014.014 INFO    ] No existing commands found in stream
[2026-06-27 22:44:54,025.025 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:44:54,027.027 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-27 22:44:58,227.227 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 22:44:58,229.229 INFO    ] Checking for system updates...
[2026-06-27 22:44:58,250.250 INFO    ] 200
[2026-06-27 22:44:58,251.251 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:44:58,284.284 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:44:58,286.286 INFO    ] No update needed
[2026-06-27 22:44:58,287.287 INFO    ] Checking for camera pi updates...
[2026-06-27 22:44:58,309.309 INFO    ] 200
[2026-06-27 22:44:58,311.311 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:44:58,335.335 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:44:58,377.377 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:44:58,378.378 INFO    ] No camera update needed
[2026-06-27 22:44:58,380.380 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:44:58,381.381 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:44:58,384.384 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:44:58,387.387 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:45:00,427.427 INFO    ] ================================================
[2026-06-27 22:45:00,444.444 INFO    ] Launching Daemon at Sat Jun 27 22:45:00 IST 2026
[2026-06-27 22:45:00,454.454 INFO    ] ================================================
[2026-06-27 22:45:00,809.809 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:45:00
[2026-06-27 22:45:01,152.152 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:45:01,371.371 INFO    ] Initializing speech engine...
[2026-06-27 22:45:01,381.381 INFO    ] 2026-06-27 22:45:01
[2026-06-27 22:45:01,964.964 INFO    ] 2026-06-27 22:45:01
[2026-06-27 22:45:01,997.997 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:45:02,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:45:02,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:45:02,380.380 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:45:02,453.453 INFO    ] time= 27/06/2026 22:45:02
[2026-06-27 22:45:02,498.498 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:45:02,505.505 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:45:02,605.605 INFO    ] No existing commands found in stream
[2026-06-27 22:45:07,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:45:07,618.618 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-27 22:45:08,858.858 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:45:08,860.860 INFO    ] Checking for system updates...
[2026-06-27 22:45:08,881.881 INFO    ] 200
[2026-06-27 22:45:08,883.883 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:45:08,913.913 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:45:08,915.915 INFO    ] No update needed
[2026-06-27 22:45:08,916.916 INFO    ] Checking for camera pi updates...
[2026-06-27 22:45:08,936.936 INFO    ] 200
[2026-06-27 22:45:08,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:45:08,961.961 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:45:09,003.003 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:45:09,005.005 INFO    ] No camera update needed
[2026-06-27 22:45:09,006.006 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:45:09,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:45:09,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:45:09,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:45:11,055.055 INFO    ] ================================================
[2026-06-27 22:45:11,071.071 INFO    ] Launching Daemon at Sat Jun 27 22:45:11 IST 2026
[2026-06-27 22:45:11,082.082 INFO    ] ================================================
[2026-06-27 22:45:11,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:45:11
[2026-06-27 22:45:11,731.731 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:45:11,864.864 INFO    ] Initializing speech engine...
[2026-06-27 22:45:11,867.867 INFO    ] 2026-06-27 22:45:11
[2026-06-27 22:45:12,087.087 INFO    ] 2026-06-27 22:45:12
[2026-06-27 22:45:12,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:45:12,305.305 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:45:12,314.314 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:45:12,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:45:12,516.516 INFO    ] time= 27/06/2026 22:45:12
[2026-06-27 22:45:12,538.538 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:45:12,544.544 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:45:12,612.612 INFO    ] No existing commands found in stream
[2026-06-27 22:45:17,621.621 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:45:17,624.624 INFO    ] Waiting 2.73 seconds before fallback handling...
[2026-06-27 22:45:20,731.731 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:45:20,733.733 INFO    ] Checking for system updates...
[2026-06-27 22:45:20,754.754 INFO    ] 200
[2026-06-27 22:45:20,755.755 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:45:20,788.788 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:45:20,789.789 INFO    ] No update needed
[2026-06-27 22:45:20,791.791 INFO    ] Checking for camera pi updates...
[2026-06-27 22:45:20,810.810 INFO    ] 200
[2026-06-27 22:45:20,811.811 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:45:20,837.837 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:45:20,878.878 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:45:20,880.880 INFO    ] No camera update needed
[2026-06-27 22:45:20,881.881 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:45:20,882.882 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:45:20,885.885 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:45:20,888.888 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:45:22,928.928 INFO    ] ================================================
[2026-06-27 22:45:22,944.944 INFO    ] Launching Daemon at Sat Jun 27 22:45:22 IST 2026
[2026-06-27 22:45:22,956.956 INFO    ] ================================================
[2026-06-27 22:45:23,330.330 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:45:23
[2026-06-27 22:45:23,647.647 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:45:23,783.783 INFO    ] Initializing speech engine...
[2026-06-27 22:45:23,786.786 INFO    ] 2026-06-27 22:45:23
[2026-06-27 22:45:24,018.018 INFO    ] 2026-06-27 22:45:23
[2026-06-27 22:45:24,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:45:24,251.251 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:45:24,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:45:24,404.404 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:45:24,473.473 INFO    ] time= 27/06/2026 22:45:24
[2026-06-27 22:45:24,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:45:24,504.504 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:45:24,583.583 INFO    ] No existing commands found in stream
[2026-06-27 22:45:29,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:45:29,596.596 INFO    ] Waiting 3.65 seconds before fallback handling...
[2026-06-27 22:45:33,671.671 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:45:33,673.673 INFO    ] Checking for system updates...
[2026-06-27 22:45:33,694.694 INFO    ] 200
[2026-06-27 22:45:33,695.695 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:45:33,726.726 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:45:33,727.727 INFO    ] No update needed
[2026-06-27 22:45:33,728.728 INFO    ] Checking for camera pi updates...
[2026-06-27 22:45:33,748.748 INFO    ] 200
[2026-06-27 22:45:33,749.749 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:45:33,773.773 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:45:33,821.821 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:45:33,823.823 INFO    ] No camera update needed
[2026-06-27 22:45:33,824.824 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:45:33,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:45:33,828.828 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:45:33,831.831 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:45:35,869.869 INFO    ] ================================================
[2026-06-27 22:45:35,885.885 INFO    ] Launching Daemon at Sat Jun 27 22:45:35 IST 2026
[2026-06-27 22:45:35,896.896 INFO    ] ================================================
[2026-06-27 22:45:36,234.234 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:45:36
[2026-06-27 22:45:36,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:45:36,690.690 INFO    ] Initializing speech engine...
[2026-06-27 22:45:36,700.700 INFO    ] 2026-06-27 22:45:36
[2026-06-27 22:45:36,906.906 INFO    ] 2026-06-27 22:45:36
[2026-06-27 22:45:36,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:45:37,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:45:37,130.130 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:45:37,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:45:37,325.325 INFO    ] time= 27/06/2026 22:45:37
[2026-06-27 22:45:37,349.349 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:45:37,355.355 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:45:37,422.422 INFO    ] No existing commands found in stream
[2026-06-27 22:45:42,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:45:42,434.434 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-27 22:45:44,386.386 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:45:44,387.387 INFO    ] Checking for system updates...
[2026-06-27 22:45:44,408.408 INFO    ] 200
[2026-06-27 22:45:44,409.409 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:45:44,445.445 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:45:44,447.447 INFO    ] No update needed
[2026-06-27 22:45:44,448.448 INFO    ] Checking for camera pi updates...
[2026-06-27 22:45:44,467.467 INFO    ] 200
[2026-06-27 22:45:44,468.468 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:45:44,493.493 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:45:44,633.633 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:45:44,634.634 INFO    ] No camera update needed
[2026-06-27 22:45:44,635.635 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:45:44,637.637 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:45:44,640.640 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:45:44,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:45:46,684.684 INFO    ] ================================================
[2026-06-27 22:45:46,700.700 INFO    ] Launching Daemon at Sat Jun 27 22:45:46 IST 2026
[2026-06-27 22:45:46,711.711 INFO    ] ================================================
[2026-06-27 22:45:47,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:45:47
[2026-06-27 22:45:47,398.398 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:45:47,528.528 INFO    ] Initializing speech engine...
[2026-06-27 22:45:47,533.533 INFO    ] 2026-06-27 22:45:47
[2026-06-27 22:45:47,754.754 INFO    ] 2026-06-27 22:45:47
[2026-06-27 22:45:47,782.782 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:45:47,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:45:47,969.969 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:45:48,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:45:48,164.164 INFO    ] time= 27/06/2026 22:45:48
[2026-06-27 22:45:48,198.198 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:45:48,215.215 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:45:48,293.293 INFO    ] No existing commands found in stream
[2026-06-27 22:45:53,302.302 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:45:53,305.305 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-27 22:45:54,014.014 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:45:54,016.016 INFO    ] Checking for system updates...
[2026-06-27 22:45:54,038.038 INFO    ] 200
[2026-06-27 22:45:54,039.039 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:45:54,071.071 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:45:54,072.072 INFO    ] No update needed
[2026-06-27 22:45:54,073.073 INFO    ] Checking for camera pi updates...
[2026-06-27 22:45:54,094.094 INFO    ] 200
[2026-06-27 22:45:54,095.095 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:45:54,118.118 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:45:54,165.165 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:45:54,167.167 INFO    ] No camera update needed
[2026-06-27 22:45:54,168.168 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:45:54,169.169 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:45:54,172.172 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:45:54,175.175 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:45:56,216.216 INFO    ] ================================================
[2026-06-27 22:45:56,232.232 INFO    ] Launching Daemon at Sat Jun 27 22:45:56 IST 2026
[2026-06-27 22:45:56,244.244 INFO    ] ================================================
[2026-06-27 22:45:56,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:45:56
[2026-06-27 22:45:56,961.961 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:45:57,114.114 INFO    ] Initializing speech engine...
[2026-06-27 22:45:57,119.119 INFO    ] 2026-06-27 22:45:57
[2026-06-27 22:45:57,330.330 INFO    ] 2026-06-27 22:45:57
[2026-06-27 22:45:57,360.360 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:45:57,545.545 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:45:57,555.555 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:45:57,703.703 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:45:57,757.757 INFO    ] time= 27/06/2026 22:45:57
[2026-06-27 22:45:57,780.780 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:45:57,787.787 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:45:57,855.855 INFO    ] No existing commands found in stream
[2026-06-27 22:46:02,865.865 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:46:02,867.867 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-27 22:46:03,567.567 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 22:46:03,570.570 INFO    ] Checking for system updates...
[2026-06-27 22:46:03,606.606 INFO    ] 200
[2026-06-27 22:46:03,608.608 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:46:03,662.662 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:46:03,665.665 INFO    ] No update needed
[2026-06-27 22:46:03,667.667 INFO    ] Checking for camera pi updates...
[2026-06-27 22:46:03,690.690 INFO    ] 200
[2026-06-27 22:46:03,691.691 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:46:03,718.718 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:46:03,743.743 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:46:03,745.745 INFO    ] No camera update needed
[2026-06-27 22:46:03,746.746 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:46:03,747.747 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:46:03,750.750 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:46:03,753.753 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:46:05,792.792 INFO    ] ================================================
[2026-06-27 22:46:05,808.808 INFO    ] Launching Daemon at Sat Jun 27 22:46:05 IST 2026
[2026-06-27 22:46:05,819.819 INFO    ] ================================================
[2026-06-27 22:46:06,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:46:06
[2026-06-27 22:46:06,508.508 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:46:06,645.645 INFO    ] Initializing speech engine...
[2026-06-27 22:46:06,653.653 INFO    ] 2026-06-27 22:46:06
[2026-06-27 22:46:06,861.861 INFO    ] 2026-06-27 22:46:06
[2026-06-27 22:46:06,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:46:07,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:46:07,074.074 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:46:07,217.217 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:46:07,255.255 INFO    ] time= 27/06/2026 22:46:07
[2026-06-27 22:46:07,287.287 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:46:07,308.308 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:46:07,378.378 INFO    ] No existing commands found in stream
[2026-06-27 22:46:12,388.388 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:46:12,391.391 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-27 22:46:13,086.086 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 22:46:13,087.087 INFO    ] Checking for system updates...
[2026-06-27 22:46:13,110.110 INFO    ] 200
[2026-06-27 22:46:13,112.112 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:46:13,147.147 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:46:13,149.149 INFO    ] No update needed
[2026-06-27 22:46:13,150.150 INFO    ] Checking for camera pi updates...
[2026-06-27 22:46:13,174.174 INFO    ] 200
[2026-06-27 22:46:13,175.175 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:46:13,201.201 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:46:13,258.258 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:46:13,259.259 INFO    ] No camera update needed
[2026-06-27 22:46:13,260.260 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:46:13,262.262 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:46:13,265.265 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:46:13,268.268 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:46:15,309.309 INFO    ] ================================================
[2026-06-27 22:46:15,325.325 INFO    ] Launching Daemon at Sat Jun 27 22:46:15 IST 2026
[2026-06-27 22:46:15,336.336 INFO    ] ================================================
[2026-06-27 22:46:15,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:46:15
[2026-06-27 22:46:16,037.037 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:46:16,176.176 INFO    ] Initializing speech engine...
[2026-06-27 22:46:16,187.187 INFO    ] 2026-06-27 22:46:16
[2026-06-27 22:46:16,392.392 INFO    ] 2026-06-27 22:46:16
[2026-06-27 22:46:16,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:46:16,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:46:16,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:46:16,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:46:16,814.814 INFO    ] time= 27/06/2026 22:46:16
[2026-06-27 22:46:16,862.862 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:46:16,865.865 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:46:16,940.940 INFO    ] No existing commands found in stream
[2026-06-27 22:46:21,951.951 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:46:21,954.954 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-27 22:46:23,677.677 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 22:46:23,679.679 INFO    ] Checking for system updates...
[2026-06-27 22:46:23,700.700 INFO    ] 200
[2026-06-27 22:46:23,701.701 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:46:23,735.735 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:46:23,737.737 INFO    ] No update needed
[2026-06-27 22:46:23,738.738 INFO    ] Checking for camera pi updates...
[2026-06-27 22:46:23,757.757 INFO    ] 200
[2026-06-27 22:46:23,759.759 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:46:23,782.782 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:46:23,827.827 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:46:23,829.829 INFO    ] No camera update needed
[2026-06-27 22:46:23,830.830 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:46:23,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:46:23,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:46:23,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:46:25,875.875 INFO    ] ================================================
[2026-06-27 22:46:25,891.891 INFO    ] Launching Daemon at Sat Jun 27 22:46:25 IST 2026
[2026-06-27 22:46:25,902.902 INFO    ] ================================================
[2026-06-27 22:46:26,264.264 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:46:26
[2026-06-27 22:46:26,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:46:26,722.722 INFO    ] Initializing speech engine...
[2026-06-27 22:46:26,727.727 INFO    ] 2026-06-27 22:46:26
[2026-06-27 22:46:26,931.931 INFO    ] 2026-06-27 22:46:26
[2026-06-27 22:46:26,959.959 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:46:27,082.082 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:46:27,146.146 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:46:27,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:46:27,352.352 INFO    ] time= 27/06/2026 22:46:27
[2026-06-27 22:46:27,375.375 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:46:27,381.381 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:46:27,447.447 INFO    ] No existing commands found in stream
[2026-06-27 22:46:32,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:46:32,457.457 INFO    ] Waiting 0.46 seconds before fallback handling...
[2026-06-27 22:46:33,342.342 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:46:33,344.344 INFO    ] Checking for system updates...
[2026-06-27 22:46:33,365.365 INFO    ] 200
[2026-06-27 22:46:33,366.366 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:46:33,397.397 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:46:33,398.398 INFO    ] No update needed
[2026-06-27 22:46:33,399.399 INFO    ] Checking for camera pi updates...
[2026-06-27 22:46:33,420.420 INFO    ] 200
[2026-06-27 22:46:33,422.422 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:46:33,445.445 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:46:33,490.490 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:46:33,491.491 INFO    ] No camera update needed
[2026-06-27 22:46:33,492.492 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:46:33,493.493 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:46:33,497.497 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:46:33,499.499 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:46:35,538.538 INFO    ] ================================================
[2026-06-27 22:46:35,553.553 INFO    ] Launching Daemon at Sat Jun 27 22:46:35 IST 2026
[2026-06-27 22:46:35,565.565 INFO    ] ================================================
[2026-06-27 22:46:35,917.917 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:46:35
[2026-06-27 22:46:36,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:46:36,366.366 INFO    ] Initializing speech engine...
[2026-06-27 22:46:36,378.378 INFO    ] 2026-06-27 22:46:36
[2026-06-27 22:46:36,586.586 INFO    ] 2026-06-27 22:46:36
[2026-06-27 22:46:36,614.614 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:46:36,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:46:36,808.808 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:46:36,930.930 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:46:36,986.986 INFO    ] time= 27/06/2026 22:46:36
[2026-06-27 22:46:37,029.029 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:46:37,035.035 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:46:37,126.126 INFO    ] No existing commands found in stream
[2026-06-27 22:46:42,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:46:42,136.136 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-27 22:46:45,340.340 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 22:46:45,341.341 INFO    ] Checking for system updates...
[2026-06-27 22:46:45,362.362 INFO    ] 200
[2026-06-27 22:46:45,364.364 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:46:45,400.400 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:46:45,401.401 INFO    ] No update needed
[2026-06-27 22:46:45,402.402 INFO    ] Checking for camera pi updates...
[2026-06-27 22:46:45,422.422 INFO    ] 200
[2026-06-27 22:46:45,423.423 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:46:45,447.447 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:46:45,503.503 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:46:45,505.505 INFO    ] No camera update needed
[2026-06-27 22:46:45,506.506 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:46:45,507.507 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:46:45,510.510 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:46:45,513.513 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:46:47,551.551 INFO    ] ================================================
[2026-06-27 22:46:47,568.568 INFO    ] Launching Daemon at Sat Jun 27 22:46:47 IST 2026
[2026-06-27 22:46:47,579.579 INFO    ] ================================================
[2026-06-27 22:46:47,920.920 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:46:47
[2026-06-27 22:46:48,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:46:48,367.367 INFO    ] Initializing speech engine...
[2026-06-27 22:46:48,375.375 INFO    ] 2026-06-27 22:46:48
[2026-06-27 22:46:48,586.586 INFO    ] 2026-06-27 22:46:48
[2026-06-27 22:46:48,615.615 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:46:48,739.739 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:46:48,801.801 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:46:48,932.932 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:46:48,988.988 INFO    ] time= 27/06/2026 22:46:48
[2026-06-27 22:46:49,028.028 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:46:49,033.033 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:46:49,104.104 INFO    ] No existing commands found in stream
[2026-06-27 22:46:54,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:46:54,116.116 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-27 22:46:58,294.294 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 22:46:58,296.296 INFO    ] Checking for system updates...
[2026-06-27 22:46:58,316.316 INFO    ] 200
[2026-06-27 22:46:58,318.318 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:46:58,348.348 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:46:58,350.350 INFO    ] No update needed
[2026-06-27 22:46:58,351.351 INFO    ] Checking for camera pi updates...
[2026-06-27 22:46:58,371.371 INFO    ] 200
[2026-06-27 22:46:58,372.372 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:46:58,396.396 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:46:58,437.437 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:46:58,438.438 INFO    ] No camera update needed
[2026-06-27 22:46:58,440.440 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:46:58,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:46:58,444.444 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:46:58,447.447 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:47:00,485.485 INFO    ] ================================================
[2026-06-27 22:47:00,500.500 INFO    ] Launching Daemon at Sat Jun 27 22:47:00 IST 2026
[2026-06-27 22:47:00,510.510 INFO    ] ================================================
[2026-06-27 22:47:00,874.874 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:47:00
[2026-06-27 22:47:01,295.295 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:47:01,509.509 INFO    ] Initializing speech engine...
[2026-06-27 22:47:01,514.514 INFO    ] 2026-06-27 22:47:01
[2026-06-27 22:47:01,757.757 INFO    ] 2026-06-27 22:47:01
[2026-06-27 22:47:01,786.786 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:47:01,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:47:01,946.946 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:47:02,066.066 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:47:02,071.071 INFO    ] time= 27/06/2026 22:47:02
[2026-06-27 22:47:02,078.078 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:47:02,127.127 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:47:02,196.196 INFO    ] No existing commands found in stream
[2026-06-27 22:47:07,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:47:07,233.233 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-27 22:47:11,596.596 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:47:11,597.597 INFO    ] Checking for system updates...
[2026-06-27 22:47:11,618.618 INFO    ] 200
[2026-06-27 22:47:11,619.619 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:47:11,652.652 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:47:11,654.654 INFO    ] No update needed
[2026-06-27 22:47:11,655.655 INFO    ] Checking for camera pi updates...
[2026-06-27 22:47:11,676.676 INFO    ] 200
[2026-06-27 22:47:11,677.677 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:47:11,701.701 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:47:11,761.761 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:47:11,762.762 INFO    ] No camera update needed
[2026-06-27 22:47:11,764.764 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:47:11,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:47:11,769.769 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:47:11,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:47:13,811.811 INFO    ] ================================================
[2026-06-27 22:47:13,827.827 INFO    ] Launching Daemon at Sat Jun 27 22:47:13 IST 2026
[2026-06-27 22:47:13,838.838 INFO    ] ================================================
[2026-06-27 22:47:14,212.212 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:47:14
[2026-06-27 22:47:14,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:47:14,670.670 INFO    ] Initializing speech engine...
[2026-06-27 22:47:14,680.680 INFO    ] 2026-06-27 22:47:14
[2026-06-27 22:47:14,884.884 INFO    ] 2026-06-27 22:47:14
[2026-06-27 22:47:14,912.912 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:47:15,097.097 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:47:15,106.106 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:47:15,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:47:15,302.302 INFO    ] time= 27/06/2026 22:47:15
[2026-06-27 22:47:15,326.326 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:47:15,331.331 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:47:15,398.398 INFO    ] No existing commands found in stream
[2026-06-27 22:47:20,407.407 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:47:20,410.410 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-27 22:47:24,617.617 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:47:24,618.618 INFO    ] Checking for system updates...
[2026-06-27 22:47:24,639.639 INFO    ] 200
[2026-06-27 22:47:24,641.641 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:47:24,674.674 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:47:24,675.675 INFO    ] No update needed
[2026-06-27 22:47:24,677.677 INFO    ] Checking for camera pi updates...
[2026-06-27 22:47:24,696.696 INFO    ] 200
[2026-06-27 22:47:24,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:47:24,721.721 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:47:24,765.765 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:47:24,766.766 INFO    ] No camera update needed
[2026-06-27 22:47:24,768.768 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:47:24,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:47:24,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:47:24,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:47:26,815.815 INFO    ] ================================================
[2026-06-27 22:47:26,831.831 INFO    ] Launching Daemon at Sat Jun 27 22:47:26 IST 2026
[2026-06-27 22:47:26,841.841 INFO    ] ================================================
[2026-06-27 22:47:27,196.196 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:47:27
[2026-06-27 22:47:27,512.512 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:47:27,649.649 INFO    ] Initializing speech engine...
[2026-06-27 22:47:27,658.658 INFO    ] 2026-06-27 22:47:27
[2026-06-27 22:47:27,862.862 INFO    ] 2026-06-27 22:47:27
[2026-06-27 22:47:27,891.891 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:47:28,075.075 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:47:28,085.085 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:47:28,229.229 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:47:28,281.281 INFO    ] time= 27/06/2026 22:47:28
[2026-06-27 22:47:28,304.304 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:47:28,310.310 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:47:28,375.375 INFO    ] No existing commands found in stream
[2026-06-27 22:47:33,385.385 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:47:33,388.388 INFO    ] Waiting 0.40 seconds before fallback handling...
[2026-06-27 22:47:34,210.210 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:47:34,212.212 INFO    ] Checking for system updates...
[2026-06-27 22:47:34,233.233 INFO    ] 200
[2026-06-27 22:47:34,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:47:34,267.267 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:47:34,268.268 INFO    ] No update needed
[2026-06-27 22:47:34,270.270 INFO    ] Checking for camera pi updates...
[2026-06-27 22:47:34,289.289 INFO    ] 200
[2026-06-27 22:47:34,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:47:34,314.314 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:47:34,369.369 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:47:34,371.371 INFO    ] No camera update needed
[2026-06-27 22:47:34,372.372 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:47:34,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:47:34,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:47:34,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:47:36,418.418 INFO    ] ================================================
[2026-06-27 22:47:36,434.434 INFO    ] Launching Daemon at Sat Jun 27 22:47:36 IST 2026
[2026-06-27 22:47:36,445.445 INFO    ] ================================================
[2026-06-27 22:47:36,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:47:36
[2026-06-27 22:47:37,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:47:37,268.268 INFO    ] Initializing speech engine...
[2026-06-27 22:47:37,278.278 INFO    ] 2026-06-27 22:47:37
[2026-06-27 22:47:37,483.483 INFO    ] 2026-06-27 22:47:37
[2026-06-27 22:47:37,511.511 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:47:37,639.639 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:47:37,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:47:37,841.841 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:47:37,903.903 INFO    ] time= 27/06/2026 22:47:37
[2026-06-27 22:47:37,927.927 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:47:37,933.933 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:47:37,998.998 INFO    ] No existing commands found in stream
[2026-06-27 22:47:43,006.006 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:47:43,009.009 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-27 22:47:43,414.414 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 22:47:43,416.416 INFO    ] Checking for system updates...
[2026-06-27 22:47:43,437.437 INFO    ] 200
[2026-06-27 22:47:43,439.439 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:47:43,469.469 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:47:43,470.470 INFO    ] No update needed
[2026-06-27 22:47:43,471.471 INFO    ] Checking for camera pi updates...
[2026-06-27 22:47:43,491.491 INFO    ] 200
[2026-06-27 22:47:43,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:47:43,521.521 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:47:43,576.576 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:47:43,578.578 INFO    ] No camera update needed
[2026-06-27 22:47:43,579.579 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:47:43,580.580 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:47:43,583.583 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:47:43,586.586 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:47:45,624.624 INFO    ] ================================================
[2026-06-27 22:47:45,640.640 INFO    ] Launching Daemon at Sat Jun 27 22:47:45 IST 2026
[2026-06-27 22:47:45,652.652 INFO    ] ================================================
[2026-06-27 22:47:45,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:47:45
[2026-06-27 22:47:46,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:47:46,433.433 INFO    ] Initializing speech engine...
[2026-06-27 22:47:46,445.445 INFO    ] 2026-06-27 22:47:46
[2026-06-27 22:47:46,660.660 INFO    ] 2026-06-27 22:47:46
[2026-06-27 22:47:46,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:47:46,817.817 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:47:46,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:47:47,027.027 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:47:47,090.090 INFO    ] time= 27/06/2026 22:47:47
[2026-06-27 22:47:47,114.114 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:47:47,116.116 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:47:47,236.236 INFO    ] No existing commands found in stream
[2026-06-27 22:47:52,245.245 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:47:52,248.248 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-27 22:47:53,227.227 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:47:53,229.229 INFO    ] Checking for system updates...
[2026-06-27 22:47:53,250.250 INFO    ] 200
[2026-06-27 22:47:53,252.252 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:47:53,284.284 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:47:53,286.286 INFO    ] No update needed
[2026-06-27 22:47:53,287.287 INFO    ] Checking for camera pi updates...
[2026-06-27 22:47:53,306.306 INFO    ] 200
[2026-06-27 22:47:53,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:47:53,335.335 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:47:53,487.487 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:47:53,488.488 INFO    ] No camera update needed
[2026-06-27 22:47:53,489.489 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:47:53,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:47:53,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:47:53,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:47:55,535.535 INFO    ] ================================================
[2026-06-27 22:47:55,551.551 INFO    ] Launching Daemon at Sat Jun 27 22:47:55 IST 2026
[2026-06-27 22:47:55,562.562 INFO    ] ================================================
[2026-06-27 22:47:55,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:47:55
[2026-06-27 22:47:56,213.213 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:47:56,353.353 INFO    ] Initializing speech engine...
[2026-06-27 22:47:56,364.364 INFO    ] 2026-06-27 22:47:56
[2026-06-27 22:47:56,570.570 INFO    ] 2026-06-27 22:47:56
[2026-06-27 22:47:56,600.600 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:47:56,723.723 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:47:56,786.786 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:47:56,922.922 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:47:56,985.985 INFO    ] time= 27/06/2026 22:47:56
[2026-06-27 22:47:57,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:47:57,024.024 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:47:57,090.090 INFO    ] No existing commands found in stream
[2026-06-27 22:48:02,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:48:02,097.097 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-27 22:48:05,817.817 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:48:05,819.819 INFO    ] Checking for system updates...
[2026-06-27 22:48:05,842.842 INFO    ] 200
[2026-06-27 22:48:05,843.843 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:48:05,873.873 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:48:05,875.875 INFO    ] No update needed
[2026-06-27 22:48:05,877.877 INFO    ] Checking for camera pi updates...
[2026-06-27 22:48:05,897.897 INFO    ] 200
[2026-06-27 22:48:05,898.898 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:48:05,921.921 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:48:05,968.968 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:48:05,970.970 INFO    ] No camera update needed
[2026-06-27 22:48:05,971.971 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:48:05,973.973 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:48:05,976.976 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:48:05,979.979 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:48:08,010.010 INFO    ] ================================================
[2026-06-27 22:48:08,026.026 INFO    ] Launching Daemon at Sat Jun 27 22:48:08 IST 2026
[2026-06-27 22:48:08,037.037 INFO    ] ================================================
[2026-06-27 22:48:08,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:48:08
[2026-06-27 22:48:08,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:48:08,857.857 INFO    ] Initializing speech engine...
[2026-06-27 22:48:08,862.862 INFO    ] 2026-06-27 22:48:08
[2026-06-27 22:48:09,068.068 INFO    ] 2026-06-27 22:48:09
[2026-06-27 22:48:09,097.097 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:48:09,285.285 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:48:09,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:48:09,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:48:09,485.485 INFO    ] time= 27/06/2026 22:48:09
[2026-06-27 22:48:09,519.519 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:48:09,525.525 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:48:09,593.593 INFO    ] No existing commands found in stream
[2026-06-27 22:48:14,602.602 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:48:14,605.605 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-27 22:48:15,389.389 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:48:15,390.390 INFO    ] Checking for system updates...
[2026-06-27 22:48:15,411.411 INFO    ] 200
[2026-06-27 22:48:15,413.413 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:48:15,443.443 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:48:15,444.444 INFO    ] No update needed
[2026-06-27 22:48:15,446.446 INFO    ] Checking for camera pi updates...
[2026-06-27 22:48:15,466.466 INFO    ] 200
[2026-06-27 22:48:15,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:48:15,493.493 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:48:15,535.535 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:48:15,537.537 INFO    ] No camera update needed
[2026-06-27 22:48:15,538.538 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:48:15,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:48:15,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:48:15,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:48:17,583.583 INFO    ] ================================================
[2026-06-27 22:48:17,598.598 INFO    ] Launching Daemon at Sat Jun 27 22:48:17 IST 2026
[2026-06-27 22:48:17,610.610 INFO    ] ================================================
[2026-06-27 22:48:17,952.952 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:48:17
[2026-06-27 22:48:18,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:48:18,396.396 INFO    ] Initializing speech engine...
[2026-06-27 22:48:18,399.399 INFO    ] 2026-06-27 22:48:18
[2026-06-27 22:48:18,593.593 INFO    ] 2026-06-27 22:48:18
[2026-06-27 22:48:18,639.639 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:48:18,796.796 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:48:18,862.862 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:48:19,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:48:19,064.064 INFO    ] time= 27/06/2026 22:48:19
[2026-06-27 22:48:19,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:48:19,113.113 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:48:19,184.184 INFO    ] No existing commands found in stream
[2026-06-27 22:48:24,193.193 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:48:24,196.196 INFO    ] Waiting 2.00 seconds before fallback handling...
[2026-06-27 22:48:26,610.610 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 22:48:26,611.611 INFO    ] Checking for system updates...
[2026-06-27 22:48:26,633.633 INFO    ] 200
[2026-06-27 22:48:26,635.635 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:48:26,665.665 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:48:26,666.666 INFO    ] No update needed
[2026-06-27 22:48:26,667.667 INFO    ] Checking for camera pi updates...
[2026-06-27 22:48:26,689.689 INFO    ] 200
[2026-06-27 22:48:26,690.690 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:48:26,716.716 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:48:26,766.766 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:48:26,767.767 INFO    ] No camera update needed
[2026-06-27 22:48:26,768.768 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:48:26,770.770 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:48:26,773.773 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:48:26,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:48:28,813.813 INFO    ] ================================================
[2026-06-27 22:48:28,830.830 INFO    ] Launching Daemon at Sat Jun 27 22:48:28 IST 2026
[2026-06-27 22:48:28,841.841 INFO    ] ================================================
[2026-06-27 22:48:29,203.203 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:48:29
[2026-06-27 22:48:29,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:48:29,645.645 INFO    ] Initializing speech engine...
[2026-06-27 22:48:29,654.654 INFO    ] 2026-06-27 22:48:29
[2026-06-27 22:48:29,868.868 INFO    ] 2026-06-27 22:48:29
[2026-06-27 22:48:29,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:48:30,155.155 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:48:30,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:48:30,398.398 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:48:30,405.405 INFO    ] time= 27/06/2026 22:48:30
[2026-06-27 22:48:30,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:48:30,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:48:30,550.550 INFO    ] No existing commands found in stream
[2026-06-27 22:48:35,560.560 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:48:35,563.563 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-27 22:48:37,318.318 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:48:37,320.320 INFO    ] Checking for system updates...
[2026-06-27 22:48:37,341.341 INFO    ] 200
[2026-06-27 22:48:37,342.342 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:48:37,373.373 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:48:37,374.374 INFO    ] No update needed
[2026-06-27 22:48:37,376.376 INFO    ] Checking for camera pi updates...
[2026-06-27 22:48:37,396.396 INFO    ] 200
[2026-06-27 22:48:37,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:48:37,421.421 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:48:37,470.470 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:48:37,471.471 INFO    ] No camera update needed
[2026-06-27 22:48:37,473.473 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:48:37,474.474 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:48:37,477.477 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:48:37,480.480 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:48:39,512.512 INFO    ] ================================================
[2026-06-27 22:48:39,527.527 INFO    ] Launching Daemon at Sat Jun 27 22:48:39 IST 2026
[2026-06-27 22:48:39,539.539 INFO    ] ================================================
[2026-06-27 22:48:39,911.911 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:48:39
[2026-06-27 22:48:40,243.243 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:48:40,386.386 INFO    ] Initializing speech engine...
[2026-06-27 22:48:40,397.397 INFO    ] 2026-06-27 22:48:40
[2026-06-27 22:48:40,603.603 INFO    ] 2026-06-27 22:48:40
[2026-06-27 22:48:40,633.633 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:48:40,818.818 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:48:40,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:48:40,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:48:41,025.025 INFO    ] time= 27/06/2026 22:48:40
[2026-06-27 22:48:41,048.048 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:48:41,054.054 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:48:41,122.122 INFO    ] No existing commands found in stream
[2026-06-27 22:48:46,136.136 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:48:46,139.139 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-27 22:48:49,935.935 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 22:48:49,937.937 INFO    ] Checking for system updates...
[2026-06-27 22:48:49,958.958 INFO    ] 200
[2026-06-27 22:48:49,959.959 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:48:49,991.991 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:48:49,992.992 INFO    ] No update needed
[2026-06-27 22:48:49,994.994 INFO    ] Checking for camera pi updates...
[2026-06-27 22:48:50,014.014 INFO    ] 200
[2026-06-27 22:48:50,016.016 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:48:50,039.039 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:48:50,089.089 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:48:50,090.090 INFO    ] No camera update needed
[2026-06-27 22:48:50,092.092 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:48:50,093.093 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:48:50,096.096 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:48:50,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:48:52,139.139 INFO    ] ================================================
[2026-06-27 22:48:52,155.155 INFO    ] Launching Daemon at Sat Jun 27 22:48:52 IST 2026
[2026-06-27 22:48:52,166.166 INFO    ] ================================================
[2026-06-27 22:48:52,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:48:52
[2026-06-27 22:48:52,823.823 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:48:52,967.967 INFO    ] Initializing speech engine...
[2026-06-27 22:48:52,973.973 INFO    ] 2026-06-27 22:48:52
[2026-06-27 22:48:53,177.177 INFO    ] 2026-06-27 22:48:53
[2026-06-27 22:48:53,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:48:53,390.390 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:48:53,399.399 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:48:53,521.521 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:48:53,577.577 INFO    ] time= 27/06/2026 22:48:53
[2026-06-27 22:48:53,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:48:53,622.622 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:48:53,693.693 INFO    ] No existing commands found in stream
[2026-06-27 22:48:58,702.702 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:48:58,706.706 INFO    ] Waiting 2.94 seconds before fallback handling...
[2026-06-27 22:49:02,070.070 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 22:49:02,072.072 INFO    ] Checking for system updates...
[2026-06-27 22:49:02,099.099 INFO    ] 200
[2026-06-27 22:49:02,101.101 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:49:02,156.156 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:49:02,159.159 INFO    ] No update needed
[2026-06-27 22:49:02,161.161 INFO    ] Checking for camera pi updates...
[2026-06-27 22:49:02,193.193 INFO    ] 200
[2026-06-27 22:49:02,195.195 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:49:02,225.225 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:49:02,252.252 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:49:02,254.254 INFO    ] No camera update needed
[2026-06-27 22:49:02,255.255 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:49:02,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:49:02,261.261 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:49:02,265.265 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:49:04,304.304 INFO    ] ================================================
[2026-06-27 22:49:04,320.320 INFO    ] Launching Daemon at Sat Jun 27 22:49:04 IST 2026
[2026-06-27 22:49:04,331.331 INFO    ] ================================================
[2026-06-27 22:49:04,689.689 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:49:04
[2026-06-27 22:49:05,009.009 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:49:05,156.156 INFO    ] Initializing speech engine...
[2026-06-27 22:49:05,161.161 INFO    ] 2026-06-27 22:49:05
[2026-06-27 22:49:05,376.376 INFO    ] 2026-06-27 22:49:05
[2026-06-27 22:49:05,407.407 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:49:05,602.602 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:49:05,606.606 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:49:05,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:49:05,795.795 INFO    ] time= 27/06/2026 22:49:05
[2026-06-27 22:49:05,818.818 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:49:05,820.820 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:49:05,938.938 INFO    ] No existing commands found in stream
[2026-06-27 22:49:10,949.949 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:49:10,951.951 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-27 22:49:13,314.314 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 22:49:13,315.315 INFO    ] Checking for system updates...
[2026-06-27 22:49:13,339.339 INFO    ] 200
[2026-06-27 22:49:13,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:49:13,372.372 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:49:13,373.373 INFO    ] No update needed
[2026-06-27 22:49:13,374.374 INFO    ] Checking for camera pi updates...
[2026-06-27 22:49:13,395.395 INFO    ] 200
[2026-06-27 22:49:13,396.396 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:49:13,420.420 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:49:13,467.467 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:49:13,468.468 INFO    ] No camera update needed
[2026-06-27 22:49:13,470.470 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:49:13,471.471 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:49:13,474.474 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:49:13,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:49:15,515.515 INFO    ] ================================================
[2026-06-27 22:49:15,531.531 INFO    ] Launching Daemon at Sat Jun 27 22:49:15 IST 2026
[2026-06-27 22:49:15,542.542 INFO    ] ================================================
[2026-06-27 22:49:15,892.892 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:49:15
[2026-06-27 22:49:16,219.219 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:49:16,385.385 INFO    ] Initializing speech engine...
[2026-06-27 22:49:16,394.394 INFO    ] 2026-06-27 22:49:16
[2026-06-27 22:49:16,637.637 INFO    ] 2026-06-27 22:49:16
[2026-06-27 22:49:16,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:49:16,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:49:16,854.854 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:49:16,998.998 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:49:17,061.061 INFO    ] time= 27/06/2026 22:49:17
[2026-06-27 22:49:17,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:49:17,091.091 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:49:17,158.158 INFO    ] No existing commands found in stream
[2026-06-27 22:49:22,173.173 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:49:22,176.176 INFO    ] Waiting 0.84 seconds before fallback handling...
[2026-06-27 22:49:23,446.446 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 22:49:23,448.448 INFO    ] Checking for system updates...
[2026-06-27 22:49:23,469.469 INFO    ] 200
[2026-06-27 22:49:23,470.470 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:49:23,503.503 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:49:23,506.506 INFO    ] No update needed
[2026-06-27 22:49:23,508.508 INFO    ] Checking for camera pi updates...
[2026-06-27 22:49:23,530.530 INFO    ] 200
[2026-06-27 22:49:23,532.532 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:49:23,562.562 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:49:23,613.613 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:49:23,615.615 INFO    ] No camera update needed
[2026-06-27 22:49:23,617.617 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:49:23,619.619 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:49:23,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:49:23,627.627 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:49:25,653.653 INFO    ] ================================================
[2026-06-27 22:49:25,662.662 INFO    ] Launching Daemon at Sat Jun 27 22:49:25 IST 2026
[2026-06-27 22:49:25,669.669 INFO    ] ================================================
[2026-06-27 22:49:25,996.996 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:49:25
[2026-06-27 22:49:26,337.337 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:49:26,469.469 INFO    ] Initializing speech engine...
[2026-06-27 22:49:26,477.477 INFO    ] 2026-06-27 22:49:26
[2026-06-27 22:49:26,674.674 INFO    ] 2026-06-27 22:49:26
[2026-06-27 22:49:26,721.721 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:49:26,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:49:26,948.948 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:49:27,068.068 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:49:27,070.070 INFO    ] time= 27/06/2026 22:49:27
[2026-06-27 22:49:27,071.071 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:49:27,073.073 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:49:27,179.179 INFO    ] No existing commands found in stream
[2026-06-27 22:49:32,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:49:32,208.208 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-27 22:49:33,450.450 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 22:49:33,451.451 INFO    ] Checking for system updates...
[2026-06-27 22:49:33,473.473 INFO    ] 200
[2026-06-27 22:49:33,475.475 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:49:33,505.505 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:49:33,506.506 INFO    ] No update needed
[2026-06-27 22:49:33,508.508 INFO    ] Checking for camera pi updates...
[2026-06-27 22:49:33,527.527 INFO    ] 200
[2026-06-27 22:49:33,529.529 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:49:33,553.553 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:49:33,605.605 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:49:33,606.606 INFO    ] No camera update needed
[2026-06-27 22:49:33,607.607 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:49:33,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:49:33,611.611 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:49:33,614.614 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:49:35,653.653 INFO    ] ================================================
[2026-06-27 22:49:35,668.668 INFO    ] Launching Daemon at Sat Jun 27 22:49:35 IST 2026
[2026-06-27 22:49:35,680.680 INFO    ] ================================================
[2026-06-27 22:49:36,039.039 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:49:36
[2026-06-27 22:49:36,373.373 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:49:36,511.511 INFO    ] Initializing speech engine...
[2026-06-27 22:49:36,520.520 INFO    ] 2026-06-27 22:49:36
[2026-06-27 22:49:36,741.741 INFO    ] 2026-06-27 22:49:36
[2026-06-27 22:49:36,770.770 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:49:36,957.957 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:49:36,961.961 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:49:37,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:49:37,169.169 INFO    ] time= 27/06/2026 22:49:37
[2026-06-27 22:49:37,192.192 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:49:37,198.198 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:49:37,266.266 INFO    ] No existing commands found in stream
[2026-06-27 22:49:42,276.276 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:49:42,279.279 INFO    ] Waiting 0.56 seconds before fallback handling...
[2026-06-27 22:49:43,233.233 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:49:43,235.235 INFO    ] Checking for system updates...
[2026-06-27 22:49:43,255.255 INFO    ] 200
[2026-06-27 22:49:43,256.256 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:49:43,287.287 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:49:43,288.288 INFO    ] No update needed
[2026-06-27 22:49:43,289.289 INFO    ] Checking for camera pi updates...
[2026-06-27 22:49:43,310.310 INFO    ] 200
[2026-06-27 22:49:43,311.311 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:49:43,336.336 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:49:43,375.375 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:49:43,377.377 INFO    ] No camera update needed
[2026-06-27 22:49:43,379.379 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:49:43,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:49:43,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:49:43,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:49:45,425.425 INFO    ] ================================================
[2026-06-27 22:49:45,441.441 INFO    ] Launching Daemon at Sat Jun 27 22:49:45 IST 2026
[2026-06-27 22:49:45,453.453 INFO    ] ================================================
[2026-06-27 22:49:45,815.815 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:49:45
[2026-06-27 22:49:46,127.127 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:49:46,258.258 INFO    ] Initializing speech engine...
[2026-06-27 22:49:46,266.266 INFO    ] 2026-06-27 22:49:46
[2026-06-27 22:49:46,477.477 INFO    ] 2026-06-27 22:49:46
[2026-06-27 22:49:46,505.505 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:49:46,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:49:46,699.699 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:49:46,842.842 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:49:46,895.895 INFO    ] time= 27/06/2026 22:49:46
[2026-06-27 22:49:46,916.916 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:49:46,922.922 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:49:46,988.988 INFO    ] No existing commands found in stream
[2026-06-27 22:49:51,997.997 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:49:51,999.999 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-27 22:49:56,210.210 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 22:49:56,212.212 INFO    ] Checking for system updates...
[2026-06-27 22:49:56,233.233 INFO    ] 200
[2026-06-27 22:49:56,235.235 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:49:56,267.267 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:49:56,269.269 INFO    ] No update needed
[2026-06-27 22:49:56,270.270 INFO    ] Checking for camera pi updates...
[2026-06-27 22:49:56,293.293 INFO    ] 200
[2026-06-27 22:49:56,295.295 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:49:56,322.322 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:49:56,474.474 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:49:56,475.475 INFO    ] No camera update needed
[2026-06-27 22:49:56,477.477 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:49:56,478.478 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:49:56,481.481 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:49:56,484.484 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:49:58,524.524 INFO    ] ================================================
[2026-06-27 22:49:58,540.540 INFO    ] Launching Daemon at Sat Jun 27 22:49:58 IST 2026
[2026-06-27 22:49:58,551.551 INFO    ] ================================================
[2026-06-27 22:49:58,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:49:58
[2026-06-27 22:49:59,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:49:59,350.350 INFO    ] Initializing speech engine...
[2026-06-27 22:49:59,364.364 INFO    ] 2026-06-27 22:49:59
[2026-06-27 22:49:59,568.568 INFO    ] 2026-06-27 22:49:59
[2026-06-27 22:49:59,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:49:59,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:49:59,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:49:59,929.929 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:49:59,986.986 INFO    ] time= 27/06/2026 22:49:59
[2026-06-27 22:50:00,009.009 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:50:00,015.015 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:50:00,081.081 INFO    ] No existing commands found in stream
[2026-06-27 22:50:05,095.095 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:50:05,098.098 INFO    ] Waiting 0.45 seconds before fallback handling...
[2026-06-27 22:50:06,494.494 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 22:50:06,497.497 INFO    ] Checking for system updates...
[2026-06-27 22:50:06,534.534 INFO    ] 200
[2026-06-27 22:50:06,537.537 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:50:06,582.582 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:50:06,584.584 INFO    ] No update needed
[2026-06-27 22:50:06,585.585 INFO    ] Checking for camera pi updates...
[2026-06-27 22:50:06,605.605 INFO    ] 200
[2026-06-27 22:50:06,607.607 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:50:06,630.630 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:50:06,671.671 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:50:06,672.672 INFO    ] No camera update needed
[2026-06-27 22:50:06,674.674 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:50:06,675.675 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:50:06,678.678 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:50:06,681.681 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:50:08,720.720 INFO    ] ================================================
[2026-06-27 22:50:08,735.735 INFO    ] Launching Daemon at Sat Jun 27 22:50:08 IST 2026
[2026-06-27 22:50:08,747.747 INFO    ] ================================================
[2026-06-27 22:50:09,103.103 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:50:09
[2026-06-27 22:50:09,416.416 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:50:09,546.546 INFO    ] Initializing speech engine...
[2026-06-27 22:50:09,551.551 INFO    ] 2026-06-27 22:50:09
[2026-06-27 22:50:09,770.770 INFO    ] 2026-06-27 22:50:09
[2026-06-27 22:50:09,799.799 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:50:09,995.995 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:50:10,005.005 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:50:10,134.134 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:50:10,180.180 INFO    ] time= 27/06/2026 22:50:10
[2026-06-27 22:50:10,228.228 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:50:10,239.239 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:50:10,313.313 INFO    ] No existing commands found in stream
[2026-06-27 22:50:15,324.324 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:50:15,327.327 INFO    ] Waiting 3.46 seconds before fallback handling...
[2026-06-27 22:50:19,173.173 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:50:19,175.175 INFO    ] Checking for system updates...
[2026-06-27 22:50:19,196.196 INFO    ] 200
[2026-06-27 22:50:19,198.198 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:50:19,228.228 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:50:19,229.229 INFO    ] No update needed
[2026-06-27 22:50:19,230.230 INFO    ] Checking for camera pi updates...
[2026-06-27 22:50:19,251.251 INFO    ] 200
[2026-06-27 22:50:19,253.253 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:50:19,276.276 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:50:19,324.324 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:50:19,325.325 INFO    ] No camera update needed
[2026-06-27 22:50:19,326.326 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:50:19,327.327 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:50:19,330.330 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:50:19,333.333 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:50:21,374.374 INFO    ] ================================================
[2026-06-27 22:50:21,389.389 INFO    ] Launching Daemon at Sat Jun 27 22:50:21 IST 2026
[2026-06-27 22:50:21,401.401 INFO    ] ================================================
[2026-06-27 22:50:21,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:50:21
[2026-06-27 22:50:22,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:50:22,242.242 INFO    ] Initializing speech engine...
[2026-06-27 22:50:22,255.255 INFO    ] 2026-06-27 22:50:22
[2026-06-27 22:50:22,465.465 INFO    ] 2026-06-27 22:50:22
[2026-06-27 22:50:22,492.492 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:50:22,676.676 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:50:22,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:50:22,815.815 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:50:22,882.882 INFO    ] time= 27/06/2026 22:50:22
[2026-06-27 22:50:22,906.906 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:50:22,912.912 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:50:22,978.978 INFO    ] No existing commands found in stream
[2026-06-27 22:50:27,988.988 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:50:27,991.991 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-27 22:50:30,878.878 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:50:30,880.880 INFO    ] Checking for system updates...
[2026-06-27 22:50:30,901.901 INFO    ] 200
[2026-06-27 22:50:30,902.902 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:50:30,935.935 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:50:30,936.936 INFO    ] No update needed
[2026-06-27 22:50:30,937.937 INFO    ] Checking for camera pi updates...
[2026-06-27 22:50:30,957.957 INFO    ] 200
[2026-06-27 22:50:30,958.958 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:50:30,981.981 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:50:31,024.024 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:50:31,025.025 INFO    ] No camera update needed
[2026-06-27 22:50:31,026.026 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:50:31,028.028 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:50:31,031.031 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:50:31,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:50:33,072.072 INFO    ] ================================================
[2026-06-27 22:50:33,087.087 INFO    ] Launching Daemon at Sat Jun 27 22:50:33 IST 2026
[2026-06-27 22:50:33,099.099 INFO    ] ================================================
[2026-06-27 22:50:33,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:50:33
[2026-06-27 22:50:33,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:50:33,879.879 INFO    ] Initializing speech engine...
[2026-06-27 22:50:33,891.891 INFO    ] 2026-06-27 22:50:33
[2026-06-27 22:50:34,098.098 INFO    ] 2026-06-27 22:50:34
[2026-06-27 22:50:34,127.127 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:50:34,310.310 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:50:34,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:50:34,626.626 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:50:34,628.628 INFO    ] time= 27/06/2026 22:50:34
[2026-06-27 22:50:34,655.655 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:50:34,657.657 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:50:34,751.751 INFO    ] No existing commands found in stream
[2026-06-27 22:50:39,761.761 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:50:39,764.764 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-27 22:50:43,291.291 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 22:50:43,292.292 INFO    ] Checking for system updates...
[2026-06-27 22:50:43,313.313 INFO    ] 200
[2026-06-27 22:50:43,314.314 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:50:43,345.345 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:50:43,347.347 INFO    ] No update needed
[2026-06-27 22:50:43,348.348 INFO    ] Checking for camera pi updates...
[2026-06-27 22:50:43,368.368 INFO    ] 200
[2026-06-27 22:50:43,369.369 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:50:43,393.393 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:50:43,436.436 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:50:43,437.437 INFO    ] No camera update needed
[2026-06-27 22:50:43,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:50:43,440.440 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:50:43,443.443 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:50:43,446.446 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:50:45,486.486 INFO    ] ================================================
[2026-06-27 22:50:45,502.502 INFO    ] Launching Daemon at Sat Jun 27 22:50:45 IST 2026
[2026-06-27 22:50:45,513.513 INFO    ] ================================================
[2026-06-27 22:50:45,881.881 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:50:45
[2026-06-27 22:50:46,192.192 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:50:46,334.334 INFO    ] Initializing speech engine...
[2026-06-27 22:50:46,338.338 INFO    ] 2026-06-27 22:50:46
[2026-06-27 22:50:46,544.544 INFO    ] 2026-06-27 22:50:46
[2026-06-27 22:50:46,571.571 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:50:46,753.753 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:50:46,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:50:46,885.885 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:50:46,931.931 INFO    ] time= 27/06/2026 22:50:46
[2026-06-27 22:50:46,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:50:46,985.985 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:50:47,054.054 INFO    ] No existing commands found in stream
[2026-06-27 22:50:52,065.065 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:50:52,067.067 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-27 22:50:56,043.043 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 22:50:56,044.044 INFO    ] Checking for system updates...
[2026-06-27 22:50:56,065.065 INFO    ] 200
[2026-06-27 22:50:56,067.067 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:50:56,098.098 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:50:56,100.100 INFO    ] No update needed
[2026-06-27 22:50:56,101.101 INFO    ] Checking for camera pi updates...
[2026-06-27 22:50:56,120.120 INFO    ] 200
[2026-06-27 22:50:56,122.122 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:50:56,145.145 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:50:56,199.199 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:50:56,200.200 INFO    ] No camera update needed
[2026-06-27 22:50:56,201.201 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:50:56,202.202 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:50:56,206.206 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:50:56,208.208 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:50:58,250.250 INFO    ] ================================================
[2026-06-27 22:50:58,266.266 INFO    ] Launching Daemon at Sat Jun 27 22:50:58 IST 2026
[2026-06-27 22:50:58,277.277 INFO    ] ================================================
[2026-06-27 22:50:58,612.612 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:50:58
[2026-06-27 22:50:58,928.928 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:50:59,072.072 INFO    ] Initializing speech engine...
[2026-06-27 22:50:59,077.077 INFO    ] 2026-06-27 22:50:59
[2026-06-27 22:50:59,283.283 INFO    ] 2026-06-27 22:50:59
[2026-06-27 22:50:59,311.311 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:50:59,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:50:59,497.497 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:50:59,637.637 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:50:59,701.701 INFO    ] time= 27/06/2026 22:50:59
[2026-06-27 22:50:59,729.729 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:50:59,735.735 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:50:59,800.800 INFO    ] No existing commands found in stream
[2026-06-27 22:51:04,811.811 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:51:04,814.814 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-27 22:51:07,736.736 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 22:51:07,738.738 INFO    ] Checking for system updates...
[2026-06-27 22:51:07,762.762 INFO    ] 200
[2026-06-27 22:51:07,763.763 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:51:07,802.802 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:51:07,804.804 INFO    ] No update needed
[2026-06-27 22:51:07,806.806 INFO    ] Checking for camera pi updates...
[2026-06-27 22:51:07,833.833 INFO    ] 200
[2026-06-27 22:51:07,835.835 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:51:07,869.869 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:51:07,916.916 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:51:07,917.917 INFO    ] No camera update needed
[2026-06-27 22:51:07,919.919 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:51:07,921.921 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:51:07,925.925 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:51:07,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:51:09,959.959 INFO    ] ================================================
[2026-06-27 22:51:09,968.968 INFO    ] Launching Daemon at Sat Jun 27 22:51:09 IST 2026
[2026-06-27 22:51:09,975.975 INFO    ] ================================================
[2026-06-27 22:51:10,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:51:10
[2026-06-27 22:51:10,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:51:10,758.758 INFO    ] Initializing speech engine...
[2026-06-27 22:51:10,761.761 INFO    ] 2026-06-27 22:51:10
[2026-06-27 22:51:10,980.980 INFO    ] 2026-06-27 22:51:10
[2026-06-27 22:51:11,010.010 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:51:11,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:51:11,200.200 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:51:11,338.338 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:51:11,402.402 INFO    ] time= 27/06/2026 22:51:11
[2026-06-27 22:51:11,430.430 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:51:11,437.437 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:51:11,505.505 INFO    ] No existing commands found in stream
[2026-06-27 22:51:16,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:51:16,522.522 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-27 22:51:19,994.994 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 22:51:19,995.995 INFO    ] Checking for system updates...
[2026-06-27 22:51:20,016.016 INFO    ] 200
[2026-06-27 22:51:20,018.018 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:51:20,052.052 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:51:20,053.053 INFO    ] No update needed
[2026-06-27 22:51:20,055.055 INFO    ] Checking for camera pi updates...
[2026-06-27 22:51:20,075.075 INFO    ] 200
[2026-06-27 22:51:20,076.076 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:51:20,099.099 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:51:20,153.153 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:51:20,154.154 INFO    ] No camera update needed
[2026-06-27 22:51:20,156.156 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:51:20,157.157 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:51:20,160.160 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:51:20,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:51:22,202.202 INFO    ] ================================================
[2026-06-27 22:51:22,219.219 INFO    ] Launching Daemon at Sat Jun 27 22:51:22 IST 2026
[2026-06-27 22:51:22,231.231 INFO    ] ================================================
[2026-06-27 22:51:22,576.576 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:51:22
[2026-06-27 22:51:22,887.887 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:51:23,030.030 INFO    ] Initializing speech engine...
[2026-06-27 22:51:23,035.035 INFO    ] 2026-06-27 22:51:23
[2026-06-27 22:51:23,241.241 INFO    ] 2026-06-27 22:51:23
[2026-06-27 22:51:23,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:51:23,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:51:23,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:51:23,584.584 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:51:23,634.634 INFO    ] time= 27/06/2026 22:51:23
[2026-06-27 22:51:23,662.662 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:51:23,684.684 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:51:23,755.755 INFO    ] No existing commands found in stream
[2026-06-27 22:51:28,764.764 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:51:28,767.767 INFO    ] Waiting 0.19 seconds before fallback handling...
[2026-06-27 22:51:31,483.483 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 22:51:31,485.485 INFO    ] Checking for system updates...
[2026-06-27 22:51:31,509.509 INFO    ] 200
[2026-06-27 22:51:31,510.510 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:51:31,545.545 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:51:31,547.547 INFO    ] No update needed
[2026-06-27 22:51:31,548.548 INFO    ] Checking for camera pi updates...
[2026-06-27 22:51:31,570.570 INFO    ] 200
[2026-06-27 22:51:31,572.572 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:51:31,598.598 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:51:31,630.630 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:51:31,632.632 INFO    ] No camera update needed
[2026-06-27 22:51:31,633.633 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:51:31,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:51:31,639.639 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:51:31,642.642 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:51:33,675.675 INFO    ] ================================================
[2026-06-27 22:51:33,690.690 INFO    ] Launching Daemon at Sat Jun 27 22:51:33 IST 2026
[2026-06-27 22:51:33,701.701 INFO    ] ================================================
[2026-06-27 22:51:34,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:51:34
[2026-06-27 22:51:34,359.359 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:51:34,497.497 INFO    ] Initializing speech engine...
[2026-06-27 22:51:34,508.508 INFO    ] 2026-06-27 22:51:34
[2026-06-27 22:51:34,712.712 INFO    ] 2026-06-27 22:51:34
[2026-06-27 22:51:34,740.740 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:51:34,925.925 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:51:34,934.934 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:51:35,074.074 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:51:35,130.130 INFO    ] time= 27/06/2026 22:51:35
[2026-06-27 22:51:35,154.154 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:51:35,155.155 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:51:35,250.250 INFO    ] No existing commands found in stream
[2026-06-27 22:51:40,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:51:40,267.267 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-27 22:51:44,017.017 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:51:44,019.019 INFO    ] Checking for system updates...
[2026-06-27 22:51:44,040.040 INFO    ] 200
[2026-06-27 22:51:44,042.042 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:51:44,075.075 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:51:44,076.076 INFO    ] No update needed
[2026-06-27 22:51:44,077.077 INFO    ] Checking for camera pi updates...
[2026-06-27 22:51:44,097.097 INFO    ] 200
[2026-06-27 22:51:44,099.099 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:51:44,124.124 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:51:44,170.170 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:51:44,171.171 INFO    ] No camera update needed
[2026-06-27 22:51:44,172.172 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:51:44,174.174 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:51:44,177.177 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:51:44,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:51:46,210.210 INFO    ] ================================================
[2026-06-27 22:51:46,218.218 INFO    ] Launching Daemon at Sat Jun 27 22:51:46 IST 2026
[2026-06-27 22:51:46,225.225 INFO    ] ================================================
[2026-06-27 22:51:46,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:51:46
[2026-06-27 22:51:46,905.905 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:51:47,036.036 INFO    ] Initializing speech engine...
[2026-06-27 22:51:47,044.044 INFO    ] 2026-06-27 22:51:47
[2026-06-27 22:51:47,257.257 INFO    ] 2026-06-27 22:51:47
[2026-06-27 22:51:47,287.287 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:51:47,473.473 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:51:47,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:51:47,609.609 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:51:47,668.668 INFO    ] time= 27/06/2026 22:51:47
[2026-06-27 22:51:47,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:51:47,707.707 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:51:47,774.774 INFO    ] No existing commands found in stream
[2026-06-27 22:51:52,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:51:52,791.791 INFO    ] Waiting 0.41 seconds before fallback handling...
[2026-06-27 22:51:53,663.663 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 22:51:53,665.665 INFO    ] Checking for system updates...
[2026-06-27 22:51:53,686.686 INFO    ] 200
[2026-06-27 22:51:53,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:51:53,720.720 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:51:53,721.721 INFO    ] No update needed
[2026-06-27 22:51:53,722.722 INFO    ] Checking for camera pi updates...
[2026-06-27 22:51:53,742.742 INFO    ] 200
[2026-06-27 22:51:53,744.744 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:51:53,768.768 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:51:53,852.852 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:51:53,854.854 INFO    ] No camera update needed
[2026-06-27 22:51:53,856.856 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:51:53,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:51:53,861.861 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:51:53,864.864 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:51:55,904.904 INFO    ] ================================================
[2026-06-27 22:51:55,919.919 INFO    ] Launching Daemon at Sat Jun 27 22:51:55 IST 2026
[2026-06-27 22:51:55,931.931 INFO    ] ================================================
[2026-06-27 22:51:56,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:51:56
[2026-06-27 22:51:56,572.572 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:51:56,717.717 INFO    ] Initializing speech engine...
[2026-06-27 22:51:56,722.722 INFO    ] 2026-06-27 22:51:56
[2026-06-27 22:51:56,926.926 INFO    ] 2026-06-27 22:51:56
[2026-06-27 22:51:56,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:51:57,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:51:57,265.265 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:51:57,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:51:57,434.434 INFO    ] time= 27/06/2026 22:51:57
[2026-06-27 22:51:57,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:51:57,461.461 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:51:57,558.558 INFO    ] No existing commands found in stream
[2026-06-27 22:52:02,565.565 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:52:02,567.567 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-27 22:52:04,666.666 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 22:52:04,667.667 INFO    ] Checking for system updates...
[2026-06-27 22:52:04,690.690 INFO    ] 200
[2026-06-27 22:52:04,691.691 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:52:04,727.727 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:52:04,729.729 INFO    ] No update needed
[2026-06-27 22:52:04,730.730 INFO    ] Checking for camera pi updates...
[2026-06-27 22:52:04,753.753 INFO    ] 200
[2026-06-27 22:52:04,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:52:04,778.778 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:52:04,830.830 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:52:04,832.832 INFO    ] No camera update needed
[2026-06-27 22:52:04,833.833 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:52:04,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:52:04,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:52:04,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:52:06,880.880 INFO    ] ================================================
[2026-06-27 22:52:06,896.896 INFO    ] Launching Daemon at Sat Jun 27 22:52:06 IST 2026
[2026-06-27 22:52:06,908.908 INFO    ] ================================================
[2026-06-27 22:52:07,282.282 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:52:07
[2026-06-27 22:52:07,595.595 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:52:07,724.724 INFO    ] Initializing speech engine...
[2026-06-27 22:52:07,733.733 INFO    ] 2026-06-27 22:52:07
[2026-06-27 22:52:07,953.953 INFO    ] 2026-06-27 22:52:07
[2026-06-27 22:52:07,983.983 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:52:08,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:52:08,179.179 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:52:08,310.310 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:52:08,370.370 INFO    ] time= 27/06/2026 22:52:08
[2026-06-27 22:52:08,404.404 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:52:08,409.409 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:52:08,477.477 INFO    ] No existing commands found in stream
[2026-06-27 22:52:13,488.488 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:52:13,491.491 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-27 22:52:16,472.472 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 22:52:16,474.474 INFO    ] Checking for system updates...
[2026-06-27 22:52:16,495.495 INFO    ] 200
[2026-06-27 22:52:16,497.497 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:52:16,530.530 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:52:16,531.531 INFO    ] No update needed
[2026-06-27 22:52:16,532.532 INFO    ] Checking for camera pi updates...
[2026-06-27 22:52:16,555.555 INFO    ] 200
[2026-06-27 22:52:16,557.557 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:52:16,581.581 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:52:16,627.627 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:52:16,629.629 INFO    ] No camera update needed
[2026-06-27 22:52:16,630.630 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:52:16,632.632 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:52:16,636.636 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:52:16,639.639 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:52:18,680.680 INFO    ] ================================================
[2026-06-27 22:52:18,696.696 INFO    ] Launching Daemon at Sat Jun 27 22:52:18 IST 2026
[2026-06-27 22:52:18,708.708 INFO    ] ================================================
[2026-06-27 22:52:19,052.052 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:52:19
[2026-06-27 22:52:19,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:52:19,496.496 INFO    ] Initializing speech engine...
[2026-06-27 22:52:19,509.509 INFO    ] 2026-06-27 22:52:19
[2026-06-27 22:52:19,724.724 INFO    ] 2026-06-27 22:52:19
[2026-06-27 22:52:19,753.753 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:52:19,877.877 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:52:19,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:52:20,076.076 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:52:20,137.137 INFO    ] time= 27/06/2026 22:52:20
[2026-06-27 22:52:20,169.169 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:52:20,171.171 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:52:20,244.244 INFO    ] No existing commands found in stream
[2026-06-27 22:52:25,254.254 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:52:25,257.257 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-27 22:52:26,758.758 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 22:52:26,760.760 INFO    ] Checking for system updates...
[2026-06-27 22:52:26,780.780 INFO    ] 200
[2026-06-27 22:52:26,782.782 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:52:26,812.812 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:52:26,813.813 INFO    ] No update needed
[2026-06-27 22:52:26,815.815 INFO    ] Checking for camera pi updates...
[2026-06-27 22:52:26,836.836 INFO    ] 200
[2026-06-27 22:52:26,837.837 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:52:26,862.862 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:52:26,915.915 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:52:26,916.916 INFO    ] No camera update needed
[2026-06-27 22:52:26,918.918 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:52:26,919.919 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:52:26,922.922 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:52:26,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:52:28,964.964 INFO    ] ================================================
[2026-06-27 22:52:28,980.980 INFO    ] Launching Daemon at Sat Jun 27 22:52:28 IST 2026
[2026-06-27 22:52:28,992.992 INFO    ] ================================================
[2026-06-27 22:52:29,347.347 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:52:29
[2026-06-27 22:52:29,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:52:29,853.853 INFO    ] Initializing speech engine...
[2026-06-27 22:52:29,858.858 INFO    ] 2026-06-27 22:52:29
[2026-06-27 22:52:30,074.074 INFO    ] 2026-06-27 22:52:30
[2026-06-27 22:52:30,107.107 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:52:30,236.236 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:52:30,294.294 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:52:30,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:52:30,495.495 INFO    ] time= 27/06/2026 22:52:30
[2026-06-27 22:52:30,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:52:30,528.528 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:52:30,593.593 INFO    ] No existing commands found in stream
[2026-06-27 22:52:35,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:52:35,607.607 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-27 22:52:39,898.898 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:52:39,900.900 INFO    ] Checking for system updates...
[2026-06-27 22:52:39,920.920 INFO    ] 200
[2026-06-27 22:52:39,922.922 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:52:39,952.952 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:52:39,953.953 INFO    ] No update needed
[2026-06-27 22:52:39,955.955 INFO    ] Checking for camera pi updates...
[2026-06-27 22:52:39,974.974 INFO    ] 200
[2026-06-27 22:52:39,976.976 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:52:40,001.001 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:52:40,044.044 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:52:40,045.045 INFO    ] No camera update needed
[2026-06-27 22:52:40,047.047 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:52:40,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:52:40,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:52:40,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:52:42,092.092 INFO    ] ================================================
[2026-06-27 22:52:42,108.108 INFO    ] Launching Daemon at Sat Jun 27 22:52:42 IST 2026
[2026-06-27 22:52:42,119.119 INFO    ] ================================================
[2026-06-27 22:52:42,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:52:42
[2026-06-27 22:52:42,826.826 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:52:42,979.979 INFO    ] Initializing speech engine...
[2026-06-27 22:52:42,985.985 INFO    ] 2026-06-27 22:52:42
[2026-06-27 22:52:43,196.196 INFO    ] 2026-06-27 22:52:43
[2026-06-27 22:52:43,226.226 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:52:43,352.352 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:52:43,416.416 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:52:43,559.559 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:52:43,619.619 INFO    ] time= 27/06/2026 22:52:43
[2026-06-27 22:52:43,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:52:43,659.659 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:52:43,727.727 INFO    ] No existing commands found in stream
[2026-06-27 22:52:48,742.742 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:52:48,746.746 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-27 22:52:52,379.379 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 22:52:52,381.381 INFO    ] Checking for system updates...
[2026-06-27 22:52:52,408.408 INFO    ] 200
[2026-06-27 22:52:52,409.409 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:52:52,446.446 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:52:52,448.448 INFO    ] No update needed
[2026-06-27 22:52:52,449.449 INFO    ] Checking for camera pi updates...
[2026-06-27 22:52:52,471.471 INFO    ] 200
[2026-06-27 22:52:52,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:52:52,498.498 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:52:52,540.540 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:52:52,541.541 INFO    ] No camera update needed
[2026-06-27 22:52:52,543.543 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:52:52,544.544 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:52:52,547.547 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:52:52,551.551 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:52:54,592.592 INFO    ] ================================================
[2026-06-27 22:52:54,609.609 INFO    ] Launching Daemon at Sat Jun 27 22:52:54 IST 2026
[2026-06-27 22:52:54,620.620 INFO    ] ================================================
[2026-06-27 22:52:54,957.957 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:52:54
[2026-06-27 22:52:55,270.270 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:52:55,409.409 INFO    ] Initializing speech engine...
[2026-06-27 22:52:55,420.420 INFO    ] 2026-06-27 22:52:55
[2026-06-27 22:52:55,630.630 INFO    ] 2026-06-27 22:52:55
[2026-06-27 22:52:55,660.660 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:52:55,845.845 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:52:55,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:52:56,005.005 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:52:56,054.054 INFO    ] time= 27/06/2026 22:52:56
[2026-06-27 22:52:56,076.076 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:52:56,082.082 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:52:56,149.149 INFO    ] No existing commands found in stream
[2026-06-27 22:53:01,163.163 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:53:01,167.167 INFO    ] Waiting 3.36 seconds before fallback handling...
[2026-06-27 22:53:04,925.925 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 22:53:04,927.927 INFO    ] Checking for system updates...
[2026-06-27 22:53:04,949.949 INFO    ] 200
[2026-06-27 22:53:04,951.951 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:53:04,984.984 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:53:04,986.986 INFO    ] No update needed
[2026-06-27 22:53:04,987.987 INFO    ] Checking for camera pi updates...
[2026-06-27 22:53:05,007.007 INFO    ] 200
[2026-06-27 22:53:05,008.008 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:53:05,033.033 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:53:05,074.074 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:53:05,076.076 INFO    ] No camera update needed
[2026-06-27 22:53:05,077.077 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:53:05,079.079 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:53:05,082.082 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:53:05,085.085 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:53:07,125.125 INFO    ] ================================================
[2026-06-27 22:53:07,141.141 INFO    ] Launching Daemon at Sat Jun 27 22:53:07 IST 2026
[2026-06-27 22:53:07,152.152 INFO    ] ================================================
[2026-06-27 22:53:07,500.500 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:53:07
[2026-06-27 22:53:07,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:53:07,989.989 INFO    ] Initializing speech engine...
[2026-06-27 22:53:07,992.992 INFO    ] 2026-06-27 22:53:07
[2026-06-27 22:53:08,175.175 INFO    ] 2026-06-27 22:53:08
[2026-06-27 22:53:08,203.203 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:53:08,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:53:08,402.402 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:53:08,573.573 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:53:08,620.620 INFO    ] time= 27/06/2026 22:53:08
[2026-06-27 22:53:08,626.626 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:53:08,631.631 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:53:08,699.699 INFO    ] No existing commands found in stream
[2026-06-27 22:53:13,713.713 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:53:13,716.716 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-27 22:53:16,910.910 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:53:16,911.911 INFO    ] Checking for system updates...
[2026-06-27 22:53:16,934.934 INFO    ] 200
[2026-06-27 22:53:16,935.935 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:53:16,966.966 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:53:16,967.967 INFO    ] No update needed
[2026-06-27 22:53:16,968.968 INFO    ] Checking for camera pi updates...
[2026-06-27 22:53:16,988.988 INFO    ] 200
[2026-06-27 22:53:16,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:53:17,013.013 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:53:17,062.062 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:53:17,064.064 INFO    ] No camera update needed
[2026-06-27 22:53:17,065.065 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:53:17,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:53:17,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:53:17,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:53:19,113.113 INFO    ] ================================================
[2026-06-27 22:53:19,136.136 INFO    ] Launching Daemon at Sat Jun 27 22:53:19 IST 2026
[2026-06-27 22:53:19,148.148 INFO    ] ================================================
[2026-06-27 22:53:19,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:53:19
[2026-06-27 22:53:19,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:53:19,931.931 INFO    ] Initializing speech engine...
[2026-06-27 22:53:19,935.935 INFO    ] 2026-06-27 22:53:19
[2026-06-27 22:53:20,154.154 INFO    ] 2026-06-27 22:53:20
[2026-06-27 22:53:20,183.183 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:53:20,307.307 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:53:20,371.371 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:53:20,531.531 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:53:20,581.581 INFO    ] time= 27/06/2026 22:53:20
[2026-06-27 22:53:20,603.603 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:53:20,609.609 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:53:20,675.675 INFO    ] No existing commands found in stream
[2026-06-27 22:53:25,685.685 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:53:25,688.688 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-27 22:53:27,784.784 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:53:27,786.786 INFO    ] Checking for system updates...
[2026-06-27 22:53:27,807.807 INFO    ] 200
[2026-06-27 22:53:27,808.808 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:53:27,841.841 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:53:27,842.842 INFO    ] No update needed
[2026-06-27 22:53:27,843.843 INFO    ] Checking for camera pi updates...
[2026-06-27 22:53:27,864.864 INFO    ] 200
[2026-06-27 22:53:27,866.866 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:53:27,889.889 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:53:27,942.942 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:53:27,943.943 INFO    ] No camera update needed
[2026-06-27 22:53:27,944.944 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:53:27,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:53:27,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:53:27,951.951 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:53:29,990.990 INFO    ] ================================================
[2026-06-27 22:53:30,005.005 INFO    ] Launching Daemon at Sat Jun 27 22:53:30 IST 2026
[2026-06-27 22:53:30,017.017 INFO    ] ================================================
[2026-06-27 22:53:30,401.401 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:53:30
[2026-06-27 22:53:30,740.740 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:53:30,887.887 INFO    ] Initializing speech engine...
[2026-06-27 22:53:30,896.896 INFO    ] 2026-06-27 22:53:30
[2026-06-27 22:53:31,104.104 INFO    ] 2026-06-27 22:53:31
[2026-06-27 22:53:31,133.133 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:53:31,261.261 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:53:31,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:53:31,473.473 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:53:31,526.526 INFO    ] time= 27/06/2026 22:53:31
[2026-06-27 22:53:31,549.549 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:53:31,555.555 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:53:31,621.621 INFO    ] No existing commands found in stream
[2026-06-27 22:53:36,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:53:36,634.634 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-27 22:53:41,018.018 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 22:53:41,020.020 INFO    ] Checking for system updates...
[2026-06-27 22:53:41,041.041 INFO    ] 200
[2026-06-27 22:53:41,042.042 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:53:41,073.073 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:53:41,074.074 INFO    ] No update needed
[2026-06-27 22:53:41,076.076 INFO    ] Checking for camera pi updates...
[2026-06-27 22:53:41,097.097 INFO    ] 200
[2026-06-27 22:53:41,099.099 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:53:41,126.126 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:53:41,171.171 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:53:41,173.173 INFO    ] No camera update needed
[2026-06-27 22:53:41,174.174 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:53:41,176.176 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:53:41,179.179 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:53:41,182.182 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:53:43,221.221 INFO    ] ================================================
[2026-06-27 22:53:43,237.237 INFO    ] Launching Daemon at Sat Jun 27 22:53:43 IST 2026
[2026-06-27 22:53:43,248.248 INFO    ] ================================================
[2026-06-27 22:53:43,592.592 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:53:43
[2026-06-27 22:53:43,904.904 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:53:44,047.047 INFO    ] Initializing speech engine...
[2026-06-27 22:53:44,051.051 INFO    ] 2026-06-27 22:53:44
[2026-06-27 22:53:44,256.256 INFO    ] 2026-06-27 22:53:44
[2026-06-27 22:53:44,284.284 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:53:44,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:53:44,477.477 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:53:44,607.607 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:53:44,671.671 INFO    ] time= 27/06/2026 22:53:44
[2026-06-27 22:53:45,160.160 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:53:45,163.163 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:53:45,224.224 INFO    ] No existing commands found in stream
[2026-06-27 22:53:50,234.234 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:53:50,695.695 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-27 22:53:54,137.137 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:53:54,138.138 INFO    ] Checking for system updates...
[2026-06-27 22:53:54,159.159 INFO    ] 200
[2026-06-27 22:53:54,160.160 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:53:54,191.191 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:53:54,193.193 INFO    ] No update needed
[2026-06-27 22:53:54,194.194 INFO    ] Checking for camera pi updates...
[2026-06-27 22:53:54,213.213 INFO    ] 200
[2026-06-27 22:53:54,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:53:54,240.240 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:53:54,289.289 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:53:54,291.291 INFO    ] No camera update needed
[2026-06-27 22:53:54,292.292 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:53:54,293.293 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:53:54,296.296 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:53:54,299.299 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:53:56,339.339 INFO    ] ================================================
[2026-06-27 22:53:56,355.355 INFO    ] Launching Daemon at Sat Jun 27 22:53:56 IST 2026
[2026-06-27 22:53:56,366.366 INFO    ] ================================================
[2026-06-27 22:53:56,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:53:56
[2026-06-27 22:53:57,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:53:57,248.248 INFO    ] Initializing speech engine...
[2026-06-27 22:53:57,252.252 INFO    ] 2026-06-27 22:53:57
[2026-06-27 22:53:57,455.455 INFO    ] 2026-06-27 22:53:57
[2026-06-27 22:53:57,486.486 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:53:57,669.669 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:53:57,678.678 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:53:57,828.828 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:53:57,875.875 INFO    ] time= 27/06/2026 22:53:57
[2026-06-27 22:53:57,898.898 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:53:57,904.904 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:53:57,971.971 INFO    ] No existing commands found in stream
[2026-06-27 22:54:02,995.995 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:54:02,997.997 INFO    ] Waiting 2.50 seconds before fallback handling...
[2026-06-27 22:54:05,914.914 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 22:54:05,916.916 INFO    ] Checking for system updates...
[2026-06-27 22:54:05,936.936 INFO    ] 200
[2026-06-27 22:54:05,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:54:05,968.968 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:54:05,969.969 INFO    ] No update needed
[2026-06-27 22:54:05,971.971 INFO    ] Checking for camera pi updates...
[2026-06-27 22:54:05,992.992 INFO    ] 200
[2026-06-27 22:54:05,993.993 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:54:06,016.016 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:54:06,157.157 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:54:06,158.158 INFO    ] No camera update needed
[2026-06-27 22:54:06,160.160 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:54:06,161.161 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:54:06,164.164 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:54:06,167.167 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:54:08,207.207 INFO    ] ================================================
[2026-06-27 22:54:08,222.222 INFO    ] Launching Daemon at Sat Jun 27 22:54:08 IST 2026
[2026-06-27 22:54:08,234.234 INFO    ] ================================================
[2026-06-27 22:54:08,619.619 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:54:08
[2026-06-27 22:54:08,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:54:09,065.065 INFO    ] Initializing speech engine...
[2026-06-27 22:54:09,073.073 INFO    ] 2026-06-27 22:54:09
[2026-06-27 22:54:09,286.286 INFO    ] 2026-06-27 22:54:09
[2026-06-27 22:54:09,315.315 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:54:09,499.499 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:54:09,507.507 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:54:09,633.633 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:54:09,699.699 INFO    ] time= 27/06/2026 22:54:09
[2026-06-27 22:54:09,727.727 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:54:09,733.733 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:54:09,799.799 INFO    ] No existing commands found in stream
[2026-06-27 22:54:14,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:54:14,812.812 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-27 22:54:16,622.622 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:54:16,624.624 INFO    ] Checking for system updates...
[2026-06-27 22:54:16,645.645 INFO    ] 200
[2026-06-27 22:54:16,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:54:16,677.677 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:54:16,679.679 INFO    ] No update needed
[2026-06-27 22:54:16,680.680 INFO    ] Checking for camera pi updates...
[2026-06-27 22:54:16,700.700 INFO    ] 200
[2026-06-27 22:54:16,701.701 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:54:16,727.727 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:54:16,781.781 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:54:16,783.783 INFO    ] No camera update needed
[2026-06-27 22:54:16,785.785 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:54:16,786.786 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:54:16,789.789 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:54:16,792.792 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:54:18,834.834 INFO    ] ================================================
[2026-06-27 22:54:18,849.849 INFO    ] Launching Daemon at Sat Jun 27 22:54:18 IST 2026
[2026-06-27 22:54:18,860.860 INFO    ] ================================================
[2026-06-27 22:54:19,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:54:19
[2026-06-27 22:54:19,516.516 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:54:19,648.648 INFO    ] Initializing speech engine...
[2026-06-27 22:54:19,657.657 INFO    ] 2026-06-27 22:54:19
[2026-06-27 22:54:19,870.870 INFO    ] 2026-06-27 22:54:19
[2026-06-27 22:54:19,899.899 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:54:20,088.088 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:54:20,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:54:20,255.255 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:54:20,299.299 INFO    ] time= 27/06/2026 22:54:20
[2026-06-27 22:54:20,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:54:20,327.327 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:54:20,394.394 INFO    ] No existing commands found in stream
[2026-06-27 22:54:25,418.418 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:54:25,421.421 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-27 22:54:27,694.694 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 22:54:27,695.695 INFO    ] Checking for system updates...
[2026-06-27 22:54:27,718.718 INFO    ] 200
[2026-06-27 22:54:27,719.719 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:54:27,752.752 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:54:27,754.754 INFO    ] No update needed
[2026-06-27 22:54:27,755.755 INFO    ] Checking for camera pi updates...
[2026-06-27 22:54:27,781.781 INFO    ] 200
[2026-06-27 22:54:27,782.782 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:54:27,809.809 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:54:27,852.852 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:54:27,853.853 INFO    ] No camera update needed
[2026-06-27 22:54:27,855.855 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:54:27,856.856 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:54:27,859.859 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:54:27,862.862 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:54:29,901.901 INFO    ] ================================================
[2026-06-27 22:54:29,916.916 INFO    ] Launching Daemon at Sat Jun 27 22:54:29 IST 2026
[2026-06-27 22:54:29,927.927 INFO    ] ================================================
[2026-06-27 22:54:30,413.413 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:54:30
[2026-06-27 22:54:30,726.726 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:54:30,858.858 INFO    ] Initializing speech engine...
[2026-06-27 22:54:30,866.866 INFO    ] 2026-06-27 22:54:30
[2026-06-27 22:54:31,081.081 INFO    ] 2026-06-27 22:54:31
[2026-06-27 22:54:31,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:54:31,298.298 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:54:31,307.307 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:54:31,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:54:31,487.487 INFO    ] time= 27/06/2026 22:54:31
[2026-06-27 22:54:31,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:54:31,533.533 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:54:31,606.606 INFO    ] No existing commands found in stream
[2026-06-27 22:54:36,615.615 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:54:36,618.618 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-27 22:54:39,378.378 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:54:39,380.380 INFO    ] Checking for system updates...
[2026-06-27 22:54:39,402.402 INFO    ] 200
[2026-06-27 22:54:39,403.403 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:54:39,436.436 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:54:39,437.437 INFO    ] No update needed
[2026-06-27 22:54:39,438.438 INFO    ] Checking for camera pi updates...
[2026-06-27 22:54:39,457.457 INFO    ] 200
[2026-06-27 22:54:39,459.459 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:54:39,483.483 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:54:39,525.525 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:54:39,526.526 INFO    ] No camera update needed
[2026-06-27 22:54:39,527.527 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:54:39,529.529 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:54:39,532.532 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:54:39,535.535 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:54:41,575.575 INFO    ] ================================================
[2026-06-27 22:54:41,592.592 INFO    ] Launching Daemon at Sat Jun 27 22:54:41 IST 2026
[2026-06-27 22:54:41,603.603 INFO    ] ================================================
[2026-06-27 22:54:41,959.959 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:54:41
[2026-06-27 22:54:42,278.278 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:54:42,423.423 INFO    ] Initializing speech engine...
[2026-06-27 22:54:42,428.428 INFO    ] 2026-06-27 22:54:42
[2026-06-27 22:54:42,637.637 INFO    ] 2026-06-27 22:54:42
[2026-06-27 22:54:42,667.667 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:54:42,851.851 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:54:42,860.860 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:54:42,996.996 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:54:43,057.057 INFO    ] time= 27/06/2026 22:54:43
[2026-06-27 22:54:43,081.081 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:54:43,087.087 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:54:43,154.154 INFO    ] No existing commands found in stream
[2026-06-27 22:54:48,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:54:48,167.167 INFO    ] Waiting 3.10 seconds before fallback handling...
[2026-06-27 22:54:51,664.664 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 22:54:51,665.665 INFO    ] Checking for system updates...
[2026-06-27 22:54:51,687.687 INFO    ] 200
[2026-06-27 22:54:51,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:54:51,737.737 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:54:51,739.739 INFO    ] No update needed
[2026-06-27 22:54:51,740.740 INFO    ] Checking for camera pi updates...
[2026-06-27 22:54:51,772.772 INFO    ] 200
[2026-06-27 22:54:51,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:54:51,799.799 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:54:51,841.841 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:54:51,843.843 INFO    ] No camera update needed
[2026-06-27 22:54:51,844.844 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:54:51,846.846 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:54:51,849.849 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:54:51,852.852 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:54:53,891.891 INFO    ] ================================================
[2026-06-27 22:54:53,906.906 INFO    ] Launching Daemon at Sat Jun 27 22:54:53 IST 2026
[2026-06-27 22:54:53,917.917 INFO    ] ================================================
[2026-06-27 22:54:54,263.263 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:54:54
[2026-06-27 22:54:54,576.576 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:54:54,713.713 INFO    ] Initializing speech engine...
[2026-06-27 22:54:54,720.720 INFO    ] 2026-06-27 22:54:54
[2026-06-27 22:54:54,927.927 INFO    ] 2026-06-27 22:54:54
[2026-06-27 22:54:54,955.955 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:54:55,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:54:55,140.140 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:54:55,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:54:55,336.336 INFO    ] time= 27/06/2026 22:54:55
[2026-06-27 22:54:55,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:54:55,370.370 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:54:55,441.441 INFO    ] No existing commands found in stream
[2026-06-27 22:55:00,455.455 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:55:00,458.458 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-27 22:55:01,655.655 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 22:55:01,657.657 INFO    ] Checking for system updates...
[2026-06-27 22:55:01,685.685 INFO    ] 200
[2026-06-27 22:55:01,687.687 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:55:01,737.737 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:55:01,740.740 INFO    ] No update needed
[2026-06-27 22:55:01,742.742 INFO    ] Checking for camera pi updates...
[2026-06-27 22:55:01,770.770 INFO    ] 200
[2026-06-27 22:55:01,773.773 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:55:01,806.806 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:55:01,897.897 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:55:01,899.899 INFO    ] No camera update needed
[2026-06-27 22:55:01,901.901 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:55:01,903.903 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:55:01,908.908 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:55:01,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:55:03,955.955 INFO    ] ================================================
[2026-06-27 22:55:03,970.970 INFO    ] Launching Daemon at Sat Jun 27 22:55:03 IST 2026
[2026-06-27 22:55:03,982.982 INFO    ] ================================================
[2026-06-27 22:55:04,328.328 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:55:04
[2026-06-27 22:55:04,645.645 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:55:04,777.777 INFO    ] Initializing speech engine...
[2026-06-27 22:55:04,791.791 INFO    ] 2026-06-27 22:55:04
[2026-06-27 22:55:04,999.999 INFO    ] 2026-06-27 22:55:04
[2026-06-27 22:55:05,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:55:05,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:55:05,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:55:05,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:55:05,438.438 INFO    ] time= 27/06/2026 22:55:05
[2026-06-27 22:55:05,457.457 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:55:05,466.466 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:55:05,535.535 INFO    ] No existing commands found in stream
[2026-06-27 22:55:10,546.546 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:55:10,549.549 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-27 22:55:11,888.888 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 22:55:11,890.890 INFO    ] Checking for system updates...
[2026-06-27 22:55:11,911.911 INFO    ] 200
[2026-06-27 22:55:11,912.912 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:55:11,945.945 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:55:11,946.946 INFO    ] No update needed
[2026-06-27 22:55:11,948.948 INFO    ] Checking for camera pi updates...
[2026-06-27 22:55:11,967.967 INFO    ] 200
[2026-06-27 22:55:11,968.968 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:55:11,994.994 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:55:12,035.035 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:55:12,036.036 INFO    ] No camera update needed
[2026-06-27 22:55:12,037.037 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:55:12,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:55:12,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:55:12,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:55:14,085.085 INFO    ] ================================================
[2026-06-27 22:55:14,100.100 INFO    ] Launching Daemon at Sat Jun 27 22:55:14 IST 2026
[2026-06-27 22:55:14,111.111 INFO    ] ================================================
[2026-06-27 22:55:14,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:55:14
[2026-06-27 22:55:14,808.808 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:55:14,960.960 INFO    ] Initializing speech engine...
[2026-06-27 22:55:14,965.965 INFO    ] 2026-06-27 22:55:14
[2026-06-27 22:55:15,172.172 INFO    ] 2026-06-27 22:55:15
[2026-06-27 22:55:15,201.201 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:55:15,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:55:15,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:55:15,520.520 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:55:15,583.583 INFO    ] time= 27/06/2026 22:55:15
[2026-06-27 22:55:15,615.615 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:55:15,622.622 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:55:15,689.689 INFO    ] No existing commands found in stream
[2026-06-27 22:55:20,705.705 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:55:20,708.708 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-27 22:55:22,563.563 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:55:22,564.564 INFO    ] Checking for system updates...
[2026-06-27 22:55:22,587.587 INFO    ] 200
[2026-06-27 22:55:22,588.588 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:55:22,622.622 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:55:22,624.624 INFO    ] No update needed
[2026-06-27 22:55:22,625.625 INFO    ] Checking for camera pi updates...
[2026-06-27 22:55:22,647.647 INFO    ] 200
[2026-06-27 22:55:22,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:55:22,676.676 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:55:22,737.737 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:55:22,739.739 INFO    ] No camera update needed
[2026-06-27 22:55:22,740.740 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:55:22,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:55:22,746.746 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:55:22,749.749 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:55:24,791.791 INFO    ] ================================================
[2026-06-27 22:55:24,807.807 INFO    ] Launching Daemon at Sat Jun 27 22:55:24 IST 2026
[2026-06-27 22:55:24,818.818 INFO    ] ================================================
[2026-06-27 22:55:25,211.211 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:55:25
[2026-06-27 22:55:25,553.553 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:55:25,701.701 INFO    ] Initializing speech engine...
[2026-06-27 22:55:25,712.712 INFO    ] 2026-06-27 22:55:25
[2026-06-27 22:55:25,923.923 INFO    ] 2026-06-27 22:55:25
[2026-06-27 22:55:25,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:55:26,141.141 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:55:26,145.145 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:55:26,279.279 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:55:26,347.347 INFO    ] time= 27/06/2026 22:55:26
[2026-06-27 22:55:26,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:55:26,382.382 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:55:26,449.449 INFO    ] No existing commands found in stream
[2026-06-27 22:55:31,463.463 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:55:31,465.465 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-27 22:55:32,608.608 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:55:32,610.610 INFO    ] Checking for system updates...
[2026-06-27 22:55:32,632.632 INFO    ] 200
[2026-06-27 22:55:32,634.634 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:55:32,668.668 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:55:32,669.669 INFO    ] No update needed
[2026-06-27 22:55:32,671.671 INFO    ] Checking for camera pi updates...
[2026-06-27 22:55:32,690.690 INFO    ] 200
[2026-06-27 22:55:32,692.692 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:55:32,715.715 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:55:32,746.746 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:55:32,747.747 INFO    ] No camera update needed
[2026-06-27 22:55:32,749.749 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:55:32,750.750 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:55:32,753.753 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:55:32,756.756 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:55:34,798.798 INFO    ] ================================================
[2026-06-27 22:55:34,815.815 INFO    ] Launching Daemon at Sat Jun 27 22:55:34 IST 2026
[2026-06-27 22:55:34,826.826 INFO    ] ================================================
[2026-06-27 22:55:35,187.187 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:55:35
[2026-06-27 22:55:35,529.529 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:55:35,682.682 INFO    ] Initializing speech engine...
[2026-06-27 22:55:35,687.687 INFO    ] 2026-06-27 22:55:35
[2026-06-27 22:55:35,898.898 INFO    ] 2026-06-27 22:55:35
[2026-06-27 22:55:35,928.928 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:55:36,065.065 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:55:36,119.119 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:55:36,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:55:36,328.328 INFO    ] time= 27/06/2026 22:55:36
[2026-06-27 22:55:36,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:55:36,360.360 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:55:36,428.428 INFO    ] No existing commands found in stream
[2026-06-27 22:55:41,436.436 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:55:41,439.439 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-27 22:55:43,913.913 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:55:43,915.915 INFO    ] Checking for system updates...
[2026-06-27 22:55:43,935.935 INFO    ] 200
[2026-06-27 22:55:43,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:55:43,967.967 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:55:43,968.968 INFO    ] No update needed
[2026-06-27 22:55:43,970.970 INFO    ] Checking for camera pi updates...
[2026-06-27 22:55:43,990.990 INFO    ] 200
[2026-06-27 22:55:43,992.992 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:55:44,017.017 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:55:44,064.064 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:55:44,066.066 INFO    ] No camera update needed
[2026-06-27 22:55:44,067.067 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:55:44,068.068 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:55:44,071.071 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:55:44,074.074 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:55:46,113.113 INFO    ] ================================================
[2026-06-27 22:55:46,129.129 INFO    ] Launching Daemon at Sat Jun 27 22:55:46 IST 2026
[2026-06-27 22:55:46,141.141 INFO    ] ================================================
[2026-06-27 22:55:46,495.495 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:55:46
[2026-06-27 22:55:46,809.809 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:55:46,947.947 INFO    ] Initializing speech engine...
[2026-06-27 22:55:46,957.957 INFO    ] 2026-06-27 22:55:46
[2026-06-27 22:55:47,162.162 INFO    ] 2026-06-27 22:55:47
[2026-06-27 22:55:47,191.191 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:55:47,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:55:47,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:55:47,506.506 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:55:47,562.562 INFO    ] time= 27/06/2026 22:55:47
[2026-06-27 22:55:47,601.601 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:55:47,606.606 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:55:47,677.677 INFO    ] No existing commands found in stream
[2026-06-27 22:55:52,709.709 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:55:52,712.712 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-27 22:55:54,947.947 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:55:54,949.949 INFO    ] Checking for system updates...
[2026-06-27 22:55:54,969.969 INFO    ] 200
[2026-06-27 22:55:54,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:55:55,004.004 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:55:55,006.006 INFO    ] No update needed
[2026-06-27 22:55:55,007.007 INFO    ] Checking for camera pi updates...
[2026-06-27 22:55:55,026.026 INFO    ] 200
[2026-06-27 22:55:55,028.028 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:55:55,053.053 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:55:55,090.090 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:55:55,092.092 INFO    ] No camera update needed
[2026-06-27 22:55:55,093.093 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:55:55,094.094 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:55:55,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:55:55,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:55:57,142.142 INFO    ] ================================================
[2026-06-27 22:55:57,157.157 INFO    ] Launching Daemon at Sat Jun 27 22:55:57 IST 2026
[2026-06-27 22:55:57,168.168 INFO    ] ================================================
[2026-06-27 22:55:57,554.554 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:55:57
[2026-06-27 22:55:57,894.894 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:55:58,045.045 INFO    ] Initializing speech engine...
[2026-06-27 22:55:58,051.051 INFO    ] 2026-06-27 22:55:58
[2026-06-27 22:55:58,261.261 INFO    ] 2026-06-27 22:55:58
[2026-06-27 22:55:58,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:55:58,412.412 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:55:58,474.474 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:55:58,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:55:58,681.681 INFO    ] time= 27/06/2026 22:55:58
[2026-06-27 22:55:58,707.707 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:55:58,710.710 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:55:58,776.776 INFO    ] No existing commands found in stream
[2026-06-27 22:56:03,801.801 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:56:03,804.804 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-27 22:56:04,434.434 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:56:04,436.436 INFO    ] Checking for system updates...
[2026-06-27 22:56:04,456.456 INFO    ] 200
[2026-06-27 22:56:04,458.458 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:56:04,489.489 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:56:04,491.491 INFO    ] No update needed
[2026-06-27 22:56:04,492.492 INFO    ] Checking for camera pi updates...
[2026-06-27 22:56:04,512.512 INFO    ] 200
[2026-06-27 22:56:04,513.513 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:56:04,537.537 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:56:04,581.581 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:56:04,582.582 INFO    ] No camera update needed
[2026-06-27 22:56:04,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:56:04,586.586 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:56:04,589.589 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:56:04,592.592 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:56:06,631.631 INFO    ] ================================================
[2026-06-27 22:56:06,646.646 INFO    ] Launching Daemon at Sat Jun 27 22:56:06 IST 2026
[2026-06-27 22:56:06,657.657 INFO    ] ================================================
[2026-06-27 22:56:07,030.030 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:56:07
[2026-06-27 22:56:07,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:56:07,518.518 INFO    ] Initializing speech engine...
[2026-06-27 22:56:07,522.522 INFO    ] 2026-06-27 22:56:07
[2026-06-27 22:56:07,729.729 INFO    ] 2026-06-27 22:56:07
[2026-06-27 22:56:07,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:56:07,942.942 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:56:07,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:56:08,100.100 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:56:08,149.149 INFO    ] time= 27/06/2026 22:56:08
[2026-06-27 22:56:08,171.171 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:56:08,177.177 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:56:08,268.268 INFO    ] No existing commands found in stream
[2026-06-27 22:56:13,277.277 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:56:13,280.280 INFO    ] Waiting 1.39 seconds before fallback handling...
[2026-06-27 22:56:15,077.077 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:56:15,079.079 INFO    ] Checking for system updates...
[2026-06-27 22:56:15,101.101 INFO    ] 200
[2026-06-27 22:56:15,103.103 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:56:15,137.137 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:56:15,138.138 INFO    ] No update needed
[2026-06-27 22:56:15,140.140 INFO    ] Checking for camera pi updates...
[2026-06-27 22:56:15,159.159 INFO    ] 200
[2026-06-27 22:56:15,161.161 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:56:15,186.186 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:56:15,325.325 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:56:15,327.327 INFO    ] No camera update needed
[2026-06-27 22:56:15,328.328 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:56:15,330.330 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:56:15,333.333 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:56:15,336.336 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:56:17,375.375 INFO    ] ================================================
[2026-06-27 22:56:17,391.391 INFO    ] Launching Daemon at Sat Jun 27 22:56:17 IST 2026
[2026-06-27 22:56:17,402.402 INFO    ] ================================================
[2026-06-27 22:56:17,749.749 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:56:17
[2026-06-27 22:56:18,072.072 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:56:18,221.221 INFO    ] Initializing speech engine...
[2026-06-27 22:56:18,227.227 INFO    ] 2026-06-27 22:56:18
[2026-06-27 22:56:18,435.435 INFO    ] 2026-06-27 22:56:18
[2026-06-27 22:56:18,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:56:18,647.647 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:56:18,650.650 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:56:18,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:56:18,841.841 INFO    ] time= 27/06/2026 22:56:18
[2026-06-27 22:56:18,877.877 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:56:18,883.883 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:56:18,950.950 INFO    ] No existing commands found in stream
[2026-06-27 22:56:23,965.965 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:56:23,969.969 INFO    ] Waiting 2.15 seconds before fallback handling...
[2026-06-27 22:56:26,484.484 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 22:56:26,486.486 INFO    ] Checking for system updates...
[2026-06-27 22:56:26,509.509 INFO    ] 200
[2026-06-27 22:56:26,510.510 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:56:26,545.545 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:56:26,547.547 INFO    ] No update needed
[2026-06-27 22:56:26,548.548 INFO    ] Checking for camera pi updates...
[2026-06-27 22:56:26,568.568 INFO    ] 200
[2026-06-27 22:56:26,569.569 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:56:26,593.593 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:56:26,636.636 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:56:26,637.637 INFO    ] No camera update needed
[2026-06-27 22:56:26,639.639 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:56:26,640.640 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:56:26,643.643 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:56:26,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:56:28,686.686 INFO    ] ================================================
[2026-06-27 22:56:28,701.701 INFO    ] Launching Daemon at Sat Jun 27 22:56:28 IST 2026
[2026-06-27 22:56:28,712.712 INFO    ] ================================================
[2026-06-27 22:56:29,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:56:29
[2026-06-27 22:56:29,360.360 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:56:29,493.493 INFO    ] Initializing speech engine...
[2026-06-27 22:56:29,505.505 INFO    ] 2026-06-27 22:56:29
[2026-06-27 22:56:29,714.714 INFO    ] 2026-06-27 22:56:29
[2026-06-27 22:56:29,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:56:29,868.868 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:56:29,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:56:30,091.091 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:56:30,145.145 INFO    ] time= 27/06/2026 22:56:30
[2026-06-27 22:56:30,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:56:30,173.173 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:56:30,265.265 INFO    ] No existing commands found in stream
[2026-06-27 22:56:35,274.274 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:56:35,276.276 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-27 22:56:36,343.343 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:56:36,344.344 INFO    ] Checking for system updates...
[2026-06-27 22:56:36,365.365 INFO    ] 200
[2026-06-27 22:56:36,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:56:36,399.399 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:56:36,400.400 INFO    ] No update needed
[2026-06-27 22:56:36,402.402 INFO    ] Checking for camera pi updates...
[2026-06-27 22:56:36,421.421 INFO    ] 200
[2026-06-27 22:56:36,422.422 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:56:36,449.449 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:56:36,492.492 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:56:36,493.493 INFO    ] No camera update needed
[2026-06-27 22:56:36,494.494 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:56:36,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:56:36,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:56:36,501.501 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:56:38,541.541 INFO    ] ================================================
[2026-06-27 22:56:38,556.556 INFO    ] Launching Daemon at Sat Jun 27 22:56:38 IST 2026
[2026-06-27 22:56:38,566.566 INFO    ] ================================================
[2026-06-27 22:56:38,912.912 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:56:38
[2026-06-27 22:56:39,225.225 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:56:39,355.355 INFO    ] Initializing speech engine...
[2026-06-27 22:56:39,360.360 INFO    ] 2026-06-27 22:56:39
[2026-06-27 22:56:39,578.578 INFO    ] 2026-06-27 22:56:39
[2026-06-27 22:56:39,601.601 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:56:39,795.795 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:56:39,804.804 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:56:39,933.933 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:56:40,004.004 INFO    ] time= 27/06/2026 22:56:39
[2026-06-27 22:56:40,025.025 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:56:40,031.031 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:56:40,099.099 INFO    ] No existing commands found in stream
[2026-06-27 22:56:45,113.113 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:56:45,116.116 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-27 22:56:47,024.024 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 22:56:47,026.026 INFO    ] Checking for system updates...
[2026-06-27 22:56:47,046.046 INFO    ] 200
[2026-06-27 22:56:47,048.048 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:56:47,078.078 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:56:47,079.079 INFO    ] No update needed
[2026-06-27 22:56:47,080.080 INFO    ] Checking for camera pi updates...
[2026-06-27 22:56:47,100.100 INFO    ] 200
[2026-06-27 22:56:47,101.101 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:56:47,125.125 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:56:47,164.164 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:56:47,165.165 INFO    ] No camera update needed
[2026-06-27 22:56:47,166.166 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:56:47,168.168 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:56:47,170.170 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:56:47,173.173 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:56:49,211.211 INFO    ] ================================================
[2026-06-27 22:56:49,226.226 INFO    ] Launching Daemon at Sat Jun 27 22:56:49 IST 2026
[2026-06-27 22:56:49,237.237 INFO    ] ================================================
[2026-06-27 22:56:49,597.597 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:56:49
[2026-06-27 22:56:49,910.910 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:56:50,054.054 INFO    ] Initializing speech engine...
[2026-06-27 22:56:50,060.060 INFO    ] 2026-06-27 22:56:50
[2026-06-27 22:56:50,265.265 INFO    ] 2026-06-27 22:56:50
[2026-06-27 22:56:50,293.293 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:56:50,478.478 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:56:50,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:56:50,615.615 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:56:50,668.668 INFO    ] time= 27/06/2026 22:56:50
[2026-06-27 22:56:50,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:56:50,714.714 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:56:50,785.785 INFO    ] No existing commands found in stream
[2026-06-27 22:56:55,799.799 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:56:55,802.802 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-27 22:56:57,293.293 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 22:56:57,295.295 INFO    ] Checking for system updates...
[2026-06-27 22:56:57,317.317 INFO    ] 200
[2026-06-27 22:56:57,318.318 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:56:57,349.349 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:56:57,350.350 INFO    ] No update needed
[2026-06-27 22:56:57,351.351 INFO    ] Checking for camera pi updates...
[2026-06-27 22:56:57,373.373 INFO    ] 200
[2026-06-27 22:56:57,375.375 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:56:57,398.398 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:56:57,451.451 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:56:57,452.452 INFO    ] No camera update needed
[2026-06-27 22:56:57,454.454 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:56:57,455.455 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:56:57,458.458 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:56:57,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:56:59,498.498 INFO    ] ================================================
[2026-06-27 22:56:59,514.514 INFO    ] Launching Daemon at Sat Jun 27 22:56:59 IST 2026
[2026-06-27 22:56:59,525.525 INFO    ] ================================================
[2026-06-27 22:56:59,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:56:59
[2026-06-27 22:57:00,202.202 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:57:00,346.346 INFO    ] Initializing speech engine...
[2026-06-27 22:57:00,351.351 INFO    ] 2026-06-27 22:57:00
[2026-06-27 22:57:00,557.557 INFO    ] 2026-06-27 22:57:00
[2026-06-27 22:57:00,587.587 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:57:00,772.772 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:57:00,783.783 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:57:00,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:57:00,984.984 INFO    ] time= 27/06/2026 22:57:00
[2026-06-27 22:57:01,008.008 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:57:01,014.014 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:57:01,080.080 INFO    ] No existing commands found in stream
[2026-06-27 22:57:06,091.091 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:57:06,094.094 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-27 22:57:08,036.036 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:57:08,037.037 INFO    ] Checking for system updates...
[2026-06-27 22:57:08,059.059 INFO    ] 200
[2026-06-27 22:57:08,060.060 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:57:08,091.091 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:57:08,093.093 INFO    ] No update needed
[2026-06-27 22:57:08,094.094 INFO    ] Checking for camera pi updates...
[2026-06-27 22:57:08,114.114 INFO    ] 200
[2026-06-27 22:57:08,115.115 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:57:08,138.138 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:57:08,179.179 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:57:08,181.181 INFO    ] No camera update needed
[2026-06-27 22:57:08,182.182 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:57:08,183.183 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:57:08,186.186 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:57:08,189.189 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:57:10,228.228 INFO    ] ================================================
[2026-06-27 22:57:10,243.243 INFO    ] Launching Daemon at Sat Jun 27 22:57:10 IST 2026
[2026-06-27 22:57:10,254.254 INFO    ] ================================================
[2026-06-27 22:57:10,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:57:10
[2026-06-27 22:57:10,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:57:11,113.113 INFO    ] Initializing speech engine...
[2026-06-27 22:57:11,118.118 INFO    ] 2026-06-27 22:57:11
[2026-06-27 22:57:11,329.329 INFO    ] 2026-06-27 22:57:11
[2026-06-27 22:57:11,358.358 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:57:11,546.546 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:57:11,556.556 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:57:11,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:57:11,755.755 INFO    ] time= 27/06/2026 22:57:11
[2026-06-27 22:57:11,779.779 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:57:11,785.785 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:57:11,854.854 INFO    ] No existing commands found in stream
[2026-06-27 22:57:16,863.863 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:57:16,867.867 INFO    ] Waiting 2.34 seconds before fallback handling...
[2026-06-27 22:57:19,942.942 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:57:19,944.944 INFO    ] Checking for system updates...
[2026-06-27 22:57:19,966.966 INFO    ] 200
[2026-06-27 22:57:19,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:57:20,001.001 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:57:20,002.002 INFO    ] No update needed
[2026-06-27 22:57:20,003.003 INFO    ] Checking for camera pi updates...
[2026-06-27 22:57:20,027.027 INFO    ] 200
[2026-06-27 22:57:20,028.028 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:57:20,055.055 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:57:20,097.097 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:57:20,099.099 INFO    ] No camera update needed
[2026-06-27 22:57:20,100.100 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:57:20,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:57:20,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:57:20,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:57:22,147.147 INFO    ] ================================================
[2026-06-27 22:57:22,162.162 INFO    ] Launching Daemon at Sat Jun 27 22:57:22 IST 2026
[2026-06-27 22:57:22,173.173 INFO    ] ================================================
[2026-06-27 22:57:22,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:57:22
[2026-06-27 22:57:22,831.831 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:57:22,973.973 INFO    ] Initializing speech engine...
[2026-06-27 22:57:22,983.983 INFO    ] 2026-06-27 22:57:22
[2026-06-27 22:57:23,192.192 INFO    ] 2026-06-27 22:57:23
[2026-06-27 22:57:23,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:57:23,405.405 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:57:23,415.415 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:57:23,546.546 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:57:23,610.610 INFO    ] time= 27/06/2026 22:57:23
[2026-06-27 22:57:23,637.637 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:57:23,644.644 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:57:23,711.711 INFO    ] No existing commands found in stream
[2026-06-27 22:57:28,725.725 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:57:28,728.728 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-27 22:57:30,908.908 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 22:57:30,910.910 INFO    ] Checking for system updates...
[2026-06-27 22:57:30,930.930 INFO    ] 200
[2026-06-27 22:57:30,932.932 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:57:30,963.963 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:57:30,964.964 INFO    ] No update needed
[2026-06-27 22:57:30,966.966 INFO    ] Checking for camera pi updates...
[2026-06-27 22:57:30,986.986 INFO    ] 200
[2026-06-27 22:57:30,988.988 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:57:31,011.011 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:57:31,058.058 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:57:31,060.060 INFO    ] No camera update needed
[2026-06-27 22:57:31,061.061 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:57:31,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:57:31,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:57:31,069.069 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:57:33,100.100 INFO    ] ================================================
[2026-06-27 22:57:33,115.115 INFO    ] Launching Daemon at Sat Jun 27 22:57:33 IST 2026
[2026-06-27 22:57:33,126.126 INFO    ] ================================================
[2026-06-27 22:57:33,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:57:33
[2026-06-27 22:57:33,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:57:33,905.905 INFO    ] Initializing speech engine...
[2026-06-27 22:57:33,915.915 INFO    ] 2026-06-27 22:57:33
[2026-06-27 22:57:34,120.120 INFO    ] 2026-06-27 22:57:34
[2026-06-27 22:57:34,150.150 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:57:34,337.337 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:57:34,345.345 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:57:34,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:57:34,543.543 INFO    ] time= 27/06/2026 22:57:34
[2026-06-27 22:57:34,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:57:34,574.574 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:57:34,642.642 INFO    ] No existing commands found in stream
[2026-06-27 22:57:39,651.651 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:57:39,654.654 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-27 22:57:41,311.311 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 22:57:41,312.312 INFO    ] Checking for system updates...
[2026-06-27 22:57:41,333.333 INFO    ] 200
[2026-06-27 22:57:41,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:57:41,366.366 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:57:41,367.367 INFO    ] No update needed
[2026-06-27 22:57:41,368.368 INFO    ] Checking for camera pi updates...
[2026-06-27 22:57:41,388.388 INFO    ] 200
[2026-06-27 22:57:41,389.389 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:57:41,414.414 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:57:41,456.456 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:57:41,457.457 INFO    ] No camera update needed
[2026-06-27 22:57:41,458.458 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:57:41,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:57:41,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:57:41,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:57:43,503.503 INFO    ] ================================================
[2026-06-27 22:57:43,518.518 INFO    ] Launching Daemon at Sat Jun 27 22:57:43 IST 2026
[2026-06-27 22:57:43,529.529 INFO    ] ================================================
[2026-06-27 22:57:43,873.873 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:57:43
[2026-06-27 22:57:44,185.185 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:57:44,322.322 INFO    ] Initializing speech engine...
[2026-06-27 22:57:44,332.332 INFO    ] 2026-06-27 22:57:44
[2026-06-27 22:57:44,534.534 INFO    ] 2026-06-27 22:57:44
[2026-06-27 22:57:44,562.562 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:57:44,746.746 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:57:44,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:57:44,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:57:44,951.951 INFO    ] time= 27/06/2026 22:57:44
[2026-06-27 22:57:44,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:57:44,981.981 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:57:45,048.048 INFO    ] No existing commands found in stream
[2026-06-27 22:57:50,062.062 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:57:50,065.065 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-27 22:57:53,062.062 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 22:57:53,063.063 INFO    ] Checking for system updates...
[2026-06-27 22:57:53,086.086 INFO    ] 200
[2026-06-27 22:57:53,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:57:53,119.119 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:57:53,121.121 INFO    ] No update needed
[2026-06-27 22:57:53,122.122 INFO    ] Checking for camera pi updates...
[2026-06-27 22:57:53,142.142 INFO    ] 200
[2026-06-27 22:57:53,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:57:53,168.168 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:57:53,222.222 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:57:53,223.223 INFO    ] No camera update needed
[2026-06-27 22:57:53,224.224 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:57:53,225.225 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:57:53,228.228 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:57:53,231.231 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:57:55,269.269 INFO    ] ================================================
[2026-06-27 22:57:55,284.284 INFO    ] Launching Daemon at Sat Jun 27 22:57:55 IST 2026
[2026-06-27 22:57:55,294.294 INFO    ] ================================================
[2026-06-27 22:57:55,638.638 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:57:55
[2026-06-27 22:57:55,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:57:56,093.093 INFO    ] Initializing speech engine...
[2026-06-27 22:57:56,098.098 INFO    ] 2026-06-27 22:57:56
[2026-06-27 22:57:56,302.302 INFO    ] 2026-06-27 22:57:56
[2026-06-27 22:57:56,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:57:56,513.513 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:57:56,523.523 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:57:56,674.674 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:57:56,728.728 INFO    ] time= 27/06/2026 22:57:56
[2026-06-27 22:57:56,744.744 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:57:56,749.749 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:57:56,816.816 INFO    ] No existing commands found in stream
[2026-06-27 22:58:01,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:58:01,828.828 INFO    ] Waiting 1.88 seconds before fallback handling...
[2026-06-27 22:58:04,091.091 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 22:58:04,092.092 INFO    ] Checking for system updates...
[2026-06-27 22:58:04,115.115 INFO    ] 200
[2026-06-27 22:58:04,116.116 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:58:04,149.149 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:58:04,150.150 INFO    ] No update needed
[2026-06-27 22:58:04,151.151 INFO    ] Checking for camera pi updates...
[2026-06-27 22:58:04,171.171 INFO    ] 200
[2026-06-27 22:58:04,172.172 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:58:04,196.196 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:58:04,245.245 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:58:04,247.247 INFO    ] No camera update needed
[2026-06-27 22:58:04,248.248 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:58:04,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:58:04,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:58:04,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:58:06,294.294 INFO    ] ================================================
[2026-06-27 22:58:06,309.309 INFO    ] Launching Daemon at Sat Jun 27 22:58:06 IST 2026
[2026-06-27 22:58:06,320.320 INFO    ] ================================================
[2026-06-27 22:58:06,684.684 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:58:06
[2026-06-27 22:58:06,996.996 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:58:07,127.127 INFO    ] Initializing speech engine...
[2026-06-27 22:58:07,135.135 INFO    ] 2026-06-27 22:58:07
[2026-06-27 22:58:07,347.347 INFO    ] 2026-06-27 22:58:07
[2026-06-27 22:58:07,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:58:07,563.563 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:58:07,572.572 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:58:07,720.720 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:58:07,775.775 INFO    ] time= 27/06/2026 22:58:07
[2026-06-27 22:58:07,796.796 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:58:07,802.802 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:58:07,871.871 INFO    ] No existing commands found in stream
[2026-06-27 22:58:12,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:58:12,888.888 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-27 22:58:15,448.448 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 22:58:15,450.450 INFO    ] Checking for system updates...
[2026-06-27 22:58:15,471.471 INFO    ] 200
[2026-06-27 22:58:15,473.473 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:58:15,503.503 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:58:15,504.504 INFO    ] No update needed
[2026-06-27 22:58:15,506.506 INFO    ] Checking for camera pi updates...
[2026-06-27 22:58:15,526.526 INFO    ] 200
[2026-06-27 22:58:15,527.527 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:58:15,554.554 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:58:15,601.601 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:58:15,603.603 INFO    ] No camera update needed
[2026-06-27 22:58:15,604.604 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:58:15,605.605 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:58:15,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:58:15,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:58:17,649.649 INFO    ] ================================================
[2026-06-27 22:58:17,664.664 INFO    ] Launching Daemon at Sat Jun 27 22:58:17 IST 2026
[2026-06-27 22:58:17,674.674 INFO    ] ================================================
[2026-06-27 22:58:18,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:58:18
[2026-06-27 22:58:18,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:58:18,475.475 INFO    ] Initializing speech engine...
[2026-06-27 22:58:18,479.479 INFO    ] 2026-06-27 22:58:18
[2026-06-27 22:58:18,699.699 INFO    ] 2026-06-27 22:58:18
[2026-06-27 22:58:18,728.728 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:58:18,912.912 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:58:18,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:58:19,046.046 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:58:19,104.104 INFO    ] time= 27/06/2026 22:58:19
[2026-06-27 22:58:19,141.141 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:58:19,147.147 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:58:19,213.213 INFO    ] No existing commands found in stream
[2026-06-27 22:58:24,223.223 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:58:24,226.226 INFO    ] Waiting 3.81 seconds before fallback handling...
[2026-06-27 22:58:28,433.433 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 22:58:28,434.434 INFO    ] Checking for system updates...
[2026-06-27 22:58:28,456.456 INFO    ] 200
[2026-06-27 22:58:28,457.457 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:58:28,487.487 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:58:28,489.489 INFO    ] No update needed
[2026-06-27 22:58:28,490.490 INFO    ] Checking for camera pi updates...
[2026-06-27 22:58:28,510.510 INFO    ] 200
[2026-06-27 22:58:28,511.511 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:58:28,534.534 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:58:28,676.676 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:58:28,677.677 INFO    ] No camera update needed
[2026-06-27 22:58:28,679.679 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:58:28,680.680 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:58:28,683.683 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:58:28,686.686 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:58:30,723.723 INFO    ] ================================================
[2026-06-27 22:58:30,738.738 INFO    ] Launching Daemon at Sat Jun 27 22:58:30 IST 2026
[2026-06-27 22:58:30,748.748 INFO    ] ================================================
[2026-06-27 22:58:31,081.081 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:58:31
[2026-06-27 22:58:31,394.394 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:58:31,524.524 INFO    ] Initializing speech engine...
[2026-06-27 22:58:31,529.529 INFO    ] 2026-06-27 22:58:31
[2026-06-27 22:58:31,747.747 INFO    ] 2026-06-27 22:58:31
[2026-06-27 22:58:31,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:58:31,963.963 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:58:31,971.971 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:58:32,138.138 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:58:32,191.191 INFO    ] time= 27/06/2026 22:58:32
[2026-06-27 22:58:32,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:58:32,257.257 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:58:32,352.352 INFO    ] No existing commands found in stream
[2026-06-27 22:58:37,362.362 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:58:37,365.365 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-27 22:58:40,492.492 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:58:40,494.494 INFO    ] Checking for system updates...
[2026-06-27 22:58:40,515.515 INFO    ] 200
[2026-06-27 22:58:40,517.517 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:58:40,547.547 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:58:40,549.549 INFO    ] No update needed
[2026-06-27 22:58:40,550.550 INFO    ] Checking for camera pi updates...
[2026-06-27 22:58:40,569.569 INFO    ] 200
[2026-06-27 22:58:40,571.571 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:58:40,595.595 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:58:40,637.637 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:58:40,638.638 INFO    ] No camera update needed
[2026-06-27 22:58:40,639.639 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:58:40,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:58:40,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:58:40,646.646 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:58:42,685.685 INFO    ] ================================================
[2026-06-27 22:58:42,701.701 INFO    ] Launching Daemon at Sat Jun 27 22:58:42 IST 2026
[2026-06-27 22:58:42,712.712 INFO    ] ================================================
[2026-06-27 22:58:43,057.057 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:58:43
[2026-06-27 22:58:43,374.374 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:58:43,504.504 INFO    ] Initializing speech engine...
[2026-06-27 22:58:43,508.508 INFO    ] 2026-06-27 22:58:43
[2026-06-27 22:58:43,728.728 INFO    ] 2026-06-27 22:58:43
[2026-06-27 22:58:43,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:58:43,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:58:43,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:58:44,078.078 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:58:44,146.146 INFO    ] time= 27/06/2026 22:58:44
[2026-06-27 22:58:44,173.173 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:58:44,179.179 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:58:44,246.246 INFO    ] No existing commands found in stream
[2026-06-27 22:58:49,255.255 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:58:49,258.258 INFO    ] Waiting 0.28 seconds before fallback handling...
[2026-06-27 22:58:49,944.944 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 22:58:49,945.945 INFO    ] Checking for system updates...
[2026-06-27 22:58:49,966.966 INFO    ] 200
[2026-06-27 22:58:49,968.968 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:58:50,000.000 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:58:50,001.001 INFO    ] No update needed
[2026-06-27 22:58:50,002.002 INFO    ] Checking for camera pi updates...
[2026-06-27 22:58:50,023.023 INFO    ] 200
[2026-06-27 22:58:50,024.024 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:58:50,048.048 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:58:50,094.094 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:58:50,095.095 INFO    ] No camera update needed
[2026-06-27 22:58:50,096.096 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:58:50,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:58:50,100.100 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:58:50,103.103 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:58:52,141.141 INFO    ] ================================================
[2026-06-27 22:58:52,157.157 INFO    ] Launching Daemon at Sat Jun 27 22:58:52 IST 2026
[2026-06-27 22:58:52,168.168 INFO    ] ================================================
[2026-06-27 22:58:52,490.490 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:58:52
[2026-06-27 22:58:52,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:58:52,941.941 INFO    ] Initializing speech engine...
[2026-06-27 22:58:52,946.946 INFO    ] 2026-06-27 22:58:52
[2026-06-27 22:58:53,157.157 INFO    ] 2026-06-27 22:58:53
[2026-06-27 22:58:53,187.187 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:58:53,374.374 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:58:53,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:58:53,527.527 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:58:53,585.585 INFO    ] time= 27/06/2026 22:58:53
[2026-06-27 22:58:53,608.608 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:58:53,614.614 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:58:53,681.681 INFO    ] No existing commands found in stream
[2026-06-27 22:58:58,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:58:58,692.692 INFO    ] Waiting 1.38 seconds before fallback handling...
[2026-06-27 22:59:00,495.495 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 22:59:00,497.497 INFO    ] Checking for system updates...
[2026-06-27 22:59:00,518.518 INFO    ] 200
[2026-06-27 22:59:00,520.520 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:59:00,550.550 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:59:00,551.551 INFO    ] No update needed
[2026-06-27 22:59:00,552.552 INFO    ] Checking for camera pi updates...
[2026-06-27 22:59:00,573.573 INFO    ] 200
[2026-06-27 22:59:00,575.575 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:59:00,599.599 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:59:00,644.644 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:59:00,645.645 INFO    ] No camera update needed
[2026-06-27 22:59:00,646.646 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:59:00,648.648 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:59:00,650.650 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:59:00,653.653 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:59:02,680.680 INFO    ] ================================================
[2026-06-27 22:59:02,688.688 INFO    ] Launching Daemon at Sat Jun 27 22:59:02 IST 2026
[2026-06-27 22:59:02,694.694 INFO    ] ================================================
[2026-06-27 22:59:03,045.045 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:59:03
[2026-06-27 22:59:03,357.357 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:59:03,499.499 INFO    ] Initializing speech engine...
[2026-06-27 22:59:03,504.504 INFO    ] 2026-06-27 22:59:03
[2026-06-27 22:59:03,707.707 INFO    ] 2026-06-27 22:59:03
[2026-06-27 22:59:03,736.736 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:59:03,919.919 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:59:03,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:59:04,074.074 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:59:04,125.125 INFO    ] time= 27/06/2026 22:59:04
[2026-06-27 22:59:04,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:59:04,154.154 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:59:04,221.221 INFO    ] No existing commands found in stream
[2026-06-27 22:59:09,230.230 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:59:09,233.233 INFO    ] Waiting 2.10 seconds before fallback handling...
[2026-06-27 22:59:11,727.727 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 22:59:11,729.729 INFO    ] Checking for system updates...
[2026-06-27 22:59:11,749.749 INFO    ] 200
[2026-06-27 22:59:11,751.751 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:59:11,783.783 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:59:11,785.785 INFO    ] No update needed
[2026-06-27 22:59:11,786.786 INFO    ] Checking for camera pi updates...
[2026-06-27 22:59:11,809.809 INFO    ] 200
[2026-06-27 22:59:11,810.810 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:59:11,833.833 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:59:11,875.875 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:59:11,876.876 INFO    ] No camera update needed
[2026-06-27 22:59:11,877.877 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:59:11,879.879 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:59:11,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:59:11,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:59:13,924.924 INFO    ] ================================================
[2026-06-27 22:59:13,939.939 INFO    ] Launching Daemon at Sat Jun 27 22:59:13 IST 2026
[2026-06-27 22:59:13,950.950 INFO    ] ================================================
[2026-06-27 22:59:14,327.327 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:59:14
[2026-06-27 22:59:14,646.646 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:59:14,777.777 INFO    ] Initializing speech engine...
[2026-06-27 22:59:14,785.785 INFO    ] 2026-06-27 22:59:14
[2026-06-27 22:59:14,999.999 INFO    ] 2026-06-27 22:59:14
[2026-06-27 22:59:15,028.028 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:59:15,214.214 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:59:15,224.224 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:59:15,443.443 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:59:15,445.445 INFO    ] time= 27/06/2026 22:59:15
[2026-06-27 22:59:15,447.447 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:59:15,499.499 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:59:15,571.571 INFO    ] No existing commands found in stream
[2026-06-27 22:59:20,581.581 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:59:20,584.584 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-27 22:59:23,736.736 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 22:59:23,738.738 INFO    ] Checking for system updates...
[2026-06-27 22:59:23,761.761 INFO    ] 200
[2026-06-27 22:59:23,763.763 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:59:23,793.793 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:59:23,795.795 INFO    ] No update needed
[2026-06-27 22:59:23,796.796 INFO    ] Checking for camera pi updates...
[2026-06-27 22:59:23,816.816 INFO    ] 200
[2026-06-27 22:59:23,818.818 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:59:23,842.842 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:59:23,890.890 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:59:23,892.892 INFO    ] No camera update needed
[2026-06-27 22:59:23,893.893 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:59:23,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:59:23,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:59:23,900.900 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:59:25,939.939 INFO    ] ================================================
[2026-06-27 22:59:25,955.955 INFO    ] Launching Daemon at Sat Jun 27 22:59:25 IST 2026
[2026-06-27 22:59:25,966.966 INFO    ] ================================================
[2026-06-27 22:59:26,332.332 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:59:26
[2026-06-27 22:59:26,672.672 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:59:26,823.823 INFO    ] Initializing speech engine...
[2026-06-27 22:59:26,829.829 INFO    ] 2026-06-27 22:59:26
[2026-06-27 22:59:27,038.038 INFO    ] 2026-06-27 22:59:27
[2026-06-27 22:59:27,067.067 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:59:27,254.254 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:59:27,264.264 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:59:27,429.429 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:59:27,483.483 INFO    ] time= 27/06/2026 22:59:27
[2026-06-27 22:59:27,489.489 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:59:27,491.491 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:59:27,558.558 INFO    ] No existing commands found in stream
[2026-06-27 22:59:32,567.567 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:59:32,570.570 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-27 22:59:34,792.792 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 22:59:34,793.793 INFO    ] Checking for system updates...
[2026-06-27 22:59:34,815.815 INFO    ] 200
[2026-06-27 22:59:34,816.816 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:59:34,849.849 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:59:34,851.851 INFO    ] No update needed
[2026-06-27 22:59:34,852.852 INFO    ] Checking for camera pi updates...
[2026-06-27 22:59:34,875.875 INFO    ] 200
[2026-06-27 22:59:34,877.877 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:59:34,904.904 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:59:34,946.946 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:59:34,948.948 INFO    ] No camera update needed
[2026-06-27 22:59:34,949.949 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:59:34,950.950 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:59:34,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:59:34,957.957 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:59:37,996.996 INFO    ] ================================================
[2026-06-27 22:59:37,011.011 INFO    ] Launching Daemon at Sat Jun 27 22:59:37 IST 2026
[2026-06-27 22:59:37,022.022 INFO    ] ================================================
[2026-06-27 22:59:37,409.409 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:59:37
[2026-06-27 22:59:37,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:59:37,901.901 INFO    ] Initializing speech engine...
[2026-06-27 22:59:37,907.907 INFO    ] 2026-06-27 22:59:37
[2026-06-27 22:59:38,113.113 INFO    ] 2026-06-27 22:59:38
[2026-06-27 22:59:38,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:59:38,327.327 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:59:38,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:59:38,480.480 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:59:38,533.533 INFO    ] time= 27/06/2026 22:59:38
[2026-06-27 22:59:38,556.556 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:59:38,562.562 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:59:38,629.629 INFO    ] No existing commands found in stream
[2026-06-27 22:59:43,644.644 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:59:43,647.647 INFO    ] Waiting 0.93 seconds before fallback handling...
[2026-06-27 22:59:45,009.009 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 22:59:45,010.010 INFO    ] Checking for system updates...
[2026-06-27 22:59:45,031.031 INFO    ] 200
[2026-06-27 22:59:45,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:59:45,066.066 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:59:45,067.067 INFO    ] No update needed
[2026-06-27 22:59:45,069.069 INFO    ] Checking for camera pi updates...
[2026-06-27 22:59:45,091.091 INFO    ] 200
[2026-06-27 22:59:45,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:59:45,116.116 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:59:45,159.159 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 22:59:45,161.161 INFO    ] No camera update needed
[2026-06-27 22:59:45,162.162 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:59:45,164.164 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:59:45,167.167 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:59:45,170.170 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:59:47,207.207 INFO    ] ================================================
[2026-06-27 22:59:47,222.222 INFO    ] Launching Daemon at Sat Jun 27 22:59:47 IST 2026
[2026-06-27 22:59:47,233.233 INFO    ] ================================================
[2026-06-27 22:59:47,623.623 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:59:47
[2026-06-27 22:59:47,962.962 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:59:48,113.113 INFO    ] Initializing speech engine...
[2026-06-27 22:59:48,119.119 INFO    ] 2026-06-27 22:59:48
[2026-06-27 22:59:48,328.328 INFO    ] 2026-06-27 22:59:48
[2026-06-27 22:59:48,357.357 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:59:48,544.544 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:59:48,552.552 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:59:48,683.683 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:59:48,751.751 INFO    ] time= 27/06/2026 22:59:48
[2026-06-27 22:59:48,776.776 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:59:48,782.782 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:59:48,850.850 INFO    ] No existing commands found in stream
[2026-06-27 22:59:53,856.856 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 22:59:53,859.859 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-27 22:59:54,863.863 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 22:59:54,865.865 INFO    ] Checking for system updates...
[2026-06-27 22:59:54,887.887 INFO    ] 200
[2026-06-27 22:59:54,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:59:54,920.920 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:59:54,922.922 INFO    ] No update needed
[2026-06-27 22:59:54,923.923 INFO    ] Checking for camera pi updates...
[2026-06-27 22:59:54,945.945 INFO    ] 200
[2026-06-27 22:59:54,946.946 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 22:59:54,974.974 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 22:59:55,004.004 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 22:59:55,006.006 INFO    ] No camera update needed
[2026-06-27 22:59:55,007.007 INFO    ] Script finished. Safe exiting...
[2026-06-27 22:59:55,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 22:59:55,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 22:59:55,015.015 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 22:59:57,054.054 INFO    ] ================================================
[2026-06-27 22:59:57,069.069 INFO    ] Launching Daemon at Sat Jun 27 22:59:57 IST 2026
[2026-06-27 22:59:57,080.080 INFO    ] ================================================
[2026-06-27 22:59:57,474.474 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 22:59:57
[2026-06-27 22:59:57,815.815 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 22:59:57,973.973 INFO    ] Initializing speech engine...
[2026-06-27 22:59:57,978.978 INFO    ] 2026-06-27 22:59:57
[2026-06-27 22:59:58,191.191 INFO    ] 2026-06-27 22:59:58
[2026-06-27 22:59:58,220.220 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 22:59:58,407.407 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 22:59:58,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 22:59:58,636.636 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 22:59:58,639.639 INFO    ] time= 27/06/2026 22:59:58
[2026-06-27 22:59:58,644.644 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 22:59:58,646.646 INFO    ] Checking for existing commands in stream...
[2026-06-27 22:59:58,776.776 INFO    ] No existing commands found in stream
[2026-06-27 23:00:03,787.787 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:00:03,796.796 INFO    ] Waiting 3.40 seconds before fallback handling...
[2026-06-27 23:00:09,723.723 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 23:00:09,726.726 INFO    ] Checking for system updates...
[2026-06-27 23:00:09,747.747 INFO    ] 200
[2026-06-27 23:00:09,748.748 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:00:09,780.780 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:00:09,782.782 INFO    ] No update needed
[2026-06-27 23:00:09,783.783 INFO    ] Checking for camera pi updates...
[2026-06-27 23:00:09,806.806 INFO    ] 200
[2026-06-27 23:00:09,807.807 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:00:09,830.830 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:00:09,871.871 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:00:09,872.872 INFO    ] No camera update needed
[2026-06-27 23:00:09,874.874 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:00:09,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:00:09,879.879 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:00:09,882.882 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:00:11,921.921 INFO    ] ================================================
[2026-06-27 23:00:11,936.936 INFO    ] Launching Daemon at Sat Jun 27 23:00:11 IST 2026
[2026-06-27 23:00:11,947.947 INFO    ] ================================================
[2026-06-27 23:00:12,293.293 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:00:12
[2026-06-27 23:00:12,611.611 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:00:12,755.755 INFO    ] Initializing speech engine...
[2026-06-27 23:00:12,760.760 INFO    ] 2026-06-27 23:00:12
[2026-06-27 23:00:12,965.965 INFO    ] 2026-06-27 23:00:12
[2026-06-27 23:00:12,993.993 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:00:13,178.178 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:00:13,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:00:13,339.339 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:00:13,386.386 INFO    ] time= 27/06/2026 23:00:13
[2026-06-27 23:00:13,410.410 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:00:13,416.416 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:00:13,482.482 INFO    ] No existing commands found in stream
[2026-06-27 23:00:18,497.497 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:00:18,499.499 INFO    ] Waiting 0.70 seconds before fallback handling...
[2026-06-27 23:00:19,571.571 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:00:19,572.572 INFO    ] Checking for system updates...
[2026-06-27 23:00:19,594.594 INFO    ] 200
[2026-06-27 23:00:19,595.595 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:00:19,626.626 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:00:19,628.628 INFO    ] No update needed
[2026-06-27 23:00:19,629.629 INFO    ] Checking for camera pi updates...
[2026-06-27 23:00:19,650.650 INFO    ] 200
[2026-06-27 23:00:19,652.652 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:00:19,678.678 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:00:19,728.728 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:00:19,730.730 INFO    ] No camera update needed
[2026-06-27 23:00:19,731.731 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:00:19,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:00:19,736.736 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:00:19,739.739 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:00:21,778.778 INFO    ] ================================================
[2026-06-27 23:00:21,793.793 INFO    ] Launching Daemon at Sat Jun 27 23:00:21 IST 2026
[2026-06-27 23:00:21,803.803 INFO    ] ================================================
[2026-06-27 23:00:22,142.142 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:00:22
[2026-06-27 23:00:22,479.479 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:00:22,629.629 INFO    ] Initializing speech engine...
[2026-06-27 23:00:22,634.634 INFO    ] 2026-06-27 23:00:22
[2026-06-27 23:00:22,843.843 INFO    ] 2026-06-27 23:00:22
[2026-06-27 23:00:22,872.872 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:00:23,067.067 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:00:23,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:00:23,349.349 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:00:23,357.357 INFO    ] time= 27/06/2026 23:00:23
[2026-06-27 23:00:23,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:00:23,379.379 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:00:23,503.503 INFO    ] No existing commands found in stream
[2026-06-27 23:00:28,514.514 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:00:28,517.517 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-27 23:00:30,571.571 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:00:30,572.572 INFO    ] Checking for system updates...
[2026-06-27 23:00:30,594.594 INFO    ] 200
[2026-06-27 23:00:30,596.596 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:00:30,628.628 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:00:30,629.629 INFO    ] No update needed
[2026-06-27 23:00:30,631.631 INFO    ] Checking for camera pi updates...
[2026-06-27 23:00:30,651.651 INFO    ] 200
[2026-06-27 23:00:30,652.652 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:00:30,678.678 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:00:30,817.817 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:00:30,818.818 INFO    ] No camera update needed
[2026-06-27 23:00:30,819.819 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:00:30,821.821 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:00:30,824.824 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:00:30,827.827 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:00:32,866.866 INFO    ] ================================================
[2026-06-27 23:00:32,881.881 INFO    ] Launching Daemon at Sat Jun 27 23:00:32 IST 2026
[2026-06-27 23:00:32,892.892 INFO    ] ================================================
[2026-06-27 23:00:33,247.247 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:00:33
[2026-06-27 23:00:33,566.566 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:00:33,698.698 INFO    ] Initializing speech engine...
[2026-06-27 23:00:33,702.702 INFO    ] 2026-06-27 23:00:33
[2026-06-27 23:00:33,934.934 INFO    ] 2026-06-27 23:00:33
[2026-06-27 23:00:33,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:00:34,162.162 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:00:34,165.165 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:00:34,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:00:34,373.373 INFO    ] time= 27/06/2026 23:00:34
[2026-06-27 23:00:34,397.397 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:00:34,403.403 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:00:34,469.469 INFO    ] No existing commands found in stream
[2026-06-27 23:00:39,479.479 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:00:39,482.482 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-27 23:00:41,847.847 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 23:00:41,848.848 INFO    ] Checking for system updates...
[2026-06-27 23:00:41,870.870 INFO    ] 200
[2026-06-27 23:00:41,872.872 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:00:41,905.905 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:00:41,906.906 INFO    ] No update needed
[2026-06-27 23:00:41,908.908 INFO    ] Checking for camera pi updates...
[2026-06-27 23:00:41,927.927 INFO    ] 200
[2026-06-27 23:00:41,929.929 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:00:41,954.954 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:00:42,008.008 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:00:42,010.010 INFO    ] No camera update needed
[2026-06-27 23:00:42,011.011 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:00:42,013.013 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:00:42,016.016 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:00:42,019.019 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:00:44,058.058 INFO    ] ================================================
[2026-06-27 23:00:44,073.073 INFO    ] Launching Daemon at Sat Jun 27 23:00:44 IST 2026
[2026-06-27 23:00:44,084.084 INFO    ] ================================================
[2026-06-27 23:00:44,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:00:44
[2026-06-27 23:00:44,729.729 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:00:44,873.873 INFO    ] Initializing speech engine...
[2026-06-27 23:00:44,879.879 INFO    ] 2026-06-27 23:00:44
[2026-06-27 23:00:45,081.081 INFO    ] 2026-06-27 23:00:45
[2026-06-27 23:00:45,110.110 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:00:45,295.295 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:00:45,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:00:45,427.427 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:00:45,478.478 INFO    ] time= 27/06/2026 23:00:45
[2026-06-27 23:00:45,517.517 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:00:45,527.527 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:00:45,596.596 INFO    ] No existing commands found in stream
[2026-06-27 23:00:50,604.604 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:00:50,607.607 INFO    ] Waiting 3.79 seconds before fallback handling...
[2026-06-27 23:00:54,790.790 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 23:00:54,792.792 INFO    ] Checking for system updates...
[2026-06-27 23:00:54,813.813 INFO    ] 200
[2026-06-27 23:00:54,814.814 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:00:54,847.847 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:00:54,848.848 INFO    ] No update needed
[2026-06-27 23:00:54,849.849 INFO    ] Checking for camera pi updates...
[2026-06-27 23:00:54,869.869 INFO    ] 200
[2026-06-27 23:00:54,870.870 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:00:54,894.894 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:00:54,934.934 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:00:54,935.935 INFO    ] No camera update needed
[2026-06-27 23:00:54,936.936 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:00:54,938.938 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:00:54,940.940 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:00:54,943.943 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:00:56,982.982 INFO    ] ================================================
[2026-06-27 23:00:57,998.998 INFO    ] Launching Daemon at Sat Jun 27 23:00:56 IST 2026
[2026-06-27 23:00:57,008.008 INFO    ] ================================================
[2026-06-27 23:00:57,365.365 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:00:57
[2026-06-27 23:00:57,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:00:57,815.815 INFO    ] Initializing speech engine...
[2026-06-27 23:00:57,820.820 INFO    ] 2026-06-27 23:00:57
[2026-06-27 23:00:58,050.050 INFO    ] 2026-06-27 23:00:58
[2026-06-27 23:00:58,081.081 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:00:58,215.215 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:00:58,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:00:58,422.422 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:00:58,489.489 INFO    ] time= 27/06/2026 23:00:58
[2026-06-27 23:00:58,513.513 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:00:58,519.519 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:00:58,586.586 INFO    ] No existing commands found in stream
[2026-06-27 23:01:03,600.600 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:01:03,603.603 INFO    ] Waiting 2.98 seconds before fallback handling...
[2026-06-27 23:01:06,986.986 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 23:01:06,988.988 INFO    ] Checking for system updates...
[2026-06-27 23:01:07,009.009 INFO    ] 200
[2026-06-27 23:01:07,011.011 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:01:07,041.041 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:01:07,042.042 INFO    ] No update needed
[2026-06-27 23:01:07,044.044 INFO    ] Checking for camera pi updates...
[2026-06-27 23:01:07,063.063 INFO    ] 200
[2026-06-27 23:01:07,065.065 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:01:07,089.089 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:01:07,139.139 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:01:07,141.141 INFO    ] No camera update needed
[2026-06-27 23:01:07,142.142 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:01:07,143.143 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:01:07,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:01:07,149.149 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:01:09,187.187 INFO    ] ================================================
[2026-06-27 23:01:09,203.203 INFO    ] Launching Daemon at Sat Jun 27 23:01:09 IST 2026
[2026-06-27 23:01:09,214.214 INFO    ] ================================================
[2026-06-27 23:01:09,550.550 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:01:09
[2026-06-27 23:01:09,868.868 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:01:10,012.012 INFO    ] Initializing speech engine...
[2026-06-27 23:01:10,017.017 INFO    ] 2026-06-27 23:01:10
[2026-06-27 23:01:10,221.221 INFO    ] 2026-06-27 23:01:10
[2026-06-27 23:01:10,249.249 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:01:10,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:01:10,438.438 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:01:10,634.634 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:01:10,663.663 INFO    ] time= 27/06/2026 23:01:10
[2026-06-27 23:01:10,665.665 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:01:10,671.671 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:01:10,738.738 INFO    ] No existing commands found in stream
[2026-06-27 23:01:15,752.752 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:01:15,755.755 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-27 23:01:16,205.205 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 23:01:16,206.206 INFO    ] Checking for system updates...
[2026-06-27 23:01:16,229.229 INFO    ] 200
[2026-06-27 23:01:16,230.230 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:01:16,262.262 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:01:16,263.263 INFO    ] No update needed
[2026-06-27 23:01:16,265.265 INFO    ] Checking for camera pi updates...
[2026-06-27 23:01:16,285.285 INFO    ] 200
[2026-06-27 23:01:16,286.286 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:01:16,315.315 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:01:16,358.358 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:01:16,359.359 INFO    ] No camera update needed
[2026-06-27 23:01:16,361.361 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:01:16,362.362 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:01:16,365.365 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:01:16,368.368 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:01:18,405.405 INFO    ] ================================================
[2026-06-27 23:01:18,421.421 INFO    ] Launching Daemon at Sat Jun 27 23:01:18 IST 2026
[2026-06-27 23:01:18,431.431 INFO    ] ================================================
[2026-06-27 23:01:18,763.763 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:01:18
[2026-06-27 23:01:19,081.081 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:01:19,213.213 INFO    ] Initializing speech engine...
[2026-06-27 23:01:19,216.216 INFO    ] 2026-06-27 23:01:19
[2026-06-27 23:01:19,434.434 INFO    ] 2026-06-27 23:01:19
[2026-06-27 23:01:19,463.463 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:01:19,601.601 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:01:19,648.648 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:01:19,785.785 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:01:19,839.839 INFO    ] time= 27/06/2026 23:01:19
[2026-06-27 23:01:19,873.873 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:01:19,878.878 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:01:19,949.949 INFO    ] No existing commands found in stream
[2026-06-27 23:01:24,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:01:24,976.976 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-27 23:01:27,905.905 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 23:01:27,906.906 INFO    ] Checking for system updates...
[2026-06-27 23:01:27,927.927 INFO    ] 200
[2026-06-27 23:01:27,929.929 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:01:27,959.959 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:01:27,960.960 INFO    ] No update needed
[2026-06-27 23:01:27,962.962 INFO    ] Checking for camera pi updates...
[2026-06-27 23:01:27,982.982 INFO    ] 200
[2026-06-27 23:01:27,983.983 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:01:28,006.006 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:01:28,062.062 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:01:28,064.064 INFO    ] No camera update needed
[2026-06-27 23:01:28,065.065 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:01:28,066.066 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:01:28,069.069 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:01:28,072.072 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:01:30,112.112 INFO    ] ================================================
[2026-06-27 23:01:30,127.127 INFO    ] Launching Daemon at Sat Jun 27 23:01:30 IST 2026
[2026-06-27 23:01:30,137.137 INFO    ] ================================================
[2026-06-27 23:01:30,522.522 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:01:30
[2026-06-27 23:01:30,856.856 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:01:31,006.006 INFO    ] Initializing speech engine...
[2026-06-27 23:01:31,012.012 INFO    ] 2026-06-27 23:01:31
[2026-06-27 23:01:31,220.220 INFO    ] 2026-06-27 23:01:31
[2026-06-27 23:01:31,255.255 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:01:31,459.459 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:01:31,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:01:31,619.619 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:01:31,684.684 INFO    ] time= 27/06/2026 23:01:31
[2026-06-27 23:01:31,712.712 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:01:31,718.718 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:01:31,789.789 INFO    ] No existing commands found in stream
[2026-06-27 23:01:36,803.803 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:01:36,806.806 INFO    ] Waiting 2.91 seconds before fallback handling...
[2026-06-27 23:01:40,100.100 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:01:40,102.102 INFO    ] Checking for system updates...
[2026-06-27 23:01:40,123.123 INFO    ] 200
[2026-06-27 23:01:40,124.124 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:01:40,154.154 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:01:40,156.156 INFO    ] No update needed
[2026-06-27 23:01:40,157.157 INFO    ] Checking for camera pi updates...
[2026-06-27 23:01:40,179.179 INFO    ] 200
[2026-06-27 23:01:40,181.181 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:01:40,205.205 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:01:40,250.250 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:01:40,251.251 INFO    ] No camera update needed
[2026-06-27 23:01:40,252.252 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:01:40,254.254 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:01:40,257.257 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:01:40,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:01:42,297.297 INFO    ] ================================================
[2026-06-27 23:01:42,312.312 INFO    ] Launching Daemon at Sat Jun 27 23:01:42 IST 2026
[2026-06-27 23:01:42,324.324 INFO    ] ================================================
[2026-06-27 23:01:42,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:01:42
[2026-06-27 23:01:42,997.997 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:01:43,129.129 INFO    ] Initializing speech engine...
[2026-06-27 23:01:43,141.141 INFO    ] 2026-06-27 23:01:43
[2026-06-27 23:01:43,351.351 INFO    ] 2026-06-27 23:01:43
[2026-06-27 23:01:43,379.379 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:01:43,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:01:43,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:01:43,701.701 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:01:43,757.757 INFO    ] time= 27/06/2026 23:01:43
[2026-06-27 23:01:43,801.801 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:01:43,807.807 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:01:43,874.874 INFO    ] No existing commands found in stream
[2026-06-27 23:01:48,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:01:48,887.887 INFO    ] Waiting 3.42 seconds before fallback handling...
[2026-06-27 23:01:52,732.732 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 23:01:52,733.733 INFO    ] Checking for system updates...
[2026-06-27 23:01:52,762.762 INFO    ] 200
[2026-06-27 23:01:52,764.764 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:01:52,800.800 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:01:52,801.801 INFO    ] No update needed
[2026-06-27 23:01:52,804.804 INFO    ] Checking for camera pi updates...
[2026-06-27 23:01:52,828.828 INFO    ] 200
[2026-06-27 23:01:52,830.830 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:01:52,857.857 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:01:52,901.901 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:01:52,903.903 INFO    ] No camera update needed
[2026-06-27 23:01:52,904.904 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:01:52,906.906 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:01:52,910.910 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:01:52,913.913 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:01:54,946.946 INFO    ] ================================================
[2026-06-27 23:01:54,961.961 INFO    ] Launching Daemon at Sat Jun 27 23:01:54 IST 2026
[2026-06-27 23:01:54,971.971 INFO    ] ================================================
[2026-06-27 23:01:55,314.314 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:01:55
[2026-06-27 23:01:55,628.628 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:01:55,761.761 INFO    ] Initializing speech engine...
[2026-06-27 23:01:55,765.765 INFO    ] 2026-06-27 23:01:55
[2026-06-27 23:01:55,984.984 INFO    ] 2026-06-27 23:01:55
[2026-06-27 23:01:56,014.014 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:01:56,137.137 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:01:56,201.201 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:01:56,342.342 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:01:56,409.409 INFO    ] time= 27/06/2026 23:01:56
[2026-06-27 23:01:56,434.434 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:01:56,440.440 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:01:56,507.507 INFO    ] No existing commands found in stream
[2026-06-27 23:02:01,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:02:01,518.518 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-27 23:02:02,690.690 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 23:02:02,692.692 INFO    ] Checking for system updates...
[2026-06-27 23:02:02,713.713 INFO    ] 200
[2026-06-27 23:02:02,715.715 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:02:02,746.746 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:02:02,747.747 INFO    ] No update needed
[2026-06-27 23:02:02,748.748 INFO    ] Checking for camera pi updates...
[2026-06-27 23:02:02,768.768 INFO    ] 200
[2026-06-27 23:02:02,769.769 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:02:02,792.792 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:02:02,837.837 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:02:02,839.839 INFO    ] No camera update needed
[2026-06-27 23:02:02,841.841 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:02:02,843.843 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:02:02,847.847 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:02:02,850.850 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:02:04,888.888 INFO    ] ================================================
[2026-06-27 23:02:04,904.904 INFO    ] Launching Daemon at Sat Jun 27 23:02:04 IST 2026
[2026-06-27 23:02:04,914.914 INFO    ] ================================================
[2026-06-27 23:02:05,252.252 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:02:05
[2026-06-27 23:02:05,580.580 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:02:05,724.724 INFO    ] Initializing speech engine...
[2026-06-27 23:02:05,729.729 INFO    ] 2026-06-27 23:02:05
[2026-06-27 23:02:05,933.933 INFO    ] 2026-06-27 23:02:05
[2026-06-27 23:02:05,962.962 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:02:06,147.147 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:02:06,157.157 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:02:06,347.347 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:02:06,374.374 INFO    ] time= 27/06/2026 23:02:06
[2026-06-27 23:02:06,377.377 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:02:06,382.382 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:02:06,448.448 INFO    ] No existing commands found in stream
[2026-06-27 23:02:11,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:02:11,465.465 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-27 23:02:14,545.545 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 23:02:14,546.546 INFO    ] Checking for system updates...
[2026-06-27 23:02:14,568.568 INFO    ] 200
[2026-06-27 23:02:14,569.569 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:02:14,603.603 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:02:14,605.605 INFO    ] No update needed
[2026-06-27 23:02:14,607.607 INFO    ] Checking for camera pi updates...
[2026-06-27 23:02:14,632.632 INFO    ] 200
[2026-06-27 23:02:14,633.633 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:02:14,660.660 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:02:14,708.708 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:02:14,710.710 INFO    ] No camera update needed
[2026-06-27 23:02:14,711.711 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:02:14,712.712 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:02:14,716.716 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:02:14,718.718 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:02:16,758.758 INFO    ] ================================================
[2026-06-27 23:02:16,772.772 INFO    ] Launching Daemon at Sat Jun 27 23:02:16 IST 2026
[2026-06-27 23:02:16,784.784 INFO    ] ================================================
[2026-06-27 23:02:17,186.186 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:02:17
[2026-06-27 23:02:17,520.520 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:02:17,659.659 INFO    ] Initializing speech engine...
[2026-06-27 23:02:17,669.669 INFO    ] 2026-06-27 23:02:17
[2026-06-27 23:02:17,874.874 INFO    ] 2026-06-27 23:02:17
[2026-06-27 23:02:17,902.902 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:02:18,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:02:18,098.098 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:02:18,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:02:18,275.275 INFO    ] time= 27/06/2026 23:02:18
[2026-06-27 23:02:18,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:02:18,325.325 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:02:18,398.398 INFO    ] No existing commands found in stream
[2026-06-27 23:02:23,412.412 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:02:23,415.415 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-27 23:02:25,662.662 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 23:02:25,664.664 INFO    ] Checking for system updates...
[2026-06-27 23:02:25,686.686 INFO    ] 200
[2026-06-27 23:02:25,687.687 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:02:25,718.718 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:02:25,719.719 INFO    ] No update needed
[2026-06-27 23:02:25,720.720 INFO    ] Checking for camera pi updates...
[2026-06-27 23:02:25,740.740 INFO    ] 200
[2026-06-27 23:02:25,741.741 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:02:25,764.764 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:02:25,806.806 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:02:25,808.808 INFO    ] No camera update needed
[2026-06-27 23:02:25,809.809 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:02:25,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:02:25,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:02:25,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:02:27,856.856 INFO    ] ================================================
[2026-06-27 23:02:27,871.871 INFO    ] Launching Daemon at Sat Jun 27 23:02:27 IST 2026
[2026-06-27 23:02:27,882.882 INFO    ] ================================================
[2026-06-27 23:02:28,255.255 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:02:28
[2026-06-27 23:02:28,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:02:28,700.700 INFO    ] Initializing speech engine...
[2026-06-27 23:02:28,704.704 INFO    ] 2026-06-27 23:02:28
[2026-06-27 23:02:28,899.899 INFO    ] 2026-06-27 23:02:28
[2026-06-27 23:02:28,945.945 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:02:29,170.170 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:02:29,173.173 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:02:29,375.375 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:02:29,412.412 INFO    ] time= 27/06/2026 23:02:29
[2026-06-27 23:02:29,428.428 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:02:29,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:02:29,528.528 INFO    ] No existing commands found in stream
[2026-06-27 23:02:34,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:02:34,540.540 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-27 23:02:37,716.716 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 23:02:37,718.718 INFO    ] Checking for system updates...
[2026-06-27 23:02:37,739.739 INFO    ] 200
[2026-06-27 23:02:37,740.740 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:02:37,770.770 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:02:37,772.772 INFO    ] No update needed
[2026-06-27 23:02:37,773.773 INFO    ] Checking for camera pi updates...
[2026-06-27 23:02:37,794.794 INFO    ] 200
[2026-06-27 23:02:37,795.795 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:02:37,820.820 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:02:37,957.957 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:02:37,959.959 INFO    ] No camera update needed
[2026-06-27 23:02:37,960.960 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:02:37,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:02:37,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:02:37,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:02:40,007.007 INFO    ] ================================================
[2026-06-27 23:02:40,024.024 INFO    ] Launching Daemon at Sat Jun 27 23:02:40 IST 2026
[2026-06-27 23:02:40,036.036 INFO    ] ================================================
[2026-06-27 23:02:40,385.385 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:02:40
[2026-06-27 23:02:40,712.712 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:02:40,844.844 INFO    ] Initializing speech engine...
[2026-06-27 23:02:40,856.856 INFO    ] 2026-06-27 23:02:40
[2026-06-27 23:02:41,063.063 INFO    ] 2026-06-27 23:02:41
[2026-06-27 23:02:41,091.091 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:02:41,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:02:41,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:02:41,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:02:41,479.479 INFO    ] time= 27/06/2026 23:02:41
[2026-06-27 23:02:41,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:02:41,509.509 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:02:41,576.576 INFO    ] No existing commands found in stream
[2026-06-27 23:02:46,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:02:46,587.587 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-27 23:02:49,797.797 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 23:02:49,798.798 INFO    ] Checking for system updates...
[2026-06-27 23:02:49,819.819 INFO    ] 200
[2026-06-27 23:02:49,821.821 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:02:49,852.852 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:02:49,853.853 INFO    ] No update needed
[2026-06-27 23:02:49,855.855 INFO    ] Checking for camera pi updates...
[2026-06-27 23:02:49,875.875 INFO    ] 200
[2026-06-27 23:02:49,876.876 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:02:49,901.901 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:02:49,955.955 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:02:49,956.956 INFO    ] No camera update needed
[2026-06-27 23:02:49,957.957 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:02:49,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:02:49,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:02:49,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:02:52,005.005 INFO    ] ================================================
[2026-06-27 23:02:52,020.020 INFO    ] Launching Daemon at Sat Jun 27 23:02:52 IST 2026
[2026-06-27 23:02:52,031.031 INFO    ] ================================================
[2026-06-27 23:02:52,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:02:52
[2026-06-27 23:02:52,717.717 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:02:52,851.851 INFO    ] Initializing speech engine...
[2026-06-27 23:02:52,863.863 INFO    ] 2026-06-27 23:02:52
[2026-06-27 23:02:53,071.071 INFO    ] 2026-06-27 23:02:53
[2026-06-27 23:02:53,099.099 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:02:53,283.283 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:02:53,293.293 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:02:53,418.418 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:02:53,485.485 INFO    ] time= 27/06/2026 23:02:53
[2026-06-27 23:02:53,512.512 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:02:53,517.517 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:02:53,585.585 INFO    ] No existing commands found in stream
[2026-06-27 23:02:58,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:02:58,597.597 INFO    ] Waiting 0.13 seconds before fallback handling...
[2026-06-27 23:02:59,107.107 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 23:02:59,109.109 INFO    ] Checking for system updates...
[2026-06-27 23:02:59,129.129 INFO    ] 200
[2026-06-27 23:02:59,131.131 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:02:59,164.164 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:02:59,165.165 INFO    ] No update needed
[2026-06-27 23:02:59,167.167 INFO    ] Checking for camera pi updates...
[2026-06-27 23:02:59,186.186 INFO    ] 200
[2026-06-27 23:02:59,187.187 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:02:59,211.211 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:02:59,257.257 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:02:59,258.258 INFO    ] No camera update needed
[2026-06-27 23:02:59,259.259 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:02:59,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:02:59,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:02:59,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:03:01,305.305 INFO    ] ================================================
[2026-06-27 23:03:01,319.319 INFO    ] Launching Daemon at Sat Jun 27 23:03:01 IST 2026
[2026-06-27 23:03:01,331.331 INFO    ] ================================================
[2026-06-27 23:03:01,760.760 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:03:01
[2026-06-27 23:03:02,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:03:02,316.316 INFO    ] Initializing speech engine...
[2026-06-27 23:03:02,331.331 INFO    ] 2026-06-27 23:03:02
[2026-06-27 23:03:02,547.547 INFO    ] 2026-06-27 23:03:02
[2026-06-27 23:03:02,598.598 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:03:02,755.755 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:03:02,819.819 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:03:02,961.961 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:03:03,019.019 INFO    ] time= 27/06/2026 23:03:02
[2026-06-27 23:03:03,052.052 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:03:03,058.058 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:03:03,123.123 INFO    ] No existing commands found in stream
[2026-06-27 23:03:08,134.134 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:03:08,136.136 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-27 23:03:10,685.685 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:03:10,687.687 INFO    ] Checking for system updates...
[2026-06-27 23:03:10,709.709 INFO    ] 200
[2026-06-27 23:03:10,710.710 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:03:10,741.741 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:03:10,742.742 INFO    ] No update needed
[2026-06-27 23:03:10,743.743 INFO    ] Checking for camera pi updates...
[2026-06-27 23:03:10,763.763 INFO    ] 200
[2026-06-27 23:03:10,765.765 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:03:10,788.788 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:03:10,831.831 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:03:10,832.832 INFO    ] No camera update needed
[2026-06-27 23:03:10,833.833 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:03:10,835.835 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:03:10,838.838 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:03:10,841.841 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:03:12,879.879 INFO    ] ================================================
[2026-06-27 23:03:12,895.895 INFO    ] Launching Daemon at Sat Jun 27 23:03:12 IST 2026
[2026-06-27 23:03:12,906.906 INFO    ] ================================================
[2026-06-27 23:03:13,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:03:13
[2026-06-27 23:03:13,546.546 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:03:13,678.678 INFO    ] Initializing speech engine...
[2026-06-27 23:03:13,690.690 INFO    ] 2026-06-27 23:03:13
[2026-06-27 23:03:13,895.895 INFO    ] 2026-06-27 23:03:13
[2026-06-27 23:03:13,925.925 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:03:14,111.111 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:03:14,115.115 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:03:14,250.250 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:03:14,313.313 INFO    ] time= 27/06/2026 23:03:14
[2026-06-27 23:03:14,345.345 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:03:14,347.347 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:03:14,417.417 INFO    ] No existing commands found in stream
[2026-06-27 23:03:19,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:03:19,429.429 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-27 23:03:20,090.090 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 23:03:20,092.092 INFO    ] Checking for system updates...
[2026-06-27 23:03:20,113.113 INFO    ] 200
[2026-06-27 23:03:20,115.115 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:03:20,146.146 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:03:20,148.148 INFO    ] No update needed
[2026-06-27 23:03:20,149.149 INFO    ] Checking for camera pi updates...
[2026-06-27 23:03:20,168.168 INFO    ] 200
[2026-06-27 23:03:20,170.170 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:03:20,193.193 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:03:20,257.257 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:03:20,258.258 INFO    ] No camera update needed
[2026-06-27 23:03:20,259.259 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:03:20,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:03:20,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:03:20,266.266 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:03:22,306.306 INFO    ] ================================================
[2026-06-27 23:03:22,321.321 INFO    ] Launching Daemon at Sat Jun 27 23:03:22 IST 2026
[2026-06-27 23:03:22,332.332 INFO    ] ================================================
[2026-06-27 23:03:22,680.680 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:03:22
[2026-06-27 23:03:22,992.992 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:03:23,135.135 INFO    ] Initializing speech engine...
[2026-06-27 23:03:23,140.140 INFO    ] 2026-06-27 23:03:23
[2026-06-27 23:03:23,343.343 INFO    ] 2026-06-27 23:03:23
[2026-06-27 23:03:23,371.371 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:03:23,554.554 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:03:23,564.564 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:03:23,718.718 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:03:23,761.761 INFO    ] time= 27/06/2026 23:03:23
[2026-06-27 23:03:23,783.783 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:03:23,789.789 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:03:23,856.856 INFO    ] No existing commands found in stream
[2026-06-27 23:03:28,870.870 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:03:28,872.872 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-27 23:03:31,262.262 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:03:31,264.264 INFO    ] Checking for system updates...
[2026-06-27 23:03:31,284.284 INFO    ] 200
[2026-06-27 23:03:31,286.286 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:03:31,316.316 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:03:31,318.318 INFO    ] No update needed
[2026-06-27 23:03:31,319.319 INFO    ] Checking for camera pi updates...
[2026-06-27 23:03:31,339.339 INFO    ] 200
[2026-06-27 23:03:31,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:03:31,367.367 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:03:31,408.408 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:03:31,409.409 INFO    ] No camera update needed
[2026-06-27 23:03:31,410.410 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:03:31,411.411 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:03:31,414.414 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:03:31,417.417 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:03:33,451.451 INFO    ] ================================================
[2026-06-27 23:03:33,466.466 INFO    ] Launching Daemon at Sat Jun 27 23:03:33 IST 2026
[2026-06-27 23:03:33,476.476 INFO    ] ================================================
[2026-06-27 23:03:33,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:03:33
[2026-06-27 23:03:34,191.191 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:03:34,340.340 INFO    ] Initializing speech engine...
[2026-06-27 23:03:34,345.345 INFO    ] 2026-06-27 23:03:34
[2026-06-27 23:03:34,553.553 INFO    ] 2026-06-27 23:03:34
[2026-06-27 23:03:34,581.581 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:03:34,706.706 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:03:34,769.769 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:03:34,897.897 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:03:35,632.632 INFO    ] time= 27/06/2026 23:03:35
[2026-06-27 23:03:35,634.634 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:03:35,638.638 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:03:35,743.743 INFO    ] No existing commands found in stream
[2026-06-27 23:03:40,755.755 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:03:40,758.758 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-27 23:03:41,712.712 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:03:41,714.714 INFO    ] Checking for system updates...
[2026-06-27 23:03:41,735.735 INFO    ] 200
[2026-06-27 23:03:41,737.737 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:03:41,768.768 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:03:41,769.769 INFO    ] No update needed
[2026-06-27 23:03:41,770.770 INFO    ] Checking for camera pi updates...
[2026-06-27 23:03:41,790.790 INFO    ] 200
[2026-06-27 23:03:41,792.792 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:03:41,816.816 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:03:41,860.860 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:03:41,862.862 INFO    ] No camera update needed
[2026-06-27 23:03:41,863.863 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:03:41,865.865 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:03:41,868.868 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:03:41,871.871 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:03:43,909.909 INFO    ] ================================================
[2026-06-27 23:03:43,925.925 INFO    ] Launching Daemon at Sat Jun 27 23:03:43 IST 2026
[2026-06-27 23:03:43,936.936 INFO    ] ================================================
[2026-06-27 23:03:44,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:03:44
[2026-06-27 23:03:44,653.653 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:03:44,793.793 INFO    ] Initializing speech engine...
[2026-06-27 23:03:44,803.803 INFO    ] 2026-06-27 23:03:44
[2026-06-27 23:03:45,009.009 INFO    ] 2026-06-27 23:03:44
[2026-06-27 23:03:45,038.038 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:03:45,224.224 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:03:45,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:03:45,384.384 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:03:45,432.432 INFO    ] time= 27/06/2026 23:03:45
[2026-06-27 23:03:45,455.455 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:03:45,460.460 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:03:45,528.528 INFO    ] No existing commands found in stream
[2026-06-27 23:03:50,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:03:50,546.546 INFO    ] Waiting 1.22 seconds before fallback handling...
[2026-06-27 23:03:52,190.190 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 23:03:52,192.192 INFO    ] Checking for system updates...
[2026-06-27 23:03:52,214.214 INFO    ] 200
[2026-06-27 23:03:52,216.216 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:03:52,247.247 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:03:52,248.248 INFO    ] No update needed
[2026-06-27 23:03:52,249.249 INFO    ] Checking for camera pi updates...
[2026-06-27 23:03:52,269.269 INFO    ] 200
[2026-06-27 23:03:52,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:03:52,294.294 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:03:52,340.340 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:03:52,341.341 INFO    ] No camera update needed
[2026-06-27 23:03:52,342.342 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:03:52,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:03:52,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:03:52,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:03:54,381.381 INFO    ] ================================================
[2026-06-27 23:03:54,397.397 INFO    ] Launching Daemon at Sat Jun 27 23:03:54 IST 2026
[2026-06-27 23:03:54,408.408 INFO    ] ================================================
[2026-06-27 23:03:54,750.750 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:03:54
[2026-06-27 23:03:55,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:03:55,198.198 INFO    ] Initializing speech engine...
[2026-06-27 23:03:55,206.206 INFO    ] 2026-06-27 23:03:55
[2026-06-27 23:03:55,417.417 INFO    ] 2026-06-27 23:03:55
[2026-06-27 23:03:55,446.446 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:03:55,631.631 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:03:55,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:03:55,787.787 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:03:55,846.846 INFO    ] time= 27/06/2026 23:03:55
[2026-06-27 23:03:55,869.869 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:03:55,875.875 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:03:55,943.943 INFO    ] No existing commands found in stream
[2026-06-27 23:04:00,958.958 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:04:00,961.961 INFO    ] Waiting 1.82 seconds before fallback handling...
[2026-06-27 23:04:03,127.127 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:04:03,128.128 INFO    ] Checking for system updates...
[2026-06-27 23:04:03,150.150 INFO    ] 200
[2026-06-27 23:04:03,151.151 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:04:03,182.182 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:04:03,183.183 INFO    ] No update needed
[2026-06-27 23:04:03,185.185 INFO    ] Checking for camera pi updates...
[2026-06-27 23:04:03,206.206 INFO    ] 200
[2026-06-27 23:04:03,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:04:03,231.231 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:04:03,275.275 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:04:03,276.276 INFO    ] No camera update needed
[2026-06-27 23:04:03,277.277 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:04:03,279.279 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:04:03,282.282 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:04:03,285.285 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:04:05,327.327 INFO    ] ================================================
[2026-06-27 23:04:05,343.343 INFO    ] Launching Daemon at Sat Jun 27 23:04:05 IST 2026
[2026-06-27 23:04:05,354.354 INFO    ] ================================================
[2026-06-27 23:04:05,719.719 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:04:05
[2026-06-27 23:04:06,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:04:06,205.205 INFO    ] Initializing speech engine...
[2026-06-27 23:04:06,209.209 INFO    ] 2026-06-27 23:04:06
[2026-06-27 23:04:06,427.427 INFO    ] 2026-06-27 23:04:06
[2026-06-27 23:04:06,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:04:06,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:04:06,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:04:06,804.804 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:04:06,854.854 INFO    ] time= 27/06/2026 23:04:06
[2026-06-27 23:04:06,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:04:06,881.881 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:04:06,946.946 INFO    ] No existing commands found in stream
[2026-06-27 23:04:11,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:04:11,960.960 INFO    ] Waiting 2.11 seconds before fallback handling...
[2026-06-27 23:04:14,481.481 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:04:14,483.483 INFO    ] Checking for system updates...
[2026-06-27 23:04:14,503.503 INFO    ] 200
[2026-06-27 23:04:14,505.505 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:04:14,535.535 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:04:14,537.537 INFO    ] No update needed
[2026-06-27 23:04:14,538.538 INFO    ] Checking for camera pi updates...
[2026-06-27 23:04:14,558.558 INFO    ] 200
[2026-06-27 23:04:14,559.559 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:04:14,582.582 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:04:14,622.622 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:04:14,623.623 INFO    ] No camera update needed
[2026-06-27 23:04:14,624.624 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:04:14,626.626 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:04:14,629.629 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:04:14,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:04:16,669.669 INFO    ] ================================================
[2026-06-27 23:04:16,685.685 INFO    ] Launching Daemon at Sat Jun 27 23:04:16 IST 2026
[2026-06-27 23:04:16,697.697 INFO    ] ================================================
[2026-06-27 23:04:17,035.035 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:04:17
[2026-06-27 23:04:17,352.352 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:04:17,496.496 INFO    ] Initializing speech engine...
[2026-06-27 23:04:17,502.502 INFO    ] 2026-06-27 23:04:17
[2026-06-27 23:04:17,706.706 INFO    ] 2026-06-27 23:04:17
[2026-06-27 23:04:17,735.735 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:04:17,918.918 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:04:17,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:04:18,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:04:18,124.124 INFO    ] time= 27/06/2026 23:04:18
[2026-06-27 23:04:18,146.146 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:04:18,152.152 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:04:18,219.219 INFO    ] No existing commands found in stream
[2026-06-27 23:04:23,233.233 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:04:23,236.236 INFO    ] Waiting 3.14 seconds before fallback handling...
[2026-06-27 23:04:26,792.792 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 23:04:26,794.794 INFO    ] Checking for system updates...
[2026-06-27 23:04:26,815.815 INFO    ] 200
[2026-06-27 23:04:26,817.817 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:04:26,849.849 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:04:26,850.850 INFO    ] No update needed
[2026-06-27 23:04:26,851.851 INFO    ] Checking for camera pi updates...
[2026-06-27 23:04:26,871.871 INFO    ] 200
[2026-06-27 23:04:26,872.872 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:04:26,897.897 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:04:26,939.939 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:04:26,940.940 INFO    ] No camera update needed
[2026-06-27 23:04:26,942.942 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:04:26,943.943 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:04:26,946.946 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:04:26,949.949 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:04:28,987.987 INFO    ] ================================================
[2026-06-27 23:04:29,003.003 INFO    ] Launching Daemon at Sat Jun 27 23:04:28 IST 2026
[2026-06-27 23:04:29,014.014 INFO    ] ================================================
[2026-06-27 23:04:29,366.366 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:04:29
[2026-06-27 23:04:29,705.705 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:04:29,858.858 INFO    ] Initializing speech engine...
[2026-06-27 23:04:29,863.863 INFO    ] 2026-06-27 23:04:29
[2026-06-27 23:04:30,074.074 INFO    ] 2026-06-27 23:04:30
[2026-06-27 23:04:30,103.103 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:04:30,291.291 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:04:30,295.295 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:04:30,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:04:30,484.484 INFO    ] time= 27/06/2026 23:04:30
[2026-06-27 23:04:30,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:04:30,531.531 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:04:30,603.603 INFO    ] No existing commands found in stream
[2026-06-27 23:04:35,613.613 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:04:35,617.617 INFO    ] Waiting 1.49 seconds before fallback handling...
[2026-06-27 23:04:37,555.555 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 23:04:37,556.556 INFO    ] Checking for system updates...
[2026-06-27 23:04:37,578.578 INFO    ] 200
[2026-06-27 23:04:37,580.580 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:04:37,612.612 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:04:37,614.614 INFO    ] No update needed
[2026-06-27 23:04:37,615.615 INFO    ] Checking for camera pi updates...
[2026-06-27 23:04:37,636.636 INFO    ] 200
[2026-06-27 23:04:37,637.637 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:04:37,662.662 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:04:37,703.703 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:04:37,704.704 INFO    ] No camera update needed
[2026-06-27 23:04:37,706.706 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:04:37,707.707 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:04:37,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:04:37,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:04:39,750.750 INFO    ] ================================================
[2026-06-27 23:04:39,766.766 INFO    ] Launching Daemon at Sat Jun 27 23:04:39 IST 2026
[2026-06-27 23:04:39,776.776 INFO    ] ================================================
[2026-06-27 23:04:40,144.144 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:04:40
[2026-06-27 23:04:40,486.486 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:04:40,626.626 INFO    ] Initializing speech engine...
[2026-06-27 23:04:40,629.629 INFO    ] 2026-06-27 23:04:40
[2026-06-27 23:04:40,853.853 INFO    ] 2026-06-27 23:04:40
[2026-06-27 23:04:40,885.885 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:04:41,072.072 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:04:41,082.082 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:04:41,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:04:41,285.285 INFO    ] time= 27/06/2026 23:04:41
[2026-06-27 23:04:41,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:04:41,313.313 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:04:41,382.382 INFO    ] No existing commands found in stream
[2026-06-27 23:04:46,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:04:46,399.399 INFO    ] Waiting 3.43 seconds before fallback handling...
[2026-06-27 23:04:50,251.251 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 23:04:50,253.253 INFO    ] Checking for system updates...
[2026-06-27 23:04:50,286.286 INFO    ] 200
[2026-06-27 23:04:50,288.288 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:04:50,319.319 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:04:50,320.320 INFO    ] No update needed
[2026-06-27 23:04:50,322.322 INFO    ] Checking for camera pi updates...
[2026-06-27 23:04:50,343.343 INFO    ] 200
[2026-06-27 23:04:50,344.344 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:04:50,369.369 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:04:50,511.511 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:04:50,512.512 INFO    ] No camera update needed
[2026-06-27 23:04:50,513.513 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:04:50,515.515 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:04:50,518.518 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:04:50,520.520 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:04:52,558.558 INFO    ] ================================================
[2026-06-27 23:04:52,573.573 INFO    ] Launching Daemon at Sat Jun 27 23:04:52 IST 2026
[2026-06-27 23:04:52,584.584 INFO    ] ================================================
[2026-06-27 23:04:52,978.978 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:04:52
[2026-06-27 23:04:53,305.305 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:04:53,449.449 INFO    ] Initializing speech engine...
[2026-06-27 23:04:53,454.454 INFO    ] 2026-06-27 23:04:53
[2026-06-27 23:04:53,658.658 INFO    ] 2026-06-27 23:04:53
[2026-06-27 23:04:53,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:04:53,870.870 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:04:53,880.880 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:04:54,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:04:54,072.072 INFO    ] time= 27/06/2026 23:04:54
[2026-06-27 23:04:54,100.100 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:04:54,106.106 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:04:54,172.172 INFO    ] No existing commands found in stream
[2026-06-27 23:04:59,182.182 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:04:59,185.185 INFO    ] Waiting 3.02 seconds before fallback handling...
[2026-06-27 23:05:02,550.550 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 23:05:02,551.551 INFO    ] Checking for system updates...
[2026-06-27 23:05:02,573.573 INFO    ] 200
[2026-06-27 23:05:02,574.574 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:05:02,605.605 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:05:02,607.607 INFO    ] No update needed
[2026-06-27 23:05:02,608.608 INFO    ] Checking for camera pi updates...
[2026-06-27 23:05:02,648.648 INFO    ] 200
[2026-06-27 23:05:02,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:05:02,696.696 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:05:02,726.726 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:05:02,727.727 INFO    ] No camera update needed
[2026-06-27 23:05:02,728.728 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:05:02,730.730 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:05:02,732.732 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:05:02,735.735 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:05:04,775.775 INFO    ] ================================================
[2026-06-27 23:05:04,790.790 INFO    ] Launching Daemon at Sat Jun 27 23:05:04 IST 2026
[2026-06-27 23:05:04,801.801 INFO    ] ================================================
[2026-06-27 23:05:05,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:05:05
[2026-06-27 23:05:05,497.497 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:05:05,636.636 INFO    ] Initializing speech engine...
[2026-06-27 23:05:05,646.646 INFO    ] 2026-06-27 23:05:05
[2026-06-27 23:05:05,851.851 INFO    ] 2026-06-27 23:05:05
[2026-06-27 23:05:05,880.880 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:05:06,030.030 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:05:06,031.031 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:05:06,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:05:06,203.203 INFO    ] time= 27/06/2026 23:05:06
[2026-06-27 23:05:06,269.269 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:05:06,301.301 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:05:06,373.373 INFO    ] No existing commands found in stream
[2026-06-27 23:05:11,382.382 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:05:11,385.385 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-27 23:05:15,372.372 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 23:05:15,374.374 INFO    ] Checking for system updates...
[2026-06-27 23:05:15,395.395 INFO    ] 200
[2026-06-27 23:05:15,397.397 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:05:15,427.427 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:05:15,428.428 INFO    ] No update needed
[2026-06-27 23:05:15,430.430 INFO    ] Checking for camera pi updates...
[2026-06-27 23:05:15,450.450 INFO    ] 200
[2026-06-27 23:05:15,451.451 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:05:15,476.476 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:05:15,526.526 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:05:15,528.528 INFO    ] No camera update needed
[2026-06-27 23:05:15,529.529 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:05:15,530.530 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:05:15,533.533 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:05:15,536.536 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:05:17,575.575 INFO    ] ================================================
[2026-06-27 23:05:17,591.591 INFO    ] Launching Daemon at Sat Jun 27 23:05:17 IST 2026
[2026-06-27 23:05:17,601.601 INFO    ] ================================================
[2026-06-27 23:05:17,938.938 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:05:17
[2026-06-27 23:05:18,255.255 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:05:18,394.394 INFO    ] Initializing speech engine...
[2026-06-27 23:05:18,404.404 INFO    ] 2026-06-27 23:05:18
[2026-06-27 23:05:18,610.610 INFO    ] 2026-06-27 23:05:18
[2026-06-27 23:05:18,640.640 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:05:18,828.828 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:05:18,837.837 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:05:18,966.966 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:05:19,027.027 INFO    ] time= 27/06/2026 23:05:18
[2026-06-27 23:05:19,060.060 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:05:19,066.066 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:05:19,134.134 INFO    ] No existing commands found in stream
[2026-06-27 23:05:24,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:05:24,146.146 INFO    ] Waiting 3.80 seconds before fallback handling...
[2026-06-27 23:05:28,350.350 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:05:28,351.351 INFO    ] Checking for system updates...
[2026-06-27 23:05:28,372.372 INFO    ] 200
[2026-06-27 23:05:28,374.374 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:05:28,406.406 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:05:28,408.408 INFO    ] No update needed
[2026-06-27 23:05:28,409.409 INFO    ] Checking for camera pi updates...
[2026-06-27 23:05:28,429.429 INFO    ] 200
[2026-06-27 23:05:28,431.431 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:05:28,456.456 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:05:28,500.500 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:05:28,501.501 INFO    ] No camera update needed
[2026-06-27 23:05:28,503.503 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:05:28,504.504 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:05:28,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:05:28,511.511 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:05:30,550.550 INFO    ] ================================================
[2026-06-27 23:05:30,565.565 INFO    ] Launching Daemon at Sat Jun 27 23:05:30 IST 2026
[2026-06-27 23:05:30,577.577 INFO    ] ================================================
[2026-06-27 23:05:30,950.950 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:05:30
[2026-06-27 23:05:31,306.306 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:05:31,476.476 INFO    ] Initializing speech engine...
[2026-06-27 23:05:31,482.482 INFO    ] 2026-06-27 23:05:31
[2026-06-27 23:05:31,726.726 INFO    ] 2026-06-27 23:05:31
[2026-06-27 23:05:31,758.758 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:05:31,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:05:31,955.955 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:05:32,120.120 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:05:32,172.172 INFO    ] time= 27/06/2026 23:05:32
[2026-06-27 23:05:32,221.221 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:05:32,227.227 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:05:32,302.302 INFO    ] No existing commands found in stream
[2026-06-27 23:05:37,312.312 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:05:37,315.315 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-27 23:05:40,969.969 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 23:05:40,971.971 INFO    ] Checking for system updates...
[2026-06-27 23:05:40,992.992 INFO    ] 200
[2026-06-27 23:05:40,993.993 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:05:41,028.028 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:05:41,030.030 INFO    ] No update needed
[2026-06-27 23:05:41,031.031 INFO    ] Checking for camera pi updates...
[2026-06-27 23:05:41,052.052 INFO    ] 200
[2026-06-27 23:05:41,054.054 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:05:41,077.077 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:05:41,120.120 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:05:41,122.122 INFO    ] No camera update needed
[2026-06-27 23:05:41,123.123 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:05:41,124.124 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:05:41,127.127 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:05:41,130.130 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:05:43,170.170 INFO    ] ================================================
[2026-06-27 23:05:43,185.185 INFO    ] Launching Daemon at Sat Jun 27 23:05:43 IST 2026
[2026-06-27 23:05:43,196.196 INFO    ] ================================================
[2026-06-27 23:05:43,580.580 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:05:43
[2026-06-27 23:05:43,916.916 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:05:44,068.068 INFO    ] Initializing speech engine...
[2026-06-27 23:05:44,073.073 INFO    ] 2026-06-27 23:05:44
[2026-06-27 23:05:44,280.280 INFO    ] 2026-06-27 23:05:44
[2026-06-27 23:05:44,308.308 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:05:44,492.492 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:05:44,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:05:44,642.642 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:05:44,699.699 INFO    ] time= 27/06/2026 23:05:44
[2026-06-27 23:05:44,722.722 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:05:44,728.728 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:05:44,795.795 INFO    ] No existing commands found in stream
[2026-06-27 23:05:49,809.809 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:05:49,812.812 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-27 23:05:54,106.106 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 23:05:54,107.107 INFO    ] Checking for system updates...
[2026-06-27 23:05:54,128.128 INFO    ] 200
[2026-06-27 23:05:54,130.130 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:05:54,163.163 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:05:54,164.164 INFO    ] No update needed
[2026-06-27 23:05:54,166.166 INFO    ] Checking for camera pi updates...
[2026-06-27 23:05:54,187.187 INFO    ] 200
[2026-06-27 23:05:54,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:05:54,216.216 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:05:54,271.271 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:05:54,273.273 INFO    ] No camera update needed
[2026-06-27 23:05:54,275.275 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:05:54,276.276 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:05:54,279.279 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:05:54,282.282 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:05:56,321.321 INFO    ] ================================================
[2026-06-27 23:05:56,337.337 INFO    ] Launching Daemon at Sat Jun 27 23:05:56 IST 2026
[2026-06-27 23:05:56,349.349 INFO    ] ================================================
[2026-06-27 23:05:56,676.676 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:05:56
[2026-06-27 23:05:56,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:05:57,122.122 INFO    ] Initializing speech engine...
[2026-06-27 23:05:57,125.125 INFO    ] 2026-06-27 23:05:57
[2026-06-27 23:05:57,353.353 INFO    ] 2026-06-27 23:05:57
[2026-06-27 23:05:57,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:05:57,568.568 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:05:57,578.578 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:05:57,709.709 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:05:57,773.773 INFO    ] time= 27/06/2026 23:05:57
[2026-06-27 23:05:57,804.804 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:05:57,810.810 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:05:57,878.878 INFO    ] No existing commands found in stream
[2026-06-27 23:06:02,891.891 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:06:02,892.892 INFO    ] Waiting 2.80 seconds before fallback handling...
[2026-06-27 23:06:06,115.115 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 23:06:06,116.116 INFO    ] Checking for system updates...
[2026-06-27 23:06:06,140.140 INFO    ] 200
[2026-06-27 23:06:06,142.142 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:06:06,174.174 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:06:06,175.175 INFO    ] No update needed
[2026-06-27 23:06:06,177.177 INFO    ] Checking for camera pi updates...
[2026-06-27 23:06:06,207.207 INFO    ] 200
[2026-06-27 23:06:06,209.209 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:06:06,238.238 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:06:06,283.283 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:06:06,284.284 INFO    ] No camera update needed
[2026-06-27 23:06:06,286.286 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:06:06,287.287 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:06:06,290.290 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:06:06,293.293 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:06:08,332.332 INFO    ] ================================================
[2026-06-27 23:06:08,348.348 INFO    ] Launching Daemon at Sat Jun 27 23:06:08 IST 2026
[2026-06-27 23:06:08,359.359 INFO    ] ================================================
[2026-06-27 23:06:08,682.682 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:06:08
[2026-06-27 23:06:08,995.995 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:06:09,126.126 INFO    ] Initializing speech engine...
[2026-06-27 23:06:09,130.130 INFO    ] 2026-06-27 23:06:09
[2026-06-27 23:06:09,347.347 INFO    ] 2026-06-27 23:06:09
[2026-06-27 23:06:09,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:06:09,561.561 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:06:09,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:06:09,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:06:09,767.767 INFO    ] time= 27/06/2026 23:06:09
[2026-06-27 23:06:09,790.790 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:06:09,796.796 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:06:09,863.863 INFO    ] No existing commands found in stream
[2026-06-27 23:06:14,877.877 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:06:14,880.880 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-27 23:06:17,281.281 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 23:06:17,283.283 INFO    ] Checking for system updates...
[2026-06-27 23:06:17,304.304 INFO    ] 200
[2026-06-27 23:06:17,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:06:17,336.336 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:06:17,338.338 INFO    ] No update needed
[2026-06-27 23:06:17,339.339 INFO    ] Checking for camera pi updates...
[2026-06-27 23:06:17,360.360 INFO    ] 200
[2026-06-27 23:06:17,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:06:17,389.389 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:06:17,437.437 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:06:17,438.438 INFO    ] No camera update needed
[2026-06-27 23:06:17,439.439 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:06:17,441.441 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:06:17,445.445 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:06:17,448.448 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:06:19,489.489 INFO    ] ================================================
[2026-06-27 23:06:19,505.505 INFO    ] Launching Daemon at Sat Jun 27 23:06:19 IST 2026
[2026-06-27 23:06:19,516.516 INFO    ] ================================================
[2026-06-27 23:06:19,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:06:19
[2026-06-27 23:06:20,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:06:20,402.402 INFO    ] Initializing speech engine...
[2026-06-27 23:06:20,409.409 INFO    ] 2026-06-27 23:06:20
[2026-06-27 23:06:20,618.618 INFO    ] 2026-06-27 23:06:20
[2026-06-27 23:06:20,647.647 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:06:20,830.830 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:06:20,834.834 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:06:20,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:06:21,018.018 INFO    ] time= 27/06/2026 23:06:20
[2026-06-27 23:06:21,061.061 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:06:21,067.067 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:06:21,133.133 INFO    ] No existing commands found in stream
[2026-06-27 23:06:26,143.143 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:06:26,146.146 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-27 23:06:27,190.190 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:06:27,192.192 INFO    ] Checking for system updates...
[2026-06-27 23:06:27,213.213 INFO    ] 200
[2026-06-27 23:06:27,215.215 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:06:27,245.245 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:06:27,247.247 INFO    ] No update needed
[2026-06-27 23:06:27,248.248 INFO    ] Checking for camera pi updates...
[2026-06-27 23:06:27,270.270 INFO    ] 200
[2026-06-27 23:06:27,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:06:27,298.298 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:06:27,338.338 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:06:27,339.339 INFO    ] No camera update needed
[2026-06-27 23:06:27,341.341 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:06:27,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:06:27,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:06:27,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:06:29,389.389 INFO    ] ================================================
[2026-06-27 23:06:29,404.404 INFO    ] Launching Daemon at Sat Jun 27 23:06:29 IST 2026
[2026-06-27 23:06:29,416.416 INFO    ] ================================================
[2026-06-27 23:06:29,795.795 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:06:29
[2026-06-27 23:06:30,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:06:30,296.296 INFO    ] Initializing speech engine...
[2026-06-27 23:06:30,299.299 INFO    ] 2026-06-27 23:06:30
[2026-06-27 23:06:30,499.499 INFO    ] 2026-06-27 23:06:30
[2026-06-27 23:06:30,528.528 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:06:30,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:06:30,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:06:30,887.887 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:06:30,921.921 INFO    ] time= 27/06/2026 23:06:30
[2026-06-27 23:06:30,943.943 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:06:30,949.949 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:06:31,016.016 INFO    ] No existing commands found in stream
[2026-06-27 23:06:36,030.030 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:06:36,032.032 INFO    ] Waiting 2.75 seconds before fallback handling...
[2026-06-27 23:06:39,188.188 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 23:06:39,190.190 INFO    ] Checking for system updates...
[2026-06-27 23:06:39,211.211 INFO    ] 200
[2026-06-27 23:06:39,213.213 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:06:39,246.246 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:06:39,247.247 INFO    ] No update needed
[2026-06-27 23:06:39,249.249 INFO    ] Checking for camera pi updates...
[2026-06-27 23:06:39,270.270 INFO    ] 200
[2026-06-27 23:06:39,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:06:39,298.298 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:06:39,339.339 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:06:39,341.341 INFO    ] No camera update needed
[2026-06-27 23:06:39,342.342 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:06:39,344.344 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:06:39,347.347 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:06:39,350.350 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:06:41,391.391 INFO    ] ================================================
[2026-06-27 23:06:41,406.406 INFO    ] Launching Daemon at Sat Jun 27 23:06:41 IST 2026
[2026-06-27 23:06:41,418.418 INFO    ] ================================================
[2026-06-27 23:06:41,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:06:41
[2026-06-27 23:06:42,134.134 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:06:42,287.287 INFO    ] Initializing speech engine...
[2026-06-27 23:06:42,293.293 INFO    ] 2026-06-27 23:06:42
[2026-06-27 23:06:42,505.505 INFO    ] 2026-06-27 23:06:42
[2026-06-27 23:06:42,535.535 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:06:42,722.722 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:06:42,731.731 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:06:42,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:06:42,954.954 INFO    ] time= 27/06/2026 23:06:42
[2026-06-27 23:06:42,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:06:42,962.962 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:06:43,030.030 INFO    ] No existing commands found in stream
[2026-06-27 23:06:48,043.043 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:06:48,045.045 INFO    ] Waiting 3.00 seconds before fallback handling...
[2026-06-27 23:06:51,662.662 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:06:51,663.663 INFO    ] Checking for system updates...
[2026-06-27 23:06:51,686.686 INFO    ] 200
[2026-06-27 23:06:51,688.688 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:06:51,719.719 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:06:51,720.720 INFO    ] No update needed
[2026-06-27 23:06:51,722.722 INFO    ] Checking for camera pi updates...
[2026-06-27 23:06:51,742.742 INFO    ] 200
[2026-06-27 23:06:51,743.743 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:06:51,767.767 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:06:51,806.806 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:06:51,807.807 INFO    ] No camera update needed
[2026-06-27 23:06:51,809.809 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:06:51,810.810 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:06:51,813.813 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:06:51,816.816 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:06:53,857.857 INFO    ] ================================================
[2026-06-27 23:06:53,872.872 INFO    ] Launching Daemon at Sat Jun 27 23:06:53 IST 2026
[2026-06-27 23:06:53,883.883 INFO    ] ================================================
[2026-06-27 23:06:54,244.244 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:06:54
[2026-06-27 23:06:54,562.562 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:06:54,707.707 INFO    ] Initializing speech engine...
[2026-06-27 23:06:54,712.712 INFO    ] 2026-06-27 23:06:54
[2026-06-27 23:06:54,917.917 INFO    ] 2026-06-27 23:06:54
[2026-06-27 23:06:54,947.947 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:06:55,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:06:55,312.312 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:06:55,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:06:55,555.555 INFO    ] time= 27/06/2026 23:06:55
[2026-06-27 23:06:55,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:06:55,561.561 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:06:55,649.649 INFO    ] No existing commands found in stream
[2026-06-27 23:07:00,659.659 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:07:00,662.662 INFO    ] Waiting 2.40 seconds before fallback handling...
[2026-06-27 23:07:03,467.467 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 23:07:03,468.468 INFO    ] Checking for system updates...
[2026-06-27 23:07:03,489.489 INFO    ] 200
[2026-06-27 23:07:03,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:07:03,521.521 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:07:03,523.523 INFO    ] No update needed
[2026-06-27 23:07:03,525.525 INFO    ] Checking for camera pi updates...
[2026-06-27 23:07:03,545.545 INFO    ] 200
[2026-06-27 23:07:03,546.546 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:07:03,570.570 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:07:03,616.616 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:07:03,617.617 INFO    ] No camera update needed
[2026-06-27 23:07:03,619.619 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:07:03,620.620 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:07:03,623.623 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:07:03,626.626 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:07:05,667.667 INFO    ] ================================================
[2026-06-27 23:07:05,682.682 INFO    ] Launching Daemon at Sat Jun 27 23:07:05 IST 2026
[2026-06-27 23:07:05,693.693 INFO    ] ================================================
[2026-06-27 23:07:06,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:07:06
[2026-06-27 23:07:06,368.368 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:07:06,501.501 INFO    ] Initializing speech engine...
[2026-06-27 23:07:06,506.506 INFO    ] 2026-06-27 23:07:06
[2026-06-27 23:07:06,724.724 INFO    ] 2026-06-27 23:07:06
[2026-06-27 23:07:06,754.754 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:07:06,937.937 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:07:06,940.940 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:07:07,087.087 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:07:07,143.143 INFO    ] time= 27/06/2026 23:07:07
[2026-06-27 23:07:07,167.167 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:07:07,173.173 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:07:07,240.240 INFO    ] No existing commands found in stream
[2026-06-27 23:07:12,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:07:12,252.252 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-27 23:07:16,671.671 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 23:07:16,673.673 INFO    ] Checking for system updates...
[2026-06-27 23:07:16,697.697 INFO    ] 200
[2026-06-27 23:07:16,698.698 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:07:16,735.735 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:07:16,737.737 INFO    ] No update needed
[2026-06-27 23:07:16,738.738 INFO    ] Checking for camera pi updates...
[2026-06-27 23:07:16,761.761 INFO    ] 200
[2026-06-27 23:07:16,762.762 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:07:16,786.786 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:07:16,834.834 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:07:16,835.835 INFO    ] No camera update needed
[2026-06-27 23:07:16,837.837 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:07:16,838.838 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:07:16,841.841 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:07:16,845.845 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:07:18,886.886 INFO    ] ================================================
[2026-06-27 23:07:18,901.901 INFO    ] Launching Daemon at Sat Jun 27 23:07:18 IST 2026
[2026-06-27 23:07:18,912.912 INFO    ] ================================================
[2026-06-27 23:07:19,260.260 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:07:19
[2026-06-27 23:07:19,573.573 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:07:19,711.711 INFO    ] Initializing speech engine...
[2026-06-27 23:07:19,721.721 INFO    ] 2026-06-27 23:07:19
[2026-06-27 23:07:19,925.925 INFO    ] 2026-06-27 23:07:19
[2026-06-27 23:07:19,953.953 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:07:20,139.139 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:07:20,149.149 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:07:20,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:07:20,344.344 INFO    ] time= 27/06/2026 23:07:20
[2026-06-27 23:07:20,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:07:20,374.374 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:07:20,439.439 INFO    ] No existing commands found in stream
[2026-06-27 23:07:25,446.446 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:07:25,449.449 INFO    ] Waiting 3.77 seconds before fallback handling...
[2026-06-27 23:07:29,532.532 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 23:07:29,534.534 INFO    ] Checking for system updates...
[2026-06-27 23:07:29,557.557 INFO    ] 200
[2026-06-27 23:07:29,559.559 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:07:29,597.597 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:07:29,598.598 INFO    ] No update needed
[2026-06-27 23:07:29,600.600 INFO    ] Checking for camera pi updates...
[2026-06-27 23:07:29,622.622 INFO    ] 200
[2026-06-27 23:07:29,623.623 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:07:29,647.647 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:07:29,696.696 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:07:29,697.697 INFO    ] No camera update needed
[2026-06-27 23:07:29,698.698 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:07:29,700.700 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:07:29,703.703 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:07:29,706.706 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:07:31,735.735 INFO    ] ================================================
[2026-06-27 23:07:31,748.748 INFO    ] Launching Daemon at Sat Jun 27 23:07:31 IST 2026
[2026-06-27 23:07:31,760.760 INFO    ] ================================================
[2026-06-27 23:07:32,171.171 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:07:32
[2026-06-27 23:07:32,575.575 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:07:32,748.748 INFO    ] Initializing speech engine...
[2026-06-27 23:07:32,752.752 INFO    ] 2026-06-27 23:07:32
[2026-06-27 23:07:32,970.970 INFO    ] 2026-06-27 23:07:32
[2026-06-27 23:07:32,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:07:33,186.186 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:07:33,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:07:33,323.323 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:07:33,384.384 INFO    ] time= 27/06/2026 23:07:33
[2026-06-27 23:07:33,415.415 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:07:33,426.426 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:07:33,498.498 INFO    ] No existing commands found in stream
[2026-06-27 23:07:38,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:07:38,510.510 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-27 23:07:39,799.799 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:07:39,800.800 INFO    ] Checking for system updates...
[2026-06-27 23:07:39,821.821 INFO    ] 200
[2026-06-27 23:07:39,822.822 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:07:39,855.855 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:07:39,856.856 INFO    ] No update needed
[2026-06-27 23:07:39,857.857 INFO    ] Checking for camera pi updates...
[2026-06-27 23:07:39,879.879 INFO    ] 200
[2026-06-27 23:07:39,880.880 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:07:39,906.906 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:07:39,955.955 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:07:39,956.956 INFO    ] No camera update needed
[2026-06-27 23:07:39,958.958 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:07:39,959.959 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:07:39,962.962 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:07:39,965.965 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:07:42,003.003 INFO    ] ================================================
[2026-06-27 23:07:42,019.019 INFO    ] Launching Daemon at Sat Jun 27 23:07:42 IST 2026
[2026-06-27 23:07:42,030.030 INFO    ] ================================================
[2026-06-27 23:07:42,390.390 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:07:42
[2026-06-27 23:07:42,703.703 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:07:42,833.833 INFO    ] Initializing speech engine...
[2026-06-27 23:07:42,838.838 INFO    ] 2026-06-27 23:07:42
[2026-06-27 23:07:43,059.059 INFO    ] 2026-06-27 23:07:43
[2026-06-27 23:07:43,087.087 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:07:43,274.274 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:07:43,283.283 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:07:43,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:07:43,479.479 INFO    ] time= 27/06/2026 23:07:43
[2026-06-27 23:07:43,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:07:43,510.510 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:07:43,582.582 INFO    ] No existing commands found in stream
[2026-06-27 23:07:48,596.596 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:07:48,598.598 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-27 23:07:49,200.200 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:07:49,202.202 INFO    ] Checking for system updates...
[2026-06-27 23:07:49,224.224 INFO    ] 200
[2026-06-27 23:07:49,225.225 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:07:49,256.256 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:07:49,257.257 INFO    ] No update needed
[2026-06-27 23:07:49,258.258 INFO    ] Checking for camera pi updates...
[2026-06-27 23:07:49,278.278 INFO    ] 200
[2026-06-27 23:07:49,279.279 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:07:49,304.304 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:07:49,348.348 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:07:49,350.350 INFO    ] No camera update needed
[2026-06-27 23:07:49,351.351 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:07:49,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:07:49,355.355 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:07:49,358.358 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:07:51,396.396 INFO    ] ================================================
[2026-06-27 23:07:51,412.412 INFO    ] Launching Daemon at Sat Jun 27 23:07:51 IST 2026
[2026-06-27 23:07:51,423.423 INFO    ] ================================================
[2026-06-27 23:07:51,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:07:51
[2026-06-27 23:07:52,140.140 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:07:52,296.296 INFO    ] Initializing speech engine...
[2026-06-27 23:07:52,304.304 INFO    ] 2026-06-27 23:07:52
[2026-06-27 23:07:52,511.511 INFO    ] 2026-06-27 23:07:52
[2026-06-27 23:07:52,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:07:52,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:07:52,737.737 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:07:52,861.861 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:07:52,932.932 INFO    ] time= 27/06/2026 23:07:52
[2026-06-27 23:07:52,961.961 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:07:52,967.967 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:07:53,033.033 INFO    ] No existing commands found in stream
[2026-06-27 23:07:58,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:07:58,048.048 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-27 23:08:00,251.251 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:08:00,253.253 INFO    ] Checking for system updates...
[2026-06-27 23:08:00,276.276 INFO    ] 200
[2026-06-27 23:08:00,277.277 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:08:00,308.308 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:08:00,309.309 INFO    ] No update needed
[2026-06-27 23:08:00,311.311 INFO    ] Checking for camera pi updates...
[2026-06-27 23:08:00,331.331 INFO    ] 200
[2026-06-27 23:08:00,332.332 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:08:00,357.357 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:08:00,400.400 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:08:00,401.401 INFO    ] No camera update needed
[2026-06-27 23:08:00,402.402 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:08:00,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:08:00,407.407 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:08:00,410.410 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:08:02,445.445 INFO    ] ================================================
[2026-06-27 23:08:02,458.458 INFO    ] Launching Daemon at Sat Jun 27 23:08:02 IST 2026
[2026-06-27 23:08:02,466.466 INFO    ] ================================================
[2026-06-27 23:08:02,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:08:02
[2026-06-27 23:08:03,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:08:03,294.294 INFO    ] Initializing speech engine...
[2026-06-27 23:08:03,296.296 INFO    ] 2026-06-27 23:08:03
[2026-06-27 23:08:03,491.491 INFO    ] 2026-06-27 23:08:03
[2026-06-27 23:08:03,537.537 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:08:03,662.662 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:08:03,665.665 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:08:03,799.799 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:08:03,804.804 INFO    ] time= 27/06/2026 23:08:03
[2026-06-27 23:08:03,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:08:03,842.842 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:08:03,946.946 INFO    ] No existing commands found in stream
[2026-06-27 23:08:08,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:08:08,983.983 INFO    ] Waiting 1.77 seconds before fallback handling...
[2026-06-27 23:08:11,141.141 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 23:08:11,142.142 INFO    ] Checking for system updates...
[2026-06-27 23:08:11,163.163 INFO    ] 200
[2026-06-27 23:08:11,165.165 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:08:11,198.198 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:08:11,199.199 INFO    ] No update needed
[2026-06-27 23:08:11,201.201 INFO    ] Checking for camera pi updates...
[2026-06-27 23:08:11,221.221 INFO    ] 200
[2026-06-27 23:08:11,223.223 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:08:11,246.246 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:08:11,291.291 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:08:11,292.292 INFO    ] No camera update needed
[2026-06-27 23:08:11,294.294 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:08:11,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:08:11,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:08:11,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:08:13,341.341 INFO    ] ================================================
[2026-06-27 23:08:13,357.357 INFO    ] Launching Daemon at Sat Jun 27 23:08:13 IST 2026
[2026-06-27 23:08:13,368.368 INFO    ] ================================================
[2026-06-27 23:08:13,699.699 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:08:13
[2026-06-27 23:08:14,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:08:14,155.155 INFO    ] Initializing speech engine...
[2026-06-27 23:08:14,160.160 INFO    ] 2026-06-27 23:08:14
[2026-06-27 23:08:14,366.366 INFO    ] 2026-06-27 23:08:14
[2026-06-27 23:08:14,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:08:14,577.577 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:08:14,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:08:14,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:08:14,783.783 INFO    ] time= 27/06/2026 23:08:14
[2026-06-27 23:08:14,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:08:14,811.811 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:08:14,903.903 INFO    ] No existing commands found in stream
[2026-06-27 23:08:19,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:08:19,914.914 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-27 23:08:21,965.965 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:08:21,966.966 INFO    ] Checking for system updates...
[2026-06-27 23:08:21,989.989 INFO    ] 200
[2026-06-27 23:08:21,990.990 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:08:22,020.020 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:08:22,022.022 INFO    ] No update needed
[2026-06-27 23:08:22,023.023 INFO    ] Checking for camera pi updates...
[2026-06-27 23:08:22,044.044 INFO    ] 200
[2026-06-27 23:08:22,046.046 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:08:22,069.069 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:08:22,115.115 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:08:22,117.117 INFO    ] No camera update needed
[2026-06-27 23:08:22,118.118 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:08:22,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:08:22,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:08:22,125.125 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:08:24,155.155 INFO    ] ================================================
[2026-06-27 23:08:24,164.164 INFO    ] Launching Daemon at Sat Jun 27 23:08:24 IST 2026
[2026-06-27 23:08:24,171.171 INFO    ] ================================================
[2026-06-27 23:08:24,506.506 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:08:24
[2026-06-27 23:08:24,852.852 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:08:24,989.989 INFO    ] Initializing speech engine...
[2026-06-27 23:08:24,992.992 INFO    ] 2026-06-27 23:08:24
[2026-06-27 23:08:25,236.236 INFO    ] 2026-06-27 23:08:25
[2026-06-27 23:08:25,268.268 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:08:25,404.404 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:08:25,442.442 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:08:25,618.618 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:08:25,670.670 INFO    ] time= 27/06/2026 23:08:25
[2026-06-27 23:08:25,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:08:25,733.733 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:08:25,809.809 INFO    ] No existing commands found in stream
[2026-06-27 23:08:30,820.820 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:08:30,823.823 INFO    ] Waiting 2.93 seconds before fallback handling...
[2026-06-27 23:08:34,405.405 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:08:34,406.406 INFO    ] Checking for system updates...
[2026-06-27 23:08:34,428.428 INFO    ] 200
[2026-06-27 23:08:34,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:08:34,462.462 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:08:34,463.463 INFO    ] No update needed
[2026-06-27 23:08:34,464.464 INFO    ] Checking for camera pi updates...
[2026-06-27 23:08:34,486.486 INFO    ] 200
[2026-06-27 23:08:34,487.487 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:08:34,512.512 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:08:34,567.567 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:08:34,569.569 INFO    ] No camera update needed
[2026-06-27 23:08:34,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:08:34,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:08:34,577.577 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:08:34,580.580 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:08:36,619.619 INFO    ] ================================================
[2026-06-27 23:08:36,635.635 INFO    ] Launching Daemon at Sat Jun 27 23:08:36 IST 2026
[2026-06-27 23:08:36,646.646 INFO    ] ================================================
[2026-06-27 23:08:36,982.982 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:08:36
[2026-06-27 23:08:37,294.294 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:08:37,437.437 INFO    ] Initializing speech engine...
[2026-06-27 23:08:37,443.443 INFO    ] 2026-06-27 23:08:37
[2026-06-27 23:08:37,648.648 INFO    ] 2026-06-27 23:08:37
[2026-06-27 23:08:37,677.677 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:08:37,864.864 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:08:37,874.874 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:08:38,055.055 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:08:38,092.092 INFO    ] time= 27/06/2026 23:08:38
[2026-06-27 23:08:38,094.094 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:08:38,101.101 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:08:38,216.216 INFO    ] No existing commands found in stream
[2026-06-27 23:08:43,226.226 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:08:43,229.229 INFO    ] Waiting 2.64 seconds before fallback handling...
[2026-06-27 23:08:46,266.266 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 23:08:46,268.268 INFO    ] Checking for system updates...
[2026-06-27 23:08:46,291.291 INFO    ] 200
[2026-06-27 23:08:46,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:08:46,326.326 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:08:46,328.328 INFO    ] No update needed
[2026-06-27 23:08:46,329.329 INFO    ] Checking for camera pi updates...
[2026-06-27 23:08:46,348.348 INFO    ] 200
[2026-06-27 23:08:46,349.349 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:08:46,375.375 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:08:46,424.424 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:08:46,425.425 INFO    ] No camera update needed
[2026-06-27 23:08:46,426.426 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:08:46,428.428 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:08:46,433.433 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:08:46,437.437 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:08:48,476.476 INFO    ] ================================================
[2026-06-27 23:08:48,492.492 INFO    ] Launching Daemon at Sat Jun 27 23:08:48 IST 2026
[2026-06-27 23:08:48,503.503 INFO    ] ================================================
[2026-06-27 23:08:48,858.858 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:08:48
[2026-06-27 23:08:49,175.175 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:08:49,308.308 INFO    ] Initializing speech engine...
[2026-06-27 23:08:49,312.312 INFO    ] 2026-06-27 23:08:49
[2026-06-27 23:08:49,504.504 INFO    ] 2026-06-27 23:08:49
[2026-06-27 23:08:49,551.551 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:08:49,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:08:49,755.755 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:08:49,925.925 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:08:49,982.982 INFO    ] time= 27/06/2026 23:08:49
[2026-06-27 23:08:50,011.011 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:08:50,034.034 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:08:50,111.111 INFO    ] No existing commands found in stream
[2026-06-27 23:08:55,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:08:55,124.124 INFO    ] Waiting 3.73 seconds before fallback handling...
[2026-06-27 23:08:59,287.287 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 23:08:59,288.288 INFO    ] Checking for system updates...
[2026-06-27 23:08:59,310.310 INFO    ] 200
[2026-06-27 23:08:59,312.312 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:08:59,345.345 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:08:59,346.346 INFO    ] No update needed
[2026-06-27 23:08:59,348.348 INFO    ] Checking for camera pi updates...
[2026-06-27 23:08:59,367.367 INFO    ] 200
[2026-06-27 23:08:59,369.369 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:08:59,393.393 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:08:59,451.451 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:08:59,453.453 INFO    ] No camera update needed
[2026-06-27 23:08:59,454.454 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:08:59,456.456 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:08:59,459.459 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:08:59,461.461 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:09:01,493.493 INFO    ] ================================================
[2026-06-27 23:09:01,506.506 INFO    ] Launching Daemon at Sat Jun 27 23:09:01 IST 2026
[2026-06-27 23:09:01,514.514 INFO    ] ================================================
[2026-06-27 23:09:01,879.879 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:09:01
[2026-06-27 23:09:02,247.247 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:09:02,397.397 INFO    ] Initializing speech engine...
[2026-06-27 23:09:02,407.407 INFO    ] 2026-06-27 23:09:02
[2026-06-27 23:09:02,613.613 INFO    ] 2026-06-27 23:09:02
[2026-06-27 23:09:02,642.642 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:09:02,766.766 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:09:02,830.830 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:09:02,962.962 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:09:03,028.028 INFO    ] time= 27/06/2026 23:09:02
[2026-06-27 23:09:03,063.063 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:09:03,069.069 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:09:03,138.138 INFO    ] No existing commands found in stream
[2026-06-27 23:09:08,147.147 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:09:08,150.150 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-27 23:09:10,170.170 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:09:10,172.172 INFO    ] Checking for system updates...
[2026-06-27 23:09:10,194.194 INFO    ] 200
[2026-06-27 23:09:10,195.195 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:09:10,226.226 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:09:10,228.228 INFO    ] No update needed
[2026-06-27 23:09:10,229.229 INFO    ] Checking for camera pi updates...
[2026-06-27 23:09:10,250.250 INFO    ] 200
[2026-06-27 23:09:10,251.251 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:09:10,277.277 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:09:10,416.416 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:09:10,418.418 INFO    ] No camera update needed
[2026-06-27 23:09:10,419.419 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:09:10,420.420 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:09:10,423.423 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:09:10,426.426 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:09:12,466.466 INFO    ] ================================================
[2026-06-27 23:09:12,482.482 INFO    ] Launching Daemon at Sat Jun 27 23:09:12 IST 2026
[2026-06-27 23:09:12,494.494 INFO    ] ================================================
[2026-06-27 23:09:12,888.888 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:09:12
[2026-06-27 23:09:13,233.233 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:09:13,386.386 INFO    ] Initializing speech engine...
[2026-06-27 23:09:13,391.391 INFO    ] 2026-06-27 23:09:13
[2026-06-27 23:09:13,599.599 INFO    ] 2026-06-27 23:09:13
[2026-06-27 23:09:13,629.629 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:09:13,812.812 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:09:13,821.821 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:09:13,972.972 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:09:14,020.020 INFO    ] time= 27/06/2026 23:09:13
[2026-06-27 23:09:14,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:09:14,048.048 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:09:14,115.115 INFO    ] No existing commands found in stream
[2026-06-27 23:09:19,130.130 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:09:19,133.133 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-27 23:09:21,105.105 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:09:21,107.107 INFO    ] Checking for system updates...
[2026-06-27 23:09:21,129.129 INFO    ] 200
[2026-06-27 23:09:21,131.131 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:09:21,165.165 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:09:21,167.167 INFO    ] No update needed
[2026-06-27 23:09:21,168.168 INFO    ] Checking for camera pi updates...
[2026-06-27 23:09:21,188.188 INFO    ] 200
[2026-06-27 23:09:21,189.189 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:09:21,214.214 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:09:21,254.254 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:09:21,255.255 INFO    ] No camera update needed
[2026-06-27 23:09:21,256.256 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:09:21,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:09:21,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:09:21,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:09:23,294.294 INFO    ] ================================================
[2026-06-27 23:09:23,302.302 INFO    ] Launching Daemon at Sat Jun 27 23:09:23 IST 2026
[2026-06-27 23:09:23,309.309 INFO    ] ================================================
[2026-06-27 23:09:23,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:09:23
[2026-06-27 23:09:23,969.969 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:09:24,112.112 INFO    ] Initializing speech engine...
[2026-06-27 23:09:24,117.117 INFO    ] 2026-06-27 23:09:24
[2026-06-27 23:09:24,322.322 INFO    ] 2026-06-27 23:09:24
[2026-06-27 23:09:24,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:09:24,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:09:24,541.541 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:09:24,667.667 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:09:24,719.719 INFO    ] time= 27/06/2026 23:09:24
[2026-06-27 23:09:24,753.753 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:09:24,763.763 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:09:24,835.835 INFO    ] No existing commands found in stream
[2026-06-27 23:09:29,844.844 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:09:29,847.847 INFO    ] Waiting 1.15 seconds before fallback handling...
[2026-06-27 23:09:31,381.381 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:09:31,383.383 INFO    ] Checking for system updates...
[2026-06-27 23:09:31,407.407 INFO    ] 200
[2026-06-27 23:09:31,409.409 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:09:31,448.448 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:09:31,450.450 INFO    ] No update needed
[2026-06-27 23:09:31,452.452 INFO    ] Checking for camera pi updates...
[2026-06-27 23:09:31,478.478 INFO    ] 200
[2026-06-27 23:09:31,480.480 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:09:31,510.510 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:09:31,540.540 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:09:31,542.542 INFO    ] No camera update needed
[2026-06-27 23:09:31,544.544 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:09:31,546.546 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:09:31,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:09:31,555.555 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:09:33,600.600 INFO    ] ================================================
[2026-06-27 23:09:33,616.616 INFO    ] Launching Daemon at Sat Jun 27 23:09:33 IST 2026
[2026-06-27 23:09:33,628.628 INFO    ] ================================================
[2026-06-27 23:09:33,993.993 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:09:33
[2026-06-27 23:09:34,343.343 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:09:34,497.497 INFO    ] Initializing speech engine...
[2026-06-27 23:09:34,504.504 INFO    ] 2026-06-27 23:09:34
[2026-06-27 23:09:34,714.714 INFO    ] 2026-06-27 23:09:34
[2026-06-27 23:09:34,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:09:34,929.929 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:09:34,938.938 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:09:35,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:09:35,143.143 INFO    ] time= 27/06/2026 23:09:35
[2026-06-27 23:09:35,163.163 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:09:35,165.165 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:09:35,232.232 INFO    ] No existing commands found in stream
[2026-06-27 23:09:40,247.247 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:09:40,250.250 INFO    ] Waiting 2.76 seconds before fallback handling...
[2026-06-27 23:09:43,409.409 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 23:09:43,410.410 INFO    ] Checking for system updates...
[2026-06-27 23:09:43,433.433 INFO    ] 200
[2026-06-27 23:09:43,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:09:43,467.467 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:09:43,469.469 INFO    ] No update needed
[2026-06-27 23:09:43,470.470 INFO    ] Checking for camera pi updates...
[2026-06-27 23:09:43,490.490 INFO    ] 200
[2026-06-27 23:09:43,491.491 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:09:43,515.515 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:09:43,560.560 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:09:43,561.561 INFO    ] No camera update needed
[2026-06-27 23:09:43,562.562 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:09:43,564.564 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:09:43,567.567 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:09:43,570.570 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:09:45,609.609 INFO    ] ================================================
[2026-06-27 23:09:45,625.625 INFO    ] Launching Daemon at Sat Jun 27 23:09:45 IST 2026
[2026-06-27 23:09:45,636.636 INFO    ] ================================================
[2026-06-27 23:09:45,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:09:45
[2026-06-27 23:09:46,329.329 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:09:46,486.486 INFO    ] Initializing speech engine...
[2026-06-27 23:09:46,491.491 INFO    ] 2026-06-27 23:09:46
[2026-06-27 23:09:46,697.697 INFO    ] 2026-06-27 23:09:46
[2026-06-27 23:09:46,726.726 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:09:46,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:09:46,921.921 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:09:47,071.071 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:09:47,137.137 INFO    ] time= 27/06/2026 23:09:47
[2026-06-27 23:09:47,147.147 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:09:47,149.149 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:09:47,215.215 INFO    ] No existing commands found in stream
[2026-06-27 23:09:52,235.235 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:09:52,239.239 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-27 23:09:53,246.246 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:09:53,247.247 INFO    ] Checking for system updates...
[2026-06-27 23:09:53,268.268 INFO    ] 200
[2026-06-27 23:09:53,270.270 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:09:53,305.305 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:09:53,307.307 INFO    ] No update needed
[2026-06-27 23:09:53,308.308 INFO    ] Checking for camera pi updates...
[2026-06-27 23:09:53,329.329 INFO    ] 200
[2026-06-27 23:09:53,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:09:53,353.353 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:09:53,405.405 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:09:53,407.407 INFO    ] No camera update needed
[2026-06-27 23:09:53,408.408 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:09:53,409.409 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:09:53,412.412 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:09:53,415.415 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:09:55,446.446 INFO    ] ================================================
[2026-06-27 23:09:55,455.455 INFO    ] Launching Daemon at Sat Jun 27 23:09:55 IST 2026
[2026-06-27 23:09:55,461.461 INFO    ] ================================================
[2026-06-27 23:09:55,817.817 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:09:55
[2026-06-27 23:09:56,135.135 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:09:56,266.266 INFO    ] Initializing speech engine...
[2026-06-27 23:09:56,275.275 INFO    ] 2026-06-27 23:09:56
[2026-06-27 23:09:56,484.484 INFO    ] 2026-06-27 23:09:56
[2026-06-27 23:09:56,538.538 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:09:56,690.690 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:09:56,748.748 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:09:56,878.878 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:09:56,934.934 INFO    ] time= 27/06/2026 23:09:56
[2026-06-27 23:09:56,968.968 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:09:56,982.982 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:09:57,050.050 INFO    ] No existing commands found in stream
[2026-06-27 23:10:02,056.056 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:10:02,059.059 INFO    ] Waiting 3.54 seconds before fallback handling...
[2026-06-27 23:10:09,059.059 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:10:09,060.060 INFO    ] Checking for system updates...
[2026-06-27 23:10:09,082.082 INFO    ] 200
[2026-06-27 23:10:09,083.083 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:10:09,114.114 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:10:09,116.116 INFO    ] No update needed
[2026-06-27 23:10:09,117.117 INFO    ] Checking for camera pi updates...
[2026-06-27 23:10:09,138.138 INFO    ] 200
[2026-06-27 23:10:09,140.140 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:10:09,168.168 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:10:09,210.210 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:10:09,211.211 INFO    ] No camera update needed
[2026-06-27 23:10:09,213.213 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:10:09,214.214 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:10:09,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:10:09,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:10:11,261.261 INFO    ] ================================================
[2026-06-27 23:10:11,277.277 INFO    ] Launching Daemon at Sat Jun 27 23:10:11 IST 2026
[2026-06-27 23:10:11,288.288 INFO    ] ================================================
[2026-06-27 23:10:11,628.628 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:10:11
[2026-06-27 23:10:11,945.945 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:10:12,078.078 INFO    ] Initializing speech engine...
[2026-06-27 23:10:12,091.091 INFO    ] 2026-06-27 23:10:12
[2026-06-27 23:10:12,300.300 INFO    ] 2026-06-27 23:10:12
[2026-06-27 23:10:12,330.330 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:10:12,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:10:12,519.519 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:10:12,649.649 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:10:12,710.710 INFO    ] time= 27/06/2026 23:10:12
[2026-06-27 23:10:12,749.749 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:10:12,755.755 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:10:12,823.823 INFO    ] No existing commands found in stream
[2026-06-27 23:10:17,832.832 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:10:17,835.835 INFO    ] Waiting 1.66 seconds before fallback handling...
[2026-06-27 23:10:19,909.909 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 23:10:19,911.911 INFO    ] Checking for system updates...
[2026-06-27 23:10:19,933.933 INFO    ] 200
[2026-06-27 23:10:19,935.935 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:10:19,969.969 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:10:19,970.970 INFO    ] No update needed
[2026-06-27 23:10:19,972.972 INFO    ] Checking for camera pi updates...
[2026-06-27 23:10:19,996.996 INFO    ] 200
[2026-06-27 23:10:19,997.997 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:10:20,027.027 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:10:20,068.068 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:10:20,069.069 INFO    ] No camera update needed
[2026-06-27 23:10:20,071.071 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:10:20,072.072 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:10:20,075.075 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:10:20,078.078 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:10:22,116.116 INFO    ] ================================================
[2026-06-27 23:10:22,131.131 INFO    ] Launching Daemon at Sat Jun 27 23:10:22 IST 2026
[2026-06-27 23:10:22,141.141 INFO    ] ================================================
[2026-06-27 23:10:22,507.507 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:10:22
[2026-06-27 23:10:22,819.819 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:10:22,965.965 INFO    ] Initializing speech engine...
[2026-06-27 23:10:22,970.970 INFO    ] 2026-06-27 23:10:22
[2026-06-27 23:10:23,178.178 INFO    ] 2026-06-27 23:10:23
[2026-06-27 23:10:23,206.206 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:10:23,391.391 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:10:23,395.395 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:10:23,529.529 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:10:23,586.586 INFO    ] time= 27/06/2026 23:10:23
[2026-06-27 23:10:23,622.622 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:10:23,627.627 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:10:23,700.700 INFO    ] No existing commands found in stream
[2026-06-27 23:10:28,706.706 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:10:28,709.709 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-27 23:10:30,269.269 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 23:10:30,271.271 INFO    ] Checking for system updates...
[2026-06-27 23:10:30,293.293 INFO    ] 200
[2026-06-27 23:10:30,295.295 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:10:30,326.326 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:10:30,328.328 INFO    ] No update needed
[2026-06-27 23:10:30,329.329 INFO    ] Checking for camera pi updates...
[2026-06-27 23:10:30,349.349 INFO    ] 200
[2026-06-27 23:10:30,351.351 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:10:30,376.376 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:10:30,421.421 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:10:30,423.423 INFO    ] No camera update needed
[2026-06-27 23:10:30,425.425 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:10:30,426.426 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:10:30,429.429 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:10:30,432.432 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:10:32,471.471 INFO    ] ================================================
[2026-06-27 23:10:32,486.486 INFO    ] Launching Daemon at Sat Jun 27 23:10:32 IST 2026
[2026-06-27 23:10:32,497.497 INFO    ] ================================================
[2026-06-27 23:10:32,860.860 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:10:32
[2026-06-27 23:10:33,172.172 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:10:33,310.310 INFO    ] Initializing speech engine...
[2026-06-27 23:10:33,318.318 INFO    ] 2026-06-27 23:10:33
[2026-06-27 23:10:33,526.526 INFO    ] 2026-06-27 23:10:33
[2026-06-27 23:10:33,555.555 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:10:33,743.743 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:10:33,751.751 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:10:33,883.883 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:10:33,951.951 INFO    ] time= 27/06/2026 23:10:33
[2026-06-27 23:10:33,975.975 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:10:33,977.977 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:10:34,048.048 INFO    ] No existing commands found in stream
[2026-06-27 23:10:39,058.058 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:10:39,061.061 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-27 23:10:40,760.760 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 23:10:40,762.762 INFO    ] Checking for system updates...
[2026-06-27 23:10:40,783.783 INFO    ] 200
[2026-06-27 23:10:40,785.785 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:10:40,818.818 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:10:40,819.819 INFO    ] No update needed
[2026-06-27 23:10:40,821.821 INFO    ] Checking for camera pi updates...
[2026-06-27 23:10:40,845.845 INFO    ] 200
[2026-06-27 23:10:40,846.846 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:10:40,875.875 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:10:40,920.920 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:10:40,922.922 INFO    ] No camera update needed
[2026-06-27 23:10:40,923.923 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:10:40,925.925 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:10:40,928.928 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:10:40,930.930 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:10:42,968.968 INFO    ] ================================================
[2026-06-27 23:10:42,983.983 INFO    ] Launching Daemon at Sat Jun 27 23:10:42 IST 2026
[2026-06-27 23:10:42,994.994 INFO    ] ================================================
[2026-06-27 23:10:43,364.364 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:10:43
[2026-06-27 23:10:43,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:10:43,863.863 INFO    ] Initializing speech engine...
[2026-06-27 23:10:43,866.866 INFO    ] 2026-06-27 23:10:43
[2026-06-27 23:10:44,075.075 INFO    ] 2026-06-27 23:10:44
[2026-06-27 23:10:44,105.105 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:10:44,248.248 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:10:44,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:10:44,440.440 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:10:44,498.498 INFO    ] time= 27/06/2026 23:10:44
[2026-06-27 23:10:44,522.522 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:10:44,528.528 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:10:44,596.596 INFO    ] No existing commands found in stream
[2026-06-27 23:10:49,610.610 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:10:49,614.614 INFO    ] Waiting 3.89 seconds before fallback handling...
[2026-06-27 23:10:53,936.936 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:10:53,938.938 INFO    ] Checking for system updates...
[2026-06-27 23:10:53,960.960 INFO    ] 200
[2026-06-27 23:10:53,962.962 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:10:53,997.997 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:10:53,999.999 INFO    ] No update needed
[2026-06-27 23:10:54,000.000 INFO    ] Checking for camera pi updates...
[2026-06-27 23:10:54,022.022 INFO    ] 200
[2026-06-27 23:10:54,024.024 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:10:54,050.050 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:10:54,132.132 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:10:54,134.134 INFO    ] No camera update needed
[2026-06-27 23:10:54,135.135 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:10:54,137.137 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:10:54,140.140 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:10:54,143.143 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:10:56,181.181 INFO    ] ================================================
[2026-06-27 23:10:56,196.196 INFO    ] Launching Daemon at Sat Jun 27 23:10:56 IST 2026
[2026-06-27 23:10:56,207.207 INFO    ] ================================================
[2026-06-27 23:10:56,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:10:56
[2026-06-27 23:10:56,892.892 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:10:57,022.022 INFO    ] Initializing speech engine...
[2026-06-27 23:10:57,026.026 INFO    ] 2026-06-27 23:10:57
[2026-06-27 23:10:57,246.246 INFO    ] 2026-06-27 23:10:57
[2026-06-27 23:10:57,275.275 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:10:57,462.462 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:10:57,471.471 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:10:57,622.622 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:10:57,672.672 INFO    ] time= 27/06/2026 23:10:57
[2026-06-27 23:10:57,693.693 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:10:57,700.700 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:10:57,767.767 INFO    ] No existing commands found in stream
[2026-06-27 23:11:02,775.775 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:11:02,778.778 INFO    ] Waiting 0.49 seconds before fallback handling...
[2026-06-27 23:11:03,670.670 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:11:03,673.673 INFO    ] Checking for system updates...
[2026-06-27 23:11:03,712.712 INFO    ] 200
[2026-06-27 23:11:03,715.715 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:11:03,769.769 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:11:03,771.771 INFO    ] No update needed
[2026-06-27 23:11:03,773.773 INFO    ] Checking for camera pi updates...
[2026-06-27 23:11:03,798.798 INFO    ] 200
[2026-06-27 23:11:03,799.799 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:11:03,824.824 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:11:03,871.871 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:11:03,872.872 INFO    ] No camera update needed
[2026-06-27 23:11:03,873.873 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:11:03,875.875 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:11:03,878.878 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:11:03,880.880 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:11:05,918.918 INFO    ] ================================================
[2026-06-27 23:11:05,934.934 INFO    ] Launching Daemon at Sat Jun 27 23:11:05 IST 2026
[2026-06-27 23:11:05,944.944 INFO    ] ================================================
[2026-06-27 23:11:06,299.299 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:11:06
[2026-06-27 23:11:06,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:11:06,742.742 INFO    ] Initializing speech engine...
[2026-06-27 23:11:06,755.755 INFO    ] 2026-06-27 23:11:06
[2026-06-27 23:11:06,964.964 INFO    ] 2026-06-27 23:11:06
[2026-06-27 23:11:06,992.992 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:11:07,177.177 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:11:07,187.187 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:11:07,402.402 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:11:07,409.409 INFO    ] time= 27/06/2026 23:11:07
[2026-06-27 23:11:07,471.471 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:11:07,487.487 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:11:07,541.541 INFO    ] No existing commands found in stream
[2026-06-27 23:11:12,551.551 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:11:12,555.555 INFO    ] Waiting 3.68 seconds before fallback handling...
[2026-06-27 23:11:16,665.665 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:11:16,667.667 INFO    ] Checking for system updates...
[2026-06-27 23:11:16,688.688 INFO    ] 200
[2026-06-27 23:11:16,689.689 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:11:16,720.720 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:11:16,721.721 INFO    ] No update needed
[2026-06-27 23:11:16,723.723 INFO    ] Checking for camera pi updates...
[2026-06-27 23:11:16,743.743 INFO    ] 200
[2026-06-27 23:11:16,744.744 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:11:16,769.769 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:11:16,910.910 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:11:16,912.912 INFO    ] No camera update needed
[2026-06-27 23:11:16,913.913 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:11:16,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:11:16,918.918 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:11:16,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:11:18,961.961 INFO    ] ================================================
[2026-06-27 23:11:18,977.977 INFO    ] Launching Daemon at Sat Jun 27 23:11:18 IST 2026
[2026-06-27 23:11:18,988.988 INFO    ] ================================================
[2026-06-27 23:11:19,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:11:19
[2026-06-27 23:11:19,658.658 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:11:19,789.789 INFO    ] Initializing speech engine...
[2026-06-27 23:11:19,797.797 INFO    ] 2026-06-27 23:11:19
[2026-06-27 23:11:20,012.012 INFO    ] 2026-06-27 23:11:19
[2026-06-27 23:11:20,041.041 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:11:20,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:11:20,255.255 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:11:20,434.434 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:11:20,457.457 INFO    ] time= 27/06/2026 23:11:20
[2026-06-27 23:11:20,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:11:20,464.464 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:11:20,530.530 INFO    ] No existing commands found in stream
[2026-06-27 23:11:25,540.540 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:11:25,543.543 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-27 23:11:29,893.893 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 23:11:29,895.895 INFO    ] Checking for system updates...
[2026-06-27 23:11:29,918.918 INFO    ] 200
[2026-06-27 23:11:29,919.919 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:11:29,950.950 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:11:29,952.952 INFO    ] No update needed
[2026-06-27 23:11:29,953.953 INFO    ] Checking for camera pi updates...
[2026-06-27 23:11:29,973.973 INFO    ] 200
[2026-06-27 23:11:29,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:11:29,999.999 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:11:30,043.043 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:11:30,045.045 INFO    ] No camera update needed
[2026-06-27 23:11:30,046.046 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:11:30,048.048 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:11:30,051.051 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:11:30,054.054 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:11:32,086.086 INFO    ] ================================================
[2026-06-27 23:11:32,095.095 INFO    ] Launching Daemon at Sat Jun 27 23:11:32 IST 2026
[2026-06-27 23:11:32,102.102 INFO    ] ================================================
[2026-06-27 23:11:32,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:11:32
[2026-06-27 23:11:32,784.784 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:11:32,914.914 INFO    ] Initializing speech engine...
[2026-06-27 23:11:32,927.927 INFO    ] 2026-06-27 23:11:32
[2026-06-27 23:11:33,134.134 INFO    ] 2026-06-27 23:11:33
[2026-06-27 23:11:33,161.161 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:11:33,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:11:33,356.356 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:11:33,504.504 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:11:33,558.558 INFO    ] time= 27/06/2026 23:11:33
[2026-06-27 23:11:33,575.575 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:11:33,580.580 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:11:33,647.647 INFO    ] No existing commands found in stream
[2026-06-27 23:11:38,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:11:38,659.659 INFO    ] Waiting 2.96 seconds before fallback handling...
[2026-06-27 23:11:42,025.025 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 23:11:42,027.027 INFO    ] Checking for system updates...
[2026-06-27 23:11:42,048.048 INFO    ] 200
[2026-06-27 23:11:42,049.049 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:11:42,082.082 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:11:42,084.084 INFO    ] No update needed
[2026-06-27 23:11:42,085.085 INFO    ] Checking for camera pi updates...
[2026-06-27 23:11:42,106.106 INFO    ] 200
[2026-06-27 23:11:42,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:11:42,132.132 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:11:42,177.177 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:11:42,178.178 INFO    ] No camera update needed
[2026-06-27 23:11:42,180.180 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:11:42,181.181 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:11:42,184.184 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:11:42,187.187 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:11:44,228.228 INFO    ] ================================================
[2026-06-27 23:11:44,244.244 INFO    ] Launching Daemon at Sat Jun 27 23:11:44 IST 2026
[2026-06-27 23:11:44,255.255 INFO    ] ================================================
[2026-06-27 23:11:44,618.618 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:11:44
[2026-06-27 23:11:44,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:11:45,069.069 INFO    ] Initializing speech engine...
[2026-06-27 23:11:45,081.081 INFO    ] 2026-06-27 23:11:45
[2026-06-27 23:11:45,289.289 INFO    ] 2026-06-27 23:11:45
[2026-06-27 23:11:45,319.319 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:11:45,507.507 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:11:45,515.515 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:11:45,672.672 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:11:45,715.715 INFO    ] time= 27/06/2026 23:11:45
[2026-06-27 23:11:45,737.737 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:11:45,743.743 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:11:45,811.811 INFO    ] No existing commands found in stream
[2026-06-27 23:11:50,825.825 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:11:50,828.828 INFO    ] Waiting 3.71 seconds before fallback handling...
[2026-06-27 23:11:54,905.905 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 23:11:54,906.906 INFO    ] Checking for system updates...
[2026-06-27 23:11:54,927.927 INFO    ] 200
[2026-06-27 23:11:54,928.928 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:11:54,959.959 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:11:54,960.960 INFO    ] No update needed
[2026-06-27 23:11:54,962.962 INFO    ] Checking for camera pi updates...
[2026-06-27 23:11:54,983.983 INFO    ] 200
[2026-06-27 23:11:54,985.985 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:11:55,009.009 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:11:55,040.040 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:11:55,041.041 INFO    ] No camera update needed
[2026-06-27 23:11:55,042.042 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:11:55,044.044 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:11:55,047.047 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:11:55,049.049 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:11:57,090.090 INFO    ] ================================================
[2026-06-27 23:11:57,105.105 INFO    ] Launching Daemon at Sat Jun 27 23:11:57 IST 2026
[2026-06-27 23:11:57,115.115 INFO    ] ================================================
[2026-06-27 23:11:57,489.489 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:11:57
[2026-06-27 23:11:57,806.806 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:11:57,939.939 INFO    ] Initializing speech engine...
[2026-06-27 23:11:57,944.944 INFO    ] 2026-06-27 23:11:57
[2026-06-27 23:11:58,163.163 INFO    ] 2026-06-27 23:11:58
[2026-06-27 23:11:58,192.192 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:11:58,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:11:58,385.385 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:11:58,524.524 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:11:58,581.581 INFO    ] time= 27/06/2026 23:11:58
[2026-06-27 23:11:58,604.604 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:11:58,610.610 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:11:58,675.675 INFO    ] No existing commands found in stream
[2026-06-27 23:12:03,684.684 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:12:03,687.687 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-27 23:12:07,245.245 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:12:07,246.246 INFO    ] Checking for system updates...
[2026-06-27 23:12:07,268.268 INFO    ] 200
[2026-06-27 23:12:07,269.269 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:12:07,303.303 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:12:07,305.305 INFO    ] No update needed
[2026-06-27 23:12:07,306.306 INFO    ] Checking for camera pi updates...
[2026-06-27 23:12:07,329.329 INFO    ] 200
[2026-06-27 23:12:07,330.330 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:12:07,356.356 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:12:07,398.398 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:12:07,399.399 INFO    ] No camera update needed
[2026-06-27 23:12:07,400.400 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:12:07,402.402 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:12:07,405.405 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:12:07,408.408 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:12:09,448.448 INFO    ] ================================================
[2026-06-27 23:12:09,464.464 INFO    ] Launching Daemon at Sat Jun 27 23:12:09 IST 2026
[2026-06-27 23:12:09,475.475 INFO    ] ================================================
[2026-06-27 23:12:09,829.829 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:12:09
[2026-06-27 23:12:10,142.142 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:12:10,280.280 INFO    ] Initializing speech engine...
[2026-06-27 23:12:10,292.292 INFO    ] 2026-06-27 23:12:10
[2026-06-27 23:12:10,498.498 INFO    ] 2026-06-27 23:12:10
[2026-06-27 23:12:10,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:12:10,714.714 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:12:10,723.723 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:12:10,906.906 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:12:10,942.942 INFO    ] time= 27/06/2026 23:12:10
[2026-06-27 23:12:10,948.948 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:12:10,953.953 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:12:11,045.045 INFO    ] No existing commands found in stream
[2026-06-27 23:12:16,054.054 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:12:16,056.056 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-27 23:12:19,334.334 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 23:12:19,336.336 INFO    ] Checking for system updates...
[2026-06-27 23:12:19,358.358 INFO    ] 200
[2026-06-27 23:12:19,360.360 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:12:19,393.393 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:12:19,395.395 INFO    ] No update needed
[2026-06-27 23:12:19,396.396 INFO    ] Checking for camera pi updates...
[2026-06-27 23:12:19,416.416 INFO    ] 200
[2026-06-27 23:12:19,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:12:19,441.441 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:12:19,483.483 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:12:19,485.485 INFO    ] No camera update needed
[2026-06-27 23:12:19,486.486 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:12:19,488.488 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:12:19,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:12:19,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:12:21,528.528 INFO    ] ================================================
[2026-06-27 23:12:21,545.545 INFO    ] Launching Daemon at Sat Jun 27 23:12:21 IST 2026
[2026-06-27 23:12:21,556.556 INFO    ] ================================================
[2026-06-27 23:12:21,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:12:21
[2026-06-27 23:12:22,216.216 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:12:22,347.347 INFO    ] Initializing speech engine...
[2026-06-27 23:12:22,355.355 INFO    ] 2026-06-27 23:12:22
[2026-06-27 23:12:22,570.570 INFO    ] 2026-06-27 23:12:22
[2026-06-27 23:12:22,599.599 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:12:22,787.787 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:12:22,795.795 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:12:22,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:12:22,994.994 INFO    ] time= 27/06/2026 23:12:22
[2026-06-27 23:12:23,018.018 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:12:23,024.024 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:12:23,091.091 INFO    ] No existing commands found in stream
[2026-06-27 23:12:28,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:12:28,104.104 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-27 23:12:30,331.331 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:12:30,332.332 INFO    ] Checking for system updates...
[2026-06-27 23:12:30,355.355 INFO    ] 200
[2026-06-27 23:12:30,356.356 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:12:30,389.389 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:12:30,391.391 INFO    ] No update needed
[2026-06-27 23:12:30,392.392 INFO    ] Checking for camera pi updates...
[2026-06-27 23:12:30,412.412 INFO    ] 200
[2026-06-27 23:12:30,414.414 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:12:30,440.440 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:12:30,483.483 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:12:30,485.485 INFO    ] No camera update needed
[2026-06-27 23:12:30,486.486 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:12:30,487.487 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:12:30,491.491 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:12:30,494.494 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:12:32,518.518 INFO    ] ================================================
[2026-06-27 23:12:32,527.527 INFO    ] Launching Daemon at Sat Jun 27 23:12:32 IST 2026
[2026-06-27 23:12:32,533.533 INFO    ] ================================================
[2026-06-27 23:12:32,882.882 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:12:32
[2026-06-27 23:12:33,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:12:33,326.326 INFO    ] Initializing speech engine...
[2026-06-27 23:12:33,334.334 INFO    ] 2026-06-27 23:12:33
[2026-06-27 23:12:33,547.547 INFO    ] 2026-06-27 23:12:33
[2026-06-27 23:12:33,578.578 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:12:33,765.765 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:12:33,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:12:33,993.993 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:12:33,999.999 INFO    ] time= 27/06/2026 23:12:33
[2026-06-27 23:12:34,000.000 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:12:34,002.002 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:12:34,071.071 INFO    ] No existing commands found in stream
[2026-06-27 23:12:39,106.106 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:12:39,109.109 INFO    ] Waiting 0.86 seconds before fallback handling...
[2026-06-27 23:12:40,436.436 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 23:12:40,438.438 INFO    ] Checking for system updates...
[2026-06-27 23:12:40,460.460 INFO    ] 200
[2026-06-27 23:12:40,461.461 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:12:40,491.491 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:12:40,493.493 INFO    ] No update needed
[2026-06-27 23:12:40,494.494 INFO    ] Checking for camera pi updates...
[2026-06-27 23:12:40,513.513 INFO    ] 200
[2026-06-27 23:12:40,515.515 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:12:40,538.538 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:12:40,581.581 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:12:40,583.583 INFO    ] No camera update needed
[2026-06-27 23:12:40,584.584 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:12:40,585.585 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:12:40,588.588 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:12:40,591.591 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:12:42,629.629 INFO    ] ================================================
[2026-06-27 23:12:42,644.644 INFO    ] Launching Daemon at Sat Jun 27 23:12:42 IST 2026
[2026-06-27 23:12:42,654.654 INFO    ] ================================================
[2026-06-27 23:12:43,017.017 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:12:43
[2026-06-27 23:12:43,334.334 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:12:43,465.465 INFO    ] Initializing speech engine...
[2026-06-27 23:12:43,468.468 INFO    ] 2026-06-27 23:12:43
[2026-06-27 23:12:43,687.687 INFO    ] 2026-06-27 23:12:43
[2026-06-27 23:12:43,717.717 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:12:43,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:12:43,914.914 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:12:44,059.059 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:12:44,113.113 INFO    ] time= 27/06/2026 23:12:44
[2026-06-27 23:12:44,136.136 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:12:44,142.142 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:12:44,208.208 INFO    ] No existing commands found in stream
[2026-06-27 23:12:49,218.218 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:12:49,221.221 INFO    ] Waiting 0.27 seconds before fallback handling...
[2026-06-27 23:12:49,934.934 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:12:49,935.935 INFO    ] Checking for system updates...
[2026-06-27 23:12:49,956.956 INFO    ] 200
[2026-06-27 23:12:49,957.957 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:12:49,987.987 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:12:49,988.988 INFO    ] No update needed
[2026-06-27 23:12:49,989.989 INFO    ] Checking for camera pi updates...
[2026-06-27 23:12:50,009.009 INFO    ] 200
[2026-06-27 23:12:50,010.010 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:12:50,036.036 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:12:50,082.082 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:12:50,083.083 INFO    ] No camera update needed
[2026-06-27 23:12:50,084.084 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:12:50,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:12:50,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:12:50,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:12:52,129.129 INFO    ] ================================================
[2026-06-27 23:12:52,144.144 INFO    ] Launching Daemon at Sat Jun 27 23:12:52 IST 2026
[2026-06-27 23:12:52,156.156 INFO    ] ================================================
[2026-06-27 23:12:52,491.491 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:12:52
[2026-06-27 23:12:52,811.811 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:12:52,954.954 INFO    ] Initializing speech engine...
[2026-06-27 23:12:52,959.959 INFO    ] 2026-06-27 23:12:52
[2026-06-27 23:12:53,162.162 INFO    ] 2026-06-27 23:12:53
[2026-06-27 23:12:53,194.194 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:12:53,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:12:53,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:12:53,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:12:53,580.580 INFO    ] time= 27/06/2026 23:12:53
[2026-06-27 23:12:53,607.607 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:12:53,609.609 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:12:53,681.681 INFO    ] No existing commands found in stream
[2026-06-27 23:12:58,690.690 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:12:58,692.692 INFO    ] Waiting 3.09 seconds before fallback handling...
[2026-06-27 23:13:02,140.140 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 23:13:02,142.142 INFO    ] Checking for system updates...
[2026-06-27 23:13:02,168.168 INFO    ] 200
[2026-06-27 23:13:02,169.169 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:13:02,207.207 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:13:02,209.209 INFO    ] No update needed
[2026-06-27 23:13:02,210.210 INFO    ] Checking for camera pi updates...
[2026-06-27 23:13:02,234.234 INFO    ] 200
[2026-06-27 23:13:02,236.236 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:13:02,259.259 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:13:02,291.291 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:13:02,292.292 INFO    ] No camera update needed
[2026-06-27 23:13:02,293.293 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:13:02,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:13:02,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:13:02,300.300 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:13:04,339.339 INFO    ] ================================================
[2026-06-27 23:13:04,355.355 INFO    ] Launching Daemon at Sat Jun 27 23:13:04 IST 2026
[2026-06-27 23:13:04,365.365 INFO    ] ================================================
[2026-06-27 23:13:04,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:13:04
[2026-06-27 23:13:05,056.056 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:13:05,247.247 INFO    ] Initializing speech engine...
[2026-06-27 23:13:05,255.255 INFO    ] 2026-06-27 23:13:05
[2026-06-27 23:13:05,489.489 INFO    ] 2026-06-27 23:13:05
[2026-06-27 23:13:05,526.526 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:13:05,672.672 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:13:05,717.717 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:13:05,900.900 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:13:05,935.935 INFO    ] time= 27/06/2026 23:13:05
[2026-06-27 23:13:05,945.945 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:13:05,951.951 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:13:06,022.022 INFO    ] No existing commands found in stream
[2026-06-27 23:13:11,031.031 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:13:11,035.035 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-27 23:13:12,539.539 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 23:13:12,541.541 INFO    ] Checking for system updates...
[2026-06-27 23:13:12,562.562 INFO    ] 200
[2026-06-27 23:13:12,563.563 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:13:12,594.594 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:13:12,595.595 INFO    ] No update needed
[2026-06-27 23:13:12,596.596 INFO    ] Checking for camera pi updates...
[2026-06-27 23:13:12,616.616 INFO    ] 200
[2026-06-27 23:13:12,617.617 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:13:12,640.640 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:13:12,693.693 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:13:12,695.695 INFO    ] No camera update needed
[2026-06-27 23:13:12,696.696 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:13:12,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:13:12,700.700 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:13:12,703.703 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:13:14,741.741 INFO    ] ================================================
[2026-06-27 23:13:14,756.756 INFO    ] Launching Daemon at Sat Jun 27 23:13:14 IST 2026
[2026-06-27 23:13:14,767.767 INFO    ] ================================================
[2026-06-27 23:13:15,096.096 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:13:15
[2026-06-27 23:13:15,408.408 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:13:15,545.545 INFO    ] Initializing speech engine...
[2026-06-27 23:13:15,553.553 INFO    ] 2026-06-27 23:13:15
[2026-06-27 23:13:15,764.764 INFO    ] 2026-06-27 23:13:15
[2026-06-27 23:13:15,793.793 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:13:15,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:13:15,986.986 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:13:16,133.133 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:13:16,186.186 INFO    ] time= 27/06/2026 23:13:16
[2026-06-27 23:13:16,209.209 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:13:16,214.214 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:13:16,282.282 INFO    ] No existing commands found in stream
[2026-06-27 23:13:21,296.296 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:13:21,299.299 INFO    ] Waiting 2.25 seconds before fallback handling...
[2026-06-27 23:13:23,995.995 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 23:13:23,997.997 INFO    ] Checking for system updates...
[2026-06-27 23:13:24,017.017 INFO    ] 200
[2026-06-27 23:13:24,019.019 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:13:24,052.052 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:13:24,053.053 INFO    ] No update needed
[2026-06-27 23:13:24,055.055 INFO    ] Checking for camera pi updates...
[2026-06-27 23:13:24,080.080 INFO    ] 200
[2026-06-27 23:13:24,081.081 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:13:24,106.106 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:13:24,249.249 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:13:24,250.250 INFO    ] No camera update needed
[2026-06-27 23:13:24,252.252 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:13:24,253.253 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:13:24,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:13:24,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:13:26,305.305 INFO    ] ================================================
[2026-06-27 23:13:26,320.320 INFO    ] Launching Daemon at Sat Jun 27 23:13:26 IST 2026
[2026-06-27 23:13:26,331.331 INFO    ] ================================================
[2026-06-27 23:13:26,696.696 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:13:26
[2026-06-27 23:13:27,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:13:27,144.144 INFO    ] Initializing speech engine...
[2026-06-27 23:13:27,153.153 INFO    ] 2026-06-27 23:13:27
[2026-06-27 23:13:27,366.366 INFO    ] 2026-06-27 23:13:27
[2026-06-27 23:13:27,395.395 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:13:27,581.581 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:13:27,590.590 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:13:27,731.731 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:13:27,788.788 INFO    ] time= 27/06/2026 23:13:27
[2026-06-27 23:13:27,812.812 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:13:27,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:13:27,884.884 INFO    ] No existing commands found in stream
[2026-06-27 23:13:32,898.898 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:13:32,901.901 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-27 23:13:35,810.810 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:13:35,811.811 INFO    ] Checking for system updates...
[2026-06-27 23:13:35,836.836 INFO    ] 200
[2026-06-27 23:13:35,838.838 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:13:35,871.871 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:13:35,872.872 INFO    ] No update needed
[2026-06-27 23:13:35,874.874 INFO    ] Checking for camera pi updates...
[2026-06-27 23:13:35,893.893 INFO    ] 200
[2026-06-27 23:13:35,895.895 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:13:35,918.918 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:13:35,961.961 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:13:35,962.962 INFO    ] No camera update needed
[2026-06-27 23:13:35,964.964 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:13:35,965.965 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:13:35,968.968 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:13:35,971.971 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:13:38,008.008 INFO    ] ================================================
[2026-06-27 23:13:38,024.024 INFO    ] Launching Daemon at Sat Jun 27 23:13:38 IST 2026
[2026-06-27 23:13:38,035.035 INFO    ] ================================================
[2026-06-27 23:13:38,371.371 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:13:38
[2026-06-27 23:13:38,684.684 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:13:38,816.816 INFO    ] Initializing speech engine...
[2026-06-27 23:13:38,823.823 INFO    ] 2026-06-27 23:13:38
[2026-06-27 23:13:39,036.036 INFO    ] 2026-06-27 23:13:39
[2026-06-27 23:13:39,065.065 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:13:39,198.198 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:13:39,252.252 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:13:39,383.383 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:13:39,428.428 INFO    ] time= 27/06/2026 23:13:39
[2026-06-27 23:13:39,463.463 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:13:39,484.484 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:13:39,580.580 INFO    ] No existing commands found in stream
[2026-06-27 23:13:44,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:13:44,589.589 INFO    ] Waiting 3.61 seconds before fallback handling...
[2026-06-27 23:13:48,606.606 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:13:48,607.607 INFO    ] Checking for system updates...
[2026-06-27 23:13:48,628.628 INFO    ] 200
[2026-06-27 23:13:48,629.629 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:13:48,659.659 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:13:48,661.661 INFO    ] No update needed
[2026-06-27 23:13:48,662.662 INFO    ] Checking for camera pi updates...
[2026-06-27 23:13:48,682.682 INFO    ] 200
[2026-06-27 23:13:48,683.683 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:13:48,706.706 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:13:48,750.750 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:13:48,751.751 INFO    ] No camera update needed
[2026-06-27 23:13:48,753.753 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:13:48,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:13:48,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:13:48,760.760 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:13:50,799.799 INFO    ] ================================================
[2026-06-27 23:13:50,814.814 INFO    ] Launching Daemon at Sat Jun 27 23:13:50 IST 2026
[2026-06-27 23:13:50,824.824 INFO    ] ================================================
[2026-06-27 23:13:51,153.153 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:13:51
[2026-06-27 23:13:51,467.467 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:13:51,598.598 INFO    ] Initializing speech engine...
[2026-06-27 23:13:51,606.606 INFO    ] 2026-06-27 23:13:51
[2026-06-27 23:13:51,821.821 INFO    ] 2026-06-27 23:13:51
[2026-06-27 23:13:51,850.850 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:13:52,115.115 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:13:52,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:13:52,339.339 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:13:52,343.343 INFO    ] time= 27/06/2026 23:13:52
[2026-06-27 23:13:52,368.368 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:13:52,370.370 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:13:52,468.468 INFO    ] No existing commands found in stream
[2026-06-27 23:13:57,478.478 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:13:57,481.481 INFO    ] Waiting 1.51 seconds before fallback handling...
[2026-06-27 23:13:59,406.406 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:13:59,407.407 INFO    ] Checking for system updates...
[2026-06-27 23:13:59,430.430 INFO    ] 200
[2026-06-27 23:13:59,432.432 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:13:59,464.464 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:13:59,465.465 INFO    ] No update needed
[2026-06-27 23:13:59,466.466 INFO    ] Checking for camera pi updates...
[2026-06-27 23:13:59,486.486 INFO    ] 200
[2026-06-27 23:13:59,488.488 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:13:59,512.512 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:13:59,558.558 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:13:59,559.559 INFO    ] No camera update needed
[2026-06-27 23:13:59,561.561 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:13:59,562.562 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:13:59,565.565 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:13:59,568.568 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:14:01,611.611 INFO    ] ================================================
[2026-06-27 23:14:01,628.628 INFO    ] Launching Daemon at Sat Jun 27 23:14:01 IST 2026
[2026-06-27 23:14:01,645.645 INFO    ] ================================================
[2026-06-27 23:14:02,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:14:02
[2026-06-27 23:14:02,433.433 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:14:02,570.570 INFO    ] Initializing speech engine...
[2026-06-27 23:14:02,574.574 INFO    ] 2026-06-27 23:14:02
[2026-06-27 23:14:02,799.799 INFO    ] 2026-06-27 23:14:02
[2026-06-27 23:14:02,828.828 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:14:03,054.054 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:14:03,105.105 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:14:03,324.324 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:14:03,328.328 INFO    ] time= 27/06/2026 23:14:03
[2026-06-27 23:14:03,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:14:03,360.360 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:14:03,452.452 INFO    ] No existing commands found in stream
[2026-06-27 23:14:08,462.462 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:14:08,465.465 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-27 23:14:08,996.996 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 23:14:08,997.997 INFO    ] Checking for system updates...
[2026-06-27 23:14:09,018.018 INFO    ] 200
[2026-06-27 23:14:09,019.019 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:14:09,051.051 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:14:09,053.053 INFO    ] No update needed
[2026-06-27 23:14:09,054.054 INFO    ] Checking for camera pi updates...
[2026-06-27 23:14:09,074.074 INFO    ] 200
[2026-06-27 23:14:09,075.075 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:14:09,103.103 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:14:09,141.141 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:14:09,142.142 INFO    ] No camera update needed
[2026-06-27 23:14:09,144.144 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:14:09,145.145 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:14:09,148.148 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:14:09,151.151 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:14:11,190.190 INFO    ] ================================================
[2026-06-27 23:14:11,206.206 INFO    ] Launching Daemon at Sat Jun 27 23:14:11 IST 2026
[2026-06-27 23:14:11,217.217 INFO    ] ================================================
[2026-06-27 23:14:11,558.558 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:14:11
[2026-06-27 23:14:11,870.870 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:14:12,012.012 INFO    ] Initializing speech engine...
[2026-06-27 23:14:12,016.016 INFO    ] 2026-06-27 23:14:12
[2026-06-27 23:14:12,221.221 INFO    ] 2026-06-27 23:14:12
[2026-06-27 23:14:12,250.250 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:14:12,433.433 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:14:12,436.436 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:14:12,594.594 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:14:12,642.642 INFO    ] time= 27/06/2026 23:14:12
[2026-06-27 23:14:12,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:14:12,670.670 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:14:12,736.736 INFO    ] No existing commands found in stream
[2026-06-27 23:14:17,750.750 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:14:17,753.753 INFO    ] Waiting 0.85 seconds before fallback handling...
[2026-06-27 23:14:19,032.032 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 23:14:19,033.033 INFO    ] Checking for system updates...
[2026-06-27 23:14:19,055.055 INFO    ] 200
[2026-06-27 23:14:19,057.057 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:14:19,092.092 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:14:19,093.093 INFO    ] No update needed
[2026-06-27 23:14:19,095.095 INFO    ] Checking for camera pi updates...
[2026-06-27 23:14:19,117.117 INFO    ] 200
[2026-06-27 23:14:19,119.119 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:14:19,145.145 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:14:19,187.187 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:14:19,189.189 INFO    ] No camera update needed
[2026-06-27 23:14:19,190.190 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:14:19,192.192 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:14:19,195.195 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:14:19,198.198 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:14:21,237.237 INFO    ] ================================================
[2026-06-27 23:14:21,252.252 INFO    ] Launching Daemon at Sat Jun 27 23:14:21 IST 2026
[2026-06-27 23:14:21,263.263 INFO    ] ================================================
[2026-06-27 23:14:21,605.605 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:14:21
[2026-06-27 23:14:21,918.918 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:14:22,050.050 INFO    ] Initializing speech engine...
[2026-06-27 23:14:22,058.058 INFO    ] 2026-06-27 23:14:22
[2026-06-27 23:14:22,274.274 INFO    ] 2026-06-27 23:14:22
[2026-06-27 23:14:22,303.303 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:14:22,491.491 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:14:22,501.501 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:14:22,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:14:22,684.684 INFO    ] time= 27/06/2026 23:14:22
[2026-06-27 23:14:22,724.724 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:14:22,726.726 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:14:22,798.798 INFO    ] No existing commands found in stream
[2026-06-27 23:14:27,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:14:27,815.815 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-27 23:14:28,529.529 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:14:28,531.531 INFO    ] Checking for system updates...
[2026-06-27 23:14:28,553.553 INFO    ] 200
[2026-06-27 23:14:28,554.554 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:14:28,584.584 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:14:28,586.586 INFO    ] No update needed
[2026-06-27 23:14:28,587.587 INFO    ] Checking for camera pi updates...
[2026-06-27 23:14:28,606.606 INFO    ] 200
[2026-06-27 23:14:28,608.608 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:14:28,631.631 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:14:28,680.680 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:14:28,682.682 INFO    ] No camera update needed
[2026-06-27 23:14:28,683.683 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:14:28,685.685 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:14:28,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:14:28,690.690 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:14:30,728.728 INFO    ] ================================================
[2026-06-27 23:14:30,743.743 INFO    ] Launching Daemon at Sat Jun 27 23:14:30 IST 2026
[2026-06-27 23:14:30,754.754 INFO    ] ================================================
[2026-06-27 23:14:31,107.107 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:14:31
[2026-06-27 23:14:31,421.421 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:14:31,566.566 INFO    ] Initializing speech engine...
[2026-06-27 23:14:31,572.572 INFO    ] 2026-06-27 23:14:31
[2026-06-27 23:14:31,769.769 INFO    ] 2026-06-27 23:14:31
[2026-06-27 23:14:31,819.819 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:14:32,003.003 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:14:32,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:14:32,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:14:32,281.281 INFO    ] time= 27/06/2026 23:14:32
[2026-06-27 23:14:32,333.333 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:14:32,339.339 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:14:32,421.421 INFO    ] No existing commands found in stream
[2026-06-27 23:14:37,431.431 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:14:37,434.434 INFO    ] Waiting 3.33 seconds before fallback handling...
[2026-06-27 23:14:41,215.215 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 23:14:41,216.216 INFO    ] Checking for system updates...
[2026-06-27 23:14:41,238.238 INFO    ] 200
[2026-06-27 23:14:41,239.239 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:14:41,269.269 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:14:41,271.271 INFO    ] No update needed
[2026-06-27 23:14:41,272.272 INFO    ] Checking for camera pi updates...
[2026-06-27 23:14:41,295.295 INFO    ] 200
[2026-06-27 23:14:41,296.296 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:14:41,320.320 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:14:41,361.361 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:14:41,363.363 INFO    ] No camera update needed
[2026-06-27 23:14:41,364.364 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:14:41,365.365 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:14:41,368.368 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:14:41,371.371 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:14:43,410.410 INFO    ] ================================================
[2026-06-27 23:14:43,425.425 INFO    ] Launching Daemon at Sat Jun 27 23:14:43 IST 2026
[2026-06-27 23:14:43,437.437 INFO    ] ================================================
[2026-06-27 23:14:43,802.802 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:14:43
[2026-06-27 23:14:44,119.119 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:14:44,263.263 INFO    ] Initializing speech engine...
[2026-06-27 23:14:44,269.269 INFO    ] 2026-06-27 23:14:44
[2026-06-27 23:14:44,473.473 INFO    ] 2026-06-27 23:14:44
[2026-06-27 23:14:44,501.501 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:14:44,687.687 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:14:44,697.697 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:14:44,832.832 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:14:44,894.894 INFO    ] time= 27/06/2026 23:14:44
[2026-06-27 23:14:44,917.917 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:14:44,923.923 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:14:44,991.991 INFO    ] No existing commands found in stream
[2026-06-27 23:14:50,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:14:50,003.003 INFO    ] Waiting 1.72 seconds before fallback handling...
[2026-06-27 23:14:52,130.130 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:14:52,131.131 INFO    ] Checking for system updates...
[2026-06-27 23:14:52,153.153 INFO    ] 200
[2026-06-27 23:14:52,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:14:52,186.186 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:14:52,187.187 INFO    ] No update needed
[2026-06-27 23:14:52,189.189 INFO    ] Checking for camera pi updates...
[2026-06-27 23:14:52,209.209 INFO    ] 200
[2026-06-27 23:14:52,211.211 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:14:52,236.236 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:14:52,278.278 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:14:52,279.279 INFO    ] No camera update needed
[2026-06-27 23:14:52,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:14:52,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:14:52,285.285 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:14:52,289.289 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:14:54,327.327 INFO    ] ================================================
[2026-06-27 23:14:54,343.343 INFO    ] Launching Daemon at Sat Jun 27 23:14:54 IST 2026
[2026-06-27 23:14:54,354.354 INFO    ] ================================================
[2026-06-27 23:14:54,744.744 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:14:54
[2026-06-27 23:14:55,064.064 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:14:55,215.215 INFO    ] Initializing speech engine...
[2026-06-27 23:14:55,220.220 INFO    ] 2026-06-27 23:14:55
[2026-06-27 23:14:55,428.428 INFO    ] 2026-06-27 23:14:55
[2026-06-27 23:14:55,457.457 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:14:55,643.643 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:14:55,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:14:55,802.802 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:14:55,851.851 INFO    ] time= 27/06/2026 23:14:55
[2026-06-27 23:14:55,872.872 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:14:55,879.879 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:14:55,945.945 INFO    ] No existing commands found in stream
[2026-06-27 23:15:00,960.960 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:15:00,963.963 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-27 23:15:02,079.079 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:15:02,081.081 INFO    ] Checking for system updates...
[2026-06-27 23:15:02,115.115 INFO    ] 200
[2026-06-27 23:15:02,118.118 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:15:02,173.173 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:15:02,176.176 INFO    ] No update needed
[2026-06-27 23:15:02,178.178 INFO    ] Checking for camera pi updates...
[2026-06-27 23:15:02,214.214 INFO    ] 200
[2026-06-27 23:15:02,216.216 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:15:02,240.240 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:15:02,278.278 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:15:02,279.279 INFO    ] No camera update needed
[2026-06-27 23:15:02,281.281 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:15:02,282.282 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:15:02,286.286 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:15:02,288.288 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:15:04,327.327 INFO    ] ================================================
[2026-06-27 23:15:04,343.343 INFO    ] Launching Daemon at Sat Jun 27 23:15:04 IST 2026
[2026-06-27 23:15:04,353.353 INFO    ] ================================================
[2026-06-27 23:15:04,715.715 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:15:04
[2026-06-27 23:15:05,030.030 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:15:05,167.167 INFO    ] Initializing speech engine...
[2026-06-27 23:15:05,178.178 INFO    ] 2026-06-27 23:15:05
[2026-06-27 23:15:05,382.382 INFO    ] 2026-06-27 23:15:05
[2026-06-27 23:15:05,411.411 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:15:05,606.606 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:15:05,615.615 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:15:05,750.750 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:15:05,812.812 INFO    ] time= 27/06/2026 23:15:05
[2026-06-27 23:15:05,836.836 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:15:05,843.843 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:15:05,910.910 INFO    ] No existing commands found in stream
[2026-06-27 23:15:10,919.919 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:15:10,923.923 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-27 23:15:15,333.333 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 23:15:15,335.335 INFO    ] Checking for system updates...
[2026-06-27 23:15:15,390.390 INFO    ] 200
[2026-06-27 23:15:15,392.392 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:15:15,425.425 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:15:15,426.426 INFO    ] No update needed
[2026-06-27 23:15:15,428.428 INFO    ] Checking for camera pi updates...
[2026-06-27 23:15:15,449.449 INFO    ] 200
[2026-06-27 23:15:15,451.451 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:15:15,479.479 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:15:15,520.520 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:15:15,521.521 INFO    ] No camera update needed
[2026-06-27 23:15:15,523.523 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:15:15,524.524 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:15:15,527.527 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:15:15,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:15:17,570.570 INFO    ] ================================================
[2026-06-27 23:15:17,586.586 INFO    ] Launching Daemon at Sat Jun 27 23:15:17 IST 2026
[2026-06-27 23:15:17,597.597 INFO    ] ================================================
[2026-06-27 23:15:17,928.928 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:15:17
[2026-06-27 23:15:18,240.240 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:15:18,374.374 INFO    ] Initializing speech engine...
[2026-06-27 23:15:18,378.378 INFO    ] 2026-06-27 23:15:18
[2026-06-27 23:15:18,573.573 INFO    ] 2026-06-27 23:15:18
[2026-06-27 23:15:18,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:15:18,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:15:18,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:15:18,979.979 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:15:19,033.033 INFO    ] time= 27/06/2026 23:15:18
[2026-06-27 23:15:19,056.056 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:15:19,062.062 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:15:19,128.128 INFO    ] No existing commands found in stream
[2026-06-27 23:15:24,137.137 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:15:24,140.140 INFO    ] Waiting 2.07 seconds before fallback handling...
[2026-06-27 23:15:26,635.635 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:15:26,637.637 INFO    ] Checking for system updates...
[2026-06-27 23:15:26,657.657 INFO    ] 200
[2026-06-27 23:15:26,659.659 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:15:26,692.692 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:15:26,693.693 INFO    ] No update needed
[2026-06-27 23:15:26,695.695 INFO    ] Checking for camera pi updates...
[2026-06-27 23:15:26,718.718 INFO    ] 200
[2026-06-27 23:15:26,719.719 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:15:26,744.744 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:15:26,881.881 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:15:26,883.883 INFO    ] No camera update needed
[2026-06-27 23:15:26,884.884 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:15:26,886.886 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:15:26,889.889 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:15:26,892.892 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:15:28,931.931 INFO    ] ================================================
[2026-06-27 23:15:28,946.946 INFO    ] Launching Daemon at Sat Jun 27 23:15:28 IST 2026
[2026-06-27 23:15:28,956.956 INFO    ] ================================================
[2026-06-27 23:15:29,318.318 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:15:29
[2026-06-27 23:15:29,631.631 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:15:29,761.761 INFO    ] Initializing speech engine...
[2026-06-27 23:15:29,766.766 INFO    ] 2026-06-27 23:15:29
[2026-06-27 23:15:29,984.984 INFO    ] 2026-06-27 23:15:29
[2026-06-27 23:15:30,013.013 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:15:30,199.199 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:15:30,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:15:30,387.387 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:15:30,423.423 INFO    ] time= 27/06/2026 23:15:30
[2026-06-27 23:15:30,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:15:30,439.439 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:15:30,507.507 INFO    ] No existing commands found in stream
[2026-06-27 23:15:35,521.521 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:15:35,524.524 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-27 23:15:36,322.322 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:15:36,324.324 INFO    ] Checking for system updates...
[2026-06-27 23:15:36,345.345 INFO    ] 200
[2026-06-27 23:15:36,346.346 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:15:36,378.378 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:15:36,379.379 INFO    ] No update needed
[2026-06-27 23:15:36,381.381 INFO    ] Checking for camera pi updates...
[2026-06-27 23:15:36,404.404 INFO    ] 200
[2026-06-27 23:15:36,406.406 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:15:36,431.431 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:15:36,476.476 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:15:36,477.477 INFO    ] No camera update needed
[2026-06-27 23:15:36,479.479 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:15:36,480.480 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:15:36,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:15:36,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:15:38,527.527 INFO    ] ================================================
[2026-06-27 23:15:38,542.542 INFO    ] Launching Daemon at Sat Jun 27 23:15:38 IST 2026
[2026-06-27 23:15:38,553.553 INFO    ] ================================================
[2026-06-27 23:15:38,884.884 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:15:38
[2026-06-27 23:15:39,195.195 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:15:39,325.325 INFO    ] Initializing speech engine...
[2026-06-27 23:15:39,333.333 INFO    ] 2026-06-27 23:15:39
[2026-06-27 23:15:39,544.544 INFO    ] 2026-06-27 23:15:39
[2026-06-27 23:15:39,574.574 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:15:39,757.757 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:15:39,767.767 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:15:39,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:15:39,963.963 INFO    ] time= 27/06/2026 23:15:39
[2026-06-27 23:15:39,986.986 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:15:39,991.991 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:15:40,058.058 INFO    ] No existing commands found in stream
[2026-06-27 23:15:45,072.072 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:15:45,075.075 INFO    ] Waiting 1.53 seconds before fallback handling...
[2026-06-27 23:15:47,028.028 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:15:47,029.029 INFO    ] Checking for system updates...
[2026-06-27 23:15:47,052.052 INFO    ] 200
[2026-06-27 23:15:47,053.053 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:15:47,089.089 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:15:47,091.091 INFO    ] No update needed
[2026-06-27 23:15:47,092.092 INFO    ] Checking for camera pi updates...
[2026-06-27 23:15:47,115.115 INFO    ] 200
[2026-06-27 23:15:47,116.116 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:15:47,142.142 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:15:47,182.182 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:15:47,184.184 INFO    ] No camera update needed
[2026-06-27 23:15:47,185.185 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:15:47,187.187 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:15:47,190.190 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:15:47,194.194 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:15:49,235.235 INFO    ] ================================================
[2026-06-27 23:15:49,251.251 INFO    ] Launching Daemon at Sat Jun 27 23:15:49 IST 2026
[2026-06-27 23:15:49,261.261 INFO    ] ================================================
[2026-06-27 23:15:49,650.650 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:15:49
[2026-06-27 23:15:49,988.988 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:15:50,135.135 INFO    ] Initializing speech engine...
[2026-06-27 23:15:50,140.140 INFO    ] 2026-06-27 23:15:50
[2026-06-27 23:15:50,347.347 INFO    ] 2026-06-27 23:15:50
[2026-06-27 23:15:50,377.377 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:15:50,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:15:50,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:15:50,698.698 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:15:50,754.754 INFO    ] time= 27/06/2026 23:15:50
[2026-06-27 23:15:50,795.795 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:15:50,800.800 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:15:50,871.871 INFO    ] No existing commands found in stream
[2026-06-27 23:15:55,882.882 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:15:55,885.885 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-27 23:15:56,928.928 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 23:15:56,929.929 INFO    ] Checking for system updates...
[2026-06-27 23:15:56,951.951 INFO    ] 200
[2026-06-27 23:15:56,953.953 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:15:56,986.986 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:15:56,987.987 INFO    ] No update needed
[2026-06-27 23:15:56,988.988 INFO    ] Checking for camera pi updates...
[2026-06-27 23:15:57,008.008 INFO    ] 200
[2026-06-27 23:15:57,009.009 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:15:57,034.034 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:15:57,081.081 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:15:57,082.082 INFO    ] No camera update needed
[2026-06-27 23:15:57,084.084 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:15:57,085.085 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:15:57,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:15:57,091.091 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:15:59,130.130 INFO    ] ================================================
[2026-06-27 23:15:59,145.145 INFO    ] Launching Daemon at Sat Jun 27 23:15:59 IST 2026
[2026-06-27 23:15:59,156.156 INFO    ] ================================================
[2026-06-27 23:15:59,519.519 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:15:59
[2026-06-27 23:15:59,858.858 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:15:59,990.990 INFO    ] Initializing speech engine...
[2026-06-27 23:15:59,993.993 INFO    ] 2026-06-27 23:15:59
[2026-06-27 23:16:00,213.213 INFO    ] 2026-06-27 23:16:00
[2026-06-27 23:16:00,242.242 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:16:00,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:16:00,431.431 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:16:00,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:16:00,640.640 INFO    ] time= 27/06/2026 23:16:00
[2026-06-27 23:16:00,664.664 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:16:00,671.671 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:16:00,737.737 INFO    ] No existing commands found in stream
[2026-06-27 23:16:05,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:16:05,746.746 INFO    ] Waiting 1.35 seconds before fallback handling...
[2026-06-27 23:16:07,491.491 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:16:07,492.492 INFO    ] Checking for system updates...
[2026-06-27 23:16:07,514.514 INFO    ] 200
[2026-06-27 23:16:07,516.516 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:16:07,549.549 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:16:07,550.550 INFO    ] No update needed
[2026-06-27 23:16:07,551.551 INFO    ] Checking for camera pi updates...
[2026-06-27 23:16:07,572.572 INFO    ] 200
[2026-06-27 23:16:07,574.574 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:16:07,598.598 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:16:07,639.639 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:16:07,641.641 INFO    ] No camera update needed
[2026-06-27 23:16:07,642.642 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:16:07,643.643 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:16:07,647.647 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:16:07,649.649 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:16:09,688.688 INFO    ] ================================================
[2026-06-27 23:16:09,703.703 INFO    ] Launching Daemon at Sat Jun 27 23:16:09 IST 2026
[2026-06-27 23:16:09,714.714 INFO    ] ================================================
[2026-06-27 23:16:10,078.078 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:16:10
[2026-06-27 23:16:10,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:16:10,542.542 INFO    ] Initializing speech engine...
[2026-06-27 23:16:10,547.547 INFO    ] 2026-06-27 23:16:10
[2026-06-27 23:16:10,752.752 INFO    ] 2026-06-27 23:16:10
[2026-06-27 23:16:10,780.780 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:16:10,902.902 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:16:10,945.945 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:16:11,108.108 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:16:11,169.169 INFO    ] time= 27/06/2026 23:16:11
[2026-06-27 23:16:11,193.193 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:16:11,199.199 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:16:11,265.265 INFO    ] No existing commands found in stream
[2026-06-27 23:16:16,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:16:16,278.278 INFO    ] Waiting 0.51 seconds before fallback handling...
[2026-06-27 23:16:17,217.217 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 23:16:17,218.218 INFO    ] Checking for system updates...
[2026-06-27 23:16:17,241.241 INFO    ] 200
[2026-06-27 23:16:17,242.242 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:16:17,275.275 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:16:17,276.276 INFO    ] No update needed
[2026-06-27 23:16:17,278.278 INFO    ] Checking for camera pi updates...
[2026-06-27 23:16:17,299.299 INFO    ] 200
[2026-06-27 23:16:17,300.300 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:16:17,327.327 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:16:17,368.368 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:16:17,370.370 INFO    ] No camera update needed
[2026-06-27 23:16:17,371.371 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:16:17,373.373 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:16:17,376.376 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:16:17,379.379 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:16:19,418.418 INFO    ] ================================================
[2026-06-27 23:16:19,434.434 INFO    ] Launching Daemon at Sat Jun 27 23:16:19 IST 2026
[2026-06-27 23:16:19,445.445 INFO    ] ================================================
[2026-06-27 23:16:19,775.775 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:16:19
[2026-06-27 23:16:20,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:16:20,233.233 INFO    ] Initializing speech engine...
[2026-06-27 23:16:20,243.243 INFO    ] 2026-06-27 23:16:20
[2026-06-27 23:16:20,449.449 INFO    ] 2026-06-27 23:16:20
[2026-06-27 23:16:20,478.478 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:16:20,663.663 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:16:20,673.673 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:16:20,807.807 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:16:20,869.869 INFO    ] time= 27/06/2026 23:16:20
[2026-06-27 23:16:20,894.894 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:16:20,899.899 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:16:20,967.967 INFO    ] No existing commands found in stream
[2026-06-27 23:16:25,981.981 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:16:25,984.984 INFO    ] Waiting 2.23 seconds before fallback handling...
[2026-06-27 23:16:28,585.585 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 23:16:28,587.587 INFO    ] Checking for system updates...
[2026-06-27 23:16:28,607.607 INFO    ] 200
[2026-06-27 23:16:28,609.609 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:16:28,640.640 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:16:28,641.641 INFO    ] No update needed
[2026-06-27 23:16:28,643.643 INFO    ] Checking for camera pi updates...
[2026-06-27 23:16:28,665.665 INFO    ] 200
[2026-06-27 23:16:28,666.666 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:16:28,691.691 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:16:28,732.732 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:16:28,733.733 INFO    ] No camera update needed
[2026-06-27 23:16:28,735.735 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:16:28,736.736 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:16:28,739.739 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:16:28,742.742 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:16:30,780.780 INFO    ] ================================================
[2026-06-27 23:16:30,795.795 INFO    ] Launching Daemon at Sat Jun 27 23:16:30 IST 2026
[2026-06-27 23:16:30,806.806 INFO    ] ================================================
[2026-06-27 23:16:31,199.199 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:16:31
[2026-06-27 23:16:31,541.541 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:16:31,687.687 INFO    ] Initializing speech engine...
[2026-06-27 23:16:31,701.701 INFO    ] 2026-06-27 23:16:31
[2026-06-27 23:16:31,946.946 INFO    ] 2026-06-27 23:16:31
[2026-06-27 23:16:31,979.979 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:16:32,118.118 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:16:32,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:16:32,363.363 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:16:32,424.424 INFO    ] time= 27/06/2026 23:16:32
[2026-06-27 23:16:32,446.446 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:16:32,452.452 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:16:32,518.518 INFO    ] No existing commands found in stream
[2026-06-27 23:16:37,529.529 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:16:37,531.531 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-27 23:16:38,809.809 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:16:38,811.811 INFO    ] Checking for system updates...
[2026-06-27 23:16:38,852.852 INFO    ] 200
[2026-06-27 23:16:38,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:16:38,912.912 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:16:38,913.913 INFO    ] No update needed
[2026-06-27 23:16:38,914.914 INFO    ] Checking for camera pi updates...
[2026-06-27 23:16:38,935.935 INFO    ] 200
[2026-06-27 23:16:38,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:16:38,960.960 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:16:39,004.004 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:16:39,006.006 INFO    ] No camera update needed
[2026-06-27 23:16:39,007.007 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:16:39,008.008 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:16:39,011.011 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:16:39,014.014 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:16:41,053.053 INFO    ] ================================================
[2026-06-27 23:16:41,068.068 INFO    ] Launching Daemon at Sat Jun 27 23:16:41 IST 2026
[2026-06-27 23:16:41,079.079 INFO    ] ================================================
[2026-06-27 23:16:41,425.425 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:16:41
[2026-06-27 23:16:41,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:16:41,867.867 INFO    ] Initializing speech engine...
[2026-06-27 23:16:41,875.875 INFO    ] 2026-06-27 23:16:41
[2026-06-27 23:16:42,087.087 INFO    ] 2026-06-27 23:16:42
[2026-06-27 23:16:42,115.115 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:16:42,299.299 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:16:42,308.308 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:16:42,442.442 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:16:42,506.506 INFO    ] time= 27/06/2026 23:16:42
[2026-06-27 23:16:42,528.528 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:16:42,534.534 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:16:42,600.600 INFO    ] No existing commands found in stream
[2026-06-27 23:16:47,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:16:47,611.611 INFO    ] Waiting 1.47 seconds before fallback handling...
[2026-06-27 23:16:49,487.487 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:16:49,489.489 INFO    ] Checking for system updates...
[2026-06-27 23:16:49,510.510 INFO    ] 200
[2026-06-27 23:16:49,511.511 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:16:49,544.544 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:16:49,546.546 INFO    ] No update needed
[2026-06-27 23:16:49,547.547 INFO    ] Checking for camera pi updates...
[2026-06-27 23:16:49,569.569 INFO    ] 200
[2026-06-27 23:16:49,571.571 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:16:49,596.596 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:16:49,638.638 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:16:49,639.639 INFO    ] No camera update needed
[2026-06-27 23:16:49,641.641 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:16:49,642.642 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:16:49,645.645 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:16:49,650.650 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:16:51,689.689 INFO    ] ================================================
[2026-06-27 23:16:51,705.705 INFO    ] Launching Daemon at Sat Jun 27 23:16:51 IST 2026
[2026-06-27 23:16:51,715.715 INFO    ] ================================================
[2026-06-27 23:16:52,077.077 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:16:52
[2026-06-27 23:16:52,393.393 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:16:52,531.531 INFO    ] Initializing speech engine...
[2026-06-27 23:16:52,541.541 INFO    ] 2026-06-27 23:16:52
[2026-06-27 23:16:52,746.746 INFO    ] 2026-06-27 23:16:52
[2026-06-27 23:16:52,776.776 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:16:52,960.960 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:16:52,970.970 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:16:53,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:16:53,169.169 INFO    ] time= 27/06/2026 23:16:53
[2026-06-27 23:16:53,191.191 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:16:53,196.196 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:16:53,262.262 INFO    ] No existing commands found in stream
[2026-06-27 23:16:58,273.273 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:16:58,276.276 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-27 23:17:01,205.205 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:17:01,207.207 INFO    ] Checking for system updates...
[2026-06-27 23:17:01,228.228 INFO    ] 200
[2026-06-27 23:17:01,229.229 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:17:01,262.262 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:17:01,264.264 INFO    ] No update needed
[2026-06-27 23:17:01,266.266 INFO    ] Checking for camera pi updates...
[2026-06-27 23:17:01,287.287 INFO    ] 200
[2026-06-27 23:17:01,289.289 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:17:01,317.317 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:17:01,366.366 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:17:01,368.368 INFO    ] No camera update needed
[2026-06-27 23:17:01,369.369 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:17:01,371.371 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:17:01,374.374 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:17:01,377.377 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:17:03,410.410 INFO    ] ================================================
[2026-06-27 23:17:03,426.426 INFO    ] Launching Daemon at Sat Jun 27 23:17:03 IST 2026
[2026-06-27 23:17:03,444.444 INFO    ] ================================================
[2026-06-27 23:17:03,797.797 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:17:03
[2026-06-27 23:17:04,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:17:04,249.249 INFO    ] Initializing speech engine...
[2026-06-27 23:17:04,257.257 INFO    ] 2026-06-27 23:17:04
[2026-06-27 23:17:04,467.467 INFO    ] 2026-06-27 23:17:04
[2026-06-27 23:17:04,495.495 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:17:04,683.683 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:17:04,687.687 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:17:04,846.846 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:17:04,896.896 INFO    ] time= 27/06/2026 23:17:04
[2026-06-27 23:17:04,918.918 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:17:04,924.924 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:17:04,989.989 INFO    ] No existing commands found in stream
[2026-06-27 23:17:10,000.000 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:17:10,003.003 INFO    ] Waiting 2.78 seconds before fallback handling...
[2026-06-27 23:17:13,168.168 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 23:17:13,169.169 INFO    ] Checking for system updates...
[2026-06-27 23:17:13,190.190 INFO    ] 200
[2026-06-27 23:17:13,192.192 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:17:13,226.226 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:17:13,227.227 INFO    ] No update needed
[2026-06-27 23:17:13,229.229 INFO    ] Checking for camera pi updates...
[2026-06-27 23:17:13,249.249 INFO    ] 200
[2026-06-27 23:17:13,250.250 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:17:13,276.276 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:17:13,320.320 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:17:13,322.322 INFO    ] No camera update needed
[2026-06-27 23:17:13,323.323 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:17:13,325.325 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:17:13,328.328 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:17:13,331.331 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:17:15,372.372 INFO    ] ================================================
[2026-06-27 23:17:15,387.387 INFO    ] Launching Daemon at Sat Jun 27 23:17:15 IST 2026
[2026-06-27 23:17:15,398.398 INFO    ] ================================================
[2026-06-27 23:17:15,741.741 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:17:15
[2026-06-27 23:17:16,054.054 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:17:16,184.184 INFO    ] Initializing speech engine...
[2026-06-27 23:17:16,189.189 INFO    ] 2026-06-27 23:17:16
[2026-06-27 23:17:16,407.407 INFO    ] 2026-06-27 23:17:16
[2026-06-27 23:17:16,437.437 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:17:16,624.624 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:17:16,632.632 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:17:16,762.762 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:17:16,813.813 INFO    ] time= 27/06/2026 23:17:16
[2026-06-27 23:17:16,857.857 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:17:16,859.859 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:17:16,931.931 INFO    ] No existing commands found in stream
[2026-06-27 23:17:21,940.940 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:17:21,942.942 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-27 23:17:24,509.509 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 23:17:24,510.510 INFO    ] Checking for system updates...
[2026-06-27 23:17:24,533.533 INFO    ] 200
[2026-06-27 23:17:24,535.535 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:17:24,568.568 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:17:24,570.570 INFO    ] No update needed
[2026-06-27 23:17:24,571.571 INFO    ] Checking for camera pi updates...
[2026-06-27 23:17:24,592.592 INFO    ] 200
[2026-06-27 23:17:24,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:17:24,618.618 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:17:24,661.661 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:17:24,662.662 INFO    ] No camera update needed
[2026-06-27 23:17:24,664.664 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:17:24,665.665 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:17:24,669.669 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:17:24,672.672 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:17:26,714.714 INFO    ] ================================================
[2026-06-27 23:17:26,730.730 INFO    ] Launching Daemon at Sat Jun 27 23:17:26 IST 2026
[2026-06-27 23:17:26,742.742 INFO    ] ================================================
[2026-06-27 23:17:27,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:17:27
[2026-06-27 23:17:27,498.498 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:17:27,654.654 INFO    ] Initializing speech engine...
[2026-06-27 23:17:27,660.660 INFO    ] 2026-06-27 23:17:27
[2026-06-27 23:17:27,868.868 INFO    ] 2026-06-27 23:17:27
[2026-06-27 23:17:27,897.897 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:17:28,081.081 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:17:28,091.091 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:17:28,242.242 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:17:28,314.314 INFO    ] time= 27/06/2026 23:17:28
[2026-06-27 23:17:28,321.321 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:17:28,323.323 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:17:28,387.387 INFO    ] No existing commands found in stream
[2026-06-27 23:17:33,396.396 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:17:33,399.399 INFO    ] Waiting 3.92 seconds before fallback handling...
[2026-06-27 23:17:37,732.732 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:17:37,734.734 INFO    ] Checking for system updates...
[2026-06-27 23:17:37,756.756 INFO    ] 200
[2026-06-27 23:17:37,757.757 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:17:37,792.792 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:17:37,793.793 INFO    ] No update needed
[2026-06-27 23:17:37,795.795 INFO    ] Checking for camera pi updates...
[2026-06-27 23:17:37,817.817 INFO    ] 200
[2026-06-27 23:17:37,819.819 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:17:37,842.842 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:17:37,883.883 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:17:37,885.885 INFO    ] No camera update needed
[2026-06-27 23:17:37,887.887 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:17:37,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:17:37,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:17:37,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:17:39,937.937 INFO    ] ================================================
[2026-06-27 23:17:39,953.953 INFO    ] Launching Daemon at Sat Jun 27 23:17:39 IST 2026
[2026-06-27 23:17:39,964.964 INFO    ] ================================================
[2026-06-27 23:17:40,350.350 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:17:40
[2026-06-27 23:17:40,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:17:40,796.796 INFO    ] Initializing speech engine...
[2026-06-27 23:17:40,804.804 INFO    ] 2026-06-27 23:17:40
[2026-06-27 23:17:41,020.020 INFO    ] 2026-06-27 23:17:40
[2026-06-27 23:17:41,049.049 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:17:41,174.174 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:17:41,237.237 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:17:41,378.378 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:17:41,427.427 INFO    ] time= 27/06/2026 23:17:41
[2026-06-27 23:17:41,467.467 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:17:41,473.473 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:17:41,546.546 INFO    ] No existing commands found in stream
[2026-06-27 23:17:46,555.555 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:17:46,558.558 INFO    ] Waiting 2.51 seconds before fallback handling...
[2026-06-27 23:17:49,470.470 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 23:17:49,472.472 INFO    ] Checking for system updates...
[2026-06-27 23:17:49,493.493 INFO    ] 200
[2026-06-27 23:17:49,495.495 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:17:49,526.526 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:17:49,527.527 INFO    ] No update needed
[2026-06-27 23:17:49,528.528 INFO    ] Checking for camera pi updates...
[2026-06-27 23:17:49,550.550 INFO    ] 200
[2026-06-27 23:17:49,552.552 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:17:49,578.578 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:17:49,624.624 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:17:49,625.625 INFO    ] No camera update needed
[2026-06-27 23:17:49,627.627 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:17:49,628.628 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:17:49,631.631 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:17:49,634.634 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:17:51,675.675 INFO    ] ================================================
[2026-06-27 23:17:51,691.691 INFO    ] Launching Daemon at Sat Jun 27 23:17:51 IST 2026
[2026-06-27 23:17:51,703.703 INFO    ] ================================================
[2026-06-27 23:17:52,089.089 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:17:52
[2026-06-27 23:17:52,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:17:52,585.585 INFO    ] Initializing speech engine...
[2026-06-27 23:17:52,598.598 INFO    ] 2026-06-27 23:17:52
[2026-06-27 23:17:52,812.812 INFO    ] 2026-06-27 23:17:52
[2026-06-27 23:17:52,842.842 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:17:52,965.965 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:17:53,029.029 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:17:53,168.168 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:17:53,236.236 INFO    ] time= 27/06/2026 23:17:53
[2026-06-27 23:17:53,260.260 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:17:53,267.267 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:17:53,334.334 INFO    ] No existing commands found in stream
[2026-06-27 23:17:58,353.353 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:17:58,357.357 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-27 23:17:59,392.392 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:17:59,394.394 INFO    ] Checking for system updates...
[2026-06-27 23:17:59,415.415 INFO    ] 200
[2026-06-27 23:17:59,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:17:59,447.447 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:17:59,449.449 INFO    ] No update needed
[2026-06-27 23:17:59,450.450 INFO    ] Checking for camera pi updates...
[2026-06-27 23:17:59,485.485 INFO    ] 200
[2026-06-27 23:17:59,488.488 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:17:59,529.529 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:17:59,583.583 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:17:59,585.585 INFO    ] No camera update needed
[2026-06-27 23:17:59,588.588 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:17:59,590.590 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:17:59,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:17:59,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:18:01,635.635 INFO    ] ================================================
[2026-06-27 23:18:01,646.646 INFO    ] Launching Daemon at Sat Jun 27 23:18:01 IST 2026
[2026-06-27 23:18:01,654.654 INFO    ] ================================================
[2026-06-27 23:18:02,013.013 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:18:02
[2026-06-27 23:18:02,345.345 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:18:02,477.477 INFO    ] Initializing speech engine...
[2026-06-27 23:18:02,485.485 INFO    ] 2026-06-27 23:18:02
[2026-06-27 23:18:02,701.701 INFO    ] 2026-06-27 23:18:02
[2026-06-27 23:18:02,729.729 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:18:02,869.869 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:18:02,917.917 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:18:03,057.057 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:18:03,116.116 INFO    ] time= 27/06/2026 23:18:03
[2026-06-27 23:18:03,148.148 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:18:03,155.155 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:18:03,222.222 INFO    ] No existing commands found in stream
[2026-06-27 23:18:08,231.231 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:18:08,234.234 INFO    ] Waiting 1.92 seconds before fallback handling...
[2026-06-27 23:18:10,567.567 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 23:18:10,568.568 INFO    ] Checking for system updates...
[2026-06-27 23:18:10,589.589 INFO    ] 200
[2026-06-27 23:18:10,591.591 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:18:10,622.622 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:18:10,623.623 INFO    ] No update needed
[2026-06-27 23:18:10,625.625 INFO    ] Checking for camera pi updates...
[2026-06-27 23:18:10,644.644 INFO    ] 200
[2026-06-27 23:18:10,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:18:10,669.669 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:18:10,716.716 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:18:10,718.718 INFO    ] No camera update needed
[2026-06-27 23:18:10,719.719 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:18:10,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:18:10,724.724 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:18:10,727.727 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:18:12,767.767 INFO    ] ================================================
[2026-06-27 23:18:12,783.783 INFO    ] Launching Daemon at Sat Jun 27 23:18:12 IST 2026
[2026-06-27 23:18:12,795.795 INFO    ] ================================================
[2026-06-27 23:18:13,143.143 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:18:13
[2026-06-27 23:18:13,458.458 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:18:13,601.601 INFO    ] Initializing speech engine...
[2026-06-27 23:18:13,606.606 INFO    ] 2026-06-27 23:18:13
[2026-06-27 23:18:13,810.810 INFO    ] 2026-06-27 23:18:13
[2026-06-27 23:18:13,838.838 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:18:14,006.006 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:18:14,008.008 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:18:14,160.160 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:18:14,221.221 INFO    ] time= 27/06/2026 23:18:14
[2026-06-27 23:18:14,253.253 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:18:14,255.255 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:18:14,326.326 INFO    ] No existing commands found in stream
[2026-06-27 23:18:19,335.335 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:18:19,342.342 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-27 23:18:23,183.183 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:18:23,184.184 INFO    ] Checking for system updates...
[2026-06-27 23:18:23,206.206 INFO    ] 200
[2026-06-27 23:18:23,207.207 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:18:23,237.237 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:18:23,239.239 INFO    ] No update needed
[2026-06-27 23:18:23,240.240 INFO    ] Checking for camera pi updates...
[2026-06-27 23:18:23,261.261 INFO    ] 200
[2026-06-27 23:18:23,262.262 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:18:23,287.287 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:18:23,333.333 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:18:23,334.334 INFO    ] No camera update needed
[2026-06-27 23:18:23,336.336 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:18:23,337.337 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:18:23,340.340 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:18:23,343.343 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:18:25,384.384 INFO    ] ================================================
[2026-06-27 23:18:25,400.400 INFO    ] Launching Daemon at Sat Jun 27 23:18:25 IST 2026
[2026-06-27 23:18:25,412.412 INFO    ] ================================================
[2026-06-27 23:18:25,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:18:25
[2026-06-27 23:18:26,130.130 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:18:26,280.280 INFO    ] Initializing speech engine...
[2026-06-27 23:18:26,286.286 INFO    ] 2026-06-27 23:18:26
[2026-06-27 23:18:26,495.495 INFO    ] 2026-06-27 23:18:26
[2026-06-27 23:18:26,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:18:26,710.710 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:18:26,720.720 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:18:26,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:18:26,937.937 INFO    ] time= 27/06/2026 23:18:26
[2026-06-27 23:18:26,939.939 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:18:26,945.945 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:18:27,012.012 INFO    ] No existing commands found in stream
[2026-06-27 23:18:32,020.020 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:18:32,022.022 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-27 23:18:35,331.331 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:18:35,332.332 INFO    ] Checking for system updates...
[2026-06-27 23:18:35,353.353 INFO    ] 200
[2026-06-27 23:18:35,355.355 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:18:35,386.386 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:18:35,388.388 INFO    ] No update needed
[2026-06-27 23:18:35,389.389 INFO    ] Checking for camera pi updates...
[2026-06-27 23:18:35,408.408 INFO    ] 200
[2026-06-27 23:18:35,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:18:35,433.433 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:18:35,485.485 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:18:35,486.486 INFO    ] No camera update needed
[2026-06-27 23:18:35,488.488 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:18:35,489.489 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:18:35,492.492 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:18:35,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:18:37,535.535 INFO    ] ================================================
[2026-06-27 23:18:37,550.550 INFO    ] Launching Daemon at Sat Jun 27 23:18:37 IST 2026
[2026-06-27 23:18:37,562.562 INFO    ] ================================================
[2026-06-27 23:18:37,929.929 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:18:37
[2026-06-27 23:18:38,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:18:38,391.391 INFO    ] Initializing speech engine...
[2026-06-27 23:18:38,405.405 INFO    ] 2026-06-27 23:18:38
[2026-06-27 23:18:38,616.616 INFO    ] 2026-06-27 23:18:38
[2026-06-27 23:18:38,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:18:38,821.821 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:18:38,864.864 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:18:39,051.051 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:18:39,090.090 INFO    ] time= 27/06/2026 23:18:39
[2026-06-27 23:18:39,143.143 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:18:39,169.169 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:18:39,245.245 INFO    ] No existing commands found in stream
[2026-06-27 23:18:44,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:18:44,259.259 INFO    ] Waiting 3.26 seconds before fallback handling...
[2026-06-27 23:18:48,046.046 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 23:18:48,048.048 INFO    ] Checking for system updates...
[2026-06-27 23:18:48,068.068 INFO    ] 200
[2026-06-27 23:18:48,070.070 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:18:48,101.101 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:18:48,102.102 INFO    ] No update needed
[2026-06-27 23:18:48,103.103 INFO    ] Checking for camera pi updates...
[2026-06-27 23:18:48,125.125 INFO    ] 200
[2026-06-27 23:18:48,127.127 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:18:48,150.150 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:18:48,192.192 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:18:48,193.193 INFO    ] No camera update needed
[2026-06-27 23:18:48,195.195 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:18:48,196.196 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:18:48,199.199 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:18:48,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:18:50,244.244 INFO    ] ================================================
[2026-06-27 23:18:50,260.260 INFO    ] Launching Daemon at Sat Jun 27 23:18:50 IST 2026
[2026-06-27 23:18:50,270.270 INFO    ] ================================================
[2026-06-27 23:18:50,596.596 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:18:50
[2026-06-27 23:18:50,908.908 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:18:51,046.046 INFO    ] Initializing speech engine...
[2026-06-27 23:18:51,055.055 INFO    ] 2026-06-27 23:18:51
[2026-06-27 23:18:51,259.259 INFO    ] 2026-06-27 23:18:51
[2026-06-27 23:18:51,289.289 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:18:51,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:18:51,481.481 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:18:51,610.610 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:18:51,674.674 INFO    ] time= 27/06/2026 23:18:51
[2026-06-27 23:18:51,702.702 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:18:51,708.708 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:18:51,774.774 INFO    ] No existing commands found in stream
[2026-06-27 23:18:56,785.785 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:18:56,787.787 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-27 23:18:59,051.051 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 23:18:59,053.053 INFO    ] Checking for system updates...
[2026-06-27 23:18:59,075.075 INFO    ] 200
[2026-06-27 23:18:59,077.077 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:18:59,109.109 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:18:59,111.111 INFO    ] No update needed
[2026-06-27 23:18:59,112.112 INFO    ] Checking for camera pi updates...
[2026-06-27 23:18:59,132.132 INFO    ] 200
[2026-06-27 23:18:59,134.134 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:18:59,158.158 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:18:59,205.205 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:18:59,206.206 INFO    ] No camera update needed
[2026-06-27 23:18:59,208.208 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:18:59,209.209 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:18:59,212.212 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:18:59,216.216 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:19:01,256.256 INFO    ] ================================================
[2026-06-27 23:19:01,272.272 INFO    ] Launching Daemon at Sat Jun 27 23:19:01 IST 2026
[2026-06-27 23:19:01,284.284 INFO    ] ================================================
[2026-06-27 23:19:01,740.740 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:19:01
[2026-06-27 23:19:02,106.106 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:19:02,299.299 INFO    ] Initializing speech engine...
[2026-06-27 23:19:02,311.311 INFO    ] 2026-06-27 23:19:02
[2026-06-27 23:19:02,500.500 INFO    ] 2026-06-27 23:19:02
[2026-06-27 23:19:02,534.534 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:19:02,711.711 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:19:02,774.774 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:19:02,927.927 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:19:02,985.985 INFO    ] time= 27/06/2026 23:19:02
[2026-06-27 23:19:03,024.024 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:19:03,026.026 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:19:03,102.102 INFO    ] No existing commands found in stream
[2026-06-27 23:19:08,112.112 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:19:08,114.114 INFO    ] Waiting 0.25 seconds before fallback handling...
[2026-06-27 23:19:08,728.728 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 23:19:08,729.729 INFO    ] Checking for system updates...
[2026-06-27 23:19:08,750.750 INFO    ] 200
[2026-06-27 23:19:08,751.751 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:19:08,784.784 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:19:08,786.786 INFO    ] No update needed
[2026-06-27 23:19:08,787.787 INFO    ] Checking for camera pi updates...
[2026-06-27 23:19:08,806.806 INFO    ] 200
[2026-06-27 23:19:08,808.808 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:19:08,831.831 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:19:08,874.874 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:19:08,875.875 INFO    ] No camera update needed
[2026-06-27 23:19:08,877.877 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:19:08,878.878 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:19:08,881.881 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:19:08,884.884 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:19:10,924.924 INFO    ] ================================================
[2026-06-27 23:19:10,939.939 INFO    ] Launching Daemon at Sat Jun 27 23:19:10 IST 2026
[2026-06-27 23:19:10,952.952 INFO    ] ================================================
[2026-06-27 23:19:11,297.297 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:19:11
[2026-06-27 23:19:11,617.617 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:19:11,749.749 INFO    ] Initializing speech engine...
[2026-06-27 23:19:11,757.757 INFO    ] 2026-06-27 23:19:11
[2026-06-27 23:19:11,969.969 INFO    ] 2026-06-27 23:19:11
[2026-06-27 23:19:11,998.998 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:19:12,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:19:12,190.190 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:19:12,320.320 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:19:12,384.384 INFO    ] time= 27/06/2026 23:19:12
[2026-06-27 23:19:12,411.411 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:19:12,417.417 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:19:12,484.484 INFO    ] No existing commands found in stream
[2026-06-27 23:19:17,498.498 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:19:17,501.501 INFO    ] Waiting 3.13 seconds before fallback handling...
[2026-06-27 23:19:21,014.014 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 23:19:21,015.015 INFO    ] Checking for system updates...
[2026-06-27 23:19:21,038.038 INFO    ] 200
[2026-06-27 23:19:21,040.040 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:19:21,070.070 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:19:21,071.071 INFO    ] No update needed
[2026-06-27 23:19:21,073.073 INFO    ] Checking for camera pi updates...
[2026-06-27 23:19:21,092.092 INFO    ] 200
[2026-06-27 23:19:21,094.094 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:19:21,118.118 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:19:21,161.161 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:19:21,163.163 INFO    ] No camera update needed
[2026-06-27 23:19:21,164.164 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:19:21,165.165 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:19:21,168.168 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:19:21,171.171 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:19:23,210.210 INFO    ] ================================================
[2026-06-27 23:19:23,226.226 INFO    ] Launching Daemon at Sat Jun 27 23:19:23 IST 2026
[2026-06-27 23:19:23,237.237 INFO    ] ================================================
[2026-06-27 23:19:23,607.607 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:19:23
[2026-06-27 23:19:23,931.931 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:19:24,077.077 INFO    ] Initializing speech engine...
[2026-06-27 23:19:24,083.083 INFO    ] 2026-06-27 23:19:24
[2026-06-27 23:19:24,299.299 INFO    ] 2026-06-27 23:19:24
[2026-06-27 23:19:24,329.329 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:19:24,522.522 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:19:24,529.529 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:19:24,669.669 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:19:24,737.737 INFO    ] time= 27/06/2026 23:19:24
[2026-06-27 23:19:24,764.764 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:19:24,770.770 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:19:24,836.836 INFO    ] No existing commands found in stream
[2026-06-27 23:19:29,847.847 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:19:29,850.850 INFO    ] Waiting 0.96 seconds before fallback handling...
[2026-06-27 23:19:31,221.221 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:19:31,222.222 INFO    ] Checking for system updates...
[2026-06-27 23:19:31,243.243 INFO    ] 200
[2026-06-27 23:19:31,244.244 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:19:31,279.279 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:19:31,280.280 INFO    ] No update needed
[2026-06-27 23:19:31,282.282 INFO    ] Checking for camera pi updates...
[2026-06-27 23:19:31,301.301 INFO    ] 200
[2026-06-27 23:19:31,302.302 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:19:31,326.326 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:19:31,384.384 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:19:31,385.385 INFO    ] No camera update needed
[2026-06-27 23:19:31,386.386 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:19:31,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:19:31,390.390 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:19:31,393.393 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:19:33,427.427 INFO    ] ================================================
[2026-06-27 23:19:33,443.443 INFO    ] Launching Daemon at Sat Jun 27 23:19:33 IST 2026
[2026-06-27 23:19:33,454.454 INFO    ] ================================================
[2026-06-27 23:19:33,792.792 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:19:33
[2026-06-27 23:19:34,111.111 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:19:34,253.253 INFO    ] Initializing speech engine...
[2026-06-27 23:19:34,258.258 INFO    ] 2026-06-27 23:19:34
[2026-06-27 23:19:34,463.463 INFO    ] 2026-06-27 23:19:34
[2026-06-27 23:19:34,491.491 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:19:34,679.679 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:19:34,689.689 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:19:34,834.834 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:19:34,886.886 INFO    ] time= 27/06/2026 23:19:34
[2026-06-27 23:19:34,909.909 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:19:34,915.915 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:19:34,982.982 INFO    ] No existing commands found in stream
[2026-06-27 23:19:39,991.991 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:19:39,994.994 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-27 23:19:43,907.907 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:19:43,909.909 INFO    ] Checking for system updates...
[2026-06-27 23:19:43,929.929 INFO    ] 200
[2026-06-27 23:19:43,931.931 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:19:43,961.961 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:19:43,963.963 INFO    ] No update needed
[2026-06-27 23:19:43,964.964 INFO    ] Checking for camera pi updates...
[2026-06-27 23:19:43,985.985 INFO    ] 200
[2026-06-27 23:19:43,986.986 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:19:44,010.010 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:19:44,152.152 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:19:44,153.153 INFO    ] No camera update needed
[2026-06-27 23:19:44,155.155 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:19:44,156.156 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:19:44,159.159 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:19:44,162.162 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:19:46,202.202 INFO    ] ================================================
[2026-06-27 23:19:46,217.217 INFO    ] Launching Daemon at Sat Jun 27 23:19:46 IST 2026
[2026-06-27 23:19:46,228.228 INFO    ] ================================================
[2026-06-27 23:19:46,573.573 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:19:46
[2026-06-27 23:19:46,885.885 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:19:47,016.016 INFO    ] Initializing speech engine...
[2026-06-27 23:19:47,024.024 INFO    ] 2026-06-27 23:19:47
[2026-06-27 23:19:47,237.237 INFO    ] 2026-06-27 23:19:47
[2026-06-27 23:19:47,267.267 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:19:47,454.454 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:19:47,462.462 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:19:47,586.586 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:19:47,637.637 INFO    ] time= 27/06/2026 23:19:47
[2026-06-27 23:19:47,683.683 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:19:47,688.688 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:19:47,760.760 INFO    ] No existing commands found in stream
[2026-06-27 23:19:52,769.769 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:19:52,771.771 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-27 23:19:57,069.069 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 23:19:57,070.070 INFO    ] Checking for system updates...
[2026-06-27 23:19:57,091.091 INFO    ] 200
[2026-06-27 23:19:57,092.092 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:19:57,125.125 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:19:57,126.126 INFO    ] No update needed
[2026-06-27 23:19:57,127.127 INFO    ] Checking for camera pi updates...
[2026-06-27 23:19:57,149.149 INFO    ] 200
[2026-06-27 23:19:57,150.150 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:19:57,178.178 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:19:57,222.222 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:19:57,224.224 INFO    ] No camera update needed
[2026-06-27 23:19:57,225.225 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:19:57,226.226 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:19:57,229.229 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:19:57,232.232 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:19:59,272.272 INFO    ] ================================================
[2026-06-27 23:19:59,287.287 INFO    ] Launching Daemon at Sat Jun 27 23:19:59 IST 2026
[2026-06-27 23:19:59,298.298 INFO    ] ================================================
[2026-06-27 23:19:59,648.648 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:19:59
[2026-06-27 23:19:59,966.966 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:20:00,104.104 INFO    ] Initializing speech engine...
[2026-06-27 23:20:00,113.113 INFO    ] 2026-06-27 23:20:00
[2026-06-27 23:20:00,320.320 INFO    ] 2026-06-27 23:20:00
[2026-06-27 23:20:00,349.349 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:20:00,533.533 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:20:00,543.543 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:20:00,682.682 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:20:00,739.739 INFO    ] time= 27/06/2026 23:20:00
[2026-06-27 23:20:00,762.762 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:20:00,769.769 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:20:00,834.834 INFO    ] No existing commands found in stream
[2026-06-27 23:20:05,845.845 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:20:05,848.848 INFO    ] Waiting 2.55 seconds before fallback handling...
[2026-06-27 23:20:08,847.847 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 23:20:08,848.848 INFO    ] Checking for system updates...
[2026-06-27 23:20:08,869.869 INFO    ] 200
[2026-06-27 23:20:08,870.870 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:20:08,902.902 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:20:08,904.904 INFO    ] No update needed
[2026-06-27 23:20:08,905.905 INFO    ] Checking for camera pi updates...
[2026-06-27 23:20:08,928.928 INFO    ] 200
[2026-06-27 23:20:08,929.929 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:20:08,952.952 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:20:09,002.002 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:20:09,004.004 INFO    ] No camera update needed
[2026-06-27 23:20:09,005.005 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:20:09,007.007 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:20:09,010.010 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:20:09,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:20:11,052.052 INFO    ] ================================================
[2026-06-27 23:20:11,067.067 INFO    ] Launching Daemon at Sat Jun 27 23:20:11 IST 2026
[2026-06-27 23:20:11,078.078 INFO    ] ================================================
[2026-06-27 23:20:11,428.428 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:20:11
[2026-06-27 23:20:11,744.744 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:20:11,879.879 INFO    ] Initializing speech engine...
[2026-06-27 23:20:11,888.888 INFO    ] 2026-06-27 23:20:11
[2026-06-27 23:20:12,102.102 INFO    ] 2026-06-27 23:20:12
[2026-06-27 23:20:12,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:20:12,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:20:12,319.319 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:20:12,458.458 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:20:12,522.522 INFO    ] time= 27/06/2026 23:20:12
[2026-06-27 23:20:12,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:20:12,552.552 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:20:12,648.648 INFO    ] No existing commands found in stream
[2026-06-27 23:20:17,657.657 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:20:17,660.660 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-27 23:20:21,597.597 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:20:21,599.599 INFO    ] Checking for system updates...
[2026-06-27 23:20:21,619.619 INFO    ] 200
[2026-06-27 23:20:21,621.621 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:20:21,652.652 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:20:21,653.653 INFO    ] No update needed
[2026-06-27 23:20:21,655.655 INFO    ] Checking for camera pi updates...
[2026-06-27 23:20:21,676.676 INFO    ] 200
[2026-06-27 23:20:21,678.678 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:20:21,705.705 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:20:21,750.750 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:20:21,751.751 INFO    ] No camera update needed
[2026-06-27 23:20:21,752.752 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:20:21,754.754 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:20:21,757.757 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:20:21,759.759 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:20:23,800.800 INFO    ] ================================================
[2026-06-27 23:20:23,815.815 INFO    ] Launching Daemon at Sat Jun 27 23:20:23 IST 2026
[2026-06-27 23:20:23,826.826 INFO    ] ================================================
[2026-06-27 23:20:24,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:20:24
[2026-06-27 23:20:24,502.502 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:20:24,644.644 INFO    ] Initializing speech engine...
[2026-06-27 23:20:24,649.649 INFO    ] 2026-06-27 23:20:24
[2026-06-27 23:20:24,853.853 INFO    ] 2026-06-27 23:20:24
[2026-06-27 23:20:24,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:20:25,066.066 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:20:25,069.069 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:20:25,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:20:25,293.293 INFO    ] time= 27/06/2026 23:20:25
[2026-06-27 23:20:25,295.295 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:20:25,301.301 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:20:25,368.368 INFO    ] No existing commands found in stream
[2026-06-27 23:20:30,377.377 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:20:30,379.379 INFO    ] Waiting 0.57 seconds before fallback handling...
[2026-06-27 23:20:31,351.351 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 23:20:31,352.352 INFO    ] Checking for system updates...
[2026-06-27 23:20:31,374.374 INFO    ] 200
[2026-06-27 23:20:31,375.375 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:20:31,406.406 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:20:31,408.408 INFO    ] No update needed
[2026-06-27 23:20:31,409.409 INFO    ] Checking for camera pi updates...
[2026-06-27 23:20:31,429.429 INFO    ] 200
[2026-06-27 23:20:31,430.430 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:20:31,453.453 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:20:31,494.494 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:20:31,495.495 INFO    ] No camera update needed
[2026-06-27 23:20:31,497.497 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:20:31,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:20:31,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:20:31,504.504 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:20:33,537.537 INFO    ] ================================================
[2026-06-27 23:20:33,557.557 INFO    ] Launching Daemon at Sat Jun 27 23:20:33 IST 2026
[2026-06-27 23:20:33,567.567 INFO    ] ================================================
[2026-06-27 23:20:33,905.905 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:20:33
[2026-06-27 23:20:34,218.218 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:20:34,354.354 INFO    ] Initializing speech engine...
[2026-06-27 23:20:34,364.364 INFO    ] 2026-06-27 23:20:34
[2026-06-27 23:20:34,568.568 INFO    ] 2026-06-27 23:20:34
[2026-06-27 23:20:34,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:20:34,782.782 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:20:34,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:20:34,921.921 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:20:34,980.980 INFO    ] time= 27/06/2026 23:20:34
[2026-06-27 23:20:35,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:20:35,014.014 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:20:35,086.086 INFO    ] No existing commands found in stream
[2026-06-27 23:20:40,099.099 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:20:40,100.100 INFO    ] Waiting 3.75 seconds before fallback handling...
[2026-06-27 23:20:44,292.292 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:20:44,293.293 INFO    ] Checking for system updates...
[2026-06-27 23:20:44,314.314 INFO    ] 200
[2026-06-27 23:20:44,315.315 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:20:44,348.348 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:20:44,349.349 INFO    ] No update needed
[2026-06-27 23:20:44,350.350 INFO    ] Checking for camera pi updates...
[2026-06-27 23:20:44,375.375 INFO    ] 200
[2026-06-27 23:20:44,376.376 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:20:44,399.399 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:20:44,440.440 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:20:44,442.442 INFO    ] No camera update needed
[2026-06-27 23:20:44,443.443 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:20:44,445.445 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:20:44,448.448 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:20:44,450.450 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:20:46,490.490 INFO    ] ================================================
[2026-06-27 23:20:46,505.505 INFO    ] Launching Daemon at Sat Jun 27 23:20:46 IST 2026
[2026-06-27 23:20:46,516.516 INFO    ] ================================================
[2026-06-27 23:20:46,874.874 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:20:46
[2026-06-27 23:20:47,212.212 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:20:47,362.362 INFO    ] Initializing speech engine...
[2026-06-27 23:20:47,368.368 INFO    ] 2026-06-27 23:20:47
[2026-06-27 23:20:47,576.576 INFO    ] 2026-06-27 23:20:47
[2026-06-27 23:20:47,605.605 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:20:47,727.727 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:20:47,791.791 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:20:47,928.928 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:20:47,997.997 INFO    ] time= 27/06/2026 23:20:47
[2026-06-27 23:20:48,020.020 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:20:48,027.027 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:20:48,093.093 INFO    ] No existing commands found in stream
[2026-06-27 23:20:53,104.104 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:20:53,107.107 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-27 23:20:55,547.547 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 23:20:55,548.548 INFO    ] Checking for system updates...
[2026-06-27 23:20:55,570.570 INFO    ] 200
[2026-06-27 23:20:55,571.571 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:20:55,603.603 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:20:55,604.604 INFO    ] No update needed
[2026-06-27 23:20:55,606.606 INFO    ] Checking for camera pi updates...
[2026-06-27 23:20:55,625.625 INFO    ] 200
[2026-06-27 23:20:55,627.627 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:20:55,650.650 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:20:55,681.681 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:20:55,683.683 INFO    ] No camera update needed
[2026-06-27 23:20:55,685.685 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:20:55,686.686 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:20:55,689.689 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:20:55,692.692 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:20:57,731.731 INFO    ] ================================================
[2026-06-27 23:20:57,746.746 INFO    ] Launching Daemon at Sat Jun 27 23:20:57 IST 2026
[2026-06-27 23:20:57,757.757 INFO    ] ================================================
[2026-06-27 23:20:58,095.095 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:20:58
[2026-06-27 23:20:58,407.407 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:20:58,544.544 INFO    ] Initializing speech engine...
[2026-06-27 23:20:58,553.553 INFO    ] 2026-06-27 23:20:58
[2026-06-27 23:20:58,762.762 INFO    ] 2026-06-27 23:20:58
[2026-06-27 23:20:58,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:20:58,915.915 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:20:58,978.978 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:20:59,118.118 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:20:59,182.182 INFO    ] time= 27/06/2026 23:20:59
[2026-06-27 23:20:59,211.211 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:20:59,217.217 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:20:59,284.284 INFO    ] No existing commands found in stream
[2026-06-27 23:21:04,293.293 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:21:04,296.296 INFO    ] Waiting 0.36 seconds before fallback handling...
[2026-06-27 23:21:05,068.068 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 23:21:05,069.069 INFO    ] Checking for system updates...
[2026-06-27 23:21:05,089.089 INFO    ] 200
[2026-06-27 23:21:05,091.091 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:21:05,123.123 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:21:05,125.125 INFO    ] No update needed
[2026-06-27 23:21:05,126.126 INFO    ] Checking for camera pi updates...
[2026-06-27 23:21:05,152.152 INFO    ] 200
[2026-06-27 23:21:05,154.154 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:21:05,187.187 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:21:05,241.241 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:21:05,242.242 INFO    ] No camera update needed
[2026-06-27 23:21:05,244.244 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:21:05,245.245 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:21:05,248.248 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:21:05,251.251 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:21:07,290.290 INFO    ] ================================================
[2026-06-27 23:21:07,306.306 INFO    ] Launching Daemon at Sat Jun 27 23:21:07 IST 2026
[2026-06-27 23:21:07,316.316 INFO    ] ================================================
[2026-06-27 23:21:07,705.705 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:21:07
[2026-06-27 23:21:08,039.039 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:21:08,191.191 INFO    ] Initializing speech engine...
[2026-06-27 23:21:08,196.196 INFO    ] 2026-06-27 23:21:08
[2026-06-27 23:21:08,401.401 INFO    ] 2026-06-27 23:21:08
[2026-06-27 23:21:08,430.430 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:21:08,614.614 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:21:08,624.624 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:21:08,773.773 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:21:08,821.821 INFO    ] time= 27/06/2026 23:21:08
[2026-06-27 23:21:08,843.843 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:21:08,850.850 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:21:08,917.917 INFO    ] No existing commands found in stream
[2026-06-27 23:21:13,931.931 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:21:13,934.934 INFO    ] Waiting 1.73 seconds before fallback handling...
[2026-06-27 23:21:16,099.099 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:21:16,100.100 INFO    ] Checking for system updates...
[2026-06-27 23:21:16,122.122 INFO    ] 200
[2026-06-27 23:21:16,124.124 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:21:16,157.157 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:21:16,158.158 INFO    ] No update needed
[2026-06-27 23:21:16,160.160 INFO    ] Checking for camera pi updates...
[2026-06-27 23:21:16,179.179 INFO    ] 200
[2026-06-27 23:21:16,181.181 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:21:16,205.205 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:21:16,236.236 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:21:16,237.237 INFO    ] No camera update needed
[2026-06-27 23:21:16,239.239 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:21:16,240.240 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:21:16,243.243 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:21:16,246.246 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:21:18,288.288 INFO    ] ================================================
[2026-06-27 23:21:18,303.303 INFO    ] Launching Daemon at Sat Jun 27 23:21:18 IST 2026
[2026-06-27 23:21:18,313.313 INFO    ] ================================================
[2026-06-27 23:21:18,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:21:18
[2026-06-27 23:21:19,026.026 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:21:19,169.169 INFO    ] Initializing speech engine...
[2026-06-27 23:21:19,174.174 INFO    ] 2026-06-27 23:21:19
[2026-06-27 23:21:19,379.379 INFO    ] 2026-06-27 23:21:19
[2026-06-27 23:21:19,408.408 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:21:19,591.591 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:21:19,600.600 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:21:19,741.741 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:21:19,798.798 INFO    ] time= 27/06/2026 23:21:19
[2026-06-27 23:21:19,822.822 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:21:19,828.828 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:21:19,895.895 INFO    ] No existing commands found in stream
[2026-06-27 23:21:24,904.904 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:21:24,907.907 INFO    ] Waiting 0.67 seconds before fallback handling...
[2026-06-27 23:21:25,988.988 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 23:21:25,989.989 INFO    ] Checking for system updates...
[2026-06-27 23:21:26,010.010 INFO    ] 200
[2026-06-27 23:21:26,011.011 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:21:26,043.043 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:21:26,045.045 INFO    ] No update needed
[2026-06-27 23:21:26,046.046 INFO    ] Checking for camera pi updates...
[2026-06-27 23:21:26,066.066 INFO    ] 200
[2026-06-27 23:21:26,068.068 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:21:26,092.092 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:21:26,131.131 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:21:26,132.132 INFO    ] No camera update needed
[2026-06-27 23:21:26,134.134 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:21:26,135.135 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:21:26,138.138 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:21:26,141.141 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:21:28,181.181 INFO    ] ================================================
[2026-06-27 23:21:28,197.197 INFO    ] Launching Daemon at Sat Jun 27 23:21:28 IST 2026
[2026-06-27 23:21:28,208.208 INFO    ] ================================================
[2026-06-27 23:21:28,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:21:28
[2026-06-27 23:21:28,889.889 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:21:29,027.027 INFO    ] Initializing speech engine...
[2026-06-27 23:21:29,036.036 INFO    ] 2026-06-27 23:21:29
[2026-06-27 23:21:29,242.242 INFO    ] 2026-06-27 23:21:29
[2026-06-27 23:21:29,270.270 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:21:29,455.455 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:21:29,464.464 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:21:29,597.597 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:21:29,648.648 INFO    ] time= 27/06/2026 23:21:29
[2026-06-27 23:21:29,680.680 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:21:29,704.704 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:21:29,814.814 INFO    ] No existing commands found in stream
[2026-06-27 23:21:34,824.824 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:21:34,827.827 INFO    ] Waiting 1.40 seconds before fallback handling...
[2026-06-27 23:21:36,668.668 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 23:21:36,670.670 INFO    ] Checking for system updates...
[2026-06-27 23:21:36,692.692 INFO    ] 200
[2026-06-27 23:21:36,693.693 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:21:36,726.726 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:21:36,727.727 INFO    ] No update needed
[2026-06-27 23:21:36,728.728 INFO    ] Checking for camera pi updates...
[2026-06-27 23:21:36,749.749 INFO    ] 200
[2026-06-27 23:21:36,750.750 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:21:36,774.774 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:21:36,823.823 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:21:36,825.825 INFO    ] No camera update needed
[2026-06-27 23:21:36,826.826 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:21:36,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:21:36,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:21:36,833.833 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:21:38,871.871 INFO    ] ================================================
[2026-06-27 23:21:38,886.886 INFO    ] Launching Daemon at Sat Jun 27 23:21:38 IST 2026
[2026-06-27 23:21:38,897.897 INFO    ] ================================================
[2026-06-27 23:21:39,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:21:39
[2026-06-27 23:21:39,547.547 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:21:39,691.691 INFO    ] Initializing speech engine...
[2026-06-27 23:21:39,696.696 INFO    ] 2026-06-27 23:21:39
[2026-06-27 23:21:39,904.904 INFO    ] 2026-06-27 23:21:39
[2026-06-27 23:21:39,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:21:40,120.120 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:21:40,129.129 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:21:40,260.260 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:21:40,314.314 INFO    ] time= 27/06/2026 23:21:40
[2026-06-27 23:21:40,352.352 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:21:40,358.358 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:21:40,424.424 INFO    ] No existing commands found in stream
[2026-06-27 23:21:45,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:21:45,437.437 INFO    ] Waiting 3.50 seconds before fallback handling...
[2026-06-27 23:21:49,300.300 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 23:21:49,302.302 INFO    ] Checking for system updates...
[2026-06-27 23:21:49,322.322 INFO    ] 200
[2026-06-27 23:21:49,324.324 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:21:49,355.355 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:21:49,356.356 INFO    ] No update needed
[2026-06-27 23:21:49,357.357 INFO    ] Checking for camera pi updates...
[2026-06-27 23:21:49,379.379 INFO    ] 200
[2026-06-27 23:21:49,380.380 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:21:49,405.405 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:21:49,535.535 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:21:49,537.537 INFO    ] No camera update needed
[2026-06-27 23:21:49,538.538 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:21:49,539.539 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:21:49,542.542 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:21:49,545.545 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:21:51,582.582 INFO    ] ================================================
[2026-06-27 23:21:51,597.597 INFO    ] Launching Daemon at Sat Jun 27 23:21:51 IST 2026
[2026-06-27 23:21:51,608.608 INFO    ] ================================================
[2026-06-27 23:21:51,985.985 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:21:51
[2026-06-27 23:21:52,310.310 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:21:52,440.440 INFO    ] Initializing speech engine...
[2026-06-27 23:21:52,444.444 INFO    ] 2026-06-27 23:21:52
[2026-06-27 23:21:52,659.659 INFO    ] 2026-06-27 23:21:52
[2026-06-27 23:21:52,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:21:52,871.871 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:21:52,881.881 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:21:53,065.065 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:21:53,097.097 INFO    ] time= 27/06/2026 23:21:53
[2026-06-27 23:21:53,099.099 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:21:53,105.105 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:21:53,171.171 INFO    ] No existing commands found in stream
[2026-06-27 23:21:58,186.186 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:21:58,189.189 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-27 23:21:59,369.369 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 23:21:59,370.370 INFO    ] Checking for system updates...
[2026-06-27 23:21:59,392.392 INFO    ] 200
[2026-06-27 23:21:59,394.394 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:21:59,424.424 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:21:59,425.425 INFO    ] No update needed
[2026-06-27 23:21:59,427.427 INFO    ] Checking for camera pi updates...
[2026-06-27 23:21:59,449.449 INFO    ] 200
[2026-06-27 23:21:59,450.450 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:21:59,475.475 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:21:59,525.525 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:21:59,526.526 INFO    ] No camera update needed
[2026-06-27 23:21:59,527.527 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:21:59,528.528 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:21:59,531.531 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:21:59,534.534 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:22:01,567.567 INFO    ] ================================================
[2026-06-27 23:22:01,579.579 INFO    ] Launching Daemon at Sat Jun 27 23:22:01 IST 2026
[2026-06-27 23:22:01,588.588 INFO    ] ================================================
[2026-06-27 23:22:01,987.987 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:22:01
[2026-06-27 23:22:02,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:22:02,538.538 INFO    ] Initializing speech engine...
[2026-06-27 23:22:02,542.542 INFO    ] 2026-06-27 23:22:02
[2026-06-27 23:22:02,756.756 INFO    ] 2026-06-27 23:22:02
[2026-06-27 23:22:02,785.785 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:22:02,971.971 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:22:02,975.975 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:22:03,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:22:03,162.162 INFO    ] time= 27/06/2026 23:22:03
[2026-06-27 23:22:03,205.205 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:22:03,211.211 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:22:03,279.279 INFO    ] No existing commands found in stream
[2026-06-27 23:22:08,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:22:08,292.292 INFO    ] Waiting 1.09 seconds before fallback handling...
[2026-06-27 23:22:09,802.802 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 23:22:09,803.803 INFO    ] Checking for system updates...
[2026-06-27 23:22:09,825.825 INFO    ] 200
[2026-06-27 23:22:09,826.826 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:22:09,858.858 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:22:09,859.859 INFO    ] No update needed
[2026-06-27 23:22:09,861.861 INFO    ] Checking for camera pi updates...
[2026-06-27 23:22:09,880.880 INFO    ] 200
[2026-06-27 23:22:09,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:22:09,905.905 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:22:09,947.947 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:22:09,948.948 INFO    ] No camera update needed
[2026-06-27 23:22:09,949.949 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:22:09,951.951 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:22:09,954.954 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:22:09,956.956 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:22:11,994.994 INFO    ] ================================================
[2026-06-27 23:22:12,009.009 INFO    ] Launching Daemon at Sat Jun 27 23:22:12 IST 2026
[2026-06-27 23:22:12,021.021 INFO    ] ================================================
[2026-06-27 23:22:12,352.352 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:22:12
[2026-06-27 23:22:12,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:22:12,806.806 INFO    ] Initializing speech engine...
[2026-06-27 23:22:12,811.811 INFO    ] 2026-06-27 23:22:12
[2026-06-27 23:22:13,015.015 INFO    ] 2026-06-27 23:22:12
[2026-06-27 23:22:13,045.045 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:22:13,228.228 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:22:13,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:22:13,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:22:13,432.432 INFO    ] time= 27/06/2026 23:22:13
[2026-06-27 23:22:13,456.456 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:22:13,462.462 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:22:13,528.528 INFO    ] No existing commands found in stream
[2026-06-27 23:22:18,537.537 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:22:18,540.540 INFO    ] Waiting 2.88 seconds before fallback handling...
[2026-06-27 23:22:21,854.854 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:22:21,856.856 INFO    ] Checking for system updates...
[2026-06-27 23:22:21,883.883 INFO    ] 200
[2026-06-27 23:22:21,885.885 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:22:21,918.918 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:22:21,919.919 INFO    ] No update needed
[2026-06-27 23:22:21,920.920 INFO    ] Checking for camera pi updates...
[2026-06-27 23:22:21,942.942 INFO    ] 200
[2026-06-27 23:22:21,943.943 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:22:21,967.967 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:22:21,993.993 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:22:21,995.995 INFO    ] No camera update needed
[2026-06-27 23:22:21,996.996 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:22:21,998.998 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:22:22,001.001 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:22:22,003.003 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:22:24,042.042 INFO    ] ================================================
[2026-06-27 23:22:24,057.057 INFO    ] Launching Daemon at Sat Jun 27 23:22:24 IST 2026
[2026-06-27 23:22:24,068.068 INFO    ] ================================================
[2026-06-27 23:22:24,435.435 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:22:24
[2026-06-27 23:22:24,749.749 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:22:24,886.886 INFO    ] Initializing speech engine...
[2026-06-27 23:22:24,895.895 INFO    ] 2026-06-27 23:22:24
[2026-06-27 23:22:25,102.102 INFO    ] 2026-06-27 23:22:25
[2026-06-27 23:22:25,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:22:25,317.317 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:22:25,326.326 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:22:25,455.455 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:22:25,519.519 INFO    ] time= 27/06/2026 23:22:25
[2026-06-27 23:22:25,547.547 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:22:25,553.553 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:22:25,644.644 INFO    ] No existing commands found in stream
[2026-06-27 23:22:30,652.652 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:22:30,657.657 INFO    ] Waiting 0.20 seconds before fallback handling...
[2026-06-27 23:22:31,229.229 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 23:22:31,230.230 INFO    ] Checking for system updates...
[2026-06-27 23:22:31,253.253 INFO    ] 200
[2026-06-27 23:22:31,255.255 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:22:31,292.292 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:22:31,295.295 INFO    ] No update needed
[2026-06-27 23:22:31,297.297 INFO    ] Checking for camera pi updates...
[2026-06-27 23:22:31,325.325 INFO    ] 200
[2026-06-27 23:22:31,327.327 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:22:31,359.359 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:22:31,399.399 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:22:31,400.400 INFO    ] No camera update needed
[2026-06-27 23:22:31,402.402 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:22:31,404.404 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:22:31,408.408 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:22:31,412.412 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:22:33,445.445 INFO    ] ================================================
[2026-06-27 23:22:33,460.460 INFO    ] Launching Daemon at Sat Jun 27 23:22:33 IST 2026
[2026-06-27 23:22:33,472.472 INFO    ] ================================================
[2026-06-27 23:22:33,867.867 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:22:33
[2026-06-27 23:22:34,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:22:34,365.365 INFO    ] Initializing speech engine...
[2026-06-27 23:22:34,370.370 INFO    ] 2026-06-27 23:22:34
[2026-06-27 23:22:34,582.582 INFO    ] 2026-06-27 23:22:34
[2026-06-27 23:22:34,612.612 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:22:34,801.801 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:22:34,812.812 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:22:35,010.010 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:22:35,033.033 INFO    ] time= 27/06/2026 23:22:35
[2026-06-27 23:22:35,038.038 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:22:35,040.040 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:22:35,109.109 INFO    ] No existing commands found in stream
[2026-06-27 23:22:40,123.123 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:22:40,127.127 INFO    ] Waiting 2.30 seconds before fallback handling...
[2026-06-27 23:22:42,855.855 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:22:42,856.856 INFO    ] Checking for system updates...
[2026-06-27 23:22:42,879.879 INFO    ] 200
[2026-06-27 23:22:42,880.880 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:22:42,913.913 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:22:42,915.915 INFO    ] No update needed
[2026-06-27 23:22:42,916.916 INFO    ] Checking for camera pi updates...
[2026-06-27 23:22:42,939.939 INFO    ] 200
[2026-06-27 23:22:42,940.940 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:22:42,964.964 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:22:43,005.005 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:22:43,007.007 INFO    ] No camera update needed
[2026-06-27 23:22:43,008.008 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:22:43,009.009 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:22:43,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:22:43,015.015 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:22:45,046.046 INFO    ] ================================================
[2026-06-27 23:22:45,062.062 INFO    ] Launching Daemon at Sat Jun 27 23:22:45 IST 2026
[2026-06-27 23:22:45,073.073 INFO    ] ================================================
[2026-06-27 23:22:45,415.415 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:22:45
[2026-06-27 23:22:45,734.734 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:22:45,874.874 INFO    ] Initializing speech engine...
[2026-06-27 23:22:45,888.888 INFO    ] 2026-06-27 23:22:45
[2026-06-27 23:22:46,110.110 INFO    ] 2026-06-27 23:22:46
[2026-06-27 23:22:46,141.141 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:22:46,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:22:46,375.375 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:22:46,496.496 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:22:46,550.550 INFO    ] time= 27/06/2026 23:22:46
[2026-06-27 23:22:46,591.591 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:22:46,593.593 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:22:46,664.664 INFO    ] No existing commands found in stream
[2026-06-27 23:22:51,674.674 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:22:51,676.676 INFO    ] Waiting 0.50 seconds before fallback handling...
[2026-06-27 23:22:52,588.588 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:22:52,590.590 INFO    ] Checking for system updates...
[2026-06-27 23:22:52,611.611 INFO    ] 200
[2026-06-27 23:22:52,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:22:52,644.644 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:22:52,646.646 INFO    ] No update needed
[2026-06-27 23:22:52,647.647 INFO    ] Checking for camera pi updates...
[2026-06-27 23:22:52,669.669 INFO    ] 200
[2026-06-27 23:22:52,670.670 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:22:52,694.694 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:22:52,746.746 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:22:52,747.747 INFO    ] No camera update needed
[2026-06-27 23:22:52,748.748 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:22:52,749.749 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:22:52,752.752 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:22:52,755.755 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:22:54,794.794 INFO    ] ================================================
[2026-06-27 23:22:54,810.810 INFO    ] Launching Daemon at Sat Jun 27 23:22:54 IST 2026
[2026-06-27 23:22:54,822.822 INFO    ] ================================================
[2026-06-27 23:22:55,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:22:55
[2026-06-27 23:22:55,484.484 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:22:55,639.639 INFO    ] Initializing speech engine...
[2026-06-27 23:22:55,645.645 INFO    ] 2026-06-27 23:22:55
[2026-06-27 23:22:55,853.853 INFO    ] 2026-06-27 23:22:55
[2026-06-27 23:22:55,882.882 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:22:56,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:22:56,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:22:56,210.210 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:22:56,279.279 INFO    ] time= 27/06/2026 23:22:56
[2026-06-27 23:22:56,303.303 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:22:56,309.309 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:22:56,377.377 INFO    ] No existing commands found in stream
[2026-06-27 23:23:01,391.391 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:23:01,394.394 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-27 23:23:04,482.482 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:23:04,484.484 INFO    ] Checking for system updates...
[2026-06-27 23:23:04,505.505 INFO    ] 200
[2026-06-27 23:23:04,506.506 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:23:04,537.537 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:23:04,538.538 INFO    ] No update needed
[2026-06-27 23:23:04,539.539 INFO    ] Checking for camera pi updates...
[2026-06-27 23:23:04,561.561 INFO    ] 200
[2026-06-27 23:23:04,562.562 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:23:04,589.589 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:23:04,631.631 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:23:04,632.632 INFO    ] No camera update needed
[2026-06-27 23:23:04,634.634 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:23:04,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:23:04,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:23:04,641.641 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:23:06,686.686 INFO    ] ================================================
[2026-06-27 23:23:06,702.702 INFO    ] Launching Daemon at Sat Jun 27 23:23:06 IST 2026
[2026-06-27 23:23:06,713.713 INFO    ] ================================================
[2026-06-27 23:23:07,048.048 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:23:07
[2026-06-27 23:23:07,363.363 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:23:07,496.496 INFO    ] Initializing speech engine...
[2026-06-27 23:23:07,508.508 INFO    ] 2026-06-27 23:23:07
[2026-06-27 23:23:07,721.721 INFO    ] 2026-06-27 23:23:07
[2026-06-27 23:23:07,749.749 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:23:07,873.873 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:23:07,931.931 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:23:08,077.077 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:23:08,135.135 INFO    ] time= 27/06/2026 23:23:08
[2026-06-27 23:23:08,159.159 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:23:08,175.175 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:23:08,247.247 INFO    ] No existing commands found in stream
[2026-06-27 23:23:13,272.272 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:23:13,275.275 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-27 23:23:14,717.717 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 23:23:14,719.719 INFO    ] Checking for system updates...
[2026-06-27 23:23:14,741.741 INFO    ] 200
[2026-06-27 23:23:14,743.743 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:23:14,775.775 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:23:14,776.776 INFO    ] No update needed
[2026-06-27 23:23:14,777.777 INFO    ] Checking for camera pi updates...
[2026-06-27 23:23:14,797.797 INFO    ] 200
[2026-06-27 23:23:14,798.798 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:23:14,821.821 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:23:14,866.866 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:23:14,868.868 INFO    ] No camera update needed
[2026-06-27 23:23:14,869.869 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:23:14,870.870 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:23:14,873.873 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:23:14,876.876 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:23:16,915.915 INFO    ] ================================================
[2026-06-27 23:23:16,930.930 INFO    ] Launching Daemon at Sat Jun 27 23:23:16 IST 2026
[2026-06-27 23:23:16,942.942 INFO    ] ================================================
[2026-06-27 23:23:17,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:23:17
[2026-06-27 23:23:17,682.682 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:23:17,833.833 INFO    ] Initializing speech engine...
[2026-06-27 23:23:17,837.837 INFO    ] 2026-06-27 23:23:17
[2026-06-27 23:23:18,044.044 INFO    ] 2026-06-27 23:23:18
[2026-06-27 23:23:18,073.073 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:23:18,255.255 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:23:18,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:23:18,397.397 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:23:18,464.464 INFO    ] time= 27/06/2026 23:23:18
[2026-06-27 23:23:18,487.487 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:23:18,494.494 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:23:18,560.560 INFO    ] No existing commands found in stream
[2026-06-27 23:23:23,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:23:23,588.588 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-27 23:23:24,556.556 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 23:23:24,558.558 INFO    ] Checking for system updates...
[2026-06-27 23:23:24,578.578 INFO    ] 200
[2026-06-27 23:23:24,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:23:24,614.614 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:23:24,615.615 INFO    ] No update needed
[2026-06-27 23:23:24,617.617 INFO    ] Checking for camera pi updates...
[2026-06-27 23:23:24,636.636 INFO    ] 200
[2026-06-27 23:23:24,637.637 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:23:24,661.661 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:23:24,704.704 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:23:24,705.705 INFO    ] No camera update needed
[2026-06-27 23:23:24,706.706 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:23:24,708.708 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:23:24,710.710 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:23:24,713.713 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:23:26,751.751 INFO    ] ================================================
[2026-06-27 23:23:26,767.767 INFO    ] Launching Daemon at Sat Jun 27 23:23:26 IST 2026
[2026-06-27 23:23:26,778.778 INFO    ] ================================================
[2026-06-27 23:23:27,148.148 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:23:27
[2026-06-27 23:23:27,485.485 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:23:27,637.637 INFO    ] Initializing speech engine...
[2026-06-27 23:23:27,641.641 INFO    ] 2026-06-27 23:23:27
[2026-06-27 23:23:27,846.846 INFO    ] 2026-06-27 23:23:27
[2026-06-27 23:23:27,877.877 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:23:28,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:23:28,063.063 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:23:28,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:23:28,268.268 INFO    ] time= 27/06/2026 23:23:28
[2026-06-27 23:23:28,292.292 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:23:28,298.298 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:23:28,366.366 INFO    ] No existing commands found in stream
[2026-06-27 23:23:33,399.399 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:23:33,402.402 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-27 23:23:34,709.709 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:23:34,711.711 INFO    ] Checking for system updates...
[2026-06-27 23:23:34,732.732 INFO    ] 200
[2026-06-27 23:23:34,733.733 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:23:34,764.764 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:23:34,766.766 INFO    ] No update needed
[2026-06-27 23:23:34,767.767 INFO    ] Checking for camera pi updates...
[2026-06-27 23:23:34,787.787 INFO    ] 200
[2026-06-27 23:23:34,788.788 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:23:34,813.813 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:23:34,859.859 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:23:34,862.862 INFO    ] No camera update needed
[2026-06-27 23:23:34,865.865 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:23:34,867.867 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:23:34,874.874 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:23:34,879.879 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:23:36,920.920 INFO    ] ================================================
[2026-06-27 23:23:36,935.935 INFO    ] Launching Daemon at Sat Jun 27 23:23:36 IST 2026
[2026-06-27 23:23:36,945.945 INFO    ] ================================================
[2026-06-27 23:23:37,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:23:37
[2026-06-27 23:23:37,635.635 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:23:37,772.772 INFO    ] Initializing speech engine...
[2026-06-27 23:23:37,786.786 INFO    ] 2026-06-27 23:23:37
[2026-06-27 23:23:37,998.998 INFO    ] 2026-06-27 23:23:37
[2026-06-27 23:23:38,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:23:38,211.211 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:23:38,220.220 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:23:38,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:23:38,417.417 INFO    ] time= 27/06/2026 23:23:38
[2026-06-27 23:23:38,440.440 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:23:38,446.446 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:23:38,513.513 INFO    ] No existing commands found in stream
[2026-06-27 23:23:43,523.523 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:23:43,526.526 INFO    ] Waiting 0.88 seconds before fallback handling...
[2026-06-27 23:23:46,728.728 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 23:23:46,730.730 INFO    ] Checking for system updates...
[2026-06-27 23:23:46,752.752 INFO    ] 200
[2026-06-27 23:23:46,753.753 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:23:46,785.785 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:23:46,786.786 INFO    ] No update needed
[2026-06-27 23:23:46,788.788 INFO    ] Checking for camera pi updates...
[2026-06-27 23:23:46,807.807 INFO    ] 200
[2026-06-27 23:23:46,808.808 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:23:46,833.833 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:23:46,885.885 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:23:46,886.886 INFO    ] No camera update needed
[2026-06-27 23:23:46,888.888 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:23:46,889.889 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:23:46,892.892 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:23:46,895.895 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:23:48,934.934 INFO    ] ================================================
[2026-06-27 23:23:48,949.949 INFO    ] Launching Daemon at Sat Jun 27 23:23:48 IST 2026
[2026-06-27 23:23:48,960.960 INFO    ] ================================================
[2026-06-27 23:23:49,301.301 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:23:49
[2026-06-27 23:23:49,620.620 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:23:49,769.769 INFO    ] Initializing speech engine...
[2026-06-27 23:23:49,775.775 INFO    ] 2026-06-27 23:23:49
[2026-06-27 23:23:49,982.982 INFO    ] 2026-06-27 23:23:49
[2026-06-27 23:23:50,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:23:50,196.196 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:23:50,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:23:50,381.381 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:23:50,424.424 INFO    ] time= 27/06/2026 23:23:50
[2026-06-27 23:23:50,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:23:50,432.432 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:23:50,499.499 INFO    ] No existing commands found in stream
[2026-06-27 23:23:55,513.513 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:23:55,516.516 INFO    ] Waiting 0.65 seconds before fallback handling...
[2026-06-27 23:23:56,636.636 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 23:23:56,638.638 INFO    ] Checking for system updates...
[2026-06-27 23:23:56,660.660 INFO    ] 200
[2026-06-27 23:23:56,662.662 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:23:56,696.696 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:23:56,697.697 INFO    ] No update needed
[2026-06-27 23:23:56,698.698 INFO    ] Checking for camera pi updates...
[2026-06-27 23:23:56,718.718 INFO    ] 200
[2026-06-27 23:23:56,720.720 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:23:56,743.743 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:23:56,882.882 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:23:56,884.884 INFO    ] No camera update needed
[2026-06-27 23:23:56,885.885 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:23:56,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:23:56,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:23:56,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:23:58,934.934 INFO    ] ================================================
[2026-06-27 23:23:58,949.949 INFO    ] Launching Daemon at Sat Jun 27 23:23:58 IST 2026
[2026-06-27 23:23:58,960.960 INFO    ] ================================================
[2026-06-27 23:23:59,310.310 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:23:59
[2026-06-27 23:23:59,621.621 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:23:59,764.764 INFO    ] Initializing speech engine...
[2026-06-27 23:23:59,769.769 INFO    ] 2026-06-27 23:23:59
[2026-06-27 23:23:59,973.973 INFO    ] 2026-06-27 23:23:59
[2026-06-27 23:24:00,003.003 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:24:00,190.190 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:24:00,199.199 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:24:00,331.331 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:24:00,396.396 INFO    ] time= 27/06/2026 23:24:00
[2026-06-27 23:24:00,424.424 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:24:00,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:24:00,498.498 INFO    ] No existing commands found in stream
[2026-06-27 23:24:05,507.507 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:24:05,510.510 INFO    ] Waiting 1.69 seconds before fallback handling...
[2026-06-27 23:24:07,677.677 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 23:24:07,678.678 INFO    ] Checking for system updates...
[2026-06-27 23:24:07,699.699 INFO    ] 200
[2026-06-27 23:24:07,700.700 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:24:07,732.732 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:24:07,734.734 INFO    ] No update needed
[2026-06-27 23:24:07,735.735 INFO    ] Checking for camera pi updates...
[2026-06-27 23:24:07,755.755 INFO    ] 200
[2026-06-27 23:24:07,756.756 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:24:07,781.781 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:24:07,827.827 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:24:07,828.828 INFO    ] No camera update needed
[2026-06-27 23:24:07,829.829 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:24:07,831.831 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:24:07,834.834 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:24:07,837.837 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:24:09,876.876 INFO    ] ================================================
[2026-06-27 23:24:09,891.891 INFO    ] Launching Daemon at Sat Jun 27 23:24:09 IST 2026
[2026-06-27 23:24:09,901.901 INFO    ] ================================================
[2026-06-27 23:24:10,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:24:10
[2026-06-27 23:24:10,551.551 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:24:10,694.694 INFO    ] Initializing speech engine...
[2026-06-27 23:24:10,699.699 INFO    ] 2026-06-27 23:24:10
[2026-06-27 23:24:10,903.903 INFO    ] 2026-06-27 23:24:10
[2026-06-27 23:24:10,931.931 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:24:11,116.116 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:24:11,125.125 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:24:11,278.278 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:24:11,322.322 INFO    ] time= 27/06/2026 23:24:11
[2026-06-27 23:24:11,344.344 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:24:11,350.350 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:24:11,417.417 INFO    ] No existing commands found in stream
[2026-06-27 23:24:16,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:24:16,429.429 INFO    ] Waiting 3.08 seconds before fallback handling...
[2026-06-27 23:24:19,894.894 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 23:24:19,895.895 INFO    ] Checking for system updates...
[2026-06-27 23:24:19,917.917 INFO    ] 200
[2026-06-27 23:24:19,918.918 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:24:19,949.949 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:24:19,951.951 INFO    ] No update needed
[2026-06-27 23:24:19,952.952 INFO    ] Checking for camera pi updates...
[2026-06-27 23:24:19,974.974 INFO    ] 200
[2026-06-27 23:24:19,976.976 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:24:20,001.001 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:24:20,046.046 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:24:20,047.047 INFO    ] No camera update needed
[2026-06-27 23:24:20,048.048 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:24:20,050.050 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:24:20,053.053 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:24:20,056.056 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:24:22,097.097 INFO    ] ================================================
[2026-06-27 23:24:22,112.112 INFO    ] Launching Daemon at Sat Jun 27 23:24:22 IST 2026
[2026-06-27 23:24:22,123.123 INFO    ] ================================================
[2026-06-27 23:24:22,453.453 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:24:22
[2026-06-27 23:24:22,767.767 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:24:22,909.909 INFO    ] Initializing speech engine...
[2026-06-27 23:24:22,914.914 INFO    ] 2026-06-27 23:24:22
[2026-06-27 23:24:23,118.118 INFO    ] 2026-06-27 23:24:23
[2026-06-27 23:24:23,145.145 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:24:23,330.330 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:24:23,338.338 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:24:23,467.467 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:24:23,535.535 INFO    ] time= 27/06/2026 23:24:23
[2026-06-27 23:24:23,559.559 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:24:23,565.565 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:24:23,632.632 INFO    ] No existing commands found in stream
[2026-06-27 23:24:28,646.646 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:24:28,649.649 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-27 23:24:29,356.356 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 23:24:29,358.358 INFO    ] Checking for system updates...
[2026-06-27 23:24:29,378.378 INFO    ] 200
[2026-06-27 23:24:29,380.380 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:24:29,413.413 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:24:29,415.415 INFO    ] No update needed
[2026-06-27 23:24:29,416.416 INFO    ] Checking for camera pi updates...
[2026-06-27 23:24:29,438.438 INFO    ] 200
[2026-06-27 23:24:29,439.439 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:24:29,464.464 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:24:29,509.509 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:24:29,510.510 INFO    ] No camera update needed
[2026-06-27 23:24:29,511.511 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:24:29,513.513 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:24:29,516.516 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:24:29,519.519 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:24:31,558.558 INFO    ] ================================================
[2026-06-27 23:24:31,574.574 INFO    ] Launching Daemon at Sat Jun 27 23:24:31 IST 2026
[2026-06-27 23:24:31,585.585 INFO    ] ================================================
[2026-06-27 23:24:31,945.945 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:24:31
[2026-06-27 23:24:32,289.289 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:24:32,438.438 INFO    ] Initializing speech engine...
[2026-06-27 23:24:32,451.451 INFO    ] 2026-06-27 23:24:32
[2026-06-27 23:24:32,667.667 INFO    ] 2026-06-27 23:24:32
[2026-06-27 23:24:32,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:24:32,884.884 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:24:32,893.893 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:24:33,018.018 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:24:33,074.074 INFO    ] time= 27/06/2026 23:24:33
[2026-06-27 23:24:33,115.115 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:24:33,120.120 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:24:33,192.192 INFO    ] No existing commands found in stream
[2026-06-27 23:24:38,201.201 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:24:38,205.205 INFO    ] Waiting 0.06 seconds before fallback handling...
[2026-06-27 23:24:38,628.628 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:24:38,630.630 INFO    ] Checking for system updates...
[2026-06-27 23:24:38,651.651 INFO    ] 200
[2026-06-27 23:24:38,652.652 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:24:38,683.683 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:24:38,685.685 INFO    ] No update needed
[2026-06-27 23:24:38,686.686 INFO    ] Checking for camera pi updates...
[2026-06-27 23:24:38,707.707 INFO    ] 200
[2026-06-27 23:24:38,709.709 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:24:38,735.735 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:24:38,777.777 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:24:38,779.779 INFO    ] No camera update needed
[2026-06-27 23:24:38,780.780 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:24:38,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:24:38,785.785 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:24:38,788.788 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:24:40,826.826 INFO    ] ================================================
[2026-06-27 23:24:40,842.842 INFO    ] Launching Daemon at Sat Jun 27 23:24:40 IST 2026
[2026-06-27 23:24:40,852.852 INFO    ] ================================================
[2026-06-27 23:24:41,228.228 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:24:41
[2026-06-27 23:24:41,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:24:41,723.723 INFO    ] Initializing speech engine...
[2026-06-27 23:24:41,728.728 INFO    ] 2026-06-27 23:24:41
[2026-06-27 23:24:41,936.936 INFO    ] 2026-06-27 23:24:41
[2026-06-27 23:24:41,965.965 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:24:42,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:24:42,160.160 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:24:42,308.308 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:24:42,356.356 INFO    ] time= 27/06/2026 23:24:42
[2026-06-27 23:24:42,379.379 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:24:42,384.384 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:24:42,451.451 INFO    ] No existing commands found in stream
[2026-06-27 23:24:47,466.466 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:24:47,470.470 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-27 23:24:48,412.412 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 23:24:48,414.414 INFO    ] Checking for system updates...
[2026-06-27 23:24:48,436.436 INFO    ] 200
[2026-06-27 23:24:48,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:24:48,470.470 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:24:48,472.472 INFO    ] No update needed
[2026-06-27 23:24:48,473.473 INFO    ] Checking for camera pi updates...
[2026-06-27 23:24:48,494.494 INFO    ] 200
[2026-06-27 23:24:48,496.496 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:24:48,519.519 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:24:48,562.562 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:24:48,564.564 INFO    ] No camera update needed
[2026-06-27 23:24:48,565.565 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:24:48,567.567 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:24:48,570.570 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:24:48,573.573 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:24:50,612.612 INFO    ] ================================================
[2026-06-27 23:24:50,627.627 INFO    ] Launching Daemon at Sat Jun 27 23:24:50 IST 2026
[2026-06-27 23:24:50,638.638 INFO    ] ================================================
[2026-06-27 23:24:51,009.009 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:24:50
[2026-06-27 23:24:51,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:24:51,467.467 INFO    ] Initializing speech engine...
[2026-06-27 23:24:51,478.478 INFO    ] 2026-06-27 23:24:51
[2026-06-27 23:24:51,684.684 INFO    ] 2026-06-27 23:24:51
[2026-06-27 23:24:51,702.702 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:24:51,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:24:51,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:24:52,072.072 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:24:52,116.116 INFO    ] time= 27/06/2026 23:24:52
[2026-06-27 23:24:52,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:24:52,143.143 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:24:52,210.210 INFO    ] No existing commands found in stream
[2026-06-27 23:24:57,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:24:57,227.227 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-27 23:24:58,289.289 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 23:24:58,291.291 INFO    ] Checking for system updates...
[2026-06-27 23:24:58,313.313 INFO    ] 200
[2026-06-27 23:24:58,315.315 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:24:58,348.348 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:24:58,349.349 INFO    ] No update needed
[2026-06-27 23:24:58,351.351 INFO    ] Checking for camera pi updates...
[2026-06-27 23:24:58,372.372 INFO    ] 200
[2026-06-27 23:24:58,374.374 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:24:58,397.397 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:24:58,456.456 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:24:58,457.457 INFO    ] No camera update needed
[2026-06-27 23:24:58,458.458 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:24:58,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:24:58,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:24:58,465.465 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:25:00,505.505 INFO    ] ================================================
[2026-06-27 23:25:00,519.519 INFO    ] Launching Daemon at Sat Jun 27 23:25:00 IST 2026
[2026-06-27 23:25:00,530.530 INFO    ] ================================================
[2026-06-27 23:25:00,890.890 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:25:00
[2026-06-27 23:25:01,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:25:01,353.353 INFO    ] Initializing speech engine...
[2026-06-27 23:25:01,358.358 INFO    ] 2026-06-27 23:25:01
[2026-06-27 23:25:01,563.563 INFO    ] 2026-06-27 23:25:01
[2026-06-27 23:25:01,591.591 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:25:01,780.780 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:25:01,790.790 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:25:01,964.964 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:25:01,990.990 INFO    ] time= 27/06/2026 23:25:01
[2026-06-27 23:25:02,033.033 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:25:02,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:25:02,195.195 INFO    ] No existing commands found in stream
[2026-06-27 23:25:07,205.205 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:25:07,208.208 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-27 23:25:08,237.237 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 23:25:08,239.239 INFO    ] Checking for system updates...
[2026-06-27 23:25:08,259.259 INFO    ] 200
[2026-06-27 23:25:08,261.261 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:25:08,291.291 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:25:08,292.292 INFO    ] No update needed
[2026-06-27 23:25:08,294.294 INFO    ] Checking for camera pi updates...
[2026-06-27 23:25:08,314.314 INFO    ] 200
[2026-06-27 23:25:08,315.315 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:25:08,338.338 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:25:08,395.395 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:25:08,396.396 INFO    ] No camera update needed
[2026-06-27 23:25:08,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:25:08,399.399 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:25:08,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:25:08,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:25:10,444.444 INFO    ] ================================================
[2026-06-27 23:25:10,459.459 INFO    ] Launching Daemon at Sat Jun 27 23:25:10 IST 2026
[2026-06-27 23:25:10,469.469 INFO    ] ================================================
[2026-06-27 23:25:10,832.832 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:25:10
[2026-06-27 23:25:11,146.146 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:25:11,288.288 INFO    ] Initializing speech engine...
[2026-06-27 23:25:11,293.293 INFO    ] 2026-06-27 23:25:11
[2026-06-27 23:25:11,509.509 INFO    ] 2026-06-27 23:25:11
[2026-06-27 23:25:11,540.540 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:25:11,686.686 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:25:11,744.744 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:25:11,894.894 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:25:11,947.947 INFO    ] time= 27/06/2026 23:25:11
[2026-06-27 23:25:11,994.994 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:25:12,000.000 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:25:12,076.076 INFO    ] No existing commands found in stream
[2026-06-27 23:25:17,087.087 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:25:17,090.090 INFO    ] Waiting 0.79 seconds before fallback handling...
[2026-06-27 23:25:18,264.264 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 23:25:18,266.266 INFO    ] Checking for system updates...
[2026-06-27 23:25:18,288.288 INFO    ] 200
[2026-06-27 23:25:18,290.290 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:25:18,354.354 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:25:18,355.355 INFO    ] No update needed
[2026-06-27 23:25:18,356.356 INFO    ] Checking for camera pi updates...
[2026-06-27 23:25:18,378.378 INFO    ] 200
[2026-06-27 23:25:18,379.379 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:25:18,402.402 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:25:18,455.455 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:25:18,456.456 INFO    ] No camera update needed
[2026-06-27 23:25:18,457.457 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:25:18,459.459 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:25:18,462.462 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:25:18,464.464 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:25:20,505.505 INFO    ] ================================================
[2026-06-27 23:25:20,520.520 INFO    ] Launching Daemon at Sat Jun 27 23:25:20 IST 2026
[2026-06-27 23:25:20,530.530 INFO    ] ================================================
[2026-06-27 23:25:20,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:25:20
[2026-06-27 23:25:21,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:25:21,351.351 INFO    ] Initializing speech engine...
[2026-06-27 23:25:21,356.356 INFO    ] 2026-06-27 23:25:21
[2026-06-27 23:25:21,563.563 INFO    ] 2026-06-27 23:25:21
[2026-06-27 23:25:21,592.592 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:25:21,775.775 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:25:21,784.784 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:25:21,980.980 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:25:22,026.026 INFO    ] time= 27/06/2026 23:25:21
[2026-06-27 23:25:22,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:25:22,039.039 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:25:22,110.110 INFO    ] No existing commands found in stream
[2026-06-27 23:25:27,121.121 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:25:27,124.124 INFO    ] Waiting 1.79 seconds before fallback handling...
[2026-06-27 23:25:29,284.284 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 23:25:29,285.285 INFO    ] Checking for system updates...
[2026-06-27 23:25:29,306.306 INFO    ] 200
[2026-06-27 23:25:29,308.308 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:25:29,338.338 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:25:29,340.340 INFO    ] No update needed
[2026-06-27 23:25:29,341.341 INFO    ] Checking for camera pi updates...
[2026-06-27 23:25:29,360.360 INFO    ] 200
[2026-06-27 23:25:29,362.362 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:25:29,387.387 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:25:29,428.428 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:25:29,430.430 INFO    ] No camera update needed
[2026-06-27 23:25:29,431.431 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:25:29,432.432 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:25:29,435.435 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:25:29,438.438 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:25:31,477.477 INFO    ] ================================================
[2026-06-27 23:25:31,493.493 INFO    ] Launching Daemon at Sat Jun 27 23:25:31 IST 2026
[2026-06-27 23:25:31,504.504 INFO    ] ================================================
[2026-06-27 23:25:31,870.870 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:25:31
[2026-06-27 23:25:32,242.242 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:25:32,420.420 INFO    ] Initializing speech engine...
[2026-06-27 23:25:32,425.425 INFO    ] 2026-06-27 23:25:32
[2026-06-27 23:25:32,656.656 INFO    ] 2026-06-27 23:25:32
[2026-06-27 23:25:32,689.689 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:25:32,847.847 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:25:32,849.849 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:25:32,957.957 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:25:32,958.958 INFO    ] time= 27/06/2026 23:25:32
[2026-06-27 23:25:32,960.960 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:25:32,961.961 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:25:33,028.028 INFO    ] No existing commands found in stream
[2026-06-27 23:25:38,038.038 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:25:38,041.041 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-27 23:25:39,627.627 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 23:25:39,629.629 INFO    ] Checking for system updates...
[2026-06-27 23:25:39,650.650 INFO    ] 200
[2026-06-27 23:25:39,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:25:39,682.682 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:25:39,683.683 INFO    ] No update needed
[2026-06-27 23:25:39,685.685 INFO    ] Checking for camera pi updates...
[2026-06-27 23:25:39,704.704 INFO    ] 200
[2026-06-27 23:25:39,706.706 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:25:39,729.729 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:25:39,771.771 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:25:39,773.773 INFO    ] No camera update needed
[2026-06-27 23:25:39,774.774 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:25:39,775.775 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:25:39,778.778 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:25:39,781.781 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:25:41,820.820 INFO    ] ================================================
[2026-06-27 23:25:41,836.836 INFO    ] Launching Daemon at Sat Jun 27 23:25:41 IST 2026
[2026-06-27 23:25:41,848.848 INFO    ] ================================================
[2026-06-27 23:25:42,197.197 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:25:42
[2026-06-27 23:25:42,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:25:42,643.643 INFO    ] Initializing speech engine...
[2026-06-27 23:25:42,655.655 INFO    ] 2026-06-27 23:25:42
[2026-06-27 23:25:42,865.865 INFO    ] 2026-06-27 23:25:42
[2026-06-27 23:25:42,895.895 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:25:43,029.029 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:25:43,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:25:43,219.219 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:25:43,281.281 INFO    ] time= 27/06/2026 23:25:43
[2026-06-27 23:25:43,315.315 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:25:43,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:25:43,386.386 INFO    ] No existing commands found in stream
[2026-06-27 23:25:48,397.397 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:25:48,400.400 INFO    ] Waiting 1.56 seconds before fallback handling...
[2026-06-27 23:25:50,338.338 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:25:50,340.340 INFO    ] Checking for system updates...
[2026-06-27 23:25:50,362.362 INFO    ] 200
[2026-06-27 23:25:50,363.363 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:25:50,396.396 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:25:50,398.398 INFO    ] No update needed
[2026-06-27 23:25:50,399.399 INFO    ] Checking for camera pi updates...
[2026-06-27 23:25:50,418.418 INFO    ] 200
[2026-06-27 23:25:50,420.420 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:25:50,443.443 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:25:50,489.489 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:25:50,490.490 INFO    ] No camera update needed
[2026-06-27 23:25:50,491.491 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:25:50,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:25:50,496.496 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:25:50,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:25:52,540.540 INFO    ] ================================================
[2026-06-27 23:25:52,556.556 INFO    ] Launching Daemon at Sat Jun 27 23:25:52 IST 2026
[2026-06-27 23:25:52,567.567 INFO    ] ================================================
[2026-06-27 23:25:52,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:25:52
[2026-06-27 23:25:53,235.235 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:25:53,379.379 INFO    ] Initializing speech engine...
[2026-06-27 23:25:53,385.385 INFO    ] 2026-06-27 23:25:53
[2026-06-27 23:25:53,590.590 INFO    ] 2026-06-27 23:25:53
[2026-06-27 23:25:53,619.619 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:25:53,744.744 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:25:53,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:25:53,949.949 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:25:54,018.018 INFO    ] time= 27/06/2026 23:25:53
[2026-06-27 23:25:54,043.043 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:25:54,049.049 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:25:54,116.116 INFO    ] No existing commands found in stream
[2026-06-27 23:25:59,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:25:59,128.128 INFO    ] Waiting 1.08 seconds before fallback handling...
[2026-06-27 23:26:00,616.616 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:26:00,618.618 INFO    ] Checking for system updates...
[2026-06-27 23:26:00,639.639 INFO    ] 200
[2026-06-27 23:26:00,640.640 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:26:00,670.670 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:26:00,672.672 INFO    ] No update needed
[2026-06-27 23:26:00,673.673 INFO    ] Checking for camera pi updates...
[2026-06-27 23:26:00,694.694 INFO    ] 200
[2026-06-27 23:26:00,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:26:00,720.720 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:26:00,859.859 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:26:00,861.861 INFO    ] No camera update needed
[2026-06-27 23:26:00,862.862 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:26:00,863.863 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:26:00,866.866 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:26:00,869.869 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:26:02,894.894 INFO    ] ================================================
[2026-06-27 23:26:02,902.902 INFO    ] Launching Daemon at Sat Jun 27 23:26:02 IST 2026
[2026-06-27 23:26:02,908.908 INFO    ] ================================================
[2026-06-27 23:26:03,266.266 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:26:03
[2026-06-27 23:26:03,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:26:03,717.717 INFO    ] Initializing speech engine...
[2026-06-27 23:26:03,722.722 INFO    ] 2026-06-27 23:26:03
[2026-06-27 23:26:03,941.941 INFO    ] 2026-06-27 23:26:03
[2026-06-27 23:26:03,969.969 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:26:04,093.093 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:26:04,155.155 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:26:04,294.294 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:26:04,358.358 INFO    ] time= 27/06/2026 23:26:04
[2026-06-27 23:26:04,386.386 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:26:04,392.392 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:26:04,483.483 INFO    ] No existing commands found in stream
[2026-06-27 23:26:09,492.492 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:26:09,495.495 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-27 23:26:10,614.614 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 23:26:10,616.616 INFO    ] Checking for system updates...
[2026-06-27 23:26:10,636.636 INFO    ] 200
[2026-06-27 23:26:10,638.638 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:26:10,671.671 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:26:10,672.672 INFO    ] No update needed
[2026-06-27 23:26:10,674.674 INFO    ] Checking for camera pi updates...
[2026-06-27 23:26:10,695.695 INFO    ] 200
[2026-06-27 23:26:10,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:26:10,721.721 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:26:10,769.769 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:26:10,770.770 INFO    ] No camera update needed
[2026-06-27 23:26:10,772.772 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:26:10,773.773 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:26:10,776.776 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:26:10,779.779 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:26:12,819.819 INFO    ] ================================================
[2026-06-27 23:26:12,835.835 INFO    ] Launching Daemon at Sat Jun 27 23:26:12 IST 2026
[2026-06-27 23:26:12,846.846 INFO    ] ================================================
[2026-06-27 23:26:13,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:26:13
[2026-06-27 23:26:13,577.577 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:26:13,730.730 INFO    ] Initializing speech engine...
[2026-06-27 23:26:13,735.735 INFO    ] 2026-06-27 23:26:13
[2026-06-27 23:26:13,947.947 INFO    ] 2026-06-27 23:26:13
[2026-06-27 23:26:13,977.977 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:26:14,106.106 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:26:14,166.166 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:26:14,311.311 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:26:14,375.375 INFO    ] time= 27/06/2026 23:26:14
[2026-06-27 23:26:14,398.398 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:26:14,405.405 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:26:14,472.472 INFO    ] No existing commands found in stream
[2026-06-27 23:26:19,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:26:19,490.490 INFO    ] Waiting 3.17 seconds before fallback handling...
[2026-06-27 23:26:23,062.062 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 23:26:23,063.063 INFO    ] Checking for system updates...
[2026-06-27 23:26:23,086.086 INFO    ] 200
[2026-06-27 23:26:23,088.088 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:26:23,119.119 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:26:23,121.121 INFO    ] No update needed
[2026-06-27 23:26:23,122.122 INFO    ] Checking for camera pi updates...
[2026-06-27 23:26:23,142.142 INFO    ] 200
[2026-06-27 23:26:23,143.143 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:26:23,167.167 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:26:23,211.211 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:26:23,212.212 INFO    ] No camera update needed
[2026-06-27 23:26:23,214.214 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:26:23,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:26:23,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:26:23,222.222 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:26:25,261.261 INFO    ] ================================================
[2026-06-27 23:26:25,277.277 INFO    ] Launching Daemon at Sat Jun 27 23:26:25 IST 2026
[2026-06-27 23:26:25,288.288 INFO    ] ================================================
[2026-06-27 23:26:25,636.636 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:26:25
[2026-06-27 23:26:25,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:26:26,095.095 INFO    ] Initializing speech engine...
[2026-06-27 23:26:26,099.099 INFO    ] 2026-06-27 23:26:26
[2026-06-27 23:26:26,307.307 INFO    ] 2026-06-27 23:26:26
[2026-06-27 23:26:26,337.337 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:26:26,524.524 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:26:26,527.527 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:26:26,658.658 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:26:26,719.719 INFO    ] time= 27/06/2026 23:26:26
[2026-06-27 23:26:26,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:26:26,760.760 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:26:26,832.832 INFO    ] No existing commands found in stream
[2026-06-27 23:26:31,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:26:31,842.842 INFO    ] Waiting 1.67 seconds before fallback handling...
[2026-06-27 23:26:33,927.927 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 23:26:33,929.929 INFO    ] Checking for system updates...
[2026-06-27 23:26:33,949.949 INFO    ] 200
[2026-06-27 23:26:33,951.951 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:26:33,985.985 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:26:33,987.987 INFO    ] No update needed
[2026-06-27 23:26:33,988.988 INFO    ] Checking for camera pi updates...
[2026-06-27 23:26:34,010.010 INFO    ] 200
[2026-06-27 23:26:34,011.011 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:26:34,037.037 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:26:34,078.078 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:26:34,079.079 INFO    ] No camera update needed
[2026-06-27 23:26:34,081.081 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:26:34,082.082 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:26:34,086.086 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:26:34,089.089 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:26:36,129.129 INFO    ] ================================================
[2026-06-27 23:26:36,145.145 INFO    ] Launching Daemon at Sat Jun 27 23:26:36 IST 2026
[2026-06-27 23:26:36,157.157 INFO    ] ================================================
[2026-06-27 23:26:36,543.543 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:26:36
[2026-06-27 23:26:36,888.888 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:26:37,042.042 INFO    ] Initializing speech engine...
[2026-06-27 23:26:37,048.048 INFO    ] 2026-06-27 23:26:37
[2026-06-27 23:26:37,264.264 INFO    ] 2026-06-27 23:26:37
[2026-06-27 23:26:37,294.294 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:26:37,481.481 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:26:37,493.493 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:26:37,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:26:37,692.692 INFO    ] time= 27/06/2026 23:26:37
[2026-06-27 23:26:37,717.717 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:26:37,723.723 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:26:37,791.791 INFO    ] No existing commands found in stream
[2026-06-27 23:26:42,806.806 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:26:42,809.809 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-27 23:26:43,603.603 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 23:26:43,605.605 INFO    ] Checking for system updates...
[2026-06-27 23:26:43,627.627 INFO    ] 200
[2026-06-27 23:26:43,628.628 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:26:43,661.661 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:26:43,663.663 INFO    ] No update needed
[2026-06-27 23:26:43,664.664 INFO    ] Checking for camera pi updates...
[2026-06-27 23:26:43,685.685 INFO    ] 200
[2026-06-27 23:26:43,687.687 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:26:43,712.712 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:26:43,757.757 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:26:43,758.758 INFO    ] No camera update needed
[2026-06-27 23:26:43,760.760 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:26:43,761.761 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:26:43,764.764 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:26:43,767.767 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:26:45,805.805 INFO    ] ================================================
[2026-06-27 23:26:45,822.822 INFO    ] Launching Daemon at Sat Jun 27 23:26:45 IST 2026
[2026-06-27 23:26:45,833.833 INFO    ] ================================================
[2026-06-27 23:26:46,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:26:46
[2026-06-27 23:26:46,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:26:46,623.623 INFO    ] Initializing speech engine...
[2026-06-27 23:26:46,628.628 INFO    ] 2026-06-27 23:26:46
[2026-06-27 23:26:46,834.834 INFO    ] 2026-06-27 23:26:46
[2026-06-27 23:26:46,863.863 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:26:47,073.073 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:26:47,077.077 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:26:47,204.204 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:26:47,258.258 INFO    ] time= 27/06/2026 23:26:47
[2026-06-27 23:26:47,281.281 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:26:47,286.286 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:26:47,407.407 INFO    ] No existing commands found in stream
[2026-06-27 23:26:52,417.417 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:26:52,420.420 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-27 23:26:55,351.351 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 23:26:55,353.353 INFO    ] Checking for system updates...
[2026-06-27 23:26:55,374.374 INFO    ] 200
[2026-06-27 23:26:55,376.376 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:26:55,406.406 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:26:55,408.408 INFO    ] No update needed
[2026-06-27 23:26:55,409.409 INFO    ] Checking for camera pi updates...
[2026-06-27 23:26:55,429.429 INFO    ] 200
[2026-06-27 23:26:55,430.430 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:26:55,456.456 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:26:55,486.486 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:26:55,487.487 INFO    ] No camera update needed
[2026-06-27 23:26:55,488.488 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:26:55,490.490 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:26:55,493.493 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:26:55,496.496 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:26:57,538.538 INFO    ] ================================================
[2026-06-27 23:26:57,553.553 INFO    ] Launching Daemon at Sat Jun 27 23:26:57 IST 2026
[2026-06-27 23:26:57,565.565 INFO    ] ================================================
[2026-06-27 23:26:57,932.932 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:26:57
[2026-06-27 23:26:58,250.250 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:26:58,394.394 INFO    ] Initializing speech engine...
[2026-06-27 23:26:58,399.399 INFO    ] 2026-06-27 23:26:58
[2026-06-27 23:26:58,605.605 INFO    ] 2026-06-27 23:26:58
[2026-06-27 23:26:58,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:26:58,819.819 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:26:58,827.827 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:26:58,968.968 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:26:59,025.025 INFO    ] time= 27/06/2026 23:26:58
[2026-06-27 23:26:59,049.049 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:26:59,055.055 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:26:59,122.122 INFO    ] No existing commands found in stream
[2026-06-27 23:27:04,146.146 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:27:04,149.149 INFO    ] Waiting 3.85 seconds before fallback handling...
[2026-06-27 23:27:08,662.662 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 23:27:08,664.664 INFO    ] Checking for system updates...
[2026-06-27 23:27:08,685.685 INFO    ] 200
[2026-06-27 23:27:08,686.686 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:27:08,716.716 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:27:08,717.717 INFO    ] No update needed
[2026-06-27 23:27:08,719.719 INFO    ] Checking for camera pi updates...
[2026-06-27 23:27:08,740.740 INFO    ] 200
[2026-06-27 23:27:08,741.741 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:27:08,766.766 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:27:08,811.811 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:27:08,812.812 INFO    ] No camera update needed
[2026-06-27 23:27:08,814.814 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:27:08,815.815 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:27:08,818.818 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:27:08,821.821 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:27:10,860.860 INFO    ] ================================================
[2026-06-27 23:27:10,876.876 INFO    ] Launching Daemon at Sat Jun 27 23:27:10 IST 2026
[2026-06-27 23:27:10,887.887 INFO    ] ================================================
[2026-06-27 23:27:11,276.276 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:27:11
[2026-06-27 23:27:11,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:27:11,774.774 INFO    ] Initializing speech engine...
[2026-06-27 23:27:11,779.779 INFO    ] 2026-06-27 23:27:11
[2026-06-27 23:27:11,986.986 INFO    ] 2026-06-27 23:27:11
[2026-06-27 23:27:12,016.016 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:27:12,149.149 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:27:12,202.202 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:27:12,357.357 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:27:12,409.409 INFO    ] time= 27/06/2026 23:27:12
[2026-06-27 23:27:12,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:27:12,438.438 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:27:12,506.506 INFO    ] No existing commands found in stream
[2026-06-27 23:27:17,516.516 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:27:17,519.519 INFO    ] Waiting 2.86 seconds before fallback handling...
[2026-06-27 23:27:20,809.809 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 23:27:20,811.811 INFO    ] Checking for system updates...
[2026-06-27 23:27:20,833.833 INFO    ] 200
[2026-06-27 23:27:20,835.835 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:27:20,865.865 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:27:20,867.867 INFO    ] No update needed
[2026-06-27 23:27:20,868.868 INFO    ] Checking for camera pi updates...
[2026-06-27 23:27:20,888.888 INFO    ] 200
[2026-06-27 23:27:20,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:27:20,912.912 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:27:20,957.957 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:27:20,959.959 INFO    ] No camera update needed
[2026-06-27 23:27:20,960.960 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:27:20,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:27:20,964.964 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:27:20,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:27:23,007.007 INFO    ] ================================================
[2026-06-27 23:27:23,022.022 INFO    ] Launching Daemon at Sat Jun 27 23:27:23 IST 2026
[2026-06-27 23:27:23,033.033 INFO    ] ================================================
[2026-06-27 23:27:23,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:27:23
[2026-06-27 23:27:23,766.766 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:27:23,904.904 INFO    ] Initializing speech engine...
[2026-06-27 23:27:23,913.913 INFO    ] 2026-06-27 23:27:23
[2026-06-27 23:27:24,119.119 INFO    ] 2026-06-27 23:27:24
[2026-06-27 23:27:24,148.148 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:27:24,331.331 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:27:24,340.340 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:27:24,464.464 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:27:24,534.534 INFO    ] time= 27/06/2026 23:27:24
[2026-06-27 23:27:24,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:27:24,564.564 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:27:24,631.631 INFO    ] No existing commands found in stream
[2026-06-27 23:27:29,640.640 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:27:29,643.643 INFO    ] Waiting 3.98 seconds before fallback handling...
[2026-06-27 23:27:34,012.012 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:27:34,013.013 INFO    ] Checking for system updates...
[2026-06-27 23:27:34,035.035 INFO    ] 200
[2026-06-27 23:27:34,036.036 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:27:34,067.067 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:27:34,069.069 INFO    ] No update needed
[2026-06-27 23:27:34,070.070 INFO    ] Checking for camera pi updates...
[2026-06-27 23:27:34,090.090 INFO    ] 200
[2026-06-27 23:27:34,091.091 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:27:34,117.117 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:27:34,169.169 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:27:34,170.170 INFO    ] No camera update needed
[2026-06-27 23:27:34,171.171 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:27:34,173.173 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:27:34,176.176 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:27:34,179.179 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:27:36,218.218 INFO    ] ================================================
[2026-06-27 23:27:36,233.233 INFO    ] Launching Daemon at Sat Jun 27 23:27:36 IST 2026
[2026-06-27 23:27:36,244.244 INFO    ] ================================================
[2026-06-27 23:27:36,578.578 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:27:36
[2026-06-27 23:27:36,891.891 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:27:37,041.041 INFO    ] Initializing speech engine...
[2026-06-27 23:27:37,048.048 INFO    ] 2026-06-27 23:27:37
[2026-06-27 23:27:37,245.245 INFO    ] 2026-06-27 23:27:37
[2026-06-27 23:27:37,274.274 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:27:37,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:27:37,468.468 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:27:37,630.630 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:27:37,674.674 INFO    ] time= 27/06/2026 23:27:37
[2026-06-27 23:27:37,695.695 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:27:37,701.701 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:27:37,767.767 INFO    ] No existing commands found in stream
[2026-06-27 23:27:42,781.781 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:27:42,784.784 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-27 23:27:45,527.527 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:27:45,529.529 INFO    ] Checking for system updates...
[2026-06-27 23:27:45,550.550 INFO    ] 200
[2026-06-27 23:27:45,552.552 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:27:45,585.585 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:27:45,586.586 INFO    ] No update needed
[2026-06-27 23:27:45,587.587 INFO    ] Checking for camera pi updates...
[2026-06-27 23:27:45,608.608 INFO    ] 200
[2026-06-27 23:27:45,610.610 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:27:45,635.635 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:27:45,686.686 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:27:45,687.687 INFO    ] No camera update needed
[2026-06-27 23:27:45,689.689 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:27:45,690.690 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:27:45,693.693 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:27:45,696.696 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:27:47,735.735 INFO    ] ================================================
[2026-06-27 23:27:47,751.751 INFO    ] Launching Daemon at Sat Jun 27 23:27:47 IST 2026
[2026-06-27 23:27:47,762.762 INFO    ] ================================================
[2026-06-27 23:27:48,108.108 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:27:48
[2026-06-27 23:27:48,423.423 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:27:48,557.557 INFO    ] Initializing speech engine...
[2026-06-27 23:27:48,560.560 INFO    ] 2026-06-27 23:27:48
[2026-06-27 23:27:48,752.752 INFO    ] 2026-06-27 23:27:48
[2026-06-27 23:27:48,800.800 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:27:48,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:27:48,927.927 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:27:49,041.041 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:27:49,043.043 INFO    ] time= 27/06/2026 23:27:49
[2026-06-27 23:27:49,046.046 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:27:49,062.062 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:27:49,169.169 INFO    ] No existing commands found in stream
[2026-06-27 23:27:54,185.185 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:27:54,188.188 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-27 23:27:56,747.747 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:27:56,749.749 INFO    ] Checking for system updates...
[2026-06-27 23:27:56,769.769 INFO    ] 200
[2026-06-27 23:27:56,771.771 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:27:56,802.802 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:27:56,803.803 INFO    ] No update needed
[2026-06-27 23:27:56,805.805 INFO    ] Checking for camera pi updates...
[2026-06-27 23:27:56,824.824 INFO    ] 200
[2026-06-27 23:27:56,826.826 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:27:56,849.849 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:27:56,894.894 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:27:56,896.896 INFO    ] No camera update needed
[2026-06-27 23:27:56,897.897 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:27:56,898.898 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:27:56,902.902 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:27:56,905.905 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:27:58,945.945 INFO    ] ================================================
[2026-06-27 23:27:58,960.960 INFO    ] Launching Daemon at Sat Jun 27 23:27:58 IST 2026
[2026-06-27 23:27:58,971.971 INFO    ] ================================================
[2026-06-27 23:27:59,307.307 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:27:59
[2026-06-27 23:27:59,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:27:59,754.754 INFO    ] Initializing speech engine...
[2026-06-27 23:27:59,768.768 INFO    ] 2026-06-27 23:27:59
[2026-06-27 23:27:59,994.994 INFO    ] 2026-06-27 23:27:59
[2026-06-27 23:28:00,025.025 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:28:00,166.166 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:28:00,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:28:00,377.377 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:28:00,423.423 INFO    ] time= 27/06/2026 23:28:00
[2026-06-27 23:28:00,462.462 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:28:00,486.486 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:28:00,564.564 INFO    ] No existing commands found in stream
[2026-06-27 23:28:05,574.574 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:28:05,576.576 INFO    ] Waiting 0.22 seconds before fallback handling...
[2026-06-27 23:28:06,171.171 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:28:06,173.173 INFO    ] Checking for system updates...
[2026-06-27 23:28:06,202.202 INFO    ] 200
[2026-06-27 23:28:06,204.204 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:28:06,240.240 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:28:06,241.241 INFO    ] No update needed
[2026-06-27 23:28:06,243.243 INFO    ] Checking for camera pi updates...
[2026-06-27 23:28:06,264.264 INFO    ] 200
[2026-06-27 23:28:06,266.266 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:28:06,291.291 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:28:06,430.430 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:28:06,432.432 INFO    ] No camera update needed
[2026-06-27 23:28:06,433.433 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:28:06,434.434 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:28:06,437.437 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:28:06,440.440 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:28:08,481.481 INFO    ] ================================================
[2026-06-27 23:28:08,497.497 INFO    ] Launching Daemon at Sat Jun 27 23:28:08 IST 2026
[2026-06-27 23:28:08,508.508 INFO    ] ================================================
[2026-06-27 23:28:08,846.846 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:28:08
[2026-06-27 23:28:09,162.162 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:28:09,306.306 INFO    ] Initializing speech engine...
[2026-06-27 23:28:09,311.311 INFO    ] 2026-06-27 23:28:09
[2026-06-27 23:28:09,520.520 INFO    ] 2026-06-27 23:28:09
[2026-06-27 23:28:09,548.548 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:28:09,733.733 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:28:09,741.741 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:28:09,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:28:09,936.936 INFO    ] time= 27/06/2026 23:28:09
[2026-06-27 23:28:09,963.963 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:28:09,969.969 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:28:10,036.036 INFO    ] No existing commands found in stream
[2026-06-27 23:28:15,045.045 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:28:15,048.048 INFO    ] Waiting 2.68 seconds before fallback handling...
[2026-06-27 23:28:18,145.145 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 23:28:18,146.146 INFO    ] Checking for system updates...
[2026-06-27 23:28:18,167.167 INFO    ] 200
[2026-06-27 23:28:18,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:28:18,199.199 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:28:18,200.200 INFO    ] No update needed
[2026-06-27 23:28:18,202.202 INFO    ] Checking for camera pi updates...
[2026-06-27 23:28:18,223.223 INFO    ] 200
[2026-06-27 23:28:18,225.225 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:28:18,248.248 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:28:18,287.287 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:28:18,288.288 INFO    ] No camera update needed
[2026-06-27 23:28:18,289.289 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:28:18,291.291 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:28:18,294.294 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:28:18,297.297 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:28:20,337.337 INFO    ] ================================================
[2026-06-27 23:28:20,353.353 INFO    ] Launching Daemon at Sat Jun 27 23:28:20 IST 2026
[2026-06-27 23:28:20,365.365 INFO    ] ================================================
[2026-06-27 23:28:20,695.695 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:28:20
[2026-06-27 23:28:21,011.011 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:28:21,149.149 INFO    ] Initializing speech engine...
[2026-06-27 23:28:21,159.159 INFO    ] 2026-06-27 23:28:21
[2026-06-27 23:28:21,362.362 INFO    ] 2026-06-27 23:28:21
[2026-06-27 23:28:21,391.391 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:28:21,576.576 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:28:21,585.585 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:28:21,729.729 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:28:21,780.780 INFO    ] time= 27/06/2026 23:28:21
[2026-06-27 23:28:21,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:28:21,809.809 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:28:21,876.876 INFO    ] No existing commands found in stream
[2026-06-27 23:28:26,885.885 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:28:26,888.888 INFO    ] Waiting 3.57 seconds before fallback handling...
[2026-06-27 23:28:30,870.870 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 23:28:30,872.872 INFO    ] Checking for system updates...
[2026-06-27 23:28:30,893.893 INFO    ] 200
[2026-06-27 23:28:30,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:28:30,924.924 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:28:30,926.926 INFO    ] No update needed
[2026-06-27 23:28:30,927.927 INFO    ] Checking for camera pi updates...
[2026-06-27 23:28:30,949.949 INFO    ] 200
[2026-06-27 23:28:30,950.950 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:28:30,973.973 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:28:31,016.016 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:28:31,017.017 INFO    ] No camera update needed
[2026-06-27 23:28:31,019.019 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:28:31,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:28:31,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:28:31,026.026 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:28:33,055.055 INFO    ] ================================================
[2026-06-27 23:28:33,064.064 INFO    ] Launching Daemon at Sat Jun 27 23:28:33 IST 2026
[2026-06-27 23:28:33,070.070 INFO    ] ================================================
[2026-06-27 23:28:33,375.375 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:28:33
[2026-06-27 23:28:33,693.693 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:28:33,837.837 INFO    ] Initializing speech engine...
[2026-06-27 23:28:33,842.842 INFO    ] 2026-06-27 23:28:33
[2026-06-27 23:28:34,047.047 INFO    ] 2026-06-27 23:28:34
[2026-06-27 23:28:34,075.075 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:28:34,258.258 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:28:34,267.267 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:28:34,462.462 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:28:34,484.484 INFO    ] time= 27/06/2026 23:28:34
[2026-06-27 23:28:34,490.490 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:28:34,491.491 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:28:34,581.581 INFO    ] No existing commands found in stream
[2026-06-27 23:28:39,586.586 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:28:39,589.589 INFO    ] Waiting 2.04 seconds before fallback handling...
[2026-06-27 23:28:42,034.034 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:28:42,036.036 INFO    ] Checking for system updates...
[2026-06-27 23:28:42,058.058 INFO    ] 200
[2026-06-27 23:28:42,059.059 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:28:42,093.093 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:28:42,094.094 INFO    ] No update needed
[2026-06-27 23:28:42,096.096 INFO    ] Checking for camera pi updates...
[2026-06-27 23:28:42,117.117 INFO    ] 200
[2026-06-27 23:28:42,119.119 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:28:42,144.144 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:28:42,191.191 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:28:42,192.192 INFO    ] No camera update needed
[2026-06-27 23:28:42,194.194 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:28:42,195.195 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:28:42,198.198 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:28:42,201.201 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:28:44,239.239 INFO    ] ================================================
[2026-06-27 23:28:44,255.255 INFO    ] Launching Daemon at Sat Jun 27 23:28:44 IST 2026
[2026-06-27 23:28:44,266.266 INFO    ] ================================================
[2026-06-27 23:28:44,640.640 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:28:44
[2026-06-27 23:28:44,984.984 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:28:45,126.126 INFO    ] Initializing speech engine...
[2026-06-27 23:28:45,138.138 INFO    ] 2026-06-27 23:28:45
[2026-06-27 23:28:45,351.351 INFO    ] 2026-06-27 23:28:45
[2026-06-27 23:28:45,382.382 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:28:45,571.571 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:28:45,581.581 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:28:45,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:28:45,780.780 INFO    ] time= 27/06/2026 23:28:45
[2026-06-27 23:28:45,803.803 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:28:45,809.809 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:28:45,877.877 INFO    ] No existing commands found in stream
[2026-06-27 23:28:50,892.892 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:28:50,896.896 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-27 23:28:52,149.149 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:28:52,151.151 INFO    ] Checking for system updates...
[2026-06-27 23:28:52,172.172 INFO    ] 200
[2026-06-27 23:28:52,174.174 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:28:52,205.205 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:28:52,207.207 INFO    ] No update needed
[2026-06-27 23:28:52,208.208 INFO    ] Checking for camera pi updates...
[2026-06-27 23:28:52,228.228 INFO    ] 200
[2026-06-27 23:28:52,229.229 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:28:52,253.253 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:28:52,307.307 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:28:52,309.309 INFO    ] No camera update needed
[2026-06-27 23:28:52,310.310 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:28:52,311.311 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:28:52,315.315 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:28:52,318.318 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:28:54,360.360 INFO    ] ================================================
[2026-06-27 23:28:54,377.377 INFO    ] Launching Daemon at Sat Jun 27 23:28:54 IST 2026
[2026-06-27 23:28:54,388.388 INFO    ] ================================================
[2026-06-27 23:28:54,738.738 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:28:54
[2026-06-27 23:28:55,049.049 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:28:55,182.182 INFO    ] Initializing speech engine...
[2026-06-27 23:28:55,194.194 INFO    ] 2026-06-27 23:28:55
[2026-06-27 23:28:55,401.401 INFO    ] 2026-06-27 23:28:55
[2026-06-27 23:28:55,431.431 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:28:55,619.619 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:28:55,627.627 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:28:55,753.753 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:28:55,805.805 INFO    ] time= 27/06/2026 23:28:55
[2026-06-27 23:28:55,845.845 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:28:55,850.850 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:28:55,919.919 INFO    ] No existing commands found in stream
[2026-06-27 23:29:00,929.929 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:29:00,932.932 INFO    ] Waiting 3.70 seconds before fallback handling...
[2026-06-27 23:29:05,046.046 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:29:05,048.048 INFO    ] Checking for system updates...
[2026-06-27 23:29:05,068.068 INFO    ] 200
[2026-06-27 23:29:05,069.069 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:29:05,104.104 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:29:05,106.106 INFO    ] No update needed
[2026-06-27 23:29:05,107.107 INFO    ] Checking for camera pi updates...
[2026-06-27 23:29:05,127.127 INFO    ] 200
[2026-06-27 23:29:05,129.129 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:29:05,154.154 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:29:05,197.197 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:29:05,198.198 INFO    ] No camera update needed
[2026-06-27 23:29:05,199.199 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:29:05,201.201 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:29:05,204.204 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:29:05,206.206 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:29:07,246.246 INFO    ] ================================================
[2026-06-27 23:29:07,262.262 INFO    ] Launching Daemon at Sat Jun 27 23:29:07 IST 2026
[2026-06-27 23:29:07,274.274 INFO    ] ================================================
[2026-06-27 23:29:07,641.641 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:29:07
[2026-06-27 23:29:07,979.979 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:29:08,108.108 INFO    ] Initializing speech engine...
[2026-06-27 23:29:08,113.113 INFO    ] 2026-06-27 23:29:08
[2026-06-27 23:29:08,331.331 INFO    ] 2026-06-27 23:29:08
[2026-06-27 23:29:08,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:29:08,548.548 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:29:08,557.557 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:29:08,680.680 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:29:08,741.741 INFO    ] time= 27/06/2026 23:29:08
[2026-06-27 23:29:08,765.765 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:29:08,781.781 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:29:08,854.854 INFO    ] No existing commands found in stream
[2026-06-27 23:29:13,864.864 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:29:13,866.866 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-27 23:29:14,358.358 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:29:14,359.359 INFO    ] Checking for system updates...
[2026-06-27 23:29:14,381.381 INFO    ] 200
[2026-06-27 23:29:14,383.383 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:29:14,414.414 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:29:14,415.415 INFO    ] No update needed
[2026-06-27 23:29:14,417.417 INFO    ] Checking for camera pi updates...
[2026-06-27 23:29:14,437.437 INFO    ] 200
[2026-06-27 23:29:14,438.438 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:29:14,462.462 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:29:14,505.505 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:29:14,506.506 INFO    ] No camera update needed
[2026-06-27 23:29:14,507.507 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:29:14,508.508 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:29:14,511.511 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:29:14,514.514 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:29:16,553.553 INFO    ] ================================================
[2026-06-27 23:29:16,569.569 INFO    ] Launching Daemon at Sat Jun 27 23:29:16 IST 2026
[2026-06-27 23:29:16,580.580 INFO    ] ================================================
[2026-06-27 23:29:16,909.909 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:29:16
[2026-06-27 23:29:17,238.238 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:29:17,392.392 INFO    ] Initializing speech engine...
[2026-06-27 23:29:17,396.396 INFO    ] 2026-06-27 23:29:17
[2026-06-27 23:29:17,605.605 INFO    ] 2026-06-27 23:29:17
[2026-06-27 23:29:17,634.634 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:29:17,807.807 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:29:17,809.809 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:29:17,912.912 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:29:17,944.944 INFO    ] time= 27/06/2026 23:29:17
[2026-06-27 23:29:17,980.980 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:29:18,048.048 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:29:18,149.149 INFO    ] No existing commands found in stream
[2026-06-27 23:29:23,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:29:23,162.162 INFO    ] Waiting 0.91 seconds before fallback handling...
[2026-06-27 23:29:24,490.490 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:29:24,491.491 INFO    ] Checking for system updates...
[2026-06-27 23:29:24,512.512 INFO    ] 200
[2026-06-27 23:29:24,514.514 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:29:24,545.545 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:29:24,546.546 INFO    ] No update needed
[2026-06-27 23:29:24,548.548 INFO    ] Checking for camera pi updates...
[2026-06-27 23:29:24,568.568 INFO    ] 200
[2026-06-27 23:29:24,569.569 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:29:24,593.593 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:29:24,637.637 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:29:24,638.638 INFO    ] No camera update needed
[2026-06-27 23:29:24,640.640 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:29:24,641.641 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:29:24,644.644 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:29:24,647.647 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:29:26,687.687 INFO    ] ================================================
[2026-06-27 23:29:26,702.702 INFO    ] Launching Daemon at Sat Jun 27 23:29:26 IST 2026
[2026-06-27 23:29:26,714.714 INFO    ] ================================================
[2026-06-27 23:29:27,099.099 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:29:27
[2026-06-27 23:29:27,440.440 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:29:27,596.596 INFO    ] Initializing speech engine...
[2026-06-27 23:29:27,600.600 INFO    ] 2026-06-27 23:29:27
[2026-06-27 23:29:27,816.816 INFO    ] 2026-06-27 23:29:27
[2026-06-27 23:29:27,845.845 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:29:28,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:29:28,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:29:28,174.174 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:29:28,243.243 INFO    ] time= 27/06/2026 23:29:28
[2026-06-27 23:29:28,268.268 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:29:28,274.274 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:29:28,342.342 INFO    ] No existing commands found in stream
[2026-06-27 23:29:33,352.352 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:29:33,355.355 INFO    ] Waiting 1.58 seconds before fallback handling...
[2026-06-27 23:29:35,368.368 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:29:35,369.369 INFO    ] Checking for system updates...
[2026-06-27 23:29:35,391.391 INFO    ] 200
[2026-06-27 23:29:35,393.393 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:29:35,426.426 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:29:35,427.427 INFO    ] No update needed
[2026-06-27 23:29:35,428.428 INFO    ] Checking for camera pi updates...
[2026-06-27 23:29:35,449.449 INFO    ] 200
[2026-06-27 23:29:35,450.450 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:29:35,476.476 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:29:35,519.519 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:29:35,520.520 INFO    ] No camera update needed
[2026-06-27 23:29:35,522.522 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:29:35,523.523 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:29:35,526.526 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:29:35,528.528 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:29:37,570.570 INFO    ] ================================================
[2026-06-27 23:29:37,586.586 INFO    ] Launching Daemon at Sat Jun 27 23:29:37 IST 2026
[2026-06-27 23:29:37,597.597 INFO    ] ================================================
[2026-06-27 23:29:37,984.984 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:29:37
[2026-06-27 23:29:38,322.322 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:29:38,476.476 INFO    ] Initializing speech engine...
[2026-06-27 23:29:38,482.482 INFO    ] 2026-06-27 23:29:38
[2026-06-27 23:29:38,691.691 INFO    ] 2026-06-27 23:29:38
[2026-06-27 23:29:38,720.720 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:29:38,905.905 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:29:38,915.915 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:29:39,115.115 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:29:39,132.132 INFO    ] time= 27/06/2026 23:29:39
[2026-06-27 23:29:39,137.137 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:29:39,139.139 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:29:39,230.230 INFO    ] No existing commands found in stream
[2026-06-27 23:29:44,244.244 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:29:44,248.248 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-27 23:29:48,059.059 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 23:29:48,061.061 INFO    ] Checking for system updates...
[2026-06-27 23:29:48,086.086 INFO    ] 200
[2026-06-27 23:29:48,087.087 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:29:48,118.118 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:29:48,119.119 INFO    ] No update needed
[2026-06-27 23:29:48,121.121 INFO    ] Checking for camera pi updates...
[2026-06-27 23:29:48,140.140 INFO    ] 200
[2026-06-27 23:29:48,142.142 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:29:48,167.167 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:29:48,211.211 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:29:48,212.212 INFO    ] No camera update needed
[2026-06-27 23:29:48,214.214 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:29:48,215.215 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:29:48,218.218 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:29:48,221.221 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:29:50,260.260 INFO    ] ================================================
[2026-06-27 23:29:50,276.276 INFO    ] Launching Daemon at Sat Jun 27 23:29:50 IST 2026
[2026-06-27 23:29:50,287.287 INFO    ] ================================================
[2026-06-27 23:29:50,634.634 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:29:50
[2026-06-27 23:29:50,951.951 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:29:51,095.095 INFO    ] Initializing speech engine...
[2026-06-27 23:29:51,100.100 INFO    ] 2026-06-27 23:29:51
[2026-06-27 23:29:51,304.304 INFO    ] 2026-06-27 23:29:51
[2026-06-27 23:29:51,333.333 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:29:51,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:29:51,525.525 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:29:51,653.653 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:29:51,718.718 INFO    ] time= 27/06/2026 23:29:51
[2026-06-27 23:29:51,745.745 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:29:51,751.751 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:29:51,841.841 INFO    ] No existing commands found in stream
[2026-06-27 23:29:56,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:29:56,858.858 INFO    ] Waiting 0.69 seconds before fallback handling...
[2026-06-27 23:29:57,947.947 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:29:57,948.948 INFO    ] Checking for system updates...
[2026-06-27 23:29:57,970.970 INFO    ] 200
[2026-06-27 23:29:57,971.971 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:29:58,002.002 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:29:58,003.003 INFO    ] No update needed
[2026-06-27 23:29:58,004.004 INFO    ] Checking for camera pi updates...
[2026-06-27 23:29:58,024.024 INFO    ] 200
[2026-06-27 23:29:58,025.025 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:29:58,048.048 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:29:58,099.099 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:29:58,101.101 INFO    ] No camera update needed
[2026-06-27 23:29:58,102.102 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:29:58,103.103 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:29:58,107.107 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:29:58,110.110 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:30:00,148.148 INFO    ] ================================================
[2026-06-27 23:30:00,164.164 INFO    ] Launching Daemon at Sat Jun 27 23:30:00 IST 2026
[2026-06-27 23:30:00,175.175 INFO    ] ================================================
[2026-06-27 23:30:00,539.539 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:30:00
[2026-06-27 23:30:00,878.878 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:30:01,026.026 INFO    ] Initializing speech engine...
[2026-06-27 23:30:01,037.037 INFO    ] 2026-06-27 23:30:01
[2026-06-27 23:30:01,248.248 INFO    ] 2026-06-27 23:30:01
[2026-06-27 23:30:01,278.278 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:30:01,472.472 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:30:01,488.488 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:30:01,635.635 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:30:01,648.648 INFO    ] time= 27/06/2026 23:30:01
[2026-06-27 23:30:01,670.670 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:30:01,679.679 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:30:01,765.765 INFO    ] No existing commands found in stream
[2026-06-27 23:30:06,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:30:06,791.791 INFO    ] Waiting 2.08 seconds before fallback handling...
[2026-06-27 23:30:09,263.263 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 23:30:09,265.265 INFO    ] Checking for system updates...
[2026-06-27 23:30:09,285.285 INFO    ] 200
[2026-06-27 23:30:09,287.287 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:30:09,317.317 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:30:09,318.318 INFO    ] No update needed
[2026-06-27 23:30:09,319.319 INFO    ] Checking for camera pi updates...
[2026-06-27 23:30:09,339.339 INFO    ] 200
[2026-06-27 23:30:09,340.340 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:30:09,366.366 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:30:09,514.514 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:30:09,516.516 INFO    ] No camera update needed
[2026-06-27 23:30:09,517.517 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:30:09,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:30:09,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:30:09,524.524 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:30:11,563.563 INFO    ] ================================================
[2026-06-27 23:30:11,579.579 INFO    ] Launching Daemon at Sat Jun 27 23:30:11 IST 2026
[2026-06-27 23:30:11,589.589 INFO    ] ================================================
[2026-06-27 23:30:11,992.992 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:30:11
[2026-06-27 23:30:12,341.341 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:30:12,504.504 INFO    ] Initializing speech engine...
[2026-06-27 23:30:12,516.516 INFO    ] 2026-06-27 23:30:12
[2026-06-27 23:30:12,697.697 INFO    ] 2026-06-27 23:30:12
[2026-06-27 23:30:12,745.745 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:30:12,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:30:12,963.963 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:30:13,114.114 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:30:13,174.174 INFO    ] time= 27/06/2026 23:30:13
[2026-06-27 23:30:13,226.226 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:30:13,257.257 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:30:13,328.328 INFO    ] No existing commands found in stream
[2026-06-27 23:30:18,342.342 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:30:18,345.345 INFO    ] Waiting 2.71 seconds before fallback handling...
[2026-06-27 23:30:21,469.469 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:30:21,471.471 INFO    ] Checking for system updates...
[2026-06-27 23:30:21,492.492 INFO    ] 200
[2026-06-27 23:30:21,493.493 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:30:21,524.524 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:30:21,526.526 INFO    ] No update needed
[2026-06-27 23:30:21,527.527 INFO    ] Checking for camera pi updates...
[2026-06-27 23:30:21,548.548 INFO    ] 200
[2026-06-27 23:30:21,550.550 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:30:21,578.578 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:30:21,620.620 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:30:21,621.621 INFO    ] No camera update needed
[2026-06-27 23:30:21,623.623 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:30:21,624.624 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:30:21,628.628 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:30:21,631.631 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:30:23,671.671 INFO    ] ================================================
[2026-06-27 23:30:23,687.687 INFO    ] Launching Daemon at Sat Jun 27 23:30:23 IST 2026
[2026-06-27 23:30:23,698.698 INFO    ] ================================================
[2026-06-27 23:30:24,066.066 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:30:24
[2026-06-27 23:30:24,380.380 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:30:24,524.524 INFO    ] Initializing speech engine...
[2026-06-27 23:30:24,529.529 INFO    ] 2026-06-27 23:30:24
[2026-06-27 23:30:24,732.732 INFO    ] 2026-06-27 23:30:24
[2026-06-27 23:30:24,762.762 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:30:24,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:30:24,954.954 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:30:25,081.081 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:30:25,142.142 INFO    ] time= 27/06/2026 23:30:25
[2026-06-27 23:30:25,175.175 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:30:25,180.180 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:30:25,248.248 INFO    ] No existing commands found in stream
[2026-06-27 23:30:30,262.262 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:30:30,265.265 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-27 23:30:33,937.937 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 23:30:33,939.939 INFO    ] Checking for system updates...
[2026-06-27 23:30:33,961.961 INFO    ] 200
[2026-06-27 23:30:33,962.962 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:30:33,995.995 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:30:33,997.997 INFO    ] No update needed
[2026-06-27 23:30:33,998.998 INFO    ] Checking for camera pi updates...
[2026-06-27 23:30:34,017.017 INFO    ] 200
[2026-06-27 23:30:34,019.019 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:30:34,042.042 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:30:34,071.071 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:30:34,072.072 INFO    ] No camera update needed
[2026-06-27 23:30:34,074.074 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:30:34,075.075 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:30:34,078.078 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:30:34,081.081 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:30:36,121.121 INFO    ] ================================================
[2026-06-27 23:30:36,137.137 INFO    ] Launching Daemon at Sat Jun 27 23:30:36 IST 2026
[2026-06-27 23:30:36,148.148 INFO    ] ================================================
[2026-06-27 23:30:36,479.479 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:30:36
[2026-06-27 23:30:36,796.796 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:30:36,937.937 INFO    ] Initializing speech engine...
[2026-06-27 23:30:36,942.942 INFO    ] 2026-06-27 23:30:36
[2026-06-27 23:30:37,146.146 INFO    ] 2026-06-27 23:30:37
[2026-06-27 23:30:37,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:30:37,360.360 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:30:37,368.368 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:30:37,491.491 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:30:37,547.547 INFO    ] time= 27/06/2026 23:30:37
[2026-06-27 23:30:37,590.590 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:30:37,596.596 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:30:37,663.663 INFO    ] No existing commands found in stream
[2026-06-27 23:30:42,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:30:42,679.679 INFO    ] Waiting 2.99 seconds before fallback handling...
[2026-06-27 23:30:46,049.049 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 23:30:46,050.050 INFO    ] Checking for system updates...
[2026-06-27 23:30:46,071.071 INFO    ] 200
[2026-06-27 23:30:46,073.073 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:30:46,104.104 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:30:46,105.105 INFO    ] No update needed
[2026-06-27 23:30:46,107.107 INFO    ] Checking for camera pi updates...
[2026-06-27 23:30:46,127.127 INFO    ] 200
[2026-06-27 23:30:46,128.128 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:30:46,152.152 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:30:46,204.204 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:30:46,205.205 INFO    ] No camera update needed
[2026-06-27 23:30:46,207.207 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:30:46,208.208 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:30:46,211.211 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:30:46,214.214 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:30:48,255.255 INFO    ] ================================================
[2026-06-27 23:30:48,271.271 INFO    ] Launching Daemon at Sat Jun 27 23:30:48 IST 2026
[2026-06-27 23:30:48,283.283 INFO    ] ================================================
[2026-06-27 23:30:48,629.629 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:30:48
[2026-06-27 23:30:48,941.941 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:30:49,073.073 INFO    ] Initializing speech engine...
[2026-06-27 23:30:49,085.085 INFO    ] 2026-06-27 23:30:49
[2026-06-27 23:30:49,294.294 INFO    ] 2026-06-27 23:30:49
[2026-06-27 23:30:49,322.322 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:30:49,508.508 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:30:49,518.518 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:30:49,661.661 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:30:49,719.719 INFO    ] time= 27/06/2026 23:30:49
[2026-06-27 23:30:49,743.743 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:30:49,749.749 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:30:49,816.816 INFO    ] No existing commands found in stream
[2026-06-27 23:30:54,830.830 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:30:54,833.833 INFO    ] Waiting 1.46 seconds before fallback handling...
[2026-06-27 23:30:56,671.671 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:30:56,673.673 INFO    ] Checking for system updates...
[2026-06-27 23:30:56,694.694 INFO    ] 200
[2026-06-27 23:30:56,696.696 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:30:56,728.728 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:30:56,730.730 INFO    ] No update needed
[2026-06-27 23:30:56,731.731 INFO    ] Checking for camera pi updates...
[2026-06-27 23:30:56,753.753 INFO    ] 200
[2026-06-27 23:30:56,755.755 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:30:56,781.781 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:30:56,828.828 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:30:56,830.830 INFO    ] No camera update needed
[2026-06-27 23:30:56,831.831 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:30:56,832.832 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:30:56,836.836 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:30:56,839.839 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:30:58,884.884 INFO    ] ================================================
[2026-06-27 23:30:58,900.900 INFO    ] Launching Daemon at Sat Jun 27 23:30:58 IST 2026
[2026-06-27 23:30:58,911.911 INFO    ] ================================================
[2026-06-27 23:30:59,273.273 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:30:59
[2026-06-27 23:30:59,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:30:59,735.735 INFO    ] Initializing speech engine...
[2026-06-27 23:30:59,740.740 INFO    ] 2026-06-27 23:30:59
[2026-06-27 23:30:59,946.946 INFO    ] 2026-06-27 23:30:59
[2026-06-27 23:30:59,974.974 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:31:00,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:31:00,168.168 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:31:00,307.307 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:31:00,366.366 INFO    ] time= 27/06/2026 23:31:00
[2026-06-27 23:31:00,387.387 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:31:00,393.393 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:31:00,459.459 INFO    ] No existing commands found in stream
[2026-06-27 23:31:05,474.474 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:31:05,477.477 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-27 23:31:06,622.622 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 23:31:06,624.624 INFO    ] Checking for system updates...
[2026-06-27 23:31:06,645.645 INFO    ] 200
[2026-06-27 23:31:06,646.646 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:31:06,678.678 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:31:06,680.680 INFO    ] No update needed
[2026-06-27 23:31:06,681.681 INFO    ] Checking for camera pi updates...
[2026-06-27 23:31:06,701.701 INFO    ] 200
[2026-06-27 23:31:06,702.702 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:31:06,726.726 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:31:06,777.777 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:31:06,778.778 INFO    ] No camera update needed
[2026-06-27 23:31:06,780.780 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:31:06,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:31:06,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:31:06,787.787 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:31:08,826.826 INFO    ] ================================================
[2026-06-27 23:31:08,841.841 INFO    ] Launching Daemon at Sat Jun 27 23:31:08 IST 2026
[2026-06-27 23:31:08,852.852 INFO    ] ================================================
[2026-06-27 23:31:09,218.218 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:31:09
[2026-06-27 23:31:09,531.531 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:31:09,669.669 INFO    ] Initializing speech engine...
[2026-06-27 23:31:09,679.679 INFO    ] 2026-06-27 23:31:09
[2026-06-27 23:31:09,884.884 INFO    ] 2026-06-27 23:31:09
[2026-06-27 23:31:09,915.915 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:31:10,114.114 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:31:10,124.124 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:31:10,256.256 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:31:10,297.297 INFO    ] time= 27/06/2026 23:31:10
[2026-06-27 23:31:10,342.342 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:31:10,365.365 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:31:10,441.441 INFO    ] No existing commands found in stream
[2026-06-27 23:31:15,450.450 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:31:15,452.452 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-27 23:31:17,936.936 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:31:17,938.938 INFO    ] Checking for system updates...
[2026-06-27 23:31:17,958.958 INFO    ] 200
[2026-06-27 23:31:17,960.960 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:31:17,992.992 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:31:17,994.994 INFO    ] No update needed
[2026-06-27 23:31:17,995.995 INFO    ] Checking for camera pi updates...
[2026-06-27 23:31:18,017.017 INFO    ] 200
[2026-06-27 23:31:18,018.018 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:31:18,043.043 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:31:18,097.097 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:31:18,098.098 INFO    ] No camera update needed
[2026-06-27 23:31:18,099.099 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:31:18,101.101 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:31:18,104.104 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:31:18,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:31:20,145.145 INFO    ] ================================================
[2026-06-27 23:31:20,162.162 INFO    ] Launching Daemon at Sat Jun 27 23:31:20 IST 2026
[2026-06-27 23:31:20,173.173 INFO    ] ================================================
[2026-06-27 23:31:20,559.559 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:31:20
[2026-06-27 23:31:20,895.895 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:31:21,044.044 INFO    ] Initializing speech engine...
[2026-06-27 23:31:21,056.056 INFO    ] 2026-06-27 23:31:21
[2026-06-27 23:31:21,257.257 INFO    ] 2026-06-27 23:31:21
[2026-06-27 23:31:21,286.286 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:31:21,469.469 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:31:21,480.480 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:31:21,628.628 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:31:21,677.677 INFO    ] time= 27/06/2026 23:31:21
[2026-06-27 23:31:21,699.699 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:31:21,704.704 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:31:21,772.772 INFO    ] No existing commands found in stream
[2026-06-27 23:31:26,786.786 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:31:26,789.789 INFO    ] Waiting 1.85 seconds before fallback handling...
[2026-06-27 23:31:29,074.074 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 23:31:29,075.075 INFO    ] Checking for system updates...
[2026-06-27 23:31:29,097.097 INFO    ] 200
[2026-06-27 23:31:29,099.099 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:31:29,136.136 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:31:29,138.138 INFO    ] No update needed
[2026-06-27 23:31:29,139.139 INFO    ] Checking for camera pi updates...
[2026-06-27 23:31:29,159.159 INFO    ] 200
[2026-06-27 23:31:29,160.160 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:31:29,184.184 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:31:29,227.227 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:31:29,228.228 INFO    ] No camera update needed
[2026-06-27 23:31:29,229.229 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:31:29,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:31:29,234.234 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:31:29,237.237 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:31:31,276.276 INFO    ] ================================================
[2026-06-27 23:31:31,296.296 INFO    ] Launching Daemon at Sat Jun 27 23:31:31 IST 2026
[2026-06-27 23:31:31,307.307 INFO    ] ================================================
[2026-06-27 23:31:31,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:31:31
[2026-06-27 23:31:32,104.104 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:31:32,246.246 INFO    ] Initializing speech engine...
[2026-06-27 23:31:32,258.258 INFO    ] 2026-06-27 23:31:32
[2026-06-27 23:31:32,470.470 INFO    ] 2026-06-27 23:31:32
[2026-06-27 23:31:32,499.499 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:31:32,632.632 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:31:32,684.684 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:31:32,843.843 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:31:32,864.864 INFO    ] time= 27/06/2026 23:31:32
[2026-06-27 23:31:32,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:31:32,867.867 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:31:32,924.924 INFO    ] No existing commands found in stream
[2026-06-27 23:31:37,933.933 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:31:37,936.936 INFO    ] Waiting 0.30 seconds before fallback handling...
[2026-06-27 23:31:38,639.639 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 23:31:38,641.641 INFO    ] Checking for system updates...
[2026-06-27 23:31:38,661.661 INFO    ] 200
[2026-06-27 23:31:38,663.663 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:31:38,693.693 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:31:38,694.694 INFO    ] No update needed
[2026-06-27 23:31:38,696.696 INFO    ] Checking for camera pi updates...
[2026-06-27 23:31:38,715.715 INFO    ] 200
[2026-06-27 23:31:38,716.716 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:31:38,739.739 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:31:38,781.781 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:31:38,783.783 INFO    ] No camera update needed
[2026-06-27 23:31:38,784.784 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:31:38,785.785 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:31:38,788.788 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:31:38,791.791 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:31:40,831.831 INFO    ] ================================================
[2026-06-27 23:31:40,847.847 INFO    ] Launching Daemon at Sat Jun 27 23:31:40 IST 2026
[2026-06-27 23:31:40,857.857 INFO    ] ================================================
[2026-06-27 23:31:41,236.236 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:31:41
[2026-06-27 23:31:41,574.574 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:31:41,714.714 INFO    ] Initializing speech engine...
[2026-06-27 23:31:41,727.727 INFO    ] 2026-06-27 23:31:41
[2026-06-27 23:31:41,942.942 INFO    ] 2026-06-27 23:31:41
[2026-06-27 23:31:41,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:31:42,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:31:42,169.169 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:31:42,292.292 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:31:42,353.353 INFO    ] time= 27/06/2026 23:31:42
[2026-06-27 23:31:42,393.393 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:31:42,399.399 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:31:42,467.467 INFO    ] No existing commands found in stream
[2026-06-27 23:31:47,482.482 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:31:47,485.485 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-27 23:31:51,835.835 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 23:31:51,837.837 INFO    ] Checking for system updates...
[2026-06-27 23:31:51,888.888 INFO    ] 200
[2026-06-27 23:31:51,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:31:51,925.925 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:31:51,926.926 INFO    ] No update needed
[2026-06-27 23:31:51,928.928 INFO    ] Checking for camera pi updates...
[2026-06-27 23:31:51,951.951 INFO    ] 200
[2026-06-27 23:31:51,952.952 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:31:51,980.980 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:31:52,021.021 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:31:52,022.022 INFO    ] No camera update needed
[2026-06-27 23:31:52,024.024 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:31:52,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:31:52,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:31:52,031.031 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:31:54,073.073 INFO    ] ================================================
[2026-06-27 23:31:54,088.088 INFO    ] Launching Daemon at Sat Jun 27 23:31:54 IST 2026
[2026-06-27 23:31:54,100.100 INFO    ] ================================================
[2026-06-27 23:31:54,436.436 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:31:54
[2026-06-27 23:31:54,747.747 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:31:54,885.885 INFO    ] Initializing speech engine...
[2026-06-27 23:31:54,895.895 INFO    ] 2026-06-27 23:31:54
[2026-06-27 23:31:55,099.099 INFO    ] 2026-06-27 23:31:55
[2026-06-27 23:31:55,129.129 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:31:55,313.313 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:31:55,322.322 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:31:55,473.473 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:31:55,522.522 INFO    ] time= 27/06/2026 23:31:55
[2026-06-27 23:31:55,544.544 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:31:55,549.549 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:31:55,617.617 INFO    ] No existing commands found in stream
[2026-06-27 23:32:00,627.627 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:32:00,630.630 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-27 23:32:04,613.613 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 23:32:04,615.615 INFO    ] Checking for system updates...
[2026-06-27 23:32:04,637.637 INFO    ] 200
[2026-06-27 23:32:04,638.638 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:32:04,669.669 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:32:04,670.670 INFO    ] No update needed
[2026-06-27 23:32:04,671.671 INFO    ] Checking for camera pi updates...
[2026-06-27 23:32:04,693.693 INFO    ] 200
[2026-06-27 23:32:04,694.694 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:32:04,720.720 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:32:04,774.774 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:32:04,776.776 INFO    ] No camera update needed
[2026-06-27 23:32:04,777.777 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:32:04,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:32:04,782.782 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:32:04,785.785 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:32:06,829.829 INFO    ] ================================================
[2026-06-27 23:32:06,845.845 INFO    ] Launching Daemon at Sat Jun 27 23:32:06 IST 2026
[2026-06-27 23:32:06,856.856 INFO    ] ================================================
[2026-06-27 23:32:07,223.223 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:32:07
[2026-06-27 23:32:07,563.563 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:32:07,719.719 INFO    ] Initializing speech engine...
[2026-06-27 23:32:07,725.725 INFO    ] 2026-06-27 23:32:07
[2026-06-27 23:32:07,931.931 INFO    ] 2026-06-27 23:32:07
[2026-06-27 23:32:07,960.960 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:32:08,146.146 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:32:08,156.156 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:32:08,286.286 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:32:08,345.345 INFO    ] time= 27/06/2026 23:32:08
[2026-06-27 23:32:08,376.376 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:32:08,382.382 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:32:08,449.449 INFO    ] No existing commands found in stream
[2026-06-27 23:32:13,464.464 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:32:13,467.467 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-27 23:32:14,876.876 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 23:32:14,879.879 INFO    ] Checking for system updates...
[2026-06-27 23:32:14,900.900 INFO    ] 200
[2026-06-27 23:32:14,901.901 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:32:14,935.935 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:32:14,936.936 INFO    ] No update needed
[2026-06-27 23:32:14,938.938 INFO    ] Checking for camera pi updates...
[2026-06-27 23:32:14,959.959 INFO    ] 200
[2026-06-27 23:32:14,960.960 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:32:14,987.987 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:32:15,137.137 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:32:15,139.139 INFO    ] No camera update needed
[2026-06-27 23:32:15,140.140 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:32:15,142.142 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:32:15,146.146 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:32:15,152.152 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:32:17,194.194 INFO    ] ================================================
[2026-06-27 23:32:17,210.210 INFO    ] Launching Daemon at Sat Jun 27 23:32:17 IST 2026
[2026-06-27 23:32:17,221.221 INFO    ] ================================================
[2026-06-27 23:32:17,570.570 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:32:17
[2026-06-27 23:32:17,883.883 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:32:18,017.017 INFO    ] Initializing speech engine...
[2026-06-27 23:32:18,026.026 INFO    ] 2026-06-27 23:32:18
[2026-06-27 23:32:18,252.252 INFO    ] 2026-06-27 23:32:18
[2026-06-27 23:32:18,285.285 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:32:18,409.409 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:32:18,452.452 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:32:18,629.629 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:32:18,684.684 INFO    ] time= 27/06/2026 23:32:18
[2026-06-27 23:32:18,706.706 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:32:18,712.712 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:32:18,779.779 INFO    ] No existing commands found in stream
[2026-06-27 23:32:23,788.788 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:32:23,791.791 INFO    ] Waiting 2.05 seconds before fallback handling...
[2026-06-27 23:32:26,212.212 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 23:32:26,214.214 INFO    ] Checking for system updates...
[2026-06-27 23:32:26,235.235 INFO    ] 200
[2026-06-27 23:32:26,237.237 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:32:26,268.268 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:32:26,269.269 INFO    ] No update needed
[2026-06-27 23:32:26,270.270 INFO    ] Checking for camera pi updates...
[2026-06-27 23:32:26,291.291 INFO    ] 200
[2026-06-27 23:32:26,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:32:26,316.316 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:32:26,372.372 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:32:26,374.374 INFO    ] No camera update needed
[2026-06-27 23:32:26,375.375 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:32:26,377.377 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:32:26,380.380 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:32:26,383.383 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:32:28,422.422 INFO    ] ================================================
[2026-06-27 23:32:28,437.437 INFO    ] Launching Daemon at Sat Jun 27 23:32:28 IST 2026
[2026-06-27 23:32:28,448.448 INFO    ] ================================================
[2026-06-27 23:32:28,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:32:28
[2026-06-27 23:32:29,109.109 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:32:29,243.243 INFO    ] Initializing speech engine...
[2026-06-27 23:32:29,258.258 INFO    ] 2026-06-27 23:32:29
[2026-06-27 23:32:29,463.463 INFO    ] 2026-06-27 23:32:29
[2026-06-27 23:32:29,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:32:29,675.675 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:32:29,685.685 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:32:29,871.871 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:32:29,903.903 INFO    ] time= 27/06/2026 23:32:29
[2026-06-27 23:32:29,905.905 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:32:29,911.911 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:32:30,001.001 INFO    ] No existing commands found in stream
[2026-06-27 23:32:35,015.015 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:32:35,018.018 INFO    ] Waiting 3.24 seconds before fallback handling...
[2026-06-27 23:32:38,944.944 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 23:32:38,945.945 INFO    ] Checking for system updates...
[2026-06-27 23:32:38,966.966 INFO    ] 200
[2026-06-27 23:32:38,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:32:39,000.000 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:32:39,002.002 INFO    ] No update needed
[2026-06-27 23:32:39,003.003 INFO    ] Checking for camera pi updates...
[2026-06-27 23:32:39,022.022 INFO    ] 200
[2026-06-27 23:32:39,024.024 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:32:39,047.047 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:32:39,094.094 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:32:39,095.095 INFO    ] No camera update needed
[2026-06-27 23:32:39,097.097 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:32:39,098.098 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:32:39,101.101 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:32:39,104.104 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:32:41,143.143 INFO    ] ================================================
[2026-06-27 23:32:41,159.159 INFO    ] Launching Daemon at Sat Jun 27 23:32:41 IST 2026
[2026-06-27 23:32:41,170.170 INFO    ] ================================================
[2026-06-27 23:32:41,531.531 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:32:41
[2026-06-27 23:32:41,849.849 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:32:41,983.983 INFO    ] Initializing speech engine...
[2026-06-27 23:32:41,996.996 INFO    ] 2026-06-27 23:32:41
[2026-06-27 23:32:42,203.203 INFO    ] 2026-06-27 23:32:42
[2026-06-27 23:32:42,232.232 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:32:42,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:32:42,425.425 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:32:42,557.557 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:32:42,623.623 INFO    ] time= 27/06/2026 23:32:42
[2026-06-27 23:32:42,647.647 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:32:42,653.653 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:32:42,720.720 INFO    ] No existing commands found in stream
[2026-06-27 23:32:47,729.729 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:32:47,732.732 INFO    ] Waiting 2.36 seconds before fallback handling...
[2026-06-27 23:32:50,456.456 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 23:32:50,458.458 INFO    ] Checking for system updates...
[2026-06-27 23:32:50,495.495 INFO    ] 200
[2026-06-27 23:32:50,497.497 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:32:50,539.539 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:32:50,541.541 INFO    ] No update needed
[2026-06-27 23:32:50,542.542 INFO    ] Checking for camera pi updates...
[2026-06-27 23:32:50,562.562 INFO    ] 200
[2026-06-27 23:32:50,563.563 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:32:50,587.587 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:32:50,630.630 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:32:50,632.632 INFO    ] No camera update needed
[2026-06-27 23:32:50,633.633 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:32:50,635.635 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:32:50,638.638 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:32:50,640.640 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:32:52,678.678 INFO    ] ================================================
[2026-06-27 23:32:52,695.695 INFO    ] Launching Daemon at Sat Jun 27 23:32:52 IST 2026
[2026-06-27 23:32:52,707.707 INFO    ] ================================================
[2026-06-27 23:32:53,055.055 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:32:53
[2026-06-27 23:32:53,375.375 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:32:53,508.508 INFO    ] Initializing speech engine...
[2026-06-27 23:32:53,516.516 INFO    ] 2026-06-27 23:32:53
[2026-06-27 23:32:53,731.731 INFO    ] 2026-06-27 23:32:53
[2026-06-27 23:32:53,760.760 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:32:53,944.944 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:32:53,953.953 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:32:54,113.113 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:32:54,163.163 INFO    ] time= 27/06/2026 23:32:54
[2026-06-27 23:32:54,174.174 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:32:54,180.180 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:32:54,246.246 INFO    ] No existing commands found in stream
[2026-06-27 23:32:59,256.256 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:32:59,258.258 INFO    ] Waiting 2.29 seconds before fallback handling...
[2026-06-27 23:33:01,974.974 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:33:01,977.977 INFO    ] Checking for system updates...
[2026-06-27 23:33:02,019.019 INFO    ] 200
[2026-06-27 23:33:02,022.022 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:33:02,074.074 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:33:02,076.076 INFO    ] No update needed
[2026-06-27 23:33:02,078.078 INFO    ] Checking for camera pi updates...
[2026-06-27 23:33:02,120.120 INFO    ] 200
[2026-06-27 23:33:02,122.122 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:33:02,180.180 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:33:02,214.214 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:33:02,216.216 INFO    ] No camera update needed
[2026-06-27 23:33:02,218.218 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:33:02,220.220 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:33:02,225.225 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:33:02,229.229 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:33:04,269.269 INFO    ] ================================================
[2026-06-27 23:33:04,285.285 INFO    ] Launching Daemon at Sat Jun 27 23:33:04 IST 2026
[2026-06-27 23:33:04,297.297 INFO    ] ================================================
[2026-06-27 23:33:04,655.655 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:33:04
[2026-06-27 23:33:04,974.974 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:33:05,114.114 INFO    ] Initializing speech engine...
[2026-06-27 23:33:05,124.124 INFO    ] 2026-06-27 23:33:05
[2026-06-27 23:33:05,330.330 INFO    ] 2026-06-27 23:33:05
[2026-06-27 23:33:05,361.361 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:33:05,515.515 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:33:05,563.563 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:33:05,706.706 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:33:05,768.768 INFO    ] time= 27/06/2026 23:33:05
[2026-06-27 23:33:05,806.806 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:33:05,818.818 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:33:05,895.895 INFO    ] No existing commands found in stream
[2026-06-27 23:33:10,903.903 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:33:10,905.905 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-27 23:33:12,589.589 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 23:33:12,591.591 INFO    ] Checking for system updates...
[2026-06-27 23:33:12,614.614 INFO    ] 200
[2026-06-27 23:33:12,616.616 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:33:12,652.652 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:33:12,653.653 INFO    ] No update needed
[2026-06-27 23:33:12,655.655 INFO    ] Checking for camera pi updates...
[2026-06-27 23:33:12,680.680 INFO    ] 200
[2026-06-27 23:33:12,682.682 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:33:12,715.715 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:33:12,759.759 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:33:12,761.761 INFO    ] No camera update needed
[2026-06-27 23:33:12,763.763 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:33:12,764.764 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:33:12,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:33:12,772.772 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:33:14,797.797 INFO    ] ================================================
[2026-06-27 23:33:14,805.805 INFO    ] Launching Daemon at Sat Jun 27 23:33:14 IST 2026
[2026-06-27 23:33:14,811.811 INFO    ] ================================================
[2026-06-27 23:33:15,119.119 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:33:15
[2026-06-27 23:33:15,438.438 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:33:15,604.604 INFO    ] Initializing speech engine...
[2026-06-27 23:33:15,610.610 INFO    ] 2026-06-27 23:33:15
[2026-06-27 23:33:15,821.821 INFO    ] 2026-06-27 23:33:15
[2026-06-27 23:33:15,849.849 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:33:16,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:33:16,046.046 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:33:16,173.173 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:33:16,243.243 INFO    ] time= 27/06/2026 23:33:16
[2026-06-27 23:33:16,267.267 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:33:16,274.274 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:33:16,339.339 INFO    ] No existing commands found in stream
[2026-06-27 23:33:21,349.349 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:33:21,352.352 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-27 23:33:23,769.769 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 23:33:23,770.770 INFO    ] Checking for system updates...
[2026-06-27 23:33:23,792.792 INFO    ] 200
[2026-06-27 23:33:23,793.793 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:33:23,826.826 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:33:23,827.827 INFO    ] No update needed
[2026-06-27 23:33:23,829.829 INFO    ] Checking for camera pi updates...
[2026-06-27 23:33:23,848.848 INFO    ] 200
[2026-06-27 23:33:23,849.849 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:33:23,874.874 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:33:23,920.920 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:33:23,921.921 INFO    ] No camera update needed
[2026-06-27 23:33:23,922.922 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:33:23,924.924 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:33:23,927.927 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:33:23,929.929 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:33:25,971.971 INFO    ] ================================================
[2026-06-27 23:33:25,987.987 INFO    ] Launching Daemon at Sat Jun 27 23:33:25 IST 2026
[2026-06-27 23:33:26,998.998 INFO    ] ================================================
[2026-06-27 23:33:26,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:33:26
[2026-06-27 23:33:26,722.722 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:33:26,878.878 INFO    ] Initializing speech engine...
[2026-06-27 23:33:26,884.884 INFO    ] 2026-06-27 23:33:26
[2026-06-27 23:33:27,093.093 INFO    ] 2026-06-27 23:33:27
[2026-06-27 23:33:27,122.122 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:33:27,309.309 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:33:27,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:33:27,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:33:27,519.519 INFO    ] time= 27/06/2026 23:33:27
[2026-06-27 23:33:27,543.543 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:33:27,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:33:27,618.618 INFO    ] No existing commands found in stream
[2026-06-27 23:33:32,631.631 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:33:32,633.633 INFO    ] Waiting 2.67 seconds before fallback handling...
[2026-06-27 23:33:35,744.744 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:33:35,745.745 INFO    ] Checking for system updates...
[2026-06-27 23:33:35,767.767 INFO    ] 200
[2026-06-27 23:33:35,768.768 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:33:35,800.800 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:33:35,801.801 INFO    ] No update needed
[2026-06-27 23:33:35,802.802 INFO    ] Checking for camera pi updates...
[2026-06-27 23:33:35,824.824 INFO    ] 200
[2026-06-27 23:33:35,825.825 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:33:35,855.855 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:33:35,904.904 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:33:35,905.905 INFO    ] No camera update needed
[2026-06-27 23:33:35,907.907 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:33:35,908.908 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:33:35,911.911 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:33:35,914.914 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:33:37,955.955 INFO    ] ================================================
[2026-06-27 23:33:37,970.970 INFO    ] Launching Daemon at Sat Jun 27 23:33:37 IST 2026
[2026-06-27 23:33:37,981.981 INFO    ] ================================================
[2026-06-27 23:33:38,345.345 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:33:38
[2026-06-27 23:33:38,687.687 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:33:38,840.840 INFO    ] Initializing speech engine...
[2026-06-27 23:33:38,846.846 INFO    ] 2026-06-27 23:33:38
[2026-06-27 23:33:39,058.058 INFO    ] 2026-06-27 23:33:39
[2026-06-27 23:33:39,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:33:39,272.272 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:33:39,284.284 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:33:39,431.431 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:33:39,480.480 INFO    ] time= 27/06/2026 23:33:39
[2026-06-27 23:33:39,502.502 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:33:39,508.508 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:33:39,576.576 INFO    ] No existing commands found in stream
[2026-06-27 23:33:44,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:33:44,609.609 INFO    ] Waiting 3.53 seconds before fallback handling...
[2026-06-27 23:33:48,569.569 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:33:48,571.571 INFO    ] Checking for system updates...
[2026-06-27 23:33:48,592.592 INFO    ] 200
[2026-06-27 23:33:48,594.594 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:33:48,635.635 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:33:48,636.636 INFO    ] No update needed
[2026-06-27 23:33:48,637.637 INFO    ] Checking for camera pi updates...
[2026-06-27 23:33:48,660.660 INFO    ] 200
[2026-06-27 23:33:48,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:33:48,686.686 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:33:48,727.727 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:33:48,729.729 INFO    ] No camera update needed
[2026-06-27 23:33:48,730.730 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:33:48,732.732 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:33:48,735.735 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:33:48,738.738 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:33:50,779.779 INFO    ] ================================================
[2026-06-27 23:33:50,796.796 INFO    ] Launching Daemon at Sat Jun 27 23:33:50 IST 2026
[2026-06-27 23:33:50,807.807 INFO    ] ================================================
[2026-06-27 23:33:51,170.170 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:33:51
[2026-06-27 23:33:51,489.489 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:33:51,634.634 INFO    ] Initializing speech engine...
[2026-06-27 23:33:51,639.639 INFO    ] 2026-06-27 23:33:51
[2026-06-27 23:33:51,844.844 INFO    ] 2026-06-27 23:33:51
[2026-06-27 23:33:51,873.873 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:33:52,057.057 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:33:52,066.066 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:33:52,212.212 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:33:52,265.265 INFO    ] time= 27/06/2026 23:33:52
[2026-06-27 23:33:52,288.288 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:33:52,294.294 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:33:52,362.362 INFO    ] No existing commands found in stream
[2026-06-27 23:33:57,371.371 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:33:57,374.374 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-27 23:34:00,309.309 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 23:34:00,310.310 INFO    ] Checking for system updates...
[2026-06-27 23:34:00,333.333 INFO    ] 200
[2026-06-27 23:34:00,334.334 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:34:00,365.365 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:34:00,366.366 INFO    ] No update needed
[2026-06-27 23:34:00,368.368 INFO    ] Checking for camera pi updates...
[2026-06-27 23:34:00,387.387 INFO    ] 200
[2026-06-27 23:34:00,388.388 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:34:00,411.411 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:34:00,458.458 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:34:00,461.461 INFO    ] No camera update needed
[2026-06-27 23:34:00,463.463 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:34:00,466.466 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:34:00,471.471 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:34:00,477.477 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:34:02,504.504 INFO    ] ================================================
[2026-06-27 23:34:02,513.513 INFO    ] Launching Daemon at Sat Jun 27 23:34:02 IST 2026
[2026-06-27 23:34:02,519.519 INFO    ] ================================================
[2026-06-27 23:34:02,898.898 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:34:02
[2026-06-27 23:34:03,239.239 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:34:03,394.394 INFO    ] Initializing speech engine...
[2026-06-27 23:34:03,399.399 INFO    ] 2026-06-27 23:34:03
[2026-06-27 23:34:03,606.606 INFO    ] 2026-06-27 23:34:03
[2026-06-27 23:34:03,636.636 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:34:03,820.820 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:34:03,831.831 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:34:04,023.023 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:34:04,050.050 INFO    ] time= 27/06/2026 23:34:04
[2026-06-27 23:34:04,057.057 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:34:04,058.058 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:34:04,124.124 INFO    ] No existing commands found in stream
[2026-06-27 23:34:09,135.135 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:34:09,139.139 INFO    ] Waiting 1.32 seconds before fallback handling...
[2026-06-27 23:34:10,848.848 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:34:10,849.849 INFO    ] Checking for system updates...
[2026-06-27 23:34:10,872.872 INFO    ] 200
[2026-06-27 23:34:10,874.874 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:34:10,907.907 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:34:10,909.909 INFO    ] No update needed
[2026-06-27 23:34:10,910.910 INFO    ] Checking for camera pi updates...
[2026-06-27 23:34:10,933.933 INFO    ] 200
[2026-06-27 23:34:10,934.934 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:34:10,959.959 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:34:11,010.010 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:34:11,011.011 INFO    ] No camera update needed
[2026-06-27 23:34:11,013.013 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:34:11,014.014 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:34:11,017.017 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:34:11,020.020 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:34:13,059.059 INFO    ] ================================================
[2026-06-27 23:34:13,074.074 INFO    ] Launching Daemon at Sat Jun 27 23:34:13 IST 2026
[2026-06-27 23:34:13,086.086 INFO    ] ================================================
[2026-06-27 23:34:13,422.422 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:34:13
[2026-06-27 23:34:13,733.733 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:34:13,876.876 INFO    ] Initializing speech engine...
[2026-06-27 23:34:13,881.881 INFO    ] 2026-06-27 23:34:13
[2026-06-27 23:34:14,084.084 INFO    ] 2026-06-27 23:34:14
[2026-06-27 23:34:14,113.113 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:34:14,232.232 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:34:14,234.234 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:34:14,379.379 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:34:14,431.431 INFO    ] time= 27/06/2026 23:34:14
[2026-06-27 23:34:14,461.461 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:34:14,510.510 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:34:14,599.599 INFO    ] No existing commands found in stream
[2026-06-27 23:34:19,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:34:19,612.612 INFO    ] Waiting 1.06 seconds before fallback handling...
[2026-06-27 23:34:21,070.070 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:34:21,071.071 INFO    ] Checking for system updates...
[2026-06-27 23:34:21,092.092 INFO    ] 200
[2026-06-27 23:34:21,093.093 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:34:21,123.123 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:34:21,125.125 INFO    ] No update needed
[2026-06-27 23:34:21,126.126 INFO    ] Checking for camera pi updates...
[2026-06-27 23:34:21,147.147 INFO    ] 200
[2026-06-27 23:34:21,148.148 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:34:21,172.172 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:34:21,315.315 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:34:21,316.316 INFO    ] No camera update needed
[2026-06-27 23:34:21,317.317 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:34:21,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:34:21,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:34:21,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:34:23,364.364 INFO    ] ================================================
[2026-06-27 23:34:23,379.379 INFO    ] Launching Daemon at Sat Jun 27 23:34:23 IST 2026
[2026-06-27 23:34:23,391.391 INFO    ] ================================================
[2026-06-27 23:34:23,753.753 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:34:23
[2026-06-27 23:34:24,068.068 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:34:24,210.210 INFO    ] Initializing speech engine...
[2026-06-27 23:34:24,215.215 INFO    ] 2026-06-27 23:34:24
[2026-06-27 23:34:24,419.419 INFO    ] 2026-06-27 23:34:24
[2026-06-27 23:34:24,447.447 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:34:24,630.630 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:34:24,640.640 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:34:24,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:34:24,850.850 INFO    ] time= 27/06/2026 23:34:24
[2026-06-27 23:34:24,861.861 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:34:24,867.867 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:34:24,933.933 INFO    ] No existing commands found in stream
[2026-06-27 23:34:29,944.944 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:34:29,947.947 INFO    ] Waiting 0.23 seconds before fallback handling...
[2026-06-27 23:34:31,140.140 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 23:34:31,143.143 INFO    ] Checking for system updates...
[2026-06-27 23:34:31,189.189 INFO    ] 200
[2026-06-27 23:34:31,192.192 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:34:31,245.245 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:34:31,246.246 INFO    ] No update needed
[2026-06-27 23:34:31,248.248 INFO    ] Checking for camera pi updates...
[2026-06-27 23:34:31,270.270 INFO    ] 200
[2026-06-27 23:34:31,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:34:31,302.302 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:34:31,342.342 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:34:31,344.344 INFO    ] No camera update needed
[2026-06-27 23:34:31,346.346 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:34:31,347.347 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:34:31,351.351 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:34:31,355.355 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:34:33,388.388 INFO    ] ================================================
[2026-06-27 23:34:33,405.405 INFO    ] Launching Daemon at Sat Jun 27 23:34:33 IST 2026
[2026-06-27 23:34:33,416.416 INFO    ] ================================================
[2026-06-27 23:34:33,783.783 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:34:33
[2026-06-27 23:34:34,097.097 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:34:34,227.227 INFO    ] Initializing speech engine...
[2026-06-27 23:34:34,230.230 INFO    ] 2026-06-27 23:34:34
[2026-06-27 23:34:34,448.448 INFO    ] 2026-06-27 23:34:34
[2026-06-27 23:34:34,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:34:34,661.661 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:34:34,669.669 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:34:34,810.810 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:34:34,874.874 INFO    ] time= 27/06/2026 23:34:34
[2026-06-27 23:34:34,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:34:34,903.903 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:34:34,975.975 INFO    ] No existing commands found in stream
[2026-06-27 23:34:39,984.984 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:34:39,987.987 INFO    ] Waiting 2.49 seconds before fallback handling...
[2026-06-27 23:34:42,887.887 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 23:34:42,888.888 INFO    ] Checking for system updates...
[2026-06-27 23:34:42,910.910 INFO    ] 200
[2026-06-27 23:34:42,911.911 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:34:42,942.942 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:34:42,943.943 INFO    ] No update needed
[2026-06-27 23:34:42,944.944 INFO    ] Checking for camera pi updates...
[2026-06-27 23:34:42,966.966 INFO    ] 200
[2026-06-27 23:34:42,967.967 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:34:42,990.990 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:34:43,035.035 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:34:43,037.037 INFO    ] No camera update needed
[2026-06-27 23:34:43,038.038 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:34:43,039.039 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:34:43,042.042 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:34:43,045.045 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:34:45,087.087 INFO    ] ================================================
[2026-06-27 23:34:45,103.103 INFO    ] Launching Daemon at Sat Jun 27 23:34:45 IST 2026
[2026-06-27 23:34:45,114.114 INFO    ] ================================================
[2026-06-27 23:34:45,485.485 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:34:45
[2026-06-27 23:34:45,822.822 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:34:45,974.974 INFO    ] Initializing speech engine...
[2026-06-27 23:34:45,979.979 INFO    ] 2026-06-27 23:34:45
[2026-06-27 23:34:46,188.188 INFO    ] 2026-06-27 23:34:46
[2026-06-27 23:34:46,217.217 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:34:46,406.406 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:34:46,419.419 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:34:46,564.564 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:34:46,617.617 INFO    ] time= 27/06/2026 23:34:46
[2026-06-27 23:34:46,641.641 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:34:46,647.647 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:34:46,716.716 INFO    ] No existing commands found in stream
[2026-06-27 23:34:51,726.726 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:34:51,729.729 INFO    ] Waiting 0.29 seconds before fallback handling...
[2026-06-27 23:34:52,454.454 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:34:52,456.456 INFO    ] Checking for system updates...
[2026-06-27 23:34:52,477.477 INFO    ] 200
[2026-06-27 23:34:52,478.478 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:34:52,508.508 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:34:52,509.509 INFO    ] No update needed
[2026-06-27 23:34:52,511.511 INFO    ] Checking for camera pi updates...
[2026-06-27 23:34:52,530.530 INFO    ] 200
[2026-06-27 23:34:52,531.531 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:34:52,556.556 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:34:52,597.597 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:34:52,599.599 INFO    ] No camera update needed
[2026-06-27 23:34:52,600.600 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:34:52,601.601 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:34:52,604.604 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:34:52,607.607 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:34:54,647.647 INFO    ] ================================================
[2026-06-27 23:34:54,662.662 INFO    ] Launching Daemon at Sat Jun 27 23:34:54 IST 2026
[2026-06-27 23:34:54,673.673 INFO    ] ================================================
[2026-06-27 23:34:55,005.005 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:34:55
[2026-06-27 23:34:55,319.319 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:34:55,456.456 INFO    ] Initializing speech engine...
[2026-06-27 23:34:55,466.466 INFO    ] 2026-06-27 23:34:55
[2026-06-27 23:34:55,668.668 INFO    ] 2026-06-27 23:34:55
[2026-06-27 23:34:55,697.697 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:34:55,882.882 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:34:55,891.891 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:34:56,020.020 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:34:56,087.087 INFO    ] time= 27/06/2026 23:34:56
[2026-06-27 23:34:56,111.111 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:34:56,117.117 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:34:56,184.184 INFO    ] No existing commands found in stream
[2026-06-27 23:35:01,211.211 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:35:01,215.215 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-27 23:35:04,788.788 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 23:35:04,790.790 INFO    ] Checking for system updates...
[2026-06-27 23:35:04,811.811 INFO    ] 200
[2026-06-27 23:35:04,813.813 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:35:04,844.844 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:35:04,846.846 INFO    ] No update needed
[2026-06-27 23:35:04,847.847 INFO    ] Checking for camera pi updates...
[2026-06-27 23:35:04,867.867 INFO    ] 200
[2026-06-27 23:35:04,868.868 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:35:04,891.891 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:35:04,938.938 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:35:04,940.940 INFO    ] No camera update needed
[2026-06-27 23:35:04,941.941 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:35:04,942.942 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:35:04,945.945 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:35:04,948.948 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:35:06,986.986 INFO    ] ================================================
[2026-06-27 23:35:07,002.002 INFO    ] Launching Daemon at Sat Jun 27 23:35:06 IST 2026
[2026-06-27 23:35:07,013.013 INFO    ] ================================================
[2026-06-27 23:35:07,387.387 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:35:07
[2026-06-27 23:35:07,723.723 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:35:07,867.867 INFO    ] Initializing speech engine...
[2026-06-27 23:35:07,878.878 INFO    ] 2026-06-27 23:35:07
[2026-06-27 23:35:08,087.087 INFO    ] 2026-06-27 23:35:08
[2026-06-27 23:35:08,116.116 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:35:08,250.250 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:35:08,304.304 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:35:08,435.435 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:35:08,485.485 INFO    ] time= 27/06/2026 23:35:08
[2026-06-27 23:35:08,526.526 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:35:08,537.537 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:35:08,609.609 INFO    ] No existing commands found in stream
[2026-06-27 23:35:13,628.628 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:35:13,631.631 INFO    ] Waiting 2.03 seconds before fallback handling...
[2026-06-27 23:35:16,092.092 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:35:16,094.094 INFO    ] Checking for system updates...
[2026-06-27 23:35:16,116.116 INFO    ] 200
[2026-06-27 23:35:16,117.117 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:35:16,147.147 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:35:16,148.148 INFO    ] No update needed
[2026-06-27 23:35:16,150.150 INFO    ] Checking for camera pi updates...
[2026-06-27 23:35:16,169.169 INFO    ] 200
[2026-06-27 23:35:16,170.170 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:35:16,194.194 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:35:16,237.237 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:35:16,238.238 INFO    ] No camera update needed
[2026-06-27 23:35:16,239.239 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:35:16,241.241 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:35:16,244.244 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:35:16,247.247 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:35:18,286.286 INFO    ] ================================================
[2026-06-27 23:35:18,301.301 INFO    ] Launching Daemon at Sat Jun 27 23:35:18 IST 2026
[2026-06-27 23:35:18,312.312 INFO    ] ================================================
[2026-06-27 23:35:18,688.688 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:35:18
[2026-06-27 23:35:19,027.027 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:35:19,177.177 INFO    ] Initializing speech engine...
[2026-06-27 23:35:19,183.183 INFO    ] 2026-06-27 23:35:19
[2026-06-27 23:35:19,390.390 INFO    ] 2026-06-27 23:35:19
[2026-06-27 23:35:19,420.420 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:35:19,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:35:19,614.614 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:35:19,754.754 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:35:19,810.810 INFO    ] time= 27/06/2026 23:35:19
[2026-06-27 23:35:19,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:35:19,841.841 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:35:19,908.908 INFO    ] No existing commands found in stream
[2026-06-27 23:35:24,932.932 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:35:24,936.936 INFO    ] Waiting 1.75 seconds before fallback handling...
[2026-06-27 23:35:27,097.097 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 23:35:27,098.098 INFO    ] Checking for system updates...
[2026-06-27 23:35:27,119.119 INFO    ] 200
[2026-06-27 23:35:27,120.120 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:35:27,155.155 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:35:27,156.156 INFO    ] No update needed
[2026-06-27 23:35:27,158.158 INFO    ] Checking for camera pi updates...
[2026-06-27 23:35:27,177.177 INFO    ] 200
[2026-06-27 23:35:27,178.178 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:35:27,202.202 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:35:27,253.253 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:35:27,255.255 INFO    ] No camera update needed
[2026-06-27 23:35:27,256.256 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:35:27,257.257 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:35:27,260.260 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:35:27,263.263 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:35:29,301.301 INFO    ] ================================================
[2026-06-27 23:35:29,317.317 INFO    ] Launching Daemon at Sat Jun 27 23:35:29 IST 2026
[2026-06-27 23:35:29,329.329 INFO    ] ================================================
[2026-06-27 23:35:29,670.670 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:35:29
[2026-06-27 23:35:29,981.981 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:35:30,117.117 INFO    ] Initializing speech engine...
[2026-06-27 23:35:30,128.128 INFO    ] 2026-06-27 23:35:30
[2026-06-27 23:35:30,333.333 INFO    ] 2026-06-27 23:35:30
[2026-06-27 23:35:30,362.362 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:35:30,555.555 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:35:30,569.569 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:35:30,692.692 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:35:30,749.749 INFO    ] time= 27/06/2026 23:35:30
[2026-06-27 23:35:30,773.773 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:35:30,778.778 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:35:30,847.847 INFO    ] No existing commands found in stream
[2026-06-27 23:35:35,855.855 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:35:35,858.858 INFO    ] Waiting 0.42 seconds before fallback handling...
[2026-06-27 23:35:36,673.673 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 23:35:36,674.674 INFO    ] Checking for system updates...
[2026-06-27 23:35:36,695.695 INFO    ] 200
[2026-06-27 23:35:36,697.697 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:35:36,727.727 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:35:36,728.728 INFO    ] No update needed
[2026-06-27 23:35:36,729.729 INFO    ] Checking for camera pi updates...
[2026-06-27 23:35:36,748.748 INFO    ] 200
[2026-06-27 23:35:36,750.750 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:35:36,775.775 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:35:36,819.819 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:35:36,820.820 INFO    ] No camera update needed
[2026-06-27 23:35:36,821.821 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:35:36,823.823 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:35:36,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:35:36,829.829 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:35:38,870.870 INFO    ] ================================================
[2026-06-27 23:35:38,886.886 INFO    ] Launching Daemon at Sat Jun 27 23:35:38 IST 2026
[2026-06-27 23:35:38,896.896 INFO    ] ================================================
[2026-06-27 23:35:39,233.233 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:35:39
[2026-06-27 23:35:39,550.550 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:35:39,732.732 INFO    ] Initializing speech engine...
[2026-06-27 23:35:39,741.741 INFO    ] 2026-06-27 23:35:39
[2026-06-27 23:35:39,950.950 INFO    ] 2026-06-27 23:35:39
[2026-06-27 23:35:39,978.978 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:35:40,163.163 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:35:40,171.171 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:35:40,302.302 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:35:40,370.370 INFO    ] time= 27/06/2026 23:35:40
[2026-06-27 23:35:40,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:35:40,400.400 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:35:40,467.467 INFO    ] No existing commands found in stream
[2026-06-27 23:35:45,475.475 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:35:45,478.478 INFO    ] Waiting 0.66 seconds before fallback handling...
[2026-06-27 23:35:46,552.552 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 23:35:46,554.554 INFO    ] Checking for system updates...
[2026-06-27 23:35:46,576.576 INFO    ] 200
[2026-06-27 23:35:46,577.577 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:35:46,607.607 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:35:46,609.609 INFO    ] No update needed
[2026-06-27 23:35:46,610.610 INFO    ] Checking for camera pi updates...
[2026-06-27 23:35:46,632.632 INFO    ] 200
[2026-06-27 23:35:46,633.633 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:35:46,657.657 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:35:46,700.700 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:35:46,701.701 INFO    ] No camera update needed
[2026-06-27 23:35:46,702.702 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:35:46,704.704 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:35:46,707.707 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:35:46,709.709 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:35:48,749.749 INFO    ] ================================================
[2026-06-27 23:35:48,765.765 INFO    ] Launching Daemon at Sat Jun 27 23:35:48 IST 2026
[2026-06-27 23:35:48,777.777 INFO    ] ================================================
[2026-06-27 23:35:49,113.113 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:35:49
[2026-06-27 23:35:49,426.426 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:35:49,555.555 INFO    ] Initializing speech engine...
[2026-06-27 23:35:49,564.564 INFO    ] 2026-06-27 23:35:49
[2026-06-27 23:35:49,775.775 INFO    ] 2026-06-27 23:35:49
[2026-06-27 23:35:49,805.805 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:35:49,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:35:49,999.999 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:35:50,129.129 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:35:50,196.196 INFO    ] time= 27/06/2026 23:35:50
[2026-06-27 23:35:50,219.219 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:35:50,226.226 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:35:50,293.293 INFO    ] No existing commands found in stream
[2026-06-27 23:35:55,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:35:55,309.309 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-27 23:35:58,391.391 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:35:58,392.392 INFO    ] Checking for system updates...
[2026-06-27 23:35:58,415.415 INFO    ] 200
[2026-06-27 23:35:58,416.416 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:35:58,446.446 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:35:58,448.448 INFO    ] No update needed
[2026-06-27 23:35:58,449.449 INFO    ] Checking for camera pi updates...
[2026-06-27 23:35:58,469.469 INFO    ] 200
[2026-06-27 23:35:58,470.470 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:35:58,495.495 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:35:58,544.544 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:35:58,545.545 INFO    ] No camera update needed
[2026-06-27 23:35:58,546.546 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:35:58,548.548 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:35:58,551.551 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:35:58,553.553 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:36:00,594.594 INFO    ] ================================================
[2026-06-27 23:36:00,610.610 INFO    ] Launching Daemon at Sat Jun 27 23:36:00 IST 2026
[2026-06-27 23:36:00,621.621 INFO    ] ================================================
[2026-06-27 23:36:00,980.980 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:36:00
[2026-06-27 23:36:01,297.297 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:36:01,431.431 INFO    ] Initializing speech engine...
[2026-06-27 23:36:01,434.434 INFO    ] 2026-06-27 23:36:01
[2026-06-27 23:36:01,627.627 INFO    ] 2026-06-27 23:36:01
[2026-06-27 23:36:01,672.672 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:36:01,835.835 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:36:01,877.877 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:36:02,044.044 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:36:02,059.059 INFO    ] time= 27/06/2026 23:36:02
[2026-06-27 23:36:02,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:36:02,077.077 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:36:02,197.197 INFO    ] No existing commands found in stream
[2026-06-27 23:36:07,207.207 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:36:07,209.209 INFO    ] Waiting 1.31 seconds before fallback handling...
[2026-06-27 23:36:08,883.883 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:36:08,884.884 INFO    ] Checking for system updates...
[2026-06-27 23:36:08,906.906 INFO    ] 200
[2026-06-27 23:36:08,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:36:08,938.938 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:36:08,940.940 INFO    ] No update needed
[2026-06-27 23:36:08,941.941 INFO    ] Checking for camera pi updates...
[2026-06-27 23:36:08,961.961 INFO    ] 200
[2026-06-27 23:36:08,963.963 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:36:08,986.986 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:36:09,028.028 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:36:09,029.029 INFO    ] No camera update needed
[2026-06-27 23:36:09,030.030 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:36:09,031.031 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:36:09,035.035 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:36:09,037.037 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:36:11,076.076 INFO    ] ================================================
[2026-06-27 23:36:11,092.092 INFO    ] Launching Daemon at Sat Jun 27 23:36:11 IST 2026
[2026-06-27 23:36:11,103.103 INFO    ] ================================================
[2026-06-27 23:36:11,446.446 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:36:11
[2026-06-27 23:36:11,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:36:11,905.905 INFO    ] Initializing speech engine...
[2026-06-27 23:36:11,911.911 INFO    ] 2026-06-27 23:36:11
[2026-06-27 23:36:12,114.114 INFO    ] 2026-06-27 23:36:12
[2026-06-27 23:36:12,142.142 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:36:12,326.326 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:36:12,334.334 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:36:12,479.479 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:36:12,530.530 INFO    ] time= 27/06/2026 23:36:12
[2026-06-27 23:36:12,554.554 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:36:12,559.559 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:36:12,650.650 INFO    ] No existing commands found in stream
[2026-06-27 23:36:17,664.664 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:36:17,667.667 INFO    ] Waiting 2.31 seconds before fallback handling...
[2026-06-27 23:36:20,368.368 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 23:36:20,369.369 INFO    ] Checking for system updates...
[2026-06-27 23:36:20,390.390 INFO    ] 200
[2026-06-27 23:36:20,392.392 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:36:20,422.422 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:36:20,423.423 INFO    ] No update needed
[2026-06-27 23:36:20,425.425 INFO    ] Checking for camera pi updates...
[2026-06-27 23:36:20,446.446 INFO    ] 200
[2026-06-27 23:36:20,447.447 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:36:20,470.470 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:36:20,515.515 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:36:20,516.516 INFO    ] No camera update needed
[2026-06-27 23:36:20,518.518 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:36:20,519.519 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:36:20,522.522 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:36:20,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:36:22,563.563 INFO    ] ================================================
[2026-06-27 23:36:22,579.579 INFO    ] Launching Daemon at Sat Jun 27 23:36:22 IST 2026
[2026-06-27 23:36:22,590.590 INFO    ] ================================================
[2026-06-27 23:36:22,956.956 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:36:22
[2026-06-27 23:36:23,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:36:23,406.406 INFO    ] Initializing speech engine...
[2026-06-27 23:36:23,416.416 INFO    ] 2026-06-27 23:36:23
[2026-06-27 23:36:23,622.622 INFO    ] 2026-06-27 23:36:23
[2026-06-27 23:36:23,650.650 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:36:23,833.833 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:36:23,839.839 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:36:23,977.977 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:36:24,045.045 INFO    ] time= 27/06/2026 23:36:23
[2026-06-27 23:36:24,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:36:24,075.075 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:36:24,143.143 INFO    ] No existing commands found in stream
[2026-06-27 23:36:29,172.172 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:36:29,175.175 INFO    ] Waiting 3.88 seconds before fallback handling...
[2026-06-27 23:36:33,457.457 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 23:36:33,458.458 INFO    ] Checking for system updates...
[2026-06-27 23:36:33,481.481 INFO    ] 200
[2026-06-27 23:36:33,483.483 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:36:33,513.513 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:36:33,515.515 INFO    ] No update needed
[2026-06-27 23:36:33,516.516 INFO    ] Checking for camera pi updates...
[2026-06-27 23:36:33,535.535 INFO    ] 200
[2026-06-27 23:36:33,537.537 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:36:33,563.563 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:36:33,611.611 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:36:33,612.612 INFO    ] No camera update needed
[2026-06-27 23:36:33,613.613 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:36:33,615.615 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:36:33,618.618 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:36:33,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:36:35,659.659 INFO    ] ================================================
[2026-06-27 23:36:35,675.675 INFO    ] Launching Daemon at Sat Jun 27 23:36:35 IST 2026
[2026-06-27 23:36:35,686.686 INFO    ] ================================================
[2026-06-27 23:36:36,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:36:36
[2026-06-27 23:36:36,362.362 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:36:36,505.505 INFO    ] Initializing speech engine...
[2026-06-27 23:36:36,510.510 INFO    ] 2026-06-27 23:36:36
[2026-06-27 23:36:36,714.714 INFO    ] 2026-06-27 23:36:36
[2026-06-27 23:36:36,742.742 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:36:36,927.927 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:36:36,936.936 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:36:37,080.080 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:36:37,133.133 INFO    ] time= 27/06/2026 23:36:37
[2026-06-27 23:36:37,156.156 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:36:37,162.162 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:36:37,228.228 INFO    ] No existing commands found in stream
[2026-06-27 23:36:42,237.237 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:36:42,240.240 INFO    ] Waiting 2.32 seconds before fallback handling...
[2026-06-27 23:36:44,967.967 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:36:44,969.969 INFO    ] Checking for system updates...
[2026-06-27 23:36:44,989.989 INFO    ] 200
[2026-06-27 23:36:44,991.991 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:36:45,022.022 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:36:45,024.024 INFO    ] No update needed
[2026-06-27 23:36:45,025.025 INFO    ] Checking for camera pi updates...
[2026-06-27 23:36:45,045.045 INFO    ] 200
[2026-06-27 23:36:45,046.046 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:36:45,069.069 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:36:45,115.115 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:36:45,116.116 INFO    ] No camera update needed
[2026-06-27 23:36:45,118.118 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:36:45,119.119 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:36:45,122.122 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:36:45,124.124 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:36:47,163.163 INFO    ] ================================================
[2026-06-27 23:36:47,179.179 INFO    ] Launching Daemon at Sat Jun 27 23:36:47 IST 2026
[2026-06-27 23:36:47,190.190 INFO    ] ================================================
[2026-06-27 23:36:47,572.572 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:36:47
[2026-06-27 23:36:47,907.907 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:36:48,062.062 INFO    ] Initializing speech engine...
[2026-06-27 23:36:48,067.067 INFO    ] 2026-06-27 23:36:48
[2026-06-27 23:36:48,272.272 INFO    ] 2026-06-27 23:36:48
[2026-06-27 23:36:48,301.301 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:36:48,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:36:48,467.467 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:36:48,621.621 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:36:48,645.645 INFO    ] time= 27/06/2026 23:36:48
[2026-06-27 23:36:48,697.697 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:36:48,740.740 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:36:48,826.826 INFO    ] No existing commands found in stream
[2026-06-27 23:36:53,835.835 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:36:53,838.838 INFO    ] Waiting 1.52 seconds before fallback handling...
[2026-06-27 23:36:55,773.773 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 23:36:55,774.774 INFO    ] Checking for system updates...
[2026-06-27 23:36:55,795.795 INFO    ] 200
[2026-06-27 23:36:55,797.797 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:36:55,832.832 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:36:55,834.834 INFO    ] No update needed
[2026-06-27 23:36:55,836.836 INFO    ] Checking for camera pi updates...
[2026-06-27 23:36:55,869.869 INFO    ] 200
[2026-06-27 23:36:55,871.871 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:36:55,905.905 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:36:55,933.933 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:36:55,936.936 INFO    ] No camera update needed
[2026-06-27 23:36:55,938.938 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:36:55,939.939 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:36:55,942.942 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:36:55,945.945 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:36:57,985.985 INFO    ] ================================================
[2026-06-27 23:36:58,001.001 INFO    ] Launching Daemon at Sat Jun 27 23:36:57 IST 2026
[2026-06-27 23:36:58,012.012 INFO    ] ================================================
[2026-06-27 23:36:58,379.379 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:36:58
[2026-06-27 23:36:58,691.691 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:36:58,833.833 INFO    ] Initializing speech engine...
[2026-06-27 23:36:58,836.836 INFO    ] 2026-06-27 23:36:58
[2026-06-27 23:36:59,055.055 INFO    ] 2026-06-27 23:36:59
[2026-06-27 23:36:59,087.087 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:36:59,212.212 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:36:59,275.275 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:36:59,413.413 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:36:59,477.477 INFO    ] time= 27/06/2026 23:36:59
[2026-06-27 23:36:59,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:36:59,509.509 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:36:59,575.575 INFO    ] No existing commands found in stream
[2026-06-27 23:37:04,585.585 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:37:04,588.588 INFO    ] Waiting 3.45 seconds before fallback handling...
[2026-06-27 23:37:08,436.436 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 23:37:08,437.437 INFO    ] Checking for system updates...
[2026-06-27 23:37:08,458.458 INFO    ] 200
[2026-06-27 23:37:08,460.460 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:37:08,493.493 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:37:08,495.495 INFO    ] No update needed
[2026-06-27 23:37:08,496.496 INFO    ] Checking for camera pi updates...
[2026-06-27 23:37:08,517.517 INFO    ] 200
[2026-06-27 23:37:08,518.518 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:37:08,541.541 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:37:08,593.593 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:37:08,594.594 INFO    ] No camera update needed
[2026-06-27 23:37:08,595.595 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:37:08,597.597 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:37:08,600.600 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:37:08,602.602 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:37:10,642.642 INFO    ] ================================================
[2026-06-27 23:37:10,659.659 INFO    ] Launching Daemon at Sat Jun 27 23:37:10 IST 2026
[2026-06-27 23:37:10,670.670 INFO    ] ================================================
[2026-06-27 23:37:11,023.023 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:37:11
[2026-06-27 23:37:11,336.336 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:37:11,467.467 INFO    ] Initializing speech engine...
[2026-06-27 23:37:11,475.475 INFO    ] 2026-06-27 23:37:11
[2026-06-27 23:37:11,689.689 INFO    ] 2026-06-27 23:37:11
[2026-06-27 23:37:11,718.718 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:37:11,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:37:11,908.908 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:37:12,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:37:12,089.089 INFO    ] time= 27/06/2026 23:37:12
[2026-06-27 23:37:12,129.129 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:37:12,140.140 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:37:12,212.212 INFO    ] No existing commands found in stream
[2026-06-27 23:37:17,221.221 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:37:17,224.224 INFO    ] Waiting 3.22 seconds before fallback handling...
[2026-06-27 23:37:20,849.849 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 23:37:20,851.851 INFO    ] Checking for system updates...
[2026-06-27 23:37:20,873.873 INFO    ] 200
[2026-06-27 23:37:20,875.875 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:37:20,905.905 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:37:20,906.906 INFO    ] No update needed
[2026-06-27 23:37:20,908.908 INFO    ] Checking for camera pi updates...
[2026-06-27 23:37:20,927.927 INFO    ] 200
[2026-06-27 23:37:20,929.929 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:37:20,952.952 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:37:20,992.992 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:37:20,993.993 INFO    ] No camera update needed
[2026-06-27 23:37:20,995.995 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:37:20,996.996 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:37:20,999.999 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:37:21,001.001 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:37:23,041.041 INFO    ] ================================================
[2026-06-27 23:37:23,058.058 INFO    ] Launching Daemon at Sat Jun 27 23:37:23 IST 2026
[2026-06-27 23:37:23,071.071 INFO    ] ================================================
[2026-06-27 23:37:23,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:37:23
[2026-06-27 23:37:23,743.743 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:37:23,889.889 INFO    ] Initializing speech engine...
[2026-06-27 23:37:23,893.893 INFO    ] 2026-06-27 23:37:23
[2026-06-27 23:37:24,090.090 INFO    ] 2026-06-27 23:37:24
[2026-06-27 23:37:24,126.126 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:37:24,288.288 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:37:24,335.335 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:37:24,469.469 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:37:24,471.471 INFO    ] time= 27/06/2026 23:37:24
[2026-06-27 23:37:24,472.472 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:37:24,474.474 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:37:24,567.567 INFO    ] No existing commands found in stream
[2026-06-27 23:37:29,579.579 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:37:29,581.581 INFO    ] Waiting 3.67 seconds before fallback handling...
[2026-06-27 23:37:33,677.677 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 23:37:33,679.679 INFO    ] Checking for system updates...
[2026-06-27 23:37:33,700.700 INFO    ] 200
[2026-06-27 23:37:33,701.701 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:37:33,731.731 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:37:33,733.733 INFO    ] No update needed
[2026-06-27 23:37:33,734.734 INFO    ] Checking for camera pi updates...
[2026-06-27 23:37:33,754.754 INFO    ] 200
[2026-06-27 23:37:33,755.755 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:37:33,779.779 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:37:33,821.821 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:37:33,822.822 INFO    ] No camera update needed
[2026-06-27 23:37:33,823.823 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:37:33,825.825 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:37:33,827.827 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:37:33,830.830 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:37:35,872.872 INFO    ] ================================================
[2026-06-27 23:37:35,888.888 INFO    ] Launching Daemon at Sat Jun 27 23:37:35 IST 2026
[2026-06-27 23:37:35,900.900 INFO    ] ================================================
[2026-06-27 23:37:36,270.270 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:37:36
[2026-06-27 23:37:36,587.587 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:37:36,726.726 INFO    ] Initializing speech engine...
[2026-06-27 23:37:36,734.734 INFO    ] 2026-06-27 23:37:36
[2026-06-27 23:37:36,942.942 INFO    ] 2026-06-27 23:37:36
[2026-06-27 23:37:36,972.972 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:37:37,158.158 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:37:37,167.167 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:37:37,296.296 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:37:37,363.363 INFO    ] time= 27/06/2026 23:37:37
[2026-06-27 23:37:37,390.390 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:37:37,396.396 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:37:37,464.464 INFO    ] No existing commands found in stream
[2026-06-27 23:37:42,473.473 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:37:42,476.476 INFO    ] Waiting 0.12 seconds before fallback handling...
[2026-06-27 23:37:42,977.977 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 23:37:42,978.978 INFO    ] Checking for system updates...
[2026-06-27 23:37:42,999.999 INFO    ] 200
[2026-06-27 23:37:43,000.000 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:37:43,031.031 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:37:43,032.032 INFO    ] No update needed
[2026-06-27 23:37:43,034.034 INFO    ] Checking for camera pi updates...
[2026-06-27 23:37:43,055.055 INFO    ] 200
[2026-06-27 23:37:43,056.056 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:37:43,081.081 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:37:43,127.127 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:37:43,128.128 INFO    ] No camera update needed
[2026-06-27 23:37:43,130.130 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:37:43,131.131 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:37:43,134.134 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:37:43,137.137 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:37:45,177.177 INFO    ] ================================================
[2026-06-27 23:37:45,192.192 INFO    ] Launching Daemon at Sat Jun 27 23:37:45 IST 2026
[2026-06-27 23:37:45,204.204 INFO    ] ================================================
[2026-06-27 23:37:45,577.577 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:37:45
[2026-06-27 23:37:45,924.924 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:37:46,077.077 INFO    ] Initializing speech engine...
[2026-06-27 23:37:46,083.083 INFO    ] 2026-06-27 23:37:46
[2026-06-27 23:37:46,286.286 INFO    ] 2026-06-27 23:37:46
[2026-06-27 23:37:46,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:37:46,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:37:46,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:37:46,648.648 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:37:46,705.705 INFO    ] time= 27/06/2026 23:37:46
[2026-06-27 23:37:46,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:37:46,734.734 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:37:46,800.800 INFO    ] No existing commands found in stream
[2026-06-27 23:37:51,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:37:51,817.817 INFO    ] Waiting 3.76 seconds before fallback handling...
[2026-06-27 23:37:55,963.963 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 23:37:55,965.965 INFO    ] Checking for system updates...
[2026-06-27 23:37:55,986.986 INFO    ] 200
[2026-06-27 23:37:55,988.988 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:37:56,021.021 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:37:56,022.022 INFO    ] No update needed
[2026-06-27 23:37:56,024.024 INFO    ] Checking for camera pi updates...
[2026-06-27 23:37:56,044.044 INFO    ] 200
[2026-06-27 23:37:56,045.045 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:37:56,071.071 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:37:56,124.124 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:37:56,126.126 INFO    ] No camera update needed
[2026-06-27 23:37:56,127.127 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:37:56,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:37:56,132.132 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:37:56,135.135 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:37:58,175.175 INFO    ] ================================================
[2026-06-27 23:37:58,191.191 INFO    ] Launching Daemon at Sat Jun 27 23:37:58 IST 2026
[2026-06-27 23:37:58,202.202 INFO    ] ================================================
[2026-06-27 23:37:58,587.587 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:37:58
[2026-06-27 23:37:58,932.932 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:37:59,084.084 INFO    ] Initializing speech engine...
[2026-06-27 23:37:59,089.089 INFO    ] 2026-06-27 23:37:59
[2026-06-27 23:37:59,299.299 INFO    ] 2026-06-27 23:37:59
[2026-06-27 23:37:59,328.328 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:37:59,510.510 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:37:59,514.514 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:37:59,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:37:59,723.723 INFO    ] time= 27/06/2026 23:37:59
[2026-06-27 23:37:59,746.746 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:37:59,752.752 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:37:59,818.818 INFO    ] No existing commands found in stream
[2026-06-27 23:38:04,826.826 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:38:04,829.829 INFO    ] Waiting 3.23 seconds before fallback handling...
[2026-06-27 23:38:08,512.512 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 23:38:08,514.514 INFO    ] Checking for system updates...
[2026-06-27 23:38:08,535.535 INFO    ] 200
[2026-06-27 23:38:08,536.536 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:38:08,570.570 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:38:08,571.571 INFO    ] No update needed
[2026-06-27 23:38:08,573.573 INFO    ] Checking for camera pi updates...
[2026-06-27 23:38:08,593.593 INFO    ] 200
[2026-06-27 23:38:08,595.595 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:38:08,619.619 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:38:08,666.666 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:38:08,667.667 INFO    ] No camera update needed
[2026-06-27 23:38:08,669.669 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:38:08,670.670 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:38:08,673.673 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:38:08,676.676 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:38:10,715.715 INFO    ] ================================================
[2026-06-27 23:38:10,731.731 INFO    ] Launching Daemon at Sat Jun 27 23:38:10 IST 2026
[2026-06-27 23:38:10,743.743 INFO    ] ================================================
[2026-06-27 23:38:11,090.090 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:38:11
[2026-06-27 23:38:11,410.410 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:38:11,545.545 INFO    ] Initializing speech engine...
[2026-06-27 23:38:11,554.554 INFO    ] 2026-06-27 23:38:11
[2026-06-27 23:38:11,782.782 INFO    ] 2026-06-27 23:38:11
[2026-06-27 23:38:11,813.813 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:38:12,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:38:12,016.016 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:38:12,157.157 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:38:12,224.224 INFO    ] time= 27/06/2026 23:38:12
[2026-06-27 23:38:12,248.248 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:38:12,265.265 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:38:12,340.340 INFO    ] No existing commands found in stream
[2026-06-27 23:38:17,351.351 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:38:17,354.354 INFO    ] Waiting 0.58 seconds before fallback handling...
[2026-06-27 23:38:18,336.336 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:38:18,338.338 INFO    ] Checking for system updates...
[2026-06-27 23:38:18,360.360 INFO    ] 200
[2026-06-27 23:38:18,361.361 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:38:18,392.392 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:38:18,393.393 INFO    ] No update needed
[2026-06-27 23:38:18,395.395 INFO    ] Checking for camera pi updates...
[2026-06-27 23:38:18,416.416 INFO    ] 200
[2026-06-27 23:38:18,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:38:18,443.443 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:38:18,488.488 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:38:18,489.489 INFO    ] No camera update needed
[2026-06-27 23:38:18,490.490 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:38:18,492.492 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:38:18,495.495 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:38:18,498.498 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:38:20,537.537 INFO    ] ================================================
[2026-06-27 23:38:20,552.552 INFO    ] Launching Daemon at Sat Jun 27 23:38:20 IST 2026
[2026-06-27 23:38:20,563.563 INFO    ] ================================================
[2026-06-27 23:38:20,914.914 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:38:20
[2026-06-27 23:38:21,229.229 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:38:21,366.366 INFO    ] Initializing speech engine...
[2026-06-27 23:38:21,376.376 INFO    ] 2026-06-27 23:38:21
[2026-06-27 23:38:21,581.581 INFO    ] 2026-06-27 23:38:21
[2026-06-27 23:38:21,610.610 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:38:21,792.792 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:38:21,796.796 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:38:21,952.952 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:38:22,000.000 INFO    ] time= 27/06/2026 23:38:21
[2026-06-27 23:38:22,022.022 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:38:22,028.028 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:38:22,095.095 INFO    ] No existing commands found in stream
[2026-06-27 23:38:27,101.101 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:38:27,104.104 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-27 23:38:29,831.831 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 23:38:29,834.834 INFO    ] Checking for system updates...
[2026-06-27 23:38:29,872.872 INFO    ] 200
[2026-06-27 23:38:29,875.875 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:38:29,930.930 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:38:29,933.933 INFO    ] No update needed
[2026-06-27 23:38:29,936.936 INFO    ] Checking for camera pi updates...
[2026-06-27 23:38:29,971.971 INFO    ] 200
[2026-06-27 23:38:29,974.974 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:38:30,018.018 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:38:30,073.073 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:38:30,076.076 INFO    ] No camera update needed
[2026-06-27 23:38:30,079.079 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:38:30,081.081 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:38:30,088.088 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:38:30,094.094 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:38:32,135.135 INFO    ] ================================================
[2026-06-27 23:38:32,150.150 INFO    ] Launching Daemon at Sat Jun 27 23:38:32 IST 2026
[2026-06-27 23:38:32,161.161 INFO    ] ================================================
[2026-06-27 23:38:32,515.515 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:38:32
[2026-06-27 23:38:32,833.833 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:38:32,966.966 INFO    ] Initializing speech engine...
[2026-06-27 23:38:32,968.968 INFO    ] 2026-06-27 23:38:32
[2026-06-27 23:38:33,186.186 INFO    ] 2026-06-27 23:38:33
[2026-06-27 23:38:33,216.216 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:38:33,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:38:33,409.409 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:38:33,549.549 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:38:33,606.606 INFO    ] time= 27/06/2026 23:38:33
[2026-06-27 23:38:33,629.629 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:38:33,635.635 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:38:33,702.702 INFO    ] No existing commands found in stream
[2026-06-27 23:38:38,716.716 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:38:38,719.719 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-27 23:38:42,648.648 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 23:38:42,650.650 INFO    ] Checking for system updates...
[2026-06-27 23:38:42,671.671 INFO    ] 200
[2026-06-27 23:38:42,672.672 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:38:42,703.703 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:38:42,705.705 INFO    ] No update needed
[2026-06-27 23:38:42,706.706 INFO    ] Checking for camera pi updates...
[2026-06-27 23:38:42,726.726 INFO    ] 200
[2026-06-27 23:38:42,728.728 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:38:42,753.753 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:38:42,891.891 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:38:42,892.892 INFO    ] No camera update needed
[2026-06-27 23:38:42,894.894 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:38:42,895.895 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:38:42,899.899 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:38:42,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:38:44,941.941 INFO    ] ================================================
[2026-06-27 23:38:44,958.958 INFO    ] Launching Daemon at Sat Jun 27 23:38:44 IST 2026
[2026-06-27 23:38:44,969.969 INFO    ] ================================================
[2026-06-27 23:38:45,334.334 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:38:45
[2026-06-27 23:38:45,648.648 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:38:45,790.790 INFO    ] Initializing speech engine...
[2026-06-27 23:38:45,798.798 INFO    ] 2026-06-27 23:38:45
[2026-06-27 23:38:46,002.002 INFO    ] 2026-06-27 23:38:45
[2026-06-27 23:38:46,031.031 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:38:46,159.159 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:38:46,218.218 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:38:46,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:38:46,411.411 INFO    ] time= 27/06/2026 23:38:46
[2026-06-27 23:38:46,441.441 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:38:46,451.451 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:38:46,526.526 INFO    ] No existing commands found in stream
[2026-06-27 23:38:51,539.539 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:38:51,542.542 INFO    ] Waiting 3.38 seconds before fallback handling...
[2026-06-27 23:38:55,327.327 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 23:38:55,328.328 INFO    ] Checking for system updates...
[2026-06-27 23:38:55,350.350 INFO    ] 200
[2026-06-27 23:38:55,352.352 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:38:55,382.382 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:38:55,384.384 INFO    ] No update needed
[2026-06-27 23:38:55,385.385 INFO    ] Checking for camera pi updates...
[2026-06-27 23:38:55,405.405 INFO    ] 200
[2026-06-27 23:38:55,406.406 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:38:55,430.430 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:38:55,456.456 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:38:55,458.458 INFO    ] No camera update needed
[2026-06-27 23:38:55,459.459 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:38:55,460.460 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:38:55,463.463 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:38:55,466.466 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:38:57,506.506 INFO    ] ================================================
[2026-06-27 23:38:57,521.521 INFO    ] Launching Daemon at Sat Jun 27 23:38:57 IST 2026
[2026-06-27 23:38:57,533.533 INFO    ] ================================================
[2026-06-27 23:38:57,895.895 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:38:57
[2026-06-27 23:38:58,209.209 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:38:58,356.356 INFO    ] Initializing speech engine...
[2026-06-27 23:38:58,362.362 INFO    ] 2026-06-27 23:38:58
[2026-06-27 23:38:58,568.568 INFO    ] 2026-06-27 23:38:58
[2026-06-27 23:38:58,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:38:58,785.785 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:38:58,793.793 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:38:58,936.936 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:38:58,993.993 INFO    ] time= 27/06/2026 23:38:58
[2026-06-27 23:38:59,017.017 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:38:59,067.067 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:38:59,142.142 INFO    ] No existing commands found in stream
[2026-06-27 23:39:04,152.152 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:39:04,155.155 INFO    ] Waiting 0.35 seconds before fallback handling...
[2026-06-27 23:39:04,859.859 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:39:04,861.861 INFO    ] Checking for system updates...
[2026-06-27 23:39:04,886.886 INFO    ] 200
[2026-06-27 23:39:04,888.888 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:39:04,926.926 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:39:04,928.928 INFO    ] No update needed
[2026-06-27 23:39:04,929.929 INFO    ] Checking for camera pi updates...
[2026-06-27 23:39:04,952.952 INFO    ] 200
[2026-06-27 23:39:04,953.953 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:39:04,981.981 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:39:05,020.020 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:39:05,022.022 INFO    ] No camera update needed
[2026-06-27 23:39:05,024.024 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:39:05,025.025 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:39:05,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:39:05,033.033 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:39:07,071.071 INFO    ] ================================================
[2026-06-27 23:39:07,080.080 INFO    ] Launching Daemon at Sat Jun 27 23:39:07 IST 2026
[2026-06-27 23:39:07,086.086 INFO    ] ================================================
[2026-06-27 23:39:07,393.393 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:39:07
[2026-06-27 23:39:07,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:39:07,843.843 INFO    ] Initializing speech engine...
[2026-06-27 23:39:07,847.847 INFO    ] 2026-06-27 23:39:07
[2026-06-27 23:39:08,064.064 INFO    ] 2026-06-27 23:39:08
[2026-06-27 23:39:08,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:39:08,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:39:08,286.286 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:39:08,430.430 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:39:08,481.481 INFO    ] time= 27/06/2026 23:39:08
[2026-06-27 23:39:08,505.505 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:39:08,511.511 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:39:08,578.578 INFO    ] No existing commands found in stream
[2026-06-27 23:39:13,592.592 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:39:13,595.595 INFO    ] Waiting 3.21 seconds before fallback handling...
[2026-06-27 23:39:17,224.224 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:39:17,225.225 INFO    ] Checking for system updates...
[2026-06-27 23:39:17,248.248 INFO    ] 200
[2026-06-27 23:39:17,250.250 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:39:17,281.281 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:39:17,282.282 INFO    ] No update needed
[2026-06-27 23:39:17,284.284 INFO    ] Checking for camera pi updates...
[2026-06-27 23:39:17,303.303 INFO    ] 200
[2026-06-27 23:39:17,305.305 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:39:17,328.328 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:39:17,362.362 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:39:17,363.363 INFO    ] No camera update needed
[2026-06-27 23:39:17,365.365 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:39:17,366.366 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:39:17,369.369 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:39:17,372.372 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:39:19,411.411 INFO    ] ================================================
[2026-06-27 23:39:19,427.427 INFO    ] Launching Daemon at Sat Jun 27 23:39:19 IST 2026
[2026-06-27 23:39:19,438.438 INFO    ] ================================================
[2026-06-27 23:39:19,788.788 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:39:19
[2026-06-27 23:39:20,129.129 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:39:20,282.282 INFO    ] Initializing speech engine...
[2026-06-27 23:39:20,293.293 INFO    ] 2026-06-27 23:39:20
[2026-06-27 23:39:20,497.497 INFO    ] 2026-06-27 23:39:20
[2026-06-27 23:39:20,524.524 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:39:20,668.668 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:39:20,670.670 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:39:20,814.814 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:39:20,858.858 INFO    ] time= 27/06/2026 23:39:20
[2026-06-27 23:39:20,920.920 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:39:20,944.944 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:39:21,038.038 INFO    ] No existing commands found in stream
[2026-06-27 23:39:26,048.048 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:39:26,051.051 INFO    ] Waiting 2.95 seconds before fallback handling...
[2026-06-27 23:39:29,384.384 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 23:39:29,386.386 INFO    ] Checking for system updates...
[2026-06-27 23:39:29,408.408 INFO    ] 200
[2026-06-27 23:39:29,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:39:29,446.446 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:39:29,447.447 INFO    ] No update needed
[2026-06-27 23:39:29,449.449 INFO    ] Checking for camera pi updates...
[2026-06-27 23:39:29,471.471 INFO    ] 200
[2026-06-27 23:39:29,472.472 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:39:29,497.497 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:39:29,530.530 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:39:29,532.532 INFO    ] No camera update needed
[2026-06-27 23:39:29,533.533 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:39:29,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:39:29,539.539 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:39:29,542.542 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:39:31,584.584 INFO    ] ================================================
[2026-06-27 23:39:31,597.597 INFO    ] Launching Daemon at Sat Jun 27 23:39:31 IST 2026
[2026-06-27 23:39:31,604.604 INFO    ] ================================================
[2026-06-27 23:39:31,934.934 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:39:31
[2026-06-27 23:39:32,280.280 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:39:32,431.431 INFO    ] Initializing speech engine...
[2026-06-27 23:39:32,437.437 INFO    ] 2026-06-27 23:39:32
[2026-06-27 23:39:32,640.640 INFO    ] 2026-06-27 23:39:32
[2026-06-27 23:39:32,669.669 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:39:32,852.852 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:39:32,856.856 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:39:32,991.991 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:39:33,045.045 INFO    ] time= 27/06/2026 23:39:32
[2026-06-27 23:39:33,073.073 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:39:33,084.084 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:39:33,153.153 INFO    ] No existing commands found in stream
[2026-06-27 23:39:38,164.164 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:39:38,167.167 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-27 23:39:39,957.957 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 23:39:39,958.958 INFO    ] Checking for system updates...
[2026-06-27 23:39:39,979.979 INFO    ] 200
[2026-06-27 23:39:39,980.980 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:39:40,013.013 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:39:40,014.014 INFO    ] No update needed
[2026-06-27 23:39:40,016.016 INFO    ] Checking for camera pi updates...
[2026-06-27 23:39:40,036.036 INFO    ] 200
[2026-06-27 23:39:40,037.037 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:39:40,062.062 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:39:40,096.096 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:39:40,097.097 INFO    ] No camera update needed
[2026-06-27 23:39:40,099.099 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:39:40,100.100 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:39:40,103.103 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:39:40,106.106 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:39:42,149.149 INFO    ] ================================================
[2026-06-27 23:39:42,164.164 INFO    ] Launching Daemon at Sat Jun 27 23:39:42 IST 2026
[2026-06-27 23:39:42,175.175 INFO    ] ================================================
[2026-06-27 23:39:42,502.502 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:39:42
[2026-06-27 23:39:42,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:39:42,958.958 INFO    ] Initializing speech engine...
[2026-06-27 23:39:42,963.963 INFO    ] 2026-06-27 23:39:42
[2026-06-27 23:39:43,168.168 INFO    ] 2026-06-27 23:39:43
[2026-06-27 23:39:43,196.196 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:39:43,464.464 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:39:43,509.509 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:39:43,675.675 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:39:43,678.678 INFO    ] time= 27/06/2026 23:39:43
[2026-06-27 23:39:43,704.704 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:39:43,705.705 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:39:43,802.802 INFO    ] No existing commands found in stream
[2026-06-27 23:39:48,812.812 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:39:48,815.815 INFO    ] Waiting 0.87 seconds before fallback handling...
[2026-06-27 23:39:50,116.116 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:39:50,117.117 INFO    ] Checking for system updates...
[2026-06-27 23:39:50,138.138 INFO    ] 200
[2026-06-27 23:39:50,139.139 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:39:50,170.170 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:39:50,171.171 INFO    ] No update needed
[2026-06-27 23:39:50,172.172 INFO    ] Checking for camera pi updates...
[2026-06-27 23:39:50,192.192 INFO    ] 200
[2026-06-27 23:39:50,193.193 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:39:50,218.218 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:39:50,264.264 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:39:50,265.265 INFO    ] No camera update needed
[2026-06-27 23:39:50,266.266 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:39:50,268.268 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:39:50,270.270 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:39:50,273.273 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:39:52,312.312 INFO    ] ================================================
[2026-06-27 23:39:52,327.327 INFO    ] Launching Daemon at Sat Jun 27 23:39:52 IST 2026
[2026-06-27 23:39:52,338.338 INFO    ] ================================================
[2026-06-27 23:39:52,697.697 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:39:52
[2026-06-27 23:39:53,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:39:53,157.157 INFO    ] Initializing speech engine...
[2026-06-27 23:39:53,162.162 INFO    ] 2026-06-27 23:39:53
[2026-06-27 23:39:53,367.367 INFO    ] 2026-06-27 23:39:53
[2026-06-27 23:39:53,396.396 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:39:53,579.579 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:39:53,587.587 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:39:53,711.711 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:39:53,766.766 INFO    ] time= 27/06/2026 23:39:53
[2026-06-27 23:39:53,809.809 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:39:53,815.815 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:39:53,882.882 INFO    ] No existing commands found in stream
[2026-06-27 23:39:58,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:39:58,899.899 INFO    ] Waiting 2.85 seconds before fallback handling...
[2026-06-27 23:40:05,912.912 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 23:40:05,914.914 INFO    ] Checking for system updates...
[2026-06-27 23:40:05,935.935 INFO    ] 200
[2026-06-27 23:40:05,936.936 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:40:05,969.969 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:40:05,970.970 INFO    ] No update needed
[2026-06-27 23:40:05,972.972 INFO    ] Checking for camera pi updates...
[2026-06-27 23:40:05,991.991 INFO    ] 200
[2026-06-27 23:40:05,993.993 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:40:06,018.018 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:40:06,055.055 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:40:06,056.056 INFO    ] No camera update needed
[2026-06-27 23:40:06,057.057 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:40:06,059.059 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:40:06,062.062 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:40:06,065.065 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:40:08,106.106 INFO    ] ================================================
[2026-06-27 23:40:08,121.121 INFO    ] Launching Daemon at Sat Jun 27 23:40:08 IST 2026
[2026-06-27 23:40:08,132.132 INFO    ] ================================================
[2026-06-27 23:40:08,486.486 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:40:08
[2026-06-27 23:40:08,828.828 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:40:08,959.959 INFO    ] Initializing speech engine...
[2026-06-27 23:40:08,963.963 INFO    ] 2026-06-27 23:40:08
[2026-06-27 23:40:09,183.183 INFO    ] 2026-06-27 23:40:09
[2026-06-27 23:40:09,213.213 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:40:09,400.400 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:40:09,409.409 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:40:09,552.552 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:40:09,610.610 INFO    ] time= 27/06/2026 23:40:09
[2026-06-27 23:40:09,633.633 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:40:09,640.640 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:40:09,708.708 INFO    ] No existing commands found in stream
[2026-06-27 23:40:14,717.717 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:40:14,719.719 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-27 23:40:26,459.459 INFO    ] <class 'urllib3.exceptions.MaxRetryError'>
[2026-06-27 23:40:26,487.487 INFO    ] ('HTTPSConnectionPool(host=\'neuustore.com\', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM06202304 (Caused by ReadTimeoutError("HTTPSConnectionPool(host=\'neuustore.com\', port=443): Read timed out. (read timeout=5)",))',)
[2026-06-27 23:40:26,496.496 INFO    ] HTTPSConnectionPool(host='neuustore.com', port=443): Max retries exceeded with url: /tm/process-order/getorder/TM06202304 (Caused by ReadTimeoutError("HTTPSConnectionPool(host='neuustore.com', port=443): Read timed out. (read timeout=5)",))
[2026-06-27 23:40:26,516.516 INFO    ] None
[2026-06-27 23:40:26,519.519 INFO    ] Checking for system updates...
[2026-06-27 23:40:26,561.561 INFO    ] 200
[2026-06-27 23:40:26,564.564 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:40:26,606.606 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:40:26,608.608 INFO    ] No update needed
[2026-06-27 23:40:26,609.609 INFO    ] Checking for camera pi updates...
[2026-06-27 23:40:26,629.629 INFO    ] 200
[2026-06-27 23:40:26,631.631 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:40:26,655.655 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:40:26,701.701 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:40:26,702.702 INFO    ] No camera update needed
[2026-06-27 23:40:26,704.704 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:40:26,705.705 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:40:26,708.708 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:40:26,711.711 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:40:28,749.749 INFO    ] ================================================
[2026-06-27 23:40:28,765.765 INFO    ] Launching Daemon at Sat Jun 27 23:40:28 IST 2026
[2026-06-27 23:40:28,776.776 INFO    ] ================================================
[2026-06-27 23:40:29,102.102 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:40:29
[2026-06-27 23:40:29,420.420 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:40:29,560.560 INFO    ] Initializing speech engine...
[2026-06-27 23:40:29,570.570 INFO    ] 2026-06-27 23:40:29
[2026-06-27 23:40:29,779.779 INFO    ] 2026-06-27 23:40:29
[2026-06-27 23:40:29,808.808 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:40:29,991.991 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:40:30,001.001 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:40:30,141.141 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:40:30,198.198 INFO    ] time= 27/06/2026 23:40:30
[2026-06-27 23:40:30,222.222 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:40:30,224.224 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:40:30,295.295 INFO    ] No existing commands found in stream
[2026-06-27 23:40:35,304.304 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:40:35,307.307 INFO    ] Waiting 1.80 seconds before fallback handling...
[2026-06-27 23:40:37,679.679 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:40:37,680.680 INFO    ] Checking for system updates...
[2026-06-27 23:40:37,702.702 INFO    ] 200
[2026-06-27 23:40:37,704.704 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:40:37,737.737 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:40:37,738.738 INFO    ] No update needed
[2026-06-27 23:40:37,740.740 INFO    ] Checking for camera pi updates...
[2026-06-27 23:40:37,759.759 INFO    ] 200
[2026-06-27 23:40:37,761.761 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:40:37,784.784 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:40:37,823.823 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:40:37,824.824 INFO    ] No camera update needed
[2026-06-27 23:40:37,825.825 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:40:37,827.827 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:40:37,830.830 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:40:37,832.832 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:40:39,874.874 INFO    ] ================================================
[2026-06-27 23:40:39,890.890 INFO    ] Launching Daemon at Sat Jun 27 23:40:39 IST 2026
[2026-06-27 23:40:39,901.901 INFO    ] ================================================
[2026-06-27 23:40:40,237.237 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:40:40
[2026-06-27 23:40:40,555.555 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:40:40,687.687 INFO    ] Initializing speech engine...
[2026-06-27 23:40:40,695.695 INFO    ] 2026-06-27 23:40:40
[2026-06-27 23:40:40,907.907 INFO    ] 2026-06-27 23:40:40
[2026-06-27 23:40:40,935.935 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:40:41,119.119 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:40:41,128.128 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:40:41,257.257 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:40:41,324.324 INFO    ] time= 27/06/2026 23:40:41
[2026-06-27 23:40:41,348.348 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:40:41,354.354 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:40:41,421.421 INFO    ] No existing commands found in stream
[2026-06-27 23:40:46,435.435 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:40:46,438.438 INFO    ] Waiting 3.60 seconds before fallback handling...
[2026-06-27 23:40:50,442.442 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:40:50,443.443 INFO    ] Checking for system updates...
[2026-06-27 23:40:50,466.466 INFO    ] 200
[2026-06-27 23:40:50,467.467 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:40:50,498.498 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:40:50,499.499 INFO    ] No update needed
[2026-06-27 23:40:50,500.500 INFO    ] Checking for camera pi updates...
[2026-06-27 23:40:50,521.521 INFO    ] 200
[2026-06-27 23:40:50,523.523 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:40:50,548.548 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:40:50,690.690 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:40:50,692.692 INFO    ] No camera update needed
[2026-06-27 23:40:50,693.693 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:40:50,694.694 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:40:50,697.697 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:40:50,700.700 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:40:52,739.739 INFO    ] ================================================
[2026-06-27 23:40:52,754.754 INFO    ] Launching Daemon at Sat Jun 27 23:40:52 IST 2026
[2026-06-27 23:40:52,765.765 INFO    ] ================================================
[2026-06-27 23:40:53,149.149 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:40:53
[2026-06-27 23:40:53,468.468 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:40:53,608.608 INFO    ] Initializing speech engine...
[2026-06-27 23:40:53,618.618 INFO    ] 2026-06-27 23:40:53
[2026-06-27 23:40:53,823.823 INFO    ] 2026-06-27 23:40:53
[2026-06-27 23:40:53,851.851 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:40:54,036.036 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:40:54,045.045 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:40:54,200.200 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:40:54,244.244 INFO    ] time= 27/06/2026 23:40:54
[2026-06-27 23:40:54,265.265 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:40:54,271.271 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:40:54,338.338 INFO    ] No existing commands found in stream
[2026-06-27 23:40:59,347.347 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:40:59,350.350 INFO    ] Waiting 3.66 seconds before fallback handling...
[2026-06-27 23:41:04,104.104 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 23:41:04,106.106 INFO    ] Checking for system updates...
[2026-06-27 23:41:04,127.127 INFO    ] 200
[2026-06-27 23:41:04,129.129 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:41:04,162.162 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:41:04,163.163 INFO    ] No update needed
[2026-06-27 23:41:04,165.165 INFO    ] Checking for camera pi updates...
[2026-06-27 23:41:04,186.186 INFO    ] 200
[2026-06-27 23:41:04,187.187 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:41:04,212.212 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:41:04,260.260 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:41:04,262.262 INFO    ] No camera update needed
[2026-06-27 23:41:04,263.263 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:41:04,264.264 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:41:04,267.267 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:41:04,270.270 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:41:06,308.308 INFO    ] ================================================
[2026-06-27 23:41:06,323.323 INFO    ] Launching Daemon at Sat Jun 27 23:41:06 IST 2026
[2026-06-27 23:41:06,334.334 INFO    ] ================================================
[2026-06-27 23:41:06,722.722 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:41:06
[2026-06-27 23:41:07,067.067 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:41:07,220.220 INFO    ] Initializing speech engine...
[2026-06-27 23:41:07,225.225 INFO    ] 2026-06-27 23:41:07
[2026-06-27 23:41:07,433.433 INFO    ] 2026-06-27 23:41:07
[2026-06-27 23:41:07,461.461 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:41:07,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:41:07,646.646 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:41:07,784.784 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:41:07,848.848 INFO    ] time= 27/06/2026 23:41:07
[2026-06-27 23:41:07,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:41:07,881.881 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:41:07,947.947 INFO    ] No existing commands found in stream
[2026-06-27 23:41:12,957.957 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:41:12,959.959 INFO    ] Waiting 2.57 seconds before fallback handling...
[2026-06-27 23:41:16,386.386 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 23:41:16,388.388 INFO    ] Checking for system updates...
[2026-06-27 23:41:16,409.409 INFO    ] 200
[2026-06-27 23:41:16,410.410 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:41:16,465.465 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:41:16,468.468 INFO    ] No update needed
[2026-06-27 23:41:16,470.470 INFO    ] Checking for camera pi updates...
[2026-06-27 23:41:16,508.508 INFO    ] 200
[2026-06-27 23:41:16,511.511 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:41:16,552.552 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:41:16,602.602 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:41:16,605.605 INFO    ] No camera update needed
[2026-06-27 23:41:16,607.607 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:41:16,609.609 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:41:16,615.615 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:41:16,620.620 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:41:18,658.658 INFO    ] ================================================
[2026-06-27 23:41:18,674.674 INFO    ] Launching Daemon at Sat Jun 27 23:41:18 IST 2026
[2026-06-27 23:41:18,684.684 INFO    ] ================================================
[2026-06-27 23:41:19,047.047 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:41:19
[2026-06-27 23:41:19,365.365 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:41:19,507.507 INFO    ] Initializing speech engine...
[2026-06-27 23:41:19,512.512 INFO    ] 2026-06-27 23:41:19
[2026-06-27 23:41:19,716.716 INFO    ] 2026-06-27 23:41:19
[2026-06-27 23:41:19,744.744 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:41:19,945.945 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:41:19,949.949 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:41:20,096.096 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:41:20,152.152 INFO    ] time= 27/06/2026 23:41:20
[2026-06-27 23:41:20,196.196 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:41:20,202.202 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:41:20,278.278 INFO    ] No existing commands found in stream
[2026-06-27 23:41:25,289.289 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:41:25,292.292 INFO    ] Waiting 1.94 seconds before fallback handling...
[2026-06-27 23:41:28,053.053 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 23:41:28,055.055 INFO    ] Checking for system updates...
[2026-06-27 23:41:28,077.077 INFO    ] 200
[2026-06-27 23:41:28,079.079 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:41:28,109.109 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:41:28,110.110 INFO    ] No update needed
[2026-06-27 23:41:28,111.111 INFO    ] Checking for camera pi updates...
[2026-06-27 23:41:28,152.152 INFO    ] 200
[2026-06-27 23:41:28,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:41:28,196.196 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:41:28,245.245 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:41:28,247.247 INFO    ] No camera update needed
[2026-06-27 23:41:28,248.248 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:41:28,249.249 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:41:28,252.252 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:41:28,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:41:30,293.293 INFO    ] ================================================
[2026-06-27 23:41:30,308.308 INFO    ] Launching Daemon at Sat Jun 27 23:41:30 IST 2026
[2026-06-27 23:41:30,319.319 INFO    ] ================================================
[2026-06-27 23:41:30,652.652 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:41:30
[2026-06-27 23:41:30,964.964 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:41:31,094.094 INFO    ] Initializing speech engine...
[2026-06-27 23:41:31,099.099 INFO    ] 2026-06-27 23:41:31
[2026-06-27 23:41:31,296.296 INFO    ] 2026-06-27 23:41:31
[2026-06-27 23:41:31,342.342 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:41:31,670.670 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:41:31,709.709 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:41:31,890.890 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:41:31,917.917 INFO    ] time= 27/06/2026 23:41:31
[2026-06-27 23:41:31,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:41:31,945.945 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:41:32,064.064 INFO    ] No existing commands found in stream
[2026-06-27 23:41:37,074.074 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:41:37,077.077 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-27 23:41:38,240.240 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 23:41:38,242.242 INFO    ] Checking for system updates...
[2026-06-27 23:41:38,264.264 INFO    ] 200
[2026-06-27 23:41:38,265.265 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:41:38,299.299 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:41:38,301.301 INFO    ] No update needed
[2026-06-27 23:41:38,302.302 INFO    ] Checking for camera pi updates...
[2026-06-27 23:41:38,325.325 INFO    ] 200
[2026-06-27 23:41:38,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:41:38,349.349 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:41:38,394.394 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:41:38,395.395 INFO    ] No camera update needed
[2026-06-27 23:41:38,397.397 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:41:38,398.398 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:41:38,401.401 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:41:38,404.404 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:41:40,442.442 INFO    ] ================================================
[2026-06-27 23:41:40,458.458 INFO    ] Launching Daemon at Sat Jun 27 23:41:40 IST 2026
[2026-06-27 23:41:40,469.469 INFO    ] ================================================
[2026-06-27 23:41:40,819.819 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:41:40
[2026-06-27 23:41:41,136.136 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:41:41,281.281 INFO    ] Initializing speech engine...
[2026-06-27 23:41:41,285.285 INFO    ] 2026-06-27 23:41:41
[2026-06-27 23:41:41,490.490 INFO    ] 2026-06-27 23:41:41
[2026-06-27 23:41:41,520.520 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:41:41,703.703 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:41:41,711.711 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:41:41,862.862 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:41:41,910.910 INFO    ] time= 27/06/2026 23:41:41
[2026-06-27 23:41:41,932.932 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:41:41,938.938 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:41:42,005.005 INFO    ] No existing commands found in stream
[2026-06-27 23:41:47,019.019 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:41:47,022.022 INFO    ] Waiting 0.75 seconds before fallback handling...
[2026-06-27 23:41:48,172.172 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 23:41:48,174.174 INFO    ] Checking for system updates...
[2026-06-27 23:41:48,195.195 INFO    ] 200
[2026-06-27 23:41:48,196.196 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:41:48,230.230 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:41:48,231.231 INFO    ] No update needed
[2026-06-27 23:41:48,232.232 INFO    ] Checking for camera pi updates...
[2026-06-27 23:41:48,255.255 INFO    ] 200
[2026-06-27 23:41:48,257.257 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:41:48,282.282 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:41:48,337.337 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:41:48,338.338 INFO    ] No camera update needed
[2026-06-27 23:41:48,339.339 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:41:48,341.341 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:41:48,344.344 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:41:48,347.347 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:41:50,386.386 INFO    ] ================================================
[2026-06-27 23:41:50,401.401 INFO    ] Launching Daemon at Sat Jun 27 23:41:50 IST 2026
[2026-06-27 23:41:50,412.412 INFO    ] ================================================
[2026-06-27 23:41:50,776.776 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:41:50
[2026-06-27 23:41:51,093.093 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:41:51,231.231 INFO    ] Initializing speech engine...
[2026-06-27 23:41:51,240.240 INFO    ] 2026-06-27 23:41:51
[2026-06-27 23:41:51,445.445 INFO    ] 2026-06-27 23:41:51
[2026-06-27 23:41:51,476.476 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:41:51,659.659 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:41:51,668.668 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:41:51,812.812 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:41:51,865.865 INFO    ] time= 27/06/2026 23:41:51
[2026-06-27 23:41:51,887.887 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:41:51,893.893 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:41:51,960.960 INFO    ] No existing commands found in stream
[2026-06-27 23:41:56,969.969 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:41:56,971.971 INFO    ] Waiting 0.62 seconds before fallback handling...
[2026-06-27 23:41:58,347.347 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:41:58,349.349 INFO    ] Checking for system updates...
[2026-06-27 23:41:58,369.369 INFO    ] 200
[2026-06-27 23:41:58,371.371 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:41:58,405.405 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:41:58,406.406 INFO    ] No update needed
[2026-06-27 23:41:58,408.408 INFO    ] Checking for camera pi updates...
[2026-06-27 23:41:58,427.427 INFO    ] 200
[2026-06-27 23:41:58,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:41:58,454.454 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:41:58,499.499 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:41:58,500.500 INFO    ] No camera update needed
[2026-06-27 23:41:58,501.501 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:41:58,502.502 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:41:58,506.506 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:41:58,508.508 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:42:00,552.552 INFO    ] ================================================
[2026-06-27 23:42:00,568.568 INFO    ] Launching Daemon at Sat Jun 27 23:42:00 IST 2026
[2026-06-27 23:42:00,582.582 INFO    ] ================================================
[2026-06-27 23:42:00,951.951 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:42:00
[2026-06-27 23:42:01,268.268 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:42:01,405.405 INFO    ] Initializing speech engine...
[2026-06-27 23:42:01,408.408 INFO    ] 2026-06-27 23:42:01
[2026-06-27 23:42:01,741.741 INFO    ] 2026-06-27 23:42:01
[2026-06-27 23:42:01,775.775 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:42:01,923.923 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:42:01,990.990 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:42:02,178.178 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:42:02,230.230 INFO    ] time= 27/06/2026 23:42:02
[2026-06-27 23:42:02,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:42:02,273.273 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:42:02,355.355 INFO    ] No existing commands found in stream
[2026-06-27 23:42:07,390.390 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:42:07,392.392 INFO    ] Waiting 2.79 seconds before fallback handling...
[2026-06-27 23:42:10,581.581 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 23:42:10,582.582 INFO    ] Checking for system updates...
[2026-06-27 23:42:10,603.603 INFO    ] 200
[2026-06-27 23:42:10,604.604 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:42:10,635.635 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:42:10,636.636 INFO    ] No update needed
[2026-06-27 23:42:10,637.637 INFO    ] Checking for camera pi updates...
[2026-06-27 23:42:10,656.656 INFO    ] 200
[2026-06-27 23:42:10,658.658 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:42:10,685.685 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:42:10,738.738 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:42:10,740.740 INFO    ] No camera update needed
[2026-06-27 23:42:10,741.741 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:42:10,742.742 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:42:10,745.745 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:42:10,748.748 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:42:12,787.787 INFO    ] ================================================
[2026-06-27 23:42:12,802.802 INFO    ] Launching Daemon at Sat Jun 27 23:42:12 IST 2026
[2026-06-27 23:42:12,813.813 INFO    ] ================================================
[2026-06-27 23:42:13,201.201 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:42:13
[2026-06-27 23:42:13,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:42:13,646.646 INFO    ] Initializing speech engine...
[2026-06-27 23:42:13,658.658 INFO    ] 2026-06-27 23:42:13
[2026-06-27 23:42:13,863.863 INFO    ] 2026-06-27 23:42:13
[2026-06-27 23:42:13,892.892 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:42:14,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:42:14,087.087 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:42:14,230.230 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:42:14,281.281 INFO    ] time= 27/06/2026 23:42:14
[2026-06-27 23:42:14,305.305 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:42:14,313.313 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:42:14,380.380 INFO    ] No existing commands found in stream
[2026-06-27 23:42:19,389.389 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:42:19,392.392 INFO    ] Waiting 2.13 seconds before fallback handling...
[2026-06-27 23:42:21,929.929 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:42:21,930.930 INFO    ] Checking for system updates...
[2026-06-27 23:42:21,952.952 INFO    ] 200
[2026-06-27 23:42:21,954.954 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:42:21,986.986 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:42:21,988.988 INFO    ] No update needed
[2026-06-27 23:42:21,989.989 INFO    ] Checking for camera pi updates...
[2026-06-27 23:42:22,008.008 INFO    ] 200
[2026-06-27 23:42:22,010.010 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:42:22,037.037 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:42:22,082.082 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:42:22,083.083 INFO    ] No camera update needed
[2026-06-27 23:42:22,085.085 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:42:22,086.086 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:42:22,089.089 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:42:22,092.092 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:42:24,133.133 INFO    ] ================================================
[2026-06-27 23:42:24,148.148 INFO    ] Launching Daemon at Sat Jun 27 23:42:24 IST 2026
[2026-06-27 23:42:24,159.159 INFO    ] ================================================
[2026-06-27 23:42:24,505.505 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:42:24
[2026-06-27 23:42:24,817.817 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:42:24,946.946 INFO    ] Initializing speech engine...
[2026-06-27 23:42:24,950.950 INFO    ] 2026-06-27 23:42:24
[2026-06-27 23:42:25,166.166 INFO    ] 2026-06-27 23:42:25
[2026-06-27 23:42:25,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:42:25,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:42:25,389.389 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:42:25,517.517 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:42:25,586.586 INFO    ] time= 27/06/2026 23:42:25
[2026-06-27 23:42:25,612.612 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:42:25,618.618 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:42:25,685.685 INFO    ] No existing commands found in stream
[2026-06-27 23:42:30,694.694 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:42:30,697.697 INFO    ] Waiting 1.70 seconds before fallback handling...
[2026-06-27 23:42:32,767.767 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 23:42:32,769.769 INFO    ] Checking for system updates...
[2026-06-27 23:42:32,790.790 INFO    ] 200
[2026-06-27 23:42:32,792.792 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:42:32,825.825 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:42:32,826.826 INFO    ] No update needed
[2026-06-27 23:42:32,828.828 INFO    ] Checking for camera pi updates...
[2026-06-27 23:42:32,848.848 INFO    ] 200
[2026-06-27 23:42:32,850.850 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:42:32,874.874 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:42:32,900.900 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:42:32,901.901 INFO    ] No camera update needed
[2026-06-27 23:42:32,902.902 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:42:32,904.904 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:42:32,907.907 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:42:32,909.909 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:42:34,949.949 INFO    ] ================================================
[2026-06-27 23:42:34,965.965 INFO    ] Launching Daemon at Sat Jun 27 23:42:34 IST 2026
[2026-06-27 23:42:34,975.975 INFO    ] ================================================
[2026-06-27 23:42:35,323.323 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:42:35
[2026-06-27 23:42:35,664.664 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:42:35,806.806 INFO    ] Initializing speech engine...
[2026-06-27 23:42:35,811.811 INFO    ] 2026-06-27 23:42:35
[2026-06-27 23:42:36,015.015 INFO    ] 2026-06-27 23:42:35
[2026-06-27 23:42:36,043.043 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:42:36,227.227 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:42:36,236.236 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:42:36,428.428 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:42:36,453.453 INFO    ] time= 27/06/2026 23:42:36
[2026-06-27 23:42:36,459.459 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:42:36,460.460 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:42:36,528.528 INFO    ] No existing commands found in stream
[2026-06-27 23:42:41,542.542 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:42:41,545.545 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-27 23:42:43,368.368 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:42:43,369.369 INFO    ] Checking for system updates...
[2026-06-27 23:42:43,390.390 INFO    ] 200
[2026-06-27 23:42:43,391.391 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:42:43,421.421 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:42:43,423.423 INFO    ] No update needed
[2026-06-27 23:42:43,424.424 INFO    ] Checking for camera pi updates...
[2026-06-27 23:42:43,445.445 INFO    ] 200
[2026-06-27 23:42:43,447.447 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:42:43,470.470 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:42:43,522.522 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:42:43,524.524 INFO    ] No camera update needed
[2026-06-27 23:42:43,525.525 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:42:43,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:42:43,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:42:43,532.532 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:42:45,571.571 INFO    ] ================================================
[2026-06-27 23:42:45,587.587 INFO    ] Launching Daemon at Sat Jun 27 23:42:45 IST 2026
[2026-06-27 23:42:45,598.598 INFO    ] ================================================
[2026-06-27 23:42:45,939.939 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:42:45
[2026-06-27 23:42:46,253.253 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:42:46,382.382 INFO    ] Initializing speech engine...
[2026-06-27 23:42:46,387.387 INFO    ] 2026-06-27 23:42:46
[2026-06-27 23:42:46,616.616 INFO    ] 2026-06-27 23:42:46
[2026-06-27 23:42:46,646.646 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:42:46,836.836 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:42:46,846.846 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:42:46,992.992 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:42:47,047.047 INFO    ] time= 27/06/2026 23:42:47
[2026-06-27 23:42:47,070.070 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:42:47,076.076 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:42:47,144.144 INFO    ] No existing commands found in stream
[2026-06-27 23:42:52,159.159 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:42:52,162.162 INFO    ] Waiting 1.50 seconds before fallback handling...
[2026-06-27 23:42:54,101.101 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 23:42:54,103.103 INFO    ] Checking for system updates...
[2026-06-27 23:42:54,126.126 INFO    ] 200
[2026-06-27 23:42:54,127.127 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:42:54,158.158 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:42:54,160.160 INFO    ] No update needed
[2026-06-27 23:42:54,161.161 INFO    ] Checking for camera pi updates...
[2026-06-27 23:42:54,182.182 INFO    ] 200
[2026-06-27 23:42:54,184.184 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:42:54,209.209 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:42:54,348.348 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:42:54,350.350 INFO    ] No camera update needed
[2026-06-27 23:42:54,351.351 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:42:54,352.352 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:42:54,356.356 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:42:54,359.359 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:42:56,400.400 INFO    ] ================================================
[2026-06-27 23:42:56,416.416 INFO    ] Launching Daemon at Sat Jun 27 23:42:56 IST 2026
[2026-06-27 23:42:56,427.427 INFO    ] ================================================
[2026-06-27 23:42:56,771.771 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:42:56
[2026-06-27 23:42:57,085.085 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:42:57,216.216 INFO    ] Initializing speech engine...
[2026-06-27 23:42:57,219.219 INFO    ] 2026-06-27 23:42:57
[2026-06-27 23:42:57,435.435 INFO    ] 2026-06-27 23:42:57
[2026-06-27 23:42:57,464.464 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:42:57,616.616 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:42:57,617.617 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:42:57,780.780 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:42:57,836.836 INFO    ] time= 27/06/2026 23:42:57
[2026-06-27 23:42:57,875.875 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:42:57,880.880 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:42:57,951.951 INFO    ] No existing commands found in stream
[2026-06-27 23:43:02,955.955 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:43:02,956.956 INFO    ] Waiting 0.21 seconds before fallback handling...
[2026-06-27 23:43:03,571.571 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 23:43:03,573.573 INFO    ] Checking for system updates...
[2026-06-27 23:43:03,596.596 INFO    ] 200
[2026-06-27 23:43:03,597.597 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:43:03,635.635 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:43:03,636.636 INFO    ] No update needed
[2026-06-27 23:43:03,637.637 INFO    ] Checking for camera pi updates...
[2026-06-27 23:43:03,659.659 INFO    ] 200
[2026-06-27 23:43:03,661.661 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:43:03,685.685 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:43:03,730.730 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:43:03,731.731 INFO    ] No camera update needed
[2026-06-27 23:43:03,733.733 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:43:03,734.734 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:43:03,738.738 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:43:03,741.741 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:43:05,780.780 INFO    ] ================================================
[2026-06-27 23:43:05,795.795 INFO    ] Launching Daemon at Sat Jun 27 23:43:05 IST 2026
[2026-06-27 23:43:05,806.806 INFO    ] ================================================
[2026-06-27 23:43:06,150.150 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:43:06
[2026-06-27 23:43:06,463.463 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:43:06,600.600 INFO    ] Initializing speech engine...
[2026-06-27 23:43:06,608.608 INFO    ] 2026-06-27 23:43:06
[2026-06-27 23:43:06,815.815 INFO    ] 2026-06-27 23:43:06
[2026-06-27 23:43:06,846.846 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:43:07,032.032 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:43:07,040.040 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:43:07,165.165 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:43:07,215.215 INFO    ] time= 27/06/2026 23:43:07
[2026-06-27 23:43:07,256.256 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:43:07,266.266 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:43:07,338.338 INFO    ] No existing commands found in stream
[2026-06-27 23:43:12,357.357 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:43:12,360.360 INFO    ] Waiting 0.95 seconds before fallback handling...
[2026-06-27 23:43:13,734.734 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 23:43:13,735.735 INFO    ] Checking for system updates...
[2026-06-27 23:43:13,756.756 INFO    ] 200
[2026-06-27 23:43:13,757.757 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:43:13,788.788 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:43:13,789.789 INFO    ] No update needed
[2026-06-27 23:43:13,791.791 INFO    ] Checking for camera pi updates...
[2026-06-27 23:43:13,810.810 INFO    ] 200
[2026-06-27 23:43:13,812.812 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:43:13,836.836 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:43:13,879.879 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:43:13,881.881 INFO    ] No camera update needed
[2026-06-27 23:43:13,882.882 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:43:13,884.884 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:43:13,887.887 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:43:13,890.890 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:43:15,928.928 INFO    ] ================================================
[2026-06-27 23:43:15,944.944 INFO    ] Launching Daemon at Sat Jun 27 23:43:15 IST 2026
[2026-06-27 23:43:15,955.955 INFO    ] ================================================
[2026-06-27 23:43:16,300.300 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:43:16
[2026-06-27 23:43:16,619.619 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:43:16,762.762 INFO    ] Initializing speech engine...
[2026-06-27 23:43:16,767.767 INFO    ] 2026-06-27 23:43:16
[2026-06-27 23:43:16,987.987 INFO    ] 2026-06-27 23:43:16
[2026-06-27 23:43:17,018.018 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:43:17,222.222 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:43:17,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:43:17,369.369 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:43:17,436.436 INFO    ] time= 27/06/2026 23:43:17
[2026-06-27 23:43:17,477.477 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:43:17,479.479 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:43:17,584.584 INFO    ] No existing commands found in stream
[2026-06-27 23:43:22,593.593 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:43:22,596.596 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-27 23:43:24,691.691 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:43:24,693.693 INFO    ] Checking for system updates...
[2026-06-27 23:43:24,714.714 INFO    ] 200
[2026-06-27 23:43:24,715.715 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:43:24,750.750 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:43:24,751.751 INFO    ] No update needed
[2026-06-27 23:43:24,752.752 INFO    ] Checking for camera pi updates...
[2026-06-27 23:43:24,772.772 INFO    ] 200
[2026-06-27 23:43:24,774.774 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:43:24,802.802 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:43:24,853.853 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:43:24,854.854 INFO    ] No camera update needed
[2026-06-27 23:43:24,856.856 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:43:24,857.857 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:43:24,860.860 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:43:24,863.863 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:43:26,903.903 INFO    ] ================================================
[2026-06-27 23:43:26,919.919 INFO    ] Launching Daemon at Sat Jun 27 23:43:26 IST 2026
[2026-06-27 23:43:26,930.930 INFO    ] ================================================
[2026-06-27 23:43:27,254.254 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:43:27
[2026-06-27 23:43:27,569.569 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:43:27,707.707 INFO    ] Initializing speech engine...
[2026-06-27 23:43:27,711.711 INFO    ] 2026-06-27 23:43:27
[2026-06-27 23:43:27,903.903 INFO    ] 2026-06-27 23:43:27
[2026-06-27 23:43:27,948.948 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:43:28,109.109 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:43:28,178.178 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:43:28,322.322 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:43:28,373.373 INFO    ] time= 27/06/2026 23:43:28
[2026-06-27 23:43:28,408.408 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:43:28,431.431 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:43:28,508.508 INFO    ] No existing commands found in stream
[2026-06-27 23:43:33,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:43:33,522.522 INFO    ] Waiting 3.97 seconds before fallback handling...
[2026-06-27 23:43:37,871.871 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 23:43:37,872.872 INFO    ] Checking for system updates...
[2026-06-27 23:43:37,893.893 INFO    ] 200
[2026-06-27 23:43:37,894.894 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:43:37,925.925 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:43:37,926.926 INFO    ] No update needed
[2026-06-27 23:43:37,928.928 INFO    ] Checking for camera pi updates...
[2026-06-27 23:43:37,947.947 INFO    ] 200
[2026-06-27 23:43:37,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:43:37,974.974 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:43:38,017.017 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:43:38,019.019 INFO    ] No camera update needed
[2026-06-27 23:43:38,024.024 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:43:38,026.026 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:43:38,029.029 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:43:38,032.032 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:43:40,071.071 INFO    ] ================================================
[2026-06-27 23:43:40,086.086 INFO    ] Launching Daemon at Sat Jun 27 23:43:40 IST 2026
[2026-06-27 23:43:40,097.097 INFO    ] ================================================
[2026-06-27 23:43:40,440.440 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:43:40
[2026-06-27 23:43:40,758.758 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:43:40,902.902 INFO    ] Initializing speech engine...
[2026-06-27 23:43:40,910.910 INFO    ] 2026-06-27 23:43:40
[2026-06-27 23:43:41,134.134 INFO    ] 2026-06-27 23:43:41
[2026-06-27 23:43:41,166.166 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:43:41,369.369 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:43:41,373.373 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:43:41,523.523 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:43:41,583.583 INFO    ] time= 27/06/2026 23:43:41
[2026-06-27 23:43:41,625.625 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:43:41,627.627 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:43:41,706.706 INFO    ] No existing commands found in stream
[2026-06-27 23:43:46,720.720 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:43:46,724.724 INFO    ] Waiting 2.53 seconds before fallback handling...
[2026-06-27 23:43:49,677.677 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 23:43:49,678.678 INFO    ] Checking for system updates...
[2026-06-27 23:43:49,699.699 INFO    ] 200
[2026-06-27 23:43:49,701.701 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:43:49,734.734 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:43:49,735.735 INFO    ] No update needed
[2026-06-27 23:43:49,737.737 INFO    ] Checking for camera pi updates...
[2026-06-27 23:43:49,756.756 INFO    ] 200
[2026-06-27 23:43:49,757.757 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:43:49,780.780 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:43:49,819.819 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:43:49,820.820 INFO    ] No camera update needed
[2026-06-27 23:43:49,821.821 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:43:49,822.822 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:43:49,826.826 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:43:49,828.828 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:43:51,866.866 INFO    ] ================================================
[2026-06-27 23:43:51,882.882 INFO    ] Launching Daemon at Sat Jun 27 23:43:51 IST 2026
[2026-06-27 23:43:51,893.893 INFO    ] ================================================
[2026-06-27 23:43:52,262.262 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:43:52
[2026-06-27 23:43:52,609.609 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:43:52,763.763 INFO    ] Initializing speech engine...
[2026-06-27 23:43:52,770.770 INFO    ] 2026-06-27 23:43:52
[2026-06-27 23:43:52,982.982 INFO    ] 2026-06-27 23:43:52
[2026-06-27 23:43:53,011.011 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:43:53,195.195 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:43:53,205.205 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:43:53,351.351 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:43:53,404.404 INFO    ] time= 27/06/2026 23:43:53
[2026-06-27 23:43:53,426.426 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:43:53,432.432 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:43:53,500.500 INFO    ] No existing commands found in stream
[2026-06-27 23:43:58,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:43:58,523.523 INFO    ] Waiting 0.68 seconds before fallback handling...
[2026-06-27 23:43:59,809.809 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 23:43:59,810.810 INFO    ] Checking for system updates...
[2026-06-27 23:43:59,834.834 INFO    ] 200
[2026-06-27 23:43:59,836.836 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:43:59,870.870 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:43:59,871.871 INFO    ] No update needed
[2026-06-27 23:43:59,873.873 INFO    ] Checking for camera pi updates...
[2026-06-27 23:43:59,895.895 INFO    ] 200
[2026-06-27 23:43:59,897.897 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:43:59,927.927 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:43:59,972.972 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:43:59,974.974 INFO    ] No camera update needed
[2026-06-27 23:43:59,976.976 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:43:59,977.977 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:43:59,980.980 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:43:59,983.983 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:44:02,016.016 INFO    ] ================================================
[2026-06-27 23:44:02,025.025 INFO    ] Launching Daemon at Sat Jun 27 23:44:02 IST 2026
[2026-06-27 23:44:02,031.031 INFO    ] ================================================
[2026-06-27 23:44:02,357.357 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:44:02
[2026-06-27 23:44:02,675.675 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:44:02,819.819 INFO    ] Initializing speech engine...
[2026-06-27 23:44:02,824.824 INFO    ] 2026-06-27 23:44:02
[2026-06-27 23:44:03,032.032 INFO    ] 2026-06-27 23:44:03
[2026-06-27 23:44:03,061.061 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:44:03,184.184 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:44:03,223.223 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:44:03,390.390 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:44:03,458.458 INFO    ] time= 27/06/2026 23:44:03
[2026-06-27 23:44:03,482.482 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:44:03,489.489 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:44:03,558.558 INFO    ] No existing commands found in stream
[2026-06-27 23:44:08,566.566 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:44:08,569.569 INFO    ] Waiting 3.78 seconds before fallback handling...
[2026-06-27 23:44:12,756.756 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 23:44:12,758.758 INFO    ] Checking for system updates...
[2026-06-27 23:44:12,781.781 INFO    ] 200
[2026-06-27 23:44:12,782.782 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:44:12,818.818 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:44:12,819.819 INFO    ] No update needed
[2026-06-27 23:44:12,821.821 INFO    ] Checking for camera pi updates...
[2026-06-27 23:44:12,843.843 INFO    ] 200
[2026-06-27 23:44:12,845.845 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:44:12,869.869 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:44:12,913.913 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:44:12,914.914 INFO    ] No camera update needed
[2026-06-27 23:44:12,916.916 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:44:12,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:44:12,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:44:12,925.925 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:44:14,965.965 INFO    ] ================================================
[2026-06-27 23:44:14,981.981 INFO    ] Launching Daemon at Sat Jun 27 23:44:14 IST 2026
[2026-06-27 23:44:14,992.992 INFO    ] ================================================
[2026-06-27 23:44:15,343.343 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:44:15
[2026-06-27 23:44:15,690.690 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:44:15,840.840 INFO    ] Initializing speech engine...
[2026-06-27 23:44:15,850.850 INFO    ] 2026-06-27 23:44:15
[2026-06-27 23:44:16,063.063 INFO    ] 2026-06-27 23:44:16
[2026-06-27 23:44:16,093.093 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:44:16,279.279 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:44:16,289.289 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:44:16,416.416 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:44:16,487.487 INFO    ] time= 27/06/2026 23:44:16
[2026-06-27 23:44:16,511.511 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:44:16,518.518 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:44:16,585.585 INFO    ] No existing commands found in stream
[2026-06-27 23:44:21,599.599 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:44:21,603.603 INFO    ] Waiting 1.95 seconds before fallback handling...
[2026-06-27 23:44:23,923.923 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 23:44:23,925.925 INFO    ] Checking for system updates...
[2026-06-27 23:44:23,946.946 INFO    ] 200
[2026-06-27 23:44:23,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:44:23,979.979 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:44:23,980.980 INFO    ] No update needed
[2026-06-27 23:44:23,982.982 INFO    ] Checking for camera pi updates...
[2026-06-27 23:44:24,003.003 INFO    ] 200
[2026-06-27 23:44:24,005.005 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:44:24,029.029 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:44:24,072.072 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:44:24,073.073 INFO    ] No camera update needed
[2026-06-27 23:44:24,075.075 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:44:24,076.076 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:44:24,080.080 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:44:24,083.083 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:44:26,121.121 INFO    ] ================================================
[2026-06-27 23:44:26,136.136 INFO    ] Launching Daemon at Sat Jun 27 23:44:26 IST 2026
[2026-06-27 23:44:26,147.147 INFO    ] ================================================
[2026-06-27 23:44:26,476.476 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:44:26
[2026-06-27 23:44:26,794.794 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:44:26,937.937 INFO    ] Initializing speech engine...
[2026-06-27 23:44:26,942.942 INFO    ] 2026-06-27 23:44:26
[2026-06-27 23:44:27,146.146 INFO    ] 2026-06-27 23:44:27
[2026-06-27 23:44:27,175.175 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:44:27,359.359 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:44:27,369.369 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:44:27,498.498 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:44:27,565.565 INFO    ] time= 27/06/2026 23:44:27
[2026-06-27 23:44:27,588.588 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:44:27,594.594 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:44:27,661.661 INFO    ] No existing commands found in stream
[2026-06-27 23:44:32,676.676 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:44:32,678.678 INFO    ] Waiting 0.73 seconds before fallback handling...
[2026-06-27 23:44:33,823.823 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 23:44:33,825.825 INFO    ] Checking for system updates...
[2026-06-27 23:44:33,849.849 INFO    ] 200
[2026-06-27 23:44:33,850.850 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:44:33,881.881 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:44:33,882.882 INFO    ] No update needed
[2026-06-27 23:44:33,883.883 INFO    ] Checking for camera pi updates...
[2026-06-27 23:44:33,903.903 INFO    ] 200
[2026-06-27 23:44:33,905.905 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:44:33,928.928 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:44:33,976.976 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:44:33,978.978 INFO    ] No camera update needed
[2026-06-27 23:44:33,979.979 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:44:33,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:44:33,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:44:33,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:44:36,024.024 INFO    ] ================================================
[2026-06-27 23:44:36,039.039 INFO    ] Launching Daemon at Sat Jun 27 23:44:36 IST 2026
[2026-06-27 23:44:36,050.050 INFO    ] ================================================
[2026-06-27 23:44:36,388.388 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:44:36
[2026-06-27 23:44:36,701.701 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:44:36,846.846 INFO    ] Initializing speech engine...
[2026-06-27 23:44:36,850.850 INFO    ] 2026-06-27 23:44:36
[2026-06-27 23:44:37,058.058 INFO    ] 2026-06-27 23:44:37
[2026-06-27 23:44:37,088.088 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:44:37,276.276 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:44:37,285.285 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:44:37,417.417 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:44:37,481.481 INFO    ] time= 27/06/2026 23:44:37
[2026-06-27 23:44:37,510.510 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:44:37,512.512 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:44:37,585.585 INFO    ] No existing commands found in stream
[2026-06-27 23:44:42,594.594 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:44:42,597.597 INFO    ] Waiting 1.91 seconds before fallback handling...
[2026-06-27 23:44:44,938.938 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:44:44,940.940 INFO    ] Checking for system updates...
[2026-06-27 23:44:44,962.962 INFO    ] 200
[2026-06-27 23:44:44,963.963 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:44:44,994.994 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:44:44,995.995 INFO    ] No update needed
[2026-06-27 23:44:44,997.997 INFO    ] Checking for camera pi updates...
[2026-06-27 23:44:45,016.016 INFO    ] 200
[2026-06-27 23:44:45,017.017 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:44:45,041.041 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:44:45,091.091 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:44:45,093.093 INFO    ] No camera update needed
[2026-06-27 23:44:45,094.094 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:44:45,095.095 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:44:45,098.098 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:44:45,101.101 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:44:47,139.139 INFO    ] ================================================
[2026-06-27 23:44:47,154.154 INFO    ] Launching Daemon at Sat Jun 27 23:44:47 IST 2026
[2026-06-27 23:44:47,165.165 INFO    ] ================================================
[2026-06-27 23:44:47,503.503 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:44:47
[2026-06-27 23:44:47,816.816 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:44:47,952.952 INFO    ] Initializing speech engine...
[2026-06-27 23:44:47,961.961 INFO    ] 2026-06-27 23:44:47
[2026-06-27 23:44:48,166.166 INFO    ] 2026-06-27 23:44:48
[2026-06-27 23:44:48,195.195 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:44:48,379.379 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:44:48,388.388 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:44:48,571.571 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:44:48,599.599 INFO    ] time= 27/06/2026 23:44:48
[2026-06-27 23:44:48,609.609 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:44:48,615.615 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:44:48,682.682 INFO    ] No existing commands found in stream
[2026-06-27 23:44:53,696.696 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:44:53,699.699 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-27 23:44:54,452.452 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 23:44:54,454.454 INFO    ] Checking for system updates...
[2026-06-27 23:44:54,476.476 INFO    ] 200
[2026-06-27 23:44:54,477.477 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:44:54,508.508 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:44:54,509.509 INFO    ] No update needed
[2026-06-27 23:44:54,511.511 INFO    ] Checking for camera pi updates...
[2026-06-27 23:44:54,530.530 INFO    ] 200
[2026-06-27 23:44:54,532.532 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:44:54,557.557 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:44:54,600.600 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:44:54,601.601 INFO    ] No camera update needed
[2026-06-27 23:44:54,603.603 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:44:54,604.604 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:44:54,608.608 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:44:54,611.611 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:44:56,650.650 INFO    ] ================================================
[2026-06-27 23:44:56,665.665 INFO    ] Launching Daemon at Sat Jun 27 23:44:56 IST 2026
[2026-06-27 23:44:56,676.676 INFO    ] ================================================
[2026-06-27 23:44:57,044.044 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:44:57
[2026-06-27 23:44:57,391.391 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:44:57,543.543 INFO    ] Initializing speech engine...
[2026-06-27 23:44:57,548.548 INFO    ] 2026-06-27 23:44:57
[2026-06-27 23:44:57,753.753 INFO    ] 2026-06-27 23:44:57
[2026-06-27 23:44:57,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:44:57,904.904 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:44:57,967.967 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:44:58,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:44:58,164.164 INFO    ] time= 27/06/2026 23:44:58
[2026-06-27 23:44:58,197.197 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:44:58,203.203 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:44:58,270.270 INFO    ] No existing commands found in stream
[2026-06-27 23:45:03,279.279 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:45:03,282.282 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-27 23:45:07,167.167 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 23:45:07,168.168 INFO    ] Checking for system updates...
[2026-06-27 23:45:07,190.190 INFO    ] 200
[2026-06-27 23:45:07,192.192 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:45:07,223.223 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:45:07,224.224 INFO    ] No update needed
[2026-06-27 23:45:07,226.226 INFO    ] Checking for camera pi updates...
[2026-06-27 23:45:07,246.246 INFO    ] 200
[2026-06-27 23:45:07,248.248 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:45:07,271.271 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:45:07,317.317 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:45:07,318.318 INFO    ] No camera update needed
[2026-06-27 23:45:07,319.319 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:45:07,320.320 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:45:07,323.323 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:45:07,326.326 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:45:09,365.365 INFO    ] ================================================
[2026-06-27 23:45:09,380.380 INFO    ] Launching Daemon at Sat Jun 27 23:45:09 IST 2026
[2026-06-27 23:45:09,391.391 INFO    ] ================================================
[2026-06-27 23:45:09,758.758 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:45:09
[2026-06-27 23:45:10,070.070 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:45:10,212.212 INFO    ] Initializing speech engine...
[2026-06-27 23:45:10,217.217 INFO    ] 2026-06-27 23:45:10
[2026-06-27 23:45:10,422.422 INFO    ] 2026-06-27 23:45:10
[2026-06-27 23:45:10,450.450 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:45:10,635.635 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:45:10,644.644 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:45:10,791.791 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:45:10,844.844 INFO    ] time= 27/06/2026 23:45:10
[2026-06-27 23:45:10,866.866 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:45:10,872.872 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:45:10,937.937 INFO    ] No existing commands found in stream
[2026-06-27 23:45:15,948.948 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:45:15,950.950 INFO    ] Waiting 2.26 seconds before fallback handling...
[2026-06-27 23:45:18,622.622 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 23:45:18,624.624 INFO    ] Checking for system updates...
[2026-06-27 23:45:18,646.646 INFO    ] 200
[2026-06-27 23:45:18,648.648 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:45:18,678.678 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:45:18,679.679 INFO    ] No update needed
[2026-06-27 23:45:18,681.681 INFO    ] Checking for camera pi updates...
[2026-06-27 23:45:18,701.701 INFO    ] 200
[2026-06-27 23:45:18,702.702 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:45:18,726.726 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:45:18,767.767 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:45:18,769.769 INFO    ] No camera update needed
[2026-06-27 23:45:18,770.770 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:45:18,771.771 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:45:18,774.774 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:45:18,777.777 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:45:20,818.818 INFO    ] ================================================
[2026-06-27 23:45:20,834.834 INFO    ] Launching Daemon at Sat Jun 27 23:45:20 IST 2026
[2026-06-27 23:45:20,845.845 INFO    ] ================================================
[2026-06-27 23:45:21,216.216 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:45:21
[2026-06-27 23:45:21,535.535 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:45:21,669.669 INFO    ] Initializing speech engine...
[2026-06-27 23:45:21,682.682 INFO    ] 2026-06-27 23:45:21
[2026-06-27 23:45:21,890.890 INFO    ] 2026-06-27 23:45:21
[2026-06-27 23:45:21,919.919 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:45:22,102.102 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:45:22,111.111 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:45:22,261.261 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:45:22,308.308 INFO    ] time= 27/06/2026 23:45:22
[2026-06-27 23:45:22,331.331 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:45:22,336.336 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:45:22,403.403 INFO    ] No existing commands found in stream
[2026-06-27 23:45:27,413.413 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:45:27,416.416 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-27 23:45:31,129.129 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:45:31,130.130 INFO    ] Checking for system updates...
[2026-06-27 23:45:31,153.153 INFO    ] 200
[2026-06-27 23:45:31,155.155 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:45:31,187.187 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:45:31,188.188 INFO    ] No update needed
[2026-06-27 23:45:31,190.190 INFO    ] Checking for camera pi updates...
[2026-06-27 23:45:31,210.210 INFO    ] 200
[2026-06-27 23:45:31,211.211 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:45:31,238.238 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:45:31,280.280 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:45:31,281.281 INFO    ] No camera update needed
[2026-06-27 23:45:31,283.283 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:45:31,284.284 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:45:31,288.288 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:45:31,291.291 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:45:33,323.323 INFO    ] ================================================
[2026-06-27 23:45:33,340.340 INFO    ] Launching Daemon at Sat Jun 27 23:45:33 IST 2026
[2026-06-27 23:45:33,351.351 INFO    ] ================================================
[2026-06-27 23:45:33,716.716 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:45:33
[2026-06-27 23:45:34,035.035 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:45:34,164.164 INFO    ] Initializing speech engine...
[2026-06-27 23:45:34,173.173 INFO    ] 2026-06-27 23:45:34
[2026-06-27 23:45:34,388.388 INFO    ] 2026-06-27 23:45:34
[2026-06-27 23:45:34,418.418 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:45:34,604.604 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:45:34,613.613 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:45:34,744.744 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:45:34,798.798 INFO    ] time= 27/06/2026 23:45:34
[2026-06-27 23:45:34,834.834 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:45:34,839.839 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:45:34,910.910 INFO    ] No existing commands found in stream
[2026-06-27 23:45:39,920.920 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:45:39,923.923 INFO    ] Waiting 1.36 seconds before fallback handling...
[2026-06-27 23:45:41,857.857 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:45:41,858.858 INFO    ] Checking for system updates...
[2026-06-27 23:45:41,881.881 INFO    ] 200
[2026-06-27 23:45:41,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:45:41,916.916 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:45:41,917.917 INFO    ] No update needed
[2026-06-27 23:45:41,918.918 INFO    ] Checking for camera pi updates...
[2026-06-27 23:45:41,940.940 INFO    ] 200
[2026-06-27 23:45:41,941.941 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:45:41,964.964 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:45:42,011.011 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:45:42,013.013 INFO    ] No camera update needed
[2026-06-27 23:45:42,014.014 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:45:42,016.016 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:45:42,019.019 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:45:42,021.021 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:45:44,062.062 INFO    ] ================================================
[2026-06-27 23:45:44,077.077 INFO    ] Launching Daemon at Sat Jun 27 23:45:44 IST 2026
[2026-06-27 23:45:44,089.089 INFO    ] ================================================
[2026-06-27 23:45:44,423.423 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:45:44
[2026-06-27 23:45:44,737.737 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:45:44,877.877 INFO    ] Initializing speech engine...
[2026-06-27 23:45:44,880.880 INFO    ] 2026-06-27 23:45:44
[2026-06-27 23:45:45,087.087 INFO    ] 2026-06-27 23:45:45
[2026-06-27 23:45:45,118.118 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:45:45,297.297 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:45:45,329.329 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:45:45,483.483 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:45:45,535.535 INFO    ] time= 27/06/2026 23:45:45
[2026-06-27 23:45:45,558.558 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:45:45,565.565 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:45:45,632.632 INFO    ] No existing commands found in stream
[2026-06-27 23:45:50,641.641 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:45:50,644.644 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-27 23:45:54,559.559 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 23:45:54,560.560 INFO    ] Checking for system updates...
[2026-06-27 23:45:54,581.581 INFO    ] 200
[2026-06-27 23:45:54,583.583 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:45:54,613.613 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:45:54,614.614 INFO    ] No update needed
[2026-06-27 23:45:54,616.616 INFO    ] Checking for camera pi updates...
[2026-06-27 23:45:54,637.637 INFO    ] 200
[2026-06-27 23:45:54,638.638 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:45:54,662.662 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:45:54,692.692 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:45:54,694.694 INFO    ] No camera update needed
[2026-06-27 23:45:54,695.695 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:45:54,697.697 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:45:54,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:45:54,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:45:56,742.742 INFO    ] ================================================
[2026-06-27 23:45:56,757.757 INFO    ] Launching Daemon at Sat Jun 27 23:45:56 IST 2026
[2026-06-27 23:45:56,769.769 INFO    ] ================================================
[2026-06-27 23:45:57,111.111 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:45:57
[2026-06-27 23:45:57,425.425 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:45:57,567.567 INFO    ] Initializing speech engine...
[2026-06-27 23:45:57,572.572 INFO    ] 2026-06-27 23:45:57
[2026-06-27 23:45:57,780.780 INFO    ] 2026-06-27 23:45:57
[2026-06-27 23:45:57,809.809 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:45:57,947.947 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:45:57,995.995 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:45:58,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:45:58,187.187 INFO    ] time= 27/06/2026 23:45:58
[2026-06-27 23:45:58,216.216 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:45:58,231.231 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:45:58,298.298 INFO    ] No existing commands found in stream
[2026-06-27 23:46:03,306.306 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:46:03,307.307 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-27 23:46:05,342.342 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:46:05,343.343 INFO    ] Checking for system updates...
[2026-06-27 23:46:05,366.366 INFO    ] 200
[2026-06-27 23:46:05,367.367 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:46:05,400.400 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:46:05,401.401 INFO    ] No update needed
[2026-06-27 23:46:05,403.403 INFO    ] Checking for camera pi updates...
[2026-06-27 23:46:05,424.424 INFO    ] 200
[2026-06-27 23:46:05,426.426 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:46:05,451.451 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:46:05,494.494 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:46:05,495.495 INFO    ] No camera update needed
[2026-06-27 23:46:05,496.496 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:46:05,498.498 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:46:05,501.501 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:46:05,503.503 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:46:07,542.542 INFO    ] ================================================
[2026-06-27 23:46:07,558.558 INFO    ] Launching Daemon at Sat Jun 27 23:46:07 IST 2026
[2026-06-27 23:46:07,568.568 INFO    ] ================================================
[2026-06-27 23:46:07,913.913 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:46:07
[2026-06-27 23:46:08,227.227 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:46:08,364.364 INFO    ] Initializing speech engine...
[2026-06-27 23:46:08,372.372 INFO    ] 2026-06-27 23:46:08
[2026-06-27 23:46:08,582.582 INFO    ] 2026-06-27 23:46:08
[2026-06-27 23:46:08,611.611 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:46:08,736.736 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:46:08,800.800 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:46:08,935.935 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:46:08,996.996 INFO    ] time= 27/06/2026 23:46:08
[2026-06-27 23:46:09,026.026 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:46:09,036.036 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:46:09,109.109 INFO    ] No existing commands found in stream
[2026-06-27 23:46:14,117.117 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:46:14,120.120 INFO    ] Waiting 1.99 seconds before fallback handling...
[2026-06-27 23:46:16,532.532 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:46:16,533.533 INFO    ] Checking for system updates...
[2026-06-27 23:46:16,554.554 INFO    ] 200
[2026-06-27 23:46:16,556.556 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:46:16,589.589 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:46:16,591.591 INFO    ] No update needed
[2026-06-27 23:46:16,592.592 INFO    ] Checking for camera pi updates...
[2026-06-27 23:46:16,611.611 INFO    ] 200
[2026-06-27 23:46:16,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:46:16,640.640 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:46:16,684.684 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:46:16,686.686 INFO    ] No camera update needed
[2026-06-27 23:46:16,687.687 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:46:16,688.688 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:46:16,691.691 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:46:16,694.694 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:46:18,732.732 INFO    ] ================================================
[2026-06-27 23:46:18,747.747 INFO    ] Launching Daemon at Sat Jun 27 23:46:18 IST 2026
[2026-06-27 23:46:18,759.759 INFO    ] ================================================
[2026-06-27 23:46:19,083.083 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:46:19
[2026-06-27 23:46:19,397.397 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:46:19,542.542 INFO    ] Initializing speech engine...
[2026-06-27 23:46:19,546.546 INFO    ] 2026-06-27 23:46:19
[2026-06-27 23:46:19,753.753 INFO    ] 2026-06-27 23:46:19
[2026-06-27 23:46:19,781.781 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:46:19,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:46:19,943.943 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:46:20,109.109 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:46:20,173.173 INFO    ] time= 27/06/2026 23:46:20
[2026-06-27 23:46:20,201.201 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:46:20,208.208 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:46:20,273.273 INFO    ] No existing commands found in stream
[2026-06-27 23:46:25,284.284 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:46:25,287.287 INFO    ] Waiting 3.11 seconds before fallback handling...
[2026-06-27 23:46:28,807.807 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:46:28,808.808 INFO    ] Checking for system updates...
[2026-06-27 23:46:28,830.830 INFO    ] 200
[2026-06-27 23:46:28,831.831 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:46:28,863.863 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:46:28,864.864 INFO    ] No update needed
[2026-06-27 23:46:28,866.866 INFO    ] Checking for camera pi updates...
[2026-06-27 23:46:28,887.887 INFO    ] 200
[2026-06-27 23:46:28,889.889 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:46:28,916.916 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:46:28,957.957 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:46:28,959.959 INFO    ] No camera update needed
[2026-06-27 23:46:28,960.960 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:46:28,961.961 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:46:28,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:46:28,968.968 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:46:31,009.009 INFO    ] ================================================
[2026-06-27 23:46:31,025.025 INFO    ] Launching Daemon at Sat Jun 27 23:46:31 IST 2026
[2026-06-27 23:46:31,036.036 INFO    ] ================================================
[2026-06-27 23:46:31,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:46:31
[2026-06-27 23:46:31,725.725 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:46:31,860.860 INFO    ] Initializing speech engine...
[2026-06-27 23:46:31,872.872 INFO    ] 2026-06-27 23:46:31
[2026-06-27 23:46:32,096.096 INFO    ] 2026-06-27 23:46:32
[2026-06-27 23:46:32,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:46:32,346.346 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:46:32,358.358 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:46:32,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:46:32,538.538 INFO    ] time= 27/06/2026 23:46:32
[2026-06-27 23:46:32,540.540 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:46:32,542.542 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:46:32,607.607 INFO    ] No existing commands found in stream
[2026-06-27 23:46:37,616.616 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:46:37,619.619 INFO    ] Waiting 1.86 seconds before fallback handling...
[2026-06-27 23:46:39,883.883 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:46:39,885.885 INFO    ] Checking for system updates...
[2026-06-27 23:46:39,907.907 INFO    ] 200
[2026-06-27 23:46:39,908.908 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:46:39,941.941 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:46:39,942.942 INFO    ] No update needed
[2026-06-27 23:46:39,944.944 INFO    ] Checking for camera pi updates...
[2026-06-27 23:46:39,963.963 INFO    ] 200
[2026-06-27 23:46:39,965.965 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:46:39,989.989 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:46:40,034.034 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:46:40,035.035 INFO    ] No camera update needed
[2026-06-27 23:46:40,036.036 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:46:40,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:46:40,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:46:40,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:46:42,083.083 INFO    ] ================================================
[2026-06-27 23:46:42,098.098 INFO    ] Launching Daemon at Sat Jun 27 23:46:42 IST 2026
[2026-06-27 23:46:42,110.110 INFO    ] ================================================
[2026-06-27 23:46:42,466.466 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:46:42
[2026-06-27 23:46:42,779.779 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:46:42,917.917 INFO    ] Initializing speech engine...
[2026-06-27 23:46:42,927.927 INFO    ] 2026-06-27 23:46:42
[2026-06-27 23:46:43,133.133 INFO    ] 2026-06-27 23:46:43
[2026-06-27 23:46:43,162.162 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:46:43,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:46:43,350.350 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:46:43,488.488 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:46:43,539.539 INFO    ] time= 27/06/2026 23:46:43
[2026-06-27 23:46:43,582.582 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:46:43,589.589 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:46:43,656.656 INFO    ] No existing commands found in stream
[2026-06-27 23:46:48,666.666 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:46:48,668.668 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-27 23:46:50,233.233 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:46:50,235.235 INFO    ] Checking for system updates...
[2026-06-27 23:46:50,256.256 INFO    ] 200
[2026-06-27 23:46:50,258.258 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:46:50,290.290 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:46:50,292.292 INFO    ] No update needed
[2026-06-27 23:46:50,293.293 INFO    ] Checking for camera pi updates...
[2026-06-27 23:46:50,313.313 INFO    ] 200
[2026-06-27 23:46:50,314.314 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:46:50,338.338 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:46:50,377.377 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:46:50,378.378 INFO    ] No camera update needed
[2026-06-27 23:46:50,379.379 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:46:50,380.380 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:46:50,383.383 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:46:50,386.386 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:46:52,425.425 INFO    ] ================================================
[2026-06-27 23:46:52,440.440 INFO    ] Launching Daemon at Sat Jun 27 23:46:52 IST 2026
[2026-06-27 23:46:52,451.451 INFO    ] ================================================
[2026-06-27 23:46:52,791.791 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:46:52
[2026-06-27 23:46:53,108.108 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:46:53,247.247 INFO    ] Initializing speech engine...
[2026-06-27 23:46:53,255.255 INFO    ] 2026-06-27 23:46:53
[2026-06-27 23:46:53,463.463 INFO    ] 2026-06-27 23:46:53
[2026-06-27 23:46:53,493.493 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:46:53,681.681 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:46:53,690.690 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:46:53,889.889 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:46:53,914.914 INFO    ] time= 27/06/2026 23:46:53
[2026-06-27 23:46:53,919.919 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:46:53,921.921 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:46:53,989.989 INFO    ] No existing commands found in stream
[2026-06-27 23:46:58,999.999 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:46:59,002.002 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-27 23:47:01,020.020 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 23:47:01,021.021 INFO    ] Checking for system updates...
[2026-06-27 23:47:01,044.044 INFO    ] 200
[2026-06-27 23:47:01,046.046 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:47:01,079.079 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:47:01,080.080 INFO    ] No update needed
[2026-06-27 23:47:01,082.082 INFO    ] Checking for camera pi updates...
[2026-06-27 23:47:01,105.105 INFO    ] 200
[2026-06-27 23:47:01,107.107 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:47:01,136.136 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:47:01,180.180 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:47:01,182.182 INFO    ] No camera update needed
[2026-06-27 23:47:01,183.183 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:47:01,185.185 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:47:01,188.188 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:47:01,191.191 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:47:03,223.223 INFO    ] ================================================
[2026-06-27 23:47:03,238.238 INFO    ] Launching Daemon at Sat Jun 27 23:47:03 IST 2026
[2026-06-27 23:47:03,249.249 INFO    ] ================================================
[2026-06-27 23:47:03,571.571 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:47:03
[2026-06-27 23:47:03,884.884 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:47:04,017.017 INFO    ] Initializing speech engine...
[2026-06-27 23:47:04,022.022 INFO    ] 2026-06-27 23:47:04
[2026-06-27 23:47:04,251.251 INFO    ] 2026-06-27 23:47:04
[2026-06-27 23:47:04,264.264 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:47:04,416.416 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:47:04,479.479 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:47:04,625.625 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:47:04,682.682 INFO    ] time= 27/06/2026 23:47:04
[2026-06-27 23:47:04,711.711 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:47:04,734.734 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:47:04,810.810 INFO    ] No existing commands found in stream
[2026-06-27 23:47:09,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:47:09,822.822 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-27 23:47:10,227.227 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 23:47:10,229.229 INFO    ] Checking for system updates...
[2026-06-27 23:47:10,251.251 INFO    ] 200
[2026-06-27 23:47:10,252.252 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:47:10,285.285 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:47:10,287.287 INFO    ] No update needed
[2026-06-27 23:47:10,288.288 INFO    ] Checking for camera pi updates...
[2026-06-27 23:47:10,308.308 INFO    ] 200
[2026-06-27 23:47:10,310.310 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:47:10,333.333 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:47:10,474.474 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:47:10,475.475 INFO    ] No camera update needed
[2026-06-27 23:47:10,477.477 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:47:10,479.479 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:47:10,483.483 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:47:10,486.486 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:47:12,526.526 INFO    ] ================================================
[2026-06-27 23:47:12,541.541 INFO    ] Launching Daemon at Sat Jun 27 23:47:12 IST 2026
[2026-06-27 23:47:12,552.552 INFO    ] ================================================
[2026-06-27 23:47:12,889.889 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:47:12
[2026-06-27 23:47:13,207.207 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:47:13,346.346 INFO    ] Initializing speech engine...
[2026-06-27 23:47:13,356.356 INFO    ] 2026-06-27 23:47:13
[2026-06-27 23:47:13,565.565 INFO    ] 2026-06-27 23:47:13
[2026-06-27 23:47:13,595.595 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:47:13,778.778 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:47:13,787.787 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:47:13,973.973 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:47:14,008.008 INFO    ] time= 27/06/2026 23:47:13
[2026-06-27 23:47:14,014.014 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:47:14,019.019 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:47:14,135.135 INFO    ] No existing commands found in stream
[2026-06-27 23:47:19,145.145 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:47:19,148.148 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-27 23:47:19,597.597 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 23:47:19,599.599 INFO    ] Checking for system updates...
[2026-06-27 23:47:19,619.619 INFO    ] 200
[2026-06-27 23:47:19,621.621 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:47:19,654.654 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:47:19,656.656 INFO    ] No update needed
[2026-06-27 23:47:19,657.657 INFO    ] Checking for camera pi updates...
[2026-06-27 23:47:19,679.679 INFO    ] 200
[2026-06-27 23:47:19,681.681 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:47:19,704.704 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:47:19,752.752 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:47:19,754.754 INFO    ] No camera update needed
[2026-06-27 23:47:19,755.755 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:47:19,756.756 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:47:19,760.760 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:47:19,763.763 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:47:21,803.803 INFO    ] ================================================
[2026-06-27 23:47:21,818.818 INFO    ] Launching Daemon at Sat Jun 27 23:47:21 IST 2026
[2026-06-27 23:47:21,829.829 INFO    ] ================================================
[2026-06-27 23:47:22,189.189 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:47:22
[2026-06-27 23:47:22,527.527 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:47:22,683.683 INFO    ] Initializing speech engine...
[2026-06-27 23:47:22,688.688 INFO    ] 2026-06-27 23:47:22
[2026-06-27 23:47:22,895.895 INFO    ] 2026-06-27 23:47:22
[2026-06-27 23:47:22,926.926 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:47:23,113.113 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:47:23,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:47:23,253.253 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:47:23,321.321 INFO    ] time= 27/06/2026 23:47:23
[2026-06-27 23:47:23,346.346 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:47:23,351.351 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:47:23,420.420 INFO    ] No existing commands found in stream
[2026-06-27 23:47:28,434.434 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:47:28,438.438 INFO    ] Waiting 0.05 seconds before fallback handling...
[2026-06-27 23:47:28,868.868 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:47:28,870.870 INFO    ] Checking for system updates...
[2026-06-27 23:47:28,892.892 INFO    ] 200
[2026-06-27 23:47:28,893.893 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:47:28,925.925 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:47:28,926.926 INFO    ] No update needed
[2026-06-27 23:47:28,928.928 INFO    ] Checking for camera pi updates...
[2026-06-27 23:47:28,948.948 INFO    ] 200
[2026-06-27 23:47:28,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:47:28,973.973 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:47:29,016.016 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:47:29,018.018 INFO    ] No camera update needed
[2026-06-27 23:47:29,019.019 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:47:29,020.020 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:47:29,023.023 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:47:29,027.027 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:47:31,068.068 INFO    ] ================================================
[2026-06-27 23:47:31,083.083 INFO    ] Launching Daemon at Sat Jun 27 23:47:31 IST 2026
[2026-06-27 23:47:31,093.093 INFO    ] ================================================
[2026-06-27 23:47:31,482.482 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:47:31
[2026-06-27 23:47:31,829.829 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:47:31,984.984 INFO    ] Initializing speech engine...
[2026-06-27 23:47:31,996.996 INFO    ] 2026-06-27 23:47:31
[2026-06-27 23:47:32,213.213 INFO    ] 2026-06-27 23:47:32
[2026-06-27 23:47:32,243.243 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:47:32,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:47:32,432.432 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:47:32,568.568 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:47:32,622.622 INFO    ] time= 27/06/2026 23:47:32
[2026-06-27 23:47:32,661.661 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:47:32,667.667 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:47:32,735.735 INFO    ] No existing commands found in stream
[2026-06-27 23:47:37,745.745 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:47:37,748.748 INFO    ] Waiting 0.78 seconds before fallback handling...
[2026-06-27 23:47:38,909.909 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 23:47:38,911.911 INFO    ] Checking for system updates...
[2026-06-27 23:47:38,933.933 INFO    ] 200
[2026-06-27 23:47:38,934.934 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:47:38,965.965 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:47:38,967.967 INFO    ] No update needed
[2026-06-27 23:47:38,968.968 INFO    ] Checking for camera pi updates...
[2026-06-27 23:47:38,988.988 INFO    ] 200
[2026-06-27 23:47:38,989.989 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:47:39,013.013 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:47:39,059.059 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:47:39,060.060 INFO    ] No camera update needed
[2026-06-27 23:47:39,061.061 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:47:39,062.062 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:47:39,066.066 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:47:39,068.068 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:47:41,115.115 INFO    ] ================================================
[2026-06-27 23:47:41,131.131 INFO    ] Launching Daemon at Sat Jun 27 23:47:41 IST 2026
[2026-06-27 23:47:41,142.142 INFO    ] ================================================
[2026-06-27 23:47:41,512.512 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:47:41
[2026-06-27 23:47:41,832.832 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:47:41,968.968 INFO    ] Initializing speech engine...
[2026-06-27 23:47:41,982.982 INFO    ] 2026-06-27 23:47:41
[2026-06-27 23:47:42,204.204 INFO    ] 2026-06-27 23:47:42
[2026-06-27 23:47:42,235.235 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:47:42,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:47:42,445.445 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:47:42,749.749 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:47:42,753.753 INFO    ] time= 27/06/2026 23:47:42
[2026-06-27 23:47:42,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:47:42,782.782 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:47:42,886.886 INFO    ] No existing commands found in stream
[2026-06-27 23:47:47,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:47:47,898.898 INFO    ] Waiting 2.52 seconds before fallback handling...
[2026-06-27 23:47:50,819.819 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 23:47:50,821.821 INFO    ] Checking for system updates...
[2026-06-27 23:47:50,844.844 INFO    ] 200
[2026-06-27 23:47:50,845.845 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:47:50,876.876 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:47:50,878.878 INFO    ] No update needed
[2026-06-27 23:47:50,879.879 INFO    ] Checking for camera pi updates...
[2026-06-27 23:47:50,899.899 INFO    ] 200
[2026-06-27 23:47:50,900.900 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:47:50,926.926 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:47:50,976.976 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:47:50,977.977 INFO    ] No camera update needed
[2026-06-27 23:47:50,979.979 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:47:50,980.980 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:47:50,983.983 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:47:50,986.986 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:47:53,025.025 INFO    ] ================================================
[2026-06-27 23:47:53,041.041 INFO    ] Launching Daemon at Sat Jun 27 23:47:53 IST 2026
[2026-06-27 23:47:53,052.052 INFO    ] ================================================
[2026-06-27 23:47:53,407.407 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:47:53
[2026-06-27 23:47:53,719.719 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:47:53,849.849 INFO    ] Initializing speech engine...
[2026-06-27 23:47:53,853.853 INFO    ] 2026-06-27 23:47:53
[2026-06-27 23:47:54,072.072 INFO    ] 2026-06-27 23:47:54
[2026-06-27 23:47:54,101.101 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:47:54,287.287 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:47:54,291.291 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:47:54,425.425 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:47:54,488.488 INFO    ] time= 27/06/2026 23:47:54
[2026-06-27 23:47:54,521.521 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:47:54,527.527 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:47:54,595.595 INFO    ] No existing commands found in stream
[2026-06-27 23:47:59,609.609 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:47:59,612.612 INFO    ] Waiting 0.72 seconds before fallback handling...
[2026-06-27 23:48:00,766.766 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 23:48:00,767.767 INFO    ] Checking for system updates...
[2026-06-27 23:48:00,788.788 INFO    ] 200
[2026-06-27 23:48:00,790.790 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:48:00,822.822 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:48:00,823.823 INFO    ] No update needed
[2026-06-27 23:48:00,825.825 INFO    ] Checking for camera pi updates...
[2026-06-27 23:48:00,845.845 INFO    ] 200
[2026-06-27 23:48:00,846.846 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:48:00,871.871 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:48:00,925.925 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:48:00,926.926 INFO    ] No camera update needed
[2026-06-27 23:48:00,927.927 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:48:00,929.929 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:48:00,932.932 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:48:00,935.935 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:48:02,969.969 INFO    ] ================================================
[2026-06-27 23:48:02,985.985 INFO    ] Launching Daemon at Sat Jun 27 23:48:02 IST 2026
[2026-06-27 23:48:03,996.996 INFO    ] ================================================
[2026-06-27 23:48:03,325.325 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:48:03
[2026-06-27 23:48:03,641.641 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:48:03,785.785 INFO    ] Initializing speech engine...
[2026-06-27 23:48:03,790.790 INFO    ] 2026-06-27 23:48:03
[2026-06-27 23:48:03,993.993 INFO    ] 2026-06-27 23:48:03
[2026-06-27 23:48:04,023.023 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:48:04,145.145 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:48:04,208.208 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:48:04,345.345 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:48:04,413.413 INFO    ] time= 27/06/2026 23:48:04
[2026-06-27 23:48:04,437.437 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:48:04,443.443 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:48:04,509.509 INFO    ] No existing commands found in stream
[2026-06-27 23:48:09,518.518 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:48:09,521.521 INFO    ] Waiting 3.95 seconds before fallback handling...
[2026-06-27 23:48:13,893.893 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 23:48:13,895.895 INFO    ] Checking for system updates...
[2026-06-27 23:48:13,916.916 INFO    ] 200
[2026-06-27 23:48:13,917.917 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:48:13,947.947 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:48:13,948.948 INFO    ] No update needed
[2026-06-27 23:48:13,950.950 INFO    ] Checking for camera pi updates...
[2026-06-27 23:48:13,969.969 INFO    ] 200
[2026-06-27 23:48:13,970.970 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:48:13,994.994 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:48:14,034.034 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:48:14,036.036 INFO    ] No camera update needed
[2026-06-27 23:48:14,037.037 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:48:14,038.038 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:48:14,041.041 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:48:14,044.044 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:48:16,083.083 INFO    ] ================================================
[2026-06-27 23:48:16,099.099 INFO    ] Launching Daemon at Sat Jun 27 23:48:16 IST 2026
[2026-06-27 23:48:16,111.111 INFO    ] ================================================
[2026-06-27 23:48:16,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:48:16
[2026-06-27 23:48:16,761.761 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:48:16,907.907 INFO    ] Initializing speech engine...
[2026-06-27 23:48:16,913.913 INFO    ] 2026-06-27 23:48:16
[2026-06-27 23:48:17,125.125 INFO    ] 2026-06-27 23:48:17
[2026-06-27 23:48:17,154.154 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:48:17,340.340 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:48:17,349.349 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:48:17,477.477 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:48:17,524.524 INFO    ] time= 27/06/2026 23:48:17
[2026-06-27 23:48:17,572.572 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:48:17,574.574 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:48:17,647.647 INFO    ] No existing commands found in stream
[2026-06-27 23:48:22,656.656 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:48:22,659.659 INFO    ] Waiting 3.48 seconds before fallback handling...
[2026-06-27 23:48:26,549.549 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 23:48:26,551.551 INFO    ] Checking for system updates...
[2026-06-27 23:48:26,571.571 INFO    ] 200
[2026-06-27 23:48:26,573.573 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:48:26,603.603 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:48:26,604.604 INFO    ] No update needed
[2026-06-27 23:48:26,606.606 INFO    ] Checking for camera pi updates...
[2026-06-27 23:48:26,628.628 INFO    ] 200
[2026-06-27 23:48:26,629.629 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:48:26,653.653 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:48:26,698.698 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:48:26,699.699 INFO    ] No camera update needed
[2026-06-27 23:48:26,700.700 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:48:26,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:48:26,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:48:26,708.708 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:48:28,746.746 INFO    ] ================================================
[2026-06-27 23:48:28,762.762 INFO    ] Launching Daemon at Sat Jun 27 23:48:28 IST 2026
[2026-06-27 23:48:28,774.774 INFO    ] ================================================
[2026-06-27 23:48:29,161.161 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:48:29
[2026-06-27 23:48:29,480.480 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:48:29,632.632 INFO    ] Initializing speech engine...
[2026-06-27 23:48:29,646.646 INFO    ] 2026-06-27 23:48:29
[2026-06-27 23:48:29,884.884 INFO    ] 2026-06-27 23:48:29
[2026-06-27 23:48:29,914.914 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:48:30,182.182 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:48:30,231.231 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:48:30,399.399 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:48:30,403.403 INFO    ] time= 27/06/2026 23:48:30
[2026-06-27 23:48:30,429.429 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:48:30,430.430 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:48:30,549.549 INFO    ] No existing commands found in stream
[2026-06-27 23:48:35,556.556 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:48:35,559.559 INFO    ] Waiting 0.16 seconds before fallback handling...
[2026-06-27 23:48:36,142.142 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 23:48:36,144.144 INFO    ] Checking for system updates...
[2026-06-27 23:48:36,167.167 INFO    ] 200
[2026-06-27 23:48:36,168.168 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:48:36,203.203 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:48:36,205.205 INFO    ] No update needed
[2026-06-27 23:48:36,207.207 INFO    ] Checking for camera pi updates...
[2026-06-27 23:48:36,227.227 INFO    ] 200
[2026-06-27 23:48:36,228.228 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:48:36,251.251 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:48:36,290.290 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:48:36,292.292 INFO    ] No camera update needed
[2026-06-27 23:48:36,293.293 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:48:36,295.295 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:48:36,298.298 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:48:36,301.301 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:48:38,340.340 INFO    ] ================================================
[2026-06-27 23:48:38,355.355 INFO    ] Launching Daemon at Sat Jun 27 23:48:38 IST 2026
[2026-06-27 23:48:38,366.366 INFO    ] ================================================
[2026-06-27 23:48:38,748.748 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:48:38
[2026-06-27 23:48:39,066.066 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:48:39,200.200 INFO    ] Initializing speech engine...
[2026-06-27 23:48:39,214.214 INFO    ] 2026-06-27 23:48:39
[2026-06-27 23:48:39,419.419 INFO    ] 2026-06-27 23:48:39
[2026-06-27 23:48:39,449.449 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:48:39,634.634 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:48:39,643.643 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:48:39,775.775 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:48:39,843.843 INFO    ] time= 27/06/2026 23:48:39
[2026-06-27 23:48:39,868.868 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:48:39,873.873 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:48:39,965.965 INFO    ] No existing commands found in stream
[2026-06-27 23:48:44,974.974 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:48:44,977.977 INFO    ] Waiting 0.80 seconds before fallback handling...
[2026-06-27 23:48:46,216.216 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 23:48:46,218.218 INFO    ] Checking for system updates...
[2026-06-27 23:48:46,240.240 INFO    ] 200
[2026-06-27 23:48:46,241.241 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:48:46,274.274 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:48:46,275.275 INFO    ] No update needed
[2026-06-27 23:48:46,276.276 INFO    ] Checking for camera pi updates...
[2026-06-27 23:48:46,296.296 INFO    ] 200
[2026-06-27 23:48:46,297.297 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:48:46,321.321 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:48:46,363.363 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:48:46,365.365 INFO    ] No camera update needed
[2026-06-27 23:48:46,366.366 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:48:46,367.367 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:48:46,370.370 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:48:46,373.373 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:48:48,413.413 INFO    ] ================================================
[2026-06-27 23:48:48,429.429 INFO    ] Launching Daemon at Sat Jun 27 23:48:48 IST 2026
[2026-06-27 23:48:48,441.441 INFO    ] ================================================
[2026-06-27 23:48:48,793.793 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:48:48
[2026-06-27 23:48:49,110.110 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:48:49,252.252 INFO    ] Initializing speech engine...
[2026-06-27 23:48:49,258.258 INFO    ] 2026-06-27 23:48:49
[2026-06-27 23:48:49,462.462 INFO    ] 2026-06-27 23:48:49
[2026-06-27 23:48:49,490.490 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:48:49,673.673 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:48:49,682.682 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:48:49,826.826 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:48:49,878.878 INFO    ] time= 27/06/2026 23:48:49
[2026-06-27 23:48:49,901.901 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:48:49,906.906 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:48:49,973.973 INFO    ] No existing commands found in stream
[2026-06-27 23:48:54,987.987 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:48:54,990.990 INFO    ] Waiting 1.93 seconds before fallback handling...
[2026-06-27 23:48:57,354.354 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:48:57,355.355 INFO    ] Checking for system updates...
[2026-06-27 23:48:57,377.377 INFO    ] 200
[2026-06-27 23:48:57,378.378 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:48:57,411.411 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:48:57,413.413 INFO    ] No update needed
[2026-06-27 23:48:57,414.414 INFO    ] Checking for camera pi updates...
[2026-06-27 23:48:57,434.434 INFO    ] 200
[2026-06-27 23:48:57,435.435 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:48:57,459.459 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:48:57,501.501 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:48:57,502.502 INFO    ] No camera update needed
[2026-06-27 23:48:57,503.503 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:48:57,505.505 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:48:57,508.508 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:48:57,510.510 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:48:59,549.549 INFO    ] ================================================
[2026-06-27 23:48:59,565.565 INFO    ] Launching Daemon at Sat Jun 27 23:48:59 IST 2026
[2026-06-27 23:48:59,576.576 INFO    ] ================================================
[2026-06-27 23:48:59,931.931 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:48:59
[2026-06-27 23:49:00,249.249 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:49:00,387.387 INFO    ] Initializing speech engine...
[2026-06-27 23:49:00,397.397 INFO    ] 2026-06-27 23:49:00
[2026-06-27 23:49:00,603.603 INFO    ] 2026-06-27 23:49:00
[2026-06-27 23:49:00,632.632 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:49:00,843.843 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:49:00,850.850 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:49:01,111.111 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:49:01,115.115 INFO    ] time= 27/06/2026 23:49:01
[2026-06-27 23:49:01,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:49:01,142.142 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:49:01,239.239 INFO    ] No existing commands found in stream
[2026-06-27 23:49:06,249.249 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:49:06,252.252 INFO    ] Waiting 0.74 seconds before fallback handling...
[2026-06-27 23:49:07,422.422 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:49:07,423.423 INFO    ] Checking for system updates...
[2026-06-27 23:49:07,444.444 INFO    ] 200
[2026-06-27 23:49:07,446.446 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:49:07,477.477 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:49:07,478.478 INFO    ] No update needed
[2026-06-27 23:49:07,479.479 INFO    ] Checking for camera pi updates...
[2026-06-27 23:49:07,500.500 INFO    ] 200
[2026-06-27 23:49:07,502.502 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:49:07,527.527 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:49:07,573.573 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:49:07,575.575 INFO    ] No camera update needed
[2026-06-27 23:49:07,576.576 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:49:07,577.577 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:49:07,580.580 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:49:07,583.583 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:49:09,623.623 INFO    ] ================================================
[2026-06-27 23:49:09,639.639 INFO    ] Launching Daemon at Sat Jun 27 23:49:09 IST 2026
[2026-06-27 23:49:09,650.650 INFO    ] ================================================
[2026-06-27 23:49:09,989.989 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:49:09
[2026-06-27 23:49:10,302.302 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:49:10,440.440 INFO    ] Initializing speech engine...
[2026-06-27 23:49:10,450.450 INFO    ] 2026-06-27 23:49:10
[2026-06-27 23:49:10,657.657 INFO    ] 2026-06-27 23:49:10
[2026-06-27 23:49:10,687.687 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:49:10,874.874 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:49:10,883.883 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:49:11,008.008 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:49:11,064.064 INFO    ] time= 27/06/2026 23:49:11
[2026-06-27 23:49:11,089.089 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:49:11,110.110 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:49:11,183.183 INFO    ] No existing commands found in stream
[2026-06-27 23:49:16,197.197 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:49:16,200.200 INFO    ] Waiting 2.24 seconds before fallback handling...
[2026-06-27 23:49:18,830.830 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:49:18,832.832 INFO    ] Checking for system updates...
[2026-06-27 23:49:18,854.854 INFO    ] 200
[2026-06-27 23:49:18,855.855 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:49:18,886.886 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:49:18,887.887 INFO    ] No update needed
[2026-06-27 23:49:18,889.889 INFO    ] Checking for camera pi updates...
[2026-06-27 23:49:18,911.911 INFO    ] 200
[2026-06-27 23:49:18,912.912 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:49:18,942.942 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:49:19,087.087 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:49:19,089.089 INFO    ] No camera update needed
[2026-06-27 23:49:19,090.090 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:49:19,092.092 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:49:19,095.095 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:49:19,099.099 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:49:21,140.140 INFO    ] ================================================
[2026-06-27 23:49:21,156.156 INFO    ] Launching Daemon at Sat Jun 27 23:49:21 IST 2026
[2026-06-27 23:49:21,168.168 INFO    ] ================================================
[2026-06-27 23:49:21,538.538 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:49:21
[2026-06-27 23:49:21,880.880 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:49:22,034.034 INFO    ] Initializing speech engine...
[2026-06-27 23:49:22,040.040 INFO    ] 2026-06-27 23:49:22
[2026-06-27 23:49:22,252.252 INFO    ] 2026-06-27 23:49:22
[2026-06-27 23:49:22,281.281 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:49:22,468.468 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:49:22,478.478 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:49:22,623.623 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:49:22,677.677 INFO    ] time= 27/06/2026 23:49:22
[2026-06-27 23:49:22,700.700 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:49:22,706.706 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:49:22,773.773 INFO    ] No existing commands found in stream
[2026-06-27 23:49:27,783.783 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:49:27,786.786 INFO    ] Waiting 2.06 seconds before fallback handling...
[2026-06-27 23:49:30,285.285 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:49:30,287.287 INFO    ] Checking for system updates...
[2026-06-27 23:49:30,308.308 INFO    ] 200
[2026-06-27 23:49:30,309.309 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:49:30,340.340 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:49:30,342.342 INFO    ] No update needed
[2026-06-27 23:49:30,343.343 INFO    ] Checking for camera pi updates...
[2026-06-27 23:49:30,363.363 INFO    ] 200
[2026-06-27 23:49:30,365.365 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:49:30,389.389 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:49:30,435.435 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:49:30,436.436 INFO    ] No camera update needed
[2026-06-27 23:49:30,437.437 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:49:30,439.439 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:49:30,442.442 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:49:30,445.445 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:49:32,479.479 INFO    ] ================================================
[2026-06-27 23:49:32,489.489 INFO    ] Launching Daemon at Sat Jun 27 23:49:32 IST 2026
[2026-06-27 23:49:32,494.494 INFO    ] ================================================
[2026-06-27 23:49:32,796.796 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:49:32
[2026-06-27 23:49:33,123.123 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:49:33,279.279 INFO    ] Initializing speech engine...
[2026-06-27 23:49:33,284.284 INFO    ] 2026-06-27 23:49:33
[2026-06-27 23:49:33,541.541 INFO    ] 2026-06-27 23:49:33
[2026-06-27 23:49:33,570.570 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:49:33,756.756 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:49:33,765.765 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:49:33,910.910 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:49:33,964.964 INFO    ] time= 27/06/2026 23:49:33
[2026-06-27 23:49:33,985.985 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:49:33,991.991 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:49:34,059.059 INFO    ] No existing commands found in stream
[2026-06-27 23:49:39,068.068 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:49:39,070.070 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-27 23:49:42,735.735 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 23:49:42,736.736 INFO    ] Checking for system updates...
[2026-06-27 23:49:42,757.757 INFO    ] 200
[2026-06-27 23:49:42,758.758 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:49:42,791.791 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:49:42,793.793 INFO    ] No update needed
[2026-06-27 23:49:42,794.794 INFO    ] Checking for camera pi updates...
[2026-06-27 23:49:42,815.815 INFO    ] 200
[2026-06-27 23:49:42,817.817 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:49:42,840.840 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:49:42,890.890 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:49:42,891.891 INFO    ] No camera update needed
[2026-06-27 23:49:42,893.893 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:49:42,894.894 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:49:42,898.898 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:49:42,901.901 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:49:44,941.941 INFO    ] ================================================
[2026-06-27 23:49:44,957.957 INFO    ] Launching Daemon at Sat Jun 27 23:49:44 IST 2026
[2026-06-27 23:49:44,964.964 INFO    ] ================================================
[2026-06-27 23:49:45,296.296 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:49:45
[2026-06-27 23:49:45,654.654 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:49:45,800.800 INFO    ] Initializing speech engine...
[2026-06-27 23:49:45,805.805 INFO    ] 2026-06-27 23:49:45
[2026-06-27 23:49:46,013.013 INFO    ] 2026-06-27 23:49:45
[2026-06-27 23:49:46,042.042 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:49:46,200.200 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:49:46,259.259 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:49:46,411.411 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:49:46,467.467 INFO    ] time= 27/06/2026 23:49:46
[2026-06-27 23:49:46,503.503 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:49:46,520.520 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:49:46,595.595 INFO    ] No existing commands found in stream
[2026-06-27 23:49:51,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:49:51,609.609 INFO    ] Waiting 0.02 seconds before fallback handling...
[2026-06-27 23:49:52,035.035 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 23:49:52,036.036 INFO    ] Checking for system updates...
[2026-06-27 23:49:52,057.057 INFO    ] 200
[2026-06-27 23:49:52,058.058 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:49:52,092.092 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:49:52,093.093 INFO    ] No update needed
[2026-06-27 23:49:52,095.095 INFO    ] Checking for camera pi updates...
[2026-06-27 23:49:52,115.115 INFO    ] 200
[2026-06-27 23:49:52,117.117 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:49:52,141.141 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:49:52,194.194 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:49:52,195.195 INFO    ] No camera update needed
[2026-06-27 23:49:52,197.197 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:49:52,198.198 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:49:52,201.201 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:49:52,204.204 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:49:54,247.247 INFO    ] ================================================
[2026-06-27 23:49:54,262.262 INFO    ] Launching Daemon at Sat Jun 27 23:49:54 IST 2026
[2026-06-27 23:49:54,272.272 INFO    ] ================================================
[2026-06-27 23:49:54,622.622 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:49:54
[2026-06-27 23:49:54,935.935 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:49:55,078.078 INFO    ] Initializing speech engine...
[2026-06-27 23:49:55,083.083 INFO    ] 2026-06-27 23:49:55
[2026-06-27 23:49:55,289.289 INFO    ] 2026-06-27 23:49:55
[2026-06-27 23:49:55,318.318 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:49:55,501.501 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:49:55,511.511 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:49:55,657.657 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:49:55,709.709 INFO    ] time= 27/06/2026 23:49:55
[2026-06-27 23:49:55,732.732 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:49:55,739.739 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:49:55,805.805 INFO    ] No existing commands found in stream
[2026-06-27 23:50:00,819.819 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:50:00,822.822 INFO    ] Waiting 0.60 seconds before fallback handling...
[2026-06-27 23:50:01,835.835 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:50:01,836.836 INFO    ] Checking for system updates...
[2026-06-27 23:50:01,858.858 INFO    ] 200
[2026-06-27 23:50:01,860.860 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:50:01,895.895 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:50:01,896.896 INFO    ] No update needed
[2026-06-27 23:50:01,898.898 INFO    ] Checking for camera pi updates...
[2026-06-27 23:50:01,919.919 INFO    ] 200
[2026-06-27 23:50:01,922.922 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:50:02,013.013 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:50:02,109.109 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:50:02,111.111 INFO    ] No camera update needed
[2026-06-27 23:50:02,126.126 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:50:02,129.129 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:50:02,145.145 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:50:02,150.150 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:50:04,182.182 INFO    ] ================================================
[2026-06-27 23:50:04,198.198 INFO    ] Launching Daemon at Sat Jun 27 23:50:04 IST 2026
[2026-06-27 23:50:04,210.210 INFO    ] ================================================
[2026-06-27 23:50:04,568.568 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:50:04
[2026-06-27 23:50:04,886.886 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:50:05,018.018 INFO    ] Initializing speech engine...
[2026-06-27 23:50:05,022.022 INFO    ] 2026-06-27 23:50:05
[2026-06-27 23:50:05,239.239 INFO    ] 2026-06-27 23:50:05
[2026-06-27 23:50:05,269.269 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:50:05,392.392 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:50:05,455.455 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:50:05,598.598 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:50:05,666.666 INFO    ] time= 27/06/2026 23:50:05
[2026-06-27 23:50:05,690.690 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:50:05,698.698 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:50:05,789.789 INFO    ] No existing commands found in stream
[2026-06-27 23:50:10,804.804 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:50:10,808.808 INFO    ] Waiting 3.15 seconds before fallback handling...
[2026-06-27 23:50:14,348.348 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:50:14,349.349 INFO    ] Checking for system updates...
[2026-06-27 23:50:14,371.371 INFO    ] 200
[2026-06-27 23:50:14,372.372 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:50:14,407.407 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:50:14,409.409 INFO    ] No update needed
[2026-06-27 23:50:14,410.410 INFO    ] Checking for camera pi updates...
[2026-06-27 23:50:14,433.433 INFO    ] 200
[2026-06-27 23:50:14,434.434 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:50:14,458.458 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:50:14,514.514 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:50:14,515.515 INFO    ] No camera update needed
[2026-06-27 23:50:14,517.517 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:50:14,518.518 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:50:14,521.521 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:50:14,525.525 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:50:16,566.566 INFO    ] ================================================
[2026-06-27 23:50:16,582.582 INFO    ] Launching Daemon at Sat Jun 27 23:50:16 IST 2026
[2026-06-27 23:50:16,594.594 INFO    ] ================================================
[2026-06-27 23:50:16,986.986 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:50:16
[2026-06-27 23:50:17,328.328 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:50:17,483.483 INFO    ] Initializing speech engine...
[2026-06-27 23:50:17,486.486 INFO    ] 2026-06-27 23:50:17
[2026-06-27 23:50:17,694.694 INFO    ] 2026-06-27 23:50:17
[2026-06-27 23:50:17,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:50:17,910.910 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:50:17,918.918 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:50:18,085.085 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:50:18,124.124 INFO    ] time= 27/06/2026 23:50:18
[2026-06-27 23:50:18,140.140 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:50:18,147.147 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:50:18,214.214 INFO    ] No existing commands found in stream
[2026-06-27 23:50:23,232.232 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:50:23,235.235 INFO    ] Waiting 1.90 seconds before fallback handling...
[2026-06-27 23:50:25,529.529 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 23:50:25,531.531 INFO    ] Checking for system updates...
[2026-06-27 23:50:25,551.551 INFO    ] 200
[2026-06-27 23:50:25,553.553 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:50:25,587.587 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:50:25,588.588 INFO    ] No update needed
[2026-06-27 23:50:25,590.590 INFO    ] Checking for camera pi updates...
[2026-06-27 23:50:25,610.610 INFO    ] 200
[2026-06-27 23:50:25,612.612 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:50:25,635.635 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:50:25,680.680 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:50:25,681.681 INFO    ] No camera update needed
[2026-06-27 23:50:25,682.682 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:50:25,684.684 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:50:25,687.687 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:50:25,689.689 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:50:27,727.727 INFO    ] ================================================
[2026-06-27 23:50:27,742.742 INFO    ] Launching Daemon at Sat Jun 27 23:50:27 IST 2026
[2026-06-27 23:50:27,753.753 INFO    ] ================================================
[2026-06-27 23:50:28,125.125 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:50:28
[2026-06-27 23:50:28,457.457 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:50:28,599.599 INFO    ] Initializing speech engine...
[2026-06-27 23:50:28,604.604 INFO    ] 2026-06-27 23:50:28
[2026-06-27 23:50:28,808.808 INFO    ] 2026-06-27 23:50:28
[2026-06-27 23:50:28,835.835 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:50:29,020.020 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:50:29,028.028 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:50:29,158.158 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:50:29,217.217 INFO    ] time= 27/06/2026 23:50:29
[2026-06-27 23:50:29,250.250 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:50:29,255.255 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:50:29,321.321 INFO    ] No existing commands found in stream
[2026-06-27 23:50:34,332.332 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:50:34,335.335 INFO    ] Waiting 1.54 seconds before fallback handling...
[2026-06-27 23:50:36,252.252 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 23:50:36,254.254 INFO    ] Checking for system updates...
[2026-06-27 23:50:36,275.275 INFO    ] 200
[2026-06-27 23:50:36,276.276 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:50:36,309.309 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:50:36,310.310 INFO    ] No update needed
[2026-06-27 23:50:36,312.312 INFO    ] Checking for camera pi updates...
[2026-06-27 23:50:36,331.331 INFO    ] 200
[2026-06-27 23:50:36,332.332 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:50:36,358.358 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:50:36,413.413 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:50:36,415.415 INFO    ] No camera update needed
[2026-06-27 23:50:36,416.416 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:50:36,418.418 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:50:36,421.421 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:50:36,423.423 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:50:38,464.464 INFO    ] ================================================
[2026-06-27 23:50:38,480.480 INFO    ] Launching Daemon at Sat Jun 27 23:50:38 IST 2026
[2026-06-27 23:50:38,491.491 INFO    ] ================================================
[2026-06-27 23:50:38,855.855 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:50:38
[2026-06-27 23:50:39,200.200 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:50:39,355.355 INFO    ] Initializing speech engine...
[2026-06-27 23:50:39,360.360 INFO    ] 2026-06-27 23:50:39
[2026-06-27 23:50:39,568.568 INFO    ] 2026-06-27 23:50:39
[2026-06-27 23:50:39,597.597 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:50:39,781.781 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:50:39,789.789 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:50:39,920.920 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:50:39,988.988 INFO    ] time= 27/06/2026 23:50:39
[2026-06-27 23:50:40,012.012 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:50:40,017.017 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:50:40,085.085 INFO    ] No existing commands found in stream
[2026-06-27 23:50:45,108.108 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:50:45,110.110 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-27 23:50:49,551.551 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 23:50:49,553.553 INFO    ] Checking for system updates...
[2026-06-27 23:50:49,578.578 INFO    ] 200
[2026-06-27 23:50:49,580.580 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:50:49,615.615 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:50:49,617.617 INFO    ] No update needed
[2026-06-27 23:50:49,619.619 INFO    ] Checking for camera pi updates...
[2026-06-27 23:50:49,642.642 INFO    ] 200
[2026-06-27 23:50:49,644.644 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:50:49,671.671 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:50:49,716.716 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:50:49,718.718 INFO    ] No camera update needed
[2026-06-27 23:50:49,719.719 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:50:49,721.721 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:50:49,725.725 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:50:49,728.728 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:50:51,761.761 INFO    ] ================================================
[2026-06-27 23:50:51,777.777 INFO    ] Launching Daemon at Sat Jun 27 23:50:51 IST 2026
[2026-06-27 23:50:51,788.788 INFO    ] ================================================
[2026-06-27 23:50:52,115.115 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:50:52
[2026-06-27 23:50:52,434.434 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:50:52,585.585 INFO    ] Initializing speech engine...
[2026-06-27 23:50:52,602.602 INFO    ] 2026-06-27 23:50:52
[2026-06-27 23:50:52,816.816 INFO    ] 2026-06-27 23:50:52
[2026-06-27 23:50:52,847.847 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:50:52,990.990 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:50:53,034.034 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:50:53,190.190 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:50:53,242.242 INFO    ] time= 27/06/2026 23:50:53
[2026-06-27 23:50:53,266.266 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:50:53,272.272 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:50:53,339.339 INFO    ] No existing commands found in stream
[2026-06-27 23:50:58,350.350 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:50:58,353.353 INFO    ] Waiting 3.06 seconds before fallback handling...
[2026-06-27 23:51:01,915.915 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:51:01,917.917 INFO    ] Checking for system updates...
[2026-06-27 23:51:01,947.947 INFO    ] 200
[2026-06-27 23:51:01,949.949 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:51:01,993.993 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:51:01,995.995 INFO    ] No update needed
[2026-06-27 23:51:01,998.998 INFO    ] Checking for camera pi updates...
[2026-06-27 23:51:02,026.026 INFO    ] 200
[2026-06-27 23:51:02,028.028 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:51:02,063.063 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:51:02,103.103 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:51:02,105.105 INFO    ] No camera update needed
[2026-06-27 23:51:02,107.107 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:51:02,109.109 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:51:02,114.114 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:51:02,118.118 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:51:04,158.158 INFO    ] ================================================
[2026-06-27 23:51:04,174.174 INFO    ] Launching Daemon at Sat Jun 27 23:51:04 IST 2026
[2026-06-27 23:51:04,185.185 INFO    ] ================================================
[2026-06-27 23:51:04,523.523 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:51:04
[2026-06-27 23:51:04,838.838 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:51:04,981.981 INFO    ] Initializing speech engine...
[2026-06-27 23:51:04,986.986 INFO    ] 2026-06-27 23:51:04
[2026-06-27 23:51:05,190.190 INFO    ] 2026-06-27 23:51:05
[2026-06-27 23:51:05,218.218 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:51:05,403.403 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:51:05,413.413 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:51:05,702.702 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:51:05,706.706 INFO    ] time= 27/06/2026 23:51:05
[2026-06-27 23:51:05,708.708 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:51:05,733.733 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:51:05,829.829 INFO    ] No existing commands found in stream
[2026-06-27 23:51:10,840.840 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:51:10,842.842 INFO    ] Waiting 2.47 seconds before fallback handling...
[2026-06-27 23:51:13,730.730 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 23:51:13,732.732 INFO    ] Checking for system updates...
[2026-06-27 23:51:13,754.754 INFO    ] 200
[2026-06-27 23:51:13,755.755 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:51:13,786.786 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:51:13,787.787 INFO    ] No update needed
[2026-06-27 23:51:13,789.789 INFO    ] Checking for camera pi updates...
[2026-06-27 23:51:13,810.810 INFO    ] 200
[2026-06-27 23:51:13,811.811 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:51:13,837.837 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:51:13,910.910 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:51:13,911.911 INFO    ] No camera update needed
[2026-06-27 23:51:13,913.913 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:51:13,914.914 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:51:13,917.917 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:51:13,920.920 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:51:15,962.962 INFO    ] ================================================
[2026-06-27 23:51:15,978.978 INFO    ] Launching Daemon at Sat Jun 27 23:51:15 IST 2026
[2026-06-27 23:51:15,989.989 INFO    ] ================================================
[2026-06-27 23:51:16,380.380 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:51:16
[2026-06-27 23:51:16,706.706 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:51:16,867.867 INFO    ] Initializing speech engine...
[2026-06-27 23:51:16,887.887 INFO    ] 2026-06-27 23:51:16
[2026-06-27 23:51:17,106.106 INFO    ] 2026-06-27 23:51:17
[2026-06-27 23:51:17,135.135 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:51:17,273.273 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:51:17,320.320 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:51:17,451.451 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:51:17,506.506 INFO    ] time= 27/06/2026 23:51:17
[2026-06-27 23:51:17,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:51:17,550.550 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:51:17,622.622 INFO    ] No existing commands found in stream
[2026-06-27 23:51:22,632.632 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:51:22,635.635 INFO    ] Waiting 3.20 seconds before fallback handling...
[2026-06-27 23:51:26,248.248 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 23:51:26,250.250 INFO    ] Checking for system updates...
[2026-06-27 23:51:26,270.270 INFO    ] 200
[2026-06-27 23:51:26,272.272 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:51:26,304.304 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:51:26,306.306 INFO    ] No update needed
[2026-06-27 23:51:26,307.307 INFO    ] Checking for camera pi updates...
[2026-06-27 23:51:26,327.327 INFO    ] 200
[2026-06-27 23:51:26,328.328 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:51:26,353.353 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:51:26,492.492 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:51:26,493.493 INFO    ] No camera update needed
[2026-06-27 23:51:26,495.495 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:51:26,496.496 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:51:26,499.499 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:51:26,502.502 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:51:28,541.541 INFO    ] ================================================
[2026-06-27 23:51:28,557.557 INFO    ] Launching Daemon at Sat Jun 27 23:51:28 IST 2026
[2026-06-27 23:51:28,568.568 INFO    ] ================================================
[2026-06-27 23:51:28,910.910 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:51:28
[2026-06-27 23:51:29,224.224 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:51:29,362.362 INFO    ] Initializing speech engine...
[2026-06-27 23:51:29,372.372 INFO    ] 2026-06-27 23:51:29
[2026-06-27 23:51:29,578.578 INFO    ] 2026-06-27 23:51:29
[2026-06-27 23:51:29,608.608 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:51:29,799.799 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:51:29,802.802 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:51:29,951.951 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:51:30,009.009 INFO    ] time= 27/06/2026 23:51:29
[2026-06-27 23:51:30,032.032 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:51:30,039.039 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:51:30,111.111 INFO    ] No existing commands found in stream
[2026-06-27 23:51:35,125.125 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:51:35,128.128 INFO    ] Waiting 3.28 seconds before fallback handling...
[2026-06-27 23:51:38,868.868 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 23:51:38,869.869 INFO    ] Checking for system updates...
[2026-06-27 23:51:38,892.892 INFO    ] 200
[2026-06-27 23:51:38,893.893 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:51:38,924.924 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:51:38,925.925 INFO    ] No update needed
[2026-06-27 23:51:38,926.926 INFO    ] Checking for camera pi updates...
[2026-06-27 23:51:38,946.946 INFO    ] 200
[2026-06-27 23:51:38,948.948 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:51:38,971.971 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:51:39,032.032 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:51:39,034.034 INFO    ] No camera update needed
[2026-06-27 23:51:39,035.035 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:51:39,036.036 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:51:39,040.040 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:51:39,043.043 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:51:41,082.082 INFO    ] ================================================
[2026-06-27 23:51:41,097.097 INFO    ] Launching Daemon at Sat Jun 27 23:51:41 IST 2026
[2026-06-27 23:51:41,108.108 INFO    ] ================================================
[2026-06-27 23:51:41,477.477 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:51:41
[2026-06-27 23:51:41,790.790 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:51:41,932.932 INFO    ] Initializing speech engine...
[2026-06-27 23:51:41,938.938 INFO    ] 2026-06-27 23:51:41
[2026-06-27 23:51:42,142.142 INFO    ] 2026-06-27 23:51:42
[2026-06-27 23:51:42,170.170 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:51:42,354.354 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:51:42,357.357 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:51:42,493.493 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:51:42,552.552 INFO    ] time= 27/06/2026 23:51:42
[2026-06-27 23:51:42,583.583 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:51:42,589.589 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:51:42,656.656 INFO    ] No existing commands found in stream
[2026-06-27 23:51:47,665.665 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:51:47,668.668 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-27 23:51:48,495.495 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 23:51:48,497.497 INFO    ] Checking for system updates...
[2026-06-27 23:51:48,519.519 INFO    ] 200
[2026-06-27 23:51:48,521.521 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:51:48,554.554 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:51:48,556.556 INFO    ] No update needed
[2026-06-27 23:51:48,557.557 INFO    ] Checking for camera pi updates...
[2026-06-27 23:51:48,578.578 INFO    ] 200
[2026-06-27 23:51:48,579.579 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:51:48,603.603 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:51:48,654.654 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:51:48,655.655 INFO    ] No camera update needed
[2026-06-27 23:51:48,657.657 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:51:48,658.658 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:51:48,661.661 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:51:48,665.665 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:51:50,705.705 INFO    ] ================================================
[2026-06-27 23:51:50,720.720 INFO    ] Launching Daemon at Sat Jun 27 23:51:50 IST 2026
[2026-06-27 23:51:50,731.731 INFO    ] ================================================
[2026-06-27 23:51:51,071.071 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:51:51
[2026-06-27 23:51:51,385.385 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:51:51,514.514 INFO    ] Initializing speech engine...
[2026-06-27 23:51:51,519.519 INFO    ] 2026-06-27 23:51:51
[2026-06-27 23:51:51,736.736 INFO    ] 2026-06-27 23:51:51
[2026-06-27 23:51:51,766.766 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:51:51,950.950 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:51:51,958.958 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:51:52,105.105 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:51:52,157.157 INFO    ] time= 27/06/2026 23:51:52
[2026-06-27 23:51:52,181.181 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:51:52,187.187 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:51:52,254.254 INFO    ] No existing commands found in stream
[2026-06-27 23:51:57,264.264 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:51:57,266.266 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-27 23:51:58,809.809 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 23:51:58,811.811 INFO    ] Checking for system updates...
[2026-06-27 23:51:58,833.833 INFO    ] 200
[2026-06-27 23:51:58,835.835 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:51:58,865.865 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:51:58,866.866 INFO    ] No update needed
[2026-06-27 23:51:58,868.868 INFO    ] Checking for camera pi updates...
[2026-06-27 23:51:58,891.891 INFO    ] 200
[2026-06-27 23:51:58,892.892 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:51:58,915.915 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:51:58,958.958 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:51:58,959.959 INFO    ] No camera update needed
[2026-06-27 23:51:58,960.960 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:51:58,962.962 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:51:58,965.965 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:51:58,967.967 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:52:01,010.010 INFO    ] ================================================
[2026-06-27 23:52:01,025.025 INFO    ] Launching Daemon at Sat Jun 27 23:52:01 IST 2026
[2026-06-27 23:52:01,037.037 INFO    ] ================================================
[2026-06-27 23:52:01,398.398 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:52:01
[2026-06-27 23:52:01,787.787 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:52:02,028.028 INFO    ] Initializing speech engine...
[2026-06-27 23:52:02,034.034 INFO    ] 2026-06-27 23:52:02
[2026-06-27 23:52:02,306.306 INFO    ] 2026-06-27 23:52:02
[2026-06-27 23:52:02,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:52:02,516.516 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:52:02,565.565 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:52:02,722.722 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:52:02,775.775 INFO    ] time= 27/06/2026 23:52:02
[2026-06-27 23:52:02,820.820 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:52:02,826.826 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:52:02,901.901 INFO    ] No existing commands found in stream
[2026-06-27 23:52:07,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:52:07,914.914 INFO    ] Waiting 1.14 seconds before fallback handling...
[2026-06-27 23:52:09,430.430 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 23:52:09,431.431 INFO    ] Checking for system updates...
[2026-06-27 23:52:09,452.452 INFO    ] 200
[2026-06-27 23:52:09,453.453 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:52:09,488.488 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:52:09,489.489 INFO    ] No update needed
[2026-06-27 23:52:09,490.490 INFO    ] Checking for camera pi updates...
[2026-06-27 23:52:09,511.511 INFO    ] 200
[2026-06-27 23:52:09,512.512 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:52:09,536.536 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:52:09,587.587 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:52:09,589.589 INFO    ] No camera update needed
[2026-06-27 23:52:09,590.590 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:52:09,591.591 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:52:09,595.595 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:52:09,598.598 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:52:11,639.639 INFO    ] ================================================
[2026-06-27 23:52:11,658.658 INFO    ] Launching Daemon at Sat Jun 27 23:52:11 IST 2026
[2026-06-27 23:52:11,669.669 INFO    ] ================================================
[2026-06-27 23:52:11,997.997 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:52:11
[2026-06-27 23:52:12,312.312 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:52:12,442.442 INFO    ] Initializing speech engine...
[2026-06-27 23:52:12,445.445 INFO    ] 2026-06-27 23:52:12
[2026-06-27 23:52:12,662.662 INFO    ] 2026-06-27 23:52:12
[2026-06-27 23:52:12,691.691 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:52:12,876.876 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:52:12,879.879 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:52:13,022.022 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:52:13,085.085 INFO    ] time= 27/06/2026 23:52:13
[2026-06-27 23:52:13,107.107 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:52:13,113.113 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:52:13,180.180 INFO    ] No existing commands found in stream
[2026-06-27 23:52:18,189.189 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:52:18,192.192 INFO    ] Waiting 2.39 seconds before fallback handling...
[2026-06-27 23:52:20,990.990 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 23:52:20,992.992 INFO    ] Checking for system updates...
[2026-06-27 23:52:21,013.013 INFO    ] 200
[2026-06-27 23:52:21,015.015 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:52:21,045.045 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:52:21,046.046 INFO    ] No update needed
[2026-06-27 23:52:21,048.048 INFO    ] Checking for camera pi updates...
[2026-06-27 23:52:21,069.069 INFO    ] 200
[2026-06-27 23:52:21,070.070 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:52:21,094.094 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:52:21,149.149 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:52:21,150.150 INFO    ] No camera update needed
[2026-06-27 23:52:21,151.151 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:52:21,152.152 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:52:21,156.156 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:52:21,158.158 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:52:23,197.197 INFO    ] ================================================
[2026-06-27 23:52:23,212.212 INFO    ] Launching Daemon at Sat Jun 27 23:52:23 IST 2026
[2026-06-27 23:52:23,223.223 INFO    ] ================================================
[2026-06-27 23:52:23,585.585 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:52:23
[2026-06-27 23:52:23,923.923 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:52:24,068.068 INFO    ] Initializing speech engine...
[2026-06-27 23:52:24,073.073 INFO    ] 2026-06-27 23:52:24
[2026-06-27 23:52:24,286.286 INFO    ] 2026-06-27 23:52:24
[2026-06-27 23:52:24,314.314 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:52:24,442.442 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:52:24,500.500 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:52:24,638.638 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:52:24,706.706 INFO    ] time= 27/06/2026 23:52:24
[2026-06-27 23:52:24,728.728 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:52:24,734.734 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:52:24,801.801 INFO    ] No existing commands found in stream
[2026-06-27 23:52:29,815.815 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:52:29,818.818 INFO    ] Waiting 1.74 seconds before fallback handling...
[2026-06-27 23:52:31,960.960 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 23:52:31,962.962 INFO    ] Checking for system updates...
[2026-06-27 23:52:31,991.991 INFO    ] 200
[2026-06-27 23:52:31,993.993 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:52:32,031.031 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:52:32,033.033 INFO    ] No update needed
[2026-06-27 23:52:32,035.035 INFO    ] Checking for camera pi updates...
[2026-06-27 23:52:32,060.060 INFO    ] 200
[2026-06-27 23:52:32,062.062 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:52:32,095.095 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:52:32,128.128 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:52:32,130.130 INFO    ] No camera update needed
[2026-06-27 23:52:32,131.131 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:52:32,132.132 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:52:32,136.136 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:52:32,139.139 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:52:34,173.173 INFO    ] ================================================
[2026-06-27 23:52:34,189.189 INFO    ] Launching Daemon at Sat Jun 27 23:52:34 IST 2026
[2026-06-27 23:52:34,201.201 INFO    ] ================================================
[2026-06-27 23:52:34,603.603 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:52:34
[2026-06-27 23:52:34,920.920 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:52:35,063.063 INFO    ] Initializing speech engine...
[2026-06-27 23:52:35,069.069 INFO    ] 2026-06-27 23:52:35
[2026-06-27 23:52:35,274.274 INFO    ] 2026-06-27 23:52:35
[2026-06-27 23:52:35,302.302 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:52:35,434.434 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:52:35,487.487 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:52:35,639.639 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:52:35,692.692 INFO    ] time= 27/06/2026 23:52:35
[2026-06-27 23:52:35,714.714 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:52:35,720.720 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:52:35,785.785 INFO    ] No existing commands found in stream
[2026-06-27 23:52:40,796.796 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:52:40,799.799 INFO    ] Waiting 0.43 seconds before fallback handling...
[2026-06-27 23:52:41,625.625 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:52:41,627.627 INFO    ] Checking for system updates...
[2026-06-27 23:52:41,649.649 INFO    ] 200
[2026-06-27 23:52:41,650.650 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:52:41,683.683 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:52:41,684.684 INFO    ] No update needed
[2026-06-27 23:52:41,686.686 INFO    ] Checking for camera pi updates...
[2026-06-27 23:52:41,705.705 INFO    ] 200
[2026-06-27 23:52:41,707.707 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:52:41,730.730 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:52:41,774.774 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:52:41,775.775 INFO    ] No camera update needed
[2026-06-27 23:52:41,776.776 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:52:41,778.778 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:52:41,781.781 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:52:41,783.783 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:52:43,824.824 INFO    ] ================================================
[2026-06-27 23:52:43,839.839 INFO    ] Launching Daemon at Sat Jun 27 23:52:43 IST 2026
[2026-06-27 23:52:43,849.849 INFO    ] ================================================
[2026-06-27 23:52:44,193.193 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:52:44
[2026-06-27 23:52:44,514.514 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:52:44,662.662 INFO    ] Initializing speech engine...
[2026-06-27 23:52:44,667.667 INFO    ] 2026-06-27 23:52:44
[2026-06-27 23:52:44,872.872 INFO    ] 2026-06-27 23:52:44
[2026-06-27 23:52:44,900.900 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:52:45,085.085 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:52:45,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:52:45,224.224 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:52:45,292.292 INFO    ] time= 27/06/2026 23:52:45
[2026-06-27 23:52:45,316.316 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:52:45,321.321 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:52:45,389.389 INFO    ] No existing commands found in stream
[2026-06-27 23:52:50,398.398 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:52:50,400.400 INFO    ] Waiting 3.84 seconds before fallback handling...
[2026-06-27 23:52:54,625.625 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:52:54,627.627 INFO    ] Checking for system updates...
[2026-06-27 23:52:54,649.649 INFO    ] 200
[2026-06-27 23:52:54,651.651 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:52:54,684.684 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:52:54,686.686 INFO    ] No update needed
[2026-06-27 23:52:54,687.687 INFO    ] Checking for camera pi updates...
[2026-06-27 23:52:54,706.706 INFO    ] 200
[2026-06-27 23:52:54,708.708 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:52:54,733.733 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:52:54,770.770 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:52:54,771.771 INFO    ] No camera update needed
[2026-06-27 23:52:54,773.773 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:52:54,774.774 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:52:54,777.777 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:52:54,780.780 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:52:56,823.823 INFO    ] ================================================
[2026-06-27 23:52:56,838.838 INFO    ] Launching Daemon at Sat Jun 27 23:52:56 IST 2026
[2026-06-27 23:52:56,849.849 INFO    ] ================================================
[2026-06-27 23:52:57,235.235 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:52:57
[2026-06-27 23:52:57,581.581 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:52:57,736.736 INFO    ] Initializing speech engine...
[2026-06-27 23:52:57,740.740 INFO    ] 2026-06-27 23:52:57
[2026-06-27 23:52:57,956.956 INFO    ] 2026-06-27 23:52:57
[2026-06-27 23:52:57,980.980 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:52:58,164.164 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:52:58,172.172 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:52:58,318.318 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:52:58,371.371 INFO    ] time= 27/06/2026 23:52:58
[2026-06-27 23:52:58,394.394 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:52:58,400.400 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:52:58,467.467 INFO    ] No existing commands found in stream
[2026-06-27 23:53:03,476.476 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:53:03,480.480 INFO    ] Waiting 3.51 seconds before fallback handling...
[2026-06-27 23:53:07,410.410 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 23:53:07,412.412 INFO    ] Checking for system updates...
[2026-06-27 23:53:07,436.436 INFO    ] 200
[2026-06-27 23:53:07,437.437 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:53:07,469.469 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:53:07,471.471 INFO    ] No update needed
[2026-06-27 23:53:07,472.472 INFO    ] Checking for camera pi updates...
[2026-06-27 23:53:07,494.494 INFO    ] 200
[2026-06-27 23:53:07,496.496 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:53:07,523.523 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:53:07,567.567 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:53:07,569.569 INFO    ] No camera update needed
[2026-06-27 23:53:07,570.570 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:53:07,571.571 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:53:07,575.575 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:53:07,577.577 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:53:09,617.617 INFO    ] ================================================
[2026-06-27 23:53:09,632.632 INFO    ] Launching Daemon at Sat Jun 27 23:53:09 IST 2026
[2026-06-27 23:53:09,643.643 INFO    ] ================================================
[2026-06-27 23:53:10,032.032 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:53:10
[2026-06-27 23:53:10,381.381 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:53:10,538.538 INFO    ] Initializing speech engine...
[2026-06-27 23:53:10,545.545 INFO    ] 2026-06-27 23:53:10
[2026-06-27 23:53:10,759.759 INFO    ] 2026-06-27 23:53:10
[2026-06-27 23:53:10,788.788 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:53:10,979.979 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:53:10,984.984 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:53:11,132.132 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:53:11,182.182 INFO    ] time= 27/06/2026 23:53:11
[2026-06-27 23:53:11,203.203 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:53:11,209.209 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:53:11,275.275 INFO    ] No existing commands found in stream
[2026-06-27 23:53:16,287.287 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:53:16,293.293 INFO    ] Waiting 0.07 seconds before fallback handling...
[2026-06-27 23:53:16,763.763 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:53:16,765.765 INFO    ] Checking for system updates...
[2026-06-27 23:53:16,786.786 INFO    ] 200
[2026-06-27 23:53:16,787.787 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:53:16,818.818 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:53:16,819.819 INFO    ] No update needed
[2026-06-27 23:53:16,821.821 INFO    ] Checking for camera pi updates...
[2026-06-27 23:53:16,842.842 INFO    ] 200
[2026-06-27 23:53:16,844.844 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:53:16,869.869 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:53:16,914.914 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:53:16,915.915 INFO    ] No camera update needed
[2026-06-27 23:53:16,917.917 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:53:16,918.918 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:53:16,921.921 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:53:16,924.924 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:53:18,965.965 INFO    ] ================================================
[2026-06-27 23:53:18,981.981 INFO    ] Launching Daemon at Sat Jun 27 23:53:18 IST 2026
[2026-06-27 23:53:18,992.992 INFO    ] ================================================
[2026-06-27 23:53:19,383.383 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:53:19
[2026-06-27 23:53:19,730.730 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:53:19,884.884 INFO    ] Initializing speech engine...
[2026-06-27 23:53:19,890.890 INFO    ] 2026-06-27 23:53:19
[2026-06-27 23:53:20,101.101 INFO    ] 2026-06-27 23:53:20
[2026-06-27 23:53:20,130.130 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:53:20,316.316 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:53:20,325.325 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:53:20,465.465 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:53:20,525.525 INFO    ] time= 27/06/2026 23:53:20
[2026-06-27 23:53:20,551.551 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:53:20,553.553 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:53:20,620.620 INFO    ] No existing commands found in stream
[2026-06-27 23:53:25,634.634 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:53:25,638.638 INFO    ] Waiting 0.33 seconds before fallback handling...
[2026-06-27 23:53:26,374.374 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 23:53:26,376.376 INFO    ] Checking for system updates...
[2026-06-27 23:53:26,399.399 INFO    ] 200
[2026-06-27 23:53:26,400.400 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:53:26,434.434 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:53:26,435.435 INFO    ] No update needed
[2026-06-27 23:53:26,436.436 INFO    ] Checking for camera pi updates...
[2026-06-27 23:53:26,457.457 INFO    ] 200
[2026-06-27 23:53:26,459.459 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:53:26,482.482 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:53:26,531.531 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:53:26,532.532 INFO    ] No camera update needed
[2026-06-27 23:53:26,534.534 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:53:26,535.535 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:53:26,538.538 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:53:26,541.541 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:53:28,580.580 INFO    ] ================================================
[2026-06-27 23:53:28,595.595 INFO    ] Launching Daemon at Sat Jun 27 23:53:28 IST 2026
[2026-06-27 23:53:28,606.606 INFO    ] ================================================
[2026-06-27 23:53:29,002.002 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:53:29
[2026-06-27 23:53:29,351.351 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:53:29,506.506 INFO    ] Initializing speech engine...
[2026-06-27 23:53:29,512.512 INFO    ] 2026-06-27 23:53:29
[2026-06-27 23:53:29,723.723 INFO    ] 2026-06-27 23:53:29
[2026-06-27 23:53:29,752.752 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:53:30,031.031 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:53:30,073.073 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:53:30,364.364 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:53:30,368.368 INFO    ] time= 27/06/2026 23:53:30
[2026-06-27 23:53:30,372.372 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:53:30,377.377 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:53:30,475.475 INFO    ] No existing commands found in stream
[2026-06-27 23:53:35,486.486 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:53:35,489.489 INFO    ] Waiting 2.16 seconds before fallback handling...
[2026-06-27 23:53:38,086.086 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:53:38,088.088 INFO    ] Checking for system updates...
[2026-06-27 23:53:38,109.109 INFO    ] 200
[2026-06-27 23:53:38,111.111 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:53:38,149.149 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:53:38,150.150 INFO    ] No update needed
[2026-06-27 23:53:38,151.151 INFO    ] Checking for camera pi updates...
[2026-06-27 23:53:38,171.171 INFO    ] 200
[2026-06-27 23:53:38,172.172 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:53:38,196.196 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:53:38,239.239 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:53:38,240.240 INFO    ] No camera update needed
[2026-06-27 23:53:38,241.241 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:53:38,243.243 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:53:38,246.246 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:53:38,249.249 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:53:40,288.288 INFO    ] ================================================
[2026-06-27 23:53:40,303.303 INFO    ] Launching Daemon at Sat Jun 27 23:53:40 IST 2026
[2026-06-27 23:53:40,314.314 INFO    ] ================================================
[2026-06-27 23:53:40,651.651 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:53:40
[2026-06-27 23:53:40,965.965 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:53:41,101.101 INFO    ] Initializing speech engine...
[2026-06-27 23:53:41,110.110 INFO    ] 2026-06-27 23:53:41
[2026-06-27 23:53:41,313.313 INFO    ] 2026-06-27 23:53:41
[2026-06-27 23:53:41,343.343 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:53:41,525.525 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:53:41,535.535 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:53:41,664.664 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:53:41,731.731 INFO    ] time= 27/06/2026 23:53:41
[2026-06-27 23:53:41,755.755 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:53:41,761.761 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:53:41,827.827 INFO    ] No existing commands found in stream
[2026-06-27 23:53:46,841.841 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:53:46,844.844 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-27 23:53:47,608.608 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:53:47,610.610 INFO    ] Checking for system updates...
[2026-06-27 23:53:47,631.631 INFO    ] 200
[2026-06-27 23:53:47,632.632 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:53:47,667.667 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:53:47,668.668 INFO    ] No update needed
[2026-06-27 23:53:47,669.669 INFO    ] Checking for camera pi updates...
[2026-06-27 23:53:47,690.690 INFO    ] 200
[2026-06-27 23:53:47,692.692 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:53:47,715.715 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:53:47,765.765 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:53:47,767.767 INFO    ] No camera update needed
[2026-06-27 23:53:47,768.768 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:53:47,769.769 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:53:47,772.772 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:53:47,775.775 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:53:49,814.814 INFO    ] ================================================
[2026-06-27 23:53:49,829.829 INFO    ] Launching Daemon at Sat Jun 27 23:53:49 IST 2026
[2026-06-27 23:53:49,839.839 INFO    ] ================================================
[2026-06-27 23:53:50,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:53:50
[2026-06-27 23:53:50,510.510 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:53:50,654.654 INFO    ] Initializing speech engine...
[2026-06-27 23:53:50,659.659 INFO    ] 2026-06-27 23:53:50
[2026-06-27 23:53:50,865.865 INFO    ] 2026-06-27 23:53:50
[2026-06-27 23:53:50,893.893 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:53:51,077.077 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:53:51,081.081 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:53:51,232.232 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:53:51,285.285 INFO    ] time= 27/06/2026 23:53:51
[2026-06-27 23:53:51,307.307 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:53:51,314.314 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:53:51,381.381 INFO    ] No existing commands found in stream
[2026-06-27 23:53:56,386.386 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:53:56,389.389 INFO    ] Waiting 1.16 seconds before fallback handling...
[2026-06-27 23:53:57,950.950 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 23:53:57,951.951 INFO    ] Checking for system updates...
[2026-06-27 23:53:57,974.974 INFO    ] 200
[2026-06-27 23:53:57,975.975 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:53:58,009.009 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:53:58,010.010 INFO    ] No update needed
[2026-06-27 23:53:58,011.011 INFO    ] Checking for camera pi updates...
[2026-06-27 23:53:58,031.031 INFO    ] 200
[2026-06-27 23:53:58,033.033 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:53:58,056.056 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:53:58,095.095 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:53:58,096.096 INFO    ] No camera update needed
[2026-06-27 23:53:58,098.098 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:53:58,099.099 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:53:58,102.102 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:53:58,105.105 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:54:00,142.142 INFO    ] ================================================
[2026-06-27 23:54:00,157.157 INFO    ] Launching Daemon at Sat Jun 27 23:54:00 IST 2026
[2026-06-27 23:54:00,168.168 INFO    ] ================================================
[2026-06-27 23:54:00,544.544 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:54:00
[2026-06-27 23:54:00,861.861 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:54:01,001.001 INFO    ] Initializing speech engine...
[2026-06-27 23:54:01,011.011 INFO    ] 2026-06-27 23:54:01
[2026-06-27 23:54:01,214.214 INFO    ] 2026-06-27 23:54:01
[2026-06-27 23:54:01,253.253 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:54:01,435.435 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:54:01,441.441 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:54:01,541.541 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:54:01,543.543 INFO    ] time= 27/06/2026 23:54:01
[2026-06-27 23:54:01,545.545 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:54:01,546.546 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:54:01,599.599 INFO    ] No existing commands found in stream
[2026-06-27 23:54:06,606.606 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:54:06,609.609 INFO    ] Waiting 0.11 seconds before fallback handling...
[2026-06-27 23:54:07,101.101 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:54:07,102.102 INFO    ] Checking for system updates...
[2026-06-27 23:54:07,125.125 INFO    ] 200
[2026-06-27 23:54:07,127.127 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:54:07,159.159 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:54:07,160.160 INFO    ] No update needed
[2026-06-27 23:54:07,161.161 INFO    ] Checking for camera pi updates...
[2026-06-27 23:54:07,181.181 INFO    ] 200
[2026-06-27 23:54:07,182.182 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:54:07,210.210 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:54:07,256.256 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:54:07,258.258 INFO    ] No camera update needed
[2026-06-27 23:54:07,260.260 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:54:07,261.261 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:54:07,264.264 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:54:07,267.267 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:54:09,306.306 INFO    ] ================================================
[2026-06-27 23:54:09,321.321 INFO    ] Launching Daemon at Sat Jun 27 23:54:09 IST 2026
[2026-06-27 23:54:09,332.332 INFO    ] ================================================
[2026-06-27 23:54:09,702.702 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:54:09
[2026-06-27 23:54:10,014.014 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:54:10,143.143 INFO    ] Initializing speech engine...
[2026-06-27 23:54:10,148.148 INFO    ] 2026-06-27 23:54:10
[2026-06-27 23:54:10,364.364 INFO    ] 2026-06-27 23:54:10
[2026-06-27 23:54:10,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:54:10,578.578 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:54:10,588.588 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:54:10,779.779 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:54:10,804.804 INFO    ] time= 27/06/2026 23:54:10
[2026-06-27 23:54:10,810.810 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:54:10,811.811 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:54:10,902.902 INFO    ] No existing commands found in stream
[2026-06-27 23:54:15,911.911 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:54:15,914.914 INFO    ] Waiting 1.43 seconds before fallback handling...
[2026-06-27 23:54:17,732.732 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 23:54:17,735.735 INFO    ] Checking for system updates...
[2026-06-27 23:54:17,773.773 INFO    ] 200
[2026-06-27 23:54:17,776.776 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:54:17,831.831 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:54:17,833.833 INFO    ] No update needed
[2026-06-27 23:54:17,836.836 INFO    ] Checking for camera pi updates...
[2026-06-27 23:54:17,878.878 INFO    ] 200
[2026-06-27 23:54:17,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:54:17,915.915 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:54:17,962.962 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:54:17,964.964 INFO    ] No camera update needed
[2026-06-27 23:54:17,965.965 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:54:17,967.967 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:54:17,970.970 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:54:17,973.973 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:54:20,014.014 INFO    ] ================================================
[2026-06-27 23:54:20,029.029 INFO    ] Launching Daemon at Sat Jun 27 23:54:20 IST 2026
[2026-06-27 23:54:20,041.041 INFO    ] ================================================
[2026-06-27 23:54:20,404.404 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:54:20
[2026-06-27 23:54:20,716.716 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:54:20,847.847 INFO    ] Initializing speech engine...
[2026-06-27 23:54:20,850.850 INFO    ] 2026-06-27 23:54:20
[2026-06-27 23:54:21,066.066 INFO    ] 2026-06-27 23:54:21
[2026-06-27 23:54:21,095.095 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:54:21,278.278 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:54:21,287.287 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:54:21,432.432 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:54:21,483.483 INFO    ] time= 27/06/2026 23:54:21
[2026-06-27 23:54:21,508.508 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:54:21,513.513 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:54:21,580.580 INFO    ] No existing commands found in stream
[2026-06-27 23:54:26,595.595 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:54:26,597.597 INFO    ] Waiting 1.18 seconds before fallback handling...
[2026-06-27 23:54:28,185.185 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 23:54:28,186.186 INFO    ] Checking for system updates...
[2026-06-27 23:54:28,206.206 INFO    ] 200
[2026-06-27 23:54:28,208.208 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:54:28,241.241 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:54:28,242.242 INFO    ] No update needed
[2026-06-27 23:54:28,243.243 INFO    ] Checking for camera pi updates...
[2026-06-27 23:54:28,264.264 INFO    ] 200
[2026-06-27 23:54:28,265.265 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:54:28,288.288 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:54:28,339.339 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:54:28,340.340 INFO    ] No camera update needed
[2026-06-27 23:54:28,341.341 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:54:28,342.342 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:54:28,346.346 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:54:28,349.349 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:54:30,390.390 INFO    ] ================================================
[2026-06-27 23:54:30,407.407 INFO    ] Launching Daemon at Sat Jun 27 23:54:30 IST 2026
[2026-06-27 23:54:30,417.417 INFO    ] ================================================
[2026-06-27 23:54:30,745.745 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:54:30
[2026-06-27 23:54:31,057.057 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:54:31,187.187 INFO    ] Initializing speech engine...
[2026-06-27 23:54:31,191.191 INFO    ] 2026-06-27 23:54:31
[2026-06-27 23:54:31,389.389 INFO    ] 2026-06-27 23:54:31
[2026-06-27 23:54:31,436.436 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:54:31,593.593 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:54:31,652.652 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:54:31,821.821 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:54:31,887.887 INFO    ] time= 27/06/2026 23:54:31
[2026-06-27 23:54:31,912.912 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:54:31,919.919 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:54:31,994.994 INFO    ] No existing commands found in stream
[2026-06-27 23:54:37,008.008 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:54:37,010.010 INFO    ] Waiting 3.31 seconds before fallback handling...
[2026-06-27 23:54:40,735.735 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:54:40,736.736 INFO    ] Checking for system updates...
[2026-06-27 23:54:40,757.757 INFO    ] 200
[2026-06-27 23:54:40,758.758 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:54:40,794.794 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:54:40,796.796 INFO    ] No update needed
[2026-06-27 23:54:40,797.797 INFO    ] Checking for camera pi updates...
[2026-06-27 23:54:40,816.816 INFO    ] 200
[2026-06-27 23:54:40,818.818 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:54:40,843.843 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:54:40,883.883 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:54:40,884.884 INFO    ] No camera update needed
[2026-06-27 23:54:40,886.886 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:54:40,887.887 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:54:40,890.890 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:54:40,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:54:42,933.933 INFO    ] ================================================
[2026-06-27 23:54:42,949.949 INFO    ] Launching Daemon at Sat Jun 27 23:54:42 IST 2026
[2026-06-27 23:54:42,960.960 INFO    ] ================================================
[2026-06-27 23:54:43,298.298 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:54:43
[2026-06-27 23:54:43,618.618 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:54:43,778.778 INFO    ] Initializing speech engine...
[2026-06-27 23:54:43,791.791 INFO    ] 2026-06-27 23:54:43
[2026-06-27 23:54:43,989.989 INFO    ] 2026-06-27 23:54:43
[2026-06-27 23:54:44,012.012 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:54:44,161.161 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:54:44,225.225 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:54:44,365.365 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:54:44,434.434 INFO    ] time= 27/06/2026 23:54:44
[2026-06-27 23:54:44,458.458 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:54:44,465.465 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:54:44,531.531 INFO    ] No existing commands found in stream
[2026-06-27 23:54:49,541.541 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:54:49,544.544 INFO    ] Waiting 1.33 seconds before fallback handling...
[2026-06-27 23:54:51,267.267 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 23:54:51,269.269 INFO    ] Checking for system updates...
[2026-06-27 23:54:51,290.290 INFO    ] 200
[2026-06-27 23:54:51,292.292 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:54:51,919.919 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:54:51,921.921 INFO    ] No update needed
[2026-06-27 23:54:51,924.924 INFO    ] Checking for camera pi updates...
[2026-06-27 23:54:51,962.962 INFO    ] 200
[2026-06-27 23:54:51,964.964 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:54:52,011.011 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:54:52,060.060 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:54:52,062.062 INFO    ] No camera update needed
[2026-06-27 23:54:52,063.063 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:54:52,064.064 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:54:52,067.067 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:54:52,070.070 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:54:54,108.108 INFO    ] ================================================
[2026-06-27 23:54:54,124.124 INFO    ] Launching Daemon at Sat Jun 27 23:54:54 IST 2026
[2026-06-27 23:54:54,134.134 INFO    ] ================================================
[2026-06-27 23:54:54,499.499 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:54:54
[2026-06-27 23:54:54,847.847 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:54:55,003.003 INFO    ] Initializing speech engine...
[2026-06-27 23:54:55,007.007 INFO    ] 2026-06-27 23:54:55
[2026-06-27 23:54:55,219.219 INFO    ] 2026-06-27 23:54:55
[2026-06-27 23:54:55,248.248 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:54:55,437.437 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:54:55,446.446 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:54:55,599.599 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:54:55,648.648 INFO    ] time= 27/06/2026 23:54:55
[2026-06-27 23:54:55,671.671 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:54:55,678.678 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:54:55,746.746 INFO    ] No existing commands found in stream
[2026-06-27 23:55:00,760.760 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:55:00,764.764 INFO    ] Waiting 0.81 seconds before fallback handling...
[2026-06-27 23:55:02,058.058 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 23:55:02,061.061 INFO    ] Checking for system updates...
[2026-06-27 23:55:02,084.084 INFO    ] 200
[2026-06-27 23:55:02,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:55:02,123.123 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:55:02,125.125 INFO    ] No update needed
[2026-06-27 23:55:02,127.127 INFO    ] Checking for camera pi updates...
[2026-06-27 23:55:02,156.156 INFO    ] 200
[2026-06-27 23:55:02,158.158 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:55:02,196.196 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:55:02,225.225 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:55:02,227.227 INFO    ] No camera update needed
[2026-06-27 23:55:02,229.229 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:55:02,231.231 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:55:02,235.235 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:55:02,239.239 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:55:04,279.279 INFO    ] ================================================
[2026-06-27 23:55:04,295.295 INFO    ] Launching Daemon at Sat Jun 27 23:55:04 IST 2026
[2026-06-27 23:55:04,306.306 INFO    ] ================================================
[2026-06-27 23:55:04,675.675 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:55:04
[2026-06-27 23:55:04,990.990 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:55:05,131.131 INFO    ] Initializing speech engine...
[2026-06-27 23:55:05,144.144 INFO    ] 2026-06-27 23:55:05
[2026-06-27 23:55:05,364.364 INFO    ] 2026-06-27 23:55:05
[2026-06-27 23:55:05,394.394 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:55:05,584.584 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:55:05,592.592 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:55:05,715.715 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:55:05,776.776 INFO    ] time= 27/06/2026 23:55:05
[2026-06-27 23:55:05,814.814 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:55:05,820.820 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:55:05,886.886 INFO    ] No existing commands found in stream
[2026-06-27 23:55:10,896.896 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:55:10,899.899 INFO    ] Waiting 0.83 seconds before fallback handling...
[2026-06-27 23:55:12,085.085 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 23:55:12,087.087 INFO    ] Checking for system updates...
[2026-06-27 23:55:12,109.109 INFO    ] 200
[2026-06-27 23:55:12,111.111 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:55:12,145.145 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:55:12,146.146 INFO    ] No update needed
[2026-06-27 23:55:12,148.148 INFO    ] Checking for camera pi updates...
[2026-06-27 23:55:12,169.169 INFO    ] 200
[2026-06-27 23:55:12,170.170 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:55:12,196.196 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:55:12,244.244 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:55:12,245.245 INFO    ] No camera update needed
[2026-06-27 23:55:12,247.247 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:55:12,248.248 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:55:12,251.251 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:55:12,255.255 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:55:14,295.295 INFO    ] ================================================
[2026-06-27 23:55:14,311.311 INFO    ] Launching Daemon at Sat Jun 27 23:55:14 IST 2026
[2026-06-27 23:55:14,322.322 INFO    ] ================================================
[2026-06-27 23:55:14,657.657 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:55:14
[2026-06-27 23:55:14,973.973 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:55:15,117.117 INFO    ] Initializing speech engine...
[2026-06-27 23:55:15,123.123 INFO    ] 2026-06-27 23:55:15
[2026-06-27 23:55:15,325.325 INFO    ] 2026-06-27 23:55:15
[2026-06-27 23:55:15,355.355 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:55:15,538.538 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:55:15,548.548 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:55:15,826.826 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:55:15,831.831 INFO    ] time= 27/06/2026 23:55:15
[2026-06-27 23:55:15,835.835 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:55:15,860.860 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:55:15,956.956 INFO    ] No existing commands found in stream
[2026-06-27 23:55:20,966.966 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:55:20,969.969 INFO    ] Waiting 2.17 seconds before fallback handling...
[2026-06-27 23:55:23,536.536 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:55:23,538.538 INFO    ] Checking for system updates...
[2026-06-27 23:55:23,558.558 INFO    ] 200
[2026-06-27 23:55:23,560.560 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:55:23,593.593 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:55:23,594.594 INFO    ] No update needed
[2026-06-27 23:55:23,595.595 INFO    ] Checking for camera pi updates...
[2026-06-27 23:55:23,623.623 INFO    ] 200
[2026-06-27 23:55:23,624.624 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:55:23,650.650 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:55:23,698.698 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:55:23,699.699 INFO    ] No camera update needed
[2026-06-27 23:55:23,700.700 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:55:23,702.702 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:55:23,705.705 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:55:23,707.707 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:55:25,748.748 INFO    ] ================================================
[2026-06-27 23:55:25,764.764 INFO    ] Launching Daemon at Sat Jun 27 23:55:25 IST 2026
[2026-06-27 23:55:25,776.776 INFO    ] ================================================
[2026-06-27 23:55:26,127.127 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:55:26
[2026-06-27 23:55:26,441.441 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:55:26,585.585 INFO    ] Initializing speech engine...
[2026-06-27 23:55:26,590.590 INFO    ] 2026-06-27 23:55:26
[2026-06-27 23:55:26,797.797 INFO    ] 2026-06-27 23:55:26
[2026-06-27 23:55:26,827.827 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:55:27,012.012 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:55:27,015.015 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:55:27,153.153 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:55:27,207.207 INFO    ] time= 27/06/2026 23:55:27
[2026-06-27 23:55:27,238.238 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:55:27,249.249 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:55:27,321.321 INFO    ] No existing commands found in stream
[2026-06-27 23:55:32,334.334 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:55:32,336.336 INFO    ] Waiting 1.81 seconds before fallback handling...
[2026-06-27 23:55:34,555.555 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:55:34,556.556 INFO    ] Checking for system updates...
[2026-06-27 23:55:34,577.577 INFO    ] 200
[2026-06-27 23:55:34,578.578 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:55:34,610.610 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:55:34,611.611 INFO    ] No update needed
[2026-06-27 23:55:34,612.612 INFO    ] Checking for camera pi updates...
[2026-06-27 23:55:34,632.632 INFO    ] 200
[2026-06-27 23:55:34,634.634 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:55:34,658.658 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:55:34,801.801 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:55:34,802.802 INFO    ] No camera update needed
[2026-06-27 23:55:34,804.804 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:55:34,805.805 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:55:34,808.808 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:55:34,811.811 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:55:36,851.851 INFO    ] ================================================
[2026-06-27 23:55:36,867.867 INFO    ] Launching Daemon at Sat Jun 27 23:55:36 IST 2026
[2026-06-27 23:55:36,878.878 INFO    ] ================================================
[2026-06-27 23:55:37,206.206 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:55:37
[2026-06-27 23:55:37,519.519 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:55:37,649.649 INFO    ] Initializing speech engine...
[2026-06-27 23:55:37,654.654 INFO    ] 2026-06-27 23:55:37
[2026-06-27 23:55:37,872.872 INFO    ] 2026-06-27 23:55:37
[2026-06-27 23:55:37,903.903 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:55:38,089.089 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:55:38,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:55:38,223.223 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:55:38,280.280 INFO    ] time= 27/06/2026 23:55:38
[2026-06-27 23:55:38,323.323 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:55:38,325.325 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:55:38,396.396 INFO    ] No existing commands found in stream
[2026-06-27 23:55:43,406.406 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:55:43,409.409 INFO    ] Waiting 1.04 seconds before fallback handling...
[2026-06-27 23:55:44,858.858 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 23:55:44,859.859 INFO    ] Checking for system updates...
[2026-06-27 23:55:44,880.880 INFO    ] 200
[2026-06-27 23:55:44,882.882 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:55:44,913.913 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:55:44,914.914 INFO    ] No update needed
[2026-06-27 23:55:44,916.916 INFO    ] Checking for camera pi updates...
[2026-06-27 23:55:44,935.935 INFO    ] 200
[2026-06-27 23:55:44,937.937 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:55:44,961.961 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:55:45,002.002 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:55:45,004.004 INFO    ] No camera update needed
[2026-06-27 23:55:45,005.005 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:55:45,006.006 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:55:45,009.009 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:55:45,012.012 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:55:47,052.052 INFO    ] ================================================
[2026-06-27 23:55:47,067.067 INFO    ] Launching Daemon at Sat Jun 27 23:55:47 IST 2026
[2026-06-27 23:55:47,078.078 INFO    ] ================================================
[2026-06-27 23:55:47,448.448 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:55:47
[2026-06-27 23:55:47,769.769 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:55:47,913.913 INFO    ] Initializing speech engine...
[2026-06-27 23:55:47,925.925 INFO    ] 2026-06-27 23:55:47
[2026-06-27 23:55:48,142.142 INFO    ] 2026-06-27 23:55:48
[2026-06-27 23:55:48,174.174 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:55:48,376.376 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:55:48,380.380 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:55:48,551.551 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:55:48,606.606 INFO    ] time= 27/06/2026 23:55:48
[2026-06-27 23:55:48,630.630 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:55:48,637.637 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:55:48,710.710 INFO    ] No existing commands found in stream
[2026-06-27 23:55:53,719.719 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:55:53,722.722 INFO    ] Waiting 1.13 seconds before fallback handling...
[2026-06-27 23:55:55,246.246 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 23:55:55,247.247 INFO    ] Checking for system updates...
[2026-06-27 23:55:55,269.269 INFO    ] 200
[2026-06-27 23:55:55,271.271 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:55:55,301.301 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:55:55,302.302 INFO    ] No update needed
[2026-06-27 23:55:55,304.304 INFO    ] Checking for camera pi updates...
[2026-06-27 23:55:55,325.325 INFO    ] 200
[2026-06-27 23:55:55,326.326 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:55:55,350.350 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:55:55,384.384 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:55:55,385.385 INFO    ] No camera update needed
[2026-06-27 23:55:55,387.387 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:55:55,388.388 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:55:55,391.391 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:55:55,394.394 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:55:57,432.432 INFO    ] ================================================
[2026-06-27 23:55:57,448.448 INFO    ] Launching Daemon at Sat Jun 27 23:55:57 IST 2026
[2026-06-27 23:55:57,460.460 INFO    ] ================================================
[2026-06-27 23:55:57,830.830 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:55:57
[2026-06-27 23:55:58,161.161 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:55:58,313.313 INFO    ] Initializing speech engine...
[2026-06-27 23:55:58,318.318 INFO    ] 2026-06-27 23:55:58
[2026-06-27 23:55:58,531.531 INFO    ] 2026-06-27 23:55:58
[2026-06-27 23:55:58,559.559 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:55:58,750.750 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:55:58,756.756 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:55:59,039.039 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:55:59,043.043 INFO    ] time= 27/06/2026 23:55:59
[2026-06-27 23:55:59,069.069 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:55:59,070.070 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:55:59,207.207 INFO    ] No existing commands found in stream
[2026-06-27 23:56:04,217.217 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:56:04,220.220 INFO    ] Waiting 3.62 seconds before fallback handling...
[2026-06-27 23:56:08,400.400 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:56:08,402.402 INFO    ] Checking for system updates...
[2026-06-27 23:56:08,423.423 INFO    ] 200
[2026-06-27 23:56:08,424.424 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:56:08,461.461 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:56:08,462.462 INFO    ] No update needed
[2026-06-27 23:56:08,463.463 INFO    ] Checking for camera pi updates...
[2026-06-27 23:56:08,483.483 INFO    ] 200
[2026-06-27 23:56:08,484.484 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:56:08,508.508 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:56:08,553.553 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:56:08,554.554 INFO    ] No camera update needed
[2026-06-27 23:56:08,556.556 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:56:08,557.557 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:56:08,560.560 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:56:08,563.563 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:56:10,600.600 INFO    ] ================================================
[2026-06-27 23:56:10,615.615 INFO    ] Launching Daemon at Sat Jun 27 23:56:10 IST 2026
[2026-06-27 23:56:10,626.626 INFO    ] ================================================
[2026-06-27 23:56:10,981.981 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:56:10
[2026-06-27 23:56:11,325.325 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:56:11,480.480 INFO    ] Initializing speech engine...
[2026-06-27 23:56:11,484.484 INFO    ] 2026-06-27 23:56:11
[2026-06-27 23:56:11,693.693 INFO    ] 2026-06-27 23:56:11
[2026-06-27 23:56:11,722.722 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:56:11,906.906 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:56:11,916.916 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:56:12,075.075 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:56:12,118.118 INFO    ] time= 27/06/2026 23:56:12
[2026-06-27 23:56:12,139.139 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:56:12,141.141 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:56:12,209.209 INFO    ] No existing commands found in stream
[2026-06-27 23:56:17,224.224 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:56:17,227.227 INFO    ] Waiting 3.94 seconds before fallback handling...
[2026-06-27 23:56:21,610.610 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:56:21,612.612 INFO    ] Checking for system updates...
[2026-06-27 23:56:21,636.636 INFO    ] 200
[2026-06-27 23:56:21,638.638 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:56:21,671.671 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:56:21,672.672 INFO    ] No update needed
[2026-06-27 23:56:21,674.674 INFO    ] Checking for camera pi updates...
[2026-06-27 23:56:21,695.695 INFO    ] 200
[2026-06-27 23:56:21,697.697 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:56:21,720.720 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:56:21,761.761 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:56:21,762.762 INFO    ] No camera update needed
[2026-06-27 23:56:21,764.764 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:56:21,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:56:21,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:56:21,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:56:23,810.810 INFO    ] ================================================
[2026-06-27 23:56:23,825.825 INFO    ] Launching Daemon at Sat Jun 27 23:56:23 IST 2026
[2026-06-27 23:56:23,836.836 INFO    ] ================================================
[2026-06-27 23:56:24,184.184 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:56:24
[2026-06-27 23:56:24,503.503 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:56:24,642.642 INFO    ] Initializing speech engine...
[2026-06-27 23:56:24,652.652 INFO    ] 2026-06-27 23:56:24
[2026-06-27 23:56:24,858.858 INFO    ] 2026-06-27 23:56:24
[2026-06-27 23:56:24,886.886 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:56:25,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:56:25,079.079 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:56:25,263.263 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:56:25,295.295 INFO    ] time= 27/06/2026 23:56:25
[2026-06-27 23:56:25,300.300 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:56:25,302.302 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:56:25,369.369 INFO    ] No existing commands found in stream
[2026-06-27 23:56:30,394.394 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:56:30,397.397 INFO    ] Waiting 0.63 seconds before fallback handling...
[2026-06-27 23:56:31,454.454 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:56:31,456.456 INFO    ] Checking for system updates...
[2026-06-27 23:56:31,476.476 INFO    ] 200
[2026-06-27 23:56:31,478.478 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:56:31,508.508 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:56:31,510.510 INFO    ] No update needed
[2026-06-27 23:56:31,511.511 INFO    ] Checking for camera pi updates...
[2026-06-27 23:56:31,532.532 INFO    ] 200
[2026-06-27 23:56:31,533.533 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:56:31,557.557 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:56:31,590.590 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:56:31,592.592 INFO    ] No camera update needed
[2026-06-27 23:56:31,593.593 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:56:31,595.595 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:56:31,598.598 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:56:31,600.600 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:56:33,633.633 INFO    ] ================================================
[2026-06-27 23:56:33,649.649 INFO    ] Launching Daemon at Sat Jun 27 23:56:33 IST 2026
[2026-06-27 23:56:33,660.660 INFO    ] ================================================
[2026-06-27 23:56:34,046.046 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:56:34
[2026-06-27 23:56:34,361.361 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:56:34,499.499 INFO    ] Initializing speech engine...
[2026-06-27 23:56:34,518.518 INFO    ] 2026-06-27 23:56:34
[2026-06-27 23:56:34,762.762 INFO    ] 2026-06-27 23:56:34
[2026-06-27 23:56:34,790.790 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:56:34,976.976 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:56:34,985.985 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:56:35,126.126 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:56:35,184.184 INFO    ] time= 27/06/2026 23:56:35
[2026-06-27 23:56:35,207.207 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:56:35,213.213 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:56:35,281.281 INFO    ] No existing commands found in stream
[2026-06-27 23:56:40,290.290 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:56:40,293.293 INFO    ] Waiting 0.37 seconds before fallback handling...
[2026-06-27 23:56:41,074.074 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:56:41,075.075 INFO    ] Checking for system updates...
[2026-06-27 23:56:41,097.097 INFO    ] 200
[2026-06-27 23:56:41,099.099 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:56:41,134.134 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:56:41,136.136 INFO    ] No update needed
[2026-06-27 23:56:41,138.138 INFO    ] Checking for camera pi updates...
[2026-06-27 23:56:41,157.157 INFO    ] 200
[2026-06-27 23:56:41,159.159 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:56:41,182.182 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:56:41,231.231 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:56:41,232.232 INFO    ] No camera update needed
[2026-06-27 23:56:41,234.234 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:56:41,235.235 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:56:41,238.238 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:56:41,241.241 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:56:43,281.281 INFO    ] ================================================
[2026-06-27 23:56:43,296.296 INFO    ] Launching Daemon at Sat Jun 27 23:56:43 IST 2026
[2026-06-27 23:56:43,307.307 INFO    ] ================================================
[2026-06-27 23:56:43,658.658 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:56:43
[2026-06-27 23:56:43,972.972 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:56:44,117.117 INFO    ] Initializing speech engine...
[2026-06-27 23:56:44,122.122 INFO    ] 2026-06-27 23:56:44
[2026-06-27 23:56:44,324.324 INFO    ] 2026-06-27 23:56:44
[2026-06-27 23:56:44,353.353 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:56:44,475.475 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:56:44,537.537 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:56:44,676.676 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:56:44,742.742 INFO    ] time= 27/06/2026 23:56:44
[2026-06-27 23:56:44,766.766 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:56:44,771.771 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:56:44,838.838 INFO    ] No existing commands found in stream
[2026-06-27 23:56:49,852.852 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:56:49,855.855 INFO    ] Waiting 1.63 seconds before fallback handling...
[2026-06-27 23:56:51,894.894 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 23:56:51,895.895 INFO    ] Checking for system updates...
[2026-06-27 23:56:51,916.916 INFO    ] 200
[2026-06-27 23:56:51,917.917 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:56:51,950.950 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:56:51,951.951 INFO    ] No update needed
[2026-06-27 23:56:51,952.952 INFO    ] Checking for camera pi updates...
[2026-06-27 23:56:51,972.972 INFO    ] 200
[2026-06-27 23:56:51,973.973 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:56:51,999.999 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:56:52,038.038 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:56:52,040.040 INFO    ] No camera update needed
[2026-06-27 23:56:52,041.041 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:56:52,042.042 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:56:52,045.045 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:56:52,048.048 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:56:54,087.087 INFO    ] ================================================
[2026-06-27 23:56:54,102.102 INFO    ] Launching Daemon at Sat Jun 27 23:56:54 IST 2026
[2026-06-27 23:56:54,113.113 INFO    ] ================================================
[2026-06-27 23:56:54,469.469 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:56:54
[2026-06-27 23:56:54,782.782 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:56:54,919.919 INFO    ] Initializing speech engine...
[2026-06-27 23:56:54,932.932 INFO    ] 2026-06-27 23:56:54
[2026-06-27 23:56:55,151.151 INFO    ] 2026-06-27 23:56:55
[2026-06-27 23:56:55,182.182 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:56:55,351.351 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:56:55,384.384 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:56:55,530.530 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:56:55,591.591 INFO    ] time= 27/06/2026 23:56:55
[2026-06-27 23:56:55,621.621 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:56:55,633.633 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:56:55,711.711 INFO    ] No existing commands found in stream
[2026-06-27 23:57:00,722.722 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:57:00,724.724 INFO    ] Waiting 3.83 seconds before fallback handling...
[2026-06-27 23:57:04,949.949 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 23:57:04,950.950 INFO    ] Checking for system updates...
[2026-06-27 23:57:04,971.971 INFO    ] 200
[2026-06-27 23:57:04,972.972 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:57:05,005.005 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:57:05,007.007 INFO    ] No update needed
[2026-06-27 23:57:05,008.008 INFO    ] Checking for camera pi updates...
[2026-06-27 23:57:05,030.030 INFO    ] 200
[2026-06-27 23:57:05,031.031 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:57:05,055.055 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:57:05,098.098 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:57:05,099.099 INFO    ] No camera update needed
[2026-06-27 23:57:05,100.100 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:57:05,102.102 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:57:05,105.105 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:57:05,108.108 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:57:07,145.145 INFO    ] ================================================
[2026-06-27 23:57:07,161.161 INFO    ] Launching Daemon at Sat Jun 27 23:57:07 IST 2026
[2026-06-27 23:57:07,171.171 INFO    ] ================================================
[2026-06-27 23:57:07,547.547 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:57:07
[2026-06-27 23:57:07,866.866 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:57:08,009.009 INFO    ] Initializing speech engine...
[2026-06-27 23:57:08,014.014 INFO    ] 2026-06-27 23:57:08
[2026-06-27 23:57:08,218.218 INFO    ] 2026-06-27 23:57:08
[2026-06-27 23:57:08,246.246 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:57:08,429.429 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:57:08,437.437 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:57:08,572.572 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:57:08,634.634 INFO    ] time= 27/06/2026 23:57:08
[2026-06-27 23:57:08,657.657 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:57:08,662.662 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:57:08,729.729 INFO    ] No existing commands found in stream
[2026-06-27 23:57:13,744.744 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:57:13,747.747 INFO    ] Waiting 1.57 seconds before fallback handling...
[2026-06-27 23:57:15,730.730 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 23:57:15,731.731 INFO    ] Checking for system updates...
[2026-06-27 23:57:15,753.753 INFO    ] 200
[2026-06-27 23:57:15,754.754 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:57:15,788.788 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:57:15,789.789 INFO    ] No update needed
[2026-06-27 23:57:15,791.791 INFO    ] Checking for camera pi updates...
[2026-06-27 23:57:15,810.810 INFO    ] 200
[2026-06-27 23:57:15,811.811 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:57:15,836.836 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:57:15,884.884 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:57:15,885.885 INFO    ] No camera update needed
[2026-06-27 23:57:15,887.887 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:57:15,888.888 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:57:15,891.891 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:57:15,893.893 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:57:17,932.932 INFO    ] ================================================
[2026-06-27 23:57:17,948.948 INFO    ] Launching Daemon at Sat Jun 27 23:57:17 IST 2026
[2026-06-27 23:57:17,959.959 INFO    ] ================================================
[2026-06-27 23:57:18,322.322 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:57:18
[2026-06-27 23:57:18,637.637 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:57:18,770.770 INFO    ] Initializing speech engine...
[2026-06-27 23:57:18,777.777 INFO    ] 2026-06-27 23:57:18
[2026-06-27 23:57:18,990.990 INFO    ] 2026-06-27 23:57:18
[2026-06-27 23:57:19,019.019 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:57:19,204.204 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:57:19,214.214 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:57:19,341.341 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:57:19,408.408 INFO    ] time= 27/06/2026 23:57:19
[2026-06-27 23:57:19,432.432 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:57:19,434.434 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:57:19,505.505 INFO    ] No existing commands found in stream
[2026-06-27 23:57:24,519.519 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:57:24,521.521 INFO    ] Waiting 2.70 seconds before fallback handling...
[2026-06-27 23:57:27,625.625 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:57:27,627.627 INFO    ] Checking for system updates...
[2026-06-27 23:57:27,649.649 INFO    ] 200
[2026-06-27 23:57:27,650.650 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:57:27,680.680 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:57:27,682.682 INFO    ] No update needed
[2026-06-27 23:57:27,683.683 INFO    ] Checking for camera pi updates...
[2026-06-27 23:57:27,703.703 INFO    ] 200
[2026-06-27 23:57:27,704.704 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:57:27,729.729 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:57:27,777.777 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:57:27,778.778 INFO    ] No camera update needed
[2026-06-27 23:57:27,779.779 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:57:27,781.781 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:57:27,784.784 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:57:27,786.786 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:57:29,827.827 INFO    ] ================================================
[2026-06-27 23:57:29,842.842 INFO    ] Launching Daemon at Sat Jun 27 23:57:29 IST 2026
[2026-06-27 23:57:29,853.853 INFO    ] ================================================
[2026-06-27 23:57:30,248.248 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:57:30
[2026-06-27 23:57:30,591.591 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:57:30,745.745 INFO    ] Initializing speech engine...
[2026-06-27 23:57:30,752.752 INFO    ] 2026-06-27 23:57:30
[2026-06-27 23:57:30,957.957 INFO    ] 2026-06-27 23:57:30
[2026-06-27 23:57:30,986.986 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:57:31,175.175 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:57:31,185.185 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:57:31,316.316 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:57:31,375.375 INFO    ] time= 27/06/2026 23:57:31
[2026-06-27 23:57:31,427.427 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:57:31,434.434 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:57:31,511.511 INFO    ] No existing commands found in stream
[2026-06-27 23:57:36,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:57:36,528.528 INFO    ] Waiting 0.09 seconds before fallback handling...
[2026-06-27 23:57:36,993.993 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 23:57:36,995.995 INFO    ] Checking for system updates...
[2026-06-27 23:57:37,021.021 INFO    ] 200
[2026-06-27 23:57:37,023.023 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:57:37,058.058 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:57:37,059.059 INFO    ] No update needed
[2026-06-27 23:57:37,061.061 INFO    ] Checking for camera pi updates...
[2026-06-27 23:57:37,083.083 INFO    ] 200
[2026-06-27 23:57:37,085.085 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:57:37,108.108 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:57:37,248.248 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:57:37,249.249 INFO    ] No camera update needed
[2026-06-27 23:57:37,251.251 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:57:37,252.252 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:57:37,256.256 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:57:37,259.259 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:57:39,297.297 INFO    ] ================================================
[2026-06-27 23:57:39,312.312 INFO    ] Launching Daemon at Sat Jun 27 23:57:39 IST 2026
[2026-06-27 23:57:39,323.323 INFO    ] ================================================
[2026-06-27 23:57:39,686.686 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:57:39
[2026-06-27 23:57:39,998.998 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:57:40,128.128 INFO    ] Initializing speech engine...
[2026-06-27 23:57:40,131.131 INFO    ] 2026-06-27 23:57:40
[2026-06-27 23:57:40,349.349 INFO    ] 2026-06-27 23:57:40
[2026-06-27 23:57:40,378.378 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:57:40,560.560 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:57:40,570.570 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:57:40,694.694 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:57:40,755.755 INFO    ] time= 27/06/2026 23:57:40
[2026-06-27 23:57:40,788.788 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:57:40,794.794 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:57:40,888.888 INFO    ] No existing commands found in stream
[2026-06-27 23:57:45,897.897 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:57:45,900.900 INFO    ] Waiting 1.87 seconds before fallback handling...
[2026-06-27 23:57:48,161.161 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 23:57:48,162.162 INFO    ] Checking for system updates...
[2026-06-27 23:57:48,184.184 INFO    ] 200
[2026-06-27 23:57:48,186.186 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:57:48,216.216 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:57:48,217.217 INFO    ] No update needed
[2026-06-27 23:57:48,219.219 INFO    ] Checking for camera pi updates...
[2026-06-27 23:57:48,239.239 INFO    ] 200
[2026-06-27 23:57:48,240.240 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:57:48,264.264 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:57:48,314.314 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:57:48,315.315 INFO    ] No camera update needed
[2026-06-27 23:57:48,317.317 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:57:48,318.318 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:57:48,321.321 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:57:48,324.324 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:57:50,361.361 INFO    ] ================================================
[2026-06-27 23:57:50,377.377 INFO    ] Launching Daemon at Sat Jun 27 23:57:50 IST 2026
[2026-06-27 23:57:50,387.387 INFO    ] ================================================
[2026-06-27 23:57:50,734.734 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:57:50
[2026-06-27 23:57:51,046.046 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:57:51,175.175 INFO    ] Initializing speech engine...
[2026-06-27 23:57:51,184.184 INFO    ] 2026-06-27 23:57:51
[2026-06-27 23:57:51,395.395 INFO    ] 2026-06-27 23:57:51
[2026-06-27 23:57:51,424.424 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:57:51,608.608 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:57:51,618.618 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:57:51,745.745 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:57:51,810.810 INFO    ] time= 27/06/2026 23:57:51
[2026-06-27 23:57:51,837.837 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:57:51,843.843 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:57:51,910.910 INFO    ] No existing commands found in stream
[2026-06-27 23:57:56,918.918 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:57:56,921.921 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-27 23:57:57,854.854 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 23:57:57,856.856 INFO    ] Checking for system updates...
[2026-06-27 23:57:57,878.878 INFO    ] 200
[2026-06-27 23:57:57,879.879 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:57:57,909.909 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:57:57,910.910 INFO    ] No update needed
[2026-06-27 23:57:57,912.912 INFO    ] Checking for camera pi updates...
[2026-06-27 23:57:57,932.932 INFO    ] 200
[2026-06-27 23:57:57,934.934 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:57:57,957.957 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:57:58,006.006 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:57:58,007.007 INFO    ] No camera update needed
[2026-06-27 23:57:58,008.008 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:57:58,010.010 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:57:58,012.012 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:57:58,016.016 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:58:00,054.054 INFO    ] ================================================
[2026-06-27 23:58:00,070.070 INFO    ] Launching Daemon at Sat Jun 27 23:58:00 IST 2026
[2026-06-27 23:58:00,080.080 INFO    ] ================================================
[2026-06-27 23:58:00,430.430 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:58:00
[2026-06-27 23:58:00,742.742 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:58:00,885.885 INFO    ] Initializing speech engine...
[2026-06-27 23:58:00,889.889 INFO    ] 2026-06-27 23:58:00
[2026-06-27 23:58:01,095.095 INFO    ] 2026-06-27 23:58:01
[2026-06-27 23:58:01,123.123 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:58:01,306.306 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:58:01,316.316 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:58:01,538.538 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:58:01,547.547 INFO    ] time= 27/06/2026 23:58:01
[2026-06-27 23:58:01,568.568 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:58:01,570.570 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:58:01,672.672 INFO    ] No existing commands found in stream
[2026-06-27 23:58:06,682.682 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:58:06,686.686 INFO    ] Waiting 1.68 seconds before fallback handling...
[2026-06-27 23:58:08,796.796 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:58:08,797.797 INFO    ] Checking for system updates...
[2026-06-27 23:58:08,819.819 INFO    ] 200
[2026-06-27 23:58:08,820.820 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:58:08,851.851 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:58:08,852.852 INFO    ] No update needed
[2026-06-27 23:58:08,854.854 INFO    ] Checking for camera pi updates...
[2026-06-27 23:58:08,875.875 INFO    ] 200
[2026-06-27 23:58:08,876.876 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:58:08,900.900 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:58:08,945.945 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:58:08,946.946 INFO    ] No camera update needed
[2026-06-27 23:58:08,947.947 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:58:08,949.949 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:58:08,951.951 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:58:08,954.954 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:58:10,992.992 INFO    ] ================================================
[2026-06-27 23:58:11,008.008 INFO    ] Launching Daemon at Sat Jun 27 23:58:11 IST 2026
[2026-06-27 23:58:11,018.018 INFO    ] ================================================
[2026-06-27 23:58:11,377.377 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:58:11
[2026-06-27 23:58:11,696.696 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:58:11,841.841 INFO    ] Initializing speech engine...
[2026-06-27 23:58:11,846.846 INFO    ] 2026-06-27 23:58:11
[2026-06-27 23:58:12,049.049 INFO    ] 2026-06-27 23:58:12
[2026-06-27 23:58:12,079.079 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:58:12,207.207 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:58:12,266.266 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:58:12,409.409 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:58:12,472.472 INFO    ] time= 27/06/2026 23:58:12
[2026-06-27 23:58:12,495.495 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:58:12,501.501 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:58:12,568.568 INFO    ] No existing commands found in stream
[2026-06-27 23:58:17,582.582 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:58:17,585.585 INFO    ] Waiting 2.82 seconds before fallback handling...
[2026-06-27 23:58:20,792.792 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:58:20,794.794 INFO    ] Checking for system updates...
[2026-06-27 23:58:20,815.815 INFO    ] 200
[2026-06-27 23:58:20,817.817 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:58:20,851.851 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:58:20,852.852 INFO    ] No update needed
[2026-06-27 23:58:20,854.854 INFO    ] Checking for camera pi updates...
[2026-06-27 23:58:20,875.875 INFO    ] 200
[2026-06-27 23:58:20,876.876 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:58:20,899.899 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:58:20,942.942 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:58:20,944.944 INFO    ] No camera update needed
[2026-06-27 23:58:20,945.945 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:58:20,946.946 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:58:20,949.949 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:58:20,952.952 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:58:22,990.990 INFO    ] ================================================
[2026-06-27 23:58:23,005.005 INFO    ] Launching Daemon at Sat Jun 27 23:58:22 IST 2026
[2026-06-27 23:58:23,015.015 INFO    ] ================================================
[2026-06-27 23:58:23,400.400 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:58:23
[2026-06-27 23:58:23,746.746 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:58:23,899.899 INFO    ] Initializing speech engine...
[2026-06-27 23:58:23,905.905 INFO    ] 2026-06-27 23:58:23
[2026-06-27 23:58:24,115.115 INFO    ] 2026-06-27 23:58:24
[2026-06-27 23:58:24,144.144 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:58:24,439.439 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:58:24,470.470 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:58:24,624.624 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:58:24,650.650 INFO    ] time= 27/06/2026 23:58:24
[2026-06-27 23:58:24,652.652 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:58:24,679.679 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:58:24,913.913 INFO    ] No existing commands found in stream
[2026-06-27 23:58:29,924.924 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:58:29,927.927 INFO    ] Waiting 3.01 seconds before fallback handling...
[2026-06-27 23:58:33,374.374 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 23:58:33,376.376 INFO    ] Checking for system updates...
[2026-06-27 23:58:33,397.397 INFO    ] 200
[2026-06-27 23:58:33,398.398 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:58:33,430.430 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:58:33,432.432 INFO    ] No update needed
[2026-06-27 23:58:33,433.433 INFO    ] Checking for camera pi updates...
[2026-06-27 23:58:33,455.455 INFO    ] 200
[2026-06-27 23:58:33,456.456 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:58:33,480.480 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:58:33,522.522 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:58:33,523.523 INFO    ] No camera update needed
[2026-06-27 23:58:33,525.525 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:58:33,526.526 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:58:33,529.529 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:58:33,531.531 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:58:35,571.571 INFO    ] ================================================
[2026-06-27 23:58:35,586.586 INFO    ] Launching Daemon at Sat Jun 27 23:58:35 IST 2026
[2026-06-27 23:58:35,597.597 INFO    ] ================================================
[2026-06-27 23:58:35,953.953 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:58:35
[2026-06-27 23:58:36,266.266 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:58:36,400.400 INFO    ] Initializing speech engine...
[2026-06-27 23:58:36,404.404 INFO    ] 2026-06-27 23:58:36
[2026-06-27 23:58:36,608.608 INFO    ] 2026-06-27 23:58:36
[2026-06-27 23:58:36,641.641 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:58:36,802.802 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:58:36,826.826 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:58:36,989.989 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:58:37,027.027 INFO    ] time= 27/06/2026 23:58:37
[2026-06-27 23:58:37,090.090 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:58:37,127.127 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:58:37,265.265 INFO    ] No existing commands found in stream
[2026-06-27 23:58:42,275.275 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:58:42,277.277 INFO    ] Waiting 0.17 seconds before fallback handling...
[2026-06-27 23:58:42,856.856 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 23:58:42,858.858 INFO    ] Checking for system updates...
[2026-06-27 23:58:42,879.879 INFO    ] 200
[2026-06-27 23:58:42,881.881 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:58:42,915.915 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:58:42,916.916 INFO    ] No update needed
[2026-06-27 23:58:42,918.918 INFO    ] Checking for camera pi updates...
[2026-06-27 23:58:42,937.937 INFO    ] 200
[2026-06-27 23:58:42,938.938 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:58:42,963.963 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:58:43,019.019 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:58:43,021.021 INFO    ] No camera update needed
[2026-06-27 23:58:43,022.022 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:58:43,023.023 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:58:43,026.026 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:58:43,029.029 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:58:45,067.067 INFO    ] ================================================
[2026-06-27 23:58:45,082.082 INFO    ] Launching Daemon at Sat Jun 27 23:58:45 IST 2026
[2026-06-27 23:58:45,093.093 INFO    ] ================================================
[2026-06-27 23:58:45,454.454 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:58:45
[2026-06-27 23:58:45,800.800 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:58:45,948.948 INFO    ] Initializing speech engine...
[2026-06-27 23:58:45,959.959 INFO    ] 2026-06-27 23:58:45
[2026-06-27 23:58:46,169.169 INFO    ] 2026-06-27 23:58:46
[2026-06-27 23:58:46,198.198 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:58:46,384.384 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:58:46,394.394 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:58:46,539.539 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:58:46,590.590 INFO    ] time= 27/06/2026 23:58:46
[2026-06-27 23:58:46,614.614 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:58:46,621.621 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:58:46,689.689 INFO    ] No existing commands found in stream
[2026-06-27 23:58:51,704.704 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:58:51,707.707 INFO    ] Waiting 0.38 seconds before fallback handling...
[2026-06-27 23:58:52,510.510 INFO    ] {'response': {'msg': 'order updated', 'status': False, 'data': 'order updated'}}
[2026-06-27 23:58:52,511.511 INFO    ] Checking for system updates...
[2026-06-27 23:58:52,535.535 INFO    ] 200
[2026-06-27 23:58:52,536.536 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:58:52,573.573 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:58:52,574.574 INFO    ] No update needed
[2026-06-27 23:58:52,576.576 INFO    ] Checking for camera pi updates...
[2026-06-27 23:58:52,595.595 INFO    ] 200
[2026-06-27 23:58:52,597.597 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:58:52,622.622 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:58:52,664.664 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:58:52,666.666 INFO    ] No camera update needed
[2026-06-27 23:58:52,667.667 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:58:52,668.668 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:58:52,671.671 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:58:52,674.674 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:58:54,712.712 INFO    ] ================================================
[2026-06-27 23:58:54,727.727 INFO    ] Launching Daemon at Sat Jun 27 23:58:54 IST 2026
[2026-06-27 23:58:54,738.738 INFO    ] ================================================
[2026-06-27 23:58:55,070.070 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:58:55
[2026-06-27 23:58:55,382.382 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:58:55,519.519 INFO    ] Initializing speech engine...
[2026-06-27 23:58:55,529.529 INFO    ] 2026-06-27 23:58:55
[2026-06-27 23:58:55,733.733 INFO    ] 2026-06-27 23:58:55
[2026-06-27 23:58:55,761.761 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:58:55,946.946 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:58:55,957.957 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:58:56,083.083 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:58:56,151.151 INFO    ] time= 27/06/2026 23:58:56
[2026-06-27 23:58:56,176.176 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:58:56,181.181 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:58:56,248.248 INFO    ] No existing commands found in stream
[2026-06-27 23:59:01,257.257 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:59:01,259.259 INFO    ] Waiting 3.12 seconds before fallback handling...
[2026-06-27 23:59:04,749.749 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:59:04,750.750 INFO    ] Checking for system updates...
[2026-06-27 23:59:04,772.772 INFO    ] 200
[2026-06-27 23:59:04,773.773 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:59:04,803.803 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:59:04,804.804 INFO    ] No update needed
[2026-06-27 23:59:04,806.806 INFO    ] Checking for camera pi updates...
[2026-06-27 23:59:04,827.827 INFO    ] 200
[2026-06-27 23:59:04,828.828 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:59:04,854.854 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:59:04,907.907 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:59:04,908.908 INFO    ] No camera update needed
[2026-06-27 23:59:04,909.909 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:59:04,910.910 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:59:04,914.914 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:59:04,916.916 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:59:06,955.955 INFO    ] ================================================
[2026-06-27 23:59:06,970.970 INFO    ] Launching Daemon at Sat Jun 27 23:59:06 IST 2026
[2026-06-27 23:59:06,981.981 INFO    ] ================================================
[2026-06-27 23:59:07,329.329 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:59:07
[2026-06-27 23:59:07,640.640 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:59:07,783.783 INFO    ] Initializing speech engine...
[2026-06-27 23:59:07,788.788 INFO    ] 2026-06-27 23:59:07
[2026-06-27 23:59:07,994.994 INFO    ] 2026-06-27 23:59:07
[2026-06-27 23:59:08,024.024 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:59:08,148.148 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:59:08,211.211 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:59:08,350.350 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:59:08,414.414 INFO    ] time= 27/06/2026 23:59:08
[2026-06-27 23:59:08,442.442 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:59:08,444.444 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:59:08,515.515 INFO    ] No existing commands found in stream
[2026-06-27 23:59:13,525.525 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:59:13,528.528 INFO    ] Waiting 0.54 seconds before fallback handling...
[2026-06-27 23:59:14,563.563 INFO    ] {'response': {'status': False, 'data': 'order updated', 'msg': 'order updated'}}
[2026-06-27 23:59:14,565.565 INFO    ] Checking for system updates...
[2026-06-27 23:59:14,587.587 INFO    ] 200
[2026-06-27 23:59:14,593.593 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:59:14,631.631 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:59:14,633.633 INFO    ] No update needed
[2026-06-27 23:59:14,634.634 INFO    ] Checking for camera pi updates...
[2026-06-27 23:59:14,655.655 INFO    ] 200
[2026-06-27 23:59:14,657.657 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:59:14,685.685 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:59:14,734.734 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:59:14,735.735 INFO    ] No camera update needed
[2026-06-27 23:59:14,737.737 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:59:14,738.738 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:59:14,741.741 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:59:14,744.744 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:59:16,782.782 INFO    ] ================================================
[2026-06-27 23:59:16,798.798 INFO    ] Launching Daemon at Sat Jun 27 23:59:16 IST 2026
[2026-06-27 23:59:16,808.808 INFO    ] ================================================
[2026-06-27 23:59:17,191.191 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:59:17
[2026-06-27 23:59:17,533.533 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:59:17,686.686 INFO    ] Initializing speech engine...
[2026-06-27 23:59:17,692.692 INFO    ] 2026-06-27 23:59:17
[2026-06-27 23:59:17,904.904 INFO    ] 2026-06-27 23:59:17
[2026-06-27 23:59:17,933.933 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:59:18,069.069 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:59:18,123.123 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:59:18,289.289 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:59:18,345.345 INFO    ] time= 27/06/2026 23:59:18
[2026-06-27 23:59:18,356.356 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:59:18,362.362 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:59:18,431.431 INFO    ] No existing commands found in stream
[2026-06-27 23:59:23,456.456 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:59:23,459.459 INFO    ] Waiting 1.60 seconds before fallback handling...
[2026-06-27 23:59:25,404.404 INFO    ] {'response': {'data': 'order updated', 'msg': 'order updated', 'status': False}}
[2026-06-27 23:59:25,406.406 INFO    ] Checking for system updates...
[2026-06-27 23:59:25,428.428 INFO    ] 200
[2026-06-27 23:59:25,429.429 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:59:25,462.462 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:59:25,463.463 INFO    ] No update needed
[2026-06-27 23:59:25,465.465 INFO    ] Checking for camera pi updates...
[2026-06-27 23:59:25,486.486 INFO    ] 200
[2026-06-27 23:59:25,487.487 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:59:25,512.512 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:59:25,554.554 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:59:25,555.555 INFO    ] No camera update needed
[2026-06-27 23:59:25,557.557 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:59:25,558.558 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:59:25,561.561 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:59:25,564.564 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:59:27,604.604 INFO    ] ================================================
[2026-06-27 23:59:27,620.620 INFO    ] Launching Daemon at Sat Jun 27 23:59:27 IST 2026
[2026-06-27 23:59:27,631.631 INFO    ] ================================================
[2026-06-27 23:59:28,001.001 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:59:27
[2026-06-27 23:59:28,318.318 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:59:28,463.463 INFO    ] Initializing speech engine...
[2026-06-27 23:59:28,469.469 INFO    ] 2026-06-27 23:59:28
[2026-06-27 23:59:28,672.672 INFO    ] 2026-06-27 23:59:28
[2026-06-27 23:59:28,700.700 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:59:28,824.824 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:59:28,887.887 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:59:29,036.036 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:59:29,094.094 INFO    ] time= 27/06/2026 23:59:29
[2026-06-27 23:59:29,117.117 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:59:29,123.123 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:59:29,191.191 INFO    ] No existing commands found in stream
[2026-06-27 23:59:34,200.200 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:59:34,203.203 INFO    ] Waiting 0.04 seconds before fallback handling...
[2026-06-27 23:59:34,605.605 INFO    ] {'response': {'status': False, 'msg': 'order updated', 'data': 'order updated'}}
[2026-06-27 23:59:34,607.607 INFO    ] Checking for system updates...
[2026-06-27 23:59:34,627.627 INFO    ] 200
[2026-06-27 23:59:34,629.629 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:59:34,660.660 INFO    ] Update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:59:34,661.661 INFO    ] No update needed
[2026-06-27 23:59:34,663.663 INFO    ] Checking for camera pi updates...
[2026-06-27 23:59:34,689.689 INFO    ] 200
[2026-06-27 23:59:34,691.691 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:59:34,718.718 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:59:34,761.761 INFO    ] Camera update check result: {'message': 'No upgrade available', 'status': 0}
[2026-06-27 23:59:34,763.763 INFO    ] No camera update needed
[2026-06-27 23:59:34,764.764 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:59:34,765.765 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:59:34,768.768 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:59:34,771.771 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:59:36,811.811 INFO    ] ================================================
[2026-06-27 23:59:36,826.826 INFO    ] Launching Daemon at Sat Jun 27 23:59:36 IST 2026
[2026-06-27 23:59:36,838.838 INFO    ] ================================================
[2026-06-27 23:59:37,180.180 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:59:37
[2026-06-27 23:59:37,499.499 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:59:37,632.632 INFO    ] Initializing speech engine...
[2026-06-27 23:59:37,637.637 INFO    ] 2026-06-27 23:59:37
[2026-06-27 23:59:37,829.829 INFO    ] 2026-06-27 23:59:37
[2026-06-27 23:59:37,874.874 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:59:38,033.033 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:59:38,097.097 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:59:38,254.254 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:59:38,313.313 INFO    ] time= 27/06/2026 23:59:38
[2026-06-27 23:59:38,353.353 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:59:38,355.355 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:59:38,432.432 INFO    ] No existing commands found in stream
[2026-06-27 23:59:43,442.442 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:59:43,445.445 INFO    ] Waiting 0.59 seconds before fallback handling...
[2026-06-27 23:59:44,445.445 INFO    ] {'response': {'msg': 'order updated', 'data': 'order updated', 'status': False}}
[2026-06-27 23:59:44,447.447 INFO    ] Checking for system updates...
[2026-06-27 23:59:44,467.467 INFO    ] 200
[2026-06-27 23:59:44,469.469 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:59:44,501.501 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:59:44,503.503 INFO    ] No update needed
[2026-06-27 23:59:44,504.504 INFO    ] Checking for camera pi updates...
[2026-06-27 23:59:44,526.526 INFO    ] 200
[2026-06-27 23:59:44,528.528 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:59:44,551.551 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:59:44,692.692 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:59:44,694.694 INFO    ] No camera update needed
[2026-06-27 23:59:44,695.695 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:59:44,696.696 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:59:44,699.699 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:59:44,702.702 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:59:46,748.748 INFO    ] ================================================
[2026-06-27 23:59:46,763.763 INFO    ] Launching Daemon at Sat Jun 27 23:59:46 IST 2026
[2026-06-27 23:59:46,773.773 INFO    ] ================================================
[2026-06-27 23:59:47,167.167 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:59:47
[2026-06-27 23:59:47,482.482 INFO    ] Using urllib3 for HTTP requests
[2026-06-27 23:59:47,614.614 INFO    ] Initializing speech engine...
[2026-06-27 23:59:47,619.619 INFO    ] 2026-06-27 23:59:47
[2026-06-27 23:59:47,834.834 INFO    ] 2026-06-27 23:59:47
[2026-06-27 23:59:47,862.862 INFO    ] VendingMachinePublisher.__init__: Connecting to redis...
[2026-06-27 23:59:48,045.045 INFO    ] VendingMachinePublisher.__init__: Connected to redis...
[2026-06-27 23:59:48,083.083 INFO    ] MachineMessageSender.__init__: Connecting to redis...
[2026-06-27 23:59:48,226.226 INFO    ] MachineMessageSender.__init__: Connected to redis...
[2026-06-27 23:59:48,278.278 INFO    ] time= 27/06/2026 23:59:48
[2026-06-27 23:59:48,311.311 INFO    ] Listening for commands on Redis Stream: machine:TM06202304
[2026-06-27 23:59:48,335.335 INFO    ] Checking for existing commands in stream...
[2026-06-27 23:59:48,413.413 INFO    ] No existing commands found in stream
[2026-06-27 23:59:53,426.426 INFO    ] Redis XREAD timeout, continuing to listen...
[2026-06-27 23:59:53,429.429 INFO    ] Waiting 3.49 seconds before fallback handling...
[2026-06-27 23:59:57,334.334 INFO    ] {'response': {'data': 'order updated', 'status': False, 'msg': 'order updated'}}
[2026-06-27 23:59:57,336.336 INFO    ] Checking for system updates...
[2026-06-27 23:59:57,358.358 INFO    ] 200
[2026-06-27 23:59:57,360.360 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:59:57,392.392 INFO    ] Update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:59:57,393.393 INFO    ] No update needed
[2026-06-27 23:59:57,395.395 INFO    ] Checking for camera pi updates...
[2026-06-27 23:59:57,415.415 INFO    ] 200
[2026-06-27 23:59:57,417.417 INFO    ] {"msg": "Status of machine", "state": "STATE_IDLE", "status": true}
[2026-06-27 23:59:57,440.440 INFO    ] Camera IP: TMCAM06202304.local
[2026-06-27 23:59:57,491.491 INFO    ] Camera update check result: {'status': 0, 'message': 'No upgrade available'}
[2026-06-27 23:59:57,492.492 INFO    ] No camera update needed
[2026-06-27 23:59:57,494.494 INFO    ] Script finished. Safe exiting...
[2026-06-27 23:59:57,495.495 INFO    ] === ACTIVE THREADS START ===
[2026-06-27 23:59:57,498.498 INFO    ] Thread: MainThread, daemon=False, alive=True
[2026-06-27 23:59:57,500.500 INFO    ] === ACTIVE THREADS END ===
[2026-06-27 23:59:59,538.538 INFO    ] ================================================
[2026-06-27 23:59:59,554.554 INFO    ] Launching Daemon at Sat Jun 27 23:59:59 IST 2026
[2026-06-27 23:59:59,565.565 INFO    ] ================================================
[2026-06-27 23:59:59,915.915 INFO    ] Heartbeat written: HEARTBEAT_TS=2026-06-27 23:59:59
